Author: aandrejevic
Date: Sun May 10 22:54:15 2015
New Revision: 67646
URL:
http://svn.reactos.org/svn/reactos?rev=67646&view=rev
Log:
[FAST486]
Don't check for gates in virtual 8086 mode.
Modified:
trunk/reactos/lib/fast486/opcodes.c
trunk/reactos/lib/fast486/opgroups.c
Modified: trunk/reactos/lib/fast486/opcodes.c
URL:
http://svn.reactos.org/svn/reactos/trunk/reactos/lib/fast486/opcodes.c?rev=…
==============================================================================
--- trunk/reactos/lib/fast486/opcodes.c [iso-8859-1] (original)
+++ trunk/reactos/lib/fast486/opcodes.c [iso-8859-1] Sun May 10 22:54:15 2015
@@ -4073,7 +4073,7 @@
return;
}
- if (State->ControlRegisters[FAST486_REG_CR0] & FAST486_CR0_PE)
+ if ((State->ControlRegisters[FAST486_REG_CR0] & FAST486_CR0_PE) &&
!State->Flags.Vm)
{
if (!Fast486ProcessGate(State, Segment, Offset, TRUE))
{
@@ -5126,7 +5126,7 @@
return;
}
- if (State->ControlRegisters[FAST486_REG_CR0] & FAST486_CR0_PE)
+ if ((State->ControlRegisters[FAST486_REG_CR0] & FAST486_CR0_PE) &&
!State->Flags.Vm)
{
if (!Fast486ProcessGate(State, Segment, Offset, FALSE))
{
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] Sun May 10 22:54:15 2015
@@ -1467,7 +1467,8 @@
return;
}
- if (State->ControlRegisters[FAST486_REG_CR0] & FAST486_CR0_PE)
+ if ((State->ControlRegisters[FAST486_REG_CR0] & FAST486_CR0_PE)
+ && !State->Flags.Vm)
{
if (!Fast486ProcessGate(State, Selector, Value, TRUE))
{
@@ -1529,7 +1530,8 @@
return;
}
- if (State->ControlRegisters[FAST486_REG_CR0] & FAST486_CR0_PE)
+ if ((State->ControlRegisters[FAST486_REG_CR0] & FAST486_CR0_PE)
+ && !State->Flags.Vm)
{
if (!Fast486ProcessGate(State, Selector, Value, FALSE))
{
@@ -1629,7 +1631,8 @@
return;
}
- if (State->ControlRegisters[FAST486_REG_CR0] & FAST486_CR0_PE)
+ if ((State->ControlRegisters[FAST486_REG_CR0] & FAST486_CR0_PE)
+ && !State->Flags.Vm)
{
if (!Fast486ProcessGate(State, Selector, Value, TRUE))
{
@@ -1697,7 +1700,8 @@
return;
}
- if (State->ControlRegisters[FAST486_REG_CR0] & FAST486_CR0_PE)
+ if ((State->ControlRegisters[FAST486_REG_CR0] & FAST486_CR0_PE)
+ && !State->Flags.Vm)
{
if (!Fast486ProcessGate(State, Selector, Value, FALSE))
{