static void FLAGSI( mb86233_state *cpustate, UINT32 v ) { GETSR() = 0; if ( v == 0 ) GETSR() |= ZERO_FLAG; if ( v & 0x80000000 ) GETSR() |= SIGN_FLAG; }
void mb86233_cpu_device::FLAGSI( UINT32 v ) { GETSR() = 0; if ( v == 0 ) GETSR() |= ZERO_FLAG; if ( v & 0x80000000 ) GETSR() |= SIGN_FLAG; }
static void FLAGSF( mb86233_state *cpustate, float v ) { GETSR() = 0; if ( v == 0 ) GETSR() |= ZERO_FLAG; if ( v < 0 ) GETSR() |= SIGN_FLAG; }
void mb86233_cpu_device::FLAGSF( float v ) { GETSR() = 0; if ( v == 0 ) GETSR() |= ZERO_FLAG; if ( v < 0 ) GETSR() |= SIGN_FLAG; }
static int COND( mb86233_state *cpustate, UINT32 cond ) { switch( cond ) { case 0x00: /* eq */ if ( (GETSR() & ZERO_FLAG) ) return 1; break; case 0x01: /* ge */ if ( (GETSR() & ZERO_FLAG) || ((GETSR() & SIGN_FLAG)==0) ) return 1; break; case 0x02: /* le */ if ( (GETSR() & ZERO_FLAG) || (GETSR() & SIGN_FLAG) ) return 1; break; case 0x06: /* never */ break; case 0x0a: if(GETSR() & EXTERNAL_FLAG) return 1; break; case 0x10: /* --r12 != 0 */ GETGPR(12)--; if ( GETGPR(12) != 0 ) return 1; break; case 0x11: /* --r13 != 0 */ GETGPR(13)--; if ( GETGPR(13) != 0 ) return 1; break; case 0x16: /* always */ return 1; default: logerror( "TGP: Unknown condition code (cc=%d) at PC:%x\n", cond, GETPC()); break; } return 0; }