1
0
mirror of https://gitlab.com/camelot/kickc.git synced 2024-11-18 04:08:58 +00:00
kickc/src/test/ref/irq-hardware-clobber-jsr.cfg
2019-09-29 20:57:28 +02:00

45 lines
1.3 KiB
INI

@begin: scope:[] from
[0] phi()
to:@1
@1: scope:[] from @begin
[1] phi()
[2] call main
to:@end
@end: scope:[] from @1
[3] phi()
(void()) main()
main: scope:[main] from @1
asm { sei }
[5] *((const byte*) PROCPORT_DDR) ← (const byte) PROCPORT_DDR_MEMORY_MASK
[6] *((const byte*) PROCPORT) ← (const byte) PROCPORT_RAM_IO
[7] *((const byte*) CIA1_INTERRUPT) ← (const byte) CIA_INTERRUPT_CLEAR
[8] *((const byte*) VIC_CONTROL) ← *((const byte*) VIC_CONTROL) | (byte) $80
[9] *((const byte*) RASTER) ← (byte) 0
[10] *((const byte*) IRQ_ENABLE) ← (const byte) IRQ_RASTER
[11] *((const void()**) HARDWARE_IRQ) ← &interrupt(HARDWARE_CLOBBER)(void()) irq()
asm { cli }
to:main::@1
main::@1: scope:[main] from main main::@1
[13] *((const byte*) BORDERCOL) ← ++ *((const byte*) BORDERCOL)
to:main::@1
interrupt(HARDWARE_CLOBBER)(void()) irq()
irq: scope:[irq] from
[14] phi()
[15] call do_irq
to:irq::@return
irq::@return: scope:[irq] from irq
[16] return
to:@return
(void()) do_irq()
do_irq: scope:[do_irq] from irq
[17] *((const byte*) BGCOL) ← (const byte) WHITE
[18] *((const byte*) BGCOL) ← (const byte) BLACK
[19] *((const byte*) IRQ_STATUS) ← (const byte) IRQ_RASTER
to:do_irq::@return
do_irq::@return: scope:[do_irq] from do_irq
[20] return
to:@return