summaryrefslogtreecommitdiff
path: root/macros/farcall.asm
diff options
context:
space:
mode:
Diffstat (limited to 'macros/farcall.asm')
-rw-r--r--macros/farcall.asm33
1 files changed, 33 insertions, 0 deletions
diff --git a/macros/farcall.asm b/macros/farcall.asm
new file mode 100644
index 00000000..b4af8b2d
--- /dev/null
+++ b/macros/farcall.asm
@@ -0,0 +1,33 @@
+farcall: MACRO
+ ld b, BANK(\1)
+ ld hl, \1
+ call Bankswitch
+ENDM
+
+callfar: MACRO
+ ld hl, \1
+ ld b, BANK(\1)
+ call Bankswitch
+ENDM
+
+farjp: MACRO
+ ld b, BANK(\1)
+ ld hl, \1
+ jp Bankswitch
+ENDM
+
+jpfar: MACRO
+ ld hl, \1
+ ld b, BANK(\1)
+ jp Bankswitch
+ENDM
+
+homecall: MACRO
+ ldh a, [hLoadedROMBank]
+ push af
+ ld a, BANK(\1)
+ call BankswitchCommon
+ call \1
+ pop af
+ call BankswitchCommon
+ENDM