DOWN HL
Материал из SpeccyWiki
Версия от 13:09, 30 июля 2012; Zxdn (обсуждение | вклад)
DOWN HL, UP HL — широко используемые при программировании графики процедуры для перехода к следующей и предыдущей пиксельной строке экрана с учётом нелинейной раскладки видеопамяти, то есть с переходом между строками знакомест и третями экрана.
Из названия процедуры следует, что адрес находится в регистровой паре HL. Также используются варианты этой процедуры для других регистровых пар. Существует несколько версий процедуры, отличающихся размером и быстродействием, а также оформлением в виде подпрограммы или макроса. Время выполнения процедуры зависит от адреса текущей пиксельной строки.
;В этом варианте процедуры также используется флаг переноса.
;Он установлен, если был переход к следующей строке знакомест.
DOWN_HL:
INC H
LD A,H
AND 7
JR NZ,EXIT ;CY=0
LD A,L
ADD A,32
LD L,A
JR C,EXIT ;CY=1
LD A,H
ADD A,-8
LD H,A ;CY=1