(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:15 1.3333333333333333
(word) div16u::return#2 return zp ZP_WORD:15 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:13 2.75
(word) divr16u::dividend#2 dividend zp ZP_WORD:13 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:15 16.5
(word) divr16u::quotient#2 quotient zp ZP_WORD:15 11.0
(word) divr16u::quotient#3 quotient zp ZP_WORD:15 2.75
(word) divr16u::rem
(word) divr16u::rem#0 rem zp ZP_WORD:11 8.25
(word) divr16u::rem#1 rem zp ZP_WORD:11 22.0
(word) divr16u::rem#2 rem zp ZP_WORD:11 22.0
(word) divr16u::rem#4 rem zp ZP_WORD:11 22.0
(word) divr16u::rem#5 rem zp ZP_WORD:11 11.0
(word) divr16u::rem#9 rem zp ZP_WORD:11 11.0
(word) divr16u::return
(word) divr16u::return#0 return zp ZP_WORD:15 7.000000000000001
(word) divr16u::return#2 return zp ZP_WORD:15 4.0
(void()) main()
(label) main::@1
(label) main::@return
(byte[$14]) main::sintab
(const byte[$14]) main::sintab#0 sintab = { fill( $14, 0) }
(word) main::tabsize
(const word) main::tabsize#0 tabsize = (byte) $14
(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:17 16.5
(byte*) memset::dst#4 dst zp ZP_WORD:17 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*)(byte*) 1024
(signed word()) mul8su((signed byte) mul8su::a , (byte) mul8su::b)
(byte~) mul8su::$10 reg byte a 4.0
(byte~) mul8su::$7 reg byte a 4.0
(label) mul8su::@1
(label) mul8su::@2
(label) mul8su::@3
(label) mul8su::@return
(signed byte) mul8su::a
(signed byte) mul8su::a#0 reg byte y 2.6
(byte) mul8su::b
(const byte) mul8su::b#0 b = (const byte) sin8u_table::amplitude#0+(byte) 1
(word) mul8su::m
(word) mul8su::m#0 m zp ZP_WORD:9 2.0
(word) mul8su::m#1 m zp ZP_WORD:9 4.0
(word) mul8su::m#2 m zp ZP_WORD:9 1.3333333333333333
(signed word) mul8su::return
(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 4.0
(byte) mul8u::a#2 reg byte x 2.0
(byte) mul8u::a#3 reg byte x 67.66666666666666
(byte) mul8u::a#6 reg byte x 6.0
(byte) mul8u::b
(byte) mul8u::b#1 reg byte a 4.0
(word) mul8u::mb
(word) mul8u::mb#0 mb zp ZP_WORD:6 4.0
(word) mul8u::mb#1 mb zp ZP_WORD:6 202.0
(word) mul8u::mb#2 mb zp ZP_WORD:6 43.57142857142858
(word) mul8u::res
(word) mul8u::res#1 res zp ZP_WORD:9 202.0
(word) mul8u::res#2 res zp ZP_WORD:9 43.85714285714286
(word) mul8u::res#6 res zp ZP_WORD:9 101.0
(word) mul8u::return
(word) mul8u::return#2 return zp ZP_WORD:9 4.0
(word) mul8u::return#3 return zp ZP_WORD:9 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:9 4.0
(word~) mulu8_sel::$1 $1 zp ZP_WORD:9 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:19 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:8 4.0
(byte) print_byte::b#1 b zp ZP_BYTE:8 4.0
(byte) print_byte::b#2 b zp ZP_BYTE:8 4.0
(byte) print_byte::b#7 b zp ZP_BYTE:8 22.0
(byte) print_byte::b#8 b zp ZP_BYTE:8 5.25
(void()) print_char((byte) print_char::ch)
(label) print_char::@return
(byte) print_char::ch
(byte) print_char::ch#4 reg byte a 4.0
(byte) print_char::ch#5 reg byte a 4.0
(byte) print_char::ch#6 reg byte a 6.0
(byte*) print_char_cursor
(byte*) print_char_cursor#1 print_char_cursor zp ZP_WORD:6 101.0
(byte*) print_char_cursor#102 print_char_cursor zp ZP_WORD:6 8.5
(byte*) print_char_cursor#103 print_char_cursor zp ZP_WORD:6 8.999999999999998
(byte*) print_char_cursor#109 print_char_cursor zp ZP_WORD:6 54.0
(byte*~) print_char_cursor#119 print_char_cursor zp ZP_WORD:6 22.0
(byte*) print_char_cursor#19 print_char_cursor zp ZP_WORD:6 3.2340425531914887
(byte*) print_char_cursor#2 print_char_cursor zp ZP_WORD:6 12.321428571428571
(byte*) print_char_cursor#66 print_char_cursor zp ZP_WORD:6 8.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
(byte*) print_line_cursor#1 print_line_cursor zp ZP_WORD:2 8.783783783783784
(byte*) print_line_cursor#12 print_line_cursor zp ZP_WORD:2 204.0
(byte*) print_line_cursor#23 print_line_cursor zp ZP_WORD:2 13.0
(void()) print_ln()
(label) print_ln::@1
(label) print_ln::@return
(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:8 4.0
(signed byte) print_sbyte::b#1 b zp ZP_BYTE:8 2.8333333333333335
(signed byte) print_sbyte::b#4 b zp ZP_BYTE:8 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:4 202.0
(byte*) print_str::str#10 str zp ZP_WORD:4 101.5
(byte*) print_str::str#12 str zp ZP_WORD:4 2.0
(void()) print_sword((signed word) print_sword::w)
(label) print_sword::@1
(label) print_sword::@2
(label) print_sword::@3
(label) print_sword::@4
(label) print_sword::@return
(signed word) print_sword::w
(signed word) print_sword::w#0 w zp ZP_WORD:4 4.0
(signed word) print_sword::w#1 w zp ZP_WORD:4 2.8333333333333335
(signed word) print_sword::w#4 w zp ZP_WORD:4 4.0
(void()) print_word((word) print_word::w)
(label) print_word::@1
(label) print_word::@return
(word) print_word::w
(word) print_word::w#0 w zp ZP_WORD:4 4.0
(word) print_word::w#1 w zp ZP_WORD:4 4.0
(word) print_word::w#2 w zp ZP_WORD:4 22.0
(word) print_word::w#3 w zp ZP_WORD:4 6.333333333333334
(signed byte()) sin8s((word) sin8s::x)
(word~) sin8s::$4 $4 zp ZP_WORD:9 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:8 0.05555555555555555
(signed byte) sin8s::return
(signed byte) sin8s::return#0 reg byte a 5.0
(signed byte) sin8s::return#2 reg byte a 22.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:22 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:9 4.0
(word) sin8s::x#1 x zp ZP_WORD:9 4.0
(word) sin8s::x#2 x zp ZP_WORD:9 8.5
(word) sin8s::x#4 x zp ZP_WORD:9 5.0
(word) sin8s::x#6 x zp ZP_WORD:9 6.0
(byte) sin8s::x1
(byte) sin8s::x1#0 x1 zp ZP_BYTE:20 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:21 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()) sin8u_table((byte*) sin8u_table::sintab , (word) sin8u_table::tabsize , (byte) sin8u_table::min , (byte) sin8u_table::max)
(byte~) sin8u_table::$22 reg byte a 22.0
(label) sin8u_table::@1
(label) sin8u_table::@10
(label) sin8u_table::@11
(label) sin8u_table::@12
(label) sin8u_table::@13
(label) sin8u_table::@14
(label) sin8u_table::@15
(label) sin8u_table::@16
(label) sin8u_table::@17
(label) sin8u_table::@18
(label) sin8u_table::@19
(label) sin8u_table::@2
(label) sin8u_table::@20
(label) sin8u_table::@21
(label) sin8u_table::@22
(label) sin8u_table::@23
(label) sin8u_table::@24
(label) sin8u_table::@3
(label) sin8u_table::@4
(label) sin8u_table::@5
(label) sin8u_table::@6
(label) sin8u_table::@7
(label) sin8u_table::@8
(label) sin8u_table::@9
(label) sin8u_table::@return
(byte) sin8u_table::amplitude
(const byte) sin8u_table::amplitude#0 amplitude = (const byte) sin8u_table::max#0-(const byte) sin8u_table::min#0
(word) sin8u_table::i
(word) sin8u_table::i#1 i zp ZP_WORD:11 16.5
(word) sin8u_table::i#15 i zp ZP_WORD:11 0.7096774193548387
(byte) sin8u_table::max
(const byte) sin8u_table::max#0 max = (byte) $ff
(byte) sin8u_table::mid
(const byte) sin8u_table::mid#0 mid = (byte)(const word) sin8u_table::sum#0/(byte) 2+(byte) 1
(byte) sin8u_table::min
(const byte) sin8u_table::min#0 min = (byte) $a
(byte*) sin8u_table::sintab
(byte*) sin8u_table::sintab#1 sintab zp ZP_WORD:17 1.0
(byte*) sin8u_table::sintab#28 sintab zp ZP_WORD:17 3.0
(signed byte) sin8u_table::sinx
(signed byte) sin8u_table::sinx#0 sinx zp ZP_BYTE:19 2.357142857142857
(signed word) sin8u_table::sinx_sc
(signed word) sin8u_table::sinx_sc#0 sinx_sc zp ZP_WORD:9 2.1999999999999997
(byte) sin8u_table::sinx_tr
(byte) sin8u_table::sinx_tr#0 reg byte x 1.9411764705882355
(word) sin8u_table::step
(word) sin8u_table::step#0 step zp ZP_WORD:15 0.2727272727272727
(const string) sin8u_table::str str = (string) "step:"
(const string) sin8u_table::str1 str1 = (string) " min:"
(const string) sin8u_table::str2 str2 = (string) " max:"
(const string) sin8u_table::str3 str3 = (string) " ampl:"
(const string) sin8u_table::str4 str4 = (string) " mid:"
(const string) sin8u_table::str5 str5 = (string) "x: "
(const string) sin8u_table::str6 str6 = (string) " sin: "
(const string) sin8u_table::str7 str7 = (string) " scaled: "
(const string) sin8u_table::str8 str8 = (string) " trans: "
(word) sin8u_table::sum
(const word) sin8u_table::sum#0 sum = (word)(const byte) sin8u_table::min#0+(const byte) sin8u_table::max#0
(word) sin8u_table::tabsize
(word) sin8u_table::x
(word) sin8u_table::x#1 x zp ZP_WORD:13 7.333333333333333
(word) sin8u_table::x#15 x zp ZP_WORD:13 1.4666666666666666

zp ZP_WORD:2 [ print_line_cursor#12 print_line_cursor#23 print_line_cursor#1 ]
reg byte a [ print_char::ch#6 print_char::ch#4 print_char::ch#5 ]
zp ZP_WORD:4 [ print_sword::w#4 print_sword::w#0 print_sword::w#1 print_word::w#3 print_word::w#0 print_word::w#2 print_word::w#1 print_str::str#10 print_str::str#12 print_str::str#0 ]
reg byte a [ mul8u::b#1 ]
reg byte x [ mul8u::a#3 mul8u::a#6 mul8u::a#1 mul8u::a#2 mul8u::a#0 ]
zp ZP_WORD:6 [ mul8u::mb#2 mul8u::mb#0 mul8u::mb#1 print_char_cursor#109 print_char_cursor#66 print_char_cursor#103 print_char_cursor#19 print_char_cursor#102 print_char_cursor#2 print_char_cursor#119 print_char_cursor#1 ]
zp ZP_BYTE:8 [ sin8s::isUpper#10 print_byte::b#8 print_byte::b#0 print_byte::b#1 print_byte::b#2 print_byte::b#7 print_sbyte::b#4 print_sbyte::b#0 print_sbyte::b#1 ]
zp ZP_WORD:9 [ sin8s::x#6 sin8s::x#4 sin8s::x#2 sin8s::x#0 sin8s::x#1 sin8s::$4 mul8su::m#2 mul8su::m#1 mul8su::m#0 sin8u_table::sinx_sc#0 mul8u::return#2 mul8u::res#2 mul8u::res#6 mul8u::res#1 mul8u::return#3 mulu8_sel::$0 mulu8_sel::$1 ]
reg byte x [ sin8s::usinx#4 sin8s::usinx#1 sin8s::usinx#2 ]
reg byte a [ sin8s::return#0 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_WORD:11 [ divr16u::rem#4 divr16u::rem#9 divr16u::rem#5 divr16u::rem#0 divr16u::rem#1 divr16u::rem#2 sin8u_table::i#15 sin8u_table::i#1 ]
zp ZP_WORD:13 [ divr16u::dividend#2 divr16u::dividend#0 sin8u_table::x#15 sin8u_table::x#1 ]
zp ZP_WORD:15 [ divr16u::quotient#3 divr16u::return#0 divr16u::quotient#1 divr16u::quotient#2 divr16u::return#2 div16u::return#2 sin8u_table::step#0 div16u::return#0 ]
reg byte x [ divr16u::i#2 divr16u::i#1 ]
zp ZP_WORD:17 [ memset::dst#4 memset::dst#1 sin8u_table::sintab#28 sin8u_table::sintab#1 ]
reg byte a [ sin8s::return#2 ]
zp ZP_BYTE:19 [ sin8u_table::sinx#0 mulu8_sel::select#5 ]
reg byte y [ mul8su::a#0 ]
reg byte a [ sin8u_table::$22 ]
reg byte x [ sin8u_table::sinx_tr#0 ]
reg byte a [ print_byte::$0 ]
reg byte a [ print_byte::$2 ]
reg byte a [ mul8su::$7 ]
reg byte a [ mul8su::$10 ]
reg byte a [ mul8u::$1 ]
zp ZP_BYTE:20 [ 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:21 [ sin8s::x3#0 ]
reg byte a [ mulu8_sel::return#2 ]
reg byte a [ sin8s::x3_6#0 ]
zp ZP_BYTE:22 [ 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 [ divr16u::$1 ]
reg byte a [ divr16u::$2 ]
