
Сообщение от
jerri
а может будет достаточно ld l,h:ld h,a:inc hl
Не совсем понял, всё таки...
---------- Post added at 03:24 ---------- Previous post was at 02:45 ----------
Может задачу иначе поставить?
Вот процедура восстановления циклом:
Поскольку буфер заполняется командой PUSH, то конец буфера фикированный, а начало в HL.
C = конец буфера.
Тормозно, но работает. 4 байта не могу в буфере хранить, нет места.
Код:
LD SP,HL ; HL = начало текущего буфера
RES_LN POP DE
DEC SP
POP AF
LD (DE),A
LD HL,#0000
ADD HL,SP
LD A,H
CP C
JP NZ,RES_LN
Стеком выгодно делать, если цикл развернуть... Иначе видимо нет.
А чтобы развернуть, нужно расчитать точку входа 
Код:
RES_LN LD E,(HL)
INC HL
LD D,(HL)
INC HL
LD A,(HL)
INC HL
LD (DE),A
LD A,H
CP C
JP NZ,RES_LN