--- np2/i286c/i286c_sf.mcr 2003/10/17 12:49:52 1.3 +++ np2/i286c/i286c_sf.mcr 2003/10/27 15:06:31 1.4 @@ -201,7 +201,6 @@ (c) &= 0x0f; \ (s) = ((s) << (c)) | ((s) >> (16 - (c))); \ (s) &= 0xffff; \ - I286_OV = 0; \ } \ else { \ I286_OV = ((s) + 0x4000) & 0x8000; \ @@ -222,12 +221,11 @@ (c) &= 0x0f; \ (s) = ((s) >> (c)) | ((s) << (16 - (c))); \ (s) &= 0xffff; \ - I286_OV = 0; \ } \ else { \ I286_OV = ((s) >> 15) ^ ((s) & 1); \ } \ - tmp = ((s) & 1); \ + tmp = (s) & 1; \ (s) = ((tmp << 16) + (s)) >> 1; \ I286_FLAGL &= ~C_FLAG; \ I286_FLAGL |= tmp; \ @@ -240,8 +238,7 @@ UINT tmp; \ tmp = I286_FLAGL & C_FLAG; \ I286_FLAGL &= ~C_FLAG; \ - I286_OV = 0; \ - if (((c) == 1) || ((c) == 1+17)) { \ + if ((c) == 1) { \ I286_OV = ((s) + 0x4000) & 0x8000; \ } \ while((c)--) { \ @@ -258,8 +255,7 @@ UINT32 tmp; \ tmp = I286_FLAGL & C_FLAG; \ I286_FLAGL &= ~C_FLAG; \ - I286_OV = 0; \ - if (((c) == 1) || ((c) == 1+17)) { \ + if ((c) == 1) { \ I286_OV = ((s) >> 15) ^ tmp; \ } \ while((c)--) { \