1
0
mirror of https://gitlab.com/camelot/kickc.git synced 2024-10-10 20:23:47 +00:00

Improved multiplexer

This commit is contained in:
jespergravgaard 2018-08-02 23:05:33 +02:00
parent 0f4490dfb0
commit 3559ac29d5
5 changed files with 291 additions and 305 deletions

View File

@ -7,11 +7,6 @@ byte* SPRITE = $2000;
byte* SCREEN = $400;
byte* YSIN = $2100;
// The size of the y-sinus
word YSIN_SIZE = 256;
// The y-sinus byte table
//byte[YSIN_SIZE] ysin;
kickasm(pc YSIN) {{
.var min = 51
.var max = 250-21
@ -76,8 +71,8 @@ void loop() {
for( byte ss: 0..7) {
plexShowSprite();
}
// Show the next 8 sprites
for( byte ss2: 8..PLEX_COUNT-1) {
// Show the rest of the sprites
for( ss: 8..PLEX_COUNT-1) {
*BORDERCOL = BLACK;
byte rasterY = plexShowNextYpos()-8;
while(*RASTER<rasterY) {}

View File

@ -32,7 +32,6 @@ loop: {
.label sin_idx = 2
.label ss = 3
.label rasterY = 9
.label ss2 = 3
lda #0
sta sin_idx
b4:
@ -70,7 +69,7 @@ loop: {
cmp #8
bne b8
lda #8
sta ss2
sta ss
b9:
lda #BLACK
sta BORDERCOL
@ -87,8 +86,8 @@ loop: {
bcc b10
inc BORDERCOL
jsr plexShowSprite
inc ss2
lda ss2
inc ss
lda ss
cmp #PLEX_COUNT-1+1
bne b9
lda #BLACK

View File

@ -61,73 +61,73 @@ loop::@26: scope:[loop] from loop::@18
[24] *((const byte*) BORDERCOL#0) ← ++ *((const byte*) BORDERCOL#0) [ loop::sin_idx#1 ] ( main:4::loop:9 [ loop::sin_idx#1 ] )
to:loop::@8
loop::@8: scope:[loop] from loop::@26 loop::@27
[25] (byte) loop::ss#2 ← phi( loop::@26/(byte/signed byte/word/signed word/dword/signed dword) 0 loop::@27/(byte) loop::ss#1 ) [ loop::sin_idx#1 plex_sprite_idx#24 plex_show_idx#25 plex_sprite_msb#29 loop::ss#2 ] ( main:4::loop:9 [ loop::sin_idx#1 plex_sprite_idx#24 plex_show_idx#25 plex_sprite_msb#29 loop::ss#2 ] )
[25] (byte) plex_sprite_msb#29 ← phi( loop::@26/(byte/signed byte/word/signed word/dword/signed dword) 1 loop::@27/(byte) plex_sprite_msb#17 ) [ loop::sin_idx#1 plex_sprite_idx#24 plex_show_idx#25 plex_sprite_msb#29 loop::ss#2 ] ( main:4::loop:9 [ loop::sin_idx#1 plex_sprite_idx#24 plex_show_idx#25 plex_sprite_msb#29 loop::ss#2 ] )
[25] (byte) plex_show_idx#25 ← phi( loop::@26/(byte/signed byte/word/signed word/dword/signed dword) 0 loop::@27/(byte) plex_show_idx#15 ) [ loop::sin_idx#1 plex_sprite_idx#24 plex_show_idx#25 plex_sprite_msb#29 loop::ss#2 ] ( main:4::loop:9 [ loop::sin_idx#1 plex_sprite_idx#24 plex_show_idx#25 plex_sprite_msb#29 loop::ss#2 ] )
[25] (byte) plex_sprite_idx#24 ← phi( loop::@26/(byte/signed byte/word/signed word/dword/signed dword) 0 loop::@27/(byte) plex_sprite_idx#15 ) [ loop::sin_idx#1 plex_sprite_idx#24 plex_show_idx#25 plex_sprite_msb#29 loop::ss#2 ] ( main:4::loop:9 [ loop::sin_idx#1 plex_sprite_idx#24 plex_show_idx#25 plex_sprite_msb#29 loop::ss#2 ] )
[26] call plexShowSprite [ loop::sin_idx#1 loop::ss#2 plex_sprite_idx#15 plex_show_idx#15 plex_sprite_msb#17 ] ( main:4::loop:9 [ loop::sin_idx#1 loop::ss#2 plex_sprite_idx#15 plex_show_idx#15 plex_sprite_msb#17 ] )
[25] (byte) loop::ss#4 ← phi( loop::@26/(byte/signed byte/word/signed word/dword/signed dword) 0 loop::@27/(byte) loop::ss#1 ) [ loop::sin_idx#1 plex_sprite_idx#24 plex_show_idx#25 plex_sprite_msb#29 loop::ss#4 ] ( main:4::loop:9 [ loop::sin_idx#1 plex_sprite_idx#24 plex_show_idx#25 plex_sprite_msb#29 loop::ss#4 ] )
[25] (byte) plex_sprite_msb#29 ← phi( loop::@26/(byte/signed byte/word/signed word/dword/signed dword) 1 loop::@27/(byte) plex_sprite_msb#17 ) [ loop::sin_idx#1 plex_sprite_idx#24 plex_show_idx#25 plex_sprite_msb#29 loop::ss#4 ] ( main:4::loop:9 [ loop::sin_idx#1 plex_sprite_idx#24 plex_show_idx#25 plex_sprite_msb#29 loop::ss#4 ] )
[25] (byte) plex_show_idx#25 ← phi( loop::@26/(byte/signed byte/word/signed word/dword/signed dword) 0 loop::@27/(byte) plex_show_idx#15 ) [ loop::sin_idx#1 plex_sprite_idx#24 plex_show_idx#25 plex_sprite_msb#29 loop::ss#4 ] ( main:4::loop:9 [ loop::sin_idx#1 plex_sprite_idx#24 plex_show_idx#25 plex_sprite_msb#29 loop::ss#4 ] )
[25] (byte) plex_sprite_idx#24 ← phi( loop::@26/(byte/signed byte/word/signed word/dword/signed dword) 0 loop::@27/(byte) plex_sprite_idx#15 ) [ loop::sin_idx#1 plex_sprite_idx#24 plex_show_idx#25 plex_sprite_msb#29 loop::ss#4 ] ( main:4::loop:9 [ loop::sin_idx#1 plex_sprite_idx#24 plex_show_idx#25 plex_sprite_msb#29 loop::ss#4 ] )
[26] call plexShowSprite [ loop::sin_idx#1 loop::ss#4 plex_sprite_idx#15 plex_show_idx#15 plex_sprite_msb#17 ] ( main:4::loop:9 [ loop::sin_idx#1 loop::ss#4 plex_sprite_idx#15 plex_show_idx#15 plex_sprite_msb#17 ] )
to:loop::@27
loop::@27: scope:[loop] from loop::@8
[27] (byte) loop::ss#1 ← ++ (byte) loop::ss#2 [ loop::sin_idx#1 plex_sprite_idx#15 plex_show_idx#15 plex_sprite_msb#17 loop::ss#1 ] ( main:4::loop:9 [ loop::sin_idx#1 plex_sprite_idx#15 plex_show_idx#15 plex_sprite_msb#17 loop::ss#1 ] )
[27] (byte) loop::ss#1 ← ++ (byte) loop::ss#4 [ loop::sin_idx#1 plex_sprite_idx#15 plex_show_idx#15 plex_sprite_msb#17 loop::ss#1 ] ( main:4::loop:9 [ loop::sin_idx#1 plex_sprite_idx#15 plex_show_idx#15 plex_sprite_msb#17 loop::ss#1 ] )
[28] if((byte) loop::ss#1!=(byte/signed byte/word/signed word/dword/signed dword) 8) goto loop::@8 [ loop::sin_idx#1 plex_sprite_idx#15 plex_show_idx#15 plex_sprite_msb#17 loop::ss#1 ] ( main:4::loop:9 [ loop::sin_idx#1 plex_sprite_idx#15 plex_show_idx#15 plex_sprite_msb#17 loop::ss#1 ] )
to:loop::@9
loop::@9: scope:[loop] from loop::@27 loop::@28
[29] (byte) loop::ss2#6 ← phi( loop::@27/(byte/signed byte/word/signed word/dword/signed dword) 8 loop::@28/(byte) loop::ss2#1 ) [ loop::sin_idx#1 plex_sprite_idx#15 plex_show_idx#15 plex_sprite_msb#17 loop::ss2#6 ] ( main:4::loop:9 [ loop::sin_idx#1 plex_sprite_idx#15 plex_show_idx#15 plex_sprite_msb#17 loop::ss2#6 ] )
[30] *((const byte*) BORDERCOL#0) ← (const byte) BLACK#0 [ loop::sin_idx#1 plex_sprite_idx#15 plex_show_idx#15 plex_sprite_msb#17 loop::ss2#6 ] ( main:4::loop:9 [ loop::sin_idx#1 plex_sprite_idx#15 plex_show_idx#15 plex_sprite_msb#17 loop::ss2#6 ] )
[29] (byte) loop::ss#10 ← phi( loop::@27/(byte/signed byte/word/signed word/dword/signed dword) 8 loop::@28/(byte) loop::ss#3 ) [ loop::sin_idx#1 plex_sprite_idx#15 plex_show_idx#15 plex_sprite_msb#17 loop::ss#10 ] ( main:4::loop:9 [ loop::sin_idx#1 plex_sprite_idx#15 plex_show_idx#15 plex_sprite_msb#17 loop::ss#10 ] )
[30] *((const byte*) BORDERCOL#0) ← (const byte) BLACK#0 [ loop::sin_idx#1 plex_sprite_idx#15 plex_show_idx#15 plex_sprite_msb#17 loop::ss#10 ] ( main:4::loop:9 [ loop::sin_idx#1 plex_sprite_idx#15 plex_show_idx#15 plex_sprite_msb#17 loop::ss#10 ] )
to:loop::plexShowNextYpos1
loop::plexShowNextYpos1: scope:[loop] from loop::@9
[31] (byte) loop::plexShowNextYpos1_return#0 ← *((const byte[PLEX_COUNT#0]) PLEX_YPOS#0 + *((const byte[PLEX_COUNT#0]) PLEX_SORTED_IDX#0 + (byte) plex_show_idx#15)) [ loop::sin_idx#1 plex_sprite_idx#15 plex_show_idx#15 plex_sprite_msb#17 loop::ss2#6 loop::plexShowNextYpos1_return#0 ] ( main:4::loop:9 [ loop::sin_idx#1 plex_sprite_idx#15 plex_show_idx#15 plex_sprite_msb#17 loop::ss2#6 loop::plexShowNextYpos1_return#0 ] )
[31] (byte) loop::plexShowNextYpos1_return#0 ← *((const byte[PLEX_COUNT#0]) PLEX_YPOS#0 + *((const byte[PLEX_COUNT#0]) PLEX_SORTED_IDX#0 + (byte) plex_show_idx#15)) [ loop::sin_idx#1 plex_sprite_idx#15 plex_show_idx#15 plex_sprite_msb#17 loop::ss#10 loop::plexShowNextYpos1_return#0 ] ( main:4::loop:9 [ loop::sin_idx#1 plex_sprite_idx#15 plex_show_idx#15 plex_sprite_msb#17 loop::ss#10 loop::plexShowNextYpos1_return#0 ] )
to:loop::@25
loop::@25: scope:[loop] from loop::plexShowNextYpos1
[32] (byte) loop::rasterY#0 ← (byte) loop::plexShowNextYpos1_return#0 - (byte/signed byte/word/signed word/dword/signed dword) 8 [ loop::sin_idx#1 plex_sprite_idx#15 plex_show_idx#15 plex_sprite_msb#17 loop::ss2#6 loop::rasterY#0 ] ( main:4::loop:9 [ loop::sin_idx#1 plex_sprite_idx#15 plex_show_idx#15 plex_sprite_msb#17 loop::ss2#6 loop::rasterY#0 ] )
[32] (byte) loop::rasterY#0 ← (byte) loop::plexShowNextYpos1_return#0 - (byte/signed byte/word/signed word/dword/signed dword) 8 [ loop::sin_idx#1 plex_sprite_idx#15 plex_show_idx#15 plex_sprite_msb#17 loop::ss#10 loop::rasterY#0 ] ( main:4::loop:9 [ loop::sin_idx#1 plex_sprite_idx#15 plex_show_idx#15 plex_sprite_msb#17 loop::ss#10 loop::rasterY#0 ] )
to:loop::@10
loop::@10: scope:[loop] from loop::@10 loop::@25
[33] if(*((const byte*) RASTER#0)<(byte) loop::rasterY#0) goto loop::@10 [ loop::sin_idx#1 plex_sprite_idx#15 plex_show_idx#15 plex_sprite_msb#17 loop::ss2#6 loop::rasterY#0 ] ( main:4::loop:9 [ loop::sin_idx#1 plex_sprite_idx#15 plex_show_idx#15 plex_sprite_msb#17 loop::ss2#6 loop::rasterY#0 ] )
[33] if(*((const byte*) RASTER#0)<(byte) loop::rasterY#0) goto loop::@10 [ loop::sin_idx#1 plex_sprite_idx#15 plex_show_idx#15 plex_sprite_msb#17 loop::ss#10 loop::rasterY#0 ] ( main:4::loop:9 [ loop::sin_idx#1 plex_sprite_idx#15 plex_show_idx#15 plex_sprite_msb#17 loop::ss#10 loop::rasterY#0 ] )
to:loop::@12
loop::@12: scope:[loop] from loop::@10
[34] *((const byte*) BORDERCOL#0) ← ++ *((const byte*) BORDERCOL#0) [ loop::sin_idx#1 plex_sprite_idx#15 plex_show_idx#15 plex_sprite_msb#17 loop::ss2#6 ] ( main:4::loop:9 [ loop::sin_idx#1 plex_sprite_idx#15 plex_show_idx#15 plex_sprite_msb#17 loop::ss2#6 ] )
[35] call plexShowSprite [ loop::sin_idx#1 plex_sprite_idx#15 plex_show_idx#15 plex_sprite_msb#17 loop::ss2#6 ] ( main:4::loop:9 [ loop::sin_idx#1 plex_sprite_idx#15 plex_show_idx#15 plex_sprite_msb#17 loop::ss2#6 ] )
[34] *((const byte*) BORDERCOL#0) ← ++ *((const byte*) BORDERCOL#0) [ loop::sin_idx#1 plex_sprite_idx#15 plex_show_idx#15 plex_sprite_msb#17 loop::ss#10 ] ( main:4::loop:9 [ loop::sin_idx#1 plex_sprite_idx#15 plex_show_idx#15 plex_sprite_msb#17 loop::ss#10 ] )
[35] call plexShowSprite [ loop::sin_idx#1 plex_sprite_idx#15 plex_show_idx#15 plex_sprite_msb#17 loop::ss#10 ] ( main:4::loop:9 [ loop::sin_idx#1 plex_sprite_idx#15 plex_show_idx#15 plex_sprite_msb#17 loop::ss#10 ] )
to:loop::@28
loop::@28: scope:[loop] from loop::@12
[36] (byte) loop::ss2#1 ← ++ (byte) loop::ss2#6 [ loop::sin_idx#1 plex_sprite_idx#15 plex_show_idx#15 plex_sprite_msb#17 loop::ss2#1 ] ( main:4::loop:9 [ loop::sin_idx#1 plex_sprite_idx#15 plex_show_idx#15 plex_sprite_msb#17 loop::ss2#1 ] )
[37] if((byte) loop::ss2#1!=(const byte) PLEX_COUNT#0-(byte/signed byte/word/signed word/dword/signed dword) 1+(byte/signed byte/word/signed word/dword/signed dword) 1) goto loop::@9 [ loop::sin_idx#1 plex_sprite_idx#15 plex_show_idx#15 plex_sprite_msb#17 loop::ss2#1 ] ( main:4::loop:9 [ loop::sin_idx#1 plex_sprite_idx#15 plex_show_idx#15 plex_sprite_msb#17 loop::ss2#1 ] )
[36] (byte) loop::ss#3 ← ++ (byte) loop::ss#10 [ loop::sin_idx#1 plex_sprite_idx#15 plex_show_idx#15 plex_sprite_msb#17 loop::ss#3 ] ( main:4::loop:9 [ loop::sin_idx#1 plex_sprite_idx#15 plex_show_idx#15 plex_sprite_msb#17 loop::ss#3 ] )
[37] if((byte) loop::ss#3!=(const byte) PLEX_COUNT#0-(byte/signed byte/word/signed word/dword/signed dword) 1+(byte/signed byte/word/signed word/dword/signed dword) 1) goto loop::@9 [ loop::sin_idx#1 plex_sprite_idx#15 plex_show_idx#15 plex_sprite_msb#17 loop::ss#3 ] ( main:4::loop:9 [ loop::sin_idx#1 plex_sprite_idx#15 plex_show_idx#15 plex_sprite_msb#17 loop::ss#3 ] )
to:loop::@23
loop::@23: scope:[loop] from loop::@28
[38] *((const byte*) BORDERCOL#0) ← (const byte) BLACK#0 [ loop::sin_idx#1 ] ( main:4::loop:9 [ loop::sin_idx#1 ] )
to:loop::@1
plexShowSprite: scope:[plexShowSprite] from loop::@12 loop::@8
[39] (byte) plex_sprite_msb#14 ← phi( loop::@12/(byte) plex_sprite_msb#17 loop::@8/(byte) plex_sprite_msb#29 ) [ plex_sprite_idx#13 plex_show_idx#13 plex_sprite_msb#14 ] ( main:4::loop:9::plexShowSprite:26 [ loop::sin_idx#1 loop::ss#2 plex_sprite_idx#13 plex_show_idx#13 plex_sprite_msb#14 ] main:4::loop:9::plexShowSprite:35 [ loop::sin_idx#1 loop::ss2#6 plex_sprite_idx#13 plex_show_idx#13 plex_sprite_msb#14 ] )
[39] (byte) plex_show_idx#13 ← phi( loop::@12/(byte) plex_show_idx#15 loop::@8/(byte) plex_show_idx#25 ) [ plex_sprite_idx#13 plex_show_idx#13 plex_sprite_msb#14 ] ( main:4::loop:9::plexShowSprite:26 [ loop::sin_idx#1 loop::ss#2 plex_sprite_idx#13 plex_show_idx#13 plex_sprite_msb#14 ] main:4::loop:9::plexShowSprite:35 [ loop::sin_idx#1 loop::ss2#6 plex_sprite_idx#13 plex_show_idx#13 plex_sprite_msb#14 ] )
[39] (byte) plex_sprite_idx#13 ← phi( loop::@12/(byte) plex_sprite_idx#15 loop::@8/(byte) plex_sprite_idx#24 ) [ plex_sprite_idx#13 plex_show_idx#13 plex_sprite_msb#14 ] ( main:4::loop:9::plexShowSprite:26 [ loop::sin_idx#1 loop::ss#2 plex_sprite_idx#13 plex_show_idx#13 plex_sprite_msb#14 ] main:4::loop:9::plexShowSprite:35 [ loop::sin_idx#1 loop::ss2#6 plex_sprite_idx#13 plex_show_idx#13 plex_sprite_msb#14 ] )
[40] (byte) plexShowSprite::plex_sprite_idx2#0 ← (byte) plex_sprite_idx#13 << (byte/signed byte/word/signed word/dword/signed dword) 1 [ plex_sprite_idx#13 plex_show_idx#13 plex_sprite_msb#14 plexShowSprite::plex_sprite_idx2#0 ] ( main:4::loop:9::plexShowSprite:26 [ loop::sin_idx#1 loop::ss#2 plex_sprite_idx#13 plex_show_idx#13 plex_sprite_msb#14 plexShowSprite::plex_sprite_idx2#0 ] main:4::loop:9::plexShowSprite:35 [ loop::sin_idx#1 loop::ss2#6 plex_sprite_idx#13 plex_show_idx#13 plex_sprite_msb#14 plexShowSprite::plex_sprite_idx2#0 ] )
[41] *((const byte*) SPRITES_YPOS#0 + (byte) plexShowSprite::plex_sprite_idx2#0) ← *((const byte[PLEX_COUNT#0]) PLEX_YPOS#0 + *((const byte[PLEX_COUNT#0]) PLEX_SORTED_IDX#0 + (byte) plex_show_idx#13)) [ plex_sprite_idx#13 plex_show_idx#13 plex_sprite_msb#14 plexShowSprite::plex_sprite_idx2#0 ] ( main:4::loop:9::plexShowSprite:26 [ loop::sin_idx#1 loop::ss#2 plex_sprite_idx#13 plex_show_idx#13 plex_sprite_msb#14 plexShowSprite::plex_sprite_idx2#0 ] main:4::loop:9::plexShowSprite:35 [ loop::sin_idx#1 loop::ss2#6 plex_sprite_idx#13 plex_show_idx#13 plex_sprite_msb#14 plexShowSprite::plex_sprite_idx2#0 ] )
[42] *((const byte*) PLEX_SCREEN_PTR#1 + (byte) plex_sprite_idx#13) ← *((const byte[PLEX_COUNT#0]) PLEX_PTR#0 + *((const byte[PLEX_COUNT#0]) PLEX_SORTED_IDX#0 + (byte) plex_show_idx#13)) [ plex_sprite_idx#13 plex_show_idx#13 plex_sprite_msb#14 plexShowSprite::plex_sprite_idx2#0 ] ( main:4::loop:9::plexShowSprite:26 [ loop::sin_idx#1 loop::ss#2 plex_sprite_idx#13 plex_show_idx#13 plex_sprite_msb#14 plexShowSprite::plex_sprite_idx2#0 ] main:4::loop:9::plexShowSprite:35 [ loop::sin_idx#1 loop::ss2#6 plex_sprite_idx#13 plex_show_idx#13 plex_sprite_msb#14 plexShowSprite::plex_sprite_idx2#0 ] )
[43] (byte) plexShowSprite::xpos_idx#0 ← *((const byte[PLEX_COUNT#0]) PLEX_SORTED_IDX#0 + (byte) plex_show_idx#13) << (byte/signed byte/word/signed word/dword/signed dword) 1 [ plex_sprite_idx#13 plex_show_idx#13 plex_sprite_msb#14 plexShowSprite::plex_sprite_idx2#0 plexShowSprite::xpos_idx#0 ] ( main:4::loop:9::plexShowSprite:26 [ loop::sin_idx#1 loop::ss#2 plex_sprite_idx#13 plex_show_idx#13 plex_sprite_msb#14 plexShowSprite::plex_sprite_idx2#0 plexShowSprite::xpos_idx#0 ] main:4::loop:9::plexShowSprite:35 [ loop::sin_idx#1 loop::ss2#6 plex_sprite_idx#13 plex_show_idx#13 plex_sprite_msb#14 plexShowSprite::plex_sprite_idx2#0 plexShowSprite::xpos_idx#0 ] )
[44] (byte~) plexShowSprite::$2 ← < *((const word[PLEX_COUNT#0]) PLEX_XPOS#0 + (byte) plexShowSprite::xpos_idx#0) [ plex_sprite_idx#13 plex_show_idx#13 plex_sprite_msb#14 plexShowSprite::plex_sprite_idx2#0 plexShowSprite::xpos_idx#0 plexShowSprite::$2 ] ( main:4::loop:9::plexShowSprite:26 [ loop::sin_idx#1 loop::ss#2 plex_sprite_idx#13 plex_show_idx#13 plex_sprite_msb#14 plexShowSprite::plex_sprite_idx2#0 plexShowSprite::xpos_idx#0 plexShowSprite::$2 ] main:4::loop:9::plexShowSprite:35 [ loop::sin_idx#1 loop::ss2#6 plex_sprite_idx#13 plex_show_idx#13 plex_sprite_msb#14 plexShowSprite::plex_sprite_idx2#0 plexShowSprite::xpos_idx#0 plexShowSprite::$2 ] )
[45] *((const byte*) SPRITES_XPOS#0 + (byte) plexShowSprite::plex_sprite_idx2#0) ← (byte~) plexShowSprite::$2 [ plex_sprite_idx#13 plex_show_idx#13 plex_sprite_msb#14 plexShowSprite::xpos_idx#0 ] ( main:4::loop:9::plexShowSprite:26 [ loop::sin_idx#1 loop::ss#2 plex_sprite_idx#13 plex_show_idx#13 plex_sprite_msb#14 plexShowSprite::xpos_idx#0 ] main:4::loop:9::plexShowSprite:35 [ loop::sin_idx#1 loop::ss2#6 plex_sprite_idx#13 plex_show_idx#13 plex_sprite_msb#14 plexShowSprite::xpos_idx#0 ] )
[46] (byte~) plexShowSprite::$3 ← > *((const word[PLEX_COUNT#0]) PLEX_XPOS#0 + (byte) plexShowSprite::xpos_idx#0) [ plex_sprite_idx#13 plex_show_idx#13 plex_sprite_msb#14 plexShowSprite::$3 ] ( main:4::loop:9::plexShowSprite:26 [ loop::sin_idx#1 loop::ss#2 plex_sprite_idx#13 plex_show_idx#13 plex_sprite_msb#14 plexShowSprite::$3 ] main:4::loop:9::plexShowSprite:35 [ loop::sin_idx#1 loop::ss2#6 plex_sprite_idx#13 plex_show_idx#13 plex_sprite_msb#14 plexShowSprite::$3 ] )
[47] if((byte~) plexShowSprite::$3!=(byte/signed byte/word/signed word/dword/signed dword) 0) goto plexShowSprite::@1 [ plex_sprite_idx#13 plex_show_idx#13 plex_sprite_msb#14 ] ( main:4::loop:9::plexShowSprite:26 [ loop::sin_idx#1 loop::ss#2 plex_sprite_idx#13 plex_show_idx#13 plex_sprite_msb#14 ] main:4::loop:9::plexShowSprite:35 [ loop::sin_idx#1 loop::ss2#6 plex_sprite_idx#13 plex_show_idx#13 plex_sprite_msb#14 ] )
[39] (byte) plex_sprite_msb#14 ← phi( loop::@12/(byte) plex_sprite_msb#17 loop::@8/(byte) plex_sprite_msb#29 ) [ plex_sprite_idx#13 plex_show_idx#13 plex_sprite_msb#14 ] ( main:4::loop:9::plexShowSprite:26 [ loop::sin_idx#1 loop::ss#4 plex_sprite_idx#13 plex_show_idx#13 plex_sprite_msb#14 ] main:4::loop:9::plexShowSprite:35 [ loop::sin_idx#1 loop::ss#10 plex_sprite_idx#13 plex_show_idx#13 plex_sprite_msb#14 ] )
[39] (byte) plex_show_idx#13 ← phi( loop::@12/(byte) plex_show_idx#15 loop::@8/(byte) plex_show_idx#25 ) [ plex_sprite_idx#13 plex_show_idx#13 plex_sprite_msb#14 ] ( main:4::loop:9::plexShowSprite:26 [ loop::sin_idx#1 loop::ss#4 plex_sprite_idx#13 plex_show_idx#13 plex_sprite_msb#14 ] main:4::loop:9::plexShowSprite:35 [ loop::sin_idx#1 loop::ss#10 plex_sprite_idx#13 plex_show_idx#13 plex_sprite_msb#14 ] )
[39] (byte) plex_sprite_idx#13 ← phi( loop::@12/(byte) plex_sprite_idx#15 loop::@8/(byte) plex_sprite_idx#24 ) [ plex_sprite_idx#13 plex_show_idx#13 plex_sprite_msb#14 ] ( main:4::loop:9::plexShowSprite:26 [ loop::sin_idx#1 loop::ss#4 plex_sprite_idx#13 plex_show_idx#13 plex_sprite_msb#14 ] main:4::loop:9::plexShowSprite:35 [ loop::sin_idx#1 loop::ss#10 plex_sprite_idx#13 plex_show_idx#13 plex_sprite_msb#14 ] )
[40] (byte) plexShowSprite::plex_sprite_idx2#0 ← (byte) plex_sprite_idx#13 << (byte/signed byte/word/signed word/dword/signed dword) 1 [ plex_sprite_idx#13 plex_show_idx#13 plex_sprite_msb#14 plexShowSprite::plex_sprite_idx2#0 ] ( main:4::loop:9::plexShowSprite:26 [ loop::sin_idx#1 loop::ss#4 plex_sprite_idx#13 plex_show_idx#13 plex_sprite_msb#14 plexShowSprite::plex_sprite_idx2#0 ] main:4::loop:9::plexShowSprite:35 [ loop::sin_idx#1 loop::ss#10 plex_sprite_idx#13 plex_show_idx#13 plex_sprite_msb#14 plexShowSprite::plex_sprite_idx2#0 ] )
[41] *((const byte*) SPRITES_YPOS#0 + (byte) plexShowSprite::plex_sprite_idx2#0) ← *((const byte[PLEX_COUNT#0]) PLEX_YPOS#0 + *((const byte[PLEX_COUNT#0]) PLEX_SORTED_IDX#0 + (byte) plex_show_idx#13)) [ plex_sprite_idx#13 plex_show_idx#13 plex_sprite_msb#14 plexShowSprite::plex_sprite_idx2#0 ] ( main:4::loop:9::plexShowSprite:26 [ loop::sin_idx#1 loop::ss#4 plex_sprite_idx#13 plex_show_idx#13 plex_sprite_msb#14 plexShowSprite::plex_sprite_idx2#0 ] main:4::loop:9::plexShowSprite:35 [ loop::sin_idx#1 loop::ss#10 plex_sprite_idx#13 plex_show_idx#13 plex_sprite_msb#14 plexShowSprite::plex_sprite_idx2#0 ] )
[42] *((const byte*) PLEX_SCREEN_PTR#1 + (byte) plex_sprite_idx#13) ← *((const byte[PLEX_COUNT#0]) PLEX_PTR#0 + *((const byte[PLEX_COUNT#0]) PLEX_SORTED_IDX#0 + (byte) plex_show_idx#13)) [ plex_sprite_idx#13 plex_show_idx#13 plex_sprite_msb#14 plexShowSprite::plex_sprite_idx2#0 ] ( main:4::loop:9::plexShowSprite:26 [ loop::sin_idx#1 loop::ss#4 plex_sprite_idx#13 plex_show_idx#13 plex_sprite_msb#14 plexShowSprite::plex_sprite_idx2#0 ] main:4::loop:9::plexShowSprite:35 [ loop::sin_idx#1 loop::ss#10 plex_sprite_idx#13 plex_show_idx#13 plex_sprite_msb#14 plexShowSprite::plex_sprite_idx2#0 ] )
[43] (byte) plexShowSprite::xpos_idx#0 ← *((const byte[PLEX_COUNT#0]) PLEX_SORTED_IDX#0 + (byte) plex_show_idx#13) << (byte/signed byte/word/signed word/dword/signed dword) 1 [ plex_sprite_idx#13 plex_show_idx#13 plex_sprite_msb#14 plexShowSprite::plex_sprite_idx2#0 plexShowSprite::xpos_idx#0 ] ( main:4::loop:9::plexShowSprite:26 [ loop::sin_idx#1 loop::ss#4 plex_sprite_idx#13 plex_show_idx#13 plex_sprite_msb#14 plexShowSprite::plex_sprite_idx2#0 plexShowSprite::xpos_idx#0 ] main:4::loop:9::plexShowSprite:35 [ loop::sin_idx#1 loop::ss#10 plex_sprite_idx#13 plex_show_idx#13 plex_sprite_msb#14 plexShowSprite::plex_sprite_idx2#0 plexShowSprite::xpos_idx#0 ] )
[44] (byte~) plexShowSprite::$2 ← < *((const word[PLEX_COUNT#0]) PLEX_XPOS#0 + (byte) plexShowSprite::xpos_idx#0) [ plex_sprite_idx#13 plex_show_idx#13 plex_sprite_msb#14 plexShowSprite::plex_sprite_idx2#0 plexShowSprite::xpos_idx#0 plexShowSprite::$2 ] ( main:4::loop:9::plexShowSprite:26 [ loop::sin_idx#1 loop::ss#4 plex_sprite_idx#13 plex_show_idx#13 plex_sprite_msb#14 plexShowSprite::plex_sprite_idx2#0 plexShowSprite::xpos_idx#0 plexShowSprite::$2 ] main:4::loop:9::plexShowSprite:35 [ loop::sin_idx#1 loop::ss#10 plex_sprite_idx#13 plex_show_idx#13 plex_sprite_msb#14 plexShowSprite::plex_sprite_idx2#0 plexShowSprite::xpos_idx#0 plexShowSprite::$2 ] )
[45] *((const byte*) SPRITES_XPOS#0 + (byte) plexShowSprite::plex_sprite_idx2#0) ← (byte~) plexShowSprite::$2 [ plex_sprite_idx#13 plex_show_idx#13 plex_sprite_msb#14 plexShowSprite::xpos_idx#0 ] ( main:4::loop:9::plexShowSprite:26 [ loop::sin_idx#1 loop::ss#4 plex_sprite_idx#13 plex_show_idx#13 plex_sprite_msb#14 plexShowSprite::xpos_idx#0 ] main:4::loop:9::plexShowSprite:35 [ loop::sin_idx#1 loop::ss#10 plex_sprite_idx#13 plex_show_idx#13 plex_sprite_msb#14 plexShowSprite::xpos_idx#0 ] )
[46] (byte~) plexShowSprite::$3 ← > *((const word[PLEX_COUNT#0]) PLEX_XPOS#0 + (byte) plexShowSprite::xpos_idx#0) [ plex_sprite_idx#13 plex_show_idx#13 plex_sprite_msb#14 plexShowSprite::$3 ] ( main:4::loop:9::plexShowSprite:26 [ loop::sin_idx#1 loop::ss#4 plex_sprite_idx#13 plex_show_idx#13 plex_sprite_msb#14 plexShowSprite::$3 ] main:4::loop:9::plexShowSprite:35 [ loop::sin_idx#1 loop::ss#10 plex_sprite_idx#13 plex_show_idx#13 plex_sprite_msb#14 plexShowSprite::$3 ] )
[47] if((byte~) plexShowSprite::$3!=(byte/signed byte/word/signed word/dword/signed dword) 0) goto plexShowSprite::@1 [ plex_sprite_idx#13 plex_show_idx#13 plex_sprite_msb#14 ] ( main:4::loop:9::plexShowSprite:26 [ loop::sin_idx#1 loop::ss#4 plex_sprite_idx#13 plex_show_idx#13 plex_sprite_msb#14 ] main:4::loop:9::plexShowSprite:35 [ loop::sin_idx#1 loop::ss#10 plex_sprite_idx#13 plex_show_idx#13 plex_sprite_msb#14 ] )
to:plexShowSprite::@4
plexShowSprite::@4: scope:[plexShowSprite] from plexShowSprite
[48] (byte/word/dword~) plexShowSprite::$5 ← (byte/word/signed word/dword/signed dword) 255 ^ (byte) plex_sprite_msb#14 [ plex_sprite_idx#13 plex_show_idx#13 plex_sprite_msb#14 plexShowSprite::$5 ] ( main:4::loop:9::plexShowSprite:26 [ loop::sin_idx#1 loop::ss#2 plex_sprite_idx#13 plex_show_idx#13 plex_sprite_msb#14 plexShowSprite::$5 ] main:4::loop:9::plexShowSprite:35 [ loop::sin_idx#1 loop::ss2#6 plex_sprite_idx#13 plex_show_idx#13 plex_sprite_msb#14 plexShowSprite::$5 ] )
[49] *((const byte*) SPRITES_XMSB#0) ← *((const byte*) SPRITES_XMSB#0) & (byte/word/dword~) plexShowSprite::$5 [ plex_sprite_idx#13 plex_show_idx#13 plex_sprite_msb#14 ] ( main:4::loop:9::plexShowSprite:26 [ loop::sin_idx#1 loop::ss#2 plex_sprite_idx#13 plex_show_idx#13 plex_sprite_msb#14 ] main:4::loop:9::plexShowSprite:35 [ loop::sin_idx#1 loop::ss2#6 plex_sprite_idx#13 plex_show_idx#13 plex_sprite_msb#14 ] )
[48] (byte/word/dword~) plexShowSprite::$5 ← (byte/word/signed word/dword/signed dword) 255 ^ (byte) plex_sprite_msb#14 [ plex_sprite_idx#13 plex_show_idx#13 plex_sprite_msb#14 plexShowSprite::$5 ] ( main:4::loop:9::plexShowSprite:26 [ loop::sin_idx#1 loop::ss#4 plex_sprite_idx#13 plex_show_idx#13 plex_sprite_msb#14 plexShowSprite::$5 ] main:4::loop:9::plexShowSprite:35 [ loop::sin_idx#1 loop::ss#10 plex_sprite_idx#13 plex_show_idx#13 plex_sprite_msb#14 plexShowSprite::$5 ] )
[49] *((const byte*) SPRITES_XMSB#0) ← *((const byte*) SPRITES_XMSB#0) & (byte/word/dword~) plexShowSprite::$5 [ plex_sprite_idx#13 plex_show_idx#13 plex_sprite_msb#14 ] ( main:4::loop:9::plexShowSprite:26 [ loop::sin_idx#1 loop::ss#4 plex_sprite_idx#13 plex_show_idx#13 plex_sprite_msb#14 ] main:4::loop:9::plexShowSprite:35 [ loop::sin_idx#1 loop::ss#10 plex_sprite_idx#13 plex_show_idx#13 plex_sprite_msb#14 ] )
to:plexShowSprite::@2
plexShowSprite::@2: scope:[plexShowSprite] from plexShowSprite::@1 plexShowSprite::@4
[50] (byte/signed word/word/dword/signed dword~) plexShowSprite::$6 ← (byte) plex_sprite_idx#13 + (byte/signed byte/word/signed word/dword/signed dword) 1 [ plex_show_idx#13 plex_sprite_msb#14 plexShowSprite::$6 ] ( main:4::loop:9::plexShowSprite:26 [ loop::sin_idx#1 loop::ss#2 plex_show_idx#13 plex_sprite_msb#14 plexShowSprite::$6 ] main:4::loop:9::plexShowSprite:35 [ loop::sin_idx#1 loop::ss2#6 plex_show_idx#13 plex_sprite_msb#14 plexShowSprite::$6 ] )
[51] (byte) plex_sprite_idx#15 ← (byte/signed word/word/dword/signed dword~) plexShowSprite::$6 & (byte/signed byte/word/signed word/dword/signed dword) 7 [ plex_sprite_idx#15 plex_show_idx#13 plex_sprite_msb#14 ] ( main:4::loop:9::plexShowSprite:26 [ loop::sin_idx#1 loop::ss#2 plex_sprite_idx#15 plex_show_idx#13 plex_sprite_msb#14 ] main:4::loop:9::plexShowSprite:35 [ loop::sin_idx#1 loop::ss2#6 plex_sprite_idx#15 plex_show_idx#13 plex_sprite_msb#14 ] )
[52] (byte) plex_show_idx#15 ← ++ (byte) plex_show_idx#13 [ plex_sprite_idx#15 plex_show_idx#15 plex_sprite_msb#14 ] ( main:4::loop:9::plexShowSprite:26 [ loop::sin_idx#1 loop::ss#2 plex_sprite_idx#15 plex_show_idx#15 plex_sprite_msb#14 ] main:4::loop:9::plexShowSprite:35 [ loop::sin_idx#1 loop::ss2#6 plex_sprite_idx#15 plex_show_idx#15 plex_sprite_msb#14 ] )
[53] (byte) plex_sprite_msb#26 ← (byte) plex_sprite_msb#14 << (byte/signed byte/word/signed word/dword/signed dword) 1 [ plex_sprite_idx#15 plex_show_idx#15 plex_sprite_msb#26 ] ( main:4::loop:9::plexShowSprite:26 [ loop::sin_idx#1 loop::ss#2 plex_sprite_idx#15 plex_show_idx#15 plex_sprite_msb#26 ] main:4::loop:9::plexShowSprite:35 [ loop::sin_idx#1 loop::ss2#6 plex_sprite_idx#15 plex_show_idx#15 plex_sprite_msb#26 ] )
[54] if((byte) plex_sprite_msb#26!=(byte/signed byte/word/signed word/dword/signed dword) 0) goto plexShowSprite::@7 [ plex_sprite_idx#15 plex_show_idx#15 plex_sprite_msb#26 ] ( main:4::loop:9::plexShowSprite:26 [ loop::sin_idx#1 loop::ss#2 plex_sprite_idx#15 plex_show_idx#15 plex_sprite_msb#26 ] main:4::loop:9::plexShowSprite:35 [ loop::sin_idx#1 loop::ss2#6 plex_sprite_idx#15 plex_show_idx#15 plex_sprite_msb#26 ] )
[50] (byte/signed word/word/dword/signed dword~) plexShowSprite::$6 ← (byte) plex_sprite_idx#13 + (byte/signed byte/word/signed word/dword/signed dword) 1 [ plex_show_idx#13 plex_sprite_msb#14 plexShowSprite::$6 ] ( main:4::loop:9::plexShowSprite:26 [ loop::sin_idx#1 loop::ss#4 plex_show_idx#13 plex_sprite_msb#14 plexShowSprite::$6 ] main:4::loop:9::plexShowSprite:35 [ loop::sin_idx#1 loop::ss#10 plex_show_idx#13 plex_sprite_msb#14 plexShowSprite::$6 ] )
[51] (byte) plex_sprite_idx#15 ← (byte/signed word/word/dword/signed dword~) plexShowSprite::$6 & (byte/signed byte/word/signed word/dword/signed dword) 7 [ plex_sprite_idx#15 plex_show_idx#13 plex_sprite_msb#14 ] ( main:4::loop:9::plexShowSprite:26 [ loop::sin_idx#1 loop::ss#4 plex_sprite_idx#15 plex_show_idx#13 plex_sprite_msb#14 ] main:4::loop:9::plexShowSprite:35 [ loop::sin_idx#1 loop::ss#10 plex_sprite_idx#15 plex_show_idx#13 plex_sprite_msb#14 ] )
[52] (byte) plex_show_idx#15 ← ++ (byte) plex_show_idx#13 [ plex_sprite_idx#15 plex_show_idx#15 plex_sprite_msb#14 ] ( main:4::loop:9::plexShowSprite:26 [ loop::sin_idx#1 loop::ss#4 plex_sprite_idx#15 plex_show_idx#15 plex_sprite_msb#14 ] main:4::loop:9::plexShowSprite:35 [ loop::sin_idx#1 loop::ss#10 plex_sprite_idx#15 plex_show_idx#15 plex_sprite_msb#14 ] )
[53] (byte) plex_sprite_msb#26 ← (byte) plex_sprite_msb#14 << (byte/signed byte/word/signed word/dword/signed dword) 1 [ plex_sprite_idx#15 plex_show_idx#15 plex_sprite_msb#26 ] ( main:4::loop:9::plexShowSprite:26 [ loop::sin_idx#1 loop::ss#4 plex_sprite_idx#15 plex_show_idx#15 plex_sprite_msb#26 ] main:4::loop:9::plexShowSprite:35 [ loop::sin_idx#1 loop::ss#10 plex_sprite_idx#15 plex_show_idx#15 plex_sprite_msb#26 ] )
[54] if((byte) plex_sprite_msb#26!=(byte/signed byte/word/signed word/dword/signed dword) 0) goto plexShowSprite::@7 [ plex_sprite_idx#15 plex_show_idx#15 plex_sprite_msb#26 ] ( main:4::loop:9::plexShowSprite:26 [ loop::sin_idx#1 loop::ss#4 plex_sprite_idx#15 plex_show_idx#15 plex_sprite_msb#26 ] main:4::loop:9::plexShowSprite:35 [ loop::sin_idx#1 loop::ss#10 plex_sprite_idx#15 plex_show_idx#15 plex_sprite_msb#26 ] )
to:plexShowSprite::@return
plexShowSprite::@return: scope:[plexShowSprite] from plexShowSprite::@2 plexShowSprite::@7
[55] (byte) plex_sprite_msb#17 ← phi( plexShowSprite::@7/(byte) plex_sprite_msb#26 plexShowSprite::@2/(byte/signed byte/word/signed word/dword/signed dword) 1 ) [ plex_sprite_idx#15 plex_show_idx#15 plex_sprite_msb#17 ] ( main:4::loop:9::plexShowSprite:26 [ loop::sin_idx#1 loop::ss#2 plex_sprite_idx#15 plex_show_idx#15 plex_sprite_msb#17 ] main:4::loop:9::plexShowSprite:35 [ loop::sin_idx#1 loop::ss2#6 plex_sprite_idx#15 plex_show_idx#15 plex_sprite_msb#17 ] )
[56] return [ plex_sprite_idx#15 plex_show_idx#15 plex_sprite_msb#17 ] ( main:4::loop:9::plexShowSprite:26 [ loop::sin_idx#1 loop::ss#2 plex_sprite_idx#15 plex_show_idx#15 plex_sprite_msb#17 ] main:4::loop:9::plexShowSprite:35 [ loop::sin_idx#1 loop::ss2#6 plex_sprite_idx#15 plex_show_idx#15 plex_sprite_msb#17 ] )
[55] (byte) plex_sprite_msb#17 ← phi( plexShowSprite::@7/(byte) plex_sprite_msb#26 plexShowSprite::@2/(byte/signed byte/word/signed word/dword/signed dword) 1 ) [ plex_sprite_idx#15 plex_show_idx#15 plex_sprite_msb#17 ] ( main:4::loop:9::plexShowSprite:26 [ loop::sin_idx#1 loop::ss#4 plex_sprite_idx#15 plex_show_idx#15 plex_sprite_msb#17 ] main:4::loop:9::plexShowSprite:35 [ loop::sin_idx#1 loop::ss#10 plex_sprite_idx#15 plex_show_idx#15 plex_sprite_msb#17 ] )
[56] return [ plex_sprite_idx#15 plex_show_idx#15 plex_sprite_msb#17 ] ( main:4::loop:9::plexShowSprite:26 [ loop::sin_idx#1 loop::ss#4 plex_sprite_idx#15 plex_show_idx#15 plex_sprite_msb#17 ] main:4::loop:9::plexShowSprite:35 [ loop::sin_idx#1 loop::ss#10 plex_sprite_idx#15 plex_show_idx#15 plex_sprite_msb#17 ] )
to:@return
plexShowSprite::@7: scope:[plexShowSprite] from plexShowSprite::@2
[57] phi() [ plex_sprite_idx#15 plex_show_idx#15 plex_sprite_msb#26 ] ( main:4::loop:9::plexShowSprite:26 [ loop::sin_idx#1 loop::ss#2 plex_sprite_idx#15 plex_show_idx#15 plex_sprite_msb#26 ] main:4::loop:9::plexShowSprite:35 [ loop::sin_idx#1 loop::ss2#6 plex_sprite_idx#15 plex_show_idx#15 plex_sprite_msb#26 ] )
[57] phi() [ plex_sprite_idx#15 plex_show_idx#15 plex_sprite_msb#26 ] ( main:4::loop:9::plexShowSprite:26 [ loop::sin_idx#1 loop::ss#4 plex_sprite_idx#15 plex_show_idx#15 plex_sprite_msb#26 ] main:4::loop:9::plexShowSprite:35 [ loop::sin_idx#1 loop::ss#10 plex_sprite_idx#15 plex_show_idx#15 plex_sprite_msb#26 ] )
to:plexShowSprite::@return
plexShowSprite::@1: scope:[plexShowSprite] from plexShowSprite
[58] *((const byte*) SPRITES_XMSB#0) ← *((const byte*) SPRITES_XMSB#0) | (byte) plex_sprite_msb#14 [ plex_sprite_idx#13 plex_show_idx#13 plex_sprite_msb#14 ] ( main:4::loop:9::plexShowSprite:26 [ loop::sin_idx#1 loop::ss#2 plex_sprite_idx#13 plex_show_idx#13 plex_sprite_msb#14 ] main:4::loop:9::plexShowSprite:35 [ loop::sin_idx#1 loop::ss2#6 plex_sprite_idx#13 plex_show_idx#13 plex_sprite_msb#14 ] )
[58] *((const byte*) SPRITES_XMSB#0) ← *((const byte*) SPRITES_XMSB#0) | (byte) plex_sprite_msb#14 [ plex_sprite_idx#13 plex_show_idx#13 plex_sprite_msb#14 ] ( main:4::loop:9::plexShowSprite:26 [ loop::sin_idx#1 loop::ss#4 plex_sprite_idx#13 plex_show_idx#13 plex_sprite_msb#14 ] main:4::loop:9::plexShowSprite:35 [ loop::sin_idx#1 loop::ss#10 plex_sprite_idx#13 plex_show_idx#13 plex_sprite_msb#14 ] )
to:plexShowSprite::@2
plexSort: scope:[plexSort] from loop::@18
[59] phi() [ ] ( main:4::loop:9::plexSort:23 [ loop::sin_idx#1 ] )

View File

@ -84,10 +84,9 @@
(byte) loop::sin_idx#6 sin_idx zp ZP_BYTE:2 3.666666666666667
(byte) loop::ss
(byte) loop::ss#1 ss zp ZP_BYTE:3 151.5
(byte) loop::ss#2 ss zp ZP_BYTE:3 101.0
(byte) loop::ss2
(byte) loop::ss2#1 ss2 zp ZP_BYTE:3 151.5
(byte) loop::ss2#6 ss2 zp ZP_BYTE:3 28.857142857142858
(byte) loop::ss#10 ss zp ZP_BYTE:3 28.857142857142858
(byte) loop::ss#3 ss zp ZP_BYTE:3 151.5
(byte) loop::ss#4 ss zp ZP_BYTE:3 101.0
(byte) loop::sy
(byte) loop::sy#1 reg byte y 151.5
(byte) loop::sy#2 reg byte y 101.0
@ -159,7 +158,7 @@
zp ZP_BYTE:2 [ loop::sin_idx#6 loop::sin_idx#1 ]
reg byte x [ loop::y_idx#2 loop::y_idx#3 loop::y_idx#1 ]
reg byte y [ loop::sy#2 loop::sy#1 ]
zp ZP_BYTE:3 [ loop::ss#2 loop::ss#1 loop::ss2#6 loop::ss2#1 plexSort::m#2 plexSort::m#1 ]
zp ZP_BYTE:3 [ loop::ss#4 loop::ss#1 loop::ss#10 loop::ss#3 plexSort::m#2 plexSort::m#1 ]
zp ZP_BYTE:4 [ plex_sprite_idx#13 plex_sprite_idx#24 plex_sprite_idx#15 plexSort::nxt_idx#0 ]
zp ZP_BYTE:5 [ plex_show_idx#13 plex_show_idx#25 plex_show_idx#15 plexSort::nxt_y#0 ]
zp ZP_BYTE:6 [ plex_sprite_msb#14 plex_sprite_msb#29 plex_sprite_msb#17 plex_sprite_msb#26 ]