(label) @1
(label) @begin
(label) @end
(word) PI2_u4f12
(const word) PI2_u4f12#0 PI2_u4f12 = (word) $6488
(word) PI_HALF_u4f12
(const word) PI_HALF_u4f12#0 PI_HALF_u4f12 = (word) $1922
(word) PI_u4f12
(const word) PI_u4f12#0 PI_u4f12 = (word) $3244
(const byte) RADIX::BINARY BINARY = (number) 2
(const byte) RADIX::DECIMAL DECIMAL = (number) $a
(const byte) RADIX::HEXADECIMAL HEXADECIMAL = (number) $10
(const byte) RADIX::OCTAL OCTAL = (number) 8
(word()) div16u((word) div16u::dividend , (word) div16u::divisor)
(label) div16u::@1
(label) div16u::@return
(word) div16u::dividend
(word) div16u::divisor
(word) div16u::return
(word) div16u::return#0 return zp ZP_WORD:14 1.3333333333333333
(word) div16u::return#2 return zp ZP_WORD:14 4.0
(word()) divr16u((word) divr16u::dividend , (word) divr16u::divisor , (word) divr16u::rem)
(byte~) divr16u::$1 reg byte a 22.0
(byte~) divr16u::$2 reg byte a 22.0
(label) divr16u::@1
(label) divr16u::@2
(label) divr16u::@3
(label) divr16u::@4
(label) divr16u::@5
(label) divr16u::@return
(word) divr16u::dividend
(word) divr16u::dividend#0 dividend zp ZP_WORD:12 2.75
(word) divr16u::dividend#2 dividend zp ZP_WORD:12 4.714285714285714
(word) divr16u::divisor
(byte) divr16u::i
(byte) divr16u::i#1 reg byte x 16.5
(byte) divr16u::i#2 reg byte x 1.6923076923076923
(word) divr16u::quotient
(word) divr16u::quotient#1 quotient zp ZP_WORD:14 16.5
(word) divr16u::quotient#2 quotient zp ZP_WORD:14 11.0
(word) divr16u::quotient#3 quotient zp ZP_WORD:14 2.75
(word) divr16u::rem
(word) divr16u::rem#0 rem zp ZP_WORD:10 8.25
(word) divr16u::rem#1 rem zp ZP_WORD:10 22.0
(word) divr16u::rem#2 rem zp ZP_WORD:10 22.0
(word) divr16u::rem#4 rem zp ZP_WORD:10 22.0
(word) divr16u::rem#5 rem zp ZP_WORD:10 11.0
(word) divr16u::rem#9 rem zp ZP_WORD:10 11.0
(word) divr16u::return
(word) divr16u::return#0 return zp ZP_WORD:14 7.000000000000001
(word) divr16u::return#2 return zp ZP_WORD:14 4.0
(void()) main()
(label) main::@1
(label) main::@2
(label) main::@3
(label) main::@4
(label) main::@5
(label) main::@6
(label) main::@return
(byte) main::i
(byte) main::i#1 reg byte x 16.5
(byte) main::i#2 reg byte x 3.3000000000000003
(signed byte) main::sb
(signed byte) main::sb#0 sb zp ZP_BYTE:4 6.6000000000000005
(signed byte[$c0]) main::sintab2
(const signed byte[$c0]) main::sintab2#0 sintab2 = { fill( $c0, 0) }
(byte[]) main::sintabref
(const byte[]) main::sintabref#0 sintabref = { (byte) 0, (byte) 4, (byte) 8, (byte) $c, (byte) $11, (byte) $15, (byte) $19, (byte) $1d, (byte) $21, (byte) $25, (byte) $29, (byte) $2d, (byte) $31, (byte) $35, (byte) $38, (byte) $3c, (byte) $40, (byte) $43, (byte) $47, (byte) $4a, (byte) $4e, (byte) $51, (byte) $54, (byte) $57, (byte) $5a, (byte) $5d, (byte) $60, (byte) $63, (byte) $65, (byte) $68, (byte) $6a, (byte) $6c, (byte) $6e, (byte) $70, (byte) $72, (byte) $74, (byte) $76, (byte) $77, (byte) $79, (byte) $7a, (byte) $7b, (byte) $7c, (byte) $7d, (byte) $7e, (byte) $7e, (byte) $7f, (byte) $7f, (byte) $7f, (byte) $80, (byte) $7f, (byte) $7f, (byte) $7f, (byte) $7e, (byte) $7e, (byte) $7d, (byte) $7c, (byte) $7b, (byte) $7a, (byte) $79, (byte) $77, (byte) $76, (byte) $74, (byte) $72, (byte) $70, (byte) $6e, (byte) $6c, (byte) $6a, (byte) $68, (byte) $65, (byte) $63, (byte) $60, (byte) $5d, (byte) $5a, (byte) $57, (byte) $54, (byte) $51, (byte) $4e, (byte) $4a, (byte) $47, (byte) $43, (byte) $40, (byte) $3c, (byte) $38, (byte) $35, (byte) $31, (byte) $2d, (byte) $29, (byte) $25, (byte) $21, (byte) $1d, (byte) $19, (byte) $15, (byte) $11, (byte) $c, (byte) 8, (byte) 4, (byte) 0, (byte) $fc, (byte) $f8, (byte) $f4, (byte) $ef, (byte) $eb, (byte) $e7, (byte) $e3, (byte) $df, (byte) $db, (byte) $d7, (byte) $d3, (byte) $cf, (byte) $cb, (byte) $c8, (byte) $c4, (byte) $c0, (byte) $bd, (byte) $b9, (byte) $b6, (byte) $b2, (byte) $af, (byte) $ac, (byte) $a9, (byte) $a6, (byte) $a3, (byte) $a0, (byte) $9d, (byte) $9b, (byte) $98, (byte) $96, (byte) $94, (byte) $92, (byte) $90, (byte) $8e, (byte) $8c, (byte) $8a, (byte) $89, (byte) $87, (byte) $86, (byte) $85, (byte) $84, (byte) $83, (byte) $82, (byte) $82, (byte) $81, (byte) $81, (byte) $81, (byte) $81, (byte) $81, (byte) $81, (byte) $81, (byte) $82, (byte) $82, (byte) $83, (byte) $84, (byte) $85, (byte) $86, (byte) $87, (byte) $89, (byte) $8a, (byte) $8c, (byte) $8e, (byte) $90, (byte) $92, (byte) $94, (byte) $96, (byte) $98, (byte) $9b, (byte) $9d, (byte) $a0, (byte) $a3, (byte) $a6, (byte) $a9, (byte) $ac, (byte) $af, (byte) $b2, (byte) $b6, (byte) $b9, (byte) $bd, (byte) $c0, (byte) $c4, (byte) $c8, (byte) $cb, (byte) $cf, (byte) $d3, (byte) $d7, (byte) $db, (byte) $df, (byte) $e3, (byte) $e7, (byte) $eb, (byte) $ef, (byte) $f4, (byte) $f8, (byte) $fc }
(const string) main::str str = (string) "  "
(const string) main::str1 str1 = (string) " "
(word) main::wavelength
(const word) main::wavelength#0 wavelength = (byte) $c0
(void*()) memset((void*) memset::str , (byte) memset::c , (word) memset::num)
(label) memset::@1
(label) memset::@2
(label) memset::@return
(byte) memset::c
(const byte) memset::c#0 c = (byte) ' '
(byte*) memset::dst
(byte*) memset::dst#1 dst zp ZP_WORD:6 16.5
(byte*) memset::dst#4 dst zp ZP_WORD:6 16.5
(byte*) memset::end
(const byte*) memset::end#0 end = (byte*)(const void*) memset::str#0+(const word) memset::num#0
(word) memset::num
(const word) memset::num#0 num = (word) $3e8
(void*) memset::return
(void*) memset::str
(const void*) memset::str#0 str = (void*)(const byte*) print_line_cursor#0
(word()) mul8u((byte) mul8u::a , (byte) mul8u::b)
(byte~) mul8u::$1 reg byte a 202.0
(label) mul8u::@1
(label) mul8u::@2
(label) mul8u::@3
(label) mul8u::@4
(label) mul8u::@return
(byte) mul8u::a
(byte) mul8u::a#0 reg byte x 101.0
(byte) mul8u::a#1 reg byte x 1.3333333333333333
(byte) mul8u::a#2 reg byte x 67.66666666666666
(byte) mul8u::b
(byte) mul8u::b#0 reg byte a 2.0
(word) mul8u::mb
(word) mul8u::mb#1 mb zp ZP_WORD:8 202.0
(word) mul8u::mb#2 mb zp ZP_WORD:8 43.57142857142858
(word) mul8u::res
(word) mul8u::res#1 res zp ZP_WORD:6 202.0
(word) mul8u::res#2 res zp ZP_WORD:6 50.83333333333333
(word) mul8u::res#6 res zp ZP_WORD:6 101.0
(word) mul8u::return
(word) mul8u::return#2 return zp ZP_WORD:6 4.0
(byte()) mulu8_sel((byte) mulu8_sel::v1 , (byte) mulu8_sel::v2 , (byte) mulu8_sel::select)
(word~) mulu8_sel::$0 $0 zp ZP_WORD:6 4.0
(word~) mulu8_sel::$1 $1 zp ZP_WORD:6 4.0
(label) mulu8_sel::@1
(label) mulu8_sel::@return
(byte) mulu8_sel::return
(byte) mulu8_sel::return#0 reg byte a 4.0
(byte) mulu8_sel::return#1 reg byte a 4.0
(byte) mulu8_sel::return#10 reg byte a 4.0
(byte) mulu8_sel::return#11 reg byte a 4.0
(byte) mulu8_sel::return#12 reg byte a 1.714285714285714
(byte) mulu8_sel::return#2 reg byte a 4.0
(byte) mulu8_sel::select
(byte) mulu8_sel::select#5 select zp ZP_BYTE:5 0.3333333333333333
(byte) mulu8_sel::v1
(byte) mulu8_sel::v1#0 reg byte x 2.0
(byte) mulu8_sel::v1#1 reg byte x 2.0
(byte) mulu8_sel::v1#2 reg byte x 4.0
(byte) mulu8_sel::v1#3 reg byte x 2.0
(byte) mulu8_sel::v1#4 reg byte x 2.0
(byte) mulu8_sel::v1#5 reg byte x 12.0
(byte) mulu8_sel::v2
(byte) mulu8_sel::v2#0 reg byte y 4.0
(byte) mulu8_sel::v2#1 reg byte y 4.0
(byte) mulu8_sel::v2#3 reg byte y 4.0
(byte) mulu8_sel::v2#4 reg byte y 4.0
(byte) mulu8_sel::v2#5 reg byte y 5.0
(void()) print_byte((byte) print_byte::b)
(byte~) print_byte::$0 reg byte a 4.0
(byte~) print_byte::$2 reg byte a 4.0
(label) print_byte::@1
(label) print_byte::@return
(byte) print_byte::b
(byte) print_byte::b#0 b zp ZP_BYTE:4 1.5
(void()) print_char((byte) print_char::ch)
(label) print_char::@return
(byte) print_char::ch
(byte) print_char::ch#2 reg byte a 4.0
(byte) print_char::ch#3 reg byte a 4.0
(byte) print_char::ch#4 reg byte a 6.0
(byte*) print_char_cursor
(byte*) print_char_cursor#1 print_char_cursor zp ZP_WORD:2 101.0
(byte*) print_char_cursor#10 print_char_cursor zp ZP_WORD:2 0.9444444444444446
(byte*) print_char_cursor#2 print_char_cursor zp ZP_WORD:2 40.875
(byte*) print_char_cursor#29 print_char_cursor zp ZP_WORD:2 6.0
(byte*) print_char_cursor#44 print_char_cursor zp ZP_WORD:2 5.200000000000001
(byte*) print_char_cursor#45 print_char_cursor zp ZP_WORD:2 8.25
(byte*) print_char_cursor#47 print_char_cursor zp ZP_WORD:2 24.0
(void()) print_cls()
(label) print_cls::@return
(byte[]) print_hextab
(const byte[]) print_hextab#0 print_hextab = (string) "0123456789abcdef"z
(byte*) print_line_cursor
(const byte*) print_line_cursor#0 print_line_cursor = (byte*) 1024
(void()) print_sbyte((signed byte) print_sbyte::b)
(label) print_sbyte::@1
(label) print_sbyte::@2
(label) print_sbyte::@3
(label) print_sbyte::@4
(label) print_sbyte::@return
(signed byte) print_sbyte::b
(signed byte) print_sbyte::b#0 b zp ZP_BYTE:4 4.0
(signed byte) print_sbyte::b#1 b zp ZP_BYTE:4 2.8333333333333335
(signed byte) print_sbyte::b#4 b zp ZP_BYTE:4 4.0
(byte*) print_screen
(void()) print_str((byte*) print_str::str)
(label) print_str::@1
(label) print_str::@2
(label) print_str::@return
(byte*) print_str::str
(byte*) print_str::str#0 str zp ZP_WORD:6 202.0
(byte*) print_str::str#3 str zp ZP_WORD:6 101.5
(byte*) print_str::str#5 str zp ZP_WORD:6 2.0
(signed byte()) sin8s((word) sin8s::x)
(word~) sin8s::$4 $4 zp ZP_WORD:6 4.0
(label) sin8s::@1
(label) sin8s::@10
(label) sin8s::@11
(label) sin8s::@12
(label) sin8s::@13
(label) sin8s::@14
(label) sin8s::@2
(label) sin8s::@3
(label) sin8s::@4
(label) sin8s::@5
(label) sin8s::@6
(label) sin8s::@7
(label) sin8s::@8
(label) sin8s::@9
(label) sin8s::@return
(byte) sin8s::DIV_6
(const byte) sin8s::DIV_6#0 DIV_6 = (byte) $2b
(byte) sin8s::isUpper
(byte) sin8s::isUpper#10 isUpper zp ZP_BYTE:4 0.05555555555555555
(signed byte) sin8s::return
(signed byte) sin8s::return#0 reg byte a 22.0
(signed byte) sin8s::return#1 reg byte a 5.0
(signed byte~) sin8s::return#5 reg byte a 4.0
(signed byte) sin8s::sinx
(signed byte) sin8s::sinx#1 reg byte a 4.0
(byte) sin8s::usinx
(byte) sin8s::usinx#0 usinx zp ZP_BYTE:18 0.3333333333333333
(byte) sin8s::usinx#1 reg byte x 4.0
(byte) sin8s::usinx#2 reg byte x 4.0
(byte) sin8s::usinx#4 reg byte x 2.0
(word) sin8s::x
(word) sin8s::x#0 x zp ZP_WORD:6 8.5
(word) sin8s::x#1 x zp ZP_WORD:6 4.0
(word) sin8s::x#2 x zp ZP_WORD:6 4.0
(word) sin8s::x#4 x zp ZP_WORD:6 5.0
(word) sin8s::x#6 x zp ZP_WORD:6 6.0
(byte) sin8s::x1
(byte) sin8s::x1#0 x1 zp ZP_BYTE:16 0.6363636363636365
(byte) sin8s::x2
(byte) sin8s::x2#0 reg byte a 4.0
(byte) sin8s::x3
(byte) sin8s::x3#0 x3 zp ZP_BYTE:17 1.0
(byte) sin8s::x3_6
(byte) sin8s::x3_6#0 reg byte a 4.0
(byte) sin8s::x4
(byte) sin8s::x4#0 reg byte a 4.0
(byte) sin8s::x5
(byte) sin8s::x5#0 reg byte a 4.0
(byte) sin8s::x5_128
(byte) sin8s::x5_128#0 reg byte a 4.0
(void()) sin8s_gen((signed byte*) sin8s_gen::sintab , (word) sin8s_gen::wavelength)
(signed byte~) sin8s_gen::$2 reg byte a 22.0
(label) sin8s_gen::@1
(label) sin8s_gen::@2
(label) sin8s_gen::@3
(label) sin8s_gen::@4
(label) sin8s_gen::@return
(word) sin8s_gen::i
(word) sin8s_gen::i#1 i zp ZP_WORD:2 16.5
(word) sin8s_gen::i#5 i zp ZP_WORD:2 2.75
(signed byte*) sin8s_gen::sintab
(signed byte*) sin8s_gen::sintab#0 sintab zp ZP_WORD:12 5.5
(signed byte*) sin8s_gen::sintab#7 sintab zp ZP_WORD:12 5.5
(word) sin8s_gen::step
(word) sin8s_gen::step#0 step zp ZP_WORD:14 1.1818181818181819
(word) sin8s_gen::wavelength
(word) sin8s_gen::x
(word) sin8s_gen::x#1 x zp ZP_WORD:10 7.333333333333333
(word) sin8s_gen::x#5 x zp ZP_WORD:10 4.714285714285714

reg byte x [ main::i#2 main::i#1 ]
reg byte a [ print_char::ch#4 print_char::ch#2 print_char::ch#3 ]
zp ZP_WORD:2 [ sin8s_gen::i#5 sin8s_gen::i#1 print_char_cursor#29 print_char_cursor#47 print_char_cursor#44 print_char_cursor#45 print_char_cursor#2 print_char_cursor#10 print_char_cursor#1 ]
zp ZP_BYTE:4 [ sin8s::isUpper#10 print_sbyte::b#4 print_sbyte::b#0 print_sbyte::b#1 main::sb#0 print_byte::b#0 ]
reg byte x [ sin8s::usinx#4 sin8s::usinx#1 sin8s::usinx#2 ]
reg byte a [ sin8s::return#1 sin8s::return#5 sin8s::sinx#1 ]
reg byte x [ mulu8_sel::v1#5 mulu8_sel::v1#1 mulu8_sel::v1#2 mulu8_sel::v1#3 mulu8_sel::v1#4 mulu8_sel::v1#0 ]
reg byte y [ mulu8_sel::v2#5 mulu8_sel::v2#1 mulu8_sel::v2#3 mulu8_sel::v2#4 mulu8_sel::v2#0 ]
zp ZP_BYTE:5 [ mulu8_sel::select#5 ]
reg byte x [ mul8u::a#2 mul8u::a#1 mul8u::a#0 ]
zp ZP_WORD:6 [ mul8u::res#2 mul8u::res#6 mul8u::res#1 mul8u::return#2 mulu8_sel::$0 mulu8_sel::$1 sin8s::x#6 sin8s::x#4 sin8s::x#0 sin8s::x#1 sin8s::x#2 sin8s::$4 memset::dst#4 memset::dst#1 print_str::str#3 print_str::str#5 print_str::str#0 ]
zp ZP_WORD:8 [ mul8u::mb#2 mul8u::mb#1 ]
reg byte a [ mul8u::b#0 ]
zp ZP_WORD:10 [ divr16u::rem#4 divr16u::rem#9 divr16u::rem#5 divr16u::rem#0 divr16u::rem#1 divr16u::rem#2 sin8s_gen::x#5 sin8s_gen::x#1 ]
zp ZP_WORD:12 [ divr16u::dividend#2 divr16u::dividend#0 sin8s_gen::sintab#7 sin8s_gen::sintab#0 ]
zp ZP_WORD:14 [ divr16u::quotient#3 divr16u::return#0 divr16u::quotient#1 divr16u::quotient#2 divr16u::return#2 div16u::return#2 sin8s_gen::step#0 div16u::return#0 ]
reg byte x [ divr16u::i#2 divr16u::i#1 ]
reg byte a [ print_byte::$0 ]
reg byte a [ print_byte::$2 ]
reg byte a [ sin8s::return#0 ]
reg byte a [ sin8s_gen::$2 ]
zp ZP_BYTE:16 [ sin8s::x1#0 ]
reg byte a [ mulu8_sel::return#0 ]
reg byte a [ sin8s::x2#0 ]
reg byte a [ mulu8_sel::return#1 ]
zp ZP_BYTE:17 [ sin8s::x3#0 ]
reg byte a [ mulu8_sel::return#2 ]
reg byte a [ sin8s::x3_6#0 ]
zp ZP_BYTE:18 [ sin8s::usinx#0 ]
reg byte a [ mulu8_sel::return#10 ]
reg byte a [ sin8s::x4#0 ]
reg byte a [ mulu8_sel::return#11 ]
reg byte a [ sin8s::x5#0 ]
reg byte a [ sin8s::x5_128#0 ]
reg byte a [ mulu8_sel::return#12 ]
reg byte a [ mul8u::$1 ]
reg byte a [ divr16u::$1 ]
reg byte a [ divr16u::$2 ]
