summaryrefslogtreecommitdiff
path: root/engine/predef.asm
diff options
context:
space:
mode:
Diffstat (limited to 'engine/predef.asm')
-rw-r--r--engine/predef.asm29
1 files changed, 29 insertions, 0 deletions
diff --git a/engine/predef.asm b/engine/predef.asm
new file mode 100644
index 000000000..13c593c90
--- /dev/null
+++ b/engine/predef.asm
@@ -0,0 +1,29 @@
+GetPredefPointer:: ; 854b
+; Return the bank and address of wPredefID in a and wPredefAddress.
+
+; Save hl for later (back in Predef)
+ ld a, h
+ ld [wPredefTemp], a
+ ld a, l
+ ld [wPredefTemp + 1], a
+
+ push de
+ ld a, [wPredefID]
+ ld e, a
+ ld d, 0
+ ld hl, PredefPointers
+ add hl, de
+ add hl, de
+ add hl, de
+ pop de
+
+ ld a, [hli]
+ ld [wPredefAddress + 1], a
+ ld a, [hli]
+ ld [wPredefAddress], a
+ ld a, [hl]
+
+ ret
+; 856b
+
+INCLUDE "data/predef_pointers.asm"