	org 32752
__START_PROGRAM:
	di
	push ix
	push iy
	exx
	push hl
	exx
	ld hl, 0
	add hl, sp
	ld (__CALL_BACK__), hl
	ei
#line 0
		defw $aa55,0,$7000,0,0,startboot
		defw 0,0,0,0,0,0,0,0,0,0,0
		push af
		in a, ($bf)
		pop af
		ei
		reti
startboot:
#line 8
	jp __LABEL__charset01end
__LABEL__charset01:
#line 2
		defb 0,0,0,0,0,0,0,0
		defb 0,0,0,0,0,0,0,0
		defb 0,0,0,0,0,0,0,0
		defb 0,0,0,0,0,0,0,0
		defb 0,0,0,0,0,0,0,0
		defb 0,0,0,0,0,0,0,0
		defb 0,0,0,0,0,0,0,0
		defb 0,0,0,0,0,0,0,0
		defb 0,0,0,0,0,0,0,0
		defb 0,0,0,0,0,0,0,0
		defb 0,0,0,0,0,0,0,0
		defb 0,0,0,0,0,0,0,0
		defb 0,0,0,0,0,0,0,0
		defb 0,0,0,0,0,0,0,0
		defb 0,0,0,0,0,0,0,0
		defb 0,0,0,0,0,0,0,0
		defb 0,0,0,0,0,0,0,0
		defb 0,0,0,0,0,0,0,0
		defb 0,0,0,0,0,0,0,0
		defb 0,0,0,0,0,0,0,0
		defb 0,0,0,0,0,0,0,0
		defb 0,0,0,0,0,0,0,0
		defb 0,0,0,0,0,0,0,0
		defb 0,0,0,0,0,0,0,0
		defb 0,0,0,0,0,0,0,0
		defb 0,0,0,0,0,0,0,0
		defb 0,0,0,0,0,0,0,0
		defb 0,0,0,0,0,0,0,0
		defb 0,0,0,0,0,0,0,0
		defb 0,0,0,0,0,0,0,0
		defb 0,0,0,0,0,0,0,0
		defb 0,0,0,0,0,0,0,0
		defb %00000000
		defb %00000000
		defb %00000000
		defb %00000000
		defb %00000000
		defb %00000000
		defb %00000000
		defb %00000000
		defb %00000000
		defb %00111000
		defb %00111000
		defb %00111000
		defb %00111000
		defb %00111000
		defb %00111000
		defb %00010000
		defb %01101100
		defb %01101100
		defb %00100100
		defb %00100100
		defb %01001000
		defb %00000000
		defb %00000000
		defb %00000000
		defb %00000000
		defb %00010010
		defb %00010010
		defb %00010010
		defb %01111111
		defb %00100100
		defb %00100100
		defb %00100100
		defb %00010000
		defb %00111000
		defb %01010100
		defb %10010010
		defb %10010110
		defb %10010000
		defb %01010000
		defb %00111000
		defb %00000010
		defb %01100010
		defb %10010100
		defb %10010100
		defb %10010100
		defb %10011000
		defb %01101000
		defb %00010000
		defb %00000000
		defb %00110000
		defb %01001000
		defb %01001000
		defb %01001000
		defb %01010000
		defb %00100000
		defb %00101110
		defb %11100000
		defb %11100000
		defb %00100000
		defb %00100000
		defb %11000000
		defb %00000000
		defb %00000000
		defb %00000000
		defb %00000010
		defb %00000100
		defb %00001000
		defb %00001000
		defb %00010000
		defb %00010000
		defb %00010000
		defb %00010000
		defb %10000000
		defb %01000000
		defb %00100000
		defb %00100000
		defb %00010000
		defb %00010000
		defb %00010000
		defb %00010000
		defb %00000000
		defb %00000000
		defb %00000000
		defb %00010000
		defb %00111000
		defb %10010010
		defb %11010110
		defb %00111000
		defb %00000000
		defb %00000000
		defb %00000000
		defb %00010000
		defb %00010000
		defb %00010000
		defb %00010000
		defb %11111110
		defb %00000000
		defb %00000000
		defb %00000000
		defb %00000000
		defb %00000000
		defb %00000000
		defb %00000000
		defb %00000000
		defb %00000000
		defb %00000000
		defb %00000000
		defb %00000000
		defb %00000000
		defb %00000000
		defb %00000000
		defb %11111110
		defb %00000000
		defb %00000000
		defb %00000000
		defb %00000000
		defb %00000000
		defb %00000000
		defb %00000000
		defb %00000000
		defb %00000010
		defb %00000010
		defb %00000100
		defb %00000100
		defb %00001000
		defb %00001000
		defb %00001000
		defb %00010000
		defb %00000000
		defb %00011000
		defb %00100100
		defb %00100100
		defb %01000010
		defb %01000010
		defb %01000010
		defb %01000010
		defb %00000000
		defb %00010000
		defb %01110000
		defb %00010000
		defb %00010000
		defb %00010000
		defb %00010000
		defb %00010000
		defb %00000000
		defb %00011000
		defb %00100100
		defb %01000010
		defb %01100010
		defb %00000010
		defb %00000100
		defb %00001000
		defb %00000000
		defb %00111000
		defb %01000100
		defb %10000010
		defb %10000010
		defb %00000010
		defb %00000100
		defb %00111000
		defb %00000000
		defb %00001000
		defb %00011000
		defb %00101000
		defb %00101000
		defb %01001000
		defb %01001000
		defb %10001000
		defb %00000000
		defb %11111100
		defb %10000000
		defb %10000000
		defb %10000000
		defb %10111000
		defb %11000100
		defb %10000010
		defb %00000000
		defb %00111100
		defb %01000010
		defb %01000110
		defb %10000000
		defb %10000000
		defb %10111000
		defb %11000100
		defb %00000000
		defb %11111110
		defb %10000010
		defb %10000010
		defb %00000100
		defb %00000100
		defb %00000100
		defb %00001000
		defb %00000000
		defb %00111000
		defb %01000100
		defb %10000010
		defb %10000010
		defb %10000010
		defb %01000100
		defb %00111000
		defb %00000000
		defb %00111000
		defb %01000100
		defb %10000010
		defb %10000010
		defb %10000010
		defb %10000010
		defb %01000110
		defb %00000000
		defb %00000000
		defb %00000000
		defb %00000000
		defb %00000000
		defb %00111000
		defb %00111000
		defb %00000000
		defb %00000000
		defb %00000000
		defb %00000000
		defb %00000000
		defb %00000000
		defb %00111000
		defb %00111000
		defb %00000000
		defb %00000010
		defb %00000100
		defb %00000100
		defb %00001000
		defb %00001000
		defb %00010000
		defb %00010000
		defb %00100000
		defb %00000000
		defb %00000000
		defb %00000000
		defb %00000000
		defb %00000000
		defb %11111110
		defb %00000000
		defb %00000000
		defb %10000000
		defb %01000000
		defb %01000000
		defb %00100000
		defb %00100000
		defb %00010000
		defb %00010000
		defb %00001000
		defb %00000000
		defb %00111000
		defb %01000100
		defb %10000010
		defb %11000010
		defb %00000010
		defb %00000100
		defb %00000100
		defb %00000000
		defb %00111100
		defb %01000010
		defb %10000010
		defb %10011010
		defb %10100110
		defb %10100010
		defb %10100010
		defb %00000000
		defb %00010000
		defb %00101000
		defb %00101000
		defb %00101000
		defb %01000100
		defb %01000100
		defb %01000100
		defb %00000000
		defb %11111000
		defb %01000100
		defb %01000010
		defb %01000010
		defb %01000010
		defb %01000100
		defb %01111000
		defb %00000000
		defb %00111010
		defb %01000110
		defb %01000010
		defb %10000000
		defb %10000000
		defb %10000000
		defb %10000000
		defb %00000000
		defb %11111000
		defb %01000100
		defb %01000100
		defb %01000010
		defb %01000010
		defb %01000010
		defb %01000010
		defb %00000000
		defb %11111110
		defb %01000010
		defb %01000010
		defb %01000000
		defb %01001000
		defb %01001000
		defb %01111000
		defb %00000000
		defb %11111110
		defb %01000010
		defb %01000010
		defb %01000000
		defb %01001000
		defb %01001000
		defb %01111000
		defb %00000000
		defb %00011010
		defb %00100110
		defb %01000010
		defb %01000000
		defb %10000000
		defb %10000000
		defb %10001111
		defb %00000000
		defb %11100111
		defb %01000010
		defb %01000010
		defb %01000010
		defb %01000010
		defb %01111110
		defb %01000010
		defb %00000000
		defb %11111110
		defb %00010000
		defb %00010000
		defb %00010000
		defb %00010000
		defb %00010000
		defb %00010000
		defb %00000000
		defb %00011111
		defb %00000010
		defb %00000010
		defb %00000010
		defb %00000010
		defb %00000010
		defb %00000010
		defb %00000000
		defb %11100110
		defb %01000100
		defb %01000100
		defb %01001000
		defb %01001000
		defb %01110000
		defb %01010000
		defb %00000000
		defb %11110000
		defb %01000000
		defb %01000000
		defb %01000000
		defb %01000000
		defb %01000000
		defb %01000000
		defb %00000000
		defb %10000010
		defb %11000110
		defb %10101010
		defb %10101010
		defb %10101010
		defb %10010010
		defb %10010010
		defb %00000000
		defb %10000111
		defb %11000010
		defb %10100010
		defb %10100010
		defb %10100010
		defb %10010010
		defb %10010010
		defb %00000000
		defb %00111000
		defb %01000100
		defb %10000010
		defb %10000010
		defb %10000010
		defb %10000010
		defb %10000010
		defb %00000000
		defb %11111000
		defb %01000100
		defb %01000010
		defb %01000010
		defb %01000010
		defb %01000010
		defb %01000100
		defb %00000000
		defb %00111000
		defb %01000100
		defb %01000100
		defb %10000010
		defb %10000010
		defb %10000010
		defb %10000010
		defb %00000000
		defb %11111000
		defb %01000100
		defb %01000010
		defb %01000010
		defb %01000010
		defb %01000100
		defb %01111000
		defb %00000000
		defb %00110100
		defb %01001100
		defb %10000100
		defb %10000000
		defb %10000000
		defb %01100000
		defb %00011000
		defb %00000000
		defb %11111110
		defb %10010010
		defb %10010010
		defb %00010000
		defb %00010000
		defb %00010000
		defb %00010000
		defb %00000000
		defb %11100111
		defb %01000010
		defb %01000010
		defb %01000010
		defb %01000010
		defb %01000010
		defb %01000010
		defb %00000000
		defb %11000110
		defb %10000010
		defb %10000010
		defb %10000010
		defb %10000010
		defb %01000100
		defb %01000100
		defb %00000000
		defb %11000110
		defb %10000010
		defb %10000010
		defb %10000010
		defb %10010010
		defb %10010010
		defb %10010010
		defb %00000000
		defb %11101110
		defb %01000100
		defb %01000100
		defb %00101000
		defb %00101000
		defb %00010000
		defb %00101000
		defb %00000000
		defb %11000110
		defb %10000010
		defb %01000100
		defb %01000100
		defb %01000100
		defb %00101000
		defb %00101000
		defb %00000000
		defb %11111110
		defb %10000100
		defb %10001000
		defb %00001000
		defb %00010000
		defb %00010000
		defb %00010000
		defb %00011110
		defb %00010000
		defb %00010000
		defb %00010000
		defb %00010000
		defb %00010000
		defb %00010000
		defb %00010000
		defb %00000000
		defb %10000000
		defb %10000000
		defb %01000000
		defb %01000000
		defb %00100000
		defb %00100000
		defb %00010000
		defb %11110000
		defb %00010000
		defb %00010000
		defb %00010000
		defb %00010000
		defb %00010000
		defb %00010000
		defb %00010000
		defb %00010000
		defb %00101000
		defb %01000100
		defb %10000010
		defb %00000000
		defb %00000000
		defb %00000000
		defb %00000000
		defb %00000000
		defb %00000000
		defb %00000000
		defb %00000000
		defb %00000000
		defb %00000000
		defb %00000000
		defb %00000000
		defb %00110000
		defb %00110000
		defb %00100000
		defb %00100000
		defb %00010000
		defb %00000000
		defb %00000000
		defb %00000000
		defb %00000000
		defb %00000000
		defb %00000000
		defb %00000000
		defb %00000000
		defb %00111100
		defb %01000010
		defb %00000010
		defb %00000000
		defb %11000000
		defb %01000000
		defb %01000000
		defb %01000000
		defb %01111000
		defb %01000100
		defb %01000010
		defb %00000000
		defb %00000000
		defb %00000000
		defb %00000000
		defb %00000000
		defb %00111010
		defb %01000110
		defb %10000010
		defb %00000000
		defb %00000110
		defb %00000100
		defb %00000100
		defb %00000100
		defb %00111100
		defb %01000100
		defb %10000100
		defb %00000000
		defb %00000000
		defb %00000000
		defb %00000000
		defb %00000000
		defb %00111000
		defb %01000100
		defb %10000010
		defb %00000000
		defb %00001110
		defb %00010001
		defb %00010000
		defb %00010000
		defb %11111110
		defb %00010000
		defb %00010000
		defb %00000000
		defb %00000000
		defb %00000000
		defb %00000000
		defb %00000000
		defb %00111011
		defb %01000100
		defb %01000100
		defb %00000000
		defb %11000000
		defb %01000000
		defb %01000000
		defb %01000000
		defb %01011100
		defb %01100010
		defb %01000010
		defb %00011000
		defb %00011000
		defb %00000000
		defb %00000000
		defb %00000000
		defb %01111000
		defb %00001000
		defb %00001000
		defb %00000110
		defb %00000110
		defb %00000000
		defb %00000000
		defb %00000000
		defb %00111110
		defb %00000010
		defb %00000010
		defb %00000000
		defb %11000000
		defb %01000000
		defb %01000000
		defb %01000000
		defb %01000010
		defb %01000100
		defb %01001000
		defb %00000000
		defb %01111000
		defb %00001000
		defb %00001000
		defb %00001000
		defb %00001000
		defb %00001000
		defb %00001000
		defb %00000000
		defb %00000000
		defb %00000000
		defb %00000000
		defb %00000000
		defb %01101100
		defb %10010010
		defb %10010010
		defb %00000000
		defb %00000000
		defb %00000000
		defb %00000000
		defb %00000000
		defb %11011100
		defb %01100010
		defb %01000010
		defb %00000000
		defb %00000000
		defb %00000000
		defb %00000000
		defb %00000000
		defb %00111000
		defb %01000100
		defb %10000010
		defb %00000000
		defb %00000000
		defb %00000000
		defb %00000000
		defb %00000000
		defb %11111000
		defb %01000100
		defb %01000010
		defb %00000000
		defb %00000000
		defb %00000000
		defb %00000000
		defb %00000000
		defb %00111110
		defb %01000100
		defb %10000100
		defb %00000000
		defb %00000000
		defb %00000000
		defb %00000000
		defb %00000000
		defb %11101100
		defb %00110010
		defb %00100010
		defb %00000000
		defb %00000000
		defb %00000000
		defb %00000000
		defb %00000000
		defb %00111010
		defb %01000110
		defb %01000010
		defb %00000000
		defb %00000000
		defb %00100000
		defb %00100000
		defb %00100000
		defb %11111100
		defb %00100000
		defb %00100000
		defb %00000000
		defb %00000000
		defb %00000000
		defb %00000000
		defb %00000000
		defb %11000110
		defb %01000010
		defb %01000010
		defb %00000000
		defb %00000000
		defb %00000000
		defb %00000000
		defb %00000000
		defb %11000110
		defb %10000010
		defb %10000010
		defb %00000000
		defb %00000000
		defb %00000000
		defb %00000000
		defb %00000000
		defb %10010010
		defb %10010010
		defb %10010010
		defb %00000000
		defb %00000000
		defb %00000000
		defb %00000000
		defb %00000000
		defb %11101110
		defb %01000100
		defb %00101000
		defb %00000000
		defb %00000000
		defb %00000000
		defb %00000000
		defb %00000000
		defb %11100111
		defb %01000010
		defb %00100010
		defb %00000000
		defb %00000000
		defb %00000000
		defb %00000000
		defb %00000000
		defb %01111110
		defb %01000100
		defb %00001000
		defb %00000110
		defb %00001000
		defb %00001000
		defb %00001000
		defb %00001000
		defb %00001000
		defb %00010000
		defb %00100000
		defb %00010000
		defb %00010000
		defb %00010000
		defb %00010000
		defb %00010000
		defb %00010000
		defb %00010000
		defb %00010000
		defb %11000000
		defb %00100000
		defb %00100000
		defb %00100000
		defb %00100000
		defb %00100000
		defb %00010000
		defb %00001000
		defb %01100000
		defb %10010010
		defb %00001100
		defb %00000000
		defb %00000000
		defb %00000000
		defb %00000000
		defb %00000000
		defb %10101010
		defb %01010101
		defb %10101010
		defb %01010101
		defb %10101010
		defb %01010101
		defb %10101010
		defb %01010101
#line 802
__LABEL__sprites01:
#line 897
		defb %00000010
		defb %00000011
		defb %00000010
		defb %00000011
		defb %10011101
		defb %11011111
		defb %01111111
		defb %00111111
		defb %00111110
		defb %00011110
		defb %00110100
		defb %00100100
		defb %00010100
		defb %00010100
		defb %00110010
		defb %00100011
		defb %00000010
		defb %00000011
		defb %00000010
		defb %00000010
		defb %10001101
		defb %11011111
		defb %01111111
		defb %00111111
		defb %00111110
		defb %00011110
		defb %00101000
		defb %00011000
		defb %00011000
		defb %00011000
		defb %00010100
		defb %00000110
		defb %00000010
		defb %00000011
		defb %00000010
		defb %00000001
		defb %00000101
		defb %10011111
		defb %11111111
		defb %01111111
		defb %00111111
		defb %00011110
		defb %00011000
		defb %00011000
		defb %00001000
		defb %00001100
		defb %00001100
		defb %00001000
		defb %00000010
		defb %00000011
		defb %00000010
		defb %00000001
		defb %00000101
		defb %00011111
		defb %11111111
		defb %01111111
		defb %00111111
		defb %00011110
		defb %00001000
		defb %00011000
		defb %00010100
		defb %00010010
		defb %00010010
		defb %00011000
		defb %01000000
		defb %11000000
		defb %01000000
		defb %11000000
		defb %10111001
		defb %11111011
		defb %11111110
		defb %11111100
		defb %01111100
		defb %01111000
		defb %00101100
		defb %00100100
		defb %00101000
		defb %00101000
		defb %01001100
		defb %11000100
		defb %01000000
		defb %11000000
		defb %01000000
		defb %01000000
		defb %10110001
		defb %11111011
		defb %11111110
		defb %11111100
		defb %01111100
		defb %01111000
		defb %00010100
		defb %00011000
		defb %00011000
		defb %00011000
		defb %00101000
		defb %01100000
		defb %01000000
		defb %11000000
		defb %01000000
		defb %10000000
		defb %10100000
		defb %11111001
		defb %11111111
		defb %11111110
		defb %11111100
		defb %01111000
		defb %00011000
		defb %00011000
		defb %00010000
		defb %00110000
		defb %00110000
		defb %00010000
		defb %01000000
		defb %11000000
		defb %01000000
		defb %10000000
		defb %10100000
		defb %11111000
		defb %11111111
		defb %11111110
		defb %11111100
		defb %01111000
		defb %00010000
		defb %00011000
		defb %00101000
		defb %01001000
		defb %01001000
		defb %00011000
		defb %00111000
		defb %00010000
		defb %00110000
		defb %00110000
		defb %00111000
		defb %00111100
		defb %00111100
		defb %00111110
		defb %00101101
		defb %01111001
		defb %01011101
		defb %01001101
		defb %01000001
		defb %11100001
		defb %11100010
		defb %11011100
		defb %00111000
		defb %00010000
		defb %00110000
		defb %00110000
		defb %00111000
		defb %00111100
		defb %00111100
		defb %00111010
		defb %00111001
		defb %01111001
		defb %01001001
		defb %01001101
		defb %01000101
		defb %11100001
		defb %11100010
		defb %11011100
		defb %00111000
		defb %00010000
		defb %00110000
		defb %00110000
		defb %00111000
		defb %00111100
		defb %00111100
		defb %00111010
		defb %00101001
		defb %01111001
		defb %01001001
		defb %01011001
		defb %01001001
		defb %11100001
		defb %11100010
		defb %11011100
		defb %00111000
		defb %00010000
		defb %00110000
		defb %00110000
		defb %00111000
		defb %00111100
		defb %00111100
		defb %00111110
		defb %00101001
		defb %01111001
		defb %01011101
		defb %01011001
		defb %01001001
		defb %11100001
		defb %11100010
		defb %11011100
		defb %00011100
		defb %00001000
		defb %00001100
		defb %00001100
		defb %00011100
		defb %00111100
		defb %00111100
		defb %01111100
		defb %10110100
		defb %10011110
		defb %10111010
		defb %10110010
		defb %10000010
		defb %10000111
		defb %01000111
		defb %00111011
		defb %00011100
		defb %00001000
		defb %00001100
		defb %00001100
		defb %00011100
		defb %00111100
		defb %00111100
		defb %01011100
		defb %10011100
		defb %10011110
		defb %10010010
		defb %10110010
		defb %10100010
		defb %10000111
		defb %01000111
		defb %00111011
		defb %00011100
		defb %00001000
		defb %00001100
		defb %00001100
		defb %00011100
		defb %00111100
		defb %00111100
		defb %01011100
		defb %10010100
		defb %10011110
		defb %10010010
		defb %10011010
		defb %10010010
		defb %10000111
		defb %01000111
		defb %00111011
		defb %00011100
		defb %00001000
		defb %00001100
		defb %00001100
		defb %00011100
		defb %00111100
		defb %00111100
		defb %01111100
		defb %10010100
		defb %10011110
		defb %10111010
		defb %10011010
		defb %10010010
		defb %10000111
		defb %01000111
		defb %00111011
		defb %00000000
		defb %00000000
		defb %00000000
		defb %00000000
		defb %00000000
		defb %00000000
		defb %00000000
		defb %00000000
		defb %00010000
		defb %00010000
		defb %00010000
		defb %00000000
		defb %00000000
		defb %00010000
		defb %00111000
		defb %00010000
		defb %00000000
		defb %00000000
		defb %00000000
		defb %00000000
		defb %00000000
		defb %00000000
		defb %00000000
		defb %00000000
		defb %00100100
		defb %00100100
		defb %11111110
		defb %01001000
		defb %01001000
		defb %01001000
		defb %01001000
		defb %00000000
		defb %00010100
		defb %00010010
		defb %11010010
		defb %10010010
		defb %10010100
		defb %01111000
		defb %00010000
		defb %00010000
		defb %00010000
		defb %00101100
		defb %00110010
		defb %01010010
		defb %01010010
		defb %01010010
		defb %10001100
		defb %10000000
		defb %01010100
		defb %01010100
		defb %10010100
		defb %10001000
		defb %10001100
		defb %01110010
		defb %00000000
		defb %00000000
		defb %00000000
		defb %00000000
		defb %00000000
		defb %00000000
		defb %00000000
		defb %00000000
		defb %00000000
		defb %00000000
		defb %00010000
		defb %00010000
		defb %00010000
		defb %00010000
		defb %00001000
		defb %00001000
		defb %00000100
		defb %00000010
		defb %00010000
		defb %00010000
		defb %00010000
		defb %00010000
		defb %00100000
		defb %00100000
		defb %01000000
		defb %10000000
		defb %11010110
		defb %10010010
		defb %00111000
		defb %00010000
		defb %00000000
		defb %00000000
		defb %00000000
		defb %00000000
		defb %00010000
		defb %00010000
		defb %00010000
		defb %00010000
		defb %00000000
		defb %00000000
		defb %00000000
		defb %00000000
		defb %00000000
		defb %00000000
		defb %00000000
		defb %11100000
		defb %11100000
		defb %00100000
		defb %00100000
		defb %11000000
		defb %00000000
		defb %00000000
		defb %00000000
		defb %00000000
		defb %00000000
		defb %00000000
		defb %00000000
		defb %00000000
		defb %00000000
		defb %00000000
		defb %00000000
		defb %01000000
		defb %11100000
		defb %11100000
		defb %01000000
		defb %00000000
		defb %00010000
		defb %00010000
		defb %00100000
		defb %00100000
		defb %01000000
		defb %01000000
		defb %10000000
		defb %10000000
		defb %01000010
		defb %01000010
		defb %01000010
		defb %01000010
		defb %00100100
		defb %00100100
		defb %00011000
		defb %00000000
		defb %00010000
		defb %00010000
		defb %00010000
		defb %00010000
		defb %00010000
		defb %01111100
		defb %00000000
		defb %00000000
		defb %00001000
		defb %00010000
		defb %00100000
		defb %00100010
		defb %01000010
		defb %01111110
		defb %00000000
		defb %00000000
		defb %00000100
		defb %00000010
		defb %10000010
		defb %10000010
		defb %01000100
		defb %00111000
		defb %00000000
		defb %00000000
		defb %10001000
		defb %11111110
		defb %00001000
		defb %00001000
		defb %00001000
		defb %00111100
		defb %00000000
		defb %00000000
		defb %00000010
		defb %00000010
		defb %11000010
		defb %10000010
		defb %01000100
		defb %00111000
		defb %00000000
		defb %00000000
		defb %10000010
		defb %10000010
		defb %10000010
		defb %10000010
		defb %01000100
		defb %00111000
		defb %00000000
		defb %00000000
		defb %00001000
		defb %00001000
		defb %00001000
		defb %00010000
		defb %00010000
		defb %00010000
		defb %00010000
		defb %00000000
		defb %01000100
		defb %10000010
		defb %10000010
		defb %10000010
		defb %01000100
		defb %00111000
		defb %00000000
		defb %00000000
		defb %00111010
		defb %00000010
		defb %00000010
		defb %10000010
		defb %01000100
		defb %00111000
		defb %00000000
		defb %00000000
		defb %00000000
		defb %00000000
		defb %00000000
		defb %00000000
		defb %00111000
		defb %00111000
		defb %00000000
		defb %00000000
		defb %00000000
		defb %00000000
		defb %00000000
		defb %00111000
		defb %00111000
		defb %00011000
		defb %00010000
		defb %00110000
		defb %00100000
		defb %00010000
		defb %00010000
		defb %00001000
		defb %00001000
		defb %00000100
		defb %00000100
		defb %00000010
		defb %00000000
		defb %11111110
		defb %00000000
		defb %00000000
		defb %00000000
		defb %00000000
		defb %00000000
		defb %00000000
		defb %00001000
		defb %00010000
		defb %00010000
		defb %00100000
		defb %00100000
		defb %01000000
		defb %01000000
		defb %10000000
		defb %00001000
		defb %00010000
		defb %00010000
		defb %00000000
		defb %00000000
		defb %00010000
		defb %00111000
		defb %00010000
		defb %10100010
		defb %10100110
		defb %10011010
		defb %10000000
		defb %01000010
		defb %00111100
		defb %00000000
		defb %00000000
		defb %01000100
		defb %01111100
		defb %10000010
		defb %10000010
		defb %10000010
		defb %11000110
		defb %00000000
		defb %00000000
		defb %01000100
		defb %01000010
		defb %01000010
		defb %01000010
		defb %01000010
		defb %11111100
		defb %00000000
		defb %00000000
		defb %10000000
		defb %10000000
		defb %10000010
		defb %01000010
		defb %01000010
		defb %00111100
		defb %00000000
		defb %00000000
		defb %01000010
		defb %01000010
		defb %01000010
		defb %01000100
		defb %01000100
		defb %11111000
		defb %00000000
		defb %00000000
		defb %01001000
		defb %01001000
		defb %01000010
		defb %01000010
		defb %01000010
		defb %11111110
		defb %00000000
		defb %00000000
		defb %01001000
		defb %01001000
		defb %01000000
		defb %01000000
		defb %01000000
		defb %11110000
		defb %00000000
		defb %00000000
		defb %10000010
		defb %10000010
		defb %10000010
		defb %01000010
		defb %01100110
		defb %00011010
		defb %00000000
		defb %00000000
		defb %01000010
		defb %01000010
		defb %01000010
		defb %01000010
		defb %01000010
		defb %11100111
		defb %00000000
		defb %00000000
		defb %00010000
		defb %00010000
		defb %00010000
		defb %00010000
		defb %00010000
		defb %11111110
		defb %00000000
		defb %00000000
		defb %00000010
		defb %10000010
		defb %10000010
		defb %10000010
		defb %01000100
		defb %00111000
		defb %00000000
		defb %00000000
		defb %01001000
		defb %01001000
		defb %01000100
		defb %01000100
		defb %01000010
		defb %11100011
		defb %00000000
		defb %00000000
		defb %01000000
		defb %01000000
		defb %01000010
		defb %01000010
		defb %01000010
		defb %11111110
		defb %00000000
		defb %00000000
		defb %10010010
		defb %10000010
		defb %10000010
		defb %10000010
		defb %10000010
		defb %11000110
		defb %00000000
		defb %00000000
		defb %10010010
		defb %10001010
		defb %10001010
		defb %10001010
		defb %10000110
		defb %11000010
		defb %00000000
		defb %00000000
		defb %10000010
		defb %10000010
		defb %10000010
		defb %10000010
		defb %01000100
		defb %00111000
		defb %00000000
		defb %00000000
		defb %01111000
		defb %01000000
		defb %01000000
		defb %01000000
		defb %01000000
		defb %11110000
		defb %00000000
		defb %00000000
		defb %10000010
		defb %10000010
		defb %10111010
		defb %01000100
		defb %01000100
		defb %00111000
		defb %00001000
		defb %00000110
		defb %01001000
		defb %01000100
		defb %01000100
		defb %01000100
		defb %01000010
		defb %11100011
		defb %00000000
		defb %00000000
		defb %00000100
		defb %10000010
		defb %10000010
		defb %10000010
		defb %11000100
		defb %10111000
		defb %00000000
		defb %00000000
		defb %00010000
		defb %00010000
		defb %00010000
		defb %00010000
		defb %00010000
		defb %01111100
		defb %00000000
		defb %00000000
		defb %01000010
		defb %01000010
		defb %01000010
		defb %01000010
		defb %01000010
		defb %00111100
		defb %00000000
		defb %00000000
		defb %01000100
		defb %01000100
		defb %00101000
		defb %00101000
		defb %00010000
		defb %00010000
		defb %00000000
		defb %00000000
		defb %10101010
		defb %10101010
		defb %10101010
		defb %01000100
		defb %01000100
		defb %01000100
		defb %00000000
		defb %00000000
		defb %00101000
		defb %00101000
		defb %01000100
		defb %01000100
		defb %10000010
		defb %11000110
		defb %00000000
		defb %00000000
		defb %00010000
		defb %00010000
		defb %00010000
		defb %00010000
		defb %00010000
		defb %01111100
		defb %00000000
		defb %00000000
		defb %00100000
		defb %00100000
		defb %01000010
		defb %01000010
		defb %10000010
		defb %11111110
		defb %00000000
		defb %00000000
		defb %00010000
		defb %00010000
		defb %00010000
		defb %00010000
		defb %00010000
		defb %00010000
		defb %00010000
		defb %00011110
		defb %00010000
		defb %00001000
		defb %00001000
		defb %00000100
		defb %00000100
		defb %00000010
		defb %00000010
		defb %00000000
		defb %00010000
		defb %00010000
		defb %00010000
		defb %00010000
		defb %00010000
		defb %00010000
		defb %00010000
		defb %11110000
		defb %00000000
		defb %00000000
		defb %00000000
		defb %00000000
		defb %00000000
		defb %00000000
		defb %00000000
		defb %00000000
		defb %00000000
		defb %00000000
		defb %00000000
		defb %00000000
		defb %00000000
		defb %00000000
		defb %00000000
		defb %11111110
		defb %00000000
		defb %00000000
		defb %00000000
		defb %00000000
		defb %00000000
		defb %00000000
		defb %00000000
		defb %00000000
		defb %00111110
		defb %01000010
		defb %10000010
		defb %10000010
		defb %10000110
		defb %01111011
		defb %00000000
		defb %00000000
		defb %01000010
		defb %01000010
		defb %01000010
		defb %01000010
		defb %01000100
		defb %01111000
		defb %00000000
		defb %00000000
		defb %10000000
		defb %10000000
		defb %10000000
		defb %10000010
		defb %01000010
		defb %00111100
		defb %00000000
		defb %00000000
		defb %10000100
		defb %10000100
		defb %10000100
		defb %10000100
		defb %01000100
		defb %00111110
		defb %00000000
		defb %00000000
		defb %11111110
		defb %10000000
		defb %10000000
		defb %10000010
		defb %01000010
		defb %00111100
		defb %00000000
		defb %00000000
		defb %00010000
		defb %00010000
		defb %00010000
		defb %00010000
		defb %00010000
		defb %01111100
		defb %00000000
		defb %00000000
		defb %01000100
		defb %00111000
		defb %01000000
		defb %01111000
		defb %10000100
		defb %10000010
		defb %10000010
		defb %01111100
		defb %01000010
		defb %01000010
		defb %01000010
		defb %01000010
		defb %01000010
		defb %11100111
		defb %00000000
		defb %00000000
		defb %00001000
		defb %00001000
		defb %00001000
		defb %00001000
		defb %00001000
		defb %11111111
		defb %00000000
		defb %00000000
		defb %00000010
		defb %00000010
		defb %00000010
		defb %00000010
		defb %10000010
		defb %10000010
		defb %01000100
		defb %00111000
		defb %01011000
		defb %01100100
		defb %01000100
		defb %01000010
		defb %01000010
		defb %11100011
		defb %00000000
		defb %00000000
		defb %00001000
		defb %00001000
		defb %00001000
		defb %00001000
		defb %00001000
		defb %11111111
		defb %00000000
		defb %00000000
		defb %10010010
		defb %10010010
		defb %10010010
		defb %10010010
		defb %10010010
		defb %11011011
		defb %00000000
		defb %00000000
		defb %01000010
		defb %01000010
		defb %01000010
		defb %01000010
		defb %01000010
		defb %11100111
		defb %00000000
		defb %00000000
		defb %10000010
		defb %10000010
		defb %10000010
		defb %10000010
		defb %01000100
		defb %00111000
		defb %00000000
		defb %00000000
		defb %01000010
		defb %01000010
		defb %01000010
		defb %01000100
		defb %01111000
		defb %01000000
		defb %01000000
		defb %11110000
		defb %10000100
		defb %10000100
		defb %10000100
		defb %01000100
		defb %00111100
		defb %00000100
		defb %00000100
		defb %00011110
		defb %00100000
		defb %00100000
		defb %00100000
		defb %00100000
		defb %00100000
		defb %11111100
		defb %00000000
		defb %00000000
		defb %01000000
		defb %00111100
		defb %00000010
		defb %10000010
		defb %11000010
		defb %10111100
		defb %00000000
		defb %00000000
		defb %00100000
		defb %00100000
		defb %00100000
		defb %00100010
		defb %00100010
		defb %00011100
		defb %00000000
		defb %00000000
		defb %01000010
		defb %01000010
		defb %01000010
		defb %01000010
		defb %01000110
		defb %00111001
		defb %00000000
		defb %00000000
		defb %01000100
		defb %01000100
		defb %01000100
		defb %00101000
		defb %00101000
		defb %00010000
		defb %00000000
		defb %00000000
		defb %10010010
		defb %10101010
		defb %10101010
		defb %01000100
		defb %01000100
		defb %01000100
		defb %00000000
		defb %00000000
		defb %00101000
		defb %00010000
		defb %00101000
		defb %00101000
		defb %01000100
		defb %11101110
		defb %00000000
		defb %00000000
		defb %00100100
		defb %00010100
		defb %00001000
		defb %00001000
		defb %00010000
		defb %10010000
		defb %10100000
		defb %01000000
		defb %00001000
		defb %00010000
		defb %00010000
		defb %00100010
		defb %01000010
		defb %11111110
		defb %00000000
		defb %00000000
		defb %00010000
		defb %00001000
		defb %00001000
		defb %00001000
		defb %00001000
		defb %00001000
		defb %00001000
		defb %00000110
		defb %00010000
		defb %00010000
		defb %00010000
		defb %00010000
		defb %00010000
		defb %00010000
		defb %00010000
		defb %00010000
		defb %00010000
		defb %00100000
		defb %00100000
		defb %00100000
		defb %00100000
		defb %00100000
		defb %00100000
		defb %11000000
		defb %00000000
		defb %00000000
		defb %00000000
		defb %00000000
		defb %00000000
		defb %00000000
		defb %00000000
		defb %00000000
		defb %10101010
		defb %01010101
		defb %10101010
		defb %01010101
		defb %10101010
		defb %01010101
		defb %10101010
		defb %01010101
#line 1921
__LABEL__charset01end:
	ld hl, 4143
	ld (_seed), hl
	ld hl, 0
	ld (_hiscore), hl
	xor a
	ld (_debug), a
	xor a
	ld (_pldirct), a
__LABEL__start01:
	xor a
	push af
	xor a
	push af
	call _smsvdp
	ld a, 226
	push af
	ld a, 1
	push af
	call _smsvdp
	ld a, 6
	push af
	ld a, 2
	push af
	call _smsvdp
	ld a, 128
	push af
	ld a, 3
	push af
	call _smsvdp
	xor a
	push af
	ld a, 4
	push af
	call _smsvdp
	ld a, 54
	push af
	ld a, 5
	push af
	call _smsvdp
	ld a, 7
	push af
	ld a, 6
	push af
	call _smsvdp
	ld a, 49
	push af
	ld a, 7
	push af
	call _smsvdp
	ld hl, 16384
	push hl
	ld hl, 0
	push hl
	ld hl, 0
	push hl
	call _smsfilvrm
	ld hl, 2048
	push hl
	ld hl, __LABEL__charset01
	push hl
	ld hl, 0
	push hl
	call _smsldirvm
	ld hl, 2048
	push hl
	ld hl, 31
	push hl
	ld hl, 8192
	push hl
	call _smsfilvrm
	call _nops
	ld hl, 0
	ld (_ee1), hl
	jp __LABEL0
__LABEL3:
	ld hl, 16
	push hl
	ld hl, (_ee1)
	ld de, 16
	call __MUL16_FAST
	ex de, hl
	ld hl, __LABEL__sprites01
	add hl, de
	push hl
	ld hl, (_ee1)
	ld de, 32
	call __MUL16_FAST
	ld de, 14336
	add hl, de
	push hl
	call _smsldirvm
__LABEL4:
	ld hl, (_ee1)
	inc hl
	ld (_ee1), hl
__LABEL0:
	ld hl, 15
	ld de, (_ee1)
	or a
	sbc hl, de
	jp nc, __LABEL3
__LABEL2:
	call _nops
	ld hl, 158
	push hl
	ld hl, 8192
	push hl
	call _smsvpoke
	ld hl, 254
	push hl
	ld hl, 8193
	push hl
	call _smsvpoke
	ld hl, 254
	push hl
	ld hl, 8194
	push hl
	call _smsvpoke
	ld hl, 254
	push hl
	ld hl, 8195
	push hl
	call _smsvpoke
	ld hl, 110
	push hl
	ld hl, 8208
	push hl
	call _smsvpoke
	ld hl, 78
	push hl
	ld hl, 8209
	push hl
	call _smsvpoke
	ld hl, 230
	push hl
	ld hl, 8210
	push hl
	call _smsvpoke
	ld hl, 22
	push hl
	ld hl, 8211
	push hl
	call _smsvpoke
	ld hl, 8
	push hl
	ld hl, __LABEL__tilebrick01
	push hl
	ld hl, 1152
	push hl
	call _smsldirvm
	ld hl, 8
	push hl
	ld hl, __LABEL__tilebrick01
	push hl
	ld hl, 1216
	push hl
	call _smsldirvm
	ld a, (_debug)
	or a
	jp z, __LABEL6
	ld hl, 0
	ld (_ee1), hl
	jp __LABEL7
__LABEL10:
	ld hl, 0
	ld (_ee2), hl
	jp __LABEL12
__LABEL15:
	ld hl, (_ee1)
	ld de, 32
	call __MUL16_FAST
	ex de, hl
	ld hl, (_ee2)
	add hl, de
	push hl
	ld hl, (_ee2)
	ld de, 6144
	add hl, de
	push hl
	ld hl, (_ee1)
	ld de, 64
	call __MUL16_FAST
	ex de, hl
	pop hl
	add hl, de
	push hl
	call _smsvpoke
	ld hl, (_ee2)
	ld de, 128
	add hl, de
	push hl
	ld hl, (_ee1)
	ld de, 32
	call __MUL16_FAST
	ex de, hl
	pop hl
	add hl, de
	push hl
	ld hl, (_ee2)
	ld de, 6176
	add hl, de
	push hl
	ld hl, (_ee1)
	ld de, 64
	call __MUL16_FAST
	ex de, hl
	pop hl
	add hl, de
	push hl
	call _smsvpoke
__LABEL16:
	ld hl, (_ee2)
	inc hl
	ld (_ee2), hl
__LABEL12:
	ld hl, 31
	ld de, (_ee2)
	or a
	sbc hl, de
	jp nc, __LABEL15
__LABEL14:
__LABEL11:
	ld hl, (_ee1)
	inc hl
	ld (_ee1), hl
__LABEL7:
	ld hl, 3
	ld de, (_ee1)
	or a
	sbc hl, de
	jp nc, __LABEL10
__LABEL9:
	ld hl, 5
	push hl
	call _smswaitvbl
__LABEL6:
	ld hl, 0
	ld (_ee1), hl
	jp __LABEL17
__LABEL20:
	ld hl, 0
	ld (_ee2), hl
	jp __LABEL22
__LABEL25:
	ld de, __LABEL__sprites01
	ld hl, (_ee2)
	add hl, de
	push hl
	ld hl, (_ee1)
	ld de, 16
	call __MUL16_FAST
	ex de, hl
	pop hl
	add hl, de
	ld b, h
	ld c, l
	ld a, (bc)
	ld l, a
	ld h, 0
	push hl
	ld hl, (_ee2)
	ld de, 14336
	add hl, de
	push hl
	ld hl, (_ee1)
	ld de, 32
	call __MUL16_FAST
	ex de, hl
	pop hl
	add hl, de
	push hl
	call _smsvpoke
__LABEL26:
	ld hl, (_ee2)
	inc hl
	ld (_ee2), hl
__LABEL22:
	ld hl, 15
	ld de, (_ee2)
	or a
	sbc hl, de
	jp nc, __LABEL25
__LABEL24:
__LABEL21:
	ld hl, (_ee1)
	inc hl
	ld (_ee1), hl
__LABEL17:
	ld hl, 15
	ld de, (_ee1)
	or a
	sbc hl, de
	jp nc, __LABEL20
__LABEL19:
	ld hl, 768
	push hl
	ld hl, 144
	push hl
	ld hl, 6144
	push hl
	call _smsfilvrm
	ld hl, __LABEL__text02b - __LABEL__text02a
	push hl
	ld hl, __LABEL__text02a
	push hl
	ld hl, 5
	push hl
	ld hl, 1
	push hl
	call _print2x1
	ld hl, __LABEL__text02c - __LABEL__text02b
	push hl
	ld hl, __LABEL__text02b
	push hl
	ld hl, 10
	push hl
	ld hl, 1
	push hl
	call _print2x1
	ld hl, __LABEL__text02e - __LABEL__text02d
	push hl
	ld hl, __LABEL__text02d
	push hl
	ld hl, 10
	push hl
	ld hl, 10
	push hl
	call _print2x1
	ld hl, __LABEL__text02f - __LABEL__text02e
	push hl
	ld hl, __LABEL__text02e
	push hl
	ld hl, 12
	push hl
	ld hl, 3
	push hl
	call _print2x1
	ld hl, __LABEL__text02d - __LABEL__text02c
	push hl
	ld hl, __LABEL__text02c
	push hl
	ld hl, 15
	push hl
	ld hl, 1
	push hl
	call _print2x1
	ld hl, __LABEL__text02e - __LABEL__text02d
	push hl
	ld hl, __LABEL__text02d
	push hl
	ld hl, 15
	push hl
	ld hl, 14
	push hl
	call _print2x1
	ld hl, __LABEL__text02g - __LABEL__text02f
	push hl
	ld hl, __LABEL__text02f
	push hl
	ld hl, 17
	push hl
	ld hl, 3
	push hl
	call _print2x1
	ld hl, __LABEL__text02h - __LABEL__text02g
	push hl
	ld hl, __LABEL__text02g
	push hl
	ld hl, 21
	push hl
	ld hl, 1
	push hl
	call _print2x1
__LABEL27:
	ld hl, (_tmcntr)
	inc hl
	ld (_tmcntr), hl
	call _cvjoypad1b
	push af
	call _cvjoypad2b
	ld h, a
	pop af
	and h
	push af
	ld h, 15
	pop af
	and h
	ld h, a
	ld a, 15
	sub h
	ld (_invjoypad), a
	sub 1
	sbc a, a
	sub 1
	jp nc, __LABEL30
	jp __LABEL__leavetitle01
__LABEL30:
	jp __LABEL27
__LABEL28:
__LABEL__leavetitle01:
	ld de, (_seed)
	ld hl, (_tmcntr)
	add hl, de
	ld (_seed), hl
	ld a, 1
	ld (_stage), a
	ld hl, 0
	ld (_score), hl
__LABEL31:
	ld hl, 768
	push hl
	ld hl, 144
	push hl
	ld hl, 6144
	push hl
	call _smsfilvrm
	ld hl, 28928
	ld (_ee1), hl
	jp __LABEL33
__LABEL36:
	ld hl, (_eee)
	call _smsrnd
	ld (_eee), hl
	ld de, 10
	call __MODU16
	ld a, l
	ld hl, (_ee1)
	ld (hl), a
	xor a
	ld hl, (_ee1)
	ld (hl), a
__LABEL37:
	ld hl, (_ee1)
	inc hl
	ld (_ee1), hl
__LABEL33:
	ld hl, 29183
	ld de, (_ee1)
	or a
	sbc hl, de
	jp nc, __LABEL36
__LABEL35:
	ld hl, 0
	ld (_ee1), hl
	jp __LABEL38
__LABEL41:
	ld hl, 0
	ld (_ee2), hl
	jp __LABEL43
__LABEL46:
	ld hl, (_seed)
	call _smsrnd
	ld (_seed), hl
	ld de, 10
	call __MODU16
	ld a, l
	push af
	ld hl, 28928
	push hl
	ld hl, 19
	push hl
	ld hl, (_ee1)
	push hl
	ld hl, (_ee2)
	push hl
	call _putarray
__LABEL47:
	ld hl, (_ee2)
	inc hl
	ld (_ee2), hl
__LABEL43:
	ld hl, 18
	ld de, (_ee2)
	or a
	sbc hl, de
	jp nc, __LABEL46
__LABEL45:
__LABEL42:
	ld hl, (_ee1)
	inc hl
	ld (_ee1), hl
__LABEL38:
	ld hl, 9
	ld de, (_ee1)
	or a
	sbc hl, de
	jp nc, __LABEL41
__LABEL40:
	ld hl, 0
	ld (_ee5), hl
	jp __LABEL48
__LABEL51:
	ld hl, 0
	ld (_ee1), hl
	jp __LABEL53
__LABEL56:
	ld hl, 0
	ld (_ee2), hl
	jp __LABEL58
__LABEL61:
	ld hl, (_ee1)
	ld de, 19
	call __MUL16_FAST
	ld de, 28928
	add hl, de
	ex de, hl
	ld hl, (_ee2)
	add hl, de
	ld b, h
	ld c, l
	ld a, (bc)
	ld l, a
	ld h, 0
	ld (_ee3), hl
	ld hl, (_ee1)
	ld de, 19
	call __MUL16_FAST
	ld de, 28928
	add hl, de
	ex de, hl
	ld hl, (_ee2)
	add hl, de
	ld de, 20
	add hl, de
	ld b, h
	ld c, l
	ld a, (bc)
	ld l, a
	ld h, 0
	ld (_ee4), hl
	ld de, (_ee4)
	ld hl, (_ee3)
	call __EQ16
	or a
	jp z, __LABEL64
	ld hl, (_ee3)
	inc hl
	ld de, 10
	call __MODU16
	ld a, l
	push af
	ld hl, 28928
	push hl
	ld hl, 19
	push hl
	ld hl, (_ee1)
	inc hl
	push hl
	ld hl, (_ee2)
	inc hl
	push hl
	call _putarray
__LABEL64:
__LABEL62:
	ld hl, (_ee2)
	inc hl
	ld (_ee2), hl
__LABEL58:
	ld hl, 17
	ld de, (_ee2)
	or a
	sbc hl, de
	jp nc, __LABEL61
__LABEL60:
__LABEL57:
	ld hl, (_ee1)
	inc hl
	ld (_ee1), hl
__LABEL53:
	ld hl, 8
	ld de, (_ee1)
	or a
	sbc hl, de
	jp nc, __LABEL56
__LABEL55:
	ld hl, 0
	ld (_ee1), hl
	jp __LABEL65
__LABEL68:
	ld hl, 1
	ld (_ee2), hl
	jp __LABEL70
__LABEL73:
	ld hl, (_ee1)
	ld de, 19
	call __MUL16_FAST
	ld de, 28928
	add hl, de
	ex de, hl
	ld hl, (_ee2)
	add hl, de
	ld b, h
	ld c, l
	ld a, (bc)
	ld l, a
	ld h, 0
	ld (_ee3), hl
	ld hl, (_ee1)
	ld de, 19
	call __MUL16_FAST
	ld de, 28928
	add hl, de
	ex de, hl
	ld hl, (_ee2)
	add hl, de
	ld de, 18
	add hl, de
	ld b, h
	ld c, l
	ld a, (bc)
	ld l, a
	ld h, 0
	ld (_ee4), hl
	ld de, (_ee4)
	ld hl, (_ee3)
	call __EQ16
	or a
	jp z, __LABEL76
	ld hl, (_ee3)
	inc hl
	ld de, 10
	call __MODU16
	ld a, l
	push af
	ld hl, 28928
	push hl
	ld hl, 19
	push hl
	ld hl, (_ee1)
	inc hl
	push hl
	ld hl, (_ee2)
	dec hl
	push hl
	call _putarray
__LABEL76:
__LABEL74:
	ld hl, (_ee2)
	inc hl
	ld (_ee2), hl
__LABEL70:
	ld hl, 18
	ld de, (_ee2)
	or a
	sbc hl, de
	jp nc, __LABEL73
__LABEL72:
__LABEL69:
	ld hl, (_ee1)
	inc hl
	ld (_ee1), hl
__LABEL65:
	ld hl, 8
	ld de, (_ee1)
	or a
	sbc hl, de
	jp nc, __LABEL68
__LABEL67:
	ld hl, 0
	ld (_ee1), hl
	jp __LABEL77
__LABEL80:
	ld hl, 0
	ld (_ee2), hl
	jp __LABEL82
__LABEL85:
	ld hl, (_ee1)
	ld de, 19
	call __MUL16_FAST
	ld de, 28928
	add hl, de
	ex de, hl
	ld hl, (_ee2)
	add hl, de
	ld b, h
	ld c, l
	ld a, (bc)
	ld l, a
	ld h, 0
	ld (_ee3), hl
	ld hl, (_ee1)
	ld de, 19
	call __MUL16_FAST
	ld de, 28928
	add hl, de
	ex de, hl
	ld hl, (_ee2)
	add hl, de
	inc hl
	inc hl
	ld b, h
	ld c, l
	ld a, (bc)
	ld l, a
	ld h, 0
	ld (_ee4), hl
	ld de, (_ee4)
	ld hl, (_ee3)
	call __EQ16
	or a
	jp z, __LABEL88
	ld hl, (_ee3)
	inc hl
	ld de, 10
	call __MODU16
	ld a, l
	push af
	ld hl, 28928
	push hl
	ld hl, 19
	push hl
	ld hl, (_ee1)
	push hl
	ld hl, (_ee2)
	inc hl
	inc hl
	push hl
	call _putarray
__LABEL88:
__LABEL86:
	ld hl, (_ee2)
	inc hl
	ld (_ee2), hl
__LABEL82:
	ld hl, 16
	ld de, (_ee2)
	or a
	sbc hl, de
	jp nc, __LABEL85
__LABEL84:
__LABEL81:
	ld hl, (_ee1)
	inc hl
	ld (_ee1), hl
__LABEL77:
	ld hl, 9
	ld de, (_ee1)
	or a
	sbc hl, de
	jp nc, __LABEL80
__LABEL79:
	ld hl, 0
	ld (_ee1), hl
	jp __LABEL89
__LABEL92:
	ld hl, 0
	ld (_ee2), hl
	jp __LABEL94
__LABEL97:
	ld hl, (_ee1)
	ld de, 19
	call __MUL16_FAST
	ld de, 28928
	add hl, de
	ex de, hl
	ld hl, (_ee2)
	add hl, de
	ld b, h
	ld c, l
	ld a, (bc)
	ld l, a
	ld h, 0
	ld (_ee3), hl
	ld hl, (_ee1)
	ld de, 19
	call __MUL16_FAST
	ld de, 28928
	add hl, de
	ex de, hl
	ld hl, (_ee2)
	add hl, de
	ld de, 38
	add hl, de
	ld b, h
	ld c, l
	ld a, (bc)
	ld l, a
	ld h, 0
	ld (_ee4), hl
	ld de, (_ee4)
	ld hl, (_ee3)
	call __EQ16
	or a
	jp z, __LABEL100
	ld hl, (_ee3)
	inc hl
	ld de, 10
	call __MODU16
	ld a, l
	push af
	ld hl, 28928
	push hl
	ld hl, 19
	push hl
	ld hl, (_ee1)
	inc hl
	inc hl
	push hl
	ld hl, (_ee2)
	push hl
	call _putarray
__LABEL100:
__LABEL98:
	ld hl, (_ee2)
	inc hl
	ld (_ee2), hl
__LABEL94:
	ld hl, 18
	ld de, (_ee2)
	or a
	sbc hl, de
	jp nc, __LABEL97
__LABEL96:
__LABEL93:
	ld hl, (_ee1)
	inc hl
	ld (_ee1), hl
__LABEL89:
	ld hl, 7
	ld de, (_ee1)
	or a
	sbc hl, de
	jp nc, __LABEL92
__LABEL91:
__LABEL52:
	ld hl, (_ee5)
	inc hl
	ld (_ee5), hl
__LABEL48:
	ld hl, 1
	ld de, (_ee5)
	or a
	sbc hl, de
	jp nc, __LABEL51
__LABEL50:
	ld hl, (_seed)
	call _smsrnd
	ld (_seed), hl
	ld h, 0
	ld a, l
	and 7
	ld l, a
	ld (_ee5), hl
	inc hl
	ld (_ypos), hl
	ld (_yposo), hl
	ld hl, (_seed)
	call _smsrnd
	ld (_seed), hl
	ld h, 0
	ld a, l
	and 7
	ld l, a
	ld (_ee5), hl
	inc hl
	ld (_yposf), hl
	ld hl, 0
	ld (_ee1), hl
	jp __LABEL101
__LABEL104:
	ld a, 254
	push af
	ld hl, 28928
	push hl
	ld hl, 19
	push hl
	ld hl, 0
	push hl
	ld hl, (_ee1)
	push hl
	call _putarray
	ld a, 254
	push af
	ld hl, 28928
	push hl
	ld hl, 19
	push hl
	ld hl, 9
	push hl
	ld hl, (_ee1)
	push hl
	call _putarray
__LABEL105:
	ld hl, (_ee1)
	inc hl
	ld (_ee1), hl
__LABEL101:
	ld hl, 18
	ld de, (_ee1)
	or a
	sbc hl, de
	jp nc, __LABEL104
__LABEL103:
	ld hl, 28928
	push hl
	ld hl, 19
	push hl
	ld hl, (_yposf)
	push hl
	ld hl, 18
	push hl
	call _getarray
	call __FTOU32REG
	ld (_ee4), hl
	ld hl, 0
	ld (_ee1), hl
	jp __LABEL106
__LABEL109:
	ld a, 254
	push af
	ld hl, 28928
	push hl
	ld hl, 19
	push hl
	ld hl, (_ee1)
	push hl
	ld hl, 0
	push hl
	call _putarray
	ld a, 254
	push af
	ld hl, 28928
	push hl
	ld hl, 19
	push hl
	ld hl, (_ee1)
	push hl
	ld hl, 18
	push hl
	call _putarray
__LABEL110:
	ld hl, (_ee1)
	inc hl
	ld (_ee1), hl
__LABEL106:
	ld hl, 8
	ld de, (_ee1)
	or a
	sbc hl, de
	jp nc, __LABEL109
__LABEL108:
	ld hl, (_ee4)
	ld a, l
	push af
	ld hl, 28928
	push hl
	ld hl, 19
	push hl
	ld hl, (_yposf)
	push hl
	ld hl, 18
	push hl
	call _putarray
	ld hl, 0
	ld (_ee2), hl
	jp __LABEL111
__LABEL114:
	ld hl, 0
	ld (_ee1), hl
	jp __LABEL116
__LABEL119:
	ld hl, (_ee1)
	ld de, 28800
	add hl, de
	push hl
	xor a
	pop hl
	ld (hl), a
__LABEL120:
	ld hl, (_ee1)
	inc hl
	ld (_ee1), hl
__LABEL116:
	ld hl, 15
	ld de, (_ee1)
	or a
	sbc hl, de
	jp nc, __LABEL119
__LABEL118:
	ld hl, 1
	ld (_ee1), hl
	jp __LABEL121
__LABEL124:
__LABEL__loopfixwalls01:
	ld hl, (_seed)
	call _smsrnd
	ld (_seed), hl
	ld h, 0
	ld a, l
	and 7
	ld l, a
	inc hl
	ld (_ee3), hl
	ld de, 28800
	add hl, de
	ld b, h
	ld c, l
	ld a, (bc)
	or a
	jp z, __LABEL127
	jp __LABEL__loopfixwalls01
__LABEL127:
	ld hl, (_ee3)
	ld de, 28800
	add hl, de
	push hl
	ld a, 1
	pop hl
	ld (hl), a
__LABEL125:
	ld hl, (_ee1)
	inc hl
	ld (_ee1), hl
__LABEL121:
	ld a, (_stage)
	add a, 2
	ld l, a
	ld h, 0
	ld de, (_ee1)
	or a
	sbc hl, de
	jp nc, __LABEL124
__LABEL123:
	ld hl, 0
	ld (_ee1), hl
	jp __LABEL128
__LABEL131:
	ld hl, (_ee1)
	ld de, 28800
	add hl, de
	ld b, h
	ld c, l
	ld a, (bc)
	or a
	jp z, __LABEL134
	ld a, 254
	push af
	ld hl, 28928
	push hl
	ld hl, 19
	push hl
	ld hl, (_ee1)
	push hl
	ld hl, (_ee2)
	push hl
	call _putarray
__LABEL134:
__LABEL132:
	ld hl, (_ee1)
	inc hl
	ld (_ee1), hl
__LABEL128:
	ld hl, 8
	ld de, (_ee1)
	or a
	sbc hl, de
	jp nc, __LABEL131
__LABEL130:
__LABEL115:
	ld hl, (_ee2)
	inc hl
	inc hl
	ld (_ee2), hl
__LABEL111:
	ld hl, 16
	ld de, (_ee2)
	or a
	sbc hl, de
	jp nc, __LABEL114
__LABEL113:
	ld hl, 768
	push hl
	ld hl, 144
	push hl
	ld hl, 6144
	push hl
	call _smsfilvrm
	ld hl, 0
	ld (_ee1), hl
	jp __LABEL135
__LABEL138:
	ld hl, 0
	ld (_ee0), hl
	jp __LABEL140
__LABEL143:
	ld a, 152
	push af
	ld a, 144
	push af
	ld de, __LABEL__charset01 + 384
	ld hl, (_ee0)
	add hl, de
	push hl
	ld hl, 3
	ld de, (_ee1)
	or a
	sbc hl, de
	add hl, hl
	add hl, hl
	add hl, hl
	ex de, hl
	pop hl
	add hl, de
	ld b, h
	ld c, l
	ld a, (bc)
	push af
	ld hl, (_ee0)
	ld de, 4
	add hl, de
	push hl
	ld hl, 12
	push hl
	call _bintiles
__LABEL144:
	ld hl, (_ee0)
	inc hl
	ld (_ee0), hl
__LABEL140:
	ld hl, 7
	ld de, (_ee0)
	or a
	sbc hl, de
	jp nc, __LABEL143
__LABEL142:
	ld hl, 0
	ld (_ee0), hl
	jp __LABEL145
__LABEL148:
	ld a, 152
	push af
	ld a, 144
	push af
	ld de, __LABEL__charset01 + 384 + 1024
	ld hl, (_ee0)
	add hl, de
	push hl
	ld hl, 3
	ld de, (_ee1)
	or a
	sbc hl, de
	add hl, hl
	add hl, hl
	add hl, hl
	ex de, hl
	pop hl
	add hl, de
	ld b, h
	ld c, l
	ld a, (bc)
	push af
	ld hl, (_ee0)
	ld de, 12
	add hl, de
	push hl
	ld hl, 12
	push hl
	call _bintiles
__LABEL149:
	ld hl, (_ee0)
	inc hl
	ld (_ee0), hl
__LABEL145:
	ld hl, 7
	ld de, (_ee0)
	or a
	sbc hl, de
	jp nc, __LABEL148
__LABEL147:
	ld hl, 50
	push hl
	call _smswaitvbl
__LABEL139:
	ld hl, (_ee1)
	inc hl
	ld (_ee1), hl
__LABEL135:
	ld hl, 3
	ld de, (_ee1)
	or a
	sbc hl, de
	jp nc, __LABEL138
__LABEL137:
	ld hl, 768
	push hl
	ld hl, 144
	push hl
	ld hl, 6144
	push hl
	call _smsfilvrm
	ld hl, 0
	ld (_ee1), hl
	jp __LABEL150
__LABEL153:
	ld hl, 0
	ld (_ee2), hl
	jp __LABEL155
__LABEL158:
	ld hl, 28928
	push hl
	ld hl, 19
	push hl
	ld hl, (_ee1)
	push hl
	ld hl, (_ee2)
	push hl
	call _getarray
	call __FTOU32REG
	ld (_eee), hl
	call _nops
	ld hl, (_eee)
	ld de, 48
	add hl, de
	ld a, l
	push af
	ld hl, (_ee1)
	add hl, hl
	push hl
	ld hl, (_ee2)
	inc hl
	inc hl
	push hl
	call _putchar2x1
	call _nops
	ld hl, 10
	ld de, (_eee)
	or a
	sbc hl, de
	jp nc, __LABEL161
	call _nops
	ld a, 144
	push af
	ld hl, 2
	push hl
	ld hl, 1
	push hl
	ld hl, (_ee1)
	add hl, hl
	push hl
	ld hl, (_ee2)
	inc hl
	inc hl
	push hl
	call _filltile
	call _nops
__LABEL161:
__LABEL159:
	ld hl, (_ee2)
	inc hl
	ld (_ee2), hl
__LABEL155:
	ld hl, 18
	ld de, (_ee2)
	or a
	sbc hl, de
	jp nc, __LABEL158
__LABEL157:
__LABEL154:
	ld hl, (_ee1)
	inc hl
	ld (_ee1), hl
__LABEL150:
	ld hl, 9
	ld de, (_ee1)
	or a
	sbc hl, de
	jp nc, __LABEL153
__LABEL152:
	ld hl, 2
	push hl
	ld hl, __LABEL__textsctb01
	push hl
	ld hl, 20
	push hl
	ld hl, 11
	push hl
	call _print2x1
	ld hl, 2
	push hl
	ld hl, __LABEL__textsctb01 + 2
	push hl
	ld hl, 20
	push hl
	ld hl, 16
	push hl
	call _print2x1
	ld hl, 2
	push hl
	ld hl, __LABEL__textsctb01 + 4
	push hl
	ld hl, 20
	push hl
	ld hl, 21
	push hl
	call _print2x1
	ld hl, 2
	push hl
	ld hl, __LABEL__textsctb01 + 6
	push hl
	ld hl, 20
	push hl
	ld hl, 24
	push hl
	call _print2x1
	ld hl, 2
	push hl
	ld hl, __LABEL__textsctb01 + 8
	push hl
	ld hl, 20
	push hl
	ld hl, 27
	push hl
	call _print2x1
	ld a, (_stage)
	ld h, 10
	call __MODU8_FAST
	add a, 48
	push af
	ld hl, 22
	push hl
	ld hl, 28
	push hl
	call _putchar2x1
	ld hl, (_score)
	push hl
	ld hl, 22
	push hl
	ld hl, 11
	push hl
	call _printdec2x2d4
	ld hl, (_hiscore)
	push hl
	ld hl, 22
	push hl
	ld hl, 16
	push hl
	call _printdec2x2d4
	ld a, 152
	push af
	ld hl, 2
	push hl
	ld hl, 2
	push hl
	ld hl, (_yposo)
	add hl, hl
	push hl
	ld hl, 0
	push hl
	call _filltile
	ld hl, 65535
	ld (_xposo), hl
	ld hl, 0
	ld (_xpos), hl
	ld hl, 0
	ld (_kprs), hl
	ld hl, 0
	ld (_tmcntr), hl
	ld hl, 0
	ld (_kpram), hl
__LABEL162:
	call _cvjoypad1b
	push af
	call _cvjoypad2b
	ld h, a
	pop af
	and h
	push af
	ld h, 15
	pop af
	and h
	ld h, a
	ld a, 15
	sub h
	ld (_invjoypad), a
	ld hl, 28928
	push hl
	ld hl, 19
	push hl
	ld hl, (_ypos)
	push hl
	ld hl, (_xpos)
	inc hl
	push hl
	call _getarray
	call __FTOU32REG
	ld (_arrvl), hl
	ld de, 48
	add hl, de
	push hl
	ld a, (_invjoypad)
	ld l, a
	ld h, 0
	ex de, hl
	ld hl, __LABEL__numpad01
	add hl, de
	ld b, h
	ld c, l
	ld a, (bc)
	ld l, a
	ld h, 0
	ex de, hl
	pop hl
	call __EQ16
	push af
	ld de, 0
	ld hl, (_kprs)
	call __EQ16
	ld h, a
	pop af
	call __AND8
	or a
	jp z, __LABEL165
	ld hl, 1
	ld (_kprs), hl
	ld hl, (_xpos)
	ld (_xposo), hl
	ld hl, (_ypos)
	ld (_yposo), hl
	xor a
	ld (_pldirct), a
	push af
	ld a, 3
	push af
	ld hl, (_ypos)
	ld de, 16
	call __MUL16_FAST
	dec hl
	ld a, l
	push af
	ld hl, (_xpos)
	inc hl
	inc hl
	add hl, hl
	add hl, hl
	add hl, hl
	ld a, l
	push af
	call _smoothspritemove
	ld hl, (_xpos)
	inc hl
	ld (_xpos), hl
	ld hl, (_kpram)
	inc hl
	ld (_kpram), hl
__LABEL165:
	ld hl, 28928
	push hl
	ld hl, 19
	push hl
	ld hl, (_ypos)
	push hl
	ld hl, (_xpos)
	dec hl
	push hl
	call _getarray
	call __FTOU32REG
	ld (_arrvl), hl
	ld de, 48
	add hl, de
	push hl
	ld a, (_invjoypad)
	ld l, a
	ld h, 0
	ex de, hl
	ld hl, __LABEL__numpad01
	add hl, de
	ld b, h
	ld c, l
	ld a, (bc)
	ld l, a
	ld h, 0
	ex de, hl
	pop hl
	call __EQ16
	push af
	ld de, 0
	ld hl, (_kprs)
	call __EQ16
	ld h, a
	pop af
	call __AND8
	or a
	jp z, __LABEL167
	ld hl, 1
	ld (_kprs), hl
	ld hl, (_xpos)
	ld (_xposo), hl
	ld hl, (_ypos)
	ld (_yposo), hl
	ld a, 1
	ld (_pldirct), a
	push af
	ld a, 7
	push af
	ld hl, (_ypos)
	ld de, 16
	call __MUL16_FAST
	dec hl
	ld a, l
	push af
	ld hl, (_xpos)
	inc hl
	inc hl
	add hl, hl
	add hl, hl
	add hl, hl
	ld a, l
	push af
	call _smoothspritemove
	ld hl, (_xpos)
	dec hl
	ld (_xpos), hl
	ld hl, (_kpram)
	inc hl
	ld (_kpram), hl
__LABEL167:
	ld hl, 28928
	push hl
	ld hl, 19
	push hl
	ld hl, (_ypos)
	inc hl
	push hl
	ld hl, (_xpos)
	push hl
	call _getarray
	call __FTOU32REG
	ld (_arrvl), hl
	ld de, 48
	add hl, de
	push hl
	ld a, (_invjoypad)
	ld l, a
	ld h, 0
	ex de, hl
	ld hl, __LABEL__numpad01
	add hl, de
	ld b, h
	ld c, l
	ld a, (bc)
	ld l, a
	ld h, 0
	ex de, hl
	pop hl
	call __EQ16
	push af
	ld de, 0
	ld hl, (_kprs)
	call __EQ16
	ld h, a
	pop af
	call __AND8
	or a
	jp z, __LABEL169
	ld hl, 1
	ld (_kprs), hl
	ld hl, (_xpos)
	ld (_xposo), hl
	ld hl, (_ypos)
	ld (_yposo), hl
	ld a, (_pldirct)
	push af
	ld a, 5
	push af
	ld hl, (_ypos)
	ld de, 16
	call __MUL16_FAST
	dec hl
	ld a, l
	push af
	ld hl, (_xpos)
	inc hl
	inc hl
	add hl, hl
	add hl, hl
	add hl, hl
	ld a, l
	push af
	call _smoothspritemove
	ld hl, (_ypos)
	inc hl
	ld (_ypos), hl
	ld hl, (_kpram)
	inc hl
	ld (_kpram), hl
__LABEL169:
	ld hl, 28928
	push hl
	ld hl, 19
	push hl
	ld hl, (_ypos)
	dec hl
	push hl
	ld hl, (_xpos)
	push hl
	call _getarray
	call __FTOU32REG
	ld (_arrvl), hl
	ld de, 48
	add hl, de
	push hl
	ld a, (_invjoypad)
	ld l, a
	ld h, 0
	ex de, hl
	ld hl, __LABEL__numpad01
	add hl, de
	ld b, h
	ld c, l
	ld a, (bc)
	ld l, a
	ld h, 0
	ex de, hl
	pop hl
	call __EQ16
	push af
	ld de, 0
	ld hl, (_kprs)
	call __EQ16
	ld h, a
	pop af
	call __AND8
	or a
	jp z, __LABEL171
	ld hl, 1
	ld (_kprs), hl
	ld hl, (_xpos)
	ld (_xposo), hl
	ld hl, (_ypos)
	ld (_yposo), hl
	ld a, (_pldirct)
	push af
	ld a, 1
	push af
	ld hl, (_ypos)
	ld de, 16
	call __MUL16_FAST
	dec hl
	ld a, l
	push af
	ld hl, (_xpos)
	inc hl
	inc hl
	add hl, hl
	add hl, hl
	add hl, hl
	ld a, l
	push af
	call _smoothspritemove
	ld hl, (_ypos)
	dec hl
	ld (_ypos), hl
	ld hl, (_kpram)
	inc hl
	ld (_kpram), hl
__LABEL171:
	ld a, (_invjoypad)
	sub 1
	jp nc, __LABEL173
	ld hl, 0
	ld (_kprs), hl
__LABEL173:
	ld a, (_debug)
	or a
	jp z, __LABEL175
	ld hl, 28928
	push hl
	ld hl, 19
	push hl
	ld hl, (_ypos)
	push hl
	ld hl, (_xpos)
	push hl
	call _getarray
	call __FTOU32REG
	ld (_arrvl), hl
	ld de, 48
	add hl, de
	ld a, l
	push af
	ld hl, 4
	push hl
	ld hl, 27
	push hl
	call _putchar2x1
	ld a, (_invjoypad)
	ld l, a
	ld h, 0
	ex de, hl
	ld hl, __LABEL__numpad01
	add hl, de
	ld b, h
	ld c, l
	ld a, (bc)
	push af
	ld hl, 6
	push hl
	ld hl, 30
	push hl
	call _putchar2x1
__LABEL175:
	ld a, 3
	push af
	ld a, (_pldirct)
	ld h, 16
	call __MUL8_FAST
	push af
	ld hl, (_ypos)
	ld de, 16
	call __MUL16_FAST
	dec hl
	ld a, l
	push af
	ld hl, (_xpos)
	inc hl
	inc hl
	add hl, hl
	add hl, hl
	add hl, hl
	ld a, l
	push af
	xor a
	push af
	call _sg1000putsprite
	call _nops
	ld a, 32
	push af
	ld hl, (_ypos)
	add hl, hl
	push hl
	ld hl, (_xpos)
	inc hl
	inc hl
	push hl
	call _putchar2x1
	call _nops
	ld a, 254
	push af
	ld hl, 28928
	push hl
	ld hl, 19
	push hl
	ld hl, (_ypos)
	push hl
	ld hl, (_xpos)
	push hl
	call _putarray
	call _nops
	ld a, 152
	push af
	ld hl, 2
	push hl
	ld hl, 1
	push hl
	ld hl, (_yposo)
	add hl, hl
	push hl
	ld hl, (_xposo)
	inc hl
	inc hl
	push hl
	call _filltile
	call _nops
	ld hl, (_tmcntr)
	ld de, 50
	call __DIVU16
	ld de, 0
	ld (_tmcntrs), hl
	ld hl, 59
	ld de, (_tmcntrs)
	or a
	sbc hl, de
	jp nc, __LABEL177
	jp __LABEL__endgm01
__LABEL177:
	ld hl, (_tmcntrs)
	push hl
	ld hl, 22
	push hl
	ld hl, 21
	push hl
	call _printdec2x2d2
	ld hl, (_kpram)
	push hl
	ld hl, 22
	push hl
	ld hl, 24
	push hl
	call _printdec2x2d2
	ld hl, 1
	push hl
	call _smswaitvbl
	ld hl, (_tmcntr)
	inc hl
	ld (_tmcntr), hl
	ld hl, 17
	ld de, (_xpos)
	or a
	sbc hl, de
	jp nc, __LABEL179
	jp __LABEL__endlp01
__LABEL179:
	jp __LABEL162
__LABEL163:
__LABEL__endlp01:
	ld a, 3
	push af
	xor a
	push af
	ld a, 192
	push af
	xor a
	push af
	xor a
	push af
	call _sg1000putsprite
	ld hl, 768
	push hl
	ld hl, 144
	push hl
	ld hl, 6144
	push hl
	call _smsfilvrm
	ld hl, 60
	ld de, (_tmcntrs)
	or a
	sbc hl, de
	ex de, hl
	ld hl, (_score)
	add hl, de
	push hl
	ld hl, 100
	ld de, (_kpram)
	or a
	sbc hl, de
	ex de, hl
	pop hl
	add hl, de
	ld (_score), hl
	ld de, (_seed)
	ld hl, (_score)
	add hl, de
	ld (_seed), hl
	ld de, (_seed)
	ld hl, (_tmcntr)
	add hl, de
	ld (_seed), hl
	ld de, (_seed)
	ld hl, (_tmcntrs)
	add hl, de
	ld (_seed), hl
	ld hl, __LABEL__text01b - __LABEL__text01a
	push hl
	ld hl, __LABEL__text01a
	push hl
	ld hl, 9
	push hl
	ld hl, 1
	push hl
	call _print2x1
	ld hl, __LABEL__text01c - __LABEL__text01b
	push hl
	ld hl, __LABEL__text01b
	push hl
	ld hl, 9
	push hl
	ld hl, 11
	push hl
	call _print2x1
	ld hl, (_tmcntrs)
	push hl
	ld hl, 9
	push hl
	ld hl, 22
	push hl
	call _printdec2x2d2
	ld hl, 60
	ld de, (_tmcntrs)
	or a
	sbc hl, de
	push hl
	ld hl, 9
	push hl
	ld hl, 25
	push hl
	call _printdec2x2d2
	ld hl, __LABEL__text01b - __LABEL__text01a
	push hl
	ld hl, __LABEL__text01a
	push hl
	ld hl, 11
	push hl
	ld hl, 1
	push hl
	call _print2x1
	ld hl, __LABEL__text01d - __LABEL__text01c
	push hl
	ld hl, __LABEL__text01c
	push hl
	ld hl, 11
	push hl
	ld hl, 11
	push hl
	call _print2x1
	ld hl, (_kpram)
	push hl
	ld hl, 11
	push hl
	ld hl, 26
	push hl
	call _printdec2x2d2
	ld hl, 100
	ld de, (_kpram)
	or a
	sbc hl, de
	push hl
	ld hl, 11
	push hl
	ld hl, 29
	push hl
	call _printdec2x2d2
	ld hl, __LABEL__text01e - __LABEL__text01d
	push hl
	ld hl, __LABEL__text01d
	push hl
	ld hl, 13
	push hl
	ld hl, 1
	push hl
	call _print2x1
	ld hl, 60
	ld de, (_tmcntrs)
	or a
	sbc hl, de
	push hl
	ld hl, 100
	ld de, (_kpram)
	or a
	sbc hl, de
	ex de, hl
	pop hl
	add hl, de
	push hl
	ld hl, 13
	push hl
	ld hl, 18
	push hl
	call _printdec2x2d4
	ld a, (_stage)
	ld h, 10
	call __MODU8_FAST
	add a, 48
	push af
	ld hl, 13
	push hl
	ld hl, 16
	push hl
	call _putchar2x1
	ld hl, __LABEL__text01f - __LABEL__text01e
	push hl
	ld hl, __LABEL__text01e
	push hl
	ld hl, 16
	push hl
	ld hl, 1
	push hl
	call _print2x1
	ld hl, __LABEL__text01h - __LABEL__text01g
	push hl
	ld hl, __LABEL__text01g
	push hl
	ld hl, 16
	push hl
	ld hl, 7
	push hl
	call _print2x1
	ld hl, (_score)
	push hl
	ld hl, 16
	push hl
	ld hl, 13
	push hl
	call _printdec2x2d4
	ld hl, __LABEL__text01g - __LABEL__text01f
	push hl
	ld hl, __LABEL__text01f
	push hl
	ld hl, 18
	push hl
	ld hl, 1
	push hl
	call _print2x1
	ld hl, __LABEL__text01h - __LABEL__text01g
	push hl
	ld hl, __LABEL__text01g
	push hl
	ld hl, 18
	push hl
	ld hl, 6
	push hl
	call _print2x1
	ld hl, (_hiscore)
	push hl
	ld hl, 18
	push hl
	ld hl, 12
	push hl
	call _printdec2x2d4
	ld hl, __LABEL__text02h - __LABEL__text02g - 1
	push hl
	ld hl, __LABEL__text02g + 1
	push hl
	ld hl, 21
	push hl
	ld hl, 1
	push hl
	call _print2x1
	ld a, (_stage)
	inc a
	ld (_stage), a
	ld hl, 50
	push hl
	call _smswaitvbl
__LABEL180:
	ld hl, (_tmcntr)
	inc hl
	ld (_tmcntr), hl
	call _cvjoypad1b
	push af
	call _cvjoypad2b
	ld h, a
	pop af
	and h
	push af
	ld h, 15
	pop af
	and h
	ld h, a
	ld a, 15
	sub h
	ld (_invjoypad), a
	sub 1
	sbc a, a
	sub 1
	jp nc, __LABEL183
	jp __LABEL__leavetitle02
__LABEL183:
	jp __LABEL180
__LABEL181:
__LABEL__leavetitle02:
	ld de, (_seed)
	ld hl, (_tmcntr)
	add hl, de
	ld (_seed), hl
	ld a, 5
	ld hl, (_stage - 1)
	cp h
	jp nc, __LABEL185
	ld hl, (_score)
	ld (_hiscore), hl
	jp __LABEL__start01
__LABEL185:
	jp __LABEL31
__LABEL32:
__LABEL__endgm01:
	jp __LABEL__start01
__LABEL186:
	jp __LABEL186
__LABEL187:
__LABEL__numpad01:
#line 515
		defb "?61390*?2#7?548?"
#line 516
__LABEL__tilebrick01:
#line 520
		defb %00000001
		defb %00000001
		defb %00000001
		defb %11111111
		defb %00010000
		defb %00010000
		defb %00010000
		defb %11111111
#line 528
__LABEL__textsctb01:
#line 532
		defb "ScHsTmKpMz"
#line 533
__LABEL__text01:
__LABEL__text01a:
#line 538
		defb "Remaining "
#line 539
__LABEL__text01b:
#line 542
	defb "seconds:60-__=__ "
#line 543
__LABEL__text01c:
#line 546
	defb "keypresses:100-__=__ "
#line 547
__LABEL__text01d:
#line 550
	defb "Score for maze _:____ "
#line 551
__LABEL__text01e:
#line 554
		defb "Total "
#line 555
__LABEL__text01f:
#line 558
		defb "Best "
#line 559
__LABEL__text01g:
#line 562
	defb "score:____ "
#line 563
__LABEL__text01h:
__LABEL__textsctb02:
__LABEL__text02a:
#line 569
		defb " Numeric Maze "
#line 570
__LABEL__text02b:
#line 573
		defb " Original "
#line 574
__LABEL__text02c:
#line 577
		defb " Colecovision "
#line 578
__LABEL__text02d:
#line 581
		defb " version "
#line 582
__LABEL__text02e:
#line 585
		defb " Mircea Petza, 2008 "
#line 586
__LABEL__text02f:
#line 589
		defb " Paulo Silva, 2017 "
#line 590
__LABEL__text02g:
#line 593
		defb " Push any key "
#line 594
__LABEL__text02h:
	ld hl, 0
	ld b, h
	ld c, l
__END_PROGRAM:
	di
	ld hl, (__CALL_BACK__)
	ld sp, hl
	exx
	pop hl
	exx
	pop iy
	pop ix
	ei
	ret
__CALL_BACK__:
	DEFW 0
_smsvdp:
	push ix
	ld ix, 0
	add ix, sp
#line 1
		ld a, (ix+7)
		out ($bf),a
		ld a, (ix+5)
		or $80
		out ($bf),a
#line 6
_smsvdp__leave:
	ld sp, ix
	pop ix
	exx
	pop hl
	pop bc
	ex (sp), hl
	exx
	ret
_smsfilvrm:
	push ix
	ld ix, 0
	add ix, sp
#line 1
		ld l, (ix+4)
		ld a,l
		out ($bf),a
		ld h, (ix+5)
		ld a,h
		or $40
		out ($bf),a
		ld b, (ix+9)
		ld c, (ix+8)
smsfilvrmloop:
		ld a, (ix+6)
		out ($be),a
		dec bc
		ld a,b
		or c
		jp nz,smsfilvrmloop
#line 17
_smsfilvrm__leave:
	ld sp, ix
	pop ix
	exx
	pop hl
	pop bc
	pop bc
	ex (sp), hl
	exx
	ret
_smsldirvm:
	push ix
	ld ix, 0
	add ix, sp
#line 1
		ld d, (ix+5)
		ld e, (ix+4)
		ld h, (ix+7)
		ld l, (ix+6)
		ld b, (ix+9)
		ld c, (ix+8)
		ld a,e
		out ($bf),a
		ld a,d
		or $40
		out ($bf),a
smsldirvmloop:
		ld a, (hl)
		out ($be),a
		inc hl
		dec bc
		ld a,b
		or c
		jp nz,smsldirvmloop
#line 20
_smsldirvm__leave:
	ld sp, ix
	pop ix
	exx
	pop hl
	pop bc
	pop bc
	ex (sp), hl
	exx
	ret
_smsvpoke:
	push ix
	ld ix, 0
	add ix, sp
#line 1
		ld l, (ix+4)
		ld a,l
		out ($bf),a
		ld h, (ix+5)
		ld a,h
		or $40
		out ($bf),a
		ld a, (ix+6)
		out ($be),a
#line 10
_smsvpoke__leave:
	ld sp, ix
	pop ix
	exx
	pop hl
	pop bc
	ex (sp), hl
	exx
	ret
_sg1000putsprite:
	push ix
	ld ix, 0
	add ix, sp
	ld a, (ix+9)
	ld l, a
	ld h, 0
	push hl
	ld a, (ix+5)
	add a, a
	add a, a
	ld l, a
	ld h, 0
	ld de, 6912
	add hl, de
	push hl
	call _smsvpoke
	ld a, (ix+7)
	ld l, a
	ld h, 0
	push hl
	ld a, (ix+5)
	add a, a
	add a, a
	ld l, a
	ld h, 0
	ld de, 6912
	add hl, de
	inc hl
	push hl
	call _smsvpoke
	ld a, (ix+11)
	ld l, a
	ld h, 0
	push hl
	ld a, (ix+5)
	add a, a
	add a, a
	ld l, a
	ld h, 0
	ld de, 6912
	add hl, de
	inc hl
	inc hl
	push hl
	call _smsvpoke
	ld a, (ix+13)
	ld l, a
	ld h, 0
	push hl
	ld a, (ix+5)
	add a, a
	add a, a
	ld l, a
	ld h, 0
	ld de, 6912
	add hl, de
	inc hl
	inc hl
	inc hl
	push hl
	call _smsvpoke
_sg1000putsprite__leave:
	ld sp, ix
	pop ix
	exx
	pop hl
	pop bc
	pop bc
	pop bc
	pop bc
	ex (sp), hl
	exx
	ret
_smswaitvbl:
	push ix
	ld ix, 0
	add ix, sp
#line 1
		ld b, (ix+5)
		ld c, (ix+4)
		jp smswaitvblstp2
smswaitvblloop:
		dec bc
		halt
smswaitvblstp2:
		ld a,b
		or c
		jp nz,smswaitvblloop
#line 11
_smswaitvbl__leave:
	ld sp, ix
	pop ix
	exx
	pop hl
	ex (sp), hl
	exx
	ret
_smsrnd:
#line 2
		ld  d, h
		ld  e, l
		ld  a, d
		ld  h, e
		ld  l, 253
		or  a
		sbc  hl, de
		sbc  a, 0
		sbc  hl, de
		ld  d, 0
		sbc  a, d
		ld  e, a
		sbc  hl, de
		jr  nc, smsrndloop
		inc  hl
smsrndloop:
		ret
#line 19
_smsrnd__leave:
	ret
_cvjoypad1a:
#line 1
		ld a,$FF
		out ($C0),a
		nop
		nop
		in a, ($FC)
#line 6
_cvjoypad1a__leave:
	ret
_cvjoypad1b:
#line 13
		ld a,$FF
		out ($80),a
		nop
		nop
		in  a, ($FC)
#line 18
_cvjoypad1b__leave:
	ret
_cvjoypad2a:
#line 25
		ld a,$FF
		out ($C0),a
		nop
		nop
		in  a, ($FE)
#line 30
_cvjoypad2a__leave:
	ret
_cvjoypad2b:
#line 37
		ld a,$FF
		out ($80),a
		nop
		nop
		in  a, ($FE)
#line 42
_cvjoypad2b__leave:
	ret
_nops:
	push ix
	ld ix, 0
	add ix, sp
#line 61
		nop
		nop
		nop
		nop
		nop
		nop
		nop
		nop
#line 69
_nops__leave:
	ld sp, ix
	pop ix
	ret
_putchar2x1:
	push ix
	ld ix, 0
	add ix, sp
	call _nops
	call _nops
	ld a, (ix+9)
	ld l, a
	ld h, 0
	push hl
	ld l, (ix+4)
	ld h, (ix+5)
	ld de, 6144
	add hl, de
	push hl
	ld l, (ix+6)
	ld h, (ix+7)
	ld de, 32
	call __MUL16_FAST
	ex de, hl
	pop hl
	add hl, de
	push hl
	call _smsvpoke
	call _nops
	call _nops
	ld a, (ix+9)
	add a, 128
	ld l, a
	ld h, 0
	push hl
	ld l, (ix+4)
	ld h, (ix+5)
	ld de, 6176
	add hl, de
	push hl
	ld l, (ix+6)
	ld h, (ix+7)
	ld de, 32
	call __MUL16_FAST
	ex de, hl
	pop hl
	add hl, de
	push hl
	call _smsvpoke
	call _nops
	call _nops
_putchar2x1__leave:
	ld sp, ix
	pop ix
	exx
	pop hl
	pop bc
	pop bc
	ex (sp), hl
	exx
	ret
_print2x1:
	push ix
	ld ix, 0
	add ix, sp
	call _nops
	ld hl, 0
	ld (_print2x1_tllp), hl
	jp __LABEL188
__LABEL191:
	ld l, (ix+8)
	ld h, (ix+9)
	ex de, hl
	ld hl, (_print2x1_tllp)
	add hl, de
	ld b, h
	ld c, l
	ld a, (bc)
	ld l, a
	ld h, 0
	push hl
	ld l, (ix+4)
	ld h, (ix+5)
	ld de, 6144
	add hl, de
	push hl
	ld l, (ix+6)
	ld h, (ix+7)
	ld de, 32
	call __MUL16_FAST
	ex de, hl
	pop hl
	add hl, de
	ex de, hl
	ld hl, (_print2x1_tllp)
	add hl, de
	push hl
	call _smsvpoke
	ld l, (ix+8)
	ld h, (ix+9)
	ex de, hl
	ld hl, (_print2x1_tllp)
	add hl, de
	ld b, h
	ld c, l
	ld a, (bc)
	add a, 128
	ld l, a
	ld h, 0
	push hl
	ld l, (ix+4)
	ld h, (ix+5)
	ld de, 6176
	add hl, de
	push hl
	ld l, (ix+6)
	ld h, (ix+7)
	ld de, 32
	call __MUL16_FAST
	ex de, hl
	pop hl
	add hl, de
	ex de, hl
	ld hl, (_print2x1_tllp)
	add hl, de
	push hl
	call _smsvpoke
__LABEL192:
	ld hl, (_print2x1_tllp)
	inc hl
	ld (_print2x1_tllp), hl
__LABEL188:
	ld l, (ix+10)
	ld h, (ix+11)
	dec hl
	ld de, (_print2x1_tllp)
	or a
	sbc hl, de
	jp nc, __LABEL191
__LABEL190:
	call _nops
_print2x1__leave:
	ld sp, ix
	pop ix
	exx
	pop hl
	pop bc
	pop bc
	pop bc
	ex (sp), hl
	exx
	ret
_printdec2x2d4:
	push ix
	ld ix, 0
	add ix, sp
	call _nops
	ld l, (ix+8)
	ld h, (ix+9)
	ld de, 1000
	call __DIVU16
	ld de, 0
	push de
	push hl
	ld de, 0
	ld hl, 10
	call __SWAP32
	call __MODI32
	ld bc, 0
	push bc
	ld bc, 48
	push bc
	pop bc
	add hl, bc
	ex de, hl
	pop bc
	adc hl, bc
	ex de, hl
	ld a, l
	push af
	ld l, (ix+6)
	ld h, (ix+7)
	push hl
	ld l, (ix+4)
	ld h, (ix+5)
	push hl
	call _putchar2x1
	ld l, (ix+8)
	ld h, (ix+9)
	ld de, 100
	call __DIVU16
	ld de, 0
	push de
	push hl
	ld de, 0
	ld hl, 10
	call __SWAP32
	call __MODI32
	ld bc, 0
	push bc
	ld bc, 48
	push bc
	pop bc
	add hl, bc
	ex de, hl
	pop bc
	adc hl, bc
	ex de, hl
	ld a, l
	push af
	ld l, (ix+6)
	ld h, (ix+7)
	push hl
	ld l, (ix+4)
	ld h, (ix+5)
	inc hl
	push hl
	call _putchar2x1
	ld l, (ix+8)
	ld h, (ix+9)
	ld de, 10
	call __DIVU16
	ld de, 0
	push de
	push hl
	ld de, 0
	ld hl, 10
	call __SWAP32
	call __MODI32
	ld bc, 0
	push bc
	ld bc, 48
	push bc
	pop bc
	add hl, bc
	ex de, hl
	pop bc
	adc hl, bc
	ex de, hl
	ld a, l
	push af
	ld l, (ix+6)
	ld h, (ix+7)
	push hl
	ld l, (ix+4)
	ld h, (ix+5)
	inc hl
	inc hl
	push hl
	call _putchar2x1
	ld l, (ix+8)
	ld h, (ix+9)
	ld de, 10
	call __MODU16
	ld de, 48
	add hl, de
	ld a, l
	push af
	ld l, (ix+6)
	ld h, (ix+7)
	push hl
	ld l, (ix+4)
	ld h, (ix+5)
	inc hl
	inc hl
	inc hl
	push hl
	call _putchar2x1
	call _nops
_printdec2x2d4__leave:
	ld sp, ix
	pop ix
	exx
	pop hl
	pop bc
	pop bc
	ex (sp), hl
	exx
	ret
_printdec2x2d2:
	push ix
	ld ix, 0
	add ix, sp
	call _nops
	ld l, (ix+8)
	ld h, (ix+9)
	ld de, 10
	call __DIVU16
	ld de, 0
	push de
	push hl
	ld de, 0
	ld hl, 10
	call __SWAP32
	call __MODI32
	ld bc, 0
	push bc
	ld bc, 48
	push bc
	pop bc
	add hl, bc
	ex de, hl
	pop bc
	adc hl, bc
	ex de, hl
	ld a, l
	push af
	ld l, (ix+6)
	ld h, (ix+7)
	push hl
	ld l, (ix+4)
	ld h, (ix+5)
	push hl
	call _putchar2x1
	ld l, (ix+8)
	ld h, (ix+9)
	ld de, 10
	call __MODU16
	ld de, 48
	add hl, de
	ld a, l
	push af
	ld l, (ix+6)
	ld h, (ix+7)
	push hl
	ld l, (ix+4)
	ld h, (ix+5)
	inc hl
	push hl
	call _putchar2x1
	call _nops
_printdec2x2d2__leave:
	ld sp, ix
	pop ix
	exx
	pop hl
	pop bc
	pop bc
	ex (sp), hl
	exx
	ret
_filltile:
	push ix
	ld ix, 0
	add ix, sp
	call _nops
	ld l, (ix+6)
	ld h, (ix+7)
	ld (_filltile_tllp), hl
	jp __LABEL193
__LABEL196:
	ld l, (ix+8)
	ld h, (ix+9)
	push hl
	ld a, (ix+13)
	ld l, a
	ld h, 0
	push hl
	ld hl, (_filltile_tllp)
	ld de, 32
	call __MUL16_FAST
	push hl
	ld l, (ix+4)
	ld h, (ix+5)
	ex de, hl
	pop hl
	add hl, de
	ld de, 6144
	add hl, de
	push hl
	call _smsfilvrm
__LABEL197:
	ld hl, (_filltile_tllp)
	inc hl
	ld (_filltile_tllp), hl
__LABEL193:
	ld l, (ix+6)
	ld h, (ix+7)
	push hl
	ld l, (ix+10)
	ld h, (ix+11)
	ex de, hl
	pop hl
	add hl, de
	dec hl
	ld de, (_filltile_tllp)
	or a
	sbc hl, de
	jp nc, __LABEL196
__LABEL195:
	call _nops
_filltile__leave:
	ld sp, ix
	pop ix
	exx
	pop hl
	pop bc
	pop bc
	pop bc
	pop bc
	ex (sp), hl
	exx
	ret
_putarray:
	push ix
	ld ix, 0
	add ix, sp
	ld l, (ix+10)
	ld h, (ix+11)
	push hl
	ld l, (ix+6)
	ld h, (ix+7)
	push hl
	ld l, (ix+8)
	ld h, (ix+9)
	ex de, hl
	pop hl
	call __MUL16_FAST
	ex de, hl
	pop hl
	add hl, de
	push hl
	ld l, (ix+4)
	ld h, (ix+5)
	ex de, hl
	pop hl
	add hl, de
	push hl
	ld a, (ix+13)
	pop hl
	ld (hl), a
_putarray__leave:
	ld sp, ix
	pop ix
	exx
	pop hl
	pop bc
	pop bc
	pop bc
	pop bc
	ex (sp), hl
	exx
	ret
_getarray:
	push ix
	ld ix, 0
	add ix, sp
	ld l, (ix+10)
	ld h, (ix+11)
	push hl
	ld l, (ix+6)
	ld h, (ix+7)
	push hl
	ld l, (ix+8)
	ld h, (ix+9)
	ex de, hl
	pop hl
	call __MUL16_FAST
	ex de, hl
	pop hl
	add hl, de
	push hl
	ld l, (ix+4)
	ld h, (ix+5)
	ex de, hl
	pop hl
	add hl, de
	ld b, h
	ld c, l
	ld a, (bc)
	call __U8TOFREG
_getarray__leave:
	ld sp, ix
	pop ix
	exx
	pop hl
	pop bc
	pop bc
	pop bc
	ex (sp), hl
	exx
	ret
_bintiles:
	push ix
	ld ix, 0
	add ix, sp
	ld hl, 0
	push hl
	inc sp
	ld a, 128
	ld (_bintiles_tlq1), a
	ld (ix-1), 0
	jp __LABEL198
__LABEL201:
	ld a, (ix+11)
	ld (_bintiles_tvt1), a
	ld a, (ix+9)
	ld h, a
	ld a, (_bintiles_tlq1)
	and h
	or a
	jp z, __LABEL204
	ld a, (ix+13)
	ld (_bintiles_tvt1), a
__LABEL204:
	ld a, (_bintiles_tvt1)
	ld l, a
	ld h, 0
	push hl
	ld l, (ix+4)
	ld h, (ix+5)
	ld de, 6144
	add hl, de
	push hl
	ld a, (ix-1)
	ld l, a
	ld h, 0
	ex de, hl
	pop hl
	add hl, de
	push hl
	ld l, (ix+6)
	ld h, (ix+7)
	ld de, 32
	call __MUL16_FAST
	ex de, hl
	pop hl
	add hl, de
	push hl
	call _smsvpoke
	ld a, (_bintiles_tlq1)
	srl a
	ld (_bintiles_tlq1), a
__LABEL202:
	ld a, (ix-1)
	inc a
	ld (ix-1), a
__LABEL198:
	ld a, (ix-1)
	push af
	ld a, 7
	pop hl
	cp h
	jp nc, __LABEL201
__LABEL200:
_bintiles__leave:
	ld sp, ix
	pop ix
	exx
	pop hl
	pop bc
	pop bc
	pop bc
	pop bc
	ex (sp), hl
	exx
	ret
_smoothspritemove:
	push ix
	ld ix, 0
	add ix, sp
	xor a
	ld (_smoothspritemove_txq1), a
	xor a
	ld (_smoothspritemove_tyq1), a
	xor a
	ld (_smoothspritemove_tlp1), a
	jp __LABEL205
__LABEL208:
	ld a, (ix+9)
	dec a
	sub 1
	jp nc, __LABEL211
	ld a, (_smoothspritemove_tyq1)
	dec a
	ld (_smoothspritemove_tyq1), a
__LABEL211:
	ld a, (ix+9)
	sub 5
	sub 1
	jp nc, __LABEL213
	ld a, (_smoothspritemove_tyq1)
	inc a
	ld (_smoothspritemove_tyq1), a
__LABEL213:
	ld a, (ix+9)
	sub 3
	sub 1
	jp nc, __LABEL215
	ld a, (_smoothspritemove_txq1)
	inc a
	ld (_smoothspritemove_txq1), a
__LABEL215:
	ld a, (ix+9)
	sub 7
	sub 1
	jp nc, __LABEL217
	ld a, (_smoothspritemove_txq1)
	dec a
	ld (_smoothspritemove_txq1), a
__LABEL217:
	ld a, 3
	push af
	ld a, (_smoothspritemove_tlp1)
	and 3
	add a, a
	add a, a
	push af
	ld a, (ix+11)
	ld h, 16
	call __MUL8_FAST
	ld h, a
	pop af
	add a, h
	push af
	ld hl, (_ypos)
	ld de, 16
	call __MUL16_FAST
	dec hl
	push hl
	ld a, (_smoothspritemove_tyq1)
	ld l, a
	add a, a
	sbc a, a
	ld h, a
	ex de, hl
	pop hl
	add hl, de
	ld a, l
	push af
	ld hl, (_xpos)
	inc hl
	inc hl
	add hl, hl
	add hl, hl
	add hl, hl
	push hl
	ld a, (_smoothspritemove_txq1)
	ld l, a
	add a, a
	sbc a, a
	ld h, a
	ex de, hl
	pop hl
	add hl, de
	ld a, l
	push af
	xor a
	push af
	call _sg1000putsprite
	ld hl, 1
	push hl
	call _smswaitvbl
	ld hl, (_tmcntr)
	inc hl
	ld (_tmcntr), hl
__LABEL209:
	ld a, (_smoothspritemove_tlp1)
	inc a
	ld (_smoothspritemove_tlp1), a
__LABEL205:
	ld a, 8
	ld hl, (_smoothspritemove_tlp1 - 1)
	cp h
	jp nc, __LABEL208
__LABEL207:
_smoothspritemove__leave:
	ld sp, ix
	pop ix
	exx
	pop hl
	pop bc
	pop bc
	pop bc
	ex (sp), hl
	exx
	ret
#line 1 "mul16.asm"
__MUL16:	; Mutiplies HL with the last value stored into de stack
				; Works for both signed and unsigned
	
			PROC
	
			LOCAL __MUL16LOOP
	        LOCAL __MUL16NOADD
			
			ex de, hl
			pop hl		; Return address
			ex (sp), hl ; CALLEE caller convention
	
;;__MUL16_FAST:	; __FASTCALL ENTRY: HL = 1st operand, DE = 2nd Operand
	;;		ld c, h
	;;		ld a, l	 ; C,A => 1st Operand
	;;
	;;		ld hl, 0 ; Accumulator
	;;		ld b, 16
	;;
;;__MUL16LOOP:
	;;		sra c	; C,A >> 1  (Arithmetic)
	;;		rra
	;;
	;;		jr nc, __MUL16NOADD
	;;		add hl, de
	;;
;;__MUL16NOADD:
	;;		sla e
	;;		rl d
	;;			
	;;		djnz __MUL16LOOP
	
__MUL16_FAST:
	        ld b, 16
	        ld a, d
	        ld c, e
	        ex de, hl
	        ld hl, 0
	
__MUL16LOOP:
	        add hl, hl  ; hl << 1
	        sla c
	        rla         ; a,c << 1
	        jp nc, __MUL16NOADD
	        add hl, de
	
__MUL16NOADD:
	        djnz __MUL16LOOP
	
			ret	; Result in hl (16 lower bits)
	
			ENDP
	
#line 4970 "numericmaze.bas"
#line 1 "u32tofreg.asm"
#line 1 "neg32.asm"
__ABS32:
		bit 7, d
		ret z
	
__NEG32: ; Negates DEHL (Two's complement)
		ld a, l
		cpl
		ld l, a
	
		ld a, h
		cpl
		ld h, a
	
		ld a, e
		cpl
		ld e, a
		
		ld a, d
		cpl
		ld d, a
	
		inc l
		ret nz
	
		inc h
		ret nz
	
		inc de
		ret
	
#line 2 "u32tofreg.asm"
__I8TOFREG:
		ld l, a
		rlca
		sbc a, a	; A = SGN(A)
		ld h, a
		ld e, a
		ld d, a
	
__I32TOFREG:	; Converts a 32bit signed integer (stored in DEHL)
					; to a Floating Point Number returned in (A ED CB)
	
		ld a, d
		or a		; Test sign
	
		jp p, __U32TOFREG	; It was positive, proceed as 32bit unsigned
	
		call __NEG32		; Convert it to positive
		call __U32TOFREG	; Convert it to Floating point
	
		set 7, e			; Put the sign bit (negative) in the 31bit of mantissa
		ret
	
__U8TOFREG:
					; Converts an unsigned 8 bit (A) to Floating point
		ld l, a
		ld h, 0
		ld e, h
		ld d, h
	
__U32TOFREG:	; Converts an unsigned 32 bit integer (DEHL)
					; to a Floating point number returned in A ED CB
	
	    PROC
	
	    LOCAL __U32TOFREG_END
	
		ld a, d
		or e
		or h
		or l
	    ld b, d
		ld c, e		; Returns 00 0000 0000 if ZERO
		ret z
	
		push de
		push hl
	
		exx
		pop de  ; Loads integer into B'C' D'E' 
		pop bc
		exx
	
		ld l, 128	; Exponent
		ld bc, 0	; DEBC = 0
		ld d, b
		ld e, c
	
__U32TOFREG_LOOP: ; Also an entry point for __F16TOFREG
		exx
		ld a, d 	; B'C'D'E' == 0 ?
		or e
		or b
		or c
		jp z, __U32TOFREG_END	; We are done
	
		srl b ; Shift B'C' D'E' >> 1, output bit stays in Carry
		rr c
		rr d
		rr e
		exx
	
		rr e ; Shift EDCB >> 1, inserting the carry on the left
		rr d
		rr c
		rr b
	
		inc l	; Increment exponent
		jp __U32TOFREG_LOOP
	
	
__U32TOFREG_END:
		exx
	    ld a, l     ; Puts the exponent in a
		res 7, e	; Sets the sign bit to 0 (positive)
	
		ret
	    ENDP
	
#line 4971 "numericmaze.bas"
#line 1 "mul8.asm"
__MUL8:		; Performs 8bit x 8bit multiplication
		PROC
	
		;LOCAL __MUL8A
		LOCAL __MUL8LOOP
		LOCAL __MUL8B
				; 1st operand (byte) in A, 2nd operand into the stack (AF)
		pop hl	; return address
		ex (sp), hl ; CALLE convention
	
;;__MUL8_FAST: ; __FASTCALL__ entry
	;;	ld e, a
	;;	ld d, 0
	;;	ld l, d
	;;	
	;;	sla h	
	;;	jr nc, __MUL8A
	;;	ld l, e
	;;
;;__MUL8A:
	;;
	;;	ld b, 7
;;__MUL8LOOP:
	;;	add hl, hl
	;;	jr nc, __MUL8B
	;;
	;;	add hl, de
	;;
;;__MUL8B:
	;;	djnz __MUL8LOOP
	;;
	;;	ld a, l ; result = A and HL  (Truncate to lower 8 bits)
	
__MUL8_FAST: ; __FASTCALL__ entry, a = a * h (8 bit mul) and Carry
	
	    ld b, 8
	    ld l, a
	    xor a
	
__MUL8LOOP:
	    add a, a ; a *= 2
	    sla l
	    jp nc, __MUL8B
	    add a, h
	
__MUL8B:
	    djnz __MUL8LOOP
		
		ret		; result = HL
		ENDP
	
#line 4972 "numericmaze.bas"
#line 1 "div32.asm"
	
	
				 ; ---------------------------------------------------------
__DIVU32:    ; 32 bit unsigned division
	             ; DEHL = Dividend, Stack Top = Divisor
	             ; OPERANDS P = Dividend, Q = Divisor => OPERATION => P / Q
				 ;
				 ; Changes A, BC DE HL B'C' D'E' H'L'
				 ; ---------------------------------------------------------
	        exx
	        pop hl   ; return address
	        pop de   ; low part
	        ex (sp), hl ; CALLEE Convention ; H'L'D'E' => Dividend
	
__DIVU32START: ; Performs D'E'H'L' / HLDE
	        ; Now switch to DIVIDEND = B'C'BC / DIVISOR = D'E'DE (A / B)
	        push de ; push Lowpart(Q)
			ex de, hl	; DE = HL
	        ld hl, 0
	        exx
	        ld b, h
	        ld c, l
	        pop hl
	        push de
	        ex de, hl
	        ld hl, 0        ; H'L'HL = 0
	        exx
	        pop bc          ; Pop HightPart(B) => B = B'C'BC
	        exx
	
	        ld a, 32 ; Loop count
	
__DIV32LOOP:
	        sll c  ; B'C'BC << 1 ; Output most left bit to carry
	        rl  b
	        exx
	        rl c
	        rl b
	        exx
	
	        adc hl, hl
	        exx
	        adc hl, hl
	        exx
	
	        sbc hl,de
	        exx
	        sbc hl,de
	        exx
	        jp nc, __DIV32NOADD	; use JP inside a loop for being faster
	
	        add hl, de
	        exx
	        adc hl, de
	        exx
	        dec bc
	
__DIV32NOADD:
	        dec a
	        jp nz, __DIV32LOOP	; use JP inside a loop for being faster
	        ; At this point, quotient is stored in B'C'BC and the reminder in H'L'HL
	
	        push hl
	        exx
	        pop de
	        ex de, hl ; D'E'H'L' = 32 bits modulus
	        push bc
	        exx
	        pop de    ; DE = B'C'
	        ld h, b
	        ld l, c   ; DEHL = quotient D'E'H'L' = Modulus
	
	        ret     ; DEHL = quotient, D'E'H'L' = Modulus
	
	
	
__MODU32:    ; 32 bit modulus for 32bit unsigned division
	             ; DEHL = Dividend, Stack Top = Divisor (DE, HL)
	
	        exx
	        pop hl   ; return address
	        pop de   ; low part
	        ex (sp), hl ; CALLEE Convention ; H'L'D'E' => Dividend
	
	        call __DIVU32START	; At return, modulus is at D'E'H'L'
	
__MODU32START:
	
			exx
			push de
			push hl
	
			exx 
			pop hl
			pop de
	
			ret
	
	
__DIVI32:    ; 32 bit signed division
	             ; DEHL = Dividend, Stack Top = Divisor
	             ; A = Dividend, B = Divisor => A / B
	        exx
	        pop hl   ; return address
	        pop de   ; low part
	        ex (sp), hl ; CALLEE Convention ; H'L'D'E' => Dividend
	
__DIVI32START:
			exx
			ld a, d	 ; Save sign
			ex af, af'
			bit 7, d ; Negative?
			call nz, __NEG32 ; Negates DEHL
	
			exx		; Now works with H'L'D'E'
			ex af, af'
			xor h
			ex af, af'  ; Stores sign of the result for later
	
			bit 7, h ; Negative?
			ex de, hl ; HLDE = DEHL
			call nz, __NEG32
			ex de, hl 
	
			call __DIVU32START
			ex af, af' ; Recovers sign
			and 128	   ; positive?
			ret z
	
			jp __NEG32 ; Negates DEHL and returns from there
			
			
__MODI32:	; 32bits signed division modulus
			exx
	        pop hl   ; return address
	        pop de   ; low part
	        ex (sp), hl ; CALLEE Convention ; H'L'D'E' => Dividend
	
			call __DIVI32START
			jp __MODU32START		
	
#line 4973 "numericmaze.bas"
#line 1 "and8.asm"
	; FASTCALL boolean and 8 version.
	; result in Accumulator (0 False, not 0 True)
; __FASTCALL__ version (operands: A, H)
	; Performs 8bit and 8bit and returns the boolean
	
__AND8:
		or a
		ret z
		ld a, h
		ret 
	
#line 4974 "numericmaze.bas"
#line 1 "div8.asm"
				; --------------------------------
__DIVU8:	; 8 bit unsigned integer division 
				; Divides (Top of stack, High Byte) / A
		pop hl	; --------------------------------
		ex (sp), hl	; CALLEE
	
__DIVU8_FAST:	; Does A / H
		ld l, h
		ld h, a		; At this point do H / L
	
		ld b, 8
		xor a		; A = 0, Carry Flag = 0
		
__DIV8LOOP:
		sla	h		
		rla			
		cp	l		
		jr	c, __DIV8NOSUB
		sub	l		
		inc	h		
	
__DIV8NOSUB:	
		djnz __DIV8LOOP
	
		ld	l, a		; save remainder
		ld	a, h		; 
		
		ret			; a = Quotient, 
	
	
					; --------------------------------
__DIVI8:		; 8 bit signed integer division Divides (Top of stack) / A
		pop hl		; --------------------------------
		ex (sp), hl
	
__DIVI8_FAST:
		ld e, a		; store operands for later
		ld c, h
	
		or a		; negative?
		jp p, __DIV8A
		neg			; Make it positive
	
__DIV8A:
		ex af, af'
		ld a, h
		or a
		jp p, __DIV8B
		neg
		ld h, a		; make it positive
	
__DIV8B:
		ex af, af'
	
		call __DIVU8_FAST
	
		ld a, c
		xor l		; bit 7 of A = 1 if result is negative
	
		ld a, h		; Quotient
		ret p		; return if positive	
	
		neg
		ret
		
	
__MODU8:		; 8 bit module. REturns A mod (Top of stack) (unsigned operands)
		pop hl
		ex (sp), hl	; CALLEE
	
__MODU8_FAST:	; __FASTCALL__ entry
		call __DIVU8_FAST
		ld a, l		; Remainder
	
		ret		; a = Modulus
	
	
__MODI8:		; 8 bit module. REturns A mod (Top of stack) (For singed operands)
		pop hl
		ex (sp), hl	; CALLEE
	
__MODI8_FAST:	; __FASTCALL__ entry
		call __DIVI8_FAST
		ld a, l		; remainder
	
		ret		; a = Modulus
	
#line 4975 "numericmaze.bas"
#line 1 "div16.asm"
	; 16 bit division and modulo functions 
	; for both signed and unsigned values
	
#line 1 "neg16.asm"
	; Negates HL value (16 bit)
__ABS16:
		bit 7, h
		ret z
	
__NEGHL:
		ld a, l			; HL = -HL
		cpl
		ld l, a
		ld a, h
		cpl
		ld h, a
		inc hl
		ret
	
#line 5 "div16.asm"
	
__DIVU16:    ; 16 bit unsigned division
	             ; HL = Dividend, Stack Top = Divisor
	
		;   -- OBSOLETE ; Now uses FASTCALL convention
		;   ex de, hl
	    ;	pop hl      ; Return address
	    ;	ex (sp), hl ; CALLEE Convention
	
__DIVU16_FAST:
	    ld a, h
	    ld c, l
	    ld hl, 0
	    ld b, 16
	
__DIV16LOOP:
	    sll c
	    rla
	    adc hl,hl
	    sbc hl,de
	    jr  nc, __DIV16NOADD
	    add hl,de
	    dec c
	
__DIV16NOADD:
	    djnz __DIV16LOOP
	
	    ex de, hl
	    ld h, a
	    ld l, c
	
	    ret     ; HL = quotient, DE = Mudulus
	
	
	
__MODU16:    ; 16 bit modulus
	             ; HL = Dividend, Stack Top = Divisor
	
	    ;ex de, hl
	    ;pop hl
	    ;ex (sp), hl ; CALLEE Convention
	
	    call __DIVU16_FAST
	    ex de, hl	; hl = reminder (modulus)
					; de = quotient
	
	    ret
	
	
__DIVI16:	; 16 bit signed division
		;	--- The following is OBSOLETE ---
		;	ex de, hl
		;	pop hl
		;	ex (sp), hl 	; CALLEE Convention
	
__DIVI16_FAST:
		ld a, d
		xor h
		ex af, af'		; BIT 7 of a contains result
	
		bit 7, d		; DE is negative?
		jr z, __DIVI16A	
	
		ld a, e			; DE = -DE
		cpl
		ld e, a
		ld a, d
		cpl
		ld d, a
		inc de
	
__DIVI16A:
		bit 7, h		; HL is negative?
		call nz, __NEGHL
	
__DIVI16B:
		call __DIVU16_FAST
		ex af, af'
	
		or a	
		ret p	; return if positive
	    jp __NEGHL
	
		
__MODI16:    ; 16 bit modulus
	             ; HL = Dividend, Stack Top = Divisor
	
	    ;ex de, hl
	    ;pop hl
	    ;ex (sp), hl ; CALLEE Convention
	
	    call __DIVI16_FAST
	    ex de, hl	; hl = reminder (modulus)
					; de = quotient
	
	    ret
	
#line 4976 "numericmaze.bas"
#line 1 "ftou32reg.asm"
	
	
__FTOU32REG:	; Converts a Float to (un)signed 32 bit integer (NOTE: It's ALWAYS 32 bit signed)
					; Input FP number in A EDCB (A exponent, EDCB mantissa)
				; Output: DEHL 32 bit number (signed)
		PROC
	
		LOCAL __IS_FLOAT
	
		or a
		jr nz, __IS_FLOAT 
		; Here if it is a ZX ROM Integer
	
		ld h, c
		ld l, d
	ld a, e	 ; Takes sign: FF = -, 0 = +
		ld de, 0
		inc a
		jp z, __NEG32	; Negates if negative
		ret
	
__IS_FLOAT:  ; Jumps here if it is a true floating point number
		ld h, e	
		push hl  ; Stores it for later (Contains Sign in H)
	
		push de
		push bc
	
		exx
		pop de   ; Loads mantissa into C'B' E'D' 
		pop bc	 ; 
	
		set 7, c ; Highest mantissa bit is always 1
		exx
	
		ld hl, 0 ; DEHL = 0
		ld d, h
		ld e, l
	
		;ld a, c  ; Get exponent
		sub 128  ; Exponent -= 128
		jr z, __FTOU32REG_END	; If it was <= 128, we are done (Integers must be > 128)
		jr c, __FTOU32REG_END	; It was decimal (0.xxx). We are done (return 0)
	
		ld b, a  ; Loop counter = exponent - 128
	
__FTOU32REG_LOOP:
		exx 	 ; Shift C'B' E'D' << 1, output bit stays in Carry
		sla d
		rl e
		rl b
		rl c
	
	    exx		 ; Shift DEHL << 1, inserting the carry on the right
		rl l
		rl h
		rl e
		rl d
	
		djnz __FTOU32REG_LOOP
	
__FTOU32REG_END:
		pop af   ; Take the sign bit
		or a	 ; Sets SGN bit to 1 if negative
		jp m, __NEG32 ; Negates DEHL
		
		ret
	
		ENDP
	
	
__FTOU8:	; Converts float in C ED LH to Unsigned byte in A
		call __FTOU32REG
		ld a, l
		ret
	
#line 4977 "numericmaze.bas"
#line 1 "eq16.asm"
__EQ16:	; Test if 16bit values HL == DE
		; Returns result in A: 0 = False, FF = True
			or a	; Reset carry flag
			sbc hl, de 
	
			ld a, h
			or l
			sub 1  ; sets carry flag only if a = 0
			sbc a, a
			
			ret
	
#line 4978 "numericmaze.bas"
#line 1 "swap32.asm"
	; Exchanges current DE HL with the
	; ones in the stack
	
__SWAP32:
		pop bc ; Return address
	
		exx
		pop hl	; exx'
		pop de
	
		exx
		push de ; exx
		push hl
	
		exx		; exx '
		push de
		push hl
		
		exx		; exx
		pop hl
		pop de
	
		push bc
	
		ret
	
#line 4979 "numericmaze.bas"
	
ZXBASIC_USER_DATA:
	_eee EQU 28688
	_seed EQU 28690
	_ee0 EQU 28692
	_ee1 EQU 28694
	_ee2 EQU 28696
	_ee3 EQU 28698
	_ee4 EQU 28700
	_ee5 EQU 28702
	_kprs EQU 28704
	_xpos EQU 28706
	_ypos EQU 28708
	_xposo EQU 28710
	_yposo EQU 28712
	_yposf EQU 28714
	_tmcntr EQU 28716
	_tmcntrs EQU 28718
	_arrvl EQU 28720
	_kpram EQU 28722
	_score EQU 28724
	_hiscore EQU 28726
	_debug EQU 28732
	_pldirct EQU 28733
	_stage EQU 28734
	_invjoypad EQU 28735
	_print2x1_tllp EQU 28686
	_filltile_tllp EQU 28686
	_bintiles_tlq1 EQU 28672
	_bintiles_tvt1 EQU 28674
	_smoothspritemove_tlp1 EQU 28672
	_smoothspritemove_txq1 EQU 28673
	_smoothspritemove_tyq1 EQU 28674
	; Defines DATA END --> HEAP size is 0
ZXBASIC_USER_DATA_END EQU ZXBASIC_MEM_HEAP
	; Defines USER DATA Length in bytes
ZXBASIC_USER_DATA_LEN EQU ZXBASIC_USER_DATA_END - ZXBASIC_USER_DATA
	END
