diff options
author | U-Fish-PC\Daniel <corrnondacqb@yahoo.com> | 2014-04-12 22:13:13 -0400 |
---|---|---|
committer | U-Fish-PC\Daniel <corrnondacqb@yahoo.com> | 2014-04-12 22:13:13 -0400 |
commit | 029f690fc86ea82b8a4fa4b269e014bdea4e8b45 (patch) | |
tree | 45be1bd24c82027c12bdceeeee36534aeadf26b9 | |
parent | bb1fb44098aadec3154b82d1c91a565618e66c2f (diff) |
Music? engine(s)
-rwxr-xr-x | home.asm | 22 | ||||
-rwxr-xr-x | music1.asm | 1954 | ||||
-rwxr-xr-x | music2.asm | 1955 |
3 files changed, 3925 insertions, 6 deletions
@@ -1210,4 +1210,24 @@ Func_377f: ; 377f (0:377f) ret
; 0x3784
-INCBIN "baserom.gbc",$3784,$4000 - $3784
\ No newline at end of file +INCBIN "baserom.gbc",$3784,$3fe0 - $3784
+
+; jumps to 3f:hl
+Bankswitch3dTo3f: ; 3fe0 (0:3fe0)
+ push af
+ ld a, $3f
+ ld [$ff80], a
+ ld [$2000], a
+ pop af
+ ld bc, Bankswitch3d
+ push bc
+ jp [hl]
+
+Bankswitch3d: ; 3fe0 (0:3fe0)
+ ld a, $3d
+ ld [$ff80], a
+ ld [$2000], a
+ ret
+; 0x3ff6
+
+INCBIN "baserom.gbc",$3ff6,$4000 - $3ff6
\ No newline at end of file @@ -1,11 +1,1957 @@ Func_f4000: ; f4000 (3d:4000)
- jp $407d
+ jp Func_f407d
Func_f4003: ; f4003 (3d:4003)
- jp $40e9
-; 0xf4006
+ jp Func_f40e9
-INCBIN "baserom.gbc",$f4006,$f4ee6 - $f4006
+Func_f4006: ; f4006 (3d:4006)
+ jp Func_f4021
+
+Func_f4009: ; f4009 (3d:4009)
+ jp Func_f402d
+
+Func_f400c: ; f400c (3d:400c)
+ jp Func_f404e
+
+Func_f400f: ; f400f (3d:400f)
+ jp Func_f4052
+
+Func_f4012: ; f4012 (3d:4012)
+ jp Func_f405c
+
+Func_f4015: ; f4015 (3d:4015)
+ jp Func_f4066
+
+Func_f4018: ; f4018 (3d:4018)
+ jp Func_f406f
+
+Func_f401b: ; f401b (3d:401b)
+ jp Func_f49c4
+
+Func_f401e: ; f401e (3d:401e)
+ jp Func_f49d0
+
+Func_f4021: ; f4021 (3d:4021)
+ push hl
+ ld hl, NumberOfSongs1
+ cp [hl]
+ jr nc, .asm_f402b
+ ld [$dd80], a
+.asm_f402b
+ pop hl
+ ret
+
+Func_f402d: ; f402d (3d:402d)
+ push bc
+ push hl
+ ld b, $0
+ ld c, a
+ or a
+ jr z, .asm_f4043
+ ld hl, $4e85
+ add hl, bc
+ ld b, [hl]
+ ld a, [$dd83]
+ or a
+ jr z, .asm_f4043
+ cp b
+ jr c, .asm_f404b
+.asm_f4043
+ ld a, b
+ ld [$dd83], a
+ ld a, c
+ ld [$dd82], a
+.asm_f404b
+ pop hl
+ pop bc
+ ret
+
+Func_f404e: ; f404e (3d:404e)
+ ld [$ddf0], a
+ ret
+
+Func_f4052: ; f4052 (3d:4052)
+ ld a, [$dd80]
+ cp $80
+ ld a, $1
+ ret nz
+ xor a
+ ret
+
+Func_f405c: ; f405c (3d:405c)
+ ld a, [$dd82]
+ cp $80
+ ld a, $1
+ ret nz
+ xor a
+ ret
+
+Func_f4066: ; f4066 (3d:4066)
+ ld a, [$ddf2]
+ xor $1
+ ld [$ddf2], a
+ ret
+
+Func_f406f: ; f406f (3d:406f)
+ push bc
+ push af
+ and $7
+ ld b, a
+ swap b
+ or b
+ ld [$ddf1], a
+ pop af
+ pop bc
+ ret
+
+Func_f407d: ; f407d (3d:407d)
+ xor a
+ ld [$ff26], a
+ ld a, $80
+ ld [$ff26], a
+ ld a, $77
+ ld [$ff24], a
+ ld a, $ff
+ ld [$ff25], a
+ ld a, $3d
+ ld [$dd81], a
+ ld a, $80
+ ld [$dd80], a
+ ld [$dd82], a
+ ld a, $77
+ ld [$ddf1], a
+ xor a
+ ld [$dd8c], a
+ ld [$de53], a
+ ld [$dd8b], a
+ ld [$ddef], a
+ ld [$ddf0], a
+ ld [$ddf2], a
+ dec a
+ ld [$dd84], a
+ ld de, $0001
+ ld bc, $0000
+.asm_f40bb
+ ld hl, $dd8d
+ add hl, bc
+ ld [hl], d
+ ld hl, $dd91
+ add hl, bc
+ ld [hl], d
+ ld hl, $ddb3
+ add hl, bc
+ ld [hl], d
+ ld hl, $ddcb
+ add hl, bc
+ ld [hl], d
+ ld hl, $ddbf
+ add hl, bc
+ ld [hl], d
+ inc c
+ ld a, c
+ cp $4
+ jr nz, .asm_f40bb
+ ld hl, Unknown_f4c20
+ ld bc, $ddf3
+ ld d, $8
+.asm_f40e2
+ ld a, [hli]
+ ld [bc], a
+ inc bc
+ dec d
+ jr nz, .asm_f40e2
+ ret
+
+Func_f40e9: ; f40e9 (3d:40e9)
+ call Func_f42a4
+ call Func_f411c
+ ld hl, $4003
+ call Bankswitch3dTo3f
+ ld a, [$dd81]
+ ld [$ff80], a
+ ld [$2000], a
+ ld a, [$ddf2]
+ cp $0
+ jr z, .asm_f4109
+ call Func_f4980
+ jr .asm_f4115
+.asm_f4109
+ call Func_f42a5
+ call Func_f430a
+ call Func_f436f
+ call Func_f43ce
+.asm_f4115
+ call Func_f4866
+ call Func_f49b1
+ ret
+
+Func_f411c: ; f411c (3d:411c)
+ ld a, [$dd80]
+ rla
+ jr c, .asm_f4133
+ call Func_f414b
+ ld a, [$dd80]
+ call Func_f418c
+ ld a, [$dd80]
+ or $80
+ ld [$dd80], a
+.asm_f4133
+ ld a, [$dd82]
+ rla
+ jr c, .asm_f414a
+ ld a, [$dd82]
+ ld hl, $4000
+ call Bankswitch3dTo3f
+ ld a, [$dd82]
+ or $80
+ ld [$dd82], a
+.asm_f414a
+ ret
+
+Func_f414b: ; f414b (3d:414b)
+ ld a, [$dd8c]
+ ld d, a
+ xor a
+ ld [$dd8d], a
+ bit 0, d
+ jr nz, .asm_f415f
+ ld a, $8
+ ld [$ff12], a
+ swap a
+ ld [$ff14], a
+.asm_f415f
+ xor a
+ ld [$dd8e], a
+ bit 1, d
+ jr nz, .asm_f416f
+ ld a, $8
+ ld [$ff17], a
+ swap a
+ ld [$ff19], a
+.asm_f416f
+ xor a
+ ld [$dd90], a
+ bit 3, d
+ jr nz, .asm_f417f
+ ld a, $8
+ ld [$ff21], a
+ swap a
+ ld [$ff23], a
+.asm_f417f
+ xor a
+ ld [$dd8f], a
+ bit 2, d
+ jr nz, .asm_f418b
+ ld a, $0
+ ld [$ff1c], a
+.asm_f418b
+ ret
+
+Func_f418c: ; f418c (3d:418c)
+ push af
+ ld c, a
+ ld b, $0
+ ld hl, SongBanks1
+ add hl, bc
+ ld a, [hl]
+ ld [$dd81], a
+ ld [$ff80], a
+ ld [$2000], a
+ pop af
+ add a
+ ld c, a
+ ld b, $0
+ ld hl, SongHeaderPointers1
+ add hl, bc
+ ld e, [hl]
+ inc hl
+ ld h, [hl]
+ ld l, e
+ ld e, [hl]
+ inc hl
+ ld b, h
+ ld c, l
+ rr e
+ jr nc, .asm_f41eb
+ ld a, [bc]
+ inc bc
+ ld [$dd95], a
+ ld [$dd9d], a
+ ld a, [bc]
+ inc bc
+ ld [$dd96], a
+ ld [$dd9e], a
+ ld a, $1
+ ld [$ddbb], a
+ ld [$dd8d], a
+ xor a
+ ld [$dd91], a
+ ld [$ddea], a
+ ld [$ddbf], a
+ ld [$dddf], a
+ ld [$ddcb], a
+ ld a, [Unknown_f4c20]
+ ld [$ddf3], a
+ ld a, [Unknown_f4c20 + 1]
+ ld [$ddf4], a
+ ld a, $8
+ ld [$ddc7], a
+.asm_f41eb
+ rr e
+ jr nc, .asm_f4228
+ ld a, [bc]
+ inc bc
+ ld [$dd97], a
+ ld [$dd9f], a
+ ld a, [bc]
+ inc bc
+ ld [$dd98], a
+ ld [$dda0], a
+ ld a, $1
+ ld [$ddbc], a
+ ld [$dd8e], a
+ xor a
+ ld [$dd92], a
+ ld [$ddeb], a
+ ld [$ddc0], a
+ ld [$dde0], a
+ ld [$ddcc], a
+ ld a, [Unknown_f4c20 + 2]
+ ld [$ddf5], a
+ ld a, [Unknown_f4c20 + 3]
+ ld [$ddf6], a
+ ld a, $8
+ ld [$ddc8], a
+.asm_f4228
+ rr e
+ jr nc, .asm_f4265
+ ld a, [bc]
+ inc bc
+ ld [$dd99], a
+ ld [$dda1], a
+ ld a, [bc]
+ inc bc
+ ld [$dd9a], a
+ ld [$dda2], a
+ ld a, $1
+ ld [$ddbd], a
+ ld [$dd8f], a
+ xor a
+ ld [$dd93], a
+ ld [$ddec], a
+ ld [$ddc1], a
+ ld [$dde1], a
+ ld [$ddcd], a
+ ld a, [Unknown_f4c20 + 4]
+ ld [$ddf7], a
+ ld a, [Unknown_f4c20 + 5]
+ ld [$ddf8], a
+ ld a, $40
+ ld [$ddc9], a
+.asm_f4265
+ rr e
+ jr nc, .asm_f429f
+ ld a, [bc]
+ inc bc
+ ld [$dd9b], a
+ ld [$dda3], a
+ ld a, [bc]
+ inc bc
+ ld [$dd9c], a
+ ld [$dda4], a
+ ld a, $1
+ ld [$ddbe], a
+ ld [$dd90], a
+ xor a
+ ld [$dd94], a
+ ld [$ddc2], a
+ ld [$dde2], a
+ ld [$ddce], a
+ ld a, [Unknown_f4c20 + 6]
+ ld [$ddf9], a
+ ld a, [Unknown_f4c20 + 7]
+ ld [$ddfa], a
+ ld a, $40
+ ld [$ddca], a
+.asm_f429f
+ xor a
+ ld [$ddf2], a
+ ret
+
+Func_f42a4: ; f42a4 (3d:42a4)
+ ret
+
+Func_f42a5: ; f42a5 (3d:42a5)
+ ld a, [$dd8d]
+ or a
+ jr z, .asm_f42fa
+ ld a, [$ddb7]
+ cp $0
+ jr z, .asm_f42d4
+ ld a, [$ddc3]
+ dec a
+ ld [$ddc3], a
+ jr nz, .asm_f42d4
+ ld a, [$ddbb]
+ cp $1
+ jr z, .asm_f42d4
+ ld a, [$dd8c]
+ bit 0, a
+ jr nz, .asm_f42d4
+ ld hl, $ff12
+ ld a, [$ddc7]
+ ld [hli], a
+ inc hl
+ ld a, $80
+ ld [hl], a
+.asm_f42d4
+ ld a, [$ddbb]
+ dec a
+ ld [$ddbb], a
+ jr nz, .asm_f42f4
+ ld a, [$dd96]
+ ld h, a
+ ld a, [$dd95]
+ ld l, a
+ ld bc, $0000
+ call Func_f4414
+ ld a, [$dd8d]
+ or a
+ jr z, .asm_f42fa
+ call Func_f4714
+.asm_f42f4
+ ld a, $0
+ call Func_f485a
+ ret
+.asm_f42fa
+ ld a, [$dd8c]
+ bit 0, a
+ jr nz, .asm_f4309
+ ld a, $8
+ ld [$ff12], a
+ swap a
+ ld [$ff14], a
+.asm_f4309
+ ret
+
+Func_f430a: ; f430a (3d:430a)
+ ld a, [$dd8e]
+ or a
+ jr z, .asm_f435f
+ ld a, [$ddb8]
+ cp $0
+ jr z, .asm_f4339
+ ld a, [$ddc4]
+ dec a
+ ld [$ddc4], a
+ jr nz, .asm_f4339
+ ld a, [$ddbc]
+ cp $1
+ jr z, .asm_f4339
+ ld a, [$dd8c]
+ bit 1, a
+ jr nz, .asm_f4339
+ ld hl, $ff17
+ ld a, [$ddc8]
+ ld [hli], a
+ inc hl
+ ld a, $80
+ ld [hl], a
+.asm_f4339
+ ld a, [$ddbc]
+ dec a
+ ld [$ddbc], a
+ jr nz, .asm_f4359
+ ld a, [$dd98]
+ ld h, a
+ ld a, [$dd97]
+ ld l, a
+ ld bc, $0001
+ call Func_f4414
+ ld a, [$dd8e]
+ or a
+ jr z, .asm_f435f
+ call Func_f475a
+.asm_f4359
+ ld a, $1
+ call Func_f485a
+ ret
+.asm_f435f
+ ld a, [$dd8c]
+ bit 1, a
+ jr nz, .asm_f436e
+ ld a, $8
+ ld [$ff17], a
+ swap a
+ ld [$ff19], a
+.asm_f436e
+ ret
+
+Func_f436f: ; f436f (3d:436f)
+ ld a, [$dd8f]
+ or a
+ jr z, .asm_f43be
+ ld a, [$ddb9]
+ cp $0
+ jr z, .asm_f4398
+ ld a, [$ddc5]
+ dec a
+ ld [$ddc5], a
+ jr nz, .asm_f4398
+ ld a, [$dd8c]
+ bit 2, a
+ jr nz, .asm_f4398
+ ld a, [$ddbd]
+ cp $1
+ jr z, .asm_f4398
+ ld a, [$ddc9]
+ ld [$ff1c], a
+.asm_f4398
+ ld a, [$ddbd]
+ dec a
+ ld [$ddbd], a
+ jr nz, .asm_f43b8
+ ld a, [$dd9a]
+ ld h, a
+ ld a, [$dd99]
+ ld l, a
+ ld bc, $0002
+ call Func_f4414
+ ld a, [$dd8f]
+ or a
+ jr z, .asm_f43be
+ call Func_f479c
+.asm_f43b8
+ ld a, $2
+ call Func_f485a
+ ret
+.asm_f43be
+ ld a, [$dd8c]
+ bit 2, a
+ jr nz, .asm_f43cd
+ ld a, $0
+ ld [$ff1c], a
+ ld a, $80
+ ld [$ff1e], a
+.asm_f43cd
+ ret
+
+Func_f43ce: ; f43ce (3d:43ce)
+ ld a, [$dd90]
+ or a
+ jr z, .asm_f4400
+ ld a, [$ddbe]
+ dec a
+ ld [$ddbe], a
+ jr nz, .asm_f43f6
+ ld a, [$dd9c]
+ ld h, a
+ ld a, [$dd9b]
+ ld l, a
+ ld bc, $0003
+ call Func_f4414
+ ld a, [$dd90]
+ or a
+ jr z, .asm_f4400
+ call Func_f480a
+ jr .asm_f4413
+.asm_f43f6
+ ld a, [$ddef]
+ or a
+ jr z, .asm_f4413
+ call Func_f4839
+ ret
+.asm_f4400
+ ld a, [$dd8c]
+ bit 3, a
+ jr nz, .asm_f4413
+ xor a
+ ld [$ddef], a
+ ld a, $8
+ ld [$ff21], a
+ swap a
+ ld [$ff23], a
+.asm_f4413
+ ret
+
+Func_f4414: ; f4414 (3d:4414)
+ ld a, [hli]
+ push hl
+ push af
+ cp $d0
+ jr c, .asm_f448c
+ sub $d0
+ add a
+ ld e, a
+ ld d, $0
+ ld hl, .data_f442c
+ add hl, de
+ ld e, [hl]
+ inc hl
+ ld d, [hl]
+ ld h, d
+ ld l, e
+ pop af
+ jp [hl]
+
+.data_f442c
+ dw Func_f4598
+ dw Func_f45a3
+ dw Func_f45a3
+ dw Func_f45a3
+ dw Func_f45a3
+ dw Func_f45a3
+ dw Func_f45a3
+ dw Func_f45bb
+ dw Func_f45c3
+ dw Func_f45cb
+ dw Func_f46f4
+ dw Func_f46f4
+ dw Func_f45d4
+ dw Func_f45ef
+ dw Func_f45fd
+ dw Func_f4609
+ dw Func_f461e
+ dw Func_f4638
+ dw Func_f463f
+ dw Func_f4656
+ dw Func_f4667
+ dw Func_f4674
+ dw Func_f4683
+ dw Func_f4690
+ dw Func_f46a0
+ dw Func_f46ad
+ dw Func_f46ba
+ dw Func_f46cc
+ dw Func_f46d9
+ dw Func_f46e6
+ dw Func_f46f4
+ dw Func_f46f4
+ dw Func_f46f4
+ dw Func_f46f4
+ dw Func_f46f4
+ dw Func_f46f4
+ dw Func_f46f4
+ dw Func_f46f4
+ dw Func_f46f4
+ dw Func_f46f4
+ dw Func_f46f4
+ dw Func_f46f4
+ dw Func_f46f4
+ dw Func_f46f4
+ dw Func_f46f4
+ dw Func_f46f4
+ dw Func_f46f4
+ dw Func_f46f4
+
+.asm_f448c
+ push af
+ ld a, [hl]
+ ld e, a
+ ld hl, $dd91
+ add hl, bc
+ ld a, [hl]
+ cp $80
+ jr z, .asm_f44b0
+ ld [hl], $1
+ xor a
+ ld hl, $dddb
+ add hl, bc
+ ld [hl], a
+ ld hl, $dde3
+ add hl, bc
+ ld [hl], a
+ inc [hl]
+ ld hl, $ddd7
+ add hl, bc
+ ld a, [hl]
+ ld hl, $ddd3
+ add hl, bc
+ ld [hl], a
+.asm_f44b0
+ pop af
+ push de
+ ld hl, $ddcf
+ add hl, bc
+ ld d, [hl]
+ and $f
+ inc a
+ cp d
+ jr nc, .asm_f44c0
+ ld e, a
+ ld a, d
+ ld d, e
+.asm_f44c0
+ ld e, a
+.asm_f44c1
+ dec d
+ jr z, .asm_f44c7
+ add e
+ jr .asm_f44c1
+.asm_f44c7
+ ld hl, $ddbb
+ add hl, bc
+ ld [hl], a
+ pop de
+ ld d, a
+ ld a, e
+ cp $d9
+ ld a, d
+ jr z, .asm_f44fb
+ ld e, a
+ ld hl, $ddbf
+ add hl, bc
+ ld a, [hl]
+ cp $8
+ ld d, a
+ ld a, e
+ jr z, .asm_f44fb
+ push hl
+ push bc
+ ld b, $0
+ ld c, a
+ ld hl, $0000
+.asm_f44e8
+ add hl, bc
+ dec d
+ jr nz, .asm_f44e8
+ srl h
+ rr l
+ srl h
+ rr l
+ srl h
+ rr l
+ ld a, l
+ pop bc
+ pop hl
+.asm_f44fb
+ ld hl, $ddc3
+ add hl, bc
+ ld [hl], a
+ pop af
+ and $f0
+ ld hl, $ddb7
+ add hl, bc
+ ld [hl], a
+ or a
+ jr nz, .asm_f450e
+ jp .asm_f458e
+.asm_f450e
+ swap a
+ dec a
+ ld h, a
+ ld a, $3
+ cp c
+ ld a, h
+ jr z, .asm_f451a
+ jr .asm_f4564
+.asm_f451a
+ push af
+ ld hl, $ddaf
+ add hl, bc
+ ld a, [hl]
+ ld d, a
+ sla a
+ add d
+ sla a
+ sla a
+ sla a
+ ld e, a
+ pop af
+ ld hl, PointerTable_f4d34
+ add a
+ ld d, c
+ ld c, a
+ add hl, bc
+ ld c, e
+ add hl, bc
+ ld c, d
+ ld a, [hli]
+ ld h, [hl]
+ ld l, a
+ ld a, [hli]
+ ld d, a
+ ld a, [$dd84]
+ and $77
+ or d
+ ld [$dd84], a
+ ld de, $ddab
+ ld a, [hli]
+ ld [de], a
+ inc de
+ ld a, [hli]
+ ld [de], a
+ inc de
+ ld b, [hl]
+ inc hl
+ ld a, [hli]
+ ld [de], a
+ inc de
+ ld a, b
+ ld [de], a
+ ld b, $0
+ ld a, l
+ ld d, h
+ ld hl, $dded
+ ld [hli], a
+ ld [hl], d
+ ld a, $1
+ ld [$ddef], a
+ jr .asm_f458e
+.asm_f4564
+ ld hl, $dda5
+ add hl, bc
+ add hl, bc
+ push hl
+ ld hl, $ddaf
+ add hl, bc
+ ld e, [hl]
+ ld d, $0
+ ld hl, Unknown_f4c28
+ add hl, de
+ add a
+ ld e, [hl]
+ add e
+ ld hl, $ddcb
+ add hl, bc
+ ld e, [hl]
+ add e
+ add e
+ ld e, a
+ ld hl, $4c30
+ add hl, de
+ ld a, [hli]
+ ld e, a
+ ld d, [hl]
+ call Func_f4967
+ pop hl
+ ld a, e
+ ld [hli], a
+ ld [hl], d
+.asm_f458e
+ pop de
+ ld hl, $dd95
+ add hl, bc
+ add hl, bc
+ ld [hl], e
+ inc hl
+ ld [hl], d
+ ret
+
+Func_f4598: ; f4598 (3d:4598)
+ pop hl
+ ld a, [hli]
+ push hl
+ ld hl, $ddcf
+ add hl, bc
+ ld [hl], a
+ jp Func_f4710
+
+Func_f45a3: ; f45a3 (3d:45a3)
+ and $7
+ dec a
+ ld hl, $ddaf
+ add hl, bc
+ push af
+ ld a, c
+ cp $2
+ jr nz, .asm_f45b6
+ pop af
+ inc a
+ ld [hl], a
+ jp Func_f4710
+.asm_f45b6
+ pop af
+ ld [hl], a
+ jp Func_f4710
+
+Func_f45bb: ; f45bb (3d:45bb)
+ ld hl, $ddaf
+ add hl, bc
+ inc [hl]
+ jp Func_f4710
+
+Func_f45c3: ; f45c3 (3d:45c3)
+ ld hl, $ddaf
+ add hl, bc
+ dec [hl]
+ jp Func_f4710
+
+Func_f45cb: ; f45cb (3d:45cb)
+ ld hl, $dd91
+ add hl, bc
+ ld [hl], $80
+ jp Func_f4710
+
+Func_f45d4: ; f45d4 (3d:45d4)
+ pop hl
+ ld a, [hli]
+ push hl
+ push bc
+ inc c
+ ld e, $ee
+.asm_f45db
+ dec c
+ jr z, .asm_f45e3
+ rlca
+ rlc e
+ jr .asm_f45db
+.asm_f45e3
+ ld d, a
+ ld hl, $dd84
+ ld a, [hl]
+ and e
+ or d
+ ld [hl], a
+ pop bc
+ jp Func_f4710
+
+Func_f45ef: ; f45ef (3d:45ef)
+ pop de
+ push de
+ dec de
+ ld hl, $dd9d
+ add hl, bc
+ add hl, bc
+ ld [hl], e
+ inc hl
+ ld [hl], d
+ jp Func_f4710
+
+Func_f45fd: ; f45fd (3d:45fd)
+ pop hl
+ ld hl, $dd9d
+ add hl, bc
+ add hl, bc
+ ld a, [hli]
+ ld h, [hl]
+ ld l, a
+ jp Func_f4414
+
+Func_f4609: ; f4609 (3d:4609)
+ pop de
+ ld a, [de]
+ inc de
+ push af
+ call Func_f46fc
+ ld [hl], e
+ inc hl
+ ld [hl], d
+ inc hl
+ pop af
+ ld [hl], a
+ inc hl
+ push de
+ call Func_f4705
+ jp Func_f4710
+
+Func_f461e: ; f461e (3d:461e)
+ call Func_f46fc
+ dec hl
+ ld a, [hl]
+ dec a
+ jr z, .asm_f4630
+ ld [hld], a
+ ld d, [hl]
+ dec hl
+ ld e, [hl]
+ pop hl
+ ld h, d
+ ld l, e
+ jp Func_f4414
+.asm_f4630
+ dec hl
+ dec hl
+ call Func_f4705
+ jp Func_f4710
+
+Func_f4638: ; f4638 (3d:4638)
+ pop hl
+ ld a, [hli]
+ ld h, [hl]
+ ld l, a
+ jp Func_f4414
+
+Func_f463f: ; f463f (3d:463f)
+ call Func_f46fc
+ pop de
+ ld a, e
+ ld [hli], a
+ ld a, d
+ ld [hli], a
+ ld a, [de]
+ ld b, a
+ inc de
+ ld a, [de]
+ ld d, a
+ ld e, b
+ ld b, $0
+ push de
+ call Func_f4705
+ jp Func_f4710
+
+Func_f4656: ; f4656 (3d:4656)
+ pop de
+ call Func_f46fc
+ dec hl
+ ld a, [hld]
+ ld e, [hl]
+ ld d, a
+ inc de
+ inc de
+ push de
+ call Func_f4705
+ jp Func_f4710
+
+Func_f4667: ; f4667 (3d:4667)
+ pop de
+ ld a, [de]
+ inc de
+ ld hl, $ddea
+ add hl, bc
+ ld [hl], a
+ ld h, d
+ ld l, e
+ jp Func_f4414
+
+Func_f4674: ; f4674 (3d:4674)
+ pop de
+ ld a, [de]
+ and $c0
+ inc de
+ ld hl, $dd86
+ add hl, bc
+ ld [hl], a
+ ld h, d
+ ld l, e
+ jp Func_f4414
+
+Func_f4683: ; f4683 (3d:4683)
+ pop de
+ ld a, [de]
+ inc de
+ ld hl, $dde7
+ add hl, bc
+ ld [hl], a
+ ld h, d
+ ld l, e
+ jp Func_f4414
+
+Func_f4690: ; f4690 (3d:4690)
+ pop de
+ ld a, [de]
+ inc de
+ ld [$dd8a], a
+ ld a, $1
+ ld [$dd8b], a
+ ld h, d
+ ld l, e
+ jp Func_f4414
+
+Func_f46a0: ; f46a0 (3d:46a0)
+ pop de
+ ld a, [de]
+ inc de
+ ld hl, $ddbf
+ add hl, bc
+ ld [hl], a
+ ld h, d
+ ld l, e
+ jp Func_f4414
+
+Func_f46ad: ; f46ad (3d:46ad)
+ pop de
+ ld a, [de]
+ inc de
+ ld hl, $ddc7
+ add hl, bc
+ ld [hl], a
+ ld h, d
+ ld l, e
+ jp Func_f4414
+
+Func_f46ba: ; f46ba (3d:46ba)
+ pop de
+ ld a, [de]
+ inc de
+ ld hl, $ddd3
+ add hl, bc
+ ld [hl], a
+ ld hl, $ddd7
+ add hl, bc
+ ld [hl], a
+ ld h, d
+ ld l, e
+ jp Func_f4414
+
+Func_f46cc: ; f46cc (3d:46cc)
+ pop de
+ ld a, [de]
+ inc de
+ ld hl, $dddf
+ add hl, bc
+ ld [hl], a
+ ld h, d
+ ld l, e
+ jp Func_f4414
+
+Func_f46d9: ; f46d9 (3d:46d9)
+ pop de
+ ld a, [de]
+ inc de
+ ld hl, $ddcb
+ add hl, bc
+ ld [hl], a
+ ld h, d
+ ld l, e
+ jp Func_f4414
+
+Func_f46e6: ; f46e6 (3d:46e6)
+ pop de
+ ld a, [de]
+ inc de
+ ld hl, $ddcb
+ add hl, bc
+ add [hl]
+ ld [hl], a
+ ld h, d
+ ld l, e
+ jp Func_f4414
+
+Func_f46f4: ; f46f4 (3d:46f4)
+ ld hl, $dd8d
+ add hl, bc
+ ld [hl], $0
+ pop hl
+ ret
+
+Func_f46fc: ; f46fc (3d:46fc)
+ ld hl, $ddf3
+ add hl, bc
+ add hl, bc
+ ld a, [hli]
+ ld h, [hl]
+ ld l, a
+ ret
+
+Func_f4705: ; f4705 (3d:4705)
+ ld d, h
+ ld e, l
+ ld hl, $ddf3
+ add hl, bc
+ add hl, bc
+ ld [hl], e
+ inc hl
+ ld [hl], d
+ ret
+
+Func_f4710: ; f4710 (3d:4710)
+ pop hl
+ jp Func_f4414
+
+Func_f4714: ; f4714 (3d:4714)
+ ld a, [$dd8c]
+ bit 0, a
+ jr nz, .asm_f4749
+ ld a, [$ddb7]
+ cp $0
+ jr z, .asm_f474a
+ ld d, $0
+ ld hl, $dd91
+ ld a, [hl]
+ cp $80
+ jr z, .asm_f4733
+ ld a, [$dde7]
+ ld [$ff12], a
+ ld d, $80
+.asm_f4733
+ ld [hl], $2
+ ld a, $8
+ ld [$ff10], a
+ ld a, [$dd86]
+ ld [$ff11], a
+ ld a, [$dda5]
+ ld [$ff13], a
+ ld a, [$dda6]
+ or d
+ ld [$ff14], a
+.asm_f4749
+ ret
+.asm_f474a
+ ld hl, $dd91
+ ld [hl], $0
+ ld hl, $ff12
+ ld a, $8
+ ld [hli], a
+ inc hl
+ swap a
+ ld [hl], a
+ ret
+
+Func_f475a: ; f475a (3d:475a)
+ ld a, [$dd8c]
+ bit 1, a
+ jr nz, .asm_f478b
+ ld a, [$ddb8]
+ cp $0
+ jr z, .asm_f478c
+ ld d, $0
+ ld hl, $dd92
+ ld a, [hl]
+ cp $80
+ jr z, .asm_f4779
+ ld a, [$dde8]
+ ld [$ff17], a
+ ld d, $80
+.asm_f4779
+ ld [hl], $2
+ ld a, [$dd87]
+ ld [$ff16], a
+ ld a, [$dda7]
+ ld [$ff18], a
+ ld a, [$dda8]
+ or d
+ ld [$ff19], a
+.asm_f478b
+ ret
+.asm_f478c
+ ld hl, $dd92
+ ld [hl], $0
+ ld hl, $ff17
+ ld a, $8
+ ld [hli], a
+ inc hl
+ swap a
+ ld [hl], a
+ ret
+
+Func_f479c: ; f479c (3d:479c)
+ ld a, [$dd8c]
+ bit 2, a
+ jr nz, .asm_f47e0
+ ld d, $0
+ ld a, [$dd8b]
+ or a
+ jr z, .asm_f47b3
+ xor a
+ ld [$ff1a], a
+ call Func_f47ea
+ ld d, $80
+.asm_f47b3
+ ld a, [$ddb9]
+ cp $0
+ jr z, .asm_f47e1
+ ld hl, $dd93
+ ld a, [hl]
+ cp $80
+ jr z, .asm_f47cc
+ ld a, [$dde9]
+ ld [$ff1c], a
+ xor a
+ ld [$ff1a], a
+ ld d, $80
+.asm_f47cc
+ ld [hl], $2
+ xor a
+ ld [$ff1b], a
+ ld a, [$dda9]
+ ld [$ff1d], a
+ ld a, $80
+ ld [$ff1a], a
+ ld a, [$ddaa]
+ or d
+ ld [$ff1e], a
+.asm_f47e0
+ ret
+.asm_f47e1
+ ld hl, $dd91
+ ld [hl], $0
+ xor a
+ ld [$ff1a], a
+ ret
+
+Func_f47ea: ; f479c (3d:47ea)
+ ld a, [$dd8a]
+ add a
+ ld d, $0
+ ld e, a
+ ld hl, PointerTable_f4cda
+ add hl, de
+ ld a, [hli]
+ ld h, [hl]
+ ld l, a
+ ld b, d
+ ld de, $ff30
+.asm_f47fc
+ ld a, [hli]
+ ld [de], a
+ inc de
+ inc b
+ ld a, b
+ cp $10
+ jr nz, .asm_f47fc
+ xor a
+ ld [$dd8b], a
+ ret
+
+Func_f480a: ; f480a (3d:480a)
+ ld a, [$dd8c]
+ bit 3, a
+ jr nz, .asm_f4829
+ ld a, [$ddba]
+ cp $0
+ jr z, asm_f482a
+ ld de, $ff20
+ ld hl, $ddab
+ ld a, [hli]
+ ld [de], a
+ inc e
+ ld a, [hli]
+ ld [de], a
+ inc e
+ ld a, [hli]
+ ld [de], a
+ inc e
+ ld a, [hli]
+ ld [de], a
+.asm_f4829
+ ret
+asm_f482a
+ xor a
+ ld [$ddef], a
+ ld hl, $ff21
+ ld a, $8
+ ld [hli], a
+ inc hl
+ swap a
+ ld [hl], a
+ ret
+
+Func_f4839: ; f4839 (3d:4839)
+ ld a, [$dd8c]
+ bit 3, a
+ jr z, .asm_f4846
+ xor a
+ ld [$ddef], a
+ jr .asm_f4859
+.asm_f4846
+ ld hl, $dded
+ ld a, [hli]
+ ld d, [hl]
+ ld e, a
+ ld a, [de]
+ cp $ff
+ jr nz, .asm_f4853
+ jr asm_f482a
+.asm_f4853
+ ld [$ff22], a
+ inc de
+ ld a, d
+ ld [hld], a
+ ld [hl], e
+.asm_f4859
+ ret
+
+Func_f485a: ; f485a (3d:485a)
+ push af
+ ld b, $0
+ ld c, a
+ call Func_f4898
+ pop af
+ call Func_f490b
+ ret
+
+Func_f4866: ; f4866 (3d:4866)
+ ld a, [$ddf1]
+ ld [$ff24], a
+ ld a, [$dd8c]
+ or a
+ ld hl, $dd84
+ ld a, [hli]
+ jr z, .asm_f4888
+ ld a, [$dd8c]
+ and $f
+ ld d, a
+ swap d
+ or d
+ ld d, a
+ xor $ff
+ ld e, a
+ ld a, [hld]
+ and d
+ ld d, a
+ ld a, [hl]
+ and e
+ or d
+.asm_f4888
+ ld d, a
+ ld a, [$ddf0]
+ xor $ff
+ and $f
+ ld e, a
+ swap e
+ or e
+ and d
+ ld [$ff25], a
+ ret
+
+Func_f4898: ; f4898 (3d:4898)
+ ld hl, $dddf
+ add hl, bc
+ ld a, [hl]
+ cp $0
+ jr z, .asm_f4902
+ ld hl, $dde3
+ add hl, bc
+ cp [hl]
+ jr z, .asm_f48ab
+ inc [hl]
+ jr .asm_f4902
+.asm_f48ab
+ ld hl, $ddd3
+ add hl, bc
+ ld e, [hl]
+ ld d, $0
+ ld hl, PointerTable_f4dde
+ add hl, de
+ add hl, de
+ ld a, [hli]
+ ld h, [hl]
+ ld l, a
+ push hl
+ ld hl, $dddb
+ add hl, bc
+ ld d, $0
+ ld e, [hl]
+ inc [hl]
+ pop hl
+ add hl, de
+ ld a, [hli]
+ cp $80
+ jr z, .asm_f48ee
+ ld hl, $dda5
+ add hl, bc
+ add hl, bc
+ ld e, [hl]
+ inc hl
+ ld d, [hl]
+ bit 7, a
+ jr nz, .asm_f48df
+ add e
+ ld e, a
+ ld a, $0
+ adc d
+ and $7
+ ld d, a
+ ret
+.asm_f48df
+ xor $ff
+ inc a
+ push bc
+ ld c, a
+ ld a, e
+ sub c
+ ld e, a
+ ld a, d
+ sbc b
+ and $7
+ ld d, a
+ pop bc
+ ret
+.asm_f48ee
+ push hl
+ ld hl, $dddb
+ add hl, bc
+ ld [hl], $0
+ pop hl
+ ld a, [hl]
+ cp $80
+ jr z, .asm_f48ab
+ ld hl, $ddd3
+ add hl, bc
+ ld [hl], a
+ jr .asm_f48ab
+.asm_f4902
+ ld hl, $dda5
+ add hl, bc
+ add hl, bc
+ ld e, [hl]
+ inc hl
+ ld d, [hl]
+ ret
+
+Func_f490b: ; f490b (3d:490b)
+ cp $0
+ jr nz, .asm_f492c
+ ld a, [$dddf]
+ cp $0
+ jr z, .asm_f4966
+ ld a, [$dd8c]
+ bit 0, a
+ jr nz, .asm_f4966
+ ld a, e
+ ld [$ff13], a
+ ld a, [$ff11]
+ and $c0
+ ld [$ff11], a
+ ld a, d
+ and $3f
+ ld [$ff14], a
+ ret
+.asm_f492c
+ cp $1
+ jr nz, .asm_f494b
+ ld a, [$dde0]
+ cp $0
+ jr z, .asm_f4966
+ ld a, [$dd8c]
+ bit 1, a
+ jr nz, .asm_f4966
+ ld a, e
+ ld [$ff18], a
+ ld a, [$ff16]
+ and $c0
+ ld [$ff16], a
+ ld a, d
+ ld [$ff19], a
+ ret
+.asm_f494b
+ cp $2
+ jr nz, .asm_f4966
+ ld a, [$dde1]
+ cp $0
+ jr z, .asm_f4966
+ ld a, [$dd8c]
+ bit 2, a
+ jr nz, .asm_f4966
+ ld a, e
+ ld [$ff1d], a
+ xor a
+ ld [$ff1b], a
+ ld a, d
+ ld [$ff1e], a
+.asm_f4966
+ ret
+
+Func_f4967: ; f4967 (3d:4967)
+ ld hl, $ddea
+ add hl, bc
+ ld a, [hl]
+ bit 7, a
+ jr nz, .asm_f4976
+ add e
+ ld e, a
+ ld a, d
+ adc b
+ ld d, a
+ ret
+.asm_f4976
+ xor $ff
+ ld h, a
+ ld a, e
+ sub h
+ ld e, a
+ ld a, d
+ sbc b
+ ld d, a
+ ret
+
+Func_f4980: ; f4980 (3d:4980)
+ ld a, [$dd8c]
+ ld d, a
+ bit 0, d
+ jr nz, .asm_f4990
+ ld a, $8
+ ld [$ff12], a
+ swap a
+ ld [$ff14], a
+.asm_f4990
+ bit 1, d
+ jr nz, .asm_f499c
+ swap a
+ ld [$ff17], a
+ swap a
+ ld [$ff19], a
+.asm_f499c
+ bit 3, d
+ jr nz, .asm_f49a8
+ swap a
+ ld [$ff21], a
+ swap a
+ ld [$ff23], a
+.asm_f49a8
+ bit 2, d
+ jr nz, .asm_f49b0
+ ld a, $0
+ ld [$ff1c], a
+.asm_f49b0
+ ret
+
+Func_f49b1: ; f49b1 (3d:49b1)
+ ld hl, $dd8d
+ xor a
+ add [hl]
+ inc hl
+ add [hl]
+ inc hl
+ add [hl]
+ inc hl
+ add [hl]
+ or a
+ ret nz
+ ld a, $80
+ ld [$dd80], a
+ ret
+
+Func_f49c4: ; f49c4 (3d:49c4)
+ di
+ call Func_f4980
+ call Func_f49dc
+ call Func_f414b
+ ei
+ ret
+
+Func_f49d0: ; f49d0 (3d:49d0)
+ di
+ call Func_f4980
+ call Func_f414b
+ call Func_f4b01
+ ei
+ ret
+
+Func_f49dc: ; f49dc (3d:49dc)
+ ld a, [$dd80]
+ ld [$de55], a
+ ld a, [$dd81]
+ ld [$de56], a
+ ld a, [$dd84]
+ ld [$de57], a
+ ld hl, $dd86
+ ld de, $de58
+ ld a, $4
+ call Func_f4c18
+ ld a, [$dd8a]
+ ld [$de5c], a
+ ld a, [$dd8b]
+ ld [$de5d], a
+ ld hl, $dd8d
+ ld de, $de5e
+ ld a, $4
+ call Func_f4c18
+ ld hl, $dd91
+ ld de, $de62
+ ld a, $4
+ call Func_f4c18
+ ld hl, $dd95
+ ld de, $de66
+ ld a, $8
+ call Func_f4c18
+ ld hl, $dd9d
+ ld de, $de6e
+ ld a, $8
+ call Func_f4c18
+ ld a, [$ddab]
+ ld [$de76], a
+ ld a, [$ddac]
+ ld [$de77], a
+ ld hl, $ddaf
+ ld de, $de78
+ ld a, $4
+ call Func_f4c18
+ ld hl, $ddb3
+ ld de, $de7c
+ ld a, $4
+ call Func_f4c18
+ ld hl, $ddb7
+ ld de, $de80
+ ld a, $4
+ call Func_f4c18
+ ld hl, $ddbb
+ ld de, $de84
+ ld a, $4
+ call Func_f4c18
+ ld hl, $ddbf
+ ld de, $de88
+ ld a, $4
+ call Func_f4c18
+ ld hl, $ddc3
+ ld de, $de8c
+ ld a, $4
+ call Func_f4c18
+ ld hl, $ddc7
+ ld de, $de90
+ ld a, $4
+ call Func_f4c18
+ ld hl, $ddcb
+ ld de, $de94
+ ld a, $4
+ call Func_f4c18
+ ld hl, $ddcf
+ ld de, $de98
+ ld a, $4
+ call Func_f4c18
+ ld hl, $ddd7
+ ld de, $de9c
+ ld a, $4
+ call Func_f4c18
+ ld hl, $dddf
+ ld de, $dea0
+ ld a, $4
+ call Func_f4c18
+ ld a, $0
+ ld [$dddb], a
+ ld [$dddc], a
+ ld [$dddd], a
+ ld [$ddde], a
+ ld hl, $dde7
+ ld de, $dea4
+ ld a, $3
+ call Func_f4c18
+ ld hl, $ddea
+ ld de, $dea7
+ ld a, $3
+ call Func_f4c18
+ ld hl, $dded
+ ld de, $deaa
+ ld a, $2
+ call Func_f4c18
+ ld a, $0
+ ld [$deac], a
+ ld hl, $ddf3
+ ld de, $dead
+ ld a, $8
+ call Func_f4c18
+ ld hl, $ddfb
+ ld de, $deb5
+ ld a, $30
+ call Func_f4c18
+ ret
+
+Func_f4b01: ; f4b01 (3d:4b01)
+ ld a, [$de55]
+ ld [$dd80], a
+ ld a, [$de56]
+ ld [$dd81], a
+ ld a, [$de57]
+ ld [$dd84], a
+ ld hl, $de58
+ ld de, $dd86
+ ld a, $4
+ call Func_f4c18
+ ld a, [$de5c]
+ ld [$dd8a], a
+ ld a, $1
+ ld [$dd8b], a
+ ld hl, $de5e
+ ld de, $dd8d
+ ld a, $4
+ call Func_f4c18
+ ld hl, $de62
+ ld de, $dd91
+ ld a, $4
+ call Func_f4c18
+ ld hl, $de66
+ ld de, $dd95
+ ld a, $8
+ call Func_f4c18
+ ld hl, $de6e
+ ld de, $dd9d
+ ld a, $8
+ call Func_f4c18
+ ld a, [$de76]
+ ld [$ddab], a
+ ld a, [$de77]
+ ld [$ddac], a
+ ld hl, $de78
+ ld de, $ddaf
+ ld a, $4
+ call Func_f4c18
+ ld hl, $de7c
+ ld de, $ddb3
+ ld a, $4
+ call Func_f4c18
+ ld hl, $de80
+ ld de, $ddb7
+ ld a, $4
+ call Func_f4c18
+ ld hl, $de84
+ ld de, $ddbb
+ ld a, $4
+ call Func_f4c18
+ ld hl, $de88
+ ld de, $ddbf
+ ld a, $4
+ call Func_f4c18
+ ld hl, $de8c
+ ld de, $ddc3
+ ld a, $4
+ call Func_f4c18
+ ld hl, $de90
+ ld de, $ddc7
+ ld a, $4
+ call Func_f4c18
+ ld hl, $de94
+ ld de, $ddcb
+ ld a, $4
+ call Func_f4c18
+ ld hl, $de98
+ ld de, $ddcf
+ ld a, $4
+ call Func_f4c18
+ ld hl, $de9c
+ ld de, $ddd7
+ ld a, $4
+ call Func_f4c18
+ ld hl, $dea0
+ ld de, $dddf
+ ld a, $4
+ call Func_f4c18
+ ld hl, $dea4
+ ld de, $dde7
+ ld a, $3
+ call Func_f4c18
+ ld hl, $dea7
+ ld de, $ddea
+ ld a, $3
+ call Func_f4c18
+ ld hl, $deaa
+ ld de, $dded
+ ld a, $2
+ call Func_f4c18
+ ld a, [$deac]
+ ld [$ddef], a
+ ld hl, $dead
+ ld de, $ddf3
+ ld a, $8
+ call Func_f4c18
+ ld hl, $deb5
+ ld de, $ddfb
+ ld a, $30
+ call Func_f4c18
+ ret
+
+; copies a bytes from hl to de
+Func_f4c18: ; f4c18 (3d:4c18)
+ ld c, a
+.asm_f4c19
+ ld a, [hli]
+ ld [de], a
+ inc de
+ dec c
+ jr nz, .asm_f4c19
+ ret
+
+Unknown_f4c20: ; f4c20 (3d:4c20)
+INCBIN "baserom.gbc",$f4c20,$f4c28 - $f4c20
+
+Unknown_f4c28: ; f4c28 (3d:4c28)
+INCBIN "baserom.gbc",$f4c28,$f4cda - $f4c28
+
+PointerTable_f4cda: ; f4cda (3d:4cda)
+ dw Unknown_f4ce4
+ dw Unknown_f4cf4
+ dw Unknown_f4d04
+ dw Unknown_f4d14
+ dw Unknown_f4d24
+
+Unknown_f4ce4: ; f4ce4 (3d:4ce4)
+INCBIN "baserom.gbc",$f4ce4,$f4cf4 - $f4ce4
+
+Unknown_f4cf4: ; f4cf4 (3d:4cf4)
+INCBIN "baserom.gbc",$f4cf4,$f4d04 - $f4cf4
+
+Unknown_f4d04: ; f4d04 (3d:4d04)
+INCBIN "baserom.gbc",$f4d04,$f4d14 - $f4d04
+
+Unknown_f4d14: ; f4d14 (3d:4d14)
+INCBIN "baserom.gbc",$f4d14,$f4d24 - $f4d14
+
+Unknown_f4d24: ; f4d24 (3d:4d24)
+INCBIN "baserom.gbc",$f4d24,$f4d34 - $f4d24
+
+PointerTable_f4d34: ; f4d34 (3d:4d34)
+ dw Unknown_f4d53
+ dw Unknown_f4d4c
+ dw Unknown_f4d5a
+ dw Unknown_f4d4c
+ dw Unknown_f4d64
+ dw Unknown_f4d4c
+ dw Unknown_f4d6d
+ dw Unknown_f4d4c
+ dw Unknown_f4d76
+ dw Unknown_f4d4c
+ dw Unknown_f4d4c
+ dw Unknown_f4daa
+
+Unknown_f4d4c: ; f4d4c (3d:4d4c)
+INCBIN "baserom.gbc",$f4d4c,$f4d53 - $f4d4c
+
+Unknown_f4d53: ; f4d53 (3d:4d53)
+INCBIN "baserom.gbc",$f4d53,$f4d5a - $f4d53
+
+Unknown_f4d5a: ; f4d5a (3d:4d5a)
+INCBIN "baserom.gbc",$f4d5a,$f4d64 - $f4d5a
+
+Unknown_f4d64: ; f4d64 (3d:4d64)
+INCBIN "baserom.gbc",$f4d64,$f4d6d - $f4d64
+
+Unknown_f4d6d: ; f4d6d (3d:4d6d)
+INCBIN "baserom.gbc",$f4d6d,$f4d76 - $f4d6d
+
+Unknown_f4d76: ; f4d76 (3d:4d76)
+INCBIN "baserom.gbc",$f4d76,$f4daa - $f4d76
+
+Unknown_f4daa: ; f4daa (3d:4daa)
+INCBIN "baserom.gbc",$f4daa,$f4dde - $f4daa
+
+PointerTable_f4dde: ; f4dde (3d:4dde)
+ dw Unknown_f4df4
+ dw Unknown_f4df7
+ dw Unknown_f4e01
+ dw Unknown_f4e0f
+ dw Unknown_f4e19
+ dw Unknown_f4e27
+ dw Unknown_f4e35
+ dw Unknown_f4e47
+ dw Unknown_f4e5b
+ dw Unknown_f4e65
+ dw Unknown_f4e73
+
+Unknown_f4df4: ; f4df4 (3d:4df4)
+INCBIN "baserom.gbc",$f4df4,$f4df7 - $f4df4
+
+Unknown_f4df7: ; f4df7 (3d:4df7)
+INCBIN "baserom.gbc",$f4df7,$f4e01 - $f4df7
+
+Unknown_f4e01: ; f4e01 (3d:4e01)
+INCBIN "baserom.gbc",$f4e01,$f4e0f - $f4e01
+
+Unknown_f4e0f: ; f4e0f (3d:4e0f)
+INCBIN "baserom.gbc",$f4e0f,$f4e19 - $f4e0f
+
+Unknown_f4e19: ; f4e19 (3d:4e19)
+INCBIN "baserom.gbc",$f4e19,$f4e27 - $f4e19
+
+Unknown_f4e27: ; f4e27 (3d:4e27)
+INCBIN "baserom.gbc",$f4e27,$f4e35 - $f4e27
+
+Unknown_f4e35: ; f4e35 (3d:4e35)
+INCBIN "baserom.gbc",$f4e35,$f4e47 - $f4e35
+
+Unknown_f4e47: ; f4e47 (3d:4e47)
+INCBIN "baserom.gbc",$f4e47,$f4e5b - $f4e47
+
+Unknown_f4e5b: ; f4e5b (3d:4e5b)
+INCBIN "baserom.gbc",$f4e5b,$f4e65 - $f4e5b
+
+Unknown_f4e65: ; f4e65 (3d:4e65)
+INCBIN "baserom.gbc",$f4e65,$f4e73 - $f4e65
+
+Unknown_f4e73: ; f4e73 (3d:4e73)
+INCBIN "baserom.gbc",$f4e73,$f4ee5 - $f4e73
+
+NumberOfSongs1: ; 4fee5 (3d:4ee5)
+ db $1f
SongBanks1: ; f4ee6 (3d:4ee6)
db BANK(Music_Stop)
@@ -1,4 +1,1957 @@ -INCBIN "baserom.gbc",$f8000,$f8ee6 - $f8000
+Func_f8000: ; f8000 (3e:4000)
+ jp Func_f807d
+
+Func_f8003: ; f8003 (3e:4003)
+ jp Func_f80e9
+
+Func_f8006: ; f8006 (3e:4006)
+ jp Func_f8021
+
+Func_f8009: ; f8009 (3e:4009)
+ jp Func_f802d
+
+Func_f800c: ; f800c (3e:400c)
+ jp Func_f804e
+
+Func_f800f: ; f800f (3e:400f)
+ jp Func_f8052
+
+Func_f8012: ; f8012 (3e:4012)
+ jp Func_f805c
+
+Func_f8015: ; f8015 (3e:4015)
+ jp Func_f8066
+
+Func_f8018: ; f8018 (3e:4018)
+ jp Func_f806f
+
+Func_f801b: ; f801b (3e:401b)
+ jp Func_f89c4
+
+Func_f801e: ; f801e (3e:401e)
+ jp Func_f89d0
+
+Func_f8021: ; f8021 (3e:4021)
+ push hl
+ ld hl, NumberOfSongs2
+ cp [hl]
+ jr nc, .asm_f802b
+ ld [$dd80], a
+.asm_f802b
+ pop hl
+ ret
+
+Func_f802d: ; f802d (3e:402d)
+ push bc
+ push hl
+ ld b, $0
+ ld c, a
+ or a
+ jr z, .asm_f8043
+ ld hl, $4e85
+ add hl, bc
+ ld b, [hl]
+ ld a, [$dd83]
+ or a
+ jr z, .asm_f8043
+ cp b
+ jr c, .asm_f804b
+.asm_f8043
+ ld a, b
+ ld [$dd83], a
+ ld a, c
+ ld [$dd82], a
+.asm_f804b
+ pop hl
+ pop bc
+ ret
+
+Func_f804e: ; f804e (3e:404e)
+ ld [$ddf0], a
+ ret
+
+Func_f8052: ; f8052 (3e:4052)
+ ld a, [$dd80]
+ cp $80
+ ld a, $1
+ ret nz
+ xor a
+ ret
+
+Func_f805c: ; f805c (3e:405c)
+ ld a, [$dd82]
+ cp $80
+ ld a, $1
+ ret nz
+ xor a
+ ret
+
+Func_f8066: ; f8066 (3e:4066)
+ ld a, [$ddf2]
+ xor $1
+ ld [$ddf2], a
+ ret
+
+Func_f806f: ; f806f (3e:406f)
+ push bc
+ push af
+ and $7
+ ld b, a
+ swap b
+ or b
+ ld [$ddf1], a
+ pop af
+ pop bc
+ ret
+
+Func_f807d: ; f807d (3e:407d)
+ xor a
+ ld [$ff26], a
+ ld a, $80
+ ld [$ff26], a
+ ld a, $77
+ ld [$ff24], a
+ ld a, $ff
+ ld [$ff25], a
+ ld a, $3d
+ ld [$dd81], a
+ ld a, $80
+ ld [$dd80], a
+ ld [$dd82], a
+ ld a, $77
+ ld [$ddf1], a
+ xor a
+ ld [$dd8c], a
+ ld [$de53], a
+ ld [$dd8b], a
+ ld [$ddef], a
+ ld [$ddf0], a
+ ld [$ddf2], a
+ dec a
+ ld [$dd84], a
+ ld de, $0001
+ ld bc, $0000
+.asm_f80bb
+ ld hl, $dd8d
+ add hl, bc
+ ld [hl], d
+ ld hl, $dd91
+ add hl, bc
+ ld [hl], d
+ ld hl, $ddb3
+ add hl, bc
+ ld [hl], d
+ ld hl, $ddcb
+ add hl, bc
+ ld [hl], d
+ ld hl, $ddbf
+ add hl, bc
+ ld [hl], d
+ inc c
+ ld a, c
+ cp $4
+ jr nz, .asm_f80bb
+ ld hl, Unknown_f8c20
+ ld bc, $ddf3
+ ld d, $8
+.asm_f80e2
+ ld a, [hli]
+ ld [bc], a
+ inc bc
+ dec d
+ jr nz, .asm_f80e2
+ ret
+
+Func_f80e9: ; f80e9 (3e:40e9)
+ call Func_f82a4
+ call Func_f811c
+ ld hl, $4003
+ call Bankswitch3dTo3f
+ ld a, [$dd81]
+ ld [$ff80], a
+ ld [$2000], a
+ ld a, [$ddf2]
+ cp $0
+ jr z, .asm_f8109
+ call Func_f8980
+ jr .asm_f8115
+.asm_f8109
+ call Func_f82a5
+ call Func_f830a
+ call Func_f836f
+ call Func_f83ce
+.asm_f8115
+ call Func_f8866
+ call Func_f89b1
+ ret
+
+Func_f811c: ; f811c (3e:411c)
+ ld a, [$dd80]
+ rla
+ jr c, .asm_f8133
+ call Func_f814b
+ ld a, [$dd80]
+ call Func_f818c
+ ld a, [$dd80]
+ or $80
+ ld [$dd80], a
+.asm_f8133
+ ld a, [$dd82]
+ rla
+ jr c, .asm_f814a
+ ld a, [$dd82]
+ ld hl, $4000
+ call Bankswitch3dTo3f
+ ld a, [$dd82]
+ or $80
+ ld [$dd82], a
+.asm_f814a
+ ret
+
+Func_f814b: ; f814b (3e:414b)
+ ld a, [$dd8c]
+ ld d, a
+ xor a
+ ld [$dd8d], a
+ bit 0, d
+ jr nz, .asm_f815f
+ ld a, $8
+ ld [$ff12], a
+ swap a
+ ld [$ff14], a
+.asm_f815f
+ xor a
+ ld [$dd8e], a
+ bit 1, d
+ jr nz, .asm_f816f
+ ld a, $8
+ ld [$ff17], a
+ swap a
+ ld [$ff19], a
+.asm_f816f
+ xor a
+ ld [$dd90], a
+ bit 3, d
+ jr nz, .asm_f817f
+ ld a, $8
+ ld [$ff21], a
+ swap a
+ ld [$ff23], a
+.asm_f817f
+ xor a
+ ld [$dd8f], a
+ bit 2, d
+ jr nz, .asm_f818b
+ ld a, $0
+ ld [$ff1c], a
+.asm_f818b
+ ret
+
+Func_f818c: ; f818c (3e:418c)
+ push af
+ ld c, a
+ ld b, $0
+ ld hl, SongBanks1
+ add hl, bc
+ ld a, [hl]
+ ld [$dd81], a
+ ld [$ff80], a
+ ld [$2000], a
+ pop af
+ add a
+ ld c, a
+ ld b, $0
+ ld hl, SongHeaderPointers1
+ add hl, bc
+ ld e, [hl]
+ inc hl
+ ld h, [hl]
+ ld l, e
+ ld e, [hl]
+ inc hl
+ ld b, h
+ ld c, l
+ rr e
+ jr nc, .asm_f81eb
+ ld a, [bc]
+ inc bc
+ ld [$dd95], a
+ ld [$dd9d], a
+ ld a, [bc]
+ inc bc
+ ld [$dd96], a
+ ld [$dd9e], a
+ ld a, $1
+ ld [$ddbb], a
+ ld [$dd8d], a
+ xor a
+ ld [$dd91], a
+ ld [$ddea], a
+ ld [$ddbf], a
+ ld [$dddf], a
+ ld [$ddcb], a
+ ld a, [Unknown_f8c20]
+ ld [$ddf3], a
+ ld a, [Unknown_f8c20 + 1]
+ ld [$ddf4], a
+ ld a, $8
+ ld [$ddc7], a
+.asm_f81eb
+ rr e
+ jr nc, .asm_f8228
+ ld a, [bc]
+ inc bc
+ ld [$dd97], a
+ ld [$dd9f], a
+ ld a, [bc]
+ inc bc
+ ld [$dd98], a
+ ld [$dda0], a
+ ld a, $1
+ ld [$ddbc], a
+ ld [$dd8e], a
+ xor a
+ ld [$dd92], a
+ ld [$ddeb], a
+ ld [$ddc0], a
+ ld [$dde0], a
+ ld [$ddcc], a
+ ld a, [Unknown_f8c20 + 2]
+ ld [$ddf5], a
+ ld a, [Unknown_f8c20 + 3]
+ ld [$ddf6], a
+ ld a, $8
+ ld [$ddc8], a
+.asm_f8228
+ rr e
+ jr nc, .asm_f8265
+ ld a, [bc]
+ inc bc
+ ld [$dd99], a
+ ld [$dda1], a
+ ld a, [bc]
+ inc bc
+ ld [$dd9a], a
+ ld [$dda2], a
+ ld a, $1
+ ld [$ddbd], a
+ ld [$dd8f], a
+ xor a
+ ld [$dd93], a
+ ld [$ddec], a
+ ld [$ddc1], a
+ ld [$dde1], a
+ ld [$ddcd], a
+ ld a, [Unknown_f8c20 + 4]
+ ld [$ddf7], a
+ ld a, [Unknown_f8c20 + 5]
+ ld [$ddf8], a
+ ld a, $40
+ ld [$ddc9], a
+.asm_f8265
+ rr e
+ jr nc, .asm_f829f
+ ld a, [bc]
+ inc bc
+ ld [$dd9b], a
+ ld [$dda3], a
+ ld a, [bc]
+ inc bc
+ ld [$dd9c], a
+ ld [$dda4], a
+ ld a, $1
+ ld [$ddbe], a
+ ld [$dd90], a
+ xor a
+ ld [$dd94], a
+ ld [$ddc2], a
+ ld [$dde2], a
+ ld [$ddce], a
+ ld a, [Unknown_f8c20 + 6]
+ ld [$ddf9], a
+ ld a, [Unknown_f8c20 + 7]
+ ld [$ddfa], a
+ ld a, $40
+ ld [$ddca], a
+.asm_f829f
+ xor a
+ ld [$ddf2], a
+ ret
+
+Func_f82a4: ; f82a4 (3e:42a4)
+ ret
+
+Func_f82a5: ; f82a5 (3e:42a5)
+ ld a, [$dd8d]
+ or a
+ jr z, .asm_f82fa
+ ld a, [$ddb7]
+ cp $0
+ jr z, .asm_f82d4
+ ld a, [$ddc3]
+ dec a
+ ld [$ddc3], a
+ jr nz, .asm_f82d4
+ ld a, [$ddbb]
+ cp $1
+ jr z, .asm_f82d4
+ ld a, [$dd8c]
+ bit 0, a
+ jr nz, .asm_f82d4
+ ld hl, $ff12
+ ld a, [$ddc7]
+ ld [hli], a
+ inc hl
+ ld a, $80
+ ld [hl], a
+.asm_f82d4
+ ld a, [$ddbb]
+ dec a
+ ld [$ddbb], a
+ jr nz, .asm_f82f4
+ ld a, [$dd96]
+ ld h, a
+ ld a, [$dd95]
+ ld l, a
+ ld bc, $0000
+ call Func_f8414
+ ld a, [$dd8d]
+ or a
+ jr z, .asm_f82fa
+ call Func_f8714
+.asm_f82f4
+ ld a, $0
+ call Func_f885a
+ ret
+.asm_f82fa
+ ld a, [$dd8c]
+ bit 0, a
+ jr nz, .asm_f8309
+ ld a, $8
+ ld [$ff12], a
+ swap a
+ ld [$ff14], a
+.asm_f8309
+ ret
+
+Func_f830a: ; f830a (3e:430a)
+ ld a, [$dd8e]
+ or a
+ jr z, .asm_f835f
+ ld a, [$ddb8]
+ cp $0
+ jr z, .asm_f8339
+ ld a, [$ddc4]
+ dec a
+ ld [$ddc4], a
+ jr nz, .asm_f8339
+ ld a, [$ddbc]
+ cp $1
+ jr z, .asm_f8339
+ ld a, [$dd8c]
+ bit 1, a
+ jr nz, .asm_f8339
+ ld hl, $ff17
+ ld a, [$ddc8]
+ ld [hli], a
+ inc hl
+ ld a, $80
+ ld [hl], a
+.asm_f8339
+ ld a, [$ddbc]
+ dec a
+ ld [$ddbc], a
+ jr nz, .asm_f8359
+ ld a, [$dd98]
+ ld h, a
+ ld a, [$dd97]
+ ld l, a
+ ld bc, $0001
+ call Func_f8414
+ ld a, [$dd8e]
+ or a
+ jr z, .asm_f835f
+ call Func_f875a
+.asm_f8359
+ ld a, $1
+ call Func_f885a
+ ret
+.asm_f835f
+ ld a, [$dd8c]
+ bit 1, a
+ jr nz, .asm_f836e
+ ld a, $8
+ ld [$ff17], a
+ swap a
+ ld [$ff19], a
+.asm_f836e
+ ret
+
+Func_f836f: ; f836f (3e:436f)
+ ld a, [$dd8f]
+ or a
+ jr z, .asm_f83be
+ ld a, [$ddb9]
+ cp $0
+ jr z, .asm_f8398
+ ld a, [$ddc5]
+ dec a
+ ld [$ddc5], a
+ jr nz, .asm_f8398
+ ld a, [$dd8c]
+ bit 2, a
+ jr nz, .asm_f8398
+ ld a, [$ddbd]
+ cp $1
+ jr z, .asm_f8398
+ ld a, [$ddc9]
+ ld [$ff1c], a
+.asm_f8398
+ ld a, [$ddbd]
+ dec a
+ ld [$ddbd], a
+ jr nz, .asm_f83b8
+ ld a, [$dd9a]
+ ld h, a
+ ld a, [$dd99]
+ ld l, a
+ ld bc, $0002
+ call Func_f8414
+ ld a, [$dd8f]
+ or a
+ jr z, .asm_f83be
+ call Func_f879c
+.asm_f83b8
+ ld a, $2
+ call Func_f885a
+ ret
+.asm_f83be
+ ld a, [$dd8c]
+ bit 2, a
+ jr nz, .asm_f83cd
+ ld a, $0
+ ld [$ff1c], a
+ ld a, $80
+ ld [$ff1e], a
+.asm_f83cd
+ ret
+
+Func_f83ce: ; f83ce (3e:43ce)
+ ld a, [$dd90]
+ or a
+ jr z, .asm_f8400
+ ld a, [$ddbe]
+ dec a
+ ld [$ddbe], a
+ jr nz, .asm_f83f6
+ ld a, [$dd9c]
+ ld h, a
+ ld a, [$dd9b]
+ ld l, a
+ ld bc, $0003
+ call Func_f8414
+ ld a, [$dd90]
+ or a
+ jr z, .asm_f8400
+ call Func_f880a
+ jr .asm_f8413
+.asm_f83f6
+ ld a, [$ddef]
+ or a
+ jr z, .asm_f8413
+ call Func_f8839
+ ret
+.asm_f8400
+ ld a, [$dd8c]
+ bit 3, a
+ jr nz, .asm_f8413
+ xor a
+ ld [$ddef], a
+ ld a, $8
+ ld [$ff21], a
+ swap a
+ ld [$ff23], a
+.asm_f8413
+ ret
+
+Func_f8414: ; f8414 (3e:4414)
+ ld a, [hli]
+ push hl
+ push af
+ cp $d0
+ jr c, .asm_f848c
+ sub $d0
+ add a
+ ld e, a
+ ld d, $0
+ ld hl, .data_f842c
+ add hl, de
+ ld e, [hl]
+ inc hl
+ ld d, [hl]
+ ld h, d
+ ld l, e
+ pop af
+ jp [hl]
+
+.data_f842c
+ dw Func_f8598
+ dw Func_f85a3
+ dw Func_f85a3
+ dw Func_f85a3
+ dw Func_f85a3
+ dw Func_f85a3
+ dw Func_f85a3
+ dw Func_f85bb
+ dw Func_f85c3
+ dw Func_f85cb
+ dw Func_f86f4
+ dw Func_f86f4
+ dw Func_f85d4
+ dw Func_f85ef
+ dw Func_f85fd
+ dw Func_f8609
+ dw Func_f861e
+ dw Func_f8638
+ dw Func_f863f
+ dw Func_f8656
+ dw Func_f8667
+ dw Func_f8674
+ dw Func_f8683
+ dw Func_f8690
+ dw Func_f86a0
+ dw Func_f86ad
+ dw Func_f86ba
+ dw Func_f86cc
+ dw Func_f86d9
+ dw Func_f86e6
+ dw Func_f86f4
+ dw Func_f86f4
+ dw Func_f86f4
+ dw Func_f86f4
+ dw Func_f86f4
+ dw Func_f86f4
+ dw Func_f86f4
+ dw Func_f86f4
+ dw Func_f86f4
+ dw Func_f86f4
+ dw Func_f86f4
+ dw Func_f86f4
+ dw Func_f86f4
+ dw Func_f86f4
+ dw Func_f86f4
+ dw Func_f86f4
+ dw Func_f86f4
+ dw Func_f86f4
+
+.asm_f848c
+ push af
+ ld a, [hl]
+ ld e, a
+ ld hl, $dd91
+ add hl, bc
+ ld a, [hl]
+ cp $80
+ jr z, .asm_f84b0
+ ld [hl], $1
+ xor a
+ ld hl, $dddb
+ add hl, bc
+ ld [hl], a
+ ld hl, $dde3
+ add hl, bc
+ ld [hl], a
+ inc [hl]
+ ld hl, $ddd7
+ add hl, bc
+ ld a, [hl]
+ ld hl, $ddd3
+ add hl, bc
+ ld [hl], a
+.asm_f84b0
+ pop af
+ push de
+ ld hl, $ddcf
+ add hl, bc
+ ld d, [hl]
+ and $f
+ inc a
+ cp d
+ jr nc, .asm_f84c0
+ ld e, a
+ ld a, d
+ ld d, e
+.asm_f84c0
+ ld e, a
+.asm_f84c1
+ dec d
+ jr z, .asm_f84c7
+ add e
+ jr .asm_f84c1
+.asm_f84c7
+ ld hl, $ddbb
+ add hl, bc
+ ld [hl], a
+ pop de
+ ld d, a
+ ld a, e
+ cp $d9
+ ld a, d
+ jr z, .asm_f84fb
+ ld e, a
+ ld hl, $ddbf
+ add hl, bc
+ ld a, [hl]
+ cp $8
+ ld d, a
+ ld a, e
+ jr z, .asm_f84fb
+ push hl
+ push bc
+ ld b, $0
+ ld c, a
+ ld hl, $0000
+.asm_f84e8
+ add hl, bc
+ dec d
+ jr nz, .asm_f84e8
+ srl h
+ rr l
+ srl h
+ rr l
+ srl h
+ rr l
+ ld a, l
+ pop bc
+ pop hl
+.asm_f84fb
+ ld hl, $ddc3
+ add hl, bc
+ ld [hl], a
+ pop af
+ and $f0
+ ld hl, $ddb7
+ add hl, bc
+ ld [hl], a
+ or a
+ jr nz, .asm_f850e
+ jp .asm_f858e
+.asm_f850e
+ swap a
+ dec a
+ ld h, a
+ ld a, $3
+ cp c
+ ld a, h
+ jr z, .asm_f851a
+ jr .asm_f8564
+.asm_f851a
+ push af
+ ld hl, $ddaf
+ add hl, bc
+ ld a, [hl]
+ ld d, a
+ sla a
+ add d
+ sla a
+ sla a
+ sla a
+ ld e, a
+ pop af
+ ld hl, PointerTable_f8d34
+ add a
+ ld d, c
+ ld c, a
+ add hl, bc
+ ld c, e
+ add hl, bc
+ ld c, d
+ ld a, [hli]
+ ld h, [hl]
+ ld l, a
+ ld a, [hli]
+ ld d, a
+ ld a, [$dd84]
+ and $77
+ or d
+ ld [$dd84], a
+ ld de, $ddab
+ ld a, [hli]
+ ld [de], a
+ inc de
+ ld a, [hli]
+ ld [de], a
+ inc de
+ ld b, [hl]
+ inc hl
+ ld a, [hli]
+ ld [de], a
+ inc de
+ ld a, b
+ ld [de], a
+ ld b, $0
+ ld a, l
+ ld d, h
+ ld hl, $dded
+ ld [hli], a
+ ld [hl], d
+ ld a, $1
+ ld [$ddef], a
+ jr .asm_f858e
+.asm_f8564
+ ld hl, $dda5
+ add hl, bc
+ add hl, bc
+ push hl
+ ld hl, $ddaf
+ add hl, bc
+ ld e, [hl]
+ ld d, $0
+ ld hl, Unknown_f8c28
+ add hl, de
+ add a
+ ld e, [hl]
+ add e
+ ld hl, $ddcb
+ add hl, bc
+ ld e, [hl]
+ add e
+ add e
+ ld e, a
+ ld hl, $4c30
+ add hl, de
+ ld a, [hli]
+ ld e, a
+ ld d, [hl]
+ call Func_f8967
+ pop hl
+ ld a, e
+ ld [hli], a
+ ld [hl], d
+.asm_f858e
+ pop de
+ ld hl, $dd95
+ add hl, bc
+ add hl, bc
+ ld [hl], e
+ inc hl
+ ld [hl], d
+ ret
+
+Func_f8598: ; f8598 (3e:4598)
+ pop hl
+ ld a, [hli]
+ push hl
+ ld hl, $ddcf
+ add hl, bc
+ ld [hl], a
+ jp Func_f8710
+
+Func_f85a3: ; f85a3 (3e:45a3)
+ and $7
+ dec a
+ ld hl, $ddaf
+ add hl, bc
+ push af
+ ld a, c
+ cp $2
+ jr nz, .asm_f85b6
+ pop af
+ inc a
+ ld [hl], a
+ jp Func_f8710
+.asm_f85b6
+ pop af
+ ld [hl], a
+ jp Func_f8710
+
+Func_f85bb: ; f85bb (3e:45bb)
+ ld hl, $ddaf
+ add hl, bc
+ inc [hl]
+ jp Func_f8710
+
+Func_f85c3: ; f85c3 (3e:45c3)
+ ld hl, $ddaf
+ add hl, bc
+ dec [hl]
+ jp Func_f8710
+
+Func_f85cb: ; f85cb (3e:45cb)
+ ld hl, $dd91
+ add hl, bc
+ ld [hl], $80
+ jp Func_f8710
+
+Func_f85d4: ; f85d4 (3e:45d4)
+ pop hl
+ ld a, [hli]
+ push hl
+ push bc
+ inc c
+ ld e, $ee
+.asm_f85db
+ dec c
+ jr z, .asm_f85e3
+ rlca
+ rlc e
+ jr .asm_f85db
+.asm_f85e3
+ ld d, a
+ ld hl, $dd84
+ ld a, [hl]
+ and e
+ or d
+ ld [hl], a
+ pop bc
+ jp Func_f8710
+
+Func_f85ef: ; f85ef (3e:45ef)
+ pop de
+ push de
+ dec de
+ ld hl, $dd9d
+ add hl, bc
+ add hl, bc
+ ld [hl], e
+ inc hl
+ ld [hl], d
+ jp Func_f8710
+
+Func_f85fd: ; f85fd (3e:45fd)
+ pop hl
+ ld hl, $dd9d
+ add hl, bc
+ add hl, bc
+ ld a, [hli]
+ ld h, [hl]
+ ld l, a
+ jp Func_f8414
+
+Func_f8609: ; f8609 (3e:4609)
+ pop de
+ ld a, [de]
+ inc de
+ push af
+ call Func_f86fc
+ ld [hl], e
+ inc hl
+ ld [hl], d
+ inc hl
+ pop af
+ ld [hl], a
+ inc hl
+ push de
+ call Func_f8705
+ jp Func_f8710
+
+Func_f861e: ; f861e (3e:461e)
+ call Func_f86fc
+ dec hl
+ ld a, [hl]
+ dec a
+ jr z, .asm_f8630
+ ld [hld], a
+ ld d, [hl]
+ dec hl
+ ld e, [hl]
+ pop hl
+ ld h, d
+ ld l, e
+ jp Func_f8414
+.asm_f8630
+ dec hl
+ dec hl
+ call Func_f8705
+ jp Func_f8710
+
+Func_f8638: ; f8638 (3e:4638)
+ pop hl
+ ld a, [hli]
+ ld h, [hl]
+ ld l, a
+ jp Func_f8414
+
+Func_f863f: ; f863f (3e:463f)
+ call Func_f86fc
+ pop de
+ ld a, e
+ ld [hli], a
+ ld a, d
+ ld [hli], a
+ ld a, [de]
+ ld b, a
+ inc de
+ ld a, [de]
+ ld d, a
+ ld e, b
+ ld b, $0
+ push de
+ call Func_f8705
+ jp Func_f8710
+
+Func_f8656: ; f8656 (3e:4656)
+ pop de
+ call Func_f86fc
+ dec hl
+ ld a, [hld]
+ ld e, [hl]
+ ld d, a
+ inc de
+ inc de
+ push de
+ call Func_f8705
+ jp Func_f8710
+
+Func_f8667: ; f8667 (3e:4667)
+ pop de
+ ld a, [de]
+ inc de
+ ld hl, $ddea
+ add hl, bc
+ ld [hl], a
+ ld h, d
+ ld l, e
+ jp Func_f8414
+
+Func_f8674: ; f8674 (3e:4674)
+ pop de
+ ld a, [de]
+ and $c0
+ inc de
+ ld hl, $dd86
+ add hl, bc
+ ld [hl], a
+ ld h, d
+ ld l, e
+ jp Func_f8414
+
+Func_f8683: ; f8683 (3e:4683)
+ pop de
+ ld a, [de]
+ inc de
+ ld hl, $dde7
+ add hl, bc
+ ld [hl], a
+ ld h, d
+ ld l, e
+ jp Func_f8414
+
+Func_f8690: ; f8690 (3e:4690)
+ pop de
+ ld a, [de]
+ inc de
+ ld [$dd8a], a
+ ld a, $1
+ ld [$dd8b], a
+ ld h, d
+ ld l, e
+ jp Func_f8414
+
+Func_f86a0: ; f86a0 (3e:46a0)
+ pop de
+ ld a, [de]
+ inc de
+ ld hl, $ddbf
+ add hl, bc
+ ld [hl], a
+ ld h, d
+ ld l, e
+ jp Func_f8414
+
+Func_f86ad: ; f86ad (3e:46ad)
+ pop de
+ ld a, [de]
+ inc de
+ ld hl, $ddc7
+ add hl, bc
+ ld [hl], a
+ ld h, d
+ ld l, e
+ jp Func_f8414
+
+Func_f86ba: ; f86ba (3e:46ba)
+ pop de
+ ld a, [de]
+ inc de
+ ld hl, $ddd3
+ add hl, bc
+ ld [hl], a
+ ld hl, $ddd7
+ add hl, bc
+ ld [hl], a
+ ld h, d
+ ld l, e
+ jp Func_f8414
+
+Func_f86cc: ; f86cc (3e:46cc)
+ pop de
+ ld a, [de]
+ inc de
+ ld hl, $dddf
+ add hl, bc
+ ld [hl], a
+ ld h, d
+ ld l, e
+ jp Func_f8414
+
+Func_f86d9: ; f86d9 (3e:46d9)
+ pop de
+ ld a, [de]
+ inc de
+ ld hl, $ddcb
+ add hl, bc
+ ld [hl], a
+ ld h, d
+ ld l, e
+ jp Func_f8414
+
+Func_f86e6: ; f86e6 (3e:46e6)
+ pop de
+ ld a, [de]
+ inc de
+ ld hl, $ddcb
+ add hl, bc
+ add [hl]
+ ld [hl], a
+ ld h, d
+ ld l, e
+ jp Func_f8414
+
+Func_f86f4: ; f86f4 (3e:46f4)
+ ld hl, $dd8d
+ add hl, bc
+ ld [hl], $0
+ pop hl
+ ret
+
+Func_f86fc: ; f86fc (3e:46fc)
+ ld hl, $ddf3
+ add hl, bc
+ add hl, bc
+ ld a, [hli]
+ ld h, [hl]
+ ld l, a
+ ret
+
+Func_f8705: ; f8705 (3e:4705)
+ ld d, h
+ ld e, l
+ ld hl, $ddf3
+ add hl, bc
+ add hl, bc
+ ld [hl], e
+ inc hl
+ ld [hl], d
+ ret
+
+Func_f8710: ; f8710 (3e:4710)
+ pop hl
+ jp Func_f8414
+
+Func_f8714: ; f8714 (3e:4714)
+ ld a, [$dd8c]
+ bit 0, a
+ jr nz, .asm_f8749
+ ld a, [$ddb7]
+ cp $0
+ jr z, .asm_f874a
+ ld d, $0
+ ld hl, $dd91
+ ld a, [hl]
+ cp $80
+ jr z, .asm_f8733
+ ld a, [$dde7]
+ ld [$ff12], a
+ ld d, $80
+.asm_f8733
+ ld [hl], $2
+ ld a, $8
+ ld [$ff10], a
+ ld a, [$dd86]
+ ld [$ff11], a
+ ld a, [$dda5]
+ ld [$ff13], a
+ ld a, [$dda6]
+ or d
+ ld [$ff14], a
+.asm_f8749
+ ret
+.asm_f874a
+ ld hl, $dd91
+ ld [hl], $0
+ ld hl, $ff12
+ ld a, $8
+ ld [hli], a
+ inc hl
+ swap a
+ ld [hl], a
+ ret
+
+Func_f875a: ; f875a (3e:475a)
+ ld a, [$dd8c]
+ bit 1, a
+ jr nz, .asm_f878b
+ ld a, [$ddb8]
+ cp $0
+ jr z, .asm_f878c
+ ld d, $0
+ ld hl, $dd92
+ ld a, [hl]
+ cp $80
+ jr z, .asm_f8779
+ ld a, [$dde8]
+ ld [$ff17], a
+ ld d, $80
+.asm_f8779
+ ld [hl], $2
+ ld a, [$dd87]
+ ld [$ff16], a
+ ld a, [$dda7]
+ ld [$ff18], a
+ ld a, [$dda8]
+ or d
+ ld [$ff19], a
+.asm_f878b
+ ret
+.asm_f878c
+ ld hl, $dd92
+ ld [hl], $0
+ ld hl, $ff17
+ ld a, $8
+ ld [hli], a
+ inc hl
+ swap a
+ ld [hl], a
+ ret
+
+Func_f879c: ; f879c (3e:479c)
+ ld a, [$dd8c]
+ bit 2, a
+ jr nz, .asm_f87e0
+ ld d, $0
+ ld a, [$dd8b]
+ or a
+ jr z, .asm_f87b3
+ xor a
+ ld [$ff1a], a
+ call Func_f87ea
+ ld d, $80
+.asm_f87b3
+ ld a, [$ddb9]
+ cp $0
+ jr z, .asm_f87e1
+ ld hl, $dd93
+ ld a, [hl]
+ cp $80
+ jr z, .asm_f87cc
+ ld a, [$dde9]
+ ld [$ff1c], a
+ xor a
+ ld [$ff1a], a
+ ld d, $80
+.asm_f87cc
+ ld [hl], $2
+ xor a
+ ld [$ff1b], a
+ ld a, [$dda9]
+ ld [$ff1d], a
+ ld a, $80
+ ld [$ff1a], a
+ ld a, [$ddaa]
+ or d
+ ld [$ff1e], a
+.asm_f87e0
+ ret
+.asm_f87e1
+ ld hl, $dd91
+ ld [hl], $0
+ xor a
+ ld [$ff1a], a
+ ret
+
+Func_f87ea: ; f879c (3e:47ea)
+ ld a, [$dd8a]
+ add a
+ ld d, $0
+ ld e, a
+ ld hl, PointerTable_f8cda
+ add hl, de
+ ld a, [hli]
+ ld h, [hl]
+ ld l, a
+ ld b, d
+ ld de, $ff30
+.asm_f87fc
+ ld a, [hli]
+ ld [de], a
+ inc de
+ inc b
+ ld a, b
+ cp $10
+ jr nz, .asm_f87fc
+ xor a
+ ld [$dd8b], a
+ ret
+
+Func_f880a: ; f880a (3e:480a)
+ ld a, [$dd8c]
+ bit 3, a
+ jr nz, .asm_f8829
+ ld a, [$ddba]
+ cp $0
+ jr z, asm_f882a
+ ld de, $ff20
+ ld hl, $ddab
+ ld a, [hli]
+ ld [de], a
+ inc e
+ ld a, [hli]
+ ld [de], a
+ inc e
+ ld a, [hli]
+ ld [de], a
+ inc e
+ ld a, [hli]
+ ld [de], a
+.asm_f8829
+ ret
+asm_f882a
+ xor a
+ ld [$ddef], a
+ ld hl, $ff21
+ ld a, $8
+ ld [hli], a
+ inc hl
+ swap a
+ ld [hl], a
+ ret
+
+Func_f8839: ; f8839 (3e:4839)
+ ld a, [$dd8c]
+ bit 3, a
+ jr z, .asm_f8846
+ xor a
+ ld [$ddef], a
+ jr .asm_f8859
+.asm_f8846
+ ld hl, $dded
+ ld a, [hli]
+ ld d, [hl]
+ ld e, a
+ ld a, [de]
+ cp $ff
+ jr nz, .asm_f8853
+ jr asm_f882a
+.asm_f8853
+ ld [$ff22], a
+ inc de
+ ld a, d
+ ld [hld], a
+ ld [hl], e
+.asm_f8859
+ ret
+
+Func_f885a: ; f885a (3e:485a)
+ push af
+ ld b, $0
+ ld c, a
+ call Func_f8898
+ pop af
+ call Func_f890b
+ ret
+
+Func_f8866: ; f8866 (3e:4866)
+ ld a, [$ddf1]
+ ld [$ff24], a
+ ld a, [$dd8c]
+ or a
+ ld hl, $dd84
+ ld a, [hli]
+ jr z, .asm_f8888
+ ld a, [$dd8c]
+ and $f
+ ld d, a
+ swap d
+ or d
+ ld d, a
+ xor $ff
+ ld e, a
+ ld a, [hld]
+ and d
+ ld d, a
+ ld a, [hl]
+ and e
+ or d
+.asm_f8888
+ ld d, a
+ ld a, [$ddf0]
+ xor $ff
+ and $f
+ ld e, a
+ swap e
+ or e
+ and d
+ ld [$ff25], a
+ ret
+
+Func_f8898: ; f8898 (3e:4898)
+ ld hl, $dddf
+ add hl, bc
+ ld a, [hl]
+ cp $0
+ jr z, .asm_f8902
+ ld hl, $dde3
+ add hl, bc
+ cp [hl]
+ jr z, .asm_f88ab
+ inc [hl]
+ jr .asm_f8902
+.asm_f88ab
+ ld hl, $ddd3
+ add hl, bc
+ ld e, [hl]
+ ld d, $0
+ ld hl, PointerTable_f8dde
+ add hl, de
+ add hl, de
+ ld a, [hli]
+ ld h, [hl]
+ ld l, a
+ push hl
+ ld hl, $dddb
+ add hl, bc
+ ld d, $0
+ ld e, [hl]
+ inc [hl]
+ pop hl
+ add hl, de
+ ld a, [hli]
+ cp $80
+ jr z, .asm_f88ee
+ ld hl, $dda5
+ add hl, bc
+ add hl, bc
+ ld e, [hl]
+ inc hl
+ ld d, [hl]
+ bit 7, a
+ jr nz, .asm_f88df
+ add e
+ ld e, a
+ ld a, $0
+ adc d
+ and $7
+ ld d, a
+ ret
+.asm_f88df
+ xor $ff
+ inc a
+ push bc
+ ld c, a
+ ld a, e
+ sub c
+ ld e, a
+ ld a, d
+ sbc b
+ and $7
+ ld d, a
+ pop bc
+ ret
+.asm_f88ee
+ push hl
+ ld hl, $dddb
+ add hl, bc
+ ld [hl], $0
+ pop hl
+ ld a, [hl]
+ cp $80
+ jr z, .asm_f88ab
+ ld hl, $ddd3
+ add hl, bc
+ ld [hl], a
+ jr .asm_f88ab
+.asm_f8902
+ ld hl, $dda5
+ add hl, bc
+ add hl, bc
+ ld e, [hl]
+ inc hl
+ ld d, [hl]
+ ret
+
+Func_f890b: ; f890b (3e:490b)
+ cp $0
+ jr nz, .asm_f892c
+ ld a, [$dddf]
+ cp $0
+ jr z, .asm_f8966
+ ld a, [$dd8c]
+ bit 0, a
+ jr nz, .asm_f8966
+ ld a, e
+ ld [$ff13], a
+ ld a, [$ff11]
+ and $c0
+ ld [$ff11], a
+ ld a, d
+ and $3f
+ ld [$ff14], a
+ ret
+.asm_f892c
+ cp $1
+ jr nz, .asm_f894b
+ ld a, [$dde0]
+ cp $0
+ jr z, .asm_f8966
+ ld a, [$dd8c]
+ bit 1, a
+ jr nz, .asm_f8966
+ ld a, e
+ ld [$ff18], a
+ ld a, [$ff16]
+ and $c0
+ ld [$ff16], a
+ ld a, d
+ ld [$ff19], a
+ ret
+.asm_f894b
+ cp $2
+ jr nz, .asm_f8966
+ ld a, [$dde1]
+ cp $0
+ jr z, .asm_f8966
+ ld a, [$dd8c]
+ bit 2, a
+ jr nz, .asm_f8966
+ ld a, e
+ ld [$ff1d], a
+ xor a
+ ld [$ff1b], a
+ ld a, d
+ ld [$ff1e], a
+.asm_f8966
+ ret
+
+Func_f8967: ; f8967 (3e:4967)
+ ld hl, $ddea
+ add hl, bc
+ ld a, [hl]
+ bit 7, a
+ jr nz, .asm_f8976
+ add e
+ ld e, a
+ ld a, d
+ adc b
+ ld d, a
+ ret
+.asm_f8976
+ xor $ff
+ ld h, a
+ ld a, e
+ sub h
+ ld e, a
+ ld a, d
+ sbc b
+ ld d, a
+ ret
+
+Func_f8980: ; f8980 (3e:4980)
+ ld a, [$dd8c]
+ ld d, a
+ bit 0, d
+ jr nz, .asm_f8990
+ ld a, $8
+ ld [$ff12], a
+ swap a
+ ld [$ff14], a
+.asm_f8990
+ bit 1, d
+ jr nz, .asm_f899c
+ swap a
+ ld [$ff17], a
+ swap a
+ ld [$ff19], a
+.asm_f899c
+ bit 3, d
+ jr nz, .asm_f89a8
+ swap a
+ ld [$ff21], a
+ swap a
+ ld [$ff23], a
+.asm_f89a8
+ bit 2, d
+ jr nz, .asm_f89b0
+ ld a, $0
+ ld [$ff1c], a
+.asm_f89b0
+ ret
+
+Func_f89b1: ; f89b1 (3e:49b1)
+ ld hl, $dd8d
+ xor a
+ add [hl]
+ inc hl
+ add [hl]
+ inc hl
+ add [hl]
+ inc hl
+ add [hl]
+ or a
+ ret nz
+ ld a, $80
+ ld [$dd80], a
+ ret
+
+Func_f89c4: ; f89c4 (3e:49c4)
+ di
+ call Func_f8980
+ call Func_f89dc
+ call Func_f814b
+ ei
+ ret
+
+Func_f89d0: ; f89d0 (3e:49d0)
+ di
+ call Func_f8980
+ call Func_f814b
+ call Func_f8b01
+ ei
+ ret
+
+Func_f89dc: ; f89dc (3e:49dc)
+ ld a, [$dd80]
+ ld [$de55], a
+ ld a, [$dd81]
+ ld [$de56], a
+ ld a, [$dd84]
+ ld [$de57], a
+ ld hl, $dd86
+ ld de, $de58
+ ld a, $4
+ call Func_f8c18
+ ld a, [$dd8a]
+ ld [$de5c], a
+ ld a, [$dd8b]
+ ld [$de5d], a
+ ld hl, $dd8d
+ ld de, $de5e
+ ld a, $4
+ call Func_f8c18
+ ld hl, $dd91
+ ld de, $de62
+ ld a, $4
+ call Func_f8c18
+ ld hl, $dd95
+ ld de, $de66
+ ld a, $8
+ call Func_f8c18
+ ld hl, $dd9d
+ ld de, $de6e
+ ld a, $8
+ call Func_f8c18
+ ld a, [$ddab]
+ ld [$de76], a
+ ld a, [$ddac]
+ ld [$de77], a
+ ld hl, $ddaf
+ ld de, $de78
+ ld a, $4
+ call Func_f8c18
+ ld hl, $ddb3
+ ld de, $de7c
+ ld a, $4
+ call Func_f8c18
+ ld hl, $ddb7
+ ld de, $de80
+ ld a, $4
+ call Func_f8c18
+ ld hl, $ddbb
+ ld de, $de84
+ ld a, $4
+ call Func_f8c18
+ ld hl, $ddbf
+ ld de, $de88
+ ld a, $4
+ call Func_f8c18
+ ld hl, $ddc3
+ ld de, $de8c
+ ld a, $4
+ call Func_f8c18
+ ld hl, $ddc7
+ ld de, $de90
+ ld a, $4
+ call Func_f8c18
+ ld hl, $ddcb
+ ld de, $de94
+ ld a, $4
+ call Func_f8c18
+ ld hl, $ddcf
+ ld de, $de98
+ ld a, $4
+ call Func_f8c18
+ ld hl, $ddd7
+ ld de, $de9c
+ ld a, $4
+ call Func_f8c18
+ ld hl, $dddf
+ ld de, $dea0
+ ld a, $4
+ call Func_f8c18
+ ld a, $0
+ ld [$dddb], a
+ ld [$dddc], a
+ ld [$dddd], a
+ ld [$ddde], a
+ ld hl, $dde7
+ ld de, $dea4
+ ld a, $3
+ call Func_f8c18
+ ld hl, $ddea
+ ld de, $dea7
+ ld a, $3
+ call Func_f8c18
+ ld hl, $dded
+ ld de, $deaa
+ ld a, $2
+ call Func_f8c18
+ ld a, $0
+ ld [$deac], a
+ ld hl, $ddf3
+ ld de, $dead
+ ld a, $8
+ call Func_f8c18
+ ld hl, $ddfb
+ ld de, $deb5
+ ld a, $30
+ call Func_f8c18
+ ret
+
+Func_f8b01: ; f8b01 (3e:4b01)
+ ld a, [$de55]
+ ld [$dd80], a
+ ld a, [$de56]
+ ld [$dd81], a
+ ld a, [$de57]
+ ld [$dd84], a
+ ld hl, $de58
+ ld de, $dd86
+ ld a, $4
+ call Func_f8c18
+ ld a, [$de5c]
+ ld [$dd8a], a
+ ld a, $1
+ ld [$dd8b], a
+ ld hl, $de5e
+ ld de, $dd8d
+ ld a, $4
+ call Func_f8c18
+ ld hl, $de62
+ ld de, $dd91
+ ld a, $4
+ call Func_f8c18
+ ld hl, $de66
+ ld de, $dd95
+ ld a, $8
+ call Func_f8c18
+ ld hl, $de6e
+ ld de, $dd9d
+ ld a, $8
+ call Func_f8c18
+ ld a, [$de76]
+ ld [$ddab], a
+ ld a, [$de77]
+ ld [$ddac], a
+ ld hl, $de78
+ ld de, $ddaf
+ ld a, $4
+ call Func_f8c18
+ ld hl, $de7c
+ ld de, $ddb3
+ ld a, $4
+ call Func_f8c18
+ ld hl, $de80
+ ld de, $ddb7
+ ld a, $4
+ call Func_f8c18
+ ld hl, $de84
+ ld de, $ddbb
+ ld a, $4
+ call Func_f8c18
+ ld hl, $de88
+ ld de, $ddbf
+ ld a, $4
+ call Func_f8c18
+ ld hl, $de8c
+ ld de, $ddc3
+ ld a, $4
+ call Func_f8c18
+ ld hl, $de90
+ ld de, $ddc7
+ ld a, $4
+ call Func_f8c18
+ ld hl, $de94
+ ld de, $ddcb
+ ld a, $4
+ call Func_f8c18
+ ld hl, $de98
+ ld de, $ddcf
+ ld a, $4
+ call Func_f8c18
+ ld hl, $de9c
+ ld de, $ddd7
+ ld a, $4
+ call Func_f8c18
+ ld hl, $dea0
+ ld de, $dddf
+ ld a, $4
+ call Func_f8c18
+ ld hl, $dea4
+ ld de, $dde7
+ ld a, $3
+ call Func_f8c18
+ ld hl, $dea7
+ ld de, $ddea
+ ld a, $3
+ call Func_f8c18
+ ld hl, $deaa
+ ld de, $dded
+ ld a, $2
+ call Func_f8c18
+ ld a, [$deac]
+ ld [$ddef], a
+ ld hl, $dead
+ ld de, $ddf3
+ ld a, $8
+ call Func_f8c18
+ ld hl, $deb5
+ ld de, $ddfb
+ ld a, $30
+ call Func_f8c18
+ ret
+
+; copies a bytes from hl to de
+Func_f8c18: ; f8c18 (3e:4c18)
+ ld c, a
+.asm_f8c19
+ ld a, [hli]
+ ld [de], a
+ inc de
+ dec c
+ jr nz, .asm_f8c19
+ ret
+
+Unknown_f8c20: ; f8c20 (3e:4c20)
+INCBIN "baserom.gbc",$f8c20,$f8c28 - $f8c20
+
+Unknown_f8c28: ; f8c28 (3e:4c28)
+INCBIN "baserom.gbc",$f8c28,$f8cda - $f8c28
+
+PointerTable_f8cda: ; f8cda (3e:4cda)
+ dw Unknown_f8ce4
+ dw Unknown_f8cf4
+ dw Unknown_f8d04
+ dw Unknown_f8d14
+ dw Unknown_f8d24
+
+Unknown_f8ce4: ; f8ce4 (3e:4ce4)
+INCBIN "baserom.gbc",$f8ce4,$f8cf4 - $f8ce4
+
+Unknown_f8cf4: ; f8cf4 (3e:4cf4)
+INCBIN "baserom.gbc",$f8cf4,$f8d04 - $f8cf4
+
+Unknown_f8d04: ; f8d04 (3e:4d04)
+INCBIN "baserom.gbc",$f8d04,$f8d14 - $f8d04
+
+Unknown_f8d14: ; f8d14 (3e:4d14)
+INCBIN "baserom.gbc",$f8d14,$f8d24 - $f8d14
+
+Unknown_f8d24: ; f8d24 (3e:4d24)
+INCBIN "baserom.gbc",$f8d24,$f8d34 - $f8d24
+
+PointerTable_f8d34: ; f8d34 (3e:4d34)
+ dw Unknown_f8d53
+ dw Unknown_f8d4c
+ dw Unknown_f8d5a
+ dw Unknown_f8d4c
+ dw Unknown_f8d64
+ dw Unknown_f8d4c
+ dw Unknown_f8d6d
+ dw Unknown_f8d4c
+ dw Unknown_f8d76
+ dw Unknown_f8d4c
+ dw Unknown_f8d4c
+ dw Unknown_f8daa
+
+Unknown_f8d4c: ; f8d4c (3e:4d4c)
+INCBIN "baserom.gbc",$f8d4c,$f8d53 - $f8d4c
+
+Unknown_f8d53: ; f8d53 (3e:4d53)
+INCBIN "baserom.gbc",$f8d53,$f8d5a - $f8d53
+
+Unknown_f8d5a: ; f8d5a (3e:4d5a)
+INCBIN "baserom.gbc",$f8d5a,$f8d64 - $f8d5a
+
+Unknown_f8d64: ; f8d64 (3e:4d64)
+INCBIN "baserom.gbc",$f8d64,$f8d6d - $f8d64
+
+Unknown_f8d6d: ; f8d6d (3e:4d6d)
+INCBIN "baserom.gbc",$f8d6d,$f8d76 - $f8d6d
+
+Unknown_f8d76: ; f8d76 (3e:4d76)
+INCBIN "baserom.gbc",$f8d76,$f8daa - $f8d76
+
+Unknown_f8daa: ; f8daa (3e:4daa)
+INCBIN "baserom.gbc",$f8daa,$f8dde - $f8daa
+
+PointerTable_f8dde: ; f8dde (3e:4dde)
+ dw Unknown_f8df4
+ dw Unknown_f8df7
+ dw Unknown_f8e01
+ dw Unknown_f8e0f
+ dw Unknown_f8e19
+ dw Unknown_f8e27
+ dw Unknown_f8e35
+ dw Unknown_f8e47
+ dw Unknown_f8e5b
+ dw Unknown_f8e65
+ dw Unknown_f8e73
+
+Unknown_f8df4: ; f8df4 (3e:4df4)
+INCBIN "baserom.gbc",$f8df4,$f8df7 - $f8df4
+
+Unknown_f8df7: ; f8df7 (3e:4df7)
+INCBIN "baserom.gbc",$f8df7,$f8e01 - $f8df7
+
+Unknown_f8e01: ; f8e01 (3e:4e01)
+INCBIN "baserom.gbc",$f8e01,$f8e0f - $f8e01
+
+Unknown_f8e0f: ; f8e0f (3e:4e0f)
+INCBIN "baserom.gbc",$f8e0f,$f8e19 - $f8e0f
+
+Unknown_f8e19: ; f8e19 (3e:4e19)
+INCBIN "baserom.gbc",$f8e19,$f8e27 - $f8e19
+
+Unknown_f8e27: ; f8e27 (3e:4e27)
+INCBIN "baserom.gbc",$f8e27,$f8e35 - $f8e27
+
+Unknown_f8e35: ; f8e35 (3e:4e35)
+INCBIN "baserom.gbc",$f8e35,$f8e47 - $f8e35
+
+Unknown_f8e47: ; f8e47 (3e:4e47)
+INCBIN "baserom.gbc",$f8e47,$f8e5b - $f8e47
+
+Unknown_f8e5b: ; f8e5b (3e:4e5b)
+INCBIN "baserom.gbc",$f8e5b,$f8e65 - $f8e5b
+
+Unknown_f8e65: ; f8e65 (3e:4e65)
+INCBIN "baserom.gbc",$f8e65,$f8e73 - $f8e65
+
+Unknown_f8e73: ; f8e73 (3e:4e73)
+INCBIN "baserom.gbc",$f8e73,$f8ee5 - $f8e73
+
+NumberOfSongs2: ; f8ee5 (3e:4ee5)
+ db $1f
SongBanks2: ; f8ee6 (3e:4ee6)
db BANK(Music_Stop)
|