diff --git a/src/apple2/apple2.c b/src/apple2/apple2.c index 68c5517..834eda8 100644 --- a/src/apple2/apple2.c +++ b/src/apple2/apple2.c @@ -391,7 +391,9 @@ apple2_run_loop(apple2 *mach) } } - mos6502_execute(mach->cpu); + if (!vm_debug_broke(mach->cpu->PC)) { + mos6502_execute(mach->cpu); + } if (vm_screen_dirty(mach->screen)) { apple2_draw(mach); diff --git a/src/mos6502/mos6502.c b/src/mos6502/mos6502.c index 9ae353d..d518456 100644 --- a/src/mos6502/mos6502.c +++ b/src/mos6502/mos6502.c @@ -312,12 +312,6 @@ mos6502_execute(mos6502 *cpu) mos6502_address_resolver resolver; mos6502_instruction_handler handler; - // We shouldn't normally get here, if there was a breakpoint, but we - // will in testing. - if (vm_debug_broke(cpu->PC)) { - return; - } - opcode = mos6502_get(cpu, cpu->PC); // The disassembler knows how many bytes each operand requires