#include "ti86asm.inc"
_altlfontptr	=$d2ed	;large font pointer
_altsfontptr	=$d2f0	;small font pointer
_asapvar		=$d6fc
.org _asm_exec_ram

_altlfontptr	=$d2ed	;large font pointer
_altsfontptr	=$d2f0	;small font pointer
_asapvar		=$d6fc
install:
	ld hl,_asapvar
	rst 20h
	rst 10h
	ld a,b
	ld hl,font_data-_asm_exec_ram+4
	add hl,de
	adc a,$00
	ld (_AltLFontPtr),a
	ld (_AltLFontPtr+1),hl
	ld a,%00000001
	xor (iy+35)	;flips bit  0 at iy+35
	ld (iy+35),a
	ret
font_data:
	.db $6f		;type of font (large)
	.db (end_font_data-begin_font_data)/8
			;# of characters in font
			;each is 8 bytes so
			; we take the total space
			; used and divide by
			; 8 to get how many
			; fonts we are doing
begin_font_data:
	.db ' '
	.db %00000
	.db %00000
	.db %00000
	.db %00000
	.db %00000
	.db %00000
	.db %00000

	.db 223		;cursor that blinks usually
	.db %11111
	.db %10001
	.db %10001
	.db %10001
	.db %10001
	.db %10001
	.db %11111

	.db 'x'
	.db %000000
	.db %000000
	.db %011011
	.db %011011
	.db %011100
	.db %110110
	.db %110110

	.db 'y'
	.db %000000
	.db %000000
	.db %011011
	.db %011011
	.db %011111
	.db %001110
	.db %111100

	.db '1'
	.db %001110
	.db %011110
	.db %001110
	.db %011100
	.db %011100
	.db %111110
	.db %111110

	.db '2'
	.db %011110
	.db %011110
	.db %000111
	.db %001110
	.db %111000
	.db %111110
	.db %111110

	.db '3'
	.db %011110
	.db %011111
	.db %000111
	.db %011100
	.db %001110
	.db %111110
	.db %111100

	.db '4'
	.db %011011
	.db %011011
	.db %011011
	.db %111110
	.db %011110
	.db %000110
	.db %000110

	.db '5'
	.db %011111
	.db %011111
	.db %011000
	.db %111100
	.db %000110
	.db %111110
	.db %111100

	.db '6'
	.db %001111
	.db %011100
	.db %011110
	.db %111110
	.db %110110
	.db %111110
	.db %011100

	.db '7'
	.db %011111
	.db %011111
	.db %011011
	.db %000110
	.db %001110
	.db %001100
	.db %001100

	.db '8'
	.db %001110
	.db %011111
	.db %011011
	.db %011110
	.db %110110
	.db %111110
	.db %011100

	.db '9'
	.db %001110
	.db %011111
	.db %011011
	.db %111111
	.db %011110
	.db %001110
	.db %011100

	.db '0'
	.db %011111
	.db %011111
	.db %011011
	.db %110110
	.db %110110
	.db %111110
	.db %111110

	.db 'a'
	.db %000000
	.db %001110
	.db %000011
	.db %011110
	.db %110110
	.db %111110
	.db %011110

	.db 'b'
	.db %011000
	.db %011000
	.db %011110
	.db %111111
	.db %110110
	.db %111110
	.db %011100

	.db 'c'
	.db %000000
	.db %000000
	.db %001110
	.db %011111
	.db %111000
	.db %111110
	.db %011100

	.db 'd'
	.db %000011
	.db %000011
	.db %001111
	.db %111111
	.db %110110
	.db %111110
	.db %011100

	.db 'e'
	.db %000000
	.db %000000
	.db %001110
	.db %011011
	.db %111110
	.db %110000
	.db %011110

	.db 'f'
	.db %000110
	.db %001110
	.db %001100
	.db %011110
	.db %111100
	.db %011000
	.db %011000

	.db 'g'
	.db %000000
	.db %001110
	.db %011011
	.db %011111
	.db %000110
	.db %111110
	.db %111100

	.db 'h'
	.db %011000
	.db %011000
	.db %011110
	.db %011111
	.db %110110
	.db %110110
	.db %110110

	.db 'i'
	.db %000110
	.db %000000
	.db %000110
	.db %000110
	.db %001100
	.db %001100
	.db %001100

	.db 'j'
	.db %000110
	.db %000000
	.db %000110
	.db %000110
	.db %001100
	.db %111100
	.db %111100

	.db 'k'
	.db %000000
	.db %011000
	.db %011011
	.db %011110
	.db %011100
	.db %111110
	.db %110110

	.db 'l'
	.db %001110
	.db %000110
	.db %000110
	.db %000110
	.db %001100
	.db %001100
	.db %001100

	.db 'm'
	.db %000000
	.db %000000
	.db %011110
	.db %011111
	.db %111110
	.db %111110
	.db %101010

	.db 'n'
	.db %000000
	.db %000000
	.db %011110
	.db %011111
	.db %011011
	.db %110110
	.db %110110

	.db 'o'
	.db %000000
	.db %000000
	.db %001110
	.db %011011
	.db %110110
	.db %110110
	.db %011100

	.db 'p'
	.db %000000
	.db %000000
	.db %001110
	.db %011011
	.db %011110
	.db %111000
	.db %110000

	.db 'q'
	.db %000000
	.db %001110
	.db %011011
	.db %001111
	.db %000111
	.db %000110
	.db %000110

	.db 'r'
	.db %000000
	.db %000000
	.db %000111
	.db %001111
	.db %011100
	.db %011000
	.db %011000

	.db 's'
	.db %000000
	.db %000000
	.db %001111
	.db %011100
	.db %001110
	.db %001110
	.db %111100

	.db 't'
	.db %000000
	.db %000110
	.db %001111
	.db %000110
	.db %000110
	.db %001100
	.db %001100

	.db 'u'
	.db %000000
	.db %000000
	.db %011011
	.db %011011
	.db %110110
	.db %111110
	.db %111110

	.db 'v'
	.db %000000
	.db %000000
	.db %011011
	.db %011011
	.db %110110
	.db %110110
	.db %011100

	.db 'w'
	.db %000000
	.db %000000
	.db %010101
	.db %011111
	.db %111110
	.db %111110
	.db %110110

	;x and y are at the top

	.db 'z'
	.db %000000
	.db %000000
	.db %011111
	.db %000110
	.db %011100
	.db %110000
	.db %111110

	.db 'A'
	.db %001110
	.db %011111
	.db %011011
	.db %111110
	.db %110110
	.db %110110
	.db %110110

	.db 'B'
	.db %001110
	.db %011111
	.db %011011
	.db %111100
	.db %110110
	.db %111110
	.db %111100

	.db 'C'
	.db %001110
	.db %011111
	.db %011011
	.db %110000
	.db %110110
	.db %111110
	.db %011100

	.db 'D'
	.db %011110
	.db %011111
	.db %011011
	.db %110110
	.db %110110
	.db %111110
	.db %111100

	.db 'E'
	.db %011111
	.db %011111
	.db %011000
	.db %111100
	.db %110000
	.db %111110
	.db %111110

	.db 'F'
	.db %011111
	.db %011111
	.db %011000
	.db %111100
	.db %111100
	.db %110000
	.db %110000

	.db 'G'
	.db %001111
	.db %011111
	.db %011000
	.db %111110
	.db %110110
	.db %111110
	.db %011100

	.db 'H'
	.db %011011
	.db %011011
	.db %011111
	.db %111110
	.db %110110
	.db %110110
	.db %110110

	.db 'I'
	.db %001111
	.db %001111
	.db %000110
	.db %001100
	.db %001100
	.db %011110
	.db %011110

	.db 'J'
	.db %000011
	.db %000011
	.db %000011
	.db %000110
	.db %110110
	.db %111110
	.db %011100

	.db 'K'
	.db %011011
	.db %011011
	.db %011110
	.db %111110
	.db %110110
	.db %110110
	.db %110110

	.db 'L'
	.db %011000
	.db %011000
	.db %011000
	.db %110000
	.db %110000
	.db %111110
	.db %111110

	.db 'M'
	.db %010001
	.db %011011
	.db %011111
	.db %111110
	.db %111110
	.db %111110
	.db %110110

	.db 'N'
	.db %010011
	.db %011011
	.db %011111
	.db %111110
	.db %111110
	.db %110110
	.db %110010

	.db 'O'
	.db %001110
	.db %011111
	.db %011011
	.db %110110
	.db %110110
	.db %111110
	.db %011100

	.db 'P'
	.db %001110
	.db %011111
	.db %011011
	.db %111110
	.db %111100
	.db %110000
	.db %110000

	.db 'Q'
	.db %001110
	.db %011111
	.db %011011
	.db %110110
	.db %110110
	.db %111110
	.db %011110

	.db 'R'
	.db %001110
	.db %011111
	.db %011011
	.db %111110
	.db %111100
	.db %110110
	.db %110110

	.db 'S'
	.db %001111
	.db %011111
	.db %011100
	.db %011100
	.db %001110
	.db %111110
	.db %111100

	.db 'T'
	.db %001111
	.db %001111
	.db %000110
	.db %000110
	.db %001100
	.db %001100
	.db %001100

	.db 'U'
	.db %011011
	.db %011011
	.db %011011
	.db %110110
	.db %110110
	.db %111110
	.db %011100

	.db 'V'
	.db %011011
	.db %011011
	.db %011011
	.db %111110
	.db %011100
	.db %011100
	.db %001000

	.db 'W'
	.db %010001
	.db %010101
	.db %011111
	.db %011111
	.db %111110
	.db %111110
	.db %110110

	.db 'X'
	.db %011011
	.db %011011
	.db %011111
	.db %011100
	.db %111110
	.db %110110
	.db %110110

	.db 'Y'
	.db %011011
	.db %011011
	.db %011111
	.db %111110
	.db %011100
	.db %011100
	.db %011100

	.db 'Z'
	.db %011111
	.db %011111
	.db %000111
	.db %011100
	.db %111000
	.db %111110
	.db %111110

	.db Lroot
	.db %01111
	.db %01111
	.db %01100
	.db %01100
	.db %11100
	.db %11100
	.db %01100

	.db '/'
	.db %00000
	.db %00010
	.db %00000
	.db %11111
	.db %11111
	.db %00000
	.db %00100

	.db '*'
	.db %00000
	.db %00000
	.db %00000
	.db %00110
	.db %00110
	.db %00000
	.db %00000

	.db '-'
	.db %000000
	.db %000000
	.db %000000
	.db %011111
	.db %111110
	.db %000000
	.db %000000

	.db '+'
	.db %000000
	.db %001110
	.db %001110
	.db %011111
	.db %111110
	.db %011100
	.db %011100

	.db '('
	.db %000111
	.db %001111
	.db %011100
	.db %110000
	.db %111000
	.db %011110
	.db %001110

	.db ')'
	.db %011100
	.db %011110
	.db %000111
	.db %000110
	.db %001110
	.db %111100
	.db %111000

	.db '['
	.db %000111
	.db %000111
	.db %000110
	.db %001100
	.db %001100
	.db %001110
	.db %001110

	.db ']'
	.db %011100
	.db %011100
	.db %001100
	.db %011000
	.db %011000
	.db %111000
	.db %111000

	.db '{'
	.db %00011
	.db %00110
	.db %00110
	.db %01100
	.db %00110
	.db %00110
	.db %00011

	.db '}'
	.db %11000
	.db %01100
	.db %01100
	.db %00110
	.db %01100
	.db %01100
	.db %11000

	.db Lcomma
	.db %00000
	.db %00000
	.db %00000
	.db %01110
	.db %01110
	.db %00110
	.db %01100

	.db LInverse
	.db %00011
	.db %00011
	.db %11011
	.db %00011
	.db %00011
	.db %00000
	.db %00000

	.db LStore
	.db %00000
	.db %01100
	.db %01110
	.db %11111
	.db %11111
	.db %01110
	.db %01100

	.db LCaret
	.db %01110
	.db %11111
	.db %11011
	.db %00000
	.db %00000
	.db %00000
	.db %00000

	.db LExponent
	.db %00000
	.db %00000
	.db %00000
	.db %10111
	.db %10101
	.db %10101
	.db %10111

	.db LNeg
	.db %00000
	.db %00000
	.db %00111
	.db %00111
	.db %00000
	.db %00000
	.db %00000

	.db LSquare
	.db %11100
	.db %01100
	.db %11000
	.db %11100
	.db %00000
	.db %00000
	.db %00000

	.db '.'
	.db %00000
	.db %00000
	.db %00000
	.db %00000
	.db %01110
	.db %01110
	.db %01110

	.db '='
	.db %00000
	.db %11111
	.db %11111
	.db %00000
	.db %11111
	.db %11111
	.db %00000

	.db LColon
	.db %01110
	.db %01110
	.db %01110
	.db %00000
	.db %01110
	.db %01110
	.db %01110

	.db LSemiColon
	.db %01110
	.db %01110
	.db %00000
	.db %01110
	.db %01110
	.db %00110
	.db %01100

	.db LPi
	.db %00000
	.db %00000
	.db %11111
	.db %11111
	.db %01011
	.db %01011
	.db %01011

	.db LSupX
	.db %11011
	.db %01110
	.db %11011
	.db %00000
	.db %00000
	.db %00000
	.db %00000

	.db LNE
	.db %00011
	.db %11111
	.db %11111
	.db %00110
	.db %11111
	.db %11111
	.db %01100

	.db 227		;insert thingy
	.db %10000
	.db %10000
	.db %10000
	.db %10000
	.db %10000
	.db %10000
	.db %10000

	.db 228		;2nd insert thingy
	.db %10000
	.db %10110
	.db %11111
	.db %10110
	.db %10110
	.db %10110
	.db %10000

	.db 229		;A insert thingy
	.db %10000
	.db %10000
	.db %10111
	.db %10101
	.db %10111
	.db %10101
	.db %10000

	.db 230		;a insert thingy
	.db %10000
	.db %10010
	.db %10001
	.db %10011
	.db %10101
	.db %10011
	.db %10000

end_font_data:
.end
