diff --git a/src/main/fragment/vbsz1=vbsz1_minus_vbuc1.asm b/src/main/fragment/vbsz1=vbsz1_minus_vbuc1.asm new file mode 100644 index 000000000..1c74cc30b --- /dev/null +++ b/src/main/fragment/vbsz1=vbsz1_minus_vbuc1.asm @@ -0,0 +1,4 @@ +lda {z1} +sec +sbc #{c1} +sta {z1} \ No newline at end of file diff --git a/src/main/fragment/vbsz1=vbsz1_plus_2.asm b/src/main/fragment/vbsz1=vbsz1_plus_2.asm new file mode 100644 index 000000000..0b3369a31 --- /dev/null +++ b/src/main/fragment/vbsz1=vbsz1_plus_2.asm @@ -0,0 +1,2 @@ +inc {z1} +inc {z1} \ No newline at end of file diff --git a/src/test/kc/examples/3d/3d.kc b/src/test/kc/examples/3d/3d.kc index bf89334a4..404d3d146 100644 --- a/src/test/kc/examples/3d/3d.kc +++ b/src/test/kc/examples/3d/3d.kc @@ -28,7 +28,7 @@ void main() { *psp1 = (word)mulf_sqr1; *psp2 = (word)mulf_sqr2; - debug_print_init(); + //debug_print_init(); //calculate_matrix(1,1,1); @@ -36,9 +36,9 @@ void main() { } // Positions to rotate -signed byte[8] xs = { -95, 95, 00, 00, 00, 00, 00, 63}; -signed byte[8] ys = { 00, 00, -95, 95, 00, 00, 00, 00}; -signed byte[8] zs = { 00, 00, 00, 00, -95, 95, -00, 00}; +signed byte[8] xs = { -52, -52, -52, 0, 0, 52, 52, 52}; +signed byte[8] ys = { -52, 0, 52, -52, 52, -52, 0, 52}; +signed byte[8] zs = { 52, 52, 52, 52, 52, 52, 52, 52}; // Rotated positions signed byte[8] xrs; signed byte[8] yrs; @@ -58,8 +58,11 @@ void anim() { //signed byte xmax = 0; while(true) { while(*RASTER!=$ff) {} + //while(*RASTER!=$fe) {} + //while(*RASTER!=$fd) {} (*BORDERCOL)++; - calculate_matrix_16(sx,sy,sz); + //calculate_matrix_16(sx,sy,sz); + calculate_matrix(sx,sy,sz); store_matrix(); for(byte i: 0..7) { (*BORDERCOL)++; @@ -73,16 +76,16 @@ void anim() { xps[i] = *xp; yps[i] = *yp; byte i2 = i<<1; - SPRITES_XPOS[i2] = $80+(byte)((*xr)); - SPRITES_YPOS[i2] = $80+(byte)((*yr)); + SPRITES_XPOS[i2] = $80+(byte)((*xp)); + SPRITES_YPOS[i2] = $80+(byte)((*yp)); } *BORDERCOL = LIGHT_GREY; - debug_print(); + //debug_print(); *BORDERCOL = LIGHT_BLUE; // Increment angles - sx -=1; - sy +=1; - sz -=1; + sx +=2; + sy -=3; + //sz +=1; } } @@ -163,7 +166,7 @@ void sprites_init() { byte* sprites_ptr = SCREEN+$3f8; for(byte i: 0..7) { sprites_ptr[i] = (byte)(SPRITE/$40); - SPRITES_COLS[i] = 8+i; + SPRITES_COLS[i] = GREEN; //8+i; } } @@ -201,15 +204,14 @@ void calculate_matrix(signed byte sx, signed byte sy, signed byte sz) { void calculate_matrix_16(signed byte sx, signed byte sy, signed byte sz) { signed byte t1 = sy-sz; signed byte t2 = sy+sz; - signed word cosh_t1 = (signed word){ COSH_HI[t1], COSH_LO[t1] }; signed word cosh_t2 = (signed word){ COSH_HI[t2], COSH_LO[t2] }; - rotation_matrix[0] = (signed byte)>(cosh_t1 + cosh_t2); + rotation_matrix[0] = round_hi(cosh_t1 + cosh_t2); signed word sinh_t1 = (signed word){ SINH_HI[t1], SINH_LO[t1] }; signed word sinh_t2 = (signed word){ SINH_HI[t2], SINH_LO[t2] }; - rotation_matrix[1] = (signed byte)>(sinh_t1 - sinh_t2); + rotation_matrix[1] = round_hi(sinh_t1 - sinh_t2); signed word sinh_sy = (signed word){ SINH_HI[sy], SINH_LO[sy] }; - rotation_matrix[2] = (signed byte)>(sinh_sy+sinh_sy); + rotation_matrix[2] = round_hi(sinh_sy+sinh_sy); signed byte t3 = sx+sz; signed byte t4 = sx-sz; signed byte t5 = sx+t2; // = sx+sy+sz @@ -222,24 +224,30 @@ void calculate_matrix_16(signed byte sx, signed byte sy, signed byte sz) { signed word cosq_t6 = (signed word){ COSQ_HI[t6], COSH_LO[t6] }; signed word cosq_t7 = (signed word){ COSQ_HI[t7], COSH_LO[t7] }; signed word cosq_t8 = (signed word){ COSQ_HI[t8], COSH_LO[t8] }; - rotation_matrix[3] = (signed byte)>(sinh_t3 - sinh_t4 + cosq_t6 - cosq_t5 + cosq_t8 - cosq_t7); - rotation_matrix[7] = (signed byte)>(sinh_t3 + sinh_t4 + cosq_t6 - cosq_t5 + cosq_t7 - cosq_t8); + rotation_matrix[3] = round_hi(sinh_t3 - sinh_t4 + cosq_t6 - cosq_t5 + cosq_t8 - cosq_t7); + rotation_matrix[7] = round_hi(sinh_t3 + sinh_t4 + cosq_t6 - cosq_t5 + cosq_t7 - cosq_t8); signed word cosh_t3 = (signed word){ COSH_HI[t3], COSH_LO[t3] }; signed word cosh_t4 = (signed word){ COSH_HI[t4], COSH_LO[t4] }; signed word sinq_t5 = (signed word){ SINQ_HI[t5], SINH_LO[t5] }; signed word sinq_t6 = (signed word){ SINQ_HI[t6], SINH_LO[t6] }; signed word sinq_t7 = (signed word){ SINQ_HI[t7], SINH_LO[t7] }; signed word sinq_t8 = (signed word){ SINQ_HI[t8], SINH_LO[t8] }; - rotation_matrix[4] = (signed byte)>( cosh_t3 + cosh_t4 + sinq_t5 - sinq_t6 - sinq_t7 - sinq_t8); - rotation_matrix[6] = (signed byte)>( cosh_t4 - cosh_t3 + sinq_t6 - sinq_t5 - sinq_t7 - sinq_t8); + rotation_matrix[4] = round_hi( cosh_t3 + cosh_t4 + sinq_t5 - sinq_t6 - sinq_t7 - sinq_t8); + rotation_matrix[6] = round_hi( cosh_t4 - cosh_t3 + sinq_t6 - sinq_t5 - sinq_t7 - sinq_t8); signed byte t9 = sy-sx; signed byte t10 = sy+sx; signed word sinh_t9 = (signed word){ SINH_HI[t9], SINH_LO[t9] }; signed word sinh_t10 = (signed word){ SINH_HI[t10], SINH_LO[t10] }; - rotation_matrix[5] = (signed byte)>( sinh_t9 - sinh_t10); + rotation_matrix[5] = round_hi( sinh_t9 - sinh_t10); signed word cosh_t9 = (signed word){ COSH_HI[t9], COSH_LO[t9] }; signed word cosh_t10 = (signed word){ COSH_HI[t10], COSH_LO[t10] }; - rotation_matrix[8] = (signed byte)>( cosh_t9 + cosh_t10 ); + rotation_matrix[8] = round_hi( cosh_t9 + cosh_t10 ); +} + +// Returns the rounded high byte of the passed signed word. +// Examines the lower byte to determine whether to round up or down +signed byte round_hi(signed word val) { + return (signed byte)>(val+$80); } diff --git a/src/test/ref/examples/3d/3d.asm b/src/test/ref/examples/3d/3d.asm index fbc9c717f..01c9c1191 100644 --- a/src/test/ref/examples/3d/3d.asm +++ b/src/test/ref/examples/3d/3d.asm @@ -7,9 +7,9 @@ .label SPRITES_ENABLE = $d015 .label BORDERCOL = $d020 .label SPRITES_COLS = $d027 + .const GREEN = 5 .const LIGHT_BLUE = $e .const LIGHT_GREY = $f - .label print_screen = $400 .label xr = $f0 .label yr = $f1 .label zr = $f2 @@ -18,7 +18,7 @@ .label yp = $f5 .label psp1 = $f6 .label psp2 = $f8 - .label SCREEN = $400 + .const sz = 0 .label mulf_sqr1 = $2400 .label mulf_sqr2 = $2600 .label SPRITE = $3000 @@ -29,12 +29,10 @@ .label SINH_HI = $4200 .label SINQ_LO = $4400 .label SINQ_HI = $4600 - .label COSH_LO = SINH_LO+$40 - .label COSH_HI = SINH_HI+$40 - .label COSQ_HI = SINQ_HI+$40 + .label COSH = SINH+$40 + .label COSQ = SINQ+$40 .label sx = 2 .label sy = 3 - .label sz = 4 jsr main main: { sei @@ -47,14 +45,12 @@ main: { sta psp2 lda #>mulf_sqr2 sta psp2+1 - jsr debug_print_init jsr anim rts } anim: { - .label i = 5 + .label i = 4 lda #0 - sta sz sta sy sta sx b4: @@ -62,8 +58,8 @@ anim: { cmp #$ff bne b4 inc BORDERCOL - ldx sz - jsr calculate_matrix_16 + ldx sx + jsr calculate_matrix jsr store_matrix lda #0 sta i @@ -95,11 +91,11 @@ anim: { tax lda #$80 clc - adc xr + adc xp sta SPRITES_XPOS,x lda #$80 clc - adc yr + adc yp sta SPRITES_YPOS,x inc i lda i @@ -107,231 +103,18 @@ anim: { bne b7 lda #LIGHT_GREY sta BORDERCOL - jsr debug_print lda #LIGHT_BLUE sta BORDERCOL - dec sx - inc sy - dec sz + inc sx + inc sx + lda sy + sec + sbc #3 + sta sy jmp b4 } -debug_print: { - .label at_line = SCREEN+$13*$28 - .label c = 5 - .label i = 6 - ldx sx - lda #SCREEN+$25 - sta print_sbyte_at.at+1 - jsr print_sbyte_at - ldx sy - lda #SCREEN+$28*1+$25 - sta print_sbyte_at.at+1 - jsr print_sbyte_at - ldx sz - lda #SCREEN+$28*2+$25 - sta print_sbyte_at.at+1 - jsr print_sbyte_at - ldx rotation_matrix - lda #SCREEN+$28*4+$1d - sta print_sbyte_at.at+1 - jsr print_sbyte_at - ldx rotation_matrix+1 - lda #SCREEN+$28*4+$21 - sta print_sbyte_at.at+1 - jsr print_sbyte_at - ldx rotation_matrix+2 - lda #SCREEN+$28*4+$25 - sta print_sbyte_at.at+1 - jsr print_sbyte_at - ldx rotation_matrix+3 - lda #SCREEN+$28*5+$1d - sta print_sbyte_at.at+1 - jsr print_sbyte_at - ldx rotation_matrix+4 - lda #SCREEN+$28*5+$21 - sta print_sbyte_at.at+1 - jsr print_sbyte_at - ldx rotation_matrix+5 - lda #SCREEN+$28*5+$25 - sta print_sbyte_at.at+1 - jsr print_sbyte_at - ldx rotation_matrix+6 - lda #SCREEN+$28*6+$1d - sta print_sbyte_at.at+1 - jsr print_sbyte_at - ldx rotation_matrix+7 - lda #SCREEN+$28*6+$21 - sta print_sbyte_at.at+1 - jsr print_sbyte_at - ldx rotation_matrix+8 - lda #SCREEN+$28*6+$25 - sta print_sbyte_at.at+1 - jsr print_sbyte_at - lda #0 - sta i - lda #4 - sta c - b1: - lda c - clc - adc #at_line - adc #0 - sta print_sbyte_at.at+1 - ldx i - lda xrs,x - tax - jsr print_sbyte_at - lda c - clc - adc #at_line+$28*1 - adc #0 - sta print_sbyte_at.at+1 - ldx i - lda yrs,x - tax - jsr print_sbyte_at - lda c - clc - adc #at_line+$28*2 - adc #0 - sta print_sbyte_at.at+1 - ldx i - lda zrs,x - tax - jsr print_sbyte_at - lda c - clc - adc #at_line+$28*3 - adc #0 - sta print_sbyte_at.at+1 - ldx i - lda pps,x - tax - jsr print_sbyte_at - lda c - clc - adc #at_line+$28*4 - adc #0 - sta print_sbyte_at.at+1 - ldx i - lda xps,x - tax - jsr print_sbyte_at - lda c - clc - adc #at_line+$28*5 - adc #0 - sta print_sbyte_at.at+1 - ldx i - lda yps,x - tax - jsr print_sbyte_at - lda #4 - clc - adc c - sta c - inc i - lda i - cmp #8 - beq !b1+ - jmp b1 - !b1: - rts -} -print_sbyte_at: { - .label at = 7 - cpx #0 - bmi b1 - lda #' ' - sta print_char_at.ch - jsr print_char_at - b2: - inc print_byte_at.at - bne !+ - inc print_byte_at.at+1 - !: - jsr print_byte_at - rts - b1: - lda #'-' - sta print_char_at.ch - jsr print_char_at - txa - eor #$ff - clc - adc #1 - tax - jmp b2 -} -print_char_at: { - .label at = 7 - .label ch = 9 - lda ch - ldy #0 - sta (at),y - rts -} -print_byte_at: { - .label at = 7 - txa - lsr - lsr - lsr - lsr - tay - lda print_hextab,y - sta print_char_at.ch - jsr print_char_at - txa - and #$f - tax - inc print_char_at.at - bne !+ - inc print_char_at.at+1 - !: - lda print_hextab,x - sta print_char_at.ch - jsr print_char_at - rts -} rotate_matrix: { - .label x = 6 + .label x = 5 lda x sta xr tya @@ -465,786 +248,153 @@ store_matrix: { sta rotate_matrix.I2+1 rts } -calculate_matrix_16: { - .label _4 = 7 - .label _9 = 7 - .label _13 = 7 - .label _28 = $16 - .label _29 = $16 - .label _30 = $16 - .label _31 = $16 - .label _32 = $16 - .label _35 = 7 - .label _36 = $10 - .label _37 = $e - .label _38 = $12 - .label _39 = $14 - .label _48 = $16 - .label _49 = $16 - .label _50 = $16 - .label _51 = $16 - .label _52 = $16 - .label _55 = 7 - .label _56 = $10 - .label _57 = $e - .label _58 = $12 - .label _59 = $14 - .label _66 = 7 - .label _71 = 7 - .label sx = 2 +calculate_matrix: { .label sy = 3 - .label t1 = 5 - .label t2 = 6 - .label t3 = 9 - .label t5 = $c - .label t6 = $d - .label t7 = 5 - .label t8 = 6 - .label _74 = 7 - .label _75 = $a - .label _76 = 7 - .label _77 = $a - .label _78 = 7 - .label _79 = 7 - .label _80 = $a - .label _81 = $e - .label _82 = $10 - .label _83 = $12 - .label _84 = $14 - .label _85 = 7 - .label _86 = $a - .label _87 = $e - .label _88 = $10 - .label _89 = $12 - .label _90 = $14 - .label _91 = 7 - .label _92 = $a - .label _93 = 7 - .label _94 = $a - txa - eor #$ff + .label t1 = 4 + .label t3 = 5 + .label t4 = 6 + .label t5 = 7 + .label t6 = 8 + .label t7 = 9 + .label t8 = $a + .label t9 = $b + .label t10 = $c + lda sy sec - adc sy + sbc #sz sta t1 - txa + lda #sz clc adc sy - sta t2 - ldy t1 - lda COSH_HI,y - sta _74+1 - lda COSH_LO,y - sta _74 - ldy t2 - lda COSH_HI,y - sta _75+1 - lda COSH_LO,y - sta _75 - lda _4 - clc - adc _75 - sta _4 - lda _4+1 - adc _75+1 - sta _4+1 - sta rotation_matrix - ldy t1 - lda SINH_HI,y - sta _76+1 - lda SINH_LO,y - sta _76 - ldy t2 - lda SINH_HI,y - sta _77+1 - lda SINH_LO,y - sta _77 - lda _9 - sec - sbc _77 - sta _9 - lda _9+1 - sbc _77+1 - sta _9+1 - sta rotation_matrix+1 - ldy sy - lda SINH_HI,y - sta _78+1 - lda SINH_LO,y - sta _78 - lda _13 - clc - adc _13 - sta _13 - lda _13+1 - adc _13+1 - sta _13+1 - sta rotation_matrix+2 + tay + stx t3 + stx t4 txa + sty $ff clc - adc sx - sta t3 - txa - eor #$ff - sec - adc sx - tax - lda sx - clc - adc t2 + adc $ff sta t5 - lda sx + txa sec sbc t1 sta t6 - lda t7 + txa clc - adc sx + adc t1 sta t7 - lda t8 + tya + stx $ff sec - sbc sx + sbc $ff sta t8 - ldy t3 - lda SINH_HI,y - sta _79+1 - lda SINH_LO,y - sta _79 - lda SINH_HI,x - sta _80+1 - lda SINH_LO,x - sta _80 - ldy t5 - lda COSQ_HI,y - sta _81+1 - lda COSH_LO,y - sta _81 + txa + eor #$ff + sec + adc sy + sta t9 + txa + clc + adc sy + sta t10 + ldx t1 + clc + lda COSH,x + adc COSH,y + sta rotation_matrix + sec + lda SINH,x + sbc SINH,y + sta rotation_matrix+1 + ldy sy + clc + lda SINH,y + adc SINH,y + sta rotation_matrix+2 + ldx t3 + ldy t4 + sec + lda SINH+sz,x + sbc SINH+-sz,y ldy t6 - lda COSQ_HI,y - sta _82+1 - lda COSH_LO,y - sta _82 - ldy t7 - lda COSQ_HI,y - sta _83+1 - lda COSH_LO,y - sta _83 + clc + adc COSQ,y + ldy t5 + sec + sbc COSQ,y ldy t8 - lda COSQ_HI,y - sta _84+1 - lda COSH_LO,y - sta _84 - lda _79 - sec - sbc _80 - sta _28 - lda _79+1 - sbc _80+1 - sta _28+1 - lda _29 clc - adc _82 - sta _29 - lda _29+1 - adc _82+1 - sta _29+1 - lda _30 + adc COSQ,y + ldy t7 sec - sbc _81 - sta _30 - lda _30+1 - sbc _81+1 - sta _30+1 - lda _31 - clc - adc _84 - sta _31 - lda _31+1 - adc _84+1 - sta _31+1 - lda _32 - sec - sbc _83 - sta _32 - lda _32+1 - sbc _83+1 - sta _32+1 + sbc COSQ,y sta rotation_matrix+3 - lda _35 + ldy t4 clc - adc _80 - sta _35 - lda _35+1 - adc _80+1 - sta _35+1 - lda _36 - clc - adc _35 - sta _36 - lda _36+1 - adc _35+1 - sta _36+1 - lda _36 - sec - sbc _37 - sta _37 - lda _36+1 - sbc _37+1 - sta _37+1 - lda _38 - clc - adc _37 - sta _38 - lda _38+1 - adc _37+1 - sta _38+1 - lda _38 - sec - sbc _39 - sta _39 - lda _38+1 - sbc _39+1 - sta _39+1 - sta rotation_matrix+7 - ldy t3 - lda COSH_HI,y - sta _85+1 - lda COSH_LO,y - sta _85 - lda COSH_HI,x - sta _86+1 - lda COSH_LO,x - sta _86 + lda COSH,x + adc COSH,y ldy t5 - lda SINQ_HI,y - sta _87+1 - lda SINH_LO,y - sta _87 + clc + adc SINQ,y ldy t6 - lda SINQ_HI,y - sta _88+1 - lda SINH_LO,y - sta _88 + sec + sbc SINQ,y ldy t7 - lda SINQ_HI,y - sta _89+1 - lda SINH_LO,y - sta _89 + sec + sbc SINQ,y ldy t8 - lda SINQ_HI,y - sta _90+1 - lda SINH_LO,y - sta _90 - lda _85 - clc - adc _86 - sta _48 - lda _85+1 - adc _86+1 - sta _48+1 - lda _49 - clc - adc _87 - sta _49 - lda _49+1 - adc _87+1 - sta _49+1 - lda _50 sec - sbc _88 - sta _50 - lda _50+1 - sbc _88+1 - sta _50+1 - lda _51 - sec - sbc _89 - sta _51 - lda _51+1 - sbc _89+1 - sta _51+1 - lda _52 - sec - sbc _90 - sta _52 - lda _52+1 - sbc _90+1 - sta _52+1 + sbc SINQ,y sta rotation_matrix+4 - lda _86 + ldx t9 + ldy t10 sec - sbc _55 - sta _55 - lda _86+1 - sbc _55+1 - sta _55+1 - lda _56 - clc - adc _55 - sta _56 - lda _56+1 - adc _55+1 - sta _56+1 - lda _56 - sec - sbc _57 - sta _57 - lda _56+1 - sbc _57+1 - sta _57+1 - lda _57 - sec - sbc _58 - sta _58 - lda _57+1 - sbc _58+1 - sta _58+1 - lda _58 - sec - sbc _59 - sta _59 - lda _58+1 - sbc _59+1 - sta _59+1 - sta rotation_matrix+6 - lda sy - sec - sbc sx - tax - lda sy - clc - adc sx - tay - lda SINH_HI,x - sta _91+1 - lda SINH_LO,x - sta _91 - lda SINH_HI,y - sta _92+1 - lda SINH_LO,y - sta _92 - lda _66 - sec - sbc _92 - sta _66 - lda _66+1 - sbc _92+1 - sta _66+1 + lda SINH,x + sbc SINH,y sta rotation_matrix+5 - lda COSH_HI,x - sta _93+1 - lda COSH_LO,x - sta _93 - lda COSH_HI,y - sta _94+1 - lda COSH_LO,y - sta _94 - lda _71 + ldx t4 + ldy t3 + sec + lda COSH,x + sbc COSH,y + ldy t6 clc - adc _94 - sta _71 - lda _71+1 - adc _94+1 - sta _71+1 + adc SINQ,y + ldy t5 + sec + sbc SINQ,y + ldy t8 + sec + sbc SINQ,y + ldy t7 + sec + sbc SINQ,y + sta rotation_matrix+6 + ldx t3 + ldy t4 + clc + lda SINH,x + adc SINH,y + ldy t6 + clc + adc COSQ,y + ldy t5 + sec + sbc COSQ,y + ldy t7 + clc + adc COSQ,y + ldy t8 + sec + sbc COSQ,y + sta rotation_matrix+7 + ldx t9 + ldy t10 + clc + lda COSH,x + adc COSH,y sta rotation_matrix+8 rts } -debug_print_init: { - .label COLS = $d800 - .label at_line = SCREEN+$10*$28 - .label at_cols = COLS+$10*$28 - .label _59 = 7 - .label _60 = 7 - .label _63 = 7 - .label _64 = 7 - .label _67 = 7 - .label _68 = 7 - .label _71 = 7 - .label _72 = 7 - .label _75 = 7 - .label _76 = 7 - .label _79 = 7 - .label _80 = 7 - .label _83 = 7 - .label _84 = 7 - .label _87 = 7 - .label _88 = 7 - .label _91 = 7 - .label _92 = 7 - .label col = 4 - .label c = 2 - .label i = 3 - jsr print_cls - lda #SCREEN+$22 - sta print_str_at.at+1 - lda #str - sta print_str_at.str+1 - jsr print_str_at - lda #SCREEN+$28*1+$22 - sta print_str_at.at+1 - lda #str1 - sta print_str_at.str+1 - jsr print_str_at - lda #SCREEN+$28*2+$22 - sta print_str_at.at+1 - lda #str2 - sta print_str_at.str+1 - jsr print_str_at - lda #SCREEN+$28*$10 - sta print_str_at.at+1 - lda #str3 - sta print_str_at.str+1 - jsr print_str_at - lda #SCREEN+$28*$11 - sta print_str_at.at+1 - lda #str4 - sta print_str_at.str+1 - jsr print_str_at - lda #SCREEN+$28*$12 - sta print_str_at.at+1 - lda #str5 - sta print_str_at.str+1 - jsr print_str_at - lda #SCREEN+$28*$13 - sta print_str_at.at+1 - lda #str6 - sta print_str_at.str+1 - jsr print_str_at - lda #SCREEN+$28*$14 - sta print_str_at.at+1 - lda #str7 - sta print_str_at.str+1 - jsr print_str_at - lda #SCREEN+$28*$15 - sta print_str_at.at+1 - lda #str8 - sta print_str_at.str+1 - jsr print_str_at - lda #SCREEN+$28*$16 - sta print_str_at.at+1 - lda #str9 - sta print_str_at.str+1 - jsr print_str_at - lda #SCREEN+$28*$17 - sta print_str_at.at+1 - lda #str10 - sta print_str_at.str+1 - jsr print_str_at - lda #SCREEN+$28*$18 - sta print_str_at.at+1 - lda #str11 - sta print_str_at.str+1 - jsr print_str_at - lda #0 - sta i - lda #4 - sta c - b1: - lda c - clc - adc #at_line - adc #0 - sta print_sbyte_at.at+1 - ldx i - lda xs,x - tax - jsr print_sbyte_at - lda c - clc - adc #at_line+$28*1 - adc #0 - sta print_sbyte_at.at+1 - ldx i - lda ys,x - tax - jsr print_sbyte_at - lda c - clc - adc #at_line+$28*2 - adc #0 - sta print_sbyte_at.at+1 - ldx i - lda zs,x - tax - jsr print_sbyte_at - ldx #0 - b2: - lda #8 - clc - adc i - sta col - lda c - clc - adc #at_cols - adc #0 - sta _59+1 - txa - clc - adc _60 - sta _60 - lda #0 - adc _60+1 - sta _60+1 - lda col - ldy #0 - sta (_60),y - lda c - clc - adc #at_cols+$28*1 - adc #0 - sta _63+1 - txa - clc - adc _64 - sta _64 - tya - adc _64+1 - sta _64+1 - lda col - sta (_64),y - lda c - clc - adc #at_cols+$28*2 - adc #0 - sta _67+1 - txa - clc - adc _68 - sta _68 - tya - adc _68+1 - sta _68+1 - lda col - sta (_68),y - lda c - clc - adc #at_cols+$28*3 - adc #0 - sta _71+1 - txa - clc - adc _72 - sta _72 - tya - adc _72+1 - sta _72+1 - lda col - sta (_72),y - lda c - clc - adc #at_cols+$28*4 - adc #0 - sta _75+1 - txa - clc - adc _76 - sta _76 - tya - adc _76+1 - sta _76+1 - lda col - sta (_76),y - lda c - clc - adc #at_cols+$28*5 - adc #0 - sta _79+1 - txa - clc - adc _80 - sta _80 - tya - adc _80+1 - sta _80+1 - lda col - sta (_80),y - lda c - clc - adc #at_cols+$28*6 - adc #0 - sta _83+1 - txa - clc - adc _84 - sta _84 - tya - adc _84+1 - sta _84+1 - lda col - sta (_84),y - lda c - clc - adc #at_cols+$28*7 - adc #0 - sta _87+1 - txa - clc - adc _88 - sta _88 - tya - adc _88+1 - sta _88+1 - lda col - sta (_88),y - lda c - clc - adc #at_cols+$28*8 - adc #0 - sta _91+1 - txa - clc - adc _92 - sta _92 - tya - adc _92+1 - sta _92+1 - lda col - sta (_92),y - inx - cpx #4 - beq !b2+ - jmp b2 - !b2: - lda #4 - clc - adc c - sta c - inc i - lda i - cmp #8 - beq !b1+ - jmp b1 - !b1: - rts - str: .text "sx@" - str1: .text "sy@" - str2: .text "sz@" - str3: .text "x@" - str4: .text "y@" - str5: .text "z@" - str6: .text "xr@" - str7: .text "yr@" - str8: .text "zr@" - str9: .text "pp@" - str10: .text "xp@" - str11: .text "yp@" -} -print_str_at: { - .label at = $a - .label str = 7 - b1: - ldy #0 - lda (str),y - cmp #'@' - bne b2 - rts - b2: - ldy #0 - lda (str),y - sta (at),y - inc at - bne !+ - inc at+1 - !: - inc str - bne !+ - inc str+1 - !: - jmp b1 -} -print_cls: { - .label sc = 7 - lda #print_screen - sta sc+1 - b1: - lda #' ' - ldy #0 - sta (sc),y - inc sc - bne !+ - inc sc+1 - !: - lda sc+1 - cmp #>print_screen+$3e8 - bne b1 - lda sc - cmp #159 && i<=351 ) { .byte round(((i-256)*(i-256))/256) } @@ -94,458 +94,143 @@ }} [11] call main to:@end -@end: scope:[] from @29 +@end: scope:[] from @30 [12] phi() -main: scope:[main] from @29 +main: scope:[main] from @30 asm { sei } [14] call sprites_init to:main::@1 main::@1: scope:[main] from main [15] *((const word*) psp1#0) ← ((word))(const byte*) mulf_sqr1#0 [16] *((const word*) psp2#0) ← ((word))(const byte*) mulf_sqr2#0 - [17] call debug_print_init - to:main::@2 -main::@2: scope:[main] from main::@1 - [18] phi() - [19] call anim + [17] call anim to:main::@return -main::@return: scope:[main] from main::@2 - [20] return +main::@return: scope:[main] from main::@1 + [18] return to:@return -anim: scope:[anim] from main::@2 - [21] phi() +anim: scope:[anim] from main::@1 + [19] phi() to:anim::@1 -anim::@1: scope:[anim] from anim anim::@18 - [22] (signed byte) sz#10 ← phi( anim/(byte/signed byte/word/signed word/dword/signed dword) 0 anim::@18/(signed byte) sz#3 ) - [22] (signed byte) sy#10 ← phi( anim/(byte/signed byte/word/signed word/dword/signed dword) 0 anim::@18/(signed byte) sy#3 ) - [22] (signed byte) sx#10 ← phi( anim/(byte/signed byte/word/signed word/dword/signed dword) 0 anim::@18/(signed byte) sx#3 ) +anim::@1: scope:[anim] from anim anim::@13 + [20] (signed byte) sy#10 ← phi( anim/(byte/signed byte/word/signed word/dword/signed dword) 0 anim::@13/(signed byte) sy#3 ) + [20] (signed byte) sx#10 ← phi( anim/(byte/signed byte/word/signed word/dword/signed dword) 0 anim::@13/(signed byte) sx#3 ) to:anim::@4 anim::@4: scope:[anim] from anim::@1 anim::@4 - [23] if(*((const byte*) RASTER#0)!=(byte/word/signed word/dword/signed dword) 255) goto anim::@4 + [21] if(*((const byte*) RASTER#0)!=(byte/word/signed word/dword/signed dword) 255) goto anim::@4 to:anim::@6 anim::@6: scope:[anim] from anim::@4 - [24] *((const byte*) BORDERCOL#0) ← ++ *((const byte*) BORDERCOL#0) - [25] (signed byte) calculate_matrix_16::sx#0 ← (signed byte) sx#10 - [26] (signed byte) calculate_matrix_16::sy#0 ← (signed byte) sy#10 - [27] (signed byte) calculate_matrix_16::sz#0 ← (signed byte) sz#10 - [28] call calculate_matrix_16 + [22] *((const byte*) BORDERCOL#0) ← ++ *((const byte*) BORDERCOL#0) + [23] (signed byte) calculate_matrix::sx#0 ← (signed byte) sx#10 + [24] (signed byte) calculate_matrix::sy#0 ← (signed byte) sy#10 + [25] call calculate_matrix to:anim::@15 anim::@15: scope:[anim] from anim::@6 - [29] phi() - [30] call store_matrix + [26] phi() + [27] call store_matrix to:anim::@7 anim::@7: scope:[anim] from anim::@15 anim::@17 - [31] (byte) anim::i#2 ← phi( anim::@15/(byte/signed byte/word/signed word/dword/signed dword) 0 anim::@17/(byte) anim::i#1 ) - [32] *((const byte*) BORDERCOL#0) ← ++ *((const byte*) BORDERCOL#0) - [33] (signed byte) rotate_matrix::x#0 ← *((const signed byte[8]) xs#0 + (byte) anim::i#2) - [34] (signed byte) rotate_matrix::y#0 ← *((const signed byte[8]) ys#0 + (byte) anim::i#2) - [35] (signed byte) rotate_matrix::z#0 ← *((const signed byte[8]) zs#0 + (byte) anim::i#2) - [36] call rotate_matrix + [28] (byte) anim::i#2 ← phi( anim::@15/(byte/signed byte/word/signed word/dword/signed dword) 0 anim::@17/(byte) anim::i#1 ) + [29] *((const byte*) BORDERCOL#0) ← ++ *((const byte*) BORDERCOL#0) + [30] (signed byte) rotate_matrix::x#0 ← *((const signed byte[8]) xs#0 + (byte) anim::i#2) + [31] (signed byte) rotate_matrix::y#0 ← *((const signed byte[8]) ys#0 + (byte) anim::i#2) + [32] (signed byte) rotate_matrix::z#0 ← *((const signed byte[8]) zs#0 + (byte) anim::i#2) + [33] call rotate_matrix to:anim::@17 anim::@17: scope:[anim] from anim::@7 - [37] *((const signed byte[8]) xrs#0 + (byte) anim::i#2) ← *((const signed byte*) xr#0) - [38] *((const signed byte[8]) yrs#0 + (byte) anim::i#2) ← *((const signed byte*) yr#0) - [39] *((const signed byte[8]) zrs#0 + (byte) anim::i#2) ← *((const signed byte*) zr#0) - [40] *((const signed byte[8]) pps#0 + (byte) anim::i#2) ← *((const signed byte*) pp#0) - [41] *((const signed byte[8]) xps#0 + (byte) anim::i#2) ← *((const signed byte*) xp#0) - [42] *((const signed byte[8]) yps#0 + (byte) anim::i#2) ← *((const signed byte*) yp#0) - [43] (byte) anim::i2#0 ← (byte) anim::i#2 << (byte/signed byte/word/signed word/dword/signed dword) 1 - [44] (byte/word/signed word/dword/signed dword~) anim::$6 ← (byte/word/signed word/dword/signed dword) 128 + (byte)*((const signed byte*) xr#0) - [45] *((const byte*) SPRITES_XPOS#0 + (byte) anim::i2#0) ← (byte/word/signed word/dword/signed dword~) anim::$6 - [46] (byte/word/signed word/dword/signed dword~) anim::$8 ← (byte/word/signed word/dword/signed dword) 128 + (byte)*((const signed byte*) yr#0) - [47] *((const byte*) SPRITES_YPOS#0 + (byte) anim::i2#0) ← (byte/word/signed word/dword/signed dword~) anim::$8 - [48] (byte) anim::i#1 ← ++ (byte) anim::i#2 - [49] if((byte) anim::i#1!=(byte/signed byte/word/signed word/dword/signed dword) 8) goto anim::@7 + [34] *((const signed byte[8]) xrs#0 + (byte) anim::i#2) ← *((const signed byte*) xr#0) + [35] *((const signed byte[8]) yrs#0 + (byte) anim::i#2) ← *((const signed byte*) yr#0) + [36] *((const signed byte[8]) zrs#0 + (byte) anim::i#2) ← *((const signed byte*) zr#0) + [37] *((const signed byte[8]) pps#0 + (byte) anim::i#2) ← *((const signed byte*) pp#0) + [38] *((const signed byte[8]) xps#0 + (byte) anim::i#2) ← *((const signed byte*) xp#0) + [39] *((const signed byte[8]) yps#0 + (byte) anim::i#2) ← *((const signed byte*) yp#0) + [40] (byte) anim::i2#0 ← (byte) anim::i#2 << (byte/signed byte/word/signed word/dword/signed dword) 1 + [41] (byte/word/signed word/dword/signed dword~) anim::$6 ← (byte/word/signed word/dword/signed dword) 128 + (byte)*((const signed byte*) xp#0) + [42] *((const byte*) SPRITES_XPOS#0 + (byte) anim::i2#0) ← (byte/word/signed word/dword/signed dword~) anim::$6 + [43] (byte/word/signed word/dword/signed dword~) anim::$8 ← (byte/word/signed word/dword/signed dword) 128 + (byte)*((const signed byte*) yp#0) + [44] *((const byte*) SPRITES_YPOS#0 + (byte) anim::i2#0) ← (byte/word/signed word/dword/signed dword~) anim::$8 + [45] (byte) anim::i#1 ← ++ (byte) anim::i#2 + [46] if((byte) anim::i#1!=(byte/signed byte/word/signed word/dword/signed dword) 8) goto anim::@7 to:anim::@13 anim::@13: scope:[anim] from anim::@17 - [50] *((const byte*) BORDERCOL#0) ← (const byte) LIGHT_GREY#0 - [51] call debug_print - to:anim::@18 -anim::@18: scope:[anim] from anim::@13 - [52] *((const byte*) BORDERCOL#0) ← (const byte) LIGHT_BLUE#0 - [53] (signed byte) sx#3 ← (signed byte) sx#10 - (byte/signed byte/word/signed word/dword/signed dword) 1 - [54] (signed byte) sy#3 ← (signed byte) sy#10 + (byte/signed byte/word/signed word/dword/signed dword) 1 - [55] (signed byte) sz#3 ← (signed byte) sz#10 - (byte/signed byte/word/signed word/dword/signed dword) 1 + [47] *((const byte*) BORDERCOL#0) ← (const byte) LIGHT_GREY#0 + [48] *((const byte*) BORDERCOL#0) ← (const byte) LIGHT_BLUE#0 + [49] (signed byte) sx#3 ← (signed byte) sx#10 + (byte/signed byte/word/signed word/dword/signed dword) 2 + [50] (signed byte) sy#3 ← (signed byte) sy#10 - (byte/signed byte/word/signed word/dword/signed dword) 3 to:anim::@1 -debug_print: scope:[debug_print] from anim::@13 - [56] (signed byte) print_sbyte_at::b#4 ← (signed byte) sx#10 - [57] call print_sbyte_at - to:debug_print::@3 -debug_print::@3: scope:[debug_print] from debug_print - [58] (signed byte) print_sbyte_at::b#5 ← (signed byte) sy#10 - [59] call print_sbyte_at - to:debug_print::@4 -debug_print::@4: scope:[debug_print] from debug_print::@3 - [60] (signed byte) print_sbyte_at::b#6 ← (signed byte) sz#10 - [61] call print_sbyte_at - to:debug_print::@5 -debug_print::@5: scope:[debug_print] from debug_print::@4 - [62] (signed byte) print_sbyte_at::b#7 ← *((const signed byte[9]) rotation_matrix#0) - [63] call print_sbyte_at - to:debug_print::@6 -debug_print::@6: scope:[debug_print] from debug_print::@5 - [64] (signed byte) print_sbyte_at::b#8 ← *((const signed byte[9]) rotation_matrix#0+(byte/signed byte/word/signed word/dword/signed dword) 1) - [65] call print_sbyte_at - to:debug_print::@7 -debug_print::@7: scope:[debug_print] from debug_print::@6 - [66] (signed byte) print_sbyte_at::b#9 ← *((const signed byte[9]) rotation_matrix#0+(byte/signed byte/word/signed word/dword/signed dword) 2) - [67] call print_sbyte_at - to:debug_print::@8 -debug_print::@8: scope:[debug_print] from debug_print::@7 - [68] (signed byte) print_sbyte_at::b#10 ← *((const signed byte[9]) rotation_matrix#0+(byte/signed byte/word/signed word/dword/signed dword) 3) - [69] call print_sbyte_at - to:debug_print::@9 -debug_print::@9: scope:[debug_print] from debug_print::@8 - [70] (signed byte) print_sbyte_at::b#11 ← *((const signed byte[9]) rotation_matrix#0+(byte/signed byte/word/signed word/dword/signed dword) 4) - [71] call print_sbyte_at - to:debug_print::@10 -debug_print::@10: scope:[debug_print] from debug_print::@9 - [72] (signed byte) print_sbyte_at::b#12 ← *((const signed byte[9]) rotation_matrix#0+(byte/signed byte/word/signed word/dword/signed dword) 5) - [73] call print_sbyte_at - to:debug_print::@11 -debug_print::@11: scope:[debug_print] from debug_print::@10 - [74] (signed byte) print_sbyte_at::b#13 ← *((const signed byte[9]) rotation_matrix#0+(byte/signed byte/word/signed word/dword/signed dword) 6) - [75] call print_sbyte_at - to:debug_print::@12 -debug_print::@12: scope:[debug_print] from debug_print::@11 - [76] (signed byte) print_sbyte_at::b#14 ← *((const signed byte[9]) rotation_matrix#0+(byte/signed byte/word/signed word/dword/signed dword) 7) - [77] call print_sbyte_at - to:debug_print::@13 -debug_print::@13: scope:[debug_print] from debug_print::@12 - [78] (signed byte) print_sbyte_at::b#15 ← *((const signed byte[9]) rotation_matrix#0+(byte/signed byte/word/signed word/dword/signed dword) 8) - [79] call print_sbyte_at - to:debug_print::@1 -debug_print::@1: scope:[debug_print] from debug_print::@13 debug_print::@20 - [80] (byte) debug_print::i#2 ← phi( debug_print::@13/(byte/signed byte/word/signed word/dword/signed dword) 0 debug_print::@20/(byte) debug_print::i#1 ) - [80] (byte) debug_print::c#2 ← phi( debug_print::@13/(byte/signed byte/word/signed word/dword/signed dword) 4 debug_print::@20/(byte) debug_print::c#1 ) - [81] (byte*) print_sbyte_at::at#15 ← (const byte*) debug_print::at_line#0 + (byte) debug_print::c#2 - [82] (signed byte) print_sbyte_at::b#16 ← *((const signed byte[8]) xrs#0 + (byte) debug_print::i#2) - [83] call print_sbyte_at - to:debug_print::@15 -debug_print::@15: scope:[debug_print] from debug_print::@1 - [84] (byte*) print_sbyte_at::at#16 ← (const byte*) debug_print::at_line#0+(byte/signed byte/word/signed word/dword/signed dword) 40*(byte/signed byte/word/signed word/dword/signed dword) 1 + (byte) debug_print::c#2 - [85] (signed byte) print_sbyte_at::b#17 ← *((const signed byte[8]) yrs#0 + (byte) debug_print::i#2) - [86] call print_sbyte_at - to:debug_print::@16 -debug_print::@16: scope:[debug_print] from debug_print::@15 - [87] (byte*) print_sbyte_at::at#17 ← (const byte*) debug_print::at_line#0+(byte/signed byte/word/signed word/dword/signed dword) 40*(byte/signed byte/word/signed word/dword/signed dword) 2 + (byte) debug_print::c#2 - [88] (signed byte) print_sbyte_at::b#18 ← *((const signed byte[8]) zrs#0 + (byte) debug_print::i#2) - [89] call print_sbyte_at - to:debug_print::@17 -debug_print::@17: scope:[debug_print] from debug_print::@16 - [90] (byte*) print_sbyte_at::at#18 ← (const byte*) debug_print::at_line#0+(byte/signed byte/word/signed word/dword/signed dword) 40*(byte/signed byte/word/signed word/dword/signed dword) 3 + (byte) debug_print::c#2 - [91] (signed byte) print_sbyte_at::b#19 ← *((const signed byte[8]) pps#0 + (byte) debug_print::i#2) - [92] call print_sbyte_at - to:debug_print::@18 -debug_print::@18: scope:[debug_print] from debug_print::@17 - [93] (byte*) print_sbyte_at::at#19 ← (const byte*) debug_print::at_line#0+(byte/signed byte/word/signed word/dword/signed dword) 40*(byte/signed byte/word/signed word/dword/signed dword) 4 + (byte) debug_print::c#2 - [94] (signed byte) print_sbyte_at::b#20 ← *((const signed byte[8]) xps#0 + (byte) debug_print::i#2) - [95] call print_sbyte_at - to:debug_print::@19 -debug_print::@19: scope:[debug_print] from debug_print::@18 - [96] (byte*) print_sbyte_at::at#20 ← (const byte*) debug_print::at_line#0+(byte/signed byte/word/signed word/dword/signed dword) 40*(byte/signed byte/word/signed word/dword/signed dword) 5 + (byte) debug_print::c#2 - [97] (signed byte) print_sbyte_at::b#21 ← *((const signed byte[8]) yps#0 + (byte) debug_print::i#2) - [98] call print_sbyte_at - to:debug_print::@20 -debug_print::@20: scope:[debug_print] from debug_print::@19 - [99] (byte) debug_print::c#1 ← (byte) debug_print::c#2 + (byte/signed byte/word/signed word/dword/signed dword) 4 - [100] (byte) debug_print::i#1 ← ++ (byte) debug_print::i#2 - [101] if((byte) debug_print::i#1!=(byte/signed byte/word/signed word/dword/signed dword) 8) goto debug_print::@1 - to:debug_print::@return -debug_print::@return: scope:[debug_print] from debug_print::@20 - [102] return - to:@return -print_sbyte_at: scope:[print_sbyte_at] from debug_print debug_print::@1 debug_print::@10 debug_print::@11 debug_print::@12 debug_print::@13 debug_print::@15 debug_print::@16 debug_print::@17 debug_print::@18 debug_print::@19 debug_print::@3 debug_print::@4 debug_print::@5 debug_print::@6 debug_print::@7 debug_print::@8 debug_print::@9 debug_print_init::@1 debug_print_init::@18 debug_print_init::@19 - [103] (byte*) print_sbyte_at::at#21 ← phi( debug_print/(const byte*) SCREEN#0+(byte/signed byte/word/signed word/dword/signed dword) 37 debug_print::@1/(byte*) print_sbyte_at::at#15 debug_print::@10/(const byte*) SCREEN#0+(byte/signed byte/word/signed word/dword/signed dword) 40*(byte/signed byte/word/signed word/dword/signed dword) 5+(byte/signed byte/word/signed word/dword/signed dword) 37 debug_print::@11/(const byte*) SCREEN#0+(byte/signed byte/word/signed word/dword/signed dword) 40*(byte/signed byte/word/signed word/dword/signed dword) 6+(byte/signed byte/word/signed word/dword/signed dword) 29 debug_print::@12/(const byte*) SCREEN#0+(byte/signed byte/word/signed word/dword/signed dword) 40*(byte/signed byte/word/signed word/dword/signed dword) 6+(byte/signed byte/word/signed word/dword/signed dword) 33 debug_print::@13/(const byte*) SCREEN#0+(byte/signed byte/word/signed word/dword/signed dword) 40*(byte/signed byte/word/signed word/dword/signed dword) 6+(byte/signed byte/word/signed word/dword/signed dword) 37 debug_print::@15/(byte*) print_sbyte_at::at#16 debug_print::@16/(byte*) print_sbyte_at::at#17 debug_print::@17/(byte*) print_sbyte_at::at#18 debug_print::@18/(byte*) print_sbyte_at::at#19 debug_print::@19/(byte*) print_sbyte_at::at#20 debug_print::@3/(const byte*) SCREEN#0+(byte/signed byte/word/signed word/dword/signed dword) 40*(byte/signed byte/word/signed word/dword/signed dword) 1+(byte/signed byte/word/signed word/dword/signed dword) 37 debug_print::@4/(const byte*) SCREEN#0+(byte/signed byte/word/signed word/dword/signed dword) 40*(byte/signed byte/word/signed word/dword/signed dword) 2+(byte/signed byte/word/signed word/dword/signed dword) 37 debug_print::@5/(const byte*) SCREEN#0+(byte/signed byte/word/signed word/dword/signed dword) 40*(byte/signed byte/word/signed word/dword/signed dword) 4+(byte/signed byte/word/signed word/dword/signed dword) 29 debug_print::@6/(const byte*) SCREEN#0+(byte/signed byte/word/signed word/dword/signed dword) 40*(byte/signed byte/word/signed word/dword/signed dword) 4+(byte/signed byte/word/signed word/dword/signed dword) 33 debug_print::@7/(const byte*) SCREEN#0+(byte/signed byte/word/signed word/dword/signed dword) 40*(byte/signed byte/word/signed word/dword/signed dword) 4+(byte/signed byte/word/signed word/dword/signed dword) 37 debug_print::@8/(const byte*) SCREEN#0+(byte/signed byte/word/signed word/dword/signed dword) 40*(byte/signed byte/word/signed word/dword/signed dword) 5+(byte/signed byte/word/signed word/dword/signed dword) 29 debug_print::@9/(const byte*) SCREEN#0+(byte/signed byte/word/signed word/dword/signed dword) 40*(byte/signed byte/word/signed word/dword/signed dword) 5+(byte/signed byte/word/signed word/dword/signed dword) 33 debug_print_init::@1/(byte*) print_sbyte_at::at#0 debug_print_init::@18/(byte*) print_sbyte_at::at#1 debug_print_init::@19/(byte*) print_sbyte_at::at#2 ) - [103] (signed byte) print_sbyte_at::b#22 ← phi( debug_print/(signed byte) print_sbyte_at::b#4 debug_print::@1/(signed byte) print_sbyte_at::b#16 debug_print::@10/(signed byte) print_sbyte_at::b#12 debug_print::@11/(signed byte) print_sbyte_at::b#13 debug_print::@12/(signed byte) print_sbyte_at::b#14 debug_print::@13/(signed byte) print_sbyte_at::b#15 debug_print::@15/(signed byte) print_sbyte_at::b#17 debug_print::@16/(signed byte) print_sbyte_at::b#18 debug_print::@17/(signed byte) print_sbyte_at::b#19 debug_print::@18/(signed byte) print_sbyte_at::b#20 debug_print::@19/(signed byte) print_sbyte_at::b#21 debug_print::@3/(signed byte) print_sbyte_at::b#5 debug_print::@4/(signed byte) print_sbyte_at::b#6 debug_print::@5/(signed byte) print_sbyte_at::b#7 debug_print::@6/(signed byte) print_sbyte_at::b#8 debug_print::@7/(signed byte) print_sbyte_at::b#9 debug_print::@8/(signed byte) print_sbyte_at::b#10 debug_print::@9/(signed byte) print_sbyte_at::b#11 debug_print_init::@1/(signed byte) print_sbyte_at::b#1 debug_print_init::@18/(signed byte) print_sbyte_at::b#2 debug_print_init::@19/(signed byte) print_sbyte_at::b#3 ) - [104] if((signed byte) print_sbyte_at::b#22<(byte/signed byte/word/signed word/dword/signed dword) 0) goto print_sbyte_at::@1 - to:print_sbyte_at::@3 -print_sbyte_at::@3: scope:[print_sbyte_at] from print_sbyte_at - [105] (byte*) print_char_at::at#1 ← (byte*) print_sbyte_at::at#21 - [106] call print_char_at - to:print_sbyte_at::@2 -print_sbyte_at::@2: scope:[print_sbyte_at] from print_sbyte_at::@3 print_sbyte_at::@5 - [107] (signed byte) print_sbyte_at::b#24 ← phi( print_sbyte_at::@5/(signed byte) print_sbyte_at::b#0 print_sbyte_at::@3/(signed byte) print_sbyte_at::b#22 ) - [108] (byte*) print_byte_at::at#0 ← (byte*) print_sbyte_at::at#21 + (byte/signed byte/word/signed word/dword/signed dword) 1 - [109] call print_byte_at - to:print_sbyte_at::@return -print_sbyte_at::@return: scope:[print_sbyte_at] from print_sbyte_at::@2 - [110] return - to:@return -print_sbyte_at::@1: scope:[print_sbyte_at] from print_sbyte_at - [111] (byte*) print_char_at::at#0 ← (byte*) print_sbyte_at::at#21 - [112] call print_char_at - to:print_sbyte_at::@5 -print_sbyte_at::@5: scope:[print_sbyte_at] from print_sbyte_at::@1 - [113] (signed byte) print_sbyte_at::b#0 ← - (signed byte) print_sbyte_at::b#22 - to:print_sbyte_at::@2 -print_char_at: scope:[print_char_at] from print_byte_at print_byte_at::@1 print_sbyte_at::@1 print_sbyte_at::@3 - [114] (byte*) print_char_at::at#4 ← phi( print_byte_at/(byte*) print_char_at::at#2 print_byte_at::@1/(byte*) print_char_at::at#3 print_sbyte_at::@1/(byte*) print_char_at::at#0 print_sbyte_at::@3/(byte*) print_char_at::at#1 ) - [114] (byte) print_char_at::ch#4 ← phi( print_byte_at/(byte) print_char_at::ch#2 print_byte_at::@1/(byte) print_char_at::ch#3 print_sbyte_at::@1/(byte) '-' print_sbyte_at::@3/(byte) ' ' ) - [115] *((byte*) print_char_at::at#4) ← (byte) print_char_at::ch#4 - to:print_char_at::@return -print_char_at::@return: scope:[print_char_at] from print_char_at - [116] return - to:@return -print_byte_at: scope:[print_byte_at] from print_sbyte_at::@2 - [117] (byte~) print_byte_at::$0 ← (byte)(signed byte) print_sbyte_at::b#24 >> (byte/signed byte/word/signed word/dword/signed dword) 4 - [118] (byte) print_char_at::ch#2 ← *((const byte[]) print_hextab#0 + (byte~) print_byte_at::$0) - [119] (byte*) print_char_at::at#2 ← (byte*) print_byte_at::at#0 - [120] call print_char_at - to:print_byte_at::@1 -print_byte_at::@1: scope:[print_byte_at] from print_byte_at - [121] (byte~) print_byte_at::$2 ← (byte)(signed byte) print_sbyte_at::b#24 & (byte/signed byte/word/signed word/dword/signed dword) 15 - [122] (byte*) print_char_at::at#3 ← (byte*) print_byte_at::at#0 + (byte/signed byte/word/signed word/dword/signed dword) 1 - [123] (byte) print_char_at::ch#3 ← *((const byte[]) print_hextab#0 + (byte~) print_byte_at::$2) - [124] call print_char_at - to:print_byte_at::@return -print_byte_at::@return: scope:[print_byte_at] from print_byte_at::@1 - [125] return - to:@return rotate_matrix: scope:[rotate_matrix] from anim::@7 - [126] *((const signed byte*) xr#0) ← (signed byte) rotate_matrix::x#0 - [127] *((const signed byte*) yr#0) ← (signed byte) rotate_matrix::y#0 - [128] *((const signed byte*) zr#0) ← (signed byte) rotate_matrix::z#0 + [51] *((const signed byte*) xr#0) ← (signed byte) rotate_matrix::x#0 + [52] *((const signed byte*) yr#0) ← (signed byte) rotate_matrix::y#0 + [53] *((const signed byte*) zr#0) ← (signed byte) rotate_matrix::z#0 asm { ldxzr C1: ldamulf_sqr1,x sec C2: sbcmulf_sqr2,x staC3+1 F1: ldamulf_sqr1,x sec F2: sbcmulf_sqr2,x staF3+1 I1: ldamulf_sqr1,x sec I2: sbcmulf_sqr2,x staI3+1 ldxxr ldyyr I3: lda#0 clc G1: adcmulf_sqr1,x sec G2: sbcmulf_sqr2,x clc H1: adcmulf_sqr1,y sec H2: sbcmulf_sqr2,y stazr staPP+1 PP: ldaPERSP_Z stapp stapsp1 eor#$ff stapsp2 C3: lda#0 clc A1: adcmulf_sqr1,x sec A2: sbcmulf_sqr2,x clc B1: adcmulf_sqr1,y sec B2: sbcmulf_sqr2,y staxr staXX+1 clc F3: lda#0 clc D1: adcmulf_sqr1,x sec D2: sbcmulf_sqr2,x clc E1: adcmulf_sqr1,y sec E2: sbcmulf_sqr2,y stayr tay lda(psp1),y sec sbc(psp2),y stayp XX: ldy#0 lda(psp1),y sec sbc(psp2),y staxp } to:rotate_matrix::@return rotate_matrix::@return: scope:[rotate_matrix] from rotate_matrix - [130] return + [55] return to:@return store_matrix: scope:[store_matrix] from anim::@15 asm { ldarotation_matrix+0 starotate_matrix.A1+1 eor#$ff starotate_matrix.A2+1 ldarotation_matrix+1 starotate_matrix.B1+1 eor#$ff starotate_matrix.B2+1 ldarotation_matrix+2 starotate_matrix.C1+1 eor#$ff starotate_matrix.C2+1 ldarotation_matrix+3 starotate_matrix.D1+1 eor#$ff starotate_matrix.D2+1 ldarotation_matrix+4 starotate_matrix.E1+1 eor#$ff starotate_matrix.E2+1 ldarotation_matrix+5 starotate_matrix.F1+1 eor#$ff starotate_matrix.F2+1 ldarotation_matrix+6 starotate_matrix.G1+1 eor#$ff starotate_matrix.G2+1 ldarotation_matrix+7 starotate_matrix.H1+1 eor#$ff starotate_matrix.H2+1 ldarotation_matrix+8 starotate_matrix.I1+1 eor#$ff starotate_matrix.I2+1 } to:store_matrix::@return store_matrix::@return: scope:[store_matrix] from store_matrix - [132] return + [57] return to:@return -calculate_matrix_16: scope:[calculate_matrix_16] from anim::@6 - [133] (signed byte) calculate_matrix_16::t1#0 ← (signed byte) calculate_matrix_16::sy#0 - (signed byte) calculate_matrix_16::sz#0 - [134] (signed byte) calculate_matrix_16::t2#0 ← (signed byte) calculate_matrix_16::sy#0 + (signed byte) calculate_matrix_16::sz#0 - [135] (word~) calculate_matrix_16::$74 ← *((const byte*) COSH_HI#0 + (signed byte) calculate_matrix_16::t1#0) w= *((const byte*) COSH_LO#0 + (signed byte) calculate_matrix_16::t1#0) - [136] (word~) calculate_matrix_16::$75 ← *((const byte*) COSH_HI#0 + (signed byte) calculate_matrix_16::t2#0) w= *((const byte*) COSH_LO#0 + (signed byte) calculate_matrix_16::t2#0) - [137] (signed word~) calculate_matrix_16::$4 ← (signed word)(word~) calculate_matrix_16::$74 + (signed word)(word~) calculate_matrix_16::$75 - [138] (byte~) calculate_matrix_16::$5 ← > (signed word~) calculate_matrix_16::$4 - [139] *((const signed byte[9]) rotation_matrix#0) ← (signed byte)(byte~) calculate_matrix_16::$5 - [140] (word~) calculate_matrix_16::$76 ← *((const byte*) SINH_HI#0 + (signed byte) calculate_matrix_16::t1#0) w= *((const byte*) SINH_LO#0 + (signed byte) calculate_matrix_16::t1#0) - [141] (word~) calculate_matrix_16::$77 ← *((const byte*) SINH_HI#0 + (signed byte) calculate_matrix_16::t2#0) w= *((const byte*) SINH_LO#0 + (signed byte) calculate_matrix_16::t2#0) - [142] (signed word~) calculate_matrix_16::$9 ← (signed word)(word~) calculate_matrix_16::$76 - (signed word)(word~) calculate_matrix_16::$77 - [143] (byte~) calculate_matrix_16::$10 ← > (signed word~) calculate_matrix_16::$9 - [144] *((const signed byte[9]) rotation_matrix#0+(byte/signed byte/word/signed word/dword/signed dword) 1) ← (signed byte)(byte~) calculate_matrix_16::$10 - [145] (word~) calculate_matrix_16::$78 ← *((const byte*) SINH_HI#0 + (signed byte) calculate_matrix_16::sy#0) w= *((const byte*) SINH_LO#0 + (signed byte) calculate_matrix_16::sy#0) - [146] (signed word~) calculate_matrix_16::$13 ← (signed word)(word~) calculate_matrix_16::$78 + (signed word)(word~) calculate_matrix_16::$78 - [147] (byte~) calculate_matrix_16::$14 ← > (signed word~) calculate_matrix_16::$13 - [148] *((const signed byte[9]) rotation_matrix#0+(byte/signed byte/word/signed word/dword/signed dword) 2) ← (signed byte)(byte~) calculate_matrix_16::$14 - [149] (signed byte) calculate_matrix_16::t3#0 ← (signed byte) calculate_matrix_16::sx#0 + (signed byte) calculate_matrix_16::sz#0 - [150] (signed byte) calculate_matrix_16::t4#0 ← (signed byte) calculate_matrix_16::sx#0 - (signed byte) calculate_matrix_16::sz#0 - [151] (signed byte) calculate_matrix_16::t5#0 ← (signed byte) calculate_matrix_16::sx#0 + (signed byte) calculate_matrix_16::t2#0 - [152] (signed byte) calculate_matrix_16::t6#0 ← (signed byte) calculate_matrix_16::sx#0 - (signed byte) calculate_matrix_16::t1#0 - [153] (signed byte) calculate_matrix_16::t7#0 ← (signed byte) calculate_matrix_16::sx#0 + (signed byte) calculate_matrix_16::t1#0 - [154] (signed byte) calculate_matrix_16::t8#0 ← (signed byte) calculate_matrix_16::t2#0 - (signed byte) calculate_matrix_16::sx#0 - [155] (word~) calculate_matrix_16::$79 ← *((const byte*) SINH_HI#0 + (signed byte) calculate_matrix_16::t3#0) w= *((const byte*) SINH_LO#0 + (signed byte) calculate_matrix_16::t3#0) - [156] (word~) calculate_matrix_16::$80 ← *((const byte*) SINH_HI#0 + (signed byte) calculate_matrix_16::t4#0) w= *((const byte*) SINH_LO#0 + (signed byte) calculate_matrix_16::t4#0) - [157] (word~) calculate_matrix_16::$81 ← *((const byte*) COSQ_HI#0 + (signed byte) calculate_matrix_16::t5#0) w= *((const byte*) COSH_LO#0 + (signed byte) calculate_matrix_16::t5#0) - [158] (word~) calculate_matrix_16::$82 ← *((const byte*) COSQ_HI#0 + (signed byte) calculate_matrix_16::t6#0) w= *((const byte*) COSH_LO#0 + (signed byte) calculate_matrix_16::t6#0) - [159] (word~) calculate_matrix_16::$83 ← *((const byte*) COSQ_HI#0 + (signed byte) calculate_matrix_16::t7#0) w= *((const byte*) COSH_LO#0 + (signed byte) calculate_matrix_16::t7#0) - [160] (word~) calculate_matrix_16::$84 ← *((const byte*) COSQ_HI#0 + (signed byte) calculate_matrix_16::t8#0) w= *((const byte*) COSH_LO#0 + (signed byte) calculate_matrix_16::t8#0) - [161] (signed word~) calculate_matrix_16::$28 ← (signed word)(word~) calculate_matrix_16::$79 - (signed word)(word~) calculate_matrix_16::$80 - [162] (signed word~) calculate_matrix_16::$29 ← (signed word~) calculate_matrix_16::$28 + (signed word)(word~) calculate_matrix_16::$82 - [163] (signed word~) calculate_matrix_16::$30 ← (signed word~) calculate_matrix_16::$29 - (signed word)(word~) calculate_matrix_16::$81 - [164] (signed word~) calculate_matrix_16::$31 ← (signed word~) calculate_matrix_16::$30 + (signed word)(word~) calculate_matrix_16::$84 - [165] (signed word~) calculate_matrix_16::$32 ← (signed word~) calculate_matrix_16::$31 - (signed word)(word~) calculate_matrix_16::$83 - [166] (byte~) calculate_matrix_16::$33 ← > (signed word~) calculate_matrix_16::$32 - [167] *((const signed byte[9]) rotation_matrix#0+(byte/signed byte/word/signed word/dword/signed dword) 3) ← (signed byte)(byte~) calculate_matrix_16::$33 - [168] (signed word~) calculate_matrix_16::$35 ← (signed word)(word~) calculate_matrix_16::$79 + (signed word)(word~) calculate_matrix_16::$80 - [169] (signed word~) calculate_matrix_16::$36 ← (signed word~) calculate_matrix_16::$35 + (signed word)(word~) calculate_matrix_16::$82 - [170] (signed word~) calculate_matrix_16::$37 ← (signed word~) calculate_matrix_16::$36 - (signed word)(word~) calculate_matrix_16::$81 - [171] (signed word~) calculate_matrix_16::$38 ← (signed word~) calculate_matrix_16::$37 + (signed word)(word~) calculate_matrix_16::$83 - [172] (signed word~) calculate_matrix_16::$39 ← (signed word~) calculate_matrix_16::$38 - (signed word)(word~) calculate_matrix_16::$84 - [173] (byte~) calculate_matrix_16::$40 ← > (signed word~) calculate_matrix_16::$39 - [174] *((const signed byte[9]) rotation_matrix#0+(byte/signed byte/word/signed word/dword/signed dword) 7) ← (signed byte)(byte~) calculate_matrix_16::$40 - [175] (word~) calculate_matrix_16::$85 ← *((const byte*) COSH_HI#0 + (signed byte) calculate_matrix_16::t3#0) w= *((const byte*) COSH_LO#0 + (signed byte) calculate_matrix_16::t3#0) - [176] (word~) calculate_matrix_16::$86 ← *((const byte*) COSH_HI#0 + (signed byte) calculate_matrix_16::t4#0) w= *((const byte*) COSH_LO#0 + (signed byte) calculate_matrix_16::t4#0) - [177] (word~) calculate_matrix_16::$87 ← *((const byte*) SINQ_HI#0 + (signed byte) calculate_matrix_16::t5#0) w= *((const byte*) SINH_LO#0 + (signed byte) calculate_matrix_16::t5#0) - [178] (word~) calculate_matrix_16::$88 ← *((const byte*) SINQ_HI#0 + (signed byte) calculate_matrix_16::t6#0) w= *((const byte*) SINH_LO#0 + (signed byte) calculate_matrix_16::t6#0) - [179] (word~) calculate_matrix_16::$89 ← *((const byte*) SINQ_HI#0 + (signed byte) calculate_matrix_16::t7#0) w= *((const byte*) SINH_LO#0 + (signed byte) calculate_matrix_16::t7#0) - [180] (word~) calculate_matrix_16::$90 ← *((const byte*) SINQ_HI#0 + (signed byte) calculate_matrix_16::t8#0) w= *((const byte*) SINH_LO#0 + (signed byte) calculate_matrix_16::t8#0) - [181] (signed word~) calculate_matrix_16::$48 ← (signed word)(word~) calculate_matrix_16::$85 + (signed word)(word~) calculate_matrix_16::$86 - [182] (signed word~) calculate_matrix_16::$49 ← (signed word~) calculate_matrix_16::$48 + (signed word)(word~) calculate_matrix_16::$87 - [183] (signed word~) calculate_matrix_16::$50 ← (signed word~) calculate_matrix_16::$49 - (signed word)(word~) calculate_matrix_16::$88 - [184] (signed word~) calculate_matrix_16::$51 ← (signed word~) calculate_matrix_16::$50 - (signed word)(word~) calculate_matrix_16::$89 - [185] (signed word~) calculate_matrix_16::$52 ← (signed word~) calculate_matrix_16::$51 - (signed word)(word~) calculate_matrix_16::$90 - [186] (byte~) calculate_matrix_16::$53 ← > (signed word~) calculate_matrix_16::$52 - [187] *((const signed byte[9]) rotation_matrix#0+(byte/signed byte/word/signed word/dword/signed dword) 4) ← (signed byte)(byte~) calculate_matrix_16::$53 - [188] (signed word~) calculate_matrix_16::$55 ← (signed word)(word~) calculate_matrix_16::$86 - (signed word)(word~) calculate_matrix_16::$85 - [189] (signed word~) calculate_matrix_16::$56 ← (signed word~) calculate_matrix_16::$55 + (signed word)(word~) calculate_matrix_16::$88 - [190] (signed word~) calculate_matrix_16::$57 ← (signed word~) calculate_matrix_16::$56 - (signed word)(word~) calculate_matrix_16::$87 - [191] (signed word~) calculate_matrix_16::$58 ← (signed word~) calculate_matrix_16::$57 - (signed word)(word~) calculate_matrix_16::$89 - [192] (signed word~) calculate_matrix_16::$59 ← (signed word~) calculate_matrix_16::$58 - (signed word)(word~) calculate_matrix_16::$90 - [193] (byte~) calculate_matrix_16::$60 ← > (signed word~) calculate_matrix_16::$59 - [194] *((const signed byte[9]) rotation_matrix#0+(byte/signed byte/word/signed word/dword/signed dword) 6) ← (signed byte)(byte~) calculate_matrix_16::$60 - [195] (signed byte) calculate_matrix_16::t9#0 ← (signed byte) calculate_matrix_16::sy#0 - (signed byte) calculate_matrix_16::sx#0 - [196] (signed byte) calculate_matrix_16::t10#0 ← (signed byte) calculate_matrix_16::sy#0 + (signed byte) calculate_matrix_16::sx#0 - [197] (word~) calculate_matrix_16::$91 ← *((const byte*) SINH_HI#0 + (signed byte) calculate_matrix_16::t9#0) w= *((const byte*) SINH_LO#0 + (signed byte) calculate_matrix_16::t9#0) - [198] (word~) calculate_matrix_16::$92 ← *((const byte*) SINH_HI#0 + (signed byte) calculate_matrix_16::t10#0) w= *((const byte*) SINH_LO#0 + (signed byte) calculate_matrix_16::t10#0) - [199] (signed word~) calculate_matrix_16::$66 ← (signed word)(word~) calculate_matrix_16::$91 - (signed word)(word~) calculate_matrix_16::$92 - [200] (byte~) calculate_matrix_16::$67 ← > (signed word~) calculate_matrix_16::$66 - [201] *((const signed byte[9]) rotation_matrix#0+(byte/signed byte/word/signed word/dword/signed dword) 5) ← (signed byte)(byte~) calculate_matrix_16::$67 - [202] (word~) calculate_matrix_16::$93 ← *((const byte*) COSH_HI#0 + (signed byte) calculate_matrix_16::t9#0) w= *((const byte*) COSH_LO#0 + (signed byte) calculate_matrix_16::t9#0) - [203] (word~) calculate_matrix_16::$94 ← *((const byte*) COSH_HI#0 + (signed byte) calculate_matrix_16::t10#0) w= *((const byte*) COSH_LO#0 + (signed byte) calculate_matrix_16::t10#0) - [204] (signed word~) calculate_matrix_16::$71 ← (signed word)(word~) calculate_matrix_16::$93 + (signed word)(word~) calculate_matrix_16::$94 - [205] (byte~) calculate_matrix_16::$72 ← > (signed word~) calculate_matrix_16::$71 - [206] *((const signed byte[9]) rotation_matrix#0+(byte/signed byte/word/signed word/dword/signed dword) 8) ← (signed byte)(byte~) calculate_matrix_16::$72 - to:calculate_matrix_16::@return -calculate_matrix_16::@return: scope:[calculate_matrix_16] from calculate_matrix_16 - [207] return - to:@return -debug_print_init: scope:[debug_print_init] from main::@1 - [208] phi() - [209] call print_cls - to:debug_print_init::@5 -debug_print_init::@5: scope:[debug_print_init] from debug_print_init - [210] phi() - [211] call print_str_at - to:debug_print_init::@6 -debug_print_init::@6: scope:[debug_print_init] from debug_print_init::@5 - [212] phi() - [213] call print_str_at - to:debug_print_init::@7 -debug_print_init::@7: scope:[debug_print_init] from debug_print_init::@6 - [214] phi() - [215] call print_str_at - to:debug_print_init::@8 -debug_print_init::@8: scope:[debug_print_init] from debug_print_init::@7 - [216] phi() - [217] call print_str_at - to:debug_print_init::@9 -debug_print_init::@9: scope:[debug_print_init] from debug_print_init::@8 - [218] phi() - [219] call print_str_at - to:debug_print_init::@10 -debug_print_init::@10: scope:[debug_print_init] from debug_print_init::@9 - [220] phi() - [221] call print_str_at - to:debug_print_init::@11 -debug_print_init::@11: scope:[debug_print_init] from debug_print_init::@10 - [222] phi() - [223] call print_str_at - to:debug_print_init::@12 -debug_print_init::@12: scope:[debug_print_init] from debug_print_init::@11 - [224] phi() - [225] call print_str_at - to:debug_print_init::@13 -debug_print_init::@13: scope:[debug_print_init] from debug_print_init::@12 - [226] phi() - [227] call print_str_at - to:debug_print_init::@14 -debug_print_init::@14: scope:[debug_print_init] from debug_print_init::@13 - [228] phi() - [229] call print_str_at - to:debug_print_init::@15 -debug_print_init::@15: scope:[debug_print_init] from debug_print_init::@14 - [230] phi() - [231] call print_str_at - to:debug_print_init::@16 -debug_print_init::@16: scope:[debug_print_init] from debug_print_init::@15 - [232] phi() - [233] call print_str_at - to:debug_print_init::@1 -debug_print_init::@1: scope:[debug_print_init] from debug_print_init::@16 debug_print_init::@3 - [234] (byte) debug_print_init::i#2 ← phi( debug_print_init::@16/(byte/signed byte/word/signed word/dword/signed dword) 0 debug_print_init::@3/(byte) debug_print_init::i#1 ) - [234] (byte) debug_print_init::c#2 ← phi( debug_print_init::@16/(byte/signed byte/word/signed word/dword/signed dword) 4 debug_print_init::@3/(byte) debug_print_init::c#1 ) - [235] (byte*) print_sbyte_at::at#0 ← (const byte*) debug_print_init::at_line#0 + (byte) debug_print_init::c#2 - [236] (signed byte) print_sbyte_at::b#1 ← *((const signed byte[8]) xs#0 + (byte) debug_print_init::i#2) - [237] call print_sbyte_at - to:debug_print_init::@18 -debug_print_init::@18: scope:[debug_print_init] from debug_print_init::@1 - [238] (byte*) print_sbyte_at::at#1 ← (const byte*) debug_print_init::at_line#0+(byte/signed byte/word/signed word/dword/signed dword) 40*(byte/signed byte/word/signed word/dword/signed dword) 1 + (byte) debug_print_init::c#2 - [239] (signed byte) print_sbyte_at::b#2 ← *((const signed byte[8]) ys#0 + (byte) debug_print_init::i#2) - [240] call print_sbyte_at - to:debug_print_init::@19 -debug_print_init::@19: scope:[debug_print_init] from debug_print_init::@18 - [241] (byte*) print_sbyte_at::at#2 ← (const byte*) debug_print_init::at_line#0+(byte/signed byte/word/signed word/dword/signed dword) 40*(byte/signed byte/word/signed word/dword/signed dword) 2 + (byte) debug_print_init::c#2 - [242] (signed byte) print_sbyte_at::b#3 ← *((const signed byte[8]) zs#0 + (byte) debug_print_init::i#2) - [243] call print_sbyte_at - to:debug_print_init::@2 -debug_print_init::@2: scope:[debug_print_init] from debug_print_init::@19 debug_print_init::@2 - [244] (byte) debug_print_init::j#2 ← phi( debug_print_init::@2/(byte) debug_print_init::j#1 debug_print_init::@19/(byte/signed byte/word/signed word/dword/signed dword) 0 ) - [245] (byte) debug_print_init::col#0 ← (byte/signed byte/word/signed word/dword/signed dword) 8 + (byte) debug_print_init::i#2 - [246] (byte*~) debug_print_init::$59 ← (const byte*) debug_print_init::at_cols#0 + (byte) debug_print_init::c#2 - [247] (byte*~) debug_print_init::$60 ← (byte*~) debug_print_init::$59 + (byte) debug_print_init::j#2 - [248] *((byte*~) debug_print_init::$60) ← (byte) debug_print_init::col#0 - [249] (byte*~) debug_print_init::$63 ← (const byte*) debug_print_init::at_cols#0+(byte/signed byte/word/signed word/dword/signed dword) 40*(byte/signed byte/word/signed word/dword/signed dword) 1 + (byte) debug_print_init::c#2 - [250] (byte*~) debug_print_init::$64 ← (byte*~) debug_print_init::$63 + (byte) debug_print_init::j#2 - [251] *((byte*~) debug_print_init::$64) ← (byte) debug_print_init::col#0 - [252] (byte*~) debug_print_init::$67 ← (const byte*) debug_print_init::at_cols#0+(byte/signed byte/word/signed word/dword/signed dword) 40*(byte/signed byte/word/signed word/dword/signed dword) 2 + (byte) debug_print_init::c#2 - [253] (byte*~) debug_print_init::$68 ← (byte*~) debug_print_init::$67 + (byte) debug_print_init::j#2 - [254] *((byte*~) debug_print_init::$68) ← (byte) debug_print_init::col#0 - [255] (byte*~) debug_print_init::$71 ← (const byte*) debug_print_init::at_cols#0+(byte/signed byte/word/signed word/dword/signed dword) 40*(byte/signed byte/word/signed word/dword/signed dword) 3 + (byte) debug_print_init::c#2 - [256] (byte*~) debug_print_init::$72 ← (byte*~) debug_print_init::$71 + (byte) debug_print_init::j#2 - [257] *((byte*~) debug_print_init::$72) ← (byte) debug_print_init::col#0 - [258] (byte*~) debug_print_init::$75 ← (const byte*) debug_print_init::at_cols#0+(byte/signed byte/word/signed word/dword/signed dword) 40*(byte/signed byte/word/signed word/dword/signed dword) 4 + (byte) debug_print_init::c#2 - [259] (byte*~) debug_print_init::$76 ← (byte*~) debug_print_init::$75 + (byte) debug_print_init::j#2 - [260] *((byte*~) debug_print_init::$76) ← (byte) debug_print_init::col#0 - [261] (byte*~) debug_print_init::$79 ← (const byte*) debug_print_init::at_cols#0+(byte/signed byte/word/signed word/dword/signed dword) 40*(byte/signed byte/word/signed word/dword/signed dword) 5 + (byte) debug_print_init::c#2 - [262] (byte*~) debug_print_init::$80 ← (byte*~) debug_print_init::$79 + (byte) debug_print_init::j#2 - [263] *((byte*~) debug_print_init::$80) ← (byte) debug_print_init::col#0 - [264] (byte*~) debug_print_init::$83 ← (const byte*) debug_print_init::at_cols#0+(byte/signed byte/word/signed word/dword/signed dword) 40*(byte/signed byte/word/signed word/dword/signed dword) 6 + (byte) debug_print_init::c#2 - [265] (byte*~) debug_print_init::$84 ← (byte*~) debug_print_init::$83 + (byte) debug_print_init::j#2 - [266] *((byte*~) debug_print_init::$84) ← (byte) debug_print_init::col#0 - [267] (byte*~) debug_print_init::$87 ← (const byte*) debug_print_init::at_cols#0+(byte/signed byte/word/signed word/dword/signed dword) 40*(byte/signed byte/word/signed word/dword/signed dword) 7 + (byte) debug_print_init::c#2 - [268] (byte*~) debug_print_init::$88 ← (byte*~) debug_print_init::$87 + (byte) debug_print_init::j#2 - [269] *((byte*~) debug_print_init::$88) ← (byte) debug_print_init::col#0 - [270] (byte*~) debug_print_init::$91 ← (const byte*) debug_print_init::at_cols#0+(byte/signed byte/word/signed word/dword/signed dword) 40*(byte/signed byte/word/signed word/dword/signed dword) 8 + (byte) debug_print_init::c#2 - [271] (byte*~) debug_print_init::$92 ← (byte*~) debug_print_init::$91 + (byte) debug_print_init::j#2 - [272] *((byte*~) debug_print_init::$92) ← (byte) debug_print_init::col#0 - [273] (byte) debug_print_init::j#1 ← ++ (byte) debug_print_init::j#2 - [274] if((byte) debug_print_init::j#1!=(byte/signed byte/word/signed word/dword/signed dword) 4) goto debug_print_init::@2 - to:debug_print_init::@3 -debug_print_init::@3: scope:[debug_print_init] from debug_print_init::@2 - [275] (byte) debug_print_init::c#1 ← (byte) debug_print_init::c#2 + (byte/signed byte/word/signed word/dword/signed dword) 4 - [276] (byte) debug_print_init::i#1 ← ++ (byte) debug_print_init::i#2 - [277] if((byte) debug_print_init::i#1!=(byte/signed byte/word/signed word/dword/signed dword) 8) goto debug_print_init::@1 - to:debug_print_init::@return -debug_print_init::@return: scope:[debug_print_init] from debug_print_init::@3 - [278] return - to:@return -print_str_at: scope:[print_str_at] from debug_print_init::@10 debug_print_init::@11 debug_print_init::@12 debug_print_init::@13 debug_print_init::@14 debug_print_init::@15 debug_print_init::@16 debug_print_init::@5 debug_print_init::@6 debug_print_init::@7 debug_print_init::@8 debug_print_init::@9 - [279] (byte*) print_str_at::at#15 ← phi( debug_print_init::@10/(const byte*) SCREEN#0+(byte/signed byte/word/signed word/dword/signed dword) 40*(byte/signed byte/word/signed word/dword/signed dword) 18 debug_print_init::@11/(const byte*) SCREEN#0+(byte/signed byte/word/signed word/dword/signed dword) 40*(byte/signed byte/word/signed word/dword/signed dword) 19 debug_print_init::@12/(const byte*) SCREEN#0+(byte/signed byte/word/signed word/dword/signed dword) 40*(byte/signed byte/word/signed word/dword/signed dword) 20 debug_print_init::@13/(const byte*) SCREEN#0+(byte/signed byte/word/signed word/dword/signed dword) 40*(byte/signed byte/word/signed word/dword/signed dword) 21 debug_print_init::@14/(const byte*) SCREEN#0+(byte/signed byte/word/signed word/dword/signed dword) 40*(byte/signed byte/word/signed word/dword/signed dword) 22 debug_print_init::@15/(const byte*) SCREEN#0+(byte/signed byte/word/signed word/dword/signed dword) 40*(byte/signed byte/word/signed word/dword/signed dword) 23 debug_print_init::@16/(const byte*) SCREEN#0+(byte/signed byte/word/signed word/dword/signed dword) 40*(byte/signed byte/word/signed word/dword/signed dword) 24 debug_print_init::@5/(const byte*) SCREEN#0+(byte/signed byte/word/signed word/dword/signed dword) 34 debug_print_init::@6/(const byte*) SCREEN#0+(byte/signed byte/word/signed word/dword/signed dword) 40*(byte/signed byte/word/signed word/dword/signed dword) 1+(byte/signed byte/word/signed word/dword/signed dword) 34 debug_print_init::@7/(const byte*) SCREEN#0+(byte/signed byte/word/signed word/dword/signed dword) 40*(byte/signed byte/word/signed word/dword/signed dword) 2+(byte/signed byte/word/signed word/dword/signed dword) 34 debug_print_init::@8/(const byte*) SCREEN#0+(byte/signed byte/word/signed word/dword/signed dword) 40*(byte/signed byte/word/signed word/dword/signed dword) 16 debug_print_init::@9/(const byte*) SCREEN#0+(byte/signed byte/word/signed word/dword/signed dword) 40*(byte/signed byte/word/signed word/dword/signed dword) 17 ) - [279] (byte*) print_str_at::str#15 ← phi( debug_print_init::@10/(const string) debug_print_init::str5 debug_print_init::@11/(const string) debug_print_init::str6 debug_print_init::@12/(const string) debug_print_init::str7 debug_print_init::@13/(const string) debug_print_init::str8 debug_print_init::@14/(const string) debug_print_init::str9 debug_print_init::@15/(const string) debug_print_init::str10 debug_print_init::@16/(const string) debug_print_init::str11 debug_print_init::@5/(const string) debug_print_init::str debug_print_init::@6/(const string) debug_print_init::str1 debug_print_init::@7/(const string) debug_print_init::str2 debug_print_init::@8/(const string) debug_print_init::str3 debug_print_init::@9/(const string) debug_print_init::str4 ) - to:print_str_at::@1 -print_str_at::@1: scope:[print_str_at] from print_str_at print_str_at::@2 - [280] (byte*) print_str_at::at#13 ← phi( print_str_at/(byte*) print_str_at::at#15 print_str_at::@2/(byte*) print_str_at::at#0 ) - [280] (byte*) print_str_at::str#13 ← phi( print_str_at/(byte*) print_str_at::str#15 print_str_at::@2/(byte*) print_str_at::str#0 ) - [281] if(*((byte*) print_str_at::str#13)!=(byte) '@') goto print_str_at::@2 - to:print_str_at::@return -print_str_at::@return: scope:[print_str_at] from print_str_at::@1 - [282] return - to:@return -print_str_at::@2: scope:[print_str_at] from print_str_at::@1 - [283] *((byte*) print_str_at::at#13) ← *((byte*) print_str_at::str#13) - [284] (byte*) print_str_at::at#0 ← ++ (byte*) print_str_at::at#13 - [285] (byte*) print_str_at::str#0 ← ++ (byte*) print_str_at::str#13 - to:print_str_at::@1 -print_cls: scope:[print_cls] from debug_print_init - [286] phi() - to:print_cls::@1 -print_cls::@1: scope:[print_cls] from print_cls print_cls::@1 - [287] (byte*) print_cls::sc#2 ← phi( print_cls/(const byte*) print_screen#0 print_cls::@1/(byte*) print_cls::sc#1 ) - [288] *((byte*) print_cls::sc#2) ← (byte) ' ' - [289] (byte*) print_cls::sc#1 ← ++ (byte*) print_cls::sc#2 - [290] if((byte*) print_cls::sc#1!=(const byte*) print_screen#0+(word/signed word/dword/signed dword) 1000) goto print_cls::@1 - to:print_cls::@return -print_cls::@return: scope:[print_cls] from print_cls::@1 - [291] return +calculate_matrix: scope:[calculate_matrix] from anim::@6 + [58] (signed byte) calculate_matrix::t1#0 ← (signed byte) calculate_matrix::sy#0 - (const signed byte) sz#0 + [59] (signed byte) calculate_matrix::t2#0 ← (signed byte) calculate_matrix::sy#0 + (const signed byte) sz#0 + [60] (signed byte) calculate_matrix::t3#0 ← (signed byte) calculate_matrix::sx#0 + [61] (signed byte) calculate_matrix::t4#0 ← (signed byte) calculate_matrix::sx#0 + [62] (signed byte) calculate_matrix::t5#0 ← (signed byte) calculate_matrix::sx#0 + (signed byte) calculate_matrix::t2#0 + [63] (signed byte) calculate_matrix::t6#0 ← (signed byte) calculate_matrix::sx#0 - (signed byte) calculate_matrix::t1#0 + [64] (signed byte) calculate_matrix::t7#0 ← (signed byte) calculate_matrix::sx#0 + (signed byte) calculate_matrix::t1#0 + [65] (signed byte) calculate_matrix::t8#0 ← (signed byte) calculate_matrix::t2#0 - (signed byte) calculate_matrix::sx#0 + [66] (signed byte) calculate_matrix::t9#0 ← (signed byte) calculate_matrix::sy#0 - (signed byte) calculate_matrix::sx#0 + [67] (signed byte) calculate_matrix::t10#0 ← (signed byte) calculate_matrix::sy#0 + (signed byte) calculate_matrix::sx#0 + [68] (signed byte~) calculate_matrix::$10 ← *((const signed byte*) COSH#0 + (signed byte) calculate_matrix::t1#0) + *((const signed byte*) COSH#0 + (signed byte) calculate_matrix::t2#0) + [69] *((const signed byte[9]) rotation_matrix#0) ← (signed byte~) calculate_matrix::$10 + [70] (signed byte~) calculate_matrix::$11 ← *((const signed byte*) SINH#0 + (signed byte) calculate_matrix::t1#0) - *((const signed byte*) SINH#0 + (signed byte) calculate_matrix::t2#0) + [71] *((const signed byte[9]) rotation_matrix#0+(byte/signed byte/word/signed word/dword/signed dword) 1) ← (signed byte~) calculate_matrix::$11 + [72] (signed byte~) calculate_matrix::$12 ← *((const signed byte*) SINH#0 + (signed byte) calculate_matrix::sy#0) + *((const signed byte*) SINH#0 + (signed byte) calculate_matrix::sy#0) + [73] *((const signed byte[9]) rotation_matrix#0+(byte/signed byte/word/signed word/dword/signed dword) 2) ← (signed byte~) calculate_matrix::$12 + [74] (signed byte~) calculate_matrix::$13 ← *((const signed byte*) SINH#0+(const signed byte) sz#0 + (signed byte) calculate_matrix::t3#0) - *((const signed byte*) SINH#0+-(const signed byte) sz#0 + (signed byte) calculate_matrix::t4#0) + [75] (signed byte~) calculate_matrix::$14 ← (signed byte~) calculate_matrix::$13 + *((const signed byte*) COSQ#0 + (signed byte) calculate_matrix::t6#0) + [76] (signed byte~) calculate_matrix::$15 ← (signed byte~) calculate_matrix::$14 - *((const signed byte*) COSQ#0 + (signed byte) calculate_matrix::t5#0) + [77] (signed byte~) calculate_matrix::$16 ← (signed byte~) calculate_matrix::$15 + *((const signed byte*) COSQ#0 + (signed byte) calculate_matrix::t8#0) + [78] (signed byte~) calculate_matrix::$17 ← (signed byte~) calculate_matrix::$16 - *((const signed byte*) COSQ#0 + (signed byte) calculate_matrix::t7#0) + [79] *((const signed byte[9]) rotation_matrix#0+(byte/signed byte/word/signed word/dword/signed dword) 3) ← (signed byte~) calculate_matrix::$17 + [80] (signed byte~) calculate_matrix::$18 ← *((const signed byte*) COSH#0 + (signed byte) calculate_matrix::t3#0) + *((const signed byte*) COSH#0 + (signed byte) calculate_matrix::t4#0) + [81] (signed byte~) calculate_matrix::$19 ← (signed byte~) calculate_matrix::$18 + *((const signed byte*) SINQ#0 + (signed byte) calculate_matrix::t5#0) + [82] (signed byte~) calculate_matrix::$20 ← (signed byte~) calculate_matrix::$19 - *((const signed byte*) SINQ#0 + (signed byte) calculate_matrix::t6#0) + [83] (signed byte~) calculate_matrix::$21 ← (signed byte~) calculate_matrix::$20 - *((const signed byte*) SINQ#0 + (signed byte) calculate_matrix::t7#0) + [84] (signed byte~) calculate_matrix::$22 ← (signed byte~) calculate_matrix::$21 - *((const signed byte*) SINQ#0 + (signed byte) calculate_matrix::t8#0) + [85] *((const signed byte[9]) rotation_matrix#0+(byte/signed byte/word/signed word/dword/signed dword) 4) ← (signed byte~) calculate_matrix::$22 + [86] (signed byte~) calculate_matrix::$23 ← *((const signed byte*) SINH#0 + (signed byte) calculate_matrix::t9#0) - *((const signed byte*) SINH#0 + (signed byte) calculate_matrix::t10#0) + [87] *((const signed byte[9]) rotation_matrix#0+(byte/signed byte/word/signed word/dword/signed dword) 5) ← (signed byte~) calculate_matrix::$23 + [88] (signed byte~) calculate_matrix::$24 ← *((const signed byte*) COSH#0 + (signed byte) calculate_matrix::t4#0) - *((const signed byte*) COSH#0 + (signed byte) calculate_matrix::t3#0) + [89] (signed byte~) calculate_matrix::$25 ← (signed byte~) calculate_matrix::$24 + *((const signed byte*) SINQ#0 + (signed byte) calculate_matrix::t6#0) + [90] (signed byte~) calculate_matrix::$26 ← (signed byte~) calculate_matrix::$25 - *((const signed byte*) SINQ#0 + (signed byte) calculate_matrix::t5#0) + [91] (signed byte~) calculate_matrix::$27 ← (signed byte~) calculate_matrix::$26 - *((const signed byte*) SINQ#0 + (signed byte) calculate_matrix::t8#0) + [92] (signed byte~) calculate_matrix::$28 ← (signed byte~) calculate_matrix::$27 - *((const signed byte*) SINQ#0 + (signed byte) calculate_matrix::t7#0) + [93] *((const signed byte[9]) rotation_matrix#0+(byte/signed byte/word/signed word/dword/signed dword) 6) ← (signed byte~) calculate_matrix::$28 + [94] (signed byte~) calculate_matrix::$29 ← *((const signed byte*) SINH#0 + (signed byte) calculate_matrix::t3#0) + *((const signed byte*) SINH#0 + (signed byte) calculate_matrix::t4#0) + [95] (signed byte~) calculate_matrix::$30 ← (signed byte~) calculate_matrix::$29 + *((const signed byte*) COSQ#0 + (signed byte) calculate_matrix::t6#0) + [96] (signed byte~) calculate_matrix::$31 ← (signed byte~) calculate_matrix::$30 - *((const signed byte*) COSQ#0 + (signed byte) calculate_matrix::t5#0) + [97] (signed byte~) calculate_matrix::$32 ← (signed byte~) calculate_matrix::$31 + *((const signed byte*) COSQ#0 + (signed byte) calculate_matrix::t7#0) + [98] (signed byte~) calculate_matrix::$33 ← (signed byte~) calculate_matrix::$32 - *((const signed byte*) COSQ#0 + (signed byte) calculate_matrix::t8#0) + [99] *((const signed byte[9]) rotation_matrix#0+(byte/signed byte/word/signed word/dword/signed dword) 7) ← (signed byte~) calculate_matrix::$33 + [100] (signed byte~) calculate_matrix::$34 ← *((const signed byte*) COSH#0 + (signed byte) calculate_matrix::t9#0) + *((const signed byte*) COSH#0 + (signed byte) calculate_matrix::t10#0) + [101] *((const signed byte[9]) rotation_matrix#0+(byte/signed byte/word/signed word/dword/signed dword) 8) ← (signed byte~) calculate_matrix::$34 + to:calculate_matrix::@return +calculate_matrix::@return: scope:[calculate_matrix] from calculate_matrix + [102] return to:@return sprites_init: scope:[sprites_init] from main - [292] *((const byte*) SPRITES_ENABLE#0) ← (byte/word/signed word/dword/signed dword) 255 + [103] *((const byte*) SPRITES_ENABLE#0) ← (byte/word/signed word/dword/signed dword) 255 to:sprites_init::@1 sprites_init::@1: scope:[sprites_init] from sprites_init sprites_init::@1 - [293] (byte) sprites_init::i#2 ← phi( sprites_init/(byte/signed byte/word/signed word/dword/signed dword) 0 sprites_init::@1/(byte) sprites_init::i#1 ) - [294] *((const byte*) sprites_init::sprites_ptr#0 + (byte) sprites_init::i#2) ← ((byte))(const byte*) SPRITE#0/(byte/signed byte/word/signed word/dword/signed dword) 64 - [295] (byte/signed word/word/dword/signed dword~) sprites_init::$3 ← (byte/signed byte/word/signed word/dword/signed dword) 8 + (byte) sprites_init::i#2 - [296] *((const byte*) SPRITES_COLS#0 + (byte) sprites_init::i#2) ← (byte/signed word/word/dword/signed dword~) sprites_init::$3 - [297] (byte) sprites_init::i#1 ← ++ (byte) sprites_init::i#2 - [298] if((byte) sprites_init::i#1!=(byte/signed byte/word/signed word/dword/signed dword) 8) goto sprites_init::@1 + [104] (byte) sprites_init::i#2 ← phi( sprites_init/(byte/signed byte/word/signed word/dword/signed dword) 0 sprites_init::@1/(byte) sprites_init::i#1 ) + [105] *((const byte*) sprites_init::sprites_ptr#0 + (byte) sprites_init::i#2) ← ((byte))(const byte*) SPRITE#0/(byte/signed byte/word/signed word/dword/signed dword) 64 + [106] *((const byte*) SPRITES_COLS#0 + (byte) sprites_init::i#2) ← (const byte) GREEN#0 + [107] (byte) sprites_init::i#1 ← ++ (byte) sprites_init::i#2 + [108] if((byte) sprites_init::i#1!=(byte/signed byte/word/signed word/dword/signed dword) 8) goto sprites_init::@1 to:sprites_init::@return sprites_init::@return: scope:[sprites_init] from sprites_init::@1 - [299] return + [109] return to:@return diff --git a/src/test/ref/examples/3d/3d.log b/src/test/ref/examples/3d/3d.log index 7944a7297..f30d43baf 100644 --- a/src/test/ref/examples/3d/3d.log +++ b/src/test/ref/examples/3d/3d.log @@ -96,128 +96,11 @@ CONTROL FLOW GRAPH SSA (byte*) SPRITES_ENABLE#0 ← ((byte*)) (word/dword/signed dword) 53269 (byte*) BORDERCOL#0 ← ((byte*)) (word/dword/signed dword) 53280 (byte*) SPRITES_COLS#0 ← ((byte*)) (word/dword/signed dword) 53287 + (byte) GREEN#0 ← (byte/signed byte/word/signed word/dword/signed dword) 5 (byte) LIGHT_BLUE#0 ← (byte/signed byte/word/signed word/dword/signed dword) 14 (byte) LIGHT_GREY#0 ← (byte/signed byte/word/signed word/dword/signed dword) 15 - to:@3 -@3: scope:[] from @begin - (byte*) print_screen#0 ← ((byte*)) (word/signed word/dword/signed dword) 1024 - to:@14 -print_str_at: scope:[print_str_at] from debug_print_init::@10 debug_print_init::@11 debug_print_init::@12 debug_print_init::@13 debug_print_init::@14 debug_print_init::@15 debug_print_init::@16 debug_print_init::@5 debug_print_init::@6 debug_print_init::@7 debug_print_init::@8 debug_print_init::@9 - (byte*) print_str_at::at#15 ← phi( debug_print_init::@10/(byte*) print_str_at::at#6 debug_print_init::@11/(byte*) print_str_at::at#7 debug_print_init::@12/(byte*) print_str_at::at#8 debug_print_init::@13/(byte*) print_str_at::at#9 debug_print_init::@14/(byte*) print_str_at::at#10 debug_print_init::@15/(byte*) print_str_at::at#11 debug_print_init::@16/(byte*) print_str_at::at#12 debug_print_init::@5/(byte*) print_str_at::at#1 debug_print_init::@6/(byte*) print_str_at::at#2 debug_print_init::@7/(byte*) print_str_at::at#3 debug_print_init::@8/(byte*) print_str_at::at#4 debug_print_init::@9/(byte*) print_str_at::at#5 ) - (byte*) print_str_at::str#15 ← phi( debug_print_init::@10/(byte*) print_str_at::str#6 debug_print_init::@11/(byte*) print_str_at::str#7 debug_print_init::@12/(byte*) print_str_at::str#8 debug_print_init::@13/(byte*) print_str_at::str#9 debug_print_init::@14/(byte*) print_str_at::str#10 debug_print_init::@15/(byte*) print_str_at::str#11 debug_print_init::@16/(byte*) print_str_at::str#12 debug_print_init::@5/(byte*) print_str_at::str#1 debug_print_init::@6/(byte*) print_str_at::str#2 debug_print_init::@7/(byte*) print_str_at::str#3 debug_print_init::@8/(byte*) print_str_at::str#4 debug_print_init::@9/(byte*) print_str_at::str#5 ) - to:print_str_at::@1 -print_str_at::@1: scope:[print_str_at] from print_str_at print_str_at::@2 - (byte*) print_str_at::at#14 ← phi( print_str_at/(byte*) print_str_at::at#15 print_str_at::@2/(byte*) print_str_at::at#0 ) - (byte*) print_str_at::str#13 ← phi( print_str_at/(byte*) print_str_at::str#15 print_str_at::@2/(byte*) print_str_at::str#0 ) - (bool~) print_str_at::$0 ← *((byte*) print_str_at::str#13) != (byte) '@' - if((bool~) print_str_at::$0) goto print_str_at::@2 - to:print_str_at::@return -print_str_at::@2: scope:[print_str_at] from print_str_at::@1 - (byte*) print_str_at::at#13 ← phi( print_str_at::@1/(byte*) print_str_at::at#14 ) - (byte*) print_str_at::str#14 ← phi( print_str_at::@1/(byte*) print_str_at::str#13 ) - *((byte*) print_str_at::at#13) ← *((byte*) print_str_at::str#14) - (byte*) print_str_at::at#0 ← ++ (byte*) print_str_at::at#13 - (byte*) print_str_at::str#0 ← ++ (byte*) print_str_at::str#14 - to:print_str_at::@1 -print_str_at::@return: scope:[print_str_at] from print_str_at::@1 - return - to:@return -print_sbyte_at: scope:[print_sbyte_at] from debug_print debug_print::@1 debug_print::@10 debug_print::@11 debug_print::@12 debug_print::@13 debug_print::@15 debug_print::@16 debug_print::@17 debug_print::@18 debug_print::@19 debug_print::@3 debug_print::@4 debug_print::@5 debug_print::@6 debug_print::@7 debug_print::@8 debug_print::@9 debug_print_init::@1 debug_print_init::@18 debug_print_init::@19 - (byte*) print_sbyte_at::at#24 ← phi( debug_print/(byte*) print_sbyte_at::at#3 debug_print::@1/(byte*) print_sbyte_at::at#15 debug_print::@10/(byte*) print_sbyte_at::at#11 debug_print::@11/(byte*) print_sbyte_at::at#12 debug_print::@12/(byte*) print_sbyte_at::at#13 debug_print::@13/(byte*) print_sbyte_at::at#14 debug_print::@15/(byte*) print_sbyte_at::at#16 debug_print::@16/(byte*) print_sbyte_at::at#17 debug_print::@17/(byte*) print_sbyte_at::at#18 debug_print::@18/(byte*) print_sbyte_at::at#19 debug_print::@19/(byte*) print_sbyte_at::at#20 debug_print::@3/(byte*) print_sbyte_at::at#4 debug_print::@4/(byte*) print_sbyte_at::at#5 debug_print::@5/(byte*) print_sbyte_at::at#6 debug_print::@6/(byte*) print_sbyte_at::at#7 debug_print::@7/(byte*) print_sbyte_at::at#8 debug_print::@8/(byte*) print_sbyte_at::at#9 debug_print::@9/(byte*) print_sbyte_at::at#10 debug_print_init::@1/(byte*) print_sbyte_at::at#0 debug_print_init::@18/(byte*) print_sbyte_at::at#1 debug_print_init::@19/(byte*) print_sbyte_at::at#2 ) - (signed byte) print_sbyte_at::b#22 ← phi( debug_print/(signed byte) print_sbyte_at::b#4 debug_print::@1/(signed byte) print_sbyte_at::b#16 debug_print::@10/(signed byte) print_sbyte_at::b#12 debug_print::@11/(signed byte) print_sbyte_at::b#13 debug_print::@12/(signed byte) print_sbyte_at::b#14 debug_print::@13/(signed byte) print_sbyte_at::b#15 debug_print::@15/(signed byte) print_sbyte_at::b#17 debug_print::@16/(signed byte) print_sbyte_at::b#18 debug_print::@17/(signed byte) print_sbyte_at::b#19 debug_print::@18/(signed byte) print_sbyte_at::b#20 debug_print::@19/(signed byte) print_sbyte_at::b#21 debug_print::@3/(signed byte) print_sbyte_at::b#5 debug_print::@4/(signed byte) print_sbyte_at::b#6 debug_print::@5/(signed byte) print_sbyte_at::b#7 debug_print::@6/(signed byte) print_sbyte_at::b#8 debug_print::@7/(signed byte) print_sbyte_at::b#9 debug_print::@8/(signed byte) print_sbyte_at::b#10 debug_print::@9/(signed byte) print_sbyte_at::b#11 debug_print_init::@1/(signed byte) print_sbyte_at::b#1 debug_print_init::@18/(signed byte) print_sbyte_at::b#2 debug_print_init::@19/(signed byte) print_sbyte_at::b#3 ) - (bool~) print_sbyte_at::$0 ← (signed byte) print_sbyte_at::b#22 < (byte/signed byte/word/signed word/dword/signed dword) 0 - if((bool~) print_sbyte_at::$0) goto print_sbyte_at::@1 - to:print_sbyte_at::@3 -print_sbyte_at::@1: scope:[print_sbyte_at] from print_sbyte_at - (signed byte) print_sbyte_at::b#25 ← phi( print_sbyte_at/(signed byte) print_sbyte_at::b#22 ) - (byte*) print_sbyte_at::at#21 ← phi( print_sbyte_at/(byte*) print_sbyte_at::at#24 ) - (byte) print_char_at::ch#0 ← (byte) '-' - (byte*) print_char_at::at#0 ← (byte*) print_sbyte_at::at#21 - call print_char_at - to:print_sbyte_at::@5 -print_sbyte_at::@5: scope:[print_sbyte_at] from print_sbyte_at::@1 - (byte*) print_sbyte_at::at#25 ← phi( print_sbyte_at::@1/(byte*) print_sbyte_at::at#21 ) - (signed byte) print_sbyte_at::b#23 ← phi( print_sbyte_at::@1/(signed byte) print_sbyte_at::b#25 ) - (signed byte~) print_sbyte_at::$3 ← - (signed byte) print_sbyte_at::b#23 - (signed byte) print_sbyte_at::b#0 ← (signed byte~) print_sbyte_at::$3 - to:print_sbyte_at::@2 -print_sbyte_at::@3: scope:[print_sbyte_at] from print_sbyte_at - (signed byte) print_sbyte_at::b#27 ← phi( print_sbyte_at/(signed byte) print_sbyte_at::b#22 ) - (byte*) print_sbyte_at::at#22 ← phi( print_sbyte_at/(byte*) print_sbyte_at::at#24 ) - (byte) print_char_at::ch#1 ← (byte) ' ' - (byte*) print_char_at::at#1 ← (byte*) print_sbyte_at::at#22 - call print_char_at - to:print_sbyte_at::@6 -print_sbyte_at::@6: scope:[print_sbyte_at] from print_sbyte_at::@3 - (byte*) print_sbyte_at::at#26 ← phi( print_sbyte_at::@3/(byte*) print_sbyte_at::at#22 ) - (signed byte) print_sbyte_at::b#26 ← phi( print_sbyte_at::@3/(signed byte) print_sbyte_at::b#27 ) - to:print_sbyte_at::@2 -print_sbyte_at::@2: scope:[print_sbyte_at] from print_sbyte_at::@5 print_sbyte_at::@6 - (byte*) print_sbyte_at::at#23 ← phi( print_sbyte_at::@5/(byte*) print_sbyte_at::at#25 print_sbyte_at::@6/(byte*) print_sbyte_at::at#26 ) - (signed byte) print_sbyte_at::b#24 ← phi( print_sbyte_at::@5/(signed byte) print_sbyte_at::b#0 print_sbyte_at::@6/(signed byte) print_sbyte_at::b#26 ) - (byte~) print_sbyte_at::$4 ← ((byte)) (signed byte) print_sbyte_at::b#24 - (byte*~) print_sbyte_at::$5 ← (byte*) print_sbyte_at::at#23 + (byte/signed byte/word/signed word/dword/signed dword) 1 - (byte) print_byte_at::b#0 ← (byte~) print_sbyte_at::$4 - (byte*) print_byte_at::at#0 ← (byte*~) print_sbyte_at::$5 - call print_byte_at - to:print_sbyte_at::@7 -print_sbyte_at::@7: scope:[print_sbyte_at] from print_sbyte_at::@2 - to:print_sbyte_at::@return -print_sbyte_at::@return: scope:[print_sbyte_at] from print_sbyte_at::@7 - return - to:@return -@14: scope:[] from @3 - (byte*) print_screen#10 ← phi( @3/(byte*) print_screen#0 ) - (byte[]) print_hextab#0 ← (const string) $10 to:@20 -print_byte_at: scope:[print_byte_at] from print_sbyte_at::@2 - (byte*) print_byte_at::at#1 ← phi( print_sbyte_at::@2/(byte*) print_byte_at::at#0 ) - (byte) print_byte_at::b#1 ← phi( print_sbyte_at::@2/(byte) print_byte_at::b#0 ) - (byte~) print_byte_at::$0 ← (byte) print_byte_at::b#1 >> (byte/signed byte/word/signed word/dword/signed dword) 4 - (byte) print_char_at::ch#2 ← *((byte[]) print_hextab#0 + (byte~) print_byte_at::$0) - (byte*) print_char_at::at#2 ← (byte*) print_byte_at::at#1 - call print_char_at - to:print_byte_at::@1 -print_byte_at::@1: scope:[print_byte_at] from print_byte_at - (byte*) print_byte_at::at#2 ← phi( print_byte_at/(byte*) print_byte_at::at#1 ) - (byte) print_byte_at::b#2 ← phi( print_byte_at/(byte) print_byte_at::b#1 ) - (byte~) print_byte_at::$2 ← (byte) print_byte_at::b#2 & (byte/signed byte/word/signed word/dword/signed dword) 15 - (byte*~) print_byte_at::$3 ← (byte*) print_byte_at::at#2 + (byte/signed byte/word/signed word/dword/signed dword) 1 - (byte) print_char_at::ch#3 ← *((byte[]) print_hextab#0 + (byte~) print_byte_at::$2) - (byte*) print_char_at::at#3 ← (byte*~) print_byte_at::$3 - call print_char_at - to:print_byte_at::@2 -print_byte_at::@2: scope:[print_byte_at] from print_byte_at::@1 - to:print_byte_at::@return -print_byte_at::@return: scope:[print_byte_at] from print_byte_at::@2 - return - to:@return -print_char_at: scope:[print_char_at] from print_byte_at print_byte_at::@1 print_sbyte_at::@1 print_sbyte_at::@3 - (byte*) print_char_at::at#4 ← phi( print_byte_at/(byte*) print_char_at::at#2 print_byte_at::@1/(byte*) print_char_at::at#3 print_sbyte_at::@1/(byte*) print_char_at::at#0 print_sbyte_at::@3/(byte*) print_char_at::at#1 ) - (byte) print_char_at::ch#4 ← phi( print_byte_at/(byte) print_char_at::ch#2 print_byte_at::@1/(byte) print_char_at::ch#3 print_sbyte_at::@1/(byte) print_char_at::ch#0 print_sbyte_at::@3/(byte) print_char_at::ch#1 ) - *((byte*) print_char_at::at#4) ← (byte) print_char_at::ch#4 - to:print_char_at::@return -print_char_at::@return: scope:[print_char_at] from print_char_at - return - to:@return -print_cls: scope:[print_cls] from debug_print_init - (byte*) print_screen#1 ← phi( debug_print_init/(byte*) print_screen#3 ) - (byte*) print_cls::sc#0 ← (byte*) print_screen#1 - to:print_cls::@1 -print_cls::@1: scope:[print_cls] from print_cls print_cls::@1 - (byte*) print_screen#2 ← phi( print_cls/(byte*) print_screen#1 print_cls::@1/(byte*) print_screen#2 ) - (byte*) print_cls::sc#2 ← phi( print_cls/(byte*) print_cls::sc#0 print_cls::@1/(byte*) print_cls::sc#1 ) - *((byte*) print_cls::sc#2) ← (byte) ' ' - (byte*) print_cls::sc#1 ← ++ (byte*) print_cls::sc#2 - (byte*~) print_cls::$0 ← (byte*) print_screen#2 + (word/signed word/dword/signed dword) 1000 - (bool~) print_cls::$1 ← (byte*) print_cls::sc#1 != (byte*~) print_cls::$0 - if((bool~) print_cls::$1) goto print_cls::@1 - to:print_cls::@return -print_cls::@return: scope:[print_cls] from print_cls::@1 - return - to:@return -@20: scope:[] from @14 - (byte*) print_screen#9 ← phi( @14/(byte*) print_screen#10 ) +@20: scope:[] from @begin (signed byte*) xr#0 ← ((signed byte*)) (byte/word/signed word/dword/signed dword) 240 (signed byte*) yr#0 ← ((signed byte*)) (byte/word/signed word/dword/signed dword) 241 (signed byte*) zr#0 ← ((signed byte*)) (byte/word/signed word/dword/signed dword) 242 @@ -226,52 +109,43 @@ print_cls::@return: scope:[print_cls] from print_cls::@1 (signed byte*) yp#0 ← ((signed byte*)) (byte/word/signed word/dword/signed dword) 245 (word*) psp1#0 ← ((word*)) (byte/word/signed word/dword/signed dword) 246 (word*) psp2#0 ← ((word*)) (byte/word/signed word/dword/signed dword) 248 - (byte*) SCREEN#0 ← ((byte*)) (word/signed word/dword/signed dword) 1024 to:@21 -main: scope:[main] from @29 - (signed byte*) yp#15 ← phi( @29/(signed byte*) yp#16 ) - (signed byte*) xp#15 ← phi( @29/(signed byte*) xp#16 ) - (signed byte*) pp#15 ← phi( @29/(signed byte*) pp#16 ) - (signed byte*) zr#16 ← phi( @29/(signed byte*) zr#17 ) - (signed byte*) yr#16 ← phi( @29/(signed byte*) yr#17 ) - (signed byte*) xr#16 ← phi( @29/(signed byte*) xr#17 ) - (byte*) SINQ_HI#13 ← phi( @29/(byte*) SINQ_HI#0 ) - (byte*) COSQ_HI#13 ← phi( @29/(byte*) COSQ_HI#0 ) - (byte*) SINH_LO#13 ← phi( @29/(byte*) SINH_LO#0 ) - (byte*) SINH_HI#13 ← phi( @29/(byte*) SINH_HI#0 ) - (byte*) COSH_LO#13 ← phi( @29/(byte*) COSH_LO#0 ) - (byte*) COSH_HI#13 ← phi( @29/(byte*) COSH_HI#0 ) - (byte*) SCREEN#31 ← phi( @29/(byte*) SCREEN#33 ) - (byte*) print_screen#5 ← phi( @29/(byte*) print_screen#6 ) - (signed byte) sz#26 ← phi( @29/(signed byte) sz#18 ) - (signed byte) sy#25 ← phi( @29/(signed byte) sy#18 ) - (signed byte) sx#24 ← phi( @29/(signed byte) sx#17 ) - (byte*) SPRITE#3 ← phi( @29/(byte*) SPRITE#0 ) - (word*) psp2#2 ← phi( @29/(word*) psp2#3 ) - (byte*) mulf_sqr2#2 ← phi( @29/(byte*) mulf_sqr2#0 ) - (word*) psp1#2 ← phi( @29/(word*) psp1#3 ) - (byte*) mulf_sqr1#2 ← phi( @29/(byte*) mulf_sqr1#0 ) +main: scope:[main] from @30 + (signed byte*) yp#13 ← phi( @30/(signed byte*) yp#14 ) + (signed byte*) xp#13 ← phi( @30/(signed byte*) xp#14 ) + (signed byte*) pp#13 ← phi( @30/(signed byte*) pp#14 ) + (signed byte*) zr#14 ← phi( @30/(signed byte*) zr#15 ) + (signed byte*) yr#14 ← phi( @30/(signed byte*) yr#15 ) + (signed byte*) xr#14 ← phi( @30/(signed byte*) xr#15 ) + (signed byte*) SINQ#11 ← phi( @30/(signed byte*) SINQ#0 ) + (signed byte*) COSQ#11 ← phi( @30/(signed byte*) COSQ#0 ) + (signed byte*) SINH#11 ← phi( @30/(signed byte*) SINH#0 ) + (signed byte*) COSH#11 ← phi( @30/(signed byte*) COSH#0 ) + (signed byte) sz#10 ← phi( @30/(signed byte) sz#12 ) + (byte*) SPRITE#3 ← phi( @30/(byte*) SPRITE#0 ) + (signed byte) sy#17 ← phi( @30/(signed byte) sy#16 ) + (signed byte) sx#17 ← phi( @30/(signed byte) sx#16 ) + (word*) psp2#2 ← phi( @30/(word*) psp2#3 ) + (byte*) mulf_sqr2#2 ← phi( @30/(byte*) mulf_sqr2#0 ) + (word*) psp1#2 ← phi( @30/(word*) psp1#3 ) + (byte*) mulf_sqr1#2 ← phi( @30/(byte*) mulf_sqr1#0 ) asm { sei } call sprites_init to:main::@1 main::@1: scope:[main] from main - (signed byte*) yp#14 ← phi( main/(signed byte*) yp#15 ) - (signed byte*) xp#14 ← phi( main/(signed byte*) xp#15 ) - (signed byte*) pp#14 ← phi( main/(signed byte*) pp#15 ) - (signed byte*) zr#15 ← phi( main/(signed byte*) zr#16 ) - (signed byte*) yr#15 ← phi( main/(signed byte*) yr#16 ) - (signed byte*) xr#15 ← phi( main/(signed byte*) xr#16 ) - (byte*) SINQ_HI#11 ← phi( main/(byte*) SINQ_HI#13 ) - (byte*) COSQ_HI#11 ← phi( main/(byte*) COSQ_HI#13 ) - (byte*) SINH_LO#11 ← phi( main/(byte*) SINH_LO#13 ) - (byte*) SINH_HI#11 ← phi( main/(byte*) SINH_HI#13 ) - (byte*) COSH_LO#11 ← phi( main/(byte*) COSH_LO#13 ) - (byte*) COSH_HI#11 ← phi( main/(byte*) COSH_HI#13 ) - (byte*) SCREEN#30 ← phi( main/(byte*) SCREEN#31 ) - (byte*) print_screen#4 ← phi( main/(byte*) print_screen#5 ) - (signed byte) sz#19 ← phi( main/(signed byte) sz#26 ) - (signed byte) sy#19 ← phi( main/(signed byte) sy#25 ) - (signed byte) sx#18 ← phi( main/(signed byte) sx#24 ) + (signed byte*) yp#12 ← phi( main/(signed byte*) yp#13 ) + (signed byte*) xp#12 ← phi( main/(signed byte*) xp#13 ) + (signed byte*) pp#12 ← phi( main/(signed byte*) pp#13 ) + (signed byte*) zr#13 ← phi( main/(signed byte*) zr#14 ) + (signed byte*) yr#13 ← phi( main/(signed byte*) yr#14 ) + (signed byte*) xr#13 ← phi( main/(signed byte*) xr#14 ) + (signed byte*) SINQ#9 ← phi( main/(signed byte*) SINQ#11 ) + (signed byte*) COSQ#9 ← phi( main/(signed byte*) COSQ#11 ) + (signed byte*) SINH#9 ← phi( main/(signed byte*) SINH#11 ) + (signed byte*) COSH#9 ← phi( main/(signed byte*) COSH#11 ) + (signed byte) sz#8 ← phi( main/(signed byte) sz#10 ) + (signed byte) sy#12 ← phi( main/(signed byte) sy#17 ) + (signed byte) sx#12 ← phi( main/(signed byte) sx#17 ) (word*) psp2#1 ← phi( main/(word*) psp2#2 ) (byte*) mulf_sqr2#1 ← phi( main/(byte*) mulf_sqr2#2 ) (word*) psp1#1 ← phi( main/(word*) psp1#2 ) @@ -280,62 +154,39 @@ main::@1: scope:[main] from main *((word*) psp1#1) ← (word~) main::$1 (word~) main::$2 ← ((word)) (byte*) mulf_sqr2#1 *((word*) psp2#1) ← (word~) main::$2 - call debug_print_init + call anim to:main::@2 main::@2: scope:[main] from main::@1 - (byte*) SCREEN#45 ← phi( main::@1/(byte*) SCREEN#30 ) - (signed byte*) yp#12 ← phi( main::@1/(signed byte*) yp#14 ) - (signed byte*) xp#12 ← phi( main::@1/(signed byte*) xp#14 ) - (signed byte*) pp#12 ← phi( main::@1/(signed byte*) pp#14 ) - (signed byte*) zr#13 ← phi( main::@1/(signed byte*) zr#15 ) - (signed byte*) yr#13 ← phi( main::@1/(signed byte*) yr#15 ) - (signed byte*) xr#13 ← phi( main::@1/(signed byte*) xr#15 ) - (byte*) SINQ_HI#9 ← phi( main::@1/(byte*) SINQ_HI#11 ) - (byte*) COSQ_HI#9 ← phi( main::@1/(byte*) COSQ_HI#11 ) - (byte*) SINH_LO#9 ← phi( main::@1/(byte*) SINH_LO#11 ) - (byte*) SINH_HI#9 ← phi( main::@1/(byte*) SINH_HI#11 ) - (byte*) COSH_LO#9 ← phi( main::@1/(byte*) COSH_LO#11 ) - (byte*) COSH_HI#9 ← phi( main::@1/(byte*) COSH_HI#11 ) - (signed byte) sz#13 ← phi( main::@1/(signed byte) sz#19 ) - (signed byte) sy#13 ← phi( main::@1/(signed byte) sy#19 ) - (signed byte) sx#13 ← phi( main::@1/(signed byte) sx#18 ) - call anim - to:main::@3 -main::@3: scope:[main] from main::@2 - (signed byte) sz#6 ← phi( main::@2/(signed byte) sz#4 ) - (signed byte) sy#6 ← phi( main::@2/(signed byte) sy#4 ) - (signed byte) sx#6 ← phi( main::@2/(signed byte) sx#4 ) + (signed byte) sy#6 ← phi( main::@1/(signed byte) sy#4 ) + (signed byte) sx#6 ← phi( main::@1/(signed byte) sx#4 ) (signed byte) sx#0 ← (signed byte) sx#6 (signed byte) sy#0 ← (signed byte) sy#6 - (signed byte) sz#0 ← (signed byte) sz#6 to:main::@return -main::@return: scope:[main] from main::@3 - (signed byte) sz#7 ← phi( main::@3/(signed byte) sz#0 ) - (signed byte) sy#7 ← phi( main::@3/(signed byte) sy#0 ) - (signed byte) sx#7 ← phi( main::@3/(signed byte) sx#0 ) +main::@return: scope:[main] from main::@2 + (signed byte) sy#7 ← phi( main::@2/(signed byte) sy#0 ) + (signed byte) sx#7 ← phi( main::@2/(signed byte) sx#0 ) (signed byte) sx#1 ← (signed byte) sx#7 (signed byte) sy#1 ← (signed byte) sy#7 - (signed byte) sz#1 ← (signed byte) sz#7 return to:@return @21: scope:[] from @20 - (signed byte*) yp#18 ← phi( @20/(signed byte*) yp#0 ) - (signed byte*) xp#18 ← phi( @20/(signed byte*) xp#0 ) - (signed byte*) pp#18 ← phi( @20/(signed byte*) pp#0 ) - (signed byte*) zr#19 ← phi( @20/(signed byte*) zr#0 ) - (signed byte*) yr#19 ← phi( @20/(signed byte*) yr#0 ) - (signed byte*) xr#19 ← phi( @20/(signed byte*) xr#0 ) - (byte*) SCREEN#38 ← phi( @20/(byte*) SCREEN#0 ) - (byte*) print_screen#8 ← phi( @20/(byte*) print_screen#9 ) + (signed byte*) yp#16 ← phi( @20/(signed byte*) yp#0 ) + (signed byte*) xp#16 ← phi( @20/(signed byte*) xp#0 ) + (signed byte*) pp#16 ← phi( @20/(signed byte*) pp#0 ) + (signed byte*) zr#17 ← phi( @20/(signed byte*) zr#0 ) + (signed byte*) yr#17 ← phi( @20/(signed byte*) yr#0 ) + (signed byte*) xr#17 ← phi( @20/(signed byte*) xr#0 ) (word*) psp2#5 ← phi( @20/(word*) psp2#0 ) (word*) psp1#5 ← phi( @20/(word*) psp1#0 ) - (signed byte/signed word/signed dword~) $0 ← - (byte/signed byte/word/signed word/dword/signed dword) 95 - (signed byte[8]) xs#0 ← { (signed byte/signed word/signed dword~) $0, (byte/signed byte/word/signed word/dword/signed dword) 95, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 63 } - (signed byte/signed word/signed dword~) $1 ← - (byte/signed byte/word/signed word/dword/signed dword) 95 - (signed byte[8]) ys#0 ← { (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0, (signed byte/signed word/signed dword~) $1, (byte/signed byte/word/signed word/dword/signed dword) 95, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0 } - (signed byte/signed word/signed dword~) $2 ← - (byte/signed byte/word/signed word/dword/signed dword) 95 - (byte/signed byte/word/signed word/dword/signed dword~) $3 ← - (byte/signed byte/word/signed word/dword/signed dword) 0 - (signed byte[8]) zs#0 ← { (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0, (signed byte/signed word/signed dword~) $2, (byte/signed byte/word/signed word/dword/signed dword) 95, (byte/signed byte/word/signed word/dword/signed dword~) $3, (byte/signed byte/word/signed word/dword/signed dword) 0 } + (signed byte/signed word/signed dword~) $0 ← - (byte/signed byte/word/signed word/dword/signed dword) 52 + (signed byte/signed word/signed dword~) $1 ← - (byte/signed byte/word/signed word/dword/signed dword) 52 + (signed byte/signed word/signed dword~) $2 ← - (byte/signed byte/word/signed word/dword/signed dword) 52 + (signed byte[8]) xs#0 ← { (signed byte/signed word/signed dword~) $0, (signed byte/signed word/signed dword~) $1, (signed byte/signed word/signed dword~) $2, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 52, (byte/signed byte/word/signed word/dword/signed dword) 52, (byte/signed byte/word/signed word/dword/signed dword) 52 } + (signed byte/signed word/signed dword~) $3 ← - (byte/signed byte/word/signed word/dword/signed dword) 52 + (signed byte/signed word/signed dword~) $4 ← - (byte/signed byte/word/signed word/dword/signed dword) 52 + (signed byte/signed word/signed dword~) $5 ← - (byte/signed byte/word/signed word/dword/signed dword) 52 + (signed byte[8]) ys#0 ← { (signed byte/signed word/signed dword~) $3, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 52, (signed byte/signed word/signed dword~) $4, (byte/signed byte/word/signed word/dword/signed dword) 52, (signed byte/signed word/signed dword~) $5, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 52 } + (signed byte[8]) zs#0 ← { (byte/signed byte/word/signed word/dword/signed dword) 52, (byte/signed byte/word/signed word/dword/signed dword) 52, (byte/signed byte/word/signed word/dword/signed dword) 52, (byte/signed byte/word/signed word/dword/signed dword) 52, (byte/signed byte/word/signed word/dword/signed dword) 52, (byte/signed byte/word/signed word/dword/signed dword) 52, (byte/signed byte/word/signed word/dword/signed dword) 52, (byte/signed byte/word/signed word/dword/signed dword) 52 } (signed byte[8]) xrs#0 ← { fill( 8, 0) } (signed byte[8]) yrs#0 ← { fill( 8, 0) } (signed byte[8]) zrs#0 ← { fill( 8, 0) } @@ -344,135 +195,114 @@ main::@return: scope:[main] from main::@3 (signed byte[8]) yps#0 ← { fill( 8, 0) } (signed byte) sx#2 ← (byte/signed byte/word/signed word/dword/signed dword) 0 (signed byte) sy#2 ← (byte/signed byte/word/signed word/dword/signed dword) 0 - (signed byte) sz#2 ← (byte/signed byte/word/signed word/dword/signed dword) 0 + (signed byte) sz#0 ← (byte/signed byte/word/signed word/dword/signed dword) 0 to:@25 -anim: scope:[anim] from main::@2 - (byte*) SCREEN#43 ← phi( main::@2/(byte*) SCREEN#45 ) - (signed byte*) yp#10 ← phi( main::@2/(signed byte*) yp#12 ) - (signed byte*) xp#10 ← phi( main::@2/(signed byte*) xp#12 ) - (signed byte*) pp#10 ← phi( main::@2/(signed byte*) pp#12 ) - (signed byte*) zr#11 ← phi( main::@2/(signed byte*) zr#13 ) - (signed byte*) yr#11 ← phi( main::@2/(signed byte*) yr#13 ) - (signed byte*) xr#11 ← phi( main::@2/(signed byte*) xr#13 ) - (byte*) SINQ_HI#7 ← phi( main::@2/(byte*) SINQ_HI#9 ) - (byte*) COSQ_HI#7 ← phi( main::@2/(byte*) COSQ_HI#9 ) - (byte*) SINH_LO#7 ← phi( main::@2/(byte*) SINH_LO#9 ) - (byte*) SINH_HI#7 ← phi( main::@2/(byte*) SINH_HI#9 ) - (byte*) COSH_LO#7 ← phi( main::@2/(byte*) COSH_LO#9 ) - (byte*) COSH_HI#7 ← phi( main::@2/(byte*) COSH_HI#9 ) - (signed byte) sz#20 ← phi( main::@2/(signed byte) sz#13 ) - (signed byte) sy#20 ← phi( main::@2/(signed byte) sy#13 ) - (signed byte) sx#19 ← phi( main::@2/(signed byte) sx#13 ) +anim: scope:[anim] from main::@1 + (signed byte*) yp#10 ← phi( main::@1/(signed byte*) yp#12 ) + (signed byte*) xp#10 ← phi( main::@1/(signed byte*) xp#12 ) + (signed byte*) pp#10 ← phi( main::@1/(signed byte*) pp#12 ) + (signed byte*) zr#11 ← phi( main::@1/(signed byte*) zr#13 ) + (signed byte*) yr#11 ← phi( main::@1/(signed byte*) yr#13 ) + (signed byte*) xr#11 ← phi( main::@1/(signed byte*) xr#13 ) + (signed byte*) SINQ#7 ← phi( main::@1/(signed byte*) SINQ#9 ) + (signed byte*) COSQ#7 ← phi( main::@1/(signed byte*) COSQ#9 ) + (signed byte*) SINH#7 ← phi( main::@1/(signed byte*) SINH#9 ) + (signed byte*) COSH#7 ← phi( main::@1/(signed byte*) COSH#9 ) + (signed byte) sz#6 ← phi( main::@1/(signed byte) sz#8 ) + (signed byte) sy#18 ← phi( main::@1/(signed byte) sy#12 ) + (signed byte) sx#18 ← phi( main::@1/(signed byte) sx#12 ) to:anim::@1 -anim::@1: scope:[anim] from anim anim::@18 - (byte*) SCREEN#42 ← phi( anim/(byte*) SCREEN#43 anim::@18/(byte*) SCREEN#44 ) - (signed byte*) yp#9 ← phi( anim/(signed byte*) yp#10 anim::@18/(signed byte*) yp#11 ) - (signed byte*) xp#9 ← phi( anim/(signed byte*) xp#10 anim::@18/(signed byte*) xp#11 ) - (signed byte*) pp#9 ← phi( anim/(signed byte*) pp#10 anim::@18/(signed byte*) pp#11 ) - (signed byte*) zr#10 ← phi( anim/(signed byte*) zr#11 anim::@18/(signed byte*) zr#12 ) - (signed byte*) yr#10 ← phi( anim/(signed byte*) yr#11 anim::@18/(signed byte*) yr#12 ) - (signed byte*) xr#10 ← phi( anim/(signed byte*) xr#11 anim::@18/(signed byte*) xr#12 ) - (byte*) SINQ_HI#6 ← phi( anim/(byte*) SINQ_HI#7 anim::@18/(byte*) SINQ_HI#8 ) - (byte*) COSQ_HI#6 ← phi( anim/(byte*) COSQ_HI#7 anim::@18/(byte*) COSQ_HI#8 ) - (byte*) SINH_LO#6 ← phi( anim/(byte*) SINH_LO#7 anim::@18/(byte*) SINH_LO#8 ) - (byte*) SINH_HI#6 ← phi( anim/(byte*) SINH_HI#7 anim::@18/(byte*) SINH_HI#8 ) - (byte*) COSH_LO#6 ← phi( anim/(byte*) COSH_LO#7 anim::@18/(byte*) COSH_LO#8 ) - (byte*) COSH_HI#6 ← phi( anim/(byte*) COSH_HI#7 anim::@18/(byte*) COSH_HI#8 ) - (signed byte) sz#16 ← phi( anim/(signed byte) sz#20 anim::@18/(signed byte) sz#3 ) - (signed byte) sy#16 ← phi( anim/(signed byte) sy#20 anim::@18/(signed byte) sy#3 ) - (signed byte) sx#16 ← phi( anim/(signed byte) sx#19 anim::@18/(signed byte) sx#3 ) +anim::@1: scope:[anim] from anim anim::@13 + (signed byte*) yp#9 ← phi( anim/(signed byte*) yp#10 anim::@13/(signed byte*) yp#11 ) + (signed byte*) xp#9 ← phi( anim/(signed byte*) xp#10 anim::@13/(signed byte*) xp#11 ) + (signed byte*) pp#9 ← phi( anim/(signed byte*) pp#10 anim::@13/(signed byte*) pp#11 ) + (signed byte*) zr#10 ← phi( anim/(signed byte*) zr#11 anim::@13/(signed byte*) zr#12 ) + (signed byte*) yr#10 ← phi( anim/(signed byte*) yr#11 anim::@13/(signed byte*) yr#12 ) + (signed byte*) xr#10 ← phi( anim/(signed byte*) xr#11 anim::@13/(signed byte*) xr#12 ) + (signed byte*) SINQ#6 ← phi( anim/(signed byte*) SINQ#7 anim::@13/(signed byte*) SINQ#8 ) + (signed byte*) COSQ#6 ← phi( anim/(signed byte*) COSQ#7 anim::@13/(signed byte*) COSQ#8 ) + (signed byte*) SINH#6 ← phi( anim/(signed byte*) SINH#7 anim::@13/(signed byte*) SINH#8 ) + (signed byte*) COSH#6 ← phi( anim/(signed byte*) COSH#7 anim::@13/(signed byte*) COSH#8 ) + (signed byte) sz#5 ← phi( anim/(signed byte) sz#6 anim::@13/(signed byte) sz#7 ) + (signed byte) sy#15 ← phi( anim/(signed byte) sy#18 anim::@13/(signed byte) sy#3 ) + (signed byte) sx#15 ← phi( anim/(signed byte) sx#18 anim::@13/(signed byte) sx#3 ) if(true) goto anim::@2 to:anim::@return anim::@2: scope:[anim] from anim::@1 - (byte*) SCREEN#40 ← phi( anim::@1/(byte*) SCREEN#42 ) (signed byte*) yp#7 ← phi( anim::@1/(signed byte*) yp#9 ) (signed byte*) xp#7 ← phi( anim::@1/(signed byte*) xp#9 ) (signed byte*) pp#7 ← phi( anim::@1/(signed byte*) pp#9 ) (signed byte*) zr#8 ← phi( anim::@1/(signed byte*) zr#10 ) (signed byte*) yr#8 ← phi( anim::@1/(signed byte*) yr#10 ) (signed byte*) xr#8 ← phi( anim::@1/(signed byte*) xr#10 ) - (byte*) SINQ_HI#4 ← phi( anim::@1/(byte*) SINQ_HI#6 ) - (byte*) COSQ_HI#4 ← phi( anim::@1/(byte*) COSQ_HI#6 ) - (byte*) SINH_LO#4 ← phi( anim::@1/(byte*) SINH_LO#6 ) - (byte*) SINH_HI#4 ← phi( anim::@1/(byte*) SINH_HI#6 ) - (byte*) COSH_LO#4 ← phi( anim::@1/(byte*) COSH_LO#6 ) - (byte*) COSH_HI#4 ← phi( anim::@1/(byte*) COSH_HI#6 ) - (signed byte) sz#21 ← phi( anim::@1/(signed byte) sz#16 ) - (signed byte) sy#21 ← phi( anim::@1/(signed byte) sy#16 ) - (signed byte) sx#20 ← phi( anim::@1/(signed byte) sx#16 ) + (signed byte*) SINQ#4 ← phi( anim::@1/(signed byte*) SINQ#6 ) + (signed byte*) COSQ#4 ← phi( anim::@1/(signed byte*) COSQ#6 ) + (signed byte*) SINH#4 ← phi( anim::@1/(signed byte*) SINH#6 ) + (signed byte*) COSH#4 ← phi( anim::@1/(signed byte*) COSH#6 ) + (signed byte) sz#3 ← phi( anim::@1/(signed byte) sz#5 ) + (signed byte) sy#19 ← phi( anim::@1/(signed byte) sy#15 ) + (signed byte) sx#19 ← phi( anim::@1/(signed byte) sx#15 ) to:anim::@4 anim::@4: scope:[anim] from anim::@2 anim::@5 - (byte*) SCREEN#39 ← phi( anim::@2/(byte*) SCREEN#40 anim::@5/(byte*) SCREEN#41 ) (signed byte*) yp#6 ← phi( anim::@2/(signed byte*) yp#7 anim::@5/(signed byte*) yp#8 ) (signed byte*) xp#6 ← phi( anim::@2/(signed byte*) xp#7 anim::@5/(signed byte*) xp#8 ) (signed byte*) pp#6 ← phi( anim::@2/(signed byte*) pp#7 anim::@5/(signed byte*) pp#8 ) (signed byte*) zr#7 ← phi( anim::@2/(signed byte*) zr#8 anim::@5/(signed byte*) zr#9 ) (signed byte*) yr#7 ← phi( anim::@2/(signed byte*) yr#8 anim::@5/(signed byte*) yr#9 ) (signed byte*) xr#7 ← phi( anim::@2/(signed byte*) xr#8 anim::@5/(signed byte*) xr#9 ) - (byte*) SINQ_HI#3 ← phi( anim::@2/(byte*) SINQ_HI#4 anim::@5/(byte*) SINQ_HI#5 ) - (byte*) COSQ_HI#3 ← phi( anim::@2/(byte*) COSQ_HI#4 anim::@5/(byte*) COSQ_HI#5 ) - (byte*) SINH_LO#3 ← phi( anim::@2/(byte*) SINH_LO#4 anim::@5/(byte*) SINH_LO#5 ) - (byte*) SINH_HI#3 ← phi( anim::@2/(byte*) SINH_HI#4 anim::@5/(byte*) SINH_HI#5 ) - (byte*) COSH_LO#3 ← phi( anim::@2/(byte*) COSH_LO#4 anim::@5/(byte*) COSH_LO#5 ) - (byte*) COSH_HI#3 ← phi( anim::@2/(byte*) COSH_HI#4 anim::@5/(byte*) COSH_HI#5 ) - (signed byte) sz#14 ← phi( anim::@2/(signed byte) sz#21 anim::@5/(signed byte) sz#22 ) - (signed byte) sy#14 ← phi( anim::@2/(signed byte) sy#21 anim::@5/(signed byte) sy#22 ) - (signed byte) sx#14 ← phi( anim::@2/(signed byte) sx#20 anim::@5/(signed byte) sx#21 ) + (signed byte*) SINQ#3 ← phi( anim::@2/(signed byte*) SINQ#4 anim::@5/(signed byte*) SINQ#5 ) + (signed byte*) COSQ#3 ← phi( anim::@2/(signed byte*) COSQ#4 anim::@5/(signed byte*) COSQ#5 ) + (signed byte*) SINH#3 ← phi( anim::@2/(signed byte*) SINH#4 anim::@5/(signed byte*) SINH#5 ) + (signed byte*) COSH#3 ← phi( anim::@2/(signed byte*) COSH#4 anim::@5/(signed byte*) COSH#5 ) + (signed byte) sz#2 ← phi( anim::@2/(signed byte) sz#3 anim::@5/(signed byte) sz#4 ) + (signed byte) sy#13 ← phi( anim::@2/(signed byte) sy#19 anim::@5/(signed byte) sy#20 ) + (signed byte) sx#13 ← phi( anim::@2/(signed byte) sx#19 anim::@5/(signed byte) sx#20 ) (bool~) anim::$0 ← *((byte*) RASTER#0) != (byte/word/signed word/dword/signed dword) 255 if((bool~) anim::$0) goto anim::@5 to:anim::@6 anim::@5: scope:[anim] from anim::@4 - (byte*) SCREEN#41 ← phi( anim::@4/(byte*) SCREEN#39 ) (signed byte*) yp#8 ← phi( anim::@4/(signed byte*) yp#6 ) (signed byte*) xp#8 ← phi( anim::@4/(signed byte*) xp#6 ) (signed byte*) pp#8 ← phi( anim::@4/(signed byte*) pp#6 ) (signed byte*) zr#9 ← phi( anim::@4/(signed byte*) zr#7 ) (signed byte*) yr#9 ← phi( anim::@4/(signed byte*) yr#7 ) (signed byte*) xr#9 ← phi( anim::@4/(signed byte*) xr#7 ) - (byte*) SINQ_HI#5 ← phi( anim::@4/(byte*) SINQ_HI#3 ) - (byte*) COSQ_HI#5 ← phi( anim::@4/(byte*) COSQ_HI#3 ) - (byte*) SINH_LO#5 ← phi( anim::@4/(byte*) SINH_LO#3 ) - (byte*) SINH_HI#5 ← phi( anim::@4/(byte*) SINH_HI#3 ) - (byte*) COSH_LO#5 ← phi( anim::@4/(byte*) COSH_LO#3 ) - (byte*) COSH_HI#5 ← phi( anim::@4/(byte*) COSH_HI#3 ) - (signed byte) sz#22 ← phi( anim::@4/(signed byte) sz#14 ) - (signed byte) sy#22 ← phi( anim::@4/(signed byte) sy#14 ) - (signed byte) sx#21 ← phi( anim::@4/(signed byte) sx#14 ) + (signed byte*) SINQ#5 ← phi( anim::@4/(signed byte*) SINQ#3 ) + (signed byte*) COSQ#5 ← phi( anim::@4/(signed byte*) COSQ#3 ) + (signed byte*) SINH#5 ← phi( anim::@4/(signed byte*) SINH#3 ) + (signed byte*) COSH#5 ← phi( anim::@4/(signed byte*) COSH#3 ) + (signed byte) sz#4 ← phi( anim::@4/(signed byte) sz#2 ) + (signed byte) sy#20 ← phi( anim::@4/(signed byte) sy#13 ) + (signed byte) sx#20 ← phi( anim::@4/(signed byte) sx#13 ) to:anim::@4 anim::@6: scope:[anim] from anim::@4 - (byte*) SCREEN#37 ← phi( anim::@4/(byte*) SCREEN#39 ) (signed byte*) yp#5 ← phi( anim::@4/(signed byte*) yp#6 ) (signed byte*) xp#5 ← phi( anim::@4/(signed byte*) xp#6 ) (signed byte*) pp#5 ← phi( anim::@4/(signed byte*) pp#6 ) (signed byte*) zr#6 ← phi( anim::@4/(signed byte*) zr#7 ) (signed byte*) yr#6 ← phi( anim::@4/(signed byte*) yr#7 ) (signed byte*) xr#6 ← phi( anim::@4/(signed byte*) xr#7 ) - (byte*) SINQ_HI#2 ← phi( anim::@4/(byte*) SINQ_HI#3 ) - (byte*) COSQ_HI#2 ← phi( anim::@4/(byte*) COSQ_HI#3 ) - (byte*) SINH_LO#2 ← phi( anim::@4/(byte*) SINH_LO#3 ) - (byte*) SINH_HI#2 ← phi( anim::@4/(byte*) SINH_HI#3 ) - (byte*) COSH_LO#2 ← phi( anim::@4/(byte*) COSH_LO#3 ) - (byte*) COSH_HI#2 ← phi( anim::@4/(byte*) COSH_HI#3 ) - (signed byte) sz#8 ← phi( anim::@4/(signed byte) sz#14 ) - (signed byte) sy#8 ← phi( anim::@4/(signed byte) sy#14 ) - (signed byte) sx#8 ← phi( anim::@4/(signed byte) sx#14 ) + (signed byte*) SINQ#2 ← phi( anim::@4/(signed byte*) SINQ#3 ) + (signed byte*) COSQ#2 ← phi( anim::@4/(signed byte*) COSQ#3 ) + (signed byte*) SINH#2 ← phi( anim::@4/(signed byte*) SINH#3 ) + (signed byte*) COSH#2 ← phi( anim::@4/(signed byte*) COSH#3 ) + (signed byte) sz#1 ← phi( anim::@4/(signed byte) sz#2 ) + (signed byte) sy#8 ← phi( anim::@4/(signed byte) sy#13 ) + (signed byte) sx#8 ← phi( anim::@4/(signed byte) sx#13 ) *((byte*) BORDERCOL#0) ← ++ *((byte*) BORDERCOL#0) - (signed byte) calculate_matrix_16::sx#0 ← (signed byte) sx#8 - (signed byte) calculate_matrix_16::sy#0 ← (signed byte) sy#8 - (signed byte) calculate_matrix_16::sz#0 ← (signed byte) sz#8 - call calculate_matrix_16 + (signed byte) calculate_matrix::sx#0 ← (signed byte) sx#8 + (signed byte) calculate_matrix::sy#0 ← (signed byte) sy#8 + (signed byte) calculate_matrix::sz#0 ← (signed byte) sz#1 + call calculate_matrix to:anim::@15 anim::@15: scope:[anim] from anim::@6 - (byte*) SINQ_HI#16 ← phi( anim::@6/(byte*) SINQ_HI#2 ) - (byte*) COSQ_HI#16 ← phi( anim::@6/(byte*) COSQ_HI#2 ) - (byte*) SINH_LO#16 ← phi( anim::@6/(byte*) SINH_LO#2 ) - (byte*) SINH_HI#16 ← phi( anim::@6/(byte*) SINH_HI#2 ) - (byte*) COSH_LO#16 ← phi( anim::@6/(byte*) COSH_LO#2 ) - (byte*) COSH_HI#16 ← phi( anim::@6/(byte*) COSH_HI#2 ) - (byte*) SCREEN#35 ← phi( anim::@6/(byte*) SCREEN#37 ) - (signed byte) sz#29 ← phi( anim::@6/(signed byte) sz#8 ) - (signed byte) sy#28 ← phi( anim::@6/(signed byte) sy#8 ) - (signed byte) sx#27 ← phi( anim::@6/(signed byte) sx#8 ) + (signed byte*) SINQ#14 ← phi( anim::@6/(signed byte*) SINQ#2 ) + (signed byte*) COSQ#14 ← phi( anim::@6/(signed byte*) COSQ#2 ) + (signed byte*) SINH#14 ← phi( anim::@6/(signed byte*) SINH#2 ) + (signed byte*) COSH#14 ← phi( anim::@6/(signed byte*) COSH#2 ) + (signed byte) sz#14 ← phi( anim::@6/(signed byte) sz#1 ) + (signed byte) sy#24 ← phi( anim::@6/(signed byte) sy#8 ) + (signed byte) sx#24 ← phi( anim::@6/(signed byte) sx#8 ) (signed byte*) yp#4 ← phi( anim::@6/(signed byte*) yp#5 ) (signed byte*) xp#4 ← phi( anim::@6/(signed byte*) xp#5 ) (signed byte*) pp#4 ← phi( anim::@6/(signed byte*) pp#5 ) @@ -482,16 +312,13 @@ anim::@15: scope:[anim] from anim::@6 call store_matrix to:anim::@16 anim::@16: scope:[anim] from anim::@15 - (byte*) SINQ_HI#15 ← phi( anim::@15/(byte*) SINQ_HI#16 ) - (byte*) COSQ_HI#15 ← phi( anim::@15/(byte*) COSQ_HI#16 ) - (byte*) SINH_LO#15 ← phi( anim::@15/(byte*) SINH_LO#16 ) - (byte*) SINH_HI#15 ← phi( anim::@15/(byte*) SINH_HI#16 ) - (byte*) COSH_LO#15 ← phi( anim::@15/(byte*) COSH_LO#16 ) - (byte*) COSH_HI#15 ← phi( anim::@15/(byte*) COSH_HI#16 ) - (byte*) SCREEN#34 ← phi( anim::@15/(byte*) SCREEN#35 ) - (signed byte) sz#28 ← phi( anim::@15/(signed byte) sz#29 ) - (signed byte) sy#27 ← phi( anim::@15/(signed byte) sy#28 ) - (signed byte) sx#26 ← phi( anim::@15/(signed byte) sx#27 ) + (signed byte*) SINQ#13 ← phi( anim::@15/(signed byte*) SINQ#14 ) + (signed byte*) COSQ#13 ← phi( anim::@15/(signed byte*) COSQ#14 ) + (signed byte*) SINH#13 ← phi( anim::@15/(signed byte*) SINH#14 ) + (signed byte*) COSH#13 ← phi( anim::@15/(signed byte*) COSH#14 ) + (signed byte) sz#13 ← phi( anim::@15/(signed byte) sz#14 ) + (signed byte) sy#23 ← phi( anim::@15/(signed byte) sy#24 ) + (signed byte) sx#23 ← phi( anim::@15/(signed byte) sx#24 ) (signed byte*) yp#3 ← phi( anim::@15/(signed byte*) yp#4 ) (signed byte*) xp#3 ← phi( anim::@15/(signed byte*) xp#4 ) (signed byte*) pp#3 ← phi( anim::@15/(signed byte*) pp#4 ) @@ -501,16 +328,13 @@ anim::@16: scope:[anim] from anim::@15 (byte) anim::i#0 ← (byte/signed byte/word/signed word/dword/signed dword) 0 to:anim::@7 anim::@7: scope:[anim] from anim::@16 anim::@17 - (byte*) SINQ_HI#14 ← phi( anim::@16/(byte*) SINQ_HI#15 anim::@17/(byte*) SINQ_HI#12 ) - (byte*) COSQ_HI#14 ← phi( anim::@16/(byte*) COSQ_HI#15 anim::@17/(byte*) COSQ_HI#12 ) - (byte*) SINH_LO#14 ← phi( anim::@16/(byte*) SINH_LO#15 anim::@17/(byte*) SINH_LO#12 ) - (byte*) SINH_HI#14 ← phi( anim::@16/(byte*) SINH_HI#15 anim::@17/(byte*) SINH_HI#12 ) - (byte*) COSH_LO#14 ← phi( anim::@16/(byte*) COSH_LO#15 anim::@17/(byte*) COSH_LO#12 ) - (byte*) COSH_HI#14 ← phi( anim::@16/(byte*) COSH_HI#15 anim::@17/(byte*) COSH_HI#12 ) - (byte*) SCREEN#32 ← phi( anim::@16/(byte*) SCREEN#34 anim::@17/(byte*) SCREEN#29 ) - (signed byte) sz#27 ← phi( anim::@16/(signed byte) sz#28 anim::@17/(signed byte) sz#23 ) - (signed byte) sy#26 ← phi( anim::@16/(signed byte) sy#27 anim::@17/(signed byte) sy#23 ) - (signed byte) sx#25 ← phi( anim::@16/(signed byte) sx#26 anim::@17/(signed byte) sx#22 ) + (signed byte*) SINQ#12 ← phi( anim::@16/(signed byte*) SINQ#13 anim::@17/(signed byte*) SINQ#10 ) + (signed byte*) COSQ#12 ← phi( anim::@16/(signed byte*) COSQ#13 anim::@17/(signed byte*) COSQ#10 ) + (signed byte*) SINH#12 ← phi( anim::@16/(signed byte*) SINH#13 anim::@17/(signed byte*) SINH#10 ) + (signed byte*) COSH#12 ← phi( anim::@16/(signed byte*) COSH#13 anim::@17/(signed byte*) COSH#10 ) + (signed byte) sz#11 ← phi( anim::@16/(signed byte) sz#13 anim::@17/(signed byte) sz#9 ) + (signed byte) sy#21 ← phi( anim::@16/(signed byte) sy#23 anim::@17/(signed byte) sy#14 ) + (signed byte) sx#21 ← phi( anim::@16/(signed byte) sx#23 anim::@17/(signed byte) sx#14 ) (signed byte*) yp#2 ← phi( anim::@16/(signed byte*) yp#3 anim::@17/(signed byte*) yp#1 ) (signed byte*) xp#2 ← phi( anim::@16/(signed byte*) xp#3 anim::@17/(signed byte*) xp#1 ) (signed byte*) pp#2 ← phi( anim::@16/(signed byte*) pp#3 anim::@17/(signed byte*) pp#1 ) @@ -525,16 +349,13 @@ anim::@7: scope:[anim] from anim::@16 anim::@17 call rotate_matrix to:anim::@17 anim::@17: scope:[anim] from anim::@7 - (byte*) SINQ_HI#12 ← phi( anim::@7/(byte*) SINQ_HI#14 ) - (byte*) COSQ_HI#12 ← phi( anim::@7/(byte*) COSQ_HI#14 ) - (byte*) SINH_LO#12 ← phi( anim::@7/(byte*) SINH_LO#14 ) - (byte*) SINH_HI#12 ← phi( anim::@7/(byte*) SINH_HI#14 ) - (byte*) COSH_LO#12 ← phi( anim::@7/(byte*) COSH_LO#14 ) - (byte*) COSH_HI#12 ← phi( anim::@7/(byte*) COSH_HI#14 ) - (byte*) SCREEN#29 ← phi( anim::@7/(byte*) SCREEN#32 ) - (signed byte) sz#23 ← phi( anim::@7/(signed byte) sz#27 ) - (signed byte) sy#23 ← phi( anim::@7/(signed byte) sy#26 ) - (signed byte) sx#22 ← phi( anim::@7/(signed byte) sx#25 ) + (signed byte*) SINQ#10 ← phi( anim::@7/(signed byte*) SINQ#12 ) + (signed byte*) COSQ#10 ← phi( anim::@7/(signed byte*) COSQ#12 ) + (signed byte*) SINH#10 ← phi( anim::@7/(signed byte*) SINH#12 ) + (signed byte*) COSH#10 ← phi( anim::@7/(signed byte*) COSH#12 ) + (signed byte) sz#9 ← phi( anim::@7/(signed byte) sz#11 ) + (signed byte) sy#14 ← phi( anim::@7/(signed byte) sy#21 ) + (signed byte) sx#14 ← phi( anim::@7/(signed byte) sx#21 ) (signed byte*) yp#1 ← phi( anim::@7/(signed byte*) yp#2 ) (signed byte*) xp#1 ← phi( anim::@7/(signed byte*) xp#2 ) (signed byte*) pp#1 ← phi( anim::@7/(signed byte*) pp#2 ) @@ -550,10 +371,10 @@ anim::@17: scope:[anim] from anim::@7 *((signed byte[8]) yps#0 + (byte) anim::i#3) ← *((signed byte*) yp#1) (byte~) anim::$4 ← (byte) anim::i#3 << (byte/signed byte/word/signed word/dword/signed dword) 1 (byte) anim::i2#0 ← (byte~) anim::$4 - (byte~) anim::$5 ← ((byte)) *((signed byte*) xr#1) + (byte~) anim::$5 ← ((byte)) *((signed byte*) xp#1) (byte/word/signed word/dword/signed dword~) anim::$6 ← (byte/word/signed word/dword/signed dword) 128 + (byte~) anim::$5 *((byte*) SPRITES_XPOS#0 + (byte) anim::i2#0) ← (byte/word/signed word/dword/signed dword~) anim::$6 - (byte~) anim::$7 ← ((byte)) *((signed byte*) yr#1) + (byte~) anim::$7 ← ((byte)) *((signed byte*) yp#1) (byte/word/signed word/dword/signed dword~) anim::$8 ← (byte/word/signed word/dword/signed dword) 128 + (byte~) anim::$7 *((byte*) SPRITES_YPOS#0 + (byte) anim::i2#0) ← (byte/word/signed word/dword/signed dword~) anim::$8 (byte) anim::i#1 ← (byte) anim::i#3 + rangenext(0,7) @@ -561,483 +382,29 @@ anim::@17: scope:[anim] from anim::@7 if((bool~) anim::$9) goto anim::@7 to:anim::@13 anim::@13: scope:[anim] from anim::@17 - (signed byte*) yp#13 ← phi( anim::@17/(signed byte*) yp#1 ) - (signed byte*) xp#13 ← phi( anim::@17/(signed byte*) xp#1 ) - (signed byte*) pp#13 ← phi( anim::@17/(signed byte*) pp#1 ) - (signed byte*) zr#14 ← phi( anim::@17/(signed byte*) zr#1 ) - (signed byte*) yr#14 ← phi( anim::@17/(signed byte*) yr#1 ) - (signed byte*) xr#14 ← phi( anim::@17/(signed byte*) xr#1 ) - (byte*) SINQ_HI#10 ← phi( anim::@17/(byte*) SINQ_HI#12 ) - (byte*) COSQ_HI#10 ← phi( anim::@17/(byte*) COSQ_HI#12 ) - (byte*) SINH_LO#10 ← phi( anim::@17/(byte*) SINH_LO#12 ) - (byte*) SINH_HI#10 ← phi( anim::@17/(byte*) SINH_HI#12 ) - (byte*) COSH_LO#10 ← phi( anim::@17/(byte*) COSH_LO#12 ) - (byte*) COSH_HI#10 ← phi( anim::@17/(byte*) COSH_HI#12 ) - (byte*) SCREEN#28 ← phi( anim::@17/(byte*) SCREEN#29 ) - (signed byte) sz#15 ← phi( anim::@17/(signed byte) sz#23 ) - (signed byte) sy#15 ← phi( anim::@17/(signed byte) sy#23 ) - (signed byte) sx#15 ← phi( anim::@17/(signed byte) sx#22 ) + (signed byte*) yp#11 ← phi( anim::@17/(signed byte*) yp#1 ) + (signed byte*) xp#11 ← phi( anim::@17/(signed byte*) xp#1 ) + (signed byte*) pp#11 ← phi( anim::@17/(signed byte*) pp#1 ) + (signed byte*) zr#12 ← phi( anim::@17/(signed byte*) zr#1 ) + (signed byte*) yr#12 ← phi( anim::@17/(signed byte*) yr#1 ) + (signed byte*) xr#12 ← phi( anim::@17/(signed byte*) xr#1 ) + (signed byte*) SINQ#8 ← phi( anim::@17/(signed byte*) SINQ#10 ) + (signed byte*) COSQ#8 ← phi( anim::@17/(signed byte*) COSQ#10 ) + (signed byte*) SINH#8 ← phi( anim::@17/(signed byte*) SINH#10 ) + (signed byte*) COSH#8 ← phi( anim::@17/(signed byte*) COSH#10 ) + (signed byte) sz#7 ← phi( anim::@17/(signed byte) sz#9 ) + (signed byte) sy#9 ← phi( anim::@17/(signed byte) sy#14 ) + (signed byte) sx#9 ← phi( anim::@17/(signed byte) sx#14 ) *((byte*) BORDERCOL#0) ← (byte) LIGHT_GREY#0 - call debug_print - to:anim::@18 -anim::@18: scope:[anim] from anim::@13 - (byte*) SCREEN#44 ← phi( anim::@13/(byte*) SCREEN#28 ) - (signed byte*) yp#11 ← phi( anim::@13/(signed byte*) yp#13 ) - (signed byte*) xp#11 ← phi( anim::@13/(signed byte*) xp#13 ) - (signed byte*) pp#11 ← phi( anim::@13/(signed byte*) pp#13 ) - (signed byte*) zr#12 ← phi( anim::@13/(signed byte*) zr#14 ) - (signed byte*) yr#12 ← phi( anim::@13/(signed byte*) yr#14 ) - (signed byte*) xr#12 ← phi( anim::@13/(signed byte*) xr#14 ) - (byte*) SINQ_HI#8 ← phi( anim::@13/(byte*) SINQ_HI#10 ) - (byte*) COSQ_HI#8 ← phi( anim::@13/(byte*) COSQ_HI#10 ) - (byte*) SINH_LO#8 ← phi( anim::@13/(byte*) SINH_LO#10 ) - (byte*) SINH_HI#8 ← phi( anim::@13/(byte*) SINH_HI#10 ) - (byte*) COSH_LO#8 ← phi( anim::@13/(byte*) COSH_LO#10 ) - (byte*) COSH_HI#8 ← phi( anim::@13/(byte*) COSH_HI#10 ) - (signed byte) sz#9 ← phi( anim::@13/(signed byte) sz#15 ) - (signed byte) sy#9 ← phi( anim::@13/(signed byte) sy#15 ) - (signed byte) sx#9 ← phi( anim::@13/(signed byte) sx#15 ) *((byte*) BORDERCOL#0) ← (byte) LIGHT_BLUE#0 - (signed byte) sx#3 ← (signed byte) sx#9 - (byte/signed byte/word/signed word/dword/signed dword) 1 - (signed byte) sy#3 ← (signed byte) sy#9 + (byte/signed byte/word/signed word/dword/signed dword) 1 - (signed byte) sz#3 ← (signed byte) sz#9 - (byte/signed byte/word/signed word/dword/signed dword) 1 + (signed byte) sx#3 ← (signed byte) sx#9 + (byte/signed byte/word/signed word/dword/signed dword) 2 + (signed byte) sy#3 ← (signed byte) sy#9 - (byte/signed byte/word/signed word/dword/signed dword) 3 to:anim::@1 anim::@return: scope:[anim] from anim::@1 - (signed byte) sz#10 ← phi( anim::@1/(signed byte) sz#16 ) - (signed byte) sy#10 ← phi( anim::@1/(signed byte) sy#16 ) - (signed byte) sx#10 ← phi( anim::@1/(signed byte) sx#16 ) + (signed byte) sy#10 ← phi( anim::@1/(signed byte) sy#15 ) + (signed byte) sx#10 ← phi( anim::@1/(signed byte) sx#15 ) (signed byte) sx#4 ← (signed byte) sx#10 (signed byte) sy#4 ← (signed byte) sy#10 - (signed byte) sz#4 ← (signed byte) sz#10 - return - to:@return -debug_print_init: scope:[debug_print_init] from main::@1 - (byte*) SCREEN#27 ← phi( main::@1/(byte*) SCREEN#30 ) - (byte*) print_screen#3 ← phi( main::@1/(byte*) print_screen#4 ) - call print_cls - to:debug_print_init::@5 -debug_print_init::@5: scope:[debug_print_init] from debug_print_init - (byte*) SCREEN#1 ← phi( debug_print_init/(byte*) SCREEN#27 ) - (byte/signed byte/word/signed word/dword/signed dword~) debug_print_init::$1 ← (byte/signed byte/word/signed word/dword/signed dword) 40 * (byte/signed byte/word/signed word/dword/signed dword) 0 - (byte*~) debug_print_init::$2 ← (byte*) SCREEN#1 + (byte/signed byte/word/signed word/dword/signed dword~) debug_print_init::$1 - (byte*~) debug_print_init::$3 ← (byte*~) debug_print_init::$2 + (byte/signed byte/word/signed word/dword/signed dword) 34 - (byte*) print_str_at::str#1 ← (const string) debug_print_init::str - (byte*) print_str_at::at#1 ← (byte*~) debug_print_init::$3 - call print_str_at - to:debug_print_init::@6 -debug_print_init::@6: scope:[debug_print_init] from debug_print_init::@5 - (byte*) SCREEN#2 ← phi( debug_print_init::@5/(byte*) SCREEN#1 ) - (byte/signed byte/word/signed word/dword/signed dword~) debug_print_init::$5 ← (byte/signed byte/word/signed word/dword/signed dword) 40 * (byte/signed byte/word/signed word/dword/signed dword) 1 - (byte*~) debug_print_init::$6 ← (byte*) SCREEN#2 + (byte/signed byte/word/signed word/dword/signed dword~) debug_print_init::$5 - (byte*~) debug_print_init::$7 ← (byte*~) debug_print_init::$6 + (byte/signed byte/word/signed word/dword/signed dword) 34 - (byte*) print_str_at::str#2 ← (const string) debug_print_init::str1 - (byte*) print_str_at::at#2 ← (byte*~) debug_print_init::$7 - call print_str_at - to:debug_print_init::@7 -debug_print_init::@7: scope:[debug_print_init] from debug_print_init::@6 - (byte*) SCREEN#3 ← phi( debug_print_init::@6/(byte*) SCREEN#2 ) - (byte/signed byte/word/signed word/dword/signed dword~) debug_print_init::$9 ← (byte/signed byte/word/signed word/dword/signed dword) 40 * (byte/signed byte/word/signed word/dword/signed dword) 2 - (byte*~) debug_print_init::$10 ← (byte*) SCREEN#3 + (byte/signed byte/word/signed word/dword/signed dword~) debug_print_init::$9 - (byte*~) debug_print_init::$11 ← (byte*~) debug_print_init::$10 + (byte/signed byte/word/signed word/dword/signed dword) 34 - (byte*) print_str_at::str#3 ← (const string) debug_print_init::str2 - (byte*) print_str_at::at#3 ← (byte*~) debug_print_init::$11 - call print_str_at - to:debug_print_init::@8 -debug_print_init::@8: scope:[debug_print_init] from debug_print_init::@7 - (byte*) SCREEN#4 ← phi( debug_print_init::@7/(byte*) SCREEN#3 ) - (word/signed word/dword/signed dword~) debug_print_init::$13 ← (byte/signed byte/word/signed word/dword/signed dword) 40 * (byte/signed byte/word/signed word/dword/signed dword) 16 - (byte*~) debug_print_init::$14 ← (byte*) SCREEN#4 + (word/signed word/dword/signed dword~) debug_print_init::$13 - (byte*) print_str_at::str#4 ← (const string) debug_print_init::str3 - (byte*) print_str_at::at#4 ← (byte*~) debug_print_init::$14 - call print_str_at - to:debug_print_init::@9 -debug_print_init::@9: scope:[debug_print_init] from debug_print_init::@8 - (byte*) SCREEN#5 ← phi( debug_print_init::@8/(byte*) SCREEN#4 ) - (word/signed word/dword/signed dword~) debug_print_init::$16 ← (byte/signed byte/word/signed word/dword/signed dword) 40 * (byte/signed byte/word/signed word/dword/signed dword) 17 - (byte*~) debug_print_init::$17 ← (byte*) SCREEN#5 + (word/signed word/dword/signed dword~) debug_print_init::$16 - (byte*) print_str_at::str#5 ← (const string) debug_print_init::str4 - (byte*) print_str_at::at#5 ← (byte*~) debug_print_init::$17 - call print_str_at - to:debug_print_init::@10 -debug_print_init::@10: scope:[debug_print_init] from debug_print_init::@9 - (byte*) SCREEN#6 ← phi( debug_print_init::@9/(byte*) SCREEN#5 ) - (word/signed word/dword/signed dword~) debug_print_init::$19 ← (byte/signed byte/word/signed word/dword/signed dword) 40 * (byte/signed byte/word/signed word/dword/signed dword) 18 - (byte*~) debug_print_init::$20 ← (byte*) SCREEN#6 + (word/signed word/dword/signed dword~) debug_print_init::$19 - (byte*) print_str_at::str#6 ← (const string) debug_print_init::str5 - (byte*) print_str_at::at#6 ← (byte*~) debug_print_init::$20 - call print_str_at - to:debug_print_init::@11 -debug_print_init::@11: scope:[debug_print_init] from debug_print_init::@10 - (byte*) SCREEN#7 ← phi( debug_print_init::@10/(byte*) SCREEN#6 ) - (word/signed word/dword/signed dword~) debug_print_init::$22 ← (byte/signed byte/word/signed word/dword/signed dword) 40 * (byte/signed byte/word/signed word/dword/signed dword) 19 - (byte*~) debug_print_init::$23 ← (byte*) SCREEN#7 + (word/signed word/dword/signed dword~) debug_print_init::$22 - (byte*) print_str_at::str#7 ← (const string) debug_print_init::str6 - (byte*) print_str_at::at#7 ← (byte*~) debug_print_init::$23 - call print_str_at - to:debug_print_init::@12 -debug_print_init::@12: scope:[debug_print_init] from debug_print_init::@11 - (byte*) SCREEN#8 ← phi( debug_print_init::@11/(byte*) SCREEN#7 ) - (word/signed word/dword/signed dword~) debug_print_init::$25 ← (byte/signed byte/word/signed word/dword/signed dword) 40 * (byte/signed byte/word/signed word/dword/signed dword) 20 - (byte*~) debug_print_init::$26 ← (byte*) SCREEN#8 + (word/signed word/dword/signed dword~) debug_print_init::$25 - (byte*) print_str_at::str#8 ← (const string) debug_print_init::str7 - (byte*) print_str_at::at#8 ← (byte*~) debug_print_init::$26 - call print_str_at - to:debug_print_init::@13 -debug_print_init::@13: scope:[debug_print_init] from debug_print_init::@12 - (byte*) SCREEN#9 ← phi( debug_print_init::@12/(byte*) SCREEN#8 ) - (word/signed word/dword/signed dword~) debug_print_init::$28 ← (byte/signed byte/word/signed word/dword/signed dword) 40 * (byte/signed byte/word/signed word/dword/signed dword) 21 - (byte*~) debug_print_init::$29 ← (byte*) SCREEN#9 + (word/signed word/dword/signed dword~) debug_print_init::$28 - (byte*) print_str_at::str#9 ← (const string) debug_print_init::str8 - (byte*) print_str_at::at#9 ← (byte*~) debug_print_init::$29 - call print_str_at - to:debug_print_init::@14 -debug_print_init::@14: scope:[debug_print_init] from debug_print_init::@13 - (byte*) SCREEN#10 ← phi( debug_print_init::@13/(byte*) SCREEN#9 ) - (word/signed word/dword/signed dword~) debug_print_init::$31 ← (byte/signed byte/word/signed word/dword/signed dword) 40 * (byte/signed byte/word/signed word/dword/signed dword) 22 - (byte*~) debug_print_init::$32 ← (byte*) SCREEN#10 + (word/signed word/dword/signed dword~) debug_print_init::$31 - (byte*) print_str_at::str#10 ← (const string) debug_print_init::str9 - (byte*) print_str_at::at#10 ← (byte*~) debug_print_init::$32 - call print_str_at - to:debug_print_init::@15 -debug_print_init::@15: scope:[debug_print_init] from debug_print_init::@14 - (byte*) SCREEN#11 ← phi( debug_print_init::@14/(byte*) SCREEN#10 ) - (word/signed word/dword/signed dword~) debug_print_init::$34 ← (byte/signed byte/word/signed word/dword/signed dword) 40 * (byte/signed byte/word/signed word/dword/signed dword) 23 - (byte*~) debug_print_init::$35 ← (byte*) SCREEN#11 + (word/signed word/dword/signed dword~) debug_print_init::$34 - (byte*) print_str_at::str#11 ← (const string) debug_print_init::str10 - (byte*) print_str_at::at#11 ← (byte*~) debug_print_init::$35 - call print_str_at - to:debug_print_init::@16 -debug_print_init::@16: scope:[debug_print_init] from debug_print_init::@15 - (byte*) SCREEN#12 ← phi( debug_print_init::@15/(byte*) SCREEN#11 ) - (word/signed word/dword/signed dword~) debug_print_init::$37 ← (byte/signed byte/word/signed word/dword/signed dword) 40 * (byte/signed byte/word/signed word/dword/signed dword) 24 - (byte*~) debug_print_init::$38 ← (byte*) SCREEN#12 + (word/signed word/dword/signed dword~) debug_print_init::$37 - (byte*) print_str_at::str#12 ← (const string) debug_print_init::str11 - (byte*) print_str_at::at#12 ← (byte*~) debug_print_init::$38 - call print_str_at - to:debug_print_init::@17 -debug_print_init::@17: scope:[debug_print_init] from debug_print_init::@16 - (byte*) SCREEN#13 ← phi( debug_print_init::@16/(byte*) SCREEN#12 ) - (word/signed word/dword/signed dword~) debug_print_init::$40 ← (byte/signed byte/word/signed word/dword/signed dword) 16 * (byte/signed byte/word/signed word/dword/signed dword) 40 - (byte*~) debug_print_init::$41 ← (byte*) SCREEN#13 + (word/signed word/dword/signed dword~) debug_print_init::$40 - (byte*) debug_print_init::at_line#0 ← (byte*~) debug_print_init::$41 - (byte) debug_print_init::c#0 ← (byte/signed byte/word/signed word/dword/signed dword) 4 - (byte*) debug_print_init::COLS#0 ← ((byte*)) (word/dword/signed dword) 55296 - (word/signed word/dword/signed dword~) debug_print_init::$42 ← (byte/signed byte/word/signed word/dword/signed dword) 16 * (byte/signed byte/word/signed word/dword/signed dword) 40 - (byte*~) debug_print_init::$43 ← (byte*) debug_print_init::COLS#0 + (word/signed word/dword/signed dword~) debug_print_init::$42 - (byte*) debug_print_init::at_cols#0 ← (byte*~) debug_print_init::$43 - (byte) debug_print_init::i#0 ← (byte/signed byte/word/signed word/dword/signed dword) 0 - to:debug_print_init::@1 -debug_print_init::@1: scope:[debug_print_init] from debug_print_init::@17 debug_print_init::@3 - (byte*) debug_print_init::at_cols#5 ← phi( debug_print_init::@17/(byte*) debug_print_init::at_cols#0 debug_print_init::@3/(byte*) debug_print_init::at_cols#6 ) - (byte) debug_print_init::i#2 ← phi( debug_print_init::@17/(byte) debug_print_init::i#0 debug_print_init::@3/(byte) debug_print_init::i#1 ) - (byte) debug_print_init::c#2 ← phi( debug_print_init::@17/(byte) debug_print_init::c#0 debug_print_init::@3/(byte) debug_print_init::c#1 ) - (byte*) debug_print_init::at_line#1 ← phi( debug_print_init::@17/(byte*) debug_print_init::at_line#0 debug_print_init::@3/(byte*) debug_print_init::at_line#4 ) - (byte/signed byte/word/signed word/dword/signed dword~) debug_print_init::$44 ← (byte/signed byte/word/signed word/dword/signed dword) 40 * (byte/signed byte/word/signed word/dword/signed dword) 0 - (byte*~) debug_print_init::$45 ← (byte*) debug_print_init::at_line#1 + (byte/signed byte/word/signed word/dword/signed dword~) debug_print_init::$44 - (byte*~) debug_print_init::$46 ← (byte*~) debug_print_init::$45 + (byte) debug_print_init::c#2 - (signed byte) print_sbyte_at::b#1 ← *((signed byte[8]) xs#0 + (byte) debug_print_init::i#2) - (byte*) print_sbyte_at::at#0 ← (byte*~) debug_print_init::$46 - call print_sbyte_at - to:debug_print_init::@18 -debug_print_init::@18: scope:[debug_print_init] from debug_print_init::@1 - (byte*) debug_print_init::at_cols#4 ← phi( debug_print_init::@1/(byte*) debug_print_init::at_cols#5 ) - (byte) debug_print_init::i#3 ← phi( debug_print_init::@1/(byte) debug_print_init::i#2 ) - (byte) debug_print_init::c#3 ← phi( debug_print_init::@1/(byte) debug_print_init::c#2 ) - (byte*) debug_print_init::at_line#2 ← phi( debug_print_init::@1/(byte*) debug_print_init::at_line#1 ) - (byte/signed byte/word/signed word/dword/signed dword~) debug_print_init::$48 ← (byte/signed byte/word/signed word/dword/signed dword) 40 * (byte/signed byte/word/signed word/dword/signed dword) 1 - (byte*~) debug_print_init::$49 ← (byte*) debug_print_init::at_line#2 + (byte/signed byte/word/signed word/dword/signed dword~) debug_print_init::$48 - (byte*~) debug_print_init::$50 ← (byte*~) debug_print_init::$49 + (byte) debug_print_init::c#3 - (signed byte) print_sbyte_at::b#2 ← *((signed byte[8]) ys#0 + (byte) debug_print_init::i#3) - (byte*) print_sbyte_at::at#1 ← (byte*~) debug_print_init::$50 - call print_sbyte_at - to:debug_print_init::@19 -debug_print_init::@19: scope:[debug_print_init] from debug_print_init::@18 - (byte*) debug_print_init::at_cols#3 ← phi( debug_print_init::@18/(byte*) debug_print_init::at_cols#4 ) - (byte) debug_print_init::i#4 ← phi( debug_print_init::@18/(byte) debug_print_init::i#3 ) - (byte) debug_print_init::c#4 ← phi( debug_print_init::@18/(byte) debug_print_init::c#3 ) - (byte*) debug_print_init::at_line#3 ← phi( debug_print_init::@18/(byte*) debug_print_init::at_line#2 ) - (byte/signed byte/word/signed word/dword/signed dword~) debug_print_init::$52 ← (byte/signed byte/word/signed word/dword/signed dword) 40 * (byte/signed byte/word/signed word/dword/signed dword) 2 - (byte*~) debug_print_init::$53 ← (byte*) debug_print_init::at_line#3 + (byte/signed byte/word/signed word/dword/signed dword~) debug_print_init::$52 - (byte*~) debug_print_init::$54 ← (byte*~) debug_print_init::$53 + (byte) debug_print_init::c#4 - (signed byte) print_sbyte_at::b#3 ← *((signed byte[8]) zs#0 + (byte) debug_print_init::i#4) - (byte*) print_sbyte_at::at#2 ← (byte*~) debug_print_init::$54 - call print_sbyte_at - to:debug_print_init::@20 -debug_print_init::@20: scope:[debug_print_init] from debug_print_init::@19 - (byte*) debug_print_init::at_line#6 ← phi( debug_print_init::@19/(byte*) debug_print_init::at_line#3 ) - (byte) debug_print_init::c#7 ← phi( debug_print_init::@19/(byte) debug_print_init::c#4 ) - (byte*) debug_print_init::at_cols#2 ← phi( debug_print_init::@19/(byte*) debug_print_init::at_cols#3 ) - (byte) debug_print_init::i#7 ← phi( debug_print_init::@19/(byte) debug_print_init::i#4 ) - (byte) debug_print_init::j#0 ← (byte/signed byte/word/signed word/dword/signed dword) 0 - to:debug_print_init::@2 -debug_print_init::@2: scope:[debug_print_init] from debug_print_init::@2 debug_print_init::@20 - (byte*) debug_print_init::at_line#5 ← phi( debug_print_init::@2/(byte*) debug_print_init::at_line#5 debug_print_init::@20/(byte*) debug_print_init::at_line#6 ) - (byte) debug_print_init::j#2 ← phi( debug_print_init::@2/(byte) debug_print_init::j#1 debug_print_init::@20/(byte) debug_print_init::j#0 ) - (byte) debug_print_init::c#5 ← phi( debug_print_init::@2/(byte) debug_print_init::c#5 debug_print_init::@20/(byte) debug_print_init::c#7 ) - (byte*) debug_print_init::at_cols#1 ← phi( debug_print_init::@2/(byte*) debug_print_init::at_cols#1 debug_print_init::@20/(byte*) debug_print_init::at_cols#2 ) - (byte) debug_print_init::i#5 ← phi( debug_print_init::@2/(byte) debug_print_init::i#5 debug_print_init::@20/(byte) debug_print_init::i#7 ) - (byte/signed word/word/dword/signed dword~) debug_print_init::$56 ← (byte/signed byte/word/signed word/dword/signed dword) 8 + (byte) debug_print_init::i#5 - (byte) debug_print_init::col#0 ← (byte/signed word/word/dword/signed dword~) debug_print_init::$56 - (byte/signed byte/word/signed word/dword/signed dword~) debug_print_init::$57 ← (byte/signed byte/word/signed word/dword/signed dword) 40 * (byte/signed byte/word/signed word/dword/signed dword) 0 - (byte*~) debug_print_init::$58 ← (byte*) debug_print_init::at_cols#1 + (byte/signed byte/word/signed word/dword/signed dword~) debug_print_init::$57 - (byte*~) debug_print_init::$59 ← (byte*~) debug_print_init::$58 + (byte) debug_print_init::c#5 - (byte*~) debug_print_init::$60 ← (byte*~) debug_print_init::$59 + (byte) debug_print_init::j#2 - *((byte*~) debug_print_init::$60) ← (byte) debug_print_init::col#0 - (byte/signed byte/word/signed word/dword/signed dword~) debug_print_init::$61 ← (byte/signed byte/word/signed word/dword/signed dword) 40 * (byte/signed byte/word/signed word/dword/signed dword) 1 - (byte*~) debug_print_init::$62 ← (byte*) debug_print_init::at_cols#1 + (byte/signed byte/word/signed word/dword/signed dword~) debug_print_init::$61 - (byte*~) debug_print_init::$63 ← (byte*~) debug_print_init::$62 + (byte) debug_print_init::c#5 - (byte*~) debug_print_init::$64 ← (byte*~) debug_print_init::$63 + (byte) debug_print_init::j#2 - *((byte*~) debug_print_init::$64) ← (byte) debug_print_init::col#0 - (byte/signed byte/word/signed word/dword/signed dword~) debug_print_init::$65 ← (byte/signed byte/word/signed word/dword/signed dword) 40 * (byte/signed byte/word/signed word/dword/signed dword) 2 - (byte*~) debug_print_init::$66 ← (byte*) debug_print_init::at_cols#1 + (byte/signed byte/word/signed word/dword/signed dword~) debug_print_init::$65 - (byte*~) debug_print_init::$67 ← (byte*~) debug_print_init::$66 + (byte) debug_print_init::c#5 - (byte*~) debug_print_init::$68 ← (byte*~) debug_print_init::$67 + (byte) debug_print_init::j#2 - *((byte*~) debug_print_init::$68) ← (byte) debug_print_init::col#0 - (byte/signed byte/word/signed word/dword/signed dword~) debug_print_init::$69 ← (byte/signed byte/word/signed word/dword/signed dword) 40 * (byte/signed byte/word/signed word/dword/signed dword) 3 - (byte*~) debug_print_init::$70 ← (byte*) debug_print_init::at_cols#1 + (byte/signed byte/word/signed word/dword/signed dword~) debug_print_init::$69 - (byte*~) debug_print_init::$71 ← (byte*~) debug_print_init::$70 + (byte) debug_print_init::c#5 - (byte*~) debug_print_init::$72 ← (byte*~) debug_print_init::$71 + (byte) debug_print_init::j#2 - *((byte*~) debug_print_init::$72) ← (byte) debug_print_init::col#0 - (byte/word/signed word/dword/signed dword~) debug_print_init::$73 ← (byte/signed byte/word/signed word/dword/signed dword) 40 * (byte/signed byte/word/signed word/dword/signed dword) 4 - (byte*~) debug_print_init::$74 ← (byte*) debug_print_init::at_cols#1 + (byte/word/signed word/dword/signed dword~) debug_print_init::$73 - (byte*~) debug_print_init::$75 ← (byte*~) debug_print_init::$74 + (byte) debug_print_init::c#5 - (byte*~) debug_print_init::$76 ← (byte*~) debug_print_init::$75 + (byte) debug_print_init::j#2 - *((byte*~) debug_print_init::$76) ← (byte) debug_print_init::col#0 - (byte/word/signed word/dword/signed dword~) debug_print_init::$77 ← (byte/signed byte/word/signed word/dword/signed dword) 40 * (byte/signed byte/word/signed word/dword/signed dword) 5 - (byte*~) debug_print_init::$78 ← (byte*) debug_print_init::at_cols#1 + (byte/word/signed word/dword/signed dword~) debug_print_init::$77 - (byte*~) debug_print_init::$79 ← (byte*~) debug_print_init::$78 + (byte) debug_print_init::c#5 - (byte*~) debug_print_init::$80 ← (byte*~) debug_print_init::$79 + (byte) debug_print_init::j#2 - *((byte*~) debug_print_init::$80) ← (byte) debug_print_init::col#0 - (byte/word/signed word/dword/signed dword~) debug_print_init::$81 ← (byte/signed byte/word/signed word/dword/signed dword) 40 * (byte/signed byte/word/signed word/dword/signed dword) 6 - (byte*~) debug_print_init::$82 ← (byte*) debug_print_init::at_cols#1 + (byte/word/signed word/dword/signed dword~) debug_print_init::$81 - (byte*~) debug_print_init::$83 ← (byte*~) debug_print_init::$82 + (byte) debug_print_init::c#5 - (byte*~) debug_print_init::$84 ← (byte*~) debug_print_init::$83 + (byte) debug_print_init::j#2 - *((byte*~) debug_print_init::$84) ← (byte) debug_print_init::col#0 - (word/signed word/dword/signed dword~) debug_print_init::$85 ← (byte/signed byte/word/signed word/dword/signed dword) 40 * (byte/signed byte/word/signed word/dword/signed dword) 7 - (byte*~) debug_print_init::$86 ← (byte*) debug_print_init::at_cols#1 + (word/signed word/dword/signed dword~) debug_print_init::$85 - (byte*~) debug_print_init::$87 ← (byte*~) debug_print_init::$86 + (byte) debug_print_init::c#5 - (byte*~) debug_print_init::$88 ← (byte*~) debug_print_init::$87 + (byte) debug_print_init::j#2 - *((byte*~) debug_print_init::$88) ← (byte) debug_print_init::col#0 - (word/signed word/dword/signed dword~) debug_print_init::$89 ← (byte/signed byte/word/signed word/dword/signed dword) 40 * (byte/signed byte/word/signed word/dword/signed dword) 8 - (byte*~) debug_print_init::$90 ← (byte*) debug_print_init::at_cols#1 + (word/signed word/dword/signed dword~) debug_print_init::$89 - (byte*~) debug_print_init::$91 ← (byte*~) debug_print_init::$90 + (byte) debug_print_init::c#5 - (byte*~) debug_print_init::$92 ← (byte*~) debug_print_init::$91 + (byte) debug_print_init::j#2 - *((byte*~) debug_print_init::$92) ← (byte) debug_print_init::col#0 - (byte) debug_print_init::j#1 ← (byte) debug_print_init::j#2 + rangenext(0,3) - (bool~) debug_print_init::$93 ← (byte) debug_print_init::j#1 != rangelast(0,3) - if((bool~) debug_print_init::$93) goto debug_print_init::@2 - to:debug_print_init::@3 -debug_print_init::@3: scope:[debug_print_init] from debug_print_init::@2 - (byte*) debug_print_init::at_cols#6 ← phi( debug_print_init::@2/(byte*) debug_print_init::at_cols#1 ) - (byte*) debug_print_init::at_line#4 ← phi( debug_print_init::@2/(byte*) debug_print_init::at_line#5 ) - (byte) debug_print_init::i#6 ← phi( debug_print_init::@2/(byte) debug_print_init::i#5 ) - (byte) debug_print_init::c#6 ← phi( debug_print_init::@2/(byte) debug_print_init::c#5 ) - (byte) debug_print_init::c#1 ← (byte) debug_print_init::c#6 + (byte/signed byte/word/signed word/dword/signed dword) 4 - (byte) debug_print_init::i#1 ← (byte) debug_print_init::i#6 + rangenext(0,7) - (bool~) debug_print_init::$94 ← (byte) debug_print_init::i#1 != rangelast(0,7) - if((bool~) debug_print_init::$94) goto debug_print_init::@1 - to:debug_print_init::@return -debug_print_init::@return: scope:[debug_print_init] from debug_print_init::@3 - return - to:@return -debug_print: scope:[debug_print] from anim::@13 - (signed byte) sz#24 ← phi( anim::@13/(signed byte) sz#15 ) - (signed byte) sy#17 ← phi( anim::@13/(signed byte) sy#15 ) - (signed byte) sx#11 ← phi( anim::@13/(signed byte) sx#15 ) - (byte*) SCREEN#14 ← phi( anim::@13/(byte*) SCREEN#28 ) - (byte/signed byte/word/signed word/dword/signed dword~) debug_print::$0 ← (byte/signed byte/word/signed word/dword/signed dword) 40 * (byte/signed byte/word/signed word/dword/signed dword) 0 - (byte*~) debug_print::$1 ← (byte*) SCREEN#14 + (byte/signed byte/word/signed word/dword/signed dword~) debug_print::$0 - (byte*~) debug_print::$2 ← (byte*~) debug_print::$1 + (byte/signed byte/word/signed word/dword/signed dword) 37 - (signed byte) print_sbyte_at::b#4 ← (signed byte) sx#11 - (byte*) print_sbyte_at::at#3 ← (byte*~) debug_print::$2 - call print_sbyte_at - to:debug_print::@3 -debug_print::@3: scope:[debug_print] from debug_print - (signed byte) sz#17 ← phi( debug_print/(signed byte) sz#24 ) - (signed byte) sy#11 ← phi( debug_print/(signed byte) sy#17 ) - (byte*) SCREEN#15 ← phi( debug_print/(byte*) SCREEN#14 ) - (byte/signed byte/word/signed word/dword/signed dword~) debug_print::$4 ← (byte/signed byte/word/signed word/dword/signed dword) 40 * (byte/signed byte/word/signed word/dword/signed dword) 1 - (byte*~) debug_print::$5 ← (byte*) SCREEN#15 + (byte/signed byte/word/signed word/dword/signed dword~) debug_print::$4 - (byte*~) debug_print::$6 ← (byte*~) debug_print::$5 + (byte/signed byte/word/signed word/dword/signed dword) 37 - (signed byte) print_sbyte_at::b#5 ← (signed byte) sy#11 - (byte*) print_sbyte_at::at#4 ← (byte*~) debug_print::$6 - call print_sbyte_at - to:debug_print::@4 -debug_print::@4: scope:[debug_print] from debug_print::@3 - (signed byte) sz#11 ← phi( debug_print::@3/(signed byte) sz#17 ) - (byte*) SCREEN#16 ← phi( debug_print::@3/(byte*) SCREEN#15 ) - (byte/signed byte/word/signed word/dword/signed dword~) debug_print::$8 ← (byte/signed byte/word/signed word/dword/signed dword) 40 * (byte/signed byte/word/signed word/dword/signed dword) 2 - (byte*~) debug_print::$9 ← (byte*) SCREEN#16 + (byte/signed byte/word/signed word/dword/signed dword~) debug_print::$8 - (byte*~) debug_print::$10 ← (byte*~) debug_print::$9 + (byte/signed byte/word/signed word/dword/signed dword) 37 - (signed byte) print_sbyte_at::b#6 ← (signed byte) sz#11 - (byte*) print_sbyte_at::at#5 ← (byte*~) debug_print::$10 - call print_sbyte_at - to:debug_print::@5 -debug_print::@5: scope:[debug_print] from debug_print::@4 - (byte*) SCREEN#17 ← phi( debug_print::@4/(byte*) SCREEN#16 ) - (byte/word/signed word/dword/signed dword~) debug_print::$12 ← (byte/signed byte/word/signed word/dword/signed dword) 40 * (byte/signed byte/word/signed word/dword/signed dword) 4 - (byte*~) debug_print::$13 ← (byte*) SCREEN#17 + (byte/word/signed word/dword/signed dword~) debug_print::$12 - (byte*~) debug_print::$14 ← (byte*~) debug_print::$13 + (byte/signed byte/word/signed word/dword/signed dword) 29 - (signed byte) print_sbyte_at::b#7 ← *((signed byte[9]) rotation_matrix#0 + (byte/signed byte/word/signed word/dword/signed dword) 0) - (byte*) print_sbyte_at::at#6 ← (byte*~) debug_print::$14 - call print_sbyte_at - to:debug_print::@6 -debug_print::@6: scope:[debug_print] from debug_print::@5 - (byte*) SCREEN#18 ← phi( debug_print::@5/(byte*) SCREEN#17 ) - (byte/word/signed word/dword/signed dword~) debug_print::$16 ← (byte/signed byte/word/signed word/dword/signed dword) 40 * (byte/signed byte/word/signed word/dword/signed dword) 4 - (byte*~) debug_print::$17 ← (byte*) SCREEN#18 + (byte/word/signed word/dword/signed dword~) debug_print::$16 - (byte*~) debug_print::$18 ← (byte*~) debug_print::$17 + (byte/signed byte/word/signed word/dword/signed dword) 33 - (signed byte) print_sbyte_at::b#8 ← *((signed byte[9]) rotation_matrix#0 + (byte/signed byte/word/signed word/dword/signed dword) 1) - (byte*) print_sbyte_at::at#7 ← (byte*~) debug_print::$18 - call print_sbyte_at - to:debug_print::@7 -debug_print::@7: scope:[debug_print] from debug_print::@6 - (byte*) SCREEN#19 ← phi( debug_print::@6/(byte*) SCREEN#18 ) - (byte/word/signed word/dword/signed dword~) debug_print::$20 ← (byte/signed byte/word/signed word/dword/signed dword) 40 * (byte/signed byte/word/signed word/dword/signed dword) 4 - (byte*~) debug_print::$21 ← (byte*) SCREEN#19 + (byte/word/signed word/dword/signed dword~) debug_print::$20 - (byte*~) debug_print::$22 ← (byte*~) debug_print::$21 + (byte/signed byte/word/signed word/dword/signed dword) 37 - (signed byte) print_sbyte_at::b#9 ← *((signed byte[9]) rotation_matrix#0 + (byte/signed byte/word/signed word/dword/signed dword) 2) - (byte*) print_sbyte_at::at#8 ← (byte*~) debug_print::$22 - call print_sbyte_at - to:debug_print::@8 -debug_print::@8: scope:[debug_print] from debug_print::@7 - (byte*) SCREEN#20 ← phi( debug_print::@7/(byte*) SCREEN#19 ) - (byte/word/signed word/dword/signed dword~) debug_print::$24 ← (byte/signed byte/word/signed word/dword/signed dword) 40 * (byte/signed byte/word/signed word/dword/signed dword) 5 - (byte*~) debug_print::$25 ← (byte*) SCREEN#20 + (byte/word/signed word/dword/signed dword~) debug_print::$24 - (byte*~) debug_print::$26 ← (byte*~) debug_print::$25 + (byte/signed byte/word/signed word/dword/signed dword) 29 - (signed byte) print_sbyte_at::b#10 ← *((signed byte[9]) rotation_matrix#0 + (byte/signed byte/word/signed word/dword/signed dword) 3) - (byte*) print_sbyte_at::at#9 ← (byte*~) debug_print::$26 - call print_sbyte_at - to:debug_print::@9 -debug_print::@9: scope:[debug_print] from debug_print::@8 - (byte*) SCREEN#21 ← phi( debug_print::@8/(byte*) SCREEN#20 ) - (byte/word/signed word/dword/signed dword~) debug_print::$28 ← (byte/signed byte/word/signed word/dword/signed dword) 40 * (byte/signed byte/word/signed word/dword/signed dword) 5 - (byte*~) debug_print::$29 ← (byte*) SCREEN#21 + (byte/word/signed word/dword/signed dword~) debug_print::$28 - (byte*~) debug_print::$30 ← (byte*~) debug_print::$29 + (byte/signed byte/word/signed word/dword/signed dword) 33 - (signed byte) print_sbyte_at::b#11 ← *((signed byte[9]) rotation_matrix#0 + (byte/signed byte/word/signed word/dword/signed dword) 4) - (byte*) print_sbyte_at::at#10 ← (byte*~) debug_print::$30 - call print_sbyte_at - to:debug_print::@10 -debug_print::@10: scope:[debug_print] from debug_print::@9 - (byte*) SCREEN#22 ← phi( debug_print::@9/(byte*) SCREEN#21 ) - (byte/word/signed word/dword/signed dword~) debug_print::$32 ← (byte/signed byte/word/signed word/dword/signed dword) 40 * (byte/signed byte/word/signed word/dword/signed dword) 5 - (byte*~) debug_print::$33 ← (byte*) SCREEN#22 + (byte/word/signed word/dword/signed dword~) debug_print::$32 - (byte*~) debug_print::$34 ← (byte*~) debug_print::$33 + (byte/signed byte/word/signed word/dword/signed dword) 37 - (signed byte) print_sbyte_at::b#12 ← *((signed byte[9]) rotation_matrix#0 + (byte/signed byte/word/signed word/dword/signed dword) 5) - (byte*) print_sbyte_at::at#11 ← (byte*~) debug_print::$34 - call print_sbyte_at - to:debug_print::@11 -debug_print::@11: scope:[debug_print] from debug_print::@10 - (byte*) SCREEN#23 ← phi( debug_print::@10/(byte*) SCREEN#22 ) - (byte/word/signed word/dword/signed dword~) debug_print::$36 ← (byte/signed byte/word/signed word/dword/signed dword) 40 * (byte/signed byte/word/signed word/dword/signed dword) 6 - (byte*~) debug_print::$37 ← (byte*) SCREEN#23 + (byte/word/signed word/dword/signed dword~) debug_print::$36 - (byte*~) debug_print::$38 ← (byte*~) debug_print::$37 + (byte/signed byte/word/signed word/dword/signed dword) 29 - (signed byte) print_sbyte_at::b#13 ← *((signed byte[9]) rotation_matrix#0 + (byte/signed byte/word/signed word/dword/signed dword) 6) - (byte*) print_sbyte_at::at#12 ← (byte*~) debug_print::$38 - call print_sbyte_at - to:debug_print::@12 -debug_print::@12: scope:[debug_print] from debug_print::@11 - (byte*) SCREEN#24 ← phi( debug_print::@11/(byte*) SCREEN#23 ) - (byte/word/signed word/dword/signed dword~) debug_print::$40 ← (byte/signed byte/word/signed word/dword/signed dword) 40 * (byte/signed byte/word/signed word/dword/signed dword) 6 - (byte*~) debug_print::$41 ← (byte*) SCREEN#24 + (byte/word/signed word/dword/signed dword~) debug_print::$40 - (byte*~) debug_print::$42 ← (byte*~) debug_print::$41 + (byte/signed byte/word/signed word/dword/signed dword) 33 - (signed byte) print_sbyte_at::b#14 ← *((signed byte[9]) rotation_matrix#0 + (byte/signed byte/word/signed word/dword/signed dword) 7) - (byte*) print_sbyte_at::at#13 ← (byte*~) debug_print::$42 - call print_sbyte_at - to:debug_print::@13 -debug_print::@13: scope:[debug_print] from debug_print::@12 - (byte*) SCREEN#25 ← phi( debug_print::@12/(byte*) SCREEN#24 ) - (byte/word/signed word/dword/signed dword~) debug_print::$44 ← (byte/signed byte/word/signed word/dword/signed dword) 40 * (byte/signed byte/word/signed word/dword/signed dword) 6 - (byte*~) debug_print::$45 ← (byte*) SCREEN#25 + (byte/word/signed word/dword/signed dword~) debug_print::$44 - (byte*~) debug_print::$46 ← (byte*~) debug_print::$45 + (byte/signed byte/word/signed word/dword/signed dword) 37 - (signed byte) print_sbyte_at::b#15 ← *((signed byte[9]) rotation_matrix#0 + (byte/signed byte/word/signed word/dword/signed dword) 8) - (byte*) print_sbyte_at::at#14 ← (byte*~) debug_print::$46 - call print_sbyte_at - to:debug_print::@14 -debug_print::@14: scope:[debug_print] from debug_print::@13 - (byte*) SCREEN#26 ← phi( debug_print::@13/(byte*) SCREEN#25 ) - (word/signed word/dword/signed dword~) debug_print::$48 ← (byte/signed byte/word/signed word/dword/signed dword) 19 * (byte/signed byte/word/signed word/dword/signed dword) 40 - (byte*~) debug_print::$49 ← (byte*) SCREEN#26 + (word/signed word/dword/signed dword~) debug_print::$48 - (byte*) debug_print::at_line#0 ← (byte*~) debug_print::$49 - (byte) debug_print::c#0 ← (byte/signed byte/word/signed word/dword/signed dword) 4 - (byte) debug_print::i#0 ← (byte/signed byte/word/signed word/dword/signed dword) 0 - to:debug_print::@1 -debug_print::@1: scope:[debug_print] from debug_print::@14 debug_print::@20 - (byte) debug_print::i#2 ← phi( debug_print::@14/(byte) debug_print::i#0 debug_print::@20/(byte) debug_print::i#1 ) - (byte) debug_print::c#2 ← phi( debug_print::@14/(byte) debug_print::c#0 debug_print::@20/(byte) debug_print::c#1 ) - (byte*) debug_print::at_line#1 ← phi( debug_print::@14/(byte*) debug_print::at_line#0 debug_print::@20/(byte*) debug_print::at_line#7 ) - (byte/signed byte/word/signed word/dword/signed dword~) debug_print::$50 ← (byte/signed byte/word/signed word/dword/signed dword) 40 * (byte/signed byte/word/signed word/dword/signed dword) 0 - (byte*~) debug_print::$51 ← (byte*) debug_print::at_line#1 + (byte/signed byte/word/signed word/dword/signed dword~) debug_print::$50 - (byte*~) debug_print::$52 ← (byte*~) debug_print::$51 + (byte) debug_print::c#2 - (signed byte) print_sbyte_at::b#16 ← *((signed byte[8]) xrs#0 + (byte) debug_print::i#2) - (byte*) print_sbyte_at::at#15 ← (byte*~) debug_print::$52 - call print_sbyte_at - to:debug_print::@15 -debug_print::@15: scope:[debug_print] from debug_print::@1 - (byte) debug_print::i#3 ← phi( debug_print::@1/(byte) debug_print::i#2 ) - (byte) debug_print::c#3 ← phi( debug_print::@1/(byte) debug_print::c#2 ) - (byte*) debug_print::at_line#2 ← phi( debug_print::@1/(byte*) debug_print::at_line#1 ) - (byte/signed byte/word/signed word/dword/signed dword~) debug_print::$54 ← (byte/signed byte/word/signed word/dword/signed dword) 40 * (byte/signed byte/word/signed word/dword/signed dword) 1 - (byte*~) debug_print::$55 ← (byte*) debug_print::at_line#2 + (byte/signed byte/word/signed word/dword/signed dword~) debug_print::$54 - (byte*~) debug_print::$56 ← (byte*~) debug_print::$55 + (byte) debug_print::c#3 - (signed byte) print_sbyte_at::b#17 ← *((signed byte[8]) yrs#0 + (byte) debug_print::i#3) - (byte*) print_sbyte_at::at#16 ← (byte*~) debug_print::$56 - call print_sbyte_at - to:debug_print::@16 -debug_print::@16: scope:[debug_print] from debug_print::@15 - (byte) debug_print::i#4 ← phi( debug_print::@15/(byte) debug_print::i#3 ) - (byte) debug_print::c#4 ← phi( debug_print::@15/(byte) debug_print::c#3 ) - (byte*) debug_print::at_line#3 ← phi( debug_print::@15/(byte*) debug_print::at_line#2 ) - (byte/signed byte/word/signed word/dword/signed dword~) debug_print::$58 ← (byte/signed byte/word/signed word/dword/signed dword) 40 * (byte/signed byte/word/signed word/dword/signed dword) 2 - (byte*~) debug_print::$59 ← (byte*) debug_print::at_line#3 + (byte/signed byte/word/signed word/dword/signed dword~) debug_print::$58 - (byte*~) debug_print::$60 ← (byte*~) debug_print::$59 + (byte) debug_print::c#4 - (signed byte) print_sbyte_at::b#18 ← *((signed byte[8]) zrs#0 + (byte) debug_print::i#4) - (byte*) print_sbyte_at::at#17 ← (byte*~) debug_print::$60 - call print_sbyte_at - to:debug_print::@17 -debug_print::@17: scope:[debug_print] from debug_print::@16 - (byte) debug_print::i#5 ← phi( debug_print::@16/(byte) debug_print::i#4 ) - (byte) debug_print::c#5 ← phi( debug_print::@16/(byte) debug_print::c#4 ) - (byte*) debug_print::at_line#4 ← phi( debug_print::@16/(byte*) debug_print::at_line#3 ) - (byte/signed byte/word/signed word/dword/signed dword~) debug_print::$62 ← (byte/signed byte/word/signed word/dword/signed dword) 40 * (byte/signed byte/word/signed word/dword/signed dword) 3 - (byte*~) debug_print::$63 ← (byte*) debug_print::at_line#4 + (byte/signed byte/word/signed word/dword/signed dword~) debug_print::$62 - (byte*~) debug_print::$64 ← (byte*~) debug_print::$63 + (byte) debug_print::c#5 - (signed byte) print_sbyte_at::b#19 ← *((signed byte[8]) pps#0 + (byte) debug_print::i#5) - (byte*) print_sbyte_at::at#18 ← (byte*~) debug_print::$64 - call print_sbyte_at - to:debug_print::@18 -debug_print::@18: scope:[debug_print] from debug_print::@17 - (byte) debug_print::i#6 ← phi( debug_print::@17/(byte) debug_print::i#5 ) - (byte) debug_print::c#6 ← phi( debug_print::@17/(byte) debug_print::c#5 ) - (byte*) debug_print::at_line#5 ← phi( debug_print::@17/(byte*) debug_print::at_line#4 ) - (byte/word/signed word/dword/signed dword~) debug_print::$66 ← (byte/signed byte/word/signed word/dword/signed dword) 40 * (byte/signed byte/word/signed word/dword/signed dword) 4 - (byte*~) debug_print::$67 ← (byte*) debug_print::at_line#5 + (byte/word/signed word/dword/signed dword~) debug_print::$66 - (byte*~) debug_print::$68 ← (byte*~) debug_print::$67 + (byte) debug_print::c#6 - (signed byte) print_sbyte_at::b#20 ← *((signed byte[8]) xps#0 + (byte) debug_print::i#6) - (byte*) print_sbyte_at::at#19 ← (byte*~) debug_print::$68 - call print_sbyte_at - to:debug_print::@19 -debug_print::@19: scope:[debug_print] from debug_print::@18 - (byte) debug_print::i#7 ← phi( debug_print::@18/(byte) debug_print::i#6 ) - (byte) debug_print::c#7 ← phi( debug_print::@18/(byte) debug_print::c#6 ) - (byte*) debug_print::at_line#6 ← phi( debug_print::@18/(byte*) debug_print::at_line#5 ) - (byte/word/signed word/dword/signed dword~) debug_print::$70 ← (byte/signed byte/word/signed word/dword/signed dword) 40 * (byte/signed byte/word/signed word/dword/signed dword) 5 - (byte*~) debug_print::$71 ← (byte*) debug_print::at_line#6 + (byte/word/signed word/dword/signed dword~) debug_print::$70 - (byte*~) debug_print::$72 ← (byte*~) debug_print::$71 + (byte) debug_print::c#7 - (signed byte) print_sbyte_at::b#21 ← *((signed byte[8]) yps#0 + (byte) debug_print::i#7) - (byte*) print_sbyte_at::at#20 ← (byte*~) debug_print::$72 - call print_sbyte_at - to:debug_print::@20 -debug_print::@20: scope:[debug_print] from debug_print::@19 - (byte*) debug_print::at_line#7 ← phi( debug_print::@19/(byte*) debug_print::at_line#6 ) - (byte) debug_print::i#8 ← phi( debug_print::@19/(byte) debug_print::i#7 ) - (byte) debug_print::c#8 ← phi( debug_print::@19/(byte) debug_print::c#7 ) - (byte) debug_print::c#1 ← (byte) debug_print::c#8 + (byte/signed byte/word/signed word/dword/signed dword) 4 - (byte) debug_print::i#1 ← (byte) debug_print::i#8 + rangenext(0,7) - (bool~) debug_print::$74 ← (byte) debug_print::i#1 != rangelast(0,7) - if((bool~) debug_print::$74) goto debug_print::@1 - to:debug_print::@return -debug_print::@return: scope:[debug_print] from debug_print::@20 return to:@return sprites_init: scope:[sprites_init] from main @@ -1055,157 +422,92 @@ sprites_init::@1: scope:[sprites_init] from sprites_init sprites_init::@1 (byte*~) sprites_init::$1 ← (byte*) SPRITE#1 / (byte/signed byte/word/signed word/dword/signed dword) 64 (byte~) sprites_init::$2 ← ((byte)) (byte*~) sprites_init::$1 *((byte*) sprites_init::sprites_ptr#1 + (byte) sprites_init::i#2) ← (byte~) sprites_init::$2 - (byte/signed word/word/dword/signed dword~) sprites_init::$3 ← (byte/signed byte/word/signed word/dword/signed dword) 8 + (byte) sprites_init::i#2 - *((byte*) SPRITES_COLS#0 + (byte) sprites_init::i#2) ← (byte/signed word/word/dword/signed dword~) sprites_init::$3 + *((byte*) SPRITES_COLS#0 + (byte) sprites_init::i#2) ← (byte) GREEN#0 (byte) sprites_init::i#1 ← (byte) sprites_init::i#2 + rangenext(0,7) - (bool~) sprites_init::$4 ← (byte) sprites_init::i#1 != rangelast(0,7) - if((bool~) sprites_init::$4) goto sprites_init::@1 + (bool~) sprites_init::$3 ← (byte) sprites_init::i#1 != rangelast(0,7) + if((bool~) sprites_init::$3) goto sprites_init::@1 to:sprites_init::@return sprites_init::@return: scope:[sprites_init] from sprites_init::@1 return to:@return @25: scope:[] from @21 - (signed byte*) yp#17 ← phi( @21/(signed byte*) yp#18 ) - (signed byte*) xp#17 ← phi( @21/(signed byte*) xp#18 ) - (signed byte*) pp#17 ← phi( @21/(signed byte*) pp#18 ) - (signed byte*) zr#18 ← phi( @21/(signed byte*) zr#19 ) - (signed byte*) yr#18 ← phi( @21/(signed byte*) yr#19 ) - (signed byte*) xr#18 ← phi( @21/(signed byte*) xr#19 ) - (byte*) SCREEN#36 ← phi( @21/(byte*) SCREEN#38 ) - (byte*) print_screen#7 ← phi( @21/(byte*) print_screen#8 ) + (signed byte*) yp#15 ← phi( @21/(signed byte*) yp#16 ) + (signed byte*) xp#15 ← phi( @21/(signed byte*) xp#16 ) + (signed byte*) pp#15 ← phi( @21/(signed byte*) pp#16 ) + (signed byte*) zr#16 ← phi( @21/(signed byte*) zr#17 ) + (signed byte*) yr#16 ← phi( @21/(signed byte*) yr#17 ) + (signed byte*) xr#16 ← phi( @21/(signed byte*) xr#17 ) + (signed byte) sz#15 ← phi( @21/(signed byte) sz#0 ) (word*) psp2#4 ← phi( @21/(word*) psp2#5 ) (word*) psp1#4 ← phi( @21/(word*) psp1#5 ) - (signed byte) sz#25 ← phi( @21/(signed byte) sz#2 ) - (signed byte) sy#24 ← phi( @21/(signed byte) sy#2 ) - (signed byte) sx#23 ← phi( @21/(signed byte) sx#2 ) + (signed byte) sy#22 ← phi( @21/(signed byte) sy#2 ) + (signed byte) sx#22 ← phi( @21/(signed byte) sx#2 ) (signed byte[9]) rotation_matrix#0 ← { fill( 9, 0) } - to:@29 -calculate_matrix_16: scope:[calculate_matrix_16] from anim::@6 - (byte*) SINQ_HI#1 ← phi( anim::@6/(byte*) SINQ_HI#2 ) - (byte*) COSQ_HI#1 ← phi( anim::@6/(byte*) COSQ_HI#2 ) - (signed byte) calculate_matrix_16::sx#1 ← phi( anim::@6/(signed byte) calculate_matrix_16::sx#0 ) - (byte*) SINH_LO#1 ← phi( anim::@6/(byte*) SINH_LO#2 ) - (byte*) SINH_HI#1 ← phi( anim::@6/(byte*) SINH_HI#2 ) - (byte*) COSH_LO#1 ← phi( anim::@6/(byte*) COSH_LO#2 ) - (byte*) COSH_HI#1 ← phi( anim::@6/(byte*) COSH_HI#2 ) - (signed byte) calculate_matrix_16::sz#1 ← phi( anim::@6/(signed byte) calculate_matrix_16::sz#0 ) - (signed byte) calculate_matrix_16::sy#1 ← phi( anim::@6/(signed byte) calculate_matrix_16::sy#0 ) - (signed byte~) calculate_matrix_16::$0 ← (signed byte) calculate_matrix_16::sy#1 - (signed byte) calculate_matrix_16::sz#1 - (signed byte) calculate_matrix_16::t1#0 ← (signed byte~) calculate_matrix_16::$0 - (signed byte~) calculate_matrix_16::$1 ← (signed byte) calculate_matrix_16::sy#1 + (signed byte) calculate_matrix_16::sz#1 - (signed byte) calculate_matrix_16::t2#0 ← (signed byte~) calculate_matrix_16::$1 - (signed word~) calculate_matrix_16::$2 ← ((signed word)) { *((byte*) COSH_HI#1 + (signed byte) calculate_matrix_16::t1#0), *((byte*) COSH_LO#1 + (signed byte) calculate_matrix_16::t1#0) } - (signed word) calculate_matrix_16::cosh_t1#0 ← (signed word~) calculate_matrix_16::$2 - (signed word~) calculate_matrix_16::$3 ← ((signed word)) { *((byte*) COSH_HI#1 + (signed byte) calculate_matrix_16::t2#0), *((byte*) COSH_LO#1 + (signed byte) calculate_matrix_16::t2#0) } - (signed word) calculate_matrix_16::cosh_t2#0 ← (signed word~) calculate_matrix_16::$3 - (signed word~) calculate_matrix_16::$4 ← (signed word) calculate_matrix_16::cosh_t1#0 + (signed word) calculate_matrix_16::cosh_t2#0 - (byte~) calculate_matrix_16::$5 ← > (signed word~) calculate_matrix_16::$4 - (signed byte~) calculate_matrix_16::$6 ← ((signed byte)) (byte~) calculate_matrix_16::$5 - *((signed byte[9]) rotation_matrix#0 + (byte/signed byte/word/signed word/dword/signed dword) 0) ← (signed byte~) calculate_matrix_16::$6 - (signed word~) calculate_matrix_16::$7 ← ((signed word)) { *((byte*) SINH_HI#1 + (signed byte) calculate_matrix_16::t1#0), *((byte*) SINH_LO#1 + (signed byte) calculate_matrix_16::t1#0) } - (signed word) calculate_matrix_16::sinh_t1#0 ← (signed word~) calculate_matrix_16::$7 - (signed word~) calculate_matrix_16::$8 ← ((signed word)) { *((byte*) SINH_HI#1 + (signed byte) calculate_matrix_16::t2#0), *((byte*) SINH_LO#1 + (signed byte) calculate_matrix_16::t2#0) } - (signed word) calculate_matrix_16::sinh_t2#0 ← (signed word~) calculate_matrix_16::$8 - (signed word~) calculate_matrix_16::$9 ← (signed word) calculate_matrix_16::sinh_t1#0 - (signed word) calculate_matrix_16::sinh_t2#0 - (byte~) calculate_matrix_16::$10 ← > (signed word~) calculate_matrix_16::$9 - (signed byte~) calculate_matrix_16::$11 ← ((signed byte)) (byte~) calculate_matrix_16::$10 - *((signed byte[9]) rotation_matrix#0 + (byte/signed byte/word/signed word/dword/signed dword) 1) ← (signed byte~) calculate_matrix_16::$11 - (signed word~) calculate_matrix_16::$12 ← ((signed word)) { *((byte*) SINH_HI#1 + (signed byte) calculate_matrix_16::sy#1), *((byte*) SINH_LO#1 + (signed byte) calculate_matrix_16::sy#1) } - (signed word) calculate_matrix_16::sinh_sy#0 ← (signed word~) calculate_matrix_16::$12 - (signed word~) calculate_matrix_16::$13 ← (signed word) calculate_matrix_16::sinh_sy#0 + (signed word) calculate_matrix_16::sinh_sy#0 - (byte~) calculate_matrix_16::$14 ← > (signed word~) calculate_matrix_16::$13 - (signed byte~) calculate_matrix_16::$15 ← ((signed byte)) (byte~) calculate_matrix_16::$14 - *((signed byte[9]) rotation_matrix#0 + (byte/signed byte/word/signed word/dword/signed dword) 2) ← (signed byte~) calculate_matrix_16::$15 - (signed byte~) calculate_matrix_16::$16 ← (signed byte) calculate_matrix_16::sx#1 + (signed byte) calculate_matrix_16::sz#1 - (signed byte) calculate_matrix_16::t3#0 ← (signed byte~) calculate_matrix_16::$16 - (signed byte~) calculate_matrix_16::$17 ← (signed byte) calculate_matrix_16::sx#1 - (signed byte) calculate_matrix_16::sz#1 - (signed byte) calculate_matrix_16::t4#0 ← (signed byte~) calculate_matrix_16::$17 - (signed byte~) calculate_matrix_16::$18 ← (signed byte) calculate_matrix_16::sx#1 + (signed byte) calculate_matrix_16::t2#0 - (signed byte) calculate_matrix_16::t5#0 ← (signed byte~) calculate_matrix_16::$18 - (signed byte~) calculate_matrix_16::$19 ← (signed byte) calculate_matrix_16::sx#1 - (signed byte) calculate_matrix_16::t1#0 - (signed byte) calculate_matrix_16::t6#0 ← (signed byte~) calculate_matrix_16::$19 - (signed byte~) calculate_matrix_16::$20 ← (signed byte) calculate_matrix_16::sx#1 + (signed byte) calculate_matrix_16::t1#0 - (signed byte) calculate_matrix_16::t7#0 ← (signed byte~) calculate_matrix_16::$20 - (signed byte~) calculate_matrix_16::$21 ← (signed byte) calculate_matrix_16::t2#0 - (signed byte) calculate_matrix_16::sx#1 - (signed byte) calculate_matrix_16::t8#0 ← (signed byte~) calculate_matrix_16::$21 - (signed word~) calculate_matrix_16::$22 ← ((signed word)) { *((byte*) SINH_HI#1 + (signed byte) calculate_matrix_16::t3#0), *((byte*) SINH_LO#1 + (signed byte) calculate_matrix_16::t3#0) } - (signed word) calculate_matrix_16::sinh_t3#0 ← (signed word~) calculate_matrix_16::$22 - (signed word~) calculate_matrix_16::$23 ← ((signed word)) { *((byte*) SINH_HI#1 + (signed byte) calculate_matrix_16::t4#0), *((byte*) SINH_LO#1 + (signed byte) calculate_matrix_16::t4#0) } - (signed word) calculate_matrix_16::sinh_t4#0 ← (signed word~) calculate_matrix_16::$23 - (signed word~) calculate_matrix_16::$24 ← ((signed word)) { *((byte*) COSQ_HI#1 + (signed byte) calculate_matrix_16::t5#0), *((byte*) COSH_LO#1 + (signed byte) calculate_matrix_16::t5#0) } - (signed word) calculate_matrix_16::cosq_t5#0 ← (signed word~) calculate_matrix_16::$24 - (signed word~) calculate_matrix_16::$25 ← ((signed word)) { *((byte*) COSQ_HI#1 + (signed byte) calculate_matrix_16::t6#0), *((byte*) COSH_LO#1 + (signed byte) calculate_matrix_16::t6#0) } - (signed word) calculate_matrix_16::cosq_t6#0 ← (signed word~) calculate_matrix_16::$25 - (signed word~) calculate_matrix_16::$26 ← ((signed word)) { *((byte*) COSQ_HI#1 + (signed byte) calculate_matrix_16::t7#0), *((byte*) COSH_LO#1 + (signed byte) calculate_matrix_16::t7#0) } - (signed word) calculate_matrix_16::cosq_t7#0 ← (signed word~) calculate_matrix_16::$26 - (signed word~) calculate_matrix_16::$27 ← ((signed word)) { *((byte*) COSQ_HI#1 + (signed byte) calculate_matrix_16::t8#0), *((byte*) COSH_LO#1 + (signed byte) calculate_matrix_16::t8#0) } - (signed word) calculate_matrix_16::cosq_t8#0 ← (signed word~) calculate_matrix_16::$27 - (signed word~) calculate_matrix_16::$28 ← (signed word) calculate_matrix_16::sinh_t3#0 - (signed word) calculate_matrix_16::sinh_t4#0 - (signed word~) calculate_matrix_16::$29 ← (signed word~) calculate_matrix_16::$28 + (signed word) calculate_matrix_16::cosq_t6#0 - (signed word~) calculate_matrix_16::$30 ← (signed word~) calculate_matrix_16::$29 - (signed word) calculate_matrix_16::cosq_t5#0 - (signed word~) calculate_matrix_16::$31 ← (signed word~) calculate_matrix_16::$30 + (signed word) calculate_matrix_16::cosq_t8#0 - (signed word~) calculate_matrix_16::$32 ← (signed word~) calculate_matrix_16::$31 - (signed word) calculate_matrix_16::cosq_t7#0 - (byte~) calculate_matrix_16::$33 ← > (signed word~) calculate_matrix_16::$32 - (signed byte~) calculate_matrix_16::$34 ← ((signed byte)) (byte~) calculate_matrix_16::$33 - *((signed byte[9]) rotation_matrix#0 + (byte/signed byte/word/signed word/dword/signed dword) 3) ← (signed byte~) calculate_matrix_16::$34 - (signed word~) calculate_matrix_16::$35 ← (signed word) calculate_matrix_16::sinh_t3#0 + (signed word) calculate_matrix_16::sinh_t4#0 - (signed word~) calculate_matrix_16::$36 ← (signed word~) calculate_matrix_16::$35 + (signed word) calculate_matrix_16::cosq_t6#0 - (signed word~) calculate_matrix_16::$37 ← (signed word~) calculate_matrix_16::$36 - (signed word) calculate_matrix_16::cosq_t5#0 - (signed word~) calculate_matrix_16::$38 ← (signed word~) calculate_matrix_16::$37 + (signed word) calculate_matrix_16::cosq_t7#0 - (signed word~) calculate_matrix_16::$39 ← (signed word~) calculate_matrix_16::$38 - (signed word) calculate_matrix_16::cosq_t8#0 - (byte~) calculate_matrix_16::$40 ← > (signed word~) calculate_matrix_16::$39 - (signed byte~) calculate_matrix_16::$41 ← ((signed byte)) (byte~) calculate_matrix_16::$40 - *((signed byte[9]) rotation_matrix#0 + (byte/signed byte/word/signed word/dword/signed dword) 7) ← (signed byte~) calculate_matrix_16::$41 - (signed word~) calculate_matrix_16::$42 ← ((signed word)) { *((byte*) COSH_HI#1 + (signed byte) calculate_matrix_16::t3#0), *((byte*) COSH_LO#1 + (signed byte) calculate_matrix_16::t3#0) } - (signed word) calculate_matrix_16::cosh_t3#0 ← (signed word~) calculate_matrix_16::$42 - (signed word~) calculate_matrix_16::$43 ← ((signed word)) { *((byte*) COSH_HI#1 + (signed byte) calculate_matrix_16::t4#0), *((byte*) COSH_LO#1 + (signed byte) calculate_matrix_16::t4#0) } - (signed word) calculate_matrix_16::cosh_t4#0 ← (signed word~) calculate_matrix_16::$43 - (signed word~) calculate_matrix_16::$44 ← ((signed word)) { *((byte*) SINQ_HI#1 + (signed byte) calculate_matrix_16::t5#0), *((byte*) SINH_LO#1 + (signed byte) calculate_matrix_16::t5#0) } - (signed word) calculate_matrix_16::sinq_t5#0 ← (signed word~) calculate_matrix_16::$44 - (signed word~) calculate_matrix_16::$45 ← ((signed word)) { *((byte*) SINQ_HI#1 + (signed byte) calculate_matrix_16::t6#0), *((byte*) SINH_LO#1 + (signed byte) calculate_matrix_16::t6#0) } - (signed word) calculate_matrix_16::sinq_t6#0 ← (signed word~) calculate_matrix_16::$45 - (signed word~) calculate_matrix_16::$46 ← ((signed word)) { *((byte*) SINQ_HI#1 + (signed byte) calculate_matrix_16::t7#0), *((byte*) SINH_LO#1 + (signed byte) calculate_matrix_16::t7#0) } - (signed word) calculate_matrix_16::sinq_t7#0 ← (signed word~) calculate_matrix_16::$46 - (signed word~) calculate_matrix_16::$47 ← ((signed word)) { *((byte*) SINQ_HI#1 + (signed byte) calculate_matrix_16::t8#0), *((byte*) SINH_LO#1 + (signed byte) calculate_matrix_16::t8#0) } - (signed word) calculate_matrix_16::sinq_t8#0 ← (signed word~) calculate_matrix_16::$47 - (signed word~) calculate_matrix_16::$48 ← (signed word) calculate_matrix_16::cosh_t3#0 + (signed word) calculate_matrix_16::cosh_t4#0 - (signed word~) calculate_matrix_16::$49 ← (signed word~) calculate_matrix_16::$48 + (signed word) calculate_matrix_16::sinq_t5#0 - (signed word~) calculate_matrix_16::$50 ← (signed word~) calculate_matrix_16::$49 - (signed word) calculate_matrix_16::sinq_t6#0 - (signed word~) calculate_matrix_16::$51 ← (signed word~) calculate_matrix_16::$50 - (signed word) calculate_matrix_16::sinq_t7#0 - (signed word~) calculate_matrix_16::$52 ← (signed word~) calculate_matrix_16::$51 - (signed word) calculate_matrix_16::sinq_t8#0 - (byte~) calculate_matrix_16::$53 ← > (signed word~) calculate_matrix_16::$52 - (signed byte~) calculate_matrix_16::$54 ← ((signed byte)) (byte~) calculate_matrix_16::$53 - *((signed byte[9]) rotation_matrix#0 + (byte/signed byte/word/signed word/dword/signed dword) 4) ← (signed byte~) calculate_matrix_16::$54 - (signed word~) calculate_matrix_16::$55 ← (signed word) calculate_matrix_16::cosh_t4#0 - (signed word) calculate_matrix_16::cosh_t3#0 - (signed word~) calculate_matrix_16::$56 ← (signed word~) calculate_matrix_16::$55 + (signed word) calculate_matrix_16::sinq_t6#0 - (signed word~) calculate_matrix_16::$57 ← (signed word~) calculate_matrix_16::$56 - (signed word) calculate_matrix_16::sinq_t5#0 - (signed word~) calculate_matrix_16::$58 ← (signed word~) calculate_matrix_16::$57 - (signed word) calculate_matrix_16::sinq_t7#0 - (signed word~) calculate_matrix_16::$59 ← (signed word~) calculate_matrix_16::$58 - (signed word) calculate_matrix_16::sinq_t8#0 - (byte~) calculate_matrix_16::$60 ← > (signed word~) calculate_matrix_16::$59 - (signed byte~) calculate_matrix_16::$61 ← ((signed byte)) (byte~) calculate_matrix_16::$60 - *((signed byte[9]) rotation_matrix#0 + (byte/signed byte/word/signed word/dword/signed dword) 6) ← (signed byte~) calculate_matrix_16::$61 - (signed byte~) calculate_matrix_16::$62 ← (signed byte) calculate_matrix_16::sy#1 - (signed byte) calculate_matrix_16::sx#1 - (signed byte) calculate_matrix_16::t9#0 ← (signed byte~) calculate_matrix_16::$62 - (signed byte~) calculate_matrix_16::$63 ← (signed byte) calculate_matrix_16::sy#1 + (signed byte) calculate_matrix_16::sx#1 - (signed byte) calculate_matrix_16::t10#0 ← (signed byte~) calculate_matrix_16::$63 - (signed word~) calculate_matrix_16::$64 ← ((signed word)) { *((byte*) SINH_HI#1 + (signed byte) calculate_matrix_16::t9#0), *((byte*) SINH_LO#1 + (signed byte) calculate_matrix_16::t9#0) } - (signed word) calculate_matrix_16::sinh_t9#0 ← (signed word~) calculate_matrix_16::$64 - (signed word~) calculate_matrix_16::$65 ← ((signed word)) { *((byte*) SINH_HI#1 + (signed byte) calculate_matrix_16::t10#0), *((byte*) SINH_LO#1 + (signed byte) calculate_matrix_16::t10#0) } - (signed word) calculate_matrix_16::sinh_t10#0 ← (signed word~) calculate_matrix_16::$65 - (signed word~) calculate_matrix_16::$66 ← (signed word) calculate_matrix_16::sinh_t9#0 - (signed word) calculate_matrix_16::sinh_t10#0 - (byte~) calculate_matrix_16::$67 ← > (signed word~) calculate_matrix_16::$66 - (signed byte~) calculate_matrix_16::$68 ← ((signed byte)) (byte~) calculate_matrix_16::$67 - *((signed byte[9]) rotation_matrix#0 + (byte/signed byte/word/signed word/dword/signed dword) 5) ← (signed byte~) calculate_matrix_16::$68 - (signed word~) calculate_matrix_16::$69 ← ((signed word)) { *((byte*) COSH_HI#1 + (signed byte) calculate_matrix_16::t9#0), *((byte*) COSH_LO#1 + (signed byte) calculate_matrix_16::t9#0) } - (signed word) calculate_matrix_16::cosh_t9#0 ← (signed word~) calculate_matrix_16::$69 - (signed word~) calculate_matrix_16::$70 ← ((signed word)) { *((byte*) COSH_HI#1 + (signed byte) calculate_matrix_16::t10#0), *((byte*) COSH_LO#1 + (signed byte) calculate_matrix_16::t10#0) } - (signed word) calculate_matrix_16::cosh_t10#0 ← (signed word~) calculate_matrix_16::$70 - (signed word~) calculate_matrix_16::$71 ← (signed word) calculate_matrix_16::cosh_t9#0 + (signed word) calculate_matrix_16::cosh_t10#0 - (byte~) calculate_matrix_16::$72 ← > (signed word~) calculate_matrix_16::$71 - (signed byte~) calculate_matrix_16::$73 ← ((signed byte)) (byte~) calculate_matrix_16::$72 - *((signed byte[9]) rotation_matrix#0 + (byte/signed byte/word/signed word/dword/signed dword) 8) ← (signed byte~) calculate_matrix_16::$73 - to:calculate_matrix_16::@return -calculate_matrix_16::@return: scope:[calculate_matrix_16] from calculate_matrix_16 + to:@30 +calculate_matrix: scope:[calculate_matrix] from anim::@6 + (signed byte*) SINQ#1 ← phi( anim::@6/(signed byte*) SINQ#2 ) + (signed byte*) COSQ#1 ← phi( anim::@6/(signed byte*) COSQ#2 ) + (signed byte*) SINH#1 ← phi( anim::@6/(signed byte*) SINH#2 ) + (signed byte*) COSH#1 ← phi( anim::@6/(signed byte*) COSH#2 ) + (signed byte) calculate_matrix::sx#1 ← phi( anim::@6/(signed byte) calculate_matrix::sx#0 ) + (signed byte) calculate_matrix::sz#1 ← phi( anim::@6/(signed byte) calculate_matrix::sz#0 ) + (signed byte) calculate_matrix::sy#1 ← phi( anim::@6/(signed byte) calculate_matrix::sy#0 ) + (signed byte~) calculate_matrix::$0 ← (signed byte) calculate_matrix::sy#1 - (signed byte) calculate_matrix::sz#1 + (signed byte) calculate_matrix::t1#0 ← (signed byte~) calculate_matrix::$0 + (signed byte~) calculate_matrix::$1 ← (signed byte) calculate_matrix::sy#1 + (signed byte) calculate_matrix::sz#1 + (signed byte) calculate_matrix::t2#0 ← (signed byte~) calculate_matrix::$1 + (signed byte~) calculate_matrix::$2 ← (signed byte) calculate_matrix::sx#1 + (signed byte) calculate_matrix::sz#1 + (signed byte) calculate_matrix::t3#0 ← (signed byte~) calculate_matrix::$2 + (signed byte~) calculate_matrix::$3 ← (signed byte) calculate_matrix::sx#1 - (signed byte) calculate_matrix::sz#1 + (signed byte) calculate_matrix::t4#0 ← (signed byte~) calculate_matrix::$3 + (signed byte~) calculate_matrix::$4 ← (signed byte) calculate_matrix::sx#1 + (signed byte) calculate_matrix::t2#0 + (signed byte) calculate_matrix::t5#0 ← (signed byte~) calculate_matrix::$4 + (signed byte~) calculate_matrix::$5 ← (signed byte) calculate_matrix::sx#1 - (signed byte) calculate_matrix::t1#0 + (signed byte) calculate_matrix::t6#0 ← (signed byte~) calculate_matrix::$5 + (signed byte~) calculate_matrix::$6 ← (signed byte) calculate_matrix::sx#1 + (signed byte) calculate_matrix::t1#0 + (signed byte) calculate_matrix::t7#0 ← (signed byte~) calculate_matrix::$6 + (signed byte~) calculate_matrix::$7 ← (signed byte) calculate_matrix::t2#0 - (signed byte) calculate_matrix::sx#1 + (signed byte) calculate_matrix::t8#0 ← (signed byte~) calculate_matrix::$7 + (signed byte~) calculate_matrix::$8 ← (signed byte) calculate_matrix::sy#1 - (signed byte) calculate_matrix::sx#1 + (signed byte) calculate_matrix::t9#0 ← (signed byte~) calculate_matrix::$8 + (signed byte~) calculate_matrix::$9 ← (signed byte) calculate_matrix::sy#1 + (signed byte) calculate_matrix::sx#1 + (signed byte) calculate_matrix::t10#0 ← (signed byte~) calculate_matrix::$9 + (signed byte~) calculate_matrix::$10 ← *((signed byte*) COSH#1 + (signed byte) calculate_matrix::t1#0) + *((signed byte*) COSH#1 + (signed byte) calculate_matrix::t2#0) + *((signed byte[9]) rotation_matrix#0 + (byte/signed byte/word/signed word/dword/signed dword) 0) ← (signed byte~) calculate_matrix::$10 + (signed byte~) calculate_matrix::$11 ← *((signed byte*) SINH#1 + (signed byte) calculate_matrix::t1#0) - *((signed byte*) SINH#1 + (signed byte) calculate_matrix::t2#0) + *((signed byte[9]) rotation_matrix#0 + (byte/signed byte/word/signed word/dword/signed dword) 1) ← (signed byte~) calculate_matrix::$11 + (signed byte~) calculate_matrix::$12 ← *((signed byte*) SINH#1 + (signed byte) calculate_matrix::sy#1) + *((signed byte*) SINH#1 + (signed byte) calculate_matrix::sy#1) + *((signed byte[9]) rotation_matrix#0 + (byte/signed byte/word/signed word/dword/signed dword) 2) ← (signed byte~) calculate_matrix::$12 + (signed byte~) calculate_matrix::$13 ← *((signed byte*) SINH#1 + (signed byte) calculate_matrix::t3#0) - *((signed byte*) SINH#1 + (signed byte) calculate_matrix::t4#0) + (signed byte~) calculate_matrix::$14 ← (signed byte~) calculate_matrix::$13 + *((signed byte*) COSQ#1 + (signed byte) calculate_matrix::t6#0) + (signed byte~) calculate_matrix::$15 ← (signed byte~) calculate_matrix::$14 - *((signed byte*) COSQ#1 + (signed byte) calculate_matrix::t5#0) + (signed byte~) calculate_matrix::$16 ← (signed byte~) calculate_matrix::$15 + *((signed byte*) COSQ#1 + (signed byte) calculate_matrix::t8#0) + (signed byte~) calculate_matrix::$17 ← (signed byte~) calculate_matrix::$16 - *((signed byte*) COSQ#1 + (signed byte) calculate_matrix::t7#0) + *((signed byte[9]) rotation_matrix#0 + (byte/signed byte/word/signed word/dword/signed dword) 3) ← (signed byte~) calculate_matrix::$17 + (signed byte~) calculate_matrix::$18 ← *((signed byte*) COSH#1 + (signed byte) calculate_matrix::t3#0) + *((signed byte*) COSH#1 + (signed byte) calculate_matrix::t4#0) + (signed byte~) calculate_matrix::$19 ← (signed byte~) calculate_matrix::$18 + *((signed byte*) SINQ#1 + (signed byte) calculate_matrix::t5#0) + (signed byte~) calculate_matrix::$20 ← (signed byte~) calculate_matrix::$19 - *((signed byte*) SINQ#1 + (signed byte) calculate_matrix::t6#0) + (signed byte~) calculate_matrix::$21 ← (signed byte~) calculate_matrix::$20 - *((signed byte*) SINQ#1 + (signed byte) calculate_matrix::t7#0) + (signed byte~) calculate_matrix::$22 ← (signed byte~) calculate_matrix::$21 - *((signed byte*) SINQ#1 + (signed byte) calculate_matrix::t8#0) + *((signed byte[9]) rotation_matrix#0 + (byte/signed byte/word/signed word/dword/signed dword) 4) ← (signed byte~) calculate_matrix::$22 + (signed byte~) calculate_matrix::$23 ← *((signed byte*) SINH#1 + (signed byte) calculate_matrix::t9#0) - *((signed byte*) SINH#1 + (signed byte) calculate_matrix::t10#0) + *((signed byte[9]) rotation_matrix#0 + (byte/signed byte/word/signed word/dword/signed dword) 5) ← (signed byte~) calculate_matrix::$23 + (signed byte~) calculate_matrix::$24 ← *((signed byte*) COSH#1 + (signed byte) calculate_matrix::t4#0) - *((signed byte*) COSH#1 + (signed byte) calculate_matrix::t3#0) + (signed byte~) calculate_matrix::$25 ← (signed byte~) calculate_matrix::$24 + *((signed byte*) SINQ#1 + (signed byte) calculate_matrix::t6#0) + (signed byte~) calculate_matrix::$26 ← (signed byte~) calculate_matrix::$25 - *((signed byte*) SINQ#1 + (signed byte) calculate_matrix::t5#0) + (signed byte~) calculate_matrix::$27 ← (signed byte~) calculate_matrix::$26 - *((signed byte*) SINQ#1 + (signed byte) calculate_matrix::t8#0) + (signed byte~) calculate_matrix::$28 ← (signed byte~) calculate_matrix::$27 - *((signed byte*) SINQ#1 + (signed byte) calculate_matrix::t7#0) + *((signed byte[9]) rotation_matrix#0 + (byte/signed byte/word/signed word/dword/signed dword) 6) ← (signed byte~) calculate_matrix::$28 + (signed byte~) calculate_matrix::$29 ← *((signed byte*) SINH#1 + (signed byte) calculate_matrix::t3#0) + *((signed byte*) SINH#1 + (signed byte) calculate_matrix::t4#0) + (signed byte~) calculate_matrix::$30 ← (signed byte~) calculate_matrix::$29 + *((signed byte*) COSQ#1 + (signed byte) calculate_matrix::t6#0) + (signed byte~) calculate_matrix::$31 ← (signed byte~) calculate_matrix::$30 - *((signed byte*) COSQ#1 + (signed byte) calculate_matrix::t5#0) + (signed byte~) calculate_matrix::$32 ← (signed byte~) calculate_matrix::$31 + *((signed byte*) COSQ#1 + (signed byte) calculate_matrix::t7#0) + (signed byte~) calculate_matrix::$33 ← (signed byte~) calculate_matrix::$32 - *((signed byte*) COSQ#1 + (signed byte) calculate_matrix::t8#0) + *((signed byte[9]) rotation_matrix#0 + (byte/signed byte/word/signed word/dword/signed dword) 7) ← (signed byte~) calculate_matrix::$33 + (signed byte~) calculate_matrix::$34 ← *((signed byte*) COSH#1 + (signed byte) calculate_matrix::t9#0) + *((signed byte*) COSH#1 + (signed byte) calculate_matrix::t10#0) + *((signed byte[9]) rotation_matrix#0 + (byte/signed byte/word/signed word/dword/signed dword) 8) ← (signed byte~) calculate_matrix::$34 + to:calculate_matrix::@return +calculate_matrix::@return: scope:[calculate_matrix] from calculate_matrix return to:@return store_matrix: scope:[store_matrix] from anim::@15 @@ -1229,20 +531,18 @@ rotate_matrix: scope:[rotate_matrix] from anim::@7 rotate_matrix::@return: scope:[rotate_matrix] from rotate_matrix return to:@return -@29: scope:[] from @25 - (signed byte*) yp#16 ← phi( @25/(signed byte*) yp#17 ) - (signed byte*) xp#16 ← phi( @25/(signed byte*) xp#17 ) - (signed byte*) pp#16 ← phi( @25/(signed byte*) pp#17 ) - (signed byte*) zr#17 ← phi( @25/(signed byte*) zr#18 ) - (signed byte*) yr#17 ← phi( @25/(signed byte*) yr#18 ) - (signed byte*) xr#17 ← phi( @25/(signed byte*) xr#18 ) - (byte*) SCREEN#33 ← phi( @25/(byte*) SCREEN#36 ) - (byte*) print_screen#6 ← phi( @25/(byte*) print_screen#7 ) +@30: scope:[] from @25 + (signed byte*) yp#14 ← phi( @25/(signed byte*) yp#15 ) + (signed byte*) xp#14 ← phi( @25/(signed byte*) xp#15 ) + (signed byte*) pp#14 ← phi( @25/(signed byte*) pp#15 ) + (signed byte*) zr#15 ← phi( @25/(signed byte*) zr#16 ) + (signed byte*) yr#15 ← phi( @25/(signed byte*) yr#16 ) + (signed byte*) xr#15 ← phi( @25/(signed byte*) xr#16 ) + (signed byte) sz#12 ← phi( @25/(signed byte) sz#15 ) (word*) psp2#3 ← phi( @25/(word*) psp2#4 ) (word*) psp1#3 ← phi( @25/(word*) psp1#4 ) - (signed byte) sz#18 ← phi( @25/(signed byte) sz#25 ) - (signed byte) sy#18 ← phi( @25/(signed byte) sy#24 ) - (signed byte) sx#17 ← phi( @25/(signed byte) sx#23 ) + (signed byte) sy#16 ← phi( @25/(signed byte) sy#22 ) + (signed byte) sx#16 ← phi( @25/(signed byte) sx#22 ) (byte*) mulf_sqr1#0 ← ((byte*)) (word/signed word/dword/signed dword) 9216 (byte*) mulf_sqr2#0 ← ((byte*)) (word/signed word/dword/signed dword) 9728 kickasm(location (byte*) mulf_sqr1#0) {{ .for(var i=0;i<$200;i++) { @@ -1278,7 +578,11 @@ rotate_matrix::@return: scope:[rotate_matrix] from rotate_matrix } }} (signed byte*) SINH#0 ← ((signed byte*)) (word/signed word/dword/signed dword) 8192 + (signed byte*~) $6 ← (signed byte*) SINH#0 + (byte/signed byte/word/signed word/dword/signed dword) 64 + (signed byte*) COSH#0 ← (signed byte*~) $6 (signed byte*) SINQ#0 ← ((signed byte*)) (word/signed word/dword/signed dword) 8704 + (signed byte*~) $7 ← (signed byte*) SINQ#0 + (byte/signed byte/word/signed word/dword/signed dword) 64 + (signed byte*) COSQ#0 ← (signed byte*~) $7 kickasm(location (signed byte*) SINH#0) {{ { .var min = -$2000 .var max = $2000 @@ -1300,15 +604,9 @@ rotate_matrix::@return: scope:[rotate_matrix] from rotate_matrix } }} (byte*) SINH_LO#0 ← ((byte*)) (word/signed word/dword/signed dword) 16384 - (byte*~) $6 ← (byte*) SINH_LO#0 + (byte/signed byte/word/signed word/dword/signed dword) 64 - (byte*) COSH_LO#0 ← (byte*~) $6 (byte*) SINH_HI#0 ← ((byte*)) (word/signed word/dword/signed dword) 16896 - (byte*~) $7 ← (byte*) SINH_HI#0 + (byte/signed byte/word/signed word/dword/signed dword) 64 - (byte*) COSH_HI#0 ← (byte*~) $7 (byte*) SINQ_LO#0 ← ((byte*)) (word/signed word/dword/signed dword) 17408 (byte*) SINQ_HI#0 ← ((byte*)) (word/signed word/dword/signed dword) 17920 - (byte*~) $9 ← (byte*) SINQ_HI#0 + (byte/signed byte/word/signed word/dword/signed dword) 64 - (byte*) COSQ_HI#0 ← (byte*~) $9 kickasm(location (byte*) SINH_LO#0) {{ { .var min = -$2000 .var max = $2000 @@ -1350,91 +648,67 @@ rotate_matrix::@return: scope:[rotate_matrix] from rotate_matrix } }} call main - to:@30 -@30: scope:[] from @29 - (signed byte) sz#12 ← phi( @29/(signed byte) sz#1 ) - (signed byte) sy#12 ← phi( @29/(signed byte) sy#1 ) - (signed byte) sx#12 ← phi( @29/(signed byte) sx#1 ) - (signed byte) sx#5 ← (signed byte) sx#12 - (signed byte) sy#5 ← (signed byte) sy#12 - (signed byte) sz#5 ← (signed byte) sz#12 + to:@31 +@31: scope:[] from @30 + (signed byte) sy#11 ← phi( @30/(signed byte) sy#1 ) + (signed byte) sx#11 ← phi( @30/(signed byte) sx#1 ) + (signed byte) sx#5 ← (signed byte) sx#11 + (signed byte) sy#5 ← (signed byte) sy#11 to:@end -@end: scope:[] from @30 +@end: scope:[] from @31 SYMBOL TABLE SSA (signed byte/signed word/signed dword~) $0 (signed byte/signed word/signed dword~) $1 -(const string) $10 = (string) "0123456789abcdef" (signed byte/signed word/signed dword~) $2 -(byte/signed byte/word/signed word/dword/signed dword~) $3 -(byte*~) $6 -(byte*~) $7 -(byte*~) $9 -(label) @14 +(signed byte/signed word/signed dword~) $3 +(signed byte/signed word/signed dword~) $4 +(signed byte/signed word/signed dword~) $5 +(signed byte*~) $6 +(signed byte*~) $7 (label) @20 (label) @21 (label) @25 -(label) @29 -(label) @3 (label) @30 +(label) @31 (label) @begin (label) @end (byte*) BORDERCOL (byte*) BORDERCOL#0 -(byte*) COSH_HI -(byte*) COSH_HI#0 -(byte*) COSH_HI#1 -(byte*) COSH_HI#10 -(byte*) COSH_HI#11 -(byte*) COSH_HI#12 -(byte*) COSH_HI#13 -(byte*) COSH_HI#14 -(byte*) COSH_HI#15 -(byte*) COSH_HI#16 -(byte*) COSH_HI#2 -(byte*) COSH_HI#3 -(byte*) COSH_HI#4 -(byte*) COSH_HI#5 -(byte*) COSH_HI#6 -(byte*) COSH_HI#7 -(byte*) COSH_HI#8 -(byte*) COSH_HI#9 -(byte*) COSH_LO -(byte*) COSH_LO#0 -(byte*) COSH_LO#1 -(byte*) COSH_LO#10 -(byte*) COSH_LO#11 -(byte*) COSH_LO#12 -(byte*) COSH_LO#13 -(byte*) COSH_LO#14 -(byte*) COSH_LO#15 -(byte*) COSH_LO#16 -(byte*) COSH_LO#2 -(byte*) COSH_LO#3 -(byte*) COSH_LO#4 -(byte*) COSH_LO#5 -(byte*) COSH_LO#6 -(byte*) COSH_LO#7 -(byte*) COSH_LO#8 -(byte*) COSH_LO#9 -(byte*) COSQ_HI -(byte*) COSQ_HI#0 -(byte*) COSQ_HI#1 -(byte*) COSQ_HI#10 -(byte*) COSQ_HI#11 -(byte*) COSQ_HI#12 -(byte*) COSQ_HI#13 -(byte*) COSQ_HI#14 -(byte*) COSQ_HI#15 -(byte*) COSQ_HI#16 -(byte*) COSQ_HI#2 -(byte*) COSQ_HI#3 -(byte*) COSQ_HI#4 -(byte*) COSQ_HI#5 -(byte*) COSQ_HI#6 -(byte*) COSQ_HI#7 -(byte*) COSQ_HI#8 -(byte*) COSQ_HI#9 +(signed byte*) COSH +(signed byte*) COSH#0 +(signed byte*) COSH#1 +(signed byte*) COSH#10 +(signed byte*) COSH#11 +(signed byte*) COSH#12 +(signed byte*) COSH#13 +(signed byte*) COSH#14 +(signed byte*) COSH#2 +(signed byte*) COSH#3 +(signed byte*) COSH#4 +(signed byte*) COSH#5 +(signed byte*) COSH#6 +(signed byte*) COSH#7 +(signed byte*) COSH#8 +(signed byte*) COSH#9 +(signed byte*) COSQ +(signed byte*) COSQ#0 +(signed byte*) COSQ#1 +(signed byte*) COSQ#10 +(signed byte*) COSQ#11 +(signed byte*) COSQ#12 +(signed byte*) COSQ#13 +(signed byte*) COSQ#14 +(signed byte*) COSQ#2 +(signed byte*) COSQ#3 +(signed byte*) COSQ#4 +(signed byte*) COSQ#5 +(signed byte*) COSQ#6 +(signed byte*) COSQ#7 +(signed byte*) COSQ#8 +(signed byte*) COSQ#9 +(byte) GREEN +(byte) GREEN#0 (byte) LIGHT_BLUE (byte) LIGHT_BLUE#0 (byte) LIGHT_GREY @@ -1443,111 +717,44 @@ SYMBOL TABLE SSA (signed byte*) PERSP_Z#0 (byte*) RASTER (byte*) RASTER#0 -(byte*) SCREEN -(byte*) SCREEN#0 -(byte*) SCREEN#1 -(byte*) SCREEN#10 -(byte*) SCREEN#11 -(byte*) SCREEN#12 -(byte*) SCREEN#13 -(byte*) SCREEN#14 -(byte*) SCREEN#15 -(byte*) SCREEN#16 -(byte*) SCREEN#17 -(byte*) SCREEN#18 -(byte*) SCREEN#19 -(byte*) SCREEN#2 -(byte*) SCREEN#20 -(byte*) SCREEN#21 -(byte*) SCREEN#22 -(byte*) SCREEN#23 -(byte*) SCREEN#24 -(byte*) SCREEN#25 -(byte*) SCREEN#26 -(byte*) SCREEN#27 -(byte*) SCREEN#28 -(byte*) SCREEN#29 -(byte*) SCREEN#3 -(byte*) SCREEN#30 -(byte*) SCREEN#31 -(byte*) SCREEN#32 -(byte*) SCREEN#33 -(byte*) SCREEN#34 -(byte*) SCREEN#35 -(byte*) SCREEN#36 -(byte*) SCREEN#37 -(byte*) SCREEN#38 -(byte*) SCREEN#39 -(byte*) SCREEN#4 -(byte*) SCREEN#40 -(byte*) SCREEN#41 -(byte*) SCREEN#42 -(byte*) SCREEN#43 -(byte*) SCREEN#44 -(byte*) SCREEN#45 -(byte*) SCREEN#5 -(byte*) SCREEN#6 -(byte*) SCREEN#7 -(byte*) SCREEN#8 -(byte*) SCREEN#9 (signed byte*) SINH (signed byte*) SINH#0 +(signed byte*) SINH#1 +(signed byte*) SINH#10 +(signed byte*) SINH#11 +(signed byte*) SINH#12 +(signed byte*) SINH#13 +(signed byte*) SINH#14 +(signed byte*) SINH#2 +(signed byte*) SINH#3 +(signed byte*) SINH#4 +(signed byte*) SINH#5 +(signed byte*) SINH#6 +(signed byte*) SINH#7 +(signed byte*) SINH#8 +(signed byte*) SINH#9 (byte*) SINH_HI (byte*) SINH_HI#0 -(byte*) SINH_HI#1 -(byte*) SINH_HI#10 -(byte*) SINH_HI#11 -(byte*) SINH_HI#12 -(byte*) SINH_HI#13 -(byte*) SINH_HI#14 -(byte*) SINH_HI#15 -(byte*) SINH_HI#16 -(byte*) SINH_HI#2 -(byte*) SINH_HI#3 -(byte*) SINH_HI#4 -(byte*) SINH_HI#5 -(byte*) SINH_HI#6 -(byte*) SINH_HI#7 -(byte*) SINH_HI#8 -(byte*) SINH_HI#9 (byte*) SINH_LO (byte*) SINH_LO#0 -(byte*) SINH_LO#1 -(byte*) SINH_LO#10 -(byte*) SINH_LO#11 -(byte*) SINH_LO#12 -(byte*) SINH_LO#13 -(byte*) SINH_LO#14 -(byte*) SINH_LO#15 -(byte*) SINH_LO#16 -(byte*) SINH_LO#2 -(byte*) SINH_LO#3 -(byte*) SINH_LO#4 -(byte*) SINH_LO#5 -(byte*) SINH_LO#6 -(byte*) SINH_LO#7 -(byte*) SINH_LO#8 -(byte*) SINH_LO#9 (signed byte*) SINQ (signed byte*) SINQ#0 +(signed byte*) SINQ#1 +(signed byte*) SINQ#10 +(signed byte*) SINQ#11 +(signed byte*) SINQ#12 +(signed byte*) SINQ#13 +(signed byte*) SINQ#14 +(signed byte*) SINQ#2 +(signed byte*) SINQ#3 +(signed byte*) SINQ#4 +(signed byte*) SINQ#5 +(signed byte*) SINQ#6 +(signed byte*) SINQ#7 +(signed byte*) SINQ#8 +(signed byte*) SINQ#9 (byte*) SINQ_HI (byte*) SINQ_HI#0 -(byte*) SINQ_HI#1 -(byte*) SINQ_HI#10 -(byte*) SINQ_HI#11 -(byte*) SINQ_HI#12 -(byte*) SINQ_HI#13 -(byte*) SINQ_HI#14 -(byte*) SINQ_HI#15 -(byte*) SINQ_HI#16 -(byte*) SINQ_HI#2 -(byte*) SINQ_HI#3 -(byte*) SINQ_HI#4 -(byte*) SINQ_HI#5 -(byte*) SINQ_HI#6 -(byte*) SINQ_HI#7 -(byte*) SINQ_HI#8 -(byte*) SINQ_HI#9 (byte*) SINQ_LO (byte*) SINQ_LO#0 (byte*) SPRITE @@ -1576,7 +783,6 @@ SYMBOL TABLE SSA (label) anim::@15 (label) anim::@16 (label) anim::@17 -(label) anim::@18 (label) anim::@2 (label) anim::@4 (label) anim::@5 @@ -1590,420 +796,77 @@ SYMBOL TABLE SSA (byte) anim::i#3 (byte) anim::i2 (byte) anim::i2#0 -(void()) calculate_matrix_16((signed byte) calculate_matrix_16::sx , (signed byte) calculate_matrix_16::sy , (signed byte) calculate_matrix_16::sz) -(signed byte~) calculate_matrix_16::$0 -(signed byte~) calculate_matrix_16::$1 -(byte~) calculate_matrix_16::$10 -(signed byte~) calculate_matrix_16::$11 -(signed word~) calculate_matrix_16::$12 -(signed word~) calculate_matrix_16::$13 -(byte~) calculate_matrix_16::$14 -(signed byte~) calculate_matrix_16::$15 -(signed byte~) calculate_matrix_16::$16 -(signed byte~) calculate_matrix_16::$17 -(signed byte~) calculate_matrix_16::$18 -(signed byte~) calculate_matrix_16::$19 -(signed word~) calculate_matrix_16::$2 -(signed byte~) calculate_matrix_16::$20 -(signed byte~) calculate_matrix_16::$21 -(signed word~) calculate_matrix_16::$22 -(signed word~) calculate_matrix_16::$23 -(signed word~) calculate_matrix_16::$24 -(signed word~) calculate_matrix_16::$25 -(signed word~) calculate_matrix_16::$26 -(signed word~) calculate_matrix_16::$27 -(signed word~) calculate_matrix_16::$28 -(signed word~) calculate_matrix_16::$29 -(signed word~) calculate_matrix_16::$3 -(signed word~) calculate_matrix_16::$30 -(signed word~) calculate_matrix_16::$31 -(signed word~) calculate_matrix_16::$32 -(byte~) calculate_matrix_16::$33 -(signed byte~) calculate_matrix_16::$34 -(signed word~) calculate_matrix_16::$35 -(signed word~) calculate_matrix_16::$36 -(signed word~) calculate_matrix_16::$37 -(signed word~) calculate_matrix_16::$38 -(signed word~) calculate_matrix_16::$39 -(signed word~) calculate_matrix_16::$4 -(byte~) calculate_matrix_16::$40 -(signed byte~) calculate_matrix_16::$41 -(signed word~) calculate_matrix_16::$42 -(signed word~) calculate_matrix_16::$43 -(signed word~) calculate_matrix_16::$44 -(signed word~) calculate_matrix_16::$45 -(signed word~) calculate_matrix_16::$46 -(signed word~) calculate_matrix_16::$47 -(signed word~) calculate_matrix_16::$48 -(signed word~) calculate_matrix_16::$49 -(byte~) calculate_matrix_16::$5 -(signed word~) calculate_matrix_16::$50 -(signed word~) calculate_matrix_16::$51 -(signed word~) calculate_matrix_16::$52 -(byte~) calculate_matrix_16::$53 -(signed byte~) calculate_matrix_16::$54 -(signed word~) calculate_matrix_16::$55 -(signed word~) calculate_matrix_16::$56 -(signed word~) calculate_matrix_16::$57 -(signed word~) calculate_matrix_16::$58 -(signed word~) calculate_matrix_16::$59 -(signed byte~) calculate_matrix_16::$6 -(byte~) calculate_matrix_16::$60 -(signed byte~) calculate_matrix_16::$61 -(signed byte~) calculate_matrix_16::$62 -(signed byte~) calculate_matrix_16::$63 -(signed word~) calculate_matrix_16::$64 -(signed word~) calculate_matrix_16::$65 -(signed word~) calculate_matrix_16::$66 -(byte~) calculate_matrix_16::$67 -(signed byte~) calculate_matrix_16::$68 -(signed word~) calculate_matrix_16::$69 -(signed word~) calculate_matrix_16::$7 -(signed word~) calculate_matrix_16::$70 -(signed word~) calculate_matrix_16::$71 -(byte~) calculate_matrix_16::$72 -(signed byte~) calculate_matrix_16::$73 -(signed word~) calculate_matrix_16::$8 -(signed word~) calculate_matrix_16::$9 -(label) calculate_matrix_16::@return -(signed word) calculate_matrix_16::cosh_t1 -(signed word) calculate_matrix_16::cosh_t1#0 -(signed word) calculate_matrix_16::cosh_t10 -(signed word) calculate_matrix_16::cosh_t10#0 -(signed word) calculate_matrix_16::cosh_t2 -(signed word) calculate_matrix_16::cosh_t2#0 -(signed word) calculate_matrix_16::cosh_t3 -(signed word) calculate_matrix_16::cosh_t3#0 -(signed word) calculate_matrix_16::cosh_t4 -(signed word) calculate_matrix_16::cosh_t4#0 -(signed word) calculate_matrix_16::cosh_t9 -(signed word) calculate_matrix_16::cosh_t9#0 -(signed word) calculate_matrix_16::cosq_t5 -(signed word) calculate_matrix_16::cosq_t5#0 -(signed word) calculate_matrix_16::cosq_t6 -(signed word) calculate_matrix_16::cosq_t6#0 -(signed word) calculate_matrix_16::cosq_t7 -(signed word) calculate_matrix_16::cosq_t7#0 -(signed word) calculate_matrix_16::cosq_t8 -(signed word) calculate_matrix_16::cosq_t8#0 -(signed word) calculate_matrix_16::sinh_sy -(signed word) calculate_matrix_16::sinh_sy#0 -(signed word) calculate_matrix_16::sinh_t1 -(signed word) calculate_matrix_16::sinh_t1#0 -(signed word) calculate_matrix_16::sinh_t10 -(signed word) calculate_matrix_16::sinh_t10#0 -(signed word) calculate_matrix_16::sinh_t2 -(signed word) calculate_matrix_16::sinh_t2#0 -(signed word) calculate_matrix_16::sinh_t3 -(signed word) calculate_matrix_16::sinh_t3#0 -(signed word) calculate_matrix_16::sinh_t4 -(signed word) calculate_matrix_16::sinh_t4#0 -(signed word) calculate_matrix_16::sinh_t9 -(signed word) calculate_matrix_16::sinh_t9#0 -(signed word) calculate_matrix_16::sinq_t5 -(signed word) calculate_matrix_16::sinq_t5#0 -(signed word) calculate_matrix_16::sinq_t6 -(signed word) calculate_matrix_16::sinq_t6#0 -(signed word) calculate_matrix_16::sinq_t7 -(signed word) calculate_matrix_16::sinq_t7#0 -(signed word) calculate_matrix_16::sinq_t8 -(signed word) calculate_matrix_16::sinq_t8#0 -(signed byte) calculate_matrix_16::sx -(signed byte) calculate_matrix_16::sx#0 -(signed byte) calculate_matrix_16::sx#1 -(signed byte) calculate_matrix_16::sy -(signed byte) calculate_matrix_16::sy#0 -(signed byte) calculate_matrix_16::sy#1 -(signed byte) calculate_matrix_16::sz -(signed byte) calculate_matrix_16::sz#0 -(signed byte) calculate_matrix_16::sz#1 -(signed byte) calculate_matrix_16::t1 -(signed byte) calculate_matrix_16::t1#0 -(signed byte) calculate_matrix_16::t10 -(signed byte) calculate_matrix_16::t10#0 -(signed byte) calculate_matrix_16::t2 -(signed byte) calculate_matrix_16::t2#0 -(signed byte) calculate_matrix_16::t3 -(signed byte) calculate_matrix_16::t3#0 -(signed byte) calculate_matrix_16::t4 -(signed byte) calculate_matrix_16::t4#0 -(signed byte) calculate_matrix_16::t5 -(signed byte) calculate_matrix_16::t5#0 -(signed byte) calculate_matrix_16::t6 -(signed byte) calculate_matrix_16::t6#0 -(signed byte) calculate_matrix_16::t7 -(signed byte) calculate_matrix_16::t7#0 -(signed byte) calculate_matrix_16::t8 -(signed byte) calculate_matrix_16::t8#0 -(signed byte) calculate_matrix_16::t9 -(signed byte) calculate_matrix_16::t9#0 -(void()) debug_print() -(byte/signed byte/word/signed word/dword/signed dword~) debug_print::$0 -(byte*~) debug_print::$1 -(byte*~) debug_print::$10 -(byte/word/signed word/dword/signed dword~) debug_print::$12 -(byte*~) debug_print::$13 -(byte*~) debug_print::$14 -(byte/word/signed word/dword/signed dword~) debug_print::$16 -(byte*~) debug_print::$17 -(byte*~) debug_print::$18 -(byte*~) debug_print::$2 -(byte/word/signed word/dword/signed dword~) debug_print::$20 -(byte*~) debug_print::$21 -(byte*~) debug_print::$22 -(byte/word/signed word/dword/signed dword~) debug_print::$24 -(byte*~) debug_print::$25 -(byte*~) debug_print::$26 -(byte/word/signed word/dword/signed dword~) debug_print::$28 -(byte*~) debug_print::$29 -(byte*~) debug_print::$30 -(byte/word/signed word/dword/signed dword~) debug_print::$32 -(byte*~) debug_print::$33 -(byte*~) debug_print::$34 -(byte/word/signed word/dword/signed dword~) debug_print::$36 -(byte*~) debug_print::$37 -(byte*~) debug_print::$38 -(byte/signed byte/word/signed word/dword/signed dword~) debug_print::$4 -(byte/word/signed word/dword/signed dword~) debug_print::$40 -(byte*~) debug_print::$41 -(byte*~) debug_print::$42 -(byte/word/signed word/dword/signed dword~) debug_print::$44 -(byte*~) debug_print::$45 -(byte*~) debug_print::$46 -(word/signed word/dword/signed dword~) debug_print::$48 -(byte*~) debug_print::$49 -(byte*~) debug_print::$5 -(byte/signed byte/word/signed word/dword/signed dword~) debug_print::$50 -(byte*~) debug_print::$51 -(byte*~) debug_print::$52 -(byte/signed byte/word/signed word/dword/signed dword~) debug_print::$54 -(byte*~) debug_print::$55 -(byte*~) debug_print::$56 -(byte/signed byte/word/signed word/dword/signed dword~) debug_print::$58 -(byte*~) debug_print::$59 -(byte*~) debug_print::$6 -(byte*~) debug_print::$60 -(byte/signed byte/word/signed word/dword/signed dword~) debug_print::$62 -(byte*~) debug_print::$63 -(byte*~) debug_print::$64 -(byte/word/signed word/dword/signed dword~) debug_print::$66 -(byte*~) debug_print::$67 -(byte*~) debug_print::$68 -(byte/word/signed word/dword/signed dword~) debug_print::$70 -(byte*~) debug_print::$71 -(byte*~) debug_print::$72 -(bool~) debug_print::$74 -(byte/signed byte/word/signed word/dword/signed dword~) debug_print::$8 -(byte*~) debug_print::$9 -(label) debug_print::@1 -(label) debug_print::@10 -(label) debug_print::@11 -(label) debug_print::@12 -(label) debug_print::@13 -(label) debug_print::@14 -(label) debug_print::@15 -(label) debug_print::@16 -(label) debug_print::@17 -(label) debug_print::@18 -(label) debug_print::@19 -(label) debug_print::@20 -(label) debug_print::@3 -(label) debug_print::@4 -(label) debug_print::@5 -(label) debug_print::@6 -(label) debug_print::@7 -(label) debug_print::@8 -(label) debug_print::@9 -(label) debug_print::@return -(byte*) debug_print::at_line -(byte*) debug_print::at_line#0 -(byte*) debug_print::at_line#1 -(byte*) debug_print::at_line#2 -(byte*) debug_print::at_line#3 -(byte*) debug_print::at_line#4 -(byte*) debug_print::at_line#5 -(byte*) debug_print::at_line#6 -(byte*) debug_print::at_line#7 -(byte) debug_print::c -(byte) debug_print::c#0 -(byte) debug_print::c#1 -(byte) debug_print::c#2 -(byte) debug_print::c#3 -(byte) debug_print::c#4 -(byte) debug_print::c#5 -(byte) debug_print::c#6 -(byte) debug_print::c#7 -(byte) debug_print::c#8 -(byte) debug_print::i -(byte) debug_print::i#0 -(byte) debug_print::i#1 -(byte) debug_print::i#2 -(byte) debug_print::i#3 -(byte) debug_print::i#4 -(byte) debug_print::i#5 -(byte) debug_print::i#6 -(byte) debug_print::i#7 -(byte) debug_print::i#8 -(void()) debug_print_init() -(byte/signed byte/word/signed word/dword/signed dword~) debug_print_init::$1 -(byte*~) debug_print_init::$10 -(byte*~) debug_print_init::$11 -(word/signed word/dword/signed dword~) debug_print_init::$13 -(byte*~) debug_print_init::$14 -(word/signed word/dword/signed dword~) debug_print_init::$16 -(byte*~) debug_print_init::$17 -(word/signed word/dword/signed dword~) debug_print_init::$19 -(byte*~) debug_print_init::$2 -(byte*~) debug_print_init::$20 -(word/signed word/dword/signed dword~) debug_print_init::$22 -(byte*~) debug_print_init::$23 -(word/signed word/dword/signed dword~) debug_print_init::$25 -(byte*~) debug_print_init::$26 -(word/signed word/dword/signed dword~) debug_print_init::$28 -(byte*~) debug_print_init::$29 -(byte*~) debug_print_init::$3 -(word/signed word/dword/signed dword~) debug_print_init::$31 -(byte*~) debug_print_init::$32 -(word/signed word/dword/signed dword~) debug_print_init::$34 -(byte*~) debug_print_init::$35 -(word/signed word/dword/signed dword~) debug_print_init::$37 -(byte*~) debug_print_init::$38 -(word/signed word/dword/signed dword~) debug_print_init::$40 -(byte*~) debug_print_init::$41 -(word/signed word/dword/signed dword~) debug_print_init::$42 -(byte*~) debug_print_init::$43 -(byte/signed byte/word/signed word/dword/signed dword~) debug_print_init::$44 -(byte*~) debug_print_init::$45 -(byte*~) debug_print_init::$46 -(byte/signed byte/word/signed word/dword/signed dword~) debug_print_init::$48 -(byte*~) debug_print_init::$49 -(byte/signed byte/word/signed word/dword/signed dword~) debug_print_init::$5 -(byte*~) debug_print_init::$50 -(byte/signed byte/word/signed word/dword/signed dword~) debug_print_init::$52 -(byte*~) debug_print_init::$53 -(byte*~) debug_print_init::$54 -(byte/signed word/word/dword/signed dword~) debug_print_init::$56 -(byte/signed byte/word/signed word/dword/signed dword~) debug_print_init::$57 -(byte*~) debug_print_init::$58 -(byte*~) debug_print_init::$59 -(byte*~) debug_print_init::$6 -(byte*~) debug_print_init::$60 -(byte/signed byte/word/signed word/dword/signed dword~) debug_print_init::$61 -(byte*~) debug_print_init::$62 -(byte*~) debug_print_init::$63 -(byte*~) debug_print_init::$64 -(byte/signed byte/word/signed word/dword/signed dword~) debug_print_init::$65 -(byte*~) debug_print_init::$66 -(byte*~) debug_print_init::$67 -(byte*~) debug_print_init::$68 -(byte/signed byte/word/signed word/dword/signed dword~) debug_print_init::$69 -(byte*~) debug_print_init::$7 -(byte*~) debug_print_init::$70 -(byte*~) debug_print_init::$71 -(byte*~) debug_print_init::$72 -(byte/word/signed word/dword/signed dword~) debug_print_init::$73 -(byte*~) debug_print_init::$74 -(byte*~) debug_print_init::$75 -(byte*~) debug_print_init::$76 -(byte/word/signed word/dword/signed dword~) debug_print_init::$77 -(byte*~) debug_print_init::$78 -(byte*~) debug_print_init::$79 -(byte*~) debug_print_init::$80 -(byte/word/signed word/dword/signed dword~) debug_print_init::$81 -(byte*~) debug_print_init::$82 -(byte*~) debug_print_init::$83 -(byte*~) debug_print_init::$84 -(word/signed word/dword/signed dword~) debug_print_init::$85 -(byte*~) debug_print_init::$86 -(byte*~) debug_print_init::$87 -(byte*~) debug_print_init::$88 -(word/signed word/dword/signed dword~) debug_print_init::$89 -(byte/signed byte/word/signed word/dword/signed dword~) debug_print_init::$9 -(byte*~) debug_print_init::$90 -(byte*~) debug_print_init::$91 -(byte*~) debug_print_init::$92 -(bool~) debug_print_init::$93 -(bool~) debug_print_init::$94 -(label) debug_print_init::@1 -(label) debug_print_init::@10 -(label) debug_print_init::@11 -(label) debug_print_init::@12 -(label) debug_print_init::@13 -(label) debug_print_init::@14 -(label) debug_print_init::@15 -(label) debug_print_init::@16 -(label) debug_print_init::@17 -(label) debug_print_init::@18 -(label) debug_print_init::@19 -(label) debug_print_init::@2 -(label) debug_print_init::@20 -(label) debug_print_init::@3 -(label) debug_print_init::@5 -(label) debug_print_init::@6 -(label) debug_print_init::@7 -(label) debug_print_init::@8 -(label) debug_print_init::@9 -(label) debug_print_init::@return -(byte*) debug_print_init::COLS -(byte*) debug_print_init::COLS#0 -(byte*) debug_print_init::at_cols -(byte*) debug_print_init::at_cols#0 -(byte*) debug_print_init::at_cols#1 -(byte*) debug_print_init::at_cols#2 -(byte*) debug_print_init::at_cols#3 -(byte*) debug_print_init::at_cols#4 -(byte*) debug_print_init::at_cols#5 -(byte*) debug_print_init::at_cols#6 -(byte*) debug_print_init::at_line -(byte*) debug_print_init::at_line#0 -(byte*) debug_print_init::at_line#1 -(byte*) debug_print_init::at_line#2 -(byte*) debug_print_init::at_line#3 -(byte*) debug_print_init::at_line#4 -(byte*) debug_print_init::at_line#5 -(byte*) debug_print_init::at_line#6 -(byte) debug_print_init::c -(byte) debug_print_init::c#0 -(byte) debug_print_init::c#1 -(byte) debug_print_init::c#2 -(byte) debug_print_init::c#3 -(byte) debug_print_init::c#4 -(byte) debug_print_init::c#5 -(byte) debug_print_init::c#6 -(byte) debug_print_init::c#7 -(byte) debug_print_init::col -(byte) debug_print_init::col#0 -(byte) debug_print_init::i -(byte) debug_print_init::i#0 -(byte) debug_print_init::i#1 -(byte) debug_print_init::i#2 -(byte) debug_print_init::i#3 -(byte) debug_print_init::i#4 -(byte) debug_print_init::i#5 -(byte) debug_print_init::i#6 -(byte) debug_print_init::i#7 -(byte) debug_print_init::j -(byte) debug_print_init::j#0 -(byte) debug_print_init::j#1 -(byte) debug_print_init::j#2 -(const string) debug_print_init::str = (string) "sx@" -(const string) debug_print_init::str1 = (string) "sy@" -(const string) debug_print_init::str10 = (string) "xp@" -(const string) debug_print_init::str11 = (string) "yp@" -(const string) debug_print_init::str2 = (string) "sz@" -(const string) debug_print_init::str3 = (string) "x@" -(const string) debug_print_init::str4 = (string) "y@" -(const string) debug_print_init::str5 = (string) "z@" -(const string) debug_print_init::str6 = (string) "xr@" -(const string) debug_print_init::str7 = (string) "yr@" -(const string) debug_print_init::str8 = (string) "zr@" -(const string) debug_print_init::str9 = (string) "pp@" +(void()) calculate_matrix((signed byte) calculate_matrix::sx , (signed byte) calculate_matrix::sy , (signed byte) calculate_matrix::sz) +(signed byte~) calculate_matrix::$0 +(signed byte~) calculate_matrix::$1 +(signed byte~) calculate_matrix::$10 +(signed byte~) calculate_matrix::$11 +(signed byte~) calculate_matrix::$12 +(signed byte~) calculate_matrix::$13 +(signed byte~) calculate_matrix::$14 +(signed byte~) calculate_matrix::$15 +(signed byte~) calculate_matrix::$16 +(signed byte~) calculate_matrix::$17 +(signed byte~) calculate_matrix::$18 +(signed byte~) calculate_matrix::$19 +(signed byte~) calculate_matrix::$2 +(signed byte~) calculate_matrix::$20 +(signed byte~) calculate_matrix::$21 +(signed byte~) calculate_matrix::$22 +(signed byte~) calculate_matrix::$23 +(signed byte~) calculate_matrix::$24 +(signed byte~) calculate_matrix::$25 +(signed byte~) calculate_matrix::$26 +(signed byte~) calculate_matrix::$27 +(signed byte~) calculate_matrix::$28 +(signed byte~) calculate_matrix::$29 +(signed byte~) calculate_matrix::$3 +(signed byte~) calculate_matrix::$30 +(signed byte~) calculate_matrix::$31 +(signed byte~) calculate_matrix::$32 +(signed byte~) calculate_matrix::$33 +(signed byte~) calculate_matrix::$34 +(signed byte~) calculate_matrix::$4 +(signed byte~) calculate_matrix::$5 +(signed byte~) calculate_matrix::$6 +(signed byte~) calculate_matrix::$7 +(signed byte~) calculate_matrix::$8 +(signed byte~) calculate_matrix::$9 +(label) calculate_matrix::@return +(signed byte) calculate_matrix::sx +(signed byte) calculate_matrix::sx#0 +(signed byte) calculate_matrix::sx#1 +(signed byte) calculate_matrix::sy +(signed byte) calculate_matrix::sy#0 +(signed byte) calculate_matrix::sy#1 +(signed byte) calculate_matrix::sz +(signed byte) calculate_matrix::sz#0 +(signed byte) calculate_matrix::sz#1 +(signed byte) calculate_matrix::t1 +(signed byte) calculate_matrix::t1#0 +(signed byte) calculate_matrix::t10 +(signed byte) calculate_matrix::t10#0 +(signed byte) calculate_matrix::t2 +(signed byte) calculate_matrix::t2#0 +(signed byte) calculate_matrix::t3 +(signed byte) calculate_matrix::t3#0 +(signed byte) calculate_matrix::t4 +(signed byte) calculate_matrix::t4#0 +(signed byte) calculate_matrix::t5 +(signed byte) calculate_matrix::t5#0 +(signed byte) calculate_matrix::t6 +(signed byte) calculate_matrix::t6#0 +(signed byte) calculate_matrix::t7 +(signed byte) calculate_matrix::t7#0 +(signed byte) calculate_matrix::t8 +(signed byte) calculate_matrix::t8#0 +(signed byte) calculate_matrix::t9 +(signed byte) calculate_matrix::t9#0 (void()) main() (word~) main::$1 (word~) main::$2 (label) main::@1 (label) main::@2 -(label) main::@3 (label) main::@return (byte*) mulf_sqr1 (byte*) mulf_sqr1#0 @@ -2023,8 +886,6 @@ SYMBOL TABLE SSA (signed byte*) pp#14 (signed byte*) pp#15 (signed byte*) pp#16 -(signed byte*) pp#17 -(signed byte*) pp#18 (signed byte*) pp#2 (signed byte*) pp#3 (signed byte*) pp#4 @@ -2035,166 +896,6 @@ SYMBOL TABLE SSA (signed byte*) pp#9 (signed byte[8]) pps (signed byte[8]) pps#0 -(void()) print_byte_at((byte) print_byte_at::b , (byte*) print_byte_at::at) -(byte~) print_byte_at::$0 -(byte~) print_byte_at::$2 -(byte*~) print_byte_at::$3 -(label) print_byte_at::@1 -(label) print_byte_at::@2 -(label) print_byte_at::@return -(byte*) print_byte_at::at -(byte*) print_byte_at::at#0 -(byte*) print_byte_at::at#1 -(byte*) print_byte_at::at#2 -(byte) print_byte_at::b -(byte) print_byte_at::b#0 -(byte) print_byte_at::b#1 -(byte) print_byte_at::b#2 -(void()) print_char_at((byte) print_char_at::ch , (byte*) print_char_at::at) -(label) print_char_at::@return -(byte*) print_char_at::at -(byte*) print_char_at::at#0 -(byte*) print_char_at::at#1 -(byte*) print_char_at::at#2 -(byte*) print_char_at::at#3 -(byte*) print_char_at::at#4 -(byte) print_char_at::ch -(byte) print_char_at::ch#0 -(byte) print_char_at::ch#1 -(byte) print_char_at::ch#2 -(byte) print_char_at::ch#3 -(byte) print_char_at::ch#4 -(void()) print_cls() -(byte*~) print_cls::$0 -(bool~) print_cls::$1 -(label) print_cls::@1 -(label) print_cls::@return -(byte*) print_cls::sc -(byte*) print_cls::sc#0 -(byte*) print_cls::sc#1 -(byte*) print_cls::sc#2 -(byte[]) print_hextab -(byte[]) print_hextab#0 -(void()) print_sbyte_at((signed byte) print_sbyte_at::b , (byte*) print_sbyte_at::at) -(bool~) print_sbyte_at::$0 -(signed byte~) print_sbyte_at::$3 -(byte~) print_sbyte_at::$4 -(byte*~) print_sbyte_at::$5 -(label) print_sbyte_at::@1 -(label) print_sbyte_at::@2 -(label) print_sbyte_at::@3 -(label) print_sbyte_at::@5 -(label) print_sbyte_at::@6 -(label) print_sbyte_at::@7 -(label) print_sbyte_at::@return -(byte*) print_sbyte_at::at -(byte*) print_sbyte_at::at#0 -(byte*) print_sbyte_at::at#1 -(byte*) print_sbyte_at::at#10 -(byte*) print_sbyte_at::at#11 -(byte*) print_sbyte_at::at#12 -(byte*) print_sbyte_at::at#13 -(byte*) print_sbyte_at::at#14 -(byte*) print_sbyte_at::at#15 -(byte*) print_sbyte_at::at#16 -(byte*) print_sbyte_at::at#17 -(byte*) print_sbyte_at::at#18 -(byte*) print_sbyte_at::at#19 -(byte*) print_sbyte_at::at#2 -(byte*) print_sbyte_at::at#20 -(byte*) print_sbyte_at::at#21 -(byte*) print_sbyte_at::at#22 -(byte*) print_sbyte_at::at#23 -(byte*) print_sbyte_at::at#24 -(byte*) print_sbyte_at::at#25 -(byte*) print_sbyte_at::at#26 -(byte*) print_sbyte_at::at#3 -(byte*) print_sbyte_at::at#4 -(byte*) print_sbyte_at::at#5 -(byte*) print_sbyte_at::at#6 -(byte*) print_sbyte_at::at#7 -(byte*) print_sbyte_at::at#8 -(byte*) print_sbyte_at::at#9 -(signed byte) print_sbyte_at::b -(signed byte) print_sbyte_at::b#0 -(signed byte) print_sbyte_at::b#1 -(signed byte) print_sbyte_at::b#10 -(signed byte) print_sbyte_at::b#11 -(signed byte) print_sbyte_at::b#12 -(signed byte) print_sbyte_at::b#13 -(signed byte) print_sbyte_at::b#14 -(signed byte) print_sbyte_at::b#15 -(signed byte) print_sbyte_at::b#16 -(signed byte) print_sbyte_at::b#17 -(signed byte) print_sbyte_at::b#18 -(signed byte) print_sbyte_at::b#19 -(signed byte) print_sbyte_at::b#2 -(signed byte) print_sbyte_at::b#20 -(signed byte) print_sbyte_at::b#21 -(signed byte) print_sbyte_at::b#22 -(signed byte) print_sbyte_at::b#23 -(signed byte) print_sbyte_at::b#24 -(signed byte) print_sbyte_at::b#25 -(signed byte) print_sbyte_at::b#26 -(signed byte) print_sbyte_at::b#27 -(signed byte) print_sbyte_at::b#3 -(signed byte) print_sbyte_at::b#4 -(signed byte) print_sbyte_at::b#5 -(signed byte) print_sbyte_at::b#6 -(signed byte) print_sbyte_at::b#7 -(signed byte) print_sbyte_at::b#8 -(signed byte) print_sbyte_at::b#9 -(byte*) print_screen -(byte*) print_screen#0 -(byte*) print_screen#1 -(byte*) print_screen#10 -(byte*) print_screen#2 -(byte*) print_screen#3 -(byte*) print_screen#4 -(byte*) print_screen#5 -(byte*) print_screen#6 -(byte*) print_screen#7 -(byte*) print_screen#8 -(byte*) print_screen#9 -(void()) print_str_at((byte*) print_str_at::str , (byte*) print_str_at::at) -(bool~) print_str_at::$0 -(label) print_str_at::@1 -(label) print_str_at::@2 -(label) print_str_at::@return -(byte*) print_str_at::at -(byte*) print_str_at::at#0 -(byte*) print_str_at::at#1 -(byte*) print_str_at::at#10 -(byte*) print_str_at::at#11 -(byte*) print_str_at::at#12 -(byte*) print_str_at::at#13 -(byte*) print_str_at::at#14 -(byte*) print_str_at::at#15 -(byte*) print_str_at::at#2 -(byte*) print_str_at::at#3 -(byte*) print_str_at::at#4 -(byte*) print_str_at::at#5 -(byte*) print_str_at::at#6 -(byte*) print_str_at::at#7 -(byte*) print_str_at::at#8 -(byte*) print_str_at::at#9 -(byte*) print_str_at::str -(byte*) print_str_at::str#0 -(byte*) print_str_at::str#1 -(byte*) print_str_at::str#10 -(byte*) print_str_at::str#11 -(byte*) print_str_at::str#12 -(byte*) print_str_at::str#13 -(byte*) print_str_at::str#14 -(byte*) print_str_at::str#15 -(byte*) print_str_at::str#2 -(byte*) print_str_at::str#3 -(byte*) print_str_at::str#4 -(byte*) print_str_at::str#5 -(byte*) print_str_at::str#6 -(byte*) print_str_at::str#7 -(byte*) print_str_at::str#8 -(byte*) print_str_at::str#9 (word*) psp1 (word*) psp1#0 (word*) psp1#1 @@ -2226,8 +927,7 @@ SYMBOL TABLE SSA (byte*~) sprites_init::$0 (byte*~) sprites_init::$1 (byte~) sprites_init::$2 -(byte/signed word/word/dword/signed dword~) sprites_init::$3 -(bool~) sprites_init::$4 +(bool~) sprites_init::$3 (label) sprites_init::@1 (label) sprites_init::@return (byte*) sprites_init::SCREEN @@ -2260,9 +960,6 @@ SYMBOL TABLE SSA (signed byte) sx#22 (signed byte) sx#23 (signed byte) sx#24 -(signed byte) sx#25 -(signed byte) sx#26 -(signed byte) sx#27 (signed byte) sx#3 (signed byte) sx#4 (signed byte) sx#5 @@ -2289,10 +986,6 @@ SYMBOL TABLE SSA (signed byte) sy#22 (signed byte) sy#23 (signed byte) sy#24 -(signed byte) sy#25 -(signed byte) sy#26 -(signed byte) sy#27 -(signed byte) sy#28 (signed byte) sy#3 (signed byte) sy#4 (signed byte) sy#5 @@ -2309,21 +1002,7 @@ SYMBOL TABLE SSA (signed byte) sz#13 (signed byte) sz#14 (signed byte) sz#15 -(signed byte) sz#16 -(signed byte) sz#17 -(signed byte) sz#18 -(signed byte) sz#19 (signed byte) sz#2 -(signed byte) sz#20 -(signed byte) sz#21 -(signed byte) sz#22 -(signed byte) sz#23 -(signed byte) sz#24 -(signed byte) sz#25 -(signed byte) sz#26 -(signed byte) sz#27 -(signed byte) sz#28 -(signed byte) sz#29 (signed byte) sz#3 (signed byte) sz#4 (signed byte) sz#5 @@ -2341,8 +1020,6 @@ SYMBOL TABLE SSA (signed byte*) xp#14 (signed byte*) xp#15 (signed byte*) xp#16 -(signed byte*) xp#17 -(signed byte*) xp#18 (signed byte*) xp#2 (signed byte*) xp#3 (signed byte*) xp#4 @@ -2364,8 +1041,6 @@ SYMBOL TABLE SSA (signed byte*) xr#15 (signed byte*) xr#16 (signed byte*) xr#17 -(signed byte*) xr#18 -(signed byte*) xr#19 (signed byte*) xr#2 (signed byte*) xr#3 (signed byte*) xr#4 @@ -2388,8 +1063,6 @@ SYMBOL TABLE SSA (signed byte*) yp#14 (signed byte*) yp#15 (signed byte*) yp#16 -(signed byte*) yp#17 -(signed byte*) yp#18 (signed byte*) yp#2 (signed byte*) yp#3 (signed byte*) yp#4 @@ -2411,8 +1084,6 @@ SYMBOL TABLE SSA (signed byte*) yr#15 (signed byte*) yr#16 (signed byte*) yr#17 -(signed byte*) yr#18 -(signed byte*) yr#19 (signed byte*) yr#2 (signed byte*) yr#3 (signed byte*) yr#4 @@ -2436,8 +1107,6 @@ SYMBOL TABLE SSA (signed byte*) zr#15 (signed byte*) zr#16 (signed byte*) zr#17 -(signed byte*) zr#18 -(signed byte*) zr#19 (signed byte*) zr#2 (signed byte*) zr#3 (signed byte*) zr#4 @@ -2451,260 +1120,134 @@ SYMBOL TABLE SSA (signed byte[8]) zs (signed byte[8]) zs#0 -Culled Empty Block (label) print_sbyte_at::@7 -Culled Empty Block (label) print_byte_at::@2 -Successful SSA optimization Pass2CullEmptyBlocks -Alias (byte*) print_str_at::str#13 = (byte*) print_str_at::str#14 -Alias (byte*) print_str_at::at#13 = (byte*) print_str_at::at#14 -Alias (byte*) print_sbyte_at::at#21 = (byte*) print_sbyte_at::at#24 (byte*) print_sbyte_at::at#25 (byte*) print_sbyte_at::at#22 (byte*) print_sbyte_at::at#26 -Alias (signed byte) print_sbyte_at::b#22 = (signed byte) print_sbyte_at::b#25 (signed byte) print_sbyte_at::b#23 (signed byte) print_sbyte_at::b#27 (signed byte) print_sbyte_at::b#26 -Alias (signed byte) print_sbyte_at::b#0 = (signed byte~) print_sbyte_at::$3 -Alias (byte) print_byte_at::b#0 = (byte~) print_sbyte_at::$4 -Alias (byte*) print_byte_at::at#0 = (byte*~) print_sbyte_at::$5 -Alias (byte*) print_screen#0 = (byte*) print_screen#10 (byte*) print_screen#9 (byte*) print_screen#8 (byte*) print_screen#7 (byte*) print_screen#6 -Alias (byte) print_byte_at::b#1 = (byte) print_byte_at::b#2 -Alias (byte*) print_byte_at::at#1 = (byte*) print_byte_at::at#2 -Alias (byte*) print_char_at::at#3 = (byte*~) print_byte_at::$3 Alias (byte*) mulf_sqr1#1 = (byte*) mulf_sqr1#2 Alias (word*) psp1#1 = (word*) psp1#2 Alias (byte*) mulf_sqr2#1 = (byte*) mulf_sqr2#2 Alias (word*) psp2#1 = (word*) psp2#2 -Alias (signed byte) sx#13 = (signed byte) sx#18 (signed byte) sx#24 -Alias (signed byte) sy#13 = (signed byte) sy#19 (signed byte) sy#25 -Alias (signed byte) sz#13 = (signed byte) sz#19 (signed byte) sz#26 -Alias (byte*) print_screen#4 = (byte*) print_screen#5 -Alias (byte*) SCREEN#30 = (byte*) SCREEN#31 (byte*) SCREEN#45 -Alias (byte*) COSH_HI#11 = (byte*) COSH_HI#13 (byte*) COSH_HI#9 -Alias (byte*) COSH_LO#11 = (byte*) COSH_LO#13 (byte*) COSH_LO#9 -Alias (byte*) SINH_HI#11 = (byte*) SINH_HI#13 (byte*) SINH_HI#9 -Alias (byte*) SINH_LO#11 = (byte*) SINH_LO#13 (byte*) SINH_LO#9 -Alias (byte*) COSQ_HI#11 = (byte*) COSQ_HI#13 (byte*) COSQ_HI#9 -Alias (byte*) SINQ_HI#11 = (byte*) SINQ_HI#13 (byte*) SINQ_HI#9 -Alias (signed byte*) xr#13 = (signed byte*) xr#15 (signed byte*) xr#16 -Alias (signed byte*) yr#13 = (signed byte*) yr#15 (signed byte*) yr#16 -Alias (signed byte*) zr#13 = (signed byte*) zr#15 (signed byte*) zr#16 -Alias (signed byte*) pp#12 = (signed byte*) pp#14 (signed byte*) pp#15 -Alias (signed byte*) xp#12 = (signed byte*) xp#14 (signed byte*) xp#15 -Alias (signed byte*) yp#12 = (signed byte*) yp#14 (signed byte*) yp#15 +Alias (signed byte) sx#12 = (signed byte) sx#17 +Alias (signed byte) sy#12 = (signed byte) sy#17 +Alias (signed byte) sz#10 = (signed byte) sz#8 +Alias (signed byte*) COSH#11 = (signed byte*) COSH#9 +Alias (signed byte*) SINH#11 = (signed byte*) SINH#9 +Alias (signed byte*) COSQ#11 = (signed byte*) COSQ#9 +Alias (signed byte*) SINQ#11 = (signed byte*) SINQ#9 +Alias (signed byte*) xr#13 = (signed byte*) xr#14 +Alias (signed byte*) yr#13 = (signed byte*) yr#14 +Alias (signed byte*) zr#13 = (signed byte*) zr#14 +Alias (signed byte*) pp#12 = (signed byte*) pp#13 +Alias (signed byte*) xp#12 = (signed byte*) xp#13 +Alias (signed byte*) yp#12 = (signed byte*) yp#13 Alias (signed byte) sx#0 = (signed byte) sx#6 (signed byte) sx#7 (signed byte) sx#1 Alias (signed byte) sy#0 = (signed byte) sy#6 (signed byte) sy#7 (signed byte) sy#1 -Alias (signed byte) sz#0 = (signed byte) sz#6 (signed byte) sz#7 (signed byte) sz#1 Alias (word*) psp1#0 = (word*) psp1#5 (word*) psp1#4 (word*) psp1#3 Alias (word*) psp2#0 = (word*) psp2#5 (word*) psp2#4 (word*) psp2#3 -Alias (byte*) SCREEN#0 = (byte*) SCREEN#38 (byte*) SCREEN#36 (byte*) SCREEN#33 -Alias (signed byte*) xr#0 = (signed byte*) xr#19 (signed byte*) xr#18 (signed byte*) xr#17 -Alias (signed byte*) yr#0 = (signed byte*) yr#19 (signed byte*) yr#18 (signed byte*) yr#17 -Alias (signed byte*) zr#0 = (signed byte*) zr#19 (signed byte*) zr#18 (signed byte*) zr#17 -Alias (signed byte*) pp#0 = (signed byte*) pp#18 (signed byte*) pp#17 (signed byte*) pp#16 -Alias (signed byte*) xp#0 = (signed byte*) xp#18 (signed byte*) xp#17 (signed byte*) xp#16 -Alias (signed byte*) yp#0 = (signed byte*) yp#18 (signed byte*) yp#17 (signed byte*) yp#16 -Alias (signed byte) sx#10 = (signed byte) sx#20 (signed byte) sx#16 (signed byte) sx#4 -Alias (signed byte) sy#10 = (signed byte) sy#21 (signed byte) sy#16 (signed byte) sy#4 -Alias (signed byte) sz#10 = (signed byte) sz#21 (signed byte) sz#16 (signed byte) sz#4 -Alias (byte*) COSH_HI#4 = (byte*) COSH_HI#6 -Alias (byte*) COSH_LO#4 = (byte*) COSH_LO#6 -Alias (byte*) SINH_HI#4 = (byte*) SINH_HI#6 -Alias (byte*) SINH_LO#4 = (byte*) SINH_LO#6 -Alias (byte*) COSQ_HI#4 = (byte*) COSQ_HI#6 -Alias (byte*) SINQ_HI#4 = (byte*) SINQ_HI#6 +Alias (signed byte*) xr#0 = (signed byte*) xr#17 (signed byte*) xr#16 (signed byte*) xr#15 +Alias (signed byte*) yr#0 = (signed byte*) yr#17 (signed byte*) yr#16 (signed byte*) yr#15 +Alias (signed byte*) zr#0 = (signed byte*) zr#17 (signed byte*) zr#16 (signed byte*) zr#15 +Alias (signed byte*) pp#0 = (signed byte*) pp#16 (signed byte*) pp#15 (signed byte*) pp#14 +Alias (signed byte*) xp#0 = (signed byte*) xp#16 (signed byte*) xp#15 (signed byte*) xp#14 +Alias (signed byte*) yp#0 = (signed byte*) yp#16 (signed byte*) yp#15 (signed byte*) yp#14 +Alias (signed byte) sx#10 = (signed byte) sx#19 (signed byte) sx#15 (signed byte) sx#4 +Alias (signed byte) sy#10 = (signed byte) sy#19 (signed byte) sy#15 (signed byte) sy#4 +Alias (signed byte) sz#3 = (signed byte) sz#5 +Alias (signed byte*) COSH#4 = (signed byte*) COSH#6 +Alias (signed byte*) SINH#4 = (signed byte*) SINH#6 +Alias (signed byte*) COSQ#4 = (signed byte*) COSQ#6 +Alias (signed byte*) SINQ#4 = (signed byte*) SINQ#6 Alias (signed byte*) xr#10 = (signed byte*) xr#8 Alias (signed byte*) yr#10 = (signed byte*) yr#8 Alias (signed byte*) zr#10 = (signed byte*) zr#8 Alias (signed byte*) pp#7 = (signed byte*) pp#9 Alias (signed byte*) xp#7 = (signed byte*) xp#9 Alias (signed byte*) yp#7 = (signed byte*) yp#9 -Alias (byte*) SCREEN#40 = (byte*) SCREEN#42 -Alias (signed byte) sx#14 = (signed byte) sx#21 (signed byte) sx#8 (signed byte) sx#27 (signed byte) sx#26 -Alias (signed byte) sy#14 = (signed byte) sy#22 (signed byte) sy#8 (signed byte) sy#28 (signed byte) sy#27 -Alias (signed byte) sz#14 = (signed byte) sz#22 (signed byte) sz#8 (signed byte) sz#29 (signed byte) sz#28 -Alias (byte*) COSH_HI#15 = (byte*) COSH_HI#5 (byte*) COSH_HI#3 (byte*) COSH_HI#2 (byte*) COSH_HI#16 -Alias (byte*) COSH_LO#15 = (byte*) COSH_LO#5 (byte*) COSH_LO#3 (byte*) COSH_LO#2 (byte*) COSH_LO#16 -Alias (byte*) SINH_HI#15 = (byte*) SINH_HI#5 (byte*) SINH_HI#3 (byte*) SINH_HI#2 (byte*) SINH_HI#16 -Alias (byte*) SINH_LO#15 = (byte*) SINH_LO#5 (byte*) SINH_LO#3 (byte*) SINH_LO#2 (byte*) SINH_LO#16 -Alias (byte*) COSQ_HI#15 = (byte*) COSQ_HI#5 (byte*) COSQ_HI#3 (byte*) COSQ_HI#2 (byte*) COSQ_HI#16 -Alias (byte*) SINQ_HI#15 = (byte*) SINQ_HI#5 (byte*) SINQ_HI#3 (byte*) SINQ_HI#2 (byte*) SINQ_HI#16 +Alias (signed byte) sx#13 = (signed byte) sx#20 (signed byte) sx#8 (signed byte) sx#24 (signed byte) sx#23 +Alias (signed byte) sy#13 = (signed byte) sy#20 (signed byte) sy#8 (signed byte) sy#24 (signed byte) sy#23 +Alias (signed byte) sz#1 = (signed byte) sz#4 (signed byte) sz#2 (signed byte) sz#14 (signed byte) sz#13 +Alias (signed byte*) COSH#13 = (signed byte*) COSH#5 (signed byte*) COSH#3 (signed byte*) COSH#2 (signed byte*) COSH#14 +Alias (signed byte*) SINH#13 = (signed byte*) SINH#5 (signed byte*) SINH#3 (signed byte*) SINH#2 (signed byte*) SINH#14 +Alias (signed byte*) COSQ#13 = (signed byte*) COSQ#5 (signed byte*) COSQ#3 (signed byte*) COSQ#2 (signed byte*) COSQ#14 +Alias (signed byte*) SINQ#13 = (signed byte*) SINQ#5 (signed byte*) SINQ#3 (signed byte*) SINQ#2 (signed byte*) SINQ#14 Alias (signed byte*) xr#4 = (signed byte*) xr#9 (signed byte*) xr#7 (signed byte*) xr#6 (signed byte*) xr#5 Alias (signed byte*) yr#4 = (signed byte*) yr#9 (signed byte*) yr#7 (signed byte*) yr#6 (signed byte*) yr#5 Alias (signed byte*) zr#4 = (signed byte*) zr#9 (signed byte*) zr#7 (signed byte*) zr#6 (signed byte*) zr#5 Alias (signed byte*) pp#3 = (signed byte*) pp#8 (signed byte*) pp#6 (signed byte*) pp#5 (signed byte*) pp#4 Alias (signed byte*) xp#3 = (signed byte*) xp#8 (signed byte*) xp#6 (signed byte*) xp#5 (signed byte*) xp#4 Alias (signed byte*) yp#3 = (signed byte*) yp#8 (signed byte*) yp#6 (signed byte*) yp#5 (signed byte*) yp#4 -Alias (byte*) SCREEN#34 = (byte*) SCREEN#41 (byte*) SCREEN#39 (byte*) SCREEN#37 (byte*) SCREEN#35 -Alias (signed byte*) xr#1 = (signed byte*) xr#3 (signed byte*) xr#14 (signed byte*) xr#12 +Alias (signed byte*) xr#1 = (signed byte*) xr#3 (signed byte*) xr#12 Alias (byte) anim::i#2 = (byte) anim::i#3 -Alias (signed byte*) yr#1 = (signed byte*) yr#3 (signed byte*) yr#14 (signed byte*) yr#12 -Alias (signed byte*) zr#1 = (signed byte*) zr#3 (signed byte*) zr#14 (signed byte*) zr#12 -Alias (signed byte*) pp#1 = (signed byte*) pp#2 (signed byte*) pp#13 (signed byte*) pp#11 -Alias (signed byte*) xp#1 = (signed byte*) xp#2 (signed byte*) xp#13 (signed byte*) xp#11 -Alias (signed byte*) yp#1 = (signed byte*) yp#2 (signed byte*) yp#13 (signed byte*) yp#11 -Alias (signed byte) sx#15 = (signed byte) sx#22 (signed byte) sx#25 (signed byte) sx#9 -Alias (signed byte) sy#15 = (signed byte) sy#23 (signed byte) sy#26 (signed byte) sy#9 -Alias (signed byte) sz#15 = (signed byte) sz#23 (signed byte) sz#27 (signed byte) sz#9 -Alias (byte*) SCREEN#28 = (byte*) SCREEN#29 (byte*) SCREEN#32 (byte*) SCREEN#44 -Alias (byte*) COSH_HI#10 = (byte*) COSH_HI#12 (byte*) COSH_HI#14 (byte*) COSH_HI#8 -Alias (byte*) COSH_LO#10 = (byte*) COSH_LO#12 (byte*) COSH_LO#14 (byte*) COSH_LO#8 -Alias (byte*) SINH_HI#10 = (byte*) SINH_HI#12 (byte*) SINH_HI#14 (byte*) SINH_HI#8 -Alias (byte*) SINH_LO#10 = (byte*) SINH_LO#12 (byte*) SINH_LO#14 (byte*) SINH_LO#8 -Alias (byte*) COSQ_HI#10 = (byte*) COSQ_HI#12 (byte*) COSQ_HI#14 (byte*) COSQ_HI#8 -Alias (byte*) SINQ_HI#10 = (byte*) SINQ_HI#12 (byte*) SINQ_HI#14 (byte*) SINQ_HI#8 +Alias (signed byte*) yr#1 = (signed byte*) yr#3 (signed byte*) yr#12 +Alias (signed byte*) zr#1 = (signed byte*) zr#3 (signed byte*) zr#12 +Alias (signed byte*) pp#1 = (signed byte*) pp#2 (signed byte*) pp#11 +Alias (signed byte*) xp#1 = (signed byte*) xp#2 (signed byte*) xp#11 +Alias (signed byte*) yp#1 = (signed byte*) yp#2 (signed byte*) yp#11 +Alias (signed byte) sx#14 = (signed byte) sx#21 (signed byte) sx#9 +Alias (signed byte) sy#14 = (signed byte) sy#21 (signed byte) sy#9 +Alias (signed byte) sz#11 = (signed byte) sz#9 (signed byte) sz#7 +Alias (signed byte*) COSH#10 = (signed byte*) COSH#12 (signed byte*) COSH#8 +Alias (signed byte*) SINH#10 = (signed byte*) SINH#12 (signed byte*) SINH#8 +Alias (signed byte*) COSQ#10 = (signed byte*) COSQ#12 (signed byte*) COSQ#8 +Alias (signed byte*) SINQ#10 = (signed byte*) SINQ#12 (signed byte*) SINQ#8 Alias (byte) anim::i2#0 = (byte~) anim::$4 -Alias (byte*) SCREEN#1 = (byte*) SCREEN#27 (byte*) SCREEN#2 (byte*) SCREEN#3 (byte*) SCREEN#4 (byte*) SCREEN#5 (byte*) SCREEN#6 (byte*) SCREEN#7 (byte*) SCREEN#8 (byte*) SCREEN#9 (byte*) SCREEN#10 (byte*) SCREEN#11 (byte*) SCREEN#12 (byte*) SCREEN#13 -Alias (byte*) print_str_at::at#1 = (byte*~) debug_print_init::$3 -Alias (byte*) print_str_at::at#2 = (byte*~) debug_print_init::$7 -Alias (byte*) print_str_at::at#3 = (byte*~) debug_print_init::$11 -Alias (byte*) print_str_at::at#4 = (byte*~) debug_print_init::$14 -Alias (byte*) print_str_at::at#5 = (byte*~) debug_print_init::$17 -Alias (byte*) print_str_at::at#6 = (byte*~) debug_print_init::$20 -Alias (byte*) print_str_at::at#7 = (byte*~) debug_print_init::$23 -Alias (byte*) print_str_at::at#8 = (byte*~) debug_print_init::$26 -Alias (byte*) print_str_at::at#9 = (byte*~) debug_print_init::$29 -Alias (byte*) print_str_at::at#10 = (byte*~) debug_print_init::$32 -Alias (byte*) print_str_at::at#11 = (byte*~) debug_print_init::$35 -Alias (byte*) print_str_at::at#12 = (byte*~) debug_print_init::$38 -Alias (byte*) debug_print_init::at_line#0 = (byte*~) debug_print_init::$41 -Alias (byte*) debug_print_init::at_cols#0 = (byte*~) debug_print_init::$43 -Alias (byte*) print_sbyte_at::at#0 = (byte*~) debug_print_init::$46 -Alias (byte*) debug_print_init::at_line#1 = (byte*) debug_print_init::at_line#2 (byte*) debug_print_init::at_line#3 (byte*) debug_print_init::at_line#6 -Alias (byte) debug_print_init::c#2 = (byte) debug_print_init::c#3 (byte) debug_print_init::c#4 (byte) debug_print_init::c#7 -Alias (byte) debug_print_init::i#2 = (byte) debug_print_init::i#3 (byte) debug_print_init::i#4 (byte) debug_print_init::i#7 -Alias (byte*) debug_print_init::at_cols#2 = (byte*) debug_print_init::at_cols#4 (byte*) debug_print_init::at_cols#5 (byte*) debug_print_init::at_cols#3 -Alias (byte*) print_sbyte_at::at#1 = (byte*~) debug_print_init::$50 -Alias (byte*) print_sbyte_at::at#2 = (byte*~) debug_print_init::$54 -Alias (byte) debug_print_init::col#0 = (byte/signed word/word/dword/signed dword~) debug_print_init::$56 -Alias (byte) debug_print_init::c#5 = (byte) debug_print_init::c#6 -Alias (byte) debug_print_init::i#5 = (byte) debug_print_init::i#6 -Alias (byte*) debug_print_init::at_line#4 = (byte*) debug_print_init::at_line#5 -Alias (byte*) debug_print_init::at_cols#1 = (byte*) debug_print_init::at_cols#6 -Alias (byte*) print_sbyte_at::at#3 = (byte*~) debug_print::$2 -Alias (byte*) SCREEN#14 = (byte*) SCREEN#15 (byte*) SCREEN#16 (byte*) SCREEN#17 (byte*) SCREEN#18 (byte*) SCREEN#19 (byte*) SCREEN#20 (byte*) SCREEN#21 (byte*) SCREEN#22 (byte*) SCREEN#23 (byte*) SCREEN#24 (byte*) SCREEN#25 (byte*) SCREEN#26 -Alias (signed byte) sy#11 = (signed byte) sy#17 -Alias (signed byte) sz#11 = (signed byte) sz#17 (signed byte) sz#24 -Alias (byte*) print_sbyte_at::at#4 = (byte*~) debug_print::$6 -Alias (byte*) print_sbyte_at::at#5 = (byte*~) debug_print::$10 -Alias (byte*) print_sbyte_at::at#6 = (byte*~) debug_print::$14 -Alias (byte*) print_sbyte_at::at#7 = (byte*~) debug_print::$18 -Alias (byte*) print_sbyte_at::at#8 = (byte*~) debug_print::$22 -Alias (byte*) print_sbyte_at::at#9 = (byte*~) debug_print::$26 -Alias (byte*) print_sbyte_at::at#10 = (byte*~) debug_print::$30 -Alias (byte*) print_sbyte_at::at#11 = (byte*~) debug_print::$34 -Alias (byte*) print_sbyte_at::at#12 = (byte*~) debug_print::$38 -Alias (byte*) print_sbyte_at::at#13 = (byte*~) debug_print::$42 -Alias (byte*) print_sbyte_at::at#14 = (byte*~) debug_print::$46 -Alias (byte*) debug_print::at_line#0 = (byte*~) debug_print::$49 -Alias (byte*) print_sbyte_at::at#15 = (byte*~) debug_print::$52 -Alias (byte*) debug_print::at_line#1 = (byte*) debug_print::at_line#2 (byte*) debug_print::at_line#3 (byte*) debug_print::at_line#4 (byte*) debug_print::at_line#5 (byte*) debug_print::at_line#6 (byte*) debug_print::at_line#7 -Alias (byte) debug_print::c#2 = (byte) debug_print::c#3 (byte) debug_print::c#4 (byte) debug_print::c#5 (byte) debug_print::c#6 (byte) debug_print::c#7 (byte) debug_print::c#8 -Alias (byte) debug_print::i#2 = (byte) debug_print::i#3 (byte) debug_print::i#4 (byte) debug_print::i#5 (byte) debug_print::i#6 (byte) debug_print::i#7 (byte) debug_print::i#8 -Alias (byte*) print_sbyte_at::at#16 = (byte*~) debug_print::$56 -Alias (byte*) print_sbyte_at::at#17 = (byte*~) debug_print::$60 -Alias (byte*) print_sbyte_at::at#18 = (byte*~) debug_print::$64 -Alias (byte*) print_sbyte_at::at#19 = (byte*~) debug_print::$68 -Alias (byte*) print_sbyte_at::at#20 = (byte*~) debug_print::$72 Alias (byte*) sprites_init::sprites_ptr#0 = (byte*~) sprites_init::$0 -Alias (signed byte) sx#17 = (signed byte) sx#23 (signed byte) sx#2 -Alias (signed byte) sy#18 = (signed byte) sy#24 (signed byte) sy#2 -Alias (signed byte) sz#18 = (signed byte) sz#25 (signed byte) sz#2 -Alias (signed byte) calculate_matrix_16::t1#0 = (signed byte~) calculate_matrix_16::$0 -Alias (signed byte) calculate_matrix_16::t2#0 = (signed byte~) calculate_matrix_16::$1 -Alias (signed word) calculate_matrix_16::cosh_t1#0 = (signed word~) calculate_matrix_16::$2 -Alias (signed word) calculate_matrix_16::cosh_t2#0 = (signed word~) calculate_matrix_16::$3 -Alias (signed word) calculate_matrix_16::sinh_t1#0 = (signed word~) calculate_matrix_16::$7 -Alias (signed word) calculate_matrix_16::sinh_t2#0 = (signed word~) calculate_matrix_16::$8 -Alias (signed word) calculate_matrix_16::sinh_sy#0 = (signed word~) calculate_matrix_16::$12 -Alias (signed byte) calculate_matrix_16::t3#0 = (signed byte~) calculate_matrix_16::$16 -Alias (signed byte) calculate_matrix_16::t4#0 = (signed byte~) calculate_matrix_16::$17 -Alias (signed byte) calculate_matrix_16::t5#0 = (signed byte~) calculate_matrix_16::$18 -Alias (signed byte) calculate_matrix_16::t6#0 = (signed byte~) calculate_matrix_16::$19 -Alias (signed byte) calculate_matrix_16::t7#0 = (signed byte~) calculate_matrix_16::$20 -Alias (signed byte) calculate_matrix_16::t8#0 = (signed byte~) calculate_matrix_16::$21 -Alias (signed word) calculate_matrix_16::sinh_t3#0 = (signed word~) calculate_matrix_16::$22 -Alias (signed word) calculate_matrix_16::sinh_t4#0 = (signed word~) calculate_matrix_16::$23 -Alias (signed word) calculate_matrix_16::cosq_t5#0 = (signed word~) calculate_matrix_16::$24 -Alias (signed word) calculate_matrix_16::cosq_t6#0 = (signed word~) calculate_matrix_16::$25 -Alias (signed word) calculate_matrix_16::cosq_t7#0 = (signed word~) calculate_matrix_16::$26 -Alias (signed word) calculate_matrix_16::cosq_t8#0 = (signed word~) calculate_matrix_16::$27 -Alias (signed word) calculate_matrix_16::cosh_t3#0 = (signed word~) calculate_matrix_16::$42 -Alias (signed word) calculate_matrix_16::cosh_t4#0 = (signed word~) calculate_matrix_16::$43 -Alias (signed word) calculate_matrix_16::sinq_t5#0 = (signed word~) calculate_matrix_16::$44 -Alias (signed word) calculate_matrix_16::sinq_t6#0 = (signed word~) calculate_matrix_16::$45 -Alias (signed word) calculate_matrix_16::sinq_t7#0 = (signed word~) calculate_matrix_16::$46 -Alias (signed word) calculate_matrix_16::sinq_t8#0 = (signed word~) calculate_matrix_16::$47 -Alias (signed byte) calculate_matrix_16::t9#0 = (signed byte~) calculate_matrix_16::$62 -Alias (signed byte) calculate_matrix_16::t10#0 = (signed byte~) calculate_matrix_16::$63 -Alias (signed word) calculate_matrix_16::sinh_t9#0 = (signed word~) calculate_matrix_16::$64 -Alias (signed word) calculate_matrix_16::sinh_t10#0 = (signed word~) calculate_matrix_16::$65 -Alias (signed word) calculate_matrix_16::cosh_t9#0 = (signed word~) calculate_matrix_16::$69 -Alias (signed word) calculate_matrix_16::cosh_t10#0 = (signed word~) calculate_matrix_16::$70 -Alias (byte*) COSH_LO#0 = (byte*~) $6 -Alias (byte*) COSH_HI#0 = (byte*~) $7 -Alias (byte*) COSQ_HI#0 = (byte*~) $9 -Alias (signed byte) sx#12 = (signed byte) sx#5 -Alias (signed byte) sy#12 = (signed byte) sy#5 -Alias (signed byte) sz#12 = (signed byte) sz#5 +Alias (signed byte) sx#16 = (signed byte) sx#22 (signed byte) sx#2 +Alias (signed byte) sy#16 = (signed byte) sy#22 (signed byte) sy#2 +Alias (signed byte) sz#0 = (signed byte) sz#15 (signed byte) sz#12 +Alias (signed byte) calculate_matrix::t1#0 = (signed byte~) calculate_matrix::$0 +Alias (signed byte) calculate_matrix::t2#0 = (signed byte~) calculate_matrix::$1 +Alias (signed byte) calculate_matrix::t3#0 = (signed byte~) calculate_matrix::$2 +Alias (signed byte) calculate_matrix::t4#0 = (signed byte~) calculate_matrix::$3 +Alias (signed byte) calculate_matrix::t5#0 = (signed byte~) calculate_matrix::$4 +Alias (signed byte) calculate_matrix::t6#0 = (signed byte~) calculate_matrix::$5 +Alias (signed byte) calculate_matrix::t7#0 = (signed byte~) calculate_matrix::$6 +Alias (signed byte) calculate_matrix::t8#0 = (signed byte~) calculate_matrix::$7 +Alias (signed byte) calculate_matrix::t9#0 = (signed byte~) calculate_matrix::$8 +Alias (signed byte) calculate_matrix::t10#0 = (signed byte~) calculate_matrix::$9 +Alias (signed byte*) COSH#0 = (signed byte*~) $6 +Alias (signed byte*) COSQ#0 = (signed byte*~) $7 +Alias (signed byte) sx#11 = (signed byte) sx#5 +Alias (signed byte) sy#11 = (signed byte) sy#5 Successful SSA optimization Pass2AliasElimination -Alias (byte*) print_sbyte_at::at#21 = (byte*) print_sbyte_at::at#23 -Successful SSA optimization Pass2AliasElimination -Self Phi Eliminated (byte*) print_screen#2 -Self Phi Eliminated (signed byte) sx#14 -Self Phi Eliminated (signed byte) sy#14 -Self Phi Eliminated (signed byte) sz#14 -Self Phi Eliminated (byte*) COSH_HI#15 -Self Phi Eliminated (byte*) COSH_LO#15 -Self Phi Eliminated (byte*) SINH_HI#15 -Self Phi Eliminated (byte*) SINH_LO#15 -Self Phi Eliminated (byte*) COSQ_HI#15 -Self Phi Eliminated (byte*) SINQ_HI#15 +Self Phi Eliminated (signed byte) sx#13 +Self Phi Eliminated (signed byte) sy#13 +Self Phi Eliminated (signed byte) sz#1 +Self Phi Eliminated (signed byte*) COSH#13 +Self Phi Eliminated (signed byte*) SINH#13 +Self Phi Eliminated (signed byte*) COSQ#13 +Self Phi Eliminated (signed byte*) SINQ#13 Self Phi Eliminated (signed byte*) xr#4 Self Phi Eliminated (signed byte*) yr#4 Self Phi Eliminated (signed byte*) zr#4 Self Phi Eliminated (signed byte*) pp#3 Self Phi Eliminated (signed byte*) xp#3 Self Phi Eliminated (signed byte*) yp#3 -Self Phi Eliminated (byte*) SCREEN#34 Self Phi Eliminated (signed byte*) xr#1 Self Phi Eliminated (signed byte*) yr#1 Self Phi Eliminated (signed byte*) zr#1 Self Phi Eliminated (signed byte*) pp#1 Self Phi Eliminated (signed byte*) xp#1 Self Phi Eliminated (signed byte*) yp#1 -Self Phi Eliminated (signed byte) sx#15 -Self Phi Eliminated (signed byte) sy#15 -Self Phi Eliminated (signed byte) sz#15 -Self Phi Eliminated (byte*) SCREEN#28 -Self Phi Eliminated (byte*) COSH_HI#10 -Self Phi Eliminated (byte*) COSH_LO#10 -Self Phi Eliminated (byte*) SINH_HI#10 -Self Phi Eliminated (byte*) SINH_LO#10 -Self Phi Eliminated (byte*) COSQ_HI#10 -Self Phi Eliminated (byte*) SINQ_HI#10 -Self Phi Eliminated (byte) debug_print_init::i#5 -Self Phi Eliminated (byte*) debug_print_init::at_cols#1 -Self Phi Eliminated (byte) debug_print_init::c#5 -Self Phi Eliminated (byte*) debug_print_init::at_line#4 -Self Phi Eliminated (byte*) debug_print::at_line#1 +Self Phi Eliminated (signed byte) sx#14 +Self Phi Eliminated (signed byte) sy#14 +Self Phi Eliminated (signed byte) sz#11 +Self Phi Eliminated (signed byte*) COSH#10 +Self Phi Eliminated (signed byte*) SINH#10 +Self Phi Eliminated (signed byte*) COSQ#10 +Self Phi Eliminated (signed byte*) SINQ#10 Self Phi Eliminated (byte*) SPRITE#1 Self Phi Eliminated (byte*) sprites_init::sprites_ptr#1 Successful SSA optimization Pass2SelfPhiElimination -Redundant Phi (byte) print_byte_at::b#1 (byte) print_byte_at::b#0 -Redundant Phi (byte*) print_byte_at::at#1 (byte*) print_byte_at::at#0 -Redundant Phi (byte*) print_screen#1 (byte*) print_screen#3 -Redundant Phi (byte*) print_screen#2 (byte*) print_screen#1 Redundant Phi (byte*) mulf_sqr1#1 (byte*) mulf_sqr1#0 Redundant Phi (word*) psp1#1 (word*) psp1#0 Redundant Phi (byte*) mulf_sqr2#1 (byte*) mulf_sqr2#0 Redundant Phi (word*) psp2#1 (word*) psp2#0 +Redundant Phi (signed byte) sx#12 (signed byte) sx#16 +Redundant Phi (signed byte) sy#12 (signed byte) sy#16 Redundant Phi (byte*) SPRITE#3 (byte*) SPRITE#0 -Redundant Phi (signed byte) sx#13 (signed byte) sx#17 -Redundant Phi (signed byte) sy#13 (signed byte) sy#18 -Redundant Phi (signed byte) sz#13 (signed byte) sz#18 -Redundant Phi (byte*) print_screen#4 (byte*) print_screen#0 -Redundant Phi (byte*) SCREEN#30 (byte*) SCREEN#0 -Redundant Phi (byte*) COSH_HI#11 (byte*) COSH_HI#0 -Redundant Phi (byte*) COSH_LO#11 (byte*) COSH_LO#0 -Redundant Phi (byte*) SINH_HI#11 (byte*) SINH_HI#0 -Redundant Phi (byte*) SINH_LO#11 (byte*) SINH_LO#0 -Redundant Phi (byte*) COSQ_HI#11 (byte*) COSQ_HI#0 -Redundant Phi (byte*) SINQ_HI#11 (byte*) SINQ_HI#0 +Redundant Phi (signed byte) sz#10 (signed byte) sz#0 +Redundant Phi (signed byte*) COSH#11 (signed byte*) COSH#0 +Redundant Phi (signed byte*) SINH#11 (signed byte*) SINH#0 +Redundant Phi (signed byte*) COSQ#11 (signed byte*) COSQ#0 +Redundant Phi (signed byte*) SINQ#11 (signed byte*) SINQ#0 Redundant Phi (signed byte*) xr#13 (signed byte*) xr#0 Redundant Phi (signed byte*) yr#13 (signed byte*) yr#0 Redundant Phi (signed byte*) zr#13 (signed byte*) zr#0 @@ -2713,97 +1256,67 @@ Redundant Phi (signed byte*) xp#12 (signed byte*) xp#0 Redundant Phi (signed byte*) yp#12 (signed byte*) yp#0 Redundant Phi (signed byte) sx#0 (signed byte) sx#10 Redundant Phi (signed byte) sy#0 (signed byte) sy#10 -Redundant Phi (signed byte) sz#0 (signed byte) sz#10 -Redundant Phi (signed byte) sx#19 (signed byte) sx#13 -Redundant Phi (signed byte) sy#20 (signed byte) sy#13 -Redundant Phi (signed byte) sz#20 (signed byte) sz#13 -Redundant Phi (byte*) COSH_HI#7 (byte*) COSH_HI#11 -Redundant Phi (byte*) COSH_LO#7 (byte*) COSH_LO#11 -Redundant Phi (byte*) SINH_HI#7 (byte*) SINH_HI#11 -Redundant Phi (byte*) SINH_LO#7 (byte*) SINH_LO#11 -Redundant Phi (byte*) COSQ_HI#7 (byte*) COSQ_HI#11 -Redundant Phi (byte*) SINQ_HI#7 (byte*) SINQ_HI#11 +Redundant Phi (signed byte) sx#18 (signed byte) sx#12 +Redundant Phi (signed byte) sy#18 (signed byte) sy#12 +Redundant Phi (signed byte) sz#6 (signed byte) sz#10 +Redundant Phi (signed byte*) COSH#7 (signed byte*) COSH#11 +Redundant Phi (signed byte*) SINH#7 (signed byte*) SINH#11 +Redundant Phi (signed byte*) COSQ#7 (signed byte*) COSQ#11 +Redundant Phi (signed byte*) SINQ#7 (signed byte*) SINQ#11 Redundant Phi (signed byte*) xr#11 (signed byte*) xr#13 Redundant Phi (signed byte*) yr#11 (signed byte*) yr#13 Redundant Phi (signed byte*) zr#11 (signed byte*) zr#13 Redundant Phi (signed byte*) pp#10 (signed byte*) pp#12 Redundant Phi (signed byte*) xp#10 (signed byte*) xp#12 Redundant Phi (signed byte*) yp#10 (signed byte*) yp#12 -Redundant Phi (byte*) SCREEN#43 (byte*) SCREEN#30 -Redundant Phi (signed byte) sx#14 (signed byte) sx#10 -Redundant Phi (signed byte) sy#14 (signed byte) sy#10 -Redundant Phi (signed byte) sz#14 (signed byte) sz#10 -Redundant Phi (byte*) COSH_HI#15 (byte*) COSH_HI#4 -Redundant Phi (byte*) COSH_LO#15 (byte*) COSH_LO#4 -Redundant Phi (byte*) SINH_HI#15 (byte*) SINH_HI#4 -Redundant Phi (byte*) SINH_LO#15 (byte*) SINH_LO#4 -Redundant Phi (byte*) COSQ_HI#15 (byte*) COSQ_HI#4 -Redundant Phi (byte*) SINQ_HI#15 (byte*) SINQ_HI#4 +Redundant Phi (signed byte) sx#13 (signed byte) sx#10 +Redundant Phi (signed byte) sy#13 (signed byte) sy#10 +Redundant Phi (signed byte) sz#1 (signed byte) sz#3 +Redundant Phi (signed byte*) COSH#13 (signed byte*) COSH#4 +Redundant Phi (signed byte*) SINH#13 (signed byte*) SINH#4 +Redundant Phi (signed byte*) COSQ#13 (signed byte*) COSQ#4 +Redundant Phi (signed byte*) SINQ#13 (signed byte*) SINQ#4 Redundant Phi (signed byte*) xr#4 (signed byte*) xr#10 Redundant Phi (signed byte*) yr#4 (signed byte*) yr#10 Redundant Phi (signed byte*) zr#4 (signed byte*) zr#10 Redundant Phi (signed byte*) pp#3 (signed byte*) pp#7 Redundant Phi (signed byte*) xp#3 (signed byte*) xp#7 Redundant Phi (signed byte*) yp#3 (signed byte*) yp#7 -Redundant Phi (byte*) SCREEN#34 (byte*) SCREEN#40 Redundant Phi (signed byte*) xr#1 (signed byte*) xr#4 Redundant Phi (signed byte*) yr#1 (signed byte*) yr#4 Redundant Phi (signed byte*) zr#1 (signed byte*) zr#4 Redundant Phi (signed byte*) pp#1 (signed byte*) pp#3 Redundant Phi (signed byte*) xp#1 (signed byte*) xp#3 Redundant Phi (signed byte*) yp#1 (signed byte*) yp#3 -Redundant Phi (signed byte) sx#15 (signed byte) sx#14 -Redundant Phi (signed byte) sy#15 (signed byte) sy#14 -Redundant Phi (signed byte) sz#15 (signed byte) sz#14 -Redundant Phi (byte*) SCREEN#28 (byte*) SCREEN#34 -Redundant Phi (byte*) COSH_HI#10 (byte*) COSH_HI#15 -Redundant Phi (byte*) COSH_LO#10 (byte*) COSH_LO#15 -Redundant Phi (byte*) SINH_HI#10 (byte*) SINH_HI#15 -Redundant Phi (byte*) SINH_LO#10 (byte*) SINH_LO#15 -Redundant Phi (byte*) COSQ_HI#10 (byte*) COSQ_HI#15 -Redundant Phi (byte*) SINQ_HI#10 (byte*) SINQ_HI#15 -Redundant Phi (byte*) print_screen#3 (byte*) print_screen#4 -Redundant Phi (byte*) SCREEN#1 (byte*) SCREEN#30 -Redundant Phi (byte) debug_print_init::i#5 (byte) debug_print_init::i#2 -Redundant Phi (byte*) debug_print_init::at_cols#1 (byte*) debug_print_init::at_cols#2 -Redundant Phi (byte) debug_print_init::c#5 (byte) debug_print_init::c#2 -Redundant Phi (byte*) debug_print_init::at_line#4 (byte*) debug_print_init::at_line#1 -Redundant Phi (byte*) SCREEN#14 (byte*) SCREEN#28 -Redundant Phi (signed byte) sx#11 (signed byte) sx#15 -Redundant Phi (signed byte) sy#11 (signed byte) sy#15 -Redundant Phi (signed byte) sz#11 (signed byte) sz#15 -Redundant Phi (byte*) debug_print::at_line#1 (byte*) debug_print::at_line#0 +Redundant Phi (signed byte) sx#14 (signed byte) sx#13 +Redundant Phi (signed byte) sy#14 (signed byte) sy#13 +Redundant Phi (signed byte) sz#11 (signed byte) sz#1 +Redundant Phi (signed byte*) COSH#10 (signed byte*) COSH#13 +Redundant Phi (signed byte*) SINH#10 (signed byte*) SINH#13 +Redundant Phi (signed byte*) COSQ#10 (signed byte*) COSQ#13 +Redundant Phi (signed byte*) SINQ#10 (signed byte*) SINQ#13 Redundant Phi (byte*) SPRITE#2 (byte*) SPRITE#3 Redundant Phi (byte*) SPRITE#1 (byte*) SPRITE#2 Redundant Phi (byte*) sprites_init::sprites_ptr#1 (byte*) sprites_init::sprites_ptr#0 -Redundant Phi (signed byte) calculate_matrix_16::sy#1 (signed byte) calculate_matrix_16::sy#0 -Redundant Phi (signed byte) calculate_matrix_16::sz#1 (signed byte) calculate_matrix_16::sz#0 -Redundant Phi (byte*) COSH_HI#1 (byte*) COSH_HI#15 -Redundant Phi (byte*) COSH_LO#1 (byte*) COSH_LO#15 -Redundant Phi (byte*) SINH_HI#1 (byte*) SINH_HI#15 -Redundant Phi (byte*) SINH_LO#1 (byte*) SINH_LO#15 -Redundant Phi (signed byte) calculate_matrix_16::sx#1 (signed byte) calculate_matrix_16::sx#0 -Redundant Phi (byte*) COSQ_HI#1 (byte*) COSQ_HI#15 -Redundant Phi (byte*) SINQ_HI#1 (byte*) SINQ_HI#15 +Redundant Phi (signed byte) calculate_matrix::sy#1 (signed byte) calculate_matrix::sy#0 +Redundant Phi (signed byte) calculate_matrix::sz#1 (signed byte) calculate_matrix::sz#0 +Redundant Phi (signed byte) calculate_matrix::sx#1 (signed byte) calculate_matrix::sx#0 +Redundant Phi (signed byte*) COSH#1 (signed byte*) COSH#13 +Redundant Phi (signed byte*) SINH#1 (signed byte*) SINH#13 +Redundant Phi (signed byte*) COSQ#1 (signed byte*) COSQ#13 +Redundant Phi (signed byte*) SINQ#1 (signed byte*) SINQ#13 Redundant Phi (signed byte) rotate_matrix::x#1 (signed byte) rotate_matrix::x#0 Redundant Phi (signed byte*) xr#2 (signed byte*) xr#1 Redundant Phi (signed byte) rotate_matrix::y#1 (signed byte) rotate_matrix::y#0 Redundant Phi (signed byte*) yr#2 (signed byte*) yr#1 Redundant Phi (signed byte) rotate_matrix::z#1 (signed byte) rotate_matrix::z#0 Redundant Phi (signed byte*) zr#2 (signed byte*) zr#1 -Redundant Phi (signed byte) sx#12 (signed byte) sx#0 -Redundant Phi (signed byte) sy#12 (signed byte) sy#0 -Redundant Phi (signed byte) sz#12 (signed byte) sz#0 +Redundant Phi (signed byte) sx#11 (signed byte) sx#0 +Redundant Phi (signed byte) sy#11 (signed byte) sy#0 Successful SSA optimization Pass2RedundantPhiElimination -Simple Condition (bool~) print_str_at::$0 if(*((byte*) print_str_at::str#13)!=(byte) '@') goto print_str_at::@2 -Simple Condition (bool~) print_sbyte_at::$0 if((signed byte) print_sbyte_at::b#22<(byte/signed byte/word/signed word/dword/signed dword) 0) goto print_sbyte_at::@1 -Simple Condition (bool~) print_cls::$1 if((byte*) print_cls::sc#1!=(byte*~) print_cls::$0) goto print_cls::@1 Simple Condition (bool~) anim::$0 if(*((byte*) RASTER#0)!=(byte/word/signed word/dword/signed dword) 255) goto anim::@5 Simple Condition (bool~) anim::$9 if((byte) anim::i#1!=rangelast(0,7)) goto anim::@7 -Simple Condition (bool~) debug_print_init::$93 if((byte) debug_print_init::j#1!=rangelast(0,3)) goto debug_print_init::@2 -Simple Condition (bool~) debug_print_init::$94 if((byte) debug_print_init::i#1!=rangelast(0,7)) goto debug_print_init::@1 -Simple Condition (bool~) debug_print::$74 if((byte) debug_print::i#1!=rangelast(0,7)) goto debug_print::@1 -Simple Condition (bool~) sprites_init::$4 if((byte) sprites_init::i#1!=rangelast(0,7)) goto sprites_init::@1 +Simple Condition (bool~) sprites_init::$3 if((byte) sprites_init::i#1!=rangelast(0,7)) goto sprites_init::@1 Successful SSA optimization Pass2ConditionalJumpSimplification Constant (const byte*) SPRITES_XPOS#0 = ((byte*))53248 Constant (const byte*) SPRITES_YPOS#0 = ((byte*))53249 @@ -2811,12 +1324,9 @@ Constant (const byte*) RASTER#0 = ((byte*))53266 Constant (const byte*) SPRITES_ENABLE#0 = ((byte*))53269 Constant (const byte*) BORDERCOL#0 = ((byte*))53280 Constant (const byte*) SPRITES_COLS#0 = ((byte*))53287 +Constant (const byte) GREEN#0 = 5 Constant (const byte) LIGHT_BLUE#0 = 14 Constant (const byte) LIGHT_GREY#0 = 15 -Constant (const byte*) print_screen#0 = ((byte*))1024 -Constant (const byte) print_char_at::ch#0 = '-' -Constant (const byte) print_char_at::ch#1 = ' ' -Constant (const byte[]) print_hextab#0 = $10 Constant (const signed byte*) xr#0 = ((signed byte*))240 Constant (const signed byte*) yr#0 = ((signed byte*))241 Constant (const signed byte*) zr#0 = ((signed byte*))242 @@ -2825,84 +1335,23 @@ Constant (const signed byte*) xp#0 = ((signed byte*))244 Constant (const signed byte*) yp#0 = ((signed byte*))245 Constant (const word*) psp1#0 = ((word*))246 Constant (const word*) psp2#0 = ((word*))248 -Constant (const byte*) SCREEN#0 = ((byte*))1024 -Constant (const signed byte/signed word/signed dword) $0 = -95 -Constant (const signed byte/signed word/signed dword) $1 = -95 -Constant (const signed byte/signed word/signed dword) $2 = -95 -Constant (const byte/signed byte/word/signed word/dword/signed dword) $3 = -0 +Constant (const signed byte/signed word/signed dword) $0 = -52 +Constant (const signed byte/signed word/signed dword) $1 = -52 +Constant (const signed byte/signed word/signed dword) $2 = -52 +Constant (const signed byte/signed word/signed dword) $3 = -52 +Constant (const signed byte/signed word/signed dword) $4 = -52 +Constant (const signed byte/signed word/signed dword) $5 = -52 +Constant (const signed byte[8]) zs#0 = { 52, 52, 52, 52, 52, 52, 52, 52 } Constant (const signed byte[8]) xrs#0 = { fill( 8, 0) } Constant (const signed byte[8]) yrs#0 = { fill( 8, 0) } Constant (const signed byte[8]) zrs#0 = { fill( 8, 0) } Constant (const signed byte[8]) pps#0 = { fill( 8, 0) } Constant (const signed byte[8]) xps#0 = { fill( 8, 0) } Constant (const signed byte[8]) yps#0 = { fill( 8, 0) } -Constant (const signed byte) sx#17 = 0 -Constant (const signed byte) sy#18 = 0 -Constant (const signed byte) sz#18 = 0 +Constant (const signed byte) sx#16 = 0 +Constant (const signed byte) sy#16 = 0 +Constant (const signed byte) sz#0 = 0 Constant (const byte) anim::i#0 = 0 -Constant (const byte/signed byte/word/signed word/dword/signed dword) debug_print_init::$1 = 40*0 -Constant (const byte*) print_str_at::str#1 = debug_print_init::str -Constant (const byte/signed byte/word/signed word/dword/signed dword) debug_print_init::$5 = 40*1 -Constant (const byte*) print_str_at::str#2 = debug_print_init::str1 -Constant (const byte/signed byte/word/signed word/dword/signed dword) debug_print_init::$9 = 40*2 -Constant (const byte*) print_str_at::str#3 = debug_print_init::str2 -Constant (const word/signed word/dword/signed dword) debug_print_init::$13 = 40*16 -Constant (const byte*) print_str_at::str#4 = debug_print_init::str3 -Constant (const word/signed word/dword/signed dword) debug_print_init::$16 = 40*17 -Constant (const byte*) print_str_at::str#5 = debug_print_init::str4 -Constant (const word/signed word/dword/signed dword) debug_print_init::$19 = 40*18 -Constant (const byte*) print_str_at::str#6 = debug_print_init::str5 -Constant (const word/signed word/dword/signed dword) debug_print_init::$22 = 40*19 -Constant (const byte*) print_str_at::str#7 = debug_print_init::str6 -Constant (const word/signed word/dword/signed dword) debug_print_init::$25 = 40*20 -Constant (const byte*) print_str_at::str#8 = debug_print_init::str7 -Constant (const word/signed word/dword/signed dword) debug_print_init::$28 = 40*21 -Constant (const byte*) print_str_at::str#9 = debug_print_init::str8 -Constant (const word/signed word/dword/signed dword) debug_print_init::$31 = 40*22 -Constant (const byte*) print_str_at::str#10 = debug_print_init::str9 -Constant (const word/signed word/dword/signed dword) debug_print_init::$34 = 40*23 -Constant (const byte*) print_str_at::str#11 = debug_print_init::str10 -Constant (const word/signed word/dword/signed dword) debug_print_init::$37 = 40*24 -Constant (const byte*) print_str_at::str#12 = debug_print_init::str11 -Constant (const word/signed word/dword/signed dword) debug_print_init::$40 = 16*40 -Constant (const byte) debug_print_init::c#0 = 4 -Constant (const byte*) debug_print_init::COLS#0 = ((byte*))55296 -Constant (const word/signed word/dword/signed dword) debug_print_init::$42 = 16*40 -Constant (const byte) debug_print_init::i#0 = 0 -Constant (const byte/signed byte/word/signed word/dword/signed dword) debug_print_init::$44 = 40*0 -Constant (const byte/signed byte/word/signed word/dword/signed dword) debug_print_init::$48 = 40*1 -Constant (const byte/signed byte/word/signed word/dword/signed dword) debug_print_init::$52 = 40*2 -Constant (const byte) debug_print_init::j#0 = 0 -Constant (const byte/signed byte/word/signed word/dword/signed dword) debug_print_init::$57 = 40*0 -Constant (const byte/signed byte/word/signed word/dword/signed dword) debug_print_init::$61 = 40*1 -Constant (const byte/signed byte/word/signed word/dword/signed dword) debug_print_init::$65 = 40*2 -Constant (const byte/signed byte/word/signed word/dword/signed dword) debug_print_init::$69 = 40*3 -Constant (const byte/word/signed word/dword/signed dword) debug_print_init::$73 = 40*4 -Constant (const byte/word/signed word/dword/signed dword) debug_print_init::$77 = 40*5 -Constant (const byte/word/signed word/dword/signed dword) debug_print_init::$81 = 40*6 -Constant (const word/signed word/dword/signed dword) debug_print_init::$85 = 40*7 -Constant (const word/signed word/dword/signed dword) debug_print_init::$89 = 40*8 -Constant (const byte/signed byte/word/signed word/dword/signed dword) debug_print::$0 = 40*0 -Constant (const byte/signed byte/word/signed word/dword/signed dword) debug_print::$4 = 40*1 -Constant (const byte/signed byte/word/signed word/dword/signed dword) debug_print::$8 = 40*2 -Constant (const byte/word/signed word/dword/signed dword) debug_print::$12 = 40*4 -Constant (const byte/word/signed word/dword/signed dword) debug_print::$16 = 40*4 -Constant (const byte/word/signed word/dword/signed dword) debug_print::$20 = 40*4 -Constant (const byte/word/signed word/dword/signed dword) debug_print::$24 = 40*5 -Constant (const byte/word/signed word/dword/signed dword) debug_print::$28 = 40*5 -Constant (const byte/word/signed word/dword/signed dword) debug_print::$32 = 40*5 -Constant (const byte/word/signed word/dword/signed dword) debug_print::$36 = 40*6 -Constant (const byte/word/signed word/dword/signed dword) debug_print::$40 = 40*6 -Constant (const byte/word/signed word/dword/signed dword) debug_print::$44 = 40*6 -Constant (const word/signed word/dword/signed dword) debug_print::$48 = 19*40 -Constant (const byte) debug_print::c#0 = 4 -Constant (const byte) debug_print::i#0 = 0 -Constant (const byte/signed byte/word/signed word/dword/signed dword) debug_print::$50 = 40*0 -Constant (const byte/signed byte/word/signed word/dword/signed dword) debug_print::$54 = 40*1 -Constant (const byte/signed byte/word/signed word/dword/signed dword) debug_print::$58 = 40*2 -Constant (const byte/signed byte/word/signed word/dword/signed dword) debug_print::$62 = 40*3 -Constant (const byte/word/signed word/dword/signed dword) debug_print::$66 = 40*4 -Constant (const byte/word/signed word/dword/signed dword) debug_print::$70 = 40*5 Constant (const byte*) sprites_init::SCREEN#0 = ((byte*))1024 Constant (const byte) sprites_init::i#0 = 0 Constant (const signed byte[9]) rotation_matrix#0 = { fill( 9, 0) } @@ -2917,551 +1366,126 @@ Constant (const byte*) SINH_HI#0 = ((byte*))16896 Constant (const byte*) SINQ_LO#0 = ((byte*))17408 Constant (const byte*) SINQ_HI#0 = ((byte*))17920 Successful SSA optimization Pass2ConstantIdentification -Constant (const byte*) print_cls::sc#0 = print_screen#0 -Constant (const byte*) print_cls::$0 = print_screen#0+1000 Constant (const word) main::$1 = ((word))mulf_sqr1#0 Constant (const word) main::$2 = ((word))mulf_sqr2#0 -Constant (const signed byte[8]) xs#0 = { $0, 95, 0, 0, 0, 0, 0, 63 } -Constant (const signed byte[8]) ys#0 = { 0, 0, $1, 95, 0, 0, 0, 0 } -Constant (const signed byte[8]) zs#0 = { 0, 0, 0, 0, $2, 95, $3, 0 } -Constant (const byte*) debug_print_init::$2 = SCREEN#0+debug_print_init::$1 -Constant (const byte*) debug_print_init::$6 = SCREEN#0+debug_print_init::$5 -Constant (const byte*) debug_print_init::$10 = SCREEN#0+debug_print_init::$9 -Constant (const byte*) print_str_at::at#4 = SCREEN#0+debug_print_init::$13 -Constant (const byte*) print_str_at::at#5 = SCREEN#0+debug_print_init::$16 -Constant (const byte*) print_str_at::at#6 = SCREEN#0+debug_print_init::$19 -Constant (const byte*) print_str_at::at#7 = SCREEN#0+debug_print_init::$22 -Constant (const byte*) print_str_at::at#8 = SCREEN#0+debug_print_init::$25 -Constant (const byte*) print_str_at::at#9 = SCREEN#0+debug_print_init::$28 -Constant (const byte*) print_str_at::at#10 = SCREEN#0+debug_print_init::$31 -Constant (const byte*) print_str_at::at#11 = SCREEN#0+debug_print_init::$34 -Constant (const byte*) print_str_at::at#12 = SCREEN#0+debug_print_init::$37 -Constant (const byte*) debug_print_init::at_line#0 = SCREEN#0+debug_print_init::$40 -Constant (const byte*) debug_print_init::at_cols#0 = debug_print_init::COLS#0+debug_print_init::$42 +Constant (const signed byte[8]) xs#0 = { $0, $1, $2, 0, 0, 52, 52, 52 } +Constant (const signed byte[8]) ys#0 = { $3, 0, 52, $4, 52, $5, 0, 52 } Constant (const byte*) sprites_init::sprites_ptr#0 = sprites_init::SCREEN#0+1016 Constant (const byte*) sprites_init::$1 = SPRITE#0/64 -Constant (const byte*) COSH_LO#0 = SINH_LO#0+64 -Constant (const byte*) COSH_HI#0 = SINH_HI#0+64 -Constant (const byte*) COSQ_HI#0 = SINQ_HI#0+64 +Constant (const signed byte*) COSH#0 = SINH#0+64 +Constant (const signed byte*) COSQ#0 = SINQ#0+64 Successful SSA optimization Pass2ConstantIdentification -Constant (const byte*) print_str_at::at#1 = debug_print_init::$2+34 -Constant (const byte*) print_str_at::at#2 = debug_print_init::$6+34 -Constant (const byte*) print_str_at::at#3 = debug_print_init::$10+34 Constant (const byte) sprites_init::$2 = ((byte))sprites_init::$1 Successful SSA optimization Pass2ConstantIdentification -Consolidated constant in assignment print_sbyte_at::at#3 -Consolidated constant in assignment print_sbyte_at::at#4 -Consolidated constant in assignment print_sbyte_at::at#5 -Consolidated constant in assignment print_sbyte_at::at#6 -Consolidated array index constant in *(rotation_matrix#0+0) -Consolidated constant in assignment print_sbyte_at::at#7 -Consolidated array index constant in *(rotation_matrix#0+1) -Consolidated constant in assignment print_sbyte_at::at#8 -Consolidated array index constant in *(rotation_matrix#0+2) -Consolidated constant in assignment print_sbyte_at::at#9 -Consolidated array index constant in *(rotation_matrix#0+3) -Consolidated constant in assignment print_sbyte_at::at#10 -Consolidated array index constant in *(rotation_matrix#0+4) -Consolidated constant in assignment print_sbyte_at::at#11 -Consolidated array index constant in *(rotation_matrix#0+5) -Consolidated constant in assignment print_sbyte_at::at#12 -Consolidated array index constant in *(rotation_matrix#0+6) -Consolidated constant in assignment print_sbyte_at::at#13 -Consolidated array index constant in *(rotation_matrix#0+7) -Consolidated constant in assignment print_sbyte_at::at#14 -Consolidated array index constant in *(rotation_matrix#0+8) Consolidated array index constant in *(rotation_matrix#0+0) Consolidated array index constant in *(rotation_matrix#0+1) Consolidated array index constant in *(rotation_matrix#0+2) Consolidated array index constant in *(rotation_matrix#0+3) -Consolidated array index constant in *(rotation_matrix#0+7) Consolidated array index constant in *(rotation_matrix#0+4) -Consolidated array index constant in *(rotation_matrix#0+6) Consolidated array index constant in *(rotation_matrix#0+5) +Consolidated array index constant in *(rotation_matrix#0+6) +Consolidated array index constant in *(rotation_matrix#0+7) Consolidated array index constant in *(rotation_matrix#0+8) Successful SSA optimization Pass2ConstantAdditionElimination if() condition always true - replacing block destination if(true) goto anim::@2 Successful SSA optimization Pass2ConstantIfs -Fixing inline constructor with calculate_matrix_16::$74 ← *(COSH_HI#4 + calculate_matrix_16::t1#0) w= *(COSH_LO#4 + calculate_matrix_16::t1#0) -Fixing inline constructor with calculate_matrix_16::$75 ← *(COSH_HI#4 + calculate_matrix_16::t2#0) w= *(COSH_LO#4 + calculate_matrix_16::t2#0) -Fixing inline constructor with calculate_matrix_16::$76 ← *(SINH_HI#4 + calculate_matrix_16::t1#0) w= *(SINH_LO#4 + calculate_matrix_16::t1#0) -Fixing inline constructor with calculate_matrix_16::$77 ← *(SINH_HI#4 + calculate_matrix_16::t2#0) w= *(SINH_LO#4 + calculate_matrix_16::t2#0) -Fixing inline constructor with calculate_matrix_16::$78 ← *(SINH_HI#4 + calculate_matrix_16::sy#0) w= *(SINH_LO#4 + calculate_matrix_16::sy#0) -Fixing inline constructor with calculate_matrix_16::$79 ← *(SINH_HI#4 + calculate_matrix_16::t3#0) w= *(SINH_LO#4 + calculate_matrix_16::t3#0) -Fixing inline constructor with calculate_matrix_16::$80 ← *(SINH_HI#4 + calculate_matrix_16::t4#0) w= *(SINH_LO#4 + calculate_matrix_16::t4#0) -Fixing inline constructor with calculate_matrix_16::$81 ← *(COSQ_HI#4 + calculate_matrix_16::t5#0) w= *(COSH_LO#4 + calculate_matrix_16::t5#0) -Fixing inline constructor with calculate_matrix_16::$82 ← *(COSQ_HI#4 + calculate_matrix_16::t6#0) w= *(COSH_LO#4 + calculate_matrix_16::t6#0) -Fixing inline constructor with calculate_matrix_16::$83 ← *(COSQ_HI#4 + calculate_matrix_16::t7#0) w= *(COSH_LO#4 + calculate_matrix_16::t7#0) -Fixing inline constructor with calculate_matrix_16::$84 ← *(COSQ_HI#4 + calculate_matrix_16::t8#0) w= *(COSH_LO#4 + calculate_matrix_16::t8#0) -Fixing inline constructor with calculate_matrix_16::$85 ← *(COSH_HI#4 + calculate_matrix_16::t3#0) w= *(COSH_LO#4 + calculate_matrix_16::t3#0) -Fixing inline constructor with calculate_matrix_16::$86 ← *(COSH_HI#4 + calculate_matrix_16::t4#0) w= *(COSH_LO#4 + calculate_matrix_16::t4#0) -Fixing inline constructor with calculate_matrix_16::$87 ← *(SINQ_HI#4 + calculate_matrix_16::t5#0) w= *(SINH_LO#4 + calculate_matrix_16::t5#0) -Fixing inline constructor with calculate_matrix_16::$88 ← *(SINQ_HI#4 + calculate_matrix_16::t6#0) w= *(SINH_LO#4 + calculate_matrix_16::t6#0) -Fixing inline constructor with calculate_matrix_16::$89 ← *(SINQ_HI#4 + calculate_matrix_16::t7#0) w= *(SINH_LO#4 + calculate_matrix_16::t7#0) -Fixing inline constructor with calculate_matrix_16::$90 ← *(SINQ_HI#4 + calculate_matrix_16::t8#0) w= *(SINH_LO#4 + calculate_matrix_16::t8#0) -Fixing inline constructor with calculate_matrix_16::$91 ← *(SINH_HI#4 + calculate_matrix_16::t9#0) w= *(SINH_LO#4 + calculate_matrix_16::t9#0) -Fixing inline constructor with calculate_matrix_16::$92 ← *(SINH_HI#4 + calculate_matrix_16::t10#0) w= *(SINH_LO#4 + calculate_matrix_16::t10#0) -Fixing inline constructor with calculate_matrix_16::$93 ← *(COSH_HI#4 + calculate_matrix_16::t9#0) w= *(COSH_LO#4 + calculate_matrix_16::t9#0) -Fixing inline constructor with calculate_matrix_16::$94 ← *(COSH_HI#4 + calculate_matrix_16::t10#0) w= *(COSH_LO#4 + calculate_matrix_16::t10#0) -Successful SSA optimization Pass2FixInlineConstructors -Eliminating Noop Cast (byte) print_byte_at::b#0 ← ((byte)) (signed byte) print_sbyte_at::b#24 -Eliminating Noop Cast (byte~) anim::$5 ← ((byte)) *((signed byte*) xr#10) -Eliminating Noop Cast (byte~) anim::$7 ← ((byte)) *((signed byte*) yr#10) -Eliminating Noop Cast (signed word) calculate_matrix_16::cosh_t1#0 ← ((signed word)) (word~) calculate_matrix_16::$74 -Eliminating Noop Cast (signed word) calculate_matrix_16::cosh_t2#0 ← ((signed word)) (word~) calculate_matrix_16::$75 -Eliminating Noop Cast (signed byte~) calculate_matrix_16::$6 ← ((signed byte)) (byte~) calculate_matrix_16::$5 -Eliminating Noop Cast (signed word) calculate_matrix_16::sinh_t1#0 ← ((signed word)) (word~) calculate_matrix_16::$76 -Eliminating Noop Cast (signed word) calculate_matrix_16::sinh_t2#0 ← ((signed word)) (word~) calculate_matrix_16::$77 -Eliminating Noop Cast (signed byte~) calculate_matrix_16::$11 ← ((signed byte)) (byte~) calculate_matrix_16::$10 -Eliminating Noop Cast (signed word) calculate_matrix_16::sinh_sy#0 ← ((signed word)) (word~) calculate_matrix_16::$78 -Eliminating Noop Cast (signed byte~) calculate_matrix_16::$15 ← ((signed byte)) (byte~) calculate_matrix_16::$14 -Eliminating Noop Cast (signed word) calculate_matrix_16::sinh_t3#0 ← ((signed word)) (word~) calculate_matrix_16::$79 -Eliminating Noop Cast (signed word) calculate_matrix_16::sinh_t4#0 ← ((signed word)) (word~) calculate_matrix_16::$80 -Eliminating Noop Cast (signed word) calculate_matrix_16::cosq_t5#0 ← ((signed word)) (word~) calculate_matrix_16::$81 -Eliminating Noop Cast (signed word) calculate_matrix_16::cosq_t6#0 ← ((signed word)) (word~) calculate_matrix_16::$82 -Eliminating Noop Cast (signed word) calculate_matrix_16::cosq_t7#0 ← ((signed word)) (word~) calculate_matrix_16::$83 -Eliminating Noop Cast (signed word) calculate_matrix_16::cosq_t8#0 ← ((signed word)) (word~) calculate_matrix_16::$84 -Eliminating Noop Cast (signed byte~) calculate_matrix_16::$34 ← ((signed byte)) (byte~) calculate_matrix_16::$33 -Eliminating Noop Cast (signed byte~) calculate_matrix_16::$41 ← ((signed byte)) (byte~) calculate_matrix_16::$40 -Eliminating Noop Cast (signed word) calculate_matrix_16::cosh_t3#0 ← ((signed word)) (word~) calculate_matrix_16::$85 -Eliminating Noop Cast (signed word) calculate_matrix_16::cosh_t4#0 ← ((signed word)) (word~) calculate_matrix_16::$86 -Eliminating Noop Cast (signed word) calculate_matrix_16::sinq_t5#0 ← ((signed word)) (word~) calculate_matrix_16::$87 -Eliminating Noop Cast (signed word) calculate_matrix_16::sinq_t6#0 ← ((signed word)) (word~) calculate_matrix_16::$88 -Eliminating Noop Cast (signed word) calculate_matrix_16::sinq_t7#0 ← ((signed word)) (word~) calculate_matrix_16::$89 -Eliminating Noop Cast (signed word) calculate_matrix_16::sinq_t8#0 ← ((signed word)) (word~) calculate_matrix_16::$90 -Eliminating Noop Cast (signed byte~) calculate_matrix_16::$54 ← ((signed byte)) (byte~) calculate_matrix_16::$53 -Eliminating Noop Cast (signed byte~) calculate_matrix_16::$61 ← ((signed byte)) (byte~) calculate_matrix_16::$60 -Eliminating Noop Cast (signed word) calculate_matrix_16::sinh_t9#0 ← ((signed word)) (word~) calculate_matrix_16::$91 -Eliminating Noop Cast (signed word) calculate_matrix_16::sinh_t10#0 ← ((signed word)) (word~) calculate_matrix_16::$92 -Eliminating Noop Cast (signed byte~) calculate_matrix_16::$68 ← ((signed byte)) (byte~) calculate_matrix_16::$67 -Eliminating Noop Cast (signed word) calculate_matrix_16::cosh_t9#0 ← ((signed word)) (word~) calculate_matrix_16::$93 -Eliminating Noop Cast (signed word) calculate_matrix_16::cosh_t10#0 ← ((signed word)) (word~) calculate_matrix_16::$94 -Eliminating Noop Cast (signed byte~) calculate_matrix_16::$73 ← ((signed byte)) (byte~) calculate_matrix_16::$72 +Eliminating Noop Cast (byte~) anim::$5 ← ((byte)) *((signed byte*) xp#7) +Eliminating Noop Cast (byte~) anim::$7 ← ((byte)) *((signed byte*) yp#7) Successful SSA optimization Pass2NopCastElimination Removing unused block anim::@return Successful SSA optimization Pass2EliminateUnusedBlocks Resolved ranged next value anim::i#1 ← ++ anim::i#2 to ++ Resolved ranged comparison value if(anim::i#1!=rangelast(0,7)) goto anim::@7 to (byte/signed byte/word/signed word/dword/signed dword) 8 -Resolved ranged next value debug_print_init::j#1 ← ++ debug_print_init::j#2 to ++ -Resolved ranged comparison value if(debug_print_init::j#1!=rangelast(0,3)) goto debug_print_init::@2 to (byte/signed byte/word/signed word/dword/signed dword) 4 -Resolved ranged next value debug_print_init::i#1 ← ++ debug_print_init::i#2 to ++ -Resolved ranged comparison value if(debug_print_init::i#1!=rangelast(0,7)) goto debug_print_init::@1 to (byte/signed byte/word/signed word/dword/signed dword) 8 -Resolved ranged next value debug_print::i#1 ← ++ debug_print::i#2 to ++ -Resolved ranged comparison value if(debug_print::i#1!=rangelast(0,7)) goto debug_print::@1 to (byte/signed byte/word/signed word/dword/signed dword) 8 Resolved ranged next value sprites_init::i#1 ← ++ sprites_init::i#2 to ++ Resolved ranged comparison value if(sprites_init::i#1!=rangelast(0,7)) goto sprites_init::@1 to (byte/signed byte/word/signed word/dword/signed dword) 8 -Culled Empty Block (label) @3 -Culled Empty Block (label) print_sbyte_at::@6 -Culled Empty Block (label) @14 Culled Empty Block (label) @20 -Culled Empty Block (label) main::@3 +Culled Empty Block (label) main::@2 Culled Empty Block (label) @21 Culled Empty Block (label) anim::@2 Culled Empty Block (label) anim::@5 Culled Empty Block (label) anim::@16 -Culled Empty Block (label) debug_print_init::@17 -Culled Empty Block (label) debug_print_init::@20 Culled Empty Block (label) @25 -Culled Empty Block (label) @30 +Culled Empty Block (label) @31 Successful SSA optimization Pass2CullEmptyBlocks -Self Phi Eliminated (byte*) COSH_HI#4 -Self Phi Eliminated (byte*) COSH_LO#4 -Self Phi Eliminated (byte*) SINH_HI#4 -Self Phi Eliminated (byte*) SINH_LO#4 -Self Phi Eliminated (byte*) COSQ_HI#4 -Self Phi Eliminated (byte*) SINQ_HI#4 +Self Phi Eliminated (signed byte) sz#3 +Self Phi Eliminated (signed byte*) COSH#4 +Self Phi Eliminated (signed byte*) SINH#4 +Self Phi Eliminated (signed byte*) COSQ#4 +Self Phi Eliminated (signed byte*) SINQ#4 Self Phi Eliminated (signed byte*) xr#10 Self Phi Eliminated (signed byte*) yr#10 Self Phi Eliminated (signed byte*) zr#10 Self Phi Eliminated (signed byte*) pp#7 Self Phi Eliminated (signed byte*) xp#7 Self Phi Eliminated (signed byte*) yp#7 -Self Phi Eliminated (byte*) SCREEN#40 -Self Phi Eliminated (byte*) debug_print_init::at_line#1 -Self Phi Eliminated (byte*) debug_print_init::at_cols#2 Successful SSA optimization Pass2SelfPhiElimination -Redundant Phi (byte*) COSH_HI#4 (const byte*) COSH_HI#0 -Redundant Phi (byte*) COSH_LO#4 (const byte*) COSH_LO#0 -Redundant Phi (byte*) SINH_HI#4 (const byte*) SINH_HI#0 -Redundant Phi (byte*) SINH_LO#4 (const byte*) SINH_LO#0 -Redundant Phi (byte*) COSQ_HI#4 (const byte*) COSQ_HI#0 -Redundant Phi (byte*) SINQ_HI#4 (const byte*) SINQ_HI#0 +Redundant Phi (signed byte) sz#3 (const signed byte) sz#0 +Redundant Phi (signed byte*) COSH#4 (const signed byte*) COSH#0 +Redundant Phi (signed byte*) SINH#4 (const signed byte*) SINH#0 +Redundant Phi (signed byte*) COSQ#4 (const signed byte*) COSQ#0 +Redundant Phi (signed byte*) SINQ#4 (const signed byte*) SINQ#0 Redundant Phi (signed byte*) xr#10 (const signed byte*) xr#0 Redundant Phi (signed byte*) yr#10 (const signed byte*) yr#0 Redundant Phi (signed byte*) zr#10 (const signed byte*) zr#0 Redundant Phi (signed byte*) pp#7 (const signed byte*) pp#0 Redundant Phi (signed byte*) xp#7 (const signed byte*) xp#0 Redundant Phi (signed byte*) yp#7 (const signed byte*) yp#0 -Redundant Phi (byte*) SCREEN#40 (const byte*) SCREEN#0 -Redundant Phi (byte*) debug_print_init::at_line#1 (const byte*) debug_print_init::at_line#0 -Redundant Phi (byte*) debug_print_init::at_cols#2 (const byte*) debug_print_init::at_cols#0 Successful SSA optimization Pass2RedundantPhiElimination -Constant (const byte*) debug_print_init::$45 = debug_print_init::at_line#0+debug_print_init::$44 -Constant (const byte*) debug_print_init::$49 = debug_print_init::at_line#0+debug_print_init::$48 -Constant (const byte*) debug_print_init::$53 = debug_print_init::at_line#0+debug_print_init::$52 -Constant (const byte*) debug_print_init::$58 = debug_print_init::at_cols#0+debug_print_init::$57 -Constant (const byte*) debug_print_init::$62 = debug_print_init::at_cols#0+debug_print_init::$61 -Constant (const byte*) debug_print_init::$66 = debug_print_init::at_cols#0+debug_print_init::$65 -Constant (const byte*) debug_print_init::$70 = debug_print_init::at_cols#0+debug_print_init::$69 -Constant (const byte*) debug_print_init::$74 = debug_print_init::at_cols#0+debug_print_init::$73 -Constant (const byte*) debug_print_init::$78 = debug_print_init::at_cols#0+debug_print_init::$77 -Constant (const byte*) debug_print_init::$82 = debug_print_init::at_cols#0+debug_print_init::$81 -Constant (const byte*) debug_print_init::$86 = debug_print_init::at_cols#0+debug_print_init::$85 -Constant (const byte*) debug_print_init::$90 = debug_print_init::at_cols#0+debug_print_init::$89 -Constant (const byte*) debug_print::$1 = SCREEN#0 -Constant (const byte*) debug_print::$5 = SCREEN#0 -Constant (const byte*) debug_print::$9 = SCREEN#0 -Constant (const byte*) debug_print::$13 = SCREEN#0 -Constant (const byte*) debug_print::$17 = SCREEN#0 -Constant (const byte*) debug_print::$21 = SCREEN#0 -Constant (const byte*) debug_print::$25 = SCREEN#0 -Constant (const byte*) debug_print::$29 = SCREEN#0 -Constant (const byte*) debug_print::$33 = SCREEN#0 -Constant (const byte*) debug_print::$37 = SCREEN#0 -Constant (const byte*) debug_print::$41 = SCREEN#0 -Constant (const byte*) debug_print::$45 = SCREEN#0 -Constant (const byte*) debug_print::at_line#0 = SCREEN#0+debug_print::$48 +Constant (const signed byte) calculate_matrix::sz#0 = sz#0 Successful SSA optimization Pass2ConstantIdentification -Constant (const byte*) print_sbyte_at::at#3 = debug_print::$1+debug_print::$0+37 -Constant (const byte*) print_sbyte_at::at#4 = debug_print::$5+debug_print::$4+37 -Constant (const byte*) print_sbyte_at::at#5 = debug_print::$9+debug_print::$8+37 -Constant (const byte*) print_sbyte_at::at#6 = debug_print::$13+debug_print::$12+29 -Constant (const byte*) print_sbyte_at::at#7 = debug_print::$17+debug_print::$16+33 -Constant (const byte*) print_sbyte_at::at#8 = debug_print::$21+debug_print::$20+37 -Constant (const byte*) print_sbyte_at::at#9 = debug_print::$25+debug_print::$24+29 -Constant (const byte*) print_sbyte_at::at#10 = debug_print::$29+debug_print::$28+33 -Constant (const byte*) print_sbyte_at::at#11 = debug_print::$33+debug_print::$32+37 -Constant (const byte*) print_sbyte_at::at#12 = debug_print::$37+debug_print::$36+29 -Constant (const byte*) print_sbyte_at::at#13 = debug_print::$41+debug_print::$40+33 -Constant (const byte*) print_sbyte_at::at#14 = debug_print::$45+debug_print::$44+37 -Constant (const byte*) debug_print::$51 = debug_print::at_line#0+debug_print::$50 -Constant (const byte*) debug_print::$55 = debug_print::at_line#0+debug_print::$54 -Constant (const byte*) debug_print::$59 = debug_print::at_line#0+debug_print::$58 -Constant (const byte*) debug_print::$63 = debug_print::at_line#0+debug_print::$62 -Constant (const byte*) debug_print::$67 = debug_print::at_line#0+debug_print::$66 -Constant (const byte*) debug_print::$71 = debug_print::at_line#0+debug_print::$70 -Successful SSA optimization Pass2ConstantIdentification -Culled Empty Block (label) debug_print::@14 -Successful SSA optimization Pass2CullEmptyBlocks -Inlining constant with var siblings (const byte*) print_str_at::str#1 -Inlining constant with var siblings (const byte*) print_str_at::str#2 -Inlining constant with var siblings (const byte*) print_str_at::str#3 -Inlining constant with var siblings (const byte*) print_str_at::str#4 -Inlining constant with var siblings (const byte*) print_str_at::str#5 -Inlining constant with var siblings (const byte*) print_str_at::str#6 -Inlining constant with var siblings (const byte*) print_str_at::str#7 -Inlining constant with var siblings (const byte*) print_str_at::str#8 -Inlining constant with var siblings (const byte*) print_str_at::str#9 -Inlining constant with var siblings (const byte*) print_str_at::str#10 -Inlining constant with var siblings (const byte*) print_str_at::str#11 -Inlining constant with var siblings (const byte*) print_str_at::str#12 -Inlining constant with var siblings (const byte*) print_str_at::at#4 -Inlining constant with var siblings (const byte*) print_str_at::at#5 -Inlining constant with var siblings (const byte*) print_str_at::at#6 -Inlining constant with var siblings (const byte*) print_str_at::at#7 -Inlining constant with var siblings (const byte*) print_str_at::at#8 -Inlining constant with var siblings (const byte*) print_str_at::at#9 -Inlining constant with var siblings (const byte*) print_str_at::at#10 -Inlining constant with var siblings (const byte*) print_str_at::at#11 -Inlining constant with var siblings (const byte*) print_str_at::at#12 -Inlining constant with var siblings (const byte*) print_str_at::at#1 -Inlining constant with var siblings (const byte*) print_str_at::at#2 -Inlining constant with var siblings (const byte*) print_str_at::at#3 -Inlining constant with var siblings (const byte*) print_sbyte_at::at#3 -Inlining constant with var siblings (const byte*) print_sbyte_at::at#4 -Inlining constant with var siblings (const byte*) print_sbyte_at::at#5 -Inlining constant with var siblings (const byte*) print_sbyte_at::at#6 -Inlining constant with var siblings (const byte*) print_sbyte_at::at#7 -Inlining constant with var siblings (const byte*) print_sbyte_at::at#8 -Inlining constant with var siblings (const byte*) print_sbyte_at::at#9 -Inlining constant with var siblings (const byte*) print_sbyte_at::at#10 -Inlining constant with var siblings (const byte*) print_sbyte_at::at#11 -Inlining constant with var siblings (const byte*) print_sbyte_at::at#12 -Inlining constant with var siblings (const byte*) print_sbyte_at::at#13 -Inlining constant with var siblings (const byte*) print_sbyte_at::at#14 -Inlining constant with var siblings (const byte) print_char_at::ch#0 -Inlining constant with var siblings (const byte) print_char_at::ch#1 -Inlining constant with var siblings (const byte*) print_cls::sc#0 +Consolidated array index constant in assignment *(SINH#0+calculate_matrix::sz#0 + calculate_matrix::t3#0) +Consolidated array index constant in assignment *(SINH#0+-calculate_matrix::sz#0 + calculate_matrix::t4#0) +Successful SSA optimization Pass2ConstantAdditionElimination Inlining constant with var siblings (const byte) anim::i#0 -Inlining constant with var siblings (const byte) debug_print_init::c#0 -Inlining constant with var siblings (const byte) debug_print_init::i#0 -Inlining constant with var siblings (const byte) debug_print_init::j#0 -Inlining constant with var siblings (const byte) debug_print::c#0 -Inlining constant with var siblings (const byte) debug_print::i#0 Inlining constant with var siblings (const byte) sprites_init::i#0 -Inlining constant with var siblings (const signed byte) sx#17 -Inlining constant with var siblings (const signed byte) sy#18 -Inlining constant with var siblings (const signed byte) sz#18 -Constant inlined print_str_at::str#12 = (const string) debug_print_init::str11 -Constant inlined print_str_at::str#11 = (const string) debug_print_init::str10 -Constant inlined print_str_at::str#10 = (const string) debug_print_init::str9 -Constant inlined debug_print_init::$37 = (byte/signed byte/word/signed word/dword/signed dword) 40*(byte/signed byte/word/signed word/dword/signed dword) 24 -Constant inlined debug_print_init::$34 = (byte/signed byte/word/signed word/dword/signed dword) 40*(byte/signed byte/word/signed word/dword/signed dword) 23 -Constant inlined debug_print_init::$31 = (byte/signed byte/word/signed word/dword/signed dword) 40*(byte/signed byte/word/signed word/dword/signed dword) 22 -Constant inlined debug_print::$16 = (byte/signed byte/word/signed word/dword/signed dword) 40*(byte/signed byte/word/signed word/dword/signed dword) 4 -Constant inlined debug_print::$17 = (const byte*) SCREEN#0 -Constant inlined debug_print::$12 = (byte/signed byte/word/signed word/dword/signed dword) 40*(byte/signed byte/word/signed word/dword/signed dword) 4 +Inlining constant with var siblings (const signed byte) sx#16 +Inlining constant with var siblings (const signed byte) sy#16 +Constant inlined sx#16 = (byte/signed byte/word/signed word/dword/signed dword) 0 Constant inlined sprites_init::i#0 = (byte/signed byte/word/signed word/dword/signed dword) 0 -Constant inlined debug_print::$13 = (const byte*) SCREEN#0 -Constant inlined debug_print_init::$28 = (byte/signed byte/word/signed word/dword/signed dword) 40*(byte/signed byte/word/signed word/dword/signed dword) 21 -Constant inlined debug_print_init::$25 = (byte/signed byte/word/signed word/dword/signed dword) 40*(byte/signed byte/word/signed word/dword/signed dword) 20 -Constant inlined debug_print_init::$22 = (byte/signed byte/word/signed word/dword/signed dword) 40*(byte/signed byte/word/signed word/dword/signed dword) 19 -Constant inlined debug_print_init::j#0 = (byte/signed byte/word/signed word/dword/signed dword) 0 -Constant inlined print_str_at::str#1 = (const string) debug_print_init::str -Constant inlined print_str_at::str#2 = (const string) debug_print_init::str1 -Constant inlined print_str_at::str#3 = (const string) debug_print_init::str2 -Constant inlined print_str_at::str#4 = (const string) debug_print_init::str3 -Constant inlined $10 = (const byte[]) print_hextab#0 -Constant inlined print_cls::$0 = (const byte*) print_screen#0+(word/signed word/dword/signed dword) 1000 -Constant inlined debug_print::$67 = (const byte*) debug_print::at_line#0+(byte/signed byte/word/signed word/dword/signed dword) 40*(byte/signed byte/word/signed word/dword/signed dword) 4 -Constant inlined debug_print::$66 = (byte/signed byte/word/signed word/dword/signed dword) 40*(byte/signed byte/word/signed word/dword/signed dword) 4 -Constant inlined debug_print::$63 = (const byte*) debug_print::at_line#0+(byte/signed byte/word/signed word/dword/signed dword) 40*(byte/signed byte/word/signed word/dword/signed dword) 3 -Constant inlined sz#18 = (byte/signed byte/word/signed word/dword/signed dword) 0 -Constant inlined print_str_at::at#11 = (const byte*) SCREEN#0+(byte/signed byte/word/signed word/dword/signed dword) 40*(byte/signed byte/word/signed word/dword/signed dword) 23 -Constant inlined print_str_at::at#10 = (const byte*) SCREEN#0+(byte/signed byte/word/signed word/dword/signed dword) 40*(byte/signed byte/word/signed word/dword/signed dword) 22 -Constant inlined debug_print::$70 = (byte/signed byte/word/signed word/dword/signed dword) 40*(byte/signed byte/word/signed word/dword/signed dword) 5 -Constant inlined debug_print::$71 = (const byte*) debug_print::at_line#0+(byte/signed byte/word/signed word/dword/signed dword) 40*(byte/signed byte/word/signed word/dword/signed dword) 5 -Constant inlined print_str_at::at#12 = (const byte*) SCREEN#0+(byte/signed byte/word/signed word/dword/signed dword) 40*(byte/signed byte/word/signed word/dword/signed dword) 24 -Constant inlined debug_print_init::$58 = (const byte*) debug_print_init::at_cols#0+(byte/signed byte/word/signed word/dword/signed dword) 40*(byte/signed byte/word/signed word/dword/signed dword) 0 -Constant inlined print_char_at::ch#0 = (byte) '-' -Constant inlined debug_print_init::$57 = (byte/signed byte/word/signed word/dword/signed dword) 40*(byte/signed byte/word/signed word/dword/signed dword) 0 -Constant inlined print_char_at::ch#1 = (byte) ' ' -Constant inlined print_str_at::str#9 = (const string) debug_print_init::str8 -Constant inlined debug_print_init::$53 = (const byte*) debug_print_init::at_line#0+(byte/signed byte/word/signed word/dword/signed dword) 40*(byte/signed byte/word/signed word/dword/signed dword) 2 -Constant inlined debug_print_init::$52 = (byte/signed byte/word/signed word/dword/signed dword) 40*(byte/signed byte/word/signed word/dword/signed dword) 2 -Constant inlined print_str_at::str#5 = (const string) debug_print_init::str4 -Constant inlined print_str_at::str#6 = (const string) debug_print_init::str5 -Constant inlined print_str_at::str#7 = (const string) debug_print_init::str6 -Constant inlined print_str_at::str#8 = (const string) debug_print_init::str7 -Constant inlined debug_print::c#0 = (byte/signed byte/word/signed word/dword/signed dword) 4 -Constant inlined print_sbyte_at::at#13 = (const byte*) SCREEN#0+(byte/signed byte/word/signed word/dword/signed dword) 40*(byte/signed byte/word/signed word/dword/signed dword) 6+(byte/signed byte/word/signed word/dword/signed dword) 33 -Constant inlined print_sbyte_at::at#12 = (const byte*) SCREEN#0+(byte/signed byte/word/signed word/dword/signed dword) 40*(byte/signed byte/word/signed word/dword/signed dword) 6+(byte/signed byte/word/signed word/dword/signed dword) 29 -Constant inlined print_sbyte_at::at#14 = (const byte*) SCREEN#0+(byte/signed byte/word/signed word/dword/signed dword) 40*(byte/signed byte/word/signed word/dword/signed dword) 6+(byte/signed byte/word/signed word/dword/signed dword) 37 -Constant inlined print_sbyte_at::at#11 = (const byte*) SCREEN#0+(byte/signed byte/word/signed word/dword/signed dword) 40*(byte/signed byte/word/signed word/dword/signed dword) 5+(byte/signed byte/word/signed word/dword/signed dword) 37 -Constant inlined print_sbyte_at::at#10 = (const byte*) SCREEN#0+(byte/signed byte/word/signed word/dword/signed dword) 40*(byte/signed byte/word/signed word/dword/signed dword) 5+(byte/signed byte/word/signed word/dword/signed dword) 33 -Constant inlined print_cls::sc#0 = (const byte*) print_screen#0 -Constant inlined print_sbyte_at::at#6 = (const byte*) SCREEN#0+(byte/signed byte/word/signed word/dword/signed dword) 40*(byte/signed byte/word/signed word/dword/signed dword) 4+(byte/signed byte/word/signed word/dword/signed dword) 29 -Constant inlined print_sbyte_at::at#5 = (const byte*) SCREEN#0+(byte/signed byte/word/signed word/dword/signed dword) 40*(byte/signed byte/word/signed word/dword/signed dword) 2+(byte/signed byte/word/signed word/dword/signed dword) 37 -Constant inlined print_sbyte_at::at#4 = (const byte*) SCREEN#0+(byte/signed byte/word/signed word/dword/signed dword) 40*(byte/signed byte/word/signed word/dword/signed dword) 1+(byte/signed byte/word/signed word/dword/signed dword) 37 -Constant inlined print_sbyte_at::at#3 = (const byte*) SCREEN#0+(byte/signed byte/word/signed word/dword/signed dword) 40*(byte/signed byte/word/signed word/dword/signed dword) 0+(byte/signed byte/word/signed word/dword/signed dword) 37 -Constant inlined print_sbyte_at::at#9 = (const byte*) SCREEN#0+(byte/signed byte/word/signed word/dword/signed dword) 40*(byte/signed byte/word/signed word/dword/signed dword) 5+(byte/signed byte/word/signed word/dword/signed dword) 29 -Constant inlined print_sbyte_at::at#8 = (const byte*) SCREEN#0+(byte/signed byte/word/signed word/dword/signed dword) 40*(byte/signed byte/word/signed word/dword/signed dword) 4+(byte/signed byte/word/signed word/dword/signed dword) 37 -Constant inlined print_sbyte_at::at#7 = (const byte*) SCREEN#0+(byte/signed byte/word/signed word/dword/signed dword) 40*(byte/signed byte/word/signed word/dword/signed dword) 4+(byte/signed byte/word/signed word/dword/signed dword) 33 -Constant inlined main::$1 = ((word))(const byte*) mulf_sqr1#0 -Constant inlined debug_print_init::$49 = (const byte*) debug_print_init::at_line#0+(byte/signed byte/word/signed word/dword/signed dword) 40*(byte/signed byte/word/signed word/dword/signed dword) 1 -Constant inlined main::$2 = ((word))(const byte*) mulf_sqr2#0 -Constant inlined debug_print_init::$48 = (byte/signed byte/word/signed word/dword/signed dword) 40*(byte/signed byte/word/signed word/dword/signed dword) 1 -Constant inlined debug_print_init::$45 = (const byte*) debug_print_init::at_line#0+(byte/signed byte/word/signed word/dword/signed dword) 40*(byte/signed byte/word/signed word/dword/signed dword) 0 -Constant inlined debug_print_init::i#0 = (byte/signed byte/word/signed word/dword/signed dword) 0 -Constant inlined debug_print_init::$44 = (byte/signed byte/word/signed word/dword/signed dword) 40*(byte/signed byte/word/signed word/dword/signed dword) 0 -Constant inlined debug_print_init::$42 = (byte/signed byte/word/signed word/dword/signed dword) 16*(byte/signed byte/word/signed word/dword/signed dword) 40 -Constant inlined debug_print_init::$40 = (byte/signed byte/word/signed word/dword/signed dword) 16*(byte/signed byte/word/signed word/dword/signed dword) 40 -Constant inlined debug_print_init::$70 = (const byte*) debug_print_init::at_cols#0+(byte/signed byte/word/signed word/dword/signed dword) 40*(byte/signed byte/word/signed word/dword/signed dword) 3 -Constant inlined print_str_at::at#4 = (const byte*) SCREEN#0+(byte/signed byte/word/signed word/dword/signed dword) 40*(byte/signed byte/word/signed word/dword/signed dword) 16 -Constant inlined print_str_at::at#3 = (const byte*) SCREEN#0+(byte/signed byte/word/signed word/dword/signed dword) 40*(byte/signed byte/word/signed word/dword/signed dword) 2+(byte/signed byte/word/signed word/dword/signed dword) 34 -Constant inlined print_str_at::at#2 = (const byte*) SCREEN#0+(byte/signed byte/word/signed word/dword/signed dword) 40*(byte/signed byte/word/signed word/dword/signed dword) 1+(byte/signed byte/word/signed word/dword/signed dword) 34 -Constant inlined print_str_at::at#1 = (const byte*) SCREEN#0+(byte/signed byte/word/signed word/dword/signed dword) 40*(byte/signed byte/word/signed word/dword/signed dword) 0+(byte/signed byte/word/signed word/dword/signed dword) 34 -Constant inlined debug_print_init::$9 = (byte/signed byte/word/signed word/dword/signed dword) 40*(byte/signed byte/word/signed word/dword/signed dword) 2 -Constant inlined debug_print::$48 = (byte/signed byte/word/signed word/dword/signed dword) 19*(byte/signed byte/word/signed word/dword/signed dword) 40 -Constant inlined debug_print_init::$6 = (const byte*) SCREEN#0+(byte/signed byte/word/signed word/dword/signed dword) 40*(byte/signed byte/word/signed word/dword/signed dword) 1 -Constant inlined debug_print::$45 = (const byte*) SCREEN#0 -Constant inlined print_str_at::at#9 = (const byte*) SCREEN#0+(byte/signed byte/word/signed word/dword/signed dword) 40*(byte/signed byte/word/signed word/dword/signed dword) 21 -Constant inlined $0 = -(byte/signed byte/word/signed word/dword/signed dword) 95 -Constant inlined print_str_at::at#8 = (const byte*) SCREEN#0+(byte/signed byte/word/signed word/dword/signed dword) 40*(byte/signed byte/word/signed word/dword/signed dword) 20 -Constant inlined debug_print::$44 = (byte/signed byte/word/signed word/dword/signed dword) 40*(byte/signed byte/word/signed word/dword/signed dword) 6 -Constant inlined $1 = -(byte/signed byte/word/signed word/dword/signed dword) 95 -Constant inlined print_str_at::at#7 = (const byte*) SCREEN#0+(byte/signed byte/word/signed word/dword/signed dword) 40*(byte/signed byte/word/signed word/dword/signed dword) 19 -Constant inlined debug_print::$41 = (const byte*) SCREEN#0 -Constant inlined $2 = -(byte/signed byte/word/signed word/dword/signed dword) 95 -Constant inlined print_str_at::at#6 = (const byte*) SCREEN#0+(byte/signed byte/word/signed word/dword/signed dword) 40*(byte/signed byte/word/signed word/dword/signed dword) 18 +Constant inlined $0 = -(byte/signed byte/word/signed word/dword/signed dword) 52 +Constant inlined $1 = -(byte/signed byte/word/signed word/dword/signed dword) 52 +Constant inlined $2 = -(byte/signed byte/word/signed word/dword/signed dword) 52 Constant inlined anim::i#0 = (byte/signed byte/word/signed word/dword/signed dword) 0 -Constant inlined $3 = -(byte/signed byte/word/signed word/dword/signed dword) 0 -Constant inlined print_str_at::at#5 = (const byte*) SCREEN#0+(byte/signed byte/word/signed word/dword/signed dword) 40*(byte/signed byte/word/signed word/dword/signed dword) 17 -Constant inlined sx#17 = (byte/signed byte/word/signed word/dword/signed dword) 0 -Constant inlined debug_print::$50 = (byte/signed byte/word/signed word/dword/signed dword) 40*(byte/signed byte/word/signed word/dword/signed dword) 0 -Constant inlined debug_print::$51 = (const byte*) debug_print::at_line#0+(byte/signed byte/word/signed word/dword/signed dword) 40*(byte/signed byte/word/signed word/dword/signed dword) 0 -Constant inlined debug_print_init::$78 = (const byte*) debug_print_init::at_cols#0+(byte/signed byte/word/signed word/dword/signed dword) 40*(byte/signed byte/word/signed word/dword/signed dword) 5 -Constant inlined debug_print_init::$77 = (byte/signed byte/word/signed word/dword/signed dword) 40*(byte/signed byte/word/signed word/dword/signed dword) 5 -Constant inlined debug_print_init::$74 = (const byte*) debug_print_init::at_cols#0+(byte/signed byte/word/signed word/dword/signed dword) 40*(byte/signed byte/word/signed word/dword/signed dword) 4 -Constant inlined debug_print_init::$73 = (byte/signed byte/word/signed word/dword/signed dword) 40*(byte/signed byte/word/signed word/dword/signed dword) 4 -Constant inlined debug_print::$1 = (const byte*) SCREEN#0 -Constant inlined debug_print::$0 = (byte/signed byte/word/signed word/dword/signed dword) 40*(byte/signed byte/word/signed word/dword/signed dword) 0 -Constant inlined debug_print::$58 = (byte/signed byte/word/signed word/dword/signed dword) 40*(byte/signed byte/word/signed word/dword/signed dword) 2 -Constant inlined debug_print::$59 = (const byte*) debug_print::at_line#0+(byte/signed byte/word/signed word/dword/signed dword) 40*(byte/signed byte/word/signed word/dword/signed dword) 2 -Constant inlined debug_print::$54 = (byte/signed byte/word/signed word/dword/signed dword) 40*(byte/signed byte/word/signed word/dword/signed dword) 1 -Constant inlined debug_print::$55 = (const byte*) debug_print::at_line#0+(byte/signed byte/word/signed word/dword/signed dword) 40*(byte/signed byte/word/signed word/dword/signed dword) 1 -Constant inlined debug_print_init::$1 = (byte/signed byte/word/signed word/dword/signed dword) 40*(byte/signed byte/word/signed word/dword/signed dword) 0 -Constant inlined debug_print::$62 = (byte/signed byte/word/signed word/dword/signed dword) 40*(byte/signed byte/word/signed word/dword/signed dword) 3 -Constant inlined debug_print_init::$5 = (byte/signed byte/word/signed word/dword/signed dword) 40*(byte/signed byte/word/signed word/dword/signed dword) 1 -Constant inlined debug_print_init::$69 = (byte/signed byte/word/signed word/dword/signed dword) 40*(byte/signed byte/word/signed word/dword/signed dword) 3 -Constant inlined debug_print_init::$2 = (const byte*) SCREEN#0+(byte/signed byte/word/signed word/dword/signed dword) 40*(byte/signed byte/word/signed word/dword/signed dword) 0 +Constant inlined sy#16 = (byte/signed byte/word/signed word/dword/signed dword) 0 +Constant inlined $3 = -(byte/signed byte/word/signed word/dword/signed dword) 52 +Constant inlined $4 = -(byte/signed byte/word/signed word/dword/signed dword) 52 +Constant inlined $5 = -(byte/signed byte/word/signed word/dword/signed dword) 52 +Constant inlined main::$1 = ((word))(const byte*) mulf_sqr1#0 +Constant inlined main::$2 = ((word))(const byte*) mulf_sqr2#0 Constant inlined sprites_init::$1 = (const byte*) SPRITE#0/(byte/signed byte/word/signed word/dword/signed dword) 64 -Constant inlined debug_print_init::$66 = (const byte*) debug_print_init::at_cols#0+(byte/signed byte/word/signed word/dword/signed dword) 40*(byte/signed byte/word/signed word/dword/signed dword) 2 -Constant inlined debug_print::$5 = (const byte*) SCREEN#0 Constant inlined sprites_init::$2 = ((byte))(const byte*) SPRITE#0/(byte/signed byte/word/signed word/dword/signed dword) 64 -Constant inlined debug_print_init::$65 = (byte/signed byte/word/signed word/dword/signed dword) 40*(byte/signed byte/word/signed word/dword/signed dword) 2 -Constant inlined debug_print::$4 = (byte/signed byte/word/signed word/dword/signed dword) 40*(byte/signed byte/word/signed word/dword/signed dword) 1 -Constant inlined debug_print_init::$62 = (const byte*) debug_print_init::at_cols#0+(byte/signed byte/word/signed word/dword/signed dword) 40*(byte/signed byte/word/signed word/dword/signed dword) 1 -Constant inlined debug_print::$9 = (const byte*) SCREEN#0 -Constant inlined debug_print_init::$61 = (byte/signed byte/word/signed word/dword/signed dword) 40*(byte/signed byte/word/signed word/dword/signed dword) 1 -Constant inlined debug_print::$8 = (byte/signed byte/word/signed word/dword/signed dword) 40*(byte/signed byte/word/signed word/dword/signed dword) 2 -Constant inlined debug_print_init::$90 = (const byte*) debug_print_init::at_cols#0+(byte/signed byte/word/signed word/dword/signed dword) 40*(byte/signed byte/word/signed word/dword/signed dword) 8 -Constant inlined debug_print::$29 = (const byte*) SCREEN#0 -Constant inlined debug_print::$28 = (byte/signed byte/word/signed word/dword/signed dword) 40*(byte/signed byte/word/signed word/dword/signed dword) 5 -Constant inlined debug_print::$25 = (const byte*) SCREEN#0 -Constant inlined debug_print::$24 = (byte/signed byte/word/signed word/dword/signed dword) 40*(byte/signed byte/word/signed word/dword/signed dword) 5 -Constant inlined debug_print::$21 = (const byte*) SCREEN#0 -Constant inlined debug_print::$20 = (byte/signed byte/word/signed word/dword/signed dword) 40*(byte/signed byte/word/signed word/dword/signed dword) 4 -Constant inlined debug_print_init::$19 = (byte/signed byte/word/signed word/dword/signed dword) 40*(byte/signed byte/word/signed word/dword/signed dword) 18 -Constant inlined debug_print_init::$16 = (byte/signed byte/word/signed word/dword/signed dword) 40*(byte/signed byte/word/signed word/dword/signed dword) 17 -Constant inlined debug_print_init::$13 = (byte/signed byte/word/signed word/dword/signed dword) 40*(byte/signed byte/word/signed word/dword/signed dword) 16 -Constant inlined debug_print_init::$10 = (const byte*) SCREEN#0+(byte/signed byte/word/signed word/dword/signed dword) 40*(byte/signed byte/word/signed word/dword/signed dword) 2 -Constant inlined debug_print_init::$81 = (byte/signed byte/word/signed word/dword/signed dword) 40*(byte/signed byte/word/signed word/dword/signed dword) 6 -Constant inlined debug_print::$36 = (byte/signed byte/word/signed word/dword/signed dword) 40*(byte/signed byte/word/signed word/dword/signed dword) 6 -Constant inlined sy#18 = (byte/signed byte/word/signed word/dword/signed dword) 0 -Constant inlined debug_print::$37 = (const byte*) SCREEN#0 -Constant inlined debug_print::$32 = (byte/signed byte/word/signed word/dword/signed dword) 40*(byte/signed byte/word/signed word/dword/signed dword) 5 -Constant inlined debug_print::$33 = (const byte*) SCREEN#0 -Constant inlined debug_print::$40 = (byte/signed byte/word/signed word/dword/signed dword) 40*(byte/signed byte/word/signed word/dword/signed dword) 6 -Constant inlined debug_print_init::c#0 = (byte/signed byte/word/signed word/dword/signed dword) 4 -Constant inlined debug_print_init::$89 = (byte/signed byte/word/signed word/dword/signed dword) 40*(byte/signed byte/word/signed word/dword/signed dword) 8 -Constant inlined debug_print::i#0 = (byte/signed byte/word/signed word/dword/signed dword) 0 -Constant inlined debug_print_init::$86 = (const byte*) debug_print_init::at_cols#0+(byte/signed byte/word/signed word/dword/signed dword) 40*(byte/signed byte/word/signed word/dword/signed dword) 7 -Constant inlined debug_print_init::$85 = (byte/signed byte/word/signed word/dword/signed dword) 40*(byte/signed byte/word/signed word/dword/signed dword) 7 -Constant inlined debug_print_init::$82 = (const byte*) debug_print_init::at_cols#0+(byte/signed byte/word/signed word/dword/signed dword) 40*(byte/signed byte/word/signed word/dword/signed dword) 6 +Constant inlined calculate_matrix::sz#0 = (const signed byte) sz#0 Successful SSA optimization Pass2ConstantInlining -Simplifying constant multiply by zero 40*0 -Simplifying constant multiply by zero 40*0 -Simplifying constant multiply by zero 40*0 -Simplifying constant multiply by zero 40*0 Simplifying constant plus zero rotation_matrix#0+0 -Simplifying constant multiply by zero 40*0 -Simplifying constant plus zero rotation_matrix#0+0 -Simplifying constant plus zero SCREEN#0+0 -Simplifying constant plus zero 0+37 -Simplifying constant plus zero debug_print_init::at_line#0+0 -Simplifying constant plus zero debug_print_init::at_cols#0+0 -Simplifying constant plus zero debug_print::at_line#0+0 -Added new block during phi lifting anim::@19(between anim::@17 and anim::@7) -Added new block during phi lifting debug_print::@21(between debug_print::@20 and debug_print::@1) -Added new block during phi lifting debug_print_init::@21(between debug_print_init::@3 and debug_print_init::@1) -Added new block during phi lifting debug_print_init::@22(between debug_print_init::@2 and debug_print_init::@2) -Added new block during phi lifting print_cls::@3(between print_cls::@1 and print_cls::@1) +Added new block during phi lifting anim::@18(between anim::@17 and anim::@7) Added new block during phi lifting sprites_init::@3(between sprites_init::@1 and sprites_init::@1) Adding NOP phi() at start of @begin Adding NOP phi() at start of @end -Adding NOP phi() at start of main::@2 Adding NOP phi() at start of anim Adding NOP phi() at start of anim::@15 -Adding NOP phi() at start of debug_print_init -Adding NOP phi() at start of debug_print_init::@5 -Adding NOP phi() at start of debug_print_init::@6 -Adding NOP phi() at start of debug_print_init::@7 -Adding NOP phi() at start of debug_print_init::@8 -Adding NOP phi() at start of debug_print_init::@9 -Adding NOP phi() at start of debug_print_init::@10 -Adding NOP phi() at start of debug_print_init::@11 -Adding NOP phi() at start of debug_print_init::@12 -Adding NOP phi() at start of debug_print_init::@13 -Adding NOP phi() at start of debug_print_init::@14 -Adding NOP phi() at start of debug_print_init::@15 -Adding NOP phi() at start of debug_print_init::@16 -Adding NOP phi() at start of print_cls CALL GRAPH Calls in [] to main:11 -Calls in [main] to sprites_init:14 debug_print_init:17 anim:19 -Calls in [anim] to calculate_matrix_16:28 store_matrix:30 rotate_matrix:36 debug_print:51 -Calls in [debug_print] to print_sbyte_at:62 print_sbyte_at:65 print_sbyte_at:68 print_sbyte_at:71 print_sbyte_at:74 print_sbyte_at:77 print_sbyte_at:80 print_sbyte_at:83 print_sbyte_at:86 print_sbyte_at:89 print_sbyte_at:92 print_sbyte_at:95 print_sbyte_at:101 print_sbyte_at:106 print_sbyte_at:111 print_sbyte_at:116 print_sbyte_at:121 print_sbyte_at:126 -Calls in [print_sbyte_at] to print_char_at:137 print_byte_at:141 print_char_at:145 -Calls in [print_byte_at] to print_char_at:156 print_char_at:162 -Calls in [debug_print_init] to print_cls:247 print_str_at:249 print_str_at:251 print_str_at:253 print_str_at:255 print_str_at:257 print_str_at:259 print_str_at:261 print_str_at:263 print_str_at:265 print_str_at:267 print_str_at:269 print_str_at:271 print_sbyte_at:277 print_sbyte_at:282 print_sbyte_at:287 +Calls in [main] to sprites_init:14 anim:17 +Calls in [anim] to calculate_matrix:25 store_matrix:27 rotate_matrix:33 -Created 20 initial phi equivalence classes -Coalesced [56] sx#28 ← sx#3 -Coalesced [57] sy#29 ← sy#3 -Coalesced [58] sz#30 ← sz#3 -Coalesced [59] anim::i#4 ← anim::i#1 -Coalesced [61] print_sbyte_at::b#28 ← print_sbyte_at::b#4 -Coalesced [64] print_sbyte_at::b#39 ← print_sbyte_at::b#5 -Coalesced [67] print_sbyte_at::b#40 ← print_sbyte_at::b#6 -Coalesced [70] print_sbyte_at::b#41 ← print_sbyte_at::b#7 -Coalesced [73] print_sbyte_at::b#42 ← print_sbyte_at::b#8 -Coalesced [76] print_sbyte_at::b#43 ← print_sbyte_at::b#9 -Coalesced [79] print_sbyte_at::b#44 ← print_sbyte_at::b#10 -Coalesced [82] print_sbyte_at::b#45 ← print_sbyte_at::b#11 -Coalesced [85] print_sbyte_at::b#30 ← print_sbyte_at::b#12 -Coalesced [88] print_sbyte_at::b#31 ← print_sbyte_at::b#13 -Coalesced [91] print_sbyte_at::b#32 ← print_sbyte_at::b#14 -Coalesced [94] print_sbyte_at::b#33 ← print_sbyte_at::b#15 -Coalesced [99] print_sbyte_at::b#29 ← print_sbyte_at::b#16 -Coalesced [100] print_sbyte_at::at#27 ← print_sbyte_at::at#15 -Coalesced [104] print_sbyte_at::b#34 ← print_sbyte_at::b#17 -Coalesced [105] print_sbyte_at::at#28 ← print_sbyte_at::at#16 -Coalesced [109] print_sbyte_at::b#35 ← print_sbyte_at::b#18 -Coalesced [110] print_sbyte_at::at#29 ← print_sbyte_at::at#17 -Coalesced [114] print_sbyte_at::b#36 ← print_sbyte_at::b#19 -Coalesced [115] print_sbyte_at::at#30 ← print_sbyte_at::at#18 -Coalesced [119] print_sbyte_at::b#37 ← print_sbyte_at::b#20 -Coalesced [120] print_sbyte_at::at#31 ← print_sbyte_at::at#19 -Coalesced [124] print_sbyte_at::b#38 ← print_sbyte_at::b#21 -Coalesced [125] print_sbyte_at::at#32 ← print_sbyte_at::at#20 -Coalesced [131] debug_print::c#9 ← debug_print::c#1 -Coalesced [132] debug_print::i#9 ← debug_print::i#1 -Coalesced [136] print_char_at::at#8 ← print_char_at::at#1 -Coalesced [138] print_sbyte_at::b#50 ← print_sbyte_at::b#22 -Coalesced [144] print_char_at::at#7 ← print_char_at::at#0 -Coalesced [147] print_sbyte_at::b#49 ← print_sbyte_at::b#0 -Coalesced [154] print_char_at::ch#5 ← print_char_at::ch#2 -Coalesced [155] print_char_at::at#5 ← print_char_at::at#2 -Coalesced [160] print_char_at::ch#6 ← print_char_at::ch#3 -Coalesced [161] print_char_at::at#6 ← print_char_at::at#3 -Coalesced [275] print_sbyte_at::b#46 ← print_sbyte_at::b#1 -Coalesced [276] print_sbyte_at::at#33 ← print_sbyte_at::at#0 -Coalesced [280] print_sbyte_at::b#47 ← print_sbyte_at::b#2 -Coalesced [281] print_sbyte_at::at#34 ← print_sbyte_at::at#1 -Coalesced [285] print_sbyte_at::b#48 ← print_sbyte_at::b#3 -Coalesced [286] print_sbyte_at::at#35 ← print_sbyte_at::at#2 -Coalesced [323] debug_print_init::c#8 ← debug_print_init::c#1 -Coalesced [324] debug_print_init::i#8 ← debug_print_init::i#1 -Coalesced [325] debug_print_init::j#3 ← debug_print_init::j#1 -Coalesced [327] print_str_at::str#16 ← print_str_at::str#15 -Coalesced [328] print_str_at::at#16 ← print_str_at::at#15 -Coalesced [335] print_str_at::str#17 ← print_str_at::str#0 -Coalesced [336] print_str_at::at#17 ← print_str_at::at#0 -Coalesced [343] print_cls::sc#3 ← print_cls::sc#1 -Coalesced [352] sprites_init::i#3 ← sprites_init::i#1 -Coalesced down to 17 phi equivalence classes -Culled Empty Block (label) anim::@19 -Culled Empty Block (label) debug_print::@21 -Culled Empty Block (label) debug_print_init::@21 -Culled Empty Block (label) debug_print_init::@22 -Culled Empty Block (label) print_cls::@3 +Created 4 initial phi equivalence classes +Coalesced [51] sx#25 ← sx#3 +Coalesced [52] sy#25 ← sy#3 +Coalesced [53] anim::i#4 ← anim::i#1 +Coalesced [113] sprites_init::i#3 ← sprites_init::i#1 +Coalesced down to 4 phi equivalence classes +Culled Empty Block (label) anim::@18 Culled Empty Block (label) sprites_init::@3 Adding NOP phi() at start of @begin Adding NOP phi() at start of @end -Adding NOP phi() at start of main::@2 Adding NOP phi() at start of anim Adding NOP phi() at start of anim::@15 -Adding NOP phi() at start of debug_print_init -Adding NOP phi() at start of debug_print_init::@5 -Adding NOP phi() at start of debug_print_init::@6 -Adding NOP phi() at start of debug_print_init::@7 -Adding NOP phi() at start of debug_print_init::@8 -Adding NOP phi() at start of debug_print_init::@9 -Adding NOP phi() at start of debug_print_init::@10 -Adding NOP phi() at start of debug_print_init::@11 -Adding NOP phi() at start of debug_print_init::@12 -Adding NOP phi() at start of debug_print_init::@13 -Adding NOP phi() at start of debug_print_init::@14 -Adding NOP phi() at start of debug_print_init::@15 -Adding NOP phi() at start of debug_print_init::@16 -Adding NOP phi() at start of print_cls FINAL CONTROL FLOW GRAPH @begin: scope:[] from [0] phi() - to:@29 -@29: scope:[] from @begin + to:@30 +@30: scope:[] from @begin kickasm(location (const byte*) mulf_sqr1#0) {{ .for(var i=0;i<$200;i++) { .if(i<=159) { .byte round((i*i)/256) } .if(i>159 && i<=351 ) { .byte round(((i-256)*(i-256))/256) } @@ -3554,479 +1578,157 @@ FINAL CONTROL FLOW GRAPH }} [11] call main to:@end -@end: scope:[] from @29 +@end: scope:[] from @30 [12] phi() -main: scope:[main] from @29 +main: scope:[main] from @30 asm { sei } [14] call sprites_init to:main::@1 main::@1: scope:[main] from main [15] *((const word*) psp1#0) ← ((word))(const byte*) mulf_sqr1#0 [16] *((const word*) psp2#0) ← ((word))(const byte*) mulf_sqr2#0 - [17] call debug_print_init - to:main::@2 -main::@2: scope:[main] from main::@1 - [18] phi() - [19] call anim + [17] call anim to:main::@return -main::@return: scope:[main] from main::@2 - [20] return +main::@return: scope:[main] from main::@1 + [18] return to:@return -anim: scope:[anim] from main::@2 - [21] phi() +anim: scope:[anim] from main::@1 + [19] phi() to:anim::@1 -anim::@1: scope:[anim] from anim anim::@18 - [22] (signed byte) sz#10 ← phi( anim/(byte/signed byte/word/signed word/dword/signed dword) 0 anim::@18/(signed byte) sz#3 ) - [22] (signed byte) sy#10 ← phi( anim/(byte/signed byte/word/signed word/dword/signed dword) 0 anim::@18/(signed byte) sy#3 ) - [22] (signed byte) sx#10 ← phi( anim/(byte/signed byte/word/signed word/dword/signed dword) 0 anim::@18/(signed byte) sx#3 ) +anim::@1: scope:[anim] from anim anim::@13 + [20] (signed byte) sy#10 ← phi( anim/(byte/signed byte/word/signed word/dword/signed dword) 0 anim::@13/(signed byte) sy#3 ) + [20] (signed byte) sx#10 ← phi( anim/(byte/signed byte/word/signed word/dword/signed dword) 0 anim::@13/(signed byte) sx#3 ) to:anim::@4 anim::@4: scope:[anim] from anim::@1 anim::@4 - [23] if(*((const byte*) RASTER#0)!=(byte/word/signed word/dword/signed dword) 255) goto anim::@4 + [21] if(*((const byte*) RASTER#0)!=(byte/word/signed word/dword/signed dword) 255) goto anim::@4 to:anim::@6 anim::@6: scope:[anim] from anim::@4 - [24] *((const byte*) BORDERCOL#0) ← ++ *((const byte*) BORDERCOL#0) - [25] (signed byte) calculate_matrix_16::sx#0 ← (signed byte) sx#10 - [26] (signed byte) calculate_matrix_16::sy#0 ← (signed byte) sy#10 - [27] (signed byte) calculate_matrix_16::sz#0 ← (signed byte) sz#10 - [28] call calculate_matrix_16 + [22] *((const byte*) BORDERCOL#0) ← ++ *((const byte*) BORDERCOL#0) + [23] (signed byte) calculate_matrix::sx#0 ← (signed byte) sx#10 + [24] (signed byte) calculate_matrix::sy#0 ← (signed byte) sy#10 + [25] call calculate_matrix to:anim::@15 anim::@15: scope:[anim] from anim::@6 - [29] phi() - [30] call store_matrix + [26] phi() + [27] call store_matrix to:anim::@7 anim::@7: scope:[anim] from anim::@15 anim::@17 - [31] (byte) anim::i#2 ← phi( anim::@15/(byte/signed byte/word/signed word/dword/signed dword) 0 anim::@17/(byte) anim::i#1 ) - [32] *((const byte*) BORDERCOL#0) ← ++ *((const byte*) BORDERCOL#0) - [33] (signed byte) rotate_matrix::x#0 ← *((const signed byte[8]) xs#0 + (byte) anim::i#2) - [34] (signed byte) rotate_matrix::y#0 ← *((const signed byte[8]) ys#0 + (byte) anim::i#2) - [35] (signed byte) rotate_matrix::z#0 ← *((const signed byte[8]) zs#0 + (byte) anim::i#2) - [36] call rotate_matrix + [28] (byte) anim::i#2 ← phi( anim::@15/(byte/signed byte/word/signed word/dword/signed dword) 0 anim::@17/(byte) anim::i#1 ) + [29] *((const byte*) BORDERCOL#0) ← ++ *((const byte*) BORDERCOL#0) + [30] (signed byte) rotate_matrix::x#0 ← *((const signed byte[8]) xs#0 + (byte) anim::i#2) + [31] (signed byte) rotate_matrix::y#0 ← *((const signed byte[8]) ys#0 + (byte) anim::i#2) + [32] (signed byte) rotate_matrix::z#0 ← *((const signed byte[8]) zs#0 + (byte) anim::i#2) + [33] call rotate_matrix to:anim::@17 anim::@17: scope:[anim] from anim::@7 - [37] *((const signed byte[8]) xrs#0 + (byte) anim::i#2) ← *((const signed byte*) xr#0) - [38] *((const signed byte[8]) yrs#0 + (byte) anim::i#2) ← *((const signed byte*) yr#0) - [39] *((const signed byte[8]) zrs#0 + (byte) anim::i#2) ← *((const signed byte*) zr#0) - [40] *((const signed byte[8]) pps#0 + (byte) anim::i#2) ← *((const signed byte*) pp#0) - [41] *((const signed byte[8]) xps#0 + (byte) anim::i#2) ← *((const signed byte*) xp#0) - [42] *((const signed byte[8]) yps#0 + (byte) anim::i#2) ← *((const signed byte*) yp#0) - [43] (byte) anim::i2#0 ← (byte) anim::i#2 << (byte/signed byte/word/signed word/dword/signed dword) 1 - [44] (byte/word/signed word/dword/signed dword~) anim::$6 ← (byte/word/signed word/dword/signed dword) 128 + (byte)*((const signed byte*) xr#0) - [45] *((const byte*) SPRITES_XPOS#0 + (byte) anim::i2#0) ← (byte/word/signed word/dword/signed dword~) anim::$6 - [46] (byte/word/signed word/dword/signed dword~) anim::$8 ← (byte/word/signed word/dword/signed dword) 128 + (byte)*((const signed byte*) yr#0) - [47] *((const byte*) SPRITES_YPOS#0 + (byte) anim::i2#0) ← (byte/word/signed word/dword/signed dword~) anim::$8 - [48] (byte) anim::i#1 ← ++ (byte) anim::i#2 - [49] if((byte) anim::i#1!=(byte/signed byte/word/signed word/dword/signed dword) 8) goto anim::@7 + [34] *((const signed byte[8]) xrs#0 + (byte) anim::i#2) ← *((const signed byte*) xr#0) + [35] *((const signed byte[8]) yrs#0 + (byte) anim::i#2) ← *((const signed byte*) yr#0) + [36] *((const signed byte[8]) zrs#0 + (byte) anim::i#2) ← *((const signed byte*) zr#0) + [37] *((const signed byte[8]) pps#0 + (byte) anim::i#2) ← *((const signed byte*) pp#0) + [38] *((const signed byte[8]) xps#0 + (byte) anim::i#2) ← *((const signed byte*) xp#0) + [39] *((const signed byte[8]) yps#0 + (byte) anim::i#2) ← *((const signed byte*) yp#0) + [40] (byte) anim::i2#0 ← (byte) anim::i#2 << (byte/signed byte/word/signed word/dword/signed dword) 1 + [41] (byte/word/signed word/dword/signed dword~) anim::$6 ← (byte/word/signed word/dword/signed dword) 128 + (byte)*((const signed byte*) xp#0) + [42] *((const byte*) SPRITES_XPOS#0 + (byte) anim::i2#0) ← (byte/word/signed word/dword/signed dword~) anim::$6 + [43] (byte/word/signed word/dword/signed dword~) anim::$8 ← (byte/word/signed word/dword/signed dword) 128 + (byte)*((const signed byte*) yp#0) + [44] *((const byte*) SPRITES_YPOS#0 + (byte) anim::i2#0) ← (byte/word/signed word/dword/signed dword~) anim::$8 + [45] (byte) anim::i#1 ← ++ (byte) anim::i#2 + [46] if((byte) anim::i#1!=(byte/signed byte/word/signed word/dword/signed dword) 8) goto anim::@7 to:anim::@13 anim::@13: scope:[anim] from anim::@17 - [50] *((const byte*) BORDERCOL#0) ← (const byte) LIGHT_GREY#0 - [51] call debug_print - to:anim::@18 -anim::@18: scope:[anim] from anim::@13 - [52] *((const byte*) BORDERCOL#0) ← (const byte) LIGHT_BLUE#0 - [53] (signed byte) sx#3 ← (signed byte) sx#10 - (byte/signed byte/word/signed word/dword/signed dword) 1 - [54] (signed byte) sy#3 ← (signed byte) sy#10 + (byte/signed byte/word/signed word/dword/signed dword) 1 - [55] (signed byte) sz#3 ← (signed byte) sz#10 - (byte/signed byte/word/signed word/dword/signed dword) 1 + [47] *((const byte*) BORDERCOL#0) ← (const byte) LIGHT_GREY#0 + [48] *((const byte*) BORDERCOL#0) ← (const byte) LIGHT_BLUE#0 + [49] (signed byte) sx#3 ← (signed byte) sx#10 + (byte/signed byte/word/signed word/dword/signed dword) 2 + [50] (signed byte) sy#3 ← (signed byte) sy#10 - (byte/signed byte/word/signed word/dword/signed dword) 3 to:anim::@1 -debug_print: scope:[debug_print] from anim::@13 - [56] (signed byte) print_sbyte_at::b#4 ← (signed byte) sx#10 - [57] call print_sbyte_at - to:debug_print::@3 -debug_print::@3: scope:[debug_print] from debug_print - [58] (signed byte) print_sbyte_at::b#5 ← (signed byte) sy#10 - [59] call print_sbyte_at - to:debug_print::@4 -debug_print::@4: scope:[debug_print] from debug_print::@3 - [60] (signed byte) print_sbyte_at::b#6 ← (signed byte) sz#10 - [61] call print_sbyte_at - to:debug_print::@5 -debug_print::@5: scope:[debug_print] from debug_print::@4 - [62] (signed byte) print_sbyte_at::b#7 ← *((const signed byte[9]) rotation_matrix#0) - [63] call print_sbyte_at - to:debug_print::@6 -debug_print::@6: scope:[debug_print] from debug_print::@5 - [64] (signed byte) print_sbyte_at::b#8 ← *((const signed byte[9]) rotation_matrix#0+(byte/signed byte/word/signed word/dword/signed dword) 1) - [65] call print_sbyte_at - to:debug_print::@7 -debug_print::@7: scope:[debug_print] from debug_print::@6 - [66] (signed byte) print_sbyte_at::b#9 ← *((const signed byte[9]) rotation_matrix#0+(byte/signed byte/word/signed word/dword/signed dword) 2) - [67] call print_sbyte_at - to:debug_print::@8 -debug_print::@8: scope:[debug_print] from debug_print::@7 - [68] (signed byte) print_sbyte_at::b#10 ← *((const signed byte[9]) rotation_matrix#0+(byte/signed byte/word/signed word/dword/signed dword) 3) - [69] call print_sbyte_at - to:debug_print::@9 -debug_print::@9: scope:[debug_print] from debug_print::@8 - [70] (signed byte) print_sbyte_at::b#11 ← *((const signed byte[9]) rotation_matrix#0+(byte/signed byte/word/signed word/dword/signed dword) 4) - [71] call print_sbyte_at - to:debug_print::@10 -debug_print::@10: scope:[debug_print] from debug_print::@9 - [72] (signed byte) print_sbyte_at::b#12 ← *((const signed byte[9]) rotation_matrix#0+(byte/signed byte/word/signed word/dword/signed dword) 5) - [73] call print_sbyte_at - to:debug_print::@11 -debug_print::@11: scope:[debug_print] from debug_print::@10 - [74] (signed byte) print_sbyte_at::b#13 ← *((const signed byte[9]) rotation_matrix#0+(byte/signed byte/word/signed word/dword/signed dword) 6) - [75] call print_sbyte_at - to:debug_print::@12 -debug_print::@12: scope:[debug_print] from debug_print::@11 - [76] (signed byte) print_sbyte_at::b#14 ← *((const signed byte[9]) rotation_matrix#0+(byte/signed byte/word/signed word/dword/signed dword) 7) - [77] call print_sbyte_at - to:debug_print::@13 -debug_print::@13: scope:[debug_print] from debug_print::@12 - [78] (signed byte) print_sbyte_at::b#15 ← *((const signed byte[9]) rotation_matrix#0+(byte/signed byte/word/signed word/dword/signed dword) 8) - [79] call print_sbyte_at - to:debug_print::@1 -debug_print::@1: scope:[debug_print] from debug_print::@13 debug_print::@20 - [80] (byte) debug_print::i#2 ← phi( debug_print::@13/(byte/signed byte/word/signed word/dword/signed dword) 0 debug_print::@20/(byte) debug_print::i#1 ) - [80] (byte) debug_print::c#2 ← phi( debug_print::@13/(byte/signed byte/word/signed word/dword/signed dword) 4 debug_print::@20/(byte) debug_print::c#1 ) - [81] (byte*) print_sbyte_at::at#15 ← (const byte*) debug_print::at_line#0 + (byte) debug_print::c#2 - [82] (signed byte) print_sbyte_at::b#16 ← *((const signed byte[8]) xrs#0 + (byte) debug_print::i#2) - [83] call print_sbyte_at - to:debug_print::@15 -debug_print::@15: scope:[debug_print] from debug_print::@1 - [84] (byte*) print_sbyte_at::at#16 ← (const byte*) debug_print::at_line#0+(byte/signed byte/word/signed word/dword/signed dword) 40*(byte/signed byte/word/signed word/dword/signed dword) 1 + (byte) debug_print::c#2 - [85] (signed byte) print_sbyte_at::b#17 ← *((const signed byte[8]) yrs#0 + (byte) debug_print::i#2) - [86] call print_sbyte_at - to:debug_print::@16 -debug_print::@16: scope:[debug_print] from debug_print::@15 - [87] (byte*) print_sbyte_at::at#17 ← (const byte*) debug_print::at_line#0+(byte/signed byte/word/signed word/dword/signed dword) 40*(byte/signed byte/word/signed word/dword/signed dword) 2 + (byte) debug_print::c#2 - [88] (signed byte) print_sbyte_at::b#18 ← *((const signed byte[8]) zrs#0 + (byte) debug_print::i#2) - [89] call print_sbyte_at - to:debug_print::@17 -debug_print::@17: scope:[debug_print] from debug_print::@16 - [90] (byte*) print_sbyte_at::at#18 ← (const byte*) debug_print::at_line#0+(byte/signed byte/word/signed word/dword/signed dword) 40*(byte/signed byte/word/signed word/dword/signed dword) 3 + (byte) debug_print::c#2 - [91] (signed byte) print_sbyte_at::b#19 ← *((const signed byte[8]) pps#0 + (byte) debug_print::i#2) - [92] call print_sbyte_at - to:debug_print::@18 -debug_print::@18: scope:[debug_print] from debug_print::@17 - [93] (byte*) print_sbyte_at::at#19 ← (const byte*) debug_print::at_line#0+(byte/signed byte/word/signed word/dword/signed dword) 40*(byte/signed byte/word/signed word/dword/signed dword) 4 + (byte) debug_print::c#2 - [94] (signed byte) print_sbyte_at::b#20 ← *((const signed byte[8]) xps#0 + (byte) debug_print::i#2) - [95] call print_sbyte_at - to:debug_print::@19 -debug_print::@19: scope:[debug_print] from debug_print::@18 - [96] (byte*) print_sbyte_at::at#20 ← (const byte*) debug_print::at_line#0+(byte/signed byte/word/signed word/dword/signed dword) 40*(byte/signed byte/word/signed word/dword/signed dword) 5 + (byte) debug_print::c#2 - [97] (signed byte) print_sbyte_at::b#21 ← *((const signed byte[8]) yps#0 + (byte) debug_print::i#2) - [98] call print_sbyte_at - to:debug_print::@20 -debug_print::@20: scope:[debug_print] from debug_print::@19 - [99] (byte) debug_print::c#1 ← (byte) debug_print::c#2 + (byte/signed byte/word/signed word/dword/signed dword) 4 - [100] (byte) debug_print::i#1 ← ++ (byte) debug_print::i#2 - [101] if((byte) debug_print::i#1!=(byte/signed byte/word/signed word/dword/signed dword) 8) goto debug_print::@1 - to:debug_print::@return -debug_print::@return: scope:[debug_print] from debug_print::@20 - [102] return - to:@return -print_sbyte_at: scope:[print_sbyte_at] from debug_print debug_print::@1 debug_print::@10 debug_print::@11 debug_print::@12 debug_print::@13 debug_print::@15 debug_print::@16 debug_print::@17 debug_print::@18 debug_print::@19 debug_print::@3 debug_print::@4 debug_print::@5 debug_print::@6 debug_print::@7 debug_print::@8 debug_print::@9 debug_print_init::@1 debug_print_init::@18 debug_print_init::@19 - [103] (byte*) print_sbyte_at::at#21 ← phi( debug_print/(const byte*) SCREEN#0+(byte/signed byte/word/signed word/dword/signed dword) 37 debug_print::@1/(byte*) print_sbyte_at::at#15 debug_print::@10/(const byte*) SCREEN#0+(byte/signed byte/word/signed word/dword/signed dword) 40*(byte/signed byte/word/signed word/dword/signed dword) 5+(byte/signed byte/word/signed word/dword/signed dword) 37 debug_print::@11/(const byte*) SCREEN#0+(byte/signed byte/word/signed word/dword/signed dword) 40*(byte/signed byte/word/signed word/dword/signed dword) 6+(byte/signed byte/word/signed word/dword/signed dword) 29 debug_print::@12/(const byte*) SCREEN#0+(byte/signed byte/word/signed word/dword/signed dword) 40*(byte/signed byte/word/signed word/dword/signed dword) 6+(byte/signed byte/word/signed word/dword/signed dword) 33 debug_print::@13/(const byte*) SCREEN#0+(byte/signed byte/word/signed word/dword/signed dword) 40*(byte/signed byte/word/signed word/dword/signed dword) 6+(byte/signed byte/word/signed word/dword/signed dword) 37 debug_print::@15/(byte*) print_sbyte_at::at#16 debug_print::@16/(byte*) print_sbyte_at::at#17 debug_print::@17/(byte*) print_sbyte_at::at#18 debug_print::@18/(byte*) print_sbyte_at::at#19 debug_print::@19/(byte*) print_sbyte_at::at#20 debug_print::@3/(const byte*) SCREEN#0+(byte/signed byte/word/signed word/dword/signed dword) 40*(byte/signed byte/word/signed word/dword/signed dword) 1+(byte/signed byte/word/signed word/dword/signed dword) 37 debug_print::@4/(const byte*) SCREEN#0+(byte/signed byte/word/signed word/dword/signed dword) 40*(byte/signed byte/word/signed word/dword/signed dword) 2+(byte/signed byte/word/signed word/dword/signed dword) 37 debug_print::@5/(const byte*) SCREEN#0+(byte/signed byte/word/signed word/dword/signed dword) 40*(byte/signed byte/word/signed word/dword/signed dword) 4+(byte/signed byte/word/signed word/dword/signed dword) 29 debug_print::@6/(const byte*) SCREEN#0+(byte/signed byte/word/signed word/dword/signed dword) 40*(byte/signed byte/word/signed word/dword/signed dword) 4+(byte/signed byte/word/signed word/dword/signed dword) 33 debug_print::@7/(const byte*) SCREEN#0+(byte/signed byte/word/signed word/dword/signed dword) 40*(byte/signed byte/word/signed word/dword/signed dword) 4+(byte/signed byte/word/signed word/dword/signed dword) 37 debug_print::@8/(const byte*) SCREEN#0+(byte/signed byte/word/signed word/dword/signed dword) 40*(byte/signed byte/word/signed word/dword/signed dword) 5+(byte/signed byte/word/signed word/dword/signed dword) 29 debug_print::@9/(const byte*) SCREEN#0+(byte/signed byte/word/signed word/dword/signed dword) 40*(byte/signed byte/word/signed word/dword/signed dword) 5+(byte/signed byte/word/signed word/dword/signed dword) 33 debug_print_init::@1/(byte*) print_sbyte_at::at#0 debug_print_init::@18/(byte*) print_sbyte_at::at#1 debug_print_init::@19/(byte*) print_sbyte_at::at#2 ) - [103] (signed byte) print_sbyte_at::b#22 ← phi( debug_print/(signed byte) print_sbyte_at::b#4 debug_print::@1/(signed byte) print_sbyte_at::b#16 debug_print::@10/(signed byte) print_sbyte_at::b#12 debug_print::@11/(signed byte) print_sbyte_at::b#13 debug_print::@12/(signed byte) print_sbyte_at::b#14 debug_print::@13/(signed byte) print_sbyte_at::b#15 debug_print::@15/(signed byte) print_sbyte_at::b#17 debug_print::@16/(signed byte) print_sbyte_at::b#18 debug_print::@17/(signed byte) print_sbyte_at::b#19 debug_print::@18/(signed byte) print_sbyte_at::b#20 debug_print::@19/(signed byte) print_sbyte_at::b#21 debug_print::@3/(signed byte) print_sbyte_at::b#5 debug_print::@4/(signed byte) print_sbyte_at::b#6 debug_print::@5/(signed byte) print_sbyte_at::b#7 debug_print::@6/(signed byte) print_sbyte_at::b#8 debug_print::@7/(signed byte) print_sbyte_at::b#9 debug_print::@8/(signed byte) print_sbyte_at::b#10 debug_print::@9/(signed byte) print_sbyte_at::b#11 debug_print_init::@1/(signed byte) print_sbyte_at::b#1 debug_print_init::@18/(signed byte) print_sbyte_at::b#2 debug_print_init::@19/(signed byte) print_sbyte_at::b#3 ) - [104] if((signed byte) print_sbyte_at::b#22<(byte/signed byte/word/signed word/dword/signed dword) 0) goto print_sbyte_at::@1 - to:print_sbyte_at::@3 -print_sbyte_at::@3: scope:[print_sbyte_at] from print_sbyte_at - [105] (byte*) print_char_at::at#1 ← (byte*) print_sbyte_at::at#21 - [106] call print_char_at - to:print_sbyte_at::@2 -print_sbyte_at::@2: scope:[print_sbyte_at] from print_sbyte_at::@3 print_sbyte_at::@5 - [107] (signed byte) print_sbyte_at::b#24 ← phi( print_sbyte_at::@5/(signed byte) print_sbyte_at::b#0 print_sbyte_at::@3/(signed byte) print_sbyte_at::b#22 ) - [108] (byte*) print_byte_at::at#0 ← (byte*) print_sbyte_at::at#21 + (byte/signed byte/word/signed word/dword/signed dword) 1 - [109] call print_byte_at - to:print_sbyte_at::@return -print_sbyte_at::@return: scope:[print_sbyte_at] from print_sbyte_at::@2 - [110] return - to:@return -print_sbyte_at::@1: scope:[print_sbyte_at] from print_sbyte_at - [111] (byte*) print_char_at::at#0 ← (byte*) print_sbyte_at::at#21 - [112] call print_char_at - to:print_sbyte_at::@5 -print_sbyte_at::@5: scope:[print_sbyte_at] from print_sbyte_at::@1 - [113] (signed byte) print_sbyte_at::b#0 ← - (signed byte) print_sbyte_at::b#22 - to:print_sbyte_at::@2 -print_char_at: scope:[print_char_at] from print_byte_at print_byte_at::@1 print_sbyte_at::@1 print_sbyte_at::@3 - [114] (byte*) print_char_at::at#4 ← phi( print_byte_at/(byte*) print_char_at::at#2 print_byte_at::@1/(byte*) print_char_at::at#3 print_sbyte_at::@1/(byte*) print_char_at::at#0 print_sbyte_at::@3/(byte*) print_char_at::at#1 ) - [114] (byte) print_char_at::ch#4 ← phi( print_byte_at/(byte) print_char_at::ch#2 print_byte_at::@1/(byte) print_char_at::ch#3 print_sbyte_at::@1/(byte) '-' print_sbyte_at::@3/(byte) ' ' ) - [115] *((byte*) print_char_at::at#4) ← (byte) print_char_at::ch#4 - to:print_char_at::@return -print_char_at::@return: scope:[print_char_at] from print_char_at - [116] return - to:@return -print_byte_at: scope:[print_byte_at] from print_sbyte_at::@2 - [117] (byte~) print_byte_at::$0 ← (byte)(signed byte) print_sbyte_at::b#24 >> (byte/signed byte/word/signed word/dword/signed dword) 4 - [118] (byte) print_char_at::ch#2 ← *((const byte[]) print_hextab#0 + (byte~) print_byte_at::$0) - [119] (byte*) print_char_at::at#2 ← (byte*) print_byte_at::at#0 - [120] call print_char_at - to:print_byte_at::@1 -print_byte_at::@1: scope:[print_byte_at] from print_byte_at - [121] (byte~) print_byte_at::$2 ← (byte)(signed byte) print_sbyte_at::b#24 & (byte/signed byte/word/signed word/dword/signed dword) 15 - [122] (byte*) print_char_at::at#3 ← (byte*) print_byte_at::at#0 + (byte/signed byte/word/signed word/dword/signed dword) 1 - [123] (byte) print_char_at::ch#3 ← *((const byte[]) print_hextab#0 + (byte~) print_byte_at::$2) - [124] call print_char_at - to:print_byte_at::@return -print_byte_at::@return: scope:[print_byte_at] from print_byte_at::@1 - [125] return - to:@return rotate_matrix: scope:[rotate_matrix] from anim::@7 - [126] *((const signed byte*) xr#0) ← (signed byte) rotate_matrix::x#0 - [127] *((const signed byte*) yr#0) ← (signed byte) rotate_matrix::y#0 - [128] *((const signed byte*) zr#0) ← (signed byte) rotate_matrix::z#0 + [51] *((const signed byte*) xr#0) ← (signed byte) rotate_matrix::x#0 + [52] *((const signed byte*) yr#0) ← (signed byte) rotate_matrix::y#0 + [53] *((const signed byte*) zr#0) ← (signed byte) rotate_matrix::z#0 asm { ldxzr C1: ldamulf_sqr1,x sec C2: sbcmulf_sqr2,x staC3+1 F1: ldamulf_sqr1,x sec F2: sbcmulf_sqr2,x staF3+1 I1: ldamulf_sqr1,x sec I2: sbcmulf_sqr2,x staI3+1 ldxxr ldyyr I3: lda#0 clc G1: adcmulf_sqr1,x sec G2: sbcmulf_sqr2,x clc H1: adcmulf_sqr1,y sec H2: sbcmulf_sqr2,y stazr staPP+1 PP: ldaPERSP_Z stapp stapsp1 eor#$ff stapsp2 C3: lda#0 clc A1: adcmulf_sqr1,x sec A2: sbcmulf_sqr2,x clc B1: adcmulf_sqr1,y sec B2: sbcmulf_sqr2,y staxr staXX+1 clc F3: lda#0 clc D1: adcmulf_sqr1,x sec D2: sbcmulf_sqr2,x clc E1: adcmulf_sqr1,y sec E2: sbcmulf_sqr2,y stayr tay lda(psp1),y sec sbc(psp2),y stayp XX: ldy#0 lda(psp1),y sec sbc(psp2),y staxp } to:rotate_matrix::@return rotate_matrix::@return: scope:[rotate_matrix] from rotate_matrix - [130] return + [55] return to:@return store_matrix: scope:[store_matrix] from anim::@15 asm { ldarotation_matrix+0 starotate_matrix.A1+1 eor#$ff starotate_matrix.A2+1 ldarotation_matrix+1 starotate_matrix.B1+1 eor#$ff starotate_matrix.B2+1 ldarotation_matrix+2 starotate_matrix.C1+1 eor#$ff starotate_matrix.C2+1 ldarotation_matrix+3 starotate_matrix.D1+1 eor#$ff starotate_matrix.D2+1 ldarotation_matrix+4 starotate_matrix.E1+1 eor#$ff starotate_matrix.E2+1 ldarotation_matrix+5 starotate_matrix.F1+1 eor#$ff starotate_matrix.F2+1 ldarotation_matrix+6 starotate_matrix.G1+1 eor#$ff starotate_matrix.G2+1 ldarotation_matrix+7 starotate_matrix.H1+1 eor#$ff starotate_matrix.H2+1 ldarotation_matrix+8 starotate_matrix.I1+1 eor#$ff starotate_matrix.I2+1 } to:store_matrix::@return store_matrix::@return: scope:[store_matrix] from store_matrix - [132] return + [57] return to:@return -calculate_matrix_16: scope:[calculate_matrix_16] from anim::@6 - [133] (signed byte) calculate_matrix_16::t1#0 ← (signed byte) calculate_matrix_16::sy#0 - (signed byte) calculate_matrix_16::sz#0 - [134] (signed byte) calculate_matrix_16::t2#0 ← (signed byte) calculate_matrix_16::sy#0 + (signed byte) calculate_matrix_16::sz#0 - [135] (word~) calculate_matrix_16::$74 ← *((const byte*) COSH_HI#0 + (signed byte) calculate_matrix_16::t1#0) w= *((const byte*) COSH_LO#0 + (signed byte) calculate_matrix_16::t1#0) - [136] (word~) calculate_matrix_16::$75 ← *((const byte*) COSH_HI#0 + (signed byte) calculate_matrix_16::t2#0) w= *((const byte*) COSH_LO#0 + (signed byte) calculate_matrix_16::t2#0) - [137] (signed word~) calculate_matrix_16::$4 ← (signed word)(word~) calculate_matrix_16::$74 + (signed word)(word~) calculate_matrix_16::$75 - [138] (byte~) calculate_matrix_16::$5 ← > (signed word~) calculate_matrix_16::$4 - [139] *((const signed byte[9]) rotation_matrix#0) ← (signed byte)(byte~) calculate_matrix_16::$5 - [140] (word~) calculate_matrix_16::$76 ← *((const byte*) SINH_HI#0 + (signed byte) calculate_matrix_16::t1#0) w= *((const byte*) SINH_LO#0 + (signed byte) calculate_matrix_16::t1#0) - [141] (word~) calculate_matrix_16::$77 ← *((const byte*) SINH_HI#0 + (signed byte) calculate_matrix_16::t2#0) w= *((const byte*) SINH_LO#0 + (signed byte) calculate_matrix_16::t2#0) - [142] (signed word~) calculate_matrix_16::$9 ← (signed word)(word~) calculate_matrix_16::$76 - (signed word)(word~) calculate_matrix_16::$77 - [143] (byte~) calculate_matrix_16::$10 ← > (signed word~) calculate_matrix_16::$9 - [144] *((const signed byte[9]) rotation_matrix#0+(byte/signed byte/word/signed word/dword/signed dword) 1) ← (signed byte)(byte~) calculate_matrix_16::$10 - [145] (word~) calculate_matrix_16::$78 ← *((const byte*) SINH_HI#0 + (signed byte) calculate_matrix_16::sy#0) w= *((const byte*) SINH_LO#0 + (signed byte) calculate_matrix_16::sy#0) - [146] (signed word~) calculate_matrix_16::$13 ← (signed word)(word~) calculate_matrix_16::$78 + (signed word)(word~) calculate_matrix_16::$78 - [147] (byte~) calculate_matrix_16::$14 ← > (signed word~) calculate_matrix_16::$13 - [148] *((const signed byte[9]) rotation_matrix#0+(byte/signed byte/word/signed word/dword/signed dword) 2) ← (signed byte)(byte~) calculate_matrix_16::$14 - [149] (signed byte) calculate_matrix_16::t3#0 ← (signed byte) calculate_matrix_16::sx#0 + (signed byte) calculate_matrix_16::sz#0 - [150] (signed byte) calculate_matrix_16::t4#0 ← (signed byte) calculate_matrix_16::sx#0 - (signed byte) calculate_matrix_16::sz#0 - [151] (signed byte) calculate_matrix_16::t5#0 ← (signed byte) calculate_matrix_16::sx#0 + (signed byte) calculate_matrix_16::t2#0 - [152] (signed byte) calculate_matrix_16::t6#0 ← (signed byte) calculate_matrix_16::sx#0 - (signed byte) calculate_matrix_16::t1#0 - [153] (signed byte) calculate_matrix_16::t7#0 ← (signed byte) calculate_matrix_16::sx#0 + (signed byte) calculate_matrix_16::t1#0 - [154] (signed byte) calculate_matrix_16::t8#0 ← (signed byte) calculate_matrix_16::t2#0 - (signed byte) calculate_matrix_16::sx#0 - [155] (word~) calculate_matrix_16::$79 ← *((const byte*) SINH_HI#0 + (signed byte) calculate_matrix_16::t3#0) w= *((const byte*) SINH_LO#0 + (signed byte) calculate_matrix_16::t3#0) - [156] (word~) calculate_matrix_16::$80 ← *((const byte*) SINH_HI#0 + (signed byte) calculate_matrix_16::t4#0) w= *((const byte*) SINH_LO#0 + (signed byte) calculate_matrix_16::t4#0) - [157] (word~) calculate_matrix_16::$81 ← *((const byte*) COSQ_HI#0 + (signed byte) calculate_matrix_16::t5#0) w= *((const byte*) COSH_LO#0 + (signed byte) calculate_matrix_16::t5#0) - [158] (word~) calculate_matrix_16::$82 ← *((const byte*) COSQ_HI#0 + (signed byte) calculate_matrix_16::t6#0) w= *((const byte*) COSH_LO#0 + (signed byte) calculate_matrix_16::t6#0) - [159] (word~) calculate_matrix_16::$83 ← *((const byte*) COSQ_HI#0 + (signed byte) calculate_matrix_16::t7#0) w= *((const byte*) COSH_LO#0 + (signed byte) calculate_matrix_16::t7#0) - [160] (word~) calculate_matrix_16::$84 ← *((const byte*) COSQ_HI#0 + (signed byte) calculate_matrix_16::t8#0) w= *((const byte*) COSH_LO#0 + (signed byte) calculate_matrix_16::t8#0) - [161] (signed word~) calculate_matrix_16::$28 ← (signed word)(word~) calculate_matrix_16::$79 - (signed word)(word~) calculate_matrix_16::$80 - [162] (signed word~) calculate_matrix_16::$29 ← (signed word~) calculate_matrix_16::$28 + (signed word)(word~) calculate_matrix_16::$82 - [163] (signed word~) calculate_matrix_16::$30 ← (signed word~) calculate_matrix_16::$29 - (signed word)(word~) calculate_matrix_16::$81 - [164] (signed word~) calculate_matrix_16::$31 ← (signed word~) calculate_matrix_16::$30 + (signed word)(word~) calculate_matrix_16::$84 - [165] (signed word~) calculate_matrix_16::$32 ← (signed word~) calculate_matrix_16::$31 - (signed word)(word~) calculate_matrix_16::$83 - [166] (byte~) calculate_matrix_16::$33 ← > (signed word~) calculate_matrix_16::$32 - [167] *((const signed byte[9]) rotation_matrix#0+(byte/signed byte/word/signed word/dword/signed dword) 3) ← (signed byte)(byte~) calculate_matrix_16::$33 - [168] (signed word~) calculate_matrix_16::$35 ← (signed word)(word~) calculate_matrix_16::$79 + (signed word)(word~) calculate_matrix_16::$80 - [169] (signed word~) calculate_matrix_16::$36 ← (signed word~) calculate_matrix_16::$35 + (signed word)(word~) calculate_matrix_16::$82 - [170] (signed word~) calculate_matrix_16::$37 ← (signed word~) calculate_matrix_16::$36 - (signed word)(word~) calculate_matrix_16::$81 - [171] (signed word~) calculate_matrix_16::$38 ← (signed word~) calculate_matrix_16::$37 + (signed word)(word~) calculate_matrix_16::$83 - [172] (signed word~) calculate_matrix_16::$39 ← (signed word~) calculate_matrix_16::$38 - (signed word)(word~) calculate_matrix_16::$84 - [173] (byte~) calculate_matrix_16::$40 ← > (signed word~) calculate_matrix_16::$39 - [174] *((const signed byte[9]) rotation_matrix#0+(byte/signed byte/word/signed word/dword/signed dword) 7) ← (signed byte)(byte~) calculate_matrix_16::$40 - [175] (word~) calculate_matrix_16::$85 ← *((const byte*) COSH_HI#0 + (signed byte) calculate_matrix_16::t3#0) w= *((const byte*) COSH_LO#0 + (signed byte) calculate_matrix_16::t3#0) - [176] (word~) calculate_matrix_16::$86 ← *((const byte*) COSH_HI#0 + (signed byte) calculate_matrix_16::t4#0) w= *((const byte*) COSH_LO#0 + (signed byte) calculate_matrix_16::t4#0) - [177] (word~) calculate_matrix_16::$87 ← *((const byte*) SINQ_HI#0 + (signed byte) calculate_matrix_16::t5#0) w= *((const byte*) SINH_LO#0 + (signed byte) calculate_matrix_16::t5#0) - [178] (word~) calculate_matrix_16::$88 ← *((const byte*) SINQ_HI#0 + (signed byte) calculate_matrix_16::t6#0) w= *((const byte*) SINH_LO#0 + (signed byte) calculate_matrix_16::t6#0) - [179] (word~) calculate_matrix_16::$89 ← *((const byte*) SINQ_HI#0 + (signed byte) calculate_matrix_16::t7#0) w= *((const byte*) SINH_LO#0 + (signed byte) calculate_matrix_16::t7#0) - [180] (word~) calculate_matrix_16::$90 ← *((const byte*) SINQ_HI#0 + (signed byte) calculate_matrix_16::t8#0) w= *((const byte*) SINH_LO#0 + (signed byte) calculate_matrix_16::t8#0) - [181] (signed word~) calculate_matrix_16::$48 ← (signed word)(word~) calculate_matrix_16::$85 + (signed word)(word~) calculate_matrix_16::$86 - [182] (signed word~) calculate_matrix_16::$49 ← (signed word~) calculate_matrix_16::$48 + (signed word)(word~) calculate_matrix_16::$87 - [183] (signed word~) calculate_matrix_16::$50 ← (signed word~) calculate_matrix_16::$49 - (signed word)(word~) calculate_matrix_16::$88 - [184] (signed word~) calculate_matrix_16::$51 ← (signed word~) calculate_matrix_16::$50 - (signed word)(word~) calculate_matrix_16::$89 - [185] (signed word~) calculate_matrix_16::$52 ← (signed word~) calculate_matrix_16::$51 - (signed word)(word~) calculate_matrix_16::$90 - [186] (byte~) calculate_matrix_16::$53 ← > (signed word~) calculate_matrix_16::$52 - [187] *((const signed byte[9]) rotation_matrix#0+(byte/signed byte/word/signed word/dword/signed dword) 4) ← (signed byte)(byte~) calculate_matrix_16::$53 - [188] (signed word~) calculate_matrix_16::$55 ← (signed word)(word~) calculate_matrix_16::$86 - (signed word)(word~) calculate_matrix_16::$85 - [189] (signed word~) calculate_matrix_16::$56 ← (signed word~) calculate_matrix_16::$55 + (signed word)(word~) calculate_matrix_16::$88 - [190] (signed word~) calculate_matrix_16::$57 ← (signed word~) calculate_matrix_16::$56 - (signed word)(word~) calculate_matrix_16::$87 - [191] (signed word~) calculate_matrix_16::$58 ← (signed word~) calculate_matrix_16::$57 - (signed word)(word~) calculate_matrix_16::$89 - [192] (signed word~) calculate_matrix_16::$59 ← (signed word~) calculate_matrix_16::$58 - (signed word)(word~) calculate_matrix_16::$90 - [193] (byte~) calculate_matrix_16::$60 ← > (signed word~) calculate_matrix_16::$59 - [194] *((const signed byte[9]) rotation_matrix#0+(byte/signed byte/word/signed word/dword/signed dword) 6) ← (signed byte)(byte~) calculate_matrix_16::$60 - [195] (signed byte) calculate_matrix_16::t9#0 ← (signed byte) calculate_matrix_16::sy#0 - (signed byte) calculate_matrix_16::sx#0 - [196] (signed byte) calculate_matrix_16::t10#0 ← (signed byte) calculate_matrix_16::sy#0 + (signed byte) calculate_matrix_16::sx#0 - [197] (word~) calculate_matrix_16::$91 ← *((const byte*) SINH_HI#0 + (signed byte) calculate_matrix_16::t9#0) w= *((const byte*) SINH_LO#0 + (signed byte) calculate_matrix_16::t9#0) - [198] (word~) calculate_matrix_16::$92 ← *((const byte*) SINH_HI#0 + (signed byte) calculate_matrix_16::t10#0) w= *((const byte*) SINH_LO#0 + (signed byte) calculate_matrix_16::t10#0) - [199] (signed word~) calculate_matrix_16::$66 ← (signed word)(word~) calculate_matrix_16::$91 - (signed word)(word~) calculate_matrix_16::$92 - [200] (byte~) calculate_matrix_16::$67 ← > (signed word~) calculate_matrix_16::$66 - [201] *((const signed byte[9]) rotation_matrix#0+(byte/signed byte/word/signed word/dword/signed dword) 5) ← (signed byte)(byte~) calculate_matrix_16::$67 - [202] (word~) calculate_matrix_16::$93 ← *((const byte*) COSH_HI#0 + (signed byte) calculate_matrix_16::t9#0) w= *((const byte*) COSH_LO#0 + (signed byte) calculate_matrix_16::t9#0) - [203] (word~) calculate_matrix_16::$94 ← *((const byte*) COSH_HI#0 + (signed byte) calculate_matrix_16::t10#0) w= *((const byte*) COSH_LO#0 + (signed byte) calculate_matrix_16::t10#0) - [204] (signed word~) calculate_matrix_16::$71 ← (signed word)(word~) calculate_matrix_16::$93 + (signed word)(word~) calculate_matrix_16::$94 - [205] (byte~) calculate_matrix_16::$72 ← > (signed word~) calculate_matrix_16::$71 - [206] *((const signed byte[9]) rotation_matrix#0+(byte/signed byte/word/signed word/dword/signed dword) 8) ← (signed byte)(byte~) calculate_matrix_16::$72 - to:calculate_matrix_16::@return -calculate_matrix_16::@return: scope:[calculate_matrix_16] from calculate_matrix_16 - [207] return - to:@return -debug_print_init: scope:[debug_print_init] from main::@1 - [208] phi() - [209] call print_cls - to:debug_print_init::@5 -debug_print_init::@5: scope:[debug_print_init] from debug_print_init - [210] phi() - [211] call print_str_at - to:debug_print_init::@6 -debug_print_init::@6: scope:[debug_print_init] from debug_print_init::@5 - [212] phi() - [213] call print_str_at - to:debug_print_init::@7 -debug_print_init::@7: scope:[debug_print_init] from debug_print_init::@6 - [214] phi() - [215] call print_str_at - to:debug_print_init::@8 -debug_print_init::@8: scope:[debug_print_init] from debug_print_init::@7 - [216] phi() - [217] call print_str_at - to:debug_print_init::@9 -debug_print_init::@9: scope:[debug_print_init] from debug_print_init::@8 - [218] phi() - [219] call print_str_at - to:debug_print_init::@10 -debug_print_init::@10: scope:[debug_print_init] from debug_print_init::@9 - [220] phi() - [221] call print_str_at - to:debug_print_init::@11 -debug_print_init::@11: scope:[debug_print_init] from debug_print_init::@10 - [222] phi() - [223] call print_str_at - to:debug_print_init::@12 -debug_print_init::@12: scope:[debug_print_init] from debug_print_init::@11 - [224] phi() - [225] call print_str_at - to:debug_print_init::@13 -debug_print_init::@13: scope:[debug_print_init] from debug_print_init::@12 - [226] phi() - [227] call print_str_at - to:debug_print_init::@14 -debug_print_init::@14: scope:[debug_print_init] from debug_print_init::@13 - [228] phi() - [229] call print_str_at - to:debug_print_init::@15 -debug_print_init::@15: scope:[debug_print_init] from debug_print_init::@14 - [230] phi() - [231] call print_str_at - to:debug_print_init::@16 -debug_print_init::@16: scope:[debug_print_init] from debug_print_init::@15 - [232] phi() - [233] call print_str_at - to:debug_print_init::@1 -debug_print_init::@1: scope:[debug_print_init] from debug_print_init::@16 debug_print_init::@3 - [234] (byte) debug_print_init::i#2 ← phi( debug_print_init::@16/(byte/signed byte/word/signed word/dword/signed dword) 0 debug_print_init::@3/(byte) debug_print_init::i#1 ) - [234] (byte) debug_print_init::c#2 ← phi( debug_print_init::@16/(byte/signed byte/word/signed word/dword/signed dword) 4 debug_print_init::@3/(byte) debug_print_init::c#1 ) - [235] (byte*) print_sbyte_at::at#0 ← (const byte*) debug_print_init::at_line#0 + (byte) debug_print_init::c#2 - [236] (signed byte) print_sbyte_at::b#1 ← *((const signed byte[8]) xs#0 + (byte) debug_print_init::i#2) - [237] call print_sbyte_at - to:debug_print_init::@18 -debug_print_init::@18: scope:[debug_print_init] from debug_print_init::@1 - [238] (byte*) print_sbyte_at::at#1 ← (const byte*) debug_print_init::at_line#0+(byte/signed byte/word/signed word/dword/signed dword) 40*(byte/signed byte/word/signed word/dword/signed dword) 1 + (byte) debug_print_init::c#2 - [239] (signed byte) print_sbyte_at::b#2 ← *((const signed byte[8]) ys#0 + (byte) debug_print_init::i#2) - [240] call print_sbyte_at - to:debug_print_init::@19 -debug_print_init::@19: scope:[debug_print_init] from debug_print_init::@18 - [241] (byte*) print_sbyte_at::at#2 ← (const byte*) debug_print_init::at_line#0+(byte/signed byte/word/signed word/dword/signed dword) 40*(byte/signed byte/word/signed word/dword/signed dword) 2 + (byte) debug_print_init::c#2 - [242] (signed byte) print_sbyte_at::b#3 ← *((const signed byte[8]) zs#0 + (byte) debug_print_init::i#2) - [243] call print_sbyte_at - to:debug_print_init::@2 -debug_print_init::@2: scope:[debug_print_init] from debug_print_init::@19 debug_print_init::@2 - [244] (byte) debug_print_init::j#2 ← phi( debug_print_init::@2/(byte) debug_print_init::j#1 debug_print_init::@19/(byte/signed byte/word/signed word/dword/signed dword) 0 ) - [245] (byte) debug_print_init::col#0 ← (byte/signed byte/word/signed word/dword/signed dword) 8 + (byte) debug_print_init::i#2 - [246] (byte*~) debug_print_init::$59 ← (const byte*) debug_print_init::at_cols#0 + (byte) debug_print_init::c#2 - [247] (byte*~) debug_print_init::$60 ← (byte*~) debug_print_init::$59 + (byte) debug_print_init::j#2 - [248] *((byte*~) debug_print_init::$60) ← (byte) debug_print_init::col#0 - [249] (byte*~) debug_print_init::$63 ← (const byte*) debug_print_init::at_cols#0+(byte/signed byte/word/signed word/dword/signed dword) 40*(byte/signed byte/word/signed word/dword/signed dword) 1 + (byte) debug_print_init::c#2 - [250] (byte*~) debug_print_init::$64 ← (byte*~) debug_print_init::$63 + (byte) debug_print_init::j#2 - [251] *((byte*~) debug_print_init::$64) ← (byte) debug_print_init::col#0 - [252] (byte*~) debug_print_init::$67 ← (const byte*) debug_print_init::at_cols#0+(byte/signed byte/word/signed word/dword/signed dword) 40*(byte/signed byte/word/signed word/dword/signed dword) 2 + (byte) debug_print_init::c#2 - [253] (byte*~) debug_print_init::$68 ← (byte*~) debug_print_init::$67 + (byte) debug_print_init::j#2 - [254] *((byte*~) debug_print_init::$68) ← (byte) debug_print_init::col#0 - [255] (byte*~) debug_print_init::$71 ← (const byte*) debug_print_init::at_cols#0+(byte/signed byte/word/signed word/dword/signed dword) 40*(byte/signed byte/word/signed word/dword/signed dword) 3 + (byte) debug_print_init::c#2 - [256] (byte*~) debug_print_init::$72 ← (byte*~) debug_print_init::$71 + (byte) debug_print_init::j#2 - [257] *((byte*~) debug_print_init::$72) ← (byte) debug_print_init::col#0 - [258] (byte*~) debug_print_init::$75 ← (const byte*) debug_print_init::at_cols#0+(byte/signed byte/word/signed word/dword/signed dword) 40*(byte/signed byte/word/signed word/dword/signed dword) 4 + (byte) debug_print_init::c#2 - [259] (byte*~) debug_print_init::$76 ← (byte*~) debug_print_init::$75 + (byte) debug_print_init::j#2 - [260] *((byte*~) debug_print_init::$76) ← (byte) debug_print_init::col#0 - [261] (byte*~) debug_print_init::$79 ← (const byte*) debug_print_init::at_cols#0+(byte/signed byte/word/signed word/dword/signed dword) 40*(byte/signed byte/word/signed word/dword/signed dword) 5 + (byte) debug_print_init::c#2 - [262] (byte*~) debug_print_init::$80 ← (byte*~) debug_print_init::$79 + (byte) debug_print_init::j#2 - [263] *((byte*~) debug_print_init::$80) ← (byte) debug_print_init::col#0 - [264] (byte*~) debug_print_init::$83 ← (const byte*) debug_print_init::at_cols#0+(byte/signed byte/word/signed word/dword/signed dword) 40*(byte/signed byte/word/signed word/dword/signed dword) 6 + (byte) debug_print_init::c#2 - [265] (byte*~) debug_print_init::$84 ← (byte*~) debug_print_init::$83 + (byte) debug_print_init::j#2 - [266] *((byte*~) debug_print_init::$84) ← (byte) debug_print_init::col#0 - [267] (byte*~) debug_print_init::$87 ← (const byte*) debug_print_init::at_cols#0+(byte/signed byte/word/signed word/dword/signed dword) 40*(byte/signed byte/word/signed word/dword/signed dword) 7 + (byte) debug_print_init::c#2 - [268] (byte*~) debug_print_init::$88 ← (byte*~) debug_print_init::$87 + (byte) debug_print_init::j#2 - [269] *((byte*~) debug_print_init::$88) ← (byte) debug_print_init::col#0 - [270] (byte*~) debug_print_init::$91 ← (const byte*) debug_print_init::at_cols#0+(byte/signed byte/word/signed word/dword/signed dword) 40*(byte/signed byte/word/signed word/dword/signed dword) 8 + (byte) debug_print_init::c#2 - [271] (byte*~) debug_print_init::$92 ← (byte*~) debug_print_init::$91 + (byte) debug_print_init::j#2 - [272] *((byte*~) debug_print_init::$92) ← (byte) debug_print_init::col#0 - [273] (byte) debug_print_init::j#1 ← ++ (byte) debug_print_init::j#2 - [274] if((byte) debug_print_init::j#1!=(byte/signed byte/word/signed word/dword/signed dword) 4) goto debug_print_init::@2 - to:debug_print_init::@3 -debug_print_init::@3: scope:[debug_print_init] from debug_print_init::@2 - [275] (byte) debug_print_init::c#1 ← (byte) debug_print_init::c#2 + (byte/signed byte/word/signed word/dword/signed dword) 4 - [276] (byte) debug_print_init::i#1 ← ++ (byte) debug_print_init::i#2 - [277] if((byte) debug_print_init::i#1!=(byte/signed byte/word/signed word/dword/signed dword) 8) goto debug_print_init::@1 - to:debug_print_init::@return -debug_print_init::@return: scope:[debug_print_init] from debug_print_init::@3 - [278] return - to:@return -print_str_at: scope:[print_str_at] from debug_print_init::@10 debug_print_init::@11 debug_print_init::@12 debug_print_init::@13 debug_print_init::@14 debug_print_init::@15 debug_print_init::@16 debug_print_init::@5 debug_print_init::@6 debug_print_init::@7 debug_print_init::@8 debug_print_init::@9 - [279] (byte*) print_str_at::at#15 ← phi( debug_print_init::@10/(const byte*) SCREEN#0+(byte/signed byte/word/signed word/dword/signed dword) 40*(byte/signed byte/word/signed word/dword/signed dword) 18 debug_print_init::@11/(const byte*) SCREEN#0+(byte/signed byte/word/signed word/dword/signed dword) 40*(byte/signed byte/word/signed word/dword/signed dword) 19 debug_print_init::@12/(const byte*) SCREEN#0+(byte/signed byte/word/signed word/dword/signed dword) 40*(byte/signed byte/word/signed word/dword/signed dword) 20 debug_print_init::@13/(const byte*) SCREEN#0+(byte/signed byte/word/signed word/dword/signed dword) 40*(byte/signed byte/word/signed word/dword/signed dword) 21 debug_print_init::@14/(const byte*) SCREEN#0+(byte/signed byte/word/signed word/dword/signed dword) 40*(byte/signed byte/word/signed word/dword/signed dword) 22 debug_print_init::@15/(const byte*) SCREEN#0+(byte/signed byte/word/signed word/dword/signed dword) 40*(byte/signed byte/word/signed word/dword/signed dword) 23 debug_print_init::@16/(const byte*) SCREEN#0+(byte/signed byte/word/signed word/dword/signed dword) 40*(byte/signed byte/word/signed word/dword/signed dword) 24 debug_print_init::@5/(const byte*) SCREEN#0+(byte/signed byte/word/signed word/dword/signed dword) 34 debug_print_init::@6/(const byte*) SCREEN#0+(byte/signed byte/word/signed word/dword/signed dword) 40*(byte/signed byte/word/signed word/dword/signed dword) 1+(byte/signed byte/word/signed word/dword/signed dword) 34 debug_print_init::@7/(const byte*) SCREEN#0+(byte/signed byte/word/signed word/dword/signed dword) 40*(byte/signed byte/word/signed word/dword/signed dword) 2+(byte/signed byte/word/signed word/dword/signed dword) 34 debug_print_init::@8/(const byte*) SCREEN#0+(byte/signed byte/word/signed word/dword/signed dword) 40*(byte/signed byte/word/signed word/dword/signed dword) 16 debug_print_init::@9/(const byte*) SCREEN#0+(byte/signed byte/word/signed word/dword/signed dword) 40*(byte/signed byte/word/signed word/dword/signed dword) 17 ) - [279] (byte*) print_str_at::str#15 ← phi( debug_print_init::@10/(const string) debug_print_init::str5 debug_print_init::@11/(const string) debug_print_init::str6 debug_print_init::@12/(const string) debug_print_init::str7 debug_print_init::@13/(const string) debug_print_init::str8 debug_print_init::@14/(const string) debug_print_init::str9 debug_print_init::@15/(const string) debug_print_init::str10 debug_print_init::@16/(const string) debug_print_init::str11 debug_print_init::@5/(const string) debug_print_init::str debug_print_init::@6/(const string) debug_print_init::str1 debug_print_init::@7/(const string) debug_print_init::str2 debug_print_init::@8/(const string) debug_print_init::str3 debug_print_init::@9/(const string) debug_print_init::str4 ) - to:print_str_at::@1 -print_str_at::@1: scope:[print_str_at] from print_str_at print_str_at::@2 - [280] (byte*) print_str_at::at#13 ← phi( print_str_at/(byte*) print_str_at::at#15 print_str_at::@2/(byte*) print_str_at::at#0 ) - [280] (byte*) print_str_at::str#13 ← phi( print_str_at/(byte*) print_str_at::str#15 print_str_at::@2/(byte*) print_str_at::str#0 ) - [281] if(*((byte*) print_str_at::str#13)!=(byte) '@') goto print_str_at::@2 - to:print_str_at::@return -print_str_at::@return: scope:[print_str_at] from print_str_at::@1 - [282] return - to:@return -print_str_at::@2: scope:[print_str_at] from print_str_at::@1 - [283] *((byte*) print_str_at::at#13) ← *((byte*) print_str_at::str#13) - [284] (byte*) print_str_at::at#0 ← ++ (byte*) print_str_at::at#13 - [285] (byte*) print_str_at::str#0 ← ++ (byte*) print_str_at::str#13 - to:print_str_at::@1 -print_cls: scope:[print_cls] from debug_print_init - [286] phi() - to:print_cls::@1 -print_cls::@1: scope:[print_cls] from print_cls print_cls::@1 - [287] (byte*) print_cls::sc#2 ← phi( print_cls/(const byte*) print_screen#0 print_cls::@1/(byte*) print_cls::sc#1 ) - [288] *((byte*) print_cls::sc#2) ← (byte) ' ' - [289] (byte*) print_cls::sc#1 ← ++ (byte*) print_cls::sc#2 - [290] if((byte*) print_cls::sc#1!=(const byte*) print_screen#0+(word/signed word/dword/signed dword) 1000) goto print_cls::@1 - to:print_cls::@return -print_cls::@return: scope:[print_cls] from print_cls::@1 - [291] return +calculate_matrix: scope:[calculate_matrix] from anim::@6 + [58] (signed byte) calculate_matrix::t1#0 ← (signed byte) calculate_matrix::sy#0 - (const signed byte) sz#0 + [59] (signed byte) calculate_matrix::t2#0 ← (signed byte) calculate_matrix::sy#0 + (const signed byte) sz#0 + [60] (signed byte) calculate_matrix::t3#0 ← (signed byte) calculate_matrix::sx#0 + [61] (signed byte) calculate_matrix::t4#0 ← (signed byte) calculate_matrix::sx#0 + [62] (signed byte) calculate_matrix::t5#0 ← (signed byte) calculate_matrix::sx#0 + (signed byte) calculate_matrix::t2#0 + [63] (signed byte) calculate_matrix::t6#0 ← (signed byte) calculate_matrix::sx#0 - (signed byte) calculate_matrix::t1#0 + [64] (signed byte) calculate_matrix::t7#0 ← (signed byte) calculate_matrix::sx#0 + (signed byte) calculate_matrix::t1#0 + [65] (signed byte) calculate_matrix::t8#0 ← (signed byte) calculate_matrix::t2#0 - (signed byte) calculate_matrix::sx#0 + [66] (signed byte) calculate_matrix::t9#0 ← (signed byte) calculate_matrix::sy#0 - (signed byte) calculate_matrix::sx#0 + [67] (signed byte) calculate_matrix::t10#0 ← (signed byte) calculate_matrix::sy#0 + (signed byte) calculate_matrix::sx#0 + [68] (signed byte~) calculate_matrix::$10 ← *((const signed byte*) COSH#0 + (signed byte) calculate_matrix::t1#0) + *((const signed byte*) COSH#0 + (signed byte) calculate_matrix::t2#0) + [69] *((const signed byte[9]) rotation_matrix#0) ← (signed byte~) calculate_matrix::$10 + [70] (signed byte~) calculate_matrix::$11 ← *((const signed byte*) SINH#0 + (signed byte) calculate_matrix::t1#0) - *((const signed byte*) SINH#0 + (signed byte) calculate_matrix::t2#0) + [71] *((const signed byte[9]) rotation_matrix#0+(byte/signed byte/word/signed word/dword/signed dword) 1) ← (signed byte~) calculate_matrix::$11 + [72] (signed byte~) calculate_matrix::$12 ← *((const signed byte*) SINH#0 + (signed byte) calculate_matrix::sy#0) + *((const signed byte*) SINH#0 + (signed byte) calculate_matrix::sy#0) + [73] *((const signed byte[9]) rotation_matrix#0+(byte/signed byte/word/signed word/dword/signed dword) 2) ← (signed byte~) calculate_matrix::$12 + [74] (signed byte~) calculate_matrix::$13 ← *((const signed byte*) SINH#0+(const signed byte) sz#0 + (signed byte) calculate_matrix::t3#0) - *((const signed byte*) SINH#0+-(const signed byte) sz#0 + (signed byte) calculate_matrix::t4#0) + [75] (signed byte~) calculate_matrix::$14 ← (signed byte~) calculate_matrix::$13 + *((const signed byte*) COSQ#0 + (signed byte) calculate_matrix::t6#0) + [76] (signed byte~) calculate_matrix::$15 ← (signed byte~) calculate_matrix::$14 - *((const signed byte*) COSQ#0 + (signed byte) calculate_matrix::t5#0) + [77] (signed byte~) calculate_matrix::$16 ← (signed byte~) calculate_matrix::$15 + *((const signed byte*) COSQ#0 + (signed byte) calculate_matrix::t8#0) + [78] (signed byte~) calculate_matrix::$17 ← (signed byte~) calculate_matrix::$16 - *((const signed byte*) COSQ#0 + (signed byte) calculate_matrix::t7#0) + [79] *((const signed byte[9]) rotation_matrix#0+(byte/signed byte/word/signed word/dword/signed dword) 3) ← (signed byte~) calculate_matrix::$17 + [80] (signed byte~) calculate_matrix::$18 ← *((const signed byte*) COSH#0 + (signed byte) calculate_matrix::t3#0) + *((const signed byte*) COSH#0 + (signed byte) calculate_matrix::t4#0) + [81] (signed byte~) calculate_matrix::$19 ← (signed byte~) calculate_matrix::$18 + *((const signed byte*) SINQ#0 + (signed byte) calculate_matrix::t5#0) + [82] (signed byte~) calculate_matrix::$20 ← (signed byte~) calculate_matrix::$19 - *((const signed byte*) SINQ#0 + (signed byte) calculate_matrix::t6#0) + [83] (signed byte~) calculate_matrix::$21 ← (signed byte~) calculate_matrix::$20 - *((const signed byte*) SINQ#0 + (signed byte) calculate_matrix::t7#0) + [84] (signed byte~) calculate_matrix::$22 ← (signed byte~) calculate_matrix::$21 - *((const signed byte*) SINQ#0 + (signed byte) calculate_matrix::t8#0) + [85] *((const signed byte[9]) rotation_matrix#0+(byte/signed byte/word/signed word/dword/signed dword) 4) ← (signed byte~) calculate_matrix::$22 + [86] (signed byte~) calculate_matrix::$23 ← *((const signed byte*) SINH#0 + (signed byte) calculate_matrix::t9#0) - *((const signed byte*) SINH#0 + (signed byte) calculate_matrix::t10#0) + [87] *((const signed byte[9]) rotation_matrix#0+(byte/signed byte/word/signed word/dword/signed dword) 5) ← (signed byte~) calculate_matrix::$23 + [88] (signed byte~) calculate_matrix::$24 ← *((const signed byte*) COSH#0 + (signed byte) calculate_matrix::t4#0) - *((const signed byte*) COSH#0 + (signed byte) calculate_matrix::t3#0) + [89] (signed byte~) calculate_matrix::$25 ← (signed byte~) calculate_matrix::$24 + *((const signed byte*) SINQ#0 + (signed byte) calculate_matrix::t6#0) + [90] (signed byte~) calculate_matrix::$26 ← (signed byte~) calculate_matrix::$25 - *((const signed byte*) SINQ#0 + (signed byte) calculate_matrix::t5#0) + [91] (signed byte~) calculate_matrix::$27 ← (signed byte~) calculate_matrix::$26 - *((const signed byte*) SINQ#0 + (signed byte) calculate_matrix::t8#0) + [92] (signed byte~) calculate_matrix::$28 ← (signed byte~) calculate_matrix::$27 - *((const signed byte*) SINQ#0 + (signed byte) calculate_matrix::t7#0) + [93] *((const signed byte[9]) rotation_matrix#0+(byte/signed byte/word/signed word/dword/signed dword) 6) ← (signed byte~) calculate_matrix::$28 + [94] (signed byte~) calculate_matrix::$29 ← *((const signed byte*) SINH#0 + (signed byte) calculate_matrix::t3#0) + *((const signed byte*) SINH#0 + (signed byte) calculate_matrix::t4#0) + [95] (signed byte~) calculate_matrix::$30 ← (signed byte~) calculate_matrix::$29 + *((const signed byte*) COSQ#0 + (signed byte) calculate_matrix::t6#0) + [96] (signed byte~) calculate_matrix::$31 ← (signed byte~) calculate_matrix::$30 - *((const signed byte*) COSQ#0 + (signed byte) calculate_matrix::t5#0) + [97] (signed byte~) calculate_matrix::$32 ← (signed byte~) calculate_matrix::$31 + *((const signed byte*) COSQ#0 + (signed byte) calculate_matrix::t7#0) + [98] (signed byte~) calculate_matrix::$33 ← (signed byte~) calculate_matrix::$32 - *((const signed byte*) COSQ#0 + (signed byte) calculate_matrix::t8#0) + [99] *((const signed byte[9]) rotation_matrix#0+(byte/signed byte/word/signed word/dword/signed dword) 7) ← (signed byte~) calculate_matrix::$33 + [100] (signed byte~) calculate_matrix::$34 ← *((const signed byte*) COSH#0 + (signed byte) calculate_matrix::t9#0) + *((const signed byte*) COSH#0 + (signed byte) calculate_matrix::t10#0) + [101] *((const signed byte[9]) rotation_matrix#0+(byte/signed byte/word/signed word/dword/signed dword) 8) ← (signed byte~) calculate_matrix::$34 + to:calculate_matrix::@return +calculate_matrix::@return: scope:[calculate_matrix] from calculate_matrix + [102] return to:@return sprites_init: scope:[sprites_init] from main - [292] *((const byte*) SPRITES_ENABLE#0) ← (byte/word/signed word/dword/signed dword) 255 + [103] *((const byte*) SPRITES_ENABLE#0) ← (byte/word/signed word/dword/signed dword) 255 to:sprites_init::@1 sprites_init::@1: scope:[sprites_init] from sprites_init sprites_init::@1 - [293] (byte) sprites_init::i#2 ← phi( sprites_init/(byte/signed byte/word/signed word/dword/signed dword) 0 sprites_init::@1/(byte) sprites_init::i#1 ) - [294] *((const byte*) sprites_init::sprites_ptr#0 + (byte) sprites_init::i#2) ← ((byte))(const byte*) SPRITE#0/(byte/signed byte/word/signed word/dword/signed dword) 64 - [295] (byte/signed word/word/dword/signed dword~) sprites_init::$3 ← (byte/signed byte/word/signed word/dword/signed dword) 8 + (byte) sprites_init::i#2 - [296] *((const byte*) SPRITES_COLS#0 + (byte) sprites_init::i#2) ← (byte/signed word/word/dword/signed dword~) sprites_init::$3 - [297] (byte) sprites_init::i#1 ← ++ (byte) sprites_init::i#2 - [298] if((byte) sprites_init::i#1!=(byte/signed byte/word/signed word/dword/signed dword) 8) goto sprites_init::@1 + [104] (byte) sprites_init::i#2 ← phi( sprites_init/(byte/signed byte/word/signed word/dword/signed dword) 0 sprites_init::@1/(byte) sprites_init::i#1 ) + [105] *((const byte*) sprites_init::sprites_ptr#0 + (byte) sprites_init::i#2) ← ((byte))(const byte*) SPRITE#0/(byte/signed byte/word/signed word/dword/signed dword) 64 + [106] *((const byte*) SPRITES_COLS#0 + (byte) sprites_init::i#2) ← (const byte) GREEN#0 + [107] (byte) sprites_init::i#1 ← ++ (byte) sprites_init::i#2 + [108] if((byte) sprites_init::i#1!=(byte/signed byte/word/signed word/dword/signed dword) 8) goto sprites_init::@1 to:sprites_init::@return sprites_init::@return: scope:[sprites_init] from sprites_init::@1 - [299] return + [109] return to:@return -null depth in calling loop Loop head: debug_print::@1 tails: debug_print::@20 blocks: debug_print::@20 debug_print::@19 debug_print::@18 debug_print::@17 debug_print::@16 debug_print::@15 debug_print::@1 in scope print_sbyte_at -null depth in calling loop Loop head: debug_print::@1 tails: debug_print::@20 blocks: debug_print::@20 debug_print::@19 debug_print::@18 debug_print::@17 debug_print::@16 debug_print::@15 debug_print::@1 in scope print_sbyte_at -null depth in calling loop Loop head: debug_print::@1 tails: debug_print::@20 blocks: debug_print::@20 debug_print::@19 debug_print::@18 debug_print::@17 debug_print::@16 debug_print::@15 debug_print::@1 in scope print_sbyte_at -null depth in calling loop Loop head: debug_print::@1 tails: debug_print::@20 blocks: debug_print::@20 debug_print::@19 debug_print::@18 debug_print::@17 debug_print::@16 debug_print::@15 debug_print::@1 in scope print_sbyte_at -null depth in calling loop Loop head: debug_print::@1 tails: debug_print::@20 blocks: debug_print::@20 debug_print::@19 debug_print::@18 debug_print::@17 debug_print::@16 debug_print::@15 debug_print::@1 in scope print_sbyte_at -null depth in calling loop Loop head: debug_print::@1 tails: debug_print::@20 blocks: debug_print::@20 debug_print::@19 debug_print::@18 debug_print::@17 debug_print::@16 debug_print::@15 debug_print::@1 in scope print_sbyte_at VARIABLE REGISTER WEIGHTS (byte*) BORDERCOL -(byte*) COSH_HI -(byte*) COSH_LO -(byte*) COSQ_HI +(signed byte*) COSH +(signed byte*) COSQ +(byte) GREEN (byte) LIGHT_BLUE (byte) LIGHT_GREY (signed byte*) PERSP_Z (byte*) RASTER -(byte*) SCREEN (signed byte*) SINH (byte*) SINH_HI (byte*) SINH_LO @@ -4046,224 +1748,62 @@ VARIABLE REGISTER WEIGHTS (byte) anim::i#2 71.29411764705881 (byte) anim::i2 (byte) anim::i2#0 75.75 -(void()) calculate_matrix_16((signed byte) calculate_matrix_16::sx , (signed byte) calculate_matrix_16::sy , (signed byte) calculate_matrix_16::sz) -(byte~) calculate_matrix_16::$10 2.0 -(signed word~) calculate_matrix_16::$13 4.0 -(byte~) calculate_matrix_16::$14 2.0 -(signed word~) calculate_matrix_16::$28 4.0 -(signed word~) calculate_matrix_16::$29 4.0 -(signed word~) calculate_matrix_16::$30 4.0 -(signed word~) calculate_matrix_16::$31 4.0 -(signed word~) calculate_matrix_16::$32 4.0 -(byte~) calculate_matrix_16::$33 2.0 -(signed word~) calculate_matrix_16::$35 4.0 -(signed word~) calculate_matrix_16::$36 4.0 -(signed word~) calculate_matrix_16::$37 4.0 -(signed word~) calculate_matrix_16::$38 4.0 -(signed word~) calculate_matrix_16::$39 4.0 -(signed word~) calculate_matrix_16::$4 4.0 -(byte~) calculate_matrix_16::$40 2.0 -(signed word~) calculate_matrix_16::$48 4.0 -(signed word~) calculate_matrix_16::$49 4.0 -(byte~) calculate_matrix_16::$5 2.0 -(signed word~) calculate_matrix_16::$50 4.0 -(signed word~) calculate_matrix_16::$51 4.0 -(signed word~) calculate_matrix_16::$52 4.0 -(byte~) calculate_matrix_16::$53 2.0 -(signed word~) calculate_matrix_16::$55 4.0 -(signed word~) calculate_matrix_16::$56 4.0 -(signed word~) calculate_matrix_16::$57 4.0 -(signed word~) calculate_matrix_16::$58 4.0 -(signed word~) calculate_matrix_16::$59 4.0 -(byte~) calculate_matrix_16::$60 2.0 -(signed word~) calculate_matrix_16::$66 4.0 -(byte~) calculate_matrix_16::$67 2.0 -(signed word~) calculate_matrix_16::$71 4.0 -(byte~) calculate_matrix_16::$72 2.0 -(word~) calculate_matrix_16::$74 1.0 -(word~) calculate_matrix_16::$75 2.0 -(word~) calculate_matrix_16::$76 1.0 -(word~) calculate_matrix_16::$77 2.0 -(word~) calculate_matrix_16::$78 2.0 -(word~) calculate_matrix_16::$79 0.15384615384615385 -(word~) calculate_matrix_16::$80 0.16666666666666666 -(word~) calculate_matrix_16::$81 0.15384615384615385 -(word~) calculate_matrix_16::$82 0.18181818181818182 -(word~) calculate_matrix_16::$83 0.16666666666666666 -(word~) calculate_matrix_16::$84 0.16666666666666666 -(word~) calculate_matrix_16::$85 0.15384615384615385 -(word~) calculate_matrix_16::$86 0.16666666666666666 -(word~) calculate_matrix_16::$87 0.15384615384615385 -(word~) calculate_matrix_16::$88 0.18181818181818182 -(word~) calculate_matrix_16::$89 0.16666666666666666 -(signed word~) calculate_matrix_16::$9 4.0 -(word~) calculate_matrix_16::$90 0.16666666666666666 -(word~) calculate_matrix_16::$91 1.0 -(word~) calculate_matrix_16::$92 2.0 -(word~) calculate_matrix_16::$93 1.0 -(word~) calculate_matrix_16::$94 2.0 -(signed word) calculate_matrix_16::cosh_t1 -(signed word) calculate_matrix_16::cosh_t10 -(signed word) calculate_matrix_16::cosh_t2 -(signed word) calculate_matrix_16::cosh_t3 -(signed word) calculate_matrix_16::cosh_t4 -(signed word) calculate_matrix_16::cosh_t9 -(signed word) calculate_matrix_16::cosq_t5 -(signed word) calculate_matrix_16::cosq_t6 -(signed word) calculate_matrix_16::cosq_t7 -(signed word) calculate_matrix_16::cosq_t8 -(signed word) calculate_matrix_16::sinh_sy -(signed word) calculate_matrix_16::sinh_t1 -(signed word) calculate_matrix_16::sinh_t10 -(signed word) calculate_matrix_16::sinh_t2 -(signed word) calculate_matrix_16::sinh_t3 -(signed word) calculate_matrix_16::sinh_t4 -(signed word) calculate_matrix_16::sinh_t9 -(signed word) calculate_matrix_16::sinq_t5 -(signed word) calculate_matrix_16::sinq_t6 -(signed word) calculate_matrix_16::sinq_t7 -(signed word) calculate_matrix_16::sinq_t8 -(signed byte) calculate_matrix_16::sx -(signed byte) calculate_matrix_16::sx#0 0.40909090909090895 -(signed byte) calculate_matrix_16::sy -(signed byte) calculate_matrix_16::sy#0 0.35384615384615387 -(signed byte) calculate_matrix_16::sz -(signed byte) calculate_matrix_16::sz#0 1.0555555555555558 -(signed byte) calculate_matrix_16::t1 -(signed byte) calculate_matrix_16::t1#0 0.7 -(signed byte) calculate_matrix_16::t10 -(signed byte) calculate_matrix_16::t10#0 1.4285714285714284 -(signed byte) calculate_matrix_16::t2 -(signed byte) calculate_matrix_16::t2#0 0.7 -(signed byte) calculate_matrix_16::t3 -(signed byte) calculate_matrix_16::t3#0 0.38461538461538464 -(signed byte) calculate_matrix_16::t4 -(signed byte) calculate_matrix_16::t4#0 0.38461538461538464 -(signed byte) calculate_matrix_16::t5 -(signed byte) calculate_matrix_16::t5#0 0.38461538461538464 -(signed byte) calculate_matrix_16::t6 -(signed byte) calculate_matrix_16::t6#0 0.38461538461538464 -(signed byte) calculate_matrix_16::t7 -(signed byte) calculate_matrix_16::t7#0 0.38461538461538464 -(signed byte) calculate_matrix_16::t8 -(signed byte) calculate_matrix_16::t8#0 0.38461538461538464 -(signed byte) calculate_matrix_16::t9 -(signed byte) calculate_matrix_16::t9#0 1.4285714285714284 -(void()) debug_print() -(byte*) debug_print::at_line -(byte) debug_print::c -(byte) debug_print::c#1 67.33333333333333 -(byte) debug_print::c#2 42.52631578947369 -(byte) debug_print::i -(byte) debug_print::i#1 151.5 -(byte) debug_print::i#2 40.4 -(void()) debug_print_init() -(byte*~) debug_print_init::$59 202.0 -(byte*~) debug_print_init::$60 202.0 -(byte*~) debug_print_init::$63 202.0 -(byte*~) debug_print_init::$64 202.0 -(byte*~) debug_print_init::$67 202.0 -(byte*~) debug_print_init::$68 202.0 -(byte*~) debug_print_init::$71 202.0 -(byte*~) debug_print_init::$72 202.0 -(byte*~) debug_print_init::$75 202.0 -(byte*~) debug_print_init::$76 202.0 -(byte*~) debug_print_init::$79 202.0 -(byte*~) debug_print_init::$80 202.0 -(byte*~) debug_print_init::$83 202.0 -(byte*~) debug_print_init::$84 202.0 -(byte*~) debug_print_init::$87 202.0 -(byte*~) debug_print_init::$88 202.0 -(byte*~) debug_print_init::$91 202.0 -(byte*~) debug_print_init::$92 202.0 -(byte*) debug_print_init::COLS -(byte*) debug_print_init::at_cols -(byte*) debug_print_init::at_line -(byte) debug_print_init::c -(byte) debug_print_init::c#1 7.333333333333333 -(byte) debug_print_init::c#2 23.512195121951223 -(byte) debug_print_init::col -(byte) debug_print_init::col#0 37.40740740740741 -(byte) debug_print_init::i -(byte) debug_print_init::i#1 16.5 -(byte) debug_print_init::i#2 3.7142857142857144 -(byte) debug_print_init::j -(byte) debug_print_init::j#1 151.5 -(byte) debug_print_init::j#2 38.31034482758621 +(void()) calculate_matrix((signed byte) calculate_matrix::sx , (signed byte) calculate_matrix::sy , (signed byte) calculate_matrix::sz) +(signed byte~) calculate_matrix::$10 4.0 +(signed byte~) calculate_matrix::$11 4.0 +(signed byte~) calculate_matrix::$12 4.0 +(signed byte~) calculate_matrix::$13 4.0 +(signed byte~) calculate_matrix::$14 4.0 +(signed byte~) calculate_matrix::$15 4.0 +(signed byte~) calculate_matrix::$16 4.0 +(signed byte~) calculate_matrix::$17 4.0 +(signed byte~) calculate_matrix::$18 4.0 +(signed byte~) calculate_matrix::$19 4.0 +(signed byte~) calculate_matrix::$20 4.0 +(signed byte~) calculate_matrix::$21 4.0 +(signed byte~) calculate_matrix::$22 4.0 +(signed byte~) calculate_matrix::$23 4.0 +(signed byte~) calculate_matrix::$24 4.0 +(signed byte~) calculate_matrix::$25 4.0 +(signed byte~) calculate_matrix::$26 4.0 +(signed byte~) calculate_matrix::$27 4.0 +(signed byte~) calculate_matrix::$28 4.0 +(signed byte~) calculate_matrix::$29 4.0 +(signed byte~) calculate_matrix::$30 4.0 +(signed byte~) calculate_matrix::$31 4.0 +(signed byte~) calculate_matrix::$32 4.0 +(signed byte~) calculate_matrix::$33 4.0 +(signed byte~) calculate_matrix::$34 4.0 +(signed byte) calculate_matrix::sx +(signed byte) calculate_matrix::sx#0 2.4545454545454546 +(signed byte) calculate_matrix::sy +(signed byte) calculate_matrix::sy#0 1.5333333333333332 +(signed byte) calculate_matrix::sz +(signed byte) calculate_matrix::t1 +(signed byte) calculate_matrix::t1#0 0.8333333333333333 +(signed byte) calculate_matrix::t10 +(signed byte) calculate_matrix::t10#0 0.18181818181818182 +(signed byte) calculate_matrix::t2 +(signed byte) calculate_matrix::t2#0 0.9090909090909092 +(signed byte) calculate_matrix::t3 +(signed byte) calculate_matrix::t3#0 0.29411764705882354 +(signed byte) calculate_matrix::t4 +(signed byte) calculate_matrix::t4#0 0.30303030303030304 +(signed byte) calculate_matrix::t5 +(signed byte) calculate_matrix::t5#0 0.29411764705882354 +(signed byte) calculate_matrix::t6 +(signed byte) calculate_matrix::t6#0 0.3125 +(signed byte) calculate_matrix::t7 +(signed byte) calculate_matrix::t7#0 0.30303030303030304 +(signed byte) calculate_matrix::t8 +(signed byte) calculate_matrix::t8#0 0.30303030303030304 +(signed byte) calculate_matrix::t9 +(signed byte) calculate_matrix::t9#0 0.1764705882352941 (void()) main() (byte*) mulf_sqr1 (byte*) mulf_sqr2 (signed byte*) pp (signed byte[8]) pps -(void()) print_byte_at((byte) print_byte_at::b , (byte*) print_byte_at::at) -(byte~) print_byte_at::$0 4.0 -(byte~) print_byte_at::$2 2.0 -(byte*) print_byte_at::at -(byte*) print_byte_at::at#0 1.0 -(byte) print_byte_at::b -(void()) print_char_at((byte) print_char_at::ch , (byte*) print_char_at::at) -(byte*) print_char_at::at -(byte*) print_char_at::at#0 4.0 -(byte*) print_char_at::at#1 4.0 -(byte*) print_char_at::at#2 4.0 -(byte*) print_char_at::at#3 2.0 -(byte*) print_char_at::at#4 10.0 -(byte) print_char_at::ch -(byte) print_char_at::ch#2 2.0 -(byte) print_char_at::ch#3 4.0 -(byte) print_char_at::ch#4 6.0 -(void()) print_cls() -(byte*) print_cls::sc -(byte*) print_cls::sc#1 16.5 -(byte*) print_cls::sc#2 16.5 -(byte[]) print_hextab -(void()) print_sbyte_at((signed byte) print_sbyte_at::b , (byte*) print_sbyte_at::at) -(byte*) print_sbyte_at::at -(byte*) print_sbyte_at::at#0 11.0 -(byte*) print_sbyte_at::at#1 11.0 -(byte*) print_sbyte_at::at#15 101.0 -(byte*) print_sbyte_at::at#16 101.0 -(byte*) print_sbyte_at::at#17 101.0 -(byte*) print_sbyte_at::at#18 101.0 -(byte*) print_sbyte_at::at#19 101.0 -(byte*) print_sbyte_at::at#2 11.0 -(byte*) print_sbyte_at::at#20 101.0 -(byte*) print_sbyte_at::at#21 80.625 -(signed byte) print_sbyte_at::b -(signed byte) print_sbyte_at::b#0 4.0 -(signed byte) print_sbyte_at::b#1 22.0 -(signed byte) print_sbyte_at::b#10 4.0 -(signed byte) print_sbyte_at::b#11 4.0 -(signed byte) print_sbyte_at::b#12 4.0 -(signed byte) print_sbyte_at::b#13 4.0 -(signed byte) print_sbyte_at::b#14 4.0 -(signed byte) print_sbyte_at::b#15 4.0 -(signed byte) print_sbyte_at::b#16 202.0 -(signed byte) print_sbyte_at::b#17 202.0 -(signed byte) print_sbyte_at::b#18 202.0 -(signed byte) print_sbyte_at::b#19 202.0 -(signed byte) print_sbyte_at::b#2 22.0 -(signed byte) print_sbyte_at::b#20 202.0 -(signed byte) print_sbyte_at::b#21 202.0 -(signed byte) print_sbyte_at::b#22 111.49999999999991 -(signed byte) print_sbyte_at::b#24 0.6666666666666666 -(signed byte) print_sbyte_at::b#3 22.0 -(signed byte) print_sbyte_at::b#4 4.0 -(signed byte) print_sbyte_at::b#5 4.0 -(signed byte) print_sbyte_at::b#6 4.0 -(signed byte) print_sbyte_at::b#7 4.0 -(signed byte) print_sbyte_at::b#8 4.0 -(signed byte) print_sbyte_at::b#9 4.0 -(byte*) print_screen -(void()) print_str_at((byte*) print_str_at::str , (byte*) print_str_at::at) -(byte*) print_str_at::at -(byte*) print_str_at::at#0 11.0 -(byte*) print_str_at::at#13 11.666666666666666 -(byte*) print_str_at::at#15 2.0 -(byte*) print_str_at::str -(byte*) print_str_at::str#0 22.0 -(byte*) print_str_at::str#13 11.5 -(byte*) print_str_at::str#15 2.0 (word*) psp1 (word*) psp2 (void()) rotate_matrix((signed byte) rotate_matrix::x , (signed byte) rotate_matrix::y , (signed byte) rotate_matrix::z) @@ -4275,22 +1815,19 @@ VARIABLE REGISTER WEIGHTS (signed byte) rotate_matrix::z#0 34.33333333333333 (signed byte[9]) rotation_matrix (void()) sprites_init() -(byte/signed word/word/dword/signed dword~) sprites_init::$3 22.0 (byte*) sprites_init::SCREEN (byte) sprites_init::i (byte) sprites_init::i#1 16.5 -(byte) sprites_init::i#2 13.75 +(byte) sprites_init::i#2 14.666666666666666 (byte*) sprites_init::sprites_ptr (void()) store_matrix() (signed byte) sx -(signed byte) sx#10 0.44871794871794873 -(signed byte) sx#3 7.333333333333333 +(signed byte) sx#10 1.1379310344827585 +(signed byte) sx#3 11.0 (signed byte) sy -(signed byte) sy#10 0.44303797468354433 -(signed byte) sy#3 11.0 +(signed byte) sy#10 1.0999999999999999 +(signed byte) sy#3 22.0 (signed byte) sz -(signed byte) sz#10 0.43750000000000006 -(signed byte) sz#3 22.0 (signed byte*) xp (signed byte[8]) xps (signed byte*) xr @@ -4308,347 +1845,146 @@ VARIABLE REGISTER WEIGHTS Initial phi equivalence classes [ sx#10 sx#3 ] [ sy#10 sy#3 ] -[ sz#10 sz#3 ] [ anim::i#2 anim::i#1 ] -[ debug_print::c#2 debug_print::c#1 ] -[ debug_print::i#2 debug_print::i#1 ] -[ print_sbyte_at::at#21 print_sbyte_at::at#15 print_sbyte_at::at#16 print_sbyte_at::at#17 print_sbyte_at::at#18 print_sbyte_at::at#19 print_sbyte_at::at#20 print_sbyte_at::at#0 print_sbyte_at::at#1 print_sbyte_at::at#2 ] -[ print_sbyte_at::b#24 print_sbyte_at::b#0 print_sbyte_at::b#22 print_sbyte_at::b#4 print_sbyte_at::b#16 print_sbyte_at::b#12 print_sbyte_at::b#13 print_sbyte_at::b#14 print_sbyte_at::b#15 print_sbyte_at::b#17 print_sbyte_at::b#18 print_sbyte_at::b#19 print_sbyte_at::b#20 print_sbyte_at::b#21 print_sbyte_at::b#5 print_sbyte_at::b#6 print_sbyte_at::b#7 print_sbyte_at::b#8 print_sbyte_at::b#9 print_sbyte_at::b#10 print_sbyte_at::b#11 print_sbyte_at::b#1 print_sbyte_at::b#2 print_sbyte_at::b#3 ] -[ print_char_at::ch#4 print_char_at::ch#2 print_char_at::ch#3 ] -[ print_char_at::at#4 print_char_at::at#2 print_char_at::at#3 print_char_at::at#0 print_char_at::at#1 ] -[ debug_print_init::c#2 debug_print_init::c#1 ] -[ debug_print_init::i#2 debug_print_init::i#1 ] -[ debug_print_init::j#2 debug_print_init::j#1 ] -[ print_str_at::str#13 print_str_at::str#15 print_str_at::str#0 ] -[ print_str_at::at#13 print_str_at::at#15 print_str_at::at#0 ] -[ print_cls::sc#2 print_cls::sc#1 ] [ sprites_init::i#2 sprites_init::i#1 ] -Added variable calculate_matrix_16::sx#0 to zero page equivalence class [ calculate_matrix_16::sx#0 ] -Added variable calculate_matrix_16::sy#0 to zero page equivalence class [ calculate_matrix_16::sy#0 ] -Added variable calculate_matrix_16::sz#0 to zero page equivalence class [ calculate_matrix_16::sz#0 ] +Added variable calculate_matrix::sx#0 to zero page equivalence class [ calculate_matrix::sx#0 ] +Added variable calculate_matrix::sy#0 to zero page equivalence class [ calculate_matrix::sy#0 ] Added variable rotate_matrix::x#0 to zero page equivalence class [ rotate_matrix::x#0 ] Added variable rotate_matrix::y#0 to zero page equivalence class [ rotate_matrix::y#0 ] Added variable rotate_matrix::z#0 to zero page equivalence class [ rotate_matrix::z#0 ] Added variable anim::i2#0 to zero page equivalence class [ anim::i2#0 ] Added variable anim::$6 to zero page equivalence class [ anim::$6 ] Added variable anim::$8 to zero page equivalence class [ anim::$8 ] -Added variable print_byte_at::at#0 to zero page equivalence class [ print_byte_at::at#0 ] -Added variable print_byte_at::$0 to zero page equivalence class [ print_byte_at::$0 ] -Added variable print_byte_at::$2 to zero page equivalence class [ print_byte_at::$2 ] -Added variable calculate_matrix_16::t1#0 to zero page equivalence class [ calculate_matrix_16::t1#0 ] -Added variable calculate_matrix_16::t2#0 to zero page equivalence class [ calculate_matrix_16::t2#0 ] -Added variable calculate_matrix_16::$74 to zero page equivalence class [ calculate_matrix_16::$74 ] -Added variable calculate_matrix_16::$75 to zero page equivalence class [ calculate_matrix_16::$75 ] -Added variable calculate_matrix_16::$4 to zero page equivalence class [ calculate_matrix_16::$4 ] -Added variable calculate_matrix_16::$5 to zero page equivalence class [ calculate_matrix_16::$5 ] -Added variable calculate_matrix_16::$76 to zero page equivalence class [ calculate_matrix_16::$76 ] -Added variable calculate_matrix_16::$77 to zero page equivalence class [ calculate_matrix_16::$77 ] -Added variable calculate_matrix_16::$9 to zero page equivalence class [ calculate_matrix_16::$9 ] -Added variable calculate_matrix_16::$10 to zero page equivalence class [ calculate_matrix_16::$10 ] -Added variable calculate_matrix_16::$78 to zero page equivalence class [ calculate_matrix_16::$78 ] -Added variable calculate_matrix_16::$13 to zero page equivalence class [ calculate_matrix_16::$13 ] -Added variable calculate_matrix_16::$14 to zero page equivalence class [ calculate_matrix_16::$14 ] -Added variable calculate_matrix_16::t3#0 to zero page equivalence class [ calculate_matrix_16::t3#0 ] -Added variable calculate_matrix_16::t4#0 to zero page equivalence class [ calculate_matrix_16::t4#0 ] -Added variable calculate_matrix_16::t5#0 to zero page equivalence class [ calculate_matrix_16::t5#0 ] -Added variable calculate_matrix_16::t6#0 to zero page equivalence class [ calculate_matrix_16::t6#0 ] -Added variable calculate_matrix_16::t7#0 to zero page equivalence class [ calculate_matrix_16::t7#0 ] -Added variable calculate_matrix_16::t8#0 to zero page equivalence class [ calculate_matrix_16::t8#0 ] -Added variable calculate_matrix_16::$79 to zero page equivalence class [ calculate_matrix_16::$79 ] -Added variable calculate_matrix_16::$80 to zero page equivalence class [ calculate_matrix_16::$80 ] -Added variable calculate_matrix_16::$81 to zero page equivalence class [ calculate_matrix_16::$81 ] -Added variable calculate_matrix_16::$82 to zero page equivalence class [ calculate_matrix_16::$82 ] -Added variable calculate_matrix_16::$83 to zero page equivalence class [ calculate_matrix_16::$83 ] -Added variable calculate_matrix_16::$84 to zero page equivalence class [ calculate_matrix_16::$84 ] -Added variable calculate_matrix_16::$28 to zero page equivalence class [ calculate_matrix_16::$28 ] -Added variable calculate_matrix_16::$29 to zero page equivalence class [ calculate_matrix_16::$29 ] -Added variable calculate_matrix_16::$30 to zero page equivalence class [ calculate_matrix_16::$30 ] -Added variable calculate_matrix_16::$31 to zero page equivalence class [ calculate_matrix_16::$31 ] -Added variable calculate_matrix_16::$32 to zero page equivalence class [ calculate_matrix_16::$32 ] -Added variable calculate_matrix_16::$33 to zero page equivalence class [ calculate_matrix_16::$33 ] -Added variable calculate_matrix_16::$35 to zero page equivalence class [ calculate_matrix_16::$35 ] -Added variable calculate_matrix_16::$36 to zero page equivalence class [ calculate_matrix_16::$36 ] -Added variable calculate_matrix_16::$37 to zero page equivalence class [ calculate_matrix_16::$37 ] -Added variable calculate_matrix_16::$38 to zero page equivalence class [ calculate_matrix_16::$38 ] -Added variable calculate_matrix_16::$39 to zero page equivalence class [ calculate_matrix_16::$39 ] -Added variable calculate_matrix_16::$40 to zero page equivalence class [ calculate_matrix_16::$40 ] -Added variable calculate_matrix_16::$85 to zero page equivalence class [ calculate_matrix_16::$85 ] -Added variable calculate_matrix_16::$86 to zero page equivalence class [ calculate_matrix_16::$86 ] -Added variable calculate_matrix_16::$87 to zero page equivalence class [ calculate_matrix_16::$87 ] -Added variable calculate_matrix_16::$88 to zero page equivalence class [ calculate_matrix_16::$88 ] -Added variable calculate_matrix_16::$89 to zero page equivalence class [ calculate_matrix_16::$89 ] -Added variable calculate_matrix_16::$90 to zero page equivalence class [ calculate_matrix_16::$90 ] -Added variable calculate_matrix_16::$48 to zero page equivalence class [ calculate_matrix_16::$48 ] -Added variable calculate_matrix_16::$49 to zero page equivalence class [ calculate_matrix_16::$49 ] -Added variable calculate_matrix_16::$50 to zero page equivalence class [ calculate_matrix_16::$50 ] -Added variable calculate_matrix_16::$51 to zero page equivalence class [ calculate_matrix_16::$51 ] -Added variable calculate_matrix_16::$52 to zero page equivalence class [ calculate_matrix_16::$52 ] -Added variable calculate_matrix_16::$53 to zero page equivalence class [ calculate_matrix_16::$53 ] -Added variable calculate_matrix_16::$55 to zero page equivalence class [ calculate_matrix_16::$55 ] -Added variable calculate_matrix_16::$56 to zero page equivalence class [ calculate_matrix_16::$56 ] -Added variable calculate_matrix_16::$57 to zero page equivalence class [ calculate_matrix_16::$57 ] -Added variable calculate_matrix_16::$58 to zero page equivalence class [ calculate_matrix_16::$58 ] -Added variable calculate_matrix_16::$59 to zero page equivalence class [ calculate_matrix_16::$59 ] -Added variable calculate_matrix_16::$60 to zero page equivalence class [ calculate_matrix_16::$60 ] -Added variable calculate_matrix_16::t9#0 to zero page equivalence class [ calculate_matrix_16::t9#0 ] -Added variable calculate_matrix_16::t10#0 to zero page equivalence class [ calculate_matrix_16::t10#0 ] -Added variable calculate_matrix_16::$91 to zero page equivalence class [ calculate_matrix_16::$91 ] -Added variable calculate_matrix_16::$92 to zero page equivalence class [ calculate_matrix_16::$92 ] -Added variable calculate_matrix_16::$66 to zero page equivalence class [ calculate_matrix_16::$66 ] -Added variable calculate_matrix_16::$67 to zero page equivalence class [ calculate_matrix_16::$67 ] -Added variable calculate_matrix_16::$93 to zero page equivalence class [ calculate_matrix_16::$93 ] -Added variable calculate_matrix_16::$94 to zero page equivalence class [ calculate_matrix_16::$94 ] -Added variable calculate_matrix_16::$71 to zero page equivalence class [ calculate_matrix_16::$71 ] -Added variable calculate_matrix_16::$72 to zero page equivalence class [ calculate_matrix_16::$72 ] -Added variable debug_print_init::col#0 to zero page equivalence class [ debug_print_init::col#0 ] -Added variable debug_print_init::$59 to zero page equivalence class [ debug_print_init::$59 ] -Added variable debug_print_init::$60 to zero page equivalence class [ debug_print_init::$60 ] -Added variable debug_print_init::$63 to zero page equivalence class [ debug_print_init::$63 ] -Added variable debug_print_init::$64 to zero page equivalence class [ debug_print_init::$64 ] -Added variable debug_print_init::$67 to zero page equivalence class [ debug_print_init::$67 ] -Added variable debug_print_init::$68 to zero page equivalence class [ debug_print_init::$68 ] -Added variable debug_print_init::$71 to zero page equivalence class [ debug_print_init::$71 ] -Added variable debug_print_init::$72 to zero page equivalence class [ debug_print_init::$72 ] -Added variable debug_print_init::$75 to zero page equivalence class [ debug_print_init::$75 ] -Added variable debug_print_init::$76 to zero page equivalence class [ debug_print_init::$76 ] -Added variable debug_print_init::$79 to zero page equivalence class [ debug_print_init::$79 ] -Added variable debug_print_init::$80 to zero page equivalence class [ debug_print_init::$80 ] -Added variable debug_print_init::$83 to zero page equivalence class [ debug_print_init::$83 ] -Added variable debug_print_init::$84 to zero page equivalence class [ debug_print_init::$84 ] -Added variable debug_print_init::$87 to zero page equivalence class [ debug_print_init::$87 ] -Added variable debug_print_init::$88 to zero page equivalence class [ debug_print_init::$88 ] -Added variable debug_print_init::$91 to zero page equivalence class [ debug_print_init::$91 ] -Added variable debug_print_init::$92 to zero page equivalence class [ debug_print_init::$92 ] -Added variable sprites_init::$3 to zero page equivalence class [ sprites_init::$3 ] +Added variable calculate_matrix::t1#0 to zero page equivalence class [ calculate_matrix::t1#0 ] +Added variable calculate_matrix::t2#0 to zero page equivalence class [ calculate_matrix::t2#0 ] +Added variable calculate_matrix::t3#0 to zero page equivalence class [ calculate_matrix::t3#0 ] +Added variable calculate_matrix::t4#0 to zero page equivalence class [ calculate_matrix::t4#0 ] +Added variable calculate_matrix::t5#0 to zero page equivalence class [ calculate_matrix::t5#0 ] +Added variable calculate_matrix::t6#0 to zero page equivalence class [ calculate_matrix::t6#0 ] +Added variable calculate_matrix::t7#0 to zero page equivalence class [ calculate_matrix::t7#0 ] +Added variable calculate_matrix::t8#0 to zero page equivalence class [ calculate_matrix::t8#0 ] +Added variable calculate_matrix::t9#0 to zero page equivalence class [ calculate_matrix::t9#0 ] +Added variable calculate_matrix::t10#0 to zero page equivalence class [ calculate_matrix::t10#0 ] +Added variable calculate_matrix::$10 to zero page equivalence class [ calculate_matrix::$10 ] +Added variable calculate_matrix::$11 to zero page equivalence class [ calculate_matrix::$11 ] +Added variable calculate_matrix::$12 to zero page equivalence class [ calculate_matrix::$12 ] +Added variable calculate_matrix::$13 to zero page equivalence class [ calculate_matrix::$13 ] +Added variable calculate_matrix::$14 to zero page equivalence class [ calculate_matrix::$14 ] +Added variable calculate_matrix::$15 to zero page equivalence class [ calculate_matrix::$15 ] +Added variable calculate_matrix::$16 to zero page equivalence class [ calculate_matrix::$16 ] +Added variable calculate_matrix::$17 to zero page equivalence class [ calculate_matrix::$17 ] +Added variable calculate_matrix::$18 to zero page equivalence class [ calculate_matrix::$18 ] +Added variable calculate_matrix::$19 to zero page equivalence class [ calculate_matrix::$19 ] +Added variable calculate_matrix::$20 to zero page equivalence class [ calculate_matrix::$20 ] +Added variable calculate_matrix::$21 to zero page equivalence class [ calculate_matrix::$21 ] +Added variable calculate_matrix::$22 to zero page equivalence class [ calculate_matrix::$22 ] +Added variable calculate_matrix::$23 to zero page equivalence class [ calculate_matrix::$23 ] +Added variable calculate_matrix::$24 to zero page equivalence class [ calculate_matrix::$24 ] +Added variable calculate_matrix::$25 to zero page equivalence class [ calculate_matrix::$25 ] +Added variable calculate_matrix::$26 to zero page equivalence class [ calculate_matrix::$26 ] +Added variable calculate_matrix::$27 to zero page equivalence class [ calculate_matrix::$27 ] +Added variable calculate_matrix::$28 to zero page equivalence class [ calculate_matrix::$28 ] +Added variable calculate_matrix::$29 to zero page equivalence class [ calculate_matrix::$29 ] +Added variable calculate_matrix::$30 to zero page equivalence class [ calculate_matrix::$30 ] +Added variable calculate_matrix::$31 to zero page equivalence class [ calculate_matrix::$31 ] +Added variable calculate_matrix::$32 to zero page equivalence class [ calculate_matrix::$32 ] +Added variable calculate_matrix::$33 to zero page equivalence class [ calculate_matrix::$33 ] +Added variable calculate_matrix::$34 to zero page equivalence class [ calculate_matrix::$34 ] Complete equivalence classes [ sx#10 sx#3 ] [ sy#10 sy#3 ] -[ sz#10 sz#3 ] [ anim::i#2 anim::i#1 ] -[ debug_print::c#2 debug_print::c#1 ] -[ debug_print::i#2 debug_print::i#1 ] -[ print_sbyte_at::at#21 print_sbyte_at::at#15 print_sbyte_at::at#16 print_sbyte_at::at#17 print_sbyte_at::at#18 print_sbyte_at::at#19 print_sbyte_at::at#20 print_sbyte_at::at#0 print_sbyte_at::at#1 print_sbyte_at::at#2 ] -[ print_sbyte_at::b#24 print_sbyte_at::b#0 print_sbyte_at::b#22 print_sbyte_at::b#4 print_sbyte_at::b#16 print_sbyte_at::b#12 print_sbyte_at::b#13 print_sbyte_at::b#14 print_sbyte_at::b#15 print_sbyte_at::b#17 print_sbyte_at::b#18 print_sbyte_at::b#19 print_sbyte_at::b#20 print_sbyte_at::b#21 print_sbyte_at::b#5 print_sbyte_at::b#6 print_sbyte_at::b#7 print_sbyte_at::b#8 print_sbyte_at::b#9 print_sbyte_at::b#10 print_sbyte_at::b#11 print_sbyte_at::b#1 print_sbyte_at::b#2 print_sbyte_at::b#3 ] -[ print_char_at::ch#4 print_char_at::ch#2 print_char_at::ch#3 ] -[ print_char_at::at#4 print_char_at::at#2 print_char_at::at#3 print_char_at::at#0 print_char_at::at#1 ] -[ debug_print_init::c#2 debug_print_init::c#1 ] -[ debug_print_init::i#2 debug_print_init::i#1 ] -[ debug_print_init::j#2 debug_print_init::j#1 ] -[ print_str_at::str#13 print_str_at::str#15 print_str_at::str#0 ] -[ print_str_at::at#13 print_str_at::at#15 print_str_at::at#0 ] -[ print_cls::sc#2 print_cls::sc#1 ] [ sprites_init::i#2 sprites_init::i#1 ] -[ calculate_matrix_16::sx#0 ] -[ calculate_matrix_16::sy#0 ] -[ calculate_matrix_16::sz#0 ] +[ calculate_matrix::sx#0 ] +[ calculate_matrix::sy#0 ] [ rotate_matrix::x#0 ] [ rotate_matrix::y#0 ] [ rotate_matrix::z#0 ] [ anim::i2#0 ] [ anim::$6 ] [ anim::$8 ] -[ print_byte_at::at#0 ] -[ print_byte_at::$0 ] -[ print_byte_at::$2 ] -[ calculate_matrix_16::t1#0 ] -[ calculate_matrix_16::t2#0 ] -[ calculate_matrix_16::$74 ] -[ calculate_matrix_16::$75 ] -[ calculate_matrix_16::$4 ] -[ calculate_matrix_16::$5 ] -[ calculate_matrix_16::$76 ] -[ calculate_matrix_16::$77 ] -[ calculate_matrix_16::$9 ] -[ calculate_matrix_16::$10 ] -[ calculate_matrix_16::$78 ] -[ calculate_matrix_16::$13 ] -[ calculate_matrix_16::$14 ] -[ calculate_matrix_16::t3#0 ] -[ calculate_matrix_16::t4#0 ] -[ calculate_matrix_16::t5#0 ] -[ calculate_matrix_16::t6#0 ] -[ calculate_matrix_16::t7#0 ] -[ calculate_matrix_16::t8#0 ] -[ calculate_matrix_16::$79 ] -[ calculate_matrix_16::$80 ] -[ calculate_matrix_16::$81 ] -[ calculate_matrix_16::$82 ] -[ calculate_matrix_16::$83 ] -[ calculate_matrix_16::$84 ] -[ calculate_matrix_16::$28 ] -[ calculate_matrix_16::$29 ] -[ calculate_matrix_16::$30 ] -[ calculate_matrix_16::$31 ] -[ calculate_matrix_16::$32 ] -[ calculate_matrix_16::$33 ] -[ calculate_matrix_16::$35 ] -[ calculate_matrix_16::$36 ] -[ calculate_matrix_16::$37 ] -[ calculate_matrix_16::$38 ] -[ calculate_matrix_16::$39 ] -[ calculate_matrix_16::$40 ] -[ calculate_matrix_16::$85 ] -[ calculate_matrix_16::$86 ] -[ calculate_matrix_16::$87 ] -[ calculate_matrix_16::$88 ] -[ calculate_matrix_16::$89 ] -[ calculate_matrix_16::$90 ] -[ calculate_matrix_16::$48 ] -[ calculate_matrix_16::$49 ] -[ calculate_matrix_16::$50 ] -[ calculate_matrix_16::$51 ] -[ calculate_matrix_16::$52 ] -[ calculate_matrix_16::$53 ] -[ calculate_matrix_16::$55 ] -[ calculate_matrix_16::$56 ] -[ calculate_matrix_16::$57 ] -[ calculate_matrix_16::$58 ] -[ calculate_matrix_16::$59 ] -[ calculate_matrix_16::$60 ] -[ calculate_matrix_16::t9#0 ] -[ calculate_matrix_16::t10#0 ] -[ calculate_matrix_16::$91 ] -[ calculate_matrix_16::$92 ] -[ calculate_matrix_16::$66 ] -[ calculate_matrix_16::$67 ] -[ calculate_matrix_16::$93 ] -[ calculate_matrix_16::$94 ] -[ calculate_matrix_16::$71 ] -[ calculate_matrix_16::$72 ] -[ debug_print_init::col#0 ] -[ debug_print_init::$59 ] -[ debug_print_init::$60 ] -[ debug_print_init::$63 ] -[ debug_print_init::$64 ] -[ debug_print_init::$67 ] -[ debug_print_init::$68 ] -[ debug_print_init::$71 ] -[ debug_print_init::$72 ] -[ debug_print_init::$75 ] -[ debug_print_init::$76 ] -[ debug_print_init::$79 ] -[ debug_print_init::$80 ] -[ debug_print_init::$83 ] -[ debug_print_init::$84 ] -[ debug_print_init::$87 ] -[ debug_print_init::$88 ] -[ debug_print_init::$91 ] -[ debug_print_init::$92 ] -[ sprites_init::$3 ] +[ calculate_matrix::t1#0 ] +[ calculate_matrix::t2#0 ] +[ calculate_matrix::t3#0 ] +[ calculate_matrix::t4#0 ] +[ calculate_matrix::t5#0 ] +[ calculate_matrix::t6#0 ] +[ calculate_matrix::t7#0 ] +[ calculate_matrix::t8#0 ] +[ calculate_matrix::t9#0 ] +[ calculate_matrix::t10#0 ] +[ calculate_matrix::$10 ] +[ calculate_matrix::$11 ] +[ calculate_matrix::$12 ] +[ calculate_matrix::$13 ] +[ calculate_matrix::$14 ] +[ calculate_matrix::$15 ] +[ calculate_matrix::$16 ] +[ calculate_matrix::$17 ] +[ calculate_matrix::$18 ] +[ calculate_matrix::$19 ] +[ calculate_matrix::$20 ] +[ calculate_matrix::$21 ] +[ calculate_matrix::$22 ] +[ calculate_matrix::$23 ] +[ calculate_matrix::$24 ] +[ calculate_matrix::$25 ] +[ calculate_matrix::$26 ] +[ calculate_matrix::$27 ] +[ calculate_matrix::$28 ] +[ calculate_matrix::$29 ] +[ calculate_matrix::$30 ] +[ calculate_matrix::$31 ] +[ calculate_matrix::$32 ] +[ calculate_matrix::$33 ] +[ calculate_matrix::$34 ] Allocated zp ZP_BYTE:2 [ sx#10 sx#3 ] Allocated zp ZP_BYTE:3 [ sy#10 sy#3 ] -Allocated zp ZP_BYTE:4 [ sz#10 sz#3 ] -Allocated zp ZP_BYTE:5 [ anim::i#2 anim::i#1 ] -Allocated zp ZP_BYTE:6 [ debug_print::c#2 debug_print::c#1 ] -Allocated zp ZP_BYTE:7 [ debug_print::i#2 debug_print::i#1 ] -Allocated zp ZP_WORD:8 [ print_sbyte_at::at#21 print_sbyte_at::at#15 print_sbyte_at::at#16 print_sbyte_at::at#17 print_sbyte_at::at#18 print_sbyte_at::at#19 print_sbyte_at::at#20 print_sbyte_at::at#0 print_sbyte_at::at#1 print_sbyte_at::at#2 ] -Allocated zp ZP_BYTE:10 [ print_sbyte_at::b#24 print_sbyte_at::b#0 print_sbyte_at::b#22 print_sbyte_at::b#4 print_sbyte_at::b#16 print_sbyte_at::b#12 print_sbyte_at::b#13 print_sbyte_at::b#14 print_sbyte_at::b#15 print_sbyte_at::b#17 print_sbyte_at::b#18 print_sbyte_at::b#19 print_sbyte_at::b#20 print_sbyte_at::b#21 print_sbyte_at::b#5 print_sbyte_at::b#6 print_sbyte_at::b#7 print_sbyte_at::b#8 print_sbyte_at::b#9 print_sbyte_at::b#10 print_sbyte_at::b#11 print_sbyte_at::b#1 print_sbyte_at::b#2 print_sbyte_at::b#3 ] -Allocated zp ZP_BYTE:11 [ print_char_at::ch#4 print_char_at::ch#2 print_char_at::ch#3 ] -Allocated zp ZP_WORD:12 [ print_char_at::at#4 print_char_at::at#2 print_char_at::at#3 print_char_at::at#0 print_char_at::at#1 ] -Allocated zp ZP_BYTE:14 [ debug_print_init::c#2 debug_print_init::c#1 ] -Allocated zp ZP_BYTE:15 [ debug_print_init::i#2 debug_print_init::i#1 ] -Allocated zp ZP_BYTE:16 [ debug_print_init::j#2 debug_print_init::j#1 ] -Allocated zp ZP_WORD:17 [ print_str_at::str#13 print_str_at::str#15 print_str_at::str#0 ] -Allocated zp ZP_WORD:19 [ print_str_at::at#13 print_str_at::at#15 print_str_at::at#0 ] -Allocated zp ZP_WORD:21 [ print_cls::sc#2 print_cls::sc#1 ] -Allocated zp ZP_BYTE:23 [ sprites_init::i#2 sprites_init::i#1 ] -Allocated zp ZP_BYTE:24 [ calculate_matrix_16::sx#0 ] -Allocated zp ZP_BYTE:25 [ calculate_matrix_16::sy#0 ] -Allocated zp ZP_BYTE:26 [ calculate_matrix_16::sz#0 ] -Allocated zp ZP_BYTE:27 [ rotate_matrix::x#0 ] -Allocated zp ZP_BYTE:28 [ rotate_matrix::y#0 ] -Allocated zp ZP_BYTE:29 [ rotate_matrix::z#0 ] -Allocated zp ZP_BYTE:30 [ anim::i2#0 ] -Allocated zp ZP_BYTE:31 [ anim::$6 ] -Allocated zp ZP_BYTE:32 [ anim::$8 ] -Allocated zp ZP_WORD:33 [ print_byte_at::at#0 ] -Allocated zp ZP_BYTE:35 [ print_byte_at::$0 ] -Allocated zp ZP_BYTE:36 [ print_byte_at::$2 ] -Allocated zp ZP_BYTE:37 [ calculate_matrix_16::t1#0 ] -Allocated zp ZP_BYTE:38 [ calculate_matrix_16::t2#0 ] -Allocated zp ZP_WORD:39 [ calculate_matrix_16::$74 ] -Allocated zp ZP_WORD:41 [ calculate_matrix_16::$75 ] -Allocated zp ZP_WORD:43 [ calculate_matrix_16::$4 ] -Allocated zp ZP_BYTE:45 [ calculate_matrix_16::$5 ] -Allocated zp ZP_WORD:46 [ calculate_matrix_16::$76 ] -Allocated zp ZP_WORD:48 [ calculate_matrix_16::$77 ] -Allocated zp ZP_WORD:50 [ calculate_matrix_16::$9 ] -Allocated zp ZP_BYTE:52 [ calculate_matrix_16::$10 ] -Allocated zp ZP_WORD:53 [ calculate_matrix_16::$78 ] -Allocated zp ZP_WORD:55 [ calculate_matrix_16::$13 ] -Allocated zp ZP_BYTE:57 [ calculate_matrix_16::$14 ] -Allocated zp ZP_BYTE:58 [ calculate_matrix_16::t3#0 ] -Allocated zp ZP_BYTE:59 [ calculate_matrix_16::t4#0 ] -Allocated zp ZP_BYTE:60 [ calculate_matrix_16::t5#0 ] -Allocated zp ZP_BYTE:61 [ calculate_matrix_16::t6#0 ] -Allocated zp ZP_BYTE:62 [ calculate_matrix_16::t7#0 ] -Allocated zp ZP_BYTE:63 [ calculate_matrix_16::t8#0 ] -Allocated zp ZP_WORD:64 [ calculate_matrix_16::$79 ] -Allocated zp ZP_WORD:66 [ calculate_matrix_16::$80 ] -Allocated zp ZP_WORD:68 [ calculate_matrix_16::$81 ] -Allocated zp ZP_WORD:70 [ calculate_matrix_16::$82 ] -Allocated zp ZP_WORD:72 [ calculate_matrix_16::$83 ] -Allocated zp ZP_WORD:74 [ calculate_matrix_16::$84 ] -Allocated zp ZP_WORD:76 [ calculate_matrix_16::$28 ] -Allocated zp ZP_WORD:78 [ calculate_matrix_16::$29 ] -Allocated zp ZP_WORD:80 [ calculate_matrix_16::$30 ] -Allocated zp ZP_WORD:82 [ calculate_matrix_16::$31 ] -Allocated zp ZP_WORD:84 [ calculate_matrix_16::$32 ] -Allocated zp ZP_BYTE:86 [ calculate_matrix_16::$33 ] -Allocated zp ZP_WORD:87 [ calculate_matrix_16::$35 ] -Allocated zp ZP_WORD:89 [ calculate_matrix_16::$36 ] -Allocated zp ZP_WORD:91 [ calculate_matrix_16::$37 ] -Allocated zp ZP_WORD:93 [ calculate_matrix_16::$38 ] -Allocated zp ZP_WORD:95 [ calculate_matrix_16::$39 ] -Allocated zp ZP_BYTE:97 [ calculate_matrix_16::$40 ] -Allocated zp ZP_WORD:98 [ calculate_matrix_16::$85 ] -Allocated zp ZP_WORD:100 [ calculate_matrix_16::$86 ] -Allocated zp ZP_WORD:102 [ calculate_matrix_16::$87 ] -Allocated zp ZP_WORD:104 [ calculate_matrix_16::$88 ] -Allocated zp ZP_WORD:106 [ calculate_matrix_16::$89 ] -Allocated zp ZP_WORD:108 [ calculate_matrix_16::$90 ] -Allocated zp ZP_WORD:110 [ calculate_matrix_16::$48 ] -Allocated zp ZP_WORD:112 [ calculate_matrix_16::$49 ] -Allocated zp ZP_WORD:114 [ calculate_matrix_16::$50 ] -Allocated zp ZP_WORD:116 [ calculate_matrix_16::$51 ] -Allocated zp ZP_WORD:118 [ calculate_matrix_16::$52 ] -Allocated zp ZP_BYTE:120 [ calculate_matrix_16::$53 ] -Allocated zp ZP_WORD:121 [ calculate_matrix_16::$55 ] -Allocated zp ZP_WORD:123 [ calculate_matrix_16::$56 ] -Allocated zp ZP_WORD:125 [ calculate_matrix_16::$57 ] -Allocated zp ZP_WORD:127 [ calculate_matrix_16::$58 ] -Allocated zp ZP_WORD:129 [ calculate_matrix_16::$59 ] -Allocated zp ZP_BYTE:131 [ calculate_matrix_16::$60 ] -Allocated zp ZP_BYTE:132 [ calculate_matrix_16::t9#0 ] -Allocated zp ZP_BYTE:133 [ calculate_matrix_16::t10#0 ] -Allocated zp ZP_WORD:134 [ calculate_matrix_16::$91 ] -Allocated zp ZP_WORD:136 [ calculate_matrix_16::$92 ] -Allocated zp ZP_WORD:138 [ calculate_matrix_16::$66 ] -Allocated zp ZP_BYTE:140 [ calculate_matrix_16::$67 ] -Allocated zp ZP_WORD:141 [ calculate_matrix_16::$93 ] -Allocated zp ZP_WORD:143 [ calculate_matrix_16::$94 ] -Allocated zp ZP_WORD:145 [ calculate_matrix_16::$71 ] -Allocated zp ZP_BYTE:147 [ calculate_matrix_16::$72 ] -Allocated zp ZP_BYTE:148 [ debug_print_init::col#0 ] -Allocated zp ZP_WORD:149 [ debug_print_init::$59 ] -Allocated zp ZP_WORD:151 [ debug_print_init::$60 ] -Allocated zp ZP_WORD:153 [ debug_print_init::$63 ] -Allocated zp ZP_WORD:155 [ debug_print_init::$64 ] -Allocated zp ZP_WORD:157 [ debug_print_init::$67 ] -Allocated zp ZP_WORD:159 [ debug_print_init::$68 ] -Allocated zp ZP_WORD:161 [ debug_print_init::$71 ] -Allocated zp ZP_WORD:163 [ debug_print_init::$72 ] -Allocated zp ZP_WORD:165 [ debug_print_init::$75 ] -Allocated zp ZP_WORD:167 [ debug_print_init::$76 ] -Allocated zp ZP_WORD:169 [ debug_print_init::$79 ] -Allocated zp ZP_WORD:171 [ debug_print_init::$80 ] -Allocated zp ZP_WORD:173 [ debug_print_init::$83 ] -Allocated zp ZP_WORD:175 [ debug_print_init::$84 ] -Allocated zp ZP_WORD:177 [ debug_print_init::$87 ] -Allocated zp ZP_WORD:179 [ debug_print_init::$88 ] -Allocated zp ZP_WORD:181 [ debug_print_init::$91 ] -Allocated zp ZP_WORD:183 [ debug_print_init::$92 ] -Allocated zp ZP_BYTE:185 [ sprites_init::$3 ] +Allocated zp ZP_BYTE:4 [ anim::i#2 anim::i#1 ] +Allocated zp ZP_BYTE:5 [ sprites_init::i#2 sprites_init::i#1 ] +Allocated zp ZP_BYTE:6 [ calculate_matrix::sx#0 ] +Allocated zp ZP_BYTE:7 [ calculate_matrix::sy#0 ] +Allocated zp ZP_BYTE:8 [ rotate_matrix::x#0 ] +Allocated zp ZP_BYTE:9 [ rotate_matrix::y#0 ] +Allocated zp ZP_BYTE:10 [ rotate_matrix::z#0 ] +Allocated zp ZP_BYTE:11 [ anim::i2#0 ] +Allocated zp ZP_BYTE:12 [ anim::$6 ] +Allocated zp ZP_BYTE:13 [ anim::$8 ] +Allocated zp ZP_BYTE:14 [ calculate_matrix::t1#0 ] +Allocated zp ZP_BYTE:15 [ calculate_matrix::t2#0 ] +Allocated zp ZP_BYTE:16 [ calculate_matrix::t3#0 ] +Allocated zp ZP_BYTE:17 [ calculate_matrix::t4#0 ] +Allocated zp ZP_BYTE:18 [ calculate_matrix::t5#0 ] +Allocated zp ZP_BYTE:19 [ calculate_matrix::t6#0 ] +Allocated zp ZP_BYTE:20 [ calculate_matrix::t7#0 ] +Allocated zp ZP_BYTE:21 [ calculate_matrix::t8#0 ] +Allocated zp ZP_BYTE:22 [ calculate_matrix::t9#0 ] +Allocated zp ZP_BYTE:23 [ calculate_matrix::t10#0 ] +Allocated zp ZP_BYTE:24 [ calculate_matrix::$10 ] +Allocated zp ZP_BYTE:25 [ calculate_matrix::$11 ] +Allocated zp ZP_BYTE:26 [ calculate_matrix::$12 ] +Allocated zp ZP_BYTE:27 [ calculate_matrix::$13 ] +Allocated zp ZP_BYTE:28 [ calculate_matrix::$14 ] +Allocated zp ZP_BYTE:29 [ calculate_matrix::$15 ] +Allocated zp ZP_BYTE:30 [ calculate_matrix::$16 ] +Allocated zp ZP_BYTE:31 [ calculate_matrix::$17 ] +Allocated zp ZP_BYTE:32 [ calculate_matrix::$18 ] +Allocated zp ZP_BYTE:33 [ calculate_matrix::$19 ] +Allocated zp ZP_BYTE:34 [ calculate_matrix::$20 ] +Allocated zp ZP_BYTE:35 [ calculate_matrix::$21 ] +Allocated zp ZP_BYTE:36 [ calculate_matrix::$22 ] +Allocated zp ZP_BYTE:37 [ calculate_matrix::$23 ] +Allocated zp ZP_BYTE:38 [ calculate_matrix::$24 ] +Allocated zp ZP_BYTE:39 [ calculate_matrix::$25 ] +Allocated zp ZP_BYTE:40 [ calculate_matrix::$26 ] +Allocated zp ZP_BYTE:41 [ calculate_matrix::$27 ] +Allocated zp ZP_BYTE:42 [ calculate_matrix::$28 ] +Allocated zp ZP_BYTE:43 [ calculate_matrix::$29 ] +Allocated zp ZP_BYTE:44 [ calculate_matrix::$30 ] +Allocated zp ZP_BYTE:45 [ calculate_matrix::$31 ] +Allocated zp ZP_BYTE:46 [ calculate_matrix::$32 ] +Allocated zp ZP_BYTE:47 [ calculate_matrix::$33 ] +Allocated zp ZP_BYTE:48 [ calculate_matrix::$34 ] INITIAL ASM //SEG0 Basic Upstart @@ -4662,9 +1998,9 @@ INITIAL ASM .label SPRITES_ENABLE = $d015 .label BORDERCOL = $d020 .label SPRITES_COLS = $d027 + .const GREEN = 5 .const LIGHT_BLUE = $e .const LIGHT_GREY = $f - .label print_screen = $400 .label xr = $f0 .label yr = $f1 .label zr = $f2 @@ -4673,7 +2009,7 @@ INITIAL ASM .label yp = $f5 .label psp1 = $f6 .label psp2 = $f8 - .label SCREEN = $400 + .const sz = 0 .label mulf_sqr1 = $2400 .label mulf_sqr2 = $2600 .label SPRITE = $3000 @@ -4684,17 +2020,15 @@ INITIAL ASM .label SINH_HI = $4200 .label SINQ_LO = $4400 .label SINQ_HI = $4600 - .label COSH_LO = SINH_LO+$40 - .label COSH_HI = SINH_HI+$40 - .label COSQ_HI = SINQ_HI+$40 + .label COSH = SINH+$40 + .label COSQ = SINQ+$40 .label sx = 2 .label sy = 3 - .label sz = 4 //SEG2 @begin bbegin: - jmp b29 -//SEG3 @29 -b29: + jmp b30 +//SEG3 @30 +b30: //SEG4 kickasm(location (const byte*) mulf_sqr1#0) {{ .for(var i=0;i<$200;i++) { .if(i<=159) { .byte round((i*i)/256) } .if(i>159 && i<=351 ) { .byte round(((i-256)*(i-256))/256) } .if(i>351) { .byte round(((512-i)*(512-i))/256) } } }} //SEG5 kickasm(location (const byte*) mulf_sqr2#0) {{ .for(var i=0;i<$200;i++) { .if(i<=159) { .byte round((-i-1)*(-i-1)/256) } .if(i>159 && i<=351 ) { .byte round(((255-i)*(255-i))/256) } .if(i>351) { .byte round(((i-511)*(i-511))/256) } } }} //SEG6 kickasm(location (const byte*) SPRITE#0) {{ .var pic = LoadPicture("balloon.png", List().add($000000, $ffffff)) .for (var y=0; y<21; y++) .for (var x=0;x<3; x++) .byte pic.getSinglecolorByte(x,y) }} @@ -4707,8 +2041,8 @@ b29: //SEG13 kickasm(location (const byte*) SINQ_HI#0) {{ { .var min = -$1000 .var max = $1000 .var ampl = max-min; .for(var i=0;i<$140;i++) { .var rad = i*2*PI/256; .byte >(min+(ampl/2)+(ampl/2)*sin(rad)) } } }} //SEG14 [11] call main jsr main -//SEG15 [12] phi from @29 to @end [phi:@29->@end] -bend_from_b29: +//SEG15 [12] phi from @30 to @end [phi:@30->@end] +bend_from_b30: jmp bend //SEG16 @end bend: @@ -4731,696 +2065,181 @@ main: { sta psp2 lda #>mulf_sqr2 sta psp2+1 - //SEG23 [17] call debug_print_init - //SEG24 [208] phi from main::@1 to debug_print_init [phi:main::@1->debug_print_init] - debug_print_init_from_b1: - jsr debug_print_init - //SEG25 [18] phi from main::@1 to main::@2 [phi:main::@1->main::@2] - b2_from_b1: - jmp b2 - //SEG26 main::@2 - b2: - //SEG27 [19] call anim - //SEG28 [21] phi from main::@2 to anim [phi:main::@2->anim] - anim_from_b2: + //SEG23 [17] call anim + //SEG24 [19] phi from main::@1 to anim [phi:main::@1->anim] + anim_from_b1: jsr anim jmp breturn - //SEG29 main::@return + //SEG25 main::@return breturn: - //SEG30 [20] return + //SEG26 [18] return rts } -//SEG31 anim +//SEG27 anim anim: { - .label _6 = $1f - .label _8 = $20 - .label i2 = $1e - .label i = 5 - //SEG32 [22] phi from anim to anim::@1 [phi:anim->anim::@1] + .label _6 = $c + .label _8 = $d + .label i2 = $b + .label i = 4 + //SEG28 [20] phi from anim to anim::@1 [phi:anim->anim::@1] b1_from_anim: - //SEG33 [22] phi (signed byte) sz#10 = (byte/signed byte/word/signed word/dword/signed dword) 0 [phi:anim->anim::@1#0] -- vbsz1=vbuc1 - lda #0 - sta sz - //SEG34 [22] phi (signed byte) sy#10 = (byte/signed byte/word/signed word/dword/signed dword) 0 [phi:anim->anim::@1#1] -- vbsz1=vbuc1 + //SEG29 [20] phi (signed byte) sy#10 = (byte/signed byte/word/signed word/dword/signed dword) 0 [phi:anim->anim::@1#0] -- vbsz1=vbuc1 lda #0 sta sy - //SEG35 [22] phi (signed byte) sx#10 = (byte/signed byte/word/signed word/dword/signed dword) 0 [phi:anim->anim::@1#2] -- vbsz1=vbuc1 + //SEG30 [20] phi (signed byte) sx#10 = (byte/signed byte/word/signed word/dword/signed dword) 0 [phi:anim->anim::@1#1] -- vbsz1=vbuc1 lda #0 sta sx jmp b1 - //SEG36 anim::@1 + //SEG31 anim::@1 b1: jmp b4 - //SEG37 anim::@4 + //SEG32 anim::@4 b4: - //SEG38 [23] if(*((const byte*) RASTER#0)!=(byte/word/signed word/dword/signed dword) 255) goto anim::@4 -- _deref_pbuc1_neq_vbuc2_then_la1 + //SEG33 [21] if(*((const byte*) RASTER#0)!=(byte/word/signed word/dword/signed dword) 255) goto anim::@4 -- _deref_pbuc1_neq_vbuc2_then_la1 lda RASTER cmp #$ff bne b4 jmp b6 - //SEG39 anim::@6 + //SEG34 anim::@6 b6: - //SEG40 [24] *((const byte*) BORDERCOL#0) ← ++ *((const byte*) BORDERCOL#0) -- _deref_pbuc1=_inc__deref_pbuc1 + //SEG35 [22] *((const byte*) BORDERCOL#0) ← ++ *((const byte*) BORDERCOL#0) -- _deref_pbuc1=_inc__deref_pbuc1 inc BORDERCOL - //SEG41 [25] (signed byte) calculate_matrix_16::sx#0 ← (signed byte) sx#10 -- vbsz1=vbsz2 + //SEG36 [23] (signed byte) calculate_matrix::sx#0 ← (signed byte) sx#10 -- vbsz1=vbsz2 lda sx - sta calculate_matrix_16.sx - //SEG42 [26] (signed byte) calculate_matrix_16::sy#0 ← (signed byte) sy#10 -- vbsz1=vbsz2 + sta calculate_matrix.sx + //SEG37 [24] (signed byte) calculate_matrix::sy#0 ← (signed byte) sy#10 -- vbsz1=vbsz2 lda sy - sta calculate_matrix_16.sy - //SEG43 [27] (signed byte) calculate_matrix_16::sz#0 ← (signed byte) sz#10 -- vbsz1=vbsz2 - lda sz - sta calculate_matrix_16.sz - //SEG44 [28] call calculate_matrix_16 - jsr calculate_matrix_16 - //SEG45 [29] phi from anim::@6 to anim::@15 [phi:anim::@6->anim::@15] + sta calculate_matrix.sy + //SEG38 [25] call calculate_matrix + jsr calculate_matrix + //SEG39 [26] phi from anim::@6 to anim::@15 [phi:anim::@6->anim::@15] b15_from_b6: jmp b15 - //SEG46 anim::@15 + //SEG40 anim::@15 b15: - //SEG47 [30] call store_matrix + //SEG41 [27] call store_matrix jsr store_matrix - //SEG48 [31] phi from anim::@15 to anim::@7 [phi:anim::@15->anim::@7] + //SEG42 [28] phi from anim::@15 to anim::@7 [phi:anim::@15->anim::@7] b7_from_b15: - //SEG49 [31] phi (byte) anim::i#2 = (byte/signed byte/word/signed word/dword/signed dword) 0 [phi:anim::@15->anim::@7#0] -- vbuz1=vbuc1 + //SEG43 [28] phi (byte) anim::i#2 = (byte/signed byte/word/signed word/dword/signed dword) 0 [phi:anim::@15->anim::@7#0] -- vbuz1=vbuc1 lda #0 sta i jmp b7 - //SEG50 [31] phi from anim::@17 to anim::@7 [phi:anim::@17->anim::@7] + //SEG44 [28] phi from anim::@17 to anim::@7 [phi:anim::@17->anim::@7] b7_from_b17: - //SEG51 [31] phi (byte) anim::i#2 = (byte) anim::i#1 [phi:anim::@17->anim::@7#0] -- register_copy + //SEG45 [28] phi (byte) anim::i#2 = (byte) anim::i#1 [phi:anim::@17->anim::@7#0] -- register_copy jmp b7 - //SEG52 anim::@7 + //SEG46 anim::@7 b7: - //SEG53 [32] *((const byte*) BORDERCOL#0) ← ++ *((const byte*) BORDERCOL#0) -- _deref_pbuc1=_inc__deref_pbuc1 + //SEG47 [29] *((const byte*) BORDERCOL#0) ← ++ *((const byte*) BORDERCOL#0) -- _deref_pbuc1=_inc__deref_pbuc1 inc BORDERCOL - //SEG54 [33] (signed byte) rotate_matrix::x#0 ← *((const signed byte[8]) xs#0 + (byte) anim::i#2) -- vbsz1=pbsc1_derefidx_vbuz2 + //SEG48 [30] (signed byte) rotate_matrix::x#0 ← *((const signed byte[8]) xs#0 + (byte) anim::i#2) -- vbsz1=pbsc1_derefidx_vbuz2 ldy i lda xs,y sta rotate_matrix.x - //SEG55 [34] (signed byte) rotate_matrix::y#0 ← *((const signed byte[8]) ys#0 + (byte) anim::i#2) -- vbsz1=pbsc1_derefidx_vbuz2 + //SEG49 [31] (signed byte) rotate_matrix::y#0 ← *((const signed byte[8]) ys#0 + (byte) anim::i#2) -- vbsz1=pbsc1_derefidx_vbuz2 ldy i lda ys,y sta rotate_matrix.y - //SEG56 [35] (signed byte) rotate_matrix::z#0 ← *((const signed byte[8]) zs#0 + (byte) anim::i#2) -- vbsz1=pbsc1_derefidx_vbuz2 + //SEG50 [32] (signed byte) rotate_matrix::z#0 ← *((const signed byte[8]) zs#0 + (byte) anim::i#2) -- vbsz1=pbsc1_derefidx_vbuz2 ldy i lda zs,y sta rotate_matrix.z - //SEG57 [36] call rotate_matrix + //SEG51 [33] call rotate_matrix jsr rotate_matrix jmp b17 - //SEG58 anim::@17 + //SEG52 anim::@17 b17: - //SEG59 [37] *((const signed byte[8]) xrs#0 + (byte) anim::i#2) ← *((const signed byte*) xr#0) -- pbsc1_derefidx_vbuz1=_deref_pbsc2 + //SEG53 [34] *((const signed byte[8]) xrs#0 + (byte) anim::i#2) ← *((const signed byte*) xr#0) -- pbsc1_derefidx_vbuz1=_deref_pbsc2 ldy i lda xr sta xrs,y - //SEG60 [38] *((const signed byte[8]) yrs#0 + (byte) anim::i#2) ← *((const signed byte*) yr#0) -- pbsc1_derefidx_vbuz1=_deref_pbsc2 + //SEG54 [35] *((const signed byte[8]) yrs#0 + (byte) anim::i#2) ← *((const signed byte*) yr#0) -- pbsc1_derefidx_vbuz1=_deref_pbsc2 ldy i lda yr sta yrs,y - //SEG61 [39] *((const signed byte[8]) zrs#0 + (byte) anim::i#2) ← *((const signed byte*) zr#0) -- pbsc1_derefidx_vbuz1=_deref_pbsc2 + //SEG55 [36] *((const signed byte[8]) zrs#0 + (byte) anim::i#2) ← *((const signed byte*) zr#0) -- pbsc1_derefidx_vbuz1=_deref_pbsc2 ldy i lda zr sta zrs,y - //SEG62 [40] *((const signed byte[8]) pps#0 + (byte) anim::i#2) ← *((const signed byte*) pp#0) -- pbsc1_derefidx_vbuz1=_deref_pbsc2 + //SEG56 [37] *((const signed byte[8]) pps#0 + (byte) anim::i#2) ← *((const signed byte*) pp#0) -- pbsc1_derefidx_vbuz1=_deref_pbsc2 ldy i lda pp sta pps,y - //SEG63 [41] *((const signed byte[8]) xps#0 + (byte) anim::i#2) ← *((const signed byte*) xp#0) -- pbsc1_derefidx_vbuz1=_deref_pbsc2 + //SEG57 [38] *((const signed byte[8]) xps#0 + (byte) anim::i#2) ← *((const signed byte*) xp#0) -- pbsc1_derefidx_vbuz1=_deref_pbsc2 ldy i lda xp sta xps,y - //SEG64 [42] *((const signed byte[8]) yps#0 + (byte) anim::i#2) ← *((const signed byte*) yp#0) -- pbsc1_derefidx_vbuz1=_deref_pbsc2 + //SEG58 [39] *((const signed byte[8]) yps#0 + (byte) anim::i#2) ← *((const signed byte*) yp#0) -- pbsc1_derefidx_vbuz1=_deref_pbsc2 ldy i lda yp sta yps,y - //SEG65 [43] (byte) anim::i2#0 ← (byte) anim::i#2 << (byte/signed byte/word/signed word/dword/signed dword) 1 -- vbuz1=vbuz2_rol_1 + //SEG59 [40] (byte) anim::i2#0 ← (byte) anim::i#2 << (byte/signed byte/word/signed word/dword/signed dword) 1 -- vbuz1=vbuz2_rol_1 lda i asl sta i2 - //SEG66 [44] (byte/word/signed word/dword/signed dword~) anim::$6 ← (byte/word/signed word/dword/signed dword) 128 + (byte)*((const signed byte*) xr#0) -- vbuz1=vbuc1_plus__deref_pbuc2 + //SEG60 [41] (byte/word/signed word/dword/signed dword~) anim::$6 ← (byte/word/signed word/dword/signed dword) 128 + (byte)*((const signed byte*) xp#0) -- vbuz1=vbuc1_plus__deref_pbuc2 lda #$80 clc - adc xr + adc xp sta _6 - //SEG67 [45] *((const byte*) SPRITES_XPOS#0 + (byte) anim::i2#0) ← (byte/word/signed word/dword/signed dword~) anim::$6 -- pbuc1_derefidx_vbuz1=vbuz2 + //SEG61 [42] *((const byte*) SPRITES_XPOS#0 + (byte) anim::i2#0) ← (byte/word/signed word/dword/signed dword~) anim::$6 -- pbuc1_derefidx_vbuz1=vbuz2 lda _6 ldy i2 sta SPRITES_XPOS,y - //SEG68 [46] (byte/word/signed word/dword/signed dword~) anim::$8 ← (byte/word/signed word/dword/signed dword) 128 + (byte)*((const signed byte*) yr#0) -- vbuz1=vbuc1_plus__deref_pbuc2 + //SEG62 [43] (byte/word/signed word/dword/signed dword~) anim::$8 ← (byte/word/signed word/dword/signed dword) 128 + (byte)*((const signed byte*) yp#0) -- vbuz1=vbuc1_plus__deref_pbuc2 lda #$80 clc - adc yr + adc yp sta _8 - //SEG69 [47] *((const byte*) SPRITES_YPOS#0 + (byte) anim::i2#0) ← (byte/word/signed word/dword/signed dword~) anim::$8 -- pbuc1_derefidx_vbuz1=vbuz2 + //SEG63 [44] *((const byte*) SPRITES_YPOS#0 + (byte) anim::i2#0) ← (byte/word/signed word/dword/signed dword~) anim::$8 -- pbuc1_derefidx_vbuz1=vbuz2 lda _8 ldy i2 sta SPRITES_YPOS,y - //SEG70 [48] (byte) anim::i#1 ← ++ (byte) anim::i#2 -- vbuz1=_inc_vbuz1 + //SEG64 [45] (byte) anim::i#1 ← ++ (byte) anim::i#2 -- vbuz1=_inc_vbuz1 inc i - //SEG71 [49] if((byte) anim::i#1!=(byte/signed byte/word/signed word/dword/signed dword) 8) goto anim::@7 -- vbuz1_neq_vbuc1_then_la1 + //SEG65 [46] if((byte) anim::i#1!=(byte/signed byte/word/signed word/dword/signed dword) 8) goto anim::@7 -- vbuz1_neq_vbuc1_then_la1 lda i cmp #8 bne b7_from_b17 jmp b13 - //SEG72 anim::@13 + //SEG66 anim::@13 b13: - //SEG73 [50] *((const byte*) BORDERCOL#0) ← (const byte) LIGHT_GREY#0 -- _deref_pbuc1=vbuc2 + //SEG67 [47] *((const byte*) BORDERCOL#0) ← (const byte) LIGHT_GREY#0 -- _deref_pbuc1=vbuc2 lda #LIGHT_GREY sta BORDERCOL - //SEG74 [51] call debug_print - jsr debug_print - jmp b18 - //SEG75 anim::@18 - b18: - //SEG76 [52] *((const byte*) BORDERCOL#0) ← (const byte) LIGHT_BLUE#0 -- _deref_pbuc1=vbuc2 + //SEG68 [48] *((const byte*) BORDERCOL#0) ← (const byte) LIGHT_BLUE#0 -- _deref_pbuc1=vbuc2 lda #LIGHT_BLUE sta BORDERCOL - //SEG77 [53] (signed byte) sx#3 ← (signed byte) sx#10 - (byte/signed byte/word/signed word/dword/signed dword) 1 -- vbsz1=vbsz1_minus_1 - dec sx - //SEG78 [54] (signed byte) sy#3 ← (signed byte) sy#10 + (byte/signed byte/word/signed word/dword/signed dword) 1 -- vbsz1=vbsz1_plus_1 - inc sy - //SEG79 [55] (signed byte) sz#3 ← (signed byte) sz#10 - (byte/signed byte/word/signed word/dword/signed dword) 1 -- vbsz1=vbsz1_minus_1 - dec sz - //SEG80 [22] phi from anim::@18 to anim::@1 [phi:anim::@18->anim::@1] - b1_from_b18: - //SEG81 [22] phi (signed byte) sz#10 = (signed byte) sz#3 [phi:anim::@18->anim::@1#0] -- register_copy - //SEG82 [22] phi (signed byte) sy#10 = (signed byte) sy#3 [phi:anim::@18->anim::@1#1] -- register_copy - //SEG83 [22] phi (signed byte) sx#10 = (signed byte) sx#3 [phi:anim::@18->anim::@1#2] -- register_copy - jmp b1 -} -//SEG84 debug_print -debug_print: { - .label at_line = SCREEN+$13*$28 - .label c = 6 - .label i = 7 - //SEG85 [56] (signed byte) print_sbyte_at::b#4 ← (signed byte) sx#10 -- vbsz1=vbsz2 - lda sx - sta print_sbyte_at.b - //SEG86 [57] call print_sbyte_at - //SEG87 [103] phi from debug_print to print_sbyte_at [phi:debug_print->print_sbyte_at] - print_sbyte_at_from_debug_print: - //SEG88 [103] phi (byte*) print_sbyte_at::at#21 = (const byte*) SCREEN#0+(byte/signed byte/word/signed word/dword/signed dword) 37 [phi:debug_print->print_sbyte_at#0] -- pbuz1=pbuc1 - lda #SCREEN+$25 - sta print_sbyte_at.at+1 - //SEG89 [103] phi (signed byte) print_sbyte_at::b#22 = (signed byte) print_sbyte_at::b#4 [phi:debug_print->print_sbyte_at#1] -- register_copy - jsr print_sbyte_at - jmp b3 - //SEG90 debug_print::@3 - b3: - //SEG91 [58] (signed byte) print_sbyte_at::b#5 ← (signed byte) sy#10 -- vbsz1=vbsz2 + //SEG69 [49] (signed byte) sx#3 ← (signed byte) sx#10 + (byte/signed byte/word/signed word/dword/signed dword) 2 -- vbsz1=vbsz1_plus_2 + inc sx + inc sx + //SEG70 [50] (signed byte) sy#3 ← (signed byte) sy#10 - (byte/signed byte/word/signed word/dword/signed dword) 3 -- vbsz1=vbsz1_minus_vbuc1 lda sy - sta print_sbyte_at.b - //SEG92 [59] call print_sbyte_at - //SEG93 [103] phi from debug_print::@3 to print_sbyte_at [phi:debug_print::@3->print_sbyte_at] - print_sbyte_at_from_b3: - //SEG94 [103] phi (byte*) print_sbyte_at::at#21 = (const byte*) SCREEN#0+(byte/signed byte/word/signed word/dword/signed dword) 40*(byte/signed byte/word/signed word/dword/signed dword) 1+(byte/signed byte/word/signed word/dword/signed dword) 37 [phi:debug_print::@3->print_sbyte_at#0] -- pbuz1=pbuc1 - lda #SCREEN+$28*1+$25 - sta print_sbyte_at.at+1 - //SEG95 [103] phi (signed byte) print_sbyte_at::b#22 = (signed byte) print_sbyte_at::b#5 [phi:debug_print::@3->print_sbyte_at#1] -- register_copy - jsr print_sbyte_at - jmp b4 - //SEG96 debug_print::@4 - b4: - //SEG97 [60] (signed byte) print_sbyte_at::b#6 ← (signed byte) sz#10 -- vbsz1=vbsz2 - lda sz - sta print_sbyte_at.b - //SEG98 [61] call print_sbyte_at - //SEG99 [103] phi from debug_print::@4 to print_sbyte_at [phi:debug_print::@4->print_sbyte_at] - print_sbyte_at_from_b4: - //SEG100 [103] phi (byte*) print_sbyte_at::at#21 = (const byte*) SCREEN#0+(byte/signed byte/word/signed word/dword/signed dword) 40*(byte/signed byte/word/signed word/dword/signed dword) 2+(byte/signed byte/word/signed word/dword/signed dword) 37 [phi:debug_print::@4->print_sbyte_at#0] -- pbuz1=pbuc1 - lda #SCREEN+$28*2+$25 - sta print_sbyte_at.at+1 - //SEG101 [103] phi (signed byte) print_sbyte_at::b#22 = (signed byte) print_sbyte_at::b#6 [phi:debug_print::@4->print_sbyte_at#1] -- register_copy - jsr print_sbyte_at - jmp b5 - //SEG102 debug_print::@5 - b5: - //SEG103 [62] (signed byte) print_sbyte_at::b#7 ← *((const signed byte[9]) rotation_matrix#0) -- vbsz1=_deref_pbsc1 - lda rotation_matrix - sta print_sbyte_at.b - //SEG104 [63] call print_sbyte_at - //SEG105 [103] phi from debug_print::@5 to print_sbyte_at [phi:debug_print::@5->print_sbyte_at] - print_sbyte_at_from_b5: - //SEG106 [103] phi (byte*) print_sbyte_at::at#21 = (const byte*) SCREEN#0+(byte/signed byte/word/signed word/dword/signed dword) 40*(byte/signed byte/word/signed word/dword/signed dword) 4+(byte/signed byte/word/signed word/dword/signed dword) 29 [phi:debug_print::@5->print_sbyte_at#0] -- pbuz1=pbuc1 - lda #SCREEN+$28*4+$1d - sta print_sbyte_at.at+1 - //SEG107 [103] phi (signed byte) print_sbyte_at::b#22 = (signed byte) print_sbyte_at::b#7 [phi:debug_print::@5->print_sbyte_at#1] -- register_copy - jsr print_sbyte_at - jmp b6 - //SEG108 debug_print::@6 - b6: - //SEG109 [64] (signed byte) print_sbyte_at::b#8 ← *((const signed byte[9]) rotation_matrix#0+(byte/signed byte/word/signed word/dword/signed dword) 1) -- vbsz1=_deref_pbsc1 - lda rotation_matrix+1 - sta print_sbyte_at.b - //SEG110 [65] call print_sbyte_at - //SEG111 [103] phi from debug_print::@6 to print_sbyte_at [phi:debug_print::@6->print_sbyte_at] - print_sbyte_at_from_b6: - //SEG112 [103] phi (byte*) print_sbyte_at::at#21 = (const byte*) SCREEN#0+(byte/signed byte/word/signed word/dword/signed dword) 40*(byte/signed byte/word/signed word/dword/signed dword) 4+(byte/signed byte/word/signed word/dword/signed dword) 33 [phi:debug_print::@6->print_sbyte_at#0] -- pbuz1=pbuc1 - lda #SCREEN+$28*4+$21 - sta print_sbyte_at.at+1 - //SEG113 [103] phi (signed byte) print_sbyte_at::b#22 = (signed byte) print_sbyte_at::b#8 [phi:debug_print::@6->print_sbyte_at#1] -- register_copy - jsr print_sbyte_at - jmp b7 - //SEG114 debug_print::@7 - b7: - //SEG115 [66] (signed byte) print_sbyte_at::b#9 ← *((const signed byte[9]) rotation_matrix#0+(byte/signed byte/word/signed word/dword/signed dword) 2) -- vbsz1=_deref_pbsc1 - lda rotation_matrix+2 - sta print_sbyte_at.b - //SEG116 [67] call print_sbyte_at - //SEG117 [103] phi from debug_print::@7 to print_sbyte_at [phi:debug_print::@7->print_sbyte_at] - print_sbyte_at_from_b7: - //SEG118 [103] phi (byte*) print_sbyte_at::at#21 = (const byte*) SCREEN#0+(byte/signed byte/word/signed word/dword/signed dword) 40*(byte/signed byte/word/signed word/dword/signed dword) 4+(byte/signed byte/word/signed word/dword/signed dword) 37 [phi:debug_print::@7->print_sbyte_at#0] -- pbuz1=pbuc1 - lda #SCREEN+$28*4+$25 - sta print_sbyte_at.at+1 - //SEG119 [103] phi (signed byte) print_sbyte_at::b#22 = (signed byte) print_sbyte_at::b#9 [phi:debug_print::@7->print_sbyte_at#1] -- register_copy - jsr print_sbyte_at - jmp b8 - //SEG120 debug_print::@8 - b8: - //SEG121 [68] (signed byte) print_sbyte_at::b#10 ← *((const signed byte[9]) rotation_matrix#0+(byte/signed byte/word/signed word/dword/signed dword) 3) -- vbsz1=_deref_pbsc1 - lda rotation_matrix+3 - sta print_sbyte_at.b - //SEG122 [69] call print_sbyte_at - //SEG123 [103] phi from debug_print::@8 to print_sbyte_at [phi:debug_print::@8->print_sbyte_at] - print_sbyte_at_from_b8: - //SEG124 [103] phi (byte*) print_sbyte_at::at#21 = (const byte*) SCREEN#0+(byte/signed byte/word/signed word/dword/signed dword) 40*(byte/signed byte/word/signed word/dword/signed dword) 5+(byte/signed byte/word/signed word/dword/signed dword) 29 [phi:debug_print::@8->print_sbyte_at#0] -- pbuz1=pbuc1 - lda #SCREEN+$28*5+$1d - sta print_sbyte_at.at+1 - //SEG125 [103] phi (signed byte) print_sbyte_at::b#22 = (signed byte) print_sbyte_at::b#10 [phi:debug_print::@8->print_sbyte_at#1] -- register_copy - jsr print_sbyte_at - jmp b9 - //SEG126 debug_print::@9 - b9: - //SEG127 [70] (signed byte) print_sbyte_at::b#11 ← *((const signed byte[9]) rotation_matrix#0+(byte/signed byte/word/signed word/dword/signed dword) 4) -- vbsz1=_deref_pbsc1 - lda rotation_matrix+4 - sta print_sbyte_at.b - //SEG128 [71] call print_sbyte_at - //SEG129 [103] phi from debug_print::@9 to print_sbyte_at [phi:debug_print::@9->print_sbyte_at] - print_sbyte_at_from_b9: - //SEG130 [103] phi (byte*) print_sbyte_at::at#21 = (const byte*) SCREEN#0+(byte/signed byte/word/signed word/dword/signed dword) 40*(byte/signed byte/word/signed word/dword/signed dword) 5+(byte/signed byte/word/signed word/dword/signed dword) 33 [phi:debug_print::@9->print_sbyte_at#0] -- pbuz1=pbuc1 - lda #SCREEN+$28*5+$21 - sta print_sbyte_at.at+1 - //SEG131 [103] phi (signed byte) print_sbyte_at::b#22 = (signed byte) print_sbyte_at::b#11 [phi:debug_print::@9->print_sbyte_at#1] -- register_copy - jsr print_sbyte_at - jmp b10 - //SEG132 debug_print::@10 - b10: - //SEG133 [72] (signed byte) print_sbyte_at::b#12 ← *((const signed byte[9]) rotation_matrix#0+(byte/signed byte/word/signed word/dword/signed dword) 5) -- vbsz1=_deref_pbsc1 - lda rotation_matrix+5 - sta print_sbyte_at.b - //SEG134 [73] call print_sbyte_at - //SEG135 [103] phi from debug_print::@10 to print_sbyte_at [phi:debug_print::@10->print_sbyte_at] - print_sbyte_at_from_b10: - //SEG136 [103] phi (byte*) print_sbyte_at::at#21 = (const byte*) SCREEN#0+(byte/signed byte/word/signed word/dword/signed dword) 40*(byte/signed byte/word/signed word/dword/signed dword) 5+(byte/signed byte/word/signed word/dword/signed dword) 37 [phi:debug_print::@10->print_sbyte_at#0] -- pbuz1=pbuc1 - lda #SCREEN+$28*5+$25 - sta print_sbyte_at.at+1 - //SEG137 [103] phi (signed byte) print_sbyte_at::b#22 = (signed byte) print_sbyte_at::b#12 [phi:debug_print::@10->print_sbyte_at#1] -- register_copy - jsr print_sbyte_at - jmp b11 - //SEG138 debug_print::@11 - b11: - //SEG139 [74] (signed byte) print_sbyte_at::b#13 ← *((const signed byte[9]) rotation_matrix#0+(byte/signed byte/word/signed word/dword/signed dword) 6) -- vbsz1=_deref_pbsc1 - lda rotation_matrix+6 - sta print_sbyte_at.b - //SEG140 [75] call print_sbyte_at - //SEG141 [103] phi from debug_print::@11 to print_sbyte_at [phi:debug_print::@11->print_sbyte_at] - print_sbyte_at_from_b11: - //SEG142 [103] phi (byte*) print_sbyte_at::at#21 = (const byte*) SCREEN#0+(byte/signed byte/word/signed word/dword/signed dword) 40*(byte/signed byte/word/signed word/dword/signed dword) 6+(byte/signed byte/word/signed word/dword/signed dword) 29 [phi:debug_print::@11->print_sbyte_at#0] -- pbuz1=pbuc1 - lda #SCREEN+$28*6+$1d - sta print_sbyte_at.at+1 - //SEG143 [103] phi (signed byte) print_sbyte_at::b#22 = (signed byte) print_sbyte_at::b#13 [phi:debug_print::@11->print_sbyte_at#1] -- register_copy - jsr print_sbyte_at - jmp b12 - //SEG144 debug_print::@12 - b12: - //SEG145 [76] (signed byte) print_sbyte_at::b#14 ← *((const signed byte[9]) rotation_matrix#0+(byte/signed byte/word/signed word/dword/signed dword) 7) -- vbsz1=_deref_pbsc1 - lda rotation_matrix+7 - sta print_sbyte_at.b - //SEG146 [77] call print_sbyte_at - //SEG147 [103] phi from debug_print::@12 to print_sbyte_at [phi:debug_print::@12->print_sbyte_at] - print_sbyte_at_from_b12: - //SEG148 [103] phi (byte*) print_sbyte_at::at#21 = (const byte*) SCREEN#0+(byte/signed byte/word/signed word/dword/signed dword) 40*(byte/signed byte/word/signed word/dword/signed dword) 6+(byte/signed byte/word/signed word/dword/signed dword) 33 [phi:debug_print::@12->print_sbyte_at#0] -- pbuz1=pbuc1 - lda #SCREEN+$28*6+$21 - sta print_sbyte_at.at+1 - //SEG149 [103] phi (signed byte) print_sbyte_at::b#22 = (signed byte) print_sbyte_at::b#14 [phi:debug_print::@12->print_sbyte_at#1] -- register_copy - jsr print_sbyte_at - jmp b13 - //SEG150 debug_print::@13 - b13: - //SEG151 [78] (signed byte) print_sbyte_at::b#15 ← *((const signed byte[9]) rotation_matrix#0+(byte/signed byte/word/signed word/dword/signed dword) 8) -- vbsz1=_deref_pbsc1 - lda rotation_matrix+8 - sta print_sbyte_at.b - //SEG152 [79] call print_sbyte_at - //SEG153 [103] phi from debug_print::@13 to print_sbyte_at [phi:debug_print::@13->print_sbyte_at] - print_sbyte_at_from_b13: - //SEG154 [103] phi (byte*) print_sbyte_at::at#21 = (const byte*) SCREEN#0+(byte/signed byte/word/signed word/dword/signed dword) 40*(byte/signed byte/word/signed word/dword/signed dword) 6+(byte/signed byte/word/signed word/dword/signed dword) 37 [phi:debug_print::@13->print_sbyte_at#0] -- pbuz1=pbuc1 - lda #SCREEN+$28*6+$25 - sta print_sbyte_at.at+1 - //SEG155 [103] phi (signed byte) print_sbyte_at::b#22 = (signed byte) print_sbyte_at::b#15 [phi:debug_print::@13->print_sbyte_at#1] -- register_copy - jsr print_sbyte_at - //SEG156 [80] phi from debug_print::@13 to debug_print::@1 [phi:debug_print::@13->debug_print::@1] + sec + sbc #3 + sta sy + //SEG71 [20] phi from anim::@13 to anim::@1 [phi:anim::@13->anim::@1] b1_from_b13: - //SEG157 [80] phi (byte) debug_print::i#2 = (byte/signed byte/word/signed word/dword/signed dword) 0 [phi:debug_print::@13->debug_print::@1#0] -- vbuz1=vbuc1 - lda #0 - sta i - //SEG158 [80] phi (byte) debug_print::c#2 = (byte/signed byte/word/signed word/dword/signed dword) 4 [phi:debug_print::@13->debug_print::@1#1] -- vbuz1=vbuc1 - lda #4 - sta c + //SEG72 [20] phi (signed byte) sy#10 = (signed byte) sy#3 [phi:anim::@13->anim::@1#0] -- register_copy + //SEG73 [20] phi (signed byte) sx#10 = (signed byte) sx#3 [phi:anim::@13->anim::@1#1] -- register_copy jmp b1 - //SEG159 [80] phi from debug_print::@20 to debug_print::@1 [phi:debug_print::@20->debug_print::@1] - b1_from_b20: - //SEG160 [80] phi (byte) debug_print::i#2 = (byte) debug_print::i#1 [phi:debug_print::@20->debug_print::@1#0] -- register_copy - //SEG161 [80] phi (byte) debug_print::c#2 = (byte) debug_print::c#1 [phi:debug_print::@20->debug_print::@1#1] -- register_copy - jmp b1 - //SEG162 debug_print::@1 - b1: - //SEG163 [81] (byte*) print_sbyte_at::at#15 ← (const byte*) debug_print::at_line#0 + (byte) debug_print::c#2 -- pbuz1=pbuc1_plus_vbuz2 - lda c - clc - adc #at_line - adc #0 - sta print_sbyte_at.at+1 - //SEG164 [82] (signed byte) print_sbyte_at::b#16 ← *((const signed byte[8]) xrs#0 + (byte) debug_print::i#2) -- vbsz1=pbsc1_derefidx_vbuz2 - ldy i - lda xrs,y - sta print_sbyte_at.b - //SEG165 [83] call print_sbyte_at - //SEG166 [103] phi from debug_print::@1 to print_sbyte_at [phi:debug_print::@1->print_sbyte_at] - print_sbyte_at_from_b1: - //SEG167 [103] phi (byte*) print_sbyte_at::at#21 = (byte*) print_sbyte_at::at#15 [phi:debug_print::@1->print_sbyte_at#0] -- register_copy - //SEG168 [103] phi (signed byte) print_sbyte_at::b#22 = (signed byte) print_sbyte_at::b#16 [phi:debug_print::@1->print_sbyte_at#1] -- register_copy - jsr print_sbyte_at - jmp b15 - //SEG169 debug_print::@15 - b15: - //SEG170 [84] (byte*) print_sbyte_at::at#16 ← (const byte*) debug_print::at_line#0+(byte/signed byte/word/signed word/dword/signed dword) 40*(byte/signed byte/word/signed word/dword/signed dword) 1 + (byte) debug_print::c#2 -- pbuz1=pbuc1_plus_vbuz2 - lda c - clc - adc #at_line+$28*1 - adc #0 - sta print_sbyte_at.at+1 - //SEG171 [85] (signed byte) print_sbyte_at::b#17 ← *((const signed byte[8]) yrs#0 + (byte) debug_print::i#2) -- vbsz1=pbsc1_derefidx_vbuz2 - ldy i - lda yrs,y - sta print_sbyte_at.b - //SEG172 [86] call print_sbyte_at - //SEG173 [103] phi from debug_print::@15 to print_sbyte_at [phi:debug_print::@15->print_sbyte_at] - print_sbyte_at_from_b15: - //SEG174 [103] phi (byte*) print_sbyte_at::at#21 = (byte*) print_sbyte_at::at#16 [phi:debug_print::@15->print_sbyte_at#0] -- register_copy - //SEG175 [103] phi (signed byte) print_sbyte_at::b#22 = (signed byte) print_sbyte_at::b#17 [phi:debug_print::@15->print_sbyte_at#1] -- register_copy - jsr print_sbyte_at - jmp b16 - //SEG176 debug_print::@16 - b16: - //SEG177 [87] (byte*) print_sbyte_at::at#17 ← (const byte*) debug_print::at_line#0+(byte/signed byte/word/signed word/dword/signed dword) 40*(byte/signed byte/word/signed word/dword/signed dword) 2 + (byte) debug_print::c#2 -- pbuz1=pbuc1_plus_vbuz2 - lda c - clc - adc #at_line+$28*2 - adc #0 - sta print_sbyte_at.at+1 - //SEG178 [88] (signed byte) print_sbyte_at::b#18 ← *((const signed byte[8]) zrs#0 + (byte) debug_print::i#2) -- vbsz1=pbsc1_derefidx_vbuz2 - ldy i - lda zrs,y - sta print_sbyte_at.b - //SEG179 [89] call print_sbyte_at - //SEG180 [103] phi from debug_print::@16 to print_sbyte_at [phi:debug_print::@16->print_sbyte_at] - print_sbyte_at_from_b16: - //SEG181 [103] phi (byte*) print_sbyte_at::at#21 = (byte*) print_sbyte_at::at#17 [phi:debug_print::@16->print_sbyte_at#0] -- register_copy - //SEG182 [103] phi (signed byte) print_sbyte_at::b#22 = (signed byte) print_sbyte_at::b#18 [phi:debug_print::@16->print_sbyte_at#1] -- register_copy - jsr print_sbyte_at - jmp b17 - //SEG183 debug_print::@17 - b17: - //SEG184 [90] (byte*) print_sbyte_at::at#18 ← (const byte*) debug_print::at_line#0+(byte/signed byte/word/signed word/dword/signed dword) 40*(byte/signed byte/word/signed word/dword/signed dword) 3 + (byte) debug_print::c#2 -- pbuz1=pbuc1_plus_vbuz2 - lda c - clc - adc #at_line+$28*3 - adc #0 - sta print_sbyte_at.at+1 - //SEG185 [91] (signed byte) print_sbyte_at::b#19 ← *((const signed byte[8]) pps#0 + (byte) debug_print::i#2) -- vbsz1=pbsc1_derefidx_vbuz2 - ldy i - lda pps,y - sta print_sbyte_at.b - //SEG186 [92] call print_sbyte_at - //SEG187 [103] phi from debug_print::@17 to print_sbyte_at [phi:debug_print::@17->print_sbyte_at] - print_sbyte_at_from_b17: - //SEG188 [103] phi (byte*) print_sbyte_at::at#21 = (byte*) print_sbyte_at::at#18 [phi:debug_print::@17->print_sbyte_at#0] -- register_copy - //SEG189 [103] phi (signed byte) print_sbyte_at::b#22 = (signed byte) print_sbyte_at::b#19 [phi:debug_print::@17->print_sbyte_at#1] -- register_copy - jsr print_sbyte_at - jmp b18 - //SEG190 debug_print::@18 - b18: - //SEG191 [93] (byte*) print_sbyte_at::at#19 ← (const byte*) debug_print::at_line#0+(byte/signed byte/word/signed word/dword/signed dword) 40*(byte/signed byte/word/signed word/dword/signed dword) 4 + (byte) debug_print::c#2 -- pbuz1=pbuc1_plus_vbuz2 - lda c - clc - adc #at_line+$28*4 - adc #0 - sta print_sbyte_at.at+1 - //SEG192 [94] (signed byte) print_sbyte_at::b#20 ← *((const signed byte[8]) xps#0 + (byte) debug_print::i#2) -- vbsz1=pbsc1_derefidx_vbuz2 - ldy i - lda xps,y - sta print_sbyte_at.b - //SEG193 [95] call print_sbyte_at - //SEG194 [103] phi from debug_print::@18 to print_sbyte_at [phi:debug_print::@18->print_sbyte_at] - print_sbyte_at_from_b18: - //SEG195 [103] phi (byte*) print_sbyte_at::at#21 = (byte*) print_sbyte_at::at#19 [phi:debug_print::@18->print_sbyte_at#0] -- register_copy - //SEG196 [103] phi (signed byte) print_sbyte_at::b#22 = (signed byte) print_sbyte_at::b#20 [phi:debug_print::@18->print_sbyte_at#1] -- register_copy - jsr print_sbyte_at - jmp b19 - //SEG197 debug_print::@19 - b19: - //SEG198 [96] (byte*) print_sbyte_at::at#20 ← (const byte*) debug_print::at_line#0+(byte/signed byte/word/signed word/dword/signed dword) 40*(byte/signed byte/word/signed word/dword/signed dword) 5 + (byte) debug_print::c#2 -- pbuz1=pbuc1_plus_vbuz2 - lda c - clc - adc #at_line+$28*5 - adc #0 - sta print_sbyte_at.at+1 - //SEG199 [97] (signed byte) print_sbyte_at::b#21 ← *((const signed byte[8]) yps#0 + (byte) debug_print::i#2) -- vbsz1=pbsc1_derefidx_vbuz2 - ldy i - lda yps,y - sta print_sbyte_at.b - //SEG200 [98] call print_sbyte_at - //SEG201 [103] phi from debug_print::@19 to print_sbyte_at [phi:debug_print::@19->print_sbyte_at] - print_sbyte_at_from_b19: - //SEG202 [103] phi (byte*) print_sbyte_at::at#21 = (byte*) print_sbyte_at::at#20 [phi:debug_print::@19->print_sbyte_at#0] -- register_copy - //SEG203 [103] phi (signed byte) print_sbyte_at::b#22 = (signed byte) print_sbyte_at::b#21 [phi:debug_print::@19->print_sbyte_at#1] -- register_copy - jsr print_sbyte_at - jmp b20 - //SEG204 debug_print::@20 - b20: - //SEG205 [99] (byte) debug_print::c#1 ← (byte) debug_print::c#2 + (byte/signed byte/word/signed word/dword/signed dword) 4 -- vbuz1=vbuz1_plus_vbuc1 - lda #4 - clc - adc c - sta c - //SEG206 [100] (byte) debug_print::i#1 ← ++ (byte) debug_print::i#2 -- vbuz1=_inc_vbuz1 - inc i - //SEG207 [101] if((byte) debug_print::i#1!=(byte/signed byte/word/signed word/dword/signed dword) 8) goto debug_print::@1 -- vbuz1_neq_vbuc1_then_la1 - lda i - cmp #8 - bne b1_from_b20 - jmp breturn - //SEG208 debug_print::@return - breturn: - //SEG209 [102] return - rts } -//SEG210 print_sbyte_at -print_sbyte_at: { - .label b = $a - .label at = 8 - //SEG211 [104] if((signed byte) print_sbyte_at::b#22<(byte/signed byte/word/signed word/dword/signed dword) 0) goto print_sbyte_at::@1 -- vbsz1_lt_0_then_la1 - lda b - bmi b1 - jmp b3 - //SEG212 print_sbyte_at::@3 - b3: - //SEG213 [105] (byte*) print_char_at::at#1 ← (byte*) print_sbyte_at::at#21 -- pbuz1=pbuz2 - lda at - sta print_char_at.at - lda at+1 - sta print_char_at.at+1 - //SEG214 [106] call print_char_at - //SEG215 [114] phi from print_sbyte_at::@3 to print_char_at [phi:print_sbyte_at::@3->print_char_at] - print_char_at_from_b3: - //SEG216 [114] phi (byte*) print_char_at::at#4 = (byte*) print_char_at::at#1 [phi:print_sbyte_at::@3->print_char_at#0] -- register_copy - //SEG217 [114] phi (byte) print_char_at::ch#4 = (byte) ' ' [phi:print_sbyte_at::@3->print_char_at#1] -- vbuz1=vbuc1 - lda #' ' - sta print_char_at.ch - jsr print_char_at - //SEG218 [107] phi from print_sbyte_at::@3 print_sbyte_at::@5 to print_sbyte_at::@2 [phi:print_sbyte_at::@3/print_sbyte_at::@5->print_sbyte_at::@2] - b2_from_b3: - b2_from_b5: - //SEG219 [107] phi (signed byte) print_sbyte_at::b#24 = (signed byte) print_sbyte_at::b#22 [phi:print_sbyte_at::@3/print_sbyte_at::@5->print_sbyte_at::@2#0] -- register_copy - jmp b2 - //SEG220 print_sbyte_at::@2 - b2: - //SEG221 [108] (byte*) print_byte_at::at#0 ← (byte*) print_sbyte_at::at#21 + (byte/signed byte/word/signed word/dword/signed dword) 1 -- pbuz1=pbuz2_plus_1 - lda at - clc - adc #1 - sta print_byte_at.at - lda at+1 - adc #0 - sta print_byte_at.at+1 - //SEG222 [109] call print_byte_at - jsr print_byte_at - jmp breturn - //SEG223 print_sbyte_at::@return - breturn: - //SEG224 [110] return - rts - //SEG225 print_sbyte_at::@1 - b1: - //SEG226 [111] (byte*) print_char_at::at#0 ← (byte*) print_sbyte_at::at#21 -- pbuz1=pbuz2 - lda at - sta print_char_at.at - lda at+1 - sta print_char_at.at+1 - //SEG227 [112] call print_char_at - //SEG228 [114] phi from print_sbyte_at::@1 to print_char_at [phi:print_sbyte_at::@1->print_char_at] - print_char_at_from_b1: - //SEG229 [114] phi (byte*) print_char_at::at#4 = (byte*) print_char_at::at#0 [phi:print_sbyte_at::@1->print_char_at#0] -- register_copy - //SEG230 [114] phi (byte) print_char_at::ch#4 = (byte) '-' [phi:print_sbyte_at::@1->print_char_at#1] -- vbuz1=vbuc1 - lda #'-' - sta print_char_at.ch - jsr print_char_at - jmp b5 - //SEG231 print_sbyte_at::@5 - b5: - //SEG232 [113] (signed byte) print_sbyte_at::b#0 ← - (signed byte) print_sbyte_at::b#22 -- vbsz1=_neg_vbsz1 - lda b - eor #$ff - clc - adc #1 - sta b - jmp b2_from_b5 -} -//SEG233 print_char_at -print_char_at: { - .label at = $c - .label ch = $b - //SEG234 [115] *((byte*) print_char_at::at#4) ← (byte) print_char_at::ch#4 -- _deref_pbuz1=vbuz2 - lda ch - ldy #0 - sta (at),y - jmp breturn - //SEG235 print_char_at::@return - breturn: - //SEG236 [116] return - rts -} -//SEG237 print_byte_at -print_byte_at: { - .label _0 = $23 - .label _2 = $24 - .label at = $21 - //SEG238 [117] (byte~) print_byte_at::$0 ← (byte)(signed byte) print_sbyte_at::b#24 >> (byte/signed byte/word/signed word/dword/signed dword) 4 -- vbuz1=vbuz2_ror_4 - lda print_sbyte_at.b - lsr - lsr - lsr - lsr - sta _0 - //SEG239 [118] (byte) print_char_at::ch#2 ← *((const byte[]) print_hextab#0 + (byte~) print_byte_at::$0) -- vbuz1=pbuc1_derefidx_vbuz2 - ldy _0 - lda print_hextab,y - sta print_char_at.ch - //SEG240 [119] (byte*) print_char_at::at#2 ← (byte*) print_byte_at::at#0 -- pbuz1=pbuz2 - lda at - sta print_char_at.at - lda at+1 - sta print_char_at.at+1 - //SEG241 [120] call print_char_at - //SEG242 [114] phi from print_byte_at to print_char_at [phi:print_byte_at->print_char_at] - print_char_at_from_print_byte_at: - //SEG243 [114] phi (byte*) print_char_at::at#4 = (byte*) print_char_at::at#2 [phi:print_byte_at->print_char_at#0] -- register_copy - //SEG244 [114] phi (byte) print_char_at::ch#4 = (byte) print_char_at::ch#2 [phi:print_byte_at->print_char_at#1] -- register_copy - jsr print_char_at - jmp b1 - //SEG245 print_byte_at::@1 - b1: - //SEG246 [121] (byte~) print_byte_at::$2 ← (byte)(signed byte) print_sbyte_at::b#24 & (byte/signed byte/word/signed word/dword/signed dword) 15 -- vbuz1=vbuz2_band_vbuc1 - lda #$f - and print_sbyte_at.b - sta _2 - //SEG247 [122] (byte*) print_char_at::at#3 ← (byte*) print_byte_at::at#0 + (byte/signed byte/word/signed word/dword/signed dword) 1 -- pbuz1=pbuz2_plus_1 - lda at - clc - adc #1 - sta print_char_at.at - lda at+1 - adc #0 - sta print_char_at.at+1 - //SEG248 [123] (byte) print_char_at::ch#3 ← *((const byte[]) print_hextab#0 + (byte~) print_byte_at::$2) -- vbuz1=pbuc1_derefidx_vbuz2 - ldy _2 - lda print_hextab,y - sta print_char_at.ch - //SEG249 [124] call print_char_at - //SEG250 [114] phi from print_byte_at::@1 to print_char_at [phi:print_byte_at::@1->print_char_at] - print_char_at_from_b1: - //SEG251 [114] phi (byte*) print_char_at::at#4 = (byte*) print_char_at::at#3 [phi:print_byte_at::@1->print_char_at#0] -- register_copy - //SEG252 [114] phi (byte) print_char_at::ch#4 = (byte) print_char_at::ch#3 [phi:print_byte_at::@1->print_char_at#1] -- register_copy - jsr print_char_at - jmp breturn - //SEG253 print_byte_at::@return - breturn: - //SEG254 [125] return - rts -} -//SEG255 rotate_matrix +//SEG74 rotate_matrix rotate_matrix: { - .label x = $1b - .label y = $1c - .label z = $1d - //SEG256 [126] *((const signed byte*) xr#0) ← (signed byte) rotate_matrix::x#0 -- _deref_pbsc1=vbsz1 + .label x = 8 + .label y = 9 + .label z = $a + //SEG75 [51] *((const signed byte*) xr#0) ← (signed byte) rotate_matrix::x#0 -- _deref_pbsc1=vbsz1 lda x sta xr - //SEG257 [127] *((const signed byte*) yr#0) ← (signed byte) rotate_matrix::y#0 -- _deref_pbsc1=vbsz1 + //SEG76 [52] *((const signed byte*) yr#0) ← (signed byte) rotate_matrix::y#0 -- _deref_pbsc1=vbsz1 lda y sta yr - //SEG258 [128] *((const signed byte*) zr#0) ← (signed byte) rotate_matrix::z#0 -- _deref_pbsc1=vbsz1 + //SEG77 [53] *((const signed byte*) zr#0) ← (signed byte) rotate_matrix::z#0 -- _deref_pbsc1=vbsz1 lda z sta zr - //SEG259 asm { ldxzr C1: ldamulf_sqr1,x sec C2: sbcmulf_sqr2,x staC3+1 F1: ldamulf_sqr1,x sec F2: sbcmulf_sqr2,x staF3+1 I1: ldamulf_sqr1,x sec I2: sbcmulf_sqr2,x staI3+1 ldxxr ldyyr I3: lda#0 clc G1: adcmulf_sqr1,x sec G2: sbcmulf_sqr2,x clc H1: adcmulf_sqr1,y sec H2: sbcmulf_sqr2,y stazr staPP+1 PP: ldaPERSP_Z stapp stapsp1 eor#$ff stapsp2 C3: lda#0 clc A1: adcmulf_sqr1,x sec A2: sbcmulf_sqr2,x clc B1: adcmulf_sqr1,y sec B2: sbcmulf_sqr2,y staxr staXX+1 clc F3: lda#0 clc D1: adcmulf_sqr1,x sec D2: sbcmulf_sqr2,x clc E1: adcmulf_sqr1,y sec E2: sbcmulf_sqr2,y stayr tay lda(psp1),y sec sbc(psp2),y stayp XX: ldy#0 lda(psp1),y sec sbc(psp2),y staxp } + //SEG78 asm { ldxzr C1: ldamulf_sqr1,x sec C2: sbcmulf_sqr2,x staC3+1 F1: ldamulf_sqr1,x sec F2: sbcmulf_sqr2,x staF3+1 I1: ldamulf_sqr1,x sec I2: sbcmulf_sqr2,x staI3+1 ldxxr ldyyr I3: lda#0 clc G1: adcmulf_sqr1,x sec G2: sbcmulf_sqr2,x clc H1: adcmulf_sqr1,y sec H2: sbcmulf_sqr2,y stazr staPP+1 PP: ldaPERSP_Z stapp stapsp1 eor#$ff stapsp2 C3: lda#0 clc A1: adcmulf_sqr1,x sec A2: sbcmulf_sqr2,x clc B1: adcmulf_sqr1,y sec B2: sbcmulf_sqr2,y staxr staXX+1 clc F3: lda#0 clc D1: adcmulf_sqr1,x sec D2: sbcmulf_sqr2,x clc E1: adcmulf_sqr1,y sec E2: sbcmulf_sqr2,y stayr tay lda(psp1),y sec sbc(psp2),y stayp XX: ldy#0 lda(psp1),y sec sbc(psp2),y staxp } ldx zr C1: lda mulf_sqr1,x @@ -5508,14 +2327,14 @@ rotate_matrix: { sbc (psp2),y sta xp jmp breturn - //SEG260 rotate_matrix::@return + //SEG79 rotate_matrix::@return breturn: - //SEG261 [130] return + //SEG80 [55] return rts } -//SEG262 store_matrix +//SEG81 store_matrix store_matrix: { - //SEG263 asm { ldarotation_matrix+0 starotate_matrix.A1+1 eor#$ff starotate_matrix.A2+1 ldarotation_matrix+1 starotate_matrix.B1+1 eor#$ff starotate_matrix.B2+1 ldarotation_matrix+2 starotate_matrix.C1+1 eor#$ff starotate_matrix.C2+1 ldarotation_matrix+3 starotate_matrix.D1+1 eor#$ff starotate_matrix.D2+1 ldarotation_matrix+4 starotate_matrix.E1+1 eor#$ff starotate_matrix.E2+1 ldarotation_matrix+5 starotate_matrix.F1+1 eor#$ff starotate_matrix.F2+1 ldarotation_matrix+6 starotate_matrix.G1+1 eor#$ff starotate_matrix.G2+1 ldarotation_matrix+7 starotate_matrix.H1+1 eor#$ff starotate_matrix.H2+1 ldarotation_matrix+8 starotate_matrix.I1+1 eor#$ff starotate_matrix.I2+1 } + //SEG82 asm { ldarotation_matrix+0 starotate_matrix.A1+1 eor#$ff starotate_matrix.A2+1 ldarotation_matrix+1 starotate_matrix.B1+1 eor#$ff starotate_matrix.B2+1 ldarotation_matrix+2 starotate_matrix.C1+1 eor#$ff starotate_matrix.C2+1 ldarotation_matrix+3 starotate_matrix.D1+1 eor#$ff starotate_matrix.D2+1 ldarotation_matrix+4 starotate_matrix.E1+1 eor#$ff starotate_matrix.E2+1 ldarotation_matrix+5 starotate_matrix.F1+1 eor#$ff starotate_matrix.F2+1 ldarotation_matrix+6 starotate_matrix.G1+1 eor#$ff starotate_matrix.G2+1 ldarotation_matrix+7 starotate_matrix.H1+1 eor#$ff starotate_matrix.H2+1 ldarotation_matrix+8 starotate_matrix.I1+1 eor#$ff starotate_matrix.I2+1 } lda rotation_matrix+0 sta rotate_matrix.A1+1 eor #$ff @@ -5553,1213 +2372,328 @@ store_matrix: { eor #$ff sta rotate_matrix.I2+1 jmp breturn - //SEG264 store_matrix::@return + //SEG83 store_matrix::@return breturn: - //SEG265 [132] return + //SEG84 [57] return rts } -//SEG266 calculate_matrix_16 -calculate_matrix_16: { - .label _4 = $2b - .label _5 = $2d - .label _9 = $32 - .label _10 = $34 - .label _13 = $37 - .label _14 = $39 - .label _28 = $4c - .label _29 = $4e - .label _30 = $50 - .label _31 = $52 - .label _32 = $54 - .label _33 = $56 - .label _35 = $57 - .label _36 = $59 - .label _37 = $5b - .label _38 = $5d - .label _39 = $5f - .label _40 = $61 - .label _48 = $6e - .label _49 = $70 - .label _50 = $72 - .label _51 = $74 - .label _52 = $76 - .label _53 = $78 - .label _55 = $79 - .label _56 = $7b - .label _57 = $7d - .label _58 = $7f - .label _59 = $81 - .label _60 = $83 - .label _66 = $8a - .label _67 = $8c - .label _71 = $91 - .label _72 = $93 - .label sx = $18 - .label sy = $19 - .label sz = $1a - .label t1 = $25 - .label t2 = $26 - .label t3 = $3a - .label t4 = $3b - .label t5 = $3c - .label t6 = $3d - .label t7 = $3e - .label t8 = $3f - .label t9 = $84 - .label t10 = $85 - .label _74 = $27 - .label _75 = $29 - .label _76 = $2e - .label _77 = $30 - .label _78 = $35 - .label _79 = $40 - .label _80 = $42 - .label _81 = $44 - .label _82 = $46 - .label _83 = $48 - .label _84 = $4a - .label _85 = $62 - .label _86 = $64 - .label _87 = $66 - .label _88 = $68 - .label _89 = $6a - .label _90 = $6c - .label _91 = $86 - .label _92 = $88 - .label _93 = $8d - .label _94 = $8f - //SEG267 [133] (signed byte) calculate_matrix_16::t1#0 ← (signed byte) calculate_matrix_16::sy#0 - (signed byte) calculate_matrix_16::sz#0 -- vbsz1=vbsz2_minus_vbsz3 +//SEG85 calculate_matrix +calculate_matrix: { + .label _10 = $18 + .label _11 = $19 + .label _12 = $1a + .label _13 = $1b + .label _14 = $1c + .label _15 = $1d + .label _16 = $1e + .label _17 = $1f + .label _18 = $20 + .label _19 = $21 + .label _20 = $22 + .label _21 = $23 + .label _22 = $24 + .label _23 = $25 + .label _24 = $26 + .label _25 = $27 + .label _26 = $28 + .label _27 = $29 + .label _28 = $2a + .label _29 = $2b + .label _30 = $2c + .label _31 = $2d + .label _32 = $2e + .label _33 = $2f + .label _34 = $30 + .label sx = 6 + .label sy = 7 + .label t1 = $e + .label t2 = $f + .label t3 = $10 + .label t4 = $11 + .label t5 = $12 + .label t6 = $13 + .label t7 = $14 + .label t8 = $15 + .label t9 = $16 + .label t10 = $17 + //SEG86 [58] (signed byte) calculate_matrix::t1#0 ← (signed byte) calculate_matrix::sy#0 - (const signed byte) sz#0 -- vbsz1=vbsz2_minus_vbsc1 lda sy sec - sbc sz + sbc #sz sta t1 - //SEG268 [134] (signed byte) calculate_matrix_16::t2#0 ← (signed byte) calculate_matrix_16::sy#0 + (signed byte) calculate_matrix_16::sz#0 -- vbsz1=vbsz2_plus_vbsz3 - lda sy + //SEG87 [59] (signed byte) calculate_matrix::t2#0 ← (signed byte) calculate_matrix::sy#0 + (const signed byte) sz#0 -- vbsz1=vbsz2_plus_vbsc1 + lda #sz clc - adc sz + adc sy sta t2 - //SEG269 [135] (word~) calculate_matrix_16::$74 ← *((const byte*) COSH_HI#0 + (signed byte) calculate_matrix_16::t1#0) w= *((const byte*) COSH_LO#0 + (signed byte) calculate_matrix_16::t1#0) -- vwuz1=pbuc1_derefidx_vbsz2_word_pbuc2_derefidx_vbsz2 - ldy t1 - lda COSH_HI,y - sta _74+1 - lda COSH_LO,y - sta _74 - //SEG270 [136] (word~) calculate_matrix_16::$75 ← *((const byte*) COSH_HI#0 + (signed byte) calculate_matrix_16::t2#0) w= *((const byte*) COSH_LO#0 + (signed byte) calculate_matrix_16::t2#0) -- vwuz1=pbuc1_derefidx_vbsz2_word_pbuc2_derefidx_vbsz2 - ldy t2 - lda COSH_HI,y - sta _75+1 - lda COSH_LO,y - sta _75 - //SEG271 [137] (signed word~) calculate_matrix_16::$4 ← (signed word)(word~) calculate_matrix_16::$74 + (signed word)(word~) calculate_matrix_16::$75 -- vwsz1=vwsz2_plus_vwsz3 - lda _74 - clc - adc _75 - sta _4 - lda _74+1 - adc _75+1 - sta _4+1 - //SEG272 [138] (byte~) calculate_matrix_16::$5 ← > (signed word~) calculate_matrix_16::$4 -- vbuz1=_hi_vwsz2 - lda _4+1 - sta _5 - //SEG273 [139] *((const signed byte[9]) rotation_matrix#0) ← (signed byte)(byte~) calculate_matrix_16::$5 -- _deref_pbsc1=vbsz1 - lda _5 - sta rotation_matrix - //SEG274 [140] (word~) calculate_matrix_16::$76 ← *((const byte*) SINH_HI#0 + (signed byte) calculate_matrix_16::t1#0) w= *((const byte*) SINH_LO#0 + (signed byte) calculate_matrix_16::t1#0) -- vwuz1=pbuc1_derefidx_vbsz2_word_pbuc2_derefidx_vbsz2 - ldy t1 - lda SINH_HI,y - sta _76+1 - lda SINH_LO,y - sta _76 - //SEG275 [141] (word~) calculate_matrix_16::$77 ← *((const byte*) SINH_HI#0 + (signed byte) calculate_matrix_16::t2#0) w= *((const byte*) SINH_LO#0 + (signed byte) calculate_matrix_16::t2#0) -- vwuz1=pbuc1_derefidx_vbsz2_word_pbuc2_derefidx_vbsz2 - ldy t2 - lda SINH_HI,y - sta _77+1 - lda SINH_LO,y - sta _77 - //SEG276 [142] (signed word~) calculate_matrix_16::$9 ← (signed word)(word~) calculate_matrix_16::$76 - (signed word)(word~) calculate_matrix_16::$77 -- vwsz1=vwsz2_minus_vwsz3 - lda _76 - sec - sbc _77 - sta _9 - lda _76+1 - sbc _77+1 - sta _9+1 - //SEG277 [143] (byte~) calculate_matrix_16::$10 ← > (signed word~) calculate_matrix_16::$9 -- vbuz1=_hi_vwsz2 - lda _9+1 - sta _10 - //SEG278 [144] *((const signed byte[9]) rotation_matrix#0+(byte/signed byte/word/signed word/dword/signed dword) 1) ← (signed byte)(byte~) calculate_matrix_16::$10 -- _deref_pbsc1=vbsz1 - lda _10 - sta rotation_matrix+1 - //SEG279 [145] (word~) calculate_matrix_16::$78 ← *((const byte*) SINH_HI#0 + (signed byte) calculate_matrix_16::sy#0) w= *((const byte*) SINH_LO#0 + (signed byte) calculate_matrix_16::sy#0) -- vwuz1=pbuc1_derefidx_vbsz2_word_pbuc2_derefidx_vbsz2 - ldy sy - lda SINH_HI,y - sta _78+1 - lda SINH_LO,y - sta _78 - //SEG280 [146] (signed word~) calculate_matrix_16::$13 ← (signed word)(word~) calculate_matrix_16::$78 + (signed word)(word~) calculate_matrix_16::$78 -- vwsz1=vwsz2_plus_vwsz2 - lda _78 - asl - sta _13 - lda _78+1 - rol - sta _13+1 - //SEG281 [147] (byte~) calculate_matrix_16::$14 ← > (signed word~) calculate_matrix_16::$13 -- vbuz1=_hi_vwsz2 - lda _13+1 - sta _14 - //SEG282 [148] *((const signed byte[9]) rotation_matrix#0+(byte/signed byte/word/signed word/dword/signed dword) 2) ← (signed byte)(byte~) calculate_matrix_16::$14 -- _deref_pbsc1=vbsz1 - lda _14 - sta rotation_matrix+2 - //SEG283 [149] (signed byte) calculate_matrix_16::t3#0 ← (signed byte) calculate_matrix_16::sx#0 + (signed byte) calculate_matrix_16::sz#0 -- vbsz1=vbsz2_plus_vbsz3 + //SEG88 [60] (signed byte) calculate_matrix::t3#0 ← (signed byte) calculate_matrix::sx#0 -- vbsz1=vbsz2 lda sx - clc - adc sz sta t3 - //SEG284 [150] (signed byte) calculate_matrix_16::t4#0 ← (signed byte) calculate_matrix_16::sx#0 - (signed byte) calculate_matrix_16::sz#0 -- vbsz1=vbsz2_minus_vbsz3 + //SEG89 [61] (signed byte) calculate_matrix::t4#0 ← (signed byte) calculate_matrix::sx#0 -- vbsz1=vbsz2 lda sx - sec - sbc sz sta t4 - //SEG285 [151] (signed byte) calculate_matrix_16::t5#0 ← (signed byte) calculate_matrix_16::sx#0 + (signed byte) calculate_matrix_16::t2#0 -- vbsz1=vbsz2_plus_vbsz3 + //SEG90 [62] (signed byte) calculate_matrix::t5#0 ← (signed byte) calculate_matrix::sx#0 + (signed byte) calculate_matrix::t2#0 -- vbsz1=vbsz2_plus_vbsz3 lda sx clc adc t2 sta t5 - //SEG286 [152] (signed byte) calculate_matrix_16::t6#0 ← (signed byte) calculate_matrix_16::sx#0 - (signed byte) calculate_matrix_16::t1#0 -- vbsz1=vbsz2_minus_vbsz3 + //SEG91 [63] (signed byte) calculate_matrix::t6#0 ← (signed byte) calculate_matrix::sx#0 - (signed byte) calculate_matrix::t1#0 -- vbsz1=vbsz2_minus_vbsz3 lda sx sec sbc t1 sta t6 - //SEG287 [153] (signed byte) calculate_matrix_16::t7#0 ← (signed byte) calculate_matrix_16::sx#0 + (signed byte) calculate_matrix_16::t1#0 -- vbsz1=vbsz2_plus_vbsz3 + //SEG92 [64] (signed byte) calculate_matrix::t7#0 ← (signed byte) calculate_matrix::sx#0 + (signed byte) calculate_matrix::t1#0 -- vbsz1=vbsz2_plus_vbsz3 lda sx clc adc t1 sta t7 - //SEG288 [154] (signed byte) calculate_matrix_16::t8#0 ← (signed byte) calculate_matrix_16::t2#0 - (signed byte) calculate_matrix_16::sx#0 -- vbsz1=vbsz2_minus_vbsz3 + //SEG93 [65] (signed byte) calculate_matrix::t8#0 ← (signed byte) calculate_matrix::t2#0 - (signed byte) calculate_matrix::sx#0 -- vbsz1=vbsz2_minus_vbsz3 lda t2 sec sbc sx sta t8 - //SEG289 [155] (word~) calculate_matrix_16::$79 ← *((const byte*) SINH_HI#0 + (signed byte) calculate_matrix_16::t3#0) w= *((const byte*) SINH_LO#0 + (signed byte) calculate_matrix_16::t3#0) -- vwuz1=pbuc1_derefidx_vbsz2_word_pbuc2_derefidx_vbsz2 - ldy t3 - lda SINH_HI,y - sta _79+1 - lda SINH_LO,y - sta _79 - //SEG290 [156] (word~) calculate_matrix_16::$80 ← *((const byte*) SINH_HI#0 + (signed byte) calculate_matrix_16::t4#0) w= *((const byte*) SINH_LO#0 + (signed byte) calculate_matrix_16::t4#0) -- vwuz1=pbuc1_derefidx_vbsz2_word_pbuc2_derefidx_vbsz2 - ldy t4 - lda SINH_HI,y - sta _80+1 - lda SINH_LO,y - sta _80 - //SEG291 [157] (word~) calculate_matrix_16::$81 ← *((const byte*) COSQ_HI#0 + (signed byte) calculate_matrix_16::t5#0) w= *((const byte*) COSH_LO#0 + (signed byte) calculate_matrix_16::t5#0) -- vwuz1=pbuc1_derefidx_vbsz2_word_pbuc2_derefidx_vbsz2 - ldy t5 - lda COSQ_HI,y - sta _81+1 - lda COSH_LO,y - sta _81 - //SEG292 [158] (word~) calculate_matrix_16::$82 ← *((const byte*) COSQ_HI#0 + (signed byte) calculate_matrix_16::t6#0) w= *((const byte*) COSH_LO#0 + (signed byte) calculate_matrix_16::t6#0) -- vwuz1=pbuc1_derefidx_vbsz2_word_pbuc2_derefidx_vbsz2 - ldy t6 - lda COSQ_HI,y - sta _82+1 - lda COSH_LO,y - sta _82 - //SEG293 [159] (word~) calculate_matrix_16::$83 ← *((const byte*) COSQ_HI#0 + (signed byte) calculate_matrix_16::t7#0) w= *((const byte*) COSH_LO#0 + (signed byte) calculate_matrix_16::t7#0) -- vwuz1=pbuc1_derefidx_vbsz2_word_pbuc2_derefidx_vbsz2 - ldy t7 - lda COSQ_HI,y - sta _83+1 - lda COSH_LO,y - sta _83 - //SEG294 [160] (word~) calculate_matrix_16::$84 ← *((const byte*) COSQ_HI#0 + (signed byte) calculate_matrix_16::t8#0) w= *((const byte*) COSH_LO#0 + (signed byte) calculate_matrix_16::t8#0) -- vwuz1=pbuc1_derefidx_vbsz2_word_pbuc2_derefidx_vbsz2 - ldy t8 - lda COSQ_HI,y - sta _84+1 - lda COSH_LO,y - sta _84 - //SEG295 [161] (signed word~) calculate_matrix_16::$28 ← (signed word)(word~) calculate_matrix_16::$79 - (signed word)(word~) calculate_matrix_16::$80 -- vwsz1=vwsz2_minus_vwsz3 - lda _79 - sec - sbc _80 - sta _28 - lda _79+1 - sbc _80+1 - sta _28+1 - //SEG296 [162] (signed word~) calculate_matrix_16::$29 ← (signed word~) calculate_matrix_16::$28 + (signed word)(word~) calculate_matrix_16::$82 -- vwsz1=vwsz2_plus_vwsz3 - lda _28 - clc - adc _82 - sta _29 - lda _28+1 - adc _82+1 - sta _29+1 - //SEG297 [163] (signed word~) calculate_matrix_16::$30 ← (signed word~) calculate_matrix_16::$29 - (signed word)(word~) calculate_matrix_16::$81 -- vwsz1=vwsz2_minus_vwsz3 - lda _29 - sec - sbc _81 - sta _30 - lda _29+1 - sbc _81+1 - sta _30+1 - //SEG298 [164] (signed word~) calculate_matrix_16::$31 ← (signed word~) calculate_matrix_16::$30 + (signed word)(word~) calculate_matrix_16::$84 -- vwsz1=vwsz2_plus_vwsz3 - lda _30 - clc - adc _84 - sta _31 - lda _30+1 - adc _84+1 - sta _31+1 - //SEG299 [165] (signed word~) calculate_matrix_16::$32 ← (signed word~) calculate_matrix_16::$31 - (signed word)(word~) calculate_matrix_16::$83 -- vwsz1=vwsz2_minus_vwsz3 - lda _31 - sec - sbc _83 - sta _32 - lda _31+1 - sbc _83+1 - sta _32+1 - //SEG300 [166] (byte~) calculate_matrix_16::$33 ← > (signed word~) calculate_matrix_16::$32 -- vbuz1=_hi_vwsz2 - lda _32+1 - sta _33 - //SEG301 [167] *((const signed byte[9]) rotation_matrix#0+(byte/signed byte/word/signed word/dword/signed dword) 3) ← (signed byte)(byte~) calculate_matrix_16::$33 -- _deref_pbsc1=vbsz1 - lda _33 - sta rotation_matrix+3 - //SEG302 [168] (signed word~) calculate_matrix_16::$35 ← (signed word)(word~) calculate_matrix_16::$79 + (signed word)(word~) calculate_matrix_16::$80 -- vwsz1=vwsz2_plus_vwsz3 - lda _79 - clc - adc _80 - sta _35 - lda _79+1 - adc _80+1 - sta _35+1 - //SEG303 [169] (signed word~) calculate_matrix_16::$36 ← (signed word~) calculate_matrix_16::$35 + (signed word)(word~) calculate_matrix_16::$82 -- vwsz1=vwsz2_plus_vwsz3 - lda _35 - clc - adc _82 - sta _36 - lda _35+1 - adc _82+1 - sta _36+1 - //SEG304 [170] (signed word~) calculate_matrix_16::$37 ← (signed word~) calculate_matrix_16::$36 - (signed word)(word~) calculate_matrix_16::$81 -- vwsz1=vwsz2_minus_vwsz3 - lda _36 - sec - sbc _81 - sta _37 - lda _36+1 - sbc _81+1 - sta _37+1 - //SEG305 [171] (signed word~) calculate_matrix_16::$38 ← (signed word~) calculate_matrix_16::$37 + (signed word)(word~) calculate_matrix_16::$83 -- vwsz1=vwsz2_plus_vwsz3 - lda _37 - clc - adc _83 - sta _38 - lda _37+1 - adc _83+1 - sta _38+1 - //SEG306 [172] (signed word~) calculate_matrix_16::$39 ← (signed word~) calculate_matrix_16::$38 - (signed word)(word~) calculate_matrix_16::$84 -- vwsz1=vwsz2_minus_vwsz3 - lda _38 - sec - sbc _84 - sta _39 - lda _38+1 - sbc _84+1 - sta _39+1 - //SEG307 [173] (byte~) calculate_matrix_16::$40 ← > (signed word~) calculate_matrix_16::$39 -- vbuz1=_hi_vwsz2 - lda _39+1 - sta _40 - //SEG308 [174] *((const signed byte[9]) rotation_matrix#0+(byte/signed byte/word/signed word/dword/signed dword) 7) ← (signed byte)(byte~) calculate_matrix_16::$40 -- _deref_pbsc1=vbsz1 - lda _40 - sta rotation_matrix+7 - //SEG309 [175] (word~) calculate_matrix_16::$85 ← *((const byte*) COSH_HI#0 + (signed byte) calculate_matrix_16::t3#0) w= *((const byte*) COSH_LO#0 + (signed byte) calculate_matrix_16::t3#0) -- vwuz1=pbuc1_derefidx_vbsz2_word_pbuc2_derefidx_vbsz2 - ldy t3 - lda COSH_HI,y - sta _85+1 - lda COSH_LO,y - sta _85 - //SEG310 [176] (word~) calculate_matrix_16::$86 ← *((const byte*) COSH_HI#0 + (signed byte) calculate_matrix_16::t4#0) w= *((const byte*) COSH_LO#0 + (signed byte) calculate_matrix_16::t4#0) -- vwuz1=pbuc1_derefidx_vbsz2_word_pbuc2_derefidx_vbsz2 - ldy t4 - lda COSH_HI,y - sta _86+1 - lda COSH_LO,y - sta _86 - //SEG311 [177] (word~) calculate_matrix_16::$87 ← *((const byte*) SINQ_HI#0 + (signed byte) calculate_matrix_16::t5#0) w= *((const byte*) SINH_LO#0 + (signed byte) calculate_matrix_16::t5#0) -- vwuz1=pbuc1_derefidx_vbsz2_word_pbuc2_derefidx_vbsz2 - ldy t5 - lda SINQ_HI,y - sta _87+1 - lda SINH_LO,y - sta _87 - //SEG312 [178] (word~) calculate_matrix_16::$88 ← *((const byte*) SINQ_HI#0 + (signed byte) calculate_matrix_16::t6#0) w= *((const byte*) SINH_LO#0 + (signed byte) calculate_matrix_16::t6#0) -- vwuz1=pbuc1_derefidx_vbsz2_word_pbuc2_derefidx_vbsz2 - ldy t6 - lda SINQ_HI,y - sta _88+1 - lda SINH_LO,y - sta _88 - //SEG313 [179] (word~) calculate_matrix_16::$89 ← *((const byte*) SINQ_HI#0 + (signed byte) calculate_matrix_16::t7#0) w= *((const byte*) SINH_LO#0 + (signed byte) calculate_matrix_16::t7#0) -- vwuz1=pbuc1_derefidx_vbsz2_word_pbuc2_derefidx_vbsz2 - ldy t7 - lda SINQ_HI,y - sta _89+1 - lda SINH_LO,y - sta _89 - //SEG314 [180] (word~) calculate_matrix_16::$90 ← *((const byte*) SINQ_HI#0 + (signed byte) calculate_matrix_16::t8#0) w= *((const byte*) SINH_LO#0 + (signed byte) calculate_matrix_16::t8#0) -- vwuz1=pbuc1_derefidx_vbsz2_word_pbuc2_derefidx_vbsz2 - ldy t8 - lda SINQ_HI,y - sta _90+1 - lda SINH_LO,y - sta _90 - //SEG315 [181] (signed word~) calculate_matrix_16::$48 ← (signed word)(word~) calculate_matrix_16::$85 + (signed word)(word~) calculate_matrix_16::$86 -- vwsz1=vwsz2_plus_vwsz3 - lda _85 - clc - adc _86 - sta _48 - lda _85+1 - adc _86+1 - sta _48+1 - //SEG316 [182] (signed word~) calculate_matrix_16::$49 ← (signed word~) calculate_matrix_16::$48 + (signed word)(word~) calculate_matrix_16::$87 -- vwsz1=vwsz2_plus_vwsz3 - lda _48 - clc - adc _87 - sta _49 - lda _48+1 - adc _87+1 - sta _49+1 - //SEG317 [183] (signed word~) calculate_matrix_16::$50 ← (signed word~) calculate_matrix_16::$49 - (signed word)(word~) calculate_matrix_16::$88 -- vwsz1=vwsz2_minus_vwsz3 - lda _49 - sec - sbc _88 - sta _50 - lda _49+1 - sbc _88+1 - sta _50+1 - //SEG318 [184] (signed word~) calculate_matrix_16::$51 ← (signed word~) calculate_matrix_16::$50 - (signed word)(word~) calculate_matrix_16::$89 -- vwsz1=vwsz2_minus_vwsz3 - lda _50 - sec - sbc _89 - sta _51 - lda _50+1 - sbc _89+1 - sta _51+1 - //SEG319 [185] (signed word~) calculate_matrix_16::$52 ← (signed word~) calculate_matrix_16::$51 - (signed word)(word~) calculate_matrix_16::$90 -- vwsz1=vwsz2_minus_vwsz3 - lda _51 - sec - sbc _90 - sta _52 - lda _51+1 - sbc _90+1 - sta _52+1 - //SEG320 [186] (byte~) calculate_matrix_16::$53 ← > (signed word~) calculate_matrix_16::$52 -- vbuz1=_hi_vwsz2 - lda _52+1 - sta _53 - //SEG321 [187] *((const signed byte[9]) rotation_matrix#0+(byte/signed byte/word/signed word/dword/signed dword) 4) ← (signed byte)(byte~) calculate_matrix_16::$53 -- _deref_pbsc1=vbsz1 - lda _53 - sta rotation_matrix+4 - //SEG322 [188] (signed word~) calculate_matrix_16::$55 ← (signed word)(word~) calculate_matrix_16::$86 - (signed word)(word~) calculate_matrix_16::$85 -- vwsz1=vwsz2_minus_vwsz3 - lda _86 - sec - sbc _85 - sta _55 - lda _86+1 - sbc _85+1 - sta _55+1 - //SEG323 [189] (signed word~) calculate_matrix_16::$56 ← (signed word~) calculate_matrix_16::$55 + (signed word)(word~) calculate_matrix_16::$88 -- vwsz1=vwsz2_plus_vwsz3 - lda _55 - clc - adc _88 - sta _56 - lda _55+1 - adc _88+1 - sta _56+1 - //SEG324 [190] (signed word~) calculate_matrix_16::$57 ← (signed word~) calculate_matrix_16::$56 - (signed word)(word~) calculate_matrix_16::$87 -- vwsz1=vwsz2_minus_vwsz3 - lda _56 - sec - sbc _87 - sta _57 - lda _56+1 - sbc _87+1 - sta _57+1 - //SEG325 [191] (signed word~) calculate_matrix_16::$58 ← (signed word~) calculate_matrix_16::$57 - (signed word)(word~) calculate_matrix_16::$89 -- vwsz1=vwsz2_minus_vwsz3 - lda _57 - sec - sbc _89 - sta _58 - lda _57+1 - sbc _89+1 - sta _58+1 - //SEG326 [192] (signed word~) calculate_matrix_16::$59 ← (signed word~) calculate_matrix_16::$58 - (signed word)(word~) calculate_matrix_16::$90 -- vwsz1=vwsz2_minus_vwsz3 - lda _58 - sec - sbc _90 - sta _59 - lda _58+1 - sbc _90+1 - sta _59+1 - //SEG327 [193] (byte~) calculate_matrix_16::$60 ← > (signed word~) calculate_matrix_16::$59 -- vbuz1=_hi_vwsz2 - lda _59+1 - sta _60 - //SEG328 [194] *((const signed byte[9]) rotation_matrix#0+(byte/signed byte/word/signed word/dword/signed dword) 6) ← (signed byte)(byte~) calculate_matrix_16::$60 -- _deref_pbsc1=vbsz1 - lda _60 - sta rotation_matrix+6 - //SEG329 [195] (signed byte) calculate_matrix_16::t9#0 ← (signed byte) calculate_matrix_16::sy#0 - (signed byte) calculate_matrix_16::sx#0 -- vbsz1=vbsz2_minus_vbsz3 + //SEG94 [66] (signed byte) calculate_matrix::t9#0 ← (signed byte) calculate_matrix::sy#0 - (signed byte) calculate_matrix::sx#0 -- vbsz1=vbsz2_minus_vbsz3 lda sy sec sbc sx sta t9 - //SEG330 [196] (signed byte) calculate_matrix_16::t10#0 ← (signed byte) calculate_matrix_16::sy#0 + (signed byte) calculate_matrix_16::sx#0 -- vbsz1=vbsz2_plus_vbsz3 + //SEG95 [67] (signed byte) calculate_matrix::t10#0 ← (signed byte) calculate_matrix::sy#0 + (signed byte) calculate_matrix::sx#0 -- vbsz1=vbsz2_plus_vbsz3 lda sy clc adc sx sta t10 - //SEG331 [197] (word~) calculate_matrix_16::$91 ← *((const byte*) SINH_HI#0 + (signed byte) calculate_matrix_16::t9#0) w= *((const byte*) SINH_LO#0 + (signed byte) calculate_matrix_16::t9#0) -- vwuz1=pbuc1_derefidx_vbsz2_word_pbuc2_derefidx_vbsz2 - ldy t9 - lda SINH_HI,y - sta _91+1 - lda SINH_LO,y - sta _91 - //SEG332 [198] (word~) calculate_matrix_16::$92 ← *((const byte*) SINH_HI#0 + (signed byte) calculate_matrix_16::t10#0) w= *((const byte*) SINH_LO#0 + (signed byte) calculate_matrix_16::t10#0) -- vwuz1=pbuc1_derefidx_vbsz2_word_pbuc2_derefidx_vbsz2 - ldy t10 - lda SINH_HI,y - sta _92+1 - lda SINH_LO,y - sta _92 - //SEG333 [199] (signed word~) calculate_matrix_16::$66 ← (signed word)(word~) calculate_matrix_16::$91 - (signed word)(word~) calculate_matrix_16::$92 -- vwsz1=vwsz2_minus_vwsz3 - lda _91 - sec - sbc _92 - sta _66 - lda _91+1 - sbc _92+1 - sta _66+1 - //SEG334 [200] (byte~) calculate_matrix_16::$67 ← > (signed word~) calculate_matrix_16::$66 -- vbuz1=_hi_vwsz2 - lda _66+1 - sta _67 - //SEG335 [201] *((const signed byte[9]) rotation_matrix#0+(byte/signed byte/word/signed word/dword/signed dword) 5) ← (signed byte)(byte~) calculate_matrix_16::$67 -- _deref_pbsc1=vbsz1 - lda _67 - sta rotation_matrix+5 - //SEG336 [202] (word~) calculate_matrix_16::$93 ← *((const byte*) COSH_HI#0 + (signed byte) calculate_matrix_16::t9#0) w= *((const byte*) COSH_LO#0 + (signed byte) calculate_matrix_16::t9#0) -- vwuz1=pbuc1_derefidx_vbsz2_word_pbuc2_derefidx_vbsz2 - ldy t9 - lda COSH_HI,y - sta _93+1 - lda COSH_LO,y - sta _93 - //SEG337 [203] (word~) calculate_matrix_16::$94 ← *((const byte*) COSH_HI#0 + (signed byte) calculate_matrix_16::t10#0) w= *((const byte*) COSH_LO#0 + (signed byte) calculate_matrix_16::t10#0) -- vwuz1=pbuc1_derefidx_vbsz2_word_pbuc2_derefidx_vbsz2 - ldy t10 - lda COSH_HI,y - sta _94+1 - lda COSH_LO,y - sta _94 - //SEG338 [204] (signed word~) calculate_matrix_16::$71 ← (signed word)(word~) calculate_matrix_16::$93 + (signed word)(word~) calculate_matrix_16::$94 -- vwsz1=vwsz2_plus_vwsz3 - lda _93 + //SEG96 [68] (signed byte~) calculate_matrix::$10 ← *((const signed byte*) COSH#0 + (signed byte) calculate_matrix::t1#0) + *((const signed byte*) COSH#0 + (signed byte) calculate_matrix::t2#0) -- vbsz1=pbsc1_derefidx_vbsz2_plus_pbsc1_derefidx_vbsz3 + ldx t1 + ldy t2 clc - adc _94 - sta _71 - lda _93+1 - adc _94+1 - sta _71+1 - //SEG339 [205] (byte~) calculate_matrix_16::$72 ← > (signed word~) calculate_matrix_16::$71 -- vbuz1=_hi_vwsz2 - lda _71+1 - sta _72 - //SEG340 [206] *((const signed byte[9]) rotation_matrix#0+(byte/signed byte/word/signed word/dword/signed dword) 8) ← (signed byte)(byte~) calculate_matrix_16::$72 -- _deref_pbsc1=vbsz1 - lda _72 + lda COSH,x + adc COSH,y + sta _10 + //SEG97 [69] *((const signed byte[9]) rotation_matrix#0) ← (signed byte~) calculate_matrix::$10 -- _deref_pbsc1=vbsz1 + lda _10 + sta rotation_matrix + //SEG98 [70] (signed byte~) calculate_matrix::$11 ← *((const signed byte*) SINH#0 + (signed byte) calculate_matrix::t1#0) - *((const signed byte*) SINH#0 + (signed byte) calculate_matrix::t2#0) -- vbsz1=pbsc1_derefidx_vbsz2_minus_pbsc1_derefidx_vbsz3 + ldx t1 + ldy t2 + sec + lda SINH,x + sbc SINH,y + sta _11 + //SEG99 [71] *((const signed byte[9]) rotation_matrix#0+(byte/signed byte/word/signed word/dword/signed dword) 1) ← (signed byte~) calculate_matrix::$11 -- _deref_pbsc1=vbsz1 + lda _11 + sta rotation_matrix+1 + //SEG100 [72] (signed byte~) calculate_matrix::$12 ← *((const signed byte*) SINH#0 + (signed byte) calculate_matrix::sy#0) + *((const signed byte*) SINH#0 + (signed byte) calculate_matrix::sy#0) -- vbsz1=pbsc1_derefidx_vbsz2_plus_pbsc1_derefidx_vbsz2 + ldy sy + clc + lda SINH,y + adc SINH,y + sta _12 + //SEG101 [73] *((const signed byte[9]) rotation_matrix#0+(byte/signed byte/word/signed word/dword/signed dword) 2) ← (signed byte~) calculate_matrix::$12 -- _deref_pbsc1=vbsz1 + lda _12 + sta rotation_matrix+2 + //SEG102 [74] (signed byte~) calculate_matrix::$13 ← *((const signed byte*) SINH#0+(const signed byte) sz#0 + (signed byte) calculate_matrix::t3#0) - *((const signed byte*) SINH#0+-(const signed byte) sz#0 + (signed byte) calculate_matrix::t4#0) -- vbsz1=pbsc1_derefidx_vbsz2_minus_pbsc2_derefidx_vbsz3 + ldx t3 + ldy t4 + sec + lda SINH+sz,x + sbc SINH+-sz,y + sta _13 + //SEG103 [75] (signed byte~) calculate_matrix::$14 ← (signed byte~) calculate_matrix::$13 + *((const signed byte*) COSQ#0 + (signed byte) calculate_matrix::t6#0) -- vbsz1=vbsz2_plus_pbsc1_derefidx_vbsz3 + lda _13 + ldy t6 + clc + adc COSQ,y + sta _14 + //SEG104 [76] (signed byte~) calculate_matrix::$15 ← (signed byte~) calculate_matrix::$14 - *((const signed byte*) COSQ#0 + (signed byte) calculate_matrix::t5#0) -- vbsz1=vbsz2_minus_pbsc1_derefidx_vbsz3 + lda _14 + ldy t5 + sec + sbc COSQ,y + sta _15 + //SEG105 [77] (signed byte~) calculate_matrix::$16 ← (signed byte~) calculate_matrix::$15 + *((const signed byte*) COSQ#0 + (signed byte) calculate_matrix::t8#0) -- vbsz1=vbsz2_plus_pbsc1_derefidx_vbsz3 + lda _15 + ldy t8 + clc + adc COSQ,y + sta _16 + //SEG106 [78] (signed byte~) calculate_matrix::$17 ← (signed byte~) calculate_matrix::$16 - *((const signed byte*) COSQ#0 + (signed byte) calculate_matrix::t7#0) -- vbsz1=vbsz2_minus_pbsc1_derefidx_vbsz3 + lda _16 + ldy t7 + sec + sbc COSQ,y + sta _17 + //SEG107 [79] *((const signed byte[9]) rotation_matrix#0+(byte/signed byte/word/signed word/dword/signed dword) 3) ← (signed byte~) calculate_matrix::$17 -- _deref_pbsc1=vbsz1 + lda _17 + sta rotation_matrix+3 + //SEG108 [80] (signed byte~) calculate_matrix::$18 ← *((const signed byte*) COSH#0 + (signed byte) calculate_matrix::t3#0) + *((const signed byte*) COSH#0 + (signed byte) calculate_matrix::t4#0) -- vbsz1=pbsc1_derefidx_vbsz2_plus_pbsc1_derefidx_vbsz3 + ldx t3 + ldy t4 + clc + lda COSH,x + adc COSH,y + sta _18 + //SEG109 [81] (signed byte~) calculate_matrix::$19 ← (signed byte~) calculate_matrix::$18 + *((const signed byte*) SINQ#0 + (signed byte) calculate_matrix::t5#0) -- vbsz1=vbsz2_plus_pbsc1_derefidx_vbsz3 + lda _18 + ldy t5 + clc + adc SINQ,y + sta _19 + //SEG110 [82] (signed byte~) calculate_matrix::$20 ← (signed byte~) calculate_matrix::$19 - *((const signed byte*) SINQ#0 + (signed byte) calculate_matrix::t6#0) -- vbsz1=vbsz2_minus_pbsc1_derefidx_vbsz3 + lda _19 + ldy t6 + sec + sbc SINQ,y + sta _20 + //SEG111 [83] (signed byte~) calculate_matrix::$21 ← (signed byte~) calculate_matrix::$20 - *((const signed byte*) SINQ#0 + (signed byte) calculate_matrix::t7#0) -- vbsz1=vbsz2_minus_pbsc1_derefidx_vbsz3 + lda _20 + ldy t7 + sec + sbc SINQ,y + sta _21 + //SEG112 [84] (signed byte~) calculate_matrix::$22 ← (signed byte~) calculate_matrix::$21 - *((const signed byte*) SINQ#0 + (signed byte) calculate_matrix::t8#0) -- vbsz1=vbsz2_minus_pbsc1_derefidx_vbsz3 + lda _21 + ldy t8 + sec + sbc SINQ,y + sta _22 + //SEG113 [85] *((const signed byte[9]) rotation_matrix#0+(byte/signed byte/word/signed word/dword/signed dword) 4) ← (signed byte~) calculate_matrix::$22 -- _deref_pbsc1=vbsz1 + lda _22 + sta rotation_matrix+4 + //SEG114 [86] (signed byte~) calculate_matrix::$23 ← *((const signed byte*) SINH#0 + (signed byte) calculate_matrix::t9#0) - *((const signed byte*) SINH#0 + (signed byte) calculate_matrix::t10#0) -- vbsz1=pbsc1_derefidx_vbsz2_minus_pbsc1_derefidx_vbsz3 + ldx t9 + ldy t10 + sec + lda SINH,x + sbc SINH,y + sta _23 + //SEG115 [87] *((const signed byte[9]) rotation_matrix#0+(byte/signed byte/word/signed word/dword/signed dword) 5) ← (signed byte~) calculate_matrix::$23 -- _deref_pbsc1=vbsz1 + lda _23 + sta rotation_matrix+5 + //SEG116 [88] (signed byte~) calculate_matrix::$24 ← *((const signed byte*) COSH#0 + (signed byte) calculate_matrix::t4#0) - *((const signed byte*) COSH#0 + (signed byte) calculate_matrix::t3#0) -- vbsz1=pbsc1_derefidx_vbsz2_minus_pbsc1_derefidx_vbsz3 + ldx t4 + ldy t3 + sec + lda COSH,x + sbc COSH,y + sta _24 + //SEG117 [89] (signed byte~) calculate_matrix::$25 ← (signed byte~) calculate_matrix::$24 + *((const signed byte*) SINQ#0 + (signed byte) calculate_matrix::t6#0) -- vbsz1=vbsz2_plus_pbsc1_derefidx_vbsz3 + lda _24 + ldy t6 + clc + adc SINQ,y + sta _25 + //SEG118 [90] (signed byte~) calculate_matrix::$26 ← (signed byte~) calculate_matrix::$25 - *((const signed byte*) SINQ#0 + (signed byte) calculate_matrix::t5#0) -- vbsz1=vbsz2_minus_pbsc1_derefidx_vbsz3 + lda _25 + ldy t5 + sec + sbc SINQ,y + sta _26 + //SEG119 [91] (signed byte~) calculate_matrix::$27 ← (signed byte~) calculate_matrix::$26 - *((const signed byte*) SINQ#0 + (signed byte) calculate_matrix::t8#0) -- vbsz1=vbsz2_minus_pbsc1_derefidx_vbsz3 + lda _26 + ldy t8 + sec + sbc SINQ,y + sta _27 + //SEG120 [92] (signed byte~) calculate_matrix::$28 ← (signed byte~) calculate_matrix::$27 - *((const signed byte*) SINQ#0 + (signed byte) calculate_matrix::t7#0) -- vbsz1=vbsz2_minus_pbsc1_derefidx_vbsz3 + lda _27 + ldy t7 + sec + sbc SINQ,y + sta _28 + //SEG121 [93] *((const signed byte[9]) rotation_matrix#0+(byte/signed byte/word/signed word/dword/signed dword) 6) ← (signed byte~) calculate_matrix::$28 -- _deref_pbsc1=vbsz1 + lda _28 + sta rotation_matrix+6 + //SEG122 [94] (signed byte~) calculate_matrix::$29 ← *((const signed byte*) SINH#0 + (signed byte) calculate_matrix::t3#0) + *((const signed byte*) SINH#0 + (signed byte) calculate_matrix::t4#0) -- vbsz1=pbsc1_derefidx_vbsz2_plus_pbsc1_derefidx_vbsz3 + ldx t3 + ldy t4 + clc + lda SINH,x + adc SINH,y + sta _29 + //SEG123 [95] (signed byte~) calculate_matrix::$30 ← (signed byte~) calculate_matrix::$29 + *((const signed byte*) COSQ#0 + (signed byte) calculate_matrix::t6#0) -- vbsz1=vbsz2_plus_pbsc1_derefidx_vbsz3 + lda _29 + ldy t6 + clc + adc COSQ,y + sta _30 + //SEG124 [96] (signed byte~) calculate_matrix::$31 ← (signed byte~) calculate_matrix::$30 - *((const signed byte*) COSQ#0 + (signed byte) calculate_matrix::t5#0) -- vbsz1=vbsz2_minus_pbsc1_derefidx_vbsz3 + lda _30 + ldy t5 + sec + sbc COSQ,y + sta _31 + //SEG125 [97] (signed byte~) calculate_matrix::$32 ← (signed byte~) calculate_matrix::$31 + *((const signed byte*) COSQ#0 + (signed byte) calculate_matrix::t7#0) -- vbsz1=vbsz2_plus_pbsc1_derefidx_vbsz3 + lda _31 + ldy t7 + clc + adc COSQ,y + sta _32 + //SEG126 [98] (signed byte~) calculate_matrix::$33 ← (signed byte~) calculate_matrix::$32 - *((const signed byte*) COSQ#0 + (signed byte) calculate_matrix::t8#0) -- vbsz1=vbsz2_minus_pbsc1_derefidx_vbsz3 + lda _32 + ldy t8 + sec + sbc COSQ,y + sta _33 + //SEG127 [99] *((const signed byte[9]) rotation_matrix#0+(byte/signed byte/word/signed word/dword/signed dword) 7) ← (signed byte~) calculate_matrix::$33 -- _deref_pbsc1=vbsz1 + lda _33 + sta rotation_matrix+7 + //SEG128 [100] (signed byte~) calculate_matrix::$34 ← *((const signed byte*) COSH#0 + (signed byte) calculate_matrix::t9#0) + *((const signed byte*) COSH#0 + (signed byte) calculate_matrix::t10#0) -- vbsz1=pbsc1_derefidx_vbsz2_plus_pbsc1_derefidx_vbsz3 + ldx t9 + ldy t10 + clc + lda COSH,x + adc COSH,y + sta _34 + //SEG129 [101] *((const signed byte[9]) rotation_matrix#0+(byte/signed byte/word/signed word/dword/signed dword) 8) ← (signed byte~) calculate_matrix::$34 -- _deref_pbsc1=vbsz1 + lda _34 sta rotation_matrix+8 jmp breturn - //SEG341 calculate_matrix_16::@return + //SEG130 calculate_matrix::@return breturn: - //SEG342 [207] return + //SEG131 [102] return rts } -//SEG343 debug_print_init -debug_print_init: { - .label COLS = $d800 - .label at_line = SCREEN+$10*$28 - .label at_cols = COLS+$10*$28 - .label _59 = $95 - .label _60 = $97 - .label _63 = $99 - .label _64 = $9b - .label _67 = $9d - .label _68 = $9f - .label _71 = $a1 - .label _72 = $a3 - .label _75 = $a5 - .label _76 = $a7 - .label _79 = $a9 - .label _80 = $ab - .label _83 = $ad - .label _84 = $af - .label _87 = $b1 - .label _88 = $b3 - .label _91 = $b5 - .label _92 = $b7 - .label col = $94 - .label j = $10 - .label c = $e - .label i = $f - //SEG344 [209] call print_cls - //SEG345 [286] phi from debug_print_init to print_cls [phi:debug_print_init->print_cls] - print_cls_from_debug_print_init: - jsr print_cls - //SEG346 [210] phi from debug_print_init to debug_print_init::@5 [phi:debug_print_init->debug_print_init::@5] - b5_from_debug_print_init: - jmp b5 - //SEG347 debug_print_init::@5 - b5: - //SEG348 [211] call print_str_at - //SEG349 [279] phi from debug_print_init::@5 to print_str_at [phi:debug_print_init::@5->print_str_at] - print_str_at_from_b5: - //SEG350 [279] phi (byte*) print_str_at::at#15 = (const byte*) SCREEN#0+(byte/signed byte/word/signed word/dword/signed dword) 34 [phi:debug_print_init::@5->print_str_at#0] -- pbuz1=pbuc1 - lda #SCREEN+$22 - sta print_str_at.at+1 - //SEG351 [279] phi (byte*) print_str_at::str#15 = (const string) debug_print_init::str [phi:debug_print_init::@5->print_str_at#1] -- pbuz1=pbuc1 - lda #str - sta print_str_at.str+1 - jsr print_str_at - //SEG352 [212] phi from debug_print_init::@5 to debug_print_init::@6 [phi:debug_print_init::@5->debug_print_init::@6] - b6_from_b5: - jmp b6 - //SEG353 debug_print_init::@6 - b6: - //SEG354 [213] call print_str_at - //SEG355 [279] phi from debug_print_init::@6 to print_str_at [phi:debug_print_init::@6->print_str_at] - print_str_at_from_b6: - //SEG356 [279] phi (byte*) print_str_at::at#15 = (const byte*) SCREEN#0+(byte/signed byte/word/signed word/dword/signed dword) 40*(byte/signed byte/word/signed word/dword/signed dword) 1+(byte/signed byte/word/signed word/dword/signed dword) 34 [phi:debug_print_init::@6->print_str_at#0] -- pbuz1=pbuc1 - lda #SCREEN+$28*1+$22 - sta print_str_at.at+1 - //SEG357 [279] phi (byte*) print_str_at::str#15 = (const string) debug_print_init::str1 [phi:debug_print_init::@6->print_str_at#1] -- pbuz1=pbuc1 - lda #str1 - sta print_str_at.str+1 - jsr print_str_at - //SEG358 [214] phi from debug_print_init::@6 to debug_print_init::@7 [phi:debug_print_init::@6->debug_print_init::@7] - b7_from_b6: - jmp b7 - //SEG359 debug_print_init::@7 - b7: - //SEG360 [215] call print_str_at - //SEG361 [279] phi from debug_print_init::@7 to print_str_at [phi:debug_print_init::@7->print_str_at] - print_str_at_from_b7: - //SEG362 [279] phi (byte*) print_str_at::at#15 = (const byte*) SCREEN#0+(byte/signed byte/word/signed word/dword/signed dword) 40*(byte/signed byte/word/signed word/dword/signed dword) 2+(byte/signed byte/word/signed word/dword/signed dword) 34 [phi:debug_print_init::@7->print_str_at#0] -- pbuz1=pbuc1 - lda #SCREEN+$28*2+$22 - sta print_str_at.at+1 - //SEG363 [279] phi (byte*) print_str_at::str#15 = (const string) debug_print_init::str2 [phi:debug_print_init::@7->print_str_at#1] -- pbuz1=pbuc1 - lda #str2 - sta print_str_at.str+1 - jsr print_str_at - //SEG364 [216] phi from debug_print_init::@7 to debug_print_init::@8 [phi:debug_print_init::@7->debug_print_init::@8] - b8_from_b7: - jmp b8 - //SEG365 debug_print_init::@8 - b8: - //SEG366 [217] call print_str_at - //SEG367 [279] phi from debug_print_init::@8 to print_str_at [phi:debug_print_init::@8->print_str_at] - print_str_at_from_b8: - //SEG368 [279] phi (byte*) print_str_at::at#15 = (const byte*) SCREEN#0+(byte/signed byte/word/signed word/dword/signed dword) 40*(byte/signed byte/word/signed word/dword/signed dword) 16 [phi:debug_print_init::@8->print_str_at#0] -- pbuz1=pbuc1 - lda #SCREEN+$28*$10 - sta print_str_at.at+1 - //SEG369 [279] phi (byte*) print_str_at::str#15 = (const string) debug_print_init::str3 [phi:debug_print_init::@8->print_str_at#1] -- pbuz1=pbuc1 - lda #str3 - sta print_str_at.str+1 - jsr print_str_at - //SEG370 [218] phi from debug_print_init::@8 to debug_print_init::@9 [phi:debug_print_init::@8->debug_print_init::@9] - b9_from_b8: - jmp b9 - //SEG371 debug_print_init::@9 - b9: - //SEG372 [219] call print_str_at - //SEG373 [279] phi from debug_print_init::@9 to print_str_at [phi:debug_print_init::@9->print_str_at] - print_str_at_from_b9: - //SEG374 [279] phi (byte*) print_str_at::at#15 = (const byte*) SCREEN#0+(byte/signed byte/word/signed word/dword/signed dword) 40*(byte/signed byte/word/signed word/dword/signed dword) 17 [phi:debug_print_init::@9->print_str_at#0] -- pbuz1=pbuc1 - lda #SCREEN+$28*$11 - sta print_str_at.at+1 - //SEG375 [279] phi (byte*) print_str_at::str#15 = (const string) debug_print_init::str4 [phi:debug_print_init::@9->print_str_at#1] -- pbuz1=pbuc1 - lda #str4 - sta print_str_at.str+1 - jsr print_str_at - //SEG376 [220] phi from debug_print_init::@9 to debug_print_init::@10 [phi:debug_print_init::@9->debug_print_init::@10] - b10_from_b9: - jmp b10 - //SEG377 debug_print_init::@10 - b10: - //SEG378 [221] call print_str_at - //SEG379 [279] phi from debug_print_init::@10 to print_str_at [phi:debug_print_init::@10->print_str_at] - print_str_at_from_b10: - //SEG380 [279] phi (byte*) print_str_at::at#15 = (const byte*) SCREEN#0+(byte/signed byte/word/signed word/dword/signed dword) 40*(byte/signed byte/word/signed word/dword/signed dword) 18 [phi:debug_print_init::@10->print_str_at#0] -- pbuz1=pbuc1 - lda #SCREEN+$28*$12 - sta print_str_at.at+1 - //SEG381 [279] phi (byte*) print_str_at::str#15 = (const string) debug_print_init::str5 [phi:debug_print_init::@10->print_str_at#1] -- pbuz1=pbuc1 - lda #str5 - sta print_str_at.str+1 - jsr print_str_at - //SEG382 [222] phi from debug_print_init::@10 to debug_print_init::@11 [phi:debug_print_init::@10->debug_print_init::@11] - b11_from_b10: - jmp b11 - //SEG383 debug_print_init::@11 - b11: - //SEG384 [223] call print_str_at - //SEG385 [279] phi from debug_print_init::@11 to print_str_at [phi:debug_print_init::@11->print_str_at] - print_str_at_from_b11: - //SEG386 [279] phi (byte*) print_str_at::at#15 = (const byte*) SCREEN#0+(byte/signed byte/word/signed word/dword/signed dword) 40*(byte/signed byte/word/signed word/dword/signed dword) 19 [phi:debug_print_init::@11->print_str_at#0] -- pbuz1=pbuc1 - lda #SCREEN+$28*$13 - sta print_str_at.at+1 - //SEG387 [279] phi (byte*) print_str_at::str#15 = (const string) debug_print_init::str6 [phi:debug_print_init::@11->print_str_at#1] -- pbuz1=pbuc1 - lda #str6 - sta print_str_at.str+1 - jsr print_str_at - //SEG388 [224] phi from debug_print_init::@11 to debug_print_init::@12 [phi:debug_print_init::@11->debug_print_init::@12] - b12_from_b11: - jmp b12 - //SEG389 debug_print_init::@12 - b12: - //SEG390 [225] call print_str_at - //SEG391 [279] phi from debug_print_init::@12 to print_str_at [phi:debug_print_init::@12->print_str_at] - print_str_at_from_b12: - //SEG392 [279] phi (byte*) print_str_at::at#15 = (const byte*) SCREEN#0+(byte/signed byte/word/signed word/dword/signed dword) 40*(byte/signed byte/word/signed word/dword/signed dword) 20 [phi:debug_print_init::@12->print_str_at#0] -- pbuz1=pbuc1 - lda #SCREEN+$28*$14 - sta print_str_at.at+1 - //SEG393 [279] phi (byte*) print_str_at::str#15 = (const string) debug_print_init::str7 [phi:debug_print_init::@12->print_str_at#1] -- pbuz1=pbuc1 - lda #str7 - sta print_str_at.str+1 - jsr print_str_at - //SEG394 [226] phi from debug_print_init::@12 to debug_print_init::@13 [phi:debug_print_init::@12->debug_print_init::@13] - b13_from_b12: - jmp b13 - //SEG395 debug_print_init::@13 - b13: - //SEG396 [227] call print_str_at - //SEG397 [279] phi from debug_print_init::@13 to print_str_at [phi:debug_print_init::@13->print_str_at] - print_str_at_from_b13: - //SEG398 [279] phi (byte*) print_str_at::at#15 = (const byte*) SCREEN#0+(byte/signed byte/word/signed word/dword/signed dword) 40*(byte/signed byte/word/signed word/dword/signed dword) 21 [phi:debug_print_init::@13->print_str_at#0] -- pbuz1=pbuc1 - lda #SCREEN+$28*$15 - sta print_str_at.at+1 - //SEG399 [279] phi (byte*) print_str_at::str#15 = (const string) debug_print_init::str8 [phi:debug_print_init::@13->print_str_at#1] -- pbuz1=pbuc1 - lda #str8 - sta print_str_at.str+1 - jsr print_str_at - //SEG400 [228] phi from debug_print_init::@13 to debug_print_init::@14 [phi:debug_print_init::@13->debug_print_init::@14] - b14_from_b13: - jmp b14 - //SEG401 debug_print_init::@14 - b14: - //SEG402 [229] call print_str_at - //SEG403 [279] phi from debug_print_init::@14 to print_str_at [phi:debug_print_init::@14->print_str_at] - print_str_at_from_b14: - //SEG404 [279] phi (byte*) print_str_at::at#15 = (const byte*) SCREEN#0+(byte/signed byte/word/signed word/dword/signed dword) 40*(byte/signed byte/word/signed word/dword/signed dword) 22 [phi:debug_print_init::@14->print_str_at#0] -- pbuz1=pbuc1 - lda #SCREEN+$28*$16 - sta print_str_at.at+1 - //SEG405 [279] phi (byte*) print_str_at::str#15 = (const string) debug_print_init::str9 [phi:debug_print_init::@14->print_str_at#1] -- pbuz1=pbuc1 - lda #str9 - sta print_str_at.str+1 - jsr print_str_at - //SEG406 [230] phi from debug_print_init::@14 to debug_print_init::@15 [phi:debug_print_init::@14->debug_print_init::@15] - b15_from_b14: - jmp b15 - //SEG407 debug_print_init::@15 - b15: - //SEG408 [231] call print_str_at - //SEG409 [279] phi from debug_print_init::@15 to print_str_at [phi:debug_print_init::@15->print_str_at] - print_str_at_from_b15: - //SEG410 [279] phi (byte*) print_str_at::at#15 = (const byte*) SCREEN#0+(byte/signed byte/word/signed word/dword/signed dword) 40*(byte/signed byte/word/signed word/dword/signed dword) 23 [phi:debug_print_init::@15->print_str_at#0] -- pbuz1=pbuc1 - lda #SCREEN+$28*$17 - sta print_str_at.at+1 - //SEG411 [279] phi (byte*) print_str_at::str#15 = (const string) debug_print_init::str10 [phi:debug_print_init::@15->print_str_at#1] -- pbuz1=pbuc1 - lda #str10 - sta print_str_at.str+1 - jsr print_str_at - //SEG412 [232] phi from debug_print_init::@15 to debug_print_init::@16 [phi:debug_print_init::@15->debug_print_init::@16] - b16_from_b15: - jmp b16 - //SEG413 debug_print_init::@16 - b16: - //SEG414 [233] call print_str_at - //SEG415 [279] phi from debug_print_init::@16 to print_str_at [phi:debug_print_init::@16->print_str_at] - print_str_at_from_b16: - //SEG416 [279] phi (byte*) print_str_at::at#15 = (const byte*) SCREEN#0+(byte/signed byte/word/signed word/dword/signed dword) 40*(byte/signed byte/word/signed word/dword/signed dword) 24 [phi:debug_print_init::@16->print_str_at#0] -- pbuz1=pbuc1 - lda #SCREEN+$28*$18 - sta print_str_at.at+1 - //SEG417 [279] phi (byte*) print_str_at::str#15 = (const string) debug_print_init::str11 [phi:debug_print_init::@16->print_str_at#1] -- pbuz1=pbuc1 - lda #str11 - sta print_str_at.str+1 - jsr print_str_at - //SEG418 [234] phi from debug_print_init::@16 to debug_print_init::@1 [phi:debug_print_init::@16->debug_print_init::@1] - b1_from_b16: - //SEG419 [234] phi (byte) debug_print_init::i#2 = (byte/signed byte/word/signed word/dword/signed dword) 0 [phi:debug_print_init::@16->debug_print_init::@1#0] -- vbuz1=vbuc1 - lda #0 - sta i - //SEG420 [234] phi (byte) debug_print_init::c#2 = (byte/signed byte/word/signed word/dword/signed dword) 4 [phi:debug_print_init::@16->debug_print_init::@1#1] -- vbuz1=vbuc1 - lda #4 - sta c - jmp b1 - //SEG421 [234] phi from debug_print_init::@3 to debug_print_init::@1 [phi:debug_print_init::@3->debug_print_init::@1] - b1_from_b3: - //SEG422 [234] phi (byte) debug_print_init::i#2 = (byte) debug_print_init::i#1 [phi:debug_print_init::@3->debug_print_init::@1#0] -- register_copy - //SEG423 [234] phi (byte) debug_print_init::c#2 = (byte) debug_print_init::c#1 [phi:debug_print_init::@3->debug_print_init::@1#1] -- register_copy - jmp b1 - //SEG424 debug_print_init::@1 - b1: - //SEG425 [235] (byte*) print_sbyte_at::at#0 ← (const byte*) debug_print_init::at_line#0 + (byte) debug_print_init::c#2 -- pbuz1=pbuc1_plus_vbuz2 - lda c - clc - adc #at_line - adc #0 - sta print_sbyte_at.at+1 - //SEG426 [236] (signed byte) print_sbyte_at::b#1 ← *((const signed byte[8]) xs#0 + (byte) debug_print_init::i#2) -- vbsz1=pbsc1_derefidx_vbuz2 - ldy i - lda xs,y - sta print_sbyte_at.b - //SEG427 [237] call print_sbyte_at - //SEG428 [103] phi from debug_print_init::@1 to print_sbyte_at [phi:debug_print_init::@1->print_sbyte_at] - print_sbyte_at_from_b1: - //SEG429 [103] phi (byte*) print_sbyte_at::at#21 = (byte*) print_sbyte_at::at#0 [phi:debug_print_init::@1->print_sbyte_at#0] -- register_copy - //SEG430 [103] phi (signed byte) print_sbyte_at::b#22 = (signed byte) print_sbyte_at::b#1 [phi:debug_print_init::@1->print_sbyte_at#1] -- register_copy - jsr print_sbyte_at - jmp b18 - //SEG431 debug_print_init::@18 - b18: - //SEG432 [238] (byte*) print_sbyte_at::at#1 ← (const byte*) debug_print_init::at_line#0+(byte/signed byte/word/signed word/dword/signed dword) 40*(byte/signed byte/word/signed word/dword/signed dword) 1 + (byte) debug_print_init::c#2 -- pbuz1=pbuc1_plus_vbuz2 - lda c - clc - adc #at_line+$28*1 - adc #0 - sta print_sbyte_at.at+1 - //SEG433 [239] (signed byte) print_sbyte_at::b#2 ← *((const signed byte[8]) ys#0 + (byte) debug_print_init::i#2) -- vbsz1=pbsc1_derefidx_vbuz2 - ldy i - lda ys,y - sta print_sbyte_at.b - //SEG434 [240] call print_sbyte_at - //SEG435 [103] phi from debug_print_init::@18 to print_sbyte_at [phi:debug_print_init::@18->print_sbyte_at] - print_sbyte_at_from_b18: - //SEG436 [103] phi (byte*) print_sbyte_at::at#21 = (byte*) print_sbyte_at::at#1 [phi:debug_print_init::@18->print_sbyte_at#0] -- register_copy - //SEG437 [103] phi (signed byte) print_sbyte_at::b#22 = (signed byte) print_sbyte_at::b#2 [phi:debug_print_init::@18->print_sbyte_at#1] -- register_copy - jsr print_sbyte_at - jmp b19 - //SEG438 debug_print_init::@19 - b19: - //SEG439 [241] (byte*) print_sbyte_at::at#2 ← (const byte*) debug_print_init::at_line#0+(byte/signed byte/word/signed word/dword/signed dword) 40*(byte/signed byte/word/signed word/dword/signed dword) 2 + (byte) debug_print_init::c#2 -- pbuz1=pbuc1_plus_vbuz2 - lda c - clc - adc #at_line+$28*2 - adc #0 - sta print_sbyte_at.at+1 - //SEG440 [242] (signed byte) print_sbyte_at::b#3 ← *((const signed byte[8]) zs#0 + (byte) debug_print_init::i#2) -- vbsz1=pbsc1_derefidx_vbuz2 - ldy i - lda zs,y - sta print_sbyte_at.b - //SEG441 [243] call print_sbyte_at - //SEG442 [103] phi from debug_print_init::@19 to print_sbyte_at [phi:debug_print_init::@19->print_sbyte_at] - print_sbyte_at_from_b19: - //SEG443 [103] phi (byte*) print_sbyte_at::at#21 = (byte*) print_sbyte_at::at#2 [phi:debug_print_init::@19->print_sbyte_at#0] -- register_copy - //SEG444 [103] phi (signed byte) print_sbyte_at::b#22 = (signed byte) print_sbyte_at::b#3 [phi:debug_print_init::@19->print_sbyte_at#1] -- register_copy - jsr print_sbyte_at - //SEG445 [244] phi from debug_print_init::@19 to debug_print_init::@2 [phi:debug_print_init::@19->debug_print_init::@2] - b2_from_b19: - //SEG446 [244] phi (byte) debug_print_init::j#2 = (byte/signed byte/word/signed word/dword/signed dword) 0 [phi:debug_print_init::@19->debug_print_init::@2#0] -- vbuz1=vbuc1 - lda #0 - sta j - jmp b2 - //SEG447 [244] phi from debug_print_init::@2 to debug_print_init::@2 [phi:debug_print_init::@2->debug_print_init::@2] - b2_from_b2: - //SEG448 [244] phi (byte) debug_print_init::j#2 = (byte) debug_print_init::j#1 [phi:debug_print_init::@2->debug_print_init::@2#0] -- register_copy - jmp b2 - //SEG449 debug_print_init::@2 - b2: - //SEG450 [245] (byte) debug_print_init::col#0 ← (byte/signed byte/word/signed word/dword/signed dword) 8 + (byte) debug_print_init::i#2 -- vbuz1=vbuc1_plus_vbuz2 - lda #8 - clc - adc i - sta col - //SEG451 [246] (byte*~) debug_print_init::$59 ← (const byte*) debug_print_init::at_cols#0 + (byte) debug_print_init::c#2 -- pbuz1=pbuc1_plus_vbuz2 - lda c - clc - adc #at_cols - adc #0 - sta _59+1 - //SEG452 [247] (byte*~) debug_print_init::$60 ← (byte*~) debug_print_init::$59 + (byte) debug_print_init::j#2 -- pbuz1=pbuz2_plus_vbuz3 - lda j - clc - adc _59 - sta _60 - lda #0 - adc _59+1 - sta _60+1 - //SEG453 [248] *((byte*~) debug_print_init::$60) ← (byte) debug_print_init::col#0 -- _deref_pbuz1=vbuz2 - lda col - ldy #0 - sta (_60),y - //SEG454 [249] (byte*~) debug_print_init::$63 ← (const byte*) debug_print_init::at_cols#0+(byte/signed byte/word/signed word/dword/signed dword) 40*(byte/signed byte/word/signed word/dword/signed dword) 1 + (byte) debug_print_init::c#2 -- pbuz1=pbuc1_plus_vbuz2 - lda c - clc - adc #at_cols+$28*1 - adc #0 - sta _63+1 - //SEG455 [250] (byte*~) debug_print_init::$64 ← (byte*~) debug_print_init::$63 + (byte) debug_print_init::j#2 -- pbuz1=pbuz2_plus_vbuz3 - lda j - clc - adc _63 - sta _64 - lda #0 - adc _63+1 - sta _64+1 - //SEG456 [251] *((byte*~) debug_print_init::$64) ← (byte) debug_print_init::col#0 -- _deref_pbuz1=vbuz2 - lda col - ldy #0 - sta (_64),y - //SEG457 [252] (byte*~) debug_print_init::$67 ← (const byte*) debug_print_init::at_cols#0+(byte/signed byte/word/signed word/dword/signed dword) 40*(byte/signed byte/word/signed word/dword/signed dword) 2 + (byte) debug_print_init::c#2 -- pbuz1=pbuc1_plus_vbuz2 - lda c - clc - adc #at_cols+$28*2 - adc #0 - sta _67+1 - //SEG458 [253] (byte*~) debug_print_init::$68 ← (byte*~) debug_print_init::$67 + (byte) debug_print_init::j#2 -- pbuz1=pbuz2_plus_vbuz3 - lda j - clc - adc _67 - sta _68 - lda #0 - adc _67+1 - sta _68+1 - //SEG459 [254] *((byte*~) debug_print_init::$68) ← (byte) debug_print_init::col#0 -- _deref_pbuz1=vbuz2 - lda col - ldy #0 - sta (_68),y - //SEG460 [255] (byte*~) debug_print_init::$71 ← (const byte*) debug_print_init::at_cols#0+(byte/signed byte/word/signed word/dword/signed dword) 40*(byte/signed byte/word/signed word/dword/signed dword) 3 + (byte) debug_print_init::c#2 -- pbuz1=pbuc1_plus_vbuz2 - lda c - clc - adc #at_cols+$28*3 - adc #0 - sta _71+1 - //SEG461 [256] (byte*~) debug_print_init::$72 ← (byte*~) debug_print_init::$71 + (byte) debug_print_init::j#2 -- pbuz1=pbuz2_plus_vbuz3 - lda j - clc - adc _71 - sta _72 - lda #0 - adc _71+1 - sta _72+1 - //SEG462 [257] *((byte*~) debug_print_init::$72) ← (byte) debug_print_init::col#0 -- _deref_pbuz1=vbuz2 - lda col - ldy #0 - sta (_72),y - //SEG463 [258] (byte*~) debug_print_init::$75 ← (const byte*) debug_print_init::at_cols#0+(byte/signed byte/word/signed word/dword/signed dword) 40*(byte/signed byte/word/signed word/dword/signed dword) 4 + (byte) debug_print_init::c#2 -- pbuz1=pbuc1_plus_vbuz2 - lda c - clc - adc #at_cols+$28*4 - adc #0 - sta _75+1 - //SEG464 [259] (byte*~) debug_print_init::$76 ← (byte*~) debug_print_init::$75 + (byte) debug_print_init::j#2 -- pbuz1=pbuz2_plus_vbuz3 - lda j - clc - adc _75 - sta _76 - lda #0 - adc _75+1 - sta _76+1 - //SEG465 [260] *((byte*~) debug_print_init::$76) ← (byte) debug_print_init::col#0 -- _deref_pbuz1=vbuz2 - lda col - ldy #0 - sta (_76),y - //SEG466 [261] (byte*~) debug_print_init::$79 ← (const byte*) debug_print_init::at_cols#0+(byte/signed byte/word/signed word/dword/signed dword) 40*(byte/signed byte/word/signed word/dword/signed dword) 5 + (byte) debug_print_init::c#2 -- pbuz1=pbuc1_plus_vbuz2 - lda c - clc - adc #at_cols+$28*5 - adc #0 - sta _79+1 - //SEG467 [262] (byte*~) debug_print_init::$80 ← (byte*~) debug_print_init::$79 + (byte) debug_print_init::j#2 -- pbuz1=pbuz2_plus_vbuz3 - lda j - clc - adc _79 - sta _80 - lda #0 - adc _79+1 - sta _80+1 - //SEG468 [263] *((byte*~) debug_print_init::$80) ← (byte) debug_print_init::col#0 -- _deref_pbuz1=vbuz2 - lda col - ldy #0 - sta (_80),y - //SEG469 [264] (byte*~) debug_print_init::$83 ← (const byte*) debug_print_init::at_cols#0+(byte/signed byte/word/signed word/dword/signed dword) 40*(byte/signed byte/word/signed word/dword/signed dword) 6 + (byte) debug_print_init::c#2 -- pbuz1=pbuc1_plus_vbuz2 - lda c - clc - adc #at_cols+$28*6 - adc #0 - sta _83+1 - //SEG470 [265] (byte*~) debug_print_init::$84 ← (byte*~) debug_print_init::$83 + (byte) debug_print_init::j#2 -- pbuz1=pbuz2_plus_vbuz3 - lda j - clc - adc _83 - sta _84 - lda #0 - adc _83+1 - sta _84+1 - //SEG471 [266] *((byte*~) debug_print_init::$84) ← (byte) debug_print_init::col#0 -- _deref_pbuz1=vbuz2 - lda col - ldy #0 - sta (_84),y - //SEG472 [267] (byte*~) debug_print_init::$87 ← (const byte*) debug_print_init::at_cols#0+(byte/signed byte/word/signed word/dword/signed dword) 40*(byte/signed byte/word/signed word/dword/signed dword) 7 + (byte) debug_print_init::c#2 -- pbuz1=pbuc1_plus_vbuz2 - lda c - clc - adc #at_cols+$28*7 - adc #0 - sta _87+1 - //SEG473 [268] (byte*~) debug_print_init::$88 ← (byte*~) debug_print_init::$87 + (byte) debug_print_init::j#2 -- pbuz1=pbuz2_plus_vbuz3 - lda j - clc - adc _87 - sta _88 - lda #0 - adc _87+1 - sta _88+1 - //SEG474 [269] *((byte*~) debug_print_init::$88) ← (byte) debug_print_init::col#0 -- _deref_pbuz1=vbuz2 - lda col - ldy #0 - sta (_88),y - //SEG475 [270] (byte*~) debug_print_init::$91 ← (const byte*) debug_print_init::at_cols#0+(byte/signed byte/word/signed word/dword/signed dword) 40*(byte/signed byte/word/signed word/dword/signed dword) 8 + (byte) debug_print_init::c#2 -- pbuz1=pbuc1_plus_vbuz2 - lda c - clc - adc #at_cols+$28*8 - adc #0 - sta _91+1 - //SEG476 [271] (byte*~) debug_print_init::$92 ← (byte*~) debug_print_init::$91 + (byte) debug_print_init::j#2 -- pbuz1=pbuz2_plus_vbuz3 - lda j - clc - adc _91 - sta _92 - lda #0 - adc _91+1 - sta _92+1 - //SEG477 [272] *((byte*~) debug_print_init::$92) ← (byte) debug_print_init::col#0 -- _deref_pbuz1=vbuz2 - lda col - ldy #0 - sta (_92),y - //SEG478 [273] (byte) debug_print_init::j#1 ← ++ (byte) debug_print_init::j#2 -- vbuz1=_inc_vbuz1 - inc j - //SEG479 [274] if((byte) debug_print_init::j#1!=(byte/signed byte/word/signed word/dword/signed dword) 4) goto debug_print_init::@2 -- vbuz1_neq_vbuc1_then_la1 - lda j - cmp #4 - bne b2_from_b2 - jmp b3 - //SEG480 debug_print_init::@3 - b3: - //SEG481 [275] (byte) debug_print_init::c#1 ← (byte) debug_print_init::c#2 + (byte/signed byte/word/signed word/dword/signed dword) 4 -- vbuz1=vbuz1_plus_vbuc1 - lda #4 - clc - adc c - sta c - //SEG482 [276] (byte) debug_print_init::i#1 ← ++ (byte) debug_print_init::i#2 -- vbuz1=_inc_vbuz1 - inc i - //SEG483 [277] if((byte) debug_print_init::i#1!=(byte/signed byte/word/signed word/dword/signed dword) 8) goto debug_print_init::@1 -- vbuz1_neq_vbuc1_then_la1 - lda i - cmp #8 - bne b1_from_b3 - jmp breturn - //SEG484 debug_print_init::@return - breturn: - //SEG485 [278] return - rts - str: .text "sx@" - str1: .text "sy@" - str2: .text "sz@" - str3: .text "x@" - str4: .text "y@" - str5: .text "z@" - str6: .text "xr@" - str7: .text "yr@" - str8: .text "zr@" - str9: .text "pp@" - str10: .text "xp@" - str11: .text "yp@" -} -//SEG486 print_str_at -print_str_at: { - .label at = $13 - .label str = $11 - //SEG487 [280] phi from print_str_at print_str_at::@2 to print_str_at::@1 [phi:print_str_at/print_str_at::@2->print_str_at::@1] - b1_from_print_str_at: - b1_from_b2: - //SEG488 [280] phi (byte*) print_str_at::at#13 = (byte*) print_str_at::at#15 [phi:print_str_at/print_str_at::@2->print_str_at::@1#0] -- register_copy - //SEG489 [280] phi (byte*) print_str_at::str#13 = (byte*) print_str_at::str#15 [phi:print_str_at/print_str_at::@2->print_str_at::@1#1] -- register_copy - jmp b1 - //SEG490 print_str_at::@1 - b1: - //SEG491 [281] if(*((byte*) print_str_at::str#13)!=(byte) '@') goto print_str_at::@2 -- _deref_pbuz1_neq_vbuc1_then_la1 - ldy #0 - lda (str),y - cmp #'@' - bne b2 - jmp breturn - //SEG492 print_str_at::@return - breturn: - //SEG493 [282] return - rts - //SEG494 print_str_at::@2 - b2: - //SEG495 [283] *((byte*) print_str_at::at#13) ← *((byte*) print_str_at::str#13) -- _deref_pbuz1=_deref_pbuz2 - ldy #0 - lda (str),y - ldy #0 - sta (at),y - //SEG496 [284] (byte*) print_str_at::at#0 ← ++ (byte*) print_str_at::at#13 -- pbuz1=_inc_pbuz1 - inc at - bne !+ - inc at+1 - !: - //SEG497 [285] (byte*) print_str_at::str#0 ← ++ (byte*) print_str_at::str#13 -- pbuz1=_inc_pbuz1 - inc str - bne !+ - inc str+1 - !: - jmp b1_from_b2 -} -//SEG498 print_cls -print_cls: { - .label sc = $15 - //SEG499 [287] phi from print_cls to print_cls::@1 [phi:print_cls->print_cls::@1] - b1_from_print_cls: - //SEG500 [287] phi (byte*) print_cls::sc#2 = (const byte*) print_screen#0 [phi:print_cls->print_cls::@1#0] -- pbuz1=pbuc1 - lda #print_screen - sta sc+1 - jmp b1 - //SEG501 [287] phi from print_cls::@1 to print_cls::@1 [phi:print_cls::@1->print_cls::@1] - b1_from_b1: - //SEG502 [287] phi (byte*) print_cls::sc#2 = (byte*) print_cls::sc#1 [phi:print_cls::@1->print_cls::@1#0] -- register_copy - jmp b1 - //SEG503 print_cls::@1 - b1: - //SEG504 [288] *((byte*) print_cls::sc#2) ← (byte) ' ' -- _deref_pbuz1=vbuc1 - lda #' ' - ldy #0 - sta (sc),y - //SEG505 [289] (byte*) print_cls::sc#1 ← ++ (byte*) print_cls::sc#2 -- pbuz1=_inc_pbuz1 - inc sc - bne !+ - inc sc+1 - !: - //SEG506 [290] if((byte*) print_cls::sc#1!=(const byte*) print_screen#0+(word/signed word/dword/signed dword) 1000) goto print_cls::@1 -- pbuz1_neq_pbuc1_then_la1 - lda sc+1 - cmp #>print_screen+$3e8 - bne b1_from_b1 - lda sc - cmp #sprites_init::@1] + //SEG134 [104] phi from sprites_init to sprites_init::@1 [phi:sprites_init->sprites_init::@1] b1_from_sprites_init: - //SEG512 [293] phi (byte) sprites_init::i#2 = (byte/signed byte/word/signed word/dword/signed dword) 0 [phi:sprites_init->sprites_init::@1#0] -- vbuz1=vbuc1 + //SEG135 [104] phi (byte) sprites_init::i#2 = (byte/signed byte/word/signed word/dword/signed dword) 0 [phi:sprites_init->sprites_init::@1#0] -- vbuz1=vbuc1 lda #0 sta i jmp b1 - //SEG513 [293] phi from sprites_init::@1 to sprites_init::@1 [phi:sprites_init::@1->sprites_init::@1] + //SEG136 [104] phi from sprites_init::@1 to sprites_init::@1 [phi:sprites_init::@1->sprites_init::@1] b1_from_b1: - //SEG514 [293] phi (byte) sprites_init::i#2 = (byte) sprites_init::i#1 [phi:sprites_init::@1->sprites_init::@1#0] -- register_copy + //SEG137 [104] phi (byte) sprites_init::i#2 = (byte) sprites_init::i#1 [phi:sprites_init::@1->sprites_init::@1#0] -- register_copy jmp b1 - //SEG515 sprites_init::@1 + //SEG138 sprites_init::@1 b1: - //SEG516 [294] *((const byte*) sprites_init::sprites_ptr#0 + (byte) sprites_init::i#2) ← ((byte))(const byte*) SPRITE#0/(byte/signed byte/word/signed word/dword/signed dword) 64 -- pbuc1_derefidx_vbuz1=vbuc2 + //SEG139 [105] *((const byte*) sprites_init::sprites_ptr#0 + (byte) sprites_init::i#2) ← ((byte))(const byte*) SPRITE#0/(byte/signed byte/word/signed word/dword/signed dword) 64 -- pbuc1_derefidx_vbuz1=vbuc2 ldy i lda #$ff&SPRITE/$40 sta sprites_ptr,y - //SEG517 [295] (byte/signed word/word/dword/signed dword~) sprites_init::$3 ← (byte/signed byte/word/signed word/dword/signed dword) 8 + (byte) sprites_init::i#2 -- vbuz1=vbuc1_plus_vbuz2 - lda #8 - clc - adc i - sta _3 - //SEG518 [296] *((const byte*) SPRITES_COLS#0 + (byte) sprites_init::i#2) ← (byte/signed word/word/dword/signed dword~) sprites_init::$3 -- pbuc1_derefidx_vbuz1=vbuz2 - lda _3 + //SEG140 [106] *((const byte*) SPRITES_COLS#0 + (byte) sprites_init::i#2) ← (const byte) GREEN#0 -- pbuc1_derefidx_vbuz1=vbuc2 ldy i + lda #GREEN sta SPRITES_COLS,y - //SEG519 [297] (byte) sprites_init::i#1 ← ++ (byte) sprites_init::i#2 -- vbuz1=_inc_vbuz1 + //SEG141 [107] (byte) sprites_init::i#1 ← ++ (byte) sprites_init::i#2 -- vbuz1=_inc_vbuz1 inc i - //SEG520 [298] if((byte) sprites_init::i#1!=(byte/signed byte/word/signed word/dword/signed dword) 8) goto sprites_init::@1 -- vbuz1_neq_vbuc1_then_la1 + //SEG142 [108] if((byte) sprites_init::i#1!=(byte/signed byte/word/signed word/dword/signed dword) 8) goto sprites_init::@1 -- vbuz1_neq_vbuc1_then_la1 lda i cmp #8 bne b1_from_b1 jmp breturn - //SEG521 sprites_init::@return + //SEG143 sprites_init::@return breturn: - //SEG522 [299] return + //SEG144 [109] return rts } - print_hextab: .text "0123456789abcdef" + zs: .byte $34, $34, $34, $34, $34, $34, $34, $34 xrs: .fill 8, 0 yrs: .fill 8, 0 zrs: .fill 8, 0 @@ -6767,9 +2701,8 @@ sprites_init: { xps: .fill 8, 0 yps: .fill 8, 0 rotation_matrix: .fill 9, 0 - xs: .byte -$5f, $5f, 0, 0, 0, 0, 0, $3f - ys: .byte 0, 0, -$5f, $5f, 0, 0, 0, 0 - zs: .byte 0, 0, 0, 0, -$5f, $5f, -0, 0 + xs: .byte -$34, -$34, -$34, 0, 0, $34, $34, $34 + ys: .byte -$34, 0, $34, -$34, $34, -$34, 0, $34 .pc = mulf_sqr1 "Inline" .for(var i=0;i<$200;i++) { .if(i<=159) { .byte round((i*i)/256) } @@ -6874,622 +2807,395 @@ sprites_init: { REGISTER UPLIFT POTENTIAL REGISTERS Statement [15] *((const word*) psp1#0) ← ((word))(const byte*) mulf_sqr1#0 [ ] ( main:11 [ ] ) always clobbers reg byte a Statement [16] *((const word*) psp2#0) ← ((word))(const byte*) mulf_sqr2#0 [ ] ( main:11 [ ] ) always clobbers reg byte a -Statement [23] if(*((const byte*) RASTER#0)!=(byte/word/signed word/dword/signed dword) 255) goto anim::@4 [ sx#10 sy#10 sz#10 ] ( main:11::anim:19 [ sx#10 sy#10 sz#10 ] ) always clobbers reg byte a +Statement [21] if(*((const byte*) RASTER#0)!=(byte/word/signed word/dword/signed dword) 255) goto anim::@4 [ sx#10 sy#10 ] ( main:11::anim:17 [ sx#10 sy#10 ] ) always clobbers reg byte a Removing always clobbered register reg byte a as potential for zp ZP_BYTE:2 [ sx#10 sx#3 ] Removing always clobbered register reg byte a as potential for zp ZP_BYTE:3 [ sy#10 sy#3 ] -Removing always clobbered register reg byte a as potential for zp ZP_BYTE:4 [ sz#10 sz#3 ] -Statement [37] *((const signed byte[8]) xrs#0 + (byte) anim::i#2) ← *((const signed byte*) xr#0) [ sx#10 sy#10 sz#10 anim::i#2 ] ( main:11::anim:19 [ sx#10 sy#10 sz#10 anim::i#2 ] ) always clobbers reg byte a -Removing always clobbered register reg byte a as potential for zp ZP_BYTE:5 [ anim::i#2 anim::i#1 ] -Statement [38] *((const signed byte[8]) yrs#0 + (byte) anim::i#2) ← *((const signed byte*) yr#0) [ sx#10 sy#10 sz#10 anim::i#2 ] ( main:11::anim:19 [ sx#10 sy#10 sz#10 anim::i#2 ] ) always clobbers reg byte a -Statement [39] *((const signed byte[8]) zrs#0 + (byte) anim::i#2) ← *((const signed byte*) zr#0) [ sx#10 sy#10 sz#10 anim::i#2 ] ( main:11::anim:19 [ sx#10 sy#10 sz#10 anim::i#2 ] ) always clobbers reg byte a -Statement [40] *((const signed byte[8]) pps#0 + (byte) anim::i#2) ← *((const signed byte*) pp#0) [ sx#10 sy#10 sz#10 anim::i#2 ] ( main:11::anim:19 [ sx#10 sy#10 sz#10 anim::i#2 ] ) always clobbers reg byte a -Statement [41] *((const signed byte[8]) xps#0 + (byte) anim::i#2) ← *((const signed byte*) xp#0) [ sx#10 sy#10 sz#10 anim::i#2 ] ( main:11::anim:19 [ sx#10 sy#10 sz#10 anim::i#2 ] ) always clobbers reg byte a -Statement [42] *((const signed byte[8]) yps#0 + (byte) anim::i#2) ← *((const signed byte*) yp#0) [ sx#10 sy#10 sz#10 anim::i#2 ] ( main:11::anim:19 [ sx#10 sy#10 sz#10 anim::i#2 ] ) always clobbers reg byte a -Statement [43] (byte) anim::i2#0 ← (byte) anim::i#2 << (byte/signed byte/word/signed word/dword/signed dword) 1 [ sx#10 sy#10 sz#10 anim::i#2 anim::i2#0 ] ( main:11::anim:19 [ sx#10 sy#10 sz#10 anim::i#2 anim::i2#0 ] ) always clobbers reg byte a -Statement [44] (byte/word/signed word/dword/signed dword~) anim::$6 ← (byte/word/signed word/dword/signed dword) 128 + (byte)*((const signed byte*) xr#0) [ sx#10 sy#10 sz#10 anim::i#2 anim::i2#0 anim::$6 ] ( main:11::anim:19 [ sx#10 sy#10 sz#10 anim::i#2 anim::i2#0 anim::$6 ] ) always clobbers reg byte a -Removing always clobbered register reg byte a as potential for zp ZP_BYTE:30 [ anim::i2#0 ] -Statement [46] (byte/word/signed word/dword/signed dword~) anim::$8 ← (byte/word/signed word/dword/signed dword) 128 + (byte)*((const signed byte*) yr#0) [ sx#10 sy#10 sz#10 anim::i#2 anim::i2#0 anim::$8 ] ( main:11::anim:19 [ sx#10 sy#10 sz#10 anim::i#2 anim::i2#0 anim::$8 ] ) always clobbers reg byte a -Statement [50] *((const byte*) BORDERCOL#0) ← (const byte) LIGHT_GREY#0 [ sx#10 sy#10 sz#10 ] ( main:11::anim:19 [ sx#10 sy#10 sz#10 ] ) always clobbers reg byte a -Statement [52] *((const byte*) BORDERCOL#0) ← (const byte) LIGHT_BLUE#0 [ sx#10 sy#10 sz#10 ] ( main:11::anim:19 [ sx#10 sy#10 sz#10 ] ) always clobbers reg byte a -Statement [81] (byte*) print_sbyte_at::at#15 ← (const byte*) debug_print::at_line#0 + (byte) debug_print::c#2 [ sx#10 sy#10 sz#10 debug_print::c#2 debug_print::i#2 print_sbyte_at::at#15 ] ( main:11::anim:19::debug_print:51 [ sx#10 sy#10 sz#10 debug_print::c#2 debug_print::i#2 print_sbyte_at::at#15 ] ) always clobbers reg byte a -Removing always clobbered register reg byte a as potential for zp ZP_BYTE:6 [ debug_print::c#2 debug_print::c#1 ] -Removing always clobbered register reg byte a as potential for zp ZP_BYTE:7 [ debug_print::i#2 debug_print::i#1 ] -Statement [84] (byte*) print_sbyte_at::at#16 ← (const byte*) debug_print::at_line#0+(byte/signed byte/word/signed word/dword/signed dword) 40*(byte/signed byte/word/signed word/dword/signed dword) 1 + (byte) debug_print::c#2 [ sx#10 sy#10 sz#10 debug_print::c#2 debug_print::i#2 print_sbyte_at::at#16 ] ( main:11::anim:19::debug_print:51 [ sx#10 sy#10 sz#10 debug_print::c#2 debug_print::i#2 print_sbyte_at::at#16 ] ) always clobbers reg byte a -Statement [87] (byte*) print_sbyte_at::at#17 ← (const byte*) debug_print::at_line#0+(byte/signed byte/word/signed word/dword/signed dword) 40*(byte/signed byte/word/signed word/dword/signed dword) 2 + (byte) debug_print::c#2 [ sx#10 sy#10 sz#10 debug_print::c#2 debug_print::i#2 print_sbyte_at::at#17 ] ( main:11::anim:19::debug_print:51 [ sx#10 sy#10 sz#10 debug_print::c#2 debug_print::i#2 print_sbyte_at::at#17 ] ) always clobbers reg byte a -Statement [90] (byte*) print_sbyte_at::at#18 ← (const byte*) debug_print::at_line#0+(byte/signed byte/word/signed word/dword/signed dword) 40*(byte/signed byte/word/signed word/dword/signed dword) 3 + (byte) debug_print::c#2 [ sx#10 sy#10 sz#10 debug_print::c#2 debug_print::i#2 print_sbyte_at::at#18 ] ( main:11::anim:19::debug_print:51 [ sx#10 sy#10 sz#10 debug_print::c#2 debug_print::i#2 print_sbyte_at::at#18 ] ) always clobbers reg byte a -Statement [93] (byte*) print_sbyte_at::at#19 ← (const byte*) debug_print::at_line#0+(byte/signed byte/word/signed word/dword/signed dword) 40*(byte/signed byte/word/signed word/dword/signed dword) 4 + (byte) debug_print::c#2 [ sx#10 sy#10 sz#10 debug_print::c#2 debug_print::i#2 print_sbyte_at::at#19 ] ( main:11::anim:19::debug_print:51 [ sx#10 sy#10 sz#10 debug_print::c#2 debug_print::i#2 print_sbyte_at::at#19 ] ) always clobbers reg byte a -Statement [96] (byte*) print_sbyte_at::at#20 ← (const byte*) debug_print::at_line#0+(byte/signed byte/word/signed word/dword/signed dword) 40*(byte/signed byte/word/signed word/dword/signed dword) 5 + (byte) debug_print::c#2 [ sx#10 sy#10 sz#10 debug_print::c#2 debug_print::i#2 print_sbyte_at::at#20 ] ( main:11::anim:19::debug_print:51 [ sx#10 sy#10 sz#10 debug_print::c#2 debug_print::i#2 print_sbyte_at::at#20 ] ) always clobbers reg byte a -Statement [99] (byte) debug_print::c#1 ← (byte) debug_print::c#2 + (byte/signed byte/word/signed word/dword/signed dword) 4 [ sx#10 sy#10 sz#10 debug_print::i#2 debug_print::c#1 ] ( main:11::anim:19::debug_print:51 [ sx#10 sy#10 sz#10 debug_print::i#2 debug_print::c#1 ] ) always clobbers reg byte a -Statement [105] (byte*) print_char_at::at#1 ← (byte*) print_sbyte_at::at#21 [ print_sbyte_at::b#22 print_sbyte_at::at#21 print_char_at::at#1 ] ( main:11::anim:19::debug_print:51::print_sbyte_at:57 [ sx#10 sy#10 sz#10 print_sbyte_at::b#22 print_sbyte_at::at#21 print_char_at::at#1 ] main:11::anim:19::debug_print:51::print_sbyte_at:59 [ sx#10 sy#10 sz#10 print_sbyte_at::b#22 print_sbyte_at::at#21 print_char_at::at#1 ] main:11::anim:19::debug_print:51::print_sbyte_at:61 [ sx#10 sy#10 sz#10 print_sbyte_at::b#22 print_sbyte_at::at#21 print_char_at::at#1 ] main:11::anim:19::debug_print:51::print_sbyte_at:63 [ sx#10 sy#10 sz#10 print_sbyte_at::b#22 print_sbyte_at::at#21 print_char_at::at#1 ] main:11::anim:19::debug_print:51::print_sbyte_at:65 [ sx#10 sy#10 sz#10 print_sbyte_at::b#22 print_sbyte_at::at#21 print_char_at::at#1 ] main:11::anim:19::debug_print:51::print_sbyte_at:67 [ sx#10 sy#10 sz#10 print_sbyte_at::b#22 print_sbyte_at::at#21 print_char_at::at#1 ] main:11::anim:19::debug_print:51::print_sbyte_at:69 [ sx#10 sy#10 sz#10 print_sbyte_at::b#22 print_sbyte_at::at#21 print_char_at::at#1 ] main:11::anim:19::debug_print:51::print_sbyte_at:71 [ sx#10 sy#10 sz#10 print_sbyte_at::b#22 print_sbyte_at::at#21 print_char_at::at#1 ] main:11::anim:19::debug_print:51::print_sbyte_at:73 [ sx#10 sy#10 sz#10 print_sbyte_at::b#22 print_sbyte_at::at#21 print_char_at::at#1 ] main:11::anim:19::debug_print:51::print_sbyte_at:75 [ sx#10 sy#10 sz#10 print_sbyte_at::b#22 print_sbyte_at::at#21 print_char_at::at#1 ] main:11::anim:19::debug_print:51::print_sbyte_at:77 [ sx#10 sy#10 sz#10 print_sbyte_at::b#22 print_sbyte_at::at#21 print_char_at::at#1 ] main:11::anim:19::debug_print:51::print_sbyte_at:79 [ sx#10 sy#10 sz#10 print_sbyte_at::b#22 print_sbyte_at::at#21 print_char_at::at#1 ] main:11::anim:19::debug_print:51::print_sbyte_at:83 [ sx#10 sy#10 sz#10 debug_print::c#2 debug_print::i#2 print_sbyte_at::b#22 print_sbyte_at::at#21 print_char_at::at#1 ] main:11::anim:19::debug_print:51::print_sbyte_at:86 [ sx#10 sy#10 sz#10 debug_print::c#2 debug_print::i#2 print_sbyte_at::b#22 print_sbyte_at::at#21 print_char_at::at#1 ] main:11::anim:19::debug_print:51::print_sbyte_at:89 [ sx#10 sy#10 sz#10 debug_print::c#2 debug_print::i#2 print_sbyte_at::b#22 print_sbyte_at::at#21 print_char_at::at#1 ] main:11::anim:19::debug_print:51::print_sbyte_at:92 [ sx#10 sy#10 sz#10 debug_print::c#2 debug_print::i#2 print_sbyte_at::b#22 print_sbyte_at::at#21 print_char_at::at#1 ] main:11::anim:19::debug_print:51::print_sbyte_at:95 [ sx#10 sy#10 sz#10 debug_print::c#2 debug_print::i#2 print_sbyte_at::b#22 print_sbyte_at::at#21 print_char_at::at#1 ] main:11::anim:19::debug_print:51::print_sbyte_at:98 [ sx#10 sy#10 sz#10 debug_print::c#2 debug_print::i#2 print_sbyte_at::b#22 print_sbyte_at::at#21 print_char_at::at#1 ] main:11::debug_print_init:17::print_sbyte_at:237 [ debug_print_init::c#2 debug_print_init::i#2 print_sbyte_at::b#22 print_sbyte_at::at#21 print_char_at::at#1 ] main:11::debug_print_init:17::print_sbyte_at:240 [ debug_print_init::c#2 debug_print_init::i#2 print_sbyte_at::b#22 print_sbyte_at::at#21 print_char_at::at#1 ] main:11::debug_print_init:17::print_sbyte_at:243 [ debug_print_init::c#2 debug_print_init::i#2 print_sbyte_at::b#22 print_sbyte_at::at#21 print_char_at::at#1 ] ) always clobbers reg byte a -Removing always clobbered register reg byte a as potential for zp ZP_BYTE:10 [ print_sbyte_at::b#24 print_sbyte_at::b#0 print_sbyte_at::b#22 print_sbyte_at::b#4 print_sbyte_at::b#16 print_sbyte_at::b#12 print_sbyte_at::b#13 print_sbyte_at::b#14 print_sbyte_at::b#15 print_sbyte_at::b#17 print_sbyte_at::b#18 print_sbyte_at::b#19 print_sbyte_at::b#20 print_sbyte_at::b#21 print_sbyte_at::b#5 print_sbyte_at::b#6 print_sbyte_at::b#7 print_sbyte_at::b#8 print_sbyte_at::b#9 print_sbyte_at::b#10 print_sbyte_at::b#11 print_sbyte_at::b#1 print_sbyte_at::b#2 print_sbyte_at::b#3 ] -Removing always clobbered register reg byte a as potential for zp ZP_BYTE:14 [ debug_print_init::c#2 debug_print_init::c#1 ] -Removing always clobbered register reg byte a as potential for zp ZP_BYTE:15 [ debug_print_init::i#2 debug_print_init::i#1 ] -Statement [108] (byte*) print_byte_at::at#0 ← (byte*) print_sbyte_at::at#21 + (byte/signed byte/word/signed word/dword/signed dword) 1 [ print_sbyte_at::b#24 print_byte_at::at#0 ] ( main:11::anim:19::debug_print:51::print_sbyte_at:57 [ sx#10 sy#10 sz#10 print_sbyte_at::b#24 print_byte_at::at#0 ] main:11::anim:19::debug_print:51::print_sbyte_at:59 [ sx#10 sy#10 sz#10 print_sbyte_at::b#24 print_byte_at::at#0 ] main:11::anim:19::debug_print:51::print_sbyte_at:61 [ sx#10 sy#10 sz#10 print_sbyte_at::b#24 print_byte_at::at#0 ] main:11::anim:19::debug_print:51::print_sbyte_at:63 [ sx#10 sy#10 sz#10 print_sbyte_at::b#24 print_byte_at::at#0 ] main:11::anim:19::debug_print:51::print_sbyte_at:65 [ sx#10 sy#10 sz#10 print_sbyte_at::b#24 print_byte_at::at#0 ] main:11::anim:19::debug_print:51::print_sbyte_at:67 [ sx#10 sy#10 sz#10 print_sbyte_at::b#24 print_byte_at::at#0 ] main:11::anim:19::debug_print:51::print_sbyte_at:69 [ sx#10 sy#10 sz#10 print_sbyte_at::b#24 print_byte_at::at#0 ] main:11::anim:19::debug_print:51::print_sbyte_at:71 [ sx#10 sy#10 sz#10 print_sbyte_at::b#24 print_byte_at::at#0 ] main:11::anim:19::debug_print:51::print_sbyte_at:73 [ sx#10 sy#10 sz#10 print_sbyte_at::b#24 print_byte_at::at#0 ] main:11::anim:19::debug_print:51::print_sbyte_at:75 [ sx#10 sy#10 sz#10 print_sbyte_at::b#24 print_byte_at::at#0 ] main:11::anim:19::debug_print:51::print_sbyte_at:77 [ sx#10 sy#10 sz#10 print_sbyte_at::b#24 print_byte_at::at#0 ] main:11::anim:19::debug_print:51::print_sbyte_at:79 [ sx#10 sy#10 sz#10 print_sbyte_at::b#24 print_byte_at::at#0 ] main:11::anim:19::debug_print:51::print_sbyte_at:83 [ sx#10 sy#10 sz#10 debug_print::c#2 debug_print::i#2 print_sbyte_at::b#24 print_byte_at::at#0 ] main:11::anim:19::debug_print:51::print_sbyte_at:86 [ sx#10 sy#10 sz#10 debug_print::c#2 debug_print::i#2 print_sbyte_at::b#24 print_byte_at::at#0 ] main:11::anim:19::debug_print:51::print_sbyte_at:89 [ sx#10 sy#10 sz#10 debug_print::c#2 debug_print::i#2 print_sbyte_at::b#24 print_byte_at::at#0 ] main:11::anim:19::debug_print:51::print_sbyte_at:92 [ sx#10 sy#10 sz#10 debug_print::c#2 debug_print::i#2 print_sbyte_at::b#24 print_byte_at::at#0 ] main:11::anim:19::debug_print:51::print_sbyte_at:95 [ sx#10 sy#10 sz#10 debug_print::c#2 debug_print::i#2 print_sbyte_at::b#24 print_byte_at::at#0 ] main:11::anim:19::debug_print:51::print_sbyte_at:98 [ sx#10 sy#10 sz#10 debug_print::c#2 debug_print::i#2 print_sbyte_at::b#24 print_byte_at::at#0 ] main:11::debug_print_init:17::print_sbyte_at:237 [ debug_print_init::c#2 debug_print_init::i#2 print_sbyte_at::b#24 print_byte_at::at#0 ] main:11::debug_print_init:17::print_sbyte_at:240 [ debug_print_init::c#2 debug_print_init::i#2 print_sbyte_at::b#24 print_byte_at::at#0 ] main:11::debug_print_init:17::print_sbyte_at:243 [ debug_print_init::c#2 debug_print_init::i#2 print_sbyte_at::b#24 print_byte_at::at#0 ] ) always clobbers reg byte a -Statement [111] (byte*) print_char_at::at#0 ← (byte*) print_sbyte_at::at#21 [ print_sbyte_at::b#22 print_sbyte_at::at#21 print_char_at::at#0 ] ( main:11::anim:19::debug_print:51::print_sbyte_at:57 [ sx#10 sy#10 sz#10 print_sbyte_at::b#22 print_sbyte_at::at#21 print_char_at::at#0 ] main:11::anim:19::debug_print:51::print_sbyte_at:59 [ sx#10 sy#10 sz#10 print_sbyte_at::b#22 print_sbyte_at::at#21 print_char_at::at#0 ] main:11::anim:19::debug_print:51::print_sbyte_at:61 [ sx#10 sy#10 sz#10 print_sbyte_at::b#22 print_sbyte_at::at#21 print_char_at::at#0 ] main:11::anim:19::debug_print:51::print_sbyte_at:63 [ sx#10 sy#10 sz#10 print_sbyte_at::b#22 print_sbyte_at::at#21 print_char_at::at#0 ] main:11::anim:19::debug_print:51::print_sbyte_at:65 [ sx#10 sy#10 sz#10 print_sbyte_at::b#22 print_sbyte_at::at#21 print_char_at::at#0 ] main:11::anim:19::debug_print:51::print_sbyte_at:67 [ sx#10 sy#10 sz#10 print_sbyte_at::b#22 print_sbyte_at::at#21 print_char_at::at#0 ] main:11::anim:19::debug_print:51::print_sbyte_at:69 [ sx#10 sy#10 sz#10 print_sbyte_at::b#22 print_sbyte_at::at#21 print_char_at::at#0 ] main:11::anim:19::debug_print:51::print_sbyte_at:71 [ sx#10 sy#10 sz#10 print_sbyte_at::b#22 print_sbyte_at::at#21 print_char_at::at#0 ] main:11::anim:19::debug_print:51::print_sbyte_at:73 [ sx#10 sy#10 sz#10 print_sbyte_at::b#22 print_sbyte_at::at#21 print_char_at::at#0 ] main:11::anim:19::debug_print:51::print_sbyte_at:75 [ sx#10 sy#10 sz#10 print_sbyte_at::b#22 print_sbyte_at::at#21 print_char_at::at#0 ] main:11::anim:19::debug_print:51::print_sbyte_at:77 [ sx#10 sy#10 sz#10 print_sbyte_at::b#22 print_sbyte_at::at#21 print_char_at::at#0 ] main:11::anim:19::debug_print:51::print_sbyte_at:79 [ sx#10 sy#10 sz#10 print_sbyte_at::b#22 print_sbyte_at::at#21 print_char_at::at#0 ] main:11::anim:19::debug_print:51::print_sbyte_at:83 [ sx#10 sy#10 sz#10 debug_print::c#2 debug_print::i#2 print_sbyte_at::b#22 print_sbyte_at::at#21 print_char_at::at#0 ] main:11::anim:19::debug_print:51::print_sbyte_at:86 [ sx#10 sy#10 sz#10 debug_print::c#2 debug_print::i#2 print_sbyte_at::b#22 print_sbyte_at::at#21 print_char_at::at#0 ] main:11::anim:19::debug_print:51::print_sbyte_at:89 [ sx#10 sy#10 sz#10 debug_print::c#2 debug_print::i#2 print_sbyte_at::b#22 print_sbyte_at::at#21 print_char_at::at#0 ] main:11::anim:19::debug_print:51::print_sbyte_at:92 [ sx#10 sy#10 sz#10 debug_print::c#2 debug_print::i#2 print_sbyte_at::b#22 print_sbyte_at::at#21 print_char_at::at#0 ] main:11::anim:19::debug_print:51::print_sbyte_at:95 [ sx#10 sy#10 sz#10 debug_print::c#2 debug_print::i#2 print_sbyte_at::b#22 print_sbyte_at::at#21 print_char_at::at#0 ] main:11::anim:19::debug_print:51::print_sbyte_at:98 [ sx#10 sy#10 sz#10 debug_print::c#2 debug_print::i#2 print_sbyte_at::b#22 print_sbyte_at::at#21 print_char_at::at#0 ] main:11::debug_print_init:17::print_sbyte_at:237 [ debug_print_init::c#2 debug_print_init::i#2 print_sbyte_at::b#22 print_sbyte_at::at#21 print_char_at::at#0 ] main:11::debug_print_init:17::print_sbyte_at:240 [ debug_print_init::c#2 debug_print_init::i#2 print_sbyte_at::b#22 print_sbyte_at::at#21 print_char_at::at#0 ] main:11::debug_print_init:17::print_sbyte_at:243 [ debug_print_init::c#2 debug_print_init::i#2 print_sbyte_at::b#22 print_sbyte_at::at#21 print_char_at::at#0 ] ) always clobbers reg byte a -Statement [113] (signed byte) print_sbyte_at::b#0 ← - (signed byte) print_sbyte_at::b#22 [ print_sbyte_at::at#21 print_sbyte_at::b#0 ] ( main:11::anim:19::debug_print:51::print_sbyte_at:57 [ sx#10 sy#10 sz#10 print_sbyte_at::at#21 print_sbyte_at::b#0 ] main:11::anim:19::debug_print:51::print_sbyte_at:59 [ sx#10 sy#10 sz#10 print_sbyte_at::at#21 print_sbyte_at::b#0 ] main:11::anim:19::debug_print:51::print_sbyte_at:61 [ sx#10 sy#10 sz#10 print_sbyte_at::at#21 print_sbyte_at::b#0 ] main:11::anim:19::debug_print:51::print_sbyte_at:63 [ sx#10 sy#10 sz#10 print_sbyte_at::at#21 print_sbyte_at::b#0 ] main:11::anim:19::debug_print:51::print_sbyte_at:65 [ sx#10 sy#10 sz#10 print_sbyte_at::at#21 print_sbyte_at::b#0 ] main:11::anim:19::debug_print:51::print_sbyte_at:67 [ sx#10 sy#10 sz#10 print_sbyte_at::at#21 print_sbyte_at::b#0 ] main:11::anim:19::debug_print:51::print_sbyte_at:69 [ sx#10 sy#10 sz#10 print_sbyte_at::at#21 print_sbyte_at::b#0 ] main:11::anim:19::debug_print:51::print_sbyte_at:71 [ sx#10 sy#10 sz#10 print_sbyte_at::at#21 print_sbyte_at::b#0 ] main:11::anim:19::debug_print:51::print_sbyte_at:73 [ sx#10 sy#10 sz#10 print_sbyte_at::at#21 print_sbyte_at::b#0 ] main:11::anim:19::debug_print:51::print_sbyte_at:75 [ sx#10 sy#10 sz#10 print_sbyte_at::at#21 print_sbyte_at::b#0 ] main:11::anim:19::debug_print:51::print_sbyte_at:77 [ sx#10 sy#10 sz#10 print_sbyte_at::at#21 print_sbyte_at::b#0 ] main:11::anim:19::debug_print:51::print_sbyte_at:79 [ sx#10 sy#10 sz#10 print_sbyte_at::at#21 print_sbyte_at::b#0 ] main:11::anim:19::debug_print:51::print_sbyte_at:83 [ sx#10 sy#10 sz#10 debug_print::c#2 debug_print::i#2 print_sbyte_at::at#21 print_sbyte_at::b#0 ] main:11::anim:19::debug_print:51::print_sbyte_at:86 [ sx#10 sy#10 sz#10 debug_print::c#2 debug_print::i#2 print_sbyte_at::at#21 print_sbyte_at::b#0 ] main:11::anim:19::debug_print:51::print_sbyte_at:89 [ sx#10 sy#10 sz#10 debug_print::c#2 debug_print::i#2 print_sbyte_at::at#21 print_sbyte_at::b#0 ] main:11::anim:19::debug_print:51::print_sbyte_at:92 [ sx#10 sy#10 sz#10 debug_print::c#2 debug_print::i#2 print_sbyte_at::at#21 print_sbyte_at::b#0 ] main:11::anim:19::debug_print:51::print_sbyte_at:95 [ sx#10 sy#10 sz#10 debug_print::c#2 debug_print::i#2 print_sbyte_at::at#21 print_sbyte_at::b#0 ] main:11::anim:19::debug_print:51::print_sbyte_at:98 [ sx#10 sy#10 sz#10 debug_print::c#2 debug_print::i#2 print_sbyte_at::at#21 print_sbyte_at::b#0 ] main:11::debug_print_init:17::print_sbyte_at:237 [ debug_print_init::c#2 debug_print_init::i#2 print_sbyte_at::at#21 print_sbyte_at::b#0 ] main:11::debug_print_init:17::print_sbyte_at:240 [ debug_print_init::c#2 debug_print_init::i#2 print_sbyte_at::at#21 print_sbyte_at::b#0 ] main:11::debug_print_init:17::print_sbyte_at:243 [ debug_print_init::c#2 debug_print_init::i#2 print_sbyte_at::at#21 print_sbyte_at::b#0 ] ) always clobbers reg byte a -Statement [115] *((byte*) print_char_at::at#4) ← (byte) print_char_at::ch#4 [ ] ( main:11::anim:19::debug_print:51::print_sbyte_at:57::print_char_at:106 [ sx#10 sy#10 sz#10 print_sbyte_at::b#22 print_sbyte_at::at#21 ] main:11::anim:19::debug_print:51::print_sbyte_at:59::print_char_at:106 [ sx#10 sy#10 sz#10 print_sbyte_at::b#22 print_sbyte_at::at#21 ] main:11::anim:19::debug_print:51::print_sbyte_at:61::print_char_at:106 [ sx#10 sy#10 sz#10 print_sbyte_at::b#22 print_sbyte_at::at#21 ] main:11::anim:19::debug_print:51::print_sbyte_at:63::print_char_at:106 [ sx#10 sy#10 sz#10 print_sbyte_at::b#22 print_sbyte_at::at#21 ] main:11::anim:19::debug_print:51::print_sbyte_at:65::print_char_at:106 [ sx#10 sy#10 sz#10 print_sbyte_at::b#22 print_sbyte_at::at#21 ] main:11::anim:19::debug_print:51::print_sbyte_at:67::print_char_at:106 [ sx#10 sy#10 sz#10 print_sbyte_at::b#22 print_sbyte_at::at#21 ] main:11::anim:19::debug_print:51::print_sbyte_at:69::print_char_at:106 [ sx#10 sy#10 sz#10 print_sbyte_at::b#22 print_sbyte_at::at#21 ] main:11::anim:19::debug_print:51::print_sbyte_at:71::print_char_at:106 [ sx#10 sy#10 sz#10 print_sbyte_at::b#22 print_sbyte_at::at#21 ] main:11::anim:19::debug_print:51::print_sbyte_at:73::print_char_at:106 [ sx#10 sy#10 sz#10 print_sbyte_at::b#22 print_sbyte_at::at#21 ] main:11::anim:19::debug_print:51::print_sbyte_at:75::print_char_at:106 [ sx#10 sy#10 sz#10 print_sbyte_at::b#22 print_sbyte_at::at#21 ] main:11::anim:19::debug_print:51::print_sbyte_at:77::print_char_at:106 [ sx#10 sy#10 sz#10 print_sbyte_at::b#22 print_sbyte_at::at#21 ] main:11::anim:19::debug_print:51::print_sbyte_at:79::print_char_at:106 [ sx#10 sy#10 sz#10 print_sbyte_at::b#22 print_sbyte_at::at#21 ] main:11::anim:19::debug_print:51::print_sbyte_at:83::print_char_at:106 [ sx#10 sy#10 sz#10 debug_print::c#2 debug_print::i#2 print_sbyte_at::b#22 print_sbyte_at::at#21 ] main:11::anim:19::debug_print:51::print_sbyte_at:86::print_char_at:106 [ sx#10 sy#10 sz#10 debug_print::c#2 debug_print::i#2 print_sbyte_at::b#22 print_sbyte_at::at#21 ] main:11::anim:19::debug_print:51::print_sbyte_at:89::print_char_at:106 [ sx#10 sy#10 sz#10 debug_print::c#2 debug_print::i#2 print_sbyte_at::b#22 print_sbyte_at::at#21 ] main:11::anim:19::debug_print:51::print_sbyte_at:92::print_char_at:106 [ sx#10 sy#10 sz#10 debug_print::c#2 debug_print::i#2 print_sbyte_at::b#22 print_sbyte_at::at#21 ] main:11::anim:19::debug_print:51::print_sbyte_at:95::print_char_at:106 [ sx#10 sy#10 sz#10 debug_print::c#2 debug_print::i#2 print_sbyte_at::b#22 print_sbyte_at::at#21 ] main:11::anim:19::debug_print:51::print_sbyte_at:98::print_char_at:106 [ sx#10 sy#10 sz#10 debug_print::c#2 debug_print::i#2 print_sbyte_at::b#22 print_sbyte_at::at#21 ] main:11::debug_print_init:17::print_sbyte_at:237::print_char_at:106 [ debug_print_init::c#2 debug_print_init::i#2 print_sbyte_at::b#22 print_sbyte_at::at#21 ] main:11::debug_print_init:17::print_sbyte_at:240::print_char_at:106 [ debug_print_init::c#2 debug_print_init::i#2 print_sbyte_at::b#22 print_sbyte_at::at#21 ] main:11::debug_print_init:17::print_sbyte_at:243::print_char_at:106 [ debug_print_init::c#2 debug_print_init::i#2 print_sbyte_at::b#22 print_sbyte_at::at#21 ] main:11::anim:19::debug_print:51::print_sbyte_at:57::print_char_at:112 [ sx#10 sy#10 sz#10 print_sbyte_at::b#22 print_sbyte_at::at#21 ] main:11::anim:19::debug_print:51::print_sbyte_at:59::print_char_at:112 [ sx#10 sy#10 sz#10 print_sbyte_at::b#22 print_sbyte_at::at#21 ] main:11::anim:19::debug_print:51::print_sbyte_at:61::print_char_at:112 [ sx#10 sy#10 sz#10 print_sbyte_at::b#22 print_sbyte_at::at#21 ] main:11::anim:19::debug_print:51::print_sbyte_at:63::print_char_at:112 [ sx#10 sy#10 sz#10 print_sbyte_at::b#22 print_sbyte_at::at#21 ] main:11::anim:19::debug_print:51::print_sbyte_at:65::print_char_at:112 [ sx#10 sy#10 sz#10 print_sbyte_at::b#22 print_sbyte_at::at#21 ] main:11::anim:19::debug_print:51::print_sbyte_at:67::print_char_at:112 [ sx#10 sy#10 sz#10 print_sbyte_at::b#22 print_sbyte_at::at#21 ] main:11::anim:19::debug_print:51::print_sbyte_at:69::print_char_at:112 [ sx#10 sy#10 sz#10 print_sbyte_at::b#22 print_sbyte_at::at#21 ] main:11::anim:19::debug_print:51::print_sbyte_at:71::print_char_at:112 [ sx#10 sy#10 sz#10 print_sbyte_at::b#22 print_sbyte_at::at#21 ] main:11::anim:19::debug_print:51::print_sbyte_at:73::print_char_at:112 [ sx#10 sy#10 sz#10 print_sbyte_at::b#22 print_sbyte_at::at#21 ] main:11::anim:19::debug_print:51::print_sbyte_at:75::print_char_at:112 [ sx#10 sy#10 sz#10 print_sbyte_at::b#22 print_sbyte_at::at#21 ] main:11::anim:19::debug_print:51::print_sbyte_at:77::print_char_at:112 [ sx#10 sy#10 sz#10 print_sbyte_at::b#22 print_sbyte_at::at#21 ] main:11::anim:19::debug_print:51::print_sbyte_at:79::print_char_at:112 [ sx#10 sy#10 sz#10 print_sbyte_at::b#22 print_sbyte_at::at#21 ] main:11::anim:19::debug_print:51::print_sbyte_at:83::print_char_at:112 [ sx#10 sy#10 sz#10 debug_print::c#2 debug_print::i#2 print_sbyte_at::b#22 print_sbyte_at::at#21 ] main:11::anim:19::debug_print:51::print_sbyte_at:86::print_char_at:112 [ sx#10 sy#10 sz#10 debug_print::c#2 debug_print::i#2 print_sbyte_at::b#22 print_sbyte_at::at#21 ] main:11::anim:19::debug_print:51::print_sbyte_at:89::print_char_at:112 [ sx#10 sy#10 sz#10 debug_print::c#2 debug_print::i#2 print_sbyte_at::b#22 print_sbyte_at::at#21 ] main:11::anim:19::debug_print:51::print_sbyte_at:92::print_char_at:112 [ sx#10 sy#10 sz#10 debug_print::c#2 debug_print::i#2 print_sbyte_at::b#22 print_sbyte_at::at#21 ] main:11::anim:19::debug_print:51::print_sbyte_at:95::print_char_at:112 [ sx#10 sy#10 sz#10 debug_print::c#2 debug_print::i#2 print_sbyte_at::b#22 print_sbyte_at::at#21 ] main:11::anim:19::debug_print:51::print_sbyte_at:98::print_char_at:112 [ sx#10 sy#10 sz#10 debug_print::c#2 debug_print::i#2 print_sbyte_at::b#22 print_sbyte_at::at#21 ] main:11::debug_print_init:17::print_sbyte_at:237::print_char_at:112 [ debug_print_init::c#2 debug_print_init::i#2 print_sbyte_at::b#22 print_sbyte_at::at#21 ] main:11::debug_print_init:17::print_sbyte_at:240::print_char_at:112 [ debug_print_init::c#2 debug_print_init::i#2 print_sbyte_at::b#22 print_sbyte_at::at#21 ] main:11::debug_print_init:17::print_sbyte_at:243::print_char_at:112 [ debug_print_init::c#2 debug_print_init::i#2 print_sbyte_at::b#22 print_sbyte_at::at#21 ] main:11::anim:19::debug_print:51::print_sbyte_at:57::print_byte_at:109::print_char_at:120 [ sx#10 sy#10 sz#10 print_sbyte_at::b#24 print_byte_at::at#0 ] main:11::anim:19::debug_print:51::print_sbyte_at:59::print_byte_at:109::print_char_at:120 [ sx#10 sy#10 sz#10 print_sbyte_at::b#24 print_byte_at::at#0 ] main:11::anim:19::debug_print:51::print_sbyte_at:61::print_byte_at:109::print_char_at:120 [ sx#10 sy#10 sz#10 print_sbyte_at::b#24 print_byte_at::at#0 ] main:11::anim:19::debug_print:51::print_sbyte_at:63::print_byte_at:109::print_char_at:120 [ sx#10 sy#10 sz#10 print_sbyte_at::b#24 print_byte_at::at#0 ] main:11::anim:19::debug_print:51::print_sbyte_at:65::print_byte_at:109::print_char_at:120 [ sx#10 sy#10 sz#10 print_sbyte_at::b#24 print_byte_at::at#0 ] main:11::anim:19::debug_print:51::print_sbyte_at:67::print_byte_at:109::print_char_at:120 [ sx#10 sy#10 sz#10 print_sbyte_at::b#24 print_byte_at::at#0 ] main:11::anim:19::debug_print:51::print_sbyte_at:69::print_byte_at:109::print_char_at:120 [ sx#10 sy#10 sz#10 print_sbyte_at::b#24 print_byte_at::at#0 ] main:11::anim:19::debug_print:51::print_sbyte_at:71::print_byte_at:109::print_char_at:120 [ sx#10 sy#10 sz#10 print_sbyte_at::b#24 print_byte_at::at#0 ] main:11::anim:19::debug_print:51::print_sbyte_at:73::print_byte_at:109::print_char_at:120 [ sx#10 sy#10 sz#10 print_sbyte_at::b#24 print_byte_at::at#0 ] main:11::anim:19::debug_print:51::print_sbyte_at:75::print_byte_at:109::print_char_at:120 [ sx#10 sy#10 sz#10 print_sbyte_at::b#24 print_byte_at::at#0 ] main:11::anim:19::debug_print:51::print_sbyte_at:77::print_byte_at:109::print_char_at:120 [ sx#10 sy#10 sz#10 print_sbyte_at::b#24 print_byte_at::at#0 ] main:11::anim:19::debug_print:51::print_sbyte_at:79::print_byte_at:109::print_char_at:120 [ sx#10 sy#10 sz#10 print_sbyte_at::b#24 print_byte_at::at#0 ] main:11::anim:19::debug_print:51::print_sbyte_at:83::print_byte_at:109::print_char_at:120 [ sx#10 sy#10 sz#10 debug_print::c#2 debug_print::i#2 print_sbyte_at::b#24 print_byte_at::at#0 ] main:11::anim:19::debug_print:51::print_sbyte_at:86::print_byte_at:109::print_char_at:120 [ sx#10 sy#10 sz#10 debug_print::c#2 debug_print::i#2 print_sbyte_at::b#24 print_byte_at::at#0 ] main:11::anim:19::debug_print:51::print_sbyte_at:89::print_byte_at:109::print_char_at:120 [ sx#10 sy#10 sz#10 debug_print::c#2 debug_print::i#2 print_sbyte_at::b#24 print_byte_at::at#0 ] main:11::anim:19::debug_print:51::print_sbyte_at:92::print_byte_at:109::print_char_at:120 [ sx#10 sy#10 sz#10 debug_print::c#2 debug_print::i#2 print_sbyte_at::b#24 print_byte_at::at#0 ] main:11::anim:19::debug_print:51::print_sbyte_at:95::print_byte_at:109::print_char_at:120 [ sx#10 sy#10 sz#10 debug_print::c#2 debug_print::i#2 print_sbyte_at::b#24 print_byte_at::at#0 ] main:11::anim:19::debug_print:51::print_sbyte_at:98::print_byte_at:109::print_char_at:120 [ sx#10 sy#10 sz#10 debug_print::c#2 debug_print::i#2 print_sbyte_at::b#24 print_byte_at::at#0 ] main:11::debug_print_init:17::print_sbyte_at:237::print_byte_at:109::print_char_at:120 [ debug_print_init::c#2 debug_print_init::i#2 print_sbyte_at::b#24 print_byte_at::at#0 ] main:11::debug_print_init:17::print_sbyte_at:240::print_byte_at:109::print_char_at:120 [ debug_print_init::c#2 debug_print_init::i#2 print_sbyte_at::b#24 print_byte_at::at#0 ] main:11::debug_print_init:17::print_sbyte_at:243::print_byte_at:109::print_char_at:120 [ debug_print_init::c#2 debug_print_init::i#2 print_sbyte_at::b#24 print_byte_at::at#0 ] main:11::anim:19::debug_print:51::print_sbyte_at:57::print_byte_at:109::print_char_at:124 [ sx#10 sy#10 sz#10 ] main:11::anim:19::debug_print:51::print_sbyte_at:59::print_byte_at:109::print_char_at:124 [ sx#10 sy#10 sz#10 ] main:11::anim:19::debug_print:51::print_sbyte_at:61::print_byte_at:109::print_char_at:124 [ sx#10 sy#10 sz#10 ] main:11::anim:19::debug_print:51::print_sbyte_at:63::print_byte_at:109::print_char_at:124 [ sx#10 sy#10 sz#10 ] main:11::anim:19::debug_print:51::print_sbyte_at:65::print_byte_at:109::print_char_at:124 [ sx#10 sy#10 sz#10 ] main:11::anim:19::debug_print:51::print_sbyte_at:67::print_byte_at:109::print_char_at:124 [ sx#10 sy#10 sz#10 ] main:11::anim:19::debug_print:51::print_sbyte_at:69::print_byte_at:109::print_char_at:124 [ sx#10 sy#10 sz#10 ] main:11::anim:19::debug_print:51::print_sbyte_at:71::print_byte_at:109::print_char_at:124 [ sx#10 sy#10 sz#10 ] main:11::anim:19::debug_print:51::print_sbyte_at:73::print_byte_at:109::print_char_at:124 [ sx#10 sy#10 sz#10 ] main:11::anim:19::debug_print:51::print_sbyte_at:75::print_byte_at:109::print_char_at:124 [ sx#10 sy#10 sz#10 ] main:11::anim:19::debug_print:51::print_sbyte_at:77::print_byte_at:109::print_char_at:124 [ sx#10 sy#10 sz#10 ] main:11::anim:19::debug_print:51::print_sbyte_at:79::print_byte_at:109::print_char_at:124 [ sx#10 sy#10 sz#10 ] main:11::anim:19::debug_print:51::print_sbyte_at:83::print_byte_at:109::print_char_at:124 [ sx#10 sy#10 sz#10 debug_print::c#2 debug_print::i#2 ] main:11::anim:19::debug_print:51::print_sbyte_at:86::print_byte_at:109::print_char_at:124 [ sx#10 sy#10 sz#10 debug_print::c#2 debug_print::i#2 ] main:11::anim:19::debug_print:51::print_sbyte_at:89::print_byte_at:109::print_char_at:124 [ sx#10 sy#10 sz#10 debug_print::c#2 debug_print::i#2 ] main:11::anim:19::debug_print:51::print_sbyte_at:92::print_byte_at:109::print_char_at:124 [ sx#10 sy#10 sz#10 debug_print::c#2 debug_print::i#2 ] main:11::anim:19::debug_print:51::print_sbyte_at:95::print_byte_at:109::print_char_at:124 [ sx#10 sy#10 sz#10 debug_print::c#2 debug_print::i#2 ] main:11::anim:19::debug_print:51::print_sbyte_at:98::print_byte_at:109::print_char_at:124 [ sx#10 sy#10 sz#10 debug_print::c#2 debug_print::i#2 ] main:11::debug_print_init:17::print_sbyte_at:237::print_byte_at:109::print_char_at:124 [ debug_print_init::c#2 debug_print_init::i#2 ] main:11::debug_print_init:17::print_sbyte_at:240::print_byte_at:109::print_char_at:124 [ debug_print_init::c#2 debug_print_init::i#2 ] main:11::debug_print_init:17::print_sbyte_at:243::print_byte_at:109::print_char_at:124 [ debug_print_init::c#2 debug_print_init::i#2 ] ) always clobbers reg byte y -Removing always clobbered register reg byte y as potential for zp ZP_BYTE:2 [ sx#10 sx#3 ] -Removing always clobbered register reg byte y as potential for zp ZP_BYTE:3 [ sy#10 sy#3 ] -Removing always clobbered register reg byte y as potential for zp ZP_BYTE:4 [ sz#10 sz#3 ] -Removing always clobbered register reg byte y as potential for zp ZP_BYTE:10 [ print_sbyte_at::b#24 print_sbyte_at::b#0 print_sbyte_at::b#22 print_sbyte_at::b#4 print_sbyte_at::b#16 print_sbyte_at::b#12 print_sbyte_at::b#13 print_sbyte_at::b#14 print_sbyte_at::b#15 print_sbyte_at::b#17 print_sbyte_at::b#18 print_sbyte_at::b#19 print_sbyte_at::b#20 print_sbyte_at::b#21 print_sbyte_at::b#5 print_sbyte_at::b#6 print_sbyte_at::b#7 print_sbyte_at::b#8 print_sbyte_at::b#9 print_sbyte_at::b#10 print_sbyte_at::b#11 print_sbyte_at::b#1 print_sbyte_at::b#2 print_sbyte_at::b#3 ] -Removing always clobbered register reg byte y as potential for zp ZP_BYTE:6 [ debug_print::c#2 debug_print::c#1 ] -Removing always clobbered register reg byte y as potential for zp ZP_BYTE:7 [ debug_print::i#2 debug_print::i#1 ] -Removing always clobbered register reg byte y as potential for zp ZP_BYTE:14 [ debug_print_init::c#2 debug_print_init::c#1 ] -Removing always clobbered register reg byte y as potential for zp ZP_BYTE:15 [ debug_print_init::i#2 debug_print_init::i#1 ] -Statement [117] (byte~) print_byte_at::$0 ← (byte)(signed byte) print_sbyte_at::b#24 >> (byte/signed byte/word/signed word/dword/signed dword) 4 [ print_sbyte_at::b#24 print_byte_at::at#0 print_byte_at::$0 ] ( main:11::anim:19::debug_print:51::print_sbyte_at:57::print_byte_at:109 [ sx#10 sy#10 sz#10 print_sbyte_at::b#24 print_byte_at::at#0 print_byte_at::$0 ] main:11::anim:19::debug_print:51::print_sbyte_at:59::print_byte_at:109 [ sx#10 sy#10 sz#10 print_sbyte_at::b#24 print_byte_at::at#0 print_byte_at::$0 ] main:11::anim:19::debug_print:51::print_sbyte_at:61::print_byte_at:109 [ sx#10 sy#10 sz#10 print_sbyte_at::b#24 print_byte_at::at#0 print_byte_at::$0 ] main:11::anim:19::debug_print:51::print_sbyte_at:63::print_byte_at:109 [ sx#10 sy#10 sz#10 print_sbyte_at::b#24 print_byte_at::at#0 print_byte_at::$0 ] main:11::anim:19::debug_print:51::print_sbyte_at:65::print_byte_at:109 [ sx#10 sy#10 sz#10 print_sbyte_at::b#24 print_byte_at::at#0 print_byte_at::$0 ] main:11::anim:19::debug_print:51::print_sbyte_at:67::print_byte_at:109 [ sx#10 sy#10 sz#10 print_sbyte_at::b#24 print_byte_at::at#0 print_byte_at::$0 ] main:11::anim:19::debug_print:51::print_sbyte_at:69::print_byte_at:109 [ sx#10 sy#10 sz#10 print_sbyte_at::b#24 print_byte_at::at#0 print_byte_at::$0 ] main:11::anim:19::debug_print:51::print_sbyte_at:71::print_byte_at:109 [ sx#10 sy#10 sz#10 print_sbyte_at::b#24 print_byte_at::at#0 print_byte_at::$0 ] main:11::anim:19::debug_print:51::print_sbyte_at:73::print_byte_at:109 [ sx#10 sy#10 sz#10 print_sbyte_at::b#24 print_byte_at::at#0 print_byte_at::$0 ] main:11::anim:19::debug_print:51::print_sbyte_at:75::print_byte_at:109 [ sx#10 sy#10 sz#10 print_sbyte_at::b#24 print_byte_at::at#0 print_byte_at::$0 ] main:11::anim:19::debug_print:51::print_sbyte_at:77::print_byte_at:109 [ sx#10 sy#10 sz#10 print_sbyte_at::b#24 print_byte_at::at#0 print_byte_at::$0 ] main:11::anim:19::debug_print:51::print_sbyte_at:79::print_byte_at:109 [ sx#10 sy#10 sz#10 print_sbyte_at::b#24 print_byte_at::at#0 print_byte_at::$0 ] main:11::anim:19::debug_print:51::print_sbyte_at:83::print_byte_at:109 [ sx#10 sy#10 sz#10 debug_print::c#2 debug_print::i#2 print_sbyte_at::b#24 print_byte_at::at#0 print_byte_at::$0 ] main:11::anim:19::debug_print:51::print_sbyte_at:86::print_byte_at:109 [ sx#10 sy#10 sz#10 debug_print::c#2 debug_print::i#2 print_sbyte_at::b#24 print_byte_at::at#0 print_byte_at::$0 ] main:11::anim:19::debug_print:51::print_sbyte_at:89::print_byte_at:109 [ sx#10 sy#10 sz#10 debug_print::c#2 debug_print::i#2 print_sbyte_at::b#24 print_byte_at::at#0 print_byte_at::$0 ] main:11::anim:19::debug_print:51::print_sbyte_at:92::print_byte_at:109 [ sx#10 sy#10 sz#10 debug_print::c#2 debug_print::i#2 print_sbyte_at::b#24 print_byte_at::at#0 print_byte_at::$0 ] main:11::anim:19::debug_print:51::print_sbyte_at:95::print_byte_at:109 [ sx#10 sy#10 sz#10 debug_print::c#2 debug_print::i#2 print_sbyte_at::b#24 print_byte_at::at#0 print_byte_at::$0 ] main:11::anim:19::debug_print:51::print_sbyte_at:98::print_byte_at:109 [ sx#10 sy#10 sz#10 debug_print::c#2 debug_print::i#2 print_sbyte_at::b#24 print_byte_at::at#0 print_byte_at::$0 ] main:11::debug_print_init:17::print_sbyte_at:237::print_byte_at:109 [ debug_print_init::c#2 debug_print_init::i#2 print_sbyte_at::b#24 print_byte_at::at#0 print_byte_at::$0 ] main:11::debug_print_init:17::print_sbyte_at:240::print_byte_at:109 [ debug_print_init::c#2 debug_print_init::i#2 print_sbyte_at::b#24 print_byte_at::at#0 print_byte_at::$0 ] main:11::debug_print_init:17::print_sbyte_at:243::print_byte_at:109 [ debug_print_init::c#2 debug_print_init::i#2 print_sbyte_at::b#24 print_byte_at::at#0 print_byte_at::$0 ] ) always clobbers reg byte a -Statement [119] (byte*) print_char_at::at#2 ← (byte*) print_byte_at::at#0 [ print_sbyte_at::b#24 print_byte_at::at#0 print_char_at::ch#2 print_char_at::at#2 ] ( main:11::anim:19::debug_print:51::print_sbyte_at:57::print_byte_at:109 [ sx#10 sy#10 sz#10 print_sbyte_at::b#24 print_byte_at::at#0 print_char_at::ch#2 print_char_at::at#2 ] main:11::anim:19::debug_print:51::print_sbyte_at:59::print_byte_at:109 [ sx#10 sy#10 sz#10 print_sbyte_at::b#24 print_byte_at::at#0 print_char_at::ch#2 print_char_at::at#2 ] main:11::anim:19::debug_print:51::print_sbyte_at:61::print_byte_at:109 [ sx#10 sy#10 sz#10 print_sbyte_at::b#24 print_byte_at::at#0 print_char_at::ch#2 print_char_at::at#2 ] main:11::anim:19::debug_print:51::print_sbyte_at:63::print_byte_at:109 [ sx#10 sy#10 sz#10 print_sbyte_at::b#24 print_byte_at::at#0 print_char_at::ch#2 print_char_at::at#2 ] main:11::anim:19::debug_print:51::print_sbyte_at:65::print_byte_at:109 [ sx#10 sy#10 sz#10 print_sbyte_at::b#24 print_byte_at::at#0 print_char_at::ch#2 print_char_at::at#2 ] main:11::anim:19::debug_print:51::print_sbyte_at:67::print_byte_at:109 [ sx#10 sy#10 sz#10 print_sbyte_at::b#24 print_byte_at::at#0 print_char_at::ch#2 print_char_at::at#2 ] main:11::anim:19::debug_print:51::print_sbyte_at:69::print_byte_at:109 [ sx#10 sy#10 sz#10 print_sbyte_at::b#24 print_byte_at::at#0 print_char_at::ch#2 print_char_at::at#2 ] main:11::anim:19::debug_print:51::print_sbyte_at:71::print_byte_at:109 [ sx#10 sy#10 sz#10 print_sbyte_at::b#24 print_byte_at::at#0 print_char_at::ch#2 print_char_at::at#2 ] main:11::anim:19::debug_print:51::print_sbyte_at:73::print_byte_at:109 [ sx#10 sy#10 sz#10 print_sbyte_at::b#24 print_byte_at::at#0 print_char_at::ch#2 print_char_at::at#2 ] main:11::anim:19::debug_print:51::print_sbyte_at:75::print_byte_at:109 [ sx#10 sy#10 sz#10 print_sbyte_at::b#24 print_byte_at::at#0 print_char_at::ch#2 print_char_at::at#2 ] main:11::anim:19::debug_print:51::print_sbyte_at:77::print_byte_at:109 [ sx#10 sy#10 sz#10 print_sbyte_at::b#24 print_byte_at::at#0 print_char_at::ch#2 print_char_at::at#2 ] main:11::anim:19::debug_print:51::print_sbyte_at:79::print_byte_at:109 [ sx#10 sy#10 sz#10 print_sbyte_at::b#24 print_byte_at::at#0 print_char_at::ch#2 print_char_at::at#2 ] main:11::anim:19::debug_print:51::print_sbyte_at:83::print_byte_at:109 [ sx#10 sy#10 sz#10 debug_print::c#2 debug_print::i#2 print_sbyte_at::b#24 print_byte_at::at#0 print_char_at::ch#2 print_char_at::at#2 ] main:11::anim:19::debug_print:51::print_sbyte_at:86::print_byte_at:109 [ sx#10 sy#10 sz#10 debug_print::c#2 debug_print::i#2 print_sbyte_at::b#24 print_byte_at::at#0 print_char_at::ch#2 print_char_at::at#2 ] main:11::anim:19::debug_print:51::print_sbyte_at:89::print_byte_at:109 [ sx#10 sy#10 sz#10 debug_print::c#2 debug_print::i#2 print_sbyte_at::b#24 print_byte_at::at#0 print_char_at::ch#2 print_char_at::at#2 ] main:11::anim:19::debug_print:51::print_sbyte_at:92::print_byte_at:109 [ sx#10 sy#10 sz#10 debug_print::c#2 debug_print::i#2 print_sbyte_at::b#24 print_byte_at::at#0 print_char_at::ch#2 print_char_at::at#2 ] main:11::anim:19::debug_print:51::print_sbyte_at:95::print_byte_at:109 [ sx#10 sy#10 sz#10 debug_print::c#2 debug_print::i#2 print_sbyte_at::b#24 print_byte_at::at#0 print_char_at::ch#2 print_char_at::at#2 ] main:11::anim:19::debug_print:51::print_sbyte_at:98::print_byte_at:109 [ sx#10 sy#10 sz#10 debug_print::c#2 debug_print::i#2 print_sbyte_at::b#24 print_byte_at::at#0 print_char_at::ch#2 print_char_at::at#2 ] main:11::debug_print_init:17::print_sbyte_at:237::print_byte_at:109 [ debug_print_init::c#2 debug_print_init::i#2 print_sbyte_at::b#24 print_byte_at::at#0 print_char_at::ch#2 print_char_at::at#2 ] main:11::debug_print_init:17::print_sbyte_at:240::print_byte_at:109 [ debug_print_init::c#2 debug_print_init::i#2 print_sbyte_at::b#24 print_byte_at::at#0 print_char_at::ch#2 print_char_at::at#2 ] main:11::debug_print_init:17::print_sbyte_at:243::print_byte_at:109 [ debug_print_init::c#2 debug_print_init::i#2 print_sbyte_at::b#24 print_byte_at::at#0 print_char_at::ch#2 print_char_at::at#2 ] ) always clobbers reg byte a -Removing always clobbered register reg byte a as potential for zp ZP_BYTE:11 [ print_char_at::ch#4 print_char_at::ch#2 print_char_at::ch#3 ] -Statement [121] (byte~) print_byte_at::$2 ← (byte)(signed byte) print_sbyte_at::b#24 & (byte/signed byte/word/signed word/dword/signed dword) 15 [ print_byte_at::at#0 print_byte_at::$2 ] ( main:11::anim:19::debug_print:51::print_sbyte_at:57::print_byte_at:109 [ sx#10 sy#10 sz#10 print_byte_at::at#0 print_byte_at::$2 ] main:11::anim:19::debug_print:51::print_sbyte_at:59::print_byte_at:109 [ sx#10 sy#10 sz#10 print_byte_at::at#0 print_byte_at::$2 ] main:11::anim:19::debug_print:51::print_sbyte_at:61::print_byte_at:109 [ sx#10 sy#10 sz#10 print_byte_at::at#0 print_byte_at::$2 ] main:11::anim:19::debug_print:51::print_sbyte_at:63::print_byte_at:109 [ sx#10 sy#10 sz#10 print_byte_at::at#0 print_byte_at::$2 ] main:11::anim:19::debug_print:51::print_sbyte_at:65::print_byte_at:109 [ sx#10 sy#10 sz#10 print_byte_at::at#0 print_byte_at::$2 ] main:11::anim:19::debug_print:51::print_sbyte_at:67::print_byte_at:109 [ sx#10 sy#10 sz#10 print_byte_at::at#0 print_byte_at::$2 ] main:11::anim:19::debug_print:51::print_sbyte_at:69::print_byte_at:109 [ sx#10 sy#10 sz#10 print_byte_at::at#0 print_byte_at::$2 ] main:11::anim:19::debug_print:51::print_sbyte_at:71::print_byte_at:109 [ sx#10 sy#10 sz#10 print_byte_at::at#0 print_byte_at::$2 ] main:11::anim:19::debug_print:51::print_sbyte_at:73::print_byte_at:109 [ sx#10 sy#10 sz#10 print_byte_at::at#0 print_byte_at::$2 ] main:11::anim:19::debug_print:51::print_sbyte_at:75::print_byte_at:109 [ sx#10 sy#10 sz#10 print_byte_at::at#0 print_byte_at::$2 ] main:11::anim:19::debug_print:51::print_sbyte_at:77::print_byte_at:109 [ sx#10 sy#10 sz#10 print_byte_at::at#0 print_byte_at::$2 ] main:11::anim:19::debug_print:51::print_sbyte_at:79::print_byte_at:109 [ sx#10 sy#10 sz#10 print_byte_at::at#0 print_byte_at::$2 ] main:11::anim:19::debug_print:51::print_sbyte_at:83::print_byte_at:109 [ sx#10 sy#10 sz#10 debug_print::c#2 debug_print::i#2 print_byte_at::at#0 print_byte_at::$2 ] main:11::anim:19::debug_print:51::print_sbyte_at:86::print_byte_at:109 [ sx#10 sy#10 sz#10 debug_print::c#2 debug_print::i#2 print_byte_at::at#0 print_byte_at::$2 ] main:11::anim:19::debug_print:51::print_sbyte_at:89::print_byte_at:109 [ sx#10 sy#10 sz#10 debug_print::c#2 debug_print::i#2 print_byte_at::at#0 print_byte_at::$2 ] main:11::anim:19::debug_print:51::print_sbyte_at:92::print_byte_at:109 [ sx#10 sy#10 sz#10 debug_print::c#2 debug_print::i#2 print_byte_at::at#0 print_byte_at::$2 ] main:11::anim:19::debug_print:51::print_sbyte_at:95::print_byte_at:109 [ sx#10 sy#10 sz#10 debug_print::c#2 debug_print::i#2 print_byte_at::at#0 print_byte_at::$2 ] main:11::anim:19::debug_print:51::print_sbyte_at:98::print_byte_at:109 [ sx#10 sy#10 sz#10 debug_print::c#2 debug_print::i#2 print_byte_at::at#0 print_byte_at::$2 ] main:11::debug_print_init:17::print_sbyte_at:237::print_byte_at:109 [ debug_print_init::c#2 debug_print_init::i#2 print_byte_at::at#0 print_byte_at::$2 ] main:11::debug_print_init:17::print_sbyte_at:240::print_byte_at:109 [ debug_print_init::c#2 debug_print_init::i#2 print_byte_at::at#0 print_byte_at::$2 ] main:11::debug_print_init:17::print_sbyte_at:243::print_byte_at:109 [ debug_print_init::c#2 debug_print_init::i#2 print_byte_at::at#0 print_byte_at::$2 ] ) always clobbers reg byte a -Statement [122] (byte*) print_char_at::at#3 ← (byte*) print_byte_at::at#0 + (byte/signed byte/word/signed word/dword/signed dword) 1 [ print_char_at::at#3 print_byte_at::$2 ] ( main:11::anim:19::debug_print:51::print_sbyte_at:57::print_byte_at:109 [ sx#10 sy#10 sz#10 print_char_at::at#3 print_byte_at::$2 ] main:11::anim:19::debug_print:51::print_sbyte_at:59::print_byte_at:109 [ sx#10 sy#10 sz#10 print_char_at::at#3 print_byte_at::$2 ] main:11::anim:19::debug_print:51::print_sbyte_at:61::print_byte_at:109 [ sx#10 sy#10 sz#10 print_char_at::at#3 print_byte_at::$2 ] main:11::anim:19::debug_print:51::print_sbyte_at:63::print_byte_at:109 [ sx#10 sy#10 sz#10 print_char_at::at#3 print_byte_at::$2 ] main:11::anim:19::debug_print:51::print_sbyte_at:65::print_byte_at:109 [ sx#10 sy#10 sz#10 print_char_at::at#3 print_byte_at::$2 ] main:11::anim:19::debug_print:51::print_sbyte_at:67::print_byte_at:109 [ sx#10 sy#10 sz#10 print_char_at::at#3 print_byte_at::$2 ] main:11::anim:19::debug_print:51::print_sbyte_at:69::print_byte_at:109 [ sx#10 sy#10 sz#10 print_char_at::at#3 print_byte_at::$2 ] main:11::anim:19::debug_print:51::print_sbyte_at:71::print_byte_at:109 [ sx#10 sy#10 sz#10 print_char_at::at#3 print_byte_at::$2 ] main:11::anim:19::debug_print:51::print_sbyte_at:73::print_byte_at:109 [ sx#10 sy#10 sz#10 print_char_at::at#3 print_byte_at::$2 ] main:11::anim:19::debug_print:51::print_sbyte_at:75::print_byte_at:109 [ sx#10 sy#10 sz#10 print_char_at::at#3 print_byte_at::$2 ] main:11::anim:19::debug_print:51::print_sbyte_at:77::print_byte_at:109 [ sx#10 sy#10 sz#10 print_char_at::at#3 print_byte_at::$2 ] main:11::anim:19::debug_print:51::print_sbyte_at:79::print_byte_at:109 [ sx#10 sy#10 sz#10 print_char_at::at#3 print_byte_at::$2 ] main:11::anim:19::debug_print:51::print_sbyte_at:83::print_byte_at:109 [ sx#10 sy#10 sz#10 debug_print::c#2 debug_print::i#2 print_char_at::at#3 print_byte_at::$2 ] main:11::anim:19::debug_print:51::print_sbyte_at:86::print_byte_at:109 [ sx#10 sy#10 sz#10 debug_print::c#2 debug_print::i#2 print_char_at::at#3 print_byte_at::$2 ] main:11::anim:19::debug_print:51::print_sbyte_at:89::print_byte_at:109 [ sx#10 sy#10 sz#10 debug_print::c#2 debug_print::i#2 print_char_at::at#3 print_byte_at::$2 ] main:11::anim:19::debug_print:51::print_sbyte_at:92::print_byte_at:109 [ sx#10 sy#10 sz#10 debug_print::c#2 debug_print::i#2 print_char_at::at#3 print_byte_at::$2 ] main:11::anim:19::debug_print:51::print_sbyte_at:95::print_byte_at:109 [ sx#10 sy#10 sz#10 debug_print::c#2 debug_print::i#2 print_char_at::at#3 print_byte_at::$2 ] main:11::anim:19::debug_print:51::print_sbyte_at:98::print_byte_at:109 [ sx#10 sy#10 sz#10 debug_print::c#2 debug_print::i#2 print_char_at::at#3 print_byte_at::$2 ] main:11::debug_print_init:17::print_sbyte_at:237::print_byte_at:109 [ debug_print_init::c#2 debug_print_init::i#2 print_char_at::at#3 print_byte_at::$2 ] main:11::debug_print_init:17::print_sbyte_at:240::print_byte_at:109 [ debug_print_init::c#2 debug_print_init::i#2 print_char_at::at#3 print_byte_at::$2 ] main:11::debug_print_init:17::print_sbyte_at:243::print_byte_at:109 [ debug_print_init::c#2 debug_print_init::i#2 print_char_at::at#3 print_byte_at::$2 ] ) always clobbers reg byte a -Removing always clobbered register reg byte a as potential for zp ZP_BYTE:36 [ print_byte_at::$2 ] +Statement [34] *((const signed byte[8]) xrs#0 + (byte) anim::i#2) ← *((const signed byte*) xr#0) [ sx#10 sy#10 anim::i#2 ] ( main:11::anim:17 [ sx#10 sy#10 anim::i#2 ] ) always clobbers reg byte a +Removing always clobbered register reg byte a as potential for zp ZP_BYTE:4 [ anim::i#2 anim::i#1 ] +Statement [35] *((const signed byte[8]) yrs#0 + (byte) anim::i#2) ← *((const signed byte*) yr#0) [ sx#10 sy#10 anim::i#2 ] ( main:11::anim:17 [ sx#10 sy#10 anim::i#2 ] ) always clobbers reg byte a +Statement [36] *((const signed byte[8]) zrs#0 + (byte) anim::i#2) ← *((const signed byte*) zr#0) [ sx#10 sy#10 anim::i#2 ] ( main:11::anim:17 [ sx#10 sy#10 anim::i#2 ] ) always clobbers reg byte a +Statement [37] *((const signed byte[8]) pps#0 + (byte) anim::i#2) ← *((const signed byte*) pp#0) [ sx#10 sy#10 anim::i#2 ] ( main:11::anim:17 [ sx#10 sy#10 anim::i#2 ] ) always clobbers reg byte a +Statement [38] *((const signed byte[8]) xps#0 + (byte) anim::i#2) ← *((const signed byte*) xp#0) [ sx#10 sy#10 anim::i#2 ] ( main:11::anim:17 [ sx#10 sy#10 anim::i#2 ] ) always clobbers reg byte a +Statement [39] *((const signed byte[8]) yps#0 + (byte) anim::i#2) ← *((const signed byte*) yp#0) [ sx#10 sy#10 anim::i#2 ] ( main:11::anim:17 [ sx#10 sy#10 anim::i#2 ] ) always clobbers reg byte a +Statement [40] (byte) anim::i2#0 ← (byte) anim::i#2 << (byte/signed byte/word/signed word/dword/signed dword) 1 [ sx#10 sy#10 anim::i#2 anim::i2#0 ] ( main:11::anim:17 [ sx#10 sy#10 anim::i#2 anim::i2#0 ] ) always clobbers reg byte a +Statement [41] (byte/word/signed word/dword/signed dword~) anim::$6 ← (byte/word/signed word/dword/signed dword) 128 + (byte)*((const signed byte*) xp#0) [ sx#10 sy#10 anim::i#2 anim::i2#0 anim::$6 ] ( main:11::anim:17 [ sx#10 sy#10 anim::i#2 anim::i2#0 anim::$6 ] ) always clobbers reg byte a +Removing always clobbered register reg byte a as potential for zp ZP_BYTE:11 [ anim::i2#0 ] +Statement [43] (byte/word/signed word/dword/signed dword~) anim::$8 ← (byte/word/signed word/dword/signed dword) 128 + (byte)*((const signed byte*) yp#0) [ sx#10 sy#10 anim::i#2 anim::i2#0 anim::$8 ] ( main:11::anim:17 [ sx#10 sy#10 anim::i#2 anim::i2#0 anim::$8 ] ) always clobbers reg byte a +Statement [47] *((const byte*) BORDERCOL#0) ← (const byte) LIGHT_GREY#0 [ sx#10 sy#10 ] ( main:11::anim:17 [ sx#10 sy#10 ] ) always clobbers reg byte a +Statement [48] *((const byte*) BORDERCOL#0) ← (const byte) LIGHT_BLUE#0 [ sx#10 sy#10 ] ( main:11::anim:17 [ sx#10 sy#10 ] ) always clobbers reg byte a +Potential register analysis [50] sy#3 ← sy#10 - 3 missing fragment vbsxx=vbsxx_minus_vbuc1 allocation: reg byte x [ sy#10 sy#3 ] +Potential register analysis [50] sy#3 ← sy#10 - 3 missing fragment vbsyy=vbsyy_minus_vbuc1 allocation: reg byte y [ sy#10 sy#3 ] +MISSING FRAGMENTS + vbsxx=vbsxx_minus_vbuc1 + vbsyy=vbsyy_minus_vbuc1 +Statement [50] (signed byte) sy#3 ← (signed byte) sy#10 - (byte/signed byte/word/signed word/dword/signed dword) 3 [ sx#3 sy#3 ] ( main:11::anim:17 [ sx#3 sy#3 ] ) always clobbers reg byte a Statement asm { ldxzr C1: ldamulf_sqr1,x sec C2: sbcmulf_sqr2,x staC3+1 F1: ldamulf_sqr1,x sec F2: sbcmulf_sqr2,x staF3+1 I1: ldamulf_sqr1,x sec I2: sbcmulf_sqr2,x staI3+1 ldxxr ldyyr I3: lda#0 clc G1: adcmulf_sqr1,x sec G2: sbcmulf_sqr2,x clc H1: adcmulf_sqr1,y sec H2: sbcmulf_sqr2,y stazr staPP+1 PP: ldaPERSP_Z stapp stapsp1 eor#$ff stapsp2 C3: lda#0 clc A1: adcmulf_sqr1,x sec A2: sbcmulf_sqr2,x clc B1: adcmulf_sqr1,y sec B2: sbcmulf_sqr2,y staxr staXX+1 clc F3: lda#0 clc D1: adcmulf_sqr1,x sec D2: sbcmulf_sqr2,x clc E1: adcmulf_sqr1,y sec E2: sbcmulf_sqr2,y stayr tay lda(psp1),y sec sbc(psp2),y stayp XX: ldy#0 lda(psp1),y sec sbc(psp2),y staxp } always clobbers reg byte a reg byte x reg byte y Removing always clobbered register reg byte x as potential for zp ZP_BYTE:2 [ sx#10 sx#3 ] +Removing always clobbered register reg byte y as potential for zp ZP_BYTE:2 [ sx#10 sx#3 ] Removing always clobbered register reg byte x as potential for zp ZP_BYTE:3 [ sy#10 sy#3 ] -Removing always clobbered register reg byte x as potential for zp ZP_BYTE:4 [ sz#10 sz#3 ] -Removing always clobbered register reg byte x as potential for zp ZP_BYTE:5 [ anim::i#2 anim::i#1 ] -Removing always clobbered register reg byte y as potential for zp ZP_BYTE:5 [ anim::i#2 anim::i#1 ] +Removing always clobbered register reg byte y as potential for zp ZP_BYTE:3 [ sy#10 sy#3 ] +Removing always clobbered register reg byte x as potential for zp ZP_BYTE:4 [ anim::i#2 anim::i#1 ] +Removing always clobbered register reg byte y as potential for zp ZP_BYTE:4 [ anim::i#2 anim::i#1 ] Statement asm { ldarotation_matrix+0 starotate_matrix.A1+1 eor#$ff starotate_matrix.A2+1 ldarotation_matrix+1 starotate_matrix.B1+1 eor#$ff starotate_matrix.B2+1 ldarotation_matrix+2 starotate_matrix.C1+1 eor#$ff starotate_matrix.C2+1 ldarotation_matrix+3 starotate_matrix.D1+1 eor#$ff starotate_matrix.D2+1 ldarotation_matrix+4 starotate_matrix.E1+1 eor#$ff starotate_matrix.E2+1 ldarotation_matrix+5 starotate_matrix.F1+1 eor#$ff starotate_matrix.F2+1 ldarotation_matrix+6 starotate_matrix.G1+1 eor#$ff starotate_matrix.G2+1 ldarotation_matrix+7 starotate_matrix.H1+1 eor#$ff starotate_matrix.H2+1 ldarotation_matrix+8 starotate_matrix.I1+1 eor#$ff starotate_matrix.I2+1 } always clobbers reg byte a -Statement [133] (signed byte) calculate_matrix_16::t1#0 ← (signed byte) calculate_matrix_16::sy#0 - (signed byte) calculate_matrix_16::sz#0 [ calculate_matrix_16::sx#0 calculate_matrix_16::sy#0 calculate_matrix_16::sz#0 calculate_matrix_16::t1#0 ] ( main:11::anim:19::calculate_matrix_16:28 [ sx#10 sy#10 sz#10 calculate_matrix_16::sx#0 calculate_matrix_16::sy#0 calculate_matrix_16::sz#0 calculate_matrix_16::t1#0 ] ) always clobbers reg byte a -Removing always clobbered register reg byte a as potential for zp ZP_BYTE:24 [ calculate_matrix_16::sx#0 ] -Removing always clobbered register reg byte a as potential for zp ZP_BYTE:25 [ calculate_matrix_16::sy#0 ] -Removing always clobbered register reg byte a as potential for zp ZP_BYTE:26 [ calculate_matrix_16::sz#0 ] -Statement [134] (signed byte) calculate_matrix_16::t2#0 ← (signed byte) calculate_matrix_16::sy#0 + (signed byte) calculate_matrix_16::sz#0 [ calculate_matrix_16::sx#0 calculate_matrix_16::sy#0 calculate_matrix_16::sz#0 calculate_matrix_16::t1#0 calculate_matrix_16::t2#0 ] ( main:11::anim:19::calculate_matrix_16:28 [ sx#10 sy#10 sz#10 calculate_matrix_16::sx#0 calculate_matrix_16::sy#0 calculate_matrix_16::sz#0 calculate_matrix_16::t1#0 calculate_matrix_16::t2#0 ] ) always clobbers reg byte a -Removing always clobbered register reg byte a as potential for zp ZP_BYTE:37 [ calculate_matrix_16::t1#0 ] -Statement [135] (word~) calculate_matrix_16::$74 ← *((const byte*) COSH_HI#0 + (signed byte) calculate_matrix_16::t1#0) w= *((const byte*) COSH_LO#0 + (signed byte) calculate_matrix_16::t1#0) [ calculate_matrix_16::sx#0 calculate_matrix_16::sy#0 calculate_matrix_16::sz#0 calculate_matrix_16::t1#0 calculate_matrix_16::t2#0 calculate_matrix_16::$74 ] ( main:11::anim:19::calculate_matrix_16:28 [ sx#10 sy#10 sz#10 calculate_matrix_16::sx#0 calculate_matrix_16::sy#0 calculate_matrix_16::sz#0 calculate_matrix_16::t1#0 calculate_matrix_16::t2#0 calculate_matrix_16::$74 ] ) always clobbers reg byte a -Removing always clobbered register reg byte a as potential for zp ZP_BYTE:38 [ calculate_matrix_16::t2#0 ] -Statement [136] (word~) calculate_matrix_16::$75 ← *((const byte*) COSH_HI#0 + (signed byte) calculate_matrix_16::t2#0) w= *((const byte*) COSH_LO#0 + (signed byte) calculate_matrix_16::t2#0) [ calculate_matrix_16::sx#0 calculate_matrix_16::sy#0 calculate_matrix_16::sz#0 calculate_matrix_16::t1#0 calculate_matrix_16::t2#0 calculate_matrix_16::$74 calculate_matrix_16::$75 ] ( main:11::anim:19::calculate_matrix_16:28 [ sx#10 sy#10 sz#10 calculate_matrix_16::sx#0 calculate_matrix_16::sy#0 calculate_matrix_16::sz#0 calculate_matrix_16::t1#0 calculate_matrix_16::t2#0 calculate_matrix_16::$74 calculate_matrix_16::$75 ] ) always clobbers reg byte a -Statement [137] (signed word~) calculate_matrix_16::$4 ← (signed word)(word~) calculate_matrix_16::$74 + (signed word)(word~) calculate_matrix_16::$75 [ calculate_matrix_16::sx#0 calculate_matrix_16::sy#0 calculate_matrix_16::sz#0 calculate_matrix_16::t1#0 calculate_matrix_16::t2#0 calculate_matrix_16::$4 ] ( main:11::anim:19::calculate_matrix_16:28 [ sx#10 sy#10 sz#10 calculate_matrix_16::sx#0 calculate_matrix_16::sy#0 calculate_matrix_16::sz#0 calculate_matrix_16::t1#0 calculate_matrix_16::t2#0 calculate_matrix_16::$4 ] ) always clobbers reg byte a -Statement [138] (byte~) calculate_matrix_16::$5 ← > (signed word~) calculate_matrix_16::$4 [ calculate_matrix_16::sx#0 calculate_matrix_16::sy#0 calculate_matrix_16::sz#0 calculate_matrix_16::t1#0 calculate_matrix_16::t2#0 calculate_matrix_16::$5 ] ( main:11::anim:19::calculate_matrix_16:28 [ sx#10 sy#10 sz#10 calculate_matrix_16::sx#0 calculate_matrix_16::sy#0 calculate_matrix_16::sz#0 calculate_matrix_16::t1#0 calculate_matrix_16::t2#0 calculate_matrix_16::$5 ] ) always clobbers reg byte a -Statement [140] (word~) calculate_matrix_16::$76 ← *((const byte*) SINH_HI#0 + (signed byte) calculate_matrix_16::t1#0) w= *((const byte*) SINH_LO#0 + (signed byte) calculate_matrix_16::t1#0) [ calculate_matrix_16::sx#0 calculate_matrix_16::sy#0 calculate_matrix_16::sz#0 calculate_matrix_16::t1#0 calculate_matrix_16::t2#0 calculate_matrix_16::$76 ] ( main:11::anim:19::calculate_matrix_16:28 [ sx#10 sy#10 sz#10 calculate_matrix_16::sx#0 calculate_matrix_16::sy#0 calculate_matrix_16::sz#0 calculate_matrix_16::t1#0 calculate_matrix_16::t2#0 calculate_matrix_16::$76 ] ) always clobbers reg byte a -Statement [141] (word~) calculate_matrix_16::$77 ← *((const byte*) SINH_HI#0 + (signed byte) calculate_matrix_16::t2#0) w= *((const byte*) SINH_LO#0 + (signed byte) calculate_matrix_16::t2#0) [ calculate_matrix_16::sx#0 calculate_matrix_16::sy#0 calculate_matrix_16::sz#0 calculate_matrix_16::t1#0 calculate_matrix_16::t2#0 calculate_matrix_16::$76 calculate_matrix_16::$77 ] ( main:11::anim:19::calculate_matrix_16:28 [ sx#10 sy#10 sz#10 calculate_matrix_16::sx#0 calculate_matrix_16::sy#0 calculate_matrix_16::sz#0 calculate_matrix_16::t1#0 calculate_matrix_16::t2#0 calculate_matrix_16::$76 calculate_matrix_16::$77 ] ) always clobbers reg byte a -Statement [142] (signed word~) calculate_matrix_16::$9 ← (signed word)(word~) calculate_matrix_16::$76 - (signed word)(word~) calculate_matrix_16::$77 [ calculate_matrix_16::sx#0 calculate_matrix_16::sy#0 calculate_matrix_16::sz#0 calculate_matrix_16::t1#0 calculate_matrix_16::t2#0 calculate_matrix_16::$9 ] ( main:11::anim:19::calculate_matrix_16:28 [ sx#10 sy#10 sz#10 calculate_matrix_16::sx#0 calculate_matrix_16::sy#0 calculate_matrix_16::sz#0 calculate_matrix_16::t1#0 calculate_matrix_16::t2#0 calculate_matrix_16::$9 ] ) always clobbers reg byte a -Statement [143] (byte~) calculate_matrix_16::$10 ← > (signed word~) calculate_matrix_16::$9 [ calculate_matrix_16::sx#0 calculate_matrix_16::sy#0 calculate_matrix_16::sz#0 calculate_matrix_16::t1#0 calculate_matrix_16::t2#0 calculate_matrix_16::$10 ] ( main:11::anim:19::calculate_matrix_16:28 [ sx#10 sy#10 sz#10 calculate_matrix_16::sx#0 calculate_matrix_16::sy#0 calculate_matrix_16::sz#0 calculate_matrix_16::t1#0 calculate_matrix_16::t2#0 calculate_matrix_16::$10 ] ) always clobbers reg byte a -Statement [145] (word~) calculate_matrix_16::$78 ← *((const byte*) SINH_HI#0 + (signed byte) calculate_matrix_16::sy#0) w= *((const byte*) SINH_LO#0 + (signed byte) calculate_matrix_16::sy#0) [ calculate_matrix_16::sx#0 calculate_matrix_16::sy#0 calculate_matrix_16::sz#0 calculate_matrix_16::t1#0 calculate_matrix_16::t2#0 calculate_matrix_16::$78 ] ( main:11::anim:19::calculate_matrix_16:28 [ sx#10 sy#10 sz#10 calculate_matrix_16::sx#0 calculate_matrix_16::sy#0 calculate_matrix_16::sz#0 calculate_matrix_16::t1#0 calculate_matrix_16::t2#0 calculate_matrix_16::$78 ] ) always clobbers reg byte a -Statement [146] (signed word~) calculate_matrix_16::$13 ← (signed word)(word~) calculate_matrix_16::$78 + (signed word)(word~) calculate_matrix_16::$78 [ calculate_matrix_16::sx#0 calculate_matrix_16::sy#0 calculate_matrix_16::sz#0 calculate_matrix_16::t1#0 calculate_matrix_16::t2#0 calculate_matrix_16::$13 ] ( main:11::anim:19::calculate_matrix_16:28 [ sx#10 sy#10 sz#10 calculate_matrix_16::sx#0 calculate_matrix_16::sy#0 calculate_matrix_16::sz#0 calculate_matrix_16::t1#0 calculate_matrix_16::t2#0 calculate_matrix_16::$13 ] ) always clobbers reg byte a -Statement [147] (byte~) calculate_matrix_16::$14 ← > (signed word~) calculate_matrix_16::$13 [ calculate_matrix_16::sx#0 calculate_matrix_16::sy#0 calculate_matrix_16::sz#0 calculate_matrix_16::t1#0 calculate_matrix_16::t2#0 calculate_matrix_16::$14 ] ( main:11::anim:19::calculate_matrix_16:28 [ sx#10 sy#10 sz#10 calculate_matrix_16::sx#0 calculate_matrix_16::sy#0 calculate_matrix_16::sz#0 calculate_matrix_16::t1#0 calculate_matrix_16::t2#0 calculate_matrix_16::$14 ] ) always clobbers reg byte a -Statement [149] (signed byte) calculate_matrix_16::t3#0 ← (signed byte) calculate_matrix_16::sx#0 + (signed byte) calculate_matrix_16::sz#0 [ calculate_matrix_16::sx#0 calculate_matrix_16::sy#0 calculate_matrix_16::sz#0 calculate_matrix_16::t1#0 calculate_matrix_16::t2#0 calculate_matrix_16::t3#0 ] ( main:11::anim:19::calculate_matrix_16:28 [ sx#10 sy#10 sz#10 calculate_matrix_16::sx#0 calculate_matrix_16::sy#0 calculate_matrix_16::sz#0 calculate_matrix_16::t1#0 calculate_matrix_16::t2#0 calculate_matrix_16::t3#0 ] ) always clobbers reg byte a -Statement [150] (signed byte) calculate_matrix_16::t4#0 ← (signed byte) calculate_matrix_16::sx#0 - (signed byte) calculate_matrix_16::sz#0 [ calculate_matrix_16::sx#0 calculate_matrix_16::sy#0 calculate_matrix_16::t1#0 calculate_matrix_16::t2#0 calculate_matrix_16::t3#0 calculate_matrix_16::t4#0 ] ( main:11::anim:19::calculate_matrix_16:28 [ sx#10 sy#10 sz#10 calculate_matrix_16::sx#0 calculate_matrix_16::sy#0 calculate_matrix_16::t1#0 calculate_matrix_16::t2#0 calculate_matrix_16::t3#0 calculate_matrix_16::t4#0 ] ) always clobbers reg byte a -Removing always clobbered register reg byte a as potential for zp ZP_BYTE:58 [ calculate_matrix_16::t3#0 ] -Statement [151] (signed byte) calculate_matrix_16::t5#0 ← (signed byte) calculate_matrix_16::sx#0 + (signed byte) calculate_matrix_16::t2#0 [ calculate_matrix_16::sx#0 calculate_matrix_16::sy#0 calculate_matrix_16::t1#0 calculate_matrix_16::t2#0 calculate_matrix_16::t3#0 calculate_matrix_16::t4#0 calculate_matrix_16::t5#0 ] ( main:11::anim:19::calculate_matrix_16:28 [ sx#10 sy#10 sz#10 calculate_matrix_16::sx#0 calculate_matrix_16::sy#0 calculate_matrix_16::t1#0 calculate_matrix_16::t2#0 calculate_matrix_16::t3#0 calculate_matrix_16::t4#0 calculate_matrix_16::t5#0 ] ) always clobbers reg byte a -Removing always clobbered register reg byte a as potential for zp ZP_BYTE:59 [ calculate_matrix_16::t4#0 ] -Statement [152] (signed byte) calculate_matrix_16::t6#0 ← (signed byte) calculate_matrix_16::sx#0 - (signed byte) calculate_matrix_16::t1#0 [ calculate_matrix_16::sx#0 calculate_matrix_16::sy#0 calculate_matrix_16::t1#0 calculate_matrix_16::t2#0 calculate_matrix_16::t3#0 calculate_matrix_16::t4#0 calculate_matrix_16::t5#0 calculate_matrix_16::t6#0 ] ( main:11::anim:19::calculate_matrix_16:28 [ sx#10 sy#10 sz#10 calculate_matrix_16::sx#0 calculate_matrix_16::sy#0 calculate_matrix_16::t1#0 calculate_matrix_16::t2#0 calculate_matrix_16::t3#0 calculate_matrix_16::t4#0 calculate_matrix_16::t5#0 calculate_matrix_16::t6#0 ] ) always clobbers reg byte a -Removing always clobbered register reg byte a as potential for zp ZP_BYTE:60 [ calculate_matrix_16::t5#0 ] -Statement [153] (signed byte) calculate_matrix_16::t7#0 ← (signed byte) calculate_matrix_16::sx#0 + (signed byte) calculate_matrix_16::t1#0 [ calculate_matrix_16::sx#0 calculate_matrix_16::sy#0 calculate_matrix_16::t2#0 calculate_matrix_16::t3#0 calculate_matrix_16::t4#0 calculate_matrix_16::t5#0 calculate_matrix_16::t6#0 calculate_matrix_16::t7#0 ] ( main:11::anim:19::calculate_matrix_16:28 [ sx#10 sy#10 sz#10 calculate_matrix_16::sx#0 calculate_matrix_16::sy#0 calculate_matrix_16::t2#0 calculate_matrix_16::t3#0 calculate_matrix_16::t4#0 calculate_matrix_16::t5#0 calculate_matrix_16::t6#0 calculate_matrix_16::t7#0 ] ) always clobbers reg byte a -Removing always clobbered register reg byte a as potential for zp ZP_BYTE:61 [ calculate_matrix_16::t6#0 ] -Statement [154] (signed byte) calculate_matrix_16::t8#0 ← (signed byte) calculate_matrix_16::t2#0 - (signed byte) calculate_matrix_16::sx#0 [ calculate_matrix_16::sx#0 calculate_matrix_16::sy#0 calculate_matrix_16::t3#0 calculate_matrix_16::t4#0 calculate_matrix_16::t5#0 calculate_matrix_16::t6#0 calculate_matrix_16::t7#0 calculate_matrix_16::t8#0 ] ( main:11::anim:19::calculate_matrix_16:28 [ sx#10 sy#10 sz#10 calculate_matrix_16::sx#0 calculate_matrix_16::sy#0 calculate_matrix_16::t3#0 calculate_matrix_16::t4#0 calculate_matrix_16::t5#0 calculate_matrix_16::t6#0 calculate_matrix_16::t7#0 calculate_matrix_16::t8#0 ] ) always clobbers reg byte a -Removing always clobbered register reg byte a as potential for zp ZP_BYTE:62 [ calculate_matrix_16::t7#0 ] -Statement [155] (word~) calculate_matrix_16::$79 ← *((const byte*) SINH_HI#0 + (signed byte) calculate_matrix_16::t3#0) w= *((const byte*) SINH_LO#0 + (signed byte) calculate_matrix_16::t3#0) [ calculate_matrix_16::sx#0 calculate_matrix_16::sy#0 calculate_matrix_16::t3#0 calculate_matrix_16::t4#0 calculate_matrix_16::t5#0 calculate_matrix_16::t6#0 calculate_matrix_16::t7#0 calculate_matrix_16::t8#0 calculate_matrix_16::$79 ] ( main:11::anim:19::calculate_matrix_16:28 [ sx#10 sy#10 sz#10 calculate_matrix_16::sx#0 calculate_matrix_16::sy#0 calculate_matrix_16::t3#0 calculate_matrix_16::t4#0 calculate_matrix_16::t5#0 calculate_matrix_16::t6#0 calculate_matrix_16::t7#0 calculate_matrix_16::t8#0 calculate_matrix_16::$79 ] ) always clobbers reg byte a -Removing always clobbered register reg byte a as potential for zp ZP_BYTE:63 [ calculate_matrix_16::t8#0 ] -Statement [156] (word~) calculate_matrix_16::$80 ← *((const byte*) SINH_HI#0 + (signed byte) calculate_matrix_16::t4#0) w= *((const byte*) SINH_LO#0 + (signed byte) calculate_matrix_16::t4#0) [ calculate_matrix_16::sx#0 calculate_matrix_16::sy#0 calculate_matrix_16::t3#0 calculate_matrix_16::t4#0 calculate_matrix_16::t5#0 calculate_matrix_16::t6#0 calculate_matrix_16::t7#0 calculate_matrix_16::t8#0 calculate_matrix_16::$79 calculate_matrix_16::$80 ] ( main:11::anim:19::calculate_matrix_16:28 [ sx#10 sy#10 sz#10 calculate_matrix_16::sx#0 calculate_matrix_16::sy#0 calculate_matrix_16::t3#0 calculate_matrix_16::t4#0 calculate_matrix_16::t5#0 calculate_matrix_16::t6#0 calculate_matrix_16::t7#0 calculate_matrix_16::t8#0 calculate_matrix_16::$79 calculate_matrix_16::$80 ] ) always clobbers reg byte a -Statement [157] (word~) calculate_matrix_16::$81 ← *((const byte*) COSQ_HI#0 + (signed byte) calculate_matrix_16::t5#0) w= *((const byte*) COSH_LO#0 + (signed byte) calculate_matrix_16::t5#0) [ calculate_matrix_16::sx#0 calculate_matrix_16::sy#0 calculate_matrix_16::t3#0 calculate_matrix_16::t4#0 calculate_matrix_16::t5#0 calculate_matrix_16::t6#0 calculate_matrix_16::t7#0 calculate_matrix_16::t8#0 calculate_matrix_16::$79 calculate_matrix_16::$80 calculate_matrix_16::$81 ] ( main:11::anim:19::calculate_matrix_16:28 [ sx#10 sy#10 sz#10 calculate_matrix_16::sx#0 calculate_matrix_16::sy#0 calculate_matrix_16::t3#0 calculate_matrix_16::t4#0 calculate_matrix_16::t5#0 calculate_matrix_16::t6#0 calculate_matrix_16::t7#0 calculate_matrix_16::t8#0 calculate_matrix_16::$79 calculate_matrix_16::$80 calculate_matrix_16::$81 ] ) always clobbers reg byte a -Statement [158] (word~) calculate_matrix_16::$82 ← *((const byte*) COSQ_HI#0 + (signed byte) calculate_matrix_16::t6#0) w= *((const byte*) COSH_LO#0 + (signed byte) calculate_matrix_16::t6#0) [ calculate_matrix_16::sx#0 calculate_matrix_16::sy#0 calculate_matrix_16::t3#0 calculate_matrix_16::t4#0 calculate_matrix_16::t5#0 calculate_matrix_16::t6#0 calculate_matrix_16::t7#0 calculate_matrix_16::t8#0 calculate_matrix_16::$79 calculate_matrix_16::$80 calculate_matrix_16::$81 calculate_matrix_16::$82 ] ( main:11::anim:19::calculate_matrix_16:28 [ sx#10 sy#10 sz#10 calculate_matrix_16::sx#0 calculate_matrix_16::sy#0 calculate_matrix_16::t3#0 calculate_matrix_16::t4#0 calculate_matrix_16::t5#0 calculate_matrix_16::t6#0 calculate_matrix_16::t7#0 calculate_matrix_16::t8#0 calculate_matrix_16::$79 calculate_matrix_16::$80 calculate_matrix_16::$81 calculate_matrix_16::$82 ] ) always clobbers reg byte a -Statement [159] (word~) calculate_matrix_16::$83 ← *((const byte*) COSQ_HI#0 + (signed byte) calculate_matrix_16::t7#0) w= *((const byte*) COSH_LO#0 + (signed byte) calculate_matrix_16::t7#0) [ calculate_matrix_16::sx#0 calculate_matrix_16::sy#0 calculate_matrix_16::t3#0 calculate_matrix_16::t4#0 calculate_matrix_16::t5#0 calculate_matrix_16::t6#0 calculate_matrix_16::t7#0 calculate_matrix_16::t8#0 calculate_matrix_16::$79 calculate_matrix_16::$80 calculate_matrix_16::$81 calculate_matrix_16::$82 calculate_matrix_16::$83 ] ( main:11::anim:19::calculate_matrix_16:28 [ sx#10 sy#10 sz#10 calculate_matrix_16::sx#0 calculate_matrix_16::sy#0 calculate_matrix_16::t3#0 calculate_matrix_16::t4#0 calculate_matrix_16::t5#0 calculate_matrix_16::t6#0 calculate_matrix_16::t7#0 calculate_matrix_16::t8#0 calculate_matrix_16::$79 calculate_matrix_16::$80 calculate_matrix_16::$81 calculate_matrix_16::$82 calculate_matrix_16::$83 ] ) always clobbers reg byte a -Statement [160] (word~) calculate_matrix_16::$84 ← *((const byte*) COSQ_HI#0 + (signed byte) calculate_matrix_16::t8#0) w= *((const byte*) COSH_LO#0 + (signed byte) calculate_matrix_16::t8#0) [ calculate_matrix_16::sx#0 calculate_matrix_16::sy#0 calculate_matrix_16::t3#0 calculate_matrix_16::t4#0 calculate_matrix_16::t5#0 calculate_matrix_16::t6#0 calculate_matrix_16::t7#0 calculate_matrix_16::t8#0 calculate_matrix_16::$79 calculate_matrix_16::$80 calculate_matrix_16::$81 calculate_matrix_16::$82 calculate_matrix_16::$83 calculate_matrix_16::$84 ] ( main:11::anim:19::calculate_matrix_16:28 [ sx#10 sy#10 sz#10 calculate_matrix_16::sx#0 calculate_matrix_16::sy#0 calculate_matrix_16::t3#0 calculate_matrix_16::t4#0 calculate_matrix_16::t5#0 calculate_matrix_16::t6#0 calculate_matrix_16::t7#0 calculate_matrix_16::t8#0 calculate_matrix_16::$79 calculate_matrix_16::$80 calculate_matrix_16::$81 calculate_matrix_16::$82 calculate_matrix_16::$83 calculate_matrix_16::$84 ] ) always clobbers reg byte a -Statement [161] (signed word~) calculate_matrix_16::$28 ← (signed word)(word~) calculate_matrix_16::$79 - (signed word)(word~) calculate_matrix_16::$80 [ calculate_matrix_16::sx#0 calculate_matrix_16::sy#0 calculate_matrix_16::t3#0 calculate_matrix_16::t4#0 calculate_matrix_16::t5#0 calculate_matrix_16::t6#0 calculate_matrix_16::t7#0 calculate_matrix_16::t8#0 calculate_matrix_16::$79 calculate_matrix_16::$80 calculate_matrix_16::$81 calculate_matrix_16::$82 calculate_matrix_16::$83 calculate_matrix_16::$84 calculate_matrix_16::$28 ] ( main:11::anim:19::calculate_matrix_16:28 [ sx#10 sy#10 sz#10 calculate_matrix_16::sx#0 calculate_matrix_16::sy#0 calculate_matrix_16::t3#0 calculate_matrix_16::t4#0 calculate_matrix_16::t5#0 calculate_matrix_16::t6#0 calculate_matrix_16::t7#0 calculate_matrix_16::t8#0 calculate_matrix_16::$79 calculate_matrix_16::$80 calculate_matrix_16::$81 calculate_matrix_16::$82 calculate_matrix_16::$83 calculate_matrix_16::$84 calculate_matrix_16::$28 ] ) always clobbers reg byte a -Statement [162] (signed word~) calculate_matrix_16::$29 ← (signed word~) calculate_matrix_16::$28 + (signed word)(word~) calculate_matrix_16::$82 [ calculate_matrix_16::sx#0 calculate_matrix_16::sy#0 calculate_matrix_16::t3#0 calculate_matrix_16::t4#0 calculate_matrix_16::t5#0 calculate_matrix_16::t6#0 calculate_matrix_16::t7#0 calculate_matrix_16::t8#0 calculate_matrix_16::$79 calculate_matrix_16::$80 calculate_matrix_16::$81 calculate_matrix_16::$82 calculate_matrix_16::$83 calculate_matrix_16::$84 calculate_matrix_16::$29 ] ( main:11::anim:19::calculate_matrix_16:28 [ sx#10 sy#10 sz#10 calculate_matrix_16::sx#0 calculate_matrix_16::sy#0 calculate_matrix_16::t3#0 calculate_matrix_16::t4#0 calculate_matrix_16::t5#0 calculate_matrix_16::t6#0 calculate_matrix_16::t7#0 calculate_matrix_16::t8#0 calculate_matrix_16::$79 calculate_matrix_16::$80 calculate_matrix_16::$81 calculate_matrix_16::$82 calculate_matrix_16::$83 calculate_matrix_16::$84 calculate_matrix_16::$29 ] ) always clobbers reg byte a -Statement [163] (signed word~) calculate_matrix_16::$30 ← (signed word~) calculate_matrix_16::$29 - (signed word)(word~) calculate_matrix_16::$81 [ calculate_matrix_16::sx#0 calculate_matrix_16::sy#0 calculate_matrix_16::t3#0 calculate_matrix_16::t4#0 calculate_matrix_16::t5#0 calculate_matrix_16::t6#0 calculate_matrix_16::t7#0 calculate_matrix_16::t8#0 calculate_matrix_16::$79 calculate_matrix_16::$80 calculate_matrix_16::$81 calculate_matrix_16::$82 calculate_matrix_16::$83 calculate_matrix_16::$84 calculate_matrix_16::$30 ] ( main:11::anim:19::calculate_matrix_16:28 [ sx#10 sy#10 sz#10 calculate_matrix_16::sx#0 calculate_matrix_16::sy#0 calculate_matrix_16::t3#0 calculate_matrix_16::t4#0 calculate_matrix_16::t5#0 calculate_matrix_16::t6#0 calculate_matrix_16::t7#0 calculate_matrix_16::t8#0 calculate_matrix_16::$79 calculate_matrix_16::$80 calculate_matrix_16::$81 calculate_matrix_16::$82 calculate_matrix_16::$83 calculate_matrix_16::$84 calculate_matrix_16::$30 ] ) always clobbers reg byte a -Statement [164] (signed word~) calculate_matrix_16::$31 ← (signed word~) calculate_matrix_16::$30 + (signed word)(word~) calculate_matrix_16::$84 [ calculate_matrix_16::sx#0 calculate_matrix_16::sy#0 calculate_matrix_16::t3#0 calculate_matrix_16::t4#0 calculate_matrix_16::t5#0 calculate_matrix_16::t6#0 calculate_matrix_16::t7#0 calculate_matrix_16::t8#0 calculate_matrix_16::$79 calculate_matrix_16::$80 calculate_matrix_16::$81 calculate_matrix_16::$82 calculate_matrix_16::$83 calculate_matrix_16::$84 calculate_matrix_16::$31 ] ( main:11::anim:19::calculate_matrix_16:28 [ sx#10 sy#10 sz#10 calculate_matrix_16::sx#0 calculate_matrix_16::sy#0 calculate_matrix_16::t3#0 calculate_matrix_16::t4#0 calculate_matrix_16::t5#0 calculate_matrix_16::t6#0 calculate_matrix_16::t7#0 calculate_matrix_16::t8#0 calculate_matrix_16::$79 calculate_matrix_16::$80 calculate_matrix_16::$81 calculate_matrix_16::$82 calculate_matrix_16::$83 calculate_matrix_16::$84 calculate_matrix_16::$31 ] ) always clobbers reg byte a -Statement [165] (signed word~) calculate_matrix_16::$32 ← (signed word~) calculate_matrix_16::$31 - (signed word)(word~) calculate_matrix_16::$83 [ calculate_matrix_16::sx#0 calculate_matrix_16::sy#0 calculate_matrix_16::t3#0 calculate_matrix_16::t4#0 calculate_matrix_16::t5#0 calculate_matrix_16::t6#0 calculate_matrix_16::t7#0 calculate_matrix_16::t8#0 calculate_matrix_16::$79 calculate_matrix_16::$80 calculate_matrix_16::$81 calculate_matrix_16::$82 calculate_matrix_16::$83 calculate_matrix_16::$84 calculate_matrix_16::$32 ] ( main:11::anim:19::calculate_matrix_16:28 [ sx#10 sy#10 sz#10 calculate_matrix_16::sx#0 calculate_matrix_16::sy#0 calculate_matrix_16::t3#0 calculate_matrix_16::t4#0 calculate_matrix_16::t5#0 calculate_matrix_16::t6#0 calculate_matrix_16::t7#0 calculate_matrix_16::t8#0 calculate_matrix_16::$79 calculate_matrix_16::$80 calculate_matrix_16::$81 calculate_matrix_16::$82 calculate_matrix_16::$83 calculate_matrix_16::$84 calculate_matrix_16::$32 ] ) always clobbers reg byte a -Statement [166] (byte~) calculate_matrix_16::$33 ← > (signed word~) calculate_matrix_16::$32 [ calculate_matrix_16::sx#0 calculate_matrix_16::sy#0 calculate_matrix_16::t3#0 calculate_matrix_16::t4#0 calculate_matrix_16::t5#0 calculate_matrix_16::t6#0 calculate_matrix_16::t7#0 calculate_matrix_16::t8#0 calculate_matrix_16::$79 calculate_matrix_16::$80 calculate_matrix_16::$81 calculate_matrix_16::$82 calculate_matrix_16::$83 calculate_matrix_16::$84 calculate_matrix_16::$33 ] ( main:11::anim:19::calculate_matrix_16:28 [ sx#10 sy#10 sz#10 calculate_matrix_16::sx#0 calculate_matrix_16::sy#0 calculate_matrix_16::t3#0 calculate_matrix_16::t4#0 calculate_matrix_16::t5#0 calculate_matrix_16::t6#0 calculate_matrix_16::t7#0 calculate_matrix_16::t8#0 calculate_matrix_16::$79 calculate_matrix_16::$80 calculate_matrix_16::$81 calculate_matrix_16::$82 calculate_matrix_16::$83 calculate_matrix_16::$84 calculate_matrix_16::$33 ] ) always clobbers reg byte a -Statement [168] (signed word~) calculate_matrix_16::$35 ← (signed word)(word~) calculate_matrix_16::$79 + (signed word)(word~) calculate_matrix_16::$80 [ calculate_matrix_16::sx#0 calculate_matrix_16::sy#0 calculate_matrix_16::t3#0 calculate_matrix_16::t4#0 calculate_matrix_16::t5#0 calculate_matrix_16::t6#0 calculate_matrix_16::t7#0 calculate_matrix_16::t8#0 calculate_matrix_16::$81 calculate_matrix_16::$82 calculate_matrix_16::$83 calculate_matrix_16::$84 calculate_matrix_16::$35 ] ( main:11::anim:19::calculate_matrix_16:28 [ sx#10 sy#10 sz#10 calculate_matrix_16::sx#0 calculate_matrix_16::sy#0 calculate_matrix_16::t3#0 calculate_matrix_16::t4#0 calculate_matrix_16::t5#0 calculate_matrix_16::t6#0 calculate_matrix_16::t7#0 calculate_matrix_16::t8#0 calculate_matrix_16::$81 calculate_matrix_16::$82 calculate_matrix_16::$83 calculate_matrix_16::$84 calculate_matrix_16::$35 ] ) always clobbers reg byte a -Statement [169] (signed word~) calculate_matrix_16::$36 ← (signed word~) calculate_matrix_16::$35 + (signed word)(word~) calculate_matrix_16::$82 [ calculate_matrix_16::sx#0 calculate_matrix_16::sy#0 calculate_matrix_16::t3#0 calculate_matrix_16::t4#0 calculate_matrix_16::t5#0 calculate_matrix_16::t6#0 calculate_matrix_16::t7#0 calculate_matrix_16::t8#0 calculate_matrix_16::$81 calculate_matrix_16::$83 calculate_matrix_16::$84 calculate_matrix_16::$36 ] ( main:11::anim:19::calculate_matrix_16:28 [ sx#10 sy#10 sz#10 calculate_matrix_16::sx#0 calculate_matrix_16::sy#0 calculate_matrix_16::t3#0 calculate_matrix_16::t4#0 calculate_matrix_16::t5#0 calculate_matrix_16::t6#0 calculate_matrix_16::t7#0 calculate_matrix_16::t8#0 calculate_matrix_16::$81 calculate_matrix_16::$83 calculate_matrix_16::$84 calculate_matrix_16::$36 ] ) always clobbers reg byte a -Statement [170] (signed word~) calculate_matrix_16::$37 ← (signed word~) calculate_matrix_16::$36 - (signed word)(word~) calculate_matrix_16::$81 [ calculate_matrix_16::sx#0 calculate_matrix_16::sy#0 calculate_matrix_16::t3#0 calculate_matrix_16::t4#0 calculate_matrix_16::t5#0 calculate_matrix_16::t6#0 calculate_matrix_16::t7#0 calculate_matrix_16::t8#0 calculate_matrix_16::$83 calculate_matrix_16::$84 calculate_matrix_16::$37 ] ( main:11::anim:19::calculate_matrix_16:28 [ sx#10 sy#10 sz#10 calculate_matrix_16::sx#0 calculate_matrix_16::sy#0 calculate_matrix_16::t3#0 calculate_matrix_16::t4#0 calculate_matrix_16::t5#0 calculate_matrix_16::t6#0 calculate_matrix_16::t7#0 calculate_matrix_16::t8#0 calculate_matrix_16::$83 calculate_matrix_16::$84 calculate_matrix_16::$37 ] ) always clobbers reg byte a -Statement [171] (signed word~) calculate_matrix_16::$38 ← (signed word~) calculate_matrix_16::$37 + (signed word)(word~) calculate_matrix_16::$83 [ calculate_matrix_16::sx#0 calculate_matrix_16::sy#0 calculate_matrix_16::t3#0 calculate_matrix_16::t4#0 calculate_matrix_16::t5#0 calculate_matrix_16::t6#0 calculate_matrix_16::t7#0 calculate_matrix_16::t8#0 calculate_matrix_16::$84 calculate_matrix_16::$38 ] ( main:11::anim:19::calculate_matrix_16:28 [ sx#10 sy#10 sz#10 calculate_matrix_16::sx#0 calculate_matrix_16::sy#0 calculate_matrix_16::t3#0 calculate_matrix_16::t4#0 calculate_matrix_16::t5#0 calculate_matrix_16::t6#0 calculate_matrix_16::t7#0 calculate_matrix_16::t8#0 calculate_matrix_16::$84 calculate_matrix_16::$38 ] ) always clobbers reg byte a -Statement [172] (signed word~) calculate_matrix_16::$39 ← (signed word~) calculate_matrix_16::$38 - (signed word)(word~) calculate_matrix_16::$84 [ calculate_matrix_16::sx#0 calculate_matrix_16::sy#0 calculate_matrix_16::t3#0 calculate_matrix_16::t4#0 calculate_matrix_16::t5#0 calculate_matrix_16::t6#0 calculate_matrix_16::t7#0 calculate_matrix_16::t8#0 calculate_matrix_16::$39 ] ( main:11::anim:19::calculate_matrix_16:28 [ sx#10 sy#10 sz#10 calculate_matrix_16::sx#0 calculate_matrix_16::sy#0 calculate_matrix_16::t3#0 calculate_matrix_16::t4#0 calculate_matrix_16::t5#0 calculate_matrix_16::t6#0 calculate_matrix_16::t7#0 calculate_matrix_16::t8#0 calculate_matrix_16::$39 ] ) always clobbers reg byte a -Statement [173] (byte~) calculate_matrix_16::$40 ← > (signed word~) calculate_matrix_16::$39 [ calculate_matrix_16::sx#0 calculate_matrix_16::sy#0 calculate_matrix_16::t3#0 calculate_matrix_16::t4#0 calculate_matrix_16::t5#0 calculate_matrix_16::t6#0 calculate_matrix_16::t7#0 calculate_matrix_16::t8#0 calculate_matrix_16::$40 ] ( main:11::anim:19::calculate_matrix_16:28 [ sx#10 sy#10 sz#10 calculate_matrix_16::sx#0 calculate_matrix_16::sy#0 calculate_matrix_16::t3#0 calculate_matrix_16::t4#0 calculate_matrix_16::t5#0 calculate_matrix_16::t6#0 calculate_matrix_16::t7#0 calculate_matrix_16::t8#0 calculate_matrix_16::$40 ] ) always clobbers reg byte a -Statement [175] (word~) calculate_matrix_16::$85 ← *((const byte*) COSH_HI#0 + (signed byte) calculate_matrix_16::t3#0) w= *((const byte*) COSH_LO#0 + (signed byte) calculate_matrix_16::t3#0) [ calculate_matrix_16::sx#0 calculate_matrix_16::sy#0 calculate_matrix_16::t4#0 calculate_matrix_16::t5#0 calculate_matrix_16::t6#0 calculate_matrix_16::t7#0 calculate_matrix_16::t8#0 calculate_matrix_16::$85 ] ( main:11::anim:19::calculate_matrix_16:28 [ sx#10 sy#10 sz#10 calculate_matrix_16::sx#0 calculate_matrix_16::sy#0 calculate_matrix_16::t4#0 calculate_matrix_16::t5#0 calculate_matrix_16::t6#0 calculate_matrix_16::t7#0 calculate_matrix_16::t8#0 calculate_matrix_16::$85 ] ) always clobbers reg byte a -Statement [176] (word~) calculate_matrix_16::$86 ← *((const byte*) COSH_HI#0 + (signed byte) calculate_matrix_16::t4#0) w= *((const byte*) COSH_LO#0 + (signed byte) calculate_matrix_16::t4#0) [ calculate_matrix_16::sx#0 calculate_matrix_16::sy#0 calculate_matrix_16::t5#0 calculate_matrix_16::t6#0 calculate_matrix_16::t7#0 calculate_matrix_16::t8#0 calculate_matrix_16::$85 calculate_matrix_16::$86 ] ( main:11::anim:19::calculate_matrix_16:28 [ sx#10 sy#10 sz#10 calculate_matrix_16::sx#0 calculate_matrix_16::sy#0 calculate_matrix_16::t5#0 calculate_matrix_16::t6#0 calculate_matrix_16::t7#0 calculate_matrix_16::t8#0 calculate_matrix_16::$85 calculate_matrix_16::$86 ] ) always clobbers reg byte a -Statement [177] (word~) calculate_matrix_16::$87 ← *((const byte*) SINQ_HI#0 + (signed byte) calculate_matrix_16::t5#0) w= *((const byte*) SINH_LO#0 + (signed byte) calculate_matrix_16::t5#0) [ calculate_matrix_16::sx#0 calculate_matrix_16::sy#0 calculate_matrix_16::t6#0 calculate_matrix_16::t7#0 calculate_matrix_16::t8#0 calculate_matrix_16::$85 calculate_matrix_16::$86 calculate_matrix_16::$87 ] ( main:11::anim:19::calculate_matrix_16:28 [ sx#10 sy#10 sz#10 calculate_matrix_16::sx#0 calculate_matrix_16::sy#0 calculate_matrix_16::t6#0 calculate_matrix_16::t7#0 calculate_matrix_16::t8#0 calculate_matrix_16::$85 calculate_matrix_16::$86 calculate_matrix_16::$87 ] ) always clobbers reg byte a -Statement [178] (word~) calculate_matrix_16::$88 ← *((const byte*) SINQ_HI#0 + (signed byte) calculate_matrix_16::t6#0) w= *((const byte*) SINH_LO#0 + (signed byte) calculate_matrix_16::t6#0) [ calculate_matrix_16::sx#0 calculate_matrix_16::sy#0 calculate_matrix_16::t7#0 calculate_matrix_16::t8#0 calculate_matrix_16::$85 calculate_matrix_16::$86 calculate_matrix_16::$87 calculate_matrix_16::$88 ] ( main:11::anim:19::calculate_matrix_16:28 [ sx#10 sy#10 sz#10 calculate_matrix_16::sx#0 calculate_matrix_16::sy#0 calculate_matrix_16::t7#0 calculate_matrix_16::t8#0 calculate_matrix_16::$85 calculate_matrix_16::$86 calculate_matrix_16::$87 calculate_matrix_16::$88 ] ) always clobbers reg byte a -Statement [179] (word~) calculate_matrix_16::$89 ← *((const byte*) SINQ_HI#0 + (signed byte) calculate_matrix_16::t7#0) w= *((const byte*) SINH_LO#0 + (signed byte) calculate_matrix_16::t7#0) [ calculate_matrix_16::sx#0 calculate_matrix_16::sy#0 calculate_matrix_16::t8#0 calculate_matrix_16::$85 calculate_matrix_16::$86 calculate_matrix_16::$87 calculate_matrix_16::$88 calculate_matrix_16::$89 ] ( main:11::anim:19::calculate_matrix_16:28 [ sx#10 sy#10 sz#10 calculate_matrix_16::sx#0 calculate_matrix_16::sy#0 calculate_matrix_16::t8#0 calculate_matrix_16::$85 calculate_matrix_16::$86 calculate_matrix_16::$87 calculate_matrix_16::$88 calculate_matrix_16::$89 ] ) always clobbers reg byte a -Statement [180] (word~) calculate_matrix_16::$90 ← *((const byte*) SINQ_HI#0 + (signed byte) calculate_matrix_16::t8#0) w= *((const byte*) SINH_LO#0 + (signed byte) calculate_matrix_16::t8#0) [ calculate_matrix_16::sx#0 calculate_matrix_16::sy#0 calculate_matrix_16::$85 calculate_matrix_16::$86 calculate_matrix_16::$87 calculate_matrix_16::$88 calculate_matrix_16::$89 calculate_matrix_16::$90 ] ( main:11::anim:19::calculate_matrix_16:28 [ sx#10 sy#10 sz#10 calculate_matrix_16::sx#0 calculate_matrix_16::sy#0 calculate_matrix_16::$85 calculate_matrix_16::$86 calculate_matrix_16::$87 calculate_matrix_16::$88 calculate_matrix_16::$89 calculate_matrix_16::$90 ] ) always clobbers reg byte a -Statement [181] (signed word~) calculate_matrix_16::$48 ← (signed word)(word~) calculate_matrix_16::$85 + (signed word)(word~) calculate_matrix_16::$86 [ calculate_matrix_16::sx#0 calculate_matrix_16::sy#0 calculate_matrix_16::$85 calculate_matrix_16::$86 calculate_matrix_16::$87 calculate_matrix_16::$88 calculate_matrix_16::$89 calculate_matrix_16::$90 calculate_matrix_16::$48 ] ( main:11::anim:19::calculate_matrix_16:28 [ sx#10 sy#10 sz#10 calculate_matrix_16::sx#0 calculate_matrix_16::sy#0 calculate_matrix_16::$85 calculate_matrix_16::$86 calculate_matrix_16::$87 calculate_matrix_16::$88 calculate_matrix_16::$89 calculate_matrix_16::$90 calculate_matrix_16::$48 ] ) always clobbers reg byte a -Statement [182] (signed word~) calculate_matrix_16::$49 ← (signed word~) calculate_matrix_16::$48 + (signed word)(word~) calculate_matrix_16::$87 [ calculate_matrix_16::sx#0 calculate_matrix_16::sy#0 calculate_matrix_16::$85 calculate_matrix_16::$86 calculate_matrix_16::$87 calculate_matrix_16::$88 calculate_matrix_16::$89 calculate_matrix_16::$90 calculate_matrix_16::$49 ] ( main:11::anim:19::calculate_matrix_16:28 [ sx#10 sy#10 sz#10 calculate_matrix_16::sx#0 calculate_matrix_16::sy#0 calculate_matrix_16::$85 calculate_matrix_16::$86 calculate_matrix_16::$87 calculate_matrix_16::$88 calculate_matrix_16::$89 calculate_matrix_16::$90 calculate_matrix_16::$49 ] ) always clobbers reg byte a -Statement [183] (signed word~) calculate_matrix_16::$50 ← (signed word~) calculate_matrix_16::$49 - (signed word)(word~) calculate_matrix_16::$88 [ calculate_matrix_16::sx#0 calculate_matrix_16::sy#0 calculate_matrix_16::$85 calculate_matrix_16::$86 calculate_matrix_16::$87 calculate_matrix_16::$88 calculate_matrix_16::$89 calculate_matrix_16::$90 calculate_matrix_16::$50 ] ( main:11::anim:19::calculate_matrix_16:28 [ sx#10 sy#10 sz#10 calculate_matrix_16::sx#0 calculate_matrix_16::sy#0 calculate_matrix_16::$85 calculate_matrix_16::$86 calculate_matrix_16::$87 calculate_matrix_16::$88 calculate_matrix_16::$89 calculate_matrix_16::$90 calculate_matrix_16::$50 ] ) always clobbers reg byte a -Statement [184] (signed word~) calculate_matrix_16::$51 ← (signed word~) calculate_matrix_16::$50 - (signed word)(word~) calculate_matrix_16::$89 [ calculate_matrix_16::sx#0 calculate_matrix_16::sy#0 calculate_matrix_16::$85 calculate_matrix_16::$86 calculate_matrix_16::$87 calculate_matrix_16::$88 calculate_matrix_16::$89 calculate_matrix_16::$90 calculate_matrix_16::$51 ] ( main:11::anim:19::calculate_matrix_16:28 [ sx#10 sy#10 sz#10 calculate_matrix_16::sx#0 calculate_matrix_16::sy#0 calculate_matrix_16::$85 calculate_matrix_16::$86 calculate_matrix_16::$87 calculate_matrix_16::$88 calculate_matrix_16::$89 calculate_matrix_16::$90 calculate_matrix_16::$51 ] ) always clobbers reg byte a -Statement [185] (signed word~) calculate_matrix_16::$52 ← (signed word~) calculate_matrix_16::$51 - (signed word)(word~) calculate_matrix_16::$90 [ calculate_matrix_16::sx#0 calculate_matrix_16::sy#0 calculate_matrix_16::$85 calculate_matrix_16::$86 calculate_matrix_16::$87 calculate_matrix_16::$88 calculate_matrix_16::$89 calculate_matrix_16::$90 calculate_matrix_16::$52 ] ( main:11::anim:19::calculate_matrix_16:28 [ sx#10 sy#10 sz#10 calculate_matrix_16::sx#0 calculate_matrix_16::sy#0 calculate_matrix_16::$85 calculate_matrix_16::$86 calculate_matrix_16::$87 calculate_matrix_16::$88 calculate_matrix_16::$89 calculate_matrix_16::$90 calculate_matrix_16::$52 ] ) always clobbers reg byte a -Statement [186] (byte~) calculate_matrix_16::$53 ← > (signed word~) calculate_matrix_16::$52 [ calculate_matrix_16::sx#0 calculate_matrix_16::sy#0 calculate_matrix_16::$85 calculate_matrix_16::$86 calculate_matrix_16::$87 calculate_matrix_16::$88 calculate_matrix_16::$89 calculate_matrix_16::$90 calculate_matrix_16::$53 ] ( main:11::anim:19::calculate_matrix_16:28 [ sx#10 sy#10 sz#10 calculate_matrix_16::sx#0 calculate_matrix_16::sy#0 calculate_matrix_16::$85 calculate_matrix_16::$86 calculate_matrix_16::$87 calculate_matrix_16::$88 calculate_matrix_16::$89 calculate_matrix_16::$90 calculate_matrix_16::$53 ] ) always clobbers reg byte a -Statement [188] (signed word~) calculate_matrix_16::$55 ← (signed word)(word~) calculate_matrix_16::$86 - (signed word)(word~) calculate_matrix_16::$85 [ calculate_matrix_16::sx#0 calculate_matrix_16::sy#0 calculate_matrix_16::$87 calculate_matrix_16::$88 calculate_matrix_16::$89 calculate_matrix_16::$90 calculate_matrix_16::$55 ] ( main:11::anim:19::calculate_matrix_16:28 [ sx#10 sy#10 sz#10 calculate_matrix_16::sx#0 calculate_matrix_16::sy#0 calculate_matrix_16::$87 calculate_matrix_16::$88 calculate_matrix_16::$89 calculate_matrix_16::$90 calculate_matrix_16::$55 ] ) always clobbers reg byte a -Statement [189] (signed word~) calculate_matrix_16::$56 ← (signed word~) calculate_matrix_16::$55 + (signed word)(word~) calculate_matrix_16::$88 [ calculate_matrix_16::sx#0 calculate_matrix_16::sy#0 calculate_matrix_16::$87 calculate_matrix_16::$89 calculate_matrix_16::$90 calculate_matrix_16::$56 ] ( main:11::anim:19::calculate_matrix_16:28 [ sx#10 sy#10 sz#10 calculate_matrix_16::sx#0 calculate_matrix_16::sy#0 calculate_matrix_16::$87 calculate_matrix_16::$89 calculate_matrix_16::$90 calculate_matrix_16::$56 ] ) always clobbers reg byte a -Statement [190] (signed word~) calculate_matrix_16::$57 ← (signed word~) calculate_matrix_16::$56 - (signed word)(word~) calculate_matrix_16::$87 [ calculate_matrix_16::sx#0 calculate_matrix_16::sy#0 calculate_matrix_16::$89 calculate_matrix_16::$90 calculate_matrix_16::$57 ] ( main:11::anim:19::calculate_matrix_16:28 [ sx#10 sy#10 sz#10 calculate_matrix_16::sx#0 calculate_matrix_16::sy#0 calculate_matrix_16::$89 calculate_matrix_16::$90 calculate_matrix_16::$57 ] ) always clobbers reg byte a -Statement [191] (signed word~) calculate_matrix_16::$58 ← (signed word~) calculate_matrix_16::$57 - (signed word)(word~) calculate_matrix_16::$89 [ calculate_matrix_16::sx#0 calculate_matrix_16::sy#0 calculate_matrix_16::$90 calculate_matrix_16::$58 ] ( main:11::anim:19::calculate_matrix_16:28 [ sx#10 sy#10 sz#10 calculate_matrix_16::sx#0 calculate_matrix_16::sy#0 calculate_matrix_16::$90 calculate_matrix_16::$58 ] ) always clobbers reg byte a -Statement [192] (signed word~) calculate_matrix_16::$59 ← (signed word~) calculate_matrix_16::$58 - (signed word)(word~) calculate_matrix_16::$90 [ calculate_matrix_16::sx#0 calculate_matrix_16::sy#0 calculate_matrix_16::$59 ] ( main:11::anim:19::calculate_matrix_16:28 [ sx#10 sy#10 sz#10 calculate_matrix_16::sx#0 calculate_matrix_16::sy#0 calculate_matrix_16::$59 ] ) always clobbers reg byte a -Statement [193] (byte~) calculate_matrix_16::$60 ← > (signed word~) calculate_matrix_16::$59 [ calculate_matrix_16::sx#0 calculate_matrix_16::sy#0 calculate_matrix_16::$60 ] ( main:11::anim:19::calculate_matrix_16:28 [ sx#10 sy#10 sz#10 calculate_matrix_16::sx#0 calculate_matrix_16::sy#0 calculate_matrix_16::$60 ] ) always clobbers reg byte a -Statement [195] (signed byte) calculate_matrix_16::t9#0 ← (signed byte) calculate_matrix_16::sy#0 - (signed byte) calculate_matrix_16::sx#0 [ calculate_matrix_16::sx#0 calculate_matrix_16::sy#0 calculate_matrix_16::t9#0 ] ( main:11::anim:19::calculate_matrix_16:28 [ sx#10 sy#10 sz#10 calculate_matrix_16::sx#0 calculate_matrix_16::sy#0 calculate_matrix_16::t9#0 ] ) always clobbers reg byte a -Statement [196] (signed byte) calculate_matrix_16::t10#0 ← (signed byte) calculate_matrix_16::sy#0 + (signed byte) calculate_matrix_16::sx#0 [ calculate_matrix_16::t9#0 calculate_matrix_16::t10#0 ] ( main:11::anim:19::calculate_matrix_16:28 [ sx#10 sy#10 sz#10 calculate_matrix_16::t9#0 calculate_matrix_16::t10#0 ] ) always clobbers reg byte a -Removing always clobbered register reg byte a as potential for zp ZP_BYTE:132 [ calculate_matrix_16::t9#0 ] -Statement [197] (word~) calculate_matrix_16::$91 ← *((const byte*) SINH_HI#0 + (signed byte) calculate_matrix_16::t9#0) w= *((const byte*) SINH_LO#0 + (signed byte) calculate_matrix_16::t9#0) [ calculate_matrix_16::t9#0 calculate_matrix_16::t10#0 calculate_matrix_16::$91 ] ( main:11::anim:19::calculate_matrix_16:28 [ sx#10 sy#10 sz#10 calculate_matrix_16::t9#0 calculate_matrix_16::t10#0 calculate_matrix_16::$91 ] ) always clobbers reg byte a -Removing always clobbered register reg byte a as potential for zp ZP_BYTE:133 [ calculate_matrix_16::t10#0 ] -Statement [198] (word~) calculate_matrix_16::$92 ← *((const byte*) SINH_HI#0 + (signed byte) calculate_matrix_16::t10#0) w= *((const byte*) SINH_LO#0 + (signed byte) calculate_matrix_16::t10#0) [ calculate_matrix_16::t9#0 calculate_matrix_16::t10#0 calculate_matrix_16::$91 calculate_matrix_16::$92 ] ( main:11::anim:19::calculate_matrix_16:28 [ sx#10 sy#10 sz#10 calculate_matrix_16::t9#0 calculate_matrix_16::t10#0 calculate_matrix_16::$91 calculate_matrix_16::$92 ] ) always clobbers reg byte a -Statement [199] (signed word~) calculate_matrix_16::$66 ← (signed word)(word~) calculate_matrix_16::$91 - (signed word)(word~) calculate_matrix_16::$92 [ calculate_matrix_16::t9#0 calculate_matrix_16::t10#0 calculate_matrix_16::$66 ] ( main:11::anim:19::calculate_matrix_16:28 [ sx#10 sy#10 sz#10 calculate_matrix_16::t9#0 calculate_matrix_16::t10#0 calculate_matrix_16::$66 ] ) always clobbers reg byte a -Statement [200] (byte~) calculate_matrix_16::$67 ← > (signed word~) calculate_matrix_16::$66 [ calculate_matrix_16::t9#0 calculate_matrix_16::t10#0 calculate_matrix_16::$67 ] ( main:11::anim:19::calculate_matrix_16:28 [ sx#10 sy#10 sz#10 calculate_matrix_16::t9#0 calculate_matrix_16::t10#0 calculate_matrix_16::$67 ] ) always clobbers reg byte a -Statement [202] (word~) calculate_matrix_16::$93 ← *((const byte*) COSH_HI#0 + (signed byte) calculate_matrix_16::t9#0) w= *((const byte*) COSH_LO#0 + (signed byte) calculate_matrix_16::t9#0) [ calculate_matrix_16::t10#0 calculate_matrix_16::$93 ] ( main:11::anim:19::calculate_matrix_16:28 [ sx#10 sy#10 sz#10 calculate_matrix_16::t10#0 calculate_matrix_16::$93 ] ) always clobbers reg byte a -Statement [203] (word~) calculate_matrix_16::$94 ← *((const byte*) COSH_HI#0 + (signed byte) calculate_matrix_16::t10#0) w= *((const byte*) COSH_LO#0 + (signed byte) calculate_matrix_16::t10#0) [ calculate_matrix_16::$93 calculate_matrix_16::$94 ] ( main:11::anim:19::calculate_matrix_16:28 [ sx#10 sy#10 sz#10 calculate_matrix_16::$93 calculate_matrix_16::$94 ] ) always clobbers reg byte a -Statement [204] (signed word~) calculate_matrix_16::$71 ← (signed word)(word~) calculate_matrix_16::$93 + (signed word)(word~) calculate_matrix_16::$94 [ calculate_matrix_16::$71 ] ( main:11::anim:19::calculate_matrix_16:28 [ sx#10 sy#10 sz#10 calculate_matrix_16::$71 ] ) always clobbers reg byte a -Statement [205] (byte~) calculate_matrix_16::$72 ← > (signed word~) calculate_matrix_16::$71 [ calculate_matrix_16::$72 ] ( main:11::anim:19::calculate_matrix_16:28 [ sx#10 sy#10 sz#10 calculate_matrix_16::$72 ] ) always clobbers reg byte a -Statement [235] (byte*) print_sbyte_at::at#0 ← (const byte*) debug_print_init::at_line#0 + (byte) debug_print_init::c#2 [ print_sbyte_at::at#0 debug_print_init::c#2 debug_print_init::i#2 ] ( main:11::debug_print_init:17 [ print_sbyte_at::at#0 debug_print_init::c#2 debug_print_init::i#2 ] ) always clobbers reg byte a -Statement [236] (signed byte) print_sbyte_at::b#1 ← *((const signed byte[8]) xs#0 + (byte) debug_print_init::i#2) [ print_sbyte_at::b#1 print_sbyte_at::at#0 debug_print_init::c#2 debug_print_init::i#2 ] ( main:11::debug_print_init:17 [ print_sbyte_at::b#1 print_sbyte_at::at#0 debug_print_init::c#2 debug_print_init::i#2 ] ) always clobbers reg byte a -Statement [238] (byte*) print_sbyte_at::at#1 ← (const byte*) debug_print_init::at_line#0+(byte/signed byte/word/signed word/dword/signed dword) 40*(byte/signed byte/word/signed word/dword/signed dword) 1 + (byte) debug_print_init::c#2 [ print_sbyte_at::at#1 debug_print_init::c#2 debug_print_init::i#2 ] ( main:11::debug_print_init:17 [ print_sbyte_at::at#1 debug_print_init::c#2 debug_print_init::i#2 ] ) always clobbers reg byte a -Statement [239] (signed byte) print_sbyte_at::b#2 ← *((const signed byte[8]) ys#0 + (byte) debug_print_init::i#2) [ print_sbyte_at::b#2 print_sbyte_at::at#1 debug_print_init::c#2 debug_print_init::i#2 ] ( main:11::debug_print_init:17 [ print_sbyte_at::b#2 print_sbyte_at::at#1 debug_print_init::c#2 debug_print_init::i#2 ] ) always clobbers reg byte a -Statement [241] (byte*) print_sbyte_at::at#2 ← (const byte*) debug_print_init::at_line#0+(byte/signed byte/word/signed word/dword/signed dword) 40*(byte/signed byte/word/signed word/dword/signed dword) 2 + (byte) debug_print_init::c#2 [ print_sbyte_at::at#2 debug_print_init::c#2 debug_print_init::i#2 ] ( main:11::debug_print_init:17 [ print_sbyte_at::at#2 debug_print_init::c#2 debug_print_init::i#2 ] ) always clobbers reg byte a -Statement [242] (signed byte) print_sbyte_at::b#3 ← *((const signed byte[8]) zs#0 + (byte) debug_print_init::i#2) [ print_sbyte_at::b#3 print_sbyte_at::at#2 debug_print_init::c#2 debug_print_init::i#2 ] ( main:11::debug_print_init:17 [ print_sbyte_at::b#3 print_sbyte_at::at#2 debug_print_init::c#2 debug_print_init::i#2 ] ) always clobbers reg byte a -Statement [245] (byte) debug_print_init::col#0 ← (byte/signed byte/word/signed word/dword/signed dword) 8 + (byte) debug_print_init::i#2 [ debug_print_init::c#2 debug_print_init::i#2 debug_print_init::j#2 debug_print_init::col#0 ] ( main:11::debug_print_init:17 [ debug_print_init::c#2 debug_print_init::i#2 debug_print_init::j#2 debug_print_init::col#0 ] ) always clobbers reg byte a -Removing always clobbered register reg byte a as potential for zp ZP_BYTE:16 [ debug_print_init::j#2 debug_print_init::j#1 ] -Statement [246] (byte*~) debug_print_init::$59 ← (const byte*) debug_print_init::at_cols#0 + (byte) debug_print_init::c#2 [ debug_print_init::c#2 debug_print_init::i#2 debug_print_init::j#2 debug_print_init::col#0 debug_print_init::$59 ] ( main:11::debug_print_init:17 [ debug_print_init::c#2 debug_print_init::i#2 debug_print_init::j#2 debug_print_init::col#0 debug_print_init::$59 ] ) always clobbers reg byte a -Removing always clobbered register reg byte a as potential for zp ZP_BYTE:148 [ debug_print_init::col#0 ] -Statement [247] (byte*~) debug_print_init::$60 ← (byte*~) debug_print_init::$59 + (byte) debug_print_init::j#2 [ debug_print_init::c#2 debug_print_init::i#2 debug_print_init::j#2 debug_print_init::col#0 debug_print_init::$60 ] ( main:11::debug_print_init:17 [ debug_print_init::c#2 debug_print_init::i#2 debug_print_init::j#2 debug_print_init::col#0 debug_print_init::$60 ] ) always clobbers reg byte a -Statement [248] *((byte*~) debug_print_init::$60) ← (byte) debug_print_init::col#0 [ debug_print_init::c#2 debug_print_init::i#2 debug_print_init::j#2 debug_print_init::col#0 ] ( main:11::debug_print_init:17 [ debug_print_init::c#2 debug_print_init::i#2 debug_print_init::j#2 debug_print_init::col#0 ] ) always clobbers reg byte a reg byte y -Removing always clobbered register reg byte y as potential for zp ZP_BYTE:16 [ debug_print_init::j#2 debug_print_init::j#1 ] -Removing always clobbered register reg byte y as potential for zp ZP_BYTE:148 [ debug_print_init::col#0 ] -Statement [249] (byte*~) debug_print_init::$63 ← (const byte*) debug_print_init::at_cols#0+(byte/signed byte/word/signed word/dword/signed dword) 40*(byte/signed byte/word/signed word/dword/signed dword) 1 + (byte) debug_print_init::c#2 [ debug_print_init::c#2 debug_print_init::i#2 debug_print_init::j#2 debug_print_init::col#0 debug_print_init::$63 ] ( main:11::debug_print_init:17 [ debug_print_init::c#2 debug_print_init::i#2 debug_print_init::j#2 debug_print_init::col#0 debug_print_init::$63 ] ) always clobbers reg byte a -Statement [250] (byte*~) debug_print_init::$64 ← (byte*~) debug_print_init::$63 + (byte) debug_print_init::j#2 [ debug_print_init::c#2 debug_print_init::i#2 debug_print_init::j#2 debug_print_init::col#0 debug_print_init::$64 ] ( main:11::debug_print_init:17 [ debug_print_init::c#2 debug_print_init::i#2 debug_print_init::j#2 debug_print_init::col#0 debug_print_init::$64 ] ) always clobbers reg byte a -Statement [251] *((byte*~) debug_print_init::$64) ← (byte) debug_print_init::col#0 [ debug_print_init::c#2 debug_print_init::i#2 debug_print_init::j#2 debug_print_init::col#0 ] ( main:11::debug_print_init:17 [ debug_print_init::c#2 debug_print_init::i#2 debug_print_init::j#2 debug_print_init::col#0 ] ) always clobbers reg byte a reg byte y -Statement [252] (byte*~) debug_print_init::$67 ← (const byte*) debug_print_init::at_cols#0+(byte/signed byte/word/signed word/dword/signed dword) 40*(byte/signed byte/word/signed word/dword/signed dword) 2 + (byte) debug_print_init::c#2 [ debug_print_init::c#2 debug_print_init::i#2 debug_print_init::j#2 debug_print_init::col#0 debug_print_init::$67 ] ( main:11::debug_print_init:17 [ debug_print_init::c#2 debug_print_init::i#2 debug_print_init::j#2 debug_print_init::col#0 debug_print_init::$67 ] ) always clobbers reg byte a -Statement [253] (byte*~) debug_print_init::$68 ← (byte*~) debug_print_init::$67 + (byte) debug_print_init::j#2 [ debug_print_init::c#2 debug_print_init::i#2 debug_print_init::j#2 debug_print_init::col#0 debug_print_init::$68 ] ( main:11::debug_print_init:17 [ debug_print_init::c#2 debug_print_init::i#2 debug_print_init::j#2 debug_print_init::col#0 debug_print_init::$68 ] ) always clobbers reg byte a -Statement [254] *((byte*~) debug_print_init::$68) ← (byte) debug_print_init::col#0 [ debug_print_init::c#2 debug_print_init::i#2 debug_print_init::j#2 debug_print_init::col#0 ] ( main:11::debug_print_init:17 [ debug_print_init::c#2 debug_print_init::i#2 debug_print_init::j#2 debug_print_init::col#0 ] ) always clobbers reg byte a reg byte y -Statement [255] (byte*~) debug_print_init::$71 ← (const byte*) debug_print_init::at_cols#0+(byte/signed byte/word/signed word/dword/signed dword) 40*(byte/signed byte/word/signed word/dword/signed dword) 3 + (byte) debug_print_init::c#2 [ debug_print_init::c#2 debug_print_init::i#2 debug_print_init::j#2 debug_print_init::col#0 debug_print_init::$71 ] ( main:11::debug_print_init:17 [ debug_print_init::c#2 debug_print_init::i#2 debug_print_init::j#2 debug_print_init::col#0 debug_print_init::$71 ] ) always clobbers reg byte a -Statement [256] (byte*~) debug_print_init::$72 ← (byte*~) debug_print_init::$71 + (byte) debug_print_init::j#2 [ debug_print_init::c#2 debug_print_init::i#2 debug_print_init::j#2 debug_print_init::col#0 debug_print_init::$72 ] ( main:11::debug_print_init:17 [ debug_print_init::c#2 debug_print_init::i#2 debug_print_init::j#2 debug_print_init::col#0 debug_print_init::$72 ] ) always clobbers reg byte a -Statement [257] *((byte*~) debug_print_init::$72) ← (byte) debug_print_init::col#0 [ debug_print_init::c#2 debug_print_init::i#2 debug_print_init::j#2 debug_print_init::col#0 ] ( main:11::debug_print_init:17 [ debug_print_init::c#2 debug_print_init::i#2 debug_print_init::j#2 debug_print_init::col#0 ] ) always clobbers reg byte a reg byte y -Statement [258] (byte*~) debug_print_init::$75 ← (const byte*) debug_print_init::at_cols#0+(byte/signed byte/word/signed word/dword/signed dword) 40*(byte/signed byte/word/signed word/dword/signed dword) 4 + (byte) debug_print_init::c#2 [ debug_print_init::c#2 debug_print_init::i#2 debug_print_init::j#2 debug_print_init::col#0 debug_print_init::$75 ] ( main:11::debug_print_init:17 [ debug_print_init::c#2 debug_print_init::i#2 debug_print_init::j#2 debug_print_init::col#0 debug_print_init::$75 ] ) always clobbers reg byte a -Statement [259] (byte*~) debug_print_init::$76 ← (byte*~) debug_print_init::$75 + (byte) debug_print_init::j#2 [ debug_print_init::c#2 debug_print_init::i#2 debug_print_init::j#2 debug_print_init::col#0 debug_print_init::$76 ] ( main:11::debug_print_init:17 [ debug_print_init::c#2 debug_print_init::i#2 debug_print_init::j#2 debug_print_init::col#0 debug_print_init::$76 ] ) always clobbers reg byte a -Statement [260] *((byte*~) debug_print_init::$76) ← (byte) debug_print_init::col#0 [ debug_print_init::c#2 debug_print_init::i#2 debug_print_init::j#2 debug_print_init::col#0 ] ( main:11::debug_print_init:17 [ debug_print_init::c#2 debug_print_init::i#2 debug_print_init::j#2 debug_print_init::col#0 ] ) always clobbers reg byte a reg byte y -Statement [261] (byte*~) debug_print_init::$79 ← (const byte*) debug_print_init::at_cols#0+(byte/signed byte/word/signed word/dword/signed dword) 40*(byte/signed byte/word/signed word/dword/signed dword) 5 + (byte) debug_print_init::c#2 [ debug_print_init::c#2 debug_print_init::i#2 debug_print_init::j#2 debug_print_init::col#0 debug_print_init::$79 ] ( main:11::debug_print_init:17 [ debug_print_init::c#2 debug_print_init::i#2 debug_print_init::j#2 debug_print_init::col#0 debug_print_init::$79 ] ) always clobbers reg byte a -Statement [262] (byte*~) debug_print_init::$80 ← (byte*~) debug_print_init::$79 + (byte) debug_print_init::j#2 [ debug_print_init::c#2 debug_print_init::i#2 debug_print_init::j#2 debug_print_init::col#0 debug_print_init::$80 ] ( main:11::debug_print_init:17 [ debug_print_init::c#2 debug_print_init::i#2 debug_print_init::j#2 debug_print_init::col#0 debug_print_init::$80 ] ) always clobbers reg byte a -Statement [263] *((byte*~) debug_print_init::$80) ← (byte) debug_print_init::col#0 [ debug_print_init::c#2 debug_print_init::i#2 debug_print_init::j#2 debug_print_init::col#0 ] ( main:11::debug_print_init:17 [ debug_print_init::c#2 debug_print_init::i#2 debug_print_init::j#2 debug_print_init::col#0 ] ) always clobbers reg byte a reg byte y -Statement [264] (byte*~) debug_print_init::$83 ← (const byte*) debug_print_init::at_cols#0+(byte/signed byte/word/signed word/dword/signed dword) 40*(byte/signed byte/word/signed word/dword/signed dword) 6 + (byte) debug_print_init::c#2 [ debug_print_init::c#2 debug_print_init::i#2 debug_print_init::j#2 debug_print_init::col#0 debug_print_init::$83 ] ( main:11::debug_print_init:17 [ debug_print_init::c#2 debug_print_init::i#2 debug_print_init::j#2 debug_print_init::col#0 debug_print_init::$83 ] ) always clobbers reg byte a -Statement [265] (byte*~) debug_print_init::$84 ← (byte*~) debug_print_init::$83 + (byte) debug_print_init::j#2 [ debug_print_init::c#2 debug_print_init::i#2 debug_print_init::j#2 debug_print_init::col#0 debug_print_init::$84 ] ( main:11::debug_print_init:17 [ debug_print_init::c#2 debug_print_init::i#2 debug_print_init::j#2 debug_print_init::col#0 debug_print_init::$84 ] ) always clobbers reg byte a -Statement [266] *((byte*~) debug_print_init::$84) ← (byte) debug_print_init::col#0 [ debug_print_init::c#2 debug_print_init::i#2 debug_print_init::j#2 debug_print_init::col#0 ] ( main:11::debug_print_init:17 [ debug_print_init::c#2 debug_print_init::i#2 debug_print_init::j#2 debug_print_init::col#0 ] ) always clobbers reg byte a reg byte y -Statement [267] (byte*~) debug_print_init::$87 ← (const byte*) debug_print_init::at_cols#0+(byte/signed byte/word/signed word/dword/signed dword) 40*(byte/signed byte/word/signed word/dword/signed dword) 7 + (byte) debug_print_init::c#2 [ debug_print_init::c#2 debug_print_init::i#2 debug_print_init::j#2 debug_print_init::col#0 debug_print_init::$87 ] ( main:11::debug_print_init:17 [ debug_print_init::c#2 debug_print_init::i#2 debug_print_init::j#2 debug_print_init::col#0 debug_print_init::$87 ] ) always clobbers reg byte a -Statement [268] (byte*~) debug_print_init::$88 ← (byte*~) debug_print_init::$87 + (byte) debug_print_init::j#2 [ debug_print_init::c#2 debug_print_init::i#2 debug_print_init::j#2 debug_print_init::col#0 debug_print_init::$88 ] ( main:11::debug_print_init:17 [ debug_print_init::c#2 debug_print_init::i#2 debug_print_init::j#2 debug_print_init::col#0 debug_print_init::$88 ] ) always clobbers reg byte a -Statement [269] *((byte*~) debug_print_init::$88) ← (byte) debug_print_init::col#0 [ debug_print_init::c#2 debug_print_init::i#2 debug_print_init::j#2 debug_print_init::col#0 ] ( main:11::debug_print_init:17 [ debug_print_init::c#2 debug_print_init::i#2 debug_print_init::j#2 debug_print_init::col#0 ] ) always clobbers reg byte a reg byte y -Statement [270] (byte*~) debug_print_init::$91 ← (const byte*) debug_print_init::at_cols#0+(byte/signed byte/word/signed word/dword/signed dword) 40*(byte/signed byte/word/signed word/dword/signed dword) 8 + (byte) debug_print_init::c#2 [ debug_print_init::c#2 debug_print_init::i#2 debug_print_init::j#2 debug_print_init::col#0 debug_print_init::$91 ] ( main:11::debug_print_init:17 [ debug_print_init::c#2 debug_print_init::i#2 debug_print_init::j#2 debug_print_init::col#0 debug_print_init::$91 ] ) always clobbers reg byte a -Statement [271] (byte*~) debug_print_init::$92 ← (byte*~) debug_print_init::$91 + (byte) debug_print_init::j#2 [ debug_print_init::c#2 debug_print_init::i#2 debug_print_init::j#2 debug_print_init::col#0 debug_print_init::$92 ] ( main:11::debug_print_init:17 [ debug_print_init::c#2 debug_print_init::i#2 debug_print_init::j#2 debug_print_init::col#0 debug_print_init::$92 ] ) always clobbers reg byte a -Statement [272] *((byte*~) debug_print_init::$92) ← (byte) debug_print_init::col#0 [ debug_print_init::c#2 debug_print_init::i#2 debug_print_init::j#2 ] ( main:11::debug_print_init:17 [ debug_print_init::c#2 debug_print_init::i#2 debug_print_init::j#2 ] ) always clobbers reg byte a reg byte y -Statement [275] (byte) debug_print_init::c#1 ← (byte) debug_print_init::c#2 + (byte/signed byte/word/signed word/dword/signed dword) 4 [ debug_print_init::i#2 debug_print_init::c#1 ] ( main:11::debug_print_init:17 [ debug_print_init::i#2 debug_print_init::c#1 ] ) always clobbers reg byte a -Statement [281] if(*((byte*) print_str_at::str#13)!=(byte) '@') goto print_str_at::@2 [ print_str_at::str#13 print_str_at::at#13 ] ( main:11::debug_print_init:17::print_str_at:211 [ print_str_at::str#13 print_str_at::at#13 ] main:11::debug_print_init:17::print_str_at:213 [ print_str_at::str#13 print_str_at::at#13 ] main:11::debug_print_init:17::print_str_at:215 [ print_str_at::str#13 print_str_at::at#13 ] main:11::debug_print_init:17::print_str_at:217 [ print_str_at::str#13 print_str_at::at#13 ] main:11::debug_print_init:17::print_str_at:219 [ print_str_at::str#13 print_str_at::at#13 ] main:11::debug_print_init:17::print_str_at:221 [ print_str_at::str#13 print_str_at::at#13 ] main:11::debug_print_init:17::print_str_at:223 [ print_str_at::str#13 print_str_at::at#13 ] main:11::debug_print_init:17::print_str_at:225 [ print_str_at::str#13 print_str_at::at#13 ] main:11::debug_print_init:17::print_str_at:227 [ print_str_at::str#13 print_str_at::at#13 ] main:11::debug_print_init:17::print_str_at:229 [ print_str_at::str#13 print_str_at::at#13 ] main:11::debug_print_init:17::print_str_at:231 [ print_str_at::str#13 print_str_at::at#13 ] main:11::debug_print_init:17::print_str_at:233 [ print_str_at::str#13 print_str_at::at#13 ] ) always clobbers reg byte a reg byte y -Statement [283] *((byte*) print_str_at::at#13) ← *((byte*) print_str_at::str#13) [ print_str_at::str#13 print_str_at::at#13 ] ( main:11::debug_print_init:17::print_str_at:211 [ print_str_at::str#13 print_str_at::at#13 ] main:11::debug_print_init:17::print_str_at:213 [ print_str_at::str#13 print_str_at::at#13 ] main:11::debug_print_init:17::print_str_at:215 [ print_str_at::str#13 print_str_at::at#13 ] main:11::debug_print_init:17::print_str_at:217 [ print_str_at::str#13 print_str_at::at#13 ] main:11::debug_print_init:17::print_str_at:219 [ print_str_at::str#13 print_str_at::at#13 ] main:11::debug_print_init:17::print_str_at:221 [ print_str_at::str#13 print_str_at::at#13 ] main:11::debug_print_init:17::print_str_at:223 [ print_str_at::str#13 print_str_at::at#13 ] main:11::debug_print_init:17::print_str_at:225 [ print_str_at::str#13 print_str_at::at#13 ] main:11::debug_print_init:17::print_str_at:227 [ print_str_at::str#13 print_str_at::at#13 ] main:11::debug_print_init:17::print_str_at:229 [ print_str_at::str#13 print_str_at::at#13 ] main:11::debug_print_init:17::print_str_at:231 [ print_str_at::str#13 print_str_at::at#13 ] main:11::debug_print_init:17::print_str_at:233 [ print_str_at::str#13 print_str_at::at#13 ] ) always clobbers reg byte a reg byte y -Statement [288] *((byte*) print_cls::sc#2) ← (byte) ' ' [ print_cls::sc#2 ] ( main:11::debug_print_init:17::print_cls:209 [ print_cls::sc#2 ] ) always clobbers reg byte a reg byte y -Statement [290] if((byte*) print_cls::sc#1!=(const byte*) print_screen#0+(word/signed word/dword/signed dword) 1000) goto print_cls::@1 [ print_cls::sc#1 ] ( main:11::debug_print_init:17::print_cls:209 [ print_cls::sc#1 ] ) always clobbers reg byte a -Statement [292] *((const byte*) SPRITES_ENABLE#0) ← (byte/word/signed word/dword/signed dword) 255 [ ] ( main:11::sprites_init:14 [ ] ) always clobbers reg byte a -Statement [294] *((const byte*) sprites_init::sprites_ptr#0 + (byte) sprites_init::i#2) ← ((byte))(const byte*) SPRITE#0/(byte/signed byte/word/signed word/dword/signed dword) 64 [ sprites_init::i#2 ] ( main:11::sprites_init:14 [ sprites_init::i#2 ] ) always clobbers reg byte a -Removing always clobbered register reg byte a as potential for zp ZP_BYTE:23 [ sprites_init::i#2 sprites_init::i#1 ] -Statement [295] (byte/signed word/word/dword/signed dword~) sprites_init::$3 ← (byte/signed byte/word/signed word/dword/signed dword) 8 + (byte) sprites_init::i#2 [ sprites_init::i#2 sprites_init::$3 ] ( main:11::sprites_init:14 [ sprites_init::i#2 sprites_init::$3 ] ) always clobbers reg byte a +Statement [58] (signed byte) calculate_matrix::t1#0 ← (signed byte) calculate_matrix::sy#0 - (const signed byte) sz#0 [ calculate_matrix::sx#0 calculate_matrix::sy#0 calculate_matrix::t1#0 ] ( main:11::anim:17::calculate_matrix:25 [ sx#10 sy#10 calculate_matrix::sx#0 calculate_matrix::sy#0 calculate_matrix::t1#0 ] ) always clobbers reg byte a +Removing always clobbered register reg byte a as potential for zp ZP_BYTE:6 [ calculate_matrix::sx#0 ] +Removing always clobbered register reg byte a as potential for zp ZP_BYTE:7 [ calculate_matrix::sy#0 ] +Statement [59] (signed byte) calculate_matrix::t2#0 ← (signed byte) calculate_matrix::sy#0 + (const signed byte) sz#0 [ calculate_matrix::sx#0 calculate_matrix::sy#0 calculate_matrix::t1#0 calculate_matrix::t2#0 ] ( main:11::anim:17::calculate_matrix:25 [ sx#10 sy#10 calculate_matrix::sx#0 calculate_matrix::sy#0 calculate_matrix::t1#0 calculate_matrix::t2#0 ] ) always clobbers reg byte a +Removing always clobbered register reg byte a as potential for zp ZP_BYTE:14 [ calculate_matrix::t1#0 ] +Statement [62] (signed byte) calculate_matrix::t5#0 ← (signed byte) calculate_matrix::sx#0 + (signed byte) calculate_matrix::t2#0 [ calculate_matrix::sx#0 calculate_matrix::sy#0 calculate_matrix::t1#0 calculate_matrix::t2#0 calculate_matrix::t3#0 calculate_matrix::t4#0 calculate_matrix::t5#0 ] ( main:11::anim:17::calculate_matrix:25 [ sx#10 sy#10 calculate_matrix::sx#0 calculate_matrix::sy#0 calculate_matrix::t1#0 calculate_matrix::t2#0 calculate_matrix::t3#0 calculate_matrix::t4#0 calculate_matrix::t5#0 ] ) always clobbers reg byte a +Removing always clobbered register reg byte a as potential for zp ZP_BYTE:15 [ calculate_matrix::t2#0 ] +Removing always clobbered register reg byte a as potential for zp ZP_BYTE:16 [ calculate_matrix::t3#0 ] +Removing always clobbered register reg byte a as potential for zp ZP_BYTE:17 [ calculate_matrix::t4#0 ] +Statement [63] (signed byte) calculate_matrix::t6#0 ← (signed byte) calculate_matrix::sx#0 - (signed byte) calculate_matrix::t1#0 [ calculate_matrix::sx#0 calculate_matrix::sy#0 calculate_matrix::t1#0 calculate_matrix::t2#0 calculate_matrix::t3#0 calculate_matrix::t4#0 calculate_matrix::t5#0 calculate_matrix::t6#0 ] ( main:11::anim:17::calculate_matrix:25 [ sx#10 sy#10 calculate_matrix::sx#0 calculate_matrix::sy#0 calculate_matrix::t1#0 calculate_matrix::t2#0 calculate_matrix::t3#0 calculate_matrix::t4#0 calculate_matrix::t5#0 calculate_matrix::t6#0 ] ) always clobbers reg byte a +Removing always clobbered register reg byte a as potential for zp ZP_BYTE:18 [ calculate_matrix::t5#0 ] +Statement [64] (signed byte) calculate_matrix::t7#0 ← (signed byte) calculate_matrix::sx#0 + (signed byte) calculate_matrix::t1#0 [ calculate_matrix::sx#0 calculate_matrix::sy#0 calculate_matrix::t1#0 calculate_matrix::t2#0 calculate_matrix::t3#0 calculate_matrix::t4#0 calculate_matrix::t5#0 calculate_matrix::t6#0 calculate_matrix::t7#0 ] ( main:11::anim:17::calculate_matrix:25 [ sx#10 sy#10 calculate_matrix::sx#0 calculate_matrix::sy#0 calculate_matrix::t1#0 calculate_matrix::t2#0 calculate_matrix::t3#0 calculate_matrix::t4#0 calculate_matrix::t5#0 calculate_matrix::t6#0 calculate_matrix::t7#0 ] ) always clobbers reg byte a +Removing always clobbered register reg byte a as potential for zp ZP_BYTE:19 [ calculate_matrix::t6#0 ] +Statement [65] (signed byte) calculate_matrix::t8#0 ← (signed byte) calculate_matrix::t2#0 - (signed byte) calculate_matrix::sx#0 [ calculate_matrix::sx#0 calculate_matrix::sy#0 calculate_matrix::t1#0 calculate_matrix::t2#0 calculate_matrix::t3#0 calculate_matrix::t4#0 calculate_matrix::t5#0 calculate_matrix::t6#0 calculate_matrix::t7#0 calculate_matrix::t8#0 ] ( main:11::anim:17::calculate_matrix:25 [ sx#10 sy#10 calculate_matrix::sx#0 calculate_matrix::sy#0 calculate_matrix::t1#0 calculate_matrix::t2#0 calculate_matrix::t3#0 calculate_matrix::t4#0 calculate_matrix::t5#0 calculate_matrix::t6#0 calculate_matrix::t7#0 calculate_matrix::t8#0 ] ) always clobbers reg byte a +Removing always clobbered register reg byte a as potential for zp ZP_BYTE:20 [ calculate_matrix::t7#0 ] +Statement [66] (signed byte) calculate_matrix::t9#0 ← (signed byte) calculate_matrix::sy#0 - (signed byte) calculate_matrix::sx#0 [ calculate_matrix::sx#0 calculate_matrix::sy#0 calculate_matrix::t1#0 calculate_matrix::t2#0 calculate_matrix::t3#0 calculate_matrix::t4#0 calculate_matrix::t5#0 calculate_matrix::t6#0 calculate_matrix::t7#0 calculate_matrix::t8#0 calculate_matrix::t9#0 ] ( main:11::anim:17::calculate_matrix:25 [ sx#10 sy#10 calculate_matrix::sx#0 calculate_matrix::sy#0 calculate_matrix::t1#0 calculate_matrix::t2#0 calculate_matrix::t3#0 calculate_matrix::t4#0 calculate_matrix::t5#0 calculate_matrix::t6#0 calculate_matrix::t7#0 calculate_matrix::t8#0 calculate_matrix::t9#0 ] ) always clobbers reg byte a +Removing always clobbered register reg byte a as potential for zp ZP_BYTE:21 [ calculate_matrix::t8#0 ] +Statement [67] (signed byte) calculate_matrix::t10#0 ← (signed byte) calculate_matrix::sy#0 + (signed byte) calculate_matrix::sx#0 [ calculate_matrix::sy#0 calculate_matrix::t1#0 calculate_matrix::t2#0 calculate_matrix::t3#0 calculate_matrix::t4#0 calculate_matrix::t5#0 calculate_matrix::t6#0 calculate_matrix::t7#0 calculate_matrix::t8#0 calculate_matrix::t9#0 calculate_matrix::t10#0 ] ( main:11::anim:17::calculate_matrix:25 [ sx#10 sy#10 calculate_matrix::sy#0 calculate_matrix::t1#0 calculate_matrix::t2#0 calculate_matrix::t3#0 calculate_matrix::t4#0 calculate_matrix::t5#0 calculate_matrix::t6#0 calculate_matrix::t7#0 calculate_matrix::t8#0 calculate_matrix::t9#0 calculate_matrix::t10#0 ] ) always clobbers reg byte a +Removing always clobbered register reg byte a as potential for zp ZP_BYTE:22 [ calculate_matrix::t9#0 ] +Statement [68] (signed byte~) calculate_matrix::$10 ← *((const signed byte*) COSH#0 + (signed byte) calculate_matrix::t1#0) + *((const signed byte*) COSH#0 + (signed byte) calculate_matrix::t2#0) [ calculate_matrix::sy#0 calculate_matrix::t1#0 calculate_matrix::t2#0 calculate_matrix::t3#0 calculate_matrix::t4#0 calculate_matrix::t5#0 calculate_matrix::t6#0 calculate_matrix::t7#0 calculate_matrix::t8#0 calculate_matrix::t9#0 calculate_matrix::t10#0 calculate_matrix::$10 ] ( main:11::anim:17::calculate_matrix:25 [ sx#10 sy#10 calculate_matrix::sy#0 calculate_matrix::t1#0 calculate_matrix::t2#0 calculate_matrix::t3#0 calculate_matrix::t4#0 calculate_matrix::t5#0 calculate_matrix::t6#0 calculate_matrix::t7#0 calculate_matrix::t8#0 calculate_matrix::t9#0 calculate_matrix::t10#0 calculate_matrix::$10 ] ) always clobbers reg byte a +Removing always clobbered register reg byte a as potential for zp ZP_BYTE:23 [ calculate_matrix::t10#0 ] +Statement [70] (signed byte~) calculate_matrix::$11 ← *((const signed byte*) SINH#0 + (signed byte) calculate_matrix::t1#0) - *((const signed byte*) SINH#0 + (signed byte) calculate_matrix::t2#0) [ calculate_matrix::sy#0 calculate_matrix::t3#0 calculate_matrix::t4#0 calculate_matrix::t5#0 calculate_matrix::t6#0 calculate_matrix::t7#0 calculate_matrix::t8#0 calculate_matrix::t9#0 calculate_matrix::t10#0 calculate_matrix::$11 ] ( main:11::anim:17::calculate_matrix:25 [ sx#10 sy#10 calculate_matrix::sy#0 calculate_matrix::t3#0 calculate_matrix::t4#0 calculate_matrix::t5#0 calculate_matrix::t6#0 calculate_matrix::t7#0 calculate_matrix::t8#0 calculate_matrix::t9#0 calculate_matrix::t10#0 calculate_matrix::$11 ] ) always clobbers reg byte a +Statement [72] (signed byte~) calculate_matrix::$12 ← *((const signed byte*) SINH#0 + (signed byte) calculate_matrix::sy#0) + *((const signed byte*) SINH#0 + (signed byte) calculate_matrix::sy#0) [ calculate_matrix::t3#0 calculate_matrix::t4#0 calculate_matrix::t5#0 calculate_matrix::t6#0 calculate_matrix::t7#0 calculate_matrix::t8#0 calculate_matrix::t9#0 calculate_matrix::t10#0 calculate_matrix::$12 ] ( main:11::anim:17::calculate_matrix:25 [ sx#10 sy#10 calculate_matrix::t3#0 calculate_matrix::t4#0 calculate_matrix::t5#0 calculate_matrix::t6#0 calculate_matrix::t7#0 calculate_matrix::t8#0 calculate_matrix::t9#0 calculate_matrix::t10#0 calculate_matrix::$12 ] ) always clobbers reg byte a +Statement [74] (signed byte~) calculate_matrix::$13 ← *((const signed byte*) SINH#0+(const signed byte) sz#0 + (signed byte) calculate_matrix::t3#0) - *((const signed byte*) SINH#0+-(const signed byte) sz#0 + (signed byte) calculate_matrix::t4#0) [ calculate_matrix::t3#0 calculate_matrix::t4#0 calculate_matrix::t5#0 calculate_matrix::t6#0 calculate_matrix::t7#0 calculate_matrix::t8#0 calculate_matrix::t9#0 calculate_matrix::t10#0 calculate_matrix::$13 ] ( main:11::anim:17::calculate_matrix:25 [ sx#10 sy#10 calculate_matrix::t3#0 calculate_matrix::t4#0 calculate_matrix::t5#0 calculate_matrix::t6#0 calculate_matrix::t7#0 calculate_matrix::t8#0 calculate_matrix::t9#0 calculate_matrix::t10#0 calculate_matrix::$13 ] ) always clobbers reg byte a +Statement [75] (signed byte~) calculate_matrix::$14 ← (signed byte~) calculate_matrix::$13 + *((const signed byte*) COSQ#0 + (signed byte) calculate_matrix::t6#0) [ calculate_matrix::t3#0 calculate_matrix::t4#0 calculate_matrix::t5#0 calculate_matrix::t6#0 calculate_matrix::t7#0 calculate_matrix::t8#0 calculate_matrix::t9#0 calculate_matrix::t10#0 calculate_matrix::$14 ] ( main:11::anim:17::calculate_matrix:25 [ sx#10 sy#10 calculate_matrix::t3#0 calculate_matrix::t4#0 calculate_matrix::t5#0 calculate_matrix::t6#0 calculate_matrix::t7#0 calculate_matrix::t8#0 calculate_matrix::t9#0 calculate_matrix::t10#0 calculate_matrix::$14 ] ) always clobbers reg byte a +Potential register analysis [76] calculate_matrix::$15 ← calculate_matrix::$14 - *(COSQ#0 + calculate_matrix::t5#0) missing fragment vbsaa=vbsxx_minus_pbsc1_derefidx_vbsxx allocation: reg byte x [ calculate_matrix::$14 ] reg byte a [ calculate_matrix::$15 ] reg byte x [ calculate_matrix::t5#0 ] +Potential register analysis [76] calculate_matrix::$15 ← calculate_matrix::$14 - *(COSQ#0 + calculate_matrix::t5#0) missing fragment vbsaa=vbsyy_minus_pbsc1_derefidx_vbsyy allocation: reg byte y [ calculate_matrix::$14 ] reg byte a [ calculate_matrix::$15 ] reg byte y [ calculate_matrix::t5#0 ] +MISSING FRAGMENTS + vbsaa=vbsxx_minus_pbsc1_derefidx_vbsxx + vbsaa=vbsyy_minus_pbsc1_derefidx_vbsyy +Statement [76] (signed byte~) calculate_matrix::$15 ← (signed byte~) calculate_matrix::$14 - *((const signed byte*) COSQ#0 + (signed byte) calculate_matrix::t5#0) [ calculate_matrix::t3#0 calculate_matrix::t4#0 calculate_matrix::t5#0 calculate_matrix::t6#0 calculate_matrix::t7#0 calculate_matrix::t8#0 calculate_matrix::t9#0 calculate_matrix::t10#0 calculate_matrix::$15 ] ( main:11::anim:17::calculate_matrix:25 [ sx#10 sy#10 calculate_matrix::t3#0 calculate_matrix::t4#0 calculate_matrix::t5#0 calculate_matrix::t6#0 calculate_matrix::t7#0 calculate_matrix::t8#0 calculate_matrix::t9#0 calculate_matrix::t10#0 calculate_matrix::$15 ] ) always clobbers reg byte a +Statement [77] (signed byte~) calculate_matrix::$16 ← (signed byte~) calculate_matrix::$15 + *((const signed byte*) COSQ#0 + (signed byte) calculate_matrix::t8#0) [ calculate_matrix::t3#0 calculate_matrix::t4#0 calculate_matrix::t5#0 calculate_matrix::t6#0 calculate_matrix::t7#0 calculate_matrix::t8#0 calculate_matrix::t9#0 calculate_matrix::t10#0 calculate_matrix::$16 ] ( main:11::anim:17::calculate_matrix:25 [ sx#10 sy#10 calculate_matrix::t3#0 calculate_matrix::t4#0 calculate_matrix::t5#0 calculate_matrix::t6#0 calculate_matrix::t7#0 calculate_matrix::t8#0 calculate_matrix::t9#0 calculate_matrix::t10#0 calculate_matrix::$16 ] ) always clobbers reg byte a +Potential register analysis [78] calculate_matrix::$17 ← calculate_matrix::$16 - *(COSQ#0 + calculate_matrix::t7#0) missing fragment vbsaa=vbsxx_minus_pbsc1_derefidx_vbsxx allocation: reg byte x [ calculate_matrix::$16 ] reg byte x [ calculate_matrix::t7#0 ] reg byte a [ calculate_matrix::$17 ] +Potential register analysis [78] calculate_matrix::$17 ← calculate_matrix::$16 - *(COSQ#0 + calculate_matrix::t7#0) missing fragment vbsaa=vbsyy_minus_pbsc1_derefidx_vbsyy allocation: reg byte y [ calculate_matrix::$16 ] reg byte y [ calculate_matrix::t7#0 ] reg byte a [ calculate_matrix::$17 ] +MISSING FRAGMENTS + vbsaa=vbsxx_minus_pbsc1_derefidx_vbsxx + vbsaa=vbsyy_minus_pbsc1_derefidx_vbsyy +Statement [78] (signed byte~) calculate_matrix::$17 ← (signed byte~) calculate_matrix::$16 - *((const signed byte*) COSQ#0 + (signed byte) calculate_matrix::t7#0) [ calculate_matrix::t3#0 calculate_matrix::t4#0 calculate_matrix::t5#0 calculate_matrix::t6#0 calculate_matrix::t7#0 calculate_matrix::t8#0 calculate_matrix::t9#0 calculate_matrix::t10#0 calculate_matrix::$17 ] ( main:11::anim:17::calculate_matrix:25 [ sx#10 sy#10 calculate_matrix::t3#0 calculate_matrix::t4#0 calculate_matrix::t5#0 calculate_matrix::t6#0 calculate_matrix::t7#0 calculate_matrix::t8#0 calculate_matrix::t9#0 calculate_matrix::t10#0 calculate_matrix::$17 ] ) always clobbers reg byte a +Statement [80] (signed byte~) calculate_matrix::$18 ← *((const signed byte*) COSH#0 + (signed byte) calculate_matrix::t3#0) + *((const signed byte*) COSH#0 + (signed byte) calculate_matrix::t4#0) [ calculate_matrix::t3#0 calculate_matrix::t4#0 calculate_matrix::t5#0 calculate_matrix::t6#0 calculate_matrix::t7#0 calculate_matrix::t8#0 calculate_matrix::t9#0 calculate_matrix::t10#0 calculate_matrix::$18 ] ( main:11::anim:17::calculate_matrix:25 [ sx#10 sy#10 calculate_matrix::t3#0 calculate_matrix::t4#0 calculate_matrix::t5#0 calculate_matrix::t6#0 calculate_matrix::t7#0 calculate_matrix::t8#0 calculate_matrix::t9#0 calculate_matrix::t10#0 calculate_matrix::$18 ] ) always clobbers reg byte a +Statement [81] (signed byte~) calculate_matrix::$19 ← (signed byte~) calculate_matrix::$18 + *((const signed byte*) SINQ#0 + (signed byte) calculate_matrix::t5#0) [ calculate_matrix::t3#0 calculate_matrix::t4#0 calculate_matrix::t5#0 calculate_matrix::t6#0 calculate_matrix::t7#0 calculate_matrix::t8#0 calculate_matrix::t9#0 calculate_matrix::t10#0 calculate_matrix::$19 ] ( main:11::anim:17::calculate_matrix:25 [ sx#10 sy#10 calculate_matrix::t3#0 calculate_matrix::t4#0 calculate_matrix::t5#0 calculate_matrix::t6#0 calculate_matrix::t7#0 calculate_matrix::t8#0 calculate_matrix::t9#0 calculate_matrix::t10#0 calculate_matrix::$19 ] ) always clobbers reg byte a +Potential register analysis [82] calculate_matrix::$20 ← calculate_matrix::$19 - *(SINQ#0 + calculate_matrix::t6#0) missing fragment vbsaa=vbsxx_minus_pbsc1_derefidx_vbsxx allocation: reg byte a [ calculate_matrix::$20 ] reg byte x [ calculate_matrix::t6#0 ] reg byte x [ calculate_matrix::$19 ] +Potential register analysis [82] calculate_matrix::$20 ← calculate_matrix::$19 - *(SINQ#0 + calculate_matrix::t6#0) missing fragment vbsaa=vbsyy_minus_pbsc1_derefidx_vbsyy allocation: reg byte a [ calculate_matrix::$20 ] reg byte y [ calculate_matrix::t6#0 ] reg byte y [ calculate_matrix::$19 ] +MISSING FRAGMENTS + vbsaa=vbsxx_minus_pbsc1_derefidx_vbsxx + vbsaa=vbsyy_minus_pbsc1_derefidx_vbsyy +Statement [82] (signed byte~) calculate_matrix::$20 ← (signed byte~) calculate_matrix::$19 - *((const signed byte*) SINQ#0 + (signed byte) calculate_matrix::t6#0) [ calculate_matrix::t3#0 calculate_matrix::t4#0 calculate_matrix::t5#0 calculate_matrix::t6#0 calculate_matrix::t7#0 calculate_matrix::t8#0 calculate_matrix::t9#0 calculate_matrix::t10#0 calculate_matrix::$20 ] ( main:11::anim:17::calculate_matrix:25 [ sx#10 sy#10 calculate_matrix::t3#0 calculate_matrix::t4#0 calculate_matrix::t5#0 calculate_matrix::t6#0 calculate_matrix::t7#0 calculate_matrix::t8#0 calculate_matrix::t9#0 calculate_matrix::t10#0 calculate_matrix::$20 ] ) always clobbers reg byte a +Potential register analysis [83] calculate_matrix::$21 ← calculate_matrix::$20 - *(SINQ#0 + calculate_matrix::t7#0) missing fragment vbsaa=vbsxx_minus_pbsc1_derefidx_vbsxx allocation: reg byte a [ calculate_matrix::$21 ] reg byte x [ calculate_matrix::$20 ] reg byte x [ calculate_matrix::t7#0 ] +Potential register analysis [83] calculate_matrix::$21 ← calculate_matrix::$20 - *(SINQ#0 + calculate_matrix::t7#0) missing fragment vbsaa=vbsyy_minus_pbsc1_derefidx_vbsyy allocation: reg byte a [ calculate_matrix::$21 ] reg byte y [ calculate_matrix::$20 ] reg byte y [ calculate_matrix::t7#0 ] +MISSING FRAGMENTS + vbsaa=vbsxx_minus_pbsc1_derefidx_vbsxx + vbsaa=vbsyy_minus_pbsc1_derefidx_vbsyy +Statement [83] (signed byte~) calculate_matrix::$21 ← (signed byte~) calculate_matrix::$20 - *((const signed byte*) SINQ#0 + (signed byte) calculate_matrix::t7#0) [ calculate_matrix::t3#0 calculate_matrix::t4#0 calculate_matrix::t5#0 calculate_matrix::t6#0 calculate_matrix::t7#0 calculate_matrix::t8#0 calculate_matrix::t9#0 calculate_matrix::t10#0 calculate_matrix::$21 ] ( main:11::anim:17::calculate_matrix:25 [ sx#10 sy#10 calculate_matrix::t3#0 calculate_matrix::t4#0 calculate_matrix::t5#0 calculate_matrix::t6#0 calculate_matrix::t7#0 calculate_matrix::t8#0 calculate_matrix::t9#0 calculate_matrix::t10#0 calculate_matrix::$21 ] ) always clobbers reg byte a +Potential register analysis [84] calculate_matrix::$22 ← calculate_matrix::$21 - *(SINQ#0 + calculate_matrix::t8#0) missing fragment vbsaa=vbsxx_minus_pbsc1_derefidx_vbsxx allocation: reg byte x [ calculate_matrix::$21 ] reg byte a [ calculate_matrix::$22 ] reg byte x [ calculate_matrix::t8#0 ] +Potential register analysis [84] calculate_matrix::$22 ← calculate_matrix::$21 - *(SINQ#0 + calculate_matrix::t8#0) missing fragment vbsaa=vbsyy_minus_pbsc1_derefidx_vbsyy allocation: reg byte y [ calculate_matrix::$21 ] reg byte a [ calculate_matrix::$22 ] reg byte y [ calculate_matrix::t8#0 ] +MISSING FRAGMENTS + vbsaa=vbsxx_minus_pbsc1_derefidx_vbsxx + vbsaa=vbsyy_minus_pbsc1_derefidx_vbsyy +Statement [84] (signed byte~) calculate_matrix::$22 ← (signed byte~) calculate_matrix::$21 - *((const signed byte*) SINQ#0 + (signed byte) calculate_matrix::t8#0) [ calculate_matrix::t3#0 calculate_matrix::t4#0 calculate_matrix::t5#0 calculate_matrix::t6#0 calculate_matrix::t7#0 calculate_matrix::t8#0 calculate_matrix::t9#0 calculate_matrix::t10#0 calculate_matrix::$22 ] ( main:11::anim:17::calculate_matrix:25 [ sx#10 sy#10 calculate_matrix::t3#0 calculate_matrix::t4#0 calculate_matrix::t5#0 calculate_matrix::t6#0 calculate_matrix::t7#0 calculate_matrix::t8#0 calculate_matrix::t9#0 calculate_matrix::t10#0 calculate_matrix::$22 ] ) always clobbers reg byte a +Statement [86] (signed byte~) calculate_matrix::$23 ← *((const signed byte*) SINH#0 + (signed byte) calculate_matrix::t9#0) - *((const signed byte*) SINH#0 + (signed byte) calculate_matrix::t10#0) [ calculate_matrix::t3#0 calculate_matrix::t4#0 calculate_matrix::t5#0 calculate_matrix::t6#0 calculate_matrix::t7#0 calculate_matrix::t8#0 calculate_matrix::t9#0 calculate_matrix::t10#0 calculate_matrix::$23 ] ( main:11::anim:17::calculate_matrix:25 [ sx#10 sy#10 calculate_matrix::t3#0 calculate_matrix::t4#0 calculate_matrix::t5#0 calculate_matrix::t6#0 calculate_matrix::t7#0 calculate_matrix::t8#0 calculate_matrix::t9#0 calculate_matrix::t10#0 calculate_matrix::$23 ] ) always clobbers reg byte a +Statement [88] (signed byte~) calculate_matrix::$24 ← *((const signed byte*) COSH#0 + (signed byte) calculate_matrix::t4#0) - *((const signed byte*) COSH#0 + (signed byte) calculate_matrix::t3#0) [ calculate_matrix::t3#0 calculate_matrix::t4#0 calculate_matrix::t5#0 calculate_matrix::t6#0 calculate_matrix::t7#0 calculate_matrix::t8#0 calculate_matrix::t9#0 calculate_matrix::t10#0 calculate_matrix::$24 ] ( main:11::anim:17::calculate_matrix:25 [ sx#10 sy#10 calculate_matrix::t3#0 calculate_matrix::t4#0 calculate_matrix::t5#0 calculate_matrix::t6#0 calculate_matrix::t7#0 calculate_matrix::t8#0 calculate_matrix::t9#0 calculate_matrix::t10#0 calculate_matrix::$24 ] ) always clobbers reg byte a +Statement [89] (signed byte~) calculate_matrix::$25 ← (signed byte~) calculate_matrix::$24 + *((const signed byte*) SINQ#0 + (signed byte) calculate_matrix::t6#0) [ calculate_matrix::t3#0 calculate_matrix::t4#0 calculate_matrix::t5#0 calculate_matrix::t6#0 calculate_matrix::t7#0 calculate_matrix::t8#0 calculate_matrix::t9#0 calculate_matrix::t10#0 calculate_matrix::$25 ] ( main:11::anim:17::calculate_matrix:25 [ sx#10 sy#10 calculate_matrix::t3#0 calculate_matrix::t4#0 calculate_matrix::t5#0 calculate_matrix::t6#0 calculate_matrix::t7#0 calculate_matrix::t8#0 calculate_matrix::t9#0 calculate_matrix::t10#0 calculate_matrix::$25 ] ) always clobbers reg byte a +Potential register analysis [90] calculate_matrix::$26 ← calculate_matrix::$25 - *(SINQ#0 + calculate_matrix::t5#0) missing fragment vbsaa=vbsxx_minus_pbsc1_derefidx_vbsxx allocation: reg byte x [ calculate_matrix::$25 ] reg byte a [ calculate_matrix::$26 ] reg byte x [ calculate_matrix::t5#0 ] +Potential register analysis [90] calculate_matrix::$26 ← calculate_matrix::$25 - *(SINQ#0 + calculate_matrix::t5#0) missing fragment vbsaa=vbsyy_minus_pbsc1_derefidx_vbsyy allocation: reg byte y [ calculate_matrix::$25 ] reg byte a [ calculate_matrix::$26 ] reg byte y [ calculate_matrix::t5#0 ] +MISSING FRAGMENTS + vbsaa=vbsxx_minus_pbsc1_derefidx_vbsxx + vbsaa=vbsyy_minus_pbsc1_derefidx_vbsyy +Statement [90] (signed byte~) calculate_matrix::$26 ← (signed byte~) calculate_matrix::$25 - *((const signed byte*) SINQ#0 + (signed byte) calculate_matrix::t5#0) [ calculate_matrix::t3#0 calculate_matrix::t4#0 calculate_matrix::t5#0 calculate_matrix::t6#0 calculate_matrix::t7#0 calculate_matrix::t8#0 calculate_matrix::t9#0 calculate_matrix::t10#0 calculate_matrix::$26 ] ( main:11::anim:17::calculate_matrix:25 [ sx#10 sy#10 calculate_matrix::t3#0 calculate_matrix::t4#0 calculate_matrix::t5#0 calculate_matrix::t6#0 calculate_matrix::t7#0 calculate_matrix::t8#0 calculate_matrix::t9#0 calculate_matrix::t10#0 calculate_matrix::$26 ] ) always clobbers reg byte a +Potential register analysis [91] calculate_matrix::$27 ← calculate_matrix::$26 - *(SINQ#0 + calculate_matrix::t8#0) missing fragment vbsaa=vbsxx_minus_pbsc1_derefidx_vbsxx allocation: reg byte a [ calculate_matrix::$27 ] reg byte x [ calculate_matrix::$26 ] reg byte x [ calculate_matrix::t8#0 ] +Potential register analysis [91] calculate_matrix::$27 ← calculate_matrix::$26 - *(SINQ#0 + calculate_matrix::t8#0) missing fragment vbsaa=vbsyy_minus_pbsc1_derefidx_vbsyy allocation: reg byte a [ calculate_matrix::$27 ] reg byte y [ calculate_matrix::$26 ] reg byte y [ calculate_matrix::t8#0 ] +MISSING FRAGMENTS + vbsaa=vbsxx_minus_pbsc1_derefidx_vbsxx + vbsaa=vbsyy_minus_pbsc1_derefidx_vbsyy +Statement [91] (signed byte~) calculate_matrix::$27 ← (signed byte~) calculate_matrix::$26 - *((const signed byte*) SINQ#0 + (signed byte) calculate_matrix::t8#0) [ calculate_matrix::t3#0 calculate_matrix::t4#0 calculate_matrix::t5#0 calculate_matrix::t6#0 calculate_matrix::t7#0 calculate_matrix::t8#0 calculate_matrix::t9#0 calculate_matrix::t10#0 calculate_matrix::$27 ] ( main:11::anim:17::calculate_matrix:25 [ sx#10 sy#10 calculate_matrix::t3#0 calculate_matrix::t4#0 calculate_matrix::t5#0 calculate_matrix::t6#0 calculate_matrix::t7#0 calculate_matrix::t8#0 calculate_matrix::t9#0 calculate_matrix::t10#0 calculate_matrix::$27 ] ) always clobbers reg byte a +Potential register analysis [92] calculate_matrix::$28 ← calculate_matrix::$27 - *(SINQ#0 + calculate_matrix::t7#0) missing fragment vbsaa=vbsxx_minus_pbsc1_derefidx_vbsxx allocation: reg byte x [ calculate_matrix::$27 ] reg byte x [ calculate_matrix::t7#0 ] reg byte a [ calculate_matrix::$28 ] +Potential register analysis [92] calculate_matrix::$28 ← calculate_matrix::$27 - *(SINQ#0 + calculate_matrix::t7#0) missing fragment vbsaa=vbsyy_minus_pbsc1_derefidx_vbsyy allocation: reg byte y [ calculate_matrix::$27 ] reg byte y [ calculate_matrix::t7#0 ] reg byte a [ calculate_matrix::$28 ] +MISSING FRAGMENTS + vbsaa=vbsxx_minus_pbsc1_derefidx_vbsxx + vbsaa=vbsyy_minus_pbsc1_derefidx_vbsyy +Statement [92] (signed byte~) calculate_matrix::$28 ← (signed byte~) calculate_matrix::$27 - *((const signed byte*) SINQ#0 + (signed byte) calculate_matrix::t7#0) [ calculate_matrix::t3#0 calculate_matrix::t4#0 calculate_matrix::t5#0 calculate_matrix::t6#0 calculate_matrix::t7#0 calculate_matrix::t8#0 calculate_matrix::t9#0 calculate_matrix::t10#0 calculate_matrix::$28 ] ( main:11::anim:17::calculate_matrix:25 [ sx#10 sy#10 calculate_matrix::t3#0 calculate_matrix::t4#0 calculate_matrix::t5#0 calculate_matrix::t6#0 calculate_matrix::t7#0 calculate_matrix::t8#0 calculate_matrix::t9#0 calculate_matrix::t10#0 calculate_matrix::$28 ] ) always clobbers reg byte a +Statement [94] (signed byte~) calculate_matrix::$29 ← *((const signed byte*) SINH#0 + (signed byte) calculate_matrix::t3#0) + *((const signed byte*) SINH#0 + (signed byte) calculate_matrix::t4#0) [ calculate_matrix::t5#0 calculate_matrix::t6#0 calculate_matrix::t7#0 calculate_matrix::t8#0 calculate_matrix::t9#0 calculate_matrix::t10#0 calculate_matrix::$29 ] ( main:11::anim:17::calculate_matrix:25 [ sx#10 sy#10 calculate_matrix::t5#0 calculate_matrix::t6#0 calculate_matrix::t7#0 calculate_matrix::t8#0 calculate_matrix::t9#0 calculate_matrix::t10#0 calculate_matrix::$29 ] ) always clobbers reg byte a +Statement [95] (signed byte~) calculate_matrix::$30 ← (signed byte~) calculate_matrix::$29 + *((const signed byte*) COSQ#0 + (signed byte) calculate_matrix::t6#0) [ calculate_matrix::t5#0 calculate_matrix::t7#0 calculate_matrix::t8#0 calculate_matrix::t9#0 calculate_matrix::t10#0 calculate_matrix::$30 ] ( main:11::anim:17::calculate_matrix:25 [ sx#10 sy#10 calculate_matrix::t5#0 calculate_matrix::t7#0 calculate_matrix::t8#0 calculate_matrix::t9#0 calculate_matrix::t10#0 calculate_matrix::$30 ] ) always clobbers reg byte a +Potential register analysis [96] calculate_matrix::$31 ← calculate_matrix::$30 - *(COSQ#0 + calculate_matrix::t5#0) missing fragment vbsaa=vbsxx_minus_pbsc1_derefidx_vbsxx allocation: reg byte a [ calculate_matrix::$31 ] reg byte x [ calculate_matrix::t5#0 ] reg byte x [ calculate_matrix::$30 ] +Potential register analysis [96] calculate_matrix::$31 ← calculate_matrix::$30 - *(COSQ#0 + calculate_matrix::t5#0) missing fragment vbsaa=vbsyy_minus_pbsc1_derefidx_vbsyy allocation: reg byte a [ calculate_matrix::$31 ] reg byte y [ calculate_matrix::t5#0 ] reg byte y [ calculate_matrix::$30 ] +MISSING FRAGMENTS + vbsaa=vbsxx_minus_pbsc1_derefidx_vbsxx + vbsaa=vbsyy_minus_pbsc1_derefidx_vbsyy +Statement [96] (signed byte~) calculate_matrix::$31 ← (signed byte~) calculate_matrix::$30 - *((const signed byte*) COSQ#0 + (signed byte) calculate_matrix::t5#0) [ calculate_matrix::t7#0 calculate_matrix::t8#0 calculate_matrix::t9#0 calculate_matrix::t10#0 calculate_matrix::$31 ] ( main:11::anim:17::calculate_matrix:25 [ sx#10 sy#10 calculate_matrix::t7#0 calculate_matrix::t8#0 calculate_matrix::t9#0 calculate_matrix::t10#0 calculate_matrix::$31 ] ) always clobbers reg byte a +Statement [97] (signed byte~) calculate_matrix::$32 ← (signed byte~) calculate_matrix::$31 + *((const signed byte*) COSQ#0 + (signed byte) calculate_matrix::t7#0) [ calculate_matrix::t8#0 calculate_matrix::t9#0 calculate_matrix::t10#0 calculate_matrix::$32 ] ( main:11::anim:17::calculate_matrix:25 [ sx#10 sy#10 calculate_matrix::t8#0 calculate_matrix::t9#0 calculate_matrix::t10#0 calculate_matrix::$32 ] ) always clobbers reg byte a +Potential register analysis [98] calculate_matrix::$33 ← calculate_matrix::$32 - *(COSQ#0 + calculate_matrix::t8#0) missing fragment vbsaa=vbsxx_minus_pbsc1_derefidx_vbsxx allocation: reg byte x [ calculate_matrix::$32 ] reg byte a [ calculate_matrix::$33 ] reg byte x [ calculate_matrix::t8#0 ] +Potential register analysis [98] calculate_matrix::$33 ← calculate_matrix::$32 - *(COSQ#0 + calculate_matrix::t8#0) missing fragment vbsaa=vbsyy_minus_pbsc1_derefidx_vbsyy allocation: reg byte y [ calculate_matrix::$32 ] reg byte a [ calculate_matrix::$33 ] reg byte y [ calculate_matrix::t8#0 ] +MISSING FRAGMENTS + vbsaa=vbsxx_minus_pbsc1_derefidx_vbsxx + vbsaa=vbsyy_minus_pbsc1_derefidx_vbsyy +Statement [98] (signed byte~) calculate_matrix::$33 ← (signed byte~) calculate_matrix::$32 - *((const signed byte*) COSQ#0 + (signed byte) calculate_matrix::t8#0) [ calculate_matrix::t9#0 calculate_matrix::t10#0 calculate_matrix::$33 ] ( main:11::anim:17::calculate_matrix:25 [ sx#10 sy#10 calculate_matrix::t9#0 calculate_matrix::t10#0 calculate_matrix::$33 ] ) always clobbers reg byte a +Statement [100] (signed byte~) calculate_matrix::$34 ← *((const signed byte*) COSH#0 + (signed byte) calculate_matrix::t9#0) + *((const signed byte*) COSH#0 + (signed byte) calculate_matrix::t10#0) [ calculate_matrix::$34 ] ( main:11::anim:17::calculate_matrix:25 [ sx#10 sy#10 calculate_matrix::$34 ] ) always clobbers reg byte a +Statement [103] *((const byte*) SPRITES_ENABLE#0) ← (byte/word/signed word/dword/signed dword) 255 [ ] ( main:11::sprites_init:14 [ ] ) always clobbers reg byte a +Statement [105] *((const byte*) sprites_init::sprites_ptr#0 + (byte) sprites_init::i#2) ← ((byte))(const byte*) SPRITE#0/(byte/signed byte/word/signed word/dword/signed dword) 64 [ sprites_init::i#2 ] ( main:11::sprites_init:14 [ sprites_init::i#2 ] ) always clobbers reg byte a +Removing always clobbered register reg byte a as potential for zp ZP_BYTE:5 [ sprites_init::i#2 sprites_init::i#1 ] +Statement [106] *((const byte*) SPRITES_COLS#0 + (byte) sprites_init::i#2) ← (const byte) GREEN#0 [ sprites_init::i#2 ] ( main:11::sprites_init:14 [ sprites_init::i#2 ] ) always clobbers reg byte a Statement [15] *((const word*) psp1#0) ← ((word))(const byte*) mulf_sqr1#0 [ ] ( main:11 [ ] ) always clobbers reg byte a Statement [16] *((const word*) psp2#0) ← ((word))(const byte*) mulf_sqr2#0 [ ] ( main:11 [ ] ) always clobbers reg byte a -Statement [23] if(*((const byte*) RASTER#0)!=(byte/word/signed word/dword/signed dword) 255) goto anim::@4 [ sx#10 sy#10 sz#10 ] ( main:11::anim:19 [ sx#10 sy#10 sz#10 ] ) always clobbers reg byte a -Statement [37] *((const signed byte[8]) xrs#0 + (byte) anim::i#2) ← *((const signed byte*) xr#0) [ sx#10 sy#10 sz#10 anim::i#2 ] ( main:11::anim:19 [ sx#10 sy#10 sz#10 anim::i#2 ] ) always clobbers reg byte a reg byte y -Statement [38] *((const signed byte[8]) yrs#0 + (byte) anim::i#2) ← *((const signed byte*) yr#0) [ sx#10 sy#10 sz#10 anim::i#2 ] ( main:11::anim:19 [ sx#10 sy#10 sz#10 anim::i#2 ] ) always clobbers reg byte a reg byte y -Statement [39] *((const signed byte[8]) zrs#0 + (byte) anim::i#2) ← *((const signed byte*) zr#0) [ sx#10 sy#10 sz#10 anim::i#2 ] ( main:11::anim:19 [ sx#10 sy#10 sz#10 anim::i#2 ] ) always clobbers reg byte a reg byte y -Statement [40] *((const signed byte[8]) pps#0 + (byte) anim::i#2) ← *((const signed byte*) pp#0) [ sx#10 sy#10 sz#10 anim::i#2 ] ( main:11::anim:19 [ sx#10 sy#10 sz#10 anim::i#2 ] ) always clobbers reg byte a reg byte y -Statement [41] *((const signed byte[8]) xps#0 + (byte) anim::i#2) ← *((const signed byte*) xp#0) [ sx#10 sy#10 sz#10 anim::i#2 ] ( main:11::anim:19 [ sx#10 sy#10 sz#10 anim::i#2 ] ) always clobbers reg byte a reg byte y -Statement [42] *((const signed byte[8]) yps#0 + (byte) anim::i#2) ← *((const signed byte*) yp#0) [ sx#10 sy#10 sz#10 anim::i#2 ] ( main:11::anim:19 [ sx#10 sy#10 sz#10 anim::i#2 ] ) always clobbers reg byte a reg byte y -Statement [43] (byte) anim::i2#0 ← (byte) anim::i#2 << (byte/signed byte/word/signed word/dword/signed dword) 1 [ sx#10 sy#10 sz#10 anim::i#2 anim::i2#0 ] ( main:11::anim:19 [ sx#10 sy#10 sz#10 anim::i#2 anim::i2#0 ] ) always clobbers reg byte a -Statement [44] (byte/word/signed word/dword/signed dword~) anim::$6 ← (byte/word/signed word/dword/signed dword) 128 + (byte)*((const signed byte*) xr#0) [ sx#10 sy#10 sz#10 anim::i#2 anim::i2#0 anim::$6 ] ( main:11::anim:19 [ sx#10 sy#10 sz#10 anim::i#2 anim::i2#0 anim::$6 ] ) always clobbers reg byte a -Statement [46] (byte/word/signed word/dword/signed dword~) anim::$8 ← (byte/word/signed word/dword/signed dword) 128 + (byte)*((const signed byte*) yr#0) [ sx#10 sy#10 sz#10 anim::i#2 anim::i2#0 anim::$8 ] ( main:11::anim:19 [ sx#10 sy#10 sz#10 anim::i#2 anim::i2#0 anim::$8 ] ) always clobbers reg byte a -Statement [49] if((byte) anim::i#1!=(byte/signed byte/word/signed word/dword/signed dword) 8) goto anim::@7 [ sx#10 sy#10 sz#10 anim::i#1 ] ( main:11::anim:19 [ sx#10 sy#10 sz#10 anim::i#1 ] ) always clobbers reg byte a -Statement [50] *((const byte*) BORDERCOL#0) ← (const byte) LIGHT_GREY#0 [ sx#10 sy#10 sz#10 ] ( main:11::anim:19 [ sx#10 sy#10 sz#10 ] ) always clobbers reg byte a -Statement [52] *((const byte*) BORDERCOL#0) ← (const byte) LIGHT_BLUE#0 [ sx#10 sy#10 sz#10 ] ( main:11::anim:19 [ sx#10 sy#10 sz#10 ] ) always clobbers reg byte a -Statement [81] (byte*) print_sbyte_at::at#15 ← (const byte*) debug_print::at_line#0 + (byte) debug_print::c#2 [ sx#10 sy#10 sz#10 debug_print::c#2 debug_print::i#2 print_sbyte_at::at#15 ] ( main:11::anim:19::debug_print:51 [ sx#10 sy#10 sz#10 debug_print::c#2 debug_print::i#2 print_sbyte_at::at#15 ] ) always clobbers reg byte a -Statement [82] (signed byte) print_sbyte_at::b#16 ← *((const signed byte[8]) xrs#0 + (byte) debug_print::i#2) [ sx#10 sy#10 sz#10 debug_print::c#2 debug_print::i#2 print_sbyte_at::at#15 print_sbyte_at::b#16 ] ( main:11::anim:19::debug_print:51 [ sx#10 sy#10 sz#10 debug_print::c#2 debug_print::i#2 print_sbyte_at::at#15 print_sbyte_at::b#16 ] ) always clobbers reg byte a -Statement [84] (byte*) print_sbyte_at::at#16 ← (const byte*) debug_print::at_line#0+(byte/signed byte/word/signed word/dword/signed dword) 40*(byte/signed byte/word/signed word/dword/signed dword) 1 + (byte) debug_print::c#2 [ sx#10 sy#10 sz#10 debug_print::c#2 debug_print::i#2 print_sbyte_at::at#16 ] ( main:11::anim:19::debug_print:51 [ sx#10 sy#10 sz#10 debug_print::c#2 debug_print::i#2 print_sbyte_at::at#16 ] ) always clobbers reg byte a -Statement [85] (signed byte) print_sbyte_at::b#17 ← *((const signed byte[8]) yrs#0 + (byte) debug_print::i#2) [ sx#10 sy#10 sz#10 debug_print::c#2 debug_print::i#2 print_sbyte_at::at#16 print_sbyte_at::b#17 ] ( main:11::anim:19::debug_print:51 [ sx#10 sy#10 sz#10 debug_print::c#2 debug_print::i#2 print_sbyte_at::at#16 print_sbyte_at::b#17 ] ) always clobbers reg byte a -Statement [87] (byte*) print_sbyte_at::at#17 ← (const byte*) debug_print::at_line#0+(byte/signed byte/word/signed word/dword/signed dword) 40*(byte/signed byte/word/signed word/dword/signed dword) 2 + (byte) debug_print::c#2 [ sx#10 sy#10 sz#10 debug_print::c#2 debug_print::i#2 print_sbyte_at::at#17 ] ( main:11::anim:19::debug_print:51 [ sx#10 sy#10 sz#10 debug_print::c#2 debug_print::i#2 print_sbyte_at::at#17 ] ) always clobbers reg byte a -Statement [88] (signed byte) print_sbyte_at::b#18 ← *((const signed byte[8]) zrs#0 + (byte) debug_print::i#2) [ sx#10 sy#10 sz#10 debug_print::c#2 debug_print::i#2 print_sbyte_at::at#17 print_sbyte_at::b#18 ] ( main:11::anim:19::debug_print:51 [ sx#10 sy#10 sz#10 debug_print::c#2 debug_print::i#2 print_sbyte_at::at#17 print_sbyte_at::b#18 ] ) always clobbers reg byte a -Statement [90] (byte*) print_sbyte_at::at#18 ← (const byte*) debug_print::at_line#0+(byte/signed byte/word/signed word/dword/signed dword) 40*(byte/signed byte/word/signed word/dword/signed dword) 3 + (byte) debug_print::c#2 [ sx#10 sy#10 sz#10 debug_print::c#2 debug_print::i#2 print_sbyte_at::at#18 ] ( main:11::anim:19::debug_print:51 [ sx#10 sy#10 sz#10 debug_print::c#2 debug_print::i#2 print_sbyte_at::at#18 ] ) always clobbers reg byte a -Statement [91] (signed byte) print_sbyte_at::b#19 ← *((const signed byte[8]) pps#0 + (byte) debug_print::i#2) [ sx#10 sy#10 sz#10 debug_print::c#2 debug_print::i#2 print_sbyte_at::at#18 print_sbyte_at::b#19 ] ( main:11::anim:19::debug_print:51 [ sx#10 sy#10 sz#10 debug_print::c#2 debug_print::i#2 print_sbyte_at::at#18 print_sbyte_at::b#19 ] ) always clobbers reg byte a -Statement [93] (byte*) print_sbyte_at::at#19 ← (const byte*) debug_print::at_line#0+(byte/signed byte/word/signed word/dword/signed dword) 40*(byte/signed byte/word/signed word/dword/signed dword) 4 + (byte) debug_print::c#2 [ sx#10 sy#10 sz#10 debug_print::c#2 debug_print::i#2 print_sbyte_at::at#19 ] ( main:11::anim:19::debug_print:51 [ sx#10 sy#10 sz#10 debug_print::c#2 debug_print::i#2 print_sbyte_at::at#19 ] ) always clobbers reg byte a -Statement [94] (signed byte) print_sbyte_at::b#20 ← *((const signed byte[8]) xps#0 + (byte) debug_print::i#2) [ sx#10 sy#10 sz#10 debug_print::c#2 debug_print::i#2 print_sbyte_at::at#19 print_sbyte_at::b#20 ] ( main:11::anim:19::debug_print:51 [ sx#10 sy#10 sz#10 debug_print::c#2 debug_print::i#2 print_sbyte_at::at#19 print_sbyte_at::b#20 ] ) always clobbers reg byte a -Statement [96] (byte*) print_sbyte_at::at#20 ← (const byte*) debug_print::at_line#0+(byte/signed byte/word/signed word/dword/signed dword) 40*(byte/signed byte/word/signed word/dword/signed dword) 5 + (byte) debug_print::c#2 [ sx#10 sy#10 sz#10 debug_print::c#2 debug_print::i#2 print_sbyte_at::at#20 ] ( main:11::anim:19::debug_print:51 [ sx#10 sy#10 sz#10 debug_print::c#2 debug_print::i#2 print_sbyte_at::at#20 ] ) always clobbers reg byte a -Statement [97] (signed byte) print_sbyte_at::b#21 ← *((const signed byte[8]) yps#0 + (byte) debug_print::i#2) [ sx#10 sy#10 sz#10 debug_print::c#2 debug_print::i#2 print_sbyte_at::at#20 print_sbyte_at::b#21 ] ( main:11::anim:19::debug_print:51 [ sx#10 sy#10 sz#10 debug_print::c#2 debug_print::i#2 print_sbyte_at::at#20 print_sbyte_at::b#21 ] ) always clobbers reg byte a -Statement [99] (byte) debug_print::c#1 ← (byte) debug_print::c#2 + (byte/signed byte/word/signed word/dword/signed dword) 4 [ sx#10 sy#10 sz#10 debug_print::i#2 debug_print::c#1 ] ( main:11::anim:19::debug_print:51 [ sx#10 sy#10 sz#10 debug_print::i#2 debug_print::c#1 ] ) always clobbers reg byte a -Statement [105] (byte*) print_char_at::at#1 ← (byte*) print_sbyte_at::at#21 [ print_sbyte_at::b#22 print_sbyte_at::at#21 print_char_at::at#1 ] ( main:11::anim:19::debug_print:51::print_sbyte_at:57 [ sx#10 sy#10 sz#10 print_sbyte_at::b#22 print_sbyte_at::at#21 print_char_at::at#1 ] main:11::anim:19::debug_print:51::print_sbyte_at:59 [ sx#10 sy#10 sz#10 print_sbyte_at::b#22 print_sbyte_at::at#21 print_char_at::at#1 ] main:11::anim:19::debug_print:51::print_sbyte_at:61 [ sx#10 sy#10 sz#10 print_sbyte_at::b#22 print_sbyte_at::at#21 print_char_at::at#1 ] main:11::anim:19::debug_print:51::print_sbyte_at:63 [ sx#10 sy#10 sz#10 print_sbyte_at::b#22 print_sbyte_at::at#21 print_char_at::at#1 ] main:11::anim:19::debug_print:51::print_sbyte_at:65 [ sx#10 sy#10 sz#10 print_sbyte_at::b#22 print_sbyte_at::at#21 print_char_at::at#1 ] main:11::anim:19::debug_print:51::print_sbyte_at:67 [ sx#10 sy#10 sz#10 print_sbyte_at::b#22 print_sbyte_at::at#21 print_char_at::at#1 ] main:11::anim:19::debug_print:51::print_sbyte_at:69 [ sx#10 sy#10 sz#10 print_sbyte_at::b#22 print_sbyte_at::at#21 print_char_at::at#1 ] main:11::anim:19::debug_print:51::print_sbyte_at:71 [ sx#10 sy#10 sz#10 print_sbyte_at::b#22 print_sbyte_at::at#21 print_char_at::at#1 ] main:11::anim:19::debug_print:51::print_sbyte_at:73 [ sx#10 sy#10 sz#10 print_sbyte_at::b#22 print_sbyte_at::at#21 print_char_at::at#1 ] main:11::anim:19::debug_print:51::print_sbyte_at:75 [ sx#10 sy#10 sz#10 print_sbyte_at::b#22 print_sbyte_at::at#21 print_char_at::at#1 ] main:11::anim:19::debug_print:51::print_sbyte_at:77 [ sx#10 sy#10 sz#10 print_sbyte_at::b#22 print_sbyte_at::at#21 print_char_at::at#1 ] main:11::anim:19::debug_print:51::print_sbyte_at:79 [ sx#10 sy#10 sz#10 print_sbyte_at::b#22 print_sbyte_at::at#21 print_char_at::at#1 ] main:11::anim:19::debug_print:51::print_sbyte_at:83 [ sx#10 sy#10 sz#10 debug_print::c#2 debug_print::i#2 print_sbyte_at::b#22 print_sbyte_at::at#21 print_char_at::at#1 ] main:11::anim:19::debug_print:51::print_sbyte_at:86 [ sx#10 sy#10 sz#10 debug_print::c#2 debug_print::i#2 print_sbyte_at::b#22 print_sbyte_at::at#21 print_char_at::at#1 ] main:11::anim:19::debug_print:51::print_sbyte_at:89 [ sx#10 sy#10 sz#10 debug_print::c#2 debug_print::i#2 print_sbyte_at::b#22 print_sbyte_at::at#21 print_char_at::at#1 ] main:11::anim:19::debug_print:51::print_sbyte_at:92 [ sx#10 sy#10 sz#10 debug_print::c#2 debug_print::i#2 print_sbyte_at::b#22 print_sbyte_at::at#21 print_char_at::at#1 ] main:11::anim:19::debug_print:51::print_sbyte_at:95 [ sx#10 sy#10 sz#10 debug_print::c#2 debug_print::i#2 print_sbyte_at::b#22 print_sbyte_at::at#21 print_char_at::at#1 ] main:11::anim:19::debug_print:51::print_sbyte_at:98 [ sx#10 sy#10 sz#10 debug_print::c#2 debug_print::i#2 print_sbyte_at::b#22 print_sbyte_at::at#21 print_char_at::at#1 ] main:11::debug_print_init:17::print_sbyte_at:237 [ debug_print_init::c#2 debug_print_init::i#2 print_sbyte_at::b#22 print_sbyte_at::at#21 print_char_at::at#1 ] main:11::debug_print_init:17::print_sbyte_at:240 [ debug_print_init::c#2 debug_print_init::i#2 print_sbyte_at::b#22 print_sbyte_at::at#21 print_char_at::at#1 ] main:11::debug_print_init:17::print_sbyte_at:243 [ debug_print_init::c#2 debug_print_init::i#2 print_sbyte_at::b#22 print_sbyte_at::at#21 print_char_at::at#1 ] ) always clobbers reg byte a -Statement [108] (byte*) print_byte_at::at#0 ← (byte*) print_sbyte_at::at#21 + (byte/signed byte/word/signed word/dword/signed dword) 1 [ print_sbyte_at::b#24 print_byte_at::at#0 ] ( main:11::anim:19::debug_print:51::print_sbyte_at:57 [ sx#10 sy#10 sz#10 print_sbyte_at::b#24 print_byte_at::at#0 ] main:11::anim:19::debug_print:51::print_sbyte_at:59 [ sx#10 sy#10 sz#10 print_sbyte_at::b#24 print_byte_at::at#0 ] main:11::anim:19::debug_print:51::print_sbyte_at:61 [ sx#10 sy#10 sz#10 print_sbyte_at::b#24 print_byte_at::at#0 ] main:11::anim:19::debug_print:51::print_sbyte_at:63 [ sx#10 sy#10 sz#10 print_sbyte_at::b#24 print_byte_at::at#0 ] main:11::anim:19::debug_print:51::print_sbyte_at:65 [ sx#10 sy#10 sz#10 print_sbyte_at::b#24 print_byte_at::at#0 ] main:11::anim:19::debug_print:51::print_sbyte_at:67 [ sx#10 sy#10 sz#10 print_sbyte_at::b#24 print_byte_at::at#0 ] main:11::anim:19::debug_print:51::print_sbyte_at:69 [ sx#10 sy#10 sz#10 print_sbyte_at::b#24 print_byte_at::at#0 ] main:11::anim:19::debug_print:51::print_sbyte_at:71 [ sx#10 sy#10 sz#10 print_sbyte_at::b#24 print_byte_at::at#0 ] main:11::anim:19::debug_print:51::print_sbyte_at:73 [ sx#10 sy#10 sz#10 print_sbyte_at::b#24 print_byte_at::at#0 ] main:11::anim:19::debug_print:51::print_sbyte_at:75 [ sx#10 sy#10 sz#10 print_sbyte_at::b#24 print_byte_at::at#0 ] main:11::anim:19::debug_print:51::print_sbyte_at:77 [ sx#10 sy#10 sz#10 print_sbyte_at::b#24 print_byte_at::at#0 ] main:11::anim:19::debug_print:51::print_sbyte_at:79 [ sx#10 sy#10 sz#10 print_sbyte_at::b#24 print_byte_at::at#0 ] main:11::anim:19::debug_print:51::print_sbyte_at:83 [ sx#10 sy#10 sz#10 debug_print::c#2 debug_print::i#2 print_sbyte_at::b#24 print_byte_at::at#0 ] main:11::anim:19::debug_print:51::print_sbyte_at:86 [ sx#10 sy#10 sz#10 debug_print::c#2 debug_print::i#2 print_sbyte_at::b#24 print_byte_at::at#0 ] main:11::anim:19::debug_print:51::print_sbyte_at:89 [ sx#10 sy#10 sz#10 debug_print::c#2 debug_print::i#2 print_sbyte_at::b#24 print_byte_at::at#0 ] main:11::anim:19::debug_print:51::print_sbyte_at:92 [ sx#10 sy#10 sz#10 debug_print::c#2 debug_print::i#2 print_sbyte_at::b#24 print_byte_at::at#0 ] main:11::anim:19::debug_print:51::print_sbyte_at:95 [ sx#10 sy#10 sz#10 debug_print::c#2 debug_print::i#2 print_sbyte_at::b#24 print_byte_at::at#0 ] main:11::anim:19::debug_print:51::print_sbyte_at:98 [ sx#10 sy#10 sz#10 debug_print::c#2 debug_print::i#2 print_sbyte_at::b#24 print_byte_at::at#0 ] main:11::debug_print_init:17::print_sbyte_at:237 [ debug_print_init::c#2 debug_print_init::i#2 print_sbyte_at::b#24 print_byte_at::at#0 ] main:11::debug_print_init:17::print_sbyte_at:240 [ debug_print_init::c#2 debug_print_init::i#2 print_sbyte_at::b#24 print_byte_at::at#0 ] main:11::debug_print_init:17::print_sbyte_at:243 [ debug_print_init::c#2 debug_print_init::i#2 print_sbyte_at::b#24 print_byte_at::at#0 ] ) always clobbers reg byte a -Statement [111] (byte*) print_char_at::at#0 ← (byte*) print_sbyte_at::at#21 [ print_sbyte_at::b#22 print_sbyte_at::at#21 print_char_at::at#0 ] ( main:11::anim:19::debug_print:51::print_sbyte_at:57 [ sx#10 sy#10 sz#10 print_sbyte_at::b#22 print_sbyte_at::at#21 print_char_at::at#0 ] main:11::anim:19::debug_print:51::print_sbyte_at:59 [ sx#10 sy#10 sz#10 print_sbyte_at::b#22 print_sbyte_at::at#21 print_char_at::at#0 ] main:11::anim:19::debug_print:51::print_sbyte_at:61 [ sx#10 sy#10 sz#10 print_sbyte_at::b#22 print_sbyte_at::at#21 print_char_at::at#0 ] main:11::anim:19::debug_print:51::print_sbyte_at:63 [ sx#10 sy#10 sz#10 print_sbyte_at::b#22 print_sbyte_at::at#21 print_char_at::at#0 ] main:11::anim:19::debug_print:51::print_sbyte_at:65 [ sx#10 sy#10 sz#10 print_sbyte_at::b#22 print_sbyte_at::at#21 print_char_at::at#0 ] main:11::anim:19::debug_print:51::print_sbyte_at:67 [ sx#10 sy#10 sz#10 print_sbyte_at::b#22 print_sbyte_at::at#21 print_char_at::at#0 ] main:11::anim:19::debug_print:51::print_sbyte_at:69 [ sx#10 sy#10 sz#10 print_sbyte_at::b#22 print_sbyte_at::at#21 print_char_at::at#0 ] main:11::anim:19::debug_print:51::print_sbyte_at:71 [ sx#10 sy#10 sz#10 print_sbyte_at::b#22 print_sbyte_at::at#21 print_char_at::at#0 ] main:11::anim:19::debug_print:51::print_sbyte_at:73 [ sx#10 sy#10 sz#10 print_sbyte_at::b#22 print_sbyte_at::at#21 print_char_at::at#0 ] main:11::anim:19::debug_print:51::print_sbyte_at:75 [ sx#10 sy#10 sz#10 print_sbyte_at::b#22 print_sbyte_at::at#21 print_char_at::at#0 ] main:11::anim:19::debug_print:51::print_sbyte_at:77 [ sx#10 sy#10 sz#10 print_sbyte_at::b#22 print_sbyte_at::at#21 print_char_at::at#0 ] main:11::anim:19::debug_print:51::print_sbyte_at:79 [ sx#10 sy#10 sz#10 print_sbyte_at::b#22 print_sbyte_at::at#21 print_char_at::at#0 ] main:11::anim:19::debug_print:51::print_sbyte_at:83 [ sx#10 sy#10 sz#10 debug_print::c#2 debug_print::i#2 print_sbyte_at::b#22 print_sbyte_at::at#21 print_char_at::at#0 ] main:11::anim:19::debug_print:51::print_sbyte_at:86 [ sx#10 sy#10 sz#10 debug_print::c#2 debug_print::i#2 print_sbyte_at::b#22 print_sbyte_at::at#21 print_char_at::at#0 ] main:11::anim:19::debug_print:51::print_sbyte_at:89 [ sx#10 sy#10 sz#10 debug_print::c#2 debug_print::i#2 print_sbyte_at::b#22 print_sbyte_at::at#21 print_char_at::at#0 ] main:11::anim:19::debug_print:51::print_sbyte_at:92 [ sx#10 sy#10 sz#10 debug_print::c#2 debug_print::i#2 print_sbyte_at::b#22 print_sbyte_at::at#21 print_char_at::at#0 ] main:11::anim:19::debug_print:51::print_sbyte_at:95 [ sx#10 sy#10 sz#10 debug_print::c#2 debug_print::i#2 print_sbyte_at::b#22 print_sbyte_at::at#21 print_char_at::at#0 ] main:11::anim:19::debug_print:51::print_sbyte_at:98 [ sx#10 sy#10 sz#10 debug_print::c#2 debug_print::i#2 print_sbyte_at::b#22 print_sbyte_at::at#21 print_char_at::at#0 ] main:11::debug_print_init:17::print_sbyte_at:237 [ debug_print_init::c#2 debug_print_init::i#2 print_sbyte_at::b#22 print_sbyte_at::at#21 print_char_at::at#0 ] main:11::debug_print_init:17::print_sbyte_at:240 [ debug_print_init::c#2 debug_print_init::i#2 print_sbyte_at::b#22 print_sbyte_at::at#21 print_char_at::at#0 ] main:11::debug_print_init:17::print_sbyte_at:243 [ debug_print_init::c#2 debug_print_init::i#2 print_sbyte_at::b#22 print_sbyte_at::at#21 print_char_at::at#0 ] ) always clobbers reg byte a -Statement [113] (signed byte) print_sbyte_at::b#0 ← - (signed byte) print_sbyte_at::b#22 [ print_sbyte_at::at#21 print_sbyte_at::b#0 ] ( main:11::anim:19::debug_print:51::print_sbyte_at:57 [ sx#10 sy#10 sz#10 print_sbyte_at::at#21 print_sbyte_at::b#0 ] main:11::anim:19::debug_print:51::print_sbyte_at:59 [ sx#10 sy#10 sz#10 print_sbyte_at::at#21 print_sbyte_at::b#0 ] main:11::anim:19::debug_print:51::print_sbyte_at:61 [ sx#10 sy#10 sz#10 print_sbyte_at::at#21 print_sbyte_at::b#0 ] main:11::anim:19::debug_print:51::print_sbyte_at:63 [ sx#10 sy#10 sz#10 print_sbyte_at::at#21 print_sbyte_at::b#0 ] main:11::anim:19::debug_print:51::print_sbyte_at:65 [ sx#10 sy#10 sz#10 print_sbyte_at::at#21 print_sbyte_at::b#0 ] main:11::anim:19::debug_print:51::print_sbyte_at:67 [ sx#10 sy#10 sz#10 print_sbyte_at::at#21 print_sbyte_at::b#0 ] main:11::anim:19::debug_print:51::print_sbyte_at:69 [ sx#10 sy#10 sz#10 print_sbyte_at::at#21 print_sbyte_at::b#0 ] main:11::anim:19::debug_print:51::print_sbyte_at:71 [ sx#10 sy#10 sz#10 print_sbyte_at::at#21 print_sbyte_at::b#0 ] main:11::anim:19::debug_print:51::print_sbyte_at:73 [ sx#10 sy#10 sz#10 print_sbyte_at::at#21 print_sbyte_at::b#0 ] main:11::anim:19::debug_print:51::print_sbyte_at:75 [ sx#10 sy#10 sz#10 print_sbyte_at::at#21 print_sbyte_at::b#0 ] main:11::anim:19::debug_print:51::print_sbyte_at:77 [ sx#10 sy#10 sz#10 print_sbyte_at::at#21 print_sbyte_at::b#0 ] main:11::anim:19::debug_print:51::print_sbyte_at:79 [ sx#10 sy#10 sz#10 print_sbyte_at::at#21 print_sbyte_at::b#0 ] main:11::anim:19::debug_print:51::print_sbyte_at:83 [ sx#10 sy#10 sz#10 debug_print::c#2 debug_print::i#2 print_sbyte_at::at#21 print_sbyte_at::b#0 ] main:11::anim:19::debug_print:51::print_sbyte_at:86 [ sx#10 sy#10 sz#10 debug_print::c#2 debug_print::i#2 print_sbyte_at::at#21 print_sbyte_at::b#0 ] main:11::anim:19::debug_print:51::print_sbyte_at:89 [ sx#10 sy#10 sz#10 debug_print::c#2 debug_print::i#2 print_sbyte_at::at#21 print_sbyte_at::b#0 ] main:11::anim:19::debug_print:51::print_sbyte_at:92 [ sx#10 sy#10 sz#10 debug_print::c#2 debug_print::i#2 print_sbyte_at::at#21 print_sbyte_at::b#0 ] main:11::anim:19::debug_print:51::print_sbyte_at:95 [ sx#10 sy#10 sz#10 debug_print::c#2 debug_print::i#2 print_sbyte_at::at#21 print_sbyte_at::b#0 ] main:11::anim:19::debug_print:51::print_sbyte_at:98 [ sx#10 sy#10 sz#10 debug_print::c#2 debug_print::i#2 print_sbyte_at::at#21 print_sbyte_at::b#0 ] main:11::debug_print_init:17::print_sbyte_at:237 [ debug_print_init::c#2 debug_print_init::i#2 print_sbyte_at::at#21 print_sbyte_at::b#0 ] main:11::debug_print_init:17::print_sbyte_at:240 [ debug_print_init::c#2 debug_print_init::i#2 print_sbyte_at::at#21 print_sbyte_at::b#0 ] main:11::debug_print_init:17::print_sbyte_at:243 [ debug_print_init::c#2 debug_print_init::i#2 print_sbyte_at::at#21 print_sbyte_at::b#0 ] ) always clobbers reg byte a -Statement [115] *((byte*) print_char_at::at#4) ← (byte) print_char_at::ch#4 [ ] ( main:11::anim:19::debug_print:51::print_sbyte_at:57::print_char_at:106 [ sx#10 sy#10 sz#10 print_sbyte_at::b#22 print_sbyte_at::at#21 ] main:11::anim:19::debug_print:51::print_sbyte_at:59::print_char_at:106 [ sx#10 sy#10 sz#10 print_sbyte_at::b#22 print_sbyte_at::at#21 ] main:11::anim:19::debug_print:51::print_sbyte_at:61::print_char_at:106 [ sx#10 sy#10 sz#10 print_sbyte_at::b#22 print_sbyte_at::at#21 ] main:11::anim:19::debug_print:51::print_sbyte_at:63::print_char_at:106 [ sx#10 sy#10 sz#10 print_sbyte_at::b#22 print_sbyte_at::at#21 ] main:11::anim:19::debug_print:51::print_sbyte_at:65::print_char_at:106 [ sx#10 sy#10 sz#10 print_sbyte_at::b#22 print_sbyte_at::at#21 ] main:11::anim:19::debug_print:51::print_sbyte_at:67::print_char_at:106 [ sx#10 sy#10 sz#10 print_sbyte_at::b#22 print_sbyte_at::at#21 ] main:11::anim:19::debug_print:51::print_sbyte_at:69::print_char_at:106 [ sx#10 sy#10 sz#10 print_sbyte_at::b#22 print_sbyte_at::at#21 ] main:11::anim:19::debug_print:51::print_sbyte_at:71::print_char_at:106 [ sx#10 sy#10 sz#10 print_sbyte_at::b#22 print_sbyte_at::at#21 ] main:11::anim:19::debug_print:51::print_sbyte_at:73::print_char_at:106 [ sx#10 sy#10 sz#10 print_sbyte_at::b#22 print_sbyte_at::at#21 ] main:11::anim:19::debug_print:51::print_sbyte_at:75::print_char_at:106 [ sx#10 sy#10 sz#10 print_sbyte_at::b#22 print_sbyte_at::at#21 ] main:11::anim:19::debug_print:51::print_sbyte_at:77::print_char_at:106 [ sx#10 sy#10 sz#10 print_sbyte_at::b#22 print_sbyte_at::at#21 ] main:11::anim:19::debug_print:51::print_sbyte_at:79::print_char_at:106 [ sx#10 sy#10 sz#10 print_sbyte_at::b#22 print_sbyte_at::at#21 ] main:11::anim:19::debug_print:51::print_sbyte_at:83::print_char_at:106 [ sx#10 sy#10 sz#10 debug_print::c#2 debug_print::i#2 print_sbyte_at::b#22 print_sbyte_at::at#21 ] main:11::anim:19::debug_print:51::print_sbyte_at:86::print_char_at:106 [ sx#10 sy#10 sz#10 debug_print::c#2 debug_print::i#2 print_sbyte_at::b#22 print_sbyte_at::at#21 ] main:11::anim:19::debug_print:51::print_sbyte_at:89::print_char_at:106 [ sx#10 sy#10 sz#10 debug_print::c#2 debug_print::i#2 print_sbyte_at::b#22 print_sbyte_at::at#21 ] main:11::anim:19::debug_print:51::print_sbyte_at:92::print_char_at:106 [ sx#10 sy#10 sz#10 debug_print::c#2 debug_print::i#2 print_sbyte_at::b#22 print_sbyte_at::at#21 ] main:11::anim:19::debug_print:51::print_sbyte_at:95::print_char_at:106 [ sx#10 sy#10 sz#10 debug_print::c#2 debug_print::i#2 print_sbyte_at::b#22 print_sbyte_at::at#21 ] main:11::anim:19::debug_print:51::print_sbyte_at:98::print_char_at:106 [ sx#10 sy#10 sz#10 debug_print::c#2 debug_print::i#2 print_sbyte_at::b#22 print_sbyte_at::at#21 ] main:11::debug_print_init:17::print_sbyte_at:237::print_char_at:106 [ debug_print_init::c#2 debug_print_init::i#2 print_sbyte_at::b#22 print_sbyte_at::at#21 ] main:11::debug_print_init:17::print_sbyte_at:240::print_char_at:106 [ debug_print_init::c#2 debug_print_init::i#2 print_sbyte_at::b#22 print_sbyte_at::at#21 ] main:11::debug_print_init:17::print_sbyte_at:243::print_char_at:106 [ debug_print_init::c#2 debug_print_init::i#2 print_sbyte_at::b#22 print_sbyte_at::at#21 ] main:11::anim:19::debug_print:51::print_sbyte_at:57::print_char_at:112 [ sx#10 sy#10 sz#10 print_sbyte_at::b#22 print_sbyte_at::at#21 ] main:11::anim:19::debug_print:51::print_sbyte_at:59::print_char_at:112 [ sx#10 sy#10 sz#10 print_sbyte_at::b#22 print_sbyte_at::at#21 ] main:11::anim:19::debug_print:51::print_sbyte_at:61::print_char_at:112 [ sx#10 sy#10 sz#10 print_sbyte_at::b#22 print_sbyte_at::at#21 ] main:11::anim:19::debug_print:51::print_sbyte_at:63::print_char_at:112 [ sx#10 sy#10 sz#10 print_sbyte_at::b#22 print_sbyte_at::at#21 ] main:11::anim:19::debug_print:51::print_sbyte_at:65::print_char_at:112 [ sx#10 sy#10 sz#10 print_sbyte_at::b#22 print_sbyte_at::at#21 ] main:11::anim:19::debug_print:51::print_sbyte_at:67::print_char_at:112 [ sx#10 sy#10 sz#10 print_sbyte_at::b#22 print_sbyte_at::at#21 ] main:11::anim:19::debug_print:51::print_sbyte_at:69::print_char_at:112 [ sx#10 sy#10 sz#10 print_sbyte_at::b#22 print_sbyte_at::at#21 ] main:11::anim:19::debug_print:51::print_sbyte_at:71::print_char_at:112 [ sx#10 sy#10 sz#10 print_sbyte_at::b#22 print_sbyte_at::at#21 ] main:11::anim:19::debug_print:51::print_sbyte_at:73::print_char_at:112 [ sx#10 sy#10 sz#10 print_sbyte_at::b#22 print_sbyte_at::at#21 ] main:11::anim:19::debug_print:51::print_sbyte_at:75::print_char_at:112 [ sx#10 sy#10 sz#10 print_sbyte_at::b#22 print_sbyte_at::at#21 ] main:11::anim:19::debug_print:51::print_sbyte_at:77::print_char_at:112 [ sx#10 sy#10 sz#10 print_sbyte_at::b#22 print_sbyte_at::at#21 ] main:11::anim:19::debug_print:51::print_sbyte_at:79::print_char_at:112 [ sx#10 sy#10 sz#10 print_sbyte_at::b#22 print_sbyte_at::at#21 ] main:11::anim:19::debug_print:51::print_sbyte_at:83::print_char_at:112 [ sx#10 sy#10 sz#10 debug_print::c#2 debug_print::i#2 print_sbyte_at::b#22 print_sbyte_at::at#21 ] main:11::anim:19::debug_print:51::print_sbyte_at:86::print_char_at:112 [ sx#10 sy#10 sz#10 debug_print::c#2 debug_print::i#2 print_sbyte_at::b#22 print_sbyte_at::at#21 ] main:11::anim:19::debug_print:51::print_sbyte_at:89::print_char_at:112 [ sx#10 sy#10 sz#10 debug_print::c#2 debug_print::i#2 print_sbyte_at::b#22 print_sbyte_at::at#21 ] main:11::anim:19::debug_print:51::print_sbyte_at:92::print_char_at:112 [ sx#10 sy#10 sz#10 debug_print::c#2 debug_print::i#2 print_sbyte_at::b#22 print_sbyte_at::at#21 ] main:11::anim:19::debug_print:51::print_sbyte_at:95::print_char_at:112 [ sx#10 sy#10 sz#10 debug_print::c#2 debug_print::i#2 print_sbyte_at::b#22 print_sbyte_at::at#21 ] main:11::anim:19::debug_print:51::print_sbyte_at:98::print_char_at:112 [ sx#10 sy#10 sz#10 debug_print::c#2 debug_print::i#2 print_sbyte_at::b#22 print_sbyte_at::at#21 ] main:11::debug_print_init:17::print_sbyte_at:237::print_char_at:112 [ debug_print_init::c#2 debug_print_init::i#2 print_sbyte_at::b#22 print_sbyte_at::at#21 ] main:11::debug_print_init:17::print_sbyte_at:240::print_char_at:112 [ debug_print_init::c#2 debug_print_init::i#2 print_sbyte_at::b#22 print_sbyte_at::at#21 ] main:11::debug_print_init:17::print_sbyte_at:243::print_char_at:112 [ debug_print_init::c#2 debug_print_init::i#2 print_sbyte_at::b#22 print_sbyte_at::at#21 ] main:11::anim:19::debug_print:51::print_sbyte_at:57::print_byte_at:109::print_char_at:120 [ sx#10 sy#10 sz#10 print_sbyte_at::b#24 print_byte_at::at#0 ] main:11::anim:19::debug_print:51::print_sbyte_at:59::print_byte_at:109::print_char_at:120 [ sx#10 sy#10 sz#10 print_sbyte_at::b#24 print_byte_at::at#0 ] main:11::anim:19::debug_print:51::print_sbyte_at:61::print_byte_at:109::print_char_at:120 [ sx#10 sy#10 sz#10 print_sbyte_at::b#24 print_byte_at::at#0 ] main:11::anim:19::debug_print:51::print_sbyte_at:63::print_byte_at:109::print_char_at:120 [ sx#10 sy#10 sz#10 print_sbyte_at::b#24 print_byte_at::at#0 ] main:11::anim:19::debug_print:51::print_sbyte_at:65::print_byte_at:109::print_char_at:120 [ sx#10 sy#10 sz#10 print_sbyte_at::b#24 print_byte_at::at#0 ] main:11::anim:19::debug_print:51::print_sbyte_at:67::print_byte_at:109::print_char_at:120 [ sx#10 sy#10 sz#10 print_sbyte_at::b#24 print_byte_at::at#0 ] main:11::anim:19::debug_print:51::print_sbyte_at:69::print_byte_at:109::print_char_at:120 [ sx#10 sy#10 sz#10 print_sbyte_at::b#24 print_byte_at::at#0 ] main:11::anim:19::debug_print:51::print_sbyte_at:71::print_byte_at:109::print_char_at:120 [ sx#10 sy#10 sz#10 print_sbyte_at::b#24 print_byte_at::at#0 ] main:11::anim:19::debug_print:51::print_sbyte_at:73::print_byte_at:109::print_char_at:120 [ sx#10 sy#10 sz#10 print_sbyte_at::b#24 print_byte_at::at#0 ] main:11::anim:19::debug_print:51::print_sbyte_at:75::print_byte_at:109::print_char_at:120 [ sx#10 sy#10 sz#10 print_sbyte_at::b#24 print_byte_at::at#0 ] main:11::anim:19::debug_print:51::print_sbyte_at:77::print_byte_at:109::print_char_at:120 [ sx#10 sy#10 sz#10 print_sbyte_at::b#24 print_byte_at::at#0 ] main:11::anim:19::debug_print:51::print_sbyte_at:79::print_byte_at:109::print_char_at:120 [ sx#10 sy#10 sz#10 print_sbyte_at::b#24 print_byte_at::at#0 ] main:11::anim:19::debug_print:51::print_sbyte_at:83::print_byte_at:109::print_char_at:120 [ sx#10 sy#10 sz#10 debug_print::c#2 debug_print::i#2 print_sbyte_at::b#24 print_byte_at::at#0 ] main:11::anim:19::debug_print:51::print_sbyte_at:86::print_byte_at:109::print_char_at:120 [ sx#10 sy#10 sz#10 debug_print::c#2 debug_print::i#2 print_sbyte_at::b#24 print_byte_at::at#0 ] main:11::anim:19::debug_print:51::print_sbyte_at:89::print_byte_at:109::print_char_at:120 [ sx#10 sy#10 sz#10 debug_print::c#2 debug_print::i#2 print_sbyte_at::b#24 print_byte_at::at#0 ] main:11::anim:19::debug_print:51::print_sbyte_at:92::print_byte_at:109::print_char_at:120 [ sx#10 sy#10 sz#10 debug_print::c#2 debug_print::i#2 print_sbyte_at::b#24 print_byte_at::at#0 ] main:11::anim:19::debug_print:51::print_sbyte_at:95::print_byte_at:109::print_char_at:120 [ sx#10 sy#10 sz#10 debug_print::c#2 debug_print::i#2 print_sbyte_at::b#24 print_byte_at::at#0 ] main:11::anim:19::debug_print:51::print_sbyte_at:98::print_byte_at:109::print_char_at:120 [ sx#10 sy#10 sz#10 debug_print::c#2 debug_print::i#2 print_sbyte_at::b#24 print_byte_at::at#0 ] main:11::debug_print_init:17::print_sbyte_at:237::print_byte_at:109::print_char_at:120 [ debug_print_init::c#2 debug_print_init::i#2 print_sbyte_at::b#24 print_byte_at::at#0 ] main:11::debug_print_init:17::print_sbyte_at:240::print_byte_at:109::print_char_at:120 [ debug_print_init::c#2 debug_print_init::i#2 print_sbyte_at::b#24 print_byte_at::at#0 ] main:11::debug_print_init:17::print_sbyte_at:243::print_byte_at:109::print_char_at:120 [ debug_print_init::c#2 debug_print_init::i#2 print_sbyte_at::b#24 print_byte_at::at#0 ] main:11::anim:19::debug_print:51::print_sbyte_at:57::print_byte_at:109::print_char_at:124 [ sx#10 sy#10 sz#10 ] main:11::anim:19::debug_print:51::print_sbyte_at:59::print_byte_at:109::print_char_at:124 [ sx#10 sy#10 sz#10 ] main:11::anim:19::debug_print:51::print_sbyte_at:61::print_byte_at:109::print_char_at:124 [ sx#10 sy#10 sz#10 ] main:11::anim:19::debug_print:51::print_sbyte_at:63::print_byte_at:109::print_char_at:124 [ sx#10 sy#10 sz#10 ] main:11::anim:19::debug_print:51::print_sbyte_at:65::print_byte_at:109::print_char_at:124 [ sx#10 sy#10 sz#10 ] main:11::anim:19::debug_print:51::print_sbyte_at:67::print_byte_at:109::print_char_at:124 [ sx#10 sy#10 sz#10 ] main:11::anim:19::debug_print:51::print_sbyte_at:69::print_byte_at:109::print_char_at:124 [ sx#10 sy#10 sz#10 ] main:11::anim:19::debug_print:51::print_sbyte_at:71::print_byte_at:109::print_char_at:124 [ sx#10 sy#10 sz#10 ] main:11::anim:19::debug_print:51::print_sbyte_at:73::print_byte_at:109::print_char_at:124 [ sx#10 sy#10 sz#10 ] main:11::anim:19::debug_print:51::print_sbyte_at:75::print_byte_at:109::print_char_at:124 [ sx#10 sy#10 sz#10 ] main:11::anim:19::debug_print:51::print_sbyte_at:77::print_byte_at:109::print_char_at:124 [ sx#10 sy#10 sz#10 ] main:11::anim:19::debug_print:51::print_sbyte_at:79::print_byte_at:109::print_char_at:124 [ sx#10 sy#10 sz#10 ] main:11::anim:19::debug_print:51::print_sbyte_at:83::print_byte_at:109::print_char_at:124 [ sx#10 sy#10 sz#10 debug_print::c#2 debug_print::i#2 ] main:11::anim:19::debug_print:51::print_sbyte_at:86::print_byte_at:109::print_char_at:124 [ sx#10 sy#10 sz#10 debug_print::c#2 debug_print::i#2 ] main:11::anim:19::debug_print:51::print_sbyte_at:89::print_byte_at:109::print_char_at:124 [ sx#10 sy#10 sz#10 debug_print::c#2 debug_print::i#2 ] main:11::anim:19::debug_print:51::print_sbyte_at:92::print_byte_at:109::print_char_at:124 [ sx#10 sy#10 sz#10 debug_print::c#2 debug_print::i#2 ] main:11::anim:19::debug_print:51::print_sbyte_at:95::print_byte_at:109::print_char_at:124 [ sx#10 sy#10 sz#10 debug_print::c#2 debug_print::i#2 ] main:11::anim:19::debug_print:51::print_sbyte_at:98::print_byte_at:109::print_char_at:124 [ sx#10 sy#10 sz#10 debug_print::c#2 debug_print::i#2 ] main:11::debug_print_init:17::print_sbyte_at:237::print_byte_at:109::print_char_at:124 [ debug_print_init::c#2 debug_print_init::i#2 ] main:11::debug_print_init:17::print_sbyte_at:240::print_byte_at:109::print_char_at:124 [ debug_print_init::c#2 debug_print_init::i#2 ] main:11::debug_print_init:17::print_sbyte_at:243::print_byte_at:109::print_char_at:124 [ debug_print_init::c#2 debug_print_init::i#2 ] ) always clobbers reg byte a reg byte y -Statement [117] (byte~) print_byte_at::$0 ← (byte)(signed byte) print_sbyte_at::b#24 >> (byte/signed byte/word/signed word/dword/signed dword) 4 [ print_sbyte_at::b#24 print_byte_at::at#0 print_byte_at::$0 ] ( main:11::anim:19::debug_print:51::print_sbyte_at:57::print_byte_at:109 [ sx#10 sy#10 sz#10 print_sbyte_at::b#24 print_byte_at::at#0 print_byte_at::$0 ] main:11::anim:19::debug_print:51::print_sbyte_at:59::print_byte_at:109 [ sx#10 sy#10 sz#10 print_sbyte_at::b#24 print_byte_at::at#0 print_byte_at::$0 ] main:11::anim:19::debug_print:51::print_sbyte_at:61::print_byte_at:109 [ sx#10 sy#10 sz#10 print_sbyte_at::b#24 print_byte_at::at#0 print_byte_at::$0 ] main:11::anim:19::debug_print:51::print_sbyte_at:63::print_byte_at:109 [ sx#10 sy#10 sz#10 print_sbyte_at::b#24 print_byte_at::at#0 print_byte_at::$0 ] main:11::anim:19::debug_print:51::print_sbyte_at:65::print_byte_at:109 [ sx#10 sy#10 sz#10 print_sbyte_at::b#24 print_byte_at::at#0 print_byte_at::$0 ] main:11::anim:19::debug_print:51::print_sbyte_at:67::print_byte_at:109 [ sx#10 sy#10 sz#10 print_sbyte_at::b#24 print_byte_at::at#0 print_byte_at::$0 ] main:11::anim:19::debug_print:51::print_sbyte_at:69::print_byte_at:109 [ sx#10 sy#10 sz#10 print_sbyte_at::b#24 print_byte_at::at#0 print_byte_at::$0 ] main:11::anim:19::debug_print:51::print_sbyte_at:71::print_byte_at:109 [ sx#10 sy#10 sz#10 print_sbyte_at::b#24 print_byte_at::at#0 print_byte_at::$0 ] main:11::anim:19::debug_print:51::print_sbyte_at:73::print_byte_at:109 [ sx#10 sy#10 sz#10 print_sbyte_at::b#24 print_byte_at::at#0 print_byte_at::$0 ] main:11::anim:19::debug_print:51::print_sbyte_at:75::print_byte_at:109 [ sx#10 sy#10 sz#10 print_sbyte_at::b#24 print_byte_at::at#0 print_byte_at::$0 ] main:11::anim:19::debug_print:51::print_sbyte_at:77::print_byte_at:109 [ sx#10 sy#10 sz#10 print_sbyte_at::b#24 print_byte_at::at#0 print_byte_at::$0 ] main:11::anim:19::debug_print:51::print_sbyte_at:79::print_byte_at:109 [ sx#10 sy#10 sz#10 print_sbyte_at::b#24 print_byte_at::at#0 print_byte_at::$0 ] main:11::anim:19::debug_print:51::print_sbyte_at:83::print_byte_at:109 [ sx#10 sy#10 sz#10 debug_print::c#2 debug_print::i#2 print_sbyte_at::b#24 print_byte_at::at#0 print_byte_at::$0 ] main:11::anim:19::debug_print:51::print_sbyte_at:86::print_byte_at:109 [ sx#10 sy#10 sz#10 debug_print::c#2 debug_print::i#2 print_sbyte_at::b#24 print_byte_at::at#0 print_byte_at::$0 ] main:11::anim:19::debug_print:51::print_sbyte_at:89::print_byte_at:109 [ sx#10 sy#10 sz#10 debug_print::c#2 debug_print::i#2 print_sbyte_at::b#24 print_byte_at::at#0 print_byte_at::$0 ] main:11::anim:19::debug_print:51::print_sbyte_at:92::print_byte_at:109 [ sx#10 sy#10 sz#10 debug_print::c#2 debug_print::i#2 print_sbyte_at::b#24 print_byte_at::at#0 print_byte_at::$0 ] main:11::anim:19::debug_print:51::print_sbyte_at:95::print_byte_at:109 [ sx#10 sy#10 sz#10 debug_print::c#2 debug_print::i#2 print_sbyte_at::b#24 print_byte_at::at#0 print_byte_at::$0 ] main:11::anim:19::debug_print:51::print_sbyte_at:98::print_byte_at:109 [ sx#10 sy#10 sz#10 debug_print::c#2 debug_print::i#2 print_sbyte_at::b#24 print_byte_at::at#0 print_byte_at::$0 ] main:11::debug_print_init:17::print_sbyte_at:237::print_byte_at:109 [ debug_print_init::c#2 debug_print_init::i#2 print_sbyte_at::b#24 print_byte_at::at#0 print_byte_at::$0 ] main:11::debug_print_init:17::print_sbyte_at:240::print_byte_at:109 [ debug_print_init::c#2 debug_print_init::i#2 print_sbyte_at::b#24 print_byte_at::at#0 print_byte_at::$0 ] main:11::debug_print_init:17::print_sbyte_at:243::print_byte_at:109 [ debug_print_init::c#2 debug_print_init::i#2 print_sbyte_at::b#24 print_byte_at::at#0 print_byte_at::$0 ] ) always clobbers reg byte a -Statement [119] (byte*) print_char_at::at#2 ← (byte*) print_byte_at::at#0 [ print_sbyte_at::b#24 print_byte_at::at#0 print_char_at::ch#2 print_char_at::at#2 ] ( main:11::anim:19::debug_print:51::print_sbyte_at:57::print_byte_at:109 [ sx#10 sy#10 sz#10 print_sbyte_at::b#24 print_byte_at::at#0 print_char_at::ch#2 print_char_at::at#2 ] main:11::anim:19::debug_print:51::print_sbyte_at:59::print_byte_at:109 [ sx#10 sy#10 sz#10 print_sbyte_at::b#24 print_byte_at::at#0 print_char_at::ch#2 print_char_at::at#2 ] main:11::anim:19::debug_print:51::print_sbyte_at:61::print_byte_at:109 [ sx#10 sy#10 sz#10 print_sbyte_at::b#24 print_byte_at::at#0 print_char_at::ch#2 print_char_at::at#2 ] main:11::anim:19::debug_print:51::print_sbyte_at:63::print_byte_at:109 [ sx#10 sy#10 sz#10 print_sbyte_at::b#24 print_byte_at::at#0 print_char_at::ch#2 print_char_at::at#2 ] main:11::anim:19::debug_print:51::print_sbyte_at:65::print_byte_at:109 [ sx#10 sy#10 sz#10 print_sbyte_at::b#24 print_byte_at::at#0 print_char_at::ch#2 print_char_at::at#2 ] main:11::anim:19::debug_print:51::print_sbyte_at:67::print_byte_at:109 [ sx#10 sy#10 sz#10 print_sbyte_at::b#24 print_byte_at::at#0 print_char_at::ch#2 print_char_at::at#2 ] main:11::anim:19::debug_print:51::print_sbyte_at:69::print_byte_at:109 [ sx#10 sy#10 sz#10 print_sbyte_at::b#24 print_byte_at::at#0 print_char_at::ch#2 print_char_at::at#2 ] main:11::anim:19::debug_print:51::print_sbyte_at:71::print_byte_at:109 [ sx#10 sy#10 sz#10 print_sbyte_at::b#24 print_byte_at::at#0 print_char_at::ch#2 print_char_at::at#2 ] main:11::anim:19::debug_print:51::print_sbyte_at:73::print_byte_at:109 [ sx#10 sy#10 sz#10 print_sbyte_at::b#24 print_byte_at::at#0 print_char_at::ch#2 print_char_at::at#2 ] main:11::anim:19::debug_print:51::print_sbyte_at:75::print_byte_at:109 [ sx#10 sy#10 sz#10 print_sbyte_at::b#24 print_byte_at::at#0 print_char_at::ch#2 print_char_at::at#2 ] main:11::anim:19::debug_print:51::print_sbyte_at:77::print_byte_at:109 [ sx#10 sy#10 sz#10 print_sbyte_at::b#24 print_byte_at::at#0 print_char_at::ch#2 print_char_at::at#2 ] main:11::anim:19::debug_print:51::print_sbyte_at:79::print_byte_at:109 [ sx#10 sy#10 sz#10 print_sbyte_at::b#24 print_byte_at::at#0 print_char_at::ch#2 print_char_at::at#2 ] main:11::anim:19::debug_print:51::print_sbyte_at:83::print_byte_at:109 [ sx#10 sy#10 sz#10 debug_print::c#2 debug_print::i#2 print_sbyte_at::b#24 print_byte_at::at#0 print_char_at::ch#2 print_char_at::at#2 ] main:11::anim:19::debug_print:51::print_sbyte_at:86::print_byte_at:109 [ sx#10 sy#10 sz#10 debug_print::c#2 debug_print::i#2 print_sbyte_at::b#24 print_byte_at::at#0 print_char_at::ch#2 print_char_at::at#2 ] main:11::anim:19::debug_print:51::print_sbyte_at:89::print_byte_at:109 [ sx#10 sy#10 sz#10 debug_print::c#2 debug_print::i#2 print_sbyte_at::b#24 print_byte_at::at#0 print_char_at::ch#2 print_char_at::at#2 ] main:11::anim:19::debug_print:51::print_sbyte_at:92::print_byte_at:109 [ sx#10 sy#10 sz#10 debug_print::c#2 debug_print::i#2 print_sbyte_at::b#24 print_byte_at::at#0 print_char_at::ch#2 print_char_at::at#2 ] main:11::anim:19::debug_print:51::print_sbyte_at:95::print_byte_at:109 [ sx#10 sy#10 sz#10 debug_print::c#2 debug_print::i#2 print_sbyte_at::b#24 print_byte_at::at#0 print_char_at::ch#2 print_char_at::at#2 ] main:11::anim:19::debug_print:51::print_sbyte_at:98::print_byte_at:109 [ sx#10 sy#10 sz#10 debug_print::c#2 debug_print::i#2 print_sbyte_at::b#24 print_byte_at::at#0 print_char_at::ch#2 print_char_at::at#2 ] main:11::debug_print_init:17::print_sbyte_at:237::print_byte_at:109 [ debug_print_init::c#2 debug_print_init::i#2 print_sbyte_at::b#24 print_byte_at::at#0 print_char_at::ch#2 print_char_at::at#2 ] main:11::debug_print_init:17::print_sbyte_at:240::print_byte_at:109 [ debug_print_init::c#2 debug_print_init::i#2 print_sbyte_at::b#24 print_byte_at::at#0 print_char_at::ch#2 print_char_at::at#2 ] main:11::debug_print_init:17::print_sbyte_at:243::print_byte_at:109 [ debug_print_init::c#2 debug_print_init::i#2 print_sbyte_at::b#24 print_byte_at::at#0 print_char_at::ch#2 print_char_at::at#2 ] ) always clobbers reg byte a -Statement [121] (byte~) print_byte_at::$2 ← (byte)(signed byte) print_sbyte_at::b#24 & (byte/signed byte/word/signed word/dword/signed dword) 15 [ print_byte_at::at#0 print_byte_at::$2 ] ( main:11::anim:19::debug_print:51::print_sbyte_at:57::print_byte_at:109 [ sx#10 sy#10 sz#10 print_byte_at::at#0 print_byte_at::$2 ] main:11::anim:19::debug_print:51::print_sbyte_at:59::print_byte_at:109 [ sx#10 sy#10 sz#10 print_byte_at::at#0 print_byte_at::$2 ] main:11::anim:19::debug_print:51::print_sbyte_at:61::print_byte_at:109 [ sx#10 sy#10 sz#10 print_byte_at::at#0 print_byte_at::$2 ] main:11::anim:19::debug_print:51::print_sbyte_at:63::print_byte_at:109 [ sx#10 sy#10 sz#10 print_byte_at::at#0 print_byte_at::$2 ] main:11::anim:19::debug_print:51::print_sbyte_at:65::print_byte_at:109 [ sx#10 sy#10 sz#10 print_byte_at::at#0 print_byte_at::$2 ] main:11::anim:19::debug_print:51::print_sbyte_at:67::print_byte_at:109 [ sx#10 sy#10 sz#10 print_byte_at::at#0 print_byte_at::$2 ] main:11::anim:19::debug_print:51::print_sbyte_at:69::print_byte_at:109 [ sx#10 sy#10 sz#10 print_byte_at::at#0 print_byte_at::$2 ] main:11::anim:19::debug_print:51::print_sbyte_at:71::print_byte_at:109 [ sx#10 sy#10 sz#10 print_byte_at::at#0 print_byte_at::$2 ] main:11::anim:19::debug_print:51::print_sbyte_at:73::print_byte_at:109 [ sx#10 sy#10 sz#10 print_byte_at::at#0 print_byte_at::$2 ] main:11::anim:19::debug_print:51::print_sbyte_at:75::print_byte_at:109 [ sx#10 sy#10 sz#10 print_byte_at::at#0 print_byte_at::$2 ] main:11::anim:19::debug_print:51::print_sbyte_at:77::print_byte_at:109 [ sx#10 sy#10 sz#10 print_byte_at::at#0 print_byte_at::$2 ] main:11::anim:19::debug_print:51::print_sbyte_at:79::print_byte_at:109 [ sx#10 sy#10 sz#10 print_byte_at::at#0 print_byte_at::$2 ] main:11::anim:19::debug_print:51::print_sbyte_at:83::print_byte_at:109 [ sx#10 sy#10 sz#10 debug_print::c#2 debug_print::i#2 print_byte_at::at#0 print_byte_at::$2 ] main:11::anim:19::debug_print:51::print_sbyte_at:86::print_byte_at:109 [ sx#10 sy#10 sz#10 debug_print::c#2 debug_print::i#2 print_byte_at::at#0 print_byte_at::$2 ] main:11::anim:19::debug_print:51::print_sbyte_at:89::print_byte_at:109 [ sx#10 sy#10 sz#10 debug_print::c#2 debug_print::i#2 print_byte_at::at#0 print_byte_at::$2 ] main:11::anim:19::debug_print:51::print_sbyte_at:92::print_byte_at:109 [ sx#10 sy#10 sz#10 debug_print::c#2 debug_print::i#2 print_byte_at::at#0 print_byte_at::$2 ] main:11::anim:19::debug_print:51::print_sbyte_at:95::print_byte_at:109 [ sx#10 sy#10 sz#10 debug_print::c#2 debug_print::i#2 print_byte_at::at#0 print_byte_at::$2 ] main:11::anim:19::debug_print:51::print_sbyte_at:98::print_byte_at:109 [ sx#10 sy#10 sz#10 debug_print::c#2 debug_print::i#2 print_byte_at::at#0 print_byte_at::$2 ] main:11::debug_print_init:17::print_sbyte_at:237::print_byte_at:109 [ debug_print_init::c#2 debug_print_init::i#2 print_byte_at::at#0 print_byte_at::$2 ] main:11::debug_print_init:17::print_sbyte_at:240::print_byte_at:109 [ debug_print_init::c#2 debug_print_init::i#2 print_byte_at::at#0 print_byte_at::$2 ] main:11::debug_print_init:17::print_sbyte_at:243::print_byte_at:109 [ debug_print_init::c#2 debug_print_init::i#2 print_byte_at::at#0 print_byte_at::$2 ] ) always clobbers reg byte a -Statement [122] (byte*) print_char_at::at#3 ← (byte*) print_byte_at::at#0 + (byte/signed byte/word/signed word/dword/signed dword) 1 [ print_char_at::at#3 print_byte_at::$2 ] ( main:11::anim:19::debug_print:51::print_sbyte_at:57::print_byte_at:109 [ sx#10 sy#10 sz#10 print_char_at::at#3 print_byte_at::$2 ] main:11::anim:19::debug_print:51::print_sbyte_at:59::print_byte_at:109 [ sx#10 sy#10 sz#10 print_char_at::at#3 print_byte_at::$2 ] main:11::anim:19::debug_print:51::print_sbyte_at:61::print_byte_at:109 [ sx#10 sy#10 sz#10 print_char_at::at#3 print_byte_at::$2 ] main:11::anim:19::debug_print:51::print_sbyte_at:63::print_byte_at:109 [ sx#10 sy#10 sz#10 print_char_at::at#3 print_byte_at::$2 ] main:11::anim:19::debug_print:51::print_sbyte_at:65::print_byte_at:109 [ sx#10 sy#10 sz#10 print_char_at::at#3 print_byte_at::$2 ] main:11::anim:19::debug_print:51::print_sbyte_at:67::print_byte_at:109 [ sx#10 sy#10 sz#10 print_char_at::at#3 print_byte_at::$2 ] main:11::anim:19::debug_print:51::print_sbyte_at:69::print_byte_at:109 [ sx#10 sy#10 sz#10 print_char_at::at#3 print_byte_at::$2 ] main:11::anim:19::debug_print:51::print_sbyte_at:71::print_byte_at:109 [ sx#10 sy#10 sz#10 print_char_at::at#3 print_byte_at::$2 ] main:11::anim:19::debug_print:51::print_sbyte_at:73::print_byte_at:109 [ sx#10 sy#10 sz#10 print_char_at::at#3 print_byte_at::$2 ] main:11::anim:19::debug_print:51::print_sbyte_at:75::print_byte_at:109 [ sx#10 sy#10 sz#10 print_char_at::at#3 print_byte_at::$2 ] main:11::anim:19::debug_print:51::print_sbyte_at:77::print_byte_at:109 [ sx#10 sy#10 sz#10 print_char_at::at#3 print_byte_at::$2 ] main:11::anim:19::debug_print:51::print_sbyte_at:79::print_byte_at:109 [ sx#10 sy#10 sz#10 print_char_at::at#3 print_byte_at::$2 ] main:11::anim:19::debug_print:51::print_sbyte_at:83::print_byte_at:109 [ sx#10 sy#10 sz#10 debug_print::c#2 debug_print::i#2 print_char_at::at#3 print_byte_at::$2 ] main:11::anim:19::debug_print:51::print_sbyte_at:86::print_byte_at:109 [ sx#10 sy#10 sz#10 debug_print::c#2 debug_print::i#2 print_char_at::at#3 print_byte_at::$2 ] main:11::anim:19::debug_print:51::print_sbyte_at:89::print_byte_at:109 [ sx#10 sy#10 sz#10 debug_print::c#2 debug_print::i#2 print_char_at::at#3 print_byte_at::$2 ] main:11::anim:19::debug_print:51::print_sbyte_at:92::print_byte_at:109 [ sx#10 sy#10 sz#10 debug_print::c#2 debug_print::i#2 print_char_at::at#3 print_byte_at::$2 ] main:11::anim:19::debug_print:51::print_sbyte_at:95::print_byte_at:109 [ sx#10 sy#10 sz#10 debug_print::c#2 debug_print::i#2 print_char_at::at#3 print_byte_at::$2 ] main:11::anim:19::debug_print:51::print_sbyte_at:98::print_byte_at:109 [ sx#10 sy#10 sz#10 debug_print::c#2 debug_print::i#2 print_char_at::at#3 print_byte_at::$2 ] main:11::debug_print_init:17::print_sbyte_at:237::print_byte_at:109 [ debug_print_init::c#2 debug_print_init::i#2 print_char_at::at#3 print_byte_at::$2 ] main:11::debug_print_init:17::print_sbyte_at:240::print_byte_at:109 [ debug_print_init::c#2 debug_print_init::i#2 print_char_at::at#3 print_byte_at::$2 ] main:11::debug_print_init:17::print_sbyte_at:243::print_byte_at:109 [ debug_print_init::c#2 debug_print_init::i#2 print_char_at::at#3 print_byte_at::$2 ] ) always clobbers reg byte a +Statement [21] if(*((const byte*) RASTER#0)!=(byte/word/signed word/dword/signed dword) 255) goto anim::@4 [ sx#10 sy#10 ] ( main:11::anim:17 [ sx#10 sy#10 ] ) always clobbers reg byte a +Statement [34] *((const signed byte[8]) xrs#0 + (byte) anim::i#2) ← *((const signed byte*) xr#0) [ sx#10 sy#10 anim::i#2 ] ( main:11::anim:17 [ sx#10 sy#10 anim::i#2 ] ) always clobbers reg byte a reg byte y +Statement [35] *((const signed byte[8]) yrs#0 + (byte) anim::i#2) ← *((const signed byte*) yr#0) [ sx#10 sy#10 anim::i#2 ] ( main:11::anim:17 [ sx#10 sy#10 anim::i#2 ] ) always clobbers reg byte a reg byte y +Statement [36] *((const signed byte[8]) zrs#0 + (byte) anim::i#2) ← *((const signed byte*) zr#0) [ sx#10 sy#10 anim::i#2 ] ( main:11::anim:17 [ sx#10 sy#10 anim::i#2 ] ) always clobbers reg byte a reg byte y +Statement [37] *((const signed byte[8]) pps#0 + (byte) anim::i#2) ← *((const signed byte*) pp#0) [ sx#10 sy#10 anim::i#2 ] ( main:11::anim:17 [ sx#10 sy#10 anim::i#2 ] ) always clobbers reg byte a reg byte y +Statement [38] *((const signed byte[8]) xps#0 + (byte) anim::i#2) ← *((const signed byte*) xp#0) [ sx#10 sy#10 anim::i#2 ] ( main:11::anim:17 [ sx#10 sy#10 anim::i#2 ] ) always clobbers reg byte a reg byte y +Statement [39] *((const signed byte[8]) yps#0 + (byte) anim::i#2) ← *((const signed byte*) yp#0) [ sx#10 sy#10 anim::i#2 ] ( main:11::anim:17 [ sx#10 sy#10 anim::i#2 ] ) always clobbers reg byte a reg byte y +Statement [40] (byte) anim::i2#0 ← (byte) anim::i#2 << (byte/signed byte/word/signed word/dword/signed dword) 1 [ sx#10 sy#10 anim::i#2 anim::i2#0 ] ( main:11::anim:17 [ sx#10 sy#10 anim::i#2 anim::i2#0 ] ) always clobbers reg byte a +Statement [41] (byte/word/signed word/dword/signed dword~) anim::$6 ← (byte/word/signed word/dword/signed dword) 128 + (byte)*((const signed byte*) xp#0) [ sx#10 sy#10 anim::i#2 anim::i2#0 anim::$6 ] ( main:11::anim:17 [ sx#10 sy#10 anim::i#2 anim::i2#0 anim::$6 ] ) always clobbers reg byte a +Statement [43] (byte/word/signed word/dword/signed dword~) anim::$8 ← (byte/word/signed word/dword/signed dword) 128 + (byte)*((const signed byte*) yp#0) [ sx#10 sy#10 anim::i#2 anim::i2#0 anim::$8 ] ( main:11::anim:17 [ sx#10 sy#10 anim::i#2 anim::i2#0 anim::$8 ] ) always clobbers reg byte a +Statement [46] if((byte) anim::i#1!=(byte/signed byte/word/signed word/dword/signed dword) 8) goto anim::@7 [ sx#10 sy#10 anim::i#1 ] ( main:11::anim:17 [ sx#10 sy#10 anim::i#1 ] ) always clobbers reg byte a +Statement [47] *((const byte*) BORDERCOL#0) ← (const byte) LIGHT_GREY#0 [ sx#10 sy#10 ] ( main:11::anim:17 [ sx#10 sy#10 ] ) always clobbers reg byte a +Statement [48] *((const byte*) BORDERCOL#0) ← (const byte) LIGHT_BLUE#0 [ sx#10 sy#10 ] ( main:11::anim:17 [ sx#10 sy#10 ] ) always clobbers reg byte a +Statement [50] (signed byte) sy#3 ← (signed byte) sy#10 - (byte/signed byte/word/signed word/dword/signed dword) 3 [ sx#3 sy#3 ] ( main:11::anim:17 [ sx#3 sy#3 ] ) always clobbers reg byte a Statement asm { ldxzr C1: ldamulf_sqr1,x sec C2: sbcmulf_sqr2,x staC3+1 F1: ldamulf_sqr1,x sec F2: sbcmulf_sqr2,x staF3+1 I1: ldamulf_sqr1,x sec I2: sbcmulf_sqr2,x staI3+1 ldxxr ldyyr I3: lda#0 clc G1: adcmulf_sqr1,x sec G2: sbcmulf_sqr2,x clc H1: adcmulf_sqr1,y sec H2: sbcmulf_sqr2,y stazr staPP+1 PP: ldaPERSP_Z stapp stapsp1 eor#$ff stapsp2 C3: lda#0 clc A1: adcmulf_sqr1,x sec A2: sbcmulf_sqr2,x clc B1: adcmulf_sqr1,y sec B2: sbcmulf_sqr2,y staxr staXX+1 clc F3: lda#0 clc D1: adcmulf_sqr1,x sec D2: sbcmulf_sqr2,x clc E1: adcmulf_sqr1,y sec E2: sbcmulf_sqr2,y stayr tay lda(psp1),y sec sbc(psp2),y stayp XX: ldy#0 lda(psp1),y sec sbc(psp2),y staxp } always clobbers reg byte a reg byte x reg byte y Statement asm { ldarotation_matrix+0 starotate_matrix.A1+1 eor#$ff starotate_matrix.A2+1 ldarotation_matrix+1 starotate_matrix.B1+1 eor#$ff starotate_matrix.B2+1 ldarotation_matrix+2 starotate_matrix.C1+1 eor#$ff starotate_matrix.C2+1 ldarotation_matrix+3 starotate_matrix.D1+1 eor#$ff starotate_matrix.D2+1 ldarotation_matrix+4 starotate_matrix.E1+1 eor#$ff starotate_matrix.E2+1 ldarotation_matrix+5 starotate_matrix.F1+1 eor#$ff starotate_matrix.F2+1 ldarotation_matrix+6 starotate_matrix.G1+1 eor#$ff starotate_matrix.G2+1 ldarotation_matrix+7 starotate_matrix.H1+1 eor#$ff starotate_matrix.H2+1 ldarotation_matrix+8 starotate_matrix.I1+1 eor#$ff starotate_matrix.I2+1 } always clobbers reg byte a -Statement [133] (signed byte) calculate_matrix_16::t1#0 ← (signed byte) calculate_matrix_16::sy#0 - (signed byte) calculate_matrix_16::sz#0 [ calculate_matrix_16::sx#0 calculate_matrix_16::sy#0 calculate_matrix_16::sz#0 calculate_matrix_16::t1#0 ] ( main:11::anim:19::calculate_matrix_16:28 [ sx#10 sy#10 sz#10 calculate_matrix_16::sx#0 calculate_matrix_16::sy#0 calculate_matrix_16::sz#0 calculate_matrix_16::t1#0 ] ) always clobbers reg byte a -Statement [134] (signed byte) calculate_matrix_16::t2#0 ← (signed byte) calculate_matrix_16::sy#0 + (signed byte) calculate_matrix_16::sz#0 [ calculate_matrix_16::sx#0 calculate_matrix_16::sy#0 calculate_matrix_16::sz#0 calculate_matrix_16::t1#0 calculate_matrix_16::t2#0 ] ( main:11::anim:19::calculate_matrix_16:28 [ sx#10 sy#10 sz#10 calculate_matrix_16::sx#0 calculate_matrix_16::sy#0 calculate_matrix_16::sz#0 calculate_matrix_16::t1#0 calculate_matrix_16::t2#0 ] ) always clobbers reg byte a -Statement [135] (word~) calculate_matrix_16::$74 ← *((const byte*) COSH_HI#0 + (signed byte) calculate_matrix_16::t1#0) w= *((const byte*) COSH_LO#0 + (signed byte) calculate_matrix_16::t1#0) [ calculate_matrix_16::sx#0 calculate_matrix_16::sy#0 calculate_matrix_16::sz#0 calculate_matrix_16::t1#0 calculate_matrix_16::t2#0 calculate_matrix_16::$74 ] ( main:11::anim:19::calculate_matrix_16:28 [ sx#10 sy#10 sz#10 calculate_matrix_16::sx#0 calculate_matrix_16::sy#0 calculate_matrix_16::sz#0 calculate_matrix_16::t1#0 calculate_matrix_16::t2#0 calculate_matrix_16::$74 ] ) always clobbers reg byte a -Statement [136] (word~) calculate_matrix_16::$75 ← *((const byte*) COSH_HI#0 + (signed byte) calculate_matrix_16::t2#0) w= *((const byte*) COSH_LO#0 + (signed byte) calculate_matrix_16::t2#0) [ calculate_matrix_16::sx#0 calculate_matrix_16::sy#0 calculate_matrix_16::sz#0 calculate_matrix_16::t1#0 calculate_matrix_16::t2#0 calculate_matrix_16::$74 calculate_matrix_16::$75 ] ( main:11::anim:19::calculate_matrix_16:28 [ sx#10 sy#10 sz#10 calculate_matrix_16::sx#0 calculate_matrix_16::sy#0 calculate_matrix_16::sz#0 calculate_matrix_16::t1#0 calculate_matrix_16::t2#0 calculate_matrix_16::$74 calculate_matrix_16::$75 ] ) always clobbers reg byte a -Statement [137] (signed word~) calculate_matrix_16::$4 ← (signed word)(word~) calculate_matrix_16::$74 + (signed word)(word~) calculate_matrix_16::$75 [ calculate_matrix_16::sx#0 calculate_matrix_16::sy#0 calculate_matrix_16::sz#0 calculate_matrix_16::t1#0 calculate_matrix_16::t2#0 calculate_matrix_16::$4 ] ( main:11::anim:19::calculate_matrix_16:28 [ sx#10 sy#10 sz#10 calculate_matrix_16::sx#0 calculate_matrix_16::sy#0 calculate_matrix_16::sz#0 calculate_matrix_16::t1#0 calculate_matrix_16::t2#0 calculate_matrix_16::$4 ] ) always clobbers reg byte a -Statement [138] (byte~) calculate_matrix_16::$5 ← > (signed word~) calculate_matrix_16::$4 [ calculate_matrix_16::sx#0 calculate_matrix_16::sy#0 calculate_matrix_16::sz#0 calculate_matrix_16::t1#0 calculate_matrix_16::t2#0 calculate_matrix_16::$5 ] ( main:11::anim:19::calculate_matrix_16:28 [ sx#10 sy#10 sz#10 calculate_matrix_16::sx#0 calculate_matrix_16::sy#0 calculate_matrix_16::sz#0 calculate_matrix_16::t1#0 calculate_matrix_16::t2#0 calculate_matrix_16::$5 ] ) always clobbers reg byte a -Statement [140] (word~) calculate_matrix_16::$76 ← *((const byte*) SINH_HI#0 + (signed byte) calculate_matrix_16::t1#0) w= *((const byte*) SINH_LO#0 + (signed byte) calculate_matrix_16::t1#0) [ calculate_matrix_16::sx#0 calculate_matrix_16::sy#0 calculate_matrix_16::sz#0 calculate_matrix_16::t1#0 calculate_matrix_16::t2#0 calculate_matrix_16::$76 ] ( main:11::anim:19::calculate_matrix_16:28 [ sx#10 sy#10 sz#10 calculate_matrix_16::sx#0 calculate_matrix_16::sy#0 calculate_matrix_16::sz#0 calculate_matrix_16::t1#0 calculate_matrix_16::t2#0 calculate_matrix_16::$76 ] ) always clobbers reg byte a -Statement [141] (word~) calculate_matrix_16::$77 ← *((const byte*) SINH_HI#0 + (signed byte) calculate_matrix_16::t2#0) w= *((const byte*) SINH_LO#0 + (signed byte) calculate_matrix_16::t2#0) [ calculate_matrix_16::sx#0 calculate_matrix_16::sy#0 calculate_matrix_16::sz#0 calculate_matrix_16::t1#0 calculate_matrix_16::t2#0 calculate_matrix_16::$76 calculate_matrix_16::$77 ] ( main:11::anim:19::calculate_matrix_16:28 [ sx#10 sy#10 sz#10 calculate_matrix_16::sx#0 calculate_matrix_16::sy#0 calculate_matrix_16::sz#0 calculate_matrix_16::t1#0 calculate_matrix_16::t2#0 calculate_matrix_16::$76 calculate_matrix_16::$77 ] ) always clobbers reg byte a -Statement [142] (signed word~) calculate_matrix_16::$9 ← (signed word)(word~) calculate_matrix_16::$76 - (signed word)(word~) calculate_matrix_16::$77 [ calculate_matrix_16::sx#0 calculate_matrix_16::sy#0 calculate_matrix_16::sz#0 calculate_matrix_16::t1#0 calculate_matrix_16::t2#0 calculate_matrix_16::$9 ] ( main:11::anim:19::calculate_matrix_16:28 [ sx#10 sy#10 sz#10 calculate_matrix_16::sx#0 calculate_matrix_16::sy#0 calculate_matrix_16::sz#0 calculate_matrix_16::t1#0 calculate_matrix_16::t2#0 calculate_matrix_16::$9 ] ) always clobbers reg byte a -Statement [143] (byte~) calculate_matrix_16::$10 ← > (signed word~) calculate_matrix_16::$9 [ calculate_matrix_16::sx#0 calculate_matrix_16::sy#0 calculate_matrix_16::sz#0 calculate_matrix_16::t1#0 calculate_matrix_16::t2#0 calculate_matrix_16::$10 ] ( main:11::anim:19::calculate_matrix_16:28 [ sx#10 sy#10 sz#10 calculate_matrix_16::sx#0 calculate_matrix_16::sy#0 calculate_matrix_16::sz#0 calculate_matrix_16::t1#0 calculate_matrix_16::t2#0 calculate_matrix_16::$10 ] ) always clobbers reg byte a -Statement [145] (word~) calculate_matrix_16::$78 ← *((const byte*) SINH_HI#0 + (signed byte) calculate_matrix_16::sy#0) w= *((const byte*) SINH_LO#0 + (signed byte) calculate_matrix_16::sy#0) [ calculate_matrix_16::sx#0 calculate_matrix_16::sy#0 calculate_matrix_16::sz#0 calculate_matrix_16::t1#0 calculate_matrix_16::t2#0 calculate_matrix_16::$78 ] ( main:11::anim:19::calculate_matrix_16:28 [ sx#10 sy#10 sz#10 calculate_matrix_16::sx#0 calculate_matrix_16::sy#0 calculate_matrix_16::sz#0 calculate_matrix_16::t1#0 calculate_matrix_16::t2#0 calculate_matrix_16::$78 ] ) always clobbers reg byte a -Statement [146] (signed word~) calculate_matrix_16::$13 ← (signed word)(word~) calculate_matrix_16::$78 + (signed word)(word~) calculate_matrix_16::$78 [ calculate_matrix_16::sx#0 calculate_matrix_16::sy#0 calculate_matrix_16::sz#0 calculate_matrix_16::t1#0 calculate_matrix_16::t2#0 calculate_matrix_16::$13 ] ( main:11::anim:19::calculate_matrix_16:28 [ sx#10 sy#10 sz#10 calculate_matrix_16::sx#0 calculate_matrix_16::sy#0 calculate_matrix_16::sz#0 calculate_matrix_16::t1#0 calculate_matrix_16::t2#0 calculate_matrix_16::$13 ] ) always clobbers reg byte a -Statement [147] (byte~) calculate_matrix_16::$14 ← > (signed word~) calculate_matrix_16::$13 [ calculate_matrix_16::sx#0 calculate_matrix_16::sy#0 calculate_matrix_16::sz#0 calculate_matrix_16::t1#0 calculate_matrix_16::t2#0 calculate_matrix_16::$14 ] ( main:11::anim:19::calculate_matrix_16:28 [ sx#10 sy#10 sz#10 calculate_matrix_16::sx#0 calculate_matrix_16::sy#0 calculate_matrix_16::sz#0 calculate_matrix_16::t1#0 calculate_matrix_16::t2#0 calculate_matrix_16::$14 ] ) always clobbers reg byte a -Statement [149] (signed byte) calculate_matrix_16::t3#0 ← (signed byte) calculate_matrix_16::sx#0 + (signed byte) calculate_matrix_16::sz#0 [ calculate_matrix_16::sx#0 calculate_matrix_16::sy#0 calculate_matrix_16::sz#0 calculate_matrix_16::t1#0 calculate_matrix_16::t2#0 calculate_matrix_16::t3#0 ] ( main:11::anim:19::calculate_matrix_16:28 [ sx#10 sy#10 sz#10 calculate_matrix_16::sx#0 calculate_matrix_16::sy#0 calculate_matrix_16::sz#0 calculate_matrix_16::t1#0 calculate_matrix_16::t2#0 calculate_matrix_16::t3#0 ] ) always clobbers reg byte a -Statement [150] (signed byte) calculate_matrix_16::t4#0 ← (signed byte) calculate_matrix_16::sx#0 - (signed byte) calculate_matrix_16::sz#0 [ calculate_matrix_16::sx#0 calculate_matrix_16::sy#0 calculate_matrix_16::t1#0 calculate_matrix_16::t2#0 calculate_matrix_16::t3#0 calculate_matrix_16::t4#0 ] ( main:11::anim:19::calculate_matrix_16:28 [ sx#10 sy#10 sz#10 calculate_matrix_16::sx#0 calculate_matrix_16::sy#0 calculate_matrix_16::t1#0 calculate_matrix_16::t2#0 calculate_matrix_16::t3#0 calculate_matrix_16::t4#0 ] ) always clobbers reg byte a -Statement [151] (signed byte) calculate_matrix_16::t5#0 ← (signed byte) calculate_matrix_16::sx#0 + (signed byte) calculate_matrix_16::t2#0 [ calculate_matrix_16::sx#0 calculate_matrix_16::sy#0 calculate_matrix_16::t1#0 calculate_matrix_16::t2#0 calculate_matrix_16::t3#0 calculate_matrix_16::t4#0 calculate_matrix_16::t5#0 ] ( main:11::anim:19::calculate_matrix_16:28 [ sx#10 sy#10 sz#10 calculate_matrix_16::sx#0 calculate_matrix_16::sy#0 calculate_matrix_16::t1#0 calculate_matrix_16::t2#0 calculate_matrix_16::t3#0 calculate_matrix_16::t4#0 calculate_matrix_16::t5#0 ] ) always clobbers reg byte a -Statement [152] (signed byte) calculate_matrix_16::t6#0 ← (signed byte) calculate_matrix_16::sx#0 - (signed byte) calculate_matrix_16::t1#0 [ calculate_matrix_16::sx#0 calculate_matrix_16::sy#0 calculate_matrix_16::t1#0 calculate_matrix_16::t2#0 calculate_matrix_16::t3#0 calculate_matrix_16::t4#0 calculate_matrix_16::t5#0 calculate_matrix_16::t6#0 ] ( main:11::anim:19::calculate_matrix_16:28 [ sx#10 sy#10 sz#10 calculate_matrix_16::sx#0 calculate_matrix_16::sy#0 calculate_matrix_16::t1#0 calculate_matrix_16::t2#0 calculate_matrix_16::t3#0 calculate_matrix_16::t4#0 calculate_matrix_16::t5#0 calculate_matrix_16::t6#0 ] ) always clobbers reg byte a -Statement [153] (signed byte) calculate_matrix_16::t7#0 ← (signed byte) calculate_matrix_16::sx#0 + (signed byte) calculate_matrix_16::t1#0 [ calculate_matrix_16::sx#0 calculate_matrix_16::sy#0 calculate_matrix_16::t2#0 calculate_matrix_16::t3#0 calculate_matrix_16::t4#0 calculate_matrix_16::t5#0 calculate_matrix_16::t6#0 calculate_matrix_16::t7#0 ] ( main:11::anim:19::calculate_matrix_16:28 [ sx#10 sy#10 sz#10 calculate_matrix_16::sx#0 calculate_matrix_16::sy#0 calculate_matrix_16::t2#0 calculate_matrix_16::t3#0 calculate_matrix_16::t4#0 calculate_matrix_16::t5#0 calculate_matrix_16::t6#0 calculate_matrix_16::t7#0 ] ) always clobbers reg byte a -Statement [154] (signed byte) calculate_matrix_16::t8#0 ← (signed byte) calculate_matrix_16::t2#0 - (signed byte) calculate_matrix_16::sx#0 [ calculate_matrix_16::sx#0 calculate_matrix_16::sy#0 calculate_matrix_16::t3#0 calculate_matrix_16::t4#0 calculate_matrix_16::t5#0 calculate_matrix_16::t6#0 calculate_matrix_16::t7#0 calculate_matrix_16::t8#0 ] ( main:11::anim:19::calculate_matrix_16:28 [ sx#10 sy#10 sz#10 calculate_matrix_16::sx#0 calculate_matrix_16::sy#0 calculate_matrix_16::t3#0 calculate_matrix_16::t4#0 calculate_matrix_16::t5#0 calculate_matrix_16::t6#0 calculate_matrix_16::t7#0 calculate_matrix_16::t8#0 ] ) always clobbers reg byte a -Statement [155] (word~) calculate_matrix_16::$79 ← *((const byte*) SINH_HI#0 + (signed byte) calculate_matrix_16::t3#0) w= *((const byte*) SINH_LO#0 + (signed byte) calculate_matrix_16::t3#0) [ calculate_matrix_16::sx#0 calculate_matrix_16::sy#0 calculate_matrix_16::t3#0 calculate_matrix_16::t4#0 calculate_matrix_16::t5#0 calculate_matrix_16::t6#0 calculate_matrix_16::t7#0 calculate_matrix_16::t8#0 calculate_matrix_16::$79 ] ( main:11::anim:19::calculate_matrix_16:28 [ sx#10 sy#10 sz#10 calculate_matrix_16::sx#0 calculate_matrix_16::sy#0 calculate_matrix_16::t3#0 calculate_matrix_16::t4#0 calculate_matrix_16::t5#0 calculate_matrix_16::t6#0 calculate_matrix_16::t7#0 calculate_matrix_16::t8#0 calculate_matrix_16::$79 ] ) always clobbers reg byte a -Statement [156] (word~) calculate_matrix_16::$80 ← *((const byte*) SINH_HI#0 + (signed byte) calculate_matrix_16::t4#0) w= *((const byte*) SINH_LO#0 + (signed byte) calculate_matrix_16::t4#0) [ calculate_matrix_16::sx#0 calculate_matrix_16::sy#0 calculate_matrix_16::t3#0 calculate_matrix_16::t4#0 calculate_matrix_16::t5#0 calculate_matrix_16::t6#0 calculate_matrix_16::t7#0 calculate_matrix_16::t8#0 calculate_matrix_16::$79 calculate_matrix_16::$80 ] ( main:11::anim:19::calculate_matrix_16:28 [ sx#10 sy#10 sz#10 calculate_matrix_16::sx#0 calculate_matrix_16::sy#0 calculate_matrix_16::t3#0 calculate_matrix_16::t4#0 calculate_matrix_16::t5#0 calculate_matrix_16::t6#0 calculate_matrix_16::t7#0 calculate_matrix_16::t8#0 calculate_matrix_16::$79 calculate_matrix_16::$80 ] ) always clobbers reg byte a -Statement [157] (word~) calculate_matrix_16::$81 ← *((const byte*) COSQ_HI#0 + (signed byte) calculate_matrix_16::t5#0) w= *((const byte*) COSH_LO#0 + (signed byte) calculate_matrix_16::t5#0) [ calculate_matrix_16::sx#0 calculate_matrix_16::sy#0 calculate_matrix_16::t3#0 calculate_matrix_16::t4#0 calculate_matrix_16::t5#0 calculate_matrix_16::t6#0 calculate_matrix_16::t7#0 calculate_matrix_16::t8#0 calculate_matrix_16::$79 calculate_matrix_16::$80 calculate_matrix_16::$81 ] ( main:11::anim:19::calculate_matrix_16:28 [ sx#10 sy#10 sz#10 calculate_matrix_16::sx#0 calculate_matrix_16::sy#0 calculate_matrix_16::t3#0 calculate_matrix_16::t4#0 calculate_matrix_16::t5#0 calculate_matrix_16::t6#0 calculate_matrix_16::t7#0 calculate_matrix_16::t8#0 calculate_matrix_16::$79 calculate_matrix_16::$80 calculate_matrix_16::$81 ] ) always clobbers reg byte a -Statement [158] (word~) calculate_matrix_16::$82 ← *((const byte*) COSQ_HI#0 + (signed byte) calculate_matrix_16::t6#0) w= *((const byte*) COSH_LO#0 + (signed byte) calculate_matrix_16::t6#0) [ calculate_matrix_16::sx#0 calculate_matrix_16::sy#0 calculate_matrix_16::t3#0 calculate_matrix_16::t4#0 calculate_matrix_16::t5#0 calculate_matrix_16::t6#0 calculate_matrix_16::t7#0 calculate_matrix_16::t8#0 calculate_matrix_16::$79 calculate_matrix_16::$80 calculate_matrix_16::$81 calculate_matrix_16::$82 ] ( main:11::anim:19::calculate_matrix_16:28 [ sx#10 sy#10 sz#10 calculate_matrix_16::sx#0 calculate_matrix_16::sy#0 calculate_matrix_16::t3#0 calculate_matrix_16::t4#0 calculate_matrix_16::t5#0 calculate_matrix_16::t6#0 calculate_matrix_16::t7#0 calculate_matrix_16::t8#0 calculate_matrix_16::$79 calculate_matrix_16::$80 calculate_matrix_16::$81 calculate_matrix_16::$82 ] ) always clobbers reg byte a -Statement [159] (word~) calculate_matrix_16::$83 ← *((const byte*) COSQ_HI#0 + (signed byte) calculate_matrix_16::t7#0) w= *((const byte*) COSH_LO#0 + (signed byte) calculate_matrix_16::t7#0) [ calculate_matrix_16::sx#0 calculate_matrix_16::sy#0 calculate_matrix_16::t3#0 calculate_matrix_16::t4#0 calculate_matrix_16::t5#0 calculate_matrix_16::t6#0 calculate_matrix_16::t7#0 calculate_matrix_16::t8#0 calculate_matrix_16::$79 calculate_matrix_16::$80 calculate_matrix_16::$81 calculate_matrix_16::$82 calculate_matrix_16::$83 ] ( main:11::anim:19::calculate_matrix_16:28 [ sx#10 sy#10 sz#10 calculate_matrix_16::sx#0 calculate_matrix_16::sy#0 calculate_matrix_16::t3#0 calculate_matrix_16::t4#0 calculate_matrix_16::t5#0 calculate_matrix_16::t6#0 calculate_matrix_16::t7#0 calculate_matrix_16::t8#0 calculate_matrix_16::$79 calculate_matrix_16::$80 calculate_matrix_16::$81 calculate_matrix_16::$82 calculate_matrix_16::$83 ] ) always clobbers reg byte a -Statement [160] (word~) calculate_matrix_16::$84 ← *((const byte*) COSQ_HI#0 + (signed byte) calculate_matrix_16::t8#0) w= *((const byte*) COSH_LO#0 + (signed byte) calculate_matrix_16::t8#0) [ calculate_matrix_16::sx#0 calculate_matrix_16::sy#0 calculate_matrix_16::t3#0 calculate_matrix_16::t4#0 calculate_matrix_16::t5#0 calculate_matrix_16::t6#0 calculate_matrix_16::t7#0 calculate_matrix_16::t8#0 calculate_matrix_16::$79 calculate_matrix_16::$80 calculate_matrix_16::$81 calculate_matrix_16::$82 calculate_matrix_16::$83 calculate_matrix_16::$84 ] ( main:11::anim:19::calculate_matrix_16:28 [ sx#10 sy#10 sz#10 calculate_matrix_16::sx#0 calculate_matrix_16::sy#0 calculate_matrix_16::t3#0 calculate_matrix_16::t4#0 calculate_matrix_16::t5#0 calculate_matrix_16::t6#0 calculate_matrix_16::t7#0 calculate_matrix_16::t8#0 calculate_matrix_16::$79 calculate_matrix_16::$80 calculate_matrix_16::$81 calculate_matrix_16::$82 calculate_matrix_16::$83 calculate_matrix_16::$84 ] ) always clobbers reg byte a -Statement [161] (signed word~) calculate_matrix_16::$28 ← (signed word)(word~) calculate_matrix_16::$79 - (signed word)(word~) calculate_matrix_16::$80 [ calculate_matrix_16::sx#0 calculate_matrix_16::sy#0 calculate_matrix_16::t3#0 calculate_matrix_16::t4#0 calculate_matrix_16::t5#0 calculate_matrix_16::t6#0 calculate_matrix_16::t7#0 calculate_matrix_16::t8#0 calculate_matrix_16::$79 calculate_matrix_16::$80 calculate_matrix_16::$81 calculate_matrix_16::$82 calculate_matrix_16::$83 calculate_matrix_16::$84 calculate_matrix_16::$28 ] ( main:11::anim:19::calculate_matrix_16:28 [ sx#10 sy#10 sz#10 calculate_matrix_16::sx#0 calculate_matrix_16::sy#0 calculate_matrix_16::t3#0 calculate_matrix_16::t4#0 calculate_matrix_16::t5#0 calculate_matrix_16::t6#0 calculate_matrix_16::t7#0 calculate_matrix_16::t8#0 calculate_matrix_16::$79 calculate_matrix_16::$80 calculate_matrix_16::$81 calculate_matrix_16::$82 calculate_matrix_16::$83 calculate_matrix_16::$84 calculate_matrix_16::$28 ] ) always clobbers reg byte a -Statement [162] (signed word~) calculate_matrix_16::$29 ← (signed word~) calculate_matrix_16::$28 + (signed word)(word~) calculate_matrix_16::$82 [ calculate_matrix_16::sx#0 calculate_matrix_16::sy#0 calculate_matrix_16::t3#0 calculate_matrix_16::t4#0 calculate_matrix_16::t5#0 calculate_matrix_16::t6#0 calculate_matrix_16::t7#0 calculate_matrix_16::t8#0 calculate_matrix_16::$79 calculate_matrix_16::$80 calculate_matrix_16::$81 calculate_matrix_16::$82 calculate_matrix_16::$83 calculate_matrix_16::$84 calculate_matrix_16::$29 ] ( main:11::anim:19::calculate_matrix_16:28 [ sx#10 sy#10 sz#10 calculate_matrix_16::sx#0 calculate_matrix_16::sy#0 calculate_matrix_16::t3#0 calculate_matrix_16::t4#0 calculate_matrix_16::t5#0 calculate_matrix_16::t6#0 calculate_matrix_16::t7#0 calculate_matrix_16::t8#0 calculate_matrix_16::$79 calculate_matrix_16::$80 calculate_matrix_16::$81 calculate_matrix_16::$82 calculate_matrix_16::$83 calculate_matrix_16::$84 calculate_matrix_16::$29 ] ) always clobbers reg byte a -Statement [163] (signed word~) calculate_matrix_16::$30 ← (signed word~) calculate_matrix_16::$29 - (signed word)(word~) calculate_matrix_16::$81 [ calculate_matrix_16::sx#0 calculate_matrix_16::sy#0 calculate_matrix_16::t3#0 calculate_matrix_16::t4#0 calculate_matrix_16::t5#0 calculate_matrix_16::t6#0 calculate_matrix_16::t7#0 calculate_matrix_16::t8#0 calculate_matrix_16::$79 calculate_matrix_16::$80 calculate_matrix_16::$81 calculate_matrix_16::$82 calculate_matrix_16::$83 calculate_matrix_16::$84 calculate_matrix_16::$30 ] ( main:11::anim:19::calculate_matrix_16:28 [ sx#10 sy#10 sz#10 calculate_matrix_16::sx#0 calculate_matrix_16::sy#0 calculate_matrix_16::t3#0 calculate_matrix_16::t4#0 calculate_matrix_16::t5#0 calculate_matrix_16::t6#0 calculate_matrix_16::t7#0 calculate_matrix_16::t8#0 calculate_matrix_16::$79 calculate_matrix_16::$80 calculate_matrix_16::$81 calculate_matrix_16::$82 calculate_matrix_16::$83 calculate_matrix_16::$84 calculate_matrix_16::$30 ] ) always clobbers reg byte a -Statement [164] (signed word~) calculate_matrix_16::$31 ← (signed word~) calculate_matrix_16::$30 + (signed word)(word~) calculate_matrix_16::$84 [ calculate_matrix_16::sx#0 calculate_matrix_16::sy#0 calculate_matrix_16::t3#0 calculate_matrix_16::t4#0 calculate_matrix_16::t5#0 calculate_matrix_16::t6#0 calculate_matrix_16::t7#0 calculate_matrix_16::t8#0 calculate_matrix_16::$79 calculate_matrix_16::$80 calculate_matrix_16::$81 calculate_matrix_16::$82 calculate_matrix_16::$83 calculate_matrix_16::$84 calculate_matrix_16::$31 ] ( main:11::anim:19::calculate_matrix_16:28 [ sx#10 sy#10 sz#10 calculate_matrix_16::sx#0 calculate_matrix_16::sy#0 calculate_matrix_16::t3#0 calculate_matrix_16::t4#0 calculate_matrix_16::t5#0 calculate_matrix_16::t6#0 calculate_matrix_16::t7#0 calculate_matrix_16::t8#0 calculate_matrix_16::$79 calculate_matrix_16::$80 calculate_matrix_16::$81 calculate_matrix_16::$82 calculate_matrix_16::$83 calculate_matrix_16::$84 calculate_matrix_16::$31 ] ) always clobbers reg byte a -Statement [165] (signed word~) calculate_matrix_16::$32 ← (signed word~) calculate_matrix_16::$31 - (signed word)(word~) calculate_matrix_16::$83 [ calculate_matrix_16::sx#0 calculate_matrix_16::sy#0 calculate_matrix_16::t3#0 calculate_matrix_16::t4#0 calculate_matrix_16::t5#0 calculate_matrix_16::t6#0 calculate_matrix_16::t7#0 calculate_matrix_16::t8#0 calculate_matrix_16::$79 calculate_matrix_16::$80 calculate_matrix_16::$81 calculate_matrix_16::$82 calculate_matrix_16::$83 calculate_matrix_16::$84 calculate_matrix_16::$32 ] ( main:11::anim:19::calculate_matrix_16:28 [ sx#10 sy#10 sz#10 calculate_matrix_16::sx#0 calculate_matrix_16::sy#0 calculate_matrix_16::t3#0 calculate_matrix_16::t4#0 calculate_matrix_16::t5#0 calculate_matrix_16::t6#0 calculate_matrix_16::t7#0 calculate_matrix_16::t8#0 calculate_matrix_16::$79 calculate_matrix_16::$80 calculate_matrix_16::$81 calculate_matrix_16::$82 calculate_matrix_16::$83 calculate_matrix_16::$84 calculate_matrix_16::$32 ] ) always clobbers reg byte a -Statement [166] (byte~) calculate_matrix_16::$33 ← > (signed word~) calculate_matrix_16::$32 [ calculate_matrix_16::sx#0 calculate_matrix_16::sy#0 calculate_matrix_16::t3#0 calculate_matrix_16::t4#0 calculate_matrix_16::t5#0 calculate_matrix_16::t6#0 calculate_matrix_16::t7#0 calculate_matrix_16::t8#0 calculate_matrix_16::$79 calculate_matrix_16::$80 calculate_matrix_16::$81 calculate_matrix_16::$82 calculate_matrix_16::$83 calculate_matrix_16::$84 calculate_matrix_16::$33 ] ( main:11::anim:19::calculate_matrix_16:28 [ sx#10 sy#10 sz#10 calculate_matrix_16::sx#0 calculate_matrix_16::sy#0 calculate_matrix_16::t3#0 calculate_matrix_16::t4#0 calculate_matrix_16::t5#0 calculate_matrix_16::t6#0 calculate_matrix_16::t7#0 calculate_matrix_16::t8#0 calculate_matrix_16::$79 calculate_matrix_16::$80 calculate_matrix_16::$81 calculate_matrix_16::$82 calculate_matrix_16::$83 calculate_matrix_16::$84 calculate_matrix_16::$33 ] ) always clobbers reg byte a -Statement [168] (signed word~) calculate_matrix_16::$35 ← (signed word)(word~) calculate_matrix_16::$79 + (signed word)(word~) calculate_matrix_16::$80 [ calculate_matrix_16::sx#0 calculate_matrix_16::sy#0 calculate_matrix_16::t3#0 calculate_matrix_16::t4#0 calculate_matrix_16::t5#0 calculate_matrix_16::t6#0 calculate_matrix_16::t7#0 calculate_matrix_16::t8#0 calculate_matrix_16::$81 calculate_matrix_16::$82 calculate_matrix_16::$83 calculate_matrix_16::$84 calculate_matrix_16::$35 ] ( main:11::anim:19::calculate_matrix_16:28 [ sx#10 sy#10 sz#10 calculate_matrix_16::sx#0 calculate_matrix_16::sy#0 calculate_matrix_16::t3#0 calculate_matrix_16::t4#0 calculate_matrix_16::t5#0 calculate_matrix_16::t6#0 calculate_matrix_16::t7#0 calculate_matrix_16::t8#0 calculate_matrix_16::$81 calculate_matrix_16::$82 calculate_matrix_16::$83 calculate_matrix_16::$84 calculate_matrix_16::$35 ] ) always clobbers reg byte a -Statement [169] (signed word~) calculate_matrix_16::$36 ← (signed word~) calculate_matrix_16::$35 + (signed word)(word~) calculate_matrix_16::$82 [ calculate_matrix_16::sx#0 calculate_matrix_16::sy#0 calculate_matrix_16::t3#0 calculate_matrix_16::t4#0 calculate_matrix_16::t5#0 calculate_matrix_16::t6#0 calculate_matrix_16::t7#0 calculate_matrix_16::t8#0 calculate_matrix_16::$81 calculate_matrix_16::$83 calculate_matrix_16::$84 calculate_matrix_16::$36 ] ( main:11::anim:19::calculate_matrix_16:28 [ sx#10 sy#10 sz#10 calculate_matrix_16::sx#0 calculate_matrix_16::sy#0 calculate_matrix_16::t3#0 calculate_matrix_16::t4#0 calculate_matrix_16::t5#0 calculate_matrix_16::t6#0 calculate_matrix_16::t7#0 calculate_matrix_16::t8#0 calculate_matrix_16::$81 calculate_matrix_16::$83 calculate_matrix_16::$84 calculate_matrix_16::$36 ] ) always clobbers reg byte a -Statement [170] (signed word~) calculate_matrix_16::$37 ← (signed word~) calculate_matrix_16::$36 - (signed word)(word~) calculate_matrix_16::$81 [ calculate_matrix_16::sx#0 calculate_matrix_16::sy#0 calculate_matrix_16::t3#0 calculate_matrix_16::t4#0 calculate_matrix_16::t5#0 calculate_matrix_16::t6#0 calculate_matrix_16::t7#0 calculate_matrix_16::t8#0 calculate_matrix_16::$83 calculate_matrix_16::$84 calculate_matrix_16::$37 ] ( main:11::anim:19::calculate_matrix_16:28 [ sx#10 sy#10 sz#10 calculate_matrix_16::sx#0 calculate_matrix_16::sy#0 calculate_matrix_16::t3#0 calculate_matrix_16::t4#0 calculate_matrix_16::t5#0 calculate_matrix_16::t6#0 calculate_matrix_16::t7#0 calculate_matrix_16::t8#0 calculate_matrix_16::$83 calculate_matrix_16::$84 calculate_matrix_16::$37 ] ) always clobbers reg byte a -Statement [171] (signed word~) calculate_matrix_16::$38 ← (signed word~) calculate_matrix_16::$37 + (signed word)(word~) calculate_matrix_16::$83 [ calculate_matrix_16::sx#0 calculate_matrix_16::sy#0 calculate_matrix_16::t3#0 calculate_matrix_16::t4#0 calculate_matrix_16::t5#0 calculate_matrix_16::t6#0 calculate_matrix_16::t7#0 calculate_matrix_16::t8#0 calculate_matrix_16::$84 calculate_matrix_16::$38 ] ( main:11::anim:19::calculate_matrix_16:28 [ sx#10 sy#10 sz#10 calculate_matrix_16::sx#0 calculate_matrix_16::sy#0 calculate_matrix_16::t3#0 calculate_matrix_16::t4#0 calculate_matrix_16::t5#0 calculate_matrix_16::t6#0 calculate_matrix_16::t7#0 calculate_matrix_16::t8#0 calculate_matrix_16::$84 calculate_matrix_16::$38 ] ) always clobbers reg byte a -Statement [172] (signed word~) calculate_matrix_16::$39 ← (signed word~) calculate_matrix_16::$38 - (signed word)(word~) calculate_matrix_16::$84 [ calculate_matrix_16::sx#0 calculate_matrix_16::sy#0 calculate_matrix_16::t3#0 calculate_matrix_16::t4#0 calculate_matrix_16::t5#0 calculate_matrix_16::t6#0 calculate_matrix_16::t7#0 calculate_matrix_16::t8#0 calculate_matrix_16::$39 ] ( main:11::anim:19::calculate_matrix_16:28 [ sx#10 sy#10 sz#10 calculate_matrix_16::sx#0 calculate_matrix_16::sy#0 calculate_matrix_16::t3#0 calculate_matrix_16::t4#0 calculate_matrix_16::t5#0 calculate_matrix_16::t6#0 calculate_matrix_16::t7#0 calculate_matrix_16::t8#0 calculate_matrix_16::$39 ] ) always clobbers reg byte a -Statement [173] (byte~) calculate_matrix_16::$40 ← > (signed word~) calculate_matrix_16::$39 [ calculate_matrix_16::sx#0 calculate_matrix_16::sy#0 calculate_matrix_16::t3#0 calculate_matrix_16::t4#0 calculate_matrix_16::t5#0 calculate_matrix_16::t6#0 calculate_matrix_16::t7#0 calculate_matrix_16::t8#0 calculate_matrix_16::$40 ] ( main:11::anim:19::calculate_matrix_16:28 [ sx#10 sy#10 sz#10 calculate_matrix_16::sx#0 calculate_matrix_16::sy#0 calculate_matrix_16::t3#0 calculate_matrix_16::t4#0 calculate_matrix_16::t5#0 calculate_matrix_16::t6#0 calculate_matrix_16::t7#0 calculate_matrix_16::t8#0 calculate_matrix_16::$40 ] ) always clobbers reg byte a -Statement [175] (word~) calculate_matrix_16::$85 ← *((const byte*) COSH_HI#0 + (signed byte) calculate_matrix_16::t3#0) w= *((const byte*) COSH_LO#0 + (signed byte) calculate_matrix_16::t3#0) [ calculate_matrix_16::sx#0 calculate_matrix_16::sy#0 calculate_matrix_16::t4#0 calculate_matrix_16::t5#0 calculate_matrix_16::t6#0 calculate_matrix_16::t7#0 calculate_matrix_16::t8#0 calculate_matrix_16::$85 ] ( main:11::anim:19::calculate_matrix_16:28 [ sx#10 sy#10 sz#10 calculate_matrix_16::sx#0 calculate_matrix_16::sy#0 calculate_matrix_16::t4#0 calculate_matrix_16::t5#0 calculate_matrix_16::t6#0 calculate_matrix_16::t7#0 calculate_matrix_16::t8#0 calculate_matrix_16::$85 ] ) always clobbers reg byte a -Statement [176] (word~) calculate_matrix_16::$86 ← *((const byte*) COSH_HI#0 + (signed byte) calculate_matrix_16::t4#0) w= *((const byte*) COSH_LO#0 + (signed byte) calculate_matrix_16::t4#0) [ calculate_matrix_16::sx#0 calculate_matrix_16::sy#0 calculate_matrix_16::t5#0 calculate_matrix_16::t6#0 calculate_matrix_16::t7#0 calculate_matrix_16::t8#0 calculate_matrix_16::$85 calculate_matrix_16::$86 ] ( main:11::anim:19::calculate_matrix_16:28 [ sx#10 sy#10 sz#10 calculate_matrix_16::sx#0 calculate_matrix_16::sy#0 calculate_matrix_16::t5#0 calculate_matrix_16::t6#0 calculate_matrix_16::t7#0 calculate_matrix_16::t8#0 calculate_matrix_16::$85 calculate_matrix_16::$86 ] ) always clobbers reg byte a -Statement [177] (word~) calculate_matrix_16::$87 ← *((const byte*) SINQ_HI#0 + (signed byte) calculate_matrix_16::t5#0) w= *((const byte*) SINH_LO#0 + (signed byte) calculate_matrix_16::t5#0) [ calculate_matrix_16::sx#0 calculate_matrix_16::sy#0 calculate_matrix_16::t6#0 calculate_matrix_16::t7#0 calculate_matrix_16::t8#0 calculate_matrix_16::$85 calculate_matrix_16::$86 calculate_matrix_16::$87 ] ( main:11::anim:19::calculate_matrix_16:28 [ sx#10 sy#10 sz#10 calculate_matrix_16::sx#0 calculate_matrix_16::sy#0 calculate_matrix_16::t6#0 calculate_matrix_16::t7#0 calculate_matrix_16::t8#0 calculate_matrix_16::$85 calculate_matrix_16::$86 calculate_matrix_16::$87 ] ) always clobbers reg byte a -Statement [178] (word~) calculate_matrix_16::$88 ← *((const byte*) SINQ_HI#0 + (signed byte) calculate_matrix_16::t6#0) w= *((const byte*) SINH_LO#0 + (signed byte) calculate_matrix_16::t6#0) [ calculate_matrix_16::sx#0 calculate_matrix_16::sy#0 calculate_matrix_16::t7#0 calculate_matrix_16::t8#0 calculate_matrix_16::$85 calculate_matrix_16::$86 calculate_matrix_16::$87 calculate_matrix_16::$88 ] ( main:11::anim:19::calculate_matrix_16:28 [ sx#10 sy#10 sz#10 calculate_matrix_16::sx#0 calculate_matrix_16::sy#0 calculate_matrix_16::t7#0 calculate_matrix_16::t8#0 calculate_matrix_16::$85 calculate_matrix_16::$86 calculate_matrix_16::$87 calculate_matrix_16::$88 ] ) always clobbers reg byte a -Statement [179] (word~) calculate_matrix_16::$89 ← *((const byte*) SINQ_HI#0 + (signed byte) calculate_matrix_16::t7#0) w= *((const byte*) SINH_LO#0 + (signed byte) calculate_matrix_16::t7#0) [ calculate_matrix_16::sx#0 calculate_matrix_16::sy#0 calculate_matrix_16::t8#0 calculate_matrix_16::$85 calculate_matrix_16::$86 calculate_matrix_16::$87 calculate_matrix_16::$88 calculate_matrix_16::$89 ] ( main:11::anim:19::calculate_matrix_16:28 [ sx#10 sy#10 sz#10 calculate_matrix_16::sx#0 calculate_matrix_16::sy#0 calculate_matrix_16::t8#0 calculate_matrix_16::$85 calculate_matrix_16::$86 calculate_matrix_16::$87 calculate_matrix_16::$88 calculate_matrix_16::$89 ] ) always clobbers reg byte a -Statement [180] (word~) calculate_matrix_16::$90 ← *((const byte*) SINQ_HI#0 + (signed byte) calculate_matrix_16::t8#0) w= *((const byte*) SINH_LO#0 + (signed byte) calculate_matrix_16::t8#0) [ calculate_matrix_16::sx#0 calculate_matrix_16::sy#0 calculate_matrix_16::$85 calculate_matrix_16::$86 calculate_matrix_16::$87 calculate_matrix_16::$88 calculate_matrix_16::$89 calculate_matrix_16::$90 ] ( main:11::anim:19::calculate_matrix_16:28 [ sx#10 sy#10 sz#10 calculate_matrix_16::sx#0 calculate_matrix_16::sy#0 calculate_matrix_16::$85 calculate_matrix_16::$86 calculate_matrix_16::$87 calculate_matrix_16::$88 calculate_matrix_16::$89 calculate_matrix_16::$90 ] ) always clobbers reg byte a -Statement [181] (signed word~) calculate_matrix_16::$48 ← (signed word)(word~) calculate_matrix_16::$85 + (signed word)(word~) calculate_matrix_16::$86 [ calculate_matrix_16::sx#0 calculate_matrix_16::sy#0 calculate_matrix_16::$85 calculate_matrix_16::$86 calculate_matrix_16::$87 calculate_matrix_16::$88 calculate_matrix_16::$89 calculate_matrix_16::$90 calculate_matrix_16::$48 ] ( main:11::anim:19::calculate_matrix_16:28 [ sx#10 sy#10 sz#10 calculate_matrix_16::sx#0 calculate_matrix_16::sy#0 calculate_matrix_16::$85 calculate_matrix_16::$86 calculate_matrix_16::$87 calculate_matrix_16::$88 calculate_matrix_16::$89 calculate_matrix_16::$90 calculate_matrix_16::$48 ] ) always clobbers reg byte a -Statement [182] (signed word~) calculate_matrix_16::$49 ← (signed word~) calculate_matrix_16::$48 + (signed word)(word~) calculate_matrix_16::$87 [ calculate_matrix_16::sx#0 calculate_matrix_16::sy#0 calculate_matrix_16::$85 calculate_matrix_16::$86 calculate_matrix_16::$87 calculate_matrix_16::$88 calculate_matrix_16::$89 calculate_matrix_16::$90 calculate_matrix_16::$49 ] ( main:11::anim:19::calculate_matrix_16:28 [ sx#10 sy#10 sz#10 calculate_matrix_16::sx#0 calculate_matrix_16::sy#0 calculate_matrix_16::$85 calculate_matrix_16::$86 calculate_matrix_16::$87 calculate_matrix_16::$88 calculate_matrix_16::$89 calculate_matrix_16::$90 calculate_matrix_16::$49 ] ) always clobbers reg byte a -Statement [183] (signed word~) calculate_matrix_16::$50 ← (signed word~) calculate_matrix_16::$49 - (signed word)(word~) calculate_matrix_16::$88 [ calculate_matrix_16::sx#0 calculate_matrix_16::sy#0 calculate_matrix_16::$85 calculate_matrix_16::$86 calculate_matrix_16::$87 calculate_matrix_16::$88 calculate_matrix_16::$89 calculate_matrix_16::$90 calculate_matrix_16::$50 ] ( main:11::anim:19::calculate_matrix_16:28 [ sx#10 sy#10 sz#10 calculate_matrix_16::sx#0 calculate_matrix_16::sy#0 calculate_matrix_16::$85 calculate_matrix_16::$86 calculate_matrix_16::$87 calculate_matrix_16::$88 calculate_matrix_16::$89 calculate_matrix_16::$90 calculate_matrix_16::$50 ] ) always clobbers reg byte a -Statement [184] (signed word~) calculate_matrix_16::$51 ← (signed word~) calculate_matrix_16::$50 - (signed word)(word~) calculate_matrix_16::$89 [ calculate_matrix_16::sx#0 calculate_matrix_16::sy#0 calculate_matrix_16::$85 calculate_matrix_16::$86 calculate_matrix_16::$87 calculate_matrix_16::$88 calculate_matrix_16::$89 calculate_matrix_16::$90 calculate_matrix_16::$51 ] ( main:11::anim:19::calculate_matrix_16:28 [ sx#10 sy#10 sz#10 calculate_matrix_16::sx#0 calculate_matrix_16::sy#0 calculate_matrix_16::$85 calculate_matrix_16::$86 calculate_matrix_16::$87 calculate_matrix_16::$88 calculate_matrix_16::$89 calculate_matrix_16::$90 calculate_matrix_16::$51 ] ) always clobbers reg byte a -Statement [185] (signed word~) calculate_matrix_16::$52 ← (signed word~) calculate_matrix_16::$51 - (signed word)(word~) calculate_matrix_16::$90 [ calculate_matrix_16::sx#0 calculate_matrix_16::sy#0 calculate_matrix_16::$85 calculate_matrix_16::$86 calculate_matrix_16::$87 calculate_matrix_16::$88 calculate_matrix_16::$89 calculate_matrix_16::$90 calculate_matrix_16::$52 ] ( main:11::anim:19::calculate_matrix_16:28 [ sx#10 sy#10 sz#10 calculate_matrix_16::sx#0 calculate_matrix_16::sy#0 calculate_matrix_16::$85 calculate_matrix_16::$86 calculate_matrix_16::$87 calculate_matrix_16::$88 calculate_matrix_16::$89 calculate_matrix_16::$90 calculate_matrix_16::$52 ] ) always clobbers reg byte a -Statement [186] (byte~) calculate_matrix_16::$53 ← > (signed word~) calculate_matrix_16::$52 [ calculate_matrix_16::sx#0 calculate_matrix_16::sy#0 calculate_matrix_16::$85 calculate_matrix_16::$86 calculate_matrix_16::$87 calculate_matrix_16::$88 calculate_matrix_16::$89 calculate_matrix_16::$90 calculate_matrix_16::$53 ] ( main:11::anim:19::calculate_matrix_16:28 [ sx#10 sy#10 sz#10 calculate_matrix_16::sx#0 calculate_matrix_16::sy#0 calculate_matrix_16::$85 calculate_matrix_16::$86 calculate_matrix_16::$87 calculate_matrix_16::$88 calculate_matrix_16::$89 calculate_matrix_16::$90 calculate_matrix_16::$53 ] ) always clobbers reg byte a -Statement [188] (signed word~) calculate_matrix_16::$55 ← (signed word)(word~) calculate_matrix_16::$86 - (signed word)(word~) calculate_matrix_16::$85 [ calculate_matrix_16::sx#0 calculate_matrix_16::sy#0 calculate_matrix_16::$87 calculate_matrix_16::$88 calculate_matrix_16::$89 calculate_matrix_16::$90 calculate_matrix_16::$55 ] ( main:11::anim:19::calculate_matrix_16:28 [ sx#10 sy#10 sz#10 calculate_matrix_16::sx#0 calculate_matrix_16::sy#0 calculate_matrix_16::$87 calculate_matrix_16::$88 calculate_matrix_16::$89 calculate_matrix_16::$90 calculate_matrix_16::$55 ] ) always clobbers reg byte a -Statement [189] (signed word~) calculate_matrix_16::$56 ← (signed word~) calculate_matrix_16::$55 + (signed word)(word~) calculate_matrix_16::$88 [ calculate_matrix_16::sx#0 calculate_matrix_16::sy#0 calculate_matrix_16::$87 calculate_matrix_16::$89 calculate_matrix_16::$90 calculate_matrix_16::$56 ] ( main:11::anim:19::calculate_matrix_16:28 [ sx#10 sy#10 sz#10 calculate_matrix_16::sx#0 calculate_matrix_16::sy#0 calculate_matrix_16::$87 calculate_matrix_16::$89 calculate_matrix_16::$90 calculate_matrix_16::$56 ] ) always clobbers reg byte a -Statement [190] (signed word~) calculate_matrix_16::$57 ← (signed word~) calculate_matrix_16::$56 - (signed word)(word~) calculate_matrix_16::$87 [ calculate_matrix_16::sx#0 calculate_matrix_16::sy#0 calculate_matrix_16::$89 calculate_matrix_16::$90 calculate_matrix_16::$57 ] ( main:11::anim:19::calculate_matrix_16:28 [ sx#10 sy#10 sz#10 calculate_matrix_16::sx#0 calculate_matrix_16::sy#0 calculate_matrix_16::$89 calculate_matrix_16::$90 calculate_matrix_16::$57 ] ) always clobbers reg byte a -Statement [191] (signed word~) calculate_matrix_16::$58 ← (signed word~) calculate_matrix_16::$57 - (signed word)(word~) calculate_matrix_16::$89 [ calculate_matrix_16::sx#0 calculate_matrix_16::sy#0 calculate_matrix_16::$90 calculate_matrix_16::$58 ] ( main:11::anim:19::calculate_matrix_16:28 [ sx#10 sy#10 sz#10 calculate_matrix_16::sx#0 calculate_matrix_16::sy#0 calculate_matrix_16::$90 calculate_matrix_16::$58 ] ) always clobbers reg byte a -Statement [192] (signed word~) calculate_matrix_16::$59 ← (signed word~) calculate_matrix_16::$58 - (signed word)(word~) calculate_matrix_16::$90 [ calculate_matrix_16::sx#0 calculate_matrix_16::sy#0 calculate_matrix_16::$59 ] ( main:11::anim:19::calculate_matrix_16:28 [ sx#10 sy#10 sz#10 calculate_matrix_16::sx#0 calculate_matrix_16::sy#0 calculate_matrix_16::$59 ] ) always clobbers reg byte a -Statement [193] (byte~) calculate_matrix_16::$60 ← > (signed word~) calculate_matrix_16::$59 [ calculate_matrix_16::sx#0 calculate_matrix_16::sy#0 calculate_matrix_16::$60 ] ( main:11::anim:19::calculate_matrix_16:28 [ sx#10 sy#10 sz#10 calculate_matrix_16::sx#0 calculate_matrix_16::sy#0 calculate_matrix_16::$60 ] ) always clobbers reg byte a -Statement [195] (signed byte) calculate_matrix_16::t9#0 ← (signed byte) calculate_matrix_16::sy#0 - (signed byte) calculate_matrix_16::sx#0 [ calculate_matrix_16::sx#0 calculate_matrix_16::sy#0 calculate_matrix_16::t9#0 ] ( main:11::anim:19::calculate_matrix_16:28 [ sx#10 sy#10 sz#10 calculate_matrix_16::sx#0 calculate_matrix_16::sy#0 calculate_matrix_16::t9#0 ] ) always clobbers reg byte a -Statement [196] (signed byte) calculate_matrix_16::t10#0 ← (signed byte) calculate_matrix_16::sy#0 + (signed byte) calculate_matrix_16::sx#0 [ calculate_matrix_16::t9#0 calculate_matrix_16::t10#0 ] ( main:11::anim:19::calculate_matrix_16:28 [ sx#10 sy#10 sz#10 calculate_matrix_16::t9#0 calculate_matrix_16::t10#0 ] ) always clobbers reg byte a -Statement [197] (word~) calculate_matrix_16::$91 ← *((const byte*) SINH_HI#0 + (signed byte) calculate_matrix_16::t9#0) w= *((const byte*) SINH_LO#0 + (signed byte) calculate_matrix_16::t9#0) [ calculate_matrix_16::t9#0 calculate_matrix_16::t10#0 calculate_matrix_16::$91 ] ( main:11::anim:19::calculate_matrix_16:28 [ sx#10 sy#10 sz#10 calculate_matrix_16::t9#0 calculate_matrix_16::t10#0 calculate_matrix_16::$91 ] ) always clobbers reg byte a -Statement [198] (word~) calculate_matrix_16::$92 ← *((const byte*) SINH_HI#0 + (signed byte) calculate_matrix_16::t10#0) w= *((const byte*) SINH_LO#0 + (signed byte) calculate_matrix_16::t10#0) [ calculate_matrix_16::t9#0 calculate_matrix_16::t10#0 calculate_matrix_16::$91 calculate_matrix_16::$92 ] ( main:11::anim:19::calculate_matrix_16:28 [ sx#10 sy#10 sz#10 calculate_matrix_16::t9#0 calculate_matrix_16::t10#0 calculate_matrix_16::$91 calculate_matrix_16::$92 ] ) always clobbers reg byte a -Statement [199] (signed word~) calculate_matrix_16::$66 ← (signed word)(word~) calculate_matrix_16::$91 - (signed word)(word~) calculate_matrix_16::$92 [ calculate_matrix_16::t9#0 calculate_matrix_16::t10#0 calculate_matrix_16::$66 ] ( main:11::anim:19::calculate_matrix_16:28 [ sx#10 sy#10 sz#10 calculate_matrix_16::t9#0 calculate_matrix_16::t10#0 calculate_matrix_16::$66 ] ) always clobbers reg byte a -Statement [200] (byte~) calculate_matrix_16::$67 ← > (signed word~) calculate_matrix_16::$66 [ calculate_matrix_16::t9#0 calculate_matrix_16::t10#0 calculate_matrix_16::$67 ] ( main:11::anim:19::calculate_matrix_16:28 [ sx#10 sy#10 sz#10 calculate_matrix_16::t9#0 calculate_matrix_16::t10#0 calculate_matrix_16::$67 ] ) always clobbers reg byte a -Statement [202] (word~) calculate_matrix_16::$93 ← *((const byte*) COSH_HI#0 + (signed byte) calculate_matrix_16::t9#0) w= *((const byte*) COSH_LO#0 + (signed byte) calculate_matrix_16::t9#0) [ calculate_matrix_16::t10#0 calculate_matrix_16::$93 ] ( main:11::anim:19::calculate_matrix_16:28 [ sx#10 sy#10 sz#10 calculate_matrix_16::t10#0 calculate_matrix_16::$93 ] ) always clobbers reg byte a -Statement [203] (word~) calculate_matrix_16::$94 ← *((const byte*) COSH_HI#0 + (signed byte) calculate_matrix_16::t10#0) w= *((const byte*) COSH_LO#0 + (signed byte) calculate_matrix_16::t10#0) [ calculate_matrix_16::$93 calculate_matrix_16::$94 ] ( main:11::anim:19::calculate_matrix_16:28 [ sx#10 sy#10 sz#10 calculate_matrix_16::$93 calculate_matrix_16::$94 ] ) always clobbers reg byte a -Statement [204] (signed word~) calculate_matrix_16::$71 ← (signed word)(word~) calculate_matrix_16::$93 + (signed word)(word~) calculate_matrix_16::$94 [ calculate_matrix_16::$71 ] ( main:11::anim:19::calculate_matrix_16:28 [ sx#10 sy#10 sz#10 calculate_matrix_16::$71 ] ) always clobbers reg byte a -Statement [205] (byte~) calculate_matrix_16::$72 ← > (signed word~) calculate_matrix_16::$71 [ calculate_matrix_16::$72 ] ( main:11::anim:19::calculate_matrix_16:28 [ sx#10 sy#10 sz#10 calculate_matrix_16::$72 ] ) always clobbers reg byte a -Statement [235] (byte*) print_sbyte_at::at#0 ← (const byte*) debug_print_init::at_line#0 + (byte) debug_print_init::c#2 [ print_sbyte_at::at#0 debug_print_init::c#2 debug_print_init::i#2 ] ( main:11::debug_print_init:17 [ print_sbyte_at::at#0 debug_print_init::c#2 debug_print_init::i#2 ] ) always clobbers reg byte a -Statement [236] (signed byte) print_sbyte_at::b#1 ← *((const signed byte[8]) xs#0 + (byte) debug_print_init::i#2) [ print_sbyte_at::b#1 print_sbyte_at::at#0 debug_print_init::c#2 debug_print_init::i#2 ] ( main:11::debug_print_init:17 [ print_sbyte_at::b#1 print_sbyte_at::at#0 debug_print_init::c#2 debug_print_init::i#2 ] ) always clobbers reg byte a -Statement [238] (byte*) print_sbyte_at::at#1 ← (const byte*) debug_print_init::at_line#0+(byte/signed byte/word/signed word/dword/signed dword) 40*(byte/signed byte/word/signed word/dword/signed dword) 1 + (byte) debug_print_init::c#2 [ print_sbyte_at::at#1 debug_print_init::c#2 debug_print_init::i#2 ] ( main:11::debug_print_init:17 [ print_sbyte_at::at#1 debug_print_init::c#2 debug_print_init::i#2 ] ) always clobbers reg byte a -Statement [239] (signed byte) print_sbyte_at::b#2 ← *((const signed byte[8]) ys#0 + (byte) debug_print_init::i#2) [ print_sbyte_at::b#2 print_sbyte_at::at#1 debug_print_init::c#2 debug_print_init::i#2 ] ( main:11::debug_print_init:17 [ print_sbyte_at::b#2 print_sbyte_at::at#1 debug_print_init::c#2 debug_print_init::i#2 ] ) always clobbers reg byte a -Statement [241] (byte*) print_sbyte_at::at#2 ← (const byte*) debug_print_init::at_line#0+(byte/signed byte/word/signed word/dword/signed dword) 40*(byte/signed byte/word/signed word/dword/signed dword) 2 + (byte) debug_print_init::c#2 [ print_sbyte_at::at#2 debug_print_init::c#2 debug_print_init::i#2 ] ( main:11::debug_print_init:17 [ print_sbyte_at::at#2 debug_print_init::c#2 debug_print_init::i#2 ] ) always clobbers reg byte a -Statement [242] (signed byte) print_sbyte_at::b#3 ← *((const signed byte[8]) zs#0 + (byte) debug_print_init::i#2) [ print_sbyte_at::b#3 print_sbyte_at::at#2 debug_print_init::c#2 debug_print_init::i#2 ] ( main:11::debug_print_init:17 [ print_sbyte_at::b#3 print_sbyte_at::at#2 debug_print_init::c#2 debug_print_init::i#2 ] ) always clobbers reg byte a -Statement [245] (byte) debug_print_init::col#0 ← (byte/signed byte/word/signed word/dword/signed dword) 8 + (byte) debug_print_init::i#2 [ debug_print_init::c#2 debug_print_init::i#2 debug_print_init::j#2 debug_print_init::col#0 ] ( main:11::debug_print_init:17 [ debug_print_init::c#2 debug_print_init::i#2 debug_print_init::j#2 debug_print_init::col#0 ] ) always clobbers reg byte a -Statement [246] (byte*~) debug_print_init::$59 ← (const byte*) debug_print_init::at_cols#0 + (byte) debug_print_init::c#2 [ debug_print_init::c#2 debug_print_init::i#2 debug_print_init::j#2 debug_print_init::col#0 debug_print_init::$59 ] ( main:11::debug_print_init:17 [ debug_print_init::c#2 debug_print_init::i#2 debug_print_init::j#2 debug_print_init::col#0 debug_print_init::$59 ] ) always clobbers reg byte a -Statement [247] (byte*~) debug_print_init::$60 ← (byte*~) debug_print_init::$59 + (byte) debug_print_init::j#2 [ debug_print_init::c#2 debug_print_init::i#2 debug_print_init::j#2 debug_print_init::col#0 debug_print_init::$60 ] ( main:11::debug_print_init:17 [ debug_print_init::c#2 debug_print_init::i#2 debug_print_init::j#2 debug_print_init::col#0 debug_print_init::$60 ] ) always clobbers reg byte a -Statement [248] *((byte*~) debug_print_init::$60) ← (byte) debug_print_init::col#0 [ debug_print_init::c#2 debug_print_init::i#2 debug_print_init::j#2 debug_print_init::col#0 ] ( main:11::debug_print_init:17 [ debug_print_init::c#2 debug_print_init::i#2 debug_print_init::j#2 debug_print_init::col#0 ] ) always clobbers reg byte a reg byte y -Statement [249] (byte*~) debug_print_init::$63 ← (const byte*) debug_print_init::at_cols#0+(byte/signed byte/word/signed word/dword/signed dword) 40*(byte/signed byte/word/signed word/dword/signed dword) 1 + (byte) debug_print_init::c#2 [ debug_print_init::c#2 debug_print_init::i#2 debug_print_init::j#2 debug_print_init::col#0 debug_print_init::$63 ] ( main:11::debug_print_init:17 [ debug_print_init::c#2 debug_print_init::i#2 debug_print_init::j#2 debug_print_init::col#0 debug_print_init::$63 ] ) always clobbers reg byte a -Statement [250] (byte*~) debug_print_init::$64 ← (byte*~) debug_print_init::$63 + (byte) debug_print_init::j#2 [ debug_print_init::c#2 debug_print_init::i#2 debug_print_init::j#2 debug_print_init::col#0 debug_print_init::$64 ] ( main:11::debug_print_init:17 [ debug_print_init::c#2 debug_print_init::i#2 debug_print_init::j#2 debug_print_init::col#0 debug_print_init::$64 ] ) always clobbers reg byte a -Statement [251] *((byte*~) debug_print_init::$64) ← (byte) debug_print_init::col#0 [ debug_print_init::c#2 debug_print_init::i#2 debug_print_init::j#2 debug_print_init::col#0 ] ( main:11::debug_print_init:17 [ debug_print_init::c#2 debug_print_init::i#2 debug_print_init::j#2 debug_print_init::col#0 ] ) always clobbers reg byte a reg byte y -Statement [252] (byte*~) debug_print_init::$67 ← (const byte*) debug_print_init::at_cols#0+(byte/signed byte/word/signed word/dword/signed dword) 40*(byte/signed byte/word/signed word/dword/signed dword) 2 + (byte) debug_print_init::c#2 [ debug_print_init::c#2 debug_print_init::i#2 debug_print_init::j#2 debug_print_init::col#0 debug_print_init::$67 ] ( main:11::debug_print_init:17 [ debug_print_init::c#2 debug_print_init::i#2 debug_print_init::j#2 debug_print_init::col#0 debug_print_init::$67 ] ) always clobbers reg byte a -Statement [253] (byte*~) debug_print_init::$68 ← (byte*~) debug_print_init::$67 + (byte) debug_print_init::j#2 [ debug_print_init::c#2 debug_print_init::i#2 debug_print_init::j#2 debug_print_init::col#0 debug_print_init::$68 ] ( main:11::debug_print_init:17 [ debug_print_init::c#2 debug_print_init::i#2 debug_print_init::j#2 debug_print_init::col#0 debug_print_init::$68 ] ) always clobbers reg byte a -Statement [254] *((byte*~) debug_print_init::$68) ← (byte) debug_print_init::col#0 [ debug_print_init::c#2 debug_print_init::i#2 debug_print_init::j#2 debug_print_init::col#0 ] ( main:11::debug_print_init:17 [ debug_print_init::c#2 debug_print_init::i#2 debug_print_init::j#2 debug_print_init::col#0 ] ) always clobbers reg byte a reg byte y -Statement [255] (byte*~) debug_print_init::$71 ← (const byte*) debug_print_init::at_cols#0+(byte/signed byte/word/signed word/dword/signed dword) 40*(byte/signed byte/word/signed word/dword/signed dword) 3 + (byte) debug_print_init::c#2 [ debug_print_init::c#2 debug_print_init::i#2 debug_print_init::j#2 debug_print_init::col#0 debug_print_init::$71 ] ( main:11::debug_print_init:17 [ debug_print_init::c#2 debug_print_init::i#2 debug_print_init::j#2 debug_print_init::col#0 debug_print_init::$71 ] ) always clobbers reg byte a -Statement [256] (byte*~) debug_print_init::$72 ← (byte*~) debug_print_init::$71 + (byte) debug_print_init::j#2 [ debug_print_init::c#2 debug_print_init::i#2 debug_print_init::j#2 debug_print_init::col#0 debug_print_init::$72 ] ( main:11::debug_print_init:17 [ debug_print_init::c#2 debug_print_init::i#2 debug_print_init::j#2 debug_print_init::col#0 debug_print_init::$72 ] ) always clobbers reg byte a -Statement [257] *((byte*~) debug_print_init::$72) ← (byte) debug_print_init::col#0 [ debug_print_init::c#2 debug_print_init::i#2 debug_print_init::j#2 debug_print_init::col#0 ] ( main:11::debug_print_init:17 [ debug_print_init::c#2 debug_print_init::i#2 debug_print_init::j#2 debug_print_init::col#0 ] ) always clobbers reg byte a reg byte y -Statement [258] (byte*~) debug_print_init::$75 ← (const byte*) debug_print_init::at_cols#0+(byte/signed byte/word/signed word/dword/signed dword) 40*(byte/signed byte/word/signed word/dword/signed dword) 4 + (byte) debug_print_init::c#2 [ debug_print_init::c#2 debug_print_init::i#2 debug_print_init::j#2 debug_print_init::col#0 debug_print_init::$75 ] ( main:11::debug_print_init:17 [ debug_print_init::c#2 debug_print_init::i#2 debug_print_init::j#2 debug_print_init::col#0 debug_print_init::$75 ] ) always clobbers reg byte a -Statement [259] (byte*~) debug_print_init::$76 ← (byte*~) debug_print_init::$75 + (byte) debug_print_init::j#2 [ debug_print_init::c#2 debug_print_init::i#2 debug_print_init::j#2 debug_print_init::col#0 debug_print_init::$76 ] ( main:11::debug_print_init:17 [ debug_print_init::c#2 debug_print_init::i#2 debug_print_init::j#2 debug_print_init::col#0 debug_print_init::$76 ] ) always clobbers reg byte a -Statement [260] *((byte*~) debug_print_init::$76) ← (byte) debug_print_init::col#0 [ debug_print_init::c#2 debug_print_init::i#2 debug_print_init::j#2 debug_print_init::col#0 ] ( main:11::debug_print_init:17 [ debug_print_init::c#2 debug_print_init::i#2 debug_print_init::j#2 debug_print_init::col#0 ] ) always clobbers reg byte a reg byte y -Statement [261] (byte*~) debug_print_init::$79 ← (const byte*) debug_print_init::at_cols#0+(byte/signed byte/word/signed word/dword/signed dword) 40*(byte/signed byte/word/signed word/dword/signed dword) 5 + (byte) debug_print_init::c#2 [ debug_print_init::c#2 debug_print_init::i#2 debug_print_init::j#2 debug_print_init::col#0 debug_print_init::$79 ] ( main:11::debug_print_init:17 [ debug_print_init::c#2 debug_print_init::i#2 debug_print_init::j#2 debug_print_init::col#0 debug_print_init::$79 ] ) always clobbers reg byte a -Statement [262] (byte*~) debug_print_init::$80 ← (byte*~) debug_print_init::$79 + (byte) debug_print_init::j#2 [ debug_print_init::c#2 debug_print_init::i#2 debug_print_init::j#2 debug_print_init::col#0 debug_print_init::$80 ] ( main:11::debug_print_init:17 [ debug_print_init::c#2 debug_print_init::i#2 debug_print_init::j#2 debug_print_init::col#0 debug_print_init::$80 ] ) always clobbers reg byte a -Statement [263] *((byte*~) debug_print_init::$80) ← (byte) debug_print_init::col#0 [ debug_print_init::c#2 debug_print_init::i#2 debug_print_init::j#2 debug_print_init::col#0 ] ( main:11::debug_print_init:17 [ debug_print_init::c#2 debug_print_init::i#2 debug_print_init::j#2 debug_print_init::col#0 ] ) always clobbers reg byte a reg byte y -Statement [264] (byte*~) debug_print_init::$83 ← (const byte*) debug_print_init::at_cols#0+(byte/signed byte/word/signed word/dword/signed dword) 40*(byte/signed byte/word/signed word/dword/signed dword) 6 + (byte) debug_print_init::c#2 [ debug_print_init::c#2 debug_print_init::i#2 debug_print_init::j#2 debug_print_init::col#0 debug_print_init::$83 ] ( main:11::debug_print_init:17 [ debug_print_init::c#2 debug_print_init::i#2 debug_print_init::j#2 debug_print_init::col#0 debug_print_init::$83 ] ) always clobbers reg byte a -Statement [265] (byte*~) debug_print_init::$84 ← (byte*~) debug_print_init::$83 + (byte) debug_print_init::j#2 [ debug_print_init::c#2 debug_print_init::i#2 debug_print_init::j#2 debug_print_init::col#0 debug_print_init::$84 ] ( main:11::debug_print_init:17 [ debug_print_init::c#2 debug_print_init::i#2 debug_print_init::j#2 debug_print_init::col#0 debug_print_init::$84 ] ) always clobbers reg byte a -Statement [266] *((byte*~) debug_print_init::$84) ← (byte) debug_print_init::col#0 [ debug_print_init::c#2 debug_print_init::i#2 debug_print_init::j#2 debug_print_init::col#0 ] ( main:11::debug_print_init:17 [ debug_print_init::c#2 debug_print_init::i#2 debug_print_init::j#2 debug_print_init::col#0 ] ) always clobbers reg byte a reg byte y -Statement [267] (byte*~) debug_print_init::$87 ← (const byte*) debug_print_init::at_cols#0+(byte/signed byte/word/signed word/dword/signed dword) 40*(byte/signed byte/word/signed word/dword/signed dword) 7 + (byte) debug_print_init::c#2 [ debug_print_init::c#2 debug_print_init::i#2 debug_print_init::j#2 debug_print_init::col#0 debug_print_init::$87 ] ( main:11::debug_print_init:17 [ debug_print_init::c#2 debug_print_init::i#2 debug_print_init::j#2 debug_print_init::col#0 debug_print_init::$87 ] ) always clobbers reg byte a -Statement [268] (byte*~) debug_print_init::$88 ← (byte*~) debug_print_init::$87 + (byte) debug_print_init::j#2 [ debug_print_init::c#2 debug_print_init::i#2 debug_print_init::j#2 debug_print_init::col#0 debug_print_init::$88 ] ( main:11::debug_print_init:17 [ debug_print_init::c#2 debug_print_init::i#2 debug_print_init::j#2 debug_print_init::col#0 debug_print_init::$88 ] ) always clobbers reg byte a -Statement [269] *((byte*~) debug_print_init::$88) ← (byte) debug_print_init::col#0 [ debug_print_init::c#2 debug_print_init::i#2 debug_print_init::j#2 debug_print_init::col#0 ] ( main:11::debug_print_init:17 [ debug_print_init::c#2 debug_print_init::i#2 debug_print_init::j#2 debug_print_init::col#0 ] ) always clobbers reg byte a reg byte y -Statement [270] (byte*~) debug_print_init::$91 ← (const byte*) debug_print_init::at_cols#0+(byte/signed byte/word/signed word/dword/signed dword) 40*(byte/signed byte/word/signed word/dword/signed dword) 8 + (byte) debug_print_init::c#2 [ debug_print_init::c#2 debug_print_init::i#2 debug_print_init::j#2 debug_print_init::col#0 debug_print_init::$91 ] ( main:11::debug_print_init:17 [ debug_print_init::c#2 debug_print_init::i#2 debug_print_init::j#2 debug_print_init::col#0 debug_print_init::$91 ] ) always clobbers reg byte a -Statement [271] (byte*~) debug_print_init::$92 ← (byte*~) debug_print_init::$91 + (byte) debug_print_init::j#2 [ debug_print_init::c#2 debug_print_init::i#2 debug_print_init::j#2 debug_print_init::col#0 debug_print_init::$92 ] ( main:11::debug_print_init:17 [ debug_print_init::c#2 debug_print_init::i#2 debug_print_init::j#2 debug_print_init::col#0 debug_print_init::$92 ] ) always clobbers reg byte a -Statement [272] *((byte*~) debug_print_init::$92) ← (byte) debug_print_init::col#0 [ debug_print_init::c#2 debug_print_init::i#2 debug_print_init::j#2 ] ( main:11::debug_print_init:17 [ debug_print_init::c#2 debug_print_init::i#2 debug_print_init::j#2 ] ) always clobbers reg byte a reg byte y -Statement [275] (byte) debug_print_init::c#1 ← (byte) debug_print_init::c#2 + (byte/signed byte/word/signed word/dword/signed dword) 4 [ debug_print_init::i#2 debug_print_init::c#1 ] ( main:11::debug_print_init:17 [ debug_print_init::i#2 debug_print_init::c#1 ] ) always clobbers reg byte a -Statement [281] if(*((byte*) print_str_at::str#13)!=(byte) '@') goto print_str_at::@2 [ print_str_at::str#13 print_str_at::at#13 ] ( main:11::debug_print_init:17::print_str_at:211 [ print_str_at::str#13 print_str_at::at#13 ] main:11::debug_print_init:17::print_str_at:213 [ print_str_at::str#13 print_str_at::at#13 ] main:11::debug_print_init:17::print_str_at:215 [ print_str_at::str#13 print_str_at::at#13 ] main:11::debug_print_init:17::print_str_at:217 [ print_str_at::str#13 print_str_at::at#13 ] main:11::debug_print_init:17::print_str_at:219 [ print_str_at::str#13 print_str_at::at#13 ] main:11::debug_print_init:17::print_str_at:221 [ print_str_at::str#13 print_str_at::at#13 ] main:11::debug_print_init:17::print_str_at:223 [ print_str_at::str#13 print_str_at::at#13 ] main:11::debug_print_init:17::print_str_at:225 [ print_str_at::str#13 print_str_at::at#13 ] main:11::debug_print_init:17::print_str_at:227 [ print_str_at::str#13 print_str_at::at#13 ] main:11::debug_print_init:17::print_str_at:229 [ print_str_at::str#13 print_str_at::at#13 ] main:11::debug_print_init:17::print_str_at:231 [ print_str_at::str#13 print_str_at::at#13 ] main:11::debug_print_init:17::print_str_at:233 [ print_str_at::str#13 print_str_at::at#13 ] ) always clobbers reg byte a reg byte y -Statement [283] *((byte*) print_str_at::at#13) ← *((byte*) print_str_at::str#13) [ print_str_at::str#13 print_str_at::at#13 ] ( main:11::debug_print_init:17::print_str_at:211 [ print_str_at::str#13 print_str_at::at#13 ] main:11::debug_print_init:17::print_str_at:213 [ print_str_at::str#13 print_str_at::at#13 ] main:11::debug_print_init:17::print_str_at:215 [ print_str_at::str#13 print_str_at::at#13 ] main:11::debug_print_init:17::print_str_at:217 [ print_str_at::str#13 print_str_at::at#13 ] main:11::debug_print_init:17::print_str_at:219 [ print_str_at::str#13 print_str_at::at#13 ] main:11::debug_print_init:17::print_str_at:221 [ print_str_at::str#13 print_str_at::at#13 ] main:11::debug_print_init:17::print_str_at:223 [ print_str_at::str#13 print_str_at::at#13 ] main:11::debug_print_init:17::print_str_at:225 [ print_str_at::str#13 print_str_at::at#13 ] main:11::debug_print_init:17::print_str_at:227 [ print_str_at::str#13 print_str_at::at#13 ] main:11::debug_print_init:17::print_str_at:229 [ print_str_at::str#13 print_str_at::at#13 ] main:11::debug_print_init:17::print_str_at:231 [ print_str_at::str#13 print_str_at::at#13 ] main:11::debug_print_init:17::print_str_at:233 [ print_str_at::str#13 print_str_at::at#13 ] ) always clobbers reg byte a reg byte y -Statement [288] *((byte*) print_cls::sc#2) ← (byte) ' ' [ print_cls::sc#2 ] ( main:11::debug_print_init:17::print_cls:209 [ print_cls::sc#2 ] ) always clobbers reg byte a reg byte y -Statement [290] if((byte*) print_cls::sc#1!=(const byte*) print_screen#0+(word/signed word/dword/signed dword) 1000) goto print_cls::@1 [ print_cls::sc#1 ] ( main:11::debug_print_init:17::print_cls:209 [ print_cls::sc#1 ] ) always clobbers reg byte a -Statement [292] *((const byte*) SPRITES_ENABLE#0) ← (byte/word/signed word/dword/signed dword) 255 [ ] ( main:11::sprites_init:14 [ ] ) always clobbers reg byte a -Statement [294] *((const byte*) sprites_init::sprites_ptr#0 + (byte) sprites_init::i#2) ← ((byte))(const byte*) SPRITE#0/(byte/signed byte/word/signed word/dword/signed dword) 64 [ sprites_init::i#2 ] ( main:11::sprites_init:14 [ sprites_init::i#2 ] ) always clobbers reg byte a -Statement [295] (byte/signed word/word/dword/signed dword~) sprites_init::$3 ← (byte/signed byte/word/signed word/dword/signed dword) 8 + (byte) sprites_init::i#2 [ sprites_init::i#2 sprites_init::$3 ] ( main:11::sprites_init:14 [ sprites_init::i#2 sprites_init::$3 ] ) always clobbers reg byte a +Statement [58] (signed byte) calculate_matrix::t1#0 ← (signed byte) calculate_matrix::sy#0 - (const signed byte) sz#0 [ calculate_matrix::sx#0 calculate_matrix::sy#0 calculate_matrix::t1#0 ] ( main:11::anim:17::calculate_matrix:25 [ sx#10 sy#10 calculate_matrix::sx#0 calculate_matrix::sy#0 calculate_matrix::t1#0 ] ) always clobbers reg byte a +Statement [59] (signed byte) calculate_matrix::t2#0 ← (signed byte) calculate_matrix::sy#0 + (const signed byte) sz#0 [ calculate_matrix::sx#0 calculate_matrix::sy#0 calculate_matrix::t1#0 calculate_matrix::t2#0 ] ( main:11::anim:17::calculate_matrix:25 [ sx#10 sy#10 calculate_matrix::sx#0 calculate_matrix::sy#0 calculate_matrix::t1#0 calculate_matrix::t2#0 ] ) always clobbers reg byte a +Statement [62] (signed byte) calculate_matrix::t5#0 ← (signed byte) calculate_matrix::sx#0 + (signed byte) calculate_matrix::t2#0 [ calculate_matrix::sx#0 calculate_matrix::sy#0 calculate_matrix::t1#0 calculate_matrix::t2#0 calculate_matrix::t3#0 calculate_matrix::t4#0 calculate_matrix::t5#0 ] ( main:11::anim:17::calculate_matrix:25 [ sx#10 sy#10 calculate_matrix::sx#0 calculate_matrix::sy#0 calculate_matrix::t1#0 calculate_matrix::t2#0 calculate_matrix::t3#0 calculate_matrix::t4#0 calculate_matrix::t5#0 ] ) always clobbers reg byte a +Statement [63] (signed byte) calculate_matrix::t6#0 ← (signed byte) calculate_matrix::sx#0 - (signed byte) calculate_matrix::t1#0 [ calculate_matrix::sx#0 calculate_matrix::sy#0 calculate_matrix::t1#0 calculate_matrix::t2#0 calculate_matrix::t3#0 calculate_matrix::t4#0 calculate_matrix::t5#0 calculate_matrix::t6#0 ] ( main:11::anim:17::calculate_matrix:25 [ sx#10 sy#10 calculate_matrix::sx#0 calculate_matrix::sy#0 calculate_matrix::t1#0 calculate_matrix::t2#0 calculate_matrix::t3#0 calculate_matrix::t4#0 calculate_matrix::t5#0 calculate_matrix::t6#0 ] ) always clobbers reg byte a +Statement [64] (signed byte) calculate_matrix::t7#0 ← (signed byte) calculate_matrix::sx#0 + (signed byte) calculate_matrix::t1#0 [ calculate_matrix::sx#0 calculate_matrix::sy#0 calculate_matrix::t1#0 calculate_matrix::t2#0 calculate_matrix::t3#0 calculate_matrix::t4#0 calculate_matrix::t5#0 calculate_matrix::t6#0 calculate_matrix::t7#0 ] ( main:11::anim:17::calculate_matrix:25 [ sx#10 sy#10 calculate_matrix::sx#0 calculate_matrix::sy#0 calculate_matrix::t1#0 calculate_matrix::t2#0 calculate_matrix::t3#0 calculate_matrix::t4#0 calculate_matrix::t5#0 calculate_matrix::t6#0 calculate_matrix::t7#0 ] ) always clobbers reg byte a +Statement [65] (signed byte) calculate_matrix::t8#0 ← (signed byte) calculate_matrix::t2#0 - (signed byte) calculate_matrix::sx#0 [ calculate_matrix::sx#0 calculate_matrix::sy#0 calculate_matrix::t1#0 calculate_matrix::t2#0 calculate_matrix::t3#0 calculate_matrix::t4#0 calculate_matrix::t5#0 calculate_matrix::t6#0 calculate_matrix::t7#0 calculate_matrix::t8#0 ] ( main:11::anim:17::calculate_matrix:25 [ sx#10 sy#10 calculate_matrix::sx#0 calculate_matrix::sy#0 calculate_matrix::t1#0 calculate_matrix::t2#0 calculate_matrix::t3#0 calculate_matrix::t4#0 calculate_matrix::t5#0 calculate_matrix::t6#0 calculate_matrix::t7#0 calculate_matrix::t8#0 ] ) always clobbers reg byte a +Statement [66] (signed byte) calculate_matrix::t9#0 ← (signed byte) calculate_matrix::sy#0 - (signed byte) calculate_matrix::sx#0 [ calculate_matrix::sx#0 calculate_matrix::sy#0 calculate_matrix::t1#0 calculate_matrix::t2#0 calculate_matrix::t3#0 calculate_matrix::t4#0 calculate_matrix::t5#0 calculate_matrix::t6#0 calculate_matrix::t7#0 calculate_matrix::t8#0 calculate_matrix::t9#0 ] ( main:11::anim:17::calculate_matrix:25 [ sx#10 sy#10 calculate_matrix::sx#0 calculate_matrix::sy#0 calculate_matrix::t1#0 calculate_matrix::t2#0 calculate_matrix::t3#0 calculate_matrix::t4#0 calculate_matrix::t5#0 calculate_matrix::t6#0 calculate_matrix::t7#0 calculate_matrix::t8#0 calculate_matrix::t9#0 ] ) always clobbers reg byte a +Statement [67] (signed byte) calculate_matrix::t10#0 ← (signed byte) calculate_matrix::sy#0 + (signed byte) calculate_matrix::sx#0 [ calculate_matrix::sy#0 calculate_matrix::t1#0 calculate_matrix::t2#0 calculate_matrix::t3#0 calculate_matrix::t4#0 calculate_matrix::t5#0 calculate_matrix::t6#0 calculate_matrix::t7#0 calculate_matrix::t8#0 calculate_matrix::t9#0 calculate_matrix::t10#0 ] ( main:11::anim:17::calculate_matrix:25 [ sx#10 sy#10 calculate_matrix::sy#0 calculate_matrix::t1#0 calculate_matrix::t2#0 calculate_matrix::t3#0 calculate_matrix::t4#0 calculate_matrix::t5#0 calculate_matrix::t6#0 calculate_matrix::t7#0 calculate_matrix::t8#0 calculate_matrix::t9#0 calculate_matrix::t10#0 ] ) always clobbers reg byte a +Statement [68] (signed byte~) calculate_matrix::$10 ← *((const signed byte*) COSH#0 + (signed byte) calculate_matrix::t1#0) + *((const signed byte*) COSH#0 + (signed byte) calculate_matrix::t2#0) [ calculate_matrix::sy#0 calculate_matrix::t1#0 calculate_matrix::t2#0 calculate_matrix::t3#0 calculate_matrix::t4#0 calculate_matrix::t5#0 calculate_matrix::t6#0 calculate_matrix::t7#0 calculate_matrix::t8#0 calculate_matrix::t9#0 calculate_matrix::t10#0 calculate_matrix::$10 ] ( main:11::anim:17::calculate_matrix:25 [ sx#10 sy#10 calculate_matrix::sy#0 calculate_matrix::t1#0 calculate_matrix::t2#0 calculate_matrix::t3#0 calculate_matrix::t4#0 calculate_matrix::t5#0 calculate_matrix::t6#0 calculate_matrix::t7#0 calculate_matrix::t8#0 calculate_matrix::t9#0 calculate_matrix::t10#0 calculate_matrix::$10 ] ) always clobbers reg byte a +Statement [70] (signed byte~) calculate_matrix::$11 ← *((const signed byte*) SINH#0 + (signed byte) calculate_matrix::t1#0) - *((const signed byte*) SINH#0 + (signed byte) calculate_matrix::t2#0) [ calculate_matrix::sy#0 calculate_matrix::t3#0 calculate_matrix::t4#0 calculate_matrix::t5#0 calculate_matrix::t6#0 calculate_matrix::t7#0 calculate_matrix::t8#0 calculate_matrix::t9#0 calculate_matrix::t10#0 calculate_matrix::$11 ] ( main:11::anim:17::calculate_matrix:25 [ sx#10 sy#10 calculate_matrix::sy#0 calculate_matrix::t3#0 calculate_matrix::t4#0 calculate_matrix::t5#0 calculate_matrix::t6#0 calculate_matrix::t7#0 calculate_matrix::t8#0 calculate_matrix::t9#0 calculate_matrix::t10#0 calculate_matrix::$11 ] ) always clobbers reg byte a +Statement [72] (signed byte~) calculate_matrix::$12 ← *((const signed byte*) SINH#0 + (signed byte) calculate_matrix::sy#0) + *((const signed byte*) SINH#0 + (signed byte) calculate_matrix::sy#0) [ calculate_matrix::t3#0 calculate_matrix::t4#0 calculate_matrix::t5#0 calculate_matrix::t6#0 calculate_matrix::t7#0 calculate_matrix::t8#0 calculate_matrix::t9#0 calculate_matrix::t10#0 calculate_matrix::$12 ] ( main:11::anim:17::calculate_matrix:25 [ sx#10 sy#10 calculate_matrix::t3#0 calculate_matrix::t4#0 calculate_matrix::t5#0 calculate_matrix::t6#0 calculate_matrix::t7#0 calculate_matrix::t8#0 calculate_matrix::t9#0 calculate_matrix::t10#0 calculate_matrix::$12 ] ) always clobbers reg byte a +Statement [74] (signed byte~) calculate_matrix::$13 ← *((const signed byte*) SINH#0+(const signed byte) sz#0 + (signed byte) calculate_matrix::t3#0) - *((const signed byte*) SINH#0+-(const signed byte) sz#0 + (signed byte) calculate_matrix::t4#0) [ calculate_matrix::t3#0 calculate_matrix::t4#0 calculate_matrix::t5#0 calculate_matrix::t6#0 calculate_matrix::t7#0 calculate_matrix::t8#0 calculate_matrix::t9#0 calculate_matrix::t10#0 calculate_matrix::$13 ] ( main:11::anim:17::calculate_matrix:25 [ sx#10 sy#10 calculate_matrix::t3#0 calculate_matrix::t4#0 calculate_matrix::t5#0 calculate_matrix::t6#0 calculate_matrix::t7#0 calculate_matrix::t8#0 calculate_matrix::t9#0 calculate_matrix::t10#0 calculate_matrix::$13 ] ) always clobbers reg byte a +Statement [75] (signed byte~) calculate_matrix::$14 ← (signed byte~) calculate_matrix::$13 + *((const signed byte*) COSQ#0 + (signed byte) calculate_matrix::t6#0) [ calculate_matrix::t3#0 calculate_matrix::t4#0 calculate_matrix::t5#0 calculate_matrix::t6#0 calculate_matrix::t7#0 calculate_matrix::t8#0 calculate_matrix::t9#0 calculate_matrix::t10#0 calculate_matrix::$14 ] ( main:11::anim:17::calculate_matrix:25 [ sx#10 sy#10 calculate_matrix::t3#0 calculate_matrix::t4#0 calculate_matrix::t5#0 calculate_matrix::t6#0 calculate_matrix::t7#0 calculate_matrix::t8#0 calculate_matrix::t9#0 calculate_matrix::t10#0 calculate_matrix::$14 ] ) always clobbers reg byte a +Potential register analysis [76] calculate_matrix::$15 ← calculate_matrix::$14 - *(COSQ#0 + calculate_matrix::t5#0) missing fragment vbsaa=vbsxx_minus_pbsc1_derefidx_vbsxx allocation: reg byte x [ calculate_matrix::$14 ] reg byte a [ calculate_matrix::$15 ] reg byte x [ calculate_matrix::t5#0 ] +Potential register analysis [76] calculate_matrix::$15 ← calculate_matrix::$14 - *(COSQ#0 + calculate_matrix::t5#0) missing fragment vbsaa=vbsyy_minus_pbsc1_derefidx_vbsyy allocation: reg byte y [ calculate_matrix::$14 ] reg byte a [ calculate_matrix::$15 ] reg byte y [ calculate_matrix::t5#0 ] +MISSING FRAGMENTS + vbsaa=vbsxx_minus_pbsc1_derefidx_vbsxx + vbsaa=vbsyy_minus_pbsc1_derefidx_vbsyy +Statement [76] (signed byte~) calculate_matrix::$15 ← (signed byte~) calculate_matrix::$14 - *((const signed byte*) COSQ#0 + (signed byte) calculate_matrix::t5#0) [ calculate_matrix::t3#0 calculate_matrix::t4#0 calculate_matrix::t5#0 calculate_matrix::t6#0 calculate_matrix::t7#0 calculate_matrix::t8#0 calculate_matrix::t9#0 calculate_matrix::t10#0 calculate_matrix::$15 ] ( main:11::anim:17::calculate_matrix:25 [ sx#10 sy#10 calculate_matrix::t3#0 calculate_matrix::t4#0 calculate_matrix::t5#0 calculate_matrix::t6#0 calculate_matrix::t7#0 calculate_matrix::t8#0 calculate_matrix::t9#0 calculate_matrix::t10#0 calculate_matrix::$15 ] ) always clobbers reg byte a +Statement [77] (signed byte~) calculate_matrix::$16 ← (signed byte~) calculate_matrix::$15 + *((const signed byte*) COSQ#0 + (signed byte) calculate_matrix::t8#0) [ calculate_matrix::t3#0 calculate_matrix::t4#0 calculate_matrix::t5#0 calculate_matrix::t6#0 calculate_matrix::t7#0 calculate_matrix::t8#0 calculate_matrix::t9#0 calculate_matrix::t10#0 calculate_matrix::$16 ] ( main:11::anim:17::calculate_matrix:25 [ sx#10 sy#10 calculate_matrix::t3#0 calculate_matrix::t4#0 calculate_matrix::t5#0 calculate_matrix::t6#0 calculate_matrix::t7#0 calculate_matrix::t8#0 calculate_matrix::t9#0 calculate_matrix::t10#0 calculate_matrix::$16 ] ) always clobbers reg byte a +Potential register analysis [78] calculate_matrix::$17 ← calculate_matrix::$16 - *(COSQ#0 + calculate_matrix::t7#0) missing fragment vbsaa=vbsxx_minus_pbsc1_derefidx_vbsxx allocation: reg byte x [ calculate_matrix::$16 ] reg byte x [ calculate_matrix::t7#0 ] reg byte a [ calculate_matrix::$17 ] +Potential register analysis [78] calculate_matrix::$17 ← calculate_matrix::$16 - *(COSQ#0 + calculate_matrix::t7#0) missing fragment vbsaa=vbsyy_minus_pbsc1_derefidx_vbsyy allocation: reg byte y [ calculate_matrix::$16 ] reg byte y [ calculate_matrix::t7#0 ] reg byte a [ calculate_matrix::$17 ] +MISSING FRAGMENTS + vbsaa=vbsxx_minus_pbsc1_derefidx_vbsxx + vbsaa=vbsyy_minus_pbsc1_derefidx_vbsyy +Statement [78] (signed byte~) calculate_matrix::$17 ← (signed byte~) calculate_matrix::$16 - *((const signed byte*) COSQ#0 + (signed byte) calculate_matrix::t7#0) [ calculate_matrix::t3#0 calculate_matrix::t4#0 calculate_matrix::t5#0 calculate_matrix::t6#0 calculate_matrix::t7#0 calculate_matrix::t8#0 calculate_matrix::t9#0 calculate_matrix::t10#0 calculate_matrix::$17 ] ( main:11::anim:17::calculate_matrix:25 [ sx#10 sy#10 calculate_matrix::t3#0 calculate_matrix::t4#0 calculate_matrix::t5#0 calculate_matrix::t6#0 calculate_matrix::t7#0 calculate_matrix::t8#0 calculate_matrix::t9#0 calculate_matrix::t10#0 calculate_matrix::$17 ] ) always clobbers reg byte a +Statement [80] (signed byte~) calculate_matrix::$18 ← *((const signed byte*) COSH#0 + (signed byte) calculate_matrix::t3#0) + *((const signed byte*) COSH#0 + (signed byte) calculate_matrix::t4#0) [ calculate_matrix::t3#0 calculate_matrix::t4#0 calculate_matrix::t5#0 calculate_matrix::t6#0 calculate_matrix::t7#0 calculate_matrix::t8#0 calculate_matrix::t9#0 calculate_matrix::t10#0 calculate_matrix::$18 ] ( main:11::anim:17::calculate_matrix:25 [ sx#10 sy#10 calculate_matrix::t3#0 calculate_matrix::t4#0 calculate_matrix::t5#0 calculate_matrix::t6#0 calculate_matrix::t7#0 calculate_matrix::t8#0 calculate_matrix::t9#0 calculate_matrix::t10#0 calculate_matrix::$18 ] ) always clobbers reg byte a +Statement [81] (signed byte~) calculate_matrix::$19 ← (signed byte~) calculate_matrix::$18 + *((const signed byte*) SINQ#0 + (signed byte) calculate_matrix::t5#0) [ calculate_matrix::t3#0 calculate_matrix::t4#0 calculate_matrix::t5#0 calculate_matrix::t6#0 calculate_matrix::t7#0 calculate_matrix::t8#0 calculate_matrix::t9#0 calculate_matrix::t10#0 calculate_matrix::$19 ] ( main:11::anim:17::calculate_matrix:25 [ sx#10 sy#10 calculate_matrix::t3#0 calculate_matrix::t4#0 calculate_matrix::t5#0 calculate_matrix::t6#0 calculate_matrix::t7#0 calculate_matrix::t8#0 calculate_matrix::t9#0 calculate_matrix::t10#0 calculate_matrix::$19 ] ) always clobbers reg byte a +Potential register analysis [82] calculate_matrix::$20 ← calculate_matrix::$19 - *(SINQ#0 + calculate_matrix::t6#0) missing fragment vbsaa=vbsxx_minus_pbsc1_derefidx_vbsxx allocation: reg byte a [ calculate_matrix::$20 ] reg byte x [ calculate_matrix::t6#0 ] reg byte x [ calculate_matrix::$19 ] +Potential register analysis [82] calculate_matrix::$20 ← calculate_matrix::$19 - *(SINQ#0 + calculate_matrix::t6#0) missing fragment vbsaa=vbsyy_minus_pbsc1_derefidx_vbsyy allocation: reg byte a [ calculate_matrix::$20 ] reg byte y [ calculate_matrix::t6#0 ] reg byte y [ calculate_matrix::$19 ] +MISSING FRAGMENTS + vbsaa=vbsxx_minus_pbsc1_derefidx_vbsxx + vbsaa=vbsyy_minus_pbsc1_derefidx_vbsyy +Statement [82] (signed byte~) calculate_matrix::$20 ← (signed byte~) calculate_matrix::$19 - *((const signed byte*) SINQ#0 + (signed byte) calculate_matrix::t6#0) [ calculate_matrix::t3#0 calculate_matrix::t4#0 calculate_matrix::t5#0 calculate_matrix::t6#0 calculate_matrix::t7#0 calculate_matrix::t8#0 calculate_matrix::t9#0 calculate_matrix::t10#0 calculate_matrix::$20 ] ( main:11::anim:17::calculate_matrix:25 [ sx#10 sy#10 calculate_matrix::t3#0 calculate_matrix::t4#0 calculate_matrix::t5#0 calculate_matrix::t6#0 calculate_matrix::t7#0 calculate_matrix::t8#0 calculate_matrix::t9#0 calculate_matrix::t10#0 calculate_matrix::$20 ] ) always clobbers reg byte a +Potential register analysis [83] calculate_matrix::$21 ← calculate_matrix::$20 - *(SINQ#0 + calculate_matrix::t7#0) missing fragment vbsaa=vbsxx_minus_pbsc1_derefidx_vbsxx allocation: reg byte a [ calculate_matrix::$21 ] reg byte x [ calculate_matrix::$20 ] reg byte x [ calculate_matrix::t7#0 ] +Potential register analysis [83] calculate_matrix::$21 ← calculate_matrix::$20 - *(SINQ#0 + calculate_matrix::t7#0) missing fragment vbsaa=vbsyy_minus_pbsc1_derefidx_vbsyy allocation: reg byte a [ calculate_matrix::$21 ] reg byte y [ calculate_matrix::$20 ] reg byte y [ calculate_matrix::t7#0 ] +MISSING FRAGMENTS + vbsaa=vbsxx_minus_pbsc1_derefidx_vbsxx + vbsaa=vbsyy_minus_pbsc1_derefidx_vbsyy +Statement [83] (signed byte~) calculate_matrix::$21 ← (signed byte~) calculate_matrix::$20 - *((const signed byte*) SINQ#0 + (signed byte) calculate_matrix::t7#0) [ calculate_matrix::t3#0 calculate_matrix::t4#0 calculate_matrix::t5#0 calculate_matrix::t6#0 calculate_matrix::t7#0 calculate_matrix::t8#0 calculate_matrix::t9#0 calculate_matrix::t10#0 calculate_matrix::$21 ] ( main:11::anim:17::calculate_matrix:25 [ sx#10 sy#10 calculate_matrix::t3#0 calculate_matrix::t4#0 calculate_matrix::t5#0 calculate_matrix::t6#0 calculate_matrix::t7#0 calculate_matrix::t8#0 calculate_matrix::t9#0 calculate_matrix::t10#0 calculate_matrix::$21 ] ) always clobbers reg byte a +Potential register analysis [84] calculate_matrix::$22 ← calculate_matrix::$21 - *(SINQ#0 + calculate_matrix::t8#0) missing fragment vbsaa=vbsxx_minus_pbsc1_derefidx_vbsxx allocation: reg byte x [ calculate_matrix::$21 ] reg byte a [ calculate_matrix::$22 ] reg byte x [ calculate_matrix::t8#0 ] +Potential register analysis [84] calculate_matrix::$22 ← calculate_matrix::$21 - *(SINQ#0 + calculate_matrix::t8#0) missing fragment vbsaa=vbsyy_minus_pbsc1_derefidx_vbsyy allocation: reg byte y [ calculate_matrix::$21 ] reg byte a [ calculate_matrix::$22 ] reg byte y [ calculate_matrix::t8#0 ] +MISSING FRAGMENTS + vbsaa=vbsxx_minus_pbsc1_derefidx_vbsxx + vbsaa=vbsyy_minus_pbsc1_derefidx_vbsyy +Statement [84] (signed byte~) calculate_matrix::$22 ← (signed byte~) calculate_matrix::$21 - *((const signed byte*) SINQ#0 + (signed byte) calculate_matrix::t8#0) [ calculate_matrix::t3#0 calculate_matrix::t4#0 calculate_matrix::t5#0 calculate_matrix::t6#0 calculate_matrix::t7#0 calculate_matrix::t8#0 calculate_matrix::t9#0 calculate_matrix::t10#0 calculate_matrix::$22 ] ( main:11::anim:17::calculate_matrix:25 [ sx#10 sy#10 calculate_matrix::t3#0 calculate_matrix::t4#0 calculate_matrix::t5#0 calculate_matrix::t6#0 calculate_matrix::t7#0 calculate_matrix::t8#0 calculate_matrix::t9#0 calculate_matrix::t10#0 calculate_matrix::$22 ] ) always clobbers reg byte a +Statement [86] (signed byte~) calculate_matrix::$23 ← *((const signed byte*) SINH#0 + (signed byte) calculate_matrix::t9#0) - *((const signed byte*) SINH#0 + (signed byte) calculate_matrix::t10#0) [ calculate_matrix::t3#0 calculate_matrix::t4#0 calculate_matrix::t5#0 calculate_matrix::t6#0 calculate_matrix::t7#0 calculate_matrix::t8#0 calculate_matrix::t9#0 calculate_matrix::t10#0 calculate_matrix::$23 ] ( main:11::anim:17::calculate_matrix:25 [ sx#10 sy#10 calculate_matrix::t3#0 calculate_matrix::t4#0 calculate_matrix::t5#0 calculate_matrix::t6#0 calculate_matrix::t7#0 calculate_matrix::t8#0 calculate_matrix::t9#0 calculate_matrix::t10#0 calculate_matrix::$23 ] ) always clobbers reg byte a +Statement [88] (signed byte~) calculate_matrix::$24 ← *((const signed byte*) COSH#0 + (signed byte) calculate_matrix::t4#0) - *((const signed byte*) COSH#0 + (signed byte) calculate_matrix::t3#0) [ calculate_matrix::t3#0 calculate_matrix::t4#0 calculate_matrix::t5#0 calculate_matrix::t6#0 calculate_matrix::t7#0 calculate_matrix::t8#0 calculate_matrix::t9#0 calculate_matrix::t10#0 calculate_matrix::$24 ] ( main:11::anim:17::calculate_matrix:25 [ sx#10 sy#10 calculate_matrix::t3#0 calculate_matrix::t4#0 calculate_matrix::t5#0 calculate_matrix::t6#0 calculate_matrix::t7#0 calculate_matrix::t8#0 calculate_matrix::t9#0 calculate_matrix::t10#0 calculate_matrix::$24 ] ) always clobbers reg byte a +Statement [89] (signed byte~) calculate_matrix::$25 ← (signed byte~) calculate_matrix::$24 + *((const signed byte*) SINQ#0 + (signed byte) calculate_matrix::t6#0) [ calculate_matrix::t3#0 calculate_matrix::t4#0 calculate_matrix::t5#0 calculate_matrix::t6#0 calculate_matrix::t7#0 calculate_matrix::t8#0 calculate_matrix::t9#0 calculate_matrix::t10#0 calculate_matrix::$25 ] ( main:11::anim:17::calculate_matrix:25 [ sx#10 sy#10 calculate_matrix::t3#0 calculate_matrix::t4#0 calculate_matrix::t5#0 calculate_matrix::t6#0 calculate_matrix::t7#0 calculate_matrix::t8#0 calculate_matrix::t9#0 calculate_matrix::t10#0 calculate_matrix::$25 ] ) always clobbers reg byte a +Potential register analysis [90] calculate_matrix::$26 ← calculate_matrix::$25 - *(SINQ#0 + calculate_matrix::t5#0) missing fragment vbsaa=vbsxx_minus_pbsc1_derefidx_vbsxx allocation: reg byte x [ calculate_matrix::$25 ] reg byte a [ calculate_matrix::$26 ] reg byte x [ calculate_matrix::t5#0 ] +Potential register analysis [90] calculate_matrix::$26 ← calculate_matrix::$25 - *(SINQ#0 + calculate_matrix::t5#0) missing fragment vbsaa=vbsyy_minus_pbsc1_derefidx_vbsyy allocation: reg byte y [ calculate_matrix::$25 ] reg byte a [ calculate_matrix::$26 ] reg byte y [ calculate_matrix::t5#0 ] +MISSING FRAGMENTS + vbsaa=vbsxx_minus_pbsc1_derefidx_vbsxx + vbsaa=vbsyy_minus_pbsc1_derefidx_vbsyy +Statement [90] (signed byte~) calculate_matrix::$26 ← (signed byte~) calculate_matrix::$25 - *((const signed byte*) SINQ#0 + (signed byte) calculate_matrix::t5#0) [ calculate_matrix::t3#0 calculate_matrix::t4#0 calculate_matrix::t5#0 calculate_matrix::t6#0 calculate_matrix::t7#0 calculate_matrix::t8#0 calculate_matrix::t9#0 calculate_matrix::t10#0 calculate_matrix::$26 ] ( main:11::anim:17::calculate_matrix:25 [ sx#10 sy#10 calculate_matrix::t3#0 calculate_matrix::t4#0 calculate_matrix::t5#0 calculate_matrix::t6#0 calculate_matrix::t7#0 calculate_matrix::t8#0 calculate_matrix::t9#0 calculate_matrix::t10#0 calculate_matrix::$26 ] ) always clobbers reg byte a +Potential register analysis [91] calculate_matrix::$27 ← calculate_matrix::$26 - *(SINQ#0 + calculate_matrix::t8#0) missing fragment vbsaa=vbsxx_minus_pbsc1_derefidx_vbsxx allocation: reg byte a [ calculate_matrix::$27 ] reg byte x [ calculate_matrix::$26 ] reg byte x [ calculate_matrix::t8#0 ] +Potential register analysis [91] calculate_matrix::$27 ← calculate_matrix::$26 - *(SINQ#0 + calculate_matrix::t8#0) missing fragment vbsaa=vbsyy_minus_pbsc1_derefidx_vbsyy allocation: reg byte a [ calculate_matrix::$27 ] reg byte y [ calculate_matrix::$26 ] reg byte y [ calculate_matrix::t8#0 ] +MISSING FRAGMENTS + vbsaa=vbsxx_minus_pbsc1_derefidx_vbsxx + vbsaa=vbsyy_minus_pbsc1_derefidx_vbsyy +Statement [91] (signed byte~) calculate_matrix::$27 ← (signed byte~) calculate_matrix::$26 - *((const signed byte*) SINQ#0 + (signed byte) calculate_matrix::t8#0) [ calculate_matrix::t3#0 calculate_matrix::t4#0 calculate_matrix::t5#0 calculate_matrix::t6#0 calculate_matrix::t7#0 calculate_matrix::t8#0 calculate_matrix::t9#0 calculate_matrix::t10#0 calculate_matrix::$27 ] ( main:11::anim:17::calculate_matrix:25 [ sx#10 sy#10 calculate_matrix::t3#0 calculate_matrix::t4#0 calculate_matrix::t5#0 calculate_matrix::t6#0 calculate_matrix::t7#0 calculate_matrix::t8#0 calculate_matrix::t9#0 calculate_matrix::t10#0 calculate_matrix::$27 ] ) always clobbers reg byte a +Potential register analysis [92] calculate_matrix::$28 ← calculate_matrix::$27 - *(SINQ#0 + calculate_matrix::t7#0) missing fragment vbsaa=vbsxx_minus_pbsc1_derefidx_vbsxx allocation: reg byte x [ calculate_matrix::$27 ] reg byte x [ calculate_matrix::t7#0 ] reg byte a [ calculate_matrix::$28 ] +Potential register analysis [92] calculate_matrix::$28 ← calculate_matrix::$27 - *(SINQ#0 + calculate_matrix::t7#0) missing fragment vbsaa=vbsyy_minus_pbsc1_derefidx_vbsyy allocation: reg byte y [ calculate_matrix::$27 ] reg byte y [ calculate_matrix::t7#0 ] reg byte a [ calculate_matrix::$28 ] +MISSING FRAGMENTS + vbsaa=vbsxx_minus_pbsc1_derefidx_vbsxx + vbsaa=vbsyy_minus_pbsc1_derefidx_vbsyy +Statement [92] (signed byte~) calculate_matrix::$28 ← (signed byte~) calculate_matrix::$27 - *((const signed byte*) SINQ#0 + (signed byte) calculate_matrix::t7#0) [ calculate_matrix::t3#0 calculate_matrix::t4#0 calculate_matrix::t5#0 calculate_matrix::t6#0 calculate_matrix::t7#0 calculate_matrix::t8#0 calculate_matrix::t9#0 calculate_matrix::t10#0 calculate_matrix::$28 ] ( main:11::anim:17::calculate_matrix:25 [ sx#10 sy#10 calculate_matrix::t3#0 calculate_matrix::t4#0 calculate_matrix::t5#0 calculate_matrix::t6#0 calculate_matrix::t7#0 calculate_matrix::t8#0 calculate_matrix::t9#0 calculate_matrix::t10#0 calculate_matrix::$28 ] ) always clobbers reg byte a +Statement [94] (signed byte~) calculate_matrix::$29 ← *((const signed byte*) SINH#0 + (signed byte) calculate_matrix::t3#0) + *((const signed byte*) SINH#0 + (signed byte) calculate_matrix::t4#0) [ calculate_matrix::t5#0 calculate_matrix::t6#0 calculate_matrix::t7#0 calculate_matrix::t8#0 calculate_matrix::t9#0 calculate_matrix::t10#0 calculate_matrix::$29 ] ( main:11::anim:17::calculate_matrix:25 [ sx#10 sy#10 calculate_matrix::t5#0 calculate_matrix::t6#0 calculate_matrix::t7#0 calculate_matrix::t8#0 calculate_matrix::t9#0 calculate_matrix::t10#0 calculate_matrix::$29 ] ) always clobbers reg byte a +Statement [95] (signed byte~) calculate_matrix::$30 ← (signed byte~) calculate_matrix::$29 + *((const signed byte*) COSQ#0 + (signed byte) calculate_matrix::t6#0) [ calculate_matrix::t5#0 calculate_matrix::t7#0 calculate_matrix::t8#0 calculate_matrix::t9#0 calculate_matrix::t10#0 calculate_matrix::$30 ] ( main:11::anim:17::calculate_matrix:25 [ sx#10 sy#10 calculate_matrix::t5#0 calculate_matrix::t7#0 calculate_matrix::t8#0 calculate_matrix::t9#0 calculate_matrix::t10#0 calculate_matrix::$30 ] ) always clobbers reg byte a +Potential register analysis [96] calculate_matrix::$31 ← calculate_matrix::$30 - *(COSQ#0 + calculate_matrix::t5#0) missing fragment vbsaa=vbsxx_minus_pbsc1_derefidx_vbsxx allocation: reg byte a [ calculate_matrix::$31 ] reg byte x [ calculate_matrix::t5#0 ] reg byte x [ calculate_matrix::$30 ] +Potential register analysis [96] calculate_matrix::$31 ← calculate_matrix::$30 - *(COSQ#0 + calculate_matrix::t5#0) missing fragment vbsaa=vbsyy_minus_pbsc1_derefidx_vbsyy allocation: reg byte a [ calculate_matrix::$31 ] reg byte y [ calculate_matrix::t5#0 ] reg byte y [ calculate_matrix::$30 ] +MISSING FRAGMENTS + vbsaa=vbsxx_minus_pbsc1_derefidx_vbsxx + vbsaa=vbsyy_minus_pbsc1_derefidx_vbsyy +Statement [96] (signed byte~) calculate_matrix::$31 ← (signed byte~) calculate_matrix::$30 - *((const signed byte*) COSQ#0 + (signed byte) calculate_matrix::t5#0) [ calculate_matrix::t7#0 calculate_matrix::t8#0 calculate_matrix::t9#0 calculate_matrix::t10#0 calculate_matrix::$31 ] ( main:11::anim:17::calculate_matrix:25 [ sx#10 sy#10 calculate_matrix::t7#0 calculate_matrix::t8#0 calculate_matrix::t9#0 calculate_matrix::t10#0 calculate_matrix::$31 ] ) always clobbers reg byte a +Statement [97] (signed byte~) calculate_matrix::$32 ← (signed byte~) calculate_matrix::$31 + *((const signed byte*) COSQ#0 + (signed byte) calculate_matrix::t7#0) [ calculate_matrix::t8#0 calculate_matrix::t9#0 calculate_matrix::t10#0 calculate_matrix::$32 ] ( main:11::anim:17::calculate_matrix:25 [ sx#10 sy#10 calculate_matrix::t8#0 calculate_matrix::t9#0 calculate_matrix::t10#0 calculate_matrix::$32 ] ) always clobbers reg byte a +Potential register analysis [98] calculate_matrix::$33 ← calculate_matrix::$32 - *(COSQ#0 + calculate_matrix::t8#0) missing fragment vbsaa=vbsxx_minus_pbsc1_derefidx_vbsxx allocation: reg byte x [ calculate_matrix::$32 ] reg byte a [ calculate_matrix::$33 ] reg byte x [ calculate_matrix::t8#0 ] +Potential register analysis [98] calculate_matrix::$33 ← calculate_matrix::$32 - *(COSQ#0 + calculate_matrix::t8#0) missing fragment vbsaa=vbsyy_minus_pbsc1_derefidx_vbsyy allocation: reg byte y [ calculate_matrix::$32 ] reg byte a [ calculate_matrix::$33 ] reg byte y [ calculate_matrix::t8#0 ] +MISSING FRAGMENTS + vbsaa=vbsxx_minus_pbsc1_derefidx_vbsxx + vbsaa=vbsyy_minus_pbsc1_derefidx_vbsyy +Statement [98] (signed byte~) calculate_matrix::$33 ← (signed byte~) calculate_matrix::$32 - *((const signed byte*) COSQ#0 + (signed byte) calculate_matrix::t8#0) [ calculate_matrix::t9#0 calculate_matrix::t10#0 calculate_matrix::$33 ] ( main:11::anim:17::calculate_matrix:25 [ sx#10 sy#10 calculate_matrix::t9#0 calculate_matrix::t10#0 calculate_matrix::$33 ] ) always clobbers reg byte a +Statement [100] (signed byte~) calculate_matrix::$34 ← *((const signed byte*) COSH#0 + (signed byte) calculate_matrix::t9#0) + *((const signed byte*) COSH#0 + (signed byte) calculate_matrix::t10#0) [ calculate_matrix::$34 ] ( main:11::anim:17::calculate_matrix:25 [ sx#10 sy#10 calculate_matrix::$34 ] ) always clobbers reg byte a +Statement [103] *((const byte*) SPRITES_ENABLE#0) ← (byte/word/signed word/dword/signed dword) 255 [ ] ( main:11::sprites_init:14 [ ] ) always clobbers reg byte a +Statement [105] *((const byte*) sprites_init::sprites_ptr#0 + (byte) sprites_init::i#2) ← ((byte))(const byte*) SPRITE#0/(byte/signed byte/word/signed word/dword/signed dword) 64 [ sprites_init::i#2 ] ( main:11::sprites_init:14 [ sprites_init::i#2 ] ) always clobbers reg byte a +Statement [106] *((const byte*) SPRITES_COLS#0 + (byte) sprites_init::i#2) ← (const byte) GREEN#0 [ sprites_init::i#2 ] ( main:11::sprites_init:14 [ sprites_init::i#2 ] ) always clobbers reg byte a Potential registers zp ZP_BYTE:2 [ sx#10 sx#3 ] : zp ZP_BYTE:2 , Potential registers zp ZP_BYTE:3 [ sy#10 sy#3 ] : zp ZP_BYTE:3 , -Potential registers zp ZP_BYTE:4 [ sz#10 sz#3 ] : zp ZP_BYTE:4 , -Potential registers zp ZP_BYTE:5 [ anim::i#2 anim::i#1 ] : zp ZP_BYTE:5 , -Potential registers zp ZP_BYTE:6 [ debug_print::c#2 debug_print::c#1 ] : zp ZP_BYTE:6 , reg byte x , -Potential registers zp ZP_BYTE:7 [ debug_print::i#2 debug_print::i#1 ] : zp ZP_BYTE:7 , reg byte x , -Potential registers zp ZP_WORD:8 [ print_sbyte_at::at#21 print_sbyte_at::at#15 print_sbyte_at::at#16 print_sbyte_at::at#17 print_sbyte_at::at#18 print_sbyte_at::at#19 print_sbyte_at::at#20 print_sbyte_at::at#0 print_sbyte_at::at#1 print_sbyte_at::at#2 ] : zp ZP_WORD:8 , -Potential registers zp ZP_BYTE:10 [ print_sbyte_at::b#24 print_sbyte_at::b#0 print_sbyte_at::b#22 print_sbyte_at::b#4 print_sbyte_at::b#16 print_sbyte_at::b#12 print_sbyte_at::b#13 print_sbyte_at::b#14 print_sbyte_at::b#15 print_sbyte_at::b#17 print_sbyte_at::b#18 print_sbyte_at::b#19 print_sbyte_at::b#20 print_sbyte_at::b#21 print_sbyte_at::b#5 print_sbyte_at::b#6 print_sbyte_at::b#7 print_sbyte_at::b#8 print_sbyte_at::b#9 print_sbyte_at::b#10 print_sbyte_at::b#11 print_sbyte_at::b#1 print_sbyte_at::b#2 print_sbyte_at::b#3 ] : zp ZP_BYTE:10 , reg byte x , -Potential registers zp ZP_BYTE:11 [ print_char_at::ch#4 print_char_at::ch#2 print_char_at::ch#3 ] : zp ZP_BYTE:11 , reg byte x , reg byte y , -Potential registers zp ZP_WORD:12 [ print_char_at::at#4 print_char_at::at#2 print_char_at::at#3 print_char_at::at#0 print_char_at::at#1 ] : zp ZP_WORD:12 , -Potential registers zp ZP_BYTE:14 [ debug_print_init::c#2 debug_print_init::c#1 ] : zp ZP_BYTE:14 , reg byte x , -Potential registers zp ZP_BYTE:15 [ debug_print_init::i#2 debug_print_init::i#1 ] : zp ZP_BYTE:15 , reg byte x , -Potential registers zp ZP_BYTE:16 [ debug_print_init::j#2 debug_print_init::j#1 ] : zp ZP_BYTE:16 , reg byte x , -Potential registers zp ZP_WORD:17 [ print_str_at::str#13 print_str_at::str#15 print_str_at::str#0 ] : zp ZP_WORD:17 , -Potential registers zp ZP_WORD:19 [ print_str_at::at#13 print_str_at::at#15 print_str_at::at#0 ] : zp ZP_WORD:19 , -Potential registers zp ZP_WORD:21 [ print_cls::sc#2 print_cls::sc#1 ] : zp ZP_WORD:21 , -Potential registers zp ZP_BYTE:23 [ sprites_init::i#2 sprites_init::i#1 ] : zp ZP_BYTE:23 , reg byte x , reg byte y , -Potential registers zp ZP_BYTE:24 [ calculate_matrix_16::sx#0 ] : zp ZP_BYTE:24 , reg byte x , reg byte y , -Potential registers zp ZP_BYTE:25 [ calculate_matrix_16::sy#0 ] : zp ZP_BYTE:25 , reg byte x , reg byte y , -Potential registers zp ZP_BYTE:26 [ calculate_matrix_16::sz#0 ] : zp ZP_BYTE:26 , reg byte x , reg byte y , -Potential registers zp ZP_BYTE:27 [ rotate_matrix::x#0 ] : zp ZP_BYTE:27 , reg byte a , reg byte x , reg byte y , -Potential registers zp ZP_BYTE:28 [ rotate_matrix::y#0 ] : zp ZP_BYTE:28 , reg byte a , reg byte x , reg byte y , -Potential registers zp ZP_BYTE:29 [ rotate_matrix::z#0 ] : zp ZP_BYTE:29 , reg byte a , reg byte x , reg byte y , -Potential registers zp ZP_BYTE:30 [ anim::i2#0 ] : zp ZP_BYTE:30 , reg byte x , reg byte y , -Potential registers zp ZP_BYTE:31 [ anim::$6 ] : zp ZP_BYTE:31 , reg byte a , reg byte x , reg byte y , -Potential registers zp ZP_BYTE:32 [ anim::$8 ] : zp ZP_BYTE:32 , reg byte a , reg byte x , reg byte y , -Potential registers zp ZP_WORD:33 [ print_byte_at::at#0 ] : zp ZP_WORD:33 , -Potential registers zp ZP_BYTE:35 [ print_byte_at::$0 ] : zp ZP_BYTE:35 , reg byte a , reg byte x , reg byte y , -Potential registers zp ZP_BYTE:36 [ print_byte_at::$2 ] : zp ZP_BYTE:36 , reg byte x , reg byte y , -Potential registers zp ZP_BYTE:37 [ calculate_matrix_16::t1#0 ] : zp ZP_BYTE:37 , reg byte x , reg byte y , -Potential registers zp ZP_BYTE:38 [ calculate_matrix_16::t2#0 ] : zp ZP_BYTE:38 , reg byte x , reg byte y , -Potential registers zp ZP_WORD:39 [ calculate_matrix_16::$74 ] : zp ZP_WORD:39 , -Potential registers zp ZP_WORD:41 [ calculate_matrix_16::$75 ] : zp ZP_WORD:41 , -Potential registers zp ZP_WORD:43 [ calculate_matrix_16::$4 ] : zp ZP_WORD:43 , -Potential registers zp ZP_BYTE:45 [ calculate_matrix_16::$5 ] : zp ZP_BYTE:45 , reg byte a , reg byte x , reg byte y , -Potential registers zp ZP_WORD:46 [ calculate_matrix_16::$76 ] : zp ZP_WORD:46 , -Potential registers zp ZP_WORD:48 [ calculate_matrix_16::$77 ] : zp ZP_WORD:48 , -Potential registers zp ZP_WORD:50 [ calculate_matrix_16::$9 ] : zp ZP_WORD:50 , -Potential registers zp ZP_BYTE:52 [ calculate_matrix_16::$10 ] : zp ZP_BYTE:52 , reg byte a , reg byte x , reg byte y , -Potential registers zp ZP_WORD:53 [ calculate_matrix_16::$78 ] : zp ZP_WORD:53 , -Potential registers zp ZP_WORD:55 [ calculate_matrix_16::$13 ] : zp ZP_WORD:55 , -Potential registers zp ZP_BYTE:57 [ calculate_matrix_16::$14 ] : zp ZP_BYTE:57 , reg byte a , reg byte x , reg byte y , -Potential registers zp ZP_BYTE:58 [ calculate_matrix_16::t3#0 ] : zp ZP_BYTE:58 , reg byte x , reg byte y , -Potential registers zp ZP_BYTE:59 [ calculate_matrix_16::t4#0 ] : zp ZP_BYTE:59 , reg byte x , reg byte y , -Potential registers zp ZP_BYTE:60 [ calculate_matrix_16::t5#0 ] : zp ZP_BYTE:60 , reg byte x , reg byte y , -Potential registers zp ZP_BYTE:61 [ calculate_matrix_16::t6#0 ] : zp ZP_BYTE:61 , reg byte x , reg byte y , -Potential registers zp ZP_BYTE:62 [ calculate_matrix_16::t7#0 ] : zp ZP_BYTE:62 , reg byte x , reg byte y , -Potential registers zp ZP_BYTE:63 [ calculate_matrix_16::t8#0 ] : zp ZP_BYTE:63 , reg byte x , reg byte y , -Potential registers zp ZP_WORD:64 [ calculate_matrix_16::$79 ] : zp ZP_WORD:64 , -Potential registers zp ZP_WORD:66 [ calculate_matrix_16::$80 ] : zp ZP_WORD:66 , -Potential registers zp ZP_WORD:68 [ calculate_matrix_16::$81 ] : zp ZP_WORD:68 , -Potential registers zp ZP_WORD:70 [ calculate_matrix_16::$82 ] : zp ZP_WORD:70 , -Potential registers zp ZP_WORD:72 [ calculate_matrix_16::$83 ] : zp ZP_WORD:72 , -Potential registers zp ZP_WORD:74 [ calculate_matrix_16::$84 ] : zp ZP_WORD:74 , -Potential registers zp ZP_WORD:76 [ calculate_matrix_16::$28 ] : zp ZP_WORD:76 , -Potential registers zp ZP_WORD:78 [ calculate_matrix_16::$29 ] : zp ZP_WORD:78 , -Potential registers zp ZP_WORD:80 [ calculate_matrix_16::$30 ] : zp ZP_WORD:80 , -Potential registers zp ZP_WORD:82 [ calculate_matrix_16::$31 ] : zp ZP_WORD:82 , -Potential registers zp ZP_WORD:84 [ calculate_matrix_16::$32 ] : zp ZP_WORD:84 , -Potential registers zp ZP_BYTE:86 [ calculate_matrix_16::$33 ] : zp ZP_BYTE:86 , reg byte a , reg byte x , reg byte y , -Potential registers zp ZP_WORD:87 [ calculate_matrix_16::$35 ] : zp ZP_WORD:87 , -Potential registers zp ZP_WORD:89 [ calculate_matrix_16::$36 ] : zp ZP_WORD:89 , -Potential registers zp ZP_WORD:91 [ calculate_matrix_16::$37 ] : zp ZP_WORD:91 , -Potential registers zp ZP_WORD:93 [ calculate_matrix_16::$38 ] : zp ZP_WORD:93 , -Potential registers zp ZP_WORD:95 [ calculate_matrix_16::$39 ] : zp ZP_WORD:95 , -Potential registers zp ZP_BYTE:97 [ calculate_matrix_16::$40 ] : zp ZP_BYTE:97 , reg byte a , reg byte x , reg byte y , -Potential registers zp ZP_WORD:98 [ calculate_matrix_16::$85 ] : zp ZP_WORD:98 , -Potential registers zp ZP_WORD:100 [ calculate_matrix_16::$86 ] : zp ZP_WORD:100 , -Potential registers zp ZP_WORD:102 [ calculate_matrix_16::$87 ] : zp ZP_WORD:102 , -Potential registers zp ZP_WORD:104 [ calculate_matrix_16::$88 ] : zp ZP_WORD:104 , -Potential registers zp ZP_WORD:106 [ calculate_matrix_16::$89 ] : zp ZP_WORD:106 , -Potential registers zp ZP_WORD:108 [ calculate_matrix_16::$90 ] : zp ZP_WORD:108 , -Potential registers zp ZP_WORD:110 [ calculate_matrix_16::$48 ] : zp ZP_WORD:110 , -Potential registers zp ZP_WORD:112 [ calculate_matrix_16::$49 ] : zp ZP_WORD:112 , -Potential registers zp ZP_WORD:114 [ calculate_matrix_16::$50 ] : zp ZP_WORD:114 , -Potential registers zp ZP_WORD:116 [ calculate_matrix_16::$51 ] : zp ZP_WORD:116 , -Potential registers zp ZP_WORD:118 [ calculate_matrix_16::$52 ] : zp ZP_WORD:118 , -Potential registers zp ZP_BYTE:120 [ calculate_matrix_16::$53 ] : zp ZP_BYTE:120 , reg byte a , reg byte x , reg byte y , -Potential registers zp ZP_WORD:121 [ calculate_matrix_16::$55 ] : zp ZP_WORD:121 , -Potential registers zp ZP_WORD:123 [ calculate_matrix_16::$56 ] : zp ZP_WORD:123 , -Potential registers zp ZP_WORD:125 [ calculate_matrix_16::$57 ] : zp ZP_WORD:125 , -Potential registers zp ZP_WORD:127 [ calculate_matrix_16::$58 ] : zp ZP_WORD:127 , -Potential registers zp ZP_WORD:129 [ calculate_matrix_16::$59 ] : zp ZP_WORD:129 , -Potential registers zp ZP_BYTE:131 [ calculate_matrix_16::$60 ] : zp ZP_BYTE:131 , reg byte a , reg byte x , reg byte y , -Potential registers zp ZP_BYTE:132 [ calculate_matrix_16::t9#0 ] : zp ZP_BYTE:132 , reg byte x , reg byte y , -Potential registers zp ZP_BYTE:133 [ calculate_matrix_16::t10#0 ] : zp ZP_BYTE:133 , reg byte x , reg byte y , -Potential registers zp ZP_WORD:134 [ calculate_matrix_16::$91 ] : zp ZP_WORD:134 , -Potential registers zp ZP_WORD:136 [ calculate_matrix_16::$92 ] : zp ZP_WORD:136 , -Potential registers zp ZP_WORD:138 [ calculate_matrix_16::$66 ] : zp ZP_WORD:138 , -Potential registers zp ZP_BYTE:140 [ calculate_matrix_16::$67 ] : zp ZP_BYTE:140 , reg byte a , reg byte x , reg byte y , -Potential registers zp ZP_WORD:141 [ calculate_matrix_16::$93 ] : zp ZP_WORD:141 , -Potential registers zp ZP_WORD:143 [ calculate_matrix_16::$94 ] : zp ZP_WORD:143 , -Potential registers zp ZP_WORD:145 [ calculate_matrix_16::$71 ] : zp ZP_WORD:145 , -Potential registers zp ZP_BYTE:147 [ calculate_matrix_16::$72 ] : zp ZP_BYTE:147 , reg byte a , reg byte x , reg byte y , -Potential registers zp ZP_BYTE:148 [ debug_print_init::col#0 ] : zp ZP_BYTE:148 , reg byte x , -Potential registers zp ZP_WORD:149 [ debug_print_init::$59 ] : zp ZP_WORD:149 , -Potential registers zp ZP_WORD:151 [ debug_print_init::$60 ] : zp ZP_WORD:151 , -Potential registers zp ZP_WORD:153 [ debug_print_init::$63 ] : zp ZP_WORD:153 , -Potential registers zp ZP_WORD:155 [ debug_print_init::$64 ] : zp ZP_WORD:155 , -Potential registers zp ZP_WORD:157 [ debug_print_init::$67 ] : zp ZP_WORD:157 , -Potential registers zp ZP_WORD:159 [ debug_print_init::$68 ] : zp ZP_WORD:159 , -Potential registers zp ZP_WORD:161 [ debug_print_init::$71 ] : zp ZP_WORD:161 , -Potential registers zp ZP_WORD:163 [ debug_print_init::$72 ] : zp ZP_WORD:163 , -Potential registers zp ZP_WORD:165 [ debug_print_init::$75 ] : zp ZP_WORD:165 , -Potential registers zp ZP_WORD:167 [ debug_print_init::$76 ] : zp ZP_WORD:167 , -Potential registers zp ZP_WORD:169 [ debug_print_init::$79 ] : zp ZP_WORD:169 , -Potential registers zp ZP_WORD:171 [ debug_print_init::$80 ] : zp ZP_WORD:171 , -Potential registers zp ZP_WORD:173 [ debug_print_init::$83 ] : zp ZP_WORD:173 , -Potential registers zp ZP_WORD:175 [ debug_print_init::$84 ] : zp ZP_WORD:175 , -Potential registers zp ZP_WORD:177 [ debug_print_init::$87 ] : zp ZP_WORD:177 , -Potential registers zp ZP_WORD:179 [ debug_print_init::$88 ] : zp ZP_WORD:179 , -Potential registers zp ZP_WORD:181 [ debug_print_init::$91 ] : zp ZP_WORD:181 , -Potential registers zp ZP_WORD:183 [ debug_print_init::$92 ] : zp ZP_WORD:183 , -Potential registers zp ZP_BYTE:185 [ sprites_init::$3 ] : zp ZP_BYTE:185 , reg byte a , reg byte x , reg byte y , +Potential registers zp ZP_BYTE:4 [ anim::i#2 anim::i#1 ] : zp ZP_BYTE:4 , +Potential registers zp ZP_BYTE:5 [ sprites_init::i#2 sprites_init::i#1 ] : zp ZP_BYTE:5 , reg byte x , reg byte y , +Potential registers zp ZP_BYTE:6 [ calculate_matrix::sx#0 ] : zp ZP_BYTE:6 , reg byte x , reg byte y , +Potential registers zp ZP_BYTE:7 [ calculate_matrix::sy#0 ] : zp ZP_BYTE:7 , reg byte x , reg byte y , +Potential registers zp ZP_BYTE:8 [ rotate_matrix::x#0 ] : zp ZP_BYTE:8 , reg byte a , reg byte x , reg byte y , +Potential registers zp ZP_BYTE:9 [ rotate_matrix::y#0 ] : zp ZP_BYTE:9 , reg byte a , reg byte x , reg byte y , +Potential registers zp ZP_BYTE:10 [ rotate_matrix::z#0 ] : zp ZP_BYTE:10 , reg byte a , reg byte x , reg byte y , +Potential registers zp ZP_BYTE:11 [ anim::i2#0 ] : zp ZP_BYTE:11 , reg byte x , reg byte y , +Potential registers zp ZP_BYTE:12 [ anim::$6 ] : zp ZP_BYTE:12 , reg byte a , reg byte x , reg byte y , +Potential registers zp ZP_BYTE:13 [ anim::$8 ] : zp ZP_BYTE:13 , reg byte a , reg byte x , reg byte y , +Potential registers zp ZP_BYTE:14 [ calculate_matrix::t1#0 ] : zp ZP_BYTE:14 , reg byte x , reg byte y , +Potential registers zp ZP_BYTE:15 [ calculate_matrix::t2#0 ] : zp ZP_BYTE:15 , reg byte x , reg byte y , +Potential registers zp ZP_BYTE:16 [ calculate_matrix::t3#0 ] : zp ZP_BYTE:16 , reg byte x , reg byte y , +Potential registers zp ZP_BYTE:17 [ calculate_matrix::t4#0 ] : zp ZP_BYTE:17 , reg byte x , reg byte y , +Potential registers zp ZP_BYTE:18 [ calculate_matrix::t5#0 ] : zp ZP_BYTE:18 , reg byte x , reg byte y , +Potential registers zp ZP_BYTE:19 [ calculate_matrix::t6#0 ] : zp ZP_BYTE:19 , reg byte x , reg byte y , +Potential registers zp ZP_BYTE:20 [ calculate_matrix::t7#0 ] : zp ZP_BYTE:20 , reg byte x , reg byte y , +Potential registers zp ZP_BYTE:21 [ calculate_matrix::t8#0 ] : zp ZP_BYTE:21 , reg byte x , reg byte y , +Potential registers zp ZP_BYTE:22 [ calculate_matrix::t9#0 ] : zp ZP_BYTE:22 , reg byte x , reg byte y , +Potential registers zp ZP_BYTE:23 [ calculate_matrix::t10#0 ] : zp ZP_BYTE:23 , reg byte x , reg byte y , +Potential registers zp ZP_BYTE:24 [ calculate_matrix::$10 ] : zp ZP_BYTE:24 , reg byte a , reg byte x , reg byte y , +Potential registers zp ZP_BYTE:25 [ calculate_matrix::$11 ] : zp ZP_BYTE:25 , reg byte a , reg byte x , reg byte y , +Potential registers zp ZP_BYTE:26 [ calculate_matrix::$12 ] : zp ZP_BYTE:26 , reg byte a , reg byte x , reg byte y , +Potential registers zp ZP_BYTE:27 [ calculate_matrix::$13 ] : zp ZP_BYTE:27 , reg byte a , reg byte x , reg byte y , +Potential registers zp ZP_BYTE:28 [ calculate_matrix::$14 ] : zp ZP_BYTE:28 , reg byte a , reg byte x , reg byte y , +Potential registers zp ZP_BYTE:29 [ calculate_matrix::$15 ] : zp ZP_BYTE:29 , reg byte a , reg byte x , reg byte y , +Potential registers zp ZP_BYTE:30 [ calculate_matrix::$16 ] : zp ZP_BYTE:30 , reg byte a , reg byte x , reg byte y , +Potential registers zp ZP_BYTE:31 [ calculate_matrix::$17 ] : zp ZP_BYTE:31 , reg byte a , reg byte x , reg byte y , +Potential registers zp ZP_BYTE:32 [ calculate_matrix::$18 ] : zp ZP_BYTE:32 , reg byte a , reg byte x , reg byte y , +Potential registers zp ZP_BYTE:33 [ calculate_matrix::$19 ] : zp ZP_BYTE:33 , reg byte a , reg byte x , reg byte y , +Potential registers zp ZP_BYTE:34 [ calculate_matrix::$20 ] : zp ZP_BYTE:34 , reg byte a , reg byte x , reg byte y , +Potential registers zp ZP_BYTE:35 [ calculate_matrix::$21 ] : zp ZP_BYTE:35 , reg byte a , reg byte x , reg byte y , +Potential registers zp ZP_BYTE:36 [ calculate_matrix::$22 ] : zp ZP_BYTE:36 , reg byte a , reg byte x , reg byte y , +Potential registers zp ZP_BYTE:37 [ calculate_matrix::$23 ] : zp ZP_BYTE:37 , reg byte a , reg byte x , reg byte y , +Potential registers zp ZP_BYTE:38 [ calculate_matrix::$24 ] : zp ZP_BYTE:38 , reg byte a , reg byte x , reg byte y , +Potential registers zp ZP_BYTE:39 [ calculate_matrix::$25 ] : zp ZP_BYTE:39 , reg byte a , reg byte x , reg byte y , +Potential registers zp ZP_BYTE:40 [ calculate_matrix::$26 ] : zp ZP_BYTE:40 , reg byte a , reg byte x , reg byte y , +Potential registers zp ZP_BYTE:41 [ calculate_matrix::$27 ] : zp ZP_BYTE:41 , reg byte a , reg byte x , reg byte y , +Potential registers zp ZP_BYTE:42 [ calculate_matrix::$28 ] : zp ZP_BYTE:42 , reg byte a , reg byte x , reg byte y , +Potential registers zp ZP_BYTE:43 [ calculate_matrix::$29 ] : zp ZP_BYTE:43 , reg byte a , reg byte x , reg byte y , +Potential registers zp ZP_BYTE:44 [ calculate_matrix::$30 ] : zp ZP_BYTE:44 , reg byte a , reg byte x , reg byte y , +Potential registers zp ZP_BYTE:45 [ calculate_matrix::$31 ] : zp ZP_BYTE:45 , reg byte a , reg byte x , reg byte y , +Potential registers zp ZP_BYTE:46 [ calculate_matrix::$32 ] : zp ZP_BYTE:46 , reg byte a , reg byte x , reg byte y , +Potential registers zp ZP_BYTE:47 [ calculate_matrix::$33 ] : zp ZP_BYTE:47 , reg byte a , reg byte x , reg byte y , +Potential registers zp ZP_BYTE:48 [ calculate_matrix::$34 ] : zp ZP_BYTE:48 , reg byte a , reg byte x , reg byte y , REGISTER UPLIFT SCOPES -Uplift Scope [debug_print_init] 202: zp ZP_WORD:149 [ debug_print_init::$59 ] 202: zp ZP_WORD:151 [ debug_print_init::$60 ] 202: zp ZP_WORD:153 [ debug_print_init::$63 ] 202: zp ZP_WORD:155 [ debug_print_init::$64 ] 202: zp ZP_WORD:157 [ debug_print_init::$67 ] 202: zp ZP_WORD:159 [ debug_print_init::$68 ] 202: zp ZP_WORD:161 [ debug_print_init::$71 ] 202: zp ZP_WORD:163 [ debug_print_init::$72 ] 202: zp ZP_WORD:165 [ debug_print_init::$75 ] 202: zp ZP_WORD:167 [ debug_print_init::$76 ] 202: zp ZP_WORD:169 [ debug_print_init::$79 ] 202: zp ZP_WORD:171 [ debug_print_init::$80 ] 202: zp ZP_WORD:173 [ debug_print_init::$83 ] 202: zp ZP_WORD:175 [ debug_print_init::$84 ] 202: zp ZP_WORD:177 [ debug_print_init::$87 ] 202: zp ZP_WORD:179 [ debug_print_init::$88 ] 202: zp ZP_WORD:181 [ debug_print_init::$91 ] 202: zp ZP_WORD:183 [ debug_print_init::$92 ] 189.81: zp ZP_BYTE:16 [ debug_print_init::j#2 debug_print_init::j#1 ] 37.41: zp ZP_BYTE:148 [ debug_print_init::col#0 ] 30.85: zp ZP_BYTE:14 [ debug_print_init::c#2 debug_print_init::c#1 ] 20.21: zp ZP_BYTE:15 [ debug_print_init::i#2 debug_print_init::i#1 ] -Uplift Scope [print_sbyte_at] 1,442.17: zp ZP_BYTE:10 [ print_sbyte_at::b#24 print_sbyte_at::b#0 print_sbyte_at::b#22 print_sbyte_at::b#4 print_sbyte_at::b#16 print_sbyte_at::b#12 print_sbyte_at::b#13 print_sbyte_at::b#14 print_sbyte_at::b#15 print_sbyte_at::b#17 print_sbyte_at::b#18 print_sbyte_at::b#19 print_sbyte_at::b#20 print_sbyte_at::b#21 print_sbyte_at::b#5 print_sbyte_at::b#6 print_sbyte_at::b#7 print_sbyte_at::b#8 print_sbyte_at::b#9 print_sbyte_at::b#10 print_sbyte_at::b#11 print_sbyte_at::b#1 print_sbyte_at::b#2 print_sbyte_at::b#3 ] 719.62: zp ZP_WORD:8 [ print_sbyte_at::at#21 print_sbyte_at::at#15 print_sbyte_at::at#16 print_sbyte_at::at#17 print_sbyte_at::at#18 print_sbyte_at::at#19 print_sbyte_at::at#20 print_sbyte_at::at#0 print_sbyte_at::at#1 print_sbyte_at::at#2 ] -Uplift Scope [anim] 222.79: zp ZP_BYTE:5 [ anim::i#2 anim::i#1 ] 202: zp ZP_BYTE:31 [ anim::$6 ] 202: zp ZP_BYTE:32 [ anim::$8 ] 75.75: zp ZP_BYTE:30 [ anim::i2#0 ] -Uplift Scope [debug_print] 191.9: zp ZP_BYTE:7 [ debug_print::i#2 debug_print::i#1 ] 109.86: zp ZP_BYTE:6 [ debug_print::c#2 debug_print::c#1 ] -Uplift Scope [calculate_matrix_16] 4: zp ZP_WORD:43 [ calculate_matrix_16::$4 ] 4: zp ZP_WORD:50 [ calculate_matrix_16::$9 ] 4: zp ZP_WORD:55 [ calculate_matrix_16::$13 ] 4: zp ZP_WORD:76 [ calculate_matrix_16::$28 ] 4: zp ZP_WORD:78 [ calculate_matrix_16::$29 ] 4: zp ZP_WORD:80 [ calculate_matrix_16::$30 ] 4: zp ZP_WORD:82 [ calculate_matrix_16::$31 ] 4: zp ZP_WORD:84 [ calculate_matrix_16::$32 ] 4: zp ZP_WORD:87 [ calculate_matrix_16::$35 ] 4: zp ZP_WORD:89 [ calculate_matrix_16::$36 ] 4: zp ZP_WORD:91 [ calculate_matrix_16::$37 ] 4: zp ZP_WORD:93 [ calculate_matrix_16::$38 ] 4: zp ZP_WORD:95 [ calculate_matrix_16::$39 ] 4: zp ZP_WORD:110 [ calculate_matrix_16::$48 ] 4: zp ZP_WORD:112 [ calculate_matrix_16::$49 ] 4: zp ZP_WORD:114 [ calculate_matrix_16::$50 ] 4: zp ZP_WORD:116 [ calculate_matrix_16::$51 ] 4: zp ZP_WORD:118 [ calculate_matrix_16::$52 ] 4: zp ZP_WORD:121 [ calculate_matrix_16::$55 ] 4: zp ZP_WORD:123 [ calculate_matrix_16::$56 ] 4: zp ZP_WORD:125 [ calculate_matrix_16::$57 ] 4: zp ZP_WORD:127 [ calculate_matrix_16::$58 ] 4: zp ZP_WORD:129 [ calculate_matrix_16::$59 ] 4: zp ZP_WORD:138 [ calculate_matrix_16::$66 ] 4: zp ZP_WORD:145 [ calculate_matrix_16::$71 ] 2: zp ZP_WORD:41 [ calculate_matrix_16::$75 ] 2: zp ZP_BYTE:45 [ calculate_matrix_16::$5 ] 2: zp ZP_WORD:48 [ calculate_matrix_16::$77 ] 2: zp ZP_BYTE:52 [ calculate_matrix_16::$10 ] 2: zp ZP_WORD:53 [ calculate_matrix_16::$78 ] 2: zp ZP_BYTE:57 [ calculate_matrix_16::$14 ] 2: zp ZP_BYTE:86 [ calculate_matrix_16::$33 ] 2: zp ZP_BYTE:97 [ calculate_matrix_16::$40 ] 2: zp ZP_BYTE:120 [ calculate_matrix_16::$53 ] 2: zp ZP_BYTE:131 [ calculate_matrix_16::$60 ] 2: zp ZP_WORD:136 [ calculate_matrix_16::$92 ] 2: zp ZP_BYTE:140 [ calculate_matrix_16::$67 ] 2: zp ZP_WORD:143 [ calculate_matrix_16::$94 ] 2: zp ZP_BYTE:147 [ calculate_matrix_16::$72 ] 1.43: zp ZP_BYTE:132 [ calculate_matrix_16::t9#0 ] 1.43: zp ZP_BYTE:133 [ calculate_matrix_16::t10#0 ] 1.06: zp ZP_BYTE:26 [ calculate_matrix_16::sz#0 ] 1: zp ZP_WORD:39 [ calculate_matrix_16::$74 ] 1: zp ZP_WORD:46 [ calculate_matrix_16::$76 ] 1: zp ZP_WORD:134 [ calculate_matrix_16::$91 ] 1: zp ZP_WORD:141 [ calculate_matrix_16::$93 ] 0.7: zp ZP_BYTE:37 [ calculate_matrix_16::t1#0 ] 0.7: zp ZP_BYTE:38 [ calculate_matrix_16::t2#0 ] 0.41: zp ZP_BYTE:24 [ calculate_matrix_16::sx#0 ] 0.38: zp ZP_BYTE:58 [ calculate_matrix_16::t3#0 ] 0.38: zp ZP_BYTE:59 [ calculate_matrix_16::t4#0 ] 0.38: zp ZP_BYTE:60 [ calculate_matrix_16::t5#0 ] 0.38: zp ZP_BYTE:61 [ calculate_matrix_16::t6#0 ] 0.38: zp ZP_BYTE:62 [ calculate_matrix_16::t7#0 ] 0.38: zp ZP_BYTE:63 [ calculate_matrix_16::t8#0 ] 0.35: zp ZP_BYTE:25 [ calculate_matrix_16::sy#0 ] 0.18: zp ZP_WORD:70 [ calculate_matrix_16::$82 ] 0.18: zp ZP_WORD:104 [ calculate_matrix_16::$88 ] 0.17: zp ZP_WORD:66 [ calculate_matrix_16::$80 ] 0.17: zp ZP_WORD:72 [ calculate_matrix_16::$83 ] 0.17: zp ZP_WORD:74 [ calculate_matrix_16::$84 ] 0.17: zp ZP_WORD:100 [ calculate_matrix_16::$86 ] 0.17: zp ZP_WORD:106 [ calculate_matrix_16::$89 ] 0.17: zp ZP_WORD:108 [ calculate_matrix_16::$90 ] 0.15: zp ZP_WORD:64 [ calculate_matrix_16::$79 ] 0.15: zp ZP_WORD:68 [ calculate_matrix_16::$81 ] 0.15: zp ZP_WORD:98 [ calculate_matrix_16::$85 ] 0.15: zp ZP_WORD:102 [ calculate_matrix_16::$87 ] -Uplift Scope [rotate_matrix] 34.33: zp ZP_BYTE:27 [ rotate_matrix::x#0 ] 34.33: zp ZP_BYTE:28 [ rotate_matrix::y#0 ] 34.33: zp ZP_BYTE:29 [ rotate_matrix::z#0 ] -Uplift Scope [print_str_at] 35.5: zp ZP_WORD:17 [ print_str_at::str#13 print_str_at::str#15 print_str_at::str#0 ] 24.67: zp ZP_WORD:19 [ print_str_at::at#13 print_str_at::at#15 print_str_at::at#0 ] -Uplift Scope [sprites_init] 30.25: zp ZP_BYTE:23 [ sprites_init::i#2 sprites_init::i#1 ] 22: zp ZP_BYTE:185 [ sprites_init::$3 ] -Uplift Scope [] 22.44: zp ZP_BYTE:4 [ sz#10 sz#3 ] 11.44: zp ZP_BYTE:3 [ sy#10 sy#3 ] 7.78: zp ZP_BYTE:2 [ sx#10 sx#3 ] -Uplift Scope [print_char_at] 24: zp ZP_WORD:12 [ print_char_at::at#4 print_char_at::at#2 print_char_at::at#3 print_char_at::at#0 print_char_at::at#1 ] 12: zp ZP_BYTE:11 [ print_char_at::ch#4 print_char_at::ch#2 print_char_at::ch#3 ] -Uplift Scope [print_cls] 33: zp ZP_WORD:21 [ print_cls::sc#2 print_cls::sc#1 ] -Uplift Scope [print_byte_at] 4: zp ZP_BYTE:35 [ print_byte_at::$0 ] 2: zp ZP_BYTE:36 [ print_byte_at::$2 ] 1: zp ZP_WORD:33 [ print_byte_at::at#0 ] +Uplift Scope [anim] 222.79: zp ZP_BYTE:4 [ anim::i#2 anim::i#1 ] 202: zp ZP_BYTE:12 [ anim::$6 ] 202: zp ZP_BYTE:13 [ anim::$8 ] 75.75: zp ZP_BYTE:11 [ anim::i2#0 ] +Uplift Scope [calculate_matrix] 4: zp ZP_BYTE:24 [ calculate_matrix::$10 ] 4: zp ZP_BYTE:25 [ calculate_matrix::$11 ] 4: zp ZP_BYTE:26 [ calculate_matrix::$12 ] 4: zp ZP_BYTE:27 [ calculate_matrix::$13 ] 4: zp ZP_BYTE:28 [ calculate_matrix::$14 ] 4: zp ZP_BYTE:29 [ calculate_matrix::$15 ] 4: zp ZP_BYTE:30 [ calculate_matrix::$16 ] 4: zp ZP_BYTE:31 [ calculate_matrix::$17 ] 4: zp ZP_BYTE:32 [ calculate_matrix::$18 ] 4: zp ZP_BYTE:33 [ calculate_matrix::$19 ] 4: zp ZP_BYTE:34 [ calculate_matrix::$20 ] 4: zp ZP_BYTE:35 [ calculate_matrix::$21 ] 4: zp ZP_BYTE:36 [ calculate_matrix::$22 ] 4: zp ZP_BYTE:37 [ calculate_matrix::$23 ] 4: zp ZP_BYTE:38 [ calculate_matrix::$24 ] 4: zp ZP_BYTE:39 [ calculate_matrix::$25 ] 4: zp ZP_BYTE:40 [ calculate_matrix::$26 ] 4: zp ZP_BYTE:41 [ calculate_matrix::$27 ] 4: zp ZP_BYTE:42 [ calculate_matrix::$28 ] 4: zp ZP_BYTE:43 [ calculate_matrix::$29 ] 4: zp ZP_BYTE:44 [ calculate_matrix::$30 ] 4: zp ZP_BYTE:45 [ calculate_matrix::$31 ] 4: zp ZP_BYTE:46 [ calculate_matrix::$32 ] 4: zp ZP_BYTE:47 [ calculate_matrix::$33 ] 4: zp ZP_BYTE:48 [ calculate_matrix::$34 ] 2.45: zp ZP_BYTE:6 [ calculate_matrix::sx#0 ] 1.53: zp ZP_BYTE:7 [ calculate_matrix::sy#0 ] 0.91: zp ZP_BYTE:15 [ calculate_matrix::t2#0 ] 0.83: zp ZP_BYTE:14 [ calculate_matrix::t1#0 ] 0.31: zp ZP_BYTE:19 [ calculate_matrix::t6#0 ] 0.3: zp ZP_BYTE:17 [ calculate_matrix::t4#0 ] 0.3: zp ZP_BYTE:20 [ calculate_matrix::t7#0 ] 0.3: zp ZP_BYTE:21 [ calculate_matrix::t8#0 ] 0.29: zp ZP_BYTE:16 [ calculate_matrix::t3#0 ] 0.29: zp ZP_BYTE:18 [ calculate_matrix::t5#0 ] 0.18: zp ZP_BYTE:23 [ calculate_matrix::t10#0 ] 0.18: zp ZP_BYTE:22 [ calculate_matrix::t9#0 ] +Uplift Scope [rotate_matrix] 34.33: zp ZP_BYTE:8 [ rotate_matrix::x#0 ] 34.33: zp ZP_BYTE:9 [ rotate_matrix::y#0 ] 34.33: zp ZP_BYTE:10 [ rotate_matrix::z#0 ] +Uplift Scope [] 23.1: zp ZP_BYTE:3 [ sy#10 sy#3 ] 12.14: zp ZP_BYTE:2 [ sx#10 sx#3 ] +Uplift Scope [sprites_init] 31.17: zp ZP_BYTE:5 [ sprites_init::i#2 sprites_init::i#1 ] Uplift Scope [main] Uplift Scope [store_matrix] -Uplifting [debug_print_init] best 94785 combination zp ZP_WORD:149 [ debug_print_init::$59 ] zp ZP_WORD:151 [ debug_print_init::$60 ] zp ZP_WORD:153 [ debug_print_init::$63 ] zp ZP_WORD:155 [ debug_print_init::$64 ] zp ZP_WORD:157 [ debug_print_init::$67 ] zp ZP_WORD:159 [ debug_print_init::$68 ] zp ZP_WORD:161 [ debug_print_init::$71 ] zp ZP_WORD:163 [ debug_print_init::$72 ] zp ZP_WORD:165 [ debug_print_init::$75 ] zp ZP_WORD:167 [ debug_print_init::$76 ] zp ZP_WORD:169 [ debug_print_init::$79 ] zp ZP_WORD:171 [ debug_print_init::$80 ] zp ZP_WORD:173 [ debug_print_init::$83 ] zp ZP_WORD:175 [ debug_print_init::$84 ] zp ZP_WORD:177 [ debug_print_init::$87 ] zp ZP_WORD:179 [ debug_print_init::$88 ] zp ZP_WORD:181 [ debug_print_init::$91 ] zp ZP_WORD:183 [ debug_print_init::$92 ] reg byte x [ debug_print_init::j#2 debug_print_init::j#1 ] zp ZP_BYTE:148 [ debug_print_init::col#0 ] zp ZP_BYTE:14 [ debug_print_init::c#2 debug_print_init::c#1 ] zp ZP_BYTE:15 [ debug_print_init::i#2 debug_print_init::i#1 ] -Uplifting [print_sbyte_at] best 94114 combination reg byte x [ print_sbyte_at::b#24 print_sbyte_at::b#0 print_sbyte_at::b#22 print_sbyte_at::b#4 print_sbyte_at::b#16 print_sbyte_at::b#12 print_sbyte_at::b#13 print_sbyte_at::b#14 print_sbyte_at::b#15 print_sbyte_at::b#17 print_sbyte_at::b#18 print_sbyte_at::b#19 print_sbyte_at::b#20 print_sbyte_at::b#21 print_sbyte_at::b#5 print_sbyte_at::b#6 print_sbyte_at::b#7 print_sbyte_at::b#8 print_sbyte_at::b#9 print_sbyte_at::b#10 print_sbyte_at::b#11 print_sbyte_at::b#1 print_sbyte_at::b#2 print_sbyte_at::b#3 ] zp ZP_WORD:8 [ print_sbyte_at::at#21 print_sbyte_at::at#15 print_sbyte_at::at#16 print_sbyte_at::at#17 print_sbyte_at::at#18 print_sbyte_at::at#19 print_sbyte_at::at#20 print_sbyte_at::at#0 print_sbyte_at::at#1 print_sbyte_at::at#2 ] -Uplifting [anim] best 92214 combination zp ZP_BYTE:5 [ anim::i#2 anim::i#1 ] reg byte a [ anim::$6 ] reg byte a [ anim::$8 ] reg byte x [ anim::i2#0 ] -Uplifting [debug_print] best 92214 combination zp ZP_BYTE:7 [ debug_print::i#2 debug_print::i#1 ] zp ZP_BYTE:6 [ debug_print::c#2 debug_print::c#1 ] -Uplifting [calculate_matrix_16] best 92190 combination zp ZP_WORD:43 [ calculate_matrix_16::$4 ] zp ZP_WORD:50 [ calculate_matrix_16::$9 ] zp ZP_WORD:55 [ calculate_matrix_16::$13 ] zp ZP_WORD:76 [ calculate_matrix_16::$28 ] zp ZP_WORD:78 [ calculate_matrix_16::$29 ] zp ZP_WORD:80 [ calculate_matrix_16::$30 ] zp ZP_WORD:82 [ calculate_matrix_16::$31 ] zp ZP_WORD:84 [ calculate_matrix_16::$32 ] zp ZP_WORD:87 [ calculate_matrix_16::$35 ] zp ZP_WORD:89 [ calculate_matrix_16::$36 ] zp ZP_WORD:91 [ calculate_matrix_16::$37 ] zp ZP_WORD:93 [ calculate_matrix_16::$38 ] zp ZP_WORD:95 [ calculate_matrix_16::$39 ] zp ZP_WORD:110 [ calculate_matrix_16::$48 ] zp ZP_WORD:112 [ calculate_matrix_16::$49 ] zp ZP_WORD:114 [ calculate_matrix_16::$50 ] zp ZP_WORD:116 [ calculate_matrix_16::$51 ] zp ZP_WORD:118 [ calculate_matrix_16::$52 ] zp ZP_WORD:121 [ calculate_matrix_16::$55 ] zp ZP_WORD:123 [ calculate_matrix_16::$56 ] zp ZP_WORD:125 [ calculate_matrix_16::$57 ] zp ZP_WORD:127 [ calculate_matrix_16::$58 ] zp ZP_WORD:129 [ calculate_matrix_16::$59 ] zp ZP_WORD:138 [ calculate_matrix_16::$66 ] zp ZP_WORD:145 [ calculate_matrix_16::$71 ] zp ZP_WORD:41 [ calculate_matrix_16::$75 ] reg byte a [ calculate_matrix_16::$5 ] zp ZP_WORD:48 [ calculate_matrix_16::$77 ] reg byte a [ calculate_matrix_16::$10 ] zp ZP_WORD:53 [ calculate_matrix_16::$78 ] reg byte a [ calculate_matrix_16::$14 ] reg byte a [ calculate_matrix_16::$33 ] zp ZP_BYTE:97 [ calculate_matrix_16::$40 ] zp ZP_BYTE:120 [ calculate_matrix_16::$53 ] zp ZP_BYTE:131 [ calculate_matrix_16::$60 ] zp ZP_WORD:136 [ calculate_matrix_16::$92 ] zp ZP_BYTE:140 [ calculate_matrix_16::$67 ] zp ZP_WORD:143 [ calculate_matrix_16::$94 ] zp ZP_BYTE:147 [ calculate_matrix_16::$72 ] zp ZP_BYTE:132 [ calculate_matrix_16::t9#0 ] zp ZP_BYTE:133 [ calculate_matrix_16::t10#0 ] zp ZP_BYTE:26 [ calculate_matrix_16::sz#0 ] zp ZP_WORD:39 [ calculate_matrix_16::$74 ] zp ZP_WORD:46 [ calculate_matrix_16::$76 ] zp ZP_WORD:134 [ calculate_matrix_16::$91 ] zp ZP_WORD:141 [ calculate_matrix_16::$93 ] zp ZP_BYTE:37 [ calculate_matrix_16::t1#0 ] zp ZP_BYTE:38 [ calculate_matrix_16::t2#0 ] zp ZP_BYTE:24 [ calculate_matrix_16::sx#0 ] zp ZP_BYTE:58 [ calculate_matrix_16::t3#0 ] zp ZP_BYTE:59 [ calculate_matrix_16::t4#0 ] zp ZP_BYTE:60 [ calculate_matrix_16::t5#0 ] zp ZP_BYTE:61 [ calculate_matrix_16::t6#0 ] zp ZP_BYTE:62 [ calculate_matrix_16::t7#0 ] zp ZP_BYTE:63 [ calculate_matrix_16::t8#0 ] zp ZP_BYTE:25 [ calculate_matrix_16::sy#0 ] zp ZP_WORD:70 [ calculate_matrix_16::$82 ] zp ZP_WORD:104 [ calculate_matrix_16::$88 ] zp ZP_WORD:66 [ calculate_matrix_16::$80 ] zp ZP_WORD:72 [ calculate_matrix_16::$83 ] zp ZP_WORD:74 [ calculate_matrix_16::$84 ] zp ZP_WORD:100 [ calculate_matrix_16::$86 ] zp ZP_WORD:106 [ calculate_matrix_16::$89 ] zp ZP_WORD:108 [ calculate_matrix_16::$90 ] zp ZP_WORD:64 [ calculate_matrix_16::$79 ] zp ZP_WORD:68 [ calculate_matrix_16::$81 ] zp ZP_WORD:98 [ calculate_matrix_16::$85 ] zp ZP_WORD:102 [ calculate_matrix_16::$87 ] -Limited combination testing to 100 combinations of 1330380800 possible. -Uplifting [rotate_matrix] best 91788 combination zp ZP_BYTE:27 [ rotate_matrix::x#0 ] reg byte y [ rotate_matrix::y#0 ] reg byte x [ rotate_matrix::z#0 ] -Uplifting [print_str_at] best 91788 combination zp ZP_WORD:17 [ print_str_at::str#13 print_str_at::str#15 print_str_at::str#0 ] zp ZP_WORD:19 [ print_str_at::at#13 print_str_at::at#15 print_str_at::at#0 ] -Uplifting [sprites_init] best 91568 combination reg byte x [ sprites_init::i#2 sprites_init::i#1 ] reg byte a [ sprites_init::$3 ] -Uplifting [] best 91568 combination zp ZP_BYTE:4 [ sz#10 sz#3 ] zp ZP_BYTE:3 [ sy#10 sy#3 ] zp ZP_BYTE:2 [ sx#10 sx#3 ] -Uplifting [print_char_at] best 91568 combination zp ZP_WORD:12 [ print_char_at::at#4 print_char_at::at#2 print_char_at::at#3 print_char_at::at#0 print_char_at::at#1 ] zp ZP_BYTE:11 [ print_char_at::ch#4 print_char_at::ch#2 print_char_at::ch#3 ] -Uplifting [print_cls] best 91568 combination zp ZP_WORD:21 [ print_cls::sc#2 print_cls::sc#1 ] -Uplifting [print_byte_at] best 91560 combination reg byte a [ print_byte_at::$0 ] reg byte x [ print_byte_at::$2 ] zp ZP_WORD:33 [ print_byte_at::at#0 ] -Uplifting [main] best 91560 combination -Uplifting [store_matrix] best 91560 combination -Attempting to uplift remaining variables inzp ZP_BYTE:5 [ anim::i#2 anim::i#1 ] -Uplifting [anim] best 91560 combination zp ZP_BYTE:5 [ anim::i#2 anim::i#1 ] -Attempting to uplift remaining variables inzp ZP_BYTE:7 [ debug_print::i#2 debug_print::i#1 ] -Uplifting [debug_print] best 91560 combination zp ZP_BYTE:7 [ debug_print::i#2 debug_print::i#1 ] -Attempting to uplift remaining variables inzp ZP_BYTE:6 [ debug_print::c#2 debug_print::c#1 ] -Uplifting [debug_print] best 91560 combination zp ZP_BYTE:6 [ debug_print::c#2 debug_print::c#1 ] -Attempting to uplift remaining variables inzp ZP_BYTE:148 [ debug_print_init::col#0 ] -Uplifting [debug_print_init] best 91560 combination zp ZP_BYTE:148 [ debug_print_init::col#0 ] -Attempting to uplift remaining variables inzp ZP_BYTE:27 [ rotate_matrix::x#0 ] -Uplifting [rotate_matrix] best 91560 combination zp ZP_BYTE:27 [ rotate_matrix::x#0 ] -Attempting to uplift remaining variables inzp ZP_BYTE:14 [ debug_print_init::c#2 debug_print_init::c#1 ] -Uplifting [debug_print_init] best 91560 combination zp ZP_BYTE:14 [ debug_print_init::c#2 debug_print_init::c#1 ] -Attempting to uplift remaining variables inzp ZP_BYTE:4 [ sz#10 sz#3 ] -Uplifting [] best 91560 combination zp ZP_BYTE:4 [ sz#10 sz#3 ] -Attempting to uplift remaining variables inzp ZP_BYTE:15 [ debug_print_init::i#2 debug_print_init::i#1 ] -Uplifting [debug_print_init] best 91560 combination zp ZP_BYTE:15 [ debug_print_init::i#2 debug_print_init::i#1 ] -Attempting to uplift remaining variables inzp ZP_BYTE:11 [ print_char_at::ch#4 print_char_at::ch#2 print_char_at::ch#3 ] -Uplifting [print_char_at] best 91560 combination zp ZP_BYTE:11 [ print_char_at::ch#4 print_char_at::ch#2 print_char_at::ch#3 ] +Uplifting [anim] best 23887 combination zp ZP_BYTE:4 [ anim::i#2 anim::i#1 ] reg byte a [ anim::$6 ] reg byte a [ anim::$8 ] reg byte x [ anim::i2#0 ] +Uplifting [rotate_matrix] best 23485 combination zp ZP_BYTE:8 [ rotate_matrix::x#0 ] reg byte y [ rotate_matrix::y#0 ] reg byte x [ rotate_matrix::z#0 ] +Uplifting [] best 23485 combination zp ZP_BYTE:3 [ sy#10 sy#3 ] zp ZP_BYTE:2 [ sx#10 sx#3 ] +Uplifting [sprites_init] best 23335 combination reg byte x [ sprites_init::i#2 sprites_init::i#1 ] +Uplifting [main] best 23335 combination +Uplifting [store_matrix] best 23335 combination +Attempting to uplift remaining variables inzp ZP_BYTE:4 [ anim::i#2 anim::i#1 ] +Uplifting [anim] best 23335 combination zp ZP_BYTE:4 [ anim::i#2 anim::i#1 ] +Attempting to uplift remaining variables inzp ZP_BYTE:8 [ rotate_matrix::x#0 ] +Uplifting [rotate_matrix] best 23335 combination zp ZP_BYTE:8 [ rotate_matrix::x#0 ] Attempting to uplift remaining variables inzp ZP_BYTE:3 [ sy#10 sy#3 ] -Uplifting [] best 91560 combination zp ZP_BYTE:3 [ sy#10 sy#3 ] +Uplifting [] best 23335 combination zp ZP_BYTE:3 [ sy#10 sy#3 ] Attempting to uplift remaining variables inzp ZP_BYTE:2 [ sx#10 sx#3 ] -Uplifting [] best 91560 combination zp ZP_BYTE:2 [ sx#10 sx#3 ] -Attempting to uplift remaining variables inzp ZP_BYTE:97 [ calculate_matrix_16::$40 ] -Uplifting [calculate_matrix_16] best 91554 combination reg byte a [ calculate_matrix_16::$40 ] -Attempting to uplift remaining variables inzp ZP_BYTE:120 [ calculate_matrix_16::$53 ] -Uplifting [calculate_matrix_16] best 91548 combination reg byte a [ calculate_matrix_16::$53 ] -Attempting to uplift remaining variables inzp ZP_BYTE:131 [ calculate_matrix_16::$60 ] -Uplifting [calculate_matrix_16] best 91542 combination reg byte a [ calculate_matrix_16::$60 ] -Attempting to uplift remaining variables inzp ZP_BYTE:140 [ calculate_matrix_16::$67 ] -Uplifting [calculate_matrix_16] best 91536 combination reg byte a [ calculate_matrix_16::$67 ] -Attempting to uplift remaining variables inzp ZP_BYTE:147 [ calculate_matrix_16::$72 ] -Uplifting [calculate_matrix_16] best 91530 combination reg byte a [ calculate_matrix_16::$72 ] -Attempting to uplift remaining variables inzp ZP_BYTE:132 [ calculate_matrix_16::t9#0 ] -Uplifting [calculate_matrix_16] best 91523 combination reg byte x [ calculate_matrix_16::t9#0 ] -Attempting to uplift remaining variables inzp ZP_BYTE:133 [ calculate_matrix_16::t10#0 ] -Uplifting [calculate_matrix_16] best 91516 combination reg byte y [ calculate_matrix_16::t10#0 ] -Attempting to uplift remaining variables inzp ZP_BYTE:26 [ calculate_matrix_16::sz#0 ] -Uplifting [calculate_matrix_16] best 91486 combination reg byte x [ calculate_matrix_16::sz#0 ] -Attempting to uplift remaining variables inzp ZP_BYTE:37 [ calculate_matrix_16::t1#0 ] -Uplifting [calculate_matrix_16] best 91486 combination zp ZP_BYTE:37 [ calculate_matrix_16::t1#0 ] -Attempting to uplift remaining variables inzp ZP_BYTE:38 [ calculate_matrix_16::t2#0 ] -Uplifting [calculate_matrix_16] best 91486 combination zp ZP_BYTE:38 [ calculate_matrix_16::t2#0 ] -Attempting to uplift remaining variables inzp ZP_BYTE:24 [ calculate_matrix_16::sx#0 ] -Uplifting [calculate_matrix_16] best 91486 combination zp ZP_BYTE:24 [ calculate_matrix_16::sx#0 ] -Attempting to uplift remaining variables inzp ZP_BYTE:58 [ calculate_matrix_16::t3#0 ] -Uplifting [calculate_matrix_16] best 91486 combination zp ZP_BYTE:58 [ calculate_matrix_16::t3#0 ] -Attempting to uplift remaining variables inzp ZP_BYTE:59 [ calculate_matrix_16::t4#0 ] -Uplifting [calculate_matrix_16] best 91479 combination reg byte x [ calculate_matrix_16::t4#0 ] -Attempting to uplift remaining variables inzp ZP_BYTE:60 [ calculate_matrix_16::t5#0 ] -Uplifting [calculate_matrix_16] best 91479 combination zp ZP_BYTE:60 [ calculate_matrix_16::t5#0 ] -Attempting to uplift remaining variables inzp ZP_BYTE:61 [ calculate_matrix_16::t6#0 ] -Uplifting [calculate_matrix_16] best 91479 combination zp ZP_BYTE:61 [ calculate_matrix_16::t6#0 ] -Attempting to uplift remaining variables inzp ZP_BYTE:62 [ calculate_matrix_16::t7#0 ] -Uplifting [calculate_matrix_16] best 91479 combination zp ZP_BYTE:62 [ calculate_matrix_16::t7#0 ] -Attempting to uplift remaining variables inzp ZP_BYTE:63 [ calculate_matrix_16::t8#0 ] -Uplifting [calculate_matrix_16] best 91479 combination zp ZP_BYTE:63 [ calculate_matrix_16::t8#0 ] -Attempting to uplift remaining variables inzp ZP_BYTE:25 [ calculate_matrix_16::sy#0 ] -Uplifting [calculate_matrix_16] best 91479 combination zp ZP_BYTE:25 [ calculate_matrix_16::sy#0 ] -Coalescing zero page register with common assignment [ zp ZP_WORD:8 [ print_sbyte_at::at#21 print_sbyte_at::at#15 print_sbyte_at::at#16 print_sbyte_at::at#17 print_sbyte_at::at#18 print_sbyte_at::at#19 print_sbyte_at::at#20 print_sbyte_at::at#0 print_sbyte_at::at#1 print_sbyte_at::at#2 ] ] with [ zp ZP_WORD:12 [ print_char_at::at#4 print_char_at::at#2 print_char_at::at#3 print_char_at::at#0 print_char_at::at#1 ] ] - score: 2 -Coalescing zero page register with common assignment [ zp ZP_BYTE:2 [ sx#10 sx#3 ] ] with [ zp ZP_BYTE:24 [ calculate_matrix_16::sx#0 ] ] - score: 1 -Coalescing zero page register with common assignment [ zp ZP_BYTE:3 [ sy#10 sy#3 ] ] with [ zp ZP_BYTE:25 [ calculate_matrix_16::sy#0 ] ] - score: 1 -Coalescing zero page register with common assignment [ zp ZP_WORD:8 [ print_sbyte_at::at#21 print_sbyte_at::at#15 print_sbyte_at::at#16 print_sbyte_at::at#17 print_sbyte_at::at#18 print_sbyte_at::at#19 print_sbyte_at::at#20 print_sbyte_at::at#0 print_sbyte_at::at#1 print_sbyte_at::at#2 print_char_at::at#4 print_char_at::at#2 print_char_at::at#3 print_char_at::at#0 print_char_at::at#1 ] ] with [ zp ZP_WORD:33 [ print_byte_at::at#0 ] ] - score: 1 -Coalescing zero page register with common assignment [ zp ZP_BYTE:37 [ calculate_matrix_16::t1#0 ] ] with [ zp ZP_BYTE:62 [ calculate_matrix_16::t7#0 ] ] - score: 1 -Coalescing zero page register with common assignment [ zp ZP_BYTE:38 [ calculate_matrix_16::t2#0 ] ] with [ zp ZP_BYTE:63 [ calculate_matrix_16::t8#0 ] ] - score: 1 -Coalescing zero page register with common assignment [ zp ZP_WORD:39 [ calculate_matrix_16::$74 ] ] with [ zp ZP_WORD:43 [ calculate_matrix_16::$4 ] ] - score: 1 -Coalescing zero page register with common assignment [ zp ZP_WORD:46 [ calculate_matrix_16::$76 ] ] with [ zp ZP_WORD:50 [ calculate_matrix_16::$9 ] ] - score: 1 -Coalescing zero page register with common assignment [ zp ZP_WORD:53 [ calculate_matrix_16::$78 ] ] with [ zp ZP_WORD:55 [ calculate_matrix_16::$13 ] ] - score: 1 -Coalescing zero page register with common assignment [ zp ZP_WORD:64 [ calculate_matrix_16::$79 ] ] with [ zp ZP_WORD:87 [ calculate_matrix_16::$35 ] ] - score: 1 -Coalescing zero page register with common assignment [ zp ZP_WORD:68 [ calculate_matrix_16::$81 ] ] with [ zp ZP_WORD:91 [ calculate_matrix_16::$37 ] ] - score: 1 -Coalescing zero page register with common assignment [ zp ZP_WORD:70 [ calculate_matrix_16::$82 ] ] with [ zp ZP_WORD:89 [ calculate_matrix_16::$36 ] ] - score: 1 -Coalescing zero page register with common assignment [ zp ZP_WORD:72 [ calculate_matrix_16::$83 ] ] with [ zp ZP_WORD:93 [ calculate_matrix_16::$38 ] ] - score: 1 -Coalescing zero page register with common assignment [ zp ZP_WORD:74 [ calculate_matrix_16::$84 ] ] with [ zp ZP_WORD:95 [ calculate_matrix_16::$39 ] ] - score: 1 -Coalescing zero page register with common assignment [ zp ZP_WORD:76 [ calculate_matrix_16::$28 ] ] with [ zp ZP_WORD:78 [ calculate_matrix_16::$29 ] ] - score: 1 -Coalescing zero page register with common assignment [ zp ZP_WORD:80 [ calculate_matrix_16::$30 ] ] with [ zp ZP_WORD:82 [ calculate_matrix_16::$31 ] ] - score: 1 -Coalescing zero page register with common assignment [ zp ZP_WORD:98 [ calculate_matrix_16::$85 ] ] with [ zp ZP_WORD:121 [ calculate_matrix_16::$55 ] ] - score: 1 -Coalescing zero page register with common assignment [ zp ZP_WORD:102 [ calculate_matrix_16::$87 ] ] with [ zp ZP_WORD:125 [ calculate_matrix_16::$57 ] ] - score: 1 -Coalescing zero page register with common assignment [ zp ZP_WORD:104 [ calculate_matrix_16::$88 ] ] with [ zp ZP_WORD:123 [ calculate_matrix_16::$56 ] ] - score: 1 -Coalescing zero page register with common assignment [ zp ZP_WORD:106 [ calculate_matrix_16::$89 ] ] with [ zp ZP_WORD:127 [ calculate_matrix_16::$58 ] ] - score: 1 -Coalescing zero page register with common assignment [ zp ZP_WORD:108 [ calculate_matrix_16::$90 ] ] with [ zp ZP_WORD:129 [ calculate_matrix_16::$59 ] ] - score: 1 -Coalescing zero page register with common assignment [ zp ZP_WORD:110 [ calculate_matrix_16::$48 ] ] with [ zp ZP_WORD:112 [ calculate_matrix_16::$49 ] ] - score: 1 -Coalescing zero page register with common assignment [ zp ZP_WORD:114 [ calculate_matrix_16::$50 ] ] with [ zp ZP_WORD:116 [ calculate_matrix_16::$51 ] ] - score: 1 -Coalescing zero page register with common assignment [ zp ZP_WORD:134 [ calculate_matrix_16::$91 ] ] with [ zp ZP_WORD:138 [ calculate_matrix_16::$66 ] ] - score: 1 -Coalescing zero page register with common assignment [ zp ZP_WORD:141 [ calculate_matrix_16::$93 ] ] with [ zp ZP_WORD:145 [ calculate_matrix_16::$71 ] ] - score: 1 -Coalescing zero page register with common assignment [ zp ZP_WORD:149 [ debug_print_init::$59 ] ] with [ zp ZP_WORD:151 [ debug_print_init::$60 ] ] - score: 1 -Coalescing zero page register with common assignment [ zp ZP_WORD:153 [ debug_print_init::$63 ] ] with [ zp ZP_WORD:155 [ debug_print_init::$64 ] ] - score: 1 -Coalescing zero page register with common assignment [ zp ZP_WORD:157 [ debug_print_init::$67 ] ] with [ zp ZP_WORD:159 [ debug_print_init::$68 ] ] - score: 1 -Coalescing zero page register with common assignment [ zp ZP_WORD:161 [ debug_print_init::$71 ] ] with [ zp ZP_WORD:163 [ debug_print_init::$72 ] ] - score: 1 -Coalescing zero page register with common assignment [ zp ZP_WORD:165 [ debug_print_init::$75 ] ] with [ zp ZP_WORD:167 [ debug_print_init::$76 ] ] - score: 1 -Coalescing zero page register with common assignment [ zp ZP_WORD:169 [ debug_print_init::$79 ] ] with [ zp ZP_WORD:171 [ debug_print_init::$80 ] ] - score: 1 -Coalescing zero page register with common assignment [ zp ZP_WORD:173 [ debug_print_init::$83 ] ] with [ zp ZP_WORD:175 [ debug_print_init::$84 ] ] - score: 1 -Coalescing zero page register with common assignment [ zp ZP_WORD:177 [ debug_print_init::$87 ] ] with [ zp ZP_WORD:179 [ debug_print_init::$88 ] ] - score: 1 -Coalescing zero page register with common assignment [ zp ZP_WORD:181 [ debug_print_init::$91 ] ] with [ zp ZP_WORD:183 [ debug_print_init::$92 ] ] - score: 1 -Coalescing zero page register with common assignment [ zp ZP_WORD:76 [ calculate_matrix_16::$28 calculate_matrix_16::$29 ] ] with [ zp ZP_WORD:80 [ calculate_matrix_16::$30 calculate_matrix_16::$31 ] ] - score: 1 -Coalescing zero page register with common assignment [ zp ZP_WORD:110 [ calculate_matrix_16::$48 calculate_matrix_16::$49 ] ] with [ zp ZP_WORD:114 [ calculate_matrix_16::$50 calculate_matrix_16::$51 ] ] - score: 1 -Coalescing zero page register with common assignment [ zp ZP_WORD:76 [ calculate_matrix_16::$28 calculate_matrix_16::$29 calculate_matrix_16::$30 calculate_matrix_16::$31 ] ] with [ zp ZP_WORD:84 [ calculate_matrix_16::$32 ] ] - score: 1 -Coalescing zero page register with common assignment [ zp ZP_WORD:110 [ calculate_matrix_16::$48 calculate_matrix_16::$49 calculate_matrix_16::$50 calculate_matrix_16::$51 ] ] with [ zp ZP_WORD:118 [ calculate_matrix_16::$52 ] ] - score: 1 -Coalescing zero page register [ zp ZP_BYTE:2 [ sx#10 sx#3 calculate_matrix_16::sx#0 ] ] with [ zp ZP_BYTE:14 [ debug_print_init::c#2 debug_print_init::c#1 ] ] -Coalescing zero page register [ zp ZP_BYTE:3 [ sy#10 sy#3 calculate_matrix_16::sy#0 ] ] with [ zp ZP_BYTE:15 [ debug_print_init::i#2 debug_print_init::i#1 ] ] -Coalescing zero page register [ zp ZP_BYTE:4 [ sz#10 sz#3 ] ] with [ zp ZP_BYTE:148 [ debug_print_init::col#0 ] ] -Coalescing zero page register [ zp ZP_BYTE:5 [ anim::i#2 anim::i#1 ] ] with [ zp ZP_BYTE:6 [ debug_print::c#2 debug_print::c#1 ] ] -Coalescing zero page register [ zp ZP_BYTE:5 [ anim::i#2 anim::i#1 debug_print::c#2 debug_print::c#1 ] ] with [ zp ZP_BYTE:37 [ calculate_matrix_16::t1#0 calculate_matrix_16::t7#0 ] ] -Coalescing zero page register [ zp ZP_BYTE:7 [ debug_print::i#2 debug_print::i#1 ] ] with [ zp ZP_BYTE:27 [ rotate_matrix::x#0 ] ] -Coalescing zero page register [ zp ZP_BYTE:7 [ debug_print::i#2 debug_print::i#1 rotate_matrix::x#0 ] ] with [ zp ZP_BYTE:38 [ calculate_matrix_16::t2#0 calculate_matrix_16::t8#0 ] ] -Coalescing zero page register [ zp ZP_WORD:8 [ print_sbyte_at::at#21 print_sbyte_at::at#15 print_sbyte_at::at#16 print_sbyte_at::at#17 print_sbyte_at::at#18 print_sbyte_at::at#19 print_sbyte_at::at#20 print_sbyte_at::at#0 print_sbyte_at::at#1 print_sbyte_at::at#2 print_char_at::at#4 print_char_at::at#2 print_char_at::at#3 print_char_at::at#0 print_char_at::at#1 print_byte_at::at#0 ] ] with [ zp ZP_WORD:17 [ print_str_at::str#13 print_str_at::str#15 print_str_at::str#0 ] ] -Coalescing zero page register [ zp ZP_WORD:8 [ print_sbyte_at::at#21 print_sbyte_at::at#15 print_sbyte_at::at#16 print_sbyte_at::at#17 print_sbyte_at::at#18 print_sbyte_at::at#19 print_sbyte_at::at#20 print_sbyte_at::at#0 print_sbyte_at::at#1 print_sbyte_at::at#2 print_char_at::at#4 print_char_at::at#2 print_char_at::at#3 print_char_at::at#0 print_char_at::at#1 print_byte_at::at#0 print_str_at::str#13 print_str_at::str#15 print_str_at::str#0 ] ] with [ zp ZP_WORD:21 [ print_cls::sc#2 print_cls::sc#1 ] ] -Coalescing zero page register [ zp ZP_WORD:8 [ print_sbyte_at::at#21 print_sbyte_at::at#15 print_sbyte_at::at#16 print_sbyte_at::at#17 print_sbyte_at::at#18 print_sbyte_at::at#19 print_sbyte_at::at#20 print_sbyte_at::at#0 print_sbyte_at::at#1 print_sbyte_at::at#2 print_char_at::at#4 print_char_at::at#2 print_char_at::at#3 print_char_at::at#0 print_char_at::at#1 print_byte_at::at#0 print_str_at::str#13 print_str_at::str#15 print_str_at::str#0 print_cls::sc#2 print_cls::sc#1 ] ] with [ zp ZP_WORD:39 [ calculate_matrix_16::$74 calculate_matrix_16::$4 ] ] -Coalescing zero page register [ zp ZP_WORD:8 [ print_sbyte_at::at#21 print_sbyte_at::at#15 print_sbyte_at::at#16 print_sbyte_at::at#17 print_sbyte_at::at#18 print_sbyte_at::at#19 print_sbyte_at::at#20 print_sbyte_at::at#0 print_sbyte_at::at#1 print_sbyte_at::at#2 print_char_at::at#4 print_char_at::at#2 print_char_at::at#3 print_char_at::at#0 print_char_at::at#1 print_byte_at::at#0 print_str_at::str#13 print_str_at::str#15 print_str_at::str#0 print_cls::sc#2 print_cls::sc#1 calculate_matrix_16::$74 calculate_matrix_16::$4 ] ] with [ zp ZP_WORD:46 [ calculate_matrix_16::$76 calculate_matrix_16::$9 ] ] -Coalescing zero page register [ zp ZP_WORD:8 [ print_sbyte_at::at#21 print_sbyte_at::at#15 print_sbyte_at::at#16 print_sbyte_at::at#17 print_sbyte_at::at#18 print_sbyte_at::at#19 print_sbyte_at::at#20 print_sbyte_at::at#0 print_sbyte_at::at#1 print_sbyte_at::at#2 print_char_at::at#4 print_char_at::at#2 print_char_at::at#3 print_char_at::at#0 print_char_at::at#1 print_byte_at::at#0 print_str_at::str#13 print_str_at::str#15 print_str_at::str#0 print_cls::sc#2 print_cls::sc#1 calculate_matrix_16::$74 calculate_matrix_16::$4 calculate_matrix_16::$76 calculate_matrix_16::$9 ] ] with [ zp ZP_WORD:53 [ calculate_matrix_16::$78 calculate_matrix_16::$13 ] ] -Coalescing zero page register [ zp ZP_WORD:8 [ print_sbyte_at::at#21 print_sbyte_at::at#15 print_sbyte_at::at#16 print_sbyte_at::at#17 print_sbyte_at::at#18 print_sbyte_at::at#19 print_sbyte_at::at#20 print_sbyte_at::at#0 print_sbyte_at::at#1 print_sbyte_at::at#2 print_char_at::at#4 print_char_at::at#2 print_char_at::at#3 print_char_at::at#0 print_char_at::at#1 print_byte_at::at#0 print_str_at::str#13 print_str_at::str#15 print_str_at::str#0 print_cls::sc#2 print_cls::sc#1 calculate_matrix_16::$74 calculate_matrix_16::$4 calculate_matrix_16::$76 calculate_matrix_16::$9 calculate_matrix_16::$78 calculate_matrix_16::$13 ] ] with [ zp ZP_WORD:64 [ calculate_matrix_16::$79 calculate_matrix_16::$35 ] ] -Coalescing zero page register [ zp ZP_WORD:8 [ print_sbyte_at::at#21 print_sbyte_at::at#15 print_sbyte_at::at#16 print_sbyte_at::at#17 print_sbyte_at::at#18 print_sbyte_at::at#19 print_sbyte_at::at#20 print_sbyte_at::at#0 print_sbyte_at::at#1 print_sbyte_at::at#2 print_char_at::at#4 print_char_at::at#2 print_char_at::at#3 print_char_at::at#0 print_char_at::at#1 print_byte_at::at#0 print_str_at::str#13 print_str_at::str#15 print_str_at::str#0 print_cls::sc#2 print_cls::sc#1 calculate_matrix_16::$74 calculate_matrix_16::$4 calculate_matrix_16::$76 calculate_matrix_16::$9 calculate_matrix_16::$78 calculate_matrix_16::$13 calculate_matrix_16::$79 calculate_matrix_16::$35 ] ] with [ zp ZP_WORD:98 [ calculate_matrix_16::$85 calculate_matrix_16::$55 ] ] -Coalescing zero page register [ zp ZP_WORD:8 [ print_sbyte_at::at#21 print_sbyte_at::at#15 print_sbyte_at::at#16 print_sbyte_at::at#17 print_sbyte_at::at#18 print_sbyte_at::at#19 print_sbyte_at::at#20 print_sbyte_at::at#0 print_sbyte_at::at#1 print_sbyte_at::at#2 print_char_at::at#4 print_char_at::at#2 print_char_at::at#3 print_char_at::at#0 print_char_at::at#1 print_byte_at::at#0 print_str_at::str#13 print_str_at::str#15 print_str_at::str#0 print_cls::sc#2 print_cls::sc#1 calculate_matrix_16::$74 calculate_matrix_16::$4 calculate_matrix_16::$76 calculate_matrix_16::$9 calculate_matrix_16::$78 calculate_matrix_16::$13 calculate_matrix_16::$79 calculate_matrix_16::$35 calculate_matrix_16::$85 calculate_matrix_16::$55 ] ] with [ zp ZP_WORD:134 [ calculate_matrix_16::$91 calculate_matrix_16::$66 ] ] -Coalescing zero page register [ zp ZP_WORD:8 [ print_sbyte_at::at#21 print_sbyte_at::at#15 print_sbyte_at::at#16 print_sbyte_at::at#17 print_sbyte_at::at#18 print_sbyte_at::at#19 print_sbyte_at::at#20 print_sbyte_at::at#0 print_sbyte_at::at#1 print_sbyte_at::at#2 print_char_at::at#4 print_char_at::at#2 print_char_at::at#3 print_char_at::at#0 print_char_at::at#1 print_byte_at::at#0 print_str_at::str#13 print_str_at::str#15 print_str_at::str#0 print_cls::sc#2 print_cls::sc#1 calculate_matrix_16::$74 calculate_matrix_16::$4 calculate_matrix_16::$76 calculate_matrix_16::$9 calculate_matrix_16::$78 calculate_matrix_16::$13 calculate_matrix_16::$79 calculate_matrix_16::$35 calculate_matrix_16::$85 calculate_matrix_16::$55 calculate_matrix_16::$91 calculate_matrix_16::$66 ] ] with [ zp ZP_WORD:141 [ calculate_matrix_16::$93 calculate_matrix_16::$71 ] ] -Coalescing zero page register [ zp ZP_WORD:8 [ print_sbyte_at::at#21 print_sbyte_at::at#15 print_sbyte_at::at#16 print_sbyte_at::at#17 print_sbyte_at::at#18 print_sbyte_at::at#19 print_sbyte_at::at#20 print_sbyte_at::at#0 print_sbyte_at::at#1 print_sbyte_at::at#2 print_char_at::at#4 print_char_at::at#2 print_char_at::at#3 print_char_at::at#0 print_char_at::at#1 print_byte_at::at#0 print_str_at::str#13 print_str_at::str#15 print_str_at::str#0 print_cls::sc#2 print_cls::sc#1 calculate_matrix_16::$74 calculate_matrix_16::$4 calculate_matrix_16::$76 calculate_matrix_16::$9 calculate_matrix_16::$78 calculate_matrix_16::$13 calculate_matrix_16::$79 calculate_matrix_16::$35 calculate_matrix_16::$85 calculate_matrix_16::$55 calculate_matrix_16::$91 calculate_matrix_16::$66 calculate_matrix_16::$93 calculate_matrix_16::$71 ] ] with [ zp ZP_WORD:149 [ debug_print_init::$59 debug_print_init::$60 ] ] -Coalescing zero page register [ zp ZP_WORD:8 [ print_sbyte_at::at#21 print_sbyte_at::at#15 print_sbyte_at::at#16 print_sbyte_at::at#17 print_sbyte_at::at#18 print_sbyte_at::at#19 print_sbyte_at::at#20 print_sbyte_at::at#0 print_sbyte_at::at#1 print_sbyte_at::at#2 print_char_at::at#4 print_char_at::at#2 print_char_at::at#3 print_char_at::at#0 print_char_at::at#1 print_byte_at::at#0 print_str_at::str#13 print_str_at::str#15 print_str_at::str#0 print_cls::sc#2 print_cls::sc#1 calculate_matrix_16::$74 calculate_matrix_16::$4 calculate_matrix_16::$76 calculate_matrix_16::$9 calculate_matrix_16::$78 calculate_matrix_16::$13 calculate_matrix_16::$79 calculate_matrix_16::$35 calculate_matrix_16::$85 calculate_matrix_16::$55 calculate_matrix_16::$91 calculate_matrix_16::$66 calculate_matrix_16::$93 calculate_matrix_16::$71 debug_print_init::$59 debug_print_init::$60 ] ] with [ zp ZP_WORD:153 [ debug_print_init::$63 debug_print_init::$64 ] ] -Coalescing zero page register [ zp ZP_WORD:8 [ print_sbyte_at::at#21 print_sbyte_at::at#15 print_sbyte_at::at#16 print_sbyte_at::at#17 print_sbyte_at::at#18 print_sbyte_at::at#19 print_sbyte_at::at#20 print_sbyte_at::at#0 print_sbyte_at::at#1 print_sbyte_at::at#2 print_char_at::at#4 print_char_at::at#2 print_char_at::at#3 print_char_at::at#0 print_char_at::at#1 print_byte_at::at#0 print_str_at::str#13 print_str_at::str#15 print_str_at::str#0 print_cls::sc#2 print_cls::sc#1 calculate_matrix_16::$74 calculate_matrix_16::$4 calculate_matrix_16::$76 calculate_matrix_16::$9 calculate_matrix_16::$78 calculate_matrix_16::$13 calculate_matrix_16::$79 calculate_matrix_16::$35 calculate_matrix_16::$85 calculate_matrix_16::$55 calculate_matrix_16::$91 calculate_matrix_16::$66 calculate_matrix_16::$93 calculate_matrix_16::$71 debug_print_init::$59 debug_print_init::$60 debug_print_init::$63 debug_print_init::$64 ] ] with [ zp ZP_WORD:157 [ debug_print_init::$67 debug_print_init::$68 ] ] -Coalescing zero page register [ zp ZP_WORD:8 [ print_sbyte_at::at#21 print_sbyte_at::at#15 print_sbyte_at::at#16 print_sbyte_at::at#17 print_sbyte_at::at#18 print_sbyte_at::at#19 print_sbyte_at::at#20 print_sbyte_at::at#0 print_sbyte_at::at#1 print_sbyte_at::at#2 print_char_at::at#4 print_char_at::at#2 print_char_at::at#3 print_char_at::at#0 print_char_at::at#1 print_byte_at::at#0 print_str_at::str#13 print_str_at::str#15 print_str_at::str#0 print_cls::sc#2 print_cls::sc#1 calculate_matrix_16::$74 calculate_matrix_16::$4 calculate_matrix_16::$76 calculate_matrix_16::$9 calculate_matrix_16::$78 calculate_matrix_16::$13 calculate_matrix_16::$79 calculate_matrix_16::$35 calculate_matrix_16::$85 calculate_matrix_16::$55 calculate_matrix_16::$91 calculate_matrix_16::$66 calculate_matrix_16::$93 calculate_matrix_16::$71 debug_print_init::$59 debug_print_init::$60 debug_print_init::$63 debug_print_init::$64 debug_print_init::$67 debug_print_init::$68 ] ] with [ zp ZP_WORD:161 [ debug_print_init::$71 debug_print_init::$72 ] ] -Coalescing zero page register [ zp ZP_WORD:8 [ print_sbyte_at::at#21 print_sbyte_at::at#15 print_sbyte_at::at#16 print_sbyte_at::at#17 print_sbyte_at::at#18 print_sbyte_at::at#19 print_sbyte_at::at#20 print_sbyte_at::at#0 print_sbyte_at::at#1 print_sbyte_at::at#2 print_char_at::at#4 print_char_at::at#2 print_char_at::at#3 print_char_at::at#0 print_char_at::at#1 print_byte_at::at#0 print_str_at::str#13 print_str_at::str#15 print_str_at::str#0 print_cls::sc#2 print_cls::sc#1 calculate_matrix_16::$74 calculate_matrix_16::$4 calculate_matrix_16::$76 calculate_matrix_16::$9 calculate_matrix_16::$78 calculate_matrix_16::$13 calculate_matrix_16::$79 calculate_matrix_16::$35 calculate_matrix_16::$85 calculate_matrix_16::$55 calculate_matrix_16::$91 calculate_matrix_16::$66 calculate_matrix_16::$93 calculate_matrix_16::$71 debug_print_init::$59 debug_print_init::$60 debug_print_init::$63 debug_print_init::$64 debug_print_init::$67 debug_print_init::$68 debug_print_init::$71 debug_print_init::$72 ] ] with [ zp ZP_WORD:165 [ debug_print_init::$75 debug_print_init::$76 ] ] -Coalescing zero page register [ zp ZP_WORD:8 [ print_sbyte_at::at#21 print_sbyte_at::at#15 print_sbyte_at::at#16 print_sbyte_at::at#17 print_sbyte_at::at#18 print_sbyte_at::at#19 print_sbyte_at::at#20 print_sbyte_at::at#0 print_sbyte_at::at#1 print_sbyte_at::at#2 print_char_at::at#4 print_char_at::at#2 print_char_at::at#3 print_char_at::at#0 print_char_at::at#1 print_byte_at::at#0 print_str_at::str#13 print_str_at::str#15 print_str_at::str#0 print_cls::sc#2 print_cls::sc#1 calculate_matrix_16::$74 calculate_matrix_16::$4 calculate_matrix_16::$76 calculate_matrix_16::$9 calculate_matrix_16::$78 calculate_matrix_16::$13 calculate_matrix_16::$79 calculate_matrix_16::$35 calculate_matrix_16::$85 calculate_matrix_16::$55 calculate_matrix_16::$91 calculate_matrix_16::$66 calculate_matrix_16::$93 calculate_matrix_16::$71 debug_print_init::$59 debug_print_init::$60 debug_print_init::$63 debug_print_init::$64 debug_print_init::$67 debug_print_init::$68 debug_print_init::$71 debug_print_init::$72 debug_print_init::$75 debug_print_init::$76 ] ] with [ zp ZP_WORD:169 [ debug_print_init::$79 debug_print_init::$80 ] ] -Coalescing zero page register [ zp ZP_WORD:8 [ print_sbyte_at::at#21 print_sbyte_at::at#15 print_sbyte_at::at#16 print_sbyte_at::at#17 print_sbyte_at::at#18 print_sbyte_at::at#19 print_sbyte_at::at#20 print_sbyte_at::at#0 print_sbyte_at::at#1 print_sbyte_at::at#2 print_char_at::at#4 print_char_at::at#2 print_char_at::at#3 print_char_at::at#0 print_char_at::at#1 print_byte_at::at#0 print_str_at::str#13 print_str_at::str#15 print_str_at::str#0 print_cls::sc#2 print_cls::sc#1 calculate_matrix_16::$74 calculate_matrix_16::$4 calculate_matrix_16::$76 calculate_matrix_16::$9 calculate_matrix_16::$78 calculate_matrix_16::$13 calculate_matrix_16::$79 calculate_matrix_16::$35 calculate_matrix_16::$85 calculate_matrix_16::$55 calculate_matrix_16::$91 calculate_matrix_16::$66 calculate_matrix_16::$93 calculate_matrix_16::$71 debug_print_init::$59 debug_print_init::$60 debug_print_init::$63 debug_print_init::$64 debug_print_init::$67 debug_print_init::$68 debug_print_init::$71 debug_print_init::$72 debug_print_init::$75 debug_print_init::$76 debug_print_init::$79 debug_print_init::$80 ] ] with [ zp ZP_WORD:173 [ debug_print_init::$83 debug_print_init::$84 ] ] -Coalescing zero page register [ zp ZP_WORD:8 [ print_sbyte_at::at#21 print_sbyte_at::at#15 print_sbyte_at::at#16 print_sbyte_at::at#17 print_sbyte_at::at#18 print_sbyte_at::at#19 print_sbyte_at::at#20 print_sbyte_at::at#0 print_sbyte_at::at#1 print_sbyte_at::at#2 print_char_at::at#4 print_char_at::at#2 print_char_at::at#3 print_char_at::at#0 print_char_at::at#1 print_byte_at::at#0 print_str_at::str#13 print_str_at::str#15 print_str_at::str#0 print_cls::sc#2 print_cls::sc#1 calculate_matrix_16::$74 calculate_matrix_16::$4 calculate_matrix_16::$76 calculate_matrix_16::$9 calculate_matrix_16::$78 calculate_matrix_16::$13 calculate_matrix_16::$79 calculate_matrix_16::$35 calculate_matrix_16::$85 calculate_matrix_16::$55 calculate_matrix_16::$91 calculate_matrix_16::$66 calculate_matrix_16::$93 calculate_matrix_16::$71 debug_print_init::$59 debug_print_init::$60 debug_print_init::$63 debug_print_init::$64 debug_print_init::$67 debug_print_init::$68 debug_print_init::$71 debug_print_init::$72 debug_print_init::$75 debug_print_init::$76 debug_print_init::$79 debug_print_init::$80 debug_print_init::$83 debug_print_init::$84 ] ] with [ zp ZP_WORD:177 [ debug_print_init::$87 debug_print_init::$88 ] ] -Coalescing zero page register [ zp ZP_WORD:8 [ print_sbyte_at::at#21 print_sbyte_at::at#15 print_sbyte_at::at#16 print_sbyte_at::at#17 print_sbyte_at::at#18 print_sbyte_at::at#19 print_sbyte_at::at#20 print_sbyte_at::at#0 print_sbyte_at::at#1 print_sbyte_at::at#2 print_char_at::at#4 print_char_at::at#2 print_char_at::at#3 print_char_at::at#0 print_char_at::at#1 print_byte_at::at#0 print_str_at::str#13 print_str_at::str#15 print_str_at::str#0 print_cls::sc#2 print_cls::sc#1 calculate_matrix_16::$74 calculate_matrix_16::$4 calculate_matrix_16::$76 calculate_matrix_16::$9 calculate_matrix_16::$78 calculate_matrix_16::$13 calculate_matrix_16::$79 calculate_matrix_16::$35 calculate_matrix_16::$85 calculate_matrix_16::$55 calculate_matrix_16::$91 calculate_matrix_16::$66 calculate_matrix_16::$93 calculate_matrix_16::$71 debug_print_init::$59 debug_print_init::$60 debug_print_init::$63 debug_print_init::$64 debug_print_init::$67 debug_print_init::$68 debug_print_init::$71 debug_print_init::$72 debug_print_init::$75 debug_print_init::$76 debug_print_init::$79 debug_print_init::$80 debug_print_init::$83 debug_print_init::$84 debug_print_init::$87 debug_print_init::$88 ] ] with [ zp ZP_WORD:181 [ debug_print_init::$91 debug_print_init::$92 ] ] -Coalescing zero page register [ zp ZP_BYTE:11 [ print_char_at::ch#4 print_char_at::ch#2 print_char_at::ch#3 ] ] with [ zp ZP_BYTE:58 [ calculate_matrix_16::t3#0 ] ] -Coalescing zero page register [ zp ZP_WORD:19 [ print_str_at::at#13 print_str_at::at#15 print_str_at::at#0 ] ] with [ zp ZP_WORD:41 [ calculate_matrix_16::$75 ] ] -Coalescing zero page register [ zp ZP_WORD:19 [ print_str_at::at#13 print_str_at::at#15 print_str_at::at#0 calculate_matrix_16::$75 ] ] with [ zp ZP_WORD:48 [ calculate_matrix_16::$77 ] ] -Coalescing zero page register [ zp ZP_WORD:19 [ print_str_at::at#13 print_str_at::at#15 print_str_at::at#0 calculate_matrix_16::$75 calculate_matrix_16::$77 ] ] with [ zp ZP_WORD:66 [ calculate_matrix_16::$80 ] ] -Coalescing zero page register [ zp ZP_WORD:19 [ print_str_at::at#13 print_str_at::at#15 print_str_at::at#0 calculate_matrix_16::$75 calculate_matrix_16::$77 calculate_matrix_16::$80 ] ] with [ zp ZP_WORD:100 [ calculate_matrix_16::$86 ] ] -Coalescing zero page register [ zp ZP_WORD:19 [ print_str_at::at#13 print_str_at::at#15 print_str_at::at#0 calculate_matrix_16::$75 calculate_matrix_16::$77 calculate_matrix_16::$80 calculate_matrix_16::$86 ] ] with [ zp ZP_WORD:136 [ calculate_matrix_16::$92 ] ] -Coalescing zero page register [ zp ZP_WORD:19 [ print_str_at::at#13 print_str_at::at#15 print_str_at::at#0 calculate_matrix_16::$75 calculate_matrix_16::$77 calculate_matrix_16::$80 calculate_matrix_16::$86 calculate_matrix_16::$92 ] ] with [ zp ZP_WORD:143 [ calculate_matrix_16::$94 ] ] -Coalescing zero page register [ zp ZP_WORD:68 [ calculate_matrix_16::$81 calculate_matrix_16::$37 ] ] with [ zp ZP_WORD:102 [ calculate_matrix_16::$87 calculate_matrix_16::$57 ] ] -Coalescing zero page register [ zp ZP_WORD:70 [ calculate_matrix_16::$82 calculate_matrix_16::$36 ] ] with [ zp ZP_WORD:104 [ calculate_matrix_16::$88 calculate_matrix_16::$56 ] ] -Coalescing zero page register [ zp ZP_WORD:72 [ calculate_matrix_16::$83 calculate_matrix_16::$38 ] ] with [ zp ZP_WORD:106 [ calculate_matrix_16::$89 calculate_matrix_16::$58 ] ] -Coalescing zero page register [ zp ZP_WORD:74 [ calculate_matrix_16::$84 calculate_matrix_16::$39 ] ] with [ zp ZP_WORD:108 [ calculate_matrix_16::$90 calculate_matrix_16::$59 ] ] -Coalescing zero page register [ zp ZP_WORD:76 [ calculate_matrix_16::$28 calculate_matrix_16::$29 calculate_matrix_16::$30 calculate_matrix_16::$31 calculate_matrix_16::$32 ] ] with [ zp ZP_WORD:110 [ calculate_matrix_16::$48 calculate_matrix_16::$49 calculate_matrix_16::$50 calculate_matrix_16::$51 calculate_matrix_16::$52 ] ] -Allocated (was zp ZP_BYTE:7) zp ZP_BYTE:6 [ debug_print::i#2 debug_print::i#1 rotate_matrix::x#0 calculate_matrix_16::t2#0 calculate_matrix_16::t8#0 ] -Allocated (was zp ZP_WORD:8) zp ZP_WORD:7 [ print_sbyte_at::at#21 print_sbyte_at::at#15 print_sbyte_at::at#16 print_sbyte_at::at#17 print_sbyte_at::at#18 print_sbyte_at::at#19 print_sbyte_at::at#20 print_sbyte_at::at#0 print_sbyte_at::at#1 print_sbyte_at::at#2 print_char_at::at#4 print_char_at::at#2 print_char_at::at#3 print_char_at::at#0 print_char_at::at#1 print_byte_at::at#0 print_str_at::str#13 print_str_at::str#15 print_str_at::str#0 print_cls::sc#2 print_cls::sc#1 calculate_matrix_16::$74 calculate_matrix_16::$4 calculate_matrix_16::$76 calculate_matrix_16::$9 calculate_matrix_16::$78 calculate_matrix_16::$13 calculate_matrix_16::$79 calculate_matrix_16::$35 calculate_matrix_16::$85 calculate_matrix_16::$55 calculate_matrix_16::$91 calculate_matrix_16::$66 calculate_matrix_16::$93 calculate_matrix_16::$71 debug_print_init::$59 debug_print_init::$60 debug_print_init::$63 debug_print_init::$64 debug_print_init::$67 debug_print_init::$68 debug_print_init::$71 debug_print_init::$72 debug_print_init::$75 debug_print_init::$76 debug_print_init::$79 debug_print_init::$80 debug_print_init::$83 debug_print_init::$84 debug_print_init::$87 debug_print_init::$88 debug_print_init::$91 debug_print_init::$92 ] -Allocated (was zp ZP_BYTE:11) zp ZP_BYTE:9 [ print_char_at::ch#4 print_char_at::ch#2 print_char_at::ch#3 calculate_matrix_16::t3#0 ] -Allocated (was zp ZP_WORD:19) zp ZP_WORD:10 [ print_str_at::at#13 print_str_at::at#15 print_str_at::at#0 calculate_matrix_16::$75 calculate_matrix_16::$77 calculate_matrix_16::$80 calculate_matrix_16::$86 calculate_matrix_16::$92 calculate_matrix_16::$94 ] -Allocated (was zp ZP_BYTE:60) zp ZP_BYTE:12 [ calculate_matrix_16::t5#0 ] -Allocated (was zp ZP_BYTE:61) zp ZP_BYTE:13 [ calculate_matrix_16::t6#0 ] -Allocated (was zp ZP_WORD:68) zp ZP_WORD:14 [ calculate_matrix_16::$81 calculate_matrix_16::$37 calculate_matrix_16::$87 calculate_matrix_16::$57 ] -Allocated (was zp ZP_WORD:70) zp ZP_WORD:16 [ calculate_matrix_16::$82 calculate_matrix_16::$36 calculate_matrix_16::$88 calculate_matrix_16::$56 ] -Allocated (was zp ZP_WORD:72) zp ZP_WORD:18 [ calculate_matrix_16::$83 calculate_matrix_16::$38 calculate_matrix_16::$89 calculate_matrix_16::$58 ] -Allocated (was zp ZP_WORD:74) zp ZP_WORD:20 [ calculate_matrix_16::$84 calculate_matrix_16::$39 calculate_matrix_16::$90 calculate_matrix_16::$59 ] -Allocated (was zp ZP_WORD:76) zp ZP_WORD:22 [ calculate_matrix_16::$28 calculate_matrix_16::$29 calculate_matrix_16::$30 calculate_matrix_16::$31 calculate_matrix_16::$32 calculate_matrix_16::$48 calculate_matrix_16::$49 calculate_matrix_16::$50 calculate_matrix_16::$51 calculate_matrix_16::$52 ] +Uplifting [] best 23335 combination zp ZP_BYTE:2 [ sx#10 sx#3 ] +Attempting to uplift remaining variables inzp ZP_BYTE:24 [ calculate_matrix::$10 ] +Uplifting [calculate_matrix] best 23329 combination reg byte a [ calculate_matrix::$10 ] +Attempting to uplift remaining variables inzp ZP_BYTE:25 [ calculate_matrix::$11 ] +Uplifting [calculate_matrix] best 23323 combination reg byte a [ calculate_matrix::$11 ] +Attempting to uplift remaining variables inzp ZP_BYTE:26 [ calculate_matrix::$12 ] +Uplifting [calculate_matrix] best 23317 combination reg byte a [ calculate_matrix::$12 ] +Attempting to uplift remaining variables inzp ZP_BYTE:27 [ calculate_matrix::$13 ] +Uplifting [calculate_matrix] best 23311 combination reg byte a [ calculate_matrix::$13 ] +Attempting to uplift remaining variables inzp ZP_BYTE:28 [ calculate_matrix::$14 ] +Uplifting [calculate_matrix] best 23305 combination reg byte a [ calculate_matrix::$14 ] +Attempting to uplift remaining variables inzp ZP_BYTE:29 [ calculate_matrix::$15 ] +Uplifting [calculate_matrix] best 23299 combination reg byte a [ calculate_matrix::$15 ] +Attempting to uplift remaining variables inzp ZP_BYTE:30 [ calculate_matrix::$16 ] +Uplifting [calculate_matrix] best 23293 combination reg byte a [ calculate_matrix::$16 ] +Attempting to uplift remaining variables inzp ZP_BYTE:31 [ calculate_matrix::$17 ] +Uplifting [calculate_matrix] best 23287 combination reg byte a [ calculate_matrix::$17 ] +Attempting to uplift remaining variables inzp ZP_BYTE:32 [ calculate_matrix::$18 ] +Uplifting [calculate_matrix] best 23281 combination reg byte a [ calculate_matrix::$18 ] +Attempting to uplift remaining variables inzp ZP_BYTE:33 [ calculate_matrix::$19 ] +Uplifting [calculate_matrix] best 23275 combination reg byte a [ calculate_matrix::$19 ] +Attempting to uplift remaining variables inzp ZP_BYTE:34 [ calculate_matrix::$20 ] +Uplifting [calculate_matrix] best 23269 combination reg byte a [ calculate_matrix::$20 ] +Attempting to uplift remaining variables inzp ZP_BYTE:35 [ calculate_matrix::$21 ] +Uplifting [calculate_matrix] best 23263 combination reg byte a [ calculate_matrix::$21 ] +Attempting to uplift remaining variables inzp ZP_BYTE:36 [ calculate_matrix::$22 ] +Uplifting [calculate_matrix] best 23257 combination reg byte a [ calculate_matrix::$22 ] +Attempting to uplift remaining variables inzp ZP_BYTE:37 [ calculate_matrix::$23 ] +Uplifting [calculate_matrix] best 23251 combination reg byte a [ calculate_matrix::$23 ] +Attempting to uplift remaining variables inzp ZP_BYTE:38 [ calculate_matrix::$24 ] +Uplifting [calculate_matrix] best 23245 combination reg byte a [ calculate_matrix::$24 ] +Attempting to uplift remaining variables inzp ZP_BYTE:39 [ calculate_matrix::$25 ] +Uplifting [calculate_matrix] best 23239 combination reg byte a [ calculate_matrix::$25 ] +Attempting to uplift remaining variables inzp ZP_BYTE:40 [ calculate_matrix::$26 ] +Uplifting [calculate_matrix] best 23233 combination reg byte a [ calculate_matrix::$26 ] +Attempting to uplift remaining variables inzp ZP_BYTE:41 [ calculate_matrix::$27 ] +Uplifting [calculate_matrix] best 23227 combination reg byte a [ calculate_matrix::$27 ] +Attempting to uplift remaining variables inzp ZP_BYTE:42 [ calculate_matrix::$28 ] +Uplifting [calculate_matrix] best 23221 combination reg byte a [ calculate_matrix::$28 ] +Attempting to uplift remaining variables inzp ZP_BYTE:43 [ calculate_matrix::$29 ] +Uplifting [calculate_matrix] best 23215 combination reg byte a [ calculate_matrix::$29 ] +Attempting to uplift remaining variables inzp ZP_BYTE:44 [ calculate_matrix::$30 ] +Uplifting [calculate_matrix] best 23209 combination reg byte a [ calculate_matrix::$30 ] +Attempting to uplift remaining variables inzp ZP_BYTE:45 [ calculate_matrix::$31 ] +Uplifting [calculate_matrix] best 23203 combination reg byte a [ calculate_matrix::$31 ] +Attempting to uplift remaining variables inzp ZP_BYTE:46 [ calculate_matrix::$32 ] +Uplifting [calculate_matrix] best 23197 combination reg byte a [ calculate_matrix::$32 ] +Attempting to uplift remaining variables inzp ZP_BYTE:47 [ calculate_matrix::$33 ] +Uplifting [calculate_matrix] best 23191 combination reg byte a [ calculate_matrix::$33 ] +Attempting to uplift remaining variables inzp ZP_BYTE:48 [ calculate_matrix::$34 ] +Uplifting [calculate_matrix] best 23185 combination reg byte a [ calculate_matrix::$34 ] +Attempting to uplift remaining variables inzp ZP_BYTE:6 [ calculate_matrix::sx#0 ] +Uplifting [calculate_matrix] best 23147 combination reg byte x [ calculate_matrix::sx#0 ] +Attempting to uplift remaining variables inzp ZP_BYTE:7 [ calculate_matrix::sy#0 ] +Uplifting [calculate_matrix] best 23147 combination zp ZP_BYTE:7 [ calculate_matrix::sy#0 ] +Attempting to uplift remaining variables inzp ZP_BYTE:15 [ calculate_matrix::t2#0 ] +Uplifting [calculate_matrix] best 23144 combination reg byte y [ calculate_matrix::t2#0 ] +Attempting to uplift remaining variables inzp ZP_BYTE:14 [ calculate_matrix::t1#0 ] +Uplifting [calculate_matrix] best 23144 combination zp ZP_BYTE:14 [ calculate_matrix::t1#0 ] +Attempting to uplift remaining variables inzp ZP_BYTE:19 [ calculate_matrix::t6#0 ] +Uplifting [calculate_matrix] best 23144 combination zp ZP_BYTE:19 [ calculate_matrix::t6#0 ] +Attempting to uplift remaining variables inzp ZP_BYTE:17 [ calculate_matrix::t4#0 ] +Uplifting [calculate_matrix] best 23144 combination zp ZP_BYTE:17 [ calculate_matrix::t4#0 ] +Attempting to uplift remaining variables inzp ZP_BYTE:20 [ calculate_matrix::t7#0 ] +Uplifting [calculate_matrix] best 23144 combination zp ZP_BYTE:20 [ calculate_matrix::t7#0 ] +Attempting to uplift remaining variables inzp ZP_BYTE:21 [ calculate_matrix::t8#0 ] +Uplifting [calculate_matrix] best 23144 combination zp ZP_BYTE:21 [ calculate_matrix::t8#0 ] +Attempting to uplift remaining variables inzp ZP_BYTE:16 [ calculate_matrix::t3#0 ] +Uplifting [calculate_matrix] best 23144 combination zp ZP_BYTE:16 [ calculate_matrix::t3#0 ] +Attempting to uplift remaining variables inzp ZP_BYTE:18 [ calculate_matrix::t5#0 ] +Uplifting [calculate_matrix] best 23144 combination zp ZP_BYTE:18 [ calculate_matrix::t5#0 ] +Attempting to uplift remaining variables inzp ZP_BYTE:23 [ calculate_matrix::t10#0 ] +Uplifting [calculate_matrix] best 23144 combination zp ZP_BYTE:23 [ calculate_matrix::t10#0 ] +Attempting to uplift remaining variables inzp ZP_BYTE:22 [ calculate_matrix::t9#0 ] +Uplifting [calculate_matrix] best 23144 combination zp ZP_BYTE:22 [ calculate_matrix::t9#0 ] +Coalescing zero page register with common assignment [ zp ZP_BYTE:3 [ sy#10 sy#3 ] ] with [ zp ZP_BYTE:7 [ calculate_matrix::sy#0 ] ] - score: 1 +Coalescing zero page register [ zp ZP_BYTE:4 [ anim::i#2 anim::i#1 ] ] with [ zp ZP_BYTE:14 [ calculate_matrix::t1#0 ] ] +Coalescing zero page register [ zp ZP_BYTE:8 [ rotate_matrix::x#0 ] ] with [ zp ZP_BYTE:16 [ calculate_matrix::t3#0 ] ] +Allocated (was zp ZP_BYTE:8) zp ZP_BYTE:5 [ rotate_matrix::x#0 calculate_matrix::t3#0 ] +Allocated (was zp ZP_BYTE:17) zp ZP_BYTE:6 [ calculate_matrix::t4#0 ] +Allocated (was zp ZP_BYTE:18) zp ZP_BYTE:7 [ calculate_matrix::t5#0 ] +Allocated (was zp ZP_BYTE:19) zp ZP_BYTE:8 [ calculate_matrix::t6#0 ] +Allocated (was zp ZP_BYTE:20) zp ZP_BYTE:9 [ calculate_matrix::t7#0 ] +Allocated (was zp ZP_BYTE:21) zp ZP_BYTE:10 [ calculate_matrix::t8#0 ] +Allocated (was zp ZP_BYTE:22) zp ZP_BYTE:11 [ calculate_matrix::t9#0 ] +Allocated (was zp ZP_BYTE:23) zp ZP_BYTE:12 [ calculate_matrix::t10#0 ] ASSEMBLER BEFORE OPTIMIZATION //SEG0 Basic Upstart @@ -7503,9 +3209,9 @@ ASSEMBLER BEFORE OPTIMIZATION .label SPRITES_ENABLE = $d015 .label BORDERCOL = $d020 .label SPRITES_COLS = $d027 + .const GREEN = 5 .const LIGHT_BLUE = $e .const LIGHT_GREY = $f - .label print_screen = $400 .label xr = $f0 .label yr = $f1 .label zr = $f2 @@ -7514,7 +3220,7 @@ ASSEMBLER BEFORE OPTIMIZATION .label yp = $f5 .label psp1 = $f6 .label psp2 = $f8 - .label SCREEN = $400 + .const sz = 0 .label mulf_sqr1 = $2400 .label mulf_sqr2 = $2600 .label SPRITE = $3000 @@ -7525,17 +3231,15 @@ ASSEMBLER BEFORE OPTIMIZATION .label SINH_HI = $4200 .label SINQ_LO = $4400 .label SINQ_HI = $4600 - .label COSH_LO = SINH_LO+$40 - .label COSH_HI = SINH_HI+$40 - .label COSQ_HI = SINQ_HI+$40 + .label COSH = SINH+$40 + .label COSQ = SINQ+$40 .label sx = 2 .label sy = 3 - .label sz = 4 //SEG2 @begin bbegin: - jmp b29 -//SEG3 @29 -b29: + jmp b30 +//SEG3 @30 +b30: //SEG4 kickasm(location (const byte*) mulf_sqr1#0) {{ .for(var i=0;i<$200;i++) { .if(i<=159) { .byte round((i*i)/256) } .if(i>159 && i<=351 ) { .byte round(((i-256)*(i-256))/256) } .if(i>351) { .byte round(((512-i)*(512-i))/256) } } }} //SEG5 kickasm(location (const byte*) mulf_sqr2#0) {{ .for(var i=0;i<$200;i++) { .if(i<=159) { .byte round((-i-1)*(-i-1)/256) } .if(i>159 && i<=351 ) { .byte round(((255-i)*(255-i))/256) } .if(i>351) { .byte round(((i-511)*(i-511))/256) } } }} //SEG6 kickasm(location (const byte*) SPRITE#0) {{ .var pic = LoadPicture("balloon.png", List().add($000000, $ffffff)) .for (var y=0; y<21; y++) .for (var x=0;x<3; x++) .byte pic.getSinglecolorByte(x,y) }} @@ -7548,8 +3252,8 @@ b29: //SEG13 kickasm(location (const byte*) SINQ_HI#0) {{ { .var min = -$1000 .var max = $1000 .var ampl = max-min; .for(var i=0;i<$140;i++) { .var rad = i*2*PI/256; .byte >(min+(ampl/2)+(ampl/2)*sin(rad)) } } }} //SEG14 [11] call main jsr main -//SEG15 [12] phi from @29 to @end [phi:@29->@end] -bend_from_b29: +//SEG15 [12] phi from @30 to @end [phi:@30->@end] +bend_from_b30: jmp bend //SEG16 @end bend: @@ -7572,649 +3276,167 @@ main: { sta psp2 lda #>mulf_sqr2 sta psp2+1 - //SEG23 [17] call debug_print_init - //SEG24 [208] phi from main::@1 to debug_print_init [phi:main::@1->debug_print_init] - debug_print_init_from_b1: - jsr debug_print_init - //SEG25 [18] phi from main::@1 to main::@2 [phi:main::@1->main::@2] - b2_from_b1: - jmp b2 - //SEG26 main::@2 - b2: - //SEG27 [19] call anim - //SEG28 [21] phi from main::@2 to anim [phi:main::@2->anim] - anim_from_b2: + //SEG23 [17] call anim + //SEG24 [19] phi from main::@1 to anim [phi:main::@1->anim] + anim_from_b1: jsr anim jmp breturn - //SEG29 main::@return + //SEG25 main::@return breturn: - //SEG30 [20] return + //SEG26 [18] return rts } -//SEG31 anim +//SEG27 anim anim: { - .label i = 5 - //SEG32 [22] phi from anim to anim::@1 [phi:anim->anim::@1] + .label i = 4 + //SEG28 [20] phi from anim to anim::@1 [phi:anim->anim::@1] b1_from_anim: - //SEG33 [22] phi (signed byte) sz#10 = (byte/signed byte/word/signed word/dword/signed dword) 0 [phi:anim->anim::@1#0] -- vbsz1=vbuc1 - lda #0 - sta sz - //SEG34 [22] phi (signed byte) sy#10 = (byte/signed byte/word/signed word/dword/signed dword) 0 [phi:anim->anim::@1#1] -- vbsz1=vbuc1 + //SEG29 [20] phi (signed byte) sy#10 = (byte/signed byte/word/signed word/dword/signed dword) 0 [phi:anim->anim::@1#0] -- vbsz1=vbuc1 lda #0 sta sy - //SEG35 [22] phi (signed byte) sx#10 = (byte/signed byte/word/signed word/dword/signed dword) 0 [phi:anim->anim::@1#2] -- vbsz1=vbuc1 + //SEG30 [20] phi (signed byte) sx#10 = (byte/signed byte/word/signed word/dword/signed dword) 0 [phi:anim->anim::@1#1] -- vbsz1=vbuc1 lda #0 sta sx jmp b1 - //SEG36 anim::@1 + //SEG31 anim::@1 b1: jmp b4 - //SEG37 anim::@4 + //SEG32 anim::@4 b4: - //SEG38 [23] if(*((const byte*) RASTER#0)!=(byte/word/signed word/dword/signed dword) 255) goto anim::@4 -- _deref_pbuc1_neq_vbuc2_then_la1 + //SEG33 [21] if(*((const byte*) RASTER#0)!=(byte/word/signed word/dword/signed dword) 255) goto anim::@4 -- _deref_pbuc1_neq_vbuc2_then_la1 lda RASTER cmp #$ff bne b4 jmp b6 - //SEG39 anim::@6 + //SEG34 anim::@6 b6: - //SEG40 [24] *((const byte*) BORDERCOL#0) ← ++ *((const byte*) BORDERCOL#0) -- _deref_pbuc1=_inc__deref_pbuc1 + //SEG35 [22] *((const byte*) BORDERCOL#0) ← ++ *((const byte*) BORDERCOL#0) -- _deref_pbuc1=_inc__deref_pbuc1 inc BORDERCOL - //SEG41 [25] (signed byte) calculate_matrix_16::sx#0 ← (signed byte) sx#10 - // (signed byte) calculate_matrix_16::sx#0 = (signed byte) sx#10 // register copy zp ZP_BYTE:2 - //SEG42 [26] (signed byte) calculate_matrix_16::sy#0 ← (signed byte) sy#10 - // (signed byte) calculate_matrix_16::sy#0 = (signed byte) sy#10 // register copy zp ZP_BYTE:3 - //SEG43 [27] (signed byte) calculate_matrix_16::sz#0 ← (signed byte) sz#10 -- vbsxx=vbsz1 - ldx sz - //SEG44 [28] call calculate_matrix_16 - jsr calculate_matrix_16 - //SEG45 [29] phi from anim::@6 to anim::@15 [phi:anim::@6->anim::@15] + //SEG36 [23] (signed byte) calculate_matrix::sx#0 ← (signed byte) sx#10 -- vbsxx=vbsz1 + ldx sx + //SEG37 [24] (signed byte) calculate_matrix::sy#0 ← (signed byte) sy#10 + // (signed byte) calculate_matrix::sy#0 = (signed byte) sy#10 // register copy zp ZP_BYTE:3 + //SEG38 [25] call calculate_matrix + jsr calculate_matrix + //SEG39 [26] phi from anim::@6 to anim::@15 [phi:anim::@6->anim::@15] b15_from_b6: jmp b15 - //SEG46 anim::@15 + //SEG40 anim::@15 b15: - //SEG47 [30] call store_matrix + //SEG41 [27] call store_matrix jsr store_matrix - //SEG48 [31] phi from anim::@15 to anim::@7 [phi:anim::@15->anim::@7] + //SEG42 [28] phi from anim::@15 to anim::@7 [phi:anim::@15->anim::@7] b7_from_b15: - //SEG49 [31] phi (byte) anim::i#2 = (byte/signed byte/word/signed word/dword/signed dword) 0 [phi:anim::@15->anim::@7#0] -- vbuz1=vbuc1 + //SEG43 [28] phi (byte) anim::i#2 = (byte/signed byte/word/signed word/dword/signed dword) 0 [phi:anim::@15->anim::@7#0] -- vbuz1=vbuc1 lda #0 sta i jmp b7 - //SEG50 [31] phi from anim::@17 to anim::@7 [phi:anim::@17->anim::@7] + //SEG44 [28] phi from anim::@17 to anim::@7 [phi:anim::@17->anim::@7] b7_from_b17: - //SEG51 [31] phi (byte) anim::i#2 = (byte) anim::i#1 [phi:anim::@17->anim::@7#0] -- register_copy + //SEG45 [28] phi (byte) anim::i#2 = (byte) anim::i#1 [phi:anim::@17->anim::@7#0] -- register_copy jmp b7 - //SEG52 anim::@7 + //SEG46 anim::@7 b7: - //SEG53 [32] *((const byte*) BORDERCOL#0) ← ++ *((const byte*) BORDERCOL#0) -- _deref_pbuc1=_inc__deref_pbuc1 + //SEG47 [29] *((const byte*) BORDERCOL#0) ← ++ *((const byte*) BORDERCOL#0) -- _deref_pbuc1=_inc__deref_pbuc1 inc BORDERCOL - //SEG54 [33] (signed byte) rotate_matrix::x#0 ← *((const signed byte[8]) xs#0 + (byte) anim::i#2) -- vbsz1=pbsc1_derefidx_vbuz2 + //SEG48 [30] (signed byte) rotate_matrix::x#0 ← *((const signed byte[8]) xs#0 + (byte) anim::i#2) -- vbsz1=pbsc1_derefidx_vbuz2 ldy i lda xs,y sta rotate_matrix.x - //SEG55 [34] (signed byte) rotate_matrix::y#0 ← *((const signed byte[8]) ys#0 + (byte) anim::i#2) -- vbsyy=pbsc1_derefidx_vbuz1 + //SEG49 [31] (signed byte) rotate_matrix::y#0 ← *((const signed byte[8]) ys#0 + (byte) anim::i#2) -- vbsyy=pbsc1_derefidx_vbuz1 ldx i ldy ys,x - //SEG56 [35] (signed byte) rotate_matrix::z#0 ← *((const signed byte[8]) zs#0 + (byte) anim::i#2) -- vbsxx=pbsc1_derefidx_vbuz1 + //SEG50 [32] (signed byte) rotate_matrix::z#0 ← *((const signed byte[8]) zs#0 + (byte) anim::i#2) -- vbsxx=pbsc1_derefidx_vbuz1 ldx i lda zs,x tax - //SEG57 [36] call rotate_matrix + //SEG51 [33] call rotate_matrix jsr rotate_matrix jmp b17 - //SEG58 anim::@17 + //SEG52 anim::@17 b17: - //SEG59 [37] *((const signed byte[8]) xrs#0 + (byte) anim::i#2) ← *((const signed byte*) xr#0) -- pbsc1_derefidx_vbuz1=_deref_pbsc2 + //SEG53 [34] *((const signed byte[8]) xrs#0 + (byte) anim::i#2) ← *((const signed byte*) xr#0) -- pbsc1_derefidx_vbuz1=_deref_pbsc2 ldy i lda xr sta xrs,y - //SEG60 [38] *((const signed byte[8]) yrs#0 + (byte) anim::i#2) ← *((const signed byte*) yr#0) -- pbsc1_derefidx_vbuz1=_deref_pbsc2 + //SEG54 [35] *((const signed byte[8]) yrs#0 + (byte) anim::i#2) ← *((const signed byte*) yr#0) -- pbsc1_derefidx_vbuz1=_deref_pbsc2 ldy i lda yr sta yrs,y - //SEG61 [39] *((const signed byte[8]) zrs#0 + (byte) anim::i#2) ← *((const signed byte*) zr#0) -- pbsc1_derefidx_vbuz1=_deref_pbsc2 + //SEG55 [36] *((const signed byte[8]) zrs#0 + (byte) anim::i#2) ← *((const signed byte*) zr#0) -- pbsc1_derefidx_vbuz1=_deref_pbsc2 ldy i lda zr sta zrs,y - //SEG62 [40] *((const signed byte[8]) pps#0 + (byte) anim::i#2) ← *((const signed byte*) pp#0) -- pbsc1_derefidx_vbuz1=_deref_pbsc2 + //SEG56 [37] *((const signed byte[8]) pps#0 + (byte) anim::i#2) ← *((const signed byte*) pp#0) -- pbsc1_derefidx_vbuz1=_deref_pbsc2 ldy i lda pp sta pps,y - //SEG63 [41] *((const signed byte[8]) xps#0 + (byte) anim::i#2) ← *((const signed byte*) xp#0) -- pbsc1_derefidx_vbuz1=_deref_pbsc2 + //SEG57 [38] *((const signed byte[8]) xps#0 + (byte) anim::i#2) ← *((const signed byte*) xp#0) -- pbsc1_derefidx_vbuz1=_deref_pbsc2 ldy i lda xp sta xps,y - //SEG64 [42] *((const signed byte[8]) yps#0 + (byte) anim::i#2) ← *((const signed byte*) yp#0) -- pbsc1_derefidx_vbuz1=_deref_pbsc2 + //SEG58 [39] *((const signed byte[8]) yps#0 + (byte) anim::i#2) ← *((const signed byte*) yp#0) -- pbsc1_derefidx_vbuz1=_deref_pbsc2 ldy i lda yp sta yps,y - //SEG65 [43] (byte) anim::i2#0 ← (byte) anim::i#2 << (byte/signed byte/word/signed word/dword/signed dword) 1 -- vbuxx=vbuz1_rol_1 + //SEG59 [40] (byte) anim::i2#0 ← (byte) anim::i#2 << (byte/signed byte/word/signed word/dword/signed dword) 1 -- vbuxx=vbuz1_rol_1 lda i asl tax - //SEG66 [44] (byte/word/signed word/dword/signed dword~) anim::$6 ← (byte/word/signed word/dword/signed dword) 128 + (byte)*((const signed byte*) xr#0) -- vbuaa=vbuc1_plus__deref_pbuc2 + //SEG60 [41] (byte/word/signed word/dword/signed dword~) anim::$6 ← (byte/word/signed word/dword/signed dword) 128 + (byte)*((const signed byte*) xp#0) -- vbuaa=vbuc1_plus__deref_pbuc2 lda #$80 clc - adc xr - //SEG67 [45] *((const byte*) SPRITES_XPOS#0 + (byte) anim::i2#0) ← (byte/word/signed word/dword/signed dword~) anim::$6 -- pbuc1_derefidx_vbuxx=vbuaa + adc xp + //SEG61 [42] *((const byte*) SPRITES_XPOS#0 + (byte) anim::i2#0) ← (byte/word/signed word/dword/signed dword~) anim::$6 -- pbuc1_derefidx_vbuxx=vbuaa sta SPRITES_XPOS,x - //SEG68 [46] (byte/word/signed word/dword/signed dword~) anim::$8 ← (byte/word/signed word/dword/signed dword) 128 + (byte)*((const signed byte*) yr#0) -- vbuaa=vbuc1_plus__deref_pbuc2 + //SEG62 [43] (byte/word/signed word/dword/signed dword~) anim::$8 ← (byte/word/signed word/dword/signed dword) 128 + (byte)*((const signed byte*) yp#0) -- vbuaa=vbuc1_plus__deref_pbuc2 lda #$80 clc - adc yr - //SEG69 [47] *((const byte*) SPRITES_YPOS#0 + (byte) anim::i2#0) ← (byte/word/signed word/dword/signed dword~) anim::$8 -- pbuc1_derefidx_vbuxx=vbuaa + adc yp + //SEG63 [44] *((const byte*) SPRITES_YPOS#0 + (byte) anim::i2#0) ← (byte/word/signed word/dword/signed dword~) anim::$8 -- pbuc1_derefidx_vbuxx=vbuaa sta SPRITES_YPOS,x - //SEG70 [48] (byte) anim::i#1 ← ++ (byte) anim::i#2 -- vbuz1=_inc_vbuz1 + //SEG64 [45] (byte) anim::i#1 ← ++ (byte) anim::i#2 -- vbuz1=_inc_vbuz1 inc i - //SEG71 [49] if((byte) anim::i#1!=(byte/signed byte/word/signed word/dword/signed dword) 8) goto anim::@7 -- vbuz1_neq_vbuc1_then_la1 + //SEG65 [46] if((byte) anim::i#1!=(byte/signed byte/word/signed word/dword/signed dword) 8) goto anim::@7 -- vbuz1_neq_vbuc1_then_la1 lda i cmp #8 bne b7_from_b17 jmp b13 - //SEG72 anim::@13 + //SEG66 anim::@13 b13: - //SEG73 [50] *((const byte*) BORDERCOL#0) ← (const byte) LIGHT_GREY#0 -- _deref_pbuc1=vbuc2 + //SEG67 [47] *((const byte*) BORDERCOL#0) ← (const byte) LIGHT_GREY#0 -- _deref_pbuc1=vbuc2 lda #LIGHT_GREY sta BORDERCOL - //SEG74 [51] call debug_print - jsr debug_print - jmp b18 - //SEG75 anim::@18 - b18: - //SEG76 [52] *((const byte*) BORDERCOL#0) ← (const byte) LIGHT_BLUE#0 -- _deref_pbuc1=vbuc2 + //SEG68 [48] *((const byte*) BORDERCOL#0) ← (const byte) LIGHT_BLUE#0 -- _deref_pbuc1=vbuc2 lda #LIGHT_BLUE sta BORDERCOL - //SEG77 [53] (signed byte) sx#3 ← (signed byte) sx#10 - (byte/signed byte/word/signed word/dword/signed dword) 1 -- vbsz1=vbsz1_minus_1 - dec sx - //SEG78 [54] (signed byte) sy#3 ← (signed byte) sy#10 + (byte/signed byte/word/signed word/dword/signed dword) 1 -- vbsz1=vbsz1_plus_1 - inc sy - //SEG79 [55] (signed byte) sz#3 ← (signed byte) sz#10 - (byte/signed byte/word/signed word/dword/signed dword) 1 -- vbsz1=vbsz1_minus_1 - dec sz - //SEG80 [22] phi from anim::@18 to anim::@1 [phi:anim::@18->anim::@1] - b1_from_b18: - //SEG81 [22] phi (signed byte) sz#10 = (signed byte) sz#3 [phi:anim::@18->anim::@1#0] -- register_copy - //SEG82 [22] phi (signed byte) sy#10 = (signed byte) sy#3 [phi:anim::@18->anim::@1#1] -- register_copy - //SEG83 [22] phi (signed byte) sx#10 = (signed byte) sx#3 [phi:anim::@18->anim::@1#2] -- register_copy - jmp b1 -} -//SEG84 debug_print -debug_print: { - .label at_line = SCREEN+$13*$28 - .label c = 5 - .label i = 6 - //SEG85 [56] (signed byte) print_sbyte_at::b#4 ← (signed byte) sx#10 -- vbsxx=vbsz1 - ldx sx - //SEG86 [57] call print_sbyte_at - //SEG87 [103] phi from debug_print to print_sbyte_at [phi:debug_print->print_sbyte_at] - print_sbyte_at_from_debug_print: - //SEG88 [103] phi (byte*) print_sbyte_at::at#21 = (const byte*) SCREEN#0+(byte/signed byte/word/signed word/dword/signed dword) 37 [phi:debug_print->print_sbyte_at#0] -- pbuz1=pbuc1 - lda #SCREEN+$25 - sta print_sbyte_at.at+1 - //SEG89 [103] phi (signed byte) print_sbyte_at::b#22 = (signed byte) print_sbyte_at::b#4 [phi:debug_print->print_sbyte_at#1] -- register_copy - jsr print_sbyte_at - jmp b3 - //SEG90 debug_print::@3 - b3: - //SEG91 [58] (signed byte) print_sbyte_at::b#5 ← (signed byte) sy#10 -- vbsxx=vbsz1 - ldx sy - //SEG92 [59] call print_sbyte_at - //SEG93 [103] phi from debug_print::@3 to print_sbyte_at [phi:debug_print::@3->print_sbyte_at] - print_sbyte_at_from_b3: - //SEG94 [103] phi (byte*) print_sbyte_at::at#21 = (const byte*) SCREEN#0+(byte/signed byte/word/signed word/dword/signed dword) 40*(byte/signed byte/word/signed word/dword/signed dword) 1+(byte/signed byte/word/signed word/dword/signed dword) 37 [phi:debug_print::@3->print_sbyte_at#0] -- pbuz1=pbuc1 - lda #SCREEN+$28*1+$25 - sta print_sbyte_at.at+1 - //SEG95 [103] phi (signed byte) print_sbyte_at::b#22 = (signed byte) print_sbyte_at::b#5 [phi:debug_print::@3->print_sbyte_at#1] -- register_copy - jsr print_sbyte_at - jmp b4 - //SEG96 debug_print::@4 - b4: - //SEG97 [60] (signed byte) print_sbyte_at::b#6 ← (signed byte) sz#10 -- vbsxx=vbsz1 - ldx sz - //SEG98 [61] call print_sbyte_at - //SEG99 [103] phi from debug_print::@4 to print_sbyte_at [phi:debug_print::@4->print_sbyte_at] - print_sbyte_at_from_b4: - //SEG100 [103] phi (byte*) print_sbyte_at::at#21 = (const byte*) SCREEN#0+(byte/signed byte/word/signed word/dword/signed dword) 40*(byte/signed byte/word/signed word/dword/signed dword) 2+(byte/signed byte/word/signed word/dword/signed dword) 37 [phi:debug_print::@4->print_sbyte_at#0] -- pbuz1=pbuc1 - lda #SCREEN+$28*2+$25 - sta print_sbyte_at.at+1 - //SEG101 [103] phi (signed byte) print_sbyte_at::b#22 = (signed byte) print_sbyte_at::b#6 [phi:debug_print::@4->print_sbyte_at#1] -- register_copy - jsr print_sbyte_at - jmp b5 - //SEG102 debug_print::@5 - b5: - //SEG103 [62] (signed byte) print_sbyte_at::b#7 ← *((const signed byte[9]) rotation_matrix#0) -- vbsxx=_deref_pbsc1 - ldx rotation_matrix - //SEG104 [63] call print_sbyte_at - //SEG105 [103] phi from debug_print::@5 to print_sbyte_at [phi:debug_print::@5->print_sbyte_at] - print_sbyte_at_from_b5: - //SEG106 [103] phi (byte*) print_sbyte_at::at#21 = (const byte*) SCREEN#0+(byte/signed byte/word/signed word/dword/signed dword) 40*(byte/signed byte/word/signed word/dword/signed dword) 4+(byte/signed byte/word/signed word/dword/signed dword) 29 [phi:debug_print::@5->print_sbyte_at#0] -- pbuz1=pbuc1 - lda #SCREEN+$28*4+$1d - sta print_sbyte_at.at+1 - //SEG107 [103] phi (signed byte) print_sbyte_at::b#22 = (signed byte) print_sbyte_at::b#7 [phi:debug_print::@5->print_sbyte_at#1] -- register_copy - jsr print_sbyte_at - jmp b6 - //SEG108 debug_print::@6 - b6: - //SEG109 [64] (signed byte) print_sbyte_at::b#8 ← *((const signed byte[9]) rotation_matrix#0+(byte/signed byte/word/signed word/dword/signed dword) 1) -- vbsxx=_deref_pbsc1 - ldx rotation_matrix+1 - //SEG110 [65] call print_sbyte_at - //SEG111 [103] phi from debug_print::@6 to print_sbyte_at [phi:debug_print::@6->print_sbyte_at] - print_sbyte_at_from_b6: - //SEG112 [103] phi (byte*) print_sbyte_at::at#21 = (const byte*) SCREEN#0+(byte/signed byte/word/signed word/dword/signed dword) 40*(byte/signed byte/word/signed word/dword/signed dword) 4+(byte/signed byte/word/signed word/dword/signed dword) 33 [phi:debug_print::@6->print_sbyte_at#0] -- pbuz1=pbuc1 - lda #SCREEN+$28*4+$21 - sta print_sbyte_at.at+1 - //SEG113 [103] phi (signed byte) print_sbyte_at::b#22 = (signed byte) print_sbyte_at::b#8 [phi:debug_print::@6->print_sbyte_at#1] -- register_copy - jsr print_sbyte_at - jmp b7 - //SEG114 debug_print::@7 - b7: - //SEG115 [66] (signed byte) print_sbyte_at::b#9 ← *((const signed byte[9]) rotation_matrix#0+(byte/signed byte/word/signed word/dword/signed dword) 2) -- vbsxx=_deref_pbsc1 - ldx rotation_matrix+2 - //SEG116 [67] call print_sbyte_at - //SEG117 [103] phi from debug_print::@7 to print_sbyte_at [phi:debug_print::@7->print_sbyte_at] - print_sbyte_at_from_b7: - //SEG118 [103] phi (byte*) print_sbyte_at::at#21 = (const byte*) SCREEN#0+(byte/signed byte/word/signed word/dword/signed dword) 40*(byte/signed byte/word/signed word/dword/signed dword) 4+(byte/signed byte/word/signed word/dword/signed dword) 37 [phi:debug_print::@7->print_sbyte_at#0] -- pbuz1=pbuc1 - lda #SCREEN+$28*4+$25 - sta print_sbyte_at.at+1 - //SEG119 [103] phi (signed byte) print_sbyte_at::b#22 = (signed byte) print_sbyte_at::b#9 [phi:debug_print::@7->print_sbyte_at#1] -- register_copy - jsr print_sbyte_at - jmp b8 - //SEG120 debug_print::@8 - b8: - //SEG121 [68] (signed byte) print_sbyte_at::b#10 ← *((const signed byte[9]) rotation_matrix#0+(byte/signed byte/word/signed word/dword/signed dword) 3) -- vbsxx=_deref_pbsc1 - ldx rotation_matrix+3 - //SEG122 [69] call print_sbyte_at - //SEG123 [103] phi from debug_print::@8 to print_sbyte_at [phi:debug_print::@8->print_sbyte_at] - print_sbyte_at_from_b8: - //SEG124 [103] phi (byte*) print_sbyte_at::at#21 = (const byte*) SCREEN#0+(byte/signed byte/word/signed word/dword/signed dword) 40*(byte/signed byte/word/signed word/dword/signed dword) 5+(byte/signed byte/word/signed word/dword/signed dword) 29 [phi:debug_print::@8->print_sbyte_at#0] -- pbuz1=pbuc1 - lda #SCREEN+$28*5+$1d - sta print_sbyte_at.at+1 - //SEG125 [103] phi (signed byte) print_sbyte_at::b#22 = (signed byte) print_sbyte_at::b#10 [phi:debug_print::@8->print_sbyte_at#1] -- register_copy - jsr print_sbyte_at - jmp b9 - //SEG126 debug_print::@9 - b9: - //SEG127 [70] (signed byte) print_sbyte_at::b#11 ← *((const signed byte[9]) rotation_matrix#0+(byte/signed byte/word/signed word/dword/signed dword) 4) -- vbsxx=_deref_pbsc1 - ldx rotation_matrix+4 - //SEG128 [71] call print_sbyte_at - //SEG129 [103] phi from debug_print::@9 to print_sbyte_at [phi:debug_print::@9->print_sbyte_at] - print_sbyte_at_from_b9: - //SEG130 [103] phi (byte*) print_sbyte_at::at#21 = (const byte*) SCREEN#0+(byte/signed byte/word/signed word/dword/signed dword) 40*(byte/signed byte/word/signed word/dword/signed dword) 5+(byte/signed byte/word/signed word/dword/signed dword) 33 [phi:debug_print::@9->print_sbyte_at#0] -- pbuz1=pbuc1 - lda #SCREEN+$28*5+$21 - sta print_sbyte_at.at+1 - //SEG131 [103] phi (signed byte) print_sbyte_at::b#22 = (signed byte) print_sbyte_at::b#11 [phi:debug_print::@9->print_sbyte_at#1] -- register_copy - jsr print_sbyte_at - jmp b10 - //SEG132 debug_print::@10 - b10: - //SEG133 [72] (signed byte) print_sbyte_at::b#12 ← *((const signed byte[9]) rotation_matrix#0+(byte/signed byte/word/signed word/dword/signed dword) 5) -- vbsxx=_deref_pbsc1 - ldx rotation_matrix+5 - //SEG134 [73] call print_sbyte_at - //SEG135 [103] phi from debug_print::@10 to print_sbyte_at [phi:debug_print::@10->print_sbyte_at] - print_sbyte_at_from_b10: - //SEG136 [103] phi (byte*) print_sbyte_at::at#21 = (const byte*) SCREEN#0+(byte/signed byte/word/signed word/dword/signed dword) 40*(byte/signed byte/word/signed word/dword/signed dword) 5+(byte/signed byte/word/signed word/dword/signed dword) 37 [phi:debug_print::@10->print_sbyte_at#0] -- pbuz1=pbuc1 - lda #SCREEN+$28*5+$25 - sta print_sbyte_at.at+1 - //SEG137 [103] phi (signed byte) print_sbyte_at::b#22 = (signed byte) print_sbyte_at::b#12 [phi:debug_print::@10->print_sbyte_at#1] -- register_copy - jsr print_sbyte_at - jmp b11 - //SEG138 debug_print::@11 - b11: - //SEG139 [74] (signed byte) print_sbyte_at::b#13 ← *((const signed byte[9]) rotation_matrix#0+(byte/signed byte/word/signed word/dword/signed dword) 6) -- vbsxx=_deref_pbsc1 - ldx rotation_matrix+6 - //SEG140 [75] call print_sbyte_at - //SEG141 [103] phi from debug_print::@11 to print_sbyte_at [phi:debug_print::@11->print_sbyte_at] - print_sbyte_at_from_b11: - //SEG142 [103] phi (byte*) print_sbyte_at::at#21 = (const byte*) SCREEN#0+(byte/signed byte/word/signed word/dword/signed dword) 40*(byte/signed byte/word/signed word/dword/signed dword) 6+(byte/signed byte/word/signed word/dword/signed dword) 29 [phi:debug_print::@11->print_sbyte_at#0] -- pbuz1=pbuc1 - lda #SCREEN+$28*6+$1d - sta print_sbyte_at.at+1 - //SEG143 [103] phi (signed byte) print_sbyte_at::b#22 = (signed byte) print_sbyte_at::b#13 [phi:debug_print::@11->print_sbyte_at#1] -- register_copy - jsr print_sbyte_at - jmp b12 - //SEG144 debug_print::@12 - b12: - //SEG145 [76] (signed byte) print_sbyte_at::b#14 ← *((const signed byte[9]) rotation_matrix#0+(byte/signed byte/word/signed word/dword/signed dword) 7) -- vbsxx=_deref_pbsc1 - ldx rotation_matrix+7 - //SEG146 [77] call print_sbyte_at - //SEG147 [103] phi from debug_print::@12 to print_sbyte_at [phi:debug_print::@12->print_sbyte_at] - print_sbyte_at_from_b12: - //SEG148 [103] phi (byte*) print_sbyte_at::at#21 = (const byte*) SCREEN#0+(byte/signed byte/word/signed word/dword/signed dword) 40*(byte/signed byte/word/signed word/dword/signed dword) 6+(byte/signed byte/word/signed word/dword/signed dword) 33 [phi:debug_print::@12->print_sbyte_at#0] -- pbuz1=pbuc1 - lda #SCREEN+$28*6+$21 - sta print_sbyte_at.at+1 - //SEG149 [103] phi (signed byte) print_sbyte_at::b#22 = (signed byte) print_sbyte_at::b#14 [phi:debug_print::@12->print_sbyte_at#1] -- register_copy - jsr print_sbyte_at - jmp b13 - //SEG150 debug_print::@13 - b13: - //SEG151 [78] (signed byte) print_sbyte_at::b#15 ← *((const signed byte[9]) rotation_matrix#0+(byte/signed byte/word/signed word/dword/signed dword) 8) -- vbsxx=_deref_pbsc1 - ldx rotation_matrix+8 - //SEG152 [79] call print_sbyte_at - //SEG153 [103] phi from debug_print::@13 to print_sbyte_at [phi:debug_print::@13->print_sbyte_at] - print_sbyte_at_from_b13: - //SEG154 [103] phi (byte*) print_sbyte_at::at#21 = (const byte*) SCREEN#0+(byte/signed byte/word/signed word/dword/signed dword) 40*(byte/signed byte/word/signed word/dword/signed dword) 6+(byte/signed byte/word/signed word/dword/signed dword) 37 [phi:debug_print::@13->print_sbyte_at#0] -- pbuz1=pbuc1 - lda #SCREEN+$28*6+$25 - sta print_sbyte_at.at+1 - //SEG155 [103] phi (signed byte) print_sbyte_at::b#22 = (signed byte) print_sbyte_at::b#15 [phi:debug_print::@13->print_sbyte_at#1] -- register_copy - jsr print_sbyte_at - //SEG156 [80] phi from debug_print::@13 to debug_print::@1 [phi:debug_print::@13->debug_print::@1] + //SEG69 [49] (signed byte) sx#3 ← (signed byte) sx#10 + (byte/signed byte/word/signed word/dword/signed dword) 2 -- vbsz1=vbsz1_plus_2 + inc sx + inc sx + //SEG70 [50] (signed byte) sy#3 ← (signed byte) sy#10 - (byte/signed byte/word/signed word/dword/signed dword) 3 -- vbsz1=vbsz1_minus_vbuc1 + lda sy + sec + sbc #3 + sta sy + //SEG71 [20] phi from anim::@13 to anim::@1 [phi:anim::@13->anim::@1] b1_from_b13: - //SEG157 [80] phi (byte) debug_print::i#2 = (byte/signed byte/word/signed word/dword/signed dword) 0 [phi:debug_print::@13->debug_print::@1#0] -- vbuz1=vbuc1 - lda #0 - sta i - //SEG158 [80] phi (byte) debug_print::c#2 = (byte/signed byte/word/signed word/dword/signed dword) 4 [phi:debug_print::@13->debug_print::@1#1] -- vbuz1=vbuc1 - lda #4 - sta c + //SEG72 [20] phi (signed byte) sy#10 = (signed byte) sy#3 [phi:anim::@13->anim::@1#0] -- register_copy + //SEG73 [20] phi (signed byte) sx#10 = (signed byte) sx#3 [phi:anim::@13->anim::@1#1] -- register_copy jmp b1 - //SEG159 [80] phi from debug_print::@20 to debug_print::@1 [phi:debug_print::@20->debug_print::@1] - b1_from_b20: - //SEG160 [80] phi (byte) debug_print::i#2 = (byte) debug_print::i#1 [phi:debug_print::@20->debug_print::@1#0] -- register_copy - //SEG161 [80] phi (byte) debug_print::c#2 = (byte) debug_print::c#1 [phi:debug_print::@20->debug_print::@1#1] -- register_copy - jmp b1 - //SEG162 debug_print::@1 - b1: - //SEG163 [81] (byte*) print_sbyte_at::at#15 ← (const byte*) debug_print::at_line#0 + (byte) debug_print::c#2 -- pbuz1=pbuc1_plus_vbuz2 - lda c - clc - adc #at_line - adc #0 - sta print_sbyte_at.at+1 - //SEG164 [82] (signed byte) print_sbyte_at::b#16 ← *((const signed byte[8]) xrs#0 + (byte) debug_print::i#2) -- vbsxx=pbsc1_derefidx_vbuz1 - ldx i - lda xrs,x - tax - //SEG165 [83] call print_sbyte_at - //SEG166 [103] phi from debug_print::@1 to print_sbyte_at [phi:debug_print::@1->print_sbyte_at] - print_sbyte_at_from_b1: - //SEG167 [103] phi (byte*) print_sbyte_at::at#21 = (byte*) print_sbyte_at::at#15 [phi:debug_print::@1->print_sbyte_at#0] -- register_copy - //SEG168 [103] phi (signed byte) print_sbyte_at::b#22 = (signed byte) print_sbyte_at::b#16 [phi:debug_print::@1->print_sbyte_at#1] -- register_copy - jsr print_sbyte_at - jmp b15 - //SEG169 debug_print::@15 - b15: - //SEG170 [84] (byte*) print_sbyte_at::at#16 ← (const byte*) debug_print::at_line#0+(byte/signed byte/word/signed word/dword/signed dword) 40*(byte/signed byte/word/signed word/dword/signed dword) 1 + (byte) debug_print::c#2 -- pbuz1=pbuc1_plus_vbuz2 - lda c - clc - adc #at_line+$28*1 - adc #0 - sta print_sbyte_at.at+1 - //SEG171 [85] (signed byte) print_sbyte_at::b#17 ← *((const signed byte[8]) yrs#0 + (byte) debug_print::i#2) -- vbsxx=pbsc1_derefidx_vbuz1 - ldx i - lda yrs,x - tax - //SEG172 [86] call print_sbyte_at - //SEG173 [103] phi from debug_print::@15 to print_sbyte_at [phi:debug_print::@15->print_sbyte_at] - print_sbyte_at_from_b15: - //SEG174 [103] phi (byte*) print_sbyte_at::at#21 = (byte*) print_sbyte_at::at#16 [phi:debug_print::@15->print_sbyte_at#0] -- register_copy - //SEG175 [103] phi (signed byte) print_sbyte_at::b#22 = (signed byte) print_sbyte_at::b#17 [phi:debug_print::@15->print_sbyte_at#1] -- register_copy - jsr print_sbyte_at - jmp b16 - //SEG176 debug_print::@16 - b16: - //SEG177 [87] (byte*) print_sbyte_at::at#17 ← (const byte*) debug_print::at_line#0+(byte/signed byte/word/signed word/dword/signed dword) 40*(byte/signed byte/word/signed word/dword/signed dword) 2 + (byte) debug_print::c#2 -- pbuz1=pbuc1_plus_vbuz2 - lda c - clc - adc #at_line+$28*2 - adc #0 - sta print_sbyte_at.at+1 - //SEG178 [88] (signed byte) print_sbyte_at::b#18 ← *((const signed byte[8]) zrs#0 + (byte) debug_print::i#2) -- vbsxx=pbsc1_derefidx_vbuz1 - ldx i - lda zrs,x - tax - //SEG179 [89] call print_sbyte_at - //SEG180 [103] phi from debug_print::@16 to print_sbyte_at [phi:debug_print::@16->print_sbyte_at] - print_sbyte_at_from_b16: - //SEG181 [103] phi (byte*) print_sbyte_at::at#21 = (byte*) print_sbyte_at::at#17 [phi:debug_print::@16->print_sbyte_at#0] -- register_copy - //SEG182 [103] phi (signed byte) print_sbyte_at::b#22 = (signed byte) print_sbyte_at::b#18 [phi:debug_print::@16->print_sbyte_at#1] -- register_copy - jsr print_sbyte_at - jmp b17 - //SEG183 debug_print::@17 - b17: - //SEG184 [90] (byte*) print_sbyte_at::at#18 ← (const byte*) debug_print::at_line#0+(byte/signed byte/word/signed word/dword/signed dword) 40*(byte/signed byte/word/signed word/dword/signed dword) 3 + (byte) debug_print::c#2 -- pbuz1=pbuc1_plus_vbuz2 - lda c - clc - adc #at_line+$28*3 - adc #0 - sta print_sbyte_at.at+1 - //SEG185 [91] (signed byte) print_sbyte_at::b#19 ← *((const signed byte[8]) pps#0 + (byte) debug_print::i#2) -- vbsxx=pbsc1_derefidx_vbuz1 - ldx i - lda pps,x - tax - //SEG186 [92] call print_sbyte_at - //SEG187 [103] phi from debug_print::@17 to print_sbyte_at [phi:debug_print::@17->print_sbyte_at] - print_sbyte_at_from_b17: - //SEG188 [103] phi (byte*) print_sbyte_at::at#21 = (byte*) print_sbyte_at::at#18 [phi:debug_print::@17->print_sbyte_at#0] -- register_copy - //SEG189 [103] phi (signed byte) print_sbyte_at::b#22 = (signed byte) print_sbyte_at::b#19 [phi:debug_print::@17->print_sbyte_at#1] -- register_copy - jsr print_sbyte_at - jmp b18 - //SEG190 debug_print::@18 - b18: - //SEG191 [93] (byte*) print_sbyte_at::at#19 ← (const byte*) debug_print::at_line#0+(byte/signed byte/word/signed word/dword/signed dword) 40*(byte/signed byte/word/signed word/dword/signed dword) 4 + (byte) debug_print::c#2 -- pbuz1=pbuc1_plus_vbuz2 - lda c - clc - adc #at_line+$28*4 - adc #0 - sta print_sbyte_at.at+1 - //SEG192 [94] (signed byte) print_sbyte_at::b#20 ← *((const signed byte[8]) xps#0 + (byte) debug_print::i#2) -- vbsxx=pbsc1_derefidx_vbuz1 - ldx i - lda xps,x - tax - //SEG193 [95] call print_sbyte_at - //SEG194 [103] phi from debug_print::@18 to print_sbyte_at [phi:debug_print::@18->print_sbyte_at] - print_sbyte_at_from_b18: - //SEG195 [103] phi (byte*) print_sbyte_at::at#21 = (byte*) print_sbyte_at::at#19 [phi:debug_print::@18->print_sbyte_at#0] -- register_copy - //SEG196 [103] phi (signed byte) print_sbyte_at::b#22 = (signed byte) print_sbyte_at::b#20 [phi:debug_print::@18->print_sbyte_at#1] -- register_copy - jsr print_sbyte_at - jmp b19 - //SEG197 debug_print::@19 - b19: - //SEG198 [96] (byte*) print_sbyte_at::at#20 ← (const byte*) debug_print::at_line#0+(byte/signed byte/word/signed word/dword/signed dword) 40*(byte/signed byte/word/signed word/dword/signed dword) 5 + (byte) debug_print::c#2 -- pbuz1=pbuc1_plus_vbuz2 - lda c - clc - adc #at_line+$28*5 - adc #0 - sta print_sbyte_at.at+1 - //SEG199 [97] (signed byte) print_sbyte_at::b#21 ← *((const signed byte[8]) yps#0 + (byte) debug_print::i#2) -- vbsxx=pbsc1_derefidx_vbuz1 - ldx i - lda yps,x - tax - //SEG200 [98] call print_sbyte_at - //SEG201 [103] phi from debug_print::@19 to print_sbyte_at [phi:debug_print::@19->print_sbyte_at] - print_sbyte_at_from_b19: - //SEG202 [103] phi (byte*) print_sbyte_at::at#21 = (byte*) print_sbyte_at::at#20 [phi:debug_print::@19->print_sbyte_at#0] -- register_copy - //SEG203 [103] phi (signed byte) print_sbyte_at::b#22 = (signed byte) print_sbyte_at::b#21 [phi:debug_print::@19->print_sbyte_at#1] -- register_copy - jsr print_sbyte_at - jmp b20 - //SEG204 debug_print::@20 - b20: - //SEG205 [99] (byte) debug_print::c#1 ← (byte) debug_print::c#2 + (byte/signed byte/word/signed word/dword/signed dword) 4 -- vbuz1=vbuz1_plus_vbuc1 - lda #4 - clc - adc c - sta c - //SEG206 [100] (byte) debug_print::i#1 ← ++ (byte) debug_print::i#2 -- vbuz1=_inc_vbuz1 - inc i - //SEG207 [101] if((byte) debug_print::i#1!=(byte/signed byte/word/signed word/dword/signed dword) 8) goto debug_print::@1 -- vbuz1_neq_vbuc1_then_la1 - lda i - cmp #8 - bne b1_from_b20 - jmp breturn - //SEG208 debug_print::@return - breturn: - //SEG209 [102] return - rts } -//SEG210 print_sbyte_at -print_sbyte_at: { - .label at = 7 - //SEG211 [104] if((signed byte) print_sbyte_at::b#22<(byte/signed byte/word/signed word/dword/signed dword) 0) goto print_sbyte_at::@1 -- vbsxx_lt_0_then_la1 - cpx #0 - bmi b1 - jmp b3 - //SEG212 print_sbyte_at::@3 - b3: - //SEG213 [105] (byte*) print_char_at::at#1 ← (byte*) print_sbyte_at::at#21 - // (byte*) print_char_at::at#1 = (byte*) print_sbyte_at::at#21 // register copy zp ZP_WORD:7 - //SEG214 [106] call print_char_at - //SEG215 [114] phi from print_sbyte_at::@3 to print_char_at [phi:print_sbyte_at::@3->print_char_at] - print_char_at_from_b3: - //SEG216 [114] phi (byte*) print_char_at::at#4 = (byte*) print_char_at::at#1 [phi:print_sbyte_at::@3->print_char_at#0] -- register_copy - //SEG217 [114] phi (byte) print_char_at::ch#4 = (byte) ' ' [phi:print_sbyte_at::@3->print_char_at#1] -- vbuz1=vbuc1 - lda #' ' - sta print_char_at.ch - jsr print_char_at - //SEG218 [107] phi from print_sbyte_at::@3 print_sbyte_at::@5 to print_sbyte_at::@2 [phi:print_sbyte_at::@3/print_sbyte_at::@5->print_sbyte_at::@2] - b2_from_b3: - b2_from_b5: - //SEG219 [107] phi (signed byte) print_sbyte_at::b#24 = (signed byte) print_sbyte_at::b#22 [phi:print_sbyte_at::@3/print_sbyte_at::@5->print_sbyte_at::@2#0] -- register_copy - jmp b2 - //SEG220 print_sbyte_at::@2 - b2: - //SEG221 [108] (byte*) print_byte_at::at#0 ← (byte*) print_sbyte_at::at#21 + (byte/signed byte/word/signed word/dword/signed dword) 1 -- pbuz1=pbuz1_plus_1 - inc print_byte_at.at - bne !+ - inc print_byte_at.at+1 - !: - //SEG222 [109] call print_byte_at - jsr print_byte_at - jmp breturn - //SEG223 print_sbyte_at::@return - breturn: - //SEG224 [110] return - rts - //SEG225 print_sbyte_at::@1 - b1: - //SEG226 [111] (byte*) print_char_at::at#0 ← (byte*) print_sbyte_at::at#21 - // (byte*) print_char_at::at#0 = (byte*) print_sbyte_at::at#21 // register copy zp ZP_WORD:7 - //SEG227 [112] call print_char_at - //SEG228 [114] phi from print_sbyte_at::@1 to print_char_at [phi:print_sbyte_at::@1->print_char_at] - print_char_at_from_b1: - //SEG229 [114] phi (byte*) print_char_at::at#4 = (byte*) print_char_at::at#0 [phi:print_sbyte_at::@1->print_char_at#0] -- register_copy - //SEG230 [114] phi (byte) print_char_at::ch#4 = (byte) '-' [phi:print_sbyte_at::@1->print_char_at#1] -- vbuz1=vbuc1 - lda #'-' - sta print_char_at.ch - jsr print_char_at - jmp b5 - //SEG231 print_sbyte_at::@5 - b5: - //SEG232 [113] (signed byte) print_sbyte_at::b#0 ← - (signed byte) print_sbyte_at::b#22 -- vbsxx=_neg_vbsxx - txa - eor #$ff - clc - adc #1 - tax - jmp b2_from_b5 -} -//SEG233 print_char_at -print_char_at: { - .label at = 7 - .label ch = 9 - //SEG234 [115] *((byte*) print_char_at::at#4) ← (byte) print_char_at::ch#4 -- _deref_pbuz1=vbuz2 - lda ch - ldy #0 - sta (at),y - jmp breturn - //SEG235 print_char_at::@return - breturn: - //SEG236 [116] return - rts -} -//SEG237 print_byte_at -print_byte_at: { - .label at = 7 - //SEG238 [117] (byte~) print_byte_at::$0 ← (byte)(signed byte) print_sbyte_at::b#24 >> (byte/signed byte/word/signed word/dword/signed dword) 4 -- vbuaa=vbuxx_ror_4 - txa - lsr - lsr - lsr - lsr - //SEG239 [118] (byte) print_char_at::ch#2 ← *((const byte[]) print_hextab#0 + (byte~) print_byte_at::$0) -- vbuz1=pbuc1_derefidx_vbuaa - tay - lda print_hextab,y - sta print_char_at.ch - //SEG240 [119] (byte*) print_char_at::at#2 ← (byte*) print_byte_at::at#0 - // (byte*) print_char_at::at#2 = (byte*) print_byte_at::at#0 // register copy zp ZP_WORD:7 - //SEG241 [120] call print_char_at - //SEG242 [114] phi from print_byte_at to print_char_at [phi:print_byte_at->print_char_at] - print_char_at_from_print_byte_at: - //SEG243 [114] phi (byte*) print_char_at::at#4 = (byte*) print_char_at::at#2 [phi:print_byte_at->print_char_at#0] -- register_copy - //SEG244 [114] phi (byte) print_char_at::ch#4 = (byte) print_char_at::ch#2 [phi:print_byte_at->print_char_at#1] -- register_copy - jsr print_char_at - jmp b1 - //SEG245 print_byte_at::@1 - b1: - //SEG246 [121] (byte~) print_byte_at::$2 ← (byte)(signed byte) print_sbyte_at::b#24 & (byte/signed byte/word/signed word/dword/signed dword) 15 -- vbuxx=vbuxx_band_vbuc1 - txa - and #$f - tax - //SEG247 [122] (byte*) print_char_at::at#3 ← (byte*) print_byte_at::at#0 + (byte/signed byte/word/signed word/dword/signed dword) 1 -- pbuz1=pbuz1_plus_1 - inc print_char_at.at - bne !+ - inc print_char_at.at+1 - !: - //SEG248 [123] (byte) print_char_at::ch#3 ← *((const byte[]) print_hextab#0 + (byte~) print_byte_at::$2) -- vbuz1=pbuc1_derefidx_vbuxx - lda print_hextab,x - sta print_char_at.ch - //SEG249 [124] call print_char_at - //SEG250 [114] phi from print_byte_at::@1 to print_char_at [phi:print_byte_at::@1->print_char_at] - print_char_at_from_b1: - //SEG251 [114] phi (byte*) print_char_at::at#4 = (byte*) print_char_at::at#3 [phi:print_byte_at::@1->print_char_at#0] -- register_copy - //SEG252 [114] phi (byte) print_char_at::ch#4 = (byte) print_char_at::ch#3 [phi:print_byte_at::@1->print_char_at#1] -- register_copy - jsr print_char_at - jmp breturn - //SEG253 print_byte_at::@return - breturn: - //SEG254 [125] return - rts -} -//SEG255 rotate_matrix +//SEG74 rotate_matrix rotate_matrix: { - .label x = 6 - //SEG256 [126] *((const signed byte*) xr#0) ← (signed byte) rotate_matrix::x#0 -- _deref_pbsc1=vbsz1 + .label x = 5 + //SEG75 [51] *((const signed byte*) xr#0) ← (signed byte) rotate_matrix::x#0 -- _deref_pbsc1=vbsz1 lda x sta xr - //SEG257 [127] *((const signed byte*) yr#0) ← (signed byte) rotate_matrix::y#0 -- _deref_pbsc1=vbsyy + //SEG76 [52] *((const signed byte*) yr#0) ← (signed byte) rotate_matrix::y#0 -- _deref_pbsc1=vbsyy tya sta yr - //SEG258 [128] *((const signed byte*) zr#0) ← (signed byte) rotate_matrix::z#0 -- _deref_pbsc1=vbsxx + //SEG77 [53] *((const signed byte*) zr#0) ← (signed byte) rotate_matrix::z#0 -- _deref_pbsc1=vbsxx txa sta zr - //SEG259 asm { ldxzr C1: ldamulf_sqr1,x sec C2: sbcmulf_sqr2,x staC3+1 F1: ldamulf_sqr1,x sec F2: sbcmulf_sqr2,x staF3+1 I1: ldamulf_sqr1,x sec I2: sbcmulf_sqr2,x staI3+1 ldxxr ldyyr I3: lda#0 clc G1: adcmulf_sqr1,x sec G2: sbcmulf_sqr2,x clc H1: adcmulf_sqr1,y sec H2: sbcmulf_sqr2,y stazr staPP+1 PP: ldaPERSP_Z stapp stapsp1 eor#$ff stapsp2 C3: lda#0 clc A1: adcmulf_sqr1,x sec A2: sbcmulf_sqr2,x clc B1: adcmulf_sqr1,y sec B2: sbcmulf_sqr2,y staxr staXX+1 clc F3: lda#0 clc D1: adcmulf_sqr1,x sec D2: sbcmulf_sqr2,x clc E1: adcmulf_sqr1,y sec E2: sbcmulf_sqr2,y stayr tay lda(psp1),y sec sbc(psp2),y stayp XX: ldy#0 lda(psp1),y sec sbc(psp2),y staxp } + //SEG78 asm { ldxzr C1: ldamulf_sqr1,x sec C2: sbcmulf_sqr2,x staC3+1 F1: ldamulf_sqr1,x sec F2: sbcmulf_sqr2,x staF3+1 I1: ldamulf_sqr1,x sec I2: sbcmulf_sqr2,x staI3+1 ldxxr ldyyr I3: lda#0 clc G1: adcmulf_sqr1,x sec G2: sbcmulf_sqr2,x clc H1: adcmulf_sqr1,y sec H2: sbcmulf_sqr2,y stazr staPP+1 PP: ldaPERSP_Z stapp stapsp1 eor#$ff stapsp2 C3: lda#0 clc A1: adcmulf_sqr1,x sec A2: sbcmulf_sqr2,x clc B1: adcmulf_sqr1,y sec B2: sbcmulf_sqr2,y staxr staXX+1 clc F3: lda#0 clc D1: adcmulf_sqr1,x sec D2: sbcmulf_sqr2,x clc E1: adcmulf_sqr1,y sec E2: sbcmulf_sqr2,y stayr tay lda(psp1),y sec sbc(psp2),y stayp XX: ldy#0 lda(psp1),y sec sbc(psp2),y staxp } ldx zr C1: lda mulf_sqr1,x @@ -8302,14 +3524,14 @@ rotate_matrix: { sbc (psp2),y sta xp jmp breturn - //SEG260 rotate_matrix::@return + //SEG79 rotate_matrix::@return breturn: - //SEG261 [130] return + //SEG80 [55] return rts } -//SEG262 store_matrix +//SEG81 store_matrix store_matrix: { - //SEG263 asm { ldarotation_matrix+0 starotate_matrix.A1+1 eor#$ff starotate_matrix.A2+1 ldarotation_matrix+1 starotate_matrix.B1+1 eor#$ff starotate_matrix.B2+1 ldarotation_matrix+2 starotate_matrix.C1+1 eor#$ff starotate_matrix.C2+1 ldarotation_matrix+3 starotate_matrix.D1+1 eor#$ff starotate_matrix.D2+1 ldarotation_matrix+4 starotate_matrix.E1+1 eor#$ff starotate_matrix.E2+1 ldarotation_matrix+5 starotate_matrix.F1+1 eor#$ff starotate_matrix.F2+1 ldarotation_matrix+6 starotate_matrix.G1+1 eor#$ff starotate_matrix.G2+1 ldarotation_matrix+7 starotate_matrix.H1+1 eor#$ff starotate_matrix.H2+1 ldarotation_matrix+8 starotate_matrix.I1+1 eor#$ff starotate_matrix.I2+1 } + //SEG82 asm { ldarotation_matrix+0 starotate_matrix.A1+1 eor#$ff starotate_matrix.A2+1 ldarotation_matrix+1 starotate_matrix.B1+1 eor#$ff starotate_matrix.B2+1 ldarotation_matrix+2 starotate_matrix.C1+1 eor#$ff starotate_matrix.C2+1 ldarotation_matrix+3 starotate_matrix.D1+1 eor#$ff starotate_matrix.D2+1 ldarotation_matrix+4 starotate_matrix.E1+1 eor#$ff starotate_matrix.E2+1 ldarotation_matrix+5 starotate_matrix.F1+1 eor#$ff starotate_matrix.F2+1 ldarotation_matrix+6 starotate_matrix.G1+1 eor#$ff starotate_matrix.G2+1 ldarotation_matrix+7 starotate_matrix.H1+1 eor#$ff starotate_matrix.H2+1 ldarotation_matrix+8 starotate_matrix.I1+1 eor#$ff starotate_matrix.I2+1 } lda rotation_matrix+0 sta rotate_matrix.A1+1 eor #$ff @@ -8347,1168 +3569,245 @@ store_matrix: { eor #$ff sta rotate_matrix.I2+1 jmp breturn - //SEG264 store_matrix::@return + //SEG83 store_matrix::@return breturn: - //SEG265 [132] return + //SEG84 [57] return rts } -//SEG266 calculate_matrix_16 -calculate_matrix_16: { - .label _4 = 7 - .label _9 = 7 - .label _13 = 7 - .label _28 = $16 - .label _29 = $16 - .label _30 = $16 - .label _31 = $16 - .label _32 = $16 - .label _35 = 7 - .label _36 = $10 - .label _37 = $e - .label _38 = $12 - .label _39 = $14 - .label _48 = $16 - .label _49 = $16 - .label _50 = $16 - .label _51 = $16 - .label _52 = $16 - .label _55 = 7 - .label _56 = $10 - .label _57 = $e - .label _58 = $12 - .label _59 = $14 - .label _66 = 7 - .label _71 = 7 - .label sx = 2 +//SEG85 calculate_matrix +calculate_matrix: { .label sy = 3 - .label t1 = 5 - .label t2 = 6 - .label t3 = 9 - .label t5 = $c - .label t6 = $d - .label t7 = 5 - .label t8 = 6 - .label _74 = 7 - .label _75 = $a - .label _76 = 7 - .label _77 = $a - .label _78 = 7 - .label _79 = 7 - .label _80 = $a - .label _81 = $e - .label _82 = $10 - .label _83 = $12 - .label _84 = $14 - .label _85 = 7 - .label _86 = $a - .label _87 = $e - .label _88 = $10 - .label _89 = $12 - .label _90 = $14 - .label _91 = 7 - .label _92 = $a - .label _93 = 7 - .label _94 = $a - //SEG267 [133] (signed byte) calculate_matrix_16::t1#0 ← (signed byte) calculate_matrix_16::sy#0 - (signed byte) calculate_matrix_16::sz#0 -- vbsz1=vbsz2_minus_vbsxx - txa - eor #$ff + .label t1 = 4 + .label t3 = 5 + .label t4 = 6 + .label t5 = 7 + .label t6 = 8 + .label t7 = 9 + .label t8 = $a + .label t9 = $b + .label t10 = $c + //SEG86 [58] (signed byte) calculate_matrix::t1#0 ← (signed byte) calculate_matrix::sy#0 - (const signed byte) sz#0 -- vbsz1=vbsz2_minus_vbsc1 + lda sy sec - adc sy + sbc #sz sta t1 - //SEG268 [134] (signed byte) calculate_matrix_16::t2#0 ← (signed byte) calculate_matrix_16::sy#0 + (signed byte) calculate_matrix_16::sz#0 -- vbsz1=vbsz2_plus_vbsxx - txa + //SEG87 [59] (signed byte) calculate_matrix::t2#0 ← (signed byte) calculate_matrix::sy#0 + (const signed byte) sz#0 -- vbsyy=vbsz1_plus_vbsc1 + lda #sz clc adc sy - sta t2 - //SEG269 [135] (word~) calculate_matrix_16::$74 ← *((const byte*) COSH_HI#0 + (signed byte) calculate_matrix_16::t1#0) w= *((const byte*) COSH_LO#0 + (signed byte) calculate_matrix_16::t1#0) -- vwuz1=pbuc1_derefidx_vbsz2_word_pbuc2_derefidx_vbsz2 - ldy t1 - lda COSH_HI,y - sta _74+1 - lda COSH_LO,y - sta _74 - //SEG270 [136] (word~) calculate_matrix_16::$75 ← *((const byte*) COSH_HI#0 + (signed byte) calculate_matrix_16::t2#0) w= *((const byte*) COSH_LO#0 + (signed byte) calculate_matrix_16::t2#0) -- vwuz1=pbuc1_derefidx_vbsz2_word_pbuc2_derefidx_vbsz2 - ldy t2 - lda COSH_HI,y - sta _75+1 - lda COSH_LO,y - sta _75 - //SEG271 [137] (signed word~) calculate_matrix_16::$4 ← (signed word)(word~) calculate_matrix_16::$74 + (signed word)(word~) calculate_matrix_16::$75 -- vwsz1=vwsz1_plus_vwsz2 - lda _4 - clc - adc _75 - sta _4 - lda _4+1 - adc _75+1 - sta _4+1 - //SEG272 [138] (byte~) calculate_matrix_16::$5 ← > (signed word~) calculate_matrix_16::$4 -- vbuaa=_hi_vwsz1 - lda _4+1 - //SEG273 [139] *((const signed byte[9]) rotation_matrix#0) ← (signed byte)(byte~) calculate_matrix_16::$5 -- _deref_pbsc1=vbsaa - sta rotation_matrix - //SEG274 [140] (word~) calculate_matrix_16::$76 ← *((const byte*) SINH_HI#0 + (signed byte) calculate_matrix_16::t1#0) w= *((const byte*) SINH_LO#0 + (signed byte) calculate_matrix_16::t1#0) -- vwuz1=pbuc1_derefidx_vbsz2_word_pbuc2_derefidx_vbsz2 - ldy t1 - lda SINH_HI,y - sta _76+1 - lda SINH_LO,y - sta _76 - //SEG275 [141] (word~) calculate_matrix_16::$77 ← *((const byte*) SINH_HI#0 + (signed byte) calculate_matrix_16::t2#0) w= *((const byte*) SINH_LO#0 + (signed byte) calculate_matrix_16::t2#0) -- vwuz1=pbuc1_derefidx_vbsz2_word_pbuc2_derefidx_vbsz2 - ldy t2 - lda SINH_HI,y - sta _77+1 - lda SINH_LO,y - sta _77 - //SEG276 [142] (signed word~) calculate_matrix_16::$9 ← (signed word)(word~) calculate_matrix_16::$76 - (signed word)(word~) calculate_matrix_16::$77 -- vwsz1=vwsz1_minus_vwsz2 - lda _9 - sec - sbc _77 - sta _9 - lda _9+1 - sbc _77+1 - sta _9+1 - //SEG277 [143] (byte~) calculate_matrix_16::$10 ← > (signed word~) calculate_matrix_16::$9 -- vbuaa=_hi_vwsz1 - lda _9+1 - //SEG278 [144] *((const signed byte[9]) rotation_matrix#0+(byte/signed byte/word/signed word/dword/signed dword) 1) ← (signed byte)(byte~) calculate_matrix_16::$10 -- _deref_pbsc1=vbsaa - sta rotation_matrix+1 - //SEG279 [145] (word~) calculate_matrix_16::$78 ← *((const byte*) SINH_HI#0 + (signed byte) calculate_matrix_16::sy#0) w= *((const byte*) SINH_LO#0 + (signed byte) calculate_matrix_16::sy#0) -- vwuz1=pbuc1_derefidx_vbsz2_word_pbuc2_derefidx_vbsz2 - ldy sy - lda SINH_HI,y - sta _78+1 - lda SINH_LO,y - sta _78 - //SEG280 [146] (signed word~) calculate_matrix_16::$13 ← (signed word)(word~) calculate_matrix_16::$78 + (signed word)(word~) calculate_matrix_16::$78 -- vwsz1=vwsz1_plus_vwsz1 - lda _13 - clc - adc _13 - sta _13 - lda _13+1 - adc _13+1 - sta _13+1 - //SEG281 [147] (byte~) calculate_matrix_16::$14 ← > (signed word~) calculate_matrix_16::$13 -- vbuaa=_hi_vwsz1 - lda _13+1 - //SEG282 [148] *((const signed byte[9]) rotation_matrix#0+(byte/signed byte/word/signed word/dword/signed dword) 2) ← (signed byte)(byte~) calculate_matrix_16::$14 -- _deref_pbsc1=vbsaa - sta rotation_matrix+2 - //SEG283 [149] (signed byte) calculate_matrix_16::t3#0 ← (signed byte) calculate_matrix_16::sx#0 + (signed byte) calculate_matrix_16::sz#0 -- vbsz1=vbsz2_plus_vbsxx + tay + //SEG88 [60] (signed byte) calculate_matrix::t3#0 ← (signed byte) calculate_matrix::sx#0 -- vbsz1=vbsxx + stx t3 + //SEG89 [61] (signed byte) calculate_matrix::t4#0 ← (signed byte) calculate_matrix::sx#0 -- vbsz1=vbsxx + stx t4 + //SEG90 [62] (signed byte) calculate_matrix::t5#0 ← (signed byte) calculate_matrix::sx#0 + (signed byte) calculate_matrix::t2#0 -- vbsz1=vbsxx_plus_vbsyy txa + sty $ff clc - adc sx - sta t3 - //SEG284 [150] (signed byte) calculate_matrix_16::t4#0 ← (signed byte) calculate_matrix_16::sx#0 - (signed byte) calculate_matrix_16::sz#0 -- vbsxx=vbsz1_minus_vbsxx - txa - eor #$ff - sec - adc sx - tax - //SEG285 [151] (signed byte) calculate_matrix_16::t5#0 ← (signed byte) calculate_matrix_16::sx#0 + (signed byte) calculate_matrix_16::t2#0 -- vbsz1=vbsz2_plus_vbsz3 - lda sx - clc - adc t2 + adc $ff sta t5 - //SEG286 [152] (signed byte) calculate_matrix_16::t6#0 ← (signed byte) calculate_matrix_16::sx#0 - (signed byte) calculate_matrix_16::t1#0 -- vbsz1=vbsz2_minus_vbsz3 - lda sx + //SEG91 [63] (signed byte) calculate_matrix::t6#0 ← (signed byte) calculate_matrix::sx#0 - (signed byte) calculate_matrix::t1#0 -- vbsz1=vbsxx_minus_vbsz2 + txa sec sbc t1 sta t6 - //SEG287 [153] (signed byte) calculate_matrix_16::t7#0 ← (signed byte) calculate_matrix_16::sx#0 + (signed byte) calculate_matrix_16::t1#0 -- vbsz1=vbsz2_plus_vbsz1 - lda t7 + //SEG92 [64] (signed byte) calculate_matrix::t7#0 ← (signed byte) calculate_matrix::sx#0 + (signed byte) calculate_matrix::t1#0 -- vbsz1=vbsxx_plus_vbsz2 + txa clc - adc sx + adc t1 sta t7 - //SEG288 [154] (signed byte) calculate_matrix_16::t8#0 ← (signed byte) calculate_matrix_16::t2#0 - (signed byte) calculate_matrix_16::sx#0 -- vbsz1=vbsz1_minus_vbsz2 - lda t8 + //SEG93 [65] (signed byte) calculate_matrix::t8#0 ← (signed byte) calculate_matrix::t2#0 - (signed byte) calculate_matrix::sx#0 -- vbsz1=vbsyy_minus_vbsxx + tya + stx $ff sec - sbc sx + sbc $ff sta t8 - //SEG289 [155] (word~) calculate_matrix_16::$79 ← *((const byte*) SINH_HI#0 + (signed byte) calculate_matrix_16::t3#0) w= *((const byte*) SINH_LO#0 + (signed byte) calculate_matrix_16::t3#0) -- vwuz1=pbuc1_derefidx_vbsz2_word_pbuc2_derefidx_vbsz2 - ldy t3 - lda SINH_HI,y - sta _79+1 - lda SINH_LO,y - sta _79 - //SEG290 [156] (word~) calculate_matrix_16::$80 ← *((const byte*) SINH_HI#0 + (signed byte) calculate_matrix_16::t4#0) w= *((const byte*) SINH_LO#0 + (signed byte) calculate_matrix_16::t4#0) -- vwuz1=pbuc1_derefidx_vbsxx_word_pbuc2_derefidx_vbsxx - lda SINH_HI,x - sta _80+1 - lda SINH_LO,x - sta _80 - //SEG291 [157] (word~) calculate_matrix_16::$81 ← *((const byte*) COSQ_HI#0 + (signed byte) calculate_matrix_16::t5#0) w= *((const byte*) COSH_LO#0 + (signed byte) calculate_matrix_16::t5#0) -- vwuz1=pbuc1_derefidx_vbsz2_word_pbuc2_derefidx_vbsz2 - ldy t5 - lda COSQ_HI,y - sta _81+1 - lda COSH_LO,y - sta _81 - //SEG292 [158] (word~) calculate_matrix_16::$82 ← *((const byte*) COSQ_HI#0 + (signed byte) calculate_matrix_16::t6#0) w= *((const byte*) COSH_LO#0 + (signed byte) calculate_matrix_16::t6#0) -- vwuz1=pbuc1_derefidx_vbsz2_word_pbuc2_derefidx_vbsz2 + //SEG94 [66] (signed byte) calculate_matrix::t9#0 ← (signed byte) calculate_matrix::sy#0 - (signed byte) calculate_matrix::sx#0 -- vbsz1=vbsz2_minus_vbsxx + txa + eor #$ff + sec + adc sy + sta t9 + //SEG95 [67] (signed byte) calculate_matrix::t10#0 ← (signed byte) calculate_matrix::sy#0 + (signed byte) calculate_matrix::sx#0 -- vbsz1=vbsz2_plus_vbsxx + txa + clc + adc sy + sta t10 + //SEG96 [68] (signed byte~) calculate_matrix::$10 ← *((const signed byte*) COSH#0 + (signed byte) calculate_matrix::t1#0) + *((const signed byte*) COSH#0 + (signed byte) calculate_matrix::t2#0) -- vbsaa=pbsc1_derefidx_vbsz1_plus_pbsc1_derefidx_vbsyy + ldx t1 + clc + lda COSH,x + adc COSH,y + //SEG97 [69] *((const signed byte[9]) rotation_matrix#0) ← (signed byte~) calculate_matrix::$10 -- _deref_pbsc1=vbsaa + sta rotation_matrix + //SEG98 [70] (signed byte~) calculate_matrix::$11 ← *((const signed byte*) SINH#0 + (signed byte) calculate_matrix::t1#0) - *((const signed byte*) SINH#0 + (signed byte) calculate_matrix::t2#0) -- vbsaa=pbsc1_derefidx_vbsz1_minus_pbsc1_derefidx_vbsyy + ldx t1 + sec + lda SINH,x + sbc SINH,y + //SEG99 [71] *((const signed byte[9]) rotation_matrix#0+(byte/signed byte/word/signed word/dword/signed dword) 1) ← (signed byte~) calculate_matrix::$11 -- _deref_pbsc1=vbsaa + sta rotation_matrix+1 + //SEG100 [72] (signed byte~) calculate_matrix::$12 ← *((const signed byte*) SINH#0 + (signed byte) calculate_matrix::sy#0) + *((const signed byte*) SINH#0 + (signed byte) calculate_matrix::sy#0) -- vbsaa=pbsc1_derefidx_vbsz1_plus_pbsc1_derefidx_vbsz1 + ldy sy + clc + lda SINH,y + adc SINH,y + //SEG101 [73] *((const signed byte[9]) rotation_matrix#0+(byte/signed byte/word/signed word/dword/signed dword) 2) ← (signed byte~) calculate_matrix::$12 -- _deref_pbsc1=vbsaa + sta rotation_matrix+2 + //SEG102 [74] (signed byte~) calculate_matrix::$13 ← *((const signed byte*) SINH#0+(const signed byte) sz#0 + (signed byte) calculate_matrix::t3#0) - *((const signed byte*) SINH#0+-(const signed byte) sz#0 + (signed byte) calculate_matrix::t4#0) -- vbsaa=pbsc1_derefidx_vbsz1_minus_pbsc2_derefidx_vbsz2 + ldx t3 + ldy t4 + sec + lda SINH+sz,x + sbc SINH+-sz,y + //SEG103 [75] (signed byte~) calculate_matrix::$14 ← (signed byte~) calculate_matrix::$13 + *((const signed byte*) COSQ#0 + (signed byte) calculate_matrix::t6#0) -- vbsaa=vbsaa_plus_pbsc1_derefidx_vbsz1 ldy t6 - lda COSQ_HI,y - sta _82+1 - lda COSH_LO,y - sta _82 - //SEG293 [159] (word~) calculate_matrix_16::$83 ← *((const byte*) COSQ_HI#0 + (signed byte) calculate_matrix_16::t7#0) w= *((const byte*) COSH_LO#0 + (signed byte) calculate_matrix_16::t7#0) -- vwuz1=pbuc1_derefidx_vbsz2_word_pbuc2_derefidx_vbsz2 - ldy t7 - lda COSQ_HI,y - sta _83+1 - lda COSH_LO,y - sta _83 - //SEG294 [160] (word~) calculate_matrix_16::$84 ← *((const byte*) COSQ_HI#0 + (signed byte) calculate_matrix_16::t8#0) w= *((const byte*) COSH_LO#0 + (signed byte) calculate_matrix_16::t8#0) -- vwuz1=pbuc1_derefidx_vbsz2_word_pbuc2_derefidx_vbsz2 + clc + adc COSQ,y + //SEG104 [76] (signed byte~) calculate_matrix::$15 ← (signed byte~) calculate_matrix::$14 - *((const signed byte*) COSQ#0 + (signed byte) calculate_matrix::t5#0) -- vbsaa=vbsaa_minus_pbsc1_derefidx_vbsz1 + ldy t5 + sec + sbc COSQ,y + //SEG105 [77] (signed byte~) calculate_matrix::$16 ← (signed byte~) calculate_matrix::$15 + *((const signed byte*) COSQ#0 + (signed byte) calculate_matrix::t8#0) -- vbsaa=vbsaa_plus_pbsc1_derefidx_vbsz1 ldy t8 - lda COSQ_HI,y - sta _84+1 - lda COSH_LO,y - sta _84 - //SEG295 [161] (signed word~) calculate_matrix_16::$28 ← (signed word)(word~) calculate_matrix_16::$79 - (signed word)(word~) calculate_matrix_16::$80 -- vwsz1=vwsz2_minus_vwsz3 - lda _79 - sec - sbc _80 - sta _28 - lda _79+1 - sbc _80+1 - sta _28+1 - //SEG296 [162] (signed word~) calculate_matrix_16::$29 ← (signed word~) calculate_matrix_16::$28 + (signed word)(word~) calculate_matrix_16::$82 -- vwsz1=vwsz1_plus_vwsz2 - lda _29 clc - adc _82 - sta _29 - lda _29+1 - adc _82+1 - sta _29+1 - //SEG297 [163] (signed word~) calculate_matrix_16::$30 ← (signed word~) calculate_matrix_16::$29 - (signed word)(word~) calculate_matrix_16::$81 -- vwsz1=vwsz1_minus_vwsz2 - lda _30 + adc COSQ,y + //SEG106 [78] (signed byte~) calculate_matrix::$17 ← (signed byte~) calculate_matrix::$16 - *((const signed byte*) COSQ#0 + (signed byte) calculate_matrix::t7#0) -- vbsaa=vbsaa_minus_pbsc1_derefidx_vbsz1 + ldy t7 sec - sbc _81 - sta _30 - lda _30+1 - sbc _81+1 - sta _30+1 - //SEG298 [164] (signed word~) calculate_matrix_16::$31 ← (signed word~) calculate_matrix_16::$30 + (signed word)(word~) calculate_matrix_16::$84 -- vwsz1=vwsz1_plus_vwsz2 - lda _31 - clc - adc _84 - sta _31 - lda _31+1 - adc _84+1 - sta _31+1 - //SEG299 [165] (signed word~) calculate_matrix_16::$32 ← (signed word~) calculate_matrix_16::$31 - (signed word)(word~) calculate_matrix_16::$83 -- vwsz1=vwsz1_minus_vwsz2 - lda _32 - sec - sbc _83 - sta _32 - lda _32+1 - sbc _83+1 - sta _32+1 - //SEG300 [166] (byte~) calculate_matrix_16::$33 ← > (signed word~) calculate_matrix_16::$32 -- vbuaa=_hi_vwsz1 - lda _32+1 - //SEG301 [167] *((const signed byte[9]) rotation_matrix#0+(byte/signed byte/word/signed word/dword/signed dword) 3) ← (signed byte)(byte~) calculate_matrix_16::$33 -- _deref_pbsc1=vbsaa + sbc COSQ,y + //SEG107 [79] *((const signed byte[9]) rotation_matrix#0+(byte/signed byte/word/signed word/dword/signed dword) 3) ← (signed byte~) calculate_matrix::$17 -- _deref_pbsc1=vbsaa sta rotation_matrix+3 - //SEG302 [168] (signed word~) calculate_matrix_16::$35 ← (signed word)(word~) calculate_matrix_16::$79 + (signed word)(word~) calculate_matrix_16::$80 -- vwsz1=vwsz1_plus_vwsz2 - lda _35 + //SEG108 [80] (signed byte~) calculate_matrix::$18 ← *((const signed byte*) COSH#0 + (signed byte) calculate_matrix::t3#0) + *((const signed byte*) COSH#0 + (signed byte) calculate_matrix::t4#0) -- vbsaa=pbsc1_derefidx_vbsz1_plus_pbsc1_derefidx_vbsz2 + ldx t3 + ldy t4 clc - adc _80 - sta _35 - lda _35+1 - adc _80+1 - sta _35+1 - //SEG303 [169] (signed word~) calculate_matrix_16::$36 ← (signed word~) calculate_matrix_16::$35 + (signed word)(word~) calculate_matrix_16::$82 -- vwsz1=vwsz2_plus_vwsz1 - lda _36 - clc - adc _35 - sta _36 - lda _36+1 - adc _35+1 - sta _36+1 - //SEG304 [170] (signed word~) calculate_matrix_16::$37 ← (signed word~) calculate_matrix_16::$36 - (signed word)(word~) calculate_matrix_16::$81 -- vwsz1=vwsz2_minus_vwsz1 - lda _36 - sec - sbc _37 - sta _37 - lda _36+1 - sbc _37+1 - sta _37+1 - //SEG305 [171] (signed word~) calculate_matrix_16::$38 ← (signed word~) calculate_matrix_16::$37 + (signed word)(word~) calculate_matrix_16::$83 -- vwsz1=vwsz2_plus_vwsz1 - lda _38 - clc - adc _37 - sta _38 - lda _38+1 - adc _37+1 - sta _38+1 - //SEG306 [172] (signed word~) calculate_matrix_16::$39 ← (signed word~) calculate_matrix_16::$38 - (signed word)(word~) calculate_matrix_16::$84 -- vwsz1=vwsz2_minus_vwsz1 - lda _38 - sec - sbc _39 - sta _39 - lda _38+1 - sbc _39+1 - sta _39+1 - //SEG307 [173] (byte~) calculate_matrix_16::$40 ← > (signed word~) calculate_matrix_16::$39 -- vbuaa=_hi_vwsz1 - lda _39+1 - //SEG308 [174] *((const signed byte[9]) rotation_matrix#0+(byte/signed byte/word/signed word/dword/signed dword) 7) ← (signed byte)(byte~) calculate_matrix_16::$40 -- _deref_pbsc1=vbsaa - sta rotation_matrix+7 - //SEG309 [175] (word~) calculate_matrix_16::$85 ← *((const byte*) COSH_HI#0 + (signed byte) calculate_matrix_16::t3#0) w= *((const byte*) COSH_LO#0 + (signed byte) calculate_matrix_16::t3#0) -- vwuz1=pbuc1_derefidx_vbsz2_word_pbuc2_derefidx_vbsz2 - ldy t3 - lda COSH_HI,y - sta _85+1 - lda COSH_LO,y - sta _85 - //SEG310 [176] (word~) calculate_matrix_16::$86 ← *((const byte*) COSH_HI#0 + (signed byte) calculate_matrix_16::t4#0) w= *((const byte*) COSH_LO#0 + (signed byte) calculate_matrix_16::t4#0) -- vwuz1=pbuc1_derefidx_vbsxx_word_pbuc2_derefidx_vbsxx - lda COSH_HI,x - sta _86+1 - lda COSH_LO,x - sta _86 - //SEG311 [177] (word~) calculate_matrix_16::$87 ← *((const byte*) SINQ_HI#0 + (signed byte) calculate_matrix_16::t5#0) w= *((const byte*) SINH_LO#0 + (signed byte) calculate_matrix_16::t5#0) -- vwuz1=pbuc1_derefidx_vbsz2_word_pbuc2_derefidx_vbsz2 + lda COSH,x + adc COSH,y + //SEG109 [81] (signed byte~) calculate_matrix::$19 ← (signed byte~) calculate_matrix::$18 + *((const signed byte*) SINQ#0 + (signed byte) calculate_matrix::t5#0) -- vbsaa=vbsaa_plus_pbsc1_derefidx_vbsz1 ldy t5 - lda SINQ_HI,y - sta _87+1 - lda SINH_LO,y - sta _87 - //SEG312 [178] (word~) calculate_matrix_16::$88 ← *((const byte*) SINQ_HI#0 + (signed byte) calculate_matrix_16::t6#0) w= *((const byte*) SINH_LO#0 + (signed byte) calculate_matrix_16::t6#0) -- vwuz1=pbuc1_derefidx_vbsz2_word_pbuc2_derefidx_vbsz2 + clc + adc SINQ,y + //SEG110 [82] (signed byte~) calculate_matrix::$20 ← (signed byte~) calculate_matrix::$19 - *((const signed byte*) SINQ#0 + (signed byte) calculate_matrix::t6#0) -- vbsaa=vbsaa_minus_pbsc1_derefidx_vbsz1 ldy t6 - lda SINQ_HI,y - sta _88+1 - lda SINH_LO,y - sta _88 - //SEG313 [179] (word~) calculate_matrix_16::$89 ← *((const byte*) SINQ_HI#0 + (signed byte) calculate_matrix_16::t7#0) w= *((const byte*) SINH_LO#0 + (signed byte) calculate_matrix_16::t7#0) -- vwuz1=pbuc1_derefidx_vbsz2_word_pbuc2_derefidx_vbsz2 + sec + sbc SINQ,y + //SEG111 [83] (signed byte~) calculate_matrix::$21 ← (signed byte~) calculate_matrix::$20 - *((const signed byte*) SINQ#0 + (signed byte) calculate_matrix::t7#0) -- vbsaa=vbsaa_minus_pbsc1_derefidx_vbsz1 ldy t7 - lda SINQ_HI,y - sta _89+1 - lda SINH_LO,y - sta _89 - //SEG314 [180] (word~) calculate_matrix_16::$90 ← *((const byte*) SINQ_HI#0 + (signed byte) calculate_matrix_16::t8#0) w= *((const byte*) SINH_LO#0 + (signed byte) calculate_matrix_16::t8#0) -- vwuz1=pbuc1_derefidx_vbsz2_word_pbuc2_derefidx_vbsz2 + sec + sbc SINQ,y + //SEG112 [84] (signed byte~) calculate_matrix::$22 ← (signed byte~) calculate_matrix::$21 - *((const signed byte*) SINQ#0 + (signed byte) calculate_matrix::t8#0) -- vbsaa=vbsaa_minus_pbsc1_derefidx_vbsz1 ldy t8 - lda SINQ_HI,y - sta _90+1 - lda SINH_LO,y - sta _90 - //SEG315 [181] (signed word~) calculate_matrix_16::$48 ← (signed word)(word~) calculate_matrix_16::$85 + (signed word)(word~) calculate_matrix_16::$86 -- vwsz1=vwsz2_plus_vwsz3 - lda _85 - clc - adc _86 - sta _48 - lda _85+1 - adc _86+1 - sta _48+1 - //SEG316 [182] (signed word~) calculate_matrix_16::$49 ← (signed word~) calculate_matrix_16::$48 + (signed word)(word~) calculate_matrix_16::$87 -- vwsz1=vwsz1_plus_vwsz2 - lda _49 - clc - adc _87 - sta _49 - lda _49+1 - adc _87+1 - sta _49+1 - //SEG317 [183] (signed word~) calculate_matrix_16::$50 ← (signed word~) calculate_matrix_16::$49 - (signed word)(word~) calculate_matrix_16::$88 -- vwsz1=vwsz1_minus_vwsz2 - lda _50 sec - sbc _88 - sta _50 - lda _50+1 - sbc _88+1 - sta _50+1 - //SEG318 [184] (signed word~) calculate_matrix_16::$51 ← (signed word~) calculate_matrix_16::$50 - (signed word)(word~) calculate_matrix_16::$89 -- vwsz1=vwsz1_minus_vwsz2 - lda _51 - sec - sbc _89 - sta _51 - lda _51+1 - sbc _89+1 - sta _51+1 - //SEG319 [185] (signed word~) calculate_matrix_16::$52 ← (signed word~) calculate_matrix_16::$51 - (signed word)(word~) calculate_matrix_16::$90 -- vwsz1=vwsz1_minus_vwsz2 - lda _52 - sec - sbc _90 - sta _52 - lda _52+1 - sbc _90+1 - sta _52+1 - //SEG320 [186] (byte~) calculate_matrix_16::$53 ← > (signed word~) calculate_matrix_16::$52 -- vbuaa=_hi_vwsz1 - lda _52+1 - //SEG321 [187] *((const signed byte[9]) rotation_matrix#0+(byte/signed byte/word/signed word/dword/signed dword) 4) ← (signed byte)(byte~) calculate_matrix_16::$53 -- _deref_pbsc1=vbsaa + sbc SINQ,y + //SEG113 [85] *((const signed byte[9]) rotation_matrix#0+(byte/signed byte/word/signed word/dword/signed dword) 4) ← (signed byte~) calculate_matrix::$22 -- _deref_pbsc1=vbsaa sta rotation_matrix+4 - //SEG322 [188] (signed word~) calculate_matrix_16::$55 ← (signed word)(word~) calculate_matrix_16::$86 - (signed word)(word~) calculate_matrix_16::$85 -- vwsz1=vwsz2_minus_vwsz1 - lda _86 + //SEG114 [86] (signed byte~) calculate_matrix::$23 ← *((const signed byte*) SINH#0 + (signed byte) calculate_matrix::t9#0) - *((const signed byte*) SINH#0 + (signed byte) calculate_matrix::t10#0) -- vbsaa=pbsc1_derefidx_vbsz1_minus_pbsc1_derefidx_vbsz2 + ldx t9 + ldy t10 sec - sbc _55 - sta _55 - lda _86+1 - sbc _55+1 - sta _55+1 - //SEG323 [189] (signed word~) calculate_matrix_16::$56 ← (signed word~) calculate_matrix_16::$55 + (signed word)(word~) calculate_matrix_16::$88 -- vwsz1=vwsz2_plus_vwsz1 - lda _56 - clc - adc _55 - sta _56 - lda _56+1 - adc _55+1 - sta _56+1 - //SEG324 [190] (signed word~) calculate_matrix_16::$57 ← (signed word~) calculate_matrix_16::$56 - (signed word)(word~) calculate_matrix_16::$87 -- vwsz1=vwsz2_minus_vwsz1 - lda _56 - sec - sbc _57 - sta _57 - lda _56+1 - sbc _57+1 - sta _57+1 - //SEG325 [191] (signed word~) calculate_matrix_16::$58 ← (signed word~) calculate_matrix_16::$57 - (signed word)(word~) calculate_matrix_16::$89 -- vwsz1=vwsz2_minus_vwsz1 - lda _57 - sec - sbc _58 - sta _58 - lda _57+1 - sbc _58+1 - sta _58+1 - //SEG326 [192] (signed word~) calculate_matrix_16::$59 ← (signed word~) calculate_matrix_16::$58 - (signed word)(word~) calculate_matrix_16::$90 -- vwsz1=vwsz2_minus_vwsz1 - lda _58 - sec - sbc _59 - sta _59 - lda _58+1 - sbc _59+1 - sta _59+1 - //SEG327 [193] (byte~) calculate_matrix_16::$60 ← > (signed word~) calculate_matrix_16::$59 -- vbuaa=_hi_vwsz1 - lda _59+1 - //SEG328 [194] *((const signed byte[9]) rotation_matrix#0+(byte/signed byte/word/signed word/dword/signed dword) 6) ← (signed byte)(byte~) calculate_matrix_16::$60 -- _deref_pbsc1=vbsaa - sta rotation_matrix+6 - //SEG329 [195] (signed byte) calculate_matrix_16::t9#0 ← (signed byte) calculate_matrix_16::sy#0 - (signed byte) calculate_matrix_16::sx#0 -- vbsxx=vbsz1_minus_vbsz2 - lda sy - sec - sbc sx - tax - //SEG330 [196] (signed byte) calculate_matrix_16::t10#0 ← (signed byte) calculate_matrix_16::sy#0 + (signed byte) calculate_matrix_16::sx#0 -- vbsyy=vbsz1_plus_vbsz2 - lda sy - clc - adc sx - tay - //SEG331 [197] (word~) calculate_matrix_16::$91 ← *((const byte*) SINH_HI#0 + (signed byte) calculate_matrix_16::t9#0) w= *((const byte*) SINH_LO#0 + (signed byte) calculate_matrix_16::t9#0) -- vwuz1=pbuc1_derefidx_vbsxx_word_pbuc2_derefidx_vbsxx - lda SINH_HI,x - sta _91+1 - lda SINH_LO,x - sta _91 - //SEG332 [198] (word~) calculate_matrix_16::$92 ← *((const byte*) SINH_HI#0 + (signed byte) calculate_matrix_16::t10#0) w= *((const byte*) SINH_LO#0 + (signed byte) calculate_matrix_16::t10#0) -- vwuz1=pbuc1_derefidx_vbsyy_word_pbuc2_derefidx_vbsyy - lda SINH_HI,y - sta _92+1 - lda SINH_LO,y - sta _92 - //SEG333 [199] (signed word~) calculate_matrix_16::$66 ← (signed word)(word~) calculate_matrix_16::$91 - (signed word)(word~) calculate_matrix_16::$92 -- vwsz1=vwsz1_minus_vwsz2 - lda _66 - sec - sbc _92 - sta _66 - lda _66+1 - sbc _92+1 - sta _66+1 - //SEG334 [200] (byte~) calculate_matrix_16::$67 ← > (signed word~) calculate_matrix_16::$66 -- vbuaa=_hi_vwsz1 - lda _66+1 - //SEG335 [201] *((const signed byte[9]) rotation_matrix#0+(byte/signed byte/word/signed word/dword/signed dword) 5) ← (signed byte)(byte~) calculate_matrix_16::$67 -- _deref_pbsc1=vbsaa + lda SINH,x + sbc SINH,y + //SEG115 [87] *((const signed byte[9]) rotation_matrix#0+(byte/signed byte/word/signed word/dword/signed dword) 5) ← (signed byte~) calculate_matrix::$23 -- _deref_pbsc1=vbsaa sta rotation_matrix+5 - //SEG336 [202] (word~) calculate_matrix_16::$93 ← *((const byte*) COSH_HI#0 + (signed byte) calculate_matrix_16::t9#0) w= *((const byte*) COSH_LO#0 + (signed byte) calculate_matrix_16::t9#0) -- vwuz1=pbuc1_derefidx_vbsxx_word_pbuc2_derefidx_vbsxx - lda COSH_HI,x - sta _93+1 - lda COSH_LO,x - sta _93 - //SEG337 [203] (word~) calculate_matrix_16::$94 ← *((const byte*) COSH_HI#0 + (signed byte) calculate_matrix_16::t10#0) w= *((const byte*) COSH_LO#0 + (signed byte) calculate_matrix_16::t10#0) -- vwuz1=pbuc1_derefidx_vbsyy_word_pbuc2_derefidx_vbsyy - lda COSH_HI,y - sta _94+1 - lda COSH_LO,y - sta _94 - //SEG338 [204] (signed word~) calculate_matrix_16::$71 ← (signed word)(word~) calculate_matrix_16::$93 + (signed word)(word~) calculate_matrix_16::$94 -- vwsz1=vwsz1_plus_vwsz2 - lda _71 + //SEG116 [88] (signed byte~) calculate_matrix::$24 ← *((const signed byte*) COSH#0 + (signed byte) calculate_matrix::t4#0) - *((const signed byte*) COSH#0 + (signed byte) calculate_matrix::t3#0) -- vbsaa=pbsc1_derefidx_vbsz1_minus_pbsc1_derefidx_vbsz2 + ldx t4 + ldy t3 + sec + lda COSH,x + sbc COSH,y + //SEG117 [89] (signed byte~) calculate_matrix::$25 ← (signed byte~) calculate_matrix::$24 + *((const signed byte*) SINQ#0 + (signed byte) calculate_matrix::t6#0) -- vbsaa=vbsaa_plus_pbsc1_derefidx_vbsz1 + ldy t6 clc - adc _94 - sta _71 - lda _71+1 - adc _94+1 - sta _71+1 - //SEG339 [205] (byte~) calculate_matrix_16::$72 ← > (signed word~) calculate_matrix_16::$71 -- vbuaa=_hi_vwsz1 - lda _71+1 - //SEG340 [206] *((const signed byte[9]) rotation_matrix#0+(byte/signed byte/word/signed word/dword/signed dword) 8) ← (signed byte)(byte~) calculate_matrix_16::$72 -- _deref_pbsc1=vbsaa + adc SINQ,y + //SEG118 [90] (signed byte~) calculate_matrix::$26 ← (signed byte~) calculate_matrix::$25 - *((const signed byte*) SINQ#0 + (signed byte) calculate_matrix::t5#0) -- vbsaa=vbsaa_minus_pbsc1_derefidx_vbsz1 + ldy t5 + sec + sbc SINQ,y + //SEG119 [91] (signed byte~) calculate_matrix::$27 ← (signed byte~) calculate_matrix::$26 - *((const signed byte*) SINQ#0 + (signed byte) calculate_matrix::t8#0) -- vbsaa=vbsaa_minus_pbsc1_derefidx_vbsz1 + ldy t8 + sec + sbc SINQ,y + //SEG120 [92] (signed byte~) calculate_matrix::$28 ← (signed byte~) calculate_matrix::$27 - *((const signed byte*) SINQ#0 + (signed byte) calculate_matrix::t7#0) -- vbsaa=vbsaa_minus_pbsc1_derefidx_vbsz1 + ldy t7 + sec + sbc SINQ,y + //SEG121 [93] *((const signed byte[9]) rotation_matrix#0+(byte/signed byte/word/signed word/dword/signed dword) 6) ← (signed byte~) calculate_matrix::$28 -- _deref_pbsc1=vbsaa + sta rotation_matrix+6 + //SEG122 [94] (signed byte~) calculate_matrix::$29 ← *((const signed byte*) SINH#0 + (signed byte) calculate_matrix::t3#0) + *((const signed byte*) SINH#0 + (signed byte) calculate_matrix::t4#0) -- vbsaa=pbsc1_derefidx_vbsz1_plus_pbsc1_derefidx_vbsz2 + ldx t3 + ldy t4 + clc + lda SINH,x + adc SINH,y + //SEG123 [95] (signed byte~) calculate_matrix::$30 ← (signed byte~) calculate_matrix::$29 + *((const signed byte*) COSQ#0 + (signed byte) calculate_matrix::t6#0) -- vbsaa=vbsaa_plus_pbsc1_derefidx_vbsz1 + ldy t6 + clc + adc COSQ,y + //SEG124 [96] (signed byte~) calculate_matrix::$31 ← (signed byte~) calculate_matrix::$30 - *((const signed byte*) COSQ#0 + (signed byte) calculate_matrix::t5#0) -- vbsaa=vbsaa_minus_pbsc1_derefidx_vbsz1 + ldy t5 + sec + sbc COSQ,y + //SEG125 [97] (signed byte~) calculate_matrix::$32 ← (signed byte~) calculate_matrix::$31 + *((const signed byte*) COSQ#0 + (signed byte) calculate_matrix::t7#0) -- vbsaa=vbsaa_plus_pbsc1_derefidx_vbsz1 + ldy t7 + clc + adc COSQ,y + //SEG126 [98] (signed byte~) calculate_matrix::$33 ← (signed byte~) calculate_matrix::$32 - *((const signed byte*) COSQ#0 + (signed byte) calculate_matrix::t8#0) -- vbsaa=vbsaa_minus_pbsc1_derefidx_vbsz1 + ldy t8 + sec + sbc COSQ,y + //SEG127 [99] *((const signed byte[9]) rotation_matrix#0+(byte/signed byte/word/signed word/dword/signed dword) 7) ← (signed byte~) calculate_matrix::$33 -- _deref_pbsc1=vbsaa + sta rotation_matrix+7 + //SEG128 [100] (signed byte~) calculate_matrix::$34 ← *((const signed byte*) COSH#0 + (signed byte) calculate_matrix::t9#0) + *((const signed byte*) COSH#0 + (signed byte) calculate_matrix::t10#0) -- vbsaa=pbsc1_derefidx_vbsz1_plus_pbsc1_derefidx_vbsz2 + ldx t9 + ldy t10 + clc + lda COSH,x + adc COSH,y + //SEG129 [101] *((const signed byte[9]) rotation_matrix#0+(byte/signed byte/word/signed word/dword/signed dword) 8) ← (signed byte~) calculate_matrix::$34 -- _deref_pbsc1=vbsaa sta rotation_matrix+8 jmp breturn - //SEG341 calculate_matrix_16::@return + //SEG130 calculate_matrix::@return breturn: - //SEG342 [207] return + //SEG131 [102] return rts } -//SEG343 debug_print_init -debug_print_init: { - .label COLS = $d800 - .label at_line = SCREEN+$10*$28 - .label at_cols = COLS+$10*$28 - .label _59 = 7 - .label _60 = 7 - .label _63 = 7 - .label _64 = 7 - .label _67 = 7 - .label _68 = 7 - .label _71 = 7 - .label _72 = 7 - .label _75 = 7 - .label _76 = 7 - .label _79 = 7 - .label _80 = 7 - .label _83 = 7 - .label _84 = 7 - .label _87 = 7 - .label _88 = 7 - .label _91 = 7 - .label _92 = 7 - .label col = 4 - .label c = 2 - .label i = 3 - //SEG344 [209] call print_cls - //SEG345 [286] phi from debug_print_init to print_cls [phi:debug_print_init->print_cls] - print_cls_from_debug_print_init: - jsr print_cls - //SEG346 [210] phi from debug_print_init to debug_print_init::@5 [phi:debug_print_init->debug_print_init::@5] - b5_from_debug_print_init: - jmp b5 - //SEG347 debug_print_init::@5 - b5: - //SEG348 [211] call print_str_at - //SEG349 [279] phi from debug_print_init::@5 to print_str_at [phi:debug_print_init::@5->print_str_at] - print_str_at_from_b5: - //SEG350 [279] phi (byte*) print_str_at::at#15 = (const byte*) SCREEN#0+(byte/signed byte/word/signed word/dword/signed dword) 34 [phi:debug_print_init::@5->print_str_at#0] -- pbuz1=pbuc1 - lda #SCREEN+$22 - sta print_str_at.at+1 - //SEG351 [279] phi (byte*) print_str_at::str#15 = (const string) debug_print_init::str [phi:debug_print_init::@5->print_str_at#1] -- pbuz1=pbuc1 - lda #str - sta print_str_at.str+1 - jsr print_str_at - //SEG352 [212] phi from debug_print_init::@5 to debug_print_init::@6 [phi:debug_print_init::@5->debug_print_init::@6] - b6_from_b5: - jmp b6 - //SEG353 debug_print_init::@6 - b6: - //SEG354 [213] call print_str_at - //SEG355 [279] phi from debug_print_init::@6 to print_str_at [phi:debug_print_init::@6->print_str_at] - print_str_at_from_b6: - //SEG356 [279] phi (byte*) print_str_at::at#15 = (const byte*) SCREEN#0+(byte/signed byte/word/signed word/dword/signed dword) 40*(byte/signed byte/word/signed word/dword/signed dword) 1+(byte/signed byte/word/signed word/dword/signed dword) 34 [phi:debug_print_init::@6->print_str_at#0] -- pbuz1=pbuc1 - lda #SCREEN+$28*1+$22 - sta print_str_at.at+1 - //SEG357 [279] phi (byte*) print_str_at::str#15 = (const string) debug_print_init::str1 [phi:debug_print_init::@6->print_str_at#1] -- pbuz1=pbuc1 - lda #str1 - sta print_str_at.str+1 - jsr print_str_at - //SEG358 [214] phi from debug_print_init::@6 to debug_print_init::@7 [phi:debug_print_init::@6->debug_print_init::@7] - b7_from_b6: - jmp b7 - //SEG359 debug_print_init::@7 - b7: - //SEG360 [215] call print_str_at - //SEG361 [279] phi from debug_print_init::@7 to print_str_at [phi:debug_print_init::@7->print_str_at] - print_str_at_from_b7: - //SEG362 [279] phi (byte*) print_str_at::at#15 = (const byte*) SCREEN#0+(byte/signed byte/word/signed word/dword/signed dword) 40*(byte/signed byte/word/signed word/dword/signed dword) 2+(byte/signed byte/word/signed word/dword/signed dword) 34 [phi:debug_print_init::@7->print_str_at#0] -- pbuz1=pbuc1 - lda #SCREEN+$28*2+$22 - sta print_str_at.at+1 - //SEG363 [279] phi (byte*) print_str_at::str#15 = (const string) debug_print_init::str2 [phi:debug_print_init::@7->print_str_at#1] -- pbuz1=pbuc1 - lda #str2 - sta print_str_at.str+1 - jsr print_str_at - //SEG364 [216] phi from debug_print_init::@7 to debug_print_init::@8 [phi:debug_print_init::@7->debug_print_init::@8] - b8_from_b7: - jmp b8 - //SEG365 debug_print_init::@8 - b8: - //SEG366 [217] call print_str_at - //SEG367 [279] phi from debug_print_init::@8 to print_str_at [phi:debug_print_init::@8->print_str_at] - print_str_at_from_b8: - //SEG368 [279] phi (byte*) print_str_at::at#15 = (const byte*) SCREEN#0+(byte/signed byte/word/signed word/dword/signed dword) 40*(byte/signed byte/word/signed word/dword/signed dword) 16 [phi:debug_print_init::@8->print_str_at#0] -- pbuz1=pbuc1 - lda #SCREEN+$28*$10 - sta print_str_at.at+1 - //SEG369 [279] phi (byte*) print_str_at::str#15 = (const string) debug_print_init::str3 [phi:debug_print_init::@8->print_str_at#1] -- pbuz1=pbuc1 - lda #str3 - sta print_str_at.str+1 - jsr print_str_at - //SEG370 [218] phi from debug_print_init::@8 to debug_print_init::@9 [phi:debug_print_init::@8->debug_print_init::@9] - b9_from_b8: - jmp b9 - //SEG371 debug_print_init::@9 - b9: - //SEG372 [219] call print_str_at - //SEG373 [279] phi from debug_print_init::@9 to print_str_at [phi:debug_print_init::@9->print_str_at] - print_str_at_from_b9: - //SEG374 [279] phi (byte*) print_str_at::at#15 = (const byte*) SCREEN#0+(byte/signed byte/word/signed word/dword/signed dword) 40*(byte/signed byte/word/signed word/dword/signed dword) 17 [phi:debug_print_init::@9->print_str_at#0] -- pbuz1=pbuc1 - lda #SCREEN+$28*$11 - sta print_str_at.at+1 - //SEG375 [279] phi (byte*) print_str_at::str#15 = (const string) debug_print_init::str4 [phi:debug_print_init::@9->print_str_at#1] -- pbuz1=pbuc1 - lda #str4 - sta print_str_at.str+1 - jsr print_str_at - //SEG376 [220] phi from debug_print_init::@9 to debug_print_init::@10 [phi:debug_print_init::@9->debug_print_init::@10] - b10_from_b9: - jmp b10 - //SEG377 debug_print_init::@10 - b10: - //SEG378 [221] call print_str_at - //SEG379 [279] phi from debug_print_init::@10 to print_str_at [phi:debug_print_init::@10->print_str_at] - print_str_at_from_b10: - //SEG380 [279] phi (byte*) print_str_at::at#15 = (const byte*) SCREEN#0+(byte/signed byte/word/signed word/dword/signed dword) 40*(byte/signed byte/word/signed word/dword/signed dword) 18 [phi:debug_print_init::@10->print_str_at#0] -- pbuz1=pbuc1 - lda #SCREEN+$28*$12 - sta print_str_at.at+1 - //SEG381 [279] phi (byte*) print_str_at::str#15 = (const string) debug_print_init::str5 [phi:debug_print_init::@10->print_str_at#1] -- pbuz1=pbuc1 - lda #str5 - sta print_str_at.str+1 - jsr print_str_at - //SEG382 [222] phi from debug_print_init::@10 to debug_print_init::@11 [phi:debug_print_init::@10->debug_print_init::@11] - b11_from_b10: - jmp b11 - //SEG383 debug_print_init::@11 - b11: - //SEG384 [223] call print_str_at - //SEG385 [279] phi from debug_print_init::@11 to print_str_at [phi:debug_print_init::@11->print_str_at] - print_str_at_from_b11: - //SEG386 [279] phi (byte*) print_str_at::at#15 = (const byte*) SCREEN#0+(byte/signed byte/word/signed word/dword/signed dword) 40*(byte/signed byte/word/signed word/dword/signed dword) 19 [phi:debug_print_init::@11->print_str_at#0] -- pbuz1=pbuc1 - lda #SCREEN+$28*$13 - sta print_str_at.at+1 - //SEG387 [279] phi (byte*) print_str_at::str#15 = (const string) debug_print_init::str6 [phi:debug_print_init::@11->print_str_at#1] -- pbuz1=pbuc1 - lda #str6 - sta print_str_at.str+1 - jsr print_str_at - //SEG388 [224] phi from debug_print_init::@11 to debug_print_init::@12 [phi:debug_print_init::@11->debug_print_init::@12] - b12_from_b11: - jmp b12 - //SEG389 debug_print_init::@12 - b12: - //SEG390 [225] call print_str_at - //SEG391 [279] phi from debug_print_init::@12 to print_str_at [phi:debug_print_init::@12->print_str_at] - print_str_at_from_b12: - //SEG392 [279] phi (byte*) print_str_at::at#15 = (const byte*) SCREEN#0+(byte/signed byte/word/signed word/dword/signed dword) 40*(byte/signed byte/word/signed word/dword/signed dword) 20 [phi:debug_print_init::@12->print_str_at#0] -- pbuz1=pbuc1 - lda #SCREEN+$28*$14 - sta print_str_at.at+1 - //SEG393 [279] phi (byte*) print_str_at::str#15 = (const string) debug_print_init::str7 [phi:debug_print_init::@12->print_str_at#1] -- pbuz1=pbuc1 - lda #str7 - sta print_str_at.str+1 - jsr print_str_at - //SEG394 [226] phi from debug_print_init::@12 to debug_print_init::@13 [phi:debug_print_init::@12->debug_print_init::@13] - b13_from_b12: - jmp b13 - //SEG395 debug_print_init::@13 - b13: - //SEG396 [227] call print_str_at - //SEG397 [279] phi from debug_print_init::@13 to print_str_at [phi:debug_print_init::@13->print_str_at] - print_str_at_from_b13: - //SEG398 [279] phi (byte*) print_str_at::at#15 = (const byte*) SCREEN#0+(byte/signed byte/word/signed word/dword/signed dword) 40*(byte/signed byte/word/signed word/dword/signed dword) 21 [phi:debug_print_init::@13->print_str_at#0] -- pbuz1=pbuc1 - lda #SCREEN+$28*$15 - sta print_str_at.at+1 - //SEG399 [279] phi (byte*) print_str_at::str#15 = (const string) debug_print_init::str8 [phi:debug_print_init::@13->print_str_at#1] -- pbuz1=pbuc1 - lda #str8 - sta print_str_at.str+1 - jsr print_str_at - //SEG400 [228] phi from debug_print_init::@13 to debug_print_init::@14 [phi:debug_print_init::@13->debug_print_init::@14] - b14_from_b13: - jmp b14 - //SEG401 debug_print_init::@14 - b14: - //SEG402 [229] call print_str_at - //SEG403 [279] phi from debug_print_init::@14 to print_str_at [phi:debug_print_init::@14->print_str_at] - print_str_at_from_b14: - //SEG404 [279] phi (byte*) print_str_at::at#15 = (const byte*) SCREEN#0+(byte/signed byte/word/signed word/dword/signed dword) 40*(byte/signed byte/word/signed word/dword/signed dword) 22 [phi:debug_print_init::@14->print_str_at#0] -- pbuz1=pbuc1 - lda #SCREEN+$28*$16 - sta print_str_at.at+1 - //SEG405 [279] phi (byte*) print_str_at::str#15 = (const string) debug_print_init::str9 [phi:debug_print_init::@14->print_str_at#1] -- pbuz1=pbuc1 - lda #str9 - sta print_str_at.str+1 - jsr print_str_at - //SEG406 [230] phi from debug_print_init::@14 to debug_print_init::@15 [phi:debug_print_init::@14->debug_print_init::@15] - b15_from_b14: - jmp b15 - //SEG407 debug_print_init::@15 - b15: - //SEG408 [231] call print_str_at - //SEG409 [279] phi from debug_print_init::@15 to print_str_at [phi:debug_print_init::@15->print_str_at] - print_str_at_from_b15: - //SEG410 [279] phi (byte*) print_str_at::at#15 = (const byte*) SCREEN#0+(byte/signed byte/word/signed word/dword/signed dword) 40*(byte/signed byte/word/signed word/dword/signed dword) 23 [phi:debug_print_init::@15->print_str_at#0] -- pbuz1=pbuc1 - lda #SCREEN+$28*$17 - sta print_str_at.at+1 - //SEG411 [279] phi (byte*) print_str_at::str#15 = (const string) debug_print_init::str10 [phi:debug_print_init::@15->print_str_at#1] -- pbuz1=pbuc1 - lda #str10 - sta print_str_at.str+1 - jsr print_str_at - //SEG412 [232] phi from debug_print_init::@15 to debug_print_init::@16 [phi:debug_print_init::@15->debug_print_init::@16] - b16_from_b15: - jmp b16 - //SEG413 debug_print_init::@16 - b16: - //SEG414 [233] call print_str_at - //SEG415 [279] phi from debug_print_init::@16 to print_str_at [phi:debug_print_init::@16->print_str_at] - print_str_at_from_b16: - //SEG416 [279] phi (byte*) print_str_at::at#15 = (const byte*) SCREEN#0+(byte/signed byte/word/signed word/dword/signed dword) 40*(byte/signed byte/word/signed word/dword/signed dword) 24 [phi:debug_print_init::@16->print_str_at#0] -- pbuz1=pbuc1 - lda #SCREEN+$28*$18 - sta print_str_at.at+1 - //SEG417 [279] phi (byte*) print_str_at::str#15 = (const string) debug_print_init::str11 [phi:debug_print_init::@16->print_str_at#1] -- pbuz1=pbuc1 - lda #str11 - sta print_str_at.str+1 - jsr print_str_at - //SEG418 [234] phi from debug_print_init::@16 to debug_print_init::@1 [phi:debug_print_init::@16->debug_print_init::@1] - b1_from_b16: - //SEG419 [234] phi (byte) debug_print_init::i#2 = (byte/signed byte/word/signed word/dword/signed dword) 0 [phi:debug_print_init::@16->debug_print_init::@1#0] -- vbuz1=vbuc1 - lda #0 - sta i - //SEG420 [234] phi (byte) debug_print_init::c#2 = (byte/signed byte/word/signed word/dword/signed dword) 4 [phi:debug_print_init::@16->debug_print_init::@1#1] -- vbuz1=vbuc1 - lda #4 - sta c - jmp b1 - //SEG421 [234] phi from debug_print_init::@3 to debug_print_init::@1 [phi:debug_print_init::@3->debug_print_init::@1] - b1_from_b3: - //SEG422 [234] phi (byte) debug_print_init::i#2 = (byte) debug_print_init::i#1 [phi:debug_print_init::@3->debug_print_init::@1#0] -- register_copy - //SEG423 [234] phi (byte) debug_print_init::c#2 = (byte) debug_print_init::c#1 [phi:debug_print_init::@3->debug_print_init::@1#1] -- register_copy - jmp b1 - //SEG424 debug_print_init::@1 - b1: - //SEG425 [235] (byte*) print_sbyte_at::at#0 ← (const byte*) debug_print_init::at_line#0 + (byte) debug_print_init::c#2 -- pbuz1=pbuc1_plus_vbuz2 - lda c - clc - adc #at_line - adc #0 - sta print_sbyte_at.at+1 - //SEG426 [236] (signed byte) print_sbyte_at::b#1 ← *((const signed byte[8]) xs#0 + (byte) debug_print_init::i#2) -- vbsxx=pbsc1_derefidx_vbuz1 - ldx i - lda xs,x - tax - //SEG427 [237] call print_sbyte_at - //SEG428 [103] phi from debug_print_init::@1 to print_sbyte_at [phi:debug_print_init::@1->print_sbyte_at] - print_sbyte_at_from_b1: - //SEG429 [103] phi (byte*) print_sbyte_at::at#21 = (byte*) print_sbyte_at::at#0 [phi:debug_print_init::@1->print_sbyte_at#0] -- register_copy - //SEG430 [103] phi (signed byte) print_sbyte_at::b#22 = (signed byte) print_sbyte_at::b#1 [phi:debug_print_init::@1->print_sbyte_at#1] -- register_copy - jsr print_sbyte_at - jmp b18 - //SEG431 debug_print_init::@18 - b18: - //SEG432 [238] (byte*) print_sbyte_at::at#1 ← (const byte*) debug_print_init::at_line#0+(byte/signed byte/word/signed word/dword/signed dword) 40*(byte/signed byte/word/signed word/dword/signed dword) 1 + (byte) debug_print_init::c#2 -- pbuz1=pbuc1_plus_vbuz2 - lda c - clc - adc #at_line+$28*1 - adc #0 - sta print_sbyte_at.at+1 - //SEG433 [239] (signed byte) print_sbyte_at::b#2 ← *((const signed byte[8]) ys#0 + (byte) debug_print_init::i#2) -- vbsxx=pbsc1_derefidx_vbuz1 - ldx i - lda ys,x - tax - //SEG434 [240] call print_sbyte_at - //SEG435 [103] phi from debug_print_init::@18 to print_sbyte_at [phi:debug_print_init::@18->print_sbyte_at] - print_sbyte_at_from_b18: - //SEG436 [103] phi (byte*) print_sbyte_at::at#21 = (byte*) print_sbyte_at::at#1 [phi:debug_print_init::@18->print_sbyte_at#0] -- register_copy - //SEG437 [103] phi (signed byte) print_sbyte_at::b#22 = (signed byte) print_sbyte_at::b#2 [phi:debug_print_init::@18->print_sbyte_at#1] -- register_copy - jsr print_sbyte_at - jmp b19 - //SEG438 debug_print_init::@19 - b19: - //SEG439 [241] (byte*) print_sbyte_at::at#2 ← (const byte*) debug_print_init::at_line#0+(byte/signed byte/word/signed word/dword/signed dword) 40*(byte/signed byte/word/signed word/dword/signed dword) 2 + (byte) debug_print_init::c#2 -- pbuz1=pbuc1_plus_vbuz2 - lda c - clc - adc #at_line+$28*2 - adc #0 - sta print_sbyte_at.at+1 - //SEG440 [242] (signed byte) print_sbyte_at::b#3 ← *((const signed byte[8]) zs#0 + (byte) debug_print_init::i#2) -- vbsxx=pbsc1_derefidx_vbuz1 - ldx i - lda zs,x - tax - //SEG441 [243] call print_sbyte_at - //SEG442 [103] phi from debug_print_init::@19 to print_sbyte_at [phi:debug_print_init::@19->print_sbyte_at] - print_sbyte_at_from_b19: - //SEG443 [103] phi (byte*) print_sbyte_at::at#21 = (byte*) print_sbyte_at::at#2 [phi:debug_print_init::@19->print_sbyte_at#0] -- register_copy - //SEG444 [103] phi (signed byte) print_sbyte_at::b#22 = (signed byte) print_sbyte_at::b#3 [phi:debug_print_init::@19->print_sbyte_at#1] -- register_copy - jsr print_sbyte_at - //SEG445 [244] phi from debug_print_init::@19 to debug_print_init::@2 [phi:debug_print_init::@19->debug_print_init::@2] - b2_from_b19: - //SEG446 [244] phi (byte) debug_print_init::j#2 = (byte/signed byte/word/signed word/dword/signed dword) 0 [phi:debug_print_init::@19->debug_print_init::@2#0] -- vbuxx=vbuc1 - ldx #0 - jmp b2 - //SEG447 [244] phi from debug_print_init::@2 to debug_print_init::@2 [phi:debug_print_init::@2->debug_print_init::@2] - b2_from_b2: - //SEG448 [244] phi (byte) debug_print_init::j#2 = (byte) debug_print_init::j#1 [phi:debug_print_init::@2->debug_print_init::@2#0] -- register_copy - jmp b2 - //SEG449 debug_print_init::@2 - b2: - //SEG450 [245] (byte) debug_print_init::col#0 ← (byte/signed byte/word/signed word/dword/signed dword) 8 + (byte) debug_print_init::i#2 -- vbuz1=vbuc1_plus_vbuz2 - lda #8 - clc - adc i - sta col - //SEG451 [246] (byte*~) debug_print_init::$59 ← (const byte*) debug_print_init::at_cols#0 + (byte) debug_print_init::c#2 -- pbuz1=pbuc1_plus_vbuz2 - lda c - clc - adc #at_cols - adc #0 - sta _59+1 - //SEG452 [247] (byte*~) debug_print_init::$60 ← (byte*~) debug_print_init::$59 + (byte) debug_print_init::j#2 -- pbuz1=pbuz1_plus_vbuxx - txa - clc - adc _60 - sta _60 - lda #0 - adc _60+1 - sta _60+1 - //SEG453 [248] *((byte*~) debug_print_init::$60) ← (byte) debug_print_init::col#0 -- _deref_pbuz1=vbuz2 - lda col - ldy #0 - sta (_60),y - //SEG454 [249] (byte*~) debug_print_init::$63 ← (const byte*) debug_print_init::at_cols#0+(byte/signed byte/word/signed word/dword/signed dword) 40*(byte/signed byte/word/signed word/dword/signed dword) 1 + (byte) debug_print_init::c#2 -- pbuz1=pbuc1_plus_vbuz2 - lda c - clc - adc #at_cols+$28*1 - adc #0 - sta _63+1 - //SEG455 [250] (byte*~) debug_print_init::$64 ← (byte*~) debug_print_init::$63 + (byte) debug_print_init::j#2 -- pbuz1=pbuz1_plus_vbuxx - txa - clc - adc _64 - sta _64 - lda #0 - adc _64+1 - sta _64+1 - //SEG456 [251] *((byte*~) debug_print_init::$64) ← (byte) debug_print_init::col#0 -- _deref_pbuz1=vbuz2 - lda col - ldy #0 - sta (_64),y - //SEG457 [252] (byte*~) debug_print_init::$67 ← (const byte*) debug_print_init::at_cols#0+(byte/signed byte/word/signed word/dword/signed dword) 40*(byte/signed byte/word/signed word/dword/signed dword) 2 + (byte) debug_print_init::c#2 -- pbuz1=pbuc1_plus_vbuz2 - lda c - clc - adc #at_cols+$28*2 - adc #0 - sta _67+1 - //SEG458 [253] (byte*~) debug_print_init::$68 ← (byte*~) debug_print_init::$67 + (byte) debug_print_init::j#2 -- pbuz1=pbuz1_plus_vbuxx - txa - clc - adc _68 - sta _68 - lda #0 - adc _68+1 - sta _68+1 - //SEG459 [254] *((byte*~) debug_print_init::$68) ← (byte) debug_print_init::col#0 -- _deref_pbuz1=vbuz2 - lda col - ldy #0 - sta (_68),y - //SEG460 [255] (byte*~) debug_print_init::$71 ← (const byte*) debug_print_init::at_cols#0+(byte/signed byte/word/signed word/dword/signed dword) 40*(byte/signed byte/word/signed word/dword/signed dword) 3 + (byte) debug_print_init::c#2 -- pbuz1=pbuc1_plus_vbuz2 - lda c - clc - adc #at_cols+$28*3 - adc #0 - sta _71+1 - //SEG461 [256] (byte*~) debug_print_init::$72 ← (byte*~) debug_print_init::$71 + (byte) debug_print_init::j#2 -- pbuz1=pbuz1_plus_vbuxx - txa - clc - adc _72 - sta _72 - lda #0 - adc _72+1 - sta _72+1 - //SEG462 [257] *((byte*~) debug_print_init::$72) ← (byte) debug_print_init::col#0 -- _deref_pbuz1=vbuz2 - lda col - ldy #0 - sta (_72),y - //SEG463 [258] (byte*~) debug_print_init::$75 ← (const byte*) debug_print_init::at_cols#0+(byte/signed byte/word/signed word/dword/signed dword) 40*(byte/signed byte/word/signed word/dword/signed dword) 4 + (byte) debug_print_init::c#2 -- pbuz1=pbuc1_plus_vbuz2 - lda c - clc - adc #at_cols+$28*4 - adc #0 - sta _75+1 - //SEG464 [259] (byte*~) debug_print_init::$76 ← (byte*~) debug_print_init::$75 + (byte) debug_print_init::j#2 -- pbuz1=pbuz1_plus_vbuxx - txa - clc - adc _76 - sta _76 - lda #0 - adc _76+1 - sta _76+1 - //SEG465 [260] *((byte*~) debug_print_init::$76) ← (byte) debug_print_init::col#0 -- _deref_pbuz1=vbuz2 - lda col - ldy #0 - sta (_76),y - //SEG466 [261] (byte*~) debug_print_init::$79 ← (const byte*) debug_print_init::at_cols#0+(byte/signed byte/word/signed word/dword/signed dword) 40*(byte/signed byte/word/signed word/dword/signed dword) 5 + (byte) debug_print_init::c#2 -- pbuz1=pbuc1_plus_vbuz2 - lda c - clc - adc #at_cols+$28*5 - adc #0 - sta _79+1 - //SEG467 [262] (byte*~) debug_print_init::$80 ← (byte*~) debug_print_init::$79 + (byte) debug_print_init::j#2 -- pbuz1=pbuz1_plus_vbuxx - txa - clc - adc _80 - sta _80 - lda #0 - adc _80+1 - sta _80+1 - //SEG468 [263] *((byte*~) debug_print_init::$80) ← (byte) debug_print_init::col#0 -- _deref_pbuz1=vbuz2 - lda col - ldy #0 - sta (_80),y - //SEG469 [264] (byte*~) debug_print_init::$83 ← (const byte*) debug_print_init::at_cols#0+(byte/signed byte/word/signed word/dword/signed dword) 40*(byte/signed byte/word/signed word/dword/signed dword) 6 + (byte) debug_print_init::c#2 -- pbuz1=pbuc1_plus_vbuz2 - lda c - clc - adc #at_cols+$28*6 - adc #0 - sta _83+1 - //SEG470 [265] (byte*~) debug_print_init::$84 ← (byte*~) debug_print_init::$83 + (byte) debug_print_init::j#2 -- pbuz1=pbuz1_plus_vbuxx - txa - clc - adc _84 - sta _84 - lda #0 - adc _84+1 - sta _84+1 - //SEG471 [266] *((byte*~) debug_print_init::$84) ← (byte) debug_print_init::col#0 -- _deref_pbuz1=vbuz2 - lda col - ldy #0 - sta (_84),y - //SEG472 [267] (byte*~) debug_print_init::$87 ← (const byte*) debug_print_init::at_cols#0+(byte/signed byte/word/signed word/dword/signed dword) 40*(byte/signed byte/word/signed word/dword/signed dword) 7 + (byte) debug_print_init::c#2 -- pbuz1=pbuc1_plus_vbuz2 - lda c - clc - adc #at_cols+$28*7 - adc #0 - sta _87+1 - //SEG473 [268] (byte*~) debug_print_init::$88 ← (byte*~) debug_print_init::$87 + (byte) debug_print_init::j#2 -- pbuz1=pbuz1_plus_vbuxx - txa - clc - adc _88 - sta _88 - lda #0 - adc _88+1 - sta _88+1 - //SEG474 [269] *((byte*~) debug_print_init::$88) ← (byte) debug_print_init::col#0 -- _deref_pbuz1=vbuz2 - lda col - ldy #0 - sta (_88),y - //SEG475 [270] (byte*~) debug_print_init::$91 ← (const byte*) debug_print_init::at_cols#0+(byte/signed byte/word/signed word/dword/signed dword) 40*(byte/signed byte/word/signed word/dword/signed dword) 8 + (byte) debug_print_init::c#2 -- pbuz1=pbuc1_plus_vbuz2 - lda c - clc - adc #at_cols+$28*8 - adc #0 - sta _91+1 - //SEG476 [271] (byte*~) debug_print_init::$92 ← (byte*~) debug_print_init::$91 + (byte) debug_print_init::j#2 -- pbuz1=pbuz1_plus_vbuxx - txa - clc - adc _92 - sta _92 - lda #0 - adc _92+1 - sta _92+1 - //SEG477 [272] *((byte*~) debug_print_init::$92) ← (byte) debug_print_init::col#0 -- _deref_pbuz1=vbuz2 - lda col - ldy #0 - sta (_92),y - //SEG478 [273] (byte) debug_print_init::j#1 ← ++ (byte) debug_print_init::j#2 -- vbuxx=_inc_vbuxx - inx - //SEG479 [274] if((byte) debug_print_init::j#1!=(byte/signed byte/word/signed word/dword/signed dword) 4) goto debug_print_init::@2 -- vbuxx_neq_vbuc1_then_la1 - cpx #4 - bne b2_from_b2 - jmp b3 - //SEG480 debug_print_init::@3 - b3: - //SEG481 [275] (byte) debug_print_init::c#1 ← (byte) debug_print_init::c#2 + (byte/signed byte/word/signed word/dword/signed dword) 4 -- vbuz1=vbuz1_plus_vbuc1 - lda #4 - clc - adc c - sta c - //SEG482 [276] (byte) debug_print_init::i#1 ← ++ (byte) debug_print_init::i#2 -- vbuz1=_inc_vbuz1 - inc i - //SEG483 [277] if((byte) debug_print_init::i#1!=(byte/signed byte/word/signed word/dword/signed dword) 8) goto debug_print_init::@1 -- vbuz1_neq_vbuc1_then_la1 - lda i - cmp #8 - bne b1_from_b3 - jmp breturn - //SEG484 debug_print_init::@return - breturn: - //SEG485 [278] return - rts - str: .text "sx@" - str1: .text "sy@" - str2: .text "sz@" - str3: .text "x@" - str4: .text "y@" - str5: .text "z@" - str6: .text "xr@" - str7: .text "yr@" - str8: .text "zr@" - str9: .text "pp@" - str10: .text "xp@" - str11: .text "yp@" -} -//SEG486 print_str_at -print_str_at: { - .label at = $a - .label str = 7 - //SEG487 [280] phi from print_str_at print_str_at::@2 to print_str_at::@1 [phi:print_str_at/print_str_at::@2->print_str_at::@1] - b1_from_print_str_at: - b1_from_b2: - //SEG488 [280] phi (byte*) print_str_at::at#13 = (byte*) print_str_at::at#15 [phi:print_str_at/print_str_at::@2->print_str_at::@1#0] -- register_copy - //SEG489 [280] phi (byte*) print_str_at::str#13 = (byte*) print_str_at::str#15 [phi:print_str_at/print_str_at::@2->print_str_at::@1#1] -- register_copy - jmp b1 - //SEG490 print_str_at::@1 - b1: - //SEG491 [281] if(*((byte*) print_str_at::str#13)!=(byte) '@') goto print_str_at::@2 -- _deref_pbuz1_neq_vbuc1_then_la1 - ldy #0 - lda (str),y - cmp #'@' - bne b2 - jmp breturn - //SEG492 print_str_at::@return - breturn: - //SEG493 [282] return - rts - //SEG494 print_str_at::@2 - b2: - //SEG495 [283] *((byte*) print_str_at::at#13) ← *((byte*) print_str_at::str#13) -- _deref_pbuz1=_deref_pbuz2 - ldy #0 - lda (str),y - ldy #0 - sta (at),y - //SEG496 [284] (byte*) print_str_at::at#0 ← ++ (byte*) print_str_at::at#13 -- pbuz1=_inc_pbuz1 - inc at - bne !+ - inc at+1 - !: - //SEG497 [285] (byte*) print_str_at::str#0 ← ++ (byte*) print_str_at::str#13 -- pbuz1=_inc_pbuz1 - inc str - bne !+ - inc str+1 - !: - jmp b1_from_b2 -} -//SEG498 print_cls -print_cls: { - .label sc = 7 - //SEG499 [287] phi from print_cls to print_cls::@1 [phi:print_cls->print_cls::@1] - b1_from_print_cls: - //SEG500 [287] phi (byte*) print_cls::sc#2 = (const byte*) print_screen#0 [phi:print_cls->print_cls::@1#0] -- pbuz1=pbuc1 - lda #print_screen - sta sc+1 - jmp b1 - //SEG501 [287] phi from print_cls::@1 to print_cls::@1 [phi:print_cls::@1->print_cls::@1] - b1_from_b1: - //SEG502 [287] phi (byte*) print_cls::sc#2 = (byte*) print_cls::sc#1 [phi:print_cls::@1->print_cls::@1#0] -- register_copy - jmp b1 - //SEG503 print_cls::@1 - b1: - //SEG504 [288] *((byte*) print_cls::sc#2) ← (byte) ' ' -- _deref_pbuz1=vbuc1 - lda #' ' - ldy #0 - sta (sc),y - //SEG505 [289] (byte*) print_cls::sc#1 ← ++ (byte*) print_cls::sc#2 -- pbuz1=_inc_pbuz1 - inc sc - bne !+ - inc sc+1 - !: - //SEG506 [290] if((byte*) print_cls::sc#1!=(const byte*) print_screen#0+(word/signed word/dword/signed dword) 1000) goto print_cls::@1 -- pbuz1_neq_pbuc1_then_la1 - lda sc+1 - cmp #>print_screen+$3e8 - bne b1_from_b1 - lda sc - cmp #sprites_init::@1] + //SEG134 [104] phi from sprites_init to sprites_init::@1 [phi:sprites_init->sprites_init::@1] b1_from_sprites_init: - //SEG512 [293] phi (byte) sprites_init::i#2 = (byte/signed byte/word/signed word/dword/signed dword) 0 [phi:sprites_init->sprites_init::@1#0] -- vbuxx=vbuc1 + //SEG135 [104] phi (byte) sprites_init::i#2 = (byte/signed byte/word/signed word/dword/signed dword) 0 [phi:sprites_init->sprites_init::@1#0] -- vbuxx=vbuc1 ldx #0 jmp b1 - //SEG513 [293] phi from sprites_init::@1 to sprites_init::@1 [phi:sprites_init::@1->sprites_init::@1] + //SEG136 [104] phi from sprites_init::@1 to sprites_init::@1 [phi:sprites_init::@1->sprites_init::@1] b1_from_b1: - //SEG514 [293] phi (byte) sprites_init::i#2 = (byte) sprites_init::i#1 [phi:sprites_init::@1->sprites_init::@1#0] -- register_copy + //SEG137 [104] phi (byte) sprites_init::i#2 = (byte) sprites_init::i#1 [phi:sprites_init::@1->sprites_init::@1#0] -- register_copy jmp b1 - //SEG515 sprites_init::@1 + //SEG138 sprites_init::@1 b1: - //SEG516 [294] *((const byte*) sprites_init::sprites_ptr#0 + (byte) sprites_init::i#2) ← ((byte))(const byte*) SPRITE#0/(byte/signed byte/word/signed word/dword/signed dword) 64 -- pbuc1_derefidx_vbuxx=vbuc2 + //SEG139 [105] *((const byte*) sprites_init::sprites_ptr#0 + (byte) sprites_init::i#2) ← ((byte))(const byte*) SPRITE#0/(byte/signed byte/word/signed word/dword/signed dword) 64 -- pbuc1_derefidx_vbuxx=vbuc2 lda #$ff&SPRITE/$40 sta sprites_ptr,x - //SEG517 [295] (byte/signed word/word/dword/signed dword~) sprites_init::$3 ← (byte/signed byte/word/signed word/dword/signed dword) 8 + (byte) sprites_init::i#2 -- vbuaa=vbuc1_plus_vbuxx - txa - clc - adc #8 - //SEG518 [296] *((const byte*) SPRITES_COLS#0 + (byte) sprites_init::i#2) ← (byte/signed word/word/dword/signed dword~) sprites_init::$3 -- pbuc1_derefidx_vbuxx=vbuaa + //SEG140 [106] *((const byte*) SPRITES_COLS#0 + (byte) sprites_init::i#2) ← (const byte) GREEN#0 -- pbuc1_derefidx_vbuxx=vbuc2 + lda #GREEN sta SPRITES_COLS,x - //SEG519 [297] (byte) sprites_init::i#1 ← ++ (byte) sprites_init::i#2 -- vbuxx=_inc_vbuxx + //SEG141 [107] (byte) sprites_init::i#1 ← ++ (byte) sprites_init::i#2 -- vbuxx=_inc_vbuxx inx - //SEG520 [298] if((byte) sprites_init::i#1!=(byte/signed byte/word/signed word/dword/signed dword) 8) goto sprites_init::@1 -- vbuxx_neq_vbuc1_then_la1 + //SEG142 [108] if((byte) sprites_init::i#1!=(byte/signed byte/word/signed word/dword/signed dword) 8) goto sprites_init::@1 -- vbuxx_neq_vbuc1_then_la1 cpx #8 bne b1_from_b1 jmp breturn - //SEG521 sprites_init::@return + //SEG143 sprites_init::@return breturn: - //SEG522 [299] return + //SEG144 [109] return rts } - print_hextab: .text "0123456789abcdef" + zs: .byte $34, $34, $34, $34, $34, $34, $34, $34 xrs: .fill 8, 0 yrs: .fill 8, 0 zrs: .fill 8, 0 @@ -9516,9 +3815,8 @@ sprites_init: { xps: .fill 8, 0 yps: .fill 8, 0 rotation_matrix: .fill 9, 0 - xs: .byte -$5f, $5f, 0, 0, 0, 0, 0, $3f - ys: .byte 0, 0, -$5f, $5f, 0, 0, 0, 0 - zs: .byte 0, 0, 0, 0, -$5f, $5f, -0, 0 + xs: .byte -$34, -$34, -$34, 0, 0, $34, $34, $34 + ys: .byte -$34, 0, $34, -$34, $34, -$34, 0, $34 .pc = mulf_sqr1 "Inline" .for(var i=0;i<$200;i++) { .if(i<=159) { .byte round((i*i)/256) } @@ -9621,10 +3919,9 @@ sprites_init: { ASSEMBLER OPTIMIZATIONS -Removing instruction jmp b29 +Removing instruction jmp b30 Removing instruction jmp bend Removing instruction jmp b1 -Removing instruction jmp b2 Removing instruction jmp breturn Removing instruction jmp b1 Removing instruction jmp b4 @@ -9633,63 +3930,13 @@ Removing instruction jmp b15 Removing instruction jmp b7 Removing instruction jmp b17 Removing instruction jmp b13 -Removing instruction jmp b18 -Removing instruction jmp b3 -Removing instruction jmp b4 -Removing instruction jmp b5 -Removing instruction jmp b6 -Removing instruction jmp b7 -Removing instruction jmp b8 -Removing instruction jmp b9 -Removing instruction jmp b10 -Removing instruction jmp b11 -Removing instruction jmp b12 -Removing instruction jmp b13 -Removing instruction jmp b1 -Removing instruction jmp b15 -Removing instruction jmp b16 -Removing instruction jmp b17 -Removing instruction jmp b18 -Removing instruction jmp b19 -Removing instruction jmp b20 -Removing instruction jmp breturn -Removing instruction jmp b3 -Removing instruction jmp b2 -Removing instruction jmp breturn -Removing instruction jmp b5 -Removing instruction jmp breturn -Removing instruction jmp b1 Removing instruction jmp breturn Removing instruction jmp breturn Removing instruction jmp breturn -Removing instruction jmp breturn -Removing instruction jmp b5 -Removing instruction jmp b6 -Removing instruction jmp b7 -Removing instruction jmp b8 -Removing instruction jmp b9 -Removing instruction jmp b10 -Removing instruction jmp b11 -Removing instruction jmp b12 -Removing instruction jmp b13 -Removing instruction jmp b14 -Removing instruction jmp b15 -Removing instruction jmp b16 -Removing instruction jmp b1 -Removing instruction jmp b18 -Removing instruction jmp b19 -Removing instruction jmp b2 -Removing instruction jmp b3 -Removing instruction jmp breturn -Removing instruction jmp b1 -Removing instruction jmp breturn -Removing instruction jmp b1 -Removing instruction jmp breturn Removing instruction jmp b1 Removing instruction jmp breturn Succesful ASM optimization Pass5NextJumpElimination Removing instruction lda #0 -Removing instruction lda #0 Removing instruction ldx i Removing instruction ldy i Removing instruction ldy i @@ -9698,89 +3945,23 @@ Removing instruction ldy i Removing instruction ldy i Replacing instruction lda i with TYA Replacing instruction ldx zr with TAX -Removing instruction lda _4+1 -Removing instruction lda _9+1 -Removing instruction lda _13+1 -Removing instruction lda _32+1 -Removing instruction lda _39+1 -Removing instruction lda _52+1 -Removing instruction lda _59+1 -Removing instruction lda _66+1 -Removing instruction lda _71+1 -Replacing instruction lda #0 with TYA -Removing instruction ldy #0 -Replacing instruction lda #0 with TYA -Removing instruction ldy #0 -Replacing instruction lda #0 with TYA -Removing instruction ldy #0 -Replacing instruction lda #0 with TYA -Removing instruction ldy #0 -Replacing instruction lda #0 with TYA -Removing instruction ldy #0 -Replacing instruction lda #0 with TYA -Removing instruction ldy #0 -Replacing instruction lda #0 with TYA -Removing instruction ldy #0 -Replacing instruction lda #0 with TYA -Removing instruction ldy #0 -Removing instruction ldy #0 +Removing instruction ldx t1 +Removing instruction ldx t3 Succesful ASM optimization Pass5UnnecesaryLoadElimination Replacing label b7_from_b17 with b7 Replacing label b1 with b4 -Replacing label b1_from_b20 with b1 -Replacing label b2_from_b5 with b2 -Replacing label b2_from_b2 with b2 -Replacing label b1_from_b3 with b1 -Replacing label b1_from_b2 with b1 -Replacing label b1_from_b1 with b1 -Replacing label b1_from_b1 with b1 Replacing label b1_from_b1 with b1 Removing instruction bbegin: -Removing instruction bend_from_b29: -Removing instruction b2_from_b1: -Removing instruction anim_from_b2: +Removing instruction bend_from_b30: Removing instruction b1: Removing instruction b15_from_b6: Removing instruction b7_from_b17: -Removing instruction b1_from_b20: -Removing instruction b2_from_b3: -Removing instruction b2_from_b5: -Removing instruction b5_from_debug_print_init: -Removing instruction print_str_at_from_b5: -Removing instruction b6_from_b5: -Removing instruction print_str_at_from_b6: -Removing instruction b7_from_b6: -Removing instruction print_str_at_from_b7: -Removing instruction b8_from_b7: -Removing instruction print_str_at_from_b8: -Removing instruction b9_from_b8: -Removing instruction print_str_at_from_b9: -Removing instruction b10_from_b9: -Removing instruction print_str_at_from_b10: -Removing instruction b11_from_b10: -Removing instruction print_str_at_from_b11: -Removing instruction b12_from_b11: -Removing instruction print_str_at_from_b12: -Removing instruction b13_from_b12: -Removing instruction print_str_at_from_b13: -Removing instruction b14_from_b13: -Removing instruction print_str_at_from_b14: -Removing instruction b15_from_b14: -Removing instruction print_str_at_from_b15: -Removing instruction b16_from_b15: -Removing instruction print_str_at_from_b16: -Removing instruction b1_from_b3: -Removing instruction b2_from_b2: -Removing instruction b1_from_print_str_at: -Removing instruction b1_from_b2: -Removing instruction b1_from_b1: Removing instruction b1_from_b1: Succesful ASM optimization Pass5RedundantLabelElimination -Removing instruction b29: +Removing instruction b30: Removing instruction bend: Removing instruction b1: -Removing instruction debug_print_init_from_b1: -Removing instruction b2: +Removing instruction anim_from_b1: Removing instruction breturn: Removing instruction b1_from_anim: Removing instruction b6: @@ -9788,109 +3969,29 @@ Removing instruction b15: Removing instruction b7_from_b15: Removing instruction b17: Removing instruction b13: -Removing instruction b18: -Removing instruction b1_from_b18: -Removing instruction print_sbyte_at_from_debug_print: -Removing instruction b3: -Removing instruction print_sbyte_at_from_b3: -Removing instruction b4: -Removing instruction print_sbyte_at_from_b4: -Removing instruction b5: -Removing instruction print_sbyte_at_from_b5: -Removing instruction b6: -Removing instruction print_sbyte_at_from_b6: -Removing instruction b7: -Removing instruction print_sbyte_at_from_b7: -Removing instruction b8: -Removing instruction print_sbyte_at_from_b8: -Removing instruction b9: -Removing instruction print_sbyte_at_from_b9: -Removing instruction b10: -Removing instruction print_sbyte_at_from_b10: -Removing instruction b11: -Removing instruction print_sbyte_at_from_b11: -Removing instruction b12: -Removing instruction print_sbyte_at_from_b12: -Removing instruction b13: -Removing instruction print_sbyte_at_from_b13: Removing instruction b1_from_b13: -Removing instruction print_sbyte_at_from_b1: -Removing instruction b15: -Removing instruction print_sbyte_at_from_b15: -Removing instruction b16: -Removing instruction print_sbyte_at_from_b16: -Removing instruction b17: -Removing instruction print_sbyte_at_from_b17: -Removing instruction b18: -Removing instruction print_sbyte_at_from_b18: -Removing instruction b19: -Removing instruction print_sbyte_at_from_b19: -Removing instruction b20: -Removing instruction breturn: -Removing instruction b3: -Removing instruction print_char_at_from_b3: -Removing instruction breturn: -Removing instruction print_char_at_from_b1: -Removing instruction b5: -Removing instruction breturn: -Removing instruction print_char_at_from_print_byte_at: -Removing instruction b1: -Removing instruction print_char_at_from_b1: Removing instruction breturn: Removing instruction breturn: Removing instruction breturn: -Removing instruction breturn: -Removing instruction print_cls_from_debug_print_init: -Removing instruction b5: -Removing instruction b6: -Removing instruction b7: -Removing instruction b8: -Removing instruction b9: -Removing instruction b10: -Removing instruction b11: -Removing instruction b12: -Removing instruction b13: -Removing instruction b14: -Removing instruction b15: -Removing instruction b16: -Removing instruction b1_from_b16: -Removing instruction print_sbyte_at_from_b1: -Removing instruction b18: -Removing instruction print_sbyte_at_from_b18: -Removing instruction b19: -Removing instruction print_sbyte_at_from_b19: -Removing instruction b2_from_b19: -Removing instruction b3: -Removing instruction breturn: -Removing instruction breturn: -Removing instruction b1_from_print_cls: -Removing instruction breturn: Removing instruction b1_from_sprites_init: Removing instruction breturn: Succesful ASM optimization Pass5UnusedLabelElimination Removing instruction jmp b7 Removing instruction jmp b1 -Removing instruction jmp b1 -Removing instruction jmp b2 -Removing instruction jmp b1 -Removing instruction jmp b1 Succesful ASM optimization Pass5NextJumpElimination -Fixing long branch [271] bne b1 to beq -Fixing long branch [1175] bne b2 to beq -Fixing long branch [1185] bne b1 to beq FINAL SYMBOL TABLE -(label) @29 +(label) @30 (label) @begin (label) @end (byte*) BORDERCOL (const byte*) BORDERCOL#0 BORDERCOL = ((byte*))(word/dword/signed dword) 53280 -(byte*) COSH_HI -(const byte*) COSH_HI#0 COSH_HI = (const byte*) SINH_HI#0+(byte/signed byte/word/signed word/dword/signed dword) 64 -(byte*) COSH_LO -(const byte*) COSH_LO#0 COSH_LO = (const byte*) SINH_LO#0+(byte/signed byte/word/signed word/dword/signed dword) 64 -(byte*) COSQ_HI -(const byte*) COSQ_HI#0 COSQ_HI = (const byte*) SINQ_HI#0+(byte/signed byte/word/signed word/dword/signed dword) 64 +(signed byte*) COSH +(const signed byte*) COSH#0 COSH = (const signed byte*) SINH#0+(byte/signed byte/word/signed word/dword/signed dword) 64 +(signed byte*) COSQ +(const signed byte*) COSQ#0 COSQ = (const signed byte*) SINQ#0+(byte/signed byte/word/signed word/dword/signed dword) 64 +(byte) GREEN +(const byte) GREEN#0 GREEN = (byte/signed byte/word/signed word/dword/signed dword) 5 (byte) LIGHT_BLUE (const byte) LIGHT_BLUE#0 LIGHT_BLUE = (byte/signed byte/word/signed word/dword/signed dword) 14 (byte) LIGHT_GREY @@ -9899,8 +4000,6 @@ FINAL SYMBOL TABLE (const signed byte*) PERSP_Z#0 PERSP_Z = ((signed byte*))(word/signed word/dword/signed dword) 10240 (byte*) RASTER (const byte*) RASTER#0 RASTER = ((byte*))(word/dword/signed dword) 53266 -(byte*) SCREEN -(const byte*) SCREEN#0 SCREEN = ((byte*))(word/signed word/dword/signed dword) 1024 (signed byte*) SINH (const signed byte*) SINH#0 SINH = ((signed byte*))(word/signed word/dword/signed dword) 8192 (byte*) SINH_HI @@ -9930,216 +4029,68 @@ FINAL SYMBOL TABLE (label) anim::@13 (label) anim::@15 (label) anim::@17 -(label) anim::@18 (label) anim::@4 (label) anim::@6 (label) anim::@7 (byte) anim::i -(byte) anim::i#1 i zp ZP_BYTE:5 151.5 -(byte) anim::i#2 i zp ZP_BYTE:5 71.29411764705881 +(byte) anim::i#1 i zp ZP_BYTE:4 151.5 +(byte) anim::i#2 i zp ZP_BYTE:4 71.29411764705881 (byte) anim::i2 (byte) anim::i2#0 reg byte x 75.75 -(void()) calculate_matrix_16((signed byte) calculate_matrix_16::sx , (signed byte) calculate_matrix_16::sy , (signed byte) calculate_matrix_16::sz) -(byte~) calculate_matrix_16::$10 reg byte a 2.0 -(signed word~) calculate_matrix_16::$13 $13 zp ZP_WORD:7 4.0 -(byte~) calculate_matrix_16::$14 reg byte a 2.0 -(signed word~) calculate_matrix_16::$28 $28 zp ZP_WORD:22 4.0 -(signed word~) calculate_matrix_16::$29 $29 zp ZP_WORD:22 4.0 -(signed word~) calculate_matrix_16::$30 $30 zp ZP_WORD:22 4.0 -(signed word~) calculate_matrix_16::$31 $31 zp ZP_WORD:22 4.0 -(signed word~) calculate_matrix_16::$32 $32 zp ZP_WORD:22 4.0 -(byte~) calculate_matrix_16::$33 reg byte a 2.0 -(signed word~) calculate_matrix_16::$35 $35 zp ZP_WORD:7 4.0 -(signed word~) calculate_matrix_16::$36 $36 zp ZP_WORD:16 4.0 -(signed word~) calculate_matrix_16::$37 $37 zp ZP_WORD:14 4.0 -(signed word~) calculate_matrix_16::$38 $38 zp ZP_WORD:18 4.0 -(signed word~) calculate_matrix_16::$39 $39 zp ZP_WORD:20 4.0 -(signed word~) calculate_matrix_16::$4 $4 zp ZP_WORD:7 4.0 -(byte~) calculate_matrix_16::$40 reg byte a 2.0 -(signed word~) calculate_matrix_16::$48 $48 zp ZP_WORD:22 4.0 -(signed word~) calculate_matrix_16::$49 $49 zp ZP_WORD:22 4.0 -(byte~) calculate_matrix_16::$5 reg byte a 2.0 -(signed word~) calculate_matrix_16::$50 $50 zp ZP_WORD:22 4.0 -(signed word~) calculate_matrix_16::$51 $51 zp ZP_WORD:22 4.0 -(signed word~) calculate_matrix_16::$52 $52 zp ZP_WORD:22 4.0 -(byte~) calculate_matrix_16::$53 reg byte a 2.0 -(signed word~) calculate_matrix_16::$55 $55 zp ZP_WORD:7 4.0 -(signed word~) calculate_matrix_16::$56 $56 zp ZP_WORD:16 4.0 -(signed word~) calculate_matrix_16::$57 $57 zp ZP_WORD:14 4.0 -(signed word~) calculate_matrix_16::$58 $58 zp ZP_WORD:18 4.0 -(signed word~) calculate_matrix_16::$59 $59 zp ZP_WORD:20 4.0 -(byte~) calculate_matrix_16::$60 reg byte a 2.0 -(signed word~) calculate_matrix_16::$66 $66 zp ZP_WORD:7 4.0 -(byte~) calculate_matrix_16::$67 reg byte a 2.0 -(signed word~) calculate_matrix_16::$71 $71 zp ZP_WORD:7 4.0 -(byte~) calculate_matrix_16::$72 reg byte a 2.0 -(word~) calculate_matrix_16::$74 $74 zp ZP_WORD:7 1.0 -(word~) calculate_matrix_16::$75 $75 zp ZP_WORD:10 2.0 -(word~) calculate_matrix_16::$76 $76 zp ZP_WORD:7 1.0 -(word~) calculate_matrix_16::$77 $77 zp ZP_WORD:10 2.0 -(word~) calculate_matrix_16::$78 $78 zp ZP_WORD:7 2.0 -(word~) calculate_matrix_16::$79 $79 zp ZP_WORD:7 0.15384615384615385 -(word~) calculate_matrix_16::$80 $80 zp ZP_WORD:10 0.16666666666666666 -(word~) calculate_matrix_16::$81 $81 zp ZP_WORD:14 0.15384615384615385 -(word~) calculate_matrix_16::$82 $82 zp ZP_WORD:16 0.18181818181818182 -(word~) calculate_matrix_16::$83 $83 zp ZP_WORD:18 0.16666666666666666 -(word~) calculate_matrix_16::$84 $84 zp ZP_WORD:20 0.16666666666666666 -(word~) calculate_matrix_16::$85 $85 zp ZP_WORD:7 0.15384615384615385 -(word~) calculate_matrix_16::$86 $86 zp ZP_WORD:10 0.16666666666666666 -(word~) calculate_matrix_16::$87 $87 zp ZP_WORD:14 0.15384615384615385 -(word~) calculate_matrix_16::$88 $88 zp ZP_WORD:16 0.18181818181818182 -(word~) calculate_matrix_16::$89 $89 zp ZP_WORD:18 0.16666666666666666 -(signed word~) calculate_matrix_16::$9 $9 zp ZP_WORD:7 4.0 -(word~) calculate_matrix_16::$90 $90 zp ZP_WORD:20 0.16666666666666666 -(word~) calculate_matrix_16::$91 $91 zp ZP_WORD:7 1.0 -(word~) calculate_matrix_16::$92 $92 zp ZP_WORD:10 2.0 -(word~) calculate_matrix_16::$93 $93 zp ZP_WORD:7 1.0 -(word~) calculate_matrix_16::$94 $94 zp ZP_WORD:10 2.0 -(label) calculate_matrix_16::@return -(signed word) calculate_matrix_16::cosh_t1 -(signed word) calculate_matrix_16::cosh_t10 -(signed word) calculate_matrix_16::cosh_t2 -(signed word) calculate_matrix_16::cosh_t3 -(signed word) calculate_matrix_16::cosh_t4 -(signed word) calculate_matrix_16::cosh_t9 -(signed word) calculate_matrix_16::cosq_t5 -(signed word) calculate_matrix_16::cosq_t6 -(signed word) calculate_matrix_16::cosq_t7 -(signed word) calculate_matrix_16::cosq_t8 -(signed word) calculate_matrix_16::sinh_sy -(signed word) calculate_matrix_16::sinh_t1 -(signed word) calculate_matrix_16::sinh_t10 -(signed word) calculate_matrix_16::sinh_t2 -(signed word) calculate_matrix_16::sinh_t3 -(signed word) calculate_matrix_16::sinh_t4 -(signed word) calculate_matrix_16::sinh_t9 -(signed word) calculate_matrix_16::sinq_t5 -(signed word) calculate_matrix_16::sinq_t6 -(signed word) calculate_matrix_16::sinq_t7 -(signed word) calculate_matrix_16::sinq_t8 -(signed byte) calculate_matrix_16::sx -(signed byte) calculate_matrix_16::sx#0 sx zp ZP_BYTE:2 0.40909090909090895 -(signed byte) calculate_matrix_16::sy -(signed byte) calculate_matrix_16::sy#0 sy zp ZP_BYTE:3 0.35384615384615387 -(signed byte) calculate_matrix_16::sz -(signed byte) calculate_matrix_16::sz#0 reg byte x 1.0555555555555558 -(signed byte) calculate_matrix_16::t1 -(signed byte) calculate_matrix_16::t1#0 t1 zp ZP_BYTE:5 0.7 -(signed byte) calculate_matrix_16::t10 -(signed byte) calculate_matrix_16::t10#0 reg byte y 1.4285714285714284 -(signed byte) calculate_matrix_16::t2 -(signed byte) calculate_matrix_16::t2#0 t2 zp ZP_BYTE:6 0.7 -(signed byte) calculate_matrix_16::t3 -(signed byte) calculate_matrix_16::t3#0 t3 zp ZP_BYTE:9 0.38461538461538464 -(signed byte) calculate_matrix_16::t4 -(signed byte) calculate_matrix_16::t4#0 reg byte x 0.38461538461538464 -(signed byte) calculate_matrix_16::t5 -(signed byte) calculate_matrix_16::t5#0 t5 zp ZP_BYTE:12 0.38461538461538464 -(signed byte) calculate_matrix_16::t6 -(signed byte) calculate_matrix_16::t6#0 t6 zp ZP_BYTE:13 0.38461538461538464 -(signed byte) calculate_matrix_16::t7 -(signed byte) calculate_matrix_16::t7#0 t7 zp ZP_BYTE:5 0.38461538461538464 -(signed byte) calculate_matrix_16::t8 -(signed byte) calculate_matrix_16::t8#0 t8 zp ZP_BYTE:6 0.38461538461538464 -(signed byte) calculate_matrix_16::t9 -(signed byte) calculate_matrix_16::t9#0 reg byte x 1.4285714285714284 -(void()) debug_print() -(label) debug_print::@1 -(label) debug_print::@10 -(label) debug_print::@11 -(label) debug_print::@12 -(label) debug_print::@13 -(label) debug_print::@15 -(label) debug_print::@16 -(label) debug_print::@17 -(label) debug_print::@18 -(label) debug_print::@19 -(label) debug_print::@20 -(label) debug_print::@3 -(label) debug_print::@4 -(label) debug_print::@5 -(label) debug_print::@6 -(label) debug_print::@7 -(label) debug_print::@8 -(label) debug_print::@9 -(label) debug_print::@return -(byte*) debug_print::at_line -(const byte*) debug_print::at_line#0 at_line = (const byte*) SCREEN#0+(byte/signed byte/word/signed word/dword/signed dword) 19*(byte/signed byte/word/signed word/dword/signed dword) 40 -(byte) debug_print::c -(byte) debug_print::c#1 c zp ZP_BYTE:5 67.33333333333333 -(byte) debug_print::c#2 c zp ZP_BYTE:5 42.52631578947369 -(byte) debug_print::i -(byte) debug_print::i#1 i zp ZP_BYTE:6 151.5 -(byte) debug_print::i#2 i zp ZP_BYTE:6 40.4 -(void()) debug_print_init() -(byte*~) debug_print_init::$59 $59 zp ZP_WORD:7 202.0 -(byte*~) debug_print_init::$60 $60 zp ZP_WORD:7 202.0 -(byte*~) debug_print_init::$63 $63 zp ZP_WORD:7 202.0 -(byte*~) debug_print_init::$64 $64 zp ZP_WORD:7 202.0 -(byte*~) debug_print_init::$67 $67 zp ZP_WORD:7 202.0 -(byte*~) debug_print_init::$68 $68 zp ZP_WORD:7 202.0 -(byte*~) debug_print_init::$71 $71 zp ZP_WORD:7 202.0 -(byte*~) debug_print_init::$72 $72 zp ZP_WORD:7 202.0 -(byte*~) debug_print_init::$75 $75 zp ZP_WORD:7 202.0 -(byte*~) debug_print_init::$76 $76 zp ZP_WORD:7 202.0 -(byte*~) debug_print_init::$79 $79 zp ZP_WORD:7 202.0 -(byte*~) debug_print_init::$80 $80 zp ZP_WORD:7 202.0 -(byte*~) debug_print_init::$83 $83 zp ZP_WORD:7 202.0 -(byte*~) debug_print_init::$84 $84 zp ZP_WORD:7 202.0 -(byte*~) debug_print_init::$87 $87 zp ZP_WORD:7 202.0 -(byte*~) debug_print_init::$88 $88 zp ZP_WORD:7 202.0 -(byte*~) debug_print_init::$91 $91 zp ZP_WORD:7 202.0 -(byte*~) debug_print_init::$92 $92 zp ZP_WORD:7 202.0 -(label) debug_print_init::@1 -(label) debug_print_init::@10 -(label) debug_print_init::@11 -(label) debug_print_init::@12 -(label) debug_print_init::@13 -(label) debug_print_init::@14 -(label) debug_print_init::@15 -(label) debug_print_init::@16 -(label) debug_print_init::@18 -(label) debug_print_init::@19 -(label) debug_print_init::@2 -(label) debug_print_init::@3 -(label) debug_print_init::@5 -(label) debug_print_init::@6 -(label) debug_print_init::@7 -(label) debug_print_init::@8 -(label) debug_print_init::@9 -(label) debug_print_init::@return -(byte*) debug_print_init::COLS -(const byte*) debug_print_init::COLS#0 COLS = ((byte*))(word/dword/signed dword) 55296 -(byte*) debug_print_init::at_cols -(const byte*) debug_print_init::at_cols#0 at_cols = (const byte*) debug_print_init::COLS#0+(byte/signed byte/word/signed word/dword/signed dword) 16*(byte/signed byte/word/signed word/dword/signed dword) 40 -(byte*) debug_print_init::at_line -(const byte*) debug_print_init::at_line#0 at_line = (const byte*) SCREEN#0+(byte/signed byte/word/signed word/dword/signed dword) 16*(byte/signed byte/word/signed word/dword/signed dword) 40 -(byte) debug_print_init::c -(byte) debug_print_init::c#1 c zp ZP_BYTE:2 7.333333333333333 -(byte) debug_print_init::c#2 c zp ZP_BYTE:2 23.512195121951223 -(byte) debug_print_init::col -(byte) debug_print_init::col#0 col zp ZP_BYTE:4 37.40740740740741 -(byte) debug_print_init::i -(byte) debug_print_init::i#1 i zp ZP_BYTE:3 16.5 -(byte) debug_print_init::i#2 i zp ZP_BYTE:3 3.7142857142857144 -(byte) debug_print_init::j -(byte) debug_print_init::j#1 reg byte x 151.5 -(byte) debug_print_init::j#2 reg byte x 38.31034482758621 -(const string) debug_print_init::str str = (string) "sx@" -(const string) debug_print_init::str1 str1 = (string) "sy@" -(const string) debug_print_init::str10 str10 = (string) "xp@" -(const string) debug_print_init::str11 str11 = (string) "yp@" -(const string) debug_print_init::str2 str2 = (string) "sz@" -(const string) debug_print_init::str3 str3 = (string) "x@" -(const string) debug_print_init::str4 str4 = (string) "y@" -(const string) debug_print_init::str5 str5 = (string) "z@" -(const string) debug_print_init::str6 str6 = (string) "xr@" -(const string) debug_print_init::str7 str7 = (string) "yr@" -(const string) debug_print_init::str8 str8 = (string) "zr@" -(const string) debug_print_init::str9 str9 = (string) "pp@" +(void()) calculate_matrix((signed byte) calculate_matrix::sx , (signed byte) calculate_matrix::sy , (signed byte) calculate_matrix::sz) +(signed byte~) calculate_matrix::$10 reg byte a 4.0 +(signed byte~) calculate_matrix::$11 reg byte a 4.0 +(signed byte~) calculate_matrix::$12 reg byte a 4.0 +(signed byte~) calculate_matrix::$13 reg byte a 4.0 +(signed byte~) calculate_matrix::$14 reg byte a 4.0 +(signed byte~) calculate_matrix::$15 reg byte a 4.0 +(signed byte~) calculate_matrix::$16 reg byte a 4.0 +(signed byte~) calculate_matrix::$17 reg byte a 4.0 +(signed byte~) calculate_matrix::$18 reg byte a 4.0 +(signed byte~) calculate_matrix::$19 reg byte a 4.0 +(signed byte~) calculate_matrix::$20 reg byte a 4.0 +(signed byte~) calculate_matrix::$21 reg byte a 4.0 +(signed byte~) calculate_matrix::$22 reg byte a 4.0 +(signed byte~) calculate_matrix::$23 reg byte a 4.0 +(signed byte~) calculate_matrix::$24 reg byte a 4.0 +(signed byte~) calculate_matrix::$25 reg byte a 4.0 +(signed byte~) calculate_matrix::$26 reg byte a 4.0 +(signed byte~) calculate_matrix::$27 reg byte a 4.0 +(signed byte~) calculate_matrix::$28 reg byte a 4.0 +(signed byte~) calculate_matrix::$29 reg byte a 4.0 +(signed byte~) calculate_matrix::$30 reg byte a 4.0 +(signed byte~) calculate_matrix::$31 reg byte a 4.0 +(signed byte~) calculate_matrix::$32 reg byte a 4.0 +(signed byte~) calculate_matrix::$33 reg byte a 4.0 +(signed byte~) calculate_matrix::$34 reg byte a 4.0 +(label) calculate_matrix::@return +(signed byte) calculate_matrix::sx +(signed byte) calculate_matrix::sx#0 reg byte x 2.4545454545454546 +(signed byte) calculate_matrix::sy +(signed byte) calculate_matrix::sy#0 sy zp ZP_BYTE:3 1.5333333333333332 +(signed byte) calculate_matrix::sz +(signed byte) calculate_matrix::t1 +(signed byte) calculate_matrix::t1#0 t1 zp ZP_BYTE:4 0.8333333333333333 +(signed byte) calculate_matrix::t10 +(signed byte) calculate_matrix::t10#0 t10 zp ZP_BYTE:12 0.18181818181818182 +(signed byte) calculate_matrix::t2 +(signed byte) calculate_matrix::t2#0 reg byte y 0.9090909090909092 +(signed byte) calculate_matrix::t3 +(signed byte) calculate_matrix::t3#0 t3 zp ZP_BYTE:5 0.29411764705882354 +(signed byte) calculate_matrix::t4 +(signed byte) calculate_matrix::t4#0 t4 zp ZP_BYTE:6 0.30303030303030304 +(signed byte) calculate_matrix::t5 +(signed byte) calculate_matrix::t5#0 t5 zp ZP_BYTE:7 0.29411764705882354 +(signed byte) calculate_matrix::t6 +(signed byte) calculate_matrix::t6#0 t6 zp ZP_BYTE:8 0.3125 +(signed byte) calculate_matrix::t7 +(signed byte) calculate_matrix::t7#0 t7 zp ZP_BYTE:9 0.30303030303030304 +(signed byte) calculate_matrix::t8 +(signed byte) calculate_matrix::t8#0 t8 zp ZP_BYTE:10 0.30303030303030304 +(signed byte) calculate_matrix::t9 +(signed byte) calculate_matrix::t9#0 t9 zp ZP_BYTE:11 0.1764705882352941 (void()) main() (label) main::@1 -(label) main::@2 (label) main::@return (byte*) mulf_sqr1 (const byte*) mulf_sqr1#0 mulf_sqr1 = ((byte*))(word/signed word/dword/signed dword) 9216 @@ -10149,90 +4100,6 @@ FINAL SYMBOL TABLE (const signed byte*) pp#0 pp = ((signed byte*))(byte/word/signed word/dword/signed dword) 243 (signed byte[8]) pps (const signed byte[8]) pps#0 pps = { fill( 8, 0) } -(void()) print_byte_at((byte) print_byte_at::b , (byte*) print_byte_at::at) -(byte~) print_byte_at::$0 reg byte a 4.0 -(byte~) print_byte_at::$2 reg byte x 2.0 -(label) print_byte_at::@1 -(label) print_byte_at::@return -(byte*) print_byte_at::at -(byte*) print_byte_at::at#0 at zp ZP_WORD:7 1.0 -(byte) print_byte_at::b -(void()) print_char_at((byte) print_char_at::ch , (byte*) print_char_at::at) -(label) print_char_at::@return -(byte*) print_char_at::at -(byte*) print_char_at::at#0 at zp ZP_WORD:7 4.0 -(byte*) print_char_at::at#1 at zp ZP_WORD:7 4.0 -(byte*) print_char_at::at#2 at zp ZP_WORD:7 4.0 -(byte*) print_char_at::at#3 at zp ZP_WORD:7 2.0 -(byte*) print_char_at::at#4 at zp ZP_WORD:7 10.0 -(byte) print_char_at::ch -(byte) print_char_at::ch#2 ch zp ZP_BYTE:9 2.0 -(byte) print_char_at::ch#3 ch zp ZP_BYTE:9 4.0 -(byte) print_char_at::ch#4 ch zp ZP_BYTE:9 6.0 -(void()) print_cls() -(label) print_cls::@1 -(label) print_cls::@return -(byte*) print_cls::sc -(byte*) print_cls::sc#1 sc zp ZP_WORD:7 16.5 -(byte*) print_cls::sc#2 sc zp ZP_WORD:7 16.5 -(byte[]) print_hextab -(const byte[]) print_hextab#0 print_hextab = (string) "0123456789abcdef" -(void()) print_sbyte_at((signed byte) print_sbyte_at::b , (byte*) print_sbyte_at::at) -(label) print_sbyte_at::@1 -(label) print_sbyte_at::@2 -(label) print_sbyte_at::@3 -(label) print_sbyte_at::@5 -(label) print_sbyte_at::@return -(byte*) print_sbyte_at::at -(byte*) print_sbyte_at::at#0 at zp ZP_WORD:7 11.0 -(byte*) print_sbyte_at::at#1 at zp ZP_WORD:7 11.0 -(byte*) print_sbyte_at::at#15 at zp ZP_WORD:7 101.0 -(byte*) print_sbyte_at::at#16 at zp ZP_WORD:7 101.0 -(byte*) print_sbyte_at::at#17 at zp ZP_WORD:7 101.0 -(byte*) print_sbyte_at::at#18 at zp ZP_WORD:7 101.0 -(byte*) print_sbyte_at::at#19 at zp ZP_WORD:7 101.0 -(byte*) print_sbyte_at::at#2 at zp ZP_WORD:7 11.0 -(byte*) print_sbyte_at::at#20 at zp ZP_WORD:7 101.0 -(byte*) print_sbyte_at::at#21 at zp ZP_WORD:7 80.625 -(signed byte) print_sbyte_at::b -(signed byte) print_sbyte_at::b#0 reg byte x 4.0 -(signed byte) print_sbyte_at::b#1 reg byte x 22.0 -(signed byte) print_sbyte_at::b#10 reg byte x 4.0 -(signed byte) print_sbyte_at::b#11 reg byte x 4.0 -(signed byte) print_sbyte_at::b#12 reg byte x 4.0 -(signed byte) print_sbyte_at::b#13 reg byte x 4.0 -(signed byte) print_sbyte_at::b#14 reg byte x 4.0 -(signed byte) print_sbyte_at::b#15 reg byte x 4.0 -(signed byte) print_sbyte_at::b#16 reg byte x 202.0 -(signed byte) print_sbyte_at::b#17 reg byte x 202.0 -(signed byte) print_sbyte_at::b#18 reg byte x 202.0 -(signed byte) print_sbyte_at::b#19 reg byte x 202.0 -(signed byte) print_sbyte_at::b#2 reg byte x 22.0 -(signed byte) print_sbyte_at::b#20 reg byte x 202.0 -(signed byte) print_sbyte_at::b#21 reg byte x 202.0 -(signed byte) print_sbyte_at::b#22 reg byte x 111.49999999999991 -(signed byte) print_sbyte_at::b#24 reg byte x 0.6666666666666666 -(signed byte) print_sbyte_at::b#3 reg byte x 22.0 -(signed byte) print_sbyte_at::b#4 reg byte x 4.0 -(signed byte) print_sbyte_at::b#5 reg byte x 4.0 -(signed byte) print_sbyte_at::b#6 reg byte x 4.0 -(signed byte) print_sbyte_at::b#7 reg byte x 4.0 -(signed byte) print_sbyte_at::b#8 reg byte x 4.0 -(signed byte) print_sbyte_at::b#9 reg byte x 4.0 -(byte*) print_screen -(const byte*) print_screen#0 print_screen = ((byte*))(word/signed word/dword/signed dword) 1024 -(void()) print_str_at((byte*) print_str_at::str , (byte*) print_str_at::at) -(label) print_str_at::@1 -(label) print_str_at::@2 -(label) print_str_at::@return -(byte*) print_str_at::at -(byte*) print_str_at::at#0 at zp ZP_WORD:10 11.0 -(byte*) print_str_at::at#13 at zp ZP_WORD:10 11.666666666666666 -(byte*) print_str_at::at#15 at zp ZP_WORD:10 2.0 -(byte*) print_str_at::str -(byte*) print_str_at::str#0 str zp ZP_WORD:7 22.0 -(byte*) print_str_at::str#13 str zp ZP_WORD:7 11.5 -(byte*) print_str_at::str#15 str zp ZP_WORD:7 2.0 (word*) psp1 (const word*) psp1#0 psp1 = ((word*))(byte/word/signed word/dword/signed dword) 246 (word*) psp2 @@ -10240,7 +4107,7 @@ FINAL SYMBOL TABLE (void()) rotate_matrix((signed byte) rotate_matrix::x , (signed byte) rotate_matrix::y , (signed byte) rotate_matrix::z) (label) rotate_matrix::@return (signed byte) rotate_matrix::x -(signed byte) rotate_matrix::x#0 x zp ZP_BYTE:6 34.33333333333333 +(signed byte) rotate_matrix::x#0 x zp ZP_BYTE:5 34.33333333333333 (signed byte) rotate_matrix::y (signed byte) rotate_matrix::y#0 reg byte y 34.33333333333333 (signed byte) rotate_matrix::z @@ -10248,27 +4115,25 @@ FINAL SYMBOL TABLE (signed byte[9]) rotation_matrix (const signed byte[9]) rotation_matrix#0 rotation_matrix = { fill( 9, 0) } (void()) sprites_init() -(byte/signed word/word/dword/signed dword~) sprites_init::$3 reg byte a 22.0 (label) sprites_init::@1 (label) sprites_init::@return (byte*) sprites_init::SCREEN (const byte*) sprites_init::SCREEN#0 SCREEN = ((byte*))(word/signed word/dword/signed dword) 1024 (byte) sprites_init::i (byte) sprites_init::i#1 reg byte x 16.5 -(byte) sprites_init::i#2 reg byte x 13.75 +(byte) sprites_init::i#2 reg byte x 14.666666666666666 (byte*) sprites_init::sprites_ptr (const byte*) sprites_init::sprites_ptr#0 sprites_ptr = (const byte*) sprites_init::SCREEN#0+(word/signed word/dword/signed dword) 1016 (void()) store_matrix() (label) store_matrix::@return (signed byte) sx -(signed byte) sx#10 sx zp ZP_BYTE:2 0.44871794871794873 -(signed byte) sx#3 sx zp ZP_BYTE:2 7.333333333333333 +(signed byte) sx#10 sx zp ZP_BYTE:2 1.1379310344827585 +(signed byte) sx#3 sx zp ZP_BYTE:2 11.0 (signed byte) sy -(signed byte) sy#10 sy zp ZP_BYTE:3 0.44303797468354433 -(signed byte) sy#3 sy zp ZP_BYTE:3 11.0 +(signed byte) sy#10 sy zp ZP_BYTE:3 1.0999999999999999 +(signed byte) sy#3 sy zp ZP_BYTE:3 22.0 (signed byte) sz -(signed byte) sz#10 sz zp ZP_BYTE:4 0.43750000000000006 -(signed byte) sz#3 sz zp ZP_BYTE:4 22.0 +(const signed byte) sz#0 sz = (byte/signed byte/word/signed word/dword/signed dword) 0 (signed byte*) xp (const signed byte*) xp#0 xp = ((signed byte*))(byte/word/signed word/dword/signed dword) 244 (signed byte[8]) xps @@ -10278,7 +4143,7 @@ FINAL SYMBOL TABLE (signed byte[8]) xrs (const signed byte[8]) xrs#0 xrs = { fill( 8, 0) } (signed byte[8]) xs -(const signed byte[8]) xs#0 xs = { -(byte/signed byte/word/signed word/dword/signed dword) 95, (byte/signed byte/word/signed word/dword/signed dword) 95, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 63 } +(const signed byte[8]) xs#0 xs = { -(byte/signed byte/word/signed word/dword/signed dword) 52, -(byte/signed byte/word/signed word/dword/signed dword) 52, -(byte/signed byte/word/signed word/dword/signed dword) 52, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 52, (byte/signed byte/word/signed word/dword/signed dword) 52, (byte/signed byte/word/signed word/dword/signed dword) 52 } (signed byte*) yp (const signed byte*) yp#0 yp = ((signed byte*))(byte/word/signed word/dword/signed dword) 245 (signed byte[8]) yps @@ -10288,57 +4153,62 @@ FINAL SYMBOL TABLE (signed byte[8]) yrs (const signed byte[8]) yrs#0 yrs = { fill( 8, 0) } (signed byte[8]) ys -(const signed byte[8]) ys#0 ys = { (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0, -(byte/signed byte/word/signed word/dword/signed dword) 95, (byte/signed byte/word/signed word/dword/signed dword) 95, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0 } +(const signed byte[8]) ys#0 ys = { -(byte/signed byte/word/signed word/dword/signed dword) 52, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 52, -(byte/signed byte/word/signed word/dword/signed dword) 52, (byte/signed byte/word/signed word/dword/signed dword) 52, -(byte/signed byte/word/signed word/dword/signed dword) 52, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 52 } (signed byte*) zr (const signed byte*) zr#0 zr = ((signed byte*))(byte/word/signed word/dword/signed dword) 242 (signed byte[8]) zrs (const signed byte[8]) zrs#0 zrs = { fill( 8, 0) } (signed byte[8]) zs -(const signed byte[8]) zs#0 zs = { (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0, -(byte/signed byte/word/signed word/dword/signed dword) 95, (byte/signed byte/word/signed word/dword/signed dword) 95, -(byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0 } +(const signed byte[8]) zs#0 zs = { (byte/signed byte/word/signed word/dword/signed dword) 52, (byte/signed byte/word/signed word/dword/signed dword) 52, (byte/signed byte/word/signed word/dword/signed dword) 52, (byte/signed byte/word/signed word/dword/signed dword) 52, (byte/signed byte/word/signed word/dword/signed dword) 52, (byte/signed byte/word/signed word/dword/signed dword) 52, (byte/signed byte/word/signed word/dword/signed dword) 52, (byte/signed byte/word/signed word/dword/signed dword) 52 } -zp ZP_BYTE:2 [ sx#10 sx#3 calculate_matrix_16::sx#0 debug_print_init::c#2 debug_print_init::c#1 ] -zp ZP_BYTE:3 [ sy#10 sy#3 calculate_matrix_16::sy#0 debug_print_init::i#2 debug_print_init::i#1 ] -zp ZP_BYTE:4 [ sz#10 sz#3 debug_print_init::col#0 ] -zp ZP_BYTE:5 [ anim::i#2 anim::i#1 debug_print::c#2 debug_print::c#1 calculate_matrix_16::t1#0 calculate_matrix_16::t7#0 ] -zp ZP_BYTE:6 [ debug_print::i#2 debug_print::i#1 rotate_matrix::x#0 calculate_matrix_16::t2#0 calculate_matrix_16::t8#0 ] -zp ZP_WORD:7 [ print_sbyte_at::at#21 print_sbyte_at::at#15 print_sbyte_at::at#16 print_sbyte_at::at#17 print_sbyte_at::at#18 print_sbyte_at::at#19 print_sbyte_at::at#20 print_sbyte_at::at#0 print_sbyte_at::at#1 print_sbyte_at::at#2 print_char_at::at#4 print_char_at::at#2 print_char_at::at#3 print_char_at::at#0 print_char_at::at#1 print_byte_at::at#0 print_str_at::str#13 print_str_at::str#15 print_str_at::str#0 print_cls::sc#2 print_cls::sc#1 calculate_matrix_16::$74 calculate_matrix_16::$4 calculate_matrix_16::$76 calculate_matrix_16::$9 calculate_matrix_16::$78 calculate_matrix_16::$13 calculate_matrix_16::$79 calculate_matrix_16::$35 calculate_matrix_16::$85 calculate_matrix_16::$55 calculate_matrix_16::$91 calculate_matrix_16::$66 calculate_matrix_16::$93 calculate_matrix_16::$71 debug_print_init::$59 debug_print_init::$60 debug_print_init::$63 debug_print_init::$64 debug_print_init::$67 debug_print_init::$68 debug_print_init::$71 debug_print_init::$72 debug_print_init::$75 debug_print_init::$76 debug_print_init::$79 debug_print_init::$80 debug_print_init::$83 debug_print_init::$84 debug_print_init::$87 debug_print_init::$88 debug_print_init::$91 debug_print_init::$92 ] -reg byte x [ print_sbyte_at::b#24 print_sbyte_at::b#0 print_sbyte_at::b#22 print_sbyte_at::b#4 print_sbyte_at::b#16 print_sbyte_at::b#12 print_sbyte_at::b#13 print_sbyte_at::b#14 print_sbyte_at::b#15 print_sbyte_at::b#17 print_sbyte_at::b#18 print_sbyte_at::b#19 print_sbyte_at::b#20 print_sbyte_at::b#21 print_sbyte_at::b#5 print_sbyte_at::b#6 print_sbyte_at::b#7 print_sbyte_at::b#8 print_sbyte_at::b#9 print_sbyte_at::b#10 print_sbyte_at::b#11 print_sbyte_at::b#1 print_sbyte_at::b#2 print_sbyte_at::b#3 ] -zp ZP_BYTE:9 [ print_char_at::ch#4 print_char_at::ch#2 print_char_at::ch#3 calculate_matrix_16::t3#0 ] -reg byte x [ debug_print_init::j#2 debug_print_init::j#1 ] -zp ZP_WORD:10 [ print_str_at::at#13 print_str_at::at#15 print_str_at::at#0 calculate_matrix_16::$75 calculate_matrix_16::$77 calculate_matrix_16::$80 calculate_matrix_16::$86 calculate_matrix_16::$92 calculate_matrix_16::$94 ] +zp ZP_BYTE:2 [ sx#10 sx#3 ] +zp ZP_BYTE:3 [ sy#10 sy#3 calculate_matrix::sy#0 ] +zp ZP_BYTE:4 [ anim::i#2 anim::i#1 calculate_matrix::t1#0 ] reg byte x [ sprites_init::i#2 sprites_init::i#1 ] -reg byte x [ calculate_matrix_16::sz#0 ] +reg byte x [ calculate_matrix::sx#0 ] +zp ZP_BYTE:5 [ rotate_matrix::x#0 calculate_matrix::t3#0 ] reg byte y [ rotate_matrix::y#0 ] reg byte x [ rotate_matrix::z#0 ] reg byte x [ anim::i2#0 ] reg byte a [ anim::$6 ] reg byte a [ anim::$8 ] -reg byte a [ print_byte_at::$0 ] -reg byte x [ print_byte_at::$2 ] -reg byte a [ calculate_matrix_16::$5 ] -reg byte a [ calculate_matrix_16::$10 ] -reg byte a [ calculate_matrix_16::$14 ] -reg byte x [ calculate_matrix_16::t4#0 ] -zp ZP_BYTE:12 [ calculate_matrix_16::t5#0 ] -zp ZP_BYTE:13 [ calculate_matrix_16::t6#0 ] -zp ZP_WORD:14 [ calculate_matrix_16::$81 calculate_matrix_16::$37 calculate_matrix_16::$87 calculate_matrix_16::$57 ] -zp ZP_WORD:16 [ calculate_matrix_16::$82 calculate_matrix_16::$36 calculate_matrix_16::$88 calculate_matrix_16::$56 ] -zp ZP_WORD:18 [ calculate_matrix_16::$83 calculate_matrix_16::$38 calculate_matrix_16::$89 calculate_matrix_16::$58 ] -zp ZP_WORD:20 [ calculate_matrix_16::$84 calculate_matrix_16::$39 calculate_matrix_16::$90 calculate_matrix_16::$59 ] -zp ZP_WORD:22 [ calculate_matrix_16::$28 calculate_matrix_16::$29 calculate_matrix_16::$30 calculate_matrix_16::$31 calculate_matrix_16::$32 calculate_matrix_16::$48 calculate_matrix_16::$49 calculate_matrix_16::$50 calculate_matrix_16::$51 calculate_matrix_16::$52 ] -reg byte a [ calculate_matrix_16::$33 ] -reg byte a [ calculate_matrix_16::$40 ] -reg byte a [ calculate_matrix_16::$53 ] -reg byte a [ calculate_matrix_16::$60 ] -reg byte x [ calculate_matrix_16::t9#0 ] -reg byte y [ calculate_matrix_16::t10#0 ] -reg byte a [ calculate_matrix_16::$67 ] -reg byte a [ calculate_matrix_16::$72 ] -reg byte a [ sprites_init::$3 ] +reg byte y [ calculate_matrix::t2#0 ] +zp ZP_BYTE:6 [ calculate_matrix::t4#0 ] +zp ZP_BYTE:7 [ calculate_matrix::t5#0 ] +zp ZP_BYTE:8 [ calculate_matrix::t6#0 ] +zp ZP_BYTE:9 [ calculate_matrix::t7#0 ] +zp ZP_BYTE:10 [ calculate_matrix::t8#0 ] +zp ZP_BYTE:11 [ calculate_matrix::t9#0 ] +zp ZP_BYTE:12 [ calculate_matrix::t10#0 ] +reg byte a [ calculate_matrix::$10 ] +reg byte a [ calculate_matrix::$11 ] +reg byte a [ calculate_matrix::$12 ] +reg byte a [ calculate_matrix::$13 ] +reg byte a [ calculate_matrix::$14 ] +reg byte a [ calculate_matrix::$15 ] +reg byte a [ calculate_matrix::$16 ] +reg byte a [ calculate_matrix::$17 ] +reg byte a [ calculate_matrix::$18 ] +reg byte a [ calculate_matrix::$19 ] +reg byte a [ calculate_matrix::$20 ] +reg byte a [ calculate_matrix::$21 ] +reg byte a [ calculate_matrix::$22 ] +reg byte a [ calculate_matrix::$23 ] +reg byte a [ calculate_matrix::$24 ] +reg byte a [ calculate_matrix::$25 ] +reg byte a [ calculate_matrix::$26 ] +reg byte a [ calculate_matrix::$27 ] +reg byte a [ calculate_matrix::$28 ] +reg byte a [ calculate_matrix::$29 ] +reg byte a [ calculate_matrix::$30 ] +reg byte a [ calculate_matrix::$31 ] +reg byte a [ calculate_matrix::$32 ] +reg byte a [ calculate_matrix::$33 ] +reg byte a [ calculate_matrix::$34 ] FINAL ASSEMBLER -Score: 84441 +Score: 19428 //SEG0 Basic Upstart .pc = $801 "Basic" @@ -10351,9 +4221,9 @@ Score: 84441 .label SPRITES_ENABLE = $d015 .label BORDERCOL = $d020 .label SPRITES_COLS = $d027 + .const GREEN = 5 .const LIGHT_BLUE = $e .const LIGHT_GREY = $f - .label print_screen = $400 .label xr = $f0 .label yr = $f1 .label zr = $f2 @@ -10362,7 +4232,7 @@ Score: 84441 .label yp = $f5 .label psp1 = $f6 .label psp2 = $f8 - .label SCREEN = $400 + .const sz = 0 .label mulf_sqr1 = $2400 .label mulf_sqr2 = $2600 .label SPRITE = $3000 @@ -10373,14 +4243,12 @@ Score: 84441 .label SINH_HI = $4200 .label SINQ_LO = $4400 .label SINQ_HI = $4600 - .label COSH_LO = SINH_LO+$40 - .label COSH_HI = SINH_HI+$40 - .label COSQ_HI = SINQ_HI+$40 + .label COSH = SINH+$40 + .label COSQ = SINQ+$40 .label sx = 2 .label sy = 3 - .label sz = 4 //SEG2 @begin -//SEG3 @29 +//SEG3 @30 //SEG4 kickasm(location (const byte*) mulf_sqr1#0) {{ .for(var i=0;i<$200;i++) { .if(i<=159) { .byte round((i*i)/256) } .if(i>159 && i<=351 ) { .byte round(((i-256)*(i-256))/256) } .if(i>351) { .byte round(((512-i)*(512-i))/256) } } }} //SEG5 kickasm(location (const byte*) mulf_sqr2#0) {{ .for(var i=0;i<$200;i++) { .if(i<=159) { .byte round((-i-1)*(-i-1)/256) } .if(i>159 && i<=351 ) { .byte round(((255-i)*(255-i))/256) } .if(i>351) { .byte round(((i-511)*(i-511))/256) } } }} //SEG6 kickasm(location (const byte*) SPRITE#0) {{ .var pic = LoadPicture("balloon.png", List().add($000000, $ffffff)) .for (var y=0; y<21; y++) .for (var x=0;x<3; x++) .byte pic.getSinglecolorByte(x,y) }} @@ -10393,7 +4261,7 @@ Score: 84441 //SEG13 kickasm(location (const byte*) SINQ_HI#0) {{ { .var min = -$1000 .var max = $1000 .var ampl = max-min; .for(var i=0;i<$140;i++) { .var rad = i*2*PI/256; .byte >(min+(ampl/2)+(ampl/2)*sin(rad)) } } }} //SEG14 [11] call main jsr main -//SEG15 [12] phi from @29 to @end [phi:@29->@end] +//SEG15 [12] phi from @30 to @end [phi:@30->@end] //SEG16 @end //SEG17 main main: { @@ -10412,539 +4280,139 @@ main: { sta psp2 lda #>mulf_sqr2 sta psp2+1 - //SEG23 [17] call debug_print_init - //SEG24 [208] phi from main::@1 to debug_print_init [phi:main::@1->debug_print_init] - jsr debug_print_init - //SEG25 [18] phi from main::@1 to main::@2 [phi:main::@1->main::@2] - //SEG26 main::@2 - //SEG27 [19] call anim - //SEG28 [21] phi from main::@2 to anim [phi:main::@2->anim] + //SEG23 [17] call anim + //SEG24 [19] phi from main::@1 to anim [phi:main::@1->anim] jsr anim - //SEG29 main::@return - //SEG30 [20] return + //SEG25 main::@return + //SEG26 [18] return rts } -//SEG31 anim +//SEG27 anim anim: { - .label i = 5 - //SEG32 [22] phi from anim to anim::@1 [phi:anim->anim::@1] - //SEG33 [22] phi (signed byte) sz#10 = (byte/signed byte/word/signed word/dword/signed dword) 0 [phi:anim->anim::@1#0] -- vbsz1=vbuc1 + .label i = 4 + //SEG28 [20] phi from anim to anim::@1 [phi:anim->anim::@1] + //SEG29 [20] phi (signed byte) sy#10 = (byte/signed byte/word/signed word/dword/signed dword) 0 [phi:anim->anim::@1#0] -- vbsz1=vbuc1 lda #0 - sta sz - //SEG34 [22] phi (signed byte) sy#10 = (byte/signed byte/word/signed word/dword/signed dword) 0 [phi:anim->anim::@1#1] -- vbsz1=vbuc1 sta sy - //SEG35 [22] phi (signed byte) sx#10 = (byte/signed byte/word/signed word/dword/signed dword) 0 [phi:anim->anim::@1#2] -- vbsz1=vbuc1 + //SEG30 [20] phi (signed byte) sx#10 = (byte/signed byte/word/signed word/dword/signed dword) 0 [phi:anim->anim::@1#1] -- vbsz1=vbuc1 sta sx - //SEG36 anim::@1 - //SEG37 anim::@4 + //SEG31 anim::@1 + //SEG32 anim::@4 b4: - //SEG38 [23] if(*((const byte*) RASTER#0)!=(byte/word/signed word/dword/signed dword) 255) goto anim::@4 -- _deref_pbuc1_neq_vbuc2_then_la1 + //SEG33 [21] if(*((const byte*) RASTER#0)!=(byte/word/signed word/dword/signed dword) 255) goto anim::@4 -- _deref_pbuc1_neq_vbuc2_then_la1 lda RASTER cmp #$ff bne b4 - //SEG39 anim::@6 - //SEG40 [24] *((const byte*) BORDERCOL#0) ← ++ *((const byte*) BORDERCOL#0) -- _deref_pbuc1=_inc__deref_pbuc1 + //SEG34 anim::@6 + //SEG35 [22] *((const byte*) BORDERCOL#0) ← ++ *((const byte*) BORDERCOL#0) -- _deref_pbuc1=_inc__deref_pbuc1 inc BORDERCOL - //SEG41 [25] (signed byte) calculate_matrix_16::sx#0 ← (signed byte) sx#10 - // (signed byte) calculate_matrix_16::sx#0 = (signed byte) sx#10 // register copy zp ZP_BYTE:2 - //SEG42 [26] (signed byte) calculate_matrix_16::sy#0 ← (signed byte) sy#10 - // (signed byte) calculate_matrix_16::sy#0 = (signed byte) sy#10 // register copy zp ZP_BYTE:3 - //SEG43 [27] (signed byte) calculate_matrix_16::sz#0 ← (signed byte) sz#10 -- vbsxx=vbsz1 - ldx sz - //SEG44 [28] call calculate_matrix_16 - jsr calculate_matrix_16 - //SEG45 [29] phi from anim::@6 to anim::@15 [phi:anim::@6->anim::@15] - //SEG46 anim::@15 - //SEG47 [30] call store_matrix + //SEG36 [23] (signed byte) calculate_matrix::sx#0 ← (signed byte) sx#10 -- vbsxx=vbsz1 + ldx sx + //SEG37 [24] (signed byte) calculate_matrix::sy#0 ← (signed byte) sy#10 + // (signed byte) calculate_matrix::sy#0 = (signed byte) sy#10 // register copy zp ZP_BYTE:3 + //SEG38 [25] call calculate_matrix + jsr calculate_matrix + //SEG39 [26] phi from anim::@6 to anim::@15 [phi:anim::@6->anim::@15] + //SEG40 anim::@15 + //SEG41 [27] call store_matrix jsr store_matrix - //SEG48 [31] phi from anim::@15 to anim::@7 [phi:anim::@15->anim::@7] - //SEG49 [31] phi (byte) anim::i#2 = (byte/signed byte/word/signed word/dword/signed dword) 0 [phi:anim::@15->anim::@7#0] -- vbuz1=vbuc1 + //SEG42 [28] phi from anim::@15 to anim::@7 [phi:anim::@15->anim::@7] + //SEG43 [28] phi (byte) anim::i#2 = (byte/signed byte/word/signed word/dword/signed dword) 0 [phi:anim::@15->anim::@7#0] -- vbuz1=vbuc1 lda #0 sta i - //SEG50 [31] phi from anim::@17 to anim::@7 [phi:anim::@17->anim::@7] - //SEG51 [31] phi (byte) anim::i#2 = (byte) anim::i#1 [phi:anim::@17->anim::@7#0] -- register_copy - //SEG52 anim::@7 + //SEG44 [28] phi from anim::@17 to anim::@7 [phi:anim::@17->anim::@7] + //SEG45 [28] phi (byte) anim::i#2 = (byte) anim::i#1 [phi:anim::@17->anim::@7#0] -- register_copy + //SEG46 anim::@7 b7: - //SEG53 [32] *((const byte*) BORDERCOL#0) ← ++ *((const byte*) BORDERCOL#0) -- _deref_pbuc1=_inc__deref_pbuc1 + //SEG47 [29] *((const byte*) BORDERCOL#0) ← ++ *((const byte*) BORDERCOL#0) -- _deref_pbuc1=_inc__deref_pbuc1 inc BORDERCOL - //SEG54 [33] (signed byte) rotate_matrix::x#0 ← *((const signed byte[8]) xs#0 + (byte) anim::i#2) -- vbsz1=pbsc1_derefidx_vbuz2 + //SEG48 [30] (signed byte) rotate_matrix::x#0 ← *((const signed byte[8]) xs#0 + (byte) anim::i#2) -- vbsz1=pbsc1_derefidx_vbuz2 ldy i lda xs,y sta rotate_matrix.x - //SEG55 [34] (signed byte) rotate_matrix::y#0 ← *((const signed byte[8]) ys#0 + (byte) anim::i#2) -- vbsyy=pbsc1_derefidx_vbuz1 + //SEG49 [31] (signed byte) rotate_matrix::y#0 ← *((const signed byte[8]) ys#0 + (byte) anim::i#2) -- vbsyy=pbsc1_derefidx_vbuz1 ldx i ldy ys,x - //SEG56 [35] (signed byte) rotate_matrix::z#0 ← *((const signed byte[8]) zs#0 + (byte) anim::i#2) -- vbsxx=pbsc1_derefidx_vbuz1 + //SEG50 [32] (signed byte) rotate_matrix::z#0 ← *((const signed byte[8]) zs#0 + (byte) anim::i#2) -- vbsxx=pbsc1_derefidx_vbuz1 lda zs,x tax - //SEG57 [36] call rotate_matrix + //SEG51 [33] call rotate_matrix jsr rotate_matrix - //SEG58 anim::@17 - //SEG59 [37] *((const signed byte[8]) xrs#0 + (byte) anim::i#2) ← *((const signed byte*) xr#0) -- pbsc1_derefidx_vbuz1=_deref_pbsc2 + //SEG52 anim::@17 + //SEG53 [34] *((const signed byte[8]) xrs#0 + (byte) anim::i#2) ← *((const signed byte*) xr#0) -- pbsc1_derefidx_vbuz1=_deref_pbsc2 ldy i lda xr sta xrs,y - //SEG60 [38] *((const signed byte[8]) yrs#0 + (byte) anim::i#2) ← *((const signed byte*) yr#0) -- pbsc1_derefidx_vbuz1=_deref_pbsc2 + //SEG54 [35] *((const signed byte[8]) yrs#0 + (byte) anim::i#2) ← *((const signed byte*) yr#0) -- pbsc1_derefidx_vbuz1=_deref_pbsc2 lda yr sta yrs,y - //SEG61 [39] *((const signed byte[8]) zrs#0 + (byte) anim::i#2) ← *((const signed byte*) zr#0) -- pbsc1_derefidx_vbuz1=_deref_pbsc2 + //SEG55 [36] *((const signed byte[8]) zrs#0 + (byte) anim::i#2) ← *((const signed byte*) zr#0) -- pbsc1_derefidx_vbuz1=_deref_pbsc2 lda zr sta zrs,y - //SEG62 [40] *((const signed byte[8]) pps#0 + (byte) anim::i#2) ← *((const signed byte*) pp#0) -- pbsc1_derefidx_vbuz1=_deref_pbsc2 + //SEG56 [37] *((const signed byte[8]) pps#0 + (byte) anim::i#2) ← *((const signed byte*) pp#0) -- pbsc1_derefidx_vbuz1=_deref_pbsc2 lda pp sta pps,y - //SEG63 [41] *((const signed byte[8]) xps#0 + (byte) anim::i#2) ← *((const signed byte*) xp#0) -- pbsc1_derefidx_vbuz1=_deref_pbsc2 + //SEG57 [38] *((const signed byte[8]) xps#0 + (byte) anim::i#2) ← *((const signed byte*) xp#0) -- pbsc1_derefidx_vbuz1=_deref_pbsc2 lda xp sta xps,y - //SEG64 [42] *((const signed byte[8]) yps#0 + (byte) anim::i#2) ← *((const signed byte*) yp#0) -- pbsc1_derefidx_vbuz1=_deref_pbsc2 + //SEG58 [39] *((const signed byte[8]) yps#0 + (byte) anim::i#2) ← *((const signed byte*) yp#0) -- pbsc1_derefidx_vbuz1=_deref_pbsc2 lda yp sta yps,y - //SEG65 [43] (byte) anim::i2#0 ← (byte) anim::i#2 << (byte/signed byte/word/signed word/dword/signed dword) 1 -- vbuxx=vbuz1_rol_1 + //SEG59 [40] (byte) anim::i2#0 ← (byte) anim::i#2 << (byte/signed byte/word/signed word/dword/signed dword) 1 -- vbuxx=vbuz1_rol_1 tya asl tax - //SEG66 [44] (byte/word/signed word/dword/signed dword~) anim::$6 ← (byte/word/signed word/dword/signed dword) 128 + (byte)*((const signed byte*) xr#0) -- vbuaa=vbuc1_plus__deref_pbuc2 + //SEG60 [41] (byte/word/signed word/dword/signed dword~) anim::$6 ← (byte/word/signed word/dword/signed dword) 128 + (byte)*((const signed byte*) xp#0) -- vbuaa=vbuc1_plus__deref_pbuc2 lda #$80 clc - adc xr - //SEG67 [45] *((const byte*) SPRITES_XPOS#0 + (byte) anim::i2#0) ← (byte/word/signed word/dword/signed dword~) anim::$6 -- pbuc1_derefidx_vbuxx=vbuaa + adc xp + //SEG61 [42] *((const byte*) SPRITES_XPOS#0 + (byte) anim::i2#0) ← (byte/word/signed word/dword/signed dword~) anim::$6 -- pbuc1_derefidx_vbuxx=vbuaa sta SPRITES_XPOS,x - //SEG68 [46] (byte/word/signed word/dword/signed dword~) anim::$8 ← (byte/word/signed word/dword/signed dword) 128 + (byte)*((const signed byte*) yr#0) -- vbuaa=vbuc1_plus__deref_pbuc2 + //SEG62 [43] (byte/word/signed word/dword/signed dword~) anim::$8 ← (byte/word/signed word/dword/signed dword) 128 + (byte)*((const signed byte*) yp#0) -- vbuaa=vbuc1_plus__deref_pbuc2 lda #$80 clc - adc yr - //SEG69 [47] *((const byte*) SPRITES_YPOS#0 + (byte) anim::i2#0) ← (byte/word/signed word/dword/signed dword~) anim::$8 -- pbuc1_derefidx_vbuxx=vbuaa + adc yp + //SEG63 [44] *((const byte*) SPRITES_YPOS#0 + (byte) anim::i2#0) ← (byte/word/signed word/dword/signed dword~) anim::$8 -- pbuc1_derefidx_vbuxx=vbuaa sta SPRITES_YPOS,x - //SEG70 [48] (byte) anim::i#1 ← ++ (byte) anim::i#2 -- vbuz1=_inc_vbuz1 + //SEG64 [45] (byte) anim::i#1 ← ++ (byte) anim::i#2 -- vbuz1=_inc_vbuz1 inc i - //SEG71 [49] if((byte) anim::i#1!=(byte/signed byte/word/signed word/dword/signed dword) 8) goto anim::@7 -- vbuz1_neq_vbuc1_then_la1 + //SEG65 [46] if((byte) anim::i#1!=(byte/signed byte/word/signed word/dword/signed dword) 8) goto anim::@7 -- vbuz1_neq_vbuc1_then_la1 lda i cmp #8 bne b7 - //SEG72 anim::@13 - //SEG73 [50] *((const byte*) BORDERCOL#0) ← (const byte) LIGHT_GREY#0 -- _deref_pbuc1=vbuc2 + //SEG66 anim::@13 + //SEG67 [47] *((const byte*) BORDERCOL#0) ← (const byte) LIGHT_GREY#0 -- _deref_pbuc1=vbuc2 lda #LIGHT_GREY sta BORDERCOL - //SEG74 [51] call debug_print - jsr debug_print - //SEG75 anim::@18 - //SEG76 [52] *((const byte*) BORDERCOL#0) ← (const byte) LIGHT_BLUE#0 -- _deref_pbuc1=vbuc2 + //SEG68 [48] *((const byte*) BORDERCOL#0) ← (const byte) LIGHT_BLUE#0 -- _deref_pbuc1=vbuc2 lda #LIGHT_BLUE sta BORDERCOL - //SEG77 [53] (signed byte) sx#3 ← (signed byte) sx#10 - (byte/signed byte/word/signed word/dword/signed dword) 1 -- vbsz1=vbsz1_minus_1 - dec sx - //SEG78 [54] (signed byte) sy#3 ← (signed byte) sy#10 + (byte/signed byte/word/signed word/dword/signed dword) 1 -- vbsz1=vbsz1_plus_1 - inc sy - //SEG79 [55] (signed byte) sz#3 ← (signed byte) sz#10 - (byte/signed byte/word/signed word/dword/signed dword) 1 -- vbsz1=vbsz1_minus_1 - dec sz - //SEG80 [22] phi from anim::@18 to anim::@1 [phi:anim::@18->anim::@1] - //SEG81 [22] phi (signed byte) sz#10 = (signed byte) sz#3 [phi:anim::@18->anim::@1#0] -- register_copy - //SEG82 [22] phi (signed byte) sy#10 = (signed byte) sy#3 [phi:anim::@18->anim::@1#1] -- register_copy - //SEG83 [22] phi (signed byte) sx#10 = (signed byte) sx#3 [phi:anim::@18->anim::@1#2] -- register_copy + //SEG69 [49] (signed byte) sx#3 ← (signed byte) sx#10 + (byte/signed byte/word/signed word/dword/signed dword) 2 -- vbsz1=vbsz1_plus_2 + inc sx + inc sx + //SEG70 [50] (signed byte) sy#3 ← (signed byte) sy#10 - (byte/signed byte/word/signed word/dword/signed dword) 3 -- vbsz1=vbsz1_minus_vbuc1 + lda sy + sec + sbc #3 + sta sy + //SEG71 [20] phi from anim::@13 to anim::@1 [phi:anim::@13->anim::@1] + //SEG72 [20] phi (signed byte) sy#10 = (signed byte) sy#3 [phi:anim::@13->anim::@1#0] -- register_copy + //SEG73 [20] phi (signed byte) sx#10 = (signed byte) sx#3 [phi:anim::@13->anim::@1#1] -- register_copy jmp b4 } -//SEG84 debug_print -debug_print: { - .label at_line = SCREEN+$13*$28 - .label c = 5 - .label i = 6 - //SEG85 [56] (signed byte) print_sbyte_at::b#4 ← (signed byte) sx#10 -- vbsxx=vbsz1 - ldx sx - //SEG86 [57] call print_sbyte_at - //SEG87 [103] phi from debug_print to print_sbyte_at [phi:debug_print->print_sbyte_at] - //SEG88 [103] phi (byte*) print_sbyte_at::at#21 = (const byte*) SCREEN#0+(byte/signed byte/word/signed word/dword/signed dword) 37 [phi:debug_print->print_sbyte_at#0] -- pbuz1=pbuc1 - lda #SCREEN+$25 - sta print_sbyte_at.at+1 - //SEG89 [103] phi (signed byte) print_sbyte_at::b#22 = (signed byte) print_sbyte_at::b#4 [phi:debug_print->print_sbyte_at#1] -- register_copy - jsr print_sbyte_at - //SEG90 debug_print::@3 - //SEG91 [58] (signed byte) print_sbyte_at::b#5 ← (signed byte) sy#10 -- vbsxx=vbsz1 - ldx sy - //SEG92 [59] call print_sbyte_at - //SEG93 [103] phi from debug_print::@3 to print_sbyte_at [phi:debug_print::@3->print_sbyte_at] - //SEG94 [103] phi (byte*) print_sbyte_at::at#21 = (const byte*) SCREEN#0+(byte/signed byte/word/signed word/dword/signed dword) 40*(byte/signed byte/word/signed word/dword/signed dword) 1+(byte/signed byte/word/signed word/dword/signed dword) 37 [phi:debug_print::@3->print_sbyte_at#0] -- pbuz1=pbuc1 - lda #SCREEN+$28*1+$25 - sta print_sbyte_at.at+1 - //SEG95 [103] phi (signed byte) print_sbyte_at::b#22 = (signed byte) print_sbyte_at::b#5 [phi:debug_print::@3->print_sbyte_at#1] -- register_copy - jsr print_sbyte_at - //SEG96 debug_print::@4 - //SEG97 [60] (signed byte) print_sbyte_at::b#6 ← (signed byte) sz#10 -- vbsxx=vbsz1 - ldx sz - //SEG98 [61] call print_sbyte_at - //SEG99 [103] phi from debug_print::@4 to print_sbyte_at [phi:debug_print::@4->print_sbyte_at] - //SEG100 [103] phi (byte*) print_sbyte_at::at#21 = (const byte*) SCREEN#0+(byte/signed byte/word/signed word/dword/signed dword) 40*(byte/signed byte/word/signed word/dword/signed dword) 2+(byte/signed byte/word/signed word/dword/signed dword) 37 [phi:debug_print::@4->print_sbyte_at#0] -- pbuz1=pbuc1 - lda #SCREEN+$28*2+$25 - sta print_sbyte_at.at+1 - //SEG101 [103] phi (signed byte) print_sbyte_at::b#22 = (signed byte) print_sbyte_at::b#6 [phi:debug_print::@4->print_sbyte_at#1] -- register_copy - jsr print_sbyte_at - //SEG102 debug_print::@5 - //SEG103 [62] (signed byte) print_sbyte_at::b#7 ← *((const signed byte[9]) rotation_matrix#0) -- vbsxx=_deref_pbsc1 - ldx rotation_matrix - //SEG104 [63] call print_sbyte_at - //SEG105 [103] phi from debug_print::@5 to print_sbyte_at [phi:debug_print::@5->print_sbyte_at] - //SEG106 [103] phi (byte*) print_sbyte_at::at#21 = (const byte*) SCREEN#0+(byte/signed byte/word/signed word/dword/signed dword) 40*(byte/signed byte/word/signed word/dword/signed dword) 4+(byte/signed byte/word/signed word/dword/signed dword) 29 [phi:debug_print::@5->print_sbyte_at#0] -- pbuz1=pbuc1 - lda #SCREEN+$28*4+$1d - sta print_sbyte_at.at+1 - //SEG107 [103] phi (signed byte) print_sbyte_at::b#22 = (signed byte) print_sbyte_at::b#7 [phi:debug_print::@5->print_sbyte_at#1] -- register_copy - jsr print_sbyte_at - //SEG108 debug_print::@6 - //SEG109 [64] (signed byte) print_sbyte_at::b#8 ← *((const signed byte[9]) rotation_matrix#0+(byte/signed byte/word/signed word/dword/signed dword) 1) -- vbsxx=_deref_pbsc1 - ldx rotation_matrix+1 - //SEG110 [65] call print_sbyte_at - //SEG111 [103] phi from debug_print::@6 to print_sbyte_at [phi:debug_print::@6->print_sbyte_at] - //SEG112 [103] phi (byte*) print_sbyte_at::at#21 = (const byte*) SCREEN#0+(byte/signed byte/word/signed word/dword/signed dword) 40*(byte/signed byte/word/signed word/dword/signed dword) 4+(byte/signed byte/word/signed word/dword/signed dword) 33 [phi:debug_print::@6->print_sbyte_at#0] -- pbuz1=pbuc1 - lda #SCREEN+$28*4+$21 - sta print_sbyte_at.at+1 - //SEG113 [103] phi (signed byte) print_sbyte_at::b#22 = (signed byte) print_sbyte_at::b#8 [phi:debug_print::@6->print_sbyte_at#1] -- register_copy - jsr print_sbyte_at - //SEG114 debug_print::@7 - //SEG115 [66] (signed byte) print_sbyte_at::b#9 ← *((const signed byte[9]) rotation_matrix#0+(byte/signed byte/word/signed word/dword/signed dword) 2) -- vbsxx=_deref_pbsc1 - ldx rotation_matrix+2 - //SEG116 [67] call print_sbyte_at - //SEG117 [103] phi from debug_print::@7 to print_sbyte_at [phi:debug_print::@7->print_sbyte_at] - //SEG118 [103] phi (byte*) print_sbyte_at::at#21 = (const byte*) SCREEN#0+(byte/signed byte/word/signed word/dword/signed dword) 40*(byte/signed byte/word/signed word/dword/signed dword) 4+(byte/signed byte/word/signed word/dword/signed dword) 37 [phi:debug_print::@7->print_sbyte_at#0] -- pbuz1=pbuc1 - lda #SCREEN+$28*4+$25 - sta print_sbyte_at.at+1 - //SEG119 [103] phi (signed byte) print_sbyte_at::b#22 = (signed byte) print_sbyte_at::b#9 [phi:debug_print::@7->print_sbyte_at#1] -- register_copy - jsr print_sbyte_at - //SEG120 debug_print::@8 - //SEG121 [68] (signed byte) print_sbyte_at::b#10 ← *((const signed byte[9]) rotation_matrix#0+(byte/signed byte/word/signed word/dword/signed dword) 3) -- vbsxx=_deref_pbsc1 - ldx rotation_matrix+3 - //SEG122 [69] call print_sbyte_at - //SEG123 [103] phi from debug_print::@8 to print_sbyte_at [phi:debug_print::@8->print_sbyte_at] - //SEG124 [103] phi (byte*) print_sbyte_at::at#21 = (const byte*) SCREEN#0+(byte/signed byte/word/signed word/dword/signed dword) 40*(byte/signed byte/word/signed word/dword/signed dword) 5+(byte/signed byte/word/signed word/dword/signed dword) 29 [phi:debug_print::@8->print_sbyte_at#0] -- pbuz1=pbuc1 - lda #SCREEN+$28*5+$1d - sta print_sbyte_at.at+1 - //SEG125 [103] phi (signed byte) print_sbyte_at::b#22 = (signed byte) print_sbyte_at::b#10 [phi:debug_print::@8->print_sbyte_at#1] -- register_copy - jsr print_sbyte_at - //SEG126 debug_print::@9 - //SEG127 [70] (signed byte) print_sbyte_at::b#11 ← *((const signed byte[9]) rotation_matrix#0+(byte/signed byte/word/signed word/dword/signed dword) 4) -- vbsxx=_deref_pbsc1 - ldx rotation_matrix+4 - //SEG128 [71] call print_sbyte_at - //SEG129 [103] phi from debug_print::@9 to print_sbyte_at [phi:debug_print::@9->print_sbyte_at] - //SEG130 [103] phi (byte*) print_sbyte_at::at#21 = (const byte*) SCREEN#0+(byte/signed byte/word/signed word/dword/signed dword) 40*(byte/signed byte/word/signed word/dword/signed dword) 5+(byte/signed byte/word/signed word/dword/signed dword) 33 [phi:debug_print::@9->print_sbyte_at#0] -- pbuz1=pbuc1 - lda #SCREEN+$28*5+$21 - sta print_sbyte_at.at+1 - //SEG131 [103] phi (signed byte) print_sbyte_at::b#22 = (signed byte) print_sbyte_at::b#11 [phi:debug_print::@9->print_sbyte_at#1] -- register_copy - jsr print_sbyte_at - //SEG132 debug_print::@10 - //SEG133 [72] (signed byte) print_sbyte_at::b#12 ← *((const signed byte[9]) rotation_matrix#0+(byte/signed byte/word/signed word/dword/signed dword) 5) -- vbsxx=_deref_pbsc1 - ldx rotation_matrix+5 - //SEG134 [73] call print_sbyte_at - //SEG135 [103] phi from debug_print::@10 to print_sbyte_at [phi:debug_print::@10->print_sbyte_at] - //SEG136 [103] phi (byte*) print_sbyte_at::at#21 = (const byte*) SCREEN#0+(byte/signed byte/word/signed word/dword/signed dword) 40*(byte/signed byte/word/signed word/dword/signed dword) 5+(byte/signed byte/word/signed word/dword/signed dword) 37 [phi:debug_print::@10->print_sbyte_at#0] -- pbuz1=pbuc1 - lda #SCREEN+$28*5+$25 - sta print_sbyte_at.at+1 - //SEG137 [103] phi (signed byte) print_sbyte_at::b#22 = (signed byte) print_sbyte_at::b#12 [phi:debug_print::@10->print_sbyte_at#1] -- register_copy - jsr print_sbyte_at - //SEG138 debug_print::@11 - //SEG139 [74] (signed byte) print_sbyte_at::b#13 ← *((const signed byte[9]) rotation_matrix#0+(byte/signed byte/word/signed word/dword/signed dword) 6) -- vbsxx=_deref_pbsc1 - ldx rotation_matrix+6 - //SEG140 [75] call print_sbyte_at - //SEG141 [103] phi from debug_print::@11 to print_sbyte_at [phi:debug_print::@11->print_sbyte_at] - //SEG142 [103] phi (byte*) print_sbyte_at::at#21 = (const byte*) SCREEN#0+(byte/signed byte/word/signed word/dword/signed dword) 40*(byte/signed byte/word/signed word/dword/signed dword) 6+(byte/signed byte/word/signed word/dword/signed dword) 29 [phi:debug_print::@11->print_sbyte_at#0] -- pbuz1=pbuc1 - lda #SCREEN+$28*6+$1d - sta print_sbyte_at.at+1 - //SEG143 [103] phi (signed byte) print_sbyte_at::b#22 = (signed byte) print_sbyte_at::b#13 [phi:debug_print::@11->print_sbyte_at#1] -- register_copy - jsr print_sbyte_at - //SEG144 debug_print::@12 - //SEG145 [76] (signed byte) print_sbyte_at::b#14 ← *((const signed byte[9]) rotation_matrix#0+(byte/signed byte/word/signed word/dword/signed dword) 7) -- vbsxx=_deref_pbsc1 - ldx rotation_matrix+7 - //SEG146 [77] call print_sbyte_at - //SEG147 [103] phi from debug_print::@12 to print_sbyte_at [phi:debug_print::@12->print_sbyte_at] - //SEG148 [103] phi (byte*) print_sbyte_at::at#21 = (const byte*) SCREEN#0+(byte/signed byte/word/signed word/dword/signed dword) 40*(byte/signed byte/word/signed word/dword/signed dword) 6+(byte/signed byte/word/signed word/dword/signed dword) 33 [phi:debug_print::@12->print_sbyte_at#0] -- pbuz1=pbuc1 - lda #SCREEN+$28*6+$21 - sta print_sbyte_at.at+1 - //SEG149 [103] phi (signed byte) print_sbyte_at::b#22 = (signed byte) print_sbyte_at::b#14 [phi:debug_print::@12->print_sbyte_at#1] -- register_copy - jsr print_sbyte_at - //SEG150 debug_print::@13 - //SEG151 [78] (signed byte) print_sbyte_at::b#15 ← *((const signed byte[9]) rotation_matrix#0+(byte/signed byte/word/signed word/dword/signed dword) 8) -- vbsxx=_deref_pbsc1 - ldx rotation_matrix+8 - //SEG152 [79] call print_sbyte_at - //SEG153 [103] phi from debug_print::@13 to print_sbyte_at [phi:debug_print::@13->print_sbyte_at] - //SEG154 [103] phi (byte*) print_sbyte_at::at#21 = (const byte*) SCREEN#0+(byte/signed byte/word/signed word/dword/signed dword) 40*(byte/signed byte/word/signed word/dword/signed dword) 6+(byte/signed byte/word/signed word/dword/signed dword) 37 [phi:debug_print::@13->print_sbyte_at#0] -- pbuz1=pbuc1 - lda #SCREEN+$28*6+$25 - sta print_sbyte_at.at+1 - //SEG155 [103] phi (signed byte) print_sbyte_at::b#22 = (signed byte) print_sbyte_at::b#15 [phi:debug_print::@13->print_sbyte_at#1] -- register_copy - jsr print_sbyte_at - //SEG156 [80] phi from debug_print::@13 to debug_print::@1 [phi:debug_print::@13->debug_print::@1] - //SEG157 [80] phi (byte) debug_print::i#2 = (byte/signed byte/word/signed word/dword/signed dword) 0 [phi:debug_print::@13->debug_print::@1#0] -- vbuz1=vbuc1 - lda #0 - sta i - //SEG158 [80] phi (byte) debug_print::c#2 = (byte/signed byte/word/signed word/dword/signed dword) 4 [phi:debug_print::@13->debug_print::@1#1] -- vbuz1=vbuc1 - lda #4 - sta c - //SEG159 [80] phi from debug_print::@20 to debug_print::@1 [phi:debug_print::@20->debug_print::@1] - //SEG160 [80] phi (byte) debug_print::i#2 = (byte) debug_print::i#1 [phi:debug_print::@20->debug_print::@1#0] -- register_copy - //SEG161 [80] phi (byte) debug_print::c#2 = (byte) debug_print::c#1 [phi:debug_print::@20->debug_print::@1#1] -- register_copy - //SEG162 debug_print::@1 - b1: - //SEG163 [81] (byte*) print_sbyte_at::at#15 ← (const byte*) debug_print::at_line#0 + (byte) debug_print::c#2 -- pbuz1=pbuc1_plus_vbuz2 - lda c - clc - adc #at_line - adc #0 - sta print_sbyte_at.at+1 - //SEG164 [82] (signed byte) print_sbyte_at::b#16 ← *((const signed byte[8]) xrs#0 + (byte) debug_print::i#2) -- vbsxx=pbsc1_derefidx_vbuz1 - ldx i - lda xrs,x - tax - //SEG165 [83] call print_sbyte_at - //SEG166 [103] phi from debug_print::@1 to print_sbyte_at [phi:debug_print::@1->print_sbyte_at] - //SEG167 [103] phi (byte*) print_sbyte_at::at#21 = (byte*) print_sbyte_at::at#15 [phi:debug_print::@1->print_sbyte_at#0] -- register_copy - //SEG168 [103] phi (signed byte) print_sbyte_at::b#22 = (signed byte) print_sbyte_at::b#16 [phi:debug_print::@1->print_sbyte_at#1] -- register_copy - jsr print_sbyte_at - //SEG169 debug_print::@15 - //SEG170 [84] (byte*) print_sbyte_at::at#16 ← (const byte*) debug_print::at_line#0+(byte/signed byte/word/signed word/dword/signed dword) 40*(byte/signed byte/word/signed word/dword/signed dword) 1 + (byte) debug_print::c#2 -- pbuz1=pbuc1_plus_vbuz2 - lda c - clc - adc #at_line+$28*1 - adc #0 - sta print_sbyte_at.at+1 - //SEG171 [85] (signed byte) print_sbyte_at::b#17 ← *((const signed byte[8]) yrs#0 + (byte) debug_print::i#2) -- vbsxx=pbsc1_derefidx_vbuz1 - ldx i - lda yrs,x - tax - //SEG172 [86] call print_sbyte_at - //SEG173 [103] phi from debug_print::@15 to print_sbyte_at [phi:debug_print::@15->print_sbyte_at] - //SEG174 [103] phi (byte*) print_sbyte_at::at#21 = (byte*) print_sbyte_at::at#16 [phi:debug_print::@15->print_sbyte_at#0] -- register_copy - //SEG175 [103] phi (signed byte) print_sbyte_at::b#22 = (signed byte) print_sbyte_at::b#17 [phi:debug_print::@15->print_sbyte_at#1] -- register_copy - jsr print_sbyte_at - //SEG176 debug_print::@16 - //SEG177 [87] (byte*) print_sbyte_at::at#17 ← (const byte*) debug_print::at_line#0+(byte/signed byte/word/signed word/dword/signed dword) 40*(byte/signed byte/word/signed word/dword/signed dword) 2 + (byte) debug_print::c#2 -- pbuz1=pbuc1_plus_vbuz2 - lda c - clc - adc #at_line+$28*2 - adc #0 - sta print_sbyte_at.at+1 - //SEG178 [88] (signed byte) print_sbyte_at::b#18 ← *((const signed byte[8]) zrs#0 + (byte) debug_print::i#2) -- vbsxx=pbsc1_derefidx_vbuz1 - ldx i - lda zrs,x - tax - //SEG179 [89] call print_sbyte_at - //SEG180 [103] phi from debug_print::@16 to print_sbyte_at [phi:debug_print::@16->print_sbyte_at] - //SEG181 [103] phi (byte*) print_sbyte_at::at#21 = (byte*) print_sbyte_at::at#17 [phi:debug_print::@16->print_sbyte_at#0] -- register_copy - //SEG182 [103] phi (signed byte) print_sbyte_at::b#22 = (signed byte) print_sbyte_at::b#18 [phi:debug_print::@16->print_sbyte_at#1] -- register_copy - jsr print_sbyte_at - //SEG183 debug_print::@17 - //SEG184 [90] (byte*) print_sbyte_at::at#18 ← (const byte*) debug_print::at_line#0+(byte/signed byte/word/signed word/dword/signed dword) 40*(byte/signed byte/word/signed word/dword/signed dword) 3 + (byte) debug_print::c#2 -- pbuz1=pbuc1_plus_vbuz2 - lda c - clc - adc #at_line+$28*3 - adc #0 - sta print_sbyte_at.at+1 - //SEG185 [91] (signed byte) print_sbyte_at::b#19 ← *((const signed byte[8]) pps#0 + (byte) debug_print::i#2) -- vbsxx=pbsc1_derefidx_vbuz1 - ldx i - lda pps,x - tax - //SEG186 [92] call print_sbyte_at - //SEG187 [103] phi from debug_print::@17 to print_sbyte_at [phi:debug_print::@17->print_sbyte_at] - //SEG188 [103] phi (byte*) print_sbyte_at::at#21 = (byte*) print_sbyte_at::at#18 [phi:debug_print::@17->print_sbyte_at#0] -- register_copy - //SEG189 [103] phi (signed byte) print_sbyte_at::b#22 = (signed byte) print_sbyte_at::b#19 [phi:debug_print::@17->print_sbyte_at#1] -- register_copy - jsr print_sbyte_at - //SEG190 debug_print::@18 - //SEG191 [93] (byte*) print_sbyte_at::at#19 ← (const byte*) debug_print::at_line#0+(byte/signed byte/word/signed word/dword/signed dword) 40*(byte/signed byte/word/signed word/dword/signed dword) 4 + (byte) debug_print::c#2 -- pbuz1=pbuc1_plus_vbuz2 - lda c - clc - adc #at_line+$28*4 - adc #0 - sta print_sbyte_at.at+1 - //SEG192 [94] (signed byte) print_sbyte_at::b#20 ← *((const signed byte[8]) xps#0 + (byte) debug_print::i#2) -- vbsxx=pbsc1_derefidx_vbuz1 - ldx i - lda xps,x - tax - //SEG193 [95] call print_sbyte_at - //SEG194 [103] phi from debug_print::@18 to print_sbyte_at [phi:debug_print::@18->print_sbyte_at] - //SEG195 [103] phi (byte*) print_sbyte_at::at#21 = (byte*) print_sbyte_at::at#19 [phi:debug_print::@18->print_sbyte_at#0] -- register_copy - //SEG196 [103] phi (signed byte) print_sbyte_at::b#22 = (signed byte) print_sbyte_at::b#20 [phi:debug_print::@18->print_sbyte_at#1] -- register_copy - jsr print_sbyte_at - //SEG197 debug_print::@19 - //SEG198 [96] (byte*) print_sbyte_at::at#20 ← (const byte*) debug_print::at_line#0+(byte/signed byte/word/signed word/dword/signed dword) 40*(byte/signed byte/word/signed word/dword/signed dword) 5 + (byte) debug_print::c#2 -- pbuz1=pbuc1_plus_vbuz2 - lda c - clc - adc #at_line+$28*5 - adc #0 - sta print_sbyte_at.at+1 - //SEG199 [97] (signed byte) print_sbyte_at::b#21 ← *((const signed byte[8]) yps#0 + (byte) debug_print::i#2) -- vbsxx=pbsc1_derefidx_vbuz1 - ldx i - lda yps,x - tax - //SEG200 [98] call print_sbyte_at - //SEG201 [103] phi from debug_print::@19 to print_sbyte_at [phi:debug_print::@19->print_sbyte_at] - //SEG202 [103] phi (byte*) print_sbyte_at::at#21 = (byte*) print_sbyte_at::at#20 [phi:debug_print::@19->print_sbyte_at#0] -- register_copy - //SEG203 [103] phi (signed byte) print_sbyte_at::b#22 = (signed byte) print_sbyte_at::b#21 [phi:debug_print::@19->print_sbyte_at#1] -- register_copy - jsr print_sbyte_at - //SEG204 debug_print::@20 - //SEG205 [99] (byte) debug_print::c#1 ← (byte) debug_print::c#2 + (byte/signed byte/word/signed word/dword/signed dword) 4 -- vbuz1=vbuz1_plus_vbuc1 - lda #4 - clc - adc c - sta c - //SEG206 [100] (byte) debug_print::i#1 ← ++ (byte) debug_print::i#2 -- vbuz1=_inc_vbuz1 - inc i - //SEG207 [101] if((byte) debug_print::i#1!=(byte/signed byte/word/signed word/dword/signed dword) 8) goto debug_print::@1 -- vbuz1_neq_vbuc1_then_la1 - lda i - cmp #8 - beq !b1+ - jmp b1 - !b1: - //SEG208 debug_print::@return - //SEG209 [102] return - rts -} -//SEG210 print_sbyte_at -print_sbyte_at: { - .label at = 7 - //SEG211 [104] if((signed byte) print_sbyte_at::b#22<(byte/signed byte/word/signed word/dword/signed dword) 0) goto print_sbyte_at::@1 -- vbsxx_lt_0_then_la1 - cpx #0 - bmi b1 - //SEG212 print_sbyte_at::@3 - //SEG213 [105] (byte*) print_char_at::at#1 ← (byte*) print_sbyte_at::at#21 - // (byte*) print_char_at::at#1 = (byte*) print_sbyte_at::at#21 // register copy zp ZP_WORD:7 - //SEG214 [106] call print_char_at - //SEG215 [114] phi from print_sbyte_at::@3 to print_char_at [phi:print_sbyte_at::@3->print_char_at] - //SEG216 [114] phi (byte*) print_char_at::at#4 = (byte*) print_char_at::at#1 [phi:print_sbyte_at::@3->print_char_at#0] -- register_copy - //SEG217 [114] phi (byte) print_char_at::ch#4 = (byte) ' ' [phi:print_sbyte_at::@3->print_char_at#1] -- vbuz1=vbuc1 - lda #' ' - sta print_char_at.ch - jsr print_char_at - //SEG218 [107] phi from print_sbyte_at::@3 print_sbyte_at::@5 to print_sbyte_at::@2 [phi:print_sbyte_at::@3/print_sbyte_at::@5->print_sbyte_at::@2] - //SEG219 [107] phi (signed byte) print_sbyte_at::b#24 = (signed byte) print_sbyte_at::b#22 [phi:print_sbyte_at::@3/print_sbyte_at::@5->print_sbyte_at::@2#0] -- register_copy - //SEG220 print_sbyte_at::@2 - b2: - //SEG221 [108] (byte*) print_byte_at::at#0 ← (byte*) print_sbyte_at::at#21 + (byte/signed byte/word/signed word/dword/signed dword) 1 -- pbuz1=pbuz1_plus_1 - inc print_byte_at.at - bne !+ - inc print_byte_at.at+1 - !: - //SEG222 [109] call print_byte_at - jsr print_byte_at - //SEG223 print_sbyte_at::@return - //SEG224 [110] return - rts - //SEG225 print_sbyte_at::@1 - b1: - //SEG226 [111] (byte*) print_char_at::at#0 ← (byte*) print_sbyte_at::at#21 - // (byte*) print_char_at::at#0 = (byte*) print_sbyte_at::at#21 // register copy zp ZP_WORD:7 - //SEG227 [112] call print_char_at - //SEG228 [114] phi from print_sbyte_at::@1 to print_char_at [phi:print_sbyte_at::@1->print_char_at] - //SEG229 [114] phi (byte*) print_char_at::at#4 = (byte*) print_char_at::at#0 [phi:print_sbyte_at::@1->print_char_at#0] -- register_copy - //SEG230 [114] phi (byte) print_char_at::ch#4 = (byte) '-' [phi:print_sbyte_at::@1->print_char_at#1] -- vbuz1=vbuc1 - lda #'-' - sta print_char_at.ch - jsr print_char_at - //SEG231 print_sbyte_at::@5 - //SEG232 [113] (signed byte) print_sbyte_at::b#0 ← - (signed byte) print_sbyte_at::b#22 -- vbsxx=_neg_vbsxx - txa - eor #$ff - clc - adc #1 - tax - jmp b2 -} -//SEG233 print_char_at -print_char_at: { - .label at = 7 - .label ch = 9 - //SEG234 [115] *((byte*) print_char_at::at#4) ← (byte) print_char_at::ch#4 -- _deref_pbuz1=vbuz2 - lda ch - ldy #0 - sta (at),y - //SEG235 print_char_at::@return - //SEG236 [116] return - rts -} -//SEG237 print_byte_at -print_byte_at: { - .label at = 7 - //SEG238 [117] (byte~) print_byte_at::$0 ← (byte)(signed byte) print_sbyte_at::b#24 >> (byte/signed byte/word/signed word/dword/signed dword) 4 -- vbuaa=vbuxx_ror_4 - txa - lsr - lsr - lsr - lsr - //SEG239 [118] (byte) print_char_at::ch#2 ← *((const byte[]) print_hextab#0 + (byte~) print_byte_at::$0) -- vbuz1=pbuc1_derefidx_vbuaa - tay - lda print_hextab,y - sta print_char_at.ch - //SEG240 [119] (byte*) print_char_at::at#2 ← (byte*) print_byte_at::at#0 - // (byte*) print_char_at::at#2 = (byte*) print_byte_at::at#0 // register copy zp ZP_WORD:7 - //SEG241 [120] call print_char_at - //SEG242 [114] phi from print_byte_at to print_char_at [phi:print_byte_at->print_char_at] - //SEG243 [114] phi (byte*) print_char_at::at#4 = (byte*) print_char_at::at#2 [phi:print_byte_at->print_char_at#0] -- register_copy - //SEG244 [114] phi (byte) print_char_at::ch#4 = (byte) print_char_at::ch#2 [phi:print_byte_at->print_char_at#1] -- register_copy - jsr print_char_at - //SEG245 print_byte_at::@1 - //SEG246 [121] (byte~) print_byte_at::$2 ← (byte)(signed byte) print_sbyte_at::b#24 & (byte/signed byte/word/signed word/dword/signed dword) 15 -- vbuxx=vbuxx_band_vbuc1 - txa - and #$f - tax - //SEG247 [122] (byte*) print_char_at::at#3 ← (byte*) print_byte_at::at#0 + (byte/signed byte/word/signed word/dword/signed dword) 1 -- pbuz1=pbuz1_plus_1 - inc print_char_at.at - bne !+ - inc print_char_at.at+1 - !: - //SEG248 [123] (byte) print_char_at::ch#3 ← *((const byte[]) print_hextab#0 + (byte~) print_byte_at::$2) -- vbuz1=pbuc1_derefidx_vbuxx - lda print_hextab,x - sta print_char_at.ch - //SEG249 [124] call print_char_at - //SEG250 [114] phi from print_byte_at::@1 to print_char_at [phi:print_byte_at::@1->print_char_at] - //SEG251 [114] phi (byte*) print_char_at::at#4 = (byte*) print_char_at::at#3 [phi:print_byte_at::@1->print_char_at#0] -- register_copy - //SEG252 [114] phi (byte) print_char_at::ch#4 = (byte) print_char_at::ch#3 [phi:print_byte_at::@1->print_char_at#1] -- register_copy - jsr print_char_at - //SEG253 print_byte_at::@return - //SEG254 [125] return - rts -} -//SEG255 rotate_matrix +//SEG74 rotate_matrix rotate_matrix: { - .label x = 6 - //SEG256 [126] *((const signed byte*) xr#0) ← (signed byte) rotate_matrix::x#0 -- _deref_pbsc1=vbsz1 + .label x = 5 + //SEG75 [51] *((const signed byte*) xr#0) ← (signed byte) rotate_matrix::x#0 -- _deref_pbsc1=vbsz1 lda x sta xr - //SEG257 [127] *((const signed byte*) yr#0) ← (signed byte) rotate_matrix::y#0 -- _deref_pbsc1=vbsyy + //SEG76 [52] *((const signed byte*) yr#0) ← (signed byte) rotate_matrix::y#0 -- _deref_pbsc1=vbsyy tya sta yr - //SEG258 [128] *((const signed byte*) zr#0) ← (signed byte) rotate_matrix::z#0 -- _deref_pbsc1=vbsxx + //SEG77 [53] *((const signed byte*) zr#0) ← (signed byte) rotate_matrix::z#0 -- _deref_pbsc1=vbsxx txa sta zr - //SEG259 asm { ldxzr C1: ldamulf_sqr1,x sec C2: sbcmulf_sqr2,x staC3+1 F1: ldamulf_sqr1,x sec F2: sbcmulf_sqr2,x staF3+1 I1: ldamulf_sqr1,x sec I2: sbcmulf_sqr2,x staI3+1 ldxxr ldyyr I3: lda#0 clc G1: adcmulf_sqr1,x sec G2: sbcmulf_sqr2,x clc H1: adcmulf_sqr1,y sec H2: sbcmulf_sqr2,y stazr staPP+1 PP: ldaPERSP_Z stapp stapsp1 eor#$ff stapsp2 C3: lda#0 clc A1: adcmulf_sqr1,x sec A2: sbcmulf_sqr2,x clc B1: adcmulf_sqr1,y sec B2: sbcmulf_sqr2,y staxr staXX+1 clc F3: lda#0 clc D1: adcmulf_sqr1,x sec D2: sbcmulf_sqr2,x clc E1: adcmulf_sqr1,y sec E2: sbcmulf_sqr2,y stayr tay lda(psp1),y sec sbc(psp2),y stayp XX: ldy#0 lda(psp1),y sec sbc(psp2),y staxp } + //SEG78 asm { ldxzr C1: ldamulf_sqr1,x sec C2: sbcmulf_sqr2,x staC3+1 F1: ldamulf_sqr1,x sec F2: sbcmulf_sqr2,x staF3+1 I1: ldamulf_sqr1,x sec I2: sbcmulf_sqr2,x staI3+1 ldxxr ldyyr I3: lda#0 clc G1: adcmulf_sqr1,x sec G2: sbcmulf_sqr2,x clc H1: adcmulf_sqr1,y sec H2: sbcmulf_sqr2,y stazr staPP+1 PP: ldaPERSP_Z stapp stapsp1 eor#$ff stapsp2 C3: lda#0 clc A1: adcmulf_sqr1,x sec A2: sbcmulf_sqr2,x clc B1: adcmulf_sqr1,y sec B2: sbcmulf_sqr2,y staxr staXX+1 clc F3: lda#0 clc D1: adcmulf_sqr1,x sec D2: sbcmulf_sqr2,x clc E1: adcmulf_sqr1,y sec E2: sbcmulf_sqr2,y stayr tay lda(psp1),y sec sbc(psp2),y stayp XX: ldy#0 lda(psp1),y sec sbc(psp2),y staxp } tax C1: lda mulf_sqr1,x @@ -11031,13 +4499,13 @@ rotate_matrix: { sec sbc (psp2),y sta xp - //SEG260 rotate_matrix::@return - //SEG261 [130] return + //SEG79 rotate_matrix::@return + //SEG80 [55] return rts } -//SEG262 store_matrix +//SEG81 store_matrix store_matrix: { - //SEG263 asm { ldarotation_matrix+0 starotate_matrix.A1+1 eor#$ff starotate_matrix.A2+1 ldarotation_matrix+1 starotate_matrix.B1+1 eor#$ff starotate_matrix.B2+1 ldarotation_matrix+2 starotate_matrix.C1+1 eor#$ff starotate_matrix.C2+1 ldarotation_matrix+3 starotate_matrix.D1+1 eor#$ff starotate_matrix.D2+1 ldarotation_matrix+4 starotate_matrix.E1+1 eor#$ff starotate_matrix.E2+1 ldarotation_matrix+5 starotate_matrix.F1+1 eor#$ff starotate_matrix.F2+1 ldarotation_matrix+6 starotate_matrix.G1+1 eor#$ff starotate_matrix.G2+1 ldarotation_matrix+7 starotate_matrix.H1+1 eor#$ff starotate_matrix.H2+1 ldarotation_matrix+8 starotate_matrix.I1+1 eor#$ff starotate_matrix.I2+1 } + //SEG82 asm { ldarotation_matrix+0 starotate_matrix.A1+1 eor#$ff starotate_matrix.A2+1 ldarotation_matrix+1 starotate_matrix.B1+1 eor#$ff starotate_matrix.B2+1 ldarotation_matrix+2 starotate_matrix.C1+1 eor#$ff starotate_matrix.C2+1 ldarotation_matrix+3 starotate_matrix.D1+1 eor#$ff starotate_matrix.D2+1 ldarotation_matrix+4 starotate_matrix.E1+1 eor#$ff starotate_matrix.E2+1 ldarotation_matrix+5 starotate_matrix.F1+1 eor#$ff starotate_matrix.F2+1 ldarotation_matrix+6 starotate_matrix.G1+1 eor#$ff starotate_matrix.G2+1 ldarotation_matrix+7 starotate_matrix.H1+1 eor#$ff starotate_matrix.H2+1 ldarotation_matrix+8 starotate_matrix.I1+1 eor#$ff starotate_matrix.I2+1 } lda rotation_matrix+0 sta rotate_matrix.A1+1 eor #$ff @@ -11074,1066 +4542,234 @@ store_matrix: { sta rotate_matrix.I1+1 eor #$ff sta rotate_matrix.I2+1 - //SEG264 store_matrix::@return - //SEG265 [132] return + //SEG83 store_matrix::@return + //SEG84 [57] return rts } -//SEG266 calculate_matrix_16 -calculate_matrix_16: { - .label _4 = 7 - .label _9 = 7 - .label _13 = 7 - .label _28 = $16 - .label _29 = $16 - .label _30 = $16 - .label _31 = $16 - .label _32 = $16 - .label _35 = 7 - .label _36 = $10 - .label _37 = $e - .label _38 = $12 - .label _39 = $14 - .label _48 = $16 - .label _49 = $16 - .label _50 = $16 - .label _51 = $16 - .label _52 = $16 - .label _55 = 7 - .label _56 = $10 - .label _57 = $e - .label _58 = $12 - .label _59 = $14 - .label _66 = 7 - .label _71 = 7 - .label sx = 2 +//SEG85 calculate_matrix +calculate_matrix: { .label sy = 3 - .label t1 = 5 - .label t2 = 6 - .label t3 = 9 - .label t5 = $c - .label t6 = $d - .label t7 = 5 - .label t8 = 6 - .label _74 = 7 - .label _75 = $a - .label _76 = 7 - .label _77 = $a - .label _78 = 7 - .label _79 = 7 - .label _80 = $a - .label _81 = $e - .label _82 = $10 - .label _83 = $12 - .label _84 = $14 - .label _85 = 7 - .label _86 = $a - .label _87 = $e - .label _88 = $10 - .label _89 = $12 - .label _90 = $14 - .label _91 = 7 - .label _92 = $a - .label _93 = 7 - .label _94 = $a - //SEG267 [133] (signed byte) calculate_matrix_16::t1#0 ← (signed byte) calculate_matrix_16::sy#0 - (signed byte) calculate_matrix_16::sz#0 -- vbsz1=vbsz2_minus_vbsxx - txa - eor #$ff + .label t1 = 4 + .label t3 = 5 + .label t4 = 6 + .label t5 = 7 + .label t6 = 8 + .label t7 = 9 + .label t8 = $a + .label t9 = $b + .label t10 = $c + //SEG86 [58] (signed byte) calculate_matrix::t1#0 ← (signed byte) calculate_matrix::sy#0 - (const signed byte) sz#0 -- vbsz1=vbsz2_minus_vbsc1 + lda sy sec - adc sy + sbc #sz sta t1 - //SEG268 [134] (signed byte) calculate_matrix_16::t2#0 ← (signed byte) calculate_matrix_16::sy#0 + (signed byte) calculate_matrix_16::sz#0 -- vbsz1=vbsz2_plus_vbsxx - txa + //SEG87 [59] (signed byte) calculate_matrix::t2#0 ← (signed byte) calculate_matrix::sy#0 + (const signed byte) sz#0 -- vbsyy=vbsz1_plus_vbsc1 + lda #sz clc adc sy - sta t2 - //SEG269 [135] (word~) calculate_matrix_16::$74 ← *((const byte*) COSH_HI#0 + (signed byte) calculate_matrix_16::t1#0) w= *((const byte*) COSH_LO#0 + (signed byte) calculate_matrix_16::t1#0) -- vwuz1=pbuc1_derefidx_vbsz2_word_pbuc2_derefidx_vbsz2 - ldy t1 - lda COSH_HI,y - sta _74+1 - lda COSH_LO,y - sta _74 - //SEG270 [136] (word~) calculate_matrix_16::$75 ← *((const byte*) COSH_HI#0 + (signed byte) calculate_matrix_16::t2#0) w= *((const byte*) COSH_LO#0 + (signed byte) calculate_matrix_16::t2#0) -- vwuz1=pbuc1_derefidx_vbsz2_word_pbuc2_derefidx_vbsz2 - ldy t2 - lda COSH_HI,y - sta _75+1 - lda COSH_LO,y - sta _75 - //SEG271 [137] (signed word~) calculate_matrix_16::$4 ← (signed word)(word~) calculate_matrix_16::$74 + (signed word)(word~) calculate_matrix_16::$75 -- vwsz1=vwsz1_plus_vwsz2 - lda _4 - clc - adc _75 - sta _4 - lda _4+1 - adc _75+1 - sta _4+1 - //SEG272 [138] (byte~) calculate_matrix_16::$5 ← > (signed word~) calculate_matrix_16::$4 -- vbuaa=_hi_vwsz1 - //SEG273 [139] *((const signed byte[9]) rotation_matrix#0) ← (signed byte)(byte~) calculate_matrix_16::$5 -- _deref_pbsc1=vbsaa - sta rotation_matrix - //SEG274 [140] (word~) calculate_matrix_16::$76 ← *((const byte*) SINH_HI#0 + (signed byte) calculate_matrix_16::t1#0) w= *((const byte*) SINH_LO#0 + (signed byte) calculate_matrix_16::t1#0) -- vwuz1=pbuc1_derefidx_vbsz2_word_pbuc2_derefidx_vbsz2 - ldy t1 - lda SINH_HI,y - sta _76+1 - lda SINH_LO,y - sta _76 - //SEG275 [141] (word~) calculate_matrix_16::$77 ← *((const byte*) SINH_HI#0 + (signed byte) calculate_matrix_16::t2#0) w= *((const byte*) SINH_LO#0 + (signed byte) calculate_matrix_16::t2#0) -- vwuz1=pbuc1_derefidx_vbsz2_word_pbuc2_derefidx_vbsz2 - ldy t2 - lda SINH_HI,y - sta _77+1 - lda SINH_LO,y - sta _77 - //SEG276 [142] (signed word~) calculate_matrix_16::$9 ← (signed word)(word~) calculate_matrix_16::$76 - (signed word)(word~) calculate_matrix_16::$77 -- vwsz1=vwsz1_minus_vwsz2 - lda _9 - sec - sbc _77 - sta _9 - lda _9+1 - sbc _77+1 - sta _9+1 - //SEG277 [143] (byte~) calculate_matrix_16::$10 ← > (signed word~) calculate_matrix_16::$9 -- vbuaa=_hi_vwsz1 - //SEG278 [144] *((const signed byte[9]) rotation_matrix#0+(byte/signed byte/word/signed word/dword/signed dword) 1) ← (signed byte)(byte~) calculate_matrix_16::$10 -- _deref_pbsc1=vbsaa - sta rotation_matrix+1 - //SEG279 [145] (word~) calculate_matrix_16::$78 ← *((const byte*) SINH_HI#0 + (signed byte) calculate_matrix_16::sy#0) w= *((const byte*) SINH_LO#0 + (signed byte) calculate_matrix_16::sy#0) -- vwuz1=pbuc1_derefidx_vbsz2_word_pbuc2_derefidx_vbsz2 - ldy sy - lda SINH_HI,y - sta _78+1 - lda SINH_LO,y - sta _78 - //SEG280 [146] (signed word~) calculate_matrix_16::$13 ← (signed word)(word~) calculate_matrix_16::$78 + (signed word)(word~) calculate_matrix_16::$78 -- vwsz1=vwsz1_plus_vwsz1 - lda _13 - clc - adc _13 - sta _13 - lda _13+1 - adc _13+1 - sta _13+1 - //SEG281 [147] (byte~) calculate_matrix_16::$14 ← > (signed word~) calculate_matrix_16::$13 -- vbuaa=_hi_vwsz1 - //SEG282 [148] *((const signed byte[9]) rotation_matrix#0+(byte/signed byte/word/signed word/dword/signed dword) 2) ← (signed byte)(byte~) calculate_matrix_16::$14 -- _deref_pbsc1=vbsaa - sta rotation_matrix+2 - //SEG283 [149] (signed byte) calculate_matrix_16::t3#0 ← (signed byte) calculate_matrix_16::sx#0 + (signed byte) calculate_matrix_16::sz#0 -- vbsz1=vbsz2_plus_vbsxx + tay + //SEG88 [60] (signed byte) calculate_matrix::t3#0 ← (signed byte) calculate_matrix::sx#0 -- vbsz1=vbsxx + stx t3 + //SEG89 [61] (signed byte) calculate_matrix::t4#0 ← (signed byte) calculate_matrix::sx#0 -- vbsz1=vbsxx + stx t4 + //SEG90 [62] (signed byte) calculate_matrix::t5#0 ← (signed byte) calculate_matrix::sx#0 + (signed byte) calculate_matrix::t2#0 -- vbsz1=vbsxx_plus_vbsyy txa + sty $ff clc - adc sx - sta t3 - //SEG284 [150] (signed byte) calculate_matrix_16::t4#0 ← (signed byte) calculate_matrix_16::sx#0 - (signed byte) calculate_matrix_16::sz#0 -- vbsxx=vbsz1_minus_vbsxx - txa - eor #$ff - sec - adc sx - tax - //SEG285 [151] (signed byte) calculate_matrix_16::t5#0 ← (signed byte) calculate_matrix_16::sx#0 + (signed byte) calculate_matrix_16::t2#0 -- vbsz1=vbsz2_plus_vbsz3 - lda sx - clc - adc t2 + adc $ff sta t5 - //SEG286 [152] (signed byte) calculate_matrix_16::t6#0 ← (signed byte) calculate_matrix_16::sx#0 - (signed byte) calculate_matrix_16::t1#0 -- vbsz1=vbsz2_minus_vbsz3 - lda sx + //SEG91 [63] (signed byte) calculate_matrix::t6#0 ← (signed byte) calculate_matrix::sx#0 - (signed byte) calculate_matrix::t1#0 -- vbsz1=vbsxx_minus_vbsz2 + txa sec sbc t1 sta t6 - //SEG287 [153] (signed byte) calculate_matrix_16::t7#0 ← (signed byte) calculate_matrix_16::sx#0 + (signed byte) calculate_matrix_16::t1#0 -- vbsz1=vbsz2_plus_vbsz1 - lda t7 + //SEG92 [64] (signed byte) calculate_matrix::t7#0 ← (signed byte) calculate_matrix::sx#0 + (signed byte) calculate_matrix::t1#0 -- vbsz1=vbsxx_plus_vbsz2 + txa clc - adc sx + adc t1 sta t7 - //SEG288 [154] (signed byte) calculate_matrix_16::t8#0 ← (signed byte) calculate_matrix_16::t2#0 - (signed byte) calculate_matrix_16::sx#0 -- vbsz1=vbsz1_minus_vbsz2 - lda t8 + //SEG93 [65] (signed byte) calculate_matrix::t8#0 ← (signed byte) calculate_matrix::t2#0 - (signed byte) calculate_matrix::sx#0 -- vbsz1=vbsyy_minus_vbsxx + tya + stx $ff sec - sbc sx + sbc $ff sta t8 - //SEG289 [155] (word~) calculate_matrix_16::$79 ← *((const byte*) SINH_HI#0 + (signed byte) calculate_matrix_16::t3#0) w= *((const byte*) SINH_LO#0 + (signed byte) calculate_matrix_16::t3#0) -- vwuz1=pbuc1_derefidx_vbsz2_word_pbuc2_derefidx_vbsz2 - ldy t3 - lda SINH_HI,y - sta _79+1 - lda SINH_LO,y - sta _79 - //SEG290 [156] (word~) calculate_matrix_16::$80 ← *((const byte*) SINH_HI#0 + (signed byte) calculate_matrix_16::t4#0) w= *((const byte*) SINH_LO#0 + (signed byte) calculate_matrix_16::t4#0) -- vwuz1=pbuc1_derefidx_vbsxx_word_pbuc2_derefidx_vbsxx - lda SINH_HI,x - sta _80+1 - lda SINH_LO,x - sta _80 - //SEG291 [157] (word~) calculate_matrix_16::$81 ← *((const byte*) COSQ_HI#0 + (signed byte) calculate_matrix_16::t5#0) w= *((const byte*) COSH_LO#0 + (signed byte) calculate_matrix_16::t5#0) -- vwuz1=pbuc1_derefidx_vbsz2_word_pbuc2_derefidx_vbsz2 - ldy t5 - lda COSQ_HI,y - sta _81+1 - lda COSH_LO,y - sta _81 - //SEG292 [158] (word~) calculate_matrix_16::$82 ← *((const byte*) COSQ_HI#0 + (signed byte) calculate_matrix_16::t6#0) w= *((const byte*) COSH_LO#0 + (signed byte) calculate_matrix_16::t6#0) -- vwuz1=pbuc1_derefidx_vbsz2_word_pbuc2_derefidx_vbsz2 + //SEG94 [66] (signed byte) calculate_matrix::t9#0 ← (signed byte) calculate_matrix::sy#0 - (signed byte) calculate_matrix::sx#0 -- vbsz1=vbsz2_minus_vbsxx + txa + eor #$ff + sec + adc sy + sta t9 + //SEG95 [67] (signed byte) calculate_matrix::t10#0 ← (signed byte) calculate_matrix::sy#0 + (signed byte) calculate_matrix::sx#0 -- vbsz1=vbsz2_plus_vbsxx + txa + clc + adc sy + sta t10 + //SEG96 [68] (signed byte~) calculate_matrix::$10 ← *((const signed byte*) COSH#0 + (signed byte) calculate_matrix::t1#0) + *((const signed byte*) COSH#0 + (signed byte) calculate_matrix::t2#0) -- vbsaa=pbsc1_derefidx_vbsz1_plus_pbsc1_derefidx_vbsyy + ldx t1 + clc + lda COSH,x + adc COSH,y + //SEG97 [69] *((const signed byte[9]) rotation_matrix#0) ← (signed byte~) calculate_matrix::$10 -- _deref_pbsc1=vbsaa + sta rotation_matrix + //SEG98 [70] (signed byte~) calculate_matrix::$11 ← *((const signed byte*) SINH#0 + (signed byte) calculate_matrix::t1#0) - *((const signed byte*) SINH#0 + (signed byte) calculate_matrix::t2#0) -- vbsaa=pbsc1_derefidx_vbsz1_minus_pbsc1_derefidx_vbsyy + sec + lda SINH,x + sbc SINH,y + //SEG99 [71] *((const signed byte[9]) rotation_matrix#0+(byte/signed byte/word/signed word/dword/signed dword) 1) ← (signed byte~) calculate_matrix::$11 -- _deref_pbsc1=vbsaa + sta rotation_matrix+1 + //SEG100 [72] (signed byte~) calculate_matrix::$12 ← *((const signed byte*) SINH#0 + (signed byte) calculate_matrix::sy#0) + *((const signed byte*) SINH#0 + (signed byte) calculate_matrix::sy#0) -- vbsaa=pbsc1_derefidx_vbsz1_plus_pbsc1_derefidx_vbsz1 + ldy sy + clc + lda SINH,y + adc SINH,y + //SEG101 [73] *((const signed byte[9]) rotation_matrix#0+(byte/signed byte/word/signed word/dword/signed dword) 2) ← (signed byte~) calculate_matrix::$12 -- _deref_pbsc1=vbsaa + sta rotation_matrix+2 + //SEG102 [74] (signed byte~) calculate_matrix::$13 ← *((const signed byte*) SINH#0+(const signed byte) sz#0 + (signed byte) calculate_matrix::t3#0) - *((const signed byte*) SINH#0+-(const signed byte) sz#0 + (signed byte) calculate_matrix::t4#0) -- vbsaa=pbsc1_derefidx_vbsz1_minus_pbsc2_derefidx_vbsz2 + ldx t3 + ldy t4 + sec + lda SINH+sz,x + sbc SINH+-sz,y + //SEG103 [75] (signed byte~) calculate_matrix::$14 ← (signed byte~) calculate_matrix::$13 + *((const signed byte*) COSQ#0 + (signed byte) calculate_matrix::t6#0) -- vbsaa=vbsaa_plus_pbsc1_derefidx_vbsz1 ldy t6 - lda COSQ_HI,y - sta _82+1 - lda COSH_LO,y - sta _82 - //SEG293 [159] (word~) calculate_matrix_16::$83 ← *((const byte*) COSQ_HI#0 + (signed byte) calculate_matrix_16::t7#0) w= *((const byte*) COSH_LO#0 + (signed byte) calculate_matrix_16::t7#0) -- vwuz1=pbuc1_derefidx_vbsz2_word_pbuc2_derefidx_vbsz2 - ldy t7 - lda COSQ_HI,y - sta _83+1 - lda COSH_LO,y - sta _83 - //SEG294 [160] (word~) calculate_matrix_16::$84 ← *((const byte*) COSQ_HI#0 + (signed byte) calculate_matrix_16::t8#0) w= *((const byte*) COSH_LO#0 + (signed byte) calculate_matrix_16::t8#0) -- vwuz1=pbuc1_derefidx_vbsz2_word_pbuc2_derefidx_vbsz2 + clc + adc COSQ,y + //SEG104 [76] (signed byte~) calculate_matrix::$15 ← (signed byte~) calculate_matrix::$14 - *((const signed byte*) COSQ#0 + (signed byte) calculate_matrix::t5#0) -- vbsaa=vbsaa_minus_pbsc1_derefidx_vbsz1 + ldy t5 + sec + sbc COSQ,y + //SEG105 [77] (signed byte~) calculate_matrix::$16 ← (signed byte~) calculate_matrix::$15 + *((const signed byte*) COSQ#0 + (signed byte) calculate_matrix::t8#0) -- vbsaa=vbsaa_plus_pbsc1_derefidx_vbsz1 ldy t8 - lda COSQ_HI,y - sta _84+1 - lda COSH_LO,y - sta _84 - //SEG295 [161] (signed word~) calculate_matrix_16::$28 ← (signed word)(word~) calculate_matrix_16::$79 - (signed word)(word~) calculate_matrix_16::$80 -- vwsz1=vwsz2_minus_vwsz3 - lda _79 - sec - sbc _80 - sta _28 - lda _79+1 - sbc _80+1 - sta _28+1 - //SEG296 [162] (signed word~) calculate_matrix_16::$29 ← (signed word~) calculate_matrix_16::$28 + (signed word)(word~) calculate_matrix_16::$82 -- vwsz1=vwsz1_plus_vwsz2 - lda _29 clc - adc _82 - sta _29 - lda _29+1 - adc _82+1 - sta _29+1 - //SEG297 [163] (signed word~) calculate_matrix_16::$30 ← (signed word~) calculate_matrix_16::$29 - (signed word)(word~) calculate_matrix_16::$81 -- vwsz1=vwsz1_minus_vwsz2 - lda _30 + adc COSQ,y + //SEG106 [78] (signed byte~) calculate_matrix::$17 ← (signed byte~) calculate_matrix::$16 - *((const signed byte*) COSQ#0 + (signed byte) calculate_matrix::t7#0) -- vbsaa=vbsaa_minus_pbsc1_derefidx_vbsz1 + ldy t7 sec - sbc _81 - sta _30 - lda _30+1 - sbc _81+1 - sta _30+1 - //SEG298 [164] (signed word~) calculate_matrix_16::$31 ← (signed word~) calculate_matrix_16::$30 + (signed word)(word~) calculate_matrix_16::$84 -- vwsz1=vwsz1_plus_vwsz2 - lda _31 - clc - adc _84 - sta _31 - lda _31+1 - adc _84+1 - sta _31+1 - //SEG299 [165] (signed word~) calculate_matrix_16::$32 ← (signed word~) calculate_matrix_16::$31 - (signed word)(word~) calculate_matrix_16::$83 -- vwsz1=vwsz1_minus_vwsz2 - lda _32 - sec - sbc _83 - sta _32 - lda _32+1 - sbc _83+1 - sta _32+1 - //SEG300 [166] (byte~) calculate_matrix_16::$33 ← > (signed word~) calculate_matrix_16::$32 -- vbuaa=_hi_vwsz1 - //SEG301 [167] *((const signed byte[9]) rotation_matrix#0+(byte/signed byte/word/signed word/dword/signed dword) 3) ← (signed byte)(byte~) calculate_matrix_16::$33 -- _deref_pbsc1=vbsaa + sbc COSQ,y + //SEG107 [79] *((const signed byte[9]) rotation_matrix#0+(byte/signed byte/word/signed word/dword/signed dword) 3) ← (signed byte~) calculate_matrix::$17 -- _deref_pbsc1=vbsaa sta rotation_matrix+3 - //SEG302 [168] (signed word~) calculate_matrix_16::$35 ← (signed word)(word~) calculate_matrix_16::$79 + (signed word)(word~) calculate_matrix_16::$80 -- vwsz1=vwsz1_plus_vwsz2 - lda _35 + //SEG108 [80] (signed byte~) calculate_matrix::$18 ← *((const signed byte*) COSH#0 + (signed byte) calculate_matrix::t3#0) + *((const signed byte*) COSH#0 + (signed byte) calculate_matrix::t4#0) -- vbsaa=pbsc1_derefidx_vbsz1_plus_pbsc1_derefidx_vbsz2 + ldy t4 clc - adc _80 - sta _35 - lda _35+1 - adc _80+1 - sta _35+1 - //SEG303 [169] (signed word~) calculate_matrix_16::$36 ← (signed word~) calculate_matrix_16::$35 + (signed word)(word~) calculate_matrix_16::$82 -- vwsz1=vwsz2_plus_vwsz1 - lda _36 - clc - adc _35 - sta _36 - lda _36+1 - adc _35+1 - sta _36+1 - //SEG304 [170] (signed word~) calculate_matrix_16::$37 ← (signed word~) calculate_matrix_16::$36 - (signed word)(word~) calculate_matrix_16::$81 -- vwsz1=vwsz2_minus_vwsz1 - lda _36 - sec - sbc _37 - sta _37 - lda _36+1 - sbc _37+1 - sta _37+1 - //SEG305 [171] (signed word~) calculate_matrix_16::$38 ← (signed word~) calculate_matrix_16::$37 + (signed word)(word~) calculate_matrix_16::$83 -- vwsz1=vwsz2_plus_vwsz1 - lda _38 - clc - adc _37 - sta _38 - lda _38+1 - adc _37+1 - sta _38+1 - //SEG306 [172] (signed word~) calculate_matrix_16::$39 ← (signed word~) calculate_matrix_16::$38 - (signed word)(word~) calculate_matrix_16::$84 -- vwsz1=vwsz2_minus_vwsz1 - lda _38 - sec - sbc _39 - sta _39 - lda _38+1 - sbc _39+1 - sta _39+1 - //SEG307 [173] (byte~) calculate_matrix_16::$40 ← > (signed word~) calculate_matrix_16::$39 -- vbuaa=_hi_vwsz1 - //SEG308 [174] *((const signed byte[9]) rotation_matrix#0+(byte/signed byte/word/signed word/dword/signed dword) 7) ← (signed byte)(byte~) calculate_matrix_16::$40 -- _deref_pbsc1=vbsaa - sta rotation_matrix+7 - //SEG309 [175] (word~) calculate_matrix_16::$85 ← *((const byte*) COSH_HI#0 + (signed byte) calculate_matrix_16::t3#0) w= *((const byte*) COSH_LO#0 + (signed byte) calculate_matrix_16::t3#0) -- vwuz1=pbuc1_derefidx_vbsz2_word_pbuc2_derefidx_vbsz2 - ldy t3 - lda COSH_HI,y - sta _85+1 - lda COSH_LO,y - sta _85 - //SEG310 [176] (word~) calculate_matrix_16::$86 ← *((const byte*) COSH_HI#0 + (signed byte) calculate_matrix_16::t4#0) w= *((const byte*) COSH_LO#0 + (signed byte) calculate_matrix_16::t4#0) -- vwuz1=pbuc1_derefidx_vbsxx_word_pbuc2_derefidx_vbsxx - lda COSH_HI,x - sta _86+1 - lda COSH_LO,x - sta _86 - //SEG311 [177] (word~) calculate_matrix_16::$87 ← *((const byte*) SINQ_HI#0 + (signed byte) calculate_matrix_16::t5#0) w= *((const byte*) SINH_LO#0 + (signed byte) calculate_matrix_16::t5#0) -- vwuz1=pbuc1_derefidx_vbsz2_word_pbuc2_derefidx_vbsz2 + lda COSH,x + adc COSH,y + //SEG109 [81] (signed byte~) calculate_matrix::$19 ← (signed byte~) calculate_matrix::$18 + *((const signed byte*) SINQ#0 + (signed byte) calculate_matrix::t5#0) -- vbsaa=vbsaa_plus_pbsc1_derefidx_vbsz1 ldy t5 - lda SINQ_HI,y - sta _87+1 - lda SINH_LO,y - sta _87 - //SEG312 [178] (word~) calculate_matrix_16::$88 ← *((const byte*) SINQ_HI#0 + (signed byte) calculate_matrix_16::t6#0) w= *((const byte*) SINH_LO#0 + (signed byte) calculate_matrix_16::t6#0) -- vwuz1=pbuc1_derefidx_vbsz2_word_pbuc2_derefidx_vbsz2 + clc + adc SINQ,y + //SEG110 [82] (signed byte~) calculate_matrix::$20 ← (signed byte~) calculate_matrix::$19 - *((const signed byte*) SINQ#0 + (signed byte) calculate_matrix::t6#0) -- vbsaa=vbsaa_minus_pbsc1_derefidx_vbsz1 ldy t6 - lda SINQ_HI,y - sta _88+1 - lda SINH_LO,y - sta _88 - //SEG313 [179] (word~) calculate_matrix_16::$89 ← *((const byte*) SINQ_HI#0 + (signed byte) calculate_matrix_16::t7#0) w= *((const byte*) SINH_LO#0 + (signed byte) calculate_matrix_16::t7#0) -- vwuz1=pbuc1_derefidx_vbsz2_word_pbuc2_derefidx_vbsz2 + sec + sbc SINQ,y + //SEG111 [83] (signed byte~) calculate_matrix::$21 ← (signed byte~) calculate_matrix::$20 - *((const signed byte*) SINQ#0 + (signed byte) calculate_matrix::t7#0) -- vbsaa=vbsaa_minus_pbsc1_derefidx_vbsz1 ldy t7 - lda SINQ_HI,y - sta _89+1 - lda SINH_LO,y - sta _89 - //SEG314 [180] (word~) calculate_matrix_16::$90 ← *((const byte*) SINQ_HI#0 + (signed byte) calculate_matrix_16::t8#0) w= *((const byte*) SINH_LO#0 + (signed byte) calculate_matrix_16::t8#0) -- vwuz1=pbuc1_derefidx_vbsz2_word_pbuc2_derefidx_vbsz2 + sec + sbc SINQ,y + //SEG112 [84] (signed byte~) calculate_matrix::$22 ← (signed byte~) calculate_matrix::$21 - *((const signed byte*) SINQ#0 + (signed byte) calculate_matrix::t8#0) -- vbsaa=vbsaa_minus_pbsc1_derefidx_vbsz1 ldy t8 - lda SINQ_HI,y - sta _90+1 - lda SINH_LO,y - sta _90 - //SEG315 [181] (signed word~) calculate_matrix_16::$48 ← (signed word)(word~) calculate_matrix_16::$85 + (signed word)(word~) calculate_matrix_16::$86 -- vwsz1=vwsz2_plus_vwsz3 - lda _85 - clc - adc _86 - sta _48 - lda _85+1 - adc _86+1 - sta _48+1 - //SEG316 [182] (signed word~) calculate_matrix_16::$49 ← (signed word~) calculate_matrix_16::$48 + (signed word)(word~) calculate_matrix_16::$87 -- vwsz1=vwsz1_plus_vwsz2 - lda _49 - clc - adc _87 - sta _49 - lda _49+1 - adc _87+1 - sta _49+1 - //SEG317 [183] (signed word~) calculate_matrix_16::$50 ← (signed word~) calculate_matrix_16::$49 - (signed word)(word~) calculate_matrix_16::$88 -- vwsz1=vwsz1_minus_vwsz2 - lda _50 sec - sbc _88 - sta _50 - lda _50+1 - sbc _88+1 - sta _50+1 - //SEG318 [184] (signed word~) calculate_matrix_16::$51 ← (signed word~) calculate_matrix_16::$50 - (signed word)(word~) calculate_matrix_16::$89 -- vwsz1=vwsz1_minus_vwsz2 - lda _51 - sec - sbc _89 - sta _51 - lda _51+1 - sbc _89+1 - sta _51+1 - //SEG319 [185] (signed word~) calculate_matrix_16::$52 ← (signed word~) calculate_matrix_16::$51 - (signed word)(word~) calculate_matrix_16::$90 -- vwsz1=vwsz1_minus_vwsz2 - lda _52 - sec - sbc _90 - sta _52 - lda _52+1 - sbc _90+1 - sta _52+1 - //SEG320 [186] (byte~) calculate_matrix_16::$53 ← > (signed word~) calculate_matrix_16::$52 -- vbuaa=_hi_vwsz1 - //SEG321 [187] *((const signed byte[9]) rotation_matrix#0+(byte/signed byte/word/signed word/dword/signed dword) 4) ← (signed byte)(byte~) calculate_matrix_16::$53 -- _deref_pbsc1=vbsaa + sbc SINQ,y + //SEG113 [85] *((const signed byte[9]) rotation_matrix#0+(byte/signed byte/word/signed word/dword/signed dword) 4) ← (signed byte~) calculate_matrix::$22 -- _deref_pbsc1=vbsaa sta rotation_matrix+4 - //SEG322 [188] (signed word~) calculate_matrix_16::$55 ← (signed word)(word~) calculate_matrix_16::$86 - (signed word)(word~) calculate_matrix_16::$85 -- vwsz1=vwsz2_minus_vwsz1 - lda _86 + //SEG114 [86] (signed byte~) calculate_matrix::$23 ← *((const signed byte*) SINH#0 + (signed byte) calculate_matrix::t9#0) - *((const signed byte*) SINH#0 + (signed byte) calculate_matrix::t10#0) -- vbsaa=pbsc1_derefidx_vbsz1_minus_pbsc1_derefidx_vbsz2 + ldx t9 + ldy t10 sec - sbc _55 - sta _55 - lda _86+1 - sbc _55+1 - sta _55+1 - //SEG323 [189] (signed word~) calculate_matrix_16::$56 ← (signed word~) calculate_matrix_16::$55 + (signed word)(word~) calculate_matrix_16::$88 -- vwsz1=vwsz2_plus_vwsz1 - lda _56 - clc - adc _55 - sta _56 - lda _56+1 - adc _55+1 - sta _56+1 - //SEG324 [190] (signed word~) calculate_matrix_16::$57 ← (signed word~) calculate_matrix_16::$56 - (signed word)(word~) calculate_matrix_16::$87 -- vwsz1=vwsz2_minus_vwsz1 - lda _56 - sec - sbc _57 - sta _57 - lda _56+1 - sbc _57+1 - sta _57+1 - //SEG325 [191] (signed word~) calculate_matrix_16::$58 ← (signed word~) calculate_matrix_16::$57 - (signed word)(word~) calculate_matrix_16::$89 -- vwsz1=vwsz2_minus_vwsz1 - lda _57 - sec - sbc _58 - sta _58 - lda _57+1 - sbc _58+1 - sta _58+1 - //SEG326 [192] (signed word~) calculate_matrix_16::$59 ← (signed word~) calculate_matrix_16::$58 - (signed word)(word~) calculate_matrix_16::$90 -- vwsz1=vwsz2_minus_vwsz1 - lda _58 - sec - sbc _59 - sta _59 - lda _58+1 - sbc _59+1 - sta _59+1 - //SEG327 [193] (byte~) calculate_matrix_16::$60 ← > (signed word~) calculate_matrix_16::$59 -- vbuaa=_hi_vwsz1 - //SEG328 [194] *((const signed byte[9]) rotation_matrix#0+(byte/signed byte/word/signed word/dword/signed dword) 6) ← (signed byte)(byte~) calculate_matrix_16::$60 -- _deref_pbsc1=vbsaa - sta rotation_matrix+6 - //SEG329 [195] (signed byte) calculate_matrix_16::t9#0 ← (signed byte) calculate_matrix_16::sy#0 - (signed byte) calculate_matrix_16::sx#0 -- vbsxx=vbsz1_minus_vbsz2 - lda sy - sec - sbc sx - tax - //SEG330 [196] (signed byte) calculate_matrix_16::t10#0 ← (signed byte) calculate_matrix_16::sy#0 + (signed byte) calculate_matrix_16::sx#0 -- vbsyy=vbsz1_plus_vbsz2 - lda sy - clc - adc sx - tay - //SEG331 [197] (word~) calculate_matrix_16::$91 ← *((const byte*) SINH_HI#0 + (signed byte) calculate_matrix_16::t9#0) w= *((const byte*) SINH_LO#0 + (signed byte) calculate_matrix_16::t9#0) -- vwuz1=pbuc1_derefidx_vbsxx_word_pbuc2_derefidx_vbsxx - lda SINH_HI,x - sta _91+1 - lda SINH_LO,x - sta _91 - //SEG332 [198] (word~) calculate_matrix_16::$92 ← *((const byte*) SINH_HI#0 + (signed byte) calculate_matrix_16::t10#0) w= *((const byte*) SINH_LO#0 + (signed byte) calculate_matrix_16::t10#0) -- vwuz1=pbuc1_derefidx_vbsyy_word_pbuc2_derefidx_vbsyy - lda SINH_HI,y - sta _92+1 - lda SINH_LO,y - sta _92 - //SEG333 [199] (signed word~) calculate_matrix_16::$66 ← (signed word)(word~) calculate_matrix_16::$91 - (signed word)(word~) calculate_matrix_16::$92 -- vwsz1=vwsz1_minus_vwsz2 - lda _66 - sec - sbc _92 - sta _66 - lda _66+1 - sbc _92+1 - sta _66+1 - //SEG334 [200] (byte~) calculate_matrix_16::$67 ← > (signed word~) calculate_matrix_16::$66 -- vbuaa=_hi_vwsz1 - //SEG335 [201] *((const signed byte[9]) rotation_matrix#0+(byte/signed byte/word/signed word/dword/signed dword) 5) ← (signed byte)(byte~) calculate_matrix_16::$67 -- _deref_pbsc1=vbsaa + lda SINH,x + sbc SINH,y + //SEG115 [87] *((const signed byte[9]) rotation_matrix#0+(byte/signed byte/word/signed word/dword/signed dword) 5) ← (signed byte~) calculate_matrix::$23 -- _deref_pbsc1=vbsaa sta rotation_matrix+5 - //SEG336 [202] (word~) calculate_matrix_16::$93 ← *((const byte*) COSH_HI#0 + (signed byte) calculate_matrix_16::t9#0) w= *((const byte*) COSH_LO#0 + (signed byte) calculate_matrix_16::t9#0) -- vwuz1=pbuc1_derefidx_vbsxx_word_pbuc2_derefidx_vbsxx - lda COSH_HI,x - sta _93+1 - lda COSH_LO,x - sta _93 - //SEG337 [203] (word~) calculate_matrix_16::$94 ← *((const byte*) COSH_HI#0 + (signed byte) calculate_matrix_16::t10#0) w= *((const byte*) COSH_LO#0 + (signed byte) calculate_matrix_16::t10#0) -- vwuz1=pbuc1_derefidx_vbsyy_word_pbuc2_derefidx_vbsyy - lda COSH_HI,y - sta _94+1 - lda COSH_LO,y - sta _94 - //SEG338 [204] (signed word~) calculate_matrix_16::$71 ← (signed word)(word~) calculate_matrix_16::$93 + (signed word)(word~) calculate_matrix_16::$94 -- vwsz1=vwsz1_plus_vwsz2 - lda _71 + //SEG116 [88] (signed byte~) calculate_matrix::$24 ← *((const signed byte*) COSH#0 + (signed byte) calculate_matrix::t4#0) - *((const signed byte*) COSH#0 + (signed byte) calculate_matrix::t3#0) -- vbsaa=pbsc1_derefidx_vbsz1_minus_pbsc1_derefidx_vbsz2 + ldx t4 + ldy t3 + sec + lda COSH,x + sbc COSH,y + //SEG117 [89] (signed byte~) calculate_matrix::$25 ← (signed byte~) calculate_matrix::$24 + *((const signed byte*) SINQ#0 + (signed byte) calculate_matrix::t6#0) -- vbsaa=vbsaa_plus_pbsc1_derefidx_vbsz1 + ldy t6 clc - adc _94 - sta _71 - lda _71+1 - adc _94+1 - sta _71+1 - //SEG339 [205] (byte~) calculate_matrix_16::$72 ← > (signed word~) calculate_matrix_16::$71 -- vbuaa=_hi_vwsz1 - //SEG340 [206] *((const signed byte[9]) rotation_matrix#0+(byte/signed byte/word/signed word/dword/signed dword) 8) ← (signed byte)(byte~) calculate_matrix_16::$72 -- _deref_pbsc1=vbsaa + adc SINQ,y + //SEG118 [90] (signed byte~) calculate_matrix::$26 ← (signed byte~) calculate_matrix::$25 - *((const signed byte*) SINQ#0 + (signed byte) calculate_matrix::t5#0) -- vbsaa=vbsaa_minus_pbsc1_derefidx_vbsz1 + ldy t5 + sec + sbc SINQ,y + //SEG119 [91] (signed byte~) calculate_matrix::$27 ← (signed byte~) calculate_matrix::$26 - *((const signed byte*) SINQ#0 + (signed byte) calculate_matrix::t8#0) -- vbsaa=vbsaa_minus_pbsc1_derefidx_vbsz1 + ldy t8 + sec + sbc SINQ,y + //SEG120 [92] (signed byte~) calculate_matrix::$28 ← (signed byte~) calculate_matrix::$27 - *((const signed byte*) SINQ#0 + (signed byte) calculate_matrix::t7#0) -- vbsaa=vbsaa_minus_pbsc1_derefidx_vbsz1 + ldy t7 + sec + sbc SINQ,y + //SEG121 [93] *((const signed byte[9]) rotation_matrix#0+(byte/signed byte/word/signed word/dword/signed dword) 6) ← (signed byte~) calculate_matrix::$28 -- _deref_pbsc1=vbsaa + sta rotation_matrix+6 + //SEG122 [94] (signed byte~) calculate_matrix::$29 ← *((const signed byte*) SINH#0 + (signed byte) calculate_matrix::t3#0) + *((const signed byte*) SINH#0 + (signed byte) calculate_matrix::t4#0) -- vbsaa=pbsc1_derefidx_vbsz1_plus_pbsc1_derefidx_vbsz2 + ldx t3 + ldy t4 + clc + lda SINH,x + adc SINH,y + //SEG123 [95] (signed byte~) calculate_matrix::$30 ← (signed byte~) calculate_matrix::$29 + *((const signed byte*) COSQ#0 + (signed byte) calculate_matrix::t6#0) -- vbsaa=vbsaa_plus_pbsc1_derefidx_vbsz1 + ldy t6 + clc + adc COSQ,y + //SEG124 [96] (signed byte~) calculate_matrix::$31 ← (signed byte~) calculate_matrix::$30 - *((const signed byte*) COSQ#0 + (signed byte) calculate_matrix::t5#0) -- vbsaa=vbsaa_minus_pbsc1_derefidx_vbsz1 + ldy t5 + sec + sbc COSQ,y + //SEG125 [97] (signed byte~) calculate_matrix::$32 ← (signed byte~) calculate_matrix::$31 + *((const signed byte*) COSQ#0 + (signed byte) calculate_matrix::t7#0) -- vbsaa=vbsaa_plus_pbsc1_derefidx_vbsz1 + ldy t7 + clc + adc COSQ,y + //SEG126 [98] (signed byte~) calculate_matrix::$33 ← (signed byte~) calculate_matrix::$32 - *((const signed byte*) COSQ#0 + (signed byte) calculate_matrix::t8#0) -- vbsaa=vbsaa_minus_pbsc1_derefidx_vbsz1 + ldy t8 + sec + sbc COSQ,y + //SEG127 [99] *((const signed byte[9]) rotation_matrix#0+(byte/signed byte/word/signed word/dword/signed dword) 7) ← (signed byte~) calculate_matrix::$33 -- _deref_pbsc1=vbsaa + sta rotation_matrix+7 + //SEG128 [100] (signed byte~) calculate_matrix::$34 ← *((const signed byte*) COSH#0 + (signed byte) calculate_matrix::t9#0) + *((const signed byte*) COSH#0 + (signed byte) calculate_matrix::t10#0) -- vbsaa=pbsc1_derefidx_vbsz1_plus_pbsc1_derefidx_vbsz2 + ldx t9 + ldy t10 + clc + lda COSH,x + adc COSH,y + //SEG129 [101] *((const signed byte[9]) rotation_matrix#0+(byte/signed byte/word/signed word/dword/signed dword) 8) ← (signed byte~) calculate_matrix::$34 -- _deref_pbsc1=vbsaa sta rotation_matrix+8 - //SEG341 calculate_matrix_16::@return - //SEG342 [207] return + //SEG130 calculate_matrix::@return + //SEG131 [102] return rts } -//SEG343 debug_print_init -debug_print_init: { - .label COLS = $d800 - .label at_line = SCREEN+$10*$28 - .label at_cols = COLS+$10*$28 - .label _59 = 7 - .label _60 = 7 - .label _63 = 7 - .label _64 = 7 - .label _67 = 7 - .label _68 = 7 - .label _71 = 7 - .label _72 = 7 - .label _75 = 7 - .label _76 = 7 - .label _79 = 7 - .label _80 = 7 - .label _83 = 7 - .label _84 = 7 - .label _87 = 7 - .label _88 = 7 - .label _91 = 7 - .label _92 = 7 - .label col = 4 - .label c = 2 - .label i = 3 - //SEG344 [209] call print_cls - //SEG345 [286] phi from debug_print_init to print_cls [phi:debug_print_init->print_cls] - jsr print_cls - //SEG346 [210] phi from debug_print_init to debug_print_init::@5 [phi:debug_print_init->debug_print_init::@5] - //SEG347 debug_print_init::@5 - //SEG348 [211] call print_str_at - //SEG349 [279] phi from debug_print_init::@5 to print_str_at [phi:debug_print_init::@5->print_str_at] - //SEG350 [279] phi (byte*) print_str_at::at#15 = (const byte*) SCREEN#0+(byte/signed byte/word/signed word/dword/signed dword) 34 [phi:debug_print_init::@5->print_str_at#0] -- pbuz1=pbuc1 - lda #SCREEN+$22 - sta print_str_at.at+1 - //SEG351 [279] phi (byte*) print_str_at::str#15 = (const string) debug_print_init::str [phi:debug_print_init::@5->print_str_at#1] -- pbuz1=pbuc1 - lda #str - sta print_str_at.str+1 - jsr print_str_at - //SEG352 [212] phi from debug_print_init::@5 to debug_print_init::@6 [phi:debug_print_init::@5->debug_print_init::@6] - //SEG353 debug_print_init::@6 - //SEG354 [213] call print_str_at - //SEG355 [279] phi from debug_print_init::@6 to print_str_at [phi:debug_print_init::@6->print_str_at] - //SEG356 [279] phi (byte*) print_str_at::at#15 = (const byte*) SCREEN#0+(byte/signed byte/word/signed word/dword/signed dword) 40*(byte/signed byte/word/signed word/dword/signed dword) 1+(byte/signed byte/word/signed word/dword/signed dword) 34 [phi:debug_print_init::@6->print_str_at#0] -- pbuz1=pbuc1 - lda #SCREEN+$28*1+$22 - sta print_str_at.at+1 - //SEG357 [279] phi (byte*) print_str_at::str#15 = (const string) debug_print_init::str1 [phi:debug_print_init::@6->print_str_at#1] -- pbuz1=pbuc1 - lda #str1 - sta print_str_at.str+1 - jsr print_str_at - //SEG358 [214] phi from debug_print_init::@6 to debug_print_init::@7 [phi:debug_print_init::@6->debug_print_init::@7] - //SEG359 debug_print_init::@7 - //SEG360 [215] call print_str_at - //SEG361 [279] phi from debug_print_init::@7 to print_str_at [phi:debug_print_init::@7->print_str_at] - //SEG362 [279] phi (byte*) print_str_at::at#15 = (const byte*) SCREEN#0+(byte/signed byte/word/signed word/dword/signed dword) 40*(byte/signed byte/word/signed word/dword/signed dword) 2+(byte/signed byte/word/signed word/dword/signed dword) 34 [phi:debug_print_init::@7->print_str_at#0] -- pbuz1=pbuc1 - lda #SCREEN+$28*2+$22 - sta print_str_at.at+1 - //SEG363 [279] phi (byte*) print_str_at::str#15 = (const string) debug_print_init::str2 [phi:debug_print_init::@7->print_str_at#1] -- pbuz1=pbuc1 - lda #str2 - sta print_str_at.str+1 - jsr print_str_at - //SEG364 [216] phi from debug_print_init::@7 to debug_print_init::@8 [phi:debug_print_init::@7->debug_print_init::@8] - //SEG365 debug_print_init::@8 - //SEG366 [217] call print_str_at - //SEG367 [279] phi from debug_print_init::@8 to print_str_at [phi:debug_print_init::@8->print_str_at] - //SEG368 [279] phi (byte*) print_str_at::at#15 = (const byte*) SCREEN#0+(byte/signed byte/word/signed word/dword/signed dword) 40*(byte/signed byte/word/signed word/dword/signed dword) 16 [phi:debug_print_init::@8->print_str_at#0] -- pbuz1=pbuc1 - lda #SCREEN+$28*$10 - sta print_str_at.at+1 - //SEG369 [279] phi (byte*) print_str_at::str#15 = (const string) debug_print_init::str3 [phi:debug_print_init::@8->print_str_at#1] -- pbuz1=pbuc1 - lda #str3 - sta print_str_at.str+1 - jsr print_str_at - //SEG370 [218] phi from debug_print_init::@8 to debug_print_init::@9 [phi:debug_print_init::@8->debug_print_init::@9] - //SEG371 debug_print_init::@9 - //SEG372 [219] call print_str_at - //SEG373 [279] phi from debug_print_init::@9 to print_str_at [phi:debug_print_init::@9->print_str_at] - //SEG374 [279] phi (byte*) print_str_at::at#15 = (const byte*) SCREEN#0+(byte/signed byte/word/signed word/dword/signed dword) 40*(byte/signed byte/word/signed word/dword/signed dword) 17 [phi:debug_print_init::@9->print_str_at#0] -- pbuz1=pbuc1 - lda #SCREEN+$28*$11 - sta print_str_at.at+1 - //SEG375 [279] phi (byte*) print_str_at::str#15 = (const string) debug_print_init::str4 [phi:debug_print_init::@9->print_str_at#1] -- pbuz1=pbuc1 - lda #str4 - sta print_str_at.str+1 - jsr print_str_at - //SEG376 [220] phi from debug_print_init::@9 to debug_print_init::@10 [phi:debug_print_init::@9->debug_print_init::@10] - //SEG377 debug_print_init::@10 - //SEG378 [221] call print_str_at - //SEG379 [279] phi from debug_print_init::@10 to print_str_at [phi:debug_print_init::@10->print_str_at] - //SEG380 [279] phi (byte*) print_str_at::at#15 = (const byte*) SCREEN#0+(byte/signed byte/word/signed word/dword/signed dword) 40*(byte/signed byte/word/signed word/dword/signed dword) 18 [phi:debug_print_init::@10->print_str_at#0] -- pbuz1=pbuc1 - lda #SCREEN+$28*$12 - sta print_str_at.at+1 - //SEG381 [279] phi (byte*) print_str_at::str#15 = (const string) debug_print_init::str5 [phi:debug_print_init::@10->print_str_at#1] -- pbuz1=pbuc1 - lda #str5 - sta print_str_at.str+1 - jsr print_str_at - //SEG382 [222] phi from debug_print_init::@10 to debug_print_init::@11 [phi:debug_print_init::@10->debug_print_init::@11] - //SEG383 debug_print_init::@11 - //SEG384 [223] call print_str_at - //SEG385 [279] phi from debug_print_init::@11 to print_str_at [phi:debug_print_init::@11->print_str_at] - //SEG386 [279] phi (byte*) print_str_at::at#15 = (const byte*) SCREEN#0+(byte/signed byte/word/signed word/dword/signed dword) 40*(byte/signed byte/word/signed word/dword/signed dword) 19 [phi:debug_print_init::@11->print_str_at#0] -- pbuz1=pbuc1 - lda #SCREEN+$28*$13 - sta print_str_at.at+1 - //SEG387 [279] phi (byte*) print_str_at::str#15 = (const string) debug_print_init::str6 [phi:debug_print_init::@11->print_str_at#1] -- pbuz1=pbuc1 - lda #str6 - sta print_str_at.str+1 - jsr print_str_at - //SEG388 [224] phi from debug_print_init::@11 to debug_print_init::@12 [phi:debug_print_init::@11->debug_print_init::@12] - //SEG389 debug_print_init::@12 - //SEG390 [225] call print_str_at - //SEG391 [279] phi from debug_print_init::@12 to print_str_at [phi:debug_print_init::@12->print_str_at] - //SEG392 [279] phi (byte*) print_str_at::at#15 = (const byte*) SCREEN#0+(byte/signed byte/word/signed word/dword/signed dword) 40*(byte/signed byte/word/signed word/dword/signed dword) 20 [phi:debug_print_init::@12->print_str_at#0] -- pbuz1=pbuc1 - lda #SCREEN+$28*$14 - sta print_str_at.at+1 - //SEG393 [279] phi (byte*) print_str_at::str#15 = (const string) debug_print_init::str7 [phi:debug_print_init::@12->print_str_at#1] -- pbuz1=pbuc1 - lda #str7 - sta print_str_at.str+1 - jsr print_str_at - //SEG394 [226] phi from debug_print_init::@12 to debug_print_init::@13 [phi:debug_print_init::@12->debug_print_init::@13] - //SEG395 debug_print_init::@13 - //SEG396 [227] call print_str_at - //SEG397 [279] phi from debug_print_init::@13 to print_str_at [phi:debug_print_init::@13->print_str_at] - //SEG398 [279] phi (byte*) print_str_at::at#15 = (const byte*) SCREEN#0+(byte/signed byte/word/signed word/dword/signed dword) 40*(byte/signed byte/word/signed word/dword/signed dword) 21 [phi:debug_print_init::@13->print_str_at#0] -- pbuz1=pbuc1 - lda #SCREEN+$28*$15 - sta print_str_at.at+1 - //SEG399 [279] phi (byte*) print_str_at::str#15 = (const string) debug_print_init::str8 [phi:debug_print_init::@13->print_str_at#1] -- pbuz1=pbuc1 - lda #str8 - sta print_str_at.str+1 - jsr print_str_at - //SEG400 [228] phi from debug_print_init::@13 to debug_print_init::@14 [phi:debug_print_init::@13->debug_print_init::@14] - //SEG401 debug_print_init::@14 - //SEG402 [229] call print_str_at - //SEG403 [279] phi from debug_print_init::@14 to print_str_at [phi:debug_print_init::@14->print_str_at] - //SEG404 [279] phi (byte*) print_str_at::at#15 = (const byte*) SCREEN#0+(byte/signed byte/word/signed word/dword/signed dword) 40*(byte/signed byte/word/signed word/dword/signed dword) 22 [phi:debug_print_init::@14->print_str_at#0] -- pbuz1=pbuc1 - lda #SCREEN+$28*$16 - sta print_str_at.at+1 - //SEG405 [279] phi (byte*) print_str_at::str#15 = (const string) debug_print_init::str9 [phi:debug_print_init::@14->print_str_at#1] -- pbuz1=pbuc1 - lda #str9 - sta print_str_at.str+1 - jsr print_str_at - //SEG406 [230] phi from debug_print_init::@14 to debug_print_init::@15 [phi:debug_print_init::@14->debug_print_init::@15] - //SEG407 debug_print_init::@15 - //SEG408 [231] call print_str_at - //SEG409 [279] phi from debug_print_init::@15 to print_str_at [phi:debug_print_init::@15->print_str_at] - //SEG410 [279] phi (byte*) print_str_at::at#15 = (const byte*) SCREEN#0+(byte/signed byte/word/signed word/dword/signed dword) 40*(byte/signed byte/word/signed word/dword/signed dword) 23 [phi:debug_print_init::@15->print_str_at#0] -- pbuz1=pbuc1 - lda #SCREEN+$28*$17 - sta print_str_at.at+1 - //SEG411 [279] phi (byte*) print_str_at::str#15 = (const string) debug_print_init::str10 [phi:debug_print_init::@15->print_str_at#1] -- pbuz1=pbuc1 - lda #str10 - sta print_str_at.str+1 - jsr print_str_at - //SEG412 [232] phi from debug_print_init::@15 to debug_print_init::@16 [phi:debug_print_init::@15->debug_print_init::@16] - //SEG413 debug_print_init::@16 - //SEG414 [233] call print_str_at - //SEG415 [279] phi from debug_print_init::@16 to print_str_at [phi:debug_print_init::@16->print_str_at] - //SEG416 [279] phi (byte*) print_str_at::at#15 = (const byte*) SCREEN#0+(byte/signed byte/word/signed word/dword/signed dword) 40*(byte/signed byte/word/signed word/dword/signed dword) 24 [phi:debug_print_init::@16->print_str_at#0] -- pbuz1=pbuc1 - lda #SCREEN+$28*$18 - sta print_str_at.at+1 - //SEG417 [279] phi (byte*) print_str_at::str#15 = (const string) debug_print_init::str11 [phi:debug_print_init::@16->print_str_at#1] -- pbuz1=pbuc1 - lda #str11 - sta print_str_at.str+1 - jsr print_str_at - //SEG418 [234] phi from debug_print_init::@16 to debug_print_init::@1 [phi:debug_print_init::@16->debug_print_init::@1] - //SEG419 [234] phi (byte) debug_print_init::i#2 = (byte/signed byte/word/signed word/dword/signed dword) 0 [phi:debug_print_init::@16->debug_print_init::@1#0] -- vbuz1=vbuc1 - lda #0 - sta i - //SEG420 [234] phi (byte) debug_print_init::c#2 = (byte/signed byte/word/signed word/dword/signed dword) 4 [phi:debug_print_init::@16->debug_print_init::@1#1] -- vbuz1=vbuc1 - lda #4 - sta c - //SEG421 [234] phi from debug_print_init::@3 to debug_print_init::@1 [phi:debug_print_init::@3->debug_print_init::@1] - //SEG422 [234] phi (byte) debug_print_init::i#2 = (byte) debug_print_init::i#1 [phi:debug_print_init::@3->debug_print_init::@1#0] -- register_copy - //SEG423 [234] phi (byte) debug_print_init::c#2 = (byte) debug_print_init::c#1 [phi:debug_print_init::@3->debug_print_init::@1#1] -- register_copy - //SEG424 debug_print_init::@1 - b1: - //SEG425 [235] (byte*) print_sbyte_at::at#0 ← (const byte*) debug_print_init::at_line#0 + (byte) debug_print_init::c#2 -- pbuz1=pbuc1_plus_vbuz2 - lda c - clc - adc #at_line - adc #0 - sta print_sbyte_at.at+1 - //SEG426 [236] (signed byte) print_sbyte_at::b#1 ← *((const signed byte[8]) xs#0 + (byte) debug_print_init::i#2) -- vbsxx=pbsc1_derefidx_vbuz1 - ldx i - lda xs,x - tax - //SEG427 [237] call print_sbyte_at - //SEG428 [103] phi from debug_print_init::@1 to print_sbyte_at [phi:debug_print_init::@1->print_sbyte_at] - //SEG429 [103] phi (byte*) print_sbyte_at::at#21 = (byte*) print_sbyte_at::at#0 [phi:debug_print_init::@1->print_sbyte_at#0] -- register_copy - //SEG430 [103] phi (signed byte) print_sbyte_at::b#22 = (signed byte) print_sbyte_at::b#1 [phi:debug_print_init::@1->print_sbyte_at#1] -- register_copy - jsr print_sbyte_at - //SEG431 debug_print_init::@18 - //SEG432 [238] (byte*) print_sbyte_at::at#1 ← (const byte*) debug_print_init::at_line#0+(byte/signed byte/word/signed word/dword/signed dword) 40*(byte/signed byte/word/signed word/dword/signed dword) 1 + (byte) debug_print_init::c#2 -- pbuz1=pbuc1_plus_vbuz2 - lda c - clc - adc #at_line+$28*1 - adc #0 - sta print_sbyte_at.at+1 - //SEG433 [239] (signed byte) print_sbyte_at::b#2 ← *((const signed byte[8]) ys#0 + (byte) debug_print_init::i#2) -- vbsxx=pbsc1_derefidx_vbuz1 - ldx i - lda ys,x - tax - //SEG434 [240] call print_sbyte_at - //SEG435 [103] phi from debug_print_init::@18 to print_sbyte_at [phi:debug_print_init::@18->print_sbyte_at] - //SEG436 [103] phi (byte*) print_sbyte_at::at#21 = (byte*) print_sbyte_at::at#1 [phi:debug_print_init::@18->print_sbyte_at#0] -- register_copy - //SEG437 [103] phi (signed byte) print_sbyte_at::b#22 = (signed byte) print_sbyte_at::b#2 [phi:debug_print_init::@18->print_sbyte_at#1] -- register_copy - jsr print_sbyte_at - //SEG438 debug_print_init::@19 - //SEG439 [241] (byte*) print_sbyte_at::at#2 ← (const byte*) debug_print_init::at_line#0+(byte/signed byte/word/signed word/dword/signed dword) 40*(byte/signed byte/word/signed word/dword/signed dword) 2 + (byte) debug_print_init::c#2 -- pbuz1=pbuc1_plus_vbuz2 - lda c - clc - adc #at_line+$28*2 - adc #0 - sta print_sbyte_at.at+1 - //SEG440 [242] (signed byte) print_sbyte_at::b#3 ← *((const signed byte[8]) zs#0 + (byte) debug_print_init::i#2) -- vbsxx=pbsc1_derefidx_vbuz1 - ldx i - lda zs,x - tax - //SEG441 [243] call print_sbyte_at - //SEG442 [103] phi from debug_print_init::@19 to print_sbyte_at [phi:debug_print_init::@19->print_sbyte_at] - //SEG443 [103] phi (byte*) print_sbyte_at::at#21 = (byte*) print_sbyte_at::at#2 [phi:debug_print_init::@19->print_sbyte_at#0] -- register_copy - //SEG444 [103] phi (signed byte) print_sbyte_at::b#22 = (signed byte) print_sbyte_at::b#3 [phi:debug_print_init::@19->print_sbyte_at#1] -- register_copy - jsr print_sbyte_at - //SEG445 [244] phi from debug_print_init::@19 to debug_print_init::@2 [phi:debug_print_init::@19->debug_print_init::@2] - //SEG446 [244] phi (byte) debug_print_init::j#2 = (byte/signed byte/word/signed word/dword/signed dword) 0 [phi:debug_print_init::@19->debug_print_init::@2#0] -- vbuxx=vbuc1 - ldx #0 - //SEG447 [244] phi from debug_print_init::@2 to debug_print_init::@2 [phi:debug_print_init::@2->debug_print_init::@2] - //SEG448 [244] phi (byte) debug_print_init::j#2 = (byte) debug_print_init::j#1 [phi:debug_print_init::@2->debug_print_init::@2#0] -- register_copy - //SEG449 debug_print_init::@2 - b2: - //SEG450 [245] (byte) debug_print_init::col#0 ← (byte/signed byte/word/signed word/dword/signed dword) 8 + (byte) debug_print_init::i#2 -- vbuz1=vbuc1_plus_vbuz2 - lda #8 - clc - adc i - sta col - //SEG451 [246] (byte*~) debug_print_init::$59 ← (const byte*) debug_print_init::at_cols#0 + (byte) debug_print_init::c#2 -- pbuz1=pbuc1_plus_vbuz2 - lda c - clc - adc #at_cols - adc #0 - sta _59+1 - //SEG452 [247] (byte*~) debug_print_init::$60 ← (byte*~) debug_print_init::$59 + (byte) debug_print_init::j#2 -- pbuz1=pbuz1_plus_vbuxx - txa - clc - adc _60 - sta _60 - lda #0 - adc _60+1 - sta _60+1 - //SEG453 [248] *((byte*~) debug_print_init::$60) ← (byte) debug_print_init::col#0 -- _deref_pbuz1=vbuz2 - lda col - ldy #0 - sta (_60),y - //SEG454 [249] (byte*~) debug_print_init::$63 ← (const byte*) debug_print_init::at_cols#0+(byte/signed byte/word/signed word/dword/signed dword) 40*(byte/signed byte/word/signed word/dword/signed dword) 1 + (byte) debug_print_init::c#2 -- pbuz1=pbuc1_plus_vbuz2 - lda c - clc - adc #at_cols+$28*1 - adc #0 - sta _63+1 - //SEG455 [250] (byte*~) debug_print_init::$64 ← (byte*~) debug_print_init::$63 + (byte) debug_print_init::j#2 -- pbuz1=pbuz1_plus_vbuxx - txa - clc - adc _64 - sta _64 - tya - adc _64+1 - sta _64+1 - //SEG456 [251] *((byte*~) debug_print_init::$64) ← (byte) debug_print_init::col#0 -- _deref_pbuz1=vbuz2 - lda col - sta (_64),y - //SEG457 [252] (byte*~) debug_print_init::$67 ← (const byte*) debug_print_init::at_cols#0+(byte/signed byte/word/signed word/dword/signed dword) 40*(byte/signed byte/word/signed word/dword/signed dword) 2 + (byte) debug_print_init::c#2 -- pbuz1=pbuc1_plus_vbuz2 - lda c - clc - adc #at_cols+$28*2 - adc #0 - sta _67+1 - //SEG458 [253] (byte*~) debug_print_init::$68 ← (byte*~) debug_print_init::$67 + (byte) debug_print_init::j#2 -- pbuz1=pbuz1_plus_vbuxx - txa - clc - adc _68 - sta _68 - tya - adc _68+1 - sta _68+1 - //SEG459 [254] *((byte*~) debug_print_init::$68) ← (byte) debug_print_init::col#0 -- _deref_pbuz1=vbuz2 - lda col - sta (_68),y - //SEG460 [255] (byte*~) debug_print_init::$71 ← (const byte*) debug_print_init::at_cols#0+(byte/signed byte/word/signed word/dword/signed dword) 40*(byte/signed byte/word/signed word/dword/signed dword) 3 + (byte) debug_print_init::c#2 -- pbuz1=pbuc1_plus_vbuz2 - lda c - clc - adc #at_cols+$28*3 - adc #0 - sta _71+1 - //SEG461 [256] (byte*~) debug_print_init::$72 ← (byte*~) debug_print_init::$71 + (byte) debug_print_init::j#2 -- pbuz1=pbuz1_plus_vbuxx - txa - clc - adc _72 - sta _72 - tya - adc _72+1 - sta _72+1 - //SEG462 [257] *((byte*~) debug_print_init::$72) ← (byte) debug_print_init::col#0 -- _deref_pbuz1=vbuz2 - lda col - sta (_72),y - //SEG463 [258] (byte*~) debug_print_init::$75 ← (const byte*) debug_print_init::at_cols#0+(byte/signed byte/word/signed word/dword/signed dword) 40*(byte/signed byte/word/signed word/dword/signed dword) 4 + (byte) debug_print_init::c#2 -- pbuz1=pbuc1_plus_vbuz2 - lda c - clc - adc #at_cols+$28*4 - adc #0 - sta _75+1 - //SEG464 [259] (byte*~) debug_print_init::$76 ← (byte*~) debug_print_init::$75 + (byte) debug_print_init::j#2 -- pbuz1=pbuz1_plus_vbuxx - txa - clc - adc _76 - sta _76 - tya - adc _76+1 - sta _76+1 - //SEG465 [260] *((byte*~) debug_print_init::$76) ← (byte) debug_print_init::col#0 -- _deref_pbuz1=vbuz2 - lda col - sta (_76),y - //SEG466 [261] (byte*~) debug_print_init::$79 ← (const byte*) debug_print_init::at_cols#0+(byte/signed byte/word/signed word/dword/signed dword) 40*(byte/signed byte/word/signed word/dword/signed dword) 5 + (byte) debug_print_init::c#2 -- pbuz1=pbuc1_plus_vbuz2 - lda c - clc - adc #at_cols+$28*5 - adc #0 - sta _79+1 - //SEG467 [262] (byte*~) debug_print_init::$80 ← (byte*~) debug_print_init::$79 + (byte) debug_print_init::j#2 -- pbuz1=pbuz1_plus_vbuxx - txa - clc - adc _80 - sta _80 - tya - adc _80+1 - sta _80+1 - //SEG468 [263] *((byte*~) debug_print_init::$80) ← (byte) debug_print_init::col#0 -- _deref_pbuz1=vbuz2 - lda col - sta (_80),y - //SEG469 [264] (byte*~) debug_print_init::$83 ← (const byte*) debug_print_init::at_cols#0+(byte/signed byte/word/signed word/dword/signed dword) 40*(byte/signed byte/word/signed word/dword/signed dword) 6 + (byte) debug_print_init::c#2 -- pbuz1=pbuc1_plus_vbuz2 - lda c - clc - adc #at_cols+$28*6 - adc #0 - sta _83+1 - //SEG470 [265] (byte*~) debug_print_init::$84 ← (byte*~) debug_print_init::$83 + (byte) debug_print_init::j#2 -- pbuz1=pbuz1_plus_vbuxx - txa - clc - adc _84 - sta _84 - tya - adc _84+1 - sta _84+1 - //SEG471 [266] *((byte*~) debug_print_init::$84) ← (byte) debug_print_init::col#0 -- _deref_pbuz1=vbuz2 - lda col - sta (_84),y - //SEG472 [267] (byte*~) debug_print_init::$87 ← (const byte*) debug_print_init::at_cols#0+(byte/signed byte/word/signed word/dword/signed dword) 40*(byte/signed byte/word/signed word/dword/signed dword) 7 + (byte) debug_print_init::c#2 -- pbuz1=pbuc1_plus_vbuz2 - lda c - clc - adc #at_cols+$28*7 - adc #0 - sta _87+1 - //SEG473 [268] (byte*~) debug_print_init::$88 ← (byte*~) debug_print_init::$87 + (byte) debug_print_init::j#2 -- pbuz1=pbuz1_plus_vbuxx - txa - clc - adc _88 - sta _88 - tya - adc _88+1 - sta _88+1 - //SEG474 [269] *((byte*~) debug_print_init::$88) ← (byte) debug_print_init::col#0 -- _deref_pbuz1=vbuz2 - lda col - sta (_88),y - //SEG475 [270] (byte*~) debug_print_init::$91 ← (const byte*) debug_print_init::at_cols#0+(byte/signed byte/word/signed word/dword/signed dword) 40*(byte/signed byte/word/signed word/dword/signed dword) 8 + (byte) debug_print_init::c#2 -- pbuz1=pbuc1_plus_vbuz2 - lda c - clc - adc #at_cols+$28*8 - adc #0 - sta _91+1 - //SEG476 [271] (byte*~) debug_print_init::$92 ← (byte*~) debug_print_init::$91 + (byte) debug_print_init::j#2 -- pbuz1=pbuz1_plus_vbuxx - txa - clc - adc _92 - sta _92 - tya - adc _92+1 - sta _92+1 - //SEG477 [272] *((byte*~) debug_print_init::$92) ← (byte) debug_print_init::col#0 -- _deref_pbuz1=vbuz2 - lda col - sta (_92),y - //SEG478 [273] (byte) debug_print_init::j#1 ← ++ (byte) debug_print_init::j#2 -- vbuxx=_inc_vbuxx - inx - //SEG479 [274] if((byte) debug_print_init::j#1!=(byte/signed byte/word/signed word/dword/signed dword) 4) goto debug_print_init::@2 -- vbuxx_neq_vbuc1_then_la1 - cpx #4 - beq !b2+ - jmp b2 - !b2: - //SEG480 debug_print_init::@3 - //SEG481 [275] (byte) debug_print_init::c#1 ← (byte) debug_print_init::c#2 + (byte/signed byte/word/signed word/dword/signed dword) 4 -- vbuz1=vbuz1_plus_vbuc1 - lda #4 - clc - adc c - sta c - //SEG482 [276] (byte) debug_print_init::i#1 ← ++ (byte) debug_print_init::i#2 -- vbuz1=_inc_vbuz1 - inc i - //SEG483 [277] if((byte) debug_print_init::i#1!=(byte/signed byte/word/signed word/dword/signed dword) 8) goto debug_print_init::@1 -- vbuz1_neq_vbuc1_then_la1 - lda i - cmp #8 - beq !b1+ - jmp b1 - !b1: - //SEG484 debug_print_init::@return - //SEG485 [278] return - rts - str: .text "sx@" - str1: .text "sy@" - str2: .text "sz@" - str3: .text "x@" - str4: .text "y@" - str5: .text "z@" - str6: .text "xr@" - str7: .text "yr@" - str8: .text "zr@" - str9: .text "pp@" - str10: .text "xp@" - str11: .text "yp@" -} -//SEG486 print_str_at -print_str_at: { - .label at = $a - .label str = 7 - //SEG487 [280] phi from print_str_at print_str_at::@2 to print_str_at::@1 [phi:print_str_at/print_str_at::@2->print_str_at::@1] - //SEG488 [280] phi (byte*) print_str_at::at#13 = (byte*) print_str_at::at#15 [phi:print_str_at/print_str_at::@2->print_str_at::@1#0] -- register_copy - //SEG489 [280] phi (byte*) print_str_at::str#13 = (byte*) print_str_at::str#15 [phi:print_str_at/print_str_at::@2->print_str_at::@1#1] -- register_copy - //SEG490 print_str_at::@1 - b1: - //SEG491 [281] if(*((byte*) print_str_at::str#13)!=(byte) '@') goto print_str_at::@2 -- _deref_pbuz1_neq_vbuc1_then_la1 - ldy #0 - lda (str),y - cmp #'@' - bne b2 - //SEG492 print_str_at::@return - //SEG493 [282] return - rts - //SEG494 print_str_at::@2 - b2: - //SEG495 [283] *((byte*) print_str_at::at#13) ← *((byte*) print_str_at::str#13) -- _deref_pbuz1=_deref_pbuz2 - ldy #0 - lda (str),y - sta (at),y - //SEG496 [284] (byte*) print_str_at::at#0 ← ++ (byte*) print_str_at::at#13 -- pbuz1=_inc_pbuz1 - inc at - bne !+ - inc at+1 - !: - //SEG497 [285] (byte*) print_str_at::str#0 ← ++ (byte*) print_str_at::str#13 -- pbuz1=_inc_pbuz1 - inc str - bne !+ - inc str+1 - !: - jmp b1 -} -//SEG498 print_cls -print_cls: { - .label sc = 7 - //SEG499 [287] phi from print_cls to print_cls::@1 [phi:print_cls->print_cls::@1] - //SEG500 [287] phi (byte*) print_cls::sc#2 = (const byte*) print_screen#0 [phi:print_cls->print_cls::@1#0] -- pbuz1=pbuc1 - lda #print_screen - sta sc+1 - //SEG501 [287] phi from print_cls::@1 to print_cls::@1 [phi:print_cls::@1->print_cls::@1] - //SEG502 [287] phi (byte*) print_cls::sc#2 = (byte*) print_cls::sc#1 [phi:print_cls::@1->print_cls::@1#0] -- register_copy - //SEG503 print_cls::@1 - b1: - //SEG504 [288] *((byte*) print_cls::sc#2) ← (byte) ' ' -- _deref_pbuz1=vbuc1 - lda #' ' - ldy #0 - sta (sc),y - //SEG505 [289] (byte*) print_cls::sc#1 ← ++ (byte*) print_cls::sc#2 -- pbuz1=_inc_pbuz1 - inc sc - bne !+ - inc sc+1 - !: - //SEG506 [290] if((byte*) print_cls::sc#1!=(const byte*) print_screen#0+(word/signed word/dword/signed dword) 1000) goto print_cls::@1 -- pbuz1_neq_pbuc1_then_la1 - lda sc+1 - cmp #>print_screen+$3e8 - bne b1 - lda sc - cmp #sprites_init::@1] - //SEG512 [293] phi (byte) sprites_init::i#2 = (byte/signed byte/word/signed word/dword/signed dword) 0 [phi:sprites_init->sprites_init::@1#0] -- vbuxx=vbuc1 + //SEG134 [104] phi from sprites_init to sprites_init::@1 [phi:sprites_init->sprites_init::@1] + //SEG135 [104] phi (byte) sprites_init::i#2 = (byte/signed byte/word/signed word/dword/signed dword) 0 [phi:sprites_init->sprites_init::@1#0] -- vbuxx=vbuc1 ldx #0 - //SEG513 [293] phi from sprites_init::@1 to sprites_init::@1 [phi:sprites_init::@1->sprites_init::@1] - //SEG514 [293] phi (byte) sprites_init::i#2 = (byte) sprites_init::i#1 [phi:sprites_init::@1->sprites_init::@1#0] -- register_copy - //SEG515 sprites_init::@1 + //SEG136 [104] phi from sprites_init::@1 to sprites_init::@1 [phi:sprites_init::@1->sprites_init::@1] + //SEG137 [104] phi (byte) sprites_init::i#2 = (byte) sprites_init::i#1 [phi:sprites_init::@1->sprites_init::@1#0] -- register_copy + //SEG138 sprites_init::@1 b1: - //SEG516 [294] *((const byte*) sprites_init::sprites_ptr#0 + (byte) sprites_init::i#2) ← ((byte))(const byte*) SPRITE#0/(byte/signed byte/word/signed word/dword/signed dword) 64 -- pbuc1_derefidx_vbuxx=vbuc2 + //SEG139 [105] *((const byte*) sprites_init::sprites_ptr#0 + (byte) sprites_init::i#2) ← ((byte))(const byte*) SPRITE#0/(byte/signed byte/word/signed word/dword/signed dword) 64 -- pbuc1_derefidx_vbuxx=vbuc2 lda #$ff&SPRITE/$40 sta sprites_ptr,x - //SEG517 [295] (byte/signed word/word/dword/signed dword~) sprites_init::$3 ← (byte/signed byte/word/signed word/dword/signed dword) 8 + (byte) sprites_init::i#2 -- vbuaa=vbuc1_plus_vbuxx - txa - clc - adc #8 - //SEG518 [296] *((const byte*) SPRITES_COLS#0 + (byte) sprites_init::i#2) ← (byte/signed word/word/dword/signed dword~) sprites_init::$3 -- pbuc1_derefidx_vbuxx=vbuaa + //SEG140 [106] *((const byte*) SPRITES_COLS#0 + (byte) sprites_init::i#2) ← (const byte) GREEN#0 -- pbuc1_derefidx_vbuxx=vbuc2 + lda #GREEN sta SPRITES_COLS,x - //SEG519 [297] (byte) sprites_init::i#1 ← ++ (byte) sprites_init::i#2 -- vbuxx=_inc_vbuxx + //SEG141 [107] (byte) sprites_init::i#1 ← ++ (byte) sprites_init::i#2 -- vbuxx=_inc_vbuxx inx - //SEG520 [298] if((byte) sprites_init::i#1!=(byte/signed byte/word/signed word/dword/signed dword) 8) goto sprites_init::@1 -- vbuxx_neq_vbuc1_then_la1 + //SEG142 [108] if((byte) sprites_init::i#1!=(byte/signed byte/word/signed word/dword/signed dword) 8) goto sprites_init::@1 -- vbuxx_neq_vbuc1_then_la1 cpx #8 bne b1 - //SEG521 sprites_init::@return - //SEG522 [299] return + //SEG143 sprites_init::@return + //SEG144 [109] return rts } - print_hextab: .text "0123456789abcdef" + zs: .byte $34, $34, $34, $34, $34, $34, $34, $34 xrs: .fill 8, 0 yrs: .fill 8, 0 zrs: .fill 8, 0 @@ -12141,9 +4777,8 @@ sprites_init: { xps: .fill 8, 0 yps: .fill 8, 0 rotation_matrix: .fill 9, 0 - xs: .byte -$5f, $5f, 0, 0, 0, 0, 0, $3f - ys: .byte 0, 0, -$5f, $5f, 0, 0, 0, 0 - zs: .byte 0, 0, 0, 0, -$5f, $5f, -0, 0 + xs: .byte -$34, -$34, -$34, 0, 0, $34, $34, $34 + ys: .byte -$34, 0, $34, -$34, $34, -$34, 0, $34 .pc = mulf_sqr1 "Inline" .for(var i=0;i<$200;i++) { .if(i<=159) { .byte round((i*i)/256) } diff --git a/src/test/ref/examples/3d/3d.sym b/src/test/ref/examples/3d/3d.sym index 731c04fc4..cdfa9ce6a 100644 --- a/src/test/ref/examples/3d/3d.sym +++ b/src/test/ref/examples/3d/3d.sym @@ -1,14 +1,14 @@ -(label) @29 +(label) @30 (label) @begin (label) @end (byte*) BORDERCOL (const byte*) BORDERCOL#0 BORDERCOL = ((byte*))(word/dword/signed dword) 53280 -(byte*) COSH_HI -(const byte*) COSH_HI#0 COSH_HI = (const byte*) SINH_HI#0+(byte/signed byte/word/signed word/dword/signed dword) 64 -(byte*) COSH_LO -(const byte*) COSH_LO#0 COSH_LO = (const byte*) SINH_LO#0+(byte/signed byte/word/signed word/dword/signed dword) 64 -(byte*) COSQ_HI -(const byte*) COSQ_HI#0 COSQ_HI = (const byte*) SINQ_HI#0+(byte/signed byte/word/signed word/dword/signed dword) 64 +(signed byte*) COSH +(const signed byte*) COSH#0 COSH = (const signed byte*) SINH#0+(byte/signed byte/word/signed word/dword/signed dword) 64 +(signed byte*) COSQ +(const signed byte*) COSQ#0 COSQ = (const signed byte*) SINQ#0+(byte/signed byte/word/signed word/dword/signed dword) 64 +(byte) GREEN +(const byte) GREEN#0 GREEN = (byte/signed byte/word/signed word/dword/signed dword) 5 (byte) LIGHT_BLUE (const byte) LIGHT_BLUE#0 LIGHT_BLUE = (byte/signed byte/word/signed word/dword/signed dword) 14 (byte) LIGHT_GREY @@ -17,8 +17,6 @@ (const signed byte*) PERSP_Z#0 PERSP_Z = ((signed byte*))(word/signed word/dword/signed dword) 10240 (byte*) RASTER (const byte*) RASTER#0 RASTER = ((byte*))(word/dword/signed dword) 53266 -(byte*) SCREEN -(const byte*) SCREEN#0 SCREEN = ((byte*))(word/signed word/dword/signed dword) 1024 (signed byte*) SINH (const signed byte*) SINH#0 SINH = ((signed byte*))(word/signed word/dword/signed dword) 8192 (byte*) SINH_HI @@ -48,216 +46,68 @@ (label) anim::@13 (label) anim::@15 (label) anim::@17 -(label) anim::@18 (label) anim::@4 (label) anim::@6 (label) anim::@7 (byte) anim::i -(byte) anim::i#1 i zp ZP_BYTE:5 151.5 -(byte) anim::i#2 i zp ZP_BYTE:5 71.29411764705881 +(byte) anim::i#1 i zp ZP_BYTE:4 151.5 +(byte) anim::i#2 i zp ZP_BYTE:4 71.29411764705881 (byte) anim::i2 (byte) anim::i2#0 reg byte x 75.75 -(void()) calculate_matrix_16((signed byte) calculate_matrix_16::sx , (signed byte) calculate_matrix_16::sy , (signed byte) calculate_matrix_16::sz) -(byte~) calculate_matrix_16::$10 reg byte a 2.0 -(signed word~) calculate_matrix_16::$13 $13 zp ZP_WORD:7 4.0 -(byte~) calculate_matrix_16::$14 reg byte a 2.0 -(signed word~) calculate_matrix_16::$28 $28 zp ZP_WORD:22 4.0 -(signed word~) calculate_matrix_16::$29 $29 zp ZP_WORD:22 4.0 -(signed word~) calculate_matrix_16::$30 $30 zp ZP_WORD:22 4.0 -(signed word~) calculate_matrix_16::$31 $31 zp ZP_WORD:22 4.0 -(signed word~) calculate_matrix_16::$32 $32 zp ZP_WORD:22 4.0 -(byte~) calculate_matrix_16::$33 reg byte a 2.0 -(signed word~) calculate_matrix_16::$35 $35 zp ZP_WORD:7 4.0 -(signed word~) calculate_matrix_16::$36 $36 zp ZP_WORD:16 4.0 -(signed word~) calculate_matrix_16::$37 $37 zp ZP_WORD:14 4.0 -(signed word~) calculate_matrix_16::$38 $38 zp ZP_WORD:18 4.0 -(signed word~) calculate_matrix_16::$39 $39 zp ZP_WORD:20 4.0 -(signed word~) calculate_matrix_16::$4 $4 zp ZP_WORD:7 4.0 -(byte~) calculate_matrix_16::$40 reg byte a 2.0 -(signed word~) calculate_matrix_16::$48 $48 zp ZP_WORD:22 4.0 -(signed word~) calculate_matrix_16::$49 $49 zp ZP_WORD:22 4.0 -(byte~) calculate_matrix_16::$5 reg byte a 2.0 -(signed word~) calculate_matrix_16::$50 $50 zp ZP_WORD:22 4.0 -(signed word~) calculate_matrix_16::$51 $51 zp ZP_WORD:22 4.0 -(signed word~) calculate_matrix_16::$52 $52 zp ZP_WORD:22 4.0 -(byte~) calculate_matrix_16::$53 reg byte a 2.0 -(signed word~) calculate_matrix_16::$55 $55 zp ZP_WORD:7 4.0 -(signed word~) calculate_matrix_16::$56 $56 zp ZP_WORD:16 4.0 -(signed word~) calculate_matrix_16::$57 $57 zp ZP_WORD:14 4.0 -(signed word~) calculate_matrix_16::$58 $58 zp ZP_WORD:18 4.0 -(signed word~) calculate_matrix_16::$59 $59 zp ZP_WORD:20 4.0 -(byte~) calculate_matrix_16::$60 reg byte a 2.0 -(signed word~) calculate_matrix_16::$66 $66 zp ZP_WORD:7 4.0 -(byte~) calculate_matrix_16::$67 reg byte a 2.0 -(signed word~) calculate_matrix_16::$71 $71 zp ZP_WORD:7 4.0 -(byte~) calculate_matrix_16::$72 reg byte a 2.0 -(word~) calculate_matrix_16::$74 $74 zp ZP_WORD:7 1.0 -(word~) calculate_matrix_16::$75 $75 zp ZP_WORD:10 2.0 -(word~) calculate_matrix_16::$76 $76 zp ZP_WORD:7 1.0 -(word~) calculate_matrix_16::$77 $77 zp ZP_WORD:10 2.0 -(word~) calculate_matrix_16::$78 $78 zp ZP_WORD:7 2.0 -(word~) calculate_matrix_16::$79 $79 zp ZP_WORD:7 0.15384615384615385 -(word~) calculate_matrix_16::$80 $80 zp ZP_WORD:10 0.16666666666666666 -(word~) calculate_matrix_16::$81 $81 zp ZP_WORD:14 0.15384615384615385 -(word~) calculate_matrix_16::$82 $82 zp ZP_WORD:16 0.18181818181818182 -(word~) calculate_matrix_16::$83 $83 zp ZP_WORD:18 0.16666666666666666 -(word~) calculate_matrix_16::$84 $84 zp ZP_WORD:20 0.16666666666666666 -(word~) calculate_matrix_16::$85 $85 zp ZP_WORD:7 0.15384615384615385 -(word~) calculate_matrix_16::$86 $86 zp ZP_WORD:10 0.16666666666666666 -(word~) calculate_matrix_16::$87 $87 zp ZP_WORD:14 0.15384615384615385 -(word~) calculate_matrix_16::$88 $88 zp ZP_WORD:16 0.18181818181818182 -(word~) calculate_matrix_16::$89 $89 zp ZP_WORD:18 0.16666666666666666 -(signed word~) calculate_matrix_16::$9 $9 zp ZP_WORD:7 4.0 -(word~) calculate_matrix_16::$90 $90 zp ZP_WORD:20 0.16666666666666666 -(word~) calculate_matrix_16::$91 $91 zp ZP_WORD:7 1.0 -(word~) calculate_matrix_16::$92 $92 zp ZP_WORD:10 2.0 -(word~) calculate_matrix_16::$93 $93 zp ZP_WORD:7 1.0 -(word~) calculate_matrix_16::$94 $94 zp ZP_WORD:10 2.0 -(label) calculate_matrix_16::@return -(signed word) calculate_matrix_16::cosh_t1 -(signed word) calculate_matrix_16::cosh_t10 -(signed word) calculate_matrix_16::cosh_t2 -(signed word) calculate_matrix_16::cosh_t3 -(signed word) calculate_matrix_16::cosh_t4 -(signed word) calculate_matrix_16::cosh_t9 -(signed word) calculate_matrix_16::cosq_t5 -(signed word) calculate_matrix_16::cosq_t6 -(signed word) calculate_matrix_16::cosq_t7 -(signed word) calculate_matrix_16::cosq_t8 -(signed word) calculate_matrix_16::sinh_sy -(signed word) calculate_matrix_16::sinh_t1 -(signed word) calculate_matrix_16::sinh_t10 -(signed word) calculate_matrix_16::sinh_t2 -(signed word) calculate_matrix_16::sinh_t3 -(signed word) calculate_matrix_16::sinh_t4 -(signed word) calculate_matrix_16::sinh_t9 -(signed word) calculate_matrix_16::sinq_t5 -(signed word) calculate_matrix_16::sinq_t6 -(signed word) calculate_matrix_16::sinq_t7 -(signed word) calculate_matrix_16::sinq_t8 -(signed byte) calculate_matrix_16::sx -(signed byte) calculate_matrix_16::sx#0 sx zp ZP_BYTE:2 0.40909090909090895 -(signed byte) calculate_matrix_16::sy -(signed byte) calculate_matrix_16::sy#0 sy zp ZP_BYTE:3 0.35384615384615387 -(signed byte) calculate_matrix_16::sz -(signed byte) calculate_matrix_16::sz#0 reg byte x 1.0555555555555558 -(signed byte) calculate_matrix_16::t1 -(signed byte) calculate_matrix_16::t1#0 t1 zp ZP_BYTE:5 0.7 -(signed byte) calculate_matrix_16::t10 -(signed byte) calculate_matrix_16::t10#0 reg byte y 1.4285714285714284 -(signed byte) calculate_matrix_16::t2 -(signed byte) calculate_matrix_16::t2#0 t2 zp ZP_BYTE:6 0.7 -(signed byte) calculate_matrix_16::t3 -(signed byte) calculate_matrix_16::t3#0 t3 zp ZP_BYTE:9 0.38461538461538464 -(signed byte) calculate_matrix_16::t4 -(signed byte) calculate_matrix_16::t4#0 reg byte x 0.38461538461538464 -(signed byte) calculate_matrix_16::t5 -(signed byte) calculate_matrix_16::t5#0 t5 zp ZP_BYTE:12 0.38461538461538464 -(signed byte) calculate_matrix_16::t6 -(signed byte) calculate_matrix_16::t6#0 t6 zp ZP_BYTE:13 0.38461538461538464 -(signed byte) calculate_matrix_16::t7 -(signed byte) calculate_matrix_16::t7#0 t7 zp ZP_BYTE:5 0.38461538461538464 -(signed byte) calculate_matrix_16::t8 -(signed byte) calculate_matrix_16::t8#0 t8 zp ZP_BYTE:6 0.38461538461538464 -(signed byte) calculate_matrix_16::t9 -(signed byte) calculate_matrix_16::t9#0 reg byte x 1.4285714285714284 -(void()) debug_print() -(label) debug_print::@1 -(label) debug_print::@10 -(label) debug_print::@11 -(label) debug_print::@12 -(label) debug_print::@13 -(label) debug_print::@15 -(label) debug_print::@16 -(label) debug_print::@17 -(label) debug_print::@18 -(label) debug_print::@19 -(label) debug_print::@20 -(label) debug_print::@3 -(label) debug_print::@4 -(label) debug_print::@5 -(label) debug_print::@6 -(label) debug_print::@7 -(label) debug_print::@8 -(label) debug_print::@9 -(label) debug_print::@return -(byte*) debug_print::at_line -(const byte*) debug_print::at_line#0 at_line = (const byte*) SCREEN#0+(byte/signed byte/word/signed word/dword/signed dword) 19*(byte/signed byte/word/signed word/dword/signed dword) 40 -(byte) debug_print::c -(byte) debug_print::c#1 c zp ZP_BYTE:5 67.33333333333333 -(byte) debug_print::c#2 c zp ZP_BYTE:5 42.52631578947369 -(byte) debug_print::i -(byte) debug_print::i#1 i zp ZP_BYTE:6 151.5 -(byte) debug_print::i#2 i zp ZP_BYTE:6 40.4 -(void()) debug_print_init() -(byte*~) debug_print_init::$59 $59 zp ZP_WORD:7 202.0 -(byte*~) debug_print_init::$60 $60 zp ZP_WORD:7 202.0 -(byte*~) debug_print_init::$63 $63 zp ZP_WORD:7 202.0 -(byte*~) debug_print_init::$64 $64 zp ZP_WORD:7 202.0 -(byte*~) debug_print_init::$67 $67 zp ZP_WORD:7 202.0 -(byte*~) debug_print_init::$68 $68 zp ZP_WORD:7 202.0 -(byte*~) debug_print_init::$71 $71 zp ZP_WORD:7 202.0 -(byte*~) debug_print_init::$72 $72 zp ZP_WORD:7 202.0 -(byte*~) debug_print_init::$75 $75 zp ZP_WORD:7 202.0 -(byte*~) debug_print_init::$76 $76 zp ZP_WORD:7 202.0 -(byte*~) debug_print_init::$79 $79 zp ZP_WORD:7 202.0 -(byte*~) debug_print_init::$80 $80 zp ZP_WORD:7 202.0 -(byte*~) debug_print_init::$83 $83 zp ZP_WORD:7 202.0 -(byte*~) debug_print_init::$84 $84 zp ZP_WORD:7 202.0 -(byte*~) debug_print_init::$87 $87 zp ZP_WORD:7 202.0 -(byte*~) debug_print_init::$88 $88 zp ZP_WORD:7 202.0 -(byte*~) debug_print_init::$91 $91 zp ZP_WORD:7 202.0 -(byte*~) debug_print_init::$92 $92 zp ZP_WORD:7 202.0 -(label) debug_print_init::@1 -(label) debug_print_init::@10 -(label) debug_print_init::@11 -(label) debug_print_init::@12 -(label) debug_print_init::@13 -(label) debug_print_init::@14 -(label) debug_print_init::@15 -(label) debug_print_init::@16 -(label) debug_print_init::@18 -(label) debug_print_init::@19 -(label) debug_print_init::@2 -(label) debug_print_init::@3 -(label) debug_print_init::@5 -(label) debug_print_init::@6 -(label) debug_print_init::@7 -(label) debug_print_init::@8 -(label) debug_print_init::@9 -(label) debug_print_init::@return -(byte*) debug_print_init::COLS -(const byte*) debug_print_init::COLS#0 COLS = ((byte*))(word/dword/signed dword) 55296 -(byte*) debug_print_init::at_cols -(const byte*) debug_print_init::at_cols#0 at_cols = (const byte*) debug_print_init::COLS#0+(byte/signed byte/word/signed word/dword/signed dword) 16*(byte/signed byte/word/signed word/dword/signed dword) 40 -(byte*) debug_print_init::at_line -(const byte*) debug_print_init::at_line#0 at_line = (const byte*) SCREEN#0+(byte/signed byte/word/signed word/dword/signed dword) 16*(byte/signed byte/word/signed word/dword/signed dword) 40 -(byte) debug_print_init::c -(byte) debug_print_init::c#1 c zp ZP_BYTE:2 7.333333333333333 -(byte) debug_print_init::c#2 c zp ZP_BYTE:2 23.512195121951223 -(byte) debug_print_init::col -(byte) debug_print_init::col#0 col zp ZP_BYTE:4 37.40740740740741 -(byte) debug_print_init::i -(byte) debug_print_init::i#1 i zp ZP_BYTE:3 16.5 -(byte) debug_print_init::i#2 i zp ZP_BYTE:3 3.7142857142857144 -(byte) debug_print_init::j -(byte) debug_print_init::j#1 reg byte x 151.5 -(byte) debug_print_init::j#2 reg byte x 38.31034482758621 -(const string) debug_print_init::str str = (string) "sx@" -(const string) debug_print_init::str1 str1 = (string) "sy@" -(const string) debug_print_init::str10 str10 = (string) "xp@" -(const string) debug_print_init::str11 str11 = (string) "yp@" -(const string) debug_print_init::str2 str2 = (string) "sz@" -(const string) debug_print_init::str3 str3 = (string) "x@" -(const string) debug_print_init::str4 str4 = (string) "y@" -(const string) debug_print_init::str5 str5 = (string) "z@" -(const string) debug_print_init::str6 str6 = (string) "xr@" -(const string) debug_print_init::str7 str7 = (string) "yr@" -(const string) debug_print_init::str8 str8 = (string) "zr@" -(const string) debug_print_init::str9 str9 = (string) "pp@" +(void()) calculate_matrix((signed byte) calculate_matrix::sx , (signed byte) calculate_matrix::sy , (signed byte) calculate_matrix::sz) +(signed byte~) calculate_matrix::$10 reg byte a 4.0 +(signed byte~) calculate_matrix::$11 reg byte a 4.0 +(signed byte~) calculate_matrix::$12 reg byte a 4.0 +(signed byte~) calculate_matrix::$13 reg byte a 4.0 +(signed byte~) calculate_matrix::$14 reg byte a 4.0 +(signed byte~) calculate_matrix::$15 reg byte a 4.0 +(signed byte~) calculate_matrix::$16 reg byte a 4.0 +(signed byte~) calculate_matrix::$17 reg byte a 4.0 +(signed byte~) calculate_matrix::$18 reg byte a 4.0 +(signed byte~) calculate_matrix::$19 reg byte a 4.0 +(signed byte~) calculate_matrix::$20 reg byte a 4.0 +(signed byte~) calculate_matrix::$21 reg byte a 4.0 +(signed byte~) calculate_matrix::$22 reg byte a 4.0 +(signed byte~) calculate_matrix::$23 reg byte a 4.0 +(signed byte~) calculate_matrix::$24 reg byte a 4.0 +(signed byte~) calculate_matrix::$25 reg byte a 4.0 +(signed byte~) calculate_matrix::$26 reg byte a 4.0 +(signed byte~) calculate_matrix::$27 reg byte a 4.0 +(signed byte~) calculate_matrix::$28 reg byte a 4.0 +(signed byte~) calculate_matrix::$29 reg byte a 4.0 +(signed byte~) calculate_matrix::$30 reg byte a 4.0 +(signed byte~) calculate_matrix::$31 reg byte a 4.0 +(signed byte~) calculate_matrix::$32 reg byte a 4.0 +(signed byte~) calculate_matrix::$33 reg byte a 4.0 +(signed byte~) calculate_matrix::$34 reg byte a 4.0 +(label) calculate_matrix::@return +(signed byte) calculate_matrix::sx +(signed byte) calculate_matrix::sx#0 reg byte x 2.4545454545454546 +(signed byte) calculate_matrix::sy +(signed byte) calculate_matrix::sy#0 sy zp ZP_BYTE:3 1.5333333333333332 +(signed byte) calculate_matrix::sz +(signed byte) calculate_matrix::t1 +(signed byte) calculate_matrix::t1#0 t1 zp ZP_BYTE:4 0.8333333333333333 +(signed byte) calculate_matrix::t10 +(signed byte) calculate_matrix::t10#0 t10 zp ZP_BYTE:12 0.18181818181818182 +(signed byte) calculate_matrix::t2 +(signed byte) calculate_matrix::t2#0 reg byte y 0.9090909090909092 +(signed byte) calculate_matrix::t3 +(signed byte) calculate_matrix::t3#0 t3 zp ZP_BYTE:5 0.29411764705882354 +(signed byte) calculate_matrix::t4 +(signed byte) calculate_matrix::t4#0 t4 zp ZP_BYTE:6 0.30303030303030304 +(signed byte) calculate_matrix::t5 +(signed byte) calculate_matrix::t5#0 t5 zp ZP_BYTE:7 0.29411764705882354 +(signed byte) calculate_matrix::t6 +(signed byte) calculate_matrix::t6#0 t6 zp ZP_BYTE:8 0.3125 +(signed byte) calculate_matrix::t7 +(signed byte) calculate_matrix::t7#0 t7 zp ZP_BYTE:9 0.30303030303030304 +(signed byte) calculate_matrix::t8 +(signed byte) calculate_matrix::t8#0 t8 zp ZP_BYTE:10 0.30303030303030304 +(signed byte) calculate_matrix::t9 +(signed byte) calculate_matrix::t9#0 t9 zp ZP_BYTE:11 0.1764705882352941 (void()) main() (label) main::@1 -(label) main::@2 (label) main::@return (byte*) mulf_sqr1 (const byte*) mulf_sqr1#0 mulf_sqr1 = ((byte*))(word/signed word/dword/signed dword) 9216 @@ -267,90 +117,6 @@ (const signed byte*) pp#0 pp = ((signed byte*))(byte/word/signed word/dword/signed dword) 243 (signed byte[8]) pps (const signed byte[8]) pps#0 pps = { fill( 8, 0) } -(void()) print_byte_at((byte) print_byte_at::b , (byte*) print_byte_at::at) -(byte~) print_byte_at::$0 reg byte a 4.0 -(byte~) print_byte_at::$2 reg byte x 2.0 -(label) print_byte_at::@1 -(label) print_byte_at::@return -(byte*) print_byte_at::at -(byte*) print_byte_at::at#0 at zp ZP_WORD:7 1.0 -(byte) print_byte_at::b -(void()) print_char_at((byte) print_char_at::ch , (byte*) print_char_at::at) -(label) print_char_at::@return -(byte*) print_char_at::at -(byte*) print_char_at::at#0 at zp ZP_WORD:7 4.0 -(byte*) print_char_at::at#1 at zp ZP_WORD:7 4.0 -(byte*) print_char_at::at#2 at zp ZP_WORD:7 4.0 -(byte*) print_char_at::at#3 at zp ZP_WORD:7 2.0 -(byte*) print_char_at::at#4 at zp ZP_WORD:7 10.0 -(byte) print_char_at::ch -(byte) print_char_at::ch#2 ch zp ZP_BYTE:9 2.0 -(byte) print_char_at::ch#3 ch zp ZP_BYTE:9 4.0 -(byte) print_char_at::ch#4 ch zp ZP_BYTE:9 6.0 -(void()) print_cls() -(label) print_cls::@1 -(label) print_cls::@return -(byte*) print_cls::sc -(byte*) print_cls::sc#1 sc zp ZP_WORD:7 16.5 -(byte*) print_cls::sc#2 sc zp ZP_WORD:7 16.5 -(byte[]) print_hextab -(const byte[]) print_hextab#0 print_hextab = (string) "0123456789abcdef" -(void()) print_sbyte_at((signed byte) print_sbyte_at::b , (byte*) print_sbyte_at::at) -(label) print_sbyte_at::@1 -(label) print_sbyte_at::@2 -(label) print_sbyte_at::@3 -(label) print_sbyte_at::@5 -(label) print_sbyte_at::@return -(byte*) print_sbyte_at::at -(byte*) print_sbyte_at::at#0 at zp ZP_WORD:7 11.0 -(byte*) print_sbyte_at::at#1 at zp ZP_WORD:7 11.0 -(byte*) print_sbyte_at::at#15 at zp ZP_WORD:7 101.0 -(byte*) print_sbyte_at::at#16 at zp ZP_WORD:7 101.0 -(byte*) print_sbyte_at::at#17 at zp ZP_WORD:7 101.0 -(byte*) print_sbyte_at::at#18 at zp ZP_WORD:7 101.0 -(byte*) print_sbyte_at::at#19 at zp ZP_WORD:7 101.0 -(byte*) print_sbyte_at::at#2 at zp ZP_WORD:7 11.0 -(byte*) print_sbyte_at::at#20 at zp ZP_WORD:7 101.0 -(byte*) print_sbyte_at::at#21 at zp ZP_WORD:7 80.625 -(signed byte) print_sbyte_at::b -(signed byte) print_sbyte_at::b#0 reg byte x 4.0 -(signed byte) print_sbyte_at::b#1 reg byte x 22.0 -(signed byte) print_sbyte_at::b#10 reg byte x 4.0 -(signed byte) print_sbyte_at::b#11 reg byte x 4.0 -(signed byte) print_sbyte_at::b#12 reg byte x 4.0 -(signed byte) print_sbyte_at::b#13 reg byte x 4.0 -(signed byte) print_sbyte_at::b#14 reg byte x 4.0 -(signed byte) print_sbyte_at::b#15 reg byte x 4.0 -(signed byte) print_sbyte_at::b#16 reg byte x 202.0 -(signed byte) print_sbyte_at::b#17 reg byte x 202.0 -(signed byte) print_sbyte_at::b#18 reg byte x 202.0 -(signed byte) print_sbyte_at::b#19 reg byte x 202.0 -(signed byte) print_sbyte_at::b#2 reg byte x 22.0 -(signed byte) print_sbyte_at::b#20 reg byte x 202.0 -(signed byte) print_sbyte_at::b#21 reg byte x 202.0 -(signed byte) print_sbyte_at::b#22 reg byte x 111.49999999999991 -(signed byte) print_sbyte_at::b#24 reg byte x 0.6666666666666666 -(signed byte) print_sbyte_at::b#3 reg byte x 22.0 -(signed byte) print_sbyte_at::b#4 reg byte x 4.0 -(signed byte) print_sbyte_at::b#5 reg byte x 4.0 -(signed byte) print_sbyte_at::b#6 reg byte x 4.0 -(signed byte) print_sbyte_at::b#7 reg byte x 4.0 -(signed byte) print_sbyte_at::b#8 reg byte x 4.0 -(signed byte) print_sbyte_at::b#9 reg byte x 4.0 -(byte*) print_screen -(const byte*) print_screen#0 print_screen = ((byte*))(word/signed word/dword/signed dword) 1024 -(void()) print_str_at((byte*) print_str_at::str , (byte*) print_str_at::at) -(label) print_str_at::@1 -(label) print_str_at::@2 -(label) print_str_at::@return -(byte*) print_str_at::at -(byte*) print_str_at::at#0 at zp ZP_WORD:10 11.0 -(byte*) print_str_at::at#13 at zp ZP_WORD:10 11.666666666666666 -(byte*) print_str_at::at#15 at zp ZP_WORD:10 2.0 -(byte*) print_str_at::str -(byte*) print_str_at::str#0 str zp ZP_WORD:7 22.0 -(byte*) print_str_at::str#13 str zp ZP_WORD:7 11.5 -(byte*) print_str_at::str#15 str zp ZP_WORD:7 2.0 (word*) psp1 (const word*) psp1#0 psp1 = ((word*))(byte/word/signed word/dword/signed dword) 246 (word*) psp2 @@ -358,7 +124,7 @@ (void()) rotate_matrix((signed byte) rotate_matrix::x , (signed byte) rotate_matrix::y , (signed byte) rotate_matrix::z) (label) rotate_matrix::@return (signed byte) rotate_matrix::x -(signed byte) rotate_matrix::x#0 x zp ZP_BYTE:6 34.33333333333333 +(signed byte) rotate_matrix::x#0 x zp ZP_BYTE:5 34.33333333333333 (signed byte) rotate_matrix::y (signed byte) rotate_matrix::y#0 reg byte y 34.33333333333333 (signed byte) rotate_matrix::z @@ -366,27 +132,25 @@ (signed byte[9]) rotation_matrix (const signed byte[9]) rotation_matrix#0 rotation_matrix = { fill( 9, 0) } (void()) sprites_init() -(byte/signed word/word/dword/signed dword~) sprites_init::$3 reg byte a 22.0 (label) sprites_init::@1 (label) sprites_init::@return (byte*) sprites_init::SCREEN (const byte*) sprites_init::SCREEN#0 SCREEN = ((byte*))(word/signed word/dword/signed dword) 1024 (byte) sprites_init::i (byte) sprites_init::i#1 reg byte x 16.5 -(byte) sprites_init::i#2 reg byte x 13.75 +(byte) sprites_init::i#2 reg byte x 14.666666666666666 (byte*) sprites_init::sprites_ptr (const byte*) sprites_init::sprites_ptr#0 sprites_ptr = (const byte*) sprites_init::SCREEN#0+(word/signed word/dword/signed dword) 1016 (void()) store_matrix() (label) store_matrix::@return (signed byte) sx -(signed byte) sx#10 sx zp ZP_BYTE:2 0.44871794871794873 -(signed byte) sx#3 sx zp ZP_BYTE:2 7.333333333333333 +(signed byte) sx#10 sx zp ZP_BYTE:2 1.1379310344827585 +(signed byte) sx#3 sx zp ZP_BYTE:2 11.0 (signed byte) sy -(signed byte) sy#10 sy zp ZP_BYTE:3 0.44303797468354433 -(signed byte) sy#3 sy zp ZP_BYTE:3 11.0 +(signed byte) sy#10 sy zp ZP_BYTE:3 1.0999999999999999 +(signed byte) sy#3 sy zp ZP_BYTE:3 22.0 (signed byte) sz -(signed byte) sz#10 sz zp ZP_BYTE:4 0.43750000000000006 -(signed byte) sz#3 sz zp ZP_BYTE:4 22.0 +(const signed byte) sz#0 sz = (byte/signed byte/word/signed word/dword/signed dword) 0 (signed byte*) xp (const signed byte*) xp#0 xp = ((signed byte*))(byte/word/signed word/dword/signed dword) 244 (signed byte[8]) xps @@ -396,7 +160,7 @@ (signed byte[8]) xrs (const signed byte[8]) xrs#0 xrs = { fill( 8, 0) } (signed byte[8]) xs -(const signed byte[8]) xs#0 xs = { -(byte/signed byte/word/signed word/dword/signed dword) 95, (byte/signed byte/word/signed word/dword/signed dword) 95, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 63 } +(const signed byte[8]) xs#0 xs = { -(byte/signed byte/word/signed word/dword/signed dword) 52, -(byte/signed byte/word/signed word/dword/signed dword) 52, -(byte/signed byte/word/signed word/dword/signed dword) 52, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 52, (byte/signed byte/word/signed word/dword/signed dword) 52, (byte/signed byte/word/signed word/dword/signed dword) 52 } (signed byte*) yp (const signed byte*) yp#0 yp = ((signed byte*))(byte/word/signed word/dword/signed dword) 245 (signed byte[8]) yps @@ -406,50 +170,55 @@ (signed byte[8]) yrs (const signed byte[8]) yrs#0 yrs = { fill( 8, 0) } (signed byte[8]) ys -(const signed byte[8]) ys#0 ys = { (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0, -(byte/signed byte/word/signed word/dword/signed dword) 95, (byte/signed byte/word/signed word/dword/signed dword) 95, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0 } +(const signed byte[8]) ys#0 ys = { -(byte/signed byte/word/signed word/dword/signed dword) 52, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 52, -(byte/signed byte/word/signed word/dword/signed dword) 52, (byte/signed byte/word/signed word/dword/signed dword) 52, -(byte/signed byte/word/signed word/dword/signed dword) 52, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 52 } (signed byte*) zr (const signed byte*) zr#0 zr = ((signed byte*))(byte/word/signed word/dword/signed dword) 242 (signed byte[8]) zrs (const signed byte[8]) zrs#0 zrs = { fill( 8, 0) } (signed byte[8]) zs -(const signed byte[8]) zs#0 zs = { (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0, -(byte/signed byte/word/signed word/dword/signed dword) 95, (byte/signed byte/word/signed word/dword/signed dword) 95, -(byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0 } +(const signed byte[8]) zs#0 zs = { (byte/signed byte/word/signed word/dword/signed dword) 52, (byte/signed byte/word/signed word/dword/signed dword) 52, (byte/signed byte/word/signed word/dword/signed dword) 52, (byte/signed byte/word/signed word/dword/signed dword) 52, (byte/signed byte/word/signed word/dword/signed dword) 52, (byte/signed byte/word/signed word/dword/signed dword) 52, (byte/signed byte/word/signed word/dword/signed dword) 52, (byte/signed byte/word/signed word/dword/signed dword) 52 } -zp ZP_BYTE:2 [ sx#10 sx#3 calculate_matrix_16::sx#0 debug_print_init::c#2 debug_print_init::c#1 ] -zp ZP_BYTE:3 [ sy#10 sy#3 calculate_matrix_16::sy#0 debug_print_init::i#2 debug_print_init::i#1 ] -zp ZP_BYTE:4 [ sz#10 sz#3 debug_print_init::col#0 ] -zp ZP_BYTE:5 [ anim::i#2 anim::i#1 debug_print::c#2 debug_print::c#1 calculate_matrix_16::t1#0 calculate_matrix_16::t7#0 ] -zp ZP_BYTE:6 [ debug_print::i#2 debug_print::i#1 rotate_matrix::x#0 calculate_matrix_16::t2#0 calculate_matrix_16::t8#0 ] -zp ZP_WORD:7 [ print_sbyte_at::at#21 print_sbyte_at::at#15 print_sbyte_at::at#16 print_sbyte_at::at#17 print_sbyte_at::at#18 print_sbyte_at::at#19 print_sbyte_at::at#20 print_sbyte_at::at#0 print_sbyte_at::at#1 print_sbyte_at::at#2 print_char_at::at#4 print_char_at::at#2 print_char_at::at#3 print_char_at::at#0 print_char_at::at#1 print_byte_at::at#0 print_str_at::str#13 print_str_at::str#15 print_str_at::str#0 print_cls::sc#2 print_cls::sc#1 calculate_matrix_16::$74 calculate_matrix_16::$4 calculate_matrix_16::$76 calculate_matrix_16::$9 calculate_matrix_16::$78 calculate_matrix_16::$13 calculate_matrix_16::$79 calculate_matrix_16::$35 calculate_matrix_16::$85 calculate_matrix_16::$55 calculate_matrix_16::$91 calculate_matrix_16::$66 calculate_matrix_16::$93 calculate_matrix_16::$71 debug_print_init::$59 debug_print_init::$60 debug_print_init::$63 debug_print_init::$64 debug_print_init::$67 debug_print_init::$68 debug_print_init::$71 debug_print_init::$72 debug_print_init::$75 debug_print_init::$76 debug_print_init::$79 debug_print_init::$80 debug_print_init::$83 debug_print_init::$84 debug_print_init::$87 debug_print_init::$88 debug_print_init::$91 debug_print_init::$92 ] -reg byte x [ print_sbyte_at::b#24 print_sbyte_at::b#0 print_sbyte_at::b#22 print_sbyte_at::b#4 print_sbyte_at::b#16 print_sbyte_at::b#12 print_sbyte_at::b#13 print_sbyte_at::b#14 print_sbyte_at::b#15 print_sbyte_at::b#17 print_sbyte_at::b#18 print_sbyte_at::b#19 print_sbyte_at::b#20 print_sbyte_at::b#21 print_sbyte_at::b#5 print_sbyte_at::b#6 print_sbyte_at::b#7 print_sbyte_at::b#8 print_sbyte_at::b#9 print_sbyte_at::b#10 print_sbyte_at::b#11 print_sbyte_at::b#1 print_sbyte_at::b#2 print_sbyte_at::b#3 ] -zp ZP_BYTE:9 [ print_char_at::ch#4 print_char_at::ch#2 print_char_at::ch#3 calculate_matrix_16::t3#0 ] -reg byte x [ debug_print_init::j#2 debug_print_init::j#1 ] -zp ZP_WORD:10 [ print_str_at::at#13 print_str_at::at#15 print_str_at::at#0 calculate_matrix_16::$75 calculate_matrix_16::$77 calculate_matrix_16::$80 calculate_matrix_16::$86 calculate_matrix_16::$92 calculate_matrix_16::$94 ] +zp ZP_BYTE:2 [ sx#10 sx#3 ] +zp ZP_BYTE:3 [ sy#10 sy#3 calculate_matrix::sy#0 ] +zp ZP_BYTE:4 [ anim::i#2 anim::i#1 calculate_matrix::t1#0 ] reg byte x [ sprites_init::i#2 sprites_init::i#1 ] -reg byte x [ calculate_matrix_16::sz#0 ] +reg byte x [ calculate_matrix::sx#0 ] +zp ZP_BYTE:5 [ rotate_matrix::x#0 calculate_matrix::t3#0 ] reg byte y [ rotate_matrix::y#0 ] reg byte x [ rotate_matrix::z#0 ] reg byte x [ anim::i2#0 ] reg byte a [ anim::$6 ] reg byte a [ anim::$8 ] -reg byte a [ print_byte_at::$0 ] -reg byte x [ print_byte_at::$2 ] -reg byte a [ calculate_matrix_16::$5 ] -reg byte a [ calculate_matrix_16::$10 ] -reg byte a [ calculate_matrix_16::$14 ] -reg byte x [ calculate_matrix_16::t4#0 ] -zp ZP_BYTE:12 [ calculate_matrix_16::t5#0 ] -zp ZP_BYTE:13 [ calculate_matrix_16::t6#0 ] -zp ZP_WORD:14 [ calculate_matrix_16::$81 calculate_matrix_16::$37 calculate_matrix_16::$87 calculate_matrix_16::$57 ] -zp ZP_WORD:16 [ calculate_matrix_16::$82 calculate_matrix_16::$36 calculate_matrix_16::$88 calculate_matrix_16::$56 ] -zp ZP_WORD:18 [ calculate_matrix_16::$83 calculate_matrix_16::$38 calculate_matrix_16::$89 calculate_matrix_16::$58 ] -zp ZP_WORD:20 [ calculate_matrix_16::$84 calculate_matrix_16::$39 calculate_matrix_16::$90 calculate_matrix_16::$59 ] -zp ZP_WORD:22 [ calculate_matrix_16::$28 calculate_matrix_16::$29 calculate_matrix_16::$30 calculate_matrix_16::$31 calculate_matrix_16::$32 calculate_matrix_16::$48 calculate_matrix_16::$49 calculate_matrix_16::$50 calculate_matrix_16::$51 calculate_matrix_16::$52 ] -reg byte a [ calculate_matrix_16::$33 ] -reg byte a [ calculate_matrix_16::$40 ] -reg byte a [ calculate_matrix_16::$53 ] -reg byte a [ calculate_matrix_16::$60 ] -reg byte x [ calculate_matrix_16::t9#0 ] -reg byte y [ calculate_matrix_16::t10#0 ] -reg byte a [ calculate_matrix_16::$67 ] -reg byte a [ calculate_matrix_16::$72 ] -reg byte a [ sprites_init::$3 ] +reg byte y [ calculate_matrix::t2#0 ] +zp ZP_BYTE:6 [ calculate_matrix::t4#0 ] +zp ZP_BYTE:7 [ calculate_matrix::t5#0 ] +zp ZP_BYTE:8 [ calculate_matrix::t6#0 ] +zp ZP_BYTE:9 [ calculate_matrix::t7#0 ] +zp ZP_BYTE:10 [ calculate_matrix::t8#0 ] +zp ZP_BYTE:11 [ calculate_matrix::t9#0 ] +zp ZP_BYTE:12 [ calculate_matrix::t10#0 ] +reg byte a [ calculate_matrix::$10 ] +reg byte a [ calculate_matrix::$11 ] +reg byte a [ calculate_matrix::$12 ] +reg byte a [ calculate_matrix::$13 ] +reg byte a [ calculate_matrix::$14 ] +reg byte a [ calculate_matrix::$15 ] +reg byte a [ calculate_matrix::$16 ] +reg byte a [ calculate_matrix::$17 ] +reg byte a [ calculate_matrix::$18 ] +reg byte a [ calculate_matrix::$19 ] +reg byte a [ calculate_matrix::$20 ] +reg byte a [ calculate_matrix::$21 ] +reg byte a [ calculate_matrix::$22 ] +reg byte a [ calculate_matrix::$23 ] +reg byte a [ calculate_matrix::$24 ] +reg byte a [ calculate_matrix::$25 ] +reg byte a [ calculate_matrix::$26 ] +reg byte a [ calculate_matrix::$27 ] +reg byte a [ calculate_matrix::$28 ] +reg byte a [ calculate_matrix::$29 ] +reg byte a [ calculate_matrix::$30 ] +reg byte a [ calculate_matrix::$31 ] +reg byte a [ calculate_matrix::$32 ] +reg byte a [ calculate_matrix::$33 ] +reg byte a [ calculate_matrix::$34 ]