На досуге делаю первые шаги в АСМе, по книжке "Как написать компьютерную игру на ассемблере".
Вот пример из этой книжки (подпрограмма сдвига символа для эффекта волны):
"Подпрограмма вертикального скроллинга знакоместа может выглядеть так:
UP CP 32 ;проверка позиции перемещаемого знакоместа
RET NC ;выход, если больше или равна 32
LD HL,(AD_LIN) ;получаем адрес экрана начала строки
PUSH AF
OR L
LD L,A
PUSH HL
LD D,H ;копируем адрес в DE
LD E,L
LD B,7 ;повторяем 7 раз
UP1 INC H ;в HL - адрес байта следующего ряда
LD A,(HL) ;переносим из (HL) в (DE)
LD (DE),A
INC D ;переходим к следующему ряду
DJNZ UP1
LD (HL),0 ;обнуляем самый нижний ряд
POP HL
POP AF
RET
Перед обращением к этой (а также и к следующей) подпрограмме в аккумулятор нужно занести горизонтальную позицию знакоместа в строке. "
Никак не могу понять зачем нужна строка выделенная жирным... Да и что она делает тоже интерестно - складывает побитно содержимое регистра L? А зачем? хелп ми...