(label) @1
(label) @begin
(label) @end
(word*) SCREEN
(const word*) SCREEN#0 SCREEN = (word*) 1024
(void()) main()
(label) main::@1
(label) main::@return
(byte[]) msg1
(const byte[]) msg1#0 msg1 = { (byte) 'a', (byte) 'b', (byte) 'c', (byte) 'd' }
(byte[]) msg2
(const byte[]) msg2#0 msg2 = { (byte) '1', (byte) '2', (byte) '3', (byte) '4' }
(void()) print((byte*) print::m)
(byte~) print::$2 reg byte a 4.0
(label) print::@return
(byte*) print::m
(byte*) print::m#2 m zp ZP_WORD:2
(byte) screen_idx
(byte) screen_idx#10 screen_idx zp ZP_BYTE:4 2.0
(byte) screen_idx#11 screen_idx zp ZP_BYTE:4 1.0

zp ZP_WORD:2 [ print::m#2 ]
zp ZP_BYTE:4 [ screen_idx#10 screen_idx#11 ]
reg byte a [ print::$2 ]
