From 1ac19aaaae40eedfc9e2123645c07627c1f9a339 Mon Sep 17 00:00:00 2001 From: Peter Evans Date: Mon, 30 Apr 2018 22:15:24 -0500 Subject: [PATCH] Port similar changes from DE* to IN* --- src/mos6502/arith.c | 19 +++++++++++-------- 1 file changed, 11 insertions(+), 8 deletions(-) diff --git a/src/mos6502/arith.c b/src/mos6502/arith.c index 62df3b5..8715e3d 100644 --- a/src/mos6502/arith.c +++ b/src/mos6502/arith.c @@ -190,14 +190,15 @@ DEFINE_INST(dey) */ DEFINE_INST(inc) { + oper++; + MOS_CHECK_NZ(oper); + if (cpu->addr_mode == ACC) { - MOS_CHECK_NZ(cpu->A + 1); - cpu->A++; + cpu->A = oper; return; } - MOS_CHECK_NZ(oper + 1); - mos6502_set(cpu, cpu->eff_addr, oper + 1); + mos6502_set(cpu, cpu->eff_addr, oper); } /* @@ -205,8 +206,9 @@ DEFINE_INST(inc) */ DEFINE_INST(inx) { - MOS_CHECK_NZ(cpu->X + 1); - cpu->X++; + oper++; + MOS_CHECK_NZ(oper); + cpu->X = oper; } /* @@ -214,8 +216,9 @@ DEFINE_INST(inx) */ DEFINE_INST(iny) { - MOS_CHECK_NZ(cpu->Y + 1); - cpu->Y++; + oper++; + MOS_CHECK_NZ(oper); + cpu->Y = oper; } /*