Diff for /np2/i286c/i286c.mcr between versions 1.11 and 1.13

version 1.11, 2003/11/30 11:20:55 version 1.13, 2003/11/30 12:38:15
Line 6 Line 6
 #endif  #endif
   
 #define __CBW(src)              (UINT16)((char)(src))  #define __CBW(src)              (UINT16)((char)(src))
 #define __CBD(src)              ((char)(src))  #define __CBD(src)              ((SINT8)(src))
 #define WORD2LONG(src)  ((short)(src))  #define WORD2LONG(src)  ((SINT16)(src))
   
   
 #define SEGMENTPTR(s)   (((UINT16 *)&I286_SEGREG) + (s))  #define SEGMENTPTR(s)   (((UINT16 *)&I286_SEGREG) + (s))
Line 325  extern UINT calc_a(UINT op, UINT32 *seg) Line 325  extern UINT calc_a(UINT op, UINT32 *seg)
   
 #define BYTE_IMUL(r, d, s)                                                                                      \  #define BYTE_IMUL(r, d, s)                                                                                      \
                 I286_FLAGL &= (Z_FLAG | S_FLAG | A_FLAG | P_FLAG);                      \                  I286_FLAGL &= (Z_FLAG | S_FLAG | A_FLAG | P_FLAG);                      \
                 (r) = (char)(d) * (char)(s);                                                            \                  (r) = (SINT8)(d) * (SINT8)(s);                                                          \
                 I286_OV = ((r) + 0x80) & 0xffffff00;                                            \                  I286_OV = ((r) + 0x80) & 0xffffff00;                                            \
                 if (I286_OV) {                                                                                          \                  if (I286_OV) {                                                                                          \
                         I286_FLAGL |= C_FLAG;                                                                   \                          I286_FLAGL |= C_FLAG;                                                                   \
Line 333  extern UINT calc_a(UINT op, UINT32 *seg) Line 333  extern UINT calc_a(UINT op, UINT32 *seg)
   
 #define WORD_IMUL(r, d, s)                                                                                      \  #define WORD_IMUL(r, d, s)                                                                                      \
                 I286_FLAGL &= (Z_FLAG | S_FLAG | A_FLAG | P_FLAG);                      \                  I286_FLAGL &= (Z_FLAG | S_FLAG | A_FLAG | P_FLAG);                      \
                 (r) = (short)(d) * (short)(s);                                                          \                  (r) = (SINT16)(d) * (SINT16)(s);                                                        \
                 I286_OV = ((r) + 0x8000) & 0xffff0000;                                          \                  I286_OV = ((r) + 0x8000) & 0xffff0000;                                          \
                 if (I286_OV) {                                                                                          \                  if (I286_OV) {                                                                                          \
                         I286_FLAGL |= C_FLAG;                                                                   \                          I286_FLAGL |= C_FLAG;                                                                   \

Removed from v.1.11  
changed lines
  Added in v.1.13


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