draw_symbol:
CODE
draw_symbol:
ldi ZL,low(font*2)
ldi ZH,high(font*2)
;загрузка переменных шрифта
lpm width,Z+ ;максимальная ширина символа
lpm heigth,Z+ ;высота для всех символов
lpm bit_p_pixel,Z+;количество байтов шрифта на один пиксел
lpm first_char,Z+;первый символ шрифта в ASCII
lpm last_char,Z+;последний символ шривта в ASCII
и т.д.
font:
.DB 0x02, 0xAC, 0x08, 0x0B, 0x01, 0x20, 0x7E,0x03
.DB 0x01, 0x04, 0x06, 0x05, 0x07, 0x05, 0x01, 0x02, 0x02, 0x03, 0x05, 0x02, 0x02, 0x01, 0x04, 0x05
................................
font8x11:
.DB 0x02, 0xAC, 0x08, 0x0B, 0x01, 0x20, 0x7E,0x03
.DB 0x01, 0x04, 0x06, 0x05, 0x07, 0x05, 0x01, 0x02, 0x02, 0x03, 0x05, 0x02, 0x02, 0x01, 0x04, 0x05
font13x16:
.DB 0x02, 0xAC, 0x08, 0x0B, 0x01, 0x20, 0x7E,0x03
.DB 0x01, 0x04, 0x06, 0x05, 0x07, 0x05, 0x01, 0x02, 0x02, 0x03, 0x05, 0x02, 0x02, 0x01, 0x04, 0x05
ldi ZL,low(font*2)
ldi ZH,high(font*2)
;загрузка переменных шрифта
lpm width,Z+ ;максимальная ширина символа
lpm heigth,Z+ ;высота для всех символов
lpm bit_p_pixel,Z+;количество байтов шрифта на один пиксел
lpm first_char,Z+;первый символ шрифта в ASCII
lpm last_char,Z+;последний символ шривта в ASCII
и т.д.
font:
.DB 0x02, 0xAC, 0x08, 0x0B, 0x01, 0x20, 0x7E,0x03
.DB 0x01, 0x04, 0x06, 0x05, 0x07, 0x05, 0x01, 0x02, 0x02, 0x03, 0x05, 0x02, 0x02, 0x01, 0x04, 0x05
................................
font8x11:
.DB 0x02, 0xAC, 0x08, 0x0B, 0x01, 0x20, 0x7E,0x03
.DB 0x01, 0x04, 0x06, 0x05, 0x07, 0x05, 0x01, 0x02, 0x02, 0x03, 0x05, 0x02, 0x02, 0x01, 0x04, 0x05
font13x16:
.DB 0x02, 0xAC, 0x08, 0x0B, 0x01, 0x20, 0x7E,0x03
.DB 0x01, 0x04, 0x06, 0x05, 0x07, 0x05, 0x01, 0x02, 0x02, 0x03, 0x05, 0x02, 0x02, 0x01, 0x04, 0x05
какие директивы компилятору указать чтоб при вызове подпрограммы подставлялась нужная таблица.