mirror of
https://gitlab.com/camelot/kickc.git
synced 2025-03-24 15:32:58 +00:00
Optimized unrolled plasma more by moving x-value lookup outside the unrolled loop.
This commit is contained in:
parent
6b6903c94a
commit
c9768022af
src/test
kc/examples/plasma
ref/examples/plasma
@ -62,8 +62,10 @@ void doplasma(unsigned char* screen) {
|
||||
c2A += 2;
|
||||
c2B -= 3;
|
||||
for (unsigned char i = 0; i < 40; ++i) {
|
||||
unsigned char xval = xbuf[i];
|
||||
// Use experimental loop unrolling to increase the speed
|
||||
inline for (unsigned char ii = 0; ii < 25; ++ii) {
|
||||
(screen+ii*40)[i] = (xbuf[i] + ybuf[ii]);
|
||||
(screen+ii*40)[i] = xval + ybuf[ii];
|
||||
}
|
||||
}
|
||||
}
|
||||
|
@ -136,112 +136,114 @@ doplasma: {
|
||||
axs #3
|
||||
stx c2B
|
||||
ldx #0
|
||||
b6:
|
||||
lda xbuf,x
|
||||
b5:
|
||||
ldy xbuf,x
|
||||
// Use experimental loop unrolling to increase the speed
|
||||
tya
|
||||
clc
|
||||
adc ybuf
|
||||
sta SCREEN1,x
|
||||
lda xbuf,x
|
||||
tya
|
||||
clc
|
||||
adc ybuf+1
|
||||
sta SCREEN1+1*$28,x
|
||||
lda xbuf,x
|
||||
tya
|
||||
clc
|
||||
adc ybuf+2
|
||||
sta SCREEN1+2*$28,x
|
||||
lda xbuf,x
|
||||
tya
|
||||
clc
|
||||
adc ybuf+3
|
||||
sta SCREEN1+3*$28,x
|
||||
lda xbuf,x
|
||||
tya
|
||||
clc
|
||||
adc ybuf+4
|
||||
sta SCREEN1+4*$28,x
|
||||
lda xbuf,x
|
||||
tya
|
||||
clc
|
||||
adc ybuf+5
|
||||
sta SCREEN1+5*$28,x
|
||||
lda xbuf,x
|
||||
tya
|
||||
clc
|
||||
adc ybuf+6
|
||||
sta SCREEN1+6*$28,x
|
||||
lda xbuf,x
|
||||
tya
|
||||
clc
|
||||
adc ybuf+7
|
||||
sta SCREEN1+7*$28,x
|
||||
lda xbuf,x
|
||||
tya
|
||||
clc
|
||||
adc ybuf+8
|
||||
sta SCREEN1+8*$28,x
|
||||
lda xbuf,x
|
||||
tya
|
||||
clc
|
||||
adc ybuf+9
|
||||
sta SCREEN1+9*$28,x
|
||||
lda xbuf,x
|
||||
tya
|
||||
clc
|
||||
adc ybuf+$a
|
||||
sta SCREEN1+$a*$28,x
|
||||
lda xbuf,x
|
||||
tya
|
||||
clc
|
||||
adc ybuf+$b
|
||||
sta SCREEN1+$b*$28,x
|
||||
lda xbuf,x
|
||||
tya
|
||||
clc
|
||||
adc ybuf+$c
|
||||
sta SCREEN1+$c*$28,x
|
||||
lda xbuf,x
|
||||
tya
|
||||
clc
|
||||
adc ybuf+$d
|
||||
sta SCREEN1+$d*$28,x
|
||||
lda xbuf,x
|
||||
tya
|
||||
clc
|
||||
adc ybuf+$e
|
||||
sta SCREEN1+$e*$28,x
|
||||
lda xbuf,x
|
||||
tya
|
||||
clc
|
||||
adc ybuf+$f
|
||||
sta SCREEN1+$f*$28,x
|
||||
lda xbuf,x
|
||||
tya
|
||||
clc
|
||||
adc ybuf+$10
|
||||
sta SCREEN1+$10*$28,x
|
||||
lda xbuf,x
|
||||
tya
|
||||
clc
|
||||
adc ybuf+$11
|
||||
sta SCREEN1+$11*$28,x
|
||||
lda xbuf,x
|
||||
tya
|
||||
clc
|
||||
adc ybuf+$12
|
||||
sta SCREEN1+$12*$28,x
|
||||
lda xbuf,x
|
||||
tya
|
||||
clc
|
||||
adc ybuf+$13
|
||||
sta SCREEN1+$13*$28,x
|
||||
lda xbuf,x
|
||||
tya
|
||||
clc
|
||||
adc ybuf+$14
|
||||
sta SCREEN1+$14*$28,x
|
||||
lda xbuf,x
|
||||
tya
|
||||
clc
|
||||
adc ybuf+$15
|
||||
sta SCREEN1+$15*$28,x
|
||||
lda xbuf,x
|
||||
tya
|
||||
clc
|
||||
adc ybuf+$16
|
||||
sta SCREEN1+$16*$28,x
|
||||
lda xbuf,x
|
||||
tya
|
||||
clc
|
||||
adc ybuf+$17
|
||||
sta SCREEN1+$17*$28,x
|
||||
lda xbuf,x
|
||||
tya
|
||||
clc
|
||||
adc ybuf+$18
|
||||
sta SCREEN1+$18*$28,x
|
||||
inx
|
||||
cpx #$28
|
||||
bcs !b6+
|
||||
jmp b6
|
||||
!b6:
|
||||
bcs !b5+
|
||||
jmp b5
|
||||
!b5:
|
||||
rts
|
||||
xbuf: .fill $28, 0
|
||||
ybuf: .fill $19, 0
|
||||
|
@ -80,203 +80,204 @@ doplasma::@4: scope:[doplasma] from doplasma::@3
|
||||
[40] (byte) c2B#3 ← (byte) c2B#1 - (byte/signed byte/word/signed word/dword/signed dword) 3
|
||||
to:doplasma::@5
|
||||
doplasma::@5: scope:[doplasma] from doplasma::@4 doplasma::@7
|
||||
[41] (byte) doplasma::i2#4 ← phi( doplasma::@4/(byte/signed byte/word/signed word/dword/signed dword) 0 doplasma::@7/(byte) doplasma::i2#1 )
|
||||
[41] (byte) doplasma::i2#2 ← phi( doplasma::@4/(byte/signed byte/word/signed word/dword/signed dword) 0 doplasma::@7/(byte) doplasma::i2#1 )
|
||||
[42] (byte) doplasma::xval#0 ← *((const byte[$28]) doplasma::xbuf#0 + (byte) doplasma::i2#2)
|
||||
to:doplasma::@6
|
||||
doplasma::@6: scope:[doplasma] from doplasma::@5
|
||||
[42] (byte~) doplasma::$6 ← *((const byte[$28]) doplasma::xbuf#0 + (byte) doplasma::i2#4) + *((const byte[$19]) doplasma::ybuf#0)
|
||||
[43] *((const byte*) SCREEN1#0 + (byte) doplasma::i2#4) ← (byte~) doplasma::$6
|
||||
[43] (byte~) doplasma::$6 ← (byte) doplasma::xval#0 + *((const byte[$19]) doplasma::ybuf#0)
|
||||
[44] *((const byte*) SCREEN1#0 + (byte) doplasma::i2#2) ← (byte~) doplasma::$6
|
||||
to:doplasma::@6_1
|
||||
doplasma::@6_1: scope:[doplasma] from doplasma::@6
|
||||
[44] (byte~) doplasma::$11 ← *((const byte[$28]) doplasma::xbuf#0 + (byte) doplasma::i2#4) + *((const byte[$19]) doplasma::ybuf#0+(byte/signed byte/word/signed word/dword/signed dword) 1)
|
||||
[45] *((const byte*) SCREEN1#0+(byte/signed byte/word/signed word/dword/signed dword) 1*(byte/signed byte/word/signed word/dword/signed dword) $28 + (byte) doplasma::i2#4) ← (byte~) doplasma::$11
|
||||
[45] (byte~) doplasma::$11 ← (byte) doplasma::xval#0 + *((const byte[$19]) doplasma::ybuf#0+(byte/signed byte/word/signed word/dword/signed dword) 1)
|
||||
[46] *((const byte*) SCREEN1#0+(byte/signed byte/word/signed word/dword/signed dword) 1*(byte/signed byte/word/signed word/dword/signed dword) $28 + (byte) doplasma::i2#2) ← (byte~) doplasma::$11
|
||||
to:doplasma::@6_2
|
||||
doplasma::@6_2: scope:[doplasma] from doplasma::@6_1
|
||||
[46] (byte~) doplasma::$14 ← *((const byte[$28]) doplasma::xbuf#0 + (byte) doplasma::i2#4) + *((const byte[$19]) doplasma::ybuf#0+(byte/signed byte/word/signed word/dword/signed dword) 2)
|
||||
[47] *((const byte*) SCREEN1#0+(byte/signed byte/word/signed word/dword/signed dword) 2*(byte/signed byte/word/signed word/dword/signed dword) $28 + (byte) doplasma::i2#4) ← (byte~) doplasma::$14
|
||||
[47] (byte~) doplasma::$14 ← (byte) doplasma::xval#0 + *((const byte[$19]) doplasma::ybuf#0+(byte/signed byte/word/signed word/dword/signed dword) 2)
|
||||
[48] *((const byte*) SCREEN1#0+(byte/signed byte/word/signed word/dword/signed dword) 2*(byte/signed byte/word/signed word/dword/signed dword) $28 + (byte) doplasma::i2#2) ← (byte~) doplasma::$14
|
||||
to:doplasma::@6_3
|
||||
doplasma::@6_3: scope:[doplasma] from doplasma::@6_2
|
||||
[48] (byte~) doplasma::$17 ← *((const byte[$28]) doplasma::xbuf#0 + (byte) doplasma::i2#4) + *((const byte[$19]) doplasma::ybuf#0+(byte/signed byte/word/signed word/dword/signed dword) 3)
|
||||
[49] *((const byte*) SCREEN1#0+(byte/signed byte/word/signed word/dword/signed dword) 3*(byte/signed byte/word/signed word/dword/signed dword) $28 + (byte) doplasma::i2#4) ← (byte~) doplasma::$17
|
||||
[49] (byte~) doplasma::$17 ← (byte) doplasma::xval#0 + *((const byte[$19]) doplasma::ybuf#0+(byte/signed byte/word/signed word/dword/signed dword) 3)
|
||||
[50] *((const byte*) SCREEN1#0+(byte/signed byte/word/signed word/dword/signed dword) 3*(byte/signed byte/word/signed word/dword/signed dword) $28 + (byte) doplasma::i2#2) ← (byte~) doplasma::$17
|
||||
to:doplasma::@6_4
|
||||
doplasma::@6_4: scope:[doplasma] from doplasma::@6_3
|
||||
[50] (byte~) doplasma::$20 ← *((const byte[$28]) doplasma::xbuf#0 + (byte) doplasma::i2#4) + *((const byte[$19]) doplasma::ybuf#0+(byte/signed byte/word/signed word/dword/signed dword) 4)
|
||||
[51] *((const byte*) SCREEN1#0+(byte/signed byte/word/signed word/dword/signed dword) 4*(byte/signed byte/word/signed word/dword/signed dword) $28 + (byte) doplasma::i2#4) ← (byte~) doplasma::$20
|
||||
[51] (byte~) doplasma::$20 ← (byte) doplasma::xval#0 + *((const byte[$19]) doplasma::ybuf#0+(byte/signed byte/word/signed word/dword/signed dword) 4)
|
||||
[52] *((const byte*) SCREEN1#0+(byte/signed byte/word/signed word/dword/signed dword) 4*(byte/signed byte/word/signed word/dword/signed dword) $28 + (byte) doplasma::i2#2) ← (byte~) doplasma::$20
|
||||
to:doplasma::@6_5
|
||||
doplasma::@6_5: scope:[doplasma] from doplasma::@6_4
|
||||
[52] (byte~) doplasma::$23 ← *((const byte[$28]) doplasma::xbuf#0 + (byte) doplasma::i2#4) + *((const byte[$19]) doplasma::ybuf#0+(byte/signed byte/word/signed word/dword/signed dword) 5)
|
||||
[53] *((const byte*) SCREEN1#0+(byte/signed byte/word/signed word/dword/signed dword) 5*(byte/signed byte/word/signed word/dword/signed dword) $28 + (byte) doplasma::i2#4) ← (byte~) doplasma::$23
|
||||
[53] (byte~) doplasma::$23 ← (byte) doplasma::xval#0 + *((const byte[$19]) doplasma::ybuf#0+(byte/signed byte/word/signed word/dword/signed dword) 5)
|
||||
[54] *((const byte*) SCREEN1#0+(byte/signed byte/word/signed word/dword/signed dword) 5*(byte/signed byte/word/signed word/dword/signed dword) $28 + (byte) doplasma::i2#2) ← (byte~) doplasma::$23
|
||||
to:doplasma::@6_6
|
||||
doplasma::@6_6: scope:[doplasma] from doplasma::@6_5
|
||||
[54] (byte~) doplasma::$26 ← *((const byte[$28]) doplasma::xbuf#0 + (byte) doplasma::i2#4) + *((const byte[$19]) doplasma::ybuf#0+(byte/signed byte/word/signed word/dword/signed dword) 6)
|
||||
[55] *((const byte*) SCREEN1#0+(byte/signed byte/word/signed word/dword/signed dword) 6*(byte/signed byte/word/signed word/dword/signed dword) $28 + (byte) doplasma::i2#4) ← (byte~) doplasma::$26
|
||||
[55] (byte~) doplasma::$26 ← (byte) doplasma::xval#0 + *((const byte[$19]) doplasma::ybuf#0+(byte/signed byte/word/signed word/dword/signed dword) 6)
|
||||
[56] *((const byte*) SCREEN1#0+(byte/signed byte/word/signed word/dword/signed dword) 6*(byte/signed byte/word/signed word/dword/signed dword) $28 + (byte) doplasma::i2#2) ← (byte~) doplasma::$26
|
||||
to:doplasma::@6_7
|
||||
doplasma::@6_7: scope:[doplasma] from doplasma::@6_6
|
||||
[56] (byte~) doplasma::$29 ← *((const byte[$28]) doplasma::xbuf#0 + (byte) doplasma::i2#4) + *((const byte[$19]) doplasma::ybuf#0+(byte/signed byte/word/signed word/dword/signed dword) 7)
|
||||
[57] *((const byte*) SCREEN1#0+(byte/signed byte/word/signed word/dword/signed dword) 7*(byte/signed byte/word/signed word/dword/signed dword) $28 + (byte) doplasma::i2#4) ← (byte~) doplasma::$29
|
||||
[57] (byte~) doplasma::$29 ← (byte) doplasma::xval#0 + *((const byte[$19]) doplasma::ybuf#0+(byte/signed byte/word/signed word/dword/signed dword) 7)
|
||||
[58] *((const byte*) SCREEN1#0+(byte/signed byte/word/signed word/dword/signed dword) 7*(byte/signed byte/word/signed word/dword/signed dword) $28 + (byte) doplasma::i2#2) ← (byte~) doplasma::$29
|
||||
to:doplasma::@6_8
|
||||
doplasma::@6_8: scope:[doplasma] from doplasma::@6_7
|
||||
[58] (byte~) doplasma::$32 ← *((const byte[$28]) doplasma::xbuf#0 + (byte) doplasma::i2#4) + *((const byte[$19]) doplasma::ybuf#0+(byte/signed byte/word/signed word/dword/signed dword) 8)
|
||||
[59] *((const byte*) SCREEN1#0+(byte/signed byte/word/signed word/dword/signed dword) 8*(byte/signed byte/word/signed word/dword/signed dword) $28 + (byte) doplasma::i2#4) ← (byte~) doplasma::$32
|
||||
[59] (byte~) doplasma::$32 ← (byte) doplasma::xval#0 + *((const byte[$19]) doplasma::ybuf#0+(byte/signed byte/word/signed word/dword/signed dword) 8)
|
||||
[60] *((const byte*) SCREEN1#0+(byte/signed byte/word/signed word/dword/signed dword) 8*(byte/signed byte/word/signed word/dword/signed dword) $28 + (byte) doplasma::i2#2) ← (byte~) doplasma::$32
|
||||
to:doplasma::@6_9
|
||||
doplasma::@6_9: scope:[doplasma] from doplasma::@6_8
|
||||
[60] (byte~) doplasma::$35 ← *((const byte[$28]) doplasma::xbuf#0 + (byte) doplasma::i2#4) + *((const byte[$19]) doplasma::ybuf#0+(byte/signed byte/word/signed word/dword/signed dword) 9)
|
||||
[61] *((const byte*) SCREEN1#0+(byte/signed byte/word/signed word/dword/signed dword) 9*(byte/signed byte/word/signed word/dword/signed dword) $28 + (byte) doplasma::i2#4) ← (byte~) doplasma::$35
|
||||
[61] (byte~) doplasma::$35 ← (byte) doplasma::xval#0 + *((const byte[$19]) doplasma::ybuf#0+(byte/signed byte/word/signed word/dword/signed dword) 9)
|
||||
[62] *((const byte*) SCREEN1#0+(byte/signed byte/word/signed word/dword/signed dword) 9*(byte/signed byte/word/signed word/dword/signed dword) $28 + (byte) doplasma::i2#2) ← (byte~) doplasma::$35
|
||||
to:doplasma::@6_10
|
||||
doplasma::@6_10: scope:[doplasma] from doplasma::@6_9
|
||||
[62] (byte~) doplasma::$38 ← *((const byte[$28]) doplasma::xbuf#0 + (byte) doplasma::i2#4) + *((const byte[$19]) doplasma::ybuf#0+(byte/signed byte/word/signed word/dword/signed dword) $a)
|
||||
[63] *((const byte*) SCREEN1#0+(byte/signed byte/word/signed word/dword/signed dword) $a*(byte/signed byte/word/signed word/dword/signed dword) $28 + (byte) doplasma::i2#4) ← (byte~) doplasma::$38
|
||||
[63] (byte~) doplasma::$38 ← (byte) doplasma::xval#0 + *((const byte[$19]) doplasma::ybuf#0+(byte/signed byte/word/signed word/dword/signed dword) $a)
|
||||
[64] *((const byte*) SCREEN1#0+(byte/signed byte/word/signed word/dword/signed dword) $a*(byte/signed byte/word/signed word/dword/signed dword) $28 + (byte) doplasma::i2#2) ← (byte~) doplasma::$38
|
||||
to:doplasma::@6_11
|
||||
doplasma::@6_11: scope:[doplasma] from doplasma::@6_10
|
||||
[64] (byte~) doplasma::$41 ← *((const byte[$28]) doplasma::xbuf#0 + (byte) doplasma::i2#4) + *((const byte[$19]) doplasma::ybuf#0+(byte/signed byte/word/signed word/dword/signed dword) $b)
|
||||
[65] *((const byte*) SCREEN1#0+(byte/signed byte/word/signed word/dword/signed dword) $b*(byte/signed byte/word/signed word/dword/signed dword) $28 + (byte) doplasma::i2#4) ← (byte~) doplasma::$41
|
||||
[65] (byte~) doplasma::$41 ← (byte) doplasma::xval#0 + *((const byte[$19]) doplasma::ybuf#0+(byte/signed byte/word/signed word/dword/signed dword) $b)
|
||||
[66] *((const byte*) SCREEN1#0+(byte/signed byte/word/signed word/dword/signed dword) $b*(byte/signed byte/word/signed word/dword/signed dword) $28 + (byte) doplasma::i2#2) ← (byte~) doplasma::$41
|
||||
to:doplasma::@6_12
|
||||
doplasma::@6_12: scope:[doplasma] from doplasma::@6_11
|
||||
[66] (byte~) doplasma::$44 ← *((const byte[$28]) doplasma::xbuf#0 + (byte) doplasma::i2#4) + *((const byte[$19]) doplasma::ybuf#0+(byte/signed byte/word/signed word/dword/signed dword) $c)
|
||||
[67] *((const byte*) SCREEN1#0+(byte/signed byte/word/signed word/dword/signed dword) $c*(byte/signed byte/word/signed word/dword/signed dword) $28 + (byte) doplasma::i2#4) ← (byte~) doplasma::$44
|
||||
[67] (byte~) doplasma::$44 ← (byte) doplasma::xval#0 + *((const byte[$19]) doplasma::ybuf#0+(byte/signed byte/word/signed word/dword/signed dword) $c)
|
||||
[68] *((const byte*) SCREEN1#0+(byte/signed byte/word/signed word/dword/signed dword) $c*(byte/signed byte/word/signed word/dword/signed dword) $28 + (byte) doplasma::i2#2) ← (byte~) doplasma::$44
|
||||
to:doplasma::@6_13
|
||||
doplasma::@6_13: scope:[doplasma] from doplasma::@6_12
|
||||
[68] (byte~) doplasma::$47 ← *((const byte[$28]) doplasma::xbuf#0 + (byte) doplasma::i2#4) + *((const byte[$19]) doplasma::ybuf#0+(byte/signed byte/word/signed word/dword/signed dword) $d)
|
||||
[69] *((const byte*) SCREEN1#0+(byte/signed byte/word/signed word/dword/signed dword) $d*(byte/signed byte/word/signed word/dword/signed dword) $28 + (byte) doplasma::i2#4) ← (byte~) doplasma::$47
|
||||
[69] (byte~) doplasma::$47 ← (byte) doplasma::xval#0 + *((const byte[$19]) doplasma::ybuf#0+(byte/signed byte/word/signed word/dword/signed dword) $d)
|
||||
[70] *((const byte*) SCREEN1#0+(byte/signed byte/word/signed word/dword/signed dword) $d*(byte/signed byte/word/signed word/dword/signed dword) $28 + (byte) doplasma::i2#2) ← (byte~) doplasma::$47
|
||||
to:doplasma::@6_14
|
||||
doplasma::@6_14: scope:[doplasma] from doplasma::@6_13
|
||||
[70] (byte~) doplasma::$50 ← *((const byte[$28]) doplasma::xbuf#0 + (byte) doplasma::i2#4) + *((const byte[$19]) doplasma::ybuf#0+(byte/signed byte/word/signed word/dword/signed dword) $e)
|
||||
[71] *((const byte*) SCREEN1#0+(byte/signed byte/word/signed word/dword/signed dword) $e*(byte/signed byte/word/signed word/dword/signed dword) $28 + (byte) doplasma::i2#4) ← (byte~) doplasma::$50
|
||||
[71] (byte~) doplasma::$50 ← (byte) doplasma::xval#0 + *((const byte[$19]) doplasma::ybuf#0+(byte/signed byte/word/signed word/dword/signed dword) $e)
|
||||
[72] *((const byte*) SCREEN1#0+(byte/signed byte/word/signed word/dword/signed dword) $e*(byte/signed byte/word/signed word/dword/signed dword) $28 + (byte) doplasma::i2#2) ← (byte~) doplasma::$50
|
||||
to:doplasma::@6_15
|
||||
doplasma::@6_15: scope:[doplasma] from doplasma::@6_14
|
||||
[72] (byte~) doplasma::$53 ← *((const byte[$28]) doplasma::xbuf#0 + (byte) doplasma::i2#4) + *((const byte[$19]) doplasma::ybuf#0+(byte/signed byte/word/signed word/dword/signed dword) $f)
|
||||
[73] *((const byte*) SCREEN1#0+(byte/signed byte/word/signed word/dword/signed dword) $f*(byte/signed byte/word/signed word/dword/signed dword) $28 + (byte) doplasma::i2#4) ← (byte~) doplasma::$53
|
||||
[73] (byte~) doplasma::$53 ← (byte) doplasma::xval#0 + *((const byte[$19]) doplasma::ybuf#0+(byte/signed byte/word/signed word/dword/signed dword) $f)
|
||||
[74] *((const byte*) SCREEN1#0+(byte/signed byte/word/signed word/dword/signed dword) $f*(byte/signed byte/word/signed word/dword/signed dword) $28 + (byte) doplasma::i2#2) ← (byte~) doplasma::$53
|
||||
to:doplasma::@6_16
|
||||
doplasma::@6_16: scope:[doplasma] from doplasma::@6_15
|
||||
[74] (byte~) doplasma::$56 ← *((const byte[$28]) doplasma::xbuf#0 + (byte) doplasma::i2#4) + *((const byte[$19]) doplasma::ybuf#0+(byte/signed byte/word/signed word/dword/signed dword) $10)
|
||||
[75] *((const byte*) SCREEN1#0+(byte/signed byte/word/signed word/dword/signed dword) $10*(byte/signed byte/word/signed word/dword/signed dword) $28 + (byte) doplasma::i2#4) ← (byte~) doplasma::$56
|
||||
[75] (byte~) doplasma::$56 ← (byte) doplasma::xval#0 + *((const byte[$19]) doplasma::ybuf#0+(byte/signed byte/word/signed word/dword/signed dword) $10)
|
||||
[76] *((const byte*) SCREEN1#0+(byte/signed byte/word/signed word/dword/signed dword) $10*(byte/signed byte/word/signed word/dword/signed dword) $28 + (byte) doplasma::i2#2) ← (byte~) doplasma::$56
|
||||
to:doplasma::@6_17
|
||||
doplasma::@6_17: scope:[doplasma] from doplasma::@6_16
|
||||
[76] (byte~) doplasma::$59 ← *((const byte[$28]) doplasma::xbuf#0 + (byte) doplasma::i2#4) + *((const byte[$19]) doplasma::ybuf#0+(byte/signed byte/word/signed word/dword/signed dword) $11)
|
||||
[77] *((const byte*) SCREEN1#0+(byte/signed byte/word/signed word/dword/signed dword) $11*(byte/signed byte/word/signed word/dword/signed dword) $28 + (byte) doplasma::i2#4) ← (byte~) doplasma::$59
|
||||
[77] (byte~) doplasma::$59 ← (byte) doplasma::xval#0 + *((const byte[$19]) doplasma::ybuf#0+(byte/signed byte/word/signed word/dword/signed dword) $11)
|
||||
[78] *((const byte*) SCREEN1#0+(byte/signed byte/word/signed word/dword/signed dword) $11*(byte/signed byte/word/signed word/dword/signed dword) $28 + (byte) doplasma::i2#2) ← (byte~) doplasma::$59
|
||||
to:doplasma::@6_18
|
||||
doplasma::@6_18: scope:[doplasma] from doplasma::@6_17
|
||||
[78] (byte~) doplasma::$62 ← *((const byte[$28]) doplasma::xbuf#0 + (byte) doplasma::i2#4) + *((const byte[$19]) doplasma::ybuf#0+(byte/signed byte/word/signed word/dword/signed dword) $12)
|
||||
[79] *((const byte*) SCREEN1#0+(byte/signed byte/word/signed word/dword/signed dword) $12*(byte/signed byte/word/signed word/dword/signed dword) $28 + (byte) doplasma::i2#4) ← (byte~) doplasma::$62
|
||||
[79] (byte~) doplasma::$62 ← (byte) doplasma::xval#0 + *((const byte[$19]) doplasma::ybuf#0+(byte/signed byte/word/signed word/dword/signed dword) $12)
|
||||
[80] *((const byte*) SCREEN1#0+(byte/signed byte/word/signed word/dword/signed dword) $12*(byte/signed byte/word/signed word/dword/signed dword) $28 + (byte) doplasma::i2#2) ← (byte~) doplasma::$62
|
||||
to:doplasma::@6_19
|
||||
doplasma::@6_19: scope:[doplasma] from doplasma::@6_18
|
||||
[80] (byte~) doplasma::$65 ← *((const byte[$28]) doplasma::xbuf#0 + (byte) doplasma::i2#4) + *((const byte[$19]) doplasma::ybuf#0+(byte/signed byte/word/signed word/dword/signed dword) $13)
|
||||
[81] *((const byte*) SCREEN1#0+(byte/signed byte/word/signed word/dword/signed dword) $13*(byte/signed byte/word/signed word/dword/signed dword) $28 + (byte) doplasma::i2#4) ← (byte~) doplasma::$65
|
||||
[81] (byte~) doplasma::$65 ← (byte) doplasma::xval#0 + *((const byte[$19]) doplasma::ybuf#0+(byte/signed byte/word/signed word/dword/signed dword) $13)
|
||||
[82] *((const byte*) SCREEN1#0+(byte/signed byte/word/signed word/dword/signed dword) $13*(byte/signed byte/word/signed word/dword/signed dword) $28 + (byte) doplasma::i2#2) ← (byte~) doplasma::$65
|
||||
to:doplasma::@6_20
|
||||
doplasma::@6_20: scope:[doplasma] from doplasma::@6_19
|
||||
[82] (byte~) doplasma::$68 ← *((const byte[$28]) doplasma::xbuf#0 + (byte) doplasma::i2#4) + *((const byte[$19]) doplasma::ybuf#0+(byte/signed byte/word/signed word/dword/signed dword) $14)
|
||||
[83] *((const byte*) SCREEN1#0+(byte/signed byte/word/signed word/dword/signed dword) $14*(byte/signed byte/word/signed word/dword/signed dword) $28 + (byte) doplasma::i2#4) ← (byte~) doplasma::$68
|
||||
[83] (byte~) doplasma::$68 ← (byte) doplasma::xval#0 + *((const byte[$19]) doplasma::ybuf#0+(byte/signed byte/word/signed word/dword/signed dword) $14)
|
||||
[84] *((const byte*) SCREEN1#0+(byte/signed byte/word/signed word/dword/signed dword) $14*(byte/signed byte/word/signed word/dword/signed dword) $28 + (byte) doplasma::i2#2) ← (byte~) doplasma::$68
|
||||
to:doplasma::@6_21
|
||||
doplasma::@6_21: scope:[doplasma] from doplasma::@6_20
|
||||
[84] (byte~) doplasma::$71 ← *((const byte[$28]) doplasma::xbuf#0 + (byte) doplasma::i2#4) + *((const byte[$19]) doplasma::ybuf#0+(byte/signed byte/word/signed word/dword/signed dword) $15)
|
||||
[85] *((const byte*) SCREEN1#0+(byte/signed byte/word/signed word/dword/signed dword) $15*(byte/signed byte/word/signed word/dword/signed dword) $28 + (byte) doplasma::i2#4) ← (byte~) doplasma::$71
|
||||
[85] (byte~) doplasma::$71 ← (byte) doplasma::xval#0 + *((const byte[$19]) doplasma::ybuf#0+(byte/signed byte/word/signed word/dword/signed dword) $15)
|
||||
[86] *((const byte*) SCREEN1#0+(byte/signed byte/word/signed word/dword/signed dword) $15*(byte/signed byte/word/signed word/dword/signed dword) $28 + (byte) doplasma::i2#2) ← (byte~) doplasma::$71
|
||||
to:doplasma::@6_22
|
||||
doplasma::@6_22: scope:[doplasma] from doplasma::@6_21
|
||||
[86] (byte~) doplasma::$74 ← *((const byte[$28]) doplasma::xbuf#0 + (byte) doplasma::i2#4) + *((const byte[$19]) doplasma::ybuf#0+(byte/signed byte/word/signed word/dword/signed dword) $16)
|
||||
[87] *((const byte*) SCREEN1#0+(byte/signed byte/word/signed word/dword/signed dword) $16*(byte/signed byte/word/signed word/dword/signed dword) $28 + (byte) doplasma::i2#4) ← (byte~) doplasma::$74
|
||||
[87] (byte~) doplasma::$74 ← (byte) doplasma::xval#0 + *((const byte[$19]) doplasma::ybuf#0+(byte/signed byte/word/signed word/dword/signed dword) $16)
|
||||
[88] *((const byte*) SCREEN1#0+(byte/signed byte/word/signed word/dword/signed dword) $16*(byte/signed byte/word/signed word/dword/signed dword) $28 + (byte) doplasma::i2#2) ← (byte~) doplasma::$74
|
||||
to:doplasma::@6_23
|
||||
doplasma::@6_23: scope:[doplasma] from doplasma::@6_22
|
||||
[88] (byte~) doplasma::$77 ← *((const byte[$28]) doplasma::xbuf#0 + (byte) doplasma::i2#4) + *((const byte[$19]) doplasma::ybuf#0+(byte/signed byte/word/signed word/dword/signed dword) $17)
|
||||
[89] *((const byte*) SCREEN1#0+(byte/signed byte/word/signed word/dword/signed dword) $17*(byte/signed byte/word/signed word/dword/signed dword) $28 + (byte) doplasma::i2#4) ← (byte~) doplasma::$77
|
||||
[89] (byte~) doplasma::$77 ← (byte) doplasma::xval#0 + *((const byte[$19]) doplasma::ybuf#0+(byte/signed byte/word/signed word/dword/signed dword) $17)
|
||||
[90] *((const byte*) SCREEN1#0+(byte/signed byte/word/signed word/dword/signed dword) $17*(byte/signed byte/word/signed word/dword/signed dword) $28 + (byte) doplasma::i2#2) ← (byte~) doplasma::$77
|
||||
to:doplasma::@6_24
|
||||
doplasma::@6_24: scope:[doplasma] from doplasma::@6_23
|
||||
[90] (byte~) doplasma::$80 ← *((const byte[$28]) doplasma::xbuf#0 + (byte) doplasma::i2#4) + *((const byte[$19]) doplasma::ybuf#0+(byte/signed byte/word/signed word/dword/signed dword) $18)
|
||||
[91] *((const byte*) SCREEN1#0+(byte/signed byte/word/signed word/dword/signed dword) $18*(byte/signed byte/word/signed word/dword/signed dword) $28 + (byte) doplasma::i2#4) ← (byte~) doplasma::$80
|
||||
[91] (byte~) doplasma::$80 ← (byte) doplasma::xval#0 + *((const byte[$19]) doplasma::ybuf#0+(byte/signed byte/word/signed word/dword/signed dword) $18)
|
||||
[92] *((const byte*) SCREEN1#0+(byte/signed byte/word/signed word/dword/signed dword) $18*(byte/signed byte/word/signed word/dword/signed dword) $28 + (byte) doplasma::i2#2) ← (byte~) doplasma::$80
|
||||
to:doplasma::@7
|
||||
doplasma::@7: scope:[doplasma] from doplasma::@6_24
|
||||
[92] (byte) doplasma::i2#1 ← ++ (byte) doplasma::i2#4
|
||||
[93] if((byte) doplasma::i2#1<(byte/signed byte/word/signed word/dword/signed dword) $28) goto doplasma::@5
|
||||
[93] (byte) doplasma::i2#1 ← ++ (byte) doplasma::i2#2
|
||||
[94] if((byte) doplasma::i2#1<(byte/signed byte/word/signed word/dword/signed dword) $28) goto doplasma::@5
|
||||
to:doplasma::@return
|
||||
doplasma::@return: scope:[doplasma] from doplasma::@7
|
||||
[94] return
|
||||
[95] return
|
||||
to:@return
|
||||
makecharset: scope:[makecharset] from main::@2
|
||||
[95] phi()
|
||||
[96] call sid_rnd_init
|
||||
[96] phi()
|
||||
[97] call sid_rnd_init
|
||||
to:makecharset::@10
|
||||
makecharset::@10: scope:[makecharset] from makecharset
|
||||
[97] phi()
|
||||
[98] call print_cls
|
||||
[98] phi()
|
||||
[99] call print_cls
|
||||
to:makecharset::@1
|
||||
makecharset::@1: scope:[makecharset] from makecharset::@10 makecharset::@9
|
||||
[99] (byte*) print_char_cursor#45 ← phi( makecharset::@10/(const byte*) print_line_cursor#0 makecharset::@9/(byte*) print_char_cursor#18 )
|
||||
[99] (word) makecharset::c#2 ← phi( makecharset::@10/(byte/signed byte/word/signed word/dword/signed dword) 0 makecharset::@9/(word) makecharset::c#1 )
|
||||
[100] (byte~) makecharset::$2 ← < (word) makecharset::c#2
|
||||
[101] (byte) makecharset::s#0 ← *((const byte*) SINTABLE#0 + (byte~) makecharset::$2)
|
||||
[100] (byte*) print_char_cursor#45 ← phi( makecharset::@10/(const byte*) print_line_cursor#0 makecharset::@9/(byte*) print_char_cursor#18 )
|
||||
[100] (word) makecharset::c#2 ← phi( makecharset::@10/(byte/signed byte/word/signed word/dword/signed dword) 0 makecharset::@9/(word) makecharset::c#1 )
|
||||
[101] (byte~) makecharset::$2 ← < (word) makecharset::c#2
|
||||
[102] (byte) makecharset::s#0 ← *((const byte*) SINTABLE#0 + (byte~) makecharset::$2)
|
||||
to:makecharset::@2
|
||||
makecharset::@2: scope:[makecharset] from makecharset::@1 makecharset::@6
|
||||
[102] (byte) makecharset::i#7 ← phi( makecharset::@1/(byte/signed byte/word/signed word/dword/signed dword) 0 makecharset::@6/(byte) makecharset::i#1 )
|
||||
[103] (byte) makecharset::i#7 ← phi( makecharset::@1/(byte/signed byte/word/signed word/dword/signed dword) 0 makecharset::@6/(byte) makecharset::i#1 )
|
||||
to:makecharset::@3
|
||||
makecharset::@3: scope:[makecharset] from makecharset::@2 makecharset::@4
|
||||
[103] (byte) makecharset::b#2 ← phi( makecharset::@2/(byte/signed byte/word/signed word/dword/signed dword) 0 makecharset::@4/(byte) makecharset::b#3 )
|
||||
[103] (byte) makecharset::ii#2 ← phi( makecharset::@2/(byte/signed byte/word/signed word/dword/signed dword) 0 makecharset::@4/(byte) makecharset::ii#1 )
|
||||
[104] call sid_rnd
|
||||
[105] (byte) sid_rnd::return#2 ← (byte) sid_rnd::return#0
|
||||
[104] (byte) makecharset::b#2 ← phi( makecharset::@2/(byte/signed byte/word/signed word/dword/signed dword) 0 makecharset::@4/(byte) makecharset::b#3 )
|
||||
[104] (byte) makecharset::ii#2 ← phi( makecharset::@2/(byte/signed byte/word/signed word/dword/signed dword) 0 makecharset::@4/(byte) makecharset::ii#1 )
|
||||
[105] call sid_rnd
|
||||
[106] (byte) sid_rnd::return#2 ← (byte) sid_rnd::return#0
|
||||
to:makecharset::@11
|
||||
makecharset::@11: scope:[makecharset] from makecharset::@3
|
||||
[106] (byte~) makecharset::$3 ← (byte) sid_rnd::return#2
|
||||
[107] (byte~) makecharset::$4 ← (byte~) makecharset::$3 & (byte/word/signed word/dword/signed dword) $ff
|
||||
[108] if((byte~) makecharset::$4<=(byte) makecharset::s#0) goto makecharset::@4
|
||||
[107] (byte~) makecharset::$3 ← (byte) sid_rnd::return#2
|
||||
[108] (byte~) makecharset::$4 ← (byte~) makecharset::$3 & (byte/word/signed word/dword/signed dword) $ff
|
||||
[109] if((byte~) makecharset::$4<=(byte) makecharset::s#0) goto makecharset::@4
|
||||
to:makecharset::@5
|
||||
makecharset::@5: scope:[makecharset] from makecharset::@11
|
||||
[109] (byte) makecharset::b#1 ← (byte) makecharset::b#2 | *((const byte[8]) makecharset::bittab#0 + (byte) makecharset::ii#2)
|
||||
[110] (byte) makecharset::b#1 ← (byte) makecharset::b#2 | *((const byte[8]) makecharset::bittab#0 + (byte) makecharset::ii#2)
|
||||
to:makecharset::@4
|
||||
makecharset::@4: scope:[makecharset] from makecharset::@11 makecharset::@5
|
||||
[110] (byte) makecharset::b#3 ← phi( makecharset::@11/(byte) makecharset::b#2 makecharset::@5/(byte) makecharset::b#1 )
|
||||
[111] (byte) makecharset::ii#1 ← ++ (byte) makecharset::ii#2
|
||||
[112] if((byte) makecharset::ii#1<(byte/signed byte/word/signed word/dword/signed dword) 8) goto makecharset::@3
|
||||
[111] (byte) makecharset::b#3 ← phi( makecharset::@11/(byte) makecharset::b#2 makecharset::@5/(byte) makecharset::b#1 )
|
||||
[112] (byte) makecharset::ii#1 ← ++ (byte) makecharset::ii#2
|
||||
[113] if((byte) makecharset::ii#1<(byte/signed byte/word/signed word/dword/signed dword) 8) goto makecharset::@3
|
||||
to:makecharset::@6
|
||||
makecharset::@6: scope:[makecharset] from makecharset::@4
|
||||
[113] (word~) makecharset::$8 ← (word) makecharset::c#2 << (byte/signed byte/word/signed word/dword/signed dword) 3
|
||||
[114] (word~) makecharset::$9 ← (word~) makecharset::$8 + (byte) makecharset::i#7
|
||||
[115] *((const byte*) CHARSET#0 + (word~) makecharset::$9) ← (byte) makecharset::b#3
|
||||
[116] (byte) makecharset::i#1 ← ++ (byte) makecharset::i#7
|
||||
[117] if((byte) makecharset::i#1<(byte/signed byte/word/signed word/dword/signed dword) 8) goto makecharset::@2
|
||||
[114] (word~) makecharset::$8 ← (word) makecharset::c#2 << (byte/signed byte/word/signed word/dword/signed dword) 3
|
||||
[115] (word~) makecharset::$9 ← (word~) makecharset::$8 + (byte) makecharset::i#7
|
||||
[116] *((const byte*) CHARSET#0 + (word~) makecharset::$9) ← (byte) makecharset::b#3
|
||||
[117] (byte) makecharset::i#1 ← ++ (byte) makecharset::i#7
|
||||
[118] if((byte) makecharset::i#1<(byte/signed byte/word/signed word/dword/signed dword) 8) goto makecharset::@2
|
||||
to:makecharset::@7
|
||||
makecharset::@7: scope:[makecharset] from makecharset::@6
|
||||
[118] (byte/word~) makecharset::$11 ← (word) makecharset::c#2 & (byte/signed byte/word/signed word/dword/signed dword) 7
|
||||
[119] if((byte/word~) makecharset::$11!=(byte/signed byte/word/signed word/dword/signed dword) 0) goto makecharset::@9
|
||||
[119] (byte/word~) makecharset::$11 ← (word) makecharset::c#2 & (byte/signed byte/word/signed word/dword/signed dword) 7
|
||||
[120] if((byte/word~) makecharset::$11!=(byte/signed byte/word/signed word/dword/signed dword) 0) goto makecharset::@9
|
||||
to:makecharset::@8
|
||||
makecharset::@8: scope:[makecharset] from makecharset::@7
|
||||
[120] phi()
|
||||
[121] call print_char
|
||||
[121] phi()
|
||||
[122] call print_char
|
||||
to:makecharset::@9
|
||||
makecharset::@9: scope:[makecharset] from makecharset::@7 makecharset::@8
|
||||
[122] (byte*) print_char_cursor#18 ← phi( makecharset::@8/(byte*) print_char_cursor#1 makecharset::@7/(byte*) print_char_cursor#45 )
|
||||
[123] (word) makecharset::c#1 ← ++ (word) makecharset::c#2
|
||||
[124] if((word) makecharset::c#1<(word/signed word/dword/signed dword) $100) goto makecharset::@1
|
||||
[123] (byte*) print_char_cursor#18 ← phi( makecharset::@8/(byte*) print_char_cursor#1 makecharset::@7/(byte*) print_char_cursor#45 )
|
||||
[124] (word) makecharset::c#1 ← ++ (word) makecharset::c#2
|
||||
[125] if((word) makecharset::c#1<(word/signed word/dword/signed dword) $100) goto makecharset::@1
|
||||
to:makecharset::@return
|
||||
makecharset::@return: scope:[makecharset] from makecharset::@9
|
||||
[125] return
|
||||
[126] return
|
||||
to:@return
|
||||
print_char: scope:[print_char] from makecharset::@8
|
||||
[126] *((byte*) print_char_cursor#45) ← (const byte) print_char::ch#0
|
||||
[127] (byte*) print_char_cursor#1 ← ++ (byte*) print_char_cursor#45
|
||||
[127] *((byte*) print_char_cursor#45) ← (const byte) print_char::ch#0
|
||||
[128] (byte*) print_char_cursor#1 ← ++ (byte*) print_char_cursor#45
|
||||
to:print_char::@return
|
||||
print_char::@return: scope:[print_char] from print_char
|
||||
[128] return
|
||||
[129] return
|
||||
to:@return
|
||||
sid_rnd: scope:[sid_rnd] from makecharset::@3
|
||||
[129] (byte) sid_rnd::return#0 ← *((const byte*) SID_VOICE3_OSC#0)
|
||||
[130] (byte) sid_rnd::return#0 ← *((const byte*) SID_VOICE3_OSC#0)
|
||||
to:sid_rnd::@return
|
||||
sid_rnd::@return: scope:[sid_rnd] from sid_rnd
|
||||
[130] return
|
||||
[131] return
|
||||
to:@return
|
||||
print_cls: scope:[print_cls] from makecharset::@10
|
||||
[131] phi()
|
||||
[132] phi()
|
||||
to:print_cls::@1
|
||||
print_cls::@1: scope:[print_cls] from print_cls print_cls::@1
|
||||
[132] (byte*) print_cls::sc#2 ← phi( print_cls/(const byte*) print_line_cursor#0 print_cls::@1/(byte*) print_cls::sc#1 )
|
||||
[133] *((byte*) print_cls::sc#2) ← (byte) ' '
|
||||
[134] (byte*) print_cls::sc#1 ← ++ (byte*) print_cls::sc#2
|
||||
[135] if((byte*) print_cls::sc#1!=(const byte*) print_line_cursor#0+(word/signed word/dword/signed dword) $3e8) goto print_cls::@1
|
||||
[133] (byte*) print_cls::sc#2 ← phi( print_cls/(const byte*) print_line_cursor#0 print_cls::@1/(byte*) print_cls::sc#1 )
|
||||
[134] *((byte*) print_cls::sc#2) ← (byte) ' '
|
||||
[135] (byte*) print_cls::sc#1 ← ++ (byte*) print_cls::sc#2
|
||||
[136] if((byte*) print_cls::sc#1!=(const byte*) print_line_cursor#0+(word/signed word/dword/signed dword) $3e8) goto print_cls::@1
|
||||
to:print_cls::@return
|
||||
print_cls::@return: scope:[print_cls] from print_cls::@1
|
||||
[136] return
|
||||
[137] return
|
||||
to:@return
|
||||
sid_rnd_init: scope:[sid_rnd_init] from makecharset
|
||||
[137] *((const word*) SID_VOICE3_FREQ#0) ← (word/dword/signed dword) $ffff
|
||||
[138] *((const byte*) SID_VOICE3_CONTROL#0) ← (const byte) SID_CONTROL_NOISE#0
|
||||
[138] *((const word*) SID_VOICE3_FREQ#0) ← (word/dword/signed dword) $ffff
|
||||
[139] *((const byte*) SID_VOICE3_CONTROL#0) ← (const byte) SID_CONTROL_NOISE#0
|
||||
to:sid_rnd_init::@return
|
||||
sid_rnd_init::@return: scope:[sid_rnd_init] from sid_rnd_init
|
||||
[139] return
|
||||
[140] return
|
||||
to:@return
|
||||
|
File diff suppressed because it is too large
Load Diff
@ -112,16 +112,16 @@
|
||||
(byte) YELLOW
|
||||
(byte) c1A
|
||||
(byte) c1A#1 c1A zp ZP_BYTE:4 1.3636363636363638
|
||||
(byte) c1A#3 c1A zp ZP_BYTE:4 0.1911764705882353
|
||||
(byte) c1A#3 c1A zp ZP_BYTE:4 0.18840579710144925
|
||||
(byte) c1B
|
||||
(byte) c1B#1 c1B zp ZP_BYTE:5 1.25
|
||||
(byte) c1B#3 c1B zp ZP_BYTE:5 0.19402985074626866
|
||||
(byte) c1B#3 c1B zp ZP_BYTE:5 0.1911764705882353
|
||||
(byte) c2A
|
||||
(byte) c2A#1 c2A zp ZP_BYTE:6 0.6818181818181819
|
||||
(byte) c2A#3 c2A zp ZP_BYTE:6 0.22807017543859648
|
||||
(byte) c2A#3 c2A zp ZP_BYTE:6 0.22413793103448276
|
||||
(byte) c2B
|
||||
(byte) c2B#1 c2B zp ZP_BYTE:7 0.6521739130434783
|
||||
(byte) c2B#3 c2B zp ZP_BYTE:7 0.23214285714285715
|
||||
(byte) c2B#3 c2B zp ZP_BYTE:7 0.22807017543859648
|
||||
(void()) doplasma((byte*) doplasma::screen)
|
||||
(byte~) doplasma::$0 reg byte a 202.0
|
||||
(byte~) doplasma::$11 reg byte a 202.0
|
||||
@ -206,11 +206,13 @@
|
||||
(byte) doplasma::i1#2 i1 zp ZP_BYTE:10 60.599999999999994
|
||||
(byte) doplasma::i2
|
||||
(byte) doplasma::i2#1 reg byte x 151.5
|
||||
(byte) doplasma::i2#4 reg byte x 102.98039215686288
|
||||
(byte) doplasma::i2#2 reg byte x 54.3846153846154
|
||||
(byte) doplasma::ii
|
||||
(byte*) doplasma::screen
|
||||
(byte[$28]) doplasma::xbuf
|
||||
(const byte[$28]) doplasma::xbuf#0 xbuf = { fill( $28, 0) }
|
||||
(byte) doplasma::xval
|
||||
(byte) doplasma::xval#0 reg byte y 53.59183673469388
|
||||
(byte[$19]) doplasma::ybuf
|
||||
(const byte[$19]) doplasma::ybuf#0 ybuf = { fill( $19, 0) }
|
||||
(void()) main()
|
||||
@ -307,12 +309,13 @@ zp ZP_BYTE:7 [ c2B#1 c2B#3 ]
|
||||
zp ZP_BYTE:8 [ doplasma::c1a#2 doplasma::c1a#0 doplasma::c1a#1 doplasma::c2a#2 doplasma::c2a#0 doplasma::c2a#1 ]
|
||||
zp ZP_BYTE:9 [ doplasma::c1b#2 doplasma::c1b#0 doplasma::c1b#1 doplasma::c2b#2 doplasma::c2b#0 doplasma::c2b#1 ]
|
||||
zp ZP_BYTE:10 [ doplasma::i#2 doplasma::i#1 doplasma::i1#2 doplasma::i1#1 ]
|
||||
reg byte x [ doplasma::i2#4 doplasma::i2#1 ]
|
||||
reg byte x [ doplasma::i2#2 doplasma::i2#1 ]
|
||||
zp ZP_WORD:11 [ print_char_cursor#45 print_char_cursor#18 print_char_cursor#1 ]
|
||||
reg byte x [ makecharset::ii#2 makecharset::ii#1 ]
|
||||
reg byte y [ makecharset::b#2 makecharset::b#3 makecharset::b#1 ]
|
||||
reg byte a [ doplasma::$0 ]
|
||||
reg byte a [ doplasma::$2 ]
|
||||
reg byte y [ doplasma::xval#0 ]
|
||||
reg byte a [ doplasma::$6 ]
|
||||
reg byte a [ doplasma::$11 ]
|
||||
reg byte a [ doplasma::$14 ]
|
||||
|
Loading…
x
Reference in New Issue
Block a user