Zakładając, że kod, który chcesz uruchomić masz w pliku "scroller1.bin" "odpalacz" można zrobić np. tak:
org 24000
call $0052
l1:
dec sp
dec sp
pop hl
ld de,l2-l1
add hl,de
ld de,$8000
ld bc,l3-l2
ldir
jp $8000
l2:
incbin "scroller1.bin"
l3:
Adres przy org nie ma znaczenia - może być dowolny. Pierwszy CALL skacze do ROMu do pierwszego RETa jakiego udało mi się znaleźć, po powrocie cofa stos o dwa bajty i podnosi to, co tam znajdzie, czyli adres powrotu dla tego CALLa a więc i adres pod którym znajduje się aktualnie wykonywany kod. Potem do DE ładuje przesunięcie do przerzucanego kodu, dodaje je do HL a następnie do DE ładuje właściwy adres docelowy - w tym wypadku $8000, do BC długość dodatkowego bloku i całość przerzuca LDIRem a następnie skacze pod $8000 odpalając kod. Kompilujesz oba bloki tak:
pasmo --bin scroller1.asm scroller1.bin
pasmo --bin move_it.asm move_it.bin
W wyniku dostajesz plik move_it bin o długości właściwego kodu + 21 bajtów, który możesz odpalić spod dowolnego adresu w tym z linii BASICa po wklejeniu do REMa.