summaryrefslogtreecommitdiff
path: root/rst.asm
diff options
context:
space:
mode:
authoryenatch <yenatch@gmail.com>2013-09-03 18:17:33 -0400
committeryenatch <yenatch@gmail.com>2013-09-03 18:17:33 -0400
commitdad64b1d9d1a5225f3c68199ec65a574a2a5176f (patch)
treeb93c9d9ec6aaa1ee29699792f581532c436f8efc /rst.asm
parent0caac30f2796087ec264d995f2bf21fd63857426 (diff)
split out rst vectors
Diffstat (limited to 'rst.asm')
-rw-r--r--rst.asm38
1 files changed, 38 insertions, 0 deletions
diff --git a/rst.asm b/rst.asm
new file mode 100644
index 000000000..d5bac0915
--- /dev/null
+++ b/rst.asm
@@ -0,0 +1,38 @@
+; rst vectors
+
+SECTION "rst0",ROM0[0]
+ di
+ jp Start
+
+SECTION "rst8",ROM0[FarCall]
+ jp FarCall_hl
+
+SECTION "rst10",ROM0[Bankswitch]
+ ld [hROMBank], a
+ ld [MBC3RomBank], a
+ ret
+
+SECTION "rst18",ROM0[$18]
+ rst $38
+
+SECTION "rst20",ROM0[$20]
+ rst $38
+
+SECTION "rst28",ROM0[JumpTable]
+ push de
+ ld e, a
+ ld d, 0
+ add hl, de
+ add hl, de
+ ld a, [hli]
+ ld h, [hl]
+ ld l, a
+ pop de
+ jp [hl]
+
+; SECTION "rst30",ROM0[$30]
+; rst30 is midst rst28
+
+SECTION "rst38",ROM0[$38]
+ rst $38
+