Residente Routinen: der IRQ-Hook
Einen “TSR” wie unter DOS gibt es auf dem C64 nicht von Haus aus – aber das Konzept klappt trotzdem. Der Trick: Du biegst den IRQ-Vektor bei $0314/$0315 auf deine eigene Routine um. Rund 60-mal pro Sekunde bekommst du so die Kontrolle, ganz ohne dass BASIC etwas davon merkt.
sei ; IRQ sperren
lda $0314
sta old+0
lda $0315
sta old+1
lda #<irq
sta $0314
lda #>irq
sta $0315
cli
rts
irq inc $d020 ; Rahmenfarbe
jmp (old) ; weiter zum Kernal
old .word $0000
Den residenten Code legst du am besten nach $C000 – die 4 KB lässt BASIC komplett in Ruhe. Im nächsten Beitrag – SID-Musik im IRQ – hängen wir einen SID-Player in genau diesen IRQ, damit Musik läuft, während das Spiel weitermacht.