;********************** GLCD kezelö program******************
;	32MHz-es c1ock-ra iródott
#INCLUDE "P18F4620.INC"
	Errorlevel	0,-302
	Title 	LCD_4_biten
	List	X=on
	List	C=132
	List	N=94
	processor	18F4620
	radix	hex

;-------------------------------------------------------------------- 
;Register definitions 
;-------------------------------------------------------------------- 
	CBLOCK 0x00

wtreg0,wtreg1,wtreg2	;varakozo hurkok regiszterei
cnt0,cnt1				;átmeneti számlálók
Glcd_reg		;kiküldendő
Glcd_x, Glcd_y, Glcd_char,Glcd_charH
Utem, tmp0, tmp1
KTSTATUS
VEREDL,VEREDH
; 32 BITES ÁTALAKÍTÁS
BIN:4		; 32-BIT binary number (unsigned)
BCD:5		; 10 BC digits or 10 ascii chars
pti,pto		; pointers
ii
cnt

	ENDC

iranya		equ	b'11111111'
iranyb		equ	b'11111111'
iranyc		equ	b'00000000'
iranyd		equ	b'00000000'
iranye		equ	b'00000111'
;-------------------------------------------------------------------- 
;BITEK 
;-------------------------------------------------------------------- 
#define carry 	status,c 
#define zero 	status,z 
#define Glcd_port		PORTD		;Portd-re kötöttem az lcd-t
#define Glcd_lat		LATD 
#define Glcd_tris		TRISD
#define Glcd_Enable		PORTC,0 	;enable
#define Glcd_Reset		PORTC,3 	;reset
#define Glcd_CS1		PORTC,7 	;CS1
#define Glcd_CS2		PORTC,6 	;CS2
#define Glcd_busy		Glcd_port,7	;busy
#define Glcd_cmd 	bcf	LATC,1		;D/I
#define Glcd_dat 	bsf	LATC,1	
#define Glcd_rd 	bsf	LATC,2		;R/W
#define Glcd_wr 	bcf	LATC,2


JNC	MACRO	addr			;jump if carry bit is not set 
	btfss	3,0
	goto	addr
	ENDM

jc  MACRO  addr			;jump if carry bit is set 
	btfsc 3,0
	goto addr
	ENDM

JZ  MACRO  addr			;jump if zero bit is set 
	btfsc 3,2
	goto addr
	ENDM

CLC MACRO 		;clear carry bit
	bcf   3,0
	ENDM

JNZ	MACRO	ADDR
	BTFSS 	3,2
	GOTO	ADDR
	ENDM

MOV	MACRO	REG1,REG2
	MOVF	REG2,W
	MOVWF 	REG1
	ENDM

SUBRK	MACRO	REG,KONST
		MOVLW 	KONST
		SUBWF	REG,F
		ENDM

;
; 16 bit unsigned addition with carry out.
; Operation: DST = DST + SRC                       
;
; DST is replaced, SRC is preserved, Carry is set correctly
;
ADD16   MACRO   DST,SRC 
        MOVF    (SRC),W         ; Get low byte
        ADDWF   (DST),F         ; Add to destination
        MOVF    (SRC)+1,W       ; Get high byte
        BTFSC   STATUS,C        ; Check for carry
        INCF    (SRC)+1,W       ; Add one for carry
        ADDWF   (DST)+1,F       ; Add high byte into DST
        ENDM

Glcd_E macro
	nop
	nop
	bsf	Glcd_Enable
	nop
	nop
	nop
	nop
	nop
	bcf	Glcd_Enable
	nop
	nop
	endm
;-------------------------------------------------------------------- 
	ORG	0X0000
	nop
	clrf	INTCON
	goto	INIT

;-------[ I N T E R R U P T    R U T 1 N ]---------------------------
	ORG 	0x008 
 	movlw	0x3C
	movwf	TMR0H
	movlw	0xB0
	movwf	TMR0L
	bcf		INTCON,TMR0IF
	bcf		KTSTATUS,0		;kell-e forgatni
	incf	Utem
	movlw	0x1F
	andwf	Utem,f
	movlw	0x0C
	cpfsgt	Utem
	bsf		KTSTATUS,0		;igen kell forgatni

	btfsc	Utem,0
	bsf		KTSTATUS,1		;igen kell AD

	retfie 1		;INTERRUPT VÉGE

	org	0x080
Logo_Utem
	rlncf	WREG
	ADDWF 	PCL
	RETLW 	0x00
	RETLW 	0x01
	RETLW 	0x02
	RETLW 	0x03
	RETLW 	0x04
	RETLW 	0x05
	RETLW 	0x06
	RETLW 	0x05
	RETLW 	0x04
	RETLW 	0x03
	RETLW 	0x02
	RETLW 	0x01
	RETLW 	0x00

INIT
	banksel PORTA
	clrf	PORTA
	clrf	PORTB
	clrf	PORTC
	clrf	PORTD
	clrf	PORTE
	clrf	INTCON		;interrupts disabled 
	movlw	iranye
	movwf	TRISE
	movlw	iranyd
	movwf	TRISD
	movlw	iranyc
	movwf	TRISC
	movlw	iranyb
	movwf	TRISB		;portb iranyok beallitasa
	movlw	iranya
	movwf	TRISA		;porta iranyok beallitasa
	movlw	b'00001111'
	movwf	ADCON1		;minden port digital i/o
	movlw	b'01110000'
	movwf	OSCCON		;8MHz
	movlw	b'01000000'
	movwf	OSCTUNE		;PLL be -> 32MHz
	clrf	SSPCON2
	clrf	PIE1
	clrf	PIE2
	clrf	TMR1L
	clrf	TMR1H
	clrf	T1CON		;timer1 off
	clrf	T2CON		;timer2 off
	clrf	SSPCON1
	clrf	CCP1CON
	clrf	CCP2CON
	clrf	ADCON0
;------------------------------------------
; TMR0 IT beállítás 200ms
	movlw	0x04
	movwf	T0CON
	movlw	0x3C
	movwf	TMR0H
	movlw	0xB0
	movwf	TMR0L
	bsf		INTCON,TMR0IE

;------------------------------------------
; AD beállítás
	movlw	b'00001110'		;AN0 analóg
	movwf	ADCON1		
	movlw	b'10010010'		;jobbra igazítva, 4 Tad akvizíció, Fosc/32
	movwf	ADCON2
	movlw	b'00000001'		; bekapcs
	movwf	ADCON0	

	movlw	.200
	call	WAIT
	call	Glcd_Init
	call	Glcd_Torol

	bcf		Glcd_CS1
	bsf		Glcd_CS2
	movlw	0XB8			; x = 1
	movwf	Glcd_x
	movlw	0X70			; y = 0
	movwf	Glcd_y
	movlw	0X00			
	movwf	Glcd_char
	CALL	Glcd_Logo16x16
	clrf	Utem
	clrf	KTSTATUS
	bsf		T0CON,TMR0ON
	bsf		INTCON,GIE	

TESZT
	bsf		Glcd_CS1
	bcf		Glcd_CS2

	movlw	0XB8			; x = 1
	movwf	Glcd_x
	movlw	0X40			; y = 0
	movwf	Glcd_y
	movlw	'G'
	movwf	Glcd_char
	CALL	Glcd_Char6x8
	movlw	0XB8			; x = 1
	movwf	Glcd_x
	movlw	0X46			; y = 0
	movwf	Glcd_y
	movlw	'L'
	movwf	Glcd_char
	CALL	Glcd_Char6x8
	movlw	0XB8			; x = 1
	movwf	Glcd_x
	movlw	0X4C			; y = 0
	movwf	Glcd_y
	movlw	'C'
	movwf	Glcd_char
	CALL	Glcd_Char6x8
	movlw	0XB8			; x = 1
	movwf	Glcd_x
	movlw	0X52			; y = 0
	movwf	Glcd_y
	movlw	'D'
	movwf	Glcd_char
	CALL	Glcd_Char6x8
	movlw	0XB8			; x = 1
	movwf	Glcd_x
	movlw	0X58			; y = 0
	movwf	Glcd_y
	movlw	' '
	movwf	Glcd_char
	CALL	Glcd_Char6x8
	movlw	0XB8			; x = 1
	movwf	Glcd_x
	movlw	0X5E			; y = 0
	movwf	Glcd_y
	movlw	't'
	movwf	Glcd_char
	CALL	Glcd_Char6x8
	movlw	0XB8			; x = 1
	movwf	Glcd_x
	movlw	0X64			; y = 0
	movwf	Glcd_y
	movlw	'e'
	movwf	Glcd_char
	CALL	Glcd_Char6x8
	movlw	0XB8			; x = 1
	movwf	Glcd_x
	movlw	0X6A			; y = 0
	movwf	Glcd_y
	movlw	's'
	movwf	Glcd_char
	CALL	Glcd_Char6x8
	movlw	0XB8			; x = 1
	movwf	Glcd_x
	movlw	0X70			; y = 0
	movwf	Glcd_y
	movlw	'z'
	movwf	Glcd_char
	CALL	Glcd_Char6x8
	movlw	0XB8			; x = 1
	movwf	Glcd_x
	movlw	0X76			; y = 0
	movwf	Glcd_y
	movlw	't'
	movwf	Glcd_char
	CALL	Glcd_Char6x8


	bcf		Glcd_CS1
	bsf		Glcd_CS2

	movlw	0XBB			; x = 3
	movwf	Glcd_x
	movlw	0X40			; y = 48
	movwf	Glcd_y
	CALL	Glcd_Char16x24_Dp

ALLJ
	btfss	KTSTATUS,0
	goto	Nincs_forgatas
	bcf		Glcd_CS1
	bsf		Glcd_CS2
	movf	Utem,w
	call	Logo_Utem
	movwf	Glcd_char
	movlw	0XB8			; x = 1
	movwf	Glcd_x
	movlw	0X70			; y = 0
	movwf	Glcd_y
	CALL	Glcd_Logo16x16
	bcf		KTSTATUS,0		;kirajzolva
Nincs_forgatas

	btfss	KTSTATUS,1
	goto	Nincs_AD
	clrf	VEREDL
	clrf	VEREDH
	call	ADINRA0
	movff	VEREDL,BIN+3
	movff	VEREDH,BIN+2
	clrf	BIN+1
	clrf	BIN

	CALL	b2BCD

	bsf		Glcd_CS1
	bcf		Glcd_CS2
	movf	BCD+2,w
	andlw	0x0F
	movwf	Glcd_char
	movlw	0XBB			; x = 3
	movwf	Glcd_x
	movlw	0X50			; y = 16
	movwf	Glcd_y
	CALL	Glcd_Char_Tahoma16x24

	swapf	BCD+3,w
	andlw	0x0F
	movwf	Glcd_char
	movlw	0XBB			; x = 3
	movwf	Glcd_x
	movlw	0X60			; y = 0
	movwf	Glcd_y
	CALL	Glcd_Char_Tahoma16x24

	movf	BCD+3,w
	andlw	0x0F
	movwf	Glcd_char
	movlw	0XBB			; x = 3
	movwf	Glcd_x
	movlw	0X70			; y = 8
	movwf	Glcd_y
	CALL	Glcd_Char_Tahoma16x24

	bcf		Glcd_CS1
	bsf		Glcd_CS2

	swapf	BCD+4,w
	andlw	0x0F
	movwf	Glcd_char
	movlw	0XBB			; x = 3
	movwf	Glcd_x
	movlw	0X48			; y = 0
	movwf	Glcd_y
	CALL	Glcd_Char_Tahoma16x24

	movf	BCD+4,w
	andlw	0x0F
	movwf	Glcd_char
	movlw	0XBB			; x = 3
	movwf	Glcd_x
	movlw	0X58			; y = 16
	movwf	Glcd_y
	CALL	Glcd_Char_Tahoma16x24

	bcf		KTSTATUS,1
Nincs_AD
	GOTO	ALLJ

;******************************************************************
; CONVERT 32-BIT binary number at <bin> into a BCD number
; at <BCD>. Uses Mike Keitz's procedure for handling BCD 
; adjust; Modified Microchip AN526 for 32-BITs.

b2BCD	
	movlw	.32		; 32-BITs
	movwf	ii		; make cycle counter
	clrf	BCD		; clear result area
	clrf	BCD+1
	clrf	BCD+2
	clrf	BCD+3
	clrf	BCD+4
	
b2BCD2	
	lfsr	FSR0,BCD		; make pointer
	movlw	.5
	movwf	cnt

; Mike's routine:

b2BCD3	
	movlw	0x33		
	addwf	INDF0,f		; add to both nybbles
	btfsc	INDF0,3		; test if low result > 7
	andlw	0xf0		; low result >7 so take the 3 out
	btfsc	INDF0,7		; test if high result > 7
	andlw	0x0f		; high result > 7 so ok
	subwf	INDF0,f		; any results <= 7, subtract back
	incf	FSR0L,f		; point to next
	decfsz	cnt
	goto	b2BCD3
	
	RLCF	BIN+3,f		; get another BIT
	RLCF	BIN+2,f
	RLCF	BIN+1,f
	RLCF	BIN+0,f
	RLCF	BCD+4,f		; put it into BCD
	RLCF	BCD+3,f
	RLCF	BCD+2,f
	RLCF	BCD+1,f
	RLCF	BCD+0,f
	decfsz	ii,f		; all done?
	goto	b2BCD2		; no, loop
	return		 	; yes

;------------------------------------------------------------------------------
; A/D átalakítás 0
;
ADINRA0
	movlw	.20				;20 mérés ciklusonként
	movwf	tmp0
A0CIKLUS			
	bsf		ADCON0,GO	;konverzió indul
A0TOV
	btfsc	ADCON0,GO	;ha végzett tovább
	BRA		A0TOV
	ADD16	VEREDL, ADRESL	;hozzáadjuk az eredményt
	decfsz	tmp0
	bra		A0CIKLUS
	return

;------[ Glcd inicializálás rutin ]------------------------------------------------ 
;
Glcd_Init
	bcf		Glcd_Reset
	movlw	.200
	call	WAIT
	bsf		Glcd_Reset
	setf	Glcd_tris
	Glcd_cmd
	Glcd_rd
Glcd_init1
	Glcd_E
	nop
	nop	
	btfsc	Glcd_busy	
	goto	Glcd_init1
	clrf	Glcd_tris
	Glcd_wr
	bsf		Glcd_CS1
	bsf		Glcd_CS2
	movlw	b'00111111'		; kijelző bekapcs
	movwf	Glcd_reg
	call	Glcd_Parancs

	movlw	b'01000000'		; y = 0
	movwf	Glcd_reg
	call	Glcd_Parancs

	movlw	b'11000000'		; z = 0
	movwf	Glcd_reg
	call	Glcd_Parancs

	movlw	b'10111000'		; x = 0
	movwf	Glcd_reg
	call	Glcd_Parancs

	bcf		Glcd_CS1
	bcf		Glcd_CS2
	return

;------[ Glcd kiíró rutin ]------------------------------------------------ 
;	Glcd_Adat, Glcd_Parancs
;	Glcd_reg -ben levő adator küldi ki 

Glcd_Adat
	setf	Glcd_tris
	Glcd_cmd
	Glcd_rd
Glcd_adat1
	Glcd_E
;	btfsc	Glcd_busy	
;	goto	Glcd_adat1
	clrf	Glcd_tris
	Glcd_wr
	Glcd_dat
	movf	Glcd_reg,w
	movwf	Glcd_lat
	Glcd_E
	return

;------------------------------------
Glcd_Parancs 
	setf	Glcd_tris
	Glcd_cmd
	Glcd_rd
Glcd_parancs1
	Glcd_E
;	btfsc	Glcd_busy	
;	goto	Glcd_parancs1
	clrf	Glcd_tris
	Glcd_wr	
	movf	Glcd_reg,w
	movwf	Glcd_lat
	Glcd_E
	return

;------------------------------------
Glcd_Torol 
	bsf		Glcd_CS1
	bsf		Glcd_CS2
	movlw	0x08	
	movwf	Glcd_x
Glcd_torol1
	movf	Glcd_x,w
	iorlw	0xB8
	movwf	Glcd_reg
	call	Glcd_Parancs
	movlw	0x40	
	movwf	Glcd_y
	movwf	Glcd_reg
	call	Glcd_Parancs
	clrf	Glcd_reg
Glcd_torol2
	call	Glcd_Adat
	decfsz	Glcd_y,f
	goto	Glcd_torol2
	decfsz	Glcd_x,f
	goto	Glcd_torol1
	return

;------------------------------------
Glcd_Tele 
	movlw	0x08	
	movwf	Glcd_x
Glcd_tele1
	movf	Glcd_x,w
	iorlw	0xB8
	movwf	Glcd_reg
	call	Glcd_Parancs
	movlw	0x40	
	movwf	Glcd_y
	movwf	Glcd_reg
	call	Glcd_Parancs
	setf	Glcd_reg
Glcd_tele2
	call	Glcd_Adat
	decfsz	Glcd_y,f
	goto	Glcd_tele2
	decfsz	Glcd_x,f
	goto	Glcd_tele1
	return

;--------------------------------------------------------
;	Glcd_x, Glcd_y 	kiírandó cím
;	Glcd_char		kiírandó szám

Glcd_Char_Tahoma16x24 
	MOVLW 	upper Tahoma16x24 	; Load TBLPTR with the base
	MOVWF 	TBLPTRU 			; address of the word
	MOVLW 	high Tahoma16x24
	MOVWF 	TBLPTRH
	MOVLW 	low Tahoma16x24
	MOVWF 	TBLPTRL
	GOTO	Glcd_Char_ki


Glcd_Char16x24 
	MOVLW 	upper Szam16x24 	; Load TBLPTR with the base
	MOVWF 	TBLPTRU 			; address of the word
	MOVLW 	high Szam16x24
	MOVWF 	TBLPTRH
	MOVLW 	low Szam16x24
	MOVWF 	TBLPTRL
Glcd_Char_ki
	MOVF	Glcd_char,F
	BZ		Glcd_char0
Glcd_char3
	MOVLW	0X30
	ADDWF	TBLPTRL,F
	BTFSC	STATUS,C
	INCF	TBLPTRH
	DECFSZ	Glcd_char
	GOTO	Glcd_char3
Glcd_char0
	MOVLW	.3
	MOVWF	cnt0
	DECF	Glcd_x,F
Glcd_char1
	INCF	Glcd_x,F
	MOVF	Glcd_x,W
	MOVWF	Glcd_reg
	CALL	Glcd_Parancs
	MOVF	Glcd_y,W
	MOVWF	Glcd_reg
	CALL	Glcd_Parancs
	MOVLW	.16
	MOVWF	cnt1	
Glcd_char2
	TBLRD*+ 					; read into TABLAT and increment
	MOVF 	TABLAT, W 			; get data
	MOVWF 	Glcd_reg
	CALL	Glcd_Adat
	DECFSZ	cnt1,F
	GOTO	Glcd_char2
	DECFSZ	cnt0,F
	GOTO	Glcd_char1	
	return


;--------------------------------------------------------
;	Glcd_x, Glcd_y 	kiírandó cím
;	Glcd_char		kiírandó karakter
Glcd_Char6x8 

	CLC
	rlcf	Glcd_char, f
	clrf	Glcd_charH
	rlcf	Glcd_charH, f
	movf	Glcd_charH, w
	movwf	cnt1
	movf	Glcd_char, w
	movwf	cnt0
	CLC
	rlcf	cnt0, f
	rlcf	cnt1, f
	movf	cnt0, w
	addwf	Glcd_char, f
	movf	cnt1, w
	btfsc	STATUS,C		;skpnc
	incfsz	cnt1, w
	addwf	Glcd_charH, f

	MOVLW 	upper Font8x6	; Load TBLPTR with the base
	MOVWF 	TBLPTRU 		; address of the word
	MOVLW 	high Font8x6	;0x82
	MOVWF 	TBLPTRH
	MOVLW 	low Font8x6		;0xD8
	MOVWF 	TBLPTRL

	ADD16	TBLPTRL,Glcd_char

	MOVF	Glcd_x,W
	MOVWF	Glcd_reg
	CALL	Glcd_Parancs
	MOVF	Glcd_y,W
	MOVWF	Glcd_reg
	CALL	Glcd_Parancs
	MOVLW	.6
	MOVWF	cnt1	
Glcd_chr6
	TBLRD*+ 					; read into TABLAT and increment
	MOVF 	TABLAT, W 			; get data
	MOVWF 	Glcd_reg
	CALL	Glcd_Adat
	DECFSZ	cnt1,F
	GOTO	Glcd_chr6
	return

;--------------------------------------------------------
;	Glcd_x, Glcd_y 	kiírandó cím
;	
Glcd_Char16x24_Dp 
	MOVLW 	upper Dp8x24	 	; Load TBLPTR with the base
	MOVWF 	TBLPTRU 			; address of the word
	MOVLW 	high Dp8x24			;0x81
	MOVWF 	TBLPTRH
	MOVLW 	low Dp8x24			;0xE0
	MOVWF 	TBLPTRL
	MOVLW	.3
	MOVWF	cnt0
	DECF	Glcd_x,F
Glcd_dp1
	INCF	Glcd_x,F
	MOVF	Glcd_x,W
	MOVWF	Glcd_reg
	CALL	Glcd_Parancs
	MOVF	Glcd_y,W
	MOVWF	Glcd_reg
	CALL	Glcd_Parancs
	MOVLW	.8
	MOVWF	cnt1	
Glcd_dp2
	TBLRD*+ 					; read into TABLAT and increment
	MOVF 	TABLAT, W 			; get data
	MOVWF 	Glcd_reg
	CALL	Glcd_Adat
	DECFSZ	cnt1,F
	GOTO	Glcd_dp2
	DECFSZ	cnt0,F
	GOTO	Glcd_dp1	
	return
;----------------------------------------------
; Logó kirajzolás
Glcd_Logo16x16 
	MOVLW 	upper KT_embl16x16 	; Load TBLPTR with the base
	MOVWF 	TBLPTRU 			; address of the word
	MOVLW 	high KT_embl16x16		;0x81
	MOVWF 	TBLPTRH
	MOVLW 	low KT_embl16x16		;0xF8
	MOVWF 	TBLPTRL
	MOVF	Glcd_char,F
	BZ		Glcd_logo0
Glcd_logo3
	MOVLW	0X20
	ADDWF	TBLPTRL,F
	BTFSC	STATUS,C
	INCF	TBLPTRH
	DECFSZ	Glcd_char
	GOTO	Glcd_logo3
Glcd_logo0
	MOVLW	.2
	MOVWF	cnt0
	DECF	Glcd_x,F
Glcd_logo1
	INCF	Glcd_x,F
	MOVF	Glcd_x,W
	MOVWF	Glcd_reg
	CALL	Glcd_Parancs
	MOVF	Glcd_y,W
	MOVWF	Glcd_reg
	CALL	Glcd_Parancs
	MOVLW	.16
	MOVWF	cnt1	
Glcd_logo2
	TBLRD*+ 					; read into TABLAT and increment
	MOVF 	TABLAT, W 			; get data
	MOVWF 	Glcd_reg
	CALL	Glcd_Adat
	DECFSZ	cnt1,F
	GOTO	Glcd_logo2
	DECFSZ	cnt0,F
	GOTO	Glcd_logo1	
	return


;------[ WAIT rutin ]------------------------------------------------ 
;	Ez a rutin N msec-ot vár, ahol N a W regiszterben van. 
;	32 MHz-es clock-ra iródott
WAIT
	movwf	wtreg1
	movlw	0x3F 
	movwf	wtreg0
	movlw	0x07 
	movwf	wtreg2
WT1	
	decfsz	wtreg0,f
	goto	$+6
	decfsz	wtreg2,f
	goto WT1
	movlw	0x3F 
	movwf	wtreg0
	movlw	0x07 
	movwf	wtreg2
	decfsz	wtreg1,f
	goto WT1
	return
;-------[ DELAY10 rutin ]-------------------------------------------- 
;	A rutin késleltetése: lOxN mikrosec, ahol N a W regiszterben van.
DELAY10
	movwf	wtreg1
	movlw	0x1A 
	movwf	wtreg0
DLY1
	decfsz	wtreg0,f
	goto	DLY1
	movlw	0x1A 
	movwf	wtreg0
	decfsz	wtreg1,f
	goto	DLY1
	return


	org	0x8000
Szam16x24	;0x8000
	db	0x00, 0x00, 0x00, 0xC0, 0xF0, 0xF0, 0x18, 0x08, 0x08, 0x18, 0xF0, 0xF0, 0xC0, 0x00, 0x00, 0x00	; 0
	db	0x00, 0x00, 0xFF, 0xFF, 0xFF, 0xFF, 0x00, 0x00, 0x00, 0x00, 0xFF, 0xFF, 0xFF, 0xFF,	0x00, 0x00
	db	0x00, 0x00, 0x00, 0x03, 0x0F, 0x0F, 0x18, 0x10, 0x10, 0x18, 0x0F, 0x0F, 0x03, 0x00, 0x00, 0x00

	db	0x00, 0x00, 0x00, 0x40, 0x60, 0x60, 0xF0, 0xF0, 0xF8, 0xF8, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00	; 1
	db	0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xFF, 0xFF, 0xFF, 0xFF, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00
	db	0x00, 0x00, 0x00, 0x10, 0x10, 0x10, 0x1F, 0x1F, 0x1F, 0x1F, 0x18, 0x10, 0x10, 0x00, 0x00, 0x00

	db	0x00, 0x00, 0x80, 0xE0, 0x70, 0x30, 0x38, 0x38, 0x78, 0xF8, 0xF0, 0xF0, 0xE0, 0x00, 0x00, 0x00	; 2
	db	0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0xC0, 0x70, 0x3F, 0x1F, 0x07, 0x03, 0x80, 0x00, 0x00
	db	0x00, 0x00, 0x10, 0x18, 0x1C, 0x1E, 0x1F, 0x1E, 0x1E, 0x1E, 0x1E, 0x1E, 0x1E, 0x03, 0x00, 0x00

	db 0x00, 0x00, 0x00, 0x40, 0x20, 0x18, 0x18, 0x18, 0x38, 0xF8, 0xF8, 0xF0, 0x60, 0x00, 0x00, 0x00	; 3
	db 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x04, 0x0E, 0x0E, 0x3F, 0xFD, 0xFC, 0xF8, 0xF0, 0x00, 0x00
	db 0x00, 0x00, 0x0E, 0x1E, 0x1E, 0x1C, 0x18, 0x18, 0x18, 0x08, 0x0F, 0x07, 0x03, 0x01, 0x00, 0x00

	db 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0xE0, 0xF0, 0xF8, 0xF8, 0x00, 0x00, 0x00, 0x00	; 4
	db 0x00, 0x00, 0xE0, 0xD0, 0xC8, 0xC6, 0xC1, 0xC0, 0xFF, 0xFF, 0xFF, 0xFF, 0xC0, 0xC0, 0x00, 0x00
	db 0x00, 0x00, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x1F, 0x1F, 0x1F, 0x1F, 0x01, 0x01, 0x00, 0x00

	db 0x00, 0x00, 0x00, 0x00, 0xE0, 0x78, 0x78, 0x78, 0x78, 0x78, 0x78, 0x78, 0x78, 0x18, 0x00, 0x00	; 5
	db 0x00, 0x00, 0x18, 0x1F, 0x1E, 0x1E, 0x1E, 0x1E, 0x3C, 0x3C, 0x7C, 0xF8, 0xF0, 0xE0, 0x00, 0x00
	db 0x00, 0x00, 0x0E, 0x1E, 0x1E, 0x1C, 0x18, 0x18, 0x10, 0x10, 0x10, 0x08, 0x07, 0x03, 0x00, 0x00

	db 0x00, 0x00, 0x00, 0x00, 0x80, 0xC0, 0xE0, 0x20, 0x30, 0x30, 0x18, 0x18, 0x08, 0x08, 0x00, 0x00	; 6
	db 0x00, 0x00, 0xF8, 0xFF, 0xFF, 0x07, 0x07, 0x04, 0x04, 0x1C, 0xFC, 0xF8, 0xF8, 0xE0, 0x00, 0x00
	db 0x00, 0x00, 0x01, 0x07, 0x0F, 0x08, 0x18, 0x10, 0x10, 0x18, 0x1F, 0x0F, 0x07, 0x03, 0x00, 0x00
                                                                 
	db 0x00, 0x00, 0x80, 0xF8, 0x78, 0x78, 0x78, 0x78, 0x78, 0x78, 0xF8, 0xF8, 0x78, 0x08, 0x00, 0x00	; 7
	db 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0xC0, 0xF0, 0x7C, 0x0F, 0x03, 0x00, 0x00, 0x00, 0x00
	db 0x00, 0x00, 0x00, 0x00, 0x00, 0x10, 0x1E, 0x0F, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00

	db 0x00, 0x00, 0xC0, 0xF0, 0xF8, 0xF8, 0x18, 0x08, 0x08, 0x08, 0x18, 0xF0, 0xF0, 0xE0, 0x00, 0x00	; 8
	db 0x00, 0x00, 0x81, 0xC7, 0xE7, 0x3F, 0x1F, 0x3E, 0x3E, 0xFC, 0xFE, 0xFF, 0xF3, 0xC1, 0x00, 0x00
	db 0x00, 0x00, 0x07, 0x0F, 0x0F, 0x18, 0x10, 0x10, 0x10, 0x18, 0x1F, 0x0F, 0x07, 0x03, 0x00, 0x00

	db 0x00, 0x00, 0xC0, 0xE0, 0xF0, 0xF8, 0x18, 0x08, 0x08, 0x38, 0xF0, 0xF0, 0xE0, 0x80, 0x00, 0x00	; 9
	db 0x00, 0x00, 0x07, 0x1F, 0x1F, 0x3F, 0x38, 0x20, 0x20, 0xA0, 0xFF, 0xFF, 0xFF, 0x1F, 0x00, 0x00
	db 0x00, 0x00, 0x10, 0x10, 0x18, 0x18, 0x0C, 0x0C, 0x07, 0x07, 0x03, 0x01, 0x00, 0x00, 0x00, 0x00

Dp8x24	;0x81E0
	db 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00	; .
	db 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00
	db 0x00, 0x00, 0x0C, 0x1E, 0x1E, 0x0C, 0x00, 0x00

KT_embl16x16	;0x81F8
	db 0xFF, 0x01, 0x21, 0x31, 0x19, 0x19, 0x99, 0xD9, 0xF9, 0xB9, 0x99, 0xC9, 0x6D, 0x2D, 0x01, 0xFF
	db 0xFF, 0x80, 0x88, 0x8C, 0x86, 0x83, 0x99, 0xBF, 0xA7, 0xB0, 0x90, 0x80, 0x80, 0x80, 0x80, 0xFF
	;2/3
	db 0x00, 0x00, 0xFF, 0x01, 0x21, 0x31, 0x19, 0x89, 0xD9, 0xB9, 0x8D, 0x4D, 0x01, 0xFF, 0x00, 0x00
	db 0x00, 0x00, 0xFF, 0x80, 0x88, 0x84, 0x82, 0xB9, 0xA7, 0xB2, 0x80, 0x80, 0x80, 0xFF, 0x00, 0x00
	;1/3
	db 0x00, 0x00, 0x00, 0x00, 0xFF, 0x01, 0x11, 0xF9, 0x99, 0xC5, 0x01, 0xFF, 0x00, 0x00, 0x00, 0x00
	db 0x00, 0x00, 0x00, 0x00, 0xFF, 0x80, 0x88, 0x87, 0x98, 0xB0, 0x80, 0xFF, 0x00, 0x00, 0x00, 0x00
	;vonal
	db 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xFF, 0xFF, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00
	db 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xFF, 0xFF, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00
	;1/3 tükör
	db 0x00, 0x00, 0x00, 0x00, 0xFF, 0x01, 0xC5, 0x99, 0xF9, 0x11, 0x01, 0xFF, 0x00, 0x00, 0x00, 0x00
	db 0x00, 0x00, 0x00, 0x00, 0xFF, 0x80, 0xB0, 0x98, 0x87, 0x88, 0x80, 0xFF, 0x00, 0x00, 0x00, 0x00
	;2/3 tükör
	db 0x00, 0x00, 0xFF, 0x01, 0x4D, 0x8D, 0xB9, 0xD9, 0x89, 0x19, 0x31, 0x21, 0x01, 0xFF, 0x00, 0x00
	db 0x00, 0x00, 0xFF, 0x80, 0x80, 0x80, 0xB2, 0xA7, 0xB9, 0x82, 0x84, 0x88, 0x80, 0xFF, 0x00, 0x00
	;tükör
	db 0xFF, 0x01, 0x2D, 0x6D, 0xC9, 0x99, 0xB9, 0xF9, 0xD9, 0x99, 0x19, 0x19, 0x31, 0x21, 0x01, 0xFF
	db 0xFF, 0x80, 0x80, 0x80, 0x80, 0x90, 0xB0, 0xA7, 0xBF, 0x99, 0x83, 0x86, 0x8C, 0x88, 0x80, 0xFF


Font8x6	;0x82D8
	DB	000h, 000h, 000h, 000h, 000h, 000h  ;ASC(00)
	DB	03Eh, 05Bh, 04Fh, 05Bh, 03Eh, 000h	;ASC(01)
	DB	03Eh, 06Bh, 04Fh, 06Bh, 03Eh, 000h	;ASC(02)
	DB	01Ch, 03Eh, 07Ch, 03Eh, 01Ch, 000h
	DB	018h, 03Ch, 07Eh, 03Ch, 018h, 000h
	DB	01Ch, 057h, 07Dh, 057h, 01Ch, 000h
	DB	01Ch, 05Eh, 07Fh, 05Eh, 01Ch, 000h
	DB	000h, 018h, 03Ch, 018h, 000h, 000h
	DB	0FFh, 0E7h, 0C3h, 0E7h, 0FFh, 000h
	DB	000h, 018h, 024h, 018h, 000h, 000h
	DB	0FFh, 0E7h, 0DBh, 0E7h, 0FFh, 000h
	DB	030h, 048h, 03Ah, 006h, 00Eh, 000h
	DB	026h, 029h, 079h, 029h, 026h, 000h
	DB	040h, 07Fh, 005h, 005h, 007h, 000h
	DB	040h, 07Fh, 005h, 025h, 03Fh, 000h
	DB	05Ah, 03Ch, 0E7h, 03Ch, 05Ah, 000h
	DB	07Fh, 03Eh, 01Ch, 01Ch, 008h, 000h
	DB	008h, 01Ch, 01Ch, 03Eh, 07Fh, 000h
	DB	014h, 022h, 07Fh, 022h, 014h, 000h
	DB	05Fh, 05Fh, 000h, 05Fh, 05Fh, 000h
	DB	006h, 009h, 07Fh, 001h, 07Fh, 000h
	DB	000h, 066h, 089h, 095h, 06Ah, 000h
	DB	060h, 060h, 060h, 060h, 060h, 060h
	DB	094h, 0A2h, 0FFh, 0A2h, 094h, 000h
	DB	008h, 004h, 07Eh, 004h, 008h, 000h
	DB	010h, 020h, 07Eh, 020h, 010h, 000h
	DB	008h, 008h, 02Ah, 01Ch, 008h, 000h
	DB	008h, 01Ch, 02Ah, 008h, 008h, 000h
	DB	01Eh, 010h, 010h, 010h, 010h, 000h
	DB	00Ch, 01Eh, 00Ch, 01Eh, 00Ch, 000h
	DB	030h, 038h, 03Eh, 038h, 030h, 000h
	DB	006h, 00Eh, 03Eh, 00Eh, 006h, 000h
	DB	000h, 000h, 000h, 000h, 000h, 000h
	DB	000h, 000h, 05Fh, 000h, 000h, 000h
	DB	000h, 007h, 000h, 007h, 000h, 000h
	DB	014h, 07Fh, 014h, 07Fh, 014h, 000h
	DB	024h, 02Ah, 07Fh, 02Ah, 012h, 000h
	DB	023h, 013h, 008h, 064h, 062h, 000h
	DB	036h, 049h, 056h, 020h, 050h, 000h
	DB	000h, 008h, 007h, 003h, 000h, 000h
	DB	000h, 01Ch, 022h, 041h, 000h, 000h
	DB	000h, 041h, 022h, 01Ch, 000h, 000h
	DB	02Ah, 01Ch, 07Fh, 01Ch, 02Ah, 000h
	DB	008h, 008h, 03Eh, 008h, 008h, 000h
	DB	000h, 080h, 070h, 030h, 000h, 000h
	DB	008h, 008h, 008h, 008h, 008h, 000h
	DB	000h, 000h, 060h, 060h, 000h, 000h
	DB	020h, 010h, 008h, 004h, 002h, 000h
	DB	03Eh, 051h, 049h, 045h, 03Eh, 000h
	DB	000h, 042h, 07Fh, 040h, 000h, 000h
	DB	072h, 049h, 049h, 049h, 046h, 000h
	DB	021h, 041h, 049h, 04Dh, 033h, 000h
	DB	018h, 014h, 012h, 07Fh, 010h, 000h
	DB	027h, 045h, 045h, 045h, 039h, 000h
	DB	03Ch, 04Ah, 049h, 049h, 031h, 000h
	DB	041h, 021h, 011h, 009h, 007h, 000h
	DB	036h, 049h, 049h, 049h, 036h, 000h
	DB	046h, 049h, 049h, 029h, 01Eh, 000h
	DB	000h, 000h, 014h, 000h, 000h, 000h
	DB	000h, 040h, 034h, 000h, 000h, 000h
	DB	000h, 008h, 014h, 022h, 041h, 000h
	DB	014h, 014h, 014h, 014h, 014h, 000h
	DB	000h, 041h, 022h, 014h, 008h, 000h
	DB	002h, 001h, 059h, 009h, 006h, 000h
	DB	03Eh, 041h, 05Dh, 059h, 04Eh, 000h
	DB	07Ch, 012h, 011h, 012h, 07Ch, 000h
	DB	07Fh, 049h, 049h, 049h, 036h, 000h
	DB	03Eh, 041h, 041h, 041h, 022h, 000h
	DB	07Fh, 041h, 041h, 041h, 03Eh, 000h
	DB	07Fh, 049h, 049h, 049h, 041h, 000h
	DB	07Fh, 009h, 009h, 009h, 001h, 000h
	DB	03Eh, 041h, 041h, 051h, 073h, 000h
	DB	07Fh, 008h, 008h, 008h, 07Fh, 000h
	DB	000h, 041h, 07Fh, 041h, 000h, 000h
	DB	020h, 040h, 041h, 03Fh, 001h, 000h
	DB	07Fh, 008h, 014h, 022h, 041h, 000h
	DB	07Fh, 040h, 040h, 040h, 040h, 000h
	DB	07Fh, 002h, 01Ch, 002h, 07Fh, 000h
	DB	07Fh, 004h, 008h, 010h, 07Fh, 000h
	DB	03Eh, 041h, 041h, 041h, 03Eh, 000h
	DB	07Fh, 009h, 009h, 009h, 006h, 000h
	DB	03Eh, 041h, 051h, 021h, 05Eh, 000h
	DB	07Fh, 009h, 019h, 029h, 046h, 000h
	DB	026h, 049h, 049h, 049h, 032h, 000h
	DB	003h, 001h, 07Fh, 001h, 003h, 000h
	DB	03Fh, 040h, 040h, 040h, 03Fh, 000h
	DB	01Fh, 020h, 040h, 020h, 01Fh, 000h
	DB	03Fh, 040h, 038h, 040h, 03Fh, 000h
	DB	063h, 014h, 008h, 014h, 063h, 000h
	DB	003h, 004h, 078h, 004h, 003h, 000h
	DB	061h, 059h, 049h, 04Dh, 043h, 000h
	DB	000h, 07Fh, 041h, 041h, 041h, 000h
	DB	002h, 004h, 008h, 010h, 020h, 000h
	DB	000h, 041h, 041h, 041h, 07Fh, 000h
	DB	004h, 002h, 001h, 002h, 004h, 000h
	DB	040h, 040h, 040h, 040h, 040h, 000h
	DB	000h, 003h, 007h, 008h, 000h, 000h
	DB	020h, 054h, 054h, 078h, 040h, 000h
	DB	07Fh, 028h, 044h, 044h, 038h, 000h
	DB	038h, 044h, 044h, 044h, 028h, 000h
	DB	038h, 044h, 044h, 028h, 07Fh, 000h
	DB	038h, 054h, 054h, 054h, 018h, 000h
	DB	000h, 008h, 07Eh, 009h, 002h, 000h
	DB	018h, 0A4h, 0A4h, 09Ch, 078h, 000h
	DB	07Fh, 008h, 004h, 004h, 078h, 000h
	DB	000h, 044h, 07Dh, 040h, 000h, 000h
	DB	020h, 040h, 040h, 03Dh, 000h, 000h
	DB	07Fh, 010h, 028h, 044h, 000h, 000h
	DB	000h, 041h, 07Fh, 040h, 000h, 000h
	DB	07Ch, 004h, 078h, 004h, 078h, 000h
	DB	07Ch, 008h, 004h, 004h, 078h, 000h
	DB	038h, 044h, 044h, 044h, 038h, 000h
	DB	0FCh, 018h, 024h, 024h, 018h, 000h
	DB	018h, 024h, 024h, 018h, 0FCh, 000h
	DB	07Ch, 008h, 004h, 004h, 008h, 000h
	DB	048h, 054h, 054h, 054h, 024h, 000h
	DB	004h, 004h, 03Fh, 044h, 024h, 000h
	DB	03Ch, 040h, 040h, 020h, 07Ch, 000h
	DB	01Ch, 020h, 040h, 020h, 01Ch, 000h
	DB	03Ch, 040h, 030h, 040h, 03Ch, 000h
	DB	044h, 028h, 010h, 028h, 044h, 000h
	DB	04Ch, 090h, 090h, 090h, 07Ch, 000h
	DB	044h, 064h, 054h, 04Ch, 044h, 000h
	DB	000h, 008h, 036h, 041h, 000h, 000h
	DB	000h, 000h, 077h, 000h, 000h, 000h
	DB	000h, 041h, 036h, 008h, 000h, 000h
	DB	002h, 001h, 002h, 004h, 002h, 000h
	DB	03Ch, 026h, 023h, 026h, 03Ch, 000h
	DB	01Eh, 0A1h, 0A1h, 061h, 012h, 000h
	DB	03Ah, 040h, 040h, 020h, 07Ah, 000h
	DB	038h, 054h, 054h, 055h, 059h, 000h
	DB	021h, 055h, 055h, 079h, 041h, 000h
	DB	021h, 054h, 054h, 078h, 041h, 000h
	DB	021h, 055h, 054h, 078h, 040h, 000h
	DB	020h, 054h, 055h, 079h, 040h, 000h
	DB	00Ch, 01Eh, 052h, 072h, 012h, 000h
	DB	039h, 055h, 055h, 055h, 059h, 000h
	DB	039h, 054h, 054h, 054h, 059h, 000h
	DB	039h, 055h, 054h, 054h, 058h, 000h
	DB	000h, 000h, 045h, 07Ch, 041h, 000h
	DB	000h, 002h, 045h, 07Dh, 042h, 000h
	DB	000h, 001h, 045h, 07Ch, 040h, 000h
	DB	0F0h, 029h, 024h, 029h, 0F0h, 000h
	DB	0F0h, 028h, 025h, 028h, 0F0h, 000h
	DB	07Ch, 054h, 055h, 045h, 000h, 000h
	DB	020h, 054h, 054h, 07Ch, 054h, 044h
	DB	07Ch, 00Ah, 009h, 07Fh, 049h, 041h
	DB	032h, 049h, 049h, 049h, 032h, 000h
	DB	032h, 048h, 048h, 048h, 032h, 000h
	DB	032h, 04Ah, 048h, 048h, 030h, 000h
	DB	03Ah, 041h, 041h, 021h, 07Ah, 000h
	DB	03Ah, 042h, 040h, 020h, 078h, 000h
	DB	000h, 09Dh, 0A0h, 0A0h, 07Dh, 000h
	DB	039h, 044h, 044h, 044h, 039h, 000h
	DB	03Dh, 040h, 040h, 040h, 03Dh, 000h
	DB	03Ch, 024h, 0FFh, 024h, 024h, 000h
	DB	048h, 07Eh, 049h, 043h, 066h, 000h
	DB	02Bh, 02Fh, 0FCh, 02Fh, 02Bh, 000h
	DB	0FFh, 009h, 029h, 0F6h, 020h, 000h
	DB	0C0h, 088h, 07Eh, 009h, 003h, 000h
	DB	020h, 054h, 054h, 079h, 041h, 000h
	DB	000h, 000h, 044h, 07Dh, 041h, 000h
	DB	030h, 048h, 048h, 04Ah, 032h, 000h
	DB	038h, 040h, 040h, 022h, 07Ah, 000h
	DB	000h, 07Ah, 00Ah, 00Ah, 072h, 000h
	DB	07Dh, 00Dh, 019h, 031h, 07Dh, 000h
	DB	026h, 029h, 029h, 02Fh, 028h, 000h
	DB	026h, 029h, 029h, 029h, 026h, 000h
	DB	030h, 048h, 04Dh, 040h, 020h, 000h
	DB	038h, 008h, 008h, 008h, 008h, 000h
	DB	008h, 008h, 008h, 008h, 038h, 000h
	DB	02Fh, 010h, 0C8h, 0ACh, 0BAh, 000h
	DB	02Fh, 010h, 028h, 034h, 0FAh, 000h
	DB	000h, 000h, 07Bh, 000h, 000h, 000h
	DB	008h, 014h, 02Ah, 014h, 022h, 000h
	DB	022h, 014h, 02Ah, 014h, 008h, 000h
	DB	0AAh, 000h, 055h, 000h, 0AAh, 000h
	DB	0AAh, 055h, 0AAh, 055h, 0AAh, 055h
	DB	055h, 0AAh, 055h, 0AAh, 055h, 0AAh
	DB	000h, 000h, 000h, 0FFh, 000h, 000h
	DB	010h, 010h, 010h, 0FFh, 000h, 000h
	DB	014h, 014h, 014h, 0FFh, 000h, 000h
	DB	010h, 010h, 0FFh, 000h, 0FFh, 000h
	DB	010h, 010h, 0F0h, 010h, 0F0h, 000h
	DB	014h, 014h, 014h, 0FCh, 000h, 000h
	DB	014h, 014h, 0F7h, 000h, 0FFh, 000h
	DB	000h, 000h, 0FFh, 000h, 0FFh, 000h
	DB	014h, 014h, 0F4h, 004h, 0FCh, 000h
	DB	014h, 014h, 017h, 010h, 01Fh, 000h
	DB	010h, 010h, 01Fh, 010h, 01Fh, 000h
	DB	014h, 014h, 014h, 01Fh, 000h, 000h
	DB	010h, 010h, 010h, 0F0h, 000h, 000h
	DB	000h, 000h, 000h, 01Fh, 010h, 010h
	DB	010h, 010h, 010h, 01Fh, 010h, 010h
	DB	010h, 010h, 010h, 0F0h, 010h, 010h
	DB	000h, 000h, 000h, 0FFh, 010h, 010h
	DB	010h, 010h, 010h, 010h, 010h, 010h
	DB	010h, 010h, 010h, 0FFh, 010h, 010h
	DB	000h, 000h, 000h, 0FFh, 014h, 014h
	DB	000h, 000h, 0FFh, 000h, 0FFh, 010h
	DB	000h, 000h, 01Fh, 010h, 017h, 014h
	DB	000h, 000h, 0FCh, 004h, 0F4h, 014h
	DB	014h, 014h, 017h, 010h, 017h, 014h
	DB	014h, 014h, 0F4h, 004h, 0F4h, 014h
	DB	000h, 000h, 0FFh, 000h, 0F7h, 014h
	DB	014h, 014h, 014h, 014h, 014h, 014h
	DB	014h, 014h, 0F7h, 000h, 0F7h, 014h
	DB	014h, 014h, 014h, 017h, 014h, 014h
	DB	010h, 010h, 01Fh, 010h, 01Fh, 010h
	DB	014h, 014h, 014h, 0F4h, 014h, 014h
	DB	010h, 010h, 0F0h, 010h, 0F0h, 010h
	DB	000h, 000h, 01Fh, 010h, 01Fh, 010h
	DB	000h, 000h, 000h, 01Fh, 014h, 014h
	DB	000h, 000h, 000h, 0FCh, 014h, 014h
	DB	000h, 000h, 0F0h, 010h, 0F0h, 010h
	DB	010h, 010h, 0FFh, 010h, 0FFh, 010h
	DB	014h, 014h, 014h, 0FFh, 014h, 014h
	DB	010h, 010h, 010h, 01Fh, 000h, 000h
	DB	000h, 000h, 000h, 0F0h, 010h, 010h
	DB	0FFh, 0FFh, 0FFh, 0FFh, 0FFh, 0FFh
	DB	0F0h, 0F0h, 0F0h, 0F0h, 0F0h, 0F0h
	DB	0FFh, 0FFh, 0FFh, 000h, 000h, 000h
	DB	000h, 000h, 000h, 0FFh, 0FFh, 0FFh
	DB	00Fh, 00Fh, 00Fh, 00Fh, 00Fh, 00Fh
	DB	038h, 044h, 044h, 038h, 044h, 000h
	DB	07Ch, 02Ah, 02Ah, 03Eh, 014h, 000h
	DB	07Eh, 002h, 002h, 006h, 006h, 000h
	DB	002h, 07Eh, 002h, 07Eh, 002h, 000h
	DB	063h, 055h, 049h, 041h, 063h, 000h
	DB	038h, 044h, 044h, 03Ch, 004h, 000h
	DB	040h, 07Eh, 020h, 01Eh, 020h, 000h
	DB	006h, 002h, 07Eh, 002h, 002h, 000h
	DB	099h, 0A5h, 0E7h, 0A5h, 099h, 000h
	DB	01Ch, 02Ah, 049h, 02Ah, 01Ch, 000h
	DB	04Ch, 072h, 001h, 072h, 04Ch, 000h
	DB	030h, 04Ah, 04Dh, 04Dh, 030h, 000h
	DB	030h, 048h, 078h, 048h, 030h, 000h
	DB	0BCh, 062h, 05Ah, 046h, 03Dh, 000h
	DB	03Eh, 049h, 049h, 049h, 000h, 000h
	DB	07Eh, 001h, 001h, 001h, 07Eh, 000h
	DB	02Ah, 02Ah, 02Ah, 02Ah, 02Ah, 000h
	DB	044h, 044h, 05Fh, 044h, 044h, 000h
	DB	040h, 051h, 04Ah, 044h, 040h, 000h
	DB	040h, 044h, 04Ah, 051h, 040h, 000h
	DB	000h, 000h, 0FFh, 001h, 003h, 000h
	DB	0E0h, 080h, 0FFh, 000h, 000h, 000h
	DB	008h, 008h, 06Bh, 06Bh, 008h, 008h
	DB	036h, 012h, 036h, 024h, 036h, 000h
	DB	006h, 00Fh, 009h, 00Fh, 006h, 000h
	DB	000h, 000h, 018h, 018h, 000h, 000h
	DB	000h, 000h, 010h, 010h, 000h, 000h
	DB	030h, 040h, 0FFh, 001h, 001h, 000h
	DB	000h, 01Fh, 001h, 001h, 01Eh, 000h
	DB	000h, 019h, 01Dh, 017h, 012h, 000h
	DB	000h, 03Ch, 03Ch, 03Ch, 03Ch, 000h
	DB	000h, 000h, 000h, 000h, 000h, 000h

Tahoma16x24
	db 0x80, 0xF0, 0xF8, 0x7C, 0x1C, 0x0E, 0x0E, 0x0E, 0x0E, 0x0E, 0x1C, 0x7C, 0xF8, 0xF0, 0x80, 0x00
	db 0xFF, 0xFF, 0xFF, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xFF, 0xFF, 0xFF, 0x00
	db 0x03, 0x1F, 0x3F, 0x7C, 0x70, 0xE0, 0xE0, 0xE0, 0xE0, 0xE0, 0x70, 0x7C, 0x3F, 0x1F, 0x03, 0x00

	db 0x00, 0x00, 0x00, 0x70, 0x70, 0x70, 0x78, 0xFC, 0xFE, 0xFE, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00
	db 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xFF, 0xFF, 0xFF, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00
	db 0x00, 0x00, 0x00, 0xE0, 0xE0, 0xE0, 0xE0, 0xFF, 0xFF, 0xFF, 0xE0, 0xE0, 0xE0, 0xE0, 0x00, 0x00

	db 0x00, 0x3C, 0x1C, 0x1C, 0x0E, 0x0E, 0x0E, 0x0E, 0x0E, 0x1E, 0x3C, 0xFC, 0xF8, 0xF0, 0x00, 0x00
	db 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0xC0, 0xE0, 0xF0, 0x7C, 0x1F, 0x0F, 0x03, 0x00, 0x00
	db 0x00, 0xF0, 0xF8, 0xFC, 0xEE, 0xEF, 0xE7, 0xE3, 0xE1, 0xE0, 0xE0, 0xE0, 0xE0, 0xE0, 0x00, 0x00

	db 0x00, 0x00, 0x3C, 0x1C, 0x1C, 0x0E, 0x0E, 0x0E, 0x0E, 0x0E, 0x0E, 0x1C, 0xFC, 0xF8, 0xF0, 0x00
	db 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x1C, 0x1C, 0x1C, 0x1C, 0x3E, 0x77, 0xF3, 0xE1, 0xC0, 0x00
	db 0x00, 0x78, 0x70, 0x70, 0xE0, 0xE0, 0xE0, 0xE0, 0xE0, 0xE0, 0x70, 0x78, 0x3F, 0x1F, 0x0F, 0x00

	db 0x00, 0x00, 0x00, 0x00, 0x80, 0xC0, 0xE0, 0x70, 0x18, 0x0C, 0xFE, 0xFE, 0xFE, 0x00, 0x00, 0x00
	db 0xF0, 0xF8, 0xEE, 0xE7, 0xE3, 0xE1, 0xE0, 0xE0, 0xE0, 0xE0, 0xFF, 0xFF, 0xFF, 0xE0, 0xE0, 0x00
	db 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xFF, 0xFF, 0xFF, 0x00, 0x00, 0x00

	db 0x00, 0x00, 0xFE, 0xFE, 0xFE, 0x0E, 0x0E, 0x0E, 0x0E, 0x0E, 0x0E, 0x0E, 0x0E, 0x0E, 0x0E, 0x00
	db 0x00, 0x00, 0x3F, 0x3F, 0x1F, 0x1C, 0x1C, 0x1C, 0x1C, 0x1C, 0x3C, 0x78, 0xF8, 0xF0, 0xC0, 0x00
	db 0x00, 0x78, 0x70, 0xF0, 0xE0, 0xE0, 0xE0, 0xE0, 0xE0, 0xE0, 0x70, 0x78, 0x3F, 0x1F, 0x07, 0x00

	db 0x00, 0xC0, 0xE0, 0xF8, 0x38, 0x1C, 0x1C, 0x0E, 0x0E, 0x0E, 0x0E, 0x0E, 0x1E, 0x00, 0x00, 0x00
	db 0xFE, 0xFF, 0xFF, 0x1C, 0x0C, 0x0E, 0x0E, 0x0E, 0x0E, 0x0E, 0x1E, 0x3C, 0xFC, 0xF8, 0xE0, 0x00
	db 0x03, 0x1F, 0x3F, 0x7C, 0x70, 0xF0, 0xE0, 0xE0, 0xE0, 0xE0, 0x70, 0x78, 0x3F, 0x1F, 0x07, 0x00

	db 0x0E, 0x0E, 0x0E, 0x0E, 0x0E, 0x0E, 0x0E, 0x0E, 0x0E, 0x0E, 0x8E, 0xCE, 0xFE, 0x7E, 0x3E, 0x00
	db 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xC0, 0xE0, 0xF8, 0x3E, 0x1F, 0x07, 0x01, 0x00, 0x00, 0x00
	db 0x00, 0x80, 0xE0, 0xF0, 0x7C, 0x1F, 0x0F, 0x03, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00

	db 0x00, 0xF0, 0xF8, 0xFC, 0x1C, 0x0E, 0x0E, 0x0E, 0x0E, 0x0E, 0x1C, 0xFC, 0xF8, 0xF0, 0x00, 0x00
	db 0x80, 0xC1, 0xE3, 0x77, 0x3F, 0x1E, 0x1C, 0x1C, 0x18, 0x38, 0x3C, 0x77, 0xE7, 0xC1, 0x80, 0x00
	db 0x0F, 0x3F, 0x7F, 0x78, 0xF0, 0xE0, 0xE0, 0xE0, 0xE0, 0xE0, 0xF0, 0x78, 0x3F, 0x1F, 0x0F, 0x00

	db 0xC0, 0xF0, 0xF8, 0x3C, 0x1C, 0x0E, 0x0E, 0x0E, 0x0E, 0x1E, 0x1C, 0x7C, 0xF8, 0xF0, 0x80, 0x00
	db 0x0F, 0x3F, 0x7F, 0x78, 0xF0, 0xE0, 0xE0, 0xE0, 0xE0, 0xE0, 0x60, 0x70, 0xFF, 0xFF, 0xFF, 0x00
	db 0x00, 0x00, 0xF0, 0xE0, 0xE0, 0xE0, 0xE0, 0xE0, 0x70, 0x70, 0x38, 0x3E, 0x0F, 0x07, 0x00, 0x00
	
	END