Author: aandrejevic Date: Mon Aug 24 20:55:09 2015 New Revision: 68815
URL: http://svn.reactos.org/svn/reactos?rev=68815&view=rev Log: [FAST486] If FAST486_PREFIX_SEG is set, we're supposed to use the override segment instead of DS, and not the other way around.
Modified: trunk/reactos/lib/fast486/fpu.c
Modified: trunk/reactos/lib/fast486/fpu.c URL: http://svn.reactos.org/svn/reactos/trunk/reactos/lib/fast486/fpu.c?rev=68815... ============================================================================== --- trunk/reactos/lib/fast486/fpu.c [iso-8859-1] (original) +++ trunk/reactos/lib/fast486/fpu.c [iso-8859-1] Mon Aug 24 20:55:09 2015 @@ -1982,7 +1982,7 @@ { Fast486FpuLoadEnvironment(State, (State->PrefixFlags & FAST486_PREFIX_SEG) - ? FAST486_REG_DS : State->SegmentOverride, + ? State->SegmentOverride : FAST486_REG_DS, ModRegRm.MemoryAddress, OperandSize); break; @@ -2000,7 +2000,7 @@ { Fast486FpuSaveEnvironment(State, (State->PrefixFlags & FAST486_PREFIX_SEG) - ? FAST486_REG_DS : State->SegmentOverride, + ? State->SegmentOverride : FAST486_REG_DS, ModRegRm.MemoryAddress, OperandSize); break; @@ -3249,7 +3249,7 @@ /* Save the environment */ if (!Fast486FpuLoadEnvironment(State, (State->PrefixFlags & FAST486_PREFIX_SEG) - ? FAST486_REG_DS : State->SegmentOverride, + ? State->SegmentOverride : FAST486_REG_DS, ModRegRm.MemoryAddress, OperandSize)) { @@ -3260,7 +3260,7 @@ /* Load the registers */ if (!Fast486ReadMemory(State, (State->PrefixFlags & FAST486_PREFIX_SEG) - ? FAST486_REG_DS : State->SegmentOverride, + ? State->SegmentOverride : FAST486_REG_DS, ModRegRm.MemoryAddress + (OperandSize + 1) * 14, FALSE, AllRegs, @@ -3297,7 +3297,7 @@ /* Save the environment */ if (!Fast486FpuSaveEnvironment(State, (State->PrefixFlags & FAST486_PREFIX_SEG) - ? FAST486_REG_DS : State->SegmentOverride, + ? State->SegmentOverride : FAST486_REG_DS, ModRegRm.MemoryAddress, OperandSize)) { @@ -3319,7 +3319,7 @@
Fast486WriteMemory(State, (State->PrefixFlags & FAST486_PREFIX_SEG) - ? FAST486_REG_DS : State->SegmentOverride, + ? State->SegmentOverride : FAST486_REG_DS, ModRegRm.MemoryAddress + (OperandSize + 1) * 14, AllRegs, sizeof(AllRegs));