2 ; Atari XL shadow RAM timer IRQ #1 handler
4 ; Christian Groessler, chris@groessler.org, 2014
13 .include "romswitch.inc"
14 .export set_VTIMR1_handler
19 VTIMR1_handler: .res 3
30 ; timer interrupt handler:
31 ; disable ROM, call user handler, enable ROM again
42 ; install or remove VTIMR1 handler
43 ; input: CF - 0/1 for remove/install handler
44 ; AX - pointer to handler (if CF=1)
54 sta VTIMR1_handler+1 ; save passed vector in low memory
55 lda #$4C ; "JMP" opcode
59 sta old_VTIMR1_handler
61 sta old_VTIMR1_handler+1
63 lda #<my_VTIMR1_handler
67 lda #>my_VTIMR1_handler
74 lda old_VTIMR1_handler
76 lda old_VTIMR1_handler+1
81 .endif ; .ifdef __ATARIXL__