ys2-intro/loader/tools/tinycrunch_v1.2/tc_boot.s
2025-11-13 19:07:39 +03:00

39 lines
720 B
ArmAsm

boot_start=$0801
sei
ldx#decrunch_end-decrunch_dst
: lda decrunch_src-1,x
sta decrunch_dst-1,x
dex
bne :-
jmp decrunch_dst
decrunch_src:
.org $0100
decrunch_dst:
lda 1
pha
lda#$34
sta 1
o_stream0:
lda#0
ldx#0
lda decrunch ; replaced with JSR iff chunk present
o_stream1:
lda#0
ldx#0
lda decrunch ; replaced with JSR iff chunk present
pla
sta 1
cli
o_start:
jmp $080d
.include "tc_decode_f.s"
decrunch_end:
; patch addresses
.byte <(o_stream0 - boot_start + decrunch_src - decrunch_dst)
.byte <(o_stream1 - boot_start + decrunch_src - decrunch_dst)
.byte <(o_start - boot_start + decrunch_src - decrunch_dst)