Усли надо чтоб просто уползало добавляем в основной цикл AND A
loop push hl ; save address
ld b,8 ; set counter = 8 pixel rows
scrl1 push bc
push hl
AND A ;что бы слева выехал пустой пиксель!!!!!!!!!!!!!!!!!!
ld b,32 ; set counter = string lenght
scrl2 rr (hl) ; shift data in memory
inc l ; next symbol
djnz scrl2
pop hl ; recover hl
inc h ; next pixel row
pop bc ; recover counter
djnz scrl1
pop hl ; recover address
call pause
jp loop
А если нужна ротация строки, то добавляем пару команд
loop push hl ; save address
ld b,8 ; set counter = 8 pixel rows
scrl1 push bc
push hl
AND A
ld b,32 ; set counter = string lenght
scrl2 rr (hl) ; shift data in memory
inc l ; next symbol
djnz scrl2
pop hl ; recover hl
jr nc,$+4 ;!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
set 7,(hl) ;!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
inc h ; next pixel row
pop bc ; recover counter
djnz scrl1
pop hl ; recover address
call pause
jp loop
эти две команды для того, что если справа есть точка и она заехала за экран то она появляется слева
Ну что то вроде того




Ответить с цитированием