(label) @1
(label) @begin
(label) @end
(byte*) CHARGEN
(const byte*) CHARGEN#0 CHARGEN = (byte*) 53248
(byte*) CIA1_PORT_A
(const byte*) CIA1_PORT_A#0 CIA1_PORT_A = (byte*) 56320
(byte*) CIA1_PORT_B
(const byte*) CIA1_PORT_B#0 CIA1_PORT_B = (byte*) 56321
(byte) KEY_0
(const byte) KEY_0#0 KEY_0 = (byte) $23
(byte) KEY_1
(const byte) KEY_1#0 KEY_1 = (byte) $38
(byte) KEY_2
(const byte) KEY_2#0 KEY_2 = (byte) $3b
(byte) KEY_3
(const byte) KEY_3#0 KEY_3 = (byte) 8
(byte) KEY_4
(const byte) KEY_4#0 KEY_4 = (byte) $b
(byte) KEY_5
(const byte) KEY_5#0 KEY_5 = (byte) $10
(byte) KEY_6
(const byte) KEY_6#0 KEY_6 = (byte) $13
(byte) KEY_7
(const byte) KEY_7#0 KEY_7 = (byte) $18
(byte) KEY_8
(const byte) KEY_8#0 KEY_8 = (byte) $1b
(byte) KEY_9
(const byte) KEY_9#0 KEY_9 = (byte) $20
(byte) KEY_A
(const byte) KEY_A#0 KEY_A = (byte) $a
(byte) KEY_ARROW_LEFT
(const byte) KEY_ARROW_LEFT#0 KEY_ARROW_LEFT = (byte) $39
(byte) KEY_ARROW_UP
(const byte) KEY_ARROW_UP#0 KEY_ARROW_UP = (byte) $36
(byte) KEY_ASTERISK
(const byte) KEY_ASTERISK#0 KEY_ASTERISK = (byte) $31
(byte) KEY_AT
(const byte) KEY_AT#0 KEY_AT = (byte) $2e
(byte) KEY_B
(const byte) KEY_B#0 KEY_B = (byte) $1c
(byte) KEY_C
(const byte) KEY_C#0 KEY_C = (byte) $14
(byte) KEY_COLON
(const byte) KEY_COLON#0 KEY_COLON = (byte) $2d
(byte) KEY_COMMA
(const byte) KEY_COMMA#0 KEY_COMMA = (byte) $2f
(byte) KEY_D
(const byte) KEY_D#0 KEY_D = (byte) $12
(byte) KEY_DOT
(const byte) KEY_DOT#0 KEY_DOT = (byte) $2c
(byte) KEY_E
(const byte) KEY_E#0 KEY_E = (byte) $e
(byte) KEY_EQUALS
(const byte) KEY_EQUALS#0 KEY_EQUALS = (byte) $35
(byte) KEY_F
(const byte) KEY_F#0 KEY_F = (byte) $15
(byte) KEY_F1
(const byte) KEY_F1#0 KEY_F1 = (byte) 4
(byte) KEY_F3
(const byte) KEY_F3#0 KEY_F3 = (byte) 5
(byte) KEY_F5
(const byte) KEY_F5#0 KEY_F5 = (byte) 6
(byte) KEY_F7
(const byte) KEY_F7#0 KEY_F7 = (byte) 3
(byte) KEY_G
(const byte) KEY_G#0 KEY_G = (byte) $1a
(byte) KEY_H
(const byte) KEY_H#0 KEY_H = (byte) $1d
(byte) KEY_I
(const byte) KEY_I#0 KEY_I = (byte) $21
(byte) KEY_J
(const byte) KEY_J#0 KEY_J = (byte) $22
(byte) KEY_K
(const byte) KEY_K#0 KEY_K = (byte) $25
(byte) KEY_L
(const byte) KEY_L#0 KEY_L = (byte) $2a
(byte) KEY_LSHIFT
(const byte) KEY_LSHIFT#0 KEY_LSHIFT = (byte) $f
(byte) KEY_M
(const byte) KEY_M#0 KEY_M = (byte) $24
(byte) KEY_MINUS
(const byte) KEY_MINUS#0 KEY_MINUS = (byte) $2b
(byte) KEY_N
(const byte) KEY_N#0 KEY_N = (byte) $27
(byte) KEY_O
(const byte) KEY_O#0 KEY_O = (byte) $26
(byte) KEY_P
(const byte) KEY_P#0 KEY_P = (byte) $29
(byte) KEY_PLUS
(const byte) KEY_PLUS#0 KEY_PLUS = (byte) $28
(byte) KEY_POUND
(const byte) KEY_POUND#0 KEY_POUND = (byte) $30
(byte) KEY_Q
(const byte) KEY_Q#0 KEY_Q = (byte) $3e
(byte) KEY_R
(const byte) KEY_R#0 KEY_R = (byte) $11
(byte) KEY_S
(const byte) KEY_S#0 KEY_S = (byte) $d
(byte) KEY_SEMICOLON
(const byte) KEY_SEMICOLON#0 KEY_SEMICOLON = (byte) $32
(byte) KEY_SLASH
(const byte) KEY_SLASH#0 KEY_SLASH = (byte) $37
(byte) KEY_SPACE
(const byte) KEY_SPACE#0 KEY_SPACE = (byte) $3c
(byte) KEY_T
(const byte) KEY_T#0 KEY_T = (byte) $16
(byte) KEY_U
(const byte) KEY_U#0 KEY_U = (byte) $1e
(byte) KEY_V
(const byte) KEY_V#0 KEY_V = (byte) $1f
(byte) KEY_W
(const byte) KEY_W#0 KEY_W = (byte) 9
(byte) KEY_X
(const byte) KEY_X#0 KEY_X = (byte) $17
(byte) KEY_Y
(const byte) KEY_Y#0 KEY_Y = (byte) $19
(byte) KEY_Z
(const byte) KEY_Z#0 KEY_Z = (byte) $c
(byte*) PROCPORT
(const byte*) PROCPORT#0 PROCPORT = (byte*) 1
(byte*) SCREEN
(const byte*) SCREEN#0 SCREEN = (byte*) 1024
(byte[]) keyboard_char_keycodes
(const byte[]) keyboard_char_keycodes#0 keyboard_char_keycodes = { (const byte) KEY_AT#0, (const byte) KEY_A#0, (const byte) KEY_B#0, (const byte) KEY_C#0, (const byte) KEY_D#0, (const byte) KEY_E#0, (const byte) KEY_F#0, (const byte) KEY_G#0, (const byte) KEY_H#0, (const byte) KEY_I#0, (const byte) KEY_J#0, (const byte) KEY_K#0, (const byte) KEY_L#0, (const byte) KEY_M#0, (const byte) KEY_N#0, (const byte) KEY_O#0, (const byte) KEY_P#0, (const byte) KEY_Q#0, (const byte) KEY_R#0, (const byte) KEY_S#0, (const byte) KEY_T#0, (const byte) KEY_U#0, (const byte) KEY_V#0, (const byte) KEY_W#0, (const byte) KEY_X#0, (const byte) KEY_Y#0, (const byte) KEY_Z#0, (byte) $3f, (const byte) KEY_POUND#0, (byte) $3f, (const byte) KEY_ARROW_UP#0, (const byte) KEY_ARROW_LEFT#0, (const byte) KEY_SPACE#0, (byte) $3f, (byte) $3f, (byte) $3f, (byte) $3f, (byte) $3f, (byte) $3f, (byte) $3f, (byte) $3f, (byte) $3f, (const byte) KEY_ASTERISK#0, (const byte) KEY_PLUS#0, (const byte) KEY_COMMA#0, (const byte) KEY_MINUS#0, (const byte) KEY_DOT#0, (const byte) KEY_SLASH#0, (const byte) KEY_0#0, (const byte) KEY_1#0, (const byte) KEY_2#0, (const byte) KEY_3#0, (const byte) KEY_4#0, (const byte) KEY_5#0, (const byte) KEY_6#0, (const byte) KEY_7#0, (const byte) KEY_8#0, (const byte) KEY_9#0, (const byte) KEY_COLON#0, (const byte) KEY_SEMICOLON#0, (byte) $3f, (const byte) KEY_EQUALS#0, (byte) $3f, (byte) $3f }
(byte()) keyboard_get_keycode((byte) keyboard_get_keycode::ch)
(label) keyboard_get_keycode::@return
(byte) keyboard_get_keycode::ch
(byte) keyboard_get_keycode::ch#0 reg byte x 103.0
(byte) keyboard_get_keycode::return
(byte) keyboard_get_keycode::return#0 reg byte a 34.33333333333333
(byte) keyboard_get_keycode::return#2 reg byte a 202.0
(byte()) keyboard_key_pressed((byte) keyboard_key_pressed::key)
(byte~) keyboard_key_pressed::$2 reg byte a 4.0
(label) keyboard_key_pressed::@1
(label) keyboard_key_pressed::@return
(byte) keyboard_key_pressed::colidx
(byte) keyboard_key_pressed::colidx#0 reg byte y 0.6666666666666666
(byte) keyboard_key_pressed::key
(byte) keyboard_key_pressed::key#5 reg byte x 202.0
(byte) keyboard_key_pressed::key#6 reg byte x 52.5
(byte) keyboard_key_pressed::return
(byte) keyboard_key_pressed::return#0 reg byte a 19.75
(byte) keyboard_key_pressed::return#10 reg byte a 22.0
(byte) keyboard_key_pressed::return#11 reg byte a 22.0
(byte) keyboard_key_pressed::return#12 reg byte a 22.0
(byte) keyboard_key_pressed::return#13 reg byte a 22.0
(byte) keyboard_key_pressed::return#14 reg byte a 202.0
(byte) keyboard_key_pressed::return#2 reg byte a 22.0
(byte) keyboard_key_pressed::rowidx
(byte) keyboard_key_pressed::rowidx#0 reg byte a 4.0
(byte[8]) keyboard_matrix_col_bitmask
(const byte[8]) keyboard_matrix_col_bitmask#0 keyboard_matrix_col_bitmask = { (byte) 1, (byte) 2, (byte) 4, (byte) 8, (byte) $10, (byte) $20, (byte) $40, (byte) $80 }
(byte()) keyboard_matrix_read((byte) keyboard_matrix_read::rowid)
(label) keyboard_matrix_read::@return
(byte) keyboard_matrix_read::return
(byte) keyboard_matrix_read::return#0 reg byte a 1.3333333333333333
(byte) keyboard_matrix_read::return#2 reg byte a 4.0
(byte) keyboard_matrix_read::row_pressed_bits
(byte) keyboard_matrix_read::rowid
(byte) keyboard_matrix_read::rowid#0 reg byte x 4.0
(byte[8]) keyboard_matrix_row_bitmask
(const byte[8]) keyboard_matrix_row_bitmask#0 keyboard_matrix_row_bitmask = { (byte) $fe, (byte) $fd, (byte) $fb, (byte) $f7, (byte) $ef, (byte) $df, (byte) $bf, (byte) $7f }
(void()) main()
(byte~) main::$15 reg byte a 22.0
(byte~) main::$18 reg byte a 22.0
(byte~) main::$21 reg byte a 22.0
(byte~) main::$24 reg byte a 22.0
(byte~) main::$27 reg byte a 22.0
(label) main::@1
(label) main::@10
(label) main::@11
(label) main::@12
(label) main::@13
(label) main::@14
(label) main::@15
(label) main::@16
(label) main::@17
(label) main::@18
(label) main::@19
(label) main::@2
(label) main::@20
(label) main::@21
(label) main::@22
(label) main::@23
(label) main::@24
(label) main::@25
(label) main::@26
(label) main::@27
(label) main::@28
(label) main::@29
(label) main::@3
(label) main::@30
(label) main::@31
(label) main::@4
(label) main::@5
(label) main::@6
(label) main::@7
(label) main::@8
(label) main::@9
(byte) main::ch
(byte) main::ch#1 ch zp ZP_BYTE:5 151.5
(byte) main::ch#2 ch zp ZP_BYTE:5 25.25
(byte) main::cur_pos
(byte) main::cur_pos#11 cur_pos zp ZP_BYTE:3 8.52
(byte) main::cur_pos#18 cur_pos zp ZP_BYTE:3 3.6666666666666665
(byte) main::cur_pos#20 cur_pos zp ZP_BYTE:3 3.6666666666666665
(byte) main::cur_pos#22 cur_pos zp ZP_BYTE:3 3.6666666666666665
(byte) main::cur_pos#24 cur_pos zp ZP_BYTE:3 18.666666666666664
(byte) main::i
(byte) main::i#1 i zp ZP_BYTE:2 16.5
(byte) main::i#2 i zp ZP_BYTE:2 11.0
(byte) main::key
(byte) main::key#0 reg byte a 151.5
(byte) main::pressed
(byte) main::pressed#1 reg byte a 202.0
(byte) main::pressed#2 reg byte a 202.0
(byte*) main::sc
(byte*) main::sc#1 sc zp ZP_WORD:6 16.5
(byte*) main::sc#4 sc zp ZP_WORD:6 16.5
(byte) main::shift
(byte) main::shift#9 shift zp ZP_BYTE:4 5.315789473684211
(const string) main::str str = (string) "f1"
(const string) main::str1 str1 = (string) "f3"
(const string) main::str2 str2 = (string) "f5"
(const string) main::str3 str3 = (string) "f7"
(word()) mul8u((byte) mul8u::a , (byte) mul8u::b)
(byte~) mul8u::$1 reg byte a 2002.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 1001.0
(byte) mul8u::a#1 reg byte x 2.0
(byte) mul8u::a#2 reg byte x 667.6666666666667
(byte) mul8u::b
(const byte) mul8u::b#0 b = (byte) $a
(word) mul8u::mb
(word) mul8u::mb#1 mb zp ZP_WORD:12 2002.0
(word) mul8u::mb#2 mb zp ZP_WORD:12 429.0
(word) mul8u::res
(word) mul8u::res#1 res zp ZP_WORD:10 2002.0
(word) mul8u::res#2 res zp ZP_WORD:10 500.83333333333337
(word) mul8u::res#6 res zp ZP_WORD:10 1001.0
(word) mul8u::return
(word) mul8u::return#2 return zp ZP_WORD:10 4.0
(void()) plot_chargen((byte) plot_chargen::pos , (byte) plot_chargen::ch , (byte) plot_chargen::shift)
(word~) plot_chargen::$0 $0 zp ZP_WORD:6 4.0
(word~) plot_chargen::$1 $1 zp ZP_WORD:6 4.0
(byte~) plot_chargen::$10 reg byte a 20002.0
(word~) plot_chargen::$7 $7 zp ZP_WORD:10 4.0
(label) plot_chargen::@1
(label) plot_chargen::@2
(label) plot_chargen::@3
(label) plot_chargen::@4
(label) plot_chargen::@5
(label) plot_chargen::@6
(label) plot_chargen::@7
(label) plot_chargen::@8
(label) plot_chargen::@9
(label) plot_chargen::@return
(byte) plot_chargen::bits
(byte) plot_chargen::bits#0 bits zp ZP_BYTE:9 2002.0
(byte) plot_chargen::bits#1 bits zp ZP_BYTE:9 6667.333333333333
(byte) plot_chargen::bits#2 bits zp ZP_BYTE:9 4429.142857142857
(byte) plot_chargen::c
(byte) plot_chargen::c#2 reg byte a 10001.0
(byte) plot_chargen::ch
(byte) plot_chargen::ch#1 reg byte a 101.0
(byte) plot_chargen::ch#2 reg byte a 50.5
(byte*) plot_chargen::chargen
(byte*) plot_chargen::chargen#0 chargen zp ZP_WORD:6 3.0
(byte*) plot_chargen::chargen#1 chargen zp ZP_WORD:6 4.0
(byte*) plot_chargen::chargen#5 chargen zp ZP_WORD:6 45.68181818181818
(byte) plot_chargen::pos
(byte) plot_chargen::pos#0 reg byte y 22.0
(byte) plot_chargen::pos#1 reg byte y 67.33333333333333
(byte) plot_chargen::pos#2 reg byte y 12.666666666666664
(byte*) plot_chargen::sc
(byte*) plot_chargen::sc#0 sc zp ZP_WORD:10 4.0
(byte*) plot_chargen::sc#1 sc zp ZP_WORD:10 5250.75
(byte*) plot_chargen::sc#2 sc zp ZP_WORD:10 667.3333333333334
(byte*) plot_chargen::sc#3 sc zp ZP_WORD:10 5167.333333333333
(byte*) plot_chargen::sc#7 sc zp ZP_WORD:10 1002.0
(byte) plot_chargen::shift
(byte) plot_chargen::shift#1 reg byte x 202.0
(byte) plot_chargen::shift#2 reg byte x 20.599999999999998
(byte) plot_chargen::x
(byte) plot_chargen::x#1 reg byte x 15001.5
(byte) plot_chargen::x#2 reg byte x 2500.25
(byte) plot_chargen::y
(byte) plot_chargen::y#1 y zp ZP_BYTE:8 1501.5
(byte) plot_chargen::y#2 y zp ZP_BYTE:8 231.0
(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#4 at zp ZP_WORD:12 11.0
(byte*) print_str_at::at#5 at zp ZP_WORD:12 11.666666666666666
(byte*) print_str_at::at#7 at zp ZP_WORD:12 2.0
(byte*) print_str_at::str
(byte*) print_str_at::str#4 str zp ZP_WORD:10 22.0
(byte*) print_str_at::str#5 str zp ZP_WORD:10 11.5
(byte*) print_str_at::str#7 str zp ZP_WORD:10 2.0

zp ZP_BYTE:2 [ main::i#2 main::i#1 ]
zp ZP_BYTE:3 [ main::cur_pos#18 main::cur_pos#20 main::cur_pos#22 main::cur_pos#24 main::cur_pos#11 ]
zp ZP_BYTE:4 [ main::shift#9 ]
zp ZP_BYTE:5 [ main::ch#2 main::ch#1 ]
reg byte a [ main::pressed#2 main::pressed#1 ]
reg byte a [ plot_chargen::ch#2 plot_chargen::ch#1 ]
reg byte x [ plot_chargen::shift#2 plot_chargen::shift#1 ]
reg byte y [ plot_chargen::pos#2 plot_chargen::pos#1 plot_chargen::pos#0 ]
zp ZP_WORD:6 [ plot_chargen::chargen#5 plot_chargen::chargen#0 plot_chargen::chargen#1 plot_chargen::$1 plot_chargen::$0 main::sc#4 main::sc#1 ]
zp ZP_BYTE:8 [ plot_chargen::y#2 plot_chargen::y#1 ]
zp ZP_BYTE:9 [ plot_chargen::bits#2 plot_chargen::bits#0 plot_chargen::bits#1 ]
reg byte x [ plot_chargen::x#2 plot_chargen::x#1 ]
reg byte a [ plot_chargen::c#2 ]
reg byte x [ mul8u::a#2 mul8u::a#1 mul8u::a#0 ]
reg byte x [ keyboard_key_pressed::key#6 keyboard_key_pressed::key#5 ]
zp ZP_WORD:10 [ print_str_at::str#5 print_str_at::str#7 print_str_at::str#4 plot_chargen::sc#3 plot_chargen::sc#7 plot_chargen::sc#2 plot_chargen::sc#0 plot_chargen::sc#1 plot_chargen::$7 mul8u::res#2 mul8u::res#6 mul8u::res#1 mul8u::return#2 ]
zp ZP_WORD:12 [ print_str_at::at#5 print_str_at::at#7 print_str_at::at#4 mul8u::mb#2 mul8u::mb#1 ]
reg byte a [ keyboard_key_pressed::return#2 ]
reg byte a [ main::$15 ]
reg byte a [ keyboard_key_pressed::return#10 ]
reg byte a [ main::$18 ]
reg byte a [ keyboard_key_pressed::return#11 ]
reg byte a [ main::$21 ]
reg byte a [ keyboard_key_pressed::return#12 ]
reg byte a [ main::$24 ]
reg byte a [ keyboard_key_pressed::return#13 ]
reg byte a [ main::$27 ]
reg byte x [ keyboard_get_keycode::ch#0 ]
reg byte a [ keyboard_get_keycode::return#2 ]
reg byte a [ main::key#0 ]
reg byte a [ keyboard_key_pressed::return#14 ]
reg byte a [ plot_chargen::$10 ]
reg byte a [ mul8u::$1 ]
reg byte y [ keyboard_key_pressed::colidx#0 ]
reg byte a [ keyboard_key_pressed::rowidx#0 ]
reg byte x [ keyboard_matrix_read::rowid#0 ]
reg byte a [ keyboard_matrix_read::return#2 ]
reg byte a [ keyboard_key_pressed::$2 ]
reg byte a [ keyboard_key_pressed::return#0 ]
reg byte a [ keyboard_matrix_read::return#0 ]
reg byte a [ keyboard_get_keycode::return#0 ]
