summaryrefslogtreecommitdiff
path: root/misc
diff options
context:
space:
mode:
Diffstat (limited to 'misc')
-rw-r--r--misc/crystal_misc.asm102
-rw-r--r--misc/mobile_22.asm4435
-rw-r--r--misc/mobile_22_2.asm1155
-rw-r--r--misc/mobile_40.asm84
-rw-r--r--misc/mobile_42.asm60
-rw-r--r--misc/mobile_45.asm436
-rw-r--r--misc/mobile_5f.asm32
-rw-r--r--misc/unused_title.asm14
8 files changed, 5978 insertions, 340 deletions
diff --git a/misc/crystal_misc.asm b/misc/crystal_misc.asm
index 45eda5c7f..4844c826c 100644
--- a/misc/crystal_misc.asm
+++ b/misc/crystal_misc.asm
@@ -19,6 +19,7 @@ Function17a68f:: ; 17a68f (5e:668f)
pop de
xor a
ret
+
.asm_17a6a6
scf
ret
@@ -82,6 +83,7 @@ Function17a713: ; 17a713 (5e:6713)
inc c
and a
ret
+
.asm_17a71d
ld [hl], $ff
scf
@@ -113,10 +115,12 @@ Function17a721: ; 17a721 (5e:6721)
dec b
jr nz, .asm_17a732
ret
+
.asm_17a748
ld a, $ff
ld [de], a
ret
+
.asm_17a74c
ld a, $f0
or c
@@ -151,13 +155,13 @@ Function17a770: ; 17a770 (5e:6770)
ret
Function17a781: ; 17a781 (5e:6781)
- ld a, [$ffaa]
+ ld a, [hInMenu]
push af
ld a, $1
- ld [$ffaa], a
- call Functiona57
+ ld [hInMenu], a
+ call JoyTextDelay
pop af
- ld [$ffaa], a
+ ld [hInMenu], a
ret
Function17a78f: ; 17a78f (5e:678f)
@@ -167,6 +171,7 @@ Function17a78f: ; 17a78f (5e:678f)
jr nz, .asm_17a79f
callba Function10402d
ret
+
.asm_17a79f
callba Function104061
ret
@@ -261,7 +266,7 @@ Function17a81a: ; 17a81a (5e:681a)
ret
Function17a83c: ; 17a83c (5e:683c)
- ld a, [$ffa9]
+ ld a, [hJoyLast]
and $f0
ld c, a
ld a, [hJoyPressed] ; $ff00+$a7
@@ -297,41 +302,49 @@ Function17a848: ; 17a848 (5e:6848)
jr nz, .asm_17a8a7
xor a
ret
+
.asm_17a876
ld a, $9
call Function17aad0
scf
ret
+
.asm_17a87d
ld a, $a
call Function17aad0
scf
ret
+
.asm_17a884
ld a, $b
call Function17aad0
scf
ret
+
.asm_17a88b
ld a, $c
call Function17aad0
scf
ret
+
.asm_17a892
ld a, $5
call Function17aad0
scf
ret
+
.asm_17a899
ld a, $6
call Function17aad0
scf
ret
+
.asm_17a8a0
ld a, $7
call Function17aad0
scf
ret
+
.asm_17a8a7
ld a, $8
call Function17aad0
@@ -347,6 +360,7 @@ Function17a8ae: ; 17a8ae (5e:68ae)
jr nz, .asm_17a8d7
xor a
ret
+
.asm_17a8bc
ld a, $b
ld [$d08a], a
@@ -355,12 +369,14 @@ Function17a8ae: ; 17a8ae (5e:68ae)
call Function17aa88
scf
ret
+
.asm_17a8cc
call Function17aad7
call Function17aa98
call Function17a8de
scf
ret
+
.asm_17a8d7
ld a, $c
call Function17aad3
@@ -383,16 +399,19 @@ Function17a8de: ; 17a8de (5e:68de)
ld [$d087], a
call Function17aa88
ret
+
.asm_17a8fd
call Function17a943
call Function17aa88
ret
+
.asm_17a904
call Function17aad7
call Function17aa98
call Function17a91e
call Function17aa88
ret
+
.asm_17a911
call Function17aa98
ld a, $5
@@ -409,6 +428,7 @@ Function17a91e: ; 17a91e (5e:691e)
ld [$d087], a
xor a
ret
+
.asm_17a92c
call LoadMenuDataHeader_0x1d75
call Function17a99e
@@ -436,6 +456,7 @@ Function17a943: ; 17a943 (5e:6943)
ld [$d087], a
and a
ret
+
.asm_17a95d
ld a, $5
ld [$d087], a
@@ -455,6 +476,7 @@ Function17a964: ; 17a964 (5e:6964)
ld [hl], e
and a
ret
+
.asm_17a979
scf
ret
@@ -479,6 +501,7 @@ Function17a97b: ; 17a97b (5e:697b)
dec c
jr nz, .asm_17a990
ret
+
.asm_17a99d
ret
@@ -503,12 +526,13 @@ Function17a9cb: ; 17a9cb (5e:69cb)
ld de, Sprites ; $c400
ld hl, $d088
bit 6, [hl]
- jr nz, .asm_17a9df
+ jr nz, .bit_6_set
call Function17a9e3
call Function17aa22
call Function17a9f5
ret
-.asm_17a9df
+
+.bit_6_set
call Function17a9e3
ret
@@ -533,9 +557,9 @@ Function17a9f5: ; 17a9f5 (5e:69f5)
ld [$d08e], a
ld a, [$d08c]
cp $10
- jr c, .asm_17aa0f
+ jr c, .okay
dec a
-.asm_17aa0f
+.okay
ld c, $8
call SimpleMultiply
add $18
@@ -581,7 +605,7 @@ Function17aa4a: ; 17aa4a (5e:6a4a)
add $10
ld c, a
ld a, [hli]
-.asm_17aa56
+.loop
push af
ld a, [hli]
add c
@@ -603,7 +627,7 @@ Function17aa4a: ; 17aa4a (5e:6a4a)
inc de
pop af
dec a
- jr nz, .asm_17aa56
+ jr nz, .loop
ret
; 17aa72 (5e:6a72)
@@ -662,7 +686,7 @@ rept 2
ld [hli], a
endr
pop hl
- ld de, $14
+ ld de, SCREEN_WIDTH
add hl, de
rept 2
ld [hli], a
@@ -721,17 +745,21 @@ Function17aba0: ; 17aba0 (5e:6ba0)
push af
ld a, $1
ld [rVBK], a ; $ff00+$4f
- ld hl, $9000
+
+ ld hl, VTiles5 tile $00
ld de, GFX_17afa5
lb bc, BANK(GFX_17afa5), $80
call Get2bpp
+
pop af
ld [rVBK], a ; $ff00+$4f
- ld hl, $8000
+
+ ld hl, VTiles0 tile $00
ld de, GFX_17afa5 + $4c0
lb bc, BANK(GFX_17afa5), 5
call Get2bpp
- ld hl, $8050
+
+ ld hl, VTiles0 tile $05
ld de, GFX_11601a
lb bc, BANK(GFX_11601a), 4
call Get2bpp
@@ -740,25 +768,30 @@ Function17aba0: ; 17aba0 (5e:6ba0)
Function17abcf: ; 17abcf (5e:6bcf)
ld a, [rSVBK] ; $ff00+$70
push af
- ld a, $5
+ ld a, BANK(Unkn1Pals)
ld [rSVBK], a ; $ff00+$70
+
ld hl, Palette_17ac55
ld de, Unkn1Pals ; $d000
ld bc, $30
call CopyBytes
+
ld hl, Palette_17ac95
ld de, Unkn2Pals
ld bc, $40
call CopyBytes
+
ld hl, GFX_17afa5 + $510
- ld de, $d048
+ ld de, Unkn2Pals + 2 * 4
ld bc, $10
call CopyBytes
+
ld hl, MapObjectPals + 8
- ld de, $d058
+ ld de, Unkn2Pals + 6 * 4
ld bc, $8
ld a, BANK(MapObjectPals)
call FarCopyBytes
+
pop af
ld [rSVBK], a ; $ff00+$70
ret
@@ -767,42 +800,43 @@ Function17ac0c: ; 17ac0c (5e:6c0c)
call Function17ac1d
call Function17ac2a
hlcoord 0, 0
- ld b, $2
- ld c, $12
+ ld b, 2
+ ld c, SCREEN_WIDTH - 2
call Function17ac46
ret
Function17ac1d: ; 17ac1d (5e:6c1d)
ld hl, Tilemap_17acd5
decoord 0, 4
- ld bc, $118
+ ld bc, (SCREEN_HEIGHT - 4) * SCREEN_WIDTH
call CopyBytes
ret
Function17ac2a: ; 17ac2a (5e:6c2a)
ld hl, Tilemap_17ae3d
decoord 0, 4, AttrMap
- ld bc, $118
+ ld bc, (SCREEN_HEIGHT - 4) * SCREEN_WIDTH
call CopyBytes
hlcoord 0, 4, AttrMap
- ld bc, $118
-.asm_17ac3c
+ ld bc, (SCREEN_HEIGHT - 4) * SCREEN_WIDTH
+.loop
ld a, [hl]
or $8
ld [hli], a
dec bc
ld a, b
or c
- jr nz, .asm_17ac3c
+ jr nz, .loop
ret
Function17ac46: ; 17ac46 (5e:6c46)
ld a, [$d088]
bit 4, a
- jr nz, .asm_17ac51
+ jr nz, .bit_4_set
call TextBox
ret
-.asm_17ac51
+
+.bit_4_set
call Function3eea
ret
; 17ac55 (5e:6c55)
@@ -812,30 +846,37 @@ Palette_17ac55: ; 17ac55
RGB 9, 10, 25
RGB 16, 19, 31
RGB 31, 31, 31
+
RGB 5, 11, 9
RGB 7, 14, 12
RGB 17, 24, 22
RGB 28, 31, 31
+
RGB 0, 0, 0
RGB 3, 0, 10
RGB 3, 3, 16
RGB 6, 8, 25
+
RGB 5, 11, 9
RGB 28, 31, 31
RGB 7, 14, 12
RGB 17, 24, 22
+
RGB 0, 0, 0
RGB 5, 2, 16
RGB 8, 8, 26
RGB 13, 9, 17
+
RGB 0, 0, 0
RGB 0, 0, 0
RGB 0, 0, 0
RGB 0, 0, 0
+
RGB 0, 0, 0
RGB 0, 0, 0
RGB 0, 0, 0
RGB 0, 0, 0
+
RGB 0, 0, 0
RGB 0, 0, 0
RGB 0, 0, 0
@@ -846,30 +887,37 @@ Palette_17ac95: ; 17ac95
RGB 4, 3, 3
RGB 31, 13, 0
RGB 31, 31, 31
+
RGB 31, 31, 31
RGB 0, 0, 0
RGB 31, 31, 31
RGB 31, 31, 31
+
RGB 31, 0, 0
RGB 16, 3, 0
RGB 28, 19, 11
RGB 31, 31, 31
+
RGB 31, 16, 0
RGB 9, 6, 4
RGB 31, 16, 0
RGB 31, 24, 0
+
RGB 31, 18, 6
RGB 0, 3, 0
RGB 0, 9, 0
RGB 0, 12, 0
+
RGB 0, 16, 0
RGB 0, 22, 0
RGB 0, 25, 0
RGB 0, 27, 0
+
RGB 0, 31, 0
RGB 3, 31, 0
RGB 8, 31, 0
RGB 14, 31, 0
+
RGB 16, 31, 0
RGB 22, 31, 0
RGB 27, 31, 0
diff --git a/misc/mobile_22.asm b/misc/mobile_22.asm
new file mode 100644
index 000000000..1f883a944
--- /dev/null
+++ b/misc/mobile_22.asm
@@ -0,0 +1,4435 @@
+
+String_8911c: ; 8911c
+ db "でんわばんごうが ただしく" ; Phone number is not
+ next "はいって いません!@" ; entered correctly!
+; 89135
+
+String_89135: ; 89135
+ db "データが かわって いますが" ; The data has changed.
+ next "かきかえないで やめますか?@" ; Quit anyway?
+; 89153
+
+String_89153: ; 89153
+ db "メッセージは ありません@" ; No message
+; 89160
+
+OpenSRAMBank4: ; 89160
+ push af
+ ld a, $4
+ call GetSRAMBank
+ pop af
+ ret
+; 89168
+
+
+Function89168: ; 89168 (22:5168)
+ ld hl, GameTimerPause
+ set 7, [hl]
+ ret
+
+Function8916e: ; 8916e (22:516e)
+ ld hl, GameTimerPause
+ res 7, [hl]
+ ret
+
+Function89174: ; 89174 (22:5174)
+ ld hl, GameTimerPause
+ bit 7, [hl]
+ ret
+
+Function8917a: ; 8917a (22:517a)
+ ld hl, DefaultFlypoint
+ ld bc, $32
+ xor a
+ call ByteFill
+ ret
+
+Function89185: ; 89185 (22:5185)
+; Compares c bytes starting at de and hl and incrementing together until a match is found.
+ push de
+ push hl
+.loop
+ ld a, [de]
+ inc de
+ cp [hl]
+ jr nz, .done
+ inc hl
+ dec c
+ jr nz, .loop
+.done
+ pop hl
+ pop de
+ ret
+
+Function89193: ; 89193
+; Copies c bytes from hl to de.
+ push de
+ push hl
+.loop
+ ld a, [hli]
+ ld [de], a
+ inc de
+ dec c
+ jr nz, .loop
+ pop hl
+ pop de
+ ret
+; 8919e
+
+
+Function8919e: ; 8919e (22:519e)
+; Searches for the c'th string starting at de. Returns the pointer in de.
+ ld a, c
+ and a
+ ret z
+.loop
+ ld a, [de]
+ inc de
+ cp "@"
+ jr nz, .loop
+ dec c
+ jr nz, .loop
+ ret
+
+Function891ab: ; 891ab
+ call Function89240
+ callba Function104061
+ call Function8923c
+ ret
+; 891b8
+
+Function891b8: ; 891b8
+ call Function8923c
+ hlcoord 0, 0
+ ld a, " "
+ ld bc, SCREEN_WIDTH * SCREEN_HEIGHT
+ call ByteFill
+ call DelayFrame
+ ret
+; 891ca
+
+
+Function891ca: ; 891ca (22:51ca)
+ push bc
+ call Function891b8
+ call WaitBGMap
+ pop bc
+ ret
+
+Function891d3: ; 891d3 (22:51d3)
+ push bc
+ call Function891ca
+ ld c, $10
+ call DelayFrames
+ pop bc
+ ret
+
+Function891de: ; 891de
+ call Function8923c
+ call ClearPalettes
+ hlcoord 0, 0, AttrMap
+ ld a, $7
+ ld bc, SCREEN_WIDTH * SCREEN_HEIGHT
+ call ByteFill
+ hlcoord 0, 0
+ ld a, " "
+ ld bc, SCREEN_WIDTH * SCREEN_HEIGHT
+ call ByteFill
+ call Function891ab
+ ret
+; 891fe
+
+Function891fe: ; 891fe
+ push bc
+ call Function891de
+ ld c, $10
+ call DelayFrames
+ pop bc
+ ret
+; 89209
+
+Function89209: ; 89209
+ ld a, 1
+ ld [wc2ce], a
+ ret
+; 8920f
+
+Function8920f: ; 8920f
+ ld a, 0
+ ld [wc2ce], a
+ ret
+; 89215
+
+Function89215: ; 89215
+ push hl
+ push bc
+ ld bc, AttrMap - TileMap
+ add hl, bc
+ ld [hl], a
+ pop bc
+ pop hl
+ ret
+; 8921f
+
+
+Function8921f: ; 8921f (22:521f)
+ push de
+ ld de, SCREEN_WIDTH
+ add hl, de
+ inc hl
+ ld a, $7f
+.loop
+ push bc
+ push hl
+.asm_89229
+ ld [hli], a
+ dec c
+ jr nz, .asm_89229
+ pop hl
+ add hl, de
+ pop bc
+ dec b
+ jr nz, .loop
+ pop de
+ ret
+
+Function89235: ; 89235 (22:5235)
+ call JoyWaitAorB
+ call PlayClickSFX
+ ret
+
+Function8923c: ; 8923c
+ xor a
+ ld [hBGMapMode], a
+ ret
+; 89240
+
+Function89240: ; 89240
+ ld a, $1
+ ld [hBGMapMode], a
+ ret
+; 89245
+
+
+Function89245: ; 89245 (22:5245)
+ callba TryLoadSaveFile
+ ret c
+ callba Function150b9
+ and a
+ ret
+
+Function89254: ; 89254 (22:5254)
+ ld bc, $d07
+ jr Function89261
+
+Function89259: ; 89259
+ ld bc, $0e07
+ jr Function89261
+
+Function8925e: ; 8925e
+ ld bc, $0e0c
+
+Function89261: ; 89261
+ push af
+ push bc
+ ld hl, MenuDataHeader_0x892a3
+ call CopyMenuDataHeader
+ pop bc
+ ld hl, wMenuBorderTopCoord
+ ld a, c
+ ld [hli], a
+ ld a, b
+ ld [hli], a
+ ld a, c
+ add $4
+ ld [hli], a
+ ld a, b
+ add $5
+ ld [hl], a
+ pop af
+ ld [wPocketCursorBuffer], a
+ call BackUpTiles
+ call Function8923c
+ call Function89209
+ call InterpretMenu2
+ push af
+ ld c, $a
+ call DelayFrames
+ call WriteBackup
+ call Function8920f
+ pop af
+ jr c, .done
+ ld a, [wcfa9]
+ cp $2
+ jr z, .done
+ and a
+ ret
+
+.done
+ scf
+ ret
+; 892a3
+
+MenuDataHeader_0x892a3: ; 0x892a3
+ db $40 ; flags
+ db 05, 10 ; start coords
+ db 09, 15 ; end coords
+ dw MenuData2_0x892ab
+ db 1 ; default option
+; 0x892ab
+
+MenuData2_0x892ab: ; 0x892ab
+ db $c0 ; flags
+ db 2 ; items
+ db "はい@"
+ db "いいえ@"
+; 0x892b4
+
+Function892b4: ; 892b4 (22:52b4)
+ call Function8931b
+
+Function892b7: ; 892b7
+ ld d, b
+ ld e, c
+ ld hl, 0
+ add hl, bc
+ ld a, "@"
+ ld bc, 6
+ call ByteFill
+ ld b, d
+ ld c, e
+ ld hl, 6
+ add hl, bc
+ ld a, "@"
+ ld bc, 6
+ call ByteFill
+ ld b, d
+ ld c, e
+ ld hl, 12
+ add hl, bc
+ xor a
+ ld [hli], a
+ ld [hl], a
+ ld hl, 14
+ add hl, bc
+ ld [hli], a
+ ld [hl], a
+ ld hl, 16
+ add hl, bc
+ ld [hl], a
+ ld hl, 17
+ add hl, bc
+ ld a, -1
+ ld bc, 8
+ call ByteFill
+ ld b, d
+ ld c, e
+ ld e, 6
+ ld hl, 25
+ add hl, bc
+.loop
+ ld a, -1
+ ld [hli], a
+ ld a, -1
+ ld [hli], a
+ dec e
+ jr nz, .loop
+ ret
+; 89305
+
+
+Function89305: ; 89305 (22:5305)
+ xor a
+ ld [MenuSelection], a
+ ld c, 40
+.loop
+ ld a, [MenuSelection]
+ inc a
+ ld [MenuSelection], a
+ push bc
+ call Function892b4
+ pop bc
+ dec c
+ jr nz, .loop
+ ret
+
+Function8931b: ; 8931b
+ push hl
+ ld hl, $a03b
+ ld a, [MenuSelection]
+ dec a
+ ld bc, $0025
+ call AddNTimes
+ ld b, h
+ ld c, l
+ pop hl
+ ret
+; 8932d
+
+Function8932d: ; 8932d
+ ld hl, 0
+ add hl, bc
+
+Function89331: ; 89331
+; Scans up to 5 characters starting at hl, looking for a nonspace character up to the next terminator. Sets carry if it does not find a nonspace character. Returns the location of the following character in hl.
+ push bc
+ ld c, 5
+.loop
+ ld a, [hli]
+ cp "@"
+ jr z, .terminator
+ cp " "
+ jr nz, .nonspace
+ dec c
+ jr nz, .loop
+
+.terminator
+ scf
+ jr .done
+
+.nonspace
+ and a
+
+.done
+ pop bc
+ ret
+; 89346
+
+
+Function89346: ; 89346 (22:5346)
+ ld h, b
+ ld l, c
+ jr _incave
+
+Function8934a: ; 8934a
+ ld hl, 6
+ add hl, bc
+_incave:
+; Scans up to 5 characters starting at hl, looking for a nonspace character up to the next terminator. Sets carry if it does not find a nonspace character. Returns the location of the following character in hl.
+ push bc
+ ld c, 5
+.loop
+ ld a, [hli]
+ cp "@"
+ jr z, .terminator
+ cp " "
+ jr nz, .nonspace
+ dec c
+ jr nz, .loop
+
+.terminator
+ scf
+ jr .done
+
+.nonspace
+ and a
+
+.done
+ pop bc
+ ret
+; 89363
+
+Function89363: ; 89363
+; Scans six byte pairs starting at bc to find $ff. Sets carry if it does not find a $ff. Returns the location of the byte after the first $ff found in hl.
+ ld h, b
+ ld l, c
+ jr ._incave
+
+ ld hl, 25
+ add hl, bc
+
+._incave
+ push de
+ ld e, 6
+.loop
+ ld a, [hli]
+ cp -1
+ jr nz, .ok
+ ld a, [hli]
+ cp -1
+ jr nz, .ok
+ dec e
+ jr nz, .loop
+ scf
+ jr .done
+
+.ok
+ and a
+
+.done
+ pop de
+ ret
+; 89381
+
+Function89381: ; 89381
+ push bc
+ push de
+ call Function89b45
+ jr c, .ok
+ push hl
+ ld a, -1
+ ld bc, 8
+ call ByteFill
+ pop hl
+
+.ok
+ pop de
+ ld c, 8
+ call Function89193
+ pop bc
+ ret
+; 8939a
+
+Function8939a: ; 8939a
+ push bc
+ ld hl, 0
+ add hl, bc
+ ld de, DefaultFlypoint
+ ld c, 6
+ call Function89193
+ pop bc
+ ld hl, 17
+ add hl, bc
+ ld de, wd008
+ call Function89381
+ ret
+; 893b3
+
+
+Function893b3: ; 893b3 (22:53b3)
+ call DisableLCD
+ call ClearSprites
+ call Functione51
+ call Functione5f
+ call Function893ef
+ call Function8942b
+ call Function89455
+ call EnableLCD
+ ret
+
+Function893cc: ; 893cc
+ call DisableLCD
+ call ClearSprites
+ call Functione51
+ call Functione5f
+ call Function893ef
+ call Function89464
+ call EnableLCD
+ ret
+; 893e2
+
+
+Function893e2: ; 893e2 (22:53e2)
+ call Function89b1e
+ call Function893b3
+ call Function8a5b6
+ call Function8949c
+ ret
+
+Function893ef: ; 893ef
+ ld de, VTiles0
+ ld hl, GFX_8940b
+ ld bc, $20
+ ld a, BANK(GFX_8940b)
+ call FarCopyBytes
+ ret
+; 893fe
+
+Function893fe: ; 893fe
+ call DisableLCD
+ call Function893ef
+ call EnableLCD
+ call DelayFrame
+ ret
+; 8940b
+
+GFX_8940b: ; 8940b
+INCBIN "gfx/unknown/08940b.2bpp"
+; 8942b
+
+Function8942b: ; 8942b (22:542b)
+ ld de, VTiles0 tile $02
+ ld hl, MobileAdapterGFX + $7d0
+ ld bc, $80
+ ld a, BANK(MobileAdapterGFX)
+ call FarCopyBytes
+ ld de, VTiles0 tile $0a
+ ld hl, MobileAdapterGFX + $c60
+ ld bc, $40
+ ld a, BANK(MobileAdapterGFX)
+ call FarCopyBytes
+ ret
+
+Function89448: ; 89448 (22:5448)
+; Clears the Sprites array
+ push af
+ ld hl, Sprites
+ ld d, $10 * 6
+ xor a
+.loop
+ ld [hli], a
+ dec d
+ jr nz, .loop
+ pop af
+ ret
+
+Function89455: ; 89455 (22:5455)
+ ld hl, MobileAdapterGFX + $7d0
+ ld de, VTiles2 tile $0c
+ ld bc, $490
+ ld a, BANK(MobileAdapterGFX)
+ call FarCopyBytes
+ ret
+
+Function89464: ; 89464
+ ld hl, MobileAdapterGFX
+ ld de, VTiles2
+ ld bc, $200
+ ld a, BANK(MobileAdapterGFX)
+ call FarCopyBytes
+ ld hl, MobileAdapterGFX + $660
+ ld de, VTiles2 tile $20
+ ld bc, $170
+ ld a, BANK(MobileAdapterGFX)
+ call FarCopyBytes
+ ret
+; 89481
+
+Function89481: ; 89481
+ ld d, 2
+ call Function8934a
+ ret c
+ ld d, 0
+ ld hl, 16
+ add hl, bc
+ bit 0, [hl]
+ ret z
+ inc d
+ ret
+; 89492
+
+
+Function89492: ; 89492 (22:5492)
+ ld d, 0
+ ld a, [PlayerGender]
+ bit 0, a
+ ret z
+ inc d
+ ret
+
+Function8949c: ; 8949c
+ ld a, [rSVBK]
+ push af
+ ld a, 5
+ ld [rSVBK], a
+ ld hl, Palette_894b3
+ ld de, Unkn1Pals + 8 * 7
+ ld bc, 8
+ call CopyBytes
+ pop af
+ ld [rSVBK], a
+ ret
+; 894b3
+
+Palette_894b3: ; 894b3
+ RGB 31, 31, 31
+ RGB 31, 31, 31
+ RGB 31, 31, 31
+ RGB 00, 00, 00
+; 894bb
+
+Function894bb: ; 894bb
+ call Function894dc
+ push bc
+ call Function8956f
+ call Function8949c
+ call Function8a60d
+ pop bc
+ ret
+; 894ca
+
+
+Function894ca: ; 894ca (22:54ca)
+ push bc
+ call Function894dc
+ call Function895c7
+ call Function8949c
+ call Function8a60d
+ call SetPalettes
+ pop bc
+ ret
+
+Function894dc: ; 894dc
+ push bc
+ ld a, [rSVBK]
+ push af
+ ld a, 5
+ ld [rSVBK], a
+ ld c, d
+ ld b, 0
+ ld hl, Unknown_89509
+rept 2
+ add hl, bc
+endr
+ ld a, [hli]
+ ld h, [hl]
+ ld l, a
+ ld de, Unkn1Pals
+ ld bc, 24
+ call CopyBytes
+ ld hl, Palette_89557
+ ld de, wd018
+ ld bc, 24
+ call CopyBytes
+ pop af
+ ld [rSVBK], a
+ pop bc
+ ret
+; 89509
+
+Unknown_89509: ; 89509
+ dw Palette_8950f
+ dw Palette_89527
+ dw Palette_8953f
+; 8950f
+
+Palette_8950f: ; 8950f
+ RGB 31, 31, 31
+ RGB 10, 17, 13
+ RGB 10, 08, 22
+ RGB 00, 00, 00
+
+ RGB 31, 31, 31
+ RGB 16, 20, 31
+ RGB 10, 08, 22
+ RGB 00, 00, 00
+
+ RGB 31, 31, 31
+ RGB 16, 20, 31
+ RGB 10, 17, 13
+ RGB 00, 00, 00
+
+Palette_89527: ; 89527
+ RGB 31, 31, 31
+ RGB 30, 22, 11
+ RGB 31, 08, 15
+ RGB 00, 00, 00
+
+ RGB 31, 31, 31
+ RGB 16, 20, 31
+ RGB 31, 08, 15
+ RGB 00, 00, 00
+
+ RGB 31, 31, 31
+ RGB 16, 20, 31
+ RGB 30, 22, 11
+ RGB 00, 00, 00
+
+Palette_8953f: ; 8953f
+ RGB 31, 31, 31
+ RGB 15, 20, 26
+ RGB 25, 07, 20
+ RGB 00, 00, 00
+
+ RGB 31, 31, 31
+ RGB 16, 20, 31
+ RGB 25, 07, 20
+ RGB 00, 00, 00
+
+ RGB 31, 31, 31
+ RGB 16, 20, 31
+ RGB 15, 20, 26
+ RGB 00, 00, 00
+
+Palette_89557: ; 89557
+ RGB 31, 31, 31
+ RGB 31, 31, 31
+ RGB 31, 13, 00
+ RGB 14, 08, 00
+
+ RGB 31, 31, 31
+ RGB 16, 16, 31
+ RGB 00, 00, 31
+ RGB 00, 00, 00
+
+ RGB 19, 31, 11
+ RGB 00, 00, 00
+ RGB 00, 00, 00
+ RGB 00, 00, 00
+; 8956f
+
+Function8956f: ; 8956f
+ push bc
+ ld hl, 16
+ add hl, bc
+ ld d, h
+ ld e, l
+ ld hl, $000c
+ add hl, bc
+ ld b, h
+ ld c, l
+ callba Function4e929
+ ld a, c
+ ld [TrainerClass], a
+ ld a, [rSVBK]
+ push af
+ ld a, 5
+ ld [rSVBK], a
+ ld hl, wd030
+ ld a, -1
+ ld [hli], a
+ ld a, " "
+ ld [hl], a
+ pop af
+ ld [rSVBK], a
+ ld a, [TrainerClass]
+ ld h, 0
+ ld l, a
+rept 2
+ add hl, hl
+endr
+ ld de, TrainerPalettes
+ add hl, de
+ ld a, [rSVBK]
+ push af
+ ld a, $5
+ ld [rSVBK], a
+ ld de, wd032
+ ld c, 4
+.loop
+ ld a, BANK(TrainerPalettes)
+ call GetFarByte
+ ld [de], a
+ inc de
+ inc hl
+ dec c
+ jr nz, .loop
+ ld hl, wd036
+ xor a
+ ld [hli], a
+ ld [hl], a
+ pop af
+ ld [rSVBK], a
+ pop bc
+ ret
+; 895c7
+
+
+Function895c7: ; 895c7 (22:55c7)
+ ld a, [rSVBK] ; $ff00+$70
+ push af
+ ld a, 5
+ ld [rSVBK], a ; $ff00+$70
+ ld hl, Palette_895de
+ ld de, wd030
+ ld bc, 8
+ call CopyBytes
+ pop af
+ ld [rSVBK], a ; $ff00+$70
+ ret
+; 895de (22:55de)
+
+Palette_895de: ; 895de
+ RGB 31, 31, 31
+ RGB 07, 07, 06
+ RGB 07, 07, 06
+ RGB 00, 00, 00
+; 895e6
+
+Function895e6: ; 895e6
+ ld a, 7
+ hlcoord 0, 0, AttrMap
+ ld bc, SCREEN_WIDTH * SCREEN_HEIGHT
+ call ByteFill
+ ret
+; 895f2
+
+Function895f2: ; 895f2
+ push bc
+ xor a
+ hlcoord 0, 0, AttrMap
+ ld bc, SCREEN_WIDTH * SCREEN_HEIGHT
+ call ByteFill
+ call Function89605
+ call Function89655
+ pop bc
+ ret
+; 89605
+
+Function89605: ; 89605
+ hlcoord 19, 2, AttrMap
+ ld a, 1
+ ld de, SCREEN_WIDTH
+ ld c, 14
+.loop
+ ld [hl], a
+ dec c
+ jr z, .done
+ add hl, de
+ inc a
+ ld [hl], a
+ dec a
+ add hl, de
+ dec c
+ jr nz, .loop
+
+.done
+ hlcoord 0, 16, AttrMap
+ ld c, 10
+ ld a, 2
+.loop2
+ ld [hli], a
+ dec a
+ ld [hli], a
+ inc a
+ dec c
+ jr nz, .loop2
+ hlcoord 1, 11, AttrMap
+ ld a, 4
+ ld bc, 4
+ call ByteFill
+ ld a, 5
+ ld bc, 14
+ call ByteFill
+ ret
+; 8963d
+
+Function8963d: ; 8963d
+ hlcoord 12, 3, AttrMap
+ ld a, 6
+ ld de, SCREEN_WIDTH
+ lb bc, 7, 7
+.loop
+ push hl
+ ld c, 7
+.next
+ ld [hli], a
+ dec c
+ jr nz, .next
+ pop hl
+ add hl, de
+ dec b
+ jr nz, .loop
+ ret
+; 89655
+
+Function89655: ; 89655
+ hlcoord 1, 12, AttrMap
+ ld de, SCREEN_WIDTH
+ ld a, 5
+ ld b, 4
+.loop
+ ld c, 18
+ push hl
+.next
+ ld [hli], a
+ dec c
+ jr nz, .next
+ pop hl
+ add hl, de
+ dec b
+ jr nz, .loop
+ ret
+; 8966c
+
+Function8966c: ; 8966c
+ push bc
+ call Function89688
+ hlcoord 4, 0
+ ld c, 8
+ call Function896f5
+ pop bc
+ ret
+; 8967a
+
+
+Function8967a: ; 8967a (22:567a)
+ push bc
+ call Function89688
+ hlcoord 2, 0
+ ld c, 12
+ call Function896f5
+ pop bc
+ ret
+
+Function89688: ; 89688
+ hlcoord 0, 0
+ ld a, 1
+ ld e, SCREEN_WIDTH
+ call Function896e1
+ ld a, 2
+ ld e, SCREEN_WIDTH
+ call Function896eb
+ ld a, 3
+ ld [hli], a
+ ld a, 4
+ ld e, SCREEN_HEIGHT
+ call Function896e1
+ ld a, 6
+ ld [hli], a
+ push bc
+ ld c, 13
+.loop
+ call Function896cb
+ dec c
+ jr z, .done
+ call Function896d6
+ dec c
+ jr nz, .loop
+
+.done
+ pop bc
+ ld a, 25
+ ld [hli], a
+ ld a, 26
+ ld e, SCREEN_HEIGHT
+ call Function896e1
+ ld a, 28
+ ld [hli], a
+ ld a, 2
+ ld e, SCREEN_WIDTH
+ call Function896eb
+ ret
+; 896cb
+
+Function896cb: ; 896cb
+ ld de, SCREEN_WIDTH - 1
+ ld a, 7
+ ld [hl], a
+ add hl, de
+ ld a, 9
+ ld [hli], a
+ ret
+; 896d6
+
+Function896d6: ; 896d6
+ ld de, SCREEN_WIDTH - 1
+ ld a, 10
+ ld [hl], a
+ add hl, de
+ ld a, 11
+ ld [hli], a
+ ret
+; 896e1
+
+Function896e1: ; 896e1
+.loop
+ ld [hli], a
+ inc a
+ dec e
+ ret z
+ ld [hli], a
+ dec a
+ dec e
+ jr nz, .loop
+ ret
+; 896eb
+
+Function896eb: ; 896eb
+.loop
+ ld [hli], a
+ dec a
+ dec e
+ ret z
+ ld [hli], a
+ inc a
+ dec e
+ jr nz, .loop
+ ret
+; 896f5
+
+Function896f5: ; 896f5
+ call Function8971f
+ call Function89736
+rept 2
+ inc hl
+endr
+ ld b, 2
+
+ClearScreenArea: ; 0x896ff
+; clears an area of the screen
+; INPUT:
+; hl = address of upper left corner of the area
+; b = height
+; c = width
+
+ ld a, " " ; blank tile
+ ld de, 20 ; screen width
+.loop
+ push bc
+ push hl
+.innerLoop
+ ld [hli], a
+ dec c
+ jr nz, .innerLoop
+ pop hl
+ pop bc
+ add hl, de
+ dec b
+ jr nz, .loop
+
+ dec hl
+rept 2
+ inc c
+endr
+.asm_89713
+ ld a, $36
+ ld [hli], a
+ dec c
+ ret z
+ ld a, $18
+ ld [hli], a
+ dec c
+ jr nz, .asm_89713 ; 0x8971c $f5
+ ret
+; 0x8971f
+
+Function8971f: ; 8971f
+ ld a, $2c
+ ld [hli], a
+ ld a, $2d
+ ld [hld], a
+ push hl
+ ld de, SCREEN_WIDTH
+ add hl, de
+ ld a, $31
+ ld [hli], a
+ ld a, $32
+ ld [hld], a
+ add hl, de
+ ld a, $35
+ ld [hl], a
+ pop hl
+ ret
+; 89736
+
+Function89736: ; 89736
+ push hl
+rept 2
+ inc hl
+endr
+ ld e, c
+ ld d, $0
+ add hl, de
+ ld a, $2f
+ ld [hli], a
+ ld a, $30
+ ld [hld], a
+ ld de, SCREEN_WIDTH
+ add hl, de
+ ld a, $33
+ ld [hli], a
+ ld a, $34
+ ld [hl], a
+ add hl, de
+ ld a, $1f
+ ld [hl], a
+ pop hl
+ ret
+; 89753
+
+Function89753: ; 89753
+ ld a, $c
+ ld [hl], a
+ xor a
+ call Function89215
+ ret
+; 8975b
+
+Function8975b: ; 8975b
+ ld a, $1d
+ ld [hli], a
+ inc a
+ ld [hli], a
+ ld a, $d
+ ld [hl], a
+rept 2
+ dec hl
+endr
+ ld a, $4
+ ld e, $3
+.asm_89769
+ call Function89215
+ inc hl
+ dec e
+ jr nz, .asm_89769
+ ret
+; 89771
+
+Function89771: ; 89771
+ ld a, $12
+ ld [hl], a
+ ld a, $3
+ call Function89215
+ ret
+; 8977a
+
+Function8977a: ; 8977a
+ ld e, $4
+ ld d, $13
+.asm_8977e
+ ld a, d
+ ld [hl], a
+ ld a, $4
+ call Function89215
+ inc hl
+ inc d
+ dec e
+ jr nz, .asm_8977e
+ ld e, $e
+.asm_8978c
+ ld a, d
+ ld [hl], a
+ xor a
+ call Function89215
+ inc hl
+ dec e
+ jr nz, .asm_8978c
+ ret
+; 89797
+
+Function89797: ; 89797
+ push bc
+ ld a, $e
+ ld [hl], a
+ ld bc, SCREEN_WIDTH
+ add hl, bc
+ ld a, $11
+ ld [hli], a
+ ld a, $10
+ ld c, $8
+.asm_897a6
+ ld [hli], a
+ dec c
+ jr nz, .asm_897a6
+ ld a, $f
+ ld [hl], a
+ pop bc
+ ret
+; 897af
+
+Function897af: ; 897af
+ push bc
+ ld hl, $0010
+ add hl, bc
+ ld d, h
+ ld e, l
+ ld hl, $000c
+ add hl, bc
+ ld b, h
+ ld c, l
+ callba Function4e929
+ ld a, c
+ ld [TrainerClass], a
+ xor a
+ ld [CurPartySpecies], a
+ ld de, VTiles2 tile $37
+ callba GetTrainerPic
+ pop bc
+ ret
+; 897d5
+
+Function897d5: ; 897d5
+ push bc
+ call Function8934a
+ jr nc, .asm_897f3
+ hlcoord 12, 3, AttrMap
+ xor a
+ ld de, SCREEN_WIDTH
+ lb bc, 7, 7
+.asm_897e5
+ push hl
+ ld c, $7
+.asm_897e8
+ ld [hli], a
+ dec c
+ jr nz, .asm_897e8
+ pop hl
+ add hl, de
+ dec b
+ jr nz, .asm_897e5
+ pop bc
+ ret
+
+.asm_897f3
+ ld a, $37
+ ld [$ffad], a
+ hlcoord 12, 3
+ lb bc, 7, 7
+ predef FillBox
+ call Function8963d
+ pop bc
+ ret
+; 89807
+
+
+Function89807: ; 89807 (22:5807)
+ ld hl, MobileAdapterGFX + $200
+ ld a, [PlayerGender]
+ bit 0, a
+ jr z, .asm_89814
+ ld hl, MobileAdapterGFX + $200 + $230
+.asm_89814
+ call DisableLCD
+ ld de, VTiles2 tile $37
+ ld bc, $230
+ ld a, BANK(MobileAdapterGFX)
+ call FarCopyBytes
+ call EnableLCD
+ call DelayFrame
+ ret
+
+Function89829: ; 89829 (22:5829)
+ push bc
+ ld bc, $705
+ ld de, $14
+ ld a, $37
+.asm_89832
+ push bc
+ push hl
+.asm_89834
+ ld [hli], a
+ inc a
+ dec c
+ jr nz, .asm_89834
+ pop hl
+ add hl, de
+ pop bc
+ dec b
+ jr nz, .asm_89832
+ call Function8963d
+ pop bc
+ ret
+
+Function89844: ; 89844
+ call Function89481
+ call Function894bb
+ call Function897af
+ push bc
+ call Function3200
+ call SetPalettes
+ pop bc
+ ret
+; 89856
+
+Function89856: ; 89856
+ push bc
+ call Function891b8
+ pop bc
+ call Function895f2
+ call Function8966c
+ call Function899d3
+ call Function898aa
+ call Function898be
+ call Function898dc
+ call Function898f3
+ push bc
+ ld bc, wd008
+ hlcoord 2, 10
+ call Function89975
+ pop bc
+ call Function897d5
+ ret
+; 8987f
+
+
+Function8987f: ; 8987f (22:587f)
+ call Function891b8
+ call Function895f2
+ call Function8967a
+ call Function899d3
+ hlcoord 5, 1
+ call Function8999c
+ hlcoord 13, 3
+ call Function89829
+ call Function899b2
+ hlcoord 5, 5
+ call Function899c9
+ ld bc, wd008
+ hlcoord 2, 10
+ call Function89975
+ ret
+
+Function898aa: ; 898aa
+ ld a, [MenuSelection]
+ and a
+ ret z
+ push bc
+ hlcoord 6, 1
+ ld de, MenuSelection
+ lb bc, PRINTNUM_LEADINGZEROS | 1, 2
+ call PrintNum
+ pop bc
+ ret
+; 898be
+
+Function898be: ; 898be
+ push bc
+ ld de, DefaultFlypoint
+ ld hl, DefaultFlypoint
+ call Function89331
+ jr nc, .asm_898cd
+ ld de, String_89116
+
+.asm_898cd
+ hlcoord 9, 1
+ ld a, [MenuSelection]
+ and a
+ jr nz, .asm_898d7
+ dec hl
+
+.asm_898d7
+ call PlaceString
+ pop bc
+ ret
+; 898dc
+
+Function898dc: ; 898dc
+ ld hl, $0006
+ add hl, bc
+ push bc
+ ld d, h
+ ld e, l
+ call Function8934a
+ jr nc, .asm_898eb
+ ld de, String_89116
+
+.asm_898eb
+ hlcoord 6, 4
+ call PlaceString
+ pop bc
+ ret
+; 898f3
+
+Function898f3: ; 898f3
+ push bc
+ ld hl, $000c
+ add hl, bc
+ ld d, h
+ ld e, l
+ call Function8934a
+ jr c, .asm_8990a
+ hlcoord 5, 5
+ lb bc, PRINTNUM_LEADINGZEROS | 2, 5
+ call PrintNum
+ jr .asm_89913
+
+.asm_8990a
+ hlcoord 5, 5
+ ld de, String_89116
+ call PlaceString
+
+.asm_89913
+ pop bc
+ ret
+; 89915
+
+Function89915: ; 89915
+ push bc
+ push hl
+ ld de, Unknown_89942
+ ld c, $8
+.asm_8991c
+ ld a, [de]
+ ld [hl], a
+ ld a, $4
+ call Function89215
+ inc hl
+ inc de
+ dec c
+ jr nz, .asm_8991c
+ pop hl
+ ld b, $4
+ ld c, $2b
+ ld a, $8
+ ld de, Unknown_8994a
+.asm_89932
+ push af
+ ld a, [de]
+ cp [hl]
+ jr nz, .asm_8993b
+ call Function8994e
+ inc de
+
+.asm_8993b
+ inc hl
+ pop af
+ dec a
+ jr nz, .asm_89932
+ pop bc
+ ret
+; 89942
+
+Unknown_89942: ; 89942
+ db $24, $25, $26, " ", $27, $28, $29, $2a
+Unknown_8994a: ; 8994a
+ db $24, $27, $29, $ff
+; 8994e
+
+Function8994e: ; 8994e
+ push hl
+ push de
+ ld de, SCREEN_WIDTH
+ ld a, l
+ sub e
+ ld l, a
+ ld a, h
+ sbc d
+ ld h, a
+ ld a, c
+ ld [hl], a
+ ld a, b
+ call Function89215
+ pop de
+ pop hl
+ ret
+; 89962
+
+Function89962: ; 89962
+ push bc
+ ld c, $4
+ ld b, $20
+.asm_89967
+ ld a, b
+ ld [hl], a
+ ld a, $4
+ call Function89215
+ inc hl
+ inc b
+ dec c
+ jr nz, .asm_89967
+ pop bc
+ ret
+; 89975
+
+Function89975: ; 89975
+ push bc
+ ld e, $8
+.asm_89978
+ ld a, [bc]
+ ld d, a
+ call Function8998b
+ swap d
+ inc hl
+ ld a, d
+ call Function8998b
+ inc bc
+ inc hl
+ dec e
+ jr nz, .asm_89978
+ pop bc
+ ret
+; 8998b
+
+Function8998b: ; 8998b
+ push bc
+ and $f
+ cp $a
+ jr nc, .asm_89997
+ ld c, $f6
+ add c
+ jr .asm_89999
+
+.asm_89997
+ ld a, $7f
+
+.asm_89999
+ ld [hl], a
+ pop bc
+ ret
+; 8999c
+
+
+Function8999c: ; 8999c (22:599c)
+ ld de, PlayerName
+ call PlaceString
+ inc bc
+ ld h, b
+ ld l, c
+ ld de, String_899ac
+ call PlaceString
+ ret
+; 899ac (22:59ac)
+
+String_899ac: ; 899ac
+ db "の めいし@"
+; 899b2
+
+Function899b2: ; 899b2 (22:59b2)
+ ld bc, PlayerName
+ call Function89346
+ jr c, .asm_899bf
+ ld de, PlayerName
+ jr .asm_899c2
+.asm_899bf
+ ld de, String_89116
+.asm_899c2
+ hlcoord 6, 4
+ call PlaceString
+ ret
+
+Function899c9: ; 899c9 (22:59c9)
+ ld de, PlayerID
+ lb bc, PRINTNUM_LEADINGZEROS | 2, 5
+ call PrintNum
+ ret
+
+Function899d3: ; 899d3
+ hlcoord 1, 4
+ call Function89753
+ hlcoord 2, 5
+ call Function8975b
+ hlcoord 1, 9
+ call Function89771
+ hlcoord 1, 11
+ call Function8977a
+ hlcoord 1, 5
+ call Function89797
+ hlcoord 2, 4
+ call Function89962
+ hlcoord 2, 9
+ call Function89915
+ ret
+; 899fe
+
+Function899fe: ; 899fe
+ push bc
+ push hl
+ ld hl, $0019
+ add hl, bc
+ ld b, h
+ ld c, l
+ pop hl
+ call Function89a0c
+ pop bc
+ ret
+; 89a0c
+
+Function89a0c: ; 89a0c
+ push hl
+ call Function89363
+ pop hl
+ jr c, .asm_89a1c
+ ld d, h
+ ld e, l
+ callba Function11c08f
+ ret
+
+.asm_89a1c
+ ld de, String_89153
+ call PlaceString
+ ret
+; 89a23
+
+
+Function89a23: ; 89a23 (22:5a23)
+ hlcoord 0, 11
+ ld b, $4
+ ld c, $12
+ call Function8921f
+ ret
+
+Function89a2e: ; 89a2e (22:5a2e)
+ hlcoord 11, 12
+ ld b, $2
+ ld c, $6
+ call TextBox
+ hlcoord 13, 13
+ ld de, String_89a4e
+ call PlaceString
+ hlcoord 13, 14
+ ld de, String_89a53
+ call PlaceString
+ call Function89655
+ ret
+; 89a4e (22:5a4e)
+
+String_89a4e: ; 89a4e
+ db "けってい@"
+; 89a53
+
+String_89a53: ; 89a53
+ db "やめる@"
+; 89a57
+
+Function89a57: ; 89a57
+ call Function354b
+ bit 6, c
+ jr nz, .asm_89a78
+ bit 7, c
+ jr nz, .asm_89a81
+ bit 0, c
+ jr nz, .asm_89a70
+ bit 1, c
+ jr nz, .asm_89a70
+ bit 3, c
+ jr nz, .asm_89a74
+ scf
+ ret
+
+.asm_89a70
+ ld a, $1
+ and a
+ ret
+
+.asm_89a74
+ ld a, $2
+ and a
+ ret
+
+.asm_89a78
+ call Function89a9b
+ call nc, Function89a8a
+ ld a, $0
+ ret
+
+.asm_89a81
+ call Function89a93
+ call nc, Function89a8a
+ ld a, $0
+ ret
+; 89a8a
+
+Function89a8a: ; 89a8a
+ push af
+ ld de, SFX_UNKNOWN_62
+ call PlaySFX
+ pop af
+ ret
+; 89a93
+
+Function89a93: ; 89a93
+ ld d, $28
+ ld e, $1
+ call Function89aa3
+ ret
+; 89a9b
+
+Function89a9b: ; 89a9b
+ ld d, $1
+ ld e, $ff
+ call Function89aa3
+ ret
+; 89aa3
+
+Function89aa3: ; 89aa3
+ ld a, [MenuSelection]
+ ld c, a
+ push bc
+.asm_89aa8
+ ld a, [MenuSelection]
+ cp d
+ jr z, .asm_89ac0
+ add e
+ jr nz, .asm_89ab2
+ inc a
+
+.asm_89ab2
+ ld [MenuSelection], a
+ call Function89ac7
+ jr nc, .asm_89aa8
+ call Function89ae6
+ pop bc
+ and a
+ ret
+
+.asm_89ac0
+ pop bc
+ ld a, c
+ ld [MenuSelection], a
+ scf
+ ret
+; 89ac7
+
+Function89ac7: ; 89ac7
+ call OpenSRAMBank4
+ call Function8931b
+ call Function89ad4
+ call CloseSRAM
+ ret
+; 89ad4
+
+Function89ad4: ; 89ad4
+ push de
+ call Function8932d
+ jr c, .asm_89ae3
+ ld hl, $0011
+ add hl, bc
+ call Function89b45
+ jr c, .asm_89ae4
+
+.asm_89ae3
+ and a
+
+.asm_89ae4
+ pop de
+ ret
+; 89ae6
+
+Function89ae6: ; 89ae6
+ ld hl, wd031
+ xor a
+ ld [hl], a
+ ld a, [MenuSelection]
+.asm_89aee
+ cp $6
+ jr c, .asm_89afc
+ sub $5
+ ld c, a
+ ld a, [hl]
+ add $5
+ ld [hl], a
+ ld a, c
+ jr .asm_89aee
+
+.asm_89afc
+ ld [wd030], a
+ ret
+; 89b00
+
+
+Function89b00: ; 89b00 (22:5b00)
+ callba Function49351
+ ret
+; 89b07 (22:5b07)
+
+Function89b07: ; 89b07
+ call Function8923c
+ call DelayFrame
+ callba Function4a3a7
+ ret
+; 89b14
+
+Function89b14: ; 89b14
+ call WhiteBGMap
+ call Function89b07
+ call Function89b00
+ ret
+; 89b1e
+
+Function89b1e: ; 89b1e (22:5b1e)
+ callba Function4a485
+ call Function89b00
+ ret
+
+Function89b28: ; 89b28 (22:5b28)
+ call Function891de
+ call WhiteBGMap
+ call Function893e2
+ call Call_ExitMenu
+ call Function891ab
+ call SetPalettes
+ ret
+
+Function89b3b: ; 89b3b (22:5b3b)
+ call Function8923c
+ callba Function48cda
+ ret
+
+Function89b45: ; 89b45
+ push hl
+ push bc
+ ld c, $10
+ ld e, $0
+.asm_89b4b
+ ld a, [hli]
+ ld b, a
+ and $f
+ cp $a
+ jr c, .asm_89b5a
+ ld a, c
+ cp $b
+ jr nc, .asm_89b74
+ jr .asm_89b71
+
+.asm_89b5a
+ dec c
+ swap b
+ inc e
+ ld a, b
+ and $f
+ cp $a
+ jr c, .asm_89b6c
+ ld a, c
+ cp $b
+ jr nc, .asm_89b74
+ jr .asm_89b71
+
+.asm_89b6c
+ inc e
+ dec c
+ jr nz, .asm_89b4b
+ dec e
+
+.asm_89b71
+ scf
+ jr .asm_89b75
+
+.asm_89b74
+ and a
+
+.asm_89b75
+ pop bc
+ pop hl
+ ret
+; 89b78
+
+
+Function89b78: ; 89b78 (22:5b78)
+ push bc
+ ld a, [wd010]
+ cp $10
+ jr c, .asm_89b8c
+ ld a, e
+ and a
+ jr z, .asm_89b89
+ ld c, e
+.asm_89b85
+ inc hl
+ dec c
+ jr nz, .asm_89b85
+.asm_89b89
+ ld a, $7f
+ ld [hl], a
+.asm_89b8c
+ ld a, [wd010]
+ inc a
+ and $1f
+ ld [wd010], a
+ pop bc
+ ret
+
+Function89b97: ; 89b97 (22:5b97)
+ call Function89c34
+ jr c, .asm_89ba0
+ call Function89448
+ ret
+.asm_89ba0
+ ld a, [wd011]
+ ld hl, Unknown_89bd8
+ and a
+ jr z, .asm_89bae
+.asm_89ba9
+rept 2
+ inc hl
+endr
+ dec a
+ jr nz, .asm_89ba9
+.asm_89bae
+ ld a, [hli]
+ ld h, [hl]
+ ld l, a
+ ld de, Sprites
+.asm_89bb4
+ ld a, [hli]
+ cp $ff
+ ret z
+ ld c, a
+ ld b, $0
+.asm_89bbb
+ push hl
+ ld a, [hli]
+ ld [de], a
+ inc de
+ ld a, [hli]
+ add b
+ ld [de], a
+ inc de
+ ld a, $8
+ add b
+ ld b, a
+ ld a, [hli]
+ ld [de], a
+ inc de
+ ld a, [hli]
+ ld [de], a
+ inc de
+ pop hl
+ dec c
+ jr nz, .asm_89bbb
+ ld b, $0
+ ld c, $4
+ add hl, bc
+ jr .asm_89bb4
+; 89bd8 (22:5bd8)
+
+Unknown_89bd8: ; 89bd8
+ dw Unknown_89be0
+ dw Unknown_89bf5
+ dw Unknown_89c0a
+ dw Unknown_89c1f
+; 89be0
+
+Unknown_89be0: ; 89be0
+ db $01, $12, $4e, $01, $00
+ db $01, $19, $4e, $01, $40
+ db $01, $12, $72, $01, $20
+ db $01, $19, $72, $01, $60
+ db $ff
+
+Unknown_89bf5: ; 89bf5
+ db $01, $60, $16, $01, $00
+ db $01, $62, $16, $01, $40
+ db $01, $60, $92, $01, $20
+ db $01, $62, $92, $01, $60
+ db $ff
+
+Unknown_89c0a: ; 89c0a
+ db $01, $78, $66, $01, $00
+ db $01, $78, $66, $01, $40
+ db $01, $78, $92, $01, $20
+ db $01, $78, $92, $01, $60
+ db $ff
+
+Unknown_89c1f: ; 89c1f
+ db $01, $80, $66, $01, $00
+ db $01, $80, $66, $01, $40
+ db $01, $80, $92, $01, $20
+ db $01, $80, $92, $01, $60
+ db $ff
+; 89c34
+
+Function89c34: ; 89c34 (22:5c34)
+ push bc
+ ld a, [wd012]
+ ld c, a
+ inc a
+ and $f
+ ld [wd012], a
+ ld a, c
+ cp $8
+ pop bc
+ ret
+
+Function89c44: ; 89c44 (22:5c44)
+ call Function89c34
+ jr c, .asm_89c4f
+ push de
+ call Function89448
+ pop de
+ ret
+.asm_89c4f
+ ld hl, Sprites
+ push de
+ ld a, b
+ ld [hli], a
+ ld d, $8
+ ld a, e
+ and a
+ ld a, c
+ jr z, .asm_89c60
+.asm_89c5c
+ add d
+ dec e
+ jr nz, .asm_89c5c
+.asm_89c60
+ pop de
+ ld [hli], a
+ ld a, d
+ ld [hli], a
+ xor a
+ ld [hli], a
+ ret
+
+Function89c67: ; 89c67 (22:5c67)
+ call Function354b
+ ld b, $0
+ bit 0, c
+ jr z, .asm_89c74
+ ld b, $1
+ and a
+ ret
+.asm_89c74
+ bit 1, c
+ jr z, .asm_89c7a
+ scf
+ ret
+.asm_89c7a
+ xor a
+ bit 6, c
+ jr z, .asm_89c81
+ ld a, $1
+.asm_89c81
+ bit 7, c
+ jr z, .asm_89c87
+ ld a, $2
+.asm_89c87
+ bit 5, c
+ jr z, .asm_89c8d
+ ld a, $3
+.asm_89c8d
+ bit 4, c
+ jr z, .asm_89c93
+ ld a, $4
+.asm_89c93
+ and a
+ ret z
+ dec a
+ ld c, a
+ ld d, $0
+ ld hl, Unknown_89cbf
+ ld a, [wd02f]
+ and a
+ jr z, .asm_89ca5
+ ld hl, Unknown_89ccf
+.asm_89ca5
+ ld a, [wd011]
+ and a
+ jr z, .asm_89cb1
+ ld e, $4
+.asm_89cad
+ add hl, de
+ dec a
+ jr nz, .asm_89cad
+.asm_89cb1
+ ld e, c
+ add hl, de
+ ld a, [hl]
+ and a
+ ret z
+ dec a
+ ld [wd011], a
+ xor a
+ ld [wd012], a
+ ret
+; 89cbf (22:5cbf)
+
+Unknown_89cbf: ; 89cbf
+ db 0, 2, 0, 0
+ db 1, 3, 0, 0
+ db 2, 4, 0, 0
+ db 3, 0, 0, 0
+
+Unknown_89ccf: ; 89ccf
+ db 0, 0, 0, 0
+ db 0, 3, 0, 0
+ db 2, 4, 0, 0
+ db 3, 0, 0, 0
+; 89cdf
+
+Function89cdf: ; 89cdf (22:5cdf)
+ ld a, $10
+ add b
+ ld b, a
+ ld a, $8
+ add c
+ ld c, a
+ ld e, $2
+ ld a, $2
+ ld hl, Sprites
+.asm_89cee
+ push af
+ push bc
+ ld d, $4
+.asm_89cf2
+ ld a, b
+ ld [hli], a
+ ld a, c
+ ld [hli], a
+ ld a, e
+ ld [hli], a
+ ld a, $1
+ ld [hli], a
+ ld a, $8
+ add c
+ ld c, a
+ inc e
+ dec d
+ jr nz, .asm_89cf2
+ pop bc
+ ld a, $8
+ add b
+ ld b, a
+ pop af
+ dec a
+ jr nz, .asm_89cee
+ ret
+
+Function89d0d: ; 89d0d (22:5d0d)
+ call Function8923c
+ ld a, [rSVBK] ; $ff00+$70
+ push af
+ ld a, $5
+ ld [rSVBK], a ; $ff00+$70
+ ld c, $8
+ ld de, Unkn1Pals
+.asm_89d1c
+ push bc
+ ld hl, Palette_89d4e
+ ld bc, $8
+ call CopyBytes
+ pop bc
+ dec c
+ jr nz, .asm_89d1c
+ ld hl, Palette_89d56
+ ld de, wd010
+ ld bc, $8
+ call CopyBytes
+ pop af
+ ld [rSVBK], a ; $ff00+$70
+ call SetPalettes
+ callba Function845db
+ call Function89240
+ ld c, $18
+ call DelayFrames
+ call RestartMapMusic
+ ret
+; 89d4e (22:5d4e)
+
+Palette_89d4e: ; 89d4e
+ RGB 31, 31, 31
+ RGB 19, 19, 19
+ RGB 15, 15, 15
+ RGB 00, 00, 00
+; 89d56
+
+Palette_89d56: ; 89d56
+ RGB 31, 31, 31
+ RGB 19, 19, 19
+ RGB 19, 19, 19
+ RGB 00, 00, 00
+; 89d5e
+
+Function89d5e: ; 89d5e (22:5d5e)
+ push af
+ call CopyMenuDataHeader
+ pop af
+ ld [wPocketCursorBuffer], a
+ call Function8923c
+ call Function1c89
+ call Function1c10
+ ld hl, wcfa5
+ set 7, [hl]
+ ret
+
+Function89d75: ; 89d75 (22:5d75)
+ push hl
+ call Function8923c
+ call _hl_
+ callba Function104148
+ pop hl
+ jr asm_89d90
+
+Function89d85: ; 89d85 (22:5d85)
+ push hl
+ call Function8923c
+ call _hl_
+ call Function3238
+ pop hl
+
+asm_89d90: ; 89d90 (22:5d90)
+ call Function8923c
+ push hl
+ call _hl_
+ call Function89dab
+ ld a, [wcfa9]
+ push af
+ call Function891ab
+ pop af
+ pop hl
+ jr c, .asm_89da9
+ jr z, asm_89d90
+ scf
+ ret
+.asm_89da9
+ and a
+ ret
+
+Function89dab: ; 89dab (22:5dab)
+ call Function8923c
+ callba Function241ba
+ call Function8923c
+ ld a, c
+ ld hl, wcfa8
+ and [hl]
+ ret z
+ bit 0, a
+ jr nz, .asm_89dc7
+ bit 1, a
+ jr nz, .asm_89dd9
+ xor a
+ ret
+.asm_89dc7
+ call PlayClickSFX
+ ld a, [wcfa3]
+ ld c, a
+ ld a, [wcfa9]
+ cp c
+ jr z, .asm_89dd9
+ call Function1bee
+ scf
+ ret
+.asm_89dd9
+ call PlayClickSFX
+ ld a, $1
+ and a
+ ret
+
+Function89de0: ; 89de0 (22:5de0)
+ call ClearSprites
+ call Function89e0a
+ jr c, .asm_89e00
+ ld c, $1
+.asm_89dea
+ call Function8a31c
+ jr z, .asm_89dfd
+ ld a, [wcfa9]
+ ld c, a
+ push bc
+ ld hl, Jumptable_89e04
+ ld a, e
+ dec a
+ rst JumpTable
+ pop bc
+ jr .asm_89dea
+.asm_89dfd
+ call Function891fe
+.asm_89e00
+ call Function8917a
+ ret
+
+Jumptable_89e04: ; 89e04 (22:5e04)
+ dw Function8a62c
+ dw Function8a999
+ dw Function8ab93
+
+
+Function89e0a: ; 89e0a (22:5e0a)
+ call OpenSRAMBank4
+ call Function8b3b0
+ call CloseSRAM
+ ld hl, Jumptable_89e18
+ rst JumpTable
+ ret
+
+Jumptable_89e18: ; 89e18 (22:5e18)
+ dw Function89e1e
+ dw Function8a116
+ dw Function8a2aa
+
+
+Function89e1e: ; 89e1e (22:5e1e)
+ call OpenSRAMBank4
+ ld bc, $a037
+ call Function8b36c
+ call CloseSRAM
+ xor a
+ ld [wd02d], a
+
+asm_89e2e: ; 89e2e (22:5e2e)
+ ld a, [wd02d]
+ ld hl, Jumptable_89e3c
+ rst JumpTable
+ ret
+
+Function89e36: ; 89e36 (22:5e36)
+ ld hl, wd02d
+ inc [hl]
+ jr asm_89e2e
+
+Jumptable_89e3c: ; 89e3c (22:5e3c)
+ dw Function89e6f
+ dw Function89fed
+ dw Function89ff6
+ dw Function8a03d
+ dw Function89eb9
+ dw Function89efd
+ dw Function89fce
+ dw Function8a04c
+ dw Function8a055
+ dw Function8a0e6
+ dw Function8a0ec
+ dw Function8a0f5
+ dw Function89e58
+ dw Function89e68
+
+
+Function89e58: ; 89e58 (22:5e58)
+ ld a, $1
+ call Function8a2fe
+ call Function891fe
+ call Function893e2
+ call Function89168
+ and a
+ ret
+
+Function89e68: ; 89e68 (22:5e68)
+ call Function891fe
+ ld a, $1
+ scf
+ ret
+
+Function89e6f: ; 89e6f (22:5e6f)
+ call Function891de
+ call Function89245
+ call Function89ee1
+ call Function89e9a
+ hlcoord 7, 4
+ call Function8a58d
+ ld a, $5
+ hlcoord 7, 4, AttrMap
+ call Function8a5a3
+ ld a, $6
+ hlcoord 10, 4, AttrMap
+ call Function8a5a3
+ call Function891ab
+ call SetPalettes
+ jp Function89e36
+
+Function89e9a: ; 89e9a (22:5e9a)
+ ld a, [rSVBK] ; $ff00+$70
+ push af
+ ld a, $5
+ ld [rSVBK], a ; $ff00+$70
+ ld hl, Palette_89eb1
+ ld de, wd028
+ ld bc, $8
+ call CopyBytes
+ pop af
+ ld [rSVBK], a ; $ff00+$70
+ ret
+; 89eb1 (22:5eb1)
+
+Palette_89eb1: ; 89eb1
+ RGB 31, 31, 31
+ RGB 31, 31, 31
+ RGB 27, 19, 00
+ RGB 00, 00, 00
+; 89eb9
+
+Function89eb9: ; 89eb9 (22:5eb9)
+ call Function891fe
+ call Function89ee1
+ call Function89e9a
+ hlcoord 7, 4
+ call Function8a58d
+ ld a, $5
+ hlcoord 7, 4, AttrMap
+ call Function8a5a3
+ ld a, $6
+ hlcoord 10, 4, AttrMap
+ call Function8a5a3
+ call Function891ab
+ call SetPalettes
+ jp Function89e36
+
+Function89ee1: ; 89ee1 (22:5ee1)
+ call WhiteBGMap
+ call Function893e2
+ call Function8923c
+ callba Function4a3a7
+ callba Function49384
+ hlcoord 1, 0
+ call Function8a53d
+ ret
+
+Function89efd: ; 89efd (22:5efd)
+ ld hl, wd012
+ ld a, $ff
+ ld [hli], a
+ xor a
+rept 4
+ ld [hli], a
+endr
+ ld [hl], a
+.asm_89f09
+ ld hl, wd012
+ inc [hl]
+ ld a, [hli]
+ and $3
+ jr nz, .asm_89f2e
+ ld a, [hl]
+ cp $4
+ jr nc, .asm_89f2e
+ ld b, $32
+ inc [hl]
+ ld a, [hl]
+ dec a
+ jr z, .asm_89f26
+ ld c, a
+.asm_89f1f
+ ld a, $b
+ add b
+ ld b, a
+ dec c
+ jr nz, .asm_89f1f
+.asm_89f26
+ ld c, $e8
+ ld a, [wd013]
+ call Function89fa5
+.asm_89f2e
+ ld a, [wd013]
+ and a
+ jr z, .asm_89f58
+.asm_89f34
+ call Function89f6a
+ ld e, a
+ ld a, c
+ cp $a8
+ jr nc, .asm_89f4d
+ cp $46
+ jr c, .asm_89f4d
+ ld d, $0
+ dec e
+ ld hl, wd014
+ add hl, de
+ set 0, [hl]
+ inc e
+ jr .asm_89f51
+.asm_89f4d
+ ld a, $2
+ add c
+ ld c, a
+.asm_89f51
+ ld a, e
+ call Function89f77
+ dec a
+ jr nz, .asm_89f34
+.asm_89f58
+ call DelayFrame
+ ld hl, wd014
+ ld c, $4
+.asm_89f60
+ ld a, [hli]
+ and a
+ jr z, .asm_89f09
+ dec c
+ jr nz, .asm_89f60
+ jp Function89e36
+
+Function89f6a: ; 89f6a (22:5f6a)
+ push af
+ ld de, $10
+ call Function89f9a
+ ld a, [hli]
+ ld b, a
+ ld a, [hl]
+ ld c, a
+ pop af
+ ret
+
+Function89f77: ; 89f77 (22:5f77)
+ push af
+ ld de, $10
+ call Function89f9a
+ ld d, $2
+.asm_89f80
+ push bc
+ ld e, $2
+.asm_89f83
+ ld a, b
+ ld [hli], a
+ ld a, c
+ ld [hli], a
+rept 2
+ inc hl
+endr
+ ld a, $8
+ add c
+ ld c, a
+ dec e
+ jr nz, .asm_89f83
+ pop bc
+ ld a, $8
+ add b
+ ld b, a
+ dec d
+ jr nz, .asm_89f80
+ pop af
+ ret
+
+Function89f9a: ; 89f9a (22:5f9a)
+ dec a
+ ld hl, Sprites
+ and a
+ ret z
+.asm_89fa0
+ add hl, de
+ dec a
+ jr nz, .asm_89fa0
+ ret
+
+Function89fa5: ; 89fa5 (22:5fa5)
+ ld de, $10
+ call Function89f9a
+ ld e, $2
+ ld d, $a
+.asm_89faf
+ push bc
+ ld a, $2
+.asm_89fb2
+ push af
+ ld a, b
+ ld [hli], a
+ ld a, c
+ ld [hli], a
+ ld a, d
+ inc d
+ ld [hli], a
+ ld a, $1
+ ld [hli], a
+ ld a, $8
+ add c
+ ld c, a
+ pop af
+ dec a
+ jr nz, .asm_89fb2
+ pop bc
+ ld a, $8
+ add b
+ ld b, a
+ dec e
+ jr nz, .asm_89faf
+ ret
+
+Function89fce: ; 89fce (22:5fce)
+ call Function8a5b6
+ ld a, $5
+ hlcoord 7, 4, AttrMap
+ call Function8a5a3
+ ld a, $6
+ hlcoord 10, 4, AttrMap
+ call Function8a5a3
+ call Function89448
+ call SetPalettes
+ call Function891ab
+ jp Function89e36
+
+Function89fed: ; 89fed (22:5fed)
+ ld hl, UnknownText_0x8a102
+ call PrintText
+ jp Function89e36
+
+Function89ff6: ; 89ff6 (22:5ff6)
+ call Function891fe
+ call WhiteBGMap
+ call Function893cc
+ call Function89807
+ call Function89492
+ call Function894ca
+ call OpenSRAMBank4
+ ld hl, $a603
+ ld a, -1
+ ld bc, 8
+ call ByteFill
+ ld hl, $a603
+ ld de, wd008
+ call Function89381
+ call CloseSRAM
+ call Function8987f
+ call OpenSRAMBank4
+ hlcoord 1, 13
+ ld bc, $a007
+ call Function89a0c
+ call CloseSRAM
+ call Function891ab
+ call Function89235
+ jp Function89e36
+
+Function8a03d: ; 8a03d (22:603d)
+ ld hl, UnknownText_0x8a107
+ call Function89209
+ call PrintText
+ call Function8920f
+ jp Function89e36
+
+Function8a04c: ; 8a04c (22:604c)
+ ld hl, UnknownText_0x8a10c
+ call PrintText
+ jp Function89e36
+
+Function8a055: ; 8a055 (22:6055)
+ ld c, $7
+ ld b, $4
+.asm_8a059
+ call Function8a0a1
+ inc c
+ call Function8a0c9
+ push bc
+ call Function8a58d
+ pop bc
+ call Function8a0de
+ push bc
+ push hl
+ ld a, $5
+ call Function8a5a3
+ pop hl
+rept 3
+ inc hl
+endr
+ ld a, $6
+ call Function8a5a3
+ call Function3238
+ pop bc
+ ld a, c
+ cp $b
+ jr nz, .asm_8a059
+ call Function8a0a1
+ hlcoord 12, 4
+ call Function8a58d
+ ld a, $5
+ hlcoord 12, 4, AttrMap
+ call Function8a5a3
+ pop hl
+ ld a, $6
+ hlcoord 15, 4, AttrMap
+ call Function8a5a3
+ call Function3238
+ jp Function89e36
+
+Function8a0a1: ; 8a0a1 (22:60a1)
+ call Function8923c
+ push bc
+ call Function8a0c9
+ ld e, $6
+.asm_8a0aa
+ push hl
+ ld bc, $6
+ add hl, bc
+ ld d, [hl]
+ call Function8a0c1
+ pop hl
+ ld [hl], d
+ call Function89215
+ ld bc, $14
+ add hl, bc
+ dec e
+ jr nz, .asm_8a0aa
+ pop bc
+ ret
+
+Function8a0c1: ; 8a0c1 (22:60c1)
+ push hl
+ ld bc, AttrMap - TileMap
+ add hl, bc
+ ld a, [hl]
+ pop hl
+ ret
+
+Function8a0c9: ; 8a0c9 (22:60c9)
+ push bc
+ hlcoord 0, 0
+ ld de, $14
+ ld a, b
+ and a
+ jr z, .asm_8a0d8
+.asm_8a0d4
+ add hl, de
+ dec b
+ jr nz, .asm_8a0d4
+.asm_8a0d8
+ ld d, $0
+ ld e, c
+ add hl, de
+ pop bc
+ ret
+
+Function8a0de: ; 8a0de (22:60de)
+ call Function8a0c9
+ ld de, AttrMap - TileMap
+ add hl, de
+ ret
+
+Function8a0e6: ; 8a0e6 (22:60e6)
+ call Function8b539
+ jp Function89e36
+
+Function8a0ec: ; 8a0ec (22:60ec)
+ ld hl, UnknownText_0x8a111
+ call PrintText
+ jp Function89e36
+
+Function8a0f5: ; 8a0f5 (22:60f5)
+ call Function8b555
+ jp nc, Function8a0ff
+ ld hl, wd02d
+ inc [hl]
+
+Function8a0ff: ; 8a0ff (22:60ff)
+ jp Function89e36
+; 8a102 (22:6102)
+
+UnknownText_0x8a102: ; 0x8a102
+ ; The CARD FOLDER stores your and your friends' CARDS. A CARD contains information like the person's name, phone number and profile.
+ text_jump UnknownText_0x1c5238
+ db "@"
+; 0x8a107
+
+UnknownText_0x8a107: ; 0x8a107
+ ; This is your CARD. Once you've entered your phone number, you can trade CARDS with your friends.
+ text_jump UnknownText_0x1c52bc
+ db "@"
+; 0x8a10c
+
+UnknownText_0x8a10c: ; 0x8a10c
+ ; If you have your friend's CARD, you can use it to make a call from a mobile phone on the 2nd floor of a #MON CENTER.
+ text_jump UnknownText_0x1c531e
+ db "@"
+; 0x8a111
+
+UnknownText_0x8a111: ; 0x8a111
+ ; To safely store your collection of CARDS, you must set a PASSCODE for your CARD FOLDER.
+ text_jump UnknownText_0x1c5394
+ db "@"
+; 0x8a116
+
+Function8a116: ; 8a116 (22:6116)
+ ld a, $1
+ ld [wd030], a
+ ld hl, MenuDataHeader_0x8a176
+ call LoadMenuDataHeader
+.asm_8a121
+ call Function8923c
+ call Function8a17b
+ jr c, .asm_8a16b
+ ld a, [wcfa9]
+ ld [wd030], a
+ dec d
+ jr z, .asm_8a140
+ call Function8a20d
+ jr c, .asm_8a121
+ xor a
+ call Function8a2fe
+ call Function8916e
+ jr .asm_8a16b
+.asm_8a140
+ call Function89174
+ jr nz, .asm_8a14c
+ call Function8a241
+ jr c, .asm_8a121
+ jr .asm_8a15a
+.asm_8a14c
+ call WaitSFX
+ ld de, SFX_TWINKLE
+ call PlaySFX
+ ld c, $10
+ call DelayFrames
+.asm_8a15a
+ call ExitMenu
+ call Function891de
+ call Function893e2
+ call Function89245
+ call Function89168
+ and a
+ ret
+.asm_8a16b
+ call Function89209
+ call WriteBackup
+ call Function8920f
+ scf
+ ret
+; 8a176 (22:6176)
+
+MenuDataHeader_0x8a176: ; 0x8a176
+ db $40 ; flags
+ db 00, 14 ; start coords
+ db 06, 19 ; end coords
+; 8a17b
+
+Function8a17b: ; 8a17b (22:617b)
+ decoord 14, 0
+ ld b, $5
+ ld c, $4
+ call Function89b3b
+ ld hl, MenuDataHeader_0x8a19a
+ ld a, [wd030]
+ call Function89d5e
+ ld hl, Function8a1b0
+ call Function89d75
+ jr nc, .asm_8a198
+ ld a, $0
+.asm_8a198
+ ld d, a
+ ret
+; 8a19a (22:619a)
+
+MenuDataHeader_0x8a19a: ; 0x8a19a
+ db $40 ; flags
+ db 00, 14 ; start coords
+ db 06, 19 ; end coords
+ dw MenuData2_0x8a1a2
+ db 1 ; default option
+; 0x8a1a2
+
+MenuData2_0x8a1a2: ; 0x8a1a2
+ db $e0 ; flags
+ db 3 ; items
+ db "ひらく@"
+ db "すてる@"
+ db "もどる@"
+; 0x8a1b0
+
+Function8a1b0: ; 8a1b0
+ hlcoord 0, 12
+ ld b, $4
+ ld c, $12
+ call TextBox
+ hlcoord 1, 14
+ ld a, [wcfa9]
+ ld de, Strings_8a1cc
+ dec a
+ ld c, a
+ call Function8919e
+ call PlaceString
+ ret
+; 8a1cc
+
+Strings_8a1cc: ; 8a1cc
+ db "めいし", $25, "せいりと へんしゅうを"
+ next "おこないます"
+ db "@"
+
+ db "めいしフ,ルダー", $25, "めいしと"
+ next "あんしょうばんごう", $1f, "けします"
+ db "@"
+
+ db "まえ", $25, "がめん", $1d, "もどります"
+ db "@"
+; 8a20d
+
+
+Function8a20d: ; 8a20d (22:620d)
+ ld hl, UnknownText_0x8a232
+ call PrintText
+ ld a, $2
+ call Function89259
+ ret c
+ ld hl, UnknownText_0x8a237
+ call PrintText
+ ld a, $2
+ call Function89259
+ ret c
+ xor a
+ call Function8a2fe
+ ld hl, UnknownText_0x8a23c
+ call PrintText
+ xor a
+ and a
+ ret
+; 8a232 (22:6232)
+
+UnknownText_0x8a232: ; 0x8a232
+ ; If the CARD FOLDER is deleted, all its CARDS and the PASSCODE will also be deleted. Beware--a deleted CARD FOLDER can't be restored. Want to delete your CARD FOLDER?
+ text_jump UnknownText_0x1c53ee
+ db "@"
+; 0x8a237
+
+UnknownText_0x8a237: ; 0x8a237
+ ; Are you sure you want to delete it?
+ text_jump UnknownText_0x1c5494
+ db "@"
+; 0x8a23c
+
+UnknownText_0x8a23c: ; 0x8a23c
+ ; The CARD FOLDER has been deleted.
+ text_jump UnknownText_0x1c54b9
+ db "@"
+; 0x8a241
+
+Function8a241: ; 8a241 (22:6241)
+ call LoadMenuDataHeader_0x1d75
+ call Function891fe
+ call Function8a262
+ jr nc, .asm_8a254
+ call Function891fe
+ call Function89b28
+ scf
+ ret
+.asm_8a254
+ call Function891de
+ call WhiteBGMap
+ call Call_ExitMenu
+ call Function891de
+ and a
+ ret
+
+Function8a262: ; 8a262 (22:6262)
+ call WhiteBGMap
+ call Function893e2
+ call Function8923c
+ callba Function4a3a7
+ callba Function49384
+ hlcoord 1, 0
+ call Function8a53d
+ hlcoord 12, 4
+ call Function8a58d
+ ld a, $5
+ hlcoord 12, 4, AttrMap
+ call Function8a5a3
+ ld a, $6
+ hlcoord 15, 4, AttrMap
+ call Function8a5a3
+ xor a
+ ld [wd02e], a
+ ld bc, wd013
+ call Function8b36c
+ call Function8b493
+ call Function891ab
+ call SetPalettes
+ call Function8b5e7
+ ret
+
+Function8a2aa: ; 8a2aa (22:62aa)
+ ld hl, MenuDataHeader_0x8a2ef
+ call LoadMenuDataHeader
+ ld hl, UnknownText_0x8a2f4
+ call PrintText
+ ld a, $1
+ call Function89259
+ jr nc, .asm_8a2cf
+ ld hl, UnknownText_0x8a2f9
+ call PrintText
+ ld a, $2
+ call Function89259
+ jr c, .asm_8a2ea
+ call Function8a20d
+ jr .asm_8a2ea
+.asm_8a2cf
+ call ExitMenu
+ call Function8a241
+ jr c, .asm_8a2ed
+ ld a, $1
+ call Function8a313
+ call CloseSRAM
+ call Function891de
+ call Function89245
+ call Function89168
+ and a
+ ret
+.asm_8a2ea
+ call WriteBackup
+.asm_8a2ed
+ scf
+ ret
+; 8a2ef (22:62ef)
+
+MenuDataHeader_0x8a2ef: ; 0x8a2ef
+ db $40 ; flags
+ db 12, 00 ; start coords
+ db 17, 19 ; end coords
+; 8a2f4
+
+UnknownText_0x8a2f4: ; 0x8a2f4
+ ; There is an older CARD FOLDER from a previous journey. Do you want to open it?
+ text_jump UnknownText_0x1c54dd
+ db "@"
+; 0x8a2f9
+
+UnknownText_0x8a2f9: ; 0x8a2f9
+ ; Delete the old CARD FOLDER?
+ text_jump UnknownText_0x1c552d
+ db "@"
+; 0x8a2fe
+
+Function8a2fe: ; 8a2fe (22:62fe)
+ call Function8a313
+ call Function89305
+ ld hl, $a603
+ ld bc, $8
+ ld a, -1
+ call ByteFill
+ call CloseSRAM
+ ret
+
+Function8a313: ; 8a313 (22:6313)
+ ld c, a
+ call OpenSRAMBank4
+ ld a, c
+ ld [$a60b], a
+ ret
+
+Function8a31c: ; 8a31c (22:631c)
+ push bc
+ call Function8923c
+ callba Function4a3a7
+ callba Function49384
+ hlcoord 1, 0
+ call Function8a53d
+ hlcoord 12, 4
+ call Function8a58d
+ call Function8a3b2
+ pop bc
+ ld a, c
+ ld [wPocketCursorBuffer], a
+ ld [MenuSelection], a
+ call Function1c89
+ call Function1c10
+ ld hl, wcfa5
+ set 7, [hl]
+.asm_8a34e
+ call Function8a3a2
+ call Function8923c
+ call Function8a453
+ call Function8a4d3
+ call Function8a4fc
+ call Function891ab
+ call SetPalettes
+ call Function8a383
+ jr c, .asm_8a370
+ jr z, .asm_8a34e
+.asm_8a36a
+ call Function89448
+ xor a
+ ld e, a
+ ret
+.asm_8a370
+ call Function89448
+ call Function1bee
+ call Function8a3a2
+ ld a, [MenuSelection]
+ cp $ff
+ jr z, .asm_8a36a
+ ld e, a
+ and a
+ ret
+
+Function8a383: ; 8a383 (22:6383)
+ callba Function241ba
+ ld a, c
+ ld hl, wcfa8
+ and [hl]
+ ret z
+ bit 0, a
+ jr nz, .asm_8a399
+ bit 1, a
+ jr nz, .asm_8a39e
+ xor a
+ ret
+.asm_8a399
+ call PlayClickSFX
+ scf
+ ret
+.asm_8a39e
+ call PlayClickSFX
+ ret
+
+Function8a3a2: ; 8a3a2 (22:63a2)
+ ld a, [wcfa9]
+ dec a
+ ld hl, DefaultFlypoint
+ ld e, a
+ ld d, $0
+ add hl, de
+ ld a, [hl]
+ ld [MenuSelection], a
+ ret
+
+Function8a3b2: ; 8a3b2 (22:63b2)
+ ld a, $1
+ ld [MenuSelection], a
+ call Function8a4fc
+ call Function8a3df
+ jr nc, .asm_8a3ce
+ decoord 0, 2
+ ld b, $6
+ ld c, $9
+ call Function89b3b
+ ld hl, MenuDataHeader_0x8a435
+ jr .asm_8a3db
+.asm_8a3ce
+ decoord 0, 2
+ ld b, $8
+ ld c, $9
+ call Function89b3b
+ ld hl, MenuDataHeader_0x8a40f
+.asm_8a3db
+ call CopyMenuDataHeader
+ ret
+
+Function8a3df: ; 8a3df (22:63df)
+ call OpenSRAMBank4
+ ld hl, $a603
+ call Function89b45
+ call CloseSRAM
+ ld hl, DefaultFlypoint
+ jr c, .asm_8a3f8
+ ld de, Unknown_8a408
+ call Function8a400
+ scf
+ ret
+.asm_8a3f8
+ ld de, Unknown_8a40b
+ call Function8a400
+ and a
+ ret
+
+Function8a400: ; 8a400 (22:6400)
+ ld a, [de]
+ inc de
+ ld [hli], a
+ cp $ff
+ jr nz, Function8a400
+ ret
+; 8a408 (22:6408)
+
+Unknown_8a408: db 1, 2, -1
+Unknown_8a40b: db 1, 2, 3, -1
+
+MenuDataHeader_0x8a40f: ; 0x8a40f
+ db $40 ; flags
+ db 02, 00 ; start coords
+ db 11, 10 ; end coords
+ dw MenuData2_0x8a417
+ db 1 ; default option
+; 0x8a417
+
+MenuData2_0x8a417: ; 0x8a417
+ db $a0 ; flags
+ db 4 ; items
+ db "めいしりスト@"
+ db "じぶんの めいし@"
+ db "めいしこうかん@"
+ db "やめる@"
+; 0x8a435
+
+MenuDataHeader_0x8a435: ; 0x8a435
+ db $40 ; flags
+ db 02, 00 ; start coords
+ db 09, 10 ; end coords
+ dw MenuData2_0x8a43d
+ db 1 ; default option
+; 0x8a43d
+
+MenuData2_0x8a43d: ; 0x8a43d
+ db $a0 ; flags
+ db 3 ; items
+ db "めいしりスト@"
+ db "じぶんの めいし@"
+ db "やめる@"
+; 0x8a453
+
+Function8a453: ; 8a453 (22:6453)
+ hlcoord 0, 12
+ ld b, $4
+ ld c, $12
+ call TextBox
+ hlcoord 1, 14
+ ld de, String_8a476
+ ld a, [MenuSelection]
+ cp $ff
+ jr z, .asm_8a472
+ ld de, Strings_8a483
+ dec a
+ ld c, a
+ call Function8919e
+.asm_8a472
+ call PlaceString
+ ret
+; 8a476 (22:6476)
+
+String_8a476: ; 8a476
+ db "まえ", $25, "がめん", $1d, "もどります@"
+; 8a483
+
+Strings_8a483: ; 8a483
+ db "おともだち", $25, "めいしは"
+ next "ここ", $1d, "いれておきます@"
+
+ db "でんわばんごう", $1f, "いれると"
+ next "めいしこうかん", $4a, "できます@"
+
+ db "ともだちと じぶん", $25, "めいしを"
+ next "せきがいせんで こうかん します@"
+; 8a4d3
+
+Function8a4d3: ; 8a4d3 (22:64d3)
+ ld a, [MenuSelection]
+ cp $1
+ jr nz, .asm_8a4eb
+ ld a, $5
+ hlcoord 12, 4, AttrMap
+ call Function8a5a3
+ ld a, $7
+ hlcoord 15, 4, AttrMap
+ call Function8a5a3
+ ret
+.asm_8a4eb
+ ld a, $7
+ hlcoord 12, 4, AttrMap
+ call Function8a5a3
+ ld a, $6
+ hlcoord 15, 4, AttrMap
+ call Function8a5a3
+ ret
+
+Function8a4fc: ; 8a4fc (22:64fc)
+ ld a, [MenuSelection]
+ cp $3
+ jr nz, asm_8a529
+ ld hl, wd012
+ ld a, [hli]
+ ld b, a
+ ld a, [hld]
+ add b
+ ld [hl], a
+ ld b, a
+ ld c, $80
+ call Function89cdf
+ call Function8a515
+ ret
+
+Function8a515: ; 8a515 (22:6515)
+ ld hl, wd012
+ ld a, [hl]
+ cp $38
+ jr c, .asm_8a520
+ cp $3c
+ ret c
+.asm_8a520
+ ld a, [wd013]
+ cpl
+ inc a
+ ld [wd013], a
+ ret
+
+asm_8a529: ; 8a529 (22:6529)
+ ld hl, wd012
+ ld a, $3c
+ ld [hli], a
+ ld a, $ff
+ ld [hli], a
+ ld hl, Sprites
+ xor a
+ ld bc, $20
+ call ByteFill
+ ret
+
+Function8a53d: ; 8a53d (22:653d)
+ push hl
+ ld a, $15
+ ld c, $8
+ ld de, $14
+ call Function8a573
+ ld a, $1d
+ ld c, $9
+ call Function8a57c
+ inc a
+ ld [hl], a
+ call Function8a584
+ pop hl
+ add hl, de
+ ld a, $1f
+ ld c, $8
+ call Function8a573
+ dec hl
+ ld a, $51
+ ld [hli], a
+ ld a, $26
+ ld c, $1
+ call Function8a57c
+ ld a, $52
+ ld c, $3
+ call Function8a573
+ ld a, $27
+ ld c, $6
+
+Function8a573: ; 8a573 (22:6573)
+ ld [hl], a
+ call Function8a584
+ inc a
+ dec c
+ jr nz, Function8a573
+ ret
+
+Function8a57c: ; 8a57c (22:657c)
+ ld [hl], a
+ call Function8a584
+ dec c
+ jr nz, Function8a57c
+ ret
+
+Function8a584: ; 8a584 (22:6584)
+ push af
+ ld a, $4
+ call Function89215
+ inc hl
+ pop af
+ ret
+
+Function8a58d: ; 8a58d (22:658d)
+ ld a, $2d
+ ld bc, $606
+ ld de, $14
+.asm_8a595
+ push bc
+ push hl
+.asm_8a597
+ ld [hli], a
+ inc a
+ dec c
+ jr nz, .asm_8a597
+ pop hl
+ add hl, de
+ pop bc
+ dec b
+ jr nz, .asm_8a595
+ ret
+
+Function8a5a3: ; 8a5a3 (22:65a3)
+ ld bc, $603
+ ld de, $14
+.asm_8a5a9
+ push bc
+ push hl
+.asm_8a5ab
+ ld [hli], a
+ dec c
+ jr nz, .asm_8a5ab
+ pop hl
+ add hl, de
+ pop bc
+ dec b
+ jr nz, .asm_8a5a9
+ ret
+
+Function8a5b6: ; 8a5b6 (22:65b6)
+ ld a, [rSVBK] ; $ff00+$70
+ push af
+ ld a, $5
+ ld [rSVBK], a ; $ff00+$70
+ ld hl, Palette_8a5e5
+ ld de, wd020
+ ld bc, $18
+ call CopyBytes
+ ld hl, Palette_8a5fd
+ ld de, Unkn2Pals
+ ld bc, $8
+ call CopyBytes
+ ld hl, Palette_8a605
+ ld de, wd048
+ ld bc, $8
+ call CopyBytes
+ pop af
+ ld [rSVBK], a ; $ff00+$70
+ ret
+; 8a5e5 (22:65e5)
+
+Palette_8a5e5: ; 8a5e5
+ RGB 31, 31, 31
+ RGB 27, 19, 00
+ RGB 07, 11, 22
+ RGB 00, 00, 00
+ RGB 31, 31, 31
+ RGB 16, 16, 31
+ RGB 27, 19, 00
+ RGB 00, 00, 00
+ RGB 31, 31, 31
+ RGB 31, 00, 00
+ RGB 27, 19, 00
+ RGB 00, 00, 00
+; 8a5fd
+
+Palette_8a5fd: ; 8a5fd
+ RGB 00, 00, 00
+ RGB 00, 00, 00
+ RGB 00, 00, 00
+ RGB 31, 31, 31
+; 8a605
+
+Palette_8a605: ; 8a605
+ RGB 00, 00, 00
+ RGB 14, 18, 31
+ RGB 16, 16, 31
+ RGB 31, 31, 31
+; 8a60d
+
+Function8a60d: ; 8a60d
+ ld a, [rSVBK]
+ push af
+ ld a, $5
+ ld [rSVBK], a
+ ld hl, Palette_8a624
+ ld de, Unkn2Pals
+ ld bc, $0008
+ call CopyBytes
+ pop af
+ ld [rSVBK], a
+ ret
+; 8a624
+
+Palette_8a624: ; 8a624
+ RGB 31, 31, 31
+ RGB 31, 31, 31
+ RGB 31, 31, 31
+ RGB 00, 00, 00
+; 8a62c
+
+Function8a62c: ; 8a62c (22:662c)
+ call LoadMenuDataHeader_0x1d75
+ call Function891fe
+ xor a
+ call Function8b94a
+ call Function8b677
+.asm_8a639
+ xor a
+ ld [wd033], a
+ ld [wd032], a
+ ld [wd0e3], a
+ call Function8b7bd
+ ld a, c
+ and a
+ jr z, .asm_8a66a
+ ld [MenuSelection], a
+ ld b, a
+ ld a, [wcf77]
+ inc a
+ ld [wd034], a
+ push bc
+ call Function8b960
+ ld a, c
+ pop bc
+ jr z, .asm_8a639
+ ld c, a
+ ld hl, Jumptable_8a671
+ ld a, b
+ ld [MenuSelection], a
+ ld a, c
+ dec a
+ rst JumpTable
+ jr .asm_8a639
+.asm_8a66a
+ call Function891fe
+ call Function89b28
+ ret
+
+Jumptable_8a671: ; 8a671 (22:6671)
+ dw Function8a679
+ dw Function8a6cd
+ dw Function8a8c3
+ dw Function8a930
+
+
+Function8a679: ; 8a679 (22:6679)
+ call Function891de
+ call WhiteBGMap
+ call Function893cc
+ call OpenSRAMBank4
+ call Function8931b
+ call Function89844
+ call CloseSRAM
+ call OpenSRAMBank4
+ call Function8939a
+ call Function89856
+ hlcoord 1, 13
+ call Function899fe
+ call Function891ab
+ call CloseSRAM
+.asm_8a6a3
+ call Function89a57
+ jr c, .asm_8a6a3
+ and a
+ jr z, Function8a679
+ ld hl, Jumptable_8a6bc
+ dec a
+ rst JumpTable
+ jr c, Function8a679
+ call Function891fe
+ call Function8b677
+ call Function89448
+ ret
+
+Jumptable_8a6bc: ; 8a6bc (22:66bc)
+ dw Function8a6c0
+ dw Function8a6c5
+
+
+Function8a6c0: ; 8a6c0 (22:66c0)
+ call PlayClickSFX
+ and a
+ ret
+
+Function8a6c5: ; 8a6c5 (22:66c5)
+ call PlayClickSFX
+ call Function89d0d
+ scf
+ ret
+
+Function8a6cd: ; 8a6cd (22:66cd)
+ call Function891de
+ call WhiteBGMap
+ call Function893cc
+ call OpenSRAMBank4
+ call Function8931b
+ call Function89844
+ call Function8a757
+ call CloseSRAM
+.asm_8a6e5
+ call OpenSRAMBank4
+ call Function8931b
+ call Function89856
+ call Function89a2e
+ call Function891ab
+ xor a
+ ld [wd02f], a
+ call CloseSRAM
+.asm_8a6fb
+ call Function89b97
+ call Function89c67
+ jr c, .asm_8a718
+ ld a, b
+ and a
+ jr z, .asm_8a6fb
+ call PlayClickSFX
+ call Function89448
+ ld a, [wd011]
+ ld hl, Jumptable_8a74f
+ rst JumpTable
+ jr nc, .asm_8a6e5
+ jr .asm_8a742
+.asm_8a718
+ call OpenSRAMBank4
+ call Function8a765
+ call CloseSRAM
+ jr nc, .asm_8a73f
+ call Function8923c
+ call Function89448
+ call Function89a23
+ hlcoord 1, 13
+ ld de, String_89135
+ call PlaceString
+ call WaitBGMap
+ ld a, $2
+ call Function89254
+ jr c, .asm_8a6e5
+.asm_8a73f
+ call CloseSRAM
+.asm_8a742
+ call WhiteBGMap
+ call Function89448
+ call Function891d3
+ call Function8b677
+ ret
+
+Jumptable_8a74f: ; 8a74f (22:674f)
+ dw Function8a78c
+ dw Function8a7cb
+ dw Function8a818
+ dw Function8a8a1
+
+
+Function8a757: ; 8a757 (22:6757)
+ call Function8939a
+ xor a
+ ld [wd010], a
+ ld [wd011], a
+ ld [wd012], a
+ ret
+
+Function8a765: ; 8a765 (22:6765)
+ call Function8931b
+ push bc
+ ld hl, $0
+ add hl, bc
+ ld de, DefaultFlypoint
+ ld c, $6
+ call Function89185
+ pop bc
+ jr nz, .asm_8a78a
+ push bc
+ ld hl, $11
+ add hl, bc
+ ld de, wd008
+ ld c, $8
+ call Function89185
+ pop bc
+ jr nz, .asm_8a78a
+ and a
+ ret
+.asm_8a78a
+ scf
+ ret
+
+Function8a78c: ; 8a78c (22:678c)
+ call Function891fe
+ ld de, DefaultFlypoint
+ ld b, $5
+ callba Function116c1
+ call OpenSRAMBank4
+ call Function8931b
+ push bc
+ ld hl, $0
+ add hl, bc
+ ld d, h
+ ld e, l
+ ld hl, DefaultFlypoint
+ call InitName
+ call CloseSRAM
+ call DelayFrame
+ call JoyTextDelay
+ call Function891de
+ call WhiteBGMap
+ call Function893cc
+ call OpenSRAMBank4
+ pop bc
+ call Function89844
+ call CloseSRAM
+ and a
+ ret
+
+Function8a7cb: ; 8a7cb (22:67cb)
+ ld a, [MenuSelection]
+ push af
+ call Function891de
+ ld de, wd008
+ ld c, $0
+ callba Function17a68f
+ jr c, .asm_8a7f4
+ ld hl, wd008
+ ld a, $ff
+ ld bc, $8
+ call ByteFill
+ ld h, d
+ ld l, e
+ ld de, wd008
+ ld c, $8
+ call Function89193
+.asm_8a7f4
+ pop af
+ ld [MenuSelection], a
+ call Function891de
+ call WhiteBGMap
+ call Function893cc
+ call OpenSRAMBank4
+ call Function8931b
+ call Function89844
+ call Function89856
+ call Function89a2e
+ call Function891ab
+ call CloseSRAM
+ and a
+ ret
+
+Function8a818: ; 8a818 (22:6818)
+ call Function89a23
+ ld hl, DefaultFlypoint
+ call Function89331
+ jr c, .asm_8a875
+ ld hl, wd008
+ call Function89b45
+ jr nc, .asm_8a87a
+ call OpenSRAMBank4
+ call Function8a765
+ jr nc, .asm_8a863
+ call Function8931b
+ push bc
+ ld hl, $0
+ add hl, bc
+ ld d, h
+ ld e, l
+ ld hl, DefaultFlypoint
+ ld c, $6
+ call Function89193
+ pop bc
+ ld hl, $11
+ add hl, bc
+ ld d, h
+ ld e, l
+ ld hl, wd008
+ ld c, $8
+ call Function89193
+ hlcoord 1, 13
+ ld de, .string_8a868
+ call PlaceString
+ call WaitBGMap
+ call JoyWaitAorB
+.asm_8a863
+ call CloseSRAM
+ scf
+ ret
+; 8a868 (22:6868)
+
+.string_8a868
+ db "めいし", $1f, "かきかえ まし", $22, "@"
+
+.asm_8a875
+ ld de, String_8a88b
+ jr .asm_8a87d
+.asm_8a87a
+ ld de, String_8911c
+.asm_8a87d
+ hlcoord 1, 13
+ call PlaceString
+ call WaitBGMap
+ call JoyWaitAorB
+ and a
+ ret
+; 8a88b (22:688b)
+
+String_8a88b: ; 8a88b
+ db "おともだち", $25, "なまえが"
+ next "かかれて いません!@"
+; 8a8a1
+
+Function8a8a1: ; 8a8a1 (22:68a1)
+ call OpenSRAMBank4
+ call Function8a765
+ call CloseSRAM
+ jr nc, .asm_8a8bf
+ call Function89a23
+ hlcoord 1, 13
+ ld de, String_89135
+ call PlaceString
+ ld a, $2
+ call Function89254
+ jr c, .asm_8a8c1
+.asm_8a8bf
+ scf
+ ret
+.asm_8a8c1
+ and a
+ ret
+
+Function8a8c3: ; 8a8c3 (22:68c3)
+ call Function891de
+ call WhiteBGMap
+ call Function893cc
+ call OpenSRAMBank4
+ call Function8931b
+ call Function89844
+ call Function8939a
+ call Function89856
+ call CloseSRAM
+ call Function891ab
+ hlcoord 1, 13
+ ld de, String_8a919
+ call PlaceString
+ ld a, $2
+ call Function89254
+ jr c, .asm_8a90f
+ call OpenSRAMBank4
+ call Function892b4
+ call CloseSRAM
+ call Function89a23
+ call Function8923c
+ hlcoord 1, 13
+ ld de, String_8a926
+ call PlaceString
+ call WaitBGMap
+ call JoyWaitAorB
+.asm_8a90f
+ call Function89448
+ call Function891fe
+ call Function8b677
+ ret
+; 8a919 (22:6919)
+
+String_8a919: ; 8a919
+ db "このデータ", $1f, "けしますか?@"
+; 8a926
+
+String_8a926: ; 8a926
+ db "データ", $1f, "けしまし", $22, "@"
+; 8a930
+
+Function8a930: ; 8a930 (22:6930)
+ ld a, [MenuSelection]
+ push af
+ xor a
+ ld [wd032], a
+ ld a, $1
+ ld [wd033], a
+ ld a, [wd034]
+ ld [wd0e3], a
+.asm_8a943
+ call Function8b7bd
+ ld a, [wcf73]
+ and $1
+ jr nz, .asm_8a953
+ ld a, c
+ and a
+ jr nz, .asm_8a943
+ pop af
+ ret
+.asm_8a953
+ call OpenSRAMBank4
+ pop af
+ cp c
+ jr z, .asm_8a995
+ push bc
+ ld [MenuSelection], a
+ call Function8931b
+ push bc
+ ld h, b
+ ld l, c
+ ld de, DefaultFlypoint
+ ld bc, $25
+ call CopyBytes
+ pop de
+ pop bc
+ ld a, c
+ ld [MenuSelection], a
+ call Function8931b
+ push bc
+ ld h, b
+ ld l, c
+ ld bc, $25
+ call CopyBytes
+ pop de
+ ld hl, DefaultFlypoint
+ ld bc, $25
+ call CopyBytes
+ ld de, SFX_SWITCH_POKEMON
+ call WaitPlaySFX
+ ld de, SFX_SWITCH_POKEMON
+ call WaitPlaySFX
+.asm_8a995
+ call CloseSRAM
+ ret
+
+Function8a999: ; 8a999 (22:6999)
+ ld hl, MenuDataHeader_0x8a9c9
+ call LoadMenuDataHeader
+ ld c, $1
+.asm_8a9a1
+ call Function8a9ce
+ jr c, .asm_8a9bb
+ push bc
+ push de
+ call LoadMenuDataHeader_0x1d75
+ pop de
+ dec e
+ ld a, e
+ ld hl, Jumptable_8a9c5
+ rst JumpTable
+ call Function891fe
+ call Function89b28
+ pop bc
+ jr .asm_8a9a1
+.asm_8a9bb
+ call Function89209
+ call WriteBackup
+ call Function8920f
+ ret
+
+Jumptable_8a9c5: ; 8a9c5 (22:69c5)
+ dw Function8aa0a
+ dw Function8ab3b
+; 8a9c9 (22:69c9)
+
+MenuDataHeader_0x8a9c9: ; 0x8a9c9
+ db $40 ; flags
+ db 04, 11 ; start coords
+ db 11, 18 ; end coords
+; 8a9ce
+
+Function8a9ce: ; 8a9ce (22:69ce)
+ push bc
+ decoord 11, 4
+ ld b, $6
+ ld c, $6
+ call Function89b3b
+ pop bc
+ ld a, c
+ ld hl, MenuDataHeader_0x8a9f2
+ call Function89d5e
+ ld hl, Function8aa09
+ call Function89d85
+ jr c, .asm_8a9ed
+ ld c, a
+ ld e, a
+ and a
+ ret
+.asm_8a9ed
+ ld c, a
+ ld e, $0
+ scf
+ ret
+; 8a9f2 (22:69f2)
+
+MenuDataHeader_0x8a9f2: ; 0x8a9f2
+ db $40 ; flags
+ db 04, 11 ; start coords
+ db 11, 18 ; end coords
+ dw MenuData2_0x8a9fa
+ db 1 ; default option
+; 0x8a9fa
+
+MenuData2_0x8a9fa: ; 0x8a9fa
+ db $a0 ; flags
+ db 3 ; items
+ db "へんしゅう@"
+ db "みる@"
+ db "やめる@"
+; 0x8aa09
+
+Function8aa09: ; 8aa09
+ ret
+; 8aa0a
+
+Function8aa0a: ; 8aa0a (22:6a0a)
+ ld a, $1
+ ld [wd02f], a
+ ld [wd011], a
+ xor a
+ ld [wd010], a
+ ld [wd012], a
+ call OpenSRAMBank4
+ ld hl, $a603
+ ld de, wd008
+ call Function89381
+ call CloseSRAM
+ call Function891fe
+ call WhiteBGMap
+ call Function893cc
+ call Function89807
+ call Function89492
+ call Function894ca
+.asm_8aa3a
+ call Function8987f
+ call Function89a2e
+ call Function891ab
+.asm_8aa43
+ call Function89b97
+ call Function89c67
+ jr c, .asm_8aa61
+ ld a, b
+ and a
+ jr z, .asm_8aa43
+ call PlayClickSFX
+ call Function89448
+ ld a, [wd011]
+ dec a
+ ld hl, Jumptable_8aa6d
+ rst JumpTable
+ jr nc, .asm_8aa3a
+ jr .asm_8aa69
+.asm_8aa61
+ call Function89448
+ call Function8ab11
+ jr nc, .asm_8aa3a
+.asm_8aa69
+ call Function89448
+ ret
+
+Jumptable_8aa6d: ; 8aa6d (22:6a6d)
+ dw Function8aa73
+ dw Function8aab6
+ dw Function8ab11
+
+
+Function8aa73: ; 8aa73 (22:6a73)
+ ld a, [MenuSelection]
+ ld e, a
+ push de
+ call Function891de
+ ld de, wd008
+ ld c, $0
+ callba Function17a68f
+ jr c, .asm_8aa9d
+ ld hl, wd008
+ ld a, $ff
+ ld bc, $8
+ call ByteFill
+ ld h, d
+ ld l, e
+ ld de, wd008
+ ld c, $8
+ call Function89193
+.asm_8aa9d
+ call Function891fe
+ call WhiteBGMap
+ call Function893cc
+ call Function89807
+ call Function89492
+ call Function894ca
+ pop de
+ ld a, e
+ ld [MenuSelection], a
+ and a
+ ret
+
+Function8aab6: ; 8aab6 (22:6ab6)
+ call Function89a23
+ ld hl, wd008
+ call Function89b45
+ jr nc, Function8ab00
+ call OpenSRAMBank4
+ ld de, wd008
+ ld hl, $a603
+ ld c, $8
+ call Function89185
+ jr z, .asm_8aaeb
+ ld hl, wd008
+ ld de, $a603
+ ld c, $8
+ call Function89193
+ hlcoord 1, 13
+ ld de, String_8aaf0
+ call PlaceString
+ call WaitBGMap
+ call JoyWaitAorB
+.asm_8aaeb
+ call CloseSRAM
+ scf
+ ret
+; 8aaf0 (22:6af0)
+
+String_8aaf0: ; 8aaf0
+ db "あたらしい めいし", $4a, "できまし", $22, "@"
+; 8ab00
+
+Function8ab00: ; 8ab00
+ ld de, String_8911c
+ hlcoord 1, 13
+ call PlaceString
+ call WaitBGMap
+ call Function89235
+ and a
+ ret
+
+Function8ab11: ; 8ab11 (22:6b11)
+ call OpenSRAMBank4
+ ld hl, $a603
+ ld de, wd008
+ ld c, $8
+ call Function89185
+ call CloseSRAM
+ jr z, .asm_8ab37
+ call Function89a23
+ hlcoord 1, 13
+ ld de, String_89135
+ call PlaceString
+ ld a, $2
+ call Function89254
+ jr c, .asm_8ab39
+.asm_8ab37
+ scf
+ ret
+.asm_8ab39
+ and a
+ ret
+
+Function8ab3b: ; 8ab3b (22:6b3b)
+ call Function891fe
+ call WhiteBGMap
+ call Function893cc
+ call Function89807
+ call Function89492
+ call Function894ca
+ call OpenSRAMBank4
+ ld hl, $a603
+ ld de, wd008
+ call Function89381
+ call CloseSRAM
+ call Function8987f
+ call OpenSRAMBank4
+ hlcoord 1, 13
+ ld bc, $a007
+ call Function89a0c
+ call CloseSRAM
+ call Function891ab
+ call Function8ab77
+ jr c, Function8ab3b
+ ret
+
+Function8ab77: ; 8ab77 (22:6b77)
+ call Function354b
+ bit 0, c
+ jr nz, .asm_8ab8e
+ bit 1, c
+ jr nz, .asm_8ab8e
+ bit 3, c
+ jr z, Function8ab77
+ call PlayClickSFX
+ call Function89d0d
+ scf
+ ret
+.asm_8ab8e
+ call PlayClickSFX
+ and a
+ ret
+
+Function8ab93: ; 8ab93 (22:6b93)
+ call WhiteBGMap
+ call LoadMenuDataHeader_0x1d75
+ callba Function105688
+ call ClearSprites
+ call Function891fe
+ call Function89b28
+ ret
+; 8aba9 (22:6ba9)
+
+Function8aba9: ; 8aba9
+ ld a, $2
+ call Function8b94a
+ ld a, $1
+ ld [wd032], a
+.asm_8abb3
+ call Function891fe
+ call Function8b677
+.asm_8abb9
+ call Function8b7bd
+ jr z, .asm_8abdf
+ ld a, c
+ ld [MenuSelection], a
+ call OpenSRAMBank4
+ call Function8931b
+ ld hl, $0011
+ add hl, bc
+ call Function89b45
+ call CloseSRAM
+ jr c, .asm_8abe2
+ ld de, SFX_WRONG
+ call WaitPlaySFX
+ call CloseSRAM
+ jr .asm_8abb9
+
+.asm_8abdf
+ xor a
+ ld c, a
+ ret
+
+.asm_8abe2
+ call PlayClickSFX
+.asm_8abe5
+ call Function891de
+ call WhiteBGMap
+ call Function893cc
+ call OpenSRAMBank4
+ call Function8931b
+ call Function89844
+ call CloseSRAM
+ call OpenSRAMBank4
+ call Function8939a
+ call Function89856
+ hlcoord 1, 13
+ call Function899fe
+ call CloseSRAM
+ call Function891ab
+.asm_8ac0f
+ call Function89a57
+ jr c, .asm_8ac0f
+ and a
+ jr z, .asm_8abe5
+ cp $2
+ jr z, .asm_8ac0f
+ hlcoord 0, 12
+ ld b, $4
+ ld c, $12
+ call TextBox
+ hlcoord 1, 14
+ ld de, String_8ac3b
+ call PlaceString
+ ld a, $1
+ call Function8925e
+ jp c, .asm_8abb3
+ ld a, [MenuSelection]
+ ld c, a
+ ret
+; 8ac3b
+
+String_8ac3b: ; 8ac3b
+ db "こ", $25, "ともだち", $1d, "でんわを"
+ next "かけますか?@"
+; 8ac4e
+
+Function8ac4e: ; 8ac4e
+ xor a
+ ld [MenuSelection], a
+ push de
+ call Function891de
+ call WhiteBGMap
+ call Function893cc
+ pop bc
+ call Function89844
+ call Function8939a
+ call Function89856
+ hlcoord 1, 13
+ call Function899fe
+ call Function891ab
+ ret
+; 8ac70
+
+Function8ac70: ; 8ac70
+ push de
+ ld a, $3
+ call Function8b94a
+
+Function8ac76: ; 8ac76
+ call Function891fe
+ call Function8b677
+
+Function8ac7c: ; 8ac7c
+ call Function8b7bd
+ jr z, .asm_8acf0
+ ld a, c
+ ld [wd02f], a
+ ld [MenuSelection], a
+ call OpenSRAMBank4
+ call Function8931b
+ call Function8932d
+ call CloseSRAM
+ jr nc, .asm_8acb0
+ call OpenSRAMBank4
+ ld hl, $0011
+ add hl, bc
+ call Function89b45
+ call CloseSRAM
+ jr nc, .asm_8accc
+ call OpenSRAMBank4
+ call Function892b7
+ call CloseSRAM
+ jr .asm_8accc
+
+.asm_8acb0
+ call Function8ad0b
+ jr c, Function8ac76
+ and a
+ jr nz, .asm_8accc
+ call OpenSRAMBank4
+ ld h, b
+ ld l, c
+ ld d, $0
+ ld e, $6
+ add hl, de
+ ld d, h
+ ld e, l
+ pop hl
+ ld c, $1f
+ call Function89193
+ jr .asm_8ace4
+
+.asm_8accc
+ pop hl
+ call OpenSRAMBank4
+ ld d, b
+ ld e, c
+ ld c, $6
+ call Function89193
+ ld a, $6
+ add e
+ ld e, a
+ ld a, $0
+ adc d
+ ld d, a
+ ld c, $1f
+ call Function89193
+
+.asm_8ace4
+ call CloseSRAM
+ call Functione51
+ ld a, [wd02f]
+ ld c, a
+ and a
+ ret
+
+.asm_8acf0
+ ld hl, UnknownText_0x8ad06
+ call PrintText
+ ld a, $2
+ call Function89259
+ jp c, Function8ac7c
+ call Functione51
+ pop de
+ ld c, $0
+ scf
+ ret
+; 8ad06
+
+UnknownText_0x8ad06: ; 0x8ad06
+ ; Finish registering CARDS?
+ text_jump UnknownText_0x1c554a
+ db "@"
+; 0x8ad0b
+
+Function8ad0b: ; 8ad0b
+.asm_8ad0b
+ ld a, [MenuSelection]
+ ld [wd02f], a
+ call Function891de
+ call WhiteBGMap
+ call Function893cc
+ call OpenSRAMBank4
+ call Function8931b
+ push bc
+ call Function89844
+ call Function8939a
+ call Function89856
+ hlcoord 1, 13
+ call Function899fe
+ call CloseSRAM
+ call Function891ab
+ pop bc
+.asm_8ad37
+ push bc
+ call Function89a57
+ pop bc
+ jr c, .asm_8ad37
+ and a
+ jr z, .asm_8ad0b
+ cp $2
+ jr z, .asm_8ad37
+ call Function8923c
+ push bc
+ hlcoord 0, 12
+ ld b, $4
+ ld c, $12
+ call TextBox
+ ld de, String_8ad89
+ hlcoord 1, 14
+ call PlaceString
+ ld a, $2
+ call Function8925e
+ jr c, .asm_8ad87
+ call Function8923c
+ hlcoord 0, 12
+ ld b, $4
+ ld c, $12
+ call TextBox
+ ld de, String_8ad9c
+ hlcoord 1, 14
+ call PlaceString
+ ld a, $1
+ call Function8925e
+ jr c, .asm_8ad84
+ ld a, $0
+ jr .asm_8ad86
+
+.asm_8ad84
+ ld a, $1
+
+.asm_8ad86
+ and a
+
+.asm_8ad87
+ pop bc
+ ret
+; 8ad89
+
+String_8ad89: ; 8ad89
+ db "こ", $25, "めいし", $1f, "けして"
+ next "いれかえますか?@"
+; 8ad9c
+
+String_8ad9c: ; 8ad9c
+ db "おともだち", $25, "なまえを"
+ next "のこして おきますか?@"
+; 8adb3
+
+Function8adb3: ; 8adb3
+ call Function891de
+ call Function8a262
+ push af
+ call Function891de
+ pop af
+ ret
+; 8adbf
+
+Function8adbf: ; 8adbf
+ call OpenSRAMBank4
+ ld hl, $a603
+ call Function89b45
+ call CloseSRAM
+ ret
+; 8adcc
+
+Function8adcc: ; 8adcc
+ call OpenSRAMBank4
+ call Function8b3b0
+ call CloseSRAM
+ ret nc
+ cp $2
+ ret z
+ scf
+ ret
+; 8addb
diff --git a/misc/mobile_22_2.asm b/misc/mobile_22_2.asm
new file mode 100644
index 000000000..059672fad
--- /dev/null
+++ b/misc/mobile_22_2.asm
@@ -0,0 +1,1155 @@
+Function8b342:: ; 8b342
+; Loads the secondary map header pointer, then runs through a
+; jumptable with three dummy functions. Spends a lot of energy
+; doing pretty much nothing.
+ call GetSecondaryMapHeaderPointer
+ ld d, h
+ ld e, l
+
+; Everything between here and "ret" is useless.
+ xor a
+.loop
+ push af
+ ld hl, .jumptable
+ rst JumpTable
+ pop af
+ inc a
+ cp 3
+ jr nz, .loop
+ ret
+; 8b354
+
+.jumptable: ; 8b354
+ dw .zero
+ dw .one
+ dw .two
+; 8b35a
+
+.zero: ; 8b35a
+ mobile
+; 8b35b
+
+.one: ; 8b35b
+ mobile
+; 8b35c
+
+.two: ; 8b35c
+ mobile
+; 8b35d
+
+Function8b35d: ; 8b35d
+ ld a, h
+ cp d
+ ret nz
+ ld a, l
+ cp e
+ ret
+; 8b363
+
+Function8b363: ; 8b363
+ push bc
+ callba Function10632f
+ pop bc
+ ret
+; 8b36c
+
+Function8b36c: ; 8b36c (22:736c)
+ push bc
+ ld h, b
+ ld l, c
+ ld bc, $4
+ ld a, -1
+ call ByteFill
+ pop bc
+ ret
+
+Function8b379: ; 8b379 (22:7379)
+ push bc
+ ld a, c
+ add e
+ ld c, a
+ ld a, $0
+ adc b
+ ld b, a
+ ld a, [bc]
+ ld d, a
+ pop bc
+ ret
+
+Function8b385: ; 8b385 (22:7385)
+ push bc
+ ld a, c
+ add e
+ ld c, a
+ ld a, $0
+ adc b
+ ld b, a
+ ld a, d
+ ld [bc], a
+ pop bc
+ ret
+
+Function8b391: ; 8b391 (22:7391)
+ push bc
+ ld e, $0
+ ld d, $4
+.asm_8b396
+ ld a, [bc]
+ inc bc
+ cp $ff
+ jr z, .asm_8b3a2
+ inc e
+ dec d
+ jr nz, .asm_8b396
+ dec e
+ scf
+.asm_8b3a2
+ pop bc
+ ret
+
+Function8b3a4: ; 8b3a4 (22:73a4)
+ push de
+ push bc
+ ld d, b
+ ld e, c
+ ld c, $4
+ call Function89185
+ pop bc
+ pop de
+ ret
+
+Function8b3b0: ; 8b3b0 (22:73b0)
+ ld bc, $a037
+ ld a, [$a60b]
+ and a
+ jr z, .asm_8b3c2
+ cp $3
+ jr nc, .asm_8b3c2
+ call Function8b391
+ jr c, .asm_8b3c9
+.asm_8b3c2
+ call Function8b36c
+ xor a
+ ld [$a60b], a
+.asm_8b3c9
+ ld a, [$a60b]
+ ret
+
+Function8b3cd: ; 8b3cd (22:73cd)
+ push de
+ push bc
+ ld e, $4
+.asm_8b3d1
+ ld a, [bc]
+ inc bc
+ call Function8998b
+ inc hl
+ dec e
+ jr nz, .asm_8b3d1
+ pop bc
+ pop de
+ ret
+
+Function8b3dd: ; 8b3dd (22:73dd)
+ push de
+ push bc
+ call Function354b
+ ld a, c
+ pop bc
+ pop de
+ bit 0, a
+ jr nz, .asm_8b3f7
+ bit 1, a
+ jr nz, .asm_8b40e
+ bit 6, a
+ jr nz, .asm_8b429
+ bit 7, a
+ jr nz, .asm_8b443
+ and a
+ ret
+.asm_8b3f7
+ ld a, e
+ cp $3
+ jr z, .asm_8b407
+ inc e
+ ld d, $0
+ call Function8b385
+ xor a
+ ld [wd010], a
+ ret
+.asm_8b407
+ call PlayClickSFX
+ ld d, $0
+ scf
+ ret
+.asm_8b40e
+ ld a, e
+ and a
+ jr nz, .asm_8b41e
+ call PlayClickSFX
+ ld d, $ff
+ call Function8b385
+ ld d, $1
+ scf
+ ret
+.asm_8b41e
+ ld d, $ff
+ call Function8b385
+ dec e
+ xor a
+ ld [wd010], a
+ ret
+.asm_8b429
+ call Function8b379
+ ld a, d
+ cp $a
+ jr c, .asm_8b433
+ ld d, $9
+.asm_8b433
+ inc d
+ ld a, d
+ cp $a
+ jr c, .asm_8b43b
+ ld d, $0
+.asm_8b43b
+ call Function8b385
+ xor a
+ ld [wd010], a
+ ret
+.asm_8b443
+ call Function8b379
+ ld a, d
+ cp $a
+ jr c, .asm_8b44d
+ ld d, $0
+.asm_8b44d
+ ld a, d
+ dec d
+ and a
+ jr nz, .asm_8b454
+ ld d, $9
+.asm_8b454
+ call Function8b385
+ xor a
+ ld [wd010], a
+ ret
+
+Function8b45c: ; 8b45c (22:745c)
+ call Function8b36c
+ xor a
+ ld [wd010], a
+ ld [wd012], a
+ call Function8b391
+ ld d, $0
+ call Function8b385
+.asm_8b46e
+ call Function8923c
+ call Function8b493
+ call Function8b4cc
+ call Function8b518
+ call Function89b78
+ push bc
+ call Function8b4fd
+ call Function89c44
+ ld a, $1
+ ld [hBGMapMode], a ; $ff00+$d4
+ pop bc
+ call Function8b3dd
+ jr nc, .asm_8b46e
+ ld a, d
+ and a
+ ret z
+ scf
+ ret
+
+Function8b493: ; 8b493 (22:7493)
+ push bc
+ call Function8923c
+ call Function8b521
+ ld hl, Jumptable_8b4a0
+ pop bc
+ rst JumpTable
+ ret
+
+Jumptable_8b4a0: ; 8b4a0 (22:74a0)
+ dw Function8b4a4
+ dw Function8b4b8
+
+
+Function8b4a4: ; 8b4a4 (22:74a4)
+ push bc
+ push de
+ call Function8b4d8
+ call TextBox
+ pop de
+ pop bc
+ call Function8b4cc
+ call Function8b518
+ call Function8b3cd
+ ret
+
+Function8b4b8: ; 8b4b8 (22:74b8)
+ push bc
+ push de
+ call Function8b4ea
+ call Function89b3b
+ pop de
+ pop bc
+ call Function8b4cc
+ call Function8b518
+ call Function8b3cd
+ ret
+
+Function8b4cc: ; 8b4cc (22:74cc)
+ push bc
+ ld hl, Unknown_8b529
+ call Function8b50a
+ ld a, [hli]
+ ld h, [hl]
+ ld l, a
+ pop bc
+ ret
+
+Function8b4d8: ; 8b4d8 (22:74d8)
+ ld hl, Unknown_8b529
+ call Function8b50a
+ push hl
+rept 2
+ inc hl
+endr
+ ld a, [hli]
+ ld b, a
+ ld a, [hl]
+ ld c, a
+ pop hl
+ ld a, [hli]
+ ld h, [hl]
+ ld l, a
+ ret
+
+Function8b4ea: ; 8b4ea (22:74ea)
+ ld hl, Unknown_8b529
+ call Function8b50a
+ push hl
+rept 2
+ inc hl
+endr
+ ld a, [hli]
+ ld b, a
+ ld a, [hl]
+ ld c, a
+ pop hl
+ ld a, [hli]
+ ld e, a
+ ld a, [hl]
+ ld d, a
+ ret
+
+Function8b4fd: ; 8b4fd (22:74fd)
+ ld hl, Unknown_8b529 + 4
+ call Function8b50a
+ ld a, [hli]
+ ld c, a
+ ld a, [hli]
+ ld b, a
+ ld a, [hli]
+ ld d, a
+ ret
+
+Function8b50a: ; 8b50a (22:750a)
+ ld a, [wd02e]
+ and a
+ ret z
+ ld b, $0
+ ld c, $8
+.asm_8b513
+ add hl, bc
+ dec a
+ jr nz, .asm_8b513
+ ret
+
+Function8b518: ; 8b518 (22:7518)
+ push de
+ ld d, $0
+ ld e, $14
+ add hl, de
+ inc hl
+ pop de
+ ret
+
+Function8b521: ; 8b521 (22:7521)
+ ld hl, Unknown_8b529 + 7
+ call Function8b50a
+ ld a, [hl]
+ ret
+; 8b529 (22:7529)
+
+Unknown_8b529: ; 8b529
+ dwcoord 2, 5
+ db 1, 4, $20, $49, 0, 1
+ dwcoord 7, 4
+ db 1, 4, $48, $41, 0, 0
+; 8b539
+
+Function8b539: ; 8b539 (22:7539)
+ ld bc, wd017
+ call Function8b36c
+ xor a
+ ld [wd012], a
+ ld [wd02e], a
+ call Function8b493
+ call Function8b4fd
+ ld e, $0
+ call Function89c44
+ call Function3238
+ ret
+
+Function8b555: ; 8b555 (22:7555)
+ ld hl, UnknownText_0x8b5ce
+ call PrintText
+ ld bc, wd017
+ call Function8b45c
+ jr c, .asm_8b5c8
+ call Function89448
+ ld bc, wd017
+ call Function8b493
+ ld bc, wd017
+ call Function8b664
+ jr nz, .asm_8b57c
+ ld hl, UnknownText_0x8b5e2
+ call PrintText
+ jr Function8b555
+.asm_8b57c
+ ld hl, UnknownText_0x8b5d3
+ call PrintText
+ ld bc, wd013
+ call Function8b45c
+ jr c, Function8b555
+ ld bc, wd017
+ ld hl, wd013
+ call Function8b3a4
+ jr z, .asm_8b5a6
+ call Function89448
+ ld bc, wd013
+ call Function8b493
+ ld hl, UnknownText_0x8b5d8
+ call PrintText
+ jr .asm_8b57c
+.asm_8b5a6
+ call OpenSRAMBank4
+ ld hl, wd013
+ ld de, $a037
+ ld bc, $4
+ call CopyBytes
+ call CloseSRAM
+ call Function89448
+ ld bc, wd013
+ call Function8b493
+ ld hl, UnknownText_0x8b5dd
+ call PrintText
+ and a
+.asm_8b5c8
+ push af
+ call Function89448
+ pop af
+ ret
+; 8b5ce (22:75ce)
+
+UnknownText_0x8b5ce: ; 0x8b5ce
+ ; Please enter any four-digit number.
+ text_jump UnknownText_0x1bc187
+ db "@"
+; 0x8b5d3
+
+UnknownText_0x8b5d3: ; 0x8b5d3
+ ; Enter the same number to confirm.
+ text_jump UnknownText_0x1bc1ac
+ db "@"
+; 0x8b5d8
+
+UnknownText_0x8b5d8: ; 0x8b5d8
+ ; That's not the same number.
+ text_jump UnknownText_0x1bc1cf
+ db "@"
+; 0x8b5dd
+
+UnknownText_0x8b5dd: ; 0x8b5dd
+ ; Your PASSCODE has been set. Enter this number next time to open the CARD FOLDER.
+ text_jump UnknownText_0x1bc1eb
+ db "@"
+; 0x8b5e2
+
+UnknownText_0x8b5e2: ; 0x8b5e2
+ ; 0000 is invalid!
+ text_jump UnknownText_0x1bc23e
+ db "@"
+; 0x8b5e7
+
+Function8b5e7: ; 8b5e7 (22:75e7)
+ ld bc, wd013
+ call Function8b36c
+ xor a
+ ld [wd012], a
+ ld [wd02e], a
+ call Function8b493
+ call Function891ab
+ call Function8b4fd
+ ld e, $0
+ call Function89c44
+.asm_8b602
+ ld hl, UnknownText_0x8b642
+ call PrintText
+ ld bc, wd013
+ call Function8b45c
+ jr c, .asm_8b63c
+ call Function89448
+ ld bc, wd013
+ call Function8b493
+ call OpenSRAMBank4
+ ld hl, $a037
+ call Function8b3a4
+ call CloseSRAM
+ jr z, .asm_8b635
+ ld hl, UnknownText_0x8b647
+ call PrintText
+ ld bc, wd013
+ call Function8b36c
+ jr .asm_8b602
+.asm_8b635
+ ld hl, UnknownText_0x8b64c
+ call PrintText
+ and a
+.asm_8b63c
+ push af
+ call Function89448
+ pop af
+ ret
+; 8b642 (22:7642)
+
+UnknownText_0x8b642: ; 0x8b642
+ ; Enter the CARD FOLDER PASSCODE.
+ text_jump UnknownText_0x1bc251
+ db "@"
+; 0x8b647
+
+UnknownText_0x8b647: ; 0x8b647
+ ; Incorrect PASSCODE!
+ text_jump UnknownText_0x1bc272
+ db "@"
+; 0x8b64c
+
+UnknownText_0x8b64c: ; 0x8b64c
+ ; CARD FOLDER open.@ @
+ text_jump UnknownText_0x1bc288
+ start_asm
+; 0x8b651
+
+Function8b651: ; 8b651
+ ld de, SFX_TWINKLE
+ call PlaySFX
+ call WaitSFX
+ ld c, $8
+ call DelayFrames
+ ld hl, .string_8b663
+ ret
+.string_8b663
+ db "@"
+; 8b664
+
+Function8b664: ; 8b664 (22:7664)
+ push bc
+ ld de, $4
+.asm_8b668
+ ld a, [bc]
+ cp $0
+ jr nz, .asm_8b66e
+ inc d
+.asm_8b66e
+ inc bc
+ dec e
+ jr nz, .asm_8b668
+ pop bc
+ ld a, d
+ cp $4
+ ret
+
+Function8b677: ; 8b677
+ call WhiteBGMap
+ call DisableLCD
+ call Function8b690
+ call Function8b6bb
+ call Function8b6ed
+ call EnableLCD
+ call Function891ab
+ call SetPalettes
+ ret
+; 8b690
+
+Function8b690: ; 8b690
+ ld hl, GFX_17afa5 + $514
+ ld de, VTiles2
+ ld bc, $160
+ ld a, BANK(GFX_17afa5)
+ call FarCopyBytes
+ ld hl, GFX_17afa5 + $514 + $160 - $10
+ ld de, VTiles2 tile $61
+ ld bc, $10
+ ld a, BANK(GFX_17afa5)
+ call FarCopyBytes
+ ld hl, GFX_17afa5 + $514 + $160
+ ld de, VTiles1 tile $6e
+ ld bc, $10
+ ld a, BANK(GFX_17afa5)
+ call FarCopyBytes
+ ret
+; 8b6bb
+
+Function8b6bb: ; 8b6bb
+ ld a, [rSVBK]
+ push af
+ ld a, $5
+ ld [rSVBK], a
+ ld hl, Palette_8b6d5
+ ld de, Unkn1Pals
+ ld bc, $0018
+ call CopyBytes
+ pop af
+ ld [rSVBK], a
+ call Function8949c
+ ret
+; 8b6d5
+
+Palette_8b6d5: ; 8b6d5
+ RGB 31, 31, 31
+ RGB 31, 21, 00
+ RGB 14, 07, 03
+ RGB 00, 00, 00
+ RGB 31, 31, 31
+ RGB 31, 21, 00
+ RGB 22, 09, 17
+ RGB 00, 00, 00
+ RGB 31, 31, 31
+ RGB 31, 21, 00
+ RGB 06, 24, 08
+ RGB 00, 00, 00
+; 8b6ed
+
+Function8b6ed: ; 8b6ed
+ hlcoord 0, 0, AttrMap
+ ld bc, $012c
+ xor a
+ call ByteFill
+ hlcoord 0, 14, AttrMap
+ ld bc, $0050
+ ld a, $7
+ call ByteFill
+ ret
+; 8b703
+
+Function8b703: ; 8b703
+ call Function8923c
+ push hl
+ ld a, $c
+ ld [hli], a
+ inc a
+ call Function8b73e
+ inc a
+ ld [hl], a
+ pop hl
+ push hl
+ push bc
+ ld de, SCREEN_WIDTH
+ add hl, de
+.asm_8b717
+ push hl
+ ld a, $f
+ ld [hli], a
+ ld a, $7f
+ call Function8b73e
+ ld a, $11
+ ld [hl], a
+ pop hl
+ ld de, SCREEN_WIDTH
+ add hl, de
+ dec b
+ jr nz, .asm_8b717
+ call Function8b732
+ pop bc
+ pop hl
+ jr Function8b744
+; 8b732
+
+Function8b732: ; 8b732
+ ld a, $12
+ ld [hli], a
+ ld a, $13
+ call Function8b73e
+ ld a, $14
+ ld [hl], a
+ ret
+; 8b73e
+
+Function8b73e: ; 8b73e
+ ld d, c
+.asm_8b73f
+ ld [hli], a
+ dec d
+ jr nz, .asm_8b73f
+ ret
+; 8b744
+
+Function8b744: ; 8b744
+ ld de, AttrMap - TileMap
+ add hl, de
+rept 2
+ inc b
+endr
+rept 2
+ inc c
+endr
+ xor a
+.asm_8b74d
+ push bc
+ push hl
+.asm_8b74f
+ ld [hli], a
+ dec c
+ jr nz, .asm_8b74f
+ pop hl
+ ld de, SCREEN_WIDTH
+ add hl, de
+ pop bc
+ dec b
+ jr nz, .asm_8b74d
+ ret
+; 8b75d
+
+Function8b75d: ; 8b75d
+ call Function8923c
+ hlcoord 0, 0
+ ld a, $1
+ ld bc, SCREEN_WIDTH
+ call ByteFill
+ hlcoord 0, 1
+ ld a, $2
+ ld [hl], a
+ hlcoord 9, 1
+ ld c, $b
+ call Function8b788
+ hlcoord 1, 1
+ ld a, $4
+ ld e, $8
+.asm_8b780
+ ld [hli], a
+ inc a
+ dec e
+ jr nz, .asm_8b780
+ jr Function8b79e
+; 8b787
+
+Function8b787: ; 8b787
+ ret
+; 8b788
+
+Function8b788: ; 8b788
+.asm_8b788
+ ld a, $2
+ ld [hli], a
+ dec c
+ ret z
+ ld a, $1
+ ld [hli], a
+ dec c
+ ret z
+ ld a, $3
+ ld [hli], a
+ dec c
+ ret z
+ ld a, $1
+ ld [hli], a
+ dec c
+ jr nz, .asm_8b788
+ ret
+; 8b79e
+
+Function8b79e: ; 8b79e
+ hlcoord 0, 1, AttrMap
+ ld a, $1
+ ld [hli], a
+ hlcoord 9, 1, AttrMap
+ ld e, $b
+.asm_8b7a9
+ ld a, $2
+ ld [hli], a
+ dec e
+ ret z
+ xor a
+ ld [hli], a
+ dec e
+ ret z
+ ld a, $1
+ ld [hli], a
+ dec e
+ ret z
+ xor a
+ ld [hli], a
+ dec e
+ jr nz, .asm_8b7a9
+ ret
+; 8b7bd
+
+Function8b7bd: ; 8b7bd
+ call Function8b855
+ ld hl, MenuDataHeader_0x8b867
+ call CopyMenuDataHeader
+ ld a, [wd030]
+ ld [wPocketCursorBuffer], a
+ ld a, [wd031]
+ ld [wd0e4], a
+ ld a, [wd032]
+ and a
+ jr z, .asm_8b7e0
+ ld a, [wcf81]
+ set 3, a
+ ld [wcf81], a
+
+.asm_8b7e0
+ ld a, [wd0e3]
+ and a
+ jr z, .asm_8b7ea
+ dec a
+ ld [wcf77], a
+
+.asm_8b7ea
+ hlcoord 0, 2
+ ld b, $b
+ ld c, $12
+ call Function8b703
+ call Function8b75d
+ call UpdateSprites
+ call Function89209
+ call Function350c
+ call Function8920f
+ ld a, [wcf73]
+ cp $2
+ jr z, .asm_8b823
+ cp $20
+ jr nz, .asm_8b813
+ call Function8b832
+ jr .asm_8b7ea
+
+.asm_8b813
+ cp $10
+ jr nz, .asm_8b81c
+ call Function8b83e
+ jr .asm_8b7ea
+
+.asm_8b81c
+ ld a, [MenuSelection]
+ cp $ff
+ jr nz, .asm_8b824
+
+.asm_8b823
+ xor a
+
+.asm_8b824
+ ld c, a
+ ld a, [wcfa9]
+ ld [wd030], a
+ ld a, [wd0e4]
+ ld [wd031], a
+ ret
+; 8b832
+
+Function8b832: ; 8b832
+ ld a, [wd0e4]
+ ld hl, wcf92
+ sub [hl]
+ jr nc, Function8b84b
+ xor a
+ jr Function8b84b
+; 8b83e
+
+Function8b83e: ; 8b83e
+ ld a, [wd0e4]
+ ld hl, wcf92
+ add [hl]
+ cp $24
+ jr c, Function8b84b
+ ld a, $24
+
+Function8b84b: ; 8b84b
+ ld [wd0e4], a
+ ld a, [wcfa9]
+ ld [wPocketCursorBuffer], a
+ ret
+; 8b855
+
+Function8b855: ; 8b855
+ ld a, $28
+ ld hl, DefaultFlypoint
+ ld [hli], a
+ ld c, $28
+ xor a
+.asm_8b85e
+ inc a
+ ld [hli], a
+ dec c
+ jr nz, .asm_8b85e
+ ld a, $ff
+ ld [hl], a
+ ret
+; 8b867
+
+MenuDataHeader_0x8b867: ; 0x8b867
+ db $40 ; flags
+ db 03, 01 ; start coords
+ db 13, 18 ; end coords
+ dw MenuData2_0x8b870
+ db 1 ; default option
+; 0x8b86f
+
+ db 0
+
+MenuData2_0x8b870: ; 0x8b870
+ db $3c ; flags
+ db 5 ; items
+ db 3, 1
+ dbw 0, wd002
+ dbw BANK(Function8b880), Function8b880
+ dbw BANK(Function8b88c), Function8b88c
+ dbw BANK(Function8b8c8), Function8b8c8
+; 8b880
+
+Function8b880: ; 8b880
+ ld h, d
+ ld l, e
+ ld de, MenuSelection
+ lb bc, PRINTNUM_LEADINGZEROS | 1, 2
+ call PrintNum
+ ret
+; 8b88c
+
+Function8b88c: ; 8b88c
+ call OpenSRAMBank4
+ ld h, d
+ ld l, e
+ push hl
+ ld de, String_89116
+ call Function8931b
+ call Function8932d
+ jr c, .asm_8b8a3
+ ld hl, $0000
+ add hl, bc
+ ld d, h
+ ld e, l
+
+.asm_8b8a3
+ pop hl
+ push hl
+ call PlaceString
+ pop hl
+ ld d, $0
+ ld e, $6
+ add hl, de
+ push hl
+ ld de, String_89116
+ call Function8931b
+ call Function8934a
+ jr c, .asm_8b8c0
+ ld hl, $0006
+ add hl, bc
+ ld d, h
+ ld e, l
+
+.asm_8b8c0
+ pop hl
+ call PlaceString
+ call CloseSRAM
+ ret
+; 8b8c8
+
+Function8b8c8: ; 8b8c8
+ hlcoord 0, 14
+ ld b, $2
+ ld c, $12
+ call TextBox
+ ld a, [wd033]
+ ld b, 0
+ ld c, a
+ ld hl, Unknown_8b903
+rept 2
+ add hl, bc
+endr
+ ld a, [hli]
+ ld h, [hl]
+ ld l, a
+ ld d, h
+ ld e, l
+ hlcoord 1, 16
+ call PlaceString
+ hlcoord 0, 13
+ ld a, $f
+ ld [hl], a
+ hlcoord 19, 13
+ ld a, $11
+ ld [hl], a
+ ld a, [wd0e4]
+ cp $24
+ ret c
+ hlcoord 0, 13
+ ld c, $12
+ call Function8b732
+ ret
+; 8b903
+
+Unknown_8b903: ; 8b903
+ dw String_8b90b
+ dw String_8b919
+ dw String_8b92a
+ dw String_8b938
+
+String_8b90b: db "めいしを えらんでください@" ; Please select a noun.
+String_8b919: db "どの めいしと いれかえますか?@" ; OK to swap with any noun?
+String_8b92a: db "あいてを えらんでください@" ; Please select an opponent.
+String_8b938: db "いれる ところを えらんでください@" ; Please select a location.
+; 8b94a
+
+Function8b94a: ; 8b94a
+ ld [wd033], a
+ xor a
+ ld [wd0e4], a
+ ld [wd032], a
+ ld [wd0e3], a
+ ld [wd031], a
+ ld a, $1
+ ld [wd030], a
+ ret
+; 8b960
+
+
+Function8b960: ; 8b960 (22:7960)
+ ld hl, MenuDataHeader_0x8b9ac
+ call LoadMenuDataHeader
+ call Function8b9e9
+ jr c, .asm_8b97a
+ hlcoord 11, 0
+ ld b, $6
+ ld c, $7
+ call Function8b703
+ ld hl, MenuDataHeader_0x8b9b1
+ jr .asm_8b987
+.asm_8b97a
+ hlcoord 11, 0
+ ld b, $a
+ ld c, $7
+ call Function8b703
+ ld hl, MenuDataHeader_0x8b9ca
+.asm_8b987
+ ld a, $1
+ call Function89d5e
+ ld hl, Function8b9ab
+ call Function89d85
+ call ExitMenu
+ jr c, .asm_8b99c
+ call Function8b99f
+ jr nz, .asm_8b99d
+.asm_8b99c
+ xor a
+.asm_8b99d
+ ld c, a
+ ret
+
+Function8b99f: ; 8b99f (22:799f)
+ ld hl, DefaultFlypoint
+ dec a
+ ld c, a
+ ld b, $0
+ add hl, bc
+ ld a, [hl]
+ cp $ff
+ ret
+; 8b9ab (22:79ab)
+
+Function8b9ab: ; 8b9ab
+ ret
+; 8b9ac
+
+MenuDataHeader_0x8b9ac: ; 0x8b9ac
+ db $40 ; flags
+ db 00, 11 ; start coords
+ db 11, 19 ; end coords
+
+MenuDataHeader_0x8b9b1: ; 0x8b9b1
+ db $40 ; flags
+ db 00, 11 ; start coords
+ db 07, 19 ; end coords
+ dw MenuData2_0x8b9b9
+ db 1 ; default option
+; 0x8b9b9
+
+MenuData2_0x8b9b9: ; 0x8b9b9
+ db $a0 ; flags
+ db 3 ; items
+ db "へんしゅう@" ; EDIT
+ db "いれかえ@" ; REPLACE
+ db "やめる@" ; QUIT
+; 0x8b9ca
+
+MenuDataHeader_0x8b9ca: ; 0x8b9ca
+ db $40 ; flags
+ db 00, 11 ; start coords
+ db 11, 19 ; end coords
+ dw MenuData2_0x8b9d2
+ db 1 ; default option
+; 0x8b9d2
+
+MenuData2_0x8b9d2: ; 0x8b9d2
+ db $a0 ; flags
+ db 5 ; items
+ db "みる@" ; VIEW
+ db "へんしゅう@" ; EDIT
+ db "いれかえ@" ; REPLACE
+ db "けす@" ; ERASE
+ db "やめる@" ; QUIT
+; 0x8b9e9
+
+Function8b9e9: ; 8b9e9 (22:79e9)
+ call OpenSRAMBank4
+ call Function8931b
+ call Function8932d
+ jr nc, .asm_8b9f6
+ jr .asm_8b9ff
+.asm_8b9f6
+ ld hl, $11
+ add hl, bc
+ call Function89b45
+ jr c, .asm_8ba08
+.asm_8b9ff
+ call Function892b4
+ and a
+ ld de, Unknown_8ba1c
+ jr .asm_8ba0c
+.asm_8ba08
+ ld de, Unknown_8ba1f
+ scf
+.asm_8ba0c
+ push af
+ ld hl, DefaultFlypoint
+.asm_8ba10
+ ld a, [de]
+ inc de
+ ld [hli], a
+ cp $ff
+ jr nz, .asm_8ba10
+ call CloseSRAM
+ pop af
+ ret
+; 8ba1c (22:7a1c)
+
+Unknown_8ba1c: ; 8b1ac
+ db 2, 4, -1
+
+Unknown_8ba1f: ; 8ba1f
+ db 1, 2, 4, 3, -1
+; 8ba24
diff --git a/misc/mobile_40.asm b/misc/mobile_40.asm
index f1fbde29d..ebc303400 100644
--- a/misc/mobile_40.asm
+++ b/misc/mobile_40.asm
@@ -84,7 +84,7 @@ Function100082: ; 100082
ld [hLCDStatCustom], a
ld a, $1
ld [$ffc9], a
- ld [$ffe9], a
+ ld [hMobile], a
ei
ret
; 0x1000a4
@@ -93,7 +93,7 @@ Function1000a4: ; 1000a4
di
xor a
ld [$ffc9], a
- ld [$ffe9], a
+ ld [hMobile], a
xor a
ld [hVBlank], a
call NormalSpeed
@@ -166,19 +166,19 @@ Function1000fa: ; 1000fa
ld [rIE], a
xor a
ld [$ffc9], a
- ld [$ffe9], a
+ ld [hMobile], a
ei
- ld a, [InLinkBattle]
+ ld a, [wLinkMode]
push af
xor a
- ld [InLinkBattle], a
+ ld [wLinkMode], a
ld a, $4
ld [wPartyMonMenuIconAnims + 5], a
callba Function11619d
ld hl, wcd29
set 6, [hl]
pop af
- ld [InLinkBattle], a
+ ld [wLinkMode], a
ret
; 100144
@@ -332,7 +332,7 @@ Function100232: ; 100232
pop de
call PlaceString
call Function100320
- call Functiona36
+ call JoyWaitAorB
ret
; 10024d
@@ -432,7 +432,7 @@ Function100301: ; 100301
callba Function10202c
callba Function115dd3
call Function100320
- call Functiona36
+ call JoyWaitAorB
ret
; 100320
@@ -1612,7 +1612,7 @@ Function100a09: ; 100a09
call Function100a2e
ld [wd431], a
callba Function4000
- ld a, [InLinkBattle]
+ ld a, [wLinkMode]
cp $4
jr nz, .asm_100a2a
@@ -1787,12 +1787,12 @@ Function100b12: ; 100b12
ld a, BANK(BattleMenuDataHeader)
ld [wcf94], a
ld a, [wd0d2]
- ld [wcf88], a
+ ld [wPocketCursorBuffer], a
call Function100e72
call Function100b45
callba Function8e85
call Function100ed4
- ld a, [wcf88]
+ ld a, [wPocketCursorBuffer]
ld [wd0d2], a
call ExitMenu
ret
@@ -1819,7 +1819,7 @@ Function100b45: ; 100b45
ld c, a
ld a, [wcfa3]
call SimpleMultiply
- ld [wcf88], a
+ ld [wPocketCursorBuffer], a
and a
ret
; 100b7a
@@ -1960,7 +1960,7 @@ Function100c74: ; 100c74
ld c, 8
call TextBox
ld hl, BattleMonMoves
- ld de, wd25e
+ ld de, wListMoves_MoveIndicesBuffer
ld bc, NUM_MOVES
call CopyBytes
ld a, SCREEN_WIDTH * 2
@@ -2011,7 +2011,7 @@ Function100cb5: ; 100cb5
cp b
jr z, .asm_100d17
ld [wd0d8], a
- ld a, [$ffa9]
+ ld a, [hJoyLast]
ld b, a
bit 1, b
jr nz, .asm_100d17
@@ -2135,7 +2135,7 @@ Function100db0: ; 100db0
Function100dc0: ; 100dc0
- ld a, [InLinkBattle]
+ ld a, [wLinkMode]
cp $4
jr nz, .asm_100dd0
ld hl, wcd2a
@@ -2498,7 +2498,7 @@ Unknown_100ff3: ; 100ff3
dbwww $80, PlayerName, NAME_LENGTH, NULL
dbwww $80, PlayerName, NAME_LENGTH, NULL
dbwww $80, PlayerID, 2, NULL
- dbwww $80, wd84a, 2, NULL
+ dbwww $80, wSecretID, 2, NULL
dbwww $80, PlayerGender, 1, NULL
dbwww $04, $a603, 8, NULL
dbwww $04, $a007, $30, NULL
@@ -2771,13 +2771,13 @@ Function1011f1: ; 1011f1
ld [wdc5f], a
ld [wdc60], a
ld a, $4
- ld [InLinkBattle], a
+ ld [wLinkMode], a
ret
; 101220
Function101220: ; 101220
xor a
- ld [InLinkBattle], a
+ ld [wLinkMode], a
ret
; 101225
@@ -3912,7 +3912,7 @@ Function101913: ; 101913
; 10194b
Function10194b: ; 10194b
- call Function2ed3
+ call DisableSpriteUpdates
call ClearSprites
callba Function1021f9
ld hl, wcd29
@@ -4980,7 +4980,7 @@ Function102142: ; 102142
call MenuTextBox
ld de, SFX_LEVEL_UP
call PlaySFX
- call Functiona36
+ call JoyWaitAorB
call ExitMenu
call Function10219f
ld hl, UnknownText_0x1021d6
@@ -5023,7 +5023,7 @@ Function10219f: ; 10219f
call Function10218d
ld de, $c608 + 1
callba Function8ac4e
- call Functiona36
+ call JoyWaitAorB
call PlayClickSFX
call Function1013aa
ret
@@ -5057,7 +5057,7 @@ UnknownText_0x1021db: ; 1021d1
Function1021e0: ; 1021e0
call MenuTextBox
- call Functiona36
+ call JoyWaitAorB
call ExitMenu
ret
; 1021ea
@@ -5402,7 +5402,7 @@ Function102423: ; 102423
call Function102921
ret nc
callba Function14a58
- callba Function1060af
+ callba MobileFn_1060af
callba Function106187
ld hl, wcd4b
set 1, [hl]
@@ -6409,7 +6409,7 @@ Function102b12: ; 102b12
ld c, $64
call DelayFrames
call Function102d9a
- call Functione58
+ call LoadFontsBattleExtra
ld a, [wcd2f]
and a
jr nz, .asm_102b2b
@@ -6613,12 +6613,12 @@ Function102c71: ; 102c71
; 102c87
Function102c87: ; 102c87
- ld a, [wcf63]
+ ld a, [wJumptableIndex]
push af
ld a, [wcf64]
push af
ld a, [wcd4c]
- ld [wcf63], a
+ ld [wJumptableIndex], a
ld a, [PartyCount]
ld [wcf64], a
ld a, $0
@@ -6633,7 +6633,7 @@ Function102c87: ; 102c87
ld bc, $011a
call Function102d3e
ld a, [wcd4d]
- ld [wcf63], a
+ ld [wJumptableIndex], a
ld a, [OTPartyCount]
ld [wcf64], a
ld a, $5
@@ -6650,18 +6650,18 @@ Function102c87: ; 102c87
pop af
ld [wcf64], a
pop af
- ld [wcf63], a
+ ld [wJumptableIndex], a
ret
; 102cee
Function102cee: ; 102cee
- ld a, [wcf63]
+ ld a, [wJumptableIndex]
dec a
call Function102d34
ld de, DefaultFlypoint
ld bc, $002f
call CopyBytes
- ld a, [wcf63]
+ ld a, [wJumptableIndex]
ld c, a
ld a, $6
sub c
@@ -6670,7 +6670,7 @@ Function102cee: ; 102cee
ld hl, $0000
call AddNTimes
push hl
- ld a, [wcf63]
+ ld a, [wJumptableIndex]
dec a
call Function102d34
ld d, h
@@ -6803,7 +6803,7 @@ Function102e07: ; 102e07
hlcoord 3, 10
ld b, $1
ld c, $b
- ld a, [IsInBattle]
+ ld a, [wBattleMode]
and a
jr z, .asm_102e19
call TextBox
@@ -7689,7 +7689,7 @@ Function103612: ; 103612
ld a, [wdc40]
and $f
jr z, .asm_103622
- ld [wcf88], a
+ ld [wPocketCursorBuffer], a
.asm_103622
call InterpretMenu2
@@ -7750,7 +7750,7 @@ Mobile_SelectThreeMons: ; 10366e
jr c, .asm_103696
callba Function8b1e1
jr nc, .asm_103690
- call Functiona36
+ call JoyWaitAorB
jr .asm_103696
.asm_103690
@@ -7773,7 +7773,7 @@ Mobile_SelectThreeMons: ; 10366e
call YesNoBox
jr c, .asm_1036b5
call Function1036f9
- call Functiona36
+ call JoyWaitAorB
.asm_1036b5
call Function103700
@@ -7795,7 +7795,7 @@ Mobile_SelectThreeMons: ; 10366e
.asm_1036d9
callba Function8b1e1
jr nc, .asm_1036e6
- call Functiona36
+ call JoyWaitAorB
jr .asm_1036f4
.asm_1036e6
@@ -7805,7 +7805,7 @@ Mobile_SelectThreeMons: ; 10366e
.asm_1036ec
call Function1036f9
- call Functiona36
+ call JoyWaitAorB
jr .asm_1036b5
.asm_1036f4
@@ -7860,7 +7860,7 @@ Function103700: ; 103700
.asm_10373c
ld hl, UnknownText_0x10377b
call PrintText
- call Functiona36
+ call JoyWaitAorB
scf
ret
; 103747
@@ -7982,10 +7982,10 @@ Function1037eb: ; 1037eb
jr nc, .asm_103807
ld hl, UnknownText_0x103819
call PrintText
- call Functiona36
+ call JoyWaitAorB
ld hl, UnknownText_0x10381e
call PrintText
- call Functiona36
+ call JoyWaitAorB
xor a
ld [ScriptVar], a
ret
@@ -8043,7 +8043,7 @@ endr
ld [hl], a
ld hl, UnknownText_0x103876
call PrintText
- call Functiona36
+ call JoyWaitAorB
callba Script_reloadmappart
callba Function4a94e
jr c, .asm_103870
@@ -8075,7 +8075,7 @@ Function10387b: ; 10387b
ld [StringBuffer2], a
ld hl, UnknownText_0x103898
call PrintText
- call Functiona36
+ call JoyWaitAorB
ret
; 103898
diff --git a/misc/mobile_42.asm b/misc/mobile_42.asm
index a66e375ea..e09899f48 100644
--- a/misc/mobile_42.asm
+++ b/misc/mobile_42.asm
@@ -124,7 +124,7 @@ Function108089: ; 108089
Function1080b7: ; 1080b7
xor a
- ld [wcf63], a
+ ld [wJumptableIndex], a
call WhiteBGMap
call ClearSprites
call ClearTileMap
@@ -132,7 +132,7 @@ Function1080b7: ; 1080b7
call Function1081ad
call Function1081ca
call Functione51
- call Functione58
+ call LoadFontsBattleExtra
ld a, $1
ld [rVBK], a
ld hl, LZ_108da7
@@ -141,7 +141,7 @@ Function1080b7: ; 1080b7
ld a, $0
ld [rVBK], a
ld hl, LZ_108d27
- ld de, $8200
+ ld de, VTiles0 tile $20
call Decompress
call EnableLCD
xor a
@@ -158,7 +158,7 @@ Function1080b7: ; 1080b7
lb bc, BANK(TradeBallGFX), $06
call Request2bpp
ld de, TradePoofGFX
- ld hl, $8060
+ ld hl, VTiles0 tile $06
lb bc, BANK(TradePoofGFX), $0c
call Request2bpp
xor a
@@ -167,11 +167,11 @@ Function1080b7: ; 1080b7
ld [hl], $0
ld a, [$c6d0]
ld hl, $c6fd
- ld de, $8300
+ ld de, VTiles0 tile $30
call Function1081e9
ld a, [wc702]
ld hl, wc72f
- ld de, $9310
+ ld de, VTiles2 tile $31
call Function1081e9
ld a, [$c6d0]
ld de, $c6d1
@@ -187,7 +187,7 @@ Function1080b7: ; 1080b7
Function108157: ; 108157
xor a
- ld [wcf63], a
+ ld [wJumptableIndex], a
call WhiteBGMap
call ClearSprites
call ClearTileMap
@@ -195,7 +195,7 @@ Function108157: ; 108157
call Function1081ad
call Function1081ca
call Functione51
- call Functione58
+ call LoadFontsBattleExtra
call EnableLCD
xor a
ld [hSCX], a
@@ -310,7 +310,7 @@ Function108239: ; 108239
; 10824b
Function10824b: ; 10824b
- ld a, [wcf63]
+ ld a, [wJumptableIndex]
bit 7, a
jr nz, .asm_10825a
call Function10827b
@@ -327,7 +327,7 @@ Function10824b: ; 10824b
ld a, $90
ld [hWY], a
call Functione51
- call Functione58
+ call LoadFontsBattleExtra
callba Function106462
callba Function106464
scf
@@ -335,7 +335,7 @@ Function10824b: ; 10824b
; 10827b
Function10827b: ; 10827b
- ld a, [wcf63]
+ ld a, [wJumptableIndex]
ld e, a
ld d, 0
ld hl, Jumptable_10828a
@@ -372,7 +372,7 @@ Jumptable_10828a: ; 10828a
; 1082b2
Function1082b2: ; 1082b2
- ld hl, wcf63
+ ld hl, wJumptableIndex
inc [hl]
ret
; 1082b7
@@ -383,7 +383,7 @@ Function1082b7: ; 1082b7
inc hl
ld d, [hl]
ld a, [de]
- ld [wcf63], a
+ ld [wJumptableIndex], a
inc de
ld [hl], d
dec hl
@@ -392,7 +392,7 @@ Function1082b7: ; 1082b7
; 1082c6
Function1082c6: ; 1082c6
- ld hl, wcf63
+ ld hl, wJumptableIndex
set 7, [hl]
ret
; 1082cc
@@ -587,7 +587,7 @@ Function10842c: ; 10842c
lb bc, BANK(TradeBallGFX), $06
call Request2bpp
ld de, TradePoofGFX
- ld hl, $8060
+ ld hl, VTiles0 tile $06
lb bc, BANK(TradePoofGFX), $0c
call Request2bpp
ld a, [$c6fd]
@@ -661,7 +661,7 @@ Function1084d7: ; 1084d7
lb bc, BANK(TradeBallGFX), $06
call Request2bpp
ld de, TradePoofGFX
- ld hl, $8060
+ ld hl, VTiles0 tile $06
lb bc, BANK(TradePoofGFX), $0c
call Request2bpp
xor a
@@ -730,7 +730,7 @@ Function108589: ; 108589
lb bc, BANK(TradeBallGFX), $06
call Request2bpp
ld de, TradePoofGFX
- ld hl, $8060
+ ld hl, VTiles0 tile $06
lb bc, BANK(TradePoofGFX), $0c
call Request2bpp
xor a
@@ -832,7 +832,7 @@ Function108689: ; 108689
ld a, $0
ld [rVBK], a
ld hl, LZ_108d27
- ld de, $8200
+ ld de, VTiles0 tile $20
call Decompress
call Function108c80
call Function108c6d
@@ -876,7 +876,7 @@ Function1086f4: ; 1086f4
ld a, $0
ld [rVBK], a
ld hl, LZ_108d27
- ld de, $8200
+ ld de, VTiles0 tile $20
call Decompress
call Function108c80
call Function108c6d
@@ -1195,11 +1195,11 @@ Function10893d: ; 10893d
; 10895e
Function10895e: ; 10895e
- ld de, $8300
+ ld de, VTiles0 tile $30
jr asm_108966
Function108963:
- ld de, $9310
+ ld de, VTiles2 tile $31
asm_108966
call DelayFrame
@@ -1270,8 +1270,8 @@ Function1089d2:
asm_1089fc
call WaitTop
call Function108ac8
- ld a, $9c
- ld [$ffd7], a
+ ld a, VBGMap1 / $100
+ ld [hBGMapAddress + 1], a
hlcoord 5, 0
ld b, $6
ld c, $9
@@ -1293,8 +1293,8 @@ String_108a1d: ; 108a1d
Function108a33: ; 108a33
call WaitTop
call Function108ac8
- ld a, $9c
- ld [$ffd7], a
+ ld a, VBGMap1 / $100
+ ld [hBGMapAddress + 1], a
hlcoord 5, 0
ld b, $6
ld c, $9
@@ -1313,8 +1313,8 @@ String_108a54: ; 108a54
Function108a5b: ; 108a5b
call WaitTop
call Function108ac8
- ld a, $9c
- ld [$ffd7], a
+ ld a, VBGMap1 / $100
+ ld [hBGMapAddress + 1], a
hlcoord 4, 0
ld b, $6
ld c, $a
@@ -1336,8 +1336,8 @@ String_108a79: ; 108a79
Function108a87: ; 108a87
call WaitBGMap
call WaitTop
- ld a, $98
- ld [$ffd7], a
+ ld a, VBGMap0 / $100
+ ld [hBGMapAddress + 1], a
ret
; 108a92
@@ -1405,7 +1405,7 @@ Function108ad4: ; 108ad4
.asm_108adf
ld a, $1
ld [rVBK], a
- ld hl, $94a0
+ ld hl, VTiles2 tile $4a
lb bc, $42, $10
call Functiondc9
call DelayFrame
diff --git a/misc/mobile_45.asm b/misc/mobile_45.asm
index 8c9073bcc..e0ea8d457 100644
--- a/misc/mobile_45.asm
+++ b/misc/mobile_45.asm
@@ -703,7 +703,7 @@ endr
ld a, d
or e
jr z, .asm_114559
- ld hl, wdc07
+ ld hl, wCurrMapTriggerCount
ld e, [hl]
inc hl
ld d, [hl]
@@ -1537,7 +1537,7 @@ Function1149cc: ; 1149cc
ld [hl], d
dec hl
ld [hl], e
- ld hl, wdc07
+ ld hl, wCurrMapTriggerCount
ld e, [hl]
inc hl
ld d, [hl]
@@ -2416,14 +2416,14 @@ Function114e62: ; 114e62
ld a, c
and a
jr nz, .asm_114e6f
- ld a, [wdc23]
+ ld a, [wStartDay]
and a
jp z, Function11425c
jr .asm_114e76
.asm_114e6f
xor a
- ld [wdc23], a
+ ld [wStartDay], a
call Function114ee9
.asm_114e76
@@ -2494,7 +2494,7 @@ Function114ea0: ; 114ea0
ld [hli], a
ld [hl], b
xor a
- ld [wdc23], a
+ ld [wStartDay], a
ret
.asm_114edb
@@ -2614,7 +2614,7 @@ Function114f39: ; 114f39
; 114f59
Function114f59: ; 114f59
- ld a, [wdc23]
+ ld a, [wStartDay]
and a
jr nz, .asm_114f7c
ld a, [wdc03]
@@ -2632,7 +2632,7 @@ Function114f59: ; 114f59
and a
jr nz, .asm_114fe7
ld a, $1
- ld [wdc23], a
+ ld [wStartDay], a
.asm_114f7c
ld a, [wdc03]
@@ -2811,7 +2811,7 @@ Function115062: ; 115062
ld d, [hl]
ld b, $0
ld hl, wdc24
- ld a, [wdc23]
+ ld a, [wStartDay]
cp $1
jr z, .asm_11509b
cp $2
@@ -2836,14 +2836,14 @@ Function115062: ; 115062
call Function115d53
call Function1150b3
call Function115136
- ld a, [wdc23]
+ ld a, [wStartDay]
inc a
cp $4
jr nz, .asm_1150ae
ld a, $2
.asm_1150ae
- ld [wdc23], a
+ ld [wStartDay], a
xor a
.asm_1150b2
@@ -3329,7 +3329,7 @@ Function1152b8: ; 1152b8
call Function114ea0
and a
jr nz, .asm_1152f9
- ld [wdc23], a
+ ld [wStartDay], a
ld a, [wdc03]
cp $6
jr nz, .asm_1152ca
@@ -3337,7 +3337,7 @@ Function1152b8: ; 1152b8
.asm_115335
call Function1153b5
xor a
- ld [wdc23], a
+ ld [wStartDay], a
call Function114f59
and a
jr nz, .asm_1152f9
@@ -3355,7 +3355,7 @@ Function1152b8: ; 1152b8
jr z, .asm_11536b
call Function1153b5
xor a
- ld [wdc23], a
+ ld [wStartDay], a
call Function114f59
and a
jr nz, .asm_1152f9
@@ -3425,7 +3425,7 @@ Function11537d: ; 11537d
ld [hl], d
xor a
ld [wdc03], a
- ld [wdc23], a
+ ld [wStartDay], a
ret
; 1153b5
@@ -3645,7 +3645,7 @@ Function1153d2: ; 1153d2
Function1154d4: ; 1154d4
xor a
- ld [wdc23], a
+ ld [wStartDay], a
call Function1155af
call Function11560a
and a
@@ -3659,7 +3659,7 @@ Function1154d4: ; 1154d4
cp $1
jr nz, .asm_115531
xor a
- ld [wdc1c], a
+ ld [wDailyResetTimer], a
.asm_1154f7
ld a, [BigDoll]
cp $2
@@ -3699,7 +3699,7 @@ Function1154d4: ; 1154d4
.asm_115531
ld a, $1
- ld [wdc1c], a
+ ld [wDailyResetTimer], a
ld a, $b
ld [wdc03], a
call Function114f59
@@ -3726,7 +3726,7 @@ Function1154d4: ; 1154d4
call Function114ea0
and a
jr nz, .asm_11552c
- ld a, [wdc1c]
+ ld a, [wDailyResetTimer]
and a
jr z, .asm_11557d
ld a, $f
@@ -3860,7 +3860,7 @@ Function11560a: ; 11560a
ld c, [hl]
inc hl
ld b, [hl]
- ld a, [wdc0a]
+ ld a, [wCurrMapCallbackCount]
cp b
jp c, .asm_1156b1
jr nz, .asm_115631
@@ -3874,7 +3874,7 @@ Function11560a: ; 11560a
jr z, .asm_1156a9
ld a, [wdc09]
ld l, a
- ld a, [wdc0a]
+ ld a, [wCurrMapCallbackCount]
ld h, a
ld a, c
cpl
@@ -3887,7 +3887,7 @@ Function11560a: ; 11560a
ld a, l
ld [wdc09], a
ld a, h
- ld [wdc0a], a
+ ld [wCurrMapCallbackCount], a
.asm_11564d
ld a, $3
cp b
@@ -3929,13 +3929,13 @@ Function11560a: ; 11560a
ld a, [wCurrentMapSignpostCount]
ld [$ff8c], a
ld [$4000], a
- ld hl, wdc07
+ ld hl, wCurrMapTriggerCount
ld e, [hl]
inc hl
ld d, [hl]
ld hl, wdc24
call Function115d6a
- ld hl, wdc07
+ ld hl, wCurrMapTriggerCount
ld [hl], e
inc hl
ld [hl], d
@@ -3977,7 +3977,7 @@ Function11560a: ; 11560a
; 1156cc
Function1156cc: ; 1156cc
- ld a, [wdc23]
+ ld a, [wStartDay]
and a
jp z, Function11425c
cp $2
@@ -4006,7 +4006,7 @@ Function1156cc: ; 1156cc
call Function11581e
and a
jr nz, .asm_11572b
- ld a, [wdc23]
+ ld a, [wStartDay]
cp $5
jr z, .asm_115716
ld a, [Poster]
@@ -4017,7 +4017,7 @@ Function1156cc: ; 1156cc
jp Function11425c
.asm_115716
- ld hl, wdc0a
+ ld hl, wCurrMapCallbackCount
ld a, [hli]
cpl
ld e, a
@@ -4030,7 +4030,7 @@ Function1156cc: ; 1156cc
ld l, a
add hl, de
xor a
- ld [wdc23], a
+ ld [wStartDay], a
jp Function11425c
.asm_11572b
@@ -4165,7 +4165,7 @@ Function11575c: ; 11575c
pop hl
add hl, bc
ld a, $2
- ld [wdc23], a
+ ld [wStartDay], a
ret
; 1157d0
@@ -4213,7 +4213,7 @@ Function1157d0: ; 1157d0
ld a, b
ld [Bed], a
ld a, $4
- ld [wdc23], a
+ ld [wStartDay], a
ret
.asm_11580f
@@ -4223,12 +4223,12 @@ Function1157d0: ; 1157d0
ld a, b
ld [Bed], a
ld a, $3
- ld [wdc23], a
+ ld [wStartDay], a
ret
; 11581e
Function11581e: ; 11581e
- ld a, [wdc23]
+ ld a, [wStartDay]
and a
ret z
ld a, [wdc0e]
@@ -4262,9 +4262,9 @@ Function11581e: ; 11581e
ld b, [hl]
inc hl
push hl
- ld a, [wdc0a]
+ ld a, [wCurrMapCallbackCount]
ld l, a
- ld a, [wdc0b]
+ ld a, [wCurrMapCallbackHeaderPointer]
ld h, a
cp b
jr c, .asm_1158bb
@@ -4284,12 +4284,12 @@ Function11581e: ; 11581e
inc bc
add hl, bc
ld a, l
- ld [wdc0a], a
+ ld [wCurrMapCallbackCount], a
ld a, h
- ld [wdc0b], a
+ ld [wCurrMapCallbackHeaderPointer], a
pop bc
pop hl
- ld hl, wdc07
+ ld hl, wCurrMapTriggerCount
ld a, [hli]
ld [wCurrentMapSignpostCount], a
ld [$ff8c], a
@@ -4299,13 +4299,13 @@ Function11581e: ; 11581e
ld d, [hl]
ld hl, PartyMon5Speed
call Function115d6a
- ld hl, wdc07
+ ld hl, wCurrMapTriggerCount
ld a, [wCurrentMapSignpostCount]
ld [hli], a
ld a, e
ld [hli], a
ld [hl], d
- ld a, [wdc23]
+ ld a, [wStartDay]
cp $3
jr z, .asm_1158b4
cp $4
@@ -4314,12 +4314,12 @@ Function11581e: ; 11581e
.asm_1158ad
ld a, $5
- ld [wdc23], a
+ ld [wStartDay], a
jr .asm_1158b9
.asm_1158b4
ld a, $2
- ld [wdc23], a
+ ld [wStartDay], a
.asm_1158b9
xor a
@@ -4330,7 +4330,7 @@ Function11581e: ; 11581e
.asm_1158bc
ld a, $ff
- ld [wdc23], a
+ ld [wStartDay], a
ret
; 1158c2
@@ -4575,7 +4575,7 @@ Function1159dc: ; 1159dc
; 1159fb
Function1159fb: ; 1159fb
- ld a, [wdc23]
+ ld a, [wStartDay]
and a
jp z, Function11425c
cp $2
@@ -4604,7 +4604,7 @@ Function1159fb: ; 1159fb
call Function115b00
and a
jr nz, .asm_115a5a
- ld a, [wdc23]
+ ld a, [wStartDay]
cp $5
jr z, .asm_115a45
ld a, [Poster]
@@ -4615,7 +4615,7 @@ Function1159fb: ; 1159fb
jp Function11425c
.asm_115a45
- ld hl, wdc0a
+ ld hl, wCurrMapCallbackCount
ld a, [hli]
cpl
ld e, a
@@ -4628,7 +4628,7 @@ Function1159fb: ; 1159fb
ld l, a
add hl, de
xor a
- ld [wdc23], a
+ ld [wStartDay], a
jp Function11425c
.asm_115a5a
@@ -4692,7 +4692,7 @@ Function115a5f: ; 115a5f
rl b
add hl, bc
ld a, $2
- ld [wdc23], a
+ ld [wStartDay], a
ret
; 115ab0
@@ -4740,7 +4740,7 @@ Function115ab0: ; 115ab0
ld a, b
ld [Bed], a
ld a, $4
- ld [wdc23], a
+ ld [wStartDay], a
xor a
ret
@@ -4751,13 +4751,13 @@ Function115ab0: ; 115ab0
ld a, b
ld [Bed], a
ld a, $3
- ld [wdc23], a
+ ld [wStartDay], a
xor a
ret
; 115b00
Function115b00: ; 115b00
- ld a, [wdc23]
+ ld a, [wStartDay]
and a
ret z
ld a, [wdc0e]
@@ -4780,7 +4780,7 @@ Function115b00: ; 115b00
jr z, .asm_115b43
cp $2
jr z, .asm_115b3b
- ld a, [wdc23]
+ ld a, [wStartDay]
cp $4
jr z, .asm_115b43
rept 2
@@ -4798,7 +4798,7 @@ endr
.asm_115b3d
ld a, $ff
- ld [wdc23], a
+ ld [wStartDay], a
ret
.asm_115b43
@@ -4826,9 +4826,9 @@ endr
ld b, [hl]
inc hl
push hl
- ld a, [wdc0a]
+ ld a, [wCurrMapCallbackCount]
ld l, a
- ld a, [wdc0b]
+ ld a, [wCurrMapCallbackHeaderPointer]
ld h, a
cp b
jr c, .asm_115b36
@@ -4848,12 +4848,12 @@ endr
inc bc
add hl, bc
ld a, l
- ld [wdc0a], a
+ ld [wCurrMapCallbackCount], a
ld a, h
- ld [wdc0b], a
+ ld [wCurrMapCallbackHeaderPointer], a
pop bc
pop hl
- ld hl, wdc07
+ ld hl, wCurrMapTriggerCount
ld a, [hli]
ld [wCurrentMapSignpostCount], a
ld [$ff8c], a
@@ -4863,13 +4863,13 @@ endr
ld d, [hl]
ld hl, wdc26
call Function115d6a
- ld hl, wdc07
+ ld hl, wCurrMapTriggerCount
ld a, [wCurrentMapSignpostCount]
ld [hli], a
ld a, e
ld [hli], a
ld [hl], d
- ld a, [wdc23]
+ ld a, [wStartDay]
cp $3
jr z, .asm_115bc1
cp $4
@@ -4878,12 +4878,12 @@ endr
.asm_115bba
ld a, $5
- ld [wdc23], a
+ ld [wStartDay], a
jr .asm_115bc6
.asm_115bc1
ld a, $2
- ld [wdc23], a
+ ld [wStartDay], a
.asm_115bc6
xor a
@@ -4949,7 +4949,7 @@ Function115bc8: ; 115bc8
jr nz, .asm_115bcc
.asm_115c1b
- ld a, [wdc23]
+ ld a, [wStartDay]
cp $4
jr z, .asm_115c33
ld a, [de]
@@ -5053,7 +5053,7 @@ endr
.asm_115c99
ld a, $ff
- ld [wdc23], a
+ ld [wStartDay], a
ret
.asm_115c9f
@@ -5156,7 +5156,7 @@ Function115cfd: ; 115cfd
pop hl
pop hl
ld a, $ff
- ld [wdc23], a
+ ld [wStartDay], a
ret
.asm_115d2f
@@ -5268,7 +5268,7 @@ Function115d80: ; 115d80
Function115d99: ; 115d99
ld de, GFX_11601a
- ld hl, $8600
+ ld hl, VTiles0 tile $60
lb bc, BANK(GFX_11601a), $14
call Get2bpp
xor a
@@ -5976,7 +5976,7 @@ Function1163c0: ; 1163c0
pop af
ld [rSVBK], a
callba Function104061
- ld a, [InLinkBattle]
+ ld a, [wLinkMode]
cp $4
jr z, .asm_11642a
ld a, $8
@@ -7656,13 +7656,13 @@ Function117656: ; 117656
; 11765d
Function11765d: ; 11765d (45:765d)
- ld a, [$ffaa]
+ ld a, [hInMenu]
push af
ld a, $1
- ld [$ffaa], a
+ ld [hInMenu], a
call Function11766b
pop af
- ld [$ffaa], a
+ ld [hInMenu], a
ret
Function11766b: ; 11766b (45:766b)
@@ -7716,7 +7716,7 @@ Function117699: ; 117699 (45:7699)
ret
Function1176ee: ; 1176ee (45:76ee)
- call Functiona57
+ call JoyTextDelay
ld a, [wcd49]
bit 7, a
jr nz, .asm_117709
@@ -7798,7 +7798,7 @@ Function117764: ; 117764 (45:7764)
ld a, [hl]
and $2
jr nz, asm_1177d6
- ld hl, $ffa9
+ ld hl, hJoyLast
ld a, [hl]
and $40
jr nz, asm_1177f1
@@ -7973,11 +7973,11 @@ Function1178aa: ; 1178aa (45:78aa)
ld hl, MenuDataHeader_1179b5
call LoadMenuDataHeader
call Function1cbb
- call Function1cfd
+ call GetMemTileCoord
ld hl, MenuDataHeader_1179bd
call LoadMenuDataHeader
call Function1cbb
- call Function1cfd
+ call GetMemTileCoord
callba Function104061
hlcoord 16, 8
ld de, String_1179c5
@@ -8076,7 +8076,7 @@ Function117984: ; 117984 (45:7984)
ld hl, MenuDataHeader_1179b5
call LoadMenuDataHeader
call Function1cbb
- call Function1cfd
+ call GetMemTileCoord
callba Function104061
hlcoord 1, 14
ld de, String_1179e1
@@ -8150,13 +8150,13 @@ INCBIN "data/mobile/ascii-sym.txt"
; Mobile Stadium option from the continue/newgame menu.
; XXX better function names
MobileStudium: ; 0x117a7f
- ld a, [$ffaa]
+ ld a, [hInMenu]
push af
ld a, $1
- ld [$ffaa], a
+ ld [hInMenu], a
call Function117a8d
pop af
- ld [$ffaa], a
+ ld [hInMenu], a
ret
; 0x117a8d
@@ -8168,7 +8168,7 @@ Function117a8d: ; 0x117a8d
Function117a94: ; 0x117a94
xor a
- ld [wcf63], a
+ ld [wJumptableIndex], a
ld [wcf64], a
ld [wcf65], a
ld [wcf66], a
@@ -8189,8 +8189,8 @@ Function117ab4: ; 0x117ab4
; 0x117acd
Function117acd: ; 0x117acd
- call Functiona57
- ld a, [wcf63]
+ call JoyTextDelay
+ ld a, [wJumptableIndex]
bit 7, a
jr nz, .asm_117ae2 ; 0x117ad5 $b
call Function117ae9
@@ -8202,7 +8202,7 @@ Function117acd: ; 0x117acd
ret
Function117ae9: ; 0x117ae9
- ld a, [wcf63]
+ ld a, [wJumptableIndex]
ld e, a
ld d, $0
ld hl, Pointers117af8
@@ -8236,7 +8236,7 @@ Function117b14:
ld hl, Data117cbc
call LoadMenuDataHeader
call Function1cbb
- call Function1cfd
+ call GetMemTileCoord
jp Function117cdd
Function117b28:
@@ -8248,7 +8248,7 @@ Function117b31:
ld hl, Data117cc4
call LoadMenuDataHeader
call Function1cbb
- call Function1cfd
+ call GetMemTileCoord
hlcoord 16, 8
ld de, YesNo117ccc
call PlaceString
@@ -8306,7 +8306,7 @@ Function117b4f:
call ExitMenu
callba Function104061
ld a, $80
- ld [wcf63], a
+ ld [wJumptableIndex], a
ret
Function117bb6:
@@ -8325,11 +8325,11 @@ Function117bb6:
ld [wc303], a
callba Function17f555
ld a, $80
- ld [wcf63], a
+ ld [wJumptableIndex], a
ret
.asm_117be1
ld a, $80
- ld [wcf63], a
+ ld [wJumptableIndex], a
ret
.asm_117be7
ld a, [rSVBK]
@@ -8386,7 +8386,7 @@ Function117c4a:
ld hl, Data117cbc
call LoadMenuDataHeader
call Function1cbb
- call Function1cfd
+ call GetMemTileCoord
callba Function104061
ld hl, MobileStadiumSuccessText
call PrintText
@@ -8411,7 +8411,7 @@ Function117c4a:
pop af
ld [rSVBK], a
ld a, $80
- ld [wcf63], a
+ ld [wJumptableIndex], a
ret
Function117c89:
@@ -8464,7 +8464,7 @@ MobileStadiumSuccessText: ; 0x117cd8
db "@"
Function117cdd: ; 0x117cdd
- ld hl, wcf63
+ ld hl, wJumptableIndex
inc [hl]
ret
@@ -8493,7 +8493,7 @@ asm_11800b
ld a, $3
ld [rSVBK], a
.asm_118024
- call Functiona57
+ call JoyTextDelay
call Function118473
ld a, [wcf66]
cp $1b
@@ -8534,7 +8534,7 @@ Function11805f: ; 11805f
ld a, $3
ld [rSVBK], a
.asm_11807d
- call Functiona57
+ call JoyTextDelay
call Function118473
ld a, [wcf66]
cp $1b
@@ -8572,7 +8572,7 @@ Function1180b8: ; 1180b8
ld a, $3
ld [rSVBK], a
.asm_1180d1
- call Functiona57
+ call JoyTextDelay
call Function118473
ld a, [wcf66]
cp $28
@@ -8627,7 +8627,7 @@ Function118125: ; 118125
ld a, $3
ld [rSVBK], a
.asm_11813e
- call Functiona57
+ call JoyTextDelay
call Function118473
ld a, [wcf66]
cp $f
@@ -8712,7 +8712,7 @@ Function1181da: ; 1181da
ld a, $3
ld [rSVBK], a
.asm_1181f8
- call Functiona57
+ call JoyTextDelay
call Function118473
ld a, [wcf66]
cp $28
@@ -8750,7 +8750,7 @@ Function118233: ; 118233
ld a, $3
ld [rSVBK], a
.asm_11824c
- call Functiona57
+ call JoyTextDelay
call Function118473
ld a, [wcf66]
cp $1e
@@ -8787,7 +8787,7 @@ Function118284: ; 118284
ld a, $3
ld [rSVBK], a ; $ff00+$70
.asm_11829d
- call Functiona57
+ call JoyTextDelay
call Function118473
ld a, [wcf66]
cp $20
@@ -8824,7 +8824,7 @@ Function1182d5: ; 1182d5
ld a, $3
ld [rSVBK], a
.asm_1182ee
- call Functiona57
+ call JoyTextDelay
call Function118473
ld a, [wcf66]
cp $1b
@@ -8862,7 +8862,7 @@ Function118329: ; 118329
ld a, $3
ld [rSVBK], a
.asm_118342
- call Functiona57
+ call JoyTextDelay
call Function118473
ld a, [wcf66]
cp $18
@@ -8899,7 +8899,7 @@ Function11837a: ; 11837a
ld a, $3
ld [rSVBK], a
.asm_118393
- call Functiona57
+ call JoyTextDelay
call Function118473
ld a, [wcf66]
cp $19
@@ -8954,7 +8954,7 @@ Function1183cb: ; 1183cb
ld [rIE], a
ld a, $1
ld [$ffc9], a
- ld [$ffe9], a
+ ld [hMobile], a
ei
callba Function106462
callba Function106464
@@ -8984,7 +8984,7 @@ Function118452: ; 118452
di
xor a
ld [$ffc9], a
- ld [$ffe9], a
+ ld [hMobile], a
ld [hVBlank], a
call NormalSpeed
xor a
@@ -9756,7 +9756,7 @@ Function118936:
ld hl, MenuDataHeader_119cf7
call LoadMenuDataHeader
call Function1cbb
- call Function1cfd
+ call GetMemTileCoord
call Function321c
hlcoord 16, 8, AttrMap
ld a, $40
@@ -11817,7 +11817,7 @@ Function119800: ; 119800
ld [wc702], a
ld a, [wcd81]
ld [wc74e], a
- ld a, [wcf63]
+ ld a, [wJumptableIndex]
push af
ld a, [wcf64]
push af
@@ -11840,7 +11840,7 @@ Function119800: ; 119800
pop af
ld [wcf64], a
pop af
- ld [wcf63], a
+ ld [wJumptableIndex], a
callba Function115dc3
jp Function119e2e
; 11984e
@@ -11853,7 +11853,7 @@ Function11984e: ; 11984e
and a
jr nz, .asm_1198a8
callba Function170000
- ld a, [wcf63]
+ ld a, [wJumptableIndex]
push af
ld a, [wcf64]
push af
@@ -11876,7 +11876,7 @@ Function11984e: ; 11984e
pop af
ld [wcf64], a
pop af
- ld [wcf63], a
+ ld [wJumptableIndex], a
callba Function115dc3
jp Function119e2e
@@ -11887,7 +11887,7 @@ Function11984e: ; 11984e
.asm_1198a8
callba Function17005a
- ld a, [wcf63]
+ ld a, [wJumptableIndex]
push af
ld a, [wcf64]
push af
@@ -11910,7 +11910,7 @@ Function11984e: ; 11984e
pop af
ld [wcf64], a
pop af
- ld [wcf63], a
+ ld [wJumptableIndex], a
callba Function115dc3
jp Function119e2e
; 1198ee
@@ -13021,13 +13021,13 @@ Function11a00e: ; 11a00e
.asm_11a081
xor a
- ld [wcf83], a
- ld [wcf82], a
+ ld [wMenuBorderLeftCoord], a
+ ld [wMenuBorderTopCoord], a
ld a, $13
- ld [wcf85], a
+ ld [wMenuBorderRightCoord], a
ld a, $5
- ld [wcf84], a
- call Function1c00
+ ld [wMenuBorderBottomCoord], a
+ call BackUpTiles
callba Function11765d
callba Function117ab4
callba Function106462
@@ -13044,13 +13044,13 @@ Function11a00e: ; 11a00e
Function11a0ca: ; 11a0ca
xor a
- ld [wcf83], a
- ld [wcf82], a
+ ld [wMenuBorderLeftCoord], a
+ ld [wMenuBorderTopCoord], a
ld a, $13
- ld [wcf85], a
+ ld [wMenuBorderRightCoord], a
ld a, $11
- ld [wcf84], a
- call Function1c00
+ ld [wMenuBorderBottomCoord], a
+ call BackUpTiles
callba Function11765d
callba Function17d3f6
callba Function106462
@@ -13211,7 +13211,7 @@ Function11a207: ; 11a207
ld hl, MenuDataHeader_11a2de
call LoadMenuDataHeader
call Function1cbb
- call Function1cfd
+ call GetMemTileCoord
call Function321c
hlcoord 16, 8
ld de, String_11a2cf
@@ -13728,13 +13728,13 @@ Function11a5b0: ; 11a5b0
Function11a5b9: ; 11a5b9
xor a
- ld [wcf83], a
- ld [wcf82], a
+ ld [wMenuBorderLeftCoord], a
+ ld [wMenuBorderTopCoord], a
ld a, $13
- ld [wcf85], a
+ ld [wMenuBorderRightCoord], a
ld a, $5
- ld [wcf84], a
- call Function1c00
+ ld [wMenuBorderBottomCoord], a
+ call BackUpTiles
hlcoord 0, 0, AttrMap
ld b, $6
ld c, $14
@@ -13753,14 +13753,14 @@ Function11a5b9: ; 11a5b9
Function11a5f5: ; 11a5f5
ld a, $e
- ld [wcf83], a
+ ld [wMenuBorderLeftCoord], a
ld a, $13
- ld [wcf85], a
+ ld [wMenuBorderRightCoord], a
ld a, $6
- ld [wcf82], a
+ ld [wMenuBorderTopCoord], a
ld a, $a
- ld [wcf84], a
- call Function1c00
+ ld [wMenuBorderBottomCoord], a
+ call BackUpTiles
hlcoord 14, 6, AttrMap
ld b, $5
ld c, $6
@@ -14311,7 +14311,7 @@ UnknownText_0x11ac1f: ; 0x11ac1f
Function11ac3e: ; 11ac3e
call SpeechTextBox
call FadeToMenu
- callab Function8e814
+ callab InefficientlyClear121BytesAtwc300
call Function11ac51
call Function2b3c
ret
@@ -14328,10 +14328,10 @@ Function11ac51: ; 11ac51
push af
xor a
ld [VramState], a
- ld a, [$ffaa]
+ ld a, [hInMenu]
push af
ld a, $1
- ld [$ffaa], a
+ ld [hInMenu], a
xor a
ld [$ffde], a
ld [wcd49], a
@@ -14342,8 +14342,8 @@ Function11ac51: ; 11ac51
call Function11ad1b
call DelayFrame
.asm_11ac82
- call Functiona57
- ld a, [wcf63]
+ call JoyTextDelay
+ ld a, [wJumptableIndex]
bit 7, a
jr nz, .asm_11aca8
call Function11b314
@@ -14358,7 +14358,7 @@ Function11ac51: ; 11ac51
.asm_11aca8
call ClearSprites
pop af
- ld [$ffaa], a
+ ld [hInMenu], a
pop af
ld [VramState], a
pop af
@@ -14428,7 +14428,7 @@ Function11ad1b: ; 11ad1b
ld a, [wcfa9]
ld [wcd82], a
dec a
- ld [$ffb0], a
+ ld [hConnectedMapWidth], a
ld a, $10
ld [wc3b7], a
ld hl, Function8e83f
@@ -14444,7 +14444,7 @@ Function11ad1b: ; 11ad1b
xor a
call ByteFill
xor a
- ld [wcf63], a
+ ld [wJumptableIndex], a
ld [wcf64], a
ld [wcf65], a
ld [wcf66], a
@@ -14456,7 +14456,7 @@ Function11ad1b: ; 11ad1b
; 11ad6e
Function11ad6e: ; 11ad6e
- ld a, [wcf63]
+ ld a, [wJumptableIndex]
ld hl, Jumptable_11ad78
call Function11b239
jp [hl]
@@ -14475,13 +14475,13 @@ Jumptable_11ad78: ; 11ad78
; 11ad8a
Function11ad8a: ; 11ad8a
- ld hl, wcf63
+ ld hl, wJumptableIndex
inc [hl]
ret
; 11ad8f
Function11ad8f: ; 11ad8f
- ld hl, wcf63
+ ld hl, wJumptableIndex
set 7, [hl]
ret
; 11ad95
@@ -14522,7 +14522,7 @@ Function11adc4:
ret z
call PlayClickSFX
xor a
- ld [wcf63], a
+ ld [wJumptableIndex], a
jr .asm_11ae2e
.asm_11ade6
@@ -14643,7 +14643,7 @@ Function11ae98:
ld a, $7f
ld [hl], a
ld a, $1
- ld [wcf63], a
+ ld [wJumptableIndex], a
jr .asm_11aef7
.asm_11aec1
@@ -14734,7 +14734,7 @@ Function11af4e:
ld a, $7f
ld [hl], a
ld a, $1
- ld [wcf63], a
+ ld [wJumptableIndex], a
jr .asm_11afaa
.asm_11af77
@@ -14765,7 +14765,7 @@ Function11af4e:
cp $2
jr z, .asm_11af6a
ld a, $6
- ld [wcf63], a
+ ld [wJumptableIndex], a
xor a
ld [ScriptVar], a
@@ -15057,7 +15057,7 @@ Function11b0ff: ; 11b0ff
jr .asm_11b148
.asm_11b141
- ld hl, wcf63
+ ld hl, wJumptableIndex
ld a, $7
ld [hl], a
ret
@@ -15090,7 +15090,7 @@ Function11b0ff: ; 11b0ff
.asm_11b16c
ld [wcd30], a
ld a, $4
- ld [wcf63], a
+ ld [wJumptableIndex], a
ret
; 11b175
@@ -15099,7 +15099,7 @@ Function11b175: ; 11b175
ld d, a
ld a, [wc7d2]
ld e, a
- ld hl, $ffa9
+ ld hl, hJoyLast
ld a, [hl]
and $40
jr nz, .asm_11b19a
@@ -15411,7 +15411,7 @@ Function11b314: ; 11b314
Function11b31b: ; 11b31b
ld hl, Unknown_11b350
- ld a, [wcf63]
+ ld a, [wJumptableIndex]
cp $2
jr c, .asm_11b349
ld a, [wc7d1]
@@ -15419,7 +15419,7 @@ Function11b31b: ; 11b31b
jr nc, .asm_11b344
cp $3
jr c, .asm_11b349
- ld a, [wcf63]
+ ld a, [wJumptableIndex]
cp $2
jr z, .asm_11b349
cp $3
@@ -15553,7 +15553,7 @@ Function11b3d9: ; 11b3d9
ld [hli], a
cp $41
jr c, .asm_11b42b
- ld a, [wcf63]
+ ld a, [wJumptableIndex]
cp $4
jr z, .asm_11b43b
cp $5
@@ -15592,7 +15592,7 @@ Function11b444: ; 11b444
Function11b44b: ; 11b44b
xor a
- ld [wcf63], a
+ ld [wJumptableIndex], a
ld [wcf64], a
ld [wcf65], a
ld [wcf66], a
@@ -15604,14 +15604,14 @@ Function11b45c: ; 11b45c
.asm_11b45c
call Function11b46a
call DelayFrame
- ld a, [wcf63]
+ ld a, [wJumptableIndex]
cp $4
jr nz, .asm_11b45c
ret
; 11b46a
Function11b46a: ; 11b46a
- ld a, [wcf63]
+ ld a, [wJumptableIndex]
ld e, a
ld d, 0
ld hl, Jumptable_11b479
@@ -15780,11 +15780,11 @@ Function11b538: ; 11b538
ld [wcd2b], a
ld [bc], a
inc bc
- ld a, [wd84a]
+ ld a, [wSecretID]
ld [wcd2c], a
ld [bc], a
inc bc
- ld a, [wd84b]
+ ld a, [wSecretID + 1]
ld [wcd2d], a
ld [bc], a
inc bc
@@ -15813,7 +15813,7 @@ Function11b570: ; 11b570
.asm_11b57f
ld a, $4
- ld [wcf63], a
+ ld [wJumptableIndex], a
ret
; 11b585
@@ -15913,14 +15913,14 @@ Function11b64c: ; 11b64c
.asm_11b64c
call Function11b65a
call DelayFrame
- ld a, [wcf63]
+ ld a, [wJumptableIndex]
cp $1
jr nz, .asm_11b64c
ret
; 11b65a
Function11b65a: ; 11b65a
- ld a, [wcf63]
+ ld a, [wJumptableIndex]
ld e, a
ld d, 0
ld hl, Jumptable_11b669
@@ -16146,10 +16146,10 @@ Function11b7e5: ; 11b7e5
ld a, $1
ld [wd1e9], a
ld a, $2
- ld [InLinkBattle], a
+ ld [wLinkMode], a
callba Function421d8
xor a
- ld [InLinkBattle], a
+ ld [wLinkMode], a
callba Function14a58
ld a, $5
call GetSRAMBank
@@ -16677,7 +16677,7 @@ Function11c08f: ; 11c08f
Function11c0c6: ; 11c0c6
- ld a, [wcf63]
+ ld a, [wJumptableIndex]
ld l, a
ld a, [wcf64]
ld h, a
@@ -16687,7 +16687,7 @@ Function11c0c6: ; 11c0c6
ld [hli], a
push de
xor a
- ld [wcf63], a
+ ld [wJumptableIndex], a
ld a, $12
ld [wcf64], a
ld a, $6
@@ -16720,9 +16720,9 @@ Function11c0c6: ; 11c0c6
.asm_11c102
cp e
jr nc, .asm_11c11c
- ld a, [wcf63]
+ ld a, [wJumptableIndex]
inc a
- ld [wcf63], a
+ ld [wJumptableIndex], a
ld [hl], $4e
rra
jr c, .asm_11c113
@@ -16763,7 +16763,7 @@ Function11c0c6: ; 11c0c6
call PlaceWholeStringInBoxAtOnce
pop hl
ld a, l
- ld [wcf63], a
+ ld [wJumptableIndex], a
ld a, h
ld [wcf64], a
ret
@@ -16832,13 +16832,13 @@ Function11c156: ; 11c156
; 11c1ab
Function11c1ab: ; 11c1ab
- ld a, [$ffaa]
+ ld a, [hInMenu]
push af
ld a, $1
- ld [$ffaa], a
+ ld [hInMenu], a
call Function11c1b9
pop af
- ld [$ffaa], a
+ ld [hInMenu], a
ret
; 11c1b9
@@ -16856,7 +16856,7 @@ Function11c1b9: ; 11c1b9
Function11c1ca: ; 11c1ca
xor a
- ld [wcf63], a
+ ld [wJumptableIndex], a
ld [wcf64], a
ld [wcf65], a
ld [wcf66], a
@@ -16935,10 +16935,10 @@ Function11c277: ; 11c277 (47:4277)
Function11c283: ; 11c283
.asm_11c283
- call Functiona57
+ call JoyTextDelay
ld a, [hJoyPressed]
ld [hJoypadPressed], a
- ld a, [wcf63]
+ ld a, [wJumptableIndex]
bit 7, a
jr nz, .asm_11c2a2
call Function11c2ac
@@ -16953,7 +16953,7 @@ Function11c283: ; 11c283
; 11c2ac
Function11c2ac: ; 11c2ac
- ld a, [wcf63]
+ ld a, [wJumptableIndex]
ld e, a
ld d, 0
ld hl, Jumptable_11c2bb
@@ -17154,7 +17154,7 @@ Function11c3ed: ; 11c3ed (47:43ed)
ld a, [de]
and $1
jr nz, .asm_11c42c
- ld de, $ffa9
+ ld de, hJoyLast
ld a, [de]
and $40
jr nz, .asm_11c47c
@@ -17219,7 +17219,7 @@ Function11c3ed: ; 11c3ed (47:43ed)
.asm_11c472
call Function11c4a5
.asm_11c475
- ld [wcf63], a
+ ld [wJumptableIndex], a
call PlayClickSFX
ret
.asm_11c47c
@@ -17326,7 +17326,7 @@ Function11c53d: ; 11c53d (47:453d)
and A_BUTTON
jr nz, .a
- ld de, $ffa9
+ ld de, hJoyLast
ld a, [de]
and D_UP
@@ -17383,7 +17383,7 @@ Function11c53d: ; 11c53d (47:453d)
.asm_11c59f
ld hl, wcd24
set 1, [hl]
- ld [wcf63], a
+ ld [wJumptableIndex], a
call PlayClickSFX
ret
@@ -17570,7 +17570,7 @@ Function11c675: ; 11c675 (47:4675)
ret
.select
- ld de, $ffa9
+ ld de, hJoyLast
ld a, [de]
and D_UP
jr nz, .asm_11c708
@@ -17599,7 +17599,7 @@ Function11c675: ; 11c675 (47:4675)
.asm_11c6fa
ld a, $15
.asm_11c6fc
- ld [wcf63], a
+ ld [wJumptableIndex], a
ld hl, wcd24
set 3, [hl]
call PlayClickSFX
@@ -18119,7 +18119,7 @@ Function11c9c3: ; 11c9c3 (47:49c3)
ld hl, wcd24
set 4, [hl]
ld a, $4
- ld [wcf63], a
+ ld [wJumptableIndex], a
call PlayClickSFX
ret
.asm_11c9f7
@@ -18271,7 +18271,7 @@ Function11cab3: ; 11cab3 (47:4ab3)
ld [wcd2a], a
ret
.asm_11caf3
- ld hl, wcf63
+ ld hl, wJumptableIndex
set 7, [hl]
ret
.asm_11caf9
@@ -18280,7 +18280,7 @@ Function11cab3: ; 11cab3 (47:4ab3)
ld hl, wcd24
set 4, [hl]
ld a, $4
- ld [wcf63], a
+ ld [wJumptableIndex], a
ld a, [wcd35]
cp $ff
ret nz
@@ -18389,7 +18389,7 @@ endr
ld d, a
hlcoord 1, 14
call PlaceString
- ld hl, wcf63
+ ld hl, wJumptableIndex
inc [hl]
inc hl
ld a, $10
@@ -18404,7 +18404,7 @@ endr
ld hl, wcd24
set 4, [hl]
ld a, $4
- ld [wcf63], a
+ ld [wJumptableIndex], a
ret
.asm_11cbeb
ld a, [hl]
@@ -18490,7 +18490,7 @@ Function11cd04: ; 11cd04 (47:4d04)
and a
ret z
ld a, $4
- ld [wcf63], a
+ ld [wJumptableIndex], a
ret
; 11cd10 (47:4d10)
@@ -18551,7 +18551,7 @@ Function11cd54: ; 11cd54 (47:4d54)
.asm_11cd7d
ld a, $15
.asm_11cd7f
- ld [wcf63], a
+ ld [wJumptableIndex], a
ld hl, wcd24
set 5, [hl]
call PlayClickSFX
@@ -18644,7 +18644,7 @@ Function11ce2b: ; 11ce2b (47:4e2b)
and B_BUTTON
jr nz, .b
- ld de, $ffa9
+ ld de, hJoyLast
ld a, [de]
and D_UP
jr nz, .up
@@ -18692,7 +18692,7 @@ Function11ce2b: ; 11ce2b (47:4e2b)
.asm_11ce96
ld a, $13
.asm_11ce98
- ld [wcf63], a
+ ld [wJumptableIndex], a
ld hl, wcd24
set 2, [hl]
call PlayClickSFX
@@ -18778,7 +18778,7 @@ String_11cf79: ; 11cf79
; 11cfb5
Function11cfb5: ; 11cfb5 (47:4fb5)
- ld hl, wcf63
+ ld hl, wJumptableIndex
inc [hl]
ret
; 11cfba (47:4fba)
@@ -21327,7 +21327,7 @@ Function16c000: ; 16c000
Function16c031: ; 16c031
xor a
- ld [wcf63], a
+ ld [wJumptableIndex], a
ld [wcf64], a
ld [DefaultFlypoint], a
ld [wd003], a
@@ -22187,7 +22187,7 @@ Function16d43b: ; 16d43b
call GetSGBLayout
call SetPalettes
call WaitBGMap
- call Functiona36
+ call JoyWaitAorB
call Call_ExitMenu
ret
; 16d465
@@ -22297,7 +22297,7 @@ Function16d696: ; 16d696
Function16d69a: ; 16d69a
ld de, GFX_16cfc1 + $300
- ld hl, $9760
+ ld hl, VTiles2 tile $76
lb bc, BANK(GFX_16cfc1), 8
call Get2bpp
ret
@@ -22362,7 +22362,7 @@ Function16d70c: ; 16d70c
Function16d713: ; 16d713
push bc
push af
- ld a, [$ffa9]
+ ld a, [hJoyLast]
and $f0
ld b, a
ld a, [hJoyPressed]
@@ -22518,7 +22518,7 @@ Function16d7e7: ; 16d7e7
callba Function8cf62
.asm_16d7f4
- call Functiona57
+ call JoyTextDelay
call Function16d713
and a
ret z
@@ -22701,9 +22701,9 @@ Function170139: ; 170139
ld [hli], a
ld a, [PlayerID + 1]
ld [hli], a
- ld a, [wd84a]
+ ld a, [wSecretID]
ld [hli], a
- ld a, [wd84b]
+ ld a, [wSecretID + 1]
ld [hli], a
ld e, l
ld d, h
@@ -22784,7 +22784,7 @@ Function17020c: ; 17020c
Function170215: ; 170215
xor a
- ld [wcf63], a
+ ld [wJumptableIndex], a
call Function17022c
ret
; 17021d
@@ -22795,7 +22795,7 @@ Function17021d: ; 17021d
Function17021e: ; 17021e
xor a
- ld [wcf63], a
+ ld [wJumptableIndex], a
ld [wcf64], a
ld [wcf65], a
ld [wcf66], a
@@ -22806,14 +22806,14 @@ Function17022c: ; 17022c
.asm_17022c
call Jumpto_BattleTowerBattleFunction
call DelayFrame
- ld a, [wcf63]
+ ld a, [wJumptableIndex]
cp $1
jr nz, .asm_17022c
ret
; 17023a
Jumpto_BattleTowerBattleFunction: ; 17023a
- ld a, [wcf63]
+ ld a, [wJumptableIndex]
ld e, a
ld d, 0
ld hl, Jumptable_BattleTowerBattleFunctions
@@ -22841,7 +22841,7 @@ RunBattleTowerBattle: ; 17024d
or $1
ld [InBattleTowerBattle], a
xor a
- ld [InLinkBattle], a
+ ld [wLinkMode], a
callba Mobile_HealParty
callba HealParty
call Function1702b7
@@ -22849,7 +22849,7 @@ RunBattleTowerBattle: ; 17024d
predef StartBattle
callba LoadPokemonData
callba HealParty
- ld a, [wd0ee]
+ ld a, [wBattleResult]
ld [ScriptVar], a
and a
jr nz, .asm_1702a9
@@ -22871,7 +22871,7 @@ RunBattleTowerBattle: ; 17024d
pop af
ld [Options], a
ld a, $1
- ld [wcf63], a
+ ld [wJumptableIndex], a
ret
@@ -23228,8 +23228,8 @@ Function1704f1: ; 1704f1
call ClearSprites
call ClearScreen
.asm_1704fa
- call Functiona57
- ld a, [wcf63]
+ call JoyTextDelay
+ ld a, [wJumptableIndex]
bit 7, a
jr nz, .asm_17050f
call Function170510
@@ -23241,7 +23241,7 @@ Function1704f1: ; 1704f1
; 170510
Function170510: ; 170510
- ld a, [wcf63]
+ ld a, [wJumptableIndex]
ld e, a
ld d, 0
ld hl, Jumptable_17051f
@@ -23332,12 +23332,12 @@ Function170577:
ret
.asm_1705ac
- ld hl, wcf63
+ ld hl, wJumptableIndex
set 7, [hl]
ret
Function1705b2:
- ld hl, wcf63
+ ld hl, wJumptableIndex
inc [hl]
ret
; 1705b7
@@ -24298,7 +24298,7 @@ Function170c06: ; 170c06
ld a, $5
call GetSRAMBank
ld hl, $a894
- ld a, [wd0ee]
+ ld a, [wBattleResult]
and a
jr nz, .asm_170c15
inc [hl]
@@ -24486,7 +24486,7 @@ Function170d02: ; 170d02
ld a, $1
ld [rVBK], a
ld de, GFX_171848
- ld hl, $8c10
+ ld hl, VTiles1 tile $41
lb bc, BANK(GFX_171848), $18
call Get2bpp
xor a
@@ -24504,13 +24504,13 @@ GFX_171848:
INCBIN "gfx/unknown/171848.2bpp"
Function1719c8: ; 1719c8 (5c:59c8)
- ld a, [$ffaa]
+ ld a, [hInMenu]
push af
ld a, $1
- ld [$ffaa], a
+ ld [hInMenu], a
call Function1719d6
pop af
- ld [$ffaa], a
+ ld [hInMenu], a
ret
Function1719d6: ; 1719d6 (5c:59d6)
@@ -24539,7 +24539,7 @@ Function1719ed: ; 1719ed (5c:59ed)
ret
Function171a11: ; 171a11 (5c:5a11)
- call Functiona57
+ call JoyTextDelay
ld a, [wcd49]
bit 7, a
jr nz, .asm_171a2c
@@ -24801,7 +24801,7 @@ Function171beb: ; 171beb (5c:5beb)
ld hl, MenuDataHeader_171c6b
call LoadMenuDataHeader
call Function1cbb
- call Function1cfd
+ call GetMemTileCoord
callba Function104061
hlcoord 1, 14
ld de, String_171c73
@@ -24869,11 +24869,11 @@ String_171c73: ; 171c73
Function171c87: ; 171c87 (5c:5c87)
call DisableLCD
ld hl, GFX_171db1
- ld de, $9000
+ ld de, VTiles2 tile $00
ld bc, $6e0
call CopyBytes
ld hl, LZ_172abd
- ld de, $8000
+ ld de, VTiles0 tile $00
call Decompress
call EnableLCD
ld hl, Tilemap_172491
@@ -24941,11 +24941,11 @@ endr
Function171d2b: ; 171d2b (5c:5d2b)
call DisableLCD
ld hl, GFX_171db1
- ld de, $9000
+ ld de, VTiles2 tile $00
ld bc, $6e0
call CopyBytes
ld hl, LZ_172abd
- ld de, $8000
+ ld de, VTiles0 tile $00
call Decompress
call EnableLCD
ld hl, Tilemap_172685
@@ -25040,7 +25040,7 @@ Function172e78: ; 172e78 (5c:6e78)
call ByteFill
call DisableLCD
ld hl, GFX_172f1f
- ld de, $9000
+ ld de, VTiles2 tile $00
ld bc, $610
call CopyBytes
call EnableLCD
diff --git a/misc/mobile_5f.asm b/misc/mobile_5f.asm
index 6608803cf..bb1814945 100644
--- a/misc/mobile_5f.asm
+++ b/misc/mobile_5f.asm
@@ -60,7 +60,7 @@ Function17c000: ; 17c000
ld [rSVBK], a
ld hl, MobileSelectGFX
- ld de, $8300
+ ld de, VTiles0 tile $30
ld bc, $200
call CopyBytes
@@ -300,10 +300,10 @@ Function17d0f3: ; 17d0f3
ld a, $1
ld [wd1e9], a
ld a, $2
- ld [InLinkBattle], a
+ ld [wLinkMode], a
callba Function421d8
xor a
- ld [InLinkBattle], a
+ ld [wLinkMode], a
callba Function14a58
ld a, $5
call GetSRAMBank
@@ -521,7 +521,7 @@ Function17d2b6: ; 17d2b6
Function17d2c0: ; 17d2c0
xor a
- ld [wcf63], a
+ ld [wJumptableIndex], a
ld [wcf64], a
ld [wcf65], a
ld [wcf66], a
@@ -629,7 +629,7 @@ Function17d370: ; 17d370
call ClearScreen
callba Function104061
call DisableLCD
- ld hl, $8ee0
+ ld hl, VTiles1 tile $6e
ld de, $c608
ld bc, $0010
call CopyBytes
@@ -640,17 +640,17 @@ Function17d370: ; 17d370
ld bc, $0480
call CopyBytes
xor a
- ld hl, $97f0
+ ld hl, VTiles2 tile $7f
ld bc, $0010
call ByteFill
ld hl, $c608
- ld de, $8ee0
+ ld de, VTiles1 tile $6e
ld bc, $0010
call CopyBytes
xor a
ld [rVBK], a
ld hl, GFX_17eb7e
- ld de, $9600
+ ld de, VTiles2 tile $60
ld bc, $0010
call CopyBytes
call EnableLCD
@@ -677,7 +677,7 @@ Function17d3f6: ; 17d3f6
Function17d405:
call DisableLCD
- ld hl, $8ee0
+ ld hl, VTiles1 tile $6e
ld de, $c608
ld bc, $0010
call CopyBytes
@@ -688,11 +688,11 @@ Function17d405:
ld bc, $0480
call CopyBytes
xor a
- ld hl, $97f0
+ ld hl, VTiles2 tile $7f
ld bc, $0010
call ByteFill
ld hl, $c608
- ld de, $8ee0
+ ld de, VTiles1 tile $6e
ld bc, $0010
call CopyBytes
xor a
@@ -714,7 +714,7 @@ Function17d405:
Function17d45a: ; 17d45a
.asm_17d45a
- call Functiona57
+ call JoyTextDelay
ld a, [wcd77]
bit 7, a
jr nz, .asm_17d46f
@@ -2980,7 +2980,7 @@ Function17e2a7: ; 17e2a7
ld [wcf66], a
callba Function118233
ld de, GFX_17eb7e
- ld hl, $9600
+ ld hl, VTiles2 tile $60
lb bc, BANK(GFX_17eb7e), 1
call Get2bpp
ld a, [wc300]
@@ -3122,7 +3122,7 @@ Function17e3c3: ; 17e3c3
push af
ld a, $1
ld [rSVBK], a
- callba Function106155
+ callba MobileFn_106155
callba Function106187
pop af
ld [rSVBK], a
@@ -3144,7 +3144,7 @@ Function17e3f0: ; 17e3f0
call Function17e415
call Function17e41e
.asm_17e3f6
- call Functiona57
+ call JoyTextDelay
ld hl, hJoyPressed
ld a, [hl]
and $1
@@ -4678,7 +4678,7 @@ Function17f53d: ; 17f53d
Function17f555: ; 17f555
.asm_17f555
- call Functiona57
+ call JoyTextDelay
call Function17f5ae
ld a, [wc303]
bit 7, a
diff --git a/misc/unused_title.asm b/misc/unused_title.asm
index 327eef45c..e151deb14 100644
--- a/misc/unused_title.asm
+++ b/misc/unused_title.asm
@@ -9,7 +9,7 @@ UnusedTitleScreen: ; 10c000
xor a
ld [hBGMapMode], a
- ld hl, wcf63
+ ld hl, wJumptableIndex
rept 3
ld [hli], a
endr
@@ -17,17 +17,17 @@ endr
ld hl, UnusedTitleBG_GFX
ld de, VTiles2
- ld bc, $800
+ ld bc, VBGMap0 - VTiles2
call CopyBytes
ld hl, UnusedTitleBG_GFX + $800
ld de, VTiles1
- ld bc, $800
+ ld bc, VTiles2 - VTiles1
call CopyBytes
ld hl, UnusedTitleFG_GFX
ld de, VTiles0
- ld bc, $800
+ ld bc, VTiles1 - VTiles0
call CopyBytes
ld hl, UnusedTitleBG_Tilemap
@@ -546,12 +546,12 @@ UnusedTitleFG_OAM: ; 10ecb1
Function10ed51: ; 10ed51
call _TitleScreen
.loop
- call Functiona57
- ld a, [$ffa9]
+ call JoyTextDelay
+ ld a, [hJoyLast]
ld b, a
and 1
jr nz, .done
- call Function10eea7
+ call SuicuneFrameIterator
call DelayFrame
jr .loop
.done