Diff for /np2/i286c/v30patch.c between versions 1.1 and 1.4

version 1.1, 2003/10/26 07:50:36 version 1.4, 2003/11/28 08:01:32
Line 174  I286FN v30mov_seg_ea(void) {    // 8E: m Line 174  I286FN v30mov_seg_ea(void) {    // 8E: m
         GET_PCBYTE(op);          GET_PCBYTE(op);
         if (op >= 0xc0) {          if (op >= 0xc0) {
                 I286_WORKCLOCK(2);                  I286_WORKCLOCK(2);
                 tmp = *(reg16_b20[op]);                  tmp = *(REG16_B20(op));
         }          }
         else {          else {
                 I286_WORKCLOCK(5);                  I286_WORKCLOCK(5);
                 tmp = i286_memoryread_w(c_calc_ea_dst[op]());                  tmp = i286_memoryread_w(CALC_EA(op));
         }          }
         switch(op & 0x18) {          switch(op & 0x18) {
                 case 0x00:                      // es                  case 0x00:                      // es
Line 232  I286FN v30shift_ea8_data8(void) {   // C Line 232  I286FN v30shift_ea8_data8(void) {   // C
         GET_PCBYTE(op)          GET_PCBYTE(op)
         if (op >= 0xc0) {          if (op >= 0xc0) {
                 I286_WORKCLOCK(5);                  I286_WORKCLOCK(5);
                 out = reg8_b20[op];                  out = REG8_B20(op);
         }          }
         else {          else {
                 I286_WORKCLOCK(8);                  I286_WORKCLOCK(8);
                 madr = c_calc_ea_dst[op]();                  madr = CALC_EA(op);
                 if (madr >= I286_MEMWRITEMAX) {                  if (madr >= I286_MEMWRITEMAX) {
                         GET_PCBYTE(cl)                          GET_PCBYTE(cl)
                         if ((op & 0x30) == 0x10) {              // rotate with carry                          if ((op & 0x30) == 0x10) {              // rotate with carry
Line 272  I286FN v30shift_ea16_data8(void) {   //  Line 272  I286FN v30shift_ea16_data8(void) {   // 
         GET_PCBYTE(op)          GET_PCBYTE(op)
         if (op >= 0xc0) {          if (op >= 0xc0) {
                 I286_WORKCLOCK(5);                  I286_WORKCLOCK(5);
                 out = reg16_b20[op];                  out = REG16_B20(op);
         }          }
         else {          else {
                 I286_WORKCLOCK(8);                  I286_WORKCLOCK(8);
                 madr = c_calc_ea_dst[op]();                  madr = CALC_EA(op);
                 if (INHIBIT_WORDP(madr)) {                  if (INHIBIT_WORDP(madr)) {
                         GET_PCBYTE(cl);                          GET_PCBYTE(cl);
                         if ((op & 0x30) == 0x10) {              // rotate with carry                          if ((op & 0x30) == 0x10) {              // rotate with carry
Line 312  I286FN v30shift_ea8_cl(void) {    // D2: Line 312  I286FN v30shift_ea8_cl(void) {    // D2:
         GET_PCBYTE(op)          GET_PCBYTE(op)
         if (op >= 0xc0) {          if (op >= 0xc0) {
                 I286_WORKCLOCK(5);                  I286_WORKCLOCK(5);
                 out = reg8_b20[op];                  out = REG8_B20(op);
         }          }
         else {          else {
                 I286_WORKCLOCK(8);                  I286_WORKCLOCK(8);
                 madr = c_calc_ea_dst[op]();                  madr = CALC_EA(op);
                 if (madr >= I286_MEMWRITEMAX) {                  if (madr >= I286_MEMWRITEMAX) {
                         cl = I286_CL;                          cl = I286_CL;
                         I286_WORKCLOCK(cl);                          I286_WORKCLOCK(cl);
Line 352  I286FN v30shift_ea16_cl(void) {    // D3 Line 352  I286FN v30shift_ea16_cl(void) {    // D3
         GET_PCBYTE(op)          GET_PCBYTE(op)
         if (op >= 0xc0) {          if (op >= 0xc0) {
                 I286_WORKCLOCK(5);                  I286_WORKCLOCK(5);
                 out = reg16_b20[op];                  out = REG16_B20(op);
         }          }
         else {          else {
                 I286_WORKCLOCK(8);                  I286_WORKCLOCK(8);
                 madr = c_calc_ea_dst[op]();                  madr = CALC_EA(op);
                 if (INHIBIT_WORDP(madr)) {                  if (INHIBIT_WORDP(madr)) {
                         cl = I286_CL;                          cl = I286_CL;
                         I286_WORKCLOCK(cl);                          I286_WORKCLOCK(cl);
Line 402  I286FN v30_aad(void) {      // D5: AAD Line 402  I286FN v30_aad(void) {      // D5: AAD
         I286_AL += (BYTE)(I286_AH * 10);          I286_AL += (BYTE)(I286_AH * 10);
         I286_AH = 0;          I286_AH = 0;
         I286_FLAGL &= ~(S_FLAG | Z_FLAG | P_FLAG);          I286_FLAGL &= ~(S_FLAG | Z_FLAG | P_FLAG);
         I286_FLAGL |= szpcflag[I286_AL];          I286_FLAGL |= BYTESZPF(I286_AL);
 }  }
   
 I286FN v30_xlat(void) {                                         // D6:  xlat  I286FN v30_xlat(void) {                                         // D6:  xlat
   
         I286_WORKCLOCK(5);          I286_WORKCLOCK(5);
         I286_AL = i286_memoryread(((I286_AL + I286_BX) & 0xffff) + DS_FIX);          I286_AL = i286_memoryread(LOW16(I286_AL + I286_BX) + DS_FIX);
 }  }
   
 I286FN v30_repne(void) {                                        // F2:  repne  I286FN v30_repne(void) {                                        // F2:  repne

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


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