(label) @1
(label) @begin
(label) @end
(byte*) CIA1_PORT_A
(const byte*) CIA1_PORT_A#0 CIA1_PORT_A = (byte*) 56320
(byte*) CIA1_PORT_A_DDR
(const byte*) CIA1_PORT_A_DDR#0 CIA1_PORT_A_DDR = (byte*) 56322
(byte*) CIA1_PORT_B
(const byte*) CIA1_PORT_B#0 CIA1_PORT_B = (byte*) 56321
(byte*) CIA1_PORT_B_DDR
(const byte*) CIA1_PORT_B_DDR#0 CIA1_PORT_B_DDR = (byte*) 56323
(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_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_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*) RASTER
(const byte*) RASTER#0 RASTER = (byte*) 53266
(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 y 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
(void()) keyboard_init()
(label) keyboard_init::@return
(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 colidx zp ZP_BYTE:7 0.6666666666666666
(byte) keyboard_key_pressed::key
(byte) keyboard_key_pressed::key#0 reg byte y 52.5
(byte) keyboard_key_pressed::return
(byte) keyboard_key_pressed::return#0 reg byte a 34.33333333333333
(byte) keyboard_key_pressed::return#2 reg byte a 202.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 26.25
(byte) keyboard_matrix_read::return#2 reg byte a 4.0
(byte) keyboard_matrix_read::return#3 reg byte a 202.0
(byte) keyboard_matrix_read::row_pressed_bits
(byte) keyboard_matrix_read::rowid
(byte) keyboard_matrix_read::rowid#0 reg byte y 4.0
(byte) keyboard_matrix_read::rowid#1 reg byte y 202.0
(byte) keyboard_matrix_read::rowid#2 reg byte y 105.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::$14 reg byte a 202.0
(byte~) main::$4 reg byte a 2002.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::@3
(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:6 151.5
(byte) main::ch#2 ch zp ZP_BYTE:6 28.857142857142858
(byte) main::col
(byte) main::col#1 reg byte y 1501.5
(byte) main::col#2 reg byte y 667.3333333333334
(byte) main::i
(byte) main::i#1 reg byte x 202.0
(byte) main::i#2 reg byte x 151.5
(byte) main::i#3 reg byte x 42.08333333333333
(byte) main::i#4 reg byte x 202.0
(byte) main::i#6 reg byte x 168.33333333333331
(byte) main::key
(byte) main::key#0 reg byte a 151.5
(byte) main::row
(byte) main::row#1 row zp ZP_BYTE:7 151.5
(byte) main::row#2 row zp ZP_BYTE:7 21.642857142857142
(byte) main::row_pressed_bits
(byte) main::row_pressed_bits#0 reg byte x 202.0
(byte) main::row_pressed_bits#1 reg byte x 667.3333333333334
(byte) main::row_pressed_bits#2 reg byte x 620.8
(byte*) main::sc
(byte*) main::sc#1 sc zp ZP_WORD:2 16.5
(byte*) main::sc#4 sc zp ZP_WORD:2 16.5
(byte*) main::screen
(byte*) main::screen#1 screen zp ZP_WORD:4 71.0
(byte*) main::screen#13 screen zp ZP_WORD:4 169.53846153846155
(byte*) main::screen#2 screen zp ZP_WORD:4 10.142857142857142

zp ZP_WORD:2 [ main::sc#4 main::sc#1 ]
zp ZP_WORD:4 [ main::screen#13 main::screen#1 main::screen#2 ]
reg byte x [ main::row_pressed_bits#2 main::row_pressed_bits#1 main::row_pressed_bits#0 ]
reg byte y [ main::col#2 main::col#1 ]
zp ZP_BYTE:6 [ main::ch#2 main::ch#1 ]
reg byte x [ main::i#4 main::i#3 main::i#6 main::i#1 main::i#2 ]
reg byte y [ keyboard_matrix_read::rowid#2 keyboard_matrix_read::rowid#0 keyboard_matrix_read::rowid#1 ]
reg byte a [ keyboard_matrix_read::return#3 ]
reg byte a [ main::$4 ]
reg byte y [ keyboard_get_keycode::ch#0 ]
reg byte a [ keyboard_get_keycode::return#2 ]
reg byte a [ main::key#0 ]
reg byte y [ keyboard_key_pressed::key#0 ]
reg byte a [ keyboard_key_pressed::return#2 ]
reg byte a [ main::$14 ]
zp ZP_BYTE:7 [ keyboard_key_pressed::colidx#0 main::row#2 main::row#1 ]
reg byte a [ keyboard_key_pressed::rowidx#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 ]
