diff --git a/src/cpu/flags.cpp b/src/cpu/flags.cpp index 02d41694..6e78c3e6 100644 --- a/src/cpu/flags.cpp +++ b/src/cpu/flags.cpp @@ -46,7 +46,6 @@ bool get_CF(void) { case t_RCLd: return flags.cf; break; - case t_ADDb: return (flags.result.b=0x80000000); case t_DIV: case t_MUL: - return false; + return false; /* Unkown */ default: - E_Exit("get_SF Unkown %d",flags.type); + LOG_WARN("get_SF Unkown %d",flags.type); } return false; @@ -419,6 +416,9 @@ again: case t_RCLb: case t_RCLw: case t_RCLd: + case t_SARb: + case t_SARw: + case t_SARd: return flags.of; case t_CF: type=flags.prev_type; @@ -523,9 +523,6 @@ again: return (flags.result.w >= 0x4000); case t_SHRd: return (flags.result.d >= 0x40000000); - case t_SARb: - case t_SARw: - case t_SARd: case t_ORb: case t_ORw: case t_ORd: @@ -538,10 +535,11 @@ again: case t_TESTb: case t_TESTw: case t_TESTd: + return false; /* Return false */ case t_DIV: - return false; + return false; /* Unkown */ default: - E_Exit("get_OF Unkown %d",flags.type); + LOG_WARN("get_OF Unkown %d",flags.type); } return false; }