Author: aandrejevic Date: Fri May 8 01:34:18 2015 New Revision: 67596
URL: http://svn.reactos.org/svn/reactos?rev=67596&view=rev Log: [FAST486] Don't forget to check for gates in 16-bit protected mode too.
Modified: trunk/reactos/lib/fast486/opgroups.c
Modified: trunk/reactos/lib/fast486/opgroups.c URL: http://svn.reactos.org/svn/reactos/trunk/reactos/lib/fast486/opgroups.c?rev=... ============================================================================== --- trunk/reactos/lib/fast486/opgroups.c [iso-8859-1] (original) +++ trunk/reactos/lib/fast486/opgroups.c [iso-8859-1] Fri May 8 01:34:18 2015 @@ -1629,6 +1629,15 @@ return; }
+ if (State->ControlRegisters[FAST486_REG_CR0] & FAST486_CR0_PE) + { + if (!Fast486ProcessGate(State, Selector, Value, FALSE)) + { + /* Gate processed or exception occurred */ + return; + } + } + /* Push the current value of CS */ if (!Fast486StackPush(State, State->SegmentRegs[FAST486_REG_CS].Selector)) { @@ -1686,6 +1695,15 @@ { /* Exception occurred */ return; + } + + if (State->ControlRegisters[FAST486_REG_CR0] & FAST486_CR0_PE) + { + if (!Fast486ProcessGate(State, Selector, Value, FALSE)) + { + /* Gate processed or exception occurred */ + return; + } }
/* Load the new code segment */