From a487568405d36a4b9dbe5472d34236ffd058e6f2 Mon Sep 17 00:00:00 2001 From: Ignacio Sanchez Gines <863613+drhelius@users.noreply.github.com> Date: Mon, 1 Jul 2024 19:45:59 +0200 Subject: [PATCH] CPX CPY opcodes --- src/huc6280_opcodes.cpp | 18 ++++++++++++------ src/huc6280_timing.h | 4 ++-- 2 files changed, 14 insertions(+), 8 deletions(-) diff --git a/src/huc6280_opcodes.cpp b/src/huc6280_opcodes.cpp index 547efae..73411ef 100644 --- a/src/huc6280_opcodes.cpp +++ b/src/huc6280_opcodes.cpp @@ -1301,7 +1301,8 @@ void HuC6280::OPCode0xBF() void HuC6280::OPCode0xC0() { - // CPY #$n + // OK + // CPY #nn OPCodes_CMP(&m_Y, ImmediateAddressing()); } @@ -1329,7 +1330,8 @@ void HuC6280::OPCode0xC3() void HuC6280::OPCode0xC4() { - // CPY $n + // OK + // CPY ZZ OPCodes_CMP(&m_Y, m_memory->Read(ZeroPageAddressing())); } @@ -1381,7 +1383,8 @@ void HuC6280::OPCode0xCB() void HuC6280::OPCode0xCC() { - // CPY $nn + // OK + // CPY hhll OPCodes_CMP(&m_Y, m_memory->Read(AbsoluteAddressing())); } @@ -1517,7 +1520,8 @@ void HuC6280::OPCode0xDF() void HuC6280::OPCode0xE0() { - // CPX #$n + // OK + // CPX #nn OPCodes_CMP(&m_X, ImmediateAddressing()); } @@ -1543,7 +1547,8 @@ void HuC6280::OPCode0xE3() void HuC6280::OPCode0xE4() { - // CPX $n + // OK + // CPX ZZ OPCodes_CMP(&m_X, m_memory->Read(ZeroPageAddressing())); } @@ -1592,7 +1597,8 @@ void HuC6280::OPCode0xEB() void HuC6280::OPCode0xEC() { - // CPX $nn + // OK + // CPX hhll OPCodes_CMP(&m_X, m_memory->Read(AbsoluteAddressing())); } diff --git a/src/huc6280_timing.h b/src/huc6280_timing.h index ffe25dc..91b7918 100644 --- a/src/huc6280_timing.h +++ b/src/huc6280_timing.h @@ -37,9 +37,9 @@ const u8 k_opcode_tstates[256] = /* 0x90 */ 2, 6, 2, 6, 4, 4, 4, 4, 2, 5, 2, 5, 5, 5, 5, 6, /* 0xA0 */ 2, 6, 2, 6, 3, 3, 3, 3, 2, 2, 2, 2, 4, 4, 4, 6, /* 0xB0 */ 2, 5, 2, 5, 4, 4, 4, 4, 2, 4, 2, 4, 4, 4, 4, 6, -/* 0xC0 */ 2, 7, 2, 8, 3, 4, 5, 5, 2, 2, 2, 2, 4, 5, 6, 6, +/* 0xC0 */ 2, 7, 2, 8, 4, 4, 5, 5, 2, 2, 2, 2, 5, 5, 6, 6, /* 0xD0 */ 2, 7, 7, 8, 4, 4, 6, 6, 2, 5, 2, 7, 4, 5, 7, 6, -/* 0xE0 */ 2, 6, 2, 8, 3, 3, 5, 5, 2, 2, 2, 2, 4, 4, 6, 6, +/* 0xE0 */ 2, 6, 2, 8, 4, 3, 5, 5, 2, 2, 2, 2, 5, 4, 6, 6, /* 0xF0 */ 2, 5, 2, 8, 4, 4, 6, 6, 2, 4, 2, 7, 4, 4, 7, 6 };