Вторая процедура была написана мною в дополнение к статье Д. Баянова:
быстрая печать шаблона 8*8
DEL1
DEFLAT
LD
HL,(BUFF)
LD
A, (IX)
CP
#FF
RET
Z
CP
#FE
JR
NZ, ONE
LD
B, (IX+1)
LD
A, (IX+2)
LD
(HL),A
INC
HL
DJNZ
DEFLAT
INC
IX
INC
IX
INC
IX
JR
DFL1
LD
(HL),A
INC
IX
INC
HL
JR
DFL1
A - код символа
WRITE
Адрес фонта
При использовании этой и других
процедур, использующих стек, необходимо отключать прерывания, иначе при первом же прерывании будут испорчены данные.
STASC
на входе: BC
координаты;
|
DI | |
|
LD |
H, 0 |
|
LD |
L,A |
|
ADD |
HL, HL |
|
ADD |
HL, HL |
|
ADD |
HL, HL |
|
LD |
DE,BASE |
|
ADD |
HL, DE |
|
LD |
(STASC+1),HL |
|
LD |
(STC),SP |
|
LD |
A, C |
|
AND |
#18 |
|
ADD |
A, #40 |
|
LD |
H,A |
|
LD |
A, C |
|
AND |
7 |
|
RCA | |
|
RCA | |
|
RCA | |
|
ADD |
A, B |
|
LD |
L,A |
|
LD |
SP, 0 |
|
POP |
DE |
|
LD |
(HL),E |
|
INC |
H |
|
LD |
(HL),D |
|
INC |
H |
|
POP |
DE |
|
LD |
(HL),E |
|
INC |
H |
|
LD |
(HL),D |
|
INC |
H |
|
POP |
DE |
|
LD |
(HL),E |
|
INC |
H |
|
LD |
(HL),D |
|
INC |
H |
|
POP |
DE |
|
LD |
(HL),D |
|
LD |
SP, (STC) |
|
EI |
STC DEFW 0
BASE ...