Author: aandrejevic Date: Thu Nov 14 02:54:20 2013 New Revision: 60988
URL: http://svn.reactos.org/svn/reactos?rev=60988&view=rev Log: [FAST486] Update the register values in REP LODS.
Modified: branches/ntvdm/lib/fast486/opcodes.c
Modified: branches/ntvdm/lib/fast486/opcodes.c URL: http://svn.reactos.org/svn/reactos/branches/ntvdm/lib/fast486/opcodes.c?rev=... ============================================================================== --- branches/ntvdm/lib/fast486/opcodes.c [iso-8859-1] (original) +++ branches/ntvdm/lib/fast486/opcodes.c [iso-8859-1] Thu Nov 14 02:54:20 2013 @@ -5885,6 +5885,18 @@ if (AddressSize) State->GeneralRegs[FAST486_REG_ESI].Long -= (Count - 1) * DataSize; else State->GeneralRegs[FAST486_REG_ESI].LowWord -= (Count - 1) * DataSize; } + + /* Update registers */ + if (OperandSize) + { + State->GeneralRegs[FAST486_REG_ECX].Long = 0; + State->GeneralRegs[FAST486_REG_ESI].Long += Count - 1; + } + else + { + State->GeneralRegs[FAST486_REG_ECX].LowWord = 0; + State->GeneralRegs[FAST486_REG_ESI].LowWord += Count - 1; + } }
/* Read from the source operand */