Files
open-roms/c64/kernal/interrupts/hw_entry_nmi.s
T

21 lines
432 B
ArmAsm

hw_entry_nmi:
sei // don't allow IRQ to interfere, see https://www.c64-wiki.com/wiki/Interrupt
#if CONFIG_CPU_MOS_6502 && CONFIG_BCD_SAFE_INTERRUPTS
cld // clear decimal flag to allow using it without disabling interrupts
#endif
// Call interrupt routine (only if initialised)
pha
lda NMINV
ora NMINV+1
beq !+
pla
jmp (NMINV)
!:
// Vector not initialized - call default interrupt routine
pla
jmp default_nmi_handler