ref: 0c55e33b5ff0a6868eb6d5a7c7dde813b81d1ad8
parent: ea6954c49275643be55484113db5b34223d46450
author: yenatch <yenatch@gmail.com>
date: Sun Dec 28 13:19:18 EST 2014
More mobile subfunctions.
--- a/main.asm
+++ b/main.asm
@@ -103344,18 +103344,34 @@
SECTION "bank41", ROMX, BANK[$41]
Function104000:: ; 104000
- ld hl, $4006
+ ld hl, Function104006
jp Function104177
; 104006
-INCBIN "baserom.gbc",$104006,$10402d - $104006
+Function104006: ; 104006
+ ld de, AttrMap
+ ld hl, $d400
+ call Function104263
+ ld de, SpritesEnd
+ ld hl, Unkn1Pals
+ call Function10425f
+ ld a, $0
+ ld [rVBK], a
+ ld hl, Unkn1Pals
+ call Function10419d
+ ld a, $1
+ ld [rVBK], a
+ ld hl, $d400
+ call Function10419d
+ ret
+; 10402d
-
Function10402d:: ; 10402d
- ld hl, $4033
+ ld hl, Function104033
jp Function104177
; 104033
+Function104033: ; 104033
ld de, TileMap ; $c4a0 (aliases: SpritesEnd)
ld hl, Unkn1Pals ; $d000
call Function10425f
@@ -103364,12 +103380,14 @@
ld hl, Unkn1Pals ; $d000
call Function10419d
ret
+; 104047
Function104047: ; 104047
- ld hl, $404d
+ ld hl, Function10404d
jp Function104177
; 10404d
+Function10404d: ; 10404d
ld de, AttrMap ; $cdd9
ld hl, $d400
call Function104263
@@ -103378,13 +103396,14 @@
ld hl, $d400
call Function10419d
ret
+; 104061
-
Function104061:: ; 104061
- ld hl, $4067
+ ld hl, Function104067
jp Function104177
; 104067
+Function104067: ; 104067
ld de, AttrMap ; $cdd9
ld hl, $d400
call Function104263
@@ -103410,18 +103429,81 @@
Function104099: ; 104099
ld hl, Function104061
- ld hl, $40a2
+ ld hl, Function1040a2
jp Function104177
; 1040a2
-INCBIN "baserom.gbc",$1040a2,$104110 - $1040a2
+Function1040a2: ; 1040a2
+ ld de, AttrMap
+ ld hl, $d400
+ call Function104263
+ ld de, SpritesEnd
+ ld hl, Unkn1Pals
+ call Function10425f
+ call DelayFrame
+ di
+ ld a, [rVBK]
+ push af
+ ld a, $1
+ ld [rVBK], a
+ ld hl, $d400
+ call Function1041c1
+ ld a, $0
+ ld [rVBK], a
+ ld hl, Unkn1Pals
+ call Function1041c1
+ pop af
+ ld [rVBK], a
+ ei
+ ret
+; 1040d4
+Function1040d4: ; 1040d4
+ ld hl, Function1040da
+ jp Function104177
+; 1040da
+Function1040da: ; 1040da
+ ld a, $1
+ ld [rVBK], a
+ ld a, $3
+ ld [rSVBK], a
+ ld de, $d800
+ ld a, [$ffd7]
+ ld [rHDMA1], a
+ ld a, [hBGMapAddress]
+ ld [rHDMA2], a
+ ld a, d
+ ld [rHDMA3], a
+ ld a, e
+ ld [rHDMA4], a
+ ld a, $23
+ ld [hDMATransfer], a
+ call Function1041a4
+ ret
+; 1040fb
+
+Function1040fb: ; 1040fb
+ ld hl, Function104101
+ jp Function104177
+; 104101
+
+Function104101: ; 104101
+ ld a, $1
+ ld [rVBK], a
+ ld a, $3
+ ld [rSVBK], a
+ ld hl, $d800
+ call Function10419d
+ ret
+; 104110
+
Function104110:: ; 104110
- ld hl, $4116
+ ld hl, Function104116
jp Function104177
; 104116
+Function104116: ; 104116
ld de, AttrMap ; $cdd9
ld hl, $d400
call Function104263
@@ -103444,15 +103526,32 @@
ld [rVBK], a ; $ff00+$4f
ei
ret
+; 104148
Function104148: ; 104148 (41:4148)
- ld hl, $414e
+ ld hl, Function10414e
jp Function104177
; 10414e (41:414e)
-INCBIN "baserom.gbc",$10414e,$104177 - $10414e
+Function10414e: ; 10414e
+ ld de, AttrMap
+ ld hl, $d400
+ call Function104263
+ ld c, $ff
+ ld de, SpritesEnd
+ ld hl, Unkn1Pals
+ call Function104265
+ ld a, $1
+ ld [rVBK], a
+ ld hl, $d400
+ call Function1041ad
+ ld a, $0
+ ld [rVBK], a
+ ld hl, Unkn1Pals
+ call Function1041ad
+ ret
+; 104177
-
Function104177: ; 104177
ld a, [hBGMapMode]
push af
@@ -103488,6 +103587,8 @@
call Function10424e
ld a, $23
ld [hDMATransfer], a ; $ff00+$e8
+
+Function1041a4: ; 104a14
.asm_1041a4
call DelayFrame
ld a, [hDMATransfer] ; $ff00+$e8
@@ -103509,11 +103610,58 @@
ld a, [hBGMapAddress] ; $ff00+$d6
ld e, a
ld c, $24
- jr .asm_104205
+ jr asm_104205
; 1041c1 (41:41c1)
-INCBIN "baserom.gbc",$1041c1,$104205 - $1041c1
-.asm_104205
+Function1041c1: ; 1041c1
+ ld a, [$ffd7]
+ ld d, a
+ ld a, [hBGMapAddress]
+ ld e, a
+ ld c, $24
+ ld a, h
+ ld [rHDMA1], a
+ ld a, l
+ and $f0
+ ld [rHDMA2], a
+ ld a, d
+ and $1f
+ ld [rHDMA3], a
+ ld a, e
+ and $f0
+ ld [rHDMA4], a
+ ld a, c
+ dec c
+ or $80
+ ld b, a
+ ld a, $7f
+ sub c
+ ld d, a
+.asm_1041e4
+ ld a, [rLY]
+ cp d
+ jr nc, .asm_1041e4
+.asm_1041e9
+ ld a, [rSTAT]
+ and $3
+ jr z, .asm_1041e9
+ ld a, b
+ ld [rHDMA5], a
+ ld a, [rLY]
+ inc c
+ ld hl, rLY
+.asm_1041f8
+ cp [hl]
+ jr z, .asm_1041f8
+ ld a, [hl]
+ dec c
+ jr nz, .asm_1041f8
+ ld hl, rHDMA5
+ res 7, [hl]
+ ret
+; 104205
+
+asm_104205:
ld b, $7b
jr asm_10420b
@@ -103584,12 +103732,12 @@
Function10425f: ; 10425f (41:425f)
ld c, $7f
- jr asm_104265
+ jr Function104265
Function104263: ; 104263 (41:4263)
ld c, $0
-asm_104265: ; 104265 (41:4265)
+Function104265: ; 104265 (41:4265)
ld a, [$ffaf]
push af
ld a, c