There is however a difference with the BRK instruction:
Code: Select all
; Nintendulator
C66E 60 RTS A:00 X:FF Y:15 P:27 SP:FD PPU:188,233 CYC:26554
0001 FF 00 00 *ISB $0000,X @ 00FF = 46 A:00 X:FF Y:15 P:27 SP:FF PPU:206,233 CYC:26560
0004 00 99 BRK #$99 A:B9 X:FF Y:15 P:A4 SP:FF PPU:227,233 CYC:26567
C5F4 40 RTI A:B9 X:FF Y:15 P:A4 SP:FC PPU:248,233 CYC:26574
0006 00 00 BRK #$00 A:B9 X:FF Y:15 P:A4 SP:FF PPU:266,233 CYC:26580
; my output
C66E 60 RTS A:00 X:FF Y:15 P:27 SP:FD PPU:188,233 CYC:26554 ..-..IZC
0001 FF 00 00 ISB A:00 X:FF Y:15 P:27 SP:FF PPU:206,233 CYC:26560 ..-..IZC
0004 00 BRK A:B9 X:FF Y:15 P:A4 SP:FF PPU:227,233 CYC:26567 N.-..I..
C5F4 40 RTI A:B9 X:FF Y:15 P:B4 SP:FC PPU:248,233 CYC:26574 N.-B.I..
0006 00 BRK A:B9 X:FF Y:15 P:B4 SP:FF PPU:266,233 CYC:26580 N.-B.I..
Theres two things here I need help with: What is this immediate BRK instruction (BRK #$99 and BRK #$00)? And why is the B flag not set after the BRK? According to my reference, it should always be set.