	org 105
__START_PROGRAM:
	di
	push ix
	push iy
	exx
	push hl
	exx
	ld hl, 0
	add hl, sp
	ld (__CALL_BACK__), hl
	ei
#line 0
		ld sp, $dff0
#line 1
	jp __LABEL__typeface01end
__LABEL__typeface01:
#line 6
		defb %00000000
		defb %00000000
		defb %00000000
		defb %00000000
		defb %00000000
		defb %00000000
		defb %00000000
		defb %00000000
		defb %00011000
		defb %00111100
		defb %00111100
		defb %00011000
		defb %00011000
		defb %00000000
		defb %00011000
		defb %00000000
		defb %01101100
		defb %01101100
		defb %00100100
		defb %01001000
		defb %00000000
		defb %00000000
		defb %00000000
		defb %00000000
		defb %01101100
		defb %01101100
		defb %11111110
		defb %01101100
		defb %11111110
		defb %01101100
		defb %01101100
		defb %00000000
		defb %00011000
		defb %00111110
		defb %01100000
		defb %00111100
		defb %00000110
		defb %01111100
		defb %00011000
		defb %00000000
		defb %00000000
		defb %11000110
		defb %11001100
		defb %00011000
		defb %00110000
		defb %01100110
		defb %11000110
		defb %00000000
		defb %00111000
		defb %01101100
		defb %00111000
		defb %01110110
		defb %11011100
		defb %11001100
		defb %01110110
		defb %00000000
		defb %00001100
		defb %00001100
		defb %00011000
		defb %00000000
		defb %00000000
		defb %00000000
		defb %00000000
		defb %00000000
		defb %00001100
		defb %00011000
		defb %00110000
		defb %00110000
		defb %00110000
		defb %00011000
		defb %00001100
		defb %00000000
		defb %00110000
		defb %00011000
		defb %00001100
		defb %00001100
		defb %00001100
		defb %00011000
		defb %00110000
		defb %00000000
		defb %00000000
		defb %00000000
		defb %01100110
		defb %00111100
		defb %11111111
		defb %00111100
		defb %01100110
		defb %00000000
		defb %00000000
		defb %00000000
		defb %00011000
		defb %00011000
		defb %01111110
		defb %00011000
		defb %00011000
		defb %00000000
		defb %00000000
		defb %00000000
		defb %00000000
		defb %00000000
		defb %00011000
		defb %00001000
		defb %00010000
		defb %00000000
		defb %00000000
		defb %00000000
		defb %00000000
		defb %00000000
		defb %01111110
		defb %00000000
		defb %00000000
		defb %00000000
		defb %00000000
		defb %00000000
		defb %00000000
		defb %00000000
		defb %00000000
		defb %00011000
		defb %00011000
		defb %00000000
		defb %00000011
		defb %00000110
		defb %00001100
		defb %00011000
		defb %00110000
		defb %01100000
		defb %11000000
		defb %00000000
		defb %00111000
		defb %01001100
		defb %11000110
		defb %11000110
		defb %11000110
		defb %01100100
		defb %00111000
		defb %00000000
		defb %00011000
		defb %00111000
		defb %00011000
		defb %00011000
		defb %00011000
		defb %00011000
		defb %01111110
		defb %00000000
		defb %01111100
		defb %11000110
		defb %00001110
		defb %00111100
		defb %01111000
		defb %11100000
		defb %11111110
		defb %00000000
		defb %11111110
		defb %00001100
		defb %00011000
		defb %00111100
		defb %00000110
		defb %11000110
		defb %01111100
		defb %00000000
		defb %00011100
		defb %00111100
		defb %01101100
		defb %11001100
		defb %11111110
		defb %00001100
		defb %00001100
		defb %00000000
		defb %11111100
		defb %11000000
		defb %11111100
		defb %00000110
		defb %00000110
		defb %11000110
		defb %01111100
		defb %00000000
		defb %00111100
		defb %01100000
		defb %11000000
		defb %11111100
		defb %11000110
		defb %11000110
		defb %01111100
		defb %00000000
		defb %11111110
		defb %00000110
		defb %00001100
		defb %00011000
		defb %00110000
		defb %00110000
		defb %00110000
		defb %00000000
		defb %01111000
		defb %11000100
		defb %11100100
		defb %01111000
		defb %10011110
		defb %10000110
		defb %01111100
		defb %00000000
		defb %01111100
		defb %11000110
		defb %11000110
		defb %01111110
		defb %00000110
		defb %00001100
		defb %01111000
		defb %00000000
		defb %00000000
		defb %00000000
		defb %00011000
		defb %00011000
		defb %00000000
		defb %00011000
		defb %00011000
		defb %00000000
		defb %00000000
		defb %00011000
		defb %00011000
		defb %00000000
		defb %00011000
		defb %00001000
		defb %00010000
		defb %00000000
		defb %00001100
		defb %00011000
		defb %00110000
		defb %01100000
		defb %00110000
		defb %00011000
		defb %00001100
		defb %00000000
		defb %00000000
		defb %00000000
		defb %00000000
		defb %01111110
		defb %00000000
		defb %01111110
		defb %00000000
		defb %00000000
		defb %00110000
		defb %00011000
		defb %00001100
		defb %00000110
		defb %00001100
		defb %00011000
		defb %00110000
		defb %00000000
		defb %01111100
		defb %11000110
		defb %00000110
		defb %00011100
		defb %00110000
		defb %00000000
		defb %00110000
		defb %00000000
		defb %01111100
		defb %11000110
		defb %11011110
		defb %11011110
		defb %11011110
		defb %11000000
		defb %01111100
		defb %00000000
		defb %00111000
		defb %01101100
		defb %11000110
		defb %11000110
		defb %11111110
		defb %11000110
		defb %11000110
		defb %00000000
		defb %11111100
		defb %11000110
		defb %11000110
		defb %11111100
		defb %11000110
		defb %11000110
		defb %11111100
		defb %00000000
		defb %00111100
		defb %01100110
		defb %11000000
		defb %11000000
		defb %11000000
		defb %01100110
		defb %00111100
		defb %00000000
		defb %11111000
		defb %11001100
		defb %11000110
		defb %11000110
		defb %11000110
		defb %11001100
		defb %11111000
		defb %00000000
		defb %11111110
		defb %11000000
		defb %11000000
		defb %11111100
		defb %11000000
		defb %11000000
		defb %11111110
		defb %00000000
		defb %11111110
		defb %11000000
		defb %11000000
		defb %11111100
		defb %11000000
		defb %11000000
		defb %11000000
		defb %00000000
		defb %00111110
		defb %01100000
		defb %11000000
		defb %11001110
		defb %11000110
		defb %01100110
		defb %00111110
		defb %00000000
		defb %11000110
		defb %11000110
		defb %11000110
		defb %11111110
		defb %11000110
		defb %11000110
		defb %11000110
		defb %00000000
		defb %01111110
		defb %00011000
		defb %00011000
		defb %00011000
		defb %00011000
		defb %00011000
		defb %01111110
		defb %00000000
		defb %00000110
		defb %00000110
		defb %00000110
		defb %00000110
		defb %11000110
		defb %11000110
		defb %01111100
		defb %00000000
		defb %11000110
		defb %11001100
		defb %11011000
		defb %11110000
		defb %11111000
		defb %11011100
		defb %11001110
		defb %00000000
		defb %11000000
		defb %11000000
		defb %11000000
		defb %11000000
		defb %11000000
		defb %11000000
		defb %11111110
		defb %00000000
		defb %11000110
		defb %11101110
		defb %11111110
		defb %11111110
		defb %11010110
		defb %11000110
		defb %11000110
		defb %00000000
		defb %11000110
		defb %11100110
		defb %11110110
		defb %11111110
		defb %11011110
		defb %11001110
		defb %11000110
		defb %00000000
		defb %01111100
		defb %11000110
		defb %11000110
		defb %11000110
		defb %11000110
		defb %11000110
		defb %01111100
		defb %00000000
		defb %11111100
		defb %11000110
		defb %11000110
		defb %11000110
		defb %11111100
		defb %11000000
		defb %11000000
		defb %00000000
		defb %01111100
		defb %11000110
		defb %11000110
		defb %11000110
		defb %11011110
		defb %11001100
		defb %01111010
		defb %00000000
		defb %11111100
		defb %11000110
		defb %11000110
		defb %11000110
		defb %11111000
		defb %11001100
		defb %11000110
		defb %00000000
		defb %01111000
		defb %11001100
		defb %11000000
		defb %01111100
		defb %00000110
		defb %11000110
		defb %01111100
		defb %00000000
		defb %01111110
		defb %00011000
		defb %00011000
		defb %00011000
		defb %00011000
		defb %00011000
		defb %00011000
		defb %00000000
		defb %11000110
		defb %11000110
		defb %11000110
		defb %11000110
		defb %11000110
		defb %11000110
		defb %01111100
		defb %00000000
		defb %11000110
		defb %11000110
		defb %11000110
		defb %11101110
		defb %01111100
		defb %00111000
		defb %00010000
		defb %00000000
		defb %11000110
		defb %11000110
		defb %11000110
		defb %11010110
		defb %11111110
		defb %11101110
		defb %11000110
		defb %00000000
		defb %11000110
		defb %11101110
		defb %01111100
		defb %00111000
		defb %01111100
		defb %11101110
		defb %11000110
		defb %00000000
		defb %01100110
		defb %01100110
		defb %01100110
		defb %00111100
		defb %00011000
		defb %00011000
		defb %00011000
		defb %00000000
		defb %11111110
		defb %00001110
		defb %00011100
		defb %00111000
		defb %01110000
		defb %11100000
		defb %11111110
		defb %00000000
		defb %00000000
		defb %00000000
		defb %00000000
		defb %00111100
		defb %00111100
		defb %00000000
		defb %00000000
		defb %00000000
		defb %00000000
		defb %00000000
		defb %00000000
		defb %01111110
		defb %01111110
		defb %00000000
		defb %00000000
		defb %00000000
		defb %00000000
		defb %00000000
		defb %00000000
		defb %11110011
		defb %10101010
		defb %10101010
		defb %10101011
		defb %00000010
		defb %00000000
		defb %00010000
		defb %00010000
		defb %10011100
		defb %01010010
		defb %01010010
		defb %10010010
		defb %00000000
		defb %00111100
		defb %01000010
		defb %10111001
		defb %10000101
		defb %10000101
		defb %10111001
		defb %01000010
		defb %00111100
#line 518
__LABEL__typeface01end:
	jp __LABEL__cloud01end
__LABEL__cloud01:
#line 5
		defb %00000000
		defb %00000000
		defb %00000000
		defb %00000001
		defb %00000001
		defb %01111101
		defb %01111110
		defb %10111111
		defb %00000000
		defb %00000000
		defb %00000000
		defb %00001110
		defb %11110011
		defb %11111110
		defb %11111111
		defb %11111111
		defb %00000000
		defb %00000000
		defb %00000001
		defb %00001110
		defb %01011001
		defb %10001110
		defb %11101110
		defb %00111111
		defb %00000000
		defb %00000000
		defb %10100000
		defb %00000000
		defb %00000000
		defb %00000000
		defb %00000000
		defb %11000000
		defb %00000000
		defb %00000110
		defb %00001111
		defb %00001111
		defb %00001000
		defb %00000001
		defb %00000001
		defb %00011111
		defb %11111111
		defb %01111111
		defb %00101111
		defb %00011111
		defb %10111111
		defb %01111111
		defb %11111111
		defb %11111111
		defb %11111111
		defb %11111111
		defb %11111111
		defb %11111111
		defb %11111111
		defb %11111111
		defb %11111110
		defb %00111100
		defb %11111101
		defb %11111111
		defb %11110111
		defb %11101111
		defb %11001111
		defb %11000000
		defb %00000011
		defb %00000000
		defb %11110011
		defb %11111101
		defb %11111011
		defb %11111001
		defb %11110110
		defb %01111100
		defb %11100000
		defb %00000000
		defb %11100000
		defb %10010000
		defb %11111100
		defb %11110000
		defb %00001100
		defb %00000000
		defb %00000000
		defb %00000000
#line 85
__LABEL__cloud01end:
	jp __LABEL__mountains01end
__LABEL__mountains01:
#line 4
		defb %00000000
		defb %00000000
		defb %00000000
		defb %00000000
		defb %00000000
		defb %00001110
		defb %00111111
		defb %11111111
		defb %00000000
		defb %00000000
		defb %00000000
		defb %00000000
		defb %00000000
		defb %00000001
		defb %10000011
		defb %11111111
		defb %00000000
		defb %00000000
		defb %00000000
		defb %00000000
		defb %11000000
		defb %11110000
		defb %11111100
		defb %11111111
		defb %00000000
		defb %00000000
		defb %00000000
		defb %00000000
		defb %00001110
		defb %00111111
		defb %11111111
		defb %11111111
		defb %00000000
		defb %00000000
		defb %00000000
		defb %00000000
		defb %00000000
		defb %00011000
		defb %10111110
		defb %11111111
		defb %00000000
		defb %00000000
		defb %00000000
		defb %00000000
		defb %00000001
		defb %11000111
		defb %11111111
		defb %11111111
		defb %00000000
		defb %00000000
		defb %00000000
		defb %00000000
		defb %00000000
		defb %00000000
		defb %00000011
		defb %00111100
		defb %00000000
		defb %00000000
		defb %00000000
		defb %00000000
		defb %00000000
		defb %00111111
		defb %11111111
		defb %11000011
		defb %00000000
		defb %00000000
		defb %00000000
		defb %10111100
		defb %11111110
		defb %11011111
		defb %11111111
		defb %00010001
		defb %00000000
		defb %00000011
		defb %00001111
		defb %10111110
		defb %11110011
		defb %11101111
		defb %11111111
		defb %00001110
		defb %00000000
		defb %11000000
		defb %11100000
		defb %11111111
		defb %11111111
		defb %11111111
		defb %11111111
		defb %10011000
		defb %00000000
		defb %00000000
		defb %00000000
		defb %11000110
		defb %11111111
		defb %11111111
		defb %11111111
		defb %00010000
		defb %00000000
		defb %00000000
		defb %11000000
		defb %11111000
		defb %11111100
		defb %11111110
		defb %11111111
		defb %00100100
		defb %00000000
		defb %00000000
		defb %00000000
		defb %01111000
		defb %11111101
		defb %11011111
		defb %11111111
		defb %10001000
		defb %00000000
		defb %00000000
		defb %00000000
		defb %00000000
		defb %00000000
		defb %00000000
		defb %11000000
		defb %11110000
		defb %00000000
		defb %00000000
		defb %00000000
		defb %00000000
		defb %00000000
		defb %00000000
		defb %00000000
		defb %00000000
#line 132
__LABEL__mountains01attr:
#line 137
		defb $64,$64,$64,$64,$64,$64,$6C,$6C
		defb $64,$64,$64,$64,$64,$64,$6C,$6C
		defb $64,$64,$64,$64,$64,$6E,$6C,$6C
		defb $64,$64,$64,$6E,$6E,$6E,$6C,$6C
		defb $64,$64,$64,$64,$64,$64,$6C,$6C
		defb $64,$64,$64,$64,$64,$6E,$6C,$6C
		defb $64,$64,$64,$64,$64,$64,$6C,$6C
		defb $64,$64,$64,$64,$6E,$6E,$6C,$6C
		defb $64,$64,$64,$64,$64,$64,$64,$6C
		defb $64,$64,$64,$64,$64,$64,$6C,$6C
#line 147
__LABEL__mountains01end:
	jp __LABEL__rails01end
__LABEL__rails01:
#line 2
		defb %00000000
		defb %00000000
		defb %00000000
		defb %00000000
		defb %00000000
		defb %00000000
		defb %00000000
		defb %00000000
		defb %00100000
		defb %00100000
		defb %00100000
		defb %00100000
		defb %00010000
		defb %00010000
		defb %00010000
		defb %00010000
		defb %00011000
		defb %00011000
		defb %00001000
		defb %00001000
		defb %00001100
		defb %00001100
		defb %00001100
		defb %00001100
		defb %00000110
		defb %00000110
		defb %00000110
		defb %00000110
		defb %00000111
		defb %00000111
		defb %00000011
		defb %00000011
		defb %00000000
		defb %00000000
		defb %00000000
		defb %00000000
		defb %00000000
		defb %00000000
		defb %00000000
		defb %00000000
		defb %00000100
		defb %00000100
		defb %00000100
		defb %00000100
		defb %00001000
		defb %00001000
		defb %00001000
		defb %00001000
		defb %00011000
		defb %00011000
		defb %00010000
		defb %00010000
		defb %00110000
		defb %00110000
		defb %00110000
		defb %00110000
		defb %01100000
		defb %01100000
		defb %01100000
		defb %01100000
		defb %11100000
		defb %11100000
		defb %11000000
		defb %11000000
		defb %00010000
		defb %00010000
		defb %00010000
		defb %00010000
		defb %00010000
		defb %00010000
		defb %00010000
		defb %00010000
		defb %00010000
		defb %00010000
		defb %00010000
		defb %00010000
		defb %00011000
		defb %00011000
		defb %00011000
		defb %00011000
		defb %00011000
		defb %00011000
		defb %00011000
		defb %00011000
		defb %00011000
		defb %00011000
		defb %00011000
		defb %00011000
		defb %00111000
		defb %00111000
		defb %00111000
		defb %00111000
		defb %00111000
		defb %00111000
		defb %00111000
		defb %00111000
		defb %00000001
		defb %00000001
		defb %00000001
		defb %00000001
		defb %00000011
		defb %00000011
		defb %00000011
		defb %00000011
		defb %00000111
		defb %00000111
		defb %00000111
		defb %00000111
		defb %00001111
		defb %00001111
		defb %00001111
		defb %00001111
		defb %00011111
		defb %00011111
		defb %00011111
		defb %00011111
		defb %00111111
		defb %00111111
		defb %00111111
		defb %00111111
		defb %01111111
		defb %01111111
		defb %01111111
		defb %01111111
		defb %11111111
		defb %11111111
		defb %11111111
		defb %11111111
		defb %10000000
		defb %10000000
		defb %10000000
		defb %10000000
		defb %11000000
		defb %11000000
		defb %11000000
		defb %11000000
		defb %11100000
		defb %11100000
		defb %11100000
		defb %11100000
		defb %11110000
		defb %11110000
		defb %11110000
		defb %11110000
		defb %11111000
		defb %11111000
		defb %11111000
		defb %11111000
		defb %11111100
		defb %11111100
		defb %11111100
		defb %11111100
		defb %11111110
		defb %11111110
		defb %11111110
		defb %11111110
		defb %11111111
		defb %11111111
		defb %11111111
		defb %11111111
		defb %00000011
		defb %00000011
		defb %00000011
		defb %00000011
		defb %00000001
		defb %00000001
		defb %00000001
		defb %00000001
		defb %00000001
		defb %00000001
		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 %00000000
		defb %00000000
		defb %00000000
		defb %00000000
		defb %00000000
		defb %00000000
		defb %00000000
		defb %00011111
		defb %00011111
		defb %00001111
		defb %00001111
		defb %00001111
		defb %00001111
		defb %00001111
		defb %00001111
		defb %00000111
		defb %00000111
		defb %00000111
		defb %00000111
		defb %00000111
		defb %00000111
		defb %00000011
		defb %00000011
		defb %00000011
		defb %00000011
		defb %00000011
		defb %00000011
		defb %00000001
		defb %00000001
		defb %00000001
		defb %00000001
		defb %00000001
		defb %00000001
		defb %00000000
		defb %00000000
		defb %00000000
		defb %00000000
		defb %00000000
		defb %00000000
		defb %10000000
		defb %10000000
		defb %10000000
		defb %10000000
		defb %11000000
		defb %11000000
		defb %11000000
		defb %11000000
		defb %11100000
		defb %11100000
		defb %11100000
		defb %11100000
		defb %11110000
		defb %11110000
		defb %11110000
		defb %11110000
		defb %01111000
		defb %01111000
		defb %01111000
		defb %01111000
		defb %01111100
		defb %01111100
		defb %00111100
		defb %00111100
		defb %00111110
		defb %00111110
		defb %00111110
		defb %00111110
		defb %00011111
		defb %00011111
		defb %00011111
		defb %00011111
		defb %00000000
		defb %10000000
		defb %10000000
		defb %10000000
		defb %10000000
		defb %10000000
		defb %11000000
		defb %11000000
		defb %11100000
		defb %11100000
		defb %11100000
		defb %11100000
		defb %11110000
		defb %11110000
		defb %11110000
		defb %11110000
		defb %11111000
		defb %11111000
		defb %11111000
		defb %11111000
		defb %11111100
		defb %11111100
		defb %11111100
		defb %11111100
		defb %11111110
		defb %11111110
		defb %11111110
		defb %11111110
		defb %11111111
		defb %11111111
		defb %11111111
		defb %11111111
		defb %00000001
		defb %00000001
		defb %00000001
		defb %00000001
		defb %00000011
		defb %00000011
		defb %00000011
		defb %00000011
		defb %00000111
		defb %00000111
		defb %00000111
		defb %00000111
		defb %00001111
		defb %00001111
		defb %00001111
		defb %00001111
		defb %00011110
		defb %00011110
		defb %00011110
		defb %00011110
		defb %00111110
		defb %00111110
		defb %00111100
		defb %00111100
		defb %01111100
		defb %01111100
		defb %01111100
		defb %01111100
		defb %11111000
		defb %11111000
		defb %11111000
		defb %11111000
		defb %00000000
		defb %00000001
		defb %00000001
		defb %00000001
		defb %00000001
		defb %00000001
		defb %00000011
		defb %00000011
		defb %00000111
		defb %00000111
		defb %00000111
		defb %00000111
		defb %00001111
		defb %00001111
		defb %00001111
		defb %00001111
		defb %00011111
		defb %00011111
		defb %00011111
		defb %00011111
		defb %00111111
		defb %00111111
		defb %00111111
		defb %00111111
		defb %01111111
		defb %01111111
		defb %01111111
		defb %01111111
		defb %11111111
		defb %11111111
		defb %11111111
		defb %11111111
		defb %11000000
		defb %11000000
		defb %11000000
		defb %11000000
		defb %10000000
		defb %10000000
		defb %10000000
		defb %10000000
		defb %10000000
		defb %10000000
		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 %00000000
		defb %00000000
		defb %00000000
		defb %00000000
		defb %00000000
		defb %00000000
		defb %00000000
		defb %11111000
		defb %11111000
		defb %11110000
		defb %11110000
		defb %11110000
		defb %11110000
		defb %11110000
		defb %11110000
		defb %11100000
		defb %11100000
		defb %11100000
		defb %11100000
		defb %11100000
		defb %11100000
		defb %11000000
		defb %11000000
		defb %11000000
		defb %11000000
		defb %11000000
		defb %11000000
		defb %10000000
		defb %10000000
		defb %10000000
		defb %10000000
		defb %10000000
		defb %10000000
		defb %00000000
		defb %00000000
		defb %00000000
		defb %00000000
		defb %00000000
		defb %00000000
		defb %00111000
		defb %00111000
		defb %00111000
		defb %00111000
		defb %00111100
		defb %00111100
		defb %00111100
		defb %00111100
		defb %00111100
		defb %00111100
		defb %00111100
		defb %00111100
		defb %00111100
		defb %00111100
		defb %00111100
		defb %00111100
		defb %01111100
		defb %01111100
		defb %01111100
		defb %01111100
		defb %01111100
		defb %01111100
		defb %01111100
		defb %01111100
		defb %01111100
		defb %01111100
		defb %01111100
		defb %01111100
		defb %01111110
		defb %01111110
		defb %01111110
		defb %01111110
		defb %01111110
		defb %01111110
		defb %01111110
		defb %01111110
		defb %01111110
		defb %01111110
		defb %01111110
		defb %01111110
		defb %11111110
		defb %11111110
		defb %11111110
		defb %11111110
		defb %11111110
		defb %11111110
		defb %11111110
		defb %11111110
		defb %11111110
		defb %11111110
		defb %11111110
		defb %11111110
		defb %11111111
		defb %11111111
		defb %11111111
		defb %11111111
		defb %11111111
		defb %11111111
		defb %11111111
		defb %11111111
		defb %11111111
		defb %11111111
		defb %11111111
		defb %11111111
		defb %00000001
		defb %00000001
		defb %00000001
		defb %00000001
		defb %00000011
		defb %00000011
		defb %00000011
		defb %00000011
		defb %00000111
		defb %00000111
		defb %00000111
		defb %00000111
		defb %00001111
		defb %00001111
		defb %00001111
		defb %00001111
		defb %00011111
		defb %00011111
		defb %00011111
		defb %00011111
		defb %00111111
		defb %00111111
		defb %00111111
		defb %00111111
		defb %01111111
		defb %01111111
		defb %01111111
		defb %01111111
		defb %11111111
		defb %11111111
		defb %11111111
		defb %11111111
		defb %00000001
		defb %00000001
		defb %00000001
		defb %00000001
		defb %00000011
		defb %00000011
		defb %00000011
		defb %00000011
		defb %00000111
		defb %00000111
		defb %00000111
		defb %00000111
		defb %00001111
		defb %00001111
		defb %00001111
		defb %00001111
		defb %00011111
		defb %00011111
		defb %00011111
		defb %00011111
		defb %00111111
		defb %00111111
		defb %00111111
		defb %00111111
		defb %01111111
		defb %01111111
		defb %01111111
		defb %01111111
		defb %11111111
		defb %11111111
		defb %11111111
		defb %11111111
		defb %10000000
		defb %10000000
		defb %10000000
		defb %10000000
		defb %11000000
		defb %11000000
		defb %11000000
		defb %11000000
		defb %11100000
		defb %11100000
		defb %11100000
		defb %11100000
		defb %11110000
		defb %11110000
		defb %11110000
		defb %11110000
		defb %11111000
		defb %11111000
		defb %11111000
		defb %11111000
		defb %11111100
		defb %11111100
		defb %11111100
		defb %11111100
		defb %11111110
		defb %11111110
		defb %11111110
		defb %11111110
		defb %11111111
		defb %11111111
		defb %11111111
		defb %11111111
		defb %10000000
		defb %10000000
		defb %10000000
		defb %10000000
		defb %11000000
		defb %11000000
		defb %11000000
		defb %11000000
		defb %11100000
		defb %11100000
		defb %11100000
		defb %11100000
		defb %11110000
		defb %11110000
		defb %11110000
		defb %11110000
		defb %11111000
		defb %11111000
		defb %11111000
		defb %11111000
		defb %11111100
		defb %11111100
		defb %11111100
		defb %11111100
		defb %11111110
		defb %11111110
		defb %11111110
		defb %11111110
		defb %11111111
		defb %11111111
		defb %11111111
		defb %11111111
		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 %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 %00000000
		defb %00000000
#line 642
__LABEL__rails01end:
	jp __LABEL__railstripes01end
__LABEL__railstripes01:
#line 4
		defb %00100100
		defb %10011100
		defb %01100110
		defb %01000100
		defb %00000100
		defb %10101110
		defb %01100100
		defb %00000100
		defb %10111100
		defb %00001110
		defb %11000000
		defb %00100000
		defb %11100000
		defb %11011000
		defb %10000000
		defb %01000000
		defb %00111000
		defb %00000110
		defb %11111110
		defb %11100110
		defb %11011110
		defb %10100110
		defb %10011110
		defb %10000010
		defb %01110010
		defb %01101010
		defb %01000010
		defb %00110110
		defb %00101100
		defb %00100100
		defb %00010100
		defb %00001000
		defb %00000000
		defb %11110000
		defb %11101000
		defb %11100100
		defb %11010000
		defb %11001010
		defb %11000010
		defb %10111110
		defb %10110010
		defb %10101010
		defb %10100110
		defb %10100000
		defb %10011000
		defb %10010100
		defb %10010000
		defb %10001010
		defb %10000110
		defb %10000010
		defb %01111000
		defb %01110100
		defb %01110010
		defb %01101110
		defb %01101000
		defb %01100100
		defb %01100010
		defb %01011110
		defb %01011000
		defb %01010100
		defb %01010010
		defb %01001110
		defb %01001000
		defb %01000100
		defb %01000010
		defb %01000000
		defb %00111100
		defb %00111010
		defb %00110100
		defb %00110010
		defb %00110000
		defb %00101100
		defb %00101010
		defb %00101000
		defb %00100110
		defb %00100100
		defb %00100010
		defb %00100000
		defb %00011110
		defb %00011100
		defb %00011010
		defb %00011000
		defb %00010110
		defb %00010100
		defb %00010010
		defb %00010000
		defb %00001110
		defb %00001100
		defb %00001010
		defb %00001000
		defb %00001000
		defb %00000110
		defb %00000100
		defb %00000010
		defb %00000001
		defb %00000000
#line 100
#line 107
		defb %10010010
		defb %01001110
		defb %00110011
		defb %10100010
		defb %00000010
		defb %01010111
		defb %10110010
		defb %00000010
		defb %01011110
		defb %00000111
		defb %11100000
		defb %10010000
		defb %01110000
		defb %01101100
		defb %01000000
		defb %00100000
		defb %00011100
		defb %00000011
		defb %11111111
		defb %11110011
		defb %11101111
		defb %11010011
		defb %11001111
		defb %11000001
		defb %10111001
		defb %10110101
		defb %10100001
		defb %10011011
		defb %10010110
		defb %10010010
		defb %10001010
		defb %10000100
		defb %10000000
		defb %01111000
		defb %01110100
		defb %01110010
		defb %01101000
		defb %01100101
		defb %01100001
		defb %01011111
		defb %01011001
		defb %01010101
		defb %01010011
		defb %01010000
		defb %01001100
		defb %01001010
		defb %01001000
		defb %01000101
		defb %01000011
		defb %01000001
		defb %00111100
		defb %00111010
		defb %00111001
		defb %00110111
		defb %00110100
		defb %00110010
		defb %00110001
		defb %00101111
		defb %00101100
		defb %00101010
		defb %00101001
		defb %00100111
		defb %00100100
		defb %00100010
		defb %00100001
		defb %00100000
		defb %00011110
		defb %00011101
		defb %00011010
		defb %00011001
		defb %00011000
		defb %00010110
		defb %00010101
		defb %00010100
		defb %00010011
		defb %00010010
		defb %00010001
		defb %00010000
		defb %00001111
		defb %00001110
		defb %00001101
		defb %00001100
		defb %00001011
		defb %00001010
		defb %00001001
		defb %00001000
		defb %00000111
		defb %00000110
		defb %00000101
		defb %00000100
		defb %00000100
		defb %00000011
		defb %00000010
		defb %00000001
		defb %00000000
		defb %00000000
#line 203
__LABEL__railstripes01end:
	jp __LABEL__railtilesbg01end
__LABEL__railtilesbg01:
#line 3
		defb $0C,$0C,$0C,$0C,$0C,$0C,$0C,$0C,$0C,$0C,$0C,$0C,$0C,$0C,$0C,$0C,$0C,$0C,$0C,$0C,$0C,$0C,$0C,$0C,$0C,$0C,$0C,$0C,$0C,$0C,$0C,$0C,$0C,$0C,$0C,$0C,$0C,$0C,$0C,$0C,$0C,$0C,$0C,$0C,$0C,$0C,$0C,$0C,$0C,$0C,$0C,$0C,$0C,$0C,$0C,$0C,$0C,$0C,$0C,$0C,$0C,$0C,$0C,$E0,$E8,$E0,$0C,$0C,$0C,$0C,$0C,$0C,$0C,$0C,$0C,$0C,$0C,$0C,$0C,$0C,$0C,$0C,$0C,$0C,$0C,$0C,$0C,$0C,$0C,$0C,$0C,$0C,$0C,$0C,$0C,$0C,$0C,$0C,$0C,$0C,$0C,$0C,$0C,$0C,$0C,$0C,$0C,$0C,$0C,$0C,$0C,$0C,$0C,$0C,$0C,$0C,$0C,$0C,$0C,$0C,$0C,$0C,$0C,$0C,$0C,$0C,$0C,$0C
		defb $0C,$0C,$0C,$0C,$0C,$0C,$0C,$0C,$0C,$0C,$0C,$0C,$0C,$0C,$0C,$0C,$0C,$0C,$0C,$0C,$0C,$0C,$0C,$0C,$0C,$0C,$0C,$0C,$0C,$0C,$0C,$0C,$0C,$0C,$0C,$0C,$0C,$0C,$0C,$0C,$0C,$0C,$0C,$0C,$0C,$0C,$0C,$0C,$0C,$0C,$0C,$0C,$0C,$0C,$0C,$0C,$0C,$0C,$0C,$0C,$0C,$E1,$E5,$0E,$E9,$0E,$E5,$E1,$0C,$0C,$0C,$0C,$0C,$0C,$0C,$0C,$0C,$0C,$0C,$0C,$0C,$0C,$0C,$0C,$0C,$0C,$0C,$0C,$0C,$0C,$0C,$0C,$0C,$0C,$0C,$0C,$0C,$0C,$0C,$0C,$0C,$0C,$0C,$0C,$0C,$0C,$0C,$0C,$0C,$0C,$0C,$0C,$0C,$0C,$0C,$0C,$0C,$0C,$0C,$0C,$0C,$0C,$0C,$0C,$0C,$0C,$0C,$0C
		defb $0C,$0C,$0C,$0C,$0C,$0C,$0C,$0C,$0C,$0C,$0C,$0C,$0C,$0C,$0C,$0C,$0C,$0C,$0C,$0C,$0C,$0C,$0C,$0C,$0C,$0C,$0C,$0C,$0C,$0C,$0C,$0C,$0C,$0C,$0C,$0C,$0C,$0C,$0C,$0C,$0C,$0C,$0C,$0C,$0C,$0C,$0C,$0C,$0C,$0C,$0C,$0C,$0C,$0C,$0C,$0C,$0C,$0C,$0C,$E2,$E6,$0E,$0E,$0E,$EA,$0E,$0E,$0E,$E6,$E2,$0C,$0C,$0C,$0C,$0C,$0C,$0C,$0C,$0C,$0C,$0C,$0C,$0C,$0C,$0C,$0C,$0C,$0C,$0C,$0C,$0C,$0C,$0C,$0C,$0C,$0C,$0C,$0C,$0C,$0C,$0C,$0C,$0C,$0C,$0C,$0C,$0C,$0C,$0C,$0C,$0C,$0C,$0C,$0C,$0C,$0C,$0C,$0C,$0C,$0C,$0C,$0C,$0C,$0C,$0C,$0C,$0C,$0C
		defb $0C,$0C,$0C,$0C,$0C,$0C,$0C,$0C,$0C,$0C,$0C,$0C,$0C,$0C,$0C,$0C,$0C,$0C,$0C,$0C,$0C,$0C,$0C,$0C,$0C,$0C,$0C,$0C,$0C,$0C,$0C,$0C,$0C,$0C,$0C,$0C,$0C,$0C,$0C,$0C,$0C,$0C,$0C,$0C,$0C,$0C,$0C,$0C,$0C,$0C,$0C,$0C,$0C,$0C,$0C,$0C,$0C,$E3,$E7,$0E,$0E,$0E,$0E,$0E,$EB,$0E,$0E,$0E,$0E,$0E,$E7,$E3,$0C,$0C,$0C,$0C,$0C,$0C,$0C,$0C,$0C,$0C,$0C,$0C,$0C,$0C,$0C,$0C,$0C,$0C,$0C,$0C,$0C,$0C,$0C,$0C,$0C,$0C,$0C,$0C,$0C,$0C,$0C,$0C,$0C,$0C,$0C,$0C,$0C,$0C,$0C,$0C,$0C,$0C,$0C,$0C,$0C,$0C,$0C,$0C,$0C,$0C,$0C,$0C,$0C,$0C,$0C,$0C
		defb $0C,$0C,$0C,$0C,$0C,$0C,$0C,$0C,$0C,$0C,$0C,$0C,$0C,$0C,$0C,$0C,$0C,$0C,$0C,$0C,$0C,$0C,$0C,$0C,$0C,$0C,$0C,$0C,$0C,$0C,$0C,$0C,$0C,$0C,$0C,$0C,$0C,$0C,$0C,$0C,$0C,$0C,$0C,$0C,$0C,$0C,$0C,$0C,$0C,$0C,$0C,$0C,$0C,$0C,$C0,$C0,$C8,$0E,$0E,$0E,$0E,$0E,$0E,$0E,$D0,$0E,$0E,$0E,$0E,$0E,$0E,$0E,$C8,$C0,$C0,$0C,$0C,$0C,$0C,$0C,$0C,$0C,$0C,$0C,$0C,$0C,$0C,$0C,$0C,$0C,$0C,$0C,$0C,$0C,$0C,$0C,$0C,$0C,$0C,$0C,$0C,$0C,$0C,$0C,$0C,$0C,$0C,$0C,$0C,$0C,$0C,$0C,$0C,$0C,$0C,$0C,$0C,$0C,$0C,$0C,$0C,$0C,$0C,$0C,$0C,$0C,$0C,$0C
		defb $0C,$0C,$0C,$0C,$0C,$0C,$0C,$0C,$0C,$0C,$0C,$0C,$0C,$0C,$0C,$0C,$0C,$0C,$0C,$0C,$0C,$0C,$0C,$0C,$0C,$0C,$0C,$0C,$0C,$0C,$0C,$0C,$0C,$0C,$0C,$0C,$0C,$0C,$0C,$0C,$0C,$0C,$0C,$0C,$0C,$0C,$0C,$0C,$0C,$0C,$0C,$0C,$C1,$C1,$0E,$C9,$0E,$0E,$0E,$0E,$0E,$0E,$0E,$0E,$D1,$0E,$0E,$0E,$0E,$0E,$0E,$0E,$0E,$C9,$0E,$C1,$C1,$0C,$0C,$0C,$0C,$0C,$0C,$0C,$0C,$0C,$0C,$0C,$0C,$0C,$0C,$0C,$0C,$0C,$0C,$0C,$0C,$0C,$0C,$0C,$0C,$0C,$0C,$0C,$0C,$0C,$0C,$0C,$0C,$0C,$0C,$0C,$0C,$0C,$0C,$0C,$0C,$0C,$0C,$0C,$0C,$0C,$0C,$0C,$0C,$0C,$0C,$0C
		defb $0C,$0C,$0C,$0C,$0C,$0C,$0C,$0C,$0C,$0C,$0C,$0C,$0C,$0C,$0C,$0C,$0C,$0C,$0C,$0C,$0C,$0C,$0C,$0C,$0C,$0C,$0C,$0C,$0C,$0C,$0C,$0C,$0C,$0C,$0C,$0C,$0C,$0C,$0C,$0C,$0C,$0C,$0C,$0C,$0C,$0C,$0C,$0C,$0C,$0C,$C2,$C2,$0E,$CA,$0E,$0E,$0E,$0E,$0E,$0E,$0E,$0E,$0E,$0E,$D2,$0E,$0E,$0E,$0E,$0E,$0E,$0E,$0E,$0E,$0E,$CA,$0E,$C2,$C2,$0C,$0C,$0C,$0C,$0C,$0C,$0C,$0C,$0C,$0C,$0C,$0C,$0C,$0C,$0C,$0C,$0C,$0C,$0C,$0C,$0C,$0C,$0C,$0C,$0C,$0C,$0C,$0C,$0C,$0C,$0C,$0C,$0C,$0C,$0C,$0C,$0C,$0C,$0C,$0C,$0C,$0C,$0C,$0C,$0C,$0C,$0C,$0C,$0C
		defb $0C,$0C,$0C,$0C,$0C,$0C,$0C,$0C,$0C,$0C,$0C,$0C,$0C,$0C,$0C,$0C,$0C,$0C,$0C,$0C,$0C,$0C,$0C,$0C,$0C,$0C,$0C,$0C,$0C,$0C,$0C,$0C,$0C,$0C,$0C,$0C,$0C,$0C,$0C,$0C,$0C,$0C,$0C,$0C,$0C,$0C,$0C,$0C,$C3,$C3,$0E,$CB,$0E,$0E,$0E,$0E,$0E,$0E,$0E,$0E,$0E,$0E,$0E,$0E,$D3,$0E,$0E,$0E,$0E,$0E,$0E,$0E,$0E,$0E,$0E,$0E,$0E,$CB,$0E,$C3,$C3,$0C,$0C,$0C,$0C,$0C,$0C,$0C,$0C,$0C,$0C,$0C,$0C,$0C,$0C,$0C,$0C,$0C,$0C,$0C,$0C,$0C,$0C,$0C,$0C,$0C,$0C,$0C,$0C,$0C,$0C,$0C,$0C,$0C,$0C,$0C,$0C,$0C,$0C,$0C,$0C,$0C,$0C,$0C,$0C,$0C,$0C,$0C
		defb $0C,$0C,$0C,$0C,$0C,$0C,$0C,$0C,$0C,$0C,$0C,$0C,$0C,$0C,$0C,$0C,$0C,$0C,$0C,$0C,$0C,$0C,$0C,$0C,$0C,$0C,$0C,$0C,$0C,$0C,$0C,$0C,$0C,$0C,$0C,$0C,$0C,$0C,$0C,$0C,$0C,$0C,$0C,$0C,$0C,$C4,$C4,$C4,$0E,$CC,$0E,$0E,$0E,$0E,$0E,$0E,$0E,$0E,$0E,$0E,$0E,$0E,$0E,$0E,$D4,$0E,$0E,$0E,$0E,$0E,$0E,$0E,$0E,$0E,$0E,$0E,$0E,$0E,$0E,$CC,$0E,$C4,$C4,$C4,$0C,$0C,$0C,$0C,$0C,$0C,$0C,$0C,$0C,$0C,$0C,$0C,$0C,$0C,$0C,$0C,$0C,$0C,$0C,$0C,$0C,$0C,$0C,$0C,$0C,$0C,$0C,$0C,$0C,$0C,$0C,$0C,$0C,$0C,$0C,$0C,$0C,$0C,$0C,$0C,$0C,$0C,$0C,$0C
		defb $0C,$0C,$0C,$0C,$0C,$0C,$0C,$0C,$0C,$0C,$0C,$0C,$0C,$0C,$0C,$0C,$0C,$0C,$0C,$0C,$0C,$0C,$0C,$0C,$0C,$0C,$0C,$0C,$0C,$0C,$0C,$0C,$0C,$0C,$0C,$0C,$0C,$0C,$0C,$0C,$0C,$0C,$0C,$C5,$C5,$C5,$0E,$CD,$0E,$0E,$0E,$0E,$0E,$0E,$0E,$0E,$0E,$0E,$0E,$0E,$0E,$0E,$0E,$0E,$D5,$0E,$0E,$0E,$0E,$0E,$0E,$0E,$0E,$0E,$0E,$0E,$0E,$0E,$0E,$0E,$0E,$CD,$0E,$C5,$C5,$C5,$0C,$0C,$0C,$0C,$0C,$0C,$0C,$0C,$0C,$0C,$0C,$0C,$0C,$0C,$0C,$0C,$0C,$0C,$0C,$0C,$0C,$0C,$0C,$0C,$0C,$0C,$0C,$0C,$0C,$0C,$0C,$0C,$0C,$0C,$0C,$0C,$0C,$0C,$0C,$0C,$0C,$0C
		defb $0C,$0C,$0C,$0C,$0C,$0C,$0C,$0C,$0C,$0C,$0C,$0C,$0C,$0C,$0C,$0C,$0C,$0C,$0C,$0C,$0C,$0C,$0C,$0C,$0C,$0C,$0C,$0C,$0C,$0C,$0C,$0C,$0C,$0C,$0C,$0C,$0C,$0C,$0C,$0C,$0C,$C6,$C6,$C6,$0E,$0E,$CE,$0E,$0E,$0E,$0E,$0E,$0E,$0E,$0E,$0E,$0E,$0E,$0E,$0E,$0E,$0E,$0E,$0E,$D6,$0E,$0E,$0E,$0E,$0E,$0E,$0E,$0E,$0E,$0E,$0E,$0E,$0E,$0E,$0E,$0E,$0E,$CE,$0E,$0E,$C6,$C6,$C6,$0C,$0C,$0C,$0C,$0C,$0C,$0C,$0C,$0C,$0C,$0C,$0C,$0C,$0C,$0C,$0C,$0C,$0C,$0C,$0C,$0C,$0C,$0C,$0C,$0C,$0C,$0C,$0C,$0C,$0C,$0C,$0C,$0C,$0C,$0C,$0C,$0C,$0C,$0C,$0C
		defb $0C,$0C,$0C,$0C,$0C,$0C,$0C,$0C,$0C,$0C,$0C,$0C,$0C,$0C,$0C,$0C,$0C,$0C,$0C,$0C,$0C,$0C,$0C,$0C,$0C,$0C,$0C,$0C,$0C,$0C,$0C,$0C,$0C,$0C,$0C,$0C,$0C,$0C,$0C,$C7,$C7,$C7,$0E,$0E,$CF,$0E,$0E,$0E,$0E,$0E,$0E,$0E,$0E,$0E,$0E,$0E,$0E,$0E,$0E,$0E,$0E,$0E,$0E,$0E,$D7,$0E,$0E,$0E,$0E,$0E,$0E,$0E,$0E,$0E,$0E,$0E,$0E,$0E,$0E,$0E,$0E,$0E,$0E,$0E,$CF,$0E,$0E,$C7,$C7,$C7,$0C,$0C,$0C,$0C,$0C,$0C,$0C,$0C,$0C,$0C,$0C,$0C,$0C,$0C,$0C,$0C,$0C,$0C,$0C,$0C,$0C,$0C,$0C,$0C,$0C,$0C,$0C,$0C,$0C,$0C,$0C,$0C,$0C,$0C,$0C,$0C,$0C,$0C
#line 15
__LABEL__railtilesbg01end:
	jp __LABEL__bininc01end
__LABEL__ptrn01:
#line 26
		incbin "library/01wholek3r11patterns2.bin"
#line 27
__LABEL__bininc01end:
	xor a
	ld (_debug), a
	ld a, 97
	push af
	ld a, 7
	push af
	call _smsvdp
	ld a, 2
	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, 255
	push af
	ld a, 3
	push af
	call _smsvdp
	ld a, 3
	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 hl, 0
	ld (_ee1), hl
	jp __LABEL0
__LABEL3:
	ld hl, 2048
	push hl
	ld hl, 165
	push hl
	ld hl, (_ee1)
	push hl
	call _smsfilvrm
	ld hl, 2048
	push hl
	ld hl, 165
	push hl
	ld hl, (_ee1)
	ld de, 8192
	add hl, de
	push hl
	call _smsfilvrm
__LABEL4:
	ld hl, (_ee1)
	ld de, 2048
	add hl, de
	ld (_ee1), hl
__LABEL0:
	ld hl, 6143
	ld de, (_ee1)
	or a
	sbc hl, de
	jp nc, __LABEL3
__LABEL2:
	ld hl, 512
	push hl
	ld hl, __LABEL__typeface01
	push hl
	ld hl, 256
	push hl
	call _smsldirvm
	ld hl, 512
	push hl
	ld hl, 245
	push hl
	ld hl, 8448
	push hl
	call _smsfilvrm
	ld hl, 80
	push hl
	ld hl, __LABEL__typeface01 + 128
	push hl
	ld hl, 768
	push hl
	call _smsldirvm
	ld hl, 8
	push hl
	ld hl, __LABEL__typeface01 + 672 - 256
	push hl
	ld hl, 848
	push hl
	call _smsldirvm
	ld hl, 8
	push hl
	ld hl, __LABEL__typeface01 + 632 - 256
	push hl
	ld hl, 856
	push hl
	call _smsldirvm
	ld hl, 8
	push hl
	ld hl, __LABEL__typeface01 + 640 - 256
	push hl
	ld hl, 864
	push hl
	call _smsldirvm
	ld hl, 128
	push hl
	ld hl, 149
	push hl
	ld hl, 8960
	push hl
	call _smsfilvrm
	ld hl, 80
	push hl
	ld hl, __LABEL__typeface01 + 128
	push hl
	ld hl, 896
	push hl
	call _smsldirvm
	ld hl, 8
	push hl
	ld hl, __LABEL__typeface01 + 608 - 256
	push hl
	ld hl, 976
	push hl
	call _smsldirvm
	ld hl, 8
	push hl
	ld hl, __LABEL__typeface01 + 520 - 256
	push hl
	ld hl, 984
	push hl
	call _smsldirvm
	ld hl, 8
	push hl
	ld hl, __LABEL__typeface01 + 640 - 256
	push hl
	ld hl, 992
	push hl
	call _smsldirvm
	ld hl, 8
	push hl
	ld hl, __LABEL__typeface01 + 272 - 256
	push hl
	ld hl, 1000
	push hl
	call _smsldirvm
	ld hl, 128
	push hl
	ld hl, 53
	push hl
	ld hl, 9088
	push hl
	call _smsfilvrm
	ld hl, 80
	push hl
	ld hl, __LABEL__typeface01 + 128
	push hl
	ld hl, 1024
	push hl
	call _smsldirvm
	ld hl, 8
	push hl
	ld hl, __LABEL__typeface01 + 672 - 256
	push hl
	ld hl, 1104
	push hl
	call _smsldirvm
	ld hl, 8
	push hl
	ld hl, __LABEL__typeface01 + 584 - 256
	push hl
	ld hl, 1112
	push hl
	call _smsldirvm
	ld hl, 8
	push hl
	ld hl, __LABEL__typeface01 + 616 - 256
	push hl
	ld hl, 1120
	push hl
	call _smsldirvm
	ld hl, 8
	push hl
	ld hl, __LABEL__typeface01 + 552 - 256
	push hl
	ld hl, 1128
	push hl
	call _smsldirvm
	ld hl, 128
	push hl
	ld hl, 165
	push hl
	ld hl, 9216
	push hl
	call _smsfilvrm
	ld hl, 8
	push hl
	ld hl, __LABEL__typeface01 + 608 - 256
	push hl
	ld hl, 4224
	push hl
	call _smsldirvm
	ld hl, 8
	push hl
	ld hl, __LABEL__typeface01 + 632 - 256
	push hl
	ld hl, 4232
	push hl
	call _smsldirvm
	ld hl, 8
	push hl
	ld hl, __LABEL__typeface01 + 576 - 256
	push hl
	ld hl, 4240
	push hl
	call _smsldirvm
	ld hl, 8
	push hl
	ld hl, __LABEL__typeface01 + 584 - 256
	push hl
	ld hl, 4248
	push hl
	call _smsldirvm
	ld hl, 32
	push hl
	ld hl, 254
	push hl
	ld hl, 12416
	push hl
	call _smsfilvrm
	ld hl, 80
	push hl
	ld hl, __LABEL__cloud01
	push hl
	ld hl, 128
	push hl
	call _smsldirvm
	ld hl, 128
	push hl
	ld hl, __LABEL__mountains01
	push hl
	ld hl, 3968
	push hl
	call _smsldirvm
	ld hl, 160
	push hl
	ld hl, __LABEL__rails01
	push hl
	ld hl, 3584
	push hl
	call _smsldirvm
	ld hl, 512
	push hl
	ld hl, 255
	push hl
	ld hl, 5120
	push hl
	call _smsfilvrm
	ld hl, 448
	push hl
	ld hl, __LABEL__rails01 + 160
	push hl
	ld hl, 5120
	push hl
	call _smsldirvm
	ld hl, 160
	push hl
	ld hl, 140
	push hl
	ld hl, 11776
	push hl
	call _smsfilvrm
	ld hl, 64
	push hl
	ld hl, 174
	push hl
	ld hl, 11776
	push hl
	call _smsfilvrm
	ld hl, 32
	push hl
	ld hl, 254
	push hl
	ld hl, 11840
	push hl
	call _smsfilvrm
	ld hl, 512
	push hl
	ld hl, 140
	push hl
	ld hl, 13312
	push hl
	call _smsfilvrm
	ld hl, 256
	push hl
	ld hl, 174
	push hl
	ld hl, 13312
	push hl
	call _smsfilvrm
	ld hl, 64
	push hl
	ld hl, 254
	push hl
	ld hl, 13568
	push hl
	call _smsfilvrm
	ld hl, 80
	push hl
	ld hl, 245
	push hl
	ld hl, 8320
	push hl
	call _smsfilvrm
	ld hl, 48
	push hl
	ld hl, 69
	push hl
	ld hl, 12160
	push hl
	call _smsfilvrm
	ld hl, 80
	push hl
	ld hl, 100
	push hl
	ld hl, 12208
	push hl
	call _smsfilvrm
	ld hl, 80
	push hl
	ld hl, __LABEL__mountains01attr
	push hl
	ld hl, 12208
	push hl
	call _smsldirvm
	ld hl, 0
	ld (_ee1), hl
	jp __LABEL5
__LABEL8:
	ld hl, 0
	ld (_ee0), hl
	jp __LABEL10
__LABEL13:
	ld hl, 8
	push hl
	ld hl, (_ee0)
	ld de, 17
	call __MUL16_FAST
	push hl
	ld de, 255
	pop hl
	call __BAND16
	push hl
	ld hl, (_ee0)
	add hl, hl
	add hl, hl
	add hl, hl
	ld de, 8192
	add hl, de
	ex de, hl
	ld hl, (_ee1)
	add hl, de
	push hl
	call _smsfilvrm
__LABEL14:
	ld hl, (_ee0)
	inc hl
	ld (_ee0), hl
__LABEL10:
	ld hl, 15
	ld de, (_ee0)
	or a
	sbc hl, de
	jp nc, __LABEL13
__LABEL12:
__LABEL9:
	ld hl, (_ee1)
	ld de, 2048
	add hl, de
	ld (_ee1), hl
__LABEL5:
	ld hl, 6143
	ld de, (_ee1)
	or a
	sbc hl, de
	jp nc, __LABEL8
__LABEL7:
	ld hl, 768
	push hl
	ld hl, 12
	push hl
	ld hl, 6144
	push hl
	call _smsfilvrm
	ld hl, 384
	push hl
	ld hl, 5
	push hl
	ld hl, 6144
	push hl
	call _smsfilvrm
	ld hl, 64
	push hl
	ld hl, __LABEL__dummyscoredisplay01
	push hl
	ld hl, 6144
	push hl
	call _smsldirvm
	ld hl, 64
	push hl
	ld hl, __LABEL__mountainstiles01
	push hl
	ld hl, 6464
	push hl
	call _smsldirvm
	ld hl, 5
	push hl
	ld hl, __LABEL__cloudtiles01
	push hl
	ld hl, 6307
	push hl
	call _smsldirvm
	ld hl, 5
	push hl
	ld hl, __LABEL__cloudtiles01 + 5
	push hl
	ld hl, 6339
	push hl
	call _smsldirvm
	ld hl, 0
	ld (_ee0), hl
	jp __LABEL15
__LABEL18:
	ld hl, 255
	push hl
	ld hl, (_ee0)
	ld de, 3840
	add hl, de
	push hl
	call _smsvpoke
	ld hl, 255
	push hl
	ld hl, (_ee0)
	ld de, 3872
	add hl, de
	push hl
	call _smsvpoke
	ld hl, 255
	push hl
	ld hl, (_ee0)
	ld de, 3904
	add hl, de
	push hl
	call _smsvpoke
__LABEL19:
	ld hl, (_ee0)
	inc hl
	ld (_ee0), hl
__LABEL15:
	ld hl, 31
	ld de, (_ee0)
	or a
	sbc hl, de
	jp nc, __LABEL18
__LABEL17:
	ld hl, 0
	ld (_ee0), hl
	jp __LABEL20
__LABEL23:
	ld hl, 255
	push hl
	ld hl, (_ee0)
	ld de, 5632
	add hl, de
	push hl
	call _smsvpoke
	ld hl, 255
	push hl
	ld hl, (_ee0)
	ld de, 5696
	add hl, de
	push hl
	call _smsvpoke
	ld hl, 255
	push hl
	ld hl, (_ee0)
	ld de, 5760
	add hl, de
	push hl
	call _smsvpoke
__LABEL24:
	ld hl, (_ee0)
	inc hl
	ld (_ee0), hl
__LABEL20:
	ld hl, 63
	ld de, (_ee0)
	or a
	sbc hl, de
	jp nc, __LABEL23
__LABEL22:
	ld h, 1
	ld a, (_debug)
	and h
	or a
	jp z, __LABEL26
	ld hl, 0
	ld (_ee0), hl
	jp __LABEL27
__LABEL30:
	ld hl, (_ee0)
	push hl
	ld hl, (_ee0)
	ld de, 6144
	add hl, de
	push hl
	call _smsvpoke
__LABEL31:
	ld hl, (_ee0)
	inc hl
	ld (_ee0), hl
__LABEL27:
	ld hl, 767
	ld de, (_ee0)
	or a
	sbc hl, de
	jp nc, __LABEL30
__LABEL29:
	ld hl, 0
	ld (_ee0), hl
	jp __LABEL32
__LABEL35:
	ld hl, 140
	ld (_ee1), hl
	ld de, __LABEL__railstripes01
	ld hl, (_ee0)
	add hl, de
	ld b, h
	ld c, l
	ld a, (bc)
	ld l, a
	ld h, 0
	ex de, hl
	ld hl, (_trk2)
	add hl, de
	push hl
	ld de, 32
	pop hl
	call __BAND16
	push hl
	ld de, 0
	pop hl
	or a
	sbc hl, de
	ld a, h
	or l
	or a
	jp z, __LABEL38
	ld hl, 252
	ld (_ee1), hl
__LABEL38:
	ld hl, (_ee1)
	push hl
	ld hl, (_ee0)
	ld de, 12032
	add hl, de
	push hl
	call _smsvpoke
__LABEL36:
	ld hl, (_ee0)
	inc hl
	ld (_ee0), hl
__LABEL32:
	ld hl, 31
	ld de, (_ee0)
	or a
	sbc hl, de
	jp nc, __LABEL35
__LABEL34:
	ld hl, 0
	ld (_ee0), hl
	jp __LABEL39
__LABEL42:
	ld hl, 140
	ld (_ee1), hl
	ld de, __LABEL__railstripes01 + 32
	ld hl, (_ee0)
	add hl, de
	ld b, h
	ld c, l
	ld a, (bc)
	ld l, a
	ld h, 0
	ex de, hl
	ld hl, (_trk2)
	add hl, de
	push hl
	ld de, 32
	pop hl
	call __BAND16
	push hl
	ld de, 0
	pop hl
	or a
	sbc hl, de
	ld a, h
	or l
	or a
	jp z, __LABEL45
	ld hl, 252
	ld (_ee1), hl
__LABEL45:
	ld hl, (_ee1)
	push hl
	ld hl, (_ee0)
	ld de, 13824
	add hl, de
	push hl
	call _smsvpoke
__LABEL43:
	ld hl, (_ee0)
	inc hl
	ld (_ee0), hl
__LABEL39:
	ld hl, 63
	ld de, (_ee0)
	or a
	sbc hl, de
	jp nc, __LABEL42
__LABEL41:
	ld hl, 0
	ld (_ee0), hl
	jp __LABEL46
__LABEL49:
	ld hl, 174
	ld (_ee1), hl
	ld de, __LABEL__railstripes01
	ld hl, (_ee0)
	add hl, de
	ld b, h
	ld c, l
	ld a, (bc)
	ld l, a
	ld h, 0
	ex de, hl
	ld hl, (_trk2)
	add hl, de
	push hl
	ld de, 128
	pop hl
	call __BAND16
	push hl
	ld de, 0
	pop hl
	or a
	sbc hl, de
	ld a, h
	or l
	or a
	jp z, __LABEL52
	ld hl, 254
	ld (_ee1), hl
__LABEL52:
	ld hl, (_ee1)
	push hl
	ld hl, (_ee0)
	ld de, 12064
	add hl, de
	push hl
	call _smsvpoke
__LABEL50:
	ld hl, (_ee0)
	inc hl
	ld (_ee0), hl
__LABEL46:
	ld hl, 31
	ld de, (_ee0)
	or a
	sbc hl, de
	jp nc, __LABEL49
__LABEL48:
	ld hl, 0
	ld (_ee0), hl
	jp __LABEL53
__LABEL56:
	ld hl, 174
	ld (_ee1), hl
	ld de, __LABEL__railstripes01 + 32
	ld hl, (_ee0)
	add hl, de
	ld b, h
	ld c, l
	ld a, (bc)
	ld l, a
	ld h, 0
	ex de, hl
	ld hl, (_trk2)
	add hl, de
	push hl
	ld de, 128
	pop hl
	call __BAND16
	push hl
	ld de, 0
	pop hl
	or a
	sbc hl, de
	ld a, h
	or l
	or a
	jp z, __LABEL59
	ld hl, 254
	ld (_ee1), hl
__LABEL59:
	ld hl, (_ee1)
	push hl
	ld hl, (_ee0)
	ld de, 13888
	add hl, de
	push hl
	call _smsvpoke
__LABEL57:
	ld hl, (_ee0)
	inc hl
	ld (_ee0), hl
__LABEL53:
	ld hl, 63
	ld de, (_ee0)
	or a
	sbc hl, de
	jp nc, __LABEL56
__LABEL55:
	ld hl, 0
	ld (_ee0), hl
	jp __LABEL60
__LABEL63:
	ld hl, 238
	ld (_ee1), hl
	ld de, __LABEL__railstripes01
	ld hl, (_ee0)
	add hl, de
	ld b, h
	ld c, l
	ld a, (bc)
	ld l, a
	ld h, 0
	ex de, hl
	ld hl, (_trk2)
	add hl, de
	push hl
	ld de, 64
	pop hl
	call __BAND16
	push hl
	ld de, 0
	pop hl
	or a
	sbc hl, de
	ld a, h
	or l
	or a
	jp z, __LABEL66
	ld hl, 254
	ld (_ee1), hl
__LABEL66:
	ld hl, (_ee1)
	push hl
	ld hl, (_ee0)
	ld de, 12096
	add hl, de
	push hl
	call _smsvpoke
__LABEL64:
	ld hl, (_ee0)
	inc hl
	ld (_ee0), hl
__LABEL60:
	ld hl, 31
	ld de, (_ee0)
	or a
	sbc hl, de
	jp nc, __LABEL63
__LABEL62:
	ld hl, 0
	ld (_ee0), hl
	jp __LABEL67
__LABEL70:
	ld hl, 238
	ld (_ee1), hl
	ld de, __LABEL__railstripes01 + 32
	ld hl, (_ee0)
	add hl, de
	ld b, h
	ld c, l
	ld a, (bc)
	ld l, a
	ld h, 0
	ex de, hl
	ld hl, (_trk2)
	add hl, de
	push hl
	ld de, 64
	pop hl
	call __BAND16
	push hl
	ld de, 0
	pop hl
	or a
	sbc hl, de
	ld a, h
	or l
	or a
	jp z, __LABEL73
	ld hl, 254
	ld (_ee1), hl
__LABEL73:
	ld hl, (_ee1)
	push hl
	ld hl, (_ee0)
	ld de, 13952
	add hl, de
	push hl
	call _smsvpoke
__LABEL71:
	ld hl, (_ee0)
	inc hl
	ld (_ee0), hl
__LABEL67:
	ld hl, 63
	ld de, (_ee0)
	or a
	sbc hl, de
	jp nc, __LABEL70
__LABEL69:
__LABEL74:
	jp __LABEL74
__LABEL75:
__LABEL26:
	xor a
	ld (_gest), a
	ld hl, 0
	ld (_tmr), hl
	ld hl, 118
	ld (_xrp), hl
	ld hl, 6
	ld (_xdr), hl
	ld hl, 0
	ld (_trk), hl
	ld hl, 0
	ld (_spd), hl
__LABEL__loopunkn01:
__LABEL76:
	call _smsjoypad1
	push af
	ld h, 8
	pop af
	and h
	or a
	jp z, __LABEL79
	ld hl, (_xdr)
	inc hl
	ld (_xdr), hl
__LABEL79:
	call _smsjoypad1
	push af
	ld h, 4
	pop af
	and h
	or a
	jp z, __LABEL81
	ld hl, (_xdr)
	dec hl
	ld (_xdr), hl
__LABEL81:
	call _smsjoypad1
	push af
	ld h, 16
	pop af
	and h
	or a
	jp z, __LABEL83
	ld a, (_gest)
	sub 1
	jp nc, __LABEL84
	ld hl, (_spd)
	ld de, 7
	add hl, de
	ld (_spd), hl
	jp __LABEL85
__LABEL84:
	ld hl, (_spd)
	inc hl
	inc hl
	inc hl
	ld (_spd), hl
__LABEL85:
__LABEL83:
	call _smsjoypad1
	push af
	ld h, 32
	pop af
	and h
	or a
	jp z, __LABEL87
	ld hl, (_spd)
	ld de, -16
	add hl, de
	ld (_spd), hl
__LABEL87:
	call _smsjoypad1
	push af
	ld h, 1
	pop af
	and h
	or a
	jp z, __LABEL89
	xor a
	ld (_gest), a
__LABEL89:
	call _smsjoypad1
	push af
	ld h, 2
	pop af
	and h
	or a
	jp z, __LABEL91
	ld a, 1
	ld (_gest), a
__LABEL91:
	ld hl, (_spd)
	dec hl
	ld (_spd), hl
	ld hl, (_xrp)
	push hl
	ld hl, (_xdr)
	ex de, hl
	ld hl, (_spd)
	call __MUL16_FAST
	ld de, 255
	call __DIVI16
	ex de, hl
	pop hl
	add hl, de
	push hl
	ld hl, (_spd)
	ld de, 6
	call __MUL16_FAST
	ld de, 255
	call __DIVI16
	ex de, hl
	pop hl
	or a
	sbc hl, de
	ld (_xrp), hl
	ld de, 94
	ld hl, (_xrp)
	or a
	sbc hl, de
	jp nc, __LABEL93
	ld hl, 94
	ld (_xrp), hl
__LABEL93:
	ld hl, 162
	ld de, (_xrp)
	or a
	sbc hl, de
	jp nc, __LABEL95
	ld hl, 162
	ld (_xrp), hl
__LABEL95:
	ld de, 1
	ld hl, (_xdr)
	or a
	sbc hl, de
	jp nc, __LABEL97
	ld hl, 1
	ld (_xdr), hl
__LABEL97:
	ld hl, 11
	ld de, (_xdr)
	or a
	sbc hl, de
	jp nc, __LABEL99
	ld hl, 11
	ld (_xdr), hl
__LABEL99:
	ld de, 0
	ld hl, (_spd)
	call __LTI16
	or a
	jp z, __LABEL101
	ld hl, 0
	ld (_spd), hl
__LABEL101:
	ld hl, 255
	ld de, (_spd)
	call __LTI16
	push af
	ld a, (_gest)
	dec a
	sub 1
	sbc a, a
	ld h, a
	pop af
	call __AND8
	or a
	jp z, __LABEL103
	ld hl, 255
	ld (_spd), hl
__LABEL103:
	ld hl, 170
	ld de, (_spd)
	call __LTI16
	push af
	ld a, (_gest)
	sub 1
	sbc a, a
	ld h, a
	pop af
	call __AND8
	or a
	jp z, __LABEL105
	ld hl, 170
	ld (_spd), hl
__LABEL105:
	ld hl, (_trk)
	ex de, hl
	ld hl, (_spd)
	add hl, de
	ld (_trk), hl
	ld hl, (_xdr)
	dec hl
	add hl, hl
	ld de, 0
	push de
	push hl
	ld hl, (_trk)
	ld de, 256
	call __DIVU16
	ld de, 0
	push de
	push hl
	ld de, 0
	ld hl, 1
	call __BAND32
	pop bc
	add hl, bc
	ex de, hl
	pop bc
	adc hl, bc
	ex de, hl
	ld (_ee0), hl
	ld de, 256
	call __MUL16_FAST
	ld (_ee1), hl
	ld hl, 256
	push hl
	ld de, __LABEL__ptrn01
	ld hl, (_ee1)
	add hl, de
	push hl
	ld hl, 5888
	push hl
	call _smsldirvm
	ld hl, 256
	push hl
	ld de, __LABEL__ptrn01 + 6144
	ld hl, (_ee1)
	add hl, de
	push hl
	ld hl, 14080
	push hl
	call _smsldirvm
	ld hl, (_spd)
	push hl
	ld hl, 58
	push hl
	call _zprintdecimal3
	ld hl, (_trk)
	push hl
	ld hl, 39
	push hl
	call _zprintdecimal
	ld a, 64
	push af
	ld hl, (_tmr)
	ld de, 60
	call __DIVU16
	ld de, 0
	push de
	push hl
	ld de, 0
	ld hl, 60
	call __SWAP32
	call __MODI32
	push hl
	ld hl, 26
	push hl
	call _zprintdecimal2o
	ld a, 64
	push af
	ld hl, (_tmr)
	ld de, 60
	call __MODU16
	push hl
	ld hl, 29
	push hl
	call _zprintdecimal2o
	ld h, 2
	ld a, (_debug)
	and h
	or a
	jp z, __LABEL107
	ld a, 64
	push af
	ld hl, (_xdr)
	push hl
	ld hl, 188
	push hl
	call _zprintdecimal3o
	ld a, 64
	push af
	ld hl, (_xrp)
	push hl
	ld hl, 220
	push hl
	call _zprintdecimal3o
	ld a, 64
	push af
	ld hl, (_xrp)
	ld de, 11
	call __MUL16_FAST
	ld de, 12
	call __DIVU16
	push hl
	ld hl, 252
	push hl
	call _zprintdecimal3o
__LABEL107:
#line 332
		halt
#line 333
	ld hl, 32
	push hl
	ld hl, __LABEL__railtilesbg01 + 0 + 48
	push hl
	ld hl, 6528
	push hl
	call _smsldirvm
	ld hl, 32
	push hl
	ld hl, (_xrp)
	ld de, 11
	call __DIVU16
	ld de, -11
	add hl, de
	ex de, hl
	ld hl, __LABEL__railtilesbg01 + 128 + 48
	add hl, de
	push hl
	ld hl, 6560
	push hl
	call _smsldirvm
	ld hl, 32
	push hl
	ld hl, (_xrp)
	add hl, hl
	ld de, 11
	call __DIVU16
	ld de, -23
	add hl, de
	ex de, hl
	ld hl, __LABEL__railtilesbg01 + 256 + 48
	add hl, de
	push hl
	ld hl, 6592
	push hl
	call _smsldirvm
	ld hl, 32
	push hl
	ld hl, (_xrp)
	ld de, 3
	call __MUL16_FAST
	ld de, 11
	call __DIVU16
	ld de, -34
	add hl, de
	ex de, hl
	ld hl, __LABEL__railtilesbg01 + 384 + 48
	add hl, de
	push hl
	ld hl, 6624
	push hl
	call _smsldirvm
	ld hl, 32
	push hl
	ld hl, (_xrp)
	add hl, hl
	add hl, hl
	ld de, 11
	call __DIVU16
	ld de, -46
	add hl, de
	ex de, hl
	ld hl, __LABEL__railtilesbg01 + 512 + 48
	add hl, de
	push hl
	ld hl, 6656
	push hl
	call _smsldirvm
	ld hl, 32
	push hl
	ld hl, (_xrp)
	ld de, 5
	call __MUL16_FAST
	ld de, 11
	call __DIVU16
	ld de, -58
	add hl, de
	ex de, hl
	ld hl, __LABEL__railtilesbg01 + 640 + 48
	add hl, de
	push hl
	ld hl, 6688
	push hl
	call _smsldirvm
	ld hl, 32
	push hl
	ld hl, (_xrp)
	ld de, 6
	call __MUL16_FAST
	ld de, 11
	call __DIVU16
	ld de, -69
	add hl, de
	ex de, hl
	ld hl, __LABEL__railtilesbg01 + 768 + 48
	add hl, de
	push hl
	ld hl, 6720
	push hl
	call _smsldirvm
	ld hl, 32
	push hl
	ld hl, (_xrp)
	ld de, 7
	call __MUL16_FAST
	ld de, 11
	call __DIVU16
	ld de, -81
	add hl, de
	ex de, hl
	ld hl, __LABEL__railtilesbg01 + 896 + 48
	add hl, de
	push hl
	ld hl, 6752
	push hl
	call _smsldirvm
	ld hl, 32
	push hl
	ld hl, (_xrp)
	add hl, hl
	add hl, hl
	add hl, hl
	ld de, 11
	call __DIVU16
	ld de, -93
	add hl, de
	ex de, hl
	ld hl, __LABEL__railtilesbg01 + 1024 + 48
	add hl, de
	push hl
	ld hl, 6784
	push hl
	call _smsldirvm
	ld hl, 32
	push hl
	ld hl, (_xrp)
	ld de, 9
	call __MUL16_FAST
	ld de, 11
	call __DIVU16
	ld de, -104
	add hl, de
	ex de, hl
	ld hl, __LABEL__railtilesbg01 + 1152 + 48
	add hl, de
	push hl
	ld hl, 6816
	push hl
	call _smsldirvm
	ld hl, 32
	push hl
	ld hl, (_xrp)
	ld de, 10
	call __MUL16_FAST
	ld de, 11
	call __DIVU16
	ld de, -116
	add hl, de
	ex de, hl
	ld hl, __LABEL__railtilesbg01 + 1280 + 48
	add hl, de
	push hl
	ld hl, 6848
	push hl
	call _smsldirvm
	ld hl, 32
	push hl
	ld hl, (_xrp)
	ld de, -128
	add hl, de
	ex de, hl
	ld hl, __LABEL__railtilesbg01 + 1408 + 48
	add hl, de
	push hl
	ld hl, 6880
	push hl
	call _smsldirvm
	ld hl, 0
	ld (_ee0), hl
	jp __LABEL108
__LABEL111:
	ld hl, 8
	push hl
	ld hl, (_ee0)
	add hl, hl
	add hl, hl
	add hl, hl
	ex de, hl
	ld hl, __LABEL__cartiles01
	add hl, de
	push hl
	ld hl, (_ee0)
	ld de, 19
	add hl, de
	ld de, 32
	call __MUL16_FAST
	ld de, 6156
	add hl, de
	push hl
	call _smsldirvm
__LABEL112:
	ld hl, (_ee0)
	inc hl
	ld (_ee0), hl
__LABEL108:
	ld hl, 3
	ld de, (_ee0)
	or a
	sbc hl, de
	jp nc, __LABEL111
__LABEL110:
	ld hl, 2
	push hl
	ld h, 1
	ld a, (_gest)
	and h
	add a, a
	ld l, a
	ld h, 0
	ex de, hl
	ld hl, __LABEL__gearstate01
	add hl, de
	push hl
	ld hl, 6909
	push hl
	call _smsldirvm
	ld hl, (_trk)
	ld de, 8
	call __DIVU16
	ld (_trk2), hl
	ld a, l
	push af
	ld a, 32
	push af
	ld a, 252
	push af
	ld a, 140
	push af
	ld hl, 32
	push hl
	ld hl, __LABEL__railstripes01
	push hl
	ld hl, 12032
	push hl
	call _cvdirvmstrp
	ld hl, (_trk2)
	ld a, l
	push af
	ld a, 32
	push af
	ld a, 252
	push af
	ld a, 140
	push af
	ld hl, 64
	push hl
	ld hl, __LABEL__railstripes01 + 32
	push hl
	ld hl, 13824
	push hl
	call _cvdirvmstrp
	ld hl, (_trk2)
	ld a, l
	push af
	ld a, 32
	push af
	ld a, 254
	push af
	ld a, 174
	push af
	ld hl, 32
	push hl
	ld hl, __LABEL__railstripes01
	push hl
	ld hl, 12064
	push hl
	call _cvdirvmstrp
	ld hl, (_trk2)
	ld a, l
	push af
	ld a, 32
	push af
	ld a, 254
	push af
	ld a, 174
	push af
	ld hl, 64
	push hl
	ld hl, __LABEL__railstripes01 + 32
	push hl
	ld hl, 13888
	push hl
	call _cvdirvmstrp
	ld hl, (_trk2)
	ld a, l
	push af
	ld a, 32
	push af
	ld a, 254
	push af
	ld a, 238
	push af
	ld hl, 32
	push hl
	ld hl, __LABEL__railstripes01
	push hl
	ld hl, 12096
	push hl
	call _cvdirvmstrp
	ld hl, (_trk2)
	ld a, l
	push af
	ld a, 32
	push af
	ld a, 254
	push af
	ld a, 238
	push af
	ld hl, 64
	push hl
	ld hl, __LABEL__railstripes01 + 32
	push hl
	ld hl, 13952
	push hl
	call _cvdirvmstrp
	ld hl, (_tmr)
	inc hl
	ld (_tmr), hl
	jp __LABEL76
__LABEL77:
__LABEL__cartiles01:
#line 379
		defb $E0,$E1,$E2,$E3,$E4,$E5,$E6,$E7
		defb $E8,$E9,$EA,$EB,$EC,$ED,$EE,$EF
		defb $F0,$F1,$F2,$F3,$F4,$F5,$F6,$F7
		defb $F8,$F9,$FA,$FB,$FC,$FD,$FE,$FF
#line 383
__LABEL__dummyscoredisplay01:
#line 387
		defb "   "
		defb $6A,$6B,$6C
		defb " "
		defb $61,$62,$60,$60,$60
		defb "  "
		defb $8A,$8B,$8C,$8D
		defb "    "
		defb $7A,$7B,$7C
		defb " "
		defb $72,$74,$7D,$72,$78
		defb "  SCORE  3760   "
		defb $89,$85
		defb "   SPEED 189"
		defb $5D,$5E,$20
#line 401
__LABEL__cloudtiles01:
#line 405
		defb $10,$11,$12,$13,$14
		defb $15,$16,$17,$18,$19
#line 407
__LABEL__mountainstiles01:
#line 411
		defb  $F0,$F1,$F2,$F0, $F1,$F2,$F1,$F3, $F4,$F0,$F4,$F5, $F4,$F1,$F2,$F0, $F5,$F2,$F0,$F5, $F2,$F4,$F1,$F2, $F0,$F1,$F2,$F1, $F2,$F4,$F0,$F2
		defb  $FF, $FF,$FF,$FF,$FF, $F6,$F7,$F8,$F9, $F8,$FA,$FB,$FB, $F8,$FA,$FB,$FD, $F8,$FD,$FE,$FF, $FF,$FF,$FF,$FF, $FF,$FF,$FF,$FF, $FF,$FF,$FF
#line 413
__LABEL__gearstate01:
#line 420
		defb $10,$11,$12,$13
#line 421
	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
_smsjoypad1:
#line 1
		in  a, ($dc)
		cpl
#line 3
_smsjoypad1__leave:
	ret
_smsjoypad2:
#line 8
		in  a, ($dc)
		cpl
		rla
		rla
		rla
		and  $03
		ld  l, a
		in  a, ($dd)
		cpl
		add  a, a
		add  a, a
		or  l
#line 20
_smsjoypad2__leave:
	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
_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
_cvdirvmstrp:
	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
cvdirvmstrploop:
		ld a, (hl)
		add a, (ix+17)
		and (ix+15)
		jp z,cvdirvmstrpik
		ld a, (ix+13)
		jp cvdirvmstrpikend
cvdirvmstrpik:
		ld a, (ix+11)
cvdirvmstrpikend:
		out ($be),a
		inc hl
		dec bc
		ld a,b
		or c
		jp nz,cvdirvmstrploop
#line 28
_cvdirvmstrp__leave:
	exx
	ld hl, 14
__EXIT_FUNCTION:
	ld sp, ix
	pop ix
	pop de
	add hl, sp
	ld sp, hl
	push de
	exx
	ret
_zprintdecimal:
	push ix
	ld ix, 0
	add ix, sp
	ld l, (ix+6)
	ld h, (ix+7)
	ld de, 10000
	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
	push hl
	ld l, (ix+4)
	ld h, (ix+5)
	ld de, 6144
	add hl, de
	push hl
	call _smsvpoke
	ld l, (ix+6)
	ld h, (ix+7)
	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
	push hl
	ld l, (ix+4)
	ld h, (ix+5)
	ld de, 6144
	add hl, de
	inc hl
	push hl
	call _smsvpoke
	ld l, (ix+6)
	ld h, (ix+7)
	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
	push hl
	ld l, (ix+4)
	ld h, (ix+5)
	ld de, 6144
	add hl, de
	inc hl
	inc hl
	push hl
	call _smsvpoke
	ld l, (ix+6)
	ld h, (ix+7)
	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
	push hl
	ld l, (ix+4)
	ld h, (ix+5)
	ld de, 6144
	add hl, de
	inc hl
	inc hl
	inc hl
	push hl
	call _smsvpoke
	ld l, (ix+6)
	ld h, (ix+7)
	ld de, 10
	call __MODU16
	ld de, 48
	add hl, de
	push hl
	ld l, (ix+4)
	ld h, (ix+5)
	ld de, 6144
	add hl, de
	ld de, 4
	add hl, de
	push hl
	call _smsvpoke
_zprintdecimal__leave:
	ld sp, ix
	pop ix
	exx
	pop hl
	pop bc
	ex (sp), hl
	exx
	ret
_zprintdecimal3:
	push ix
	ld ix, 0
	add ix, sp
	ld l, (ix+6)
	ld h, (ix+7)
	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
	push hl
	ld l, (ix+4)
	ld h, (ix+5)
	ld de, 6144
	add hl, de
	push hl
	call _smsvpoke
	ld l, (ix+6)
	ld h, (ix+7)
	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
	push hl
	ld l, (ix+4)
	ld h, (ix+5)
	ld de, 6144
	add hl, de
	inc hl
	push hl
	call _smsvpoke
	ld l, (ix+6)
	ld h, (ix+7)
	ld de, 10
	call __MODU16
	ld de, 48
	add hl, de
	push hl
	ld l, (ix+4)
	ld h, (ix+5)
	ld de, 6144
	add hl, de
	inc hl
	inc hl
	push hl
	call _smsvpoke
_zprintdecimal3__leave:
	ld sp, ix
	pop ix
	exx
	pop hl
	pop bc
	ex (sp), hl
	exx
	ret
_zprintdecimal2:
	push ix
	ld ix, 0
	add ix, sp
	ld l, (ix+6)
	ld h, (ix+7)
	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
	push hl
	ld l, (ix+4)
	ld h, (ix+5)
	ld de, 6144
	add hl, de
	push hl
	call _smsvpoke
	ld l, (ix+6)
	ld h, (ix+7)
	ld de, 10
	call __MODU16
	ld de, 48
	add hl, de
	push hl
	ld l, (ix+4)
	ld h, (ix+5)
	ld de, 6144
	add hl, de
	inc hl
	push hl
	call _smsvpoke
_zprintdecimal2__leave:
	ld sp, ix
	pop ix
	exx
	pop hl
	pop bc
	ex (sp), hl
	exx
	ret
_zprintdecimal5o:
	push ix
	ld ix, 0
	add ix, sp
	ld a, (ix+9)
	add a, 48
	ld l, a
	ld h, 0
	ld e, h
	ld d, h
	push de
	push hl
	ld l, (ix+6)
	ld h, (ix+7)
	ld de, 10000
	call __DIVU16
	ld de, 0
	push de
	push hl
	ld de, 0
	ld hl, 10
	call __SWAP32
	call __MODI32
	pop bc
	add hl, bc
	ex de, hl
	pop bc
	adc hl, bc
	ex de, hl
	push hl
	ld l, (ix+4)
	ld h, (ix+5)
	ld de, 6144
	add hl, de
	push hl
	call _smsvpoke
	ld a, (ix+9)
	add a, 48
	ld l, a
	ld h, 0
	ld e, h
	ld d, h
	push de
	push hl
	ld l, (ix+6)
	ld h, (ix+7)
	ld de, 1000
	call __DIVU16
	ld de, 0
	push de
	push hl
	ld de, 0
	ld hl, 10
	call __SWAP32
	call __MODI32
	pop bc
	add hl, bc
	ex de, hl
	pop bc
	adc hl, bc
	ex de, hl
	push hl
	ld l, (ix+4)
	ld h, (ix+5)
	ld de, 6144
	add hl, de
	inc hl
	push hl
	call _smsvpoke
	ld a, (ix+9)
	add a, 48
	ld l, a
	ld h, 0
	ld e, h
	ld d, h
	push de
	push hl
	ld l, (ix+6)
	ld h, (ix+7)
	ld de, 100
	call __DIVU16
	ld de, 0
	push de
	push hl
	ld de, 0
	ld hl, 10
	call __SWAP32
	call __MODI32
	pop bc
	add hl, bc
	ex de, hl
	pop bc
	adc hl, bc
	ex de, hl
	push hl
	ld l, (ix+4)
	ld h, (ix+5)
	ld de, 6144
	add hl, de
	inc hl
	inc hl
	push hl
	call _smsvpoke
	ld a, (ix+9)
	add a, 48
	ld l, a
	ld h, 0
	ld e, h
	ld d, h
	push de
	push hl
	ld l, (ix+6)
	ld h, (ix+7)
	ld de, 10
	call __DIVU16
	ld de, 0
	push de
	push hl
	ld de, 0
	ld hl, 10
	call __SWAP32
	call __MODI32
	pop bc
	add hl, bc
	ex de, hl
	pop bc
	adc hl, bc
	ex de, hl
	push hl
	ld l, (ix+4)
	ld h, (ix+5)
	ld de, 6144
	add hl, de
	inc hl
	inc hl
	inc hl
	push hl
	call _smsvpoke
	ld a, (ix+9)
	add a, 48
	ld l, a
	ld h, 0
	push hl
	ld l, (ix+6)
	ld h, (ix+7)
	ld de, 10
	call __MODU16
	ex de, hl
	pop hl
	add hl, de
	push hl
	ld l, (ix+4)
	ld h, (ix+5)
	ld de, 6144
	add hl, de
	ld de, 4
	add hl, de
	push hl
	call _smsvpoke
_zprintdecimal5o__leave:
	ld sp, ix
	pop ix
	exx
	pop hl
	pop bc
	pop bc
	ex (sp), hl
	exx
	ret
_zprintdecimal3o:
	push ix
	ld ix, 0
	add ix, sp
	ld a, (ix+9)
	add a, 48
	ld l, a
	ld h, 0
	ld e, h
	ld d, h
	push de
	push hl
	ld l, (ix+6)
	ld h, (ix+7)
	ld de, 100
	call __DIVU16
	ld de, 0
	push de
	push hl
	ld de, 0
	ld hl, 10
	call __SWAP32
	call __MODI32
	pop bc
	add hl, bc
	ex de, hl
	pop bc
	adc hl, bc
	ex de, hl
	push hl
	ld l, (ix+4)
	ld h, (ix+5)
	ld de, 6144
	add hl, de
	push hl
	call _smsvpoke
	ld a, (ix+9)
	add a, 48
	ld l, a
	ld h, 0
	ld e, h
	ld d, h
	push de
	push hl
	ld l, (ix+6)
	ld h, (ix+7)
	ld de, 10
	call __DIVU16
	ld de, 0
	push de
	push hl
	ld de, 0
	ld hl, 10
	call __SWAP32
	call __MODI32
	pop bc
	add hl, bc
	ex de, hl
	pop bc
	adc hl, bc
	ex de, hl
	push hl
	ld l, (ix+4)
	ld h, (ix+5)
	ld de, 6144
	add hl, de
	inc hl
	push hl
	call _smsvpoke
	ld a, (ix+9)
	add a, 48
	ld l, a
	ld h, 0
	push hl
	ld l, (ix+6)
	ld h, (ix+7)
	ld de, 10
	call __MODU16
	ex de, hl
	pop hl
	add hl, de
	push hl
	ld l, (ix+4)
	ld h, (ix+5)
	ld de, 6144
	add hl, de
	inc hl
	inc hl
	push hl
	call _smsvpoke
_zprintdecimal3o__leave:
	ld sp, ix
	pop ix
	exx
	pop hl
	pop bc
	pop bc
	ex (sp), hl
	exx
	ret
_zprintdecimal2o:
	push ix
	ld ix, 0
	add ix, sp
	ld a, (ix+9)
	add a, 48
	ld l, a
	ld h, 0
	ld e, h
	ld d, h
	push de
	push hl
	ld l, (ix+6)
	ld h, (ix+7)
	ld de, 10
	call __DIVU16
	ld de, 0
	push de
	push hl
	ld de, 0
	ld hl, 10
	call __SWAP32
	call __MODI32
	pop bc
	add hl, bc
	ex de, hl
	pop bc
	adc hl, bc
	ex de, hl
	push hl
	ld l, (ix+4)
	ld h, (ix+5)
	ld de, 6144
	add hl, de
	push hl
	call _smsvpoke
	ld a, (ix+9)
	add a, 48
	ld l, a
	ld h, 0
	push hl
	ld l, (ix+6)
	ld h, (ix+7)
	ld de, 10
	call __MODU16
	ex de, hl
	pop hl
	add hl, de
	push hl
	ld l, (ix+4)
	ld h, (ix+5)
	ld de, 6144
	add hl, de
	inc hl
	push hl
	call _smsvpoke
_zprintdecimal2o__leave:
	ld sp, ix
	pop ix
	exx
	pop hl
	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 4079 "poleposition.bas"
#line 1 "lti16.asm"
	
#line 1 "lti8.asm"
	
__LTI8: ; Test 8 bit values A < H
        ; Returns result in A: 0 = False, !0 = True
	        sub h
	
__LTI:  ; Signed CMP
	        PROC
	        LOCAL __PE
	
	        ld a, 0  ; Sets default to false
__LTI2:
	        jp pe, __PE
	        ; Overflow flag NOT set
	        ret p
	        dec a ; TRUE
	
__PE:   ; Overflow set
	        ret m
	        dec a ; TRUE
	        ret
	        
	        ENDP
#line 3 "lti16.asm"
	
__LTI16: ; Test 8 bit values HL < DE
        ; Returns result in A: 0 = False, !0 = True
	        xor a
	        sbc hl, de
	        jp __LTI2
	
#line 4080 "poleposition.bas"
#line 1 "band32.asm"
	; FASTCALL bitwise and 32 version.
	; Performs 32bit and 32bit and returns the bitwise
	; result in DE,HL
	; First operand in DE,HL 2nd operand into the stack
	
__BAND32:
	    ld b, h
	    ld c, l ; BC <- HL
	
	    pop hl  ; Return address
	    ex (sp), hl ; HL <- Lower part of 2nd Operand
	
		ld a, b
	    and h
	    ld b, a
	
	    ld a, c
	    and l
	    ld c, a ; BC <- BC & HL
	
		pop hl  ; Return dddress
	    ex (sp), hl ; HL <- High part of 2nd Operand
	
	    ld a, d
	    and h
	    ld d, a
	
	    ld a, e
	    and l
	    ld e, a ; DE <- DE & HL
	
	    ld h, b
	    ld l, c ; HL <- BC  ; Always return DE,HL pair regs
	
	    ret
	
#line 4081 "poleposition.bas"
#line 1 "div32.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 "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 4082 "poleposition.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 4083 "poleposition.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 4084 "poleposition.bas"
#line 1 "band16.asm"
; vim:ts=4:et:
	; FASTCALL bitwise and16 version.
	; result in hl 
; __FASTCALL__ version (operands: A, H)
	; Performs 16bit or 16bit and returns the boolean
; Input: HL, DE
; Output: HL <- HL AND DE
	
__BAND16:
		ld a, h
		and d
	    ld h, a
	
	    ld a, l
	    and e
	    ld l, a
	
	    ret 
	
#line 4085 "poleposition.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 4086 "poleposition.bas"
	
ZXBASIC_USER_DATA:
	_eee EQU 49168
	_ee0 EQU 49170
	_ee1 EQU 49172
	_ee2 EQU 49174
	_ee3 EQU 49176
	_xdr EQU 49178
	_trk EQU 49180
	_spd EQU 49182
	_xrp EQU 49184
	_trk2 EQU 49186
	_tmr EQU 49188
	_debug EQU 49190
	_gest EQU 49191
	; 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
