summaryrefslogtreecommitdiff
path: root/src/engine/bank6.asm
diff options
context:
space:
mode:
Diffstat (limited to 'src/engine/bank6.asm')
-rwxr-xr-xsrc/engine/bank6.asm175
1 files changed, 175 insertions, 0 deletions
diff --git a/src/engine/bank6.asm b/src/engine/bank6.asm
new file mode 100755
index 0000000..7535b3f
--- /dev/null
+++ b/src/engine/bank6.asm
@@ -0,0 +1,175 @@
+INCBIN "baserom.gbc",$18000,$1996e - $18000
+
+Func_1996e: ; 1996e (6:596e)
+ call EnableExtRAM
+ ld a, $c2
+ ld [$ff97], a
+ ld hl, $a100
+ ld bc, $1607
+.asm_1997b
+ xor a
+ ld [hli], a
+ dec bc
+ ld a, c
+ or b
+ jr nz, .asm_1997b
+ ld a, $5
+ ld hl, $a350
+ call Func_199e0
+ ld a, $7
+ ld hl, $a3a4
+ call Func_199e0
+ ld a, $9
+ ld hl, $a3f8
+ call Func_199e0
+ call EnableExtRAM
+ ld hl, $a100
+ ld a, $80
+.asm_199a2
+ ld [hl], a
+ inc l
+ jr nz, .asm_199a2
+ ld hl, $bc00
+ xor a
+ ld [hli], a
+ ld [hli], a
+ ld [hl], a
+ ld hl, $bb00
+ ld c, $10
+.asm_199b2
+ ld [hl], $0
+ ld de, $0010
+ add hl, de
+ dec c
+ jr nz, .asm_199b2
+ ld a, $2
+ ld [$a003], a
+ ld a, $2
+ ld [$a006], a
+ ld [$ce47], a
+ xor a
+ ld [$a007], a
+ ld [$a009], a
+ ld [$a004], a
+ ld [$a005], a
+ ld [$a00a], a
+ farcall Func_8cf9
+ call DisableExtRAM
+ ret
+
+Func_199e0: ; 199e0 (6:59e0)
+ push de
+ push bc
+ push hl
+ call LoadDeck
+ jr c, .asm_19a0e
+ call Func_19a12
+ pop hl
+ call EnableExtRAM
+ push hl
+ ld de, $c590
+.asm_199f3
+ ld a, [de]
+ inc de
+ ld [hli], a
+ or a
+ jr nz, .asm_199f3
+ pop hl
+ push hl
+ ld de, $0018
+ add hl, de
+ ld de, $c400
+ ld c, $3c
+.asm_19a04
+ ld a, [de]
+ inc de
+ ld [hli], a
+ dec c
+ jr nz, .asm_19a04
+ call DisableExtRAM
+ or a
+.asm_19a0e
+ pop hl
+ pop bc
+ pop de
+ ret
+
+Func_19a12: ; 19a12 (6:5a12)
+ ld hl, $cce9
+ ld a, [hli]
+ ld h, [hl]
+ ld l, a
+ ld de, $c590
+ call Func_2e89
+ ret
+; 0x19a1f
+
+INCBIN "baserom.gbc",$19a1f,$1a61f - $19a1f
+
+Func_1a61f: ; 1a61f (6:661f)
+ push af
+ ld de, $389f
+ call Func_2275
+ pop af
+ or a
+ jr nz, .asm_1a640
+ ld a, $40
+ call $663b
+ ld a, $5f
+ call $663b
+ ld a, $76
+ call $663b
+ ld a, $c1
+ ld hl, $0191
+ jr .asm_1a660
+.asm_1a640
+ ld hl, $018f
+ cp $1e
+ jr z, .asm_1a660
+ cp $43
+ jr z, .asm_1a660
+ ld hl, $0192
+ cp $64
+ jr z, .asm_1a660
+ ld hl, $0193
+ cp $65
+ jr z, .asm_1a660
+ cp $66
+ jr z, .asm_1a660
+ ld hl, $0190
+.asm_1a660
+ push hl
+ ld e, a
+ ld d, $0
+ call $2f10
+ call Func_379b
+ ld a, MUSIC_MEDAL
+ call PlaySong
+ ld hl, $cc27
+ ld a, [hli]
+ ld h, [hl]
+ ld l, a
+ bank1call $2ebb
+ ld a, $c2
+ ld [$ff97], a
+ pop hl
+ bank1call $5e5f
+.asm_1a680
+ call Func_378a
+ or a
+ jr nz, .asm_1a680
+ call Func_37a0
+ bank1call $5773
+ ret
+; 0x1a68d
+
+INCBIN "baserom.gbc",$1a68d,$1a6cc - $1a68d
+
+Func_1a6cc: ; 1a6cc (6:66cc)
+ ret
+; 0x1a6cd
+
+INCBIN "baserom.gbc",$1a6cd,$1ad89 - $1a6cd
+
+Func_1ad89: ; 1ad89 (6:6d89)
+INCBIN "baserom.gbc",$1ad89,$1c000 - $1ad89