diff --git a/src/f6502.c b/src/f6502.c index 74a51d1..2a422b5 100644 --- a/src/f6502.c +++ b/src/f6502.c @@ -434,7 +434,7 @@ static inline int f6502_interrupt(f6502_Core* core, uint16_t addr) { PUSH16(core, core->registers.S, core->registers.PC); PUSH(core, core->registers.S, - core->registers.P & ~f6502_Status_B); + (core->registers.P & ~f6502_Status_B) | f6502_Status_1); SET(core->registers.P, f6502_Status_I); core->registers.PC = f6502_read16(&core->memory, addr); return 7;