--- np2/i286c/i286c.mcr 2003/12/19 23:33:49 1.18 +++ np2/i286c/i286c.mcr 2005/02/07 14:46:10 1.20 @@ -206,7 +206,7 @@ extern UINT calc_a(UINT op, UINT32 *seg) #define ADDBYTE(r, d, s) \ (r) = (s) + (d); \ I286_OV = ((r) ^ (s)) & ((r) ^ (d)) & 0x80; \ - I286_FLAGL = (BYTE)(((r) ^ (d) ^ (s)) & A_FLAG); \ + I286_FLAGL = (UINT8)(((r) ^ (d) ^ (s)) & A_FLAG); \ I286_FLAGL |= BYTESZPCF(r); #define ADDWORD(r, d, s) \ @@ -500,5 +500,7 @@ extern UINT calc_a(UINT op, UINT32 *seg) } -#define INT_NUM(a, b) i286c_intnum((a), (REG16)(b)) +#define SEGSELECT(c) ((I286_MSW & MSW_PE)?i286c_selector(c):((c) << 4)) + +#define INT_NUM(a, b) i286c_intnum((a), (REG16)(b))