- Swap the IDT where we should, in KiSystemStartup instead of the freeldr.c hackfile. This, coupled with the previous patch, should make NTLDR-booting even more succesful since interrupts won't crash/be ignored.

svn path=/trunk/; revision=24973
This commit is contained in:
Alex Ionescu 2006-11-29 19:20:17 +00:00
parent 96d593c9ba
commit 37d156c4c8
2 changed files with 3 additions and 3 deletions

View file

@ -367,9 +367,6 @@ KiRosPrepareForSystemStartup(IN ULONG Dummy,
MmFreeLdrLastKrnlPhysAddr = MmFreeLdrLastKernelAddress -
KSEG0_BASE + 0x200000;
/* Setup the IDT */
KeInitExceptions(); // ONCE HACK BELOW IS GONE, MOVE TO KISYSTEMSTARTUP!
/* Set up the VDM Data */
NtEarlyInitVdm();

View file

@ -610,6 +610,9 @@ KiSystemStartup(IN PLOADER_PARAMETER_BLOCK LoaderBlock)
__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);