protected override void ExecuteInstruction() { if (wordSize == 0) { EU.Registers.AL = (byte)EU.ReadPort(wordSize, port); } else { EU.Registers.AX = (ushort)EU.ReadPort(wordSize, port); } }
protected override void DoInstruction() { Bus.SaveString(wordSize, EU.Registers.DI, (byte)EU.ReadPort(wordSize, EU.Registers.DX)); if (EU.CondReg.DirectionFlag) { EU.Registers.DI -= (ushort)(wordSize + 1); } else { EU.Registers.DI += (ushort)(wordSize + 1); } }