From f92993a1210158b2e05967a1726d2be91da2efdd Mon Sep 17 00:00:00 2001 From: Sjoerd van der Berg Date: Mon, 2 Jun 2003 21:22:01 +0000 Subject: [PATCH] add IN EAX,DX Imported-from: https://svn.code.sf.net/p/dosbox/code-0/dosbox/trunk@1037 --- src/cpu/core_16/prefix_66.h | 7 ++++++- 1 file changed, 6 insertions(+), 1 deletion(-) diff --git a/src/cpu/core_16/prefix_66.h b/src/cpu/core_16/prefix_66.h index 0e30f431..0c662a56 100644 --- a/src/cpu/core_16/prefix_66.h +++ b/src/cpu/core_16/prefix_66.h @@ -401,13 +401,18 @@ switch(Fetchb()) { GRP2D(1);break; case 0xd3: /* GRP2 Ed,CL */ GRP2D(reg_cl);break; + case 0xed: /* IN EAX,DX */ + reg_eax=IO_Read(reg_dx) | + (IO_Read(reg_dx+1) << 8) | + (IO_Read(reg_dx+2) << 16) | + (IO_Read(reg_dx+3) << 24); + break; case 0xef: /* OUT DX,EAX */ IO_Write(reg_dx,(Bit8u)(reg_eax>>0)); IO_Write(reg_dx+1,(Bit8u)(reg_eax>>8)); IO_Write(reg_dx+2,(Bit8u)(reg_eax>>16)); IO_Write(reg_dx+3,(Bit8u)(reg_eax>>24)); break; - case 0xf2: /* REPNZ */ prefix.count++; Repeat_Normal(false,true);