summaryrefslogtreecommitdiff
path: root/macros.asm
diff options
context:
space:
mode:
authorPikalaxALT <PikalaxALT@gmail.com>2015-12-26 21:59:03 -0500
committerPikalaxALT <PikalaxALT@gmail.com>2015-12-26 21:59:03 -0500
commitf030315b1fd797aa6765ac8cd8c35c0cd9b600a0 (patch)
treeda461ae6040d2a2f0e0b3a95e837a6c5e99e2fd6 /macros.asm
parent2bd45ca574aab251b91c24837b102c9c2a5e76a0 (diff)
jumptable macro repurposed
Diffstat (limited to 'macros.asm')
-rw-r--r--macros.asm30
1 files changed, 10 insertions, 20 deletions
diff --git a/macros.asm b/macros.asm
index 4572d0c90..812873584 100644
--- a/macros.asm
+++ b/macros.asm
@@ -257,25 +257,15 @@ else
endc
endm
-jumptable_start: MACRO
-; Use the declare opname you want to use,
-; either "dw", "dba", or "dab".
-if def(__far)
- purge __far
-endc
-if _NARG == 0
-__far EQUS "dw"
-else
-__far EQUS "\1"
-endc
- enum_start
-endm
-
jumptable: MACRO
-if DEF(\1TableIndex)
-__enum__ = __enum__ + 1
-else
- enum \1TableIndex
-endc
- __far \1
+ ld a, [\2]
+ ld e, a
+ ld d, 0
+ ld hl, \1
+ add hl, de
+ add hl, de
+ ld a, [hli]
+ ld h, [hl]
+ ld l, a
+ jp [hl]
endm