--- np2/i286c/i286c_sf.mcr 2003/12/17 01:57:42 1.10 +++ np2/i286c/i286c_sf.mcr 2005/02/07 14:46:11 1.11 @@ -46,7 +46,7 @@ I286_FLAGL = (UINT8)(BYTESZPF(d) | A_FLAG | ((s) & 1)); #else // eVC3/4 compiler bug #define BYTE_SAR1(d, s) \ - (d) = (BYTE)(((SINT8)(s)) >> 1); \ + (d) = (UINT8)(((SINT8)(s)) >> 1); \ I286_OV = 0; \ I286_FLAGL = (UINT8)(BYTESZPF(d) | A_FLAG | ((s) & 1)); #endif @@ -183,7 +183,7 @@ (c) = 10; \ } \ (s) >>= ((c) - 1); \ - I286_FLAGL = (BYTE)((s) & 1); \ + I286_FLAGL = (UINT8)((s) & 1); \ (s) >>= 1; \ I286_OV = ((s) ^ ((s) >> 1)) & 0x40; \ I286_FLAGL |= BYTESZPF(s) + A_FLAG; \ @@ -195,8 +195,8 @@ (c) &= 0x1f; \ if (c) { \ (s) = ((SINT8)(s)) >> ((c) - 1); \ - I286_FLAGL = (BYTE)((s) & 1); \ - (s) = (BYTE)(((SINT8)s) >> 1); \ + I286_FLAGL = (UINT8)((s) & 1); \ + (s) = (UINT8)(((SINT8)s) >> 1); \ I286_OV = 0; \ I286_FLAGL |= BYTESZPF(s) | A_FLAG; \ } \