Diff for /np2/i286c/i286c_mn.c between versions 1.14 and 1.15

version 1.14, 2003/11/29 00:36:00 version 1.15, 2003/11/29 03:38:26
Line 176  I286FN _or_ea_r8(void) {      // 08: or  Line 176  I286FN _or_ea_r8(void) {      // 08: or 
                 }                  }
                 out = mem + madr;                  out = mem + madr;
         }          }
         ORBYTE(*out, src);          dst = *out;
           ORBYTE(dst, src);
           *out = (BYTE)dst;
 }  }
   
 I286FN _or_ea_r16(void) {                                                       // 09: or EA, REG16  I286FN _or_ea_r16(void) {                                                       // 09: or EA, REG16
Line 203  I286FN _or_ea_r16(void) {       // 09: o Line 205  I286FN _or_ea_r16(void) {       // 09: o
                 }                  }
                 out = (UINT16 *)(mem + madr);                  out = (UINT16 *)(mem + madr);
         }          }
         ORWORD(*out, src);          dst = *out;
           ORWORD(dst, src);
           *out = (UINT16)dst;
 }  }
   
 I286FN _or_r8_ea(void) {                                                // 0a: or REG8, EA  I286FN _or_r8_ea(void) {                                                // 0a: or REG8, EA
Line 211  I286FN _or_r8_ea(void) {      // 0a: or  Line 215  I286FN _or_r8_ea(void) {      // 0a: or 
         BYTE    *out;          BYTE    *out;
         UINT    op;          UINT    op;
         UINT    src;          UINT    src;
           UINT    dst;
   
         PREPART_REG8_EA(op, src, out, 2, 7);          PREPART_REG8_EA(op, src, out, 2, 7);
         ORBYTE(*out, src);          dst = *out;
           ORBYTE(dst, src);
           *out = (BYTE)dst;
 }  }
   
 I286FN _or_r16_ea(void) {                                               // 0b: or REG16, EA  I286FN _or_r16_ea(void) {                                               // 0b: or REG16, EA
Line 221  I286FN _or_r16_ea(void) {      // 0b: or Line 228  I286FN _or_r16_ea(void) {      // 0b: or
         UINT16  *out;          UINT16  *out;
         UINT    op;          UINT    op;
         UINT32  src;          UINT32  src;
           UINT32  dst;
   
         PREPART_REG16_EA(op, src, out, 2, 7);          PREPART_REG16_EA(op, src, out, 2, 7);
         ORWORD(*out, src);          dst = *out;
           ORWORD(dst, src);
           *out = (UINT16)dst;
 }  }
   
 I286FN _or_al_data8(void) {                                             // 0c: or al, DATA8  I286FN _or_al_data8(void) {                                             // 0c: or al, DATA8
   
         UINT    src;          UINT    src;
           UINT    dst;
   
         I286_WORKCLOCK(3);          I286_WORKCLOCK(3);
         GET_PCBYTE(src);          GET_PCBYTE(src);
         ORBYTE(I286_AL, src);          dst = I286_AL;
           ORBYTE(dst, src);
           I286_AL = (BYTE)dst;
 }  }
   
 I286FN _or_ax_data16(void) {                                    // 0d: or ax, DATA16  I286FN _or_ax_data16(void) {                                    // 0d: or ax, DATA16
   
         UINT32  src;          UINT32  src;
           UINT32  dst;
   
         I286_WORKCLOCK(3);          I286_WORKCLOCK(3);
         GET_PCWORD(src);          GET_PCWORD(src);
         ORWORD(I286_AX, src);          dst = I286_AX;
           ORWORD(dst, src);
           I286_AX = (UINT16)dst;
 }  }
   
 I286FN _push_cs(void) {                                                 // 0e: push cs  I286FN _push_cs(void) {                                                 // 0e: push cs
Line 518  I286FN _and_ea_r8(void) {      // 20: an Line 534  I286FN _and_ea_r8(void) {      // 20: an
                 }                  }
                 out = mem + madr;                  out = mem + madr;
         }          }
         ANDBYTE(*out, src);          dst = *out;
           ANDBYTE(dst, src);
           *out = (BYTE)dst;
 }  }
   
 I286FN _and_ea_r16(void) {                                              // 21: and EA, REG16  I286FN _and_ea_r16(void) {                                              // 21: and EA, REG16
Line 545  I286FN _and_ea_r16(void) {      // 21: a Line 563  I286FN _and_ea_r16(void) {      // 21: a
                 }                  }
                 out = (UINT16 *)(mem + madr);                  out = (UINT16 *)(mem + madr);
         }          }
         ANDWORD(*out, src);          dst = *out;
           ANDWORD(dst, src);
           *out = (UINT16)dst;
 }  }
   
 I286FN _and_r8_ea(void) {                                               // 22: and REG8, EA  I286FN _and_r8_ea(void) {                                               // 22: and REG8, EA
Line 553  I286FN _and_r8_ea(void) {      // 22: an Line 573  I286FN _and_r8_ea(void) {      // 22: an
         BYTE    *out;          BYTE    *out;
         UINT    op;          UINT    op;
         UINT    src;          UINT    src;
           UINT    dst;
   
         PREPART_REG8_EA(op, src, out, 2, 7);          PREPART_REG8_EA(op, src, out, 2, 7);
         ANDBYTE(*out, src);          dst = *out;
           ANDBYTE(dst, src);
           *out = (BYTE)dst;
 }  }
   
 I286FN _and_r16_ea(void) {                                              // 23: and REG16, EA  I286FN _and_r16_ea(void) {                                              // 23: and REG16, EA
Line 563  I286FN _and_r16_ea(void) {      // 23: a Line 586  I286FN _and_r16_ea(void) {      // 23: a
         UINT16  *out;          UINT16  *out;
         UINT    op;          UINT    op;
         UINT32  src;          UINT32  src;
           UINT32  dst;
   
         PREPART_REG16_EA(op, src, out, 2, 7);          PREPART_REG16_EA(op, src, out, 2, 7);
         ANDWORD(*out, src);          dst = *out;
           ANDWORD(dst, src);
           *out = (UINT16)dst;
 }  }
   
 I286FN _and_al_data8(void) {                                    // 24: and al, DATA8  I286FN _and_al_data8(void) {                                    // 24: and al, DATA8
   
         UINT    src;          UINT    src;
           UINT    dst;
   
         I286_WORKCLOCK(3);          I286_WORKCLOCK(3);
         GET_PCBYTE(src);          GET_PCBYTE(src);
         ANDBYTE(I286_AL, src);          dst = I286_AL;
           ANDBYTE(dst, src);
           I286_AL = (BYTE)dst;
 }  }
   
 I286FN _and_ax_data16(void) {                                   // 25: and ax, DATA16  I286FN _and_ax_data16(void) {                                   // 25: and ax, DATA16
   
         UINT32  src;          UINT32  src;
           UINT32  dst;
   
         I286_WORKCLOCK(3);          I286_WORKCLOCK(3);
         GET_PCWORD(src);          GET_PCWORD(src);
         ANDWORD(I286_AX, src);          dst = I286_AX;
           ANDWORD(dst, src);
           I286_AX = (UINT16)dst;
 }  }
   
 I286FN _segprefix_es(void) {                                    // 26: es:  I286FN _segprefix_es(void) {                                    // 26: es:
Line 641  I286FN _sub_ea_r8(void) {      // 28: su Line 673  I286FN _sub_ea_r8(void) {      // 28: su
                 madr = CALC_EA(op);                  madr = CALC_EA(op);
                 if (madr >= I286_MEMWRITEMAX) {                  if (madr >= I286_MEMWRITEMAX) {
                         dst = i286_memoryread(madr);                          dst = i286_memoryread(madr);
                         BYTE_SUB(res, dst, src);                          SUBBYTE(res, dst, src);
                         i286_memorywrite(madr, (REG8)res);                          i286_memorywrite(madr, (REG8)res);
                         return;                          return;
                 }                  }
                 out = mem + madr;                  out = mem + madr;
         }          }
         dst = *out;          dst = *out;
         BYTE_SUB(res, dst, src);          SUBBYTE(res, dst, src);
         *out = (BYTE)res;          *out = (BYTE)res;
 }  }
   
Line 671  I286FN _sub_ea_r16(void) {      // 29: s Line 703  I286FN _sub_ea_r16(void) {      // 29: s
                 madr = CALC_EA(op);                  madr = CALC_EA(op);
                 if (INHIBIT_WORDP(madr)) {                  if (INHIBIT_WORDP(madr)) {
                         dst = i286_memoryread_w(madr);                          dst = i286_memoryread_w(madr);
                         WORD_SUB(res, dst, src);                          SUBWORD(res, dst, src);
                         i286_memorywrite_w(madr, (REG16)res);                          i286_memorywrite_w(madr, (REG16)res);
                         return;                          return;
                 }                  }
                 out = (UINT16 *)(mem + madr);                  out = (UINT16 *)(mem + madr);
         }          }
         dst = *out;          dst = *out;
         WORD_SUB(res, dst, src);          SUBWORD(res, dst, src);
         *out = (UINT16)res;          *out = (UINT16)res;
 }  }
   
Line 692  I286FN _sub_r8_ea(void) {      // 2a: su Line 724  I286FN _sub_r8_ea(void) {      // 2a: su
   
         PREPART_REG8_EA(op, src, out, 2, 7);          PREPART_REG8_EA(op, src, out, 2, 7);
         dst = *out;          dst = *out;
         BYTE_SUB(res, dst, src);          SUBBYTE(res, dst, src);
         *out = (BYTE)res;          *out = (BYTE)res;
 }  }
   
Line 706  I286FN _sub_r16_ea(void) {      // 2b: s Line 738  I286FN _sub_r16_ea(void) {      // 2b: s
   
         PREPART_REG16_EA(op, src, out, 2, 7);          PREPART_REG16_EA(op, src, out, 2, 7);
         dst = *out;          dst = *out;
         WORD_SUB(res, dst, src);          SUBWORD(res, dst, src);
         *out = (UINT16)res;          *out = (UINT16)res;
 }  }
   
Line 717  I286FN _sub_al_data8(void) {     // 2c:  Line 749  I286FN _sub_al_data8(void) {     // 2c: 
   
         I286_WORKCLOCK(3);          I286_WORKCLOCK(3);
         GET_PCBYTE(src);          GET_PCBYTE(src);
         BYTE_SUB(res, I286_AL, src);          SUBBYTE(res, I286_AL, src);
         I286_AL = (BYTE)res;          I286_AL = (BYTE)res;
 }  }
   
Line 728  I286FN _sub_ax_data16(void) {     // 2d: Line 760  I286FN _sub_ax_data16(void) {     // 2d:
   
         I286_WORKCLOCK(3);          I286_WORKCLOCK(3);
         GET_PCWORD(src);          GET_PCWORD(src);
         WORD_SUB(res, I286_AX, src);          SUBWORD(res, I286_AX, src);
         I286_AX = (UINT16)res;          I286_AX = (UINT16)res;
 }  }
   
Line 783  I286FN _xor_ea_r8(void) {      // 30: xo Line 815  I286FN _xor_ea_r8(void) {      // 30: xo
                 madr = CALC_EA(op);                  madr = CALC_EA(op);
                 if (madr >= I286_MEMWRITEMAX) {                  if (madr >= I286_MEMWRITEMAX) {
                         dst = i286_memoryread(madr);                          dst = i286_memoryread(madr);
                         BYTE_XOR(dst, src);                          XORBYTE(dst, src);
                         i286_memorywrite(madr, (REG8)dst);                          i286_memorywrite(madr, (REG8)dst);
                         return;                          return;
                 }                  }
                 out = mem + madr;                  out = mem + madr;
         }          }
         BYTE_XOR(*out, src);          dst = *out;
           XORBYTE(dst, src);
           *out = (BYTE)dst;
 }  }
   
 I286FN _xor_ea_r16(void) {                                              // 31: xor EA, REG16  I286FN _xor_ea_r16(void) {                                              // 31: xor EA, REG16
Line 810  I286FN _xor_ea_r16(void) {      // 31: x Line 844  I286FN _xor_ea_r16(void) {      // 31: x
                 madr = CALC_EA(op);                  madr = CALC_EA(op);
                 if (INHIBIT_WORDP(madr)) {                  if (INHIBIT_WORDP(madr)) {
                         dst = i286_memoryread_w(madr);                          dst = i286_memoryread_w(madr);
                         WORD_XOR(dst, src);                          XORWORD(dst, src);
                         i286_memorywrite_w(madr, (REG16)dst);                          i286_memorywrite_w(madr, (REG16)dst);
                         return;                          return;
                 }                  }
                 out = (UINT16 *)(mem + madr);                  out = (UINT16 *)(mem + madr);
         }          }
         WORD_XOR(*out, src);          dst = *out;
           XORWORD(dst, src);
           *out = (UINT16)dst;
 }  }
   
 I286FN _xor_r8_ea(void) {                                               // 32: xor REG8, EA  I286FN _xor_r8_ea(void) {                                               // 32: xor REG8, EA
Line 824  I286FN _xor_r8_ea(void) {      // 32: xo Line 860  I286FN _xor_r8_ea(void) {      // 32: xo
         BYTE    *out;          BYTE    *out;
         UINT    op;          UINT    op;
         UINT    src;          UINT    src;
           UINT    dst;
   
         PREPART_REG8_EA(op, src, out, 2, 7);          PREPART_REG8_EA(op, src, out, 2, 7);
         BYTE_XOR(*out, src);          dst = *out;
           XORBYTE(dst, src);
           *out = (BYTE)dst;
 }  }
   
 I286FN _xor_r16_ea(void) {                                              // 33: or REG16, EA  I286FN _xor_r16_ea(void) {                                              // 33: or REG16, EA
Line 834  I286FN _xor_r16_ea(void) {      // 33: o Line 873  I286FN _xor_r16_ea(void) {      // 33: o
         UINT16  *out;          UINT16  *out;
         UINT    op;          UINT    op;
         UINT32  src;          UINT32  src;
           UINT32  dst;
   
         PREPART_REG16_EA(op, src, out, 2, 7);          PREPART_REG16_EA(op, src, out, 2, 7);
         WORD_XOR(*out, src);          dst = *out;
           XORWORD(dst, src);
           *out = (UINT16)dst;
 }  }
   
 I286FN _xor_al_data8(void) {                                    // 34: or al, DATA8  I286FN _xor_al_data8(void) {                                    // 34: or al, DATA8
   
         UINT    src;          UINT    src;
           UINT    dst;
   
         I286_WORKCLOCK(3);          I286_WORKCLOCK(3);
         GET_PCBYTE(src);          GET_PCBYTE(src);
         BYTE_XOR(I286_AL, src);          dst = I286_AL;
           XORBYTE(dst, src);
           I286_AL = (BYTE)dst;
 }  }
   
 I286FN _xor_ax_data16(void) {                                   // 35: or ax, DATA16  I286FN _xor_ax_data16(void) {                                   // 35: or ax, DATA16
   
         UINT32  src;          UINT32  src;
           UINT32  dst;
   
         I286_WORKCLOCK(3);          I286_WORKCLOCK(3);
         GET_PCWORD(src);          GET_PCWORD(src);
         WORD_XOR(I286_AX, src);          dst = I286_AX;
           XORWORD(dst, src);
           I286_AX = (UINT16)dst;
 }  }
   
 I286FN _segprefix_ss(void) {                                    // 36: ss:  I286FN _segprefix_ss(void) {                                    // 36: ss:
Line 898  I286FN _cmp_ea_r8(void) {      // 38: cm Line 946  I286FN _cmp_ea_r8(void) {      // 38: cm
         if (op >= 0xc0) {          if (op >= 0xc0) {
                 I286_WORKCLOCK(2);                  I286_WORKCLOCK(2);
                 dst = *(REG8_B20(op));                  dst = *(REG8_B20(op));
                 BYTE_SUB(res, dst, src);                  SUBBYTE(res, dst, src);
         }          }
         else {          else {
                 I286_WORKCLOCK(7);                  I286_WORKCLOCK(7);
                 dst = i286_memoryread(CALC_EA(op));                  dst = i286_memoryread(CALC_EA(op));
                 BYTE_SUB(res, dst, src);                  SUBBYTE(res, dst, src);
         }          }
 }  }
   
Line 918  I286FN _cmp_ea_r16(void) {      // 39: c Line 966  I286FN _cmp_ea_r16(void) {      // 39: c
         if (op >= 0xc0) {          if (op >= 0xc0) {
                 I286_WORKCLOCK(2);                  I286_WORKCLOCK(2);
                 dst = *(REG16_B20(op));                  dst = *(REG16_B20(op));
                 WORD_SUB(res, dst, src);                  SUBWORD(res, dst, src);
         }          }
         else {          else {
                 I286_WORKCLOCK(7);                  I286_WORKCLOCK(7);
                 dst = i286_memoryread_w(CALC_EA(op));                  dst = i286_memoryread_w(CALC_EA(op));
                 WORD_SUB(res, dst, src);                  SUBWORD(res, dst, src);
         }          }
 }  }
   
Line 937  I286FN _cmp_r8_ea(void) {      // 3a: cm Line 985  I286FN _cmp_r8_ea(void) {      // 3a: cm
   
         PREPART_REG8_EA(op, src, out, 2, 6);          PREPART_REG8_EA(op, src, out, 2, 6);
         dst = *out;          dst = *out;
         BYTE_SUB(res, dst, src);          SUBBYTE(res, dst, src);
 }  }
   
 I286FN _cmp_r16_ea(void) {                                              // 3b: cmp REG16, EA  I286FN _cmp_r16_ea(void) {                                              // 3b: cmp REG16, EA
Line 950  I286FN _cmp_r16_ea(void) {      // 3b: c Line 998  I286FN _cmp_r16_ea(void) {      // 3b: c
   
         PREPART_REG16_EA(op, src, out, 2, 6);          PREPART_REG16_EA(op, src, out, 2, 6);
         dst = *out;          dst = *out;
         WORD_SUB(res, dst, src);          SUBWORD(res, dst, src);
 }  }
   
 I286FN _cmp_al_data8(void) {                                    // 3c: cmp al, DATA8  I286FN _cmp_al_data8(void) {                                    // 3c: cmp al, DATA8
Line 960  I286FN _cmp_al_data8(void) {     // 3c:  Line 1008  I286FN _cmp_al_data8(void) {     // 3c: 
   
         I286_WORKCLOCK(3);          I286_WORKCLOCK(3);
         GET_PCBYTE(src);          GET_PCBYTE(src);
         BYTE_SUB(res, I286_AL, src);          SUBBYTE(res, I286_AL, src);
 }  }
   
 I286FN _cmp_ax_data16(void) {                                   // 3d: cmp ax, DATA16  I286FN _cmp_ax_data16(void) {                                   // 3d: cmp ax, DATA16
Line 970  I286FN _cmp_ax_data16(void) {     // 3d: Line 1018  I286FN _cmp_ax_data16(void) {     // 3d:
   
         I286_WORKCLOCK(3);          I286_WORKCLOCK(3);
         GET_PCWORD(src);          GET_PCWORD(src);
         WORD_SUB(res, I286_AX, src);          SUBWORD(res, I286_AX, src);
 }  }
   
 I286FN _segprefix_ds(void) {                                    // 3e: ds:  I286FN _segprefix_ds(void) {                                    // 3e: ds:
Line 1003  I286FN _aas(void) {        // 3f: aas Line 1051  I286FN _aas(void) {        // 3f: aas
         }          }
 }  }
   
 I286FN _inc_ax(void) INCWORD(I286_AX, 2)        // 40:  inc             ax  I286FN _inc_ax(void) INCWORD2(I286_AX, 2)       // 40:  inc             ax
 I286FN _inc_cx(void) INCWORD(I286_CX, 2)        // 41:  inc             cx  I286FN _inc_cx(void) INCWORD2(I286_CX, 2)       // 41:  inc             cx
 I286FN _inc_dx(void) INCWORD(I286_DX, 2)        // 42:  inc             dx  I286FN _inc_dx(void) INCWORD2(I286_DX, 2)       // 42:  inc             dx
 I286FN _inc_bx(void) INCWORD(I286_BX, 2)        // 43:  inc             bx  I286FN _inc_bx(void) INCWORD2(I286_BX, 2)       // 43:  inc             bx
 I286FN _inc_sp(void) INCWORD(I286_SP, 2)        // 44:  inc             sp  I286FN _inc_sp(void) INCWORD2(I286_SP, 2)       // 44:  inc             sp
 I286FN _inc_bp(void) INCWORD(I286_BP, 2)        // 45:  inc             bp  I286FN _inc_bp(void) INCWORD2(I286_BP, 2)       // 45:  inc             bp
 I286FN _inc_si(void) INCWORD(I286_SI, 2)        // 46:  inc             si  I286FN _inc_si(void) INCWORD2(I286_SI, 2)       // 46:  inc             si
 I286FN _inc_di(void) INCWORD(I286_DI, 2)        // 47:  inc             di  I286FN _inc_di(void) INCWORD2(I286_DI, 2)       // 47:  inc             di
 I286FN _dec_ax(void) DECWORD(I286_AX, 2)        // 48:  dec             ax  I286FN _dec_ax(void) DECWORD2(I286_AX, 2)       // 48:  dec             ax
 I286FN _dec_cx(void) DECWORD(I286_CX, 2)        // 49:  dec             cx  I286FN _dec_cx(void) DECWORD2(I286_CX, 2)       // 49:  dec             cx
 I286FN _dec_dx(void) DECWORD(I286_DX, 2)        // 4a:  dec             dx  I286FN _dec_dx(void) DECWORD2(I286_DX, 2)       // 4a:  dec             dx
 I286FN _dec_bx(void) DECWORD(I286_BX, 2)        // 4b:  dec             bx  I286FN _dec_bx(void) DECWORD2(I286_BX, 2)       // 4b:  dec             bx
 I286FN _dec_sp(void) DECWORD(I286_SP, 2)        // 4c:  dec             sp  I286FN _dec_sp(void) DECWORD2(I286_SP, 2)       // 4c:  dec             sp
 I286FN _dec_bp(void) DECWORD(I286_BP, 2)        // 4d:  dec             bp  I286FN _dec_bp(void) DECWORD2(I286_BP, 2)       // 4d:  dec             bp
 I286FN _dec_si(void) DECWORD(I286_SI, 2)        // 4e:  dec             si  I286FN _dec_si(void) DECWORD2(I286_SI, 2)       // 4e:  dec             si
 I286FN _dec_di(void) DECWORD(I286_DI, 2)        // 4f:  dec             di  I286FN _dec_di(void) DECWORD2(I286_DI, 2)       // 4f:  dec             di
   
 I286FN _push_ax(void) REGPUSH(I286_AX, 3)       // 50:  push    ax  I286FN _push_ax(void) REGPUSH(I286_AX, 3)       // 50:  push    ax
 I286FN _push_cx(void) REGPUSH(I286_CX, 3)       // 51:  push    cx  I286FN _push_cx(void) REGPUSH(I286_CX, 3)       // 51:  push    cx
Line 1782  I286FN _cmpsb(void) {      // A6: cmpsb Line 1830  I286FN _cmpsb(void) {      // A6: cmpsb
         I286_WORKCLOCK(8);          I286_WORKCLOCK(8);
         dst = i286_memoryread(I286_SI + DS_FIX);          dst = i286_memoryread(I286_SI + DS_FIX);
         src = i286_memoryread(I286_DI + ES_BASE);          src = i286_memoryread(I286_DI + ES_BASE);
         BYTE_SUB(res, dst, src)          SUBBYTE(res, dst, src)
         I286_SI += STRING_DIR;          I286_SI += STRING_DIR;
         I286_DI += STRING_DIR;          I286_DI += STRING_DIR;
 }  }
Line 1796  I286FN _cmpsw(void) {      // A7: cmpsw Line 1844  I286FN _cmpsw(void) {      // A7: cmpsw
         I286_WORKCLOCK(8);          I286_WORKCLOCK(8);
         dst = i286_memoryread_w(I286_SI + DS_FIX);          dst = i286_memoryread_w(I286_SI + DS_FIX);
         src = i286_memoryread_w(I286_DI + ES_BASE);          src = i286_memoryread_w(I286_DI + ES_BASE);
         WORD_SUB(res, dst, src)          SUBWORD(res, dst, src)
         I286_SI += STRING_DIRx2;          I286_SI += STRING_DIRx2;
         I286_DI += STRING_DIRx2;          I286_DI += STRING_DIRx2;
 }  }
Line 1860  I286FN _scasb(void) {      // AE: scasb Line 1908  I286FN _scasb(void) {      // AE: scasb
         I286_WORKCLOCK(7);          I286_WORKCLOCK(7);
         src = i286_memoryread(I286_DI + ES_BASE);          src = i286_memoryread(I286_DI + ES_BASE);
         dst = I286_AL;          dst = I286_AL;
         BYTE_SUB(res, dst, src)          SUBBYTE(res, dst, src)
         I286_DI += STRING_DIR;          I286_DI += STRING_DIR;
 }  }
   
Line 1873  I286FN _scasw(void) {      // AF: scasw Line 1921  I286FN _scasw(void) {      // AF: scasw
         I286_WORKCLOCK(7);          I286_WORKCLOCK(7);
         src = i286_memoryread_w(I286_DI + ES_BASE);          src = i286_memoryread_w(I286_DI + ES_BASE);
         dst = I286_AX;          dst = I286_AX;
         WORD_SUB(res, dst, src)          SUBWORD(res, dst, src)
         I286_DI += STRING_DIRx2;          I286_DI += STRING_DIRx2;
 }  }
   

Removed from v.1.14  
changed lines
  Added in v.1.15


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