print42a
ZXNet echo conference «code.zx»
From Mihail Zharov → To Aleksandr Majorov 19 March 2001
Hello Mikhail!
Sunday 18 Mar 2001, at 12:45:18
Mikhail Zharov -> Aleksandr Majorov:
MZ> Here is the final version(?)
MZ> Here two more streams have been reduced by Pavel Vasiliev.
MZ> Is there anything else that can be done? ;)
MZ> ╒═══< Begin file: print42a.asm >════════
MZ> ;************************************************
MZ> ;PRINTING SYMBOL (A) IN 6x8 - 42 FONT
MZ> ;************************************************
MZ> PR42_A exx ;4
MZ> ld bc,#0000 ;10
MZ> PR42_Y EQU $-2 ;Y-coordinate (0-023)
MZ> PR42_X EQU $-1 ;X-coordinate (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> ;---------------------------------------
I see my letter in 64 characters (DME) and that’s it
is perceived differently - somehow more informative.
How did I miss such a piece of code...
After all, it’s reminiscent of mask printing... ;)
In general, I immediately rewrote it to:
ld a,c
xor b : and %00000111 : xor b
rrca : rrca : rrca : ld l,a
-11 clocks and -3 bytes
True, this doesn’t quite look like the address calculation procedure...;)
[delete]
The current result is:
;min: 512
;max: 1049
;byte: 107
ps. I need to try switching to 64-character asm.
Better yet, redo it ;)
Happy connections, Aleksandr...