TssDesc->Bits.BaseLow = (UINT16)TssBase;\r
TssDesc->Bits.BaseMid = (UINT8)(TssBase >> 16);\r
TssDesc->Bits.Type = IA32_GDT_TYPE_TSS;\r
- TssDesc->Bits.P = 1;\r
+ TssDesc->Bits.Present = 1;\r
TssDesc->Bits.LimitHigh = 0;\r
TssDesc->Bits.BaseHigh = (UINT8)(TssBase >> 24);\r
\r
TssDesc->Bits.BaseLow = (UINT16)TssBase;\r
TssDesc->Bits.BaseMid = (UINT8)(TssBase >> 16);\r
TssDesc->Bits.Type = IA32_GDT_TYPE_TSS;\r
- TssDesc->Bits.P = 1;\r
+ TssDesc->Bits.Present = 1;\r
TssDesc->Bits.LimitHigh = 0;\r
TssDesc->Bits.BaseHigh = (UINT8)(TssBase >> 24);\r
\r
continue;\r
}\r
\r
- Tss->EIP = (UINT32)(TemplateMap.ExceptionStart\r
+ Tss->Eip = (UINT32)(TemplateMap.ExceptionStart\r
+ Vector * TemplateMap.ExceptionStubHeaderSize);\r
- Tss->EFLAGS = 0x2;\r
- Tss->ESP = StackTop;\r
- Tss->CR3 = AsmReadCr3 ();\r
- Tss->ES = AsmReadEs ();\r
- Tss->CS = AsmReadCs ();\r
- Tss->SS = AsmReadSs ();\r
- Tss->DS = AsmReadDs ();\r
- Tss->FS = AsmReadFs ();\r
- Tss->GS = AsmReadGs ();\r
+ Tss->Eflags = 0x2;\r
+ Tss->Esp = StackTop;\r
+ Tss->Cr3 = AsmReadCr3 ();\r
+ Tss->Es = AsmReadEs ();\r
+ Tss->Cs = AsmReadCs ();\r
+ Tss->Ss = AsmReadSs ();\r
+ Tss->Ds = AsmReadDs ();\r
+ Tss->Fs = AsmReadFs ();\r
+ Tss->Gs = AsmReadGs ();\r
\r
StackTop -= StackSwitchData->Ia32.KnownGoodStackSize;\r
\r