diff options
author | vin <git@vineetk.net> | 2024-07-20 21:39:04 -0400 |
---|---|---|
committer | vin <git@vineetk.net> | 2024-07-20 21:39:04 -0400 |
commit | 85c6a414f9f14e388cc9a5e1ee36ffc0e1d93273 (patch) | |
tree | dd4c7a102f10f57ee5d4c88e9093f062c064d262 | |
parent | 81575946ae0d3e61d45b9c4a34785bf203955cee (diff) |
fix rest of logging format issues
Now the format perfectly matches nestest.log.
The only mismatch is now at the unimplemented APU memory addresses.
-rw-r--r-- | cpu.c | 10 |
1 files changed, 7 insertions, 3 deletions
@@ -875,10 +875,10 @@ interpret(void) printf("$%02X", arg); break; case AM_ZP_X: - printf("$%02X,X", arg); + printf("$%02X,X @ %02X", peek(regs.pc - 1), arg); break; case AM_ZP_Y: - printf("$%02X,Y", arg); + printf("$%02X,Y @ %02X", peek(regs.pc - 1), arg); break; case AM_REL: case AM_ABS: @@ -891,7 +891,7 @@ interpret(void) printf("$%04X,Y @ %04X", (uint16_t)(arg - regs.y), arg); break; case AM_IND: - printf("($%04X) = %04X", arg, peek16(arg)); + printf("($%04X) = %04X", peek16(regs.pc - 2), arg); break; case AM_IND_X: printf("($%02X,X) @ %02X = %04X", peek(regs.pc - 1), (peek(regs.pc - 1) + regs.x) & 0xFF, arg); @@ -900,6 +900,8 @@ interpret(void) printf("($%02X),Y = %04X @ %04X", peek(regs.pc - 1), (uint16_t)(arg - regs.y), arg); break; case AM_ACC: + printf("A "); + break; case AM_NONE: printf(" "); break; @@ -927,6 +929,8 @@ interpret(void) break; case AM_ZP_X: case AM_ZP_Y: + spaces -= 3; + break; case AM_REL: case AM_ABS: spaces += 2; |