summaryrefslogtreecommitdiff
path: root/misc
diff options
context:
space:
mode:
Diffstat (limited to 'misc')
-rwxr-xr-xmisc/battle_tower_47.asm4101
-rwxr-xr-xmisc/battle_tower_5c.asm1270
-rw-r--r--misc/crystal_misc.asm12
-rwxr-xr-xmisc/fixed_words.asm4182
-rw-r--r--misc/gbc_only.asm4
-rwxr-xr-xmisc/mobile_12.asm1829
-rw-r--r--misc/mobile_22.asm44
-rw-r--r--misc/mobile_22_2.asm16
-rw-r--r--misc/mobile_40.asm150
-rwxr-xr-xmisc/mobile_41.asm23
-rw-r--r--misc/mobile_42.asm128
-rw-r--r--misc/mobile_45.asm40
-rwxr-xr-xmisc/mobile_46.asm154
-rwxr-xr-xmisc/mobile_5b.asm72
-rwxr-xr-xmisc/mobile_5c.asm1215
-rw-r--r--misc/mobile_5f.asm186
-rw-r--r--misc/unused_title.asm6
17 files changed, 7708 insertions, 5724 deletions
diff --git a/misc/battle_tower_47.asm b/misc/battle_tower_47.asm
index 68abcf1b9..a11f61064 100755
--- a/misc/battle_tower_47.asm
+++ b/misc/battle_tower_47.asm
@@ -11,6 +11,12 @@ IF DEF(CRYSTAL11)
ld hl, BT_OTTrainerClass
ELSE
ld hl, BT_OTName + 5
+; BUG ALERT
+; Instead of loading the Trainer Class, this routine
+; loads the 6th character in the Trainer's name, then
+; uses it to get the gender of the trainer.
+; As a consequence, the enemy trainer's dialog will
+; always be sampled from the female array.
ENDC
ld a, [hl]
dec a
@@ -81,4100 +87,9 @@ endr
ret
; 11c05d
-Function11c05d: ; 11c05d
- ld a, e
- or d
- jr z, .asm_11c071
- ld a, e
- and d
- cp $ff
- jr z, .asm_11c071
- push hl
- call Function11c156
- pop hl
- call PlaceString
- and a
- ret
-
-.asm_11c071
- ld c, l
- ld b, h
- scf
- ret
-; 11c075
-
-Function11c075: ; 11c075
- push de
- ld a, c
- call Function11c254
- pop de
- ld bc, wcd36
- call Function11c08f
- ret
-; 11c082
-
-Function11c082: ; 11c082
- push de
- ld a, c
- call Function11c254
- pop de
- ld bc, wcd36
- call Function11c0c6
- ret
-; 11c08f
-
-Function11c08f: ; 11c08f
- ld l, e
- ld h, d
- push hl
- ld a, $3
-.asm_11c094
- push af
- ld a, [bc]
- ld e, a
- inc bc
- ld a, [bc]
- ld d, a
- inc bc
- push bc
- call Function11c05d
- jr c, .asm_11c0a2
- inc bc
-
-.asm_11c0a2
- ld l, c
- ld h, b
- pop bc
- pop af
- dec a
- jr nz, .asm_11c094
- pop hl
- ld de, $0028
- add hl, de
- ld a, $3
-.asm_11c0b0
- push af
- ld a, [bc]
- ld e, a
- inc bc
- ld a, [bc]
- ld d, a
- inc bc
- push bc
- call Function11c05d
- jr c, .asm_11c0be
- inc bc
-
-.asm_11c0be
- ld l, c
- ld h, b
- pop bc
- pop af
- dec a
- jr nz, .asm_11c0b0
- ret
-; 11c0c6
-
-
-Function11c0c6: ; 11c0c6
- ld a, [wJumptableIndex]
- ld l, a
- ld a, [wcf64]
- ld h, a
- push hl
- ld hl, $c608 + 16
- ld a, $0
- ld [hli], a
- push de
- xor a
- ld [wJumptableIndex], a
- ld a, $12
- ld [wcf64], a
- ld a, $6
-.asm_11c0e1
- push af
- ld a, [bc]
- ld e, a
- inc bc
- ld a, [bc]
- ld d, a
- inc bc
- or e
- jr z, .asm_11c133
- push hl
- push bc
- call Function11c156
- call Function11c14a
- ld e, c
- pop bc
- pop hl
- ld a, e
- or a
- jr z, .asm_11c133
-.asm_11c0fa
- ld a, [wcf64]
- cp $12
- jr z, .asm_11c102
- inc e
-
-.asm_11c102
- cp e
- jr nc, .asm_11c11c
- ld a, [wJumptableIndex]
- inc a
- ld [wJumptableIndex], a
- ld [hl], $4e
- rra
- jr c, .asm_11c113
- ld [hl], $55
-
-.asm_11c113
- inc hl
- ld a, $12
- ld [wcf64], a
- dec e
- jr .asm_11c0fa
-
-.asm_11c11c
- cp $12
- jr z, .asm_11c123
- ld [hl], $7f
- inc hl
-
-.asm_11c123
- sub e
- ld [wcf64], a
- ld de, $c608
-.asm_11c12a
- ld a, [de]
- cp $50
- jr z, .asm_11c133
- inc de
- ld [hli], a
- jr .asm_11c12a
-
-.asm_11c133
- pop af
- dec a
- jr nz, .asm_11c0e1
- ld [hl], $57
- pop bc
- ld hl, $c608 + 16
- call PlaceWholeStringInBoxAtOnce
- pop hl
- ld a, l
- ld [wJumptableIndex], a
- ld a, h
- ld [wcf64], a
- ret
-; 11c14a
-
-Function11c14a: ; 11c14a
- ld c, $0
- ld hl, $c608
-.asm_11c14f
- ld a, [hli]
- cp $50
- ret z
- inc c
- jr .asm_11c14f
-; 11c156
-
-Function11c156: ; 11c156
- ld a, [rSVBK]
- push af
- ld a, $1
- ld [rSVBK], a
- ld a, $50
- ld hl, $c608
- ld bc, $000b
- call ByteFill
- ld a, d
- and a
- jr z, .asm_11c19c
- ld hl, Unknown_11daac
- dec d
- sla d
- ld c, d
- ld b, $0
- add hl, bc
- ld a, [hli]
- ld c, a
- ld a, [hl]
- ld b, a
- push bc
- pop hl
- ld c, e
- ld b, $0
- sla c
- rl b
- sla c
- rl b
- sla c
- rl b
- add hl, bc
- ld bc, $0005
-.asm_11c18f
- ld de, $c608
- call CopyBytes
- ld de, $c608
- pop af
- ld [rSVBK], a
- ret
-
-.asm_11c19c
- ld a, e
- ld [wd265], a
- call GetPokemonName
- ld hl, StringBuffer1
- ld bc, $000a
- jr .asm_11c18f
-; 11c1ab
-
-Function11c1ab: ; 11c1ab
- ld a, [hInMenu]
- push af
- ld a, $1
- ld [hInMenu], a
- call Function11c1b9
- pop af
- ld [hInMenu], a
- ret
-; 11c1b9
-
-Function11c1b9: ; 11c1b9
- call Function11c1ca
- ld a, [rSVBK]
- push af
- ld a, $5
- ld [rSVBK], a
- call Function11c283
- pop af
- ld [rSVBK], a
- ret
-; 11c1ca
-
-Function11c1ca: ; 11c1ca
- xor a
- ld [wJumptableIndex], a
- ld [wcf64], a
- ld [wcf65], a
- ld [wcf66], a
- ld [wcd23], a
- ld [BGMapBuffer], a
- ld [wcd21], a
- ld [CreditsTimer], a
- ld [wcd35], a
- ld [wcd2b], a
- ld a, $ff
- ld [wcd24], a
- ld a, [MenuSelection2]
- dec a
- call Function11c254
- call ClearBGPalettes
- call ClearSprites
- call ClearScreen
- call Function11d323
- call SetPalettes
- call DisableLCD
- ld hl, GFX_11d67e
- ld de, VTiles2
- ld bc, $60
- call CopyBytes
- ld hl, LZ_11d6de
- ld de, VTiles0
- call Decompress
- call EnableLCD
- callba Function104061
- callba Function8cf53
- callba LoadPokemonData
- callba Function40c30
- ld a, [rSVBK]
- push af
- ld a, $5
- ld [rSVBK], a
- ld hl, $c6d0
- ld de, LYOverrides
- ld bc, $100
- call CopyBytes
- pop af
- ld [rSVBK], a
- call Function11d4aa
- call Function11d3ba
- ret
-; 11c254
-
-Function11c254: ; 11c254
- push af
- ld a, $4
- call GetSRAMBank
- ld hl, $a007
- pop af
- sla a
- sla a
- ld c, a
- sla a
- add c
- ld c, a
- ld b, $0
- add hl, bc
- ld de, wcd36
- ld bc, $000c
- call CopyBytes
- call CloseSRAM
- ret
-; 11c277
-
-
-Function11c277: ; 11c277 (47:4277)
- ld a, $7f
- hlcoord 0, 6
- ld bc, $f0
- call ByteFill
- ret
-
-Function11c283: ; 11c283
-.asm_11c283
- call JoyTextDelay
- ld a, [hJoyPressed]
- ld [hJoypadPressed], a
- ld a, [wJumptableIndex]
- bit 7, a
- jr nz, .asm_11c2a2
- call Function11c2ac
- callba Function8cf69
- callba Function104061
- jr .asm_11c283
-
-.asm_11c2a2
- callba Function8cf53
- call ClearSprites
- ret
-; 11c2ac
-
-Function11c2ac: ; 11c2ac
- ld a, [wJumptableIndex]
- ld e, a
- ld d, 0
- ld hl, Jumptable_11c2bb
-rept 2
- add hl, de
-endr
- ld a, [hli]
- ld h, [hl]
- ld l, a
- jp [hl]
-; 11c2bb
-
-
-Jumptable_11c2bb: ; 11c2bb (47:42bb)
- dw Function11c2e9
- dw Function11c346
- dw Function11c35f
- dw Function11c373
- dw Function11c3c2
- dw Function11c3ed
- dw Function11c52c
- dw Function11c53d
- dw Function11c658
- dw Function11c675
- dw Function11c9bd
- dw Function11c9c3
- dw Function11caad
- dw Function11cab3
- dw Function11cb52
- dw Function11cb66
- dw Function11cbf5
- dw Function11ccef
- dw Function11cd04
- dw Function11cd20
- dw Function11cd54
- dw Function11ce0b
- dw Function11ce2b
-
-
-Function11c2e9: ; 11c2e9 (47:42e9)
- lb de, $1a, $0d
- ld a, $1d
- call Function3b2a
- lb de, $42, $0d
- ld a, $1d
- call Function3b2a
- ld hl, $c
- add hl, bc
- ld a, $1
- ld [hl], a
- lb de, $4a, $10
- ld a, $1d
- call Function3b2a
- ld hl, $c
- add hl, bc
- ld a, $3
- ld [hl], a
- lb de, $50, $80
- ld a, $1d
- call Function3b2a
- ld hl, $c
- add hl, bc
- ld a, $4
- ld [hl], a
- lb de, $50, $20
- ld a, $1d
- call Function3b2a
- ld hl, $c
- add hl, bc
- ld a, $5
- ld [hl], a
- lb de, $50, $10
- ld a, $1d
- call Function3b2a
- ld hl, $c
- add hl, bc
- ld a, $2
- ld [hl], a
- ld hl, wcd23
- set 1, [hl]
- set 2, [hl]
- jp Function11cfb5
-
-Function11c346: ; 11c346 (47:4346)
- ld a, $9
- ld [wcd2d], a
- ld a, $2
- ld [wcd2e], a
- ld [wcd2f], a
- ld [wcd30], a
- ld de, wcd2d
- call Function11cfce
- jp Function11cfb5
-
-Function11c35f: ; 11c35f (47:435f)
- ld hl, wcd2f
-rept 2
- inc [hl]
-endr
-rept 2
- dec hl
-endr
- dec [hl]
- push af
- ld de, wcd2d
- call Function11cfce
- pop af
- ret nz
- jp Function11cfb5
-
-Function11c373: ; 11c373 (47:4373)
- ld hl, wcd30
-rept 2
- inc [hl]
-endr
-rept 2
- dec hl
-endr
- dec [hl]
- push af
- ld de, wcd2d
- call Function11cfce
- pop af
- ret nz
- call Function11c38a
- jp Function11cfb5
-
-Function11c38a: ; 11c38a (47:438a)
- ld hl, Unknown_11c986
- ld bc, wcd36
- ld a, $6
-.asm_11c392
- push af
- ld a, [hli]
- ld e, a
- ld a, [hli]
- ld d, a
- push hl
- push de
- pop hl
- ld a, [bc]
- inc bc
- ld e, a
- ld a, [bc]
- inc bc
- ld d, a
- push bc
- or e
- jr z, .asm_11c3af
- ld a, e
- and d
- cp $ff
- jr z, .asm_11c3af
- call Function11c05d
- jr .asm_11c3b5
-.asm_11c3af
- ld de, String_11c3bc
- call PlaceString
-.asm_11c3b5
- pop bc
- pop hl
- pop af
- dec a
- jr nz, .asm_11c392
- ret
-; 11c3bc (47:43bc)
-
-String_11c3bc: ; 11c3bc
- db "ーーーーー@"
-; 11c3c2
-
-Function11c3c2: ; 11c3c2 (47:43c2)
- call Function11c277
- ld de, Unknown_11cfbe
- call Function11d035
- hlcoord 1, 7
- ld de, String_11c4db
- call PlaceString
- hlcoord 1, 16
- ld de, String_11c51b
- call PlaceString
- call Function11c4be
- ld hl, wcd23
- set 0, [hl]
- ld hl, wcd24
- res 0, [hl]
- call Function11cfb5
-
-Function11c3ed: ; 11c3ed (47:43ed)
- ld hl, BGMapBuffer ; wcd20 (aliases: CreditsPos)
- ld de, hJoypadPressed ; $ffa3
- ld a, [de]
- and $8
- jr nz, .asm_11c426
- ld a, [de]
- and $2
- jr nz, .asm_11c41a
- ld a, [de]
- and $1
- jr nz, .asm_11c42c
- ld de, hJoyLast
- ld a, [de]
- and $40
- jr nz, .asm_11c47c
- ld a, [de]
- and $80
- jr nz, .asm_11c484
- ld a, [de]
- and $20
- jr nz, .asm_11c48c
- ld a, [de]
- and $10
- jr nz, .asm_11c498
- ret
-.asm_11c41a
- call PlayClickSFX
-.asm_11c41d
- ld hl, wcd24
- set 0, [hl]
- ld a, $c
- jr .asm_11c475
-.asm_11c426
- ld a, $8
- ld [BGMapBuffer], a ; wcd20 (aliases: CreditsPos)
- ret
-.asm_11c42c
- ld a, [BGMapBuffer] ; wcd20 (aliases: CreditsPos)
- cp $6
- jr c, .asm_11c472
- sub $6
- jr z, .asm_11c469
- dec a
- jr z, .asm_11c41d
- ld hl, wcd36
- ld c, $c
- xor a
-.asm_11c440
- or [hl]
- inc hl
- dec c
- jr nz, .asm_11c440
- and a
- jr z, .asm_11c460
- ld de, Unknown_11cfba
- call Function11cfce
- decoord 1, 2
- ld bc, wcd36
- call Function11c08f
- ld hl, wcd24
- set 0, [hl]
- ld a, $e
- jr .asm_11c475
-.asm_11c460
- ld hl, wcd24
- set 0, [hl]
- ld a, $11
- jr .asm_11c475
-.asm_11c469
- ld hl, wcd24
- set 0, [hl]
- ld a, $a
- jr .asm_11c475
-.asm_11c472
- call Function11c4a5
-.asm_11c475
- ld [wJumptableIndex], a
- call PlayClickSFX
- ret
-.asm_11c47c
- ld a, [hl]
- cp $3
- ret c
- sub $3
- jr .asm_11c4a3
-.asm_11c484
- ld a, [hl]
- cp $6
- ret nc
- add $3
- jr .asm_11c4a3
-.asm_11c48c
- ld a, [hl]
- and a
- ret z
- cp $3
- ret z
- cp $6
- ret z
- dec a
- jr .asm_11c4a3
-.asm_11c498
- ld a, [hl]
- cp $2
- ret z
- cp $5
- ret z
- cp $8
- ret z
- inc a
-.asm_11c4a3
- ld [hl], a
- ret
-
-Function11c4a5: ; 11c4a5 (47:44a5)
- ld hl, wcd23
- res 0, [hl]
- ld a, [wcd2b]
- and a
- jr nz, .asm_11c4b7
- xor a
- ld [wcd21], a
- ld a, $6
- ret
-.asm_11c4b7
- xor a
- ld [CreditsTimer], a
- ld a, $15
- ret
-
-Function11c4be: ; 11c4be (47:44be)
- ld a, $1
- hlcoord 0, 6, AttrMap
- ld bc, $a0
- call ByteFill
- ld a, $7
- hlcoord 0, 14, AttrMap
- ld bc, $28
- call ByteFill
- callba Function104061
- ret
-; 11c4db (47:44db)
-
-String_11c4db: ; 11c4db
- db "6つのことば", $1f, "くみあわせます"
- next "かえたいところ", $1f, "えらぶと でてくる"
- next "ことばのグループから いれかえたい"
- next "たんご", $1f, "えらんでください"
- db "@"
-; 11c51b
-
-String_11c51b: ; 11c51b
- db "ぜんぶけす やめる けってい@"
-; 11c52c
-
-Function11c52c: ; 11c52c (47:452c)
- call Function11c277
- call Function11c5f0
- call Function11c618
- ld hl, wcd24
- res 1, [hl]
- call Function11cfb5
-
-Function11c53d: ; 11c53d (47:453d)
- ld hl, wcd21
- ld de, hJoypadPressed ; $ffa3
-
- ld a, [de]
- and START
- jr nz, .start
-
- ld a, [de]
- and SELECT
- jr nz, .select
-
- ld a, [de]
- and B_BUTTON
- jr nz, .b
-
- ld a, [de]
- and A_BUTTON
- jr nz, .a
-
- ld de, hJoyLast
-
- ld a, [de]
- and D_UP
- jr nz, .up
-
- ld a, [de]
- and D_DOWN
- jr nz, .down
-
- ld a, [de]
- and D_LEFT
- jr nz, .left
-
- ld a, [de]
- and D_RIGHT
- jr nz, .right
-
- ret
-
-.a
- ld a, [wcd21]
- cp $f
- jr c, .asm_11c59d
- sub $f
- jr z, .asm_11c5ab
- dec a
- jr z, .asm_11c599
- jr .b
-
-.start
- ld hl, wcd24
- set 0, [hl]
- ld a, $8
- ld [BGMapBuffer], a ; wcd20 (aliases: CreditsPos)
-
-.b
- ld a, $4
- jr .asm_11c59f
-
-.select
- ld a, [wcd2b]
- xor $1
- ld [wcd2b], a
- ld a, $15
- jr .asm_11c59f
-
-.asm_11c599
- ld a, $13
- jr .asm_11c59f
-
-.asm_11c59d
- ld a, $8
-
-.asm_11c59f
- ld hl, wcd24
- set 1, [hl]
- ld [wJumptableIndex], a
- call PlayClickSFX
- ret
-
-.asm_11c5ab
- ld a, [BGMapBuffer] ; wcd20 (aliases: CreditsPos)
- call Function11ca6a
- call PlayClickSFX
- ret
-
-.up
- ld a, [hl]
- cp $3
- ret c
- sub $3
- jr .asm_11c5ee
-
-.down
- ld a, [hl]
- cp $f
- ret nc
- add $3
- jr .asm_11c5ee
-
-.left
- ld a, [hl]
- and a
- ret z
- cp $3
- ret z
- cp $6
- ret z
- cp $9
- ret z
- cp $c
- ret z
- cp $f
- ret z
- dec a
- jr .asm_11c5ee
-
-.right
- ld a, [hl]
- cp $2
- ret z
- cp $5
- ret z
- cp $8
- ret z
- cp $b
- ret z
- cp $e
- ret z
- cp $11
- ret z
- inc a
-
-.asm_11c5ee
- ld [hl], a
- ret
-; 11c5f0
-
-Function11c5f0: ; 11c5f0 (47:45f0)
- ld de, Strings_11da52
- ld bc, Unknown_11c63a
- ld a, $f
-.asm_11c5f8
- push af
- ld a, [bc]
- inc bc
- ld l, a
- ld a, [bc]
- inc bc
- ld h, a
- push bc
- call PlaceString
-.asm_11c603
- inc de
- ld a, [de]
- cp $50
- jr z, .asm_11c603
- pop bc
- pop af
- dec a
- jr nz, .asm_11c5f8
- hlcoord 1, 17
- ld de, String_11c62a
- call PlaceString
- ret
-
-Function11c618: ; 11c618 (47:4618)
- ld a, $2
- hlcoord 0, 6, AttrMap
- ld bc, $c8
- call ByteFill
- callba Function104061
- ret
-; 11c62a (47:462a)
-
-String_11c62a: ; 11c62a
- db "けす モード やめる@"
-; 11c63a
-
-Unknown_11c63a: ; 11c63a
- dwcoord 1, 7
- dwcoord 7, 7
- dwcoord 13, 7
- dwcoord 1, 9
- dwcoord 7, 9
- dwcoord 13, 9
- dwcoord 1, 11
- dwcoord 7, 11
- dwcoord 13, 11
- dwcoord 1, 13
- dwcoord 7, 13
- dwcoord 13, 13
- dwcoord 1, 15
- dwcoord 7, 15
- dwcoord 13, 15
-; 11c658
-
-Function11c658: ; 11c658 (47:4658)
- call Function11c277
- call Function11c770
- ld de, Unknown_11cfc2
- call Function11d035
- call Function11c9ab
- call Function11c7bc
- call Function11c86e
- ld hl, wcd24
- res 3, [hl]
- call Function11cfb5
-
-Function11c675: ; 11c675 (47:4675)
- ld hl, wcd25
- ld de, hJoypadPressed ; $ffa3
- ld a, [de]
- and A_BUTTON
- jr nz, .a
- ld a, [de]
- and B_BUTTON
- jr nz, .b
- ld a, [de]
- and START
- jr nz, .start
- ld a, [de]
- and SELECT
- jr z, .select
-
- ld a, [wcd26]
- and a
- ret z
- sub $c
- jr nc, .asm_11c699
- xor a
-.asm_11c699
- ld [wcd26], a
- jr .asm_11c6c4
-
-.start
- ld hl, wcd28
- ld a, [wcd26]
- add $c
- cp [hl]
- ret nc
- ld [wcd26], a
- ld a, [hl]
- ld b, a
- ld hl, wcd25
- ld a, [wcd26]
- add [hl]
- jr c, .asm_11c6b9
- cp b
- jr c, .asm_11c6c4
-.asm_11c6b9
- ld a, [wcd28]
- ld hl, wcd26
- sub [hl]
- dec a
- ld [wcd25], a
-.asm_11c6c4
- call Function11c992
- call Function11c7bc
- call Function11c86e
- ret
-
-.select
- ld de, hJoyLast
- ld a, [de]
- and D_UP
- jr nz, .asm_11c708
- ld a, [de]
- and D_DOWN
- jr nz, .asm_11c731
- ld a, [de]
- and D_LEFT
- jr nz, .asm_11c746
- ld a, [de]
- and D_RIGHT
- jr nz, .asm_11c755
- ret
-
-.a
- call Function11c8f6
- ld a, $4
- ld [wcd35], a
- jr .asm_11c6fc
-.b
- ld a, [wcd2b]
- and a
- jr nz, .asm_11c6fa
- ld a, $6
- jr .asm_11c6fc
-.asm_11c6fa
- ld a, $15
-.asm_11c6fc
- ld [wJumptableIndex], a
- ld hl, wcd24
- set 3, [hl]
- call PlayClickSFX
- ret
-.asm_11c708
- ld a, [hl]
- cp $3
- jr c, .asm_11c711
- sub $3
- jr .asm_11c76e
-.asm_11c711
- ld a, [wcd26]
- sub $3
- ret c
- ld [wcd26], a
- jr .asm_11c6c4
-.asm_11c71c
- ld hl, wcd28
- ld a, [wcd26]
- add $c
- ret c
- cp [hl]
- ret nc
- ld a, [wcd26]
- add $3
- ld [wcd26], a
- jr .asm_11c6c4
-.asm_11c731
- ld a, [wcd28]
- ld b, a
- ld a, [wcd26]
- add [hl]
- add $3
- cp b
- ret nc
- ld a, [hl]
- cp $9
- jr nc, .asm_11c71c
- add $3
- jr .asm_11c76e
-.asm_11c746
- ld a, [hl]
- and a
- ret z
- cp $3
- ret z
- cp $6
- ret z
- cp $9
- ret z
- dec a
- jr .asm_11c76e
-.asm_11c755
- ld a, [wcd28]
- ld b, a
- ld a, [wcd26]
- add [hl]
- inc a
- cp b
- ret nc
- ld a, [hl]
- cp $2
- ret z
- cp $5
- ret z
- cp $8
- ret z
- cp $b
- ret z
- inc a
-.asm_11c76e
- ld [hl], a
- ret
-
-Function11c770: ; 11c770 (47:4770)
- xor a
- ld [wcd25], a
- ld [wcd26], a
- ld [wcd27], a
- ld a, [wcd2b]
- and a
- jr nz, .asm_11c7ab
- ld a, [wcd21]
- and a
- jr z, .asm_11c799
- dec a
- sla a
- ld hl, Unknown_11f220
- ld c, a
- ld b, 0
- add hl, bc
- ld a, [hli]
- ld [wcd28], a
- ld a, [hl]
-.asm_11c795
- ld [wcd29], a
- ret
-.asm_11c799
- ld a, [wc7d2]
- ld [wcd28], a
-.asm_11c79f
- ld c, $c
- call SimpleDivide
- and a
- jr nz, .asm_11c7a8
- dec b
-.asm_11c7a8
- ld a, b
- jr .asm_11c795
-.asm_11c7ab
- ld hl, $c68a + 30
- ld a, [CreditsTimer]
- ld c, a
- ld b, 0
-rept 2
- add hl, bc
-endr
- ld a, [hl]
- ld [wcd28], a
- jr .asm_11c79f
-
-Function11c7bc: ; 11c7bc (47:47bc)
- ld bc, Unknown_11c854
- ld a, [wcd2b]
- and a
- jr nz, .asm_11c814
- ld a, [wcd21]
- ld d, a
- and a
- jr z, .asm_11c7e9
- ld a, [wcd26]
- ld e, a
-.asm_11c7d0
- ld a, [bc]
- ld l, a
- inc bc
- ld a, [bc]
- ld h, a
- inc bc
- and l
- cp $ff
- ret z
- push bc
- push de
- call Function11c05d
- pop de
- pop bc
- inc e
- ld a, [wcd28]
- cp e
- jr nz, .asm_11c7d0
- ret
-.asm_11c7e9
- ld hl, wd100
- ld a, [wcd26]
- ld e, a
- add hl, de
-.asm_11c7f1
- push de
- ld a, [hli]
- ld e, a
- ld d, $0
- push hl
- ld a, [bc]
- ld l, a
- inc bc
- ld a, [bc]
- ld h, a
- inc bc
- and l
- cp $ff
- jr z, .asm_11c811
- push bc
- call Function11c05d
- pop bc
- pop hl
- pop de
- inc e
- ld a, [wcd28]
- cp e
- jr nz, .asm_11c7f1
- ret
-.asm_11c811
- pop hl
- pop de
- ret
-.asm_11c814
- ld hl, $c648
- ld a, [wcd22]
- ld e, a
- ld d, $0
-rept 2
- add hl, de
-endr
- ld a, [hli]
- ld e, a
- ld a, [hl]
- ld d, a
- push de
- pop hl
- ld a, [wcd26]
- ld e, a
- ld d, $0
-rept 2
- add hl, de
-endr
- ld a, [wcd26]
- ld e, a
-.asm_11c831
- push de
- ld a, [hli]
- ld e, a
- ld a, [hli]
- ld d, a
- push hl
- ld a, [bc]
- ld l, a
- inc bc
- ld a, [bc]
- ld h, a
- inc bc
- and l
- cp $ff
- jr z, .asm_11c851
- push bc
- call Function11c05d
- pop bc
- pop hl
- pop de
- inc e
- ld a, [wcd28]
- cp e
- jr nz, .asm_11c831
- ret
-.asm_11c851
- pop hl
- pop de
- ret
-; 11c854 (47:4854)
-
-Unknown_11c854: ; 11c854
- dwcoord 2, 8
- dwcoord 8, 8
- dwcoord 14, 8
- dwcoord 2, 10
- dwcoord 8, 10
- dwcoord 14, 10
- dwcoord 2, 12
- dwcoord 8, 12
- dwcoord 14, 12
- dwcoord 2, 14
- dwcoord 8, 14
- dwcoord 14, 14
- dw -1
-; 11c86e
-
-Function11c86e: ; 11c86e (47:486e)
- ld a, [wcd26]
- and a
- jr z, .asm_11c88a
- hlcoord 2, 17
- ld de, String_11c8f0
- call PlaceString
- hlcoord 6, 17
- ld c, $3
- xor a
-.asm_11c883
- ld [hli], a
- inc a
- dec c
- jr nz, .asm_11c883
- jr .asm_11c895
-.asm_11c88a
- hlcoord 2, 17
- ld c, $7
- ld a, $7f
-.asm_11c891
- ld [hli], a
- dec c
- jr nz, .asm_11c891
-.asm_11c895
- ld hl, wcd28
- ld a, [wcd26]
- add $c
- jr c, .asm_11c8b7
- cp [hl]
- jr nc, .asm_11c8b7
- hlcoord 16, 17
- ld de, String_11c8f3
- call PlaceString
- hlcoord 11, 17
- ld a, $3
- ld c, a
-.asm_11c8b1
- ld [hli], a
- inc a
- dec c
- jr nz, .asm_11c8b1
- ret
-.asm_11c8b7
- hlcoord 17, 16
- ld a, $7f
- ld [hl], a
- hlcoord 11, 17
- ld c, $7
-.asm_11c8c2
- ld [hli], a
- dec c
- jr nz, .asm_11c8c2
- ret
-; 11c8c7 (47:48c7)
-
-Function11c8c7: ; 11c8c7
- inc a
- push af
- and $f
- ld [hDividend], a
- pop af
- and $f0
- swap a
- ld [hQuotient], a
- xor a
- ld [$ffb5], a
- push hl
- callba Function11a80c
- pop hl
- ld a, [wcd63]
- add $f6
- ld [hli], a
- ld a, [wcd62]
- add $f6
- ld [hli], a
- ret
-; 11c8ec
-
-String_11c8ec: ; 11c8ec
- db "ぺージ@"
-; 11c8f0
-
-String_11c8f0: ; 11c8f0
- db "まえ@"
-; 11c8f3
-
-String_11c8f3: ; 11c8f3
- db "つぎ@"
-; 11c8f6
-
-Function11c8f6: ; 11c8f6 (47:48f6)
- ld a, [BGMapBuffer] ; wcd20 (aliases: CreditsPos)
- call Function11c95d
- push hl
- ld a, [wcd2b]
- and a
- jr nz, .asm_11c938
- ld a, [wcd21]
- ld d, a
- and a
- jr z, .asm_11c927
- ld hl, wcd26
- ld a, [wcd25]
- add [hl]
-.asm_11c911
- ld e, a
-.asm_11c912
- pop hl
- push de
- call Function11c05d
- pop de
- ld a, [BGMapBuffer] ; wcd20 (aliases: CreditsPos)
- ld c, a
- ld b, $0
- ld hl, wcd36
-rept 2
- add hl, bc
-endr
- ld [hl], e
- inc hl
- ld [hl], d
- ret
-.asm_11c927
- ld hl, wcd26
- ld a, [wcd25]
- add [hl]
- ld c, a
- ld b, $0
- ld hl, wd100
- add hl, bc
- ld a, [hl]
- jr .asm_11c911
-.asm_11c938
- ld hl, $c648
- ld a, [wcd22]
- ld e, a
- ld d, $0
-rept 2
- add hl, de
-endr
- ld a, [hli]
- ld e, a
- ld a, [hl]
- ld d, a
- push de
- pop hl
- ld a, [wcd26]
- ld e, a
- ld d, $0
-rept 2
- add hl, de
-endr
- ld a, [wcd25]
- ld e, a
-rept 2
- add hl, de
-endr
- ld a, [hli]
- ld e, a
- ld a, [hl]
- ld d, a
- jr .asm_11c912
-
-Function11c95d: ; 11c95d (47:495d)
- sla a
- ld c, a
- ld b, 0
- ld hl, Unknown_11c986
- add hl, bc
- ld a, [hli]
- ld c, a
- ld a, [hl]
- ld b, a
- push bc
- push bc
- pop hl
- ld a, $5
- ld c, a
- ld a, $7f
-.asm_11c972
- ld [hli], a
- dec c
- jr nz, .asm_11c972
- dec hl
- ld bc, -20
- add hl, bc
- ld a, $5
- ld c, a
- ld a, $7f
-.asm_11c980
- ld [hld], a
- dec c
- jr nz, .asm_11c980
- pop hl
- ret
-; 11c986 (47:4986)
-
-Unknown_11c986:
- dwcoord 1, 2
- dwcoord 7, 2
- dwcoord 13, 2
- dwcoord 1, 4
- dwcoord 7, 4
- dwcoord 13, 4
-; 11c992
-
-Function11c992: ; 11c992 (47:4992)
- ld a, $8
- hlcoord 2, 7
-.asm_11c997
- push af
- ld a, $7f
- push hl
- ld bc, $11
- call ByteFill
- pop hl
- ld bc, $14
- add hl, bc
- pop af
- dec a
- jr nz, .asm_11c997
- ret
-
-Function11c9ab: ; 11c9ab (47:49ab)
- ld a, $7
- hlcoord 0, 6, AttrMap
- ld bc, $c8
- call ByteFill
- callba Function104061
- ret
-
-Function11c9bd: ; 11c9bd (47:49bd)
- ld de, String_11ca38
- call Function11ca7f
-
-Function11c9c3: ; 11c9c3 (47:49c3)
- ld hl, wcd2a
- ld de, hJoypadPressed ; $ffa3
- ld a, [de]
- and $1
- jr nz, .asm_11c9de
- ld a, [de]
- and $2
- jr nz, .asm_11c9e9
- ld a, [de]
- and $40
- jr nz, .asm_11c9f7
- ld a, [de]
- and $80
- jr nz, .asm_11c9fc
- ret
-.asm_11c9de
- ld a, [hl]
- and a
- jr nz, .asm_11c9e9
- call Function11ca5e
- xor a
- ld [BGMapBuffer], a ; wcd20 (aliases: CreditsPos)
-.asm_11c9e9
- ld hl, wcd24
- set 4, [hl]
- ld a, $4
- ld [wJumptableIndex], a
- call PlayClickSFX
- ret
-.asm_11c9f7
- ld a, [hl]
- and a
- ret z
- dec [hl]
- ret
-.asm_11c9fc
- ld a, [hl]
- and a
- ret nz
- inc [hl]
- ret
-
-Function11ca01: ; 11ca01 (47:4a01)
- hlcoord 14, 7, AttrMap
- ld de, $14
- ld a, $5
- ld c, a
-.asm_11ca0a
- push hl
- ld a, $6
- ld b, a
- ld a, $7
-.asm_11ca10
- ld [hli], a
- dec b
- jr nz, .asm_11ca10
- pop hl
- add hl, de
- dec c
- jr nz, .asm_11ca0a
-
-Function11ca19: ; 11ca19 (47:4a19)
- hlcoord 0, 12, AttrMap
- ld de, $14
- ld a, $6
- ld c, a
-.asm_11ca22
- push hl
- ld a, $14
- ld b, a
- ld a, $7
-.asm_11ca28
- ld [hli], a
- dec b
- jr nz, .asm_11ca28
- pop hl
- add hl, de
- dec c
- jr nz, .asm_11ca22
- callba Function104061
- ret
-; 11ca38 (47:4a38)
-
-String_11ca38: ; 11ca38
- db "とうろくちゅう", $25, "あいさつ", $1f, "ぜんぶ"
- next "けしても よろしいですか?@"
-; 11ca57
-
-String_11ca57: ; 11ca57
- db "はい"
- next "いいえ@"
-; 11ca5e
-
-Function11ca5e: ; 11ca5e (47:4a5e)
- xor a
-.asm_11ca5f
- push af
- call Function11ca6a
- pop af
- inc a
- cp $6
- jr nz, .asm_11ca5f
- ret
-
-Function11ca6a: ; 11ca6a (47:4a6a)
- ld hl, wcd36
- ld c, a
- ld b, $0
-rept 2
- add hl, bc
-endr
- ld [hl], b
- inc hl
- ld [hl], b
- call Function11c95d
- ld de, String_11c3bc
- call PlaceString
- ret
-
-Function11ca7f: ; 11ca7f (47:4a7f)
- push de
- ld de, Unknown_11cfc6
- call Function11cfce
- ld de, Unknown_11cfca
- call Function11cfce
- hlcoord 1, 14
- pop de
- call PlaceString
- hlcoord 16, 8
- ld de, String_11ca57
- call PlaceString
- call Function11ca01
- ld a, $1
- ld [wcd2a], a
- ld hl, wcd24
- res 4, [hl]
- call Function11cfb5
- ret
-
-Function11caad: ; 11caad (47:4aad)
- ld de, String_11cb1c
- call Function11ca7f
-
-Function11cab3: ; 11cab3 (47:4ab3)
- ld hl, wcd2a
- ld de, hJoypadPressed ; $ffa3
- ld a, [de]
- and $1
- jr nz, .asm_11cace
- ld a, [de]
- and $2
- jr nz, .asm_11caf9
- ld a, [de]
- and $40
- jr nz, .asm_11cb12
- ld a, [de]
- and $80
- jr nz, .asm_11cb17
- ret
-.asm_11cace
- call PlayClickSFX
- ld a, [hl]
- and a
- jr nz, .asm_11cafc
- ld a, [wcd35]
- and a
- jr z, .asm_11caf3
- cp $ff
- jr z, .asm_11caf3
- ld a, $ff
- ld [wcd35], a
- hlcoord 1, 14
- ld de, String_11cb31
- call PlaceString
- ld a, $1
- ld [wcd2a], a
- ret
-.asm_11caf3
- ld hl, wJumptableIndex
- set 7, [hl]
- ret
-.asm_11caf9
- call PlayClickSFX
-.asm_11cafc
- ld hl, wcd24
- set 4, [hl]
- ld a, $4
- ld [wJumptableIndex], a
- ld a, [wcd35]
- cp $ff
- ret nz
- ld a, $1
- ld [wcd35], a
- ret
-.asm_11cb12
- ld a, [hl]
- and a
- ret z
- dec [hl]
- ret
-.asm_11cb17
- ld a, [hl]
- and a
- ret nz
- inc [hl]
- ret
-; 11cb1c (47:4b1c)
-
-String_11cb1c: ; 11cb1c
- db "あいさつ", $25, "とうろく", $1f, "ちゅうし"
- next "しますか?@"
-; 11cb31
-
-String_11cb31: ; 11cb31
- db "とうろくちゅう", $25, "あいさつ", $24, "ほぞん"
- next "されません", $4a, "よろしい ですか?@"
-; 11cb52
-
-Function11cb52: ; 11cb52 (47:4b52)
- ld hl, Unknown_11cc01
- ld a, [MenuSelection2]
-.asm_11cb58
- dec a
- jr z, .asm_11cb5f
-rept 2
- inc hl
-endr
- jr .asm_11cb58
-.asm_11cb5f
- ld a, [hli]
- ld e, a
- ld a, [hl]
- ld d, a
- call Function11ca7f
-
-Function11cb66: ; 11cb66 (47:4b66)
- ld hl, wcd2a
- ld de, hJoypadPressed ; $ffa3
- ld a, [de]
- and $1
- jr nz, .asm_11cb81
- ld a, [de]
- and $2
- jr nz, .asm_11cbd7
- ld a, [de]
- and $40
- jr nz, .asm_11cbeb
- ld a, [de]
- and $80
- jr nz, .asm_11cbf0
- ret
-.asm_11cb81
- ld a, [hl]
- and a
- jr nz, .asm_11cbd4
- ld a, $4
- call GetSRAMBank
- ld hl, $a007
- ld a, [MenuSelection2]
- dec a
- sla a
- sla a
- ld c, a
- sla a
- add c
- ld c, a
- ld b, $0
- add hl, bc
- ld de, wcd36
- ld c, $c
-.asm_11cba2
- ld a, [de]
- ld [hli], a
- inc de
- dec c
- jr nz, .asm_11cba2
- call CloseSRAM
- call PlayClickSFX
- ld de, Unknown_11cfc6
- call Function11cfce
- ld hl, Unknown_11cc7e
- ld a, [MenuSelection2]
-.asm_11cbba
- dec a
- jr z, .asm_11cbc1
-rept 2
- inc hl
-endr
- jr .asm_11cbba
-.asm_11cbc1
- ld a, [hli]
- ld e, a
- ld a, [hl]
- ld d, a
- hlcoord 1, 14
- call PlaceString
- ld hl, wJumptableIndex
- inc [hl]
- inc hl
- ld a, $10
- ld [hl], a
- ret
-.asm_11cbd4
- call PlayClickSFX
-.asm_11cbd7
- ld de, Unknown_11cfba
- call Function11cfce
- call Function11c38a
- ld hl, wcd24
- set 4, [hl]
- ld a, $4
- ld [wJumptableIndex], a
- ret
-.asm_11cbeb
- ld a, [hl]
- and a
- ret z
- dec [hl]
- ret
-.asm_11cbf0
- ld a, [hl]
- and a
- ret nz
- inc [hl]
- ret
-
-Function11cbf5: ; 11cbf5 (47:4bf5)
- call WaitSFX
- ld hl, wcf64
- dec [hl]
- ret nz
- dec hl
- set 7, [hl]
- ret
-; 11cc01 (47:4c01)
-
-Unknown_11cc01: ; 11cc01
- dw String_11cc09
- dw String_11cc23
- dw String_11cc42
- dw String_11cc60
-
-String_11cc09: ; 11cc09
- db "じこしょうかい は"
- next "この あいさつで いいですか?@"
-
-String_11cc23: ; 11cc23
- db "たいせん ", $4a, "はじまるとき は"
- next "この あいさつで いいですか?@"
-
-String_11cc42: ; 11cc42
- db "たいせん ", $1d, "かったとき は"
- next "この あいさつで いいですか?@"
-
-String_11cc60: ; 11cc60
- db "たいせん ", $1d, "まけたとき は"
- next "この あいさつで いいですか?@"
-; 11cc7e
-
-Unknown_11cc7e: ; 11cc7e
- dw String_11cc86
- dw String_11cc9d
- dw String_11ccb9
- dw String_11ccd4
-
-String_11cc86: ; 11cc86
- db "じこしょうかい の"
- next "あいさつ", $1f, "とうろくした!@"
-
-String_11cc9d: ; 11cc9d
- db "たいせん ", $4a, "はじまるとき の"
- next "あいさつ", $1f, "とうろくした!@"
-
-String_11ccb9: ; 11ccb9
- db "たいせん ", $1d, "かったとき の"
- next "あいさつ", $1f, "とうろくした!@"
-
-String_11ccd4: ; 11ccd4
- db "たいせん ", $1d, "まけたとき の"
- next "あいさつ", $1f, "とうろくした!@"
-; 11ccef
-
-Function11ccef: ; 11ccef (47:4cef)
- ld de, Unknown_11cfc6
- call Function11cfce
- hlcoord 1, 14
- ld de, String_11cd10
- call PlaceString
- call Function11ca19
- call Function11cfb5
-
-Function11cd04: ; 11cd04 (47:4d04)
- ld de, hJoypadPressed ; $ffa3
- ld a, [de]
- and a
- ret z
- ld a, $4
- ld [wJumptableIndex], a
- ret
-; 11cd10 (47:4d10)
-
-String_11cd10: ; 11cd10
- db "なにか ことば", $1f, "いれてください@"
-; 11cd20
-
-Function11cd20: ; 11cd20 (47:4d20)
- call Function11c277
- ld de, Unknown_11cfc6
- call Function11cfce
- hlcoord 1, 14
- ld a, [wcd2b]
- ld [wcd2c], a
- and a
- jr nz, .asm_11cd3a
- ld de, String_11cdc7
- jr .asm_11cd3d
-.asm_11cd3a
- ld de, String_11cdd9
-.asm_11cd3d
- call PlaceString
- hlcoord 4, 8
- ld de, String_11cdf5
- call PlaceString
- call Function11cdaa
- ld hl, wcd24
- res 5, [hl]
- call Function11cfb5
-
-Function11cd54: ; 11cd54 (47:4d54)
- ld hl, wcd2c
- ld de, hJoypadPressed ; $ffa3
- ld a, [de]
- and A_BUTTON
- jr nz, .asm_11cd6f
- ld a, [de]
- and B_BUTTON
- jr nz, .asm_11cd73
- ld a, [de]
- and D_UP
- jr nz, .asm_11cd8b
- ld a, [de]
- and D_DOWN
- jr nz, .asm_11cd94
- ret
-
-.asm_11cd6f
- ld a, [hl]
- ld [wcd2b], a
-.asm_11cd73
- ld a, [wcd2b]
- and a
- jr nz, .asm_11cd7d
- ld a, $6
- jr .asm_11cd7f
-
-.asm_11cd7d
- ld a, $15
-.asm_11cd7f
- ld [wJumptableIndex], a
- ld hl, wcd24
- set 5, [hl]
- call PlayClickSFX
- ret
-
-.asm_11cd8b
- ld a, [hl]
- and a
- ret z
- dec [hl]
- ld de, String_11cdc7
- jr .asm_11cd9b
-
-.asm_11cd94
- ld a, [hl]
- and a
- ret nz
- inc [hl]
- ld de, String_11cdd9
-.asm_11cd9b
- push de
- ld de, Unknown_11cfc6
- call Function11cfce
- pop de
- hlcoord 1, 14
- call PlaceString
- ret
-
-Function11cdaa: ; 11cdaa (47:4daa)
- ld a, $2
- hlcoord 0, 6, AttrMap
- ld bc, $78
- call ByteFill
- ld a, $7
- hlcoord 0, 12, AttrMap
- ld bc, $50
- call ByteFill
- callba Function104061
- ret
-; 11cdc7 (47:4dc7)
-
-String_11cdc7: ; 11cdc7
- db "ことば", $1f, "しゅるいべつに"
- next "えらべます@"
-; 11cdd9
-
-String_11cdd9: ; 11cdd9
- db "ことば", $1f, "アイウエォ の"
- next "じゅんばんで ひょうじ します@"
-; 11cdf5
-
-String_11cdf5: ; 11cdf5
- db "しゅるいべつ モード"
- next "アイウエォ モード@"
-; 11ce0b
-
-Function11ce0b: ; 11ce0b (47:4e0b)
- call Function11c277
- hlcoord 1, 7
- ld de, String_11cf79
- call PlaceString
- hlcoord 1, 17
- ld de, String_11c62a
- call PlaceString
- call Function11c618
- ld hl, wcd24
- res 2, [hl]
- call Function11cfb5
-
-Function11ce2b: ; 11ce2b (47:4e2b)
- ld a, [CreditsTimer]
- sla a
- sla a
- ld c, a
- ld b, 0
- ld hl, Unknown_11ceb9
- add hl, bc
-
- ld de, hJoypadPressed ; $ffa3
- ld a, [de]
- and START
- jr nz, .start
- ld a, [de]
- and SELECT
- jr nz, .select
- ld a, [de]
- and A_BUTTON
- jr nz, .a
- ld a, [de]
- and B_BUTTON
- jr nz, .b
-
- ld de, hJoyLast
- ld a, [de]
- and D_UP
- jr nz, .up
- ld a, [de]
- and D_DOWN
- jr nz, .down
- ld a, [de]
- and D_LEFT
- jr nz, .left
- ld a, [de]
- and D_RIGHT
- jr nz, .right
-
- ret
-
-.a
- ld a, [CreditsTimer]
- cp $2d
- jr c, .asm_11ce92
- sub $2d
- jr z, .asm_11cea4
- dec a
- jr z, .asm_11ce96
- jr .b
-
-.start
- ld hl, wcd24
- set 0, [hl]
- ld a, $8
- ld [BGMapBuffer], a ; wcd20 (aliases: CreditsPos)
-.b
- ld a, $4
- jr .asm_11ce98
-.select
- ld a, [wcd2b]
- xor $1
- ld [wcd2b], a
- ld a, $6
- jr .asm_11ce98
-
-.asm_11ce92
- ld a, $8
- jr .asm_11ce98
-
-.asm_11ce96
- ld a, $13
-.asm_11ce98
- ld [wJumptableIndex], a
- ld hl, wcd24
- set 2, [hl]
- call PlayClickSFX
- ret
-.asm_11cea4
- ld a, [BGMapBuffer] ; wcd20 (aliases: CreditsPos)
- call Function11ca6a
- call PlayClickSFX
- ret
-
-.left
- inc hl
-.down
- inc hl
-.right
- inc hl
-.up
- ld a, [hl]
- cp $ff
- ret z
- ld [CreditsTimer], a
- ret
-; 11ceb9 (47:4eb9)
-
-Unknown_11ceb9: ; 11ceb9
- ; up left down right
- db $ff, $01, $05, $ff
- db $ff, $02, $06, $00
- db $ff, $03, $07, $01
- db $ff, $04, $08, $02
- db $ff, $14, $09, $03
- db $00, $06, $0a, $ff
- db $01, $07, $0b, $05
- db $02, $08, $0c, $06
- db $03, $09, $0d, $07
- db $04, $19, $0e, $08
- db $05, $0b, $0f, $ff
- db $06, $0c, $10, $0a
- db $07, $0d, $11, $0b
- db $08, $0e, $12, $0c
- db $09, $1e, $13, $0d
- db $0a, $10, $2d, $ff
- db $0b, $11, $2d, $0f
- db $0c, $12, $2d, $10
- db $0d, $13, $2d, $11
- db $0e, $26, $2d, $12
- db $ff, $15, $19, $04
- db $ff, $16, $1a, $14
- db $ff, $17, $1b, $15
- db $ff, $18, $1c, $16
- db $ff, $23, $1d, $17
- db $14, $1a, $1e, $09
- db $15, $1b, $1f, $19
- db $16, $1c, $20, $1a
- db $17, $1d, $21, $1b
- db $18, $2b, $22, $1c
- db $19, $1f, $26, $0e
- db $1a, $20, $27, $1e
- db $1b, $21, $28, $1f
- db $1c, $22, $29, $20
- db $1d, $2c, $2a, $21
- db $ff, $24, $2b, $18
- db $ff, $25, $2b, $23
- db $ff, $ff, $2b, $24
- db $1e, $27, $2e, $13
- db $1f, $28, $2e, $26
- db $20, $29, $2e, $27
- db $21, $2a, $2e, $28
- db $22, $ff, $2e, $29
- db $23, $ff, $2c, $1d
- db $2b, $ff, $2f, $22
- db $0f, $2e, $ff, $ff
- db $26, $2f, $ff, $2d
- db $2c, $ff, $ff, $2e
-; 11cf79
-
-String_11cf79: ; 11cf79
- db "あいうえお なにぬねの や ゆ よ"
- next "かきくけこ はひふへほ わ"
- next "さしすせそ まみむめも そのた"
- next "たちつてと らりるれろ"
- db "@"
-; 11cfb5
-
-Function11cfb5: ; 11cfb5 (47:4fb5)
- ld hl, wJumptableIndex
- inc [hl]
- ret
-; 11cfba (47:4fba)
-
-Unknown_11cfba:
- db 0, 0 ; start coords
- db 20, 6 ; end coords
-
-Unknown_11cfbe:
- db 0, 14 ; start coords
- db 20, 4 ; end coords
-
-Unknown_11cfc2:
- db 0, 6 ; start coords
- db 20, 10 ; end coords
-
-Unknown_11cfc6:
- db 0, 12 ; start coords
- db 20, 6 ; end coords
-
-Unknown_11cfca:
- db 14, 7 ; start coords
- db 6, 5 ; end coords
-; 11cfce
-
-Function11cfce: ; 11cfce (47:4fce)
- hlcoord 0, 0
- ld bc, $14
- ld a, [de]
- inc de
- push af
- ld a, [de]
- inc de
- and a
-.asm_11cfda
- jr z, .asm_11cfe0
- add hl, bc
- dec a
- jr .asm_11cfda
-.asm_11cfe0
- pop af
- ld c, a
- ld b, 0
- add hl, bc
- push hl
- ld a, $79
- ld [hli], a
- ld a, [de]
- inc de
-rept 2
- dec a
-endr
- jr z, .asm_11cff6
- ld c, a
- ld a, $7a
-.asm_11cff2
- ld [hli], a
- dec c
- jr nz, .asm_11cff2
-.asm_11cff6
- ld a, $7b
- ld [hl], a
- pop hl
- ld bc, $14
- add hl, bc
- ld a, [de]
- dec de
-rept 2
- dec a
-endr
- jr z, .asm_11d022
- ld b, a
-.asm_11d005
- push hl
- ld a, $7c
- ld [hli], a
- ld a, [de]
-rept 2
- dec a
-endr
- jr z, .asm_11d015
- ld c, a
- ld a, $7f
-.asm_11d011
- ld [hli], a
- dec c
- jr nz, .asm_11d011
-.asm_11d015
- ld a, $7c
- ld [hl], a
- pop hl
- push bc
- ld bc, $14
- add hl, bc
- pop bc
- dec b
- jr nz, .asm_11d005
-.asm_11d022
- ld a, $7d
- ld [hli], a
- ld a, [de]
-rept 2
- dec a
-endr
- jr z, .asm_11d031
- ld c, a
- ld a, $7a
-.asm_11d02d
- ld [hli], a
- dec c
- jr nz, .asm_11d02d
-.asm_11d031
- ld a, $7e
- ld [hl], a
- ret
-
-Function11d035: ; 11d035 (47:5035)
- hlcoord 0, 0
- ld bc, $14
- ld a, [de]
- inc de
- push af
- ld a, [de]
- inc de
- and a
-.asm_11d041
- jr z, .asm_11d047
- add hl, bc
- dec a
- jr .asm_11d041
-.asm_11d047
- pop af
- ld c, a
- ld b, $0
- add hl, bc
- push hl
- ld a, $79
- ld [hl], a
- pop hl
- push hl
- ld a, [de]
- dec a
- inc de
- ld c, a
- add hl, bc
- ld a, $7b
- ld [hl], a
- call Function11d0ac
- ld a, $7e
- ld [hl], a
- pop hl
- push hl
- call Function11d0ac
- ld a, $7d
- ld [hl], a
- pop hl
- push hl
- inc hl
- push hl
- call Function11d0ac
- pop bc
- dec de
- ld a, [de]
- cp $2
- jr z, .asm_11d082
-rept 2
- dec a
-endr
-.asm_11d078
- push af
- ld a, $7a
- ld [hli], a
- ld [bc], a
- inc bc
- pop af
- dec a
- jr nz, .asm_11d078
-.asm_11d082
- pop hl
- ld bc, $14
- add hl, bc
- push hl
- ld a, [de]
- dec a
- ld c, a
- ld b, $0
- add hl, bc
- pop bc
- inc de
- ld a, [de]
- cp $2
- ret z
- push bc
-rept 2
- dec a
-endr
- ld c, a
- ld b, a
- ld de, $14
-.asm_11d09c
- ld a, $7c
- ld [hl], a
- add hl, de
- dec c
- jr nz, .asm_11d09c
- pop hl
-.asm_11d0a4
- ld a, $7c
- ld [hl], a
- add hl, de
- dec b
- jr nz, .asm_11d0a4
- ret
-
-Function11d0ac: ; 11d0ac (47:50ac)
- ld a, [de]
- dec a
- ld bc, $14
-.asm_11d0b1
- add hl, bc
- dec a
- jr nz, .asm_11d0b1
- ret
-
-Function11d0b6: ; 11d0b6 (47:50b6)
- ld hl, $c
- add hl, bc
- ld a, [hl]
- ld e, a
- ld d, 0
- ld hl, Jumptable_11d0c7
-rept 2
- add hl, de
-endr
- ld a, [hli]
- ld h, [hl]
- ld l, a
- jp [hl]
-
-Jumptable_11d0c7: ; 11d0c7 (47:50c7)
- dw Function11d0dd
- dw Function11d0e9
- dw Function11d0f5
- dw Function11d10f
- dw Function11d134
- dw Function11d145
- dw Function11d156
- dw Function11d175
- dw Function11d1d7
- dw Function11d1d1
- dw Function11d1fc
-
-
-Function11d0dd: ; 11d0dd (47:50dd)
- ld a, [BGMapBuffer] ; wcd20 (aliases: CreditsPos)
- sla a
- ld hl, Unknown_11d208
- ld e, $1
- jr asm_11d11e
-
-Function11d0e9: ; 11d0e9 (47:50e9)
- ld a, [wcd21]
- sla a
- ld hl, Unknown_11d21a
- ld e, $2
- jr asm_11d11e
-
-Function11d0f5: ; 11d0f5 (47:50f5)
- ld hl, Unknown_11d2be
- ld a, [CreditsTimer]
- ld e, a
- ld d, $0
- add hl, de
- ld a, [hl]
- call Function3b3c
- ld a, [CreditsTimer]
- sla a
- ld hl, Unknown_11d23e
- ld e, $4
- jr asm_11d11e
-
-Function11d10f: ; 11d10f (47:510f)
- ld a, $27
- call Function3b3c
- ld a, [wcd25]
- sla a
- ld hl, Unknown_11d29e
- ld e, $8
-
-asm_11d11e: ; 11d11e (47:511e)
- push de
- ld e, a
- ld d, $0
- add hl, de
- push hl
- pop de
- ld hl, $4
- add hl, bc
- ld a, [de]
- inc de
- ld [hli], a
- ld a, [de]
- ld [hl], a
- pop de
- ld a, e
- call Function11d2ee
- ret
-
-Function11d134: ; 11d134 (47:5134)
- ld a, $27
- call Function3b3c
- ld a, [wcd2a]
- sla a
- ld hl, Unknown_11d2b6
- ld e, $10
- jr asm_11d11e
-
-Function11d145: ; 11d145 (47:5145)
- ld a, $27
- call Function3b3c
- ld a, [wcd2c]
- sla a
- ld hl, Unknown_11d2ba
- ld e, $20
- jr asm_11d11e
-
-Function11d156: ; 11d156 (47:5156)
- ld a, $2a
- call Function3b3c
- ld a, [wcd4a]
- sla a
- sla a
- sla a
- add $18
- ld hl, $4
- add hl, bc
- ld [hli], a
- ld a, $30
- ld [hl], a
- ld a, $1
- ld e, a
- call Function11d2ee
- ret
-
-Function11d175: ; 11d175 (47:5175)
- ld a, [wcd4d]
- cp $4
- jr z, .asm_11d180
- ld a, $28
- jr .asm_11d182
-.asm_11d180
- ld a, $26
-.asm_11d182
- call Function3b3c
- ld a, [wcd4d]
- cp $4
- jr z, .asm_11d1b1
- ld a, [wcd4c]
- sla a
- sla a
- sla a
- add $20
- ld hl, $4
- add hl, bc
- ld [hli], a
- ld a, [wcd4d]
- sla a
- sla a
- sla a
- sla a
- add $48
- ld [hl], a
- ld a, $2
- ld e, a
- call Function11d2ee
- ret
-.asm_11d1b1
- ld a, [wcd4c]
- sla a
- sla a
- sla a
- ld e, a
- sla a
- sla a
- add e
- add $18
- ld hl, $4
- add hl, bc
- ld [hli], a
- ld a, $8a
- ld [hl], a
- ld a, $2
- ld e, a
- call Function11d2ee
- ret
-
-Function11d1d1: ; 11d1d1 (47:51d1)
- ld d, $98
- ld a, $2c
- jr asm_11d1db
-
-Function11d1d7: ; 11d1d7 (47:51d7)
- ld d, $10
- ld a, $2b
-
-asm_11d1db: ; 11d1db (47:51db)
- push de
- call Function3b3c
- ld a, [wcd4a]
- sla a
- sla a
- sla a
- ld e, a
- sla a
- add e
- add $40
- ld hl, $5
- add hl, bc
- ld [hld], a
- pop af
- ld [hl], a
- ld a, $4
- ld e, a
- call Function11d2ee
- ret
-
-Function11d1fc: ; 11d1fc (47:51fc)
- ld a, $26
- call Function3b3c
- ld a, $8
- ld e, a
- call Function11d2ee
- ret
-; 11d208 (47:5208)
-
-Unknown_11d208: ; 11d208
- db $0d, $1a
- db $3d, $1a
- db $6d, $1a
- db $0d, $2a
- db $3d, $2a
- db $6d, $2a
- db $0d, $8a
- db $3d, $8a
- db $6d, $8a
-
-Unknown_11d21a: ; 11d21a
- db $0d, $42
- db $3d, $42
- db $6d, $42
- db $0d, $52
- db $3d, $52
- db $6d, $52
- db $0d, $62
- db $3d, $62
- db $6d, $62
- db $0d, $72
- db $3d, $72
- db $6d, $72
- db $0d, $82
- db $3d, $82
- db $6d, $82
- db $0d, $92
- db $3d, $92
- db $6d, $92
-
-Unknown_11d23e: ; 11d23e
- db $10, $48
- db $18, $48
- db $20, $48
- db $28, $48
- db $30, $48
- db $10, $58
- db $18, $58
- db $20, $58
- db $28, $58
- db $30, $58
- db $10, $68
- db $18, $68
- db $20, $68
- db $28, $68
- db $30, $68
- db $10, $78
- db $18, $78
- db $20, $78
- db $28, $78
- db $30, $78
- db $40, $48
- db $48, $48
- db $50, $48
- db $58, $48
- db $60, $48
- db $40, $58
- db $48, $58
- db $50, $58
- db $58, $58
- db $60, $58
- db $40, $68
- db $48, $68
- db $50, $68
- db $58, $68
- db $60, $68
- db $70, $48
- db $80, $48
- db $90, $48
- db $40, $78
- db $48, $78
- db $50, $78
- db $58, $78
- db $60, $78
- db $70, $58
- db $70, $68
- db $0d, $92
- db $3d, $92
- db $6d, $92
-
-Unknown_11d29e: ; 11d29e
- db $10, $50
- db $40, $50
- db $70, $50
- db $10, $60
- db $40, $60
- db $70, $60
- db $10, $70
- db $40, $70
- db $70, $70
- db $10, $80
- db $40, $80
- db $70, $80
-
-Unknown_11d2b6: ; 11d2b6
- db $80, $50
- db $80, $60
-
-Unknown_11d2ba: ; 11d2ba
- db $20, $50
- db $20, $60
-
-Unknown_11d2be: ; 11d2be
- db $28, $28
- db $28, $28
- db $28, $28
- db $28, $28
- db $28, $28
- db $28, $28
- db $28, $28
- db $28, $28
- db $28, $28
- db $28, $28
- db $28, $28
- db $28, $28
- db $28, $28
- db $28, $28
- db $28, $28
- db $28, $28
- db $28, $28
- db $28, $28
- db $28, $28
- db $28, $28
- db $28, $28
- db $28, $28
- db $29, $26
- db $26, $26
-
-Function11d2ee: ; 11d2ee (47:52ee)
- ld hl, wcd24
- and [hl]
- jr nz, .asm_11d316
- ld a, e
- ld hl, wcd23
- and [hl]
- jr z, .asm_11d30f
- ld hl, $e
- add hl, bc
- ld a, [hl]
- and a
- jr z, .asm_11d305
- dec [hl]
- ret
-.asm_11d305
- ld a, $0
- ld [hld], a
- ld a, $1
- xor [hl]
- ld [hl], a
- and a
- jr nz, .asm_11d316
-.asm_11d30f
- ld hl, $7
- add hl, bc
- xor a
- ld [hl], a
- ret
-.asm_11d316
- ld hl, $5
- add hl, bc
- ld a, $b0
- sub [hl]
- ld hl, $7
- add hl, bc
- ld [hl], a
- ret
+INCLUDE "misc/fixed_words.asm"
-Function11d323: ; 11d323
- ld a, [rSVBK]
- push af
- ld a, $5
- ld [rSVBK], a
- ld hl, Palette_11d33a
- ld de, wMapPals
- ld bc, 16 * 8
- call CopyBytes
- pop af
- ld [rSVBK], a
- ret
-; 11d33a
-
-Palette_11d33a:
- RGB 31, 31, 31
- RGB 00, 00, 00
- RGB 00, 00, 00
- RGB 00, 00, 00
-
- RGB 31, 16, 31
- RGB 00, 00, 00
- RGB 00, 00, 00
- RGB 00, 00, 00
-
- RGB 23, 17, 31
- RGB 00, 00, 00
- RGB 00, 00, 00
- RGB 00, 00, 00
-
- RGB 31, 31, 31
- RGB 00, 00, 00
- RGB 00, 00, 00
- RGB 00, 00, 00
-
- RGB 31, 31, 31
- RGB 00, 00, 00
- RGB 00, 00, 00
- RGB 00, 00, 00
-
- RGB 31, 31, 31
- RGB 00, 00, 00
- RGB 00, 00, 00
- RGB 00, 00, 00
-
- RGB 31, 31, 31
- RGB 00, 00, 00
- RGB 00, 00, 00
- RGB 00, 00, 00
-
- RGB 31, 31, 31
- RGB 00, 00, 00
- RGB 00, 00, 00
- RGB 00, 00, 00
-
- RGB 00, 00, 00
- RGB 00, 00, 00
- RGB 00, 00, 00
- RGB 00, 00, 00
-
- RGB 00, 00, 00
- RGB 00, 00, 00
- RGB 00, 00, 00
- RGB 00, 00, 00
-
- RGB 00, 00, 00
- RGB 00, 00, 00
- RGB 00, 00, 00
- RGB 00, 00, 00
-
- RGB 00, 00, 00
- RGB 00, 00, 00
- RGB 00, 00, 00
- RGB 00, 00, 00
-
- RGB 00, 00, 00
- RGB 00, 00, 00
- RGB 00, 00, 00
- RGB 00, 00, 00
-
- RGB 00, 00, 00
- RGB 00, 00, 00
- RGB 00, 00, 00
- RGB 00, 00, 00
-
- RGB 00, 00, 00
- RGB 00, 00, 00
- RGB 00, 00, 00
- RGB 00, 00, 00
-
- RGB 00, 00, 00
- RGB 00, 00, 00
- RGB 00, 00, 00
- RGB 00, 00, 00
-
-; 11d3ba
-
-Function11d3ba: ; 11d3ba
- ld a, [rSVBK]
- push af
- ld hl, BattleMonSpclDef
- ld a, $0
- ld [wcd2d], a
- ld [hli], a
- ld a, $d8
- ld [wcd2e], a
- ld [hl], a
- ld a, $fe
- ld [wcd2f], a
- ld a, $54
- ld [wcd30], a
- ld a, $a8
- ld [wcd31], a
- ld a, $c6
- ld [wcd32], a
- ld a, $4a
- ld [wcd33], a
- ld a, $c6
- ld [wcd34], a
- ld hl, Unknown_11f23c
- ld a, $2d
-
-Function11d3ef: ; 11d3ef
- push af
- ld a, [hli]
- ld e, a
- ld a, [hli]
- ld d, a
- ld a, [hli]
- ld c, a
- ld a, [hli]
- ld b, a
- push hl
- ld hl, wMapPals
- add hl, de
- ld a, [wcd2d]
- ld e, a
- ld a, [wcd2e]
- ld d, a
- push bc
-.asm_11d406
- ld a, $3
- ld [rSVBK], a
- ld a, [hli]
- push af
- ld a, $5
- ld [rSVBK], a
- pop af
- ld [de], a
- inc de
- ld a, $3
- ld [rSVBK], a
- ld a, [hli]
- push af
- ld a, $5
- ld [rSVBK], a
- pop af
- ld [de], a
- inc de
- dec bc
- ld a, c
- or b
- jr nz, .asm_11d406
- ld a, [wcd2f]
- ld l, a
- ld a, [wcd30]
- ld h, a
- ld a, [hli]
- ld c, a
- ld a, [hli]
- ld b, a
- ld a, l
- ld [wcd2f], a
- ld a, h
- ld [wcd30], a
- push bc
- pop hl
- ld c, $0
-.asm_11d43d
- ld a, [hl]
- cp $ff
- jr z, .asm_11d453
- call Function11d493
- jr nz, .asm_11d44a
- inc hl
- jr .asm_11d43d
-
-.asm_11d44a
- ld a, [hli]
- ld [de], a
- inc de
- xor a
- ld [de], a
- inc de
- inc c
- jr .asm_11d43d
-
-.asm_11d453
- pop hl
- ld b, $0
- add hl, bc
- push hl
- pop bc
- ld a, [wcd31]
- ld l, a
- ld a, [wcd32]
- ld h, a
- ld a, c
- ld [hli], a
- ld a, b
- ld [hli], a
- ld a, l
- ld [wcd31], a
- ld a, h
- ld [wcd32], a
- ld a, [wcd33]
- ld l, a
- ld a, [wcd34]
- ld h, a
- ld a, e
- ld [wcd2d], a
- ld [hli], a
- ld a, d
- ld [wcd2e], a
- ld [hli], a
- ld a, l
- ld [wcd33], a
- ld a, h
- ld [wcd34], a
- pop hl
- pop af
- dec a
- jr z, .asm_11d48f
- jp Function11d3ef
-
-.asm_11d48f
- pop af
- ld [rSVBK], a
- ret
-; 11d493
-
-Function11d493: ; 11d493
- push hl
- push bc
- push de
- dec a
- ld hl, rSVBK
- ld e, $1
- ld [hl], e
- call CheckSeenMon
- ld hl, rSVBK
- ld e, $5
- ld [hl], e
- pop de
- pop bc
- pop hl
- ret
-; 11d4aa
-
-Function11d4aa: ; 11d4aa
- ld a, [rSVBK]
- push af
- ld a, $3
- ld [rSVBK], a
- ld hl, Unknown_11daac
- ld bc, Unknown_11f220
- xor a
- ld [wcd2d], a
- inc a
- ld [wcd2e], a
- ld a, $e
-.asm_11d4c1
- push af
- ld a, [hli]
- ld e, a
- ld a, [hli]
- ld d, a
- push hl
- ld hl, $0005
- add hl, de
- ld a, [bc]
-rept 2
- inc bc
-endr
- push bc
-.asm_11d4cf
- push af
- push hl
- ld a, [hli]
- ld e, a
- ld a, [hl]
- ld d, a
- ld hl, wd000
- add hl, de
- ld a, [wcd2d]
- ld [hli], a
- inc a
- ld [wcd2d], a
- ld a, [wcd2e]
- ld [hl], a
- pop hl
- ld de, $0008
- add hl, de
- pop af
- dec a
- jr nz, .asm_11d4cf
- ld hl, wcd2d
- xor a
- ld [hli], a
- inc [hl]
- pop bc
- pop hl
- pop af
- dec a
- jr nz, .asm_11d4c1
- pop af
- ld [rSVBK], a
- ret
-; 11d4fe
-
-
-Unknown_11d4fe:
-; Pokemon sorted by kana.
-; Notably, Rhydon is missing.
-
- dw Unknown_11d558
- dw Unknown_11d55f
- dw Unknown_11d565
- dw Unknown_11d56c
- dw Unknown_11d574
- dw Unknown_11d57f
- dw Unknown_11d58e
- dw Unknown_11d598
- dw Unknown_11d59f
- dw Unknown_11d5a3
- dw Unknown_11d5b2
- dw Unknown_11d5bb
- dw Unknown_11d5c0
- dw Unknown_11d5c8
- dw Unknown_11d5cb
- dw Unknown_11d5cd
- dw Unknown_11d5d1
- dw Unknown_11d5d4
- dw Unknown_11d5d6
- dw Unknown_11d5dc
- dw Unknown_11d5e7
- dw Unknown_11d5ea
- dw Unknown_11d5f7
- dw Unknown_11d5f9
- dw Unknown_11d5fc
- dw Unknown_11d5fe
- dw Unknown_11d60e
- dw Unknown_11d61d
- dw Unknown_11d62e
- dw Unknown_11d636
- dw Unknown_11d63e
- dw Unknown_11d649
- dw Unknown_11d64e
- dw Unknown_11d651
- dw Unknown_11d656
- dw Unknown_11d65a
- dw Unknown_11d660
- dw Unknown_11d662
- dw Unknown_11d665
- dw Unknown_11d66d
- dw Unknown_11d671
- dw Unknown_11d674
- dw Unknown_11d678
- dw Unknown_11d67a
- dw Unknown_11d67d
-
-Unknown_11d558: db EKANS, ARBOK, SEAKING, ARIADOS, CROCONAW, UNOWN, $ff
-Unknown_11d55f: db EEVEE, GEODUDE, SPINARAK, PILOSWINE, ONIX, $ff
-Unknown_11d565: db ARCANINE, SUDOWOODO, WEEPINBELL, VICTREEBEL, WOOPER, SWINUB, $ff
-Unknown_11d56c: db SKARMORY, AIPOM, ESPEON, HITMONCHAN, ELEKID, ELECTABUZZ, ENTEI, $ff
-Unknown_11d574: db FERALIGATR, FURRET, OCTILLERY, PRIMEAPE, SENTRET, STANTLER, SPEAROW, FEAROW, OMASTAR, OMANYTE, $ff
-Unknown_11d57f: db GROWLITHE, MACHAMP, DRAGONITE, PINSIR, SNORLAX, KABUTO, KABUTOPS, HITMONTOP, WARTORTLE, BLASTOISE, FARFETCH_D, CUBONE, MAROWAK, KANGASKHAN, $ff
-Unknown_11d58e: db SUNFLORA, CATERPIE, GYARADOS, RAPIDASH, NINETALES, GIRAFARIG, BELLOSSOM, KINGDRA, KINGLER, $ff
-Unknown_11d598: db GLOOM, PINECO, GLIGAR, KRABBY, GRANBULL, CROBAT, $ff
-Unknown_11d59f: db ABRA, GENGAR, TAUROS, $ff
-Unknown_11d5a3: db MAGIKARP, MAGNEMITE, GASTLY, HAUNTER, MACHOKE, KAKUNA, PSYDUCK, PHANPY, RATTATA, GOLDUCK, GOLBAT, GOLEM, GRAVELER, VENONAT, $ff
-Unknown_11d5b2: db RHYHORN, PUPITAR, CORSOLA, HITMONLEE, ZAPDOS, JOLTEON, SANDSHREW, SANDSLASH, $ff
-Unknown_11d5bb: db SEADRA, SHELLDER, VAPOREON, DEWGONG, $ff
-Unknown_11d5c0: db SUICUNE, STARMIE, SCYTHER, ZUBAT, BEEDRILL, HYPNO, DROWZEE, $ff
-Unknown_11d5c8: db SQUIRTLE, CELEBI, $ff
-Unknown_11d5cb: db WOBBUFFET, $ff
-Unknown_11d5cd: db DUGTRIO, HORSEA, EXEGGCUTE, $ff
-Unknown_11d5d1: db CHIKORITA, CHINCHOU, $ff
-Unknown_11d5d4: db SHUCKLE, $ff
-Unknown_11d5d6: db DIGLETT, REMORAID, DELIBIRD, HOUNDOUR, AMPHAROS, $ff
-Unknown_11d5dc: db DODUO, DODRIO, SMEARGLE, KOFFING, TENTACRUEL, TOGETIC, TOGEPI, GOLDEEN, METAPOD, DONPHAN, $ff
-Unknown_11d5e7: db ODDISH, EXEGGUTOR, $ff
-Unknown_11d5ea: db NIDOKING, NIDOQUEEN, NIDORAN_M, NIDORAN_F, NIDORINA, NIDORINO, MEOWTH, SNEASEL, POLIWHIRL, POLITOED, POLIWRATH, POLIWAG, $ff
-Unknown_11d5f7: db QUAGSIRE, $ff
-Unknown_11d5f9: db NATU, XATU, $ff
-Unknown_11d5fc: db DUNSPARCE, $ff
-Unknown_11d5fe: db SEEL, STEELIX, TYPHLOSION, DRAGONAIR, BUTTERFREE, SCIZOR, HOPPIP, BLISSEY, PARAS, PARASECT, QWILFISH, MR__MIME, TYROGUE, CLOYSTER, TYRANITAR, $ff
-Unknown_11d60e: db CLEFFA, WEEDLE, PIKACHU, CLEFABLE, PIDGEOT, PIDGEOTTO, PICHU, CLEFAIRY, CHARMANDER, STARYU, CYNDAQUIL, SUNKERN, TEDDIURSA, VOLTORB, $ff
-Unknown_11d61d: db MOLTRES, FLAREON, ALAKAZAM, MAGMAR, FORRETRESS, WIGGLYTUFF, IVYSAUR, BULBASAUR, VENUSAUR, AERODACTYL, MAGBY, IGGLYBUFF, UMBREON, ARTICUNO, JIGGLYPUFF, SNUBBULL, $ff
-Unknown_11d62e: db BAYLEEF, GRIMER, MUK, HERACROSS, HOUNDOOM, PERSIAN, LICKITUNG, $ff
-Unknown_11d636: db HO_OH, HOOTHOOT, PIDGEY, PONYTA, SKIPLOOM, PORYGON, PORYGON2, $ff
-Unknown_11d63e: db MAGCARGO, SLUGMA, QUILAVA, BELLSPROUT, WEEZING, MARILL, AZUMARILL, ELECTRODE, MANKEY, MANTINE, $ff
-Unknown_11d649: db DRATINI, MEW, MEWTWO, MILTANK, $ff
-Unknown_11d64e: db MISDREAVUS, SMOOCHUM, $ff
-Unknown_11d651: db MEGANIUM, DITTO, TENTACOOL, MAREEP, $ff
-Unknown_11d656: db FLAAFFY, VENOMOTH, TANGELA, $ff
-Unknown_11d65a: db SLOWKING, SLOWBRO, SLOWPOKE, MURKROW, YANMA, $ff
-Unknown_11d660: db KADABRA, $ff
-Unknown_11d662: db LARVITAR, NOCTOWL, $ff
-Unknown_11d665: db RAIKOU, RAICHU, CHANSEY, RATICATE, LAPRAS, VILEPLUME, LANTURN, $ff
-Unknown_11d66d: db CHARMELEON, CHARIZARD, URSARING, $ff
-Unknown_11d671: db JYNX, LUGIA, $ff
-Unknown_11d674: db MAGNETON, LEDIAN, LEDYBA, $ff
-Unknown_11d678: db VULPIX, $ff
-Unknown_11d67a: db JUMPLUFF, TOTODILE, MACHOP
-Unknown_11d67d: db $ff
-; 11d67e
-
-GFX_11d67e:
-INCBIN "gfx/pokedex/select_start.2bpp"
-; 11d6de
-
-LZ_11d6de:
-INCBIN "gfx/pokedex/slowpoke.2bpp.lz"
-; 11da52
-
-Strings_11da52: ; 11da52
- db "ポケモン@@"
- db "タイプ@@@"
- db "あいさつ@@"
- db "ひと@@@@"
- db "バトル@@@"
- db "こえ@@@@"
- db "かいわ@@@"
- db "きもち@@@"
- db "じょうたい@"
- db "せいかつ@@"
- db "しゅみ@@@"
- db "こうどう@@"
- db "じかん@@@"
- db "むすび@@@"
- db "あれこれ@@"
-; 11daac
-
-Unknown_11daac: ; 11daac
- dw Unknown_11dac8
- dw Unknown_11db58
- dw Unknown_11dc78
- dw Unknown_11dea0
- dw Unknown_11e0c8
- dw Unknown_11e2d8
- dw Unknown_11e4e8
- dw Unknown_11e710
- dw Unknown_11e920
- dw Unknown_11ea58
- dw Unknown_11eb90
- dw Unknown_11edb8
- dw Unknown_11eef0
- dw Unknown_11f100
-
-Unknown_11dac8: ; 11dac8
- db "あく@@@", $26, $0, $0
- db "いわ@@@", $aa, $0, $0
- db "エスパー@", $da, $0, $0
- db "かくとう@", $4e, $1, $0
- db "くさ@@@", $ba, $1, $0
- db "ゴースト@", $e4, $1, $0
- db "こおり@@", $e6, $1, $0
- db "じめん@@", $68, $2, $0
- db "タイプ@@", $e8, $2, $0
- db "でんき@@", $8e, $3, $0
- db "どく@@@", $ae, $3, $0
- db "ドラゴン@", $bc, $3, $0
- db "ノーマル@", $22, $4, $0
- db "はがね@@", $36, $4, $0
- db "ひこう@@", $5e, $4, $0
- db "ほのお@@", $b2, $4, $0
- db "みず@@@", $f4, $4, $0
- db "むし@@@", $12, $5, $0
-
-Unknown_11db58: ; 11db58
- db "ありがと@", $58, $0, $0
- db "ありがとう", $5a, $0, $0
- db "いくぜ!@", $80, $0, $0
- db "いくよ!@", $82, $0, $0
- db "いくわよ!", $84, $0, $0
- db "いやー@@", $a6, $0, $0
- db "おっす@@", $a, $1, $0
- db "おはつです", $22, $1, $0
- db "おめでとう", $2a, $1, $0
- db "ごめん@@", $f8, $1, $0
- db "ごめんよ@", $fa, $1, $0
- db "こらっ@@", $fc, $1, $0
- db "こんちは!", $a, $2, $0
- db "こんにちは", $10, $2, $0
- db "さようなら", $28, $2, $0
- db "サンキュー", $2e, $2, $0
- db "さんじょう", $30, $2, $0
- db "しっけい@", $48, $2, $0
- db "しつれい@", $4c, $2, $0
- db "じゃーね@", $6c, $2, $0
- db "すいません", $8c, $2, $0
- db "それじゃ@", $ca, $2, $0
- db "どうも@@", $a6, $3, $0
- db "なんじゃ@", $ee, $3, $0
- db "ハーイ@@", $2c, $4, $0
- db "はいはい@", $32, $4, $0
- db "バイバイ@", $34, $4, $0
- db "へイ@@@", $8a, $4, $0
- db "またね@@", $de, $4, $0
- db "もしもし@", $32, $5, $0
- db "やあ@@@", $3e, $5, $0
- db "やっほー@", $4e, $5, $0
- db "よう@@@", $62, $5, $0
- db "ようこそ@", $64, $5, $0
- db "よろしく@", $80, $5, $0
- db "らっしゃい", $94, $5, $0
-
-Unknown_11dc78: ; 11dc78
- db "あいて@@", $1c, $0, $0
- db "あたし@@", $36, $0, $0
- db "あなた@@", $40, $0, $0
- db "あなたが@", $42, $0, $0
- db "あなたに@", $44, $0, $0
- db "あなたの@", $46, $0, $0
- db "あなたは@", $48, $0, $0
- db "あなたを@", $4a, $0, $0
- db "おかあさん", $e8, $0, $0
- db "おじいさん", $fc, $0, $0
- db "おじさん@", $2, $1, $0
- db "おとうさん", $e, $1, $0
- db "おとこのこ", $10, $1, $0
- db "おとな@@", $14, $1, $0
- db "おにいさん", $16, $1, $0
- db "おねえさん", $18, $1, $0
- db "おばあさん", $1c, $1, $0
- db "おばさん@", $20, $1, $0
- db "おれさま@", $34, $1, $0
- db "おんなのこ", $3a, $1, $0
- db "ガール@@", $40, $1, $0
- db "かぞく@@", $52, $1, $0
- db "かのじょ@", $72, $1, $0
- db "かれ@@@", $7c, $1, $0
- db "きみ@@@", $9a, $1, $0
- db "きみが@@", $9c, $1, $0
- db "きみに@@", $9e, $1, $0
- db "きみの@@", $a0, $1, $0
- db "きみは@@", $a2, $1, $0
- db "きみを@@", $a4, $1, $0
- db "ギャル@@", $ae, $1, $0
- db "きょうだい", $b2, $1, $0
- db "こども@@", $f0, $1, $0
- db "じぶん@@", $54, $2, $0
- db "じぶんが@", $56, $2, $0
- db "じぶんに@", $58, $2, $0
- db "じぶんの@", $5a, $2, $0
- db "じぶんは@", $5c, $2, $0
- db "じぶんを@", $5e, $2, $0
- db "だれ@@@", $18, $3, $0
- db "だれか@@", $1a, $3, $0
- db "だれが@@", $1c, $3, $0
- db "だれに@@", $1e, $3, $0
- db "だれの@@", $20, $3, $0
- db "だれも@@", $22, $3, $0
- db "だれを@@", $24, $3, $0
- db "ちゃん@@", $38, $3, $0
- db "ともだち@", $b8, $3, $0
- db "なかま@@", $d4, $3, $0
- db "ひと@@@", $62, $4, $0
- db "ボーイ@@", $98, $4, $0
- db "ボク@@@", $a0, $4, $0
- db "ボクが@@", $a2, $4, $0
- db "ボクに@@", $a4, $4, $0
- db "ボクの@@", $a6, $4, $0
- db "ボクは@@", $a8, $4, $0
- db "ボクを@@", $aa, $4, $0
- db "みんな@@", $4, $5, $0
- db "みんなが@", $6, $5, $0
- db "みんなに@", $8, $5, $0
- db "みんなの@", $a, $5, $0
- db "みんなは@", $c, $5, $0
- db "ライバル@", $8a, $5, $0
- db "わたし@@", $c2, $5, $0
- db "わたしが@", $c4, $5, $0
- db "わたしに@", $c6, $5, $0
- db "わたしの@", $c8, $5, $0
- db "わたしは@", $ca, $5, $0
- db "わたしを@", $cc, $5, $0
-
-Unknown_11dea0: ; 11dea0
- db "あいしょう", $18, $0, $0
- db "いけ!@@", $88, $0, $0
- db "いちばん@", $96, $0, $0
- db "かくご@@", $4c, $1, $0
- db "かたせて@", $54, $1, $0
- db "かち@@@", $56, $1, $0
- db "かつ@@@", $58, $1, $0
- db "かった@@", $60, $1, $0
- db "かったら@", $62, $1, $0
- db "かって@@", $64, $1, $0
- db "かてない@", $66, $1, $0
- db "かてる@@", $68, $1, $0
- db "かなわない", $70, $1, $0
- db "きあい@@", $84, $1, $0
- db "きめた@@", $a8, $1, $0
- db "きりふだ@", $b6, $1, $0
- db "くらえ@@", $c2, $1, $0
- db "こい!@@", $da, $1, $0
- db "こうげき@", $e0, $1, $0
- db "こうさん@", $e2, $1, $0
- db "こんじょう", $8, $2, $0
- db "さいのう@", $16, $2, $0
- db "さくせん@", $1a, $2, $0
- db "さばき@@", $22, $2, $0
- db "しょうぶ@", $7e, $2, $0
- db "しょうり@", $80, $2, $0
- db "せめ@@@", $b4, $2, $0
- db "センス@@", $b6, $2, $0
- db "たいせん@", $e6, $2, $0
- db "たたかい@", $f6, $2, $0
- db "ちから@@", $32, $3, $0
- db "チャレンジ", $36, $3, $0
- db "つよい@@", $58, $3, $0
- db "つよすぎ@", $5a, $3, $0
- db "つらい@@", $5c, $3, $0
- db "つらかった", $5e, $3, $0
- db "てかげん@", $6c, $3, $0
- db "てき@@@", $6e, $3, $0
- db "てんさい@", $90, $3, $0
- db "でんせつ@", $94, $3, $0
- db "トレーナー", $c6, $3, $0
- db "にげ@@@", $4, $4, $0
- db "ぬるい@@", $10, $4, $0
- db "ねらう@@", $16, $4, $0
- db "バトル@@", $4a, $4, $0
- db "ファイト@", $72, $4, $0
- db "ふっかつ@", $78, $4, $0
- db "ポイント@", $94, $4, $0
- db "ポケモン@", $ac, $4, $0
- db "ほんき@@", $bc, $4, $0
- db "まいった!", $c4, $4, $0
- db "まけ@@@", $c8, $4, $0
- db "まけたら@", $ca, $4, $0
- db "まけて@@", $cc, $4, $0
- db "まける@@", $ce, $4, $0
- db "まもり@@", $ea, $4, $0
- db "みかた@@", $f2, $4, $0
- db "みとめない", $fe, $4, $0
- db "みとめる@", $0, $5, $0
- db "むてき@@", $16, $5, $0
- db "もらった!", $3c, $5, $0
- db "よゆう@@", $7a, $5, $0
- db "よわい@@", $82, $5, $0
- db "よわすぎ@", $84, $5, $0
- db "らくしょう", $8e, $5, $0
- db "りーダー@", $9e, $5, $0
- db "ルール@@", $a0, $5, $0
- db "レべル@@", $a6, $5, $0
- db "わざ@@@", $be, $5, $0
-
-Unknown_11e0c8: ; 11e0c8
- db "!@@@@", $0, $0, $0
- db "!!@@@", $2, $0, $0
- db "!?@@@", $4, $0, $0
- db "?@@@@", $6, $0, $0
- db "…@@@@", $8, $0, $0
- db "…!@@@", $a, $0, $0
- db "………@@", $c, $0, $0
- db "ー@@@@", $e, $0, $0
- db "ーーー@@", $10, $0, $0
- db "あーあ@@", $14, $0, $0
- db "あーん@@", $16, $0, $0
- db "あははー@", $52, $0, $0
- db "あら@@@", $54, $0, $0
- db "いえ@@@", $72, $0, $0
- db "イエス@@", $74, $0, $0
- db "うう@@@", $ac, $0, $0
- db "うーん@@", $ae, $0, $0
- db "うおー!@", $b0, $0, $0
- db "うおりゃー", $b2, $0, $0
- db "うひょー@", $bc, $0, $0
- db "うふふ@@", $be, $0, $0
- db "うわー@@", $ca, $0, $0
- db "うわーん@", $cc, $0, $0
- db "ええ@@@", $d2, $0, $0
- db "えー@@@", $d4, $0, $0
- db "えーん@@", $d6, $0, $0
- db "えへへ@@", $dc, $0, $0
- db "おいおい@", $e0, $0, $0
- db "おお@@@", $e2, $0, $0
- db "おっと@@", $c, $1, $0
- db "がーん@@", $42, $1, $0
- db "キャー@@", $aa, $1, $0
- db "ギャー@@", $ac, $1, $0
- db "ぐふふふふ", $bc, $1, $0
- db "げっ@@@", $ce, $1, $0
- db "しくしく@", $3e, $2, $0
- db "ちえっ@@", $2e, $3, $0
- db "てへ@@@", $86, $3, $0
- db "ノー@@@", $20, $4, $0
- db "はあー@@", $2a, $4, $0
- db "はい@@@", $30, $4, $0
- db "はっはっは", $48, $4, $0
- db "ひいー@@", $56, $4, $0
- db "ひゃあ@@", $6a, $4, $0
- db "ふっふっふ", $7c, $4, $0
- db "ふにゃ@@", $7e, $4, $0
- db "ププ@@@", $80, $4, $0
- db "ふふん@@", $82, $4, $0
- db "ふん@@@", $88, $4, $0
- db "へっへっへ", $8e, $4, $0
- db "へへー@@", $90, $4, $0
- db "ほーほほほ", $9c, $4, $0
- db "ほら@@@", $b6, $4, $0
- db "まあ@@@", $c0, $4, $0
- db "むきー!!", $10, $5, $0
- db "むふー@@", $18, $5, $0
- db "むふふ@@", $1a, $5, $0
- db "むむ@@@", $1c, $5, $0
- db "よーし@@", $6a, $5, $0
- db "よし!@@", $72, $5, $0
- db "ラララ@@", $98, $5, $0
- db "わーい@@", $ac, $5, $0
- db "わーん!!", $b0, $5, $0
- db "ワォ@@@", $b2, $5, $0
- db "わっ!!@", $ce, $5, $0
- db "わははは!", $d0, $5, $0
-
-Unknown_11e2d8: ; 11e2d8
- db "あのね@@", $50, $0, $0
- db "あんまり@", $6e, $0, $0
- db "いじわる@", $8e, $0, $0
- db "うそ@@@", $b6, $0, $0
- db "うむ@@@", $c4, $0, $0
- db "おーい@@", $e4, $0, $0
- db "おすすめ@", $6, $1, $0
- db "おばかさん", $1e, $1, $0
- db "かなり@@", $6e, $1, $0
- db "から@@@", $7a, $1, $0
- db "きぶん@@", $98, $1, $0
- db "けど@@@", $d6, $1, $0
- db "こそ@@@", $ea, $1, $0
- db "こと@@@", $ee, $1, $0
- db "さあ@@@", $12, $2, $0
- db "さっぱり@", $1e, $2, $0
- db "さて@@@", $20, $2, $0
- db "じゅうぶん", $72, $2, $0
- db "すぐ@@@", $94, $2, $0
- db "すごく@@", $98, $2, $0
- db "すこしは@", $9a, $2, $0
- db "すっっごい", $a0, $2, $0
- db "ぜーんぜん", $b0, $2, $0
- db "ぜったい@", $b2, $2, $0
- db "それで@@", $ce, $2, $0
- db "だけ@@@", $f2, $2, $0
- db "だって@@", $fc, $2, $0
- db "たぶん@@", $6, $3, $0
- db "たら@@@", $14, $3, $0
- db "ちょー@@", $3a, $3, $0
- db "ちょっと@", $3c, $3, $0
- db "ったら@@", $4e, $3, $0
- db "って@@@", $50, $3, $0
- db "ていうか@", $62, $3, $0
- db "でも@@@", $88, $3, $0
- db "どうしても", $9c, $3, $0
- db "とうぜん@", $a0, $3, $0
- db "どうぞ@@", $a2, $3, $0
- db "とりあえず", $be, $3, $0
- db "なあ@@@", $cc, $3, $0
- db "なんて@@", $f4, $3, $0
- db "なんでも@", $fc, $3, $0
- db "なんとか@", $fe, $3, $0
- db "には@@@", $8, $4, $0
- db "バッチり@", $46, $4, $0
- db "ばりばり@", $52, $4, $0
- db "ほど@@@", $b0, $4, $0
- db "ほんと@@", $be, $4, $0
- db "まさに@@", $d0, $4, $0
- db "マジ@@@", $d2, $4, $0
- db "マジで@@", $d4, $4, $0
- db "まったく@", $e4, $4, $0
- db "まで@@@", $e6, $4, $0
- db "まるで@@", $ec, $4, $0
- db "ムード@@", $e, $5, $0
- db "むしろ@@", $14, $5, $0
- db "めちゃ@@", $24, $5, $0
- db "めっぽう@", $28, $5, $0
- db "もう@@@", $2c, $5, $0
- db "モード@@", $2e, $5, $0
- db "もっと@@", $36, $5, $0
- db "もはや@@", $38, $5, $0
- db "やっと@@", $4a, $5, $0
- db "やっぱり@", $4c, $5, $0
- db "より@@@", $7c, $5, $0
- db "れば@@@", $a4, $5, $0
-
-Unknown_11e4e8: ; 11e4e8
- db "あいたい@", $1a, $0, $0
- db "あそびたい", $32, $0, $0
- db "いきたい@", $7c, $0, $0
- db "うかれて@", $b4, $0, $0
- db "うれしい@", $c6, $0, $0
- db "うれしさ@", $c8, $0, $0
- db "エキサイト", $d8, $0, $0
- db "えらい@@", $de, $0, $0
- db "おかしい@", $ec, $0, $0
- db "ォッケー@", $8, $1, $0
- db "かえりたい", $48, $1, $0
- db "がっくし@", $5a, $1, $0
- db "かなしい@", $6c, $1, $0
- db "がんばって", $80, $1, $0
- db "きがしない", $86, $1, $0
- db "きがする@", $88, $1, $0
- db "ききたい@", $8a, $1, $0
- db "きになる@", $90, $1, $0
- db "きのせい@", $96, $1, $0
- db "きらい@@", $b4, $1, $0
- db "くやしい@", $be, $1, $0
- db "くやしさ@", $c0, $1, $0
- db "さみしい@", $24, $2, $0
- db "ざんねん@", $32, $2, $0
- db "しあわせ@", $36, $2, $0
- db "したい@@", $44, $2, $0
- db "したくない", $46, $2, $0
- db "しまった@", $64, $2, $0
- db "しょんぼり", $82, $2, $0
- db "すき@@@", $92, $2, $0
- db "だいきらい", $da, $2, $0
- db "たいくつ@", $dc, $2, $0
- db "だいじ@@", $de, $2, $0
- db "だいすき@", $e4, $2, $0
- db "たいへん@", $ea, $2, $0
- db "たのしい@", $0, $3, $0
- db "たのしすぎ", $2, $3, $0
- db "たべたい@", $8, $3, $0
- db "ダメダメ@", $e, $3, $0
- db "たりない@", $16, $3, $0
- db "ちくしょー", $34, $3, $0
- db "どうしよう", $9e, $3, $0
- db "ドキドキ@", $ac, $3, $0
- db "ナイス@@", $d0, $3, $0
- db "のみたい@", $26, $4, $0
- db "びっくり@", $60, $4, $0
- db "ふあん@@", $74, $4, $0
- db "ふらふら@", $86, $4, $0
- db "ほしい@@", $ae, $4, $0
- db "ボロボロ@", $b8, $4, $0
- db "まだまだ@", $e0, $4, $0
- db "まてない@", $e8, $4, $0
- db "まんぞく@", $f0, $4, $0
- db "みたい@@", $f8, $4, $0
- db "めずらしい", $22, $5, $0
- db "メラメラ@", $2a, $5, $0
- db "やだ@@@", $46, $5, $0
- db "やったー@", $48, $5, $0
- db "やばい@@", $50, $5, $0
- db "やばすぎる", $52, $5, $0
- db "やられた@", $54, $5, $0
- db "やられて@", $56, $5, $0
- db "よかった@", $6e, $5, $0
- db "ラブラブ@", $96, $5, $0
- db "ロマン@@", $a8, $5, $0
- db "ろんがい@", $aa, $5, $0
- db "わから@@", $b4, $5, $0
- db "わかり@@", $b6, $5, $0
- db "わくわく@", $ba, $5, $0
-
-Unknown_11e710: ; 11e710
- db "あつい@@", $38, $0, $0
- db "あった@@", $3a, $0, $0
- db "あり@@@", $56, $0, $0
- db "ある@@@", $5e, $0, $0
- db "あわてて@", $6a, $0, $0
- db "いい@@@", $70, $0, $0
- db "いか@@@", $76, $0, $0
- db "イカス@@", $78, $0, $0
- db "いきおい@", $7a, $0, $0
- db "いける@@", $8a, $0, $0
- db "いじょう@", $8c, $0, $0
- db "いそがしい", $90, $0, $0
- db "いっしょに", $9a, $0, $0
- db "いっぱい@", $9c, $0, $0
- db "いない@@", $a0, $0, $0
- db "いや@@@", $a4, $0, $0
- db "いる@@@", $a8, $0, $0
- db "うまい@@", $c0, $0, $0
- db "うまく@@", $c2, $0, $0
- db "おおきい@", $e6, $0, $0
- db "おくれ@@", $f2, $0, $0
- db "おしい@@", $fa, $0, $0
- db "おもしろい", $2c, $1, $0
- db "おもしろく", $2e, $1, $0
- db "かっこいい", $5c, $1, $0
- db "かわいい@", $7e, $1, $0
- db "かんぺき@", $82, $1, $0
- db "けっこう@", $d0, $1, $0
- db "げんき@@", $d8, $1, $0
- db "こわい@@", $6, $2, $0
- db "さいこう@", $14, $2, $0
- db "さむい@@", $26, $2, $0
- db "さわやか@", $2c, $2, $0
- db "しかたない", $38, $2, $0
- db "すごい@@", $96, $2, $0
- db "すごすぎ@", $9c, $2, $0
- db "すてき@@", $a4, $2, $0
- db "たいした@", $e0, $2, $0
- db "だいじょぶ", $e2, $2, $0
- db "たかい@@", $ec, $2, $0
- db "ただしい@", $f8, $2, $0
- db "だめ@@@", $c, $3, $0
- db "ちいさい@", $2c, $3, $0
- db "ちがう@@", $30, $3, $0
- db "つかれ@@", $48, $3, $0
- db "とくい@@", $b0, $3, $0
- db "とまらない", $b6, $3, $0
- db "ない@@@", $ce, $3, $0
- db "なかった@", $d2, $3, $0
- db "なし@@@", $d8, $3, $0
- db "なって@@", $dc, $3, $0
- db "はやい@@", $50, $4, $0
- db "ひかる@@", $5a, $4, $0
- db "ひくい@@", $5c, $4, $0
- db "ひどい@@", $64, $4, $0
- db "ひとりで@", $66, $4, $0
- db "ひま@@@", $68, $4, $0
- db "ふそく@@", $76, $4, $0
- db "へた@@@", $8c, $4, $0
- db "まちがって", $e2, $4, $0
- db "やさしい@", $42, $5, $0
- db "よく@@@", $70, $5, $0
- db "よわって@", $86, $5, $0
- db "らく@@@", $8c, $5, $0
- db "らしい@@", $90, $5, $0
- db "わるい@@", $d4, $5, $0
-
-Unknown_11e920: ; 11e920
- db "アルバイト", $64, $0, $0
- db "うち@@@", $ba, $0, $0
- db "おかね@@", $ee, $0, $0
- db "おこづかい", $f4, $0, $0
- db "おふろ@@", $24, $1, $0
- db "がっこう@", $5e, $1, $0
- db "きねん@@", $92, $1, $0
- db "グループ@", $c6, $1, $0
- db "ゲット@@", $d2, $1, $0
- db "こうかん@", $de, $1, $0
- db "しごと@@", $40, $2, $0
- db "しゅぎょう", $74, $2, $0
- db "じゅぎょう", $76, $2, $0
- db "じゅく@@", $78, $2, $0
- db "しんか@@", $88, $2, $0
- db "ずかん@@", $90, $2, $0
- db "せいかつ@", $ae, $2, $0
- db "せんせい@", $b8, $2, $0
- db "センター@", $ba, $2, $0
- db "タワー@@", $28, $3, $0
- db "つうしん@", $40, $3, $0
- db "テスト@@", $7e, $3, $0
- db "テレビ@@", $8c, $3, $0
- db "でんわ@@", $96, $3, $0
- db "どうぐ@@", $9a, $3, $0
- db "トレード@", $c4, $3, $0
- db "なまえ@@", $e8, $3, $0
- db "ニュース@", $a, $4, $0
- db "にんき@@", $c, $4, $0
- db "パーティー", $2e, $4, $0
- db "べんきょう", $92, $4, $0
- db "マシン@@", $d6, $4, $0
- db "めいし@@", $1e, $5, $0
- db "メッセージ", $26, $5, $0
- db "もようがえ", $3a, $5, $0
- db "ゆめ@@@", $5a, $5, $0
- db "ようちえん", $66, $5, $0
- db "ラジォ@@", $92, $5, $0
- db "ワールド@", $ae, $5, $0
-
-Unknown_11ea58: ; 11ea58
- db "アイドル@", $1e, $0, $0
- db "アニメ@@", $4c, $0, $0
- db "うた@@@", $b8, $0, $0
- db "えいが@@", $d0, $0, $0
- db "おかし@@", $ea, $0, $0
- db "おしゃべり", $4, $1, $0
- db "おままごと", $28, $1, $0
- db "おもちゃ@", $30, $1, $0
- db "おんがく@", $38, $1, $0
- db "カード@@", $3e, $1, $0
- db "かいもの@", $46, $1, $0
- db "グルメ@@", $c8, $1, $0
- db "ゲーム@@", $cc, $1, $0
- db "ざっし@@", $1c, $2, $0
- db "さんぽ@@", $34, $2, $0
- db "じてんしゃ", $50, $2, $0
- db "しゅみ@@", $7a, $2, $0
- db "スポーツ@", $a8, $2, $0
- db "ダイエット", $d8, $2, $0
- db "たからもの", $f0, $2, $0
- db "たび@@@", $4, $3, $0
- db "ダンス@@", $2a, $3, $0
- db "つり@@@", $60, $3, $0
- db "デート@@", $6a, $3, $0
- db "でんしゃ@", $92, $3, $0
- db "ぬいぐるみ", $e, $4, $0
- db "パソコン@", $3e, $4, $0
- db "はな@@@", $4c, $4, $0
- db "ヒーロー@", $58, $4, $0
- db "ひるね@@", $6e, $4, $0
- db "ヒロイン@", $70, $4, $0
- db "ぼうけん@", $96, $4, $0
- db "ボード@@", $9a, $4, $0
- db "ボール@@", $9e, $4, $0
- db "ほん@@@", $ba, $4, $0
- db "マンガ@@", $ee, $4, $0
- db "やくそく@", $40, $5, $0
- db "やすみ@@", $44, $5, $0
- db "よてい@@", $74, $5, $0
-
-Unknown_11eb90: ; 11eb90
- db "あう@@@", $20, $0, $0
- db "あきらめ@", $24, $0, $0
- db "あげる@@", $28, $0, $0
- db "あせる@@", $2e, $0, $0
- db "あそび@@", $30, $0, $0
- db "あそぶ@@", $34, $0, $0
- db "あつめ@@", $3e, $0, $0
- db "あるき@@", $60, $0, $0
- db "あるく@@", $62, $0, $0
- db "いく@@@", $7e, $0, $0
- db "いけ@@@", $86, $0, $0
- db "おき@@@", $f0, $0, $0
- db "おこり@@", $f6, $0, $0
- db "おこる@@", $f8, $0, $0
- db "おしえ@@", $fe, $0, $0
- db "おしえて@", $0, $1, $0
- db "おねがい@", $1a, $1, $0
- db "おぼえ@@", $26, $1, $0
- db "かえる@@", $4a, $1, $0
- db "がまん@@", $74, $1, $0
- db "きく@@@", $8c, $1, $0
- db "きたえ@@", $8e, $1, $0
- db "きめ@@@", $a6, $1, $0
- db "くる@@@", $c4, $1, $0
- db "さがし@@", $18, $2, $0
- db "さわぎ@@", $2a, $2, $0
- db "した@@@", $42, $2, $0
- db "しって@@", $4a, $2, $0
- db "して@@@", $4e, $2, $0
- db "しない@@", $52, $2, $0
- db "しまう@@", $60, $2, $0
- db "じまん@@", $66, $2, $0
- db "しらない@", $84, $2, $0
- db "しる@@@", $86, $2, $0
- db "しんじて@", $8a, $2, $0
- db "する@@@", $aa, $2, $0
- db "たべる@@", $a, $3, $0
- db "つかう@@", $42, $3, $0
- db "つかえ@@", $44, $3, $0
- db "つかって@", $46, $3, $0
- db "できない@", $70, $3, $0
- db "できる@@", $72, $3, $0
- db "でない@@", $84, $3, $0
- db "でる@@@", $8a, $3, $0
- db "なげる@@", $d6, $3, $0
- db "なやみ@@", $ea, $3, $0
- db "ねられ@@", $18, $4, $0
- db "ねる@@@", $1a, $4, $0
- db "のがし@@", $24, $4, $0
- db "のむ@@@", $28, $4, $0
- db "はしり@@", $3a, $4, $0
- db "はしる@@", $3c, $4, $0
- db "はたらき@", $40, $4, $0
- db "はたらく@", $42, $4, $0
- db "はまって@", $4e, $4, $0
- db "ぶつけ@@", $7a, $4, $0
- db "ほめ@@@", $b4, $4, $0
- db "みせて@@", $f6, $4, $0
- db "みて@@@", $fc, $4, $0
- db "みる@@@", $2, $5, $0
- db "めざす@@", $20, $5, $0
- db "もって@@", $34, $5, $0
- db "ゆずる@@", $58, $5, $0
- db "ゆるす@@", $5c, $5, $0
- db "ゆるせ@@", $5e, $5, $0
- db "られない@", $9a, $5, $0
- db "られる@@", $9c, $5, $0
- db "わかる@@", $b8, $5, $0
- db "わすれ@@", $c0, $5, $0
-
-Unknown_11edb8: ; 11edb8
- db "あき@@@", $22, $0, $0
- db "あさ@@@", $2a, $0, $0
- db "あした@@", $2c, $0, $0
- db "いちにち@", $94, $0, $0
- db "いつか@@", $98, $0, $0
- db "いつも@@", $9e, $0, $0
- db "いま@@@", $a2, $0, $0
- db "えいえん@", $ce, $0, $0
- db "おととい@", $12, $1, $0
- db "おわり@@", $36, $1, $0
- db "かようび@", $78, $1, $0
- db "きのう@@", $94, $1, $0
- db "きょう@@", $b0, $1, $0
- db "きんようび", $b8, $1, $0
- db "げつようび", $d4, $1, $0
- db "このあと@", $f4, $1, $0
- db "このまえ@", $f6, $1, $0
- db "こんど@@", $c, $2, $0
- db "じかん@@", $3c, $2, $0
- db "じゅうねん", $70, $2, $0
- db "すいようび", $8e, $2, $0
- db "スタート@", $9e, $2, $0
- db "ずっと@@", $a2, $2, $0
- db "ストップ@", $a6, $2, $0
- db "そのうち@", $c4, $2, $0
- db "ついに@@", $3e, $3, $0
- db "つぎ@@@", $4a, $3, $0
- db "どようび@", $ba, $3, $0
- db "なつ@@@", $da, $3, $0
- db "にちようび", $6, $4, $0
- db "はじめ@@", $38, $4, $0
- db "はる@@@", $54, $4, $0
- db "ひる@@@", $6c, $4, $0
- db "ふゆ@@@", $84, $4, $0
- db "まいにち@", $c6, $4, $0
- db "もくようび", $30, $5, $0
- db "よなか@@", $76, $5, $0
- db "よる@@@", $7e, $5, $0
- db "らいしゅう", $88, $5, $0
-
-Unknown_11eef0: ; 11eef0
- db "いたします", $92, $0, $0
- db "おります@", $32, $1, $0
- db "か!?@@", $3c, $1, $0
- db "かい?@@", $44, $1, $0
- db "かしら?@", $50, $1, $0
- db "かな?@@", $6a, $1, $0
- db "かも@@@", $76, $1, $0
- db "くれ@@@", $ca, $1, $0
- db "ございます", $e8, $1, $0
- db "しがち@@", $3a, $2, $0
- db "します@@", $62, $2, $0
- db "じゃ@@@", $6a, $2, $0
- db "じゃん@@", $6e, $2, $0
- db "しよう@@", $7c, $2, $0
- db "ぜ!@@@", $ac, $2, $0
- db "ぞ!@@@", $bc, $2, $0
- db "た@@@@", $d4, $2, $0
- db "だ@@@@", $d6, $2, $0
- db "だからね@", $ee, $2, $0
- db "だぜ@@@", $f4, $2, $0
- db "だった@@", $fa, $2, $0
- db "だね@@@", $fe, $2, $0
- db "だよ@@@", $10, $3, $0
- db "だよねー!", $12, $3, $0
- db "だわ@@@", $26, $3, $0
- db "ッス@@@", $4c, $3, $0
- db "ってかんじ", $52, $3, $0
- db "っぱなし@", $54, $3, $0
- db "つもり@@", $56, $3, $0
- db "ていない@", $64, $3, $0
- db "ている@@", $66, $3, $0
- db "でーす!@", $68, $3, $0
- db "でした@@", $74, $3, $0
- db "でしょ?@", $76, $3, $0
- db "でしょー!", $78, $3, $0
- db "です@@@", $7a, $3, $0
- db "ですか?@", $7c, $3, $0
- db "ですよ@@", $80, $3, $0
- db "ですわ@@", $82, $3, $0
- db "どうなの?", $a4, $3, $0
- db "どうよ?@", $a8, $3, $0
- db "とかいって", $aa, $3, $0
- db "なの@@@", $e0, $3, $0
- db "なのか@@", $e2, $3, $0
- db "なのだ@@", $e4, $3, $0
- db "なのよ@@", $e6, $3, $0
- db "なんだね@", $f2, $3, $0
- db "なんです@", $f8, $3, $0
- db "なんてね@", $fa, $3, $0
- db "ね@@@@", $12, $4, $0
- db "ねー@@@", $14, $4, $0
- db "の@@@@", $1c, $4, $0
- db "の?@@@", $1e, $4, $0
- db "ばっかり@", $44, $4, $0
- db "まーす!@", $c2, $4, $0
- db "ます@@@", $d8, $4, $0
- db "ますわ@@", $da, $4, $0
- db "ません@@", $dc, $4, $0
- db "みたいな@", $fa, $4, $0
- db "よ!@@@", $60, $5, $0
- db "よー@@@", $68, $5, $0
- db "よーん@@", $6c, $5, $0
- db "よね@@@", $78, $5, $0
- db "るよ@@@", $a2, $5, $0
- db "わけ@@@", $bc, $5, $0
- db "わよ!@@", $d2, $5, $0
-
-Unknown_11f100: ; 11f100
- db "ああ@@@", $12, $0, $0
- db "あっち@@", $3c, $0, $0
- db "あの@@@", $4e, $0, $0
- db "ありゃ@@", $5c, $0, $0
- db "あれ@@@", $66, $0, $0
- db "あれは@@", $68, $0, $0
- db "あんな@@", $6c, $0, $0
- db "こう@@@", $dc, $1, $0
- db "こっち@@", $ec, $1, $0
- db "この@@@", $f2, $1, $0
- db "こりゃ@@", $fe, $1, $0
- db "これ@@@", $0, $2, $0
- db "これだ!@", $2, $2, $0
- db "これは@@", $4, $2, $0
- db "こんな@@", $e, $2, $0
- db "そう@@@", $be, $2, $0
- db "そっち@@", $c0, $2, $0
- db "その@@@", $c2, $2, $0
- db "そりゃ@@", $c6, $2, $0
- db "それ@@@", $c8, $2, $0
- db "それだ!@", $cc, $2, $0
- db "それは@@", $d0, $2, $0
- db "そんな@@", $d2, $2, $0
- db "どう@@@", $98, $3, $0
- db "どっち@@", $b2, $3, $0
- db "どの@@@", $b4, $3, $0
- db "どりゃ@@", $c0, $3, $0
- db "どれ@@@", $c2, $3, $0
- db "どれを@@", $c8, $3, $0
- db "どんな@@", $ca, $3, $0
- db "なに@@@", $de, $3, $0
- db "なんか@@", $ec, $3, $0
- db "なんだ@@", $f0, $3, $0
- db "なんで@@", $f6, $3, $0
- db "なんなんだ", $0, $4, $0
- db "なんの@@", $2, $4, $0
-; 11f220
-
-Unknown_11f220:
- db $12, $01, $24, $02
- db $45, $05, $45, $05
- db $42, $05, $42, $05
- db $45, $05, $42, $05
- db $27, $03, $27, $03
- db $45, $05, $27, $03
- db $42, $05, $24, $02
-
-Unknown_11f23c:
- db $12, $00, $2f, $00
- db $70, $00, $1e, $00
- db $ac, $00, $11, $00
- db $ce, $00, $09, $00
- db $e0, $00, $2e, $00
- db $3c, $01, $24, $00
- db $84, $01, $1b, $00
- db $ba, $01, $09, $00
- db $cc, $01, $07, $00
- db $da, $01, $1c, $00
- db $12, $02, $12, $00
- db $36, $02, $2b, $00
- db $8c, $02, $10, $00
- db $ac, $02, $08, $00
- db $bc, $02, $0c, $00
- db $d4, $02, $2c, $00
- db $2c, $03, $09, $00
- db $3e, $03, $12, $00
- db $62, $03, $1b, $00
- db $98, $03, $1a, $00
- db $cc, $03, $1c, $00
- db $04, $04, $05, $00
- db $0e, $04, $02, $00
- db $12, $04, $05, $00
- db $1c, $04, $07, $00
- db $2a, $04, $16, $00
- db $56, $04, $0e, $00
- db $72, $04, $0c, $00
- db $8a, $04, $05, $00
- db $94, $04, $16, $00
- db $c0, $04, $19, $00
- db $f2, $04, $0e, $00
- db $0e, $05, $08, $00
- db $1e, $05, $07, $00
- db $2c, $05, $09, $00
- db $3e, $05, $0d, $00
- db $58, $05, $04, $00
- db $60, $05, $14, $00
- db $88, $05, $0b, $00
- db $9e, $05, $01, $00
- db $a0, $05, $02, $00
- db $a4, $05, $02, $00
- db $a8, $05, $02, $00
- db $ac, $05, $15, $00
- db $00, $00, $09, $00
-
-BTTrainerClassGenders:
+BTTrainerClassGenders: ; 11f2f0
db MALE ; FALKNER
db FEMALE ; WHITNEY
db FEMALE ; BUGSY
diff --git a/misc/battle_tower_5c.asm b/misc/battle_tower_5c.asm
index bfbffc828..1c9c7436b 100755
--- a/misc/battle_tower_5c.asm
+++ b/misc/battle_tower_5c.asm
@@ -1,3 +1,183 @@
+Function1700b0: ; 1700b0
+ call Function17021e
+ callba Function118121
+ ret
+; 1700ba
+
+Function1700ba: ; 1700ba
+ call Function17021e
+ callba Function11811a
+ ret
+; 1700c4
+
+Function1700c4: ; 1700c4
+ ld a, [rSVBK]
+ push af
+ ld a, $3
+ ld [rSVBK], a
+
+ call Function17042c
+ ld a, $5
+ call GetSRAMBank
+ ld a, $1
+ ld [$be45], a
+ xor a
+ ld [$be46], a
+ ld hl, $dffc
+ ld de, $aa41
+ ld bc, $0004
+ call CopyBytes
+ ld hl, $d202
+ ld de, $aa8e
+ ld bc, $0594
+ call CopyBytes
+ ld hl, $aa5d
+ ld a, [hl]
+ inc [hl]
+ inc hl
+ sla a
+ sla a
+ ld e, a
+ ld d, $0
+ add hl, de
+ ld e, l
+ ld d, h
+ ld hl, $dffc
+ ld bc, $0004
+ call CopyBytes
+ call CloseSRAM
+ pop af
+ ld [rSVBK], a
+ ret
+; 170114
+
+Function170114: ; 170114
+ call Function17021e
+ call Function170121
+ callba Function11805f
+ ret
+; 170121
+
+Function170121: ; 170121
+ ld a, $5
+ call GetSRAMBank
+ ld hl, $a948
+ ld de, $c608
+ ld bc, $00f6
+ call CopyBytes
+ call CloseSRAM
+ call Function170c8b
+ ret
+; 170139
+
+Function170139: ; 170139
+ ld a, $5
+ call GetSRAMBank
+ ld de, $aa41
+ ld h, $0
+ ld l, h
+ ld bc, $03e8
+ call Function17020c
+ ld bc, $0064
+ call Function17020c
+ ld bc, $000a
+ call Function17020c
+ ld a, [de]
+ ld c, a
+ ld b, $0
+ add hl, bc
+ call CloseSRAM
+ ld a, h
+ ld [$c608], a
+ ld a, l
+ ld [$c608 + 1], a
+ ld hl, $c628
+ ld a, [PlayerID]
+ ld [hli], a
+ ld a, [PlayerID + 1]
+ ld [hli], a
+ ld a, [wSecretID]
+ ld [hli], a
+ ld a, [wSecretID + 1]
+ ld [hli], a
+ ld e, l
+ ld d, h
+ ld hl, PlayerName
+ ld bc, $0005 ; Japanese name length
+ call CopyBytes
+ ld bc, PlayerID
+ ld de, PlayerGender
+ callba Function4e929
+ ld de, $c62c + 5
+ ld a, c
+ ld [de], a
+ inc de
+ ld a, $df
+ ld [wcd49], a
+ ld a, $dc
+ ld [wcd4a], a
+ ld a, $41
+ ld [wcd4b], a
+ ld a, $de
+ ld [wcd4c], a
+ ld a, $3
+.asm_1701ac
+ push af
+ ld a, [wcd49]
+ ld l, a
+ ld a, [wcd4a]
+ ld h, a
+ ld bc, $0030
+ call CopyBytes
+ ld a, l
+ ld [wcd49], a
+ ld a, h
+ ld [wcd4a], a
+ ld a, [wcd4b]
+ ld l, a
+ ld a, [wcd4c]
+ ld h, a
+ ld bc, $0006
+ call CopyBytes
+ ld a, l
+ ld [wcd4b], a
+ ld a, h
+ ld [wcd4c], a
+ pop af
+ dec a
+ jr nz, .asm_1701ac
+ ld a, $4
+ call GetSRAMBank
+ ld hl, $a013
+ ld bc, $0024
+ call CopyBytes
+ call CloseSRAM
+ ld a, $5
+ call GetSRAMBank
+ ld hl, $a894
+ ld bc, $0006
+ call CopyBytes
+ ld hl, $c608
+ ld de, $a948
+ ld bc, $00f6
+ call CopyBytes
+ call CloseSRAM
+ ret
+; 17020c
+
+Function17020c: ; 17020c
+ ld a, [de]
+ inc de
+ and a
+ ret z
+
+.loop
+ add hl, bc
+ dec a
+ jr nz, .loop
+ ret
+; 170215
+
BattleTowerBattle: ; 170215
xor a
ld [wcf63], a
@@ -64,7 +244,9 @@ RunBattleTowerTrainer: ; 17024d
callba HealParty
call ReadBTTrainerParty
call Clears5_a89a
+
predef StartBattle
+
callba LoadPokemonData
callba HealParty
ld a, [wBattleResult]
@@ -325,20 +507,23 @@ BT_ChrisName: ; 170426
; 17042c
Function17042c: ; 17042c
- ld hl, BT_TrainerTextIndex + $be
+ ld hl, w3_d202TrainerData
ld a, 7
.loop
push af
push hl
- ld c, 18
+ ld c, BATTLETOWER_TRAINERDATALENGTH / 2
.loop2
+ ; First byte is a comparison value.
ld a, [hli]
ld b, a
+ ; Second byte is a lookup index.
ld a, [hli]
and a
- jr z, .skip
+ jr z, .empty
cp $f
- jr nc, .exit_inner_loop
+ jr nc, .copy_data
+
push hl
ld hl, Unknown_170470
dec a
@@ -347,31 +532,36 @@ Function17042c: ; 17042c
add hl, de
ld a, [hl]
pop hl
+
+ ; If Unknown_170470[a-1] <= b, overwrite the current trainer's data
+ ; with Unknown17047e, and exit the inner loop.
cp b
- jr c, .exit_inner_loop
- jr z, .exit_inner_loop
- jr .asm_170456
+ jr c, .copy_data
+ jr z, .copy_data
+ jr .next_iteration
-.skip
+.empty
+ ; If a == 0 and b >= $fc, overwrite the current trainer's data with
+ ; Unknown17047e, and exit the inner loop.
ld a, b
cp $fc
- jr nc, .exit_inner_loop
+ jr nc, .copy_data
-.asm_170456
+.next_iteration
dec c
jr nz, .loop2
- jr .dont_copy
+ jr .next_trainer
-.exit_inner_loop
+.copy_data
pop de
push de
ld hl, Unknown_17047e
ld bc, BATTLETOWER_TRAINERDATALENGTH
call CopyBytes
-.dont_copy
+.next_trainer
pop hl
- ld de, $00e0
+ ld de, BATTLE_TOWER_STRUCT_LENGTH
add hl, de
pop af
dec a
@@ -380,18 +570,41 @@ Function17042c: ; 17042c
; 170470
Unknown_170470:
- db $12, $24, $45, $45, $42, $42, $45, $42, $27, $27, $45, $27, $42, $24
+ db $12
+ db $24
+ db $45
+ db $45
+ db $42
+ db $42
+ db $45
+ db $42
+ db $27
+ db $27
+ db $45
+ db $27
+ db $42
+ db $24
Unknown_17047e:
- db $03, $04, $05, $08
- db $03, $05, $0e, $06
- db $03, $02, $00, $00
- db $39, $07, $07, $04
- db $00, $05, $04, $07
- db $01, $05, $00, $00
- db $0f, $05, $14, $07
- db $05, $05, $11, $0c
- db $0c, $06, $06, $04
+; see data/battle_tower_2.asm
+ db $03, 4
+ db $05, 8
+ db $03, 5
+ db $0e, 6
+ db $03, 2
+ db $00, 0
+ db $39, 7
+ db $07, 4
+ db $00, 5
+ db $04, 7
+ db $01, 5
+ db $00, 0
+ db $0f, 5
+ db $14, 7
+ db $05, 5
+ db $11, 12
+ db $0c, 6
+ db $06, 4
CopyBTTrainer_FromBT_OT_TowBT_OTTemp: ; 1704a2
@@ -409,13 +622,1018 @@ CopyBTTrainer_FromBT_OT_TowBT_OTTemp: ; 1704a2
pop af
ld [rSVBK], a
- ld a, BANK(s1_be45)
+ ld a, BANK(sBattleTowerChallengeState)
call GetSRAMBank
ld a, $2
- ld [s1_be45], a
+ ld [sBattleTowerChallengeState], a
ld hl, sNrOfBeatenBattleTowerTrainers
inc [hl]
call CloseSRAM
SkipBattleTowerTrainer: ; 1704c9
ret
; 1704ca
+Function1704ca: ; 1704ca
+ ld a, [$be46]
+ cp $7
+ jr c, .asm_1704d3
+ ld a, $6
+
+.asm_1704d3
+ ld hl, $afce
+ ld de, -$e0
+.asm_1704d9
+ and a
+ jr z, .asm_1704e0
+ add hl, de
+ dec a
+ jr .asm_1704d9
+
+.asm_1704e0
+ ret
+; 1704e1
+
+Function1704e1: ; 1704e1
+ call SpeechTextBox
+ call FadeToMenu
+ call Function17021e
+ call Function1704f1
+ call ReturnToCallingMenu
+ ret
+; 1704f1
+
+Function1704f1: ; 1704f1
+ call ClearBGPalettes
+ call ClearSprites
+ call ClearScreen
+.asm_1704fa
+ call JoyTextDelay
+ ld a, [wJumptableIndex]
+ bit 7, a
+ jr nz, .asm_17050f
+ call Function170510
+ callba ReloadMapPart
+ jr .asm_1704fa
+
+.asm_17050f
+ ret
+; 170510
+
+Function170510: ; 170510
+ ld a, [wJumptableIndex]
+ ld e, a
+ ld d, 0
+ ld hl, Jumptable_17051f
+rept 2
+ add hl, de
+endr
+ ld a, [hli]
+ ld h, [hl]
+ ld l, a
+ jp [hl]
+; 17051f
+
+Jumptable_17051f: ; 17051f
+ dw Function170525
+ dw Function170571
+ dw Function170577
+; 170525
+
+Function170525: ; 170525
+ ld a, $5
+ call GetSRAMBank
+
+ ld hl, $a89c
+ ld de, StringBuffer3
+ ld bc, $0016
+ call CopyBytes
+
+ ld hl, $a8b2
+ ld de, $c608
+ ld bc, $0096
+ call CopyBytes
+
+ call CloseSRAM
+ hlcoord 1, 1
+ ld de, StringBuffer3
+ call PlaceString
+ hlcoord 1, 3
+ ld de, String_170676
+ call PlaceString
+ hlcoord 4, 3
+ ld de, StringBuffer4
+ call PlaceString
+ hlcoord 8, 3
+ ld de, String_17067a
+ call PlaceString
+ call Function1705b7
+ call Function1705f0
+ jr Function1705b2
+
+
+Function170571:
+ call SetPalettes
+ call Function1705b2
+
+
+Function170577:
+ ld hl, hJoyPressed
+ ld a, [hl]
+ and $1
+ jr nz, .asm_1705ac
+ ld a, [hl]
+ and $2
+ jr nz, .asm_1705ac
+ ld a, [hl]
+ and $40
+ jr nz, .asm_17058f
+ ld a, [hl]
+ and $80
+ jr nz, .asm_17059d
+ ret
+
+.asm_17058f
+ ld a, [wcf64]
+ and a
+ ret z
+ sub $f
+ ld [wcf64], a
+ call Function1705f0
+ ret
+
+.asm_17059d
+ ld a, [wcf64]
+ cp $3c
+ ret z
+ add $f
+ ld [wcf64], a
+ call Function1705f0
+ ret
+
+.asm_1705ac
+ ld hl, wJumptableIndex
+ set 7, [hl]
+ ret
+
+Function1705b2:
+ ld hl, wJumptableIndex
+ inc [hl]
+ ret
+; 1705b7
+
+Function1705b7: ; 1705b7
+ hlcoord 0, 4
+ ld a, $79
+ ld [hli], a
+ ld c, $12
+.asm_1705bf
+ ld a, $7a
+ ld [hli], a
+ dec c
+ jr nz, .asm_1705bf
+ ld a, $7b
+ ld [hli], a
+ ld de, $0014
+ ld c, $c
+.asm_1705cd
+ ld a, $7c
+ ld [hl], a
+ add hl, de
+ dec c
+ jr nz, .asm_1705cd
+ ld a, $7d
+ ld [hli], a
+ ld c, $12
+.asm_1705d9
+ ld a, $7a
+ ld [hli], a
+ dec c
+ jr nz, .asm_1705d9
+ ld a, $7e
+ ld [hl], a
+ ld de, $ffec
+ add hl, de
+ ld c, $c
+.asm_1705e8
+ ld a, $7c
+ ld [hl], a
+ add hl, de
+ dec c
+ jr nz, .asm_1705e8
+ ret
+; 1705f0
+
+Function1705f0: ; 1705f0
+ call Function17064b
+ call Function17065d
+ ld a, $50
+ ld [wcd4e], a
+ ld hl, $c608
+ ld a, [wcf64]
+ ld c, a
+ xor a
+ ld b, a
+ add hl, bc
+ push hl
+ pop bc
+ hlcoord 1, 6
+ ld a, $6
+.asm_17060c
+ push af
+ push hl
+ ld a, $3
+.asm_170610
+ push af
+ ld de, wcd49
+ ld a, [bc]
+ and a
+ jr z, .asm_170625
+ ld a, $5
+.asm_17061a
+ push af
+ ld a, [bc]
+ ld [de], a
+ inc bc
+ inc de
+ pop af
+ dec a
+ jr nz, .asm_17061a
+ jr .asm_170631
+
+.asm_170625
+ ld a, $5
+.asm_170627
+ push af
+ ld a, $e3
+ ld [de], a
+ inc de
+ inc bc
+ pop af
+ dec a
+ jr nz, .asm_170627
+
+.asm_170631
+ ld de, wcd49
+ push bc
+ call PlaceString
+ ld de, $0006
+ add hl, de
+ pop bc
+ pop af
+ dec a
+ jr nz, .asm_170610
+ pop hl
+ ld de, $0028
+ add hl, de
+ pop af
+ dec a
+ jr nz, .asm_17060c
+ ret
+; 17064b
+
+Function17064b: ; 17064b
+ hlcoord 1, 5
+ xor a
+ ld b, $c
+.asm_170651
+ ld c, $12
+.asm_170653
+ ld [hli], a
+ dec c
+ jr nz, .asm_170653
+rept 2
+ inc hl
+endr
+ dec b
+ jr nz, .asm_170651
+ ret
+; 17065d
+
+Function17065d: ; 17065d
+ ld a, [wcf64]
+ and a
+ jr z, .asm_170669
+ hlcoord 18, 5
+ ld a, $61
+ ld [hl], a
+
+.asm_170669
+ ld a, [wcf64]
+ cp $3c
+ ret z
+ hlcoord 18, 16
+ ld a, $ee
+ ld [hl], a
+ ret
+; 170676
+
+String_170676: ; 170676
+ db "ルーム@"
+; 17067a
+
+String_17067a: ; 17067a
+ db "れきだいりーダーいちらん@"
+; 170687
+
+BattleTowerAction: ; 170687
+ ld a, [ScriptVar]
+ ld e, a
+ ld d, 0
+ ld hl, .jumptable
+rept 2
+ add hl, de
+endr
+ ld a, [hli]
+ ld h, [hl]
+ ld l, a
+ jp [hl]
+; 170696
+
+
+.jumptable: ; 170696 (5c:4696)
+ dw Function17075f ; 0x00
+ dw Function170788 ; 0x01
+ dw Function170778 ; 0x02
+ dw Function170799 ; 0x03
+ dw Function17079d ; 0x04
+ dw Function1707ac ; 0x05
+ dw Function1707f4 ; 0x06
+ dw Function170868 ; 0x07
+ dw Function170881 ; 0x08
+ dw Function17089a ; 0x09
+ dw Function1708b1 ; 0x0a
+ dw CheckMobileEventIndex ; 0x0b
+ dw Function1708c8 ; 0x0c
+ dw Function1708f0 ; 0x0d
+ dw Function17093c ; 0x0e
+ dw Function1709aa ; 0x0f
+ dw Function1709bb ; 0x10
+ dw Function170a9c ; 0x11
+ dw Function170aa0 ; 0x12
+ dw Function170aaf ; 0x13
+ dw Function170abe ; 0x14
+ dw Function170ad7 ; 0x15
+ dw Function170807 ; 0x16
+ dw Function17081d ; 0x17
+ dw Function170ae8 ; 0x18
+ dw Function170b16 ; 0x19
+ dw ResetBattleTowerTrainersSRAM ; 0x1a
+ dw Function1706ee ; 0x1b
+ dw Function17071b ; 0x1c
+ dw Function170729 ; 0x1d
+ dw Function17073e ; 0x1e
+ dw Function170737 ; 0x1f
+
+
+; Reset the save memory for BattleTower-Trainers (Counter and all 7 TrainerBytes)
+ResetBattleTowerTrainersSRAM: ; 1706d6 (5c:46d6) BattleTowerAction $1a
+ ld a, BANK(sBTTrainers)
+ call GetSRAMBank
+
+ ld a, $ff
+ ld hl, sBTTrainers
+ ld bc, BATTLETOWER_NROFTRAINERS
+ call ByteFill
+
+ xor a
+ ld [sNrOfBeatenBattleTowerTrainers], a
+
+ call CloseSRAM
+
+ ret
+
+Function1706ee: ; 1706ee (5c:46ee) BattleTowerAction $1b
+ ld a, BANK(sBattleTowerReward)
+ call GetSRAMBank
+
+ ld a, [sBattleTowerReward]
+ call CloseSRAM
+ ld [ScriptVar], a
+ ld hl, NumItems
+ ld a, [hli]
+ cp MAX_ITEMS
+ ret c
+ ld b, MAX_ITEMS
+ ld a, [ScriptVar]
+ ld c, a
+.loop
+ ld a, [hli]
+ cp c
+ jr nz, .next
+ ld a, [hl]
+ cp 95
+ ret c
+.next
+ inc hl
+ dec b
+ jr nz, .loop
+ ld a, POTION
+ ld [ScriptVar], a
+ ret
+
+Function17071b: ; 17071b (5c:471b) BattleTowerAction $1c
+ ld a, BANK(sBattleTowerChallengeState)
+ call GetSRAMBank
+ ld a, $3
+ ld [sBattleTowerChallengeState], a
+ call CloseSRAM
+ ret
+
+Function170729: ; 170729 (5c:4729) BattleTowerAction $1d
+ ld a, BANK(sBattleTowerChallengeState)
+ call GetSRAMBank
+ ld a, $4
+ ld [sBattleTowerChallengeState], a
+ call CloseSRAM
+ ret
+
+Function170737: ; 170737 (5c:4737) BattleTowerAction $1e
+ callba SaveOptions
+ ret
+
+Function17073e: ; 17073e (5c:473e) BattleTowerAction $1f
+; Generate a random stat boosting item.
+.loop
+ call Random
+ ld a, [hRandomAdd]
+ and $7
+ cp 6
+ jr c, .okay
+ sub 6
+.okay
+ add HP_UP
+ cp LUCKY_PUNCH
+ jr z, .loop
+ push af
+ ld a, BANK(sBattleTowerReward)
+ call GetSRAMBank
+ pop af
+ ld [sBattleTowerReward], a
+ call CloseSRAM
+ ret
+
+Function17075f: ; 17075f (5c:475f) BattleTowerAction $00
+ call Function17089a
+ ld a, [ScriptVar]
+ and a
+ ret z
+
+ ld a, BANK(sbe4f)
+ call GetSRAMBank
+ ld a, [sbe4f]
+ and $2
+ ld [ScriptVar], a
+ call CloseSRAM
+ ret
+
+Function170778: ; 170778 (5c:4778) BattleTowerAction $02
+ ld hl, sBattleTowerChallengeState
+ ld a, BANK(sBattleTowerChallengeState)
+ call GetSRAMBank
+ ld a, [hl]
+ ld [ScriptVar], a
+ call CloseSRAM
+ ret
+
+Function170788: ; 170788 (5c:4788) BattleTowerAction $01
+ ld a, BANK(sbe4f)
+ call GetSRAMBank
+ ld a, [sbe4f]
+ or $2
+ ld [sbe4f], a
+ call CloseSRAM
+ ret
+
+Function170799: ; 170799 (5c:4799) BattleTowerAction $03
+ ld c, $1
+ jr asm_17079f
+
+Function17079d: ; 17079d (5c:479d) BattleTowerAction $04
+ ld c, $0
+asm_17079f: ; 17079f (5c:479f)
+ ld a, BANK(sBattleTowerChallengeState)
+ call GetSRAMBank
+ ld a, c
+ ld [sBattleTowerChallengeState], a
+ call CloseSRAM
+ ret
+
+Function1707ac: ; 1707ac (5c:47ac) BattleTowerAction $05
+ ld a, $5
+ call GetSRAMBank
+ ld a, [$aa8c]
+ ld b, a
+ ld a, [$be46]
+ ld [ScriptVar], a
+ call CloseSRAM
+ and a
+ ret z
+ ld a, b
+ cp $2
+ jr nc, .asm_1707ef
+ push bc
+ call UpdateTime
+ pop bc
+ ld a, $5
+ call GetSRAMBank
+ ld a, [$aa8b]
+ call CloseSRAM
+ ld c, a
+ ld a, [CurDay]
+ sub c
+ jr c, .asm_1707e5
+ cp $8
+ jr nc, .asm_1707ef
+ ld a, b
+ and a
+ jr nz, .asm_1707ef
+ ret
+.asm_1707e5
+ ld hl, CurDay
+ ld a, $8c
+ sub c
+ add [hl]
+ cp $8
+ ret c
+.asm_1707ef
+ ld a, $8
+ ld [ScriptVar], a
+
+Function1707f4: ; 1707f4 (5c:47f4) BattleTowerAction $06
+ ld a, $5
+ call GetSRAMBank
+ xor a
+ ld [$be46], a
+ ld [$aa8b], a
+ ld [$aa8c], a
+ call CloseSRAM
+ ret
+
+Function170807: ; 170807 (5c:4807) BattleTowerAction $16
+ call UpdateTime
+ ld a, $5
+ call GetSRAMBank
+ ld a, [CurDay]
+ ld [$b2f9], a
+ xor a
+ ld [$b2fa], a
+ call CloseSRAM
+ ret
+
+Function17081d: ; 17081d (5c:481d) BattleTowerAction $17
+ xor a
+ ld [ScriptVar], a
+ ld a, $5
+ call GetSRAMBank
+ ld a, [$b2f9]
+ ld c, a
+ ld a, [$b2fa]
+ ld b, a
+ call CloseSRAM
+ cp $2
+ jr nc, .asm_170853
+ push bc
+ call UpdateTime
+ pop bc
+ ld a, [CurDay]
+ sub c
+ jr c, .asm_170849
+ cp $b
+ jr nc, .asm_170853
+ ld a, b
+ and a
+ jr nz, .asm_170853
+ ret
+.asm_170849
+ ld hl, CurDay
+ ld a, $8c
+ sub c
+ add [hl]
+ cp $b
+ ret c
+.asm_170853
+ ld a, $1
+ ld [ScriptVar], a
+ ld a, $5
+ call GetSRAMBank
+ xor a
+ ld [$b2f9], a
+ ld [$b2fa], a
+ call CloseSRAM
+ ret
+
+Function170868: ; 170868 (5c:4868) BattleTowerAction $07
+ ld a, BANK(sbe47)
+ call GetSRAMBank
+ ld a, [rSVBK]
+ push af
+ ld a, $3
+ ld [rSVBK], a
+ ld a, [wd000 + $800]
+ ld [sbe47], a
+ pop af
+ ld [rSVBK], a
+ call CloseSRAM
+ ret
+
+Function170881: ; 170881 (5c:4881) BattleTowerAction $08
+ ld a, BANK(sbe47)
+ call GetSRAMBank
+ ld a, [rSVBK]
+ push af
+ ld a, $3
+ ld [rSVBK], a
+ ld a, [sbe47]
+ ld [wd000 + $800], a
+ pop af
+ ld [rSVBK], a
+ call CloseSRAM
+ ret
+
+Function17089a: ; 17089a BattleTowerAction $09
+ ld a, [wSaveFileExists]
+ and a
+ jr z, .nope
+ callba Function14bcb
+ jr z, .yes
+ xor a
+ jr .nope
+
+.yes
+ ld a, $1
+
+.nope
+ ld [ScriptVar], a
+ ret
+; 1708b1
+
+
+Function1708b1: ; 1708b1 (5c:48b1) BattleTowerAction $0a
+ xor a
+ ld [MusicFade], a
+ call MaxVolume
+ ret
+
+CheckMobileEventIndex: ; 1708b9 (5c:48b9) BattleTowerAction $0b something to do with GS Ball
+ ld a, BANK(sMobileEventIndex)
+ call GetSRAMBank
+ ld a, [sMobileEventIndex]
+ ld [ScriptVar], a
+ call CloseSRAM
+ ret
+
+Function1708c8: ; 1708c8 (5c:48c8) BattleTowerAction $0c
+ call UpdateTime
+ ld a, $5
+ call GetSRAMBank
+ ld a, [CurDay]
+ ld [$aa8b], a
+ xor a
+ ld [$aa8c], a
+ ld a, [$aa5d]
+ cp $2
+ jr nc, .asm_1708ec
+ ld a, [CurDay]
+ ld [$aa48], a
+ ld a, $1
+ ld [$aa47], a
+.asm_1708ec
+ call CloseSRAM
+ ret
+
+Function1708f0: ; 1708f0 (5c:48f0) BattleTowerAction $0d
+ xor a
+ ld [ScriptVar], a
+ call UpdateTime
+ ld a, $5
+ call GetSRAMBank
+ ld a, [$aa48]
+ ld c, a
+ ld a, [$aa47]
+ call CloseSRAM
+ and a
+ ret z
+ ld hl, CurDay
+ ld a, c
+ cp [hl]
+ jr nz, Function170923
+ ld a, $5
+ call GetSRAMBank
+ ld a, [$aa5d]
+ call CloseSRAM
+ cp $5
+ ret c
+ ld a, $1
+ ld [ScriptVar], a
+ ret
+
+
+Function170923: ; 170923
+ ld a, $5
+ call GetSRAMBank
+ xor a
+ ld [$aa48], a
+ ld [$aa47], a
+ ld hl, $aa5d
+ ld bc, $0011
+ call ByteFill
+ call CloseSRAM
+ ret
+; 17093c
+
+
+Function17093c: ; 17093c (5c:493c) BattleTowerAction $0e
+ xor a
+ ld [ScriptVar], a
+ ld a, EGG_TICKET
+ ld [CurItem], a
+ ld hl, NumItems
+ call CheckItem
+ ret nc
+ ld a, [PartyCount]
+ ld b, 0
+ ld c, a
+ ld hl, PartySpecies
+.loop
+ ld a, [hli]
+ cp EGG
+ jr nz, .not_egg
+ push hl
+ ld hl, PartyMonOT ; wddff (aliases: PartyMonOT)
+ ld de, $6
+ ld a, b
+ and a
+ jr z, .skip
+.loop2
+ add hl, de
+ dec a
+ jr nz, .loop2
+.skip
+ ld de, String_1709a4
+ ld a, $6
+.asm_17096e
+ push af
+ ld a, [de]
+ inc de
+ cp [hl]
+ inc hl
+ jr nz, .asm_17099d
+ pop af
+ dec a
+ jr nz, .asm_17096e
+rept 4
+ dec hl
+endr
+ ld a, $50
+rept 2
+ ld [hli], a
+endr
+ pop hl
+ ld a, EGG_TICKET
+ ld [CurItem], a
+ ld a, $1
+ ld [wItemQuantityChangeBuffer], a
+ ld a, $ff
+ ld [wd107], a
+ ld hl, NumItems
+ call TossItem
+ ld a, $1
+ ld [ScriptVar], a
+ ret
+
+.asm_17099d
+ pop af
+ pop hl
+.not_egg
+ inc b
+ dec c
+ jr nz, .loop
+ ret
+; 1709a4 (5c:49a4)
+
+String_1709a4: ; 1709a4
+ db "なぞナゾ@@"
+
+Function1709aa: ; 1709aa (5c:49aa) BattleTowerAction $0f
+ ld a, [rSVBK]
+ push af
+ ld a, BANK(w3_d090)
+ ld [rSVBK], a
+ ld a, [w3_d090]
+ ld [ScriptVar], a
+ pop af
+ ld [rSVBK], a
+ ret
+
+Function1709bb: ; 1709bb (5c:49bb) BattleTowerAction $10
+ xor a
+ ld [ScriptVar], a
+ ld a, $5
+ call GetSRAMBank
+ ld a, [$a800]
+ call CloseSRAM
+ cp 6
+ jr nc, .invalid
+ ld e, a
+ ld d, 0
+ ld hl, Jumptable_1709e7
+rept 2
+ add hl, de
+endr
+ ld a, [hli]
+ ld h, [hl]
+ ld l, a
+ jp [hl]
+
+.invalid
+ ld a, $5
+ call GetSRAMBank
+ xor a
+ ld [$a800], a
+ call CloseSRAM
+ ret
+; 1709e7 (5c:49e7)
+
+Jumptable_1709e7: ; 1709e7
+ dw Function170a00
+ dw Function170a00
+ dw Function1709f3
+ dw Function1709f3
+ dw Function170a01
+ dw Function170a33
+; 1709f3
+
+Function1709f3: ; 1709f3
+ ld a, $5
+ call GetSRAMBank
+ ld a, $1
+ ld [$a800], a
+ call CloseSRAM
+
+Function170a00: ; 170a00
+ ret
+; 170a01
+
+Function170a01: ; 170a01
+ ld a, $5
+ call GetSRAMBank
+ ld hl, $b023
+ ld de, $c608
+ ld bc, $0069
+ call CopyBytes
+ ld a, [$a825]
+ ld [wcd30], a
+ ld a, [$a826]
+ ld [wcd31], a
+ call CloseSRAM
+ callba Function11b6b4
+ callba Function17d0f3
+ ld a, $1
+ ld [ScriptVar], a
+ ret
+; 170a33
+
+Function170a33: ; 170a33
+ ld a, $0
+ call GetSRAMBank
+ ld hl, wRTC
+ ld de, $c608
+ ld bc, $0004
+ call CopyBytes
+ call CloseSRAM
+ ld a, $5
+ call GetSRAMBank
+ ld hl, $b08c
+ ld de, $c608
+ ld c, $4
+.asm_170a54
+ ld a, [de]
+ inc de
+ cp [hl]
+ jr nz, .asm_170a78
+ inc hl
+ dec c
+ jr nz, .asm_170a54
+ call CloseSRAM
+ ld a, [MapGroup]
+ ld b, a
+ ld a, [MapNumber]
+ ld c, a
+ call GetMapTrigger
+ ld a, d
+ or e
+ jr z, .asm_170a72
+ ld a, [de]
+ and a
+ ret nz
+
+.asm_170a72
+ ld a, $1
+ ld [ScriptVar], a
+ ret
+
+.asm_170a78
+ call CloseSRAM
+ ld a, $5
+ call GetSRAMBank
+ xor a
+ ld [$a800], a
+ call CloseSRAM
+ ld [ScriptVar], a
+ ld a, [MapGroup]
+ ld b, a
+ ld a, [MapNumber]
+ ld c, a
+ call GetMapTrigger
+ ld a, d
+ or e
+ jr z, .asm_170a9b
+ xor a
+ ld [de], a
+
+.asm_170a9b
+ ret
+; 170a9c
+
+Function170a9c: ; 170a9c (5c:4a9c) BattleTowerAction $11
+ ld c, $0
+ jr asm_170aa2
+
+Function170aa0: ; 170aa0 (5c:4aa0) BattleTowerAction $12
+ ld c, $1
+asm_170aa2: ; 170aa2 (5c:4aa2)
+ ld a, $5
+ call GetSRAMBank
+ ld a, c
+ ld [$aa8d], a
+ call CloseSRAM
+ ret
+
+Function170aaf: ; 170aaf (5c:4aaf) BattleTowerAction $13
+ ld a, $5
+ call GetSRAMBank
+ ld a, [$aa8d]
+ ld [ScriptVar], a
+ call CloseSRAM
+ ret
+
+Function170abe: ; 170abe (5c:4abe) BattleTowerAction $14
+ call Function17089a
+ ld a, [ScriptVar]
+ and a
+ ret z
+ ld a, BANK(sbe4f)
+ call GetSRAMBank
+ ld a, [sbe4f]
+ and $1
+ ld [ScriptVar], a
+ call CloseSRAM
+ ret
+
+Function170ad7: ; 170ad7 (5c:4ad7) BattleTowerAction $15
+ ld a, BANK(sbe4f)
+ call GetSRAMBank
+ ld a, [sbe4f]
+ or $1
+ ld [sbe4f], a
+ call CloseSRAM
+ ret
+
+Function170ae8: ; 170ae8 (5c:4ae8) BattleTowerAction $18
+ ld a, $5
+ call GetSRAMBank
+ ld a, [$b2fb]
+ call CloseSRAM
+ ld c, $a
+ call SimpleDivide
+ ld a, b
+ ld [wcd4f], a
+ xor a
+ ld [ScriptVar], a
+ callba Function119d93
+ ret nc
+ ld a, $5
+ call GetSRAMBank
+ ld a, [$b2fb]
+ call CloseSRAM
+ ld [ScriptVar], a
+ ret
+
+Function170b16: ; 170b16 (5c:4b16) BattleTowerAction $19
+ ld a, $5
+ call GetSRAMBank
+ ld a, [$b2fb]
+ call CloseSRAM
+ ld c, 10
+ call SimpleDivide
+ ld a, b
+ ld [wcd4f], a
+ xor a
+ ld [ScriptVar], a
+ callba Function119dd1
+ ret nc
+ ld a, $5
+ call GetSRAMBank
+ ld a, [$b2fb]
+ call CloseSRAM
+ ld [ScriptVar], a
+ ret
diff --git a/misc/crystal_misc.asm b/misc/crystal_misc.asm
index 489ec77ee..662c1788a 100644
--- a/misc/crystal_misc.asm
+++ b/misc/crystal_misc.asm
@@ -173,7 +173,7 @@ Function17a78f: ; 17a78f (5e:678f)
ret
.asm_17a79f
- callba Function104061
+ callba ReloadMapPart
ret
; 17a7a6 (5e:67a6)
@@ -768,26 +768,26 @@ Function17aba0: ; 17aba0 (5e:6ba0)
Function17abcf: ; 17abcf (5e:6bcf)
ld a, [rSVBK]
push af
- ld a, BANK(wMapPals)
+ ld a, BANK(UnknBGPals)
ld [rSVBK], a
ld hl, Palette_17ac55
- ld de, wMapPals ; $d000
+ ld de, UnknBGPals ; $d000
ld bc, $30
call CopyBytes
ld hl, Palette_17ac95
- ld de, Unkn2Pals
+ ld de, UnknOBPals
ld bc, $40
call CopyBytes
ld hl, GFX_17afa5 + $510
- ld de, Unkn2Pals + 2 * 4
+ ld de, UnknOBPals + 2 * 4
ld bc, $10
call CopyBytes
ld hl, MapObjectPals + 8
- ld de, Unkn2Pals + 6 * 4
+ ld de, UnknOBPals + 6 * 4
ld bc, $8
ld a, BANK(MapObjectPals)
call FarCopyBytes
diff --git a/misc/fixed_words.asm b/misc/fixed_words.asm
new file mode 100755
index 000000000..708116689
--- /dev/null
+++ b/misc/fixed_words.asm
@@ -0,0 +1,4182 @@
+; These functions seem to be related to the selection of preset phrases
+; for use in mobile communications. Annoyingly, they separate the
+; Battle Tower function above from the data it references.
+Function11c05d: ; 11c05d
+ ld a, e
+ or d
+ jr z, .asm_11c071
+ ld a, e
+ and d
+ cp $ff
+ jr z, .asm_11c071
+ push hl
+ call Function11c156
+ pop hl
+ call PlaceString
+ and a
+ ret
+
+.asm_11c071
+ ld c, l
+ ld b, h
+ scf
+ ret
+; 11c075
+
+Function11c075: ; 11c075
+ push de
+ ld a, c
+ call Function11c254
+ pop de
+ ld bc, wcd36
+ call Function11c08f
+ ret
+; 11c082
+
+Function11c082: ; 11c082
+ push de
+ ld a, c
+ call Function11c254
+ pop de
+ ld bc, wcd36
+ call Function11c0c6
+ ret
+; 11c08f
+
+Function11c08f: ; 11c08f
+ ld l, e
+ ld h, d
+ push hl
+ ld a, $3
+.asm_11c094
+ push af
+ ld a, [bc]
+ ld e, a
+ inc bc
+ ld a, [bc]
+ ld d, a
+ inc bc
+ push bc
+ call Function11c05d
+ jr c, .asm_11c0a2
+ inc bc
+
+.asm_11c0a2
+ ld l, c
+ ld h, b
+ pop bc
+ pop af
+ dec a
+ jr nz, .asm_11c094
+ pop hl
+ ld de, $0028
+ add hl, de
+ ld a, $3
+.asm_11c0b0
+ push af
+ ld a, [bc]
+ ld e, a
+ inc bc
+ ld a, [bc]
+ ld d, a
+ inc bc
+ push bc
+ call Function11c05d
+ jr c, .asm_11c0be
+ inc bc
+
+.asm_11c0be
+ ld l, c
+ ld h, b
+ pop bc
+ pop af
+ dec a
+ jr nz, .asm_11c0b0
+ ret
+; 11c0c6
+
+
+Function11c0c6: ; 11c0c6
+ ld a, [wJumptableIndex]
+ ld l, a
+ ld a, [wcf64]
+ ld h, a
+ push hl
+ ld hl, $c608 + 16
+ ld a, $0
+ ld [hli], a
+ push de
+ xor a
+ ld [wJumptableIndex], a
+ ld a, $12
+ ld [wcf64], a
+ ld a, $6
+.asm_11c0e1
+ push af
+ ld a, [bc]
+ ld e, a
+ inc bc
+ ld a, [bc]
+ ld d, a
+ inc bc
+ or e
+ jr z, .asm_11c133
+ push hl
+ push bc
+ call Function11c156
+ call Function11c14a
+ ld e, c
+ pop bc
+ pop hl
+ ld a, e
+ or a
+ jr z, .asm_11c133
+.asm_11c0fa
+ ld a, [wcf64]
+ cp $12
+ jr z, .asm_11c102
+ inc e
+
+.asm_11c102
+ cp e
+ jr nc, .asm_11c11c
+ ld a, [wJumptableIndex]
+ inc a
+ ld [wJumptableIndex], a
+ ld [hl], $4e
+ rra
+ jr c, .asm_11c113
+ ld [hl], $55
+
+.asm_11c113
+ inc hl
+ ld a, $12
+ ld [wcf64], a
+ dec e
+ jr .asm_11c0fa
+
+.asm_11c11c
+ cp $12
+ jr z, .asm_11c123
+ ld [hl], $7f
+ inc hl
+
+.asm_11c123
+ sub e
+ ld [wcf64], a
+ ld de, $c608
+.asm_11c12a
+ ld a, [de]
+ cp $50
+ jr z, .asm_11c133
+ inc de
+ ld [hli], a
+ jr .asm_11c12a
+
+.asm_11c133
+ pop af
+ dec a
+ jr nz, .asm_11c0e1
+ ld [hl], $57
+ pop bc
+ ld hl, $c608 + 16
+ call PlaceWholeStringInBoxAtOnce
+ pop hl
+ ld a, l
+ ld [wJumptableIndex], a
+ ld a, h
+ ld [wcf64], a
+ ret
+; 11c14a
+
+Function11c14a: ; 11c14a
+ ld c, $0
+ ld hl, $c608
+.asm_11c14f
+ ld a, [hli]
+ cp $50
+ ret z
+ inc c
+ jr .asm_11c14f
+; 11c156
+
+Function11c156: ; 11c156
+ ld a, [rSVBK]
+ push af
+ ld a, $1
+ ld [rSVBK], a
+ ld a, $50
+ ld hl, $c608
+ ld bc, $000b
+ call ByteFill
+ ld a, d
+ and a
+ jr z, .asm_11c19c
+ ld hl, Unknown_11daac
+ dec d
+ sla d
+ ld c, d
+ ld b, $0
+ add hl, bc
+ ld a, [hli]
+ ld c, a
+ ld a, [hl]
+ ld b, a
+ push bc
+ pop hl
+ ld c, e
+ ld b, $0
+ sla c
+ rl b
+ sla c
+ rl b
+ sla c
+ rl b
+ add hl, bc
+ ld bc, $0005
+.asm_11c18f
+ ld de, $c608
+ call CopyBytes
+ ld de, $c608
+ pop af
+ ld [rSVBK], a
+ ret
+
+.asm_11c19c
+ ld a, e
+ ld [wd265], a
+ call GetPokemonName
+ ld hl, StringBuffer1
+ ld bc, $000a
+ jr .asm_11c18f
+; 11c1ab
+
+Function11c1ab: ; 11c1ab
+ ld a, [hInMenu]
+ push af
+ ld a, $1
+ ld [hInMenu], a
+ call Function11c1b9
+ pop af
+ ld [hInMenu], a
+ ret
+; 11c1b9
+
+Function11c1b9: ; 11c1b9
+ call Function11c1ca
+ ld a, [rSVBK]
+ push af
+ ld a, $5
+ ld [rSVBK], a
+ call Function11c283
+ pop af
+ ld [rSVBK], a
+ ret
+; 11c1ca
+
+Function11c1ca: ; 11c1ca
+ xor a
+ ld [wJumptableIndex], a
+ ld [wcf64], a
+ ld [wcf65], a
+ ld [wcf66], a
+ ld [wcd23], a
+ ld [BGMapBuffer], a
+ ld [wcd21], a
+ ld [CreditsTimer], a
+ ld [wcd35], a
+ ld [wcd2b], a
+ ld a, $ff
+ ld [wcd24], a
+ ld a, [MenuSelection2]
+ dec a
+ call Function11c254
+ call ClearBGPalettes
+ call ClearSprites
+ call ClearScreen
+ call Function11d323
+ call SetPalettes
+ call DisableLCD
+ ld hl, GFX_11d67e
+ ld de, VTiles2
+ ld bc, $60
+ call CopyBytes
+ ld hl, LZ_11d6de
+ ld de, VTiles0
+ call Decompress
+ call EnableLCD
+ callba ReloadMapPart
+ callba Function8cf53
+ callba LoadPokemonData
+ callba Function40c30
+ ld a, [rSVBK]
+ push af
+ ld a, $5
+ ld [rSVBK], a
+ ld hl, $c6d0
+ ld de, LYOverrides
+ ld bc, $100
+ call CopyBytes
+ pop af
+ ld [rSVBK], a
+ call Function11d4aa
+ call Function11d3ba
+ ret
+; 11c254
+
+Function11c254: ; 11c254
+ push af
+ ld a, $4
+ call GetSRAMBank
+ ld hl, $a007
+ pop af
+ sla a
+ sla a
+ ld c, a
+ sla a
+ add c
+ ld c, a
+ ld b, $0
+ add hl, bc
+ ld de, wcd36
+ ld bc, $000c
+ call CopyBytes
+ call CloseSRAM
+ ret
+; 11c277
+
+
+Function11c277: ; 11c277 (47:4277)
+ ld a, " "
+ hlcoord 0, 6
+ ld bc, (SCREEN_HEIGHT - 6) * SCREEN_WIDTH
+ call ByteFill
+ ret
+
+Function11c283: ; 11c283
+.loop
+ call JoyTextDelay
+ ld a, [hJoyPressed]
+ ld [hJoypadPressed], a
+ ld a, [wJumptableIndex]
+ bit 7, a
+ jr nz, .exit
+ call .DoJumptableFunction
+ callba Function8cf69
+ callba ReloadMapPart
+ jr .loop
+
+.exit
+ callba Function8cf53
+ call ClearSprites
+ ret
+; 11c2ac
+
+.DoJumptableFunction: ; 11c2ac
+ ld a, [wJumptableIndex]
+ ld e, a
+ ld d, 0
+ ld hl, .Jumptable
+rept 2
+ add hl, de
+endr
+ ld a, [hli]
+ ld h, [hl]
+ ld l, a
+ jp [hl]
+; 11c2bb
+
+
+.Jumptable: ; 11c2bb (47:42bb)
+ dw Function11c2e9 ; 00
+ dw Function11c346 ; 01
+ dw Function11c35f ; 02
+ dw Function11c373 ; 03
+ dw Function11c3c2 ; 04
+ dw Function11c3ed ; 05
+ dw Function11c52c ; 06
+ dw Function11c53d ; 07
+ dw Function11c658 ; 08
+ dw Function11c675 ; 09
+ dw Function11c9bd ; 0a
+ dw Function11c9c3 ; 0b
+ dw Function11caad ; 0c
+ dw Function11cab3 ; 0d
+ dw Function11cb52 ; 0e
+ dw Function11cb66 ; 0f
+ dw Function11cbf5 ; 10
+ dw Function11ccef ; 11
+ dw Function11cd04 ; 12
+ dw Function11cd20 ; 13
+ dw Function11cd54 ; 14
+ dw Function11ce0b ; 15
+ dw Function11ce2b ; 16
+
+
+Function11c2e9: ; 11c2e9 (47:42e9)
+ depixel 3, 1, 2, 5
+ ld a, SPRITE_ANIM_INDEX_1D
+ call _InitSpriteAnimStruct
+ depixel 8, 1, 2, 5
+ ld a, SPRITE_ANIM_INDEX_1D
+ call _InitSpriteAnimStruct
+ ld hl, $c
+ add hl, bc
+ ld a, $1
+ ld [hl], a
+ depixel 9, 2, 2, 0
+ ld a, SPRITE_ANIM_INDEX_1D
+ call _InitSpriteAnimStruct
+ ld hl, $c
+ add hl, bc
+ ld a, $3
+ ld [hl], a
+ depixel 10, 16
+ ld a, SPRITE_ANIM_INDEX_1D
+ call _InitSpriteAnimStruct
+ ld hl, $c
+ add hl, bc
+ ld a, $4
+ ld [hl], a
+ depixel 10, 4
+ ld a, SPRITE_ANIM_INDEX_1D
+ call _InitSpriteAnimStruct
+ ld hl, $c
+ add hl, bc
+ ld a, $5
+ ld [hl], a
+ depixel 10, 2
+ ld a, SPRITE_ANIM_INDEX_1D
+ call _InitSpriteAnimStruct
+ ld hl, $c
+ add hl, bc
+ ld a, $2
+ ld [hl], a
+ ld hl, wcd23
+ set 1, [hl]
+ set 2, [hl]
+ jp Function11cfb5
+
+Function11c346: ; 11c346 (47:4346)
+ ld a, $9
+ ld [wcd2d], a
+ ld a, $2
+ ld [wcd2e], a
+ ld [wcd2f], a
+ ld [wcd30], a
+ ld de, wcd2d
+ call Function11cfce
+ jp Function11cfb5
+
+Function11c35f: ; 11c35f (47:435f)
+ ld hl, wcd2f
+rept 2
+ inc [hl]
+endr
+rept 2
+ dec hl
+endr
+ dec [hl]
+ push af
+ ld de, wcd2d
+ call Function11cfce
+ pop af
+ ret nz
+ jp Function11cfb5
+
+Function11c373: ; 11c373 (47:4373)
+ ld hl, wcd30
+rept 2
+ inc [hl]
+endr
+rept 2
+ dec hl
+endr
+ dec [hl]
+ push af
+ ld de, wcd2d
+ call Function11cfce
+ pop af
+ ret nz
+ call Function11c38a
+ jp Function11cfb5
+
+Function11c38a: ; 11c38a (47:438a)
+ ld hl, Unknown_11c986
+ ld bc, wcd36
+ ld a, $6
+.asm_11c392
+ push af
+ ld a, [hli]
+ ld e, a
+ ld a, [hli]
+ ld d, a
+ push hl
+ push de
+ pop hl
+ ld a, [bc]
+ inc bc
+ ld e, a
+ ld a, [bc]
+ inc bc
+ ld d, a
+ push bc
+ or e
+ jr z, .asm_11c3af
+ ld a, e
+ and d
+ cp $ff
+ jr z, .asm_11c3af
+ call Function11c05d
+ jr .asm_11c3b5
+.asm_11c3af
+ ld de, String_11c3bc
+ call PlaceString
+.asm_11c3b5
+ pop bc
+ pop hl
+ pop af
+ dec a
+ jr nz, .asm_11c392
+ ret
+; 11c3bc (47:43bc)
+
+String_11c3bc: ; 11c3bc
+ db "ーーーーー@"
+; 11c3c2
+
+Function11c3c2: ; 11c3c2 (47:43c2)
+ call Function11c277
+ ld de, Unknown_11cfbe
+ call Function11d035
+ hlcoord 1, 7
+ ld de, String_11c4db
+ call PlaceString
+ hlcoord 1, 16
+ ld de, String_11c51b
+ call PlaceString
+ call Function11c4be
+ ld hl, wcd23
+ set 0, [hl]
+ ld hl, wcd24
+ res 0, [hl]
+ call Function11cfb5
+
+Function11c3ed: ; 11c3ed (47:43ed)
+ ld hl, BGMapBuffer ; wcd20 (aliases: CreditsPos)
+ ld de, hJoypadPressed ; $ffa3
+ ld a, [de]
+ and $8
+ jr nz, .asm_11c426
+ ld a, [de]
+ and $2
+ jr nz, .asm_11c41a
+ ld a, [de]
+ and $1
+ jr nz, .asm_11c42c
+ ld de, hJoyLast
+ ld a, [de]
+ and $40
+ jr nz, .asm_11c47c
+ ld a, [de]
+ and $80
+ jr nz, .asm_11c484
+ ld a, [de]
+ and $20
+ jr nz, .asm_11c48c
+ ld a, [de]
+ and $10
+ jr nz, .asm_11c498
+ ret
+.asm_11c41a
+ call PlayClickSFX
+.asm_11c41d
+ ld hl, wcd24
+ set 0, [hl]
+ ld a, $c
+ jr .asm_11c475
+.asm_11c426
+ ld a, $8
+ ld [BGMapBuffer], a ; wcd20 (aliases: CreditsPos)
+ ret
+.asm_11c42c
+ ld a, [BGMapBuffer] ; wcd20 (aliases: CreditsPos)
+ cp $6
+ jr c, .asm_11c472
+ sub $6
+ jr z, .asm_11c469
+ dec a
+ jr z, .asm_11c41d
+ ld hl, wcd36
+ ld c, $c
+ xor a
+.asm_11c440
+ or [hl]
+ inc hl
+ dec c
+ jr nz, .asm_11c440
+ and a
+ jr z, .asm_11c460
+ ld de, Unknown_11cfba
+ call Function11cfce
+ decoord 1, 2
+ ld bc, wcd36
+ call Function11c08f
+ ld hl, wcd24
+ set 0, [hl]
+ ld a, $e
+ jr .asm_11c475
+.asm_11c460
+ ld hl, wcd24
+ set 0, [hl]
+ ld a, $11
+ jr .asm_11c475
+.asm_11c469
+ ld hl, wcd24
+ set 0, [hl]
+ ld a, $a
+ jr .asm_11c475
+.asm_11c472
+ call Function11c4a5
+.asm_11c475
+ ld [wJumptableIndex], a
+ call PlayClickSFX
+ ret
+.asm_11c47c
+ ld a, [hl]
+ cp $3
+ ret c
+ sub $3
+ jr .asm_11c4a3
+.asm_11c484
+ ld a, [hl]
+ cp $6
+ ret nc
+ add $3
+ jr .asm_11c4a3
+.asm_11c48c
+ ld a, [hl]
+ and a
+ ret z
+ cp $3
+ ret z
+ cp $6
+ ret z
+ dec a
+ jr .asm_11c4a3
+.asm_11c498
+ ld a, [hl]
+ cp $2
+ ret z
+ cp $5
+ ret z
+ cp $8
+ ret z
+ inc a
+.asm_11c4a3
+ ld [hl], a
+ ret
+
+Function11c4a5: ; 11c4a5 (47:44a5)
+ ld hl, wcd23
+ res 0, [hl]
+ ld a, [wcd2b]
+ and a
+ jr nz, .asm_11c4b7
+ xor a
+ ld [wcd21], a
+ ld a, $6
+ ret
+.asm_11c4b7
+ xor a
+ ld [CreditsTimer], a
+ ld a, $15
+ ret
+
+Function11c4be: ; 11c4be (47:44be)
+ ld a, $1
+ hlcoord 0, 6, AttrMap
+ ld bc, $a0
+ call ByteFill
+ ld a, $7
+ hlcoord 0, 14, AttrMap
+ ld bc, $28
+ call ByteFill
+ callba ReloadMapPart
+ ret
+; 11c4db (47:44db)
+
+String_11c4db: ; 11c4db
+ db "6つのことば¯くみあわせます"
+ next "かえたいところ¯えらぶと でてくる"
+ next "ことばのグループから いれかえたい"
+ next "たんご¯えらんでください"
+ db "@"
+; 11c51b
+
+String_11c51b: ; 11c51b
+ db "ぜんぶけす やめる けってい@"
+; 11c52c
+
+Function11c52c: ; 11c52c (47:452c)
+ call Function11c277
+ call Function11c5f0
+ call Function11c618
+ ld hl, wcd24
+ res 1, [hl]
+ call Function11cfb5
+
+Function11c53d: ; 11c53d (47:453d)
+ ld hl, wcd21
+ ld de, hJoypadPressed ; $ffa3
+
+ ld a, [de]
+ and START
+ jr nz, .start
+
+ ld a, [de]
+ and SELECT
+ jr nz, .select
+
+ ld a, [de]
+ and B_BUTTON
+ jr nz, .b
+
+ ld a, [de]
+ and A_BUTTON
+ jr nz, .a
+
+ ld de, hJoyLast
+
+ ld a, [de]
+ and D_UP
+ jr nz, .up
+
+ ld a, [de]
+ and D_DOWN
+ jr nz, .down
+
+ ld a, [de]
+ and D_LEFT
+ jr nz, .left
+
+ ld a, [de]
+ and D_RIGHT
+ jr nz, .right
+
+ ret
+
+.a
+ ld a, [wcd21]
+ cp $f
+ jr c, .asm_11c59d
+ sub $f
+ jr z, .asm_11c5ab
+ dec a
+ jr z, .asm_11c599
+ jr .b
+
+.start
+ ld hl, wcd24
+ set 0, [hl]
+ ld a, $8
+ ld [BGMapBuffer], a ; wcd20 (aliases: CreditsPos)
+
+.b
+ ld a, $4
+ jr .asm_11c59f
+
+.select
+ ld a, [wcd2b]
+ xor $1
+ ld [wcd2b], a
+ ld a, $15
+ jr .asm_11c59f
+
+.asm_11c599
+ ld a, $13
+ jr .asm_11c59f
+
+.asm_11c59d
+ ld a, $8
+
+.asm_11c59f
+ ld hl, wcd24
+ set 1, [hl]
+ ld [wJumptableIndex], a
+ call PlayClickSFX
+ ret
+
+.asm_11c5ab
+ ld a, [BGMapBuffer] ; wcd20 (aliases: CreditsPos)
+ call Function11ca6a
+ call PlayClickSFX
+ ret
+
+.up
+ ld a, [hl]
+ cp $3
+ ret c
+ sub $3
+ jr .asm_11c5ee
+
+.down
+ ld a, [hl]
+ cp $f
+ ret nc
+ add $3
+ jr .asm_11c5ee
+
+.left
+ ld a, [hl]
+ and a
+ ret z
+ cp $3
+ ret z
+ cp $6
+ ret z
+ cp $9
+ ret z
+ cp $c
+ ret z
+ cp $f
+ ret z
+ dec a
+ jr .asm_11c5ee
+
+.right
+ ld a, [hl]
+ cp $2
+ ret z
+ cp $5
+ ret z
+ cp $8
+ ret z
+ cp $b
+ ret z
+ cp $e
+ ret z
+ cp $11
+ ret z
+ inc a
+
+.asm_11c5ee
+ ld [hl], a
+ ret
+; 11c5f0
+
+Function11c5f0: ; 11c5f0 (47:45f0)
+ ld de, Strings_11da52
+ ld bc, Unknown_11c63a
+ ld a, $f
+.asm_11c5f8
+ push af
+ ld a, [bc]
+ inc bc
+ ld l, a
+ ld a, [bc]
+ inc bc
+ ld h, a
+ push bc
+ call PlaceString
+.asm_11c603
+ inc de
+ ld a, [de]
+ cp $50
+ jr z, .asm_11c603
+ pop bc
+ pop af
+ dec a
+ jr nz, .asm_11c5f8
+ hlcoord 1, 17
+ ld de, String_11c62a
+ call PlaceString
+ ret
+
+Function11c618: ; 11c618 (47:4618)
+ ld a, $2
+ hlcoord 0, 6, AttrMap
+ ld bc, $c8
+ call ByteFill
+ callba ReloadMapPart
+ ret
+; 11c62a (47:462a)
+
+String_11c62a: ; 11c62a
+ db "けす モード やめる@"
+; 11c63a
+
+Unknown_11c63a: ; 11c63a
+ dwcoord 1, 7
+ dwcoord 7, 7
+ dwcoord 13, 7
+ dwcoord 1, 9
+ dwcoord 7, 9
+ dwcoord 13, 9
+ dwcoord 1, 11
+ dwcoord 7, 11
+ dwcoord 13, 11
+ dwcoord 1, 13
+ dwcoord 7, 13
+ dwcoord 13, 13
+ dwcoord 1, 15
+ dwcoord 7, 15
+ dwcoord 13, 15
+; 11c658
+
+Function11c658: ; 11c658 (47:4658)
+ call Function11c277
+ call Function11c770
+ ld de, Unknown_11cfc2
+ call Function11d035
+ call Function11c9ab
+ call Function11c7bc
+ call Function11c86e
+ ld hl, wcd24
+ res 3, [hl]
+ call Function11cfb5
+
+Function11c675: ; 11c675 (47:4675)
+ ld hl, wcd25
+ ld de, hJoypadPressed ; $ffa3
+ ld a, [de]
+ and A_BUTTON
+ jr nz, .a
+ ld a, [de]
+ and B_BUTTON
+ jr nz, .b
+ ld a, [de]
+ and START
+ jr nz, .start
+ ld a, [de]
+ and SELECT
+ jr z, .select
+
+ ld a, [wcd26]
+ and a
+ ret z
+ sub $c
+ jr nc, .asm_11c699
+ xor a
+.asm_11c699
+ ld [wcd26], a
+ jr .asm_11c6c4
+
+.start
+ ld hl, wcd28
+ ld a, [wcd26]
+ add $c
+ cp [hl]
+ ret nc
+ ld [wcd26], a
+ ld a, [hl]
+ ld b, a
+ ld hl, wcd25
+ ld a, [wcd26]
+ add [hl]
+ jr c, .asm_11c6b9
+ cp b
+ jr c, .asm_11c6c4
+.asm_11c6b9
+ ld a, [wcd28]
+ ld hl, wcd26
+ sub [hl]
+ dec a
+ ld [wcd25], a
+.asm_11c6c4
+ call Function11c992
+ call Function11c7bc
+ call Function11c86e
+ ret
+
+.select
+ ld de, hJoyLast
+ ld a, [de]
+ and D_UP
+ jr nz, .asm_11c708
+ ld a, [de]
+ and D_DOWN
+ jr nz, .asm_11c731
+ ld a, [de]
+ and D_LEFT
+ jr nz, .asm_11c746
+ ld a, [de]
+ and D_RIGHT
+ jr nz, .asm_11c755
+ ret
+
+.a
+ call Function11c8f6
+ ld a, $4
+ ld [wcd35], a
+ jr .asm_11c6fc
+.b
+ ld a, [wcd2b]
+ and a
+ jr nz, .asm_11c6fa
+ ld a, $6
+ jr .asm_11c6fc
+.asm_11c6fa
+ ld a, $15
+.asm_11c6fc
+ ld [wJumptableIndex], a
+ ld hl, wcd24
+ set 3, [hl]
+ call PlayClickSFX
+ ret
+.asm_11c708
+ ld a, [hl]
+ cp $3
+ jr c, .asm_11c711
+ sub $3
+ jr .asm_11c76e
+.asm_11c711
+ ld a, [wcd26]
+ sub $3
+ ret c
+ ld [wcd26], a
+ jr .asm_11c6c4
+.asm_11c71c
+ ld hl, wcd28
+ ld a, [wcd26]
+ add $c
+ ret c
+ cp [hl]
+ ret nc
+ ld a, [wcd26]
+ add $3
+ ld [wcd26], a
+ jr .asm_11c6c4
+.asm_11c731
+ ld a, [wcd28]
+ ld b, a
+ ld a, [wcd26]
+ add [hl]
+ add $3
+ cp b
+ ret nc
+ ld a, [hl]
+ cp $9
+ jr nc, .asm_11c71c
+ add $3
+ jr .asm_11c76e
+.asm_11c746
+ ld a, [hl]
+ and a
+ ret z
+ cp $3
+ ret z
+ cp $6
+ ret z
+ cp $9
+ ret z
+ dec a
+ jr .asm_11c76e
+.asm_11c755
+ ld a, [wcd28]
+ ld b, a
+ ld a, [wcd26]
+ add [hl]
+ inc a
+ cp b
+ ret nc
+ ld a, [hl]
+ cp $2
+ ret z
+ cp $5
+ ret z
+ cp $8
+ ret z
+ cp $b
+ ret z
+ inc a
+.asm_11c76e
+ ld [hl], a
+ ret
+
+Function11c770: ; 11c770 (47:4770)
+ xor a
+ ld [wcd25], a
+ ld [wcd26], a
+ ld [wcd27], a
+ ld a, [wcd2b]
+ and a
+ jr nz, .asm_11c7ab
+ ld a, [wcd21]
+ and a
+ jr z, .asm_11c799
+ dec a
+ sla a
+ ld hl, Unknown_11f220
+ ld c, a
+ ld b, 0
+ add hl, bc
+ ld a, [hli]
+ ld [wcd28], a
+ ld a, [hl]
+.asm_11c795
+ ld [wcd29], a
+ ret
+.asm_11c799
+ ld a, [wc7d2]
+ ld [wcd28], a
+.asm_11c79f
+ ld c, $c
+ call SimpleDivide
+ and a
+ jr nz, .asm_11c7a8
+ dec b
+.asm_11c7a8
+ ld a, b
+ jr .asm_11c795
+.asm_11c7ab
+ ld hl, $c68a + 30
+ ld a, [CreditsTimer]
+ ld c, a
+ ld b, 0
+rept 2
+ add hl, bc
+endr
+ ld a, [hl]
+ ld [wcd28], a
+ jr .asm_11c79f
+
+Function11c7bc: ; 11c7bc (47:47bc)
+ ld bc, Unknown_11c854
+ ld a, [wcd2b]
+ and a
+ jr nz, .asm_11c814
+ ld a, [wcd21]
+ ld d, a
+ and a
+ jr z, .asm_11c7e9
+ ld a, [wcd26]
+ ld e, a
+.asm_11c7d0
+ ld a, [bc]
+ ld l, a
+ inc bc
+ ld a, [bc]
+ ld h, a
+ inc bc
+ and l
+ cp $ff
+ ret z
+ push bc
+ push de
+ call Function11c05d
+ pop de
+ pop bc
+ inc e
+ ld a, [wcd28]
+ cp e
+ jr nz, .asm_11c7d0
+ ret
+.asm_11c7e9
+ ld hl, wd100
+ ld a, [wcd26]
+ ld e, a
+ add hl, de
+.asm_11c7f1
+ push de
+ ld a, [hli]
+ ld e, a
+ ld d, $0
+ push hl
+ ld a, [bc]
+ ld l, a
+ inc bc
+ ld a, [bc]
+ ld h, a
+ inc bc
+ and l
+ cp $ff
+ jr z, .asm_11c811
+ push bc
+ call Function11c05d
+ pop bc
+ pop hl
+ pop de
+ inc e
+ ld a, [wcd28]
+ cp e
+ jr nz, .asm_11c7f1
+ ret
+.asm_11c811
+ pop hl
+ pop de
+ ret
+.asm_11c814
+ ld hl, $c648
+ ld a, [wcd22]
+ ld e, a
+ ld d, $0
+rept 2
+ add hl, de
+endr
+ ld a, [hli]
+ ld e, a
+ ld a, [hl]
+ ld d, a
+ push de
+ pop hl
+ ld a, [wcd26]
+ ld e, a
+ ld d, $0
+rept 2
+ add hl, de
+endr
+ ld a, [wcd26]
+ ld e, a
+.asm_11c831
+ push de
+ ld a, [hli]
+ ld e, a
+ ld a, [hli]
+ ld d, a
+ push hl
+ ld a, [bc]
+ ld l, a
+ inc bc
+ ld a, [bc]
+ ld h, a
+ inc bc
+ and l
+ cp $ff
+ jr z, .asm_11c851
+ push bc
+ call Function11c05d
+ pop bc
+ pop hl
+ pop de
+ inc e
+ ld a, [wcd28]
+ cp e
+ jr nz, .asm_11c831
+ ret
+.asm_11c851
+ pop hl
+ pop de
+ ret
+; 11c854 (47:4854)
+
+Unknown_11c854: ; 11c854
+ dwcoord 2, 8
+ dwcoord 8, 8
+ dwcoord 14, 8
+ dwcoord 2, 10
+ dwcoord 8, 10
+ dwcoord 14, 10
+ dwcoord 2, 12
+ dwcoord 8, 12
+ dwcoord 14, 12
+ dwcoord 2, 14
+ dwcoord 8, 14
+ dwcoord 14, 14
+ dw -1
+; 11c86e
+
+Function11c86e: ; 11c86e (47:486e)
+ ld a, [wcd26]
+ and a
+ jr z, .asm_11c88a
+ hlcoord 2, 17
+ ld de, String_11c8f0
+ call PlaceString
+ hlcoord 6, 17
+ ld c, $3
+ xor a
+.asm_11c883
+ ld [hli], a
+ inc a
+ dec c
+ jr nz, .asm_11c883
+ jr .asm_11c895
+.asm_11c88a
+ hlcoord 2, 17
+ ld c, $7
+ ld a, $7f
+.asm_11c891
+ ld [hli], a
+ dec c
+ jr nz, .asm_11c891
+.asm_11c895
+ ld hl, wcd28
+ ld a, [wcd26]
+ add $c
+ jr c, .asm_11c8b7
+ cp [hl]
+ jr nc, .asm_11c8b7
+ hlcoord 16, 17
+ ld de, String_11c8f3
+ call PlaceString
+ hlcoord 11, 17
+ ld a, $3
+ ld c, a
+.asm_11c8b1
+ ld [hli], a
+ inc a
+ dec c
+ jr nz, .asm_11c8b1
+ ret
+.asm_11c8b7
+ hlcoord 17, 16
+ ld a, $7f
+ ld [hl], a
+ hlcoord 11, 17
+ ld c, $7
+.asm_11c8c2
+ ld [hli], a
+ dec c
+ jr nz, .asm_11c8c2
+ ret
+; 11c8c7 (47:48c7)
+
+Function11c8c7: ; 11c8c7
+ inc a
+ push af
+ and $f
+ ld [hDividend], a
+ pop af
+ and $f0
+ swap a
+ ld [hQuotient], a
+ xor a
+ ld [$ffb5], a
+ push hl
+ callba Function11a80c
+ pop hl
+ ld a, [wcd63]
+ add $f6
+ ld [hli], a
+ ld a, [wcd62]
+ add $f6
+ ld [hli], a
+ ret
+; 11c8ec
+
+String_11c8ec: ; 11c8ec
+ db "ぺージ@"
+; 11c8f0
+
+String_11c8f0: ; 11c8f0
+ db "まえ@"
+; 11c8f3
+
+String_11c8f3: ; 11c8f3
+ db "つぎ@"
+; 11c8f6
+
+Function11c8f6: ; 11c8f6 (47:48f6)
+ ld a, [BGMapBuffer] ; wcd20 (aliases: CreditsPos)
+ call Function11c95d
+ push hl
+ ld a, [wcd2b]
+ and a
+ jr nz, .asm_11c938
+ ld a, [wcd21]
+ ld d, a
+ and a
+ jr z, .asm_11c927
+ ld hl, wcd26
+ ld a, [wcd25]
+ add [hl]
+.asm_11c911
+ ld e, a
+.asm_11c912
+ pop hl
+ push de
+ call Function11c05d
+ pop de
+ ld a, [BGMapBuffer] ; wcd20 (aliases: CreditsPos)
+ ld c, a
+ ld b, $0
+ ld hl, wcd36
+rept 2
+ add hl, bc
+endr
+ ld [hl], e
+ inc hl
+ ld [hl], d
+ ret
+.asm_11c927
+ ld hl, wcd26
+ ld a, [wcd25]
+ add [hl]
+ ld c, a
+ ld b, $0
+ ld hl, wd100
+ add hl, bc
+ ld a, [hl]
+ jr .asm_11c911
+.asm_11c938
+ ld hl, $c648
+ ld a, [wcd22]
+ ld e, a
+ ld d, $0
+rept 2
+ add hl, de
+endr
+ ld a, [hli]
+ ld e, a
+ ld a, [hl]
+ ld d, a
+ push de
+ pop hl
+ ld a, [wcd26]
+ ld e, a
+ ld d, $0
+rept 2
+ add hl, de
+endr
+ ld a, [wcd25]
+ ld e, a
+rept 2
+ add hl, de
+endr
+ ld a, [hli]
+ ld e, a
+ ld a, [hl]
+ ld d, a
+ jr .asm_11c912
+
+Function11c95d: ; 11c95d (47:495d)
+ sla a
+ ld c, a
+ ld b, 0
+ ld hl, Unknown_11c986
+ add hl, bc
+ ld a, [hli]
+ ld c, a
+ ld a, [hl]
+ ld b, a
+ push bc
+ push bc
+ pop hl
+ ld a, $5
+ ld c, a
+ ld a, $7f
+.asm_11c972
+ ld [hli], a
+ dec c
+ jr nz, .asm_11c972
+ dec hl
+ ld bc, -20
+ add hl, bc
+ ld a, $5
+ ld c, a
+ ld a, $7f
+.asm_11c980
+ ld [hld], a
+ dec c
+ jr nz, .asm_11c980
+ pop hl
+ ret
+; 11c986 (47:4986)
+
+Unknown_11c986:
+ dwcoord 1, 2
+ dwcoord 7, 2
+ dwcoord 13, 2
+ dwcoord 1, 4
+ dwcoord 7, 4
+ dwcoord 13, 4
+; 11c992
+
+Function11c992: ; 11c992 (47:4992)
+ ld a, $8
+ hlcoord 2, 7
+.asm_11c997
+ push af
+ ld a, $7f
+ push hl
+ ld bc, $11
+ call ByteFill
+ pop hl
+ ld bc, $14
+ add hl, bc
+ pop af
+ dec a
+ jr nz, .asm_11c997
+ ret
+
+Function11c9ab: ; 11c9ab (47:49ab)
+ ld a, $7
+ hlcoord 0, 6, AttrMap
+ ld bc, $c8
+ call ByteFill
+ callba ReloadMapPart
+ ret
+
+Function11c9bd: ; 11c9bd (47:49bd)
+ ld de, String_11ca38
+ call Function11ca7f
+
+Function11c9c3: ; 11c9c3 (47:49c3)
+ ld hl, wcd2a
+ ld de, hJoypadPressed ; $ffa3
+ ld a, [de]
+ and $1
+ jr nz, .asm_11c9de
+ ld a, [de]
+ and $2
+ jr nz, .asm_11c9e9
+ ld a, [de]
+ and $40
+ jr nz, .asm_11c9f7
+ ld a, [de]
+ and $80
+ jr nz, .asm_11c9fc
+ ret
+.asm_11c9de
+ ld a, [hl]
+ and a
+ jr nz, .asm_11c9e9
+ call Function11ca5e
+ xor a
+ ld [BGMapBuffer], a ; wcd20 (aliases: CreditsPos)
+.asm_11c9e9
+ ld hl, wcd24
+ set 4, [hl]
+ ld a, $4
+ ld [wJumptableIndex], a
+ call PlayClickSFX
+ ret
+.asm_11c9f7
+ ld a, [hl]
+ and a
+ ret z
+ dec [hl]
+ ret
+.asm_11c9fc
+ ld a, [hl]
+ and a
+ ret nz
+ inc [hl]
+ ret
+
+Function11ca01: ; 11ca01 (47:4a01)
+ hlcoord 14, 7, AttrMap
+ ld de, $14
+ ld a, $5
+ ld c, a
+.asm_11ca0a
+ push hl
+ ld a, $6
+ ld b, a
+ ld a, $7
+.asm_11ca10
+ ld [hli], a
+ dec b
+ jr nz, .asm_11ca10
+ pop hl
+ add hl, de
+ dec c
+ jr nz, .asm_11ca0a
+
+Function11ca19: ; 11ca19 (47:4a19)
+ hlcoord 0, 12, AttrMap
+ ld de, $14
+ ld a, $6
+ ld c, a
+.asm_11ca22
+ push hl
+ ld a, $14
+ ld b, a
+ ld a, $7
+.asm_11ca28
+ ld [hli], a
+ dec b
+ jr nz, .asm_11ca28
+ pop hl
+ add hl, de
+ dec c
+ jr nz, .asm_11ca22
+ callba ReloadMapPart
+ ret
+; 11ca38 (47:4a38)
+
+String_11ca38: ; 11ca38
+ db "とうろくちゅう", $25, "あいさつ¯ぜんぶ"
+ next "けしても よろしいですか?@"
+; 11ca57
+
+String_11ca57: ; 11ca57
+ db "はい"
+ next "いいえ@"
+; 11ca5e
+
+Function11ca5e: ; 11ca5e (47:4a5e)
+ xor a
+.asm_11ca5f
+ push af
+ call Function11ca6a
+ pop af
+ inc a
+ cp $6
+ jr nz, .asm_11ca5f
+ ret
+
+Function11ca6a: ; 11ca6a (47:4a6a)
+ ld hl, wcd36
+ ld c, a
+ ld b, $0
+rept 2
+ add hl, bc
+endr
+ ld [hl], b
+ inc hl
+ ld [hl], b
+ call Function11c95d
+ ld de, String_11c3bc
+ call PlaceString
+ ret
+
+Function11ca7f: ; 11ca7f (47:4a7f)
+ push de
+ ld de, Unknown_11cfc6
+ call Function11cfce
+ ld de, Unknown_11cfca
+ call Function11cfce
+ hlcoord 1, 14
+ pop de
+ call PlaceString
+ hlcoord 16, 8
+ ld de, String_11ca57
+ call PlaceString
+ call Function11ca01
+ ld a, $1
+ ld [wcd2a], a
+ ld hl, wcd24
+ res 4, [hl]
+ call Function11cfb5
+ ret
+
+Function11caad: ; 11caad (47:4aad)
+ ld de, String_11cb1c
+ call Function11ca7f
+
+Function11cab3: ; 11cab3 (47:4ab3)
+ ld hl, wcd2a
+ ld de, hJoypadPressed ; $ffa3
+ ld a, [de]
+ and $1
+ jr nz, .asm_11cace
+ ld a, [de]
+ and $2
+ jr nz, .asm_11caf9
+ ld a, [de]
+ and $40
+ jr nz, .asm_11cb12
+ ld a, [de]
+ and $80
+ jr nz, .asm_11cb17
+ ret
+.asm_11cace
+ call PlayClickSFX
+ ld a, [hl]
+ and a
+ jr nz, .asm_11cafc
+ ld a, [wcd35]
+ and a
+ jr z, .asm_11caf3
+ cp $ff
+ jr z, .asm_11caf3
+ ld a, $ff
+ ld [wcd35], a
+ hlcoord 1, 14
+ ld de, String_11cb31
+ call PlaceString
+ ld a, $1
+ ld [wcd2a], a
+ ret
+.asm_11caf3
+ ld hl, wJumptableIndex
+ set 7, [hl]
+ ret
+.asm_11caf9
+ call PlayClickSFX
+.asm_11cafc
+ ld hl, wcd24
+ set 4, [hl]
+ ld a, $4
+ ld [wJumptableIndex], a
+ ld a, [wcd35]
+ cp $ff
+ ret nz
+ ld a, $1
+ ld [wcd35], a
+ ret
+.asm_11cb12
+ ld a, [hl]
+ and a
+ ret z
+ dec [hl]
+ ret
+.asm_11cb17
+ ld a, [hl]
+ and a
+ ret nz
+ inc [hl]
+ ret
+; 11cb1c (47:4b1c)
+
+String_11cb1c: ; 11cb1c
+ db "あいさつ", $25, "とうろく¯ちゅうし"
+ next "しますか?@"
+; 11cb31
+
+String_11cb31: ; 11cb31
+ db "とうろくちゅう", $25, "あいさつ", $24, "ほぞん"
+ next "されません", $4a, "よろしい ですか?@"
+; 11cb52
+
+Function11cb52: ; 11cb52 (47:4b52)
+ ld hl, Unknown_11cc01
+ ld a, [MenuSelection2]
+.asm_11cb58
+ dec a
+ jr z, .asm_11cb5f
+rept 2
+ inc hl
+endr
+ jr .asm_11cb58
+.asm_11cb5f
+ ld a, [hli]
+ ld e, a
+ ld a, [hl]
+ ld d, a
+ call Function11ca7f
+
+Function11cb66: ; 11cb66 (47:4b66)
+ ld hl, wcd2a
+ ld de, hJoypadPressed ; $ffa3
+ ld a, [de]
+ and $1
+ jr nz, .asm_11cb81
+ ld a, [de]
+ and $2
+ jr nz, .asm_11cbd7
+ ld a, [de]
+ and $40
+ jr nz, .asm_11cbeb
+ ld a, [de]
+ and $80
+ jr nz, .asm_11cbf0
+ ret
+.asm_11cb81
+ ld a, [hl]
+ and a
+ jr nz, .asm_11cbd4
+ ld a, $4
+ call GetSRAMBank
+ ld hl, $a007
+ ld a, [MenuSelection2]
+ dec a
+ sla a
+ sla a
+ ld c, a
+ sla a
+ add c
+ ld c, a
+ ld b, $0
+ add hl, bc
+ ld de, wcd36
+ ld c, $c
+.asm_11cba2
+ ld a, [de]
+ ld [hli], a
+ inc de
+ dec c
+ jr nz, .asm_11cba2
+ call CloseSRAM
+ call PlayClickSFX
+ ld de, Unknown_11cfc6
+ call Function11cfce
+ ld hl, Unknown_11cc7e
+ ld a, [MenuSelection2]
+.asm_11cbba
+ dec a
+ jr z, .asm_11cbc1
+rept 2
+ inc hl
+endr
+ jr .asm_11cbba
+.asm_11cbc1
+ ld a, [hli]
+ ld e, a
+ ld a, [hl]
+ ld d, a
+ hlcoord 1, 14
+ call PlaceString
+ ld hl, wJumptableIndex
+ inc [hl]
+ inc hl
+ ld a, $10
+ ld [hl], a
+ ret
+.asm_11cbd4
+ call PlayClickSFX
+.asm_11cbd7
+ ld de, Unknown_11cfba
+ call Function11cfce
+ call Function11c38a
+ ld hl, wcd24
+ set 4, [hl]
+ ld a, $4
+ ld [wJumptableIndex], a
+ ret
+.asm_11cbeb
+ ld a, [hl]
+ and a
+ ret z
+ dec [hl]
+ ret
+.asm_11cbf0
+ ld a, [hl]
+ and a
+ ret nz
+ inc [hl]
+ ret
+
+Function11cbf5: ; 11cbf5 (47:4bf5)
+ call WaitSFX
+ ld hl, wcf64
+ dec [hl]
+ ret nz
+ dec hl
+ set 7, [hl]
+ ret
+; 11cc01 (47:4c01)
+
+Unknown_11cc01: ; 11cc01
+ dw String_11cc09
+ dw String_11cc23
+ dw String_11cc42
+ dw String_11cc60
+
+String_11cc09: ; 11cc09
+ db "じこしょうかい は"
+ next "この あいさつで いいですか?@"
+
+String_11cc23: ; 11cc23
+ db "たいせん ", $4a, "はじまるとき は"
+ next "この あいさつで いいですか?@"
+
+String_11cc42: ; 11cc42
+ db "たいせん ", $1d, "かったとき は"
+ next "この あいさつで いいですか?@"
+
+String_11cc60: ; 11cc60
+ db "たいせん ", $1d, "まけたとき は"
+ next "この あいさつで いいですか?@"
+; 11cc7e
+
+Unknown_11cc7e: ; 11cc7e
+ dw String_11cc86
+ dw String_11cc9d
+ dw String_11ccb9
+ dw String_11ccd4
+
+String_11cc86: ; 11cc86
+ db "じこしょうかい の"
+ next "あいさつ¯とうろくした!@"
+
+String_11cc9d: ; 11cc9d
+ db "たいせん ", $4a, "はじまるとき の"
+ next "あいさつ¯とうろくした!@"
+
+String_11ccb9: ; 11ccb9
+ db "たいせん ", $1d, "かったとき の"
+ next "あいさつ¯とうろくした!@"
+
+String_11ccd4: ; 11ccd4
+ db "たいせん ", $1d, "まけたとき の"
+ next "あいさつ¯とうろくした!@"
+; 11ccef
+
+Function11ccef: ; 11ccef (47:4cef)
+ ld de, Unknown_11cfc6
+ call Function11cfce
+ hlcoord 1, 14
+ ld de, String_11cd10
+ call PlaceString
+ call Function11ca19
+ call Function11cfb5
+
+Function11cd04: ; 11cd04 (47:4d04)
+ ld de, hJoypadPressed ; $ffa3
+ ld a, [de]
+ and a
+ ret z
+ ld a, $4
+ ld [wJumptableIndex], a
+ ret
+; 11cd10 (47:4d10)
+
+String_11cd10: ; 11cd10
+ db "なにか ことば¯いれてください@"
+; 11cd20
+
+Function11cd20: ; 11cd20 (47:4d20)
+ call Function11c277
+ ld de, Unknown_11cfc6
+ call Function11cfce
+ hlcoord 1, 14
+ ld a, [wcd2b]
+ ld [wcd2c], a
+ and a
+ jr nz, .asm_11cd3a
+ ld de, String_11cdc7
+ jr .asm_11cd3d
+.asm_11cd3a
+ ld de, String_11cdd9
+.asm_11cd3d
+ call PlaceString
+ hlcoord 4, 8
+ ld de, String_11cdf5
+ call PlaceString
+ call Function11cdaa
+ ld hl, wcd24
+ res 5, [hl]
+ call Function11cfb5
+
+Function11cd54: ; 11cd54 (47:4d54)
+ ld hl, wcd2c
+ ld de, hJoypadPressed ; $ffa3
+ ld a, [de]
+ and A_BUTTON
+ jr nz, .asm_11cd6f
+ ld a, [de]
+ and B_BUTTON
+ jr nz, .asm_11cd73
+ ld a, [de]
+ and D_UP
+ jr nz, .asm_11cd8b
+ ld a, [de]
+ and D_DOWN
+ jr nz, .asm_11cd94
+ ret
+
+.asm_11cd6f
+ ld a, [hl]
+ ld [wcd2b], a
+.asm_11cd73
+ ld a, [wcd2b]
+ and a
+ jr nz, .asm_11cd7d
+ ld a, $6
+ jr .asm_11cd7f
+
+.asm_11cd7d
+ ld a, $15
+.asm_11cd7f
+ ld [wJumptableIndex], a
+ ld hl, wcd24
+ set 5, [hl]
+ call PlayClickSFX
+ ret
+
+.asm_11cd8b
+ ld a, [hl]
+ and a
+ ret z
+ dec [hl]
+ ld de, String_11cdc7
+ jr .asm_11cd9b
+
+.asm_11cd94
+ ld a, [hl]
+ and a
+ ret nz
+ inc [hl]
+ ld de, String_11cdd9
+.asm_11cd9b
+ push de
+ ld de, Unknown_11cfc6
+ call Function11cfce
+ pop de
+ hlcoord 1, 14
+ call PlaceString
+ ret
+
+Function11cdaa: ; 11cdaa (47:4daa)
+ ld a, $2
+ hlcoord 0, 6, AttrMap
+ ld bc, 6 * SCREEN_WIDTH
+ call ByteFill
+ ld a, $7
+ hlcoord 0, 12, AttrMap
+ ld bc, 4 * SCREEN_WIDTH
+ call ByteFill
+ callba ReloadMapPart
+ ret
+; 11cdc7 (47:4dc7)
+
+String_11cdc7: ; 11cdc7
+; Words will be displayed by category
+ db "ことば¯しゅるいべつに"
+ next "えらべます@"
+; 11cdd9
+
+String_11cdd9: ; 11cdd9
+; Words will be displayed in alphabetical order
+ db "ことば¯アイウエォ の"
+ next "じゅんばんで ひょうじ します@"
+; 11cdf5
+
+String_11cdf5: ; 11cdf5
+ db "しゅるいべつ モード" ; Category mode
+ next "アイウエォ モード@" ; ABC mode
+; 11ce0b
+
+Function11ce0b: ; 11ce0b (47:4e0b)
+ call Function11c277
+ hlcoord 1, 7
+ ld de, String_11cf79
+ call PlaceString
+ hlcoord 1, 17
+ ld de, String_11c62a
+ call PlaceString
+ call Function11c618
+ ld hl, wcd24
+ res 2, [hl]
+ call Function11cfb5
+
+Function11ce2b: ; 11ce2b (47:4e2b)
+ ld a, [CreditsTimer]
+ sla a
+ sla a
+ ld c, a
+ ld b, 0
+ ld hl, Unknown_11ceb9
+ add hl, bc
+
+ ld de, hJoypadPressed ; $ffa3
+ ld a, [de]
+ and START
+ jr nz, .start
+ ld a, [de]
+ and SELECT
+ jr nz, .select
+ ld a, [de]
+ and A_BUTTON
+ jr nz, .a
+ ld a, [de]
+ and B_BUTTON
+ jr nz, .b
+
+ ld de, hJoyLast
+ ld a, [de]
+ and D_UP
+ jr nz, .up
+ ld a, [de]
+ and D_DOWN
+ jr nz, .down
+ ld a, [de]
+ and D_LEFT
+ jr nz, .left
+ ld a, [de]
+ and D_RIGHT
+ jr nz, .right
+
+ ret
+
+.a
+ ld a, [CreditsTimer]
+ cp NUM_KANA
+ jr c, .place
+ sub NUM_KANA
+ jr z, .asm_11cea4
+ dec a
+ jr z, .asm_11ce96
+ jr .b
+
+.start
+ ld hl, wcd24
+ set 0, [hl]
+ ld a, $8
+ ld [BGMapBuffer], a ; wcd20 (aliases: CreditsPos)
+.b
+ ld a, $4
+ jr .load
+
+.select
+ ld a, [wcd2b]
+ xor $1
+ ld [wcd2b], a
+ ld a, $6
+ jr .load
+
+.place
+ ld a, $8
+ jr .load
+
+.asm_11ce96
+ ld a, $13
+.load
+ ld [wJumptableIndex], a
+ ld hl, wcd24
+ set 2, [hl]
+ call PlayClickSFX
+ ret
+
+.asm_11cea4
+ ld a, [BGMapBuffer] ; wcd20 (aliases: CreditsPos)
+ call Function11ca6a
+ call PlayClickSFX
+ ret
+
+.left
+ inc hl
+.down
+ inc hl
+.right
+ inc hl
+.up
+ ld a, [hl]
+ cp $ff
+ ret z
+ ld [CreditsTimer], a
+ ret
+; 11ceb9 (47:4eb9)
+
+Unknown_11ceb9: ; 11ceb9
+ ; up left down right
+ db $ff, $01, $05, $ff
+ db $ff, $02, $06, $00
+ db $ff, $03, $07, $01
+ db $ff, $04, $08, $02
+ db $ff, $14, $09, $03
+ db $00, $06, $0a, $ff
+ db $01, $07, $0b, $05
+ db $02, $08, $0c, $06
+ db $03, $09, $0d, $07
+ db $04, $19, $0e, $08
+ db $05, $0b, $0f, $ff
+ db $06, $0c, $10, $0a
+ db $07, $0d, $11, $0b
+ db $08, $0e, $12, $0c
+ db $09, $1e, $13, $0d
+ db $0a, $10, $2d, $ff
+ db $0b, $11, $2d, $0f
+ db $0c, $12, $2d, $10
+ db $0d, $13, $2d, $11
+ db $0e, $26, $2d, $12
+ db $ff, $15, $19, $04
+ db $ff, $16, $1a, $14
+ db $ff, $17, $1b, $15
+ db $ff, $18, $1c, $16
+ db $ff, $23, $1d, $17
+ db $14, $1a, $1e, $09
+ db $15, $1b, $1f, $19
+ db $16, $1c, $20, $1a
+ db $17, $1d, $21, $1b
+ db $18, $2b, $22, $1c
+ db $19, $1f, $26, $0e
+ db $1a, $20, $27, $1e
+ db $1b, $21, $28, $1f
+ db $1c, $22, $29, $20
+ db $1d, $2c, $2a, $21
+ db $ff, $24, $2b, $18
+ db $ff, $25, $2b, $23
+ db $ff, $ff, $2b, $24
+ db $1e, $27, $2e, $13
+ db $1f, $28, $2e, $26
+ db $20, $29, $2e, $27
+ db $21, $2a, $2e, $28
+ db $22, $ff, $2e, $29
+ db $23, $ff, $2c, $1d
+ db $2b, $ff, $2f, $22
+ db $0f, $2e, $ff, $ff
+ db $26, $2f, $ff, $2d
+ db $2c, $ff, $ff, $2e
+; 11cf79
+
+String_11cf79: ; 11cf79
+; Hiragana table
+ db "あいうえお なにぬねの や ゆ よ"
+ next "かきくけこ はひふへほ わ"
+ next "さしすせそ まみむめも そのた"
+ next "たちつてと らりるれろ"
+ db "@"
+; 11cfb5
+
+Function11cfb5: ; 11cfb5 (47:4fb5)
+ ld hl, wJumptableIndex
+ inc [hl]
+ ret
+; 11cfba (47:4fba)
+
+Unknown_11cfba:
+ db 0, 0 ; start coords
+ db 20, 6 ; end coords
+
+Unknown_11cfbe:
+ db 0, 14 ; start coords
+ db 20, 4 ; end coords
+
+Unknown_11cfc2:
+ db 0, 6 ; start coords
+ db 20, 10 ; end coords
+
+Unknown_11cfc6:
+ db 0, 12 ; start coords
+ db 20, 6 ; end coords
+
+Unknown_11cfca:
+ db 14, 7 ; start coords
+ db 6, 5 ; end coords
+; 11cfce
+
+Function11cfce: ; 11cfce (47:4fce)
+ hlcoord 0, 0
+ ld bc, $14
+ ld a, [de]
+ inc de
+ push af
+ ld a, [de]
+ inc de
+ and a
+.asm_11cfda
+ jr z, .asm_11cfe0
+ add hl, bc
+ dec a
+ jr .asm_11cfda
+.asm_11cfe0
+ pop af
+ ld c, a
+ ld b, 0
+ add hl, bc
+ push hl
+ ld a, $79
+ ld [hli], a
+ ld a, [de]
+ inc de
+rept 2
+ dec a
+endr
+ jr z, .asm_11cff6
+ ld c, a
+ ld a, $7a
+.asm_11cff2
+ ld [hli], a
+ dec c
+ jr nz, .asm_11cff2
+.asm_11cff6
+ ld a, $7b
+ ld [hl], a
+ pop hl
+ ld bc, $14
+ add hl, bc
+ ld a, [de]
+ dec de
+rept 2
+ dec a
+endr
+ jr z, .asm_11d022
+ ld b, a
+.asm_11d005
+ push hl
+ ld a, $7c
+ ld [hli], a
+ ld a, [de]
+rept 2
+ dec a
+endr
+ jr z, .asm_11d015
+ ld c, a
+ ld a, $7f
+.asm_11d011
+ ld [hli], a
+ dec c
+ jr nz, .asm_11d011
+.asm_11d015
+ ld a, $7c
+ ld [hl], a
+ pop hl
+ push bc
+ ld bc, $14
+ add hl, bc
+ pop bc
+ dec b
+ jr nz, .asm_11d005
+.asm_11d022
+ ld a, $7d
+ ld [hli], a
+ ld a, [de]
+rept 2
+ dec a
+endr
+ jr z, .asm_11d031
+ ld c, a
+ ld a, $7a
+.asm_11d02d
+ ld [hli], a
+ dec c
+ jr nz, .asm_11d02d
+.asm_11d031
+ ld a, $7e
+ ld [hl], a
+ ret
+
+Function11d035: ; 11d035 (47:5035)
+ hlcoord 0, 0
+ ld bc, $14
+ ld a, [de]
+ inc de
+ push af
+ ld a, [de]
+ inc de
+ and a
+.asm_11d041
+ jr z, .asm_11d047
+ add hl, bc
+ dec a
+ jr .asm_11d041
+.asm_11d047
+ pop af
+ ld c, a
+ ld b, $0
+ add hl, bc
+ push hl
+ ld a, $79
+ ld [hl], a
+ pop hl
+ push hl
+ ld a, [de]
+ dec a
+ inc de
+ ld c, a
+ add hl, bc
+ ld a, $7b
+ ld [hl], a
+ call Function11d0ac
+ ld a, $7e
+ ld [hl], a
+ pop hl
+ push hl
+ call Function11d0ac
+ ld a, $7d
+ ld [hl], a
+ pop hl
+ push hl
+ inc hl
+ push hl
+ call Function11d0ac
+ pop bc
+ dec de
+ ld a, [de]
+ cp $2
+ jr z, .asm_11d082
+rept 2
+ dec a
+endr
+.asm_11d078
+ push af
+ ld a, $7a
+ ld [hli], a
+ ld [bc], a
+ inc bc
+ pop af
+ dec a
+ jr nz, .asm_11d078
+.asm_11d082
+ pop hl
+ ld bc, $14
+ add hl, bc
+ push hl
+ ld a, [de]
+ dec a
+ ld c, a
+ ld b, $0
+ add hl, bc
+ pop bc
+ inc de
+ ld a, [de]
+ cp $2
+ ret z
+ push bc
+rept 2
+ dec a
+endr
+ ld c, a
+ ld b, a
+ ld de, $14
+.asm_11d09c
+ ld a, $7c
+ ld [hl], a
+ add hl, de
+ dec c
+ jr nz, .asm_11d09c
+ pop hl
+.asm_11d0a4
+ ld a, $7c
+ ld [hl], a
+ add hl, de
+ dec b
+ jr nz, .asm_11d0a4
+ ret
+
+Function11d0ac: ; 11d0ac (47:50ac)
+ ld a, [de]
+ dec a
+ ld bc, $14
+.asm_11d0b1
+ add hl, bc
+ dec a
+ jr nz, .asm_11d0b1
+ ret
+
+Function11d0b6: ; 11d0b6 (47:50b6)
+ ld hl, $c
+ add hl, bc
+ ld a, [hl]
+ ld e, a
+ ld d, 0
+ ld hl, Jumptable_11d0c7
+rept 2
+ add hl, de
+endr
+ ld a, [hli]
+ ld h, [hl]
+ ld l, a
+ jp [hl]
+
+Jumptable_11d0c7: ; 11d0c7 (47:50c7)
+ dw Function11d0dd
+ dw Function11d0e9
+ dw Function11d0f5
+ dw Function11d10f
+ dw Function11d134
+ dw Function11d145
+ dw Function11d156
+ dw Function11d175
+ dw Function11d1d7
+ dw Function11d1d1
+ dw Function11d1fc
+
+
+Function11d0dd: ; 11d0dd (47:50dd)
+ ld a, [BGMapBuffer] ; wcd20 (aliases: CreditsPos)
+ sla a
+ ld hl, Unknown_11d208
+ ld e, $1
+ jr asm_11d11e
+
+Function11d0e9: ; 11d0e9 (47:50e9)
+ ld a, [wcd21]
+ sla a
+ ld hl, Unknown_11d21a
+ ld e, $2
+ jr asm_11d11e
+
+Function11d0f5: ; 11d0f5 (47:50f5)
+ ld hl, Unknown_11d2be
+ ld a, [CreditsTimer]
+ ld e, a
+ ld d, $0
+ add hl, de
+ ld a, [hl]
+ call Function3b3c
+ ld a, [CreditsTimer]
+ sla a
+ ld hl, Unknown_11d23e
+ ld e, $4
+ jr asm_11d11e
+
+Function11d10f: ; 11d10f (47:510f)
+ ld a, $27
+ call Function3b3c
+ ld a, [wcd25]
+ sla a
+ ld hl, Unknown_11d29e
+ ld e, $8
+
+asm_11d11e: ; 11d11e (47:511e)
+ push de
+ ld e, a
+ ld d, $0
+ add hl, de
+ push hl
+ pop de
+ ld hl, $4
+ add hl, bc
+ ld a, [de]
+ inc de
+ ld [hli], a
+ ld a, [de]
+ ld [hl], a
+ pop de
+ ld a, e
+ call Function11d2ee
+ ret
+
+Function11d134: ; 11d134 (47:5134)
+ ld a, $27
+ call Function3b3c
+ ld a, [wcd2a]
+ sla a
+ ld hl, Unknown_11d2b6
+ ld e, $10
+ jr asm_11d11e
+
+Function11d145: ; 11d145 (47:5145)
+ ld a, $27
+ call Function3b3c
+ ld a, [wcd2c]
+ sla a
+ ld hl, Unknown_11d2ba
+ ld e, $20
+ jr asm_11d11e
+
+Function11d156: ; 11d156 (47:5156)
+ ld a, $2a
+ call Function3b3c
+ ld a, [wcd4a]
+ sla a
+ sla a
+ sla a
+ add $18
+ ld hl, $4
+ add hl, bc
+ ld [hli], a
+ ld a, $30
+ ld [hl], a
+ ld a, $1
+ ld e, a
+ call Function11d2ee
+ ret
+
+Function11d175: ; 11d175 (47:5175)
+ ld a, [wcd4d]
+ cp $4
+ jr z, .asm_11d180
+ ld a, $28
+ jr .asm_11d182
+.asm_11d180
+ ld a, $26
+.asm_11d182
+ call Function3b3c
+ ld a, [wcd4d]
+ cp $4
+ jr z, .asm_11d1b1
+ ld a, [wcd4c]
+ sla a
+ sla a
+ sla a
+ add $20
+ ld hl, $4
+ add hl, bc
+ ld [hli], a
+ ld a, [wcd4d]
+ sla a
+ sla a
+ sla a
+ sla a
+ add $48
+ ld [hl], a
+ ld a, $2
+ ld e, a
+ call Function11d2ee
+ ret
+.asm_11d1b1
+ ld a, [wcd4c]
+ sla a
+ sla a
+ sla a
+ ld e, a
+ sla a
+ sla a
+ add e
+ add $18
+ ld hl, $4
+ add hl, bc
+ ld [hli], a
+ ld a, $8a
+ ld [hl], a
+ ld a, $2
+ ld e, a
+ call Function11d2ee
+ ret
+
+Function11d1d1: ; 11d1d1 (47:51d1)
+ ld d, $98
+ ld a, $2c
+ jr asm_11d1db
+
+Function11d1d7: ; 11d1d7 (47:51d7)
+ ld d, $10
+ ld a, $2b
+
+asm_11d1db: ; 11d1db (47:51db)
+ push de
+ call Function3b3c
+ ld a, [wcd4a]
+ sla a
+ sla a
+ sla a
+ ld e, a
+ sla a
+ add e
+ add $40
+ ld hl, $5
+ add hl, bc
+ ld [hld], a
+ pop af
+ ld [hl], a
+ ld a, $4
+ ld e, a
+ call Function11d2ee
+ ret
+
+Function11d1fc: ; 11d1fc (47:51fc)
+ ld a, $26
+ call Function3b3c
+ ld a, $8
+ ld e, a
+ call Function11d2ee
+ ret
+; 11d208 (47:5208)
+
+Unknown_11d208: ; 11d208
+ db $0d, $1a
+ db $3d, $1a
+ db $6d, $1a
+ db $0d, $2a
+ db $3d, $2a
+ db $6d, $2a
+ db $0d, $8a
+ db $3d, $8a
+ db $6d, $8a
+
+Unknown_11d21a: ; 11d21a
+ db $0d, $42
+ db $3d, $42
+ db $6d, $42
+ db $0d, $52
+ db $3d, $52
+ db $6d, $52
+ db $0d, $62
+ db $3d, $62
+ db $6d, $62
+ db $0d, $72
+ db $3d, $72
+ db $6d, $72
+ db $0d, $82
+ db $3d, $82
+ db $6d, $82
+ db $0d, $92
+ db $3d, $92
+ db $6d, $92
+
+Unknown_11d23e: ; 11d23e
+ db $10, $48
+ db $18, $48
+ db $20, $48
+ db $28, $48
+ db $30, $48
+ db $10, $58
+ db $18, $58
+ db $20, $58
+ db $28, $58
+ db $30, $58
+ db $10, $68
+ db $18, $68
+ db $20, $68
+ db $28, $68
+ db $30, $68
+ db $10, $78
+ db $18, $78
+ db $20, $78
+ db $28, $78
+ db $30, $78
+ db $40, $48
+ db $48, $48
+ db $50, $48
+ db $58, $48
+ db $60, $48
+ db $40, $58
+ db $48, $58
+ db $50, $58
+ db $58, $58
+ db $60, $58
+ db $40, $68
+ db $48, $68
+ db $50, $68
+ db $58, $68
+ db $60, $68
+ db $70, $48
+ db $80, $48
+ db $90, $48
+ db $40, $78
+ db $48, $78
+ db $50, $78
+ db $58, $78
+ db $60, $78
+ db $70, $58
+ db $70, $68
+ db $0d, $92
+ db $3d, $92
+ db $6d, $92
+
+Unknown_11d29e: ; 11d29e
+ db $10, $50
+ db $40, $50
+ db $70, $50
+ db $10, $60
+ db $40, $60
+ db $70, $60
+ db $10, $70
+ db $40, $70
+ db $70, $70
+ db $10, $80
+ db $40, $80
+ db $70, $80
+
+Unknown_11d2b6: ; 11d2b6
+ db $80, $50
+ db $80, $60
+
+Unknown_11d2ba: ; 11d2ba
+ db $20, $50
+ db $20, $60
+
+Unknown_11d2be: ; 11d2be
+ db $28, $28
+ db $28, $28
+ db $28, $28
+ db $28, $28
+ db $28, $28
+ db $28, $28
+ db $28, $28
+ db $28, $28
+ db $28, $28
+ db $28, $28
+ db $28, $28
+ db $28, $28
+ db $28, $28
+ db $28, $28
+ db $28, $28
+ db $28, $28
+ db $28, $28
+ db $28, $28
+ db $28, $28
+ db $28, $28
+ db $28, $28
+ db $28, $28
+ db $29, $26
+ db $26, $26
+
+Function11d2ee: ; 11d2ee (47:52ee)
+ ld hl, wcd24
+ and [hl]
+ jr nz, .asm_11d316
+ ld a, e
+ ld hl, wcd23
+ and [hl]
+ jr z, .asm_11d30f
+ ld hl, $e
+ add hl, bc
+ ld a, [hl]
+ and a
+ jr z, .asm_11d305
+ dec [hl]
+ ret
+.asm_11d305
+ ld a, $0
+ ld [hld], a
+ ld a, $1
+ xor [hl]
+ ld [hl], a
+ and a
+ jr nz, .asm_11d316
+.asm_11d30f
+ ld hl, $7
+ add hl, bc
+ xor a
+ ld [hl], a
+ ret
+.asm_11d316
+ ld hl, $5
+ add hl, bc
+ ld a, $b0
+ sub [hl]
+ ld hl, $7
+ add hl, bc
+ ld [hl], a
+ ret
+
+Function11d323: ; 11d323
+ ld a, [rSVBK]
+ push af
+ ld a, $5
+ ld [rSVBK], a
+ ld hl, Palette_11d33a
+ ld de, UnknBGPals
+ ld bc, 16 * 8
+ call CopyBytes
+ pop af
+ ld [rSVBK], a
+ ret
+; 11d33a
+
+Palette_11d33a:
+ RGB 31, 31, 31
+ RGB 00, 00, 00
+ RGB 00, 00, 00
+ RGB 00, 00, 00
+
+ RGB 31, 16, 31
+ RGB 00, 00, 00
+ RGB 00, 00, 00
+ RGB 00, 00, 00
+
+ RGB 23, 17, 31
+ RGB 00, 00, 00
+ RGB 00, 00, 00
+ RGB 00, 00, 00
+
+ RGB 31, 31, 31
+ RGB 00, 00, 00
+ RGB 00, 00, 00
+ RGB 00, 00, 00
+
+ RGB 31, 31, 31
+ RGB 00, 00, 00
+ RGB 00, 00, 00
+ RGB 00, 00, 00
+
+ RGB 31, 31, 31
+ RGB 00, 00, 00
+ RGB 00, 00, 00
+ RGB 00, 00, 00
+
+ RGB 31, 31, 31
+ RGB 00, 00, 00
+ RGB 00, 00, 00
+ RGB 00, 00, 00
+
+ RGB 31, 31, 31
+ RGB 00, 00, 00
+ RGB 00, 00, 00
+ RGB 00, 00, 00
+
+ RGB 00, 00, 00
+ RGB 00, 00, 00
+ RGB 00, 00, 00
+ RGB 00, 00, 00
+
+ RGB 00, 00, 00
+ RGB 00, 00, 00
+ RGB 00, 00, 00
+ RGB 00, 00, 00
+
+ RGB 00, 00, 00
+ RGB 00, 00, 00
+ RGB 00, 00, 00
+ RGB 00, 00, 00
+
+ RGB 00, 00, 00
+ RGB 00, 00, 00
+ RGB 00, 00, 00
+ RGB 00, 00, 00
+
+ RGB 00, 00, 00
+ RGB 00, 00, 00
+ RGB 00, 00, 00
+ RGB 00, 00, 00
+
+ RGB 00, 00, 00
+ RGB 00, 00, 00
+ RGB 00, 00, 00
+ RGB 00, 00, 00
+
+ RGB 00, 00, 00
+ RGB 00, 00, 00
+ RGB 00, 00, 00
+ RGB 00, 00, 00
+
+ RGB 00, 00, 00
+ RGB 00, 00, 00
+ RGB 00, 00, 00
+ RGB 00, 00, 00
+
+; 11d3ba
+
+Function11d3ba: ; 11d3ba
+ ld a, [rSVBK]
+ push af
+ ld hl, $c648
+ ld a, w5_d800 % $100
+ ld [wcd2d], a
+ ld [hli], a
+ ld a, w5_d800 / $100
+ ld [wcd2e], a
+ ld [hl], a
+
+ ld a, SortedPokemon % $100
+ ld [wcd2f], a
+ ld a, SortedPokemon / $100
+ ld [wcd30], a
+
+ ld a, $c6a8 % $100
+ ld [wcd31], a
+ ld a, $c6a8 / $100
+ ld [wcd32], a
+
+ ld a, $c64a % $100
+ ld [wcd33], a
+ ld a, $c64a / $100
+ ld [wcd34], a
+
+ ld hl, Unknown_11f23c
+ ld a, (Unknown_11f23cEnd - Unknown_11f23c) / 4
+
+.MasterLoop: ; 11d3ef
+ push af
+; read row
+ ld a, [hli]
+ ld e, a
+ ld a, [hli]
+ ld d, a
+ ld a, [hli]
+ ld c, a
+ ld a, [hli]
+ ld b, a
+; save the pointer to the next row
+ push hl
+; add de to hl
+ ld hl, w3_d000
+ add hl, de
+; recover de from wcd2d (default: w5_d800)
+ ld a, [wcd2d]
+ ld e, a
+ ld a, [wcd2e]
+ ld d, a
+; save bc for later
+ push bc
+
+.loop1
+; copy 2*bc bytes from 3:hl to 5:de
+ ld a, $3
+ ld [rSVBK], a
+ ld a, [hli]
+ push af
+ ld a, $5
+ ld [rSVBK], a
+ pop af
+ ld [de], a
+ inc de
+
+ ld a, $3
+ ld [rSVBK], a
+ ld a, [hli]
+ push af
+ ld a, $5
+ ld [rSVBK], a
+ pop af
+ ld [de], a
+ inc de
+
+ dec bc
+ ld a, c
+ or b
+ jr nz, .loop1
+; recover the pointer from wcd2f (default: SortedPokemon)
+ ld a, [wcd2f]
+ ld l, a
+ ld a, [wcd30]
+ ld h, a
+; copy the pointer from [hl] to bc
+ ld a, [hli]
+ ld c, a
+ ld a, [hli]
+ ld b, a
+; store the pointer to the next pointer back in wcd2f
+ ld a, l
+ ld [wcd2f], a
+ ld a, h
+ ld [wcd30], a
+; push pop that pointer to hl
+ push bc
+ pop hl
+ ld c, $0
+.loop2
+; Have you seen this Pokemon?
+ ld a, [hl]
+ cp $ff
+ jr z, .done
+ call .CheckSeenMon
+ jr nz, .next
+; If not, skip it.
+ inc hl
+ jr .loop2
+
+.next
+; If so, append it to the list at 5:de, and increase the count.
+ ld a, [hli]
+ ld [de], a
+ inc de
+ xor a
+ ld [de], a
+ inc de
+ inc c
+ jr .loop2
+
+.done
+; Remember the original value of bc from the table?
+; Well, the stack remembers it, and it's popping it to hl.
+ pop hl
+; Add the number of seen Pokemon from the list.
+ ld b, $0
+ add hl, bc
+; Push pop to bc.
+ push hl
+ pop bc
+; Load the pointer from [wcd31] (default: $c6a8)
+ ld a, [wcd31]
+ ld l, a
+ ld a, [wcd32]
+ ld h, a
+; Save the quantity from bc to [hl]
+ ld a, c
+ ld [hli], a
+ ld a, b
+ ld [hli], a
+; Save the new value of hl to [wcd31]
+ ld a, l
+ ld [wcd31], a
+ ld a, h
+ ld [wcd32], a
+; Recover the pointer from [wcd33] (default: $c64a)
+ ld a, [wcd33]
+ ld l, a
+ ld a, [wcd34]
+ ld h, a
+; Save the current value of de there
+ ld a, e
+ ld [wcd2d], a
+ ld [hli], a
+ ld a, d
+ ld [wcd2e], a
+; Save the new value of hl back to [wcd33]
+ ld [hli], a
+ ld a, l
+ ld [wcd33], a
+ ld a, h
+ ld [wcd34], a
+; Next row
+ pop hl
+ pop af
+ dec a
+ jr z, .ExitMasterLoop
+ jp .MasterLoop
+
+.ExitMasterLoop
+ pop af
+ ld [rSVBK], a
+ ret
+; 11d493
+
+.CheckSeenMon: ; 11d493
+ push hl
+ push bc
+ push de
+ dec a
+ ld hl, rSVBK
+ ld e, $1
+ ld [hl], e
+ call CheckSeenMon
+ ld hl, rSVBK
+ ld e, $5
+ ld [hl], e
+ pop de
+ pop bc
+ pop hl
+ ret
+; 11d4aa
+
+Function11d4aa: ; 11d4aa
+ ld a, [rSVBK]
+ push af
+ ld a, $3
+ ld [rSVBK], a
+ ld hl, Unknown_11daac
+ ld bc, Unknown_11f220
+ xor a
+ ld [wcd2d], a
+ inc a
+ ld [wcd2e], a
+ ld a, $e
+.asm_11d4c1
+ push af
+ ld a, [hli]
+ ld e, a
+ ld a, [hli]
+ ld d, a
+ push hl
+ ld hl, $0005
+ add hl, de
+ ld a, [bc]
+rept 2
+ inc bc
+endr
+ push bc
+.asm_11d4cf
+ push af
+ push hl
+ ld a, [hli]
+ ld e, a
+ ld a, [hl]
+ ld d, a
+ ld hl, wd000
+ add hl, de
+ ld a, [wcd2d]
+ ld [hli], a
+ inc a
+ ld [wcd2d], a
+ ld a, [wcd2e]
+ ld [hl], a
+ pop hl
+ ld de, $0008
+ add hl, de
+ pop af
+ dec a
+ jr nz, .asm_11d4cf
+ ld hl, wcd2d
+ xor a
+ ld [hli], a
+ inc [hl]
+ pop bc
+ pop hl
+ pop af
+ dec a
+ jr nz, .asm_11d4c1
+ pop af
+ ld [rSVBK], a
+ ret
+; 11d4fe
+
+
+SortedPokemon:
+; Pokemon sorted by kana.
+; Notably, Rhydon is missing.
+
+ dw .a
+ dw .i
+ dw .u
+ dw .e
+ dw .o
+ dw .ka_ga
+ dw .ki_gi
+ dw .ku_gu
+ dw .ke_ge
+ dw .ko_go
+ dw .sa_za
+ dw .shi_ji
+ dw .su_zu
+ dw .se_ze
+ dw .so_zo
+ dw .ta_da
+ dw .chi_dhi
+ dw .tsu_du
+ dw .te_de
+ dw .to_do
+ dw .na
+ dw .ni
+ dw .nu
+ dw .ne
+ dw .no
+ dw .ha_ba_pa
+ dw .hi_bi_pi
+ dw .fu_bu_pu
+ dw .he_be_pe
+ dw .ho_bo_po
+ dw .ma
+ dw .mi
+ dw .mu
+ dw .me
+ dw .mo
+ dw .ya
+ dw .yu
+ dw .yo
+ dw .ra
+ dw .ri
+ dw .ru
+ dw .re
+ dw .ro
+ dw .wa
+ dw .end
+
+.a: db EKANS, ARBOK, SEAKING, ARIADOS, CROCONAW, UNOWN
+ db -1
+.i: db EEVEE, GEODUDE, SPINARAK, PILOSWINE, ONIX
+ db -1
+.u: db ARCANINE, SUDOWOODO, WEEPINBELL, VICTREEBEL, WOOPER, SWINUB
+ db -1
+.e: db SKARMORY, AIPOM, ESPEON, HITMONCHAN, ELEKID, ELECTABUZZ, ENTEI
+ db -1
+.o: db FERALIGATR, FURRET, OCTILLERY, PRIMEAPE, SENTRET, STANTLER, SPEAROW, FEAROW, OMASTAR, OMANYTE
+ db -1
+.ka_ga: db GROWLITHE, MACHAMP, DRAGONITE, PINSIR, SNORLAX, KABUTO, KABUTOPS, HITMONTOP, WARTORTLE, BLASTOISE, FARFETCH_D, CUBONE, MAROWAK, KANGASKHAN
+ db -1
+.ki_gi: db SUNFLORA, CATERPIE, GYARADOS, RAPIDASH, NINETALES, GIRAFARIG, BELLOSSOM, KINGDRA, KINGLER
+ db -1
+.ku_gu: db GLOOM, PINECO, GLIGAR, KRABBY, GRANBULL, CROBAT
+ db -1
+.ke_ge: db ABRA, GENGAR, TAUROS
+ db -1
+.ko_go: db MAGIKARP, MAGNEMITE, GASTLY, HAUNTER, MACHOKE, KAKUNA, PSYDUCK, PHANPY, RATTATA, GOLDUCK, GOLBAT, GOLEM, GRAVELER, VENONAT
+ db -1
+.sa_za: db RHYHORN, PUPITAR, CORSOLA, HITMONLEE, ZAPDOS, JOLTEON, SANDSHREW, SANDSLASH ; RHYDON should lead this list
+ db -1
+.shi_ji: db SEADRA, SHELLDER, VAPOREON, DEWGONG
+ db -1
+.su_zu: db SUICUNE, STARMIE, SCYTHER, ZUBAT, BEEDRILL, HYPNO, DROWZEE
+ db -1
+.se_ze: db SQUIRTLE, CELEBI
+ db -1
+.so_zo: db WOBBUFFET
+ db -1
+.ta_da: db DUGTRIO, HORSEA, EXEGGCUTE
+ db -1
+.chi_dhi: db CHIKORITA, CHINCHOU
+ db -1
+.tsu_du: db SHUCKLE
+ db -1
+.te_de: db DIGLETT, REMORAID, DELIBIRD, HOUNDOUR, AMPHAROS
+ db -1
+.to_do: db DODUO, DODRIO, SMEARGLE, KOFFING, TENTACRUEL, TOGETIC, TOGEPI, GOLDEEN, METAPOD, DONPHAN
+ db -1
+.na: db ODDISH, EXEGGUTOR
+ db -1
+.ni: db NIDOKING, NIDOQUEEN, NIDORAN_M, NIDORAN_F, NIDORINA, NIDORINO, MEOWTH, SNEASEL, POLIWHIRL, POLITOED, POLIWRATH, POLIWAG
+ db -1
+.nu: db QUAGSIRE
+ db -1
+.ne: db NATU, XATU
+ db -1
+.no: db DUNSPARCE
+ db -1
+.ha_ba_pa: db SEEL, STEELIX, TYPHLOSION, DRAGONAIR, BUTTERFREE, SCIZOR, HOPPIP, BLISSEY, PARAS, PARASECT, QWILFISH, MR__MIME, TYROGUE, CLOYSTER, TYRANITAR
+ db -1
+.hi_bi_pi: db CLEFFA, WEEDLE, PIKACHU, CLEFABLE, PIDGEOT, PIDGEOTTO, PICHU, CLEFAIRY, CHARMANDER, STARYU, CYNDAQUIL, SUNKERN, TEDDIURSA, VOLTORB
+ db -1
+.fu_bu_pu: db MOLTRES, FLAREON, ALAKAZAM, MAGMAR, FORRETRESS, WIGGLYTUFF, IVYSAUR, BULBASAUR, VENUSAUR, AERODACTYL, MAGBY, IGGLYBUFF, UMBREON, ARTICUNO, JIGGLYPUFF, SNUBBULL
+ db -1
+.he_be_pe: db BAYLEEF, GRIMER, MUK, HERACROSS, HOUNDOOM, PERSIAN, LICKITUNG
+ db -1
+.ho_bo_po: db HO_OH, HOOTHOOT, PIDGEY, PONYTA, SKIPLOOM, PORYGON, PORYGON2
+ db -1
+.ma: db MAGCARGO, SLUGMA, QUILAVA, BELLSPROUT, WEEZING, MARILL, AZUMARILL, ELECTRODE, MANKEY, MANTINE
+ db -1
+.mi: db DRATINI, MEW, MEWTWO, MILTANK
+ db -1
+.mu: db MISDREAVUS, SMOOCHUM
+ db -1
+.me: db MEGANIUM, DITTO, TENTACOOL, MAREEP
+ db -1
+.mo: db FLAAFFY, VENOMOTH, TANGELA
+ db -1
+.ya: db SLOWKING, SLOWBRO, SLOWPOKE, MURKROW, YANMA
+ db -1
+.yu: db KADABRA
+ db -1
+.yo: db LARVITAR, NOCTOWL
+ db -1
+.ra: db RAIKOU, RAICHU, CHANSEY, RATICATE, LAPRAS, VILEPLUME, LANTURN
+ db -1
+.ri: db CHARMELEON, CHARIZARD, URSARING
+ db -1
+.ru: db JYNX, LUGIA
+ db -1
+.re: db MAGNETON, LEDIAN, LEDYBA
+ db -1
+.ro: db VULPIX
+ db -1
+.wa: db JUMPLUFF, TOTODILE, MACHOP
+.end: db -1
+; 11d67e
+
+GFX_11d67e:
+INCBIN "gfx/pokedex/select_start.2bpp"
+; 11d6de
+
+LZ_11d6de:
+INCBIN "gfx/pokedex/slowpoke.2bpp.lz"
+; 11da52
+
+Strings_11da52: ; 11da52
+; Fixed message categories
+ db "ポケモン@@"
+ db "タイプ@@@"
+ db "あいさつ@@"
+ db "ひと@@@@"
+ db "バトル@@@"
+ db "こえ@@@@"
+ db "かいわ@@@"
+ db "きもち@@@"
+ db "じょうたい@"
+ db "せいかつ@@"
+ db "しゅみ@@@"
+ db "こうどう@@"
+ db "じかん@@@"
+ db "むすび@@@"
+ db "あれこれ@@"
+; 11daac
+
+Unknown_11daac: ; 11daac
+ dw .Types
+ dw .Greetings
+ dw .People
+ dw .Battle
+ dw .Exclamations
+ dw .Conversation
+ dw .Feelings
+ dw .Conditions
+ dw .Life
+ dw .Hobbies
+ dw .Actions
+ dw .Time
+ dw .Farewells
+ dw .ThisAndThat
+
+.Types: ; 11dac8
+ db "あく@@@", $26, $0, $0
+ db "いわ@@@", $aa, $0, $0
+ db "エスパー@", $da, $0, $0
+ db "かくとう@", $4e, $1, $0
+ db "くさ@@@", $ba, $1, $0
+ db "ゴースト@", $e4, $1, $0
+ db "こおり@@", $e6, $1, $0
+ db "じめん@@", $68, $2, $0
+ db "タイプ@@", $e8, $2, $0
+ db "でんき@@", $8e, $3, $0
+ db "どく@@@", $ae, $3, $0
+ db "ドラゴン@", $bc, $3, $0
+ db "ノーマル@", $22, $4, $0
+ db "はがね@@", $36, $4, $0
+ db "ひこう@@", $5e, $4, $0
+ db "ほのお@@", $b2, $4, $0
+ db "みず@@@", $f4, $4, $0
+ db "むし@@@", $12, $5, $0
+
+.Greetings: ; 11db58
+ db "ありがと@", $58, $0, $0
+ db "ありがとう", $5a, $0, $0
+ db "いくぜ!@", $80, $0, $0
+ db "いくよ!@", $82, $0, $0
+ db "いくわよ!", $84, $0, $0
+ db "いやー@@", $a6, $0, $0
+ db "おっす@@", $a, $1, $0
+ db "おはつです", $22, $1, $0
+ db "おめでとう", $2a, $1, $0
+ db "ごめん@@", $f8, $1, $0
+ db "ごめんよ@", $fa, $1, $0
+ db "こらっ@@", $fc, $1, $0
+ db "こんちは!", $a, $2, $0
+ db "こんにちは", $10, $2, $0
+ db "さようなら", $28, $2, $0
+ db "サンキュー", $2e, $2, $0
+ db "さんじょう", $30, $2, $0
+ db "しっけい@", $48, $2, $0
+ db "しつれい@", $4c, $2, $0
+ db "じゃーね@", $6c, $2, $0
+ db "すいません", $8c, $2, $0
+ db "それじゃ@", $ca, $2, $0
+ db "どうも@@", $a6, $3, $0
+ db "なんじゃ@", $ee, $3, $0
+ db "ハーイ@@", $2c, $4, $0
+ db "はいはい@", $32, $4, $0
+ db "バイバイ@", $34, $4, $0
+ db "へイ@@@", $8a, $4, $0
+ db "またね@@", $de, $4, $0
+ db "もしもし@", $32, $5, $0
+ db "やあ@@@", $3e, $5, $0
+ db "やっほー@", $4e, $5, $0
+ db "よう@@@", $62, $5, $0
+ db "ようこそ@", $64, $5, $0
+ db "よろしく@", $80, $5, $0
+ db "らっしゃい", $94, $5, $0
+
+.People: ; 11dc78
+ db "あいて@@", $1c, $0, $0
+ db "あたし@@", $36, $0, $0
+ db "あなた@@", $40, $0, $0
+ db "あなたが@", $42, $0, $0
+ db "あなたに@", $44, $0, $0
+ db "あなたの@", $46, $0, $0
+ db "あなたは@", $48, $0, $0
+ db "あなたを@", $4a, $0, $0
+ db "おかあさん", $e8, $0, $0
+ db "おじいさん", $fc, $0, $0
+ db "おじさん@", $2, $1, $0
+ db "おとうさん", $e, $1, $0
+ db "おとこのこ", $10, $1, $0
+ db "おとな@@", $14, $1, $0
+ db "おにいさん", $16, $1, $0
+ db "おねえさん", $18, $1, $0
+ db "おばあさん", $1c, $1, $0
+ db "おばさん@", $20, $1, $0
+ db "おれさま@", $34, $1, $0
+ db "おんなのこ", $3a, $1, $0
+ db "ガール@@", $40, $1, $0
+ db "かぞく@@", $52, $1, $0
+ db "かのじょ@", $72, $1, $0
+ db "かれ@@@", $7c, $1, $0
+ db "きみ@@@", $9a, $1, $0
+ db "きみが@@", $9c, $1, $0
+ db "きみに@@", $9e, $1, $0
+ db "きみの@@", $a0, $1, $0
+ db "きみは@@", $a2, $1, $0
+ db "きみを@@", $a4, $1, $0
+ db "ギャル@@", $ae, $1, $0
+ db "きょうだい", $b2, $1, $0
+ db "こども@@", $f0, $1, $0
+ db "じぶん@@", $54, $2, $0
+ db "じぶんが@", $56, $2, $0
+ db "じぶんに@", $58, $2, $0
+ db "じぶんの@", $5a, $2, $0
+ db "じぶんは@", $5c, $2, $0
+ db "じぶんを@", $5e, $2, $0
+ db "だれ@@@", $18, $3, $0
+ db "だれか@@", $1a, $3, $0
+ db "だれが@@", $1c, $3, $0
+ db "だれに@@", $1e, $3, $0
+ db "だれの@@", $20, $3, $0
+ db "だれも@@", $22, $3, $0
+ db "だれを@@", $24, $3, $0
+ db "ちゃん@@", $38, $3, $0
+ db "ともだち@", $b8, $3, $0
+ db "なかま@@", $d4, $3, $0
+ db "ひと@@@", $62, $4, $0
+ db "ボーイ@@", $98, $4, $0
+ db "ボク@@@", $a0, $4, $0
+ db "ボクが@@", $a2, $4, $0
+ db "ボクに@@", $a4, $4, $0
+ db "ボクの@@", $a6, $4, $0
+ db "ボクは@@", $a8, $4, $0
+ db "ボクを@@", $aa, $4, $0
+ db "みんな@@", $4, $5, $0
+ db "みんなが@", $6, $5, $0
+ db "みんなに@", $8, $5, $0
+ db "みんなの@", $a, $5, $0
+ db "みんなは@", $c, $5, $0
+ db "ライバル@", $8a, $5, $0
+ db "わたし@@", $c2, $5, $0
+ db "わたしが@", $c4, $5, $0
+ db "わたしに@", $c6, $5, $0
+ db "わたしの@", $c8, $5, $0
+ db "わたしは@", $ca, $5, $0
+ db "わたしを@", $cc, $5, $0
+
+.Battle: ; 11dea0
+ db "あいしょう", $18, $0, $0
+ db "いけ!@@", $88, $0, $0
+ db "いちばん@", $96, $0, $0
+ db "かくご@@", $4c, $1, $0
+ db "かたせて@", $54, $1, $0
+ db "かち@@@", $56, $1, $0
+ db "かつ@@@", $58, $1, $0
+ db "かった@@", $60, $1, $0
+ db "かったら@", $62, $1, $0
+ db "かって@@", $64, $1, $0
+ db "かてない@", $66, $1, $0
+ db "かてる@@", $68, $1, $0
+ db "かなわない", $70, $1, $0
+ db "きあい@@", $84, $1, $0
+ db "きめた@@", $a8, $1, $0
+ db "きりふだ@", $b6, $1, $0
+ db "くらえ@@", $c2, $1, $0
+ db "こい!@@", $da, $1, $0
+ db "こうげき@", $e0, $1, $0
+ db "こうさん@", $e2, $1, $0
+ db "こんじょう", $8, $2, $0
+ db "さいのう@", $16, $2, $0
+ db "さくせん@", $1a, $2, $0
+ db "さばき@@", $22, $2, $0
+ db "しょうぶ@", $7e, $2, $0
+ db "しょうり@", $80, $2, $0
+ db "せめ@@@", $b4, $2, $0
+ db "センス@@", $b6, $2, $0
+ db "たいせん@", $e6, $2, $0
+ db "たたかい@", $f6, $2, $0
+ db "ちから@@", $32, $3, $0
+ db "チャレンジ", $36, $3, $0
+ db "つよい@@", $58, $3, $0
+ db "つよすぎ@", $5a, $3, $0
+ db "つらい@@", $5c, $3, $0
+ db "つらかった", $5e, $3, $0
+ db "てかげん@", $6c, $3, $0
+ db "てき@@@", $6e, $3, $0
+ db "てんさい@", $90, $3, $0
+ db "でんせつ@", $94, $3, $0
+ db "トレーナー", $c6, $3, $0
+ db "にげ@@@", $4, $4, $0
+ db "ぬるい@@", $10, $4, $0
+ db "ねらう@@", $16, $4, $0
+ db "バトル@@", $4a, $4, $0
+ db "ファイト@", $72, $4, $0
+ db "ふっかつ@", $78, $4, $0
+ db "ポイント@", $94, $4, $0
+ db "ポケモン@", $ac, $4, $0
+ db "ほんき@@", $bc, $4, $0
+ db "まいった!", $c4, $4, $0
+ db "まけ@@@", $c8, $4, $0
+ db "まけたら@", $ca, $4, $0
+ db "まけて@@", $cc, $4, $0
+ db "まける@@", $ce, $4, $0
+ db "まもり@@", $ea, $4, $0
+ db "みかた@@", $f2, $4, $0
+ db "みとめない", $fe, $4, $0
+ db "みとめる@", $0, $5, $0
+ db "むてき@@", $16, $5, $0
+ db "もらった!", $3c, $5, $0
+ db "よゆう@@", $7a, $5, $0
+ db "よわい@@", $82, $5, $0
+ db "よわすぎ@", $84, $5, $0
+ db "らくしょう", $8e, $5, $0
+ db "りーダー@", $9e, $5, $0
+ db "ルール@@", $a0, $5, $0
+ db "レべル@@", $a6, $5, $0
+ db "わざ@@@", $be, $5, $0
+
+.Exclamations: ; 11e0c8
+ db "!@@@@", $0, $0, $0
+ db "!!@@@", $2, $0, $0
+ db "!?@@@", $4, $0, $0
+ db "?@@@@", $6, $0, $0
+ db "…@@@@", $8, $0, $0
+ db "…!@@@", $a, $0, $0
+ db "………@@", $c, $0, $0
+ db "ー@@@@", $e, $0, $0
+ db "ーーー@@", $10, $0, $0
+ db "あーあ@@", $14, $0, $0
+ db "あーん@@", $16, $0, $0
+ db "あははー@", $52, $0, $0
+ db "あら@@@", $54, $0, $0
+ db "いえ@@@", $72, $0, $0
+ db "イエス@@", $74, $0, $0
+ db "うう@@@", $ac, $0, $0
+ db "うーん@@", $ae, $0, $0
+ db "うおー!@", $b0, $0, $0
+ db "うおりゃー", $b2, $0, $0
+ db "うひょー@", $bc, $0, $0
+ db "うふふ@@", $be, $0, $0
+ db "うわー@@", $ca, $0, $0
+ db "うわーん@", $cc, $0, $0
+ db "ええ@@@", $d2, $0, $0
+ db "えー@@@", $d4, $0, $0
+ db "えーん@@", $d6, $0, $0
+ db "えへへ@@", $dc, $0, $0
+ db "おいおい@", $e0, $0, $0
+ db "おお@@@", $e2, $0, $0
+ db "おっと@@", $c, $1, $0
+ db "がーん@@", $42, $1, $0
+ db "キャー@@", $aa, $1, $0
+ db "ギャー@@", $ac, $1, $0
+ db "ぐふふふふ", $bc, $1, $0
+ db "げっ@@@", $ce, $1, $0
+ db "しくしく@", $3e, $2, $0
+ db "ちえっ@@", $2e, $3, $0
+ db "てへ@@@", $86, $3, $0
+ db "ノー@@@", $20, $4, $0
+ db "はあー@@", $2a, $4, $0
+ db "はい@@@", $30, $4, $0
+ db "はっはっは", $48, $4, $0
+ db "ひいー@@", $56, $4, $0
+ db "ひゃあ@@", $6a, $4, $0
+ db "ふっふっふ", $7c, $4, $0
+ db "ふにゃ@@", $7e, $4, $0
+ db "ププ@@@", $80, $4, $0
+ db "ふふん@@", $82, $4, $0
+ db "ふん@@@", $88, $4, $0
+ db "へっへっへ", $8e, $4, $0
+ db "へへー@@", $90, $4, $0
+ db "ほーほほほ", $9c, $4, $0
+ db "ほら@@@", $b6, $4, $0
+ db "まあ@@@", $c0, $4, $0
+ db "むきー!!", $10, $5, $0
+ db "むふー@@", $18, $5, $0
+ db "むふふ@@", $1a, $5, $0
+ db "むむ@@@", $1c, $5, $0
+ db "よーし@@", $6a, $5, $0
+ db "よし!@@", $72, $5, $0
+ db "ラララ@@", $98, $5, $0
+ db "わーい@@", $ac, $5, $0
+ db "わーん!!", $b0, $5, $0
+ db "ワォ@@@", $b2, $5, $0
+ db "わっ!!@", $ce, $5, $0
+ db "わははは!", $d0, $5, $0
+
+.Conversation: ; 11e2d8
+ db "あのね@@", $50, $0, $0
+ db "あんまり@", $6e, $0, $0
+ db "いじわる@", $8e, $0, $0
+ db "うそ@@@", $b6, $0, $0
+ db "うむ@@@", $c4, $0, $0
+ db "おーい@@", $e4, $0, $0
+ db "おすすめ@", $6, $1, $0
+ db "おばかさん", $1e, $1, $0
+ db "かなり@@", $6e, $1, $0
+ db "から@@@", $7a, $1, $0
+ db "きぶん@@", $98, $1, $0
+ db "けど@@@", $d6, $1, $0
+ db "こそ@@@", $ea, $1, $0
+ db "こと@@@", $ee, $1, $0
+ db "さあ@@@", $12, $2, $0
+ db "さっぱり@", $1e, $2, $0
+ db "さて@@@", $20, $2, $0
+ db "じゅうぶん", $72, $2, $0
+ db "すぐ@@@", $94, $2, $0
+ db "すごく@@", $98, $2, $0
+ db "すこしは@", $9a, $2, $0
+ db "すっっごい", $a0, $2, $0
+ db "ぜーんぜん", $b0, $2, $0
+ db "ぜったい@", $b2, $2, $0
+ db "それで@@", $ce, $2, $0
+ db "だけ@@@", $f2, $2, $0
+ db "だって@@", $fc, $2, $0
+ db "たぶん@@", $6, $3, $0
+ db "たら@@@", $14, $3, $0
+ db "ちょー@@", $3a, $3, $0
+ db "ちょっと@", $3c, $3, $0
+ db "ったら@@", $4e, $3, $0
+ db "って@@@", $50, $3, $0
+ db "ていうか@", $62, $3, $0
+ db "でも@@@", $88, $3, $0
+ db "どうしても", $9c, $3, $0
+ db "とうぜん@", $a0, $3, $0
+ db "どうぞ@@", $a2, $3, $0
+ db "とりあえず", $be, $3, $0
+ db "なあ@@@", $cc, $3, $0
+ db "なんて@@", $f4, $3, $0
+ db "なんでも@", $fc, $3, $0
+ db "なんとか@", $fe, $3, $0
+ db "には@@@", $8, $4, $0
+ db "バッチり@", $46, $4, $0
+ db "ばりばり@", $52, $4, $0
+ db "ほど@@@", $b0, $4, $0
+ db "ほんと@@", $be, $4, $0
+ db "まさに@@", $d0, $4, $0
+ db "マジ@@@", $d2, $4, $0
+ db "マジで@@", $d4, $4, $0
+ db "まったく@", $e4, $4, $0
+ db "まで@@@", $e6, $4, $0
+ db "まるで@@", $ec, $4, $0
+ db "ムード@@", $e, $5, $0
+ db "むしろ@@", $14, $5, $0
+ db "めちゃ@@", $24, $5, $0
+ db "めっぽう@", $28, $5, $0
+ db "もう@@@", $2c, $5, $0
+ db "モード@@", $2e, $5, $0
+ db "もっと@@", $36, $5, $0
+ db "もはや@@", $38, $5, $0
+ db "やっと@@", $4a, $5, $0
+ db "やっぱり@", $4c, $5, $0
+ db "より@@@", $7c, $5, $0
+ db "れば@@@", $a4, $5, $0
+
+.Feelings: ; 11e4e8
+ db "あいたい@", $1a, $0, $0
+ db "あそびたい", $32, $0, $0
+ db "いきたい@", $7c, $0, $0
+ db "うかれて@", $b4, $0, $0
+ db "うれしい@", $c6, $0, $0
+ db "うれしさ@", $c8, $0, $0
+ db "エキサイト", $d8, $0, $0
+ db "えらい@@", $de, $0, $0
+ db "おかしい@", $ec, $0, $0
+ db "ォッケー@", $8, $1, $0
+ db "かえりたい", $48, $1, $0
+ db "がっくし@", $5a, $1, $0
+ db "かなしい@", $6c, $1, $0
+ db "がんばって", $80, $1, $0
+ db "きがしない", $86, $1, $0
+ db "きがする@", $88, $1, $0
+ db "ききたい@", $8a, $1, $0
+ db "きになる@", $90, $1, $0
+ db "きのせい@", $96, $1, $0
+ db "きらい@@", $b4, $1, $0
+ db "くやしい@", $be, $1, $0
+ db "くやしさ@", $c0, $1, $0
+ db "さみしい@", $24, $2, $0
+ db "ざんねん@", $32, $2, $0
+ db "しあわせ@", $36, $2, $0
+ db "したい@@", $44, $2, $0
+ db "したくない", $46, $2, $0
+ db "しまった@", $64, $2, $0
+ db "しょんぼり", $82, $2, $0
+ db "すき@@@", $92, $2, $0
+ db "だいきらい", $da, $2, $0
+ db "たいくつ@", $dc, $2, $0
+ db "だいじ@@", $de, $2, $0
+ db "だいすき@", $e4, $2, $0
+ db "たいへん@", $ea, $2, $0
+ db "たのしい@", $0, $3, $0
+ db "たのしすぎ", $2, $3, $0
+ db "たべたい@", $8, $3, $0
+ db "ダメダメ@", $e, $3, $0
+ db "たりない@", $16, $3, $0
+ db "ちくしょー", $34, $3, $0
+ db "どうしよう", $9e, $3, $0
+ db "ドキドキ@", $ac, $3, $0
+ db "ナイス@@", $d0, $3, $0
+ db "のみたい@", $26, $4, $0
+ db "びっくり@", $60, $4, $0
+ db "ふあん@@", $74, $4, $0
+ db "ふらふら@", $86, $4, $0
+ db "ほしい@@", $ae, $4, $0
+ db "ボロボロ@", $b8, $4, $0
+ db "まだまだ@", $e0, $4, $0
+ db "まてない@", $e8, $4, $0
+ db "まんぞく@", $f0, $4, $0
+ db "みたい@@", $f8, $4, $0
+ db "めずらしい", $22, $5, $0
+ db "メラメラ@", $2a, $5, $0
+ db "やだ@@@", $46, $5, $0
+ db "やったー@", $48, $5, $0
+ db "やばい@@", $50, $5, $0
+ db "やばすぎる", $52, $5, $0
+ db "やられた@", $54, $5, $0
+ db "やられて@", $56, $5, $0
+ db "よかった@", $6e, $5, $0
+ db "ラブラブ@", $96, $5, $0
+ db "ロマン@@", $a8, $5, $0
+ db "ろんがい@", $aa, $5, $0
+ db "わから@@", $b4, $5, $0
+ db "わかり@@", $b6, $5, $0
+ db "わくわく@", $ba, $5, $0
+
+.Conditions: ; 11e710
+ db "あつい@@", $38, $0, $0
+ db "あった@@", $3a, $0, $0
+ db "あり@@@", $56, $0, $0
+ db "ある@@@", $5e, $0, $0
+ db "あわてて@", $6a, $0, $0
+ db "いい@@@", $70, $0, $0
+ db "いか@@@", $76, $0, $0
+ db "イカス@@", $78, $0, $0
+ db "いきおい@", $7a, $0, $0
+ db "いける@@", $8a, $0, $0
+ db "いじょう@", $8c, $0, $0
+ db "いそがしい", $90, $0, $0
+ db "いっしょに", $9a, $0, $0
+ db "いっぱい@", $9c, $0, $0
+ db "いない@@", $a0, $0, $0
+ db "いや@@@", $a4, $0, $0
+ db "いる@@@", $a8, $0, $0
+ db "うまい@@", $c0, $0, $0
+ db "うまく@@", $c2, $0, $0
+ db "おおきい@", $e6, $0, $0
+ db "おくれ@@", $f2, $0, $0
+ db "おしい@@", $fa, $0, $0
+ db "おもしろい", $2c, $1, $0
+ db "おもしろく", $2e, $1, $0
+ db "かっこいい", $5c, $1, $0
+ db "かわいい@", $7e, $1, $0
+ db "かんぺき@", $82, $1, $0
+ db "けっこう@", $d0, $1, $0
+ db "げんき@@", $d8, $1, $0
+ db "こわい@@", $6, $2, $0
+ db "さいこう@", $14, $2, $0
+ db "さむい@@", $26, $2, $0
+ db "さわやか@", $2c, $2, $0
+ db "しかたない", $38, $2, $0
+ db "すごい@@", $96, $2, $0
+ db "すごすぎ@", $9c, $2, $0
+ db "すてき@@", $a4, $2, $0
+ db "たいした@", $e0, $2, $0
+ db "だいじょぶ", $e2, $2, $0
+ db "たかい@@", $ec, $2, $0
+ db "ただしい@", $f8, $2, $0
+ db "だめ@@@", $c, $3, $0
+ db "ちいさい@", $2c, $3, $0
+ db "ちがう@@", $30, $3, $0
+ db "つかれ@@", $48, $3, $0
+ db "とくい@@", $b0, $3, $0
+ db "とまらない", $b6, $3, $0
+ db "ない@@@", $ce, $3, $0
+ db "なかった@", $d2, $3, $0
+ db "なし@@@", $d8, $3, $0
+ db "なって@@", $dc, $3, $0
+ db "はやい@@", $50, $4, $0
+ db "ひかる@@", $5a, $4, $0
+ db "ひくい@@", $5c, $4, $0
+ db "ひどい@@", $64, $4, $0
+ db "ひとりで@", $66, $4, $0
+ db "ひま@@@", $68, $4, $0
+ db "ふそく@@", $76, $4, $0
+ db "へた@@@", $8c, $4, $0
+ db "まちがって", $e2, $4, $0
+ db "やさしい@", $42, $5, $0
+ db "よく@@@", $70, $5, $0
+ db "よわって@", $86, $5, $0
+ db "らく@@@", $8c, $5, $0
+ db "らしい@@", $90, $5, $0
+ db "わるい@@", $d4, $5, $0
+
+.Life: ; 11e920
+ db "アルバイト", $64, $0, $0
+ db "うち@@@", $ba, $0, $0
+ db "おかね@@", $ee, $0, $0
+ db "おこづかい", $f4, $0, $0
+ db "おふろ@@", $24, $1, $0
+ db "がっこう@", $5e, $1, $0
+ db "きねん@@", $92, $1, $0
+ db "グループ@", $c6, $1, $0
+ db "ゲット@@", $d2, $1, $0
+ db "こうかん@", $de, $1, $0
+ db "しごと@@", $40, $2, $0
+ db "しゅぎょう", $74, $2, $0
+ db "じゅぎょう", $76, $2, $0
+ db "じゅく@@", $78, $2, $0
+ db "しんか@@", $88, $2, $0
+ db "ずかん@@", $90, $2, $0
+ db "せいかつ@", $ae, $2, $0
+ db "せんせい@", $b8, $2, $0
+ db "センター@", $ba, $2, $0
+ db "タワー@@", $28, $3, $0
+ db "つうしん@", $40, $3, $0
+ db "テスト@@", $7e, $3, $0
+ db "テレビ@@", $8c, $3, $0
+ db "でんわ@@", $96, $3, $0
+ db "どうぐ@@", $9a, $3, $0
+ db "トレード@", $c4, $3, $0
+ db "なまえ@@", $e8, $3, $0
+ db "ニュース@", $a, $4, $0
+ db "にんき@@", $c, $4, $0
+ db "パーティー", $2e, $4, $0
+ db "べんきょう", $92, $4, $0
+ db "マシン@@", $d6, $4, $0
+ db "めいし@@", $1e, $5, $0
+ db "メッセージ", $26, $5, $0
+ db "もようがえ", $3a, $5, $0
+ db "ゆめ@@@", $5a, $5, $0
+ db "ようちえん", $66, $5, $0
+ db "ラジォ@@", $92, $5, $0
+ db "ワールド@", $ae, $5, $0
+
+.Hobbies: ; 11ea58
+ db "アイドル@", $1e, $0, $0
+ db "アニメ@@", $4c, $0, $0
+ db "うた@@@", $b8, $0, $0
+ db "えいが@@", $d0, $0, $0
+ db "おかし@@", $ea, $0, $0
+ db "おしゃべり", $4, $1, $0
+ db "おままごと", $28, $1, $0
+ db "おもちゃ@", $30, $1, $0
+ db "おんがく@", $38, $1, $0
+ db "カード@@", $3e, $1, $0
+ db "かいもの@", $46, $1, $0
+ db "グルメ@@", $c8, $1, $0
+ db "ゲーム@@", $cc, $1, $0
+ db "ざっし@@", $1c, $2, $0
+ db "さんぽ@@", $34, $2, $0
+ db "じてんしゃ", $50, $2, $0
+ db "しゅみ@@", $7a, $2, $0
+ db "スポーツ@", $a8, $2, $0
+ db "ダイエット", $d8, $2, $0
+ db "たからもの", $f0, $2, $0
+ db "たび@@@", $4, $3, $0
+ db "ダンス@@", $2a, $3, $0
+ db "つり@@@", $60, $3, $0
+ db "デート@@", $6a, $3, $0
+ db "でんしゃ@", $92, $3, $0
+ db "ぬいぐるみ", $e, $4, $0
+ db "パソコン@", $3e, $4, $0
+ db "はな@@@", $4c, $4, $0
+ db "ヒーロー@", $58, $4, $0
+ db "ひるね@@", $6e, $4, $0
+ db "ヒロイン@", $70, $4, $0
+ db "ぼうけん@", $96, $4, $0
+ db "ボード@@", $9a, $4, $0
+ db "ボール@@", $9e, $4, $0
+ db "ほん@@@", $ba, $4, $0
+ db "マンガ@@", $ee, $4, $0
+ db "やくそく@", $40, $5, $0
+ db "やすみ@@", $44, $5, $0
+ db "よてい@@", $74, $5, $0
+
+.Actions: ; 11eb90
+ db "あう@@@", $20, $0, $0
+ db "あきらめ@", $24, $0, $0
+ db "あげる@@", $28, $0, $0
+ db "あせる@@", $2e, $0, $0
+ db "あそび@@", $30, $0, $0
+ db "あそぶ@@", $34, $0, $0
+ db "あつめ@@", $3e, $0, $0
+ db "あるき@@", $60, $0, $0
+ db "あるく@@", $62, $0, $0
+ db "いく@@@", $7e, $0, $0
+ db "いけ@@@", $86, $0, $0
+ db "おき@@@", $f0, $0, $0
+ db "おこり@@", $f6, $0, $0
+ db "おこる@@", $f8, $0, $0
+ db "おしえ@@", $fe, $0, $0
+ db "おしえて@", $0, $1, $0
+ db "おねがい@", $1a, $1, $0
+ db "おぼえ@@", $26, $1, $0
+ db "かえる@@", $4a, $1, $0
+ db "がまん@@", $74, $1, $0
+ db "きく@@@", $8c, $1, $0
+ db "きたえ@@", $8e, $1, $0
+ db "きめ@@@", $a6, $1, $0
+ db "くる@@@", $c4, $1, $0
+ db "さがし@@", $18, $2, $0
+ db "さわぎ@@", $2a, $2, $0
+ db "した@@@", $42, $2, $0
+ db "しって@@", $4a, $2, $0
+ db "して@@@", $4e, $2, $0
+ db "しない@@", $52, $2, $0
+ db "しまう@@", $60, $2, $0
+ db "じまん@@", $66, $2, $0
+ db "しらない@", $84, $2, $0
+ db "しる@@@", $86, $2, $0
+ db "しんじて@", $8a, $2, $0
+ db "する@@@", $aa, $2, $0
+ db "たべる@@", $a, $3, $0
+ db "つかう@@", $42, $3, $0
+ db "つかえ@@", $44, $3, $0
+ db "つかって@", $46, $3, $0
+ db "できない@", $70, $3, $0
+ db "できる@@", $72, $3, $0
+ db "でない@@", $84, $3, $0
+ db "でる@@@", $8a, $3, $0
+ db "なげる@@", $d6, $3, $0
+ db "なやみ@@", $ea, $3, $0
+ db "ねられ@@", $18, $4, $0
+ db "ねる@@@", $1a, $4, $0
+ db "のがし@@", $24, $4, $0
+ db "のむ@@@", $28, $4, $0
+ db "はしり@@", $3a, $4, $0
+ db "はしる@@", $3c, $4, $0
+ db "はたらき@", $40, $4, $0
+ db "はたらく@", $42, $4, $0
+ db "はまって@", $4e, $4, $0
+ db "ぶつけ@@", $7a, $4, $0
+ db "ほめ@@@", $b4, $4, $0
+ db "みせて@@", $f6, $4, $0
+ db "みて@@@", $fc, $4, $0
+ db "みる@@@", $2, $5, $0
+ db "めざす@@", $20, $5, $0
+ db "もって@@", $34, $5, $0
+ db "ゆずる@@", $58, $5, $0
+ db "ゆるす@@", $5c, $5, $0
+ db "ゆるせ@@", $5e, $5, $0
+ db "られない@", $9a, $5, $0
+ db "られる@@", $9c, $5, $0
+ db "わかる@@", $b8, $5, $0
+ db "わすれ@@", $c0, $5, $0
+
+.Time: ; 11edb8
+ db "あき@@@", $22, $0, $0
+ db "あさ@@@", $2a, $0, $0
+ db "あした@@", $2c, $0, $0
+ db "いちにち@", $94, $0, $0
+ db "いつか@@", $98, $0, $0
+ db "いつも@@", $9e, $0, $0
+ db "いま@@@", $a2, $0, $0
+ db "えいえん@", $ce, $0, $0
+ db "おととい@", $12, $1, $0
+ db "おわり@@", $36, $1, $0
+ db "かようび@", $78, $1, $0
+ db "きのう@@", $94, $1, $0
+ db "きょう@@", $b0, $1, $0
+ db "きんようび", $b8, $1, $0
+ db "げつようび", $d4, $1, $0
+ db "このあと@", $f4, $1, $0
+ db "このまえ@", $f6, $1, $0
+ db "こんど@@", $c, $2, $0
+ db "じかん@@", $3c, $2, $0
+ db "じゅうねん", $70, $2, $0
+ db "すいようび", $8e, $2, $0
+ db "スタート@", $9e, $2, $0
+ db "ずっと@@", $a2, $2, $0
+ db "ストップ@", $a6, $2, $0
+ db "そのうち@", $c4, $2, $0
+ db "ついに@@", $3e, $3, $0
+ db "つぎ@@@", $4a, $3, $0
+ db "どようび@", $ba, $3, $0
+ db "なつ@@@", $da, $3, $0
+ db "にちようび", $6, $4, $0
+ db "はじめ@@", $38, $4, $0
+ db "はる@@@", $54, $4, $0
+ db "ひる@@@", $6c, $4, $0
+ db "ふゆ@@@", $84, $4, $0
+ db "まいにち@", $c6, $4, $0
+ db "もくようび", $30, $5, $0
+ db "よなか@@", $76, $5, $0
+ db "よる@@@", $7e, $5, $0
+ db "らいしゅう", $88, $5, $0
+
+.Farewells: ; 11eef0
+ db "いたします", $92, $0, $0
+ db "おります@", $32, $1, $0
+ db "か!?@@", $3c, $1, $0
+ db "かい?@@", $44, $1, $0
+ db "かしら?@", $50, $1, $0
+ db "かな?@@", $6a, $1, $0
+ db "かも@@@", $76, $1, $0
+ db "くれ@@@", $ca, $1, $0
+ db "ございます", $e8, $1, $0
+ db "しがち@@", $3a, $2, $0
+ db "します@@", $62, $2, $0
+ db "じゃ@@@", $6a, $2, $0
+ db "じゃん@@", $6e, $2, $0
+ db "しよう@@", $7c, $2, $0
+ db "ぜ!@@@", $ac, $2, $0
+ db "ぞ!@@@", $bc, $2, $0
+ db "た@@@@", $d4, $2, $0
+ db "だ@@@@", $d6, $2, $0
+ db "だからね@", $ee, $2, $0
+ db "だぜ@@@", $f4, $2, $0
+ db "だった@@", $fa, $2, $0
+ db "だね@@@", $fe, $2, $0
+ db "だよ@@@", $10, $3, $0
+ db "だよねー!", $12, $3, $0
+ db "だわ@@@", $26, $3, $0
+ db "ッス@@@", $4c, $3, $0
+ db "ってかんじ", $52, $3, $0
+ db "っぱなし@", $54, $3, $0
+ db "つもり@@", $56, $3, $0
+ db "ていない@", $64, $3, $0
+ db "ている@@", $66, $3, $0
+ db "でーす!@", $68, $3, $0
+ db "でした@@", $74, $3, $0
+ db "でしょ?@", $76, $3, $0
+ db "でしょー!", $78, $3, $0
+ db "です@@@", $7a, $3, $0
+ db "ですか?@", $7c, $3, $0
+ db "ですよ@@", $80, $3, $0
+ db "ですわ@@", $82, $3, $0
+ db "どうなの?", $a4, $3, $0
+ db "どうよ?@", $a8, $3, $0
+ db "とかいって", $aa, $3, $0
+ db "なの@@@", $e0, $3, $0
+ db "なのか@@", $e2, $3, $0
+ db "なのだ@@", $e4, $3, $0
+ db "なのよ@@", $e6, $3, $0
+ db "なんだね@", $f2, $3, $0
+ db "なんです@", $f8, $3, $0
+ db "なんてね@", $fa, $3, $0
+ db "ね@@@@", $12, $4, $0
+ db "ねー@@@", $14, $4, $0
+ db "の@@@@", $1c, $4, $0
+ db "の?@@@", $1e, $4, $0
+ db "ばっかり@", $44, $4, $0
+ db "まーす!@", $c2, $4, $0
+ db "ます@@@", $d8, $4, $0
+ db "ますわ@@", $da, $4, $0
+ db "ません@@", $dc, $4, $0
+ db "みたいな@", $fa, $4, $0
+ db "よ!@@@", $60, $5, $0
+ db "よー@@@", $68, $5, $0
+ db "よーん@@", $6c, $5, $0
+ db "よね@@@", $78, $5, $0
+ db "るよ@@@", $a2, $5, $0
+ db "わけ@@@", $bc, $5, $0
+ db "わよ!@@", $d2, $5, $0
+
+.ThisAndThat: ; 11f100
+ db "ああ@@@", $12, $0, $0
+ db "あっち@@", $3c, $0, $0
+ db "あの@@@", $4e, $0, $0
+ db "ありゃ@@", $5c, $0, $0
+ db "あれ@@@", $66, $0, $0
+ db "あれは@@", $68, $0, $0
+ db "あんな@@", $6c, $0, $0
+ db "こう@@@", $dc, $1, $0
+ db "こっち@@", $ec, $1, $0
+ db "この@@@", $f2, $1, $0
+ db "こりゃ@@", $fe, $1, $0
+ db "これ@@@", $0, $2, $0
+ db "これだ!@", $2, $2, $0
+ db "これは@@", $4, $2, $0
+ db "こんな@@", $e, $2, $0
+ db "そう@@@", $be, $2, $0
+ db "そっち@@", $c0, $2, $0
+ db "その@@@", $c2, $2, $0
+ db "そりゃ@@", $c6, $2, $0
+ db "それ@@@", $c8, $2, $0
+ db "それだ!@", $cc, $2, $0
+ db "それは@@", $d0, $2, $0
+ db "そんな@@", $d2, $2, $0
+ db "どう@@@", $98, $3, $0
+ db "どっち@@", $b2, $3, $0
+ db "どの@@@", $b4, $3, $0
+ db "どりゃ@@", $c0, $3, $0
+ db "どれ@@@", $c2, $3, $0
+ db "どれを@@", $c8, $3, $0
+ db "どんな@@", $ca, $3, $0
+ db "なに@@@", $de, $3, $0
+ db "なんか@@", $ec, $3, $0
+ db "なんだ@@", $f0, $3, $0
+ db "なんで@@", $f6, $3, $0
+ db "なんなんだ", $0, $4, $0
+ db "なんの@@", $2, $4, $0
+; 11f220
+
+Unknown_11f220:
+ db $12, $01, $24, $02
+ db $45, $05, $45, $05
+ db $42, $05, $42, $05
+ db $45, $05, $42, $05
+ db $27, $03, $27, $03
+ db $45, $05, $27, $03
+ db $42, $05, $24, $02
+
+Unknown_11f23c:
+macro_11f23c: macro
+ dw x - w3_d000, \1
+x = x + 2 * \1
+endm
+x = $d012
+ macro_11f23c $2f
+ macro_11f23c $1e
+ macro_11f23c $11
+ macro_11f23c $09
+ macro_11f23c $2e
+ macro_11f23c $24
+ macro_11f23c $1b
+ macro_11f23c $09
+ macro_11f23c $07
+ macro_11f23c $1c
+ macro_11f23c $12
+ macro_11f23c $2b
+ macro_11f23c $10
+ macro_11f23c $08
+ macro_11f23c $0c
+ macro_11f23c $2c
+ macro_11f23c $09
+ macro_11f23c $12
+ macro_11f23c $1b
+ macro_11f23c $1a
+ macro_11f23c $1c
+ macro_11f23c $05
+ macro_11f23c $02
+ macro_11f23c $05
+ macro_11f23c $07
+ macro_11f23c $16
+ macro_11f23c $0e
+ macro_11f23c $0c
+ macro_11f23c $05
+ macro_11f23c $16
+ macro_11f23c $19
+ macro_11f23c $0e
+ macro_11f23c $08
+ macro_11f23c $07
+ macro_11f23c $09
+ macro_11f23c $0d
+ macro_11f23c $04
+ macro_11f23c $14
+ macro_11f23c $0b
+ macro_11f23c $01
+ macro_11f23c $02
+ macro_11f23c $02
+ macro_11f23c $02
+ macro_11f23c $15
+x = $d000
+ macro_11f23c $09
+Unknown_11f23cEnd:
diff --git a/misc/gbc_only.asm b/misc/gbc_only.asm
index 2349bb687..81d3eadb4 100644
--- a/misc/gbc_only.asm
+++ b/misc/gbc_only.asm
@@ -10,7 +10,7 @@ GBCOnlyScreen: ; 4ea82
call ClearTileMap
ld hl, GBCOnlyGFX
- ld de, $d000
+ ld de, wd000
ld a, [rSVBK]
push af
ld a, 0
@@ -19,7 +19,7 @@ GBCOnlyScreen: ; 4ea82
pop af
ld [rSVBK], a
- ld de, $d000
+ ld de, wd000
ld hl, VTiles2
lb bc, BANK(GBCOnlyGFX), $54
call Get2bpp
diff --git a/misc/mobile_12.asm b/misc/mobile_12.asm
new file mode 100755
index 000000000..185d19e89
--- /dev/null
+++ b/misc/mobile_12.asm
@@ -0,0 +1,1829 @@
+InitMobileProfile: ; 4802f (12:402f)
+ xor a
+ set 6, a
+ ld [wd002], a
+ ld hl, wd003
+ set 0, [hl]
+ ld a, c
+ and a
+ call z, Function48000
+ call ClearBGPalettes
+ call Function48d3d
+ ld a, [wd479]
+ bit 1, a
+ jr z, .asm_4805a
+ ld a, [wd003]
+ set 0, a
+ set 1, a
+ set 2, a
+ set 3, a
+ ld [wd003], a
+.asm_4805a
+ call Function486bf
+ call LoadFontsExtra
+ ld de, GFX_488c3
+ ld hl, VTiles2 tile $10
+ lb bc, BANK(GFX_488c3), 1
+ call Request1bpp
+ ld de, GFX_488cb
+ ld hl, VTiles2 tile $11
+ lb bc, BANK(GFX_488cb), 1
+ call Request1bpp
+ call Function4a3a7
+ call ClearBGPalettes
+ ld a, [wd002]
+ bit 6, a
+ jr z, .asm_4808a
+ call Function48689
+ jr .asm_480d7
+.asm_4808a
+ ld a, $5
+ ld [MusicFade], a
+ ld a, MUSIC_MOBILE_ADAPTER_MENU % $100
+ ld [MusicFadeIDLo], a
+ ld a, MUSIC_MOBILE_ADAPTER_MENU / $100
+ ld [MusicFadeIDHi], a
+ ld c, 20
+ call DelayFrames
+ ld b, $1
+ call Function4930f
+ call ClearBGPalettes
+ hlcoord 0, 0
+ ld b, $2
+ ld c, $14
+ call ClearBox
+ hlcoord 0, 1
+ ld a, $c
+ ld [hl], a
+ ld bc, $13
+ add hl, bc
+ ld [hl], a
+ ld de, MobileProfileString
+ hlcoord 1, 1
+ call PlaceString
+ hlcoord 0, 2
+ ld b, $a
+ ld c, $12
+ call Function48cdc
+ hlcoord 2, 4
+ ld de, String_48482
+ call PlaceString
+.asm_480d7
+ hlcoord 2, 6
+ ld de, String_48489
+ call PlaceString
+ hlcoord 2, 8
+ ld de, String_4848d
+ call PlaceString
+ hlcoord 2, 10
+ ld de, String_48495
+ call PlaceString
+ hlcoord 2, 12
+ ld de, String_4849e
+ call PlaceString
+ ld a, [wd002]
+ bit 6, a
+ jr nz, .asm_48113
+ ld a, [PlayerGender]
+ ld hl, Strings_484fb
+ call GetNthString
+ ld d, h
+ ld e, l
+ hlcoord 11, 4
+ call PlaceString
+.asm_48113
+ hlcoord 11, 6
+ call Function487ec
+ ld a, [wd474]
+ dec a
+ ld hl, Prefectures
+ call GetNthString
+ ld d, h
+ ld e, l
+ hlcoord 11, 8
+ call PlaceString
+ hlcoord 11, 10
+ call Function489ea
+ hlcoord 0, 14
+ ld b, $2
+ ld c, $12
+ call TextBox
+ hlcoord 1, 16
+ ld de, String_48275
+ call PlaceString
+ call Function48187
+ call Function3200
+ call SetPalettes
+ call Function1bc9
+ ld hl, MenuSelection2
+ ld b, [hl]
+ push bc
+ jr asm_4815f
+
+Function48157: ; 48157 (12:4157)
+ call Function1bd3
+ ld hl, MenuSelection2
+ ld b, [hl]
+ push bc
+
+asm_4815f: ; 4815f (12:415f)
+ bit 0, a
+ jp nz, Function4820d
+ ld b, a
+ ld a, [wd002]
+ bit 6, a
+ jr z, .asm_48177
+ ld hl, wd479
+ bit 1, [hl]
+ jr z, .asm_48177
+ bit 1, b
+ jr nz, .asm_4817a
+.asm_48177
+ jp Function48272
+.asm_4817a
+ call ClearBGPalettes
+ call Function48d30
+ pop bc
+ call ClearTileMap
+ ld a, $ff
+ ret
+
+Function48187: ; 48187 (12:4187)
+ ld a, [wd479]
+ bit 1, a
+ jr nz, .asm_481f1
+ ld a, [wd003]
+ ld d, a
+ call Function48725
+ jr c, .asm_481a2
+ lb bc, 1, 4
+ hlcoord 2, 12
+ call ClearBox
+ jr .asm_481ad
+.asm_481a2
+ push de
+ hlcoord 2, 12
+ ld de, String_4849e
+ call PlaceString
+ pop de
+.asm_481ad
+ ld a, [wd002]
+ bit 6, a
+ jr nz, .asm_481c1
+ bit 0, d
+ jr nz, .asm_481c1
+ lb bc, 1, 8
+ hlcoord 11, 4
+ call ClearBox
+.asm_481c1
+ bit 1, d
+ jr nz, .asm_481ce
+ lb bc, 1, 8
+ hlcoord 11, 6
+ call ClearBox
+.asm_481ce
+ bit 2, d
+ jr nz, .asm_481db
+ lb bc, 2, 8
+ hlcoord 11, 7
+ call ClearBox
+.asm_481db
+ bit 3, d
+ jr nz, .asm_481f1
+ ld a, [wd479]
+ bit 0, a
+ jr nz, .asm_481f8
+ lb bc, 1, 8
+ hlcoord 11, 10
+ call ClearBox
+ jr .asm_48201
+.asm_481f1
+ ld a, [wd479]
+ bit 0, a
+ jr nz, .asm_48201
+.asm_481f8
+ hlcoord 11, 10
+ ld de, String_48202
+ call PlaceString
+.asm_48201
+ ret
+; 48202 (12:4202)
+
+String_48202: ; 48202
+ db "Tell Later@"
+; 4820d
+
+Function4820d: ; 4820d (12:420d)
+ call Function1bee
+ ld hl, MenuSelection2
+ ld a, [hl]
+ push af
+ ld a, [wd002]
+ bit 6, a
+ jr z, .asm_4821f
+ pop af
+ inc a
+ push af
+.asm_4821f
+ pop af
+ cp $1
+ jr z, asm_4828d
+ cp $2
+ jp z, Function4876f
+ cp $3
+ jp z, Function48304
+ cp $4
+ jp z, Function488d3
+ ld a, $2
+ call Function1ff8
+ ld a, [wd002]
+ bit 6, a
+ jr z, .asm_4825c
+ jr .asm_4825c
+; 48241 (12:4241)
+
+ hlcoord 1, 15
+ ld b, $2
+ ld c, $12
+ call ClearBox
+ ld de, String_484a1
+ hlcoord 1, 16
+ call PlaceString
+ call WaitBGMap
+ ld c, 48
+ call DelayFrames
+
+.asm_4825c
+ call ClearBGPalettes
+ call Function48d30
+ pop bc
+ call ClearTileMap
+ ld b, SCGB_08
+ call GetSGBLayout
+ ld hl, wd479
+ set 1, [hl]
+ xor a
+ ret
+
+Function48272: ; 48272 (12:4272)
+ jp Function4840c
+; 48275 (12:4275)
+
+String_48275: ; 48275
+ db "Personal Info@"
+; 48283
+
+Function48283: ; 48283 (12:4283)
+ lb bc, 2, 18
+ hlcoord 1, 15
+ call ClearBox
+ ret
+
+asm_4828d: ; 4828d (12:428d)
+ call Function48283
+ hlcoord 1, 16
+ ld de, String_484b1
+ call PlaceString
+ ld hl, MenuDataHeader_0x484f1
+ call LoadMenuDataHeader
+ call Function4873c
+ hlcoord 11, 2
+ ld b, $4
+ ld c, $7
+ call Function48cdc
+ hlcoord 13, 4
+ ld de, String_484fb
+ call PlaceString
+ hlcoord 13, 6
+ ld de, String_484ff
+ call PlaceString
+ call WaitBGMap
+ ld a, [PlayerGender]
+ inc a
+ ld [wMenuCursorBuffer], a
+ call Function1bc9
+ call PlayClickSFX
+ call ExitMenu
+ bit 0, a
+ jp z, Function4840c
+ ld hl, MenuSelection2
+ ld a, [hl]
+ ld hl, Strings_484fb
+ cp $1
+ jr z, .asm_482ed
+.asm_482e1
+ ld a, [hli]
+ cp $50
+ jr nz, .asm_482e1
+ ld a, $1
+ ld [PlayerGender], a
+ jr .asm_482f1
+.asm_482ed
+ xor a
+ ld [PlayerGender], a
+.asm_482f1
+ ld d, h
+ ld e, l
+ hlcoord 11, 4
+ call PlaceString
+ ld a, [wd003]
+ set 0, a
+ ld [wd003], a
+ jp Function4840c
+
+Function48304: ; 48304 (12:4304)
+ call Function48283
+ hlcoord 1, 16
+ ld de, String_484cf
+ call PlaceString
+ ld hl, MenuDataHeader_0x48504
+ call LoadMenuDataHeader
+ ld hl, MenuDataHeader_0x48513
+ call LoadMenuDataHeader
+ hlcoord 10, 0
+ ld b, $c
+ ld c, $8
+ call Function48cdc
+ ld a, [wMenuCursorBuffer]
+ ld b, a
+ ld a, [wMenuScrollPosition]
+ ld c, a
+ push bc
+ ld a, [wd474]
+ dec a
+ cp $29
+ jr c, .asm_4833f
+ sub $29
+ inc a
+ ld [wMenuCursorBuffer], a
+ ld a, $29
+.asm_4833f
+ ld [wMenuScrollPosition], a
+ callba Function104148
+.asm_48348
+ call HandleScrollingMenu
+ ld de, $629
+ call Function48383
+ jr c, .asm_48348
+ ld d, a
+ pop bc
+ ld a, b
+ ld [wMenuCursorBuffer], a
+ ld a, c
+ ld [wMenuScrollPosition], a
+ ld a, d
+ push af
+ call ExitMenu
+ call ExitMenu
+ pop af
+ ld a, [hJoyPressed]
+ bit 0, a
+ jr z, .asm_48377
+ call Function483bb
+ ld a, [wd003]
+ set 2, a
+ ld [wd003], a
+.asm_48377
+ call Function48187
+ callba Function104148
+ jp Function4840c
+
+Function48383: ; 48383 (12:4383)
+ push bc
+ push af
+ bit 5, a
+ jr nz, .asm_48390
+ bit 4, a
+ jr nz, .asm_4839f
+ and a
+ jr .asm_483b7
+.asm_48390
+ ld a, [wMenuScrollPosition]
+ sub d
+ ld [wMenuScrollPosition], a
+ jr nc, .asm_483af
+ xor a
+ ld [wMenuScrollPosition], a
+ jr .asm_483af
+.asm_4839f
+ ld a, [wMenuScrollPosition]
+ add d
+ ld [wMenuScrollPosition], a
+ cp e
+ jr c, .asm_483af
+ ld a, e
+ ld [wMenuScrollPosition], a
+ jr .asm_483af
+.asm_483af
+ ld hl, MenuSelection2
+ ld a, [hl]
+ ld [wMenuCursorBuffer], a
+ scf
+.asm_483b7
+ pop bc
+ ld a, b
+ pop bc
+ ret
+
+Function483bb: ; 483bb (12:43bb)
+ ld hl, wcf77
+ ld a, [hl]
+ inc a
+ ld [wd474], a
+ dec a
+ ld b, a
+ ld hl, Prefectures
+.asm_483c8
+ and a
+ jr z, .asm_483d5
+.asm_483cb
+ ld a, [hli]
+ cp "@"
+ jr nz, .asm_483cb
+ ld a, b
+ dec a
+ ld b, a
+ jr .asm_483c8
+.asm_483d5
+ ld d, h
+ ld e, l
+ ld b, $2
+ ld c, $8
+ hlcoord 11, 7
+ call ClearBox
+ hlcoord 11, 8
+ call PlaceString
+ ret
+; 483e8 (12:43e8)
+
+Function483e8: ; 483e8
+ push de
+ ld hl, Prefectures
+ ld a, [MenuSelection]
+ cp $ff
+ jr nz, .asm_483f8
+ ld hl, Wakayama ; last string
+ jr .asm_48405
+
+.asm_483f8
+ ld d, a
+ and a
+ jr z, .asm_48405
+.asm_483fc
+ ld a, [hli]
+ cp "@"
+ jr nz, .asm_483fc
+ ld a, d
+ dec a
+ jr .asm_483f8
+
+.asm_48405
+ ld d, h
+ ld e, l
+ pop hl
+ call PlaceString
+ ret
+; 4840c
+
+Function4840c: ; 4840c (12:440c)
+ call Function48187
+ call Function48283
+ hlcoord 1, 16
+ ld de, String_48275
+ call PlaceString
+ call Function486bf
+ pop bc
+ ld hl, MenuSelection2
+ ld [hl], b
+ ld a, [wd002]
+ bit 6, a
+ jr nz, .asm_48437
+ ld b, $9
+ ld c, $1
+ hlcoord 1, 4
+ call ClearBox
+ jp Function48157
+.asm_48437
+ ld b, $7
+ ld c, $1
+ hlcoord 1, 6
+ call ClearBox
+ jp Function48157
+
+Function48444: ; 48444 (12:4444)
+ push bc
+ push af
+ push de
+ push hl
+ ld hl, Unknown_4845d
+.asm_4844b
+ and a
+ jr z, .asm_48453
+rept 2
+ inc hl
+endr
+ dec a
+ jr .asm_4844b
+.asm_48453
+ ld d, h
+ ld e, l
+ pop hl
+ call PlaceString
+ pop de
+ pop af
+ pop bc
+ ret
+; 4845d (12:445d)
+
+Unknown_4845d: ; 4845d
+; 4845d
+ db "0@"
+ db "1@"
+ db "2@"
+ db "3@"
+ db "4@"
+ db "5@"
+ db "6@"
+ db "7@"
+ db "8@"
+ db "9@"
+; 48471
+
+MobileProfileString: db " Mobile Profile@"
+String_48482: db "Gender@"
+String_48489: db "Age@"
+String_4848d: db "Address@"
+String_48495: db "Zip Code@"
+String_4849e: db "OK@"
+String_484a1: db "Profile Changed@"
+String_484b1: db "Boy or girl?@"
+String_484be: db "How old are you?@"
+String_484cf: db "Where do you live?@"
+String_484e2: db "Your zip code?@"
+; 484f1
+
+MenuDataHeader_0x484f1: ; 0x484f1
+ db $40 ; flags
+ db 02, 11 ; start coords
+ db 07, 19 ; end coords
+ dw MenuData2_0x484f9
+ db 1 ; default option
+; 0x484f9
+
+MenuData2_0x484f9: ; 0x484f9
+ db $a0 ; flags
+ db 2 ; items
+Strings_484fb:
+String_484fb: db "Boy@"
+String_484ff: db "Girl@"
+; 0x48504
+
+MenuDataHeader_0x48504: ; 0x48504
+ db $40 ; flags
+ db 00, 10 ; start coords
+ db 17, 19 ; end coords
+
+MenuDataHeader_0x48509: ; 0x48509
+ db $40 ; flags
+ db 05, 10 ; start coords
+ db 07, 19 ; end coords
+
+MenuDataHeader_0x4850e: ; 0x4850e
+ db $40 ; flags
+ db 09, 10 ; start coords
+ db 11, 19 ; end coords
+
+MenuDataHeader_0x48513: ; 0x48513
+ db $40 ; flags
+ db 01, 11 ; start coords
+ db 12, 18 ; end coords
+ dw MenuData2_0x4851b
+ db 1 ; default option
+; 0x4851b
+
+MenuData2_0x4851b: ; 0x4851b
+ db $1d ; flags
+ db 6 ; items
+
+Unknown_4851d: ; 4851d
+ db $00, $01, $12, $2b, $45, $12, $e8, $43, $00, $00, $00, $00, $00, $00, $2e, $00, $01, $02, $03, $04
+ db $05, $06, $07, $08, $09, $0a, $0b, $0c, $0d, $0e, $0f, $10, $11, $12, $13, $14, $15, $16, $17, $18
+ db $19, $1a, $1b, $1c, $1d, $1e, $1f, $20, $21, $22, $23, $24, $25, $26, $27, $28, $29, $2a, $2b, $2c
+ db $2d, $ff
+
+Prefectures:
+Aichi: db "あいちけん@" ; Aichi
+Aomori: db "あおもりけん@" ; Aomori
+Akita: db "あきたけん@" ; Akita
+Ishikawa: db "いしかわけん@" ; Ishikawa
+Ibaraki: db "いばらきけん@" ; Ibaraki
+Iwate: db "いわてけん@" ; Iwate
+Ehime: db "えひめけん@" ; Ehime
+Oita: db "おおいたけん@" ; Oita
+Osakafu: db "おおさかふ@" ; Osakafu
+Okayama: db "おかやまけん@" ; Okayama
+Okinawa: db "おきなわけん@" ; Okinawa
+Kagawa: db "かがわけん@" ; Kagawa
+Kagoshima: db "かごしまけん@" ; Kagoshima
+Kanagawa: db "かながわけん@" ; Kanagawa
+Gifu: db "ぎふけん@" ; Gifu
+Kyotofu: db "きょうとふ@" ; Kyotofu
+Kumamoto: db "くまもとけん@" ; Kumamoto
+Gunma: db "ぐんまけん@" ; Gunma
+Kochi: db "こうちけん@" ; Kochi
+Saitama: db "さいたまけん@" ; Saitama
+Saga: db "さがけん@" ; Saga
+Shiga: db "しがけん@" ; Shiga
+Shizuoka: db "しずおかけん@" ; Shizuoka
+Shimane: db "しまねけん@" ; Shimane
+Chiba: db "ちばけん@" ; Chiba
+Tokyo: db "とうきょうと@" ; Tokyo
+Tokushima: db "とくしまけん@" ; Tokushima
+Tochigi: db "とちぎけん@" ; Tochigi
+Tottori: db "とっとりけん@" ; Tottori
+Toyama: db "とやまけん@" ; Toyama
+Nagasaki: db "ながさきけん@" ; Nagasaki
+Nagano: db "ながのけん@" ; Nagano
+Naraken: db "ならけん@" ; Naraken
+Niigata: db "にいがたけん@" ; Niigata
+Hyogo: db "ひょうごけん@" ; Hyogo
+Hiroshima: db "ひろしまけん@" ; Hiroshima
+Fukui: db "ふくいけん@" ; Fukui
+Fukuoka: db "ふくおかけん@" ; Fukuoka
+Fukushima: db "ふくしまけん@" ; Fukushima
+Hokkaido: db "ほっかいどう@" ; Hokkaido
+Mie: db "みえけん@" ; Mie
+Miyagi: db "みやぎけん@" ; Miyagi
+Miyazaki: db "みやざきけん@" ; Miyazaki
+Yamagata: db "やまがたけん@" ; Yamagata
+Yamaguchi: db "やまぐちけん@" ; Yamaguchi
+Yamanashi: db "やまなしけん@" ; Yamanashi
+Wakayama: db "わかやまけん@" ; Wakayama
+; 48689
+
+Function48689: ; 48689 (12:4689)
+ ld c, 7
+ call DelayFrames
+ ld b, $1
+ call Function4930f
+ call ClearBGPalettes
+ hlcoord 0, 0
+ ld b, $4
+ ld c, $14
+ call ClearBox
+ hlcoord 0, 2
+ ld a, $c
+ ld [hl], a
+ ld bc, $13
+ add hl, bc
+ ld [hl], a
+ ld de, MobileProfileString
+ hlcoord 1, 2
+ call PlaceString
+ hlcoord 0, 4
+ ld b, $8
+ ld c, $12
+ call Function48cdc
+ ret
+
+Function486bf: ; 486bf (12:46bf)
+ ld hl, wcfa1
+ ld a, [wd002]
+ bit 6, a
+ jr nz, .asm_486ce
+ ld a, $4
+ ld [hli], a
+ jr .asm_486d1
+.asm_486ce
+ ld a, $6
+ ld [hli], a
+.asm_486d1
+ ld a, $1
+ ld [hli], a
+ ld a, [wd002]
+ bit 6, a
+ jr nz, .asm_486e7
+ call Function48725
+ ld a, $4
+ jr nc, .asm_486e4
+ ld a, $5
+.asm_486e4
+ ld [hli], a
+ jr .asm_486fb
+.asm_486e7
+ ld a, [wd479]
+ bit 1, a
+ jr nz, .asm_486f8
+ call Function48725
+ jr c, .asm_486f8
+ ld a, $3
+ ld [hli], a
+ jr .asm_486fb
+.asm_486f8
+ ld a, $4
+ ld [hli], a
+.asm_486fb
+ ld a, $1
+ ld [hli], a
+ ld [hl], $0
+ set 5, [hl]
+ inc hl
+ xor a
+ ld [hli], a
+ ld a, $20
+ ld [hli], a
+ ld a, $1
+ add $40
+ add $80
+ push af
+ ld a, [wd002]
+ bit 6, a
+ jr z, .asm_4871a
+ pop af
+ add $2
+ push af
+.asm_4871a
+ pop af
+ ld [hli], a
+ ld a, $1
+rept 2
+ ld [hli], a
+endr
+ xor a
+rept 3
+ ld [hli], a
+endr
+ ret
+
+Function48725: ; 48725 (12:4725)
+ ld a, [wd003]
+ bit 0, a
+ jr z, .asm_4873a
+ bit 1, a
+ jr z, .asm_4873a
+ bit 2, a
+ jr z, .asm_4873a
+ bit 3, a
+ jr z, .asm_4873a
+ scf
+ ret
+.asm_4873a
+ and a
+ ret
+
+Function4873c: ; 4873c (12:473c)
+ ld hl, wcfa1
+ ld a, $4
+ ld [hli], a
+ ld a, $c
+ ld [hli], a
+ ld a, $2
+ ld [hli], a
+ ld a, $1
+ ld [hli], a
+ ld [hl], $0
+ set 5, [hl]
+ inc hl
+ xor a
+ ld [hli], a
+ ld a, $20
+ ld [hli], a
+ ld a, $1
+ add $2
+ ld [hli], a
+ ld a, [PlayerGender]
+ and a
+ jr z, .asm_48764
+ ld a, $2
+ jr .asm_48766
+.asm_48764
+ ld a, $1
+.asm_48766
+ ld [hli], a
+ ld a, $1
+ ld [hli], a
+ xor a
+rept 3
+ ld [hli], a
+endr
+ ret
+
+Function4876f: ; 4876f (12:476f)
+ call Function48283
+ hlcoord 1, 16
+ ld de, String_484be
+ call PlaceString
+ ld hl, MenuDataHeader_0x48509
+ call LoadMenuDataHeader
+ ld a, [hInMenu]
+ push af
+ ld a, $1
+ ld [hInMenu], a
+ hlcoord 10, 5
+ ld b, $1
+ ld c, $8
+ call Function48cdc
+ call WaitBGMap
+ ld a, [wd473]
+ and a
+ jr z, .asm_487ab
+ cp $64
+ jr z, .asm_487b2
+ hlcoord 12, 5
+ ld [hl], $10
+ hlcoord 12, 7
+ ld [hl], $11
+ jr .asm_487b7
+.asm_487ab
+ hlcoord 12, 5
+ ld [hl], $10
+ jr .asm_487b7
+.asm_487b2
+ hlcoord 12, 7
+ ld [hl], $11
+.asm_487b7
+ hlcoord 11, 6
+ call Function487ec
+ ld c, 10
+ call DelayFrames
+ ld a, [wd473]
+ push af
+.asm_487c6
+ call JoyTextDelay
+ call Function4880e
+ jr nc, .asm_487c6
+ ld a, $1
+ call Function1ff8
+ pop bc
+ jr nz, .asm_487da
+ ld a, b
+ ld [wd473], a
+.asm_487da
+ ld a, [wd473]
+ call ExitMenu
+ hlcoord 11, 6
+ call Function487ec
+ pop af
+ ld [hInMenu], a
+ jp Function4840c
+
+Function487ec: ; 487ec (12:47ec)
+ push hl
+ ld de, wd473
+ call Function487ff
+ pop hl
+rept 4
+ inc hl
+endr
+ ld de, String_4880d
+ call PlaceString
+ ret
+
+Function487ff: ; 487ff (12:47ff)
+ push hl
+ ld a, " "
+ ld [hli], a
+ ld [hl], a
+ pop hl
+ ld b, PRINTNUM_LEADINGZEROS | 1
+ ld c, 3
+ call PrintNum
+ ret
+; 4880d (12:480d)
+
+String_4880d: ; 4880d
+ db "@"
+; 4880e
+
+Function4880e: ; 4880e (12:480e)
+ ld a, [hJoyPressed]
+ and A_BUTTON
+ jp nz, Function488b9
+ ld a, [hJoyPressed]
+ and B_BUTTON
+ jp nz, Function488b4
+ ld hl, hJoyLast
+ ld a, [hl]
+ and D_UP
+ jr nz, .asm_48843
+ ld a, [hl]
+ and D_DOWN
+ jr nz, .asm_48838
+ ld a, [hl]
+ and D_LEFT
+ jr nz, .asm_4884f
+ ld a, [hl]
+ and D_RIGHT
+ jr nz, .asm_4885f
+ call DelayFrame
+ and a
+ ret
+.asm_48838
+ ld hl, wd473
+ ld a, [hl]
+ and a
+ jr z, .asm_48840
+ dec a
+.asm_48840
+ ld [hl], a
+ jr .asm_4886f
+.asm_48843
+ ld hl, wd473
+ ld a, [hl]
+ cp $64
+ jr nc, .asm_4884c
+ inc a
+.asm_4884c
+ ld [hl], a
+ jr .asm_4886f
+.asm_4884f
+ ld a, [wd473]
+ cp $5b
+ jr c, .asm_48858
+ ld a, $5a
+.asm_48858
+ add $a
+ ld [wd473], a
+ jr .asm_4886f
+.asm_4885f
+ ld a, [wd473]
+ cp $a
+ jr nc, .asm_48868
+ ld a, $a
+.asm_48868
+ sub $a
+ ld [wd473], a
+ jr .asm_4886f
+.asm_4886f
+ ld a, [wd473]
+ and a
+ jr z, .asm_48887
+ cp $64
+ jr z, .asm_48898
+ jr z, .asm_488a7
+ hlcoord 12, 5
+ ld [hl], $10
+ hlcoord 12, 7
+ ld [hl], $11
+ jr .asm_488a7
+.asm_48887
+ hlcoord 10, 5
+ ld b, $1
+ ld c, $8
+ call Function48cdc
+ hlcoord 12, 5
+ ld [hl], $10
+ jr .asm_488a7
+.asm_48898
+ hlcoord 10, 5
+ ld b, $1
+ ld c, $8
+ call Function48cdc
+ hlcoord 12, 7
+ ld [hl], $11
+.asm_488a7
+ hlcoord 11, 6
+ call Function487ec
+ call WaitBGMap
+ ld a, $1
+ and a
+ ret
+
+Function488b4: ; 488b4 (12:48b4)
+ ld a, $0
+ and a
+ scf
+ ret
+
+Function488b9: ; 488b9 (12:48b9)
+ ld a, [wd003]
+ set 1, a
+ ld [wd003], a
+ scf
+ ret
+; 488c3 (12:48c3)
+
+GFX_488c3: ; 488c3
+INCBIN "gfx/unknown/0488c3.2bpp"
+
+GFX_488cb: ; 488cb
+INCBIN "gfx/unknown/0488cb.2bpp"
+
+Function488d3: ; 488d3 (12:48d3)
+ call Function48283
+ hlcoord 1, 16
+ ld de, String_484e2
+ call PlaceString
+ call Function48a3a
+ jp c, Function4840c
+ ld hl, MenuDataHeader_0x4850e
+ call LoadMenuDataHeader
+ ld a, [hInMenu]
+ push af
+ ld a, $1
+ ld [hInMenu], a
+ hlcoord 10, 9
+ ld b, $1
+ ld c, $8
+ call Function48cdc
+ ld a, [wd475]
+ and $f
+ ld d, $0
+ hlcoord 11, 10
+ call Function489ea
+ call WaitBGMap
+ ld a, [wd475]
+ ld b, a
+ ld a, [wd476]
+ ld c, a
+ ld a, [wd477]
+ ld d, a
+ ld a, [wd478]
+ ld e, a
+ push de
+ push bc
+ ld d, $0
+ ld b, $0
+
+asm_48922: ; 48922 (12:4922)
+ push bc
+ call JoyTextDelay
+ ld a, [hJoyDown]
+ and a
+ jp z, Function4896e
+ bit 0, a
+ jp nz, Function4896e
+ bit 1, a
+ jp nz, Function4896e
+ ld a, [wd002]
+ and %11001111
+ res 7, a
+ ld [wd002], a
+ pop bc
+ inc b
+ ld a, b
+ cp $5
+ push bc
+ jr c, .asm_4894c
+ pop bc
+ ld b, $4
+ push bc
+.asm_4894c
+ pop bc
+ push bc
+ ld a, b
+ cp $4
+ jr nz, asm_48972
+ ld c, 10
+ call DelayFrames
+ jr asm_48972
+; 4895a (12:495a)
+
+Function4895a: ; 4895a
+ ld a, [hJoyPressed]
+ and a
+ jr z, .asm_48965
+ pop bc
+ ld b, $1
+ push bc
+ jr asm_48972
+
+.asm_48965
+ ld a, [hJoyLast]
+ and a
+ jr z, asm_48972
+
+ pop bc
+ ld b, $1
+ push bc
+
+Function4896e: ; 4896e (12:496e)
+ pop bc
+ ld b, $0
+ push bc
+
+asm_48972: ; 48972 (12:4972)
+ call Function48ab5
+ push af
+ cp $f0
+ jr z, .asm_48994
+ cp $f
+ jr nz, .asm_48988
+ ld a, [wd002]
+ set 7, a
+ and $cf
+ ld [wd002], a
+.asm_48988
+ hlcoord 11, 10
+ ld b, $0
+ ld c, d
+ add hl, bc
+ ld b, $3
+ call Function48c11
+.asm_48994
+ call WaitBGMap
+ pop af
+ pop bc
+ jr nc, asm_48922
+ jr nz, .asm_489b1
+ pop bc
+ ld a, b
+ ld [wd475], a
+ ld a, c
+ ld [wd476], a
+ pop bc
+ ld a, b
+ ld [wd477], a
+ ld a, c
+ ld [wd478], a
+ jr .asm_489c5
+.asm_489b1
+ push af
+ ld a, [wd479]
+ set 0, a
+ ld [wd479], a
+ ld a, [wd003]
+ set 3, a
+ ld [wd003], a
+ pop af
+ pop bc
+ pop bc
+.asm_489c5
+ push af
+ push bc
+ push de
+ push hl
+ ld a, $1
+ call Function1ff8
+ pop hl
+ pop de
+ pop bc
+ pop af
+ call ExitMenu
+ hlcoord 11, 10
+ call Function489ea
+ hlcoord 11, 9
+ lb bc, 1, 8
+ call ClearBox
+ pop af
+ ld [hInMenu], a
+ jp Function4840c
+
+Function489ea: ; 489ea (12:49ea)
+ push de
+ ld a, [wd475]
+ and $f
+ call Function48444
+ ld a, [wd476]
+ and $f0
+ swap a
+ inc hl
+ call Function48444
+ ld a, [wd476]
+ and $f
+ inc hl
+ call Function48444
+ inc hl
+ ld de, String_48a38
+ call PlaceString
+ ld a, [wd477]
+ and $f0
+ swap a
+ inc hl
+ call Function48444
+ ld a, [wd477]
+ and $f
+ inc hl
+ call Function48444
+ ld a, [wd478]
+ and $f0
+ swap a
+ inc hl
+ call Function48444
+ ld a, [wd478]
+ and $f
+ inc hl
+ call Function48444
+ pop de
+ ret
+; 48a38 (12:4a38)
+
+String_48a38: ; 48a38
+ db "-@"
+; 48a3a
+
+Function48a3a: ; 48a3a (12:4a3a)
+ ld hl, MenuDataHeader_0x48a9c
+ call LoadMenuDataHeader
+ call Function4873c
+ ld a, $a
+ ld [wcfa1], a
+ ld a, $b
+ ld [wcfa2], a
+ ld a, $1
+ ld [MenuSelection2], a
+ hlcoord 10, 8
+ ld b, $4
+ ld c, $8
+ call Function48cdc
+ hlcoord 12, 10
+ ld de, String_48aa1
+ call PlaceString
+ call Function1bc9
+ push af
+ call PlayClickSFX
+ call ExitMenu
+ pop af
+ bit 1, a
+ jp nz, Function48a9a
+ ld a, [MenuSelection2]
+ cp $1
+ jr z, .asm_48a98
+ ld a, [wd003]
+ set 3, a
+ ld [wd003], a
+ ld a, [wd479]
+ res 0, a
+ ld [wd479], a
+ xor a
+ ld bc, $4
+ ld hl, wd475
+ call ByteFill
+ jr Function48a9a
+.asm_48a98
+ and a
+ ret
+
+Function48a9a: ; 48a9a (12:4a9a)
+ scf
+ ret
+; 48a9c (12:4a9c)
+
+MenuDataHeader_0x48a9c: ; 0x48a9c
+ db $40 ; flags
+ db 08, 10 ; start coords
+ db 13, 19 ; end coord
+
+String_48aa1: ; 48aa1
+ db "Tell Now"
+ next "Tell Later@"
+; 48ab5
+
+
+Function48ab5: ; 48ab5 (12:4ab5)
+ ld a, [hJoyPressed]
+ and A_BUTTON
+ jp nz, Function48c0f
+ ld a, [hJoyPressed]
+ and B_BUTTON
+ jp nz, Function48c0d
+ ld a, d
+ and a
+ jr z, .asm_48adf
+ cp $1
+ jr z, .asm_48ae7
+ cp $2
+ jr z, .asm_48af1
+ cp $3
+ jr z, .asm_48af9
+ cp $4
+ jr z, .asm_48b03
+ cp $5
+ jr z, .asm_48b0b
+ cp $6
+ jr .asm_48b15
+.asm_48adf
+ ld hl, wd475
+ ld a, [hl]
+ and $f
+ jr .asm_48b1d
+.asm_48ae7
+ ld hl, wd476
+ ld a, [hl]
+ swap a
+ or $f0
+ jr .asm_48b1d
+.asm_48af1
+ ld hl, wd476
+ ld a, [hl]
+ and $f
+ jr .asm_48b1d
+.asm_48af9
+ ld hl, wd477
+ ld a, [hl]
+ swap a
+ or $f0
+ jr .asm_48b1d
+.asm_48b03
+ ld hl, wd477
+ ld a, [hl]
+ and $f
+ jr .asm_48b1d
+.asm_48b0b
+ ld hl, wd478
+ ld a, [hl]
+ swap a
+ or $f0
+ jr .asm_48b1d
+.asm_48b15
+ ld hl, wd478
+ ld a, [hl]
+ and $f
+ jr .asm_48b1d
+.asm_48b1d
+ push hl
+ push af
+ ld e, $0
+ hlcoord 11, 10
+ ld a, d
+.asm_48b25
+ and a
+ jr z, .asm_48b2c
+ inc e
+ dec a
+ jr .asm_48b25
+.asm_48b2c
+ ld hl, hJoyLast
+ ld a, [hl]
+ and D_UP
+ jr nz, .asm_48b8d
+ ld a, [hl]
+ and D_DOWN
+ jr nz, .asm_48b55
+ ld a, [hl]
+ and D_LEFT
+ jp nz, Function48bd7
+ ld a, [hl]
+ and D_RIGHT
+ jr nz, .asm_48b9d
+ hlcoord 11, 10
+ call Function489ea
+ ld a, [wd002]
+ bit 7, a
+ jr nz, .asm_48b51
+.asm_48b51
+ pop bc
+ pop bc
+ and a
+ ret
+.asm_48b55
+ pop af
+ ld b, a
+ and $f
+ and a
+ ld a, b
+ jr nz, .asm_48b61
+ and $f0
+ add $a
+.asm_48b61
+ dec a
+.asm_48b62
+ push de
+ push af
+ hlcoord 10, 9
+ ld b, $1
+ ld c, $8
+ call Function48cdc
+ pop af
+ pop de
+ hlcoord 11, 10
+ ld b, a
+ ld a, d
+ cp $3
+ jr c, .asm_48b7a
+ inc hl
+.asm_48b7a
+ ld a, b
+ pop hl
+ bit 7, a
+ jr z, .asm_48b85
+ call Function48c4d
+ jr .asm_48b88
+.asm_48b85
+ call Function48c5a
+.asm_48b88
+ ld a, $f0
+ jp Function48c00
+.asm_48b8d
+ pop af
+ ld b, a
+ and $f
+ cp $9
+ ld a, b
+ jr c, .asm_48b9a
+ and $f0
+ add $ff
+.asm_48b9a
+ inc a
+ jr .asm_48b62
+.asm_48b9d
+ push de
+ hlcoord 10, 9
+ ld b, $1
+ ld c, $8
+ call Function48cdc
+ pop de
+ ld a, d
+ cp $6
+ jr nc, .asm_48baf
+ inc d
+.asm_48baf
+ pop af
+ pop hl
+ ld b, a
+ ld a, d
+ cp $6
+ ld a, b
+ jr z, .asm_48bc4
+ bit 7, a
+ jr nz, .asm_48bc4
+ inc hl
+ ld a, [hl]
+ swap a
+ and $f
+ jr asm_48bc7
+.asm_48bc4
+ ld a, [hl]
+ and $f
+
+asm_48bc7: ; 48bc7 (12:4bc7)
+ hlcoord 11, 10
+ push af
+ ld a, d
+ cp $3
+ pop bc
+ ld a, b
+ jr c, .asm_48bd3
+ inc hl
+.asm_48bd3
+ ld a, $f
+ jr Function48c00
+
+Function48bd7: ; 48bd7 (12:4bd7)
+ push de
+ hlcoord 10, 9
+ ld b, $1
+ ld c, $8
+ call Function48cdc
+ pop de
+ ld a, d
+ and a
+ pop af
+ pop hl
+ ld b, a
+ ld a, d
+ and a
+ ld a, b
+ jr z, .asm_48bf3
+ bit 7, a
+ jr z, .asm_48bf8
+ dec d
+ dec hl
+.asm_48bf3
+ ld a, [hl]
+ and $f
+ jr asm_48bc7
+.asm_48bf8
+ dec d
+ ld a, [hl]
+ swap a
+ and $f
+ jr asm_48bc7
+
+Function48c00: ; 48c00 (12:4c00)
+ push af
+ hlcoord 11, 10
+ call Function489ea
+ ld a, $1
+ and a
+ pop bc
+ ld a, b
+ ret
+
+Function48c0d: ; 48c0d (12:4c0d)
+ xor a
+ and a
+
+Function48c0f: ; 48c0f (12:4c0f)
+ scf
+ ret
+
+Function48c11: ; 48c11 (12:4c11)
+ ld a, [wd002]
+ bit 7, a
+ jr z, .asm_48c20
+ ld a, d
+ cp $3
+ jr c, .asm_48c1e
+ inc hl
+.asm_48c1e
+ ld [hl], $7f
+.asm_48c20
+ ld a, [wd002]
+ swap a
+ and $3
+ inc a
+ cp b
+ jr nz, .asm_48c40
+ ld a, [wd002]
+ bit 7, a
+ jr z, .asm_48c3a
+ res 7, a
+ ld [wd002], a
+ xor a
+ jr .asm_48c40
+.asm_48c3a
+ set 7, a
+ ld [wd002], a
+ xor a
+.asm_48c40
+ swap a
+ ld b, a
+ ld a, [wd002]
+ and $cf
+ or b
+ ld [wd002], a
+ ret
+
+Function48c4d: ; 48c4d (12:4c4d)
+ swap a
+ and $f0
+ push af
+ ld a, [hl]
+ and $f
+ ld [hl], a
+ pop af
+ or [hl]
+ ld [hl], a
+ ret
+
+Function48c5a: ; 48c5a (12:4c5a)
+ push af
+ ld a, [hl]
+ and $f0
+ ld [hl], a
+ pop af
+ or [hl]
+ ld [hl], a
+ ret
+
+Function48c63: ; 48c63
+ ld a, "@"
+ ld [de], a
+ ld a, c
+ cp $30
+ jr nc, .asm_48c8c
+ and a
+ jr z, .asm_48c8c
+ dec c
+ push de
+ ld h, d
+ ld l, e
+ ld a, "@"
+ ld b, 7
+.asm_48c76
+ ld [hli], a
+ dec b
+ jr nz, .asm_48c76
+ ld hl, Prefectures
+ ld a, c
+ call GetNthString
+.asm_48c81
+ ld a, [hli]
+ ld [de], a
+ inc de
+ ld a, [hl]
+ cp "@"
+ jr nz, .asm_48c81
+ and a
+ pop de
+ ret
+
+.asm_48c8c
+ scf
+ ret
+; 48c8e
+
+Function48c8e: ; 48c8e
+ ld hl, wd02a
+ ld d, h
+ ld e, l
+ callba Function48c63
+ hlcoord 10, 7
+ call PlaceString
+ call WaitBGMap
+ ret
+; 48ca3
+
+Function48ca3: ; 48ca3
+ push af
+ push bc
+ push de
+ push hl
+ ld b, 0
+ ld c, 0
+ ld d, 0
+.asm_48cad
+ cp 100
+ jr c, .asm_48cb6
+ sub 100
+ inc b
+ jr .asm_48cad
+
+.asm_48cb6
+ cp 10
+ jr c, .asm_48cbf
+ sub 10
+ inc c
+ jr .asm_48cb6
+
+.asm_48cbf
+ cp 1
+ jr c, .asm_48cc7
+ dec a
+ inc d
+ jr .asm_48cbf
+
+.asm_48cc7
+ ld a, b
+ call Function48444
+ inc hl
+ ld a, c
+ call Function48444
+ inc hl
+ ld a, d
+ call Function48444
+ pop hl
+ pop de
+ pop bc
+ pop af
+ ret
+; 48cda
+
+Function48cda: ; 48cda (12:4cda)
+ ld h, d
+ ld l, e
+
+Function48cdc: ; 48cdc (12:4cdc)
+ push bc
+ push hl
+ call Function48cfd
+ pop hl
+ pop bc
+ ld de, AttrMap - TileMap
+ add hl, de
+rept 2
+ inc b
+endr
+rept 2
+ inc c
+endr
+ ld a, $0
+.asm_48ced
+ push bc
+ push hl
+.asm_48cef
+ ld [hli], a
+ dec c
+ jr nz, .asm_48cef
+ pop hl
+ ld de, $14
+ add hl, de
+ pop bc
+ dec b
+ jr nz, .asm_48ced
+ ret
+
+Function48cfd: ; 48cfd (12:4cfd)
+ push hl
+ ld a, $4
+ ld [hli], a
+ inc a
+ call Function48d2a
+ inc a
+ ld [hl], a
+ pop hl
+ ld de, $14
+ add hl, de
+.asm_48d0c
+ push hl
+ ld a, $7
+ ld [hli], a
+ ld a, $7f
+ call Function48d2a
+ ld [hl], $8
+ pop hl
+ ld de, $14
+ add hl, de
+ dec b
+ jr nz, .asm_48d0c
+ ld a, $9
+ ld [hli], a
+ ld a, $a
+ call Function48d2a
+ ld [hl], $b
+ ret
+
+Function48d2a: ; 48d2a (12:4d2a)
+ ld d, c
+.asm_48d2b
+ ld [hli], a
+ dec d
+ jr nz, .asm_48d2b
+ ret
+
+Function48d30: ; 48d30 (12:4d30)
+ ld hl, wd475
+ call Function48d4a
+ ld hl, wd477
+ call Function48d4a
+ ret
+
+Function48d3d: ; 48d3d (12:4d3d)
+ ld hl, wd475
+ call Function48d94
+ ld hl, wd477
+ call Function48d94
+ ret
+
+Function48d4a: ; 48d4a (12:4d4a)
+ inc hl
+ ld a, [hl]
+ ld b, a
+ and $f
+ ld c, a
+ srl b
+ srl b
+ srl b
+ srl b
+ push bc
+ ld c, 10
+ ld a, b
+ call SimpleMultiply
+ pop bc
+ add c
+ ld [hld], a
+ xor a
+ ld [hMultiplicand + 0], a
+ ld [hMultiplicand + 1], a
+ ld a, [hl]
+ srl a
+ srl a
+ srl a
+ srl a
+ ld c, 10
+ call SimpleMultiply
+ ld b, a
+ ld a, [hli]
+ and $f
+ add b
+ ld [hMultiplicand + 2], a
+ ld a, 100
+ ld [hMultiplier], a
+ call Multiply
+ ld a, [hProduct + 2]
+ ld b, a
+ ld a, [hProduct + 3]
+ ld c, a
+ ld e, [hl]
+ add e
+ ld c, a
+ ld a, b
+ adc $0
+ ld b, a
+ ld a, c
+ ld [hld], a
+ ld [hl], b
+ ret
+
+Function48d94: ; 48d94 (12:4d94)
+ xor a
+ ld [hDividend + 0], a
+ ld [hDividend + 1], a
+ ld a, [hli]
+ ld [hDividend + 0], a
+ ld a, [hl]
+ ld [hDividend + 1], a
+ ld a, 100
+ ld [hDivisor], a
+ ld b, 2
+ call Divide
+ ld a, [hDivisor]
+ ld c, $a
+ call SimpleDivide
+ sla b
+ sla b
+ sla b
+ sla b
+ or b
+ ld [hld], a
+ ld a, [hQuotient + 2]
+ ld c, 10
+ call SimpleDivide
+ sla b
+ sla b
+ sla b
+ sla b
+ or b
+ ld [hl], a
+ ret
diff --git a/misc/mobile_22.asm b/misc/mobile_22.asm
index 291006118..061e67117 100644
--- a/misc/mobile_22.asm
+++ b/misc/mobile_22.asm
@@ -93,7 +93,7 @@ Function8919e: ; 8919e (22:519e)
Function891ab: ; 891ab
call Function89240
- callba Function104061
+ callba ReloadMapPart
call Function8923c
ret
; 891b8
@@ -150,13 +150,13 @@ Function891fe: ; 891fe
Function89209: ; 89209
ld a, 1
- ld [wc2ce], a
+ ld [wSpriteUpdatesEnabled], a
ret
; 8920f
Function8920f: ; 8920f
ld a, 0
- ld [wc2ce], a
+ ld [wSpriteUpdatesEnabled], a
ret
; 89215
@@ -623,7 +623,7 @@ Function8949c: ; 8949c
ld a, 5
ld [rSVBK], a
ld hl, Palette_894b3
- ld de, wMapPals + 8 * 7
+ ld de, UnknBGPals + 8 * 7
ld bc, 8
call CopyBytes
pop af
@@ -665,35 +665,37 @@ Function894dc: ; 894dc
push af
ld a, 5
ld [rSVBK], a
+
ld c, d
ld b, 0
- ld hl, Unknown_89509
+ ld hl, .PalettePointers
rept 2
add hl, bc
endr
ld a, [hli]
ld h, [hl]
ld l, a
- ld de, wMapPals
- ld bc, 24
+ ld de, UnknBGPals
+ ld bc, 3 palettes
call CopyBytes
- ld hl, Palette_89557
- ld de, wd018
- ld bc, 24
+ ld hl, .Pals345
+ ld de, UnknBGPals + 3 palettes
+ ld bc, 3 palettes
call CopyBytes
+
pop af
ld [rSVBK], a
pop bc
ret
; 89509
-Unknown_89509: ; 89509
- dw Palette_8950f
- dw Palette_89527
- dw Palette_8953f
+.PalettePointers: ; 89509
+ dw .Pals012a
+ dw .Pals012b
+ dw .Pals012c
; 8950f
-Palette_8950f: ; 8950f
+.Pals012a: ; 8950f
RGB 31, 31, 31
RGB 10, 17, 13
RGB 10, 08, 22
@@ -709,7 +711,7 @@ Palette_8950f: ; 8950f
RGB 10, 17, 13
RGB 00, 00, 00
-Palette_89527: ; 89527
+.Pals012b: ; 89527
RGB 31, 31, 31
RGB 30, 22, 11
RGB 31, 08, 15
@@ -725,7 +727,7 @@ Palette_89527: ; 89527
RGB 30, 22, 11
RGB 00, 00, 00
-Palette_8953f: ; 8953f
+.Pals012c: ; 8953f
RGB 31, 31, 31
RGB 15, 20, 26
RGB 25, 07, 20
@@ -741,7 +743,7 @@ Palette_8953f: ; 8953f
RGB 15, 20, 26
RGB 00, 00, 00
-Palette_89557: ; 89557
+.Pals345: ; 89557
RGB 31, 31, 31
RGB 31, 31, 31
RGB 31, 13, 00
@@ -2152,7 +2154,7 @@ Function89d0d: ; 89d0d (22:5d0d)
ld a, $5
ld [rSVBK], a
ld c, $8
- ld de, wMapPals
+ ld de, UnknBGPals
.asm_89d1c
push bc
ld hl, Palette_89d4e
@@ -3392,7 +3394,7 @@ Function8a5b6: ; 8a5b6 (22:65b6)
ld bc, $18
call CopyBytes
ld hl, Palette_8a5fd
- ld de, Unkn2Pals
+ ld de, UnknOBPals
ld bc, $8
call CopyBytes
ld hl, Palette_8a605
@@ -3439,7 +3441,7 @@ Function8a60d: ; 8a60d
ld a, $5
ld [rSVBK], a
ld hl, Palette_8a624
- ld de, Unkn2Pals
+ ld de, UnknOBPals
ld bc, $0008
call CopyBytes
pop af
diff --git a/misc/mobile_22_2.asm b/misc/mobile_22_2.asm
index 7a206e3e0..b794ba33a 100644
--- a/misc/mobile_22_2.asm
+++ b/misc/mobile_22_2.asm
@@ -610,7 +610,7 @@ Function8b6bb: ; 8b6bb
ld a, $5
ld [rSVBK], a
ld hl, Palette_8b6d5
- ld de, wMapPals
+ ld de, UnknBGPals
ld bc, $0018
call CopyBytes
pop af
@@ -805,7 +805,7 @@ Function8b7bd: ; 8b7bd
ld a, [wd030]
ld [wMenuCursorBuffer], a
ld a, [wd031]
- ld [wd0e4], a
+ ld [wMenuScrollPosition], a
ld a, [wd032]
and a
jr z, .asm_8b7e0
@@ -856,13 +856,13 @@ Function8b7bd: ; 8b7bd
ld c, a
ld a, [MenuSelection2]
ld [wd030], a
- ld a, [wd0e4]
+ ld a, [wMenuScrollPosition]
ld [wd031], a
ret
; 8b832
Function8b832: ; 8b832
- ld a, [wd0e4]
+ ld a, [wMenuScrollPosition]
ld hl, wMenuData2Items
sub [hl]
jr nc, Function8b84b
@@ -871,7 +871,7 @@ Function8b832: ; 8b832
; 8b83e
Function8b83e: ; 8b83e
- ld a, [wd0e4]
+ ld a, [wMenuScrollPosition]
ld hl, wMenuData2Items
add [hl]
cp $24
@@ -879,7 +879,7 @@ Function8b83e: ; 8b83e
ld a, $24
Function8b84b: ; 8b84b
- ld [wd0e4], a
+ ld [wMenuScrollPosition], a
ld a, [MenuSelection2]
ld [wMenuCursorBuffer], a
ret
@@ -994,7 +994,7 @@ endr
hlcoord 19, 13
ld a, $11
ld [hl], a
- ld a, [wd0e4]
+ ld a, [wMenuScrollPosition]
cp $24
ret c
hlcoord 0, 13
@@ -1018,7 +1018,7 @@ String_8b938: db "いれる ところを えらんでください@" ; Please sel
Function8b94a: ; 8b94a
ld [wd033], a
xor a
- ld [wd0e4], a
+ ld [wMenuScrollPosition], a
ld [wd032], a
ld [wd0e3], a
ld [wd031], a
diff --git a/misc/mobile_40.asm b/misc/mobile_40.asm
index 4743f2c27..9b98046c0 100644
--- a/misc/mobile_40.asm
+++ b/misc/mobile_40.asm
@@ -171,6 +171,7 @@ Function1000fa: ; 1000fa
ld [hFFC9], a
ld [hMobile], a
ei
+
ld a, [wLinkMode]
push af
xor a
@@ -837,7 +838,7 @@ Jumptable_10052a: ; 10052a
Function100534: ; 100534
call Function100513
call UpdateSprites
- call Function321c
+ call ApplyTilemap
ld a, [wcd28]
inc a
ld [wcd28], a
@@ -1495,7 +1496,7 @@ Function100902: ; 100902
call PrintNum
ld de, SFX_TWO_PC_BEEPS
call PlaySFX
- callba Function104061
+ callba ReloadMapPart
ld c, $3c
call DelayFrames
ret
@@ -1506,7 +1507,7 @@ Function100902: ; 100902
call PlaceString
ld de, SFX_4_NOTE_DITTY
call PlaySFX
- callba Function104061
+ callba ReloadMapPart
ld c, 120
call DelayFrames
ret
@@ -1536,7 +1537,7 @@ Function100989: ; 100989
decoord 0, 0
call Function1009a5
call Function1009ae
- callba Function104061
+ callba ReloadMapPart
ld hl, w3_dd68
decoord 0, 0, AttrMap
call Function1009a5
@@ -1591,7 +1592,7 @@ Function1009d2: ; 1009d2
ld [rVBK], a
ld hl, w3_d800
- ld de, VBGMap0
+ debgcoord 0, 0
lb bc, $3, $24
call Get2bpp
@@ -1620,78 +1621,81 @@ Function1009f3: ; 1009f3
ret
; 100a09
-Function100a09: ; 100a09
- call Function100a2e
+_LinkBattleSendReceiveAction: ; 100a09
+ call .StageForSend
ld [wd431], a
- callba Function4000
+ callba PlaceWaitingText
ld a, [wLinkMode]
cp LINK_MOBILE
- jr nz, .asm_100a2a
+ jr nz, .not_mobile
call Function100a87
call Function100da5
callba FinishBattleAnim
- jr .asm_100a2d
+ jr .done
-.asm_100a2a
+.not_mobile
call Function100a53
-.asm_100a2d
+.done
ret
; 100a2e
-Function100a2e: ; 100a2e
- ld a, [wd0ec]
+.StageForSend: ; 100a2e
+ ld a, [wPlayerAction]
and a
- jr nz, .asm_100a48
+ jr nz, .switch
ld a, [CurPlayerMove]
- ld b, $e
+ ld b, BATTLEACTION_E
cp STRUGGLE
- jr z, .asm_100a4f
- ld b, $d
+ jr z, .struggle
+ ld b, BATTLEACTION_D
cp $ff
- jr z, .asm_100a4f
+ jr z, .struggle
ld a, [CurMoveNum]
- jr .asm_100a50
+ jr .use_move
-.asm_100a48
+.switch
ld a, [CurPartyMon]
- add $4
- jr .asm_100a50
+ add BATTLEACTION_SWITCH1
+ jr .use_move
-.asm_100a4f
+.struggle
ld a, b
-.asm_100a50
+.use_move
and $f
ret
; 100a53
Function100a53: ; 100a53
ld a, [wd431]
- ld [wcf56], a
+ ld [wPlayerLinkAction], a
ld a, $ff
- ld [wcf52], a
-.asm_100a5e
- call Function8c1
+ ld [wOtherPlayerLinkAction], a
+.waiting
+ call LinkCommunicationsSendReceive
call DelayFrame
- ld a, [wcf52]
+ ld a, [wOtherPlayerLinkAction]
inc a
- jr z, .asm_100a5e
- ld b, $a
-.asm_100a6c
+ jr z, .waiting
+
+ ld b, 10
+.receive
call DelayFrame
- call Function8c1
+ call LinkCommunicationsSendReceive
dec b
- jr nz, .asm_100a6c
- ld b, $a
-.asm_100a77
+ jr nz, .receive
+
+ ld b, 10
+.acknowledge
call DelayFrame
- call Function908
+ call LinkCommunicationsSignalDataReceived
dec b
- jr nz, .asm_100a77
- ld a, [wcf52]
- ld [wd430], a
+ jr nz, .acknowledge
+
+ ld a, [wOtherPlayerLinkAction]
+ ld [wBattleAction], a
ret
; 100a87
@@ -1843,17 +1847,17 @@ Function100b7a: ; 100b7a
callba Function24085
callba MobileTextBorder
call UpdateSprites
- call Function321c
+ call ApplyTilemap
callba Function2411a
ld hl, wcfa5
set 7, [hl]
ret
; 100b9f
-Function100b9f: ; 100b9f
+MobileMoveSelectionScreen: ; 100b9f
xor a
ld [wd0e3], a
- callba Function3e786
+ callba CheckPlayerHasUsableMoves
ret z
call Function100dd8
jp c, xor_a_dec_a
@@ -1984,7 +1988,7 @@ Function100c74: ; 100c74
Function100c98: ; 100c98
ld de, Unknown_100cad
- call Function1bb1
+ call InitMenu3
ld a, [wd0eb]
inc a
ld [wcfa3], a
@@ -2148,7 +2152,7 @@ Function100db0: ; 100db0
Function100dc0: ; 100dc0
ld a, [wLinkMode]
- cp $4
+ cp LINK_MOBILE
jr nz, .asm_100dd0
ld hl, wcd2a
bit 3, [hl]
@@ -2523,7 +2527,7 @@ Unknown_100fc0: ; 100fc0
db -1
Unknown_100feb: ; 100feb
- dbwww $00, sPartyScratch1, SCRATCHMON_STRUCT_LENGTH * PARTY_LENGTH, NULL
+ dbwww $00, sPartyMail, MAIL_STRUCT_LENGTH * PARTY_LENGTH, NULL
db -1
Unknown_100ff3: ; 100ff3
@@ -2794,16 +2798,16 @@ Function1011f1: ; 1011f1
res 4, [hl]
ld hl, GameTimerPause
bit 7, [hl]
- jr z, .asm_101210
+ jr z, .skip
ld hl, wdc41
set 4, [hl]
-.asm_101210
+.skip
call Function10209c
xor a
ld [wdc5f], a
ld [wdc60], a
- ld a, $4
+ ld a, LINK_MOBILE
ld [wLinkMode], a
ret
; 101220
@@ -6305,7 +6309,7 @@ Function1029cf: ; 1029cf
ld hl, wcd4b
set 1, [hl]
ld de, Unknown_102a33
- call Function1bb1
+ call InitMenu3
ld a, [wcd4a]
inc a
ld [wcd4a], a
@@ -6465,7 +6469,7 @@ Function102b32: ; 102b32
ld [CurPartyMon], a
ld a, $1
ld [wd1e9], a
- callba Function421d8
+ callba EvolvePokemon
call Function102d9a
call Function102dd3
call Function102dec
@@ -6478,7 +6482,7 @@ Function102b4e: ; 102b4e
ld a, [MenuSelection2]
push af
ld de, Unknown_102b73
- call Function1bb1
+ call InitMenu3
pop af
ld [MenuSelection2], a
ld a, [OTPartyCount]
@@ -6503,7 +6507,7 @@ Function102b7b: ; 102b7b
ld a, [MenuSelection2]
push af
ld de, Unknown_102b94
- call Function1bb1
+ call InitMenu3
pop af
ld [MenuSelection2], a
ld a, [PartyCount]
@@ -6769,7 +6773,7 @@ Function102d48: ; 102d48
ld hl, PartyMon1DVs
call AddNTimes
predef GetUnownLetter
- callba Functionfba18
+ callba UpdateUnownDex
ld a, [wdef4]
and a
jr nz, .asm_102d98
@@ -6825,7 +6829,7 @@ Function102dd3: ; 102dd3
Function102dec: ; 102dec
ld hl, Unknown_1032e2
- ld de, Unkn2Pals
+ ld de, UnknOBPals
ld bc, $0020
ld a, $5
call FarCopyWRAM
@@ -7686,9 +7690,9 @@ Unknown_1035d7: ; 1035d7
dw Unknown_103608
dw Unknown_1035fe
- dw Function103612
- dw Function103612
- dw Function103612
+ dw AskMobileOrCable
+ dw AskMobileOrCable
+ dw AskMobileOrCable
Unknown_1035e7: ; 1035e7
dwcoord 0, 6
@@ -7719,18 +7723,18 @@ Unknown_103608: ; 103608
db 2, 2, 3
; 103612
-Function103612: ; 103612
+AskMobileOrCable: ; 103612
ld hl, MenuDataHeader_103640
call LoadMenuDataHeader
ld a, [wdc40]
and $f
- jr z, .asm_103622
+ jr z, .skip_load
ld [wMenuCursorBuffer], a
-.asm_103622
+.skip_load
call InterpretMenu2
call WriteBackup
- jr c, .asm_10363b
+ jr c, .pressed_b
ld a, [MenuSelection2]
ld [ScriptVar], a
ld c, a
@@ -7740,7 +7744,7 @@ Function103612: ; 103612
ld [wdc40], a
ret
-.asm_10363b
+.pressed_b
xor a
ld [ScriptVar], a
ret
@@ -7958,16 +7962,16 @@ Function10378c: ; 10378c
ld c, $0
ld hl, SwarmFlags
bit 4, [hl]
- jr nz, .asm_10379c
+ jr nz, .already_set
ld c, $1
ld hl, SwarmFlags
set 4, [hl]
-.asm_10379c
+.already_set
push bc
- callba Function14ab2
+ callba Link_SaveGame
pop bc
- jr c, .asm_1037b5
+ jr c, .failed_to_save
ld a, $1
ld [ScriptVar], a
ld a, c
@@ -7976,7 +7980,7 @@ Function10378c: ; 10378c
callba Function1006fd
ret
-.asm_1037b5
+.failed_to_save
xor a
ld [ScriptVar], a
ld a, c
@@ -7989,19 +7993,19 @@ Function10378c: ; 10378c
Function1037c2: ; 1037c2
call Function103823
- jr c, .asm_1037de
+ jr c, .nope
ld a, [wdc5f]
and a
- jr z, .asm_1037de
+ jr z, .nope
ld hl, UnknownText_0x1037e6
call PrintText
call YesNoBox
- jr c, .asm_1037de
+ jr c, .nope
ld a, $1
ld [ScriptVar], a
ret
-.asm_1037de
+.nope
xor a
ld [wdc5f], a
ld [ScriptVar], a
diff --git a/misc/mobile_41.asm b/misc/mobile_41.asm
index 9b2664e6b..69abe1cd2 100755
--- a/misc/mobile_41.asm
+++ b/misc/mobile_41.asm
@@ -743,7 +743,9 @@ endr
ret
; 10630f
-Function10630f: ; 10630f
+; functions related to the cable club and various NPC scripts referencing mobile communications
+
+Mobile_DummyReturnFalse: ; 10630f
xor a
ld [ScriptVar], a
ret
@@ -766,8 +768,10 @@ MobileFn_106314: mobile ; 106314
Function10632f: ; 10632f
or a
- mobile
+ ret
+Function106331: ; 106331 - called by Mobile_DummyReturnFalse in Crystal-J
+ ; check ~[4:b000] == [7:a800]
ld a, $4
call GetSRAMBank
ld a, [$b000]
@@ -781,17 +785,22 @@ Function10632f: ; 10632f
call CloseSRAM
ld a, c
cp b
- jr nz, .asm_106359
+ jr nz, .nope
+
+ ; check [7:a800] != 0
and a
- jr z, .asm_106359
- and $8f
+ jr z, .nope
+
+ ; check !([7:a800] & %01110000)
+ and %10001111
cp c
- jr nz, .asm_106359
+ jr nz, .nope
+
ld c, a
scf
ret
-.asm_106359
+.nope
xor a
ld c, a
ret
diff --git a/misc/mobile_42.asm b/misc/mobile_42.asm
index 39d27e941..0e25021bf 100644
--- a/misc/mobile_42.asm
+++ b/misc/mobile_42.asm
@@ -241,13 +241,13 @@ Function1081ad: ; 1081ad
Function1081ca: ; 1081ca
ld a, $1
ld [rVBK], a
- ld hl, VBGMap0
+ hlbgcoord 0, 0
ld bc, $0800
ld a, $0
call ByteFill
ld a, $0
ld [rVBK], a
- ld hl, VBGMap0
+ hlbgcoord 0, 0
ld bc, $0800
ld a, $7f
call ByteFill
@@ -276,7 +276,7 @@ Function108201: ; 108201
ld [CurSpecies], a
call GetBaseData
pop de
- predef Function5108b
+ predef FrontpicPredef
ret
; 108219
@@ -459,7 +459,7 @@ Function10830e: ; 10830e
ld [TempMonDVs], a
ld a, [$c6fe]
ld [TempMonDVs + 1], a
- ld b, $1a
+ ld b, SCGB_1A
call GetSGBLayout
ld a, $e4
call DmgToCgbBGPals
@@ -492,14 +492,14 @@ Function10830e: ; 10830e
ld c, $50
call DelayFrames
call Function108bec
- lb de, $54, $58
- ld a, $20
- call Function3b2a
+ depixel 10, 11, 4, 0
+ ld a, SPRITE_ANIM_INDEX_20
+ call _InitSpriteAnimStruct
ld de, SFX_BALL_POOF
call PlaySFX
hlcoord 0, 0
ld bc, $00f0
- ld a, $7f
+ ld a, " "
call ByteFill
ld c, $50
call Function1082cc
@@ -527,9 +527,9 @@ Function10839b: ; 10839b
ld [hWX], a
ld a, $90
ld [hWY], a
- lb de, $54, $58
- ld a, $21
- call Function3b2a
+ depixel 10, 11, 4, 0
+ ld a, SPRITE_ANIM_INDEX_21
+ call _InitSpriteAnimStruct
call Function108b45
ld a, $1
call Function108b98
@@ -552,7 +552,7 @@ Function10839b: ; 10839b
ld [TempMonDVs], a
ld a, [wPlayerWrapCount]
ld [TempMonDVs + 1], a
- ld b, $1a
+ ld b, SCGB_1A
call GetSGBLayout
ld a, $e4
call DmgToCgbBGPals
@@ -594,7 +594,7 @@ Function10842c: ; 10842c
ld [TempMonDVs], a
ld a, [$c6fe]
ld [TempMonDVs + 1], a
- ld b, $1a
+ ld b, SCGB_1A
call GetSGBLayout
ld a, $e4
call DmgToCgbBGPals
@@ -627,14 +627,14 @@ Function10842c: ; 10842c
ld c, $50
call DelayFrames
call Function108c2b
- lb de, $54, $58
- ld a, $20
- call Function3b2a
+ depixel 10, 11, 4, 0
+ ld a, SPRITE_ANIM_INDEX_20
+ call _InitSpriteAnimStruct
ld de, SFX_BALL_POOF
call PlaySFX
hlcoord 0, 0
ld bc, $00f0
- ld a, $7f
+ ld a, " "
call ByteFill
ld c, $50
call Function1082cc
@@ -671,9 +671,9 @@ Function1084d7: ; 1084d7
ld [hWX], a
ld a, $90
ld [hWY], a
- lb de, $54, $58
- ld a, $21
- call Function3b2a
+ depixel 10, 11, 4, 0
+ ld a, SPRITE_ANIM_INDEX_21
+ call _InitSpriteAnimStruct
call Function108b45
ld a, $1
call Function108b98
@@ -696,7 +696,7 @@ Function1084d7: ; 1084d7
ld [TempMonDVs], a
ld a, [wPlayerWrapCount]
ld [TempMonDVs + 1], a
- ld b, $1a
+ ld b, SCGB_1A
call GetSGBLayout
ld a, $e4
call DmgToCgbBGPals
@@ -740,9 +740,9 @@ Function108589: ; 108589
ld [hWX], a
ld a, $90
ld [hWY], a
- lb de, $54, $58
- ld a, $21
- call Function3b2a
+ depixel 10, 11, 4, 0
+ ld a, SPRITE_ANIM_INDEX_21
+ call _InitSpriteAnimStruct
call Function108b45
ld a, $1
call Function108b98
@@ -765,7 +765,7 @@ Function108589: ; 108589
ld [TempMonDVs], a
ld a, [wPlayerWrapCount]
ld [TempMonDVs + 1], a
- ld b, $1a
+ ld b, SCGB_1A
call GetSGBLayout
ld a, $e4
call DmgToCgbBGPals
@@ -804,7 +804,7 @@ Function108638: ; 108638
ld a, $5
ld [rSVBK], a
ld hl, Palette_109107
- ld de, wMapPals
+ ld de, UnknBGPals
ld bc, $0040
call CopyBytes
pop af
@@ -850,7 +850,7 @@ Function108689: ; 108689
ld a, $5
ld [rSVBK], a
ld hl, Palette_109107
- ld de, wMapPals
+ ld de, UnknBGPals
ld bc, $0040
call CopyBytes
pop af
@@ -894,7 +894,7 @@ Function1086f4: ; 1086f4
ld a, $5
ld [rSVBK], a
ld hl, Palette_109107
- ld de, wMapPals
+ ld de, UnknBGPals
ld bc, $0040
call CopyBytes
pop af
@@ -927,9 +927,9 @@ endr
ld [hSCX], a
cp $f8
jr nz, .asm_10878a
- lb de, $54, $58
- ld a, $22
- call Function3b2a
+ depixel 10, 11, 4, 0
+ ld a, SPRITE_ANIM_INDEX_22
+ call _InitSpriteAnimStruct
.asm_10878a
ld c, $1
@@ -953,9 +953,9 @@ endr
jr .asm_1087c4
.asm_1087a9
- lb de, $54, $58
- ld a, $22
- call Function3b2a
+ depixel 10, 11, 4, 0
+ ld a, SPRITE_ANIM_INDEX_22
+ call _InitSpriteAnimStruct
xor a
call Function108ad4
jr .asm_1087c4
@@ -985,18 +985,18 @@ Function1087cf: ; 1087cf
call Function1082f0
call Function108af4
call Function108b5a
- lb de, $4a, $50
- ld a, $25
- call Function3b2a
+ depixel 9, 10, 2, 0
+ ld a, SPRITE_ANIM_INDEX_25
+ call _InitSpriteAnimStruct
ld de, SFX_FORESIGHT
call PlaySFX
ld c, $a
call Function1082cc
xor a
ld [wcf64], a
- lb de, $4a, $50
- ld a, $23
- call Function3b2a
+ depixel 9, 10, 2, 0
+ ld a, SPRITE_ANIM_INDEX_23
+ call _InitSpriteAnimStruct
.asm_1087fc
ld a, [hSCY]
cp $90
@@ -1021,9 +1021,9 @@ Function108811: ; 108811
call PlaySFX
ld c, $3c
call Function1082cc
- lb de, $f2, $50
- ld a, $24
- call Function3b2a
+ depixel 30, 10, 2, 0
+ ld a, SPRITE_ANIM_INDEX_24
+ call _InitSpriteAnimStruct
call Function1082b7
ld de, SFX_THROW_BALL
call PlaySFX
@@ -1042,11 +1042,11 @@ Function108838: ; 108838
; 10884c
Function10884c: ; 10884c
- ld c, $50
+ ld c, 80
call DelayFrames
- lb de, $f2, $50
- ld a, $24
- call Function3b2a
+ depixel 30, 10, 2, 0
+ ld a, SPRITE_ANIM_INDEX_24
+ call _InitSpriteAnimStruct
call Function1082b7
ld de, SFX_THROW_BALL
call PlaySFX
@@ -1068,9 +1068,9 @@ Function108863: ; 108863
.asm_108879
callba Function8d03d
- lb de, $4a, $50
- ld a, $25
- call Function3b2a
+ depixel 9, 10, 2, 0
+ ld a, SPRITE_ANIM_INDEX_25
+ call _InitSpriteAnimStruct
ld de, SFX_GLASS_TING_2
call PlaySFX
call Function108af4
@@ -1105,15 +1105,15 @@ endr
jr .asm_1088e7
.asm_1088c5
- lb de, $54, $58
- ld a, $22
- call Function3b2a
+ depixel 10, 11, 4, 0
+ ld a, SPRITE_ANIM_INDEX_22
+ call _InitSpriteAnimStruct
jr .asm_1088e7
.asm_1088cf
- lb de, $54, $58
- ld a, $22
- call Function3b2a
+ depixel 10, 11, 4, 0
+ ld a, SPRITE_ANIM_INDEX_22
+ call _InitSpriteAnimStruct
xor a
call Function108ad4
jr .asm_1088e7
@@ -1423,7 +1423,7 @@ Function108af4: ; 108af4
and $1
jr z, .asm_108b1c
ld hl, Palette_109187
- ld de, Unkn2Pals
+ ld de, UnknOBPals
ld bc, $0040
call CopyBytes
ld hl, Palette_109187
@@ -1434,7 +1434,7 @@ Function108af4: ; 108af4
.asm_108b1c
ld hl, Palette_109147
- ld de, Unkn2Pals
+ ld de, UnknOBPals
ld bc, $0040
call CopyBytes
ld hl, Palette_109147
@@ -1459,7 +1459,7 @@ Function108b45: ; 108b45
ld a, $5
ld [rSVBK], a
ld de, $7fff
- ld hl, wMapPals
+ ld hl, UnknBGPals
ld a, e
ld [hli], a
ld d, a
@@ -1537,7 +1537,7 @@ Function108b98: ; 108b98
ld hl, Palette_108b98
.asm_108bb0
- ld de, wMapPals + 8 * 7
+ ld de, UnknBGPals + 8 * 7
ld bc, $0040
call CopyBytes
pop af
@@ -1669,10 +1669,10 @@ UnknownText_0x108c68: ; 0x108c68
Function108c6d: ; 108c6d
ld hl, LZ_108fe7
- ld de, VBGMap0
+ debgcoord 0, 0
call Decompress
ld hl, LZ_108fe7
- ld de, VBGMap1
+ debgcoord 0, 0, VBGMap1
call Decompress
ret
; 108c80
@@ -1681,10 +1681,10 @@ Function108c80: ; 108c80
ld a, $1
ld [rVBK], a
ld hl, LZ_1090a7
- ld de, VBGMap0
+ debgcoord 0, 0
call Decompress
ld hl, LZ_1090a7
- ld de, VBGMap1
+ debgcoord 0, 0, VBGMap1
call Decompress
ld a, $0
ld [rVBK], a
diff --git a/misc/mobile_45.asm b/misc/mobile_45.asm
index 6852745b5..006a135f1 100644
--- a/misc/mobile_45.asm
+++ b/misc/mobile_45.asm
@@ -5750,7 +5750,7 @@ Function1161d5: ; 1161d5
pop af
ld [rSVBK], a
- callba Function104061
+ callba ReloadMapPart
ld a, $8
ld [MusicFade], a
ld de, MUSIC_MOBILE_ADAPTER
@@ -5786,7 +5786,7 @@ Function116294: ; 116294
ld bc, $0010
call CopyBytes
ld hl, Palette_11734e
- ld de, wMapPals + 8 * 7
+ ld de, UnknBGPals + 8 * 7
ld bc, $0008
call CopyBytes
call SetPalettes
@@ -5912,7 +5912,7 @@ Function11636e: ; 11636e
ld a, $5
ld [rSVBK], a
ld hl, BGPals
- ld de, wMapPals
+ ld de, UnknBGPals
ld bc, $0040
call CopyBytes
pop af
@@ -5931,7 +5931,7 @@ Function11636e: ; 11636e
call UpdateSprites
pop af
ld [rSVBK], a
- callba Function104061
+ callba ReloadMapPart
ld a, $8
ld [MusicFade], a
ld a, [wc2c0]
@@ -5955,7 +5955,7 @@ Function1163c0: ; 1163c0
call ByteFill
call DelayFrame
callba Function14146
- ld b, $9
+ ld b, SCGB_09
call GetSGBLayout
ld a, [rSVBK]
push af
@@ -5975,7 +5975,7 @@ Function1163c0: ; 1163c0
callba Function14157
pop af
ld [rSVBK], a
- callba Function104061
+ callba ReloadMapPart
ld a, [wLinkMode]
cp $4
jr z, .asm_11642a
@@ -6006,7 +6006,7 @@ Function116441: ; 116441
callba Function17d405
ld a, $90
ld [hWY], a
- callba Function104061
+ callba ReloadMapPart
ld a, $8
ld [MusicFade], a
ld a, [wc2c0]
@@ -7711,7 +7711,7 @@ Function117699: ; 117699 (45:7699)
call ClearBGPalettes
call ClearSprites
callba Function171c87
- callba Function104061
+ callba ReloadMapPart
callba Function8cf53
ret
@@ -7722,7 +7722,7 @@ Function1176ee: ; 1176ee (45:76ee)
jr nz, .asm_117709
call Function117719
callba Function8cf69
- callba Function104061
+ callba ReloadMapPart
jr Function1176ee
.asm_117709
callba Function8cf53
@@ -7757,16 +7757,16 @@ Jumptable_117728: ; 117728 (45:7728)
Function117738: ; 117738 (45:7738)
callba Function171ccd
- lb de, $30, $18
+ depixel 6, 3
ld a, $1d
- call Function3b2a
+ call _InitSpriteAnimStruct
ld hl, $c
add hl, bc
ld a, $6
ld [hl], a
- lb de, $48, $20
+ depixel 9, 4
ld a, $1d
- call Function3b2a
+ call _InitSpriteAnimStruct
ld hl, $c
add hl, bc
ld a, $7
@@ -7978,7 +7978,7 @@ Function1178aa: ; 1178aa (45:78aa)
call LoadMenuDataHeader
call MenuBox
call MenuBoxCoord2Tile
- callba Function104061
+ callba ReloadMapPart
hlcoord 16, 8
ld de, String_1179c5
call PlaceString
@@ -8077,7 +8077,7 @@ Function117984: ; 117984 (45:7984)
call LoadMenuDataHeader
call MenuBox
call MenuBoxCoord2Tile
- callba Function104061
+ callba ReloadMapPart
hlcoord 1, 14
ld de, String_1179e1
call PlaceString
@@ -8184,7 +8184,7 @@ Function117ab4: ; 0x117ab4
call ClearSprites
callba Function172e78
callba Function172eb9
- callba Function104061
+ callba ReloadMapPart
ret
; 0x117acd
@@ -8299,12 +8299,12 @@ Function117b4f:
jr nz, .asm_117ba4 ; 0x117b93 $f
call ExitMenu
call ExitMenu
- callba Function104061
+ callba ReloadMapPart
jp Function117cdd
.asm_117ba4
call ExitMenu
call ExitMenu
- callba Function104061
+ callba ReloadMapPart
ld a, $80
ld [wJumptableIndex], a
ret
@@ -8387,7 +8387,7 @@ Function117c4a:
call LoadMenuDataHeader
call MenuBox
call MenuBoxCoord2Tile
- callba Function104061
+ callba ReloadMapPart
ld hl, MobileStadiumSuccessText
call PrintText
ld a, [rSVBK]
@@ -8407,7 +8407,7 @@ Function117c4a:
add hl, de
dec c
jr nz, .asm_117c71 ; 0x117c7b $f4
- call FadeToWhite
+ call RotateThreePalettesRight
pop af
ld [rSVBK], a
ld a, $80
diff --git a/misc/mobile_46.asm b/misc/mobile_46.asm
index 54e5a81ba..836da4fa0 100755
--- a/misc/mobile_46.asm
+++ b/misc/mobile_46.asm
@@ -175,7 +175,7 @@ Function118125: ; 118125
cp [hl]
jr nz, .asm_11813e
xor a
- ld [wMapPals], a
+ ld [w3_d000], a
pop af
ld [rSVBK], a
call Function118452
@@ -197,33 +197,37 @@ Function118180: ; 118180
ld de, $a89c
ld bc, $0016
call CopyBytes
+
ld a, [rSVBK]
push af
ld a, $3
ld [rSVBK], a
- ld de, $d202
+
+ ld de, w3_d202
ld c, $96
- callba Function17d0b3
- jr c, .asm_1181d0
- ld de, $d202
- ld bc, $0196
- callba Function17d1e1
- jr c, .asm_1181d0
- ld hl, $d202
+ callba CheckStringForErrors_IgnoreTerminator
+ jr c, .return_d3
+
+ ld de, w3_d202
+ lb bc, 1, $96
+ callba CheckStringContainsLessThanBNextCharacters
+ jr c, .return_d3
+
+ ld hl, w3_d202
ld de, $a8b2
ld bc, $0096
call CopyBytes
-.asm_1181c9
+.reset_banks
pop af
ld [rSVBK], a
call CloseSRAM
ret
-.asm_1181d0
+.return_d3
ld a, $d3
ld [wc300], a
ld [ScriptVar], a
- jr .asm_1181c9
+ jr .reset_banks
; 1181da
Function1181da: ; 1181da
@@ -1067,7 +1071,7 @@ Function11878d: ; 11878d (46:478d)
set 0, [hl]
ld a, $6
ld [rSVBK], a
- ld de, wMapPals
+ ld de, UnknBGPals
ld bc, $1000
ld a, [hl]
sla a
@@ -1286,7 +1290,7 @@ Function118936:
call LoadMenuDataHeader
call MenuBox
call MenuBoxCoord2Tile
- call Function321c
+ call ApplyTilemap
hlcoord 16, 8, AttrMap
ld a, $40
or [hl]
@@ -1462,7 +1466,7 @@ Function118a65: ; 118a65
ld de, wcc60
ld bc, $80
call CopyBytes
- ld de, wMapPals
+ ld de, UnknBGPals
ld bc, $1000
jp Function118b10
; 118a7a
@@ -1472,7 +1476,7 @@ Function118a7a: ; 118a7a
ld de, wcc60
ld bc, $80
call CopyBytes
- ld de, wMapPals
+ ld de, UnknBGPals
ld bc, $1000
jp Function118b10
; 118a8f
@@ -1482,7 +1486,7 @@ Function118a8f: ; 118a8f
ld de, wcc60
ld bc, $80
call CopyBytes
- ld de, wMapPals
+ ld de, UnknBGPals
ld bc, $1000
jp Function118b10
; 118aa4
@@ -1504,7 +1508,7 @@ Function118abc: ; 118abc (46:4abc)
ld de, wcc60
ld bc, $80
call CopyBytes
- ld de, wMapPals
+ ld de, UnknBGPals
ld bc, $1000
jr Function118b10
; 118ad0 (46:4ad0)
@@ -1514,7 +1518,7 @@ Function118ad0:
ld de, wcc60
ld bc, $80
call CopyBytes
- ld de, wMapPals
+ ld de, UnknBGPals
ld bc, $1000
jr Function118b10
@@ -2101,7 +2105,7 @@ Function119009:
ld a, $40
ld [wcd89], a
ld hl, wc314 + 48 + 2
- ld de, wMapPals
+ ld de, UnknBGPals
ld bc, $1000
ld a, $2c
jp Function119e2b
@@ -2115,7 +2119,7 @@ Function119054: ; 119054
ld e, a
ld a, [wcd50]
ld d, a
- ld a, [wMapPals]
+ ld a, [UnknBGPals]
ld c, a
ld a, [wd001]
ld b, a
@@ -2127,7 +2131,7 @@ Function119054: ; 119054
ld a, $6
ld [rSVBK], a
ld hl, wd002
- ld a, [wMapPals]
+ ld a, [UnknBGPals]
ld c, a
ld a, [wd001]
ld b, a
@@ -2174,7 +2178,7 @@ Function1190d0: ; 1190d0
ld de, wcc60
call Function1191ad
ret c
- ld de, wMapPals
+ ld de, UnknBGPals
ld bc, $1000
jp Function118b10
; 1190ec
@@ -2194,7 +2198,7 @@ Function1190ec: ; 1190ec
call CloseSRAM
ld a, $6
call GetSRAMBank
- ld a, [wMapPals]
+ ld a, [UnknBGPals]
ld c, a
ld a, [wd001]
ld b, a
@@ -2207,7 +2211,7 @@ Function1190ec: ; 1190ec
jr z, .asm_11913e
ld a, $6
ld [rSVBK], a
- ld a, [wMapPals]
+ ld a, [UnknBGPals]
ld c, a
ld a, [wd001]
ld b, a
@@ -2674,7 +2678,7 @@ Function1193fb:
ld a, $8
ld [wcd3c], a
call Function119ed8
- ld de, wMapPals
+ ld de, UnknBGPals
ld bc, $1000
jp Function118b10
; 119413
@@ -2682,7 +2686,7 @@ Function1193fb:
Function119413: ; 119413
ld a, $6
call GetSRAMBank
- ld a, [wMapPals]
+ ld a, [UnknBGPals]
ld c, a
ld a, [wd001]
ld b, a
@@ -3039,7 +3043,7 @@ Function119648: ; 119648 (46:5648)
ld [wcd3c], a
call Function119ed8
call Function118b24
- ld de, wMapPals
+ ld de, UnknBGPals
ld bc, $1000
ld a, $2a
jp Function119e2b
@@ -3334,7 +3338,7 @@ Function1197dc:
xor a
ld [de], a
call Function118b24
- ld de, wMapPals
+ ld de, UnknBGPals
ld bc, $1000
ld a, $2a
jp Function119e2b
@@ -3533,14 +3537,14 @@ Function119973: ; 119973
xor a
ld [wcf65], a
ld [StringBuffer2 + 10], a
- ld de, wMapPals
+ ld de, UnknBGPals
ld a, $20
jp Function119e2b
; 119987
Function119987: ; 119987
ld hl, wd001
- ld a, [wMapPals]
+ ld a, [UnknBGPals]
or [hl]
jr z, .asm_1199a0
ld a, [wcf64]
@@ -3702,13 +3706,13 @@ Function1199e2: ; 1199e2
ld [StringBuffer2 + 12], a
Function119ac9:
- ld a, [wMapPals]
+ ld a, [UnknBGPals]
ld l, a
ld a, [wd001]
ld h, a
dec hl
ld a, l
- ld [wMapPals], a
+ ld [UnknBGPals], a
ld a, h
ld [wd001], a
ld a, [wcf64]
@@ -4463,7 +4467,7 @@ Function119f98: ; 119f98
and a
jr z, .asm_119fd4
call ExitMenu
- callba Function104061
+ callba ReloadMapPart
callba Function115dc3
ld a, [wcd33]
ld [wcf66], a
@@ -4480,14 +4484,14 @@ Function119f98: ; 119f98
ld [wc30d], a
ld a, $1
ld [wc314], a
- callba Function104061
+ callba ReloadMapPart
and a
ret
.asm_119fef
call ExitMenu
call ExitMenu
- callba Function104061
+ callba ReloadMapPart
ld a, [wcd45]
ld [wcf66], a
callba Function115dc3
@@ -4562,7 +4566,7 @@ Function11a00e: ; 11a00e
callba Function106462
callba Function106464
call ExitMenu
- callba Function104061
+ callba ReloadMapPart
callba Function115d99
ld c, $0
callba Function115e18
@@ -4585,7 +4589,7 @@ Function11a0ca: ; 11a0ca
callba Function106462
callba Function106464
call ExitMenu
- callba Function104061
+ callba ReloadMapPart
callba Function115d99
ld c, $0
callba Function115e18
@@ -4677,7 +4681,7 @@ Function11a192: ; 11a192
and a
jr nz, .asm_11a1b6
call ExitMenu
- callba Function104061
+ callba ReloadMapPart
call Function11a63c
hlcoord 4, 2
ld de, String_11a6d2
@@ -4687,7 +4691,7 @@ Function11a192: ; 11a192
.asm_11a1b6
call ExitMenu
- callba Function104061
+ callba ReloadMapPart
ld a, [wcd45]
ld [wcf66], a
ld [wcd80], a
@@ -4741,7 +4745,7 @@ Function11a207: ; 11a207
call LoadMenuDataHeader
call MenuBox
call MenuBoxCoord2Tile
- call Function321c
+ call ApplyTilemap
hlcoord 16, 8
ld de, String_11a2cf
call PlaceString
@@ -4818,7 +4822,7 @@ Function11a235: ; 11a235
and a
jr nz, .asm_11a2c4
call ExitMenu
- callba Function104061
+ callba ReloadMapPart
ld a, [wcd46]
cp $0
jr z, .asm_11a2b4
@@ -4840,7 +4844,7 @@ Function11a235: ; 11a235
.asm_11a2c4
call ExitMenu
- callba Function104061
+ callba ReloadMapPart
and a
ret
; 11a2cf
@@ -4919,7 +4923,7 @@ Function11a33a: ; 11a33a
.asm_11a346
call ExitMenu
- callba Function104061
+ callba ReloadMapPart
callba Function115dc3
and a
ret
@@ -4963,7 +4967,7 @@ Function11a38d: ; 11a38d
and a
jr nz, .asm_11a3b1
call ExitMenu
- callba Function104061
+ callba ReloadMapPart
call Function11a63c
hlcoord 4, 2
ld de, String_11a6d2
@@ -4973,7 +4977,7 @@ Function11a38d: ; 11a38d
.asm_11a3b1
call ExitMenu
- callba Function104061
+ callba ReloadMapPart
ld a, [wcd45]
ld [wcf66], a
ld [wcd80], a
@@ -5038,7 +5042,7 @@ Function11a41b: ; 11a41b
and a
jr nz, .asm_11a43f
call ExitMenu
- callba Function104061
+ callba ReloadMapPart
call Function11a63c
hlcoord 4, 2
ld de, String_11a6d2
@@ -5048,7 +5052,7 @@ Function11a41b: ; 11a41b
.asm_11a43f
call ExitMenu
- callba Function104061
+ callba ReloadMapPart
ld a, $1c
ld [wcf66], a
ld [wcd80], a
@@ -5109,7 +5113,7 @@ Function11a49e: ; 11a49e
and a
jr nz, .asm_11a4c7
call ExitMenu
- callba Function104061
+ callba ReloadMapPart
call Function11a63c
hlcoord 4, 2
ld de, String_11a6d2
@@ -5121,7 +5125,7 @@ Function11a49e: ; 11a49e
.asm_11a4c7
call ExitMenu
- callba Function104061
+ callba ReloadMapPart
ld a, [wcd46]
ld [wcf66], a
ld [wcd80], a
@@ -5156,7 +5160,7 @@ Function11a4fe: ; 11a4fe
and a
jr nz, .asm_11a522
call ExitMenu
- callba Function104061
+ callba ReloadMapPart
call Function11a63c
hlcoord 4, 2
ld de, String_11a6d2
@@ -5166,7 +5170,7 @@ Function11a4fe: ; 11a4fe
.asm_11a522
call ExitMenu
- callba Function104061
+ callba ReloadMapPart
ld a, [wcd45]
ld [wcf66], a
ld [wcd80], a
@@ -5195,7 +5199,7 @@ Function11a536: ; 11a536
call Function11a9f0
jr nz, .asm_11a562
call ExitMenu
- callba Function104061
+ callba ReloadMapPart
.asm_11a562
scf
@@ -5271,7 +5275,7 @@ Function11a5b9: ; 11a5b9
ld b, $4
ld c, $12
call Function3eea
- callba Function104061
+ callba ReloadMapPart
call UpdateSprites
ld c, $0
callba Function115e18
@@ -5306,7 +5310,7 @@ Function11a5f5: ; 11a5f5
hlcoord 15, 7
ld a, $ed
ld [hl], a
- callba Function104061
+ callba ReloadMapPart
ret
; 11a63c
@@ -5840,9 +5844,9 @@ UnknownText_0x11ac1f: ; 0x11ac1f
Function11ac3e: ; 11ac3e
call SpeechTextBox
call FadeToMenu
- callab InefficientlyClear121BytesAtwc300
+ callab ClearSpriteAnims
call Function11ac51
- call Function2b3c
+ call ReturnToCallingMenu
ret
; 11ac51
@@ -5881,7 +5885,7 @@ Function11ac51: ; 11ac51
ld a, $78
ld [wc3b5], a
callba Function8cf7a
- callba Function104061
+ callba ReloadMapPart
jr .asm_11ac82
.asm_11aca8
@@ -6025,7 +6029,7 @@ Function11ad95: ; 11ad95
hlcoord 10, 10, AttrMap
ld bc, $0808
call Function11afd6
- callba Function104061
+ callba ReloadMapPart
call Function11ad8a
ld a, $1
ld [MenuSelection2], a
@@ -6104,7 +6108,7 @@ Function11adc4:
.asm_11ae2e
call ExitMenu
- callba Function104061
+ callba ReloadMapPart
ret
; 11ae38
@@ -6142,7 +6146,7 @@ Function11ae4e: ; 11ae4e
hlcoord 9, 12, AttrMap
lb bc, 6, 11
call Function11afd6
- callba Function104061
+ callba ReloadMapPart
call Function11ad8a
ld a, $1
ld [MenuSelection2], a
@@ -6210,7 +6214,7 @@ Function11ae98:
.asm_11aef7
call ExitMenu
call ExitMenu
- callba Function104061
+ callba ReloadMapPart
ret
; 11af04
@@ -6233,7 +6237,7 @@ Function11af04: ; 11af04
hlcoord 9, 12, AttrMap
lb bc, 6, 11
call Function11afd6
- callba Function104061
+ callba ReloadMapPart
call Function11ad8a
ld a, $2
ld [MenuSelection2], a
@@ -6301,7 +6305,7 @@ Function11af4e:
.asm_11afaa
call ExitMenu
call ExitMenu
- callba Function104061
+ callba ReloadMapPart
ret
; 11afb7
@@ -7549,8 +7553,8 @@ Function11b6b4: ; 11b6b4
.asm_11b70f
ld de, $c63d
- ld bc, $0105
- callba Function17d1e1
+ lb bc, 1, 5
+ callba CheckStringContainsLessThanBNextCharacters
jr nc, .asm_11b723
callba Function17d187
@@ -7563,8 +7567,8 @@ Function11b6b4: ; 11b6b4
.asm_11b736
ld de, $c642
- ld bc, $0105
- callba Function17d1e1
+ lb bc, 1, 5
+ callba CheckStringContainsLessThanBNextCharacters
jr nc, .asm_11b74a
callba Function17d199
@@ -7577,8 +7581,8 @@ Function11b6b4: ; 11b6b4
.asm_11b75d
ld de, $c647
- ld bc, $0221
- callba Function17d1e1
+ lb bc, 2, $21
+ callba CheckStringContainsLessThanBNextCharacters
jr c, .asm_11b770
ld a, b
cp $2
@@ -7596,8 +7600,8 @@ Function11b6b4: ; 11b6b4
.asm_11b789
ld de, $c668
- ld bc, $0105
- callba Function17d1e1
+ lb bc, 1, 5
+ callba CheckStringContainsLessThanBNextCharacters
jr nc, .asm_11b79d
callba Function17d1c9
@@ -7676,7 +7680,7 @@ Function11b7e5: ; 11b7e5
ld [wd1e9], a
ld a, $2
ld [wLinkMode], a
- callba Function421d8
+ callba EvolvePokemon
xor a
ld [wLinkMode], a
callba Function14a58
@@ -7697,7 +7701,7 @@ Function11b7e5: ; 11b7e5
ld [de], a
.asm_11b872
- call Function2b3c
+ call ReturnToCallingMenu
call RestartMapMusic
ret
; 11b879
@@ -7919,7 +7923,7 @@ Function11b98f: ; 11b98f
call CopyBytes
ld a, "@"
ld [de], a
- ld hl, sPartyScratch1
+ ld hl, sPartyMail
ld bc, PARTYMON_STRUCT_LENGTH - 1
ld a, [wcd2a]
.loop5
diff --git a/misc/mobile_5b.asm b/misc/mobile_5b.asm
index 3e26aa9ea..19d192aeb 100755
--- a/misc/mobile_5b.asm
+++ b/misc/mobile_5b.asm
@@ -169,7 +169,7 @@ Function16c108: ; 16c108
call Function16c130
call Function16c145
call Function16c15c
- ld hl, VBGMap0
+ hlbgcoord 0, 0
call Function16cc73
call Function16cc02
xor a
@@ -179,7 +179,7 @@ Function16c108: ; 16c108
; 16c130
Function16c130: ; 16c130
- ld de, wMapPals
+ ld de, UnknBGPals
ld hl, Unknown_16c903
ld bc, 8
ld a, $5
@@ -274,7 +274,7 @@ Function16c943: ; 16c943
ld [rSVBK], a
ld a, $ff
ld bc, $0008
- ld hl, wMapPals
+ ld hl, UnknBGPals
call ByteFill
pop af
ld [rSVBK], a
@@ -291,7 +291,7 @@ Function16c943: ; 16c943
call Function16cab6
call Function16cabb
ld d, a
- ld hl, wMapPals
+ ld hl, UnknBGPals
call Function16cab6
call Function16cabb
cp d
@@ -305,7 +305,7 @@ Function16c943: ; 16c943
jr nz, .asm_16c981
.asm_16c988
- ld hl, wMapPals
+ ld hl, UnknBGPals
call Function16cab6
call Function16cadc
@@ -314,7 +314,7 @@ Function16c943: ; 16c943
call Function16cab6
call Function16cad8
ld d, a
- ld hl, wMapPals
+ ld hl, UnknBGPals
call Function16cab6
call Function16cad8
cp d
@@ -328,7 +328,7 @@ Function16c943: ; 16c943
jr nz, .asm_16c9a9
.asm_16c9b0
- ld hl, wMapPals
+ ld hl, UnknBGPals
call Function16cab6
call Function16cb08
@@ -337,7 +337,7 @@ Function16c943: ; 16c943
call Function16cab6
call Function16cac4
ld d, a
- ld hl, wMapPals
+ ld hl, UnknBGPals
call Function16cab6
call Function16cac4
cp d
@@ -351,7 +351,7 @@ Function16c943: ; 16c943
jr nz, .asm_16c9d1
.asm_16c9d8
- ld hl, wMapPals
+ ld hl, UnknBGPals
call Function16cab6
call Function16cae8
@@ -402,7 +402,7 @@ Function16ca11: ; 16ca11
ld e, $0
ld a, $0
.asm_16ca28
- ld hl, wMapPals
+ ld hl, UnknBGPals
call Function16cab6
call Function16cabb
cp $1f
@@ -416,12 +416,12 @@ Function16ca11: ; 16ca11
jr nz, .asm_16ca37
.asm_16ca3f
- ld hl, wMapPals
+ ld hl, UnknBGPals
call Function16cab6
call Function16cadc
.asm_16ca48
- ld hl, wMapPals
+ ld hl, UnknBGPals
call Function16cab6
call Function16cad8
cp $1f
@@ -435,12 +435,12 @@ Function16ca11: ; 16ca11
jr nz, .asm_16ca57
.asm_16ca5f
- ld hl, wMapPals
+ ld hl, UnknBGPals
call Function16cab6
call Function16cb08
.asm_16ca68
- ld hl, wMapPals
+ ld hl, UnknBGPals
call Function16cab6
call Function16cac4
cp $1f
@@ -454,7 +454,7 @@ Function16ca11: ; 16ca11
jr nz, .asm_16ca77
.asm_16ca7f
- ld hl, wMapPals
+ ld hl, UnknBGPals
call Function16cab6
call Function16cae8
@@ -752,7 +752,7 @@ Function16cc25: ; 16cc25
ld de, wd008
call Function16cc41
ld hl, Unknown_16cfb1
- ld de, Unkn2Pals
+ ld de, UnknOBPals
call Function16cc41
ld hl, Unknown_16cfb9
ld de, wd048
@@ -795,7 +795,7 @@ Function16cc62: ; 16cc62
; 16cc6e
Function16cc6e: ; 16cc6e
- ld hl, VBGMap1
+ hlbgcoord 0, 0, VBGMap1
jr Function16cc73
Function16cc73:
@@ -890,7 +890,7 @@ Function16d43b: ; 16d43b
call ClearSprites
callba Function16d421
callba Function16d42e
- ld b, $8
+ ld b, SCGB_08
call GetSGBLayout
call SetPalettes
call WaitBGMap
@@ -925,19 +925,19 @@ rept 2
inc c
endr
ld a, $7
-.asm_16d630
+.loop
push bc
push hl
-.asm_16d632
+.loop2
ld [hli], a
dec c
- jr nz, .asm_16d632
+ jr nz, .loop2
pop hl
- ld de, $0014
+ ld de, SCREEN_WIDTH
add hl, de
pop bc
dec b
- jr nz, .asm_16d630
+ jr nz, .loop
ret
; 16d640
@@ -950,20 +950,20 @@ Function16d640: ; 16d640
inc a
ld [hl], a
pop hl
- ld de, $0014
+ ld de, SCREEN_WIDTH
add hl, de
-.asm_16d64f
+.loop
push hl
ld a, $33
ld [hli], a
- ld a, $7f
+ ld a, " "
call Function16d66d
ld [hl], $34
pop hl
- ld de, $0014
+ ld de, SCREEN_WIDTH
add hl, de
dec b
- jr nz, .asm_16d64f
+ jr nz, .loop
ld a, $35
ld [hli], a
ld a, $36
@@ -974,10 +974,10 @@ Function16d640: ; 16d640
Function16d66d: ; 16d66d
ld d, c
-.asm_16d66e
+.loop
ld [hli], a
dec d
- jr nz, .asm_16d66e
+ jr nz, .loop
ret
; 16d673
@@ -1028,7 +1028,7 @@ Function16d6ae: ; 16d6ae
ret
; 16d6ca
-Function16d6ca: ; 16d6ca
+LinkTextbox: ; 16d6ca
call Function16d61d
ret
; 16d6ce
@@ -1044,11 +1044,11 @@ Function16d6ce: ; 16d6ce
Function16d6e1: ; 16d6e1
hlcoord 4, 10
- ld b, $1
- ld c, $a
- predef Function28eef
+ ld b, 1
+ ld c, 10
+ predef Predef_LinkTextbox
hlcoord 5, 11
- ld de, String_16d701
+ ld de, .Waiting
call PlaceString
call WaitBGMap
call Function3200
@@ -1056,7 +1056,7 @@ Function16d6e1: ; 16d6e1
jp DelayFrames
; 16d701
-String_16d701: ; 16d701
+.Waiting: ; 16d701
db "WAITING..!@"
; 16d70c
diff --git a/misc/mobile_5c.asm b/misc/mobile_5c.asm
index 5d9e207bb..ebebb302c 100755
--- a/misc/mobile_5c.asm
+++ b/misc/mobile_5c.asm
@@ -73,1189 +73,8 @@ Function17005a: ; 17005a
ret
; 1700b0
-Function1700b0: ; 1700b0
- call Function17021e
- callba Function118121
- ret
-; 1700ba
-
-Function1700ba: ; 1700ba
- call Function17021e
- callba Function11811a
- ret
-; 1700c4
-
-Function1700c4: ; 1700c4
- ld a, [rSVBK]
- push af
- ld a, $3
- ld [rSVBK], a
- call Function17042c
- ld a, $5
- call GetSRAMBank
- ld a, $1
- ld [$be45], a
- xor a
- ld [$be46], a
- ld hl, $dffc
- ld de, $aa41
- ld bc, $0004
- call CopyBytes
- ld hl, $d202
- ld de, $aa8e
- ld bc, $0594
- call CopyBytes
- ld hl, $aa5d
- ld a, [hl]
- inc [hl]
- inc hl
- sla a
- sla a
- ld e, a
- ld d, $0
- add hl, de
- ld e, l
- ld d, h
- ld hl, $dffc
- ld bc, $0004
- call CopyBytes
- call CloseSRAM
- pop af
- ld [rSVBK], a
- ret
-; 170114
-
-Function170114: ; 170114
- call Function17021e
- call Function170121
- callba Function11805f
- ret
-; 170121
-
-Function170121: ; 170121
- ld a, $5
- call GetSRAMBank
- ld hl, $a948
- ld de, $c608
- ld bc, $00f6
- call CopyBytes
- call CloseSRAM
- call Function170c8b
- ret
-; 170139
-
-Function170139: ; 170139
- ld a, $5
- call GetSRAMBank
- ld de, $aa41
- ld h, $0
- ld l, h
- ld bc, $03e8
- call Function17020c
- ld bc, $0064
- call Function17020c
- ld bc, $000a
- call Function17020c
- ld a, [de]
- ld c, a
- ld b, $0
- add hl, bc
- call CloseSRAM
- ld a, h
- ld [$c608], a
- ld a, l
- ld [$c608 + 1], a
- ld hl, $c628
- ld a, [PlayerID]
- ld [hli], a
- ld a, [PlayerID + 1]
- ld [hli], a
- ld a, [wSecretID]
- ld [hli], a
- ld a, [wSecretID + 1]
- ld [hli], a
- ld e, l
- ld d, h
- ld hl, PlayerName
- ld bc, $0005 ; Japanese name length
- call CopyBytes
- ld bc, PlayerID
- ld de, PlayerGender
- callba Function4e929
- ld de, $c62c + 5
- ld a, c
- ld [de], a
- inc de
- ld a, $df
- ld [wcd49], a
- ld a, $dc
- ld [wcd4a], a
- ld a, $41
- ld [wcd4b], a
- ld a, $de
- ld [wcd4c], a
- ld a, $3
-.asm_1701ac
- push af
- ld a, [wcd49]
- ld l, a
- ld a, [wcd4a]
- ld h, a
- ld bc, $0030
- call CopyBytes
- ld a, l
- ld [wcd49], a
- ld a, h
- ld [wcd4a], a
- ld a, [wcd4b]
- ld l, a
- ld a, [wcd4c]
- ld h, a
- ld bc, $0006
- call CopyBytes
- ld a, l
- ld [wcd4b], a
- ld a, h
- ld [wcd4c], a
- pop af
- dec a
- jr nz, .asm_1701ac
- ld a, $4
- call GetSRAMBank
- ld hl, $a013
- ld bc, $0024
- call CopyBytes
- call CloseSRAM
- ld a, $5
- call GetSRAMBank
- ld hl, $a894
- ld bc, $0006
- call CopyBytes
- ld hl, $c608
- ld de, $a948
- ld bc, $00f6
- call CopyBytes
- call CloseSRAM
- ret
-; 17020c
-
-Function17020c: ; 17020c
- ld a, [de]
- inc de
- and a
- ret z
-.asm_170210
- add hl, bc
- dec a
- jr nz, .asm_170210
- ret
-; 170215
-
INCLUDE "misc/battle_tower_5c.asm"
-Function1704ca: ; 1704ca
- ld a, [$be46]
- cp $7
- jr c, .asm_1704d3
- ld a, $6
-
-.asm_1704d3
- ld hl, $afce
- ld de, -$e0
-.asm_1704d9
- and a
- jr z, .asm_1704e0
- add hl, de
- dec a
- jr .asm_1704d9
-
-.asm_1704e0
- ret
-; 1704e1
-
-Function1704e1: ; 1704e1
- call SpeechTextBox
- call FadeToMenu
- call Function17021e
- call Function1704f1
- call Function2b3c
- ret
-; 1704f1
-
-Function1704f1: ; 1704f1
- call ClearBGPalettes
- call ClearSprites
- call ClearScreen
-.asm_1704fa
- call JoyTextDelay
- ld a, [wJumptableIndex]
- bit 7, a
- jr nz, .asm_17050f
- call Function170510
- callba Function104061
- jr .asm_1704fa
-
-.asm_17050f
- ret
-; 170510
-
-Function170510: ; 170510
- ld a, [wJumptableIndex]
- ld e, a
- ld d, 0
- ld hl, Jumptable_17051f
-rept 2
- add hl, de
-endr
- ld a, [hli]
- ld h, [hl]
- ld l, a
- jp [hl]
-; 17051f
-
-Jumptable_17051f: ; 17051f
- dw Function170525
- dw Function170571
- dw Function170577
-; 170525
-
-Function170525: ; 170525
- ld a, $5
- call GetSRAMBank
-
- ld hl, $a89c
- ld de, StringBuffer3
- ld bc, $0016
- call CopyBytes
-
- ld hl, $a8b2
- ld de, $c608
- ld bc, $0096
- call CopyBytes
-
- call CloseSRAM
- hlcoord 1, 1
- ld de, StringBuffer3
- call PlaceString
- hlcoord 1, 3
- ld de, String_170676
- call PlaceString
- hlcoord 4, 3
- ld de, StringBuffer4
- call PlaceString
- hlcoord 8, 3
- ld de, String_17067a
- call PlaceString
- call Function1705b7
- call Function1705f0
- jr Function1705b2
-
-
-Function170571:
- call SetPalettes
- call Function1705b2
-
-
-Function170577:
- ld hl, hJoyPressed
- ld a, [hl]
- and $1
- jr nz, .asm_1705ac
- ld a, [hl]
- and $2
- jr nz, .asm_1705ac
- ld a, [hl]
- and $40
- jr nz, .asm_17058f
- ld a, [hl]
- and $80
- jr nz, .asm_17059d
- ret
-
-.asm_17058f
- ld a, [wcf64]
- and a
- ret z
- sub $f
- ld [wcf64], a
- call Function1705f0
- ret
-
-.asm_17059d
- ld a, [wcf64]
- cp $3c
- ret z
- add $f
- ld [wcf64], a
- call Function1705f0
- ret
-
-.asm_1705ac
- ld hl, wJumptableIndex
- set 7, [hl]
- ret
-
-Function1705b2:
- ld hl, wJumptableIndex
- inc [hl]
- ret
-; 1705b7
-
-Function1705b7: ; 1705b7
- hlcoord 0, 4
- ld a, $79
- ld [hli], a
- ld c, $12
-.asm_1705bf
- ld a, $7a
- ld [hli], a
- dec c
- jr nz, .asm_1705bf
- ld a, $7b
- ld [hli], a
- ld de, $0014
- ld c, $c
-.asm_1705cd
- ld a, $7c
- ld [hl], a
- add hl, de
- dec c
- jr nz, .asm_1705cd
- ld a, $7d
- ld [hli], a
- ld c, $12
-.asm_1705d9
- ld a, $7a
- ld [hli], a
- dec c
- jr nz, .asm_1705d9
- ld a, $7e
- ld [hl], a
- ld de, $ffec
- add hl, de
- ld c, $c
-.asm_1705e8
- ld a, $7c
- ld [hl], a
- add hl, de
- dec c
- jr nz, .asm_1705e8
- ret
-; 1705f0
-
-Function1705f0: ; 1705f0
- call Function17064b
- call Function17065d
- ld a, $50
- ld [wcd4e], a
- ld hl, $c608
- ld a, [wcf64]
- ld c, a
- xor a
- ld b, a
- add hl, bc
- push hl
- pop bc
- hlcoord 1, 6
- ld a, $6
-.asm_17060c
- push af
- push hl
- ld a, $3
-.asm_170610
- push af
- ld de, wcd49
- ld a, [bc]
- and a
- jr z, .asm_170625
- ld a, $5
-.asm_17061a
- push af
- ld a, [bc]
- ld [de], a
- inc bc
- inc de
- pop af
- dec a
- jr nz, .asm_17061a
- jr .asm_170631
-
-.asm_170625
- ld a, $5
-.asm_170627
- push af
- ld a, $e3
- ld [de], a
- inc de
- inc bc
- pop af
- dec a
- jr nz, .asm_170627
-
-.asm_170631
- ld de, wcd49
- push bc
- call PlaceString
- ld de, $0006
- add hl, de
- pop bc
- pop af
- dec a
- jr nz, .asm_170610
- pop hl
- ld de, $0028
- add hl, de
- pop af
- dec a
- jr nz, .asm_17060c
- ret
-; 17064b
-
-Function17064b: ; 17064b
- hlcoord 1, 5
- xor a
- ld b, $c
-.asm_170651
- ld c, $12
-.asm_170653
- ld [hli], a
- dec c
- jr nz, .asm_170653
-rept 2
- inc hl
-endr
- dec b
- jr nz, .asm_170651
- ret
-; 17065d
-
-Function17065d: ; 17065d
- ld a, [wcf64]
- and a
- jr z, .asm_170669
- hlcoord 18, 5
- ld a, $61
- ld [hl], a
-
-.asm_170669
- ld a, [wcf64]
- cp $3c
- ret z
- hlcoord 18, 16
- ld a, $ee
- ld [hl], a
- ret
-; 170676
-
-String_170676: ; 170676
- db "ルーム@"
-; 17067a
-
-String_17067a: ; 17067a
- db "れきだいりーダーいちらん@"
-; 170687
-
-BattleTowerAction: ; 170687
- ld a, [ScriptVar]
- ld e, a
- ld d, 0
- ld hl, .jumptable
-rept 2
- add hl, de
-endr
- ld a, [hli]
- ld h, [hl]
- ld l, a
- jp [hl]
-; 170696
-
-
-.jumptable: ; 170696 (5c:4696)
- dw Function17075f ; 0x00
- dw Function170788 ; 0x01
- dw Function170778 ; 0x02
- dw Function170799 ; 0x03
- dw Function17079d ; 0x04
- dw Function1707ac ; 0x05
- dw Function1707f4 ; 0x06
- dw Function170868 ; 0x07
- dw Function170881 ; 0x08
- dw Function17089a ; 0x09
- dw Function1708b1 ; 0x0a
- dw CheckMobileEventIndex ; 0x0b
- dw Function1708c8 ; 0x0c
- dw Function1708f0 ; 0x0d
- dw Function17093c ; 0x0e
- dw Function1709aa ; 0x0f
- dw Function1709bb ; 0x10
- dw Function170a9c ; 0x11
- dw Function170aa0 ; 0x12
- dw Function170aaf ; 0x13
- dw Function170abe ; 0x14
- dw Function170ad7 ; 0x15
- dw Function170807 ; 0x16
- dw Function17081d ; 0x17
- dw Function170ae8 ; 0x18
- dw Function170b16 ; 0x19
- dw ResetBattleTowerTrainersSRAM ; 0x1a
- dw Function1706ee ; 0x1b
- dw Function17071b ; 0x1c
- dw Function170729 ; 0x1d
- dw Function17073e ; 0x1e
- dw Function170737 ; 0x1f
-
-
-; Reset the save memory for BattleTower-Trainers (Counter and all 7 TrainerBytes)
-ResetBattleTowerTrainersSRAM: ; 1706d6 (5c:46d6) BattleTowerAction $1a
- ld a, BANK(sBTTrainers)
- call GetSRAMBank
-
- ld a, $ff
- ld hl, sBTTrainers
- ld bc, BATTLETOWER_NROFTRAINERS
- call ByteFill
-
- xor a
- ld [sNrOfBeatenBattleTowerTrainers], a
-
- call CloseSRAM
-
- ret
-
-Function1706ee: ; 1706ee (5c:46ee)
- ld a, BANK(sbe50)
- call GetSRAMBank
-
- ld a, [sbe50]
- call CloseSRAM
- ld [ScriptVar], a
- ld hl, NumItems
- ld a, [hli]
- cp $14
- ret c
- ld b, $14
- ld a, [ScriptVar]
- ld c, a
-.asm_170709
- ld a, [hli]
- cp c
- jr nz, .asm_170711
- ld a, [hl]
- cp $5f
- ret c
-.asm_170711
- inc hl
- dec b
- jr nz, .asm_170709
- ld a, $12
- ld [ScriptVar], a
- ret
-
-Function17071b: ; 17071b (5c:471b)
- ld a, BANK(s1_be45)
- call GetSRAMBank
- ld a, $3
- ld [s1_be45], a
- call CloseSRAM
- ret
-
-Function170729: ; 170729 (5c:4729)
- ld a, BANK(s1_be45)
- call GetSRAMBank
- ld a, $4
- ld [s1_be45], a
- call CloseSRAM
- ret
-
-Function170737: ; 170737 (5c:4737)
- callba SaveOptions
- ret
-
-Function17073e: ; 17073e (5c:473e)
- call Random
- ld a, [hRandomAdd]
- and $7
- cp $6
- jr c, .asm_17074b
- sub $6
-.asm_17074b
- add $1a
- cp $1e
- jr z, Function17073e
- push af
- ld a, BANK(sbe50)
- call GetSRAMBank
- pop af
- ld [sbe50], a
- call CloseSRAM
- ret
-
-Function17075f: ; 17075f (5c:475f)
- call Function17089a
- ld a, [ScriptVar]
- and a
- ret z
- ld a, BANK(sbe4f)
- call GetSRAMBank
- ld a, [sbe4f]
- and $2
- ld [ScriptVar], a
- call CloseSRAM
- ret
-
-Function170778: ; 170778 (5c:4778)
- ld hl, s1_be45
- ld a, BANK(s1_be45)
- call GetSRAMBank
- ld a, [hl]
- ld [ScriptVar], a
- call CloseSRAM
- ret
-
-Function170788: ; 170788 (5c:4788)
- ld a, BANK(sbe4f)
- call GetSRAMBank
- ld a, [sbe4f]
- or $2
- ld [sbe4f], a
- call CloseSRAM
- ret
-
-Function170799: ; 170799 (5c:4799)
- ld c, $1
- jr asm_17079f
-
-Function17079d: ; 17079d (5c:479d)
- ld c, $0
-asm_17079f: ; 17079f (5c:479f)
- ld a, BANK(s1_be45)
- call GetSRAMBank
- ld a, c
- ld [s1_be45], a
- call CloseSRAM
- ret
-
-Function1707ac: ; 1707ac (5c:47ac)
- ld a, $5
- call GetSRAMBank
- ld a, [$aa8c]
- ld b, a
- ld a, [$be46]
- ld [ScriptVar], a
- call CloseSRAM
- and a
- ret z
- ld a, b
- cp $2
- jr nc, .asm_1707ef
- push bc
- call UpdateTime
- pop bc
- ld a, $5
- call GetSRAMBank
- ld a, [$aa8b]
- call CloseSRAM
- ld c, a
- ld a, [CurDay]
- sub c
- jr c, .asm_1707e5
- cp $8
- jr nc, .asm_1707ef
- ld a, b
- and a
- jr nz, .asm_1707ef
- ret
-.asm_1707e5
- ld hl, CurDay
- ld a, $8c
- sub c
- add [hl]
- cp $8
- ret c
-.asm_1707ef
- ld a, $8
- ld [ScriptVar], a
-
-Function1707f4: ; 1707f4 (5c:47f4)
- ld a, $5
- call GetSRAMBank
- xor a
- ld [$be46], a
- ld [$aa8b], a
- ld [$aa8c], a
- call CloseSRAM
- ret
-
-Function170807: ; 170807 (5c:4807)
- call UpdateTime
- ld a, $5
- call GetSRAMBank
- ld a, [CurDay]
- ld [$b2f9], a
- xor a
- ld [$b2fa], a
- call CloseSRAM
- ret
-
-Function17081d: ; 17081d (5c:481d)
- xor a
- ld [ScriptVar], a
- ld a, $5
- call GetSRAMBank
- ld a, [$b2f9]
- ld c, a
- ld a, [$b2fa]
- ld b, a
- call CloseSRAM
- cp $2
- jr nc, .asm_170853
- push bc
- call UpdateTime
- pop bc
- ld a, [CurDay]
- sub c
- jr c, .asm_170849
- cp $b
- jr nc, .asm_170853
- ld a, b
- and a
- jr nz, .asm_170853
- ret
-.asm_170849
- ld hl, CurDay
- ld a, $8c
- sub c
- add [hl]
- cp $b
- ret c
-.asm_170853
- ld a, $1
- ld [ScriptVar], a
- ld a, $5
- call GetSRAMBank
- xor a
- ld [$b2f9], a
- ld [$b2fa], a
- call CloseSRAM
- ret
-
-Function170868: ; 170868 (5c:4868)
- ld a, BANK(sbe47)
- call GetSRAMBank
- ld a, [rSVBK]
- push af
- ld a, $3
- ld [rSVBK], a
- ld a, [wd000 + $800]
- ld [sbe47], a
- pop af
- ld [rSVBK], a
- call CloseSRAM
- ret
-
-Function170881: ; 170881 (5c:4881)
- ld a, BANK(sbe47)
- call GetSRAMBank
- ld a, [rSVBK]
- push af
- ld a, $3
- ld [rSVBK], a
- ld a, [sbe47]
- ld [wd000 + $800], a
- pop af
- ld [rSVBK], a
- call CloseSRAM
- ret
-
-Function17089a: ; 17089a
- ld a, [wcfcd]
- and a
- jr z, .asm_1708ad
- callba Function14bcb
- jr z, .asm_1708ab
- xor a
- jr .asm_1708ad
-
-.asm_1708ab
- ld a, $1
-
-.asm_1708ad
- ld [ScriptVar], a
- ret
-; 1708b1
-
-
-Function1708b1: ; 1708b1 (5c:48b1)
- xor a
- ld [MusicFade], a
- call MaxVolume
- ret
-
-CheckMobileEventIndex: ; 1708b9 (5c:48b9) something to do with GS Ball
- ld a, BANK(sMobileEventIndex)
- call GetSRAMBank
- ld a, [sMobileEventIndex]
- ld [ScriptVar], a
- call CloseSRAM
- ret
-
-Function1708c8: ; 1708c8 (5c:48c8)
- call UpdateTime
- ld a, $5
- call GetSRAMBank
- ld a, [CurDay]
- ld [$aa8b], a
- xor a
- ld [$aa8c], a
- ld a, [$aa5d]
- cp $2
- jr nc, .asm_1708ec
- ld a, [CurDay]
- ld [$aa48], a
- ld a, $1
- ld [$aa47], a
-.asm_1708ec
- call CloseSRAM
- ret
-
-Function1708f0: ; 1708f0 (5c:48f0)
- xor a
- ld [ScriptVar], a
- call UpdateTime
- ld a, $5
- call GetSRAMBank
- ld a, [$aa48]
- ld c, a
- ld a, [$aa47]
- call CloseSRAM
- and a
- ret z
- ld hl, CurDay
- ld a, c
- cp [hl]
- jr nz, Function170923
- ld a, $5
- call GetSRAMBank
- ld a, [$aa5d]
- call CloseSRAM
- cp $5
- ret c
- ld a, $1
- ld [ScriptVar], a
- ret
-
-
-Function170923: ; 170923
- ld a, $5
- call GetSRAMBank
- xor a
- ld [$aa48], a
- ld [$aa47], a
- ld hl, $aa5d
- ld bc, $0011
- call ByteFill
- call CloseSRAM
- ret
-; 17093c
-
-
-Function17093c: ; 17093c (5c:493c)
- xor a
- ld [ScriptVar], a
- ld a, EGG_TICKET
- ld [CurItem], a
- ld hl, NumItems
- call CheckItem
- ret nc
- ld a, [PartyCount]
- ld b, 0
- ld c, a
- ld hl, PartySpecies
-.loop
- ld a, [hli]
- cp EGG
- jr nz, .not_egg
- push hl
- ld hl, PartyMonOT ; wddff (aliases: PartyMonOT)
- ld de, $6
- ld a, b
- and a
- jr z, .skip
-.loop2
- add hl, de
- dec a
- jr nz, .loop2
-.skip
- ld de, String_1709a4
- ld a, $6
-.asm_17096e
- push af
- ld a, [de]
- inc de
- cp [hl]
- inc hl
- jr nz, .asm_17099d
- pop af
- dec a
- jr nz, .asm_17096e
-rept 4
- dec hl
-endr
- ld a, $50
-rept 2
- ld [hli], a
-endr
- pop hl
- ld a, EGG_TICKET
- ld [CurItem], a
- ld a, $1
- ld [wItemQuantityChangeBuffer], a
- ld a, $ff
- ld [wd107], a
- ld hl, NumItems
- call TossItem
- ld a, $1
- ld [ScriptVar], a
- ret
-
-.asm_17099d
- pop af
- pop hl
-.not_egg
- inc b
- dec c
- jr nz, .loop
- ret
-; 1709a4 (5c:49a4)
-
-String_1709a4: ; 1709a4
- db "なぞナゾ@@"
-
-Function1709aa: ; 1709aa (5c:49aa)
- ld a, [rSVBK]
- push af
- ld a, BANK(w3_d090)
- ld [rSVBK], a
- ld a, [w3_d090]
- ld [ScriptVar], a
- pop af
- ld [rSVBK], a
- ret
-
-Function1709bb: ; 1709bb (5c:49bb)
- xor a
- ld [ScriptVar], a
- ld a, $5
- call GetSRAMBank
- ld a, [$a800]
- call CloseSRAM
- cp 6
- jr nc, .invalid
- ld e, a
- ld d, 0
- ld hl, Jumptable_1709e7
-rept 2
- add hl, de
-endr
- ld a, [hli]
- ld h, [hl]
- ld l, a
- jp [hl]
-
-.invalid
- ld a, $5
- call GetSRAMBank
- xor a
- ld [$a800], a
- call CloseSRAM
- ret
-; 1709e7 (5c:49e7)
-
-Jumptable_1709e7: ; 1709e7
- dw Function170a00
- dw Function170a00
- dw Function1709f3
- dw Function1709f3
- dw Function170a01
- dw Function170a33
-; 1709f3
-
-Function1709f3: ; 1709f3
- ld a, $5
- call GetSRAMBank
- ld a, $1
- ld [$a800], a
- call CloseSRAM
-
-Function170a00: ; 170a00
- ret
-; 170a01
-
-Function170a01: ; 170a01
- ld a, $5
- call GetSRAMBank
- ld hl, $b023
- ld de, $c608
- ld bc, $0069
- call CopyBytes
- ld a, [$a825]
- ld [wcd30], a
- ld a, [$a826]
- ld [wcd31], a
- call CloseSRAM
- callba Function11b6b4
- callba Function17d0f3
- ld a, $1
- ld [ScriptVar], a
- ret
-; 170a33
-
-Function170a33: ; 170a33
- ld a, $0
- call GetSRAMBank
- ld hl, wRTC
- ld de, $c608
- ld bc, $0004
- call CopyBytes
- call CloseSRAM
- ld a, $5
- call GetSRAMBank
- ld hl, $b08c
- ld de, $c608
- ld c, $4
-.asm_170a54
- ld a, [de]
- inc de
- cp [hl]
- jr nz, .asm_170a78
- inc hl
- dec c
- jr nz, .asm_170a54
- call CloseSRAM
- ld a, [MapGroup]
- ld b, a
- ld a, [MapNumber]
- ld c, a
- call GetMapTrigger
- ld a, d
- or e
- jr z, .asm_170a72
- ld a, [de]
- and a
- ret nz
-
-.asm_170a72
- ld a, $1
- ld [ScriptVar], a
- ret
-
-.asm_170a78
- call CloseSRAM
- ld a, $5
- call GetSRAMBank
- xor a
- ld [$a800], a
- call CloseSRAM
- ld [ScriptVar], a
- ld a, [MapGroup]
- ld b, a
- ld a, [MapNumber]
- ld c, a
- call GetMapTrigger
- ld a, d
- or e
- jr z, .asm_170a9b
- xor a
- ld [de], a
-
-.asm_170a9b
- ret
-; 170a9c
-
-Function170a9c: ; 170a9c (5c:4a9c)
- ld c, $0
- jr asm_170aa2
-
-Function170aa0: ; 170aa0 (5c:4aa0)
- ld c, $1
-asm_170aa2: ; 170aa2 (5c:4aa2)
- ld a, $5
- call GetSRAMBank
- ld a, c
- ld [$aa8d], a
- call CloseSRAM
- ret
-
-Function170aaf: ; 170aaf (5c:4aaf)
- ld a, $5
- call GetSRAMBank
- ld a, [$aa8d]
- ld [ScriptVar], a
- call CloseSRAM
- ret
-
-Function170abe: ; 170abe (5c:4abe)
- call Function17089a
- ld a, [ScriptVar]
- and a
- ret z
- ld a, BANK(sbe4f)
- call GetSRAMBank
- ld a, [sbe4f]
- and $1
- ld [ScriptVar], a
- call CloseSRAM
- ret
-
-Function170ad7: ; 170ad7 (5c:4ad7)
- ld a, BANK(sbe4f)
- call GetSRAMBank
- ld a, [sbe4f]
- or $1
- ld [sbe4f], a
- call CloseSRAM
- ret
-
-Function170ae8: ; 170ae8 (5c:4ae8)
- ld a, $5
- call GetSRAMBank
- ld a, [$b2fb]
- call CloseSRAM
- ld c, $a
- call SimpleDivide
- ld a, b
- ld [wcd4f], a
- xor a
- ld [ScriptVar], a
- callba Function119d93
- ret nc
- ld a, $5
- call GetSRAMBank
- ld a, [$b2fb]
- call CloseSRAM
- ld [ScriptVar], a
- ret
-
-Function170b16: ; 170b16 (5c:4b16)
- ld a, $5
- call GetSRAMBank
- ld a, [$b2fb]
- call CloseSRAM
- ld c, 10
- call SimpleDivide
- ld a, b
- ld [wcd4f], a
- xor a
- ld [ScriptVar], a
- callba Function119dd1
- ret nc
- ld a, $5
- call GetSRAMBank
- ld a, [$b2fb]
- call CloseSRAM
- ld [ScriptVar], a
- ret
-
Function_LoadOpponentTrainerAndPokemonsWithOTSprite: ; 0x170b44
callba Function_LoadOpponentTrainerAndPokemons
ld a, [rSVBK]
@@ -1297,7 +116,7 @@ Function_LoadOpponentTrainerAndPokemonsWithOTSprite: ; 0x170b44
ld [hUsedSpriteIndex], a
ld a, [hl]
ld [hUsedSpriteTile], a
- callba Function143c8
+ callba GetUsedSprite
ret
; 170b90
@@ -1532,7 +351,7 @@ Function170cc6: ; 170cc6
ld hl, LZ_1715a4
ld de, wd000
call Decompress
- ld de, wMapPals
+ ld de, UnknBGPals
ld hl, VTiles0
lb bc, $6, $53
call Get2bpp
@@ -1593,7 +412,7 @@ Function1719ed: ; 1719ed (5c:59ed)
call ClearBGPalettes
call ClearSprites
callba Function171d2b
- callba Function104061
+ callba ReloadMapPart
callba Function8cf53
ret
@@ -1604,7 +423,7 @@ Function171a11: ; 171a11 (5c:5a11)
jr nz, .asm_171a2c
call Function171a36
callba Function8cf69
- callba Function104061
+ callba ReloadMapPart
jr Function171a11
.asm_171a2c
callba Function8cf53
@@ -1760,23 +579,23 @@ Function171b42: ; 171b42 (5c:5b42)
jr Function171b42
Function171b4b: ; 171b4b (5c:5b4b)
- lb de, $40, $10
- ld a, $1d
- call Function3b2a
+ depixel 8, 2
+ ld a, SPRITE_ANIM_INDEX_1D
+ call _InitSpriteAnimStruct
ld hl, $c
add hl, bc
ld a, $8
ld [hl], a
- lb de, $40, $98
- ld a, $1d
- call Function3b2a
+ depixel 8, 19
+ ld a, SPRITE_ANIM_INDEX_1D
+ call _InitSpriteAnimStruct
ld hl, $c
add hl, bc
ld a, $9
ld [hl], a
- lb de, $8a, $70
- ld a, $1d
- call Function3b2a
+ depixel 17, 14, 2, 0
+ ld a, SPRITE_ANIM_INDEX_1D
+ call _InitSpriteAnimStruct
ld hl, $c
add hl, bc
ld a, $a
@@ -1861,7 +680,7 @@ Function171beb: ; 171beb (5c:5beb)
call LoadMenuDataHeader
call MenuBox
call MenuBoxCoord2Tile
- callba Function104061
+ callba ReloadMapPart
hlcoord 1, 14
ld de, String_171c73
call PlaceString
@@ -1957,10 +776,10 @@ Function171ccd: ; 171ccd (5c:5ccd)
ld a, $5
ld [rSVBK], a
ld hl, Palette_171d71
- ld de, wMapPals
+ ld de, UnknBGPals
ld bc, $40
call CopyBytes
- ld hl, MovementAnimation
+ ld hl, EngineBuffer5
ld a, $ff
ld [hli], a
ld a, $7f
@@ -2120,7 +939,7 @@ Function172eb9:
ld a, $5
ld [rSVBK], a
ld hl, Palette_172edf
- ld de, wMapPals
+ ld de, UnknBGPals
ld bc, $40
call CopyBytes
ld hl, Palette_172edf
diff --git a/misc/mobile_5f.asm b/misc/mobile_5f.asm
index 01a4db77f..19c3748e8 100644
--- a/misc/mobile_5f.asm
+++ b/misc/mobile_5f.asm
@@ -6,7 +6,7 @@ Function17c000: ; 17c000
call DisableLCD
ld hl, VTiles2
- ld bc, $310
+ ld bc, $31 tiles
xor a
call ByteFill
@@ -48,11 +48,11 @@ Function17c000: ; 17c000
ld a, [rSVBK]
push af
- ld a, 5 ; BANK(wMapPals)
+ ld a, 5 ; BANK(UnknBGPals)
ld [rSVBK], a
ld hl, HaveWantPals
- ld de, wMapPals
+ ld de, UnknBGPals
ld bc, $80
call CopyBytes
@@ -61,7 +61,7 @@ Function17c000: ; 17c000
ld hl, MobileSelectGFX
ld de, VTiles0 tile $30
- ld bc, $200
+ ld bc, $20 tiles
call CopyBytes
ld a, 1
@@ -69,19 +69,19 @@ Function17c000: ; 17c000
ld hl, HaveWantGFX
ld de, VTiles2
- ld bc, $800
+ ld bc, $80 tiles
call CopyBytes
ld hl, HaveWantGFX + $800
ld de, VTiles1
- ld bc, $100
+ ld bc, $10 tiles
call CopyBytes
xor a
ld [rVBK], a
call EnableLCD
- callba Function104061
+ callba ReloadMapPart
ret
; 17c083
@@ -226,46 +226,48 @@ CheckStringForErrors: ; 17d073
ret
; 17d0b3
-Function17d0b3: ; 17d0b3
-.asm_17d0b3
+CheckStringForErrors_IgnoreTerminator: ; 17d0b3
+; Find control chars
+.loop
ld a, [de]
inc de
and a
- jr z, .asm_17d0ee
- cp $60
- jr nc, .asm_17d0ee
- cp $4e
- jr z, .asm_17d0ee
- cp $50
- jr z, .asm_17d0ee
+ jr z, .next
+ cp "<DEXEND>" + 1
+ jr nc, .next
+ cp "<NEXT>"
+ jr z, .next
+ cp "@"
+ jr z, .next
+
cp $5
- jr c, .asm_17d0ec
- cp $14
- jr c, .asm_17d0ee
+ jr c, .end
+ cp "<PLAY_G>"
+ jr c, .next
cp $19
- jr c, .asm_17d0ec
+ jr c, .end
cp $1d
- jr c, .asm_17d0ee
- cp $26
- jr c, .asm_17d0ec
+ jr c, .next
+ cp "%" + 1
+ jr c, .end
cp $35
- jr c, .asm_17d0ee
- cp $3a
- jr c, .asm_17d0ec
- cp $3f
- jr c, .asm_17d0ee
- cp $40
- jr c, .asm_17d0ec
- cp $49
- jr c, .asm_17d0ee
-
-.asm_17d0ec
+ jr c, .next
+ cp "<GREEN>" + 1
+ jr c, .end
+ cp "<ENEMY>"
+ jr c, .next
+ cp "<ENEMY>" + 1
+ jr c, .end
+ cp "<MOM>"
+ jr c, .next
+
+.end
scf
ret
-.asm_17d0ee
+.next
dec c
- jr nz, .asm_17d0b3
+ jr nz, .loop
and a
ret
; 17d0f3
@@ -303,7 +305,7 @@ Function17d0f3: ; 17d0f3
ld [wd1e9], a
ld a, $2
ld [wLinkMode], a
- callba Function421d8
+ callba EvolvePokemon
xor a
ld [wLinkMode], a
callba Function14a58
@@ -324,7 +326,7 @@ Function17d0f3: ; 17d0f3
ld [de], a
.asm_17d180
- call Function2b3c
+ call ReturnToCallingMenu
call RestartMapMusic
ret
; 17d187
@@ -380,22 +382,22 @@ Function17d1c9: ; 17d1c9
ret
; 17d1e1
-Function17d1e1: ; 17d1e1
-.asm_17d1e1
+CheckStringContainsLessThanBNextCharacters: ; 17d1e1
+.loop
ld a, [de]
inc de
- cp $4e
- jr nz, .asm_17d1ea
+ cp "<NEXT>"
+ jr nz, .next_char
dec b
- jr z, .asm_17d1ef
+ jr z, .done
-.asm_17d1ea
+.next_char
dec c
- jr nz, .asm_17d1e1
+ jr nz, .loop
and a
ret
-.asm_17d1ef
+.done
scf
ret
; 17d1f1
@@ -415,7 +417,7 @@ Function17d1f1: ; 17d1f1
ld bc, PARTYMON_STRUCT_LENGTH
call AddNTimes
predef GetUnownLetter
- callab Functionfba18
+ callab UpdateUnownDex
ld a, [wdef4]
and a
jr nz, .asm_17d223
@@ -440,18 +442,18 @@ Function17d1f1: ; 17d1f1
Special_Menu_ChallengeExplanationCancel: ; 17d224
ld a, [ScriptVar]
and a
- jr nz, .asm_17d234
+ jr nz, .English
ld a, $4
ld [ScriptVar], a
ld hl, MenuDataHeader_17d26a ; Japanese Menu, where you can choose 'News' as an option
- jr .asm_17d23c
+ jr .Load_Interpret
-.asm_17d234
+.English
ld a, $4
ld [ScriptVar], a
ld hl, MenuDataHeader_ChallengeExplanationCancel ; English Menu
-.asm_17d23c
+.Load_Interpret
call LoadMenuDataHeader
call Function17d246
call WriteBackup
@@ -460,25 +462,25 @@ Special_Menu_ChallengeExplanationCancel: ; 17d224
Function17d246: ; 17d246
call InterpretMenu2
- jr c, .asm_17d264
+ jr c, .Exit
ld a, [ScriptVar]
cp $5
- jr nz, .asm_17d25d
+ jr nz, .UseMenuSelection2
ld a, [MenuSelection2]
cp $3
ret z
- jr c, .asm_17d25d
+ jr c, .UseMenuSelection2
dec a
- jr .asm_17d260
+ jr .LoadToScriptVar
-.asm_17d25d
+.UseMenuSelection2
ld a, [MenuSelection2]
-.asm_17d260
+.LoadToScriptVar
ld [ScriptVar], a
ret
-.asm_17d264
+.Exit
ld a, $4
ld [ScriptVar], a
ret
@@ -494,8 +496,8 @@ MenuDataHeader_17d26a: ; 17d26a
MenuData2_17d272: ; 17d272
db $a0 ; flags
db 4
- db "ニュース", $1f, "よみこむ@"
- db "ニュース", $1f, "みる@"
+ db "ニュース¯よみこむ@"
+ db "ニュース¯みる@"
db "せつめい@"
db "やめる@"
; 17d28f
@@ -562,7 +564,7 @@ Function17d2ce: ; 17d2ce
ld [MusicFadeIDHi], a
call PlayMusic
call ReturnToMapFromSubmenu
- call Function2b3c
+ call ReturnToCallingMenu
ret
; 17d314
@@ -629,31 +631,31 @@ Function17d370: ; 17d370
call ClearBGPalettes
call ClearSprites
call ClearScreen
- callba Function104061
+ callba ReloadMapPart
call DisableLCD
ld hl, VTiles1 tile $6e
ld de, $c608
- ld bc, $0010
+ ld bc, 1 tiles
call CopyBytes
ld a, $1
ld [rVBK], a
ld hl, PokemonNewsGFX
ld de, VTiles1
- ld bc, $0480
+ ld bc, $48 tiles
call CopyBytes
xor a
ld hl, VTiles2 tile $7f
- ld bc, $0010
+ ld bc, 1 tiles
call ByteFill
ld hl, $c608
ld de, VTiles1 tile $6e
- ld bc, $0010
+ ld bc, 1 tiles
call CopyBytes
xor a
ld [rVBK], a
ld hl, GFX_17eb7e
ld de, VTiles2 tile $60
- ld bc, $0010
+ ld bc, 1 tiles
call CopyBytes
call EnableLCD
call Function17d60b
@@ -664,7 +666,7 @@ Function17d370: ; 17d370
ld a, $6
call GetSRAMBank
ld hl, $a006
- ld de, wMapPals
+ ld de, UnknBGPals
ld bc, $1000
call CopyBytes
call CloseSRAM
@@ -675,27 +677,27 @@ Function17d3f6: ; 17d3f6
call ClearBGPalettes
call ClearSprites
call ClearScreen
- callba Function104061
+ callba ReloadMapPart
Function17d405:
call DisableLCD
ld hl, VTiles1 tile $6e
ld de, $c608
- ld bc, $0010
+ ld bc, 1 tiles
call CopyBytes
ld a, $1
ld [rVBK], a
ld hl, PokemonNewsGFX
ld de, VTiles1
- ld bc, $0480
+ ld bc, $48 tiles
call CopyBytes
xor a
ld hl, VTiles2 tile $7f
- ld bc, $0010
+ ld bc, 1 tiles
call ByteFill
ld hl, $c608
ld de, VTiles1 tile $6e
- ld bc, $0010
+ ld bc, 1 tiles
call CopyBytes
xor a
ld [rVBK], a
@@ -705,7 +707,7 @@ Function17d405:
ld a, $5
ld [rSVBK], a
ld hl, Palette_17eff6
- ld de, wMapPals
+ ld de, UnknBGPals
ld bc, $0040
call CopyBytes
call SetPalettes
@@ -721,7 +723,7 @@ Function17d45a: ; 17d45a
bit 7, a
jr nz, .asm_17d46f
call Function17d474
- callba Function104061
+ callba ReloadMapPart
jr .asm_17d45a
.asm_17d46f
@@ -935,7 +937,7 @@ endr
call Function17e451
call Function17e55b
call Function17e5af
- callba Function104061
+ callba ReloadMapPart
jp Function17e438
; 17d5be
@@ -985,7 +987,7 @@ Function17d5f6: ; 17d5f6
ld a, $5
ld [rSVBK], a
ld hl, $c608
- ld de, wMapPals
+ ld de, UnknBGPals
ld bc, $0040
call CopyBytes
ld a, $4
@@ -1239,7 +1241,7 @@ Function17d78d: ; 17d78d
call GetSRAMBank
ld hl, $a006
add hl, bc
- ld de, wMapPals
+ ld de, UnknBGPals
ld bc, $1000
call CopyBytes
call CloseSRAM
@@ -1363,7 +1365,7 @@ Function17d85d: ; 17d85d
ld a, [hli]
ld d, a
push hl
- ld hl, wMapPals
+ ld hl, UnknBGPals
add hl, de
ld de, wcc60
.asm_17d86c
@@ -1432,7 +1434,7 @@ Function17d85d: ; 17d85d
ld a, $3
ld [rSVBK], a
ld hl, $c608
- ld de, wMapPals
+ ld de, UnknBGPals
ld b, $0
call CopyBytes
ld a, $4
@@ -1467,7 +1469,7 @@ Function17d902: ; 17d902
call Function17e41e
call Function17e32b
pop de
- ld hl, wMapPals
+ ld hl, UnknBGPals
add hl, de
ld de, wcc60
.asm_17d918
@@ -1973,7 +1975,7 @@ MenuData2_17dc96:
Function17dc9f: ; 17dc9f
call Function17e415
call Function17e41e
- call Function4dd
+ call RotateFourPalettesLeft
ret
; 17dca9
@@ -1984,7 +1986,7 @@ Function17dca9: ; 17dca9
Function17dcaf:
ld a, $5
ld [rSVBK], a
- ld hl, wMapPals
+ ld hl, UnknBGPals
ld de, $0008
ld c, $8
.asm_17dcbb
@@ -1997,7 +1999,7 @@ Function17dcaf:
add hl, de
dec c
jr nz, .asm_17dcbb
- call FadeToWhite
+ call RotateThreePalettesRight
ld a, $4
ld [rSVBK], a
ret
@@ -2362,7 +2364,7 @@ Function17ded9: ; 17ded9
push hl
push bc
predef TryAddMonToParty
- callba Function4db49
+ callba SetCaughtData
pop bc
pop hl
bit 1, b
@@ -2400,7 +2402,7 @@ Function17ded9: ; 17ded9
ld a, [hli]
ld b, a
push hl
- callba SetPartymonCaughtData
+ callba SetGiftPartyMonCaughtData
pop hl
pop bc
jr .asm_17df5e
@@ -2558,7 +2560,7 @@ Function17e026: ; 17e026
push hl
callba LoadEnemyMon
callba SentPkmnIntoBox
- callba Function4db83
+ callba SetBoxMonCaughtData
pop hl
pop bc
ld a, BANK(sBoxMonNicknames)
@@ -2587,7 +2589,7 @@ Function17e026: ; 17e026
ld b, a
push hl
call CloseSRAM
- callba SetBoxMonCaughtData
+ callba SetGiftBoxMonCaughtData
ld a, $1
call GetSRAMBank
pop hl
@@ -3111,7 +3113,7 @@ Function17e3ac: ; 17e3ac
push af
ld a, $1
ld [rSVBK], a
- callba Function14e13
+ callba SaveChecksum
pop af
ld [rSVBK], a
ret
@@ -3165,7 +3167,7 @@ Function17e409: ; 17e409
; 17e40f
Function17e40f: ; 17e40f
- ld de, wMapPals
+ ld de, UnknBGPals
add hl, de
jr Function17e41e
@@ -4419,7 +4421,7 @@ endr
ld e, a
ld a, [hli]
ld d, a
- ld hl, wMapPals
+ ld hl, UnknBGPals
add hl, de
ld e, l
ld d, h
@@ -4674,7 +4676,7 @@ Function17f53d: ; 17f53d
call Function17f555
pop af
ld [rSVBK], a
- call Function2b4d
+ call ExitAllMenus
ret
; 17f555
diff --git a/misc/unused_title.asm b/misc/unused_title.asm
index 143994d9a..a74a376a3 100644
--- a/misc/unused_title.asm
+++ b/misc/unused_title.asm
@@ -31,7 +31,7 @@ endr
call CopyBytes
ld hl, UnusedTitleBG_Tilemap
- ld de, VBGMap0
+ debgcoord 0, 0
ld bc, 32 * 32
.copy
ld a, 0
@@ -67,12 +67,12 @@ endr
ld [rSVBK], a
ld hl, UnusedTitleBG_Palettes
- ld de, wMapPals
+ ld de, UnknBGPals
ld bc, $40
call CopyBytes
ld hl, UnusedTitleFG_Palettes
- ld de, Unkn2Pals
+ ld de, UnknOBPals
ld bc, $40
call CopyBytes