Вывод пикселя на асме надо делать, да. Лучше даже вывод спрайта асмом делать.
Я писал код вывода пикселя на асме, вот, нащел:
Код:
CLEARDOT:
CALL GETDOT
CMA
ANA M
MOV M,A
RET
DRAWDOT:
CALL GETDOT
MOV B,A
MOV A,M
ORA B
;ORI 64
MOV M,A
RET
GETDOT: ;B,C
LXI D,VISIONS
MOV A,B
RAR
JNC NOF
INX D
NOF:
ANI 127
MOV B,A
MOV A,C
RAR
JNC NOS
INX D
INX D
NOS:
ANI 127
MOV C,A
PUSH D
CALL GPA
POP D
LDAX D
RET
VISIONS:
.BYTE 1,2,16,4
GPA:;B,C - X,Y
MOV A,C
ADD A
MOV L,A
MVI H,$DF
MOV E,M
INX H
MOV D,M
MOV L,B
MVI H,0
DAD D
XCHG
LHLD VADDR
DAD D
RET
VADDR: $xxxx тут адрес видеопамяти
cleardot стирает точку, а drawdot ставит, по положению B:C
- - - Добавлено - - -
Но вывод спрайта лучше не попиксельно делать, а сразу картинку гнать в память по-знаково, а то это супер-медленно будет