diff options
Diffstat (limited to 'macros/farcall.asm')
-rw-r--r-- | macros/farcall.asm | 47 |
1 files changed, 39 insertions, 8 deletions
diff --git a/macros/farcall.asm b/macros/farcall.asm index 93f8f1ac..f3fa07d4 100644 --- a/macros/farcall.asm +++ b/macros/farcall.asm @@ -26,23 +26,54 @@ homecall: MACRO ldh a, [hLoadedROMBank] push af ld a, BANK(\1) - ldh [hLoadedROMBank], a - ld [MBC1RomBank], a + call BankswitchCommon call \1 pop af - ldh [hLoadedROMBank], a - ld [MBC1RomBank], a + call BankswitchCommon +ENDM + +homejp: MACRO + ldh a, [hLoadedROMBank] + push af + ld a, BANK(\1) + call BankswitchCommon + call \1 + pop af + jp BankswitchCommon ENDM homecall_sf: MACRO ; homecall but save flags by popping into bc instead of af ldh a, [hLoadedROMBank] push af ld a, BANK(\1) - ldh [hLoadedROMBank], a - ld [MBC1RomBank], a + call BankswitchCommon call \1 pop bc ld a, b - ldh [hLoadedROMBank], a - ld [MBC1RomBank], a + call BankswitchCommon +ENDM + +homejp_sf: MACRO ; homejp but save flags by popping into bc instead of af + ldh a, [hLoadedROMBank] + push af + ld a, BANK(\1) + call BankswitchCommon + call \1 + pop bc + ld a, b + jp BankswitchCommon +ENDM + +calladb_ModifyPikachuHappiness: MACRO + ld hl, ModifyPikachuHappiness + ld d, \1 + ld b, BANK(ModifyPikachuHappiness) + call Bankswitch +ENDM + +callabd_ModifyPikachuHappiness: MACRO + ld hl, ModifyPikachuHappiness + ld b, BANK(ModifyPikachuHappiness) + ld d, \1 + call Bankswitch ENDM |