[ros-diffs] [jcatena] 45483: [ntos] msvc wip

jcatena at svn.reactos.org jcatena at svn.reactos.org
Sun Feb 7 12:53:11 CET 2010


Author: jcatena
Date: Sun Feb  7 12:53:10 2010
New Revision: 45483

URL: http://svn.reactos.org/svn/reactos?rev=45483&view=rev
Log:
[ntos] msvc wip

Modified:
    branches/jcatena-branch/ntoskrnl/ke/i386/exp.c
    branches/jcatena-branch/ntoskrnl/ke/i386/kiinit.c

Modified: branches/jcatena-branch/ntoskrnl/ke/i386/exp.c
URL: http://svn.reactos.org/svn/reactos/branches/jcatena-branch/ntoskrnl/ke/i386/exp.c?rev=45483&r1=45482&r2=45483&view=diff
==============================================================================
--- branches/jcatena-branch/ntoskrnl/ke/i386/exp.c [iso-8859-1] (original)
+++ branches/jcatena-branch/ntoskrnl/ke/i386/exp.c [iso-8859-1] Sun Feb  7 12:53:10 2010
@@ -53,7 +53,8 @@
 {
     ULONG i;
     USHORT FlippedSelector;
-
+	
+	DPRINTT("\n");
     /* Loop the IDT */
     for (i = 0; i <= MAXIMUM_IDTVECTOR; i++)
     {

Modified: branches/jcatena-branch/ntoskrnl/ke/i386/kiinit.c
URL: http://svn.reactos.org/svn/reactos/branches/jcatena-branch/ntoskrnl/ke/i386/kiinit.c?rev=45483&r1=45482&r2=45483&view=diff
==============================================================================
--- branches/jcatena-branch/ntoskrnl/ke/i386/kiinit.c [iso-8859-1] (original)
+++ branches/jcatena-branch/ntoskrnl/ke/i386/kiinit.c [iso-8859-1] Sun Feb  7 12:53:10 2010
@@ -720,12 +720,9 @@
 
     /* Get GDT, IDT, PCR and TSS pointers */
     KiGetMachineBootPointers(&Gdt, &Idt, &Pcr, &Tss);
-
+	
 	/* Setup the TSS descriptors and entries */
     Ki386InitializeTss(Tss, Idt, Gdt);
-
-	// !!! 
-	KiTrapInit();
 
 	/* Initialize the PCR */
     RtlZeroMemory(Pcr, PAGE_SIZE);
@@ -745,9 +742,6 @@
     __writefsdword(KPCR_DR6, 0);
     __writefsdword(KPCR_DR7, 0);
 
-    /* Setup the IDT */
-    KeInitExceptions();
-
     /* Load Ring 3 selectors for DS/ES */
     Ke386SetDs(KGDT_R3_DATA | RPL_MASK);
     Ke386SetEs(KGDT_R3_DATA | RPL_MASK);
@@ -756,14 +750,23 @@
     RtlCopyMemory(&NmiEntry, &Idt[2], sizeof(KIDTENTRY));
     RtlCopyMemory(&DoubleFaultEntry, &Idt[8], sizeof(KIDTENTRY));
 
-    /* Copy kernel's trap handlers */
+    /* Setup the IDT */
+    KeInitExceptions();
+	Idt = KiIdt;
+
+#if 0
+	/* Copy kernel's trap handlers */
     RtlCopyMemory(Idt,
                   (PVOID)KiIdtDescriptor.Base,
                   KiIdtDescriptor.Limit + 1);
+#endif
 
     /* Restore NMI and double fault */
     RtlCopyMemory(&Idt[2], &NmiEntry, sizeof(KIDTENTRY));
     RtlCopyMemory(&Idt[8], &DoubleFaultEntry, sizeof(KIDTENTRY));
+
+	__lidt(&KiIdtDescriptor.Limit);
+	KiTrapInit();
 
 AppCpuInit:
     /* Loop until we can release the freeze lock */




More information about the Ros-diffs mailing list