Diff for /np2/i286c/i286c_sf.c between versions 1.1 and 1.7

version 1.1, 2003/10/16 17:57:44 version 1.7, 2003/12/12 01:04:40
Line 1 Line 1
 #include        "compiler.h"  #include        "compiler.h"
 #include        "i286.h"  #include        "cpucore.h"
 #include        "i286c.h"  #include        "i286c.h"
 #include        "i286c.mcr"  #include        "i286c.mcr"
 #include        "i286c_sf.mcr"  #include        "i286c_sf.mcr"
 #include        "memory.h"  
 #include        "nevent.h"  
   
   
 // ------------------------------------------------------------------------  // ------------------------------------------------------------------------
   
 I286_SFT _rol_r8_1(BYTE *p) {  I286_SFT _rol_r8_1(UINT8 *p) {
   
         DWORD   src, dst;          UINT    src;
           UINT    dst;
   
         src = *p;          src = *p;
         BYTE_ROL1(dst, src)          BYTE_ROL1(dst, src)
         *p = (BYTE)dst;          *p = (UINT8)dst;
 }  }
   
 I286_SFT _ror_r8_1(BYTE *p) {  I286_SFT _ror_r8_1(UINT8 *p) {
   
         DWORD   src, dst;          UINT    src;
           UINT    dst;
   
         src = *p;          src = *p;
         BYTE_ROR1(dst, src)          BYTE_ROR1(dst, src)
         *p = (BYTE)dst;          *p = (UINT8)dst;
 }  }
   
 I286_SFT _rcl_r8_1(BYTE *p) {  I286_SFT _rcl_r8_1(UINT8 *p) {
   
         DWORD   src, dst;          UINT    src;
           UINT    dst;
   
         src = *p;          src = *p;
         BYTE_RCL1(dst, src)          BYTE_RCL1(dst, src)
         *p = (BYTE)dst;          *p = (UINT8)dst;
 }  }
   
 I286_SFT _rcr_r8_1(BYTE *p) {  I286_SFT _rcr_r8_1(UINT8 *p) {
   
         DWORD   src, dst;          UINT    src;
           UINT    dst;
   
         src = *p;          src = *p;
         BYTE_RCR1(dst, src)          BYTE_RCR1(dst, src)
         *p = (BYTE)dst;          *p = (UINT8)dst;
 }  }
   
 I286_SFT _shl_r8_1(BYTE *p) {  I286_SFT _shl_r8_1(UINT8 *p) {
   
         DWORD   src, dst;          UINT    src;
           UINT    dst;
   
         src = *p;          src = *p;
         BYTE_SHL1(dst, src)          BYTE_SHL1(dst, src)
         *p = (BYTE)dst;          *p = (UINT8)dst;
 }  }
   
 I286_SFT _shr_r8_1(BYTE *p) {  I286_SFT _shr_r8_1(BYTE *p) {
   
         DWORD   src, dst;          UINT    src;
           UINT    dst;
   
         src = *p;          src = *p;
         BYTE_SHR1(dst, src)          BYTE_SHR1(dst, src)
         *p = (BYTE)dst;          *p = (UINT8)dst;
 }  }
   
 I286_SFT _sar_r8_1(BYTE *p) {  I286_SFT _sar_r8_1(BYTE *p) {
   
         DWORD   src, dst;          UINT    src;
           UINT    dst;
   
         src = *p;          src = *p;
         BYTE_SAR1(dst, src)          BYTE_SAR1(dst, src)
         *p = (BYTE)dst;          *p = (UINT8)dst;
 }  }
   
   
 I286_SFT _rol_e8_1(DWORD madr) {  I286_SFT _rol_e8_1(UINT32 madr) {
   
           UINT    src;
           UINT    dst;
   
         DWORD   src, dst;  
         src = i286_memoryread(madr);          src = i286_memoryread(madr);
         BYTE_ROL1(dst, src)          BYTE_ROL1(dst, src)
         i286_memorywrite(madr, (BYTE)dst);          i286_memorywrite(madr, (REG8)dst);
 }  }
   
 I286_SFT _ror_e8_1(DWORD madr) {  I286_SFT _ror_e8_1(UINT32 madr) {
   
           UINT    src;
           UINT    dst;
   
         DWORD   src, dst;  
         src = i286_memoryread(madr);          src = i286_memoryread(madr);
         BYTE_ROR1(dst, src)          BYTE_ROR1(dst, src)
         i286_memorywrite(madr, (BYTE)dst);          i286_memorywrite(madr, (REG8)dst);
 }  }
   
 I286_SFT _rcl_e8_1(DWORD madr) {  I286_SFT _rcl_e8_1(UINT32 madr) {
   
           UINT    src;
           UINT    dst;
   
         DWORD   src, dst;  
         src = i286_memoryread(madr);          src = i286_memoryread(madr);
         BYTE_RCL1(dst, src)          BYTE_RCL1(dst, src)
         i286_memorywrite(madr, (BYTE)dst);          i286_memorywrite(madr, (REG8)dst);
 }  }
   
 I286_SFT _rcr_e8_1(DWORD madr) {  I286_SFT _rcr_e8_1(UINT32 madr) {
   
           UINT    src;
           UINT    dst;
   
         DWORD   src, dst;  
         src = i286_memoryread(madr);          src = i286_memoryread(madr);
         BYTE_RCR1(dst, src)          BYTE_RCR1(dst, src)
         i286_memorywrite(madr, (BYTE)dst);          i286_memorywrite(madr, (REG8)dst);
 }  }
   
 I286_SFT _shl_e8_1(DWORD madr) {  I286_SFT _shl_e8_1(UINT32 madr) {
   
           UINT    src;
           UINT    dst;
   
         DWORD   src, dst;  
         src = i286_memoryread(madr);          src = i286_memoryread(madr);
         BYTE_SHL1(dst, src)          BYTE_SHL1(dst, src)
         i286_memorywrite(madr, (BYTE)dst);          i286_memorywrite(madr, (REG8)dst);
 }  }
   
 I286_SFT _shr_e8_1(DWORD madr) {  I286_SFT _shr_e8_1(UINT32 madr) {
   
           UINT    src;
           UINT    dst;
   
         DWORD   src, dst;  
         src = i286_memoryread(madr);          src = i286_memoryread(madr);
         BYTE_SHR1(dst, src)          BYTE_SHR1(dst, src)
         i286_memorywrite(madr, (BYTE)dst);          i286_memorywrite(madr, (REG8)dst);
 }  }
   
 I286_SFT _sar_e8_1(DWORD madr) {  I286_SFT _sar_e8_1(UINT32 madr) {
   
           UINT    src;
           UINT    dst;
   
         DWORD   src, dst;  
         src = i286_memoryread(madr);          src = i286_memoryread(madr);
         BYTE_SAR1(dst, src)          BYTE_SAR1(dst, src)
         i286_memorywrite(madr, (BYTE)dst);          i286_memorywrite(madr, (REG8)dst);
 }  }
   
   
Line 141  const I286OPSFTE8 sft_e8_table[] = { Line 160  const I286OPSFTE8 sft_e8_table[] = {
   
 // ------------------------------------------------------------------------  // ------------------------------------------------------------------------
   
 I286_SFT _rol_r16_1(WORD *p) {  I286_SFT _rol_r16_1(UINT16 *p) {
   
         DWORD   src, dst;          UINT32  src;
           UINT32  dst;
   
         src = *p;          src = *p;
         WORD_ROL1(dst, src)          WORD_ROL1(dst, src)
         *p = (WORD)dst;          *p = (UINT16)dst;
 }  }
   
 I286_SFT _ror_r16_1(WORD *p) {  I286_SFT _ror_r16_1(UINT16 *p) {
   
         DWORD   src, dst;          UINT32  src;
           UINT32  dst;
   
         src = *p;          src = *p;
         WORD_ROR1(dst, src)          WORD_ROR1(dst, src)
         *p = (WORD)dst;          *p = (UINT16)dst;
 }  }
   
 I286_SFT _rcl_r16_1(WORD *p) {  I286_SFT _rcl_r16_1(UINT16 *p) {
   
         DWORD   src, dst;          UINT32  src;
           UINT32  dst;
   
         src = *p;          src = *p;
         WORD_RCL1(dst, src)          WORD_RCL1(dst, src)
         *p = (WORD)dst;          *p = (UINT16)dst;
 }  }
   
 I286_SFT _rcr_r16_1(WORD *p) {  I286_SFT _rcr_r16_1(UINT16 *p) {
   
         DWORD   src, dst;          UINT32  src;
           UINT32  dst;
   
         src = *p;          src = *p;
         WORD_RCR1(dst, src)          WORD_RCR1(dst, src)
         *p = (WORD)dst;          *p = (UINT16)dst;
 }  }
   
 I286_SFT _shl_r16_1(WORD *p) {  I286_SFT _shl_r16_1(UINT16 *p) {
   
         DWORD   src, dst;          UINT32  src;
           UINT32  dst;
   
         src = *p;          src = *p;
         WORD_SHL1(dst, src)          WORD_SHL1(dst, src)
         *p = (WORD)dst;          *p = (UINT16)dst;
 }  }
   
 I286_SFT _shr_r16_1(WORD *p) {  I286_SFT _shr_r16_1(UINT16 *p) {
   
         DWORD   src, dst;          UINT32  src;
           UINT32  dst;
   
         src = *p;          src = *p;
         WORD_SHR1(dst, src)          WORD_SHR1(dst, src)
         *p = (WORD)dst;          *p = (UINT16)dst;
 }  }
   
 I286_SFT _sar_r16_1(WORD *p) {  I286_SFT _sar_r16_1(UINT16 *p) {
   
         DWORD   src, dst;          UINT32  src;
           UINT32  dst;
   
         src = *p;          src = *p;
         WORD_SAR1(dst, src)          WORD_SAR1(dst, src)
         *p = (WORD)dst;          *p = (UINT16)dst;
 }  }
   
   
 I286_SFT _rol_e16_1(DWORD madr) {  I286_SFT _rol_e16_1(UINT32 madr) {
   
         DWORD   src, dst;          UINT32  src;
           UINT32  dst;
   
         src = i286_memoryread_w(madr);          src = i286_memoryread_w(madr);
         WORD_ROL1(dst, src)          WORD_ROL1(dst, src)
         i286_memorywrite_w(madr, (WORD)dst);          i286_memorywrite_w(madr, (REG16)dst);
 }  }
   
 I286_SFT _ror_e16_1(DWORD madr) {  I286_SFT _ror_e16_1(UINT32 madr) {
   
         DWORD   src, dst;          UINT32  src;
           UINT32  dst;
   
         src = i286_memoryread_w(madr);          src = i286_memoryread_w(madr);
         WORD_ROR1(dst, src)          WORD_ROR1(dst, src)
         i286_memorywrite_w(madr, (WORD)dst);          i286_memorywrite_w(madr, (REG16)dst);
 }  }
   
 I286_SFT _rcl_e16_1(DWORD madr) {  I286_SFT _rcl_e16_1(UINT32 madr) {
   
         DWORD   src, dst;          UINT32  src;
           UINT32  dst;
   
         src = i286_memoryread_w(madr);          src = i286_memoryread_w(madr);
         WORD_RCL1(dst, src)          WORD_RCL1(dst, src)
         i286_memorywrite_w(madr, (WORD)dst);          i286_memorywrite_w(madr, (REG16)dst);
 }  }
   
 I286_SFT _rcr_e16_1(DWORD madr) {  I286_SFT _rcr_e16_1(UINT32 madr) {
   
         DWORD   src, dst;          UINT32  src;
           UINT32  dst;
   
         src = i286_memoryread_w(madr);          src = i286_memoryread_w(madr);
         WORD_RCR1(dst, src)          WORD_RCR1(dst, src)
         i286_memorywrite_w(madr, (WORD)dst);          i286_memorywrite_w(madr, (REG16)dst);
 }  }
   
 I286_SFT _shl_e16_1(DWORD madr) {  I286_SFT _shl_e16_1(UINT32 madr) {
   
         DWORD   src, dst;          UINT32  src;
           UINT32  dst;
   
         src = i286_memoryread_w(madr);          src = i286_memoryread_w(madr);
         WORD_SHL1(dst, src)          WORD_SHL1(dst, src)
         i286_memorywrite_w(madr, (WORD)dst);          i286_memorywrite_w(madr, (REG16)dst);
 }  }
   
 I286_SFT _shr_e16_1(DWORD madr) {  I286_SFT _shr_e16_1(UINT32 madr) {
   
         DWORD   src, dst;          UINT32  src;
           UINT32  dst;
   
         src = i286_memoryread_w(madr);          src = i286_memoryread_w(madr);
         WORD_SHR1(dst, src)          WORD_SHR1(dst, src)
         i286_memorywrite_w(madr, (WORD)dst);          i286_memorywrite_w(madr, (REG16)dst);
 }  }
   
 I286_SFT _sar_e16_1(DWORD madr) {  I286_SFT _sar_e16_1(UINT32 madr) {
   
         DWORD   src, dst;          UINT32  src;
           UINT32  dst;
   
         src = i286_memoryread_w(madr);          src = i286_memoryread_w(madr);
         WORD_SAR1(dst, src)          WORD_SAR1(dst, src)
         i286_memorywrite_w(madr, (WORD)dst);          i286_memorywrite_w(madr, (REG16)dst);
 }  }
   
   
Line 279  const I286OPSFTE16 sft_e16_table[] = { Line 312  const I286OPSFTE16 sft_e16_table[] = {
   
 // ------------------------------------------------------------------------  // ------------------------------------------------------------------------
   
 I286_SFT _rol_r8_cl(BYTE *p, BYTE cl) {  I286_SFT _rol_r8_cl(UINT8 *p, REG8 cl) {
   
         DWORD   src, dst;          UINT    src;
           UINT    dst;
   
         src = *p;          src = *p;
         BYTE_ROLCL(dst, src, cl)          BYTE_ROLCL(dst, src, cl)
         *p = (BYTE)dst;          *p = (UINT8)dst;
 }  }
   
 I286_SFT _ror_r8_cl(BYTE *p, BYTE cl) {  I286_SFT _ror_r8_cl(UINT8 *p, REG8 cl) {
   
         DWORD   src, dst;          UINT    src;
           UINT    dst;
   
         src = *p;          src = *p;
         BYTE_RORCL(dst, src, cl)          BYTE_RORCL(dst, src, cl)
         *p = (BYTE)dst;          *p = (UINT8)dst;
 }  }
   
 I286_SFT _rcl_r8_cl(BYTE *p, BYTE cl) {  I286_SFT _rcl_r8_cl(UINT8 *p, REG8 cl) {
   
         DWORD   src, dst;          UINT    src;
           UINT    dst;
   
         src = *p;          src = *p;
         BYTE_RCLCL(dst, src, cl)          BYTE_RCLCL(dst, src, cl)
         *p = (BYTE)dst;          *p = (UINT8)dst;
 }  }
   
 I286_SFT _rcr_r8_cl(BYTE *p, BYTE cl) {  I286_SFT _rcr_r8_cl(UINT8 *p, REG8 cl) {
   
         DWORD   src, dst;          UINT    src;
           UINT    dst;
   
         src = *p;          src = *p;
         BYTE_RCRCL(dst, src, cl)          BYTE_RCRCL(dst, src, cl)
         *p = (BYTE)dst;          *p = (UINT8)dst;
 }  }
   
 I286_SFT _shl_r8_cl(BYTE *p, BYTE cl) {  I286_SFT _shl_r8_cl(UINT8 *p, REG8 cl) {
   
         DWORD   src, dst;          UINT    src;
           UINT    dst;
   
         src = *p;          src = *p;
         BYTE_SHLCL(dst, src, cl)          BYTE_SHLCL(dst, src, cl)
         *p = (BYTE)dst;          *p = (UINT8)dst;
 }  }
   
 I286_SFT _shr_r8_cl(BYTE *p, BYTE cl) {  I286_SFT _shr_r8_cl(UINT8 *p, REG8 cl) {
   
         DWORD   src, dst;          UINT    src;
           UINT    dst;
   
         src = *p;          src = *p;
         BYTE_SHRCL(dst, src, cl)          BYTE_SHRCL(dst, src, cl)
         *p = (BYTE)dst;          *p = (UINT8)dst;
 }  }
   
 I286_SFT _sar_r8_cl(BYTE *p, BYTE cl) {  I286_SFT _sar_r8_cl(UINT8 *p, REG8 cl) {
   
         DWORD   src, dst;          UINT    src;
           UINT    dst;
   
         src = *p;          src = *p;
         BYTE_SARCL(dst, src, cl)          BYTE_SARCL(dst, src, cl)
         *p = (BYTE)dst;          *p = (UINT8)dst;
 }  }
   
   
 I286_SFT _rol_e8_cl(DWORD madr, BYTE cl) {  I286_SFT _rol_e8_cl(UINT32 madr, REG8 cl) {
   
         DWORD   src, dst;          UINT    src;
           UINT    dst;
   
         src = i286_memoryread(madr);          src = i286_memoryread(madr);
         BYTE_ROLCL(dst, src, cl)          BYTE_ROLCL(dst, src, cl)
         i286_memorywrite(madr, (BYTE)dst);          i286_memorywrite(madr, (REG8)dst);
 }  }
   
 I286_SFT _ror_e8_cl(DWORD madr, BYTE cl) {  I286_SFT _ror_e8_cl(UINT32 madr, REG8 cl) {
   
         DWORD   src, dst;          UINT    src;
           UINT    dst;
   
         src = i286_memoryread(madr);          src = i286_memoryread(madr);
         BYTE_RORCL(dst, src, cl)          BYTE_RORCL(dst, src, cl)
         i286_memorywrite(madr, (BYTE)dst);          i286_memorywrite(madr, (REG8)dst);
 }  }
   
 I286_SFT _rcl_e8_cl(DWORD madr, BYTE cl) {  I286_SFT _rcl_e8_cl(UINT32 madr, REG8 cl) {
   
         DWORD   src, dst;          UINT    src;
           UINT    dst;
   
         src = i286_memoryread(madr);          src = i286_memoryread(madr);
         BYTE_RCLCL(dst, src, cl)          BYTE_RCLCL(dst, src, cl)
         i286_memorywrite(madr, (BYTE)dst);          i286_memorywrite(madr, (REG8)dst);
 }  }
   
 I286_SFT _rcr_e8_cl(DWORD madr, BYTE cl) {  I286_SFT _rcr_e8_cl(UINT32 madr, REG8 cl) {
   
         DWORD   src, dst;          UINT    src;
           UINT    dst;
   
         src = i286_memoryread(madr);          src = i286_memoryread(madr);
         BYTE_RCRCL(dst, src, cl)          BYTE_RCRCL(dst, src, cl)
         i286_memorywrite(madr, (BYTE)dst);          i286_memorywrite(madr, (REG8)dst);
 }  }
   
 I286_SFT _shl_e8_cl(DWORD madr, BYTE cl) {  I286_SFT _shl_e8_cl(UINT32 madr, REG8 cl) {
   
         DWORD   src, dst;          UINT    src;
           UINT    dst;
   
         src = i286_memoryread(madr);          src = i286_memoryread(madr);
         BYTE_SHLCL(dst, src, cl)          BYTE_SHLCL(dst, src, cl)
         i286_memorywrite(madr, (BYTE)dst);          i286_memorywrite(madr, (REG8)dst);
 }  }
   
 I286_SFT _shr_e8_cl(DWORD madr, BYTE cl) {  I286_SFT _shr_e8_cl(UINT32 madr, REG8 cl) {
   
         DWORD   src, dst;          UINT    src;
           UINT    dst;
   
         src = i286_memoryread(madr);          src = i286_memoryread(madr);
         BYTE_SHRCL(dst, src, cl)          BYTE_SHRCL(dst, src, cl)
         i286_memorywrite(madr, (BYTE)dst);          i286_memorywrite(madr, (REG8)dst);
 }  }
   
 I286_SFT _sar_e8_cl(DWORD madr, BYTE cl) {  I286_SFT _sar_e8_cl(UINT32 madr, REG8 cl) {
   
         DWORD   src, dst;          UINT    src;
           UINT    dst;
   
         src = i286_memoryread(madr);          src = i286_memoryread(madr);
         BYTE_SARCL(dst, src, cl)          BYTE_SARCL(dst, src, cl)
         i286_memorywrite(madr, (BYTE)dst);          i286_memorywrite(madr, (REG8)dst);
 }  }
   
   
Line 418  const I286OPSFTE8CL sft_e8cl_table[] = { Line 465  const I286OPSFTE8CL sft_e8cl_table[] = {
   
 // ------------------------------------------------------------------------  // ------------------------------------------------------------------------
   
 I286_SFT _rol_r16_cl(WORD *p, BYTE cl) {  I286_SFT _rol_r16_cl(UINT16 *p, REG8 cl) {
   
         DWORD   src, dst;          UINT32  src;
           UINT32  dst;
   
         src = *p;          src = *p;
         WORD_ROLCL(dst, src, cl)          WORD_ROLCL(dst, src, cl)
         *p = (WORD)dst;          *p = (UINT16)dst;
 }  }
   
 I286_SFT _ror_r16_cl(WORD *p, BYTE cl) {  I286_SFT _ror_r16_cl(UINT16 *p, REG8 cl) {
   
         DWORD   src, dst;          UINT32  src;
           UINT32  dst;
   
         src = *p;          src = *p;
         WORD_RORCL(dst, src, cl)          WORD_RORCL(dst, src, cl)
         *p = (WORD)dst;          *p = (UINT16)dst;
 }  }
   
 I286_SFT _rcl_r16_cl(WORD *p, BYTE cl) {  I286_SFT _rcl_r16_cl(UINT16 *p, REG8 cl) {
   
         DWORD   src, dst;          UINT32  src;
           UINT32  dst;
   
         src = *p;          src = *p;
         WORD_RCLCL(dst, src, cl)          WORD_RCLCL(dst, src, cl)
         *p = (WORD)dst;          *p = (UINT16)dst;
 }  }
   
 I286_SFT _rcr_r16_cl(WORD *p, BYTE cl) {  I286_SFT _rcr_r16_cl(UINT16 *p, REG8 cl) {
   
         DWORD   src, dst;          UINT32  src;
           UINT32  dst;
   
         src = *p;          src = *p;
         WORD_RCRCL(dst, src, cl)          WORD_RCRCL(dst, src, cl)
         *p = (WORD)dst;          *p = (UINT16)dst;
 }  }
   
 I286_SFT _shl_r16_cl(WORD *p, BYTE cl) {  I286_SFT _shl_r16_cl(UINT16 *p, REG8 cl) {
   
         DWORD   src, dst;          UINT32  src;
           UINT32  dst;
   
         src = *p;          src = *p;
         WORD_SHLCL(dst, src, cl)          WORD_SHLCL(dst, src, cl)
         *p = (WORD)dst;          *p = (UINT16)dst;
 }  }
   
 I286_SFT _shr_r16_cl(WORD *p, BYTE cl) {  I286_SFT _shr_r16_cl(UINT16 *p, REG8 cl) {
   
         DWORD   src, dst;          UINT32  src;
           UINT32  dst;
   
         src = *p;          src = *p;
         WORD_SHRCL(dst, src, cl)          WORD_SHRCL(dst, src, cl)
         *p = (WORD)dst;          *p = (UINT16)dst;
 }  }
   
 I286_SFT _sar_r16_cl(WORD *p, BYTE cl) {  I286_SFT _sar_r16_cl(UINT16 *p, REG8 cl) {
   
         DWORD   src, dst;          UINT32  src;
           UINT32  dst;
   
         src = *p;          src = *p;
         WORD_SARCL(dst, src, cl)          WORD_SARCL(dst, src, cl)
         *p = (WORD)dst;          *p = (UINT16)dst;
 }  }
   
   
 I286_SFT _rol_e16_cl(DWORD madr, BYTE cl) {  I286_SFT _rol_e16_cl(UINT32 madr, REG8 cl) {
   
         DWORD   src, dst;          UINT32  src;
           UINT32  dst;
   
         src = i286_memoryread_w(madr);          src = i286_memoryread_w(madr);
         WORD_ROLCL(dst, src, cl)          WORD_ROLCL(dst, src, cl)
         i286_memorywrite_w(madr, (WORD)dst);          i286_memorywrite_w(madr, (REG16)dst);
 }  }
   
 I286_SFT _ror_e16_cl(DWORD madr, BYTE cl) {  I286_SFT _ror_e16_cl(UINT32 madr, REG8 cl) {
   
         DWORD   src, dst;          UINT32  src;
           UINT32  dst;
   
         src = i286_memoryread_w(madr);          src = i286_memoryread_w(madr);
         WORD_RORCL(dst, src, cl)          WORD_RORCL(dst, src, cl)
         i286_memorywrite_w(madr, (WORD)dst);          i286_memorywrite_w(madr, (REG16)dst);
 }  }
   
 I286_SFT _rcl_e16_cl(DWORD madr, BYTE cl) {  I286_SFT _rcl_e16_cl(UINT32 madr, REG8 cl) {
   
         DWORD   src, dst;          UINT32  src;
           UINT32  dst;
   
         src = i286_memoryread_w(madr);          src = i286_memoryread_w(madr);
         WORD_RCLCL(dst, src, cl)          WORD_RCLCL(dst, src, cl)
         i286_memorywrite_w(madr, (WORD)dst);          i286_memorywrite_w(madr, (REG16)dst);
 }  }
   
 I286_SFT _rcr_e16_cl(DWORD madr, BYTE cl) {  I286_SFT _rcr_e16_cl(UINT32 madr, REG8 cl) {
   
         DWORD   src, dst;          UINT32  src;
           UINT32  dst;
   
         src = i286_memoryread_w(madr);          src = i286_memoryread_w(madr);
         WORD_RCRCL(dst, src, cl)          WORD_RCRCL(dst, src, cl)
         i286_memorywrite_w(madr, (WORD)dst);          i286_memorywrite_w(madr, (REG16)dst);
 }  }
   
 I286_SFT _shl_e16_cl(DWORD madr, BYTE cl) {  I286_SFT _shl_e16_cl(UINT32 madr, REG8 cl) {
   
         DWORD   src, dst;          UINT32  src;
           UINT32  dst;
   
         src = i286_memoryread_w(madr);          src = i286_memoryread_w(madr);
         WORD_SHLCL(dst, src, cl)          WORD_SHLCL(dst, src, cl)
         i286_memorywrite_w(madr, (WORD)dst);          i286_memorywrite_w(madr, (REG16)dst);
 }  }
   
 I286_SFT _shr_e16_cl(DWORD madr, BYTE cl) {  I286_SFT _shr_e16_cl(UINT32 madr, REG8 cl) {
   
         DWORD   src, dst;          UINT32  src;
           UINT32  dst;
   
         src = i286_memoryread_w(madr);          src = i286_memoryread_w(madr);
         WORD_SHRCL(dst, src, cl)          WORD_SHRCL(dst, src, cl)
         i286_memorywrite_w(madr, (WORD)dst);          i286_memorywrite_w(madr, (REG16)dst);
 }  }
   
 I286_SFT _sar_e16_cl(DWORD madr, BYTE cl) {  I286_SFT _sar_e16_cl(UINT32 madr, REG8 cl) {
   
         DWORD   src, dst;          UINT32  src;
           UINT32  dst;
   
         src = i286_memoryread_w(madr);          src = i286_memoryread_w(madr);
         WORD_SARCL(dst, src, cl)          WORD_SARCL(dst, src, cl)
         i286_memorywrite_w(madr, (WORD)dst);          i286_memorywrite_w(madr, (REG16)dst);
 }  }
   
   
Line 553  const I286OPSFTR16CL sft_r16cl_table[] = Line 614  const I286OPSFTR16CL sft_r16cl_table[] =
 const I286OPSFTE16CL sft_e16cl_table[] = {  const I286OPSFTE16CL sft_e16cl_table[] = {
                 _rol_e16_cl,    _ror_e16_cl,    _rcl_e16_cl,    _rcr_e16_cl,                  _rol_e16_cl,    _ror_e16_cl,    _rcl_e16_cl,    _rcr_e16_cl,
                 _shl_e16_cl,    _shr_e16_cl,    _shl_e16_cl,    _sar_e16_cl};                  _shl_e16_cl,    _shr_e16_cl,    _shl_e16_cl,    _sar_e16_cl};
   

Removed from v.1.1  
changed lines
  Added in v.1.7


RetroPC.NET-CVS <cvs@retropc.net>