ZXNet эхоконференция «code.zx»
тема: print42a
от: Mihail Zharov
кому: Aleksandr Majorov
дата: 19 Mar 2001
Привет, Mihail!
Воскресенье 18 Мар 2001, в 12:45:18,
Mihail Zharov -> Aleksandr Majorov:
MZ> Вот окончательный вариант(?)
MZ> Тут еще два потока уменьшены Павлом Васильевым.
MZ> Что-то еще можно сделать? ;)
MZ> ╒═══< Begin file: print42a.asm >════════
MZ> ;***************************************
MZ> ;ПЕЧАТЬ СИМВОЛА (A) ШРИФТОМ 6x8 - 42
MZ> ;***************************************
MZ> PR42_A exx ;4
MZ> ld bc,#0000 ;10
MZ> PR42_Y EQU $-2 ;Y-координата (0-023)
MZ> PR42_X EQU $-1 ;X-координата (0-255)
MZ> ld d,FONT/256 : ld e,a ;11
MZ> ;---------------------------------------
MZ> ld a,c : and %00011000 ;11
MZ> or #40 : ld h,a ;11
MZ> ld a,b : and %11111000 ;11
MZ> ld l,a ;4
MZ> ld a,c : and %00000111 ;11
MZ> or l : rrca : rrca : rrca ;16
MZ> ld l,a ;4
MZ> ;---------------------------------------
Вижу свое письмо в 64-х символах(DME) и все
воспринимается по другому - более информативно как-то.
И как я подобный кусок кода пропустил...
Ведь это напоминает печать по маске... ;)
Вообщем сходу переписал на:
ld a,c
xor b : and %00000111 : xor b
rrca : rrca : rrca : ld l,a
-11 тактов и -3 байта
Правда на п/п расчета адреса это не совсем похоже...;)
[delete]
Текущий результат получается:
;min: 512
;max: 1049
;byte: 107
пс. надо попробовать перейти на 64-х символьный асм.
А лучше засм переделать ;)
Приятных коннектов, Aleksandr...
|