Author: jcatena
Date: Sun Feb 7 11:47:13 2010
New Revision: 45482
URL:
http://svn.reactos.org/svn/reactos?rev=45482&view=rev
Log:
[ntos] msvc wip
Modified:
branches/jcatena-branch/drivers/base/kddll/kdcom.vcproj
branches/jcatena-branch/hal/halx86/include/halp.h
branches/jcatena-branch/ntoskrnl/ex/init.c
branches/jcatena-branch/ntoskrnl/ke/i386/cpu.c
branches/jcatena-branch/ntoskrnl/ke/i386/irqobj.c
branches/jcatena-branch/ntoskrnl/ke/i386/traphdlr.c
branches/jcatena-branch/ntoskrnl/ntoskrnl.sln
branches/jcatena-branch/ntoskrnl/ntoskrnl.vcproj
branches/jcatena-branch/ntoskrnl/ntoskrnl.vsprops
branches/jcatena-branch/ntoskrnl/trap/i386/TrapStub.h
branches/jcatena-branch/ntoskrnl/trap/trap.c
Modified: branches/jcatena-branch/drivers/base/kddll/kdcom.vcproj
URL:
http://svn.reactos.org/svn/reactos/branches/jcatena-branch/drivers/base/kdd…
==============================================================================
--- branches/jcatena-branch/drivers/base/kddll/kdcom.vcproj [iso-8859-1] (original)
+++ branches/jcatena-branch/drivers/base/kddll/kdcom.vcproj [iso-8859-1] Sun Feb 7
11:47:13 2010
@@ -131,6 +131,7 @@
AdditionalDependencies="ntoskrnl.lib hal.lib"
ModuleDefinitionFile="kdcom.def"
GenerateDebugInformation="true"
+ SubSystem="0"
OptimizeReferences="2"
EnableCOMDATFolding="2"
ResourceOnlyDLL="true"
Modified: branches/jcatena-branch/hal/halx86/include/halp.h
URL:
http://svn.reactos.org/svn/reactos/branches/jcatena-branch/hal/halx86/inclu…
==============================================================================
--- branches/jcatena-branch/hal/halx86/include/halp.h [iso-8859-1] (original)
+++ branches/jcatena-branch/hal/halx86/include/halp.h [iso-8859-1] Sun Feb 7 11:47:13
2010
@@ -29,10 +29,8 @@
);
typedef
-FASTCALL
-VOID
-DECLSPEC_NORETURN
-(*PHAL_SW_INTERRUPT_HANDLER_2ND_ENTRY)(
+VOID
+(FASTCALL *PHAL_SW_INTERRUPT_HANDLER_2ND_ENTRY)(
IN PKTRAP_FRAME TrapFrame
);
Modified: branches/jcatena-branch/ntoskrnl/ex/init.c
URL:
http://svn.reactos.org/svn/reactos/branches/jcatena-branch/ntoskrnl/ex/init…
==============================================================================
--- branches/jcatena-branch/ntoskrnl/ex/init.c [iso-8859-1] (original)
+++ branches/jcatena-branch/ntoskrnl/ex/init.c [iso-8859-1] Sun Feb 7 11:47:13 2010
@@ -1298,10 +1298,14 @@
/* Set us at maximum priority */
KeSetPriorityThread(KeGetCurrentThread(), HIGH_PRIORITY);
+ DPRINTT("HalInitSystem\n");
+ _ASM int 3
+
/* Do Phase 1 HAL Initialization */
- DPRINTT("HalInitSystem\n");
if (!HalInitSystem(1, LoaderBlock))
KeBugCheck(HAL1_INITIALIZATION_FAILED);
+
+ _ASM int 3
DPRINTT("HalInitSystem r\n");
Modified: branches/jcatena-branch/ntoskrnl/ke/i386/cpu.c
URL:
http://svn.reactos.org/svn/reactos/branches/jcatena-branch/ntoskrnl/ke/i386…
==============================================================================
--- branches/jcatena-branch/ntoskrnl/ke/i386/cpu.c [iso-8859-1] (original)
+++ branches/jcatena-branch/ntoskrnl/ke/i386/cpu.c [iso-8859-1] Sun Feb 7 11:47:13 2010
@@ -931,6 +931,7 @@
// Restore GDT and IDT
//
Ke386SetGlobalDescriptorTable(&ProcessorState->SpecialRegisters.Gdtr.Limit);
+
__lidt(&ProcessorState->SpecialRegisters.Idtr.Limit);
//
Modified: branches/jcatena-branch/ntoskrnl/ke/i386/irqobj.c
URL:
http://svn.reactos.org/svn/reactos/branches/jcatena-branch/ntoskrnl/ke/i386…
==============================================================================
--- branches/jcatena-branch/ntoskrnl/ke/i386/irqobj.c [iso-8859-1] (original)
+++ branches/jcatena-branch/ntoskrnl/ke/i386/irqobj.c [iso-8859-1] Sun Feb 7 11:47:13
2010
@@ -33,6 +33,7 @@
UCHAR Type;
UCHAR Entry;
+ DPRINTT("\n");
/* Check if this is a primary or 2nd-level dispatch */
Type = HalSystemVectorDispatchEntry(Vector,
&Dispatch->FlatDispatch,
@@ -151,6 +152,7 @@
VOID
KiUnexpectedInterrupt(VOID)
{
+ DPRINTT("\n");
/* Crash the machine */
KeBugCheck(TRAP_CAUSE_UNKNOWN);
}
@@ -173,7 +175,7 @@
if (HalBeginSystemInterrupt(HIGH_LEVEL, Interrupt->Vector, &OldIrql))
{
/* Warn user */
- DPRINT1("\n\x7\x7!!! Unexpected Interrupt %02lx !!!\n");
+ DPRINT1("!!! Unexpected Interrupt %02lx !!!\n");
/* Now call the epilogue code */
KiExitInterrupt(TrapFrame, OldIrql, FALSE);
@@ -210,7 +212,7 @@
if (HalBeginSystemInterrupt(HIGH_LEVEL, Interrupt->Vector, &OldIrql))
{
/* Warn user */
- DPRINT1("\n\x7\x7!!! Unexpected Interrupt %02lx !!!\n");
+ DPRINT1("!!! Unexpected Interrupt %x !!!\n", Interrupt->Vector);
/* Now call the epilogue code */
KiExitInterrupt(TrapFrame, OldIrql, FALSE);
@@ -372,7 +374,9 @@
{
PULONG DispatchCode = &Interrupt->DispatchCode[0];
- /* Set the Interrupt Header */
+ DPRINTT("\n");
+
+ /* Set the Interrupt Header */
Interrupt->Type = InterruptObject;
Interrupt->Size = sizeof(KINTERRUPT);
Modified: branches/jcatena-branch/ntoskrnl/ke/i386/traphdlr.c
URL:
http://svn.reactos.org/svn/reactos/branches/jcatena-branch/ntoskrnl/ke/i386…
==============================================================================
--- branches/jcatena-branch/ntoskrnl/ke/i386/traphdlr.c [iso-8859-1] (original)
+++ branches/jcatena-branch/ntoskrnl/ke/i386/traphdlr.c [iso-8859-1] Sun Feb 7 11:47:13
2010
@@ -1658,16 +1658,14 @@
KiTrap(KiFastCallEntry, KI_FAST_SYSTEM_CALL);
#endif
-/*
- * @implemented
- */
-VOID
-NTAPI
-Kei386EoiHelper(VOID)
-{
+#if 0 // see idt.s
+VOID NTAPI _NAKED Kei386EoiHelper(VOID)
+{
+
/* We should never see this call happening */
DPRINT1("Mismatched NT/HAL version");
while (TRUE);
}
+#endif
/* EOF */
Modified: branches/jcatena-branch/ntoskrnl/ntoskrnl.sln
URL:
http://svn.reactos.org/svn/reactos/branches/jcatena-branch/ntoskrnl/ntoskrn…
==============================================================================
--- branches/jcatena-branch/ntoskrnl/ntoskrnl.sln [iso-8859-1] (original)
+++ branches/jcatena-branch/ntoskrnl/ntoskrnl.sln [iso-8859-1] Sun Feb 7 11:47:13 2010
@@ -68,100 +68,199 @@
EndProject
Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "trap",
"trap\trap.vcproj", "{E2A7291E-515F-4BAD-8E82-F77AA0815B47}"
EndProject
+Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "halx86",
"..\hal\halx86\halx86.vcproj",
"{BE9CFC62-1DA2-49B4-AC03-10B1CC754741}"
+EndProject
Global
GlobalSection(SolutionConfigurationPlatforms) = preSolution
d|Win32 = d|Win32
+ Debug|Win32 = Debug|Win32
r|Win32 = r|Win32
+ Release|Win32 = Release|Win32
EndGlobalSection
GlobalSection(ProjectConfigurationPlatforms) = postSolution
{E432D40C-7443-4449-9182-8932E0AEAE99}.d|Win32.ActiveCfg = d|Win32
{E432D40C-7443-4449-9182-8932E0AEAE99}.d|Win32.Build.0 = d|Win32
+ {E432D40C-7443-4449-9182-8932E0AEAE99}.Debug|Win32.ActiveCfg = d|Win32
+ {E432D40C-7443-4449-9182-8932E0AEAE99}.Debug|Win32.Build.0 = d|Win32
{E432D40C-7443-4449-9182-8932E0AEAE99}.r|Win32.ActiveCfg = r|Win32
{E432D40C-7443-4449-9182-8932E0AEAE99}.r|Win32.Build.0 = r|Win32
+ {E432D40C-7443-4449-9182-8932E0AEAE99}.Release|Win32.ActiveCfg = r|Win32
+ {E432D40C-7443-4449-9182-8932E0AEAE99}.Release|Win32.Build.0 = r|Win32
{A4D48188-969A-48AD-A7A8-9A0985EE7A7B}.d|Win32.ActiveCfg = d|Win32
{A4D48188-969A-48AD-A7A8-9A0985EE7A7B}.d|Win32.Build.0 = d|Win32
+ {A4D48188-969A-48AD-A7A8-9A0985EE7A7B}.Debug|Win32.ActiveCfg = d|Win32
+ {A4D48188-969A-48AD-A7A8-9A0985EE7A7B}.Debug|Win32.Build.0 = d|Win32
{A4D48188-969A-48AD-A7A8-9A0985EE7A7B}.r|Win32.ActiveCfg = r|Win32
{A4D48188-969A-48AD-A7A8-9A0985EE7A7B}.r|Win32.Build.0 = r|Win32
+ {A4D48188-969A-48AD-A7A8-9A0985EE7A7B}.Release|Win32.ActiveCfg = r|Win32
+ {A4D48188-969A-48AD-A7A8-9A0985EE7A7B}.Release|Win32.Build.0 = r|Win32
{32B0B2D6-5612-40E8-90F5-FB5CB4D76C6E}.d|Win32.ActiveCfg = d|Win32
{32B0B2D6-5612-40E8-90F5-FB5CB4D76C6E}.d|Win32.Build.0 = d|Win32
+ {32B0B2D6-5612-40E8-90F5-FB5CB4D76C6E}.Debug|Win32.ActiveCfg = d|Win32
+ {32B0B2D6-5612-40E8-90F5-FB5CB4D76C6E}.Debug|Win32.Build.0 = d|Win32
{32B0B2D6-5612-40E8-90F5-FB5CB4D76C6E}.r|Win32.ActiveCfg = r|Win32
{32B0B2D6-5612-40E8-90F5-FB5CB4D76C6E}.r|Win32.Build.0 = r|Win32
+ {32B0B2D6-5612-40E8-90F5-FB5CB4D76C6E}.Release|Win32.ActiveCfg = r|Win32
+ {32B0B2D6-5612-40E8-90F5-FB5CB4D76C6E}.Release|Win32.Build.0 = r|Win32
{590171C3-2DD0-4790-9BB7-A3601BD548A1}.d|Win32.ActiveCfg = d|Win32
{590171C3-2DD0-4790-9BB7-A3601BD548A1}.d|Win32.Build.0 = d|Win32
+ {590171C3-2DD0-4790-9BB7-A3601BD548A1}.Debug|Win32.ActiveCfg = d|Win32
+ {590171C3-2DD0-4790-9BB7-A3601BD548A1}.Debug|Win32.Build.0 = d|Win32
{590171C3-2DD0-4790-9BB7-A3601BD548A1}.r|Win32.ActiveCfg = r|Win32
{590171C3-2DD0-4790-9BB7-A3601BD548A1}.r|Win32.Build.0 = r|Win32
+ {590171C3-2DD0-4790-9BB7-A3601BD548A1}.Release|Win32.ActiveCfg = r|Win32
+ {590171C3-2DD0-4790-9BB7-A3601BD548A1}.Release|Win32.Build.0 = r|Win32
{33A96973-0632-4142-A411-36B937663234}.d|Win32.ActiveCfg = d|Win32
{33A96973-0632-4142-A411-36B937663234}.d|Win32.Build.0 = d|Win32
+ {33A96973-0632-4142-A411-36B937663234}.Debug|Win32.ActiveCfg = d|Win32
+ {33A96973-0632-4142-A411-36B937663234}.Debug|Win32.Build.0 = d|Win32
{33A96973-0632-4142-A411-36B937663234}.r|Win32.ActiveCfg = r|Win32
{33A96973-0632-4142-A411-36B937663234}.r|Win32.Build.0 = r|Win32
+ {33A96973-0632-4142-A411-36B937663234}.Release|Win32.ActiveCfg = r|Win32
+ {33A96973-0632-4142-A411-36B937663234}.Release|Win32.Build.0 = r|Win32
{93A5CAA3-5B14-41C4-961A-1D1A93FD9818}.d|Win32.ActiveCfg = d|Win32
{93A5CAA3-5B14-41C4-961A-1D1A93FD9818}.d|Win32.Build.0 = d|Win32
+ {93A5CAA3-5B14-41C4-961A-1D1A93FD9818}.Debug|Win32.ActiveCfg = d|Win32
+ {93A5CAA3-5B14-41C4-961A-1D1A93FD9818}.Debug|Win32.Build.0 = d|Win32
{93A5CAA3-5B14-41C4-961A-1D1A93FD9818}.r|Win32.ActiveCfg = r|Win32
{93A5CAA3-5B14-41C4-961A-1D1A93FD9818}.r|Win32.Build.0 = r|Win32
+ {93A5CAA3-5B14-41C4-961A-1D1A93FD9818}.Release|Win32.ActiveCfg = r|Win32
+ {93A5CAA3-5B14-41C4-961A-1D1A93FD9818}.Release|Win32.Build.0 = r|Win32
{A4C0117F-DBB0-4631-A408-D6E4D964E07C}.d|Win32.ActiveCfg = d|Win32
{A4C0117F-DBB0-4631-A408-D6E4D964E07C}.d|Win32.Build.0 = d|Win32
+ {A4C0117F-DBB0-4631-A408-D6E4D964E07C}.Debug|Win32.ActiveCfg = d|Win32
+ {A4C0117F-DBB0-4631-A408-D6E4D964E07C}.Debug|Win32.Build.0 = d|Win32
{A4C0117F-DBB0-4631-A408-D6E4D964E07C}.r|Win32.ActiveCfg = r|Win32
{A4C0117F-DBB0-4631-A408-D6E4D964E07C}.r|Win32.Build.0 = r|Win32
+ {A4C0117F-DBB0-4631-A408-D6E4D964E07C}.Release|Win32.ActiveCfg = r|Win32
+ {A4C0117F-DBB0-4631-A408-D6E4D964E07C}.Release|Win32.Build.0 = r|Win32
{8035D0FD-0157-4F0D-845B-DE9CCB48490D}.d|Win32.ActiveCfg = d|Win32
{8035D0FD-0157-4F0D-845B-DE9CCB48490D}.d|Win32.Build.0 = d|Win32
+ {8035D0FD-0157-4F0D-845B-DE9CCB48490D}.Debug|Win32.ActiveCfg = d|Win32
+ {8035D0FD-0157-4F0D-845B-DE9CCB48490D}.Debug|Win32.Build.0 = d|Win32
{8035D0FD-0157-4F0D-845B-DE9CCB48490D}.r|Win32.ActiveCfg = r|Win32
{8035D0FD-0157-4F0D-845B-DE9CCB48490D}.r|Win32.Build.0 = r|Win32
+ {8035D0FD-0157-4F0D-845B-DE9CCB48490D}.Release|Win32.ActiveCfg = r|Win32
+ {8035D0FD-0157-4F0D-845B-DE9CCB48490D}.Release|Win32.Build.0 = r|Win32
{7CCF80F4-FCA6-4ED7-8C52-E92B7A1B7116}.d|Win32.ActiveCfg = d|Win32
{7CCF80F4-FCA6-4ED7-8C52-E92B7A1B7116}.d|Win32.Build.0 = d|Win32
+ {7CCF80F4-FCA6-4ED7-8C52-E92B7A1B7116}.Debug|Win32.ActiveCfg = d|Win32
+ {7CCF80F4-FCA6-4ED7-8C52-E92B7A1B7116}.Debug|Win32.Build.0 = d|Win32
{7CCF80F4-FCA6-4ED7-8C52-E92B7A1B7116}.r|Win32.ActiveCfg = r|Win32
{7CCF80F4-FCA6-4ED7-8C52-E92B7A1B7116}.r|Win32.Build.0 = r|Win32
+ {7CCF80F4-FCA6-4ED7-8C52-E92B7A1B7116}.Release|Win32.ActiveCfg = r|Win32
+ {7CCF80F4-FCA6-4ED7-8C52-E92B7A1B7116}.Release|Win32.Build.0 = r|Win32
{D4F03490-B3A7-4389-AB68-1DF9EF82D51F}.d|Win32.ActiveCfg = d|Win32
{D4F03490-B3A7-4389-AB68-1DF9EF82D51F}.d|Win32.Build.0 = d|Win32
+ {D4F03490-B3A7-4389-AB68-1DF9EF82D51F}.Debug|Win32.ActiveCfg = d|Win32
+ {D4F03490-B3A7-4389-AB68-1DF9EF82D51F}.Debug|Win32.Build.0 = d|Win32
{D4F03490-B3A7-4389-AB68-1DF9EF82D51F}.r|Win32.ActiveCfg = r|Win32
{D4F03490-B3A7-4389-AB68-1DF9EF82D51F}.r|Win32.Build.0 = r|Win32
+ {D4F03490-B3A7-4389-AB68-1DF9EF82D51F}.Release|Win32.ActiveCfg = r|Win32
+ {D4F03490-B3A7-4389-AB68-1DF9EF82D51F}.Release|Win32.Build.0 = r|Win32
{E3324A8B-EE25-43F7-9895-44E3A8083EA3}.d|Win32.ActiveCfg = d|Win32
{E3324A8B-EE25-43F7-9895-44E3A8083EA3}.d|Win32.Build.0 = d|Win32
+ {E3324A8B-EE25-43F7-9895-44E3A8083EA3}.Debug|Win32.ActiveCfg = d|Win32
+ {E3324A8B-EE25-43F7-9895-44E3A8083EA3}.Debug|Win32.Build.0 = d|Win32
{E3324A8B-EE25-43F7-9895-44E3A8083EA3}.r|Win32.ActiveCfg = r|Win32
{E3324A8B-EE25-43F7-9895-44E3A8083EA3}.r|Win32.Build.0 = r|Win32
+ {E3324A8B-EE25-43F7-9895-44E3A8083EA3}.Release|Win32.ActiveCfg = r|Win32
+ {E3324A8B-EE25-43F7-9895-44E3A8083EA3}.Release|Win32.Build.0 = r|Win32
{17C7F7C1-6315-4856-9375-39F0B329FA09}.d|Win32.ActiveCfg = d|Win32
{17C7F7C1-6315-4856-9375-39F0B329FA09}.d|Win32.Build.0 = d|Win32
+ {17C7F7C1-6315-4856-9375-39F0B329FA09}.Debug|Win32.ActiveCfg = d|Win32
+ {17C7F7C1-6315-4856-9375-39F0B329FA09}.Debug|Win32.Build.0 = d|Win32
{17C7F7C1-6315-4856-9375-39F0B329FA09}.r|Win32.ActiveCfg = r|Win32
{17C7F7C1-6315-4856-9375-39F0B329FA09}.r|Win32.Build.0 = r|Win32
+ {17C7F7C1-6315-4856-9375-39F0B329FA09}.Release|Win32.ActiveCfg = r|Win32
+ {17C7F7C1-6315-4856-9375-39F0B329FA09}.Release|Win32.Build.0 = r|Win32
{F61DDEF4-A045-4AFD-AA0A-FAF6F6F97A21}.d|Win32.ActiveCfg = d|Win32
{F61DDEF4-A045-4AFD-AA0A-FAF6F6F97A21}.d|Win32.Build.0 = d|Win32
+ {F61DDEF4-A045-4AFD-AA0A-FAF6F6F97A21}.Debug|Win32.ActiveCfg = d|Win32
+ {F61DDEF4-A045-4AFD-AA0A-FAF6F6F97A21}.Debug|Win32.Build.0 = d|Win32
{F61DDEF4-A045-4AFD-AA0A-FAF6F6F97A21}.r|Win32.ActiveCfg = r|Win32
{F61DDEF4-A045-4AFD-AA0A-FAF6F6F97A21}.r|Win32.Build.0 = r|Win32
+ {F61DDEF4-A045-4AFD-AA0A-FAF6F6F97A21}.Release|Win32.ActiveCfg = r|Win32
+ {F61DDEF4-A045-4AFD-AA0A-FAF6F6F97A21}.Release|Win32.Build.0 = r|Win32
{431D55CC-8FCA-4298-919C-F3214EFDDA60}.d|Win32.ActiveCfg = d|Win32
{431D55CC-8FCA-4298-919C-F3214EFDDA60}.d|Win32.Build.0 = d|Win32
+ {431D55CC-8FCA-4298-919C-F3214EFDDA60}.Debug|Win32.ActiveCfg = d|Win32
+ {431D55CC-8FCA-4298-919C-F3214EFDDA60}.Debug|Win32.Build.0 = d|Win32
{431D55CC-8FCA-4298-919C-F3214EFDDA60}.r|Win32.ActiveCfg = r|Win32
{431D55CC-8FCA-4298-919C-F3214EFDDA60}.r|Win32.Build.0 = r|Win32
+ {431D55CC-8FCA-4298-919C-F3214EFDDA60}.Release|Win32.ActiveCfg = r|Win32
+ {431D55CC-8FCA-4298-919C-F3214EFDDA60}.Release|Win32.Build.0 = r|Win32
{45C60178-D657-45EC-9A99-EEE39C9845BF}.d|Win32.ActiveCfg = d|Win32
{45C60178-D657-45EC-9A99-EEE39C9845BF}.d|Win32.Build.0 = d|Win32
+ {45C60178-D657-45EC-9A99-EEE39C9845BF}.Debug|Win32.ActiveCfg = d|Win32
+ {45C60178-D657-45EC-9A99-EEE39C9845BF}.Debug|Win32.Build.0 = d|Win32
{45C60178-D657-45EC-9A99-EEE39C9845BF}.r|Win32.ActiveCfg = r|Win32
{45C60178-D657-45EC-9A99-EEE39C9845BF}.r|Win32.Build.0 = r|Win32
+ {45C60178-D657-45EC-9A99-EEE39C9845BF}.Release|Win32.ActiveCfg = r|Win32
+ {45C60178-D657-45EC-9A99-EEE39C9845BF}.Release|Win32.Build.0 = r|Win32
{45E70482-84C8-4846-A1BF-3C7A1BC94335}.d|Win32.ActiveCfg = d|Win32
{45E70482-84C8-4846-A1BF-3C7A1BC94335}.d|Win32.Build.0 = d|Win32
+ {45E70482-84C8-4846-A1BF-3C7A1BC94335}.Debug|Win32.ActiveCfg = d|Win32
+ {45E70482-84C8-4846-A1BF-3C7A1BC94335}.Debug|Win32.Build.0 = d|Win32
{45E70482-84C8-4846-A1BF-3C7A1BC94335}.r|Win32.ActiveCfg = r|Win32
{45E70482-84C8-4846-A1BF-3C7A1BC94335}.r|Win32.Build.0 = r|Win32
+ {45E70482-84C8-4846-A1BF-3C7A1BC94335}.Release|Win32.ActiveCfg = r|Win32
+ {45E70482-84C8-4846-A1BF-3C7A1BC94335}.Release|Win32.Build.0 = r|Win32
{33EB04DB-6651-4F5C-9035-807FF1E38842}.d|Win32.ActiveCfg = d|Win32
{33EB04DB-6651-4F5C-9035-807FF1E38842}.d|Win32.Build.0 = d|Win32
+ {33EB04DB-6651-4F5C-9035-807FF1E38842}.Debug|Win32.ActiveCfg = d|Win32
+ {33EB04DB-6651-4F5C-9035-807FF1E38842}.Debug|Win32.Build.0 = d|Win32
{33EB04DB-6651-4F5C-9035-807FF1E38842}.r|Win32.ActiveCfg = r|Win32
{33EB04DB-6651-4F5C-9035-807FF1E38842}.r|Win32.Build.0 = r|Win32
+ {33EB04DB-6651-4F5C-9035-807FF1E38842}.Release|Win32.ActiveCfg = r|Win32
+ {33EB04DB-6651-4F5C-9035-807FF1E38842}.Release|Win32.Build.0 = r|Win32
{AEADDBC1-092C-4180-8D34-12CA97CFB497}.d|Win32.ActiveCfg = d|Win32
{AEADDBC1-092C-4180-8D34-12CA97CFB497}.d|Win32.Build.0 = d|Win32
+ {AEADDBC1-092C-4180-8D34-12CA97CFB497}.Debug|Win32.ActiveCfg = d|Win32
+ {AEADDBC1-092C-4180-8D34-12CA97CFB497}.Debug|Win32.Build.0 = d|Win32
{AEADDBC1-092C-4180-8D34-12CA97CFB497}.r|Win32.ActiveCfg = r|Win32
{AEADDBC1-092C-4180-8D34-12CA97CFB497}.r|Win32.Build.0 = r|Win32
+ {AEADDBC1-092C-4180-8D34-12CA97CFB497}.Release|Win32.ActiveCfg = r|Win32
+ {AEADDBC1-092C-4180-8D34-12CA97CFB497}.Release|Win32.Build.0 = r|Win32
{53C05779-2821-431C-93CC-CDFE6942DE3C}.d|Win32.ActiveCfg = d|Win32
{53C05779-2821-431C-93CC-CDFE6942DE3C}.d|Win32.Build.0 = d|Win32
+ {53C05779-2821-431C-93CC-CDFE6942DE3C}.Debug|Win32.ActiveCfg = d|Win32
+ {53C05779-2821-431C-93CC-CDFE6942DE3C}.Debug|Win32.Build.0 = d|Win32
{53C05779-2821-431C-93CC-CDFE6942DE3C}.r|Win32.ActiveCfg = r|Win32
{53C05779-2821-431C-93CC-CDFE6942DE3C}.r|Win32.Build.0 = r|Win32
+ {53C05779-2821-431C-93CC-CDFE6942DE3C}.Release|Win32.ActiveCfg = r|Win32
+ {53C05779-2821-431C-93CC-CDFE6942DE3C}.Release|Win32.Build.0 = r|Win32
{3D9AC5B7-C29C-46F5-B3D8-C4388F37DB5C}.d|Win32.ActiveCfg = d|Win32
{3D9AC5B7-C29C-46F5-B3D8-C4388F37DB5C}.d|Win32.Build.0 = d|Win32
+ {3D9AC5B7-C29C-46F5-B3D8-C4388F37DB5C}.Debug|Win32.ActiveCfg = d|Win32
+ {3D9AC5B7-C29C-46F5-B3D8-C4388F37DB5C}.Debug|Win32.Build.0 = d|Win32
{3D9AC5B7-C29C-46F5-B3D8-C4388F37DB5C}.r|Win32.ActiveCfg = r|Win32
{3D9AC5B7-C29C-46F5-B3D8-C4388F37DB5C}.r|Win32.Build.0 = r|Win32
+ {3D9AC5B7-C29C-46F5-B3D8-C4388F37DB5C}.Release|Win32.ActiveCfg = r|Win32
+ {3D9AC5B7-C29C-46F5-B3D8-C4388F37DB5C}.Release|Win32.Build.0 = r|Win32
{97021AF5-ED87-4AA8-B116-2D53E5D6D528}.d|Win32.ActiveCfg = d|Win32
{97021AF5-ED87-4AA8-B116-2D53E5D6D528}.d|Win32.Build.0 = d|Win32
+ {97021AF5-ED87-4AA8-B116-2D53E5D6D528}.Debug|Win32.ActiveCfg = d|Win32
+ {97021AF5-ED87-4AA8-B116-2D53E5D6D528}.Debug|Win32.Build.0 = d|Win32
{97021AF5-ED87-4AA8-B116-2D53E5D6D528}.r|Win32.ActiveCfg = r|Win32
{97021AF5-ED87-4AA8-B116-2D53E5D6D528}.r|Win32.Build.0 = r|Win32
+ {97021AF5-ED87-4AA8-B116-2D53E5D6D528}.Release|Win32.ActiveCfg = r|Win32
+ {97021AF5-ED87-4AA8-B116-2D53E5D6D528}.Release|Win32.Build.0 = r|Win32
{E2A7291E-515F-4BAD-8E82-F77AA0815B47}.d|Win32.ActiveCfg = d|Win32
{E2A7291E-515F-4BAD-8E82-F77AA0815B47}.d|Win32.Build.0 = d|Win32
+ {E2A7291E-515F-4BAD-8E82-F77AA0815B47}.Debug|Win32.ActiveCfg = d|Win32
+ {E2A7291E-515F-4BAD-8E82-F77AA0815B47}.Debug|Win32.Build.0 = d|Win32
{E2A7291E-515F-4BAD-8E82-F77AA0815B47}.r|Win32.ActiveCfg = r|Win32
{E2A7291E-515F-4BAD-8E82-F77AA0815B47}.r|Win32.Build.0 = r|Win32
+ {E2A7291E-515F-4BAD-8E82-F77AA0815B47}.Release|Win32.ActiveCfg = r|Win32
+ {E2A7291E-515F-4BAD-8E82-F77AA0815B47}.Release|Win32.Build.0 = r|Win32
+ {BE9CFC62-1DA2-49B4-AC03-10B1CC754741}.d|Win32.ActiveCfg = Debug|Win32
+ {BE9CFC62-1DA2-49B4-AC03-10B1CC754741}.Debug|Win32.ActiveCfg = Debug|Win32
+ {BE9CFC62-1DA2-49B4-AC03-10B1CC754741}.Debug|Win32.Build.0 = Debug|Win32
+ {BE9CFC62-1DA2-49B4-AC03-10B1CC754741}.r|Win32.ActiveCfg = Release|Win32
+ {BE9CFC62-1DA2-49B4-AC03-10B1CC754741}.r|Win32.Build.0 = Release|Win32
+ {BE9CFC62-1DA2-49B4-AC03-10B1CC754741}.Release|Win32.ActiveCfg = Release|Win32
+ {BE9CFC62-1DA2-49B4-AC03-10B1CC754741}.Release|Win32.Build.0 = Release|Win32
EndGlobalSection
GlobalSection(SolutionProperties) = preSolution
HideSolutionNode = FALSE
Modified: branches/jcatena-branch/ntoskrnl/ntoskrnl.vcproj
URL:
http://svn.reactos.org/svn/reactos/branches/jcatena-branch/ntoskrnl/ntoskrn…
==============================================================================
--- branches/jcatena-branch/ntoskrnl/ntoskrnl.vcproj [iso-8859-1] (original)
+++ branches/jcatena-branch/ntoskrnl/ntoskrnl.vcproj [iso-8859-1] Sun Feb 7 11:47:13
2010
@@ -70,6 +70,7 @@
ModuleDefinitionFile="ntoskrnl.def"
GenerateMapFile="true"
MapFileName="$(IntDir)\_ntoskrnl.map"
+ SubSystem="0"
EntryPointSymbol="KiSystemStartup"
BaseAddress="0x80800000"
/>
@@ -146,6 +147,7 @@
ModuleDefinitionFile="ntoskrnl.def"
GenerateMapFile="true"
MapFileName="$(IntDir)\_ntoskrnl.map"
+ SubSystem="0"
LinkTimeCodeGeneration="1"
EntryPointSymbol="KiSystemStartup"
BaseAddress="0x80800000"
Modified: branches/jcatena-branch/ntoskrnl/ntoskrnl.vsprops
URL:
http://svn.reactos.org/svn/reactos/branches/jcatena-branch/ntoskrnl/ntoskrn…
==============================================================================
--- branches/jcatena-branch/ntoskrnl/ntoskrnl.vsprops [iso-8859-1] (original)
+++ branches/jcatena-branch/ntoskrnl/ntoskrnl.vsprops [iso-8859-1] Sun Feb 7 11:47:13
2010
@@ -20,7 +20,7 @@
OmitFramePointers="false"
EnableFiberSafeOptimizations="false"
WholeProgramOptimization="false"
- AdditionalIncludeDirectories=".;.\include;"$(inc)\reactos\msc\i386";"$(inc)\reactos\msc";"$(inc)\reactos\i386";"$(inc)\reactos";"$(s)\ntoskrnl\$(trapx)\i386";"$(s)\ntoskrnl\$(trapx)";"$(s)\ntoskrnl\include";"$(s)\ntoskrnl\include\internal\i386";"$(s)\ntoskrnl\include\internal";"$(objrbe)\ntoskrnl\include";"$(s)\lib\rtl";"$(objrbe)\include\psdk";"$(inc)\psdk";"$(inc)\ddk";"$(inc)\\i386";"$(inc)\ndk";"$(inc)\ndk\i386";"$(inc)\crt\msc";"$(inc)\crt";"$(objrbe)\include";"$(inc)\reactos\drivers";"$(inc)\reactos\libs";"$(inc)";"$(s)\lib\cmlib""
+ AdditionalIncludeDirectories=".;.\include;"$(inc)\reactos\msc\i386";"$(inc)\reactos\msc";"$(inc)\reactos\i386";"$(inc)\reactos";"$(s)\ntoskrnl\$(trapx)\i386";"$(s)\ntoskrnl\$(trapx)";"$(s)\ntoskrnl\include";"$(s)\ntoskrnl\include\internal\i386";"$(s)\ntoskrnl\include\internal";"$(objrbe)\ntoskrnl\include";"$(s)\lib\rtl";"$(objrbe)\include\psdk";"$(inc)\psdk";"$(inc)\ddk";"$(inc)\\i386";"$(inc)\ndk";"$(inc)\ndk\i386";"$(inc)\crt\msc";"$(inc)\crt";"$(objrbe)\include";"$(objrbe)\include\reactos";"$(inc)\reactos\drivers";"$(inc)\reactos\libs";"$(inc)";"$(s)\lib\cmlib""
IgnoreStandardIncludePath="true"
StringPooling="true"
ExceptionHandling="1"
Modified: branches/jcatena-branch/ntoskrnl/trap/i386/TrapStub.h
URL:
http://svn.reactos.org/svn/reactos/branches/jcatena-branch/ntoskrnl/trap/i3…
==============================================================================
--- branches/jcatena-branch/ntoskrnl/trap/i386/TrapStub.h [iso-8859-1] (original)
+++ branches/jcatena-branch/ntoskrnl/trap/i386/TrapStub.h [iso-8859-1] Sun Feb 7 11:47:13
2010
@@ -34,7 +34,6 @@
sub esp, dword ptr offset KTRAP_FRAME.V86Es
#elif (TRAP_STUB_FLAGS & TRAPF_INTERRUPT)
// the primary stub (trap_m.h) pushes a pointer to KINTERRUPT
- int 3
sub esp, offset KTRAP_FRAME.ErrCode
#elif (TRAP_STUB_FLAGS & TRAPF_ERRORCODE)
sub esp, offset KTRAP_FRAME.ErrCode
@@ -46,32 +45,40 @@
#endif
// save volatiles
+ mov KTRAP_FRAME.Edx[esp], edx
+ mov KTRAP_FRAME.Ecx[esp], ecx
mov KTRAP_FRAME.Eax[esp], eax
- mov KTRAP_FRAME.Ecx[esp], ecx
- mov KTRAP_FRAME.Edx[esp], edx
-// !!! while testing we always save novol too
+ // !!! only for testing we are always saving novol
// #if (TRAP_STUB_FLAGS & TRAPF_SAVENOVOL)
+ mov KTRAP_FRAME.Edi[esp], edi
+ mov KTRAP_FRAME.Esi[esp], esi
+ mov KTRAP_FRAME.Ebx[esp], ebx
mov KTRAP_FRAME.Ebp[esp], ebp
- mov KTRAP_FRAME.Ebx[esp], ebx
- mov KTRAP_FRAME.Esi[esp], esi
- mov KTRAP_FRAME.Edi[esp], edi
// #endif
// save & load segs
#if !(TRAP_STUB_FLAGS & TRAPF_NOSAVESEG)
- mov KTRAP_FRAME.SegDs[esp], ds
- mov KTRAP_FRAME.SegEs[esp], es
#if !(TRAP_STUB_FLAGS & TRAPF_NOLOADDS)
mov ax, TRAP_STUB_DS
+#endif
+#if (TRAP_STUB_FLAGS & TRAPF_LOADFS)
+ mov dx, TRAP_STUB_FS
+#endif
+ // gs most probably does not need save/restore,
+ // but we're playing safe for now
+ mov KTRAP_FRAME.SegGs[esp], gs
+ mov KTRAP_FRAME.SegEs[esp], es
+ mov KTRAP_FRAME.SegDs[esp], ds
+
+#if !(TRAP_STUB_FLAGS & TRAPF_NOLOADDS)
+ mov es, ax
mov ds, ax
- mov es, ax
#endif
#if !(TRAP_STUB_FLAGS & TRAPF_NOSAVEFS)
mov KTRAP_FRAME.SegFs[esp], fs
#if (TRAP_STUB_FLAGS & TRAPF_LOADFS)
- mov ax, TRAP_STUB_FS
- mov fs, ax
+ mov fs, dx
#endif
#endif // #if !(TRAP_STUB_FLAGS & TRAPF_NOSAVEFS)
#endif // #if !(TRAP_STUB_FLAGS & TRAPF_NOSAVESEG)
@@ -89,19 +96,20 @@
// restore seg regs
#if !(TRAP_STUB_FLAGS & TRAPF_NOSAVESEG)
+ mov es, KTRAP_FRAME.SegGs[esp]
+ mov es, KTRAP_FRAME.SegEs[esp]
mov ds, KTRAP_FRAME.SegDs[esp]
- mov es, KTRAP_FRAME.SegEs[esp]
#if !(TRAP_STUB_FLAGS & TRAPF_NOSAVEFS)
mov fs, KTRAP_FRAME.SegFs[esp]
#endif
#endif
- // !!! while testing we always save novol too
+// !!! only for testing we're always saving novol
// #if (TRAP_STUB_FLAGS & TRAPF_SAVENOVOL)
+ mov edi, KTRAP_FRAME.Edi[esp]
+ mov esi, KTRAP_FRAME.Esi[esp]
+ mov ebx, KTRAP_FRAME.Ebx[esp]
mov ebp, KTRAP_FRAME.Ebp[esp]
- mov ebx, KTRAP_FRAME.Ebx[esp]
- mov esi, KTRAP_FRAME.Esi[esp]
- mov edi, KTRAP_FRAME.Edi[esp]
// #endif
// restore volatile regs and return
@@ -113,10 +121,10 @@
sti
CpuSysExit
#else
+ mov edx, KTRAP_FRAME.Edx[esp]
+ mov ecx, KTRAP_FRAME.Ecx[esp]
mov eax, KTRAP_FRAME.Eax[esp]
- mov ecx, KTRAP_FRAME.Ecx[esp]
- mov edx, KTRAP_FRAME.Edx[esp]
- add esp, KTRAP_FRAME_EIP
+ add esp, offset KTRAP_FRAME.Eip
iretd
#endif
Modified: branches/jcatena-branch/ntoskrnl/trap/trap.c
URL:
http://svn.reactos.org/svn/reactos/branches/jcatena-branch/ntoskrnl/trap/tr…
==============================================================================
--- branches/jcatena-branch/ntoskrnl/trap/trap.c [iso-8859-1] (original)
+++ branches/jcatena-branch/ntoskrnl/trap/trap.c [iso-8859-1] Sun Feb 7 11:47:13 2010
@@ -140,12 +140,18 @@
void *kk = KiTrap00;
-VOID _FASTCALL KiInterruptHandler(KTRAP_FRAME *TrapFrame, PKINTERRUPT Interrupt)
+VOID FASTCALL KiInterruptHandler(KTRAP_FRAME *TrapFrame, PKINTERRUPT Interrupt)
{
DPRINTT("\n");
- _ASM int 3
+ // _ASM int 3
KiInterruptTemplateHandler(TrapFrame, Interrupt);
// KiTrapReturn(TrapFrame);
+}
+
+VOID FASTCALL Kii386EoiHelper(KTRAP_FRAME *TrapFrame)
+{
+ DPRINT1("!!! This should not be used\n");
+ KiEoiHelper(TrapFrame);
}
VOID _CDECL KiTrapInit(VOID)