[NTVDM]: Use SEG_OFF_TO_PTR ( $+ \epsilon * code _eorganization$ ).
authorHermès Bélusca-Maïto <hermes.belusca-maito@reactos.org>
Sun, 27 Oct 2013 22:13:18 +0000 (22:13 +0000)
committerHermès Bélusca-Maïto <hermes.belusca-maito@reactos.org>
Sun, 27 Oct 2013 22:13:18 +0000 (22:13 +0000)
svn path=/branches/ntvdm/; revision=60776

subsystems/ntvdm/emulator.c

index 943dda7..601da01 100644 (file)
@@ -236,7 +236,7 @@ static VOID WINAPI EmulatorBiosOperation(PFAST486_STATE State, USHORT BopCode)
     StackPointer = State->GeneralRegs[FAST486_REG_ESP].LowWord;
 
     /* Get the stack */
-    Stack = (LPWORD)((ULONG_PTR)BaseAddress + TO_LINEAR(StackSegment, StackPointer));
+    Stack = (LPWORD)SEG_OFF_TO_PTR(StackSegment, StackPointer);
 
     if (BopCode == EMULATOR_INT_BOP)
     {
@@ -400,11 +400,6 @@ ULONG EmulatorGetRegister(ULONG Register)
     }
 }
 
-ULONG EmulatorGetProgramCounter(VOID)
-{
-    return EmulatorContext.InstPtr.Long;
-}
-
 VOID EmulatorSetRegister(ULONG Register, ULONG Value)
 {
     if (Register < EMULATOR_REG_ES)
@@ -417,6 +412,11 @@ VOID EmulatorSetRegister(ULONG Register, ULONG Value)
     }
 }
 
+ULONG EmulatorGetProgramCounter(VOID)
+{
+    return EmulatorContext.InstPtr.Long;
+}
+
 BOOLEAN EmulatorGetFlag(ULONG Flag)
 {
     return (EmulatorContext.Flags.Long & Flag) ? TRUE : FALSE;