Author: aandrejevic Date: Wed Oct 9 19:11:42 2013 New Revision: 60588
URL: http://svn.reactos.org/svn/reactos?rev=60588&view=rev Log: [SOFT386] Don't single-step on a prefix. Single-step should execute one whole instruction.
Modified: branches/ntvdm/lib/soft386/soft386.c
Modified: branches/ntvdm/lib/soft386/soft386.c URL: http://svn.reactos.org/svn/reactos/branches/ntvdm/lib/soft386/soft386.c?rev=... ============================================================================== --- branches/ntvdm/lib/soft386/soft386.c [iso-8859-1] (original) +++ branches/ntvdm/lib/soft386/soft386.c [iso-8859-1] Wed Oct 9 19:11:42 2013 @@ -77,13 +77,19 @@ /* A non-prefix opcode has been executed, reset the prefix flags */ State->PrefixFlags = 0; } + else + { + /* This is a prefix, go to the next instruction immediately */ + continue; + }
/* Increment the time stamp counter */ State->TimeStampCounter++; } while ((Command == SOFT386_CONTINUE) || (Command == SOFT386_STEP_OVER && ProcedureCallCount > 0) - || (Command == SOFT386_STEP_OUT && ProcedureCallCount >= 0)); + || (Command == SOFT386_STEP_OUT && ProcedureCallCount >= 0) + || (Soft386OpcodeHandlers[Opcode] == Soft386OpcodePrefix)); }
/* PUBLIC FUNCTIONS ***********************************************************/