mirror of
https://github.com/holub/mame
synced 2025-06-07 05:13:46 +03:00
More fixes (nw)
This commit is contained in:
parent
d437c9c385
commit
e242fcd033
@ -325,6 +325,9 @@ void xavix2_device::execute_run()
|
||||
break;
|
||||
}
|
||||
|
||||
case 0xc8: case 0xc9: m_r[r1(opcode)] = snz(m_hr[val6u(opcode)]); break;
|
||||
case 0xca: case 0xcb: m_hr[val6u(opcode)] = m_r[r1(opcode)]; break;
|
||||
|
||||
case 0xd0: if(m_f & F_V) npc = m_pc + val8s(opcode); break;
|
||||
case 0xd1: if(((m_f & F_N) && !(m_f & F_V)) || ((m_f & F_V) && !(m_f & F_N))) npc = m_pc + val8s(opcode); break;
|
||||
case 0xd2: if(m_f & F_Z) npc = m_pc + val8s(opcode); break;
|
||||
|
@ -63,6 +63,7 @@ protected:
|
||||
static inline u32 val11s(u32 opcode) { return opcode & 0x40000 ? (opcode >> 8) | 0xfffff800 : (opcode >> 8) & 0x7ff; }
|
||||
static inline u32 val11u(u32 opcode) { return (opcode >> 8) & 0x000007ff; }
|
||||
static inline u32 val8s(u32 opcode) { return static_cast<s8>(opcode >> 16); }
|
||||
static inline u32 val6u(u32 opcode) { return (opcode >> 16) & 0x0000003f; }
|
||||
static inline u32 val6s(u32 opcode) { return opcode & 0x200000 ? (opcode >> 16) | 0xffffffc0 : (opcode >> 16) & 0x3f; }
|
||||
static inline u32 val3u(u32 opcode) { return (opcode >> 16) & 0x00000007; }
|
||||
static inline u32 val3s(u32 opcode) { return opcode & 0x40000 ? (opcode >> 16) | 0xfffffff8 : (opcode >> 16) & 0x7; }
|
||||
|
Loading…
Reference in New Issue
Block a user