summaryrefslogtreecommitdiffstatshomepage
diff options
context:
space:
mode:
author Olivier Galibert <galibert@pobox.com>2020-02-14 22:52:42 +0100
committer Olivier Galibert <galibert@pobox.com>2020-02-14 22:53:22 +0100
commit11ed8ba19159ff39c553586e184c73874be3f067 (patch)
treeb886b6ee487d1424dc48186f422d238b2ddad933
parent7ea0a6a964420c67cb490caa4f0feb0f5c584145 (diff)
Branch fixes (nw)
-rw-r--r--src/devices/cpu/xavix2/xavix2.cpp8
-rw-r--r--src/devices/cpu/xavix2/xavix2d.cpp8
2 files changed, 8 insertions, 8 deletions
diff --git a/src/devices/cpu/xavix2/xavix2.cpp b/src/devices/cpu/xavix2/xavix2.cpp
index b2dfac375c8..c8c93d62530 100644
--- a/src/devices/cpu/xavix2/xavix2.cpp
+++ b/src/devices/cpu/xavix2/xavix2.cpp
@@ -362,17 +362,17 @@ void xavix2_device::execute_run()
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_C)) npc = m_pc + val8s(opcode); break;
+ case 0xd1: if((m_f & F_Z) || (m_f & F_C)) npc = m_pc + val8s(opcode); break;
case 0xd2: if(m_f & F_Z) npc = m_pc + val8s(opcode); break;
- case 0xd3: if((m_f & F_Z) || (m_f & F_C)) npc = m_pc + val8s(opcode); break;
+ case 0xd3: if(m_f & F_C) npc = m_pc + val8s(opcode); break;
case 0xd4: if(m_f & F_N) npc = m_pc + val8s(opcode); break;
case 0xd5: npc = m_pc + val8s(opcode); break;
case 0xd6: if(((m_f & F_N) && !(m_f & F_V)) || ((m_f & F_V) && !(m_f & F_N))) npc = m_pc + val8s(opcode); break;
case 0xd7: if((m_f & F_Z) || ((m_f & F_N) && !(m_f & F_V)) || ((m_f & F_V) && !(m_f & F_N))) npc = m_pc + val8s(opcode); break;
case 0xd8: if(!(m_f & F_V)) npc = m_pc + val8s(opcode); break;
- case 0xd9: if(m_f & F_C) npc = m_pc + val8s(opcode); break;
+ case 0xd9: if(!(m_f & F_Z) && !(m_f & F_C)) npc = m_pc + val8s(opcode); break;
case 0xda: if(!(m_f & F_Z)) npc = m_pc + val8s(opcode); break;
- case 0xdb: if(!(m_f & F_Z) && !(m_f & F_C)) npc = m_pc + val8s(opcode); break;
+ case 0xdb: if(!(m_f & F_C)) npc = m_pc + val8s(opcode); break;
case 0xdc: if(!(m_f & F_N)) npc = m_pc + val8s(opcode); break;
case 0xdd: break;
case 0xde: if(((m_f & F_N) && (m_f & F_V)) || (!(m_f & F_V) && !(m_f & F_N))) npc = m_pc + val8s(opcode); break;
diff --git a/src/devices/cpu/xavix2/xavix2d.cpp b/src/devices/cpu/xavix2/xavix2d.cpp
index ef91d93bb3e..fe4a24a244c 100644
--- a/src/devices/cpu/xavix2/xavix2d.cpp
+++ b/src/devices/cpu/xavix2/xavix2d.cpp
@@ -311,17 +311,17 @@ offs_t xavix2_disassembler::disassemble(std::ostream &stream, offs_t pc, const d
// cc-cf
case 0xd0: util::stream_format(stream, "bvs %s", rel8()); break;
- case 0xd1: util::stream_format(stream, "bgeu %s", rel8()); break;
+ case 0xd1: util::stream_format(stream, "bleu %s", rel8()); break;
case 0xd2: util::stream_format(stream, "beq %s", rel8()); break;
- case 0xd3: util::stream_format(stream, "bleu %s", rel8()); break;
+ case 0xd3: util::stream_format(stream, "bltu %s", rel8()); break;
case 0xd4: util::stream_format(stream, "bmi %s", rel8()); break;
case 0xd5: util::stream_format(stream, "bra %s", rel8()); break;
case 0xd6: util::stream_format(stream, "blts %s", rel8()); break;
case 0xd7: util::stream_format(stream, "bles %s", rel8()); break;
case 0xd8: util::stream_format(stream, "bvc %s", rel8()); break;
- case 0xd9: util::stream_format(stream, "bltu %s", rel8()); break;
+ case 0xd9: util::stream_format(stream, "bgtu %s", rel8()); break;
case 0xda: util::stream_format(stream, "bne %s", rel8()); break;
- case 0xdb: util::stream_format(stream, "bgtu %s", rel8()); break;
+ case 0xdb: util::stream_format(stream, "bgeu %s", rel8()); break;
case 0xdc: util::stream_format(stream, "bpl %s", rel8()); break;
case 0xdd: util::stream_format(stream, "bnv %s", rel8()); break;
case 0xde: util::stream_format(stream, "bges %s", rel8()); break;