Two possibilities:
A. It disables NMI before calling the test routine and reenables NMI afterward.
B. The NMI handler doesn't write to any RAM locations that the test routine uses. In a lot of my programs, for example, NMI just increments one location in zero page.
IRQ and NMI consume 7 CPU cycles
Moderator: Moderators