First Commit

Upload literally everything from the pokecrystal16 expand-move-ID branch
This commit is contained in:
Zeta_Null 2023-09-10 12:35:35 -04:00
commit 2f8a41f833
4618 changed files with 480386 additions and 0 deletions

48
home/farcall.asm Normal file
View file

@ -0,0 +1,48 @@
FarCall_de::
; Call a:de.
; Preserves other registers.
ldh [hTempBank], a
ldh a, [hROMBank]
push af
ldh a, [hTempBank]
rst Bankswitch
call FarCall_JumpToDE
jr ReturnFarCall
FarCall_JumpToDE:
push de
ret
FarCall_hl::
; Call a:hl.
; Preserves other registers.
ldh [hTempBank], a
ldh a, [hROMBank]
push af
ldh a, [hTempBank]
rst Bankswitch
call FarCall_JumpToHL
; fallthrough
ReturnFarCall::
; We want to retain the contents of f.
; To do this, we can pop to bc instead of af.
ld a, b
ld [wFarCallBC], a
ld a, c
ld [wFarCallBC + 1], a
; Restore the working bank.
pop bc
ld a, b
rst Bankswitch
; Restore the contents of bc.
ld a, [wFarCallBC]
ld b, a
ld a, [wFarCallBC + 1]
ld c, a
ret
FarCall_JumpToHL::
jp hl