mirror of
https://gitlab.com/camelot/kickc.git
synced 2024-06-29 09:29:31 +00:00
44 lines
1.1 KiB
INI
44 lines
1.1 KiB
INI
|
|
void __start()
|
|
__start: scope:[__start] from
|
|
[0] phi()
|
|
to:__start::__init1
|
|
__start::__init1: scope:[__start] from __start
|
|
[1] irq_raster_next = 0
|
|
to:__start::@1
|
|
__start::@1: scope:[__start] from __start::__init1
|
|
[2] phi()
|
|
[3] call main
|
|
to:__start::@return
|
|
__start::@return: scope:[__start] from __start::@1
|
|
[4] return
|
|
to:@return
|
|
|
|
__interrupt(hardware_clobber) void irq()
|
|
irq: scope:[irq] from
|
|
[5] *BORDER_COLOR = DARK_GREY
|
|
[6] irq_raster_next = irq_raster_next + $15
|
|
[7] irq::raster_next#0 = irq_raster_next
|
|
[8] irq::$0 = irq::raster_next#0 & 7
|
|
[9] if(irq::$0!=0) goto irq::@1
|
|
to:irq::@2
|
|
irq::@2: scope:[irq] from irq
|
|
[10] irq::raster_next#1 = irq::raster_next#0 - 1
|
|
to:irq::@1
|
|
irq::@1: scope:[irq] from irq irq::@2
|
|
[11] irq::raster_next#2 = phi( irq/irq::raster_next#0, irq::@2/irq::raster_next#1 )
|
|
[12] *RASTER = irq::raster_next#2
|
|
[13] *BORDER_COLOR = BLACK
|
|
to:irq::@return
|
|
irq::@return: scope:[irq] from irq::@1
|
|
[14] return
|
|
to:@return
|
|
|
|
void main()
|
|
main: scope:[main] from __start::@1
|
|
[15] *KERNEL_IRQ = &irq
|
|
to:main::@return
|
|
main::@return: scope:[main] from main
|
|
[16] return
|
|
to:@return
|