mirror of
https://gitlab.com/camelot/kickc.git
synced 2025-08-09 04:25:12 +00:00
48 lines
2.8 KiB
INI
48 lines
2.8 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()
|
|
main: scope:[main] from @1
|
|
[4] phi()
|
|
to:main::@1
|
|
main::@1: scope:[main] from main main::@2
|
|
[5] (word) main::xpos#2 ← phi( main/(byte/word/signed word/dword/signed dword) $c8 main::@2/(word) main::xpos#1 )
|
|
[5] (byte) main::s#2 ← phi( main/(byte/signed byte/word/signed word/dword/signed dword) 0 main::@2/(byte) main::s#1 )
|
|
[6] (byte) position_sprite::spriteno#0 ← (byte) main::s#2
|
|
[7] (word) position_sprite::x#0 ← (word) main::xpos#2
|
|
[8] call position_sprite
|
|
to:main::@2
|
|
main::@2: scope:[main] from main::@1
|
|
[9] (word) main::xpos#1 ← (word) main::xpos#2 + (byte/signed byte/word/signed word/dword/signed dword) $a
|
|
[10] (byte) main::s#1 ← ++ (byte) main::s#2
|
|
[11] if((byte) main::s#1!=(byte/signed byte/word/signed word/dword/signed dword) 8) goto main::@1
|
|
to:main::@return
|
|
main::@return: scope:[main] from main::@2
|
|
[12] return
|
|
to:@return
|
|
position_sprite: scope:[position_sprite] from main::@1
|
|
[13] (byte~) position_sprite::$0 ← (byte) position_sprite::spriteno#0 << (byte/signed byte/word/signed word/dword/signed dword) 1
|
|
[14] *((const byte*) SPRITES_YPOS#0 + (byte~) position_sprite::$0) ← (const byte) position_sprite::y#0
|
|
[15] (byte~) position_sprite::$1 ← (byte) position_sprite::spriteno#0 << (byte/signed byte/word/signed word/dword/signed dword) 1
|
|
[16] (byte~) position_sprite::$2 ← < (word) position_sprite::x#0
|
|
[17] *((const byte*) SPRITES_XPOS#0 + (byte~) position_sprite::$1) ← (byte~) position_sprite::$2
|
|
[18] if((word) position_sprite::x#0>(byte/word/signed word/dword/signed dword) $ff) goto position_sprite::@1
|
|
to:position_sprite::@2
|
|
position_sprite::@2: scope:[position_sprite] from position_sprite
|
|
[19] (byte/signed byte/word/signed word/dword/signed dword~) position_sprite::$4 ← (byte/signed byte/word/signed word/dword/signed dword) 1 << (byte) position_sprite::spriteno#0
|
|
[20] (byte/word/dword~) position_sprite::$5 ← (byte/signed byte/word/signed word/dword/signed dword~) position_sprite::$4 ^ (byte/word/signed word/dword/signed dword) $ff
|
|
[21] *((const byte*) SPRITES_XMSB#0) ← *((const byte*) SPRITES_XMSB#0) & (byte/word/dword~) position_sprite::$5
|
|
to:position_sprite::@return
|
|
position_sprite::@return: scope:[position_sprite] from position_sprite::@1 position_sprite::@2
|
|
[22] return
|
|
to:@return
|
|
position_sprite::@1: scope:[position_sprite] from position_sprite
|
|
[23] (byte/signed byte/word/signed word/dword/signed dword~) position_sprite::$6 ← (byte/signed byte/word/signed word/dword/signed dword) 1 << (byte) position_sprite::spriteno#0
|
|
[24] *((const byte*) SPRITES_XMSB#0) ← *((const byte*) SPRITES_XMSB#0) | (byte/signed byte/word/signed word/dword/signed dword~) position_sprite::$6
|
|
to:position_sprite::@return
|