ALKO, сначала определись какие регистры тебе надо сохранять и можно ли их сохранить в переменных

напрмер

call old_proc

old_proc
ld a,$
dec a
ld (nn),a
jr z, process completed
ld hl,$
ld de,$
dup 32
ldi
edup
ld (nn),hl
ld (nn),de
ret
process completed
ld hl, new_proc
ld (nn),hl
ret
new_proc
ret