summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorBryan Bishop <kanzure@gmail.com>2015-02-13 14:38:23 -0600
committerBryan Bishop <kanzure@gmail.com>2015-02-13 14:38:23 -0600
commitd7bc1d12f23a6d800169b887592807cf92b4974a (patch)
tree0b8be61e8f894e0cd21c3794378b4c871d4f9717
parentb22a3347939a040ca3dc85c60c1cf6313c984add (diff)
parent1480602df75b980e291a832ba3a485d123a53047 (diff)
Merge pull request #277 from yenatch/master
Start splitting code out of main.
-rw-r--r--battle/core.asm6
-rw-r--r--constants/map_constants.asm19
-rw-r--r--constants/script_constants.asm39
-rw-r--r--engine/diploma.asm94
-rw-r--r--engine/map_objects.asm3683
-rw-r--r--engine/map_setup.asm489
-rw-r--r--engine/map_triggers.asm91
-rw-r--r--engine/more_phone_scripts.asm10
-rw-r--r--engine/pack.asm1692
-rw-r--r--engine/phone_scripts.asm10
-rw-r--r--engine/pokedex.asm2585
-rw-r--r--engine/spawn_points.asm106
-rw-r--r--engine/specials.asm642
-rw-r--r--engine/std_scripts.asm36
-rw-r--r--event/move_deleter.asm168
-rw-r--r--items/item_effects.asm28
-rw-r--r--macros/event.asm10
-rw-r--r--macros/map.asm96
-rw-r--r--main.asm49787
-rw-r--r--maps/AzaleaTown.asm4
-rw-r--r--maps/BattleTower1F.asm64
-rw-r--r--maps/BattleTowerBattleRoom.asm42
-rw-r--r--maps/BattleTowerElevator.asm2
-rw-r--r--maps/BillsHouse.asm12
-rw-r--r--maps/BluesHouse.asm10
-rw-r--r--maps/BurnedTower1F.asm4
-rw-r--r--maps/BurnedTowerB1F.asm4
-rw-r--r--maps/CeladonDeptStore6F.asm2
-rw-r--r--maps/CeladonGameCorner.asm8
-rw-r--r--maps/CeladonGameCornerPrizeRoom.asm10
-rw-r--r--maps/CeladonMansion3F.asm4
-rw-r--r--maps/CeladonPokeCenter1F.asm4
-rw-r--r--maps/CeruleanGym.asm2
-rw-r--r--maps/CeruleanPokeCenter1F.asm2
-rw-r--r--maps/CherrygroveCity.asm6
-rw-r--r--maps/CianwoodCity.asm2
-rw-r--r--maps/CianwoodCityPhotoStudio.asm2
-rw-r--r--maps/Colosseum.asm4
-rw-r--r--maps/CopycatsHouse2F.asm10
-rw-r--r--maps/DayCare.asm6
-rw-r--r--maps/DragonShrine.asm6
-rw-r--r--maps/DragonsDenB1F.asm8
-rw-r--r--maps/EcruteakGym.asm2
-rw-r--r--maps/EcruteakPokeCenter1F.asm2
-rw-r--r--maps/ElmsLab.asm18
-rw-r--r--maps/FastShip1F.asm4
-rw-r--r--maps/FastShipCabins.asm6
-rw-r--r--maps/FastShipCabins_NNW_NNE_NE.asm2
-rw-r--r--maps/FastShipCabins_SE_SSE_CaptainsCabin.asm6
-rw-r--r--maps/FastShipCabins_SW_SSW_NW.asm14
-rw-r--r--maps/FuchsiaGym.asm10
-rw-r--r--maps/FuchsiaPokeCenter1F.asm4
-rw-r--r--maps/GoldenrodCity.asm10
-rw-r--r--maps/GoldenrodDeptStore5F.asm6
-rw-r--r--maps/GoldenrodDeptStore6F.asm2
-rw-r--r--maps/GoldenrodGameCorner.asm16
-rw-r--r--maps/GoldenrodHappinessRater.asm2
-rw-r--r--maps/GoldenrodMagnetTrainStation.asm2
-rw-r--r--maps/GoldenrodNameRatersHouse.asm2
-rw-r--r--maps/GoldenrodPokeCenter1F.asm8
-rw-r--r--maps/HallOfFame.asm4
-rw-r--r--maps/IlexForest.asm6
-rw-r--r--maps/IndigoPlateauPokeCenter1F.asm6
-rw-r--r--maps/KrissHouse1F.asm10
-rw-r--r--maps/KrissHouse2F.asm6
-rw-r--r--maps/KurtsHouse.asm12
-rw-r--r--maps/LakeofRage.asm2
-rw-r--r--maps/LakeofRageMagikarpHouse.asm4
-rw-r--r--maps/LancesRoom.asm6
-rw-r--r--maps/LavenderNameRater.asm2
-rw-r--r--maps/MahoganyTown.asm4
-rw-r--r--maps/ManiasHouse.asm4
-rw-r--r--maps/MobileBattleRoom.asm22
-rw-r--r--maps/MobileTradeRoomMobile.asm4
-rw-r--r--maps/MountMoon.asm2
-rw-r--r--maps/MoveDeletersHouse.asm2
-rw-r--r--maps/MrPokemonsHouse.asm14
-rw-r--r--maps/NewBarkTown.asm4
-rw-r--r--maps/OaksLab.asm2
-rw-r--r--maps/OlivineCity.asm12
-rw-r--r--maps/OlivineLighthouse6F.asm16
-rw-r--r--maps/OlivinePort.asm2
-rw-r--r--maps/PokeCenter2F.asm114
-rw-r--r--maps/PokeSeersHouse.asm2
-rw-r--r--maps/RadioTower1F.asm8
-rw-r--r--maps/RadioTower2F.asm18
-rw-r--r--maps/RadioTower5F.asm8
-rw-r--r--maps/Route24.asm8
-rw-r--r--maps/Route25.asm4
-rw-r--r--maps/Route26HealSpeechHouse.asm12
-rw-r--r--maps/Route27SandstormHouse.asm2
-rw-r--r--maps/Route30.asm2
-rw-r--r--maps/Route34.asm6
-rw-r--r--maps/Route35NationalParkgate.asm16
-rw-r--r--maps/Route36.asm4
-rw-r--r--maps/Route36NationalParkgate.asm24
-rw-r--r--maps/Route39Barn.asm4
-rw-r--r--maps/Route39Farmhouse.asm4
-rw-r--r--maps/Route40.asm2
-rw-r--r--maps/Route43Gate.asm4
-rw-r--r--maps/Route45.asm4
-rw-r--r--maps/RuinsofAlphAerodactylChamber.asm6
-rw-r--r--maps/RuinsofAlphHoOhChamber.asm8
-rw-r--r--maps/RuinsofAlphKabutoChamber.asm6
-rw-r--r--maps/RuinsofAlphOmanyteChamber.asm8
-rw-r--r--maps/RuinsofAlphResearchCenter.asm4
-rw-r--r--maps/SaffronPokeCenter1F.asm2
-rw-r--r--maps/SaffronTrainStation.asm2
-rw-r--r--maps/SilverCaveRoom3.asm12
-rw-r--r--maps/SlowpokeWellB1F.asm10
-rw-r--r--maps/SproutTower3F.asm10
-rw-r--r--maps/TeamRocketBaseB1F.asm12
-rw-r--r--maps/TeamRocketBaseB2F.asm20
-rw-r--r--maps/TeamRocketBaseB3F.asm4
-rw-r--r--maps/TimeCapsule.asm4
-rw-r--r--maps/TinTower1F.asm12
-rw-r--r--maps/TradeCenter.asm4
-rw-r--r--maps/TrainerHouseB1F.asm4
-rw-r--r--maps/UndergroundPathSwitchRoomEntrances.asm4
-rw-r--r--maps/VermilionCity.asm2
-rw-r--r--maps/VermilionPort.asm2
-rw-r--r--maps/VictoryRoad.asm4
-rw-r--r--maps/VioletCity.asm2
-rw-r--r--maps/WarehouseEntrance.asm30
-rw-r--r--maps/map_headers.asm8
-rw-r--r--maps/second_map_headers.asm1361
-rw-r--r--misc/mobile_40.asm8080
-rw-r--r--misc/mobile_42.asm1947
-rw-r--r--misc/mobile_45.asm24075
-rw-r--r--misc/mobile_5f.asm5234
-rw-r--r--misc/unused_title.asm559
-rw-r--r--wram.asm4
132 files changed, 50404 insertions, 51353 deletions
diff --git a/battle/core.asm b/battle/core.asm
index 879ae211f..a0e2576c1 100644
--- a/battle/core.asm
+++ b/battle/core.asm
@@ -7366,7 +7366,7 @@ Function3ee3b: ; 3ee3b
.asm_3ee89
push hl
push bc
- ld a, $1c
+ ld a, PartyMon1PokerusStatus - PartyMon1
call GetPartyParamLocation
ld a, [hl]
and a
@@ -7630,7 +7630,7 @@ Function3ee3b: ; 3ee3b
call TextBox
hlcoord 11, 1
ld bc, $0004
- predef Function50b7b
+ predef PrintTempMonStats
ld c, $1e
call DelayFrames
call Functiona80
@@ -7673,7 +7673,7 @@ Function3ee3b: ; 3ee3b
cp b
jr z, .asm_3f0d1
ld [CurPartyMon], a
- ld a, $0
+ ld a, PartyMon1Species - PartyMon1
call GetPartyParamLocation
ld b, h
ld c, l
diff --git a/constants/map_constants.asm b/constants/map_constants.asm
index d115cfd0e..22609ef71 100644
--- a/constants/map_constants.asm
+++ b/constants/map_constants.asm
@@ -1771,10 +1771,19 @@ GATE EQU 6
DUNGEON EQU 7
; object struct
+OBJECT_00 EQU $0
+OBJECT_01 EQU $1
OBJECT_SPRITE EQU $2
+OBJECT_03 EQU $3
+OBJECT_04 EQU $4
OBJECT_FLAGS EQU $5
OBJECT_PALETTE EQU $6
+OBJECT_07 EQU $7
+OBJECT_08 EQU $8
+OBJECT_09 EQU $9
OBJECT_STEP_DURATION EQU $a
+OBJECT_11 EQU $b
+OBJECT_12 EQU $c
OBJECT_FACING EQU $d
OBJECT_STANDING_TILE EQU $e
OBJECT_NEXT_TILE EQU $f
@@ -1782,8 +1791,18 @@ OBJECT_MAP_X EQU $10
OBJECT_MAP_Y EQU $11
OBJECT_NEXT_MAP_X EQU $12
OBJECT_NEXT_MAP_Y EQU $13
+OBJECT_20 EQU $14
+OBJECT_21 EQU $15
+OBJECT_22 EQU $16
OBJECT_SPRITE_X EQU $17
OBJECT_SPRITE_Y EQU $18
OBJECT_SPRITE_X_OFFSET EQU $19
OBJECT_SPRITE_Y_OFFSET EQU $1a
+OBJECT_27 EQU $1b
+OBJECT_28 EQU $1c
+OBJECT_29 EQU $1d
+OBJECT_30 EQU $1e
+OBJECT_31 EQU $1f
+OBJECT_32 EQU $20
+; 33-39 are not used
diff --git a/constants/script_constants.asm b/constants/script_constants.asm
index 540612441..2aefa69c7 100644
--- a/constants/script_constants.asm
+++ b/constants/script_constants.asm
@@ -1,42 +1,3 @@
-; specials
-NUM_SPECIALS EQU $a8
-
-SPECIAL_UPDATESPRITETILES EQU $0038
-
-SPECIAL_WAITSFX EQU $003b
-SPECIAL_BIKESURFMUSIC EQU $003c
-
-SPECIAL_LOADFACESTEP EQU $003f
-
-SPECIAL_GIVESHUCKLE EQU $004b
-
-SPECIAL_SNORLAXAWAKE EQU $0060
-
-SPECIAL_GAMEBOYCHECK EQU $0066
-SPECIAL_TRAINERHOUSE EQU $0067
-
-SPECIAL_RUSTLETREE EQU $006a
-
-SPECIAL_ODDEGG EQU $007d
-
-SPECIAL_MOVETUTOR EQU $0083
-SPECIAL_OMANYTECHAMBER EQU $0084
-
-SPECIAL_RUINCHAMBERWALL EQU $0087
-
-SPECIAL_HOOHCHAMBER EQU $008d
-
-SPECIAL_CELEBI EQU $008f
-SPECIAL_AFTERCELEBI EQU $0090
-SPECIAL_POKESEER EQU $0091
-SPECIAL_BUENAS_PASSWORD EQU $0092
-SPECIAL_BUENA_PRIZE EQU $0093
-SPECIAL_DRATINI EQU $0094
-
-SPECIAL_BEASTSCHECK EQU $0096
-SPECIAL_MONCHECK EQU $0097
-
-
; script vars
NUM_VARS EQU $1b
VAR_MOVEMENT EQU $08
diff --git a/engine/diploma.asm b/engine/diploma.asm
new file mode 100644
index 000000000..bf6e89fa8
--- /dev/null
+++ b/engine/diploma.asm
@@ -0,0 +1,94 @@
+
+Function1dd702: ; 1dd702
+ call Function1dd709
+ call Functiona80
+ ret
+; 1dd709
+
+Function1dd709: ; 1dd709
+ call WhiteBGMap
+ call ClearTileMap
+ call ClearSprites
+ call DisableLCD
+ ld hl, LZ_1dd805
+ ld de, VTiles2
+ call Decompress
+ ld hl, Tilemap_1ddc4b
+ ld de, TileMap
+ ld bc, $0168
+ call CopyBytes
+ ld de, String_1dd760
+ hlcoord 2, 5
+ call PlaceString
+ ld de, String_1dd767
+ hlcoord 15, 5
+ call PlaceString
+ ld de, PlayerName
+ hlcoord 9, 5
+ call PlaceString
+ ld de, String_1dd768
+ hlcoord 2, 8
+ call PlaceString
+ call EnableLCD
+ call WaitBGMap
+ ld b, $8
+ call GetSGBLayout
+ call Function32f9
+ call DelayFrame
+ ret
+; 1dd760
+
+String_1dd760:
+ db "PLAYER@"
+
+String_1dd767:
+ db "@"
+
+String_1dd768:
+ db "This certifies"
+ next "that you have"
+ next "completed the"
+ next "new #DEX."
+ next "Congratulations!"
+ db "@"
+; 1dd7ae
+
+Function1dd7ae: ; 1dd7ae
+ ld hl, TileMap
+ ld bc, $0168
+ ld a, $7f
+ call ByteFill
+ ld hl, Tilemap_1dddb3
+ ld de, TileMap
+ ld bc, $0168
+ call CopyBytes
+ ld de, String_1dd7fa
+ hlcoord 8, 0
+ call PlaceString
+ ld de, String_1dd7f0
+ hlcoord 3, 15
+ call PlaceString
+ hlcoord 12, 15
+ ld de, GameTimeHours
+ ld bc, $0204
+ call PrintNum
+ ld [hl], $67
+ inc hl
+ ld de, GameTimeMinutes
+ ld bc, $8102
+ call PrintNum
+ ret
+; 1dd7f0
+
+String_1dd7f0: db "PLAY TIME@"
+String_1dd7fa: db "GAME FREAK@"
+; 1dd805
+
+LZ_1dd805: ; 1dd805
+INCBIN "gfx/unknown/1dd805.2bpp.lz"
+
+Tilemap_1ddc4b: ; 1ddc4b
+INCBIN "gfx/unknown/1ddc4b.tilemap"
+
+Tilemap_1dddb3: ; 1dddb3
+INCBIN "gfx/unknown/1dddb3.tilemap"
diff --git a/engine/map_objects.asm b/engine/map_objects.asm
new file mode 100644
index 000000000..983c1c700
--- /dev/null
+++ b/engine/map_objects.asm
@@ -0,0 +1,3683 @@
+
+INCLUDE "engine/facings.asm"
+
+Data4273:: ; 4273
+ db $00, $00, $01, $02, $00, $00
+ db $06, $00, $01, $0c, $00, $00
+ db $03, $00, $01, $00, $00, $00
+ db $04, $00, $01, $00, $00, $00
+ db $01, $00, $01, $00, $00, $00
+ db $02, $00, $01, $00, $00, $00
+ db $06, $00, $01, $00, $00, $00
+ db $06, $01, $01, $00, $00, $00
+ db $06, $02, $01, $00, $00, $00
+ db $06, $03, $01, $00, $00, $00
+ db $05, $00, $01, $00, $00, $00
+ db $07, $00, $01, $02, $00, $00
+ db $08, $00, $01, $00, $00, $00
+ db $09, $00, $01, $00, $00, $00
+ db $0a, $00, $01, $00, $00, $00
+ db $0b, $00, $01, $00, $00, $00
+ db $0c, $00, $01, $00, $00, $00
+ db $0d, $00, $01, $00, $00, $00
+ db $0e, $00, $01, $00, $00, $00
+ db $0f, $00, $01, $02, $00, $00
+ db $10, $00, $01, $02, $00, $00
+ db $15, $00, $09, $2e, $01, $c0
+ db $16, $00, $0a, $2e, $00, $00
+ db $06, $00, $01, $0c, $00, $00
+ db $06, $00, $01, $2e, $10, $00
+ db $11, $00, $01, $2e, $00, $40
+ db $12, $00, $01, $02, $00, $00
+ db $13, $00, $00, $8e, $01, $00
+ db $14, $00, $08, $8e, $02, $00
+ db $17, $00, $00, $82, $00, $00
+ db $19, $02, $01, $00, $00, $00
+ db $18, $03, $01, $00, $00, $00
+ db $11, $00, $0c, $2e, $01, $c0
+ db $11, $00, $0d, $2e, $01, $c0
+ db $1a, $00, $0e, $8e, $01, $00
+ db $1b, $00, $0f, $8e, $02, $00
+ db $03, $00, $01, $00, $00, $20
+ db $00, $00, $01, $00, $00, $00
+; 4357
+
+
+Function4357:: ; 4357
+ push bc
+ ld hl, OBJECT_01
+ add hl, bc
+ ld a, [hl]
+ push af
+ ld h, b
+ ld l, c
+ ld bc, ObjectStruct2 - ObjectStruct1
+ xor a
+ call ByteFill
+ pop af
+ cp $ff
+ jr z, .asm_4379
+ bit 7, a
+ jr nz, .asm_4379
+ call GetMapObject
+ ld hl, OBJECT_00
+ add hl, bc
+ ld [hl], $ff
+
+.asm_4379
+ pop bc
+ ret
+; 437b
+
+Function437b: ; 437b
+ call Function4386
+ ret c
+ call Function43f3
+ call Function4427
+ ret
+; 4386
+
+Function4386: ; 4386
+ ld hl, OBJECT_FLAGS
+ add hl, bc
+ res 6, [hl]
+ ld a, [XCoord]
+ ld e, a
+ ld hl, OBJECT_MAP_X
+ add hl, bc
+ ld a, [hl]
+ add $1
+ sub e
+ jr c, .asm_43b2
+ cp $c
+ jr nc, .asm_43b2
+ ld a, [YCoord]
+ ld e, a
+ ld hl, OBJECT_MAP_Y
+ add hl, bc
+ ld a, [hl]
+ add $1
+ sub e
+ jr c, .asm_43b2
+ cp $b
+ jr nc, .asm_43b2
+ jr .asm_43dc
+
+.asm_43b2
+ ld hl, OBJECT_FLAGS
+ add hl, bc
+ set 6, [hl]
+ ld a, [XCoord]
+ ld e, a
+ ld hl, OBJECT_20
+ add hl, bc
+ ld a, [hl]
+ add $1
+ sub e
+ jr c, .asm_43de
+ cp $c
+ jr nc, .asm_43de
+ ld a, [YCoord]
+ ld e, a
+ ld hl, OBJECT_21
+ add hl, bc
+ ld a, [hl]
+ add $1
+ sub e
+ jr c, .asm_43de
+ cp $b
+ jr nc, .asm_43de
+
+.asm_43dc
+ and a
+ ret
+
+.asm_43de
+ ld hl, OBJECT_04
+ add hl, bc
+ bit 1, [hl]
+ jr nz, .asm_43eb
+ call Function4357
+ scf
+ ret
+
+.asm_43eb
+ ld hl, OBJECT_FLAGS
+ add hl, bc
+ set 6, [hl]
+ and a
+ ret
+; 43f3
+
+Function43f3: ; 43f3
+ ld hl, OBJECT_09
+ add hl, bc
+ ld a, [hl]
+ and a
+ jr z, .asm_4409
+ ld hl, OBJECT_FLAGS
+ add hl, bc
+ bit 5, [hl]
+ jr nz, .asm_4426
+ cp $1
+ jr z, .asm_4414
+ jr .asm_4421
+
+.asm_4409
+ call Function47bc
+ ld hl, OBJECT_FLAGS
+ add hl, bc
+ bit 5, [hl]
+ jr nz, .asm_4426
+
+.asm_4414
+ call Function47dd
+ ld hl, OBJECT_09
+ add hl, bc
+ ld a, [hl]
+ and a
+ ret z
+ cp $1
+ ret z
+
+.asm_4421
+ ld hl, Pointers4b45
+ rst JumpTable
+ ret
+
+.asm_4426
+ ret
+; 4427
+
+Function4427: ; 4427
+ ld hl, OBJECT_04
+ add hl, bc
+ bit 0, [hl]
+ jr nz, Function44a3
+
+ ld hl, OBJECT_FLAGS
+ add hl, bc
+ bit 6, [hl]
+ jr nz, Function44a3
+
+ bit 5, [hl]
+ jr nz, Function4448
+
+ ld de, Pointers445f
+ jr Function444d
+; 4440
+
+Function4440: ; 4440
+ ld hl, OBJECT_04
+ add hl, bc
+ bit 0, [hl]
+ jr nz, Function44a3
+ ; fallthrough
+; 4448
+
+Function4448: ; 4448
+ ld de, Pointers445f + 2
+ jr Function444d
+; 444d
+
+Function444d: ; 444d
+ ld hl, OBJECT_11
+ add hl, bc
+ ld a, [hl]
+ ld l, a
+ ld h, 0
+ add hl, hl
+ add hl, hl
+ add hl, de
+ ld a, [hli]
+ ld h, [hl]
+ ld l, a
+ call _hl_
+ ret
+; 445f
+
+Pointers445f: ; 445f
+ dw Function44a3
+ dw Function44a3
+ dw Function44b5
+ dw Function44aa
+ dw Function44c1
+ dw Function44aa
+ dw Function4508
+ dw Function44aa
+ dw Function4529
+ dw Function44aa
+ dw Function4539
+ dw Function44a3
+ dw Function456e
+ dw Function456e
+ dw Function457b
+ dw Function44a3
+ dw Function4582
+ dw Function4582
+ dw Function4589
+ dw Function4589
+ dw Function4590
+ dw Function45a4
+ dw Function45ab
+ dw Function44aa
+ dw Function45be
+ dw Function45be
+ dw Function45c5
+ dw Function45c5
+ dw Function45da
+ dw Function44a3
+ dw Function45ed
+ dw Function44a3
+ dw Function44e4
+ dw Function44aa
+; 44a3
+
+Function44a3: ; 44a3
+ ld hl, OBJECT_FACING
+ add hl, bc
+ ld [hl], $ff
+ ret
+; 44aa
+
+Function44aa: ; 44aa
+ call GetSpriteDirection
+ or $0
+ ld hl, OBJECT_FACING
+ add hl, bc
+ ld [hl], a
+ ret
+; 44b5
+
+Function44b5: ; 44b5
+ ld hl, OBJECT_FACING
+ add hl, bc
+ ld a, [hl]
+ and $1
+ jr nz, Function44c1
+ jp Function44aa
+; 44c1
+
+Function44c1: ; 44c1
+ ld hl, OBJECT_04
+ add hl, bc
+ bit 3, [hl]
+ jp nz, Function44aa
+ ld hl, OBJECT_12
+ add hl, bc
+ ld a, [hl]
+ inc a
+ and $f
+ ld [hl], a
+ rrca
+ rrca
+ and $3
+ ld d, a
+ call GetSpriteDirection
+ or $0
+ or d
+ ld hl, OBJECT_FACING
+ add hl, bc
+ ld [hl], a
+ ret
+; 44e4
+
+Function44e4: ; 44e4
+ ld hl, OBJECT_04
+ add hl, bc
+ bit 3, [hl]
+ jp nz, Function44aa
+ ld hl, OBJECT_12
+ add hl, bc
+ ld a, [hl]
+ add $2
+ and $f
+ ld [hl], a
+ rrca
+ rrca
+ and $3
+ ld d, a
+ call GetSpriteDirection
+ or $0
+ or d
+ ld hl, OBJECT_FACING
+ add hl, bc
+ ld [hl], a
+ ret
+; 4508
+
+Function4508: ; 4508
+ ld hl, OBJECT_04
+ add hl, bc
+ bit 3, [hl]
+ jp nz, Function44aa
+ ld hl, OBJECT_12
+ add hl, bc
+ inc [hl]
+ ld a, [hl]
+ rrca
+ rrca
+ rrca
+ and $3
+ ld d, a
+ call GetSpriteDirection
+ or $0
+ or d
+ ld hl, OBJECT_FACING
+ add hl, bc
+ ld [hl], a
+ ret
+; 4529
+
+Function4529: ; 4529
+ call Function453f
+ ld hl, OBJECT_08
+ add hl, bc
+ ld a, [hl]
+ or $0
+ ld hl, OBJECT_FACING
+ add hl, bc
+ ld [hl], a
+ ret
+; 4539
+
+Function4539: ; 4539
+ call Function453f
+ jp Function44a3
+; 453f
+
+Function453f: ; 453f
+ ld hl, OBJECT_12
+ add hl, bc
+ ld a, [hl]
+ and $f0
+ ld e, a
+ ld a, [hl]
+ inc a
+ and $f
+ ld d, a
+ cp $4
+ jr c, .asm_4558
+ ld d, 0
+ ld a, e
+ add $10
+ and $30
+ ld e, a
+
+.asm_4558
+ ld a, d
+ or e
+ ld [hl], a
+ swap e
+ ld d, 0
+ ld hl, .Directions
+ add hl, de
+ ld a, [hl]
+ ld hl, OBJECT_08
+ add hl, bc
+ ld [hl], a
+ ret
+; 456a
+
+.Directions ; 456a
+ db $00, $0c, $04, $08
+; 456e
+
+Function456e: ; 456e
+ call GetSpriteDirection
+ rrca
+ rrca
+ add $10
+ ld hl, OBJECT_FACING
+ add hl, bc
+ ld [hl], a
+ ret
+; 457b
+
+Function457b: ; 457b
+ ld hl, OBJECT_FACING
+ add hl, bc
+ ld [hl], $15
+ ret
+; 4582
+
+Function4582: ; 4582
+ ld hl, OBJECT_FACING
+ add hl, bc
+ ld [hl], $14
+ ret
+; 4589
+
+Function4589: ; 4589
+ ld hl, OBJECT_FACING
+ add hl, bc
+ ld [hl], $17
+ ret
+; 4590
+
+Function4590: ; 4590
+ ld hl, OBJECT_12
+ add hl, bc
+ ld a, [hl]
+ inc a
+ and $f
+ ld [hl], a
+ and $8
+ jr z, Function45a4
+ ld hl, OBJECT_FACING
+ add hl, bc
+ ld [hl], $4
+ ret
+; 45a4
+
+Function45a4: ; 45a4
+ ld hl, OBJECT_FACING
+ add hl, bc
+ ld [hl], $0
+ ret
+; 45ab
+
+Function45ab: ; 45ab
+ ld hl, OBJECT_12
+ add hl, bc
+ ld a, [hl]
+ inc a
+ ld [hl], a
+ and $c
+ rrca
+ rrca
+ add $18
+ ld hl, OBJECT_FACING
+ add hl, bc
+ ld [hl], a
+ ret
+; 45be
+
+Function45be: ; 45be
+ ld hl, OBJECT_FACING
+ add hl, bc
+ ld [hl], $16
+ ret
+; 45c5
+
+Function45c5: ; 45c5
+ ld a, [VariableSprites + 3]
+ ld d, $17
+ cp $33
+ jr z, .asm_45d4
+ cp $47
+ jr z, .asm_45d4
+ ld d, $16
+
+.asm_45d4
+ ld hl, OBJECT_FACING
+ add hl, bc
+ ld [hl], d
+ ret
+; 45da
+
+Function45da: ; 45da
+ ld hl, OBJECT_12
+ add hl, bc
+ inc [hl]
+ ld a, [hl]
+
+ ld hl, OBJECT_FACING
+ add hl, bc
+ and 2
+ ld a, $1c
+ jr z, .asm_45eb
+ inc a
+.asm_45eb
+ ld [hl], a
+ ret
+; 45ed
+
+Function45ed: ; 45ed
+ ld hl, OBJECT_12
+ add hl, bc
+ inc [hl]
+ ld a, [hl]
+ ld hl, OBJECT_FACING
+ add hl, bc
+ and 4
+ ld a, $1e
+ jr z, .asm_45fe
+ inc a
+
+.asm_45fe
+ ld [hl], a
+ ret
+; 4600
+
+Function4600: ; 4600
+
+ ld hl, OBJECT_MAP_X
+ add hl, bc
+ ld a, [hl]
+ ld hl, OBJECT_NEXT_MAP_X
+ add hl, bc
+ ld [hl], a
+
+ ld hl, OBJECT_MAP_Y
+ add hl, bc
+ ld a, [hl]
+ ld hl, OBJECT_NEXT_MAP_Y
+ add hl, bc
+ ld [hl], a
+
+ ld hl, OBJECT_STANDING_TILE
+ add hl, bc
+ ld a, [hl]
+ ld hl, OBJECT_NEXT_TILE
+ add hl, bc
+ ld [hl], a
+
+ call Function4661
+ ld hl, OBJECT_STANDING_TILE
+ add hl, bc
+ ld a, [hl]
+
+ call Function4679
+ ret
+; 462a
+
+Function462a: ; 462a
+
+ ld hl, OBJECT_NEXT_MAP_X
+ add hl, bc
+ ld a, [hl]
+ ld hl, OBJECT_MAP_X
+ add hl, bc
+ ld [hl], a
+
+ ld hl, OBJECT_NEXT_MAP_Y
+ add hl, bc
+ ld a, [hl]
+ ld hl, OBJECT_MAP_Y
+ add hl, bc
+ ld [hl], a
+
+ ret
+; 463f
+
+Function463f: ; 463f
+ ld hl, OBJECT_FLAGS
+ add hl, bc
+ bit 3, [hl]
+ jr z, .asm_464f
+ ld hl, OBJECT_STANDING_TILE
+ add hl, bc
+ ld a, [hl]
+ call Function4661
+
+.asm_464f
+ ld hl, OBJECT_STANDING_TILE
+ add hl, bc
+ ld a, [hl]
+ call Function4679
+ ret c
+ ld hl, OBJECT_NEXT_TILE
+ add hl, bc
+ ld a, [hl]
+ call Function4679
+ ret
+; 4661
+
+Function4661: ; 4661
+ call Function188e
+ jr z, .asm_466b
+ call Function1875
+ jr c, .asm_4672
+
+.asm_466b
+ ld hl, OBJECT_FLAGS
+ add hl, bc
+ set 3, [hl]
+ ret
+
+.asm_4672
+ ld hl, OBJECT_FLAGS
+ add hl, bc
+ res 3, [hl]
+ ret
+; 4679
+
+Function4679: ; 4679
+ and a
+ ret
+; 467b
+
+Function467b: ; 467b
+ xor a
+ ld hl, OBJECT_12
+ add hl, bc
+ ld [hl], a
+ ld hl, OBJECT_27
+ add hl, bc
+ ld [hli], a
+ ld [hli], a
+ ld [hli], a
+ ld [hl], a
+ ld hl, OBJECT_07
+ add hl, bc
+ ld [hl], $ff
+ ret
+; 4690
+
+Function4690: ; 4690
+ ld hl, OBJECT_07
+ add hl, bc
+ ld [hl], a
+ ld hl, OBJECT_04
+ add hl, bc
+ bit 2, [hl]
+ jr nz, .asm_46a6
+
+ add a
+ add a
+ and $c
+ ld hl, OBJECT_08
+ add hl, bc
+ ld [hl], a
+
+.asm_46a6
+ ; fallthrough
+; 46a6
+
+Function46a6: ; 46a6
+
+ call GetStepVector
+
+ ld hl, OBJECT_STEP_DURATION
+ add hl, bc
+ ld [hl], a
+
+ ld a, d
+ call Function4730
+ ld hl, OBJECT_NEXT_MAP_X
+ add hl, bc
+ add [hl]
+ ld hl, OBJECT_MAP_X
+ add hl, bc
+ ld [hl], a
+ ld d, a
+
+ ld a, e
+ call Function4730
+ ld hl, OBJECT_NEXT_MAP_Y
+ add hl, bc
+ add [hl]
+ ld hl, OBJECT_MAP_Y
+ add hl, bc
+ ld [hl], a
+ ld e, a
+
+ push bc
+ call Function2a3c
+ pop bc
+
+ ld hl, OBJECT_STANDING_TILE
+ add hl, bc
+ ld [hl], a
+
+ ret
+; 46d7
+
+Function46d7: ; 46d7
+
+ call GetStepVector
+
+ ld hl, OBJECT_SPRITE_X
+ add hl, bc
+ ld a, [hl]
+ add d
+ ld [hl], a
+
+ ld hl, OBJECT_SPRITE_Y
+ add hl, bc
+ ld a, [hl]
+ add e
+ ld [hl], a
+
+ ret
+; 46e9
+
+GetStepVector: ; 46e9
+; Return (x, y, duration, speed) in (d, e, a, h).
+ ld hl, OBJECT_07
+ add hl, bc
+ ld a, [hl]
+ and $f
+ add a
+ add a
+ ld l, a
+ ld h, 0
+ ld de, StepVectors
+ add hl, de
+ ld d, [hl]
+ inc hl
+ ld e, [hl]
+ inc hl
+ ld a, [hli]
+ ld h, [hl]
+ ret
+; 4700
+
+StepVectors: ; 4700
+; x, y, duration, speed
+ ; slow
+ db 0, 1, 16, 1
+ db 0, -1, 16, 1
+ db -1, 0, 16, 1
+ db 1, 0, 16, 1
+ ; normal
+ db 0, 2, 8, 2
+ db 0, -2, 8, 2
+ db -2, 0, 8, 2
+ db 2, 0, 8, 2
+ ; fast
+ db 0, 4, 4, 4
+ db 0, -4, 4, 4
+ db -4, 0, 4, 4
+ db 4, 0, 4, 4
+; 4730
+
+Function4730: ; 4730
+ add a
+ ret z
+ ld a, 1
+ ret nc
+ ld a, -1
+ ret
+; 4738
+
+Function4738: ; 4738
+ ld hl, OBJECT_07
+ add hl, bc
+ ld a, [hl]
+ and $3
+ ld [wd151], a
+ call Function46d7
+ ld a, [wd14e]
+ add d
+ ld [wd14e], a
+ ld a, [wd14f]
+ add e
+ ld [wd14f], a
+ ld hl, wd150
+ set 5, [hl]
+ ret
+; 4759
+
+Function4759: ; 4759
+ push bc
+ ld e, a
+ ld d, 0
+ ld hl, OBJECT_01
+ add hl, bc
+ ld a, [hl]
+ call GetMapObject
+ add hl, de
+ ld a, [hl]
+ pop bc
+ ret
+; 4769
+
+Function4769: ; 4769
+ ld hl, OBJECT_01
+ add hl, bc
+ ld a, [hl]
+ cp $ff
+ jr z, .asm_477d
+ push bc
+ call GetMapObject
+ ld hl, $0004
+ add hl, bc
+ ld a, [hl]
+ pop bc
+ ret
+
+.asm_477d
+ ld a, $6
+ ret
+; 4780
+
+Function4780: ; 4780
+ ld hl, OBJECT_27
+ add hl, bc
+ ld [hl], $0
+ ret
+; 4787
+
+Function4787: ; 4787
+ ld hl, OBJECT_27
+ add hl, bc
+ inc [hl]
+ ret
+; 478d
+
+Function478d: ; 478d
+ ld hl, OBJECT_27
+ add hl, bc
+ dec [hl]
+ ret
+; 4793
+
+Function4793: ; 4793
+ ld hl, OBJECT_27
+ add hl, bc
+ ld a, [hl]
+ pop hl
+ rst JumpTable
+ ret
+; 479b
+
+Function479b: ; 479b
+ ld hl, OBJECT_28
+ add hl, bc
+ ld [hl], $0
+ ret
+; 47a2
+
+Function47a2: ; 47a2
+ ld hl, OBJECT_28
+ add hl, bc
+ inc [hl]
+ ret
+; 47a8
+
+Function47a8: ; 47a8
+ ld hl, OBJECT_28
+ add hl, bc
+ ld a, [hl]
+ pop hl
+ rst JumpTable
+ ret
+; 47b0
+
+Function47b0: ; 47b0
+ ld hl, OBJECT_28
+ add hl, bc
+ ld a, [hl]
+ ret
+; 47b6
+
+Function47b6: ; 47b6
+ ld hl, OBJECT_28
+ add hl, bc
+ ld [hl], a
+ ret
+; 47bc
+
+Function47bc: ; 47bc
+ ld hl, OBJECT_MAP_X
+ add hl, bc
+ ld d, [hl]
+ ld hl, OBJECT_MAP_Y
+ add hl, bc
+ ld e, [hl]
+ push bc
+ call Function2a3c
+ pop bc
+ ld hl, OBJECT_STANDING_TILE
+ add hl, bc
+ ld [hl], a
+ call Function4600
+ call Function467b
+ ld hl, OBJECT_09
+ add hl, bc
+ ld [hl], $1
+ ret
+; 47dd
+
+Function47dd: ; 47dd
+ call Function479b
+ call Function1a2f
+ ld a, [hl]
+ ld hl, .Pointers
+ rst JumpTable
+ ret
+; 47e9
+
+.Pointers ; 47e9
+ dw Function4821
+ dw Function4822
+ dw Function482c
+ dw Function4838
+ dw Function4842
+ dw Function4851
+ dw Function4869
+ dw Function487c
+ dw Function4882
+ dw Function4888
+ dw Function488e
+ dw Function4891
+ dw Function4894
+ dw Function4897
+ dw Function489d
+ dw Function48a0
+ dw Function48a6
+ dw Function48ac
+ dw Function48ff
+ dw Function49e5
+ dw Function4a21
+ dw Function4958
+ dw Function496e
+ dw Function4abc
+ dw Function498d
+ dw Function4984
+ dw Function4a46
+ dw Function4a89
+; 4821
+
+Function4821: ; 4821
+ ret
+; 4822
+
+Function4822: ; 4822
+ call Random
+ ld a, [hRandomAdd]
+ and 1
+ jp Function4af0
+; 482c
+
+Function482c: ; 482c
+ call Random
+ ld a, [hRandomAdd]
+ and 1
+ or 2
+ jp Function4af0
+; 4838
+
+Function4838: ; 4838
+ call Random
+ ld a, [hRandomAdd]
+ and 3
+ jp Function4af0
+; 4842
+
+Function4842: ; 4842
+ call Random
+ ld a, [hRandomAdd]
+ and $c
+ ld hl, OBJECT_08
+ add hl, bc
+ ld [hl], a
+ jp Function4b1d
+; 4851
+
+Function4851: ; 4851
+ ld hl, OBJECT_08
+ add hl, bc
+ ld a, [hl]
+ and $c
+ ld d, a
+ call Random
+ ld a, [hRandomAdd]
+ and $c
+ cp d
+ jr nz, .asm_4865
+ xor $c
+
+.asm_4865
+ ld [hl], a
+ jp Function4b26
+; 4869
+
+Function4869: ; 4869
+ call Function462a
+ call Function467b
+ ld hl, OBJECT_11
+ add hl, bc
+ ld [hl], $1
+ ld hl, OBJECT_09
+ add hl, bc
+ ld [hl], $5
+ ret
+; 487c
+
+Function487c: ; 487c
+ ld hl, Function5000
+ jp Function5041
+; 4882
+
+Function4882: ; 4882
+ ld hl, Function5015
+ jp Function5041
+; 4888
+
+Function4888: ; 4888
+ ld hl, Function5026
+ jp Function5041
+; 488e
+
+Function488e: ; 488e
+ jp Function5037
+; 4891
+
+Function4891: ; 4891
+ jp Function5037
+; 4894
+
+Function4894: ; 4894
+ jp Function5037
+; 4897
+
+Function4897: ; 4897
+ ld hl, Function5000
+ jp Function5041
+; 489d
+
+Function489d: ; 489d
+ jp Function5037
+; 48a0
+
+Function48a0: ; 48a0
+ ld hl, Function54e6
+ jp Function5041
+; 48a6
+
+Function48a6: ; 48a6
+ ld hl, Function500e
+ jp Function5041
+; 48ac
+
+Function48ac: ; 48ac
+ call Function4793
+ dw Function48b3
+ dw Function48f8
+; 48b3
+
+Function48b3: ; 48b3
+ ld hl, OBJECT_STANDING_TILE
+ add hl, bc
+ ld a, [hl]
+ call CheckPitTile
+ jr z, .asm_48f5
+ ld hl, OBJECT_FLAGS
+ add hl, bc
+ bit 2, [hl]
+ res 2, [hl]
+ jr z, .asm_48ee
+ ld hl, OBJECT_32
+ add hl, bc
+ ld a, [hl]
+ and $3
+ or $0
+ call Function4690
+ call Function6ec1
+ jr c, .asm_48eb
+ ld de, SFX_STRENGTH
+ call PlaySFX
+ call Function5538
+ call Function463f
+ ld hl, OBJECT_09
+ add hl, bc
+ ld [hl], $f
+ ret
+
+.asm_48eb
+ call Function462a
+
+.asm_48ee
+ ld hl, OBJECT_07
+ add hl, bc
+ ld [hl], $ff
+ ret
+
+.asm_48f5
+ call Function4787
+ ; fallthrough
+; 48f8
+
+Function48f8: ; 48f8
+ ld hl, OBJECT_07
+ add hl, bc
+ ld [hl], $ff
+ ret
+; 48ff
+
+Function48ff: ; 48ff
+ ld hl, OBJECT_MAP_X
+ add hl, bc
+ ld d, [hl]
+ ld hl, OBJECT_MAP_Y
+ add hl, bc
+ ld e, [hl]
+ ld hl, OBJECT_32
+ add hl, bc
+ ld a, [hl]
+ push bc
+ call Function1ae5
+ ld hl, OBJECT_07
+ add hl, bc
+ ld a, [hl]
+ cp $ff
+ jr z, .asm_494a
+ ld hl, OBJECT_NEXT_MAP_X
+ add hl, bc
+ ld a, [hl]
+ cp d
+ jr z, .asm_492d
+ jr c, .asm_4929
+ ld a, $3
+ jr .asm_493d
+
+.asm_4929
+ ld a, $2
+ jr .asm_493d
+
+.asm_492d
+ ld hl, OBJECT_NEXT_MAP_Y
+ add hl, bc
+ ld a, [hl]
+ cp e
+ jr z, .asm_494a
+ jr c, .asm_493b
+ ld a, $0
+ jr .asm_493d
+
+.asm_493b
+ ld a, $1
+
+.asm_493d
+ ld d, a
+ ld hl, OBJECT_07
+ add hl, bc
+ ld a, [hl]
+ and $c
+ or d
+ pop bc
+ jp Function5412
+
+.asm_494a
+ pop bc
+ ld hl, OBJECT_07
+ add hl, bc
+ ld [hl], $ff
+ ld hl, OBJECT_11
+ add hl, bc
+ ld [hl], $1
+ ret
+; 4958
+
+Function4958: ; 4958
+ call Function467b
+ ld hl, OBJECT_07
+ add hl, bc
+ ld [hl], $ff
+ ld hl, OBJECT_11
+ add hl, bc
+ ld [hl], $9
+ ld hl, OBJECT_09
+ add hl, bc
+ ld [hl], $4
+ ret
+; 496e
+
+Function496e: ; 496e
+ call Function467b
+ ld hl, OBJECT_07
+ add hl, bc
+ ld [hl], $ff
+ ld hl, OBJECT_11
+ add hl, bc
+ ld [hl], $a
+ ld hl, OBJECT_09
+ add hl, bc
+ ld [hl], $4
+ ret
+; 4984
+
+Function4984: ; 4984
+ call Function4793
+ dw Function4996
+ dw Function499c
+ dw Function49b8
+; 498d
+
+Function498d: ; 498d
+ call Function4793
+ dw Function4996
+ dw Function499c
+ dw Function49c4
+; 4996
+
+Function4996: ; 4996
+ call Function467b
+ call Function4787
+ ; fallthrough
+; 499c
+
+Function499c: ; 499c
+ ld hl, OBJECT_11
+ add hl, bc
+ ld [hl], $1
+ ld hl, OBJECT_32
+ add hl, bc
+ ld a, [hl]
+ ld a, $10
+ ld hl, OBJECT_STEP_DURATION
+ add hl, bc
+ ld [hl], a
+ ld hl, OBJECT_09
+ add hl, bc
+ ld [hl], $3
+ call Function4787
+ ret
+; 49b8
+
+Function49b8: ; 49b8
+ ld de, .data_49c0
+ call Function49d0
+ jr Function4984
+; 49c0
+
+.data_49c0 ; 49c0
+ db $0c, $08, $00, $04
+; 49c4
+
+Function49c4: ; 49c4
+ ld de, .data_49cc
+ call Function49d0
+ jr Function498d
+; 49cc
+
+.data_49cc ; 49cc
+ db $08, $0c, $04, $00
+; 49d0
+
+Function49d0: ; 49d0
+ ld hl, OBJECT_08
+ add hl, bc
+ ld a, [hl]
+ and $c
+ rrca
+ rrca
+ push hl
+ ld l, a
+ ld h, $0
+ add hl, de
+ ld a, [hl]
+ pop hl
+ ld [hl], a
+ call Function478d
+ ret
+; 49e5
+
+Function49e5: ; 49e5
+ call Function4aa8
+ ld hl, OBJECT_11
+ add hl, bc
+ ld [hl], $7
+ ld hl, OBJECT_STEP_DURATION
+ add hl, de
+ ld a, [hl]
+ inc a
+ add a
+ add $0
+ ld hl, OBJECT_STEP_DURATION
+ add hl, bc
+ ld [hl], a
+ ld hl, OBJECT_07
+ add hl, de
+ ld a, [hl]
+ and 3
+ ld d, $e
+ cp 0
+ jr z, .asm_4a0f
+ cp 1
+ jr z, .asm_4a0f
+ ld d, $c
+
+.asm_4a0f
+ ld hl, OBJECT_SPRITE_Y_OFFSET
+ add hl, bc
+ ld [hl], d
+ ld hl, OBJECT_SPRITE_X_OFFSET
+ add hl, bc
+ ld [hl], $0
+ ld hl, OBJECT_09
+ add hl, bc
+ ld [hl], $13
+ ret
+; 4a21
+
+Function4a21: ; 4a21
+ call Function467b
+ call Function4aa8
+ ld hl, OBJECT_11
+ add hl, bc
+ ld [hl], $8
+ ld hl, OBJECT_STEP_DURATION
+ add hl, bc
+ ld [hl], $0
+ ld hl, OBJECT_SPRITE_Y_OFFSET
+ add hl, bc
+ ld [hl], $f0
+ ld hl, OBJECT_SPRITE_X_OFFSET
+ add hl, bc
+ ld [hl], $0
+ ld hl, OBJECT_09
+ add hl, bc
+ ld [hl], $13
+ ret
+; 4a46
+
+Function4a46: ; 4a46
+ call Function467b
+ call Function4aa8
+ ld hl, OBJECT_11
+ add hl, bc
+ ld [hl], $e
+ ld hl, OBJECT_STEP_DURATION
+ add hl, de
+ ld a, [hl]
+ inc a
+ add a
+ ld hl, OBJECT_STEP_DURATION
+ add hl, bc
+ ld [hl], a
+ ld hl, OBJECT_07
+ add hl, de
+ ld a, [hl]
+ and 3
+ ld e, a
+ ld d, 0
+ ld hl, .data_4a81
+ add hl, de
+ add hl, de
+ ld d, [hl]
+ inc hl
+ ld e, [hl]
+ ld hl, OBJECT_SPRITE_X_OFFSET
+ add hl, bc
+ ld [hl], d
+ ld hl, OBJECT_SPRITE_Y_OFFSET
+ add hl, bc
+ ld [hl], e
+ ld hl, OBJECT_09
+ add hl, bc
+ ld [hl], $13
+ ret
+; 4a81
+
+.data_4a81 ; 4a81
+ ; x, y
+ db 0, -4
+ db 0, 8
+ db 6, 2
+ db -6, 2
+; 4a89
+
+Function4a89: ; 4a89
+ call Function467b
+ call Function4aa8
+ ld hl, OBJECT_11
+ add hl, bc
+ ld [hl], $f
+ ld hl, OBJECT_STEP_DURATION
+ add hl, de
+ ld a, [hl]
+ add $ff
+ ld hl, OBJECT_STEP_DURATION
+ add hl, bc
+ ld [hl], a
+ ld hl, OBJECT_09
+ add hl, bc
+ ld [hl], $13
+ ret
+; 4aa8
+
+Function4aa8: ; 4aa8
+ ld hl, OBJECT_32
+ add hl, bc
+ ld a, [hl]
+ push bc
+ call Function1ae5
+ ld d, b
+ ld e, c
+ pop bc
+ ld hl, OBJECT_29
+ add hl, bc
+ ld [hl], e
+ inc hl
+ ld [hl], d
+ ret
+; 4abc
+
+Function4abc: ; 4abc
+ call Function467b
+ ld hl, OBJECT_11
+ add hl, bc
+ ld [hl], $0
+ ld hl, OBJECT_32
+ add hl, bc
+ ld a, [hl]
+ call Function4ade
+ ld hl, OBJECT_STEP_DURATION
+ add hl, bc
+ ld [hl], e
+ ld hl, OBJECT_30
+ add hl, bc
+ ld [hl], a
+ ld hl, OBJECT_09
+ add hl, bc
+ ld [hl], $15
+ ret
+; 4ade
+
+Function4ade: ; 4ade
+ ld d, a
+ and $3f
+ ld e, a
+ ld a, d
+ rlca
+ rlca
+ and $3
+ ld d, a
+ inc d
+ ld a, $1
+.asm_4aeb
+ dec d
+ ret z
+ add a
+ jr .asm_4aeb
+; 4af0
+
+Function4af0: ; 4af0
+ call Function4690
+ call Function6ec1
+ jr c, Function4b17
+ call Function463f
+ ld hl, OBJECT_11
+ add hl, bc
+ ld [hl], $2
+ ld hl, wd4cf
+ ld a, [$ffaf]
+ cp [hl]
+ jr z, .asm_4b10
+ ld hl, OBJECT_09
+ add hl, bc
+ ld [hl], $7
+ ret
+
+.asm_4b10
+ ld hl, OBJECT_09
+ add hl, bc
+ ld [hl], $6
+ ret
+
+Function4b17: ; 4b17
+ call Function467b
+ call Function462a
+ ; fallthrough
+; 4b1d
+
+Function4b1d: ; 4b1d
+ call Random
+ ld a, [hRandomAdd]
+ and $7f
+ jr Function4b2d
+; 4b26
+
+Function4b26: ; 4b26
+ call Random
+ ld a, [hRandomAdd]
+ and $1f
+ ; fallthrough
+; 4b2d
+
+Function4b2d: ; 4b2d
+ ld hl, OBJECT_STEP_DURATION
+ add hl, bc
+ ld [hl], a
+ ld hl, OBJECT_07
+ add hl, bc
+ ld [hl], $ff
+ ld hl, OBJECT_11
+ add hl, bc
+ ld [hl], $1
+ ld hl, OBJECT_09
+ add hl, bc
+ ld [hl], $3
+ ret
+; 4b45
+
+Pointers4b45: ; 4b45
+ dw Function47bc
+ dw Function47dd
+ dw Function4e2b
+ dw Function4ddd
+ dw Function4e21
+ dw Function4e0c
+ dw Function4e56
+ dw Function4e47
+ dw Function4b86
+ dw Function4bbf
+ dw Function4e83
+ dw Function4dff
+ dw Function4c18
+ dw Function4c89
+ dw Function4d14
+ dw Function4ecd
+ dw Function4d7e
+ dw Function4daf
+ dw Function4dc8
+ dw Function4f04
+ dw Function4f33
+ dw Function4f33
+ dw Function4f77
+ dw Function4f7a
+ dw Function4df0
+ dw Function4f83
+; 4b79
+
+Function4b79: ; 4b79
+ ld hl, OBJECT_STEP_DURATION
+ add hl, bc
+ dec [hl]
+ ret nz
+ ld hl, OBJECT_09
+ add hl, bc
+ ld [hl], $1
+ ret
+; 4b86
+
+Function4b86: ; 4b86
+ call Function47a8
+ dw Function4b8d
+ dw Function4ba9
+; 4b8d
+
+Function4b8d: ; 4b8d
+ call Function46d7
+ call UpdateJumpPosition
+ ld hl, OBJECT_STEP_DURATION
+ add hl, bc
+ dec [hl]
+ ret nz
+ call Function4600
+ call Function46a6
+ ld hl, OBJECT_FLAGS
+ add hl, bc
+ res 3, [hl]
+ call Function47a2
+ ret
+; 4ba9
+
+Function4ba9: ; 4ba9
+ call Function46d7
+ call UpdateJumpPosition
+ ld hl, OBJECT_STEP_DURATION
+ add hl, bc
+ dec [hl]
+ ret nz
+ call Function4600
+ ld hl, OBJECT_09
+ add hl, bc
+ ld [hl], $1
+ ret
+; 4bbf
+
+Function4bbf: ; 4bbf
+ call Function47a8
+ dw Function4bca
+ dw Function4bd2
+ dw Function4bf2
+ dw Function4bfd
+; 4bca
+
+Function4bca: ; 4bca
+ ld hl, wd150
+ set 7, [hl]
+ call Function47a2
+; fallthrough
+; 4bd2
+
+Function4bd2: ; 4bd2
+ call UpdateJumpPosition
+ call Function4738
+ ld hl, OBJECT_STEP_DURATION
+ add hl, bc
+ dec [hl]
+ ret nz
+ call Function4600
+ ld hl, OBJECT_FLAGS
+ add hl, bc
+ res 3, [hl]
+ ld hl, wd150
+ set 6, [hl]
+ set 4, [hl]
+ call Function47a2
+ ret
+; 4bf2
+
+Function4bf2: ; 4bf2
+ call Function46a6
+ ld hl, wd150
+ set 7, [hl]
+ call Function47a2
+; fallthrough
+; 4bfd
+
+Function4bfd: ; 4bfd
+ call UpdateJumpPosition
+ call Function4738
+ ld hl, OBJECT_STEP_DURATION
+ add hl, bc
+ dec [hl]
+ ret nz
+ ld hl, wd150
+ set 6, [hl]
+ call Function4600
+ ld hl, OBJECT_09
+ add hl, bc
+ ld [hl], $1
+ ret
+; 4c18
+
+Function4c18: ; 4c18
+ call Function47a8
+ dw Function4c23
+ dw Function4c32
+ dw Function4c42
+ dw Function4c5d
+; 4c23
+
+Function4c23: ; 4c23
+ ld hl, OBJECT_12
+ add hl, bc
+ ld [hl], $0
+ ld hl, OBJECT_STEP_DURATION
+ add hl, bc
+ ld [hl], $10
+ call Function47a2
+; fallthrough
+; 4c32
+
+Function4c32: ; 4c32
+ ld hl, OBJECT_11
+ add hl, bc
+ ld [hl], $4
+ ld hl, OBJECT_STEP_DURATION
+ add hl, bc
+ dec [hl]
+ ret nz
+ call Function47a2
+ ret
+; 4c42
+
+Function4c42: ; 4c42
+ ld hl, OBJECT_12
+ add hl, bc
+ ld [hl], $0
+ ld hl, OBJECT_31
+ add hl, bc
+ ld [hl], $10
+ ld hl, OBJECT_STEP_DURATION
+ add hl, bc
+ ld [hl], $10
+ ld hl, OBJECT_FLAGS
+ add hl, bc
+ res 3, [hl]
+ call Function47a2
+; fallthrough
+; 4c5d
+
+Function4c5d: ; 4c5d
+ ld hl, OBJECT_11
+ add hl, bc
+ ld [hl], $4
+ ld hl, OBJECT_31
+ add hl, bc
+ inc [hl]
+ ld a, [hl]
+ ld d, $60
+ call Sine
+ ld a, h
+ sub $60
+ ld hl, OBJECT_SPRITE_Y_OFFSET
+ add hl, bc
+ ld [hl], a
+ ld hl, OBJECT_STEP_DURATION
+ add hl, bc
+ dec [hl]
+ ret nz
+ ld hl, OBJECT_12
+ add hl, bc
+ ld [hl], $0
+ ld hl, OBJECT_09
+ add hl, bc
+ ld [hl], $1
+ ret
+; 4c89
+
+Function4c89: ; 4c89
+ call Function47a8
+ dw Function4c9a
+ dw Function4caa
+ dw Function4cb3
+ dw Function4cc9
+ dw Function4ceb
+ dw Function4cf5
+ dw Function4d01
+; 4c9a
+
+Function4c9a: ; 4c9a
+ ld hl, OBJECT_11
+ add hl, bc
+ ld [hl], $0
+ ld hl, OBJECT_STEP_DURATION
+ add hl, bc
+ ld [hl], $10
+ call Function47a2
+ ret
+; 4caa
+
+Function4caa: ; 4caa
+ ld hl, OBJECT_STEP_DURATION
+ add hl, bc
+ dec [hl]
+ ret nz
+ call Function47a2
+; fallthrough
+; 4cb3
+
+Function4cb3: ; 4cb3
+ ld hl, OBJECT_12
+ add hl, bc
+ ld [hl], $0
+ ld hl, OBJECT_31
+ add hl, bc
+ ld [hl], $0
+ ld hl, OBJECT_STEP_DURATION
+ add hl, bc
+ ld [hl], $10
+ call Function47a2
+ ret
+; 4cc9
+
+Function4cc9: ; 4cc9
+ ld hl, OBJECT_11
+ add hl, bc
+ ld [hl], $4
+ ld hl, OBJECT_31
+ add hl, bc
+ inc [hl]
+ ld a, [hl]
+ ld d, $60
+ call Sine
+ ld a, h
+ sub $60
+ ld hl, OBJECT_SPRITE_Y_OFFSET
+ add hl, bc
+ ld [hl], a
+ ld hl, OBJECT_STEP_DURATION
+ add hl, bc
+ dec [hl]
+ ret nz
+ call Function47a2
+; fallthrough
+; 4ceb
+
+Function4ceb: ; 4ceb
+ ld hl, OBJECT_STEP_DURATION
+ add hl, bc
+ ld [hl], $10
+ call Function47a2
+ ret
+; 4cf5
+
+Function4cf5: ; 4cf5
+ ld hl, OBJECT_11
+ add hl, bc
+ ld [hl], $4
+ ld hl, OBJECT_STEP_DURATION
+ add hl, bc
+ dec [hl]
+ ret nz
+; 4d01
+
+Function4d01: ; 4d01
+ ld hl, OBJECT_12
+ add hl, bc
+ ld [hl], $0
+ ld hl, OBJECT_SPRITE_Y_OFFSET
+ add hl, bc
+ ld [hl], $0
+ ld hl, OBJECT_09
+ add hl, bc
+ ld [hl], $1
+ ret
+; 4d14
+
+Function4d14: ; 4d14
+ call Function47a8
+ dw Function4d1f
+ dw Function4d2e
+ dw Function4d4f
+ dw Function4d6b
+; 4d1f
+
+Function4d1f: ; 4d1f
+ ld hl, OBJECT_11
+ add hl, bc
+ ld [hl], $0
+ ld hl, OBJECT_STEP_DURATION
+ add hl, bc
+ ld [hl], $10
+ call Function47a2
+; fallthrough
+; 4d2e
+
+Function4d2e: ; 4d2e
+ ld hl, OBJECT_STEP_DURATION
+ add hl, bc
+ dec [hl]
+ ret nz
+ ld hl, OBJECT_11
+ add hl, bc
+ ld [hl], $2
+ ld hl, OBJECT_12
+ add hl, bc
+ ld [hl], $0
+ ld hl, OBJECT_31
+ add hl, bc
+ ld [hl], $0
+ ld hl, OBJECT_STEP_DURATION
+ add hl, bc
+ ld [hl], $10
+ call Function47a2
+; fallthrough
+; 4d4f
+
+Function4d4f: ; 4d4f
+ ld hl, OBJECT_31
+ add hl, bc
+ inc [hl]
+ ld a, [hl]
+ ld d, $60
+ call Sine
+ ld a, h
+ sub $60
+ ld hl, OBJECT_SPRITE_Y_OFFSET
+ add hl, bc
+ ld [hl], a
+ ld hl, OBJECT_STEP_DURATION
+ add hl, bc
+ dec [hl]
+ ret nz
+ call Function47a2
+; fallthrough
+; 4d6b
+
+Function4d6b: ; 4d6b
+ ld hl, OBJECT_12
+ add hl, bc
+ ld [hl], $0
+ ld hl, OBJECT_SPRITE_Y_OFFSET
+ add hl, bc
+ ld [hl], $0
+ ld hl, OBJECT_09
+ add hl, bc
+ ld [hl], $1
+ ret
+; 4d7e
+
+Function4d7e: ; 4d7e
+ call Function47a8
+ dw Function4d85
+ dw Function4d94
+; 4d85
+
+Function4d85: ; 4d85
+ ld hl, OBJECT_STEP_DURATION
+ add hl, bc
+ ld [hl], $8
+ ld hl, OBJECT_SPRITE_Y_OFFSET
+ add hl, bc
+ ld [hl], $0
+ call Function47a2
+ ; fallthrough
+; 4d94
+
+Function4d94: ; 4d94
+ ld hl, OBJECT_SPRITE_Y_OFFSET
+ add hl, bc
+ ld a, [hl]
+ xor 1
+ ld [hl], a
+ ld hl, OBJECT_STEP_DURATION
+ add hl, bc
+ dec [hl]
+ ret nz
+ ld hl, OBJECT_SPRITE_Y_OFFSET
+ add hl, bc
+ ld [hl], $0
+ ld hl, OBJECT_09
+ add hl, bc
+ ld [hl], $1
+ ret
+; 4daf
+
+Function4daf: ; 4daf
+ call Function4db5
+ jp Function4b79
+; 4db5
+
+Function4db5: ; 4db5
+ ld hl, OBJECT_STEP_DURATION
+ add hl, bc
+ ld a, [hl]
+ and $1
+ ld a, $1
+ jr z, .asm_4dc2
+ ld a, $0
+
+.asm_4dc2
+ ld hl, OBJECT_11
+ add hl, bc
+ ld [hl], a
+ ret
+; 4dc8
+
+Function4dc8: ; 4dc8
+ ld hl, OBJECT_STEP_DURATION
+ add hl, bc
+ ld a, [hl]
+ and $1
+ ld a, $4
+ jr z, .asm_4dd5
+ ld a, $5
+
+.asm_4dd5
+ ld hl, OBJECT_11
+ add hl, bc
+ ld [hl], a
+ jp Function4b79
+; 4ddd
+
+Function4ddd: ; 4ddd
+ ld hl, OBJECT_07
+ add hl, bc
+ ld [hl], $ff
+ ld hl, OBJECT_STEP_DURATION
+ add hl, bc
+ dec [hl]
+ ret nz
+ ld hl, OBJECT_09
+ add hl, bc
+ ld [hl], $1
+ ret
+; 4df0
+
+Function4df0: ; 4df0
+ ld hl, OBJECT_07
+ add hl, bc
+ ld [hl], $ff
+ ld hl, OBJECT_STEP_DURATION
+ add hl, bc
+ dec [hl]
+ ret nz
+ jp Function4357
+; 4dff
+
+Function4dff: ; 4dff
+ ld hl, OBJECT_STEP_DURATION
+ add hl, bc
+ dec [hl]
+ ret nz
+ ld hl, OBJECT_09
+ add hl, bc
+ ld [hl], $1
+ ret
+; 4e0c
+
+Function4e0c: ; 4e0c
+ call Function47a8
+ dw Function4e13
+ dw Function4e21
+; 4e13
+
+Function4e13: ; 4e13
+ call Function4769
+ call Function1a47
+ ld hl, OBJECT_08
+ add hl, bc
+ ld [hl], a
+ call Function47a2
+ ; fallthrough
+; 4e21
+
+Function4e21: ; 4e21
+ call Function4fb2
+ ld hl, OBJECT_07
+ add hl, bc
+ ld [hl], $ff
+ ret
+; 4e2b
+
+Function4e2b: ; 4e2b
+ call Function4fb2
+ call Function46d7
+ ld hl, OBJECT_STEP_DURATION
+ add hl, bc
+ dec [hl]
+ ret nz
+ call Function4600
+ ld hl, OBJECT_07
+ add hl, bc
+ ld [hl], $ff
+ ld hl, OBJECT_09
+ add hl, bc
+ ld [hl], $1
+ ret
+; 4e47
+
+Function4e47: ; 4e47
+ call Function46d7
+ ld hl, OBJECT_STEP_DURATION
+ add hl, bc
+ dec [hl]
+ ret nz
+ call Function4600
+ jp Function4b1d
+; 4e56
+
+Function4e56: ; 4e56
+; AnimateStep?
+ call Function47a8
+ dw Function4e5d
+ dw Function4e65
+; 4e5d
+
+Function4e5d: ; 4e5d
+ ld hl, wd150
+ set 7, [hl]
+ call Function47a2
+ ; fallthrough
+; 4e65
+
+Function4e65: ; 4e65
+ call Function4738
+ ld hl, OBJECT_STEP_DURATION
+ add hl, bc
+ dec [hl]
+ ret nz
+ ld hl, wd150
+ set 6, [hl]
+ call Function4600
+ ld hl, OBJECT_07
+ add hl, bc
+ ld [hl], $ff
+ ld hl, OBJECT_09
+ add hl, bc
+ ld [hl], $1
+ ret
+; 4e83
+
+Function4e83: ; 4e83
+ call Function47a8
+ dw Function4e8e
+ dw Function4ea4
+ dw Function4ead
+ dw Function4ec0
+; 4e8e
+
+Function4e8e: ; 4e8e
+ ld hl, OBJECT_07
+ add hl, bc
+ ld [hl], $ff
+ ld hl, OBJECT_12
+ add hl, bc
+ ld a, [hl]
+ ld [hl], $2
+ ld hl, OBJECT_STEP_DURATION
+ add hl, bc
+ ld [hl], $2
+ call Function47a2
+ ; fallthrough
+; 4ea4
+
+Function4ea4: ; 4ea4
+ ld hl, OBJECT_STEP_DURATION
+ add hl, bc
+ dec [hl]
+ ret nz
+ call Function47a2
+ ; fallthrough
+; 4ead
+
+Function4ead: ; 4ead
+ ld hl, OBJECT_29
+ add hl, bc
+ ld a, [hl]
+ ld hl, OBJECT_08
+ add hl, bc
+ ld [hl], a
+ ld hl, OBJECT_STEP_DURATION
+ add hl, bc
+ ld [hl], $2
+ call Function47a2
+ ; fallthrough
+; 4ec0
+
+Function4ec0: ; 4ec0
+ ld hl, OBJECT_STEP_DURATION
+ add hl, bc
+ dec [hl]
+ ret nz
+ ld hl, OBJECT_09
+ add hl, bc
+ ld [hl], $1
+ ret
+; 4ecd
+
+Function4ecd: ; 4ecd
+ call Function46d7
+ ld hl, OBJECT_STEP_DURATION
+ add hl, bc
+ dec [hl]
+ ret nz
+ push bc
+ ld hl, OBJECT_MAP_X
+ add hl, bc
+ ld d, [hl]
+ ld hl, OBJECT_MAP_Y
+ add hl, bc
+ ld e, [hl]
+ ld hl, OBJECT_01
+ add hl, bc
+ ld a, [hl]
+ ld b, a
+ callba Function807e
+ pop bc
+ ld hl, OBJECT_FLAGS
+ add hl, bc
+ res 2, [hl]
+ call Function4600
+ ld hl, OBJECT_07
+ add hl, bc
+ ld [hl], $ff
+ ld hl, OBJECT_09
+ add hl, bc
+ ld [hl], $1
+ ret
+; 4f04
+
+Function4f04: ; 4f04
+ ld hl, OBJECT_29
+ add hl, bc
+ ld e, [hl]
+ inc hl
+ ld d, [hl]
+ ld hl, OBJECT_00
+ add hl, de
+ ld a, [hl]
+ and a
+ jr z, .asm_4f30
+ ld hl, OBJECT_SPRITE_X
+ add hl, de
+ ld a, [hl]
+ ld hl, OBJECT_SPRITE_X
+ add hl, bc
+ ld [hl], a
+ ld hl, OBJECT_SPRITE_Y
+ add hl, de
+ ld a, [hl]
+ ld hl, OBJECT_SPRITE_Y
+ add hl, bc
+ ld [hl], a
+ ld hl, OBJECT_STEP_DURATION
+ add hl, bc
+ ld a, [hl]
+ and a
+ ret z
+ dec [hl]
+ ret nz
+
+.asm_4f30
+ jp Function4357
+; 4f33
+
+Function4f33: ; 4f33
+ call Function47a8
+ dw Function4f3a
+ dw Function4f43
+; 4f3a
+
+Function4f3a: ; 4f3a
+ xor a
+ ld hl, OBJECT_29
+ add hl, bc
+ ld [hl], a
+ call Function47a2
+ ; fallthrough
+; 4f43
+
+Function4f43: ; 4f43
+ ld hl, OBJECT_29
+ add hl, bc
+ ld d, [hl]
+ ld a, [wd14f]
+ sub d
+ ld [wd14f], a
+ ld hl, OBJECT_STEP_DURATION
+ add hl, bc
+ dec [hl]
+ jr z, .asm_4f68
+ ld a, [hl]
+ call Function4f6c
+ ld hl, OBJECT_29
+ add hl, bc
+ ld [hl], a
+ ld d, a
+ ld a, [wd14f]
+ add d
+ ld [wd14f], a
+ ret
+
+.asm_4f68
+ call Function4357
+ ret
+; 4f6c
+
+Function4f6c: ; 4f6c
+ ld hl, OBJECT_30
+ add hl, bc
+ and 1
+ ld a, [hl]
+ ret z
+ cpl
+ inc a
+ ret
+; 4f77
+
+Function4f77: ; 4f77
+ call Function47a8 ; ????
+; 4f7a
+
+Function4f7a: ; 4f7a
+ call Function47a8
+ dw Function4f83
+ dw Function4f83
+ dw Function4f83
+; 4f83
+
+Function4f83: ; 4f83
+ call Function47a8
+ dw Function4f8a
+ dw Function4f99
+; 4f8a
+
+Function4f8a: ; 4f8a
+ ld hl, OBJECT_11
+ add hl, bc
+ ld [hl], $10
+ ld hl, OBJECT_STEP_DURATION
+ add hl, bc
+ ld [hl], $10
+ call Function47a2
+; 4f99
+
+Function4f99: ; 4f99
+ ld hl, OBJECT_STEP_DURATION
+ add hl, bc
+ dec [hl]
+ ret nz
+ ld hl, OBJECT_SPRITE_Y_OFFSET
+ add hl, bc
+ ld [hl], $60
+ ld hl, OBJECT_12
+ add hl, bc
+ ld [hl], $0
+ ld hl, OBJECT_09
+ add hl, bc
+ ld [hl], $1
+ ret
+; 4fb2
+
+Function4fb2: ; 4fb2
+ ret
+; 4fb3
+
+Function4fb3: ; 4fb3
+ ld hl, OBJECT_29
+ add hl, bc
+ inc [hl]
+ ld a, [hl]
+ srl a
+ srl a
+ and 7
+ ld l, a
+ ld h, 0
+ ld de, .y
+ add hl, de
+ ld a, [hl]
+ ld hl, OBJECT_SPRITE_Y_OFFSET
+ add hl, bc
+ ld [hl], a
+ ret
+; 4fcd
+
+.y ; 4fcd
+ db 0, -1, -2, -3, -4, -3, -2, -1
+; 4fd5
+
+UpdateJumpPosition: ; 4fd5
+ call GetStepVector
+ ld a, h
+ ld hl, OBJECT_31
+ add hl, bc
+ ld e, [hl]
+ add e
+ ld [hl], a
+ nop
+ srl e
+ ld d, 0
+ ld hl, .y
+ add hl, de
+ ld a, [hl]
+ ld hl, OBJECT_SPRITE_Y_OFFSET
+ add hl, bc
+ ld [hl], a
+ ret
+; 4ff0
+
+.y ; 4ff0
+ db -4, -6, -8, -10, -11, -12, -12, -12
+ db -11, -10, -9, -8, -6, -4, 0, 0
+; 5000
+
+Function5000: ; 5000
+ ld a, [wc2de]
+ ld hl, wc2df
+ ld [hl], a
+ ld a, $3e
+ ld [wc2de], a
+ ld a, [hl]
+ ret
+; 500e
+
+Function500e: ; 500e
+ ld hl, wc2e3
+ call Function1aae
+ ret
+; 5015
+
+Function5015: ; 5015
+ ld hl, OBJECT_27
+ add hl, bc
+ ld e, [hl]
+ inc [hl]
+ ld d, 0
+ ld hl, wc2e2
+ ld a, [hli]
+ ld h, [hl]
+ ld l, a
+ add hl, de
+ ld a, [hl]
+ ret
+; 5026
+
+Function5026: ; 5026
+ ld hl, OBJECT_27
+ add hl, bc
+ ld e, [hl]
+ inc [hl]
+ ld d, 0
+ ld hl, wc2e6
+ ld a, [hli]
+ ld h, [hl]
+ ld l, a
+ add hl, de
+ ld a, [hl]
+ ret
+; 5037
+
+Function5037: ; 5037
+ ld hl, Function503d
+ jp Function5041
+; 503d
+
+Function503d: ; 503d
+ ld a, [wc2e2]
+ ret
+; 5041
+
+Function5041: ; 5041
+ call Function5055
+.asm_5044
+ xor a
+ ld [wc2ea], a
+ call Function505e
+ call Function506b
+ ld a, [wc2ea]
+ and a
+ jr nz, .asm_5044
+ ret
+; 5055
+
+Function5055: ; 5055
+ ld a, l
+ ld [wc2eb], a
+ ld a, h
+ ld [wc2ec], a
+ ret
+; 505e
+
+Function505e: ; 505e
+ ld hl, wc2eb
+ ld a, [hli]
+ ld h, [hl]
+ ld l, a
+ jp [hl]
+; 5065
+
+Function5065: ; 5065
+ ld a, $1
+ ld [wc2ea], a
+ ret
+; 506b
+
+Function506b: ; 506b
+ push af
+ call Function54b8
+ pop af
+ ld hl, MovementPointers
+ rst JumpTable
+ ret
+; 5075
+
+
+; 5075
+INCLUDE "engine/movement.asm"
+; 54b8
+
+
+Function54b8: ; 54b8
+ ld e, a
+ ld a, [wd4ce]
+ cp $ff
+ ret z
+ ld a, [wd4cd]
+ ld d, a
+ ld a, [$ffaf]
+ cp d
+ ret nz
+ ld a, e
+ cp $3e
+ ret z
+ cp $47
+ ret z
+ cp $4b
+ ret z
+ cp $50
+ ret z
+ cp $8
+ ret c
+ push af
+ ld hl, wd4d0
+ inc [hl]
+ ld e, [hl]
+ ld d, 0
+ ld hl, wd4d1
+ add hl, de
+ pop af
+ ld [hl], a
+ ret
+; 54e6
+
+Function54e6: ; 54e6
+ ld hl, wd4d0
+ ld a, [hl]
+ and a
+ jr z, .asm_5503
+ cp $ff
+ jr z, .asm_5503
+ dec [hl]
+ ld e, a
+ ld d, 0
+ ld hl, wd4d1
+ add hl, de
+ inc e
+ ld a, $ff
+.asm_54fc
+ ld d, [hl]
+ ld [hld], a
+ ld a, d
+ dec e
+ jr nz, .asm_54fc
+ ret
+
+.asm_5503
+ call Function550a
+ ret c
+ ld a, $3e
+ ret
+; 550a
+
+Function550a: ; 550a
+ ld a, [wd4cd]
+ cp $ff
+ jr z, .asm_5520
+ push bc
+ call Function1ae5
+ ld hl, OBJECT_00
+ add hl, bc
+ ld a, [hl]
+ pop bc
+ and a
+ jr z, .asm_5520
+ and a
+ ret
+
+.asm_5520
+ ld a, $ff
+ ld [wd4ce], a
+ ld a, $47
+ scf
+ ret
+; 5529
+
+Function5529: ; 5529
+ push bc
+ ld de, .data_5535
+ call Function55b9
+ call Function55ac
+ pop bc
+ ret
+
+.data_5535
+ db $00, $05, $1b
+; 5538
+
+Function5538: ; 5538
+ push bc
+ ld de, .data_5544
+ call Function55b9
+ call Function55ac
+ pop bc
+ ret
+
+.data_5544
+ db $00, $05, $22
+; 5547
+
+Function5547: ; 5547
+ push bc
+ ld de, .data_5553
+ call Function55b9
+ call Function55ac
+ pop bc
+ ret
+
+.data_5553
+ db $00, $05, $1c
+; 5556
+
+Function5556: ; 5556
+ push bc
+ ld de, .data_5562
+ call Function55b9
+ call Function55ac
+ pop bc
+ ret
+
+.data_5562
+ db $00, $06, $23
+; 5565
+
+Function5565: ; 5565
+ push bc
+ push af
+ ld de, .data_5576
+ call Function55b9
+ pop af
+ ld [wc2f5], a
+ call Function55ac
+ pop bc
+ ret
+
+.data_5576
+ db $00, $05, $1d
+; 5579
+
+Function5579: ; 5579
+ push bc
+ ld a, [$ffaf]
+ ld c, a
+ call Function5582
+ pop bc
+ ret
+; 5582
+
+Function5582: ; 5582
+ ld de, ObjectStructs
+ ld a, $d
+.asm_5587
+ push af
+ ld hl, OBJECT_04
+ add hl, de
+ bit 7, [hl]
+ jr z, .asm_55a1
+ ld hl, OBJECT_00
+ add hl, de
+ ld a, [hl]
+ and a
+ jr z, .asm_55a1
+ push bc
+ xor a
+ ld bc, ObjectStruct2 - ObjectStruct1
+ call ByteFill
+ pop bc
+
+.asm_55a1
+ ld hl, ObjectStruct2 - ObjectStruct1
+ add hl, de
+ ld d, h
+ ld e, l
+ pop af
+ dec a
+ jr nz, .asm_5587
+ ret
+; 55ac
+
+Function55ac: ; 55ac
+ call Function1a13
+ ret nc
+ ld d, h
+ ld e, l
+ callba Function8286
+ ret
+; 55b9
+
+Function55b9: ; 55b9
+ ld hl, wc2f0
+ ld [hl], $ff
+ inc hl
+ ld [hl], $ff
+ inc hl
+ ld a, [de]
+ inc de
+ ld [hli], a
+ ld a, [de]
+ inc de
+ ld [hli], a
+ ld a, [de]
+ ld [hli], a
+ ld a, [$ffaf]
+ ld [hli], a
+ push hl
+ ld hl, OBJECT_MAP_X
+ add hl, bc
+ ld d, [hl]
+ ld hl, OBJECT_MAP_Y
+ add hl, bc
+ ld e, [hl]
+ pop hl
+ ld [hl], d
+ inc hl
+ ld [hl], e
+ inc hl
+ ld [hl], $ff
+ ret
+; 55e0
+
+Function55e0:: ; 55e0
+ ld a, [VramState]
+ bit 0, a
+ ret z
+ ld bc, ObjectStructs
+ xor a
+.asm_55ea
+ ld [$ffaf], a
+ call Function1af1
+ jr z, .asm_55f4
+ call Function565c
+
+.asm_55f4
+ ld hl, ObjectStruct2 - ObjectStruct1
+ add hl, bc
+ ld b, h
+ ld c, l
+ ld a, [$ffaf]
+ inc a
+ cp $d
+ jr nz, .asm_55ea
+ ret
+; 5602
+
+Function5602: ; 5602
+ call Function5645
+ ld a, $0
+ call Function5629
+ ld a, [wd459]
+ bit 7, a
+ jr z, .asm_5619
+ ld a, [$ffe0]
+ and a
+ jr z, .asm_5619
+ call Function5629
+
+.asm_5619
+ call Function5920
+ ret
+; 561d
+
+Function561d: ; 561d
+ call Function5645
+ ld a, $0
+ call Function5629
+ call Function5920
+ ret
+; 5629
+
+Function5629: ; 5629
+ cp $10
+ ret nc
+ call GetMapObject
+ ld hl, $0000
+ add hl, bc
+ ld a, [hl]
+ cp $ff
+ ret z
+ cp $d
+ ret nc
+ call Function1ae5
+ call Function1af1
+ ret z
+ call Function5673
+ ret
+; 5645
+
+Function5645: ; 5645
+ xor a
+ ld bc, ObjectStructs
+.asm_5649
+ ld [$ffaf], a
+ call Function5680
+ ld hl, ObjectStruct2 - ObjectStruct1
+ add hl, bc
+ ld b, h
+ ld c, l
+ ld a, [$ffaf]
+ inc a
+ cp $d
+ jr nz, .asm_5649
+ ret
+; 565c
+
+Function565c: ; 565c
+ push bc
+ call Function56cd
+ pop bc
+ jr c, Function5680
+ call Function56a3
+ jr c, Function5680
+ call Function5688
+ callba Function4440
+ xor a
+ ret
+; 5673
+
+Function5673: ; 5673
+ call Function56a3
+ jr c, Function5680
+ callba Function4440
+ xor a
+ ret
+; 5680
+
+Function5680: ; 5680
+ ld hl, OBJECT_FACING
+ add hl, bc
+ ld [hl], $ff
+ scf
+ ret
+; 5688
+
+Function5688: ; 5688
+ push bc
+ ld hl, OBJECT_MAP_X
+ add hl, bc
+ ld d, [hl]
+ ld hl, OBJECT_MAP_Y
+ add hl, bc
+ ld e, [hl]
+ call Function2a3c
+ pop bc
+ ld hl, OBJECT_STANDING_TILE
+ add hl, bc
+ ld [hl], a
+ callba Function463f
+ ret
+; 56a3
+
+Function56a3: ; 56a3
+ ld hl, OBJECT_MAP_X
+ add hl, bc
+ ld d, [hl]
+ ld hl, OBJECT_MAP_Y
+ add hl, bc
+ ld e, [hl]
+ inc d
+ inc e
+ ld a, [XCoord]
+ cp d
+ jr z, .asm_56bc
+ jr nc, .asm_56cb
+ add $b
+ cp d
+ jr c, .asm_56cb
+
+.asm_56bc
+ ld a, [YCoord]
+ cp e
+ jr z, .asm_56c9
+ jr nc, .asm_56cb
+ add $a
+ cp e
+ jr c, .asm_56cb
+
+.asm_56c9
+ xor a
+ ret
+
+.asm_56cb
+ scf
+ ret
+; 56cd
+
+Function56cd: ; 56cd
+ ld a, [wd14c]
+ ld d, a
+ ld hl, OBJECT_SPRITE_X_OFFSET
+ add hl, bc
+ ld a, [hl]
+ ld hl, OBJECT_SPRITE_X
+ add hl, bc
+ add [hl]
+ add d
+ cp $f0
+ jr nc, .asm_56e5
+ cp $a0
+ jp nc, .asm_5768
+
+.asm_56e5
+ and $7
+ ld d, $2
+ cp $4
+ jr c, .asm_56ef
+ ld d, $3
+
+.asm_56ef
+ ld a, [hl]
+ srl a
+ srl a
+ srl a
+ cp $14
+ jr c, .asm_56fc
+ sub $20
+
+.asm_56fc
+ ld [$ffbd], a
+ ld a, [wd14d]
+ ld e, a
+ ld hl, OBJECT_SPRITE_Y_OFFSET
+ add hl, bc
+ ld a, [hl]
+ ld hl, OBJECT_SPRITE_Y
+ add hl, bc
+ add [hl]
+ add e
+ cp $f0
+ jr nc, .asm_5715
+ cp $90
+ jr nc, .asm_5768
+
+.asm_5715
+ and $7
+ ld e, $2
+ cp $4
+ jr c, .asm_571f
+ ld e, $3
+
+.asm_571f
+ ld a, [hl]
+ srl a
+ srl a
+ srl a
+ cp $12
+ jr c, .asm_572c
+ sub $20
+
+.asm_572c
+ ld [$ffbe], a
+ ld hl, OBJECT_PALETTE
+ add hl, bc
+ bit 7, [hl]
+ jr z, .asm_573e
+ ld a, d
+ add $2
+ ld d, a
+ ld a, e
+ add $2
+ ld e, a
+
+.asm_573e
+ ld a, d
+ ld [$ffbf], a
+.asm_5741
+ ld a, [$ffbf]
+ ld d, a
+ ld a, [$ffbe]
+ add e
+ dec a
+ cp $12
+ jr nc, .asm_5763
+ ld b, a
+.asm_574d
+ ld a, [$ffbd]
+ add d
+ dec a
+ cp $14
+ jr nc, .asm_5760
+ ld c, a
+ push bc
+ call GetTileCoord
+ pop bc
+ ld a, [hl]
+ cp $60
+ jr nc, .asm_5768
+
+.asm_5760
+ dec d
+ jr nz, .asm_574d
+
+.asm_5763
+ dec e
+ jr nz, .asm_5741
+ and a
+ ret
+
+.asm_5768
+ scf
+ ret
+; 576a
+
+Function576a:: ; 576a
+ call Function5771
+ call Function5781
+ ret
+; 5771
+
+Function5771: ; 5771
+ xor a
+ ld [wd14e], a
+ ld [wd14f], a
+ ld [wd150], a
+ ld a, $ff
+ ld [wd151], a
+ ret
+; 5781
+
+Function5781: ; 5781
+ ld bc, ObjectStructs
+ xor a
+.asm_5785
+ ld [$ffaf], a
+ call Function1af1
+ jr z, .asm_578f
+ call Function437b
+
+.asm_578f
+ ld hl, ObjectStruct2 - ObjectStruct1
+ add hl, bc
+ ld b, h
+ ld c, l
+ ld a, [$ffaf]
+ inc a
+ cp $d
+ jr nz, .asm_5785
+ ret
+; 579d
+
+Function579d: ; 579d
+ ld a, $3e
+ ld [wc2de], a
+ ld [wc2df], a
+ xor a
+ ld [wd04e], a
+ ld [wd4e2], a
+ call Function57bc
+ callba Function149c6
+ call c, Function57d9
+ call Function57ca
+ ret
+; 57bc
+
+Function57bc: ; 57bc
+ ld hl, wd45b
+ bit 7, [hl]
+ jr nz, .asm_57c4
+ ret
+
+.asm_57c4
+ ld a, $0
+ ld [PlayerAction], a
+ ret
+; 57ca
+
+Function57ca: ; 57ca
+ ld hl, wd45b
+ bit 5, [hl]
+ ret z
+ ld a, [wd45b]
+ and $3
+ add a
+ add a
+ jr Function57db
+; 57d9
+
+Function57d9: ; 57d9
+ ld a, $0
+ ; fallthrough
+; 57db
+
+Function57db: ; 57db
+ ld bc, PlayerStruct
+ call Function1af8
+ ret
+; 57e2
+
+Function57e2: ; 57e2
+ ld a, d
+ and $80
+ ret z
+ ld bc, $0000 ; debug?
+ ld hl, OBJECT_08
+ add hl, bc
+ ld a, [hl]
+ or d
+ ld [hl], a
+ ld a, d
+ swap a
+ and $7
+ ld d, a
+ ld bc, PlayerStruct
+ ld hl, OBJECT_PALETTE
+ add hl, bc
+ ld a, [hl]
+ and $f8
+ or d
+ ld [hl], a
+ ret
+; 5803
+
+Function5803:: ; 5803
+ push bc
+ ld a, b
+ call Function5815
+ pop bc
+ ret c
+ ld a, c
+ call Function582c
+ callba Function848a
+ ret
+; 5815
+
+Function5815: ; 5815
+ call Function18de
+ ret c
+ ld a, [$ffb0]
+ ld [wd4cd], a
+ ret
+; 581f
+
+Function581f:: ; 581f
+ call Function5826
+ call Function5847
+ ret
+; 5826
+
+Function5826: ; 5826
+ ld a, $ff
+ ld [wd4cd], a
+ ret
+; 582c
+
+Function582c: ; 582c
+ push af
+ call Function5847
+ pop af
+ call Function18de
+ ret c
+ ld hl, OBJECT_03
+ add hl, bc
+ ld [hl], $13
+ ld hl, OBJECT_09
+ add hl, bc
+ ld [hl], $0
+ ld a, [$ffb0]
+ ld [wd4ce], a
+ ret
+; 5847
+
+Function5847: ; 5847
+ ld a, [wd4ce]
+ cp $ff
+ ret z
+ call Function1ae5
+ callba Function58e3
+ ld a, $ff
+ ld [wd4ce], a
+ ret
+; 585c
+
+Function585c:: ; 585c
+ ld a, c
+ call Function18de
+ ret c
+ push bc
+ call Function587a
+ pop bc
+ ld hl, OBJECT_FLAGS
+ add hl, bc
+ res 5, [hl]
+ xor a
+ ret
+; 586e
+
+Function586e: ; 586e
+ call Function18de
+ ret c
+ ld hl, OBJECT_FLAGS
+ add hl, bc
+ set 5, [hl]
+ xor a
+ ret
+; 587a
+
+Function587a: ; 587a
+ ld bc, ObjectStructs
+ xor a
+.asm_587e
+ push af
+ call Function1af1
+ jr z, .asm_588a
+ ld hl, OBJECT_FLAGS
+ add hl, bc
+ set 5, [hl]
+
+.asm_588a
+ ld hl, ObjectStruct2 - ObjectStruct1
+ add hl, bc
+ ld b, h
+ ld c, l
+ pop af
+ inc a
+ cp $d
+ jr nz, .asm_587e
+ ret
+; 5897
+
+Function5897:: ; 5897
+ ld a, [wd4cd]
+ cp $ff
+ ret z
+ push bc
+ call Function1ae5
+ ld hl, OBJECT_01
+ add hl, bc
+ ld a, [hl]
+ pop bc
+ cp c
+ ret nz
+ ld a, [wd4ce]
+ cp $ff
+ ret z
+ call Function1ae5
+ ld hl, OBJECT_FLAGS
+ add hl, bc
+ res 5, [hl]
+ ret
+; 58b9
+
+Function58b9:: ; 58b9
+ push bc
+ ld bc, ObjectStructs
+ xor a
+.asm_58be
+ push af
+ call Function1af1
+ jr z, .asm_58ca
+ ld hl, OBJECT_FLAGS
+ add hl, bc
+ res 5, [hl]
+
+.asm_58ca
+ ld hl, ObjectStruct2 - ObjectStruct1
+ add hl, bc
+ ld b, h
+ ld c, l
+ pop af
+ inc a
+ cp $d
+ jr nz, .asm_58be
+ pop bc
+ ret
+; 58d8
+
+Function58d8: ; 58d8
+ call Function18de
+ ret c
+ ld hl, OBJECT_FLAGS
+ add hl, bc
+ res 5, [hl]
+ ret
+; 58e3
+
+Function58e3: ; 58e3
+ ld hl, OBJECT_01
+ add hl, bc
+ ld a, [hl]
+ cp $ff
+ jp z, Function5903
+ push bc
+ call GetMapObject
+ ld hl, $0004
+ add hl, bc
+ ld a, [hl]
+ pop bc
+ ld hl, OBJECT_03
+ add hl, bc
+ ld [hl], a
+ ld hl, OBJECT_09
+ add hl, bc
+ ld [hl], $0
+ ret
+; 5903
+
+Function5903: ; 5903
+ call GetSpriteDirection
+ rrca
+ rrca
+ ld e, a
+ ld d, 0
+ ld hl, .data_591c
+ add hl, de
+ ld a, [hl]
+ ld hl, OBJECT_03
+ add hl, bc
+ ld [hl], a
+ ld hl, OBJECT_09
+ add hl, bc
+ ld [hl], $0
+ ret
+
+.data_591c
+ db 6, 7, 8, 9
+; 5920
+
+Function5920:: ; 5920
+ ld a, [VramState]
+ bit 0, a
+ ret z
+ xor a
+ ld [$ffbd], a
+ ld a, [hOAMUpdate]
+ push af
+ ld a, $1
+ ld [hOAMUpdate], a
+ call Function5991
+ call Function593a
+ pop af
+ ld [hOAMUpdate], a
+ ret
+; 593a
+
+Function593a: ; 593a
+ ld a, [VramState]
+ bit 1, a
+ ld b, $a0
+ jr z, .asm_5945
+ ld b, $70
+
+.asm_5945
+ ld a, [$ffbd]
+ cp b
+ ret nc
+ ld l, a
+ ld h, $c4
+ ld de, OBJECT_04
+ ld a, b
+ ld c, $a0
+.asm_5952
+ ld [hl], c
+ add hl, de
+ cp l
+ jr nz, .asm_5952
+ ret
+; 5958
+
+Function5958: ; 5958
+ push hl
+ push de
+ push bc
+ ld a, [wd14c]
+ ld d, a
+ ld a, [wd14d]
+ ld e, a
+ ld bc, ObjectStructs
+ ld a, $d
+
+.asm_5968
+ push af
+ call Function1af1
+ jr z, .asm_597c
+
+ ld hl, OBJECT_SPRITE_X
+ add hl, bc
+ ld a, [hl]
+ add d
+ ld [hl], a
+
+ ld hl, OBJECT_SPRITE_Y
+ add hl, bc
+ ld a, [hl]
+ add e
+ ld [hl], a
+
+.asm_597c
+ ld hl, ObjectStruct2 - ObjectStruct1
+ add hl, bc
+ ld b, h
+ ld c, l
+ pop af
+ dec a
+ jr nz, .asm_5968
+
+ xor a
+ ld [wd14c], a
+ ld [wd14d], a
+ pop bc
+ pop de
+ pop hl
+ ret
+; 5991
+
+Function5991: ; 5991
+ call Function59a4
+ ld c, $30
+ call Function59f3
+ ld c, $20
+ call Function59f3
+ ld c, $10
+ call Function59f3
+ ret
+; 59a4
+
+Function59a4: ; 59a4
+ xor a
+ ld hl, wc2eb
+ ld bc, 13
+ call ByteFill
+
+ ld d, 0
+ ld bc, ObjectStructs
+ ld hl, wc2eb
+.loop
+ push hl
+ call Function1af1
+ jr z, .skip
+
+ ld hl, OBJECT_FACING
+ add hl, bc
+ ld a, [hl]
+ cp -1
+ jr z, .skip
+
+; Define the sprite priority.
+ ld e, $10
+ ld hl, OBJECT_FLAGS
+ add hl, bc
+ bit 0, [hl]
+ jr nz, .add
+ ld e, $20
+ bit 1, [hl]
+ jr z, .add
+ ld e, $30
+ jr .add
+
+.skip
+ ld hl, ObjectStruct2 - ObjectStruct1
+ add hl, bc
+ ld b, h
+ ld c, l
+ pop hl
+ jr .next
+
+.add
+ ld hl, ObjectStruct2 - ObjectStruct1
+ add hl, bc
+ ld b, h
+ ld c, l
+ pop hl
+ ld a, d
+ or e
+ ld [hli], a
+
+.next
+ inc d
+ ld a, d
+ cp $d
+ jr nz, .loop
+ ret
+; 59f3
+
+Function59f3: ; 59f3
+ ld hl, wc2eb
+.next
+ ld a, [hli]
+ ld d, a
+ and $f0
+ ret z
+ cp c
+ jr nz, .next
+
+ push bc
+ push hl
+ ld a, d
+ and $f
+ call Function5ac2
+ call Function5a0d
+ pop hl
+ pop bc
+ jr .next
+; 5a0d
+
+Function5a0d: ; 5a0d
+ ld hl, OBJECT_SPRITE
+ add hl, bc
+ ld a, [hl]
+ and $7f
+ ld [$ffc1], a
+
+ xor a
+ bit 7, [hl]
+ jr nz, .asm_5a1d
+ or 8
+.asm_5a1d
+
+ ld hl, OBJECT_FLAGS
+ add hl, bc
+ ld e, [hl]
+ bit 7, e
+ jr z, .asm_5a28
+ or $80
+.asm_5a28
+
+ bit 4, e
+ jr z, .asm_5a2e
+ or $10
+.asm_5a2e
+
+ ld hl, OBJECT_PALETTE
+ add hl, bc
+ ld d, a
+ ld a, [hl]
+ and 7
+ or d
+ ld d, a
+
+ xor a
+ bit 3, e
+ jr z, .asm_5a3f
+ or $80
+.asm_5a3f
+ ld [$ffc2], a
+
+ ld hl, OBJECT_SPRITE_X
+ add hl, bc
+ ld a, [hl]
+
+ ld hl, OBJECT_SPRITE_X_OFFSET
+ add hl, bc
+ add [hl]
+
+ add 8
+
+ ld e, a
+ ld a, [wd14c]
+ add e
+ ld [$ffbf], a
+
+ ld hl, OBJECT_SPRITE_Y
+ add hl, bc
+ ld a, [hl]
+
+ ld hl, OBJECT_SPRITE_Y_OFFSET
+ add hl, bc
+ add [hl]
+
+ add 12
+
+ ld e, a
+ ld a, [wd14d]
+ add e
+ ld [$ffc0], a
+
+ ld hl, OBJECT_FACING
+ add hl, bc
+ ld a, [hl]
+ cp -1
+ jp z, .done
+ cp NUM_FACINGS
+ jp nc, .done
+
+ ld l, a
+ ld h, 0
+ add hl, hl
+ ld bc, Facings
+ add hl, bc
+ ld a, [hli]
+ ld h, [hl]
+ ld l, a
+
+ ld a, [$ffbd]
+ ld c, a
+ ld b, Sprites / $100
+ ld a, [hli]
+ ld [$ffbe], a
+ add c
+ cp SpritesEnd % $100
+ jr nc, .full
+
+.addsprite
+ ld a, [$ffc0]
+ add [hl]
+ inc hl
+
+ ld [bc], a
+ inc c
+
+ ld a, [$ffbf]
+ add [hl]
+ inc hl
+
+ ld [bc], a
+ inc c
+
+ ld e, [hl]
+ inc hl
+
+ ld a, [$ffc1]
+ bit 2, e
+ jr z, .asm_5aa3
+ xor a
+.asm_5aa3
+ add [hl]
+ inc hl
+
+ ld [bc], a
+ inc c
+
+ ld a, e
+ bit 1, a
+ jr z, .asm_5aaf
+ ld a, [$ffc2]
+ or e
+.asm_5aaf
+ and $f0
+ or d
+ ld [bc], a
+ inc c
+
+ ld a, [$ffbe]
+ dec a
+ ld [$ffbe], a
+ jr nz, .addsprite
+
+ ld a, c
+ ld [$ffbd], a
+
+.done
+ xor a
+ ret
+
+.full
+ scf
+ ret
+; 5ac2
+
+Function5ac2: ; 5ac2
+ ld c, a
+ ld b, 0
+ ld hl, .Addresses
+ add hl, bc
+ add hl, bc
+ ld c, [hl]
+ inc hl
+ ld b, [hl]
+ ret
+; 5ace
+
+.Addresses ; 5ace
+ dw PlayerStruct
+ dw ObjectStruct1
+ dw ObjectStruct2
+ dw ObjectStruct3
+ dw ObjectStruct4
+ dw ObjectStruct5
+ dw ObjectStruct6
+ dw ObjectStruct7
+ dw ObjectStruct8
+ dw ObjectStruct9
+ dw ObjectStruct10
+ dw ObjectStruct11
+ dw ObjectStruct12
+; 5ae8
+
diff --git a/engine/map_setup.asm b/engine/map_setup.asm
new file mode 100644
index 000000000..8c10954b3
--- /dev/null
+++ b/engine/map_setup.asm
@@ -0,0 +1,489 @@
+
+RunMapSetupScript:: ; 15363
+ ld a, [$ff9f]
+ and $f
+ dec a
+ ld c, a
+ ld b, 0
+ ld hl, MapSetupScripts
+ add hl, bc
+ add hl, bc
+ ld a, [hli]
+ ld h, [hl]
+ ld l, a
+ call ReadMapSetupScript
+ ret
+; 15377
+
+MapSetupScripts: ; 15377
+ dw MapSetupScript1
+ dw MapSetupScript2
+ dw MapSetupScript3
+ dw MapSetupScript4
+ dw MapSetupScript5
+ dw MapSetupScript6
+ dw MapSetupScript7
+ dw MapSetupScript8
+ dw MapSetupScript9
+ dw MapSetupScript10
+ dw MapSetupScript11
+ dw MapSetupScript12
+; 1538f
+
+
+; Command descriptions from Condensation water's scripting compendium.
+ const_def
+ const map_lcd_on ; 00 = Turn LCD on
+ const map_lcd_off ; 01 = Turn LCD off
+ const map_sound_off ; 02 = Turn speakers off
+ const map_music ; 03 = Music check for current map/ special check for bug catcher contest
+ const map_start_music ; 04 = Start map music anew
+ const map_fade_music ; 05 = Music check for current map / special check for Bug Contest/ music with FadeOut (old) and FadeIn
+ const map_fade ; 06 = Fade out music + screen
+ const map_bike_music ; 07 = If HIRO is on bike = bike music, else play map music
+ const map_music_force ; 08 = Play map music
+ const map_max_volume ; 09 = Turn music to highest volume
+ const map_load_blocks ; 0A = Write map data to MapRAM
+ const map_connection_blocks ; 0B = Compute map’s connection pars and write into MapRAM
+ const map_save_screen ; 0C = Write current part of map into temporary memory
+ const map_buffer_screen ; 0D = Write current part of map into read-from memory
+ const map_load_graphics ; 0E = Write tileset header to ram/ load tileset/ load sprite tiles/ load special tiles
+ const map_load_tileset_header ; 0F = Write tileset header to ram
+ const map_time_of_day ; 10 = Compute time of day/ Update screen
+ const map_palettes ; 11 = Load map palettes
+ const map_wildmons ; 12 = Load probabilities for wild Pokémon battles
+ const map_sprites ; 13 = Delete sprite data and draw new sprites
+ const map_change_callback ; 14 = Check 2nd script header for 05 and 03 callbacks
+ const map_start_callback ; 15 = Check 2nd script header for 03 callbacks
+ const map_load_objects ; 16 = Analyze people data anew and check 2nd script header for 02 callbacks
+ const map_load_spawn ; 17 = Writes arrival data for arrival by flying/Blackout from table 05:5319 to ram
+ const map_load_connection ; 18 = Writes arrival data for entering a map by connection to ram
+ const map_load_warp ; 19 = Write warp data to ram when entering warp
+ const map_attributes ; 1A = Load complete map data (primary, secondary, event, script headers)
+ const map_attributes_2 ; 1B = Same as 1A, but some settings aren’t loaded new from the rom, such as hide function of the people events
+ const map_clear_bg_palettes ; 1C = Fill palette data with FFFF (=white)
+ const map_fade_out_palettes ; 1D = All BG pallet color are converted to 0|0 (Pal0, Col0), all sprite colors to x|0 (FadeOut)
+ const map_fade_in_palettes ; 1E = Palette FadeIn
+ const map_anchor_screen ; 1F = Compute position of upper left-most block visible on screen
+ const map_warp_face ; 20 = Position computation when HIRO leaves a warp
+ const map_face_down ; 21 = Set HIRO’s facing to “down”
+ const map_spawn_coord ; 22 = Prepare HIRO data for arrival by flight
+ const map_player_coord ; 23 = Compute HIRO x/y data anew
+ const map_prolong_sprites ; 24 = Prolong old sprites before removing them
+ const map_delay_sprites ; 25 = Delay rendering new sprites
+ const map_update_roam ; 26 = Compute chances to meet Raikou, Entei or Suicune
+ const map_keep_roam ; 27 = Recover chances to meet Raikou, Entei or Suicune
+ const map_fade_out_music ; 28 = Temporarily stop music playing
+ const map_animations_on ; 29 = Activate animations
+ const map_animations_off ; 2A = Deactivate animations
+ const map_keep_palettes ; 2B = Recover all palettes
+ const map_text_scroll_off ; 2C = Turn off text scroll (for town name overlays)
+ const map_stop_script ; 2D = Deactivate code prolonging
+
+
+MapSetupScript4: ; 1538f
+ db map_prolong_sprites
+
+MapSetupScript12: ; 15390
+ db map_fade_out_palettes
+ db map_keep_roam
+
+MapSetupScript1: ; 15392
+ db map_lcd_off
+ db map_sound_off
+ db map_load_spawn
+ db map_attributes
+ db map_change_callback
+ db map_spawn_coord
+ db map_player_coord
+ db map_anchor_screen
+ db map_load_blocks
+ db map_buffer_screen
+ db map_load_graphics
+ db map_time_of_day
+ db map_load_objects
+ db map_lcd_on
+ db map_palettes
+ db map_face_down
+ db map_sprites
+ db map_bike_music
+ db map_max_volume
+ db map_fade_in_palettes
+ db map_animations_on
+ db map_wildmons
+ db -1
+
+MapSetupScript11: ; 153a9
+ db map_load_spawn
+ db map_attributes
+ db map_change_callback
+ db map_spawn_coord
+ db map_player_coord
+ db map_anchor_screen
+ db map_load_blocks
+ db map_buffer_screen
+ db map_lcd_off
+ db map_load_graphics
+ db map_time_of_day
+ db map_fade_out_music
+ db map_lcd_on
+ db map_load_objects
+ db map_palettes
+ db map_face_down
+ db map_sprites
+ db map_fade_music
+ db map_fade_in_palettes
+ db map_animations_on
+ db map_wildmons
+ db -1
+
+MapSetupScript7: ; 153bf
+ db map_animations_off
+ db map_load_connection
+ db map_attributes
+ db map_change_callback
+ db map_player_coord
+ db map_load_blocks
+ db map_load_tileset_header
+ db map_save_screen
+ db map_load_objects
+ db map_fade_music
+ db map_palettes
+ db map_stop_script
+ db map_keep_palettes
+ db map_wildmons
+ db map_update_roam
+ db map_animations_on
+ db -1
+
+MapSetupScript6: ; 153d0
+ db map_prolong_sprites
+
+MapSetupScript5: ; 153d1
+ db map_fade_out_palettes
+
+MapSetupScript9: ; 153d2
+ db map_load_warp
+ db map_attributes
+ db map_warp_face
+ db map_change_callback
+ db map_player_coord
+ db map_load_blocks
+ db map_buffer_screen
+ db map_lcd_off
+ db map_load_graphics
+ db map_time_of_day
+ db map_fade_out_music
+ db map_lcd_on
+ db map_load_objects
+ db map_palettes
+ db map_sprites
+ db map_fade_music
+ db map_fade_in_palettes
+ db map_animations_on
+ db map_wildmons
+ db map_update_roam
+ db -1
+
+MapSetupScript3: ; 153e7
+ db map_fade
+ db map_clear_bg_palettes
+ db map_lcd_off
+ db map_sound_off
+ db map_load_blocks
+ db map_connection_blocks
+ db map_load_graphics
+ db map_time_of_day
+ db map_lcd_on
+ db map_palettes
+ db map_sprites
+ db map_music_force
+ db map_fade_in_palettes
+ db map_animations_on
+ db map_wildmons
+ db -1
+
+MapSetupScript8: ; 153f7
+ db map_fade
+ db map_lcd_off
+ db map_sound_off
+ db map_change_callback
+ db map_load_blocks
+ db map_buffer_screen
+ db map_load_graphics
+ db map_time_of_day
+ db map_lcd_on
+ db map_palettes
+ db map_sprites
+ db map_bike_music
+ db map_fade_in_palettes
+ db map_animations_on
+ db map_wildmons
+ db map_text_scroll_off
+ db -1
+
+MapSetupScript2: ; 15408
+ db map_lcd_off
+ db map_sound_off
+ db map_attributes_2
+ db map_anchor_screen
+ db map_start_callback
+ db map_load_blocks
+ db map_connection_blocks
+ db map_buffer_screen
+ db map_load_graphics
+ db map_time_of_day
+ db map_lcd_on
+ db map_palettes
+ db map_sprites
+ db map_bike_music
+ db map_fade_in_palettes
+ db map_animations_on
+ db map_wildmons
+ db -1
+
+MapSetupScript10: ; 1541a
+ db map_load_blocks
+ db map_connection_blocks
+ db -1
+
+
+ReadMapSetupScript: ; 1541d
+.loop
+ ld a, [hli]
+ cp -1
+ ret z
+
+ push hl
+
+ ld c, a
+ ld b, 0
+ ld hl, MapSetupCommands
+ add hl, bc
+ add hl, bc
+ add hl, bc
+
+ ; bank
+ ld b, [hl]
+ inc hl
+
+ ; address
+ ld a, [hli]
+ ld h, [hl]
+ ld l, a
+
+ ; Bit 7 of the bank indicates a parameter.
+ ; This is left unused.
+ bit 7, b
+ jr z, .go
+
+ pop de
+ ld a, [de]
+ ld c, a
+ inc de
+ push de
+
+.go
+ ld a, b
+ and $7f
+ rst FarCall
+
+ pop hl
+ jr .loop
+; 15440
+
+MapSetupCommands: ; 15440
+ dbw BANK(EnableLCD), EnableLCD
+ dbw BANK(DisableLCD), DisableLCD
+ dbw BANK(SoundRestart), SoundRestart
+ dbw BANK(PlayMapMusic), PlayMapMusic
+ dbw BANK(RestartMapMusic), RestartMapMusic
+ dbw BANK(FadeToMapMusic), FadeToMapMusic
+ dbw BANK(Function15574), Function15574
+ dbw BANK(EnterMapMusic), EnterMapMusic
+ dbw BANK(Function15587), Function15587
+ dbw BANK(Function3cae), Function3cae
+ dbw BANK(Function24cd), Function24cd
+ dbw BANK(Function28e3), Function28e3
+ dbw BANK(Function289d), Function289d
+ dbw BANK(Function2879), Function2879
+ dbw BANK(Function1047cf), Function1047cf
+ dbw BANK(LoadTilesetHeader), LoadTilesetHeader
+ dbw BANK(Function104750), Function104750
+ dbw BANK(Function1047eb), Function1047eb
+ dbw BANK(Function29ff8), Function29ff8
+ dbw BANK(Function1047f0), Function1047f0
+ dbw BANK(Function1045b0), Function1045b0
+ dbw BANK(Function1045c4), Function1045c4
+ dbw BANK(Function154d7), Function154d7
+ dbw BANK(LoadSpawnPoint), LoadSpawnPoint
+ dbw BANK(EnterMapConnection), EnterMapConnection
+ dbw BANK(Function1046c6), Function1046c6
+ dbw BANK(Function2309), Function2309
+ dbw BANK(Function2317), Function2317
+ dbw BANK(WhiteBGMap), WhiteBGMap
+ dbw BANK(Function8c084), Function8c084
+ dbw BANK(Function8c079), Function8c079
+ dbw BANK(Function10486d), Function10486d
+ dbw BANK(Function248a), Function248a
+ dbw BANK(Function57d9), Function57d9
+ dbw BANK(Function8029), Function8029
+ dbw BANK(Function80b8), Function80b8
+ dbw BANK(Function154eb), Function154eb
+ dbw BANK(Function154f1), Function154f1
+ dbw BANK(Function2a30d), Function2a30d
+ dbw BANK(Function2a394), Function2a394
+ dbw BANK(Function15567), Function15567
+ dbw BANK(Function154cf), Function154cf
+ dbw BANK(Function154d3), Function154d3
+ dbw BANK(Function1556d), Function1556d
+ dbw BANK(Function154ca), Function154ca
+ dbw BANK(Functionb8000), Functionb8000
+; 154ca
+
+
+Function154ca: ; 154ca
+ xor a
+ ld [wc2d7], a
+ ret
+; 154cf
+
+Function154cf: ; 154cf
+ ld a, $1
+ ld [$ffde], a
+ ret
+; 154d3
+
+Function154d3: ; 154d3
+ xor a
+ ld [$ffde], a
+ ret
+; 154d7
+
+Function154d7: ; 154d7
+ ld a, $2
+ call Function263b
+ callba Function2454f
+ callba Function8177
+ ret
+; 154ea (5:54ea)
+
+Function154ea: ; 154ea
+ ret
+; 154eb
+
+Function154eb: ; 154eb
+ ld hl, wd45b
+ set 7, [hl]
+ ret
+; 154f1
+
+Function154f1: ; 154f1
+ ld hl, wd45b
+ set 6, [hl]
+ ret
+
+Function154f7: ; 154f7
+ nop
+ call Function1550c
+ jr c, .asm_15508
+ call Function1554e
+ jr c, .asm_15508
+ call Function1551a
+ jr c, .asm_15508
+ ret
+.asm_15508
+ call Functione4a
+ ret
+
+Function1550c: ; 1550c (5:550c)
+ and a
+ ld hl, BikeFlags
+ bit 1, [hl]
+ ret z
+ ld a, $1
+ ld [PlayerState], a
+ scf
+ ret
+
+Function1551a: ; 1551a (5:551a)
+ ld a, [PlayerState]
+ cp $0
+ jr z, .asm_1554c
+ cp $2
+ jr z, .asm_1554c
+ cp $4
+ jr z, .asm_15545
+ cp $8
+ jr z, .asm_15545
+ call GetMapPermission
+ cp $3
+ jr z, .asm_1553e
+ cp $5
+ jr z, .asm_1553e
+ cp $7
+ jr z, .asm_1553e
+ jr .asm_1554c
+.asm_1553e
+ ld a, [PlayerState]
+ cp $1
+ jr nz, .asm_1554c
+.asm_15545
+ ld a, $0
+ ld [PlayerState], a
+ scf
+ ret
+.asm_1554c
+ and a
+ ret
+
+Function1554e: ; 1554e (5:554e)
+ call Function1852
+ jr nz, .asm_15565
+ ld a, [PlayerState]
+ cp $4
+ jr z, .asm_15563
+ cp $8
+ jr z, .asm_15563
+ ld a, $4
+ ld [PlayerState], a
+.asm_15563
+ scf
+ ret
+.asm_15565
+ and a
+ ret
+; 15567
+
+Function15567: ; 15567
+ ld a, 6
+ call SkipMusic
+ ret
+; 1556d
+
+Function1556d: ; 1556d
+ callba _UpdateTimePals
+ ret
+
+Function15574: ; 15574
+ ld e, 0
+ ld a, [MusicFadeIDLo]
+ ld d, 0
+ ld a, [MusicFadeIDHi]
+ ld a, $4
+ ld [MusicFade], a
+ call Function4b6
+ ret
+; 15587
+
+Function15587: ; 15587
+ ld a, [PlayerState]
+ cp $1
+ jr nz, .asm_15596
+ call VolumeOff
+ ld a, $88
+ ld [MusicFade], a
+.asm_15596
+ call Function3d2f
+ ret
+; 1559a
diff --git a/engine/map_triggers.asm b/engine/map_triggers.asm
new file mode 100644
index 000000000..56d1433ca
--- /dev/null
+++ b/engine/map_triggers.asm
@@ -0,0 +1,91 @@
+MapTriggers:: ; 4d01e
+; Map triggers
+
+trigger_def: MACRO
+; db group, map
+; dw address
+ map \1
+ dw \2
+ENDM
+
+ trigger_def POKECENTER_2F, wPokecenter2FTrigger
+ trigger_def TRADE_CENTER, wTradeCenterTrigger
+ trigger_def COLOSSEUM, wColosseumTrigger
+ trigger_def TIME_CAPSULE, wTimeCapsuleTrigger
+ trigger_def POWER_PLANT, wPowerPlantTrigger
+ trigger_def CERULEAN_GYM, wCeruleanGymTrigger
+ trigger_def ROUTE_25, wRoute25Trigger
+ trigger_def TRAINER_HOUSE_B1F, wTrainerHouseB1FTrigger
+ trigger_def VICTORY_ROAD_GATE, wVictoryRoadGateTrigger
+ trigger_def SAFFRON_TRAIN_STATION, wSaffronTrainStationTrigger
+ trigger_def ROUTE_16_GATE, wRoute16GateTrigger
+ trigger_def ROUTE_17_18_GATE, wRoute1718GateTrigger
+ trigger_def INDIGO_PLATEAU_POKECENTER_1F, wIndigoPlateauPokecenter1FTrigger
+ trigger_def WILLS_ROOM, wWillsRoomTrigger
+ trigger_def KOGAS_ROOM, wKogasRoomTrigger
+ trigger_def BRUNOS_ROOM, wBrunosRoomTrigger
+ trigger_def KARENS_ROOM, wKarensRoomTrigger
+ trigger_def LANCES_ROOM, wLancesRoomTrigger
+ trigger_def HALL_OF_FAME, wHallOfFameTrigger
+ trigger_def ROUTE_27, wRoute27Trigger
+ trigger_def NEW_BARK_TOWN, wNewBarkTownTrigger
+ trigger_def ELMS_LAB, wElmsLabTrigger
+ trigger_def KRISS_HOUSE_1F, wKrissHouse1FTrigger
+ trigger_def ROUTE_29, wRoute29Trigger
+ trigger_def CHERRYGROVE_CITY, wCherrygroveCityTrigger
+ trigger_def MR_POKEMONS_HOUSE, wMrPokemonsHouseTrigger
+ trigger_def ROUTE_32, wRoute32Trigger
+ trigger_def ROUTE_35_NATIONAL_PARK_GATE, wRoute35NationalParkGateTrigger
+ trigger_def ROUTE_36, wRoute36Trigger
+ trigger_def ROUTE_36_NATIONAL_PARK_GATE, wRoute36NationalParkGateTrigger
+ trigger_def AZALEA_TOWN, wAzaleaTownTrigger
+ trigger_def GOLDENROD_GYM, wGoldenrodGymTrigger
+ trigger_def GOLDENROD_MAGNET_TRAIN_STATION, wGoldenrodMagnetTrainStationTrigger
+ trigger_def GOLDENROD_POKECENTER_1F, wGoldenrodPokecenter1FTrigger
+ trigger_def OLIVINE_CITY, wOlivineCityTrigger
+ trigger_def ROUTE_34, wRoute34Trigger
+ trigger_def ROUTE_34_ILEX_FOREST_GATE, wRoute34IlexForestGateTrigger
+ trigger_def ECRUTEAK_HOUSE, wEcruteakHouseTrigger
+ trigger_def WISE_TRIOS_ROOM, wWiseTriosRoomTrigger
+ trigger_def ECRUTEAK_POKECENTER_1F, wEcruteakPokecenter1FTrigger
+ trigger_def ECRUTEAK_GYM, wEcruteakGymTrigger
+ trigger_def MAHOGANY_TOWN, wMahoganyTownTrigger
+ trigger_def ROUTE_42, wRoute42Trigger
+ trigger_def CIANWOOD_CITY, wCianwoodCityTrigger
+ trigger_def BATTLE_TOWER_1F, wBattleTower1FTrigger
+ trigger_def BATTLE_TOWER_BATTLE_ROOM, wBattleTowerBattleRoomTrigger
+ trigger_def BATTLE_TOWER_ELEVATOR, wBattleTowerElevatorTrigger
+ trigger_def BATTLE_TOWER_HALLWAY, wBattleTowerHallwayTrigger
+ trigger_def BATTLE_TOWER_OUTSIDE, wBattleTowerOutsideTrigger
+ trigger_def ROUTE_43_GATE, wRoute43GateTrigger
+ trigger_def MOUNT_MOON, wMountMoonTrigger
+ trigger_def SPROUT_TOWER_3F, wSproutTower3FTrigger
+ trigger_def TIN_TOWER_1F, wTinTower1FTrigger
+ trigger_def BURNED_TOWER_1F, wBurnedTower1FTrigger
+ trigger_def BURNED_TOWER_B1F, wBurnedTowerB1FTrigger
+ trigger_def RADIO_TOWER_5F, wRadioTower5FTrigger
+ trigger_def RUINS_OF_ALPH_OUTSIDE, wRuinsOfAlphOutsideTrigger
+ trigger_def RUINS_OF_ALPH_RESEARCH_CENTER, wRuinsOfAlphResearchCenterTrigger
+ trigger_def RUINS_OF_ALPH_HO_OH_CHAMBER, wRuinsOfAlphHoOhChamberTrigger
+ trigger_def RUINS_OF_ALPH_KABUTO_CHAMBER, wRuinsOfAlphKabutoChamberTrigger
+ trigger_def RUINS_OF_ALPH_OMANYTE_CHAMBER, wRuinsOfAlphOmanyteChamberTrigger
+ trigger_def RUINS_OF_ALPH_AERODACTYL_CHAMBER, wRuinsOfAlphAerodactylChamberTrigger
+ trigger_def RUINS_OF_ALPH_INNER_CHAMBER, wRuinsOfAlphInnerChamberTrigger
+ trigger_def MAHOGANY_MART_1F, wMahoganyMart1FTrigger
+ trigger_def TEAM_ROCKET_BASE_B1F, wTeamRocketBaseB1FTrigger
+ trigger_def TEAM_ROCKET_BASE_B2F, wTeamRocketBaseB2FTrigger
+ trigger_def TEAM_ROCKET_BASE_B3F, wTeamRocketBaseB3FTrigger
+ trigger_def UNDERGROUND_PATH_SWITCH_ROOM_ENTRANCES, wUndergroundPathSwitchRoomEntrancesTrigger
+ trigger_def SILVER_CAVE_ROOM_3, wSilverCaveRoom3Trigger
+ trigger_def VICTORY_ROAD, wVictoryRoadTrigger
+ trigger_def DRAGONS_DEN_B1F, wDragonsDenB1FTrigger
+ trigger_def DRAGON_SHRINE, wDragonShrineTrigger
+ trigger_def OLIVINE_PORT, wOlivinePortTrigger
+ trigger_def VERMILION_PORT, wVermilionPortTrigger
+ trigger_def FAST_SHIP_1F, wFastShip1FTrigger
+ trigger_def FAST_SHIP_B1F, wFastShipB1FTrigger
+ trigger_def MOUNT_MOON_SQUARE, wMountMoonSquareTrigger
+ trigger_def MOBILE_TRADE_ROOM_MOBILE, wMobileTradeRoomMobileTrigger
+ trigger_def MOBILE_BATTLE_ROOM, wMobileBattleRoomTrigger
+ db $ff
+; 4d15b
diff --git a/engine/more_phone_scripts.asm b/engine/more_phone_scripts.asm
index 55b5f98c3..96a9e58f2 100644
--- a/engine/more_phone_scripts.asm
+++ b/engine/more_phone_scripts.asm
@@ -1,5 +1,5 @@
UnknownScript_0xa0000:
- special $005d
+ special RandomPhoneMon
farscall UnknownScript_0xbde3f
if_equal $0, UnknownScript_0xa0013
farscall UnknownScript_0xbe51e
@@ -9,7 +9,7 @@ UnknownScript_0xa0013:
farjump UnknownScript_0xa002e
UnknownScript_0xa0017:
- special $005d
+ special RandomPhoneMon
farscall UnknownScript_0xbde3f
if_equal $0, UnknownScript_0xa002a
farscall UnknownScript_0xbe5d0
@@ -27,7 +27,7 @@ UnknownScript_0xa0036:
farjump UnknownScript_0xa0055
UnknownScript_0xa003e:
- special $005c
+ special Function2a51f
farscall UnknownScript_0xbde3f
if_equal $0, UnknownScript_0xa0051
farscall UnknownScript_0xa017a
@@ -37,7 +37,7 @@ UnknownScript_0xa0051:
farjump UnknownScript_0xa006c
UnknownScript_0xa0055:
- special $005c
+ special Function2a51f
farscall UnknownScript_0xbde3f
if_equal $0, UnknownScript_0xa0068
farscall UnknownScript_0xa0226
@@ -851,7 +851,7 @@ UnknownScript_0xa059c:
farjump UnknownScript_0xa053a
UnknownScript_0xa05a0:
- special $005b
+ special Function2a4ab
end
UnknownScript_0xa05a4:
diff --git a/engine/pack.asm b/engine/pack.asm
new file mode 100644
index 000000000..b83576148
--- /dev/null
+++ b/engine/pack.asm
@@ -0,0 +1,1692 @@
+
+Pack: ; 10000
+ ld hl, Options
+ set 4, [hl]
+ call Function1068a
+.loop
+ call Functiona57
+ ld a, [wcf63]
+ bit 7, a
+ jr nz, .done
+ call Function10026
+ call DelayFrame
+ jr .loop
+
+.done
+ ld a, [wcf65]
+ ld [wd0d6], a
+ ld hl, Options
+ res 4, [hl]
+ ret
+; 10026
+
+Function10026: ; 10026
+ ld a, [wcf63]
+ ld hl, Jumptable_10030
+ call Function1086b
+ jp [hl]
+; 10030
+
+
+Jumptable_10030: ; 10030 (4:4030)
+ dw Function10046
+ dw Function10056
+ dw Function10067
+ dw Function10186
+ dw Function10198
+ dw Function10094
+ dw Function100a6
+ dw Function100d3
+ dw Function100e8
+ dw Function10874
+ dw Function1087e
+
+
+Function10046: ; 10046 (4:4046)
+ xor a
+ ld [hBGMapMode], a ; $ff00+$d4
+ call Function10955
+ ld a, [wcf64]
+ ld [wcf63], a
+ call Function10a40
+ ret
+
+Function10056: ; 10056 (4:4056)
+ xor a
+ ld [wcf65], a
+ call Function10a36
+ call Function109bb
+ call Function1089a
+ call Function10866
+ ret
+
+Function10067: ; 10067 (4:4067)
+ ld hl, MenuDataHeader_0x10a4f
+ call Function1d3c
+ ld a, [wd0d9]
+ ld [wcf88], a
+ ld a, [wd0df]
+ ld [wd0e4], a
+ call Function350c
+ ld a, [wd0e4]
+ ld [wd0df], a
+ ld a, [wcfa9]
+ ld [wd0d9], a
+ ld b, $7
+ ld c, $3
+ call Function108d4
+ ret c
+ call Function101c5
+ ret
+
+Function10094: ; 10094 (4:4094)
+ ld a, $2
+ ld [wcf65], a
+ call Function10a36
+ call Function109bb
+ call Function1089a
+ call Function10866
+ ret
+
+Function100a6: ; 100a6 (4:40a6)
+ ld hl, MenuDataHeader_0x10a7f
+ call Function1d3c
+ ld a, [wd0da]
+ ld [wcf88], a
+ ld a, [wd0e0]
+ ld [wd0e4], a
+ call Function350c
+ ld a, [wd0e4]
+ ld [wd0e0], a
+ ld a, [wcfa9]
+ ld [wd0da], a
+ ld b, $3
+ ld c, $7
+ call Function108d4
+ ret c
+ call Function101c5
+ ret
+
+Function100d3: ; 100d3 (4:40d3)
+ ld a, $3
+ ld [wcf65], a
+ call Function10a36
+ call Function109bb
+ xor a
+ ld [hBGMapMode], a ; $ff00+$d4
+ call Function1089a
+ call Function10866
+ ret
+
+Function100e8: ; 100e8 (4:40e8)
+ callba Function2c76f
+ ld b, $5
+ ld c, $1
+ call Function108d4
+ ret c
+ callba _CheckTossableItem
+ ld a, [wd142]
+ and a
+ jr nz, .asm_1010a
+ ld hl, MenuDataHeader_0x1013b
+ ld de, Jumptable_10153
+ jr .asm_10110
+.asm_1010a
+ ld hl, MenuDataHeader_0x10124
+ ld de, Jumptable_10137
+.asm_10110
+ push de
+ call LoadMenuDataHeader
+ call Function1d81
+ call Function1c07
+ pop hl
+ ret c
+ ld a, [wcfa9]
+ dec a
+ call Function1086b
+ jp [hl]
+; 10124 (4:4124)
+
+MenuDataHeader_0x10124: ; 0x10124
+ db $40 ; flags
+ db 07, 13 ; start coords
+ db 11, 19 ; end coords
+ dw MenuData2_0x1012c
+ db 1 ; default option
+; 0x1012c
+
+MenuData2_0x1012c: ; 0x1012c
+ db $c0 ; flags
+ db 2 ; items
+ db "USE@"
+ db "QUIT@"
+; 0x10137
+
+Jumptable_10137: ; 10137
+ dw Function10159
+ dw Function10492
+; 1013b
+
+MenuDataHeader_0x1013b: ; 0x1013b
+ db $40 ; flags
+ db 05, 13 ; start coords
+ db 11, 19 ; end coords
+ dw MenuData2_0x10143
+ db 1 ; default option
+; 0x10143
+
+MenuData2_0x10143: ; 0x10143
+ db $c0 ; flags
+ db 3 ; items
+ db "USE@"
+ db "GIVE@"
+ db "QUIT@"
+; 0x10153
+
+Jumptable_10153: ; 10153
+ dw Function10159
+ dw Function103fd
+ dw Function10492
+; 10159
+
+Function10159: ; 10159
+ callba Function2c7bf
+ ret c
+ callba Function2c7fb
+ jr c, .asm_10179
+ ld hl, Options
+ ld a, [hl]
+ push af
+ res 4, [hl]
+ callba Function2c867
+ pop af
+ ld [Options], a
+.asm_10179
+ xor a
+ ld [hBGMapMode], a ; $ff00+$d4
+ call Function10955
+ call Function1089a
+ call Function10a40
+ ret
+
+Function10186: ; 10186 (4:4186)
+ ld a, $1
+ ld [wcf65], a
+ call Function10a36
+ call Function109bb
+ call Function1089a
+ call Function10866
+ ret
+
+Function10198: ; 10198 (4:4198)
+ ld hl, MenuDataHeader_0x10aaf
+ call Function1d3c
+ ld a, [wd0db]
+ ld [wcf88], a
+ ld a, [wd0e1]
+ ld [wd0e4], a
+ call Function350c
+ ld a, [wd0e4]
+ ld [wd0e1], a
+ ld a, [wcfa9]
+ ld [wd0db], a
+ ld b, $1
+ ld c, $5
+ call Function108d4
+ ret c
+ call Function101c5
+ ret
+
+Function101c5: ; 101c5 (4:41c5)
+ callba _CheckTossableItem
+ ld a, [wd142]
+ and a
+ jr nz, .asm_101f9
+ callba CheckSelectableItem
+ ld a, [wd142]
+ and a
+ jr nz, .asm_101eb
+ callba CheckItemMenu
+ ld a, [wd142]
+ and a
+ jr nz, .asm_10207
+ jr .asm_10227
+.asm_101eb
+ callba CheckItemMenu
+ ld a, [wd142]
+ and a
+ jr nz, .asm_1020f
+ jr .asm_1022f
+.asm_101f9
+ callba CheckSelectableItem
+ ld a, [wd142]
+ and a
+ jr nz, .asm_10217
+ jr .asm_1021f
+.asm_10207
+ ld hl, MenuDataHeader_0x10249
+ ld de, Jumptable_1026a
+ jr .asm_10235
+.asm_1020f
+ ld hl, MenuDataHeader_0x10274
+ ld de, Jumptable_10291
+ jr .asm_10235
+.asm_10217
+ ld hl, MenuDataHeader_0x10299
+ ld de, Jumptable_102ac
+ jr .asm_10235
+.asm_1021f
+ ld hl, MenuDataHeader_0x102b0
+ ld de, Jumptable_102c7
+ jr .asm_10235
+.asm_10227
+ ld hl, MenuDataHeader_0x102cd
+ ld de, Jumptable_102ea
+ jr .asm_10235
+.asm_1022f
+ ld hl, MenuDataHeader_0x102f2
+ ld de, Jumptable_1030b
+.asm_10235
+ push de
+ call LoadMenuDataHeader
+ call Function1d81
+ call Function1c07
+ pop hl
+ ret c
+ ld a, [wcfa9]
+ dec a
+ call Function1086b
+ jp [hl]
+; 10249 (4:4249)
+
+MenuDataHeader_0x10249: ; 0x10249
+ db $40 ; flags
+ db 01, 13 ; start coords
+ db 11, 19 ; end coords
+ dw MenuData2_0x10251
+ db 1 ; default option
+; 0x10251
+
+MenuData2_0x10251: ; 0x10251
+ db $c0 ; flags
+ db 5 ; items
+ db "USE@"
+ db "GIVE@"
+ db "TOSS@"
+ db "SEL@"
+ db "QUIT@"
+; 0x1026a
+
+Jumptable_1026a: ; 1026a
+ dw Function10311
+ dw Function103fd
+ dw Function10364
+ dw Function103c2
+ dw Function10492
+; 10274
+
+MenuDataHeader_0x10274: ; 0x10274
+ db $40 ; flags
+ db 03, 13 ; start coords
+ db 11, 19 ; end coords
+ dw MenuData2_0x1027c
+ db 1 ; default option
+; 0x1027c
+
+MenuData2_0x1027c: ; 0x1027c
+ db $c0 ; flags
+ db 4 ; items
+ db "USE@"
+ db "GIVE@"
+ db "TOSS@"
+ db "QUIT@"
+; 0x10291
+
+Jumptable_10291: ; 10291
+ dw Function10311
+ dw Function103fd
+ dw Function10364
+ dw Function10492
+; 10299
+
+MenuDataHeader_0x10299: ; 0x10299
+ db $40 ; flags
+ db 07, 13 ; start coords
+ db 11, 19 ; end coords
+ dw MenuData2_0x102a1
+ db 1 ; default option
+; 0x102a1
+
+MenuData2_0x102a1: ; 0x102a1
+ db $c0 ; flags
+ db 2 ; items
+ db "USE@"
+ db "QUIT@"
+; 0x102ac
+
+Jumptable_102ac: ; 102ac
+ dw Function10311
+ dw Function10492
+; 102b0
+
+MenuDataHeader_0x102b0: ; 0x102b0
+ db $40 ; flags
+ db 05, 13 ; start coords
+ db 11, 19 ; end coords
+ dw MenuData2_0x102b8
+ db 1 ; default option
+; 0x102b8
+
+MenuData2_0x102b8: ; 0x102b8
+ db $c0 ; flags
+ db 3 ; items
+ db "USE@"
+ db "SEL@"
+ db "QUIT@"
+; 0x102c7
+
+Jumptable_102c7: ; 102c7
+ dw Function10311
+ dw Function103c2
+ dw Function10492
+; 102cd
+
+MenuDataHeader_0x102cd: ; 0x102cd
+ db $40 ; flags
+ db 03, 13 ; start coords
+ db 11, 19 ; end coords
+ dw MenuData2_0x102d5
+ db 1 ; default option
+; 0x102d5
+
+MenuData2_0x102d5: ; 0x102d5
+ db $c0 ; flags
+ db 4 ; items
+ db "GIVE@"
+ db "TOSS@"
+ db "SEL@"
+ db "QUIT@"
+; 0x102ea
+
+Jumptable_102ea: ; 102ea
+ dw Function103fd
+ dw Function10364
+ dw Function103c2
+ dw Function10492
+; 102f2
+
+MenuDataHeader_0x102f2: ; 0x102f2
+ db $40 ; flags
+ db 05, 13 ; start coords
+ db 11, 19 ; end coords
+ dw MenuData2_0x102fa
+ db 1 ; default option
+; 0x102fa
+
+MenuData2_0x102fa: ; 0x102fa
+ db $c0 ; flags
+ db 3 ; items
+ db "GIVE@"
+ db "TOSS@"
+ db "QUIT@"
+; 0x1030b
+
+Jumptable_1030b: ; 1030b
+ dw Function103fd
+ dw Function10364
+ dw Function10492
+; 10311
+
+Function10311: ; 10311
+ callba CheckItemMenu
+ ld a, [wd142]
+ ld hl, Jumptable_1031f
+ rst JumpTable
+ ret
+; 1031f
+
+Jumptable_1031f: ; 1031f (4:431f)
+ dw Function1032d
+ dw Function1032d
+ dw Function1032d
+ dw Function1032d
+ dw Function10334
+ dw Function10338
+ dw Function10355
+; 1035c
+
+Function1032d: ; 1032d (4:432d)
+ ld hl, UnknownText_0x10af3
+ call Function10889
+ ret
+
+Function10334: ; 10334 (4:4334)
+ call DoItemEffect
+ ret
+
+Function10338: ; 10338 (4:4338)
+ ld a, [PartyCount]
+ and a
+ jr z, .asm_1034e
+ call DoItemEffect
+ xor a
+ ld [hBGMapMode], a ; $ff00+$d4
+ call Function10955
+ call Function1089a
+ call Function10a40
+ ret
+.asm_1034e
+ ld hl, UnknownText_0x10af8
+ call Function10889
+ ret
+
+Function10355: ; 10355 (4:4355)
+ call DoItemEffect
+ ld a, [wd0ec]
+ and a
+ jr z, Function1032d
+ ld a, $a
+ ld [wcf63], a
+ ret
+; 10364 (4:4364)
+
+Function10364: ; 10364
+ ld hl, UnknownText_0x10ae4
+ call Function10889
+ callba Function24fbf
+ push af
+ call Function1c07
+ pop af
+ jr c, .asm_1039c
+ call Function10a1d
+ ld hl, UnknownText_0x10ae9
+ call Function1d4f
+ call YesNoBox
+ push af
+ call Function1c07
+ pop af
+ jr c, .asm_1039c
+ ld hl, NumItems
+ ld a, [wd107]
+ call TossItem
+ call Function10a1d
+ ld hl, UnknownText_0x10aee
+ call Function10889
+
+.asm_1039c
+ ret
+; 1039d
+
+Function1039d: ; 1039d
+ ld a, [wcf65]
+ and a
+ jr z, .asm_103b2
+ dec a
+ jr z, .asm_103aa
+ dec a
+ jr z, .asm_103ba
+ ret
+
+.asm_103aa
+ xor a
+ ld [wd0db], a
+ ld [wd0e1], a
+ ret
+
+.asm_103b2
+ xor a
+ ld [wd0d9], a
+ ld [wd0df], a
+ ret
+
+.asm_103ba
+ xor a
+ ld [wd0da], a
+ ld [wd0e0], a
+ ret
+; 103c2
+
+Function103c2: ; 103c2
+ callba CheckSelectableItem
+ ld a, [wd142]
+ and a
+ jr nz, .asm_103f6
+ ld a, [wcf65]
+ rrca
+ rrca
+ and $c0
+ ld b, a
+ ld a, [wd107]
+ inc a
+ and $3f
+ or b
+ ld [WhichRegisteredItem], a
+ ld a, [CurItem]
+ ld [RegisteredItem], a
+ call Function10a1d
+ ld de, SFX_FULL_HEAL
+ call WaitPlaySFX
+ ld hl, UnknownText_0x10afd
+ call Function10889
+ ret
+
+.asm_103f6
+ ld hl, UnknownText_0x10b02
+ call Function10889
+ ret
+; 103fd
+
+Function103fd: ; 103fd
+ ld a, [PartyCount]
+ and a
+ jp z, Function10486
+ ld a, [Options]
+ push af
+ res 4, a
+ ld [Options], a
+ ld a, $8
+ ld [PartyMenuActionText], a
+ call WhiteBGMap
+ callba Function5004f
+ callba Function50405
+ callba Function503e0
+.asm_10427
+ callba WritePartyMenuTilemap
+ callba PrintPartyMenuText
+ call WaitBGMap
+ call Function32f9
+ call DelayFrame
+ callba PartyMenuSelect
+ jr c, .asm_10475
+ ld a, [CurPartySpecies]
+ cp EGG
+ jr nz, .asm_10453
+ ld hl, UnknownText_0x1048d
+ call PrintText
+ jr .asm_10427
+.asm_10453
+ ld a, [wcf63]
+ push af
+ ld a, [wcf64]
+ push af
+ call GetCurNick
+ ld hl, StringBuffer1
+ ld de, wd050
+ ld bc, PKMN_NAME_LENGTH
+ call CopyBytes
+ call Function12bd9
+ pop af
+ ld [wcf64], a
+ pop af
+ ld [wcf63], a
+.asm_10475
+ pop af
+ ld [Options], a
+ xor a
+ ld [hBGMapMode], a ; $ff00+$d4
+ call Function10955
+ call Function1089a
+ call Function10a40
+ ret
+
+Function10486: ; 10486 (4:4486)
+ ld hl, UnknownText_0x10af8
+ call Function10889
+ ret
+; 1048d (4:448d)
+
+UnknownText_0x1048d: ; 0x1048d
+ ; An EGG can't hold an item.
+ text_jump UnknownText_0x1c0b7f
+ db "@"
+; 0x10492
+
+Function10492: ; 10492
+ ret
+; 10493
+
+
+BattlePack: ; 10493
+ ld hl, Options
+ set 4, [hl]
+ call Function1068a
+.asm_1049b
+ call Functiona57
+ ld a, [wcf63]
+ bit 7, a
+ jr nz, .asm_104ad
+ call Function104b9
+ call DelayFrame
+ jr .asm_1049b
+
+.asm_104ad
+ ld a, [wcf65]
+ ld [wd0d6], a
+ ld hl, Options
+ res 4, [hl]
+ ret
+; 104b9
+
+Function104b9: ; 104b9
+ ld a, [wcf63]
+ ld hl, Jumptable_104c3
+ call Function1086b
+ jp [hl]
+; 104c3
+
+
+Jumptable_104c3: ; 104c3 (4:44c3)
+ dw Function104d9
+ dw Function104e9
+ dw Function104fa
+ dw Function10594
+ dw Function105a6
+ dw Function10527
+ dw Function10539
+ dw Function10566
+ dw Function10581
+ dw Function10874
+ dw Function1087e
+
+
+Function104d9: ; 104d9 (4:44d9)
+ xor a
+ ld [hBGMapMode], a ; $ff00+$d4
+ call Function10955
+ ld a, [wcf64]
+ ld [wcf63], a
+ call Function10a40
+ ret
+
+Function104e9: ; 104e9 (4:44e9)
+ xor a
+ ld [wcf65], a
+ call Function10a36
+ call Function109bb
+ call Function1089a
+ call Function10866
+ ret
+
+Function104fa: ; 104fa (4:44fa)
+ ld hl, MenuDataHeader_0x10a4f
+ call Function1d3c
+ ld a, [wd0d9]
+ ld [wcf88], a
+ ld a, [wd0df]
+ ld [wd0e4], a
+ call Function350c
+ ld a, [wd0e4]
+ ld [wd0df], a
+ ld a, [wcfa9]
+ ld [wd0d9], a
+ ld b, $7
+ ld c, $3
+ call Function108d4
+ ret c
+ call Function105d3
+ ret
+
+Function10527: ; 10527 (4:4527)
+ ld a, $2
+ ld [wcf65], a
+ call Function10a36
+ call Function109bb
+ call Function1089a
+ call Function10866
+ ret
+
+Function10539: ; 10539 (4:4539)
+ ld hl, MenuDataHeader_0x10a7f
+ call Function1d3c
+ ld a, [wd0da]
+ ld [wcf88], a
+ ld a, [wd0e0]
+ ld [wd0e4], a
+ call Function350c
+ ld a, [wd0e4]
+ ld [wd0e0], a
+ ld a, [wcfa9]
+ ld [wd0da], a
+ ld b, $3
+ ld c, $7
+ call Function108d4
+ ret c
+ call Function105d3
+ ret
+
+Function10566: ; 10566 (4:4566)
+ ld a, $3
+ ld [wcf65], a
+ call Function10a36
+ call Function109bb
+ xor a
+ ld [hBGMapMode], a ; $ff00+$d4
+ call Function1089a
+ ld hl, UnknownText_0x10b0c
+ call Function10889
+ call Function10866
+ ret
+
+Function10581: ; 10581 (4:4581)
+ callba Function2c76f
+ ld b, $5
+ ld c, $1
+ call Function108d4
+ ret c
+ xor a
+ call Function105dc
+ ret
+
+Function10594: ; 10594 (4:4594)
+ ld a, $1
+ ld [wcf65], a
+ call Function10a36
+ call Function109bb
+ call Function1089a
+ call Function10866
+ ret
+
+Function105a6: ; 105a6 (4:45a6)
+ ld hl, MenuDataHeader_0x10aaf
+ call Function1d3c
+ ld a, [wd0db]
+ ld [wcf88], a
+ ld a, [wd0e1]
+ ld [wd0e4], a
+ call Function350c
+ ld a, [wd0e4]
+ ld [wd0e1], a
+ ld a, [wcfa9]
+ ld [wd0db], a
+ ld b, $1
+ ld c, $5
+ call Function108d4
+ ret c
+ call Function105d3
+ ret
+
+Function105d3: ; 105d3 (4:45d3)
+ callba CheckItemContext
+ ld a, [wd142]
+
+Function105dc: ; 105dc (4:45dc)
+ and a
+ jr z, .asm_105e7
+ ld hl, MenuDataHeader_0x10601
+ ld de, Jumptable_10614
+ jr .asm_105ed
+.asm_105e7
+ ld hl, MenuDataHeader_0x10618
+ ld de, Jumptable_10627
+.asm_105ed
+ push de
+ call LoadMenuDataHeader
+ call Function1d81
+ call Function1c07
+ pop hl
+ ret c
+ ld a, [wcfa9]
+ dec a
+ call Function1086b
+ jp [hl]
+; 10601 (4:4601)
+
+MenuDataHeader_0x10601: ; 0x10601
+ db $40 ; flags
+ db 07, 13 ; start coords
+ db 11, 19 ; end coords
+ dw MenuData2_0x10609
+ db 1 ; default option
+; 0x10609
+
+MenuData2_0x10609: ; 0x10609
+ db $c0 ; flags
+ db 2 ; items
+ db "USE@"
+ db "QUIT@"
+; 0x10614
+
+Jumptable_10614: ; 10614
+ dw Function10629
+ dw Function10689
+; 10618
+
+MenuDataHeader_0x10618: ; 0x10618
+ db $40 ; flags
+ db 09, 13 ; start coords
+ db 11, 19 ; end coords
+ dw MenuData2_0x10620
+ db 1 ; default option
+; 0x10620
+
+MenuData2_0x10620: ; 0x10620
+ db $c0 ; flags
+ db 1 ; items
+ db "QUIT@"
+; 0x10627
+
+Jumptable_10627: ; 10627
+ dw Function10689
+; 10629
+
+Function10629: ; 10629
+ callba CheckItemContext
+ ld a, [wd142]
+ ld hl, Jumptable_10637
+ rst JumpTable
+ ret
+
+Jumptable_10637: ; 10637 (4:4637)
+ dw Function10645
+ dw Function10645
+ dw Function10645
+ dw Function10645
+ dw Function1064c
+ dw Function10656
+ dw Function10671
+
+
+Function10645: ; 10645 (4:4645)
+ ld hl, UnknownText_0x10af3
+ call Function10889
+ ret
+
+Function1064c: ; 1064c (4:464c)
+ call DoItemEffect
+ ld a, [wd0ec]
+ and a
+ jr nz, asm_1066c
+ ret
+
+Function10656: ; 10656 (4:4656)
+ call DoItemEffect
+ ld a, [wd0ec]
+ and a
+ jr nz, asm_1067e
+ xor a
+ ld [hBGMapMode], a ; $ff00+$d4
+ call Function10955
+ call Function1089a
+ call Function10a40
+ ret
+asm_1066c: ; 1066c (4:466c)
+ call WhiteBGMap
+ jr asm_1067e
+
+Function10671: ; 10671 (4:4671)
+ call DoItemEffect
+ ld a, [wd0ec]
+ and a
+ jr z, Function10645
+ cp $2
+ jr z, asm_10684
+asm_1067e: ; 1067e (4:467e)
+ ld a, $a
+ ld [wcf63], a
+ ret
+asm_10684: ; 10684 (4:4684)
+ xor a
+ ld [wd0ec], a
+ ret
+; 10689 (4:4689)
+
+Function10689: ; 10689
+ ret
+; 1068a
+
+
+Function1068a: ; 1068a
+ xor a
+ ld [wcf63], a
+ ld a, [wd0d6]
+ and $3
+ ld [wcf65], a
+ inc a
+ add a
+ dec a
+ ld [wcf64], a
+ xor a
+ ld [wcf66], a
+ xor a
+ ld [wd0e3], a
+ ret
+; 106a5
+
+Function106a5: ; 106a5
+ xor a
+ ld [hBGMapMode], a
+ ld [wcf63], a
+ ld [wcf64], a
+ ld [wcf65], a
+ ld [wcf66], a
+ ld [wd0e3], a
+ call Function10955
+ call Function10a40
+ ret
+; 106be
+
+Function106be: ; 106be
+.asm_106be
+ call Function106c7
+ call Function1076f
+ jr c, .asm_106be
+ ret
+; 106c7
+
+Function106c7: ; 106c7
+ ld a, [wcf63]
+ ld hl, Jumptable_106d1
+ call Function1086b
+ jp [hl]
+; 106d1
+
+
+Jumptable_106d1: ; 106d1 (4:46d1)
+ dw Function106d9
+ dw Function1073b
+ dw Function106ff
+ dw Function10726
+
+
+Function106d9: ; 106d9 (4:46d9)
+ xor a
+ call Function10762
+ ld hl, MenuDataHeader_0x10a67
+ call Function1d3c
+ ld a, [wd0d9]
+ ld [wcf88], a
+ ld a, [wd0df]
+ ld [wd0e4], a
+ call Function350c
+ ld a, [wd0e4]
+ ld [wd0df], a
+ ld a, [wcfa9]
+ ld [wd0d9], a
+ ret
+
+Function106ff: ; 106ff (4:46ff)
+ ld a, $2
+ call Function10762
+ ld hl, MenuDataHeader_0x10a97
+ call Function1d3c
+ ld a, [wd0da]
+ ld [wcf88], a
+ ld a, [wd0e0]
+ ld [wd0e4], a
+ call Function350c
+ ld a, [wd0e4]
+ ld [wd0e0], a
+ ld a, [wcfa9]
+ ld [wd0da], a
+ ret
+
+Function10726: ; 10726 (4:4726)
+ ld a, $3
+ call Function10762
+ call Function1089a
+ callba Function2c76f
+ ld a, [CurItem]
+ ld [CurItem], a
+ ret
+
+Function1073b: ; 1073b (4:473b)
+ ld a, $1
+ call Function10762
+ ld hl, MenuDataHeader_0x10ac7
+ call Function1d3c
+ ld a, [wd0db]
+ ld [wcf88], a
+ ld a, [wd0e1]
+ ld [wd0e4], a
+ call Function350c
+ ld a, [wd0e4]
+ ld [wd0e1], a
+ ld a, [wcfa9]
+ ld [wd0db], a
+ ret
+
+Function10762: ; 10762 (4:4762)
+ ld [wcf65], a
+ call Function10a36
+ call Function109bb
+ call Function1089a
+ ret
+
+
+Function1076f: ; 1076f
+ ld hl, wcf73
+ ld a, [hl]
+ and $1
+ jr nz, .asm_10788
+ ld a, [hl]
+ and $2
+ jr nz, .asm_1078f
+ ld a, [hl]
+ and $20
+ jr nz, .asm_10795
+ ld a, [hl]
+ and $10
+ jr nz, .asm_107a8
+ scf
+ ret
+
+.asm_10788
+ ld a, $1
+ ld [wcf66], a
+ and a
+ ret
+
+.asm_1078f
+ xor a
+ ld [wcf66], a
+ and a
+ ret
+
+.asm_10795
+ ld a, [wcf63]
+ dec a
+ and $3
+ ld [wcf63], a
+ push de
+ ld de, SFX_UNKNOWN_62
+ call PlaySFX
+ pop de
+ scf
+ ret
+
+.asm_107a8
+ ld a, [wcf63]
+ inc a
+ and $3
+ ld [wcf63], a
+ push de
+ ld de, SFX_UNKNOWN_62
+ call PlaySFX
+ pop de
+ scf
+ ret
+; 107bb
+
+Function107bb: ; 107bb
+ call Function106a5
+ ld a, [InputType]
+ or a
+ jr z, .asm_107ca
+ callba Function1de28f
+
+.asm_107ca
+ call Function107d7
+ call Function1076f
+ jr c, .asm_107ca
+ xor a
+ ld [wcf66], a
+ ret
+; 107d7
+
+Function107d7: ; 107d7
+ ld a, [wcf63]
+ ld hl, Jumptable_107e1
+ call Function1086b
+ jp [hl]
+; 107e1
+
+
+Jumptable_107e1: ; 107e1 (4:47e1)
+ dw Function107e9
+ dw Function1083b
+ dw Function10807
+ dw Function10826
+
+
+Function107e9: ; 107e9 (4:47e9)
+ xor a
+ ld hl, MenuDataHeader_0x107ef
+ jr Function1085a
+; 107ef (4:47ef)
+
+MenuDataHeader_0x107ef: ; 0x107ef
+ db $40 ; flags
+ db 01, 07 ; start coords
+ db 11, 19 ; end coords
+ dw MenuData2_0x107f7
+ db 1 ; default option
+; 0x107f7
+
+MenuData2_0x107f7: ; 0x107f7
+ db $ae ; flags
+ db 5, 8 ; rows, columns
+ db 2 ; horizontal spacing
+ dbw 0, OTPartyMons
+ dbw BANK(Function24ab4), Function24ab4
+ dbw BANK(Function24ac3), Function24ac3
+ dbw BANK(Function244c3), Function244c3
+; 10807
+
+Function10807: ; 10807 (4:4807)
+ ld a, $2
+ ld hl, MenuDataHeader_0x1080e
+ jr Function1085a
+; 1080e (4:480e)
+
+MenuDataHeader_0x1080e: ; 0x1080e
+ db $40 ; flags
+ db 01, 07 ; start coords
+ db 11, 19 ; end coords
+ dw MenuData2_0x10816
+ db 1 ; default option
+; 0x10816
+
+MenuData2_0x10816: ; 0x10816
+ db $ae ; flags
+ db 5, 8 ; rows, columns
+ db 1 ; horizontal spacing
+ dbw 0, OTPartyMon1Exp + 2
+ dbw BANK(Function24ab4), Function24ab4
+ dbw BANK(Function24ac3), Function24ac3
+ dbw BANK(Function244c3), Function244c3
+; 10826
+
+Function10826: ; 10826 (4:4826)
+ ld a, $3
+ call Function10762
+ call Function1089a
+ callba Function2c76f
+ ld a, [CurItem]
+ ld [CurItem], a
+ ret
+
+Function1083b: ; 1083b (4:483b)
+ ld a, $1
+ ld hl, MenuDataHeader_0x10842
+ jr Function1085a
+; 10842 (4:4842)
+
+MenuDataHeader_0x10842: ; 0x10842
+ db $40 ; flags
+ db 01, 07 ; start coords
+ db 11, 19 ; end coords
+ dw MenuData2_0x1084a
+ db 1 ; default option
+; 0x1084a
+
+MenuData2_0x1084a: ; 0x1084a
+ db $ae ; flags
+ db 5, 8 ; rows, columns
+ db 2 ; horizontal spacing
+ dbw 0, OTPartyMon1CaughtGender
+ dbw BANK(Function24ab4), Function24ab4
+ dbw BANK(Function24ac3), Function24ac3
+ dbw BANK(Function244c3), Function244c3
+; 1085a
+
+Function1085a: ; 1085a (4:485a)
+ push hl
+ call Function10762
+ pop hl
+ call Function1d3c
+ call Function350c
+ ret
+
+Function10866: ; 10866 (4:4866)
+ ld hl, wcf63
+ inc [hl]
+ ret
+
+Function1086b: ; 1086b
+ ld e, a
+ ld d, 0
+ add hl, de
+ add hl, de
+ ld a, [hli]
+ ld h, [hl]
+ ld l, a
+ ret
+; 10874
+
+Function10874: ; 10874 (4:4874)
+ ld hl, wcf63
+ set 7, [hl]
+ xor a
+ ld [wcf66], a
+ ret
+
+Function1087e: ; 1087e (4:487e)
+ ld hl, wcf63
+ set 7, [hl]
+ ld a, $1
+ ld [wcf66], a
+ ret
+
+Function10889: ; 10889 (4:4889)
+ ld a, [Options]
+ push af
+ set 4, a
+ ld [Options], a
+ call PrintText
+ pop af
+ ld [Options], a
+ ret
+
+Function1089a: ; 1089a (4:489a)
+ call WaitBGMap
+
+
+Function1089d: ; 1089d
+ ld a, [wcf65]
+ and $3
+ ld e, a
+ ld d, $0
+ ld a, [BattleType]
+ cp BATTLETYPE_TUTORIAL
+ jr z, .asm_108b3
+ ld a, [PlayerGender]
+ bit 0, a
+ jr nz, .asm_108c5
+
+.asm_108b3
+ ld hl, PackGFXPointers
+ add hl, de
+ add hl, de
+ ld a, [hli]
+ ld e, a
+ ld d, [hl]
+ ld hl, $9500
+ lb bc, BANK(PackGFX), 15
+ call Request2bpp
+ ret
+
+.asm_108c5
+ callba Function48e81
+ ret
+; 108cc
+
+PackGFXPointers: ; 108cc
+ dw PackGFX + $f0 * 1
+ dw PackGFX + $f0 * 3
+ dw PackGFX + $f0 * 0
+ dw PackGFX + $f0 * 2
+; 108d4
+
+Function108d4: ; 108d4 (4:48d4)
+ ld hl, wcf73
+ ld a, [wd0e3]
+ and a
+ jr nz, .asm_10931
+ ld a, [hl]
+ and $1
+ jr nz, .asm_108f8
+ ld a, [hl]
+ and $2
+ jr nz, .asm_108fa
+ ld a, [hl]
+ and $20
+ jr nz, .asm_10901
+ ld a, [hl]
+ and $10
+ jr nz, .asm_10912
+ ld a, [hl]
+ and $4
+ jr nz, .asm_10923
+ scf
+ ret
+.asm_108f8
+ and a
+ ret
+.asm_108fa
+ ld a, $9
+ ld [wcf63], a
+ scf
+ ret
+.asm_10901
+ ld a, b
+ ld [wcf63], a
+ ld [wcf64], a
+ push de
+ ld de, SFX_UNKNOWN_62
+ call PlaySFX
+ pop de
+ scf
+ ret
+.asm_10912
+ ld a, c
+ ld [wcf63], a
+ ld [wcf64], a
+ push de
+ ld de, SFX_UNKNOWN_62
+ call PlaySFX
+ pop de
+ scf
+ ret
+.asm_10923
+ callba Function2490c
+ ld hl, UnknownText_0x10b07
+ call Function10889
+ scf
+ ret
+.asm_10931
+ ld a, [hl]
+ and $5
+ jr nz, .asm_1093d
+ ld a, [hl]
+ and $2
+ jr nz, .asm_1094f
+ scf
+ ret
+.asm_1093d
+ callba Function2490c
+ ld de, SFX_SWITCH_POKEMON
+ call WaitPlaySFX
+ ld de, SFX_SWITCH_POKEMON
+ call WaitPlaySFX
+.asm_1094f
+ xor a
+ ld [wd0e3], a
+ scf
+ ret
+
+
+Function10955: ; 10955
+ call WhiteBGMap
+ call ClearTileMap
+ call ClearSprites
+ call DisableLCD
+ ld hl, PackMenuGFX
+ ld de, VTiles2
+ ld bc, $0600
+ ld a, BANK(PackMenuGFX)
+ call FarCopyBytes
+ hlcoord 0, 1
+ ld bc, $00dc
+ ld a, $24
+ call ByteFill
+ hlcoord 5, 1
+ lb bc, 11, 15
+ call ClearBox
+ ld hl, TileMap
+ ld a, $28
+ ld c, $14
+.asm_1098a
+ ld [hli], a
+ inc a
+ dec c
+ jr nz, .asm_1098a
+ call Function109bb
+ call Function109a5
+ hlcoord 0, 12
+ lb bc, 4, 18
+ call TextBox
+ call EnableLCD
+ call Function1089d
+ ret
+; 109a5
+
+Function109a5: ; 109a5
+ hlcoord 0, 3
+ ld a, $50
+ ld de, 15
+ ld b, 3
+.asm_109af
+ ld c, 5
+.asm_109b1
+ ld [hli], a
+ inc a
+ dec c
+ jr nz, .asm_109b1
+ add hl, de
+ dec b
+ jr nz, .asm_109af
+ ret
+; 109bb
+
+Function109bb: ; 109bb
+ ld a, [wcf65]
+
+ ; * 15
+ ld d, a
+ swap a
+ sub d
+
+ ld d, 0
+ ld e, a
+ ld hl, Tilemap_109e1
+ add hl, de
+ ld d, h
+ ld e, l
+ hlcoord 0, 7
+ ld c, 3
+.asm_109d0
+ ld b, 5
+.asm_109d2
+ ld a, [de]
+ inc de
+ ld [hli], a
+ dec b
+ jr nz, .asm_109d2
+ ld a, c
+ ld c, 15
+ add hl, bc
+ ld c, a
+ dec c
+ jr nz, .asm_109d0
+ ret
+; 109e1
+
+Tilemap_109e1: ; 109e1
+ db $00, $04, $04, $04, $01, $06, $07, $08, $09, $0a, $02, $05, $05, $05, $03
+ db $00, $04, $04, $04, $01, $15, $16, $17, $18, $19, $02, $05, $05, $05, $03
+ db $00, $04, $04, $04, $01, $0b, $0c, $0d, $0e, $0f, $02, $05, $05, $05, $03
+ db $00, $04, $04, $04, $01, $10, $11, $12, $13, $14, $02, $05, $05, $05, $03
+; 10a1d
+
+Function10a1d: ; 10a1d
+ ld a, [CurItem]
+ ld [wd265], a
+ call GetItemName
+ call CopyName1
+ ret
+; 10a2a
+
+Function10a2a: ; 10a2a
+ ld hl, TileMap
+ ld bc, $0168
+ ld a, $7f
+ call ByteFill
+ ret
+; 10a36
+
+Function10a36: ; 10a36 (4:4a36)
+ hlcoord 5, 2
+ ld bc, $a0f
+ call ClearBox
+ ret
+
+
+Function10a40: ; 10a40
+ call WaitBGMap
+ ld b, $14
+ call GetSGBLayout
+ call Function32f9
+ call DelayFrame
+ ret
+; 10a4f
+
+MenuDataHeader_0x10a4f: ; 0x10a4f
+ db $40 ; flags
+ db 01, 07 ; start coords
+ db 11, 19 ; end coords
+ dw MenuData2_0x10a57
+ db 1 ; default option
+; 0x10a57
+
+MenuData2_0x10a57: ; 0x10a57
+ db $ae ; flags
+ db 5, 8 ; rows, columns
+ db 2 ; horizontal spacing
+ dbw 0, NumItems
+ dbw BANK(Function24ab4), Function24ab4
+ dbw BANK(Function24ac3), Function24ac3
+ dbw BANK(Function244c3), Function244c3
+; 10a67
+
+MenuDataHeader_0x10a67: ; 0x10a67
+ db $40 ; flags
+ db 01, 07 ; start coords
+ db 11, 19 ; end coords
+ dw MenuData2_0x10a6f
+ db 1 ; default option
+; 0x10a6f
+
+MenuData2_0x10a6f: ; 0x10a6f
+ db $2e ; flags
+ db 5, 8 ; rows, columns
+ db 2 ; horizontal spacing
+ dbw 0, NumItems
+ dbw BANK(Function24ab4), Function24ab4
+ dbw BANK(Function24ac3), Function24ac3
+ dbw BANK(Function244c3), Function244c3
+; 10a7f
+
+MenuDataHeader_0x10a7f: ; 0x10a7f
+ db $40 ; flags
+ db 01, 07 ; start coords
+ db 11, 19 ; end coords
+ dw MenuData2_0x10a87
+ db 1 ; default option
+; 0x10a87
+
+MenuData2_0x10a87: ; 0x10a87
+ db $ae ; flags
+ db 5, 8 ; rows, columns
+ db 1 ; horizontal spacing
+ dbw 0, NumKeyItems
+ dbw BANK(Function24ab4), Function24ab4
+ dbw BANK(Function24ac3), Function24ac3
+ dbw BANK(Function244c3), Function244c3
+; 10a97
+
+MenuDataHeader_0x10a97: ; 0x10a97
+ db $40 ; flags
+ db 01, 07 ; start coords
+ db 11, 19 ; end coords
+ dw MenuData2_0x10a9f
+ db 1 ; default option
+; 0x10a9f
+
+MenuData2_0x10a9f: ; 0x10a9f
+ db $2e ; flags
+ db 5, 8 ; rows, columns
+ db 1 ; horizontal spacing
+ dbw 0, NumKeyItems
+ dbw BANK(Function24ab4), Function24ab4
+ dbw BANK(Function24ac3), Function24ac3
+ dbw BANK(Function244c3), Function244c3
+; 10aaf
+
+MenuDataHeader_0x10aaf: ; 0x10aaf
+ db $40 ; flags
+ db 01, 07 ; start coords
+ db 11, 19 ; end coords
+ dw MenuData2_0x10ab7
+ db 1 ; default option
+; 0x10ab7
+
+MenuData2_0x10ab7: ; 0x10ab7
+ db $ae ; flags
+ db 5, 8 ; rows, columns
+ db 2 ; horizontal spacing
+ dbw 0, NumBalls
+ dbw BANK(Function24ab4), Function24ab4
+ dbw BANK(Function24ac3), Function24ac3
+ dbw BANK(Function244c3), Function244c3
+; 10ac7
+
+MenuDataHeader_0x10ac7: ; 0x10ac7
+ db $40 ; flags
+ db 01, 07 ; start coords
+ db 11, 19 ; end coords
+ dw MenuData2_0x10acf
+ db 1 ; default option
+; 0x10acf
+
+MenuData2_0x10acf: ; 0x10acf
+ db $2e ; flags
+ db 5, 8 ; rows, columns
+ db 2 ; horizontal spacing
+ dbw 0, NumBalls
+ dbw BANK(Function24ab4), Function24ab4
+ dbw BANK(Function24ac3), Function24ac3
+ dbw BANK(Function244c3), Function244c3
+; 10adf
+
+UnknownText_0x10adf: ; 0x10adf
+ ; No items.
+ text_jump UnknownText_0x1c0b9a
+ db "@"
+; 0x10ae4
+
+UnknownText_0x10ae4: ; 0x10ae4
+ ; Throw away how many?
+ text_jump UnknownText_0x1c0ba5
+ db "@"
+; 0x10ae9
+
+UnknownText_0x10ae9: ; 0x10ae9
+ ; Throw away @ @ (S)?
+ text_jump UnknownText_0x1c0bbb
+ db "@"
+; 0x10aee
+
+UnknownText_0x10aee: ; 0x10aee
+ ; Threw away @ (S).
+ text_jump UnknownText_0x1c0bd8
+ db "@"
+; 0x10af3
+
+UnknownText_0x10af3: ; 0x10af3
+ ; OAK: ! This isn't the time to use that!
+ text_jump UnknownText_0x1c0bee
+ db "@"
+; 0x10af8
+
+UnknownText_0x10af8: ; 0x10af8
+ ; You don't have a #MON!
+ text_jump UnknownText_0x1c0c17
+ db "@"
+; 0x10afd
+
+UnknownText_0x10afd: ; 0x10afd
+ ; Registered the @ .
+ text_jump UnknownText_0x1c0c2e
+ db "@"
+; 0x10b02
+
+UnknownText_0x10b02: ; 0x10b02
+ ; You can't register that item.
+ text_jump UnknownText_0x1c0c45
+ db "@"
+; 0x10b07
+
+UnknownText_0x10b07: ; 0x10b07
+ ; Where should this be moved to?
+ text_jump UnknownText_0x1c0c63
+ db "@"
+; 0x10b0c
+
+UnknownText_0x10b0c: ; 0x10b0c
+ ;
+ text_jump UnknownText_0x1c0c83
+ db "@"
+; 0x10b11
+
+UnknownText_0x10b11: ; 0x10b11
+ ; You can't use it in a battle.
+ text_jump UnknownText_0x1c0c85
+ db "@"
+; 0x10b16
+
+PackMenuGFX:
+INCBIN "gfx/misc/pack_menu.2bpp"
+
+PackGFX:
+INCBIN "gfx/misc/pack.w40.2bpp"
+
diff --git a/engine/phone_scripts.asm b/engine/phone_scripts.asm
index 7dbb246e3..c66781cdd 100644
--- a/engine/phone_scripts.asm
+++ b/engine/phone_scripts.asm
@@ -381,7 +381,7 @@ UnknownScript_0xbd17c:
iftrue UnknownScript_0xbd1cd
UnknownScript_0xbd19b:
- special $005d
+ special RandomPhoneMon
farjump UnknownScript_0xa0908
UnknownScript_0xbd1a2:
@@ -608,7 +608,7 @@ UnknownScript_0xbd373:
iftrue UnknownScript_0xbd3c4
UnknownScript_0xbd392:
- special $005d
+ special RandomPhoneMon
farjump UnknownScript_0xa0930
UnknownScript_0xbd399:
@@ -808,7 +808,7 @@ UnknownScript_0xbd544:
pokenamemem QWILFISH, $1
displaylocation ROUTE_32, $2
writebyte $1
- special $0048
+ special Functionc3fc
farjump UnknownScript_0xa05d6
UnknownScript_0xbd55c:
@@ -827,7 +827,7 @@ UnknownScript_0xbd560:
iftrue UnknownScript_0xbd5c3
UnknownScript_0xbd57f:
- special $005d
+ special RandomPhoneMon
farjump UnknownScript_0xa0948
UnknownScript_0xbd586:
@@ -3079,7 +3079,7 @@ UnknownScript_0xbe61c:
end
UnknownScript_0xbe622:
- special $005d
+ special RandomPhoneMon
farscall UnknownScript_0xbde3f
if_equal $0, UnknownScript_0xbe636
farwritetext UnknownText_0x1b518b
diff --git a/engine/pokedex.asm b/engine/pokedex.asm
new file mode 100644
index 000000000..004836f62
--- /dev/null
+++ b/engine/pokedex.asm
@@ -0,0 +1,2585 @@
+
+Pokedex: ; 40000
+
+ ld a, [hWX]
+ ld l, a
+ ld a, [hWY]
+ ld h, a
+ push hl
+ ld a, [hSCX]
+ push af
+ ld hl, Options
+ ld a, [hl]
+ push af
+ set NO_TEXT_SCROLL, [hl]
+ ld a, [VramState]
+ push af
+ xor a
+ ld [VramState], a
+ ld a, [$ffaa]
+ push af
+ ld a, $1
+ ld [$ffaa], a
+
+ xor a
+ ld [$ffde], a
+ call InitPokedex
+ call DelayFrame
+
+.main
+ call Functiona57
+ ld a, [wcf63]
+ bit 7, a
+ jr nz, .exit
+ call Function4010b
+ call DelayFrame
+ jr .main
+
+.exit
+ ld de, SFX_READ_TEXT_2
+ call PlaySFX
+ call WaitSFX
+ call ClearSprites
+ ld a, [wc7d4]
+ ld [wd959], a
+
+ pop af
+ ld [$ffaa], a
+ pop af
+ ld [VramState], a
+ pop af
+ ld [Options], a
+ pop af
+ ld [hSCX], a
+ pop hl
+ ld a, l
+ ld [hWX], a
+ ld a, h
+ ld [hWY], a
+ ret
+; 40063
+
+InitPokedex: ; 40063
+ call WhiteBGMap
+ call ClearSprites
+ call ClearTileMap
+ call Function414b7
+
+ ld hl, wc6d0
+ ld bc, $0115
+ xor a
+ call ByteFill
+
+ xor a
+ ld [wcf63], a
+ ld [wcf64], a
+ ld [wcf65], a
+ ld [wcf66], a
+
+ call Function400a2
+
+ ld a, [wd959]
+ ld [wc7d4], a
+
+ call Function40bdc
+ call Function400b4
+ call Function400ed
+ callba Function1de247
+ call Function41af7
+ ret
+; 400a2
+
+Function400a2: ; 400a2
+ ld a, [StatusFlags]
+ bit 1, a
+ jr nz, .asm_400ae
+
+ xor a
+ ld [wc7dc], a
+ ret
+
+.asm_400ae
+ ld a, 1
+ ld [wc7dc], a
+ ret
+; 400b4
+
+Function400b4: ; 400b4
+ ld hl, wc6d0
+ ld a, [wc2d6]
+ and a
+ jr z, .asm_400ec
+ cp $fc
+ jr nc, .asm_400ec
+
+ ld b, a
+ ld a, [wc7d2]
+ cp $8
+ jr c, .asm_400db
+
+ sub $7
+ ld c, a
+.asm_400cc
+ ld a, b
+ cp [hl]
+ jr z, .asm_400ec
+ inc hl
+ ld a, [wc7d0]
+ inc a
+ ld [wc7d0], a
+ dec c
+ jr nz, .asm_400cc
+
+.asm_400db
+ ld c, $7
+.asm_400dd
+ ld a, b
+ cp [hl]
+ jr z, .asm_400ec
+ inc hl
+ ld a, [wc7d1]
+ inc a
+ ld [wc7d1], a
+ dec c
+ jr nz, .asm_400dd
+
+.asm_400ec
+ ret
+; 400ed
+
+Function400ed: ; 400ed
+ ld a, [MapGroup]
+ ld b, a
+ ld a, [MapNumber]
+ ld c, a
+ call GetWorldMapLocation
+
+ cp SPECIAL_MAP
+ jr nz, .asm_40107
+
+ ld a, [BackupMapGroup]
+ ld b, a
+ ld a, [BackupMapNumber]
+ ld c, a
+ call GetWorldMapLocation
+
+.asm_40107
+ ld [wc7e4], a
+ ret
+; 4010b
+
+Function4010b: ; 4010b
+ ld a, [wcf63]
+ ld hl, Jumptable_40115
+ call Function41432
+ jp [hl]
+; 40115
+
+
+Jumptable_40115: ; 40115 (10:4115)
+ dw Function4013c
+ dw Function401ae
+ dw Function40217
+ dw Function40258
+ dw Function402aa
+ dw Function40443
+ dw Function40471
+ dw Function4039d
+ dw Function403be
+ dw Function4050a
+ dw Function40562
+ dw Function405bd
+ dw Function405df
+ dw Function40136
+
+
+Function40131: ; 40131 (10:4131)
+ ld hl, wcf63
+ inc [hl]
+ ret
+
+Function40136: ; 40136 (10:4136)
+ ld hl, wcf63
+ set 7, [hl]
+ ret
+
+Function4013c: ; 4013c (10:413c)
+ xor a
+ ld [hBGMapMode], a ; $ff00+$d4
+ call ClearSprites
+ xor a
+ ld hl, AttrMap
+ ld bc, $168
+ call ByteFill
+ callba Function1de171
+ hlcoord 0, 17
+ ld de, Unknown_407f2
+ call Function40acd
+ ld a, $7
+ ld [wc7d3], a
+ call Function40b0f
+ call Function41aeb
+ call Function41af7
+ call Function4074c
+ ld a, $5
+ ld [hSCX], a ; $ff00+$cf
+ ld a, [wc7d4]
+ cp $1
+ ld a, $4a
+ jr z, .asm_4017b
+ ld a, $47
+
+.asm_4017b
+ ld [hWX], a ; $ff00+$d1
+ xor a
+ ld [hWY], a ; $ff00+$d2
+ call WaitBGMap
+ call Function41af7
+ ld a, $ff
+ ld [CurPartySpecies], a
+ ld a, $4
+ call Function41423
+ call Function41148
+ callba Function1de171
+ hlcoord 0, 17
+ ld de, Unknown_407f2
+ call Function40acd
+ ld a, $7
+ ld [wc7d3], a
+ call Function40b0f
+ call Function40131
+ ret
+
+Function401ae: ; 401ae (10:41ae)
+ ld hl, hJoyPressed ; $ffa7
+ ld a, [hl]
+ and B_BUTTON
+ jr nz, .b
+ ld a, [hl]
+ and A_BUTTON
+ jr nz, .a
+ ld a, [hl]
+ and SELECT
+ jr nz, .select
+ ld a, [hl]
+ and START
+ jr nz, .start
+ call Function406c5
+ ret nc
+ call Function41148
+ xor a
+ ld [hBGMapMode], a ; $ff00+$d4
+ call Function40b0f
+ call Function41ad7
+ call Function41af7
+ ret
+
+.a
+ call Function40bb1
+ call Function40bd0
+ ret z
+ ld a, $2
+ ld [wcf63], a
+ ld a, $0
+ ld [wcf64], a
+ ret
+
+.select
+ call Function41401
+ ld a, $7
+ ld [wcf63], a
+ xor a
+ ld [hSCX], a ; $ff00+$cf
+ ld a, $a7
+ ld [hWX], a ; $ff00+$d1
+ call DelayFrame
+ ret
+
+.start
+ call Function41401
+ ld a, $5
+ ld [wcf63], a
+ xor a
+ ld [hSCX], a ; $ff00+$cf
+ ld a, $a7
+ ld [hWX], a ; $ff00+$d1
+ call DelayFrame
+ ret
+
+.b
+ ld a, $d
+ ld [wcf63], a
+ ret
+
+Function40217: ; 40217 (10:4217)
+ call LowVolume
+ xor a
+ ld [wcf65], a
+ xor a
+ ld [hBGMapMode], a ; $ff00+$d4
+ call ClearSprites
+ call Function41478
+ call Function407fd
+ call Function4134f
+ call Function40bb1
+ ld [wc2d6], a
+ callba Function4424d
+ call Function40ba0
+ call WaitBGMap
+ ld a, $a7
+ ld [hWX], a ; $ff00+$d1
+ call Function40bb1
+ ld [CurPartySpecies], a
+ ld a, $4
+ call Function41423
+ ld a, [CurPartySpecies]
+ call PlayCry
+ call Function40131
+ ret
+
+Function40258: ; 40258 (10:4258)
+ ld de, Unknown_402e8
+ call Function4135a
+ ld hl, hJoyPressed ; $ffa7
+ ld a, [hl]
+ and B_BUTTON
+ jr nz, .b
+ ld a, [hl]
+ and A_BUTTON
+ jr nz, .a
+ call Function4066c
+ ret nc
+ call Function40131
+ ret
+
+.a
+ ld a, [wc7d8]
+ ld hl, Jumptable_402f2
+ call Function41432
+ jp [hl]
+
+.b
+ ld a, [LastVolume]
+ and a
+ jr z, .asm_40288
+ ld a, $77
+ ld [LastVolume], a
+
+.asm_40288
+ call MaxVolume
+ ld a, [wcf64]
+ ld [wcf63], a
+ ret
+; 40292 (10:4292)
+
+Function40292: ; 40292
+ ld a, [wcf65]
+ xor $1
+ ld [wcf65], a
+ call Function40bb1
+ ld [wc2d6], a
+ callba Function4424d
+ call WaitBGMap
+ ret
+; 402aa
+
+Function402aa: ; 402aa (10:42aa)
+ call Function41401
+ xor a
+ ld [wcf65], a
+ xor a
+ ld [hBGMapMode], a ; $ff00+$d4
+ call Function407fd
+ call Function4134f
+ call Function41478
+ call Function40bb1
+ ld [wc2d6], a
+ callba Function4424d
+ call Function40ba0
+ call Function4143b
+ call WaitBGMap
+ call Function40bb1
+ ld [CurPartySpecies], a
+ ld a, $4
+ call Function41423
+ ld a, [CurPartySpecies]
+ call PlayCry
+ ld hl, wcf63
+ dec [hl]
+ ret
+; 402e8 (10:42e8)
+
+Unknown_402e8: ; 402e8
+ dw $0430
+ dwcoord 1, 17
+ dwcoord 6, 17
+ dwcoord 11, 17
+ dwcoord 15, 17
+; 402f2
+
+Jumptable_402f2: ; 402f2
+ dw Function40292
+ dw Function402fa
+ dw Function40340
+ dw Function4034f
+; 402fa
+
+Function402fa: ; 402fa
+ call Function41401
+ xor a
+ ld [hSCX], a
+ call DelayFrame
+ ld a, $7
+ ld [hWX], a
+ ld a, $90
+ ld [hWY], a
+ call Function40bb1
+ ld a, [wc7e4]
+ ld e, a
+ predef Function91d11
+ call Function41401
+ call DelayFrame
+ xor a
+ ld [hBGMapMode], a
+ ld a, $90
+ ld [hWY], a
+ ld a, $5
+ ld [hSCX], a
+ call DelayFrame
+ call Function4038d
+ call Function4143b
+ call WaitBGMap
+ call Function40bb1
+ ld [CurPartySpecies], a
+ ld a, $4
+ call Function41423
+ ret
+; 40340
+
+Function40340: ; 40340
+ call Function40bb1
+ ld a, [wd265]
+ call GetCryIndex
+ ld e, c
+ ld d, b
+ call PlayCryHeader
+ ret
+; 4034f
+
+Function4034f: ; 4034f
+ call Function41415
+ xor a
+ ld [hSCX], a
+ ld a, [wcf65]
+ push af
+ ld a, [wcf64]
+ push af
+ ld a, [wcf63]
+ push af
+ callba Function8442c
+ pop af
+ ld [wcf63], a
+ pop af
+ ld [wcf64], a
+ pop af
+ ld [wcf65], a
+ call WhiteBGMap
+ call DisableLCD
+ call Function414fb
+ call Function4038d
+ call EnableLCD
+ call WaitBGMap
+ ld a, $5
+ ld [hSCX], a
+ call Function41427
+ ret
+; 4038d
+
+Function4038d: ; 4038d
+ call Function407fd
+ call Function40bb1
+ callba Function4424d
+ call Function40ba0
+ ret
+; 4039d
+
+Function4039d: ; 4039d (10:439d)
+ xor a
+ ld [hBGMapMode], a ; $ff00+$d4
+ call ClearSprites
+ call Function4087c
+ call Function4134f
+ ld a, [wc7d4]
+ ld [wc7d8], a
+ call Function40e5b
+ call WaitBGMap
+ ld a, $10
+ call Function41423
+ call Function40131
+ ret
+
+Function403be: ; 403be (10:43be)
+ ld a, [wc7dc]
+ and a
+ jr nz, .asm_403c9
+ ld de, Unknown_403f3
+ jr .asm_403cc
+
+.asm_403c9
+ ld de, Unknown_403fb
+.asm_403cc
+ call Function4135a
+ call c, Function40e5b
+ ld hl, hJoyPressed ; $ffa7
+ ld a, [hl]
+ and $6
+ jr nz, .asm_403ea
+ ld a, [hl]
+ and $1
+ jr nz, .asm_403e0
+ ret
+
+.asm_403e0
+ ld a, [wc7d8]
+ ld hl, Jumptable_40405
+ call Function41432
+ jp [hl]
+
+.asm_403ea
+ call Function41401
+ ld a, $0
+ ld [wcf63], a
+ ret
+; 403f3 (10:43f3)
+
+Unknown_403f3: ; 403f3
+ dw $03c0
+ dwcoord 2, 4
+ dwcoord 2, 6
+ dwcoord 2, 8
+; 403fb
+
+Unknown_403fb: ; 403fb
+ dw $04c0
+ dwcoord 2, 4
+ dwcoord 2, 6
+ dwcoord 2, 8
+ dwcoord 2, 10
+; 40405
+
+Jumptable_40405: ; 40405 (10:4405)
+ dw Function4040d
+ dw Function40411
+ dw Function40415
+ dw Function4043a
+; 4040d
+
+Function4040d: ; 4040d (10:440d)
+ ld b, $0
+ jr Function40417
+
+Function40411: ; 40411 (10:4411)
+ ld b, $1
+ jr Function40417
+
+Function40415: ; 40415 (10:4415)
+ ld b, $2
+Function40417: ; 40417 (10:4417)
+ ld a, [wc7d4]
+ cp b
+ jr z, .asm_40431
+ ld a, b
+ ld [wc7d4], a
+ call Function40bdc
+ call Function40f08
+ xor a
+ ld [wc7d0], a
+ ld [wc7d1], a
+ call Function400b4
+
+.asm_40431
+ call Function41401
+ ld a, $0
+ ld [wcf63], a
+ ret
+
+Function4043a: ; 4043a (10:443a)
+ call Function41401
+ ld a, $b
+ ld [wcf63], a
+ ret
+
+Function40443: ; 40443 (10:4443)
+ xor a
+ ld [hBGMapMode], a ; $ff00+$d4
+ call ClearSprites
+ call Function408f0
+ call Function4134f
+ ld a, $1
+ ld [wc7d5], a
+ xor a
+ ld [wc7d6], a
+ call Function40fa8
+ xor a
+ ld [wc7db], a
+ callba Function44207
+ call WaitBGMap
+ ld a, $10
+ call Function41423
+ call Function40131
+ ret
+
+Function40471: ; 40471 (10:4471)
+ ld de, Unknown_4049e
+ call Function4135a
+ call Function40f4f
+ call c, Function40fa8
+ ld hl, hJoyPressed ; $ffa7
+ ld a, [hl]
+ and START | B_BUTTON
+ jr nz, .asm_40495
+ ld a, [hl]
+ and A_BUTTON
+ jr nz, .asm_4048b
+ ret
+
+.asm_4048b
+ ld a, [wc7d8]
+ ld hl, Jumptable_404a8
+ call Function41432
+ jp [hl]
+
+.asm_40495
+ call Function41401
+ ld a, $0
+ ld [wcf63], a
+ ret
+; 4049e (10:449e)
+
+Unknown_4049e: ; 4049e
+ dw $04c0
+ dwcoord 2, 4
+ dwcoord 2, 6
+ dwcoord 2, 13
+ dwcoord 2, 15
+; 404a8
+
+Jumptable_404a8: ; 404a8
+ dw Function404b0
+ dw Function404b0
+ dw Function404b7
+ dw Function40501
+; 404b0
+
+Function404b0: ; 404b0
+ call Function40f84
+ call Function40fa8
+ ret
+; 404b7
+
+Function404b7: ; 404b7
+ call Function41086
+ callba Function441cf
+ ld a, [wc7d7]
+ and a
+ jr nz, .asm_404dc
+ call Function40bdc
+ call Function41107
+ xor a
+ ld [hBGMapMode], a
+ call Function408f0
+ call Function4134f
+ call Function40fa8
+ call WaitBGMap
+ ret
+
+.asm_404dc
+ ld [wc7d2], a
+ ld a, [wc7d0]
+ ld [wc7e0], a
+ ld a, [wc7d1]
+ ld [wc7e1], a
+ ld a, [wc2d6]
+ ld [wcf65], a
+ xor a
+ ld [wc7d0], a
+ ld [wc7d1], a
+ call Function41401
+ ld a, $9
+ ld [wcf63], a
+ ret
+; 40501
+
+Function40501: ; 40501
+ call Function41401
+ ld a, $0
+ ld [wcf63], a
+ ret
+; 4050a
+
+Function4050a: ; 4050a (10:450a)
+ xor a
+ ld [hBGMapMode], a ; $ff00+$d4
+ xor a
+ ld hl, AttrMap
+ ld bc, $168
+ call ByteFill
+ call Function41ae1
+ call Function41af7
+ callba Function1de1d1
+ call Function409cf
+ ld a, $4
+ ld [wc7d3], a
+ call Function40b0f
+ call Function41ad7
+ call Function41af7
+ call Function40962
+ ld a, $5
+ ld [hSCX], a ; $ff00+$cf
+ ld a, $4a
+ ld [hWX], a ; $ff00+$d1
+ xor a
+ ld [hWY], a ; $ff00+$d2
+ call WaitBGMap
+ call Function41af7
+ callba Function1de1d1
+ call Function409cf
+ call Function41281
+ ld a, $ff
+ ld [CurPartySpecies], a
+ ld a, $4
+ call Function41423
+ call Function40131
+ ret
+
+Function40562: ; 40562 (10:4562)
+ ld hl, hJoyPressed ; $ffa7
+ ld a, [hl]
+ and B_BUTTON
+ jr nz, .asm_40595
+ ld a, [hl]
+ and A_BUTTON
+ jr nz, .asm_40583
+ call Function406c5
+ ret nc
+ call Function41281
+ xor a
+ ld [hBGMapMode], a ; $ff00+$d4
+ call Function40b0f
+ call Function41ad7
+ call Function41af7
+ ret
+
+.asm_40583
+ call Function40bb1
+ call Function40bd0
+ ret z
+ ld a, $2
+ ld [wcf63], a
+ ld a, $9
+ ld [wcf64], a
+ ret
+
+.asm_40595
+ ld a, [wc7e0]
+ ld [wc7d0], a
+ ld a, [wc7e1]
+ ld [wc7d1], a
+ ld a, [wcf65]
+ ld [wc2d6], a
+ call Function41401
+ call ClearSprites
+ call Function40bdc
+ ld a, $5
+ ld [wcf63], a
+ xor a
+ ld [hSCX], a ; $ff00+$cf
+ ld a, $a7
+ ld [hWX], a ; $ff00+$d1
+ ret
+
+Function405bd: ; 405bd (10:45bd)
+ call Function41a2c
+ call Function409f1
+ xor a
+ ld [wc7dd], a
+ call Function41a58
+ call Function40658
+ callba Functionfba2e
+ call WaitBGMap
+ ld a, $16
+ call Function41423
+ call Function40131
+ ret
+
+Function405df: ; 405df (10:45df)
+ ld hl, hJoyPressed ; $ffa7
+ ld a, [hl]
+ and A_BUTTON | B_BUTTON
+ jr nz, .asm_405eb
+ call Function40610
+ ret
+
+.asm_405eb
+ call Function41401
+ ld a, $7
+ ld [wcf63], a
+ call DelayFrame
+ call Function41a24
+ jr nz, .asm_40603
+ callba Function1ddf26
+ jr .asm_4060f
+
+.asm_40603
+ ld hl, PokedexLZ
+ ld de, $9310
+ lb bc, BANK(PokedexLZ), $3a
+ call Functione73
+
+.asm_4060f
+ ret
+
+Function40610: ; 40610 (10:4610)
+ ld hl, $ffa9
+ ld a, [hl]
+ and D_RIGHT
+ jr nz, .right
+ ld a, [hl]
+ and D_LEFT
+ jr nz, .left
+ ret
+
+.right
+ ld a, [wc7de]
+ ld e, a
+ ld hl, wc7dd
+ ld a, [hl]
+ inc a
+ cp e
+ ret nc
+ ld a, [hl]
+ inc [hl]
+ jr .asm_40635
+
+.left
+ ld hl, wc7dd
+ ld a, [hl]
+ and a
+ ret z
+ ld a, [hl]
+ dec [hl]
+
+.asm_40635
+ push af
+ xor a
+ ld [hBGMapMode], a ; $ff00+$d4
+ pop af
+ call Function40654
+ call Function41a58
+ call Function40658
+ callba Functionfba2e
+ ld a, $1
+ ld [hBGMapMode], a ; $ff00+$d4
+ call DelayFrame
+ call DelayFrame
+ ret
+
+Function40654: ; 40654 (10:4654)
+ ld c, $7f
+ jr asm_4065d
+
+Function40658: ; 40658 (10:4658)
+ ld a, [wc7dd]
+ ld c, $5a
+asm_4065d: ; 4065d (10:465d)
+ ld e, a
+ ld d, 0
+ ld hl, Unknown_40a3e + 2
+ add hl, de
+ add hl, de
+ add hl, de
+ add hl, de
+ ld a, [hli]
+ ld h, [hl]
+ ld l, a
+ ld [hl], c
+ ret
+
+Function4066c: ; 4066c (10:466c)
+ ld a, [wc7d1]
+ ld [wc7e2], a
+ ld a, [wc7d0]
+ ld [wc7e3], a
+ ld hl, $ffa9
+ ld a, [hl]
+ and D_UP
+ jr nz, .up
+ ld a, [hl]
+ and D_DOWN
+ jr nz, .down
+ and a
+ ret
+
+.up
+ ld a, [wc7d3]
+ ld d, a
+ ld a, [wc7d2]
+ ld e, a
+ call Function406ea
+ jr nc, .asm_406b7
+ call Function40bb1
+ call Function40bd0
+ jr nz, .asm_406b5
+ jr .up
+
+.down
+ ld a, [wc7d3]
+ ld d, a
+ ld a, [wc7d2]
+ ld e, a
+ call Function406fe
+ jr nc, .asm_406b7
+ call Function40bb1
+ call Function40bd0
+ jr nz, .asm_406b5
+ jr .down
+
+.asm_406b5
+ scf
+ ret
+
+.asm_406b7
+ ld a, [wc7e2]
+ ld [wc7d1], a
+ ld a, [wc7e3]
+ ld [wc7d0], a
+ and a
+ ret
+
+Function406c5: ; 406c5 (10:46c5)
+ ld a, [wc7d3]
+ ld d, a
+ ld a, [wc7d2]
+ ld e, a
+ ld hl, $ffa9
+ ld a, [hl]
+ and D_UP
+ jr nz, Function406ea
+ ld a, [hl]
+ and D_DOWN
+ jr nz, Function406fe
+ ld a, d
+ cp e
+ jr nc, asm_4073d
+ ld a, [hl]
+ and $20
+ jr nz, asm_40716
+ ld a, [hl]
+ and $10
+ jr nz, asm_40728
+ jr asm_4073d
+
+Function406ea: ; 406ea (10:46ea)
+ ld hl, wc7d1
+ ld a, [hl]
+ and a
+ jr z, .asm_406f4
+ dec [hl]
+ jr asm_4073f
+.asm_406f4
+ ld hl, wc7d0
+ ld a, [hl]
+ and a
+ jr z, asm_4073d
+ dec [hl]
+ jr asm_4073f
+
+Function406fe: ; 406fe (10:46fe)
+ ld hl, wc7d1
+ ld a, [hl]
+ inc a
+ cp e
+ jr nc, asm_4073d
+ cp d
+ jr nc, .asm_4070c
+ inc [hl]
+ jr asm_4073f
+.asm_4070c
+ ld hl, wc7d0
+ add [hl]
+ cp e
+ jr nc, asm_4073d
+ inc [hl]
+ jr asm_4073f
+asm_40716: ; 40716 (10:4716)
+ ld hl, wc7d0
+ ld a, [hl]
+ and a
+ jr z, asm_4073d
+ cp d
+ jr nc, .asm_40724
+ xor a
+ ld [hl], a
+ jr asm_4073f
+.asm_40724
+ sub d
+ ld [hl], a
+ jr asm_4073f
+asm_40728: ; 40728 (10:4728)
+ ld hl, wc7d0
+ ld a, d
+ add a
+ add [hl]
+ jr c, .asm_40733
+ cp e
+ jr c, .asm_40738
+.asm_40733
+ ld a, e
+ sub d
+ ld [hl], a
+ jr asm_4073f
+.asm_40738
+ ld a, [hl]
+ add d
+ ld [hl], a
+ jr asm_4073f
+asm_4073d: ; 4073d (10:473d)
+ and a
+ ret
+asm_4073f: ; 4073f (10:473f)
+ scf
+ ret
+
+Function40741: ; 40741
+ push de
+ ld de, $0014
+.asm_40745
+ ld [hl], a
+ add hl, de
+ dec b
+ jr nz, .asm_40745
+ pop de
+ ret
+; 4074c
+
+
+Function4074c: ; 4074c (10:474c)
+ hlcoord 0, 17
+ ld de, Unknown_407f2
+ call Function40acd
+ ld a, $32
+ ld hl, TileMap
+ ld bc, $168
+ call ByteFill
+ ld hl, TileMap
+ lb bc, 7, 7
+ call Function40ad5
+ hlcoord 0, 9
+ ld bc, $607
+ call Function40ad5
+ hlcoord 1, 11
+ ld de, Unknown_407e1
+ call Function40acd
+ ld hl, PokedexSeen ; wdeb9 (aliases: EndPokedexSeen)
+ ld b, EndPokedexSeen - PokedexSeen
+ call CountSetBits
+ ld de, wd265
+ hlcoord 5, 12
+ ld bc, $103
+ call PrintNum
+ hlcoord 1, 14
+ ld de, Unknown_407e6
+ call Function40acd
+ ld hl, PokedexCaught
+ ld b, EndPokedexCaught - PokedexCaught
+ call CountSetBits
+ ld de, wd265
+ hlcoord 5, 15
+ ld bc, $103
+ call PrintNum
+ hlcoord 1, 17
+ ld de, Unknown_407ea
+ call Function40acd
+ hlcoord 8, 1
+ ld b, $7
+ ld a, $5a
+ call Function40741
+ hlcoord 8, 10
+ ld b, $6
+ ld a, $5a
+ call Function40741
+ hlcoord 8, 0
+ ld [hl], $59
+ hlcoord 8, 8
+ ld [hl], $53
+ hlcoord 8, 9
+ ld [hl], $54
+ hlcoord 8, 16
+ ld [hl], $5b
+ call Function40ab2
+ ret
+; 407e1 (10:47e1)
+
+Unknown_407e1: ; 407e1
+ db "SEEN", $ff
+Unknown_407e6: ; 407e6
+ db "OWN", $ff
+Unknown_407ea: ; 407ea
+ db $3b, $48, $49, $4a, $44, $45, $46, $47 ; SELECT > OPTION
+Unknown_407f2: ; 407f2
+ db $3c, $3b, $41, $42, $43, $4b, $4c, $4d, $4e, $3c, $ff ; START > SEARCH
+; 407fd
+
+Function407fd: ; 407fd
+ call Function40aa6
+ ld hl, TileMap
+ ld bc, $0f12
+ call Function40ad5
+ hlcoord 19, 0
+ ld [hl], $34
+ hlcoord 19, 1
+ ld a, $7f
+ ld b, $f
+ call Function40741
+ ld [hl], $39
+ hlcoord 1, 10
+ ld bc, $0013
+ ld a, $61
+ call ByteFill
+ hlcoord 1, 17
+ ld bc, $0012
+ ld a, $7f
+ call ByteFill
+ hlcoord 9, 7
+ ld de, Unknown_40852
+ call Function40acd
+ hlcoord 9, 9
+ ld de, Unknown_4085c
+ call Function40acd
+ hlcoord 0, 17
+ ld de, Unknown_40867
+ call Function40acd
+ call Function40ab2
+ ret
+; 4084f
+
+Unknown_4084f: ; 4084f
+ db $5c, $5d, $ff ; No.
+Unknown_40852: ; 40852
+ db "HT ?", $5e, "??", $5f, $ff ; HT ?'??"
+Unknown_4085c: ; 4085c
+ db "WT ???lb", $ff ; WT ???lb
+Unknown_40867: ; 40867
+ db $3b, " PAGE AREA CRY PRNT", $ff
+; 4087c
+
+Function4087c: ; 4087c (10:487c)
+ call Function40aa6
+ hlcoord 0, 2
+ lb bc, 8, 18
+ call Function40ad5
+ hlcoord 0, 12
+ lb bc, 4, 18
+ call Function40ad5
+ hlcoord 0, 1
+ ld de, Unknown_408b2
+ call Function40acd
+ hlcoord 3, 4
+ ld de, String_408bd
+ call PlaceString
+ ld a, [wc7dc]
+ and a
+ ret z
+ hlcoord 3, 10
+ ld de, String_408e5
+ call PlaceString
+ ret
+; 408b2 (10:48b2)
+
+Unknown_408b2: ; 408b2
+ db $3b, " OPTION ", $3c, $ff
+; 408bd
+
+String_408bd: ; 408bd
+ db "NEW #DEX MODE", $4e
+ db "OLD #DEX MODE", $4e
+ db "A to Z MODE@"
+; 408e5
+
+String_408e5: ; 408e5
+ db "UNOWN MODE@"
+; 408f0
+
+Function408f0: ; 408f0 (10:48f0)
+ call Function40aa6
+ hlcoord 0, 2
+ lb bc, 14, 18
+ call Function40ad5
+ hlcoord 0, 1
+ ld de, Unknown_4092a
+ call Function40acd
+ hlcoord 8, 4
+ ld de, Unknown_40935
+ call Function40acd
+ hlcoord 8, 6
+ ld de, Unknown_40935
+ call Function40acd
+ hlcoord 3, 4
+ ld de, String_40940
+ call PlaceString
+ hlcoord 3, 13
+ ld de, String_4094c
+ call PlaceString
+ ret
+; 4092a (10:492a)
+
+Unknown_4092a: ; 4092a
+ db $3b, " SEARCH ", $3c, $ff
+; 40925
+
+Unknown_40935: ; 40935
+ db $3d, " ", $3e, $ff
+; 40940
+
+String_40940: ; 40940
+ db "TYPE1"
+ next "TYPE2"
+ db "@"
+; 4094c
+
+String_4094c: ; 4094c
+ db "BEGIN SEARCH!!"
+ next "CANCEL"
+ db "@"
+; 40962
+
+Function40962: ; 40962 (10:4962)
+ call Function40aa6
+ ld hl, TileMap
+ lb bc, 7, 7
+ call Function40ad5
+ hlcoord 0, 11
+ lb bc, 5, 18
+ call Function40ad5
+ hlcoord 1, 12
+ ld de, String_409ae
+ call PlaceString
+ ld de, wc7d7
+ hlcoord 1, 16
+ ld bc, $103
+ call PrintNum
+ hlcoord 8, 0
+ ld [hl], $59
+ hlcoord 8, 1
+ ld b, $7
+ ld a, $5a
+ call Function40741
+ hlcoord 8, 8
+ ld [hl], $53
+ hlcoord 8, 9
+ ld [hl], $69
+ hlcoord 8, 10
+ ld [hl], $6a
+ call Function40ab2
+ ret
+; 409ae (10:49ae)
+
+String_409ae: ; 409ae
+ db "SEARCH RESULTS"
+ next " TYPE"
+ next " FOUND!"
+ db "@"
+; 409cf
+
+Function409cf: ; 409cf (10:49cf)
+ ld a, [wc7d5]
+ hlcoord 0, 14
+ call Function40fcd
+ ld a, [wc7d5]
+ ld b, a
+ ld a, [wc7d6]
+ and a
+ jr z, .asm_409f0
+ cp b
+ jr z, .asm_409f0
+ hlcoord 2, 15
+ call Function40fcd
+ hlcoord 1, 15
+ ld [hl], $f3
+.asm_409f0
+ ret
+
+Function409f1: ; 409f1 (10:49f1)
+ call Function40aa6
+ hlcoord 2, 1
+ lb bc, 10, 13
+ call Function40ad5
+ hlcoord 2, 14
+ lb bc, 1, 13
+ call Function40ad5
+ hlcoord 2, 15
+ ld [hl], $3d
+ hlcoord 16, 15
+ ld [hl], $3e
+ hlcoord 6, 5
+ call Function40ab5
+ ld de, 0
+ ld b, 0
+ ld c, 26
+.asm_40a1d
+ ld hl, UnownDex
+ add hl, de
+ ld a, [hl]
+ and a
+ jr z, .asm_40a39
+ push af
+ ld hl, Unknown_40a3e
+ add hl, de
+ add hl, de
+ add hl, de
+ add hl, de
+ ld a, [hli]
+ ld h, [hl]
+ ld l, a
+ pop af
+ add $3f
+ ld [hl], a
+ inc de
+ inc b
+ dec c
+ jr nz, .asm_40a1d
+.asm_40a39
+ ld a, b
+ ld [wc7de], a
+ ret
+; 40a3e (10:4a3e)
+
+Unknown_40a3e: ; 40a3e
+ dwcoord 4,11, 3,11
+ dwcoord 4,10, 3,10
+ dwcoord 4, 9, 3, 9
+ dwcoord 4, 8, 3, 8
+ dwcoord 4, 7, 3, 7
+ dwcoord 4, 6, 3, 6
+ dwcoord 4, 5, 3, 5
+ dwcoord 4, 4, 3, 4
+ dwcoord 4, 3, 3, 2
+ dwcoord 5, 3, 5, 2
+ dwcoord 6, 3, 6, 2
+ dwcoord 7, 3, 7, 2
+ dwcoord 8, 3, 8, 2
+ dwcoord 9, 3, 9, 2
+ dwcoord 10, 3, 10, 2
+ dwcoord 11, 3, 11, 2
+ dwcoord 12, 3, 12, 2
+ dwcoord 13, 3, 13, 2
+ dwcoord 14, 3, 15, 2
+ dwcoord 14, 4, 15, 4
+ dwcoord 14, 5, 15, 5
+ dwcoord 14, 6, 15, 6
+ dwcoord 14, 7, 15, 7
+ dwcoord 14, 8, 15, 8
+ dwcoord 14, 9, 15, 9
+ dwcoord 14,10, 15,10
+; 40aa6
+
+Function40aa6: ; 40aa6
+ ld hl, TileMap
+ ld a, $32
+ ld bc, $0168
+ call ByteFill
+ ret
+; 40ab2
+
+Function40ab2: ; 40ab2
+ hlcoord 1, 1
+Function40ab5: ; 40ab5
+ xor a
+ ld b, $7
+.asm_40ab8
+ ld c, $7
+ push af
+ push hl
+.asm_40abc
+ ld [hli], a
+ add $7
+ dec c
+ jr nz, .asm_40abc
+ pop hl
+ ld de, $0014
+ add hl, de
+ pop af
+ inc a
+ dec b
+ jr nz, .asm_40ab8
+ ret
+; 40acd
+
+Function40acd: ; 40acd
+.asm_40acd
+ ld a, [de]
+ cp $ff
+ ret z
+ inc de
+ ld [hli], a
+ jr .asm_40acd
+; 40ad5
+
+
+Function40ad5: ; 40ad5
+ push hl
+ ld a, $33
+ ld [hli], a
+ ld d, $34
+ call Function40b06
+ ld a, $35
+ ld [hl], a
+ pop hl
+ ld de, $0014
+ add hl, de
+.asm_40ae6
+ push hl
+ ld a, $36
+ ld [hli], a
+ ld d, $7f
+ call Function40b06
+ ld a, $37
+ ld [hl], a
+ pop hl
+ ld de, $0014
+ add hl, de
+ dec b
+ jr nz, .asm_40ae6
+ ld a, $38
+ ld [hli], a
+ ld d, $39
+ call Function40b06
+ ld a, $3a
+ ld [hl], a
+ ret
+; 40b06
+
+Function40b06: ; 40b06
+ ld e, c
+.asm_40b07
+ ld a, e
+ and a
+ ret z
+ ld a, d
+ ld [hli], a
+ dec e
+ jr .asm_40b07
+; 40b0f
+
+
+Function40b0f: ; 40b0f (10:4b0f)
+ ld a, [wc7d4]
+ cp $1
+ jr z, .asm_40b1a
+ ld c, $b
+ jr .asm_40b1c
+.asm_40b1a
+ ld c, $b
+.asm_40b1c
+ hlcoord 0, 1
+ ld a, [wc7d3]
+ add a
+ inc a
+ ld b, a
+ ld a, $7f
+ call Function413fe
+ ld a, [wc7d0]
+ ld e, a
+ ld d, $0
+ ld hl, wc6d0
+ add hl, de
+ ld e, l
+ ld d, h
+ hlcoord 0, 2
+ ld a, [wc7d3]
+.asm_40b3c
+ push af
+ ld a, [de]
+ ld [wd265], a
+ push de
+ push hl
+ call Function40b55
+ pop hl
+ ld de, $28
+ add hl, de
+ pop de
+ inc de
+ pop af
+ dec a
+ jr nz, .asm_40b3c
+ call Function4143b
+ ret
+
+Function40b55: ; 40b55 (10:4b55)
+ and a
+ ret z
+ call Function40b6a
+ call Function40b8d
+ ret c
+ call Function40b82
+ push hl
+ call GetPokemonName
+ pop hl
+ call PlaceString
+ ret
+
+Function40b6a: ; 40b6a (10:4b6a)
+ ld a, [wc7d4]
+ cp $1
+ jr z, .asm_40b72
+ ret
+.asm_40b72
+ push hl
+ ld de, -20
+ add hl, de
+ ld de, wd265
+ ld bc, $8103
+ call PrintNum
+ pop hl
+ ret
+
+Function40b82: ; 40b82 (10:4b82)
+ call Function40bc4
+ jr nz, .asm_40b89
+ inc hl
+ ret
+.asm_40b89
+ ld a, $4f
+ ld [hli], a
+ ret
+
+Function40b8d: ; 40b8d (10:4b8d)
+ call Function40bd0
+ ret nz
+ inc hl
+ ld de, String_40b9a
+ call PlaceString
+ scf
+ ret
+; 40b9a (10:4b9a)
+
+String_40b9a: ; 40b9a
+ db "-----@"
+; 40ba0
+
+Function40ba0: ; 40ba0
+ hlcoord 18, 1
+ ld a, $62
+ ld [hli], a
+ inc a
+ ld [hl], a
+ hlcoord 18, 2
+ ld a, $64
+ ld [hli], a
+ inc a
+ ld [hl], a
+ ret
+; 40bb1
+
+
+Function40bb1: ; 40bb1
+ ld a, [wc7d1]
+ ld hl, wc7d0
+ add [hl]
+ ld e, a
+ ld d, $0
+ ld hl, wc6d0
+ add hl, de
+ ld a, [hl]
+ ld [wd265], a
+ ret
+; 40bc4
+
+
+Function40bc4: ; 40bc4 (10:4bc4)
+ push de
+ push hl
+ ld a, [wd265]
+ dec a
+ call CheckCaughtMon
+ pop hl
+ pop de
+ ret
+
+
+Function40bd0: ; 40bd0
+ push de
+ push hl
+ ld a, [wd265]
+ dec a
+ call CheckSeenMon
+ pop hl
+ pop de
+ ret
+; 40bdc
+
+
+
+Function40bdc: ; 40bdc
+ ld hl, wc6d0
+ ld bc, $100
+ xor a
+ call ByteFill
+ ld a, [wc7d4]
+ ld hl, Jumptable_40bf0
+ call Function41432
+ jp [hl]
+; 40bf0
+
+
+Jumptable_40bf0: ; 40bf0 (10:4bf0)
+ dw Function40bf6
+ dw Function40c08
+ dw Function40c30
+
+
+Function40bf6: ; 40bf6 (10:4bf6)
+ ld de, NewPokedexOrder
+ ld hl, wc6d0
+ ld c, NUM_POKEMON
+.asm_40bfe
+ ld a, [de]
+ inc de
+ ld [hli], a
+ dec c
+ jr nz, .asm_40bfe
+ call Function40c18
+ ret
+
+Function40c08: ; 40c08 (10:4c08)
+ ld hl, wc6d0
+ ld a, $1
+ ld c, NUM_POKEMON
+.asm_40c0f
+ ld [hli], a
+ inc a
+ dec c
+ jr nz, .asm_40c0f
+ call Function40c18
+ ret
+
+Function40c18: ; 40c18 (10:4c18)
+ ld hl, wc7ca
+ ld d, NUM_POKEMON
+ ld e, d
+.asm_40c1e
+ ld a, [hld]
+ ld [wd265], a
+ call Function40bd0
+ jr nz, .asm_40c2b
+ dec d
+ dec e
+ jr nz, .asm_40c1e
+.asm_40c2b
+ ld a, d
+ ld [wc7d2], a
+ ret
+
+Function40c30: ; 40c30
+ xor a
+ ld [wc7d2], a
+ ld hl, wc6d0
+ ld de, AlphabeticalPokedexOrder
+ ld c, NUM_POKEMON
+.asm_40c3c
+ push bc
+ ld a, [de]
+ ld [wd265], a
+ call Function40bd0
+ jr z, .asm_40c51
+ ld a, [wd265]
+ ld [hli], a
+ ld a, [wc7d2]
+ inc a
+ ld [wc7d2], a
+
+.asm_40c51
+ inc de
+ pop bc
+ dec c
+ jr nz, .asm_40c3c
+ ld a, [wc7d2]
+ ld c, 0
+.asm_40c5b
+ cp NUM_POKEMON
+ jr z, .asm_40c64
+ ld [hl], c
+ inc hl
+ inc a
+ jr .asm_40c5b
+
+.asm_40c64
+ ret
+; 40c65
+
+AlphabeticalPokedexOrder: ; 0x40c65
+INCLUDE "data/pokedex/order_alpha.asm"
+
+NewPokedexOrder: ; 0x40d60
+INCLUDE "data/pokedex/order_new.asm"
+
+Function40e5b: ; 40e5b
+ xor a
+ ld [hBGMapMode], a
+ hlcoord 0, 12
+ ld bc, $0412
+ call Function40ad5
+ ld a, [wc7d8]
+ ld hl, Unknown_40e7d
+ call Function41432
+ ld e, l
+ ld d, h
+ hlcoord 1, 14
+ call PlaceString
+ ld a, $1
+ ld [hBGMapMode], a
+ ret
+; 40e7d
+
+Unknown_40e7d: ; 40e7d
+ dw String_40e85
+ dw String_40ea6
+ dw String_40ec6
+ dw String_40ee4
+; 40e85
+
+String_40e85: ; 40e85
+ db $e1, $e2, " are listed by", $4e
+ db "evolution type.@"
+; 40ea6
+
+String_40ea6: ; 40ea6
+ db $e1, $e2, " are listed by", $4e
+ db "official type.@"
+; 40ec6
+
+String_40ec6: ; 40ec6
+ db $e1, $e2, " are listed", $4e
+ db "alphabetically.@"
+; 40ee4
+
+String_40ee4: ; 40ee4
+ db "UNOWN are listed", $4e
+ db "in catching order.@"
+; 40f08
+
+Function40f08: ; 40f08 (10:4f08)
+ xor a
+ ld [hBGMapMode], a ; $ff00+$d4
+ hlcoord 0, 12
+ ld bc, $412
+ call Function40ad5
+ ld de, $4f32
+ hlcoord 1, 14
+ call PlaceString
+ ld a, $1
+ ld [hBGMapMode], a ; $ff00+$d4
+ ld c, $40
+ call DelayFrames
+ ld de, SFX_CHANGE_DEX_MODE
+ call PlaySFX
+ ld c, $40
+ call DelayFrames
+ ret
+; 40f32 (10:4f32)
+
+String_40f32: ; 40f32
+ db "Changing modes.", $4e, "Please wait.@"
+; 40f4f
+
+Function40f4f: ; 40f4f (10:4f4f)
+ ld a, [wc7d8]
+ cp $2
+ jr nc, .asm_40f63
+ ld hl, $ffa9
+ ld a, [hl]
+ and $20
+ jr nz, .asm_40f65
+ ld a, [hl]
+ and $10
+ jr nz, Function40f84
+.asm_40f63
+ and a
+ ret
+.asm_40f65
+ ld a, [wc7d8]
+ and a
+ jr nz, .asm_40f76
+ ld hl, wc7d5
+ ld a, [hl]
+ cp $1
+ jr z, .asm_40f80
+ dec [hl]
+ jr .asm_40f82
+.asm_40f76
+ ld hl, wc7d6
+ ld a, [hl]
+ and a
+ jr z, .asm_40f80
+ dec [hl]
+ jr .asm_40f82
+.asm_40f80
+ ld [hl], $11
+.asm_40f82
+ scf
+ ret
+; 40f84
+
+Function40f84: ; 40f84
+ ld a, [wc7d8]
+ and a
+ jr nz, .asm_40f99
+ ld hl, wc7d5
+ ld a, [hl]
+ cp $11
+ jr nc, .asm_40f95
+ inc [hl]
+ jr .asm_40fa6
+.asm_40f95
+ ld [hl], $1
+ jr .asm_40fa6
+.asm_40f99
+ ld hl, wc7d6
+ ld a, [hl]
+ cp $11
+ jr nc, .asm_40fa4
+ inc [hl]
+ jr .asm_40fa6
+.asm_40fa4
+ ld [hl], $0
+.asm_40fa6
+ scf
+ ret
+
+Function40fa8: ; 40fa8 (10:4fa8)
+ xor a
+ ld [hBGMapMode], a ; $ff00+$d4
+ hlcoord 9, 3
+ ld bc, $408
+ ld a, $7f
+ call Function413fe
+ ld a, [wc7d5]
+ hlcoord 9, 4
+ call Function40fcd
+ ld a, [wc7d6]
+ hlcoord 9, 6
+ call Function40fcd
+ ld a, $1
+ ld [hBGMapMode], a ; $ff00+$d4
+ ret
+
+Function40fcd: ; 40fcd (10:4fcd)
+ push hl
+ ld e, a
+ ld d, 0
+ ld hl, Strings_40fe4
+ add hl, de
+ add hl, de
+ add hl, de
+ add hl, de
+ add hl, de
+ add hl, de
+ add hl, de
+ add hl, de
+ add hl, de
+ ld e, l
+ ld d, h
+ pop hl
+ call PlaceString
+ ret
+; 40fe4 (10:4fe4)
+
+Strings_40fe4: ; 40fe4
+ db " ---- @"
+ db " NORMAL @"
+ db " FIRE @"
+ db " WATER @"
+ db " GRASS @"
+ db "ELECTRIC@"
+ db " ICE @"
+ db "FIGHTING@"
+ db " POISON @"
+ db " GROUND @"
+ db " FLYING @"
+ db "PSYCHIC @"
+ db " BUG @"
+ db " ROCK @"
+ db " GHOST @"
+ db " DRAGON @"
+ db " DARK @"
+ db " STEEL @"
+; 41086
+
+Function41086: ; 41086
+ ld a, [wc7d6]
+ and a
+ call nz, Function41095
+ ld a, [wc7d5]
+ and a
+ call nz, Function41095
+ ret
+; 41095
+
+Function41095: ; 41095
+ dec a
+ ld e, a
+ ld d, 0
+ ld hl, Unknown_410f6
+ add hl, de
+ ld a, [hl]
+ ld [wc7df], a
+ ld hl, wc6d0
+ ld de, wc6d0
+ ld c, NUM_POKEMON
+ xor a
+ ld [wc7d7], a
+.asm_410ad
+ push bc
+ ld a, [hl]
+ and a
+ jr z, .asm_410e0
+ ld [wd265], a
+ ld [CurSpecies], a
+ call Function40bc4
+ jr z, .asm_410e0
+ push hl
+ push de
+ call GetBaseData
+ pop de
+ pop hl
+ ld a, [wc7df]
+ ld b, a
+ ld a, [BaseType1]
+ cp b
+ jr z, .asm_410d4
+ ld a, [BaseType2]
+ cp b
+ jr nz, .asm_410e0
+
+.asm_410d4
+ ld a, [wd265]
+ ld [de], a
+ inc de
+ ld a, [wc7d7]
+ inc a
+ ld [wc7d7], a
+
+.asm_410e0
+ inc hl
+ pop bc
+ dec c
+ jr nz, .asm_410ad
+ ld l, e
+ ld h, d
+ ld a, [wc7d7]
+ ld c, 0
+.asm_410ec
+ cp NUM_POKEMON
+ jr z, .asm_410f5
+ ld [hl], c
+ inc hl
+ inc a
+ jr .asm_410ec
+
+.asm_410f5
+ ret
+; 410f6
+
+Unknown_410f6: ; 410f6
+ db NORMAL
+ db FIRE
+ db WATER
+ db GRASS
+ db ELECTRIC
+ db ICE
+ db FIGHTING
+ db POISON
+ db GROUND
+ db FLYING
+ db PSYCHIC
+ db BUG
+ db ROCK
+ db GHOST
+ db DRAGON
+ db DARK
+ db STEEL
+; 41107
+
+Function41107: ; 41107
+ xor a
+ ld [hBGMapMode], a
+ hlcoord 0, 12
+ ld bc, $0412
+ call Function40ad5
+ ld de, String_41126
+ hlcoord 1, 14
+ call PlaceString
+ ld a, $1
+ ld [hBGMapMode], a
+ ld c, $80
+ call DelayFrames
+ ret
+; 41126
+
+String_41126: ; 41126
+ db "The specified type", $4e
+ db "was not found.@"
+; 41148
+
+Function41148: ; 41148 (10:5148)
+ ld a, [wc7d4]
+ cp $1
+ jp z, Function41157
+ call Function41229
+ call Function4130e
+ ret
+
+Function41157: ; 41157 (10:5157)
+ ld hl, Unknown_41167
+ ld a, [wc7d1]
+ or a
+ jr nz, .asm_41163
+ ld hl, Unknown_411c8
+.asm_41163
+ call Function412f1
+ ret
+; 41167 (10:5167)
+
+Unknown_41167: ; 41167
+; OAM
+ db $18, $47, $30, $07
+ db $10, $47, $31, $07
+ db $10, $4f, $32, $07
+ db $10, $57, $32, $07
+ db $10, $5f, $32, $07
+ db $10, $67, $33, $07
+ db $10, $7e, $33, $27
+ db $10, $86, $32, $27
+ db $10, $8e, $32, $27
+ db $10, $96, $32, $27
+ db $10, $9e, $31, $27
+ db $18, $9e, $30, $27
+ db $20, $47, $30, $47
+ db $28, $47, $31, $47
+ db $28, $4f, $32, $47
+ db $28, $57, $32, $47
+ db $28, $5f, $32, $47
+ db $28, $67, $33, $47
+ db $28, $7e, $33, $67
+ db $28, $86, $32, $67
+ db $28, $8e, $32, $67
+ db $28, $96, $32, $67
+ db $28, $9e, $31, $67
+ db $20, $9e, $30, $67
+ db $ff
+; 411c8
+
+Unknown_411c8: ; 411c8
+; OAM
+ db $18, $47, $30, $07
+ db $10, $47, $34, $07
+ db $10, $4f, $35, $07
+ db $10, $57, $35, $07
+ db $10, $5f, $35, $07
+ db $10, $67, $36, $07
+ db $10, $7e, $36, $27
+ db $10, $86, $35, $27
+ db $10, $8e, $35, $27
+ db $10, $96, $35, $27
+ db $10, $9e, $34, $27
+ db $18, $9e, $30, $27
+ db $20, $47, $30, $47
+ db $28, $47, $31, $47
+ db $28, $4f, $32, $47
+ db $28, $57, $32, $47
+ db $28, $5f, $32, $47
+ db $28, $67, $33, $47
+ db $28, $7e, $33, $67
+ db $28, $86, $32, $67
+ db $28, $8e, $32, $67
+ db $28, $96, $32, $67
+ db $28, $9e, $31, $67
+ db $20, $9e, $30, $67
+ db $ff
+; 41229
+
+Function41229: ; 41229 (10:5229)
+ ld hl, Unknown_41230
+ call Function412f1
+ ret
+; 41230 (10:5230)
+
+Unknown_41230: ; 41230
+; OAM
+ db $1b, $47, $30, $07
+ db $13, $47, $31, $07
+ db $13, $4f, $32, $07
+ db $13, $57, $32, $07
+ db $13, $5f, $33, $07
+ db $13, $80, $33, $27
+ db $13, $88, $32, $27
+ db $13, $90, $32, $27
+ db $13, $98, $31, $27
+ db $1b, $98, $30, $27
+ db $23, $47, $30, $47
+ db $2b, $47, $31, $47
+ db $2b, $4f, $32, $47
+ db $2b, $57, $32, $47
+ db $2b, $5f, $33, $47
+ db $2b, $80, $33, $67
+ db $2b, $88, $32, $67
+ db $2b, $90, $32, $67
+ db $2b, $98, $31, $67
+ db $23, $98, $30, $67
+ db $ff
+; 41281
+
+Function41281: ; 41281 (10:5281)
+ ld a, [wc7d4]
+ cp $1
+ jp z, Function41157
+ ld hl, Unknown_41290
+ call Function412f1
+ ret
+; 41290 (10:5290)
+
+Unknown_41290: ; 41290
+; OAM
+ db $1b, $47, $30, $07
+ db $13, $47, $31, $07
+ db $13, $4f, $32, $07
+ db $13, $57, $32, $07
+ db $13, $5f, $32, $07
+ db $13, $67, $33, $07
+ db $13, $7e, $33, $27
+ db $13, $86, $32, $27
+ db $13, $8e, $32, $27
+ db $13, $96, $32, $27
+ db $13, $9e, $31, $27
+ db $1b, $9e, $30, $27
+ db $23, $47, $30, $47
+ db $2b, $47, $31, $47
+ db $2b, $4f, $32, $47
+ db $2b, $57, $32, $47
+ db $2b, $5f, $32, $47
+ db $2b, $67, $33, $47
+ db $2b, $7e, $33, $67
+ db $2b, $86, $32, $67
+ db $2b, $8e, $32, $67
+ db $2b, $96, $32, $67
+ db $2b, $9e, $31, $67
+ db $23, $9e, $30, $67
+ db $ff
+; 412f1
+
+Function412f1: ; 412f1 (10:52f1)
+ ld de, Sprites
+.asm_412f4
+ ld a, [hl]
+ cp $ff
+ ret z
+ ld a, [wc7d1]
+ and $7
+ swap a
+ add [hl]
+ inc hl
+ ld [de], a
+ inc de
+ ld a, [hli]
+ ld [de], a
+ inc de
+ ld a, [hli]
+ ld [de], a
+ inc de
+ ld a, [hli]
+ ld [de], a
+ inc de
+ jr .asm_412f4
+
+Function4130e: ; 4130e (10:530e)
+ push de
+ ld a, [wc7d2]
+ dec a
+ ld e, a
+ ld a, [wc7d1]
+ ld hl, wc7d0
+ add [hl]
+ cp e
+ jr z, .asm_4133f
+ ld hl, $0
+ ld bc, $79
+ call AddNTimes
+ ld e, l
+ ld d, h
+ ld b, $0
+ ld a, d
+ or e
+ jr z, .asm_41341
+ ld a, [wc7d2]
+ ld c, a
+.asm_41333
+ ld a, e
+ sub c
+ ld e, a
+ ld a, d
+ sbc $0
+ ld d, a
+ jr c, .asm_41341
+ inc b
+ jr .asm_41333
+.asm_4133f
+ ld b, $79
+.asm_41341
+ ld a, $14
+ add b
+ pop hl
+ ld [hli], a
+ ld a, $a1
+ ld [hli], a
+ ld a, $f
+ ld [hli], a
+ ld [hl], $0
+ ret
+
+Function4134f: ; 4134f (10:534f)
+ xor a
+ ld [wc7d8], a
+ ld [wc7d9], a
+ ld [wc7da], a
+ ret
+
+Function4135a: ; 4135a (10:535a)
+ ld a, [de]
+ ld b, a
+ inc de
+ ld a, [de]
+ dec a
+ ld c, a
+ inc de
+ call Function413e0
+ ld hl, hJoyPressed ; $ffa7
+ ld a, [hl]
+ and D_LEFT | D_UP
+ and b
+ jr nz, .asm_4138f
+ ld a, [hl]
+ and D_RIGHT | D_DOWN
+ and b
+ jr nz, .asm_413a0
+ ld a, [hl]
+ and SELECT
+ and b
+ jr nz, .asm_413c1
+ call Function413f5
+ jr c, .asm_413bf
+ ld hl, $ffa9
+ ld a, [hl]
+ and D_LEFT | D_UP
+ and b
+ jr nz, .asm_4138f
+ ld a, [hl]
+ and D_RIGHT | D_DOWN
+ and b
+ jr nz, .asm_413a0
+ jr .asm_413bf
+.asm_4138f
+ ld a, [wc7d8]
+ and a
+ jr z, .asm_413bf
+ call Function413d4
+ ld [hl], $7f
+ ld hl, wc7d8
+ dec [hl]
+ jr .asm_413af
+.asm_413a0
+ ld a, [wc7d8]
+ cp c
+ jr nc, .asm_413bf
+ call Function413d4
+ ld [hl], $7f
+ ld hl, wc7d8
+ inc [hl]
+.asm_413af
+ call Function413d4
+ ld [hl], $ed
+ ld a, $c
+ ld [wc7d9], a
+ xor a
+ ld [wc7da], a
+ scf
+ ret
+.asm_413bf
+ and a
+ ret
+.asm_413c1
+ call Function413d4
+ ld [hl], $7f
+ ld a, [wc7d8]
+ cp c
+ jr c, .asm_413ce
+ ld a, $ff
+.asm_413ce
+ inc a
+ ld [wc7d8], a
+ jr .asm_413af
+
+Function413d4: ; 413d4 (10:53d4)
+ ld a, [wc7d8]
+ add a
+ ld l, a
+ ld h, $0
+ add hl, de
+ ld a, [hli]
+ ld h, [hl]
+ ld l, a
+ ret
+
+Function413e0: ; 413e0 (10:53e0)
+ ld hl, wc7da
+ ld a, [hl]
+ inc [hl]
+ and $8
+ jr z, .asm_413ef
+ call Function413d4
+ ld [hl], $7f
+ ret
+.asm_413ef
+ call Function413d4
+ ld [hl], $ed
+ ret
+
+Function413f5: ; 413f5 (10:53f5)
+ ld hl, wc7d9
+ ld a, [hl]
+ and a
+ ret z
+ dec [hl]
+ scf
+ ret
+
+Function413fe: ; 413fe (10:53fe)
+ jp Functionfb8
+
+Function41401: ; 41401 (10:5401)
+ ld a, [rSVBK] ; $ff00+$70
+ push af
+ ld a, $5
+ ld [rSVBK], a ; $ff00+$70
+ ld hl, Unkn1Pals
+ ld bc, $40
+ xor a
+ call ByteFill
+ pop af
+ ld [rSVBK], a ; $ff00+$70
+
+Function41415: ; 41415
+ ld a, $ff
+ call DmgToCgbBGPals
+ ld a, $ff
+ call Functioncf8
+ call DelayFrame
+ ret
+
+Function41423: ; 41423
+ ld b, a
+ call GetSGBLayout
+
+Function41427: ; 41427
+ ld a, $e4
+ call DmgToCgbBGPals
+ ld a, $e0
+ call Functioncf8
+ ret
+; 41432
+
+
+Function41432: ; 41432
+ ld e, a
+ ld d, 0
+ add hl, de
+ add hl, de
+ ld a, [hli]
+ ld h, [hl]
+ ld l, a
+ ret
+; 4143b
+
+Function4143b: ; 4143b
+ call Function40bb1
+ call Function40bd0
+ jr z, .asm_4145b
+ ld a, [wdef4]
+ ld [UnownLetter], a
+ ld a, [wd265]
+ ld [CurPartySpecies], a
+ call GetBaseData
+ ld de, VTiles2
+ predef GetFrontpic
+ ret
+
+.asm_4145b
+ ld a, $0
+ call GetSRAMBank
+ callba Function1de0d7
+ ld hl, VTiles2
+ ld de, $a000
+ ld c, $31
+ ld a, [hROMBank]
+ ld b, a
+ call Get2bpp
+ call CloseSRAM
+ ret
+; 41478
+
+
+Function41478: ; 41478 (10:5478)
+ call Function40bb1
+
+Function4147b: ; 4147b
+ ld a, [wd265]
+ dec a
+ and $f8
+ srl a
+ srl a
+ srl a
+ ld e, 0
+ ld d, a
+ ld a, [wd265]
+ dec a
+ and 7
+ swap a ; * $10
+ ld l, a
+ ld h, 0
+ add hl, de
+ ld de, Footprints
+ add hl, de
+
+ push hl
+ ld e, l
+ ld d, h
+ ld hl, $9620
+ lb bc, BANK(Footprints), 2
+ call Request1bpp
+ pop hl
+
+ ; Whoever was editing footprints forgot to fix their
+ ; tile editor. Now each bottom half is 8 tiles off.
+ ld de, $80
+ add hl, de
+
+ ld e, l
+ ld d, h
+ ld hl, $9640
+ lb bc, BANK(Footprints), 2
+ call Request1bpp
+
+ ret
+; 414b7
+
+
+Function414b7: ; 414b7
+ call DisableLCD
+ ld hl, VTiles2
+ ld bc, $0310
+ xor a
+ call ByteFill
+ call Function414fb
+ call Functione5f
+ ld hl, $9600
+ ld bc, $0200
+ call Function41504
+ call Function41a24
+ jr nz, .asm_414e0
+ callba Function1ddf1c
+ jr .asm_414e9
+
+.asm_414e0
+ ld hl, PokedexLZ
+ ld de, $9310
+ call Decompress
+
+.asm_414e9
+ ld hl, PokedexSlowpokeLZ
+ ld de, VTiles0
+ call Decompress
+ ld a, 6
+ call SkipMusic
+ call EnableLCD
+ ret
+
+Function414fb: ; 414fb
+ call Functione51
+ ld hl, VTiles1
+ ld bc, $0800
+
+Function41504: ; 41504
+ ld a, [hl]
+ xor $ff
+ ld [hli], a
+ dec bc
+ ld a, b
+ or c
+ jr nz, Function41504
+ ret
+; 4150e
+
+PokedexLZ: ; 4150e
+INCBIN "gfx/unknown/04150e.2bpp.lz"
+; 416b0
+
+PokedexSlowpokeLZ: ; 416b0
+INCBIN "gfx/pokedex/slowpoke.2bpp.lz"
+
+Function41a24: ; 41a24
+ ld a, [hCGB]
+ or a
+ ret nz
+ ld a, [hSGB]
+ dec a
+ ret
+; 41a2c
+
+Function41a2c: ; 41a2c
+ ld a, $0
+ call GetSRAMBank
+ ld hl, UnownFont
+ ld de, $a188
+ ld bc, $270
+ ld a, BANK(UnownFont)
+ call FarCopyBytes
+ ld hl, $a188
+ ld bc, $1b0
+ call Function41504
+ ld de, $a188
+ ld hl, $9400
+ lb bc, BANK(Function41a2c), $1b
+ call Request2bpp
+ call CloseSRAM
+ ret
+; 41a58
+
+
+Function41a58: ; 41a58 (10:5a58)
+ ld a, [UnownLetter]
+ push af
+ ld a, [wc7dd]
+ ld e, a
+ ld d, $0
+ ld hl, EndPokedexSeen ; wded9 (aliases: UnownDex)
+ add hl, de
+ ld a, [hl]
+ ld [UnownLetter], a
+ ld a, UNOWN
+ ld [CurPartySpecies], a
+ call GetBaseData
+ ld de, $9000
+ predef GetFrontpic
+ pop af
+ ld [UnownLetter], a
+ ret
+
diff --git a/engine/spawn_points.asm b/engine/spawn_points.asm
new file mode 100644
index 000000000..ce96b0ce5
--- /dev/null
+++ b/engine/spawn_points.asm
@@ -0,0 +1,106 @@
+
+SpawnPoints: ; 0x152ab
+
+ const_def
+
+spawn: MACRO
+; name, map, y, x
+\1\@ EQUS "SPAWN_\1"
+ const \1\@
+ map \2
+ db \3, \4
+ENDM
+
+ spawn HOME, KRISS_HOUSE_2F, 3, 3
+ spawn DEBUG, VIRIDIAN_POKECENTER_1F, 5, 3
+
+ spawn PALLET, PALLET_TOWN, 5, 6
+ spawn VIRIDIAN, VIRIDIAN_CITY, 23, 26
+ spawn PEWTER, PEWTER_CITY, 13, 26
+ spawn CERULEAN, CERULEAN_CITY, 19, 22
+ spawn ROCK_TUNNEL, ROUTE_10A, 11, 2
+ spawn VERMILION, VERMILION_CITY, 9, 6
+ spawn LAVENDER, LAVENDER_TOWN, 5, 6
+ spawn SAFFRON, SAFFRON_CITY, 9, 30
+ spawn CELADON, CELADON_CITY, 29, 10
+ spawn FUCHSIA, FUCHSIA_CITY, 19, 28
+ spawn CINNABAR, CINNABAR_ISLAND, 11, 12
+ spawn INDIGO, ROUTE_23, 9, 6
+
+ spawn NEW_BARK, NEW_BARK_TOWN, 13, 6
+ spawn CHERRYGROVE, CHERRYGROVE_CITY, 29, 4
+ spawn VIOLET, VIOLET_CITY, 31, 26
+ spawn UNION_CAVE, ROUTE_32, 11, 74
+ spawn AZALEA, AZALEA_TOWN, 15, 10
+ spawn CIANWOOD, CIANWOOD_CITY, 23, 44
+ spawn GOLDENROD, GOLDENROD_CITY, 15, 28
+ spawn OLIVINE, OLIVINE_CITY, 13, 22
+ spawn ECRUTEAK, ECRUTEAK_CITY, 23, 28
+ spawn MAHOGANY, MAHOGANY_TOWN, 15, 14
+ spawn LAKE, LAKE_OF_RAGE, 21, 29
+ spawn BLACKTHORN, BLACKTHORN_CITY, 21, 30
+ spawn MT_SILVER, SILVER_CAVE_OUTSIDE, 23, 20
+ spawn FAST_SHIP, FAST_SHIP_CABINS_SW_SSW_NW, 6, 2
+
+ db -1, -1, -1, -1
+
+ const NUM_SPAWNS
+
+
+LoadSpawnPoint: ; 1531f
+ push hl
+ push de
+ ld a, [wd001]
+ cp -1
+ jr z, .asm_15341
+ ld l, a
+ ld h, 0
+ add hl, hl
+ add hl, hl
+ ld de, SpawnPoints
+ add hl, de
+ ld a, [hli]
+ ld [MapGroup], a
+ ld a, [hli]
+ ld [MapNumber], a
+ ld a, [hli]
+ ld [XCoord], a
+ ld a, [hli]
+ ld [YCoord], a
+.asm_15341
+ pop de
+ pop hl
+ ret
+; 15344
+
+
+IsSpawnPoint: ; 15344
+ ld hl, SpawnPoints
+ ld c, 0
+.asm_15349
+ ld a, [hl]
+ cp -1
+ jr z, .asm_1535f
+ cp d
+ jr nz, .asm_15356
+ inc hl
+ ld a, [hld]
+ cp e
+ jr z, .asm_15361
+
+.asm_15356
+ push bc
+ ld bc, 4
+ add hl, bc
+ pop bc
+ inc c
+ jr .asm_15349
+
+.asm_1535f
+ and a
+ ret
+
+.asm_15361
+ scf
+ ret
+; 15363
diff --git a/engine/specials.asm b/engine/specials.asm
new file mode 100644
index 000000000..0c8158502
--- /dev/null
+++ b/engine/specials.asm
@@ -0,0 +1,642 @@
+
+Special:: ; c01b
+; Run script special de.
+ ld hl, SpecialsPointers
+ add hl, de
+ add hl, de
+ add hl, de
+ ld b, [hl]
+ inc hl
+ ld a, [hli]
+ ld h, [hl]
+ ld l, a
+ ld a, b
+ rst FarCall
+ ret
+; c029
+
+SpecialsPointers:: ; c029
+ add_special Function97c28
+ add_special Function29ce8
+ add_special Function29d11
+ add_special Function29d92
+ add_special Function29e66
+ add_special Function29e82
+ add_special Function29efa
+ add_special Function29eee
+ add_special Function29c92
+ add_special Function29cf1
+ add_special Function29cfa
+ add_special Function29bfb
+ add_special Function29c7b
+ add_special Function29ec4
+ add_special Function29ed9
+ add_special Function29eaf
+ add_special Function29f47
+ add_special Functionc2f6
+ add_special Functionc309
+ add_special Function1050b9
+ add_special Functionc34a
+ add_special Function4d9e5
+ add_special Function13a12
+ add_special Function13a31
+ add_special Function135db
+ add_special Functionfbb32
+ add_special Functionfbcd2
+ add_special Functionc658
+ add_special Function1559a
+ add_special Functionc2e7
+ add_special Function166d6
+ add_special Function1672a
+ add_special Function16936
+ add_special Function2c547
+ add_special Function16218
+ add_special Function8cc04
+ add_special SpecialNameRival
+ add_special Function90913
+ add_special Functionc2c0
+ add_special Functionc2cd
+ add_special Functionc355
+ add_special Functionc360
+ add_special Functionc373
+ add_special Functionc380
+ add_special Functionc38d
+ add_special Functionc3db
+ add_special Function8c084
+ add_special Function8c092
+ add_special Function8c0b6
+ add_special Function8c079
+ add_special Function8c0ab
+ add_special Functiond91
+ add_special WhiteBGMap
+ add_special UpdateTimePals
+ add_special ClearTileMap
+ add_special Function1ad2
+ add_special Functione4a
+ add_special Functionc230
+ add_special SpecialSeenMon
+ add_special WaitSFX
+ add_special PlayMapMusic
+ add_special RestartMapMusic
+ add_special Function12324
+ add_special Function8379
+ add_special Functionc25a
+ add_special Functionc268
+ add_special Functionc276
+ add_special Functionc284
+ add_special Functionc3ef
+ add_special Function17421
+ add_special Function17440
+ add_special Function139a8
+ add_special Functionc3fc
+ add_special Function26feb
+ add_special Function27043
+ add_special SpecialGiveShuckle
+ add_special SpecialReturnShuckle
+ add_special Function73f7
+ add_special SpecialCheckPokerus
+ add_special Function24b25
+ add_special Function24b4e
+ add_special Function24ae8
+ add_special Function4d87a
+ add_special Functionc434
+ add_special Functionc422
+ add_special Function4d9d3
+ add_special Function88018
+ add_special SpecialNameRater
+ add_special Functionc2da
+ add_special Function718d
+ add_special Function71ac
+ add_special Function2a4ab
+ add_special Function2a51f
+ add_special RandomPhoneMon
+ add_special Function14209
+ add_special Functionfb841
+ add_special SpecialSnorlaxAwake
+ add_special Function7413
+ add_special Function7418
+ add_special Function741d
+ add_special Functionc472
+ add_special ProfOaksPCBoot
+ add_special SpecialGameboyCheck
+ add_special SpecialTrainerHouse
+ add_special Function16dc7
+ add_special InitRoamMons
+ add_special Functionc48f
+ add_special Functionc49f
+ add_special Functionc4ac
+ add_special Function11ac3e
+ add_special Function11b444
+ add_special Function11b5e8
+ add_special Function11b7e5
+ add_special Function11b879
+ add_special Function11b920
+ add_special Function11b93b
+ add_special Function1700b0
+ add_special Function1700ba
+ add_special Function170114
+ add_special Function170215
+ add_special Function1704e1
+ add_special Function17021d
+ add_special Function170b44
+ add_special Function11ba38
+ add_special Function170bd3
+ add_special Function117656
+ add_special Reset
+ add_special Function1011f1
+ add_special Function101220
+ add_special Function101225
+ add_special Function101231
+ add_special Function4925b
+ add_special Function8adef
+ add_special Function11c1ab
+ add_special Function170687
+ add_special Function8ae68
+ add_special Function17d224
+ add_special Function17d2b6
+ add_special Function17d2ce
+ add_special Function17f53d
+ add_special Function103612
+ add_special SpecialHoOhChamber
+ add_special Function102142
+ add_special Function4989a
+ add_special Function49bf9
+ add_special SpecialPokeSeer
+ add_special SpecialBuenasPassword
+ add_special SpecialBuenaPrize
+ add_special SpecialDratini
+ add_special Function11485
+ add_special SpecialBeastsCheck
+ add_special SpecialMonCheck
+ add_special Functionc225
+ add_special Function170bd2
+ add_special Function10366e
+ add_special Function1037eb
+ add_special Function10383c
+ add_special Function1060a2
+ add_special Function14168
+ add_special Function1037c2
+ add_special Function10630f
+ add_special Function103780
+ add_special Function10387b
+ add_special Function4ae12
+ add_special Function1047eb
+ add_special Function4a927
+ add_special Function90a54
+ add_special Function90a88
+ add_special SpecialNone
+; c224
+
+SpecialNone: ; c224
+ ret
+; c225
+
+Functionc225: ; c225
+ ld a, [ScriptVar]
+ ld d, a
+ callba Function57e2
+ ret
+; c230
+
+Functionc230: ; c230
+ ld a, [ScriptVar]
+ dec a
+ call CheckCaughtMon
+ ret nz
+ ld a, [ScriptVar]
+ dec a
+ call SetSeenAndCaughtMon
+ call FadeToMenu
+ ld a, [ScriptVar]
+ ld [wd265], a
+ callba Functionfb877
+ call Function2b4d
+ ret
+; c252
+
+SpecialSeenMon: ; c252
+ ld a, [ScriptVar]
+ dec a
+ call SetSeenMon
+ ret
+; c25a
+
+Functionc25a: ; c25a
+ ld a, [ScriptVar]
+ ld b, a
+ callba Function4dbd2
+ jr z, Functionc298
+ jr Functionc292
+
+Functionc268: ; c268
+ ld a, [ScriptVar]
+ ld b, a
+ callba Function4dbd9
+ jr z, Functionc298
+ jr Functionc292
+
+Functionc276: ; c276
+ ld a, [ScriptVar]
+ ld b, a
+ callba Function4dbe0
+ jr z, Functionc298
+ jr Functionc292
+
+Functionc284: ; c284
+ ld a, [ScriptVar]
+ ld b, a
+ callba Function4dbe6
+ jr z, Functionc298
+ jr Functionc292
+
+Functionc292: ; c292
+ ld a, $1
+ ld [ScriptVar], a
+ ret
+
+Functionc298: ; c298
+ xor a
+ ld [ScriptVar], a
+ ret
+; c29d
+
+SpecialNameRival: ; 0xc29d
+ ld b, $2 ; rival
+ ld de, RivalName
+ callba Function116b7
+ ; default to "SILVER"
+ ld hl, RivalName
+ ld de, DefaultRivalName
+ call InitName
+ ret
+; 0xc2b2
+
+DefaultRivalName: ; 0xc2b2
+ db "SILVER@"
+
+SpecialNameRater: ; c2b9
+ callba NameRater
+ ret
+; c2c0
+
+Functionc2c0: ; c2c0
+ call FadeToMenu
+ callba Function9191c
+ call Function2b4d
+ ret
+; c2cd
+
+Functionc2cd: ; c2cd
+ call FadeToMenu
+ callba Function16be4
+ call Function2b4d
+ ret
+; c2da
+
+Functionc2da: ; c2da
+ call FadeToMenu
+ callba Function3f836
+ call Function2b4d
+ ret
+; c2e7
+
+Functionc2e7: ; c2e7
+ xor a
+ ld [ScriptVar], a
+ callba Function156d9
+ ld a, c
+ ld [ScriptVar], a
+ ret
+; c2f6
+
+Functionc2f6: ; c2f6
+ ld a, $0
+ call GetSRAMBank
+ ld a, [$abe2]
+ and a
+ jr z, .asm_c302
+ inc a
+
+.asm_c302
+ ld [ScriptVar], a
+ call CloseSRAM
+ ret
+; c309
+
+Functionc309: ; c309
+ ld a, $0
+ call GetSRAMBank
+ ld a, [$abe2]
+ ld [CurItem], a
+ ld a, $1
+ ld [wd10c], a
+ ld hl, NumItems
+ call ReceiveItem
+ jr nc, .asm_c33d
+ xor a
+ ld [$abe2], a
+ call CloseSRAM
+ ld a, [CurItem]
+ ld [wd265], a
+ call GetItemName
+ ld hl, UnknownText_0xc345
+ call PrintText
+ ld a, $1
+ ld [ScriptVar], a
+ ret
+
+.asm_c33d
+ call CloseSRAM
+ xor a
+ ld [ScriptVar], a
+ ret
+; c345
+
+UnknownText_0xc345: ; 0xc345
+ ; received item
+ text_jump UnknownText_0x1bd3be
+ db "@"
+; 0xc34a
+
+Functionc34a: ; c34a
+ callba Function1369d
+ ld a, b
+ ld [ScriptVar], a
+ ret
+; c355
+
+Functionc355: ; c355
+ ld a, [ScriptVar]
+ ld e, a
+ callba Function91a53
+ ret
+; c360
+
+Functionc360: ; c360
+ call FadeToMenu
+ callba Functione1190
+ ld a, [wd0ec]
+ ld [ScriptVar], a
+ call Function2b4d
+ ret
+; c373
+
+Functionc373: ; c373
+ call Functionc3ae
+ ret c
+ ld a, BANK(Function926c7)
+ ld hl, Function926c7
+ call Functionc39a
+ ret
+; c380
+
+Functionc380: ; c380
+ call Functionc3ae
+ ret c
+ ld a, BANK(Functione00ee)
+ ld hl, Functione00ee
+ call Functionc39a
+ ret
+; c38d
+
+Functionc38d: ; c38d
+ call Functionc3ae
+ ret c
+ ld a, BANK(Functione1e5b)
+ ld hl, Functione1e5b
+ call Functionc39a
+ ret
+; c39a
+
+Functionc39a: ; c39a
+ call Function31cf
+ call FadeToMenu
+ ld hl, wd0e8
+ ld a, [hli]
+ push af
+ ld a, [hli]
+ ld h, [hl]
+ ld l, a
+ pop af
+ rst FarCall
+ call Function2b4d
+ ret
+; c3ae
+
+Functionc3ae: ; c3ae
+ ld hl, Coins
+ ld a, [hli]
+ or [hl]
+ jr z, .asm_c3c4
+ ld a, COIN_CASE
+ ld [CurItem], a
+ ld hl, NumItems
+ call CheckItem
+ jr nc, .asm_c3c9
+ and a
+ ret
+
+.asm_c3c4
+ ld hl, UnknownText_0xc3d1
+ jr .asm_c3cc
+
+.asm_c3c9
+ ld hl, UnknownText_0xc3d6
+
+.asm_c3cc
+ call PrintText
+ scf
+ ret
+; c3d1
+
+UnknownText_0xc3d1: ; 0xc3d1
+ ; You have no coins.
+ text_jump UnknownText_0x1bd3d7
+ db "@"
+; 0xc3d6
+
+UnknownText_0xc3d6: ; 0xc3d6
+ ; You don't have a COIN CASE.
+ text_jump UnknownText_0x1bd3eb
+ db "@"
+; 0xc3db
+
+Functionc3db: ; c3db
+ call WhiteBGMap
+ call Function2879
+ ret
+; c3e2
+
+ScriptReturnCarry: ; c3e2
+ jr c, .carry
+ xor a
+ ld [ScriptVar], a
+ ret
+.carry
+ ld a, 1
+ ld [ScriptVar], a
+ ret
+; c3ef
+
+Functionc3ef: ; c3ef
+ callba Function1150c
+ ld a, [wdc3a]
+ ld [ScriptVar], a
+ ret
+; c3fc
+
+Functionc3fc: ; c3fc
+ ld a, [ScriptVar]
+ ld [wdfce], a
+ ret
+; c403
+
+
+Functionc403:: ; c403
+ ld a, c
+ and a
+ jr nz, .asm_c410
+ ld a, d
+ ld [wdfcc], a
+ ld a, e
+ ld [wdfcd], a
+ ret
+
+.asm_c410
+ ld a, d
+ ld [wdc5a], a
+ ld a, e
+ ld [wdc5b], a
+ ret
+; c419
+
+
+SpecialCheckPokerus: ; c419
+; Check if a monster in your party has Pokerus
+ callba CheckPokerus
+ jp ScriptReturnCarry
+; c422
+
+Functionc422: ; c422
+ callba Function1152b
+ ld hl, wdc9d
+ res 0, [hl]
+ callba Function5d33
+ ret
+; c434
+
+Functionc434: ; c434
+ callba Function11542
+ jp ScriptReturnCarry
+; c43d
+
+SpecialSnorlaxAwake: ; 0xc43d
+; Check if the Poké Flute channel is playing, and if the player is standing
+; next to Snorlax.
+
+; outputs:
+; ScriptVar is 1 if the conditions are met, otherwise 0.
+
+; check background music
+ ld a, [wMapMusic]
+ cp MUSIC_POKE_FLUTE_CHANNEL
+ jr nz, .nope
+
+ ld a, [XCoord]
+ ld b, a
+ ld a, [YCoord]
+ ld c, a
+
+ ld hl, .ProximityCoords
+.loop
+ ld a, [hli]
+ cp $ff
+ jr z, .nope
+ cp b
+ jr nz, .nextcoord
+ ld a, [hli]
+ cp c
+ jr nz, .loop
+
+ ld a, $1
+ jr .done
+
+.nextcoord
+ inc hl
+ jr .loop
+
+.nope
+ xor a
+.done
+ ld [ScriptVar], a
+ ret
+
+.ProximityCoords
+ ; x, y
+ db 33, 8 ; left
+ db 34, 10 ; below
+ db 35, 10 ; below
+ db 36, 8 ; right
+ db 36, 9 ; right
+ db $ff
+
+
+Functionc472: ; c472
+ ld a, [CurPartySpecies]
+ jp PlayCry
+; c478
+
+
+SpecialGameboyCheck: ; c478
+ ld a, [hCGB]
+ and a
+ jr nz, .cgb
+
+ ld a, [hSGB]
+ and a
+ jr nz, .sgb
+
+.gb
+ xor a
+ jr .done
+.sgb
+ ld a, 1
+ jr .done
+.cgb
+ ld a, 2
+.done
+ ld [ScriptVar], a
+ ret
+
+
+Functionc48f: ; c48f
+ ld a, MUSIC_NONE % $100
+ ld [MusicFadeIDLo], a
+ ld a, MUSIC_NONE / $100
+ ld [MusicFadeIDHi], a
+ ld a, $2
+ ld [MusicFade], a
+ ret
+; c49f
+
+Functionc49f: ; c49f
+ call FadeToMenu
+ callba Function1dd702
+ call Function2b4d
+ ret
+; c4ac
+
+Functionc4ac: ; c4ac
+ call FadeToMenu
+ callba Function84688
+ call Function2b4d
+ ret
+; c4b9
+
+SpecialTrainerHouse: ; 0xc4b9
+ ld a, 0
+ call GetSRAMBank
+ ld a, [$abfd] ; XXX what is this memory location?
+ ld [ScriptVar], a
+ jp CloseSRAM
+
diff --git a/engine/std_scripts.asm b/engine/std_scripts.asm
index b6fd9f686..98602bd8a 100644
--- a/engine/std_scripts.asm
+++ b/engine/std_scripts.asm
@@ -122,16 +122,16 @@ PokeCenterNurseScript: ; bc09c
; Go ahead and heal
farwritetext UnknownText_0x1b01bd
pause 20
- special $009d
+ special Function1060a2
; Turn to the machine
spriteface $fe, $2
pause 10
- special $001b
+ special Functionc658
playmusic MUSIC_NONE
writebyte $0
- special $003e
+ special Function12324
pause 30
- special $003d
+ special RestartMapMusic
spriteface $fe, $0
pause 10
; Has Elm already phoned you about Pokerus?
@@ -141,7 +141,7 @@ PokeCenterNurseScript: ; bc09c
checkflag $000d
iftrue .done
; Check for Pokerus
- special $004e ; SPECIAL_CHECKPOKERUS
+ special SpecialCheckPokerus ; SPECIAL_CHECKPOKERUS
iftrue .pokerus
.done
; Thank you for waiting. ...
@@ -212,7 +212,7 @@ UnknownScript_0xbc17a: ; 0xbc17a
loadfont
farwritetext UnknownText_0x1b048d
closetext
- special $0026
+ special Functionc2c0
loadmovesprites
end
; 0xbc185
@@ -236,7 +236,7 @@ UnknownScript_0xbc191: ; 0xbc191
UnknownScript_0xbc195: ; 0xbc195
loadfont
writebyte $0
- special $0028
+ special Functionc355
loadmovesprites
end
; 0xbc19d
@@ -244,7 +244,7 @@ UnknownScript_0xbc195: ; 0xbc195
UnknownScript_0xbc19d: ; 0xbc19d
loadfont
writebyte $4
- special $0028
+ special Functionc355
loadmovesprites
end
; 0xbc1a5
@@ -255,7 +255,7 @@ UnknownScript_0xbc1a5: ; 0xbc1a5
UnknownScript_0xbc1a9: ; 0xbc1a9
loadfont
- special $001c
+ special Function1559a
loadmovesprites
end
; 0xbc1af
@@ -371,7 +371,7 @@ UnknownScript_0xbc242: ; 0xbc242
; 0xbc25c
UnknownScript_0xbc25c: ; 0xbc25c
- special $0034
+ special WhiteBGMap
scall UnknownScript_0xbc380
setevent $0747
clearevent $0748
@@ -389,7 +389,7 @@ UnknownScript_0xbc274: ; bc274
loadfont
farwritetext UnknownText_0x1b05bf
closetext
- special $0014
+ special Functionc34a
RAM2MEM $0
if_equal $1, UnknownScript_0xbc31e
if_equal $2, UnknownScript_0xbc332
@@ -415,9 +415,9 @@ UnknownScript_0xbc2b6:
iffalse UnknownScript_0xbc2c4
farwritetext UnknownText_0x1b06d9
closetext
- special $0017
+ special Function13a31
UnknownScript_0xbc2c4:
- special $0015
+ special Function4d9e5
if_equal $0, UnknownScript_0xbc2d4
if_equal $2, UnknownScript_0xbc2d4
farwritetext UnknownText_0x1b070d
@@ -447,7 +447,7 @@ UnknownScript_0xbc2d4:
setevent $0728
setevent $0729
setflag $0051
- special $003c
+ special PlayMapMusic
end
; 0xbc31e
@@ -692,7 +692,7 @@ UnknownScript_0xbc3db: ; 0xbc3db
; 0xbc574
UnknownScript_0xbc574: ; 0xbc574
- special $005d
+ special RandomPhoneMon
checkcode $17
if_equal $5, UnknownScript_0xbc5c9
if_equal $7, UnknownScript_0xbc5ce
@@ -816,7 +816,7 @@ UnknownScript_0xbc628: ; 0xbc628
; 0xbc62d
UnknownScript_0xbc62d: ; 0xbc62d
- special $005d
+ special RandomPhoneMon
checkcode $17
if_equal $5, UnknownScript_0xbc682
if_equal $7, UnknownScript_0xbc687
@@ -2257,7 +2257,7 @@ UnknownScript_0xbcde0: ; 0xbcde0
farwritetext UnknownText_0x1b07e3
UnknownScript_0xbcde4: ; 0xbcde4
- special $0050
+ special Function24b4e
loadmenudata MenuDataHeader_0xbce54
interpretmenu2
writebackup
@@ -2336,7 +2336,7 @@ MenuData2_0xbce5c: ; 0xbce5c
UnknownScript_0xbce7f: ; 0xbce7f
faceplayer
loadfont
- special $0059
+ special Function718d
if_less_than 50, UnknownScript_0xbce9a
if_less_than 150, UnknownScript_0xbce93
farwritetext UnknownText_0x1b092a
diff --git a/event/move_deleter.asm b/event/move_deleter.asm
new file mode 100644
index 000000000..b81006681
--- /dev/null
+++ b/event/move_deleter.asm
@@ -0,0 +1,168 @@
+Function2c547: ; 2c547
+ ld hl, UnknownText_0x2c5ef
+ call PrintText
+ call YesNoBox
+ jr c, .asm_2c5c3
+ ld hl, UnknownText_0x2c5f4
+ call PrintText
+ callba Function50000
+ jr c, .asm_2c5c3
+ ld a, [CurPartySpecies]
+ cp EGG
+ jr z, .asm_2c5bc
+ ld a, [CurPartyMon]
+ ld hl, PartyMon1Moves + 1
+ ld bc, PartyMon2 - PartyMon1
+ call AddNTimes
+ ld a, [hl]
+ and a
+ jr z, .asm_2c5ca
+ ld hl, UnknownText_0x2c5ea
+ call PrintText
+ call Function1d6e
+ callba Function12f5b
+ push af
+ call Function2b74
+ pop af
+ jr c, .asm_2c5c3
+ ld a, [wcfa9]
+ push af
+ ld a, [CurSpecies]
+ ld [wd265], a
+ call GetMoveName
+ ld hl, UnknownText_0x2c5d6
+ call PrintText
+ call YesNoBox
+ pop bc
+ jr c, .asm_2c5c3
+ call Function2c5f9
+ call WaitSFX
+ ld de, SFX_MOVE_DELETED
+ call PlaySFX
+ call WaitSFX
+ ld hl, UnknownText_0x2c5db
+ call PrintText
+ ret
+
+.asm_2c5bc
+ ld hl, UnknownText_0x2c5e0
+ call PrintText
+ ret
+
+.asm_2c5c3
+ ld hl, UnknownText_0x2c5e5
+ call PrintText
+ ret
+
+.asm_2c5ca
+ ld hl, UnknownText_0x2c5d1
+ call PrintText
+ ret
+; 2c5d1
+
+UnknownText_0x2c5d1: ; 0x2c5d1
+ ; That #MON knows only one move.
+ text_jump UnknownText_0x1c5eba
+ db "@"
+; 0x2c5d6
+
+UnknownText_0x2c5d6: ; 0x2c5d6
+ ; Oh, make it forget @ ?
+ text_jump UnknownText_0x1c5eda
+ db "@"
+; 0x2c5db
+
+UnknownText_0x2c5db: ; 0x2c5db
+ ; Done! Your #MON forgot the move.
+ text_jump UnknownText_0x1c5ef5
+ db "@"
+; 0x2c5e0
+
+UnknownText_0x2c5e0: ; 0x2c5e0
+ ; An EGG doesn't know any moves!
+ text_jump UnknownText_0x1c5f17
+ db "@"
+; 0x2c5e5
+
+UnknownText_0x2c5e5: ; 0x2c5e5
+ ; No? Come visit me again.
+ text_jump UnknownText_0x1c5f36
+ db "@"
+; 0x2c5ea
+
+UnknownText_0x2c5ea: ; 0x2c5ea
+ ; Which move should it forget, then?
+ text_jump UnknownText_0x1c5f50
+ db "@"
+; 0x2c5ef
+
+UnknownText_0x2c5ef: ; 0x2c5ef
+ ; Um… Oh, yes, I'm the MOVE DELETER. I can make #MON forget moves. Shall I make a #MON forget?
+ text_jump UnknownText_0x1c5f74
+ db "@"
+; 0x2c5f4
+
+UnknownText_0x2c5f4: ; 0x2c5f4
+ ; Which #MON?
+ text_jump UnknownText_0x1c5fd1
+ db "@"
+; 0x2c5f9
+
+Function2c5f9: ; 2c5f9
+ ld a, b
+ push bc
+ dec a
+ ld c, a
+ ld b, 0
+ ld hl, PartyMon1Moves
+ add hl, bc
+ ld a, [CurPartyMon]
+ ld bc, PartyMon2 - PartyMon1
+ call AddNTimes
+ pop bc
+ push bc
+ inc b
+.asm_2c60f
+ ld a, b
+ cp NUM_MOVES + 1
+ jr z, .asm_2c61b
+ inc hl
+ ld a, [hld]
+ ld [hl], a
+ inc hl
+ inc b
+ jr .asm_2c60f
+
+.asm_2c61b
+ xor a
+ ld [hl], a
+ pop bc
+
+ ld a, b
+ push bc
+ dec a
+ ld c, a
+ ld b, 0
+ ld hl, PartyMon1PP
+ add hl, bc
+ ld a, [CurPartyMon]
+ ld bc, PartyMon2 - PartyMon1
+ call AddNTimes
+ pop bc
+ inc b
+.asm_2c633
+ ld a, b
+ cp NUM_MOVES + 1
+ jr z, .asm_2c63f
+ inc hl
+ ld a, [hld]
+ ld [hl], a
+ inc hl
+ inc b
+ jr .asm_2c633
+
+.asm_2c63f
+ xor a
+ ld [hl], a
+ ret
+; 2c642
diff --git a/items/item_effects.asm b/items/item_effects.asm
index e4c3aad8e..5f594c1c7 100644
--- a/items/item_effects.asm
+++ b/items/item_effects.asm
@@ -1380,7 +1380,7 @@ RareCandy: ; ef14
callba Function50e47
pop de
- ld a, $8
+ ld a, PartyMon1Exp - PartyMon1
call GetPartyParamLocation
ld a, [hMultiplicand]
@@ -1390,7 +1390,7 @@ RareCandy: ; ef14
ld a, [$ffb6]
ld [hl], a
- ld a, $24
+ ld a, PartyMon1MaxHP - PartyMon1
call GetPartyParamLocation
ld a, [hli]
ld b, a
@@ -1398,7 +1398,7 @@ RareCandy: ; ef14
push bc
call Functionee8c
- ld a, $25
+ ld a, PartyMon1MaxHP + 1 - PartyMon1
call GetPartyParamLocation
pop bc
@@ -1431,7 +1431,7 @@ RareCandy: ; ef14
hlcoord 11, 1
ld bc, $0004
- predef Function50b7b
+ predef PrintTempMonStats
call Functiona80
@@ -1498,7 +1498,7 @@ Functionefda: ; efda (3:6fda)
ld a, $1
ret z
call Functionf058
- ld a, $20
+ ld a, PartyMon1Status - PartyMon1
call GetPartyParamLocation
ld a, [hl]
and c
@@ -1537,7 +1537,7 @@ Functionf009: ; f009 (3:7009)
Functionf01e: ; f01e (3:701e)
call Functionf2a6
ret nc
- ld a, $22
+ ld a, PartyMon1HP - PartyMon1
call GetPartyParamLocation
ld a, [hli]
ld [BattleMonHP], a
@@ -1955,7 +1955,7 @@ Functionf2ba: ; f2ba (3:72ba)
Functionf2c3: ; f2c3 (3:72c3)
call Functionf36f
asm_f2c6: ; f2c6 (3:72c6)
- ld a, $22
+ ld a, PartyMon1HP - PartyMon1
call GetPartyParamLocation
ld [hl], d
inc hl
@@ -1963,7 +1963,7 @@ asm_f2c6: ; f2c6 (3:72c6)
jp Functionf328
Functionf2d1: ; f2d1 (3:72d1)
- ld a, $23
+ ld a, PartyMon1HP + 1 - PartyMon1
call GetPartyParamLocation
ld a, [hl]
add e
@@ -1973,11 +1973,11 @@ Functionf2d1: ; f2d1 (3:72d1)
ld [hl], a
jr c, .asm_f2f5
call Functionf328
- ld a, $23
+ ld a, PartyMon1HP + 1 - PartyMon1
call GetPartyParamLocation
ld d, h
ld e, l
- ld a, $25
+ ld a, PartyMon1MaxHP + 1 - PartyMon1
call GetPartyParamLocation
ld a, [de]
sub [hl]
@@ -1992,7 +1992,7 @@ Functionf2d1: ; f2d1 (3:72d1)
ret
Functionf2f9: ; f2f9 (3:72f9)
- ld a, $23
+ ld a, PartyMon1HP + 1 - PartyMon1
call GetPartyParamLocation
ld a, [hl]
sub e
@@ -2030,7 +2030,7 @@ Functionf31b: ; f31b (3:731b)
ret
Functionf328: ; f328 (3:7328)
- ld a, $22
+ ld a, PartyMon1HP - PartyMon1
call GetPartyParamLocation
ld a, [hli]
ld [wd1ef], a
@@ -2056,7 +2056,7 @@ Functionf33f: ; f33f
; f348
Functionf348: ; f348 (3:7348)
- ld a, $22
+ ld a, PartyMon1HP - PartyMon1
call GetPartyParamLocation
ld a, [hli]
ld [wd1ed], a
@@ -2073,7 +2073,7 @@ Functionf356: ; f356 (3:7356)
Functionf35f: ; f35f (3:735f)
push hl
- ld a, $24
+ ld a, PartyMon1MaxHP - PartyMon1
call GetPartyParamLocation
ld a, [hli]
ld [Buffer2], a
diff --git a/macros/event.asm b/macros/event.asm
index 82468c2a8..238f18f85 100644
--- a/macros/event.asm
+++ b/macros/event.asm
@@ -80,11 +80,19 @@ callasm: macro
dw \1
endm
+
special: macro
db $0f
- dw \1 ; predefined_script
+ dw (\1Special - SpecialsPointers) / 3
endm
+add_special: MACRO
+\1Special::
+ db BANK(\1)
+ dw \1
+ENDM
+
+
ptcallasm: macro
db $10
dw \1 ; asm
diff --git a/macros/map.asm b/macros/map.asm
index ef62f386f..b5f66bafb 100644
--- a/macros/map.asm
+++ b/macros/map.asm
@@ -64,3 +64,99 @@ warp_def: macro
db \4 ; map group
db \5 ; map number
endm
+
+
+map_header: MACRO
+ ; label, tileset, permission, location, music, time of day, fishing group
+\1_MapHeader:
+ db BANK(\1_SecondMapHeader), \2, \3
+ dw \1_SecondMapHeader
+ db \4, \5, \6, \7
+ENDM
+
+
+map_header_2: MACRO
+; label, map, border block, connections
+\1_SecondMapHeader::
+ db \3
+\2\@HEIGHT EQUS "\2_HEIGHT"
+\2\@WIDTH EQUS "\2_WIDTH"
+ db \2\@HEIGHT, \2\@WIDTH
+ db BANK(\1_BlockData)
+ dw \1_BlockData
+ db BANK(\1_MapScriptHeader)
+ dw \1_MapScriptHeader
+ dw \1_MapEventHeader
+ db \4
+ENDM
+
+connection: MACRO
+if "\1" == "north"
+;\2: map id
+;\3: map label (eventually will be rolled into map id)
+;\4: x
+;\5: offset?
+;\6: strip length
+;\7: this map id
+ map \2
+ dw \3_BlockData + \2_WIDTH * (\2_HEIGHT - 3) + \5
+ dw OverworldMap + \4 + 3
+ db \6
+ db \2_WIDTH
+ db \2_HEIGHT * 2 - 1
+ db (\4 - \5) * -2
+ dw OverworldMap + \2_HEIGHT * (\2_WIDTH + 6) + 1
+endc
+
+if "\1" == "south"
+;\2: map id
+;\3: map label (eventually will be rolled into map id)
+;\4: x
+;\5: offset?
+;\6: strip length
+;\7: this map id
+ map \2
+ dw \3_BlockData + \5
+ dw OverworldMap + (\7_HEIGHT + 3) * (\7_WIDTH + 6) + \4 + 3
+ db \6
+ db \2_WIDTH
+ db 0
+ db (\4 - \5) * -2
+ dw OverworldMap + \2_WIDTH + 7
+endc
+
+if "\1" == "west"
+;\2: map id
+;\3: map label (eventually will be rolled into map id)
+;\4: y
+;\5: offset?
+;\6: strip length
+;\7: this map id
+ map \2
+ dw \3_BlockData + (\2_WIDTH * \5) + \2_WIDTH - 3
+ dw OverworldMap + (\7_WIDTH + 6) * (\4 + 3)
+ db \6
+ db \2_WIDTH
+ db (\4 - \5) * -2
+ db \2_WIDTH * 2 - 1
+ dw OverworldMap + \2_WIDTH * 2 + 6
+endc
+
+if "\1" == "east"
+;\2: map id
+;\3: map label (eventually will be rolled into map id)
+;\4: y
+;\5: offset?
+;\6: strip length
+;\7: this map id
+ map \2
+ dw \3_BlockData + (\2_WIDTH * \5)
+ dw OverworldMap + (\7_WIDTH + 6) * (\4 + 3 + 1) - 3
+ db \6
+ db \2_WIDTH
+ db (\4 - \5) * -2
+ db 0
+ dw OverworldMap + \2_WIDTH + 7
+endc
+
+ENDM
diff --git a/main.asm b/main.asm
index 51aa6bdd8..cf4b7fbc0 100644
--- a/main.asm
+++ b/main.asm
@@ -56,3688 +56,7 @@ PushOAMEnd
; 4049
-INCLUDE "engine/facings.asm"
-
-
-Data4273:: ; 4273
- db $00, $00, $01, $02, $00, $00
- db $06, $00, $01, $0c, $00, $00
- db $03, $00, $01, $00, $00, $00
- db $04, $00, $01, $00, $00, $00
- db $01, $00, $01, $00, $00, $00
- db $02, $00, $01, $00, $00, $00
- db $06, $00, $01, $00, $00, $00
- db $06, $01, $01, $00, $00, $00
- db $06, $02, $01, $00, $00, $00
- db $06, $03, $01, $00, $00, $00
- db $05, $00, $01, $00, $00, $00
- db $07, $00, $01, $02, $00, $00
- db $08, $00, $01, $00, $00, $00
- db $09, $00, $01, $00, $00, $00
- db $0a, $00, $01, $00, $00, $00
- db $0b, $00, $01, $00, $00, $00
- db $0c, $00, $01, $00, $00, $00
- db $0d, $00, $01, $00, $00, $00
- db $0e, $00, $01, $00, $00, $00
- db $0f, $00, $01, $02, $00, $00
- db $10, $00, $01, $02, $00, $00
- db $15, $00, $09, $2e, $01, $c0
- db $16, $00, $0a, $2e, $00, $00
- db $06, $00, $01, $0c, $00, $00
- db $06, $00, $01, $2e, $10, $00
- db $11, $00, $01, $2e, $00, $40
- db $12, $00, $01, $02, $00, $00
- db $13, $00, $00, $8e, $01, $00
- db $14, $00, $08, $8e, $02, $00
- db $17, $00, $00, $82, $00, $00
- db $19, $02, $01, $00, $00, $00
- db $18, $03, $01, $00, $00, $00
- db $11, $00, $0c, $2e, $01, $c0
- db $11, $00, $0d, $2e, $01, $c0
- db $1a, $00, $0e, $8e, $01, $00
- db $1b, $00, $0f, $8e, $02, $00
- db $03, $00, $01, $00, $00, $20
- db $00, $00, $01, $00, $00, $00
-; 4357
-
-
-Function4357:: ; 4357
- push bc
- ld hl, $0001
- add hl, bc
- ld a, [hl]
- push af
- ld h, b
- ld l, c
- ld bc, ObjectStruct2 - ObjectStruct1
- xor a
- call ByteFill
- pop af
- cp $ff
- jr z, .asm_4379
- bit 7, a
- jr nz, .asm_4379
- call GetMapObject
- ld hl, $0000
- add hl, bc
- ld [hl], $ff
-
-.asm_4379
- pop bc
- ret
-; 437b
-
-Function437b: ; 437b
- call Function4386
- ret c
- call Function43f3
- call Function4427
- ret
-; 4386
-
-Function4386: ; 4386
- ld hl, OBJECT_FLAGS
- add hl, bc
- res 6, [hl]
- ld a, [XCoord]
- ld e, a
- ld hl, OBJECT_MAP_X
- add hl, bc
- ld a, [hl]
- add $1
- sub e
- jr c, .asm_43b2
- cp $c
- jr nc, .asm_43b2
- ld a, [YCoord]
- ld e, a
- ld hl, OBJECT_MAP_Y
- add hl, bc
- ld a, [hl]
- add $1
- sub e
- jr c, .asm_43b2
- cp $b
- jr nc, .asm_43b2
- jr .asm_43dc
-
-.asm_43b2
- ld hl, OBJECT_FLAGS
- add hl, bc
- set 6, [hl]
- ld a, [XCoord]
- ld e, a
- ld hl, $0014
- add hl, bc
- ld a, [hl]
- add $1
- sub e
- jr c, .asm_43de
- cp $c
- jr nc, .asm_43de
- ld a, [YCoord]
- ld e, a
- ld hl, $0015
- add hl, bc
- ld a, [hl]
- add $1
- sub e
- jr c, .asm_43de
- cp $b
- jr nc, .asm_43de
-
-.asm_43dc
- and a
- ret
-
-.asm_43de
- ld hl, $0004
- add hl, bc
- bit 1, [hl]
- jr nz, .asm_43eb
- call Function4357
- scf
- ret
-
-.asm_43eb
- ld hl, OBJECT_FLAGS
- add hl, bc
- set 6, [hl]
- and a
- ret
-; 43f3
-
-Function43f3: ; 43f3
- ld hl, $0009
- add hl, bc
- ld a, [hl]
- and a
- jr z, .asm_4409
- ld hl, OBJECT_FLAGS
- add hl, bc
- bit 5, [hl]
- jr nz, .asm_4426
- cp $1
- jr z, .asm_4414
- jr .asm_4421
-
-.asm_4409
- call Function47bc
- ld hl, OBJECT_FLAGS
- add hl, bc
- bit 5, [hl]
- jr nz, .asm_4426
-
-.asm_4414
- call Function47dd
- ld hl, $0009
- add hl, bc
- ld a, [hl]
- and a
- ret z
- cp $1
- ret z
-
-.asm_4421
- ld hl, Pointers4b45
- rst JumpTable
- ret
-
-.asm_4426
- ret
-; 4427
-
-Function4427: ; 4427
- ld hl, $0004
- add hl, bc
- bit 0, [hl]
- jr nz, Function44a3
-
- ld hl, OBJECT_FLAGS
- add hl, bc
- bit 6, [hl]
- jr nz, Function44a3
-
- bit 5, [hl]
- jr nz, Function4448
-
- ld de, Pointers445f
- jr Function444d
-; 4440
-
-Function4440: ; 4440
- ld hl, $0004
- add hl, bc
- bit 0, [hl]
- jr nz, Function44a3
- ; fallthrough
-; 4448
-
-Function4448: ; 4448
- ld de, Pointers445f + 2
- jr Function444d
-; 444d
-
-Function444d: ; 444d
- ld hl, $000b
- add hl, bc
- ld a, [hl]
- ld l, a
- ld h, 0
- add hl, hl
- add hl, hl
- add hl, de
- ld a, [hli]
- ld h, [hl]
- ld l, a
- call _hl_
- ret
-; 445f
-
-Pointers445f: ; 445f
- dw Function44a3
- dw Function44a3
- dw Function44b5
- dw Function44aa
- dw Function44c1
- dw Function44aa
- dw Function4508
- dw Function44aa
- dw Function4529
- dw Function44aa
- dw Function4539
- dw Function44a3
- dw Function456e
- dw Function456e
- dw Function457b
- dw Function44a3
- dw Function4582
- dw Function4582
- dw Function4589
- dw Function4589
- dw Function4590
- dw Function45a4
- dw Function45ab
- dw Function44aa
- dw Function45be
- dw Function45be
- dw Function45c5
- dw Function45c5
- dw Function45da
- dw Function44a3
- dw Function45ed
- dw Function44a3
- dw Function44e4
- dw Function44aa
-; 44a3
-
-Function44a3: ; 44a3
- ld hl, OBJECT_FACING
- add hl, bc
- ld [hl], $ff
- ret
-; 44aa
-
-Function44aa: ; 44aa
- call GetSpriteDirection
- or $0
- ld hl, OBJECT_FACING
- add hl, bc
- ld [hl], a
- ret
-; 44b5
-
-Function44b5: ; 44b5
- ld hl, OBJECT_FACING
- add hl, bc
- ld a, [hl]
- and $1
- jr nz, Function44c1
- jp Function44aa
-; 44c1
-
-Function44c1: ; 44c1
- ld hl, $0004
- add hl, bc
- bit 3, [hl]
- jp nz, Function44aa
- ld hl, $000c
- add hl, bc
- ld a, [hl]
- inc a
- and $f
- ld [hl], a
- rrca
- rrca
- and $3
- ld d, a
- call GetSpriteDirection
- or $0
- or d
- ld hl, OBJECT_FACING
- add hl, bc
- ld [hl], a
- ret
-; 44e4
-
-Function44e4: ; 44e4
- ld hl, $0004
- add hl, bc
- bit 3, [hl]
- jp nz, Function44aa
- ld hl, $000c
- add hl, bc
- ld a, [hl]
- add $2
- and $f
- ld [hl], a
- rrca
- rrca
- and $3
- ld d, a
- call GetSpriteDirection
- or $0
- or d
- ld hl, OBJECT_FACING
- add hl, bc
- ld [hl], a
- ret
-; 4508
-
-Function4508: ; 4508
- ld hl, $0004
- add hl, bc
- bit 3, [hl]
- jp nz, Function44aa
- ld hl, $000c
- add hl, bc
- inc [hl]
- ld a, [hl]
- rrca
- rrca
- rrca
- and $3
- ld d, a
- call GetSpriteDirection
- or $0
- or d
- ld hl, OBJECT_FACING
- add hl, bc
- ld [hl], a
- ret
-; 4529
-
-Function4529: ; 4529
- call Function453f
- ld hl, $0008
- add hl, bc
- ld a, [hl]
- or $0
- ld hl, OBJECT_FACING
- add hl, bc
- ld [hl], a
- ret
-; 4539
-
-Function4539: ; 4539
- call Function453f
- jp Function44a3
-; 453f
-
-Function453f: ; 453f
- ld hl, $000c
- add hl, bc
- ld a, [hl]
- and $f0
- ld e, a
- ld a, [hl]
- inc a
- and $f
- ld d, a
- cp $4
- jr c, .asm_4558
- ld d, 0
- ld a, e
- add $10
- and $30
- ld e, a
-
-.asm_4558
- ld a, d
- or e
- ld [hl], a
- swap e
- ld d, 0
- ld hl, .Directions
- add hl, de
- ld a, [hl]
- ld hl, $0008
- add hl, bc
- ld [hl], a
- ret
-; 456a
-
-.Directions ; 456a
- db $00, $0c, $04, $08
-; 456e
-
-Function456e: ; 456e
- call GetSpriteDirection
- rrca
- rrca
- add $10
- ld hl, OBJECT_FACING
- add hl, bc
- ld [hl], a
- ret
-; 457b
-
-Function457b: ; 457b
- ld hl, OBJECT_FACING
- add hl, bc
- ld [hl], $15
- ret
-; 4582
-
-Function4582: ; 4582
- ld hl, OBJECT_FACING
- add hl, bc
- ld [hl], $14
- ret
-; 4589
-
-Function4589: ; 4589
- ld hl, OBJECT_FACING
- add hl, bc
- ld [hl], $17
- ret
-; 4590
-
-Function4590: ; 4590
- ld hl, $000c
- add hl, bc
- ld a, [hl]
- inc a
- and $f
- ld [hl], a
- and $8
- jr z, Function45a4
- ld hl, OBJECT_FACING
- add hl, bc
- ld [hl], $4
- ret
-; 45a4
-
-Function45a4: ; 45a4
- ld hl, OBJECT_FACING
- add hl, bc
- ld [hl], $0
- ret
-; 45ab
-
-Function45ab: ; 45ab
- ld hl, $000c
- add hl, bc
- ld a, [hl]
- inc a
- ld [hl], a
- and $c
- rrca
- rrca
- add $18
- ld hl, OBJECT_FACING
- add hl, bc
- ld [hl], a
- ret
-; 45be
-
-Function45be: ; 45be
- ld hl, OBJECT_FACING
- add hl, bc
- ld [hl], $16
- ret
-; 45c5
-
-Function45c5: ; 45c5
- ld a, [VariableSprites + 3]
- ld d, $17
- cp $33
- jr z, .asm_45d4
- cp $47
- jr z, .asm_45d4
- ld d, $16
-
-.asm_45d4
- ld hl, OBJECT_FACING
- add hl, bc
- ld [hl], d
- ret
-; 45da
-
-Function45da: ; 45da
- ld hl, $000c
- add hl, bc
- inc [hl]
- ld a, [hl]
-
- ld hl, OBJECT_FACING
- add hl, bc
- and 2
- ld a, $1c
- jr z, .asm_45eb
- inc a
-.asm_45eb
- ld [hl], a
- ret
-; 45ed
-
-Function45ed: ; 45ed
- ld hl, $000c
- add hl, bc
- inc [hl]
- ld a, [hl]
- ld hl, OBJECT_FACING
- add hl, bc
- and 4
- ld a, $1e
- jr z, .asm_45fe
- inc a
-
-.asm_45fe
- ld [hl], a
- ret
-; 4600
-
-Function4600: ; 4600
-
- ld hl, OBJECT_MAP_X
- add hl, bc
- ld a, [hl]
- ld hl, OBJECT_NEXT_MAP_X
- add hl, bc
- ld [hl], a
-
- ld hl, OBJECT_MAP_Y
- add hl, bc
- ld a, [hl]
- ld hl, OBJECT_NEXT_MAP_Y
- add hl, bc
- ld [hl], a
-
- ld hl, OBJECT_STANDING_TILE
- add hl, bc
- ld a, [hl]
- ld hl, OBJECT_NEXT_TILE
- add hl, bc
- ld [hl], a
-
- call Function4661
- ld hl, OBJECT_STANDING_TILE
- add hl, bc
- ld a, [hl]
-
- call Function4679
- ret
-; 462a
-
-Function462a: ; 462a
-
- ld hl, OBJECT_NEXT_MAP_X
- add hl, bc
- ld a, [hl]
- ld hl, OBJECT_MAP_X
- add hl, bc
- ld [hl], a
-
- ld hl, OBJECT_NEXT_MAP_Y
- add hl, bc
- ld a, [hl]
- ld hl, OBJECT_MAP_Y
- add hl, bc
- ld [hl], a
-
- ret
-; 463f
-
-Function463f: ; 463f
- ld hl, OBJECT_FLAGS
- add hl, bc
- bit 3, [hl]
- jr z, .asm_464f
- ld hl, $000e
- add hl, bc
- ld a, [hl]
- call Function4661
-
-.asm_464f
- ld hl, $000e
- add hl, bc
- ld a, [hl]
- call Function4679
- ret c
- ld hl, $000f
- add hl, bc
- ld a, [hl]
- call Function4679
- ret
-; 4661
-
-Function4661: ; 4661
- call Function188e
- jr z, .asm_466b
- call Function1875
- jr c, .asm_4672
-
-.asm_466b
- ld hl, $0005
- add hl, bc
- set 3, [hl]
- ret
-
-.asm_4672
- ld hl, $0005
- add hl, bc
- res 3, [hl]
- ret
-; 4679
-
-Function4679: ; 4679
- and a
- ret
-; 467b
-
-Function467b: ; 467b
- xor a
- ld hl, $000c
- add hl, bc
- ld [hl], a
- ld hl, $001b
- add hl, bc
- ld [hli], a
- ld [hli], a
- ld [hli], a
- ld [hl], a
- ld hl, $0007
- add hl, bc
- ld [hl], $ff
- ret
-; 4690
-
-Function4690: ; 4690
- ld hl, $0007
- add hl, bc
- ld [hl], a
- ld hl, $0004
- add hl, bc
- bit 2, [hl]
- jr nz, .asm_46a6
-
- add a
- add a
- and $c
- ld hl, $0008
- add hl, bc
- ld [hl], a
-
-.asm_46a6
- ; fallthrough
-; 46a6
-
-Function46a6: ; 46a6
-
- call GetStepVector
-
- ld hl, OBJECT_STEP_DURATION
- add hl, bc
- ld [hl], a
-
- ld a, d
- call Function4730
- ld hl, OBJECT_NEXT_MAP_X
- add hl, bc
- add [hl]
- ld hl, OBJECT_MAP_X
- add hl, bc
- ld [hl], a
- ld d, a
-
- ld a, e
- call Function4730
- ld hl, OBJECT_NEXT_MAP_Y
- add hl, bc
- add [hl]
- ld hl, OBJECT_MAP_Y
- add hl, bc
- ld [hl], a
- ld e, a
-
- push bc
- call Function2a3c
- pop bc
-
- ld hl, $000e
- add hl, bc
- ld [hl], a
-
- ret
-; 46d7
-
-Function46d7: ; 46d7
-
- call GetStepVector
-
- ld hl, OBJECT_SPRITE_X
- add hl, bc
- ld a, [hl]
- add d
- ld [hl], a
-
- ld hl, OBJECT_SPRITE_Y
- add hl, bc
- ld a, [hl]
- add e
- ld [hl], a
-
- ret
-; 46e9
-
-GetStepVector: ; 46e9
-; Return (x, y, duration, speed) in (d, e, a, h).
- ld hl, $0007
- add hl, bc
- ld a, [hl]
- and $f
- add a
- add a
- ld l, a
- ld h, 0
- ld de, StepVectors
- add hl, de
- ld d, [hl]
- inc hl
- ld e, [hl]
- inc hl
- ld a, [hli]
- ld h, [hl]
- ret
-; 4700
-
-StepVectors: ; 4700
-; x, y, duration, speed
- ; slow
- db 0, 1, 16, 1
- db 0, -1, 16, 1
- db -1, 0, 16, 1
- db 1, 0, 16, 1
- ; normal
- db 0, 2, 8, 2
- db 0, -2, 8, 2
- db -2, 0, 8, 2
- db 2, 0, 8, 2
- ; fast
- db 0, 4, 4, 4
- db 0, -4, 4, 4
- db -4, 0, 4, 4
- db 4, 0, 4, 4
-; 4730
-
-Function4730: ; 4730
- add a
- ret z
- ld a, 1
- ret nc
- ld a, -1
- ret
-; 4738
-
-Function4738: ; 4738
- ld hl, $0007
- add hl, bc
- ld a, [hl]
- and $3
- ld [wd151], a
- call Function46d7
- ld a, [wd14e]
- add d
- ld [wd14e], a
- ld a, [wd14f]
- add e
- ld [wd14f], a
- ld hl, wd150
- set 5, [hl]
- ret
-; 4759
-
-Function4759: ; 4759
- push bc
- ld e, a
- ld d, 0
- ld hl, $0001
- add hl, bc
- ld a, [hl]
- call GetMapObject
- add hl, de
- ld a, [hl]
- pop bc
- ret
-; 4769
-
-Function4769: ; 4769
- ld hl, $0001
- add hl, bc
- ld a, [hl]
- cp $ff
- jr z, .asm_477d
- push bc
- call GetMapObject
- ld hl, $0004
- add hl, bc
- ld a, [hl]
- pop bc
- ret
-
-.asm_477d
- ld a, $6
- ret
-; 4780
-
-Function4780: ; 4780
- ld hl, $001b
- add hl, bc
- ld [hl], $0
- ret
-; 4787
-
-Function4787: ; 4787
- ld hl, $001b
- add hl, bc
- inc [hl]
- ret
-; 478d
-
-Function478d: ; 478d
- ld hl, $001b
- add hl, bc
- dec [hl]
- ret
-; 4793
-
-Function4793: ; 4793
- ld hl, $001b
- add hl, bc
- ld a, [hl]
- pop hl
- rst JumpTable
- ret
-; 479b
-
-Function479b: ; 479b
- ld hl, $001c
- add hl, bc
- ld [hl], $0
- ret
-; 47a2
-
-Function47a2: ; 47a2
- ld hl, $001c
- add hl, bc
- inc [hl]
- ret
-; 47a8
-
-Function47a8: ; 47a8
- ld hl, $001c
- add hl, bc
- ld a, [hl]
- pop hl
- rst JumpTable
- ret
-; 47b0
-
-Function47b0: ; 47b0
- ld hl, $001c
- add hl, bc
- ld a, [hl]
- ret
-; 47b6
-
-Function47b6: ; 47b6
- ld hl, $001c
- add hl, bc
- ld [hl], a
- ret
-; 47bc
-
-Function47bc: ; 47bc
- ld hl, OBJECT_MAP_X
- add hl, bc
- ld d, [hl]
- ld hl, OBJECT_MAP_Y
- add hl, bc
- ld e, [hl]
- push bc
- call Function2a3c
- pop bc
- ld hl, OBJECT_STANDING_TILE
- add hl, bc
- ld [hl], a
- call Function4600
- call Function467b
- ld hl, $0009
- add hl, bc
- ld [hl], $1
- ret
-; 47dd
-
-Function47dd: ; 47dd
- call Function479b
- call Function1a2f
- ld a, [hl]
- ld hl, .Pointers
- rst JumpTable
- ret
-; 47e9
-
-.Pointers ; 47e9
- dw Function4821
- dw Function4822
- dw Function482c
- dw Function4838
- dw Function4842
- dw Function4851
- dw Function4869
- dw Function487c
- dw Function4882
- dw Function4888
- dw Function488e
- dw Function4891
- dw Function4894
- dw Function4897
- dw Function489d
- dw Function48a0
- dw Function48a6
- dw Function48ac
- dw Function48ff
- dw Function49e5
- dw Function4a21
- dw Function4958
- dw Function496e
- dw Function4abc
- dw Function498d
- dw Function4984
- dw Function4a46
- dw Function4a89
-; 4821
-
-Function4821: ; 4821
- ret
-; 4822
-
-Function4822: ; 4822
- call Random
- ld a, [hRandomAdd]
- and 1
- jp Function4af0
-; 482c
-
-Function482c: ; 482c
- call Random
- ld a, [hRandomAdd]
- and 1
- or 2
- jp Function4af0
-; 4838
-
-Function4838: ; 4838
- call Random
- ld a, [hRandomAdd]
- and 3
- jp Function4af0
-; 4842
-
-Function4842: ; 4842
- call Random
- ld a, [hRandomAdd]
- and $c
- ld hl, $0008
- add hl, bc
- ld [hl], a
- jp Function4b1d
-; 4851
-
-Function4851: ; 4851
- ld hl, $0008
- add hl, bc
- ld a, [hl]
- and $c
- ld d, a
- call Random
- ld a, [hRandomAdd]
- and $c
- cp d
- jr nz, .asm_4865
- xor $c
-
-.asm_4865
- ld [hl], a
- jp Function4b26
-; 4869
-
-Function4869: ; 4869
- call Function462a
- call Function467b
- ld hl, $000b
- add hl, bc
- ld [hl], $1
- ld hl, $0009
- add hl, bc
- ld [hl], $5
- ret
-; 487c
-
-Function487c: ; 487c
- ld hl, Function5000
- jp Function5041
-; 4882
-
-Function4882: ; 4882
- ld hl, Function5015
- jp Function5041
-; 4888
-
-Function4888: ; 4888
- ld hl, Function5026
- jp Function5041
-; 488e
-
-Function488e: ; 488e
- jp Function5037
-; 4891
-
-Function4891: ; 4891
- jp Function5037
-; 4894
-
-Function4894: ; 4894
- jp Function5037
-; 4897
-
-Function4897: ; 4897
- ld hl, Function5000
- jp Function5041
-; 489d
-
-Function489d: ; 489d
- jp Function5037
-; 48a0
-
-Function48a0: ; 48a0
- ld hl, Function54e6
- jp Function5041
-; 48a6
-
-Function48a6: ; 48a6
- ld hl, Function500e
- jp Function5041
-; 48ac
-
-Function48ac: ; 48ac
- call Function4793
- dw Function48b3
- dw Function48f8
-; 48b3
-
-Function48b3: ; 48b3
- ld hl, $000e
- add hl, bc
- ld a, [hl]
- call CheckPitTile
- jr z, .asm_48f5
- ld hl, $0005
- add hl, bc
- bit 2, [hl]
- res 2, [hl]
- jr z, .asm_48ee
- ld hl, $0020
- add hl, bc
- ld a, [hl]
- and $3
- or $0
- call Function4690
- call Function6ec1
- jr c, .asm_48eb
- ld de, SFX_STRENGTH
- call PlaySFX
- call Function5538
- call Function463f
- ld hl, $0009
- add hl, bc
- ld [hl], $f
- ret
-
-.asm_48eb
- call Function462a
-
-.asm_48ee
- ld hl, $0007
- add hl, bc
- ld [hl], $ff
- ret
-
-.asm_48f5
- call Function4787
- ; fallthrough
-; 48f8
-
-Function48f8: ; 48f8
- ld hl, $0007
- add hl, bc
- ld [hl], $ff
- ret
-; 48ff
-
-Function48ff: ; 48ff
- ld hl, $0010
- add hl, bc
- ld d, [hl]
- ld hl, $0011
- add hl, bc
- ld e, [hl]
- ld hl, $0020
- add hl, bc
- ld a, [hl]
- push bc
- call Function1ae5
- ld hl, $0007
- add hl, bc
- ld a, [hl]
- cp $ff
- jr z, .asm_494a
- ld hl, $0012
- add hl, bc
- ld a, [hl]
- cp d
- jr z, .asm_492d
- jr c, .asm_4929
- ld a, $3
- jr .asm_493d
-
-.asm_4929
- ld a, $2
- jr .asm_493d
-
-.asm_492d
- ld hl, $0013
- add hl, bc
- ld a, [hl]
- cp e
- jr z, .asm_494a
- jr c, .asm_493b
- ld a, $0
- jr .asm_493d
-
-.asm_493b
- ld a, $1
-
-.asm_493d
- ld d, a
- ld hl, $0007
- add hl, bc
- ld a, [hl]
- and $c
- or d
- pop bc
- jp Function5412
-
-.asm_494a
- pop bc
- ld hl, $0007
- add hl, bc
- ld [hl], $ff
- ld hl, $000b
- add hl, bc
- ld [hl], $1
- ret
-; 4958
-
-Function4958: ; 4958
- call Function467b
- ld hl, $0007
- add hl, bc
- ld [hl], $ff
- ld hl, $000b
- add hl, bc
- ld [hl], $9
- ld hl, $0009
- add hl, bc
- ld [hl], $4
- ret
-; 496e
-
-Function496e: ; 496e
- call Function467b
- ld hl, $0007
- add hl, bc
- ld [hl], $ff
- ld hl, $000b
- add hl, bc
- ld [hl], $a
- ld hl, $0009
- add hl, bc
- ld [hl], $4
- ret
-; 4984
-
-Function4984: ; 4984
- call Function4793
- dw Function4996
- dw Function499c
- dw Function49b8
-; 498d
-
-Function498d: ; 498d
- call Function4793
- dw Function4996
- dw Function499c
- dw Function49c4
-; 4996
-
-Function4996: ; 4996
- call Function467b
- call Function4787
- ; fallthrough
-; 499c
-
-Function499c: ; 499c
- ld hl, $000b
- add hl, bc
- ld [hl], $1
- ld hl, $0020
- add hl, bc
- ld a, [hl]
- ld a, $10
- ld hl, OBJECT_STEP_DURATION
- add hl, bc
- ld [hl], a
- ld hl, $0009
- add hl, bc
- ld [hl], $3
- call Function4787
- ret
-; 49b8
-
-Function49b8: ; 49b8
- ld de, .data_49c0
- call Function49d0
- jr Function4984
-; 49c0
-
-.data_49c0 ; 49c0
- db $0c, $08, $00, $04
-; 49c4
-
-Function49c4: ; 49c4
- ld de, .data_49cc
- call Function49d0
- jr Function498d
-; 49cc
-
-.data_49cc ; 49cc
- db $08, $0c, $04, $00
-; 49d0
-
-Function49d0: ; 49d0
- ld hl, $0008
- add hl, bc
- ld a, [hl]
- and $c
- rrca
- rrca
- push hl
- ld l, a
- ld h, $0
- add hl, de
- ld a, [hl]
- pop hl
- ld [hl], a
- call Function478d
- ret
-; 49e5
-
-Function49e5: ; 49e5
- call Function4aa8
- ld hl, $000b
- add hl, bc
- ld [hl], $7
- ld hl, OBJECT_STEP_DURATION
- add hl, de
- ld a, [hl]
- inc a
- add a
- add $0
- ld hl, OBJECT_STEP_DURATION
- add hl, bc
- ld [hl], a
- ld hl, $0007
- add hl, de
- ld a, [hl]
- and 3
- ld d, $e
- cp 0
- jr z, .asm_4a0f
- cp 1
- jr z, .asm_4a0f
- ld d, $c
-
-.asm_4a0f
- ld hl, OBJECT_SPRITE_Y_OFFSET
- add hl, bc
- ld [hl], d
- ld hl, OBJECT_SPRITE_X_OFFSET
- add hl, bc
- ld [hl], $0
- ld hl, $0009
- add hl, bc
- ld [hl], $13
- ret
-; 4a21
-
-Function4a21: ; 4a21
- call Function467b
- call Function4aa8
- ld hl, $000b
- add hl, bc
- ld [hl], $8
- ld hl, OBJECT_STEP_DURATION
- add hl, bc
- ld [hl], $0
- ld hl, OBJECT_SPRITE_Y_OFFSET
- add hl, bc
- ld [hl], $f0
- ld hl, OBJECT_SPRITE_X_OFFSET
- add hl, bc
- ld [hl], $0
- ld hl, $0009
- add hl, bc
- ld [hl], $13
- ret
-; 4a46
-
-Function4a46: ; 4a46
- call Function467b
- call Function4aa8
- ld hl, $000b
- add hl, bc
- ld [hl], $e
- ld hl, OBJECT_STEP_DURATION
- add hl, de
- ld a, [hl]
- inc a
- add a
- ld hl, OBJECT_STEP_DURATION
- add hl, bc
- ld [hl], a
- ld hl, $0007
- add hl, de
- ld a, [hl]
- and 3
- ld e, a
- ld d, 0
- ld hl, .data_4a81
- add hl, de
- add hl, de
- ld d, [hl]
- inc hl
- ld e, [hl]
- ld hl, OBJECT_SPRITE_X_OFFSET
- add hl, bc
- ld [hl], d
- ld hl, OBJECT_SPRITE_Y_OFFSET
- add hl, bc
- ld [hl], e
- ld hl, $0009
- add hl, bc
- ld [hl], $13
- ret
-; 4a81
-
-.data_4a81 ; 4a81
- ; x, y
- db 0, -4
- db 0, 8
- db 6, 2
- db -6, 2
-; 4a89
-
-Function4a89: ; 4a89
- call Function467b
- call Function4aa8
- ld hl, $000b
- add hl, bc
- ld [hl], $f
- ld hl, OBJECT_STEP_DURATION
- add hl, de
- ld a, [hl]
- add $ff
- ld hl, OBJECT_STEP_DURATION
- add hl, bc
- ld [hl], a
- ld hl, $0009
- add hl, bc
- ld [hl], $13
- ret
-; 4aa8
-
-Function4aa8: ; 4aa8
- ld hl, $0020
- add hl, bc
- ld a, [hl]
- push bc
- call Function1ae5
- ld d, b
- ld e, c
- pop bc
- ld hl, $001d
- add hl, bc
- ld [hl], e
- inc hl
- ld [hl], d
- ret
-; 4abc
-
-Function4abc: ; 4abc
- call Function467b
- ld hl, $000b
- add hl, bc
- ld [hl], $0
- ld hl, $0020
- add hl, bc
- ld a, [hl]
- call Function4ade
- ld hl, OBJECT_STEP_DURATION
- add hl, bc
- ld [hl], e
- ld hl, $001e
- add hl, bc
- ld [hl], a
- ld hl, $0009
- add hl, bc
- ld [hl], $15
- ret
-; 4ade
-
-Function4ade: ; 4ade
- ld d, a
- and $3f
- ld e, a
- ld a, d
- rlca
- rlca
- and $3
- ld d, a
- inc d
- ld a, $1
-.asm_4aeb
- dec d
- ret z
- add a
- jr .asm_4aeb
-; 4af0
-
-Function4af0: ; 4af0
- call Function4690
- call Function6ec1
- jr c, Function4b17
- call Function463f
- ld hl, $000b
- add hl, bc
- ld [hl], $2
- ld hl, wd4cf
- ld a, [$ffaf]
- cp [hl]
- jr z, .asm_4b10
- ld hl, $0009
- add hl, bc
- ld [hl], $7
- ret
-
-.asm_4b10
- ld hl, $0009
- add hl, bc
- ld [hl], $6
- ret
-
-Function4b17: ; 4b17
- call Function467b
- call Function462a
- ; fallthrough
-; 4b1d
-
-Function4b1d: ; 4b1d
- call Random
- ld a, [hRandomAdd]
- and $7f
- jr Function4b2d
-; 4b26
-
-Function4b26: ; 4b26
- call Random
- ld a, [hRandomAdd]
- and $1f
- ; fallthrough
-; 4b2d
-
-Function4b2d: ; 4b2d
- ld hl, OBJECT_STEP_DURATION
- add hl, bc
- ld [hl], a
- ld hl, $0007
- add hl, bc
- ld [hl], $ff
- ld hl, $000b
- add hl, bc
- ld [hl], $1
- ld hl, $0009
- add hl, bc
- ld [hl], $3
- ret
-; 4b45
-
-Pointers4b45: ; 4b45
- dw Function47bc
- dw Function47dd
- dw Function4e2b
- dw Function4ddd
- dw Function4e21
- dw Function4e0c
- dw Function4e56
- dw Function4e47
- dw Function4b86
- dw Function4bbf
- dw Function4e83
- dw Function4dff
- dw Function4c18
- dw Function4c89
- dw Function4d14
- dw Function4ecd
- dw Function4d7e
- dw Function4daf
- dw Function4dc8
- dw Function4f04
- dw Function4f33
- dw Function4f33
- dw Function4f77
- dw Function4f7a
- dw Function4df0
- dw Function4f83
-; 4b79
-
-Function4b79: ; 4b79
- ld hl, OBJECT_STEP_DURATION
- add hl, bc
- dec [hl]
- ret nz
- ld hl, $0009
- add hl, bc
- ld [hl], $1
- ret
-; 4b86
-
-Function4b86: ; 4b86
- call Function47a8
- dw Function4b8d
- dw Function4ba9
-; 4b8d
-
-Function4b8d: ; 4b8d
- call Function46d7
- call UpdateJumpPosition
- ld hl, OBJECT_STEP_DURATION
- add hl, bc
- dec [hl]
- ret nz
- call Function4600
- call Function46a6
- ld hl, $0005
- add hl, bc
- res 3, [hl]
- call Function47a2
- ret
-; 4ba9
-
-Function4ba9: ; 4ba9
- call Function46d7
- call UpdateJumpPosition
- ld hl, OBJECT_STEP_DURATION
- add hl, bc
- dec [hl]
- ret nz
- call Function4600
- ld hl, $0009
- add hl, bc
- ld [hl], $1
- ret
-; 4bbf
-
-Function4bbf: ; 4bbf
- call Function47a8
- dw Function4bca
- dw Function4bd2
- dw Function4bf2
- dw Function4bfd
-; 4bca
-
-Function4bca: ; 4bca
- ld hl, wd150
- set 7, [hl]
- call Function47a2
-; fallthrough
-; 4bd2
-
-Function4bd2: ; 4bd2
- call UpdateJumpPosition
- call Function4738
- ld hl, OBJECT_STEP_DURATION
- add hl, bc
- dec [hl]
- ret nz
- call Function4600
- ld hl, $0005
- add hl, bc
- res 3, [hl]
- ld hl, wd150
- set 6, [hl]
- set 4, [hl]
- call Function47a2
- ret
-; 4bf2
-
-Function4bf2: ; 4bf2
- call Function46a6
- ld hl, wd150
- set 7, [hl]
- call Function47a2
-; fallthrough
-; 4bfd
-
-Function4bfd: ; 4bfd
- call UpdateJumpPosition
- call Function4738
- ld hl, OBJECT_STEP_DURATION
- add hl, bc
- dec [hl]
- ret nz
- ld hl, wd150
- set 6, [hl]
- call Function4600
- ld hl, $0009
- add hl, bc
- ld [hl], $1
- ret
-; 4c18
-
-Function4c18: ; 4c18
- call Function47a8
- dw Function4c23
- dw Function4c32
- dw Function4c42
- dw Function4c5d
-; 4c23
-
-Function4c23: ; 4c23
- ld hl, $000c
- add hl, bc
- ld [hl], $0
- ld hl, OBJECT_STEP_DURATION
- add hl, bc
- ld [hl], $10
- call Function47a2
-; fallthrough
-; 4c32
-
-Function4c32: ; 4c32
- ld hl, $000b
- add hl, bc
- ld [hl], $4
- ld hl, OBJECT_STEP_DURATION
- add hl, bc
- dec [hl]
- ret nz
- call Function47a2
- ret
-; 4c42
-
-Function4c42: ; 4c42
- ld hl, $000c
- add hl, bc
- ld [hl], $0
- ld hl, $001f
- add hl, bc
- ld [hl], $10
- ld hl, OBJECT_STEP_DURATION
- add hl, bc
- ld [hl], $10
- ld hl, $0005
- add hl, bc
- res 3, [hl]
- call Function47a2
-; fallthrough
-; 4c5d
-
-Function4c5d: ; 4c5d
- ld hl, $000b
- add hl, bc
- ld [hl], $4
- ld hl, $001f
- add hl, bc
- inc [hl]
- ld a, [hl]
- ld d, $60
- call Sine
- ld a, h
- sub $60
- ld hl, OBJECT_SPRITE_Y_OFFSET
- add hl, bc
- ld [hl], a
- ld hl, OBJECT_STEP_DURATION
- add hl, bc
- dec [hl]
- ret nz
- ld hl, $000c
- add hl, bc
- ld [hl], $0
- ld hl, $0009
- add hl, bc
- ld [hl], $1
- ret
-; 4c89
-
-Function4c89: ; 4c89
- call Function47a8
- dw Function4c9a
- dw Function4caa
- dw Function4cb3
- dw Function4cc9
- dw Function4ceb
- dw Function4cf5
- dw Function4d01
-; 4c9a
-
-Function4c9a: ; 4c9a
- ld hl, $000b
- add hl, bc
- ld [hl], $0
- ld hl, OBJECT_STEP_DURATION
- add hl, bc
- ld [hl], $10
- call Function47a2
- ret
-; 4caa
-
-Function4caa: ; 4caa
- ld hl, OBJECT_STEP_DURATION
- add hl, bc
- dec [hl]
- ret nz
- call Function47a2
-; fallthrough
-; 4cb3
-
-Function4cb3: ; 4cb3
- ld hl, $000c
- add hl, bc
- ld [hl], $0
- ld hl, $001f
- add hl, bc
- ld [hl], $0
- ld hl, OBJECT_STEP_DURATION
- add hl, bc
- ld [hl], $10
- call Function47a2
- ret
-; 4cc9
-
-Function4cc9: ; 4cc9
- ld hl, $000b
- add hl, bc
- ld [hl], $4
- ld hl, $001f
- add hl, bc
- inc [hl]
- ld a, [hl]
- ld d, $60
- call Sine
- ld a, h
- sub $60
- ld hl, OBJECT_SPRITE_Y_OFFSET
- add hl, bc
- ld [hl], a
- ld hl, OBJECT_STEP_DURATION
- add hl, bc
- dec [hl]
- ret nz
- call Function47a2
-; fallthrough
-; 4ceb
-
-Function4ceb: ; 4ceb
- ld hl, OBJECT_STEP_DURATION
- add hl, bc
- ld [hl], $10
- call Function47a2
- ret
-; 4cf5
-
-Function4cf5: ; 4cf5
- ld hl, $000b
- add hl, bc
- ld [hl], $4
- ld hl, OBJECT_STEP_DURATION
- add hl, bc
- dec [hl]
- ret nz
-; 4d01
-
-Function4d01: ; 4d01
- ld hl, $000c
- add hl, bc
- ld [hl], $0
- ld hl, OBJECT_SPRITE_Y_OFFSET
- add hl, bc
- ld [hl], $0
- ld hl, $0009
- add hl, bc
- ld [hl], $1
- ret
-; 4d14
-
-Function4d14: ; 4d14
- call Function47a8
- dw Function4d1f
- dw Function4d2e
- dw Function4d4f
- dw Function4d6b
-; 4d1f
-
-Function4d1f: ; 4d1f
- ld hl, $000b
- add hl, bc
- ld [hl], $0
- ld hl, OBJECT_STEP_DURATION
- add hl, bc
- ld [hl], $10
- call Function47a2
-; fallthrough
-; 4d2e
-
-Function4d2e: ; 4d2e
- ld hl, OBJECT_STEP_DURATION
- add hl, bc
- dec [hl]
- ret nz
- ld hl, $000b
- add hl, bc
- ld [hl], $2
- ld hl, $000c
- add hl, bc
- ld [hl], $0
- ld hl, $001f
- add hl, bc
- ld [hl], $0
- ld hl, OBJECT_STEP_DURATION
- add hl, bc
- ld [hl], $10
- call Function47a2
-; fallthrough
-; 4d4f
-
-Function4d4f: ; 4d4f
- ld hl, $001f
- add hl, bc
- inc [hl]
- ld a, [hl]
- ld d, $60
- call Sine
- ld a, h
- sub $60
- ld hl, OBJECT_SPRITE_Y_OFFSET
- add hl, bc
- ld [hl], a
- ld hl, OBJECT_STEP_DURATION
- add hl, bc
- dec [hl]
- ret nz
- call Function47a2
-; fallthrough
-; 4d6b
-
-Function4d6b: ; 4d6b
- ld hl, $000c
- add hl, bc
- ld [hl], $0
- ld hl, OBJECT_SPRITE_Y_OFFSET
- add hl, bc
- ld [hl], $0
- ld hl, $0009
- add hl, bc
- ld [hl], $1
- ret
-; 4d7e
-
-Function4d7e: ; 4d7e
- call Function47a8
- dw Function4d85
- dw Function4d94
-; 4d85
-
-Function4d85: ; 4d85
- ld hl, OBJECT_STEP_DURATION
- add hl, bc
- ld [hl], $8
- ld hl, OBJECT_SPRITE_Y_OFFSET
- add hl, bc
- ld [hl], $0
- call Function47a2
- ; fallthrough
-; 4d94
-
-Function4d94: ; 4d94
- ld hl, OBJECT_SPRITE_Y_OFFSET
- add hl, bc
- ld a, [hl]
- xor 1
- ld [hl], a
- ld hl, OBJECT_STEP_DURATION
- add hl, bc
- dec [hl]
- ret nz
- ld hl, OBJECT_SPRITE_Y_OFFSET
- add hl, bc
- ld [hl], $0
- ld hl, $0009
- add hl, bc
- ld [hl], $1
- ret
-; 4daf
-
-Function4daf: ; 4daf
- call Function4db5
- jp Function4b79
-; 4db5
-
-Function4db5: ; 4db5
- ld hl, OBJECT_STEP_DURATION
- add hl, bc
- ld a, [hl]
- and $1
- ld a, $1
- jr z, .asm_4dc2
- ld a, $0
-
-.asm_4dc2
- ld hl, $000b
- add hl, bc
- ld [hl], a
- ret
-; 4dc8
-
-Function4dc8: ; 4dc8
- ld hl, OBJECT_STEP_DURATION
- add hl, bc
- ld a, [hl]
- and $1
- ld a, $4
- jr z, .asm_4dd5
- ld a, $5
-
-.asm_4dd5
- ld hl, $000b
- add hl, bc
- ld [hl], a
- jp Function4b79
-; 4ddd
-
-Function4ddd: ; 4ddd
- ld hl, $0007
- add hl, bc
- ld [hl], $ff
- ld hl, OBJECT_STEP_DURATION
- add hl, bc
- dec [hl]
- ret nz
- ld hl, $0009
- add hl, bc
- ld [hl], $1
- ret
-; 4df0
-
-Function4df0: ; 4df0
- ld hl, $0007
- add hl, bc
- ld [hl], $ff
- ld hl, OBJECT_STEP_DURATION
- add hl, bc
- dec [hl]
- ret nz
- jp Function4357
-; 4dff
-
-Function4dff: ; 4dff
- ld hl, OBJECT_STEP_DURATION
- add hl, bc
- dec [hl]
- ret nz
- ld hl, $0009
- add hl, bc
- ld [hl], $1
- ret
-; 4e0c
-
-Function4e0c: ; 4e0c
- call Function47a8
- dw Function4e13
- dw Function4e21
-; 4e13
-
-Function4e13: ; 4e13
- call Function4769
- call Function1a47
- ld hl, $0008
- add hl, bc
- ld [hl], a
- call Function47a2
- ; fallthrough
-; 4e21
-
-Function4e21: ; 4e21
- call Function4fb2
- ld hl, $0007
- add hl, bc
- ld [hl], $ff
- ret
-; 4e2b
-
-Function4e2b: ; 4e2b
- call Function4fb2
- call Function46d7
- ld hl, OBJECT_STEP_DURATION
- add hl, bc
- dec [hl]
- ret nz
- call Function4600
- ld hl, $0007
- add hl, bc
- ld [hl], $ff
- ld hl, $0009
- add hl, bc
- ld [hl], $1
- ret
-; 4e47
-
-Function4e47: ; 4e47
- call Function46d7
- ld hl, OBJECT_STEP_DURATION
- add hl, bc
- dec [hl]
- ret nz
- call Function4600
- jp Function4b1d
-; 4e56
-
-Function4e56: ; 4e56
-; AnimateStep?
- call Function47a8
- dw Function4e5d
- dw Function4e65
-; 4e5d
-
-Function4e5d: ; 4e5d
- ld hl, wd150
- set 7, [hl]
- call Function47a2
- ; fallthrough
-; 4e65
-
-Function4e65: ; 4e65
- call Function4738
- ld hl, OBJECT_STEP_DURATION
- add hl, bc
- dec [hl]
- ret nz
- ld hl, wd150
- set 6, [hl]
- call Function4600
- ld hl, $0007
- add hl, bc
- ld [hl], $ff
- ld hl, $0009
- add hl, bc
- ld [hl], $1
- ret
-; 4e83
-
-Function4e83: ; 4e83
- call Function47a8
- dw Function4e8e
- dw Function4ea4
- dw Function4ead
- dw Function4ec0
-; 4e8e
-
-Function4e8e: ; 4e8e
- ld hl, $0007
- add hl, bc
- ld [hl], $ff
- ld hl, $000c
- add hl, bc
- ld a, [hl]
- ld [hl], $2
- ld hl, OBJECT_STEP_DURATION
- add hl, bc
- ld [hl], $2
- call Function47a2
- ; fallthrough
-; 4ea4
-
-Function4ea4: ; 4ea4
- ld hl, OBJECT_STEP_DURATION
- add hl, bc
- dec [hl]
- ret nz
- call Function47a2
- ; fallthrough
-; 4ead
-
-Function4ead: ; 4ead
- ld hl, $001d
- add hl, bc
- ld a, [hl]
- ld hl, $0008
- add hl, bc
- ld [hl], a
- ld hl, OBJECT_STEP_DURATION
- add hl, bc
- ld [hl], $2
- call Function47a2
- ; fallthrough
-; 4ec0
-
-Function4ec0: ; 4ec0
- ld hl, OBJECT_STEP_DURATION
- add hl, bc
- dec [hl]
- ret nz
- ld hl, $0009
- add hl, bc
- ld [hl], $1
- ret
-; 4ecd
-
-Function4ecd: ; 4ecd
- call Function46d7
- ld hl, OBJECT_STEP_DURATION
- add hl, bc
- dec [hl]
- ret nz
- push bc
- ld hl, OBJECT_MAP_X
- add hl, bc
- ld d, [hl]
- ld hl, OBJECT_MAP_Y
- add hl, bc
- ld e, [hl]
- ld hl, $0001
- add hl, bc
- ld a, [hl]
- ld b, a
- callba Function807e
- pop bc
- ld hl, OBJECT_FLAGS
- add hl, bc
- res 2, [hl]
- call Function4600
- ld hl, $0007
- add hl, bc
- ld [hl], $ff
- ld hl, $0009
- add hl, bc
- ld [hl], $1
- ret
-; 4f04
-
-Function4f04: ; 4f04
- ld hl, $001d
- add hl, bc
- ld e, [hl]
- inc hl
- ld d, [hl]
- ld hl, $0000
- add hl, de
- ld a, [hl]
- and a
- jr z, .asm_4f30
- ld hl, OBJECT_SPRITE_X
- add hl, de
- ld a, [hl]
- ld hl, OBJECT_SPRITE_X
- add hl, bc
- ld [hl], a
- ld hl, OBJECT_SPRITE_Y
- add hl, de
- ld a, [hl]
- ld hl, OBJECT_SPRITE_Y
- add hl, bc
- ld [hl], a
- ld hl, OBJECT_STEP_DURATION
- add hl, bc
- ld a, [hl]
- and a
- ret z
- dec [hl]
- ret nz
-
-.asm_4f30
- jp Function4357
-; 4f33
-
-Function4f33: ; 4f33
- call Function47a8
- dw Function4f3a
- dw Function4f43
-; 4f3a
-
-Function4f3a: ; 4f3a
- xor a
- ld hl, $001d
- add hl, bc
- ld [hl], a
- call Function47a2
- ; fallthrough
-; 4f43
-
-Function4f43: ; 4f43
- ld hl, $001d
- add hl, bc
- ld d, [hl]
- ld a, [wd14f]
- sub d
- ld [wd14f], a
- ld hl, OBJECT_STEP_DURATION
- add hl, bc
- dec [hl]
- jr z, .asm_4f68
- ld a, [hl]
- call Function4f6c
- ld hl, $001d
- add hl, bc
- ld [hl], a
- ld d, a
- ld a, [wd14f]
- add d
- ld [wd14f], a
- ret
-
-.asm_4f68
- call Function4357
- ret
-; 4f6c
-
-Function4f6c: ; 4f6c
- ld hl, $001e
- add hl, bc
- and 1
- ld a, [hl]
- ret z
- cpl
- inc a
- ret
-; 4f77
-
-Function4f77: ; 4f77
- call Function47a8 ; ????
-; 4f7a
-
-Function4f7a: ; 4f7a
- call Function47a8
- dw Function4f83
- dw Function4f83
- dw Function4f83
-; 4f83
-
-Function4f83: ; 4f83
- call Function47a8
- dw Function4f8a
- dw Function4f99
-; 4f8a
-
-Function4f8a: ; 4f8a
- ld hl, $000b
- add hl, bc
- ld [hl], $10
- ld hl, OBJECT_STEP_DURATION
- add hl, bc
- ld [hl], $10
- call Function47a2
-; 4f99
-
-Function4f99: ; 4f99
- ld hl, OBJECT_STEP_DURATION
- add hl, bc
- dec [hl]
- ret nz
- ld hl, OBJECT_SPRITE_Y_OFFSET
- add hl, bc
- ld [hl], $60
- ld hl, $000c
- add hl, bc
- ld [hl], $0
- ld hl, $0009
- add hl, bc
- ld [hl], $1
- ret
-; 4fb2
-
-Function4fb2: ; 4fb2
- ret
-; 4fb3
-
-Function4fb3: ; 4fb3
- ld hl, $001d
- add hl, bc
- inc [hl]
- ld a, [hl]
- srl a
- srl a
- and 7
- ld l, a
- ld h, 0
- ld de, .y
- add hl, de
- ld a, [hl]
- ld hl, OBJECT_SPRITE_Y_OFFSET
- add hl, bc
- ld [hl], a
- ret
-; 4fcd
-
-.y ; 4fcd
- db 0, -1, -2, -3, -4, -3, -2, -1
-; 4fd5
-
-UpdateJumpPosition: ; 4fd5
- call GetStepVector
- ld a, h
- ld hl, $001f
- add hl, bc
- ld e, [hl]
- add e
- ld [hl], a
- nop
- srl e
- ld d, 0
- ld hl, .y
- add hl, de
- ld a, [hl]
- ld hl, OBJECT_SPRITE_Y_OFFSET
- add hl, bc
- ld [hl], a
- ret
-; 4ff0
-
-.y ; 4ff0
- db -4, -6, -8, -10, -11, -12, -12, -12
- db -11, -10, -9, -8, -6, -4, 0, 0
-; 5000
-
-Function5000: ; 5000
- ld a, [wc2de]
- ld hl, wc2df
- ld [hl], a
- ld a, $3e
- ld [wc2de], a
- ld a, [hl]
- ret
-; 500e
-
-Function500e: ; 500e
- ld hl, wc2e3
- call Function1aae
- ret
-; 5015
-
-Function5015: ; 5015
- ld hl, $001b
- add hl, bc
- ld e, [hl]
- inc [hl]
- ld d, 0
- ld hl, wc2e2
- ld a, [hli]
- ld h, [hl]
- ld l, a
- add hl, de
- ld a, [hl]
- ret
-; 5026
-
-Function5026: ; 5026
- ld hl, $001b
- add hl, bc
- ld e, [hl]
- inc [hl]
- ld d, 0
- ld hl, wc2e6
- ld a, [hli]
- ld h, [hl]
- ld l, a
- add hl, de
- ld a, [hl]
- ret
-; 5037
-
-Function5037: ; 5037
- ld hl, Function503d
- jp Function5041
-; 503d
-
-Function503d: ; 503d
- ld a, [wc2e2]
- ret
-; 5041
-
-Function5041: ; 5041
- call Function5055
-.asm_5044
- xor a
- ld [wc2ea], a
- call Function505e
- call Function506b
- ld a, [wc2ea]
- and a
- jr nz, .asm_5044
- ret
-; 5055
-
-Function5055: ; 5055
- ld a, l
- ld [wc2eb], a
- ld a, h
- ld [wc2ec], a
- ret
-; 505e
-
-Function505e: ; 505e
- ld hl, wc2eb
- ld a, [hli]
- ld h, [hl]
- ld l, a
- jp [hl]
-; 5065
-
-Function5065: ; 5065
- ld a, $1
- ld [wc2ea], a
- ret
-; 506b
-
-Function506b: ; 506b
- push af
- call Function54b8
- pop af
- ld hl, MovementPointers
- rst JumpTable
- ret
-; 5075
-
-
-; 5075
-INCLUDE "engine/movement.asm"
-; 54b8
-
-
-Function54b8: ; 54b8
- ld e, a
- ld a, [wd4ce]
- cp $ff
- ret z
- ld a, [wd4cd]
- ld d, a
- ld a, [$ffaf]
- cp d
- ret nz
- ld a, e
- cp $3e
- ret z
- cp $47
- ret z
- cp $4b
- ret z
- cp $50
- ret z
- cp $8
- ret c
- push af
- ld hl, wd4d0
- inc [hl]
- ld e, [hl]
- ld d, 0
- ld hl, wd4d1
- add hl, de
- pop af
- ld [hl], a
- ret
-; 54e6
-
-Function54e6: ; 54e6
- ld hl, wd4d0
- ld a, [hl]
- and a
- jr z, .asm_5503
- cp $ff
- jr z, .asm_5503
- dec [hl]
- ld e, a
- ld d, 0
- ld hl, wd4d1
- add hl, de
- inc e
- ld a, $ff
-.asm_54fc
- ld d, [hl]
- ld [hld], a
- ld a, d
- dec e
- jr nz, .asm_54fc
- ret
-
-.asm_5503
- call Function550a
- ret c
- ld a, $3e
- ret
-; 550a
-
-Function550a: ; 550a
- ld a, [wd4cd]
- cp $ff
- jr z, .asm_5520
- push bc
- call Function1ae5
- ld hl, $0000
- add hl, bc
- ld a, [hl]
- pop bc
- and a
- jr z, .asm_5520
- and a
- ret
-
-.asm_5520
- ld a, $ff
- ld [wd4ce], a
- ld a, $47
- scf
- ret
-; 5529
-
-Function5529: ; 5529
- push bc
- ld de, .data_5535
- call Function55b9
- call Function55ac
- pop bc
- ret
-
-.data_5535
- db $00, $05, $1b
-; 5538
-
-Function5538: ; 5538
- push bc
- ld de, .data_5544
- call Function55b9
- call Function55ac
- pop bc
- ret
-
-.data_5544
- db $00, $05, $22
-; 5547
-
-Function5547: ; 5547
- push bc
- ld de, .data_5553
- call Function55b9
- call Function55ac
- pop bc
- ret
-
-.data_5553
- db $00, $05, $1c
-; 5556
-
-Function5556: ; 5556
- push bc
- ld de, .data_5562
- call Function55b9
- call Function55ac
- pop bc
- ret
-
-.data_5562
- db $00, $06, $23
-; 5565
-
-Function5565: ; 5565
- push bc
- push af
- ld de, .data_5576
- call Function55b9
- pop af
- ld [wc2f5], a
- call Function55ac
- pop bc
- ret
-
-.data_5576
- db $00, $05, $1d
-; 5579
-
-Function5579: ; 5579
- push bc
- ld a, [$ffaf]
- ld c, a
- call Function5582
- pop bc
- ret
-; 5582
-
-Function5582: ; 5582
- ld de, ObjectStructs
- ld a, $d
-.asm_5587
- push af
- ld hl, $0004
- add hl, de
- bit 7, [hl]
- jr z, .asm_55a1
- ld hl, $0000
- add hl, de
- ld a, [hl]
- and a
- jr z, .asm_55a1
- push bc
- xor a
- ld bc, ObjectStruct2 - ObjectStruct1
- call ByteFill
- pop bc
-
-.asm_55a1
- ld hl, ObjectStruct2 - ObjectStruct1
- add hl, de
- ld d, h
- ld e, l
- pop af
- dec a
- jr nz, .asm_5587
- ret
-; 55ac
-
-Function55ac: ; 55ac
- call Function1a13
- ret nc
- ld d, h
- ld e, l
- callba Function8286
- ret
-; 55b9
-
-Function55b9: ; 55b9
- ld hl, wc2f0
- ld [hl], $ff
- inc hl
- ld [hl], $ff
- inc hl
- ld a, [de]
- inc de
- ld [hli], a
- ld a, [de]
- inc de
- ld [hli], a
- ld a, [de]
- ld [hli], a
- ld a, [$ffaf]
- ld [hli], a
- push hl
- ld hl, $0010
- add hl, bc
- ld d, [hl]
- ld hl, $0011
- add hl, bc
- ld e, [hl]
- pop hl
- ld [hl], d
- inc hl
- ld [hl], e
- inc hl
- ld [hl], $ff
- ret
-; 55e0
-
-Function55e0:: ; 55e0
- ld a, [VramState]
- bit 0, a
- ret z
- ld bc, ObjectStructs
- xor a
-.asm_55ea
- ld [$ffaf], a
- call Function1af1
- jr z, .asm_55f4
- call Function565c
-
-.asm_55f4
- ld hl, ObjectStruct2 - ObjectStruct1
- add hl, bc
- ld b, h
- ld c, l
- ld a, [$ffaf]
- inc a
- cp $d
- jr nz, .asm_55ea
- ret
-; 5602
-
-Function5602: ; 5602
- call Function5645
- ld a, $0
- call Function5629
- ld a, [wd459]
- bit 7, a
- jr z, .asm_5619
- ld a, [$ffe0]
- and a
- jr z, .asm_5619
- call Function5629
-
-.asm_5619
- call Function5920
- ret
-; 561d
-
-Function561d: ; 561d
- call Function5645
- ld a, $0
- call Function5629
- call Function5920
- ret
-; 5629
-
-Function5629: ; 5629
- cp $10
- ret nc
- call GetMapObject
- ld hl, $0000
- add hl, bc
- ld a, [hl]
- cp $ff
- ret z
- cp $d
- ret nc
- call Function1ae5
- call Function1af1
- ret z
- call Function5673
- ret
-; 5645
-
-Function5645: ; 5645
- xor a
- ld bc, ObjectStructs
-.asm_5649
- ld [$ffaf], a
- call Function5680
- ld hl, ObjectStruct2 - ObjectStruct1
- add hl, bc
- ld b, h
- ld c, l
- ld a, [$ffaf]
- inc a
- cp $d
- jr nz, .asm_5649
- ret
-; 565c
-
-Function565c: ; 565c
- push bc
- call Function56cd
- pop bc
- jr c, Function5680
- call Function56a3
- jr c, Function5680
- call Function5688
- callba Function4440
- xor a
- ret
-; 5673
-
-Function5673: ; 5673
- call Function56a3
- jr c, Function5680
- callba Function4440
- xor a
- ret
-; 5680
-
-Function5680: ; 5680
- ld hl, OBJECT_FACING
- add hl, bc
- ld [hl], $ff
- scf
- ret
-; 5688
-
-Function5688: ; 5688
- push bc
- ld hl, $0010
- add hl, bc
- ld d, [hl]
- ld hl, $0011
- add hl, bc
- ld e, [hl]
- call Function2a3c
- pop bc
- ld hl, $000e
- add hl, bc
- ld [hl], a
- callba Function463f
- ret
-; 56a3
-
-Function56a3: ; 56a3
- ld hl, $0010
- add hl, bc
- ld d, [hl]
- ld hl, $0011
- add hl, bc
- ld e, [hl]
- inc d
- inc e
- ld a, [XCoord]
- cp d
- jr z, .asm_56bc
- jr nc, .asm_56cb
- add $b
- cp d
- jr c, .asm_56cb
-
-.asm_56bc
- ld a, [YCoord]
- cp e
- jr z, .asm_56c9
- jr nc, .asm_56cb
- add $a
- cp e
- jr c, .asm_56cb
-
-.asm_56c9
- xor a
- ret
-
-.asm_56cb
- scf
- ret
-; 56cd
-
-Function56cd: ; 56cd
- ld a, [wd14c]
- ld d, a
- ld hl, OBJECT_SPRITE_X_OFFSET
- add hl, bc
- ld a, [hl]
- ld hl, OBJECT_SPRITE_X
- add hl, bc
- add [hl]
- add d
- cp $f0
- jr nc, .asm_56e5
- cp $a0
- jp nc, .asm_5768
-
-.asm_56e5
- and $7
- ld d, $2
- cp $4
- jr c, .asm_56ef
- ld d, $3
-
-.asm_56ef
- ld a, [hl]
- srl a
- srl a
- srl a
- cp $14
- jr c, .asm_56fc
- sub $20
-
-.asm_56fc
- ld [$ffbd], a
- ld a, [wd14d]
- ld e, a
- ld hl, OBJECT_SPRITE_Y_OFFSET
- add hl, bc
- ld a, [hl]
- ld hl, OBJECT_SPRITE_Y
- add hl, bc
- add [hl]
- add e
- cp $f0
- jr nc, .asm_5715
- cp $90
- jr nc, .asm_5768
-
-.asm_5715
- and $7
- ld e, $2
- cp $4
- jr c, .asm_571f
- ld e, $3
-
-.asm_571f
- ld a, [hl]
- srl a
- srl a
- srl a
- cp $12
- jr c, .asm_572c
- sub $20
-
-.asm_572c
- ld [$ffbe], a
- ld hl, $0006
- add hl, bc
- bit 7, [hl]
- jr z, .asm_573e
- ld a, d
- add $2
- ld d, a
- ld a, e
- add $2
- ld e, a
-
-.asm_573e
- ld a, d
- ld [$ffbf], a
-.asm_5741
- ld a, [$ffbf]
- ld d, a
- ld a, [$ffbe]
- add e
- dec a
- cp $12
- jr nc, .asm_5763
- ld b, a
-.asm_574d
- ld a, [$ffbd]
- add d
- dec a
- cp $14
- jr nc, .asm_5760
- ld c, a
- push bc
- call GetTileCoord
- pop bc
- ld a, [hl]
- cp $60
- jr nc, .asm_5768
-
-.asm_5760
- dec d
- jr nz, .asm_574d
-
-.asm_5763
- dec e
- jr nz, .asm_5741
- and a
- ret
-
-.asm_5768
- scf
- ret
-; 576a
-
-Function576a:: ; 576a
- call Function5771
- call Function5781
- ret
-; 5771
-
-Function5771: ; 5771
- xor a
- ld [wd14e], a
- ld [wd14f], a
- ld [wd150], a
- ld a, $ff
- ld [wd151], a
- ret
-; 5781
-
-Function5781: ; 5781
- ld bc, ObjectStructs
- xor a
-.asm_5785
- ld [$ffaf], a
- call Function1af1
- jr z, .asm_578f
- call Function437b
-
-.asm_578f
- ld hl, ObjectStruct2 - ObjectStruct1
- add hl, bc
- ld b, h
- ld c, l
- ld a, [$ffaf]
- inc a
- cp $d
- jr nz, .asm_5785
- ret
-; 579d
-
-Function579d: ; 579d
- ld a, $3e
- ld [wc2de], a
- ld [wc2df], a
- xor a
- ld [wd04e], a
- ld [wd4e2], a
- call Function57bc
- callba Function149c6
- call c, Function57d9
- call Function57ca
- ret
-; 57bc
-
-Function57bc: ; 57bc
- ld hl, wd45b
- bit 7, [hl]
- jr nz, .asm_57c4
- ret
-
-.asm_57c4
- ld a, $0
- ld [PlayerAction], a
- ret
-; 57ca
-
-Function57ca: ; 57ca
- ld hl, wd45b
- bit 5, [hl]
- ret z
- ld a, [wd45b]
- and $3
- add a
- add a
- jr Function57db
-; 57d9
-
-Function57d9: ; 57d9
- ld a, $0
- ; fallthrough
-; 57db
-
-Function57db: ; 57db
- ld bc, PlayerStruct
- call Function1af8
- ret
-; 57e2
-
-Function57e2: ; 57e2
- ld a, d
- and $80
- ret z
- ld bc, $0000
- ld hl, $0008
- add hl, bc
- ld a, [hl]
- or d
- ld [hl], a
- ld a, d
- swap a
- and $7
- ld d, a
- ld bc, PlayerStruct
- ld hl, $0006
- add hl, bc
- ld a, [hl]
- and $f8
- or d
- ld [hl], a
- ret
-; 5803
-
-Function5803:: ; 5803
- push bc
- ld a, b
- call Function5815
- pop bc
- ret c
- ld a, c
- call Function582c
- callba Function848a
- ret
-; 5815
-
-Function5815: ; 5815
- call Function18de
- ret c
- ld a, [$ffb0]
- ld [wd4cd], a
- ret
-; 581f
-
-Function581f:: ; 581f
- call Function5826
- call Function5847
- ret
-; 5826
-
-Function5826: ; 5826
- ld a, $ff
- ld [wd4cd], a
- ret
-; 582c
-
-Function582c: ; 582c
- push af
- call Function5847
- pop af
- call Function18de
- ret c
- ld hl, $0003
- add hl, bc
- ld [hl], $13
- ld hl, $0009
- add hl, bc
- ld [hl], $0
- ld a, [$ffb0]
- ld [wd4ce], a
- ret
-; 5847
-
-Function5847: ; 5847
- ld a, [wd4ce]
- cp $ff
- ret z
- call Function1ae5
- callba Function58e3
- ld a, $ff
- ld [wd4ce], a
- ret
-; 585c
-
-Function585c:: ; 585c
- ld a, c
- call Function18de
- ret c
- push bc
- call Function587a
- pop bc
- ld hl, $0005
- add hl, bc
- res 5, [hl]
- xor a
- ret
-; 586e
-
-Function586e: ; 586e
- call Function18de
- ret c
- ld hl, $0005
- add hl, bc
- set 5, [hl]
- xor a
- ret
-; 587a
-
-Function587a: ; 587a
- ld bc, ObjectStructs
- xor a
-.asm_587e
- push af
- call Function1af1
- jr z, .asm_588a
- ld hl, $0005
- add hl, bc
- set 5, [hl]
-
-.asm_588a
- ld hl, ObjectStruct2 - ObjectStruct1
- add hl, bc
- ld b, h
- ld c, l
- pop af
- inc a
- cp $d
- jr nz, .asm_587e
- ret
-; 5897
-
-Function5897:: ; 5897
- ld a, [wd4cd]
- cp $ff
- ret z
- push bc
- call Function1ae5
- ld hl, $0001
- add hl, bc
- ld a, [hl]
- pop bc
- cp c
- ret nz
- ld a, [wd4ce]
- cp $ff
- ret z
- call Function1ae5
- ld hl, $0005
- add hl, bc
- res 5, [hl]
- ret
-; 58b9
-
-Function58b9:: ; 58b9
- push bc
- ld bc, ObjectStructs
- xor a
-.asm_58be
- push af
- call Function1af1
- jr z, .asm_58ca
- ld hl, $0005
- add hl, bc
- res 5, [hl]
-
-.asm_58ca
- ld hl, ObjectStruct2 - ObjectStruct1
- add hl, bc
- ld b, h
- ld c, l
- pop af
- inc a
- cp $d
- jr nz, .asm_58be
- pop bc
- ret
-; 58d8
-
-Function58d8: ; 58d8
- call Function18de
- ret c
- ld hl, $0005
- add hl, bc
- res 5, [hl]
- ret
-; 58e3
-
-Function58e3: ; 58e3
- ld hl, $0001
- add hl, bc
- ld a, [hl]
- cp $ff
- jp z, Function5903
- push bc
- call GetMapObject
- ld hl, $0004
- add hl, bc
- ld a, [hl]
- pop bc
- ld hl, $0003
- add hl, bc
- ld [hl], a
- ld hl, $0009
- add hl, bc
- ld [hl], $0
- ret
-; 5903
-
-Function5903: ; 5903
- call GetSpriteDirection
- rrca
- rrca
- ld e, a
- ld d, 0
- ld hl, .data_591c
- add hl, de
- ld a, [hl]
- ld hl, $0003
- add hl, bc
- ld [hl], a
- ld hl, $0009
- add hl, bc
- ld [hl], $0
- ret
-
-.data_591c
- db 6, 7, 8, 9
-; 5920
-
-Function5920:: ; 5920
- ld a, [VramState]
- bit 0, a
- ret z
- xor a
- ld [$ffbd], a
- ld a, [hOAMUpdate]
- push af
- ld a, $1
- ld [hOAMUpdate], a
- call Function5991
- call Function593a
- pop af
- ld [hOAMUpdate], a
- ret
-; 593a
-
-Function593a: ; 593a
- ld a, [VramState]
- bit 1, a
- ld b, $a0
- jr z, .asm_5945
- ld b, $70
-
-.asm_5945
- ld a, [$ffbd]
- cp b
- ret nc
- ld l, a
- ld h, $c4
- ld de, $0004
- ld a, b
- ld c, $a0
-.asm_5952
- ld [hl], c
- add hl, de
- cp l
- jr nz, .asm_5952
- ret
-; 5958
-
-Function5958: ; 5958
- push hl
- push de
- push bc
- ld a, [wd14c]
- ld d, a
- ld a, [wd14d]
- ld e, a
- ld bc, ObjectStructs
- ld a, $d
-
-.asm_5968
- push af
- call Function1af1
- jr z, .asm_597c
-
- ld hl, OBJECT_SPRITE_X
- add hl, bc
- ld a, [hl]
- add d
- ld [hl], a
-
- ld hl, OBJECT_SPRITE_Y
- add hl, bc
- ld a, [hl]
- add e
- ld [hl], a
-
-.asm_597c
- ld hl, ObjectStruct2 - ObjectStruct1
- add hl, bc
- ld b, h
- ld c, l
- pop af
- dec a
- jr nz, .asm_5968
-
- xor a
- ld [wd14c], a
- ld [wd14d], a
- pop bc
- pop de
- pop hl
- ret
-; 5991
-
-Function5991: ; 5991
- call Function59a4
- ld c, $30
- call Function59f3
- ld c, $20
- call Function59f3
- ld c, $10
- call Function59f3
- ret
-; 59a4
-
-Function59a4: ; 59a4
- xor a
- ld hl, wc2eb
- ld bc, 13
- call ByteFill
-
- ld d, 0
- ld bc, ObjectStructs
- ld hl, wc2eb
-.loop
- push hl
- call Function1af1
- jr z, .skip
-
- ld hl, OBJECT_FACING
- add hl, bc
- ld a, [hl]
- cp -1
- jr z, .skip
-
-; Define the sprite priority.
- ld e, $10
- ld hl, OBJECT_FLAGS
- add hl, bc
- bit 0, [hl]
- jr nz, .add
- ld e, $20
- bit 1, [hl]
- jr z, .add
- ld e, $30
- jr .add
-
-.skip
- ld hl, ObjectStruct2 - ObjectStruct1
- add hl, bc
- ld b, h
- ld c, l
- pop hl
- jr .next
-
-.add
- ld hl, ObjectStruct2 - ObjectStruct1
- add hl, bc
- ld b, h
- ld c, l
- pop hl
- ld a, d
- or e
- ld [hli], a
-
-.next
- inc d
- ld a, d
- cp $d
- jr nz, .loop
- ret
-; 59f3
-
-Function59f3: ; 59f3
- ld hl, wc2eb
-.next
- ld a, [hli]
- ld d, a
- and $f0
- ret z
- cp c
- jr nz, .next
-
- push bc
- push hl
- ld a, d
- and $f
- call Function5ac2
- call Function5a0d
- pop hl
- pop bc
- jr .next
-; 5a0d
-
-Function5a0d: ; 5a0d
- ld hl, OBJECT_SPRITE
- add hl, bc
- ld a, [hl]
- and $7f
- ld [$ffc1], a
-
- xor a
- bit 7, [hl]
- jr nz, .asm_5a1d
- or 8
-.asm_5a1d
-
- ld hl, OBJECT_FLAGS
- add hl, bc
- ld e, [hl]
- bit 7, e
- jr z, .asm_5a28
- or $80
-.asm_5a28
-
- bit 4, e
- jr z, .asm_5a2e
- or $10
-.asm_5a2e
-
- ld hl, OBJECT_PALETTE
- add hl, bc
- ld d, a
- ld a, [hl]
- and 7
- or d
- ld d, a
-
- xor a
- bit 3, e
- jr z, .asm_5a3f
- or $80
-.asm_5a3f
- ld [$ffc2], a
-
- ld hl, OBJECT_SPRITE_X
- add hl, bc
- ld a, [hl]
-
- ld hl, OBJECT_SPRITE_X_OFFSET
- add hl, bc
- add [hl]
-
- add 8
-
- ld e, a
- ld a, [wd14c]
- add e
- ld [$ffbf], a
-
- ld hl, OBJECT_SPRITE_Y
- add hl, bc
- ld a, [hl]
-
- ld hl, OBJECT_SPRITE_Y_OFFSET
- add hl, bc
- add [hl]
-
- add 12
-
- ld e, a
- ld a, [wd14d]
- add e
- ld [$ffc0], a
-
- ld hl, OBJECT_FACING
- add hl, bc
- ld a, [hl]
- cp -1
- jp z, .done
- cp NUM_FACINGS
- jp nc, .done
-
- ld l, a
- ld h, 0
- add hl, hl
- ld bc, Facings
- add hl, bc
- ld a, [hli]
- ld h, [hl]
- ld l, a
-
- ld a, [$ffbd]
- ld c, a
- ld b, Sprites / $100
- ld a, [hli]
- ld [$ffbe], a
- add c
- cp SpritesEnd % $100
- jr nc, .full
-
-.addsprite
- ld a, [$ffc0]
- add [hl]
- inc hl
-
- ld [bc], a
- inc c
-
- ld a, [$ffbf]
- add [hl]
- inc hl
-
- ld [bc], a
- inc c
-
- ld e, [hl]
- inc hl
-
- ld a, [$ffc1]
- bit 2, e
- jr z, .asm_5aa3
- xor a
-.asm_5aa3
- add [hl]
- inc hl
-
- ld [bc], a
- inc c
-
- ld a, e
- bit 1, a
- jr z, .asm_5aaf
- ld a, [$ffc2]
- or e
-.asm_5aaf
- and $f0
- or d
- ld [bc], a
- inc c
-
- ld a, [$ffbe]
- dec a
- ld [$ffbe], a
- jr nz, .addsprite
-
- ld a, c
- ld [$ffbd], a
-
-.done
- xor a
- ret
-
-.full
- scf
- ret
-; 5ac2
-
-Function5ac2: ; 5ac2
- ld c, a
- ld b, 0
- ld hl, .Addresses
- add hl, bc
- add hl, bc
- ld c, [hl]
- inc hl
- ld b, [hl]
- ret
-; 5ace
-
-.Addresses ; 5ace
- dw PlayerStruct
- dw ObjectStruct1
- dw ObjectStruct2
- dw ObjectStruct3
- dw ObjectStruct4
- dw ObjectStruct5
- dw ObjectStruct6
- dw ObjectStruct7
- dw ObjectStruct8
- dw ObjectStruct9
- dw ObjectStruct10
- dw ObjectStruct11
- dw ObjectStruct12
-; 5ae8
+INCLUDE "engine/map_objects.asm"
Function5ae8: ; 5ae8
@@ -4826,7 +1145,7 @@ Function627b: ; 627b
ret
; 6292
-Function6292: ; 6292
+Function6292: ; 6292 ; unreferenced
ld a, [$ff9b]
and $7
ret nz
@@ -5783,11 +2102,11 @@ INCLUDE "items/item_attributes.asm"
Function6ec1: ; 6ec1
- ld hl, $0006
+ ld hl, OBJECT_PALETTE
add hl, bc
bit 5, [hl]
jr z, .asm_6ed9
- ld hl, $0004
+ ld hl, OBJECT_04
add hl, bc
bit 4, [hl]
push hl
@@ -5799,7 +2118,7 @@ Function6ec1: ; 6ec1
jr .asm_6ee9
.asm_6ed9
- ld hl, $0004
+ ld hl, OBJECT_04
add hl, bc
bit 4, [hl]
jr nz, .asm_6ee9
@@ -5841,17 +2160,17 @@ Function6ec1: ; 6ec1
Function6f07: ; 6f07
call Function6f5f
ret c
- ld hl, $0010
+ ld hl, OBJECT_MAP_X
add hl, bc
ld d, [hl]
- ld hl, $0011
+ ld hl, OBJECT_MAP_Y
add hl, bc
ld e, [hl]
- ld hl, $0006
+ ld hl, OBJECT_PALETTE
add hl, bc
bit 7, [hl]
jp nz, Function6fa1
- ld hl, $000e
+ ld hl, OBJECT_STANDING_TILE
add hl, bc
ld a, [hl]
ld d, a
@@ -5865,7 +2184,7 @@ Function6f07: ; 6f07
Function6f2c: ; 6f2c
call Function6f5f
ret c
- ld hl, $000e
+ ld hl, OBJECT_STANDING_TILE
add hl, bc
ld a, [hl]
call GetTileCollision
@@ -5876,13 +2195,13 @@ Function6f2c: ; 6f2c
; 6f3e
Function6f3e: ; 6f3e
- ld hl, $000e
+ ld hl, OBJECT_STANDING_TILE
add hl, bc
ld a, [hl]
call Function6f7f
ret nc
push af
- ld hl, $0007
+ ld hl, OBJECT_07
add hl, bc
ld a, [hl]
and 3
@@ -5902,13 +2221,13 @@ Function6f3e: ; 6f3e
; 6f5f
Function6f5f: ; 6f5f
- ld hl, $000f
+ ld hl, OBJECT_NEXT_TILE
add hl, bc
ld a, [hl]
call Function6f7f
ret nc
push af
- ld hl, $0007
+ ld hl, OBJECT_07
add hl, bc
and 3
ld e, a
@@ -5954,7 +2273,7 @@ Function6f7f: ; 6f7f
; 6fa1
Function6fa1: ; 6fa1
- ld hl, $0007
+ ld hl, OBJECT_07
add hl, bc
ld a, [hl]
and 3
@@ -6034,7 +2353,7 @@ CheckFacingObject:: ; 6fd9
ld [$ffaf], a
call Function7041
ret nc
- ld hl, $0007
+ ld hl, OBJECT_07
add hl, bc
ld a, [hl]
cp $ff
@@ -6049,10 +2368,10 @@ CheckFacingObject:: ; 6fd9
Function7009: ; 7009
- ld hl, $0010
+ ld hl, OBJECT_MAP_X
add hl, bc
ld d, [hl]
- ld hl, $0011
+ ld hl, OBJECT_MAP_Y
add hl, bc
ld e, [hl]
jr Function7041
@@ -6066,10 +2385,10 @@ Function7015: ; 7015
ret
Function7021: ; 7021
- ld hl, $0010
+ ld hl, OBJECT_MAP_X
add hl, bc
ld d, [hl]
- ld hl, $0011
+ ld hl, OBJECT_MAP_Y
add hl, bc
ld e, [hl]
call GetSpriteDirection
@@ -6102,11 +2421,11 @@ Function7041: ; 7041
ld [$ffb0], a
call Function1af1
jr z, .asm_7093
- ld hl, $0004
+ ld hl, OBJECT_04
add hl, bc
bit 7, [hl]
jr nz, .asm_7093
- ld hl, $0006
+ ld hl, OBJECT_PALETTE
add hl, bc
bit 7, [hl]
jr z, .asm_7063
@@ -6168,7 +2487,7 @@ Function7041: ; 7041
; 70a4
Function70a4: ; 70a4
- ld hl, $0016
+ ld hl, OBJECT_22
add hl, bc
ld a, [hl]
and a
@@ -6177,7 +2496,7 @@ Function70a4: ; 70a4
jr z, .asm_70c7
ld e, a
ld d, a
- ld hl, $0014
+ ld hl, OBJECT_20
add hl, bc
ld a, [hl]
sub d
@@ -6185,7 +2504,7 @@ Function70a4: ; 70a4
ld a, [hl]
add e
ld e, a
- ld hl, $0010
+ ld hl, OBJECT_MAP_X
add hl, bc
ld a, [hl]
cp d
@@ -6194,7 +2513,7 @@ Function70a4: ; 70a4
jr z, .asm_70eb
.asm_70c7
- ld hl, $0016
+ ld hl, OBJECT_22
add hl, bc
ld a, [hl]
swap a
@@ -6202,7 +2521,7 @@ Function70a4: ; 70a4
jr z, .asm_70e9
ld e, a
ld d, a
- ld hl, $0015
+ ld hl, OBJECT_21
add hl, bc
ld a, [hl]
sub d
@@ -6210,7 +2529,7 @@ Function70a4: ; 70a4
ld a, [hl]
add e
ld e, a
- ld hl, $0011
+ ld hl, OBJECT_MAP_Y
add hl, bc
ld a, [hl]
cp d
@@ -6228,7 +2547,7 @@ Function70a4: ; 70a4
; 70ed
Function70ed: ; 70ed
- ld hl, $0010
+ ld hl, OBJECT_MAP_X
add hl, bc
ld a, [XCoord]
cp [hl]
@@ -6239,7 +2558,7 @@ Function70ed: ; 70ed
jr c, .asm_7111
.asm_70fe
- ld hl, $0011
+ ld hl, OBJECT_MAP_Y
add hl, bc
ld a, [YCoord]
cp [hl]
@@ -6269,7 +2588,7 @@ Function7113: ; 7113
ld [$ffb0], a
call Function1af1
jr z, .asm_7160
- ld hl, $0003
+ ld hl, OBJECT_03
add hl, bc
ld a, [hl]
cp $15
@@ -6326,14 +2645,14 @@ Function7113: ; 7113
Function7171: ; 7171
- ld hl, $0010
+ ld hl, OBJECT_MAP_X
add hl, bc
ld a, d
sub [hl]
jr c, .asm_718b
cp $2
jr nc, .asm_718b
- ld hl, $0011
+ ld hl, OBJECT_MAP_Y
add hl, bc
ld a, e
sub [hl]
@@ -6932,10 +3251,10 @@ Function80a1:: ; 80a1
ld a, b
call Function18de
ret c
- ld hl, $0010
+ ld hl, OBJECT_MAP_X
add hl, bc
ld d, [hl]
- ld hl, $0011
+ ld hl, OBJECT_MAP_Y
add hl, bc
ld e, [hl]
ld a, [$ffaf]
@@ -7002,7 +3321,7 @@ Function80e7:: ; 80e7
ld hl, VramState
bit 7, [hl]
ret z
- ld hl, $0005
+ ld hl, OBJECT_FLAGS
add hl, de
set 5, [hl]
ret
@@ -7016,12 +3335,12 @@ Function8116: ; 8116
Function811d: ; 811d
ld a, [$ffb0]
- ld hl, $0000
+ ld hl, OBJECT_00
add hl, bc
ld [hl], a
ld a, [$ffaf]
ld [wc2f0], a
- ld hl, $0001
+ ld hl, OBJECT_01
add hl, bc
ld a, [hl]
ld [wc2f1], a
@@ -7030,7 +3349,7 @@ Function811d: ; 811d
ld a, [hl]
call GetSpritePalette
ld [wc2f3], a
- ld hl, $0008
+ ld hl, OBJECT_08
add hl, bc
ld a, [hl]
and $f0
@@ -7040,23 +3359,23 @@ Function811d: ; 811d
ld [wc2f3], a
.asm_814e
- ld hl, $0004
+ ld hl, OBJECT_04
add hl, bc
ld a, [hl]
ld [wc2f4], a
- ld hl, $0009
+ ld hl, OBJECT_09
add hl, bc
ld a, [hl]
ld [wc2f5], a
- ld hl, $0003
+ ld hl, OBJECT_03
add hl, bc
ld a, [hl]
ld [wc2f6], a
- ld hl, $0002
+ ld hl, OBJECT_SPRITE
add hl, bc
ld a, [hl]
ld [wc2f7], a
- ld hl, $0005
+ ld hl, OBJECT_FLAGS
add hl, bc
ld a, [hl]
ld [wc2f8], a
@@ -7104,7 +3423,7 @@ Function8177: ; 8177
jp c, Function81c9
.asm_81bb
- ld hl, $0010
+ ld hl, OBJECT_LENGTH
add hl, bc
ld b, h
ld c, l
@@ -7183,7 +3502,7 @@ Function81ea: ; 81ea
pop de
.asm_8224
- ld hl, $0010
+ ld hl, OBJECT_LENGTH
add hl, bc
ld b, h
ld c, l
@@ -7241,7 +3560,7 @@ Function823e: ; 823e
pop de
.asm_8278
- ld hl, $0010
+ ld hl, OBJECT_LENGTH
add hl, bc
ld b, h
ld c, l
@@ -7255,13 +3574,13 @@ Function823e: ; 823e
Function8286: ; 8286
ld a, [wc2f0]
- ld hl, $0001
+ ld hl, OBJECT_01
add hl, de
ld [hl], a
ld a, [wc2f4]
call Function1a61
ld a, [wc2f3]
- ld hl, $0006
+ ld hl, OBJECT_PALETTE
add hl, de
or [hl]
ld [hl], a
@@ -7270,23 +3589,23 @@ Function8286: ; 8286
ld a, [wc2f6]
call Function82f1
ld a, [wc2f1]
- ld hl, $0000
+ ld hl, OBJECT_00
add hl, de
ld [hl], a
ld a, [wc2f2]
- ld hl, $0002
+ ld hl, OBJECT_SPRITE
add hl, de
ld [hl], a
- ld hl, $0009
+ ld hl, OBJECT_09
add hl, de
ld [hl], $0
- ld hl, $000d
+ ld hl, OBJECT_FACING
add hl, de
ld [hl], $ff
ld a, [wc2f8]
call Function830d
ld a, [wc2f5]
- ld hl, $0020
+ ld hl, OBJECT_32
add hl, de
ld [hl], a
and a
@@ -7294,10 +3613,10 @@ Function8286: ; 8286
; 82d5
Function82d5: ; 82d5
- ld hl, $0015
+ ld hl, OBJECT_21
add hl, de
ld [hl], a
- ld hl, $0011
+ ld hl, OBJECT_MAP_Y
add hl, de
ld [hl], a
ld hl, YCoord
@@ -7306,17 +3625,17 @@ Function82d5: ; 82d5
swap a
ld hl, wd14d
sub [hl]
- ld hl, $0018
+ ld hl, OBJECT_SPRITE_Y
add hl, de
ld [hl], a
ret
; 82f1
Function82f1: ; 82f1
- ld hl, $0014
+ ld hl, OBJECT_20
add hl, de
ld [hl], a
- ld hl, $0010
+ ld hl, OBJECT_MAP_X
add hl, de
ld [hl], a
ld hl, XCoord
@@ -7325,7 +3644,7 @@ Function82f1: ; 82f1
swap a
ld hl, wd14c
sub [hl]
- ld hl, $0017
+ ld hl, OBJECT_SPRITE_X
add hl, de
ld [hl], a
ret
@@ -7340,7 +3659,7 @@ Function830d: ; 830d
add $10
and $f0
or l
- ld hl, $0016
+ ld hl, OBJECT_22
add hl, de
ld [hl], a
ret
@@ -7385,17 +3704,17 @@ Function8341: ; 8341
add hl, bc
ld a, [hl]
call Function1ae5
- ld hl, $0010
+ ld hl, OBJECT_MAP_X
add hl, bc
ld a, [hl]
- ld hl, $0011
+ ld hl, OBJECT_MAP_Y
add hl, bc
ld c, [hl]
ld b, a
- ld hl, $0010
+ ld hl, OBJECT_MAP_X
add hl, de
ld a, [hl]
- ld hl, $0011
+ ld hl, OBJECT_MAP_Y
add hl, de
ld e, [hl]
ld d, a
@@ -7442,14 +3761,14 @@ Function839e:: ; 839e
ld a, b
call Function18de
ret c
- ld hl, $0010
+ ld hl, OBJECT_MAP_X
add hl, bc
ld a, [hl]
- ld hl, $0011
+ ld hl, OBJECT_MAP_Y
add hl, bc
ld c, [hl]
ld b, a
- ld hl, $0010
+ ld hl, OBJECT_MAP_X
add hl, de
ld a, [hl]
cp b
@@ -7463,7 +3782,7 @@ Function839e:: ; 839e
jr .asm_83d5
.asm_83c7
- ld hl, $0011
+ ld hl, OBJECT_MAP_Y
add hl, de
ld a, [hl]
cp c
@@ -7476,7 +3795,7 @@ Function839e:: ; 839e
dec c
.asm_83d5
- ld hl, $0010
+ ld hl, OBJECT_MAP_X
add hl, de
ld [hl], b
ld a, b
@@ -7486,10 +3805,10 @@ Function839e:: ; 839e
swap a
ld hl, wd14c
sub [hl]
- ld hl, $0017
+ ld hl, OBJECT_SPRITE_X
add hl, de
ld [hl], a
- ld hl, $0011
+ ld hl, OBJECT_MAP_Y
add hl, de
ld [hl], c
ld a, c
@@ -7499,17 +3818,17 @@ Function839e:: ; 839e
swap a
ld hl, wd14d
sub [hl]
- ld hl, $0018
+ ld hl, OBJECT_SPRITE_Y
add hl, de
ld [hl], a
ld a, [$ffb0]
- ld hl, $0020
+ ld hl, OBJECT_32
add hl, de
ld [hl], a
- ld hl, $0003
+ ld hl, OBJECT_03
add hl, de
ld [hl], $1a
- ld hl, $0009
+ ld hl, OBJECT_09
add hl, de
ld [hl], $0
ret
@@ -7543,20 +3862,20 @@ Function8417:: ; 8417
Function8439: ; 8439
ld a, d
call Function1ae5
- ld hl, $0010
+ ld hl, OBJECT_MAP_X
add hl, bc
ld a, [hl]
- ld hl, $0011
+ ld hl, OBJECT_MAP_Y
add hl, bc
ld c, [hl]
ld b, a
push bc
ld a, e
call Function1ae5
- ld hl, $0010
+ ld hl, OBJECT_MAP_X
add hl, bc
ld d, [hl]
- ld hl, $0011
+ ld hl, OBJECT_MAP_Y
add hl, bc
ld e, [hl]
pop bc
@@ -7630,15 +3949,15 @@ Function848a: ; 848a
Function849d: ; 849d
ld a, [wd4cd]
call Function1ae5
- ld hl, $0010
+ ld hl, OBJECT_MAP_X
add hl, bc
ld d, [hl]
- ld hl, $0011
+ ld hl, OBJECT_MAP_Y
add hl, bc
ld e, [hl]
ld a, [wd4ce]
call Function1ae5
- ld hl, $0010
+ ld hl, OBJECT_MAP_X
add hl, bc
ld a, d
cp [hl]
@@ -7654,7 +3973,7 @@ Function849d: ; 849d
ret
.asm_84c5
- ld hl, $0011
+ ld hl, OBJECT_MAP_Y
add hl, bc
ld a, e
cp [hl]
@@ -7801,7 +4120,7 @@ PredefPointers:: ; 856b
add_predef StatsScreenInit
add_predef DrawPlayerHP
add_predef DrawEnemyHP
- add_predef Function50b7b ; $28
+ add_predef PrintTempMonStats ; $28
add_predef GetTypeName
add_predef PrintMoveType
add_predef PrintType
@@ -7867,646 +4186,7 @@ Datac012: ; c012
; c01b
-Special:: ; c01b
-; Run script special de.
- ld hl, SpecialsPointers
- add hl, de
- add hl, de
- add hl, de
- ld b, [hl]
- inc hl
- ld a, [hli]
- ld h, [hl]
- ld l, a
- ld a, b
- rst FarCall
- ret
-; c029
-
-SpecialsPointers: ; c029
- dbw BANK(Function97c28), Function97c28
- dbw BANK(Function29ce8), Function29ce8
- dbw BANK(Function29d11), Function29d11
- dbw BANK(Function29d92), Function29d92
- dbw BANK(Function29e66), Function29e66
- dbw BANK(Function29e82), Function29e82
- dbw BANK(Function29efa), Function29efa
- dbw BANK(Function29eee), Function29eee
- dbw BANK(Function29c92), Function29c92
- dbw BANK(Function29cf1), Function29cf1
- dbw BANK(Function29cfa), Function29cfa
- dbw BANK(Function29bfb), Function29bfb
- dbw BANK(Function29c7b), Function29c7b
- dbw BANK(Function29ec4), Function29ec4
- dbw BANK(Function29ed9), Function29ed9
- dbw BANK(Function29eaf), Function29eaf
- dbw BANK(Function29f47), Function29f47
- dbw BANK(Functionc2f6), Functionc2f6
- dbw BANK(Functionc309), Functionc309
- dbw BANK(Function1050b9), Function1050b9
- dbw BANK(Functionc34a), Functionc34a
- dbw BANK(Function4d9e5), Function4d9e5
- dbw BANK(Function13a12), Function13a12
- dbw BANK(Function13a31), Function13a31
- dbw BANK(Function135db), Function135db
- dbw BANK(Functionfbb32), Functionfbb32
- dbw BANK(Functionfbcd2), Functionfbcd2
- dbw BANK(Functionc658), Functionc658
- dbw BANK(Function1559a), Function1559a
- dbw BANK(Functionc2e7), Functionc2e7
- dbw BANK(Function166d6), Function166d6
- dbw BANK(Function1672a), Function1672a
- dbw BANK(Function16936), Function16936
- dbw BANK(Function2c547), Function2c547
- dbw BANK(Function16218), Function16218
- dbw BANK(Function8cc04), Function8cc04
- dbw BANK(SpecialNameRival), SpecialNameRival
- dbw BANK(Function90913), Function90913
- dbw BANK(Functionc2c0), Functionc2c0
- dbw BANK(Functionc2cd), Functionc2cd
- dbw BANK(Functionc355), Functionc355
- dbw BANK(Functionc360), Functionc360
- dbw BANK(Functionc373), Functionc373
- dbw BANK(Functionc380), Functionc380
- dbw BANK(Functionc38d), Functionc38d
- dbw BANK(Functionc3db), Functionc3db
- dbw BANK(Function8c084), Function8c084
- dbw BANK(Function8c092), Function8c092
- dbw BANK(Function8c0b6), Function8c0b6
- dbw BANK(Function8c079), Function8c079
- dbw BANK(Function8c0ab), Function8c0ab
- dbw BANK(Functiond91), Functiond91
- dbw BANK(WhiteBGMap), WhiteBGMap
- dbw BANK(UpdateTimePals), UpdateTimePals
- dbw BANK(ClearTileMap), ClearTileMap
- dbw BANK(Function1ad2), Function1ad2
- dbw BANK(Functione4a), Functione4a
- dbw BANK(Functionc230), Functionc230
- dbw BANK(SpecialSeenMon), SpecialSeenMon
- dbw BANK(WaitSFX),WaitSFX
- dbw BANK(PlayMapMusic), PlayMapMusic
- dbw BANK(RestartMapMusic), RestartMapMusic
- dbw BANK(Function12324), Function12324
- dbw BANK(Function8379), Function8379
- dbw BANK(Functionc25a), Functionc25a
- dbw BANK(Functionc268), Functionc268
- dbw BANK(Functionc276), Functionc276
- dbw BANK(Functionc284), Functionc284
- dbw BANK(Functionc3ef), Functionc3ef
- dbw BANK(Function17421), Function17421
- dbw BANK(Function17440), Function17440
- dbw BANK(Function139a8), Function139a8
- dbw BANK(Functionc3fc), Functionc3fc
- dbw BANK(Function26feb), Function26feb
- dbw BANK(Function27043), Function27043
- dbw BANK(SpecialGiveShuckle), SpecialGiveShuckle
- dbw BANK(SpecialReturnShuckle), SpecialReturnShuckle
- dbw BANK(Function73f7), Function73f7
- dbw BANK(SpecialCheckPokerus),SpecialCheckPokerus
- dbw BANK(Function24b25), Function24b25
- dbw BANK(Function24b4e), Function24b4e
- dbw BANK(Function24ae8), Function24ae8
- dbw BANK(Function4d87a), Function4d87a
- dbw BANK(Functionc434), Functionc434
- dbw BANK(Functionc422), Functionc422
- dbw BANK(Function4d9d3), Function4d9d3
- dbw BANK(Function88018), Function88018
- dbw BANK(SpecialNameRater), SpecialNameRater
- dbw BANK(Functionc2da), Functionc2da
- dbw BANK(Function718d), Function718d
- dbw BANK(Function71ac), Function71ac
- dbw BANK(Function2a4ab), Function2a4ab
- dbw BANK(Function2a51f), Function2a51f
- dbw BANK(RandomPhoneMon), RandomPhoneMon
- dbw BANK(Function14209), Function14209
- dbw BANK(Functionfb841), Functionfb841
- dbw BANK(SpecialSnorlaxAwake),SpecialSnorlaxAwake
- dbw BANK(Function7413), Function7413
- dbw BANK(Function7418), Function7418
- dbw BANK(Function741d), Function741d
- dbw BANK(Functionc472), Functionc472
- dbw BANK(ProfOaksPCBoot), ProfOaksPCBoot
- dbw BANK(SpecialGameboyCheck),SpecialGameboyCheck
- dbw BANK(SpecialTrainerHouse),SpecialTrainerHouse
- dbw BANK(Function16dc7), Function16dc7
- dbw BANK(InitRoamMons), InitRoamMons
- dbw BANK(Functionc48f), Functionc48f
- dbw BANK(Functionc49f), Functionc49f
- dbw BANK(Functionc4ac), Functionc4ac
- dbw BANK(Function11ac3e), Function11ac3e
- dbw BANK(Function11b444), Function11b444
- dbw BANK(Function11b5e8), Function11b5e8
- dbw BANK(Function11b7e5), Function11b7e5
- dbw BANK(Function11b879), Function11b879
- dbw BANK(Function11b920), Function11b920
- dbw BANK(Function11b93b), Function11b93b
- dbw BANK(Function1700b0), Function1700b0
- dbw BANK(Function1700ba), Function1700ba
- dbw BANK(Function170114), Function170114
- dbw BANK(Function170215), Function170215
- dbw BANK(Function1704e1), Function1704e1
- dbw BANK(Function17021d), Function17021d
- dbw BANK(Function170b44), Function170b44
- dbw BANK(Function11ba38), Function11ba38
- dbw BANK(Function170bd3), Function170bd3
- dbw BANK(Function117656), Function117656
- dbw BANK(Reset), Reset
- dbw BANK(Function1011f1), Function1011f1
- dbw BANK(Function101220), Function101220
- dbw BANK(Function101225), Function101225
- dbw BANK(Function101231), Function101231
- dbw BANK(Function4925b), Function4925b
- dbw BANK(Function8adef), Function8adef
- dbw BANK(Function11c1ab), Function11c1ab
- dbw BANK(Function170687), Function170687
- dbw BANK(Function8ae68), Function8ae68
- dbw BANK(Function17d224), Function17d224
- dbw BANK(Function17d2b6), Function17d2b6
- dbw BANK(Function17d2ce), Function17d2ce
- dbw BANK(Function17f53d), Function17f53d
- dbw BANK(Function103612), Function103612
- dbw BANK(SpecialHoOhChamber),SpecialHoOhChamber
- dbw BANK(Function102142), Function102142
- dbw BANK(Function4989a), Function4989a
- dbw BANK(Function49bf9), Function49bf9
- dbw BANK(SpecialPokeSeer), SpecialPokeSeer
- dbw BANK(SpecialBuenasPassword), SpecialBuenasPassword
- dbw BANK(SpecialBuenaPrize), SpecialBuenaPrize
- dbw BANK(SpecialDratini),SpecialDratini
- dbw BANK(Function11485), Function11485
- dbw BANK(SpecialBeastsCheck),SpecialBeastsCheck
- dbw BANK(SpecialMonCheck),SpecialMonCheck
- dbw BANK(Functionc225), Functionc225
- dbw BANK(Function170bd2), Function170bd2
- dbw BANK(Function10366e), Function10366e
- dbw BANK(Function1037eb), Function1037eb
- dbw BANK(Function10383c), Function10383c
- dbw BANK(Function1060a2), Function1060a2
- dbw BANK(Function14168), Function14168
- dbw BANK(Function1037c2), Function1037c2
- dbw BANK(Function10630f), Function10630f
- dbw BANK(Function103780), Function103780
- dbw BANK(Function10387b), Function10387b
- dbw BANK(Function4ae12), Function4ae12
- dbw BANK(Function1047eb), Function1047eb
- dbw BANK(Function4a927), Function4a927
- dbw BANK(Function90a54), Function90a54
- dbw BANK(Function90a88), Function90a88
- dbw BANK(SpecialNone), SpecialNone
-; c224
-
-SpecialNone: ; c224
- ret
-; c225
-
-Functionc225: ; c225
- ld a, [ScriptVar]
- ld d, a
- callba Function57e2
- ret
-; c230
-
-Functionc230: ; c230
- ld a, [ScriptVar]
- dec a
- call CheckCaughtMon
- ret nz
- ld a, [ScriptVar]
- dec a
- call SetSeenAndCaughtMon
- call FadeToMenu
- ld a, [ScriptVar]
- ld [wd265], a
- callba Functionfb877
- call Function2b4d
- ret
-; c252
-
-SpecialSeenMon: ; c252
- ld a, [ScriptVar]
- dec a
- call SetSeenMon
- ret
-; c25a
-
-Functionc25a: ; c25a
- ld a, [ScriptVar]
- ld b, a
- callba Function4dbd2
- jr z, Functionc298
- jr Functionc292
-
-Functionc268: ; c268
- ld a, [ScriptVar]
- ld b, a
- callba Function4dbd9
- jr z, Functionc298
- jr Functionc292
-
-Functionc276: ; c276
- ld a, [ScriptVar]
- ld b, a
- callba Function4dbe0
- jr z, Functionc298
- jr Functionc292
-
-Functionc284: ; c284
- ld a, [ScriptVar]
- ld b, a
- callba Function4dbe6
- jr z, Functionc298
- jr Functionc292
-
-Functionc292: ; c292
- ld a, $1
- ld [ScriptVar], a
- ret
-
-Functionc298: ; c298
- xor a
- ld [ScriptVar], a
- ret
-; c29d
-
-SpecialNameRival: ; 0xc29d
- ld b, $2 ; rival
- ld de, RivalName
- callba Function116b7
- ; default to "SILVER"
- ld hl, RivalName
- ld de, DefaultRivalName
- call InitName
- ret
-; 0xc2b2
-
-DefaultRivalName: ; 0xc2b2
- db "SILVER@"
-
-SpecialNameRater: ; c2b9
- callba NameRater
- ret
-; c2c0
-
-Functionc2c0: ; c2c0
- call FadeToMenu
- callba Function9191c
- call Function2b4d
- ret
-; c2cd
-
-Functionc2cd: ; c2cd
- call FadeToMenu
- callba Function16be4
- call Function2b4d
- ret
-; c2da
-
-Functionc2da: ; c2da
- call FadeToMenu
- callba Function3f836
- call Function2b4d
- ret
-; c2e7
-
-Functionc2e7: ; c2e7
- xor a
- ld [ScriptVar], a
- callba Function156d9
- ld a, c
- ld [ScriptVar], a
- ret
-; c2f6
-
-Functionc2f6: ; c2f6
- ld a, $0
- call GetSRAMBank
- ld a, [$abe2]
- and a
- jr z, .asm_c302
- inc a
-
-.asm_c302
- ld [ScriptVar], a
- call CloseSRAM
- ret
-; c309
-
-Functionc309: ; c309
- ld a, $0
- call GetSRAMBank
- ld a, [$abe2]
- ld [CurItem], a
- ld a, $1
- ld [wd10c], a
- ld hl, NumItems
- call ReceiveItem
- jr nc, .asm_c33d
- xor a
- ld [$abe2], a
- call CloseSRAM
- ld a, [CurItem]
- ld [wd265], a
- call GetItemName
- ld hl, UnknownText_0xc345
- call PrintText
- ld a, $1
- ld [ScriptVar], a
- ret
-
-.asm_c33d
- call CloseSRAM
- xor a
- ld [ScriptVar], a
- ret
-; c345
-
-UnknownText_0xc345: ; 0xc345
- ; received item
- text_jump UnknownText_0x1bd3be
- db "@"
-; 0xc34a
-
-Functionc34a: ; c34a
- callba Function1369d
- ld a, b
- ld [ScriptVar], a
- ret
-; c355
-
-Functionc355: ; c355
- ld a, [ScriptVar]
- ld e, a
- callba Function91a53
- ret
-; c360
-
-Functionc360: ; c360
- call FadeToMenu
- callba Functione1190
- ld a, [wd0ec]
- ld [ScriptVar], a
- call Function2b4d
- ret
-; c373
-
-Functionc373: ; c373
- call Functionc3ae
- ret c
- ld a, BANK(Function926c7)
- ld hl, Function926c7
- call Functionc39a
- ret
-; c380
-
-Functionc380: ; c380
- call Functionc3ae
- ret c
- ld a, BANK(Functione00ee)
- ld hl, Functione00ee
- call Functionc39a
- ret
-; c38d
-
-Functionc38d: ; c38d
- call Functionc3ae
- ret c
- ld a, BANK(Functione1e5b)
- ld hl, Functione1e5b
- call Functionc39a
- ret
-; c39a
-
-Functionc39a: ; c39a
- call Function31cf
- call FadeToMenu
- ld hl, wd0e8
- ld a, [hli]
- push af
- ld a, [hli]
- ld h, [hl]
- ld l, a
- pop af
- rst FarCall
- call Function2b4d
- ret
-; c3ae
-
-Functionc3ae: ; c3ae
- ld hl, Coins
- ld a, [hli]
- or [hl]
- jr z, .asm_c3c4
- ld a, COIN_CASE
- ld [CurItem], a
- ld hl, NumItems
- call CheckItem
- jr nc, .asm_c3c9
- and a
- ret
-
-.asm_c3c4
- ld hl, UnknownText_0xc3d1
- jr .asm_c3cc
-
-.asm_c3c9
- ld hl, UnknownText_0xc3d6
-
-.asm_c3cc
- call PrintText
- scf
- ret
-; c3d1
-
-UnknownText_0xc3d1: ; 0xc3d1
- ; You have no coins.
- text_jump UnknownText_0x1bd3d7
- db "@"
-; 0xc3d6
-
-UnknownText_0xc3d6: ; 0xc3d6
- ; You don't have a COIN CASE.
- text_jump UnknownText_0x1bd3eb
- db "@"
-; 0xc3db
-
-Functionc3db: ; c3db
- call WhiteBGMap
- call Function2879
- ret
-; c3e2
-
-ScriptReturnCarry: ; c3e2
- jr c, .carry
- xor a
- ld [ScriptVar], a
- ret
-.carry
- ld a, 1
- ld [ScriptVar], a
- ret
-; c3ef
-
-Functionc3ef: ; c3ef
- callba Function1150c
- ld a, [wdc3a]
- ld [ScriptVar], a
- ret
-; c3fc
-
-Functionc3fc: ; c3fc
- ld a, [ScriptVar]
- ld [wdfce], a
- ret
-; c403
-
-
-Functionc403:: ; c403
- ld a, c
- and a
- jr nz, .asm_c410
- ld a, d
- ld [wdfcc], a
- ld a, e
- ld [wdfcd], a
- ret
-
-.asm_c410
- ld a, d
- ld [wdc5a], a
- ld a, e
- ld [wdc5b], a
- ret
-; c419
-
-
-SpecialCheckPokerus: ; c419
-; Check if a monster in your party has Pokerus
- callba CheckPokerus
- jp ScriptReturnCarry
-; c422
-
-Functionc422: ; c422
- callba Function1152b
- ld hl, wdc9d
- res 0, [hl]
- callba Function5d33
- ret
-; c434
-
-Functionc434: ; c434
- callba Function11542
- jp ScriptReturnCarry
-; c43d
-
-SpecialSnorlaxAwake: ; 0xc43d
-; Check if the Poké Flute channel is playing, and if the player is standing
-; next to Snorlax.
-
-; outputs:
-; ScriptVar is 1 if the conditions are met, otherwise 0.
-
-; check background music
- ld a, [wMapMusic]
- cp MUSIC_POKE_FLUTE_CHANNEL
- jr nz, .nope
-
- ld a, [XCoord]
- ld b, a
- ld a, [YCoord]
- ld c, a
-
- ld hl, .ProximityCoords
-.loop
- ld a, [hli]
- cp $ff
- jr z, .nope
- cp b
- jr nz, .nextcoord
- ld a, [hli]
- cp c
- jr nz, .loop
-
- ld a, $1
- jr .done
-
-.nextcoord
- inc hl
- jr .loop
-
-.nope
- xor a
-.done
- ld [ScriptVar], a
- ret
-
-.ProximityCoords
- ; x, y
- db 33, 8 ; left
- db 34, 10 ; below
- db 35, 10 ; below
- db 36, 8 ; right
- db 36, 9 ; right
- db $ff
-
-
-Functionc472: ; c472
- ld a, [CurPartySpecies]
- jp PlayCry
-; c478
-
-
-SpecialGameboyCheck: ; c478
- ld a, [hCGB]
- and a
- jr nz, .cgb
-
- ld a, [hSGB]
- and a
- jr nz, .sgb
-
-.gb
- xor a
- jr .done
-.sgb
- ld a, 1
- jr .done
-.cgb
- ld a, 2
-.done
- ld [ScriptVar], a
- ret
-
-
-Functionc48f: ; c48f
- ld a, MUSIC_NONE % $100
- ld [MusicFadeIDLo], a
- ld a, MUSIC_NONE / $100
- ld [MusicFadeIDHi], a
- ld a, $2
- ld [MusicFade], a
- ret
-; c49f
-
-Functionc49f: ; c49f
- call FadeToMenu
- callba Function1dd702
- call Function2b4d
- ret
-; c4ac
-
-Functionc4ac: ; c4ac
- call FadeToMenu
- callba Function84688
- call Function2b4d
- ret
-; c4b9
-
-SpecialTrainerHouse: ; 0xc4b9
- ld a, 0
- call GetSRAMBank
- ld a, [$abfd] ; XXX what is this memory location?
- ld [ScriptVar], a
- jp CloseSRAM
+INCLUDE "engine/specials.asm"
_PrintNum:: ; c4c7
@@ -9145,7 +4825,7 @@ Functionc7ce: ; c7ce
UnknownScript_0xc7fe: ; c7fe
reloadmappart
- special $0035
+ special UpdateTimePals
UnknownScript_0xc802: ; 0xc802
callasm GetPartyNick
@@ -9302,7 +4982,7 @@ Functionc8e0: ; c8e0
UnknownScript_0xc8e6: ; 0xc8e6
reloadmappart
- special $0035
+ special UpdateTimePals
writetext UnknownText_0xc8f3
callasm Function8c7e1
loadmovesprites
@@ -9401,7 +5081,7 @@ Functionc97a: ; c97a (3:497a)
; c983 (3:4983)
UnknownScript_0xc983: ; c983
- special $0035
+ special UpdateTimePals
UsedSurfScript: ; c986
writetext UsedSurfText ; "used SURF!"
@@ -9413,10 +5093,10 @@ UsedSurfScript: ; c986
copybytetovar Buffer2
writevarcode VAR_MOVEMENT
- special SPECIAL_UPDATESPRITETILES
- special SPECIAL_BIKESURFMUSIC
+ special Functione4a
+ special PlayMapMusic
; step into the water
- special SPECIAL_LOADFACESTEP ; (slow_step_x, step_end)
+ special Function8379 ; (slow_step_x, step_end)
applymovement 0, MovementBuffer ; PLAYER, MovementBuffer
end
; c9a2
@@ -9635,15 +5315,15 @@ Functionca9d: ; ca9d
UnknownScript_0xcaa3: ; 0xcaa3
reloadmappart
callasm HideSprites
- special $0035
+ special UpdateTimePals
callasm Function8caed
farscall UnknownScript_0x122c1
- special $0000
+ special Function97c28
callasm Function154f1
writecode $8, $0
newloadmap $fc
callasm Function8cb33
- special $003b
+ special WaitSFX
callasm Functioncacb
end
; 0xcacb
@@ -9700,7 +5380,7 @@ Functioncb07: ; cb07
UnknownScript_0xcb1c: ; 0xcb1c
reloadmappart
- special $0035
+ special UpdateTimePals
UnknownScript_0xcb20: ; 0xcb20
callasm GetPartyNick
@@ -9891,14 +5571,14 @@ UnknownText_0xcc26: ; 0xcc26
UnknownScript_0xcc2b: ; 0xcc2b
reloadmappart
- special $0035
+ special UpdateTimePals
writetext UnknownText_0xcc21
jump UnknownScript_0xcc3c
; 0xcc35
UnknownScript_0xcc35: ; 0xcc35
reloadmappart
- special $0035
+ special UpdateTimePals
writetext UnknownText_0xcc1c
UnknownScript_0xcc3c: ; 0xcc3c
@@ -9907,7 +5587,7 @@ UnknownScript_0xcc3c: ; 0xcc3c
playsound SFX_WARP_TO
applymovement $0, MovementData_0xcc59
farscall UnknownScript_0x122c1
- special $0000
+ special Function97c28
writecode $8, $0
newloadmap $f5
playsound SFX_WARP_FROM
@@ -9997,7 +5677,7 @@ UnknownText_0xccb6: ; 0xccb6
UnknownScript_0xccbb: ; 0xccbb
reloadmappart
- special $0035
+ special UpdateTimePals
writetext UnknownText_0xccb1
pause 60
reloadmappart
@@ -10005,7 +5685,7 @@ UnknownScript_0xccbb: ; 0xccbb
playsound SFX_WARP_TO
applymovement $0, MovementData_0xcce1
farscall UnknownScript_0x122c1
- special $0000
+ special Function97c28
writecode $8, $0
newloadmap $f4
playsound SFX_WARP_FROM
@@ -10082,7 +5762,7 @@ Functioncd1d: ; cd1d
UnknownScript_0xcd29: ; 0xcd29
reloadmappart
- special $0035
+ special UpdateTimePals
UnknownScript_0xcd2d: ; 0xcd2d
callasm Functioncd12
@@ -10262,7 +5942,7 @@ Functioncdde: ; cdde
UnknownScript_0xce0b: ; 0xce0b
reloadmappart
- special $0035
+ special UpdateTimePals
UnknownScript_0xce0f: ; 0xce0f
callasm GetPartyNick
@@ -10375,7 +6055,7 @@ UnknownText_0xcea2: ; 0xcea2
HeadbuttFromMenuScript: ; 0xcea7
reloadmappart
- special $0035
+ special UpdateTimePals
HeadbuttScript: ; 0xceab
callasm GetPartyNick
@@ -10481,13 +6161,13 @@ Functioncf0d: ; cf0d
RockSmashFromMenuScript: ; 0xcf2e
reloadmappart
- special $0035
+ special UpdateTimePals
RockSmashScript: ; cf32
callasm GetPartyNick
writetext UnknownText_0xcf58
loadmovesprites
- special $003b
+ special WaitSFX
playsound SFX_STRENGTH
earthquake 84
applymovement2 MovementData_0xcf55
@@ -10732,7 +6412,7 @@ Functiond06c: ; d06c
UnknownScript_0xd07c: ; 0xd07c
reloadmappart
loadvar $ffd4, $0
- special $0035
+ special UpdateTimePals
loademote $9
callasm Functionb84b3
loademote $0
@@ -10866,19 +6546,19 @@ Functiond121: ; d121
UnknownScript_0xd13e: ; 0xd13e
reloadmappart
- special $0035
+ special UpdateTimePals
writecode $8, $1
writetext UnknownText_0xd17c
closetext
loadmovesprites
- special $0038
+ special Functione4a
end
; 0xd14e
UnknownScript_0xd14e: ; 0xd14e
writecode $8, $1
loadmovesprites
- special $0038
+ special Functione4a
end
; 0xd156
@@ -10888,15 +6568,15 @@ Functiond156: ; unreferenced
UnknownScript_0xd158: ; 0xd158
reloadmappart
- special $0035
+ special UpdateTimePals
writecode $8, $0
writetext UnknownText_0xd181
closetext
UnknownScript_0xd163:
loadmovesprites
- special $0038
- special $003c
+ special Functione4a
+ special PlayMapMusic
end
; 0xd16b
@@ -13615,26 +9295,26 @@ Functione039: ; e039
; e134
Functione134: ; e134
- ld a, $1f
+ ld a, PartyMon1Level - PartyMon1
call GetPartyParamLocation
ld a, [hl]
- ld [$001f], a ; wow
- ld a, $0
+ ld [PartyMon1Level - PartyMon1], a ; wow
+ ld a, PartyMon1Species - PartyMon1
call GetPartyParamLocation
ld a, [hl]
ld [CurSpecies], a
call GetBaseData
- ld a, $24
+ ld a, PartyMon1MaxHP - PartyMon1
call GetPartyParamLocation
ld d, h
ld e, l
push de
- ld a, $a
+ ld a, PartyMon1Exp + 2 - PartyMon1
call GetPartyParamLocation
ld b, $1
call Functione167
pop de
- ld a, $22
+ ld a, PartyMon1HP - PartyMon1
call GetPartyParamLocation
ld a, [de]
inc de
@@ -14671,1696 +10351,9 @@ UnknownText_0xfa06: ; 0xfa06
SECTION "bank4", ROMX, BANK[$4]
-Pack: ; 10000
- ld hl, Options
- set 4, [hl]
- call Function1068a
-.loop
- call Functiona57
- ld a, [wcf63]
- bit 7, a
- jr nz, .done
- call Function10026
- call DelayFrame
- jr .loop
-
-.done
- ld a, [wcf65]
- ld [wd0d6], a
- ld hl, Options
- res 4, [hl]
- ret
-; 10026
-
-Function10026: ; 10026
- ld a, [wcf63]
- ld hl, Jumptable_10030
- call Function1086b
- jp [hl]
-; 10030
-
-
-Jumptable_10030: ; 10030 (4:4030)
- dw Function10046
- dw Function10056
- dw Function10067
- dw Function10186
- dw Function10198
- dw Function10094
- dw Function100a6
- dw Function100d3
- dw Function100e8
- dw Function10874
- dw Function1087e
-
-
-Function10046: ; 10046 (4:4046)
- xor a
- ld [hBGMapMode], a ; $ff00+$d4
- call Function10955
- ld a, [wcf64]
- ld [wcf63], a
- call Function10a40
- ret
-
-Function10056: ; 10056 (4:4056)
- xor a
- ld [wcf65], a
- call Function10a36
- call Function109bb
- call Function1089a
- call Function10866
- ret
-
-Function10067: ; 10067 (4:4067)
- ld hl, MenuDataHeader_0x10a4f
- call Function1d3c
- ld a, [wd0d9]
- ld [wcf88], a
- ld a, [wd0df]
- ld [wd0e4], a
- call Function350c
- ld a, [wd0e4]
- ld [wd0df], a
- ld a, [wcfa9]
- ld [wd0d9], a
- ld b, $7
- ld c, $3
- call Function108d4
- ret c
- call Function101c5
- ret
-
-Function10094: ; 10094 (4:4094)
- ld a, $2
- ld [wcf65], a
- call Function10a36
- call Function109bb
- call Function1089a
- call Function10866
- ret
-
-Function100a6: ; 100a6 (4:40a6)
- ld hl, MenuDataHeader_0x10a7f
- call Function1d3c
- ld a, [wd0da]
- ld [wcf88], a
- ld a, [wd0e0]
- ld [wd0e4], a
- call Function350c
- ld a, [wd0e4]
- ld [wd0e0], a
- ld a, [wcfa9]
- ld [wd0da], a
- ld b, $3
- ld c, $7
- call Function108d4
- ret c
- call Function101c5
- ret
-
-Function100d3: ; 100d3 (4:40d3)
- ld a, $3
- ld [wcf65], a
- call Function10a36
- call Function109bb
- xor a
- ld [hBGMapMode], a ; $ff00+$d4
- call Function1089a
- call Function10866
- ret
-
-Function100e8: ; 100e8 (4:40e8)
- callba Function2c76f
- ld b, $5
- ld c, $1
- call Function108d4
- ret c
- callba _CheckTossableItem
- ld a, [wd142]
- and a
- jr nz, .asm_1010a
- ld hl, MenuDataHeader_0x1013b
- ld de, Jumptable_10153
- jr .asm_10110
-.asm_1010a
- ld hl, MenuDataHeader_0x10124
- ld de, Jumptable_10137
-.asm_10110
- push de
- call LoadMenuDataHeader
- call Function1d81
- call Function1c07
- pop hl
- ret c
- ld a, [wcfa9]
- dec a
- call Function1086b
- jp [hl]
-; 10124 (4:4124)
-
-MenuDataHeader_0x10124: ; 0x10124
- db $40 ; flags
- db 07, 13 ; start coords
- db 11, 19 ; end coords
- dw MenuData2_0x1012c
- db 1 ; default option
-; 0x1012c
-
-MenuData2_0x1012c: ; 0x1012c
- db $c0 ; flags
- db 2 ; items
- db "USE@"
- db "QUIT@"
-; 0x10137
-
-Jumptable_10137: ; 10137
- dw Function10159
- dw Function10492
-; 1013b
-
-MenuDataHeader_0x1013b: ; 0x1013b
- db $40 ; flags
- db 05, 13 ; start coords
- db 11, 19 ; end coords
- dw MenuData2_0x10143
- db 1 ; default option
-; 0x10143
-
-MenuData2_0x10143: ; 0x10143
- db $c0 ; flags
- db 3 ; items
- db "USE@"
- db "GIVE@"
- db "QUIT@"
-; 0x10153
-
-Jumptable_10153: ; 10153
- dw Function10159
- dw Function103fd
- dw Function10492
-; 10159
-
-Function10159: ; 10159
- callba Function2c7bf
- ret c
- callba Function2c7fb
- jr c, .asm_10179
- ld hl, Options
- ld a, [hl]
- push af
- res 4, [hl]
- callba Function2c867
- pop af
- ld [Options], a
-.asm_10179
- xor a
- ld [hBGMapMode], a ; $ff00+$d4
- call Function10955
- call Function1089a
- call Function10a40
- ret
-
-Function10186: ; 10186 (4:4186)
- ld a, $1
- ld [wcf65], a
- call Function10a36
- call Function109bb
- call Function1089a
- call Function10866
- ret
-
-Function10198: ; 10198 (4:4198)
- ld hl, MenuDataHeader_0x10aaf
- call Function1d3c
- ld a, [wd0db]
- ld [wcf88], a
- ld a, [wd0e1]
- ld [wd0e4], a
- call Function350c
- ld a, [wd0e4]
- ld [wd0e1], a
- ld a, [wcfa9]
- ld [wd0db], a
- ld b, $1
- ld c, $5
- call Function108d4
- ret c
- call Function101c5
- ret
-
-Function101c5: ; 101c5 (4:41c5)
- callba _CheckTossableItem
- ld a, [wd142]
- and a
- jr nz, .asm_101f9
- callba CheckSelectableItem
- ld a, [wd142]
- and a
- jr nz, .asm_101eb
- callba CheckItemMenu
- ld a, [wd142]
- and a
- jr nz, .asm_10207
- jr .asm_10227
-.asm_101eb
- callba CheckItemMenu
- ld a, [wd142]
- and a
- jr nz, .asm_1020f
- jr .asm_1022f
-.asm_101f9
- callba CheckSelectableItem
- ld a, [wd142]
- and a
- jr nz, .asm_10217
- jr .asm_1021f
-.asm_10207
- ld hl, MenuDataHeader_0x10249
- ld de, Jumptable_1026a
- jr .asm_10235
-.asm_1020f
- ld hl, MenuDataHeader_0x10274
- ld de, Jumptable_10291
- jr .asm_10235
-.asm_10217
- ld hl, MenuDataHeader_0x10299
- ld de, Jumptable_102ac
- jr .asm_10235
-.asm_1021f
- ld hl, MenuDataHeader_0x102b0
- ld de, Jumptable_102c7
- jr .asm_10235
-.asm_10227
- ld hl, MenuDataHeader_0x102cd
- ld de, Jumptable_102ea
- jr .asm_10235
-.asm_1022f
- ld hl, MenuDataHeader_0x102f2
- ld de, Jumptable_1030b
-.asm_10235
- push de
- call LoadMenuDataHeader
- call Function1d81
- call Function1c07
- pop hl
- ret c
- ld a, [wcfa9]
- dec a
- call Function1086b
- jp [hl]
-; 10249 (4:4249)
-
-MenuDataHeader_0x10249: ; 0x10249
- db $40 ; flags
- db 01, 13 ; start coords
- db 11, 19 ; end coords
- dw MenuData2_0x10251
- db 1 ; default option
-; 0x10251
-
-MenuData2_0x10251: ; 0x10251
- db $c0 ; flags
- db 5 ; items
- db "USE@"
- db "GIVE@"
- db "TOSS@"
- db "SEL@"
- db "QUIT@"
-; 0x1026a
-
-Jumptable_1026a: ; 1026a
- dw Function10311
- dw Function103fd
- dw Function10364
- dw Function103c2
- dw Function10492
-; 10274
-
-MenuDataHeader_0x10274: ; 0x10274
- db $40 ; flags
- db 03, 13 ; start coords
- db 11, 19 ; end coords
- dw MenuData2_0x1027c
- db 1 ; default option
-; 0x1027c
-
-MenuData2_0x1027c: ; 0x1027c
- db $c0 ; flags
- db 4 ; items
- db "USE@"
- db "GIVE@"
- db "TOSS@"
- db "QUIT@"
-; 0x10291
-
-Jumptable_10291: ; 10291
- dw Function10311
- dw Function103fd
- dw Function10364
- dw Function10492
-; 10299
-
-MenuDataHeader_0x10299: ; 0x10299
- db $40 ; flags
- db 07, 13 ; start coords
- db 11, 19 ; end coords
- dw MenuData2_0x102a1
- db 1 ; default option
-; 0x102a1
-
-MenuData2_0x102a1: ; 0x102a1
- db $c0 ; flags
- db 2 ; items
- db "USE@"
- db "QUIT@"
-; 0x102ac
-
-Jumptable_102ac: ; 102ac
- dw Function10311
- dw Function10492
-; 102b0
-
-MenuDataHeader_0x102b0: ; 0x102b0
- db $40 ; flags
- db 05, 13 ; start coords
- db 11, 19 ; end coords
- dw MenuData2_0x102b8
- db 1 ; default option
-; 0x102b8
-
-MenuData2_0x102b8: ; 0x102b8
- db $c0 ; flags
- db 3 ; items
- db "USE@"
- db "SEL@"
- db "QUIT@"
-; 0x102c7
-
-Jumptable_102c7: ; 102c7
- dw Function10311
- dw Function103c2
- dw Function10492
-; 102cd
-
-MenuDataHeader_0x102cd: ; 0x102cd
- db $40 ; flags
- db 03, 13 ; start coords
- db 11, 19 ; end coords
- dw MenuData2_0x102d5
- db 1 ; default option
-; 0x102d5
-
-MenuData2_0x102d5: ; 0x102d5
- db $c0 ; flags
- db 4 ; items
- db "GIVE@"
- db "TOSS@"
- db "SEL@"
- db "QUIT@"
-; 0x102ea
-
-Jumptable_102ea: ; 102ea
- dw Function103fd
- dw Function10364
- dw Function103c2
- dw Function10492
-; 102f2
-
-MenuDataHeader_0x102f2: ; 0x102f2
- db $40 ; flags
- db 05, 13 ; start coords
- db 11, 19 ; end coords
- dw MenuData2_0x102fa
- db 1 ; default option
-; 0x102fa
-
-MenuData2_0x102fa: ; 0x102fa
- db $c0 ; flags
- db 3 ; items
- db "GIVE@"
- db "TOSS@"
- db "QUIT@"
-; 0x1030b
-
-Jumptable_1030b: ; 1030b
- dw Function103fd
- dw Function10364
- dw Function10492
-; 10311
-
-Function10311: ; 10311
- callba CheckItemMenu
- ld a, [wd142]
- ld hl, Jumptable_1031f
- rst JumpTable
- ret
-; 1031f
-
-Jumptable_1031f: ; 1031f (4:431f)
- dw Function1032d
- dw Function1032d
- dw Function1032d
- dw Function1032d
- dw Function10334
- dw Function10338
- dw Function10355
-; 1035c
-
-Function1032d: ; 1032d (4:432d)
- ld hl, UnknownText_0x10af3
- call Function10889
- ret
-
-Function10334: ; 10334 (4:4334)
- call DoItemEffect
- ret
-
-Function10338: ; 10338 (4:4338)
- ld a, [PartyCount]
- and a
- jr z, .asm_1034e
- call DoItemEffect
- xor a
- ld [hBGMapMode], a ; $ff00+$d4
- call Function10955
- call Function1089a
- call Function10a40
- ret
-.asm_1034e
- ld hl, UnknownText_0x10af8
- call Function10889
- ret
-
-Function10355: ; 10355 (4:4355)
- call DoItemEffect
- ld a, [wd0ec]
- and a
- jr z, Function1032d
- ld a, $a
- ld [wcf63], a
- ret
-; 10364 (4:4364)
-
-Function10364: ; 10364
- ld hl, UnknownText_0x10ae4
- call Function10889
- callba Function24fbf
- push af
- call Function1c07
- pop af
- jr c, .asm_1039c
- call Function10a1d
- ld hl, UnknownText_0x10ae9
- call Function1d4f
- call YesNoBox
- push af
- call Function1c07
- pop af
- jr c, .asm_1039c
- ld hl, NumItems
- ld a, [wd107]
- call TossItem
- call Function10a1d
- ld hl, UnknownText_0x10aee
- call Function10889
-
-.asm_1039c
- ret
-; 1039d
-
-Function1039d: ; 1039d
- ld a, [wcf65]
- and a
- jr z, .asm_103b2
- dec a
- jr z, .asm_103aa
- dec a
- jr z, .asm_103ba
- ret
-
-.asm_103aa
- xor a
- ld [wd0db], a
- ld [wd0e1], a
- ret
-
-.asm_103b2
- xor a
- ld [wd0d9], a
- ld [wd0df], a
- ret
-
-.asm_103ba
- xor a
- ld [wd0da], a
- ld [wd0e0], a
- ret
-; 103c2
-
-Function103c2: ; 103c2
- callba CheckSelectableItem
- ld a, [wd142]
- and a
- jr nz, .asm_103f6
- ld a, [wcf65]
- rrca
- rrca
- and $c0
- ld b, a
- ld a, [wd107]
- inc a
- and $3f
- or b
- ld [WhichRegisteredItem], a
- ld a, [CurItem]
- ld [RegisteredItem], a
- call Function10a1d
- ld de, SFX_FULL_HEAL
- call WaitPlaySFX
- ld hl, UnknownText_0x10afd
- call Function10889
- ret
-
-.asm_103f6
- ld hl, UnknownText_0x10b02
- call Function10889
- ret
-; 103fd
-
-Function103fd: ; 103fd
- ld a, [PartyCount]
- and a
- jp z, Function10486
- ld a, [Options]
- push af
- res 4, a
- ld [Options], a
- ld a, $8
- ld [PartyMenuActionText], a
- call WhiteBGMap
- callba Function5004f
- callba Function50405
- callba Function503e0
-.asm_10427
- callba WritePartyMenuTilemap
- callba PrintPartyMenuText
- call WaitBGMap
- call Function32f9
- call DelayFrame
- callba PartyMenuSelect
- jr c, .asm_10475
- ld a, [CurPartySpecies]
- cp EGG
- jr nz, .asm_10453
- ld hl, UnknownText_0x1048d
- call PrintText
- jr .asm_10427
-.asm_10453
- ld a, [wcf63]
- push af
- ld a, [wcf64]
- push af
- call GetCurNick
- ld hl, StringBuffer1
- ld de, wd050
- ld bc, PKMN_NAME_LENGTH
- call CopyBytes
- call Function12bd9
- pop af
- ld [wcf64], a
- pop af
- ld [wcf63], a
-.asm_10475
- pop af
- ld [Options], a
- xor a
- ld [hBGMapMode], a ; $ff00+$d4
- call Function10955
- call Function1089a
- call Function10a40
- ret
-
-Function10486: ; 10486 (4:4486)
- ld hl, UnknownText_0x10af8
- call Function10889
- ret
-; 1048d (4:448d)
-
-UnknownText_0x1048d: ; 0x1048d
- ; An EGG can't hold an item.
- text_jump UnknownText_0x1c0b7f
- db "@"
-; 0x10492
-
-Function10492: ; 10492
- ret
-; 10493
-
-
-BattlePack: ; 10493
- ld hl, Options
- set 4, [hl]
- call Function1068a
-.asm_1049b
- call Functiona57
- ld a, [wcf63]
- bit 7, a
- jr nz, .asm_104ad
- call Function104b9
- call DelayFrame
- jr .asm_1049b
-
-.asm_104ad
- ld a, [wcf65]
- ld [wd0d6], a
- ld hl, Options
- res 4, [hl]
- ret
-; 104b9
-
-Function104b9: ; 104b9
- ld a, [wcf63]
- ld hl, Jumptable_104c3
- call Function1086b
- jp [hl]
-; 104c3
-
-
-Jumptable_104c3: ; 104c3 (4:44c3)
- dw Function104d9
- dw Function104e9
- dw Function104fa
- dw Function10594
- dw Function105a6
- dw Function10527
- dw Function10539
- dw Function10566
- dw Function10581
- dw Function10874
- dw Function1087e
-
-
-Function104d9: ; 104d9 (4:44d9)
- xor a
- ld [hBGMapMode], a ; $ff00+$d4
- call Function10955
- ld a, [wcf64]
- ld [wcf63], a
- call Function10a40
- ret
-
-Function104e9: ; 104e9 (4:44e9)
- xor a
- ld [wcf65], a
- call Function10a36
- call Function109bb
- call Function1089a
- call Function10866
- ret
-
-Function104fa: ; 104fa (4:44fa)
- ld hl, MenuDataHeader_0x10a4f
- call Function1d3c
- ld a, [wd0d9]
- ld [wcf88], a
- ld a, [wd0df]
- ld [wd0e4], a
- call Function350c
- ld a, [wd0e4]
- ld [wd0df], a
- ld a, [wcfa9]
- ld [wd0d9], a
- ld b, $7
- ld c, $3
- call Function108d4
- ret c
- call Function105d3
- ret
-
-Function10527: ; 10527 (4:4527)
- ld a, $2
- ld [wcf65], a
- call Function10a36
- call Function109bb
- call Function1089a
- call Function10866
- ret
-
-Function10539: ; 10539 (4:4539)
- ld hl, MenuDataHeader_0x10a7f
- call Function1d3c
- ld a, [wd0da]
- ld [wcf88], a
- ld a, [wd0e0]
- ld [wd0e4], a
- call Function350c
- ld a, [wd0e4]
- ld [wd0e0], a
- ld a, [wcfa9]
- ld [wd0da], a
- ld b, $3
- ld c, $7
- call Function108d4
- ret c
- call Function105d3
- ret
-
-Function10566: ; 10566 (4:4566)
- ld a, $3
- ld [wcf65], a
- call Function10a36
- call Function109bb
- xor a
- ld [hBGMapMode], a ; $ff00+$d4
- call Function1089a
- ld hl, UnknownText_0x10b0c
- call Function10889
- call Function10866
- ret
-
-Function10581: ; 10581 (4:4581)
- callba Function2c76f
- ld b, $5
- ld c, $1
- call Function108d4
- ret c
- xor a
- call Function105dc
- ret
-
-Function10594: ; 10594 (4:4594)
- ld a, $1
- ld [wcf65], a
- call Function10a36
- call Function109bb
- call Function1089a
- call Function10866
- ret
-
-Function105a6: ; 105a6 (4:45a6)
- ld hl, MenuDataHeader_0x10aaf
- call Function1d3c
- ld a, [wd0db]
- ld [wcf88], a
- ld a, [wd0e1]
- ld [wd0e4], a
- call Function350c
- ld a, [wd0e4]
- ld [wd0e1], a
- ld a, [wcfa9]
- ld [wd0db], a
- ld b, $1
- ld c, $5
- call Function108d4
- ret c
- call Function105d3
- ret
-
-Function105d3: ; 105d3 (4:45d3)
- callba CheckItemContext
- ld a, [wd142]
-
-Function105dc: ; 105dc (4:45dc)
- and a
- jr z, .asm_105e7
- ld hl, MenuDataHeader_0x10601
- ld de, Jumptable_10614
- jr .asm_105ed
-.asm_105e7
- ld hl, MenuDataHeader_0x10618
- ld de, Jumptable_10627
-.asm_105ed
- push de
- call LoadMenuDataHeader
- call Function1d81
- call Function1c07
- pop hl
- ret c
- ld a, [wcfa9]
- dec a
- call Function1086b
- jp [hl]
-; 10601 (4:4601)
-
-MenuDataHeader_0x10601: ; 0x10601
- db $40 ; flags
- db 07, 13 ; start coords
- db 11, 19 ; end coords
- dw MenuData2_0x10609
- db 1 ; default option
-; 0x10609
-
-MenuData2_0x10609: ; 0x10609
- db $c0 ; flags
- db 2 ; items
- db "USE@"
- db "QUIT@"
-; 0x10614
-
-Jumptable_10614: ; 10614
- dw Function10629
- dw Function10689
-; 10618
-
-MenuDataHeader_0x10618: ; 0x10618
- db $40 ; flags
- db 09, 13 ; start coords
- db 11, 19 ; end coords
- dw MenuData2_0x10620
- db 1 ; default option
-; 0x10620
-
-MenuData2_0x10620: ; 0x10620
- db $c0 ; flags
- db 1 ; items
- db "QUIT@"
-; 0x10627
-
-Jumptable_10627: ; 10627
- dw Function10689
-; 10629
-
-Function10629: ; 10629
- callba CheckItemContext
- ld a, [wd142]
- ld hl, Jumptable_10637
- rst JumpTable
- ret
-
-Jumptable_10637: ; 10637 (4:4637)
- dw Function10645
- dw Function10645
- dw Function10645
- dw Function10645
- dw Function1064c
- dw Function10656
- dw Function10671
-
-
-Function10645: ; 10645 (4:4645)
- ld hl, UnknownText_0x10af3
- call Function10889
- ret
-
-Function1064c: ; 1064c (4:464c)
- call DoItemEffect
- ld a, [wd0ec]
- and a
- jr nz, asm_1066c
- ret
-
-Function10656: ; 10656 (4:4656)
- call DoItemEffect
- ld a, [wd0ec]
- and a
- jr nz, asm_1067e
- xor a
- ld [hBGMapMode], a ; $ff00+$d4
- call Function10955
- call Function1089a
- call Function10a40
- ret
-asm_1066c: ; 1066c (4:466c)
- call WhiteBGMap
- jr asm_1067e
-
-Function10671: ; 10671 (4:4671)
- call DoItemEffect
- ld a, [wd0ec]
- and a
- jr z, Function10645
- cp $2
- jr z, asm_10684
-asm_1067e: ; 1067e (4:467e)
- ld a, $a
- ld [wcf63], a
- ret
-asm_10684: ; 10684 (4:4684)
- xor a
- ld [wd0ec], a
- ret
-; 10689 (4:4689)
-
-Function10689: ; 10689
- ret
-; 1068a
-
-
-Function1068a: ; 1068a
- xor a
- ld [wcf63], a
- ld a, [wd0d6]
- and $3
- ld [wcf65], a
- inc a
- add a
- dec a
- ld [wcf64], a
- xor a
- ld [wcf66], a
- xor a
- ld [wd0e3], a
- ret
-; 106a5
-
-Function106a5: ; 106a5
- xor a
- ld [hBGMapMode], a
- ld [wcf63], a
- ld [wcf64], a
- ld [wcf65], a
- ld [wcf66], a
- ld [wd0e3], a
- call Function10955
- call Function10a40
- ret
-; 106be
-
-Function106be: ; 106be
-.asm_106be
- call Function106c7
- call Function1076f
- jr c, .asm_106be
- ret
-; 106c7
-
-Function106c7: ; 106c7
- ld a, [wcf63]
- ld hl, Jumptable_106d1
- call Function1086b
- jp [hl]
-; 106d1
-
-
-Jumptable_106d1: ; 106d1 (4:46d1)
- dw Function106d9
- dw Function1073b
- dw Function106ff
- dw Function10726
-
-
-Function106d9: ; 106d9 (4:46d9)
- xor a
- call Function10762
- ld hl, MenuDataHeader_0x10a67
- call Function1d3c
- ld a, [wd0d9]
- ld [wcf88], a
- ld a, [wd0df]
- ld [wd0e4], a
- call Function350c
- ld a, [wd0e4]
- ld [wd0df], a
- ld a, [wcfa9]
- ld [wd0d9], a
- ret
-
-Function106ff: ; 106ff (4:46ff)
- ld a, $2
- call Function10762
- ld hl, MenuDataHeader_0x10a97
- call Function1d3c
- ld a, [wd0da]
- ld [wcf88], a
- ld a, [wd0e0]
- ld [wd0e4], a
- call Function350c
- ld a, [wd0e4]
- ld [wd0e0], a
- ld a, [wcfa9]
- ld [wd0da], a
- ret
-
-Function10726: ; 10726 (4:4726)
- ld a, $3
- call Function10762
- call Function1089a
- callba Function2c76f
- ld a, [CurItem]
- ld [CurItem], a
- ret
-
-Function1073b: ; 1073b (4:473b)
- ld a, $1
- call Function10762
- ld hl, MenuDataHeader_0x10ac7
- call Function1d3c
- ld a, [wd0db]
- ld [wcf88], a
- ld a, [wd0e1]
- ld [wd0e4], a
- call Function350c
- ld a, [wd0e4]
- ld [wd0e1], a
- ld a, [wcfa9]
- ld [wd0db], a
- ret
-
-Function10762: ; 10762 (4:4762)
- ld [wcf65], a
- call Function10a36
- call Function109bb
- call Function1089a
- ret
-
-
-Function1076f: ; 1076f
- ld hl, wcf73
- ld a, [hl]
- and $1
- jr nz, .asm_10788
- ld a, [hl]
- and $2
- jr nz, .asm_1078f
- ld a, [hl]
- and $20
- jr nz, .asm_10795
- ld a, [hl]
- and $10
- jr nz, .asm_107a8
- scf
- ret
-
-.asm_10788
- ld a, $1
- ld [wcf66], a
- and a
- ret
-
-.asm_1078f
- xor a
- ld [wcf66], a
- and a
- ret
-
-.asm_10795
- ld a, [wcf63]
- dec a
- and $3
- ld [wcf63], a
- push de
- ld de, SFX_UNKNOWN_62
- call PlaySFX
- pop de
- scf
- ret
-
-.asm_107a8
- ld a, [wcf63]
- inc a
- and $3
- ld [wcf63], a
- push de
- ld de, SFX_UNKNOWN_62
- call PlaySFX
- pop de
- scf
- ret
-; 107bb
-
-Function107bb: ; 107bb
- call Function106a5
- ld a, [InputType]
- or a
- jr z, .asm_107ca
- callba Function1de28f
-
-.asm_107ca
- call Function107d7
- call Function1076f
- jr c, .asm_107ca
- xor a
- ld [wcf66], a
- ret
-; 107d7
-
-Function107d7: ; 107d7
- ld a, [wcf63]
- ld hl, Jumptable_107e1
- call Function1086b
- jp [hl]
-; 107e1
-
-
-Jumptable_107e1: ; 107e1 (4:47e1)
- dw Function107e9
- dw Function1083b
- dw Function10807
- dw Function10826
-
-
-Function107e9: ; 107e9 (4:47e9)
- xor a
- ld hl, MenuDataHeader_0x107ef
- jr Function1085a
-; 107ef (4:47ef)
-
-MenuDataHeader_0x107ef: ; 0x107ef
- db $40 ; flags
- db 01, 07 ; start coords
- db 11, 19 ; end coords
- dw MenuData2_0x107f7
- db 1 ; default option
-; 0x107f7
-
-MenuData2_0x107f7: ; 0x107f7
- db $ae ; flags
- db 5, 8 ; rows, columns
- db 2 ; horizontal spacing
- dbw 0, OTPartyMons
- dbw BANK(Function24ab4), Function24ab4
- dbw BANK(Function24ac3), Function24ac3
- dbw BANK(Function244c3), Function244c3
-; 10807
-
-Function10807: ; 10807 (4:4807)
- ld a, $2
- ld hl, MenuDataHeader_0x1080e
- jr Function1085a
-; 1080e (4:480e)
-
-MenuDataHeader_0x1080e: ; 0x1080e
- db $40 ; flags
- db 01, 07 ; start coords
- db 11, 19 ; end coords
- dw MenuData2_0x10816
- db 1 ; default option
-; 0x10816
-
-MenuData2_0x10816: ; 0x10816
- db $ae ; flags
- db 5, 8 ; rows, columns
- db 1 ; horizontal spacing
- dbw 0, OTPartyMon1Exp + 2
- dbw BANK(Function24ab4), Function24ab4
- dbw BANK(Function24ac3), Function24ac3
- dbw BANK(Function244c3), Function244c3
-; 10826
-
-Function10826: ; 10826 (4:4826)
- ld a, $3
- call Function10762
- call Function1089a
- callba Function2c76f
- ld a, [CurItem]
- ld [CurItem], a
- ret
-
-Function1083b: ; 1083b (4:483b)
- ld a, $1
- ld hl, MenuDataHeader_0x10842
- jr Function1085a
-; 10842 (4:4842)
-
-MenuDataHeader_0x10842: ; 0x10842
- db $40 ; flags
- db 01, 07 ; start coords
- db 11, 19 ; end coords
- dw MenuData2_0x1084a
- db 1 ; default option
-; 0x1084a
-
-MenuData2_0x1084a: ; 0x1084a
- db $ae ; flags
- db 5, 8 ; rows, columns
- db 2 ; horizontal spacing
- dbw 0, OTPartyMon1CaughtGender
- dbw BANK(Function24ab4), Function24ab4
- dbw BANK(Function24ac3), Function24ac3
- dbw BANK(Function244c3), Function244c3
-; 1085a
-
-Function1085a: ; 1085a (4:485a)
- push hl
- call Function10762
- pop hl
- call Function1d3c
- call Function350c
- ret
-
-Function10866: ; 10866 (4:4866)
- ld hl, wcf63
- inc [hl]
- ret
-
-Function1086b: ; 1086b
- ld e, a
- ld d, 0
- add hl, de
- add hl, de
- ld a, [hli]
- ld h, [hl]
- ld l, a
- ret
-; 10874
-
-Function10874: ; 10874 (4:4874)
- ld hl, wcf63
- set 7, [hl]
- xor a
- ld [wcf66], a
- ret
-
-Function1087e: ; 1087e (4:487e)
- ld hl, wcf63
- set 7, [hl]
- ld a, $1
- ld [wcf66], a
- ret
-
-Function10889: ; 10889 (4:4889)
- ld a, [Options]
- push af
- set 4, a
- ld [Options], a
- call PrintText
- pop af
- ld [Options], a
- ret
-
-Function1089a: ; 1089a (4:489a)
- call WaitBGMap
-
-
-Function1089d: ; 1089d
- ld a, [wcf65]
- and $3
- ld e, a
- ld d, $0
- ld a, [BattleType]
- cp BATTLETYPE_TUTORIAL
- jr z, .asm_108b3
- ld a, [PlayerGender]
- bit 0, a
- jr nz, .asm_108c5
-
-.asm_108b3
- ld hl, PackGFXPointers
- add hl, de
- add hl, de
- ld a, [hli]
- ld e, a
- ld d, [hl]
- ld hl, $9500
- lb bc, BANK(PackGFX), 15
- call Request2bpp
- ret
-
-.asm_108c5
- callba Function48e81
- ret
-; 108cc
-
-PackGFXPointers: ; 108cc
- dw PackGFX + $f0 * 1
- dw PackGFX + $f0 * 3
- dw PackGFX + $f0 * 0
- dw PackGFX + $f0 * 2
-; 108d4
-
-Function108d4: ; 108d4 (4:48d4)
- ld hl, wcf73
- ld a, [wd0e3]
- and a
- jr nz, .asm_10931
- ld a, [hl]
- and $1
- jr nz, .asm_108f8
- ld a, [hl]
- and $2
- jr nz, .asm_108fa
- ld a, [hl]
- and $20
- jr nz, .asm_10901
- ld a, [hl]
- and $10
- jr nz, .asm_10912
- ld a, [hl]
- and $4
- jr nz, .asm_10923
- scf
- ret
-.asm_108f8
- and a
- ret
-.asm_108fa
- ld a, $9
- ld [wcf63], a
- scf
- ret
-.asm_10901
- ld a, b
- ld [wcf63], a
- ld [wcf64], a
- push de
- ld de, SFX_UNKNOWN_62
- call PlaySFX
- pop de
- scf
- ret
-.asm_10912
- ld a, c
- ld [wcf63], a
- ld [wcf64], a
- push de
- ld de, SFX_UNKNOWN_62
- call PlaySFX
- pop de
- scf
- ret
-.asm_10923
- callba Function2490c
- ld hl, UnknownText_0x10b07
- call Function10889
- scf
- ret
-.asm_10931
- ld a, [hl]
- and $5
- jr nz, .asm_1093d
- ld a, [hl]
- and $2
- jr nz, .asm_1094f
- scf
- ret
-.asm_1093d
- callba Function2490c
- ld de, SFX_SWITCH_POKEMON
- call WaitPlaySFX
- ld de, SFX_SWITCH_POKEMON
- call WaitPlaySFX
-.asm_1094f
- xor a
- ld [wd0e3], a
- scf
- ret
-
-
-Function10955: ; 10955
- call WhiteBGMap
- call ClearTileMap
- call ClearSprites
- call DisableLCD
- ld hl, PackMenuGFX
- ld de, VTiles2
- ld bc, $0600
- ld a, BANK(PackMenuGFX)
- call FarCopyBytes
- hlcoord 0, 1
- ld bc, $00dc
- ld a, $24
- call ByteFill
- hlcoord 5, 1
- lb bc, 11, 15
- call ClearBox
- ld hl, TileMap
- ld a, $28
- ld c, $14
-.asm_1098a
- ld [hli], a
- inc a
- dec c
- jr nz, .asm_1098a
- call Function109bb
- call Function109a5
- hlcoord 0, 12
- lb bc, 4, 18
- call TextBox
- call EnableLCD
- call Function1089d
- ret
-; 109a5
-
-Function109a5: ; 109a5
- hlcoord 0, 3
- ld a, $50
- ld de, 15
- ld b, 3
-.asm_109af
- ld c, 5
-.asm_109b1
- ld [hli], a
- inc a
- dec c
- jr nz, .asm_109b1
- add hl, de
- dec b
- jr nz, .asm_109af
- ret
-; 109bb
-
-Function109bb: ; 109bb
- ld a, [wcf65]
-
- ; * 15
- ld d, a
- swap a
- sub d
-
- ld d, 0
- ld e, a
- ld hl, Tilemap_109e1
- add hl, de
- ld d, h
- ld e, l
- hlcoord 0, 7
- ld c, 3
-.asm_109d0
- ld b, 5
-.asm_109d2
- ld a, [de]
- inc de
- ld [hli], a
- dec b
- jr nz, .asm_109d2
- ld a, c
- ld c, 15
- add hl, bc
- ld c, a
- dec c
- jr nz, .asm_109d0
- ret
-; 109e1
-Tilemap_109e1: ; 109e1
- db $00, $04, $04, $04, $01, $06, $07, $08, $09, $0a, $02, $05, $05, $05, $03
- db $00, $04, $04, $04, $01, $15, $16, $17, $18, $19, $02, $05, $05, $05, $03
- db $00, $04, $04, $04, $01, $0b, $0c, $0d, $0e, $0f, $02, $05, $05, $05, $03
- db $00, $04, $04, $04, $01, $10, $11, $12, $13, $14, $02, $05, $05, $05, $03
-; 10a1d
+INCLUDE "engine/pack.asm"
-Function10a1d: ; 10a1d
- ld a, [CurItem]
- ld [wd265], a
- call GetItemName
- call CopyName1
- ret
-; 10a2a
-
-Function10a2a: ; 10a2a
- ld hl, TileMap
- ld bc, $0168
- ld a, $7f
- call ByteFill
- ret
-; 10a36
-
-Function10a36: ; 10a36 (4:4a36)
- hlcoord 5, 2
- ld bc, $a0f
- call ClearBox
- ret
-
-
-Function10a40: ; 10a40
- call WaitBGMap
- ld b, $14
- call GetSGBLayout
- call Function32f9
- call DelayFrame
- ret
-; 10a4f
-
-MenuDataHeader_0x10a4f: ; 0x10a4f
- db $40 ; flags
- db 01, 07 ; start coords
- db 11, 19 ; end coords
- dw MenuData2_0x10a57
- db 1 ; default option
-; 0x10a57
-
-MenuData2_0x10a57: ; 0x10a57
- db $ae ; flags
- db 5, 8 ; rows, columns
- db 2 ; horizontal spacing
- dbw 0, NumItems
- dbw BANK(Function24ab4), Function24ab4
- dbw BANK(Function24ac3), Function24ac3
- dbw BANK(Function244c3), Function244c3
-; 10a67
-
-MenuDataHeader_0x10a67: ; 0x10a67
- db $40 ; flags
- db 01, 07 ; start coords
- db 11, 19 ; end coords
- dw MenuData2_0x10a6f
- db 1 ; default option
-; 0x10a6f
-
-MenuData2_0x10a6f: ; 0x10a6f
- db $2e ; flags
- db 5, 8 ; rows, columns
- db 2 ; horizontal spacing
- dbw 0, NumItems
- dbw BANK(Function24ab4), Function24ab4
- dbw BANK(Function24ac3), Function24ac3
- dbw BANK(Function244c3), Function244c3
-; 10a7f
-
-MenuDataHeader_0x10a7f: ; 0x10a7f
- db $40 ; flags
- db 01, 07 ; start coords
- db 11, 19 ; end coords
- dw MenuData2_0x10a87
- db 1 ; default option
-; 0x10a87
-
-MenuData2_0x10a87: ; 0x10a87
- db $ae ; flags
- db 5, 8 ; rows, columns
- db 1 ; horizontal spacing
- dbw 0, NumKeyItems
- dbw BANK(Function24ab4), Function24ab4
- dbw BANK(Function24ac3), Function24ac3
- dbw BANK(Function244c3), Function244c3
-; 10a97
-
-MenuDataHeader_0x10a97: ; 0x10a97
- db $40 ; flags
- db 01, 07 ; start coords
- db 11, 19 ; end coords
- dw MenuData2_0x10a9f
- db 1 ; default option
-; 0x10a9f
-
-MenuData2_0x10a9f: ; 0x10a9f
- db $2e ; flags
- db 5, 8 ; rows, columns
- db 1 ; horizontal spacing
- dbw 0, NumKeyItems
- dbw BANK(Function24ab4), Function24ab4
- dbw BANK(Function24ac3), Function24ac3
- dbw BANK(Function244c3), Function244c3
-; 10aaf
-
-MenuDataHeader_0x10aaf: ; 0x10aaf
- db $40 ; flags
- db 01, 07 ; start coords
- db 11, 19 ; end coords
- dw MenuData2_0x10ab7
- db 1 ; default option
-; 0x10ab7
-
-MenuData2_0x10ab7: ; 0x10ab7
- db $ae ; flags
- db 5, 8 ; rows, columns
- db 2 ; horizontal spacing
- dbw 0, NumBalls
- dbw BANK(Function24ab4), Function24ab4
- dbw BANK(Function24ac3), Function24ac3
- dbw BANK(Function244c3), Function244c3
-; 10ac7
-
-MenuDataHeader_0x10ac7: ; 0x10ac7
- db $40 ; flags
- db 01, 07 ; start coords
- db 11, 19 ; end coords
- dw MenuData2_0x10acf
- db 1 ; default option
-; 0x10acf
-
-MenuData2_0x10acf: ; 0x10acf
- db $2e ; flags
- db 5, 8 ; rows, columns
- db 2 ; horizontal spacing
- dbw 0, NumBalls
- dbw BANK(Function24ab4), Function24ab4
- dbw BANK(Function24ac3), Function24ac3
- dbw BANK(Function244c3), Function244c3
-; 10adf
-
-UnknownText_0x10adf: ; 0x10adf
- ; No items.
- text_jump UnknownText_0x1c0b9a
- db "@"
-; 0x10ae4
-
-UnknownText_0x10ae4: ; 0x10ae4
- ; Throw away how many?
- text_jump UnknownText_0x1c0ba5
- db "@"
-; 0x10ae9
-
-UnknownText_0x10ae9: ; 0x10ae9
- ; Throw away @ @ (S)?
- text_jump UnknownText_0x1c0bbb
- db "@"
-; 0x10aee
-
-UnknownText_0x10aee: ; 0x10aee
- ; Threw away @ (S).
- text_jump UnknownText_0x1c0bd8
- db "@"
-; 0x10af3
-
-UnknownText_0x10af3: ; 0x10af3
- ; OAK: ! This isn't the time to use that!
- text_jump UnknownText_0x1c0bee
- db "@"
-; 0x10af8
-
-UnknownText_0x10af8: ; 0x10af8
- ; You don't have a #MON!
- text_jump UnknownText_0x1c0c17
- db "@"
-; 0x10afd
-
-UnknownText_0x10afd: ; 0x10afd
- ; Registered the @ .
- text_jump UnknownText_0x1c0c2e
- db "@"
-; 0x10b02
-
-UnknownText_0x10b02: ; 0x10b02
- ; You can't register that item.
- text_jump UnknownText_0x1c0c45
- db "@"
-; 0x10b07
-
-UnknownText_0x10b07: ; 0x10b07
- ; Where should this be moved to?
- text_jump UnknownText_0x1c0c63
- db "@"
-; 0x10b0c
-
-UnknownText_0x10b0c: ; 0x10b0c
- ;
- text_jump UnknownText_0x1c0c83
- db "@"
-; 0x10b11
-
-UnknownText_0x10b11: ; 0x10b11
- ; You can't use it in a battle.
- text_jump UnknownText_0x1c0c85
- db "@"
-; 0x10b16
-
-PackMenuGFX:
-INCBIN "gfx/misc/pack_menu.2bpp"
-
-PackGFX:
-INCBIN "gfx/misc/pack.w40.2bpp"
Function113d6: ; 113d6
call Function114dd
@@ -18394,7 +12387,7 @@ UnknownScript_0x122c1: ; 0x122c1
checkflag $0011
iffalse .script_122cd
setflag $0051
- special $0017
+ special Function13a31
.script_122cd
end
; 0x122ce
@@ -18725,15 +12718,15 @@ UnknownScript_0x124c8:: ; 0x124c8
UnknownScript_0x124ce: ; 0x124ce
writetext UnknownText_0x124f5
closetext
- special $002e
+ special Function8c084
pause 40
- special $001b
+ special Functionc658
checkflag $0011
iftrue .script_64f2
callasm HalveMoney
callasm Function12527
farscall UnknownScript_0x122c1
- special $0000
+ special Function97c28
newloadmap $f1
resetfuncs
@@ -18900,7 +12893,7 @@ Function12599: ; 12599
UnknownScript_0x125ad: ; 0x125ad
reloadmappart
- special $0035
+ special UpdateTimePals
callasm Function12599
writetext UnknownText_0x125c3
loadmovesprites
@@ -18909,7 +12902,7 @@ UnknownScript_0x125ad: ; 0x125ad
UnknownScript_0x125ba: ; 0x125ba
reloadmappart
- special $0035
+ special UpdateTimePals
writetext UnknownText_0x125c8
loadmovesprites
end
@@ -20301,7 +14294,7 @@ UnknownText_0x12f00: ; 0x12f00
; 0x12f05
Function12f05: ; 12f05
- ld a, $24
+ ld a, PartyMon1MaxHP - PartyMon1
call GetPartyParamLocation
ld a, [hli]
ld [hProduct], a
@@ -20311,7 +14304,7 @@ Function12f05: ; 12f05
ld [hMultiplier], a
ld b, $2
call Divide
- ld a, $23
+ ld a, PartyMon1HP + 1 - PartyMon1
call GetPartyParamLocation
ld a, [$ffb6]
sub [hl]
@@ -25360,602 +19353,9 @@ UnknownText_0x152a6: ; 0x152a6
; 0x152ab
-SpawnPoints: ; 0x152ab
-
- const_def
-
-spawn: MACRO
-; name, map, y, x
-\1\@ EQUS "SPAWN_\1"
- const \1\@
- map \2
- db \3, \4
-ENDM
-
- spawn HOME, KRISS_HOUSE_2F, 3, 3
- spawn DEBUG, VIRIDIAN_POKECENTER_1F, 5, 3
-
- spawn PALLET, PALLET_TOWN, 5, 6
- spawn VIRIDIAN, VIRIDIAN_CITY, 23, 26
- spawn PEWTER, PEWTER_CITY, 13, 26
- spawn CERULEAN, CERULEAN_CITY, 19, 22
- spawn ROCK_TUNNEL, ROUTE_10A, 11, 2
- spawn VERMILION, VERMILION_CITY, 9, 6
- spawn LAVENDER, LAVENDER_TOWN, 5, 6
- spawn SAFFRON, SAFFRON_CITY, 9, 30
- spawn CELADON, CELADON_CITY, 29, 10
- spawn FUCHSIA, FUCHSIA_CITY, 19, 28
- spawn CINNABAR, CINNABAR_ISLAND, 11, 12
- spawn INDIGO, ROUTE_23, 9, 6
-
- spawn NEW_BARK, NEW_BARK_TOWN, 13, 6
- spawn CHERRYGROVE, CHERRYGROVE_CITY, 29, 4
- spawn VIOLET, VIOLET_CITY, 31, 26
- spawn UNION_CAVE, ROUTE_32, 11, 74
- spawn AZALEA, AZALEA_TOWN, 15, 10
- spawn CIANWOOD, CIANWOOD_CITY, 23, 44
- spawn GOLDENROD, GOLDENROD_CITY, 15, 28
- spawn OLIVINE, OLIVINE_CITY, 13, 22
- spawn ECRUTEAK, ECRUTEAK_CITY, 23, 28
- spawn MAHOGANY, MAHOGANY_TOWN, 15, 14
- spawn LAKE, LAKE_OF_RAGE, 21, 29
- spawn BLACKTHORN, BLACKTHORN_CITY, 21, 30
- spawn MT_SILVER, SILVER_CAVE_OUTSIDE, 23, 20
- spawn FAST_SHIP, FAST_SHIP_CABINS_SW_SSW_NW, 6, 2
-
- db -1, -1, -1, -1
-
- const NUM_SPAWNS
-
-
-LoadSpawnPoint: ; 1531f
- push hl
- push de
- ld a, [wd001]
- cp -1
- jr z, .asm_15341
- ld l, a
- ld h, 0
- add hl, hl
- add hl, hl
- ld de, SpawnPoints
- add hl, de
- ld a, [hli]
- ld [MapGroup], a
- ld a, [hli]
- ld [MapNumber], a
- ld a, [hli]
- ld [XCoord], a
- ld a, [hli]
- ld [YCoord], a
-.asm_15341
- pop de
- pop hl
- ret
-; 15344
-
-
-IsSpawnPoint: ; 15344
- ld hl, SpawnPoints
- ld c, 0
-.asm_15349
- ld a, [hl]
- cp -1
- jr z, .asm_1535f
- cp d
- jr nz, .asm_15356
- inc hl
- ld a, [hld]
- cp e
- jr z, .asm_15361
-
-.asm_15356
- push bc
- ld bc, 4
- add hl, bc
- pop bc
- inc c
- jr .asm_15349
-
-.asm_1535f
- and a
- ret
-
-.asm_15361
- scf
- ret
-; 15363
-
-
-RunMapSetupScript:: ; 15363
- ld a, [$ff9f]
- and $f
- dec a
- ld c, a
- ld b, 0
- ld hl, MapSetupScripts
- add hl, bc
- add hl, bc
- ld a, [hli]
- ld h, [hl]
- ld l, a
- call ReadMapSetupScript
- ret
-; 15377
-
-MapSetupScripts: ; 15377
- dw MapSetupScript1
- dw MapSetupScript2
- dw MapSetupScript3
- dw MapSetupScript4
- dw MapSetupScript5
- dw MapSetupScript6
- dw MapSetupScript7
- dw MapSetupScript8
- dw MapSetupScript9
- dw MapSetupScript10
- dw MapSetupScript11
- dw MapSetupScript12
-; 1538f
-
-
-; Command descriptions from Condensation water's scripting compendium.
- const_def
- const map_lcd_on ; 00 = Turn LCD on
- const map_lcd_off ; 01 = Turn LCD off
- const map_sound_off ; 02 = Turn speakers off
- const map_music ; 03 = Music check for current map/ special check for bug catcher contest
- const map_start_music ; 04 = Start map music anew
- const map_fade_music ; 05 = Music check for current map / special check for Bug Contest/ music with FadeOut (old) and FadeIn
- const map_fade ; 06 = Fade out music + screen
- const map_bike_music ; 07 = If HIRO is on bike = bike music, else play map music
- const map_music_force ; 08 = Play map music
- const map_max_volume ; 09 = Turn music to highest volume
- const map_load_blocks ; 0A = Write map data to MapRAM
- const map_connection_blocks ; 0B = Compute map’s connection pars and write into MapRAM
- const map_save_screen ; 0C = Write current part of map into temporary memory
- const map_buffer_screen ; 0D = Write current part of map into read-from memory
- const map_load_graphics ; 0E = Write tileset header to ram/ load tileset/ load sprite tiles/ load special tiles
- const map_load_tileset_header ; 0F = Write tileset header to ram
- const map_time_of_day ; 10 = Compute time of day/ Update screen
- const map_palettes ; 11 = Load map palettes
- const map_wildmons ; 12 = Load probabilities for wild Pokémon battles
- const map_sprites ; 13 = Delete sprite data and draw new sprites
- const map_change_callback ; 14 = Check 2nd script header for 05 and 03 callbacks
- const map_start_callback ; 15 = Check 2nd script header for 03 callbacks
- const map_load_objects ; 16 = Analyze people data anew and check 2nd script header for 02 callbacks
- const map_load_spawn ; 17 = Writes arrival data for arrival by flying/Blackout from table 05:5319 to ram
- const map_load_connection ; 18 = Writes arrival data for entering a map by connection to ram
- const map_load_warp ; 19 = Write warp data to ram when entering warp
- const map_attributes ; 1A = Load complete map data (primary, secondary, event, script headers)
- const map_attributes_2 ; 1B = Same as 1A, but some settings aren’t loaded new from the rom, such as hide function of the people events
- const map_clear_bg_palettes ; 1C = Fill palette data with FFFF (=white)
- const map_fade_out_palettes ; 1D = All BG pallet color are converted to 0|0 (Pal0, Col0), all sprite colors to x|0 (FadeOut)
- const map_fade_in_palettes ; 1E = Palette FadeIn
- const map_anchor_screen ; 1F = Compute position of upper left-most block visible on screen
- const map_warp_face ; 20 = Position computation when HIRO leaves a warp
- const map_face_down ; 21 = Set HIRO’s facing to “down”
- const map_spawn_coord ; 22 = Prepare HIRO data for arrival by flight
- const map_player_coord ; 23 = Compute HIRO x/y data anew
- const map_prolong_sprites ; 24 = Prolong old sprites before removing them
- const map_delay_sprites ; 25 = Delay rendering new sprites
- const map_update_roam ; 26 = Compute chances to meet Raikou, Entei or Suicune
- const map_keep_roam ; 27 = Recover chances to meet Raikou, Entei or Suicune
- const map_fade_out_music ; 28 = Temporarily stop music playing
- const map_animations_on ; 29 = Activate animations
- const map_animations_off ; 2A = Deactivate animations
- const map_keep_palettes ; 2B = Recover all palettes
- const map_text_scroll_off ; 2C = Turn off text scroll (for town name overlays)
- const map_stop_script ; 2D = Deactivate code prolonging
-
-
-MapSetupScript4: ; 1538f
- db map_prolong_sprites
-
-MapSetupScript12: ; 15390
- db map_fade_out_palettes
- db map_keep_roam
-
-MapSetupScript1: ; 15392
- db map_lcd_off
- db map_sound_off
- db map_load_spawn
- db map_attributes
- db map_change_callback
- db map_spawn_coord
- db map_player_coord
- db map_anchor_screen
- db map_load_blocks
- db map_buffer_screen
- db map_load_graphics
- db map_time_of_day
- db map_load_objects
- db map_lcd_on
- db map_palettes
- db map_face_down
- db map_sprites
- db map_bike_music
- db map_max_volume
- db map_fade_in_palettes
- db map_animations_on
- db map_wildmons
- db -1
-
-MapSetupScript11: ; 153a9
- db map_load_spawn
- db map_attributes
- db map_change_callback
- db map_spawn_coord
- db map_player_coord
- db map_anchor_screen
- db map_load_blocks
- db map_buffer_screen
- db map_lcd_off
- db map_load_graphics
- db map_time_of_day
- db map_fade_out_music
- db map_lcd_on
- db map_load_objects
- db map_palettes
- db map_face_down
- db map_sprites
- db map_fade_music
- db map_fade_in_palettes
- db map_animations_on
- db map_wildmons
- db -1
-
-MapSetupScript7: ; 153bf
- db map_animations_off
- db map_load_connection
- db map_attributes
- db map_change_callback
- db map_player_coord
- db map_load_blocks
- db map_load_tileset_header
- db map_save_screen
- db map_load_objects
- db map_fade_music
- db map_palettes
- db map_stop_script
- db map_keep_palettes
- db map_wildmons
- db map_update_roam
- db map_animations_on
- db -1
-
-MapSetupScript6: ; 153d0
- db map_prolong_sprites
-
-MapSetupScript5: ; 153d1
- db map_fade_out_palettes
-
-MapSetupScript9: ; 153d2
- db map_load_warp
- db map_attributes
- db map_warp_face
- db map_change_callback
- db map_player_coord
- db map_load_blocks
- db map_buffer_screen
- db map_lcd_off
- db map_load_graphics
- db map_time_of_day
- db map_fade_out_music
- db map_lcd_on
- db map_load_objects
- db map_palettes
- db map_sprites
- db map_fade_music
- db map_fade_in_palettes
- db map_animations_on
- db map_wildmons
- db map_update_roam
- db -1
-
-MapSetupScript3: ; 153e7
- db map_fade
- db map_clear_bg_palettes
- db map_lcd_off
- db map_sound_off
- db map_load_blocks
- db map_connection_blocks
- db map_load_graphics
- db map_time_of_day
- db map_lcd_on
- db map_palettes
- db map_sprites
- db map_music_force
- db map_fade_in_palettes
- db map_animations_on
- db map_wildmons
- db -1
-
-MapSetupScript8: ; 153f7
- db map_fade
- db map_lcd_off
- db map_sound_off
- db map_change_callback
- db map_load_blocks
- db map_buffer_screen
- db map_load_graphics
- db map_time_of_day
- db map_lcd_on
- db map_palettes
- db map_sprites
- db map_bike_music
- db map_fade_in_palettes
- db map_animations_on
- db map_wildmons
- db map_text_scroll_off
- db -1
-
-MapSetupScript2: ; 15408
- db map_lcd_off
- db map_sound_off
- db map_attributes_2
- db map_anchor_screen
- db map_start_callback
- db map_load_blocks
- db map_connection_blocks
- db map_buffer_screen
- db map_load_graphics
- db map_time_of_day
- db map_lcd_on
- db map_palettes
- db map_sprites
- db map_bike_music
- db map_fade_in_palettes
- db map_animations_on
- db map_wildmons
- db -1
-
-MapSetupScript10: ; 1541a
- db map_load_blocks
- db map_connection_blocks
- db -1
-
-
-ReadMapSetupScript: ; 1541d
-.loop
- ld a, [hli]
- cp -1
- ret z
-
- push hl
-
- ld c, a
- ld b, 0
- ld hl, MapSetupCommands
- add hl, bc
- add hl, bc
- add hl, bc
-
- ; bank
- ld b, [hl]
- inc hl
-
- ; address
- ld a, [hli]
- ld h, [hl]
- ld l, a
-
- ; Bit 7 of the bank indicates a parameter.
- ; This is left unused.
- bit 7, b
- jr z, .go
-
- pop de
- ld a, [de]
- ld c, a
- inc de
- push de
-
-.go
- ld a, b
- and $7f
- rst FarCall
-
- pop hl
- jr .loop
-; 15440
-
-MapSetupCommands: ; 15440
- dbw BANK(EnableLCD), EnableLCD
- dbw BANK(DisableLCD), DisableLCD
- dbw BANK(SoundRestart), SoundRestart
- dbw BANK(PlayMapMusic), PlayMapMusic
- dbw BANK(RestartMapMusic), RestartMapMusic
- dbw BANK(FadeToMapMusic), FadeToMapMusic
- dbw BANK(Function15574), Function15574
- dbw BANK(EnterMapMusic), EnterMapMusic
- dbw BANK(Function15587), Function15587
- dbw BANK(Function3cae), Function3cae
- dbw BANK(Function24cd), Function24cd
- dbw BANK(Function28e3), Function28e3
- dbw BANK(Function289d), Function289d
- dbw BANK(Function2879), Function2879
- dbw BANK(Function1047cf), Function1047cf
- dbw BANK(LoadTilesetHeader), LoadTilesetHeader
- dbw BANK(Function104750), Function104750
- dbw BANK(Function1047eb), Function1047eb
- dbw BANK(Function29ff8), Function29ff8
- dbw BANK(Function1047f0), Function1047f0
- dbw BANK(Function1045b0), Function1045b0
- dbw BANK(Function1045c4), Function1045c4
- dbw BANK(Function154d7), Function154d7
- dbw BANK(LoadSpawnPoint), LoadSpawnPoint
- dbw BANK(EnterMapConnection), EnterMapConnection
- dbw BANK(Function1046c6), Function1046c6
- dbw BANK(Function2309), Function2309
- dbw BANK(Function2317), Function2317
- dbw BANK(WhiteBGMap), WhiteBGMap
- dbw BANK(Function8c084), Function8c084
- dbw BANK(Function8c079), Function8c079
- dbw BANK(Function10486d), Function10486d
- dbw BANK(Function248a), Function248a
- dbw BANK(Function57d9), Function57d9
- dbw BANK(Function8029), Function8029
- dbw BANK(Function80b8), Function80b8
- dbw BANK(Function154eb), Function154eb
- dbw BANK(Function154f1), Function154f1
- dbw BANK(Function2a30d), Function2a30d
- dbw BANK(Function2a394), Function2a394
- dbw BANK(Function15567), Function15567
- dbw BANK(Function154cf), Function154cf
- dbw BANK(Function154d3), Function154d3
- dbw BANK(Function1556d), Function1556d
- dbw BANK(Function154ca), Function154ca
- dbw BANK(Functionb8000), Functionb8000
-; 154ca
-
-
-Function154ca: ; 154ca
- xor a
- ld [wc2d7], a
- ret
-; 154cf
-
-Function154cf: ; 154cf
- ld a, $1
- ld [$ffde], a
- ret
-; 154d3
-
-Function154d3: ; 154d3
- xor a
- ld [$ffde], a
- ret
-; 154d7
-
-Function154d7: ; 154d7
- ld a, $2
- call Function263b
- callba Function2454f
- callba Function8177
- ret
-; 154ea (5:54ea)
-
-Function154ea: ; 154ea
- ret
-; 154eb
-
-Function154eb: ; 154eb
- ld hl, wd45b
- set 7, [hl]
- ret
-; 154f1
-
-Function154f1: ; 154f1
- ld hl, wd45b
- set 6, [hl]
- ret
-
-Function154f7: ; 154f7
- nop
- call Function1550c
- jr c, .asm_15508
- call Function1554e
- jr c, .asm_15508
- call Function1551a
- jr c, .asm_15508
- ret
-.asm_15508
- call Functione4a
- ret
-
-Function1550c: ; 1550c (5:550c)
- and a
- ld hl, BikeFlags
- bit 1, [hl]
- ret z
- ld a, $1
- ld [PlayerState], a
- scf
- ret
-
-Function1551a: ; 1551a (5:551a)
- ld a, [PlayerState]
- cp $0
- jr z, .asm_1554c
- cp $2
- jr z, .asm_1554c
- cp $4
- jr z, .asm_15545
- cp $8
- jr z, .asm_15545
- call GetMapPermission
- cp $3
- jr z, .asm_1553e
- cp $5
- jr z, .asm_1553e
- cp $7
- jr z, .asm_1553e
- jr .asm_1554c
-.asm_1553e
- ld a, [PlayerState]
- cp $1
- jr nz, .asm_1554c
-.asm_15545
- ld a, $0
- ld [PlayerState], a
- scf
- ret
-.asm_1554c
- and a
- ret
-
-Function1554e: ; 1554e (5:554e)
- call Function1852
- jr nz, .asm_15565
- ld a, [PlayerState]
- cp $4
- jr z, .asm_15563
- cp $8
- jr z, .asm_15563
- ld a, $4
- ld [PlayerState], a
-.asm_15563
- scf
- ret
-.asm_15565
- and a
- ret
-; 15567
-
-Function15567: ; 15567
- ld a, 6
- call SkipMusic
- ret
-; 1556d
-
-Function1556d: ; 1556d
- callba _UpdateTimePals
- ret
-
-Function15574: ; 15574
- ld e, 0
- ld a, [MusicFadeIDLo]
- ld d, 0
- ld a, [MusicFadeIDHi]
- ld a, $4
- ld [MusicFade], a
- call Function4b6
- ret
-; 15587
-
-Function15587: ; 15587
- ld a, [PlayerState]
- cp $1
- jr nz, .asm_15596
- call VolumeOff
- ld a, $88
- ld [MusicFade], a
-.asm_15596
- call Function3d2f
- ret
-; 1559a
+INCLUDE "engine/spawn_points.asm"
+INCLUDE "engine/map_setup.asm"
Function1559a: ; 1559a
call Function15650
@@ -33120,11 +26520,11 @@ Function24dd4: ; 24dd4
ld a, [InLinkBattle]
and a
jr nz, .asm_24e03
- ld a, $2
+ ld a, PartyMon1Moves - PartyMon1
call GetPartyParamLocation
ld d, h
ld e, l
- ld c, $4
+ ld c, NUM_MOVES
.asm_24ded
push bc
push de
@@ -33155,7 +26555,7 @@ Function24dd4: ; 24dd4
and a
jr nz, .asm_24e2f
push hl
- ld a, $1
+ ld a, PartyMon1Item - PartyMon1
call GetPartyParamLocation
ld d, [hl]
callba ItemIsMail
@@ -35701,7 +29101,7 @@ UnknownScript_0x26f91: ; 0x26f91
loadfont
writetext UnknownText_0x26f9b
closetext
- special $0026
+ special Functionc2c0
loadmovesprites
end
; 0x26f9b
@@ -36211,9 +29611,9 @@ Function2805d: ; 2805d
ld [de], a
ld hl, wc813
call Function2868a
- ld a, $a8
+ ld a, OTPartyMonOT % $100
ld [wd102], a
- ld a, $d3
+ ld a, OTPartyMonOT / $100
ld [wd103], a
ld de, MUSIC_NONE
call PlayMusic
@@ -37974,17 +31374,17 @@ Function28b87: ; 28b87
ld b, $1
pop af
ld c, a
- cp $97
+ cp MEW
jr z, .asm_28e49
ld a, [CurPartySpecies]
- cp $97
+ cp MEW
jr z, .asm_28e49
ld b, $2
ld a, c
- cp $fb
+ cp CELEBI
jr z, .asm_28e49
ld a, [CurPartySpecies]
- cp $fb
+ cp CELEBI
jr z, .asm_28e49
ld b, $0
@@ -41918,174 +35318,7 @@ AI_Redundant: ; 2c41a
ret
-Function2c547: ; 2c547
- ld hl, UnknownText_0x2c5ef
- call PrintText
- call YesNoBox
- jr c, .asm_2c5c3
- ld hl, UnknownText_0x2c5f4
- call PrintText
- callba Function50000
- jr c, .asm_2c5c3
- ld a, [CurPartySpecies]
- cp EGG
- jr z, .asm_2c5bc
- ld a, [CurPartyMon]
- ld hl, PartyMon1Moves + 1
- ld bc, PartyMon2 - PartyMon1
- call AddNTimes
- ld a, [hl]
- and a
- jr z, .asm_2c5ca
- ld hl, UnknownText_0x2c5ea
- call PrintText
- call Function1d6e
- callba Function12f5b
- push af
- call Function2b74
- pop af
- jr c, .asm_2c5c3
- ld a, [wcfa9]
- push af
- ld a, [CurSpecies]
- ld [wd265], a
- call GetMoveName
- ld hl, UnknownText_0x2c5d6
- call PrintText
- call YesNoBox
- pop bc
- jr c, .asm_2c5c3
- call Function2c5f9
- call WaitSFX
- ld de, SFX_MOVE_DELETED
- call PlaySFX
- call WaitSFX
- ld hl, UnknownText_0x2c5db
- call PrintText
- ret
-
-.asm_2c5bc
- ld hl, UnknownText_0x2c5e0
- call PrintText
- ret
-
-.asm_2c5c3
- ld hl, UnknownText_0x2c5e5
- call PrintText
- ret
-
-.asm_2c5ca
- ld hl, UnknownText_0x2c5d1
- call PrintText
- ret
-; 2c5d1
-
-UnknownText_0x2c5d1: ; 0x2c5d1
- ; That #MON knows only one move.
- text_jump UnknownText_0x1c5eba
- db "@"
-; 0x2c5d6
-
-UnknownText_0x2c5d6: ; 0x2c5d6
- ; Oh, make it forget @ ?
- text_jump UnknownText_0x1c5eda
- db "@"
-; 0x2c5db
-
-UnknownText_0x2c5db: ; 0x2c5db
- ; Done! Your #MON forgot the move.
- text_jump UnknownText_0x1c5ef5
- db "@"
-; 0x2c5e0
-
-UnknownText_0x2c5e0: ; 0x2c5e0
- ; An EGG doesn't know any moves!
- text_jump UnknownText_0x1c5f17
- db "@"
-; 0x2c5e5
-
-UnknownText_0x2c5e5: ; 0x2c5e5
- ; No? Come visit me again.
- text_jump UnknownText_0x1c5f36
- db "@"
-; 0x2c5ea
-
-UnknownText_0x2c5ea: ; 0x2c5ea
- ; Which move should it forget, then?
- text_jump UnknownText_0x1c5f50
- db "@"
-; 0x2c5ef
-
-UnknownText_0x2c5ef: ; 0x2c5ef
- ; Um… Oh, yes, I'm the MOVE DELETER. I can make #MON forget moves. Shall I make a #MON forget?
- text_jump UnknownText_0x1c5f74
- db "@"
-; 0x2c5f4
-
-UnknownText_0x2c5f4: ; 0x2c5f4
- ; Which #MON?
- text_jump UnknownText_0x1c5fd1
- db "@"
-; 0x2c5f9
-
-Function2c5f9: ; 2c5f9
- ld a, b
- push bc
- dec a
- ld c, a
- ld b, 0
- ld hl, PartyMon1Moves
- add hl, bc
- ld a, [CurPartyMon]
- ld bc, PartyMon2 - PartyMon1
- call AddNTimes
- pop bc
- push bc
- inc b
-.asm_2c60f
- ld a, b
- cp NUM_MOVES + 1
- jr z, .asm_2c61b
- inc hl
- ld a, [hld]
- ld [hl], a
- inc hl
- inc b
- jr .asm_2c60f
-
-.asm_2c61b
- xor a
- ld [hl], a
- pop bc
-
- ld a, b
- push bc
- dec a
- ld c, a
- ld b, 0
- ld hl, PartyMon1PP
- add hl, bc
- ld a, [CurPartyMon]
- ld bc, PartyMon2 - PartyMon1
- call AddNTimes
- pop bc
- inc b
-.asm_2c633
- ld a, b
- cp NUM_MOVES + 1
- jr z, .asm_2c63f
- inc hl
- ld a, [hld]
- ld [hl], a
- inc hl
- inc b
- jr .asm_2c633
-
-.asm_2c63f
- xor a
- ld [hl], a
- ret
-; 2c642
+INCLUDE "event/move_deleter.asm"
Function2c642: ; 2c642 (b:4642)
@@ -43771,2589 +37004,9 @@ INCLUDE "battle/effect_command_pointers.asm"
SECTION "bank10", ROMX, BANK[$10]
-Pokedex: ; 40000
-
- ld a, [hWX]
- ld l, a
- ld a, [hWY]
- ld h, a
- push hl
- ld a, [hSCX]
- push af
- ld hl, Options
- ld a, [hl]
- push af
- set NO_TEXT_SCROLL, [hl]
- ld a, [VramState]
- push af
- xor a
- ld [VramState], a
- ld a, [$ffaa]
- push af
- ld a, $1
- ld [$ffaa], a
-
- xor a
- ld [$ffde], a
- call InitPokedex
- call DelayFrame
-
-.main
- call Functiona57
- ld a, [wcf63]
- bit 7, a
- jr nz, .exit
- call Function4010b
- call DelayFrame
- jr .main
-
-.exit
- ld de, SFX_READ_TEXT_2
- call PlaySFX
- call WaitSFX
- call ClearSprites
- ld a, [wc7d4]
- ld [wd959], a
-
- pop af
- ld [$ffaa], a
- pop af
- ld [VramState], a
- pop af
- ld [Options], a
- pop af
- ld [hSCX], a
- pop hl
- ld a, l
- ld [hWX], a
- ld a, h
- ld [hWY], a
- ret
-; 40063
-
-InitPokedex: ; 40063
- call WhiteBGMap
- call ClearSprites
- call ClearTileMap
- call Function414b7
-
- ld hl, wc6d0
- ld bc, $0115
- xor a
- call ByteFill
-
- xor a
- ld [wcf63], a
- ld [wcf64], a
- ld [wcf65], a
- ld [wcf66], a
-
- call Function400a2
-
- ld a, [wd959]
- ld [wc7d4], a
-
- call Function40bdc
- call Function400b4
- call Function400ed
- callba Function1de247
- call Function41af7
- ret
-; 400a2
-
-Function400a2: ; 400a2
- ld a, [StatusFlags]
- bit 1, a
- jr nz, .asm_400ae
-
- xor a
- ld [wc7dc], a
- ret
-
-.asm_400ae
- ld a, 1
- ld [wc7dc], a
- ret
-; 400b4
-
-Function400b4: ; 400b4
- ld hl, wc6d0
- ld a, [wc2d6]
- and a
- jr z, .asm_400ec
- cp $fc
- jr nc, .asm_400ec
-
- ld b, a
- ld a, [wc7d2]
- cp $8
- jr c, .asm_400db
-
- sub $7
- ld c, a
-.asm_400cc
- ld a, b
- cp [hl]
- jr z, .asm_400ec
- inc hl
- ld a, [wc7d0]
- inc a
- ld [wc7d0], a
- dec c
- jr nz, .asm_400cc
-
-.asm_400db
- ld c, $7
-.asm_400dd
- ld a, b
- cp [hl]
- jr z, .asm_400ec
- inc hl
- ld a, [wc7d1]
- inc a
- ld [wc7d1], a
- dec c
- jr nz, .asm_400dd
-
-.asm_400ec
- ret
-; 400ed
-
-Function400ed: ; 400ed
- ld a, [MapGroup]
- ld b, a
- ld a, [MapNumber]
- ld c, a
- call GetWorldMapLocation
-
- cp SPECIAL_MAP
- jr nz, .asm_40107
-
- ld a, [BackupMapGroup]
- ld b, a
- ld a, [BackupMapNumber]
- ld c, a
- call GetWorldMapLocation
-
-.asm_40107
- ld [wc7e4], a
- ret
-; 4010b
-
-Function4010b: ; 4010b
- ld a, [wcf63]
- ld hl, Jumptable_40115
- call Function41432
- jp [hl]
-; 40115
-
-
-Jumptable_40115: ; 40115 (10:4115)
- dw Function4013c
- dw Function401ae
- dw Function40217
- dw Function40258
- dw Function402aa
- dw Function40443
- dw Function40471
- dw Function4039d
- dw Function403be
- dw Function4050a
- dw Function40562
- dw Function405bd
- dw Function405df
- dw Function40136
-
-
-Function40131: ; 40131 (10:4131)
- ld hl, wcf63
- inc [hl]
- ret
-
-Function40136: ; 40136 (10:4136)
- ld hl, wcf63
- set 7, [hl]
- ret
-
-Function4013c: ; 4013c (10:413c)
- xor a
- ld [hBGMapMode], a ; $ff00+$d4
- call ClearSprites
- xor a
- ld hl, AttrMap
- ld bc, $168
- call ByteFill
- callba Function1de171
- hlcoord 0, 17
- ld de, Unknown_407f2
- call Function40acd
- ld a, $7
- ld [wc7d3], a
- call Function40b0f
- call Function41aeb
- call Function41af7
- call Function4074c
- ld a, $5
- ld [hSCX], a ; $ff00+$cf
- ld a, [wc7d4]
- cp $1
- ld a, $4a
- jr z, .asm_4017b
- ld a, $47
-
-.asm_4017b
- ld [hWX], a ; $ff00+$d1
- xor a
- ld [hWY], a ; $ff00+$d2
- call WaitBGMap
- call Function41af7
- ld a, $ff
- ld [CurPartySpecies], a
- ld a, $4
- call Function41423
- call Function41148
- callba Function1de171
- hlcoord 0, 17
- ld de, Unknown_407f2
- call Function40acd
- ld a, $7
- ld [wc7d3], a
- call Function40b0f
- call Function40131
- ret
-
-Function401ae: ; 401ae (10:41ae)
- ld hl, hJoyPressed ; $ffa7
- ld a, [hl]
- and B_BUTTON
- jr nz, .b
- ld a, [hl]
- and A_BUTTON
- jr nz, .a
- ld a, [hl]
- and SELECT
- jr nz, .select
- ld a, [hl]
- and START
- jr nz, .start
- call Function406c5
- ret nc
- call Function41148
- xor a
- ld [hBGMapMode], a ; $ff00+$d4
- call Function40b0f
- call Function41ad7
- call Function41af7
- ret
-
-.a
- call Function40bb1
- call Function40bd0
- ret z
- ld a, $2
- ld [wcf63], a
- ld a, $0
- ld [wcf64], a
- ret
-
-.select
- call Function41401
- ld a, $7
- ld [wcf63], a
- xor a
- ld [hSCX], a ; $ff00+$cf
- ld a, $a7
- ld [hWX], a ; $ff00+$d1
- call DelayFrame
- ret
-
-.start
- call Function41401
- ld a, $5
- ld [wcf63], a
- xor a
- ld [hSCX], a ; $ff00+$cf
- ld a, $a7
- ld [hWX], a ; $ff00+$d1
- call DelayFrame
- ret
-
-.b
- ld a, $d
- ld [wcf63], a
- ret
-
-Function40217: ; 40217 (10:4217)
- call LowVolume
- xor a
- ld [wcf65], a
- xor a
- ld [hBGMapMode], a ; $ff00+$d4
- call ClearSprites
- call Function41478
- call Function407fd
- call Function4134f
- call Function40bb1
- ld [wc2d6], a
- callba Function4424d
- call Function40ba0
- call WaitBGMap
- ld a, $a7
- ld [hWX], a ; $ff00+$d1
- call Function40bb1
- ld [CurPartySpecies], a
- ld a, $4
- call Function41423
- ld a, [CurPartySpecies]
- call PlayCry
- call Function40131
- ret
-
-Function40258: ; 40258 (10:4258)
- ld de, Unknown_402e8
- call Function4135a
- ld hl, hJoyPressed ; $ffa7
- ld a, [hl]
- and B_BUTTON
- jr nz, .b
- ld a, [hl]
- and A_BUTTON
- jr nz, .a
- call Function4066c
- ret nc
- call Function40131
- ret
-
-.a
- ld a, [wc7d8]
- ld hl, Jumptable_402f2
- call Function41432
- jp [hl]
-
-.b
- ld a, [LastVolume]
- and a
- jr z, .asm_40288
- ld a, $77
- ld [LastVolume], a
-
-.asm_40288
- call MaxVolume
- ld a, [wcf64]
- ld [wcf63], a
- ret
-; 40292 (10:4292)
-
-Function40292: ; 40292
- ld a, [wcf65]
- xor $1
- ld [wcf65], a
- call Function40bb1
- ld [wc2d6], a
- callba Function4424d
- call WaitBGMap
- ret
-; 402aa
-
-Function402aa: ; 402aa (10:42aa)
- call Function41401
- xor a
- ld [wcf65], a
- xor a
- ld [hBGMapMode], a ; $ff00+$d4
- call Function407fd
- call Function4134f
- call Function41478
- call Function40bb1
- ld [wc2d6], a
- callba Function4424d
- call Function40ba0
- call Function4143b
- call WaitBGMap
- call Function40bb1
- ld [CurPartySpecies], a
- ld a, $4
- call Function41423
- ld a, [CurPartySpecies]
- call PlayCry
- ld hl, wcf63
- dec [hl]
- ret
-; 402e8 (10:42e8)
-
-Unknown_402e8: ; 402e8
- dw $0430
- dwcoord 1, 17
- dwcoord 6, 17
- dwcoord 11, 17
- dwcoord 15, 17
-; 402f2
-
-Jumptable_402f2: ; 402f2
- dw Function40292
- dw Function402fa
- dw Function40340
- dw Function4034f
-; 402fa
-
-Function402fa: ; 402fa
- call Function41401
- xor a
- ld [hSCX], a
- call DelayFrame
- ld a, $7
- ld [hWX], a
- ld a, $90
- ld [hWY], a
- call Function40bb1
- ld a, [wc7e4]
- ld e, a
- predef Function91d11
- call Function41401
- call DelayFrame
- xor a
- ld [hBGMapMode], a
- ld a, $90
- ld [hWY], a
- ld a, $5
- ld [hSCX], a
- call DelayFrame
- call Function4038d
- call Function4143b
- call WaitBGMap
- call Function40bb1
- ld [CurPartySpecies], a
- ld a, $4
- call Function41423
- ret
-; 40340
-
-Function40340: ; 40340
- call Function40bb1
- ld a, [wd265]
- call GetCryIndex
- ld e, c
- ld d, b
- call PlayCryHeader
- ret
-; 4034f
-
-Function4034f: ; 4034f
- call Function41415
- xor a
- ld [hSCX], a
- ld a, [wcf65]
- push af
- ld a, [wcf64]
- push af
- ld a, [wcf63]
- push af
- callba Function8442c
- pop af
- ld [wcf63], a
- pop af
- ld [wcf64], a
- pop af
- ld [wcf65], a
- call WhiteBGMap
- call DisableLCD
- call Function414fb
- call Function4038d
- call EnableLCD
- call WaitBGMap
- ld a, $5
- ld [hSCX], a
- call Function41427
- ret
-; 4038d
-
-Function4038d: ; 4038d
- call Function407fd
- call Function40bb1
- callba Function4424d
- call Function40ba0
- ret
-; 4039d
-
-Function4039d: ; 4039d (10:439d)
- xor a
- ld [hBGMapMode], a ; $ff00+$d4
- call ClearSprites
- call Function4087c
- call Function4134f
- ld a, [wc7d4]
- ld [wc7d8], a
- call Function40e5b
- call WaitBGMap
- ld a, $10
- call Function41423
- call Function40131
- ret
-
-Function403be: ; 403be (10:43be)
- ld a, [wc7dc]
- and a
- jr nz, .asm_403c9
- ld de, Unknown_403f3
- jr .asm_403cc
-
-.asm_403c9
- ld de, Unknown_403fb
-.asm_403cc
- call Function4135a
- call c, Function40e5b
- ld hl, hJoyPressed ; $ffa7
- ld a, [hl]
- and $6
- jr nz, .asm_403ea
- ld a, [hl]
- and $1
- jr nz, .asm_403e0
- ret
-
-.asm_403e0
- ld a, [wc7d8]
- ld hl, Jumptable_40405
- call Function41432
- jp [hl]
-
-.asm_403ea
- call Function41401
- ld a, $0
- ld [wcf63], a
- ret
-; 403f3 (10:43f3)
-
-Unknown_403f3: ; 403f3
- dw $03c0
- dwcoord 2, 4
- dwcoord 2, 6
- dwcoord 2, 8
-; 403fb
-
-Unknown_403fb: ; 403fb
- dw $04c0
- dwcoord 2, 4
- dwcoord 2, 6
- dwcoord 2, 8
- dwcoord 2, 10
-; 40405
-
-Jumptable_40405: ; 40405 (10:4405)
- dw Function4040d
- dw Function40411
- dw Function40415
- dw Function4043a
-; 4040d
-
-Function4040d: ; 4040d (10:440d)
- ld b, $0
- jr Function40417
-
-Function40411: ; 40411 (10:4411)
- ld b, $1
- jr Function40417
-
-Function40415: ; 40415 (10:4415)
- ld b, $2
-Function40417: ; 40417 (10:4417)
- ld a, [wc7d4]
- cp b
- jr z, .asm_40431
- ld a, b
- ld [wc7d4], a
- call Function40bdc
- call Function40f08
- xor a
- ld [wc7d0], a
- ld [wc7d1], a
- call Function400b4
-
-.asm_40431
- call Function41401
- ld a, $0
- ld [wcf63], a
- ret
-
-Function4043a: ; 4043a (10:443a)
- call Function41401
- ld a, $b
- ld [wcf63], a
- ret
-
-Function40443: ; 40443 (10:4443)
- xor a
- ld [hBGMapMode], a ; $ff00+$d4
- call ClearSprites
- call Function408f0
- call Function4134f
- ld a, $1
- ld [wc7d5], a
- xor a
- ld [wc7d6], a
- call Function40fa8
- xor a
- ld [wc7db], a
- callba Function44207
- call WaitBGMap
- ld a, $10
- call Function41423
- call Function40131
- ret
-
-Function40471: ; 40471 (10:4471)
- ld de, Unknown_4049e
- call Function4135a
- call Function40f4f
- call c, Function40fa8
- ld hl, hJoyPressed ; $ffa7
- ld a, [hl]
- and START | B_BUTTON
- jr nz, .asm_40495
- ld a, [hl]
- and A_BUTTON
- jr nz, .asm_4048b
- ret
-
-.asm_4048b
- ld a, [wc7d8]
- ld hl, Jumptable_404a8
- call Function41432
- jp [hl]
-
-.asm_40495
- call Function41401
- ld a, $0
- ld [wcf63], a
- ret
-; 4049e (10:449e)
-
-Unknown_4049e: ; 4049e
- dw $04c0
- dwcoord 2, 4
- dwcoord 2, 6
- dwcoord 2, 13
- dwcoord 2, 15
-; 404a8
-
-Jumptable_404a8: ; 404a8
- dw Function404b0
- dw Function404b0
- dw Function404b7
- dw Function40501
-; 404b0
-
-Function404b0: ; 404b0
- call Function40f84
- call Function40fa8
- ret
-; 404b7
-
-Function404b7: ; 404b7
- call Function41086
- callba Function441cf
- ld a, [wc7d7]
- and a
- jr nz, .asm_404dc
- call Function40bdc
- call Function41107
- xor a
- ld [hBGMapMode], a
- call Function408f0
- call Function4134f
- call Function40fa8
- call WaitBGMap
- ret
-
-.asm_404dc
- ld [wc7d2], a
- ld a, [wc7d0]
- ld [wc7e0], a
- ld a, [wc7d1]
- ld [wc7e1], a
- ld a, [wc2d6]
- ld [wcf65], a
- xor a
- ld [wc7d0], a
- ld [wc7d1], a
- call Function41401
- ld a, $9
- ld [wcf63], a
- ret
-; 40501
-
-Function40501: ; 40501
- call Function41401
- ld a, $0
- ld [wcf63], a
- ret
-; 4050a
-
-Function4050a: ; 4050a (10:450a)
- xor a
- ld [hBGMapMode], a ; $ff00+$d4
- xor a
- ld hl, AttrMap
- ld bc, $168
- call ByteFill
- call Function41ae1
- call Function41af7
- callba Function1de1d1
- call Function409cf
- ld a, $4
- ld [wc7d3], a
- call Function40b0f
- call Function41ad7
- call Function41af7
- call Function40962
- ld a, $5
- ld [hSCX], a ; $ff00+$cf
- ld a, $4a
- ld [hWX], a ; $ff00+$d1
- xor a
- ld [hWY], a ; $ff00+$d2
- call WaitBGMap
- call Function41af7
- callba Function1de1d1
- call Function409cf
- call Function41281
- ld a, $ff
- ld [CurPartySpecies], a
- ld a, $4
- call Function41423
- call Function40131
- ret
-
-Function40562: ; 40562 (10:4562)
- ld hl, hJoyPressed ; $ffa7
- ld a, [hl]
- and B_BUTTON
- jr nz, .asm_40595
- ld a, [hl]
- and A_BUTTON
- jr nz, .asm_40583
- call Function406c5
- ret nc
- call Function41281
- xor a
- ld [hBGMapMode], a ; $ff00+$d4
- call Function40b0f
- call Function41ad7
- call Function41af7
- ret
-
-.asm_40583
- call Function40bb1
- call Function40bd0
- ret z
- ld a, $2
- ld [wcf63], a
- ld a, $9
- ld [wcf64], a
- ret
-
-.asm_40595
- ld a, [wc7e0]
- ld [wc7d0], a
- ld a, [wc7e1]
- ld [wc7d1], a
- ld a, [wcf65]
- ld [wc2d6], a
- call Function41401
- call ClearSprites
- call Function40bdc
- ld a, $5
- ld [wcf63], a
- xor a
- ld [hSCX], a ; $ff00+$cf
- ld a, $a7
- ld [hWX], a ; $ff00+$d1
- ret
-
-Function405bd: ; 405bd (10:45bd)
- call Function41a2c
- call Function409f1
- xor a
- ld [wc7dd], a
- call Function41a58
- call Function40658
- callba Functionfba2e
- call WaitBGMap
- ld a, $16
- call Function41423
- call Function40131
- ret
-
-Function405df: ; 405df (10:45df)
- ld hl, hJoyPressed ; $ffa7
- ld a, [hl]
- and A_BUTTON | B_BUTTON
- jr nz, .asm_405eb
- call Function40610
- ret
-
-.asm_405eb
- call Function41401
- ld a, $7
- ld [wcf63], a
- call DelayFrame
- call Function41a24
- jr nz, .asm_40603
- callba Function1ddf26
- jr .asm_4060f
-
-.asm_40603
- ld hl, PokedexLZ
- ld de, $9310
- lb bc, BANK(PokedexLZ), $3a
- call Functione73
-
-.asm_4060f
- ret
-
-Function40610: ; 40610 (10:4610)
- ld hl, $ffa9
- ld a, [hl]
- and D_RIGHT
- jr nz, .right
- ld a, [hl]
- and D_LEFT
- jr nz, .left
- ret
-
-.right
- ld a, [wc7de]
- ld e, a
- ld hl, wc7dd
- ld a, [hl]
- inc a
- cp e
- ret nc
- ld a, [hl]
- inc [hl]
- jr .asm_40635
-
-.left
- ld hl, wc7dd
- ld a, [hl]
- and a
- ret z
- ld a, [hl]
- dec [hl]
-
-.asm_40635
- push af
- xor a
- ld [hBGMapMode], a ; $ff00+$d4
- pop af
- call Function40654
- call Function41a58
- call Function40658
- callba Functionfba2e
- ld a, $1
- ld [hBGMapMode], a ; $ff00+$d4
- call DelayFrame
- call DelayFrame
- ret
-
-Function40654: ; 40654 (10:4654)
- ld c, $7f
- jr asm_4065d
-
-Function40658: ; 40658 (10:4658)
- ld a, [wc7dd]
- ld c, $5a
-asm_4065d: ; 4065d (10:465d)
- ld e, a
- ld d, 0
- ld hl, Unknown_40a3e + 2
- add hl, de
- add hl, de
- add hl, de
- add hl, de
- ld a, [hli]
- ld h, [hl]
- ld l, a
- ld [hl], c
- ret
-
-Function4066c: ; 4066c (10:466c)
- ld a, [wc7d1]
- ld [wc7e2], a
- ld a, [wc7d0]
- ld [wc7e3], a
- ld hl, $ffa9
- ld a, [hl]
- and D_UP
- jr nz, .up
- ld a, [hl]
- and D_DOWN
- jr nz, .down
- and a
- ret
-
-.up
- ld a, [wc7d3]
- ld d, a
- ld a, [wc7d2]
- ld e, a
- call Function406ea
- jr nc, .asm_406b7
- call Function40bb1
- call Function40bd0
- jr nz, .asm_406b5
- jr .up
-
-.down
- ld a, [wc7d3]
- ld d, a
- ld a, [wc7d2]
- ld e, a
- call Function406fe
- jr nc, .asm_406b7
- call Function40bb1
- call Function40bd0
- jr nz, .asm_406b5
- jr .down
-
-.asm_406b5
- scf
- ret
-
-.asm_406b7
- ld a, [wc7e2]
- ld [wc7d1], a
- ld a, [wc7e3]
- ld [wc7d0], a
- and a
- ret
-
-Function406c5: ; 406c5 (10:46c5)
- ld a, [wc7d3]
- ld d, a
- ld a, [wc7d2]
- ld e, a
- ld hl, $ffa9
- ld a, [hl]
- and D_UP
- jr nz, Function406ea
- ld a, [hl]
- and D_DOWN
- jr nz, Function406fe
- ld a, d
- cp e
- jr nc, asm_4073d
- ld a, [hl]
- and $20
- jr nz, asm_40716
- ld a, [hl]
- and $10
- jr nz, asm_40728
- jr asm_4073d
-
-Function406ea: ; 406ea (10:46ea)
- ld hl, wc7d1
- ld a, [hl]
- and a
- jr z, .asm_406f4
- dec [hl]
- jr asm_4073f
-.asm_406f4
- ld hl, wc7d0
- ld a, [hl]
- and a
- jr z, asm_4073d
- dec [hl]
- jr asm_4073f
-
-Function406fe: ; 406fe (10:46fe)
- ld hl, wc7d1
- ld a, [hl]
- inc a
- cp e
- jr nc, asm_4073d
- cp d
- jr nc, .asm_4070c
- inc [hl]
- jr asm_4073f
-.asm_4070c
- ld hl, wc7d0
- add [hl]
- cp e
- jr nc, asm_4073d
- inc [hl]
- jr asm_4073f
-asm_40716: ; 40716 (10:4716)
- ld hl, wc7d0
- ld a, [hl]
- and a
- jr z, asm_4073d
- cp d
- jr nc, .asm_40724
- xor a
- ld [hl], a
- jr asm_4073f
-.asm_40724
- sub d
- ld [hl], a
- jr asm_4073f
-asm_40728: ; 40728 (10:4728)
- ld hl, wc7d0
- ld a, d
- add a
- add [hl]
- jr c, .asm_40733
- cp e
- jr c, .asm_40738
-.asm_40733
- ld a, e
- sub d
- ld [hl], a
- jr asm_4073f
-.asm_40738
- ld a, [hl]
- add d
- ld [hl], a
- jr asm_4073f
-asm_4073d: ; 4073d (10:473d)
- and a
- ret
-asm_4073f: ; 4073f (10:473f)
- scf
- ret
-
-Function40741: ; 40741
- push de
- ld de, $0014
-.asm_40745
- ld [hl], a
- add hl, de
- dec b
- jr nz, .asm_40745
- pop de
- ret
-; 4074c
-
-
-Function4074c: ; 4074c (10:474c)
- hlcoord 0, 17
- ld de, Unknown_407f2
- call Function40acd
- ld a, $32
- ld hl, TileMap
- ld bc, $168
- call ByteFill
- ld hl, TileMap
- lb bc, 7, 7
- call Function40ad5
- hlcoord 0, 9
- ld bc, $607
- call Function40ad5
- hlcoord 1, 11
- ld de, Unknown_407e1
- call Function40acd
- ld hl, PokedexSeen ; wdeb9 (aliases: EndPokedexSeen)
- ld b, EndPokedexSeen - PokedexSeen
- call CountSetBits
- ld de, wd265
- hlcoord 5, 12
- ld bc, $103
- call PrintNum
- hlcoord 1, 14
- ld de, Unknown_407e6
- call Function40acd
- ld hl, PokedexCaught
- ld b, EndPokedexCaught - PokedexCaught
- call CountSetBits
- ld de, wd265
- hlcoord 5, 15
- ld bc, $103
- call PrintNum
- hlcoord 1, 17
- ld de, Unknown_407ea
- call Function40acd
- hlcoord 8, 1
- ld b, $7
- ld a, $5a
- call Function40741
- hlcoord 8, 10
- ld b, $6
- ld a, $5a
- call Function40741
- hlcoord 8, 0
- ld [hl], $59
- hlcoord 8, 8
- ld [hl], $53
- hlcoord 8, 9
- ld [hl], $54
- hlcoord 8, 16
- ld [hl], $5b
- call Function40ab2
- ret
-; 407e1 (10:47e1)
-
-Unknown_407e1: ; 407e1
- db "SEEN", $ff
-Unknown_407e6: ; 407e6
- db "OWN", $ff
-Unknown_407ea: ; 407ea
- db $3b, $48, $49, $4a, $44, $45, $46, $47 ; SELECT > OPTION
-Unknown_407f2: ; 407f2
- db $3c, $3b, $41, $42, $43, $4b, $4c, $4d, $4e, $3c, $ff ; START > SEARCH
-; 407fd
-
-Function407fd: ; 407fd
- call Function40aa6
- ld hl, TileMap
- ld bc, $0f12
- call Function40ad5
- hlcoord 19, 0
- ld [hl], $34
- hlcoord 19, 1
- ld a, $7f
- ld b, $f
- call Function40741
- ld [hl], $39
- hlcoord 1, 10
- ld bc, $0013
- ld a, $61
- call ByteFill
- hlcoord 1, 17
- ld bc, $0012
- ld a, $7f
- call ByteFill
- hlcoord 9, 7
- ld de, Unknown_40852
- call Function40acd
- hlcoord 9, 9
- ld de, Unknown_4085c
- call Function40acd
- hlcoord 0, 17
- ld de, Unknown_40867
- call Function40acd
- call Function40ab2
- ret
-; 4084f
-
-Unknown_4084f: ; 4084f
- db $5c, $5d, $ff ; No.
-Unknown_40852: ; 40852
- db "HT ?", $5e, "??", $5f, $ff ; HT ?'??"
-Unknown_4085c: ; 4085c
- db "WT ???lb", $ff ; WT ???lb
-Unknown_40867: ; 40867
- db $3b, " PAGE AREA CRY PRNT", $ff
-; 4087c
-
-Function4087c: ; 4087c (10:487c)
- call Function40aa6
- hlcoord 0, 2
- lb bc, 8, 18
- call Function40ad5
- hlcoord 0, 12
- lb bc, 4, 18
- call Function40ad5
- hlcoord 0, 1
- ld de, Unknown_408b2
- call Function40acd
- hlcoord 3, 4
- ld de, String_408bd
- call PlaceString
- ld a, [wc7dc]
- and a
- ret z
- hlcoord 3, 10
- ld de, String_408e5
- call PlaceString
- ret
-; 408b2 (10:48b2)
-
-Unknown_408b2: ; 408b2
- db $3b, " OPTION ", $3c, $ff
-; 408bd
-
-String_408bd: ; 408bd
- db "NEW #DEX MODE", $4e
- db "OLD #DEX MODE", $4e
- db "A to Z MODE@"
-; 408e5
-
-String_408e5: ; 408e5
- db "UNOWN MODE@"
-; 408f0
-
-Function408f0: ; 408f0 (10:48f0)
- call Function40aa6
- hlcoord 0, 2
- lb bc, 14, 18
- call Function40ad5
- hlcoord 0, 1
- ld de, Unknown_4092a
- call Function40acd
- hlcoord 8, 4
- ld de, Unknown_40935
- call Function40acd
- hlcoord 8, 6
- ld de, Unknown_40935
- call Function40acd
- hlcoord 3, 4
- ld de, String_40940
- call PlaceString
- hlcoord 3, 13
- ld de, String_4094c
- call PlaceString
- ret
-; 4092a (10:492a)
-
-Unknown_4092a: ; 4092a
- db $3b, " SEARCH ", $3c, $ff
-; 40925
-
-Unknown_40935: ; 40935
- db $3d, " ", $3e, $ff
-; 40940
-
-String_40940: ; 40940
- db "TYPE1"
- next "TYPE2"
- db "@"
-; 4094c
-
-String_4094c: ; 4094c
- db "BEGIN SEARCH!!"
- next "CANCEL"
- db "@"
-; 40962
-
-Function40962: ; 40962 (10:4962)
- call Function40aa6
- ld hl, TileMap
- lb bc, 7, 7
- call Function40ad5
- hlcoord 0, 11
- lb bc, 5, 18
- call Function40ad5
- hlcoord 1, 12
- ld de, String_409ae
- call PlaceString
- ld de, wc7d7
- hlcoord 1, 16
- ld bc, $103
- call PrintNum
- hlcoord 8, 0
- ld [hl], $59
- hlcoord 8, 1
- ld b, $7
- ld a, $5a
- call Function40741
- hlcoord 8, 8
- ld [hl], $53
- hlcoord 8, 9
- ld [hl], $69
- hlcoord 8, 10
- ld [hl], $6a
- call Function40ab2
- ret
-; 409ae (10:49ae)
-
-String_409ae: ; 409ae
- db "SEARCH RESULTS"
- next " TYPE"
- next " FOUND!"
- db "@"
-; 409cf
-
-Function409cf: ; 409cf (10:49cf)
- ld a, [wc7d5]
- hlcoord 0, 14
- call Function40fcd
- ld a, [wc7d5]
- ld b, a
- ld a, [wc7d6]
- and a
- jr z, .asm_409f0
- cp b
- jr z, .asm_409f0
- hlcoord 2, 15
- call Function40fcd
- hlcoord 1, 15
- ld [hl], $f3
-.asm_409f0
- ret
-
-Function409f1: ; 409f1 (10:49f1)
- call Function40aa6
- hlcoord 2, 1
- lb bc, 10, 13
- call Function40ad5
- hlcoord 2, 14
- lb bc, 1, 13
- call Function40ad5
- hlcoord 2, 15
- ld [hl], $3d
- hlcoord 16, 15
- ld [hl], $3e
- hlcoord 6, 5
- call Function40ab5
- ld de, 0
- ld b, 0
- ld c, 26
-.asm_40a1d
- ld hl, UnownDex
- add hl, de
- ld a, [hl]
- and a
- jr z, .asm_40a39
- push af
- ld hl, Unknown_40a3e
- add hl, de
- add hl, de
- add hl, de
- add hl, de
- ld a, [hli]
- ld h, [hl]
- ld l, a
- pop af
- add $3f
- ld [hl], a
- inc de
- inc b
- dec c
- jr nz, .asm_40a1d
-.asm_40a39
- ld a, b
- ld [wc7de], a
- ret
-; 40a3e (10:4a3e)
-
-Unknown_40a3e: ; 40a3e
- dwcoord 4,11, 3,11
- dwcoord 4,10, 3,10
- dwcoord 4, 9, 3, 9
- dwcoord 4, 8, 3, 8
- dwcoord 4, 7, 3, 7
- dwcoord 4, 6, 3, 6
- dwcoord 4, 5, 3, 5
- dwcoord 4, 4, 3, 4
- dwcoord 4, 3, 3, 2
- dwcoord 5, 3, 5, 2
- dwcoord 6, 3, 6, 2
- dwcoord 7, 3, 7, 2
- dwcoord 8, 3, 8, 2
- dwcoord 9, 3, 9, 2
- dwcoord 10, 3, 10, 2
- dwcoord 11, 3, 11, 2
- dwcoord 12, 3, 12, 2
- dwcoord 13, 3, 13, 2
- dwcoord 14, 3, 15, 2
- dwcoord 14, 4, 15, 4
- dwcoord 14, 5, 15, 5
- dwcoord 14, 6, 15, 6
- dwcoord 14, 7, 15, 7
- dwcoord 14, 8, 15, 8
- dwcoord 14, 9, 15, 9
- dwcoord 14,10, 15,10
-; 40aa6
-
-Function40aa6: ; 40aa6
- ld hl, TileMap
- ld a, $32
- ld bc, $0168
- call ByteFill
- ret
-; 40ab2
-
-Function40ab2: ; 40ab2
- hlcoord 1, 1
-Function40ab5: ; 40ab5
- xor a
- ld b, $7
-.asm_40ab8
- ld c, $7
- push af
- push hl
-.asm_40abc
- ld [hli], a
- add $7
- dec c
- jr nz, .asm_40abc
- pop hl
- ld de, $0014
- add hl, de
- pop af
- inc a
- dec b
- jr nz, .asm_40ab8
- ret
-; 40acd
-
-Function40acd: ; 40acd
-.asm_40acd
- ld a, [de]
- cp $ff
- ret z
- inc de
- ld [hli], a
- jr .asm_40acd
-; 40ad5
-
-
-Function40ad5: ; 40ad5
- push hl
- ld a, $33
- ld [hli], a
- ld d, $34
- call Function40b06
- ld a, $35
- ld [hl], a
- pop hl
- ld de, $0014
- add hl, de
-.asm_40ae6
- push hl
- ld a, $36
- ld [hli], a
- ld d, $7f
- call Function40b06
- ld a, $37
- ld [hl], a
- pop hl
- ld de, $0014
- add hl, de
- dec b
- jr nz, .asm_40ae6
- ld a, $38
- ld [hli], a
- ld d, $39
- call Function40b06
- ld a, $3a
- ld [hl], a
- ret
-; 40b06
-
-Function40b06: ; 40b06
- ld e, c
-.asm_40b07
- ld a, e
- and a
- ret z
- ld a, d
- ld [hli], a
- dec e
- jr .asm_40b07
-; 40b0f
-
-
-Function40b0f: ; 40b0f (10:4b0f)
- ld a, [wc7d4]
- cp $1
- jr z, .asm_40b1a
- ld c, $b
- jr .asm_40b1c
-.asm_40b1a
- ld c, $b
-.asm_40b1c
- hlcoord 0, 1
- ld a, [wc7d3]
- add a
- inc a
- ld b, a
- ld a, $7f
- call Function413fe
- ld a, [wc7d0]
- ld e, a
- ld d, $0
- ld hl, wc6d0
- add hl, de
- ld e, l
- ld d, h
- hlcoord 0, 2
- ld a, [wc7d3]
-.asm_40b3c
- push af
- ld a, [de]
- ld [wd265], a
- push de
- push hl
- call Function40b55
- pop hl
- ld de, $28
- add hl, de
- pop de
- inc de
- pop af
- dec a
- jr nz, .asm_40b3c
- call Function4143b
- ret
-
-Function40b55: ; 40b55 (10:4b55)
- and a
- ret z
- call Function40b6a
- call Function40b8d
- ret c
- call Function40b82
- push hl
- call GetPokemonName
- pop hl
- call PlaceString
- ret
-
-Function40b6a: ; 40b6a (10:4b6a)
- ld a, [wc7d4]
- cp $1
- jr z, .asm_40b72
- ret
-.asm_40b72
- push hl
- ld de, -20
- add hl, de
- ld de, wd265
- ld bc, $8103
- call PrintNum
- pop hl
- ret
-
-Function40b82: ; 40b82 (10:4b82)
- call Function40bc4
- jr nz, .asm_40b89
- inc hl
- ret
-.asm_40b89
- ld a, $4f
- ld [hli], a
- ret
-
-Function40b8d: ; 40b8d (10:4b8d)
- call Function40bd0
- ret nz
- inc hl
- ld de, String_40b9a
- call PlaceString
- scf
- ret
-; 40b9a (10:4b9a)
-
-String_40b9a: ; 40b9a
- db "-----@"
-; 40ba0
-
-Function40ba0: ; 40ba0
- hlcoord 18, 1
- ld a, $62
- ld [hli], a
- inc a
- ld [hl], a
- hlcoord 18, 2
- ld a, $64
- ld [hli], a
- inc a
- ld [hl], a
- ret
-; 40bb1
-
-
-Function40bb1: ; 40bb1
- ld a, [wc7d1]
- ld hl, wc7d0
- add [hl]
- ld e, a
- ld d, $0
- ld hl, wc6d0
- add hl, de
- ld a, [hl]
- ld [wd265], a
- ret
-; 40bc4
-
-
-Function40bc4: ; 40bc4 (10:4bc4)
- push de
- push hl
- ld a, [wd265]
- dec a
- call CheckCaughtMon
- pop hl
- pop de
- ret
-
-
-Function40bd0: ; 40bd0
- push de
- push hl
- ld a, [wd265]
- dec a
- call CheckSeenMon
- pop hl
- pop de
- ret
-; 40bdc
-
-
-
-Function40bdc: ; 40bdc
- ld hl, wc6d0
- ld bc, $100
- xor a
- call ByteFill
- ld a, [wc7d4]
- ld hl, Jumptable_40bf0
- call Function41432
- jp [hl]
-; 40bf0
-
-
-Jumptable_40bf0: ; 40bf0 (10:4bf0)
- dw Function40bf6
- dw Function40c08
- dw Function40c30
-
-
-Function40bf6: ; 40bf6 (10:4bf6)
- ld de, NewPokedexOrder
- ld hl, wc6d0
- ld c, NUM_POKEMON
-.asm_40bfe
- ld a, [de]
- inc de
- ld [hli], a
- dec c
- jr nz, .asm_40bfe
- call Function40c18
- ret
-
-Function40c08: ; 40c08 (10:4c08)
- ld hl, wc6d0
- ld a, $1
- ld c, NUM_POKEMON
-.asm_40c0f
- ld [hli], a
- inc a
- dec c
- jr nz, .asm_40c0f
- call Function40c18
- ret
-
-Function40c18: ; 40c18 (10:4c18)
- ld hl, wc7ca
- ld d, NUM_POKEMON
- ld e, d
-.asm_40c1e
- ld a, [hld]
- ld [wd265], a
- call Function40bd0
- jr nz, .asm_40c2b
- dec d
- dec e
- jr nz, .asm_40c1e
-.asm_40c2b
- ld a, d
- ld [wc7d2], a
- ret
-
-Function40c30: ; 40c30
- xor a
- ld [wc7d2], a
- ld hl, wc6d0
- ld de, AlphabeticalPokedexOrder
- ld c, NUM_POKEMON
-.asm_40c3c
- push bc
- ld a, [de]
- ld [wd265], a
- call Function40bd0
- jr z, .asm_40c51
- ld a, [wd265]
- ld [hli], a
- ld a, [wc7d2]
- inc a
- ld [wc7d2], a
-
-.asm_40c51
- inc de
- pop bc
- dec c
- jr nz, .asm_40c3c
- ld a, [wc7d2]
- ld c, 0
-.asm_40c5b
- cp NUM_POKEMON
- jr z, .asm_40c64
- ld [hl], c
- inc hl
- inc a
- jr .asm_40c5b
-
-.asm_40c64
- ret
-; 40c65
-
-AlphabeticalPokedexOrder: ; 0x40c65
-INCLUDE "data/pokedex/order_alpha.asm"
-
-NewPokedexOrder: ; 0x40d60
-INCLUDE "data/pokedex/order_new.asm"
-
-Function40e5b: ; 40e5b
- xor a
- ld [hBGMapMode], a
- hlcoord 0, 12
- ld bc, $0412
- call Function40ad5
- ld a, [wc7d8]
- ld hl, Unknown_40e7d
- call Function41432
- ld e, l
- ld d, h
- hlcoord 1, 14
- call PlaceString
- ld a, $1
- ld [hBGMapMode], a
- ret
-; 40e7d
-
-Unknown_40e7d: ; 40e7d
- dw String_40e85
- dw String_40ea6
- dw String_40ec6
- dw String_40ee4
-; 40e85
-
-String_40e85: ; 40e85
- db $e1, $e2, " are listed by", $4e
- db "evolution type.@"
-; 40ea6
-
-String_40ea6: ; 40ea6
- db $e1, $e2, " are listed by", $4e
- db "official type.@"
-; 40ec6
-
-String_40ec6: ; 40ec6
- db $e1, $e2, " are listed", $4e
- db "alphabetically.@"
-; 40ee4
-
-String_40ee4: ; 40ee4
- db "UNOWN are listed", $4e
- db "in catching order.@"
-; 40f08
-
-Function40f08: ; 40f08 (10:4f08)
- xor a
- ld [hBGMapMode], a ; $ff00+$d4
- hlcoord 0, 12
- ld bc, $412
- call Function40ad5
- ld de, $4f32
- hlcoord 1, 14
- call PlaceString
- ld a, $1
- ld [hBGMapMode], a ; $ff00+$d4
- ld c, $40
- call DelayFrames
- ld de, SFX_CHANGE_DEX_MODE
- call PlaySFX
- ld c, $40
- call DelayFrames
- ret
-; 40f32 (10:4f32)
-
-String_40f32: ; 40f32
- db "Changing modes.", $4e, "Please wait.@"
-; 40f4f
-
-Function40f4f: ; 40f4f (10:4f4f)
- ld a, [wc7d8]
- cp $2
- jr nc, .asm_40f63
- ld hl, $ffa9
- ld a, [hl]
- and $20
- jr nz, .asm_40f65
- ld a, [hl]
- and $10
- jr nz, Function40f84
-.asm_40f63
- and a
- ret
-.asm_40f65
- ld a, [wc7d8]
- and a
- jr nz, .asm_40f76
- ld hl, wc7d5
- ld a, [hl]
- cp $1
- jr z, .asm_40f80
- dec [hl]
- jr .asm_40f82
-.asm_40f76
- ld hl, wc7d6
- ld a, [hl]
- and a
- jr z, .asm_40f80
- dec [hl]
- jr .asm_40f82
-.asm_40f80
- ld [hl], $11
-.asm_40f82
- scf
- ret
-; 40f84
-
-Function40f84: ; 40f84
- ld a, [wc7d8]
- and a
- jr nz, .asm_40f99
- ld hl, wc7d5
- ld a, [hl]
- cp $11
- jr nc, .asm_40f95
- inc [hl]
- jr .asm_40fa6
-.asm_40f95
- ld [hl], $1
- jr .asm_40fa6
-.asm_40f99
- ld hl, wc7d6
- ld a, [hl]
- cp $11
- jr nc, .asm_40fa4
- inc [hl]
- jr .asm_40fa6
-.asm_40fa4
- ld [hl], $0
-.asm_40fa6
- scf
- ret
-
-Function40fa8: ; 40fa8 (10:4fa8)
- xor a
- ld [hBGMapMode], a ; $ff00+$d4
- hlcoord 9, 3
- ld bc, $408
- ld a, $7f
- call Function413fe
- ld a, [wc7d5]
- hlcoord 9, 4
- call Function40fcd
- ld a, [wc7d6]
- hlcoord 9, 6
- call Function40fcd
- ld a, $1
- ld [hBGMapMode], a ; $ff00+$d4
- ret
-
-Function40fcd: ; 40fcd (10:4fcd)
- push hl
- ld e, a
- ld d, 0
- ld hl, Strings_40fe4
- add hl, de
- add hl, de
- add hl, de
- add hl, de
- add hl, de
- add hl, de
- add hl, de
- add hl, de
- add hl, de
- ld e, l
- ld d, h
- pop hl
- call PlaceString
- ret
-; 40fe4 (10:4fe4)
-
-Strings_40fe4: ; 40fe4
- db " ---- @"
- db " NORMAL @"
- db " FIRE @"
- db " WATER @"
- db " GRASS @"
- db "ELECTRIC@"
- db " ICE @"
- db "FIGHTING@"
- db " POISON @"
- db " GROUND @"
- db " FLYING @"
- db "PSYCHIC @"
- db " BUG @"
- db " ROCK @"
- db " GHOST @"
- db " DRAGON @"
- db " DARK @"
- db " STEEL @"
-; 41086
-
-Function41086: ; 41086
- ld a, [wc7d6]
- and a
- call nz, Function41095
- ld a, [wc7d5]
- and a
- call nz, Function41095
- ret
-; 41095
-
-Function41095: ; 41095
- dec a
- ld e, a
- ld d, 0
- ld hl, Unknown_410f6
- add hl, de
- ld a, [hl]
- ld [wc7df], a
- ld hl, wc6d0
- ld de, wc6d0
- ld c, NUM_POKEMON
- xor a
- ld [wc7d7], a
-.asm_410ad
- push bc
- ld a, [hl]
- and a
- jr z, .asm_410e0
- ld [wd265], a
- ld [CurSpecies], a
- call Function40bc4
- jr z, .asm_410e0
- push hl
- push de
- call GetBaseData
- pop de
- pop hl
- ld a, [wc7df]
- ld b, a
- ld a, [BaseType1]
- cp b
- jr z, .asm_410d4
- ld a, [BaseType2]
- cp b
- jr nz, .asm_410e0
-
-.asm_410d4
- ld a, [wd265]
- ld [de], a
- inc de
- ld a, [wc7d7]
- inc a
- ld [wc7d7], a
-
-.asm_410e0
- inc hl
- pop bc
- dec c
- jr nz, .asm_410ad
- ld l, e
- ld h, d
- ld a, [wc7d7]
- ld c, 0
-.asm_410ec
- cp NUM_POKEMON
- jr z, .asm_410f5
- ld [hl], c
- inc hl
- inc a
- jr .asm_410ec
-
-.asm_410f5
- ret
-; 410f6
-
-Unknown_410f6: ; 410f6
- db NORMAL
- db FIRE
- db WATER
- db GRASS
- db ELECTRIC
- db ICE
- db FIGHTING
- db POISON
- db GROUND
- db FLYING
- db PSYCHIC
- db BUG
- db ROCK
- db GHOST
- db DRAGON
- db DARK
- db STEEL
-; 41107
-
-Function41107: ; 41107
- xor a
- ld [hBGMapMode], a
- hlcoord 0, 12
- ld bc, $0412
- call Function40ad5
- ld de, String_41126
- hlcoord 1, 14
- call PlaceString
- ld a, $1
- ld [hBGMapMode], a
- ld c, $80
- call DelayFrames
- ret
-; 41126
-
-String_41126: ; 41126
- db "The specified type", $4e
- db "was not found.@"
-; 41148
-
-Function41148: ; 41148 (10:5148)
- ld a, [wc7d4]
- cp $1
- jp z, Function41157
- call Function41229
- call Function4130e
- ret
-
-Function41157: ; 41157 (10:5157)
- ld hl, Unknown_41167
- ld a, [wc7d1]
- or a
- jr nz, .asm_41163
- ld hl, Unknown_411c8
-.asm_41163
- call Function412f1
- ret
-; 41167 (10:5167)
-
-Unknown_41167: ; 41167
-; OAM
- db $18, $47, $30, $07
- db $10, $47, $31, $07
- db $10, $4f, $32, $07
- db $10, $57, $32, $07
- db $10, $5f, $32, $07
- db $10, $67, $33, $07
- db $10, $7e, $33, $27
- db $10, $86, $32, $27
- db $10, $8e, $32, $27
- db $10, $96, $32, $27
- db $10, $9e, $31, $27
- db $18, $9e, $30, $27
- db $20, $47, $30, $47
- db $28, $47, $31, $47
- db $28, $4f, $32, $47
- db $28, $57, $32, $47
- db $28, $5f, $32, $47
- db $28, $67, $33, $47
- db $28, $7e, $33, $67
- db $28, $86, $32, $67
- db $28, $8e, $32, $67
- db $28, $96, $32, $67
- db $28, $9e, $31, $67
- db $20, $9e, $30, $67
- db $ff
-; 411c8
-
-Unknown_411c8: ; 411c8
-; OAM
- db $18, $47, $30, $07
- db $10, $47, $34, $07
- db $10, $4f, $35, $07
- db $10, $57, $35, $07
- db $10, $5f, $35, $07
- db $10, $67, $36, $07
- db $10, $7e, $36, $27
- db $10, $86, $35, $27
- db $10, $8e, $35, $27
- db $10, $96, $35, $27
- db $10, $9e, $34, $27
- db $18, $9e, $30, $27
- db $20, $47, $30, $47
- db $28, $47, $31, $47
- db $28, $4f, $32, $47
- db $28, $57, $32, $47
- db $28, $5f, $32, $47
- db $28, $67, $33, $47
- db $28, $7e, $33, $67
- db $28, $86, $32, $67
- db $28, $8e, $32, $67
- db $28, $96, $32, $67
- db $28, $9e, $31, $67
- db $20, $9e, $30, $67
- db $ff
-; 41229
-
-Function41229: ; 41229 (10:5229)
- ld hl, Unknown_41230
- call Function412f1
- ret
-; 41230 (10:5230)
-
-Unknown_41230: ; 41230
-; OAM
- db $1b, $47, $30, $07
- db $13, $47, $31, $07
- db $13, $4f, $32, $07
- db $13, $57, $32, $07
- db $13, $5f, $33, $07
- db $13, $80, $33, $27
- db $13, $88, $32, $27
- db $13, $90, $32, $27
- db $13, $98, $31, $27
- db $1b, $98, $30, $27
- db $23, $47, $30, $47
- db $2b, $47, $31, $47
- db $2b, $4f, $32, $47
- db $2b, $57, $32, $47
- db $2b, $5f, $33, $47
- db $2b, $80, $33, $67
- db $2b, $88, $32, $67
- db $2b, $90, $32, $67
- db $2b, $98, $31, $67
- db $23, $98, $30, $67
- db $ff
-; 41281
-
-Function41281: ; 41281 (10:5281)
- ld a, [wc7d4]
- cp $1
- jp z, Function41157
- ld hl, Unknown_41290
- call Function412f1
- ret
-; 41290 (10:5290)
-
-Unknown_41290: ; 41290
-; OAM
- db $1b, $47, $30, $07
- db $13, $47, $31, $07
- db $13, $4f, $32, $07
- db $13, $57, $32, $07
- db $13, $5f, $32, $07
- db $13, $67, $33, $07
- db $13, $7e, $33, $27
- db $13, $86, $32, $27
- db $13, $8e, $32, $27
- db $13, $96, $32, $27
- db $13, $9e, $31, $27
- db $1b, $9e, $30, $27
- db $23, $47, $30, $47
- db $2b, $47, $31, $47
- db $2b, $4f, $32, $47
- db $2b, $57, $32, $47
- db $2b, $5f, $32, $47
- db $2b, $67, $33, $47
- db $2b, $7e, $33, $67
- db $2b, $86, $32, $67
- db $2b, $8e, $32, $67
- db $2b, $96, $32, $67
- db $2b, $9e, $31, $67
- db $23, $9e, $30, $67
- db $ff
-; 412f1
-
-Function412f1: ; 412f1 (10:52f1)
- ld de, Sprites
-.asm_412f4
- ld a, [hl]
- cp $ff
- ret z
- ld a, [wc7d1]
- and $7
- swap a
- add [hl]
- inc hl
- ld [de], a
- inc de
- ld a, [hli]
- ld [de], a
- inc de
- ld a, [hli]
- ld [de], a
- inc de
- ld a, [hli]
- ld [de], a
- inc de
- jr .asm_412f4
-
-Function4130e: ; 4130e (10:530e)
- push de
- ld a, [wc7d2]
- dec a
- ld e, a
- ld a, [wc7d1]
- ld hl, wc7d0
- add [hl]
- cp e
- jr z, .asm_4133f
- ld hl, $0
- ld bc, $79
- call AddNTimes
- ld e, l
- ld d, h
- ld b, $0
- ld a, d
- or e
- jr z, .asm_41341
- ld a, [wc7d2]
- ld c, a
-.asm_41333
- ld a, e
- sub c
- ld e, a
- ld a, d
- sbc $0
- ld d, a
- jr c, .asm_41341
- inc b
- jr .asm_41333
-.asm_4133f
- ld b, $79
-.asm_41341
- ld a, $14
- add b
- pop hl
- ld [hli], a
- ld a, $a1
- ld [hli], a
- ld a, $f
- ld [hli], a
- ld [hl], $0
- ret
-
-Function4134f: ; 4134f (10:534f)
- xor a
- ld [wc7d8], a
- ld [wc7d9], a
- ld [wc7da], a
- ret
-
-Function4135a: ; 4135a (10:535a)
- ld a, [de]
- ld b, a
- inc de
- ld a, [de]
- dec a
- ld c, a
- inc de
- call Function413e0
- ld hl, hJoyPressed ; $ffa7
- ld a, [hl]
- and D_LEFT | D_UP
- and b
- jr nz, .asm_4138f
- ld a, [hl]
- and D_RIGHT | D_DOWN
- and b
- jr nz, .asm_413a0
- ld a, [hl]
- and SELECT
- and b
- jr nz, .asm_413c1
- call Function413f5
- jr c, .asm_413bf
- ld hl, $ffa9
- ld a, [hl]
- and D_LEFT | D_UP
- and b
- jr nz, .asm_4138f
- ld a, [hl]
- and D_RIGHT | D_DOWN
- and b
- jr nz, .asm_413a0
- jr .asm_413bf
-.asm_4138f
- ld a, [wc7d8]
- and a
- jr z, .asm_413bf
- call Function413d4
- ld [hl], $7f
- ld hl, wc7d8
- dec [hl]
- jr .asm_413af
-.asm_413a0
- ld a, [wc7d8]
- cp c
- jr nc, .asm_413bf
- call Function413d4
- ld [hl], $7f
- ld hl, wc7d8
- inc [hl]
-.asm_413af
- call Function413d4
- ld [hl], $ed
- ld a, $c
- ld [wc7d9], a
- xor a
- ld [wc7da], a
- scf
- ret
-.asm_413bf
- and a
- ret
-.asm_413c1
- call Function413d4
- ld [hl], $7f
- ld a, [wc7d8]
- cp c
- jr c, .asm_413ce
- ld a, $ff
-.asm_413ce
- inc a
- ld [wc7d8], a
- jr .asm_413af
-
-Function413d4: ; 413d4 (10:53d4)
- ld a, [wc7d8]
- add a
- ld l, a
- ld h, $0
- add hl, de
- ld a, [hli]
- ld h, [hl]
- ld l, a
- ret
-
-Function413e0: ; 413e0 (10:53e0)
- ld hl, wc7da
- ld a, [hl]
- inc [hl]
- and $8
- jr z, .asm_413ef
- call Function413d4
- ld [hl], $7f
- ret
-.asm_413ef
- call Function413d4
- ld [hl], $ed
- ret
-
-Function413f5: ; 413f5 (10:53f5)
- ld hl, wc7d9
- ld a, [hl]
- and a
- ret z
- dec [hl]
- scf
- ret
-
-Function413fe: ; 413fe (10:53fe)
- jp Functionfb8
-
-Function41401: ; 41401 (10:5401)
- ld a, [rSVBK] ; $ff00+$70
- push af
- ld a, $5
- ld [rSVBK], a ; $ff00+$70
- ld hl, Unkn1Pals
- ld bc, $40
- xor a
- call ByteFill
- pop af
- ld [rSVBK], a ; $ff00+$70
-
-Function41415: ; 41415
- ld a, $ff
- call DmgToCgbBGPals
- ld a, $ff
- call Functioncf8
- call DelayFrame
- ret
-
-Function41423: ; 41423
- ld b, a
- call GetSGBLayout
-
-Function41427: ; 41427
- ld a, $e4
- call DmgToCgbBGPals
- ld a, $e0
- call Functioncf8
- ret
-; 41432
-
-
-Function41432: ; 41432
- ld e, a
- ld d, 0
- add hl, de
- add hl, de
- ld a, [hli]
- ld h, [hl]
- ld l, a
- ret
-; 4143b
-
-Function4143b: ; 4143b
- call Function40bb1
- call Function40bd0
- jr z, .asm_4145b
- ld a, [wdef4]
- ld [UnownLetter], a
- ld a, [wd265]
- ld [CurPartySpecies], a
- call GetBaseData
- ld de, VTiles2
- predef GetFrontpic
- ret
-
-.asm_4145b
- ld a, $0
- call GetSRAMBank
- callba Function1de0d7
- ld hl, VTiles2
- ld de, $a000
- ld c, $31
- ld a, [hROMBank]
- ld b, a
- call Get2bpp
- call CloseSRAM
- ret
-; 41478
+INCLUDE "engine/pokedex.asm"
-Function41478: ; 41478 (10:5478)
- call Function40bb1
-
-Function4147b: ; 4147b
- ld a, [wd265]
- dec a
- and $f8
- srl a
- srl a
- srl a
- ld e, 0
- ld d, a
- ld a, [wd265]
- dec a
- and 7
- swap a ; * $10
- ld l, a
- ld h, 0
- add hl, de
- ld de, Footprints
- add hl, de
-
- push hl
- ld e, l
- ld d, h
- ld hl, $9620
- lb bc, BANK(Footprints), 2
- call Request1bpp
- pop hl
-
- ; Whoever was editing footprints forgot to fix their
- ; tile editor. Now each bottom half is 8 tiles off.
- ld de, $80
- add hl, de
-
- ld e, l
- ld d, h
- ld hl, $9640
- lb bc, BANK(Footprints), 2
- call Request1bpp
-
- ret
-; 414b7
-
-
-Function414b7: ; 414b7
- call DisableLCD
- ld hl, VTiles2
- ld bc, $0310
- xor a
- call ByteFill
- call Function414fb
- call Functione5f
- ld hl, $9600
- ld bc, $0200
- call Function41504
- call Function41a24
- jr nz, .asm_414e0
- callba Function1ddf1c
- jr .asm_414e9
-
-.asm_414e0
- ld hl, PokedexLZ
- ld de, $9310
- call Decompress
-
-.asm_414e9
- ld hl, PokedexSlowpokeLZ
- ld de, VTiles0
- call Decompress
- ld a, 6
- call SkipMusic
- call EnableLCD
- ret
-
-Function414fb: ; 414fb
- call Functione51
- ld hl, VTiles1
- ld bc, $0800
-
-Function41504: ; 41504
- ld a, [hl]
- xor $ff
- ld [hli], a
- dec bc
- ld a, b
- or c
- jr nz, Function41504
- ret
-; 4150e
-
-PokedexLZ: ; 4150e
-INCBIN "gfx/unknown/04150e.2bpp.lz"
-; 416b0
-
-PokedexSlowpokeLZ: ; 416b0
-INCBIN "gfx/pokedex/slowpoke.2bpp.lz"
-
-Function41a24: ; 41a24
- ld a, [hCGB]
- or a
- ret nz
- ld a, [hSGB]
- dec a
- ret
-; 41a2c
-
-Function41a2c: ; 41a2c
- ld a, $0
- call GetSRAMBank
- ld hl, UnownFont
- ld de, $a188
- ld bc, $270
- ld a, BANK(UnownFont)
- call FarCopyBytes
- ld hl, $a188
- ld bc, $1b0
- call Function41504
- ld de, $a188
- ld hl, $9400
- lb bc, BANK(Function41a2c), $1b
- call Request2bpp
- call CloseSRAM
- ret
-; 41a58
-
-
-Function41a58: ; 41a58 (10:5a58)
- ld a, [UnownLetter]
- push af
- ld a, [wc7dd]
- ld e, a
- ld d, $0
- ld hl, EndPokedexSeen ; wded9 (aliases: UnownDex)
- add hl, de
- ld a, [hl]
- ld [UnownLetter], a
- ld a, UNOWN
- ld [CurPartySpecies], a
- call GetBaseData
- ld de, $9000
- predef GetFrontpic
- pop af
- ld [UnownLetter], a
- ret
Function41a7f: ; 41a7f
xor a
@@ -47620,7 +38273,7 @@ INCLUDE "data/pokedex/entry_pointers.asm"
Function4456e: ; 4456e
- ld a, $1
+ ld a, PartyMon1Item - PartyMon1
call GetPartyParamLocation
ld d, [hl]
callba ItemIsMail
@@ -47646,7 +38299,7 @@ Function4456e: ; 4456e
xor a
ld bc, $002f
call ByteFill
- ld a, $1
+ ld a, PartyMon1Item - PartyMon1
call GetPartyParamLocation
ld [hl], $0
ld hl, $a834
@@ -54298,97 +44951,8 @@ Function4cffe:: ; 4cffe
ret
; 4d01e
-MapTriggers:: ; 4d01e
-; Map triggers
-
-trigger_def: MACRO
-; db group, map
-; dw address
- map \1
- dw \2
-ENDM
- trigger_def POKECENTER_2F, wPokecenter2FTrigger
- trigger_def TRADE_CENTER, wTradeCenterTrigger
- trigger_def COLOSSEUM, wColosseumTrigger
- trigger_def TIME_CAPSULE, wTimeCapsuleTrigger
- trigger_def POWER_PLANT, wPowerPlantTrigger
- trigger_def CERULEAN_GYM, wCeruleanGymTrigger
- trigger_def ROUTE_25, wRoute25Trigger
- trigger_def TRAINER_HOUSE_B1F, wTrainerHouseB1FTrigger
- trigger_def VICTORY_ROAD_GATE, wVictoryRoadGateTrigger
- trigger_def SAFFRON_TRAIN_STATION, wSaffronTrainStationTrigger
- trigger_def ROUTE_16_GATE, wRoute16GateTrigger
- trigger_def ROUTE_17_18_GATE, wRoute1718GateTrigger
- trigger_def INDIGO_PLATEAU_POKECENTER_1F, wIndigoPlateauPokecenter1FTrigger
- trigger_def WILLS_ROOM, wWillsRoomTrigger
- trigger_def KOGAS_ROOM, wKogasRoomTrigger
- trigger_def BRUNOS_ROOM, wBrunosRoomTrigger
- trigger_def KARENS_ROOM, wKarensRoomTrigger
- trigger_def LANCES_ROOM, wLancesRoomTrigger
- trigger_def HALL_OF_FAME, wHallOfFameTrigger
- trigger_def ROUTE_27, wRoute27Trigger
- trigger_def NEW_BARK_TOWN, wNewBarkTownTrigger
- trigger_def ELMS_LAB, wElmsLabTrigger
- trigger_def KRISS_HOUSE_1F, wKrissHouse1FTrigger
- trigger_def ROUTE_29, wRoute29Trigger
- trigger_def CHERRYGROVE_CITY, wCherrygroveCityTrigger
- trigger_def MR_POKEMONS_HOUSE, wMrPokemonsHouseTrigger
- trigger_def ROUTE_32, wRoute32Trigger
- trigger_def ROUTE_35_NATIONAL_PARK_GATE, wRoute35NationalParkGateTrigger
- trigger_def ROUTE_36, wRoute36Trigger
- trigger_def ROUTE_36_NATIONAL_PARK_GATE, wRoute36NationalParkGateTrigger
- trigger_def AZALEA_TOWN, wAzaleaTownTrigger
- trigger_def GOLDENROD_GYM, wGoldenrodGymTrigger
- trigger_def GOLDENROD_MAGNET_TRAIN_STATION, wGoldenrodMagnetTrainStationTrigger
- trigger_def GOLDENROD_POKECENTER_1F, wGoldenrodPokecenter1FTrigger
- trigger_def OLIVINE_CITY, wOlivineCityTrigger
- trigger_def ROUTE_34, wRoute34Trigger
- trigger_def ROUTE_34_ILEX_FOREST_GATE, wRoute34IlexForestGateTrigger
- trigger_def ECRUTEAK_HOUSE, wEcruteakHouseTrigger
- trigger_def WISE_TRIOS_ROOM, wWiseTriosRoomTrigger
- trigger_def ECRUTEAK_POKECENTER_1F, wEcruteakPokecenter1FTrigger
- trigger_def ECRUTEAK_GYM, wEcruteakGymTrigger
- trigger_def MAHOGANY_TOWN, wMahoganyTownTrigger
- trigger_def ROUTE_42, wRoute42Trigger
- trigger_def CIANWOOD_CITY, wCianwoodCityTrigger
- trigger_def BATTLE_TOWER_1F, wBattleTower1FTrigger
- trigger_def BATTLE_TOWER_BATTLE_ROOM, wBattleTowerBattleRoomTrigger
- trigger_def BATTLE_TOWER_ELEVATOR, wBattleTowerElevatorTrigger
- trigger_def BATTLE_TOWER_HALLWAY, wBattleTowerHallwayTrigger
- trigger_def BATTLE_TOWER_OUTSIDE, wBattleTowerOutsideTrigger
- trigger_def ROUTE_43_GATE, wRoute43GateTrigger
- trigger_def MOUNT_MOON, wMountMoonTrigger
- trigger_def SPROUT_TOWER_3F, wSproutTower3FTrigger
- trigger_def TIN_TOWER_1F, wTinTower1FTrigger
- trigger_def BURNED_TOWER_1F, wBurnedTower1FTrigger
- trigger_def BURNED_TOWER_B1F, wBurnedTowerB1FTrigger
- trigger_def RADIO_TOWER_5F, wRadioTower5FTrigger
- trigger_def RUINS_OF_ALPH_OUTSIDE, wRuinsOfAlphOutsideTrigger
- trigger_def RUINS_OF_ALPH_RESEARCH_CENTER, wRuinsOfAlphResearchCenterTrigger
- trigger_def RUINS_OF_ALPH_HO_OH_CHAMBER, wRuinsOfAlphHoOhChamberTrigger
- trigger_def RUINS_OF_ALPH_KABUTO_CHAMBER, wRuinsOfAlphKabutoChamberTrigger
- trigger_def RUINS_OF_ALPH_OMANYTE_CHAMBER, wRuinsOfAlphOmanyteChamberTrigger
- trigger_def RUINS_OF_ALPH_AERODACTYL_CHAMBER, wRuinsOfAlphAerodactylChamberTrigger
- trigger_def RUINS_OF_ALPH_INNER_CHAMBER, wRuinsOfAlphInnerChamberTrigger
- trigger_def MAHOGANY_MART_1F, wMahoganyMart1FTrigger
- trigger_def TEAM_ROCKET_BASE_B1F, wTeamRocketBaseB1FTrigger
- trigger_def TEAM_ROCKET_BASE_B2F, wTeamRocketBaseB2FTrigger
- trigger_def TEAM_ROCKET_BASE_B3F, wTeamRocketBaseB3FTrigger
- trigger_def UNDERGROUND_PATH_SWITCH_ROOM_ENTRANCES, wUndergroundPathSwitchRoomEntrancesTrigger
- trigger_def SILVER_CAVE_ROOM_3, wSilverCaveRoom3Trigger
- trigger_def VICTORY_ROAD, wVictoryRoadTrigger
- trigger_def DRAGONS_DEN_B1F, wDragonsDenB1FTrigger
- trigger_def DRAGON_SHRINE, wDragonShrineTrigger
- trigger_def OLIVINE_PORT, wOlivinePortTrigger
- trigger_def VERMILION_PORT, wVermilionPortTrigger
- trigger_def FAST_SHIP_1F, wFastShip1FTrigger
- trigger_def FAST_SHIP_B1F, wFastShipB1FTrigger
- trigger_def MOUNT_MOON_SQUARE, wMountMoonSquareTrigger
- trigger_def MOBILE_TRADE_ROOM_MOBILE, wMobileTradeRoomMobileTrigger
- trigger_def MOBILE_BATTLE_ROOM, wMobileBattleRoomTrigger
- db $ff
-; 4d15b
+INCLUDE "engine/map_triggers.asm"
Function4d15b:: ; 4d15b
@@ -56517,7 +47081,7 @@ Function4e1ae: ; 4e1ae (13:61ae)
jr nz, .asm_4e1bb
hlcoord 11, 8
ld bc, $6
- predef Function50b7b
+ predef PrintTempMonStats
ret
Function4e1cc: ; 4e1cc (13:61cc)
@@ -58745,34 +49309,39 @@ Function505da:: ; 505da
; 5062e
Function5062e: ; 5062e
- ld a, $20
+ ld a, PartyMon1Status - PartyMon1
call GetPartyParamLocation
ld a, [hl]
- and $8
+ and 1 << PSN
ret z
- ld a, $22
+
+ ld a, PartyMon1HP - PartyMon1
call GetPartyParamLocation
ld a, [hli]
ld b, a
ld c, [hl]
+
or c
ret z
+
dec bc
ld [hl], c
dec hl
ld [hl], b
+
ld a, b
or c
- jr nz, .asm_50654
- ld a, $20
+ jr nz, .not_fainted
+
+ ld a, PartyMon1Status - PartyMon1
call GetPartyParamLocation
- ld [hl], $0
- ld c, $2
+ ld [hl], 0
+ ld c, 2
scf
ret
-.asm_50654
- ld c, $1
+.not_fainted
+ ld c, 1
scf
ret
; 50658
@@ -58849,7 +49418,7 @@ Function506bc: ; 506bc
UnknownScript_0x506c8: ; 0x506c8
reloadmappart
- special $0035
+ special UpdateTimePals
callasm GetPartyNick
writetext UnknownText_0x50726
closetext
@@ -58926,7 +49495,7 @@ _Squirtbottle: ; 50730
UnknownScript_0x5073c: ; 0x5073c
reloadmappart
- special $0035
+ special UpdateTimePals
callasm Function50753
iffalse UnknownScript_0x5074b
farjump WateredWeirdTreeScript
@@ -59094,15 +49663,15 @@ CheckAnyFaintedMon: ; 507fb
; 50821
UnknownScript_0x50821: ; 0x50821
- special $001b
+ special Functionc658
reloadmappart
playsound SFX_WARP_TO
- special $002e
- special $0031
- special $002e
- special $0031
- special $002e
- special $0031
+ special Function8c084
+ special Function8c079
+ special Function8c084
+ special Function8c079
+ special Function8c084
+ special Function8c079
waitbutton
writetext UnknownText_0x50845
playsound SFX_CAUGHT_MON
@@ -59433,40 +50002,40 @@ DrawHP: ; 50b10
; 50b7b
-Function50b7b: ; 50b7b
-; Print a monster's stats on level up.
+PrintTempMonStats: ; 50b7b
+; Print TempMon's stats at hl, with spacing bc.
push bc
push hl
- ld de, String_50bb5
+ ld de, .StatNames
call PlaceString
pop hl
pop bc
add hl, bc
- ld bc, $0014
+ ld bc, SCREEN_WIDTH
add hl, bc
ld de, TempMonAttack
ld bc, $0203
- call Function50bab
+ call .PrintStat
ld de, TempMonDefense
- call Function50bab
+ call .PrintStat
ld de, TempMonSpclAtk
- call Function50bab
+ call .PrintStat
ld de, TempMonSpclDef
- call Function50bab
+ call .PrintStat
ld de, TempMonSpeed
jp PrintNum
; 50bab
-Function50bab: ; 50bab
+.PrintStat: ; 50bab
push hl
call PrintNum
pop hl
- ld de, $0028
+ ld de, SCREEN_WIDTH * 2
add hl, de
ret
; 50bb5
-String_50bb5: ; 50bb5
+.StatNames: ; 50bb5
db "ATTACK"
next "DEFENSE"
next "SPCL.ATK"
@@ -70785,7 +61354,7 @@ Function8adef: ; 8adef
dec a
ld [CurPartyMon], a
push bc
- ld a, $1
+ ld a, PartyMon1Item - PartyMon1
call GetPartyParamLocation
pop bc
ld a, [hl]
@@ -100772,8083 +91341,7 @@ Functionfd1d0: ; fd1d0
INCBIN "baserom.gbc", $fd1d1, $fd1d2 - $fd1d1
-SECTION "bank40", ROMX, BANK[$40]
-
-Function100000: ; 100000
- ld a, [rSVBK]
- push af
- ld a, $1
- ld [rSVBK], a
- call Function100022
- call Function1000ba
- call Function100675
- call Function100057
- call Function10016f
- call Function100276
- push bc
- call Function100301
- pop bc
- pop af
- ld [rSVBK], a
- ret
-; 100022
-
-Function100022: ; 100022
- push de
- push bc
- call Function100063
- pop bc
- pop de
- ld a, d
- ld [wcd21], a
- ld a, e
- ld [CreditsTimer], a
- ld a, c
- ld [wcd23], a
- ld a, b
- ld [wcd24], a
- callba Function10127e
- callba Function106462
- callba Function106464
- callba Function11615a
- ld hl, VramState
- set 1, [hl]
- ret
-; 100057
-
-Function100057: ; 100057
- call Function1000a4
- call Function222a
- ld hl, VramState
- res 1, [hl]
- ret
-; 100063
-
-Function100063: ; 100063
- xor a
- ld hl, BGMapBuffer
- ld bc, $0065
- call ByteFill
- xor a
- ld hl, wc300
- ld bc, $100
- call ByteFill
- ld a, [rIE]
- ld [BGMapBuffer], a
- xor a
- ld [$ffde], a
- ld [hLCDStatCustom], a
- ret
-; 100082
-
-Function100082: ; 100082
- xor a
- ld hl, OverworldMap
- ld bc, 1300
- call ByteFill
- di
- call DoubleSpeed
- xor a
- ld [rIF], a
- ld a, 1 << VBLANK + 1 << LCD_STAT + 1 << TIMER + 1 << SERIAL
- ld [rIE], a
- xor a
- ld [$ffde], a
- ld [hLCDStatCustom], a
- ld a, $1
- ld [$ffc9], a
- ld [$ffe9], a
- ei
- ret
-; 0x1000a4
-
-Function1000a4: ; 1000a4
- di
- xor a
- ld [$ffc9], a
- ld [$ffe9], a
- xor a
- ld [hVBlank], a
- call NormalSpeed
- xor a
- ld [rIF], a
- ld a, [BGMapBuffer]
- ld [rIE], a
- ei
- ret
-; 1000ba
-
-Function1000ba: ; 1000ba
-.asm_1000ba
- ld hl, wcd23
- ld a, [hli]
- ld h, [hl]
- ld l, a
- ld a, [wcd25]
- ld e, a
- ld d, $0
- add hl, de
- add hl, de
- ld a, [CreditsTimer]
- call GetFarHalfword
- ld a, [CreditsTimer]
- rst FarCall
- call Function1000e8
- call Function1000fa
- call Function100144
- call Function100163
- ld a, [wcd2b]
- and a
- jr z, .asm_1000ba
- call DelayFrame
- ret
-; 1000e8
-
-Function1000e8: ; 1000e8
- ld hl, wcd29
- bit 7, [hl]
- ret z
- callba Function115dd3
- ld hl, wcd29
- set 6, [hl]
- ret
-; 1000fa
-
-Function1000fa: ; 1000fa
- ld a, [wc30d]
- and a
- ret z
- ld hl, wcd29
- bit 4, [hl]
- ret z
- ld a, [wcd2b]
- and a
- jr nz, .asm_100117
- callba Function11619d
- ld hl, wcd29
- set 6, [hl]
- ret
-
-.asm_100117
- di
- xor a
- ld [rIF], a
- ld a, [rIE]
- and $13
- ld [rIE], a
- xor a
- ld [$ffc9], a
- ld [$ffe9], a
- ei
- ld a, [InLinkBattle]
- push af
- xor a
- ld [InLinkBattle], a
- ld a, $4
- ld [wc319], a
- callba Function11619d
- ld hl, wcd29
- set 6, [hl]
- pop af
- ld [InLinkBattle], a
- ret
-; 100144
-
-Function100144: ; 100144
- ld hl, wcd29
- bit 5, [hl]
- jr z, .asm_100155
- res 5, [hl]
- res 2, [hl]
- res 6, [hl]
- call Function100320
- ret
-
-.asm_100155
- bit 2, [hl]
- ret z
- res 2, [hl]
- res 6, [hl]
- callba Function10402d
- ret
-; 100163
-
-Function100163: ; 100163
- ld hl, wcd29
- bit 6, [hl]
- ret z
- res 6, [hl]
- call DelayFrame
- ret
-; 10016f
-
-Function10016f: ; 10016f
- ld a, [wcd2b]
- cp $1
- ret z
- cp $2
- ret z
- cp $ff
- jp z, .asm_1001f5
- cp $fe
- jr z, .asm_1001c4
- cp $f5
- jr z, .asm_1001e7
- cp $f6
- jr z, .asm_1001b6
- cp $fa
- jp z, .asm_1001bd
- cp $f7
- jp z, .asm_1001ee
- cp $f4
- jr z, .asm_1001d2
- cp $f3
- jr z, .asm_1001cb
- cp $f1
- jr z, .asm_1001c4
- cp $f2
- jr z, .asm_1001c4
- cp $fc
- jr z, .asm_1001e6
- cp $fb
- jr z, .asm_1001af
- cp $f8
- ret z
- ret
-
-.asm_1001af
- ld a, $d7
- ld de, $0000
- jr .asm_1001d7
-
-.asm_1001b6
- ld a, $d5
- ld de, $0000
- jr .asm_1001d7
-
-.asm_1001bd
- ld a, $d6
- ld de, $0000
- jr .asm_1001d7
-
-.asm_1001c4
- ld a, $d2
- ld de, $0002
- jr .asm_1001d7
-
-.asm_1001cb
- ld a, $d1
- ld de, $0001
- jr .asm_1001d7
-
-.asm_1001d2
- ld a, $d0
- ld de, $0000
-
-.asm_1001d7
- ld [wc300], a
- ld a, d
- ld [wc302], a
- ld a, e
- ld [wc301], a
- call Function10020b
- ret
-
-.asm_1001e6
- ret
-
-.asm_1001e7
- ld de, String10025e
- call Function100232
- ret
-
-.asm_1001ee
- ld de, String10024d
- call Function100232
- ret
-
-.asm_1001f5
- ld a, [wcd2c]
- ld [wc300], a
- ld a, [wcd2d]
- ld [wc302], a
- ld a, [wcd2d]
- ld [wc301], a
- call Function10020b
- ret
-; 10020b
-
-Function10020b: ; 10020b
- xor a
- ld [wc303], a
- callba Function8c084
- callba Function106464
- call HideSprites
- call DelayFrame
- ld a, [rSVBK]
- push af
- ld a, $1
- ld [rSVBK], a
- callba Function17f555
- pop af
- ld [rSVBK], a
- ret
-; 100232
-
-Function100232: ; 100232
- push de
- callba Function106464
- call Function3f20
- call Function1ad2
- hlcoord 1, 2
- pop de
- call PlaceString
- call Function100320
- call Functiona36
- ret
-; 10024d
-
-String10024d: ; 10024d
- db "つうしんを キャンセル しました@"
-; 10025e
-
-String10025e: ; 10025e
- db "おともだちと えらんだ へやが"
- next "ちがうようです@"
-; 100276
-
-Function100276: ; 100276
- ld a, [wcd2b]
- cp $1
- jr z, .asm_10029f
- cp $2
- jr z, .asm_100296
- cp $f5
- jr z, .asm_1002a5
- cp $f6
- jr z, .asm_1002a5
- cp $f7
- jr z, .asm_100293
- cp $f8
- jr z, .asm_1002b1
- jr .asm_1002c0
-
-.asm_100293
- ld c, $2
- ret
-
-.asm_100296
- callba Script_reloadmappart
- ld c, $4
- ret
-
-.asm_10029f
- call Function1002dc
- ld c, $0
- ret
-
-.asm_1002a5
- callba Script_reloadmappart
- call Function1002ed
- ld c, $3
- ret
-
-.asm_1002b1
- call Function1002c9
- call Function1002dc
- ld de, String10024d
- call Function100232
- ld c, $2
- ret
-
-.asm_1002c0
- call Function1002c9
- call Function1002dc
- ld c, $1
- ret
-; 1002c9
-
-Function1002c9: ; 1002c9
- ld hl, wcd2a
- bit 0, [hl]
- ret z
- callba Function3f6d0
- callba Function1500c
- ret
-; 1002dc
-
-Function1002dc: ; 1002dc
- ld a, $f8
- ld [$ff9f], a
- callba RunMapSetupScript
- xor a
- ld [$ff9f], a
- call Functione51
- ret
-; 1002ed
-
-Function1002ed: ; 1002ed
- callba Function49409
- callba Function96a4
- ld a, $1
- ld [hCGBPalUpdate], a
- call DelayFrame
- ret
-; 100301
-
-Function100301: ; 100301
- ld hl, wcd2a
- bit 1, [hl]
- ret z
- callba Function106464
- callba Function10202c
- callba Function115dd3
- call Function100320
- call Functiona36
- ret
-; 100320
-
-Function100320: ; 100320
- callba Function104099
- ret
-; 100327
-
-Function100327: ; 100327
- callba Function10402d
- ret
-; 100327
-
-
-Function10032e: ; 10032e
- call Function10034d
- ld e, a
- ret nc
- ld [wcd2b], a
- ret
-; 100337
-
-Function100337: ; 100337
- call Function10032e
- ret c
- ld a, [wc821]
- bit 4, a
- jr z, .asm_100345
- ld a, e
- and a
- ret
-
-.asm_100345
- ld a, $f9
- ld e, a
- ld [wcd2b], a
- scf
- ret
-; 10034d
-
-Function10034d: ; 10034d
- ld a, [wc821]
- bit 1, a
- jr nz, .asm_10036a
- bit 2, a
- jr nz, .asm_10037e
- bit 3, a
- jr nz, .asm_100366
- bit 0, a
- jr nz, .asm_100364
- ld a, $1
- and a
- ret
-
-.asm_100364
- xor a
- ret
-
-.asm_100366
- ld a, $2
- and a
- ret
-
-.asm_10036a
- ld a, $0
- call Function3e32
- ld [wcd2c], a
- ld a, h
- ld [wcd2d], a
- ld a, l
- ld [wcd2e], a
- ld a, $ff
- scf
- ret
-
-.asm_10037e
- ld a, $fe
- scf
- ret
-; 100382
-
-Function100382: ; 100382
- ld a, [wcd27]
- ld hl, Jumptable_10044e
- rst JumpTable
- ret
-; 10038a
-
-Function10038a: ; 10038a
- ld hl, wccb4
- ld a, $2e
- call Function3e32
- ret
-; 100393
-
-Function100393: ; 100393
- ld hl, wcc60
- ld a, $3a
- call Function3e32
- ret
-; 10039c
-
-Function10039c: ; 10039c
- ld hl, wcc60
- ld de, wd000
- ld bc, $0054
- ld a, $3
- call FarCopyWRAM
- ret
-; 1003ab
-
-Function1003ab: ; 1003ab
- ld hl, wd000
- ld de, wcc60
- ld bc, $0054
- ld a, $3
- call FarCopyWRAM
- ret
-; 1003ba
-
-Function1003ba: ; 1003ba
- ld hl, wccb4
- ld de, $d080
- ld bc, $0054
- ld a, $3
- call FarCopyWRAM
- ret
-; 1003c9
-
-Function1003c9: ; 1003c9
- ld hl, $d080
- ld de, wccb4
- ld bc, $0054
- ld a, $3
- call FarCopyWRAM
- ret
-; 1003d8
-
-Function1003d8: ; 1003d8
- ld hl, wccb4
- ld a, [hli]
- ld c, a
- ld b, $0
- push hl
- add hl, bc
- ld a, [BGMapPalBuffer]
- ld [hl], a
- pop hl
- inc bc
- call Function10043a
- add hl, bc
- ld [hl], e
- inc hl
- ld [hl], d
- ld a, c
- add $2
- ld [wccb4], a
- ret
-; 1003f5
-
-Function1003f5: ; 1003f5
- ld a, [wcc60]
- sub $3
- ld [wcc60], a
- ld a, [wccb4]
- sub $3
- ld [wccb4], a
- ret
-; 100406
-
-Function100406: ; 100406
- ld a, [wcc60]
- sub $2
- ld c, a
- ld b, $0
- ld hl, wcc61
- call Function10043a
- add hl, bc
- ld a, [hli]
- cp e
- jr nz, .asm_100426
- ld a, [hld]
- cp d
- jr nz, .asm_100426
- dec hl
- ld a, [BGMapPalBuffer]
- cp [hl]
- jr nz, .asm_10042d
- xor a
- ret
-
-.asm_100426
- ld a, $f4
- ld [wcd2b], a
- jr .asm_100432
-
-.asm_10042d
- ld a, $f3
- ld [wcd2b], a
-
-.asm_100432
- push hl
- ld hl, wcd7c
- inc [hl]
- pop hl
- scf
- ret
-; 10043a
-
-Function10043a: ; 10043a
- push hl
- push bc
- ld de, $0000
-.asm_10043f
- ld a, [hli]
- add e
- ld e, a
- ld a, d
- adc $0
- ld d, a
- dec bc
- ld a, b
- or c
- jr nz, .asm_10043f
- pop bc
- pop hl
- ret
-; 10044e
-
-
-Jumptable_10044e: ; 10044e (40:444e)
- dw Function10046a
- dw Function10047c
- dw Function100493
- dw Function1004ba
- dw Function1004f4
- dw Function1004ce
- dw Function1004de
- dw Function1004a4
- dw Function100495
- dw Function1004ce
- dw Function1004de
- dw Function1004e9
- dw Function1004f4
- dw Function1004a4
-
-Function10046a: ; 10046a
- ld hl, BGMapPalBuffer
- inc [hl]
- call Function1003d8
- call Function1003ba
- ld a, [wcd27]
- inc a
- ld [wcd27], a
- ret
-; 10047c
-
-Function10047c: ; 10047c
- call Function100337
- ret c
- ret z
- cp $2
- jr z, .asm_100487
- jr .asm_10048d
-
-.asm_100487
- ld a, $8
- ld [wcd27], a
- ret
-
-.asm_10048d
- ld a, $2
- ld [wcd27], a
- ret
-; 100493
-
-Function100493: ; 100493
- jr asm_100497
-
-Function100495: ; 100495
- jr asm_100497
-
-asm_100497
- call Function100337
- ret c
- ret z
- ld a, [wcd27]
- inc a
- ld [wcd27], a
- ret
-; 1004a4
-
-Function1004a4: ; 1004a4
- call Function100406
- jr c, .asm_1004b8
- call Function1003c9
- call Function1003f5
- ld a, [wcd27]
- set 7, a
- ld [wcd27], a
- ret
-
-.asm_1004b8
- scf
- ret
-; 1004ba
-
-Function1004ba: ; 1004ba
- call Function10038a
- and a
- jr nz, .asm_1004c8
- ld a, [wcd27]
- inc a
- ld [wcd27], a
- ret
-
-.asm_1004c8
- ld a, $8
- ld [wcd27], a
- ret
-; 1004ce
-
-Function1004ce: ; 1004ce
- call Function100337
- ret c
- ret z
- cp $2
- ret nz
- ld a, [wcd27]
- inc a
- ld [wcd27], a
- ret
-; 1004de
-
-Function1004de: ; 1004de
- call Function100393
- ld a, [wcd27]
- inc a
- ld [wcd27], a
- ret
-; 1004e9
-
-Function1004e9: ; 1004e9
- call Function10038a
- ld a, [wcd27]
- inc a
- ld [wcd27], a
- ret
-; 1004f4
-
-Function1004f4: ; 1004f4
- call Function100337
- ret c
- ret z
- ld a, [wcd27]
- inc a
- ld [wcd27], a
- call Function10039c
- ret
-; 100504
-
-Function100504: ; 100504
- push de
- call Function3f20
- call Function1ad2
- pop de
- hlcoord 4, 2
- call PlaceString
- ret
-; 100513
-
-Function100513: ; 100513
- call Function3f7c
- call Function1c89
- call Function1c10
- ld hl, wcfa5
- set 7, [hl]
- ret
-; 100522
-
-Function100522: ; 100522
- ld a, [wcd28]
- ld hl, Jumptable_10052a
- rst JumpTable
- ret
-; 10052a
-
-Jumptable_10052a: ; 10052a
- dw Function100534
- dw Function100545
- dw Function100545
- dw Function100545
- dw Function10054d
-; 100534
-
-Function100534: ; 100534
- call Function100513
- call Function1ad2
- call Function321c
- ld a, [wcd28]
- inc a
- ld [wcd28], a
- ret
-; 100545
-
-Function100545: ; 100545
- ld a, [wcd28]
- inc a
- ld [wcd28], a
- ret
-; 10054d
-
-Function10054d: ; 10054d
- callba Function241ba
- ld a, c
- ld hl, wcfa8
- and [hl]
- ret z
- call Function1ff8
- bit 0, a
- jr nz, .asm_100565
- bit 1, a
- jr nz, .asm_10056f
- ret
-
-.asm_100565
- ld a, [wcd28]
- set 7, a
- ld [wcd28], a
- and a
- ret
-
-.asm_10056f
- ld a, [wcd28]
- set 7, a
- ld [wcd28], a
- scf
- ret
-; 100579
-
-Function100579: ; 100579
- ld a, [wcd26]
- ld hl, Jumptable_100581
- rst JumpTable
- ret
-; 100581
-
-Jumptable_100581: ; 100581
- dw Function100585
- dw Function100597
-; 100585
-
-Function100585: ; 100585
- ld hl, MenuDataHeader_1005b2
- call LoadMenuDataHeader
- ld a, $0
- ld [wcd28], a
- ld a, [wcd26]
- inc a
- ld [wcd26], a
-
-Function100597: ; 100597
- call Function100522
- ld a, [wcd28]
- bit 7, a
- ret z
- jr nc, .asm_1005a6
- xor a
- ld [wcfa9], a
-
-.asm_1005a6
- call Function1c07
- ld a, [wcd26]
- set 7, a
- ld [wcd26], a
- ret
-; 1005b2
-
-MenuDataHeader_1005b2: ; 1005b2
- db $40 ; flags
- db 6, 14
- db 10, 19
- dw MenuData2_1005ba
- db 1 ; default option
-
-MenuData2_1005ba:
- db $c0 ; flags
- db 2
- db "はい@"
- db "いいえ@"
-; 1005c3
-
-Function1005c3: ; 1005c3
- ld a, [wcd26]
- ld hl, Jumptable_1005cb
- rst JumpTable
- ret
-; 1005cb
-
-Jumptable_1005cb: ; 1005cb
- dw Function1005cf
- dw Function1005e1
-; 1005cf
-
-Function1005cf: ; 1005cf
- ld hl, MenuDataHeader_1005fc
- call LoadMenuDataHeader
- ld a, $0
- ld [wcd28], a
- ld a, [wcd26]
- inc a
- ld [wcd26], a
-
-Function1005e1: ; 1005e1
- call Function100522
- ld a, [wcd28]
- bit 7, a
- ret z
- jr nc, .asm_1005f0
- xor a
- ld [wcfa9], a
-.asm_1005f0
- call Function1c07
- ld a, [wcd26]
- set 7, a
- ld [wcd26], a
- ret
-; 1005fc
-
-MenuDataHeader_1005fc: ; 1005fc
- db $40 ; flags
- db 6, 14
- db 10, 19
- dw MenuData2_100604
- db 1 ; default option
-
-MenuData2_100604: ; 100604
- db $c0 ; flags
- db 2
- db "かける@"
- db "まつ@"
-; 10060d
-
-Function10060d: ; 10060d
- hlcoord 3, 10
- ld b, $1
- ld c, $b
- call Function3eea
- ld de, String_100621
- hlcoord 4, 11
- call PlaceString
- ret
-; 100621
-
-String_100621: ; 100621
- db "つうしんたいきちゅう!@"
-; 10062d
-
-Function10062d: ; 10062d
- push bc
- call Function10064e
- pop bc
- ld a, [wcd44]
- cp b
- jr nc, .asm_10063a
- and a
- ret
-
-.asm_10063a
- ld a, $fa
- ld [wcd2b], a
- scf
- ret
-; 100641
-
-Function100641: ; 100641
- xor a
- ld [wcd44], a
- ld [wcd45], a
- ld [wcd46], a
- ret
-; 10064c
-
-Function10064c: ; 10064c
- ld c, 1
-
-Function10064e: ; 10064e
- ld hl, wcd46
- ld a, [hl]
- add c
- cp $3c
- jr c, .asm_100658
- xor a
-
-.asm_100658
- ld [hld], a
- ret c
- ld a, [hl]
- inc a
- cp $3c
- jr c, .asm_100661
- xor a
-
-.asm_100661
- ld [hld], a
- ret c
- inc [hl]
- ret
-; 100665
-
-Function100665: ; 100665
- call UpdateTime
- ld hl, wcd36
- ld a, [hHours]
- ld [hli], a
- ld a, [hMinutes]
- ld [hli], a
- ld a, [hSeconds]
- ld [hl], a
- ret
-; 100675
-
-Function100675: ; 100675
- ld hl, wcd2a
- bit 2, [hl]
- set 2, [hl]
- ret nz
- call Function1006d3
- ret
-; 100681
-
-Function100681: ; 100681
- push hl
- ld hl, wcd2a
- bit 2, [hl]
- ld hl, wcd2a
- set 2, [hl]
- pop hl
- jr nz, .asm_100694
- push hl
- call Function1006d3
- pop hl
-.asm_100694
- ld de, wcd32
-
-Function100697: ; 100697
- ld a, [de]
- and a
- jr nz, .asm_1006bb
- inc de
- push de
- call .asm_1006b4
- ld de, String1006c2
- call PlaceString
- ld h, b
- ld l, c
- pop de
- inc de
- call .asm_1006b4
- ld de, String1006c6
- call PlaceString
- ret
-
-.asm_1006b4
- ld bc, $8102
- call PrintNum
- ret
-
-.asm_1006bb
- ld de, String1006ca
- call PlaceString
- ret
-; 1006c2
-
-String1006c2: ; 1006c2
- db "ふん @"
-String1006c6: ; 1006c6
- db "びょう@"
-String1006ca: ; 1006ca
- db "1じかんいじょう@"
-; 1006d3
-
-Function1006d3: ; 1006d3
- call UpdateTime
- ld de, wcd34
- ld hl, wcd38
-
-Function1006dc: ; 1006dc
- ld a, [hld]
- ld c, a
- ld a, [hSeconds]
- sub c
- jr nc, .asm_1006e5
- add $3c
-
-.asm_1006e5
- ld [de], a
- dec de
- ld a, [hld]
- ld c, a
- ld a, [hMinutes]
- sbc c
- jr nc, .asm_1006f0
- add $3c
-
-.asm_1006f0
- ld [de], a
- dec de
- ld a, [hl]
- ld c, a
- ld a, [hHours]
- sbc c
- jr nc, .asm_1006fb
- add $18
-
-.asm_1006fb
- ld [de], a
- ret
-; 1006fd
-
-Function1006fd: ; 1006fd
- ld a, $4
- ld hl, $a800
- call GetSRAMBank
- xor a
- ld [hli], a
- ld [hli], a
- ld [hli], a
- call CloseSRAM
- ret
-; 10070d
-
-Function10070d: ; 10070d
- ld a, $4
- ld hl, $a800
- call GetSRAMBank
- xor a
- ld [hli], a
- ld a, $a
- ld [hli], a
- xor a
- ld [hli], a
- call CloseSRAM
- ret
-; 100720
-
-Function100720: ; 100720
- xor a
- ld [wcd6a], a
- call UpdateTime
- ld a, [hHours]
- ld [wcd72], a
- ld a, [hMinutes]
- ld [wcd73], a
- ld a, [hSeconds]
- ld [wcd74], a
- ld a, $4
- ld hl, $a800
- call GetSRAMBank
- ld a, [hli]
- ld [wcd6c], a
- ld a, [hli]
- ld [wcd6d], a
- ld a, [hli]
- ld [wcd6e], a
- call CloseSRAM
- ld a, [wcd6d]
- ld [wcd6b], a
- ret
-; 100754
-
-Function100754: ; 100754
- call UpdateTime
- ld a, [hHours]
- ld [wcd72], a
- ld a, [hMinutes]
- ld [wcd73], a
- ld a, [hSeconds]
- ld [wcd74], a
- ld a, [wcd6d]
- ld [wcd6b], a
- ld hl, wcd2a
- res 6, [hl]
- ret
-; 100772
-
-Function100772: ; 100772
- push de
- ld hl, wcd6c
- ld a, [de]
- cp [hl]
- jr c, .asm_10079a
- jr nz, .asm_10078c
- inc hl
- inc de
- ld a, [de]
- cp [hl]
- jr c, .asm_10079a
- jr nz, .asm_10078c
- inc hl
- inc de
- ld a, [de]
- cp [hl]
- jr c, .asm_10079a
- jr z, .asm_10079a
-
-.asm_10078c
- pop hl
- ld a, [hli]
- ld [wcd6c], a
- ld a, [hli]
- ld [wcd6d], a
- ld a, [hli]
- ld [wcd6e], a
- ret
-
-.asm_10079a
- pop de
- ret
-; 10079c
-
-
-Function10079c: ; 10079c
- ld a, [wcd21]
- cp $1
- jr nz, .asm_1007f4
- ld hl, wcd2a
- bit 5, [hl]
- jr nz, .asm_1007f4
- ld hl, wcd2a
- bit 6, [hl]
- jr nz, .asm_1007f4
- ld a, [wcd6a]
- add c
- cp $3c
- jr nc, .asm_1007be
- ld [wcd6a], a
- and a
- ret
-
-.asm_1007be
- sub $3c
- ld [wcd6a], a
- ld d, b
- push de
- call Function1007f6
- pop de
- jr c, .asm_1007e5
- ld a, c
- and a
- jr nz, .asm_1007e5
- ld a, b
- cp $a
- jr nc, .asm_1007e5
- ld a, d
- and a
- ret z
- ld a, [wcd6b]
- cp b
- ret z
- ld a, b
- ld [wcd6b], a
- call Function1008e0
- and a
- ret
-
-.asm_1007e5
- call Function1008e0
- ld hl, wcd2a
- set 4, [hl]
- ld a, $fc
- ld [wcd2b], a
- scf
- ret
-
-.asm_1007f4
- and a
- ret
-; 1007f6
-
-Function1007f6: ; 1007f6
- call UpdateTime
- ld hl, wcd74
- ld de, wcd71
- call Function1006dc
- ld a, $4
- call GetSRAMBank
- ld hl, $a802
- call Function100826
- call CloseSRAM
- ld hl, wcd6e
- call Function100826
- ld a, [hHours]
- ld [wcd72], a
- ld a, [hMinutes]
- ld [wcd73], a
- ld a, [hSeconds]
- ld [wcd74], a
- ret
-; 100826
-
-Function100826: ; 100826
- ld a, [wcd71]
- add [hl]
- sub $3c
- jr nc, .asm_100830
- add $3c
-
-.asm_100830
- ld [hld], a
- ccf
- ld a, [BGMapBufferPtrs]
- adc [hl]
- sub $3c
- jr nc, .asm_10083c
- add $3c
-
-.asm_10083c
- ld [hld], a
- ld b, a
- ccf
- ld a, [wcd6f]
- adc [hl]
- ld [hl], a
- ld c, a
- ret
-; 100846
-
-Function100846: ; 100846
- ld hl, wcd2a
- bit 5, [hl]
- jr nz, .asm_10087c
- ld a, [wcd6e]
- ld c, a
- ld a, $0
- sub c
- jr nc, .asm_100858
- add $3c
-
-.asm_100858
- ld [StringBuffer2 + 2], a
- ld a, [wcd6d]
- ld c, a
- ld a, $a
- sbc c
- ld [StringBuffer2 + 1], a
- xor a
- ld [StringBuffer2], a
- ld de, String_10088e
- hlcoord 1, 14
- call PlaceString
- ld de, StringBuffer2
- hlcoord 4, 16
- call Function100697
- ret
-
-.asm_10087c
- ld de, String_10088e
- hlcoord 1, 14
- call PlaceString
- ld h, b
- ld l, c
- ld de, String_10089f
- call PlaceString
- ret
-; 10088e
-
-String_10088e: ; 10088e
- db "モバイルたいせん できる"
- next "じかん@"
-; 10089f
-
-String_10089f: ; 10089f
- db " むせいげん@"
-; 1008a6
-
-Function1008a6: ; 1008a6
- ld a, $4
- ld hl, $a800
- call GetSRAMBank
- ld a, [hli]
- ld [StringBuffer2], a
- ld a, [hli]
- ld [StringBuffer2 + 1], a
- ld a, [hli]
- ld [StringBuffer2 + 2], a
- call CloseSRAM
- ld a, [StringBuffer2 + 2]
- ld b, a
- ld a, $0
- sub b
- jr nc, .asm_1008c8
- add $3c
-
-.asm_1008c8
- ld b, a
- ld a, [StringBuffer2 + 1]
- ld c, a
- ld a, $a
- sbc c
- ld c, a
- jr c, .asm_1008da
- ld a, [StringBuffer2]
- and a
- jr nz, .asm_1008da
- ret
-
-.asm_1008da
- call Function10070d
- ld c, $0
- ret
-; 1008e0
-
-
-Function1008e0: ; 1008e0
- ld a, [hBGMapMode]
- ld b, a
- ld a, [hVBlank]
- ld c, a
- push bc
- xor a
- ld [hBGMapMode], a
- ld a, $3
- ld [hVBlank], a
- call Function100970
- call Function100902
- call Function100989
- call DelayFrame
- pop bc
- ld a, c
- ld [hVBlank], a
- ld a, b
- ld [hBGMapMode], a
- ret
-; 100902
-
-Function100902: ; 100902
- hlcoord 3, 10
- ld b, $1
- ld c, $b
- call TextBox
- ld a, [wcd6d]
- ld c, a
- ld a, $a
- sub c
- ld [StringBuffer2], a
- jr z, .asm_10093f
- ld de, .string_100966
- hlcoord 4, 11
- call PlaceString
- hlcoord 8, 11
- ld bc, $0102
- ld de, StringBuffer2
- call PrintNum
- ld de, SFX_TWO_PC_BEEPS
- call PlaySFX
- callba Function104061
- ld c, $3c
- call DelayFrames
- ret
-
-.asm_10093f
- ld de, .string_10095a
- hlcoord 4, 11
- call PlaceString
- ld de, SFX_4_NOTE_DITTY
- call PlaySFX
- callba Function104061
- ld c, $78
- call DelayFrames
- ret
-; 10095a
-
-.string_10095a ; 10095a
- db "たいせん しゅうりょう@"
-.string_100966 ; 100966
- db "のこり ふん", $e7, "@"
-; 100970
-
-
-Function100970: ; 100970
- ld hl, TileMap
- ld de, wdc00
- call Function1009a5
- ld hl, AttrMap
- ld de, $dd68
- call Function1009a5
- call Function1009d2
- call Function1009ae
- ret
-; 100989
-
-Function100989: ; 100989
- ld hl, wdc00
- ld de, TileMap
- call Function1009a5
- call Function1009ae
- callba Function104061
- ld hl, $dd68
- ld de, AttrMap
- call Function1009a5
- ret
-; 1009a5
-
-Function1009a5: ; 1009a5
- ld bc, $0168
- ld a, $3
- call FarCopyWRAM
- ret
-; 1009ae
-
-Function1009ae: ; 1009ae
- ld a, [rSVBK]
- push af
- ld a, $3
- ld [rSVBK], a
- ld hl, $d800
- ld de, AttrMap
- ld c, $14
- ld b, $12
-.asm_1009bf
- push bc
-.asm_1009c0
- ld a, [hli]
- ld [de], a
- inc de
- dec c
- jr nz, .asm_1009c0
- ld bc, $000c
- add hl, bc
- pop bc
- dec b
- jr nz, .asm_1009bf
- pop af
- ld [rSVBK], a
- ret
-; 1009d2
-
-Function1009d2: ; 1009d2
- ld a, [rSVBK]
- push af
- ld a, $3
- ld [rSVBK], a
- ld a, [rVBK]
- push af
- ld a, $1
- ld [rVBK], a
- ld hl, $d800
- ld de, VBGMap0
- lb bc, $3, $24
- call Get2bpp
- pop af
- ld [rVBK], a
- pop af
- ld [rSVBK], a
- ret
-; 1009f3
-
-Function1009f3: ; 1009f3
- ld a, [hJoyDown]
- and SELECT + A_BUTTON
- cp SELECT + A_BUTTON
- jr nz, .asm_100a07
- ld hl, wcd2a
- set 4, [hl]
- ld a, $f8
- ld [wcd2b], a
- scf
- ret
-
-.asm_100a07
- xor a
- ret
-; 100a09
-
-Function100a09: ; 100a09
- call Function100a2e
- ld [wd431], a
- callba Function4000
- ld a, [InLinkBattle]
- cp $4
- jr nz, .asm_100a2a
- call Function100a87
- call Function100da5
- callba Function3ee27
- jr .asm_100a2d
-
-.asm_100a2a
- call Function100a53
-
-.asm_100a2d
- ret
-; 100a2e
-
-Function100a2e: ; 100a2e
- ld a, [wd0ec]
- and a
- jr nz, .asm_100a48
- ld a, [CurPlayerMove]
- ld b, $e
- cp STRUGGLE
- jr z, .asm_100a4f
- ld b, $d
- cp $ff
- jr z, .asm_100a4f
- ld a, [CurMoveNum]
- jr .asm_100a50
-
-.asm_100a48
- ld a, [CurPartyMon]
- add $4
- jr .asm_100a50
-
-.asm_100a4f
- ld a, b
-
-.asm_100a50
- and $f
- ret
-; 100a53
-
-Function100a53: ; 100a53
- ld a, [wd431]
- ld [wcf56], a
- ld a, $ff
- ld [wcf52], a
-.asm_100a5e
- call Function8c1
- call DelayFrame
- ld a, [wcf52]
- inc a
- jr z, .asm_100a5e
- ld b, $a
-.asm_100a6c
- call DelayFrame
- call Function8c1
- dec b
- jr nz, .asm_100a6c
- ld b, $a
-.asm_100a77
- call DelayFrame
- call Function908
- dec b
- jr nz, .asm_100a77
- ld a, [wcf52]
- ld [wd430], a
- ret
-; 100a87
-
-Function100a87: ; 100a87
- call Function100acf
- call Function100641
- ld a, $0
- ld [wcd27], a
-.asm_100a92
- call DelayFrame
- call GetJoypad
- callba Function100382
- ld c, $1
- ld b, $3
- push bc
- call Function10062d
- pop bc
- jr c, .asm_100ac7
- ld b, $1
- call Function10079c
- jr c, .asm_100ac7
- call Function1009f3
- jr c, .asm_100ac7
- ld a, [wcd2b]
- and a
- jr nz, .asm_100ac7
- ld a, [wcd27]
- bit 7, a
- jr z, .asm_100a92
- call Function100ae7
- jr .asm_100ace
-
-.asm_100ac7
- ld a, $f
- ld [wd430], a
- jr .asm_100ace
-
-.asm_100ace
- ret
-; 100acf
-
-Function100acf: ; 100acf
- ld de, Unknown_100b0a
- ld hl, wccb5
- ld a, [wd431]
- ld [hli], a
- ld c, $1
-.asm_100adb
- ld a, [de]
- inc de
- ld [hli], a
- inc c
- and a
- jr nz, .asm_100adb
- ld a, c
- ld [wccb4], a
- ret
-; 100ae7
-
-Function100ae7: ; 100ae7
- ld de, Unknown_100b0a
- ld hl, wcc62
-.asm_100aed
- ld a, [de]
- inc de
- and a
- jr z, .asm_100af8
- cp [hl]
- jr nz, .asm_100aff
- inc hl
- jr .asm_100aed
-
-.asm_100af8
- ld a, [wcc61]
- ld [wd430], a
- ret
-
-.asm_100aff
- ld a, $f
- ld [wd430], a
- ld a, $f1
- ld [wcd2b], a
- ret
-; 100b0a
-
-
-SECTION "tetsuji", ROMX, BANK[$40]
-
- charmap " ", $20 ; revert to ascii
-
-Unknown_100b0a: ; 100b0a
- db "tetsuji", 0
-; 100b12
-
-
-SECTION "bank40_2", ROMX, BANK[$40]
-
-Function100b12: ; 100b12
- call Function100dd8
- ret c
- ld hl, BattleMenuDataHeader
- ld a, BANK(BattleMenuDataHeader)
- ld de, LoadMenuDataHeader
- call FarCall_de
- ld a, BANK(BattleMenuDataHeader)
- ld [wcf94], a
- ld a, [wd0d2]
- ld [wcf88], a
- call Function100e72
- call Function100b45
- callba Function8e85
- call Function100ed4
- ld a, [wcf88]
- ld [wd0d2], a
- call Function1c07
- ret
-; 100b45
-
-Function100b45: ; 100b45
- call Function100b7a
-.asm_100b48
- call Function100dd2
- callba Function241ba
- push bc
- callba Function10402d
- call Function100e2d
- pop bc
- jr c, .asm_100b6b
- ld a, [wcfa8]
- and c
- jr z, .asm_100b48
- callba Function24098
- ret
-
-.asm_100b6b
- ld a, [wcfa4]
- ld c, a
- ld a, [wcfa3]
- call SimpleMultiply
- ld [wcf88], a
- and a
- ret
-; 100b7a
-
-Function100b7a: ; 100b7a
- ld hl, Function1c66
- ld a, [wcf94]
- rst FarCall
- callba Function24085
- callba MobileTextBorder
- call Function1ad2
- call Function321c
- callba Function2411a
- ld hl, wcfa5
- set 7, [hl]
- ret
-; 100b9f
-
-Function100b9f: ; 100b9f
- xor a
- ld [wd0e3], a
- callba Function3e786
- ret z
- call Function100dd8
- jp c, Function2ec8
- call Function100e72
- call Function100bc2
- push af
- callba Function8e85
- call Function100ed4
- pop af
- ret
-; 100bc2
-
-Function100bc2: ; 100bc2
- xor a
- ld [hBGMapMode], a
- call Function100c74
- call Function100c98
-.asm_100bcb
- callba MoveInfoBox
-.asm_100bd1
- call Function100dd2
- callba Function241ba
- push bc
- callba Function10402d
- call Function100e2d
- pop bc
- jr c, .asm_100c25
- ld a, [wcfa8]
- and c
- bit 6, a
- jp nz, .asm_100bff
- bit 7, a
- jp nz, .asm_100c10
- bit 0, a
- jr nz, .asm_100c30
- bit 1, a
- jr nz, .asm_100c25
- jr .asm_100bd1
-
-.asm_100bff
- ld a, [wcfa9]
- and a
- jp nz, .asm_100bcb
- ld a, [wd0eb]
- inc a
- ld [wcfa9], a
- jp .asm_100bcb
-
-.asm_100c10
- ld a, [wcfa9]
- ld b, a
- ld a, [wd0eb]
- inc a
- inc a
- cp b
- jp nz, .asm_100bcb
- ld a, $1
- ld [wcfa9], a
- jp .asm_100bcb
-
-.asm_100c25
- ld a, [wcfa9]
- dec a
- ld [CurMoveNum], a
- ld a, $1
- and a
- ret
-
-.asm_100c30
- ld a, [wcfa9]
- dec a
- ld [CurMoveNum], a
- ld a, [wcfa9]
- dec a
- ld c, a
- ld b, 0
- ld hl, BattleMonPP
- add hl, bc
- ld a, [hl]
- and $3f
- jr z, .asm_100c68
- ld a, [PlayerDisableCount]
- swap a
- and $f
- dec a
- cp c
- jr z, .asm_100c63
- ld a, [wcfa9]
- dec a
- ld c, a
- ld b, 0
- ld hl, BattleMonMoves
- add hl, bc
- ld a, [hl]
- ld [CurPlayerMove], a
- xor a
- ret
-
-.asm_100c63
- ld hl, BattleText_0x80c5b
- jr .asm_100c6b
-
-.asm_100c68
- ld hl, BattleText_0x80c39
-
-.asm_100c6b
- call StdBattleTextBox
- call Function30b4
- jp Function100bc2
-; 100c74
-
-Function100c74: ; 100c74
- hlcoord 0, 8
- ld b, 8
- ld c, 8
- call TextBox
- ld hl, BattleMonMoves
- ld de, wd25e
- ld bc, NUM_MOVES
- call CopyBytes
- ld a, SCREEN_WIDTH * 2
- ld [Buffer1], a
- hlcoord 2, 10
- predef ListMoves
- ret
-; 100c98
-
-Function100c98: ; 100c98
- ld de, Unknown_100cad
- call Function1bb1
- ld a, [wd0eb]
- inc a
- ld [wcfa3], a
- ld a, [CurMoveNum]
- inc a
- ld [wcfa9], a
- ret
-; 100cad
-
-Unknown_100cad: ; 100cad
-INCBIN "baserom.gbc",$100cad,$100cb5 - $100cad
-
-
-Function100cb5: ; 100cb5
- call Function100dd8
- ret c
- ld hl, wcfa5
- set 7, [hl]
- res 6, [hl]
-.asm_100cc0
- call Function100dd2
- callba Function241ba
- push bc
- callba Function8cf69
- callba Function10402d
- call Function100dfd
- pop bc
- jr c, .asm_100d17
- ld a, [wcfa8]
- and c
- jr z, .asm_100cc0
- call Function1bee
- ld a, [PartyCount]
- inc a
- ld b, a
- ld a, [wcfa9]
- cp b
- jr z, .asm_100d17
- ld [wd0d8], a
- ld a, [$ffa9]
- ld b, a
- bit 1, b
- jr nz, .asm_100d17
- ld a, [wcfa9]
- dec a
- ld [CurPartyMon], a
- ld c, a
- ld b, $0
- ld hl, PartySpecies
- add hl, bc
- ld a, [hl]
- ld [CurPartySpecies], a
- ld de, SFX_READ_TEXT_2
- call PlaySFX
- call WaitSFX
- and a
- ret
-
-.asm_100d17
- ld de, SFX_READ_TEXT_2
- call PlaySFX
- call WaitSFX
- scf
- ret
-; 100d22
-
-Function100d22: ; 100d22
- call Function100dd8
- ret c
- call Function100d67
- ld hl, wcfa5
- set 7, [hl]
- res 6, [hl]
-.asm_100d30
- call Function100dd2
- callba Function241ba
- push bc
- callba Function8cf69
- callba Function10402d
- call Function100dfd
- pop bc
- jr c, .asm_100d54
- ld a, [wcfa8]
- and c
- jr nz, .asm_100d56
- jr .asm_100d30
-
-.asm_100d54
- scf
- ret
-
-.asm_100d56
- push af
- ld de, SFX_READ_TEXT_2
- call PlaySFX
- pop af
- bit 1, a
- jr z, .asm_100d65
- ret z
- scf
- ret
-
-.asm_100d65
- and a
- ret
-; 100d67
-
-Function100d67: ; 100d67
- ld hl, MenuDataHeader_100d88
- call Function1d3c
- xor a
- ld [hBGMapMode], a
- call Function1cbb
- call Function1ad2
- call Function1c89
- call WaitBGMap
- call Function1c66
- call Function1c10
- ld hl, wcfa5
- set 6, [hl]
- ret
-; 100d88
-
-MenuDataHeader_100d88: ; 100d88
- db 0 ; flags
- db 11, 11 ; start coords
- db 17, 19 ; end coords
- dw MenuData2_100d90
- db 1 ; default option
-
-MenuData2_100d90: ; 100d90
- db $c0 ; flags
- db 3
- db "いれかえる@"
- db "つよさをみる@"
- db "キャンセル@"
-; 100da5
-
-Function100da5: ; 100da5
- ld hl, wcd2a
- res 3, [hl]
- ld hl, wcd29
- res 0, [hl]
- ret
-; 100db0
-
-Function100db0: ; 100db0
- ld hl, wcd2a
- bit 3, [hl]
- jr nz, .asm_100dbe
- ld hl, wcd2a
- set 3, [hl]
- scf
- ret
-
-.asm_100dbe
- xor a
- ret
-; 100dc0
-
-
-
-Function100dc0: ; 100dc0
- ld a, [InLinkBattle]
- cp $4
- jr nz, .asm_100dd0
- ld hl, wcd2a
- bit 3, [hl]
- jr z, .asm_100dd0
- scf
- ret
-
-.asm_100dd0
- xor a
- ret
-; 100dd2
-
-Function100dd2: ; 100dd2
- ld a, 30
- ld [OverworldDelay], a
- ret
-; 100dd8
-
-Function100dd8: ; 100dd8
- ld c, $1
- ld b, $3
- callba Function10062d
- jr c, .asm_100dfb
- ld c, $3c
- ld b, $1
- call Function10079c
- jr c, .asm_100dfb
- callba Function10032e
- ld a, [wcd2b]
- and a
- jr nz, .asm_100dfb
- xor a
- ret
-
-.asm_100dfb
- scf
- ret
-; 100dfd
-
-Function100dfd: ; 100dfd
- ld a, [OverworldDelay]
- ld c, a
- ld a, 30
- sub c
- ld c, a
- ld b, 3
- push bc
- callba Function10062d
- pop bc
- jr c, .asm_100e2b
- ld b, 1
- call Function10079c
- jr c, .asm_100e2b
- call Function1009f3
- jr c, .asm_100e2b
- callba Function10032e
- ld a, [wcd2b]
- and a
- jr nz, .asm_100e2b
- xor a
- ret
-
-.asm_100e2b
- scf
- ret
-; 100e2d
-
-Function100e2d: ; 100e2d
- ld a, [OverworldDelay]
- ld c, a
- ld a, 30
- sub c
- ld c, a
- ld b, 3
- push bc
- callba Function10062d
- pop bc
- jr c, .asm_100e61
- ld b, 1
- call Function10079c
- jr c, .asm_100e61
- call Function1009f3
- jr c, .asm_100e61
- callba Function10032e
- ld a, [wcd2b]
- and a
- jr nz, .asm_100e61
- call Function100e63
- call Function100e84
- xor a
- ret
-
-.asm_100e61
- scf
- ret
-; 100e63
-
-Function100e63: ; 100e63
- ld a, e
- cp $2
- ret nz
- call Function100db0
- ret nc
- ld de, SFX_ELEVATOR_END
- call PlaySFX
- ret
-; 100e72
-
-Function100e72: ; 100e72
- xor a
- ld hl, wcd29
- bit 0, [hl]
- jr z, .asm_100e7c
- ld a, $a
-
-.asm_100e7c
- ld [wcd67], a
- xor a
- ld [wcd68], a
- ret
-; 100e84
-
-Function100e84: ; 100e84
- ld a, [wcd67]
- ld hl, Jumptable_100e8c
- rst JumpTable
- ret
-; 100e8c
-
-
-Jumptable_100e8c: ; 100e8c (40:4e8c)
- dw Function100ea2
- dw Function100eae
- dw Function100eb4
- dw Function100eae
- dw Function100eb4
- dw Function100eae
- dw Function100eb4
- dw Function100eae
- dw Function100eb4
- dw Function100eae
- dw Function100ec4
-
-
-Function100ea2: ; 100ea2 (40:4ea2)
- call Function100dc0
- ret nc
- ld hl, wcd29
- set 0, [hl]
- call Function100ec5
-
-
-Function100eae: ; 100eae
- scf
- call Function100eca
- jr asm_100eb8
-
-Function100eb4: ; 100eb4
- and a
- call Function100eca
-
-asm_100eb8
- ld hl, wcd68
- inc [hl]
- ld a, [hl]
- cp $2
- ret c
- ld [hl], $0
- jr Function100ec5
-
-Function100ec4: ; 100ec4
- ret
-
-Function100ec5
- ld hl, wcd67
- inc [hl]
- ret
-; 100eca
-
-Function100eca: ; 100eca
- callba Function8e8b
- call Function100ed4
- ret
-; 100ed4
-
-Function100ed4: ; 100ed4
- callba Function96a4
- ld a, $1
- ld [hCGBPalUpdate], a
- ret
-; 100edf
-
-Function100edf: ; 100edf
- ld hl, Unknown_100fc0
- ld c, 1
- jr asm_100f02
-
-Function100ee6: ; 100ee6
- ld hl, Unknown_100fc0
- ld c, 2
- jr asm_100f02
-
-Function100eed: ; 100eed
- ld hl, Unknown_100feb
- ld c, 1
- jr asm_100f02
-
-Function100ef4: ; 100ef4
- ld hl, Unknown_100ff3
- ld c, 1
- jr asm_100f02
-
-Function100efb: ; 100efb
- ld hl, Unknown_10102c
- ld c, 1
- jr asm_100f02
-
-asm_100f02:
- ld a, c
- ld [StringBuffer2], a
- ld a, e
- ld [StringBuffer2 + 1], a
- ld a, d
- ld [StringBuffer2 + 2], a
- xor a
- ld [StringBuffer2 + 4], a
- ld [StringBuffer2 + 5], a
-.asm_100f15
- ld a, [hl]
- cp $ff
- jr z, .asm_100f34
- ld [StringBuffer2 + 3], a
- push hl
- inc hl
- ld a, [hli]
- ld e, a
- ld a, [hli]
- ld d, a
- ld a, [hli]
- ld c, a
- ld a, [hli]
- ld b, a
- ld a, [hli]
- ld h, [hl]
- ld l, a
- call Function100f3d
- pop hl
- ld de, $0007
- add hl, de
- jr .asm_100f15
-
-.asm_100f34
- ld a, [StringBuffer2 + 4]
- ld c, a
- ld a, [StringBuffer2 + 5]
- ld b, a
- ret
-; 100f3d
-
-Function100f3d: ; 100f3d
- ld a, [StringBuffer2]
- cp $2
- jr z, .asm_100f61
- cp $1
- jr z, .asm_100f77
- cp $3
- jr z, .asm_100f4d
- ret
-
-.asm_100f4d
- ld a, [StringBuffer2 + 1]
- ld l, a
- ld a, [StringBuffer2 + 2]
- ld h, a
- call Function100f8d
- ld a, l
- ld [StringBuffer2 + 1], a
- ld a, h
- ld [StringBuffer2 + 2], a
- ret
-
-.asm_100f61
- ld d, h
- ld e, l
- ld a, [StringBuffer2 + 1]
- ld l, a
- ld a, [StringBuffer2 + 2]
- ld h, a
- call Function100f8d
- ld a, l
- ld [StringBuffer2 + 1], a
- ld a, h
- ld [StringBuffer2 + 2], a
- ret
-
-.asm_100f77
- ld h, d
- ld l, e
- ld a, [StringBuffer2 + 1]
- ld e, a
- ld a, [StringBuffer2 + 2]
- ld d, a
- call Function100f8d
- ld a, e
- ld [StringBuffer2 + 1], a
- ld a, d
- ld [StringBuffer2 + 2], a
- ret
-; 100f8d
-
-Function100f8d: ; 100f8d
- push hl
- ld a, [StringBuffer2 + 4]
- ld l, a
- ld a, [StringBuffer2 + 5]
- ld h, a
- add hl, bc
- ld a, l
- ld [StringBuffer2 + 4], a
- ld a, h
- ld [StringBuffer2 + 5], a
- pop hl
- ld a, [StringBuffer2 + 3]
- bit 7, a
- res 7, a
- jr z, .asm_100fb6
- and a
- jr nz, .asm_100fb0
- call CopyBytes
- ret
-
-.asm_100fb0
- and $7f
- call FarCopyWRAM
- ret
-
-.asm_100fb6
- call GetSRAMBank
- call CopyBytes
- call CloseSRAM
- ret
-; 100fc0
-
-Unknown_100fc0: ; 100fc0
- dbwww $80, PlayerName, NAME_LENGTH, wd26b
- dbwww $80, PartyCount, 1 + PARTY_LENGTH + 1, OTPartyCount
- dbwww $80, PlayerID, 2, wd276
- dbwww $80, PartyMons, $30 * PARTY_LENGTH, OTPartyMons
- dbwww $80, PartyMonOT, NAME_LENGTH * PARTY_LENGTH, OTPartyMonOT
- dbwww $80, PartyMonNicknames, PKMN_NAME_LENGTH * PARTY_LENGTH, OTPartyMonNicknames
- db -1
-
-Unknown_100feb: ; 100feb
- dbwww $00, $a600, $2f * PARTY_LENGTH, NULL
- db -1
-
-Unknown_100ff3: ; 100ff3
- dbwww $80, wdc41, 1, NULL
- dbwww $80, PlayerName, NAME_LENGTH, NULL
- dbwww $80, PlayerName, NAME_LENGTH, NULL
- dbwww $80, PlayerID, 2, NULL
- dbwww $80, wd84a, 2, NULL
- dbwww $80, PlayerGender, 1, NULL
- dbwww $04, $a603, 8, NULL
- dbwww $04, $a007, $30, NULL
- db -1
-
-Unknown_10102c: ; 10102c
- dbwww $80, wd26b, 11, NULL
- dbwww $80, wd276, 2, NULL
- dbwww $80, OTPartyMonNicknames, PKMN_NAME_LENGTH * PARTY_LENGTH, NULL
- dbwww $80, OTPartyMonOT, NAME_LENGTH * PARTY_LENGTH, NULL
- dbwww $80, OTPartyMons, $30 * PARTY_LENGTH, NULL
- db -1
-; 10104f
-
-Function101050: ; 101050
- call Function10107d
- ld a, [OTPartyCount]
- ld hl, $c608
- ld hl, $c608
- ld bc, $01b3
- call Function1010de
- ld hl, wc7bb
- ld [hl], e
- inc hl
- ld [hl], d
- ld a, $7
- call GetSRAMBank
- ld hl, $c608
- ld de, $a001
- ld bc, $01b5
- call CopyBytes
- call CloseSRAM
- ret
-; 10107d
-
-Function10107d: ; 10107d
- xor a
- ld hl, $c608
- ld bc, $01b5
- call ByteFill
- ld hl, wd26b
- ld de, $c608
- ld bc, $000b
- call CopyBytes
- ld hl, wd271
- ld a, [hli]
- ld [$c608 + 11], a
- ld a, [hl]
- ld [$c608 + 12], a
- ld hl, OTPartyMonNicknames
- ld de, $c608 + 13
- ld bc, $000b
- call Function1010cd
- ld hl, OTPartyMonOT
- ld de, $c656 + 1
- ld bc, $000b
- call Function1010cd
- ld hl, OTPartyMon1Species
- ld de, $c68a + 15
- ld bc, $0030
- call Function1010cd
- ld a, $50
- ld [wc7b9], a
- ld a, $33
- ld [wc7ba], a
- ret
-; 1010cd
-
-Function1010cd: ; 1010cd
- push hl
- ld hl, 0
- ld a, [OTPartyCount]
- call AddNTimes
- ld b, h
- ld c, l
- pop hl
- call CopyBytes
- ret
-; 1010de
-
-Function1010de: ; 1010de
- push hl
- push bc
- ld de, 0
-.asm_1010e3
- ld a, [hli]
- add e
- ld e, a
- ld a, d
- adc 0
- ld d, a
- dec bc
- ld a, b
- or c
- jr nz, .asm_1010e3
- pop bc
- pop hl
- ret
-; 1010f2
-
-Function1010f2: ; 1010f2
- xor a
- ld hl, StringBuffer2
- ld bc, $0009
- call ByteFill
- ld hl, wdc5c
- ld de, PartyCount
- call Function101145
- ld hl, wdc5c
- ld de, PartyMon1Species
- call Function10117c
- ld hl, wdc5c
- ld de, PartyMonOT
- call Function101181
- ld hl, wdc5c
- ld de, PartyMonNicknames
- call Function101181
- ld hl, wcd75
- ld de, OTPartyCount
- call Function101145
- ld hl, wcd75
- ld de, OTPartyMon1Species
- call Function10117c
- ld hl, wcd75
- ld de, OTPartyMonOT
- call Function101181
- ld hl, wcd75
- ld de, OTPartyMonNicknames
- call Function101181
- ret
-; 101145
-
-Function101145: ; 101145
- push de
- ld bc, StringBuffer2 + 6
- xor a
-.asm_10114a
- push af
- call Function101168
- ld [bc], a
- inc bc
- pop af
- inc a
- cp $3
- jr nz, .asm_10114a
- pop de
- ld a, $3
- ld [de], a
- inc de
- ld hl, StringBuffer2 + 6
- ld bc, $0003
- call CopyBytes
- ld a, $ff
- ld [de], a
- ret
-; 101168
-
-Function101168: ; 101168
- push hl
- add l
- ld l, a
- ld a, h
- adc $0
- ld h, a
- ld a, [hl]
- pop hl
- push de
- inc de
- add e
- ld e, a
- ld a, d
- adc $0
- ld d, a
- ld a, [de]
- pop de
- ret
-; 10117c
-
-Function10117c: ; 10117c
- ld bc, $0030
- jr asm_101184
-
-Function101181: ; 101181
- ld bc, $000b
-
-asm_101184:
- ld a, $c608 % $100
- ld [StringBuffer2], a
- ld a, $c608 / $100
- ld [StringBuffer2 + 1], a
- ld a, c
- ld [StringBuffer2 + 2], a
- ld a, b
- ld [StringBuffer2 + 3], a
- ld a, e
- ld [StringBuffer2 + 4], a
- ld a, d
- ld [StringBuffer2 + 5], a
- ld a, $3
-.asm_1011a0
- push af
- ld a, [hli]
- push hl
- push af
- call Function1011df
- call Function1011e8
- pop af
- call AddNTimes
- ld a, [StringBuffer2]
- ld e, a
- ld a, [StringBuffer2 + 1]
- ld d, a
- call CopyBytes
- ld a, e
- ld [StringBuffer2], a
- ld a, d
- ld [StringBuffer2 + 1], a
- pop hl
- pop af
- dec a
- jr nz, .asm_1011a0
- call Function1011e8
- ld a, 3
- ld hl, 0
- call AddNTimes
- ld b, h
- ld c, l
- call Function1011df
- ld d, h
- ld e, l
- ld hl, $c608
- call CopyBytes
- ret
-; 1011df
-
-Function1011df: ; 1011df
- ld a, [StringBuffer2 + 4]
- ld l, a
- ld a, [StringBuffer2 + 5]
- ld h, a
- ret
-; 1011e8
-
-Function1011e8: ; 1011e8
- ld a, [StringBuffer2 + 2]
- ld c, a
- ld a, [StringBuffer2 + 3]
- ld b, a
- ret
-; 1011f1
-
-Function1011f1: ; 1011f1
- ld a, $4
- call GetSRAMBank
- ld a, [$a60c]
- ld [wdc41], a
- call CloseSRAM
- ld hl, wdc41
- res 4, [hl]
- ld hl, GameTimerPause
- bit 7, [hl]
- jr z, .asm_101210
- ld hl, wdc41
- set 4, [hl]
-
-.asm_101210
- call Function10209c
- xor a
- ld [wdc5f], a
- ld [wdc60], a
- ld a, $4
- ld [InLinkBattle], a
- ret
-; 101220
-
-Function101220: ; 101220
- xor a
- ld [InLinkBattle], a
- ret
-; 101225
-
-Function101225: ; 101225
- ld d, 1
- ld e, BANK(Jumptable_101297)
- ld bc, Jumptable_101297
- call Function100000
- jr Function10123d
-
-Function101231: ; 101231
- ld d, 2
- ld e, BANK(Jumptable_101297)
- ld bc, Jumptable_101297
- call Function100000
- jr Function10123d
-
-Function10123d: ; 10123d
- xor a
- ld [ScriptVar], a
- ld a, c
- ld hl, Jumptable_101247
- rst JumpTable
- ret
-; 101247
-
-Jumptable_101247: ; 101247
- dw Function101251
- dw Function10127d
- dw Function10127c
- dw Function10126c
- dw Function101265
-; 101251
-
-Function101251: ; 101251
- call Function1ad2
- call ResetWindow
- ld hl, UnknownText_0x1021f4
- call Function1021e0
- call Function1020ea
- ret c
- call Function102142
- ret
-; 101265
-
-Function101265: ; 101265
- ld hl, UnknownText_0x1021ef
- call Function1021e0
- ret
-; 10126c
-
-Function10126c: ; 10126c
- call Function1ad2
- callba Script_reloadmappart
- ld hl, UnknownText_0x1021f4
- call Function1021e0
- ret
-; 10127c
-
-Function10127c: ; 10127c
- ret
-; 10127d
-
-Function10127d: ; 10127d
- ret
-; 10127e
-
-Function10127e: ; 10127e
- ld a, [wdc5f]
- and a
- jr z, .asm_101290
- cp $1
- ld c, $27
- jr z, .asm_101292
- cp $2
- ld c, $37
- jr z, .asm_101292
-
-.asm_101290
- ld c, $0
-
-.asm_101292
- ld a, c
- ld [wcd25], a
- ret
-; 101297
-
-Jumptable_101297: ; 101297
- dw Function101a97
- dw Function101ab4
- dw Function101475
- dw Function101b0f
- dw Function101438
- dw Function101b2b
- dw Function101b59
- dw Function101475
- dw Function101b70
- dw Function101438
- dw Function101b8f
- dw Function101d7b
- dw Function101d95
- dw Function101475
- dw Function101db2
- dw Function101e4f
- dw Function101475
- dw Function101e64
- dw Function101e4f
- dw Function101475
- dw Function101e64
- dw Function101d95
- dw Function101475
- dw Function101db2
- dw Function101dd0
- dw Function101de3
- dw Function101e39
- dw Function101e09
- dw Function101e4f
- dw Function101475
- dw Function101e64
- dw Function101d95
- dw Function101475
- dw Function101db2
- dw Function101e09
- dw Function101e31
- dw Function101bc8
- dw Function101438
- dw Function101be5
- dw Function101ac6
- dw Function101ab4
- dw Function101475
- dw Function101c11
- dw Function1014f4
- dw Function101cc8
- dw Function1014e2
- dw Function1014e2
- dw Function101d10
- dw Function101d2a
- dw Function101d2a
- dw Function101507
- dw Function10156d
- dw Function101557
- dw Function10158a
- dw Function101c42
- dw Function101aed
- dw Function101ab4
- dw Function101475
- dw Function101c2b
- dw Function1014f4
- dw Function101cdf
- dw Function1014e2
- dw Function1014e2
- dw Function101d1e
- dw Function101d2a
- dw Function101d2a
- dw Function101507
- dw Function10156d
- dw Function101544
- dw Function10158a
- dw Function101c42
- dw Function101c50
- dw Function1014ce
- dw Function101cf6
- dw Function101826
- dw Function1017e4
- dw Function1017f1
- dw Function1018a8
- dw Function1018d6
- dw Function1017e4
- dw Function1017f1
- dw Function1018e1
- dw Function1015df
- dw Function10167d
- dw Function10168a
- dw Function10162a
- dw Function1015be
- dw Function10167d
- dw Function10168a
- dw Function10161f
- dw Function10159d
- dw Function10167d
- dw Function10168a
- dw Function101600
- dw Function101d03
- dw Function101d6b
- dw Function10159d
- dw Function1014ce
- dw Function10168e
- dw Function101600
- dw Function101913
- dw Function10194b
- dw Function10196d
- dw Function1017e4
- dw Function1017f5
- dw Function1019ab
- dw Function101537
- dw Function101571
- dw Function101c92
- dw Function10152a
- dw Function101571
- dw Function101a4f
- dw Function101cbc
- dw Function101c62
- dw Function101537
- dw Function101571
- dw Function101c92
- dw Function10152a
- dw Function101571
- dw Function101ca0
- dw Function101475
- dw Function101cbc
-; 10138b
-
-Function10138b: ; 10138b
- callba Function8adcc
- ld c, $0
- jr c, .asm_101396
- inc c
-
-.asm_101396
- sla c
- ld a, [wcd2f]
- and a
- jr z, .asm_10139f
- inc c
-
-.asm_10139f
- sla c
- ld a, [wcd21]
- cp $1
- jr z, .asm_1013a9
- inc c
-
-.asm_1013a9
- ret
-; 1013aa
-
-Function1013aa: ; 1013aa
- call WhiteBGMap
- call Function1d7d
- call Function2bae
- callba Function106464
- call Function1ad2
- call Function2b5c
- ret
-; 1013c0
-
-Function1013c0: ; 1013c0
- callba Function8000
- callba Function106462
- callba Function106464
- call Function2b5c
- ret
-; 1013d6
-
-Function1013d6: ; 1013d6
- callba Function104000
- ret
-; 1013dd
-
-Function1013dd: ; 1013dd
- call Function3238
- ret
-; 1013e1
-
-Function1013e1: ; 1013e1 ; unreferenced
- push de
- inc de
- ld b, a
- ld c, $0
-.asm_1013e6
- inc c
- ld a, [hli]
- ld [de], a
- inc de
- and a
- jr z, .asm_1013f1
- dec b
- jr nz, .asm_1013e6
- scf
-
-.asm_1013f1
- pop de
- ld a, c
- ld [de], a
- ret
-; 1013f5
-
-Function1013f5: ; 1013f5
- ld a, [hli]
- ld [de], a
- inc de
- ld c, a
-.asm_1013f9
- ld a, [hli]
- ld [de], a
- inc de
- dec c
- jr nz, .asm_1013f9
- ret
-; 101400
-
-Function101400: ; 101400 ; unreferenced
- ld a, [de]
- inc de
- cp [hl]
- jr nz, asm_101416
- inc hl
-
-Function101406: ; 101406
- ld c, a
- ld b, $0
-.asm_101409
- ld a, [de]
- inc de
- cp [hl]
- jr nz, asm_101416
- inc hl
- dec bc
- ld a, b
- or c
- jr nz, .asm_101409
- and a
- ret
-
-asm_101416
- scf
- ret
-; 101418
-
-Function101418: ; 101418
- call GetJoypad
- ld a, [hJoyDown]
- and SELECT + A_BUTTON
- cp SELECT + A_BUTTON
- jr z, .asm_101425
- xor a
- ret
-
-.asm_101425
- ld a, $f7
- ld [wcd2b], a
- scf
- ret
-; 10142c
-
-Function10142c: ; 10142c
- ld a, $1
- ld [wc305], a
- callba Function115e18
- ret
-; 101438
-
-Function101438: ; 101438
- ld hl, wcd29
- set 6, [hl]
- ld a, [wcd26]
- ld hl, Jumptable_101457
- rst JumpTable
- ld a, [wcd26]
- bit 7, a
- ret z
- ld a, $0
- ld [wcd26], a
- ld a, [wcd25]
- inc a
- ld [wcd25], a
- ret
-; 101457
-
-Jumptable_101457: ; 101457
- dw Function10145b
- dw Function101467
-; 10145b
-
-Function10145b: ; 10145b
- ld a, $3c
- ld [wcd42], a
- ld a, [wcd26]
- inc a
- ld [wcd26], a
-
-Function101467: ; 101467
- ld hl, wcd42
- dec [hl]
- ret nz
- ld a, [wcd26]
- set 7, a
- ld [wcd26], a
- ret
-; 101475
-
-Function101475: ; 101475
- ld hl, wcd29
- set 6, [hl]
- ld a, [wcd26]
- ld hl, Jumptable_101494
- rst JumpTable
- ld a, [wcd26]
- bit 7, a
- ret z
- ld a, $0
- ld [wcd26], a
- ld a, [wcd25]
- inc a
- ld [wcd25], a
- ret
-; 101494
-
-Jumptable_101494: ; 101494
- dw Function10149a
- dw Function1014a6
- dw Function1014b7
-; 10149a
-
-Function10149a: ; 10149a
- ld a, $28
- ld [wcd42], a
- ld a, [wcd26]
- inc a
- ld [wcd26], a
-
-Function1014a6: ; 1014a6
- ld hl, wcd42
- dec [hl]
- ret nz
- ld a, $50
- ld [wcd42], a
- ld a, [wcd26]
- inc a
- ld [wcd26], a
-
-Function1014b7: ; 1014b7
- call GetJoypad
- ld a, [hJoyPressed]
- and $3
- jr nz, .asm_1014c5
- ld hl, wcd42
- dec [hl]
- ret nz
-
-.asm_1014c5
- ld a, [wcd26]
- set 7, a
- ld [wcd26], a
- ret
-; 1014ce
-
-Function1014ce: ; 1014ce
- callba Function100720
- callba Function100641
- ld a, [wcd25]
- inc a
- ld [wcd25], a
- ret
-; 1014e2
-
-Function1014e2: ; 1014e2
- ld hl, wcd29
- set 6, [hl]
- ld a, $0
- ld [wcd26], a
- ld a, [wcd25]
- inc a
- ld [wcd25], a
- ret
-; 1014f4
-
-Function1014f4: ; 1014f4
- callba Function100082
- ld hl, wcd29
- set 6, [hl]
- ld a, [wcd25]
- inc a
- ld [wcd25], a
- ret
-; 101507
-
-Function101507: ; 101507
- ld de, wcd30
- ld hl, $0040
- ld bc, $0040
- ld a, $2
- call Function3e32
- ld a, [wcd25]
- inc a
- ld [wcd25], a
- ret
-; 10151d
-
-Function10151d: ; 10151d ; unreferenced
- ld a, $34
- call Function3e32
- ld a, [wcd25]
- inc a
- ld [wcd25], a
- ret
-; 10152a
-
-Function10152a: ; 10152a
- ld a, $36
- call Function3e32
- ld a, [wcd25]
- inc a
- ld [wcd25], a
- ret
-; 101537
-
-Function101537: ; 101537
- ld a, $a
- call Function3e32
- ld a, [wcd25]
- inc a
- ld [wcd25], a
- ret
-; 101544
-
-Function101544: ; 101544
- callba Function100641
- ld a, $12
- call Function3e32
- ld a, [wcd25]
- inc a
- ld [wcd25], a
- ret
-; 101557
-
-Function101557: ; 101557
- callba Function100641
- ld hl, wcd53
- ld a, $8
- call Function3e32
- ld a, [wcd25]
- inc a
- ld [wcd25], a
- ret
-; 10156d
-
-Function10156d: ; 10156d
- call Function101418
- ret c
-
-Function101571: ; 101571
- callba Function10032e
- ret c
- ret z
- ld a, e
- cp $1
- jr z, .asm_101582
- ld [wcd2b], a
- ret
-
-.asm_101582
- ld a, [wcd25]
- inc a
- ld [wcd25], a
- ret
-; 10158a
-
-Function10158a: ; 10158a
- callba Function10064c
- ld a, [wcd44]
- cp $a
- jr c, Function10156d
- ld a, $fb
- ld [wcd2b], a
- ret
-; 10159d
-
-Function10159d: ; 10159d
- ld de, $c608
- callba Function100edf
- ld de, $c608
- ld a, $5
- ld hl, $d800
- call Function10174c
- ld a, $0
- ld [wcd26], a
- ld a, [wcd25]
- inc a
- ld [wcd25], a
- ret
-; 1015be
-
-Function1015be: ; 1015be
- ld de, $c608
- callba Function100eed
- ld de, $c608
- ld a, $5
- ld hl, $d800
- call Function10174c
- ld a, $0
- ld [wcd26], a
- ld a, [wcd25]
- inc a
- ld [wcd25], a
- ret
-; 1015df
-
-Function1015df: ; 1015df
- ld de, $c608
- callba Function100ef4
- ld de, $c608
- ld a, $5
- ld hl, $d800
- call Function10174c
- ld a, $0
- ld [wcd26], a
- ld a, [wcd25]
- inc a
- ld [wcd25], a
- ret
-; 101600
-
-Function101600: ; 101600
- ld hl, $d800
- ld de, $c608
- ld bc, $01e0
- ld a, $5
- call FarCopyWRAM
- ld de, $c608
- callba Function100ee6
- ld a, [wcd25]
- inc a
- ld [wcd25], a
- ret
-; 10161f
-
-Function10161f: ; 10161f
- call Function101649
- ld a, [wcd25]
- inc a
- ld [wcd25], a
- ret
-; 10162a
-
-Function10162a: ; 10162a
- call Function101663
- ld a, [wcd25]
- inc a
- ld [wcd25], a
- ret
-; 101635
-
-Function101635: ; 101635
- ld de, $c608
- ld bc, $01e0
- call FarCopyWRAM
- ret
-; 10163f
-
-Function10163f: ; 10163f
- ld hl, $c608
- ld bc, $01e0
- call FarCopyWRAM
- ret
-; 101649
-
-Function101649: ; 101649
- ld a, $5
- ld hl, $d800
- call Function101635
- ld a, $5
- ld de, wda00
- call Function10163f
- ret
-; 10165a
-
-Function10165a: ; 10165a
- ld a, $5
- ld hl, wda00
- call Function101635
- ret
-; 101663
-
-Function101663: ; 101663
- ld a, $5
- ld hl, $d800
- call Function101635
- ld a, $5
- ld de, wdc00
- call Function10163f
- ret
-; 101674
-
-Function101674: ; 101674 ; unreferenced
- ld a, $5
- ld hl, wdc00
- call Function101635
- ret
-; 10167d
-
-Function10167d: ; 10167d
- ld a, $0
- ld [wcd26], a
- ld a, [wcd25]
- inc a
- ld [wcd25], a
- ret
-; 10168a
-
-Function10168a: ; 10168a
- call Function101418
- ret c
-
-Function10168e: ; 10168e
- ld b, $0
- ld c, $1
- callba Function10079c
- ret c
- ld c, $1
- ld b, $3
- callba Function10062d
- ret c
- ld a, [wcd26]
- ld hl, Jumptable_1016c3
- rst JumpTable
- ld hl, wcd29
- set 6, [hl]
- ld a, [wcd26]
- bit 7, a
- ret z
- ld a, $0
- ld [wcd26], a
- ld a, [wcd25]
- inc a
- ld [wcd25], a
- ret
-; 1016c3
-
-Jumptable_1016c3: ; 1016c3
- dw Function1016cf
- dw Function1016de
- dw Function1016f8
- dw Function101705
- dw Function101719
- dw Function101724
-; 1016cf
-
-Function1016cf: ; 1016cf
- ld hl, wcd3a
- inc [hl]
- call Function10176f
- ld a, [wcd26]
- inc a
- ld [wcd26], a
- ret
-; 1016de
-
-Function1016de: ; 1016de
- call Function10177b
- jr nc, .asm_1016eb
- ld a, [wcd26]
- inc a
- ld [wcd26], a
- ret
-
-.asm_1016eb
- ld a, $ff
- ld [wcd39], a
- ld a, [wcd26]
- inc a
- ld [wcd26], a
- ret
-; 1016f8
-
-Function1016f8: ; 1016f8
- ld a, $0
- ld [wcd27], a
- ld a, [wcd26]
- inc a
- ld [wcd26], a
- ret
-; 101705
-
-Function101705: ; 101705
- callba Function100382
- ld a, [wcd27]
- bit 7, a
- ret z
- ld a, [wcd26]
- inc a
- ld [wcd26], a
- ret
-; 101719
-
-Function101719: ; 101719
- call Function1017c7
- ld a, [wcd26]
- inc a
- ld [wcd26], a
- ret
-; 101724
-
-Function101724: ; 101724
- ld a, [wcd39]
- cp $ff
- jr z, .asm_101731
- ld a, $0
- ld [wcd26], a
- ret
-
-.asm_101731
- ld a, [wcd26]
- set 7, a
- ld [wcd26], a
- ret
-; 10173a
-
-Unknown_10173a:
- db $50
-
-Function10173b: ; 10173b
- push bc
- push af
- ld a, [hli]
- ld h, [hl]
- ld l, a
- ld a, [Unknown_10173a]
- ld c, a
- ld b, $0
- pop af
- call AddNTimes
- pop bc
- ret
-; 10174c
-
-Function10174c: ; 10174c
- ld [wcd3d], a
- ld a, l
- ld [wcd3e], a
- ld a, h
- ld [wcd3f], a
- ld a, e
- ld [wcd3b], a
- ld a, d
- ld [wcd3c], a
- ld a, c
- ld [wcd40], a
- ld a, b
- ld [wcd41], a
- xor a
- ld [wcd39], a
- ld [wcd3a], a
- ret
-; 10176f
-
-Function10176f: ; 10176f
- ld hl, wccb4
- ld bc, $0054
- ld a, $11
- call ByteFill
- ret
-; 10177b
-
-Function10177b: ; 10177b
- ld a, [Unknown_10173a]
- ld c, a
- ld b, $0
- ld a, [wcd3a]
- ld hl, $0000
- call AddNTimes
- ld e, l
- ld d, h
- ld hl, wcd40
- ld a, [hli]
- ld h, [hl]
- ld l, a
- ld a, l
- sub e
- ld l, a
- ld a, h
- sbc d
- ld h, a
- jr c, .asm_1017a0
- add hl, bc
- call Function1017b0
- scf
- ret
-
-.asm_1017a0
- ld a, $ff
- ld [wcd39], a
- add hl, bc
- ld a, h
- or l
- ret z
- ld c, l
- ld b, h
- call Function1017b0
- xor a
- ret
-; 1017b0
-
-Function1017b0: ; 1017b0
- ld a, c
- ld [wccb4], a
- push bc
- ld a, [wcd3a]
- dec a
- ld hl, wcd3b
- call Function10173b
- pop bc
- ld de, wccb5
- call CopyBytes
- ret
-; 1017c7
-
-Function1017c7: ; 1017c7
- ld a, [wcc60]
- ld c, a
- ld b, $0
- ld a, [wcd3a]
- dec a
- ld hl, wcd3e
- call Function10173b
- ld e, l
- ld d, h
- ld hl, wcc61
- ld a, [wcd3d]
- call FarCopyWRAM
- and a
- ret
-; 1017e4
-
-Function1017e4: ; 1017e4
- ld a, $0
- ld [wcd27], a
- ld a, [wcd25]
- inc a
- ld [wcd25], a
- ret
-; 1017f1
-
-Function1017f1: ; 1017f1
- call Function101418
- ret c
-
-Function1017f5: ; 1017f5
- ld b, $0
- ld c, $1
- callba Function10079c
- ret c
- ld c, $1
- ld b, $3
- callba Function10062d
- ret c
- callba Function100382
- ld a, [wcd27]
- bit 7, a
- jr nz, .asm_10181e
- ld hl, wcd29
- set 6, [hl]
- ret
-
-.asm_10181e
- ld a, [wcd25]
- inc a
- ld [wcd25], a
- ret
-; 101826
-
-Function101826: ; 101826
- ld a, [wcd21]
- cp $2
- jr z, .asm_101833
- cp $1
- jr z, .asm_101844
- jr .asm_101869
-
-.asm_101833
- ld hl, Unknown_10186f
- ld de, wccb4
- call Function1013f5
- ld a, [wcd25]
- inc a
- ld [wcd25], a
- ret
-
-.asm_101844
- callba Function103654
- ld a, c
- ld hl, Unknown_101882
- cp $1
- jr z, .asm_10185b
- ld hl, Unknown_101895
- cp $2
- jr z, .asm_10185b
- jr .asm_101869
-
-.asm_10185b
- ld de, wccb4
- call Function1013f5
- ld a, [wcd25]
- inc a
- ld [wcd25], a
- ret
-
-.asm_101869
- ld a, $fe
- ld [wcd2b], a
- ret
-; 10186f
-
-
-SECTION "ascii 10186f", ROMX, BANK[$40]
-
- charmap " ", $20 ; revert to ascii
-
-Unknown_10186f:
- db .end - @
- db $19, $73, $09, $13, "trade_crystal"
-.end db 0
-
-Unknown_101882:
- db .end - @
- db $19, $67, $10, $01, "free__crystal"
-.end db 0
-
-Unknown_101895:
- db .end - @
- db $19, $67, $10, $01, "limit_crystal"
-.end db 0
-; 1018a8
-
-
-SECTION "bank40_3", ROMX, BANK[$40]
-
-Function1018a8: ; 1018a8
- ld hl, wccb5
- ld de, wcc61
- ld a, $4
- call Function101406
- jr c, .asm_1018d0
- ld hl, wccb9
- ld de, wcc65
- ld a, $6
- call Function101406
- jr c, .asm_1018ca
- ld a, [wcd25]
- inc a
- ld [wcd25], a
- ret
-
-.asm_1018ca
- ld a, $f6
- ld [wcd2b], a
- ret
-
-.asm_1018d0
- ld a, $f5
- ld [wcd2b], a
- ret
-; 1018d6
-
-Function1018d6: ; 1018d6
- call Function1018ec
- ld a, [wcd25]
- inc a
- ld [wcd25], a
- ret
-; 1018e1
-
-Function1018e1: ; 1018e1
- call Function1018fb
- ld a, [wcd25]
- inc a
- ld [wcd25], a
- ret
-; 1018ec
-
-Function1018ec: ; 1018ec
- ld a, $a
- ld hl, wccb4
- ld [hli], a
- ld c, a
-.asm_1018f3
- call Random
- ld [hli], a
- dec c
- jr nz, .asm_1018f3
- ret
-; 1018fb
-
-Function1018fb: ; 1018fb
- ld a, [wcd2f]
- and a
- jr z, .asm_101906
- ld hl, wcc61
- jr .asm_101909
-
-.asm_101906
- ld hl, wccb5
-
-.asm_101909
- ld de, LinkBattleRNs
- ld bc, $000a
- call CopyBytes
- ret
-; 101913
-
-Function101913: ; 101913
- ld hl, wcd2a
- set 0, [hl]
- xor a
- ld [wc30d], a
- ld hl, wcd29
- res 4, [hl]
- xor a
- ld [wc305], a
- ld hl, wcd29
- res 7, [hl]
- ld a, $90
- ld [hWY], a
- ld a, [wcd21]
- cp $1
- jr z, .asm_10193f
- cp $2
- jr z, .asm_101945
- ld a, $71
- ld [wcd25], a
- ret
-
-.asm_10193f
- ld a, $66
- ld [wcd25], a
- ret
-
-.asm_101945
- ld a, $65
- ld [wcd25], a
- ret
-; 10194b
-
-Function10194b: ; 10194b
- call Function2ed3
- call ClearSprites
- callba Function1021f9
- ld hl, wcd29
- bit 3, [hl]
- jr nz, .asm_101967
- call Function1013c0
- ld a, $71
- ld [wcd25], a
- ret
-
-.asm_101967
- ld a, $60
- ld [wcd25], a
- ret
-; 10196d
-
-Function10196d: ; 10196d
- callba Function8000
- callba Function10060d
- ld hl, wcd29
- set 5, [hl]
- ld hl, wcd2a
- set 6, [hl]
- ld a, $6
- ld [wccb4], a
- ld hl, wdc5c
- ld de, wccb5
- ld bc, $0003
- call CopyBytes
- ld hl, wcd6c
- ld a, [hli]
- ld [wccb8], a
- ld a, [hli]
- ld [wccb9], a
- ld a, [hl]
- ld [wccba], a
- ld a, [wcd25]
- inc a
- ld [wcd25], a
- ret
-; 1019ab
-
-Function1019ab: ; 1019ab
- call Function101a75
- callba Function100754
- xor a
- ld [wdc5f], a
- ld [wdc60], a
- callba Function8000
- call SpeechTextBox
- callba Function100846
- ld c, $78
- call DelayFrames
- callba ClearTileMap
- call Function1019ee
- call Function101a21
- ld a, [wcd2b]
- cp $fc
- jr nz, .asm_1019e6
- xor a
- ld [wcd2b], a
-
-.asm_1019e6
- ld a, [wcd25]
- inc a
- ld [wcd25], a
- ret
-; 1019ee
-
-Function1019ee: ; 1019ee
- ld a, [rSVBK]
- push af
- ld a, $5
- ld [rSVBK], a
- ld bc, wdc0d
- ld de, wdc11
- callba Function4e929
- pop af
- ld [rSVBK], a
- ld a, c
- ld [OtherTrainerClass], a
- ld hl, wd26b
- ld de, $c656
- ld bc, $000b
- call CopyBytes
- ld a, [wcd2f]
- and a
- ld a, $2
- jr z, .asm_101a1e
- ld a, $1
-
-.asm_101a1e
- ld [$ffcb], a
- ret
-; 101a21
-
-Function101a21: ; 101a21
- ld hl, Options
- ld a, [hl]
- push af
- and $20
- or $1
- ld [hl], a
- ld a, $1
- ld [wc2d7], a
- callba Function3f4dd
- callba Function3c000
- callba Function3f759
- xor a
- ld [wc2d7], a
- ld a, $ff
- ld [$ffcb], a
- pop af
- ld [Options], a
- ret
-; 101a4f
-
-Function101a4f: ; 101a4f
- ld a, $1
- ld [wc2d7], a
- callba Function3f77c
- xor a
- ld [wc2d7], a
- callba Function3f6d0
- callba Function1500c
- call Function1013c0
- ld a, [wcd25]
- inc a
- ld [wcd25], a
- ret
-; 101a75
-
-Function101a75: ; 101a75
- ld hl, wcc61
- ld de, wcd75
- ld bc, $0003
- call CopyBytes
- ld de, wcc64
- callba Function100772
- callba Function101050
- callba Function1010f2
- ret
-; 101a97
-
-Function101a97: ; 101a97
- callba Function115d99
- ld hl, wcd29
- set 7, [hl]
- ld c, $2
- call Function10142c
- ld hl, wcd29
- set 6, [hl]
- ld a, [wcd25]
- inc a
- ld [wcd25], a
- ret
-; 101ab4
-
-Function101ab4: ; 101ab4
- ld e, $1
- call Function101ee4
- ld hl, wcd29
- set 5, [hl]
- ld a, [wcd25]
- inc a
- ld [wcd25], a
- ret
-; 101ac6
-
-Function101ac6: ; 101ac6
- callba Function115d99
- ld hl, wcd29
- set 7, [hl]
- ld c, $2
- call Function10142c
- ld hl, wcd29
- set 6, [hl]
- xor a
- ld [wcd2f], a
- ld de, wdc42
- call Function102068
- ld a, [wcd25]
- inc a
- ld [wcd25], a
- ret
-; 101aed
-
-Function101aed: ; 101aed
- callba Function115d99
- ld hl, wcd29
- set 7, [hl]
- ld c, $2
- call Function10142c
- ld hl, wcd29
- set 6, [hl]
- ld a, $1
- ld [wcd2f], a
- ld a, [wcd25]
- inc a
- ld [wcd25], a
- ret
-; 101b0f
-
-Function101b0f: ; 101b0f
- ld c, $0
- call Function10142c
- ld e, $3
- call Function101ee4
- ld hl, wcd29
- set 5, [hl]
- ld a, [wcd25]
- inc a
- ld [wcd25], a
- ld a, $0
- ld [wcd26], a
- ret
-; 101b2b
-
-Function101b2b: ; 101b2b
- callba Function100579
- ld hl, wcd29
- set 2, [hl]
- ld a, [wcd26]
- bit 7, a
- ret z
- call Function1013dd
- ld a, $0
- ld [wcd26], a
- ld a, [wcfa9]
- cp $1
- jr z, .asm_101b51
- ld a, $2
- ld [wcd2b], a
- ret
-
-.asm_101b51
- ld a, [wcd25]
- inc a
- ld [wcd25], a
- ret
-; 101b59
-
-Function101b59: ; 101b59
- ld c, $2
- call Function10142c
- ld e, $2
- call Function101ee4
- ld hl, wcd29
- set 5, [hl]
- ld a, [wcd25]
- inc a
- ld [wcd25], a
- ret
-; 101b70
-
-Function101b70: ; 101b70
- ld c, $2
- call Function10142c
- ld e, $4
- call Function101ee4
- ld hl, wcd29
- set 5, [hl]
- call Function1ad2
- ld a, [wcd25]
- inc a
- ld [wcd25], a
- ld a, $0
- ld [wcd26], a
- ret
-; 101b8f
-
-Function101b8f: ; 101b8f
- callba Function1005c3
- ld hl, wcd29
- set 2, [hl]
- ld a, [wcd26]
- bit 7, a
- ret z
- call Function1013dd
- ld a, $0
- ld [wcd26], a
- ld a, [wcfa9]
- cp $1
- jr z, .asm_101bbc
- ld a, $1
- ld [wcd2f], a
- ld a, [wcd25]
- inc a
- ld [wcd25], a
- ret
-
-.asm_101bbc
- xor a
- ld [wcd2f], a
- ld a, [wcd25]
- inc a
- ld [wcd25], a
- ret
-; 101bc8
-
-Function101bc8: ; 101bc8
- ld c, $2
- call Function10142c
- ld e, $8
- call Function101ee4
- call Function102048
- call Function1013dd
- ld a, $0
- ld [wcd26], a
- ld a, [wcd25]
- inc a
- ld [wcd25], a
- ret
-; 101be5
-
-Function101be5: ; 101be5
- callba Function100579
- ld hl, wcd29
- set 2, [hl]
- ld a, [wcd26]
- bit 7, a
- ret z
- call Function1013dd
- ld a, $0
- ld [wcd26], a
- ld a, [wcfa9]
- cp $1
- jr nz, .asm_101c0b
- ld a, $2a
- ld [wcd25], a
- ret
-
-.asm_101c0b
- ld a, $2
- ld [wcd2b], a
- ret
-; 101c11
-
-Function101c11: ; 101c11
- ld a, $1
- ld [wdc5f], a
- ld e, $9
- call Function101ee4
- call Function102048
- ld hl, wcd29
- set 5, [hl]
- ld a, [wcd25]
- inc a
- ld [wcd25], a
- ret
-; 101c2b
-
-Function101c2b: ; 101c2b
- ld a, $2
- ld [wdc5f], a
- ld e, $7
- call Function101ee4
- ld hl, wcd29
- set 5, [hl]
- ld a, [wcd25]
- inc a
- ld [wcd25], a
- ret
-; 101c42
-
-Function101c42: ; 101c42
- ld hl, wcd2a
- set 1, [hl]
- call Function100665
- ld a, $47
- ld [wcd25], a
- ret
-; 101c50
-
-Function101c50: ; 101c50
- ld e, $a
- call Function101ee4
- ld hl, wcd29
- set 2, [hl]
- ld a, [wcd25]
- inc a
- ld [wcd25], a
- ret
-; 101c62
-
-Function101c62: ; 101c62
- callba Function115d99
- ld hl, wcd29
- set 7, [hl]
- ld c, $1
- call Function10142c
- xor a
- ld [wc30d], a
- ld hl, wcd29
- res 4, [hl]
- ld e, $b
- call Function101ee4
- ld hl, wcd29
- set 5, [hl]
- ld a, [wcd25]
- inc a
- ld [wcd25], a
- ld a, $0
- ld [wcd26], a
- ret
-; 101c92
-
-Function101c92: ; 101c92
- callba Function100675
- ld a, [wcd25]
- inc a
- ld [wcd25], a
- ret
-; 101ca0
-
-Function101ca0: ; 101ca0
- ld c, $2
- call Function10142c
- ld e, $c
- call Function101ee4
- ld hl, wcd29
- set 5, [hl]
- ld a, [wcd25]
- inc a
- ld [wcd25], a
- ld a, $0
- ld [wcd26], a
- ret
-; 101cbc
-
-Function101cbc: ; 101cbc
- ld a, $1
- ld [wcd2b], a
- ret
-; 101cc2
-
-Function101cc2: ; 101cc2 ; unreferenced
- ld a, $2
- ld [wcd2b], a
- ret
-; 101cc8
-
-Function101cc8: ; 101cc8
- ld a, $1
- ld [wc314], a
- ld a, $1
- ld [wc30d], a
- ld hl, wcd29
- set 4, [hl]
- ld a, [wcd25]
- inc a
- ld [wcd25], a
- ret
-; 101cdf
-
-Function101cdf: ; 101cdf
- ld a, $6
- ld [wc314], a
- ld a, $1
- ld [wc30d], a
- ld hl, wcd29
- set 4, [hl]
- ld a, [wcd25]
- inc a
- ld [wcd25], a
- ret
-; 101cf6
-
-Function101cf6: ; 101cf6
- ld a, $b
- ld [wc315], a
- ld a, [wcd25]
- inc a
- ld [wcd25], a
- ret
-; 101d03
-
-Function101d03: ; 101d03
- ld a, $e
- ld [wc315], a
- ld a, [wcd25]
- inc a
- ld [wcd25], a
- ret
-; 101d10
-
-Function101d10: ; 101d10
- ld c, $1
- call Function10142c
- ld a, [wcd25]
- inc a
- ld [wcd25], a
- jr Function101d2a
-
-Function101d1e: ; 101d1e
- ld c, $3
- call Function10142c
- ld a, [wcd25]
- inc a
- ld [wcd25], a
-
-Function101d2a: ; 101d2a
- call Function101418
- ret c
- ld hl, wcd29
- set 6, [hl]
- ld a, [wcd26]
- ld hl, Jumptable_101d4d
- rst JumpTable
- ld a, [wcd26]
- bit 7, a
- ret z
- ld a, $0
- ld [wcd26], a
- ld a, [wcd25]
- inc a
- ld [wcd25], a
- ret
-; 101d4d
-
-Jumptable_101d4d: ; 101d4d
- dw Function101d51
- dw Function101d5d
-; 101d51
-
-Function101d51: ; 101d51
- ld a, $3c
- ld [wcd42], a
- ld a, [wcd26]
- inc a
- ld [wcd26], a
-
-Function101d5d: ; 101d5d
- ld hl, wcd42
- dec [hl]
- ret nz
- ld a, [wcd26]
- set 7, a
- ld [wcd26], a
- ret
-; 101d6b
-
-Function101d6b: ; 101d6b
- ld a, [wc30d]
- and a
- ret nz
- ld hl, wcd29
- res 4, [hl]
- ld a, $64
- ld [wcd25], a
- ret
-; 101d7b
-
-Function101d7b: ; 101d7b
- callba Function10138b
- ld b, 0
- ld hl, Unknown_101d8d
- add hl, bc
- ld c, [hl]
- ld a, c
- ld [wcd25], a
- ret
-; 101d8d
-
-Unknown_101d8d: ; 101d8d
- db $15, $15, $1f, $1f, $0c, $12, $3a, $3a
-; 101d95
-
-Function101d95: ; 101d95
- call Function101ee2
- call Function1d6e
- ld e, $e
- call Function101ee4
- ld hl, wcd29
- set 5, [hl]
- ld a, [wcd25]
- inc a
- ld [wcd25], a
- ld a, $0
- ld [wcd26], a
- ret
-; 101db2
-
-Function101db2: ; 101db2
- callba Function103302
- call Function1c07
- ld hl, wcd29
- set 5, [hl]
- jr c, .asm_101dca
- ld a, [wcd25]
- inc a
- ld [wcd25], a
- ret
-
-.asm_101dca
- ld a, $2
- ld [wcd2b], a
- ret
-; 101dd0
-
-Function101dd0: ; 101dd0
- ld hl, wdc41
- bit 1, [hl]
- jr nz, .asm_101ddd
- ld a, $19
- ld [wcd25], a
- ret
-
-.asm_101ddd
- ld a, $1b
- ld [wcd25], a
- ret
-; 101de3
-
-Function101de3: ; 101de3
- call Function101ecc
- call Function101ead
- jr c, .asm_101df3
- ld a, [wcd25]
- inc a
- ld [wcd25], a
- ret
-
-.asm_101df3
- call Function101e98
- jr c, .asm_101e00
- ld a, [wcd25]
- inc a
- ld [wcd25], a
- ret
-
-.asm_101e00
- call Function101ed3
- ld a, $2
- ld [wcd2b], a
- ret
-; 101e09
-
-Function101e09: ; 101e09
- call Function101ead
- jr c, .asm_101e16
- ld a, [wcd25]
- inc a
- ld [wcd25], a
- ret
-
-.asm_101e16
- call Function101ecc
- call Function101e98
- push af
- call Function101ed3
- pop af
- jr c, .asm_101e2b
- ld a, [wcd25]
- inc a
- ld [wcd25], a
- ret
-
-.asm_101e2b
- ld a, $2
- ld [wcd2b], a
- ret
-; 101e31
-
-Function101e31: ; 101e31
- ld a, $3a
- ld [wcd25], a
- jp Function101c2b
-; 101e39
-
-Function101e39: ; 101e39
- call Function1020bf
- push af
- call Function101ed3
- pop af
- jr c, .asm_101e49
- ld a, $2a
- ld [wcd25], a
- ret
-
-.asm_101e49
- ld a, $2
- ld [wcd2b], a
- ret
-; 101e4f
-
-Function101e4f: ; 101e4f
- ld e, $6
- call Function101ee4
- call Function1013d6
- ld a, [wcd25]
- inc a
- ld [wcd25], a
- ld a, $0
- ld [wcd26], a
- ret
-; 101e64
-
-Function101e64: ; 101e64
- call Function101ecc
- call Function1020a8
- push af
- call Function101ed3
- pop af
- jr c, .asm_101e77
- ld a, $24
- ld [wcd25], a
- ret
-
-.asm_101e77
- ld hl, wcd29
- set 5, [hl]
- ld a, $2
- ld [wcd2b], a
- ret
-; 101e82
-
-Function101e82: ; 101e82 ; unreferenced
- call Function101ecc
- ld a, [wcd25]
- inc a
- ld [wcd25], a
- ret
-; 101e8d
-
-Function101e8d: ; 101e8d ; unreferenced
- call Function101ed3
- ld a, [wcd25]
- inc a
- ld [wcd25], a
- ret
-; 101e98
-
-Function101e98: ; 101e98
- call ClearSprites
- callba Function8adb3
- ret c
- ld hl, GameTimerPause
- set 7, [hl]
- ld hl, wdc41
- set 4, [hl]
- ret
-; 101ead
-
-Function101ead: ; 101ead
- ld hl, GameTimerPause
- bit 7, [hl]
- jr nz, .asm_101ec8
- ld hl, wdc41
- bit 2, [hl]
- jr z, .asm_101eca
- ld a, [wcd2f]
- and a
- jr nz, .asm_101ec8
- ld hl, wdc41
- bit 1, [hl]
- jr z, .asm_101eca
-
-.asm_101ec8
- xor a
- ret
-
-.asm_101eca
- scf
- ret
-; 101ecc
-
-Function101ecc: ; 101ecc
- call Function101ee2
- call FadeToMenu
- ret
-; 101ed3
-
-Function101ed3: ; 101ed3
- call Function1013aa
- callba Function115d99
- ld hl, wcd29
- set 7, [hl]
- ret
-; 101ee2
-
-Function101ee2: ; 101ee2
- ld e, 0
-
-Function101ee4: ; 101ee4
- ld d, 0
- ld hl, Unknown_101ef5
- add hl, de
- add hl, de
- ld a, [hli]
- ld d, [hl]
- ld e, a
- callba Function100504
- ret
-; 101ef5
-
-Unknown_101ef5: ; 101ef5
- dw String_101f13
- dw String_101f14
- dw String_101f32
- dw String_101f4f
- dw String_101f69
- dw String_101f81
- dw String_101f93
- dw String_101faa
- dw String_101fc5
- dw String_101fd2
- dw String_101fe1
- dw String_101fef
- dw String_102000
- dw String_10200c
- dw String_102014
-
-String_101f13: ; 101f13
- db "@"
-
-String_101f14: ; 101f14
- db "モバイルアダプタを つかって"
- next "おともだちと つうしんします@"
-
-String_101f32: ; 101f32
- db "でんわを かけるひとには"
- next "つうわりょうきんが かかります@"
-
-String_101f4f: ; 101f4f
- db "モバイルアダプタの じゅんびは"
- next "できて いますか?@"
-
-String_101f69: ; 101f69
- db "あなたが おともだちに"
- next "でんわを かけますか?@"
-
-String_101f81: ; 101f81
- db "めいしフ,ルダーを"
- next "つかいますか?@"
-
-String_101f93: ; 101f93
- db "でんわばんごうを にゅうりょく"
- next "してください@"
-
-String_101faa: ; 101faa
- db "それでは おともだちからの"
- next "でんわを おまちします…@"
-
-String_101fc5: ; 101fc5
- next "に でんわを かけます@"
-
-String_101fd2: ; 101fd2
- next "に でんわを かけています@"
-
-String_101fe1: ; 101fe1
- db "でんわが つながりました!@"
-
-String_101fef: ; 101fef
- db "つうわを"
- next "しゅうりょう します…@"
-
-String_102000: ; 102000
- db "つうしん しゅうりょう@"
-
-String_10200c: ; 10200c
- db "つうわ じかん@"
-
-String_102014: ; 102014
- db "それでは つうしんの"
- next "せっていを してください@"
-; 10202c
-
-Function10202c: ; 10202c
- callba Function115d99
- ld hl, wcd29
- set 7, [hl]
- ld c, $2
- call Function10142c
- ld e, $d
- call Function101ee4
- hlcoord 4, 4
- call Function100681
- ret
-; 102048
-
-Function102048: ; 102048
- call Function10204c
- ret
-; 10204c
-
-Function10204c: ; 10204c
- hlcoord 3, 2
- ld c, $10
- ld de, wcd53
-.asm_102054
- ld a, [de]
- inc de
- and a
- jr z, .asm_102067
- sub $30
- jr c, .asm_102067
- cp $a
- jr nc, .asm_102067
- add $f6
- ld [hli], a
- dec c
- jr nz, .asm_102054
-
-.asm_102067
- ret
-; 102068
-
-Function102068: ; 102068
- ld hl, wcd53
- ld c, $8
-.asm_10206d
- ld a, [de]
- call Function102080
- jr c, .asm_10207f
- ld a, [de]
- swap a
- call Function102080
- jr c, .asm_10207f
- inc de
- dec c
- jr nz, .asm_10206d
-
-.asm_10207f
- ret
-; 102080
-
-Function102080: ; 102080
- and $f
- cp $f
- jr z, .asm_10208a
- add $30
- ld [hli], a
- ret
-
-.asm_10208a
- ld [hl], $0
- scf
- ret
-; 10208e
-
-Function10208e: ; 10208e
- push de
- ld h, d
- ld l, e
- ld de, wdc42
- ld bc, $0008
- call CopyBytes
- pop de
- ret
-; 10209c
-
-Function10209c: ; 10209c
- ld a, $ff
- ld hl, wdc42
- ld bc, $0008
- call ByteFill
- ret
-; 1020a8
-
-Function1020a8: ; 1020a8
- call Function10209c
- ld c, $1
- ld de, wdc42
- callba Function17a68f
- ret c
- call Function10208e
- call Function102068
- xor a
- ret
-; 1020bf
-
-Function1020bf: ; 1020bf
- call ClearSprites
- callba Function8aba9
- ld a, c
- and a
- jr z, .asm_1020e8
- dec a
- ld hl, $a04c
- ld bc, $0025
- call AddNTimes
- ld d, h
- ld e, l
- ld a, $4
- call GetSRAMBank
- call Function10208e
- call Function102068
- call CloseSRAM
- xor a
- ret
-
-.asm_1020e8
- scf
- ret
-; 1020ea
-
-Function1020ea: ; 1020ea
- ld hl, wdc41
- bit 4, [hl]
- jr z, .asm_102110
- ld hl, wdc41
- bit 2, [hl]
- jr nz, .asm_102110
- call Function10218d
- ld hl, $c608
- bit 4, [hl]
- jr z, .asm_102110
- ld hl, $c608
- bit 2, [hl]
- jr nz, .asm_102110
- call Function102112
- jr z, .asm_102110
- and a
- ret
-
-.asm_102110
- scf
- ret
-; 102112
-
-Function102112: ; 102112
- ld a, $4
- call GetSRAMBank
- ld hl, $a041
- ld c, $28
-.asm_10211c
- push hl
- ld de, $c60f
- ld b, $1f
-.asm_102122
- ld a, [de]
- cp [hl]
- jr nz, .asm_10212f
- inc de
- inc hl
- dec b
- jr nz, .asm_102122
- pop hl
- xor a
- jr .asm_10213c
-
-.asm_10212f
- pop hl
- ld de, $0025
- add hl, de
- dec c
- jr nz, .asm_10211c
- ld a, $1
- and a
- jr .asm_10213c
-
-.asm_10213c
- push af
- call CloseSRAM
- pop af
- ret
-; 102142
-
-Function102142: ; 102142
- call Function10218d
- call Function102180
- ld hl, UnknownText_0x1021d1
- call Function1d4f
- ld de, SFX_LEVEL_UP
- call PlaySFX
- call Functiona36
- call Function1c07
- call Function10219f
- ld hl, UnknownText_0x1021d6
- call Function1d4f
- call YesNoBox
- call Function1c07
- jr c, .asm_10217c
- call Function1021b8
- jr c, .asm_10217c
- call Function10218d
- call Function102180
- ld hl, UnknownText_0x1021db
- call PrintText
-
-.asm_10217c
- call Function1013d6
- ret
-; 102180
-
-Function102180: ; 102180
- ld hl, $c608 + 1
- ld de, StringBuffer2
- ld bc, $000b
- call CopyBytes
- ret
-; 10218d
-
-Function10218d: ; 10218d
- ld hl, wdc00
- ld de, $c608
- ld bc, $0026
- ld a, $5
- call FarCopyWRAM
- ld de, $c608 + 1
- ret
-; 10219f
-
-Function10219f: ; 10219f
- call FadeToMenu
- call Function10218d
- ld de, $c608 + 1
- callba Function8ac4e
- call Functiona36
- call PlayClickSFX
- call Function1013aa
- ret
-; 1021b8
-
-Function1021b8: ; 1021b8
- call FadeToMenu
- call Function10218d
- ld de, $c60f
- callba Function8ac70
- ld a, c
- ld [StringBuffer1], a
- push af
- call Function1013aa
- pop af
- ret
-; 1021d1
-
-UnknownText_0x1021d1: ; 1021d1
- text_jump UnknownText_0x1bd19a
- db "@"
-
-UnknownText_0x1021d6: ; 1021d1
- text_jump UnknownText_0x1bd1ba
- db "@"
-
-UnknownText_0x1021db: ; 1021d1
- text_jump UnknownText_0x1bd1dd
- db "@"
-; 1021e0
-
-Function1021e0: ; 1021e0
- call Function1d4f
- call Functiona36
- call Function1c07
- ret
-; 1021ea
-
-UnknownText_0x1021ea: ; 1021ea
- text_jump UnknownText_0x1bd201
- db "@"
-
-UnknownText_0x1021ef:
- text_jump UnknownText_0x1bd211
- db "@"
-
-UnknownText_0x1021f4:
- text_jump UnknownText_0x1bd223
- db "@"
-; 1021f9
-
-Function1021f9: ; 1021f9
- call Function102233
- ld a, $0
- ld [wcd49], a
- ld hl, wcd29
- bit 3, [hl]
- res 3, [hl]
- jr z, .asm_10220f
- ld a, $1
- ld [wcd49], a
-
-.asm_10220f
- call Function1022ca
- ld a, [wcd49]
- ld hl, Jumptable_1022f5
- rst JumpTable
- call Function102241
- call Function1022d0
- jr c, .asm_102231
- ld a, [wcd49]
- bit 7, a
- jr z, .asm_10220f
- xor a
- ld hl, wcd29
- bit 3, [hl]
- ret z
- scf
- ret
-
-.asm_102231
- xor a
- ret
-; 102233
-
-Function102233: ; 102233
- ld hl, wcd49
- ld bc, $000a
- xor a
- call ByteFill
- call Function10304f
- ret
-; 102241
-
-Function102241: ; 102241
- call Function10226a
- call Function102274
- call Function10224b
- ret
-; 10224b
-
-Function10224b: ; 10224b
- ld hl, wcd4b
- bit 1, [hl]
- jr nz, .asm_10225e
- bit 2, [hl]
- jr nz, .asm_10225e
- call DelayFrame
- call DelayFrame
- xor a
- ret
-
-.asm_10225e
- res 1, [hl]
- res 2, [hl]
- callba Function104099
- scf
- ret
-; 10226a
-
-Function10226a: ; 10226a
- ld hl, wcd4b
- bit 0, [hl]
- ret z
- call Function10305d
- ret
-; 102274
-
-Function102274: ; 102274
- ld hl, wcd4b
- bit 3, [hl]
- ret z
- res 3, [hl]
- ld de, $0008
- call PlaySFX
- ret
-; 102283
-
-Function102283: ; 102283
- ld a, $1
- ld [AttrMapEnd], a
- ld hl, wcd4b
- set 0, [hl]
- ret
-; 10228e
-
-Function10228e: ; 10228e
- xor a
- ld [AttrMapEnd], a
- ld hl, wcd4b
- res 0, [hl]
- ret
-; 102298
-
-Function102298: ; 102298
- ld a, e
- cp $2
- ret nz
- ld hl, wcd4b
- bit 6, [hl]
- jr z, .asm_1022b6
- ld hl, wcd4b
- bit 7, [hl]
- ld hl, wcd4b
- set 7, [hl]
- ret nz
- ld de, SFX_ELEVATOR_END
- call PlaySFX
- jr .asm_1022c1
-
-.asm_1022b6
- ld hl, wcd4b
- bit 7, [hl]
- ld hl, wcd4b
- res 7, [hl]
- ret z
-
-.asm_1022c1
- call Function10304f
- ld a, $1
- ld [AttrMapEnd], a
- ret
-; 1022ca
-
-Function1022ca: ; 1022ca
- ld a, 30
- ld [OverworldDelay], a
- ret
-; 1022d0
-
-Function1022d0: ; 1022d0
- callba Function10032e
- ld a, [wcd2b]
- and a
- jr nz, .asm_1022f3
- call Function102298
- ld a, [OverworldDelay]
- ld c, a
- ld a, 30
- sub c
- ld c, a
- ld b, $3
- callba Function10062d
- jr c, .asm_1022f3
- xor a
- ret
-
-.asm_1022f3
- scf
- ret
-; 1022f5
-
-Jumptable_1022f5: ; 1022f5
- dw Function10234b
- dw Function102361
- dw Function10236e
- dw Function102387
- dw Function1023a1
- dw Function1025c7
- dw Function1025dc
- dw Function1024f6
- dw Function10250c
- dw Function1024a8
- dw Function102591
- dw Function1024a8
- dw Function1025b0
- dw Function1025bd
- dw Function102814
- dw Function10283c
- dw Function102862
- dw Function10286f
- dw Function1024a8
- dw Function1028a5
- dw Function1028ab
- dw Function1023b5
- dw Function1023c6
- dw Function1024af
- dw Function102416
- dw Function102423
- dw Function10244b
- dw Function1024af
- dw Function10246a
- dw Function102652
- dw Function10266b
- dw Function1025e9
- dw Function1025ff
- dw Function102738
- dw Function102754
- dw Function1026b7
- dw Function1026c8
- dw Function1028bf
- dw Function1028c6
- dw Function1028d3
- dw Function1028da
- dw Function1024a8
- dw Function10248d
-; 10234b
-
-Function10234b: ; 10234b
- call Function102d9a
- call Function102dd3
- call Function102dec
- ld hl, wcd4b
- set 1, [hl]
- ld a, [wcd49]
- inc a
- ld [wcd49], a
- ret
-; 102361
-
-Function102361: ; 102361
- ld a, $cc
- call Function1028e8
- ld a, [wcd49]
- inc a
- ld [wcd49], a
- ret
-; 10236e
-
-Function10236e: ; 10236e
- call Function1028fc
- ret nc
- ld a, [wcd51]
- cp $cc
- jr z, .asm_10237f
- ld a, $f2
- ld [wcd2b], a
- ret
-
-.asm_10237f
- ld a, [wcd49]
- inc a
- ld [wcd49], a
- ret
-; 102387
-
-Function102387: ; 102387
- ld hl, wcd4b
- set 6, [hl]
- xor a
- ld [wdc5f], a
- ld de, MUSIC_ROUTE_30
- call PlayMusic
- call Function102d9a
- call Function102dd3
- ld a, $1
- ld [wcfa9], a
-
-Function1023a1: ; 1023a1
- call Function102283
- call Function102db7
- call Function102dec
- ld hl, wcd4b
- set 1, [hl]
- ld a, $1d
- ld [wcd49], a
- ret
-; 1023b5
-
-Function1023b5: ; 1023b5
- call Function10228e
- call Function102a3b
- call Function102b12
- ld a, [wcd49]
- inc a
- ld [wcd49], a
- ret
-; 1023c6
-
-Function1023c6: ; 1023c6
- call Function102c48
- call Function102c87
- ld a, [wcd4c]
- dec a
- ld [CurPartyMon], a
- xor a
- ld [wd10b], a
- callba Functione039
- ld hl, PartyCount
- inc [hl]
- ld a, [hli]
- ld c, a
- ld b, $0
- add hl, bc
- ld [hl], $ff
- ld a, [PartyCount]
- ld [wcd4c], a
- call Function102c07
- call Function102d48
- call Function102b32
- call Function102f50
- ld hl, wcd4b
- set 1, [hl]
- ld a, $14
- ld [wcd4e], a
- ld a, $0
- ld [wcd4f], a
- ld a, $0
- ld [wcd4a], a
- ld a, [wcd49]
- inc a
- ld [wcd49], a
- ret
-; 102416
-
-Function102416: ; 102416
- ld a, $aa
- call Function1028e8
- ld a, [wcd49]
- inc a
- ld [wcd49], a
- ret
-; 102423
-
-Function102423: ; 102423
- call Function102921
- ret nc
- callba Function14a58
- callba Function1060af
- callba Function106187
- ld hl, wcd4b
- set 1, [hl]
- ld a, $0
- ld [wcd4a], a
- ld a, [wcd49]
- inc a
- ld [wcd49], a
- ret
-; 10244b
-
-Function10244b: ; 10244b
- call Function102f32
- ld hl, wcd4b
- set 1, [hl]
- ld a, $19
- ld [wcd4e], a
- ld a, $0
- ld [wcd4f], a
- ld a, $0
- ld [wcd4a], a
- ld a, [wcd49]
- inc a
- ld [wcd49], a
- ret
-; 10246a
-
-Function10246a: ; 10246a
- call Function102d9a
- ld hl, wcd29
- set 3, [hl]
- call Function102e07
- ld hl, wcd4b
- set 1, [hl]
- ld a, $2a
- ld [wcd49], a
- ret
-; 102480
-
-Function102480: ; 102480
- ld c, $32
- call DelayFrames
- ld a, [wcd49]
- inc a
- ld [wcd49], a
- ret
-; 10248d
-
-Function10248d: ; 10248d
- ld a, [wcd49]
- set 7, a
- ld [wcd49], a
- ret
-; 102496
-
-Function102496: ; 102496
- ld hl, wcd4e
- dec [hl]
- ret nz
- ld a, $0
- ld [wcd4a], a
- ld a, [wcd49]
- inc a
- ld [wcd49], a
- ret
-; 1024a8
-
-Function1024a8: ; 1024a8
- callba Function1009f3
- ret c
-
-Function1024af: ; 1024af
- call GetJoypad
- ld a, [wcd4a]
- ld hl, Jumptable_1024ba
- rst JumpTable
- ret
-; 1024ba
-
-Jumptable_1024ba: ; 1024ba
- dw Function1024c0
- dw Function1024cb
- dw Function1024de
-; 1024c0
-
-Function1024c0: ; 1024c0
- ld hl, wcd4e
- inc [hl]
- ld a, [wcd4a]
- inc a
- ld [wcd4a], a
-
-Function1024cb: ; 1024cb
- ld hl, wcd4e
- dec [hl]
- ret nz
- ld a, [wcd4f]
- inc a
- ld [wcd4e], a
- ld a, [wcd4a]
- inc a
- ld [wcd4a], a
-
-Function1024de: ; 1024de
- ld hl, wcd4e
- dec [hl]
- jr z, .asm_1024e9
- ld a, [hJoyPressed]
- and A_BUTTON | B_BUTTON
- ret z
-
-.asm_1024e9
- ld a, $0
- ld [wcd4a], a
- ld a, [wcd49]
- inc a
- ld [wcd49], a
- ret
-; 1024f6
-
-Function1024f6: ; 1024f6
- call Function1bee
- ld hl, wcd4b
- set 1, [hl]
- ld a, [wcd4c]
- call Function1028e8
- ld a, [wcd49]
- inc a
- ld [wcd49], a
- ret
-; 10250c
-
-Function10250c: ; 10250c
- call Function1028fc
- ret nc
- ld a, [wcd51]
- cp $f
- jr z, .asm_10254b
- and a
- jr z, .asm_102572
- cp $aa
- jr z, .asm_102572
- cp $7
- jr nc, .asm_102572
- ld [wcd4d], a
- dec a
- ld [wd003], a
- ld a, [wcd4c]
- dec a
- ld [DefaultFlypoint], a
- call Function102b9c
- call Function102bdc
- jr c, .asm_10256d
- callba Functionfb5dd
- jr c, .asm_102568
- ld hl, wcd4b
- set 1, [hl]
- ld a, $e
- ld [wcd49], a
- ret
-
-.asm_10254b
- call Function103021
- ld hl, wcd4b
- set 1, [hl]
- ld a, $0
- ld [wcd4a], a
- ld a, $1e
- ld [wcd4e], a
- ld a, $1e
- ld [wcd4f], a
- ld a, $29
- ld [wcd49], a
- ret
-
-.asm_102568
- call Function102ff5
- jr .asm_102577
-
-.asm_10256d
- call Function102f85
- jr .asm_102577
-
-.asm_102572
- call Function102fce
- jr .asm_102577
-
-.asm_102577
- ld hl, wcd4b
- set 1, [hl]
- ld a, $0
- ld [wcd4a], a
- ld a, $1e
- ld [wcd4e], a
- ld a, $3c
- ld [wcd4f], a
- ld a, $9
- ld [wcd49], a
- ret
-; 102591
-
-Function102591: ; 102591
- call Function102ee7
- ld hl, wcd4b
- set 1, [hl]
- ld a, $0
- ld [wcd4a], a
- ld a, $1e
- ld [wcd4e], a
- ld a, $3c
- ld [wcd4f], a
- ld a, [wcd49]
- inc a
- ld [wcd49], a
- ret
-; 1025b0
-
-Function1025b0: ; 1025b0
- ld a, $9
- call Function1028e8
- ld a, [wcd49]
- inc a
- ld [wcd49], a
- ret
-; 1025bd
-
-Function1025bd: ; 1025bd
- call Function1028fc
- ret nc
- ld a, $4
- ld [wcd49], a
- ret
-; 1025c7
-
-Function1025c7: ; 1025c7
- call Function102f6d
- ld hl, wcd4b
- set 1, [hl]
- ld a, $f
- call Function1028e8
- ld a, [wcd49]
- inc a
- ld [wcd49], a
- ret
-; 1025dc
-
-Function1025dc: ; 1025dc
- call Function1028fc
- ret nc
- ld a, [wcd49]
- set 7, a
- ld [wcd49], a
- ret
-; 1025e9
-
-Function1025e9: ; 1025e9
- nop
- ld hl, wcd4b
- set 6, [hl]
- call Function102b4e
- ld hl, wcd4b
- set 1, [hl]
- ld a, [wcd49]
- inc a
- ld [wcd49], a
- ret
-; 1025ff
-
-Function1025ff: ; 1025ff
- ld hl, wcd4b
- set 2, [hl]
- callba Function1009f3
- ret c
- callba Function241ba
- ld a, [wcfa8]
- and c
- ret z
- bit 0, c
- jr nz, .asm_102623
- bit 6, c
- jr nz, .asm_10262e
- bit 7, c
- jr nz, .asm_102646
- ret
-
-.asm_102623
- ld hl, wcd4b
- set 3, [hl]
- ld a, $27
- ld [wcd49], a
- ret
-
-.asm_10262e
- ld a, [wcfa9]
- ld b, a
- ld a, [OTPartyCount]
- cp b
- ret nz
- call Function1bf7
- ld a, [PartyCount]
- ld [wcfa9], a
- ld a, $1d
- ld [wcd49], a
- ret
-
-.asm_102646
- ld a, [wcfa9]
- cp $1
- ret nz
- ld a, $23
- ld [wcd49], a
- ret
-; 102652
-
-Function102652: ; 102652
- nop
- ld hl, wcd4b
- set 6, [hl]
- nop
- call Function102b7b
- nop
- ld hl, wcd4b
- set 1, [hl]
- nop
- ld a, [wcd49]
- inc a
- ld [wcd49], a
- ret
-; 10266b
-
-Function10266b: ; 10266b
- ld hl, wcd4b
- set 2, [hl]
- callba Function1009f3
- ret c
- callba Function241ba
- ld a, [wcfa8]
- and c
- ret z
- bit 0, c
- jr nz, .asm_10268f
- bit 7, c
- jr nz, .asm_10269a
- bit 6, c
- jr nz, .asm_1026a8
- ret
-
-.asm_10268f
- ld hl, wcd4b
- set 3, [hl]
- ld a, $21
- ld [wcd49], a
- ret
-
-.asm_10269a
- ld a, [wcfa9]
- dec a
- ret nz
- call Function1bf7
- ld a, $1f
- ld [wcd49], a
- ret
-
-.asm_1026a8
- ld a, [wcfa9]
- ld b, a
- ld a, [PartyCount]
- cp b
- ret nz
- ld a, $23
- ld [wcd49], a
- ret
-; 1026b7
-
-Function1026b7: ; 1026b7
- ld hl, wcd4b
- set 6, [hl]
- ld a, [wcd49]
- inc a
- ld [wcd49], a
- ld a, $0
- ld [wcd4a], a
-
-Function1026c8: ; 1026c8
- call GetJoypad
- callba Function1009f3
- ret c
- ld a, [wcd4a]
- ld hl, Jumptable_1026da
- rst JumpTable
- ret
-; 1026da
-
-Jumptable_1026da: ; 1026da
- dw Function1026de
- dw Function1026f3
-; 1026de
-
-Function1026de: ; 1026de
- call Function1bf7
- hlcoord 9, 17
- ld [hl], $ed
- ld a, [wcd4a]
- inc a
- ld [wcd4a], a
- ld hl, wcd4b
- set 1, [hl]
- ret
-; 1026f3
-
-Function1026f3: ; 1026f3
- ld a, [hJoyPressed]
- bit 0, a
- jr nz, .asm_102723
- bit 6, a
- jr nz, .asm_102712
- bit 7, a
- jr nz, .asm_102702
- ret
-
-.asm_102702
- hlcoord 9, 17
- ld [hl], $7f
- ld a, $1
- ld [wcfa9], a
- ld a, $1d
- ld [wcd49], a
- ret
-
-.asm_102712
- hlcoord 9, 17
- ld [hl], $7f
- ld a, [OTPartyCount]
- ld [wcfa9], a
- ld a, $1f
- ld [wcd49], a
- ret
-
-.asm_102723
- hlcoord 9, 17
- ld [hl], $ec
- ld hl, wcd4b
- set 3, [hl]
- ld hl, wcd4b
- set 2, [hl]
- ld a, $5
- ld [wcd49], a
- ret
-; 102738
-
-Function102738: ; 102738
- ld hl, wcd4b
- set 6, [hl]
- call Function1bee
- call Function1027eb
- ld hl, wcd4b
- set 1, [hl]
- ld a, [wcd49]
- inc a
- ld [wcd49], a
- ld a, $0
- ld [wcd4a], a
-
-Function102754: ; 102754
- call GetJoypad
- callba Function1009f3
- ret c
- ld a, [wcd4a]
- ld hl, Jumptable_102766
- rst JumpTable
- ret
-; 102766
-
-Jumptable_102766: ; 102766
- dw Function102770
- dw Function102775
- dw Function10278c
- dw Function1027a0
- dw Function1027b7
-; 102770
-
-Function102770: ; 102770
- ld a, $1
- ld [wcd4a], a
-
-Function102775: ; 102775
- hlcoord 1, 16
- ld [hl], $ed
- hlcoord 11, 16
- ld [hl], $7f
- ld hl, wcd4b
- set 2, [hl]
- ld a, [wcd4a]
- inc a
- ld [wcd4a], a
- ret
-; 10278c
-
-Function10278c: ; 10278c
- ld a, [hJoyPressed]
- bit 0, a
- jr nz, asm_1027c6
- bit 1, a
- jr nz, asm_1027e2
- bit 4, a
- jr nz, .asm_10279b
- ret
-
-.asm_10279b
- ld a, $3
- ld [wcd4a], a
-
-Function1027a0: ; 1027a0
- hlcoord 1, 16
- ld [hl], $7f
- hlcoord 11, 16
- ld [hl], $ed
- ld hl, wcd4b
- set 2, [hl]
- ld a, [wcd4a]
- inc a
- ld [wcd4a], a
- ret
-
-Function1027b7: ; 1027b7
- ld a, [hJoyPressed]
- bit 0, a
- jr nz, asm_1027d1
- bit 1, a
- jr nz, asm_1027e2
- bit 5, a
- jr nz, Function102770
- ret
-
-asm_1027c6:
- ld hl, wcd4b
- set 3, [hl]
- ld a, $25
- ld [wcd49], a
- ret
-
-asm_1027d1:
- ld hl, wcd4b
- set 3, [hl]
- ld a, [wcfa9]
- ld [wcd4c], a
- ld a, $7
- ld [wcd49], a
- ret
-
-asm_1027e2:
- call Function102db7
- ld a, $1d
- ld [wcd49], a
- ret
-; 1027eb
-
-Function1027eb: ; 1027eb
- hlcoord 0, 14
- ld b, $2
- ld c, $12
- ld d, h
- ld e, l
- callba Function16d61d
- ld de, String_102804
- hlcoord 2, 16
- call PlaceString
- ret
-; 102804
-
-String_102804: ; 102804
- db "STATS TRADE@"
-; 102814
-
-Function102814: ; 102814
- ld a, [wcfa9]
- ld [wcd52], a
- ld a, [wcd4c]
- dec a
- ld [DefaultFlypoint], a
- ld a, [wcd4d]
- dec a
- ld [wd003], a
- call Function102ea8
- ld a, [wcd49]
- inc a
- ld [wcd49], a
- ld a, $0
- ld [wcd4a], a
- ld hl, wcd4b
- set 1, [hl]
-
-Function10283c: ; 10283c
- ld hl, wcd4b
- set 2, [hl]
- call Function1029c3
- ret z
- jr c, .asm_102852
- ld a, $10
- ld [wcd49], a
- ld hl, wcd4b
- set 1, [hl]
- ret
-
-.asm_102852
- ld a, $14
- ld [wcd49], a
- ld hl, wcd4b
- set 3, [hl]
- ld hl, wcd4b
- set 1, [hl]
- ret
-; 102862
-
-Function102862: ; 102862
- ld a, $8
- call Function1028e8
- ld a, [wcd49]
- inc a
- ld [wcd49], a
- ret
-; 10286f
-
-Function10286f: ; 10286f
- call Function1028fc
- ret nc
- ld a, [wcd52]
- ld [wcfa9], a
- ld a, [wcd51]
- cp $8
- jr nz, .asm_102886
- ld a, $15
- ld [wcd49], a
- ret
-
-.asm_102886
- call Function102ee7
- ld hl, wcd4b
- set 1, [hl]
- ld a, $1e
- ld [wcd4e], a
- ld a, $3c
- ld [wcd4f], a
- ld a, $0
- ld [wcd4a], a
- ld a, [wcd49]
- inc a
- ld [wcd49], a
- ret
-; 1028a5
-
-Function1028a5: ; 1028a5
- ld a, $4
- ld [wcd49], a
- ret
-; 1028ab
-
-Function1028ab: ; 1028ab
- ld a, [wcd52]
- ld [wcfa9], a
- call Function102f15
- ld hl, wcd4b
- set 1, [hl]
- ld a, $c
- ld [wcd49], a
- ret
-; 1028bf
-
-Function1028bf: ; 1028bf
- ld a, [wcd49]
- inc a
- ld [wcd49], a
-
-Function1028c6: ; 1028c6
- xor a
- ld [MonType], a
- call Function102bac
- ld a, $1d
- ld [wcd49], a
- ret
-; 1028d3
-
-Function1028d3: ; 1028d3
- ld a, [wcd49]
- inc a
- ld [wcd49], a
-
-Function1028da: ; 1028da
- ld a, $1
- ld [MonType], a
- call Function102bac
- ld a, $1f
- ld [wcd49], a
- ret
-; 1028e8
-
-Function1028e8: ; 1028e8
- ld hl, wcd4b
- res 6, [hl]
- ld [wcd50], a
- callba Function100641
- ld a, $0
- ld [wcd4a], a
- ret
-; 1028fc
-
-Function1028fc: ; 1028fc
- call GetJoypad
- callba Function1009f3
- jr nc, .asm_102909
- and a
- ret
-
-.asm_102909
- ld a, [wcd4a]
- ld hl, Jumptable_102917
- rst JumpTable
- ret nc
- ld a, $0
- ld [wcd4a], a
- ret
-; 102917
-
-Jumptable_102917: ; 102917
- dw Function102933
- dw Function10294f
- dw Function10295d
- dw Function10296e
- dw Function102996
-; 102921
-
-Function102921: ; 102921
- ld a, [wcd4a]
- ld hl, Jumptable_10292f
- rst JumpTable
- ret nc
- ld a, $0
- ld [wcd4a], a
- ret
-; 10292f
-
-Jumptable_10292f: ; 10292f
- dw Function10295d
- dw Function102984
-; 102933
-
-Function102933: ; 102933
- ld hl, MenuDataHeader_1029bb
- call LoadMenuDataHeader
- call Function102e07
- ld a, $32
- ld [TextDelayFrames], a
- ld hl, wcd4b
- set 1, [hl]
- ld a, [wcd4a]
- inc a
- ld [wcd4a], a
- and a
- ret
-; 10294f
-
-Function10294f: ; 10294f
- ld a, [TextDelayFrames]
- and a
- ret nz
- ld a, [wcd4a]
- inc a
- ld [wcd4a], a
- and a
- ret
-; 10295d
-
-Function10295d: ; 10295d
- call Function10299e
- ld a, $0
- ld [wcd27], a
- ld a, [wcd4a]
- inc a
- ld [wcd4a], a
- and a
- ret
-; 10296e
-
-Function10296e: ; 10296e
- callba Function100382
- and a
- ld a, [wcd27]
- bit 7, a
- ret z
- ld a, [wcd4a]
- inc a
- ld [wcd4a], a
- and a
- ret
-; 102984
-
-Function102984: ; 102984
- callba Function100382
- and a
- ld a, [wcd27]
- bit 7, a
- ret z
- call Function1029af
- scf
- ret
-; 102996
-
-Function102996: ; 102996
- call Function1029af
- call Function1c07
- scf
- ret
-; 10299e
-
-Function10299e: ; 10299e
- ld a, $1
- ld [wccb4], a
- ld a, [wcd50]
- ld [wccb5], a
- ld a, $aa
- ld [wcd51], a
- ret
-; 1029af
-
-Function1029af: ; 1029af
- ld hl, wcd4b
- res 7, [hl]
- ld a, [wcc61]
- ld [wcd51], a
- ret
-; 1029bb
-
-MenuDataHeader_1029bb: ; 1029bb
- db $40 ; flags
- db 10, 3 ; start coords
- db 12, 15 ; end coords
- dw NULL
- db 1 ; default option
-; 1029c3
-
-Function1029c3: ; 1029c3
- ld a, [wcd4a]
- ld hl, Jumptable_1029cb
- rst JumpTable
- ret
-; 1029cb
-
-Jumptable_1029cb: ; 1029cb
- dw Function1029cf
- dw Function1029fe
-; 1029cf
-
-Function1029cf: ; 1029cf
- call Function1d6e
- hlcoord 10, 7
- ld b, $3
- ld c, $8
- ld d, h
- ld e, l
- callba Function16d61d
- ld de, String_102a26
- hlcoord 12, 8
- call PlaceString
- ld hl, wcd4b
- set 1, [hl]
- ld de, Unknown_102a33
- call Function1bb1
- ld a, [wcd4a]
- inc a
- ld [wcd4a], a
- xor a
- ret
-; 1029fe
-
-Function1029fe: ; 1029fe
- callba Function1009f3
- ret c
- callba Function241ba
- ld a, c
- ld hl, wcfa8
- and [hl]
- ret z
- push af
- call Function1c07
- pop af
- ld a, [wcfa9]
- cp $1
- jr nz, .asm_102a21
- ld a, $1
- and a
- ret
-
-.asm_102a21
- ld a, $1
- and a
- scf
- ret
-; 102a26
-
-String_102a26: ; 102a26
- db "TRADE"
- next "CANCEL"
- db "@"
-; 102a33
-
-Unknown_102a33:
-INCBIN "baserom.gbc", $102a33, $102a3b - $102a33
-
-Function102a3b: ; 102a3b
- ld a, [wcd30]
- ld [wc74e], a
- ld hl, PlayerName
- ld de, $c6e7
- ld bc, $000b
- call CopyBytes
- ld a, [wcd4c]
- dec a
- ld c, a
- ld b, $0
- ld hl, PartySpecies
- add hl, bc
- ld a, [hl]
- ld [$c6d0], a
- ld a, [wcd4c]
- dec a
- ld hl, PartyMonOT
- call SkipNames
- ld de, $c6f2
- ld bc, $000b
- call CopyBytes
- ld a, [wcd4c]
- dec a
- ld hl, PartyMon1ID
- call GetPartyLocation
- ld a, [hli]
- ld [$c6ff], a
- ld a, [hl]
- ld [wc700], a
- ld a, [wcd4c]
- dec a
- ld hl, PartyMon1DVs
- call GetPartyLocation
- ld a, [hli]
- ld [$c6fd], a
- ld a, [hl]
- ld [$c6fe], a
- ld a, [wcd4c]
- dec a
- ld hl, PartyMon1Species
- call GetPartyLocation
- ld b, h
- ld c, l
- callba GetCaughtGender
- ld a, c
- ld [wc701], a
- ld hl, wd26b
- ld de, wc719
- ld bc, $000b
- call CopyBytes
- ld a, [wcd4d]
- dec a
- ld c, a
- ld b, $0
- ld hl, OTPartySpecies
- add hl, bc
- ld a, [hl]
- ld [wc702], a
- ld a, [wcd4d]
- dec a
- ld hl, OTPartyMonOT
- call SkipNames
- ld de, wc724
- ld bc, $000b
- call CopyBytes
- ld a, [wcd4d]
- dec a
- ld hl, OTPartyMon1ID
- call GetPartyLocation
- ld a, [hli]
- ld [wc731], a
- ld a, [hl]
- ld [wc732], a
- ld a, [wcd4d]
- dec a
- ld hl, OTPartyMon1DVs
- call GetPartyLocation
- ld a, [hli]
- ld [wc72f], a
- ld a, [hl]
- ld [wc730], a
- ld a, [wcd4d]
- dec a
- ld hl, OTPartyMon1Species
- call GetPartyLocation
- ld b, h
- ld c, l
- callba GetCaughtGender
- ld a, c
- ld [wc733], a
- ret
-; 102b12
-
-Function102b12: ; 102b12
- ld c, $64
- call DelayFrames
- call Function102d9a
- call Functione58
- ld a, [wcd2f]
- and a
- jr nz, .asm_102b2b
- callba Function108026
- jr .asm_102b31
-
-.asm_102b2b
- callba Function10802a
-
-.asm_102b31
- ret
-; 102b32
-
-Function102b32: ; 102b32
- ld a, [wcd4c]
- dec a
- ld [CurPartyMon], a
- ld a, $1
- ld [wd1e9], a
- callba Function421d8
- call Function102d9a
- call Function102dd3
- call Function102dec
- ret
-; 102b4e
-
-Function102b4e: ; 102b4e
- ld a, $1
- ld [MonType], a
- ld a, [wcfa9]
- push af
- ld de, Unknown_102b73
- call Function1bb1
- pop af
- ld [wcfa9], a
- ld a, [OTPartyCount]
- ld [wcfa3], a
- ret
-; 102b68
-
-Function102b68: ; 102b68 ; unreferenced
- xor a
- ld hl, wcf71
- ld bc, $0010
- call ByteFill
- ret
-; 102b73
-
-Unknown_102b73:
-INCBIN "baserom.gbc", $102b73, $102b7b - $102b73
-
-Function102b7b: ; 102b7b
- xor a
- ld [MonType], a
- ld a, [wcfa9]
- push af
- ld de, Unknown_102b94
- call Function1bb1
- pop af
- ld [wcfa9], a
- ld a, [PartyCount]
- ld [wcfa3], a
- ret
-; 102b94
-
-Unknown_102b94:
-INCBIN "baserom.gbc", $102b94, $102b9c - $102b94
-
-Function102b9c: ; 102b9c
- ld a, [wcd4d]
- dec a
- hlcoord 6, 9
- ld bc, $0014
- call AddNTimes
- ld [hl], $ec
- ret
-; 102bac
-
-Function102bac: ; 102bac
- ld a, [wcfa9]
- dec a
- ld [CurPartyMon], a
- call LowVolume
- call ClearSprites
- callba Function4dc8f
- ld a, [CurPartyMon]
- inc a
- ld [wcfa9], a
- call Function102d9a
- call ClearPalettes
- call DelayFrame
- call MaxVolume
- call Function102dd3
- call Function102dec
- call Function102db7
- ret
-; 102bdc
-
-Function102bdc: ; 102bdc
- ld a, [wcd4d]
- dec a
- ld hl, OTPartyMon1Species
- call GetPartyLocation
- push hl
- ld a, [wcd4d]
- ld c, a
- ld b, $0
- ld hl, OTPartyCount
- add hl, bc
- ld a, [hl]
- pop hl
- cp EGG
- jr z, .asm_102bfa
- cp [hl]
- jr nz, .asm_102c05
-
-.asm_102bfa
- ld bc, OTPartyMon1Level - OTPartyMon1
- add hl, bc
- ld a, [hl]
- cp MAX_LEVEL + 1
- jr nc, .asm_102c05
- and a
- ret
-
-.asm_102c05
- scf
- ret
-; 102c07
-
-Function102c07: ; 102c07
- call Function102c14
- call Function102c3b
- call Function102c21
- call Function102c2e
- ret
-; 102c14
-
-Function102c14: ; 102c14
- ld hl, PartySpecies
- ld de, OTPartySpecies
- ld bc, $0001
- call Function102c71
- ret
-; 102c21
-
-Function102c21: ; 102c21
- ld hl, PartyMonNicknames
- ld de, OTPartyMonNicknames
- ld bc, $000b
- call Function102c71
- ret
-; 102c2e
-
-Function102c2e: ; 102c2e
- ld hl, PartyMonOT
- ld de, OTPartyMonOT
- ld bc, $000b
- call Function102c71
- ret
-; 102c3b
-
-Function102c3b: ; 102c3b
- ld hl, PartyMon1
- ld de, OTPartyMon1
- ld bc, $0030
- call Function102c71
- ret
-; 102c48
-
-Function102c48: ; 102c48
- callba Function10165a
- ld a, $0
- call GetSRAMBank
- ld hl, $a600
- ld de, $c608
- ld bc, $002f
- call Function102c71
- call CloseSRAM
- ld hl, $c608
- ld de, wda00
- ld bc, $01e0
- ld a, $5
- call FarCopyWRAM
- ret
-; 102c71
-
-Function102c71: ; 102c71
- ld a, [wcd4c]
- dec a
- call AddNTimes
- push hl
- ld h, d
- ld l, e
- ld a, [wcd4d]
- dec a
- call AddNTimes
- pop de
- call SwapBytes
- ret
-; 102c87
-
-Function102c87: ; 102c87
- ld a, [wcf63]
- push af
- ld a, [wcf64]
- push af
- ld a, [wcd4c]
- ld [wcf63], a
- ld a, [PartyCount]
- ld [wcf64], a
- ld a, $0
- ld hl, $a600
- ld de, $c608
- ld bc, $011a
- call Function102d3e
- call Function102cee
- ld a, $0
- ld hl, $c608
- ld de, $a600
- ld bc, $011a
- call Function102d3e
- ld a, [wcd4d]
- ld [wcf63], a
- ld a, [OTPartyCount]
- ld [wcf64], a
- ld a, $5
- ld hl, wda00
- ld de, $c608
- ld bc, $011a
- call FarCopyWRAM
- call Function102cee
- ld a, $5
- ld hl, $c608
- ld de, wda00
- ld bc, $011a
- call FarCopyWRAM
- pop af
- ld [wcf64], a
- pop af
- ld [wcf63], a
- ret
-; 102cee
-
-Function102cee: ; 102cee
- ld a, [wcf63]
- dec a
- call Function102d34
- ld de, DefaultFlypoint
- ld bc, $002f
- call CopyBytes
- ld a, [wcf63]
- ld c, a
- ld a, $6
- sub c
- ret z
- ld bc, $002f
- ld hl, $0000
- call AddNTimes
- push hl
- ld a, [wcf63]
- dec a
- call Function102d34
- ld d, h
- ld e, l
- ld hl, $002f
- add hl, de
- pop bc
- call CopyBytes
- ld a, [wcf64]
- dec a
- call Function102d34
- ld d, h
- ld e, l
- ld hl, DefaultFlypoint
- ld bc, $002f
- call CopyBytes
- ret
-; 102d34
-
-Function102d34: ; 102d34
- ld hl, $c608
- ld bc, $002f
- call AddNTimes
- ret
-; 102d3e
-
-Function102d3e: ; 102d3e
- call GetSRAMBank
- call CopyBytes
- call CloseSRAM
- ret
-; 102d48
-
-Function102d48: ; 102d48
- ld a, [wcd4c]
- ld e, a
- ld d, 0
- ld hl, PartyCount
- add hl, de
- ld a, [hl]
- ld [wd265], a
- cp EGG
- jr z, .asm_102d6d
- dec a
- call SetSeenAndCaughtMon
- ld a, [wcd4c]
- dec a
- ld bc, PartyMon2 - PartyMon1
- ld hl, PartyMon1Happiness
- call AddNTimes
- ld [hl], BASE_HAPPINESS
-
-.asm_102d6d
- ld a, [wd265]
- cp UNOWN
- jr nz, .asm_102d98
- ld a, [wcd4c]
- dec a
- ld bc, PartyMon2 - PartyMon1
- ld hl, PartyMon1DVs
- call AddNTimes
- predef GetUnownLetter
- callba Functionfba18
- ld a, [wdef4]
- and a
- jr nz, .asm_102d98
- ld a, [UnownLetter]
- ld [wdef4], a
-
-.asm_102d98
- and a
- ret
-; 102d9a
-
-Function102d9a: ; 102d9a
- ld a, $7f
- ld hl, SpritesEnd
- ld bc, $0168
- call ByteFill
- ld a, $7
- ld hl, AttrMap
- ld bc, $0168
- call ByteFill
- callba Function104000
- ret
-; 102db7
-
-Function102db7: ; 102db7
- call Function102e4f
- call Function102e3e
- ld hl, wcd4b
- set 1, [hl]
- ret
-; 102dc3
-
-Function102dc3: ; 102dc3
- hlcoord 0, 12
- ld b, $4
- ld c, $12
- ld d, h
- ld e, l
- callba Function16d61d
- ret
-; 102dd3
-
-Function102dd3: ; 102dd3
- call DisableLCD
- ld de, GFX_1032a2
- ld hl, VTiles0
- lb bc, BANK(GFX_1032a2), 4
- call Get2bpp
- callba Function16d421
- call EnableLCD
- ret
-; 102dec
-
-Function102dec: ; 102dec
- ld hl, Unknown_1032e2
- ld de, Unkn2Pals
- ld bc, $0020
- ld a, $5
- call FarCopyWRAM
- callba Function49742
- call Function32f9
- call DelayFrame
- ret
-; 102e07
-
-Function102e07: ; 102e07
- hlcoord 3, 10
- ld b, $1
- ld c, $b
- ld a, [IsInBattle]
- and a
- jr z, .asm_102e19
- call TextBox
- jr .asm_102e28
-
-.asm_102e19
- hlcoord 3, 10
- ld b, $1
- ld c, $b
- ld d, h
- ld e, l
- callba Function16d61d
-
-.asm_102e28
- ld de, String_102e32
- hlcoord 4, 11
- call PlaceString
- ret
-; 102e32
-
-String_102e32: ; 102e32
- db "Waiting...!@"
-; 102e3e
-
-Function102e3e: ; 102e3e
- ld de, String_102e48
- hlcoord 10, 17
- call PlaceString
- ret
-; 102e48
-
-String_102e48: ; 102e48
- db "CANCEL@"
-; 102e4f
-
-Function102e4f: ; 102e4f
- callba Function16d42e
- callba Function49797
- ld de, PlayerName
- hlcoord 4, 0
- call PlaceString
- ld a, $14
- ld [bc], a
- ld de, wd26b
- hlcoord 4, 8
- call PlaceString
- ld a, $14
- ld [bc], a
- hlcoord 7, 1
- ld de, PartySpecies
- call Function102e86
- hlcoord 7, 9
- ld de, OTPartySpecies
- call Function102e86
- ret
-; 102e86
-
-Function102e86: ; 102e86
- ld c, $0
-.asm_102e88
- ld a, [de]
- cp $ff
- ret z
- ld [wd265], a
- push bc
- push hl
- push de
- push hl
- ld a, c
- ld [hDividend], a
- call GetPokemonName
- pop hl
- call PlaceString
- pop de
- inc de
- pop hl
- ld bc, $0014
- add hl, bc
- pop bc
- inc c
- jr .asm_102e88
-; 102ea8
-
-Function102ea8: ; 102ea8
- call Function102dc3
- ld a, [wcd4c]
- dec a
- ld c, a
- ld b, $0
- ld hl, PartySpecies
- add hl, bc
- ld a, [hl]
- ld [wd265], a
- call GetPokemonName
- ld hl, StringBuffer1
- ld de, StringBuffer2
- ld bc, $000b
- call CopyBytes
- ld a, [wcd4d]
- dec a
- ld c, a
- ld b, $0
- ld hl, OTPartySpecies
- add hl, bc
- ld a, [hl]
- ld [wd265], a
- call GetPokemonName
- ld hl, UnknownText_0x102ee2
- call PrintTextBoxText
- ret
-; 102ee2
-
-UnknownText_0x102ee2: ; 102ee2
- text_jump UnknownText_0x1bd286
- db "@"
-
-Function102ee7: ; 102ee7
- call Function102dc3
- ld de, String_102ef4
- hlcoord 1, 14
- call PlaceString
- ret
-; 102ef4
-
-String_102ef4: ; 102ef4
- db "Too bad! The trade"
- next "was canceled!"
- db "@"
-; 102f15
-
-Function102f15: ; 102f15
- call Function102dc3
- ld de, String_102f22
- hlcoord 1, 14
- call PlaceString
- ret
-; 102f22
-
-String_102f22: ; 102f22
- db "こうかんを キャンセルしました@"
-; 102f32
-
-Function102f32: ; 102f32
- call Function102dc3
- ld de, String_102f3f
- hlcoord 1, 14
- call PlaceString
- ret
-; 102f3f
-
-String_102f3f: ; 102f3f
- db "Trade completed!@"
-; 102f50
-
-Function102f50: ; 102f50
- call Function102dc3
- ld de, String_102f5d
- hlcoord 1, 14
- call PlaceString
- ret
-; 102f5d
-
-String_102f5d: ; 102f5d
- db "しょうしょう おまち ください@"
-; 102f6d
-
-Function102f6d: ; 102f6d
- call Function102dc3
- ld de, String_102f7a
- hlcoord 1, 14
- call PlaceString
- ret
-; 102f7a
-
-String_102f7a: ; 102f7a
- db "しゅうりょう します@"
-; 102f85
-
-Function102f85: ; 102f85
- ld a, [wd003]
- ld c, a
- ld b, $0
- ld hl, OTPartySpecies
- add hl, bc
- ld a, [hl]
- ld [wd265], a
- call GetPokemonName
- call Function102dc3
- ld de, String_102fb2
- hlcoord 1, 14
- call PlaceString
- ld de, StringBuffer1
- hlcoord 13, 14
- call PlaceString
- ld de, String_102fcc
- call PlaceString
- ret
-; 102fb2
-
-String_102fb2: ; 102fb2
- db "あいてがわ", $4a, "えらんだ "
- next "いじょう", $4a, "あるようです!!"
- db "@"
-; 102fcc
-
-String_102fcc: ; 102fcc
- db "に@"
-; 102fce
-
-Function102fce: ; 102fce
- call Function102dc3
- ld de, String_102fdb
- hlcoord 1, 14
- call PlaceString
- ret
-; 102fdb
-
-String_102fdb: ; 102fdb
- db "あいてがわ", $25, "せんたくに"
- next "いじょう", $4a, "あるようです!!"
- done
-; 102ff5
-
-Function102ff5: ; 102ff5
- call Function102dc3
- ld de, String_103002
- hlcoord 1, 14
- call PlaceString
- ret
-; 103002
-
-String_103002: ; 103002
- db "その#を こうかんすると"
- next "せんとう できなく なっちゃうよ!"
- db "@"
-; 103021
-
-Function103021: ; 103021
- call Function102dc3
- ld de, String_10302e
- hlcoord 1, 14
- call PlaceString
- ret
-; 10302e
-
-String_10302e: ; 10302e
- db "あいてが ちゅうしを えらんだので"
- next "こうかんを ちゅうし します"
- db "@"
-; 10304f
-
-Function10304f: ; 10304f
- xor a
- ld [AttrMapEnd], a
- ld [wcf42], a
- ld [wcf44], a
- ld [wcf45], a
- ret
-; 10305d
-
-Function10305d: ; 10305d
- nop
- ld a, [AttrMapEnd]
- and a
- ret z
- call Function10307f
- ret c
- call Function103094
- call Function10306e
- ret
-; 10306e
-
-Function10306e: ; 10306e
- ld a, $1
- ld [hOAMUpdate], a
- call ClearSprites
- ld de, Sprites
- call Function1030cd
- xor a
- ld [hOAMUpdate], a
- ret
-; 10307f
-
-Function10307f: ; 10307f
- ld c, $2
- ld hl, wcd4b
- bit 7, [hl]
- jr z, .asm_10308a
- ld c, $1
-
-.asm_10308a
- ld hl, wcf45
- inc [hl]
- ld a, [hl]
- cp c
- ret c
- xor a
- ld [hl], a
- ret
-; 103094
-
-Function103094: ; 103094
- ld hl, wcd4b
- bit 7, [hl]
- jr nz, .asm_1030c0
- ld a, [wcf42]
- bit 7, a
- jr nz, .asm_1030b2
- ld a, [wcf44]
- inc a
- ld [wcf44], a
- cp $2c
- ret nz
- ld hl, wcf42
- set 7, [hl]
- ret
-
-.asm_1030b2
- ld a, [wcf44]
- dec a
- ld [wcf44], a
- ret nz
- ld hl, wcf42
- res 7, [hl]
- ret
-
-.asm_1030c0
- ld hl, wcf44
- ld a, [hl]
- and a
- jr z, .asm_1030ca
- dec a
- ld [hl], a
- ret nz
-
-.asm_1030ca
- ld [hl], $2c
- ret
-; 1030cd
-
-Function1030cd: ; 1030cd
- ld a, [wcf44]
- ld l, a
- ld h, 0
- add hl, hl
- add hl, hl
- add hl, hl
- ld bc, Unknown_103112
- add hl, bc
- ld b, $30
- ld c, $8
-.asm_1030de
- push hl
- ld hl, wcd4b
- bit 7, [hl]
- pop hl
- ld a, $0
- jr z, .asm_1030eb
- ld a, $5
-.asm_1030eb
-
- add [hl]
- inc hl
- push hl
-
- add a
- add a
-
- add Unknown_10327a % $100
- ld l, a
- ld a, Unknown_10327a / $100
- adc 0
- ld h, a
-
- ld a, b
- add [hl]
- inc hl
- ld [de], a
- inc de
- ld a, $a
- add [hl]
- inc hl
- ld [de], a
- inc de
- ld a, [hli]
- ld [de], a
- inc de
- ld a, [hli]
- ld [de], a
- inc de
- pop hl
- ld a, b
- add $8
- ld b, a
- dec c
- jr nz, .asm_1030de
- ret
-; 103112
-
-Unknown_103112: ; 103112
- db $00, $00, $00, $00, $00, $00, $00, $00
- db $00, $00, $00, $00, $00, $00, $00, $00
- db $00, $00, $00, $00, $00, $00, $00, $00
- db $00, $00, $00, $00, $00, $00, $00, $00
- db $00, $00, $00, $00, $00, $00, $00, $00
- db $00, $00, $00, $00, $00, $00, $00, $00
- db $00, $00, $00, $00, $00, $00, $00, $00
- db $00, $00, $00, $00, $00, $00, $00, $00
- db $01, $00, $00, $00, $00, $00, $00, $00
- db $02, $01, $00, $00, $00, $00, $00, $00
- db $03, $02, $01, $00, $00, $00, $00, $00
- db $04, $03, $02, $01, $00, $00, $00, $00
- db $04, $04, $03, $02, $01, $00, $00, $00
- db $04, $04, $04, $03, $02, $01, $00, $00
- db $04, $04, $04, $04, $03, $02, $01, $00
- db $04, $04, $04, $04, $04, $03, $02, $01
- db $04, $04, $04, $04, $04, $04, $03, $02
- db $04, $04, $04, $04, $04, $04, $04, $03
- db $04, $04, $04, $04, $04, $04, $04, $04
- db $04, $04, $04, $04, $04, $04, $04, $04
- db $04, $04, $04, $04, $04, $04, $04, $04
- db $04, $04, $04, $04, $04, $04, $04, $04
- db $04, $04, $04, $04, $04, $04, $04, $04
- db $04, $04, $04, $04, $04, $04, $04, $04
- db $04, $04, $04, $04, $04, $04, $04, $04
- db $04, $04, $04, $04, $04, $04, $04, $04
- db $03, $04, $04, $04, $04, $04, $04, $04
- db $02, $03, $04, $04, $04, $04, $04, $04
- db $01, $02, $03, $04, $04, $04, $04, $04
- db $00, $01, $02, $03, $04, $04, $04, $04
- db $00, $00, $01, $02, $03, $04, $04, $04
- db $00, $00, $00, $01, $02, $03, $04, $04
- db $00, $00, $00, $00, $01, $02, $03, $04
- db $00, $00, $00, $00, $00, $01, $02, $03
- db $00, $00, $00, $00, $00, $00, $01, $02
- db $00, $00, $00, $00, $00, $00, $00, $01
- db $00, $00, $00, $00, $00, $00, $00, $00
- db $00, $00, $00, $00, $00, $00, $00, $00
- db $00, $00, $00, $00, $00, $00, $00, $00
- db $00, $00, $00, $00, $00, $00, $00, $00
- db $00, $00, $00, $00, $00, $00, $00, $00
- db $00, $00, $00, $00, $00, $00, $00, $00
- db $00, $00, $00, $00, $00, $00, $00, $00
- db $00, $00, $00, $00, $00, $00, $00, $00
- db $00, $00, $00, $00, $00, $00, $00, $00
-; 10327a
-
-Unknown_10327a: ; 10327a
- db $00, $00, $00, $00
- db $00, $00, $01, $00
- db $00, $00, $02, $00
- db $00, $00, $03, $00
- db $00, $00, $01, $01
- db $00, $00, $00, $00
- db $00, $00, $01, $02
- db $00, $00, $02, $02
- db $00, $00, $03, $02
- db $00, $00, $01, $03
-
-GFX_1032a2:
-INCBIN "gfx/unknown/1032a2.2bpp"
-
-Unknown_1032e2:
- db $00, $00, $ff, $1f
- db $f4, $1b, $8d, $42
- db $00, $00, $67, $45
- db $00, $00, $00, $00
- db $00, $00, $1f, $13
- db $99, $01, $ff, $10
- db $00, $00, $19, $00
- db $00, $00, $00, $00
-; 103302
-
-Function103302: ; 103302
- call Function103309
- call Function103362
- ret
-; 103309
-
-Function103309: ; 103309
- xor a
- ld [hBGMapMode], a
- ld hl, Buffer1
- ld bc, $000a
- xor a
- call ByteFill
- ld a, $4
- call GetSRAMBank
- ld a, [wdc41]
- ld [$a60c], a
- ld [Buffer1], a
- call CloseSRAM
- call Function1035c6
- ld a, [hli]
- ld e, a
- ld a, [hli]
- ld d, a
- ld a, [hli]
- ld c, a
- ld a, [hli]
- ld b, a
- ld a, [hli]
- ld [wd1ef], a
- ld a, [hli]
- ld [wd1ec], a
- ld a, [hli]
- ld [wd1ed], a
- ld h, d
- ld l, e
- call Function3eea
- ld hl, wd1ec
- ld a, [hli]
- ld h, [hl]
- ld l, a
- ld a, [hl]
- ld [wd1ee], a
- call Function1034be
- call Function1ad2
- callba Function104000
- ld a, $1
- ld [wd1f0], a
- call Function10339a
- ret
-; 103362
-
-Function103362: ; 103362
-.asm_103362
- ld a, [wd1f0]
- ld [wd1f1], a
- call Function1033af
- call Function10339a
- call Function10342c
- callba Function10402d
- ld a, [Buffer2]
- bit 7, a
- jr z, .asm_103362
- ld hl, Buffer2
- bit 6, [hl]
- jr z, .asm_103398
- ld a, $4
- call GetSRAMBank
- ld a, [Buffer1]
- ld [$a60c], a
- ld [wdc41], a
- call CloseSRAM
- xor a
- ret
-
-.asm_103398
- scf
- ret
-; 10339a
-
-Function10339a: ; 10339a
- ld a, [wd1f0]
- ld [wd1f2], a
- ld c, a
- ld b, $0
- ld hl, wd1ec
- ld a, [hli]
- ld h, [hl]
- ld l, a
- add hl, bc
- ld a, [hl]
- ld [wd1f3], a
- ret
-; 1033af
-
-Function1033af: ; 1033af
- call GetJoypad
- ld a, [hJoyPressed]
- bit 5, a
- jr nz, .left
- bit 4, a
- jr nz, .right
- bit 1, a
- jr nz, .b
- bit 0, a
- jr nz, .a
- bit 6, a
- jr nz, .up
- bit 7, a
- jr nz, .down
- ret
-
-.up
- ld a, [wd1f0]
- dec a
- ld [wd1f0], a
- cp $1
- ret nc
- ld a, [wd1ee]
- ld [wd1f0], a
- ret
-
-.down
- ld a, [wd1f0]
- inc a
- ld [wd1f0], a
- ld c, a
- ld a, [wd1ee]
- cp c
- ret nc
- ld a, $1
- ld [wd1f0], a
- ret
-
-.b
- call PlayClickSFX
- ld hl, Buffer2
- set 7, [hl]
- ret
-
-.a
- ld a, [wd1f3]
- cp $3
- jr nz, .asm_103412
- ld de, SFX_TRANSACTION
- call PlaySFX
- ld hl, Buffer2
- set 7, [hl]
- ld hl, Buffer2
- set 6, [hl]
- ret
-
-.left
-.right
-.asm_103412
- ld a, [wd1f3]
- cp $3
- ret z
- ld de, SFX_PUSH_BUTTON
- call PlaySFX
- ld bc, $0008
- call Function10350f
- ld a, [Buffer1]
- xor e
- ld [Buffer1], a
- ret
-; 10342c
-
-Function10342c: ; 10342c
- ld a, [wd1f0]
- ld [wd1f2], a
- call Function103490
- call Function10343c
- call Function1034a7
- ret
-; 10343c
-
-Function10343c: ; 10343c
- ld a, [wd1f3]
- cp $2
- jr nz, .asm_103452
- ld bc, $0001
- call Function1034f7
- ld c, $12
- ld b, $1
- call Function1034e0
- jr .asm_10345f
-
-.asm_103452
- ld bc, $ffed
- call Function1034f7
- ld c, $12
- ld b, $2
- call Function1034e0
-
-.asm_10345f
- ld bc, $0000
- call Function10350f
- ld bc, $0001
- call Function103487
- ld bc, $0008
- call Function10350f
- ld a, [Buffer1]
- and e
- ld bc, $0002
- jr z, .asm_10347d
- ld bc, $0004
-
-.asm_10347d
- call Function10350f
- ld bc, $000b
- call Function103487
- ret
-; 103487
-
-Function103487: ; 103487
- push de
- call Function1034f7
- pop de
- call PlaceString
- ret
-; 103490
-
-Function103490: ; 103490
- hlcoord 0, 15
- ld c, $14
- ld b, $3
- call Function1034e0
- ld bc, $0006
- call Function10350f
- hlcoord 1, 16
- call PlaceString
- ret
-; 1034a7
-
-Function1034a7: ; 1034a7
- ld a, [wd1f1]
- ld [wd1f2], a
- ld bc, $000a
- call Function1034f7
- ld [hl], $7f
- ld bc, $000a
- call Function1034f1
- ld [hl], $ed
- ret
-; 1034be
-
-Function1034be: ; 1034be
- ld a, $1
- ld [wd1f2], a
- ld hl, wd1ec
- ld a, [hli]
- ld h, [hl]
- ld l, a
- ld a, [hli]
-.asm_1034ca
- push af
- ld a, [hli]
- push hl
- ld [wd1f3], a
- call Function10343c
- ld hl, wd1f2
- inc [hl]
- pop hl
- pop af
- dec a
- jr nz, .asm_1034ca
- call Function103490
- ret
-; 1034e0
-
-Function1034e0: ; 1034e0
- push bc
- push hl
- call ClearBox
- pop hl
- ld bc, AttrMap - TileMap
- add hl, bc
- pop bc
- ld a, $6
- call Functionfb8
- ret
-; 1034f1
-
-Function1034f1: ; 1034f1
- ld a, [wd1f0]
- ld [wd1f2], a
-
-Function1034f7: ; 10134f7
- ld hl, TileMap
- add hl, bc
- ld a, [wd1ef]
- ld bc, SCREEN_WIDTH
- call AddNTimes
- ld a, [wd1f2]
- dec a
- ld bc, 40
- call AddNTimes
- ret
-; 10350f
-
-Function10350f: ; 10350f
- ld a, [wd1f3]
- push bc
- ld hl, Unknown_103522
- ld bc, $0009
- call AddNTimes
- pop bc
- add hl, bc
- ld a, [hli]
- ld d, [hl]
- ld e, a
- ret
-; 103522
-
-Unknown_103522: ; 103522
- dw String_103546
- dw String_103598
- dw String_1035a0
- dw String_10355f
- db $1
- dw String_10354f
- dw String_1035a8
- dw String_1035b1
- dw String_103571
- db $2
- dw String_103557
- dw String_1035ba
- dw String_1035bd
- dw String_103585
- db $4
- dw String_103545
- dw String_1035c1
- dw String_1035c1
- dw String_103545
-
-String_103545: db "@"
-String_103546: db "せんとう アニメ@"
-String_10354f: db "でんわばんごう@"
-String_103557: db "めいしこうかん@"
-String_10355f: db "でんわを かけるひとが きめられる@"
-String_103571: db "でんわばんごうの にゅうりょくのしかた@"
-String_103585: db "あたらしいめいしが あれば こうかん@"
-String_103598: db "とばして みる@"
-String_1035a0: db "じっくり みる@"
-String_1035a8: db "めいしからえらぶ@"
-String_1035b1: db "すうじで いれる@"
-String_1035ba: db "する@"
-String_1035bd: db "しない@"
-String_1035c1: db "けってい@"
-; 1035c6
-
-Function1035c6: ; 1035c6
- callba Function10138b
- ld b, 0
- ld hl, Unknown_1035d7
- add hl, bc
- add hl, bc
- ld a, [hli]
- ld h, [hl]
- ld l, a
- ret
-; 1035d7
-
-Unknown_1035d7: ; 1035d7
- dw Unknown_1035e7
- dw Unknown_1035f3
- dw Unknown_103608
- dw Unknown_103608
- dw Unknown_1035fe
-
- dw Function103612
- dw Function103612
- dw Function103612
-
-Unknown_1035e7: ; 1035e7
- dwcoord 0, 6
- db $12, $07, $07
- dw .this
-.this
- db 4, 2, 1, 0, 3
-
-Unknown_1035f3: ; 1035f3
- dwcoord 0, 7
- db $12, $06, $09
- dw .this
-.this
- db 3, 2, 1, 3
-
-Unknown_1035fe: ; 1035fe
- dwcoord 0, 9
- db $12, $04, $0b
- dw .this
-.this
- db 2, 0, 3
-
-Unknown_103608: ; 103608
- dwcoord 0, 9
- db $12, $04, $0b
- dw .this
-.this
- db 2, 2, 3
-; 103612
-
-Function103612: ; 103612
- ld hl, MenuDataHeader_103640
- call LoadMenuDataHeader
- ld a, [wdc40]
- and $f
- jr z, .asm_103622
- ld [wcf88], a
-
-.asm_103622
- call Function1d81
- call Function1c17
- jr c, .asm_10363b
- ld a, [wcfa9]
- ld [ScriptVar], a
- ld c, a
- ld a, [wdc40]
- and $f0
- or c
- ld [wdc40], a
- ret
-
-.asm_10363b
- xor a
- ld [ScriptVar], a
- ret
-; 103640
-
-MenuDataHeader_103640: ; 103640
- db $40 ; flags
- db 6, 13 ; start coords
- db 11, 19 ; end coords
- dw MenuData2_103648
- db 1 ; default option
-
-MenuData2_103648: ; 103648
- db $80 ; flags
- db 2
- db "モバイル@"
- db "ケーブル@"
-; 103654
-
-Function103654: ; 103654
- callba Function10632f
- bit 7, c
- jr nz, .asm_103666
- ld hl, wcd2a
- res 5, [hl]
- ld c, $2
- ret
-
-.asm_103666
- ld hl, wcd2a
- set 5, [hl]
- ld c, $1
- ret
-; 10366e
-
-Function10366e: ; 10366e
- callba Function10632f
- bit 7, c
- jr z, .asm_10369b
- ld hl, UnknownText_0x10375d
- call PrintText
- call YesNoBox
- jr c, .asm_103696
- callba Function8b1e1
- jr nc, .asm_103690
- call Functiona36
- jr .asm_103696
-
-.asm_103690
- ld a, $1
- ld [ScriptVar], a
- ret
-
-.asm_103696
- xor a
- ld [ScriptVar], a
- ret
-
-.asm_10369b
- ld hl, wdc40
- bit 7, [hl]
- set 7, [hl]
- jr nz, .asm_1036b5
- ld hl, UnknownText_0x103762
- call PrintText
- call YesNoBox
- jr c, .asm_1036b5
- call Function1036f9
- call Functiona36
-
-.asm_1036b5
- call Function103700
- jr c, .asm_1036f4
- ld hl, MenuDataHeader_103747
- call LoadMenuDataHeader
- call Function1d81
- call Function1c07
- jr c, .asm_1036f4
- ld a, [wcfa9]
- cp $1
- jr z, .asm_1036d9
- cp $2
- jr z, .asm_1036f4
- cp $3
- jr z, .asm_1036ec
- jr .asm_1036b5
-
-.asm_1036d9
- callba Function8b1e1
- jr nc, .asm_1036e6
- call Functiona36
- jr .asm_1036f4
-
-.asm_1036e6
- ld a, $1
- ld [ScriptVar], a
- ret
-
-.asm_1036ec
- call Function1036f9
- call Functiona36
- jr .asm_1036b5
-
-.asm_1036f4
- xor a
- ld [ScriptVar], a
- ret
-; 1036f9
-
-Function1036f9: ; 1036f9
- ld hl, UnknownText_0x103767
- call PrintText
- ret
-; 103700
-
-Function103700: ; 103700
- ld c, $a
- ld hl, wdc20
- bit 4, [hl]
- jr z, .asm_10370f
- callba Function1008a6
-
-.asm_10370f
- ld a, c
- ld [StringBuffer2], a
- ld a, [StringBuffer2]
- cp $5
- jr nc, .asm_103724
- cp $2
- jr nc, .asm_10372c
- cp $1
- jr nc, .asm_103734
- jr .asm_10373c
-
-.asm_103724
- ld hl, UnknownText_0x10376c
- call PrintText
- and a
- ret
-
-.asm_10372c
- ld hl, UnknownText_0x103771
- call PrintText
- and a
- ret
-
-.asm_103734
- ld hl, UnknownText_0x103776
- call PrintText
- and a
- ret
-
-.asm_10373c
- ld hl, UnknownText_0x10377b
- call PrintText
- call Functiona36
- scf
- ret
-; 103747
-
-MenuDataHeader_103747: ; 103747
- db $40 ; flags
- db 5, 13 ; start coords
- db 11, 19 ; end coords
- dw MenuData2_10374f
- db 1 ; default option
-
-MenuData2_10374f: ; 10374f
- db $c0 ; flags
- db 3
- db "はい@"
- db "やめる@"
- db "せつめい@"
-; 10375d
-
-UnknownText_0x10375d: ; 0x10375d
- text_jump UnknownText_0x1c422a
- db "@"
-; 0x103762
-UnknownText_0x103762: ; 0x103762
- text_jump UnknownText_0x1c4275
- db "@"
-; 0x103767
-UnknownText_0x103767: ; 0x103767
- text_jump UnknownText_0x1c4298
- db "@"
-; 0x10376c
-UnknownText_0x10376c: ; 0x10376c
- text_jump UnknownText_0x1c439c
- db "@"
-; 0x103771
-UnknownText_0x103771: ; 0x103771
- text_jump UnknownText_0x1c43dc
- db "@"
-; 0x103776
-UnknownText_0x103776: ; 0x103776
- text_jump UnknownText_0x1c4419
- db "@"
-; 0x10377b
-UnknownText_0x10377b: ; 0x10377b
- text_jump UnknownText_0x1c445a
- db "@"
-; 0x103780
-
-Function103780: ; 103780
- ld a, [wd265]
- push af
- call Function10378c
- pop af
- ld [wd265], a
- ret
-; 10378c
-
-Function10378c: ; 10378c
- ld c, $0
- ld hl, wdc20
- bit 4, [hl]
- jr nz, .asm_10379c
- ld c, $1
- ld hl, wdc20
- set 4, [hl]
-
-.asm_10379c
- push bc
- callba Function14ab2
- pop bc
- jr c, .asm_1037b5
- ld a, $1
- ld [ScriptVar], a
- ld a, c
- and a
- ret z
- callba Function1006fd
- ret
-
-.asm_1037b5
- xor a
- ld [ScriptVar], a
- ld a, c
- and a
- ret z
- ld hl, wdc20
- res 4, [hl]
- ret
-; 1037c2
-
-Function1037c2: ; 1037c2
- call Function103823
- jr c, .asm_1037de
- ld a, [wdc5f]
- and a
- jr z, .asm_1037de
- ld hl, UnknownText_0x1037e6
- call PrintText
- call YesNoBox
- jr c, .asm_1037de
- ld a, $1
- ld [ScriptVar], a
- ret
-
-.asm_1037de
- xor a
- ld [wdc5f], a
- ld [ScriptVar], a
- ret
-; 1037e6
-
-UnknownText_0x1037e6: ; 0x1037e6
- text_jump UnknownText_0x1c449c
- db "@"
-; 0x1037eb
-
-Function1037eb: ; 1037eb
- call Function103823
- jr nc, .asm_103807
- ld hl, UnknownText_0x103819
- call PrintText
- call Functiona36
- ld hl, UnknownText_0x10381e
- call PrintText
- call Functiona36
- xor a
- ld [ScriptVar], a
- ret
-
-.asm_103807
- ld a, [wdc60]
- and a
- jr nz, .asm_103813
- ld a, $1
- ld [ScriptVar], a
- ret
-
-.asm_103813
- ld a, $2
- ld [ScriptVar], a
- ret
-; 103819
-
-UnknownText_0x103819: ; 0x103819
- text_jump UnknownText_0x1c44c0
- db "@"
-; 0x10381e
-
-UnknownText_0x10381e: ; 0x10381e
- text_jump UnknownText_0x1c44e7
- db "@"
-; 0x103823
-
-Function103823: ; 103823
- callba Function10632f
- bit 7, c
- jr nz, .asm_103838
- callba Function1008a6
- ld a, c
- cp $1
- jr c, .asm_10383a
-
-.asm_103838
- xor a
- ret
-
-.asm_10383a
- scf
- ret
-; 10383c
-
-Function10383c: ; 10383c
- ld a, $1
- ld [wdc60], a
- xor a
- ld hl, wdc5c
- ld [hli], a
- ld [hli], a
- ld [hl], a
- ld hl, UnknownText_0x103876
- call PrintText
- call Functiona36
- callba Script_reloadmappart
- callba Function4a94e
- jr c, .asm_103870
- ld hl, DefaultFlypoint
- ld de, wdc5c
- ld bc, $0003
- call CopyBytes
- xor a
- ld [ScriptVar], a
- ret
-
-.asm_103870
- ld a, $1
- ld [ScriptVar], a
- ret
-; 103876
-
-UnknownText_0x103876: ; 0x103876
- text_jump UnknownText_0x1c4508
- db "@"
-; 0x10387b
-
-Function10387b: ; 10387b
- callba Function10632f
- bit 7, c
- ret nz
- callba Function1008a6
- ld a, c
- ld [StringBuffer2], a
- ld hl, UnknownText_0x103898
- call PrintText
- call Functiona36
- ret
-; 103898
-
-UnknownText_0x103898: ; 0x103898
- text_jump UnknownText_0x1c4525
- db "@"
-; 0x10389d
+INCLUDE "misc/mobile_40.asm"
SECTION "bank41", ROMX, BANK[$41]
@@ -111912,6 +94405,8 @@ UpdateUsedMoves: ; 105ed0
+SECTION "bank41_2", ROMX, BANK[$41]
+
Mobile_HallOfFame2:: mobile ; 0x105ef6
ld a, $5
call GetSRAMBank
@@ -112996,26593 +95491,23 @@ GFX_1065ad:
INCBIN "gfx/unknown/1065ad.2bpp"
-SECTION "bank42", ROMX, BANK[$42]
-
-Function108000: ; 108000
- ld a, $80
- ld [wcf65], a
- ld de, Unknown_10800b
- jp Function108089
-; 10800b
-
-Unknown_10800b:
-INCBIN "baserom.gbc", $10800b, $108012 - $10800b
-
-Function108012:
- ld a, $80
- jr asm_108018
-
-Function108016: ; 108016
- ld a, $0
-asm_108018:
- ld [wcf65], a
- ld de, Unknown_108021
- jp Function108089
-; 108021
-
-Unknown_108021:
-INCBIN "baserom.gbc", $108021, $108026 - $108021
-
-Function108026: ; 108026
- ld a, $0
- jr asm_10802c
-
-Function10802a: ; 10802a
- ld a, $1
-
-asm_10802c:
- ld [wcf65], a
- ld de, Unknown_108035
- jp Function10805b
-; 108035
-
-Unknown_108035:
-INCBIN "baserom.gbc", $108035, $10803d - $108035
-
-Function10803d: ; 10803d
- ld a, $0
- ld [wcf65], a
- ld de, Unknown_108048
- jp Function108089
-; 108048
-
-Unknown_108048:
-INCBIN "baserom.gbc", $108048, $10804d - $108048
-
-Function10804d: ; 10804d
- ld a, $0
- ld [wcf65], a
- ld de, Unknown_108058
- jp Function108089
-; 108058
-
-Unknown_108058:
-INCBIN "baserom.gbc", $108058, $10805b - $108058
-
-Function10805b: ; 10805b
- ld hl, wc734
- ld [hl], e
- inc hl
- ld [hl], d
- ld a, [$ffde]
- push af
- xor a
- ld [$ffde], a
- ld hl, VramState
- ld a, [hl]
- push af
- res 0, [hl]
- ld hl, Options
- ld a, [hl]
- push af
- set 4, [hl]
- call Function1080b7
-.asm_108078
- call Function10824b
- jr nc, .asm_108078
- pop af
- ld [Options], a
- pop af
- ld [VramState], a
- pop af
- ld [$ffde], a
- ret
-; 108089
-
-Function108089: ; 108089
- ld hl, BattleEnded
- ld [hl], e
- inc hl
- ld [hl], d
- ld a, [$ffde]
- push af
- xor a
- ld [$ffde], a
- ld hl, VramState
- ld a, [hl]
- push af
- res 0, [hl]
- ld hl, Options
- ld a, [hl]
- push af
- set 4, [hl]
- call Function108157
-.asm_1080a6
- call Function10824b
- jr nc, .asm_1080a6
- pop af
- ld [Options], a
- pop af
- ld [VramState], a
- pop af
- ld [$ffde], a
- ret
-; 1080b7
-
-Function1080b7: ; 1080b7
- xor a
- ld [wcf63], a
- call WhiteBGMap
- call ClearSprites
- call ClearTileMap
- call DisableLCD
- call Function1081ad
- call Function1081ca
- call Functione51
- call Functione58
- ld a, $1
- ld [rVBK], a
- ld hl, LZ_108da7
- ld de, VTiles2
- call Decompress
- ld a, $0
- ld [rVBK], a
- ld hl, LZ_108d27
- ld de, $8200
- call Decompress
- call EnableLCD
- xor a
- ld [hSCX], a
- ld [hSCY], a
- ld a, $7
- ld [hWX], a
- ld a, $90
- ld [hWY], a
- callba Function8cf53
- call DelayFrame
- ld de, TradeBallGFX
- ld hl, VTiles0
- lb bc, BANK(TradeBallGFX), $06
- call Request2bpp
- ld de, TradePoofGFX
- ld hl, $8060
- lb bc, BANK(TradePoofGFX), $0c
- call Request2bpp
- xor a
- ld hl, wc300
- ld [hli], a
- ld [hl], $0
- ld a, [$c6d0]
- ld hl, $c6fd
- ld de, $8300
- call Function1081e9
- ld a, [wc702]
- ld hl, wc72f
- ld de, $9310
- call Function1081e9
- ld a, [$c6d0]
- ld de, $c6d1
- call Function108239
- ld a, [wc702]
- ld de, wc703
- call Function108239
- xor a
- call Function108b98
- call Function108af4
- ret
-; 108157
-
-Function108157: ; 108157
- xor a
- ld [wcf63], a
- call WhiteBGMap
- call ClearSprites
- call ClearTileMap
- call DisableLCD
- call Function1081ad
- call Function1081ca
- call Functione51
- call Functione58
- call EnableLCD
- xor a
- ld [hSCX], a
- ld [hSCY], a
- ld a, $7
- ld [hWX], a
- ld a, $90
- ld [hWY], a
- callba Function8cf53
- xor a
- ld hl, wc300
- ld [hli], a
- ld [hl], $0
- call DelayFrame
- ld a, [$c6d0]
- ld de, $c6d1
- call Function108239
- ld a, [wc702]
- ld de, wc703
- call Function108239
- xor a
- call Function108b98
- call Function108af4
- ret
-; 1081ad
-
-Function1081ad: ; 1081ad
- ld a, $1
- ld [rVBK], a
- ld hl, VTiles0
- ld bc, $1800
- xor a
- call ByteFill
- ld a, $0
- ld [rVBK], a
- ld hl, VTiles0
- ld bc, $1800
- xor a
- call ByteFill
- ret
-; 1081ca
-
-Function1081ca: ; 1081ca
- ld a, $1
- ld [rVBK], a
- ld hl, VBGMap0
- ld bc, $0800
- ld a, $0
- call ByteFill
- ld a, $0
- ld [rVBK], a
- ld hl, VBGMap0
- ld bc, $0800
- ld a, $7f
- call ByteFill
- ret
-; 1081e9
-
-Function1081e9: ; 1081e9
- push de
- push af
- predef GetUnownLetter
- pop af
- ld [CurPartySpecies], a
- ld [CurSpecies], a
- call GetBaseData
- pop de
- predef GetFrontpic
- ret
-; 108201
-
-Function108201: ; 108201
- push de
- push af
- predef GetUnownLetter
- pop af
- ld [CurPartySpecies], a
- ld [CurSpecies], a
- call GetBaseData
- pop de
- predef Function5108b
- ret
-; 108219
-
-Function108219: ; 108219
- ld [CurPartySpecies], a
- hlcoord 7, 2
- ld d, $0
- ld e, $3
- predef Functiond008e
- ret
-; 108229
-
-Function108229: ; 108229
- ld [CurPartySpecies], a
- hlcoord 7, 2
- ld d, $0
- ld e, $3
- predef Functiond00a3
- ret
-; 108239
-
-Function108239: ; 108239
- push de
- ld [wd265], a
- call GetPokemonName
- ld hl, StringBuffer1
- pop de
- ld bc, $000b
- call CopyBytes
- ret
-; 10824b
-
-Function10824b: ; 10824b
- ld a, [wcf63]
- bit 7, a
- jr nz, .asm_10825a
- call Function10827b
- call DelayFrame
- and a
- ret
-
-.asm_10825a
- xor a
- ld [hSCX], a
- ld [hSCY], a
- ld a, $7
- ld [hWX], a
- ld a, $90
- ld [hWY], a
- call Functione51
- call Functione58
- callba Function106462
- callba Function106464
- scf
- ret
-; 10827b
-
-Function10827b: ; 10827b
- ld a, [wcf63]
- ld e, a
- ld d, 0
- ld hl, Jumptable_10828a
- add hl, de
- add hl, de
- ld a, [hli]
- ld h, [hl]
- ld l, a
- jp [hl]
-; 10828a
-
-Jumptable_10828a: ; 10828a
- dw Function1082b7
- dw Function10830e
- dw Function108638
- dw Function108763
- dw Function1087cf
- dw Function108811
- dw Function108838
- dw Function10884c
- dw Function108863
- dw Function108894
- dw Function10890a
- dw Function10839b
- dw Function1082c6
- dw Function10842c
- dw Function1084d7
- dw Function108919
- dw Function108689
- dw Function1086f4
- dw Function10893d
- dw Function108589
-; 1082b2
-
-Function1082b2: ; 1082b2
- ld hl, wcf63
- inc [hl]
- ret
-; 1082b7
-
-Function1082b7: ; 1082b7
- ld hl, wc734
- ld e, [hl]
- inc hl
- ld d, [hl]
- ld a, [de]
- ld [wcf63], a
- inc de
- ld [hl], d
- dec hl
- ld [hl], e
- ret
-; 1082c6
-
-Function1082c6: ; 1082c6
- ld hl, wcf63
- set 7, [hl]
- ret
-; 1082cc
-
-Function1082cc: ; 1082cc
-.asm_1082cc
- push bc
- callba Function8cf69
- pop bc
- call DelayFrame
- dec c
- jr nz, .asm_1082cc
- ret
-; 1082db
-
-Function1082db: ; 1082db
-.asm_1082db
- callba Function8cf69
- callba Functiond00b4
- callba Function10402d
- jr nc, .asm_1082db
- ret
-; 1082f0
-
-Function1082f0: ; 1082f0
-.asm_1082f0
- call Function108b78
- call DelayFrame
- dec c
- jr nz, .asm_1082f0
- ret
-; 1082fa
-
-Function1082fa: ; 1082fa
-.asm_1082fa
- call Function108b78
- push hl
- push bc
- callba Function8cf69
- pop bc
- pop hl
- call DelayFrame
- dec c
- jr nz, .asm_1082fa
- ret
-; 10830e
-
-Function10830e: ; 10830e
- ld de, MUSIC_EVOLUTION
- call PlayMusic2
- ld a, $80
- ld [hSCX], a
- xor a
- ld [hSCY], a
- ld a, $87
- ld [hWX], a
- ld a, $50
- ld [hWY], a
- call Function1089a8
- ld a, [$c6d0]
- ld [CurPartySpecies], a
- call Function10895e
- ld a, [$c6fd]
- ld [TempMonDVs], a
- ld a, [$c6fe]
- ld [TempMonDVs + 1], a
- ld b, $1a
- call GetSGBLayout
- ld a, $e4
- call DmgToCgbBGPals
- call WaitBGMap
-.asm_108348
- ld a, [hWX]
- cp $7
- jr z, .asm_10835d
- sub $4
- ld [hWX], a
- ld a, [hSCX]
- sub $4
- ld [hSCX], a
- call DelayFrame
- jr .asm_108348
-
-.asm_10835d
- ld a, $7
- ld [hWX], a
- xor a
- ld [hSCX], a
- ld a, [$c6d0]
- call GetCryIndex
- jr c, .asm_108371
- ld e, c
- ld d, b
- call PlayCryHeader
-
-.asm_108371
- ld c, $50
- call DelayFrames
- call Function108bec
- lb de, $54, $58
- ld a, $20
- call Function3b2a
- ld de, SFX_BALL_POOF
- call PlaySFX
- ld hl, TileMap
- ld bc, $00f0
- ld a, $7f
- call ByteFill
- ld c, $50
- call Function1082cc
- call Function1082b7
- ret
-; 10839b
-
-Function10839b: ; 10839b
- call WhiteBGMap
- call ClearSprites
- call ClearTileMap
- call DisableLCD
- call Function1081ca
- ld a, [wc702]
- ld [CurPartySpecies], a
- ld hl, wc72f
- ld de, VTiles2
- call Function108201
- call EnableLCD
- callba Function8d03d
- xor a
- ld [hSCX], a
- ld [hSCY], a
- ld a, $7
- ld [hWX], a
- ld a, $90
- ld [hWY], a
- lb de, $54, $58
- ld a, $21
- call Function3b2a
- call Function108b45
- ld a, $1
- call Function108b98
- call Function108af4
- ld c, $30
- call Function1082cc
- ld de, SFX_BALL_POOF
- call PlaySFX
- call Function1089d2
- xor a
- ld [hSCX], a
- ld [hSCY], a
- ld a, $7
- ld [hWX], a
- ld a, $50
- ld [hWY], a
- ld a, [wc702]
- ld [CurPartySpecies], a
- ld a, [wc72f]
- ld [TempMonDVs], a
- ld a, [wc730]
- ld [TempMonDVs + 1], a
- ld b, $1a
- call GetSGBLayout
- ld a, $e4
- call DmgToCgbBGPals
- call Function108963
- ld a, [wc702]
- call Function108229
- call Function1082db
- call Function108c16
- call Function1082b7
- ret
-; 10842c
-
-Function10842c: ; 10842c
- ld de, MUSIC_EVOLUTION
- call PlayMusic2
- ld a, $80
- ld [hSCX], a
- xor a
- ld [hSCY], a
- ld a, $87
- ld [hWX], a
- ld a, $50
- ld [hWY], a
- call Function1089a8
- ld a, [$c6d0]
- ld [CurPartySpecies], a
- ld hl, $c6fd
- call Function10898a
- call DelayFrame
- ld de, TradeBallGFX
- ld hl, VTiles0
- lb bc, BANK(TradeBallGFX), $06
- call Request2bpp
- ld de, TradePoofGFX
- ld hl, $8060
- lb bc, BANK(TradePoofGFX), $0c
- call Request2bpp
- ld a, [$c6fd]
- ld [TempMonDVs], a
- ld a, [$c6fe]
- ld [TempMonDVs + 1], a
- ld b, $1a
- call GetSGBLayout
- ld a, $e4
- call DmgToCgbBGPals
- call WaitBGMap
-.asm_108484
- ld a, [hWX]
- cp $7
- jr z, .asm_108499
- sub $4
- ld [hWX], a
- ld a, [hSCX]
- sub $4
- ld [hSCX], a
- call DelayFrame
- jr .asm_108484
-
-.asm_108499
- ld a, $7
- ld [hWX], a
- xor a
- ld [hSCX], a
- ld a, [$c6d0]
- call GetCryIndex
- jr c, .asm_1084ad
- ld e, c
- ld d, b
- call PlayCryHeader
-
-.asm_1084ad
- ld c, $50
- call DelayFrames
- call Function108c2b
- lb de, $54, $58
- ld a, $20
- call Function3b2a
- ld de, SFX_BALL_POOF
- call PlaySFX
- ld hl, TileMap
- ld bc, $00f0
- ld a, $7f
- call ByteFill
- ld c, $50
- call Function1082cc
- call Function1082b7
- ret
-; 1084d7
-
-Function1084d7: ; 1084d7
- call WhiteBGMap
- call ClearSprites
- call ClearTileMap
- call DisableLCD
- call Function1081ca
- ld a, [wc702]
- ld [CurPartySpecies], a
- ld hl, wc72f
- ld de, VTiles2
- call Function108201
- call EnableLCD
- callba Function8d03d
- call DelayFrame
- ld de, TradeBallGFX
- ld hl, VTiles0
- lb bc, BANK(TradeBallGFX), $06
- call Request2bpp
- ld de, TradePoofGFX
- ld hl, $8060
- lb bc, BANK(TradePoofGFX), $0c
- call Request2bpp
- xor a
- ld [hSCX], a
- ld [hSCY], a
- ld a, $7
- ld [hWX], a
- ld a, $90
- ld [hWY], a
- lb de, $54, $58
- ld a, $21
- call Function3b2a
- call Function108b45
- ld a, $1
- call Function108b98
- call Function108af4
- ld c, $30
- call Function1082cc
- ld de, SFX_BALL_POOF
- call PlaySFX
- call Function1089d2
- xor a
- ld [hSCX], a
- ld [hSCY], a
- ld a, $7
- ld [hWX], a
- ld a, $50
- ld [hWY], a
- ld a, [wc702]
- ld [CurPartySpecies], a
- ld a, [wc72f]
- ld [TempMonDVs], a
- ld a, [wc730]
- ld [TempMonDVs + 1], a
- ld b, $1a
- call GetSGBLayout
- ld a, $e4
- call DmgToCgbBGPals
- ld a, [wc702]
- ld hl, wc72f
- call Function10898a
- ld a, [wc702]
- call Function108229
- call Function1082db
- call Function108c40
- call Function1082b7
- ret
-; 108589
-
-Function108589: ; 108589
- call WhiteBGMap
- call ClearSprites
- call ClearTileMap
- call DisableLCD
- call Function1081ca
- ld a, [wc702]
- ld [CurPartySpecies], a
- ld hl, wc72f
- ld de, VTiles2
- call Function108201
- call EnableLCD
- callba Function8d03d
- call DelayFrame
- ld de, TradeBallGFX
- ld hl, VTiles0
- lb bc, BANK(TradeBallGFX), $06
- call Request2bpp
- ld de, TradePoofGFX
- ld hl, $8060
- lb bc, BANK(TradePoofGFX), $0c
- call Request2bpp
- xor a
- ld [hSCX], a
- ld [hSCY], a
- ld a, $7
- ld [hWX], a
- ld a, $90
- ld [hWY], a
- lb de, $54, $58
- ld a, $21
- call Function3b2a
- call Function108b45
- ld a, $1
- call Function108b98
- call Function108af4
- ld c, $30
- call Function1082cc
- ld de, SFX_BALL_POOF
- call PlaySFX
- call Function108a33
- xor a
- ld [hSCX], a
- ld [hSCY], a
- ld a, $7
- ld [hWX], a
- ld a, $50
- ld [hWY], a
- ld a, [wc702]
- ld [CurPartySpecies], a
- ld a, [wc72f]
- ld [TempMonDVs], a
- ld a, [wc730]
- ld [TempMonDVs + 1], a
- ld b, $1a
- call GetSGBLayout
- ld a, $e4
- call DmgToCgbBGPals
- ld a, [wc702]
- ld hl, wc72f
- call Function10898a
- ld a, [wc702]
- call Function108229
- call Function1082db
- call Function1082b7
- ret
-; 108638
+INCLUDE "misc/mobile_42.asm"
-Function108638: ; 108638
- callba Function8d03d
- call WhiteBGMap
- call ClearSprites
- call ClearTileMap
- xor a
- ld [hBGMapMode], a
- call DisableLCD
- call Function1081ca
- call Function108c80
- call Function108c6d
- call EnableLCD
- ld a, $c
- ld [hSCX], a
- ld a, $78
- ld [hSCY], a
- ld a, $7
- ld [hWX], a
- ld a, $90
- ld [hWY], a
- ld a, [rSVBK]
- push af
- ld a, $5
- ld [rSVBK], a
- ld hl, Palette_109107
- ld de, Unkn1Pals
- ld bc, $0040
- call CopyBytes
- pop af
- ld [rSVBK], a
- call Function108d07
- call Function108af4
- call Function1082b7
- ret
-; 108689
-Function108689: ; 108689
- callba Function8d03d
- call WhiteBGMap
- call ClearSprites
- call ClearTileMap
- xor a
- ld [hBGMapMode], a
- call DisableLCD
- call Function1081ca
- ld a, $1
- ld [rVBK], a
- ld hl, LZ_108da7
- ld de, VTiles2
- call Decompress
- ld a, $0
- ld [rVBK], a
- ld hl, LZ_108d27
- ld de, $8200
- call Decompress
- call Function108c80
- call Function108c6d
- call EnableLCD
- ld a, $c
- ld [hSCX], a
- ld a, $78
- ld [hSCY], a
- ld a, $7
- ld [hWX], a
- ld a, $90
- ld [hWY], a
- ld a, [rSVBK]
- push af
- ld a, $5
- ld [rSVBK], a
- ld hl, Palette_109107
- ld de, Unkn1Pals
- ld bc, $0040
- call CopyBytes
- pop af
- ld [rSVBK], a
- call Function108d07
- call Function108af4
- call Function1082b7
- ret
-; 1086f4
-
-Function1086f4: ; 1086f4
- call WhiteBGMap
- call ClearSprites
- call ClearTileMap
- xor a
- ld [hBGMapMode], a
- call DisableLCD
- ld a, $1
- ld [rVBK], a
- ld hl, LZ_108da7
- ld de, VTiles2
- call Decompress
- ld a, $0
- ld [rVBK], a
- ld hl, LZ_108d27
- ld de, $8200
- call Decompress
- call Function108c80
- call Function108c6d
- call EnableLCD
- ld a, $80
- ld [hSCX], a
- ld a, $90
- ld [hSCY], a
- ld a, $7
- ld [hWX], a
- ld a, $90
- ld [hWY], a
- ld a, [rSVBK]
- push af
- ld a, $5
- ld [rSVBK], a
- ld hl, Palette_109107
- ld de, Unkn1Pals
- ld bc, $0040
- call CopyBytes
- pop af
- ld [rSVBK], a
- call Function108d07
- call Function108af4
- call Function108b5a
- ld a, $e0
- ld [hSCX], a
- ld de, MUSIC_EVOLUTION
- call PlayMusic2
- call Function1082b7
- ret
-; 108763
-
-Function108763: ; 108763
- ld de, SFX_GIVE_TRADEMON
- call PlaySFX
- ld c, $28
- ld hl, $d0b0
- call Function1082f0
- call Function108af4
-.asm_108774
- ld a, [hSCX]
- cp $e0
- jr z, .asm_108791
- dec a
- dec a
- ld [hSCX], a
- cp $f8
- jr nz, .asm_10878a
- lb de, $54, $58
- ld a, $22
- call Function3b2a
-
-.asm_10878a
- ld c, $1
- call Function1082cc
- jr .asm_108774
-
-.asm_108791
- ld a, [hSCY]
- cp $f8
- jr z, .asm_1087cb
- dec a
- dec a
- ld [hSCY], a
- cp $40
- jr z, .asm_1087a9
- cp $30
- jr z, .asm_1087b7
- cp $68
- jr z, .asm_1087bc
- jr .asm_1087c4
-
-.asm_1087a9
- lb de, $54, $58
- ld a, $22
- call Function3b2a
- xor a
- call Function108ad4
- jr .asm_1087c4
-
-.asm_1087b7
- call Function108bbd
- jr .asm_1087c4
-
-.asm_1087bc
- call Function108bbd
- ld a, $1
- call Function108ad4
-
-.asm_1087c4
- ld c, $1
- call Function1082cc
- jr .asm_108791
-
-.asm_1087cb
- call Function1082b2
- ret
-; 1087cf
-
-Function1087cf: ; 1087cf
- ld c, $28
- ld hl, StringBuffer2 + 2
- call Function1082f0
- call Function108af4
- call Function108b5a
- lb de, $4a, $50
- ld a, $25
- call Function3b2a
- 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
-.asm_1087fc
- ld a, [hSCY]
- cp $90
- jr z, .asm_10880d
- sub $8
- ld [hSCY], a
- ld c, $1
- call Function1082cc
- jr .asm_1087fc
-
-.asm_10880d
- call Function1082b7
- ret
-; 108811
-
-Function108811: ; 108811
- ld c, $28
- call Function1082cc
- ld a, $1
- ld [wcf64], a
- ld de, SFX_SHARPEN
- call PlaySFX
- ld c, $3c
- call Function1082cc
- lb de, $f2, $50
- ld a, $24
- call Function3b2a
- call Function1082b7
- ld de, SFX_THROW_BALL
- call PlaySFX
- ret
-; 108838
-
-Function108838: ; 108838
- ld c, $28
- call Function1082cc
- ld a, $1
- ld [wcf64], a
- ld de, SFX_SHARPEN
- call PlaySFX
- call Function1082b7
- ret
-; 10884c
-
-Function10884c: ; 10884c
- ld c, $50
- call DelayFrames
- lb de, $f2, $50
- ld a, $24
- call Function3b2a
- call Function1082b7
- ld de, SFX_THROW_BALL
- call PlaySFX
- ret
-; 108863
-
-Function108863: ; 108863
- ld c, $28
- call Function1082cc
-.asm_108868
- ld a, [hSCY]
- cp $f8
- jr z, .asm_108879
- add $8
- ld [hSCY], a
- ld c, $1
- call Function1082cc
- jr .asm_108868
-
-.asm_108879
- callba Function8d03d
- lb de, $4a, $50
- ld a, $25
- call Function3b2a
- ld de, SFX_GLASS_TING_2
- call PlaySFX
- call Function108af4
- call Function1082b2
- ret
-; 108894
-
-Function108894: ; 108894
- ld c, $14
- ld hl, StringBuffer2 + 2
- call Function1082fa
- ld de, SFX_GIVE_TRADEMON
- call PlaySFX
- ld c, $14
- ld hl, StringBuffer2 + 2
- call Function1082fa
- call Function108af4
-.asm_1088ad
- ld a, [hSCY]
- cp $78
- jr z, .asm_1088ee
- inc a
- inc a
- ld [hSCY], a
- cp $30
- jr z, .asm_1088c5
- cp $40
- jr z, .asm_1088dd
- cp $68
- jr z, .asm_1088cf
- jr .asm_1088e7
-
-.asm_1088c5
- lb de, $54, $58
- ld a, $22
- call Function3b2a
- jr .asm_1088e7
-
-.asm_1088cf
- lb de, $54, $58
- ld a, $22
- call Function3b2a
- xor a
- call Function108ad4
- jr .asm_1088e7
-
-.asm_1088dd
- call Function108bbd
- ld a, $1
- call Function108ad4
- jr .asm_1088e7
-
-.asm_1088e7
- ld c, $1
- call Function1082cc
- jr .asm_1088ad
-
-.asm_1088ee
- ld a, [hSCX]
- cp $c
- jr z, .asm_108906
- inc a
- inc a
- ld [hSCX], a
- cp $f8
- jr nz, .asm_1088e7
- call Function108bbd
- ld c, $1
- call Function1082cc
- jr .asm_1088ee
-
-.asm_108906
- call Function1082b2
- ret
-; 10890a
-
-Function10890a: ; 10890a
- ld c, $28
- ld hl, $d0b0
- call Function1082f0
- call Function108af4
- call Function1082b7
- ret
-; 108919
-
-Function108919: ; 108919
- ld c, $28
- call Function1082cc
- callba Function8d03d
- call WhiteBGMap
- call ClearSprites
- call ClearTileMap
- call DisableLCD
- call Function1081ad
- call Function1081ca
- call EnableLCD
- call Function1082b7
- ret
-; 10893d
-
-Function10893d: ; 10893d
-.asm_10893d
- ld a, [rBGP]
- and a
- jr z, .asm_108953
- sla a
- sla a
- call DmgToCgbBGPals
- call Functioncf8
- ld c, $4
- call DelayFrames
- jr .asm_10893d
-
-.asm_108953
- xor a
- call DmgToCgbBGPals
- call Functioncf8
- call Function1082b7
- ret
-; 10895e
-
-Function10895e: ; 10895e
- ld de, $8300
- jr asm_108966
-
-Function108963:
- ld de, $9310
-
-asm_108966
- call DelayFrame
- ld hl, VTiles2
- lb bc, $0a, $31
- call Request2bpp
- call WaitTop
- call Function108ac8
- hlcoord 7, 2
- xor a
- ld [$ffad], a
- ld bc, $0707
- predef FillBox
- call WaitBGMap
- ret
-; 10898a
-
-Function10898a: ; 10898a
- ld de, VTiles2
- call Function1081e9
- call WaitTop
- call Function108ac8
- hlcoord 7, 2
- xor a
- ld [$ffad], a
- ld bc, $0707
- predef FillBox
- call WaitBGMap
- ret
-; 1089a8
-
-Function1089a8: ; 1089a8
- ld de, $c6d0
- ld a, [de]
- cp $fd
- jr z, asm_1089fc
- call Function108a5b
- ld de, $c6d0
- call Function108a92
- ld de, $c6d1
- call Function108a9c
- ld a, [wc701]
- ld de, $c6f2
- call Function108aa3
- ld de, $c6ff
- call Function108abe
- call Function108a87
- ret
-
-Function1089d2:
- ld de, wc702
- ld a, [de]
- cp $fd
- jr z, asm_1089fc
- call Function108a5b
- ld de, wc702
- call Function108a92
- ld de, wc703
- call Function108a9c
- ld a, [wc733]
- ld de, wc724
- call Function108aa3
- ld de, wc731
- call Function108abe
- call Function108a87
- ret
-
-asm_1089fc
- call WaitTop
- call Function108ac8
- ld a, $9c
- ld [$ffd7], a
- hlcoord 5, 0
- ld b, $6
- ld c, $9
- call TextBox
- hlcoord 6, 2
- ld de, String_108a1d
- call PlaceString
- call Function108a87
- ret
-; 108a1d
-
-String_108a1d: ; 108a1d
- db "タマゴ"
- next "おや/?????"
- next $73, "№", $f2, "?????"
- db "@"
-; 108a33
-
-Function108a33: ; 108a33
- call WaitTop
- call Function108ac8
- ld a, $9c
- ld [$ffd7], a
- hlcoord 5, 0
- ld b, $6
- ld c, $9
- call TextBox
- hlcoord 7, 4
- ld de, String_108a54
- call PlaceString
- call Function108a87
- ret
-; 108a54
-
-String_108a54: ; 108a54
- db "なぞのタマゴ@"
-; 108a5b
-
-Function108a5b: ; 108a5b
- call WaitTop
- call Function108ac8
- ld a, $9c
- ld [$ffd7], a
- hlcoord 4, 0
- ld b, $6
- ld c, $a
- call TextBox
- hlcoord 5, 0
- ld de, String_108a79
- call PlaceString
- ret
-; 108a79
-
-String_108a79: ; 108a79
- db "─ №", $f2
- next ""
- next "おや/"
- next $73, "№", $f2, ""
- db "@"
-; 108a87
-
-Function108a87: ; 108a87
- call WaitBGMap
- call WaitTop
- ld a, $98
- ld [$ffd7], a
- ret
-; 108a92
-
-Function108a92: ; 108a92
- hlcoord 9, 0
- ld bc, $8103
- call PrintNum
- ret
-; 108a9c
-
-Function108a9c: ; 108a9c
- hlcoord 5, 2
- call PlaceString
- ret
-; 108aa3
-
-Function108aa3: ; 108aa3
- cp $3
- jr c, .asm_108aa8
- xor a
-
-.asm_108aa8
- push af
- hlcoord 8, 4
- call PlaceString
- inc bc
- pop af
- ld hl, Unknown_108abb
- ld d, 0
- ld e, a
- add hl, de
- ld a, [hl]
- ld [bc], a
- ret
-; 108abb
-
-Unknown_108abb: ; 108abb
- db " ", "♂", "♀"
-; 108abe
-
-Function108abe: ; 108abe
- hlcoord 8, 6
- ld bc, $8205
- call PrintNum
- ret
-; 108ac8
-
-Function108ac8: ; 108ac8
- ld hl, TileMap
- ld bc, $0168
- ld a, $7f
- call ByteFill
- ret
-; 108ad4
-
-Function108ad4: ; 108ad4
- and a
- jr z, .asm_108adc
- ld de, GFX_1092c7
- jr .asm_108adf
-
-.asm_108adc
- ld de, GFX_1091c7
-
-.asm_108adf
- ld a, $1
- ld [rVBK], a
- ld hl, $94a0
- lb bc, $42, $10
- call Functiondc9
- call DelayFrame
- ld a, $0
- ld [rVBK], a
- ret
-; 108af4
-
-Function108af4: ; 108af4
- ld a, [rSVBK]
- push af
- ld a, $5
- ld [rSVBK], a
- ld a, [wcf65]
- and $1
- jr z, .asm_108b1c
- ld hl, Palette_109187
- ld de, Unkn2Pals
- ld bc, $0040
- call CopyBytes
- ld hl, Palette_109187
- ld de, OBPals
- ld bc, $0040
- call CopyBytes
- jr .asm_108b34
-
-.asm_108b1c
- ld hl, Palette_109147
- ld de, Unkn2Pals
- ld bc, $0040
- call CopyBytes
- ld hl, Palette_109147
- ld de, OBPals
- ld bc, $0040
- call CopyBytes
-
-.asm_108b34
- pop af
- ld [rSVBK], a
- ld a, $e4
- call Functioncf8
- ld a, $e4
- call DmgToCgbBGPals
- call DelayFrame
- ret
-; 108b45
-
-Function108b45: ; 108b45
- ld a, [rSVBK]
- push af
- ld a, $5
- ld [rSVBK], a
- ld de, $7fff
- ld hl, Unkn1Pals
- ld a, e
- ld [hli], a
- ld d, a
- ld [hli], a
- pop af
- ld [rSVBK], a
- ret
-; 108b5a
-
-Function108b5a: ; 108b5a
- ld a, [rSVBK]
- push af
- ld a, $5
- ld [rSVBK], a
- ld de, $3ff2
- ld hl, $d0a0
- ld c, $10
-.asm_108b69
- ld a, e
- ld [hli], a
- ld a, d
- ld [hli], a
- dec c
- jr nz, .asm_108b69
- pop af
- ld [rSVBK], a
- ld a, $1
- ld [hCGBPalUpdate], a
- ret
-; 108b78
-
-Function108b78: ; 108b78
- ld a, [rSVBK]
- push af
- ld a, $5
- ld [rSVBK], a
- ld a, c
- and $2
- jr z, .asm_108b89
- ld de, $7fff
- jr .asm_108b8c
-
-.asm_108b89
- ld de, $05ff
-
-.asm_108b8c
- ld a, e
- ld [hli], a
- ld a, d
- ld [hld], a
- pop af
- ld [rSVBK], a
- ld a, $1
- ld [hCGBPalUpdate], a
- ret
-; 108b98
-
-Palette_108b98:
-; removed
-
-Function108b98: ; 108b98
- ld d, a
- ld a, [rSVBK]
- push af
- ld a, $5
- ld [rSVBK], a
- ld a, [wcf65]
- and $1
- xor d
- jr z, .asm_108bad
- ld hl, Palette_108b98 + 8
- jr .asm_108bb0
-
-.asm_108bad
- ld hl, Palette_108b98
-
-.asm_108bb0
- ld de, Unkn1Pals + 8 * 7
- ld bc, $0040
- call CopyBytes
- pop af
- ld [rSVBK], a
- ret
-; 108bbd
-
-Function108bbd: ; 108bbd
- callba Function8d03d
- call ClearSprites
- ret
-; 108bc7
-
-Function108bc7: ; 108bc7 (42:4bc7)
- ld a, [wcf64]
- and a
- ret z
- ld hl, $5
- add hl, bc
- ld a, [hl]
- cp $f2
- jr z, .asm_108bd9
- sub $8
- ld [hl], a
- ret
-.asm_108bd9
- callba Function8d036
- ret
-
-Function108be0: ; 108be0 (42:4be0)
- ld hl, $5
- add hl, bc
- ld a, [hl]
- cp $4a
- ret z
- add $8
- ld [hl], a
- ret
-; 108bec (42:4bec)
-
-Function108bec: ; 108bec
- ld a, $90
- ld [hWY], a
- ld hl, UnknownText_0x108c07
- call PrintText
- ld c, $50
- call DelayFrames
- ld hl, UnknownText_0x108c0c
- call PrintText
- ld c, $50
- call DelayFrames
- ret
-; 108c07
-
-UnknownText_0x108c07: ; 0x108c07
- text_jump UnknownText_0x1bc787
- db "@"
-; 0x108c0c
-
-UnknownText_0x108c0c: ; 0x108c0c
- text_jump UnknownText_0x1bc79d
- db "@"
-; 0x108c11
-
-UnknownText_0x108c11: ; 0x108c11
- text_jump UnknownText_0x1bc7b0
- db "@"
-; 0x108c16
-
-Function108c16: ; 108c16
- ld a, $90
- ld [hWY], a
- ld hl, UnknownText_0x108c26
- call PrintText
- ld c, $50
- call DelayFrames
- ret
-; 108c26
-
-UnknownText_0x108c26: ; 0x108c26
- text_jump UnknownText_0x1bc7c3
- db "@"
-; 0x108c2b
-
-Function108c2b: ; 108c2b
- ld a, $90
- ld [hWY], a
- ld hl, UnknownText_0x108c3b
- call PrintText
- ld c, $50
- call DelayFrames
- ret
-; 108c3b
-
-UnknownText_0x108c3b: ; 0x108c3b
- text_jump UnknownText_0x1bc7dd
- db $50
-; 0x108c40
-
-Function108c40: ; 108c40
- ld a, $90
- ld [hWY], a
- ld a, [wcf65]
- and $80
- jr z, .asm_108c57
- ld hl, UnknownText_0x108c68
- call PrintText
- ld c, $50
- call DelayFrames
- ret
-
-.asm_108c57
- ld hl, UnknownText_0x108c63
- call PrintText
- ld c, $50
- call DelayFrames
- ret
-; 108c63
-
-UnknownText_0x108c63: ; 0x108c63
- text_jump UnknownText_0x1bc7f0
- db "@"
-; 0x108c68
-
-UnknownText_0x108c68: ; 0x108c68
- text_jump UnknownText_0x1bc80a
- db "@"
-; 0x108c6d
-
-Function108c6d: ; 108c6d
- ld hl, LZ_108fe7
- ld de, VBGMap0
- call Decompress
- ld hl, LZ_108fe7
- ld de, VBGMap1
- call Decompress
- ret
-; 108c80
-
-Function108c80: ; 108c80
- ld a, $1
- ld [rVBK], a
- ld hl, LZ_1090a7
- ld de, VBGMap0
- call Decompress
- ld hl, LZ_1090a7
- ld de, VBGMap1
- call Decompress
- ld a, $0
- ld [rVBK], a
- ret
-; 108c9b
-
-Function108c9b: ; 108c9b
-; localization error: $b should be 6 here
-
- ld hl, Unknown_108ce9
- ld a, [hli]
- ld [$c6d0], a
-
- ld de, $c6e7
- ld c, $b
-.asm_108ca7
- ld a, [hli]
- ld [de], a
- inc de
- dec c
- jr nz, .asm_108ca7
-
- ld de, $c6ff
- ld c, $2
-.asm_108cb2
- ld a, [hli]
- ld [de], a
- inc de
- dec c
- jr nz, .asm_108cb2
-
- ld de, $c6f2
- ld c, $b
-.asm_108cbd
- ld a, [hli]
- ld [de], a
- inc de
- dec c
- jr nz, .asm_108cbd
-
- ld a, [hli]
- ld [wc702], a
-
- ld de, wc719
- ld c, $b
-.asm_108ccc
- ld a, [hli]
- ld [de], a
- inc de
- dec c
- jr nz, .asm_108ccc
-
- ld de, wc731
- ld c, $2
-.asm_108cd7
- ld a, [hli]
- ld [de], a
- inc de
- dec c
- jr nz, .asm_108cd7
-
- ld de, wc724
- ld c, $b
-.asm_108ce2
- ld a, [hli]
- ld [de], a
- inc de
- dec c
- jr nz, .asm_108ce2
-
- ret
-; 108ce9
-
-Unknown_108ce9:
- db 3
- db "ゲーフり@@"
- db $23, $01
- db "かびーん@@"
- db 6
- db "クりーチャ@"
- db $56, $04
- db "マツミヤ@@"
-; 108d07
-
-Function108d07: ; 108d07
- ld a, [wc74e]
- and $7f
- cp $8
- jr c, .asm_108d12
- ld a, $7
-
-.asm_108d12
- ld bc, $0008
- ld hl, Palette_1093c7
- call AddNTimes
- ld a, $5
- ld de, wd020
- ld bc, $0008
- call FarCopyWRAM
- ret
-; 108d27
-
-LZ_108d27:
-INCBIN "gfx/unknown/108d27.2bpp.lz"
-
-LZ_108da7:
-INCBIN "gfx/unknown/108da7.2bpp.lz"
-
-LZ_108fe7:
-INCBIN "gfx/unknown/108fe7.tilemap.lz"
-
-LZ_1090a7:
-INCBIN "gfx/unknown/1090a7.tilemap.lz"
-
-Palette_1090f7:
- RGB 31, 31, 31
- RGB 0, 0, 0
- RGB 31, 0, 25
- RGB 0, 0, 0
- RGB 31, 31, 31
- RGB 0, 0, 0
- RGB 9, 19, 31
- RGB 0, 0, 0
-
-Palette_109107:
- RGB 18, 31, 15
- RGB 20, 20, 20
- RGB 11, 11, 11
- RGB 0, 0, 0
- RGB 31, 15, 1
- RGB 14, 14, 31
- RGB 12, 9, 31
- RGB 0, 0, 0
- RGB 18, 31, 15
- RGB 14, 14, 31
- RGB 12, 9, 31
- RGB 0, 0, 0
- RGB 18, 31, 15
- RGB 20, 20, 20
- RGB 11, 11, 11
- RGB 0, 0, 0
- RGB 18, 31, 15
- RGB 31, 7, 9
- RGB 18, 0, 1
- RGB 0, 0, 0
- RGB 18, 31, 15
- RGB 20, 20, 20
- RGB 11, 11, 11
- RGB 0, 0, 0
- RGB 31, 15, 1
- RGB 18, 0, 30
- RGB 9, 0, 17
- RGB 0, 0, 0
- RGB 18, 31, 15
- RGB 18, 0, 30
- RGB 9, 0, 17
- RGB 0, 0, 0
-
-Palette_109147:
- RGB 31, 31, 31
- RGB 31, 31, 12
- RGB 31, 13, 12
- RGB 0, 0, 0
- RGB 31, 31, 31
- RGB 31, 23, 15
- RGB 31, 18, 7
- RGB 31, 15, 0
- RGB 31, 31, 31
- RGB 20, 20, 20
- RGB 11, 11, 11
- RGB 0, 0, 0
- RGB 31, 31, 31
- RGB 31, 0, 25
- RGB 31, 0, 25
- RGB 0, 0, 0
- RGB 31, 31, 31
- RGB 9, 19, 31
- RGB 9, 19, 31
- RGB 0, 0, 0
- RGB 31, 31, 31
- RGB 0, 0, 0
- RGB 0, 0, 0
- RGB 0, 0, 0
- RGB 31, 31, 31
- RGB 0, 0, 0
- RGB 0, 0, 0
- RGB 0, 0, 0
- RGB 31, 31, 31
- RGB 0, 0, 0
- RGB 0, 0, 0
- RGB 0, 0, 0
-
-Palette_109187:
- RGB 31, 31, 31
- RGB 31, 31, 12
- RGB 31, 13, 12
- RGB 0, 0, 0
- RGB 31, 31, 31
- RGB 31, 23, 15
- RGB 31, 18, 7
- RGB 31, 15, 0
- RGB 31, 31, 31
- RGB 20, 20, 20
- RGB 11, 11, 11
- RGB 0, 0, 0
- RGB 31, 31, 31
- RGB 9, 19, 31
- RGB 9, 19, 31
- RGB 0, 0, 0
- RGB 31, 31, 31
- RGB 31, 0, 25
- RGB 31, 0, 25
- RGB 0, 0, 0
- RGB 31, 31, 31
- RGB 0, 0, 0
- RGB 0, 0, 0
- RGB 0, 0, 0
- RGB 31, 31, 31
- RGB 0, 0, 0
- RGB 0, 0, 0
- RGB 0, 0, 0
- RGB 31, 31, 31
- RGB 0, 0, 0
- RGB 0, 0, 0
- RGB 0, 0, 0
-
-GFX_1091c7:
-INCBIN "gfx/unknown/1091c7.2bpp"
-GFX_1092c7:
-INCBIN "gfx/unknown/1092c7.2bpp"
-
-Palette_1093c7:
- RGB 18, 31, 15
- RGB 4, 13, 31
- RGB 0, 0, 31
- RGB 0, 0, 0
- RGB 18, 31, 15
- RGB 31, 31, 0
- RGB 31, 15, 0
- RGB 0, 0, 0
- RGB 18, 31, 15
- RGB 9, 24, 0
- RGB 2, 16, 0
- RGB 0, 0, 0
- RGB 18, 31, 15
- RGB 31, 7, 9
- RGB 18, 0, 1
- RGB 0, 0, 0
- RGB 18, 31, 15
- RGB 28, 5, 31
- RGB 17, 0, 17
- RGB 0, 0, 0
- RGB 18, 31, 15
- RGB 9, 9, 9
- RGB 4, 4, 4
- RGB 0, 0, 0
- RGB 18, 31, 15
- RGB 31, 13, 21
- RGB 27, 7, 12
- RGB 0, 0, 0
- RGB 18, 31, 15
- RGB 21, 20, 20
- RGB 14, 14, 31
- RGB 0, 0, 0
+SECTION "Intro Logo", ROMX, BANK[$42]
IntroLogoGFX: ; 109407
INCBIN "gfx/intro/logo.2bpp.lz"
; 109847
-SECTION "bank43", ROMX, BANK[$43]
-
-UnusedTitleScreen: ; 10c000
-
- call WhiteBGMap
- call ClearTileMap
- call DisableLCD
- xor a
- ld [hBGMapMode], a
-
- ld hl, wcf63
- ld [hli], a
- ld [hli], a
- ld [hli], a
- ld [hl], a
-
- ld hl, UnusedTitleBG_GFX
- ld de, VTiles2
- ld bc, $800
- call CopyBytes
-
- ld hl, UnusedTitleBG_GFX + $800
- ld de, VTiles1
- ld bc, $800
- call CopyBytes
-
- ld hl, UnusedTitleFG_GFX
- ld de, VTiles0
- ld bc, $800
- call CopyBytes
-
- ld hl, UnusedTitleBG_Tilemap
- ld de, VBGMap0
- ld bc, 32 * 32
-.copy
- ld a, 0
- ld [rVBK], a
- ld a, [hli]
- ld [de], a
- ld a, 1
- ld [rVBK], a
- ld a, [hli]
- ld [de], a
- inc de
- dec bc
- ld a, b
- or c
- jr nz, .copy
-
- ld hl, UnusedTitleFG_OAM
- ld de, Sprites
- ld bc, $a0
- call CopyBytes
-
- call EnableLCD
- ld a, [rLCDC]
- set 1, a
- set 2, a
- ld [rLCDC], a
-
- call DelayFrame
-
- ld a, [rSVBK]
- push af
- ld a, $5
- ld [rSVBK], a
-
- ld hl, UnsuedTitleBG_Palettes
- ld de, Unkn1Pals
- ld bc, $40
- call CopyBytes
-
- ld hl, UnsuedTitleFG_Palettes
- ld de, Unkn2Pals
- ld bc, $40
- call CopyBytes
-
- ld hl, UnsuedTitleBG_Palettes
- ld de, BGPals
- ld bc, $40
- call CopyBytes
-
- ld hl, UnsuedTitleFG_Palettes
- ld de, OBPals
- ld bc, $40
- call CopyBytes
-
- pop af
- ld [rSVBK], a
-
- ld a, $1
- ld [hCGBPalUpdate], a
-
- ld de, MUSIC_TITLE
- call PlayMusic
-
- ret
-; 10c0b1
-
-UnusedTitleBG_GFX: ; 10c0b1
-INCBIN "gfx/title/old_bg.2bpp"
-; 10d0b1
-
-UnusedTitleBG_Tilemap: ; 10d0b1
-; 32x32 (tile, attributes)
- db $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $01,$00, $02,$01, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00
- db $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $03,$00, $04,$00, $05,$01, $06,$01, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00
- db $00,$00, $00,$00, $07,$05, $08,$05, $09,$05, $0a,$05, $0b,$00, $0c,$00, $0d,$00, $0e,$00, $0f,$01, $10,$01, $11,$01, $12,$01, $13,$05, $14,$05, $15,$05, $16,$05, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00
- db $00,$00, $00,$00, $17,$04, $18,$04, $19,$04, $1a,$04, $1b,$00, $1c,$00, $1d,$02, $1e,$02, $1f,$07, $20,$07, $21,$01, $22,$01, $23,$04, $24,$04, $25,$04, $26,$04, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00
- db $00,$00, $00,$00, $27,$04, $28,$04, $29,$04, $2a,$04, $2b,$00, $2c,$00, $2d,$03, $2e,$01, $2f,$01, $30,$01, $31,$01, $32,$01, $33,$04, $34,$04, $35,$04, $36,$04, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00
- db $00,$00, $00,$00, $37,$04, $38,$04, $39,$04, $3a,$04, $3b,$00, $3c,$00, $3d,$01, $00,$00, $00,$00, $3e,$07, $3f,$01, $40,$01, $41,$04, $42,$04, $43,$04, $44,$04, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00
- db $00,$00, $00,$00, $45,$04, $46,$04, $47,$04, $48,$04, $49,$00, $3c,$00, $4a,$01, $00,$00, $00,$00, $4b,$07, $3f,$01, $4c,$01, $4d,$06, $4e,$06, $4f,$06, $50,$06, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00
- db $00,$00, $00,$00, $51,$04, $52,$06, $53,$06, $54,$06, $55,$00, $3c,$00, $56,$01, $00,$00, $00,$00, $57,$07, $58,$01, $59,$01, $5a,$06, $5b,$06, $5c,$06, $5d,$06, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00
- db $00,$00, $00,$00, $5e,$06, $5f,$06, $60,$06, $61,$06, $62,$00, $63,$00, $64,$03, $65,$01, $66,$01, $67,$07, $68,$01, $69,$01, $26,$04, $6a,$06, $26,$04, $26,$04, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00
- db $00,$00, $00,$00, $6b,$00, $6c,$05, $6d,$05, $6e,$05, $6f,$00, $70,$02, $71,$02, $72,$01, $73,$00, $74,$02, $75,$01, $76,$01, $77,$05, $78,$05, $79,$05, $6b,$00, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00
- db $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $7a,$00, $7b,$00, $7c,$00, $7d,$00, $0f,$01, $7e,$01, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00
- db $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $a2,$00, $80,$00, $81,$00, $82,$00, $83,$00, $84,$07, $85,$01, $86,$01, $87,$01, $88,$01, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00
- db $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $89,$00, $8a,$00, $8b,$00, $8c,$07, $8d,$01, $8e,$01, $8f,$01, $90,$01, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00
- db $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $91,$01, $92,$01, $93,$01, $94,$01, $95,$01, $00,$00, $00,$00, $00,$00, $96,$05, $97,$05, $98,$05, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00
- db $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $99,$05, $9a,$05, $9b,$05, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00
- db $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $9c,$05, $9d,$05, $9e,$05, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00
- db $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $9f,$05, $a0,$05, $a1,$05, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00
- db $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00
- db $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00
- db $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00
- db $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00
- db $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00
- db $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00
- db $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00
- db $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00
- db $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00
- db $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $6b,$00, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00
- db $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00
- db $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00
- db $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00
- db $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00
- db $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00
-; 10d8b1
-
-UnsuedTitleBG_Palettes: ; 10d8b1
- RGB 00, 00, 00
- RGB 25, 15, 28
- RGB 22, 11, 28
- RGB 19, 08, 26
-
- RGB 00, 00, 00
- RGB 17, 07, 22
- RGB 13, 07, 16
- RGB 19, 08, 26
-
- RGB 25, 15, 28
- RGB 22, 11, 28
- RGB 19, 08, 26
- RGB 17, 07, 22
-
- RGB 22, 11, 28
- RGB 19, 08, 26
- RGB 17, 07, 22
- RGB 13, 07, 16
-
- RGB 00, 00, 00
- RGB 31, 31, 31
- RGB 16, 16, 24
- RGB 02, 13, 21
-
- RGB 00, 00, 00
- RGB 31, 31, 31
- RGB 20, 20, 20
- RGB 12, 12, 12
-
- RGB 00, 00, 00
- RGB 01, 11, 23
- RGB 16, 16, 24
- RGB 02, 13, 21
-
- RGB 00, 00, 00
- RGB 22, 10, 31
- RGB 19, 08, 26
- RGB 17, 07, 22
-
-
- RGB 31, 31, 31
- RGB 31, 31, 31
- RGB 31, 31, 31
- RGB 31, 31, 31
-
- RGB 31, 31, 31
- RGB 20, 04, 20
- RGB 16, 08, 16
- RGB 24, 00, 24
-
- rept 54
- RGB 31, 31, 31
- RGB 31, 31, 31
- RGB 31, 31, 31
- RGB 31, 31, 31
- endr
-; 10dab1
-
-UnusedTitleFG_GFX: ; 10dab1
-INCBIN "gfx/title/old_fg.2bpp"
-; 10eab1
-
-UnsuedTitleFG_Palettes: ; 10eab1
- RGB 00, 00, 00
- RGB 31, 31, 31
- RGB 16, 16, 24
- RGB 02, 13, 21
-
- RGB 00, 00, 00
- RGB 31, 31, 31
- RGB 20, 20, 20
- RGB 12, 12, 12
-
- RGB 00, 00, 00
- RGB 01, 11, 23
- RGB 16, 16, 24
- RGB 02, 13, 21
-
- RGB 00, 00, 00
- RGB 31, 22, 00
- RGB 31, 27, 00
- RGB 31, 31, 00
-
- RGB 00, 00, 00
- RGB 31, 31, 31
- RGB 16, 16, 24
- RGB 02, 13, 21
-
- RGB 00, 00, 00
- RGB 31, 31, 31
- RGB 20, 20, 20
- RGB 12, 12, 12
-
- RGB 00, 00, 00
- RGB 01, 11, 23
- RGB 16, 16, 24
- RGB 02, 13, 21
-
- RGB 16, 31, 00
- RGB 22, 31, 00
- RGB 27, 31, 00
- RGB 31, 31, 00
-
-
- RGB 31, 00, 18
- RGB 31, 31, 31
- RGB 16, 16, 24
- RGB 02, 13, 21
-
- RGB 00, 00, 00
- RGB 31, 31, 31
- RGB 20, 20, 20
- RGB 12, 12, 12
-
- RGB 00, 00, 00
- RGB 01, 11, 23
- RGB 16, 16, 24
- RGB 02, 13, 21
-
- RGB 16, 31, 00
- RGB 22, 31, 00
- RGB 27, 31, 00
- RGB 31, 31, 00
-
- RGB 24, 18, 31
- RGB 31, 31, 00
- RGB 31, 31, 01
- RGB 31, 31, 03
-
- RGB 31, 31, 05
- RGB 31, 31, 08
- RGB 31, 31, 10
- RGB 31, 31, 12
-
- RGB 31, 31, 14
- RGB 31, 31, 16
- RGB 31, 31, 18
- RGB 31, 31, 20
-
- RGB 31, 31, 22
- RGB 31, 31, 25
- RGB 31, 31, 27
- RGB 31, 31, 29
-
- RGB 24, 06, 06
- RGB 01, 01, 01
- RGB 03, 03, 03
- RGB 05, 05, 05
-
- RGB 08, 08, 08
- RGB 10, 10, 10
- RGB 12, 12, 12
- RGB 14, 14, 14
-
- RGB 16, 16, 16
- RGB 18, 18, 18
- RGB 20, 20, 20
- RGB 22, 22, 22
-
- RGB 25, 25, 25
- RGB 27, 27, 27
- RGB 29, 29, 29
- RGB 31, 31, 31
-
- RGB 18, 24, 18
- RGB 31, 29, 01
- RGB 31, 27, 03
- RGB 31, 25, 05
-
- RGB 31, 22, 08
- RGB 31, 20, 10
- RGB 31, 18, 12
- RGB 31, 16, 14
-
- RGB 31, 14, 16
- RGB 31, 12, 18
- RGB 31, 10, 20
- RGB 31, 08, 22
-
- RGB 31, 05, 25
- RGB 31, 03, 27
- RGB 31, 01, 29
- RGB 31, 00, 31
-
- RGB 18, 06, 31
- RGB 00, 31, 31
- RGB 00, 31, 29
- RGB 00, 31, 27
-
- RGB 00, 31, 25
- RGB 00, 31, 22
- RGB 00, 31, 20
- RGB 00, 31, 18
-
- RGB 00, 31, 16
- RGB 00, 31, 14
- RGB 00, 31, 12
- RGB 00, 31, 10
-
- RGB 00, 31, 08
- RGB 00, 31, 05
- RGB 00, 31, 03
- RGB 00, 31, 01
-
- RGB 12, 31, 06
- RGB 00, 00, 31
- RGB 00, 01, 31
- RGB 00, 03, 31
-
- RGB 00, 05, 31
- RGB 00, 08, 31
- RGB 00, 10, 31
- RGB 00, 12, 31
-
- RGB 00, 14, 31
- RGB 00, 16, 31
- RGB 00, 18, 31
- RGB 00, 20, 31
-
- RGB 00, 22, 31
- RGB 00, 25, 31
- RGB 00, 27, 31
- RGB 00, 29, 31
-
- RGB 00, 00, 00
- RGB 06, 00, 04
- RGB 19, 02, 09
- RGB 28, 04, 11
-
- RGB 31, 07, 16
- RGB 31, 17, 23
- RGB 31, 26, 30
- RGB 07, 05, 10
-
- RGB 14, 10, 18
- RGB 20, 20, 25
- RGB 25, 27, 31
- RGB 09, 05, 06
-
- RGB 23, 16, 13
- RGB 30, 23, 22
- RGB 31, 28, 28
- RGB 31, 31, 31
-
- RGB 06, 31, 31
- RGB 04, 00, 04
- RGB 11, 02, 04
- RGB 17, 02, 04
-
- RGB 24, 05, 04
- RGB 28, 07, 04
- RGB 31, 11, 04
- RGB 02, 01, 15
-
- RGB 04, 11, 22
- RGB 12, 25, 25
- RGB 20, 31, 31
- RGB 09, 04, 03
-
- RGB 22, 11, 08
- RGB 27, 19, 16
- RGB 30, 28, 26
- RGB 31, 31, 31
-
- RGB 06, 18, 06
- RGB 04, 04, 02
- RGB 07, 07, 02
- RGB 18, 18, 04
-
- RGB 24, 24, 06
- RGB 27, 27, 11
- RGB 31, 31, 20
- RGB 02, 03, 10
-
- RGB 04, 05, 13
- RGB 06, 10, 25
- RGB 08, 15, 31
- RGB 04, 00, 06
-
- RGB 11, 07, 14
- RGB 21, 16, 23
- RGB 29, 26, 31
- RGB 31, 31, 31
-
- RGB 06, 00, 18
- RGB 00, 04, 03
- RGB 02, 09, 05
- RGB 11, 19, 07
-
- RGB 16, 24, 08
- RGB 22, 31, 09
- RGB 24, 31, 18
- RGB 03, 01, 03
-
- RGB 10, 04, 10
- RGB 20, 08, 20
- RGB 31, 17, 31
- RGB 01, 03, 06
-
- RGB 05, 09, 10
- RGB 15, 21, 21
- RGB 23, 25, 25
- RGB 31, 31, 31
-
- RGB 00, 18, 31
- RGB 00, 05, 07
- RGB 00, 08, 13
- RGB 00, 12, 17
-
- RGB 01, 20, 24
- RGB 04, 27, 31
- RGB 14, 31, 31
- RGB 04, 02, 02
-
- RGB 15, 01, 03
- RGB 26, 04, 07
- RGB 31, 13, 16
- RGB 00, 05, 02
-
- RGB 01, 11, 03
- RGB 06, 21, 06
- RGB 13, 31, 16
- RGB 31, 31, 31
-
- RGB 00, 06, 06
- RGB 00, 01, 08
- RGB 00, 05, 14
- RGB 00, 08, 19
-
- RGB 02, 14, 26
- RGB 04, 21, 31
- RGB 06, 26, 31
- RGB 13, 00, 00
-
- RGB 27, 07, 00
- RGB 31, 17, 05
- RGB 31, 25, 16
- RGB 02, 04, 00
-
- RGB 07, 11, 03
- RGB 17, 19, 05
- RGB 27, 31, 16
- RGB 31, 31, 31
-
- RGB 02, 00, 00
- RGB 04, 01, 06
- RGB 11, 03, 14
- RGB 16, 04, 19
-
- RGB 20, 07, 22
- RGB 26, 12, 27
- RGB 26, 20, 31
- RGB 04, 07, 00
-
- RGB 16, 20, 07
- RGB 24, 28, 15
- RGB 29, 31, 24
- RGB 05, 02, 02
-
- RGB 15, 04, 02
- RGB 24, 11, 10
- RGB 31, 22, 20
- RGB 31, 31, 31
-
- RGB 00, 00, 14
- RGB 12, 00, 00
- RGB 27, 05, 00
- RGB 31, 15, 05
-
- RGB 31, 26, 13
- RGB 31, 30, 21
- RGB 05, 07, 16
- RGB 04, 16, 20
-
- RGB 04, 24, 26
- RGB 08, 31, 31
- RGB 23, 31, 31
- RGB 00, 00, 00
-
- RGB 05, 05, 05
- RGB 17, 17, 15
- RGB 28, 28, 24
- RGB 31, 31, 31
-; 10ecb1
-
-UnusedTitleFG_OAM: ; 10ecb1
- db $18, $38, $00, $01, $18, $40, $02, $01, $18, $48, $04, $01, $18, $50, $06, $01
- db $18, $58, $08, $01, $18, $60, $0a, $01, $18, $68, $0c, $01, $18, $70, $0e, $01
-
- db $28, $38, $10, $00, $28, $40, $12, $00, $28, $48, $14, $00, $28, $50, $16, $00
- db $28, $58, $18, $00, $28, $60, $1a, $00, $28, $68, $1c, $00, $28, $70, $1e, $00
-
- db $38, $38, $20, $00, $38, $40, $22, $00, $38, $48, $24, $00, $38, $50, $26, $00
- db $38, $58, $28, $00, $38, $60, $2a, $00, $38, $68, $2c, $00, $38, $70, $2e, $00
-
- db $48, $38, $30, $02, $48, $40, $32, $02, $48, $48, $34, $02, $48, $50, $36, $02
- db $48, $58, $38, $02, $48, $60, $3a, $02, $48, $68, $3c, $02, $48, $70, $3e, $02
-
- db $58, $38, $40, $01, $58, $40, $42, $01, $58, $48, $44, $01, $58, $50, $46, $01
- db $58, $58, $48, $01, $58, $60, $4a, $01, $58, $68, $4c, $01, $58, $70, $4e, $01
-; 10ed51
-
-
-Function10ed51: ; 10ed51
- call _TitleScreen
-.loop
- call Functiona57
- ld a, [$ffa9]
- ld b, a
- and 1
- jr nz, .done
- call Function10eea7
- call DelayFrame
- jr .loop
-.done
- ret
-; 10ed67
+INCLUDE "misc/unused_title.asm"
INCLUDE "engine/title.asm"
-
-SECTION "bank45", ROMX, BANK[$45]
-
- charmap " ", $20 ; revert to ascii
-
-String_114000:
- db "---", 0
-String_114004:
- db "CGB-AAAA-00", 0, 0
-
-Unknown_114011: ; 114011
- dw String_114033
- dw String_11403a
- dw String_114043
- dw String_11404e
- dw String_114053
- dw String_114058
- dw String_114062
- dw String_114074
- dw String_11408d
- dw String_11409f
- dw String_1140b8
- dw String_1140e6
- dw String_114110
- dw String_11413f
- dw String_114160
- dw String_114160
- dw String_114163
-
-String_114033: ; 114033
- db "From: ", 0
-String_11403a: ; 11403a
- db "Sender: ", 0
-String_114043: ; 114043
- db "Reply-To: ", 0
-String_11404e: ; 11404e
- db "To: ", 0
-String_114053: ; 114053
- db "Cc: ", 0
-String_114058: ; 114058
- db "Subject: ", 0
-String_114062: ; 114062
- db "MIME-Version: 1.0", 0
-String_114074: ; 114074
- db "X-Game-title: XXXXXXXXXX", 0
-String_11408d: ; 11408d
- db "X-Game-code: CGB-", 0
-String_11409f: ; 11409f
- db "X-GBmail-type: exclusive", 0
-String_1140b8: ; 1140b8
- db "Content-Type: text/plain; charset=iso-2022-jp", 0
-String_1140e6: ; 1140e6
- db "Content-Type: multipart/mixed; boundary=\"", 0
-String_114110: ; 114110
- db "Content-Type: Application/Octet-Stream; name=\"", 0
-String_11413f: ; 11413f
- db "Content-Transfer-Encoding:Base64", 0
-String_114160: ; 114160
- db "--", 0
-String_114163: ; 114163
- db ".", 0
-; 114165
-
-Jumptable_114165: ; 114165
- dw Function114268
- dw Function114269
- dw Function11433c
- dw Function1143b7
- dw Function1144d1
- dw Function114b55
- dw Function114bbc
- dw Function114cd9
- dw Function114e62
- dw Function1152b8
- dw Function1154d4
- dw Function1156cc
- dw Function1159fb
-; 11417f
-
-Unknown_11417f: ; 11417f
- dw String_114199
- dw String_11419f
- dw String_1141a7
- dw String_1141b1
- dw String_1141b5
- dw String_1141b9
- dw String_1141c2
- dw String_1141c8
- dw String_1141d6
- dw String_1141e4
- dw String_1141ee
- dw String_1141fc
- dw String_114209
-
-String_114199: ; 114199
- db "FROM:", 0
-String_11419f: ; 11419f
- db "SENDER:", 0
-String_1141a7: ; 1141a7
- db "REPLY-TO:", 0
-String_1141b1: ; 1141b1
- db "TO:", 0
-String_1141b5: ; 1141b5
- db "CC:", 0
-String_1141b9: ; 1141b9
- db "SUBJECT:", 0
-String_1141c2: ; 1141c2
- db "DATE:", 0
-String_1141c8: ; 1141c8
- db "CONTENT-TYPE:", 0
-String_1141d6: ; 1141d6
- db "MIME-VERSION:", 0
-String_1141e4: ; 1141e4
- db "X-MAILER:", 0
-String_1141ee: ; 1141ee
- db "X-GAME-TITLE:", 0
-String_1141fc: ; 1141fc
- db "X-GAME-CODE:", 0
-String_114209: ; 114209
- db "X-GBMAIL-TYPE:", 0
-; 114218
-
-String_114218: ; 114218
- db "NAME=", 0
-String_11421e: ; 11421e
- db "MULTIPART", 0
-String_114228: ; 114228
- db "BOUNDARY=", 0
-String_114232: ; 114232
- db "=?ISO-2022-JP?B?", 0
-; 114243
-
-Function114243:: ; 114243
- ld a, $a
- ld [MBC3SRamEnable], a
- ld a, [$ff8c]
- push af
- push de
- ld a, [wdc02]
- add a
- ld e, a
- ld d, 0
- ld hl, Jumptable_114165
- add hl, de
- ld a, [hli]
- ld h, [hl]
- ld l, a
- pop de
- jp [hl]
-; 11425c
-
-Function11425c: ; 11425c
- ld [wdc02], a
- pop af
- ld [$ff8c], a
- ld [$ff8c], a
- ld [$4000], a
- ret
-; 114268
-
-Function114268: ; 114268
- ret
-; 114269
-
-Function114269: ; 114269
- ld h, d
- ld l, e
- xor a
- ld [wdc02], a
- ld [wdc03], a
- ld a, [hli]
- ld [wdc00], a
- ld [$ff8c], a
- ld [$4000], a
- ld e, [hl]
- inc hl
- ld d, [hl]
- inc hl
- ld c, [hl]
- inc hl
- ld b, [hl]
-.asm_114282
- ld a, [de]
- and a
- jr z, .asm_1142a4
- ld h, a
- ld a, [wdc03]
- and a
- jr nz, .asm_114292
- ld a, h
- cp $80
- jr nc, .asm_1142ae
-
-.asm_114292
- ld a, h
- cp $d
- jr z, .asm_1142bb
- xor a
- ld [wdc02], a
-.asm_11429b
- inc e
- call z, Function114333
- dec bc
- ld a, b
- or c
- jr nz, .asm_114282
-
-.asm_1142a4
- ld a, [wdc03]
- and a
- jr nz, .asm_114303
- ld b, $80
- jr .asm_1142b0
-
-.asm_1142ae
- ld b, $81
-
-.asm_1142b0
- ld a, [wdc00]
- ld c, a
- ld a, $1
- ld h, d
- ld l, e
- jp Function11425c
-
-.asm_1142bb
- and a
- jr z, .asm_1142a4
- inc e
- call z, Function114333
- dec bc
- ld a, b
- or c
- jr z, .asm_1142a4
- ld a, [de]
- ld h, a
- ld a, [wdc03]
- and a
- jr nz, .asm_1142d4
- ld a, h
- cp $80
- jr nc, .asm_1142ae
-
-.asm_1142d4
- ld a, h
- cp $a
- jr nz, .asm_1142ae
- ld a, [wdc03]
- and a
- jr nz, .asm_11430d
- ld a, [wdc02]
- and a
- jr nz, .asm_114309
- ld a, $1
- ld [wdc02], a
- inc e
- call z, Function114333
- dec bc
- ld a, b
- or c
- jr z, .asm_1142a4
- ld a, [de]
- cp $20
- jr z, .asm_11429b
- cp $9
- jr z, .asm_11429b
- jr .asm_114282
-
-.asm_1142fe
- xor a
- ld b, a
- jp Function11425c
-
-.asm_114303
- xor a
- ld b, $1
- jp Function11425c
-
-.asm_114309
- xor a
- ld [wdc02], a
-
-.asm_11430d
- ld a, [wdc02]
- and a
- jr nz, .asm_1142fe
- ld a, $1
- ld [wdc03], a
- inc e
- call z, Function114333
- dec bc
- ld a, b
- or c
- jr z, .asm_1142a4
- ld a, [de]
- and a
- jp z, .asm_1142a4
- cp $2e
- jp nz, .asm_114282
- ld a, $1
- ld [wdc02], a
- jp .asm_11429b
-; 114333
-
-Function114333: ; 114333
- push bc
- ld bc, wdc00
- call Function115d80
- pop bc
- ret
-; 11433c
-
-Function11433c: ; 11433c
- push de
- ld h, d
- ld l, e
- ld c, [hl]
- inc hl
- ld e, [hl]
- inc hl
- ld d, [hl]
- ld b, $b
- call Function1143f3
- cp $2
- jr z, .asm_114358
- and a
- jr z, .asm_114360
- pop hl
-.asm_114351
- xor a
- ld b, $3
- jp Function11425c
-
-.asm_114357
- pop hl
-
-.asm_114358
- pop hl
- ld a, $1
- ld b, $82
- jp Function11425c
-
-.asm_114360
- ld a, h
- ld [wdc03], a
- pop hl
- push bc
- push de
- ld c, [hl]
- inc hl
- ld e, [hl]
- inc hl
- ld d, [hl]
- inc hl
- ld b, $c
- call Function1143f3
- cp $2
- jr z, .asm_114357
- and a
- jr z, .asm_114381
- xor a
- ld b, $2
- pop hl
- pop hl
- jp Function11425c
-
-.asm_114381
- pop de
- pop bc
- ld a, [wdc03]
- ld [wdc00], a
- ld [$ff8c], a
- ld [$4000], a
- call Function114c0b
- ld hl, String_114004
-.asm_114394
- ld de, wdc24
-.asm_114397
- ld a, [hli]
- and a
- jr z, .asm_1143ad
- ld b, a
- ld a, [de]
- inc de
- cp b
- jr z, .asm_114397
-.asm_1143a1
- ld a, [hli]
- and a
- jr nz, .asm_1143a1
- ld a, [hl]
- and a
- jr nz, .asm_114394
- ld b, a
- jp Function11425c
-
-.asm_1143ad
- ld a, [de]
- and a
- jr nz, .asm_114351
- xor a
- ld b, $1
- jp Function11425c
-; 1143b7
-
-Function1143b7: ; 1143b7
- ld a, [de]
- ld b, a
- inc de
- ld a, [de]
- ld c, a
- inc de
- ld a, [de]
- ld h, a
- inc de
- ld a, [de]
- inc de
- push de
- ld d, a
- ld e, h
- call Function1143f3
- cp $2
- jr z, .asm_1143eb
- and a
- jr nz, .asm_1143ed
- ld a, h
- pop hl
- push af
- ld a, [hli]
- ld [wdc01], a
- ld [$ff8c], a
- ld [$4000], a
- ld a, [hli]
- ld h, [hl]
- ld l, a
- pop af
- ld [hli], a
- ld a, e
- ld [hli], a
- ld a, d
- ld [hli], a
- ld a, c
- ld [hli], a
- ld [hl], b
- xor a
- jp Function11425c
-
-.asm_1143eb
- ld b, $82
-
-.asm_1143ed
- ld a, $1
- pop hl
- jp Function11425c
-; 1143f3
-
-Function1143f3: ; 1143f3
- call Function114412
- and a
- jr nz, .asm_11440d
- ld a, $4
- cp b
- jr c, .asm_114407
- jr z, .asm_114402
-.asm_114400
- xor a
- ret
-
-.asm_114402
- ld a, $0
- cp c
- jr nc, .asm_114400
-
-.asm_114407
- ld bc, VBlank5
- ld a, $2
- ret
-
-.asm_11440d
- ld a, $1
- ld b, $84
- ret
-; 114412
-
-Function114412: ; 114412
- ld a, c
- ld [wdc00], a
- ld [$ff8c], a
- ld [$4000], a
- ld hl, Unknown_11417f
- ld a, b
- add a
- ld c, a
- ld b, $0
- add hl, bc
- ld a, [hli]
- ld h, [hl]
- ld l, a
- ld c, $0
- jr .asm_11444a
-
-.asm_11442b
- ld a, [de]
- and a
- jp z, .asm_1144c2
- inc e
- call z, Function1144c8
- cp $d
- jr nz, .asm_11442b
- ld a, [de]
- inc e
- call z, Function1144c8
- cp $a
- jr nz, .asm_11442b
- ld a, [de]
- cp $2e
- jr z, .asm_1144ae
- cp $d
- jr z, .asm_1144b8
-
-.asm_11444a
- ld a, [wdc00]
- ld [wdc02], a
- ld a, [de]
- and a
- jr z, .asm_1144c2
- inc e
- call z, Function1144c8
- cp $61
- jr c, .asm_114462
- cp $7b
- jr nc, .asm_114462
- sub $20
-
-.asm_114462
- ld b, a
- ld a, [hl]
- and a
- jr z, .asm_114476
- cp b
- jr nz, .asm_11446e
- inc c
- inc hl
- jr .asm_11444a
-
-.asm_11446e
- ld a, c
- and a
- jr z, .asm_11442b
- dec c
- dec hl
- jr .asm_11446e
-
-.asm_114476
- ld a, $20
- cp b
- jr z, .asm_114481
- ld a, $a
- cp b
- jr z, .asm_114481
- dec de
-
-.asm_114481
- ld h, d
- ld l, e
- ld bc, NULL
-.asm_114486
- ld a, [de]
- and a
- jr z, .asm_1144c2
- inc bc
- inc e
- call z, Function1144c8
- cp $d
- jr nz, .asm_114486
- ld a, [de]
- inc bc
- inc e
- call z, Function1144c8
- cp $a
- jr nz, .asm_114486
- ld a, [de]
- cp $20
- jr z, .asm_114486
- cp $9
- jr z, .asm_114486
- ld d, h
- ld e, l
- ld a, [wdc02]
- ld h, a
- xor a
- ret
-
-.asm_1144ae
- inc e
- call z, Function1144c8
- ld a, [de]
- cp $d
- jp nz, .asm_11442b
-
-.asm_1144b8
- inc e
- call z, Function1144c8
- ld a, [de]
- cp $a
- jp nz, .asm_11442b
-
-.asm_1144c2
- ld a, $0
- ld [hl], a
- ld a, $1
- ret
-; 1144c8
-
-Function1144c8: ; 1144c8
- push bc
- ld bc, wdc00
- call Function115d80
- pop bc
- ret
-; 1144d1
-
-Function1144d1: ; 1144d1
- call Function114561
- dec de
- dec de
- push de
- inc de
- inc de
- inc de
- inc hl
- ld a, [de]
- ld [hli], a
- inc de
- ld a, [de]
- ld [hli], a
- inc hl
- ld a, [de]
- ld [hld], a
- dec de
- ld a, [de]
- ld [hl], a
- xor a
- ld [BigDoll], a
- ld [wdc17], a
- ld a, $2
- ld [wdc0e], a
- ld hl, wdc03
- ld c, [hl]
- inc hl
- ld e, [hl]
- inc hl
- ld d, [hl]
- call Function114576
- cp $2
- jr z, .asm_11455b
- and a
- jr z, .asm_114511
- ld a, $1
- ld [wdc0d], a
- call Function1146fa
- and a
- jr nz, .asm_11455b
- jr .asm_11451c
-
-.asm_114511
- call Function1146a4
- and a
- jr nz, .asm_11455b
- ld a, $2
- ld [wdc0d], a
-
-.asm_11451c
- pop hl
- ld a, [hli]
- ld [wdc01], a
- ld [$ff8c], a
- ld [$4000], a
- ld e, [hl]
- inc hl
- ld d, [hl]
- ld a, [wdc0d]
- ld [de], a
- ld b, $0
- ld a, [BigDoll]
- and a
- jr z, .asm_114537
- ld b, $1
-
-.asm_114537
- ld hl, wdc06
- ld a, [hl]
- ld [wdc01], a
- ld [$ff8c], a
- ld [$4000], a
- ld hl, wdc09
- ld e, [hl]
- inc hl
- ld d, [hl]
- dec de
- ld a, d
- or e
- jr z, .asm_114559
- ld hl, wdc07
- ld e, [hl]
- inc hl
- ld d, [hl]
- xor a
- ld [de], a
- jp Function11425c
-
-.asm_114559
- ld b, $83
-
-.asm_11455b
- pop hl
- ld a, $1
- jp Function11425c
-; 114561
-
-Function114561: ; 114561
- ld hl, wdc03
- ld a, [de]
- ld [hli], a
- inc de
- ld a, [de]
- ld [hli], a
- inc de
- ld a, [de]
- ld [hli], a
- inc de
- ld a, [de]
- ld [hli], a
- inc de
- ld a, [de]
- ld [hli], a
- inc de
- ld a, [de]
- ld [hl], a
- ret
-; 114576
-
-Function114576: ; 114576
- xor a
- ld [Bed], a
- ld b, $7
- call Function1143f3
- cp $2
- jr z, .asm_1145b6
- and a
- jr nz, .asm_1145b4
- ld a, h
- ld [wdc00], a
- ld [$ff8c], a
- ld [$4000], a
- push hl
- push de
- push bc
- ld hl, wdc24
- call Function115d53
- call Function1145c5
- pop bc
- pop de
- pop hl
- and a
- jr z, .asm_1145bf
- ld a, b
- and a
- jr nz, .asm_1145ba
- ld a, h
- ld [wdc00], a
- ld [$ff8c], a
- ld [$4000], a
- ld hl, String_114218
- call Function114acf
-
-.asm_1145b4
- xor a
- ret
-
-.asm_1145b6
- ld b, $82
- jr .asm_1145bc
-
-.asm_1145ba
- ld b, $81
-
-.asm_1145bc
- ld a, $2
- ret
-
-.asm_1145bf
- ld a, $1
- ld [Bed], a
- ret
-; 1145c5
-
-Function1145c5: ; 1145c5
- ld hl, wdc24
- ld de, String_11421e
- ld c, $0
-.asm_1145cd
- ld a, [hli]
- and a
- jr z, .asm_1145ef
- cp $20
- jr z, .asm_1145cd
- cp $d
- jr z, .asm_1145f8
- cp $61
- jr c, .asm_1145e3
- cp $7b
- jr nc, .asm_1145e3
- sub $20
-
-.asm_1145e3
- ld b, a
- ld a, [de]
- and a
- jr z, .asm_11460e
- inc de
- cp b
- jr z, .asm_1145cd
- dec de
- jr .asm_1145cd
-
-.asm_1145ef
- ld b, $0
- jr .asm_1145f5
-
-.asm_1145f3
- ld b, $81
-
-.asm_1145f5
- ld a, $1
- ret
-
-.asm_1145f8
- ld a, [hli]
- and a
- jr z, .asm_1145f3
- cp $a
- jr nz, .asm_1145f3
- ld a, [hli]
- and a
- jr z, .asm_1145f3
- cp $20
- jr z, .asm_1145cd
- cp $9
- jr z, .asm_1145cd
- jr .asm_1145f3
-
-.asm_11460e
- ld a, c
- and a
- jr nz, .asm_114619
- ld c, $1
- ld de, String_114228
- jr .asm_1145cd
-
-.asm_114619
- dec hl
- ld a, [hl]
- cp $22
- jr nz, .asm_114620
- inc hl
-
-.asm_114620
- ld de, $ddc8
- ld b, $0
- ld c, $40
-.asm_114627
- ld a, [hli]
- cp $22
- jr z, .asm_114636
- cp $d
- jr z, .asm_114636
- ld [de], a
- inc de
- inc b
- dec c
- jr nz, .asm_114627
-
-.asm_114636
- ld a, b
- ld [PartyMon5Defense], a
- xor a
- ret
-; 11463c
-
-Function11463c: ; 11463c
- ld a, [wdc00]
- push af
- push de
- ld hl, $ddc8
- ld a, [PartyMon5Defense]
- ld b, a
-.asm_114648
- ld a, [de]
- ld c, a
- ld a, [hli]
- cp c
- jr nz, .asm_11468a
- inc e
- call z, Function11469b
- dec b
- jr nz, .asm_114648
- ld a, [de]
- cp $2d
- jr z, .asm_114673
- cp $d
- jr nz, .asm_11468a
- xor a
- ld [Carpet], a
-.asm_114662
- inc e
- call z, Function11469b
- ld a, [de]
- cp $a
- jr nz, .asm_11468a
- inc e
- call z, Function11469b
- xor a
- pop hl
- pop hl
- ret
-
-.asm_114673
- inc e
- call z, Function11469b
- ld a, [de]
- cp $2d
- jr nz, .asm_11468a
- inc e
- call z, Function11469b
- ld a, $1
- ld [Carpet], a
- ld a, [de]
- cp $d
- jr z, .asm_114662
-
-.asm_11468a
- pop de
- pop af
- ld [wdc00], a
- ld [$ff8c], a
- ld [$4000], a
- xor a
- ld [Carpet], a
- ld a, $1
- ret
-; 11469b
-
-Function11469b: ; 11469b
- push bc
- ld bc, wdc00
- call Function115d80
- pop bc
- ret
-; 1146a4
-
-Function1146a4: ; 1146a4
- call Function114867
- and a
- jr nz, .asm_1146e4
- ld hl, wdc03
- ld a, [hli]
- ld [wdc00], a
- ld [$ff8c], a
- ld [$4000], a
- ld e, [hl]
- inc hl
- ld d, [hl]
- call Function114a18
- and a
- jr nz, .asm_1146e8
- call Function1148c2
- and a
- jr nz, .asm_1146e4
- ld hl, wdc03
- ld a, [hli]
- ld [wdc00], a
- ld [$ff8c], a
- ld [$4000], a
- ld e, [hl]
- inc hl
- ld d, [hl]
- call Function114a7a
- and a
- jr nz, .asm_1146e8
-.asm_1146da
- dec bc
- dec bc
- call Function1149cc
- and a
- jr nz, .asm_1146e4
- xor a
- ret
-
-.asm_1146e4
- ld b, $83
- jr .asm_1146f7
-
-.asm_1146e8
- ld a, [wdc17]
- and a
- jr z, .asm_1146f5
- ld a, $1
- ld [BigDoll], a
- jr .asm_1146da
-
-.asm_1146f5
- ld b, $81
-
-.asm_1146f7
- ld a, $1
- ret
-; 1146fa
-
-Function1146fa: ; 1146fa
- call Function114867
- and a
- jp nz, .asm_11478a
- ld hl, wdc03
- ld a, [hli]
- ld [wdc00], a
- ld [$ff8c], a
- ld [$4000], a
- ld e, [hl]
- inc hl
- ld d, [hl]
- call Function114a18
- and a
- jp nz, .asm_11478e
- call Function1149cc
- and a
- jp nz, .asm_11478a
- ld a, $1
- ld [wdc0e], a
- ld a, [wdc00]
- ld [$ff8c], a
- ld [$4000], a
- ld a, $1
- ld [RightOrnament], a
- call Function1147cd
- and a
- jp nz, .asm_1147b7
-.asm_114737
- call Function114843
- cp $1
- jr nz, .asm_114749
- ld a, [wdc17]
- and a
- jr z, .asm_114794
- ld a, $1
- ld [BigDoll], a
-
-.asm_114749
- call Function11494d
- and a
- jr nz, .asm_11478a
- ld a, [BigDoll]
- and a
- jr nz, .asm_114786
- ld hl, wdc03
- ld a, [hli]
- ld [wdc00], a
- ld [$ff8c], a
- ld [$4000], a
- ld e, [hl]
- inc hl
- ld d, [hl]
- call Function1147cd
- and a
- jr nz, .asm_1147b7
- ld a, [wdc0e]
- cp $3
- jr nz, .asm_114773
- dec bc
- dec bc
-
-.asm_114773
- call Function1149cc
- and a
- jr nz, .asm_11478a
- ld a, [wdc0d]
- inc a
- ld [wdc0d], a
- ld a, [BigDoll]
- and a
- jr z, .asm_114799
-
-.asm_114786
- ld b, $1
- jr .asm_1147cb
-
-.asm_11478a
- ld b, $83
- jr .asm_114796
-
-.asm_11478e
- ld a, [wdc17]
- and a
- jr nz, .asm_114796
-
-.asm_114794
- ld b, $81
-
-.asm_114796
- ld a, $1
- ret
-
-.asm_114799
- ld a, [Carpet]
- and a
- jr z, .asm_114737
- jr .asm_1147cb
-
- ld hl, wdc03
- ld a, [hli]
- ld [wdc00], a
- ld [$ff8c], a
- ld [$4000], a
- call Function114a7a
- and a
- jr z, .asm_1147cb
- xor a
- ld [BigDoll], a
-
-.asm_1147b7
- ld a, [wdc17]
- and a
- jr z, .asm_114794
- ld a, $1
- ld [BigDoll], a
- ld a, [wdc0d]
- cp $1
- jr nz, .asm_114773
- ld b, $1
-
-.asm_1147cb
- xor a
- ret
-; 1147cd
-
-Function1147cd: ; 1147cd
- ld bc, NULL
- ld a, [RightOrnament]
- and a
- jr nz, .asm_11480c
-.asm_1147d6
- ld a, [de]
- and a
- jr z, .asm_11482f
- inc e
- call z, Function11483a
- inc bc
- cp $d
- jr nz, .asm_1147d6
- ld a, [de]
- cp $a
- jr nz, .asm_11482f
-.asm_1147e8
- inc bc
- inc e
- call z, Function11483a
- ld a, [de]
- cp $20
- jr z, .asm_114827
- cp $9
- jr z, .asm_114827
- cp $d
- jr nz, .asm_11482b
- inc e
- call z, Function11483a
- ld a, [de]
- cp $a
- jr nz, .asm_11482f
- inc e
- call z, Function11483a
- ld a, h
- and a
- jr z, .asm_11480c
- dec bc
-
-.asm_11480c
- ld a, [de]
- cp $2d
- jr nz, .asm_1147d6
- inc e
- call z, Function11483a
- ld a, [de]
- cp $2d
- jr nz, .asm_1147d6
- inc e
- call z, Function11483a
- push bc
- call Function11463c
- pop bc
- and a
- jr nz, .asm_1147d6
- ret
-
-.asm_114827
- ld h, $1
- jr .asm_1147e8
-
-.asm_11482b
- ld h, $0
- jr .asm_11480c
-
-.asm_11482f
- and a
- jr nz, .asm_114837
- ld a, $1
- ld [wdc17], a
-
-.asm_114837
- ld a, $1
- ret
-; 11483a
-
-Function11483a: ; 11483a
- push bc
- ld bc, wdc00
- call Function115d80
- pop bc
- ret
-; 114843
-
-Function114843: ; 114843
- ld a, [wdc00]
- push af
- push de
- ld [$ff8c], a
- ld [$4000], a
- call Function114a18
- and a
- jr nz, .asm_11485f
- pop de
- pop af
- ld [wdc00], a
- ld hl, String_114218
- call Function114acf
- ret
-
-.asm_11485f
- pop de
- pop af
- ld [wdc00], a
- ld a, $1
- ret
-; 114867
-
-Function114867: ; 114867
- ld hl, wdc06
- ld a, [hli]
- ld [wdc01], a
- ld [$ff8c], a
- ld [$4000], a
- ld e, [hl]
- inc hl
- ld d, [hl]
- ld a, $2
- ld [de], a
- inc e
- call z, Function1148b9
- ld a, $1
- ld [de], a
- inc e
- call z, Function1148b9
- ld hl, wdc03
- ld a, [hli]
- ld [de], a
- inc e
- call z, Function1148b9
- ld a, [hli]
- ld [de], a
- inc e
- call z, Function1148b9
- ld a, [hli]
- ld [de], a
- inc e
- call z, Function1148b9
- ld hl, wdc06
- ld a, [wdc01]
- ld [hli], a
- ld [hl], e
- inc hl
- ld [hl], d
- inc hl
- ld c, [hl]
- inc hl
- ld b, [hl]
- ld d, $5
-.asm_1148a9
- dec bc
- ld a, b
- or c
- jr z, .asm_1148b6
- dec d
- jr nz, .asm_1148a9
- ld [hl], b
- dec hl
- ld [hl], c
- xor a
- ret
-
-.asm_1148b6
- ld a, $1
- ret
-; 1148b9
-
-Function1148b9: ; 1148b9
- push bc
- ld bc, wdc01
- call Function115d80
- pop bc
- ret
-; 1148c2
-
-Function1148c2: ; 1148c2
- ld hl, wdc06
- ld a, [hli]
- ld [wdc01], a
- ld [$ff8c], a
- ld [$4000], a
- ld e, [hl]
- inc hl
- ld d, [hl]
- ld a, c
- ld [de], a
- inc e
- call z, Function114944
- ld a, b
- ld [de], a
- inc e
- call z, Function114944
- ld a, [wdc0e]
- ld [de], a
- inc e
- call z, Function114944
- cp $3
- jr nz, .asm_114904
- ld hl, Plant
- ld a, [hli]
- ld [de], a
- inc e
- call z, Function114944
- ld a, [hli]
- ld [de], a
- inc e
- call z, Function114944
- ld a, [hli]
- ld [de], a
- inc e
- call z, Function114944
- ld a, [hli]
- ld [de], a
- inc e
- call z, Function114944
-
-.asm_114904
- ld hl, wdc03
- ld a, [hli]
- ld [de], a
- inc e
- call z, Function114944
- ld a, [hli]
- ld [de], a
- inc e
- call z, Function114944
- ld a, [hli]
- ld [de], a
- inc e
- call z, Function114944
- ld hl, wdc06
- ld a, [wdc01]
- ld [hli], a
- ld [hl], e
- inc hl
- ld [hl], d
- inc hl
- ld c, [hl]
- inc hl
- ld b, [hl]
- ld a, [wdc0e]
- cp $3
- jr z, .asm_114932
- ld d, $6
- jr .asm_114934
-
-.asm_114932
- ld d, $a
-
-.asm_114934
- dec bc
- ld a, b
- or c
- jr z, .asm_114941
- dec d
- jr nz, .asm_114934
- ld [hl], b
- dec hl
- ld [hl], c
- xor a
- ret
-
-.asm_114941
- ld a, $1
- ret
-; 114944
-
-Function114944: ; 114944
- push bc
- ld bc, wdc01
- call Function115d80
- pop bc
- ret
-; 11494d
-
-Function11494d: ; 11494d
- ld hl, wdc06
- ld a, [hli]
- ld [wdc01], a
- ld [$ff8c], a
- ld [$4000], a
- ld e, [hl]
- inc hl
- ld d, [hl]
- ld a, [wdc0e]
- ld [de], a
- inc e
- call z, Function1149c3
- cp $3
- jr nz, .asm_114983
- ld hl, Plant
- ld a, [hli]
- ld [de], a
- inc e
- call z, Function1149c3
- ld a, [hli]
- ld [de], a
- inc e
- call z, Function1149c3
- ld a, [hli]
- ld [de], a
- inc e
- call z, Function1149c3
- ld a, [hli]
- ld [de], a
- inc e
- call z, Function1149c3
-
-.asm_114983
- ld hl, wdc03
- ld a, [hli]
- ld [de], a
- inc e
- call z, Function1149c3
- ld a, [hli]
- ld [de], a
- inc e
- call z, Function1149c3
- ld a, [hli]
- ld [de], a
- inc e
- call z, Function1149c3
- ld hl, wdc06
- ld a, [wdc01]
- ld [hli], a
- ld [hl], e
- inc hl
- ld [hl], d
- inc hl
- ld c, [hl]
- inc hl
- ld b, [hl]
- ld a, [wdc0e]
- cp $3
- jr z, .asm_1149b1
- ld d, $4
- jr .asm_1149b3
-
-.asm_1149b1
- ld d, $8
-
-.asm_1149b3
- dec bc
- ld a, b
- or c
- jr z, .asm_1149c0
- dec d
- jr nz, .asm_1149b3
- ld [hl], b
- dec hl
- ld [hl], c
- xor a
- ret
-
-.asm_1149c0
- ld a, $1
- ret
-; 1149c3
-
-Function1149c3: ; 1149c3
- push bc
- ld bc, wdc01
- call Function115d80
- pop bc
- ret
-; 1149cc
-
-Function1149cc: ; 1149cc
- ld hl, wdc06
- ld a, [hl]
- ld [wdc01], a
- ld [$ff8c], a
- ld [$4000], a
- push de
- ld hl, wdc09
- ld e, [hl]
- inc hl
- ld d, [hl]
- dec de
- ld a, d
- or e
- jr z, .asm_114a0b
- dec de
- ld a, d
- or e
- jr z, .asm_114a0b
- ld [hl], d
- dec hl
- ld [hl], e
- ld hl, wdc07
- ld e, [hl]
- inc hl
- ld d, [hl]
- ld a, c
- ld [de], a
- inc e
- call z, Function114a0f
- ld a, b
- ld [de], a
- inc e
- call z, Function114a0f
- ld hl, wdc06
- ld a, [wdc01]
- ld [hli], a
- ld [hl], e
- inc hl
- ld [hl], d
- pop de
- xor a
- ret
-
-.asm_114a0b
- pop de
- ld a, $1
- ret
-; 114a0f
-
-Function114a0f: ; 114a0f
- push bc
- ld bc, wdc01
- call Function115d80
- pop bc
- ret
-; 114a18
-
-Function114a18: ; 114a18
- ld bc, NULL
- ld h, b
-.asm_114a1c
- inc bc
- ld a, [de]
- and a
- jr z, .asm_114a66
- inc e
- call z, Function114a71
- cp $d
- jr nz, .asm_114a1c
- ld a, [de]
- cp $a
- jr nz, .asm_114a66
-.asm_114a2e
- inc bc
- inc e
- call z, Function114a71
- ld a, [de]
- cp $20
- jr z, .asm_114a5e
- cp $9
- jr z, .asm_114a5e
- cp $d
- jr nz, .asm_114a62
- inc e
- call z, Function114a71
- ld a, [de]
- cp $a
- jr nz, .asm_114a66
- inc e
- call z, Function114a71
- ld a, h
- and a
- jr z, .asm_114a52
- dec bc
-
-.asm_114a52
- ld hl, wdc03
- ld a, [wdc00]
- ld [hli], a
- ld [hl], e
- inc hl
- ld [hl], d
- xor a
- ret
-
-.asm_114a5e
- ld h, $1
- jr .asm_114a2e
-
-.asm_114a62
- ld h, $0
- jr .asm_114a1c
-
-.asm_114a66
- and a
- jr nz, .asm_114a6e
- ld a, $1
- ld [wdc17], a
-
-.asm_114a6e
- ld a, $1
- ret
-; 114a71
-
-Function114a71: ; 114a71
- push bc
- ld bc, wdc00
- call Function115d80
- pop bc
- ret
-; 114a7a
-
-Function114a7a: ; 114a7a
- ld bc, NULL
-.asm_114a7d
- inc bc
- ld a, [de]
- and a
- jr z, .asm_114abb
- inc e
- call z, Function114ac6
- cp $d
- jr nz, .asm_114a7d
- ld a, [de]
- cp $a
- jr nz, .asm_114abb
- inc e
- call z, Function114ac6
- inc bc
- ld a, [de]
- cp $2e
- jr nz, .asm_114a7d
- inc e
- call z, Function114ac6
- ld a, [de]
- cp $d
- jr nz, .asm_114a7d
- inc e
- call z, Function114ac6
- ld a, [de]
- cp $a
- jr nz, .asm_114abb
- inc e
- call z, Function114ac6
- ld hl, wdc03
- ld a, [wdc00]
- ld [hli], a
- ld [hl], e
- inc hl
- ld [hl], d
- xor a
- ret
-
-.asm_114abb
- and a
- jr nz, .asm_114ac3
- ld a, $1
- ld [wdc17], a
-
-.asm_114ac3
- ld a, $1
- ret
-; 114ac6
-
-Function114ac6: ; 114ac6
- push bc
- ld bc, wdc00
- call Function115d80
- pop bc
- ret
-; 114acf
-
-Function114acf: ; 114acf
-.asm_114acf
- push hl
- push bc
-.asm_114ad1
- ld a, [hl]
- ld b, a
- ld a, [de]
- inc e
- call z, Function114b4c
- cp $61
- jr c, .asm_114ae2
- cp $7b
- jr nc, .asm_114ae2
- sub $20
-
-.asm_114ae2
- cp b
- jr z, .asm_114af4
- pop bc
- dec bc
- push bc
- ld a, b
- or c
- jr nz, .asm_114ad1
-.asm_114aec
- ld a, $2
- ld [wdc0e], a
- pop bc
- pop hl
- ret
-
-.asm_114af4
- inc hl
-.asm_114af5
- ld a, [hli]
- and a
- jr z, .asm_114b19
- ld b, a
- ld a, [de]
- inc e
- call z, Function114b4c
- cp $61
- jr c, .asm_114b09
- cp $7b
- jr nc, .asm_114b09
- sub $20
-
-.asm_114b09
- cp b
- jr nz, .asm_114b15
- pop bc
- dec bc
- push bc
- ld a, b
- or c
- jr nz, .asm_114af5
- jr .asm_114aec
-
-.asm_114b15
- pop bc
- pop hl
- jr .asm_114acf
-
-.asm_114b19
- ld b, $0
- ld c, $40
- ld a, [de]
- cp $22
- jr nz, .asm_114b26
- inc e
- call z, Function114b4c
-
-.asm_114b26
- ld hl, Plant
- ld a, [wdc00]
- ld [hli], a
- ld [hl], e
- inc hl
- ld [hl], d
- inc hl
-.asm_114b31
- ld a, [de]
- cp $22
- jr z, .asm_114b42
- cp $d
- jr z, .asm_114b42
- inc e
- call z, Function114b4c
- inc b
- dec c
- jr nz, .asm_114b31
-
-.asm_114b42
- ld [hl], b
- pop bc
- pop hl
- ld a, $3
- ld [wdc0e], a
- xor a
- ret
-; 114b4c
-
-Function114b4c: ; 114b4c
- push bc
- ld bc, wdc00
- call Function115d80
- pop bc
- ret
-; 114b55
-
-Function114b55: ; 114b55
- call Function114561
- ld b, $0
- ld hl, wdc03
- ld c, [hl]
- inc hl
- ld e, [hl]
- inc hl
- ld d, [hl]
- ld hl, wdc24
-.asm_114b65
- push de
- push bc
- push hl
- call Function1143f3
- cp $2
- jr z, .asm_114bb2
- and a
- jr nz, .asm_114b8c
- ld a, h
- pop hl
- inc hl
- ld [hld], a
- ld a, $1
- ld [hli], a
- inc hl
- ld [hl], e
- inc hl
- ld [hl], d
- inc hl
- ld [hl], c
- inc hl
- ld [hl], b
- inc hl
-.asm_114b82
- pop bc
- pop de
- inc b
- ld a, b
- cp $d
- jr z, .asm_114b96
- jr .asm_114b65
-
-.asm_114b8c
- pop hl
- xor a
- ld [hli], a
- ld [hli], a
- ld [hli], a
- ld [hli], a
- ld [hli], a
- ld [hli], a
- jr .asm_114b82
-
-.asm_114b96
- ld hl, wdc06
- ld a, [hli]
- ld [wdc01], a
- ld [$ff8c], a
- ld [$4000], a
- ld e, [hl]
- inc hl
- ld d, [hl]
- inc hl
- ld bc, $004e
- ld hl, wdc24
- call Function115d6a
- jp Function11425c
-
-.asm_114bb2
- ld a, $1
- pop bc
- pop bc
- pop bc
- ld b, $82
- jp Function11425c
-; 114bbc
-
-Function114bbc: ; 114bbc
- ld h, d
- ld l, e
- ld a, [hli]
- ld b, a
- ld a, [hli]
- ld c, a
- ld a, [hli]
- ld e, a
- ld d, [hl]
- inc hl
- push hl
- call Function1143f3
- cp $2
- jr z, .asm_114c03
- and a
- jr nz, .asm_114bff
- ld a, h
- ld [wdc00], a
- ld [$ff8c], a
- ld [$4000], a
- call Function114c0b
- ld hl, wdc24
- call Function114c5e
- ld a, b
- or c
- jr z, .asm_114bff
- pop hl
- ld a, [hli]
- ld [wdc01], a
- ld [$ff8c], a
- ld [$4000], a
- ld a, [hli]
- ld e, a
- ld d, [hl]
- ld hl, wdc24
- push bc
- call Function115d6a
- pop hl
- jp Function11425c
-
-.asm_114bff
- ld b, $84
- jr .asm_114c05
-
-.asm_114c03
- ld b, $82
-
-.asm_114c05
- ld a, $1
- pop hl
- jp Function11425c
-; 114c0b
-
-Function114c0b: ; 114c0b
- ld hl, wdc24
- push bc
- call Function115d53
- pop bc
- ld hl, wdc24
- ld d, h
- ld e, l
-.asm_114c18
- ld a, [hli]
- cp $d
- jr z, .asm_114c34
- ld [de], a
- inc de
- dec bc
- ld a, b
- or c
- jr nz, .asm_114c18
-.asm_114c24
- xor a
- ld [de], a
- ld hl, wdc24
- ld bc, NULL
-.asm_114c2c
- ld a, [hli]
- inc bc
- and a
- jr nz, .asm_114c2c
- dec bc
- xor a
- ret
-
-.asm_114c34
- dec bc
- ld a, b
- or c
- jr z, .asm_114c24
- ld a, [hli]
- cp $a
- jr nz, .asm_114c18
- dec bc
- ld a, b
- or c
- jr z, .asm_114c24
- ld a, [hli]
- cp $20
- jr z, .asm_114c4e
- cp $9
- jr z, .asm_114c4e
- jr .asm_114c24
-
-.asm_114c4e
- dec bc
- ld a, b
- or c
- jr z, .asm_114c24
- jr .asm_114c18
-; 114c55
-
-Function114c55: ; 114c55
- push bc
- ld bc, wdc00
- call Function115d80
- pop bc
- ret
-; 114c5e
-
-Function114c5e: ; 114c5e
- ld de, PartyMon5Defense
- push hl
-.asm_114c62
- ld a, [hli]
- ld [de], a
- inc de
- and a
- jr z, .asm_114cc6
- cp $3d
- jr nz, .asm_114c62
- ld a, [hli]
- ld [de], a
- inc de
- cp $3f
- jr nz, .asm_114c62
- dec de
- dec de
-.asm_114c75
- ld a, [hli]
- cp $3f
- jr nz, .asm_114c75
- ld a, [hli]
- cp $42
- jr nz, .asm_114cb8
- inc hl
- ld bc, NULL
- push hl
-.asm_114c84
- inc bc
- ld a, [hli]
- cp $3f
- jr nz, .asm_114c84
- inc bc
- ld a, [hli]
- cp $3d
- jr nz, .asm_114c84
- dec bc
- dec bc
- ld a, l
- ld [wdc03], a
- ld a, h
- ld [wdc04], a
- pop hl
- push de
- call Function115c49
- pop de
- ld h, d
- ld l, e
- ld a, [hli]
- ld c, a
- ld a, [hli]
- ld b, a
-.asm_114ca6
- ld a, [hli]
- ld [de], a
- inc de
- dec bc
- ld a, b
- or c
- jr nz, .asm_114ca6
- ld a, [wdc03]
- ld l, a
- ld a, [wdc04]
- ld h, a
- jr .asm_114c62
-
-.asm_114cb8
- ld a, $3d
- ld [de], a
- inc de
- ld a, $3f
- ld [de], a
- inc de
-.asm_114cc0
- ld a, [hli]
- ld [de], a
- inc de
- and a
- jr nz, .asm_114cc0
-
-.asm_114cc6
- ld [de], a
- pop hl
- ld de, PartyMon5Defense
- ld bc, NULL
-.asm_114cce
- inc bc
- ld a, [de]
- ld [hli], a
- inc de
- and a
- jr z, .asm_114cd7
- jr .asm_114cce
-
-.asm_114cd7
- dec bc
- ret
-; 114cd9
-
-Function114cd9: ; 114cd9
- ld h, d
- ld l, e
- ld b, [hl]
- inc hl
- ld c, [hl]
- inc hl
- ld e, [hl]
- inc hl
- ld d, [hl]
- inc hl
- push hl
- call Function1143f3
- and a
- jr nz, .asm_114d33
- ld [wdc03], a
- ld [wdc04], a
- ld a, h
- ld [wdc00], a
- ld [$ff8c], a
- ld [$4000], a
- ld hl, wdc24
- call Function114d39
- ld hl, wdc24
- call Function114d99
- pop hl
- push hl
- inc hl
- inc hl
- inc hl
- inc hl
- ld a, [hld]
- cp b
- jr c, .asm_114d2d
- jr z, .asm_114d29
-.asm_114d11
- pop hl
- ld a, [hli]
- ld [wdc01], a
- ld [$ff8c], a
- ld [$4000], a
- ld a, [hli]
- ld e, a
- ld a, [hli]
- ld d, a
- ld hl, PartyMon5Defense
- call Function115d6a
- xor a
- jp Function11425c
-
-.asm_114d29
- ld a, [hli]
- cp c
- jr nc, .asm_114d11
-
-.asm_114d2d
- ld b, $83
- jr .asm_114d33
-
- ld b, $82
-
-.asm_114d33
- pop hl
- ld a, $1
- jp Function11425c
-; 114d39
-
-Function114d39: ; 114d39
-.asm_114d39
- ld a, [wdc04]
- and a
- jr nz, .asm_114d4a
- ld a, [de]
- cp $28
- jr z, .asm_114d55
- cp $22
- jr z, .asm_114d55
- jr .asm_114d7f
-
-.asm_114d4a
- ld a, [de]
- cp $29
- jr z, .asm_114d5f
- cp $22
- jr z, .asm_114d6f
- jr .asm_114d84
-
-.asm_114d55
- ld [wdc03], a
- ld a, $1
- ld [wdc04], a
- jr .asm_114d84
-
-.asm_114d5f
- ld a, [wdc03]
- cp $28
- jr nz, .asm_114d84
- xor a
- ld [wdc03], a
- ld [wdc04], a
- jr .asm_114d84
-
-.asm_114d6f
- ld a, [wdc03]
- cp $22
- jr nz, .asm_114d84
- xor a
- ld [wdc03], a
- ld [wdc04], a
- jr .asm_114d84
-
-.asm_114d7f
- cp $20
- jr z, .asm_114d84
- ld [hli], a
-
-.asm_114d84
- dec bc
- ld a, b
- or c
- jr z, .asm_114d96
- inc e
- jr nz, .asm_114d39
- push bc
- ld bc, wdc00
- call Function115d80
- pop bc
- jr .asm_114d39
-
-.asm_114d96
- xor a
- ld [hli], a
- ret
-; 114d99
-
-Function114d99: ; 114d99
- ld de, PartyMon5Defense
- xor a
- ld [de], a
-.asm_114d9e
- ld a, [hli]
- call Function114df1
- and a
- jr z, .asm_114dde
- cp $40
- jr nz, .asm_114d9e
- dec hl
-.asm_114daa
- dec hl
- ld a, [hl]
- call Function114e2d
- and a
- jr z, .asm_114daa
- inc hl
- push hl
- ld b, $0
-.asm_114db6
- ld a, [hli]
- cp $40
- jr z, .asm_114dc1
- call Function114e2d
- and a
- jr nz, .asm_114dc4
-
-.asm_114dc1
- inc b
- jr .asm_114db6
-
-.asm_114dc4
- pop hl
- ld a, [PartyMon5Defense]
- and a
- jr z, .asm_114dd2
- ld a, $2c
- inc de
- ld [de], a
- ld a, [PartyMon5Defense]
-
-.asm_114dd2
- inc a
- ld [PartyMon5Defense], a
-.asm_114dd6
- inc de
- ld a, [hli]
- ld [de], a
- dec b
- jr nz, .asm_114dd6
- jr .asm_114d9e
-
-.asm_114dde
- inc de
- xor a
- ld [de], a
- ld a, $dd
- cpl
- ld h, a
- ld a, $c8
- cpl
- ld l, a
- inc hl
- add hl, de
- ld b, h
- ld c, l
- inc bc
- inc bc
- xor a
- ret
-; 114df1
-
-Function114df1: ; 114df1
- cp $1b
- ret nz
- ld a, [hli]
- and a
- jr z, .asm_114e2b
- cp $24
- jr nz, .asm_114e09
- ld a, [hli]
- and a
- jr z, .asm_114e2b
- cp $42
- jr z, .asm_114e0b
- cp $40
- jr z, .asm_114e0b
- dec hl
-
-.asm_114e09
- dec hl
- ret
-
-.asm_114e0b
- ld a, [hli]
- and a
- jr z, .asm_114e2b
- cp $1b
- jr nz, .asm_114e0b
- ld a, [hli]
- and a
- jr z, .asm_114e2b
- cp $28
- jr nz, .asm_114e0b
- ld a, [hli]
- and a
- jr z, .asm_114e2b
- cp $42
- jr z, .asm_114e29
- cp $4a
- jr z, .asm_114e29
- jr .asm_114e0b
-
-.asm_114e29
- ld a, [hli]
- ret
-
-.asm_114e2b
- xor a
- ret
-; 114e2d
-
-Function114e2d: ; 114e2d
- cp $30
- jr c, .asm_114e45
- cp $40
- jr c, .asm_114e58
- cp $41
- jr c, .asm_114e45
- cp $5b
- jr c, .asm_114e58
- cp $61
- jr c, .asm_114e45
- cp $7b
- jr c, .asm_114e58
-
-.asm_114e45
- cp $20
- jr z, .asm_114e58
- cp $2d
- jr z, .asm_114e58
- cp $2e
- jr z, .asm_114e58
- cp $5f
- jr z, .asm_114e58
-.asm_114e55
- ld a, $1
- ret
-
-.asm_114e58
- cp $3c
- jr z, .asm_114e55
- cp $3e
- jr z, .asm_114e55
- xor a
- ret
-; 114e62
-
-Function114e62: ; 114e62
- ld a, c
- and a
- jr nz, .asm_114e6f
- ld a, [wdc23]
- and a
- jp z, Function11425c
- jr .asm_114e76
-
-.asm_114e6f
- xor a
- ld [wdc23], a
- call Function114ee9
-
-.asm_114e76
- call Function114f0a
- cp $ff
- jp z, Function11425c
- and a
- jr nz, .asm_114e99
- call Function114ea0
- and a
- jr nz, .asm_114e99
- ld hl, wdc09
- ld a, [hli]
- cpl
- ld e, a
- ld a, [hli]
- cpl
- ld d, a
- inc de
- ld a, [hli]
- ld h, [hl]
- ld l, a
- add hl, de
- xor a
- jp Function11425c
-
-.asm_114e99
- ld a, $1
- ld b, $83
- jp Function11425c
-; 114ea0
-
-Function114ea0: ; 114ea0
- ld hl, wdc06
- ld a, [hli]
- ld [wdc01], a
- ld [$ff8c], a
- ld [$4000], a
- ld a, [hli]
- ld e, a
- ld a, [hli]
- ld d, a
- ld a, [hli]
- ld c, a
- ld a, [hli]
- ld b, a
- ld a, $d
- ld [de], a
- dec bc
- ld a, b
- or c
- jr z, .asm_114edb
- inc e
- call z, Function114ee0
- ld a, $a
- ld [de], a
- dec bc
- inc e
- call z, Function114ee0
- ld hl, wdc06
- ld a, [wdc01]
- ld [hli], a
- ld a, e
- ld [hli], a
- ld a, d
- ld [hli], a
- ld a, c
- ld [hli], a
- ld [hl], b
- xor a
- ld [wdc23], a
- ret
-
-.asm_114edb
- ld a, $1
- ld b, $83
- ret
-; 114ee0
-
-Function114ee0: ; 114ee0
- push bc
- ld bc, wdc01
- call Function115d80
- pop bc
- ret
-; 114ee9
-
-Function114ee9: ; 114ee9
- ld hl, wdc03
- ld a, b
- ld [hli], a
- ld a, c
- ld [hli], a
- ld [hli], a
- ld a, [de]
- ld [hli], a
- inc de
- ld a, [de]
- ld [hli], a
- inc de
- ld a, [de]
- ld [hli], a
- inc de
- ld a, [de]
- ld c, a
- ld [hli], a
- inc de
- ld a, [de]
- ld b, a
- ld [hli], a
- inc de
- ld a, c
- ld [hli], a
- ld a, b
- ld [hli], a
- ld a, e
- ld [hli], a
- ld [hl], d
- ret
-; 114f0a
-
-Function114f0a: ; 114f0a
- call Function114f39
- and a
- jr nz, .asm_114f26
- ld a, [wdc03]
- cp $6
- jr c, .asm_114f21
- cp $c
- jr z, .asm_114f23
- call Function114f59
- and a
- jr nz, .asm_114f23
-
-.asm_114f21
- xor a
- ret
-
-.asm_114f23
- ld a, $1
- ret
-
-.asm_114f26
- call Function114f59
- and a
- jr nz, .asm_114f23
- ld hl, wdc0d
- ld e, [hl]
- inc hl
- ld d, [hl]
- ld a, [de]
- and a
- jr z, .asm_114f21
- ld a, $ff
- ret
-; 114f39
-
-Function114f39: ; 114f39
- ld hl, wdc0d
- ld e, [hl]
- inc hl
- ld d, [hl]
- inc hl
- ld a, [de]
- and a
- jr z, .asm_114f58
- ld [hli], a
- inc de
- ld a, [de]
- ld [hli], a
- inc de
- ld a, [de]
- ld [hli], a
- inc de
- ld a, [de]
- ld [hli], a
- inc de
- ld hl, wdc0d
- ld [hl], e
- inc hl
- ld [hl], d
- ld a, $1
- ret
-
-.asm_114f58
- ret
-; 114f59
-
-Function114f59: ; 114f59
- ld a, [wdc23]
- and a
- jr nz, .asm_114f7c
- ld a, [wdc03]
- cp $11
- jr z, .asm_114fa7
- add a
- ld e, a
- ld d, 0
- ld hl, Unknown_114011
- add hl, de
- ld a, [hli]
- ld h, [hl]
- ld l, a
- call Function115020
- and a
- jr nz, .asm_114fe7
- ld a, $1
- ld [wdc23], a
-
-.asm_114f7c
- ld a, [wdc03]
- cp $5
- jr c, .asm_114fc9
- jr z, .asm_114fec
- cp $8
- jr c, .asm_114fa5
- jr z, .asm_114ff4
- cp $b
- jr c, .asm_114fa5
- jr z, .asm_114ffc
- cp $c
- jr z, .asm_115007
- cp $d
- jr z, .asm_114fa5
- cp $10
- jr c, .asm_115015
- jr z, .asm_114fa5
- cp $12
- jr c, .asm_114fa5
- jr .asm_114fe7
-
-.asm_114fa5
- xor a
- ret
-
-.asm_114fa7
- ld hl, Bed
- ld c, [hl]
- inc hl
- ld a, [hli]
- ld [wdc00], a
- ld [$ff8c], a
- ld [$4000], a
- ld e, [hl]
- inc hl
- ld d, [hl]
- ld hl, wdc24
- call Function115d53
- ld hl, wdc24
- call Function115020
- and a
- jr nz, .asm_114fe7
- jr .asm_11501e
-
-.asm_114fc9
- call Function115062
- and a
- jr nz, .asm_114fe7
- ld a, [wdc04]
- dec a
- ld [wdc04], a
- and a
- jr z, .asm_114fdf
- call Function114f39
- and a
- jr nz, .asm_114fc9
-
-.asm_114fdf
- ld a, [wdc05]
- ld [wdc04], a
- jr .asm_11501e
-
-.asm_114fe7
- ld a, $1
- ld b, $83
- ret
-
-.asm_114fec
- call Function115062
- and a
- jr nz, .asm_114fe7
- jr .asm_11501e
-
-.asm_114ff4
- call Function115179
- and a
- jr nz, .asm_114fe7
- jr .asm_11501e
-
-.asm_114ffc
- ld hl, String_114000
- call Function115217
- and a
- jr nz, .asm_114fe7
- jr .asm_11501e
-
-.asm_115007
- call Function11528f
- ld hl, wdc24
- call Function115217
- and a
- jr nz, .asm_114fe7
- jr .asm_11501e
-
-.asm_115015
- ld hl, String_114000
- call Function115217
- and a
- jr nz, .asm_114fe7
-
-.asm_11501e
- xor a
- ret
-; 115020
-
-Function115020: ; 115020
- push hl
- ld hl, wdc06
- ld a, [hli]
- ld [wdc01], a
- ld [$ff8c], a
- ld [$4000], a
- ld a, [hli]
- ld e, a
- ld a, [hli]
- ld d, a
- ld a, [hli]
- ld c, a
- ld a, [hli]
- ld b, a
- pop hl
-.asm_115036
- ld a, [hli]
- and a
- jr z, .asm_115046
- ld [de], a
- dec bc
- ld a, b
- or c
- jr z, .asm_115056
- inc e
- call z, Function115059
- jr .asm_115036
-
-.asm_115046
- ld hl, wdc06
- ld a, [wdc01]
- ld [hli], a
- ld a, e
- ld [hli], a
- ld a, d
- ld [hli], a
- ld a, c
- ld [hli], a
- ld [hl], b
- xor a
- ret
-
-.asm_115056
- ld a, $1
- ret
-; 115059
-
-Function115059: ; 115059
- push bc
- ld bc, wdc01
- call Function115d80
- pop bc
- ret
-; 115062
-
-Function115062: ; 115062
- ld hl, Bed
- ld a, [hli]
- and a
- jr z, .asm_1150ae
- ld c, a
- ld a, [hli]
- ld [wdc00], a
- ld [$ff8c], a
- ld [$4000], a
- ld e, [hl]
- inc hl
- ld d, [hl]
- ld b, $0
- ld hl, wdc24
- ld a, [wdc23]
- cp $1
- jr z, .asm_11509b
- cp $2
- jr z, .asm_115098
- cp $3
- jr nz, .asm_1150b2
- ld a, $2c
- ld [hli], a
- ld a, $d
- ld [hli], a
- ld a, $a
- ld [hli], a
- ld a, $9
- ld [hli], a
- jr .asm_11509b
-
-.asm_115098
- ld a, $2c
- ld [hli], a
-
-.asm_11509b
- call Function115d53
- call Function1150b3
- call Function115136
- ld a, [wdc23]
- inc a
- cp $4
- jr nz, .asm_1150ae
- ld a, $2
-
-.asm_1150ae
- ld [wdc23], a
- xor a
-
-.asm_1150b2
- ret
-; 1150b3
-
-Function1150b3: ; 1150b3
- ld hl, wdc24
- ld de, PartyMon5Defense
- ld b, $0
-.asm_1150bb
- ld c, $0
- ld a, [hli]
- cp $1b
- jr z, .asm_1150c9
- ld [de], a
- inc de
- and a
- jr z, .asm_115133
- jr .asm_1150bb
-
-.asm_1150c9
- inc c
- ld a, [hl]
- cp $24
- jr nz, .asm_1150bb
- inc hl
- inc c
- ld a, [hl]
- cp $42
- jr z, .asm_1150dc
- cp $40
- jr z, .asm_1150dc
- jr .asm_1150bb
-
-.asm_1150dc
- push hl
-.asm_1150dd
- inc c
- ld a, [hli]
- and a
- jr z, .asm_115133
- cp $1b
- jr nz, .asm_1150dd
- inc c
- ld a, [hli]
- cp $28
- jr nz, .asm_1150dd
- inc c
- ld a, [hli]
- cp $42
- jr z, .asm_1150f8
- cp $4a
- jr z, .asm_1150f8
- jr .asm_1150dd
-
-.asm_1150f8
- ld a, l
- ld [Console], a
- ld a, h
- ld [LeftOrnament], a
- ld hl, String_114232
-.asm_115103
- ld a, [hli]
- and a
- jr z, .asm_11510b
- ld [de], a
- inc de
- jr .asm_115103
-
-.asm_11510b
- pop hl
- dec hl
- dec hl
- push de
- call Function1158c2
- pop de
- ld h, d
- ld l, e
- ld c, [hl]
- inc hl
- ld b, [hl]
- inc hl
-.asm_115119
- ld a, [hli]
- ld [de], a
- inc de
- dec bc
- ld a, b
- or c
- jr nz, .asm_115119
- ld a, $3f
- ld [de], a
- inc de
- ld a, $3d
- ld [de], a
- inc de
- ld a, [Console]
- ld l, a
- ld a, [LeftOrnament]
- ld h, a
- jr .asm_1150bb
-
-.asm_115133
- xor a
- ld [de], a
- ret
-; 115136
-
-Function115136: ; 115136
- ld hl, wdc06
- ld a, [hli]
- ld [wdc01], a
- ld [$ff8c], a
- ld [$4000], a
- ld a, [hli]
- ld e, a
- ld a, [hli]
- ld d, a
- ld a, [hli]
- ld c, a
- ld a, [hli]
- ld b, a
- ld hl, PartyMon5Defense
-.asm_11514d
- ld a, [hli]
- and a
- jr z, .asm_11515d
- ld [de], a
- dec bc
- ld a, b
- or c
- jr z, .asm_11516d
- inc e
- call z, Function115170
- jr .asm_11514d
-
-.asm_11515d
- ld hl, wdc06
- ld a, [wdc01]
- ld [hli], a
- ld a, e
- ld [hli], a
- ld a, d
- ld [hli], a
- ld a, c
- ld [hli], a
- ld [hl], b
- xor a
- ret
-
-.asm_11516d
- ld a, $1
- ret
-; 115170
-
-Function115170: ; 115170
- push bc
- ld bc, wdc01
- call Function115d80
- pop bc
- ret
-; 115179
-
-Function115179: ; 115179
- ld hl, wdc06
- ld a, [hli]
- ld [wdc01], a
- ld [$ff8c], a
- ld [$4000], a
- ld a, [hli]
- ld e, a
- ld a, [hli]
- ld d, a
- ld a, [hli]
- ld c, a
- ld a, [hli]
- ld b, a
- ld hl, $013f
- ld a, [hli]
- ld [de], a
- dec bc
- ld a, b
- or c
- jr z, .asm_1151ef
- inc e
- call z, Function11520e
- ld a, [hli]
- ld [de], a
- dec bc
- ld a, b
- or c
- jr z, .asm_1151ef
- inc e
- call z, Function11520e
- ld a, [hli]
- ld [de], a
- dec bc
- ld a, b
- or c
- jr z, .asm_1151ef
- inc e
- call z, Function11520e
- ld a, [hli]
- ld [de], a
- dec bc
- ld a, b
- or c
- jr z, .asm_1151ef
- inc e
- call z, Function11520e
- ld a, $2d
- ld [de], a
- dec bc
- ld a, b
- or c
- jr z, .asm_1151ef
- inc e
- call z, Function11520e
- ld a, [$014c]
- ld h, a
- and $f0
- swap a
- cp $a
- jr nc, .asm_1151d8
- add $30
- jr .asm_1151da
-
-.asm_1151d8
- add $37
-
-.asm_1151da
- ld [de], a
- dec bc
- ld a, b
- or c
- jr z, .asm_1151ef
- inc e
- call z, Function11520e
- ld a, h
- and $f
- cp $a
- jr nc, .asm_1151f2
- add $30
- jr .asm_1151f4
-
-.asm_1151ef
- ld a, $1
- ret
-
-.asm_1151f2
- add $37
-
-.asm_1151f4
- ld [de], a
- dec bc
- ld a, b
- or c
- jr z, .asm_1151ef
- inc e
- call z, Function11520e
- ld hl, wdc06
- ld a, [wdc01]
- ld [hli], a
- ld a, e
- ld [hli], a
- ld a, d
- ld [hli], a
- ld a, c
- ld [hli], a
- ld [hl], b
- xor a
- ret
-; 11520e
-
-Function11520e: ; 11520e
- push bc
- ld bc, wdc01
- call Function115d80
- pop bc
- ret
-; 115217
-
-Function115217: ; 115217
- push hl
- ld hl, wdc06
- ld a, [hli]
- ld [wdc01], a
- ld [$ff8c], a
- ld [$4000], a
- ld a, [hli]
- ld e, a
- ld a, [hli]
- ld d, a
- ld a, [hli]
- ld c, a
- ld a, [hli]
- ld b, a
- pop hl
-.asm_11522d
- ld a, [hli]
- and a
- jr z, .asm_11523d
- ld [de], a
- dec bc
- ld a, b
- or c
- jr z, .asm_115262
- inc e
- call z, Function115286
- jr .asm_11522d
-
-.asm_11523d
- ld a, [wdc03]
- cp $b
- jr z, .asm_115278
- cp $c
- jr z, .asm_115278
- cp $e
- jr z, .asm_115252
- cp $f
- jr z, .asm_115265
- jr .asm_115262
-
-.asm_115252
- ld hl, wdc06
- ld a, [wdc01]
- ld [hli], a
- ld a, e
- ld [hli], a
- ld a, d
- ld [hli], a
- ld a, c
- ld [hli], a
- ld [hl], b
- xor a
- ret
-
-.asm_115262
- ld a, $1
- ret
-
-.asm_115265
- ld h, $2
-.asm_115267
- ld a, $2d
- ld [de], a
- dec bc
- ld a, b
- or c
- jr z, .asm_115262
- inc e
- call z, Function115286
- dec h
- jr nz, .asm_115267
- jr .asm_115252
-
-.asm_115278
- ld a, $22
- ld [de], a
- dec bc
- ld a, b
- or c
- jr z, .asm_115262
- inc e
- call z, Function115286
- jr .asm_115252
-; 115286
-
-Function115286: ; 115286
- push bc
- ld bc, wdc01
- call Function115d80
- pop bc
- ret
-; 11528f
-
-Function11528f: ; 11528f
- ld hl, Bed
- ld c, [hl]
- inc hl
- ld a, [hli]
- ld [wdc00], a
- ld [$ff8c], a
- ld [$4000], a
- ld a, [hli]
- ld e, a
- ld a, [hli]
- ld d, a
- ld hl, wdc24
-.asm_1152a4
- ld a, [de]
- ld [hli], a
- inc e
- call z, Function1152af
- dec c
- jr nz, .asm_1152a4
- ld [hl], c
- ret
-; 1152af
-
-Function1152af: ; 1152af
- push bc
- ld bc, wdc00
- call Function115d80
- pop bc
- ret
-; 1152b8
-
-Function1152b8: ; 1152b8
- push bc
- call Function11537d
- push de
- ld h, d
- ld l, e
- ld a, [hli]
- ld b, a
- ld c, $1
- call Function1153d2
- pop de
- and a
- jr nz, .asm_1152f9
-.asm_1152ca
- ld hl, wdc0d
- ld e, [hl]
- inc hl
- ld d, [hl]
-.asm_1152d0
- ld a, [wdc03]
- cp $3
- jr nz, .asm_1152d8
- push de
-
-.asm_1152d8
- cp $5
- jr nz, .asm_1152e7
- pop hl
- ld a, [hli]
- ld b, a
- ld c, $3
- call Function1153d2
- and a
- jr nz, .asm_1152f9
-
-.asm_1152e7
- ld a, [de]
- inc de
- and a
- jr nz, .asm_115301
- ld a, [wdc03]
- cp $6
- jr z, .asm_115335
- inc a
- ld [wdc03], a
- jr .asm_1152d0
-
-.asm_1152f9
- pop hl
- ld a, $1
- ld b, $83
- jp Function11425c
-
-.asm_115301
- ld hl, wdc0d
- ld [hl], e
- inc hl
- ld [hl], d
-.asm_115307
- ld [wdc05], a
- ld a, $1
- ld [wdc04], a
- call Function1153b5
- call Function114f59
- and a
- jr nz, .asm_1152f9
- ld a, [wdc05]
- dec a
- jr nz, .asm_115307
- ld a, [wdc03]
- inc a
- ld [wdc03], a
- call Function114ea0
- and a
- jr nz, .asm_1152f9
- ld [wdc23], a
- ld a, [wdc03]
- cp $6
- jr nz, .asm_1152ca
-
-.asm_115335
- call Function1153b5
- xor a
- ld [wdc23], a
- call Function114f59
- and a
- jr nz, .asm_1152f9
- call Function114ea0
- and a
- jr nz, .asm_1152f9
- ld a, [wdc03]
- inc a
- ld [wdc03], a
- cp $9
- jr nz, .asm_115335
- pop bc
- ld a, b
- and a
- jr z, .asm_11536b
- call Function1153b5
- xor a
- ld [wdc23], a
- call Function114f59
- and a
- jr nz, .asm_1152f9
- call Function114ea0
- and a
- jr nz, .asm_1152f9
-
-.asm_11536b
- ld hl, wdc09
- ld a, [hli]
- cpl
- ld e, a
- ld a, [hli]
- cpl
- ld d, a
- inc de
- ld a, [hli]
- ld h, [hl]
- ld l, a
- add hl, de
- xor a
- jp Function11425c
-; 11537d
-
-Function11537d: ; 11537d
- ld hl, wdc06
- ld a, [de]
- ld [hli], a
- inc de
- ld a, [de]
- ld [hli], a
- inc de
- ld a, [de]
- ld [hli], a
- inc de
- ld a, [de]
- ld [hli], a
- ld b, a
- inc de
- ld a, [de]
- ld [hli], a
- inc hl
- ld a, [de]
- ld [hld], a
- ld a, b
- ld [hli], a
- inc de
- ld hl, RightOrnament
- ld a, [de]
- ld [hli], a
- inc de
- ld a, [de]
- ld [hli], a
- inc de
- ld a, [de]
- ld [hli], a
- inc de
- ld a, [de]
- ld [hli], a
- inc de
- ld a, [de]
- ld [hli], a
- inc de
- ld hl, wdc0d
- ld [hl], e
- inc hl
- ld [hl], d
- xor a
- ld [wdc03], a
- ld [wdc23], a
- ret
-; 1153b5
-
-Function1153b5: ; 1153b5
- ld hl, wdc0d
- ld e, [hl]
- inc hl
- ld d, [hl]
- inc hl
- inc hl
- ld a, [de]
- ld [hli], a
- inc de
- ld a, [de]
- ld [hli], a
- inc de
- ld a, [de]
- ld [hl], a
- inc de
- ld a, [de]
- ld [Bed], a
- inc de
- ld hl, wdc0d
- ld [hl], e
- inc hl
- ld [hl], d
- ret
-; 1153d2
-
-Function1153d2: ; 1153d2
- ld a, [wdc03]
- ld d, a
- ld a, [wdc04]
- ld e, a
- push de
- xor a
- ld [wdc03], a
- ld [wdc04], a
- ld a, $24
- ld [Console], a
- ld a, $dc
- ld [LeftOrnament], a
- push bc
- jr .asm_1153f4
-
-.asm_1153ef
- ld a, [hli]
- and a
- jr z, .asm_115426
- ld b, a
-
-.asm_1153f4
- push bc
-.asm_1153f5
- ld a, [hli]
- ld [wdc00], a
- ld [$ff8c], a
- ld [$4000], a
- ld e, [hl]
- inc hl
- ld d, [hl]
- inc hl
- ld c, [hl]
- inc hl
- push hl
- ld a, [Console]
- ld l, a
- ld a, [LeftOrnament]
- ld h, a
- push bc
- ld b, $0
- call Function115d53
- inc hl
- ld [hl], a
- pop bc
- ld a, l
- ld e, a
- ld [Console], a
- ld a, h
- ld d, a
- ld [LeftOrnament], a
- dec b
- jr z, .asm_11542b
- pop hl
- jr .asm_1153f5
-
-.asm_115426
- dec c
- jr nz, .asm_1153ef
- jr .asm_115430
-
-.asm_11542b
- pop hl
- pop bc
- dec c
- jr nz, .asm_1153ef
-
-.asm_115430
- ld a, l
- ld [Console], a
- ld a, h
- ld [LeftOrnament], a
- xor a
- ld [de], a
- ld hl, wdc24
-.asm_11543d
- ld a, [hli]
- and a
- jr nz, .asm_11543d
- ld a, [hl]
- and a
- jr z, .asm_115457
- dec hl
- ld a, $2c
- ld [hli], a
- jr .asm_11543d
-
-.asm_11544b
- pop hl
- ld a, h
- ld [wdc03], a
- ld a, l
- ld [wdc04], a
- ld a, $1
- ret
-
-.asm_115457
- ld hl, wdc24
- call Function114d99
- ld hl, $ddc8
-.asm_115460
- ld a, [hli]
- and a
- jr z, .asm_11546d
- cp $2c
- jr nz, .asm_115460
- dec hl
- xor a
- ld [hli], a
- jr .asm_115460
-
-.asm_11546d
- pop de
- ld a, e
- cp $1
- jr z, .asm_115477
- xor a
- ld [hli], a
- jr .asm_115478
-
-.asm_115477
- dec bc
-
-.asm_115478
- ld hl, $dc18
- ld a, [hli]
- ld h, [hl]
- ld l, a
- ld a, b
- cp h
- jr c, .asm_11548c
- jr nz, .asm_11544b
- ld a, c
- cp l
- jr c, .asm_11548c
- jr z, .asm_11548c
- jr .asm_11544b
-
-.asm_11548c
- ld hl, $dc18
- ld a, c
- cpl
- ld e, a
- ld a, b
- cpl
- ld d, a
- inc de
- ld a, [hli]
- ld h, [hl]
- ld l, a
- add hl, de
- ld de, $dc18
- ld a, l
- ld [de], a
- inc de
- ld a, h
- ld [de], a
- ld hl, RightOrnament
- ld a, [hli]
- ld [wdc01], a
- ld [$ff8c], a
- ld [$4000], a
- ld e, [hl]
- inc hl
- ld d, [hl]
- ld hl, $ddc8
- call Function115d6a
- ld hl, RightOrnament
- ld a, [wdc01]
- ld [hli], a
- ld [hl], e
- inc hl
- ld [hl], d
- ld a, [Console]
- ld e, a
- ld a, [LeftOrnament]
- ld d, a
- pop hl
- ld a, h
- ld [wdc03], a
- ld a, l
- ld [wdc04], a
- xor a
- ret
-; 1154d4
-
-Function1154d4: ; 1154d4
- xor a
- ld [wdc23], a
- call Function1155af
- call Function11560a
- and a
- jr nz, .asm_11552c
- call Function1155d1
- ld a, [RightOrnament]
- dec a
- ld [RightOrnament], a
- and a
- jp z, .asm_115577
- cp $1
- jr nz, .asm_115531
- xor a
- ld [wdc1c], a
-.asm_1154f7
- ld a, [BigDoll]
- cp $2
- jr z, .asm_115502
- cp $3
- jr z, .asm_11550f
-
-.asm_115502
- ld a, $a
- ld [wdc03], a
- call Function114f59
- and a
- jr z, .asm_11551a
- jr .asm_11552c
-
-.asm_11550f
- ld a, $c
- ld [wdc03], a
- call Function114f59
- and a
- jr nz, .asm_11552c
-
-.asm_11551a
- call Function114ea0
- and a
- jr nz, .asm_11552c
- call Function114ea0
- and a
- jr nz, .asm_11552c
- call Function11560a
- and a
- jr z, .asm_1155a0
-
-.asm_11552c
- ld a, $1
- jp Function11425c
-
-.asm_115531
- ld a, $1
- ld [wdc1c], a
- ld a, $b
- ld [wdc03], a
- call Function114f59
- and a
- jr nz, .asm_11552c
- call Function114ea0
- and a
- jr nz, .asm_11552c
-.asm_115547
- call Function114ea0
- and a
- jr nz, .asm_11552c
- ld a, $e
- ld [wdc03], a
- call Function114f59
- and a
- jr nz, .asm_11552c
- call Function114ea0
- and a
- jr nz, .asm_11552c
- jr .asm_1154f7
-
-.asm_115560
- call Function114ea0
- and a
- jr nz, .asm_11552c
- ld a, [wdc1c]
- and a
- jr z, .asm_11557d
- ld a, $f
- ld [wdc03], a
- call Function114f59
- and a
- jr nz, .asm_11552c
-
-.asm_115577
- call Function114ea0
- and a
- jr nz, .asm_11552c
-
-.asm_11557d
- ld a, $10
- ld [wdc03], a
- call Function114f59
- and a
- jr nz, .asm_11552c
- call Function114ea0
- and a
- jr nz, .asm_11552c
- ld hl, wdc09
- ld a, [hli]
- cpl
- ld e, a
- ld a, [hli]
- cpl
- ld d, a
- inc de
- ld a, [hli]
- ld h, [hl]
- ld l, a
- add hl, de
- xor a
- jp Function11425c
-
-.asm_1155a0
- ld a, [RightOrnament]
- dec a
- ld [RightOrnament], a
- and a
- jr z, .asm_115560
- call Function1155d1
- jr .asm_115547
-; 1155af
-
-Function1155af: ; 1155af
- ld hl, wdc06
- ld a, [de]
- ld [hli], a
- inc de
- ld a, [de]
- ld [hli], a
- inc de
- ld a, [de]
- ld [hli], a
- inc de
- ld a, [de]
- ld [hli], a
- ld b, a
- inc de
- ld a, [de]
- ld [hli], a
- ld [hl], b
- inc hl
- ld [hli], a
- inc de
- ld a, [de]
- ld [RightOrnament], a
- inc de
- ld a, e
- ld [hli], a
- ld [hl], d
- call Function1155d1
- ret
-; 1155d1
-
-Function1155d1: ; 1155d1
- ld a, [wdc0d]
- ld l, a
- ld a, [wdc0e]
- ld h, a
- ld a, [hli]
- ld [BigDoll], a
- cp $3
- jr nz, .asm_1155f0
- ld de, Carpet
- ld a, [hli]
- ld [de], a
- inc de
- ld a, [hli]
- ld [de], a
- inc de
- ld a, [hli]
- ld [de], a
- ld a, [hli]
- ld [Bed], a
-
-.asm_1155f0
- ld de, wdc17
- ld a, [hli]
- ld [de], a
- inc de
- ld a, [hli]
- ld [de], a
- inc de
- ld a, [hli]
- ld [de], a
- inc de
- ld a, [hli]
- ld [de], a
- inc de
- ld a, [hli]
- ld [de], a
- ld a, l
- ld [wdc0d], a
- ld a, h
- ld [wdc0e], a
- ret
-; 11560a
-
-Function11560a: ; 11560a
- ld a, [wdc06]
- ld [wdc01], a
- ld a, [wdc17]
- ld [wdc00], a
- ld [$ff8c], a
- ld [$4000], a
- ld hl, wdc1a
- ld c, [hl]
- inc hl
- ld b, [hl]
- ld a, [wdc0a]
- cp b
- jp c, .asm_1156b1
- jr nz, .asm_115631
- ld a, [wdc09]
- cp c
- jp c, .asm_1156b1
-
-.asm_115631
- ld a, b
- or c
- jr z, .asm_1156a9
- ld a, [wdc09]
- ld l, a
- ld a, [wdc0a]
- ld h, a
- ld a, c
- cpl
- ld e, a
- ld a, b
- cpl
- ld d, a
- inc de
- add hl, de
- ld a, l
- ld [wdc09], a
- ld a, h
- ld [wdc0a], a
-.asm_11564d
- ld a, $3
- cp b
- jr c, .asm_1156b6
- jr nz, .asm_115659
- ld a, $db
- cp c
- jr c, .asm_1156b6
-
-.asm_115659
- ld a, [wdc1a]
- ld e, a
- ld a, [wdc1b]
- ld d, a
- ld a, c
- cpl
- ld l, a
- ld a, b
- cpl
- ld h, a
- inc hl
- add hl, de
- ld a, l
- ld [wdc1a], a
- ld a, h
- ld [wdc1b], a
- push bc
- ld hl, $dc18
- ld e, [hl]
- inc hl
- ld d, [hl]
- ld hl, wdc24
- call Function115d53
- ld hl, $dc18
- ld [hl], e
- inc hl
- ld [hl], d
- pop bc
- ld a, [wdc01]
- ld [$ff8c], a
- ld [$4000], a
- ld hl, wdc07
- ld e, [hl]
- inc hl
- ld d, [hl]
- ld hl, wdc24
- call Function115d6a
- ld hl, wdc07
- ld [hl], e
- inc hl
- ld [hl], d
- ld hl, wdc1a
- ld c, [hl]
- inc hl
- ld b, [hl]
- ld a, b
- or c
- jr nz, .asm_11564d
-
-.asm_1156a9
- ld a, [wdc01]
- ld [wdc06], a
- xor a
- ret
-
-.asm_1156b1
- ld a, $1
- ld b, $83
- ret
-
-.asm_1156b6
- ld a, $3
- cpl
- ld h, a
- ld a, $db
- cpl
- ld l, a
- add hl, bc
- ld de, wdc1a
- ld a, l
- ld [de], a
- inc de
- ld a, h
- ld [de], a
- ld bc, $03db
- jr .asm_115659
-; 1156cc
-
-Function1156cc: ; 1156cc
- ld a, [wdc23]
- and a
- jp z, Function11425c
- cp $2
- jr z, .asm_1156fa
- cp $3
- jr z, .asm_1156fd
- cp $4
- jr z, .asm_1156fd
- cp $5
- jr z, .asm_115716
- cp $ff
- jr z, .asm_11572b
- cp $1
- jp nz, Function11425c
- call Function115732
- call Function11575c
- ld a, h
- ld [Poster], a
- ld a, l
- ld [Plant], a
-
-.asm_1156fa
- call Function1157d0
-
-.asm_1156fd
- call Function11581e
- and a
- jr nz, .asm_11572b
- ld a, [wdc23]
- cp $5
- jr z, .asm_115716
- ld a, [Poster]
- ld h, a
- ld a, [Plant]
- ld l, a
- xor a
- jp Function11425c
-
-.asm_115716
- ld hl, wdc0a
- ld a, [hli]
- cpl
- ld e, a
- ld a, [hli]
- cpl
- ld d, a
- inc de
- ld a, [hli]
- ld h, [hl]
- ld l, a
- add hl, de
- xor a
- ld [wdc23], a
- jp Function11425c
-
-.asm_11572b
- ld a, $1
- ld b, $83
- jp Function11425c
-; 115732
-
-Function115732: ; 115732
- ld hl, wdc02
- ld a, [de]
- ld [hli], a
- inc de
- ld a, [de]
- ld [hli], a
- inc de
- ld a, [de]
- ld [hli], a
- inc de
- ld a, [de]
- ld [hli], a
- inc de
- ld a, [de]
- ld [hli], a
- inc de
- ld a, [de]
- ld [hli], a
- inc de
- ld a, [de]
- ld [hli], a
- inc de
- ld a, [de]
- ld [hli], a
- inc de
- ld a, [de]
- ld [hli], a
- inc de
- ld a, [de]
- ld [hli], a
- dec de
- ld a, [de]
- ld [hli], a
- inc de
- ld a, [de]
- ld [hli], a
- ld a, c
- ld [hli], a
- ld [hl], b
- ret
-; 11575c
-
-Function11575c: ; 11575c
- ld hl, wdc05
- ld a, [hli]
- ld h, [hl]
- ld l, a
- ld e, $10
- ld b, $0
- ld c, b
- ld d, b
- ld a, $3
-.asm_11576a
- rl l
- rl h
- rl d
- cp d
- jr c, .asm_11577c
- rl c
- rl b
- dec e
- jr nz, .asm_11576a
- jr .asm_11578a
-
-.asm_11577c
- ld a, d
- sub $3
- ld d, a
- ld a, $3
- scf
- rl c
- rl b
- dec e
- jr nz, .asm_11576a
-
-.asm_11578a
- ld a, d
- and a
- jr z, .asm_11578f
- inc bc
-
-.asm_11578f
- sla c
- rl b
- sla c
- rl b
- ld h, b
- ld l, c
- push hl
- ld e, $10
- ld b, $0
- ld c, b
- ld d, b
- ld a, $40
-.asm_1157a2
- rl l
- rl h
- rl d
- cp d
- jr c, .asm_1157b4
- rl c
- rl b
- dec e
- jr nz, .asm_1157a2
- jr .asm_1157c3
-
-.asm_1157b4
- ld a, d
- sub $40
- ld d, a
- ld a, $40
- scf
- rl c
- rl b
- dec e
- jr nz, .asm_1157a2
- inc bc
-
-.asm_1157c3
- and a
- sla c
- rl b
- pop hl
- add hl, bc
- ld a, $2
- ld [wdc23], a
- ret
-; 1157d0
-
-Function1157d0: ; 1157d0
- ld hl, wdc05
- ld a, [hli]
- ld h, [hl]
- ld l, a
- ld a, [wdc0e]
- ld c, a
- ld a, [Bed]
- ld b, a
- cp h
- jr c, .asm_1157eb
- jr nz, .asm_1157e9
- ld a, c
- cp l
- jr c, .asm_1157eb
- jr z, .asm_1157eb
-
-.asm_1157e9
- ld b, h
- ld c, l
-
-.asm_1157eb
- push bc
- ld a, b
- cpl
- ld b, a
- ld a, c
- cpl
- ld c, a
- inc bc
- add hl, bc
- ld a, l
- ld [wdc05], a
- ld a, h
- ld [wdc06], a
- ld a, h
- or l
- jr nz, .asm_11580f
- pop bc
- ld a, c
- ld [wdc0e], a
- ld a, b
- ld [Bed], a
- ld a, $4
- ld [wdc23], a
- ret
-
-.asm_11580f
- pop bc
- ld a, c
- ld [wdc0e], a
- ld a, b
- ld [Bed], a
- ld a, $3
- ld [wdc23], a
- ret
-; 11581e
-
-Function11581e: ; 11581e
- ld a, [wdc23]
- and a
- ret z
- ld a, [wdc0e]
- ld c, a
- ld a, [Bed]
- ld b, a
- ld hl, wdc02
- ld a, [hli]
- ld [wdc00], a
- ld [$ff8c], a
- ld [$4000], a
- ld e, [hl]
- inc hl
- ld d, [hl]
- ld hl, wdc24
- push bc
- call Function115d53
- pop bc
- ld hl, wdc02
- ld a, [wdc00]
- ld [hli], a
- ld [hl], e
- inc hl
- ld [hl], d
- ld hl, wdc24
- ld de, PartyMon5Defense
- call Function1158c2
- ld hl, PartyMon5Defense
- ld c, [hl]
- inc hl
- ld b, [hl]
- inc hl
- push hl
- ld a, [wdc0a]
- ld l, a
- ld a, [wdc0b]
- ld h, a
- cp b
- jr c, .asm_1158bb
- jr nz, .asm_11586e
- ld a, l
- cp c
- jr c, .asm_1158bb
-
-.asm_11586e
- push bc
- ld a, b
- cpl
- ld b, a
- ld a, c
- cpl
- ld c, a
- inc bc
- add hl, bc
- ld a, l
- ld [wdc0a], a
- ld a, h
- ld [wdc0b], a
- pop bc
- pop hl
- ld hl, wdc07
- ld a, [hli]
- ld [wdc01], a
- ld [$ff8c], a
- ld [$4000], a
- ld e, [hl]
- inc hl
- ld d, [hl]
- ld hl, PartyMon5Speed
- call Function115d6a
- ld hl, wdc07
- ld a, [wdc01]
- ld [hli], a
- ld a, e
- ld [hli], a
- ld [hl], d
- ld a, [wdc23]
- cp $3
- jr z, .asm_1158b4
- cp $4
- jr z, .asm_1158ad
- jr .asm_1158bc
-
-.asm_1158ad
- ld a, $5
- ld [wdc23], a
- jr .asm_1158b9
-
-.asm_1158b4
- ld a, $2
- ld [wdc23], a
-
-.asm_1158b9
- xor a
- ret
-
-.asm_1158bb
- pop hl
-
-.asm_1158bc
- ld a, $ff
- ld [wdc23], a
- ret
-; 1158c2
-
-Function1158c2: ; 1158c2
- ld a, e
- ld [wdc20], a
- ld a, d
- ld [wdc21], a
- xor a
- ld [wdc22], a
- xor a
- ld [de], a
- inc de
- ld [de], a
- inc de
- ld a, c
- ld [wdc19], a
- ld a, b
- ld [wdc1a], a
- ld c, e
- ld b, d
- ld e, l
- ld d, h
- ld l, c
- ld h, b
- xor a
- ld [wdc1f], a
-
-.asm_1158e5
- ld b, $3
- push hl
- ld hl, wdc1b
-.asm_1158eb
- ld a, [de]
- inc de
- ld [hli], a
- dec b
- jr nz, .asm_1158eb
- ld a, [wdc19]
- ld c, a
- ld a, [wdc1a]
- ld b, a
- xor a
- or b
- jr nz, .asm_115914
- ld a, $2
- cp c
- jr c, .asm_115914
- push hl
- dec hl
- ld a, c
- ld [wdc1f], a
-.asm_115908
- xor a
- ld [hld], a
- inc c
- ld a, $3
- cp c
- jr nz, .asm_115908
- pop hl
- ld bc, $0003
-
-.asm_115914
- dec bc
- dec bc
- dec bc
- ld a, c
- ld [wdc19], a
- ld a, b
- ld [wdc1a], a
- push de
- push hl
- ld hl, wdc20
- ld a, [hli]
- ld h, [hl]
- ld l, a
- ld e, [hl]
- inc hl
- ld d, [hl]
- inc de
- inc de
- inc de
- inc de
- ld [hl], d
- dec hl
- ld [hl], e
- pop hl
- dec hl
- ld c, [hl]
- dec hl
- ld b, [hl]
- dec hl
- ld a, [hl]
- ld d, a
- srl a
- srl a
- ld [hli], a
- ld a, $3
- and d
- ld d, a
- ld a, $f0
- and b
- or d
- swap a
- ld [hli], a
- ld a, $f
- and b
- ld d, a
- ld a, c
- and $c0
- or d
- rlca
- rlca
- ld [hli], a
- ld a, $3f
- and c
- ld [hld], a
- dec hl
- dec hl
- pop de
- ld b, h
- ld c, l
- pop hl
- ld a, [bc]
- inc bc
- call Function1159dc
- ld [hli], a
- ld a, [bc]
- inc bc
- call Function1159dc
- ld [hli], a
- ld a, [bc]
- inc bc
- call Function1159dc
- ld [hli], a
- ld a, [bc]
- inc bc
- call Function1159dc
- ld [hli], a
- ld a, [wdc22]
- inc a
- cp $10
- jr nz, .asm_1159b1
- push af
- push bc
- ld a, [wdc19]
- ld b, a
- ld a, [wdc1a]
- or b
- jr nz, .asm_115998
- ld a, [wdc05]
- ld b, a
- ld a, [wdc06]
- or b
- jr nz, .asm_115998
- pop bc
- pop af
- jr .asm_1159c4
-
-.asm_115998
- pop bc
- pop af
- ld a, $d
- ld [hli], a
- ld a, $a
- ld [hli], a
- push hl
- ld hl, wdc20
- ld a, [hli]
- ld h, [hl]
- ld l, a
- ld a, [hli]
- ld c, a
- ld b, [hl]
- inc bc
- inc bc
- ld a, b
- ld [hld], a
- ld [hl], c
- pop hl
- xor a
-
-.asm_1159b1
- ld [wdc22], a
- ld a, [wdc19]
- cp $0
- jp nz, .asm_1158e5
- ld a, [wdc1a]
- cp $0
- jp nz, .asm_1158e5
-
-.asm_1159c4
- ld a, [wdc1f]
- cp $0
- jr z, .asm_1159d8
- push hl
- dec hl
- ld b, a
-.asm_1159ce
- ld a, $3d
- ld [hld], a
- inc b
- ld a, $3
- cp b
- jr nz, .asm_1159ce
- pop hl
-
-.asm_1159d8
- ld a, $0
- ld [hl], a
- ret
-; 1159dc
-
-Function1159dc: ; 1159dc
- cp $1a
- jr c, .asm_1159ef
- cp $34
- jr c, .asm_1159f2
- cp $3e
- jr c, .asm_1159f5
- cp $3e
- jr z, .asm_1159f8
- ld a, $2f
- ret
-
-.asm_1159ef
- add $41
- ret
-
-.asm_1159f2
- add $47
- ret
-
-.asm_1159f5
- sub $4
- ret
-
-.asm_1159f8
- ld a, $2b
- ret
-; 1159fb
-
-Function1159fb: ; 1159fb
- ld a, [wdc23]
- and a
- jp z, Function11425c
- cp $2
- jr z, .asm_115a29
- cp $3
- jr z, .asm_115a2c
- cp $4
- jr z, .asm_115a2c
- cp $5
- jr z, .asm_115a45
- cp $ff
- jr z, .asm_115a5a
- cp $1
- jp nz, Function11425c
- call Function115732
- call Function115a5f
- ld a, h
- ld [Plant], a
- ld a, l
- ld [Poster], a
-
-.asm_115a29
- call Function115ab0
-
-.asm_115a2c
- call Function115b00
- and a
- jr nz, .asm_115a5a
- ld a, [wdc23]
- cp $5
- jr z, .asm_115a45
- ld a, [Poster]
- ld h, a
- ld a, [Plant]
- ld l, a
- xor a
- jp Function11425c
-
-.asm_115a45
- ld hl, wdc0a
- ld a, [hli]
- cpl
- ld e, a
- ld a, [hli]
- cpl
- ld d, a
- inc de
- ld a, [hli]
- ld h, [hl]
- ld l, a
- add hl, de
- xor a
- ld [wdc23], a
- jp Function11425c
-
-.asm_115a5a
- ld a, $1
- jp Function11425c
-; 115a5f
-
-Function115a5f: ; 115a5f
- ld hl, wdc05
- ld a, [hli]
- ld h, [hl]
- ld l, a
- push hl
- ld e, $10
- ld b, $0
- ld c, b
- ld d, b
- ld a, $42
-.asm_115a6e
- rl l
- rl h
- rl d
- cp d
- jr c, .asm_115a80
- rl c
- rl b
- dec e
- jr nz, .asm_115a6e
- jr .asm_115a8e
-
-.asm_115a80
- ld a, d
- sub $42
- ld d, a
- ld a, $42
- scf
- rl c
- rl b
- dec e
- jr nz, .asm_115a6e
-
-.asm_115a8e
- sla c
- rl b
- pop hl
- ld a, b
- cpl
- ld b, a
- ld a, c
- cpl
- ld c, a
- inc bc
- add hl, bc
- srl h
- rr l
- srl h
- rr l
- ld b, h
- ld c, l
- sla c
- rl b
- add hl, bc
- ld a, $2
- ld [wdc23], a
- ret
-; 115ab0
-
-Function115ab0: ; 115ab0
- ld hl, wdc05
- ld a, [hli]
- ld h, [hl]
- ld l, a
- ld a, [wdc0e]
- ld c, a
- ld a, [Bed]
- ld b, a
- cp h
- jr c, .asm_115acb
- jr nz, .asm_115ac9
- ld a, c
- cp l
- jr c, .asm_115acb
- jr z, .asm_115acb
-
-.asm_115ac9
- ld b, h
- ld c, l
-
-.asm_115acb
- push bc
- ld a, b
- cpl
- ld b, a
- ld a, c
- cpl
- ld c, a
- inc bc
- add hl, bc
- ld a, l
- ld [wdc05], a
- ld a, h
- ld [wdc06], a
- ld a, h
- or l
- jr nz, .asm_115af0
- pop bc
- ld a, c
- ld [wdc0e], a
- ld a, b
- ld [Bed], a
- ld a, $4
- ld [wdc23], a
- xor a
- ret
-
-.asm_115af0
- pop bc
- ld a, c
- ld [wdc0e], a
- ld a, b
- ld [Bed], a
- ld a, $3
- ld [wdc23], a
- xor a
- ret
-; 115b00
-
-Function115b00: ; 115b00
- ld a, [wdc23]
- and a
- ret z
- ld a, [wdc0e]
- ld c, a
- ld a, [Bed]
- ld b, a
- ld hl, wdc02
- ld a, [hli]
- ld [wdc00], a
- ld [$ff8c], a
- ld [$4000], a
- ld e, [hl]
- inc hl
- ld d, [hl]
- ld hl, PartyMon5Defense
- push bc
- call Function115bc8
- pop hl
- and a
- jr z, .asm_115b43
- cp $2
- jr z, .asm_115b3b
- ld a, [wdc23]
- cp $4
- jr z, .asm_115b43
- inc hl
- inc hl
- jr .asm_115b43
-
-.asm_115b36
- pop hl
- ld b, $83
- jr .asm_115b3d
-
-.asm_115b3b
- ld b, $81
-
-.asm_115b3d
- ld a, $ff
- ld [wdc23], a
- ret
-
-.asm_115b43
- ld a, [Carpet]
- add a
- cpl
- ld c, a
- ld b, $ff
- inc bc
- add hl, bc
- ld b, h
- ld c, l
- ld hl, wdc02
- ld a, [wdc00]
- ld [hli], a
- ld [hl], e
- inc hl
- ld [hl], d
- ld hl, PartyMon5Defense
- ld de, wdc24
- call Function115c49
- ld hl, wdc24
- ld c, [hl]
- inc hl
- ld b, [hl]
- inc hl
- push hl
- ld a, [wdc0a]
- ld l, a
- ld a, [wdc0b]
- ld h, a
- cp b
- jr c, .asm_115b36
- jr nz, .asm_115b7b
- ld a, l
- cp c
- jr c, .asm_115b36
-
-.asm_115b7b
- push bc
- ld a, b
- cpl
- ld b, a
- ld a, c
- cpl
- ld c, a
- inc bc
- add hl, bc
- ld a, l
- ld [wdc0a], a
- ld a, h
- ld [wdc0b], a
- pop bc
- pop hl
- ld hl, wdc07
- ld a, [hli]
- ld [wdc01], a
- ld [$ff8c], a
- ld [$4000], a
- ld e, [hl]
- inc hl
- ld d, [hl]
- ld hl, wdc26
- call Function115d6a
- ld hl, wdc07
- ld a, [wdc01]
- ld [hli], a
- ld a, e
- ld [hli], a
- ld [hl], d
- ld a, [wdc23]
- cp $3
- jr z, .asm_115bc1
- cp $4
- jr z, .asm_115bba
- jr .asm_115b3b
-
-.asm_115bba
- ld a, $5
- ld [wdc23], a
- jr .asm_115bc6
-
-.asm_115bc1
- ld a, $2
- ld [wdc23], a
-
-.asm_115bc6
- xor a
- ret
-; 115bc8
-
-Function115bc8: ; 115bc8
- xor a
- ld [Carpet], a
-.asm_115bcc
- ld a, [de]
- ld [hli], a
- inc e
- call z, .Function115c3d
- dec bc
- ld a, b
- or c
- jr z, .asm_115c46
- ld a, [de]
- ld [hli], a
- inc e
- call z, .Function115c3d
- dec bc
- ld a, b
- or c
- jr z, .asm_115c1b
- ld a, [de]
- ld [hli], a
- inc e
- call z, .Function115c3d
- dec bc
- ld a, b
- or c
- jr z, .asm_115c46
- ld a, [de]
- ld [hli], a
- inc e
- call z, .Function115c3d
- dec bc
- ld a, b
- or c
- jr z, .asm_115c3a
- ld a, [de]
- cp $d
- jr nz, .asm_115bcc
- inc e
- call z, .Function115c3d
- ld a, [de]
- cp $a
- jr nz, .asm_115c46
- inc e
- call z, .Function115c3d
- dec bc
- ld a, b
- or c
- jr z, .asm_115c46
- ld a, [Carpet]
- inc a
- ld [Carpet], a
- dec bc
- ld a, b
- or c
- jr nz, .asm_115bcc
-
-.asm_115c1b
- ld a, [wdc23]
- cp $4
- jr z, .asm_115c33
- ld a, [de]
- ld [hli], a
- inc e
- call z, .Function115c3d
- ld a, [de]
- ld [hli], a
- inc e
- call z, .Function115c3d
- xor a
- ld [hl], a
- ld a, $1
- ret
-
-.asm_115c33
- dec hl
- dec hl
- xor a
- ld [hl], a
- ld a, $1
- ret
-
-.asm_115c3a
- xor a
- ld [hl], a
- ret
-
-.Function115c3d:
- push bc
- ld bc, wdc00
- call Function115d80
- pop bc
- ret
-
-.asm_115c46
- ld a, $2
- ret
-; 115c49
-
-Function115c49: ; 115c49
- ld a, e
- ld [wdc1f], a
- ld a, d
- ld [wdc20], a
- xor a
- ld [de], a
- inc de
- ld [de], a
- inc de
-
- ld a, c
- ld [wdc19], a
- ld a, b
- ld [wdc1a], a
- ld c, e
- ld b, d
- ld e, l
- ld d, h
- ld l, c
- ld h, b
-
-.asm_115c64
- ld a, [wdc1a]
- or a
- jr nz, .asm_115c71
- ld a, [wdc19]
- cp $4
- jr c, .asm_115c99
-
-.asm_115c71
- ld b, $4
- push hl
- ld hl, wdc1b
-.asm_115c77
- ld a, [de]
- inc de
- call Function115cfd
- ld [hli], a
- dec b
- jr nz, .asm_115c77
- ld a, [wdc19]
- ld c, a
- ld a, [wdc1a]
- ld b, a
- dec bc
- dec bc
- dec bc
- dec bc
-.asm_115c8c
- ld a, [de]
- cp $d
- jr z, .asm_115c95
- cp $a
- jr nz, .asm_115c9f
-
-.asm_115c95
- inc de
- dec bc
- jr .asm_115c8c
-
-.asm_115c99
- ld a, $ff
- ld [wdc23], a
- ret
-
-.asm_115c9f
- ld a, c
- ld [wdc19], a
- ld a, b
- ld [wdc1a], a
- push de
- push hl
- ld hl, wdc1f
- ld a, [hli]
- ld h, [hl]
- ld l, a
- ld e, [hl]
- inc hl
- ld d, [hl]
- inc de
- inc de
- inc de
- ld [hl], d
- dec hl
- ld [hl], e
- pop hl
- dec hl
- ld d, [hl]
- dec hl
- ld c, [hl]
- dec hl
- ld b, [hl]
- dec hl
- ld a, [hl]
- sla b
- sla b
- sla b
- rla
- sla b
- rla
- ld [hli], a
- ld [hl], b
- inc hl
- rrc c
- rrc c
- ld [hl], c
- dec hl
- ld a, $f
- and c
- or [hl]
- ld [hli], a
- ld a, [hli]
- and $c0
- or [hl]
- dec hl
- ld [hld], a
- dec hl
- pop de
- ld b, h
- ld c, l
- pop hl
- ld a, [bc]
- ld [hli], a
- inc bc
- ld a, [bc]
- ld [hli], a
- inc bc
- ld a, [bc]
- ld [hli], a
- ld a, [wdc19]
- cp $0
- jp nz, .asm_115c64
- ld a, [wdc1a]
- cp $0
- jp nz, .asm_115c64
- ret
-; 115cfd
-
-Function115cfd: ; 115cfd
- cp $2b
- jr c, .asm_115d27
- jr z, .asm_115d2f
- cp $2f
- jr c, .asm_115d27
- jr z, .asm_115d32
- cp $30
- jr c, .asm_115d27
- cp $3a
- jr c, .asm_115d35
- cp $3d
- jr c, .asm_115d27
- jr z, .asm_115d38
- cp $41
- jr c, .asm_115d27
- cp $5b
- jr c, .asm_115d4d
- cp $61
- jr c, .asm_115d27
- cp $7b
- jr c, .asm_115d50
-
-.asm_115d27
- pop hl
- pop hl
- ld a, $ff
- ld [wdc23], a
- ret
-
-.asm_115d2f
- ld a, $3e
- ret
-
-.asm_115d32
- ld a, $3f
- ret
-
-.asm_115d35
- add $4
- ret
-
-.asm_115d38
- push de
- push hl
- ld a, [wdc1f]
- ld l, a
- ld a, [wdc20]
- ld h, a
- ld e, [hl]
- inc hl
- ld d, [hl]
- dec de
- ld [hl], d
- dec hl
- ld [hl], e
- pop hl
- pop de
- xor a
- ret
-
-.asm_115d4d
- sub $41
- ret
-
-.asm_115d50
- sub $47
- ret
-; 115d53
-
-Function115d53: ; 115d53
-.asm_115d53
- ld a, [de]
- ld [hli], a
- inc e
- call z, Function115d61
- dec bc
- ld a, b
- or c
- jr nz, .asm_115d53
- xor a
- ld [hl], a
- ret
-; 115d61
-
-Function115d61: ; 115d61
- push bc
- ld bc, wdc00
- call Function115d80
- pop bc
- ret
-; 115d6a
-
-Function115d6a: ; 115d6a
-.asm_115d6a
- ld a, [hli]
- ld [de], a
- inc e
- call z, Function115d77
- dec bc
- ld a, b
- or c
- jr nz, .asm_115d6a
- xor a
- ret
-; 115d77
-
-Function115d77: ; 115d77
- push bc
- ld bc, wdc01
- call Function115d80
- pop bc
- ret
-; 115d80
-
-Function115d80: ; 115d80
- ld e, a
- ld a, d
- cp $bf
- jr z, .asm_115d8b
- inc d
- ld a, e
- ld e, $0
- ret
-
-.asm_115d8b
- ld a, [bc]
- inc a
- ld [bc], a
- ld [$ff8c], a
- ld [$4000], a
- ld a, e
- ld d, $a0
- ld e, $0
- ret
-; 115d99
-
-Function115d99: ; 115d99
- ld de, GFX_11601a
- ld hl, $8600
- lb bc, BANK(GFX_11601a), $14
- call Get2bpp
- xor a
- ld [wc305], a
- ld [wc306], a
- ld [wc309], a
- ld [wc30a], a
- ld [wc30b], a
- ld [wc30c], a
- ld a, $10
- ld [wc307], a
- ld a, $18
- ld [wc308], a
- ret
-; 115dc3
-
-Function115dc3: ; 115dc3
- xor a
- ld [wc305], a
- ld a, $a0
- ld hl, Sprites + $7c
- ld bc, $0020
- call ByteFill
- ret
-; 115dd3
-
-Function115dd3: ; 115dd3
- ld a, [wc305]
- and a
- ret z
- ld a, $a0
- ld hl, Sprites + $7c
- ld bc, $0020
- call ByteFill
- call Function115e22
- ld a, [wc309]
- sla a
- ld c, a
- ld b, 0
- ld hl, Unknown_115e86
- add hl, bc
- ld a, [hli]
- ld e, a
- ld a, [hl]
- ld d, a
- push de
- pop hl
- ld de, Sprites + $7c
- ld a, [wc307]
- ld c, a
- ld a, [wc308]
- ld b, a
- ld a, [hli]
-.asm_115e04
- push af
- ld a, [hli]
- add b
- ld [de], a
- inc de
- ld a, [hli]
- add c
- ld [de], a
- inc de
- ld a, [hli]
- ld [de], a
- inc de
- ld a, [hli]
- ld [de], a
- inc de
- pop af
- dec a
- jr nz, .asm_115e04
- ret
-; 115e18
-
-Function115e18: ; 115e18
- ld a, c
- ld [wc30a], a
- xor a
- ld [wc30b], a
- jr Function115e2b
-; 115e22
-
-Function115e22: ; 115e22
- ld hl, wc30c
- dec [hl]
- ret nz
- ld hl, wc30b
- inc [hl]
-
-Function115e2b: ; 115e2b
- ld a, [wc30a]
- sla a
- ld c, a
- ld b, 0
- ld hl, Unknown_115e59
- add hl, bc
- ld a, [hli]
- ld e, a
- ld a, [hli]
- ld d, a
- push de
- pop hl
- ld a, [wc30b]
- sla a
- ld c, a
- ld b, $0
- add hl, bc
- ld a, [hli]
- cp $ff
- jr nz, .asm_115e51
- xor a
- ld [wc30b], a
- jr Function115e2b
-
-.asm_115e51
- ld [wc309], a
- ld a, [hl]
- ld [wc30c], a
- ret
-; 115e59
-
-Unknown_115e59:
- dw Unknown_115e61
- dw Unknown_115e6c
- dw Unknown_115e76
- dw Unknown_115e79
-
-Unknown_115e61: ; 115e61
- db $4, $8
- db $5, $8
- db $6, $8
- db $7, $8
- db $8, $8
- db $ff
-
-Unknown_115e6c: ; 115e6c
- db $1, $8
- db $2, $8
- db $3, $8
- db $9, $8
- db $a, $8
-
-Unknown_115e76: ; 115e76
- db $0, $8
- db $ff
-
-Unknown_115e79: ; 115e79
- db $b, $8
- db $c, $8
- db $d, $8
- db $e, $8
- db $f, $8
- db $0, $8
- db $ff
-; 115e86
-
-Unknown_115e86:
- dw Unknown_115ea6
- dw Unknown_115eb7
- dw Unknown_115ecc
- dw Unknown_115ee1
- dw Unknown_115ef6
- dw Unknown_115f13
- dw Unknown_115f30
- dw Unknown_115f4d
- dw Unknown_115f6a
- dw Unknown_115f87
- dw Unknown_115f9c
- dw Unknown_115fb1
- dw Unknown_115fc6
- dw Unknown_115fdb
- dw Unknown_115ff0
- dw Unknown_116005
-
-Unknown_115ea6: ; 115ea6
- db $4
- db $8, $0, $60, $1
- db $8, $8, $61, $1
- db $10, $0, $62, $1
- db $10, $8, $63, $1
-
-Unknown_115eb7: ; 115eb7
- db $5
- db $0, $8, $64, $0
- db $8, $0, $60, $1
- db $8, $8, $61, $1
- db $10, $0, $62, $1
- db $10, $8, $63, $1
-
-Unknown_115ecc: ; 115ecc
- db $5
- db $0, $8, $65, $0
- db $8, $0, $60, $1
- db $8, $8, $61, $1
- db $10, $0, $62, $1
- db $10, $8, $63, $1
-
-Unknown_115ee1: ; 115ee1
- db $5
- db $0, $8, $66, $0
- db $8, $0, $60, $1
- db $8, $8, $61, $1
- db $10, $0, $62, $1
- db $10, $8, $63, $1
-
-Unknown_115ef6: ; 115ef6
- db $7
- db $0, $0, $67, $1
- db $8, $0, $68, $1
- db $10, $0, $6d, $0
- db $10, $8, $69, $0
- db $10, $10, $6a, $0
- db $18, $8, $6b, $0
- db $18, $10, $6c, $0
-
-Unknown_115f13: ; 115f13
- db $7
- db $0, $0, $67, $1
- db $8, $0, $68, $1
- db $10, $0, $6e, $0
- db $10, $8, $69, $0
- db $10, $10, $6a, $0
- db $18, $8, $6b, $0
- db $18, $10, $6c, $0
-
-Unknown_115f30: ; 115f30
- db $7
- db $0, $0, $67, $1
- db $8, $0, $68, $1
- db $10, $0, $6f, $0
- db $10, $8, $69, $0
- db $10, $10, $6a, $0
- db $18, $8, $6b, $0
- db $18, $10, $6c, $0
-
-Unknown_115f4d: ; 115f4d
- db $7
- db $0, $0, $67, $1
- db $8, $0, $68, $1
- db $10, $0, $70, $0
- db $10, $8, $69, $0
- db $10, $10, $6a, $0
- db $18, $8, $6b, $0
- db $18, $10, $6c, $0
-
-Unknown_115f6a: ; 115f6a
- db $7
- db $0, $0, $67, $1
- db $8, $0, $68, $1
- db $10, $0, $71, $0
- db $10, $8, $69, $0
- db $10, $10, $6a, $0
- db $18, $8, $6b, $0
- db $18, $10, $6c, $0
-
-Unknown_115f87: ; 115f87
- db $5
- db $0, $8, $72, $0
- db $8, $0, $60, $1
- db $8, $8, $61, $1
- db $10, $0, $62, $1
- db $10, $8, $63, $1
-
-Unknown_115f9c: ; 115f9c
- db $5
- db $0, $8, $73, $0
- db $8, $0, $60, $1
- db $8, $8, $61, $1
- db $10, $0, $62, $1
- db $10, $8, $63, $1
-
-Unknown_115fb1: ; 115fb1
- db $5
- db $1, $8, $64, $60
- db $8, $0, $60, $1
- db $8, $8, $61, $1
- db $10, $0, $62, $1
- db $10, $8, $63, $1
-
-Unknown_115fc6: ; 115fc6
- db $5
- db $1, $8, $65, $60
- db $8, $0, $60, $1
- db $8, $8, $61, $1
- db $10, $0, $62, $1
- db $10, $8, $63, $1
-
-Unknown_115fdb: ; 115fdb
- db $5
- db $1, $8, $66, $60
- db $8, $0, $60, $1
- db $8, $8, $61, $1
- db $10, $0, $62, $1
- db $10, $8, $63, $1
-
-Unknown_115ff0: ; 115ff0
- db $5
- db $1, $8, $72, $60
- db $8, $0, $60, $1
- db $8, $8, $61, $1
- db $10, $0, $62, $1
- db $10, $8, $63, $1
-
-Unknown_116005: ; 116005
- db $5
- db $1, $8, $73, $60
- db $8, $0, $60, $1
- db $8, $8, $61, $1
- db $10, $0, $62, $1
- db $10, $8, $63, $1
-; 11601a
-
-GFX_11601a:: ; 11601a
-INCBIN "gfx/unknown/11601a.2bpp"
-
-Function11615a: ; 11615a
- xor a
- ld [wc30d], a
- ld [wc319], a
- ld [wc310], a
- ld [wc311], a
- ld [wc312], a
- ld [wc313], a
- ld [wc314], a
- ld [wc315], a
- ld [wc318], a
- ld [wc3f6], a
- ld [wc3f8], a
- ld [wc3f2], a
- ld [wc3f4], a
- ld a, $24
- ld [wc3f5], a
- ld a, $7
- ld [wc3f7], a
- ld a, $b0
- ld [wc30e], a
- ld [wc3f1], a
- ld a, $48
- ld [wc30f], a
- ld [wc3f3], a
- ret
-; 11619d
-
-Function11619d: ; 11619d
- ld a, [wc30d]
- and a
- ret z
- ld a, [wc319]
- cp $2
- jr c, .asm_1161b4
- ld a, $a0
- ld hl, Sprites
- ld bc, $0064
- call ByteFill
-
-.asm_1161b4
- call Function1161b8
- ret
-; 1161b8
-
-Function1161b8: ; 1161b8
- ld a, [wc319]
- ld e, a
- ld d, 0
- ld hl, Jumptable_1161c7
- add hl, de
- add hl, de
- ld a, [hli]
- ld h, [hl]
- ld l, a
- jp [hl]
-; 1161c7
-
-Jumptable_1161c7: ; 1161c7
- dw Function1161d5
- dw Function116294
- dw Function1162cb
- dw Function1162f2
- dw Function1163c0
- dw Function11636e
- dw Function116441
-; 1161d5
-
-Function1161d5: ; 1161d5
- ld a, [rSVBK]
- push af
- ld a, $6
- ld [rSVBK], a
- ld hl, Unknown_117356
- ld de, w6_d000
- ld bc, $0300
- call CopyBytes
- di
-.asm_1161e9
- ld a, [rLY]
- cp $91
- jr nz, .asm_1161e9
- ld a, $d0
- ld [rHDMA1], a
- ld a, $0
- ld [rHDMA2], a
- ld a, $1c
- ld [rHDMA3], a
- xor a
- ld [rHDMA4], a
- ld a, $8
- ld [rHDMA5], a
- ld a, $d0
- ld [rHDMA1], a
- ld a, $80
- ld [rHDMA2], a
- ld a, $1c
- ld [rHDMA3], a
- ld a, $80
- ld [rHDMA4], a
- ld a, $8
- ld [rHDMA5], a
- ld a, $d1
- ld [rHDMA1], a
- ld a, $0
- ld [rHDMA2], a
- ld a, $1d
- ld [rHDMA3], a
- xor a
- ld [rHDMA4], a
- ld a, $8
- ld [rHDMA5], a
- ld a, $1
- ld [rVBK], a
- ld a, $d1
- ld [rHDMA1], a
- ld a, $80
- ld [rHDMA2], a
- ld a, $1c
- ld [rHDMA3], a
- xor a
- ld [rHDMA4], a
- ld a, $8
- ld [rHDMA5], a
- ld a, $d2
- ld [rHDMA1], a
- ld a, $0
- ld [rHDMA2], a
- ld a, $1c
- ld [rHDMA3], a
- ld a, $80
- ld [rHDMA4], a
- ld a, $8
- ld [rHDMA5], a
- ld a, $d2
- ld [rHDMA1], a
- ld a, $80
- ld [rHDMA2], a
- ld a, $1d
- ld [rHDMA3], a
- xor a
- ld [rHDMA4], a
- ld a, $8
- ld [rHDMA5], a
- xor a
- ld [rVBK], a
- ei
- pop af
- ld [rSVBK], a
- callba Function104061
- ld a, $8
- ld [MusicFade], a
- ld de, MUSIC_MOBILE_ADAPTER
- ld a, e
- ld [wc2a9], a
- ld a, d
- ld [wc2aa], a
- ld a, [wc319]
- inc a
- ld [wc319], a
- ret
-; 11628c
-
-MenuDataHeader_11628c: ; 11628c
- db $40 ; flags
- db 6, 0 ; start coords
- db 17, 19 ; end coords
- dw NULL
- db 0 ; default option
-; 116294
-
-Function116294: ; 116294
- callba Function170d02
- ld a, [wc319]
- inc a
- ld [wc319], a
- ld a, [rSVBK]
- push af
- ld a, $5
- ld [rSVBK], a
- ld hl, wd030
- ld de, wc320
- ld bc, $0010
- call CopyBytes
- ld hl, Palette_11734e
- ld de, Unkn1Pals + 8 * 7
- ld bc, $0008
- call CopyBytes
- call Function32f9
- pop af
- ld [rSVBK], a
- ld a, $30
- ld [hWY], a
- ret
-; 1162cb
-
-Function1162cb: ; 1162cb
- callba Function170cc6
- ld a, [wc319]
- inc a
- ld [wc319], a
- ld a, [rSVBK]
- push af
- ld a, $5
- ld [rSVBK], a
- ld hl, Palette_11730e
- ld de, wd050
- ld bc, $0030
- call CopyBytes
- call Function32f9
- pop af
- ld [rSVBK], a
- ret
-; 1162f2
-
-Function1162f2: ; 1162f2
- call Function11659d
- call Function116758
- call Function1167a6
- ld a, [wc310]
- cp $fd
- ret z
- sla a
- ld c, a
- ld b, 0
- ld hl, Unknown_1168c5
- add hl, bc
- ld a, [hli]
- ld e, a
- ld a, [hl]
- ld d, a
- push de
- pop hl
- ld a, [wc30e]
- ld c, a
- ld a, [wc30f]
- ld b, a
- ld a, [wc318]
- ld e, a
- ld a, [hli]
- sub e
- ld de, Sprites + $24
-.asm_116321
- push af
- ld a, [hli]
- add b
- ld [de], a
- inc de
- ld a, [hli]
- add c
- ld [de], a
- inc de
- ld a, [hli]
- ld [de], a
- inc de
- ld a, [hli]
- ld [de], a
- inc de
- pop af
- dec a
- jr nz, .asm_116321
- call Function116468
- ld a, [wc3f5]
- sla a
- ld c, a
- ld b, 0
- ld hl, Unknown_1168c5
- add hl, bc
- ld a, [hli]
- ld e, a
- ld a, [hl]
- ld d, a
- push de
- pop hl
- ld a, [wc3f1]
- ld c, a
- ld a, [wc3f3]
- ld b, a
- ld a, [wc3f8]
- ld e, a
- ld a, [hli]
- sub e
- ld de, Sprites
-.asm_11635a
- push af
- ld a, [hli]
- add b
- ld [de], a
- inc de
- ld a, [hli]
- add c
- ld [de], a
- inc de
- ld a, [hli]
- ld [de], a
- inc de
- ld a, [hli]
- ld [de], a
- inc de
- pop af
- dec a
- jr nz, .asm_11635a
- ret
-; 11636e
-
-Function11636e: ; 11636e
- ld a, [rSVBK]
- push af
- ld a, $5
- ld [rSVBK], a
- ld hl, BGPals
- ld de, Unkn1Pals
- ld bc, $0040
- call CopyBytes
- pop af
- ld [rSVBK], a
- call Function32f9
- ld a, [rSVBK]
- push af
- ld a, $1
- ld [rSVBK], a
- ld a, $a0
- ld hl, Sprites
- ld bc, $0040
- call ByteFill
- ld a, $90
- ld [hWY], a
- call Function1ad2
- pop af
- ld [rSVBK], a
- callba Function104061
- ld a, $8
- ld [MusicFade], a
- ld a, [wc2c0]
- ld [wc2a9], a
- xor a
- ld [wc2aa], a
- xor a
- ld [wc319], a
- ld [wc30d], a
- ret
-; 1163c0
-
-Function1163c0: ; 1163c0
- ld a, [rSVBK]
- push af
- ld a, $1
- ld [rSVBK], a
- ld a, $a0
- ld hl, Sprites
- ld bc, $0040
- call ByteFill
- call DelayFrame
- callba Function14146
- ld b, $9
- call GetSGBLayout
- ld a, [rSVBK]
- push af
- ld a, $5
- ld [rSVBK], a
- ld hl, wc320
- ld de, wd030
- ld bc, $0010
- call CopyBytes
- pop af
- ld [rSVBK], a
- call Function32f9
- call DelayFrame
- ld a, $90
- ld [hWY], a
- call Function1ad2
- callba Function14157
- pop af
- ld [rSVBK], a
- callba Function104061
- ld a, [InLinkBattle]
- cp $4
- jr z, .asm_11642a
- ld a, $8
- ld [MusicFade], a
- ld a, [wc2c0]
- ld [wc2a9], a
- xor a
- ld [wc2aa], a
- jr .asm_116439
-
-.asm_11642a
- ld a, $8
- ld [MusicFade], a
- ld a, $0
- ld [wc2a9], a
- ld a, $0
- ld [wc2aa], a
-
-.asm_116439
- xor a
- ld [wc319], a
- ld [wc30d], a
- ret
-; 116441
-
-Function116441: ; 116441
- callba Function17d405
- ld a, $90
- ld [hWY], a
- callba Function104061
- ld a, $8
- ld [MusicFade], a
- ld a, [wc2c0]
- ld [wc2a9], a
- xor a
- ld [wc2aa], a
- xor a
- ld [wc319], a
- ld [wc30d], a
- ret
-; 116468
-
-Function116468: ; 116468
- call Function116567
- ld a, [wc314]
- cp $d
- jr nz, .asm_1164a8
- ld hl, wc30e
- ld a, [hl]
- cp $50
- jr nc, .asm_116484
- ld a, $50
- sub [hl]
- add $50
- ld [wc3f1], a
- jr .asm_11648d
-
-.asm_116484
- sub $50
- ld c, a
- ld a, $50
- sub c
- ld [wc3f1], a
-
-.asm_11648d
- ld hl, wc30f
- ld a, [hl]
- cp $60
- jr nc, .asm_11649e
- ld a, $60
- sub [hl]
- add $60
- ld [wc3f3], a
- ret
-
-.asm_11649e
- sub $60
- ld c, a
- ld a, $60
- sub c
- ld [wc3f3], a
- ret
-
-.asm_1164a8
- ld hl, wc30e
- ld a, $b0
- cp [hl]
- jr nc, .asm_1164b8
- ld a, [wc3f1]
- and a
- jr z, .asm_11650b
- jr .asm_1164f2
-
-.asm_1164b8
- ld a, [wc3f1]
- sub [hl]
- jr nc, .asm_1164c1
- xor $ff
- inc a
-
-.asm_1164c1
- ld b, a
- ld c, $0
- ld a, $5
-.asm_1164c6
- srl b
- rr c
- dec a
- jr nz, .asm_1164c6
- ld a, c
- ld [wc3fa], a
- ld a, b
- ld [wc3f9], a
- ld a, [wc3f1]
- sub [hl]
- jr c, .asm_1164f2
- ld c, $0
- ld a, [wc3fa]
- xor $ff
- add $1
- rl c
- ld [wc3fa], a
- ld a, [wc3f9]
- xor $ff
- add c
- ld [wc3f9], a
-
-.asm_1164f2
- ld a, [wc3f2]
- ld l, a
- ld a, [wc3f1]
- ld h, a
- ld a, [wc3fa]
- ld e, a
- ld a, [wc3f9]
- ld d, a
- add hl, de
- ld a, l
- ld [wc3f2], a
- ld a, h
- ld [wc3f1], a
-
-.asm_11650b
- ld hl, wc30f
- ld a, $b0
- cp [hl]
- jr c, .asm_11654d
- ld a, [wc3f3]
- sub [hl]
- jr nc, .asm_11651c
- xor $ff
- inc a
-
-.asm_11651c
- ld b, a
- ld c, $0
- ld a, $5
-.asm_116521
- srl b
- rr c
- dec a
- jr nz, .asm_116521
- ld a, c
- ld [wc3fc], a
- ld a, b
- ld [wc3fb], a
- ld a, [wc3f3]
- sub [hl]
- jr c, .asm_11654d
- ld c, $0
- ld a, [wc3fc]
- xor $ff
- add $1
- rl c
- ld [wc3fc], a
- ld a, [wc3fb]
- xor $ff
- add c
- ld [wc3fb], a
-
-.asm_11654d
- ld a, [wc3f4]
- ld l, a
- ld a, [wc3f3]
- ld h, a
- ld a, [wc3fc]
- ld e, a
- ld a, [wc3fb]
- ld d, a
- add hl, de
- ld a, l
- ld [wc3f4], a
- ld a, h
- ld [wc3f3], a
- ret
-; 116567
-
-Function116567: ; 116567
- ld hl, wc3f7
- dec [hl]
- ret nz
- ld hl, wc3f6
- inc [hl]
-.asm_116570
- ld a, $7
- sla a
- ld c, a
- ld b, 0
- ld hl, Unknown_1167eb
- add hl, bc
- ld a, [hli]
- ld e, a
- ld a, [hli]
- ld d, a
- push de
- pop hl
- ld a, [wc3f6]
- sla a
- ld c, a
- ld b, $0
- add hl, bc
- ld a, [hli]
- cp $fe
- jr nz, .asm_116595
- xor a
- ld [wc3f6], a
- jr .asm_116570
-
-.asm_116595
- ld [wc3f5], a
- ld a, [hl]
- ld [wc3f7], a
- ret
-; 11659d
-
-Function11659d: ; 11659d
- ld a, [wc314]
- cp $12
- ret nc
- ld e, a
- ld d, 0
- ld hl, Jumptable_1165af
- add hl, de
- add hl, de
- ld a, [hli]
- ld h, [hl]
- ld l, a
- jp [hl]
-; 1165af
-
-Jumptable_1165af: ; 1165af
- dw Function11677e
- dw Function1165d5
- dw Function1165d8
- dw Function1165e3
- dw Function1165f5
- dw Function116600
- dw Function116615
- dw Function116618
- dw Function116623
- dw Function116635
- dw Function116640
- dw Function116655
- dw Function11665c
- dw Function11668d
- dw Function11669f
- dw Function1166a2
- dw Function1166c4
- dw Function1166d6
- dw Function1166d6
-; 1165d5
-
-Function1165d5: ; 1165d5
- call Function11678e
-
-Function1165d8:
- ld a, $0
- ld c, a
- ld a, $ff
- ld b, a
- ld a, $a8
- call Function1166f4
-
-Function1165e3:
- call Function116747
- ld a, [wc30e]
- cp $e8
- ret nz
- ld a, $1
- call Function116780
- ret c
- jp Function116797
-; 1165f5
-
-Function1165f5: ; 1165f5
- ld a, $1
- ld c, a
- ld a, $1
- ld b, a
- ld a, $e8
- call Function1166f4
-
-Function116600:
- call Function116747
- ld a, [wc30e]
- cp $a8
- ret nz
- ld a, $1
- call Function116780
- ret c
- ld a, $2
- ld [wc314], a
- ret
-; 116615
-
-Function116615: ; 116615
- call Function11678e
-
-Function116618:
- ld a, $3
- ld c, a
- ld a, $1
- ld b, a
- ld a, $28
- call Function11671f
-
-Function116623:
- call Function116747
- ld a, [wc30f]
- cp $a0
- ret nz
- ld a, $6
- call Function116780
- ret c
- jp Function116797
-; 116635
-
-Function116635: ; 116635
- ld a, $2
- ld c, a
- ld a, $ff
- ld b, a
- ld a, $a0
- call Function11671f
-
-Function116640:
- call Function116747
- ld a, [wc30f]
- cp $28
- ret nz
- ld a, $6
- call Function116780
- ret c
- ld a, $7
- ld [wc314], a
- ret
-; 116655
-
-Function116655: ; 116655
- xor a
- ld [wc317], a
- call Function11678e
-
-Function11665c:
- ld hl, wc317
- ld a, $1
- xor [hl]
- ld [hl], a
- add $4
- ld c, a
- call Function11679c
- ld a, [wc317]
- and a
- jr nz, .asm_116673
- ld a, $48
- jr .asm_116675
-
-.asm_116673
- ld a, $78
-
-.asm_116675
- ld [wc30f], a
- call Random
- ld a, [hRandomAdd]
- and $7
- sla a
- sla a
- sla a
- add $30
- ld [wc30e], a
- call Function116797
-
-Function11668d:
- ld a, [wc311]
- cp $ff
- ret nz
- ld a, $b
- call Function116780
- ret c
- ld a, $c
- ld [wc314], a
- ret
-; 11669f
-
-Function11669f: ; 11669f
- call Function11678e
-
-Function1166a2:
- ld a, $a8
- ld [wc30e], a
- ld [wc3f1], a
- ld a, $60
- ld [wc30f], a
- ld [wc3f3], a
- ld a, $ff
- ld [wc316], a
- xor a
- ld [wc317], a
- ld a, $0
- ld c, a
- call Function11679c
- call Function116797
-
-Function1166c4:
- call Function116747
- ld a, [wc30e]
- cp $58
- ret nz
- ld a, $6
- ld c, a
- call Function11679c
- call Function116797
-
-Function1166d6:
- call Function116747
- ld a, [wc30e]
- cp $48
- jr nz, .asm_1166e4
- xor a
- ld [wc316], a
-
-.asm_1166e4
- ld a, [wc311]
- cp $ff
- ret nz
- ld a, $4
- ld [wc319], a
- xor a
- ld [wc314], a
- ret
-; 1166f4
-
-Function1166f4: ; 1166f4
- ld [wc30e], a
- ld a, b
- ld [wc316], a
- xor a
- ld [wc317], a
- ld hl, wc30f
-.asm_116702
- call Random
- ld a, [hRandomAdd]
- and $7
- jr z, .asm_11670c
- dec a
-
-.asm_11670c
- sla a
- sla a
- sla a
- add $48
- cp [hl]
- jr z, .asm_116702
- ld [hl], a
- call Function11679c
- call Function116797
- ret
-; 11671f
-
-Function11671f: ; 11671f
- ld [wc30f], a
- ld a, b
- ld [wc317], a
- xor a
- ld [wc316], a
- ld hl, wc30e
-.asm_11672d
- call Random
- ld a, [hRandomAdd]
- and $7
- sla a
- sla a
- sla a
- add $30
- cp [hl]
- jr z, .asm_11672d
- ld [hl], a
- call Function11679c
- call Function116797
- ret
-; 116747
-
-Function116747: ; 116747
- ld hl, wc30e
- ld a, [wc316]
- add [hl]
- ld [hl], a
- ld hl, wc30f
- ld a, [wc317]
- add [hl]
- ld [hl], a
- ret
-; 116758
-
-Function116758: ; 116758
- ld a, [wc30f]
- cp $30
- jr c, .asm_116770
- jr z, .asm_116770
- cp $38
- jr c, .asm_116774
- jr z, .asm_116774
- cp $40
- jr c, .asm_116778
- jr z, .asm_116778
- xor a
- jr .asm_11677a
-
-.asm_116770
- ld a, $c
- jr .asm_11677a
-
-.asm_116774
- ld a, $8
- jr .asm_11677a
-
-.asm_116778
- ld a, $4
-
-.asm_11677a
- ld [wc318], a
- ret
-; 11677e
-
-Function11677e: ; 11677e
- ld a, $0
-
-Function116780:
- ld hl, wc315
- cp [hl]
- jr z, .asm_11678c
- ld a, [hl]
- ld [wc314], a
- scf
- ret
-
-.asm_11678c
- and a
- ret
-; 11678e
-
-Function11678e: ; 11678e
- ld hl, wc314
- ld a, [hl]
- ld [wc315], a
- inc [hl]
- ret
-; 116797
-
-Function116797: ; 116797
- ld hl, wc314
- inc [hl]
- ret
-; 11679c
-
-Function11679c:
- ld a, c
- ld [wc311], a
- xor a
- ld [wc312], a
- jr asm_1167af
-
-Function1167a6: ; 1167a6
- ld hl, wc313
- dec [hl]
- ret nz
- ld hl, wc312
- inc [hl]
-
-asm_1167af
-.asm_1167af
- ld a, [wc311]
- cp $ff
- ret z
- sla a
- ld c, a
- ld b, 0
- ld hl, Unknown_1167eb
- add hl, bc
- ld a, [hli]
- ld e, a
- ld a, [hli]
- ld d, a
- push de
- pop hl
- ld a, [wc312]
- sla a
- ld c, a
- ld b, $0
- add hl, bc
- ld a, [hli]
- cp $ff
- jr z, .asm_1167dc
- cp $fe
- jr nz, .asm_1167e3
- xor a
- ld [wc312], a
- jr .asm_1167af
-
-.asm_1167dc
- ld a, $ff
- ld [wc311], a
- ld a, $fd
-
-.asm_1167e3
- ld [wc310], a
- ld a, [hl]
- ld [wc313], a
- ret
-; 1167eb
-
-Unknown_1167eb:
- dw Unknown_1167fb
- dw Unknown_116808
- dw Unknown_116867
- dw Unknown_116870
- dw Unknown_116815
- dw Unknown_11683e
- dw Unknown_116881
- dw Unknown_1168ae
-
-Unknown_1167fb: ; 1167fb
- db $0, $6
- db $1, $4
- db $2, $4
- db $3, $6
- db $2, $4
- db $1, $4
- db $fe
-
-Unknown_116808: ; 116808
- db $4, $6
- db $5, $4
- db $6, $4
- db $7, $6
- db $6, $4
- db $5, $4
- db $fe
-
-Unknown_116815: ; 116815
- db $fd, $20
- db $8, $c
- db $9, $24
- db $a, $4
- db $b, $8
- db $a, $4
- db $9, $6
- db $c, $4
- db $d, $8
- db $c, $5
- db $9, $24
- db $a, $4
- db $b, $8
- db $a, $4
- db $9, $6
- db $c, $4
- db $d, $8
- db $c, $5
- db $9, $8
- db $8, $4
- db $ff
-
-Unknown_11683e: ; 11683e
- db $fd, $20
- db $e, $c
- db $f, $24
- db $10, $4
- db $11, $8
- db $10, $4
- db $f, $6
- db $12, $4
- db $13, $8
- db $12, $5
- db $f, $24
- db $10, $4
- db $11, $8
- db $10, $4
- db $f, $6
- db $12, $4
- db $13, $8
- db $12, $5
- db $f, $8
- db $e, $4
- db $ff
-
-Unknown_116867: ; 116867
- db $14, $8
- db $15, $8
- db $16, $8
- db $15, $8
- db $fe
-
-Unknown_116870: ; 116870
- db $17, $5
- db $18, $5
- db $19, $5
- db $1a, $5
- db $1b, $5
- db $1a, $5
- db $19, $5
- db $18, $5
- db $fe
-
-Unknown_116881: ; 116881
- db $1c, $7
- db $1d, $7
- db $1e, $a
- db $1f, $a
- db $20, $5
- db $21, $5
- db $20, $5
- db $21, $5
- db $20, $18
- db $22, $4
- db $23, $2
- db $22, $2
- db $23, $2
- db $22, $1
- db $23, $1
- db $22, $1
- db $23, $4
- db $fd, $1
- db $23, $1
- db $fd, $2
- db $23, $2
- db $fd, $40
- db $ff
-
-Unknown_1168ae: ; 1168ae
- db $24, $4
- db $25, $4
- db $26, $4
- db $27, $4
- db $28, $4
- db $29, $4
- db $2a, $4
- db $2b, $4
- db $2c, $4
- db $2d, $4
- db $2e, $4
- db $fe
-; 1168c5
-
-Unknown_1168c5:
- dw Unknown_116923
- dw Unknown_116960
- dw Unknown_1169a1
- dw Unknown_1169de
- dw Unknown_116a1b
- dw Unknown_116a58
- dw Unknown_116a99
- dw Unknown_116ad6
- dw Unknown_116d1b
- dw Unknown_116d4c
- dw Unknown_116d85
- dw Unknown_116dbe
- dw Unknown_116df7
- dw Unknown_116e30
- dw Unknown_116e69
- dw Unknown_116e9a
- dw Unknown_116ed3
- dw Unknown_116f0c
- dw Unknown_116f45
- dw Unknown_116f7e
- dw Unknown_116b13
- dw Unknown_116b54
- dw Unknown_116b95
- dw Unknown_116bd6
- dw Unknown_116c17
- dw Unknown_116c58
- dw Unknown_116c99
- dw Unknown_116cda
- dw Unknown_116fb7
- dw Unknown_116fec
- dw Unknown_117025
- dw Unknown_117056
- dw Unknown_117083
- dw Unknown_1170c0
- dw Unknown_1170fd
- dw Unknown_11713a
- dw Unknown_117177
- dw Unknown_11719c
- dw Unknown_1171c1
- dw Unknown_1171e6
- dw Unknown_11720b
- dw Unknown_117230
- dw Unknown_117255
- dw Unknown_11727a
- dw Unknown_11729f
- dw Unknown_1172c4
- dw Unknown_1172e9
-
-Unknown_116923: ; 116923
- db $f
- db $0, $0, $1, $a
- db $0, $8, $2, $d
- db $0, $10, $3, $d
- db $0, $18, $4, $d
- db $8, $0, $11, $a
- db $8, $8, $12, $a
- db $8, $10, $13, $a
- db $8, $18, $14, $d
- db $10, $0, $21, $a
- db $10, $8, $22, $a
- db $10, $10, $23, $a
- db $10, $18, $24, $a
- db $18, $0, $31, $a
- db $18, $8, $32, $a
- db $18, $10, $33, $a
-
-Unknown_116960: ; 116960
- db $10
- db $1, $0, $1, $a
- db $1, $8, $2, $d
- db $1, $10, $3, $d
- db $1, $18, $4, $d
- db $9, $0, $11, $a
- db $9, $8, $12, $a
- db $9, $10, $13, $a
- db $9, $18, $14, $d
- db $11, $0, $5, $a
- db $11, $8, $6, $a
- db $11, $10, $7, $a
- db $11, $18, $34, $a
- db $19, $0, $15, $a
- db $19, $8, $16, $a
- db $19, $10, $17, $a
- db $19, $18, $35, $a
-
-Unknown_1169a1: ; 1169a1
- db $f
- db $1, $0, $1, $a
- db $1, $8, $2, $d
- db $1, $10, $3, $d
- db $1, $18, $4, $d
- db $9, $0, $11, $a
- db $9, $8, $12, $a
- db $9, $10, $13, $a
- db $9, $18, $14, $d
- db $11, $0, $25, $a
- db $11, $8, $26, $a
- db $11, $10, $27, $a
- db $11, $18, $34, $a
- db $19, $8, $36, $a
- db $19, $10, $37, $a
- db $19, $18, $35, $a
-
-Unknown_1169de: ; 1169de
- db $f
- db $0, $0, $1, $a
- db $0, $8, $2, $d
- db $0, $10, $3, $d
- db $0, $18, $4, $d
- db $8, $0, $11, $a
- db $8, $8, $12, $a
- db $8, $10, $13, $a
- db $8, $18, $14, $d
- db $10, $0, $10, $a
- db $10, $8, $20, $a
- db $10, $10, $30, $a
- db $10, $18, $24, $a
- db $18, $0, $31, $a
- db $18, $8, $32, $a
- db $18, $10, $33, $a
-
-Unknown_116a1b: ; 116a1b
- db $f
- db $0, $0, $4, $2d
- db $0, $8, $3, $2d
- db $0, $10, $2, $2d
- db $0, $18, $1, $2a
- db $8, $0, $14, $2d
- db $8, $8, $13, $2a
- db $8, $10, $12, $2a
- db $8, $18, $11, $2a
- db $10, $0, $24, $2a
- db $10, $8, $23, $2a
- db $10, $10, $22, $2a
- db $10, $18, $21, $2a
- db $18, $8, $33, $2a
- db $18, $10, $32, $2a
- db $18, $18, $31, $2a
-
-Unknown_116a58: ; 116a58
- db $10
- db $1, $0, $4, $2d
- db $1, $8, $3, $2d
- db $1, $10, $2, $2d
- db $1, $18, $1, $2a
- db $9, $0, $14, $2d
- db $9, $8, $13, $2a
- db $9, $10, $12, $2a
- db $9, $18, $11, $2a
- db $11, $0, $34, $2a
- db $11, $8, $7, $2a
- db $11, $10, $6, $2a
- db $11, $18, $5, $2a
- db $19, $0, $35, $2a
- db $19, $8, $17, $2a
- db $19, $10, $16, $2a
- db $19, $18, $15, $2a
-
-Unknown_116a99: ; 116a99
- db $f
- db $1, $0, $4, $2d
- db $1, $8, $3, $2d
- db $1, $10, $2, $2d
- db $1, $18, $1, $2a
- db $9, $0, $14, $2d
- db $9, $8, $13, $2a
- db $9, $10, $12, $2a
- db $9, $18, $11, $2a
- db $11, $0, $34, $2a
- db $11, $8, $27, $2a
- db $11, $10, $26, $2a
- db $11, $18, $25, $2a
- db $19, $0, $35, $2a
- db $19, $8, $37, $2a
- db $19, $10, $36, $2a
-
-Unknown_116ad6: ; 116ad6
- db $f
- db $0, $0, $4, $2d
- db $0, $8, $3, $2d
- db $0, $10, $2, $2d
- db $0, $18, $1, $2a
- db $8, $0, $14, $2d
- db $8, $8, $13, $2a
- db $8, $10, $12, $2a
- db $8, $18, $11, $2a
- db $10, $0, $24, $2a
- db $10, $8, $30, $2a
- db $10, $10, $20, $2a
- db $10, $18, $10, $2a
- db $18, $8, $33, $2a
- db $18, $10, $32, $2a
- db $18, $18, $31, $2a
-
-Unknown_116b13: ; 116b13
- db $10
- db $18, $0, $0, $b
- db $18, $8, $8, $b
- db $18, $10, $5c, $b
- db $18, $18, $0, $b
- db $10, $0, $0, $b
- db $10, $8, $5d, $b
- db $10, $10, $5e, $b
- db $10, $18, $0, $b
- db $8, $0, $50, $b
- db $8, $8, $51, $b
- db $8, $10, $52, $b
- db $8, $18, $50, $2b
- db $0, $0, $43, $b
- db $0, $8, $44, $b
- db $0, $10, $44, $2b
- db $0, $18, $43, $2b
-
-Unknown_116b54: ; 116b54
- db $10
- db $19, $0, $0, $b
- db $19, $8, $18, $b
- db $19, $10, $c, $b
- db $19, $18, $0, $b
- db $11, $0, $42, $b
- db $11, $8, $3a, $b
- db $11, $10, $3a, $2b
- db $11, $18, $42, $2b
- db $9, $0, $58, $b
- db $9, $8, $45, $b
- db $9, $10, $45, $2b
- db $9, $18, $58, $2b
- db $1, $0, $d, $b
- db $1, $8, $44, $b
- db $1, $10, $44, $2b
- db $1, $18, $d, $2b
-
-Unknown_116b95: ; 116b95
- db $10
- db $18, $0, $0, $b
- db $18, $8, $5c, $2b
- db $18, $10, $8, $2b
- db $18, $18, $0, $b
- db $10, $0, $0, $b
- db $10, $8, $5e, $2b
- db $10, $10, $5d, $2b
- db $10, $18, $0, $b
- db $8, $0, $50, $b
- db $8, $8, $52, $2b
- db $8, $10, $51, $2b
- db $8, $18, $50, $2b
- db $0, $0, $43, $b
- db $0, $8, $44, $b
- db $0, $10, $44, $2b
- db $0, $18, $43, $2b
-
-Unknown_116bd6: ; 116bd6
- db $10
- db $18, $0, $0, $a
- db $18, $8, $56, $a
- db $18, $10, $57, $a
- db $18, $18, $0, $a
- db $10, $0, $64, $a
- db $10, $8, $4a, $a
- db $10, $10, $4b, $a
- db $10, $18, $71, $a
- db $8, $0, $54, $a
- db $8, $8, $55, $a
- db $8, $10, $55, $2a
- db $8, $18, $54, $2a
- db $0, $0, $48, $a
- db $0, $8, $49, $a
- db $0, $10, $49, $2a
- db $0, $18, $48, $2a
-
-Unknown_116c17: ; 116c17
- db $10
- db $19, $0, $0, $a
- db $19, $8, $76, $a
- db $19, $10, $77, $a
- db $19, $18, $0, $a
- db $11, $0, $64, $a
- db $11, $8, $69, $a
- db $11, $10, $6a, $a
- db $11, $18, $6b, $a
- db $9, $0, $6f, $a
- db $9, $8, $70, $a
- db $9, $10, $70, $2a
- db $9, $18, $6f, $2a
- db $1, $0, $63, $a
- db $1, $8, $19, $a
- db $1, $10, $19, $2a
- db $1, $18, $63, $2a
-
-Unknown_116c58: ; 116c58
- db $10
- db $1a, $0, $6c, $a
- db $1a, $8, $6d, $a
- db $1a, $10, $6e, $a
- db $1a, $18, $0, $a
- db $12, $0, $5f, $a
- db $12, $8, $60, $a
- db $12, $10, $61, $a
- db $12, $18, $62, $a
- db $a, $0, $53, $a
- db $a, $8, $55, $a
- db $a, $10, $55, $2a
- db $a, $18, $53, $2a
- db $2, $0, $46, $a
- db $2, $8, $47, $a
- db $2, $10, $47, $2a
- db $2, $18, $46, $2a
-
-Unknown_116c99: ; 116c99
- db $10
- db $19, $0, $0, $2a
- db $19, $8, $77, $2a
- db $19, $10, $76, $2a
- db $19, $18, $0, $2a
- db $11, $0, $6b, $2a
- db $11, $8, $6a, $2a
- db $11, $10, $69, $2a
- db $11, $18, $64, $2a
- db $9, $0, $6f, $a
- db $9, $8, $70, $a
- db $9, $10, $70, $2a
- db $9, $18, $6f, $2a
- db $1, $0, $63, $a
- db $1, $8, $19, $a
- db $1, $10, $19, $2a
- db $1, $18, $63, $2a
-
-Unknown_116cda: ; 116cda
- db $10
- db $18, $0, $0, $a
- db $18, $8, $57, $2a
- db $18, $10, $56, $2a
- db $18, $18, $0, $a
- db $10, $0, $71, $2a
- db $10, $8, $4b, $2a
- db $10, $10, $4a, $2a
- db $10, $18, $64, $2a
- db $8, $0, $54, $a
- db $8, $8, $55, $a
- db $8, $10, $55, $2a
- db $8, $18, $54, $2a
- db $0, $0, $48, $a
- db $0, $8, $49, $a
- db $0, $10, $49, $2a
- db $0, $18, $48, $2a
-
-Unknown_116d1b: ; 116d1b
- db $c
- db $0, $0, $38, $4a
- db $0, $8, $39, $4a
- db $0, $10, $39, $6a
- db $0, $18, $38, $6a
- db $8, $0, $28, $4a
- db $8, $8, $29, $4a
- db $8, $10, $29, $6a
- db $8, $18, $28, $6a
- db $10, $0, $9, $4d
- db $10, $8, $19, $4a
- db $10, $10, $19, $6a
- db $10, $18, $9, $6d
-
-Unknown_116d4c: ; 116d4c
- db $e
- db $0, $8, $3b, $4a
- db $0, $10, $3b, $6a
- db $8, $0, $2a, $4a
- db $8, $8, $2b, $4a
- db $8, $10, $2b, $6a
- db $8, $18, $2a, $6a
- db $10, $0, $1a, $4a
- db $10, $8, $1b, $4a
- db $10, $10, $1b, $6a
- db $10, $18, $1a, $6a
- db $18, $0, $a, $4a
- db $18, $8, $b, $4a
- db $18, $10, $b, $6a
- db $18, $18, $a, $6a
-
-Unknown_116d85: ; 116d85
- db $e
- db $0, $0, $35, $2a
- db $0, $8, $3c, $4a
- db $0, $10, $3d, $4a
- db $0, $18, $3e, $4a
- db $8, $0, $2c, $4a
- db $8, $8, $2d, $4a
- db $8, $10, $2e, $4a
- db $8, $18, $2f, $4a
- db $10, $0, $1c, $4a
- db $10, $8, $1d, $4a
- db $10, $10, $1e, $4d
- db $10, $18, $1f, $4d
- db $18, $10, $e, $4d
- db $18, $18, $f, $4a
-
-Unknown_116dbe: ; 116dbe
- db $e
- db $0, $0, $65, $4a
- db $0, $8, $66, $4a
- db $0, $10, $67, $4a
- db $0, $18, $68, $4a
- db $8, $8, $59, $4a
- db $8, $10, $5a, $4a
- db $8, $18, $5b, $4a
- db $10, $0, $4c, $4a
- db $10, $8, $4d, $4d
- db $10, $10, $4e, $4d
- db $10, $18, $4f, $4a
- db $18, $0, $3f, $4d
- db $18, $8, $40, $4d
- db $18, $10, $41, $4d
-
-Unknown_116df7: ; 116df7
- db $e
- db $0, $0, $3e, $6a
- db $0, $8, $3d, $6a
- db $0, $10, $3c, $6a
- db $0, $18, $35, $a
- db $8, $0, $2f, $6a
- db $8, $8, $2e, $6a
- db $8, $10, $2d, $6a
- db $8, $18, $2c, $6a
- db $10, $0, $1f, $6d
- db $10, $8, $1e, $6d
- db $10, $10, $1d, $6a
- db $10, $18, $1c, $6a
- db $18, $0, $f, $6a
- db $18, $8, $e, $6d
-
-Unknown_116e30: ; 116e30
- db $e
- db $0, $0, $68, $6a
- db $0, $8, $67, $6a
- db $0, $10, $66, $6a
- db $0, $18, $65, $6a
- db $8, $0, $5b, $6a
- db $8, $8, $5a, $6a
- db $8, $10, $59, $6a
- db $10, $0, $4f, $6a
- db $10, $8, $4e, $6d
- db $10, $10, $4d, $6d
- db $10, $18, $4c, $6a
- db $18, $8, $41, $6d
- db $18, $10, $40, $6d
- db $18, $18, $3f, $6d
-
-Unknown_116e69: ; 116e69
- db $c
- db $8, $0, $9, $d
- db $8, $8, $19, $a
- db $8, $10, $19, $2a
- db $8, $18, $9, $2d
- db $10, $0, $28, $a
- db $10, $8, $29, $a
- db $10, $10, $29, $2a
- db $10, $18, $28, $2a
- db $18, $0, $38, $a
- db $18, $8, $39, $a
- db $18, $10, $39, $2a
- db $18, $18, $38, $2a
-
-Unknown_116e9a: ; 116e9a
- db $e
- db $0, $0, $a, $a
- db $0, $8, $b, $a
- db $0, $10, $b, $2a
- db $0, $18, $a, $2a
- db $8, $0, $1a, $a
- db $8, $8, $1b, $a
- db $8, $10, $1b, $2a
- db $8, $18, $1a, $2a
- db $10, $0, $2a, $a
- db $10, $8, $2b, $a
- db $10, $10, $2b, $2a
- db $10, $18, $2a, $2a
- db $18, $8, $3b, $a
- db $18, $10, $3b, $2a
-
-Unknown_116ed3: ; 116ed3
- db $e
- db $0, $10, $e, $d
- db $0, $18, $f, $a
- db $8, $0, $1c, $a
- db $8, $8, $1d, $a
- db $8, $10, $1e, $d
- db $8, $18, $1f, $d
- db $10, $0, $2c, $a
- db $10, $8, $2d, $a
- db $10, $10, $2e, $a
- db $10, $18, $2f, $a
- db $18, $0, $35, $6a
- db $18, $8, $3c, $a
- db $18, $10, $3d, $a
- db $18, $18, $3e, $a
-
-Unknown_116f0c: ; 116f0c
- db $e
- db $0, $0, $3f, $d
- db $0, $8, $40, $d
- db $0, $10, $41, $d
- db $8, $0, $4c, $a
- db $8, $8, $4d, $d
- db $8, $10, $4e, $d
- db $8, $18, $4f, $a
- db $10, $8, $59, $a
- db $10, $10, $5a, $a
- db $10, $18, $5b, $a
- db $18, $0, $65, $a
- db $18, $8, $66, $a
- db $18, $10, $67, $a
- db $18, $18, $68, $a
-
-Unknown_116f45: ; 116f45
- db $e
- db $0, $0, $f, $2a
- db $0, $8, $e, $2d
- db $8, $0, $1f, $2d
- db $8, $8, $1e, $2d
- db $8, $10, $1d, $2a
- db $8, $18, $1c, $2a
- db $10, $0, $2f, $2a
- db $10, $8, $2e, $2a
- db $10, $10, $2d, $2a
- db $10, $18, $2c, $2a
- db $18, $0, $3e, $2a
- db $18, $8, $3d, $2a
- db $18, $10, $3c, $2a
- db $18, $18, $35, $4a
-
-Unknown_116f7e: ; 116f7e
- db $e
- db $0, $8, $41, $2d
- db $0, $10, $40, $2d
- db $0, $18, $3f, $2d
- db $8, $0, $4f, $2a
- db $8, $8, $4e, $2d
- db $8, $10, $4d, $2d
- db $8, $18, $4c, $2a
- db $10, $0, $5b, $2a
- db $10, $8, $5a, $2a
- db $10, $10, $59, $2a
- db $18, $0, $68, $2a
- db $18, $8, $67, $2a
- db $18, $10, $66, $2a
- db $18, $18, $65, $2a
-
-Unknown_116fb7: ; 116fb7
- db $d
- db $fa, $0, $72, $a
- db $fa, $8, $73, $d
- db $fa, $10, $74, $d
- db $fa, $18, $75, $d
- db $2, $0, $81, $a
- db $2, $8, $82, $a
- db $2, $10, $83, $a
- db $2, $18, $84, $a
- db $a, $0, $91, $a
- db $a, $8, $92, $a
- db $a, $10, $93, $a
- db $a, $18, $94, $a
- db $12, $10, $a3, $a
-
-Unknown_116fec: ; 116fec
- db $e
- db $fd, $0, $85, $d
- db $fd, $8, $86, $d
- db $5, $0, $95, $d
- db $5, $8, $96, $a
- db $5, $10, $97, $a
- db $5, $18, $98, $a
- db $d, $0, $a5, $a
- db $d, $8, $a6, $a
- db $d, $10, $a7, $a
- db $d, $18, $a8, $a
- db $15, $0, $b3, $a
- db $15, $8, $b4, $a
- db $15, $10, $b5, $a
- db $15, $18, $b6, $a
-
-Unknown_117025: ; 117025
- db $c
- db $8, $0, $79, $d
- db $8, $8, $7a, $d
- db $8, $10, $7b, $a
- db $8, $18, $7c, $a
- db $10, $0, $89, $d
- db $10, $8, $8a, $a
- db $10, $10, $8b, $a
- db $10, $18, $8c, $a
- db $18, $0, $99, $a
- db $18, $8, $9a, $a
- db $18, $10, $9b, $a
- db $18, $18, $9c, $a
-
-Unknown_117056: ; 117056
- db $b
- db $8, $0, $7d, $a
- db $8, $8, $7e, $d
- db $8, $10, $7f, $d
- db $8, $18, $80, $a
- db $10, $0, $8d, $a
- db $10, $8, $8e, $a
- db $10, $10, $8f, $a
- db $10, $18, $90, $a
- db $18, $8, $9e, $a
- db $18, $10, $9f, $a
- db $18, $18, $a0, $a
-
-Unknown_117083: ; 117083
- db $f
- db $0, $0, $a1, $a
- db $0, $8, $a2, $a
- db $0, $10, $a2, $2a
- db $0, $18, $a1, $2a
- db $8, $0, $b1, $a
- db $8, $8, $b2, $d
- db $8, $10, $b2, $2d
- db $8, $18, $b1, $2a
- db $10, $0, $ab, $a
- db $10, $8, $ac, $a
- db $10, $10, $ac, $2a
- db $10, $18, $ab, $2a
- db $18, $8, $a4, $a
- db $18, $10, $87, $a
- db $18, $18, $88, $a
-
-Unknown_1170c0: ; 1170c0
- db $f
- db $0, $0, $a1, $a
- db $0, $8, $a2, $d
- db $0, $10, $a2, $2a
- db $0, $18, $a1, $2a
- db $8, $0, $b1, $a
- db $8, $8, $78, $d
- db $8, $10, $78, $2d
- db $8, $18, $b1, $2a
- db $10, $0, $ab, $a
- db $10, $8, $ac, $a
- db $10, $10, $ac, $2a
- db $10, $18, $ab, $2a
- db $18, $8, $a4, $a
- db $18, $10, $87, $a
- db $18, $18, $88, $a
-
-Unknown_1170fd: ; 1170fd
- db $f
- db $0, $0, $a9, $a
- db $0, $8, $aa, $a
- db $0, $10, $aa, $2a
- db $0, $18, $a9, $2a
- db $8, $0, $b7, $a
- db $8, $8, $b8, $a
- db $8, $10, $b8, $2a
- db $8, $18, $b7, $2a
- db $10, $0, $ab, $a
- db $10, $8, $ac, $a
- db $10, $10, $ac, $2a
- db $10, $18, $ad, $a
- db $18, $8, $a4, $a
- db $18, $10, $ba, $a
- db $18, $18, $bb, $a
-
-Unknown_11713a: ; 11713a
- db $f
- db $0, $0, $ae, $c
- db $0, $8, $af, $c
- db $0, $10, $af, $2c
- db $0, $18, $ae, $2c
- db $8, $0, $bc, $c
- db $8, $8, $bd, $c
- db $8, $10, $bd, $2c
- db $8, $18, $bc, $2c
- db $10, $0, $bf, $c
- db $10, $8, $9d, $c
- db $10, $10, $9d, $2c
- db $10, $18, $b0, $c
- db $18, $8, $b9, $c
- db $18, $10, $c0, $c
- db $18, $18, $be, $c
-
-Unknown_117177: ; 117177
- db $9
- db $14, $0, $1f, $6
- db $14, $8, $20, $6
- db $14, $10, $21, $6
- db $c, $0, $10, $6
- db $c, $8, $11, $6
- db $c, $10, $12, $6
- db $4, $0, $1, $6
- db $4, $8, $2, $6
- db $4, $10, $3, $6
-
-Unknown_11719c: ; 11719c
- db $9
- db $14, $0, $22, $6
- db $14, $8, $23, $6
- db $14, $10, $24, $6
- db $c, $0, $13, $6
- db $c, $8, $14, $6
- db $c, $10, $15, $6
- db $4, $0, $4, $6
- db $4, $8, $5, $6
- db $4, $10, $6, $6
-
-Unknown_1171c1: ; 1171c1
- db $9
- db $14, $0, $25, $6
- db $14, $8, $26, $6
- db $14, $10, $27, $6
- db $c, $0, $16, $6
- db $c, $8, $17, $6
- db $c, $10, $18, $6
- db $4, $0, $7, $6
- db $4, $8, $8, $6
- db $4, $10, $9, $6
-
-Unknown_1171e6: ; 1171e6
- db $9
- db $14, $0, $28, $6
- db $14, $8, $29, $6
- db $14, $10, $2a, $6
- db $c, $0, $19, $6
- db $c, $8, $1a, $6
- db $c, $10, $1b, $6
- db $4, $0, $a, $6
- db $4, $8, $b, $6
- db $4, $10, $c, $6
-
-Unknown_11720b: ; 11720b
- db $9
- db $14, $0, $2b, $6
- db $14, $8, $2c, $6
- db $14, $10, $2d, $6
- db $c, $0, $1c, $6
- db $c, $8, $1d, $6
- db $c, $10, $1e, $6
- db $4, $0, $d, $6
- db $4, $8, $e, $6
- db $4, $10, $f, $6
-
-Unknown_117230: ; 117230
- db $9
- db $14, $0, $47, $6
- db $14, $8, $48, $6
- db $14, $10, $49, $6
- db $c, $0, $3b, $6
- db $c, $8, $3c, $6
- db $c, $10, $3b, $26
- db $4, $0, $2e, $6
- db $4, $8, $2f, $6
- db $4, $10, $30, $6
-
-Unknown_117255: ; 117255
- db $9
- db $14, $0, $35, $6
- db $14, $8, $4a, $6
- db $14, $10, $35, $6
- db $c, $0, $3d, $6
- db $c, $8, $35, $6
- db $c, $10, $3d, $26
- db $4, $0, $31, $6
- db $4, $8, $32, $6
- db $4, $10, $31, $26
-
-Unknown_11727a: ; 11727a
- db $9
- db $14, $0, $4b, $6
- db $14, $8, $4c, $6
- db $14, $10, $4d, $6
- db $c, $0, $3e, $6
- db $c, $8, $3f, $6
- db $c, $10, $40, $6
- db $4, $0, $33, $6
- db $4, $8, $34, $6
- db $4, $10, $35, $6
-
-Unknown_11729f: ; 11729f
- db $9
- db $14, $0, $4e, $6
- db $14, $8, $4f, $6
- db $14, $10, $50, $6
- db $c, $0, $41, $6
- db $c, $8, $42, $6
- db $c, $10, $43, $6
- db $4, $0, $35, $6
- db $4, $8, $36, $6
- db $4, $10, $37, $6
-
-Unknown_1172c4: ; 1172c4
- db $9
- db $14, $0, $51, $6
- db $14, $8, $52, $6
- db $14, $10, $35, $6
- db $c, $0, $44, $6
- db $c, $8, $45, $6
- db $c, $10, $46, $6
- db $4, $0, $38, $6
- db $4, $8, $39, $6
- db $4, $10, $3a, $6
-
-Unknown_1172e9: ; 1172e9
- db $9
- db $10, $0, $0, $2
- db $10, $8, $0, $2
- db $10, $10, $0, $2
- db $8, $0, $0, $2
- db $8, $8, $0, $2
- db $c, $10, $1f, $6
- db $0, $0, $0, $2
- db $0, $8, $0, $2
- db $4, $10, $10, $6
-; 11730e
-
-Palette_11730e:
- RGB 31, 31, 31
- RGB 7, 5, 4
- RGB 31, 28, 4
- RGB 31, 5, 5
- RGB 31, 31, 31
- RGB 7, 5, 4
- RGB 31, 23, 0
- RGB 31, 28, 4
- RGB 31, 31, 31
- RGB 16, 19, 31
- RGB 17, 31, 31
- RGB 31, 31, 31
- RGB 5, 5, 5
- RGB 7, 5, 4
- RGB 31, 28, 4
- RGB 19, 11, 6
- RGB 31, 31, 31
- RGB 3, 15, 31
- RGB 4, 25, 25
- RGB 0, 7, 12
- RGB 31, 31, 31
- RGB 0, 16, 0
- RGB 0, 16, 0
- RGB 0, 16, 0
- RGB 4, 11, 22
- RGB 0, 16, 0
- RGB 0, 16, 0
- RGB 0, 16, 0
- RGB 22, 11, 8
- RGB 0, 16, 0
- RGB 0, 16, 0
- RGB 0, 16, 0
-
-Palette_11734e:
- RGB 31, 30, 30
- RGB 2, 0, 0
- RGB 10, 9, 9
- RGB 15, 14, 14
-
-Unknown_117356:
-INCBIN "baserom.gbc", $117356, $117656 - $117356
-
-
-SECTION "Mobile Stadium", ROMX, BANK[$45]
-
-Function117656: ; 117656
- callba GiveOddEgg
- ret
-; 11765d
-
-Function11765d: ; 11765d (45:765d)
- ld a, [$ffaa]
- push af
- ld a, $1
- ld [$ffaa], a
- call Function11766b
- pop af
- ld [$ffaa], a
- ret
-
-Function11766b: ; 11766b (45:766b)
- call Function117699
- ld a, [rSVBK] ; $ff00+$70
- push af
- ld a, $5
- ld [rSVBK], a ; $ff00+$70
- call Function1176ee
- ld a, $5
- call GetSRAMBank
- ld hl, $b1f3
- ld de, wcd49
- ld bc, $8
- call CopyBytes
- ld de, wc708
- ld bc, $11
- call CopyBytes
- call CloseSRAM
- pop af
- ld [rSVBK], a ; $ff00+$70
- ret
-
-Function117699: ; 117699 (45:7699)
- ld a, $5
- call GetSRAMBank
- ld hl, wcd49
- ld de, $b1f3
- ld bc, $8
- call CopyBytes
- ld hl, wc708
- ld bc, $11
- call CopyBytes
- call CloseSRAM
- xor a
- ld [wcd49], a
- ld [wcd4a], a
- ld [wcd4b], a
- ld [wcd4c], a
- ld [wcd4d], a
- ld [wcd4e], a
- ld [wcd4f], a
- ld hl, wc708
- ld bc, $11
- call ByteFill
- call WhiteBGMap
- call ClearSprites
- callba Function171c87
- callba Function104061
- callba Function8cf53
- ret
-
-Function1176ee: ; 1176ee (45:76ee)
- call Functiona57
- ld a, [wcd49]
- bit 7, a
- jr nz, .asm_117709
- call Function117719
- callba Function8cf69
- callba Function104061
- jr Function1176ee
-.asm_117709
- callba Function8cf53
- call WhiteBGMap
- call ClearScreen
- call ClearSprites
- ret
-
-Function117719: ; 117719 (45:7719)
- ld a, [wcd49]
- ld e, a
- ld d, 0
- ld hl, Jumptable_117728
- add hl, de
- add hl, de
- ld a, [hli]
- ld h, [hl]
- ld l, a
- jp [hl]
-
-Jumptable_117728: ; 117728 (45:7728)
- dw Function117738
- dw Function117764
- dw Function1178aa
- dw Function1178e8
- dw Function117942
- dw Function117976
- dw Function117984
- dw Function1179a7
-
-
-Function117738: ; 117738 (45:7738)
- callba Function171ccd
- lb de, $30, $18
- ld a, $1d
- call Function3b2a
- ld hl, $c
- add hl, bc
- ld a, $6
- ld [hl], a
- lb de, $48, $20
- ld a, $1d
- call Function3b2a
- ld hl, $c
- add hl, bc
- ld a, $7
- ld [hl], a
- ld a, $3
- ld [wcd23], a
- jp Function117a0a
-
-Function117764: ; 117764 (45:7764)
- ld a, [wcd4a]
- cp $10
- jr nz, .asm_11776f
- ld a, $1
- jr .asm_117770
-.asm_11776f
- xor a
-.asm_117770
- ld [wcd24], a
- ld hl, hJoyPressed ; $ffa7
- ld a, [hl]
- and $4
- jr nz, Function1177a5
- ld a, [hl]
- and $8
- jr nz, Function1177ac
- ld a, [hl]
- and $1
- jp nz, Function11784c
- ld a, [hl]
- and $2
- jr nz, asm_1177d6
- ld hl, $ffa9
- ld a, [hl]
- and $40
- jr nz, asm_1177f1
- ld a, [hl]
- and $80
- jr nz, asm_11780a
- ld a, [hl]
- and $20
- jp nz, Function11782d
- ld a, [hl]
- and $10
- jp nz, Function117837
- ret
-
-Function1177a5: ; 1177a5 (45:77a5)
- callba Function171cf0
- ret
-
-Function1177ac: ; 1177ac (45:77ac)
- ld a, $2
- ld [wcd4c], a
- ld a, $4
- ld [wcd4d], a
- ret
-
-Function1177b7: ; 1177b7 (45:77b7)
- ld a, $3
- ld [wcd24], a
- ld a, [wcd4a]
- and a
- jr z, .asm_1177c5
- jp Function117a0a
-.asm_1177c5
- ld a, $6
- ld [wcd49], a
- ret
-
-Function1177cb: ; 1177cb (45:77cb)
- ld a, $80
- ld [wcd49], a
- ld [ScriptVar], a
- jp Function117a0a
-asm_1177d6: ; 1177d6 (45:77d6)
- call PlayClickSFX
- ld a, [wcd4a]
- and a
- ret z
- dec a
- ld [wcd4a], a
- ld e, a
- ld d, $0
- ld hl, wc708
- add hl, de
- xor a
- ld [hl], a
- hlcoord 2, 4
- add hl, de
- ld [hl], a
- ret
-asm_1177f1: ; 1177f1 (45:77f1)
- ld a, [wcd4d]
- and a
- ret z
- dec a
- ld [wcd4d], a
- cp $3
- ret nz
- ld a, [wcd4c]
- ld e, a
- sla a
- sla a
- add e
-asm_117806: ; 117806 (45:7806)
- ld [wcd4c], a
- ret
-asm_11780a: ; 11780a (45:780a)
- ld a, [wcd4d]
- cp $4
- ret z
- inc a
- ld [wcd4d], a
- cp $4
- ret nz
- ld a, [wcd4c]
- cp $a
- jr nc, .asm_117825
- cp $5
- jr nc, .asm_117829
- xor a
- jr asm_117806
-.asm_117825
- ld a, $2
- jr asm_117806
-.asm_117829
- ld a, $1
- jr asm_117806
-
-Function11782d: ; 11782d (45:782d)
- ld a, [wcd4c]
- and a
- ret z
- dec a
- ld [wcd4c], a
- ret
-
-Function117837: ; 117837 (45:7837)
- ld e, $d
- ld a, [wcd4d]
- cp $4
- jr nz, .asm_117842
- ld e, $2
-.asm_117842
- ld a, [wcd4c]
- cp e
- ret z
- inc a
- ld [wcd4c], a
- ret
-
-Function11784c: ; 11784c (45:784c)
- call PlayClickSFX
- ld a, [wcd4d]
- cp $4
- jr nz, .asm_117866
- ld a, [wcd4c]
- cp $2
- jp z, Function1177b7
- cp $1
- jp z, Function1177cb
- jp Function1177a5
-.asm_117866
- ld a, [wcd4a]
- ld e, a
- cp $10
- jp z, Function1177ac
- inc a
- ld [wcd4a], a
- ld d, $0
- ld a, [wcd4b]
- and a
- jr nz, .asm_117880
- ld hl, Unknown_117a0f
- jr .asm_117883
-.asm_117880
- ld hl, Unknown_117a47
-.asm_117883
- push de
- ld a, [wcd4c]
- ld b, a
- ld a, [wcd4d]
- ld c, $e
- call SimpleMultiply
- add b
- ld c, a
- ld b, $0
- add hl, bc
- ld a, [hl]
- ld hl, wc708
- add hl, de
- ld [hl], a
- pop de
- hlcoord 2, 4
- add hl, de
- sub $20
- ld [hl], a
- ld a, e
- cp $f
- ret nz
- jp Function1177ac
-
-Function1178aa: ; 1178aa (45:78aa)
- ld hl, MenuDataHeader_1179b5
- call LoadMenuDataHeader
- call Function1cbb
- call Function1cfd
- ld hl, MenuDataHeader_1179bd
- call LoadMenuDataHeader
- call Function1cbb
- call Function1cfd
- callba Function104061
- hlcoord 16, 8
- ld de, String_1179c5
- call PlaceString
- hlcoord 15, 10
- ld a, $ed
- ld [hl], a
- hlcoord 1, 14
- ld de, String_1179cc
- call PlaceString
- ld a, $1
- ld [wcd4e], a
- jp Function117a0a
-
-Function1178e8: ; 1178e8 (45:78e8)
- ld a, [hJoyPressed] ; $ff00+$a7
- cp $2
- jr z, .asm_117939
- cp $1
- jr z, .asm_117925
- cp $80
- jr z, .asm_11790f
- cp $40
- ret nz
- ld a, [wcd4e]
- and a
- ret z
- dec a
- ld [wcd4e], a
- hlcoord 15, 8
- ld a, $ed
- ld [hl], a
- hlcoord 15, 10
- ld a, $7f
- ld [hl], a
- ret
-.asm_11790f
- ld a, [wcd4e]
- and a
- ret nz
- inc a
- ld [wcd4e], a
- hlcoord 15, 8
- ld a, $7f
- ld [hl], a
- hlcoord 15, 10
- ld a, $ed
- ld [hl], a
- ret
-.asm_117925
- call PlayClickSFX
- ld a, [wcd4e]
- and a
- jr nz, .asm_117939
- call Function1c07
- ld a, $1
- ld [wcd4f], a
- jp Function117a0a
-.asm_117939
- call Function1c07
- call Function1c07
- jp Function117a0a
-
-Function117942: ; 117942 (45:7942)
- call SpeechTextBox
- hlcoord 1, 14
- ld de, String_1179f7
- call PlaceString
- ld a, $1e
- ld [wcd4e], a
- ld a, $5
- call GetSRAMBank
- ld a, [wcd4f]
- ld [$aa4b], a
- ld hl, wc708
- ld de, $aa4c
- ld bc, $11
- call CopyBytes
- call CloseSRAM
- ld a, [wcd4f]
- and a
- jr z, asm_11797e
- call Function117a0a
-
-Function117976: ; 117976 (45:7976)
- ld hl, wcd4e
- dec [hl]
- ret nz
- call Function1c07
-asm_11797e: ; 11797e (45:797e)
- ld a, $80
- ld [wcd49], a
- ret
-
-Function117984: ; 117984 (45:7984)
- ld hl, MenuDataHeader_1179b5
- call LoadMenuDataHeader
- call Function1cbb
- call Function1cfd
- callba Function104061
- hlcoord 1, 14
- ld de, String_1179e1
- call PlaceString
- ld a, $1e
- ld [wcd4e], a
- call Function117a0a
-
-Function1179a7: ; 1179a7 (45:79a7)
- ld hl, wcd4e
- dec [hl]
- ret nz
- call Function1c07
- ld a, $1
- ld [wcd49], a
- ret
-; 1179b5 (45:79b5)
-
-MenuDataHeader_1179b5: ; 1179b5
- db $40 ; flags
- db 12, 0 ; start coords
- db 17, 19 ; end coords
- dw NULL
- db 0 ; default option
-; 1179bd
-
-MenuDataHeader_1179bd: ; 1179bd
- db $40 ; flags
- db 7, 14 ; start coords
- db 11, 19 ; end coords
- dw NULL
- db 0 ; default option
-; 1179c5
-
-
-String_1179c5: ; 1179c5
- db "はい"
- next "いいえ@"
-; 1179cc
-
-String_1179cc: ; 1179cc
- db "こ", $25, "パスワード", $1f, "ほぞんして"
- line "おきますか?@"
-; 1179e1
-
-String_1179e1: ; 1179e1
- db "パスワード", $4a, "にゅうりょく"
- line "されていません!@"
-; 1179f7
-
-String_1179f7: ; 1179f7
- db "ログインパスワード", $1f, "ほぞん"
- line "しました@"
-; 117a0a
-
-Function117a0a: ; 117a0a (45:7a0a)
- ld hl, wcd49
- inc [hl]
- ret
-; 117a0f (45:7a0f)
-
-Unknown_117a0f:
-INCBIN "data/mobile/ascii-alpha.txt"
-
-Unknown_117a47:
-INCBIN "data/mobile/ascii-sym.txt"
-; 117a7f
-
-
-; everything from here to the end of the bank is related to the
-; Mobile Stadium option from the continue/newgame menu.
-; XXX better function names
-MobileStudium: ; 0x117a7f
- ld a, [$ffaa]
- push af
- ld a, $1
- ld [$ffaa], a
- call Function117a8d
- pop af
- ld [$ffaa], a
- ret
-; 0x117a8d
-
-Function117a8d: ; 0x117a8d
- call Function117a94
- call Function117acd
- ret
-; 0x117a94
-
-Function117a94: ; 0x117a94
- xor a
- ld [wcf63], a
- ld [wcf64], a
- ld [wcf65], a
- ld [wcf66], a
- call WhiteBGMap
- call ClearSprites
- callba Function172e78
- callba Function104000
- ret
-; 0x117ab4
-
-Function117ab4: ; 0x117ab4
- call WhiteBGMap
- call ClearSprites
- callba Function172e78
- callba Function172eb9
- callba Function104061
- ret
-; 0x117acd
-
-Function117acd: ; 0x117acd
- call Functiona57
- ld a, [wcf63]
- bit 7, a
- jr nz, .asm_117ae2 ; 0x117ad5 $b
- call Function117ae9
- callba Function104000
- jr Function117acd
-.asm_117ae2
- call WhiteBGMap
- call ClearSprites
- ret
-
-Function117ae9: ; 0x117ae9
- ld a, [wcf63]
- ld e, a
- ld d, $0
- ld hl, Pointers117af8
- add hl, de
- add hl, de
- ld a, [hli]
- ld h, [hl]
- ld l, a
- jp [hl]
-
-Pointers117af8: ; 0x117af8
- dw Function117b06
- dw Function117b14
- dw Function117b28
- dw Function117b31
- dw Function117b4f
- dw Function117bb6
- dw Function117c4a
-
-Function117b06:
- callba Function172eb9
- ld a, $10
- ld [wcf64], a
- jp Function117cdd
-
-Function117b14:
- ld hl, wcf64
- dec [hl]
- ret nz
- ld hl, Data117cbc
- call LoadMenuDataHeader
- call Function1cbb
- call Function1cfd
- jp Function117cdd
-
-Function117b28:
- ld hl, MobileStadiumEntryText
- call PrintText
- jp Function117cdd
-
-Function117b31:
- ld hl, Data117cc4
- call LoadMenuDataHeader
- call Function1cbb
- call Function1cfd
- hlcoord 16, 8
- ld de, YesNo117ccc
- call PlaceString
- hlcoord 15, 8
- ld a, "▶"
- ld [hl], a
- jp Function117cdd
-
-Function117b4f:
- ld a, [hJoyPressed]
- cp $2
- jr z, .asm_117ba4 ; 0x117b53 $4f
- cp $1
- jr z, .asm_117b8c ; 0x117b57 $33
- cp $80
- jr z, .asm_117b76 ; 0x117b5b $19
- cp $40
- ret nz
- ld a, [wcf64]
- and a
- ret z
- dec a
- ld [wcf64], a
- hlcoord 15, 8
- ld a, "▶"
- ld [hl], a
- hlcoord 15, 10
- ld a, " "
- ld [hl], a
- ret
-.asm_117b76
- ld a, [wcf64]
- and a
- ret nz
- inc a
- ld [wcf64], a
- hlcoord 15, 8
- ld a, " "
- ld [hl], a
- hlcoord 15, 10
- ld a, "▶"
- ld [hl], a
- ret
-.asm_117b8c
- call PlayClickSFX
- ld a, [wcf64]
- and a
- jr nz, .asm_117ba4 ; 0x117b93 $f
- call Function1c07
- call Function1c07
- callba Function104061
- jp Function117cdd
-.asm_117ba4
- call Function1c07
- call Function1c07
- callba Function104061
- ld a, $80
- ld [wcf63], a
- ret
-
-Function117bb6:
- call Function117c89
- ld a, $1
- ld [hBGMapMode], a
- callba Function118284
- call ClearSprites
- ld a, [wc300]
- and a
- jr z, .asm_117be7 ; 0x117bca $1b
- cp $a
- jr z, .asm_117be1 ; 0x117bce $11
-.asm_117bd0
- ld a, $2
- ld [wc303], a
- callba Function17f555
- ld a, $80
- ld [wcf63], a
- ret
-.asm_117be1
- ld a, $80
- ld [wcf63], a
- ret
-.asm_117be7
- ld a, [rSVBK]
- push af
- ld a, $3
- ld [rSVBK], a
- ld a, [wcd89]
- and $1
- jr nz, .asm_117c16 ; 0x117bf3 $21
- ld a, [wd000]
- cp $fe
- jr nz, .asm_117c16 ; 0x117bfa $1a
- ld a, [wd001]
- cp $f
- jr nz, .asm_117c16 ; 0x117c01 $13
- ld hl, wdfec
- ld de, wcd69
- ld c, $10
-.asm_117c0b
- ld a, [de]
- inc de
- cp [hl]
- jr nz, .asm_117c16 ; 0x117c0e $6
- inc hl
- dec c
- jr nz, .asm_117c0b ; 0x117c12 $f7
- jr .asm_117c20 ; 0x117c14 $a
-.asm_117c16
- pop af
- ld [rSVBK], a
- ld a, $d3
- ld [wc300], a
- jr .asm_117bd0 ; 0x117c1e $b0
-.asm_117c20
- pop af
- ld [rSVBK], a
- callba Function172eb9
- ld a, [rSVBK]
- push af
- ld a, $3
- ld [rSVBK], a
- ld a, $7
- call GetSRAMBank
- ld hl, DefaultFlypoint
- ld de, $b000
- ld bc, $1000
- call CopyBytes
- call CloseSRAM
- pop af
- ld [rSVBK], a
- jp Function117cdd
-
-Function117c4a:
- ld hl, Data117cbc
- call LoadMenuDataHeader
- call Function1cbb
- call Function1cfd
- callba Function104061
- ld hl, MobileStadiumSuccessText
- call PrintText
- ld a, [rSVBK]
- push af
- ld a, $5
- ld [rSVBK], a
- ld hl, wd000
- ld de, $0008
- ld c, $8
-.asm_117c71
- push hl
- ld a, $ff
- ld [hli], a
- ld a, " "
- ld [hl], a
- pop hl
- add hl, de
- dec c
- jr nz, .asm_117c71 ; 0x117c7b $f4
- call Function4b6
- pop af
- ld [rSVBK], a
- ld a, $80
- ld [wcf63], a
- ret
-
-Function117c89:
- ld a, $7
- call GetSRAMBank
- ld l, $0
- ld h, l
- ld de, $b000
- ld bc, $0ffc
-.asm_117c97
- push bc
- ld a, [de]
- inc de
- ld c, a
- ld b, $0
- add hl, bc
- pop bc
- dec bc
- ld a, b
- or c
- jr nz, .asm_117c97 ; 0x117ca2 $f3
- ld a, l
- ld [wcd83], a
- ld a, h
- ld [wcd84], a
- ld hl, $bfea
- ld de, wcd69
- ld bc, $0010
- call CopyBytes
- call CloseSRAM
- ret
-
-Data117cbc: ; 0x117cbc
- db $40, $0c, $00, $11, $13, $00, $00, $00
-
-Data117cc4: ; 0x117cc4
- db $40, $07, $0e, $0b, $13, $00, $00, $00 ; XXX what is this
-
-YesNo117ccc: ; 0x117ccc
- db "はい"
- next "いいえ"
- db "@"
-
-MobileStadiumEntryText: ; 0x117cd3
- TX_FAR _MobileStadiumEntryText
- db "@"
-
-MobileStadiumSuccessText: ; 0x117cd8
- TX_FAR _MobileStadiumSuccessText
- db "@"
-
-Function117cdd: ; 0x117cdd
- ld hl, wcf63
- inc [hl]
- ret
-
-
-SECTION "bank46", ROMX, BANK[$46]
-
-Function118000: ; 118000
- ld a, $1
- ld [wcd38], a
- jr asm_11800b
-
-Function118007: ; 118007
- xor a
- ld [wcd38], a
-
-asm_11800b
- call Function1183cb
- ld a, $18
- ld [wcd33], a
- ld a, $19
- ld [wcd34], a
- ld a, $4
- ld [wc3f0], a
- ld a, [rSVBK]
- push af
- ld a, $3
- ld [rSVBK], a
-.asm_118024
- call Functiona57
- call Function118473
- ld a, [wcf66]
- cp $1b
- jr c, .asm_118037
- ld a, [wcd34]
- ld [wcf66], a
-
-.asm_118037
- call Function1184a5
- call Function11a8fa
- callba Function115dd3
- callba Function11619d
- call DelayFrame
- ld a, [wcf66]
- ld hl, wcd33
- cp [hl]
- jr nz, .asm_118024
- pop af
- ld [rSVBK], a
- call Function118452
- call Function222a
-Function11805e: ; 11805e (46:405e)
- ret
-; 11805f
-
-Function11805f: ; 11805f
- ld a, $1
- ld [wcd38], a
- call Function1183cb
- ld a, $18
- ld [wcd33], a
- ld a, $19
- ld [wcd34], a
- ld a, $4
- ld [wc3f0], a
- ld a, [rSVBK]
- push af
- ld a, $3
- ld [rSVBK], a
-.asm_11807d
- call Functiona57
- call Function118473
- ld a, [wcf66]
- cp $1b
- jr c, .asm_118090
- ld a, [wcd34]
- ld [wcf66], a
-
-.asm_118090
- call Function11857c
- call Function11a8fa
- callba Function115dd3
- callba Function11619d
- call DelayFrame
- ld a, [wcf66]
- ld hl, wcd33
- cp [hl]
- jr nz, .asm_11807d
- pop af
- ld [rSVBK], a
- call Function118452
- call Function222a
- ret
-; 1180b8
-
-Function1180b8: ; 1180b8
- call Function1183cb
- ld a, $22
- ld [wcd33], a
- ld a, $23
- ld [wcd34], a
- ld a, $4
- ld [wc3f0], a
- ld a, [rSVBK]
- push af
- ld a, $3
- ld [rSVBK], a
-.asm_1180d1
- call Functiona57
- call Function118473
- ld a, [wcf66]
- cp $28
- jr c, .asm_1180e4
- ld a, [wcd34]
- ld [wcf66], a
-
-.asm_1180e4
- ld a, [wcf66]
- cp $10
- jr c, .asm_1180f2
- cp $16
- jr nc, .asm_1180f2
- call Function11884c
-
-.asm_1180f2
- call Function1184ec
- call Function11a8fa
- callba Function115dd3
- callba Function11619d
- call DelayFrame
- ld a, [wcf66]
- ld hl, wcd33
- cp [hl]
- jr nz, .asm_1180d1
- pop af
- ld [rSVBK], a
- call Function118452
- call Function222a
- ret
-; 11811a
-
-Function11811a: ; 11811a
- ld a, 1
- ld [wcd38], a
- jr Function118125
-
-Function118121: ; 118121
- xor a
- ld [wcd38], a
-
-Function118125: ; 118125
- call Function1183cb
- ld a, $3
- ld [wcd33], a
- ld a, $d
- ld [wcd34], a
- ld a, $4
- ld [wc3f0], a
- ld a, [rSVBK]
- push af
- ld a, $3
- ld [rSVBK], a
-.asm_11813e
- call Functiona57
- call Function118473
- ld a, [wcf66]
- cp $f
- jr c, .asm_118151
- ld a, [wcd34]
- ld [wcf66], a
-
-.asm_118151
- call Function11854d
- call Function11a8fa
- callba Function115dd3
- callba Function11619d
- call DelayFrame
- ld a, [wcf66]
- ld hl, wcd33
- cp [hl]
- jr nz, .asm_11813e
- xor a
- ld [Unkn1Pals], a
- pop af
- ld [rSVBK], a
- call Function118452
- call Function118180
- call Function222a
- ret
-; 118180
-
-Function118180: ; 118180
- ld a, [ScriptVar]
- and a
- ret nz
- ld a, [wcd38]
- and a
- ret z
- ld a, $5
- call GetSRAMBank
- ld hl, wcd69
- ld de, $a89c
- ld bc, $0016
- call CopyBytes
- ld a, [rSVBK]
- push af
- ld a, $3
- ld [rSVBK], a
- ld de, $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
- ld de, $a8b2
- ld bc, $0096
- call CopyBytes
-.asm_1181c9
- pop af
- ld [rSVBK], a
- call CloseSRAM
- ret
-
-.asm_1181d0
- ld a, $d3
- ld [wc300], a
- ld [ScriptVar], a
- jr .asm_1181c9
-; 1181da
-
-Function1181da: ; 1181da
- call Function1183cb
- ld a, $2
- ld [wcd38], a
- ld a, $21
- ld [wcd33], a
- ld a, $22
- ld [wcd34], a
- ld a, $4
- ld [wc3f0], a
- ld a, [rSVBK]
- push af
- ld a, $3
- ld [rSVBK], a
-.asm_1181f8
- call Functiona57
- call Function118473
- ld a, [wcf66]
- cp $28
- jr c, .asm_11820b
- ld a, [wcd34]
- ld [wcf66], a
-
-.asm_11820b
- call Function1185c3
- call Function11a8fa
- callba Function115dd3
- callba Function11619d
- call DelayFrame
- ld a, [wcf66]
- ld hl, wcd33
- cp [hl]
- jr nz, .asm_1181f8
- pop af
- ld [rSVBK], a
- call Function118452
- call Function222a
- ret
-; 118233
-
-Function118233: ; 118233
- call Function1183cb
- ld a, $1b
- ld [wcd33], a
- ld a, $1c
- ld [wcd34], a
- ld a, $6
- ld [wc3f0], a
- ld a, [rSVBK]
- push af
- ld a, $3
- ld [rSVBK], a
-.asm_11824c
- call Functiona57
- call Function118473
- ld a, [wcf66]
- cp $1e
- jr c, .asm_11825f
- ld a, [wcd34]
- ld [wcf66], a
-
-.asm_11825f
- call Function118624
- call Function11a8fa
- callba Function115dd3
- callba Function11619d
- call DelayFrame
- ld a, [wcf66]
- ld hl, wcd33
- cp [hl]
- jr nz, .asm_11824c
- pop af
- ld [rSVBK], a
- call Function118452
- ret
-; 118284
-
-Function118284: ; 118284
- call Function1183cb
- ld a, $19
- ld [wcd33], a
- ld a, $1e
- ld [wcd34], a
- ld a, $5
- ld [wc3f0], a
- ld a, [rSVBK] ; $ff00+$70
- push af
- ld a, $3
- ld [rSVBK], a ; $ff00+$70
-.asm_11829d
- call Functiona57
- call Function118473
- ld a, [wcf66]
- cp $20
- jr c, .asm_1182b0
- ld a, [wcd34]
- ld [wcf66], a
-.asm_1182b0
- call Function1186f5
- call Function11a8fa
- callba Function115dd3
- callba Function11619d
- call DelayFrame
- ld a, [wcf66]
- ld hl, wcd33
- cp [hl]
- jr nz, .asm_11829d
- pop af
- ld [rSVBK], a ; $ff00+$70
- call Function118452
- ret
-; 1182d5 (46:42d5)
-
-
-Function1182d5: ; 1182d5
- call Function1183cb
- ld a, $18
- ld [wcd33], a
- ld a, $19
- ld [wcd34], a
- ld a, $4
- ld [wc3f0], a
- ld a, [rSVBK]
- push af
- ld a, $3
- ld [rSVBK], a
-.asm_1182ee
- call Functiona57
- call Function118473
- ld a, [wcf66]
- cp $1b
- jr c, .asm_118301
- ld a, [wcd34]
- ld [wcf66], a
-
-.asm_118301
- call Function118746
- call Function11a8fa
- callba Function115dd3
- callba Function11619d
- call DelayFrame
- ld a, [wcf66]
- ld hl, wcd33
- cp [hl]
- jr nz, .asm_1182ee
- pop af
- ld [rSVBK], a
- call Function118452
- call Function222a
- ret
-; 118329
-
-Function118329: ; 118329
- call Function1183cb
- ld a, $15
- ld [wcd33], a
- ld a, $16
- ld [wcd34], a
- ld a, $6
- ld [wc3f0], a
- ld a, [rSVBK]
- push af
- ld a, $3
- ld [rSVBK], a
-.asm_118342
- call Functiona57
- call Function118473
- ld a, [wcf66]
- cp $18
- jr c, .asm_118355
- ld a, [wcd34]
- ld [wcf66], a
-
-.asm_118355
- call Function118671
- call Function11a8fa
- callba Function115dd3
- callba Function11619d
- call DelayFrame
- ld a, [wcf66]
- ld hl, wcd33
- cp [hl]
- jr nz, .asm_118342
- pop af
- ld [rSVBK], a
- call Function118452
- ret
-; 11837a
-
-Function11837a: ; 11837a
- call Function1183cb
- ld a, $16
- ld [wcd33], a
- ld a, $17
- ld [wcd34], a
- ld a, $6
- ld [wc3f0], a
- ld a, [rSVBK]
- push af
- ld a, $3
- ld [rSVBK], a
-.asm_118393
- call Functiona57
- call Function118473
- ld a, [wcf66]
- cp $19
- jr c, .asm_1183a6
- ld a, [wcd34]
- ld [wcf66], a
-
-.asm_1183a6
- call Function1186b2
- call Function11a8fa
- callba Function115dd3
- callba Function11619d
- call DelayFrame
- ld a, [wcf66]
- ld hl, wcd33
- cp [hl]
- jr nz, .asm_118393
- pop af
- ld [rSVBK], a
- call Function118452
- ret
-; 1183cb
-
-Function1183cb: ; 1183cb
- di
- ld a, [rIE]
- ld [wcd32], a
- call DoubleSpeed
- xor a
- ld [rIF], a
- ld [wc300], a
- ld [wc301], a
- ld [wc302], a
- ld [wcd80], a
- ld [wcd65], a
- ld [wcd66], a
- ld [wcd67], a
- ld [wcd68], a
- ld [wc31a], a
- ld [wcd89], a
- ld [wcd8a], a
- ld [wcd8b], a
- ld [wc3ec], a
- ld [wc3ed], a
- ld [wc3ee], a
- ld [wc3ef], a
- ld hl, VramState
- ld a, [hl]
- ld [wcd7f], a
- set 1, [hl]
- ld a, $f
- ld [rIE], a
- ld a, $1
- ld [$ffc9], a
- ld [$ffe9], a
- ei
- callba Function106462
- callba Function106464
- callba Function115d99
- callba Function11615a
- ld a, $5
- call GetSRAMBank
- xor a
- ld [$bfff], a
- call CloseSRAM
- ret
-; 118440
-
-Function118440: ; 118440
- push af
- ld a, $5
- call GetSRAMBank
- ld a, [$bfff]
- inc a
- ld [$bfff], a
- call CloseSRAM
- pop af
- ret
-; 118452
-
-Function118452: ; 118452
- di
- xor a
- ld [$ffc9], a
- ld [$ffe9], a
- ld [hVBlank], a
- call NormalSpeed
- xor a
- ld [rIF], a
- ld a, [wcd32]
- ld [rIE], a
- ei
- ld a, [wcd7f]
- ld [VramState], a
- ld a, [wc300]
- ld [ScriptVar], a
- ret
-; 118473
-
-Function118473: ; 118473
- ld a, [wcd65]
- and a
- ret z
- ld a, [wcd66]
- inc a
- ld [wcd66], a
- cp $3c
- ret nz
- xor a
- ld [wcd66], a
- ld a, [wcd67]
- inc a
- ld [wcd67], a
- cp $3c
- ret nz
- ld a, [wcd68]
- inc a
- ld [wcd68], a
- cp $63
- jr z, .asm_1184a0
- xor a
- ld [wcd67], a
- ret
-
-.asm_1184a0
- xor a
- ld [wcd65], a
- ret
-; 1184a5
-
-Function1184a5: ; 1184a5
- ld a, [wcf66]
- ld e, a
- ld d, 0
- ld hl, Jumptable_1184b4
- add hl, de
- add hl, de
- ld a, [hli]
- ld h, [hl]
- ld l, a
- jp [hl]
-; 1184b4
-
-Jumptable_1184b4: ; 1184b4
- dw Function11886e
- dw Function118880
- dw Function11878d
- dw Function1188b0
- dw Function11878d
- dw Function1188b8
- dw Function11878d
- dw Function1188c0
- dw Function11878d
- dw Function1188c8
- dw Function11878d
- dw Function118903
- dw Function118a8f
- dw Function11878d
- dw Function118d80
- dw Function118d9b
- dw Function11878d
- dw Function118ded
- dw Function118e6d
- dw Function11878d
- dw Function11984e
- dw Function118e76
- dw Function118e7e
- dw Function11878d
- dw Function11805e
- dw Function118e76
- dw Function118e87
- dw Function118e76
-; 1184ec
-
-Function1184ec: ; 1184ec
- ld a, [wcf66]
- ld e, a
- ld d, 0
- ld hl, Jumptable_1184fb
- add hl, de
- add hl, de
- ld a, [hli]
- ld h, [hl]
- ld l, a
- jp [hl]
-; 1184fb
-
-Jumptable_1184fb: ; 1184fb
- dw Function11886e
- dw Function118880
- dw Function11878d
- dw Function1188b0
- dw Function11878d
- dw Function1188b8
- dw Function11878d
- dw Function1188c0
- dw Function11878d
- dw Function1188c8
- dw Function11878d
- dw Function118903
- dw Function119954
- dw Function11878d
- dw Function119973
- dw Function11878d
- dw Function119987
- dw Function11878d
- dw Function1199b4
- dw Function1199ca
- dw Function11878d
- dw Function1199e2
- dw Function119b0d
- dw Function11878d
- dw Function119b6b
- dw Function119b3b
- dw Function11878d
- dw Function119b52
- dw Function11878d
- dw Function118e6d
- dw Function11878d
- dw Function118e76
- dw Function118e7e
- dw Function11878d
- dw Function11805e
- dw Function118e76
- dw Function118e87
- dw Function119b45
- dw Function11878d
- dw Function119ac9
- dw Function118e76
-; 11854d
-
-Function11854d: ; 11854d
- ld a, [wcf66]
- ld e, a
- ld d, 0
- ld hl, Jumptable_11855c
- add hl, de
- add hl, de
- ld a, [hli]
- ld h, [hl]
- ld l, a
- jp [hl]
-; 11855c
-
-Jumptable_11855c: ; 11855c
- dw Function118922
- dw Function118936
- dw Function118982
- dw Function11805e
- dw Function119ca2
- dw Function119cab
- dw Function119cb8
- dw Function119cc3
- dw Function119cdf
- dw Function119cec
- dw Function119c97
- dw Function119cab
- dw Function119cb8
- dw Function118e76
- dw Function118e87
- dw Function118e76
-; 11857c
-
-Function11857c: ; 11857c
- ld a, [wcf66]
- ld e, a
- ld d, 0
- ld hl, Jumptable_11858b
- add hl, de
- add hl, de
- ld a, [hli]
- ld h, [hl]
- ld l, a
- jp [hl]
-; 11858b
-
-Jumptable_11858b: ; 11858b
- dw Function11886e
- dw Function118880
- dw Function11878d
- dw Function1188b0
- dw Function11878d
- dw Function1188b8
- dw Function11878d
- dw Function1188c0
- dw Function11878d
- dw Function1188c8
- dw Function11878d
- dw Function118903
- dw Function118a7a
- dw Function11878d
- dw Function11891c
- dw Function1198ee
- dw Function1198f7
- dw Function11878d
- dw Function119937
- dw Function118e6d
- dw Function11878d
- dw Function118e76
- dw Function118e7e
- dw Function11878d
- dw Function11805e
- dw Function118e76
- dw Function118e87
- dw Function118e76
-; 1185c3
-
-Function1185c3: ; 1185c3
- ld a, [wcf66]
- ld e, a
- ld d, 0
- ld hl, Jumptable_1185d2
- add hl, de
- add hl, de
- ld a, [hli]
- ld h, [hl]
- ld l, a
- jp [hl]
-; 1185d2
-
-Jumptable_1185d2: ; 1185d2
- dw Function11886e
- dw Function118880
- dw Function11878d
- dw Function1188b0
- dw Function11878d
- dw Function1188b8
- dw Function11878d
- dw Function1188c0
- dw Function11878d
- dw Function1188c8
- dw Function11878d
- dw Function118903
- dw Function118aa4
- dw Function11878d
- dw Function118e92
- dw Function11878d
- dw Function118eb0
- dw Function118ec6
- dw Function118f0d
- dw Function118f14
- dw Function118f5e
- dw Function11878d
- dw Function118fc0
- dw Function11878d
- dw Function119054
- dw Function1190d0
- dw Function11878d
- dw Function1190ec
- dw Function118e6d
- dw Function11878d
- dw Function118e76
- dw Function118e7e
- dw Function11878d
- dw Function11805e
- dw Function118e76
- dw Function118e87
- dw Function119cc3
- dw Function119cdf
- dw Function119cec
- dw Function11914e
- dw Function118e76
-; 118624
-
-Function118624: ; 118624
- ld a, [wcf66]
- ld e, a
- ld d, 0
- ld hl, Jumptable_118633
- add hl, de
- add hl, de
- ld a, [hli]
- ld h, [hl]
- ld l, a
- jp [hl]
-; 118633
-
-Jumptable_118633: ; 118633
- dw Function118866
- dw Function118880
- dw Function11878d
- dw Function1188b0
- dw Function11878d
- dw Function1188b8
- dw Function11878d
- dw Function1188c0
- dw Function11878d
- dw Function1188c8
- dw Function11878d
- dw Function118903
- dw Function118aa4
- dw Function11878d
- dw Function118e92
- dw Function11878d
- dw Function11915d
- dw Function118f68
- dw Function11878d
- dw Function119009
- dw Function11878d
- dw Function119054
- dw Function118e6d
- dw Function11878d
- dw Function118e76
- dw Function118e7e
- dw Function11878d
- dw Function11805e
- dw Function118e76
- dw Function118e87
- dw Function118e76
-; 118671
-
-Function118671: ; 118671
- ld a, [wcf66]
- ld e, a
- ld d, 0
- ld hl, Jumptable_118680
- add hl, de
- add hl, de
- ld a, [hli]
- ld h, [hl]
- ld l, a
- jp [hl]
-; 118680
-
-Jumptable_118680: ; 118680
- dw Function118866
- dw Function118880
- dw Function11878d
- dw Function1188b0
- dw Function11878d
- dw Function1188b8
- dw Function11878d
- dw Function1188c0
- dw Function11878d
- dw Function1188c8
- dw Function11878d
- dw Function118903
- dw Function119380
- dw Function119388
- dw Function1193a0
- dw Function11878d
- dw Function118e6d
- dw Function11878d
- dw Function118e76
- dw Function118e7e
- dw Function11878d
- dw Function11805e
- dw Function118e76
- dw Function118e87
- dw Function118e76
-; 1186b2
-
-Function1186b2: ; 1186b2
- ld a, [wcf66]
- ld e, a
- ld d, 0
- ld hl, Jumptable_1186c1
- add hl, de
- add hl, de
- ld a, [hli]
- ld h, [hl]
- ld l, a
- jp [hl]
-; 1186c1
-
-Jumptable_1186c1: ; 1186c1
- dw Function118866
- dw Function118880
- dw Function11878d
- dw Function1188b0
- dw Function11878d
- dw Function1188b8
- dw Function11878d
- dw Function1188c0
- dw Function11878d
- dw Function1188c8
- dw Function11878d
- dw Function118903
- dw Function119380
- dw Function1193e3
- dw Function1193fb
- dw Function11878d
- dw Function119413
- dw Function118e6d
- dw Function11878d
- dw Function118e76
- dw Function118e7e
- dw Function11878d
- dw Function11805e
- dw Function118e76
- dw Function118e87
- dw Function118e76
-; 1186f5
-
-Function1186f5: ; 1186f5 (46:46f5)
- ld a, [wcf66]
- ld e, a
- ld d, 0
- ld hl, Jumptable_118704
- add hl, de
- add hl, de
- ld a, [hli]
- ld h, [hl]
- ld l, a
- jp [hl]
-; 118704 (46:4704)
-
-Jumptable_118704: ; 118704 (46:4704)
- dw Function11886a
- dw Function118880
- dw Function11878d
- dw Function1188b0
- dw Function11878d
- dw Function1188b8
- dw Function11878d
- dw Function1188c0
- dw Function11878d
- dw Function1188c8
- dw Function11878d
- dw Function118903
- dw Function118abc
- dw Function11878d
- dw Function119451
- dw Function1195f8
- dw Function119612
- dw Function119629
- dw Function119648
- dw Function11878d
- dw Function118e6d
- dw Function11878d
- dw Function118e76
- dw Function118e7e
- dw Function11878d
- dw Function11805e
- dw Function11967d
- dw Function119685
- dw Function119665
- dw Function11966d
- dw Function118e76
- dw Function118e87
- dw Function118e76
-; 118746 (46:4746)
-
-Function118746: ; 118746
- ld a, [wcf66]
- ld e, a
- ld d, 0
- ld hl, Jumptable_118755
- add hl, de
- add hl, de
- ld a, [hli]
- ld h, [hl]
- ld l, a
- jp [hl]
-; 118755
-
-Jumptable_118755: ; 118755
- dw Function11886e
- dw Function118880
- dw Function11878d
- dw Function1188b0
- dw Function11878d
- dw Function1188b8
- dw Function11878d
- dw Function1188c0
- dw Function11878d
- dw Function1188c8
- dw Function11878d
- dw Function118903
- dw Function118ad0
- dw Function11878d
- dw Function1196f2
- dw Function1197c9
- dw Function1197dc
- dw Function11878d
- dw Function118e6d
- dw Function11878d
- dw Function119800
- dw Function118e76
- dw Function118e7e
- dw Function11878d
- dw Function11805e
- dw Function118e76
- dw Function118e87
- dw Function118e76
-; 11878d
-
-Function11878d: ; 11878d (46:478d)
- ld a, [wc821]
- bit 1, a
- jr nz, .asm_1187af
- bit 2, a
- jr nz, .asm_1187d1
- bit 0, a
- jr nz, .asm_1187aa
- ld a, [wcd89]
- and $1
- jr z, .asm_1187a7
- ld a, $3
- ld [rSVBK], a ; $ff00+$70
-.asm_1187a7
- jp Function119e2e
-.asm_1187aa
- call Function118821
- ret c
- ret
-.asm_1187af
- ld a, $0
- call Function3e32
- ld [wc300], a
- ld a, l
- ld [wc301], a
- ld a, h
- ld [wc302], a
- ld a, $a
- call Function3e32
- ld a, [wc3f0]
- ld [wc319], a
- ld a, [wcd34]
- ld [wcf66], a
- ret
-.asm_1187d1
- ld hl, wcd89
- bit 0, [hl]
- jr nz, .asm_118803
- set 0, [hl]
- ld a, $6
- ld [rSVBK], a ; $ff00+$70
- ld de, Unkn1Pals
- ld bc, $1000
- ld a, [hl]
- sla a
- jr c, .asm_1187f9
- sla a
- jr c, .asm_1187fd
- sla a
- jr c, .asm_1187f5
- ld a, $24
- jr .asm_1187ff
-.asm_1187f5
- ld a, $28
- jr .asm_1187ff
-.asm_1187f9
- ld a, $2a
- jr .asm_1187ff
-.asm_1187fd
- ld a, $2c
-.asm_1187ff
- call Function3e32
- ret
-.asm_118803
- ld a, $d3
-
-Function118805: ; 118805 (46:4805)
- ld [wc300], a
- xor a
- ld [wc301], a
- ld [wc302], a
- ld a, $a
- call Function3e32
- ld a, [wc3f0]
- ld [wc319], a
- ld a, [wcd34]
- ld [wcf66], a
- ret
-
-Function118821: ; 118821 (46:4821)
- ld a, [wc319]
- cp $3
- jr c, .asm_11884a
- cp $4
- jr z, .asm_11884a
- ld a, [hJoyDown] ; $ff00+$a8
- cp $5
- jr nz, .asm_11884a
- ld a, $a
- call Function3e32
- ld a, $a
- ld [wc300], a
- ld a, [wc3f0]
- ld [wc319], a
- ld a, [wcd34]
- ld [wcf66], a
- scf
- ret
-.asm_11884a
- and a
- ret
-; 11884c (46:484c)
-
-Function11884c: ; 11884c
- ld a, [hJoyDown]
- cp $5
- jr nz, .asm_118864
- ld a, $a
- call Function3e32
- ld a, $a
- ld [wc300], a
- ld a, [wcd34]
- ld [wcf66], a
- scf
- ret
-
-.asm_118864
- and a
- ret
-; 118866
-
-Function118866:
- ld a, 2
- jr asm_11886f
-
-Function11886a: ; 11886a (46:486a)
- ld a, 1
- jr asm_11886f
-; 11886e (46:486e)
-
-Function11886e:
- xor a
-
-asm_11886f
- ld [BGMapPalBuffer], a
- ld a, $0
- ld [wcd3c], a
- call Function119e2e
- ld a, [wcd33]
- ld [wcd45], a
-
-Function118880: ; 118880 (46:4880)
- call Function119ed8
- ret c
- xor a
- ld [wcf64], a
- ld [wc807], a
- ld de, wcd81
- ld hl, $46
- ld a, $2
- jp Function119e2b
-; 118896 (46:4896)
-
-Function118896: ; 118896
- ld a, [wc821]
- bit 1, a
- jr nz, .asm_1188a5
- bit 2, a
- jr nz, .asm_1188a5
- bit 0, a
- jr z, .asm_1188aa
-
-.asm_1188a5
- ld a, $34
- jp Function119e2b
-
-.asm_1188aa
- call Function119e2e
- jp Function119e2e
-; 1188b0
-
-Function1188b0: ; 1188b0 (46:48b0)
- ld de, wc346
- ld a, $c
- jp Function119e2b
-
-Function1188b8: ; 1188b8 (46:48b8)
- ld de, wc3ac
- ld a, $e
- jp Function119e2b
-
-Function1188c0: ; 1188c0 (46:48c0)
- ld de, wc3cd
- ld a, $10
- jp Function119e2b
-
-Function1188c8: ; 1188c8 (46:48c8)
- ld a, $1
- ld [wcd65], a
- call Function1188e7
- ld hl, wc708
-.asm_1188d3
- ld a, [de]
- inc de
- ld [hli], a
- and a
- jr nz, .asm_1188d3
- call Function119eb4
- call Function119ec2
- ld hl, wc708
- ld a, $6
- jp Function119e2b
-
-Function1188e7: ; 1188e7 (46:48e7)
- ld de, wc346
- ld a, $5
- call GetSRAMBank
- ld a, [$aa4a]
- call CloseSRAM
- and a
- ret z
- sla a
- ld c, a
-.asm_1188fa
- ld a, [de]
- inc de
- and a
- jr nz, .asm_1188fa
- dec c
- jr nz, .asm_1188fa
- ret
-
-Function118903: ; 118903 (46:4903)
- ld a, [wc3f0]
- ld [wc319], a
- ld c, $1
- callba Function115e18
- ld a, $8
- ld [wcd3c], a
- call Function119ed8
- jp Function119e2e
-; 11891c (46:491c)
-
-Function11891c: ; 11891c
- call Function118b42
- jp Function119e2e
-; 118922
-
-Function118922: ; 118922
- ld a, [wcd38]
- and a
- jr nz, .asm_11892d
- ld hl, UnknownText_0x11aba5
- jr .asm_118930
-
-.asm_11892d
- ld hl, UnknownText_0x11abcb
-
-.asm_118930
- call Function11a9c0
- call Function119e2e
-
-Function118936:
- ld a, [wc31a]
- and a
- ret nz
- ld hl, MenuDataHeader_119cf7
- call LoadMenuDataHeader
- call Function1cbb
- call Function1cfd
- call Function321c
- hlcoord 16, 8, AttrMap
- ld a, $40
- or [hl]
- ld [hl], a
- call Function3200
- ld a, $1
- ld [wcd4f], a
- ld a, $1
- ld [rSVBK], a
- ld a, [StatusFlags]
- bit 6, a
- jr nz, .asm_11896b
- ld hl, Strings_119d64
- ld a, $5
- jr .asm_118970
-
-.asm_11896b
- ld hl, Strings_119d0c
- ld a, $b
-
-.asm_118970
- ld [wcd4a], a
- ld a, l
- ld [wcd4b], a
- ld a, h
- ld [wcd4c], a
- ld a, $3
- ld [rSVBK], a
- call Function119e2e
-
-Function118982:
- hlcoord 13, 8
- ld de, String_119d07
- call PlaceString
- hlcoord 13, 10
- ld de, String_119d07
- call PlaceString
- ld a, [wcd4b]
- ld l, a
- ld a, [wcd4c]
- ld h, a
- ld d, $0
- ld a, [wcd4f]
- dec a
- rlca
- rlca
- rlca
- ld e, a
- add hl, de
- ld a, l
- ld e, a
- ld a, h
- ld d, a
- ld a, [rSVBK]
- push af
- ld a, $1
- ld [rSVBK], a
- ld bc, StringBuffer3
-.asm_1189b5
- ld a, [hli]
- cp $50
- jr z, .asm_1189c4
- cp $7f
- jr z, .asm_1189c2
- ld [bc], a
- inc bc
- jr .asm_1189b5
-
-.asm_1189c2
- ld a, $50
-
-.asm_1189c4
- ld [bc], a
- pop af
- ld [rSVBK], a
- hlcoord 13, 9
- call PlaceString
- ld hl, hJoyPressed
- ld a, [hl]
- and $2
- jr nz, .asm_118a39
- ld a, [hl]
- and $1
- jr nz, .asm_118a01
- ld a, [hl]
- and $80
- jr nz, .asm_1189e6
- ld a, [hl]
- and $40
- jr nz, .asm_1189f2
-.asm_1189e5
- ret
-
-.asm_1189e6
- ld hl, wcd4f
- dec [hl]
- jr nz, .asm_1189e5
- ld a, [wcd4a]
- ld [hl], a
- jr .asm_1189e5
-
-.asm_1189f2
- ld a, [wcd4a]
- ld hl, wcd4f
- inc [hl]
- cp [hl]
- jr nc, .asm_1189e5
- ld a, $1
- ld [hl], a
- jr .asm_1189e5
-
-.asm_118a01
- call PlayClickSFX
- ld a, [wcd4f]
- ld hl, wcd4a
- cp [hl]
- jr z, .asm_118a3c
- dec a
- and $fe
- srl a
- ld [wcf65], a
- ld a, [rSVBK]
- push af
- ld a, $1
- ld [rSVBK], a
- call Function1c17
- pop af
- ld [rSVBK], a
- ld a, [wcd38]
- and a
- jr nz, .asm_118a30
- call Function119d93
- ret c
- call Function119dd1
- ret c
-
-.asm_118a30
- ld a, [wcd4f]
- ld [wd000 + $800], a
- jp Function119e2e
-
-.asm_118a39
- call PlayClickSFX
-
-.asm_118a3c
- ld a, [rSVBK]
- push af
- ld a, $1
- ld [rSVBK], a
- call Function1c17
- pop af
- ld [rSVBK], a
- ld a, $7
- ld [wcf66], a
- ld a, $0
- ld [wcd46], a
- ret
-; 118a54
-
-Function118a54: ; 118a54
- ld a, [wcd55]
- ld l, a
- ld a, [wcd56]
- ld h, a
- ld de, wc3ec
- ld bc, $0004
- jp Function118ae4
-; 118a65
-
-Function118a65: ; 118a65
- ld hl, BattleDownloadURL
- ld de, wcc60
- ld bc, $80
- call CopyBytes
- ld de, Unkn1Pals
- ld bc, $1000
- jp Function118b10
-; 118a7a
-
-Function118a7a: ; 118a7a
- ld hl, BattleDownloadURL
- ld de, wcc60
- ld bc, $80
- call CopyBytes
- ld de, Unkn1Pals
- ld bc, $1000
- jp Function118b10
-; 118a8f
-
-Function118a8f: ; 118a8f
- ld hl, ExchangeDownloadURL
- ld de, wcc60
- ld bc, $80
- call CopyBytes
- ld de, Unkn1Pals
- ld bc, $1000
- jp Function118b10
-; 118aa4
-
-Function118aa4: ; 118aa4
- ld hl, NewsDownloadURL
- ld de, wcc60
- ld bc, $80
- call CopyBytes
- ld a, $5
- ld [rSVBK], a
- ld de, LYOverrides
- ld bc, $e00
- jr Function118b10
-; 118abc
-
-Function118abc: ; 118abc (46:4abc)
- ld hl, MenuDownloadURL
- ld de, wcc60
- ld bc, $80
- call CopyBytes
- ld de, Unkn1Pals
- ld bc, $1000
- jr Function118b10
-; 118ad0 (46:4ad0)
-
-Function118ad0:
- ld hl, IndexDownloadURL
- ld de, wcc60
- ld bc, $80
- call CopyBytes
- ld de, Unkn1Pals
- ld bc, $1000
- jr Function118b10
-
-Function118ae4:
- push bc
- push de
- push hl
- ld a, $8
- ld [wcd3c], a
- call Function119ed8
- pop hl
- ld c, $0
- ld de, wcc60
-.asm_118af5
- ld a, [hli]
- ld [de], a
- inc de
- and a
- jr z, .asm_118b06
- inc c
- ld a, c
- cp $a6
- jr c, .asm_118af5
- ld a, $da
- jp Function118805
-
-.asm_118b06
- call Function118b24
- pop de
- pop bc
- ld a, $2a
- jp Function119e2b
-; 118b10
-
-Function118b10:
- push de
- push bc
- ld a, $8
- ld [wcd3c], a
- call Function119ed8
- call Function118b24
- pop bc
- pop de
- ld a, $2a
- jp Function119e2b
-
-Function118b24: ; 118b24 (46:4b24)
- ld hl, wc346
- ld a, $8
- ld [hli], a
- ld a, $c7
- ld [hli], a
- ld a, $60
- ld [hli], a
- ld a, $cc
- ld [hli], a
- call Function119eb4
- call Function119ec2
- ld a, $80
- ld [wcd89], a
- ld hl, wc346
- ret
-; 118b42 (46:4b42)
-
-Function118b42: ; 118b42
- ld hl, DefaultFlypoint
- ld a, l
- ld [wcd51], a
- ld a, h
- ld [wcd52], a
- call Function118b8c
- ld a, l
- ld [wcd55], a
- ld [wcd59], a
- ld a, h
- ld [wcd56], a
- ld [wcd5a], a
- call Function118b8c
- ld a, l
- ld [wcd53], a
- ld [wcd5d], a
- ld a, h
- ld [wcd54], a
- ld [wcd5e], a
- call Function118b8c
- ld a, l
- ld [wcd57], a
- ld [wcd5b], a
- ld a, h
- ld [wcd58], a
- ld [wcd5c], a
- call Function118b8c
- ld a, l
- ld [wcd5f], a
- ld a, h
- ld [wcd60], a
- ret
-; 118b8c
-
-Function118b8c: ; 118b8c
-.asm_118b8c
- call Function118b9a
- ret nc
- ld a, [hli]
- cp $d
- jr nz, .asm_118b8c
- dec hl
- xor a
- ld [hli], a
- ld [hli], a
- ret
-; 118b9a
-
-Function118b9a: ; 118b9a
- ld a, h
- cp $e0
- ret c
- ld a, $d3
- call Function118805
- and a
- ret
-; 118ba5
-
-
- charmap " ", $20 ; revert to ascii
-
-ExchangeDownloadURL: ; 0x118ba5
- db "http://gameboy.datacenter.ne.jp/cgb/download?name=/01/CGB-BXTJ/exchange/index.txt", 0
-
-BattleDownloadURL: ; 0x118bf7
- db "http://gameboy.datacenter.ne.jp/cgb/download?name=/01/CGB-BXTJ/battle/index.txt", 0
-
-NewsDownloadURL: ; 0x118c47
- db "http://gameboy.datacenter.ne.jp/cgb/download?name=/01/CGB-BXTJ/news/index.txt", 0
-
-MenuDownloadURL: ; 0x118c95
- db "http://gameboy.datacenter.ne.jp/cgb/download?name=/01/CGB-BXTJ/POKESTA/menu.cgb", 0
-
-IndexDownloadURL: ; 0x118ce5
- db "http://gameboy.datacenter.ne.jp/cgb/download?name=/01/CGB-BXTJ/tamago/index.txt", 0
-
-
-Function118d35: ; 118d35
- ld hl, LYOverridesBackup
- ld a, [wcd38]
- and a
- jr nz, .asm_118d6e
- ld a, [hli]
- cp $94
- jr nz, .asm_118d7b
- ld a, [hl]
- cp $5
- jr nz, .asm_118d7b
- ld a, [wcd4f]
- sla a
- ld b, a
- sla a
- sla a
- add b
- ld b, a
- ld a, $5
- call GetSRAMBank
- ld a, b
- ld [$b2fb], a
- call CloseSRAM
- callba Function170be4
- callba Function1700c4
- jr .asm_118d78
-
-.asm_118d6e
- ld a, [hli]
- cp $96
- jr nz, .asm_118d7b
- ld a, [hl]
- cp $0
- jr nz, .asm_118d7b
-
-.asm_118d78
- jp Function119e2e
-
-.asm_118d7b
- ld a, $d3
- jp Function118805
-; 118d80
-
-Function118d80: ; 118d80
- call Function118e06
- ld a, [wcd38]
- and a
- jr z, .asm_118d8e
- call Function119e2e
- jr asm_118d9f
-
-.asm_118d8e
- ld a, $9
- ld [wcd3c], a
- ld a, $12
- ld [wcd45], a
- call Function119e2e
-
-Function118d9b:
- call Function119ed8
- ret c
-
-asm_118d9f
- ld hl, $c608
- call Function119940
- ld a, [wcd38]
- and a
- jr nz, .asm_118db2
- ld a, $8f
- ld [wcd3b], a
- jr .asm_118db7
-
-.asm_118db2
- ld a, $26
- ld [wcd3b], a
-
-.asm_118db7
- ld hl, $d800
- ld a, $8
- ld [hli], a
- ld a, $c6
- ld [hli], a
- ld a, [wcd3b]
- ld [hli], a
- xor a
- ld [hli], a
- ld a, $8
- ld [hli], a
- ld a, $c7
- ld [hli], a
- ld a, [wcd39]
- ld [hli], a
- ld a, [wcd3a]
- ld [hli], a
- call Function119eb4
- call Function119ec2
- ld a, $40
- ld [wcd89], a
- ld hl, $d800
- ld de, $de00
- ld bc, $0200
- ld a, $2c
- jp Function119e2b
-; 118ded
-
-Function118ded: ; 118ded
- ld a, [wcd38]
- and a
- jr z, .asm_118e03
- ld a, [rSVBK]
- push af
- ld a, $1
- ld [rSVBK], a
- callba Function11b93b
- pop af
- ld [rSVBK], a
-
-.asm_118e03
- jp Function119e2e
-; 118e06
-
-Function118e06: ; 118e06
- ld hl, DefaultFlypoint
- ld a, [wcd38]
- and a
- jr z, .asm_118e1d
-.asm_118e0f
- call Function118b9a
- ret nc
- ld a, [hli]
- cp $d
- jr nz, .asm_118e0f
- ld a, [hli]
- cp $a
- jr nz, .asm_118e0f
-
-.asm_118e1d
- ld a, l
- ld [wcd39], a
- ld a, h
- ld [wcd3a], a
-.asm_118e25
- call Function118b9a
- ret nc
- ld a, [hli]
- cp $d
- jr nz, .asm_118e25
- ld a, [hli]
- cp $a
- jr nz, .asm_118e25
- dec hl
- xor a
- ld [hld], a
- ld [hl], a
- jr asm_118e3e
-
-Function118e39: ; 118e39 (46:4e39)
-.asm_118e39
- ld a, [hli]
- and a
- jr nz, .asm_118e39
- dec hl
-asm_118e3e
-.asm_118e3e
- ld a, [hld]
- cp $2f
- jr nz, .asm_118e3e
- inc hl
- inc hl
- ld de, wcd85
- ld c, $4
-.asm_118e4a
- ld a, [hli]
- cp $2e
- jr z, .asm_118e63
- cp $30
- jr c, .asm_118e67
- cp $3a
- jr nc, .asm_118e67
- sub $30
- add $f6
- ld [de], a
- inc de
- dec c
- jr nz, .asm_118e4a
- ld de, wcd85
-.asm_118e63
- ld a, $50
- ld [de], a
- ret
-.asm_118e67
- ld a, $f3
- ld [de], a
- inc de
- jr .asm_118e63
-
-Function118e6d: ; 118e6d (46:4e6d)
- xor a
- ld [wcd65], a
- ld a, $a
- jp Function119e2b
-
-Function118e76: ; 118e76 (46:4e76)
- ld a, $c
- ld [wcd3c], a
- jp Function119e2e
-
-Function118e7e: ; 118e7e (46:4e7e)
- call Function119ed8
- ret c
- ld a, $36
- jp Function119e2b
-
-Function118e87: ; 118e87 (46:4e87)
- call Function119ed8
- ret c
- ld a, [wcd33]
- ld [wcf66], a
- ret
-; 118e92 (46:4e92)
-
-Function118e92: ; 118e92
- call Function118440
- call Function1191d3
- ld a, [wcd53]
- ld l, a
- ld a, [wcd54]
- ld h, a
- ld de, wcc60
- call Function1191ad
- ret c
- ld de, $d800
- ld bc, $0800
- jp Function118b10
-; 118eb0
-
-Function118eb0: ; 118eb0
- call Function118440
- ld hl, $d802
- ld de, BGMapBuffer
- ld bc, $000c
- call CopyBytes
- call Function1192cc
- ret c
- jp Function119e2e
-; 118ec6
-
-Function118ec6: ; 118ec6
- call Function118440
- call SpeechTextBox
- ld hl, $d80e
- ld de, wc320
- ld bc, $0026
- call CopyBytes
- xor a
- ld [wc31f], a
- ld a, $20
- ld [wc31b], a
- ld a, $c3
- ld [wc31c], a
- hlcoord 1, 14
- ld a, l
- ld [wc31d], a
- ld a, h
- ld [wc31e], a
- ld a, $2
- ld [wc31a], a
- ld a, $1d
- ld [wcd3c], a
- ld a, $24
- ld [wcd45], a
- ld a, $11
- ld [wcd46], a
- ld a, $1c
- ld [wcd47], a
- jp Function119e2e
-; 118f0d
-
-Function118f0d: ; 118f0d
- call Function119ed8
- ret c
- call Function118440
-
-Function118f14:
- call Function118440
- ld a, [wcd51]
- ld l, a
- ld a, [wcd52]
- ld h, a
- ld de, wcc60
- call Function1191ad
- ret c
- ld a, [wcc60]
- and a
- jr z, .asm_118f32
- ld hl, UnknownText_0x11aa13
- call Function11a9c0
-
-.asm_118f32
- ld a, [wcd57]
- ld l, a
- ld a, [wcd58]
- ld h, a
- ld de, wcc60
- call Function1191ad
- ret c
- ld hl, wcc60
- call Function118e39
- ld a, $9
- ld [wcd3c], a
- ld a, $24
- ld [wcd45], a
- ld a, $13
- ld [wcd46], a
- ld a, $1c
- ld [wcd47], a
- jp Function119e2e
-; 118f5e
-
-Function118f5e: ; 118f5e
- call Function119ed8
- ret c
- call Function118440
- call DelayFrame
-
-Function118f68:
- call Function119223
- ret c
- call Function118440
- ld a, [wcd51]
- ld l, a
- ld a, [wcd52]
- ld h, a
- ld de, wcc60
- call Function1191ad
- ret c
- ld a, [wcc60]
- and a
- jr z, .asm_118fba
- ld hl, wc346
- ld a, $c608 % $100
- ld [hli], a
- ld a, $c608 / $100
- ld [hli], a
- ld a, [wcd4b]
- ld [hli], a
- ld a, [wcd4c]
- ld [hli], a
- ld a, wc708 % $100
- ld [hli], a
- ld a, wc708 / $100
- ld [hli], a
- ld a, $60
- ld [hli], a
- ld a, $cc
- ld [hli], a
- call Function119eb4
- call Function119ec2
- ld a, $40
- ld [wcd89], a
- ld hl, wc346
- ld de, $de00
- ld bc, $0200
- ld a, $2c
- jp Function119e2b
-
-.asm_118fba
- call Function119e2e
- jp Function119e2e
-; 118fc0
-
-Function118fc0: ; 118fc0
- call Function118440
- ld a, [wcd55]
- ld l, a
- ld a, [wcd56]
- ld h, a
- ld de, wcc60
- call Function1191ad
- ret c
- ld a, [wcc60]
- and a
- jr z, .asm_118ffa
- ld a, [wcd51]
- ld l, a
- ld a, [wcd52]
- ld h, a
- ld de, wcc60
- call Function1191ad
- ret c
- ld a, [wcc60]
- and a
- jr z, .asm_118ff2
- ld hl, UnknownText_0x11aa2c
- jr .asm_118ff5
-
-.asm_118ff2
- ld hl, UnknownText_0x11aa4b
-
-.asm_118ff5
- call Function11a9c0
- jr Function119009
-
-.asm_118ffa
- ld hl, UnknownText_0x11aa4b
- call Function11a9c0
- call Function119e2e
- call Function119e2e
- jp Function119e2e
-
-Function119009:
- call Function118440
- call Function119300
- ld a, [wcd55]
- ld l, a
- ld a, [wcd56]
- ld h, a
- ld de, wcc60
- call Function1191ad
- ret c
- ld hl, wc346
- ld a, $8
- ld [hli], a
- ld a, $c6
- ld [hli], a
- ld a, [wcd4b]
- ld [hli], a
- ld a, [wcd4c]
- ld [hli], a
- ld a, $8
- ld [hli], a
- ld a, $c7
- ld [hli], a
- ld a, $60
- ld [hli], a
- ld a, $cc
- ld [hli], a
- call Function119eb4
- call Function119ec2
- ld a, $40
- ld [wcd89], a
- ld hl, wc346
- ld de, Unkn1Pals
- ld bc, $1000
- ld a, $2c
- jp Function119e2b
-; 119054
-
-Function119054: ; 119054
- ld a, $6
- call GetSRAMBank
- ld hl, DefaultFlypoint
- ld a, [wcd4f]
- ld e, a
- ld a, [wcd50]
- ld d, a
- ld a, [Unkn1Pals]
- ld c, a
- ld a, [wd001]
- ld b, a
- call Function119192
- ret c
- ld a, [wcd89]
- and $1
- jr z, .asm_11908a
- ld a, $6
- ld [rSVBK], a
- ld hl, DefaultFlypoint
- ld a, [Unkn1Pals]
- ld c, a
- ld a, [wd001]
- ld b, a
- call Function119192
- ret c
-
-.asm_11908a
- call CloseSRAM
- ld a, $3
- ld [rSVBK], a
- ld a, $5
- call GetSRAMBank
- ld a, [wcd4f]
- ld [$b1b3], a
- ld a, [wcd50]
- ld [$b1b4], a
- ld hl, BGMapBuffer
- ld de, $aa7f
- ld bc, $000c
- call CopyBytes
- ld a, [rSVBK]
- push af
- ld a, $1
- ld [rSVBK], a
- ld a, [wd474]
- ld [$b2f3], a
- ld hl, wd475
- ld de, $b2f4
- ld bc, $0004
- call CopyBytes
- pop af
- ld [rSVBK], a
- call CloseSRAM
- jp Function119e2e
-; 1190d0
-
-Function1190d0: ; 1190d0
- ld a, $3
- ld [rSVBK], a
- ld a, [wcd57]
- ld l, a
- ld a, [wcd58]
- ld h, a
- ld de, wcc60
- call Function1191ad
- ret c
- ld de, Unkn1Pals
- ld bc, $1000
- jp Function118b10
-; 1190ec
-
-Function1190ec: ; 1190ec
- ld a, $5
- call GetSRAMBank
- ld hl, BGMapBuffer
- ld de, $aa73
- ld bc, $000c
- call CopyBytes
- call CloseSRAM
- ld a, $5
- call GetSRAMBank
- ld a, $1
- ld [$aa72], a
- call CloseSRAM
- ld a, $6
- call GetSRAMBank
- ld a, [Unkn1Pals]
- ld c, a
- ld a, [wd001]
- ld b, a
- ld hl, DefaultFlypoint
- ld de, $a000
- call Function119192
- ret c
- ld a, [wcd89]
- and $1
- jr z, .asm_11913e
- ld a, $6
- ld [rSVBK], a
- ld a, [Unkn1Pals]
- ld c, a
- ld a, [wd001]
- ld b, a
- ld hl, DefaultFlypoint
- call Function119192
- ret c
-
-.asm_11913e
- ld a, $3
- ld [rSVBK], a
- call CloseSRAM
- ld hl, UnknownText_0x11aa5a
- call Function11a9c0
- jp Function119e2e
-; 11914e
-
-Function11914e: ; 11914e
- call Function119ed8
- ret c
- ld a, $1c
- ld [wcf66], a
- ld a, $a
- ld [wc300], a
- ret
-; 11915d
-
-Function11915d: ; 11915d
- ld hl, $d802
- ld de, BGMapBuffer
- ld bc, $000c
- call CopyBytes
- ld a, $5
- call GetSRAMBank
- ld hl, BGMapBuffer
- ld de, $aa7f
- ld c, $c
-.asm_119176
- ld a, [de]
- inc de
- cp [hl]
- jr nz, .asm_119184
- inc hl
- dec c
- jr nz, .asm_119176
- call Function119e2e
- jr .asm_11918e
-
-.asm_119184
- ld a, $16
- ld [wcf66], a
- ld a, $b
- ld [wc300], a
-
-.asm_11918e
- call CloseSRAM
- ret
-; 119192
-
-Function119192: ; 119192
- inc b
- inc c
- jr .asm_11919e
-
-.asm_119196
- ld a, [hli]
- ld [de], a
- inc de
- ld a, $bf
- cp d
- jr c, .asm_1191a6
-
-.asm_11919e
- dec c
- jr nz, .asm_119196
- dec b
- jr nz, .asm_119196
- and a
- ret
-
-.asm_1191a6
- ld a, $d3
- call Function118805
- scf
- ret
-; 1191ad
-
-Function1191ad: ; 1191ad
- push bc
- ld c, $0
- ld a, $5
- ld [rSVBK], a
-.asm_1191b4
- ld a, [hli]
- ld [de], a
- inc de
- and a
- jr z, .asm_1191cc
- inc c
- ld a, c
- cp $a6
- jr c, .asm_1191b4
- ld a, $da
- call Function118805
- ld a, $3
- ld [rSVBK], a
- pop bc
- scf
- ret
-
-.asm_1191cc
- ld a, $3
- ld [rSVBK], a
- pop bc
- and a
- ret
-; 1191d3
-
-Function1191d3: ; 1191d3
- ld hl, wd102
- ld a, l
- ld [wcd53], a
- ld a, h
- ld [wcd54], a
- call Function11920f
- ld a, l
- ld [wcd51], a
- ld a, [wcd4a]
- ld a, h
- ld [wcd52], a
- call Function11920f
- ld a, l
- ld [wcd55], a
- ld a, [wcd4a]
- ld a, h
- ld [wcd56], a
- call Function11920f
- ld a, [wcd49]
- ld a, l
- ld [wcd57], a
- ld a, [wcd4a]
- ld a, h
- ld [wcd58], a
- call Function11920f
- ret
-; 11920f
-
-Function11920f: ; 11920f
-.asm_11920f
- call Function118b9a
- ret nc
- ld a, [hli]
- cp $d
- jr nz, .asm_11920f
- ld a, [hli]
- cp $a
- jr nz, .asm_11920f
- dec hl
- xor a
- ld [hld], a
- ld [hli], a
- inc hl
- ret
-; 119223
-
-Function119223: ; 119223
- xor a
- ld [wcd4b], a
- ld [wcd4c], a
- ld a, $5
- call GetSRAMBank
- ld hl, wc3cd
- ld de, $b092
- ld bc, $001f
- call CopyBytes
- dec de
- xor a
- ld [de], a
- ld hl, $d810
-.asm_119241
- ld a, [hli]
- cp $50
- jr nz, .asm_119241
- ld a, [hli]
- ld [wcd4f], a
- ld a, [hli]
- ld [wcd50], a
- ld a, [hli]
- ld [$b1b1], a
- ld c, a
- ld a, [hli]
- ld [$b1b2], a
- ld b, a
- ld de, $b1d3
- call CopyBytes
- call CloseSRAM
- ld e, l
- ld d, h
- ld hl, $c608
-.asm_119266
- ld a, [de]
- inc de
- cp $ff
- jr z, .asm_1192c2
- cp $fe
- jr z, .asm_1192a5
- call GetSRAMBank
- ld a, [de]
- inc de
- ld c, a
- ld a, [de]
- inc de
- ld b, a
- ld a, [de]
- inc de
- push de
- push af
- ld a, [wcd4b]
- ld e, a
- ld a, [wcd4c]
- ld d, a
- pop af
-.asm_119286
- push af
- ld a, [bc]
- inc bc
- ld [hli], a
- inc de
- pop af
- dec a
- jr nz, .asm_119286
- call CloseSRAM
- ld a, e
- ld [wcd4b], a
- ld a, d
- ld [wcd4c], a
- pop de
-.asm_11929b
- and a
- jr z, .asm_119266
- ld a, $d3
- call Function118805
- scf
- ret
-
-.asm_1192a5
- ld a, [wcd4b]
- ld c, a
- ld a, [wcd4c]
- ld b, a
- ld a, [de]
- inc de
-.asm_1192af
- push af
- ld a, [de]
- inc de
- ld [hli], a
- inc bc
- pop af
- dec a
- jr nz, .asm_1192af
- ld a, c
- ld [wcd4b], a
- ld a, b
- ld [wcd4c], a
- jr .asm_11929b
-
-.asm_1192c2
- ld a, e
- ld [wcd4d], a
- ld a, d
- ld [wcd4e], a
- and a
- ret
-; 1192cc
-
-Function1192cc: ; 1192cc
- ld a, $5
- call GetSRAMBank
- ld hl, $aa73
- ld de, $c608
- ld bc, $000c
- call CopyBytes
- call CloseSRAM
- ld hl, $c608
- ld de, BGMapBuffer
- ld c, $c
-.asm_1192e8
- ld a, [de]
- inc de
- ld b, a
- ld a, [hli]
- cp b
- jr nz, .asm_1192fe
- dec c
- jr nz, .asm_1192e8
- ld a, $1f
- ld [wcd3c], a
- ld a, $27
- ld [wcf66], a
- scf
- ret
-
-.asm_1192fe
- and a
- ret
-; 119300
-
-Function119300: ; 119300
- xor a
- ld [wcd4b], a
- ld [wcd4c], a
- ld a, [wcd4d]
- ld e, a
- ld a, [wcd4e]
- ld d, a
- ld hl, $c608
- ld a, [wcd4b]
- ld c, a
- ld a, [wcd4c]
- ld b, a
-.asm_11931a
- ld a, [de]
- inc de
- cp $50
- jr z, .asm_119324
- ld [hli], a
- inc bc
- jr .asm_11931a
-
-.asm_119324
- ld a, $3d
- ld [hli], a
- inc bc
- ld a, c
- ld [wcd4b], a
- ld a, b
- ld [wcd4c], a
- ld a, [de]
- inc de
- call GetSRAMBank
- ld a, [de]
- inc de
- ld c, a
- ld a, [de]
- inc de
- ld b, a
- ld a, [de]
- inc de
- push de
- push af
- ld a, [wcd4b]
- ld e, a
- ld a, [wcd4c]
- ld d, a
- pop af
-.asm_119348
- push af
- ld a, [bc]
- and $f0
- swap a
- call Function1197bf
- ld [hli], a
- inc de
- ld a, [bc]
- inc bc
- and $f
- call Function1197bf
- ld [hli], a
- inc de
- pop af
- dec a
- jr nz, .asm_119348
- call CloseSRAM
- ld a, e
- ld [wcd4b], a
- ld a, d
- ld [wcd4c], a
- pop de
- ld a, [de]
- cp $50
- jr z, .asm_11937f
- ld a, [wcd4b]
- ld c, a
- ld a, [wcd4c]
- ld b, a
- ld a, $26
- ld [hli], a
- inc bc
- jr .asm_11931a
-
-.asm_11937f
- ret
-; 119380
-
-Function119380: ; 119380
- ld a, $80
- ld [wcd49], a
- jp Function119e2e
-; 119388
-
-Function119388: ; 119388
- ld hl, wcd49
- dec [hl]
- ret nz
- ld hl, wcc60
- call Function118e39
- ld a, $9
- ld [wcd3c], a
- ld a, $10
- ld [wcd45], a
- call Function119e2e
-
-Function1193a0:
- call Function119ed8
- ret c
- call DelayFrame
- ld a, $8
- ld [wcd3c], a
- call Function119ed8
- ld hl, wc346
- ld a, wd000 % $100
- ld [hli], a
- ld a, wd000 / $100
- ld [hli], a
- ld a, [wcd3b]
- ld [hli], a
- xor a
- ld [hli], a
- ld a, wc708 % $100
- ld [hli], a
- ld a, wc708 / $100
- ld [hli], a
- ld a, $60
- ld [hli], a
- ld a, $cc
- ld [hli], a
- call Function119eb4
- call Function119ec2
- ld a, $40
- ld [wcd89], a
- ld hl, wc346
- ld de, $de00
- ld bc, $0200
- ld a, $2c
- jp Function119e2b
-; 1193e3
-
-Function1193e3: ; 1193e3
- ld hl, wcd49
- dec [hl]
- ret nz
- ld hl, wcc60
- call Function118e39
- ld a, $9
- ld [wcd3c], a
- ld a, $11
- ld [wcd45], a
- call Function119e2e
-
-Function1193fb:
- call Function119ed8
- ret c
- call DelayFrame
- ld a, $8
- ld [wcd3c], a
- call Function119ed8
- ld de, Unkn1Pals
- ld bc, $1000
- jp Function118b10
-; 119413
-
-Function119413: ; 119413
- ld a, $6
- call GetSRAMBank
- ld a, [Unkn1Pals]
- ld c, a
- ld a, [wd001]
- ld b, a
- dec bc
- dec bc
- ld hl, wd002
- ld a, [hli]
- ld e, a
- ld a, [hli]
- ld d, a
- call Function119192
- ret c
- ld a, [wcd89]
- and $1
- jr z, .asm_119447
- ld a, $6
- ld [rSVBK], a
- ld a, [wd000]
- ld c, a
- ld a, [wd001]
- ld b, a
- ld hl, wd002
- call Function119192
- ret c
-
-.asm_119447
- ld a, $3
- ld [rSVBK], a
- call CloseSRAM
- jp Function119e2e
-; 119451
-
-Function119451: ; 119451 (46:5451)
- ld a, [wcd89]
- and $1
- jr z, .asm_11945d
- ld a, $d3
- jp Function118805
-.asm_11945d
- xor a
- ld [wcd50], a
- call Function119694
- ld a, b
- ld [wcd49], a
- call Function1196cd
- ld a, [DefaultFlypoint]
- ld hl, wd003
-
-Function119471: ; 119471 (46:5471)
- push af
- ld a, [hli]
- ld [$c608], a
- ld a, [hli]
- ld [$c608 + 3], a
- ld a, [hli]
- ld [$c608 + 1], a
- ld a, [hli]
- ld [$c608 + 2], a
- ld a, [hli]
- ld [$c608 + 4], a
- ld a, [hli]
- ld [$c608 + 5], a ; $c608 + 5
- push hl
- ld a, [$c608]
- cp $ff
- jr z, .asm_1194a7
- ld a, [$c608 + 2]
- cp $ff
- jr z, .asm_1194a7
- ld a, [$c608 + 1]
- cp $ff
- jr nz, .asm_1194a7
- call Function119584
- jr c, .asm_11950c
- jr .asm_1194f0
-.asm_1194a7
- ld hl, $c608
- ld de, $c608 + 3
- ld c, $3
-.asm_1194af
- ld a, [de]
- inc de
- cp [hl]
- inc hl
- jr c, .asm_1194f3
- jr z, .asm_1194b9
- jr nc, .asm_1194bc
-.asm_1194b9
- dec c
- jr nz, .asm_1194af
-.asm_1194bc
- ld c, $3
- ld hl, wcd49
- ld de, $c608
-.asm_1194c4
- ld a, [de]
- inc de
- cp $ff
- jr z, .asm_1194d1
- cp [hl]
- jr z, .asm_1194d1
- jr c, .asm_1194d5
- jr nc, .asm_1194f0
-.asm_1194d1
- inc hl
- dec c
- jr nz, .asm_1194c4
-.asm_1194d5
- ld c, $3
- ld hl, wcd49
- ld de, $c608 + 3
-.asm_1194dd
- ld a, [de]
- inc de
- cp $ff
- jr z, .asm_1194ea
- cp [hl]
- jr c, .asm_1194f0
- jr z, .asm_1194ea
- jr nc, .asm_11950c
-.asm_1194ea
- inc hl
- dec c
- jr nz, .asm_1194dd
- jr .asm_11950c
-.asm_1194f0
- pop hl
- jr .asm_119557
-.asm_1194f3
- ld c, $3
- ld hl, wcd49
- ld de, $c608
-.asm_1194fb
- ld a, [de]
- inc de
- cp $ff
- jr z, .asm_119508
- cp [hl]
- jr c, .asm_11950c
- jr z, .asm_119508
- jr nc, .asm_1194d5
-.asm_119508
- inc hl
- dec c
- jr nz, .asm_1194fb
-.asm_11950c
- pop hl
- ld a, $1
- ld [wcd50], a
- ld a, l
- ld [$c608], a
- ld a, h
- ld [$c608 + 1], a
- ld de, wcd69
- ld c, $10
- ld b, $0
-.asm_119521
- ld a, [de]
- inc de
- cp [hl]
- inc hl
- jr nz, .asm_119528
- inc b
-.asm_119528
- dec c
- jr nz, .asm_119521
- ld a, $10
- cp b
- jr z, .asm_119536
- inc hl
- inc hl
- inc hl
- inc hl
- jr .asm_11957a
-.asm_119536
- ld a, [hli]
- cp $50
- jr nz, .asm_119552
- ld a, [hli]
- cp $33
- jr nz, .asm_119553
- ld a, [hli]
- ld c, a
- ld a, [hli]
- ld b, a
- ld a, [wcd83]
- cp c
- jr nz, .asm_119576
- ld a, [wcd84]
- cp b
- jr nz, .asm_119576
- jr .asm_11955b
-.asm_119552
- inc hl
-.asm_119553
- inc hl
- inc hl
- jr .asm_11955b
-.asm_119557
- ld de, $14
- add hl, de
-.asm_11955b
- ld a, [hli]
- ld e, a
- ld a, [hli]
- ld d, a
- add hl, de
- pop af
- dec a
- jp nz, Function119471
- ld a, [wcd50]
- and a
- jr z, .asm_119571
- ld a, $1a
- ld [wcf66], a
- ret
-.asm_119571
- ld a, $d8
- jp Function118805
-.asm_119576
- ld a, $10
- jr .asm_11957c
-.asm_11957a
- ld a, $f
-.asm_11957c
- ld [wcf66], a
- pop af
- call Function1195c4
- ret
-
-Function119584: ; 119584 (46:5584)
- ld a, [$c608]
- ld b, a
- ld a, [$c608 + 3]
- ld c, a
- cp b
- jr c, .asm_11959c
- ld a, [wcd49]
- cp b
- jr c, .asm_1195c2
-.asm_119595
- cp c
- jr c, .asm_1195a2
- jr z, .asm_1195a2
- jr .asm_1195c2
-.asm_11959c
- ld a, [wcd49]
- cp b
- jr c, .asm_119595
-.asm_1195a2
- ld a, [$c608 + 2]
- ld b, a
- ld a, [$c608 + 5] ; $c608 + 5
- ld c, a
- cp b
- jr c, .asm_1195ba
- ld a, [wcd4b]
- cp b
- jr c, .asm_1195c2
-.asm_1195b3
- cp c
- jr c, .asm_1195c0
- jr z, .asm_1195c0
- jr .asm_1195c2
-.asm_1195ba
- ld a, [wcd4b]
- cp b
- jr c, .asm_1195b3
-.asm_1195c0
- scf
- ret
-.asm_1195c2
- and a
- ret
-
-Function1195c4: ; 1195c4 (46:55c4)
- ld a, [hli]
- ld c, a
- ld a, [hli]
- ld b, a
- ld de, $a5
- ld a, b
- cp d
- jr c, .asm_1195d9
- jr z, .asm_1195d3
- jr nc, .asm_1195f3
-.asm_1195d3
- ld a, c
- cp e
- jr z, .asm_1195d9
- jr nc, .asm_1195f3
-.asm_1195d9
- ld de, wcc60
- call CopyBytes
- xor a
- ld [de], a
- ld a, [$c608]
- ld l, a
- ld a, [$c608 + 1]
- ld h, a
- ld de, wcd69
- ld bc, $10
- call CopyBytes
- ret
-.asm_1195f3
- ld a, $d8
- jp Function118805
-
-Function1195f8: ; 1195f8 (46:55f8)
- ld a, $11
- ld [wcd3c], a
- ld a, $1c
- ld [wcd45], a
- ld a, $f
- ld [wcd46], a
- ld a, $14
- ld [wcd47], a
- call Function119e2e
- jp Function119e2e
-
-Function119612: ; 119612 (46:5612)
- ld a, $14
- ld [wcd3c], a
- ld a, $1c
- ld [wcd45], a
- ld a, $10
- ld [wcd46], a
- ld a, $14
- ld [wcd47], a
- jp Function119e2e
-
-Function119629: ; 119629 (46:5629)
- call Function119ed8
- ret c
- ld a, $60
- ld l, a
- ld a, $cc
- ld h, a
- call Function118e39
- ld a, $9
- ld [wcd3c], a
- ld a, $1c
- ld [wcd45], a
- ld a, $14
- ld [wcd47], a
- call Function119e2e
-
-Function119648: ; 119648 (46:5648)
- call Function119ed8
- ret c
- call DelayFrame
- ld a, $8
- ld [wcd3c], a
- call Function119ed8
- call Function118b24
- ld de, Unkn1Pals
- ld bc, $1000
- ld a, $2a
- jp Function119e2b
-
-Function119665: ; 119665 (46:5665)
- ld a, $1a
- ld [wcd3c], a
- call Function119e2e
-
-Function11966d: ; 11966d (46:566d)
- call Function119ed8
- ret c
- ld a, [wcd47]
- ld [wcf66], a
- ld a, $a
- ld [wc300], a
- ret
-
-Function11967d: ; 11967d (46:567d)
- ld a, $18
- ld [wcd3c], a
- call Function119e2e
-
-Function119685: ; 119685 (46:5685)
- call Function119ed8
- ret c
- ld a, $14
- ld [wcf66], a
- ld a, $a
- ld [wc300], a
- ret
-
-Function119694: ; 119694 (46:5694)
- ld b, 0
- ld hl, Unknown_1196b8
-.asm_119699
- ld de, wc708
- ld a, [de]
- inc de
- cp [hl]
- inc hl
- jr nz, .asm_1196af
- ld a, [de]
- inc de
- cp [hl]
- inc hl
- jr nz, .asm_1196b0
- ld a, [de]
- inc de
- cp [hl]
- inc hl
- jr nz, .asm_1196b1
- ret
-.asm_1196af
- inc hl
-.asm_1196b0
- inc hl
-.asm_1196b1
- inc b
- ld a, b
- cp $7
- jr nz, .asm_119699
- ret
-; 1196b8 (46:56b8)
-
-Unknown_1196b8: ; 1196b8
- db "Mon"
- db "Tue"
- db "Wed"
- db "Thu"
- db "Fri"
- db "Sat"
- db "Sun"
-; 1196cd
-
-SECTION "bank46_2", ROMX, BANK[$46]
-; A hack to use ascii above.
-
-Function1196cd: ; 1196cd (46:56cd)
- ld de, wc719
- call Function1196de
- ld [wcd4a], a
- inc de
- call Function1196de
- ld [wcd4b], a
- ret
-
-Function1196de: ; 1196de (46:56de)
- ld a, [de]
- inc de
- sub $30
- sla a
- ld b, a
- sla a
- sla a
- add b
- ld c, a
- add hl, bc
- ld a, [de]
- inc de
- sub $30
- add c
- ret
-; 1196f2 (46:56f2)
-
-Function1196f2: ; 1196f2
- ld hl, DefaultFlypoint
-.asm_1196f5
- call Function118b9a
- ret nc
- ld a, [hli]
- cp $d
- jr nz, .asm_1196f5
- ld a, [hl]
- cp $a
- jr nz, .asm_1196f5
- xor a
- ld [hld], a
- ld [hli], a
- ld a, l
- ld [wcd5b], a
- ld a, h
- ld [wcd5c], a
- inc hl
- ld e, l
- ld d, h
- ld a, [de]
- inc de
- cp $d
- jr nz, .asm_119722
- ld a, [de]
- inc de
- cp $a
- jr nz, .asm_119722
- ld a, $b
- jp Function118805
-
-.asm_119722
- call Random
- ld c, $0
- ld b, c
-.asm_119728
- call Function119798
- ld a, d
- cp $ff
- jr nz, .asm_119735
- ld a, e
- cp $ff
- jr z, .asm_11974c
-
-.asm_119735
- ld a, [hRandomSub]
- cp d
- jr c, .asm_11974c
- jr z, .asm_11973e
- jr .asm_119745
-
-.asm_11973e
- ld a, [hRandomAdd]
- cp e
- jr c, .asm_11974c
- jr z, .asm_11974c
-
-.asm_119745
- inc bc
- ld a, c
- or b
- jr z, .asm_119770
- jr .asm_119728
-
-.asm_11974c
- ld a, [wcd5b]
- ld l, a
- ld a, [wcd5c]
- ld h, a
-.asm_119754
- ld a, [hld]
- cp $58
- jr nz, .asm_119754
- ld d, $0
-.asm_11975b
- inc d
- ld a, [hld]
- cp $58
- jr z, .asm_11975b
- inc hl
- inc hl
- ld a, d
- dec a
- jr z, .asm_11978e
- dec a
- jr z, .asm_119785
- dec a
- jr z, .asm_11977e
- dec a
- jr z, .asm_119775
-
-.asm_119770
- ld a, $d3
- jp Function118805
-
-.asm_119775
- ld a, b
- and $f0
- swap a
- call Function1197bf
- ld [hli], a
-
-.asm_11977e
- ld a, b
- and $f
- call Function1197bf
- ld [hli], a
-
-.asm_119785
- ld a, c
- and $f0
- swap a
- call Function1197bf
- ld [hli], a
-
-.asm_11978e
- ld a, c
- and $f
- call Function1197bf
- ld [hli], a
- jp Function119e2e
-; 119798
-
-Function119798: ; 119798
- ld d, $0
- ld e, d
- call Function1197b4
- swap a
- or d
- ld d, a
- call Function1197b4
- or d
- ld d, a
- call Function1197b4
- swap a
- or e
- ld e, a
- call Function1197b4
- or e
- ld e, a
- ret
-; 1197b4
-
-Function1197b4: ; 1197b4
- ld a, [hli]
- cp $61
- jr nc, .asm_1197bc
- sub $30
- ret
-
-.asm_1197bc
- sub $57
- ret
-; 1197bf
-
-Function1197bf: ; 1197bf
- cp $a
- jr nc, .asm_1197c6
- add $30
- ret
-
-.asm_1197c6
- add $57
- ret
-; 1197c9
-
-Function1197c9: ; 1197c9
- ld hl, DefaultFlypoint
- call Function118e39
- ld a, $9
- ld [wcd3c], a
- ld a, $12
- ld [wcd45], a
- call Function119e2e
-
-Function1197dc:
- call Function119ed8
- ret c
- call DelayFrame
- ld hl, DefaultFlypoint
- ld de, wcc60
- ld bc, $0080
- call CopyBytes
- dec de
- xor a
- ld [de], a
- call Function118b24
- ld de, Unkn1Pals
- ld bc, $1000
- ld a, $2a
- jp Function119e2b
-; 119800
-
-Function119800: ; 119800
- ld a, $fd
- ld [$c6d0], a
- ld [wc702], a
- ld a, [wcd81]
- ld [wc74e], a
- ld a, [wcf63]
- push af
- ld a, [wcf64]
- push af
- ld a, [wcf65]
- push af
- ld a, [wcf66]
- push af
- ld a, $1
- ld [rSVBK], a
- call FadeToMenu
- callba Function10803d
- call Function11a9ce
- call RestartMapMusic
- ld a, $3
- ld [rSVBK], a
- pop af
- ld [wcf66], a
- pop af
- ld [wcf65], a
- pop af
- ld [wcf64], a
- pop af
- ld [wcf63], a
- callba Function115dc3
- jp Function119e2e
-; 11984e
-
-Function11984e: ; 11984e
- ld a, [wcd80]
- and a
- jr nz, .asm_1198a0
- ld a, [wcd38]
- and a
- jr nz, .asm_1198a8
- callba Function170000
- ld a, [wcf63]
- push af
- ld a, [wcf64]
- push af
- ld a, [wcf65]
- push af
- ld a, [wcf66]
- push af
- ld a, $1
- ld [rSVBK], a
- call FadeToMenu
- callba Function108000
- call Function11a9ce
- call RestartMapMusic
- ld a, $3
- ld [rSVBK], a
- pop af
- ld [wcf66], a
- pop af
- ld [wcf65], a
- pop af
- ld [wcf64], a
- pop af
- ld [wcf63], a
- callba Function115dc3
- jp Function119e2e
-
-.asm_1198a0
- ld a, $a
- ld [wc300], a
- jp Function119e2e
-
-.asm_1198a8
- callba Function17005a
- ld a, [wcf63]
- push af
- ld a, [wcf64]
- push af
- ld a, [wcf65]
- push af
- ld a, [wcf66]
- push af
- ld a, $1
- ld [rSVBK], a
- call FadeToMenu
- callba Function108012
- call Function11a9ce
- call RestartMapMusic
- ld a, $3
- ld [rSVBK], a
- pop af
- ld [wcf66], a
- pop af
- ld [wcf65], a
- pop af
- ld [wcf64], a
- pop af
- ld [wcf63], a
- callba Function115dc3
- jp Function119e2e
-; 1198ee
-
-Function1198ee: ; 1198ee
- ld hl, UnknownText_0x11aab2
- call Function11a9c0
- call Function119e2e
-
-Function1198f7:
- ld a, [wc31a]
- and a
- ret nz
- ld hl, $c608 + 2
- call Function119940
- ld hl, $d800
- ld a, $c608 % $100
- ld [hli], a
- ld a, $c608 / $100
- ld [hli], a
- ld a, $f6
- ld [hli], a
- xor a
- ld [hli], a
- ld a, wc708 % $100
- ld [hli], a
- ld a, wc708 / $100
- ld [hli], a
- ld a, [wcd51]
- ld [hli], a
- ld a, [wcd52]
- ld [hli], a
- call Function119eb4
- call Function119ec2
- ld a, $40
- ld [wcd89], a
- ld hl, $d800
- ld de, $de00
- ld bc, $0200
- ld a, $2c
- jp Function119e2b
-; 119937
-
-Function119937: ; 119937
- callba Function1707f4
- jp Function119e2e
-; 119940
-
-Function119940: ; 119940
- ld de, wc3cd
- ld c, $1e
-.asm_119945
- ld a, [de]
- inc de
- ld [hli], a
- dec c
- jr z, .asm_119953
- and a
- jr nz, .asm_119945
- xor a
-.asm_11994f
- ld [hli], a
- dec c
- jr nz, .asm_11994f
-
-.asm_119953
- ret
-; 119954
-
-Function119954: ; 119954
- ld a, $1c
- ld [wcd3c], a
- call Function119ed8
- ld hl, $c608
- ld de, wc3cd
-.asm_119962
- ld a, [de]
- inc de
- ld [hli], a
- and a
- jr nz, .asm_119962
- call Function119ec2
- ld hl, $c608
- ld a, $1e
- jp Function119e2b
-; 119973
-
-Function119973: ; 119973
- ld a, $1
- ld [wcf64], a
- xor a
- ld [wcf65], a
- ld [StringBuffer2 + 10], a
- ld de, Unkn1Pals
- ld a, $20
- jp Function119e2b
-; 119987
-
-Function119987: ; 119987
- ld hl, wd001
- ld a, [Unkn1Pals]
- or [hl]
- jr z, .asm_1199a0
- ld a, [wcf64]
- ld l, a
- ld a, [wcf65]
- ld h, a
- ld de, BGPals
- ld a, $22
- jp Function119e2b
-
-.asm_1199a0
- ld a, [StringBuffer2 + 10]
- and a
- jr z, .asm_1199ae
- ld a, $16
- ld [wcf66], a
- jp Function119b0d
-
-.asm_1199ae
- ld a, $1b
- ld [wcf66], a
- ret
-; 1199b4
-
-Function1199b4: ; 1199b4
- ld a, [wd000 + 130]
- and a
- jr nz, .asm_1199c7
- ld a, [wd000 + 129]
- cp $7
- jr nc, .asm_1199c7
- call Function119e2e
- jp Function1199ca
-
-.asm_1199c7
- jp Function119ac9
-; 1199ca
-
-Function1199ca: ; 1199ca
- ld a, $20
- ld [wcd89], a
- ld a, [wcf64]
- ld l, a
- ld a, [wcf65]
- ld h, a
- ld de, LYOverrides
- ld bc, $0700
- ld a, $28
- jp Function119e2b
-; 1199e2
-
-Function1199e2: ; 1199e2
- ld c, $c
- ld de, Unknown_119e33
- call Function119e4f
- jp c, Function119ac9
- ld a, c
- cp $1
- jp nz, Function119ac9
- ld hl, $d880
- ld bc, Unknown_119af1
-.asm_1199f9
- ld a, [bc]
- and a
- jr z, .asm_119a05
- cp [hl]
- jp nz, Function119ac9
- inc bc
- inc hl
- jr .asm_1199f9
-
-.asm_119a05
- ld c, $17
- ld de, Unknown_119e40
- call Function119e4f
- jp c, .asm_119aa7
- ld a, c
- cp $1
- jp nz, .asm_119aa7
- ld a, [wd000 + $880]
- cp $31
- jp nz, .asm_119aa7
- ld a, [wd000 + $881]
- cp $20
- jp nz, .asm_119aa7
- ld a, [wd000 + $88a]
- cp $20
- jp nz, .asm_119aa7
- ld a, [wd000 + $894]
- cp $20
- jp nz, .asm_119aa7
- xor a
- ld [wd000 + $8a0], a
- ld [wd000 + $8a1], a
- ld [wd000 + $8a2], a
- ld [wd000 + $8a3], a
- ld hl, $d8a0
- ld bc, $d889
- call Function119e98
- call Function119e98
- ld hl, $d8a0
- ld a, [wcd2d]
- cp [hl]
- jr nz, Function119ac9
- inc hl
- ld a, [wcd2c]
- cp [hl]
- jr nz, Function119ac9
- inc hl
- ld a, [wcd2b]
- cp [hl]
- jr nz, Function119ac9
- inc hl
- ld a, [wcd2a]
- cp [hl]
- jr nz, Function119ac9
- xor a
- ld [wd000 + $8a0], a
- ld [wd000 + $8a1], a
- ld [wd000 + $8a2], a
- ld [wd000 + $8a3], a
- ld hl, $d8a0
- ld bc, $d88e
- call Function119e98
- ld bc, $d893
- call Function119e98
- ld hl, $d8a0
- ld a, [wcd2f]
- cp [hl]
- jr nz, .asm_119aa7
- inc hl
- ld a, [wcd2e]
- cp [hl]
- jr nz, .asm_119aa7
- inc hl
- ld a, [wcd31]
- cp [hl]
- jr nz, .asm_119aa7
- inc hl
- ld a, [wcd30]
- cp [hl]
- jr z, .asm_119aaf
-
-.asm_119aa7
- ld a, $25
- ld [wcf66], a
- jp Function119b45
-
-.asm_119aaf
- ld a, [StringBuffer2 + 10]
- and a
- jr nz, .asm_119aa7
- ld a, [wd000 + $895]
- sub $30
- ld [StringBuffer2 + 10], a
- ld a, [wcf64]
- ld [StringBuffer2 + 11], a
- ld a, [wcf65]
- ld [StringBuffer2 + 12], a
-
-Function119ac9:
- ld a, [Unkn1Pals]
- ld l, a
- ld a, [wd001]
- ld h, a
- dec hl
- ld a, l
- ld [Unkn1Pals], a
- ld a, h
- ld [wd001], a
- ld a, [wcf64]
- ld l, a
- ld a, [wcf65]
- ld h, a
- inc hl
- ld a, l
- ld [wcf64], a
- ld a, h
- ld [wcf65], a
- ld a, $10
- ld [wcf66], a
- ret
-; 119af1
-
-Unknown_119af1:
- INCBIN "data/mobile/x-game-code.txt"
- INCBIN "data/mobile/x-game-result.txt"
-; 119b0d
-
-Function119b0d: ; 119b0d
- ld a, $8
- ld [wcd3c], a
- call Function119ed8
- ld a, [StringBuffer2 + 10]
- cp $1
- jr z, .asm_119b23
- ld a, $19
- ld [wcf66], a
- jr Function119b3b
-
-.asm_119b23
- ld a, $10
- ld [wcd89], a
- ld a, [StringBuffer2 + 11]
- ld l, a
- ld a, [StringBuffer2 + 12]
- ld h, a
- ld de, LYOverrides
- ld bc, $0700
- ld a, $24
- jp Function119e2b
-
-Function119b3b:
- ld a, [StringBuffer2 + 11]
- ld l, a
- ld a, [StringBuffer2 + 12]
- ld h, a
- jr asm_119b4d
-
-Function119b45:
- ld a, [wcf64]
- ld l, a
- ld a, [wcf65]
- ld h, a
-
-asm_119b4d
- ld a, $26
- jp Function119e2b
-; 119b52
-
-Function119b52: ; 119b52
- ld a, [StringBuffer2 + 10]
- cp $1
- jr nz, .asm_119b66
- ld a, $5
- call GetSRAMBank
- ld a, $4
- ld [$a800], a
- call CloseSRAM
-
-.asm_119b66
- ld a, $1c
- jp Function119e2b
-; 119b6b
-
-Function119b6b: ; 119b6b
- ld a, [StringBuffer2 + 10]
- cp $1
- jr z, .asm_119b75
- jp Function119e2e
-
-.asm_119b75
- ld a, [LYOverrides]
- ld b, a
- ld a, [wd101]
- or b
- jr z, .asm_119be3
- ld hl, $d800
- ld de, wd102
-.asm_119b85
- ld a, [de]
- inc de
- cp $d
- jr nz, .asm_119b85
- inc de
- ld a, [de]
- cp $d
- jr nz, .asm_119b85
- inc de
- inc de
-.asm_119b93
- ld a, [de]
- inc de
- cp $d
- jr z, .asm_119bfa
- call Function119c3e
- ret c
- ld [hli], a
- ld a, [de]
- inc de
- call Function119c3e
- ret c
- ld [hli], a
- ld a, [de]
- inc de
- call Function119c3e
- ret c
- ld [hli], a
- ld a, [de]
- inc de
- call Function119c3e
- ret c
- ld [hl], a
- push de
- ld d, [hl]
- dec hl
- ld c, [hl]
- dec hl
- ld b, [hl]
- dec hl
- ld a, [hl]
- sla b
- sla b
- sla b
- rla
- sla b
- rla
- ld [hli], a
- ld [hl], b
- inc hl
- rrc c
- rrc c
- ld [hl], c
- dec hl
- ld a, $f
- and c
- or [hl]
- ld [hli], a
- ld a, [hli]
- and $c0
- or [hl]
- dec hl
- ld [hld], a
- dec hl
- pop de
- inc hl
- inc hl
- inc hl
- ld a, h
- cp $e0
- jr c, .asm_119b93
-
-.asm_119be3
- ld a, $19
- ld [wcf66], a
- ld a, $5
- call GetSRAMBank
- ld a, $1
- ld [$a800], a
- call CloseSRAM
- xor a
- ld [StringBuffer2 + 10], a
- ret
-
-.asm_119bfa
- inc de
- ld a, [de]
- cp $d
- jr nz, .asm_119b93
- ld a, l
- cp (wd000 + $800 + $69) % $100
- jr nz, .asm_119be3
- ld a, h
- cp (wd000 + $800 + $69) / $100
- jr nz, .asm_119be3
- ld a, $5
- call GetSRAMBank
- ld a, [wcf64]
- ld [$b090], a
- ld a, [wcf65]
- ld [$b091], a
- ld hl, $d800
- ld de, $b023
- ld bc, $0069
- call CopyBytes
- ld a, $3
- ld [$a800], a
- call CloseSRAM
- ld hl, $d800
- ld de, $c608
- ld bc, $0069
- call CopyBytes
- jp Function119e2e
-; 119c3e
-
-Function119c3e: ; 119c3e
- cp $2b
- jr c, .asm_119c68
- jr z, .asm_119c80
- cp $2f
- jr c, .asm_119c68
- jr z, .asm_119c84
- cp $30
- jr c, .asm_119c68
- cp $3a
- jr c, .asm_119c88
- cp $3d
- jr c, .asm_119c68
- jr z, .asm_119c8c
- cp $41
- jr c, .asm_119c68
- cp $5b
- jr c, .asm_119c8f
- cp $61
- jr c, .asm_119c68
- cp $7b
- jr c, .asm_119c93
-
-.asm_119c68
- ld a, $19
- ld [wcf66], a
- ld a, $5
- call GetSRAMBank
- ld a, $1
- ld [$a800], a
- call CloseSRAM
- xor a
- ld [StringBuffer2 + 10], a
- scf
- ret
-
-.asm_119c80
- ld a, $3e
- and a
- ret
-
-.asm_119c84
- ld a, $3f
- and a
- ret
-
-.asm_119c88
- add $4
- and a
- ret
-
-.asm_119c8c
- xor a
- and a
- ret
-
-.asm_119c8f
- sub $41
- and a
- ret
-
-.asm_119c93
- sub $47
- and a
- ret
-; 119c97
-
-Function119c97: ; 119c97
- ld hl, UnknownText_0x11ab0f
- call Function11a9c0
- call Function119e2e
- jr Function119cab
-
-Function119ca2:
- ld hl, UnknownText_0x11aaf0
- call Function11a9c0
- call Function119e2e
-
-Function119cab:
- ld a, [wc31a]
- and a
- ret nz
- ld a, $80
- ld [wcd50], a
- call Function119e2e
-
-Function119cb8:
- ld hl, wcd50
- dec [hl]
- ret nz
- ld a, $0
- ld [wcf66], a
- ret
-; 119cc3
-
-Function119cc3: ; 119cc3
- ld a, [wcd38]
- and a
- jr z, .asm_119cd1
- dec a
- jr z, .asm_119cd6
- ld hl, UnknownText_0x11aa6a
- jr .asm_119cd9
-
-.asm_119cd1
- ld hl, UnknownText_0x11ab4a
- jr .asm_119cd9
-
-.asm_119cd6
- ld hl, UnknownText_0x11ab6e
-
-.asm_119cd9
- call Function11a9c0
- call Function119e2e
-
-Function119cdf:
- ld a, [wc31a]
- and a
- ret nz
- ld a, $f
- ld [wcd3c], a
- call Function119e2e
-
-Function119cec:
- call Function119ed8
- ret c
- ld a, [wcd46]
- ld [wcf66], a
- ret
-; 119cf7
-
-MenuDataHeader_119cf7: ; 119cf7
- db $40 ; flags
- db 7, 12 ; start coords
- db 11, 19 ; end coords
- dw NULL
- db 0 ; default option
-; 119cff
-
-MenuData_119cff: ; 119cff
- db $40 ; flags
- db 7, 15 ; start coords
- db 11, 19 ; end coords
- dw NULL
- db 0 ; default option
-; 119d07
-
-String_119d07:
- db " ▼@"
-
-Strings_119d0c:
- db " L:10 @@"
- db " L:20 @@"
- db " L:30 @@"
- db " L:40 @@"
- db " L:50 @@"
- db " L:60 @@"
- db " L:70 @@"
- db " L:80 @@"
- db " L:90 @@"
- db " L:100@@"
- db "CANCEL@@"
-
-Strings_119d64:
- db " L:10 @@"
- db " L:20 @@"
- db " L:30 @@"
- db " L:40 @@"
- db "CANCEL@@"
-
-String_119d8c:
- db "CANCEL@"
-; 119d93
-
-Function119d93: ; 119d93 (46:5d93)
- ld a, [rSVBK] ; $ff00+$70
- push af
- ld a, $1
- ld [rSVBK], a ; $ff00+$70
- ld a, [wcd4f]
- ld c, 10
- call SimpleMultiply
- ld hl, wcd50
- ld [hl], a
- ld bc, PartyMon2 - PartyMon1
- ld de, PartyMon1Level
- ld a, [PartyCount]
-.asm_119daf
- push af
- ld a, [de]
- push hl
- push de
- pop hl
- add hl, bc
- push hl
- pop de
- pop hl
- cp [hl]
- jr z, .asm_119dbd
- jr nc, .asm_119dc6
-.asm_119dbd
- pop af
- dec a
- jr nz, .asm_119daf
- pop af
- ld [rSVBK], a ; $ff00+$70
- and a
- ret
-.asm_119dc6
- pop af
- ld a, $4
- ld [wcf66], a
- pop af
- ld [rSVBK], a ; $ff00+$70
- scf
- ret
-
-Function119dd1: ; 119dd1 (46:5dd1)
- ld a, [rSVBK] ; $ff00+$70
- push af
- ld a, [wcd4f]
- cp 70 / 10
- jr nc, .asm_119e08
- ld a, $1
- ld [rSVBK], a ; $ff00+$70
- ld hl, PartyMon1Level
- ld bc, PartyMon2 - PartyMon1
- ld de, PartySpecies
- ld a, [PartyCount]
-.asm_119deb
- push af
- ld a, [de]
- cp MEWTWO
- jr z, .asm_119dfd
- cp MEW
- jr z, .asm_119dfd
- cp LUGIA
- jr c, .asm_119e02
- cp NUM_POKEMON + 1
- jr nc, .asm_119e02
-.asm_119dfd
- ld a, [hl]
- cp 70
- jr c, .asm_119e0d
-.asm_119e02
- add hl, bc
- inc de
- pop af
- dec a
- jr nz, .asm_119deb
-.asm_119e08
- pop af
- ld [rSVBK], a ; $ff00+$70
- and a
- ret
-.asm_119e0d
- pop af
- ld a, [de]
- ld [wd265], a
- call GetPokemonName
- ld hl, StringBuffer1
- ld de, wcd49
- ld bc, PKMN_NAME_LENGTH
- call CopyBytes
- ld a, $a
- ld [wcf66], a
- pop af
- ld [rSVBK], a ; $ff00+$70
- scf
- ret
-; 119e2b (46:5e2b)
-
-Function119e2b: ; 119e2b (46:5e2b)
- call Function3e32
-
-Function119e2e: ; 119e2e (46:5e2e)
- ld hl, wcf66
- inc [hl]
- ret
-; 119e33 (46:5e33)
-
-Unknown_119e33: ; 119e33
- INCBIN "data/mobile/x-game-code-prefix.txt"
-Unknown_119e40:
- INCBIN "data/mobile/x-game-result-prefix.txt"
-; 119e4f
-
-Function119e4f: ; 119e4f
- push bc
- ld hl, LYOverrides
- ld a, [hli]
- ld c, a
- ld a, [hli]
- ld b, a
-.asm_119e57
- ld a, [de]
- cp [hl]
- jr z, .asm_119e64
-.asm_119e5b
- inc hl
- dec bc
- ld a, b
- or c
- jr nz, .asm_119e57
-.asm_119e61
- pop bc
- scf
- ret
-
-.asm_119e64
- push de
-.asm_119e65
- ld a, [de]
- inc de
- cp "\n"
- jr z, .asm_119e7a
- cp [hl]
- jr nz, .asm_119e77
- inc hl
- dec bc
- ld a, b
- or c
- jr nz, .asm_119e65
- pop de
- jr .asm_119e61
-
-.asm_119e77
- pop de
- jr .asm_119e5b
-
-.asm_119e7a
- pop de
- pop bc
- inc hl
- ld de, $d880
-.asm_119e80
- ld a, [hli]
- ld [de], a
- inc de
- cp $d
- jr z, .asm_119e8c
- dec c
- jr nz, .asm_119e80
- scf
- ret
-
-.asm_119e8c
- and a
- ret
-; 119e8e
-
-Function119e8e: ; 119e8e
- cp $60
- jr c, .asm_119e95
- sub $57
- ret
-
-.asm_119e95
- sub $30
- ret
-; 119e98
-
-Function119e98: ; 119e98
- ld a, $2
-.asm_119e9a
- push af
- ld a, [bc]
- dec bc
- call Function119e8e
- or [hl]
- ld [hl], a
- ld a, [bc]
- dec bc
- call Function119e8e
- rlca
- rlca
- rlca
- rlca
- or [hl]
- ld [hl], a
- inc hl
- pop af
- dec a
- and a
- jr nz, .asm_119e9a
- ret
-; 119eb4
-
-Function119eb4: ; 119eb4 (46:5eb4)
- xor a
- ld [wc3cc], a
- ld de, wc3ac
-.asm_119ebb
- ld a, [de]
- inc de
- ld [hli], a
- and a
- jr nz, .asm_119ebb
- ret
-
-Function119ec2: ; 119ec2 (46:5ec2)
- ld a, $5
- call GetSRAMBank
- xor a
- ld [$aa5c], a
- ld de, $aa4c
-.asm_119ece
- ld a, [de]
- inc de
- ld [hli], a
- and a
- jr nz, .asm_119ece
- call CloseSRAM
- ret
-
-Function119ed8: ; 119ed8 (46:5ed8)
- ld a, [rSVBK] ; $ff00+$70
- ld [wcd8c], a
- ld a, $1
- ld [rSVBK], a ; $ff00+$70
- call Function119eee
- ld a, [wcd8c]
- ld [rSVBK], a ; $ff00+$70
- ld a, $1
- ld [hBGMapMode], a ; $ff00+$d4
- ret
-
-Function119eee: ; 119eee (46:5eee)
- ld a, [wcd3c]
- ld e, a
- ld d, 0
- ld hl, Jumptable_119efd
- add hl, de
- add hl, de
- ld a, [hli]
- ld h, [hl]
- ld l, a
- jp [hl]
-; 119efd (46:5efd)
-
-Jumptable_119efd: ; 119efd
- dw Function119f3f
- dw Function119f45
- dw Function119f56
- dw Function119f76
- dw Function119f98
- dw Function11a113
- dw Function11a129
- dw Function11a131
- dw Function11a13d
- dw Function11a14b
- dw Function11a16d
- dw Function11a192
- dw Function11a2e6
- dw Function11a302
- dw Function11a33a
- dw Function11a207
- dw Function11a235
- dw Function11a357
- dw Function11a36b
- dw Function11a38d
- dw Function11a3c5
- dw Function11a3d9
- dw Function11a3f9
- dw Function11a41b
- dw Function11a452
- dw Function11a47a
- dw Function11a488
- dw Function11a49e
- dw Function11a4db
- dw Function11a4e8
- dw Function11a4fe
- dw Function11a466
- dw Function11a47a
-; 119f3f
-
-Function119f3f: ; 119f3f
- call Function11a5b9
- jp Function11a5b0
-; 119f45
-
-Function119f45: ; 119f45
- hlcoord 4, 2
- ld de, String_11a661
- call PlaceString
- ld a, $80
- ld [wcd44], a
- jp Function11a5b0
-; 119f56
-
-Function119f56: ; 119f56
- ld a, [wcd44]
- and a
- jr z, .asm_119f62
- dec a
- ld [wcd44], a
- scf
- ret
-
-.asm_119f62
- call Function11a63c
- hlcoord 4, 2
- ld de, String_11a6aa
- call PlaceString
- ld a, $80
- ld [wcd44], a
- jp Function11a5b0
-; 119f76
-
-Function119f76: ; 119f76
- ld a, [wcd44]
- and a
- jr z, .asm_119f82
- dec a
- ld [wcd44], a
- scf
- ret
-
-.asm_119f82
- call Function11a63c
- hlcoord 4, 2
- ld de, String_11a679
- call PlaceString
- call Function11a5f5
- xor a
- ld [wcd44], a
- jp Function11a5b0
-; 119f98
-
-Function119f98: ; 119f98
- call Function11a536
- ret c
- call PlayClickSFX
- ld a, [wcd44]
- and a
- jr nz, .asm_119fef
- call Function1c07
- call Function11a63c
- xor a
- ld [ScriptVar], a
- call Function11a00e
- ld a, [ScriptVar]
- and a
- jr z, .asm_119fd4
- call Function1c07
- callba Function104061
- callba Function115dc3
- ld a, [wcd33]
- ld [wcf66], a
- ld a, $a
- ld [wc300], a
- scf
- ret
-
-.asm_119fd4
- hlcoord 4, 2
- ld de, String_11a692
- call PlaceString
- ld a, $1
- ld [wc30d], a
- ld a, $1
- ld [wc314], a
- callba Function104061
- and a
- ret
-
-.asm_119fef
- call Function1c07
- call Function1c07
- callba Function104061
- ld a, [wcd45]
- ld [wcf66], a
- callba Function115dc3
- ld a, $a
- ld [wc300], a
- scf
- ret
-; 11a00e
-
-Function11a00e: ; 11a00e
- ld a, $5
- call GetSRAMBank
- ld a, [$aa4b]
- and a
- jr z, .asm_11a02a
- ld a, [$aa4c]
- call CloseSRAM
- and a
- ret nz
- ld a, $5
- call GetSRAMBank
- xor a
- ld [$aa4b], a
-
-.asm_11a02a
- call CloseSRAM
- ld a, [BGMapPalBuffer]
- and a
- jr z, .asm_11a039
- dec a
- jr z, .asm_11a081
- jp Function11a0ca
-
-.asm_11a039
- ld a, $3
- ld [rSVBK], a
- ld hl, $c608
- ld de, $d800
- ld bc, $00f6
- call CopyBytes
- ld a, $1
- ld [rSVBK], a
- call FadeToMenu
- callba Function11765d
- call Function11a9ce
- ld a, $3
- ld [rSVBK], a
- ld hl, $d800
- ld de, $c608
- ld bc, $00f6
- call CopyBytes
- ld a, $1
- ld [rSVBK], a
- callba Function115d99
- ld c, $0
- callba Function115e18
- ld a, $1
- ld [wc305], a
- ret
-
-.asm_11a081
- xor a
- ld [wcf83], a
- ld [wcf82], a
- ld a, $13
- ld [wcf85], a
- ld a, $5
- ld [wcf84], a
- call Function1c00
- callba Function11765d
- callba Function117ab4
- callba Function106462
- callba Function106464
- call Function1c07
- callba Function104061
- callba Function115d99
- ld c, $0
- callba Function115e18
- ld a, $1
- ld [wc305], a
- ret
-; 11a0ca
-
-Function11a0ca: ; 11a0ca
- xor a
- ld [wcf83], a
- ld [wcf82], a
- ld a, $13
- ld [wcf85], a
- ld a, $11
- ld [wcf84], a
- call Function1c00
- callba Function11765d
- callba Function17d3f6
- callba Function106462
- callba Function106464
- call Function1c07
- callba Function104061
- callba Function115d99
- ld c, $0
- callba Function115e18
- ld a, $1
- ld [wc305], a
- ret
-; 11a113
-
-Function11a113: ; 11a113
- call Function11a63c
- ld c, $1
- callba Function115e18
- hlcoord 4, 2
- ld de, String_11a6c8
- call PlaceString
- and a
- ret
-; 11a129
-
-Function11a129: ; 11a129
- ld a, $80
- ld [wcd44], a
- jp Function11a5b0
-; 11a131
-
-Function11a131: ; 11a131
- ld hl, wcd44
- dec [hl]
- ret nz
- ld a, [wcd3c]
- inc a
- ld [wcd3c], a
-
-Function11a13d:
- call Function11a63c
- hlcoord 4, 2
- ld de, String_11a6d2
- call PlaceString
- and a
- ret
-; 11a14b
-
-Function11a14b: ; 11a14b
- ld hl, wcd85
- ld a, [hl]
- cp $f3
- jr nz, .asm_11a155
- and a
- ret
-
-.asm_11a155
- call Function11a1d6
- ret c
- call Function11a63c
- hlcoord 4, 2
- ld de, String_11a6f1
- call PlaceString
- ld a, $80
- ld [wcd44], a
- jp Function11a5b0
-; 11a16d
-
-Function11a16d: ; 11a16d
- ld a, [wcd44]
- and a
- jr z, .asm_11a179
- dec a
- ld [wcd44], a
- scf
- ret
-
-.asm_11a179
- call Function11a63c
- call Function11a1e6
- hlcoord 4, 2
- ld de, wc346
- call PlaceString
- call Function11a5f5
- xor a
- ld [wcd44], a
- jp Function11a5b0
-; 11a192
-
-Function11a192: ; 11a192
- call Function11a536
- ret c
- call PlayClickSFX
- ld a, [wcd44]
- and a
- jr nz, .asm_11a1b6
- call Function1c07
- callba Function104061
- call Function11a63c
- hlcoord 4, 2
- ld de, String_11a6d2
- call PlaceString
- and a
- ret
-
-.asm_11a1b6
- call Function1c07
- callba Function104061
- ld a, [wcd45]
- ld [wcf66], a
- ld [wcd80], a
- call Function11a63c
- hlcoord 4, 2
- ld de, String_11a6d2
- call PlaceString
- scf
- ret
-; 11a1d6
-
-Function11a1d6: ; 11a1d6
- ld a, [wcd85]
- cp $50
- jr nz, .asm_11a1e4
- ld a, $d3
- call Function118805
- scf
- ret
-
-.asm_11a1e4
- and a
- ret
-; 11a1e6
-
-Function11a1e6: ; 11a1e6
- ld hl, String_11a706
- ld de, wc346
- call Function11a1ff
- ld hl, wcd85
- call Function11a1ff
- ld hl, String_11a70b
- call Function11a1ff
- ld a, $50
- ld [de], a
- ret
-; 11a1ff
-
-Function11a1ff: ; 11a1ff
-.asm_11a1ff
- ld a, [hli]
- cp $50
- ret z
- ld [de], a
- inc de
- jr .asm_11a1ff
-; 11a207
-
-Function11a207: ; 11a207
- ld hl, MenuDataHeader_11a2de
- call LoadMenuDataHeader
- call Function1cbb
- call Function1cfd
- call Function321c
- hlcoord 16, 8
- ld de, String_11a2cf
- call PlaceString
- hlcoord 16, 10
- ld de, String_11a2d3
- call PlaceString
- hlcoord 15, 8
- ld a, $ed
- ld [hl], a
- xor a
- ld [wcd44], a
- jp Function11a5b0
-; 11a235
-
-Function11a235: ; 11a235
- ld hl, hJoyPressed
- ld a, [hl]
- and A_BUTTON
- jr nz, .asm_11a28f
- ld a, [hl]
- and B_BUTTON
- jr nz, .asm_11a2c1
- ld a, [hl]
- and D_UP
- jr nz, .asm_11a251
- ld a, [hl]
- and D_DOWN
- jr nz, .asm_11a270
-.asm_11a24c
- call Function11a9f0
- scf
- ret
-
-.asm_11a251
- xor a
- ld [wcd8a], a
- ld [wcd8b], a
- ld a, [wcd44]
- and a
- jr z, .asm_11a24c
- xor a
- ld [wcd44], a
- hlcoord 15, 8
- ld a, $ed
- ld [hl], a
- hlcoord 15, 10
- ld a, $7f
- ld [hl], a
- jr .asm_11a24c
-
-.asm_11a270
- xor a
- ld [wcd8a], a
- ld [wcd8b], a
- ld a, [wcd44]
- and a
- jr nz, .asm_11a24c
- inc a
- ld [wcd44], a
- hlcoord 15, 8
- ld a, $7f
- ld [hl], a
- hlcoord 15, 10
- ld a, $ed
- ld [hl], a
- jr .asm_11a24c
-
-.asm_11a28f
- xor a
- ld [wcd8a], a
- ld [wcd8b], a
- call PlayClickSFX
- ld a, [wcd44]
- and a
- jr nz, .asm_11a2c4
- call Function1c07
- callba Function104061
- ld a, [wcd46]
- cp $0
- jr z, .asm_11a2b4
- ld a, [wcd47]
- jr .asm_11a2b7
-
-.asm_11a2b4
- ld a, [wcd33]
-
-.asm_11a2b7
- ld [wcf66], a
- ld a, $a
- ld [wc300], a
- scf
- ret
-
-.asm_11a2c1
- call PlayClickSFX
-
-.asm_11a2c4
- call Function1c07
- callba Function104061
- and a
- ret
-; 11a2cf
-
-String_11a2cf: ; 11a2cf
- db "YES@"
-; 11a2d3
-
-String_11a2d3: ; 11a2d3
- db "NO@"
-; 11a2d6
-
-MenuDataHeader_11a2d6: ; 11a2d6
- db $40 ; flags
- db 6, 14 ; start coords
- db 10, 19 ; end coords
- dw NULL
- db 0 ; default option
-; 11a2de
-
-MenuDataHeader_11a2de: ; 11a2de
- db $40 ; flags
- db 7, 14 ; start coords
- db 11, 19 ; end coords
- dw NULL
- db 0 ; default option
-; 11a2e6
-
-Function11a2e6: ; 11a2e6
- call Function11a63c
- ld c, $2
- callba Function115e18
- hlcoord 4, 2
- ld de, String_11a71e
- call PlaceString
- ld a, $80
- ld [wcd44], a
- jp Function11a5b0
-; 11a302
-
-Function11a302: ; 11a302
- ld a, [wcd44]
- and a
- jr z, .asm_11a30e
- dec a
- ld [wcd44], a
- scf
- ret
-
-.asm_11a30e
- call Function11a63c
- hlcoord 4, 2
- ld de, String_11a72a
- call PlaceString
- hlcoord 9, 4
- ld de, wcd68
- ld bc, $8102
- call PrintNum
- hlcoord 14, 4
- ld de, wcd67
- ld bc, $8102
- call PrintNum
- ld a, $80
- ld [wcd44], a
- jp Function11a5b0
-; 11a33a
-
-Function11a33a: ; 11a33a
- ld a, [wcd44]
- and a
- jr z, .asm_11a346
- dec a
- ld [wcd44], a
- scf
- ret
-
-.asm_11a346
- call Function1c07
- callba Function104061
- callba Function115dc3
- and a
- ret
-; 11a357
-
-Function11a357: ; 11a357
- call Function11a63c
- hlcoord 4, 2
- ld de, String_11a743
- call PlaceString
- ld a, $80
- ld [wcd44], a
- jp Function11a5b0
-; 11a36b
-
-Function11a36b: ; 11a36b
- ld a, [wcd44]
- and a
- jr z, .asm_11a377
- dec a
- ld [wcd44], a
- scf
- ret
-
-.asm_11a377
- call Function11a63c
- hlcoord 4, 2
- ld de, String_11a755
- call PlaceString
- call Function11a5f5
- xor a
- ld [wcd44], a
- jp Function11a5b0
-; 11a38d
-
-Function11a38d: ; 11a38d
- call Function11a536
- ret c
- call PlayClickSFX
- ld a, [wcd44]
- and a
- jr nz, .asm_11a3b1
- call Function1c07
- callba Function104061
- call Function11a63c
- hlcoord 4, 2
- ld de, String_11a6d2
- call PlaceString
- and a
- ret
-
-.asm_11a3b1
- call Function1c07
- callba Function104061
- ld a, [wcd45]
- ld [wcf66], a
- ld [wcd80], a
- scf
- ret
-; 11a3c5
-
-Function11a3c5: ; 11a3c5
- call Function11a63c
- hlcoord 4, 2
- ld de, String_11a762
- call PlaceString
- ld a, $80
- ld [wcd44], a
- jp Function11a5b0
-; 11a3d9
-
-Function11a3d9: ; 11a3d9
- ld a, [wcd44]
- and a
- jr z, .asm_11a3e5
- dec a
- ld [wcd44], a
- scf
- ret
-
-.asm_11a3e5
- call Function11a63c
- hlcoord 4, 2
- ld de, String_11a779
- call PlaceString
- ld a, $80
- ld [wcd44], a
- jp Function11a5b0
-; 11a3f9
-
-Function11a3f9: ; 11a3f9
- ld a, [wcd44]
- and a
- jr z, .asm_11a405
- dec a
- ld [wcd44], a
- scf
- ret
-
-.asm_11a405
- call Function11a63c
- hlcoord 4, 2
- ld de, String_11a755
- call PlaceString
- call Function11a5f5
- xor a
- ld [wcd44], a
- jp Function11a5b0
-; 11a41b
-
-Function11a41b: ; 11a41b
- call Function11a536
- ret c
- call PlayClickSFX
- ld a, [wcd44]
- and a
- jr nz, .asm_11a43f
- call Function1c07
- callba Function104061
- call Function11a63c
- hlcoord 4, 2
- ld de, String_11a6d2
- call PlaceString
- and a
- ret
-
-.asm_11a43f
- call Function1c07
- callba Function104061
- ld a, $1c
- ld [wcf66], a
- ld [wcd80], a
- scf
- ret
-; 11a452
-
-Function11a452: ; 11a452
- call Function11a63c
- hlcoord 4, 2
- ld de, String_11a791
- call PlaceString
- ld a, $80
- ld [wcd44], a
- jp Function11a5b0
-; 11a466
-
-Function11a466: ; 11a466
- call Function11a63c
- hlcoord 4, 2
- ld de, String_11a7c1
- call PlaceString
- ld a, $80
- ld [wcd44], a
- jp Function11a5b0
-; 11a47a
-
-Function11a47a: ; 11a47a
- ld a, [wcd44]
- and a
- jr z, .asm_11a486
- dec a
- ld [wcd44], a
- scf
- ret
-
-.asm_11a486
- and a
- ret
-; 11a488
-
-Function11a488: ; 11a488
- call Function11a63c
- hlcoord 4, 2
- ld de, String_11a7ac
- call PlaceString
- call Function11a5f5
- xor a
- ld [wcd44], a
- jp Function11a5b0
-; 11a49e
-
-Function11a49e: ; 11a49e
- call Function11a536
- ret c
- call PlayClickSFX
- ld a, [wcd44]
- and a
- jr nz, .asm_11a4c7
- call Function1c07
- callba Function104061
- call Function11a63c
- hlcoord 4, 2
- ld de, String_11a6d2
- call PlaceString
- ld a, $14
- ld [wcf66], a
- and a
- ret
-
-.asm_11a4c7
- call Function1c07
- callba Function104061
- ld a, [wcd46]
- ld [wcf66], a
- ld [wcd80], a
- scf
- ret
-; 11a4db
-
-Function11a4db: ; 11a4db
- call Function11a63c
- ld de, String_11a6db
- hlcoord 4, 2
- call PlaceString
- ret
-; 11a4e8
-
-Function11a4e8: ; 11a4e8
- call Function11a63c
- hlcoord 4, 2
- ld de, String_11a7d7
- call PlaceString
- call Function11a5f5
- xor a
- ld [wcd44], a
- jp Function11a5b0
-; 11a4fe
-
-Function11a4fe: ; 11a4fe
- call Function11a536
- ret c
- call PlayClickSFX
- ld a, [wcd44]
- and a
- jr nz, .asm_11a522
- call Function1c07
- callba Function104061
- call Function11a63c
- hlcoord 4, 2
- ld de, String_11a6d2
- call PlaceString
- and a
- ret
-
-.asm_11a522
- call Function1c07
- callba Function104061
- ld a, [wcd45]
- ld [wcf66], a
- ld [wcd80], a
- scf
- ret
-; 11a536
-
-Function11a536: ; 11a536
- ld hl, hJoyPressed
- ld a, [hl]
- and $1
- jr nz, .asm_11a5a7
- ld a, [hl]
- and $2
- jr nz, .asm_11a5a2
- ld a, [hl]
- and $40
- jr nz, .asm_11a564
- ld a, [hl]
- and $80
- jr nz, .asm_11a583
-.asm_11a54d
- ld a, [wcd3c]
- cp $4
- jr z, .asm_11a562
- call Function11a9f0
- jr nz, .asm_11a562
- call Function1c07
- callba Function104061
-
-.asm_11a562
- scf
- ret
-
-.asm_11a564
- xor a
- ld [wcd8a], a
- ld [wcd8b], a
- ld a, [wcd44]
- and a
- jr z, .asm_11a54d
- xor a
- ld [wcd44], a
- hlcoord 15, 7
- ld a, $ed
- ld [hl], a
- hlcoord 15, 9
- ld a, $7f
- ld [hl], a
- jr .asm_11a54d
-
-.asm_11a583
- xor a
- ld [wcd8a], a
- ld [wcd8b], a
- ld a, [wcd44]
- and a
- jr nz, .asm_11a54d
- inc a
- ld [wcd44], a
- hlcoord 15, 7
- ld a, $7f
- ld [hl], a
- hlcoord 15, 9
- ld a, $ed
- ld [hl], a
- jr .asm_11a54d
-
-.asm_11a5a2
- ld a, $1
- ld [wcd44], a
-
-.asm_11a5a7
- xor a
- ld [wcd8a], a
- ld [wcd8b], a
- and a
- ret
-; 11a5b0
-
-Function11a5b0: ; 11a5b0
- ld a, [wcd3c]
- inc a
- ld [wcd3c], a
- scf
- ret
-; 11a5b9
-
-Function11a5b9: ; 11a5b9
- xor a
- ld [wcf83], a
- ld [wcf82], a
- ld a, $13
- ld [wcf85], a
- ld a, $5
- ld [wcf84], a
- call Function1c00
- ld hl, AttrMap
- ld b, $6
- ld c, $14
- ld hl, TileMap
- ld b, $4
- ld c, $12
- call Function3eea
- callba Function104061
- call Function1ad2
- ld c, $0
- callba Function115e18
- ld a, $1
- ld [wc305], a
- ret
-; 11a5f5
-
-Function11a5f5: ; 11a5f5
- ld a, $e
- ld [wcf83], a
- ld a, $13
- ld [wcf85], a
- ld a, $6
- ld [wcf82], a
- ld a, $a
- ld [wcf84], a
- call Function1c00
- hlcoord 14, 6, AttrMap
- ld b, $5
- ld c, $6
- hlcoord 14, 6
- ld b, $3
- ld c, $4
- call Function3eea
- hlcoord 16, 7
- ld de, String_11a2cf
- call PlaceString
- hlcoord 16, 9
- ld de, String_11a2d3
- call PlaceString
- hlcoord 15, 7
- ld a, $ed
- ld [hl], a
- callba Function104061
- ret
-; 11a63c
-
-Function11a63c: ; 11a63c
- hlcoord 4, 1
- ld de, String_11a7f4
- call PlaceString
- hlcoord 4, 2
- ld de, String_11a7f4
- call PlaceString
- hlcoord 4, 3
- ld de, String_11a7f4
- call PlaceString
- hlcoord 4, 4
- ld de, String_11a7f4
- call PlaceString
- ret
-; 11a661
-
-String_11a661: ; 11a661
- db "これから モバイルセンターに"
- next "でんわ", $1f, "かけます@"
-; 11a679
-
-String_11a679: ; 11a679
- db "モバイルアダプタ", $25, "じゅんびは"
- next "できて いますか?@"
-; 11a692
-
-String_11a692: ; 11a692
- db "でんわ", $1f, "かけています"
- next "しばらく おまちください@"
-; 11a6aa
-
-String_11a6aa: ; 11a6aa
- db "でんわをかけると つうわりょう"
- next "せつぞくりょう", $4a, "かかります@"
-; 11a6c8
-
-String_11a6c8: ; 11a6c8
- db "せつぞく しました@"
-; 11a6d2
-
-String_11a6d2: ; 11a6d2
- db "つうしん ちゅう@"
-; 11a6db
-
-String_11a6db: ; 11a6db
- db "つうしん ちゅう"
- next "セレクト エーでちゅうし@"
-; 11a6f1
-
-String_11a6f1: ; 11a6f1
- db "この サービスには"
- next "つうわりょう", $25, "ほかに@"
-; 11a706
-
-String_11a706: ; 11a706
- db "おかね", $4a, "@"
-; 11a70b
-
-String_11a70b: ; 11a70b
- db "えん"
- next "かかります よろしい ですか?@"
-; 11a71e
-
-String_11a71e: ; 11a71e
- db "つうしん しゅうりょう@"
-; 11a72a
-
-String_11a72a: ; 11a72a
- db "つないだ じかん"
- next " やく ふん びょう@"
-; 11a743
-
-String_11a743: ; 11a743
- db "もっていない データが"
- next "あります!@"
-; 11a755
-
-String_11a755: ; 11a755
- db "データ", $1f, "よみこみますか?@"
-; 11a762
-
-String_11a762: ; 11a762
- db "おなじ データ", $1f, "よみこんだ"
- next "こと", $4a, "ありますが@"
-; 11a779
-
-String_11a779: ; 11a779
- db "そのデータ", $24, "なくなっているか"
- next "こわれて います@"
-; 11a791
-
-String_11a791: ; 11a791
- db "もっている データと"
- next "おなじデータしか ありません!@"
-; 11a7ac
-
-String_11a7ac: ; 11a7ac
- db "データ", $25, "よみこみを"
- next "ちゅうし しますか?@"
-; 11a7c1
-
-String_11a7c1: ; 11a7c1
- db "あたらしい ニュースは"
- next "ありません でした@"
-; 11a7d7
-
-String_11a7d7: ; 11a7d7
- db "あたらしいニュース", $4a, "あります"
- next "ニュース", $1f, "よみこみますか?@"
-; 11a7f4
-
-String_11a7f4: ; 11a7f4
- db " @"
-; 11a804
-
-MenuDataHeader_11a804: ; 11a804
- db $40 ; flags
- db 0, 0 ; start coords
- db 5, 19 ; end coords
- dw NULL
- db 0 ; default option
-; 11a80c
-
-Function11a80c: ; 11a80c
- ld de, hDivisor
- ld bc, hDividend
- ld hl, Unknown_11a89a
- call Function11a88c
- ld bc, hQuotient
- ld hl, Unknown_11a8ba
- call Function11a88c
- ld bc, $ffb5
- ld hl, Unknown_11a8da
- call Function11a88c
- xor a
- ld b, a
- ld a, [hDivisor]
- and $f
- ld e, a
- ld a, [$ffb9]
- and $f
- call Function11a884
- ld e, a
- ld a, [$ffbb]
- and $f
- call Function11a884
- ld [wcd62], a
- ld e, b
- xor a
- ld b, a
- ld a, [hDivisor]
- and $f0
- swap a
- call Function11a884
- ld e, a
- ld a, [$ffb9]
- and $f0
- swap a
- call Function11a884
- ld e, a
- ld a, [$ffbb]
- and $f0
- swap a
- call Function11a884
- ld [wcd63], a
- ld e, b
- xor a
- ld b, a
- ld a, [hMathBuffer]
- and $f
- call Function11a884
- ld e, a
- ld a, [$ffba]
- and $f
- call Function11a884
- ld e, a
- ld a, [$ffbc]
- and $f
- call Function11a884
- ld [wcd64], a
- ret
-; 11a884
-
-Function11a884: ; 11a884
- add e
- cp $a
- ret c
- sub $a
- inc b
- ret
-; 11a88c
-
-Function11a88c: ; 11a88c
- ld a, [bc]
- sla a
- ld c, a
- xor a
- ld b, a
- add hl, bc
- ld a, [hli]
- ld [de], a
- inc de
- ld a, [hl]
- ld [de], a
- inc de
- ret
-; 11a89a
-
-Unknown_11a89a: ; 11a89a
-x = 0
-rept 16
- bcd x % 100, x / 100
-x = x + 1
-endr
-
-Unknown_11a8ba: ; 11a8ba
-x = 0
-rept 16
- bcd x % 100, x / 100
-x = x + 16
-endr
-
-Unknown_11a8da: ; 11a8da
-x = 0
-rept 16
- bcd x % 100, x / 100
-x = x + 256
-endr
-; 11a8fa
-
-Function11a8fa: ; 11a8fa
- ld a, [wc31a]
- ld e, a
- ld d, 0
- ld hl, Jumptable_11a909
- add hl, de
- add hl, de
- ld a, [hli]
- ld h, [hl]
- ld l, a
- jp [hl]
-; 11a909
-
-Jumptable_11a909: ; 11a909
- dw Function11a970
- dw Function11a90f
- dw Function11a971
-; 11a90f
-
-Function11a90f: ; 11a90f
- ld a, $1
- ld [rSVBK], a
- call SpeechTextBox
- ld a, $50
- ld hl, wc320
- ld bc, $008c
- call ByteFill
- ld a, [wc31b]
- ld l, a
- ld a, [wc31c]
- ld h, a
- ld de, wc320
-.asm_11a92c
- ld a, [hli]
- cp $57
- jr z, .asm_11a94f
- cp $0
- jr z, .asm_11a92c
- cp $50
- jr z, .asm_11a92c
- cp $1
- jr z, .asm_11a941
- ld [de], a
- inc de
- jr .asm_11a92c
-
-.asm_11a941
- ld a, [hli]
- ld c, a
- ld a, [hli]
- ld b, a
-.asm_11a945
- ld a, [bc]
- inc bc
- cp $50
- jr z, .asm_11a92c
- ld [de], a
- inc de
- jr .asm_11a945
-
-.asm_11a94f
- xor a
- ld [wc31f], a
- ld a, $20
- ld [wc31b], a
- ld a, $c3
- ld [wc31c], a
- hlcoord 1, 14
- ld a, l
- ld [wc31d], a
- ld a, h
- ld [wc31e], a
- ld hl, wc31a
- inc [hl]
- ld a, $3
- ld [rSVBK], a
-
-Function11a970:
- ret
-; 11a971
-
-Function11a971: ; 11a971
- ld hl, wc31f
- ld a, [hJoyDown]
- and a
- jr nz, .asm_11a97f
- ld a, [hl]
- and a
- jr z, .asm_11a97f
- dec [hl]
- ret
-
-.asm_11a97f
- ld a, [Options]
- and $7
- ld [hl], a
- ld hl, wcd8d
- ld a, [wc31b]
- ld e, a
- ld a, [wc31c]
- ld d, a
- ld a, [de]
- inc de
- ld [hli], a
- ld a, e
- ld [wc31b], a
- ld a, d
- ld [wc31c], a
- ld a, $50
- ld [hl], a
- ld a, [wc31d]
- ld l, a
- ld a, [wc31e]
- ld h, a
- ld de, wcd8d
- call PlaceString
- ld a, c
- ld [wc31d], a
- ld a, b
- ld [wc31e], a
- ld a, [wcd8d]
- cp $50
- jr nz, .asm_11a9bf
- xor a
- ld [wc31a], a
-
-.asm_11a9bf
- ret
-; 11a9c0
-
-Function11a9c0: ; 11a9c0
- ld a, l
- ld [wc31b], a
- ld a, h
- ld [wc31c], a
- ld a, $1
- ld [wc31a], a
- ret
-; 11a9ce
-
-Function11a9ce: ; 11a9ce
- call WhiteBGMap
- call Function2bae
- call Function1d7d
- callba Function106462
- callba Function106464
- call Functiond90
- callba Function2b5c
- call Function1ad2
- ret
-; 11a9f0
-
-Function11a9f0: ; 11a9f0
- ld a, $1
- and a
- ret
-; 11a9f4
-
-Function11a9f4: ; 11a9f4
- ld a, [wcd8a]
- ld l, a
- ld a, [wcd8b]
- ld h, a
- inc hl
- ld a, l
- ld [wcd8a], a
- ld a, h
- ld [wcd8b], a
- ld de, $d5d0
- add hl, de
- bit 7, h
- ret nz
- ld a, $d6
- call Function118805
- and a
- ret
-; 11aa13
-
-UnknownText_0x11aa13: ; 0x11aa13
- text "SAVE FILE will be"
- line "sent."
- done
-; 0x11aa2c
-
-UnknownText_0x11aa2c: ; 0x11aa2c
- text "Sent SAVE FILE."
- line "Reading NEWS…"
- done
-; 0x11aa4b
-
-UnknownText_0x11aa4b: ; 0x11aa4b
- text "Reading NEWS…"
- done
-; 0x11aa5a
-
-UnknownText_0x11aa5a: ; 0x11aa5a
- text "Received NEWS!"
- done
-; 0x11aa6a
-
-UnknownText_0x11aa6a: ; 0x11aa6a
- text "Quit reading NEWS?"
- done
-; 0x11aa7e
-
-UnknownText_0x11aa7e: ; 0x11aa7e
- text "Canceled sending"
- line "SAVE FILE."
- done
-; 0x11aa9b
-
-UnknownText_0x11aa9b: ; 0x11aa9b
- text "ODD EGG"
- line "was received!"
- done
-; 0x11aab2
-
-UnknownText_0x11aab2: ; 0x11aab2
- text "Registering your"
- line "record…"
- done
-; 0x11aacc
-
-UnknownText_0x11aacc: ; 0x11aacc
- text "One visit per day"
- line "per BATTLE ROOM!"
- done
-; 0x11aaf0
-
-UnknownText_0x11aaf0: ; 0x11aaf0
- text "A party #MON"
- line "tops this level."
- done
-; 0x11ab0f
-
-UnknownText_0x11ab0f: ; 0x11ab0f
- text_from_ram wcd49
- text " may go"
- line "only to BATTLE"
-
- para "ROOMS that are"
- line "Lv.70 or higher."
- done
-; 0x11ab4a
-
-UnknownText_0x11ab4a: ; 0x11ab4a
- text "Cancel your BATTLE"
- line "ROOM challenge?"
- done
-; 0x11ab6e
-
-UnknownText_0x11ab6e: ; 0x11ab6e
- text "Exit GYM LEADER"
- line "HONOR ROLL?"
- done
-; 0x11ab8b
-
-UnknownText_0x11ab8b: ; 0x11ab8b
- text "Linking with the"
- line "CENTER…"
- done
-; 0x11aba5
-
-UnknownText_0x11aba5: ; 0x11aba5
- text "What level do you"
- line "want to challenge?"
- done
-; 0x11abcb
-
-UnknownText_0x11abcb: ; 0x11abcb
- text "Check BATTLE ROOM"
- line "list by max level?"
- done
-; 0x11abf1
-
-UnknownText_0x11abf1: ; 0x11abf1
- text "Enter which"
- line "BATTLE ROOM?"
- done
-; 0x11ac0b
-
-UnknownText_0x11ac0b: ; 0x11ac0b
- text "Which BATTLE ROOM?"
- done
-; 0x11ac1f
-
-UnknownText_0x11ac1f: ; 0x11ac1f
- text_from_ram StringBuffer3
- text "'s ROOM"
- line "@"
- text_from_ram StringBuffer4
- text "?"
- cont "Please wait…"
- done
-; 0x11ac3e
-
-Function11ac3e: ; 11ac3e
- call SpeechTextBox
- call FadeToMenu
- callab Function8e814
- call Function11ac51
- call Function2b3c
- ret
-; 11ac51
-
-Function11ac51: ; 11ac51
- xor a
- ld [hBGMapMode], a
- ld hl, Options
- ld a, [hl]
- push af
- set 4, [hl]
- ld a, [VramState]
- push af
- xor a
- ld [VramState], a
- ld a, [$ffaa]
- push af
- ld a, $1
- ld [$ffaa], a
- xor a
- ld [$ffde], a
- ld [wcd49], a
- ld [wcd4a], a
- ld [wcd4c], a
- ld [wcd4d], a
- ld [wcd4e], a
- call Function11ad1b
- call DelayFrame
-.asm_11ac82
- call Functiona57
- ld a, [wcf63]
- bit 7, a
- jr nz, .asm_11aca8
- call Function11b314
- call Function11acb7
- call Function11ad6e
- ld a, $78
- ld [wc3b5], a
- callba Function8cf7a
- callba Function104061
- jr .asm_11ac82
-
-.asm_11aca8
- call ClearSprites
- pop af
- ld [$ffaa], a
- pop af
- ld [VramState], a
- pop af
- ld [Options], a
- ret
-; 11acb7
-
-Function11acb7: ; 11acb7
- ld hl, Unknown_11ba44
- ld a, [wcd49]
- ld c, a
- ld b, $0
- sla c
- rl b
- sla c
- rl b
- sla c
- rl b
- add hl, bc
- decoord 6, 6
- ld a, [hli]
- ld [de], a
- decoord 0, 7
- ld bc, $0007
- call CopyBytes
- ld a, [wcd49]
- inc a
- ld [wcd49], a
- ld a, [hl]
- cp $ff
- jr nz, .asm_11aceb
- xor a
- ld [wcd49], a
-
-.asm_11aceb
- ld hl, Unknown_11bb7d
- ld a, [wcd4a]
- ld c, a
- ld b, $0
- sla c
- rl b
- sla c
- rl b
- sla c
- rl b
- add hl, bc
- decoord 3, 9
- ld bc, $0007
- call CopyBytes
- ld a, [wcd4a]
- inc a
- ld [wcd4a], a
- inc hl
- ld a, [hl]
- cp $ff
- ret nz
- xor a
- ld [wcd4a], a
- ret
-; 11ad1b
-
-Function11ad1b: ; 11ad1b
- call WhiteBGMap
- call ClearSprites
- call ClearTileMap
- callba Function17c000
- ld a, [wcfa9]
- ld [wcd82], a
- dec a
- ld [$ffb0], a
- ld a, $10
- ld [wc3b7], a
- ld hl, Function8e83f
- ld a, BANK(Function8e83f)
- ld e, $4
- rst FarCall
- ld hl, Function8e83f
- ld a, BANK(Function8e83f)
- ld e, $5
- rst FarCall
- ld hl, $c6d0
- ld bc, $0115
- xor a
- call ByteFill
- xor a
- ld [wcf63], a
- ld [wcf64], a
- ld [wcf65], a
- ld [wcf66], a
- ld [wcd30], a
- ld a, $2
- ld [wc7d4], a
- callba Function40bdc
- ret
-; 11ad6e
-
-Function11ad6e: ; 11ad6e
- ld a, [wcf63]
- ld hl, Jumptable_11ad78
- call Function11b239
- jp [hl]
-; 11ad78
-
-Jumptable_11ad78: ; 11ad78
- dw Function11b082
- dw Function11b0ff
- dw Function11ad95
- dw Function11adc4
- dw Function11ae4e
- dw Function11ae98
- dw Function11ad8f
- dw Function11af04
- dw Function11af4e
-; 11ad8a
-
-Function11ad8a: ; 11ad8a
- ld hl, wcf63
- inc [hl]
- ret
-; 11ad8f
-
-Function11ad8f: ; 11ad8f
- ld hl, wcf63
- set 7, [hl]
- ret
-; 11ad95
-
-Function11ad95: ; 11ad95
- ld hl, MenuDataHeader_11ae38
- call LoadMenuDataHeader
- call Function1cbb
- hlcoord 12, 12
- ld de, String_11ae40
- call PlaceString
- hlcoord 10, 10, AttrMap
- ld bc, $0808
- call Function11afd6
- callba Function104061
- call Function11ad8a
- ld a, $1
- ld [wcfa9], a
- ld hl, Unknown_11afcc
- call Function11afb7
-
-Function11adc4:
- ld hl, hJoyPressed
- ld a, [hl]
- and a
- ret z
- ld a, [hl]
- and $40
- jr nz, .asm_11ade6
- ld a, [hl]
- and $80
- jr nz, .asm_11aded
- ld a, [hl]
- and $1
- jr nz, .asm_11ae06
- ld a, [hl]
- and $2
- ret z
- call PlayClickSFX
- xor a
- ld [wcf63], a
- jr .asm_11ae2e
-
-.asm_11ade6
- ld a, [wcfa9]
- dec a
- ret z
- jr .asm_11adf4
-
-.asm_11aded
- ld a, [wcfa9]
- inc a
- cp $4
- ret z
-
-.asm_11adf4
- push af
- ld hl, Unknown_11afcc
- call Function11afbb
- pop af
- ld [wcfa9], a
- ld hl, Unknown_11afcc
- call Function11afb7
- ret
-
-.asm_11ae06
- call PlayClickSFX
- ld a, [wcfa9]
- dec a
- ld hl, wcd30
- ld [hl], a
- and a
- jr z, .asm_11ae28
- hlcoord 2, 14
- ld a, [wcfa9]
- cp $2
- jr z, .asm_11ae23
- call Function11b272
- jr .asm_11ae2b
-
-.asm_11ae23
- call Function11b267
- jr .asm_11ae2b
-
-.asm_11ae28
- ld a, $3
- ld [hl], a
-
-.asm_11ae2b
- call Function11ad8a
-
-.asm_11ae2e
- call Function1c07
- callba Function104061
- ret
-; 11ae38
-
-MenuDataHeader_11ae38: ; 11ae38
- db $40 ; flags
- db 10, 10 ; start coords
- db 17, 17 ; end coords
- dw NULL
- db 0 ; default option
-; 11ae40
-
-String_11ae40: ; 11ae40
- db "どちらでも"
- next "♂ォス"
- next "♀メス"
- db "@"
-; 11ae4e
-
-Function11ae4e: ; 11ae4e
- ld hl, MenuDataHeader_11afe8
- call LoadMenuDataHeader
- call Function1cbb
- hlcoord 10, 14
- ld de, String_11aff0
- call PlaceString
- ld hl, MenuDataHeader_11b013
- call LoadMenuDataHeader
- call Function1cbb
- hlcoord 16, 8
- ld de, String_11b01b
- call PlaceString
- hlcoord 14, 7, AttrMap
- lb bc, 5, 6
- call Function11afd6
- hlcoord 9, 12, AttrMap
- lb bc, 6, 11
- call Function11afd6
- callba Function104061
- call Function11ad8a
- ld a, $1
- ld [wcfa9], a
- ld hl, Unknown_11afd2
- call Function11afb7
-
-Function11ae98:
- ld hl, hJoyPressed
- ld a, [hl]
- and a
- ret z
- ld a, [hl]
- and D_UP
- jr nz, .asm_11aec1
- ld a, [hl]
- and D_DOWN
- jr nz, .asm_11aec8
- ld a, [hl]
- and A_BUTTON
- jr nz, .asm_11aee1
- ld a, [hl]
- and B_BUTTON
- ret z
- call PlayClickSFX
-.asm_11aeb4
- hlcoord 2, 14
- ld a, $7f
- ld [hl], a
- ld a, $1
- ld [wcf63], a
- jr .asm_11aef7
-
-.asm_11aec1
- ld a, [wcfa9]
- dec a
- ret z
- jr .asm_11aecf
-
-.asm_11aec8
- ld a, [wcfa9]
- inc a
- cp $3
- ret z
-
-.asm_11aecf
- push af
- ld hl, Unknown_11afd2
- call Function11afbb
- pop af
- ld [wcfa9], a
- ld hl, Unknown_11afd2
- call Function11afb7
- ret
-
-.asm_11aee1
- call PlayClickSFX
- ld a, [wcfa9]
- cp $2
- jr z, .asm_11aeb4
- ld a, [wcd4b]
- ld [ScriptVar], a
- call Function11b022
- call Function11ad8a
-
-.asm_11aef7
- call Function1c07
- call Function1c07
- callba Function104061
- ret
-; 11af04
-
-Function11af04: ; 11af04
- ld hl, MenuDataHeader_11afe8
- call LoadMenuDataHeader
- call Function1cbb
- hlcoord 10, 14
- ld de, String_11b003
- call PlaceString
- ld hl, MenuDataHeader_11b013
- call LoadMenuDataHeader
- call Function1cbb
- hlcoord 16, 8
- ld de, String_11b01b
- call PlaceString
- hlcoord 14, 7, AttrMap
- lb bc, 5, 6
- call Function11afd6
- hlcoord 9, 12, AttrMap
- lb bc, 6, 11
- call Function11afd6
- callba Function104061
- call Function11ad8a
- ld a, $2
- ld [wcfa9], a
- ld hl, Unknown_11afd2
- call Function11afb7
-
-Function11af4e:
- ld hl, hJoyPressed
- ld a, [hl]
- and a
- ret z
- ld a, [hl]
- and D_UP
- jr nz, .asm_11af77
- ld a, [hl]
- and D_DOWN
- jr nz, .asm_11af7e
- ld a, [hl]
- and A_BUTTON
- jr nz, .asm_11af97
- ld a, [hl]
- and B_BUTTON
- ret z
- call PlayClickSFX
-.asm_11af6a
- hlcoord 2, 14
- ld a, $7f
- ld [hl], a
- ld a, $1
- ld [wcf63], a
- jr .asm_11afaa
-
-.asm_11af77
- ld a, [wcfa9]
- dec a
- ret z
- jr .asm_11af85
-
-.asm_11af7e
- ld a, [wcfa9]
- inc a
- cp $3
- ret z
-
-.asm_11af85
- push af
- ld hl, Unknown_11afd2
- call Function11afbb
- pop af
- ld [wcfa9], a
- ld hl, Unknown_11afd2
- call Function11afb7
- ret
-
-.asm_11af97
- call PlayClickSFX
- ld a, [wcfa9]
- cp $2
- jr z, .asm_11af6a
- ld a, $6
- ld [wcf63], a
- xor a
- ld [ScriptVar], a
-
-.asm_11afaa
- call Function1c07
- call Function1c07
- callba Function104061
- ret
-; 11afb7
-
-Function11afb7: ; 11afb7
- ld e, $ed
- jr asm_11afbd
-
-Function11afbb:
- ld e, $7f
-
-asm_11afbd:
- ld a, [wcfa9]
- dec a
- ld c, a
- ld b, 0
- add hl, bc
- add hl, bc
- ld a, e
- ld e, [hl]
- inc hl
- ld d, [hl]
- ld [de], a
- ret
-; 11afcc
-
-Unknown_11afcc:
- dwcoord 11, 12
- dwcoord 11, 14
- dwcoord 11, 16
-
-Unknown_11afd2:
- dwcoord 15, 8
- dwcoord 15, 10
-; 11afd6
-
-Function11afd6: ; 11afd6
- ld de, $0014
- ld a, $3
-.asm_11afdb
- push bc
- push hl
-.asm_11afdd
- ld [hli], a
- dec c
- jr nz, .asm_11afdd
- pop hl
- add hl, de
- pop bc
- dec b
- jr nz, .asm_11afdb
- ret
-; 11afe8
-
-MenuDataHeader_11afe8: ; 11afe8
- db $40 ; flags
- db 12, 9 ; start coords
- db 17, 19 ; end coords
- dw NULL
- db 0 ; default option
-; 11aff0
-
-String_11aff0: ; 11aff0
- db "この じょうけんで"
- next "よろしいですか?@"
-; 11b003
-
-String_11b003: ; 11b003
- db "こうかんを"
- next "ちゅうししますか?@"
-; 11b013
-
-MenuDataHeader_11b013: ; 11b013
- db $40 ; flags
- db 7, 14 ; start coords
- db 11, 19 ; end coords
- dw NULL
- db 1 ; default option
-; 11b01b
-
-String_11b01b:
- db "はい"
- next "いいえ@"
-; 11b022
-
-Function11b022: ; 11b022
- ld a, [wcd2e]
- and a
- jr z, .asm_11b02e
- ld hl, StringBuffer3
- call Function11b03d
-
-.asm_11b02e
- ld a, [wcd30]
- and a
- ret z
- cp $3
- ret z
- ld hl, StringBuffer4
- call Function11b03d
- ret
-; 11b03d
-
-Function11b03d: ; 11b03d
- push hl
- push af
- ld c, $1
-.asm_11b041
- ld a, [hli]
- cp $ef
- jr z, .asm_11b051
- cp $f5
- jr z, .asm_11b051
- cp $50
- jr z, .asm_11b055
- inc c
- jr .asm_11b041
-
-.asm_11b051
- dec hl
- ld a, $50
- ld [hli], a
-
-.asm_11b055
- dec hl
- push hl
- ld e, $4
- ld d, $0
- add hl, de
- ld e, l
- ld d, h
- pop hl
-.asm_11b05f
- ld a, [hld]
- ld [de], a
- dec de
- dec c
- jr nz, .asm_11b05f
- pop af
- pop de
- cp $1
- jr nz, .asm_11b070
- ld hl, String_11b07a
- jr .asm_11b073
-
-.asm_11b070
- ld hl, String_11b07e
-
-.asm_11b073
- ld bc, 4
- call CopyBytes
- ret
-; 11b07a
-
-String_11b07a: db "ォスの "
-String_11b07e: db "メスの "
-
-Function11b082: ; 11b082
- call Function11b242
- ld a, $7
- ld [wc7d3], a
- call Function11b099
- call Function11b295
- call Function11b275
- call Function32f9
- jp Function11ad8a
-; 11b099
-
-Function11b099: ; 11b099
- ld c, $6
- hlcoord 11, 1
- ld a, [wc7d3]
- add a
- ld b, a
- xor a
- call Function11b236
- ld a, [wc7d0]
- ld e, a
- ld d, $0
- ld hl, $c6d0
- add hl, de
- ld e, l
- ld d, h
- hlcoord 11, 2
- ld a, [wc7d3]
-.asm_11b0b9
- push af
- ld a, [de]
- ld [wd265], a
- push de
- push hl
- call Function11b0cf
- pop hl
- ld de, $0028
- add hl, de
- pop de
- inc de
- pop af
- dec a
- jr nz, .asm_11b0b9
- ret
-; 11b0cf
-
-Function11b0cf: ; 11b0cf
- and a
- ret z
- call Function11b0ec
- ret c
- call Function11b0e1
- push hl
- call GetPokemonName
- pop hl
- call PlaceString
- ret
-; 11b0e1
-
-Function11b0e1: ; 11b0e1
- call Function11b21e
- jr nz, .asm_11b0e8
- inc hl
- ret
-
-.asm_11b0e8
- ld a, $1
- ld [hli], a
- ret
-; 11b0ec
-
-Function11b0ec: ; 11b0ec
- call Function11b22a
- ret nz
- inc hl
- ld de, String_11b0f9
- call PlaceString
- scf
- ret
-; 11b0f9
-
-String_11b0f9: ; 11b0f9
- db "ーーーーー@"
-; 11b0ff
-
-Function11b0ff: ; 11b0ff
- ld hl, hJoyPressed
- ld a, [hl]
- and $2
- jr nz, .asm_11b141
- ld a, [hl]
- and $1
- jr nz, .asm_11b131
- call Function11b175
- jr nc, .asm_11b125
- ld a, [wcd4c]
- inc a
- and $3
- ld [wcd4c], a
- xor a
- ld [hBGMapMode], a
- call Function11b099
- ld a, $1
- ld [hBGMapMode], a
- ret
-
-.asm_11b125
- ld a, [wcd4c]
- and a
- ret z
- inc a
- and $3
- ld [wcd4c], a
- ret
-
-.asm_11b131
- call Function11b20b
- call Function11b22a
- jr z, .asm_11b13d
- ld a, $1
- jr .asm_11b148
-
-.asm_11b13d
- ld a, $2
- jr .asm_11b148
-
-.asm_11b141
- ld hl, wcf63
- ld a, $7
- ld [hl], a
- ret
-
-.asm_11b148
- call PlayClickSFX
- ld [wcd4b], a
- and a
- jr z, .asm_11b16c
- ld a, [wcf65]
- cp $0
- jr z, .asm_11b163
- cp $fe
- jr z, .asm_11b167
- cp $ff
- jr z, .asm_11b16b
- jp Function11ad8a
-
-.asm_11b163
- ld a, $1
- jr .asm_11b16c
-
-.asm_11b167
- ld a, $2
- jr .asm_11b16c
-
-.asm_11b16b
- xor a
-
-.asm_11b16c
- ld [wcd30], a
- ld a, $4
- ld [wcf63], a
- ret
-; 11b175
-
-Function11b175: ; 11b175
- ld a, [wc7d3]
- ld d, a
- ld a, [wc7d2]
- ld e, a
- ld hl, $ffa9
- ld a, [hl]
- and $40
- jr nz, .asm_11b19a
- ld a, [hl]
- and $80
- jr nz, .asm_11b1ae
- ld a, d
- cp e
- jr nc, .asm_11b1ed
- ld a, [hl]
- and $20
- jr nz, .asm_11b1c6
- ld a, [hl]
- and $10
- jr nz, .asm_11b1d8
- jr .asm_11b1ed
-
-.asm_11b19a
- ld hl, wc7d1
- ld a, [hl]
- and a
- jr z, .asm_11b1a4
- dec [hl]
- jr .asm_11b1ef
-
-.asm_11b1a4
- ld hl, wc7d0
- ld a, [hl]
- and a
- jr z, .asm_11b1ed
- dec [hl]
- jr .asm_11b1ef
-
-.asm_11b1ae
- ld hl, wc7d1
- ld a, [hl]
- inc a
- cp e
- jr nc, .asm_11b1ed
- cp d
- jr nc, .asm_11b1bc
- inc [hl]
- jr .asm_11b1ef
-
-.asm_11b1bc
- ld hl, wc7d0
- add [hl]
- cp e
- jr nc, .asm_11b1ed
- inc [hl]
- jr .asm_11b1ef
-
-.asm_11b1c6
- ld hl, wc7d0
- ld a, [hl]
- and a
- jr z, .asm_11b1ed
- cp d
- jr nc, .asm_11b1d4
- xor a
- ld [hl], a
- jr .asm_11b1ef
-
-.asm_11b1d4
- sub d
- ld [hl], a
- jr .asm_11b1ef
-
-.asm_11b1d8
- ld hl, wc7d0
- ld a, d
- add a
- add [hl]
- jr c, .asm_11b1e3
- cp e
- jr c, .asm_11b1e8
-
-.asm_11b1e3
- ld a, e
- sub d
- ld [hl], a
- jr .asm_11b1ef
-
-.asm_11b1e8
- ld a, [hl]
- add d
- ld [hl], a
- jr .asm_11b1ef
-
-.asm_11b1ed
- and a
- ret
-
-.asm_11b1ef
- call Function11b295
- call Function11b275
- scf
- ret
-; 11b1f7
-
-Function11b1f7: ; 11b1f7
- ld hl, TileMap
- ld a, $32
- ld bc, $0168
- call ByteFill
- ret
-; 11b203
-
-Function11b203: ; 11b203
-.asm_11b203
- ld a, [de]
- cp $ff
- ret z
- inc de
- ld [hli], a
- jr .asm_11b203
-; 11b20b
-
-Function11b20b: ; 11b20b
- ld a, [wc7d1]
- ld hl, wc7d0
- add [hl]
- ld e, a
- ld d, $0
- ld hl, $c6d0
- add hl, de
- ld a, [hl]
- ld [wd265], a
- ret
-; 11b21e
-
-Function11b21e: ; 11b21e
- push de
- push hl
- ld a, [wd265]
- dec a
- call CheckCaughtMon
- pop hl
- pop de
- ret
-; 11b22a
-
-Function11b22a: ; 11b22a
- push de
- push hl
- ld a, [wd265]
- dec a
- call CheckSeenMon
- pop hl
- pop de
- ret
-; 11b236
-
-Function11b236: ; 11b236
- jp Functionfb8
-; 11b239
-
-Function11b239: ; 11b239
- ld e, a
- ld d, 0
- add hl, de
- add hl, de
- ld a, [hli]
- ld h, [hl]
- ld l, a
- ret
-; 11b242
-
-Function11b242: ; 11b242
- hlcoord 3, 4
- ld de, StringBuffer3
- call PlaceString
- xor a
- ld [MonType], a
- callba GetGender
- hlcoord 1, 4
- ld a, [CurPartySpecies]
- ld bc, wcd2f
- ld [bc], a
- dec bc
- jr c, asm_11b26a
- jr z, asm_11b26f
- ld a, $1
- ld [bc], a
-
-Function11b267:
- ld [hl], $ef
- ret
-
-asm_11b26a
- xor a
- ld [bc], a
- ld [hl], $7f
- ret
-
-asm_11b26f
- ld a, $2
- ld [bc], a
-
-Function11b272:
- ld [hl], $f5
- ret
-; 11b275
-
-Function11b275: ; 11b275
- call Function11b279
- ret
-; 11b279
-
-Function11b279: ; 11b279
- ld a, [wd265]
- ld [CurSpecies], a
- call Function11b22a
- jr z, .asm_11b28f
- call GetBaseData
- ld a, [BaseGender]
- ld [wcf65], a
- jr .asm_11b294
-
-.asm_11b28f
- ld a, $ff
- ld [wcf65], a
-
-.asm_11b294
- ret
-; 11b295
-
-Function11b295: ; 11b295
- hlcoord 4, 13
- ld de, String_11b308
- call PlaceString
- hlcoord 4, 14
- ld de, String_11b308
- call PlaceString
- call Function11b20b
- call Function11b22a
- jr z, .asm_11b2d1
- ld a, [$c608]
- ld c, a
- ld a, [$c608 + 1]
- ld b, a
- ld hl, $0007
- add hl, bc
- xor a
- ld [hl], a
- ld hl, $0003
- add hl, bc
- ld e, [hl]
- callba Function8e9bc
- hlcoord 4, 14
- push hl
- call GetPokemonName
- jr .asm_11b2e7
-
-.asm_11b2d1
- ld a, [$c608]
- ld c, a
- ld a, [$c608 + 1]
- ld b, a
- ld hl, $0007
- add hl, bc
- ld a, $50
- ld [hl], a
- hlcoord 4, 13
- push hl
- ld de, String_11b30e
-
-.asm_11b2e7
- ld a, $6
- ld bc, StringBuffer4
-.asm_11b2ec
- push af
- ld a, [de]
- ld [bc], a
- inc de
- inc bc
- pop af
- dec a
- and a
- jr nz, .asm_11b2ec
- pop hl
- ld de, StringBuffer4
- call PlaceString
- ret
-; 11b2fe
-
-String_11b2fe: ; 11b2fe
- db "あげる#@"
-; 11b303
-
-String_11b303: ; 11b303
- db "ほしい#@"
-; 11b308
-
-String_11b308: ; 11b308
- db " @"
-; 11b30e
-
-String_11b30e: ; 11b30e
- db "みはっけん@"
-; 11b314
-
-Function11b314: ; 11b314
- call Function11b31b
- call Function11b3d9
- ret
-; 11b31b
-
-Function11b31b: ; 11b31b
- ld hl, Unknown_11b350
- ld a, [wcf63]
- cp $2
- jr c, .asm_11b349
- ld a, [wc7d1]
- cp $4
- jr nc, .asm_11b344
- cp $3
- jr c, .asm_11b349
- ld a, [wcf63]
- cp $2
- jr z, .asm_11b349
- cp $3
- jr z, .asm_11b349
- cp $6
- jr z, .asm_11b349
-
- ld bc, Unknown_11b37b
- jr .asm_11b34c
-
-.asm_11b344
- ld bc, Unknown_11b389
- jr .asm_11b34c
-
-.asm_11b349
- ld bc, Unknown_11b36d
-
-.asm_11b34c
- call Function11b397
- ret
-; 11b350
-
-Unknown_11b350:
-INCBIN "baserom.gbc",$11b350,$11b36d - $11b350
-
-Unknown_11b36d:
-INCBIN "baserom.gbc",$11b36d,$11b37b - $11b36d
-Unknown_11b37b:
-INCBIN "baserom.gbc",$11b37b,$11b389 - $11b37b
-Unknown_11b389:
-INCBIN "baserom.gbc",$11b389,$11b397 - $11b389
-
-Function11b397: ; 11b397
- ld de, Sprites
-.asm_11b39a
- ld a, [hl]
- cp $ff
- ret z
- ld a, [wc7d1]
- and $7
- swap a
- add [hl]
- inc hl
- ld [de], a
- inc de
- ld a, [hli]
- ld [de], a
- inc de
- ld a, [bc]
- inc bc
- ld [de], a
- inc de
- ld a, $5
- ld [de], a
- inc de
- jr .asm_11b39a
-; 11b3b6
-
-Function11b3b6: ; 11b3b6
-.asm_11b3b6
- ld a, [hl]
- cp $ff
- ret z
- ld a, [wcd4d]
- and $7
- swap a
- add [hl]
- inc hl
- ld [de], a
- inc de
- ld a, [hli]
- ld [de], a
- inc de
- push hl
- ld l, c
- ld h, b
- ld a, [wcd4e]
- add [hl]
- inc bc
- ld [de], a
- inc de
- pop hl
- ld a, $5
- ld [de], a
- inc de
- jr .asm_11b3b6
-; 11b3d9
-
-Function11b3d9: ; 11b3d9
- ld de, Sprites + $70
- push de
- ld a, [wc7d2]
- dec a
- ld e, a
- ld a, [wc7d1]
- ld hl, wc7d0
- add [hl]
- cp e
- jr z, .asm_11b40d
- ld hl, $0000
- ld bc, $0070
- call AddNTimes
- ld e, l
- ld d, h
- ld b, $0
- ld a, d
- or e
- jr z, .asm_11b40f
- ld a, [wc7d2]
- ld c, a
-.asm_11b401
- ld a, e
- sub c
- ld e, a
- ld a, d
- sbc $0
- ld d, a
- jr c, .asm_11b40f
- inc b
- jr .asm_11b401
-
-.asm_11b40d
- ld b, $70
-
-.asm_11b40f
- ld a, $15
- add b
- pop hl
- ld [hli], a
- cp $41
- jr c, .asm_11b42b
- ld a, [wcf63]
- cp $4
- jr z, .asm_11b43b
- cp $5
- jr z, .asm_11b43b
- cp $7
- jr z, .asm_11b43b
- cp $8
- jr z, .asm_11b43b
-
-.asm_11b42b
- ld a, $9b
- ld [hli], a
- ld a, [wcd4c]
- add $3c
- ld [hli], a
- ld a, [wcd4c]
- add $1
- ld [hl], a
- ret
-
-.asm_11b43b
- ld a, $9b
- ld [hli], a
- ld a, $39
- ld [hli], a
- xor a
- ld [hl], a
- ret
-; 11b444
-
-Function11b444: ; 11b444
- call Function11b44b
- call Function11b45c
- ret
-; 11b44b
-
-Function11b44b: ; 11b44b
- xor a
- ld [wcf63], a
- ld [wcf64], a
- ld [wcf65], a
- ld [wcf66], a
- call UpdateTime
- ret
-; 11b45c
-
-Function11b45c: ; 11b45c
-.asm_11b45c
- call Function11b46a
- call DelayFrame
- ld a, [wcf63]
- cp $4
- jr nz, .asm_11b45c
- ret
-; 11b46a
-
-Function11b46a: ; 11b46a
- ld a, [wcf63]
- ld e, a
- ld d, 0
- ld hl, Jumptable_11b479
- add hl, de
- add hl, de
- ld a, [hli]
- ld h, [hl]
- ld l, a
- jp [hl]
-; 11b479
-
-Jumptable_11b479: ; 11b479
- dw Function11b483
- dw Function11b570
- dw Function11b5c0
- dw Function11b5e0
- dw Function11b5e7
-; 11b483
-
-Function11b483: ; 11b483
- call Function11b538
- ld hl, PlayerName
- ld a, $5
-.asm_11b48b
- push af
- ld a, [hli]
- ld [bc], a
- inc bc
- pop af
- dec a
- and a
- jr nz, .asm_11b48b
- ld de, $0030
- ld hl, PartyMon1Species
- ld a, [wcd82]
- dec a
- push af
-.asm_11b49f
- and a
- jr z, .asm_11b4a6
- add hl, de
- dec a
- jr .asm_11b49f
-
-.asm_11b4a6
- push bc
- ld a, $30
-.asm_11b4a9
- push af
- ld a, [hli]
- ld [bc], a
- inc bc
- pop af
- dec a
- and a
- jr nz, .asm_11b4a9
- pop de
- push bc
- ld a, [de]
- ld [CurSpecies], a
- call GetBaseData
- ld hl, $001f
- add hl, de
- ld a, [hl]
- ld [CurPartyLevel], a
- ld hl, $0024
- add hl, de
- push hl
- ld hl, $000a
- add hl, de
- pop de
- push de
- ld b, $1
- predef Functione167
- pop de
- ld h, d
- ld l, e
- dec hl
- dec hl
- ld a, [de]
- ld [hli], a
- inc de
- ld a, [de]
- ld [hl], a
- pop bc
- ld de, $000b
- ld hl, PartyMonOT
- pop af
- push af
-.asm_11b4e8
- and a
- jr z, .asm_11b4ef
- add hl, de
- dec a
- jr .asm_11b4e8
-
-.asm_11b4ef
- ld a, $a
-.asm_11b4f1
- push af
- ld a, [hli]
- ld [bc], a
- inc bc
- pop af
- dec a
- and a
- jr nz, .asm_11b4f1
- ld de, $000b
- ld hl, PartyMonNicknames
- pop af
- push af
-.asm_11b502
- and a
- jr z, .asm_11b509
- add hl, de
- dec a
- jr .asm_11b502
-
-.asm_11b509
- ld a, $a
-.asm_11b50b
- push af
- ld a, [hli]
- ld [bc], a
- inc bc
- pop af
- dec a
- and a
- jr nz, .asm_11b50b
- ld de, $002f
- ld hl, $a600
- pop af
-.asm_11b51b
- and a
- jr z, .asm_11b522
- add hl, de
- dec a
- jr .asm_11b51b
-
-.asm_11b522
- ld a, $0
- call GetSRAMBank
- ld a, $2f
-.asm_11b529
- push af
- ld a, [hli]
- ld [bc], a
- inc bc
- pop af
- dec a
- and a
- jr nz, .asm_11b529
- call CloseSRAM
- jp Function11ad8a
-; 11b538
-
-Function11b538: ; 11b538
- ld bc, BattleMonNick + 5
- ld a, [PlayerID]
- ld [wcd2a], a
- ld [bc], a
- inc bc
- ld a, [PlayerID + 1]
- ld [wcd2b], a
- ld [bc], a
- inc bc
- ld a, [wd84a]
- ld [wcd2c], a
- ld [bc], a
- inc bc
- ld a, [wd84b]
- ld [wcd2d], a
- ld [bc], a
- inc bc
- ld a, [wcd2e]
- ld [bc], a
- inc bc
- ld a, [wcd2f]
- ld [bc], a
- inc bc
- ld a, [wcd30]
- ld [bc], a
- inc bc
- ld a, [wd265]
- ld [bc], a
- inc bc
- ret
-; 11b570
-
-Function11b570: ; 11b570
- call Function118007
- ld a, [ScriptVar]
- and a
- jr nz, .asm_11b57f
- call Function11b585
- jp Function11ad8a
-
-.asm_11b57f
- ld a, $4
- ld [wcf63], a
- ret
-; 11b585
-
-Function11b585: ; 11b585
- ld a, $3
- ld [rSVBK], a
- ld hl, $d800
- ld de, $c608
- ld bc, $008f
- call CopyBytes
- ld a, $1
- ld [rSVBK], a
- ld a, $5
- call GetSRAMBank
- ld de, $a800
- ld a, $1
- ld [de], a
- inc de
- ld hl, $c608
- ld bc, $008f
- call CopyBytes
- push de
- pop hl
- ld a, [hRTCMinutes]
- ld [hli], a
- ld a, [hRTCHours]
- ld [hli], a
- ld a, [hRTCDayLo]
- ld [hli], a
- ld a, [hRTCDayHi]
- ld [hl], a
- call CloseSRAM
- ret
-; 11b5c0
-
-Function11b5c0: ; 11b5c0
- ld a, [wcd82]
- dec a
- ld [CurPartyMon], a
- xor a
- ld [wd10b], a
- callba Functione039
- callba Function170807
- callba Function14a58
- jp Function11ad8a
-; 11b5e0
-
-Function11b5e0: ; 11b5e0
- xor a
- ld [ScriptVar], a
- jp Function11ad8a
-; 11b5e7
-
-Function11b5e7: ; 11b5e7
- ret
-; 11b5e8
-
-Function11b5e8: ; 11b5e8
- 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, $c608
- ld de, $b08c
- ld bc, $0004
- call CopyBytes
- ld a, $2
- ld [$a800], a
- ld a, [$a81f]
- ld [wcd2a], a
- ld a, [$a820]
- ld [wcd2b], a
- ld a, [$a821]
- ld [wcd2c], a
- ld a, [$a822]
- ld [wcd2d], a
- ld a, [$a823]
- ld [wcd2e], a
- ld a, [$a824]
- ld [wcd2f], a
- ld a, [$a825]
- ld [wcd30], a
- ld a, [$a826]
- ld [wcd31], a
- call CloseSRAM
- call Function11b44b
- call Function11b64c
- ret
-; 11b64c
-
-Function11b64c: ; 11b64c
-.asm_11b64c
- call Function11b65a
- call DelayFrame
- ld a, [wcf63]
- cp $1
- jr nz, .asm_11b64c
- ret
-; 11b65a
-
-Function11b65a: ; 11b65a
- ld a, [wcf63]
- ld e, a
- ld d, 0
- ld hl, Jumptable_11b669
- add hl, de
- add hl, de
- ld a, [hli]
- ld h, [hl]
- ld l, a
- jp [hl]
-; 11b669
-
-Jumptable_11b669: ; 11b669
- dw Function11b66d
- dw Function11b6b3
-; 11b66d
-
-Function11b66d: ; 11b66d
- call Function1180b8
- ld a, [ScriptVar]
- and a
- jr nz, .asm_11b6b0
- ld a, [rSVBK]
- push af
- ld a, $3
- ld [rSVBK], a
- ld a, [StringBuffer2 + 10]
- ld b, a
- pop af
- ld [rSVBK], a
- ld a, b
- and a
- jr z, .asm_11b691
- cp $1
- jr nz, .asm_11b6b0
- call Function11b6b4
- jr .asm_11b6b0
-
-.asm_11b691
- callba Function17081d
- ld a, [ScriptVar]
- and a
- jr z, .asm_11b6b0
- xor a
- ld [ScriptVar], a
- ld a, [rSVBK]
- push af
- ld a, $3
- ld [rSVBK], a
- ld a, $2
- ld [StringBuffer2 + 10], a
- pop af
- ld [rSVBK], a
-
-.asm_11b6b0
- jp Function11ad8a
-; 11b6b3
-
-Function11b6b3: ; 11b6b3
- ret
-; 11b6b4
-
-Function11b6b4: ; 11b6b4
- ld a, $5
- call GetSRAMBank
- ld a, [wcd30]
- ld [wc708], a
- ld a, [wcd31]
- ld [wc709], a
- ld a, $8
- ld [BGMapBuffer], a
- ld a, $c7
- ld [wcd21], a
- ld a, $d
- ld [CreditsTimer], a
- ld a, $c6
- ld [wcd23], a
- ld a, $3d
- ld [wcd24], a
- ld a, $c6
- ld [wcd25], a
- ld a, $42
- ld [wcd26], a
- ld a, $c6
- ld [wcd27], a
- ld a, $47
- ld [wcd28], a
- ld a, $c6
- ld [wcd29], a
- ld a, $46
- ld [$c628], a
- ld de, $c63d
- ld c, $5
- callba Function17d073
- jr nc, .asm_11b70f
- callba Function17d187
-
-.asm_11b70f
- ld de, $c63d
- ld bc, $0105
- callba Function17d1e1
- jr nc, .asm_11b723
- callba Function17d187
-
-.asm_11b723
- ld de, $c642
- ld c, $5
- callba Function17d073
- jr nc, .asm_11b736
- callba Function17d199
-
-.asm_11b736
- ld de, $c642
- ld bc, $0105
- callba Function17d1e1
- jr nc, .asm_11b74a
- callba Function17d199
-
-.asm_11b74a
- ld de, $c647
- ld c, $21
- callba Function17d073
- jr nc, .asm_11b75d
- callba Function17d1ab
-
-.asm_11b75d
- ld de, $c647
- ld bc, $0221
- callba Function17d1e1
- jr c, .asm_11b770
- ld a, b
- cp $2
- jr nz, .asm_11b776
-
-.asm_11b770
- callba Function17d1ab
-
-.asm_11b776
- ld de, $c668
- ld c, $5
- callba Function17d073
- jr nc, .asm_11b789
- callba Function17d1c9
-
-.asm_11b789
- ld de, $c668
- ld bc, $0105
- callba Function17d1e1
- jr nc, .asm_11b79d
- callba Function17d1c9
-
-.asm_11b79d
- ld a, [$c608 + 6]
- cp $ff
- jr nz, .asm_11b7a8
- xor a
- ld [$c608 + 6], a
-
-.asm_11b7a8
- ld a, [wcd31]
- ld [$c608 + 5], a
- ld [CurSpecies], a
- call GetBaseData
-
- ld hl, $c62c
- ld a, [hl]
- cp MIN_LEVEL
- ld a, MIN_LEVEL
- jr c, .asm_11b7c5
- ld a, [hl]
- cp MAX_LEVEL
- jr c, .asm_11b7c6
- ld a, MAX_LEVEL
-.asm_11b7c5
- ld [hl], a
-.asm_11b7c6
- ld [CurPartyLevel], a
-
- ld hl, $c616 + 1
- ld de, $c62c + 5
- ld b, $1
- predef Functione167
- ld de, $c62c + 5
- ld hl, $c62c + 3
- ld a, [de]
- ld [hli], a
- inc de
- ld a, [de]
- ld [hl], a
- call Function11b98f
- ret
-; 11b7e5
-
-Function11b7e5: ; 11b7e5
- ld a, [$c608 + 5]
- ld [wc702], a
- ld [CurPartySpecies], a
- ld a, [wcd81]
- ld [wc74e], a
- ld hl, $c63d
- ld de, wc724
- ld bc, $0005
- call CopyBytes
- ld a, $50
- ld [de], a
- ld a, [$c608 + 11]
- ld [wc731], a
- ld a, [$c608 + 12]
- ld [wc732], a
- ld hl, $c608 + 26
- ld a, [hli]
- ld [wc72f], a
- ld a, [hl]
- ld [wc730], a
- ld bc, $c608 + 5
- callba GetCaughtGender
- ld a, c
- ld [wc733], a
- call SpeechTextBox
- call FadeToMenu
- callba Function108016
- callba Function17d1f1
- ld a, $1
- ld [wd1e9], a
- ld a, $2
- ld [InLinkBattle], a
- callba Function421d8
- xor a
- ld [InLinkBattle], a
- callba Function14a58
- ld a, $5
- call GetSRAMBank
- ld a, $5
- ld [$a800], a
- call CloseSRAM
- ld a, [MapGroup]
- ld b, a
- ld a, [MapNumber]
- ld c, a
- call GetMapTrigger
- ld a, d
- or e
- jr z, .asm_11b872
- ld a, $1
- ld [de], a
-
-.asm_11b872
- call Function2b3c
- call RestartMapMusic
- ret
-; 11b879
-
-Function11b879: ; 11b879
- callba Function17089a
- ld a, [ScriptVar]
- and a
- ret z
- ld a, $5
- call GetSRAMBank
- ld a, [$a800]
- ld [ScriptVar], a
- ld a, [$a890]
- ld [wcd49], a
- ld a, [$a891]
- ld [wcd4a], a
- ld a, [$a892]
- ld [wcd4b], a
- ld a, [$a893]
- ld [wcd4c], a
- call CloseSRAM
- ld a, [ScriptVar]
- and a
- ret z
- ld hl, wcd4c
- ld a, [hRTCDayHi]
- cp [hl]
- ret nz
- dec hl
- ld a, [hRTCDayLo]
- cp [hl]
- ret nz
- ld hl, wcd4a
- ld a, [hRTCHours]
- cp [hl]
- jr nc, .asm_11b8d8
- ld a, $18
- sub [hl]
- ld hl, hRTCHours
- add [hl]
- ld [wcd4c], a
- ld a, [hRTCMinutes]
- ld [wcd4b], a
- xor a
- ld [wcd4a], a
- jr .asm_11b8e2
-
-.asm_11b8d8
- ld a, [hRTCMinutes]
- ld [wcd4b], a
- ld a, [hRTCHours]
- ld [wcd4c], a
-
-.asm_11b8e2
- xor a
- ld l, a
- ld h, a
- ld b, a
- ld d, a
- ld a, [wcd4b]
- ld e, a
- ld a, [wcd4c]
- ld c, $3c
- call AddNTimes
- add hl, de
- push hl
- xor a
- ld l, a
- ld h, a
- ld b, a
- ld d, a
- ld a, [wcd49]
- ld e, a
- ld a, [wcd4a]
- ld c, $3c
- call AddNTimes
- add hl, de
- ld a, l
- cpl
- add $1
- ld e, a
- ld a, h
- cpl
- adc $0
- ld d, a
- pop hl
- add hl, de
- ld de, $ff88
- add hl, de
- bit 7, h
- ret z
- ld a, $2
- ld [ScriptVar], a
- ret
-; 11b920
-
-Function11b920: ; 11b920
- call Function11b44b
- ld a, $5
- call GetSRAMBank
- ld hl, $a81f
- ld de, BattleMonNick + 5
- ld bc, $0008
- call CopyBytes
- call CloseSRAM
- call Function118000
- ret
-; 11b93b
-
-Function11b93b: ; 11b93b
- ld a, $5
- call GetSRAMBank
- xor a
- ld [$a800], a
- ld hl, $a823
- ld de, $c608
- ld bc, $008f
- call CopyBytes
- call CloseSRAM
- ld a, $8
- ld [BGMapBuffer], a
- ld a, $c6
- ld [wcd21], a
- ld a, $11
- ld [CreditsTimer], a
- ld a, $c6
- ld [wcd23], a
- ld a, $41
- ld [wcd24], a
- ld a, $c6
- ld [wcd25], a
- ld a, $46
- ld [wcd26], a
- ld a, $c6
- ld [wcd27], a
- ld a, $4b
- ld [wcd28], a
- ld a, $c6
- ld [wcd29], a
- call Function11b98f
- callba Function14a58
- ret
-; 11b98f
-
-Function11b98f: ; 11b98f
- ld hl, PartyCount
- ld a, [hl]
- ld e, a
- inc [hl]
- ld a, [BGMapBuffer]
- ld l, a
- ld a, [wcd21]
- ld h, a
- inc hl
- ld bc, PartySpecies
- ld d, e
-.asm_11b9a2
- inc bc
- dec d
- jr nz, .asm_11b9a2
- ld a, e
- ld [CurPartyMon], a
- ld a, [hl]
- ld [bc], a
- inc bc
- ld a, $ff
- ld [bc], a
- ld hl, PartyMon1Species
- ld bc, PartyMon2 - PartyMon1
- ld a, e
- ld [wcd2a], a
-.asm_11b9ba
- add hl, bc
- dec a
- and a
- jr nz, .asm_11b9ba
- ld e, l
- ld d, h
- ld a, [CreditsTimer]
- ld l, a
- ld a, [wcd23]
- ld h, a
- ld bc, PartyMon2 - PartyMon1
- call CopyBytes
- ld hl, PartyMonOT
- ld bc, $000b
- ld a, [wcd2a]
-.asm_11b9d8
- add hl, bc
- dec a
- and a
- jr nz, .asm_11b9d8
- ld e, l
- ld d, h
- ld a, [wcd24]
- ld l, a
- ld a, [wcd25]
- ld h, a
- ld bc, $000a
- call CopyBytes
- ld a, $50
- ld [de], a
- ld hl, PartyMonNicknames
- ld bc, $000b
- ld a, [wcd2a]
-.asm_11b9f9
- add hl, bc
- dec a
- and a
- jr nz, .asm_11b9f9
- ld e, l
- ld d, h
- ld a, [wcd26]
- ld l, a
- ld a, [wcd27]
- ld h, a
- ld bc, $000a
- call CopyBytes
- ld a, $50
- ld [de], a
- ld hl, $a600
- ld bc, $002f
- ld a, [wcd2a]
-.asm_11ba1a
- add hl, bc
- dec a
- and a
- jr nz, .asm_11ba1a
- ld a, $0
- call GetSRAMBank
- ld e, l
- ld d, h
- ld a, [wcd28]
- ld l, a
- ld a, [wcd29]
- ld h, a
- ld bc, $002f
- call CopyBytes
- call CloseSRAM
- ret
-; 11ba38
-
-Function11ba38: ; 11ba38
- callba Functione538
- ret c
- xor a
- ld [ScriptVar], a
- ret
-; 11ba44
-
-Unknown_11ba44:
-INCBIN "baserom.gbc",$11ba44,$11bb7d - $11ba44
-
-Unknown_11bb7d:
-INCBIN "baserom.gbc",$11bb7d,$11bc9e - $11bb7d
-
-
-SECTION "bank47", ROMX, BANK[$47]
-
-Function11c000:: ; 11c000
- ld a, [rSVBK]
- push af
- ld a, $3
- ld [rSVBK], a
- ld hl, wd105
- ld a, [hl]
- dec a
- ld e, a
- ld d, 0
- ld hl, Unknown_11f2f0
- add hl, de
- ld a, [hl]
- and a
- jr nz, .asm_11c026
- ld a, [hRandomAdd]
- and $1f
- cp $19
- jr c, .asm_11c021
- sub $19
-
-.asm_11c021
- ld hl, Unknown_11f332
- jr .asm_11c033
-
-.asm_11c026
- ld a, [hRandomAdd]
- and $f
- cp $f
- jr c, .asm_11c030
- sub $f
-
-.asm_11c030
- ld hl, Unknown_11f3ce
-
-.asm_11c033
- ld b, 0
- dec c
- jr nz, .asm_11c03d
- ld [wd000 + $200], a
- jr .asm_11c040
-
-.asm_11c03d
- ld a, [wd000 + $200]
-
-.asm_11c040
- push af
- add hl, bc
- add hl, bc
- ld a, [hli]
- ld c, a
- ld a, [hl]
- ld h, a
- ld l, c
- pop af
- ld c, a
- ld b, 0
- add hl, bc
- add hl, bc
- ld a, [hli]
- ld c, a
- ld a, [hl]
- ld l, c
- ld h, a
- bccoord 1, 14
- pop af
- ld [rSVBK], a
- call Function13e5
- 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, [wcf63]
- 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 [wcf63], 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, [wcf63]
- inc a
- ld [wcf63], 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 Function13e5
- pop hl
- ld a, l
- ld [wcf63], 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, [$ffaa]
- push af
- ld a, $1
- ld [$ffaa], a
- call Function11c1b9
- pop af
- ld [$ffaa], 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 [wcf63], 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, [wcfa9]
- dec a
- call Function11c254
- call WhiteBGMap
- call ClearSprites
- call ClearScreen
- call Function11d323
- call Function32f9
- 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 Function1500c
- 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 Functiona57
- ld a, [hJoyPressed]
- ld [hJoypadPressed], a
- ld a, [wcf63]
- 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, [wcf63]
- ld e, a
- ld d, 0
- ld hl, Jumptable_11c2bb
- add hl, de
- add hl, de
- 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
- inc [hl]
- inc [hl]
- dec hl
- dec hl
- dec [hl]
- push af
- ld de, wcd2d
- call Function11cfce
- pop af
- ret nz
- jp Function11cfb5
-
-Function11c373: ; 11c373 (47:4373)
- ld hl, wcd30
- inc [hl]
- inc [hl]
- dec hl
- dec hl
- 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, $ffa9
- 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 [wcf63], 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, $ffa9
-
- 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 [wcf63], 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, $ffa9
- 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 [wcf63], 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
- add hl, bc
- add hl, bc
- 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
- add hl, de
- add hl, de
- 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
- add hl, de
- add hl, de
- 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
- add hl, bc
- add hl, bc
- 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
- add hl, de
- add hl, de
- 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
- add hl, de
- add hl, de
- ld a, [wcd25]
- ld e, a
- add hl, de
- add hl, de
- 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 [wcf63], 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
- add hl, bc
- add hl, bc
- 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, wcf63
- set 7, [hl]
- ret
-.asm_11caf9
- call PlayClickSFX
-.asm_11cafc
- ld hl, wcd24
- set 4, [hl]
- ld a, $4
- ld [wcf63], 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, [wcfa9]
-.asm_11cb58
- dec a
- jr z, .asm_11cb5f
- inc hl
- inc hl
- 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, [wcfa9]
- 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, [wcfa9]
-.asm_11cbba
- dec a
- jr z, .asm_11cbc1
- inc hl
- inc hl
- jr .asm_11cbba
-.asm_11cbc1
- ld a, [hli]
- ld e, a
- ld a, [hl]
- ld d, a
- hlcoord 1, 14
- call PlaceString
- ld hl, wcf63
- 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 [wcf63], 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 [wcf63], 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 [wcf63], 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, $ffa9
- 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 [wcf63], 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, wcf63
- 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)
- ld hl, TileMap
- 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
- dec a
- dec a
- 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
- dec a
- dec a
- jr z, .asm_11d022
- ld b, a
-.asm_11d005
- push hl
- ld a, $7c
- ld [hli], a
- ld a, [de]
- dec a
- dec a
- 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]
- dec a
- dec a
- 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)
- ld hl, TileMap
- 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
- dec a
- dec a
-.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
- dec a
- dec a
- 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
- add hl, de
- add hl, de
- 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
-INCBIN "baserom.gbc",$11d208,$11d21a - $11d208
-Unknown_11d21a: ; 11d21a
-INCBIN "baserom.gbc",$11d21a,$11d23e - $11d21a
-Unknown_11d23e: ; 11d23e
-INCBIN "baserom.gbc",$11d23e,$11d29e - $11d23e
-Unknown_11d29e: ; 11d29e
-INCBIN "baserom.gbc",$11d29e,$11d2b6 - $11d29e
-Unknown_11d2b6: ; 11d2b6
-INCBIN "baserom.gbc",$11d2b6,$11d2ba - $11d2b6
-Unknown_11d2ba: ; 11d2ba
-INCBIN "baserom.gbc",$11d2ba,$11d2be - $11d2ba
-Unknown_11d2be: ; 11d2be
-INCBIN "baserom.gbc",$11d2be,$11d2ee - $11d2be
-
-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, Unkn1Pals
- ld bc, $0080
- 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, Unkn1Pals
- 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]
- inc bc
- inc bc
- 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:
-INCBIN "baserom.gbc",$11f220,$11f23c - $11f220
-
-Unknown_11f23c:
-INCBIN "baserom.gbc",$11f23c,$11f2f0 - $11f23c
-
-Unknown_11f2f0:
-INCBIN "baserom.gbc",$11f2f0,$11f332 - $11f2f0
-
-Unknown_11f332:
-INCBIN "baserom.gbc",$11f332,$11f3ce - $11f332
-
-Unknown_11f3ce:
-INCBIN "baserom.gbc",$11f3ce,$11f686 - $11f3ce
-
-
-
-SECTION "bank5B", ROMX, BANK[$5B]
-
-Function16c000: ; 16c000
- ld a, [hCGB]
- and a
- ret z
- ld a, [$ffea]
- and a
- ret z
- ld a, [wcfbe]
- push af
- set 7, a
- ld [wcfbe], a
- call Function16c108
- callba Function100063
- callba Function100082
- call Function16c031
- callba Function1000a4
- xor a
- ld [$ffea], a
- pop af
- ld [wcfbe], a
- ret
-; 16c031
-
-Function16c031: ; 16c031
- xor a
- ld [wcf63], a
- ld [wcf64], a
- ld [DefaultFlypoint], a
- ld [wd003], a
-.asm_16c03e
- call DelayFrame
- callba Function10635c
- ld a, [DefaultFlypoint]
- ld hl, Jumptable_16c05c
- rst JumpTable
- call Function16cb2e
- call Function16cbae
- ld a, [DefaultFlypoint]
- cp $ff
- jr nz, .asm_16c03e
- ret
-; 16c05c
-
-Jumptable_16c05c: ; 16c05c
- dw Function16c074
- dw Function16c0ba
- dw Function16c089
- dw Function16c09e
- dw Function16c0a8
- dw Function16c0dc
- dw Function16c0ec
- dw Function16c0ba
- dw Function16c0ca
- dw Function16c0dc
- dw Function16c0ec
- dw Function16c081
-; 16c074
-
-Function16c074: ; 16c074
- ld a, [wcf64]
- and a
- ret z
- ld [DefaultFlypoint], a
- xor a
- ld [wd003], a
- ret
-; 16c081
-
-Function16c081: ; 16c081
- push af
- ld a, $ff
- ld [DefaultFlypoint], a
- pop af
- ret
-; 16c089
-
-Function16c089: ; 16c089
- ld a, $1
- ld [Buffer2], a
- ld [wd1f1], a
- xor a
- ld [hWY], a
- call Function16c0fa
- ld a, [DefaultFlypoint]
- ld [wcf64], a
- ret
-; 16c09e
-
-Function16c09e: ; 16c09e
- ld a, [wcf64]
- cp $4
- ret nz
- call Function16c0fa
- ret
-; 16c0a8
-
-Function16c0a8: ; 16c0a8
- xor a
- ld [Buffer2], a
- ld [wd1f1], a
- call ClearSprites
- ld a, $90
- ld [hWY], a
- call Function16c0fa
- ret
-; 16c0ba
-
-Function16c0ba: ; 16c0ba
- call Function16c943
- push af
- ld a, [wd003]
- inc a
- ld [wd003], a
- pop af
- call c, Function16c0fa
- ret
-; 16c0ca
-
-Function16c0ca: ; 16c0ca
- ld a, [wd003]
- cp $28
- push af
- ld a, [wd003]
- inc a
- ld [wd003], a
- pop af
- call z, Function16c0fa
- ret
-; 16c0dc
-
-Function16c0dc: ; 16c0dc
- call Function16ca11
- push af
- ld a, [wd003]
- inc a
- ld [wd003], a
- pop af
- call c, Function16c0fa
- ret
-; 16c0ec
-
-Function16c0ec: ; 16c0ec
- call WhiteBGMap
- call ClearScreen
- push af
- ld a, $ff
- ld [DefaultFlypoint], a
- pop af
- ret
-; 16c0fa
-
-Function16c0fa: ; 16c0fa
- push af
- ld a, [DefaultFlypoint]
- inc a
- ld [DefaultFlypoint], a
- xor a
- ld [wd003], a
- pop af
- ret
-; 16c108
-
-Function16c108: ; 16c108
- call DisableLCD
- ld hl, VTiles2
- ld de, GFX_16c173
- lb bc, BANK(GFX_16c173), $68
- call Get2bpp
- call Function16c130
- call Function16c145
- call Function16c15c
- ld hl, VBGMap0
- call Function16cc73
- call Function16cc02
- xor a
- ld [hBGMapMode], a
- call EnableLCD
- ret
-; 16c130
-
-Function16c130: ; 16c130
- ld de, Unkn1Pals
- ld hl, Unknown_16c903
- ld bc, 8
- ld a, $5
- call FarCopyWRAM
- callba Function96a4
- ret
-; 16c145
-
-Function16c145: ; 16c145
- ld hl, TileMap
- ld bc, 20
- xor a
- call ByteFill
- ld hl, Tilemap_16c633
- decoord 0, 1
- ld bc, $0154
- call CopyBytes
- ret
-; 16c15c
-
-Function16c15c: ; 16c15c
- ld hl, AttrMap
- ld bc, $0014
- xor a
- call ByteFill
- ld hl, Tilemap_16c79b
- decoord 0, 1, AttrMap
- ld bc, $0154
- call CopyBytes
- ret
-; 16c173
-
-GFX_16c173:
-INCBIN "gfx/unknown/16c173.2bpp"
-
-Tilemap_16c633:
-INCBIN "gfx/unknown/16c633.tilemap"
-
-Tilemap_16c79b:
-INCBIN "gfx/unknown/16c79b.tilemap"
-
-Unknown_16c903:
- RGB 31, 31, 31
- RGB 04, 10, 20
- RGB 16, 19, 25
- RGB 25, 27, 29
- RGB 31, 31, 31
- RGB 31, 31, 31
- RGB 31, 31, 31
- RGB 31, 31, 31
- RGB 31, 31, 31
- RGB 31, 31, 31
- RGB 31, 31, 31
- RGB 31, 31, 31
- RGB 31, 31, 31
- RGB 31, 31, 31
- RGB 31, 31, 31
- RGB 31, 31, 31
- RGB 31, 31, 31
- RGB 31, 31, 31
- RGB 31, 31, 31
- RGB 31, 31, 31
- RGB 31, 31, 31
- RGB 31, 31, 31
- RGB 31, 31, 31
- RGB 31, 31, 31
- RGB 31, 31, 31
- RGB 31, 31, 31
- RGB 31, 31, 31
- RGB 31, 31, 31
- RGB 31, 31, 31
- RGB 31, 31, 31
- RGB 31, 31, 31
- RGB 31, 31, 31
-; 16c943
-
-Function16c943: ; 16c943
- ld a, [wd003]
- and a
- jr nz, .asm_16c95e
- ld a, [rSVBK]
- push af
- ld a, $5
- ld [rSVBK], a
- ld a, $ff
- ld bc, $0008
- ld hl, Unkn1Pals
- call ByteFill
- pop af
- ld [rSVBK], a
-
-.asm_16c95e
- ld a, [rSVBK]
- push af
- ld a, $5
- ld [rSVBK], a
- ld e, $0
- ld a, $0
-.asm_16c969
- ld hl, Unknown_16c903
- call Function16cab6
- call Function16cabb
- ld d, a
- ld hl, Unkn1Pals
- call Function16cab6
- call Function16cabb
- cp d
- jr z, .asm_16c991
- ld b, $1
-.asm_16c981
- dec a
- cp d
- jr z, .asm_16c988
- dec b
- jr nz, .asm_16c981
-
-.asm_16c988
- ld hl, Unkn1Pals
- call Function16cab6
- call Function16cadc
-
-.asm_16c991
- ld hl, Unknown_16c903
- call Function16cab6
- call Function16cad8
- ld d, a
- ld hl, Unkn1Pals
- call Function16cab6
- call Function16cad8
- cp d
- jr z, .asm_16c9b9
- ld b, $1
-.asm_16c9a9
- dec a
- cp d
- jr z, .asm_16c9b0
- dec b
- jr nz, .asm_16c9a9
-
-.asm_16c9b0
- ld hl, Unkn1Pals
- call Function16cab6
- call Function16cb08
-
-.asm_16c9b9
- ld hl, Unknown_16c903
- call Function16cab6
- call Function16cac4
- ld d, a
- ld hl, Unkn1Pals
- call Function16cab6
- call Function16cac4
- cp d
- jr z, .asm_16c9e1
- ld b, $1
-.asm_16c9d1
- dec a
- cp d
- jr z, .asm_16c9d8
- dec b
- jr nz, .asm_16c9d1
-
-.asm_16c9d8
- ld hl, Unkn1Pals
- call Function16cab6
- call Function16cae8
-
-.asm_16c9e1
- inc e
- inc e
- ld a, e
- cp $8
- jr nz, .asm_16c969
- callba Function96a4
- call Function32f9
- ld a, [rSVBK]
- push af
- ld a, $1
- ld [rSVBK], a
- ld a, [wd003]
- cp $1f
- jr z, .asm_16ca09
- pop af
- ld [rSVBK], a
- ld e, $0
- pop af
- ld [rSVBK], a
- and a
- ret
-
-.asm_16ca09
- pop af
- ld [rSVBK], a
- pop af
- ld [rSVBK], a
- scf
- ret
-; 16ca11
-
-Function16ca11: ; 16ca11
- ld a, [wd003]
- and a
- jr nz, .asm_16ca1d
- callba Function96a4
-
-.asm_16ca1d
- ld a, [rSVBK]
- push af
- ld a, $5
- ld [rSVBK], a
- ld e, $0
- ld a, $0
-.asm_16ca28
- ld hl, Unkn1Pals
- call Function16cab6
- call Function16cabb
- cp $1f
- jr z, .asm_16ca48
- ld b, $1
-.asm_16ca37
- inc a
- cp $1f
- jr z, .asm_16ca3f
- dec b
- jr nz, .asm_16ca37
-
-.asm_16ca3f
- ld hl, Unkn1Pals
- call Function16cab6
- call Function16cadc
-
-.asm_16ca48
- ld hl, Unkn1Pals
- call Function16cab6
- call Function16cad8
- cp $1f
- jr z, .asm_16ca68
- ld b, $1
-.asm_16ca57
- inc a
- cp $1f
- jr z, .asm_16ca5f
- dec b
- jr nz, .asm_16ca57
-
-.asm_16ca5f
- ld hl, Unkn1Pals
- call Function16cab6
- call Function16cb08
-
-.asm_16ca68
- ld hl, Unkn1Pals
- call Function16cab6
- call Function16cac4
- cp $1f
- jr z, .asm_16ca88
- ld b, $1
-.asm_16ca77
- inc a
- cp $1f
- jr z, .asm_16ca7f
- dec b
- jr nz, .asm_16ca77
-
-.asm_16ca7f
- ld hl, Unkn1Pals
- call Function16cab6
- call Function16cae8
-
-.asm_16ca88
- inc e
- inc e
- ld a, e
- cp $8
- jr nz, .asm_16ca28
- callba Function96a4
- call Function32f9
- ld a, [rSVBK]
- push af
- ld a, $1
- ld [rSVBK], a
- ld a, [wd003]
- cp $1f
- jr z, .asm_16caae
- pop af
- ld [rSVBK], a
- pop af
- ld [rSVBK], a
- and a
- ret
-
-.asm_16caae
- pop af
- ld [rSVBK], a
- pop af
- ld [rSVBK], a
- scf
- ret
-; 16cab6
-
-Function16cab6: ; 16cab6
- ld b, $0
- ld c, e
- add hl, bc
- ret
-; 16cabb
-
-Function16cabb: ; 16cabb
- inc hl
- ld a, [hl]
- srl a
- srl a
- and $1f
- ret
-; 16cac4
-
-Function16cac4: ; 16cac4
- inc hl
- ld a, [hld]
- and $3
- ld b, a
- ld a, [hl]
- sla a
- rl b
- sla a
- rl b
- sla a
- rl b
- ld a, b
- ret
-; 16cad8
-
-Function16cad8: ; 16cad8
- ld a, [hl]
- and $1f
- ret
-; 16cadc
-
-Function16cadc: ; 16cadc
- sla a
- sla a
- ld b, a
- inc hl
- ld a, [hl]
- and $83
- or b
- ld [hl], a
- ret
-; 16cae8
-
-Function16cae8: ; 16cae8
- ld c, a
- srl a
- srl a
- srl a
- ld b, a
- inc hl
- ld a, [hl]
- and $fc
- or b
- ld [hld], a
- ld a, c
- sla a
- sla a
- sla a
- sla a
- sla a
- ld b, a
- ld a, [hl]
- and $1f
- or b
- ld [hl], a
- ret
-; 16cb08
-
-Function16cb08: ; 16cb08
- ld b, a
- ld a, [hl]
- and $e0
- or b
- ld [hl], a
- ret
-; 16cb0f
-
-Function16cb0f: ; 16cb0f
- xor a
- ld [Buffer1], a
- ld [Buffer2], a
- xor a
- ld [wd1ec], a
- ld a, $70
- ld [wd1ee], a
- ld a, $4
- ld [wd1ed], a
- ld a, $a0
- ld [wd1ef], a
- xor a
- ld [wd1f0], a
- ret
-; 16cb2e
-
-Function16cb2e: ; 16cb2e
- ld a, [Buffer2]
- and a
- ret z
- call Function16cb40
- ld hl, Unknown_16cb86
- ld de, Sprites
- call Function16cb5d
- ret
-; 16cb40
-
-Function16cb40: ; 16cb40
- ld hl, wd1ec
- inc [hl]
- ld a, [hl]
- cp $18
- ret c
- xor a
- ld [hl], a
- ld a, [wd1ef]
- cp $a0
- jr nz, .asm_16cb57
- ld a, $a7
- ld [wd1ef], a
- ret
-
-.asm_16cb57
- ld a, $a0
- ld [wd1ef], a
- ret
-; 16cb5d
-
-Function16cb5d: ; 16cb5d
- ld a, [hli]
- and a
- ret z
-.asm_16cb60
- push af
- ld a, [wd1ee]
- add [hl]
- add $10
- ld [de], a
- inc hl
- inc de
- ld a, [wd1ed]
- add [hl]
- add $8
- ld [de], a
- inc hl
- inc de
- ld a, [wd1ef]
- add [hl]
- ld [de], a
- inc hl
- inc de
- ld a, [wd1f0]
- or [hl]
- ld [de], a
- inc hl
- inc de
- pop af
- dec a
- jr nz, .asm_16cb60
- ret
-; 16cb86
-
-Unknown_16cb86:
- db 7
- db 0, 0, 0, 1
- db 8, 0, 1, 1
- db 8, 8, 2, 0
- db 8, 16, 3, 0
- db 16, 0, 4, 1
- db 16, 8, 5, 0
- db 16, 16, 6, 0
-; 16cba3
-
-Function16cba3: ; 16cba3
- xor a
- ld [wd1f1], a
- ld [wd1f2], a
- ld [wd1f3], a
- ret
-; 16cbae
-
-Function16cbae: ; 16cbae
- ld a, [wd1f1]
- and a
- ret z
- call Function16cbba
- call Function16cbd1
- ret
-; 16cbba
-
-Function16cbba: ; 16cbba
- ld hl, wd1f2
- inc [hl]
- ld a, [hl]
- cp $c
- ret c
- xor a
- ld [hl], a
- ld a, [wd1f3]
- inc a
- cp $4
- jr c, .asm_16cbcd
- xor a
-
-.asm_16cbcd
- ld [wd1f3], a
- ret
-; 16cbd1
-
-Function16cbd1: ; 16cbd1
- ld a, [wd1f3]
- ld c, a
- ld b, 0
- ld hl, Unknown_16cbfb
- add hl, bc
- ld a, [hl]
- ld bc, $0002
- ld hl, Unknown_16cfa3
- call AddNTimes
- ld de, wd00c
- ld bc, $0002
- ld a, $5
- call FarCopyWRAM
- callba Function96a4
- ld a, $1
- ld [hCGBPalUpdate], a
- ret
-; 16cbfb
-
-Unknown_16cbfb:
- db 0, 1, 2, 1, 0, 1, 2
-; 16cc02
-
-Function16cc02: ; 16cc02
- call Function16cc18
- call Function16cc49
- call Function16cc62
- call Function16cc25
- call Function16cc6e
- call Function16cb0f
- call Function16cba3
- ret
-; 16cc18
-
-Function16cc18: ; 16cc18
- ld hl, VTiles1
- ld de, GFX_16cca3
- lb bc, BANK(GFX_16cca3), $2e
- call Get2bpp
- ret
-; 16cc25
-
-Function16cc25: ; 16cc25
- ld hl, Unknown_16cfa9
- ld de, wd008
- call Function16cc41
- ld hl, Unknown_16cfb1
- ld de, Unkn2Pals
- call Function16cc41
- ld hl, Unknown_16cfb9
- ld de, wd048
- call Function16cc41
- ret
-; 16cc41
-
-Function16cc41: ; 16cc41
- ld bc, $0008
- ld a, $5
- jp FarCopyWRAM
-; 16cc49
-
-Function16cc49: ; 16cc49
- hlcoord 4, 15
- ld a, $80
- call Function16cc5a
- hlcoord 4, 16
- ld a, $90
- call Function16cc5a
- ret
-; 16cc5a
-
-Function16cc5a: ; 16cc5a
- ld c, $10
-.asm_16cc5c
- ld [hli], a
- inc a
- dec c
- jr nz, .asm_16cc5c
- ret
-; 16cc62
-
-Function16cc62: ; 16cc62
- hlcoord 0, 15, AttrMap
- ld bc, $0028
- ld a, $1
- call ByteFill
- ret
-; 16cc6e
-
-Function16cc6e: ; 16cc6e
- ld hl, VBGMap1
- jr Function16cc73
-
-Function16cc73:
- ld a, [rVBK]
- push af
- ld a, $0
- ld [rVBK], a
- push hl
- ld de, TileMap
- call Function16cc90
- pop hl
- ld a, $1
- ld [rVBK], a
- ld de, AttrMap
- call Function16cc90
- pop af
- ld [rVBK], a
- ret
-; 16cc90
-
-Function16cc90: ; 16cc90
- ld bc, $1214
-.asm_16cc93
- push bc
-.asm_16cc94
- ld a, [de]
- inc de
- ld [hli], a
- dec c
- jr nz, .asm_16cc94
- ld bc, $000c
- add hl, bc
- pop bc
- dec b
- jr nz, .asm_16cc93
- ret
-; 16cca3
-
-GFX_16cca3:
-INCBIN "gfx/unknown/16cca3.2bpp"
-
-Unknown_16cfa3:
- RGB 31, 31, 31
- RGB 25, 27, 29
- RGB 16, 19, 25
-
-Unknown_16cfa9:
- RGB 31, 31, 31
- RGB 25, 27, 29
- RGB 31, 31, 31
- RGB 07, 07, 07
-
-Unknown_16cfb1:
- RGB 31, 31, 31
- RGB 13, 09, 18
- RGB 26, 21, 16
- RGB 07, 07, 07
-
-Unknown_16cfb9:
- RGB 31, 31, 31
- RGB 18, 05, 02
- RGB 27, 11, 12
- RGB 07, 07, 07
-; 16cfc1
-
-GFX_16cfc1:
-INCBIN "gfx/unknown/16cfc1.2bpp"
-
-Function16d421: ; 16d421
- ld de, GFX_16cfc1
- ld hl, VTiles2
- lb bc, BANK(GFX_16cfc1), $46
- call Get2bpp
- ret
-; 16d42e
-
-Function16d42e: ; 16d42e
- ld hl, Tilemap_16d465
- ld de, TileMap
- ld bc, $0168
- call CopyBytes
- ret
-; 16d43b
-
-Function16d43b: ; 16d43b
- call Function1d6e
- call WhiteBGMap
- call ClearTileMap
- call ClearSprites
- callba Function16d421
- callba Function16d42e
- ld b, $8
- call GetSGBLayout
- call Function32f9
- call WaitBGMap
- call Functiona36
- call Function1d7d
- ret
-; 16d465
-
-Tilemap_16d465:
-INCBIN "gfx/unknown/16d465.tilemap"
-
-Tilemap_16d5cd:
-INCBIN "gfx/unknown/16d5cd.tilemap"
-
-Tilemap_16d5f5:
-INCBIN "gfx/unknown/16d5f5.tilemap"
-
-Function16d61d: ; 16d61d
- ld h, d
- ld l, e
- push bc
- push hl
- call Function16d640
- pop hl
- pop bc
- ld de, AttrMap - TileMap
- add hl, de
- inc b
- inc b
- inc c
- inc c
- ld a, $7
-.asm_16d630
- push bc
- push hl
-.asm_16d632
- ld [hli], a
- dec c
- jr nz, .asm_16d632
- pop hl
- ld de, $0014
- add hl, de
- pop bc
- dec b
- jr nz, .asm_16d630
- ret
-; 16d640
-
-Function16d640: ; 16d640
- push hl
- ld a, $30
- ld [hli], a
- inc a
- call Function16d66d
- inc a
- ld [hl], a
- pop hl
- ld de, $0014
- add hl, de
-.asm_16d64f
- push hl
- ld a, $33
- ld [hli], a
- ld a, $7f
- call Function16d66d
- ld [hl], $34
- pop hl
- ld de, $0014
- add hl, de
- dec b
- jr nz, .asm_16d64f
- ld a, $35
- ld [hli], a
- ld a, $36
- call Function16d66d
- ld [hl], $37
- ret
-; 16d66d
-
-Function16d66d: ; 16d66d
- ld d, c
-.asm_16d66e
- ld [hli], a
- dec d
- jr nz, .asm_16d66e
- ret
-; 16d673
-
-Function16d673: ; 16d673
- call Function16d696
- call Function16d6ae
- callba Function49856
- callba Functionfb60d
- hlcoord 10, 17
- ld de, String_16d68f
- call PlaceString
- ret
-; 16d68f
-
-String_16d68f: ; 16d68f
- db "CANCEL@"
-; 16d696
-
-Function16d696: ; 16d696
- call Function16d421
- ret
-; 16d69a
-
-
-Function16d69a: ; 16d69a
- ld de, GFX_16cfc1 + $300
- ld hl, $9760
- lb bc, BANK(GFX_16cfc1), 8
- call Get2bpp
- ret
-; 16d6a7
-
-Function16d6a7: ; 16d6a7
- callba Function49811
- ret
-; 16d6ae
-
-Function16d6ae: ; 16d6ae
- call Function16d42e
- ld hl, Tilemap_16d5cd
- ld de, TileMap
- ld bc, $0028
- call CopyBytes
- ld hl, Tilemap_16d5f5
- decoord 0, 16
- ld bc, $0028
- call CopyBytes
- ret
-; 16d6ca
-
-Function16d6ca: ; 16d6ca
- call Function16d61d
- ret
-; 16d6ce
-
-Function16d6ce: ; 16d6ce
- call Function1d6e
- call Function16d6e1
- callba Function87d
- call Function1d7d
- call Function3200
- ret
-; 16d6e1
-
-Function16d6e1: ; 16d6e1
- hlcoord 4, 10
- ld b, $1
- ld c, $a
- predef Function28eef
- hlcoord 5, 11
- ld de, String_16d701
- call PlaceString
- call WaitBGMap
- call Function3200
- ld c, $32
- jp DelayFrames
-; 16d701
-
-String_16d701: ; 16d701
- db "WAITING..!@"
-; 16d70c
-
-Function16d70c: ; 16d70c
- call Function16d725
- call Function16d713
- ret
-; 16d713
-
-Function16d713: ; 16d713
- push bc
- push af
- ld a, [$ffa9]
- and $f0
- ld b, a
- ld a, [hJoyPressed]
- and $f
- or b
- ld b, a
- pop af
- ld a, b
- pop bc
- ld d, a
- ret
-; 16d725
-
-Function16d725: ; 16d725
- ld hl, wcfa6
- res 7, [hl]
- ld a, [hBGMapMode]
- push af
- call Function16d734
- pop af
- ld [hBGMapMode], a
- ret
-; 16d734
-
-Function16d734: ; 16d734
-.asm_16d734
- call Function16d77a
- call Function16d759
- call Function16d76a
- jr nc, .asm_16d758
- callba Function24270
- jr c, .asm_16d758
- ld a, [wcfa5]
- bit 7, a
- jr nz, .asm_16d758
- call Function16d713
- ld b, a
- ld a, [wcfa8]
- and b
- jr z, .asm_16d734
-
-.asm_16d758
- ret
-; 16d759
-
-Function16d759: ; 16d759
- ld a, [hOAMUpdate]
- push af
- ld a, $1
- ld [hOAMUpdate], a
- call WaitBGMap
- pop af
- ld [hOAMUpdate], a
- xor a
- ld [hBGMapMode], a
- ret
-; 16d76a
-
-Function16d76a: ; 16d76a
-.asm_16d76a
- call RTC
- call Function16d7e7
- ret c
- ld a, [wcfa5]
- bit 7, a
- jr z, .asm_16d76a
- and a
- ret
-; 16d77a
-
-Function16d77a: ; 16d77a
- ld hl, wcfac
- ld a, [hli]
- ld h, [hl]
- ld l, a
- ld a, [hl]
- cp $1f
- jr nz, .asm_16d792
- ld a, [wcfab]
- ld [hl], a
- push hl
- push bc
- ld bc, $000b
- add hl, bc
- ld [hl], a
- pop bc
- pop hl
-
-.asm_16d792
- ld a, [wcfa1]
- ld b, a
- ld a, [wcfa2]
- ld c, a
- call GetTileCoord
- ld a, [wcfa7]
- swap a
- and $f
- ld c, a
- ld a, [wcfa9]
- ld b, a
- xor a
- dec b
- jr z, .asm_16d7b1
-.asm_16d7ad
- add c
- dec b
- jr nz, .asm_16d7ad
-
-.asm_16d7b1
- ld c, $14
- call AddNTimes
- ld a, [wcfa7]
- and $f
- ld c, a
- ld a, [wcfaa]
- ld b, a
- xor a
- dec b
- jr z, .asm_16d7c8
-.asm_16d7c4
- add c
- dec b
- jr nz, .asm_16d7c4
-
-.asm_16d7c8
- ld c, a
- add hl, bc
- ld a, [hl]
- cp $1f
- jr z, .asm_16d7de
- ld [wcfab], a
- ld [hl], $1f
- push hl
- push bc
- ld bc, $000b
- add hl, bc
- ld [hl], $1f
- pop bc
- pop hl
-
-.asm_16d7de
- ld a, l
- ld [wcfac], a
- ld a, h
- ld [wcfad], a
- ret
-; 16d7e7
-
-Function16d7e7: ; 16d7e7
- ld a, [wcfa5]
- bit 6, a
- jr z, .asm_16d7f4
- callba Function8cf62
-
-.asm_16d7f4
- call Functiona57
- call Function16d713
- and a
- ret z
- scf
- ret
-; 16d7fe
-
-
-SECTION "bank5C", ROMX, BANK[$5C]
-
-Function170000: ; 170000
- ld a, [$c62b]
- ld [$c6d0], a
- ld hl, $c62e
- ld de, $c6e7
- ld bc, $0005
- call CopyBytes
- ld a, $50
- ld [de], a
- ld hl, $c663
- ld de, $c6f2
- ld bc, $0005
- call CopyBytes
- ld a, $50
- ld [de], a
- ld hl, $c648
- ld a, [hli]
- ld [$c6fd], a
- ld a, [hl]
- ld [$c6fe], a
- ld hl, $c639
- ld a, [hli]
- ld [$c6ff], a
- ld a, [hl]
- ld [wc700], a
- ld bc, $c633
- callba GetCaughtGender
- ld a, c
- ld [wc701], a
- ld a, [wcd81]
- ld [wc74e], a
- ld hl, $c608
- ld de, $d800
- ld bc, $008f
- call CopyBytes
- ret
-; 17005a
-
-Function17005a: ; 17005a
- ld a, $5
- call GetSRAMBank
- ld a, [$a824]
- ld [wc702], a
- ld hl, $a827
- ld de, wc719
- ld bc, $0005
- call CopyBytes
- ld a, $50
- ld [de], a
- ld hl, $a85c
- ld de, wc724
- ld bc, $0005
- call CopyBytes
- ld a, $50
- ld [de], a
- ld hl, $a841
- ld a, [hli]
- ld [wc72f], a
- ld a, [hl]
- ld [wc730], a
- ld hl, $a832
- ld a, [hli]
- ld [wc731], a
- ld a, [hl]
- ld [wc732], a
- ld bc, $a82c
- callba GetCaughtGender
- ld a, c
- ld [wc733], a
- ld a, [wcd81]
- ld [wc74e], a
- call CloseSRAM
- 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, [wd84a]
- ld [hli], a
- ld a, [wd84b]
- ld [hli], a
- ld e, l
- ld d, h
- ld hl, PlayerName
- ld bc, $0005
- 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
-
-Function170215: ; 170215
- xor a
- ld [wcf63], a
- call Function17022c
- ret
-; 17021d
-
-Function17021d: ; 17021d
- ret
-; 17021e
-
-Function17021e: ; 17021e
- xor a
- ld [wcf63], a
- ld [wcf64], a
- ld [wcf65], a
- ld [wcf66], a
- ret
-; 17022c
-
-Function17022c: ; 17022c
-.asm_17022c
- call Function17023a
- call DelayFrame
- ld a, [wcf63]
- cp $1
- jr nz, .asm_17022c
- ret
-; 17023a
-
-Function17023a: ; 17023a
- ld a, [wcf63]
- ld e, a
- ld d, 0
- ld hl, Jumptable_170249
- add hl, de
- add hl, de
- ld a, [hli]
- ld h, [hl]
- ld l, a
- jp [hl]
-; 170249
-
-Jumptable_170249: ; 170249
- dw Function17024d
- dw Function1704c9
-; 17024d
-
-Function17024d: ; 17024d
- ld a, [Options]
- push af
- ld hl, Options
- set 6, [hl]
- ld a, [wcfc0]
- push af
- or $1
- ld [wcfc0], a
- xor a
- ld [InLinkBattle], a
- callba Function1060a2
- callba Functionc658
- call Function1702b7
- call Function170bf7
- predef StartBattle
- callba Function1500c
- callba Functionc658
- ld a, [wd0ee]
- ld [ScriptVar], a
- and a
- jr nz, .asm_1702a9
- ld a, $1
- call GetSRAMBank
- ld a, [$be46]
- ld [wcf64], a
- call CloseSRAM
- ld hl, StringBuffer3
- ld a, [wcf64]
- add $f7
- ld [hli], a
- ld a, $50
- ld [hl], a
-
-.asm_1702a9
- pop af
- ld [wcfc0], a
- pop af
- ld [Options], a
- ld a, $1
- ld [wcf63], a
- ret
-; 1702b7
-
-Function1702b7: ; 1702b7
- call Function1704a2
- ld de, $c643
- ld c, $b
- callba Function17d073
- jr nc, .asm_1702db
- ld a, [$c608 + 11]
- ld [wd265], a
- call GetPokemonName
- ld l, e
- ld h, d
- ld de, $c643
- ld bc, $000b
- call CopyBytes
-
-.asm_1702db
- ld de, $c67e
- ld c, $b
- callba Function17d073
- jr nc, .asm_1702fc
- ld a, [$c64e]
- ld [wd265], a
- call GetPokemonName
- ld l, e
- ld h, d
- ld de, $c67e
- ld bc, $000b
- call CopyBytes
-
-.asm_1702fc
- ld de, $c686 + 51
- ld c, $b
- callba Function17d073
- jr nc, .asm_17031d
- ld a, [$c689]
- ld [wd265], a
- call GetPokemonName
- ld l, e
- ld h, d
- ld de, $c686 + 51
- ld bc, $000b
- call CopyBytes
-
-.asm_17031d
- ld a, $50
- ld [$c64d], a
- ld [$c688], a
- ld [$c68a + 57], a
- call Function170c98
- ld de, $c608
- ld c, $a
- callba Function17d073
- jr nc, .asm_17033d
- ld hl, String_170426
- jr .asm_170340
-
-.asm_17033d
- ld hl, $c608
-
-.asm_170340
- ld de, wd26b
- ld bc, $000a
- call CopyBytes
- ld a, $50
- ld [de], a
- ld hl, $c608 + 10
- ld a, [hli]
- ld [OtherTrainerClass], a
- ld a, $ea
- ld [BGMapBuffer], a
- ld a, $d3
- ld [wcd21], a
- ld de, OTPartyMon1Species
- ld bc, OTPartyCount
- ld a, $3
- ld [bc], a
- inc bc
-.asm_170367
- push af
- ld a, [hl]
- ld [bc], a
- inc bc
- push bc
- ld bc, $0030
- call CopyBytes
- push de
- ld a, [BGMapBuffer]
- ld e, a
- ld a, [wcd21]
- ld d, a
- ld bc, $000b
- call CopyBytes
- ld a, e
- ld [BGMapBuffer], a
- ld a, d
- ld [wcd21], a
- pop de
- pop bc
- pop af
- dec a
- and a
- jr nz, .asm_170367
- ld a, $ff
- ld [bc], a
- ret
-; 170394
-
-Function170394: ; 170394
- ld hl, $c608 + 11
- ld d, $3
-.asm_170399
- push de
- push hl
- ld b, h
- ld c, l
- ld a, [hl]
- and a
- jr z, .asm_1703b1
- cp $ff
- jr z, .asm_1703b1
- cp $fe
- jr z, .asm_1703b1
- cp $fd
- jr z, .asm_1703b1
- cp $fc
- jr nz, .asm_1703b4
-
-.asm_1703b1
- ld a, $eb
- ld [hl], a
-
-.asm_1703b4
- ld [CurSpecies], a
- call GetBaseData
- ld a, $5
- call GetSRAMBank
- ld a, [$b2fb]
- call CloseSRAM
- ld e, a
- ld hl, $001f
- add hl, bc
- ld a, [hl]
- cp $2
- ld a, $2
- jr c, .asm_1703d6
- ld a, [hl]
- cp e
- jr c, .asm_1703d7
- ld a, e
-
-.asm_1703d6
- ld [hl], a
-
-.asm_1703d7
- ld [CurPartyLevel], a
- ld hl, $0002
- add hl, bc
- ld d, $3
- ld a, [hli]
- and a
- jr z, .asm_1703ea
- cp $fc
- jr nc, .asm_1703ea
- jr .asm_1703f4
-
-.asm_1703ea
- dec hl
- ld a, $1
- ld [hli], a
- xor a
- ld [hli], a
- ld [hli], a
- ld [hl], a
- jr .asm_1703ff
-
-.asm_1703f4
- ld a, [hl]
- cp $fc
- jr c, .asm_1703fb
- ld [hl], $0
-
-.asm_1703fb
- inc hl
- dec d
- jr nz, .asm_1703f4
-
-.asm_1703ff
- ld hl, $0024
- add hl, bc
- ld d, h
- ld e, l
- push hl
- push de
- ld hl, $000a
- add hl, bc
- ld b, $1
- predef Functione167
- pop de
- pop hl
- dec de
- dec de
- ld a, [hli]
- ld [de], a
- inc de
- ld a, [hl]
- ld [de], a
- pop hl
- ld bc, $003b
- add hl, bc
- pop de
- dec d
- jp nz, .asm_170399
- ret
-; 170426
-
-String_170426: ; 170426
- db "CHRIS@"
-; 17042c
-
-Function17042c: ; 17042c
- ld hl, OTPartyMon2ID
- ld a, $7
-.asm_170431
- push af
- push hl
- ld c, $12
-.asm_170435
- ld a, [hli]
- ld b, a
- ld a, [hli]
- and a
- jr z, .asm_170451
- cp $f
- jr nc, .asm_17045b
- push hl
- ld hl, Unknown_170470
- dec a
- ld e, a
- ld d, 0
- add hl, de
- ld a, [hl]
- pop hl
- cp b
- jr c, .asm_17045b
- jr z, .asm_17045b
- jr .asm_170456
-
-.asm_170451
- ld a, b
- cp $fc
- jr nc, .asm_17045b
-
-.asm_170456
- dec c
- jr nz, .asm_170435
- jr .asm_170466
-
-.asm_17045b
- pop de
- push de
- ld hl, Unknown_17047e
- ld bc, $0024
- call CopyBytes
-
-.asm_170466
- pop hl
- ld de, $00e0
- add hl, de
- pop af
- dec a
- jr nz, .asm_170431
- ret
-; 170470
-
-Unknown_170470:
- db $12, $24, $45, $45, $42, $42, $45, $42, $27, $27, $45, $27, $42, $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
-; 1704a2
-
-Function1704a2: ; 1704a2
- ld a, [rSVBK]
- push af
- ld a, $3
- ld [rSVBK], a
- ld hl, LYOverrides
- ld de, $c608
- ld bc, $00e0
- call CopyBytes
- pop af
- ld [rSVBK], a
- ld a, $1
- call GetSRAMBank
- ld a, $2
- ld [$be45], a
- ld hl, $be46
- inc [hl]
- call CloseSRAM
-Function1704c9:
- 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 Function2b3c
- ret
-; 1704f1
-
-Function1704f1: ; 1704f1
- call WhiteBGMap
- call ClearSprites
- call ClearScreen
-.asm_1704fa
- call Functiona57
- ld a, [wcf63]
- bit 7, a
- jr nz, .asm_17050f
- call Function170510
- callba Function104061
- jr .asm_1704fa
-
-.asm_17050f
- ret
-; 170510
-
-Function170510: ; 170510
- ld a, [wcf63]
- ld e, a
- ld d, 0
- ld hl, Jumptable_17051f
- add hl, de
- add hl, de
- 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 Function32f9
- 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, wcf63
- set 7, [hl]
- ret
-
-Function1705b2:
- ld hl, wcf63
- 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
- inc hl
- inc hl
- 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
-
-Function170687: ; 170687
- ld a, [ScriptVar]
- ld e, a
- ld d, 0
- ld hl, Jumptable_170696
- add hl, de
- add hl, de
- ld a, [hli]
- ld h, [hl]
- ld l, a
- jp [hl]
-; 170696
-
-
-Jumptable_170696: ; 170696 (5c:4696)
- dw Function17075f
- dw Function170788
- dw Function170778
- dw Function170799
- dw Function17079d
- dw Function1707ac
- dw Function1707f4
- dw Function170868
- dw Function170881
- dw Function17089a
- dw Function1708b1
- dw Function1708b9
- dw Function1708c8
- dw Function1708f0
- dw Function17093c
- dw Function1709aa
- dw Function1709bb
- dw Function170a9c
- dw Function170aa0
- dw Function170aaf
- dw Function170abe
- dw Function170ad7
- dw Function170807
- dw Function17081d
- dw Function170ae8
- dw Function170b16
- dw Function1706d6
- dw Function1706ee
- dw Function17071b
- dw Function170729
- dw Function17073e
- dw Function170737
-
-
-Function1706d6: ; 1706d6 (5c:46d6)
- ld a, $1
- call GetSRAMBank
- ld a, $ff
- ld hl, $be48
- ld bc, $7
- call ByteFill
- xor a
- ld [$be46], a
- call CloseSRAM
- ret
-
-Function1706ee: ; 1706ee (5c:46ee)
- ld a, $1
- call GetSRAMBank
- ld a, [$be50]
- 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, $1
- call GetSRAMBank
- ld a, $3
- ld [$be45], a
- call CloseSRAM
- ret
-
-Function170729: ; 170729 (5c:4729)
- ld a, $1
- call GetSRAMBank
- ld a, $4
- ld [$be45], a
- call CloseSRAM
- ret
-
-Function170737: ; 170737 (5c:4737)
- callba Function14dbb
- ret
-
-Function17073e: ; 17073e (5c:473e)
- call Random
- ld a, [hRandomAdd] ; $ff00+$e1
- and $7
- cp $6
- jr c, .asm_17074b
- sub $6
-.asm_17074b
- add $1a
- cp $1e
- jr z, Function17073e
- push af
- ld a, $1
- call GetSRAMBank
- pop af
- ld [$be50], a
- call CloseSRAM
- ret
-
-Function17075f: ; 17075f (5c:475f)
- call Function17089a
- ld a, [ScriptVar]
- and a
- ret z
- ld a, $1
- call GetSRAMBank
- ld a, [$be4f]
- and $2
- ld [ScriptVar], a
- call CloseSRAM
- ret
-
-Function170778: ; 170778 (5c:4778)
- ld hl, $be45
- ld a, $1
- call GetSRAMBank
- ld a, [hl]
- ld [ScriptVar], a
- call CloseSRAM
- ret
-
-Function170788: ; 170788 (5c:4788)
- ld a, $1
- call GetSRAMBank
- ld a, [$be4f]
- or $2
- ld [$be4f], 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, $1
- call GetSRAMBank
- ld a, c
- ld [$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, $1
- call GetSRAMBank
- ld a, [rSVBK] ; $ff00+$70
- push af
- ld a, $3
- ld [rSVBK], a ; $ff00+$70
- ld a, [wd000 + $800]
- ld [$be47], a
- pop af
- ld [rSVBK], a ; $ff00+$70
- call CloseSRAM
- ret
-
-Function170881: ; 170881 (5c:4881)
- ld a, $1
- call GetSRAMBank
- ld a, [rSVBK] ; $ff00+$70
- push af
- ld a, $3
- ld [rSVBK], a ; $ff00+$70
- ld a, [$be47]
- ld [wd000 + $800], a
- pop af
- ld [rSVBK], a ; $ff00+$70
- 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
-
-Function1708b9: ; 1708b9 (5c:48b9)
- ld a, $1
- call GetSRAMBank
- ld a, [$be3c]
- 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
-.asm_170955
- ld a, [hli]
- cp EGG
- jr nz, .asm_17099f
- push hl
- ld hl, PartyMonOT ; wddff (aliases: PartyMonOT)
- ld de, $6
- ld a, b
- and a
- jr z, .asm_170969
-.asm_170965
- add hl, de
- dec a
- jr nz, .asm_170965
-.asm_170969
- 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
- dec hl
- dec hl
- dec hl
- dec hl
- ld a, $50
- ld [hli], a
- ld [hli], a
- pop hl
- ld a, EGG_TICKET
- ld [CurItem], a
- ld a, $1
- ld [wd10c], 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
-.asm_17099f
- inc b
- dec c
- jr nz, .asm_170955
- ret
-; 1709a4 (5c:49a4)
-
-String_1709a4: ; 1709a4
- db "なぞナゾ@@"
-
-Function1709aa: ; 1709aa (5c:49aa)
- ld a, [rSVBK] ; $ff00+$70
- push af
- ld a, $3
- ld [rSVBK], a ; $ff00+$70
- ld a, [StringBuffer2 + 10]
- ld [ScriptVar], a
- pop af
- ld [rSVBK], a ; $ff00+$70
- ret
-
-Function1709bb: ; 1709bb (5c:49bb)
- xor a
- ld [ScriptVar], a
- ld a, $5
- call GetSRAMBank
- ld a, [$a800]
- call CloseSRAM
- cp 6
- jr nc, .asm_1709da
- ld e, a
- ld d, 0
- ld hl, Jumptable_1709e7
- add hl, de
- add hl, de
- ld a, [hli]
- ld h, [hl]
- ld l, a
- jp [hl]
-.asm_1709da
- 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, $1
- call GetSRAMBank
- ld a, [$be4f]
- and $1
- ld [ScriptVar], a
- call CloseSRAM
- ret
-
-Function170ad7: ; 170ad7 (5c:4ad7)
- ld a, $1
- call GetSRAMBank
- ld a, [$be4f]
- or $1
- ld [$be4f], 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
-
-Function170b44: ; 170b44
- callba Function1f8000
- ld a, [rSVBK]
- push af
- ld a, $3
- ld [rSVBK], a
- ld hl, wd10a
- ld a, [hl]
- dec a
- ld c, a
- ld b, $0
- pop af
- ld [rSVBK], a
- ld hl, Unknown_170b90
- add hl, bc
- ld a, [hl]
- ld [wcd49], a
- ld a, [ScriptVar]
- dec a
- sla a
- ld e, a
- sla a
- sla a
- sla a
- ld c, a
- ld b, $0
- ld d, $0
- ld hl, MapObjects
- add hl, bc
- inc hl
- ld a, [wcd49]
- ld [hl], a
- ld hl, UsedSprites
- add hl, de
- ld [hli], a
- ld [$ffbd], a
- ld a, [hl]
- ld [$ffbe], a
- callba Function143c8
- ret
-; 170b90
-
-Unknown_170b90:
-INCBIN "baserom.gbc",$170b90,$170bd2 - $170b90
-
-Function170bd2: ; 170bd2
- ret
-; 170bd3
-
-Function170bd3: ; 170bd3
- callba Function8b201
- jr c, .asm_170bde
- xor a
- jr .asm_170be0
-
-.asm_170bde
- ld a, $1
-
-.asm_170be0
- ld [ScriptVar], a
- ret
-; 170be4
-
-Function170be4: ; 170be4
- ld a, $5
- call GetSRAMBank
- xor a
- ld hl, $a894
- ld bc, $0008
- call ByteFill
- call CloseSRAM
- ret
-; 170bf7
-
-Function170bf7: ; 170bf7
- ld a, $5
- call GetSRAMBank
- ld hl, $a89a
- xor a
- ld [hli], a
- ld [hl], a
- call CloseSRAM
- ret
-; 170c06
-
-Function170c06: ; 170c06
- ld a, $5
- call GetSRAMBank
- ld hl, $a894
- ld a, [wd0ee]
- and a
- jr nz, .asm_170c15
- inc [hl]
-
-.asm_170c15
- inc hl
- inc hl
- ld a, [$a89b]
- add [hl]
- ld [hld], a
- ld a, [$a89a]
- adc [hl]
- ld [hli], a
- jr nc, .asm_170c27
- ld a, $ff
- ld [hld], a
- ld [hli], a
-
-.asm_170c27
- inc hl
- push hl
- ld de, 0
- xor a
- ld [wd265], a
-.asm_170c30
- ld hl, PartyMon1HP
- ld a, [wd265]
- call GetPartyLocation
- ld a, [hli]
- ld b, a
- ld c, [hl]
- inc hl
- inc hl
- ld a, [hld]
- sub c
- ld c, a
- ld a, [hl]
- sbc b
- ld b, a
- push de
- pop hl
- add hl, bc
- push hl
- pop de
- jr c, .asm_170c58
- ld a, [wd265]
- inc a
- ld [wd265], a
- cp $3
- jr c, .asm_170c30
- jr .asm_170c5b
-
-.asm_170c58
- ld de, -1
-
-.asm_170c5b
- pop hl
- inc hl
- ld a, e
- add [hl]
- ld [hld], a
- ld a, d
- adc [hl]
- ld [hli], a
- jr nc, .asm_170c69
- ld a, $ff
- ld [hld], a
- ld [hli], a
-
-.asm_170c69
- inc hl
- push hl
- ld b, $0
- ld c, $0
-.asm_170c6f
- ld hl, PartyMon1HP
- ld a, b
- push bc
- call GetPartyLocation
- pop bc
- ld a, [hli]
- or [hl]
- jr nz, .asm_170c7d
- inc c
-
-.asm_170c7d
- inc b
- ld a, b
- cp $3
- jr c, .asm_170c6f
- pop hl
- ld a, [hl]
- add c
- ld [hl], a
- call CloseSRAM
- ret
-; 170c8b
-
-Function170c8b: ; 170c8b
- ld hl, LastPlayerCounterMove
- ld b, $5
-.asm_170c90
- ld a, [hl]
- xor $ff
- ld [hli], a
- dec b
- jr nz, .asm_170c90
- ret
-; 170c98
-
-Function170c98: ; 170c98
- ld c, $3
- ld hl, $c608 + 13
-.asm_170c9d
- push hl
- ld a, [hl]
- cp $fc
- jr c, .asm_170ca6
- ld a, $1
- ld [hl], a
-
-.asm_170ca6
- inc hl
- ld b, $3
-.asm_170ca9
- ld a, [hl]
- and a
- jr z, .asm_170cb1
- cp $fc
- jr c, .asm_170cb9
-
-.asm_170cb1
- xor a
- ld [hl], a
- inc hl
- dec b
- jr nz, .asm_170cb1
- jr .asm_170cbd
-
-.asm_170cb9
- inc hl
- dec b
- jr nz, .asm_170ca9
-
-.asm_170cbd
- pop hl
- ld de, $003b
- add hl, de
- dec c
- jr nz, .asm_170c9d
- ret
-; 170cc6
-
-Function170cc6: ; 170cc6
- ld a, [rSVBK]
- push af
- ld a, $6
- ld [rSVBK], a
- ld hl, LZ_170d16
- ld de, wd000
- call Decompress
- ld a, $1
- ld [rVBK], a
- ld de, wd000
- ld hl, VTiles0
- lb bc, $6, $c1
- call Get2bpp
- xor a
- ld [rVBK], a
- ld hl, LZ_1715a4
- ld de, wd000
- call Decompress
- ld de, Unkn1Pals
- ld hl, VTiles0
- lb bc, $6, $53
- call Get2bpp
- pop af
- ld [rSVBK], a
- ret
-; 170d02
-
-Function170d02: ; 170d02
- ld a, $1
- ld [rVBK], a
- ld de, GFX_171848
- ld hl, $8c10
- lb bc, BANK(GFX_171848), $18
- call Get2bpp
- xor a
- ld [rVBK], a
- ret
-; 170d16
-
-LZ_170d16:
-INCBIN "gfx/unknown/170d16.2bpp.lz"
-
-LZ_1715a4:
-INCBIN "gfx/unknown/1715a4.2bpp.lz"
-
-GFX_171848:
-INCBIN "gfx/unknown/171848.2bpp"
-
-Function1719c8: ; 1719c8 (5c:59c8)
- ld a, [$ffaa]
- push af
- ld a, $1
- ld [$ffaa], a
- call Function1719d6
- pop af
- ld [$ffaa], a
- ret
-
-Function1719d6: ; 1719d6 (5c:59d6)
- callba Function1183cb
- call Function1719ed
- ld a, [rSVBK] ; $ff00+$70
- push af
- ld a, $5
- ld [rSVBK], a ; $ff00+$70
- call Function171a11
- pop af
- ld [rSVBK], a ; $ff00+$70
- ret
-
-Function1719ed: ; 1719ed (5c:59ed)
- xor a
- ld [wcd49], a
- ld [wcd4a], a
- dec a
- ld [wcd4b], a
- call WhiteBGMap
- call ClearSprites
- callba Function171d2b
- callba Function104061
- callba Function8cf53
- ret
-
-Function171a11: ; 171a11 (5c:5a11)
- call Functiona57
- ld a, [wcd49]
- bit 7, a
- jr nz, .asm_171a2c
- call Function171a36
- callba Function8cf69
- callba Function104061
- jr Function171a11
-.asm_171a2c
- callba Function8cf53
- call ClearSprites
- ret
-
-Function171a36: ; 171a36 (5c:5a36)
- ld a, [wcd49]
- ld e, a
- ld d, 0
- ld hl, Jumptable_171a45
- add hl, de
- add hl, de
- ld a, [hli]
- ld h, [hl]
- ld l, a
- jp [hl]
-
-Jumptable_171a45: ; 171a45 (5c:5a45)
- dw Function171a95
- dw Function171ac9
- dw Function171a5d
- dw Function171ad7
- dw Function171a5d
- dw Function171aec
- dw Function171b4b
- dw Function171b85
- dw Function171bcc
- dw Function171c2c
- dw Function171c39
- dw Function171c41
-
-
-Function171a5d: ; 171a5d (5c:5a5d)
- ld a, [wc821]
- bit 1, a
- jr nz, .asm_171a6a
- bit 0, a
- ret nz
- jp Function171c66
-.asm_171a6a
- ld a, $0
- call Function3e32
- ld [wc300], a
- ld a, l
- ld [wc301], a
- ld a, h
- ld [wc302], a
- ld a, $a
- call Function3e32
- ld a, [rSVBK] ; $ff00+$70
- push af
- ld a, $1
- ld [rSVBK], a ; $ff00+$70
- callba Function118452
- pop af
- ld [rSVBK], a ; $ff00+$70
- ld a, $a
- ld [wcd49], a
- ret
-
-Function171a95: ; 171a95 (5c:5a95)
- callba Function171ccd
- hlcoord 2, 8
- ld de, String_171aa7
- call PlaceString
- jp Function171c66
-; 171aa7 (5c:5aa7)
-
-String_171aa7: ; 171aa7
- db "モバイルアダプタに"
- next "せつぞく しています"
- next "しばらく おまちください"
- db "@"
-; 171ac9
-
-Function171ac9: ; 171ac9 (5c:5ac9)
- ld de, wcd81
- ld hl, $5c
- ld a, $2
- call Function3e32
- jp Function171c66
-
-Function171ad7: ; 171ad7 (5c:5ad7)
- xor a
- ld hl, $c608
- ld bc, $66
- call ByteFill
- ld de, $c608
- ld a, $c
- call Function3e32
- jp Function171c66
-
-Function171aec: ; 171aec (5c:5aec)
- ld a, [rSVBK] ; $ff00+$70
- push af
- ld a, $1
- ld [rSVBK], a ; $ff00+$70
- callba Function118452
- pop af
- ld [rSVBK], a ; $ff00+$70
- hlcoord 2, 6
- ld a, $8
-.asm_171b01
- push af
- push hl
- xor a
- ld bc, $10
- call ByteFill
- pop hl
- ld de, $14
- add hl, de
- pop af
- dec a
- jr nz, .asm_171b01
- hlcoord 2, 7
- ld a, $3
- ld de, $c608
-.asm_171b1b
- push af
- push hl
- ld a, [de]
- and a
- jr z, .asm_171b34
- ld a, [wcd4b]
- inc a
- ld [wcd4b], a
- push hl
- call Function171b42
- pop hl
- ld bc, $ffec
- add hl, bc
- call Function171b42
-.asm_171b34
- pop hl
- ld bc, $14
- add hl, bc
- add hl, bc
- add hl, bc
- pop af
- dec a
- jr nz, .asm_171b1b
- jp Function171c66
-
-Function171b42: ; 171b42 (5c:5b42)
- ld a, [de]
- inc de
- and a
- ret z
- sub $20
- ld [hli], a
- jr Function171b42
-
-Function171b4b: ; 171b4b (5c:5b4b)
- lb de, $40, $10
- ld a, $1d
- call Function3b2a
- ld hl, $c
- add hl, bc
- ld a, $8
- ld [hl], a
- lb de, $40, $98
- ld a, $1d
- call Function3b2a
- ld hl, $c
- add hl, bc
- ld a, $9
- ld [hl], a
- lb de, $8a, $70
- ld a, $1d
- call Function3b2a
- ld hl, $c
- add hl, bc
- ld a, $a
- ld [hl], a
- ld a, $4
- ld [wcd23], a
- ld a, $8
- ld [wcd24], a
- jp Function171c66
-
-Function171b85: ; 171b85 (5c:5b85)
- ld hl, hJoyPressed ; $ffa7
- ld a, [hl]
- and $2
- jp nz, Function171b9f
- ld a, [hl]
- and $1
- jp nz, Function171bbd
- ld a, [hl]
- and $40
- jr nz, asm_171ba5
- ld a, [hl]
- and $80
- jr nz, asm_171baf
- ret
-
-Function171b9f: ; 171b9f (5c:5b9f)
- ld a, $80
- ld [wcd49], a
- ret
-asm_171ba5: ; 171ba5 (5c:5ba5)
- ld a, [wcd4a]
- and a
- ret z
- dec a
- ld [wcd4a], a
- ret
-asm_171baf: ; 171baf (5c:5baf)
- ld a, [wcd4b]
- ld c, a
- ld a, [wcd4a]
- cp c
- ret z
- inc a
- ld [wcd4a], a
- ret
-
-Function171bbd: ; 171bbd (5c:5bbd)
- call PlayClickSFX
- ld a, $8
- ld [wcd23], a
- xor a
- ld [wcd24], a
- jp Function171c66
-
-Function171bcc: ; 171bcc (5c:5bcc)
- ld hl, hJoyPressed ; $ffa7
- ld a, [hl]
- and $2
- jp nz, Function171bdc
- ld a, [hl]
- and $1
- jp nz, Function171beb
- ret
-
-Function171bdc: ; 171bdc (5c:5bdc)
- ld a, $4
- ld [wcd23], a
- ld a, $8
- ld [wcd24], a
- ld hl, wcd49
- dec [hl]
- ret
-
-Function171beb: ; 171beb (5c:5beb)
- ld a, $5
- call GetSRAMBank
- ld a, [wcd4a]
- ld [$aa4a], a
- call CloseSRAM
- ld hl, MenuDataHeader_171c6b
- call LoadMenuDataHeader
- call Function1cbb
- call Function1cfd
- callba Function104061
- hlcoord 1, 14
- ld de, String_171c73
- call PlaceString
- ld a, [wcd4a]
- cp $2
- jr z, .asm_171c1f
- ld a, $8
- jr .asm_171c21
-.asm_171c1f
- ld a, $c
-.asm_171c21
- ld [wcd24], a
- ld a, $1e
- ld [wcd4c], a
- call Function171c66
-
-Function171c2c: ; 171c2c (5c:5c2c)
- ld hl, wcd4c
- dec [hl]
- ret nz
- call Function1c07
- call WhiteBGMap
- jr asm_171c60
-
-Function171c39: ; 171c39 (5c:5c39)
- ld a, $28
- ld [wcd4c], a
- call Function171c66
-
-Function171c41: ; 171c41 (5c:5c41)
- ld hl, wcd4c
- dec [hl]
- ret nz
- call WhiteBGMap
- callba Function106462
- callba Function106464
- ld a, $2
- ld [wc303], a
- callba Function17f555
-asm_171c60: ; 171c60 (5c:5c60)
- ld a, $80
- ld [wcd49], a
- ret
-
-Function171c66: ; 171c66 (5c:5c66)
- ld hl, wcd49
- inc [hl]
- ret
-; 171c6b (5c:5c6b)
-
-MenuDataHeader_171c6b: ; 171c6b
- db $40 ; flags
- db 12, 0 ; start coords
- db 17, 19 ; end coords
- dw NULL
- db 0 ; default option
-; 171c73
-
-String_171c73: ; 171c73
- db "モバイルセンターを けってい"
- next "しました@"
-; 171c87
-
-Function171c87: ; 171c87 (5c:5c87)
- call DisableLCD
- ld hl, GFX_171db1
- ld de, $9000
- ld bc, $6e0
- call CopyBytes
- ld hl, LZ_172abd
- ld de, $8000
- call Decompress
- call EnableLCD
- ld hl, Tilemap_172491
- ld de, TileMap
- ld bc, $168
- call CopyBytes
- ld hl, Attrmap_1727ed
- ld de, AttrMap
- ld bc, $168
- call CopyBytes
- hlcoord 3, 2
- ld de, String_172e31
- call PlaceString
- hlcoord 3, 16
- ld de, String_172e3f
- call PlaceString
- ret
-
-Function171ccd: ; 171ccd (5c:5ccd)
- ld a, [rSVBK] ; $ff00+$70
- push af
- ld a, $5
- ld [rSVBK], a ; $ff00+$70
- ld hl, Palette_171d71
- ld de, Unkn1Pals
- ld bc, $40
- call CopyBytes
- ld hl, MovementAnimation
- ld a, $ff
- ld [hli], a
- ld a, $7f
- ld [hl], a
- call Function32f9
- pop af
- ld [rSVBK], a ; $ff00+$70
- ret
-
-Function171cf0: ; 171cf0 (5c:5cf0)
- xor a
- hlcoord 4, 15
- ld [hli], a
- ld [hli], a
- ld a, [wcd4b]
- xor $1
- ld [wcd4b], a
- and a
- jr nz, .asm_171d16
- ld hl, Tilemap_17251d
- decoord 0, 7
- ld bc, $8c
- call CopyBytes
- hlcoord 3, 16
- ld de, String_172e3f
- jp PlaceString
-.asm_171d16
- ld hl, Tilemap_1725f9
- decoord 0, 7
- ld bc, $8c
- call CopyBytes
- hlcoord 3, 16
- ld de, String_172e4e
- jp PlaceString
-
-Function171d2b: ; 171d2b (5c:5d2b)
- call DisableLCD
- ld hl, GFX_171db1
- ld de, $9000
- ld bc, $6e0
- call CopyBytes
- ld hl, LZ_172abd
- ld de, $8000
- call Decompress
- call EnableLCD
- ld hl, Tilemap_172685
- ld de, TileMap
- ld bc, $168
- call CopyBytes
- ld hl, Attrmap_172955
- ld de, AttrMap
- ld bc, $168
- call CopyBytes
- hlcoord 2, 2
- ld de, String_172e5d
- call PlaceString
- hlcoord 14, 16
- ld de, String_172e58
- call PlaceString
- ret
-; 171d71 (5c:5d71)
-
-Palette_171d71:
- RGB 0, 0, 0
- RGB 3, 0, 0
- RGB 5, 0, 0
- RGB 31, 31, 29
- RGB 0, 2, 10
- RGB 2, 10, 21
- RGB 0, 0, 0
- RGB 10, 26, 31
- RGB 0, 0, 0
- RGB 0, 7, 8
- RGB 31, 8, 0
- RGB 1, 17, 15
- RGB 31, 16, 0
- RGB 31, 22, 0
- RGB 31, 27, 0
- RGB 31, 31, 0
- RGB 31, 18, 6
- RGB 0, 3, 0
- RGB 0, 9, 0
- RGB 0, 12, 0
- RGB 0, 16, 0
- RGB 0, 22, 0
- RGB 0, 25, 0
- RGB 0, 27, 0
- RGB 5, 5, 16
- RGB 8, 19, 28
- RGB 0, 0, 0
- RGB 31, 31, 31
- RGB 31, 31, 29
- RGB 21, 21, 20
- RGB 11, 11, 10
- RGB 0, 0, 0
-GFX_171db1:
-INCBIN "gfx/unknown/171db1.2bpp"
-Tilemap_172491:
-INCBIN "gfx/unknown/172491.tilemap"
-Tilemap_17251d:
-INCBIN "gfx/unknown/17251d.tilemap"
-Tilemap_1725f9:
-INCBIN "gfx/unknown/1725f9.tilemap"
-Tilemap_172685:
-INCBIN "gfx/unknown/172685.tilemap"
-Attrmap_1727ed:
-INCBIN "gfx/unknown/1727ed.attrmap"
-Attrmap_172955:
-INCBIN "gfx/unknown/172955.attrmap"
-LZ_172abd:
-INCBIN "gfx/pokedex/slowpoke.2bpp.lz"
-
-String_172e31: ; 172e31
- db "パスワード", $1f, "いれてください@"
-String_172e3f: ; 172e3f
- db "きりかえ やめる けってい@"
-String_172e4e: ; 172e4e
- db "きりかえ やめる "
-String_172e58:
- db "けってい@"
-String_172e5d: ; 172e5d
- db "せつぞくする モバイルセンターを"
- next "えらんで ください@"
-; 172e78
-
-
-Function172e78: ; 172e78 (5c:6e78)
- ld a, $7f
- ld hl, TileMap
- ld bc, $168
- call ByteFill
- ld a, $7
- ld hl, AttrMap
- ld bc, $168
- call ByteFill
- call DisableLCD
- ld hl, GFX_172f1f
- ld de, $9000
- ld bc, $610
- call CopyBytes
- call EnableLCD
- ld hl, Tilemap_1733af
- ld de, TileMap
- ld bc, $168
- call CopyBytes
- ld hl, Attrmap_173517
- ld de, AttrMap
- ld bc, $168
- call CopyBytes
- ret
-; 172eb9 (5c:6eb9)
-
-Function172eb9:
- ld a, [rSVBK] ; $ff00+$70
- push af
- ld a, $5
- ld [rSVBK], a ; $ff00+$70
- ld hl, Palette_172edf
- ld de, Unkn1Pals
- ld bc, $40
- call CopyBytes
- ld hl, Palette_172edf
- ld de, BGPals
- ld bc, $40
- call CopyBytes
- call Function32f9
- pop af
- ld [rSVBK], a ; $ff00+$70
- ret
-; 172edf (5c:6edf)
-
-Palette_172edf:
- RGB 5, 12, 17
- RGB 31, 31, 31
- RGB 18, 25, 28
- RGB 10, 17, 21
- RGB 6, 13, 18
- RGB 31, 31, 31
- RGB 20, 26, 28
- RGB 12, 19, 23
- RGB 3, 10, 16
- RGB 31, 31, 31
- RGB 6, 13, 18
- RGB 20, 26, 28
- RGB 0, 0, 0
- RGB 0, 0, 0
- RGB 0, 0, 0
- RGB 0, 0, 0
- RGB 0, 0, 0
- RGB 0, 0, 0
- RGB 0, 0, 0
- RGB 0, 0, 0
- RGB 0, 0, 0
- RGB 0, 0, 0
- RGB 0, 0, 0
- RGB 0, 0, 0
- RGB 5, 5, 16
- RGB 8, 19, 28
- RGB 0, 0, 0
- RGB 31, 31, 31
- RGB 31, 31, 31
- RGB 0, 0, 0
- RGB 0, 0, 0
- RGB 0, 0, 0
-
-GFX_172f1f:
-INCBIN "gfx/unknown/172f1f.2bpp"
-
-Tilemap_1733af:
-INCBIN "gfx/unknown/1733af.tilemap"
-
-Attrmap_173517:
-INCBIN "gfx/unknown/173517.attrmap"
+INCLUDE "misc/mobile_45.asm"
SECTION "bank5D", ROMX, BANK[$5D]
@@ -139604,5239 +95529,7 @@ Function178000:
; 17801f (5e:401f)
-SECTION "bank5F", ROMX, BANK[$5F]
-
-Function17c000: ; 17c000
-
- call DisableLCD
-
- ld hl, VTiles2
- ld bc, $310
- xor a
- call ByteFill
-
- call Functione51
- call Functione5f
-
- ld hl, HaveWantMap
- ld de, TileMap
- ld bc, AttrMap
-
- ld a, SCREEN_HEIGHT
-.y
- push af
- ld a, SCREEN_WIDTH
-
- push hl
-.x
- push af
- ld a, [hli]
- ld [de], a
- inc de
- ld a, [hli]
- ld [bc], a
- inc bc
- pop af
- dec a
- jr nz, .x
- pop hl
-
- push bc
- ld bc, BG_MAP_WIDTH * 2
- add hl, bc
- pop bc
-
- pop af
- dec a
- jr nz, .y
-
- ld a, [rSVBK]
- push af
-
- ld a, 5 ; BANK(Unkn1Pals)
- ld [rSVBK], a
-
- ld hl, HaveWantPals
- ld de, Unkn1Pals
- ld bc, $80
- call CopyBytes
-
- pop af
- ld [rSVBK], a
-
- ld hl, MobileSelectGFX
- ld de, $8300
- ld bc, $200
- call CopyBytes
-
- ld a, 1
- ld [rVBK], a
-
- ld hl, HaveWantGFX
- ld de, VTiles2
- ld bc, $800
- call CopyBytes
-
- ld hl, HaveWantGFX + $800
- ld de, VTiles1
- ld bc, $100
- call CopyBytes
-
- xor a
- ld [rVBK], a
-
- call EnableLCD
- callba Function104061
- ret
-; 17c083
-
-HaveWantGFX: ; 17c083
-INCBIN "gfx/mobile/havewant.2bpp"
-
-MobileSelectGFX: ; 17c983
-INCBIN "gfx/mobile/select.2bpp"
-
-HaveWantMap: ; 17cb83
-; Interleaved tile/palette map.
-INCBIN "baserom.gbc", $17cb83, $17cff3 - $17cb83
-
-HaveWantPals: ; 17cff3
-; BG and OBJ palettes.
-INCBIN "baserom.gbc", $17cff3, $17d073 - $17cff3
-
-
-Function17d073: ; 17d073
-.asm_17d073
- ld a, [de]
- inc de
- and a
- jr z, .asm_17d0ae
- cp $60
- jr nc, .asm_17d0ae
- cp $4e
- jr z, .asm_17d0ae
- cp $50
- jr z, .asm_17d0b1
- cp $5
- jr c, .asm_17d0ac
- cp $14
- jr c, .asm_17d0ae
- cp $19
- jr c, .asm_17d0ac
- cp $1d
- jr c, .asm_17d0ae
- cp $26
- jr c, .asm_17d0ac
- cp $35
- jr c, .asm_17d0ae
- cp $3a
- jr c, .asm_17d0ac
- cp $3f
- jr c, .asm_17d0ae
- cp $40
- jr c, .asm_17d0ac
- cp $49
- jr c, .asm_17d0ae
-
-.asm_17d0ac
- scf
- ret
-
-.asm_17d0ae
- dec c
- jr nz, .asm_17d073
-
-.asm_17d0b1
- and a
- ret
-; 17d0b3
-
-Function17d0b3: ; 17d0b3
-.asm_17d0b3
- 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
- cp $5
- jr c, .asm_17d0ec
- cp $14
- jr c, .asm_17d0ee
- cp $19
- jr c, .asm_17d0ec
- cp $1d
- jr c, .asm_17d0ee
- cp $26
- jr c, .asm_17d0ec
- 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
- scf
- ret
-
-.asm_17d0ee
- dec c
- jr nz, .asm_17d0b3
- and a
- ret
-; 17d0f3
-
-Function17d0f3: ; 17d0f3
- ld a, [$c608 + 5]
- ld [wc702], a
- ld [CurPartySpecies], a
- ld a, [wcd81]
- ld [wc74e], a
- ld hl, $c63d
- ld de, wc724
- ld bc, $0005
- call CopyBytes
- ld a, $50
- ld [de], a
- ld a, [$c608 + 11]
- ld [wc731], a
- ld a, [$c608 + 12]
- ld [wc732], a
- ld hl, $c608 + 26
- ld a, [hli]
- ld [wc72f], a
- ld a, [hl]
- ld [wc730], a
- ld bc, $c608 + 5
- callba GetCaughtGender
- ld a, c
- ld [wc733], a
- call SpeechTextBox
- call FadeToMenu
- callba Function10804d
- callba Function17d1f1
- ld a, $1
- ld [wd1e9], a
- ld a, $2
- ld [InLinkBattle], a
- callba Function421d8
- xor a
- ld [InLinkBattle], a
- callba Function14a58
- ld a, $5
- call GetSRAMBank
- ld a, $5
- ld [$a800], a
- call CloseSRAM
- ld a, [MapGroup]
- ld b, a
- ld a, [MapNumber]
- ld c, a
- call GetMapTrigger
- ld a, d
- or e
- jr z, .asm_17d180
- ld a, $1
- ld [de], a
-
-.asm_17d180
- call Function2b3c
- call RestartMapMusic
- ret
-; 17d187
-
-Function17d187: ; 17d187
- ld hl, Unknown_17d194
- ld de, $c63d
- ld bc, $0005
- call CopyBytes
- ret
-; 17d194
-
-Unknown_17d194:
-INCBIN "baserom.gbc", $17d194, $17d199 - $17d194
-
-Function17d199: ; 17d199
- ld hl, Unknown_17d1a6
- ld de, $c642
- ld bc, $0005
- call CopyBytes
- ret
-; 17d1a6
-
-Unknown_17d1a6:
-INCBIN "baserom.gbc", $17d1a6, $17d1ab - $17d1a6
-
-Function17d1ab: ; 17d1ab
- ld a, $50
- ld hl, $c647
- ld bc, $0021
- call ByteFill
- ld hl, Unknown_17d1c3
- ld de, $c647
- ld bc, $0006
- call CopyBytes
- ret
-; 17d1c3
-
-Unknown_17d1c3:
-INCBIN "baserom.gbc", $17d1c3, $17d1c9 - $17d1c3
-
-Function17d1c9: ; 17d1c9
- ld a, $50
- ld de, $c668
- ld bc, $0005
- call ByteFill
- ld hl, Unknown_17d194
- ld de, $c668
- ld bc, $0005
- call CopyBytes
- ret
-; 17d1e1
-
-Function17d1e1: ; 17d1e1
-.asm_17d1e1
- ld a, [de]
- inc de
- cp $4e
- jr nz, .asm_17d1ea
- dec b
- jr z, .asm_17d1ef
-
-.asm_17d1ea
- dec c
- jr nz, .asm_17d1e1
- and a
- ret
-
-.asm_17d1ef
- scf
- ret
-; 17d1f1
-
-Function17d1f1: ; 17d1f1
- ld a, [CurPartySpecies]
- dec a
- call SetSeenAndCaughtMon
-
- ld a, [CurPartySpecies]
- cp UNOWN
- jr nz, .asm_17d223
-
- ld hl, PartyMon1DVs
- ld a, [PartyCount]
- dec a
- ld bc, PartyMon2 - PartyMon1
- call AddNTimes
- predef GetUnownLetter
- callab Functionfba18
- ld a, [wdef4]
- and a
- jr nz, .asm_17d223
-
- ld a, [UnownLetter]
- ld [wdef4], a
-
-.asm_17d223
- ret
-; 17d224
-
-Function17d224: ; 17d224
- ld a, [ScriptVar]
- and a
- jr nz, .asm_17d234
- ld a, $4
- ld [ScriptVar], a
- ld hl, MenuDataHeader_17d26a
- jr .asm_17d23c
-
-.asm_17d234
- ld a, $4
- ld [ScriptVar], a
- ld hl, MenuDataHeader_17d28f
-
-.asm_17d23c
- call LoadMenuDataHeader
- call Function17d246
- call Function1c17
- ret
-; 17d246
-
-Function17d246: ; 17d246
- call Function1d81
- jr c, .asm_17d264
- ld a, [ScriptVar]
- cp $5
- jr nz, .asm_17d25d
- ld a, [wcfa9]
- cp $3
- ret z
- jr c, .asm_17d25d
- dec a
- jr .asm_17d260
-
-.asm_17d25d
- ld a, [wcfa9]
-
-.asm_17d260
- ld [ScriptVar], a
- ret
-
-.asm_17d264
- ld a, $4
- ld [ScriptVar], a
- ret
-; 17d26a
-
-MenuDataHeader_17d26a: ; 17d26a
- db $40 ; flags
- db 0, 0 ; start coords
- db 9, 14 ; end coords
- dw MenuData2_17d272
- db 1 ; default option
-
-MenuData2_17d272: ; 17d272
- db $a0 ; flags
- db 4
- db "ニュース", $1f, "よみこむ@"
- db "ニュース", $1f, "みる@"
- db "せつめい@"
- db "やめる@"
-; 17d28f
-
-MenuDataHeader_17d28f: ; 17d28f
- db $40 ; flags
- db 0, 0 ; start coords
- db 7, 14 ; end coords
- dw MenuData2_17d297
- db 1 ; default option
-
-MenuData2_17d297: ; 17d297
- db $a0 ; flags
- db 3
- db "Challenge@"
- db "Explanation@"
- db "Cancel@"
-; 17d2b6
-
-Function17d2b6: ; 17d2b6
- call Function17d2c0
- callba Function1181da
- ret
-; 17d2c0
-
-Function17d2c0: ; 17d2c0
- xor a
- ld [wcf63], a
- ld [wcf64], a
- ld [wcf65], a
- ld [wcf66], a
- ret
-; 17d2ce
-
-Function17d2ce: ; 17d2ce
- ld a, $5
- call GetSRAMBank
- ld a, [$aa72]
- call CloseSRAM
- and a
- jr nz, .asm_17d2e2
- ld a, $1
- ld [ScriptVar], a
- ret
-
-.asm_17d2e2
- call Function17d314
- ret c
- call SpeechTextBox
- call FadeToMenu
- ld a, [rSVBK]
- push af
- ld a, $4
- ld [rSVBK], a
- call Function17d370
- call Function17d45a
- pop af
- ld [rSVBK], a
- ld de, MUSIC_MOBILE_CENTER
- ld a, e
- ld [wMapMusic], a
- ld [MusicFadeIDLo], a
- ld a, d
- ld [MusicFadeIDHi], a
- call PlayMusic
- call Function222a
- call Function2b3c
- ret
-; 17d314
-
-Function17d314: ; 17d314
- ld a, $5
- call GetSRAMBank
- ld a, [$b1b1]
- call CloseSRAM
- cp $21
- jr nc, .asm_17d354
- ld a, $6
- call GetSRAMBank
- ld l, $0
- ld h, l
- ld de, $a006
- ld a, [$a004]
- ld c, a
- ld a, [$a005]
- ld b, a
-.asm_17d336
- push bc
- ld a, [de]
- inc de
- ld c, a
- ld b, $0
- add hl, bc
- pop bc
- dec bc
- ld a, b
- or c
- jr nz, .asm_17d336
- ld a, [$a002]
- cp l
- jr nz, .asm_17d354
- ld a, [$a003]
- cp h
- jr nz, .asm_17d354
- call CloseSRAM
- and a
- ret
-
-.asm_17d354
- call CloseSRAM
- ld a, $5
- call GetSRAMBank
- xor a
- ld hl, $aa73
- ld bc, $000c
- call ByteFill
- call CloseSRAM
- ld a, $2
- ld [ScriptVar], a
- scf
- ret
-; 17d370
-
-Function17d370: ; 17d370
- xor a
- ld [wcd77], a
- ld [wcd78], a
- ld [wcd79], a
- dec a
- ld [wcd6c], a
- call WhiteBGMap
- call ClearSprites
- call ClearScreen
- callba Function104061
- call DisableLCD
- ld hl, $8ee0
- ld de, $c608
- ld bc, $0010
- call CopyBytes
- ld a, $1
- ld [rVBK], a
- ld hl, PokemonNewsGFX
- ld de, VTiles1
- ld bc, $0480
- call CopyBytes
- xor a
- ld hl, $97f0
- ld bc, $0010
- call ByteFill
- ld hl, $c608
- ld de, $8ee0
- ld bc, $0010
- call CopyBytes
- xor a
- ld [rVBK], a
- ld hl, GFX_17eb7e
- ld de, $9600
- ld bc, $0010
- call CopyBytes
- call EnableLCD
- call Function17d60b
- ld a, $0
- ld [BGMapBuffer], a
- ld a, $d0
- ld [wcd21], a
- ld a, $6
- call GetSRAMBank
- ld hl, $a006
- ld de, Unkn1Pals
- ld bc, $1000
- call CopyBytes
- call CloseSRAM
- ret
-; 17d3f6
-
-Function17d3f6: ; 17d3f6
- call WhiteBGMap
- call ClearSprites
- call ClearScreen
- callba Function104061
-
-Function17d405:
- call DisableLCD
- ld hl, $8ee0
- ld de, $c608
- ld bc, $0010
- call CopyBytes
- ld a, $1
- ld [rVBK], a
- ld hl, PokemonNewsGFX
- ld de, VTiles1
- ld bc, $0480
- call CopyBytes
- xor a
- ld hl, $97f0
- ld bc, $0010
- call ByteFill
- ld hl, $c608
- ld de, $8ee0
- ld bc, $0010
- call CopyBytes
- xor a
- ld [rVBK], a
- call EnableLCD
- ld a, [rSVBK]
- push af
- ld a, $5
- ld [rSVBK], a
- ld hl, Palette_17eff6
- ld de, Unkn1Pals
- ld bc, $0040
- call CopyBytes
- call Function32f9
- pop af
- ld [rSVBK], a
- ret
-; 17d45a
-
-Function17d45a: ; 17d45a
-.asm_17d45a
- call Functiona57
- ld a, [wcd77]
- bit 7, a
- jr nz, .asm_17d46f
- call Function17d474
- callba Function104061
- jr .asm_17d45a
-
-.asm_17d46f
- xor a
- ld [ScriptVar], a
- ret
-; 17d474
-
-Function17d474: ; 17d474
- ld a, [wcd77]
- ld e, a
- ld d, 0
- ld hl, Jumptable_17d483
- add hl, de
- add hl, de
- ld a, [hli]
- ld h, [hl]
- ld l, a
- jp [hl]
-; 17d483
-
-Jumptable_17d483: ; 17d483
- dw Function17d48d
- dw Function17d5be
- dw Function17d5c4
- dw Function17d6fd
- dw Function17e427
-; 17d48d
-
-Function17d48d: ; 17d48d
- ld hl, Palette_17eff6
- ld de, $c608
- ld bc, $0040
- call CopyBytes
- ld hl, TileAttrmap_17eb8e
- ld de, TileMap
- ld bc, AttrMap
- ld a, $12
-.asm_17d4a4
- push af
- ld a, $14
- push hl
-.asm_17d4a8
- push af
- ld a, [hli]
- cp $7f
- jr z, .asm_17d4b0
- add $80
-
-.asm_17d4b0
- ld [de], a
- inc de
- ld a, [hli]
- ld [bc], a
- inc bc
- pop af
- dec a
- jr nz, .asm_17d4a8
- pop hl
- push bc
- ld bc, $0040
- add hl, bc
- pop bc
- pop af
- dec a
- jr nz, .asm_17d4a4
- ld a, [BGMapBuffer]
- ld l, a
- ld a, [wcd21]
- ld h, a
- ld a, [hli]
- ld e, a
- ld a, [wcd6c]
- cp e
- jr z, .asm_17d4e0
- ld a, e
- ld [wcd6c], a
- ld [wc2c0], a
- ld d, $0
- call PlayMusic2
-
-.asm_17d4e0
- ld a, [hli]
- ld de, $c608
- ld c, $8
-.asm_17d4e6
- srl a
- jr nc, .asm_17d4f6
- ld b, $8
- push af
-.asm_17d4ed
- ld a, [hli]
- ld [de], a
- inc de
- dec b
- jr nz, .asm_17d4ed
- pop af
- jr .asm_17d4fc
-
-.asm_17d4f6
- push af
- ld a, e
- add $8
- ld e, a
- pop af
-
-.asm_17d4fc
- dec c
- jr nz, .asm_17d4e6
- push hl
- call Function17d5f6
- pop hl
- ld a, [hli]
- and a
- jr z, .asm_17d539
-.asm_17d508
- push af
- ld a, [hli]
- ld [wcd4f], a
- ld a, [hli]
- ld [wcd50], a
- ld a, [hli]
- ld [wcd51], a
- ld a, [hli]
- ld [wcd52], a
- ld a, [hli]
- sla a
- sla a
- sla a
- add $98
- ld [wcd53], a
- ld de, wcd4f
- call Function17e613
- ld a, [hli]
- ld [wcd53], a
- ld de, wcd4f
- call Function17e691
- pop af
- dec a
- jr nz, .asm_17d508
-
-.asm_17d539
- ld a, [hli]
-.asm_17d53a
- push af
- ld a, [hli]
- ld c, a
- ld a, [hli]
- ld b, a
- push hl
- pop de
- ld hl, TileMap
- add hl, bc
- call PlaceString
- push de
- pop hl
- inc hl
- pop af
- dec a
- jr nz, .asm_17d53a
- ld de, CreditsTimer
- ld bc, $000c
- call CopyBytes
- xor a
- ld [wcd2e], a
- ld [wcd2f], a
- inc a
- ld [wcd30], a
- ld [wcd31], a
- ld de, wcd32
- ld bc, $0010
- call CopyBytes
- ld a, [hli]
- ld [wcd42], a
- ld a, [hli]
- ld [wcd43], a
- ld a, [hli]
- ld [wcd44], a
- ld a, [hli]
- ld [wcd45], a
- ld a, [hli]
- ld [wcd46], a
- ld a, [hli]
- and a
- jr z, .asm_17d58a
- call Function17d6a1
-
-.asm_17d58a
- ld a, l
- ld [wcd49], a
- ld a, h
- ld [wcd4a], a
- ld a, [wcd42]
- ld c, a
- ld b, $0
- add hl, bc
- add hl, bc
- ld a, l
- ld [wcd4b], a
- ld a, h
- ld [wcd4c], a
- add hl, bc
- add hl, bc
- ld a, l
- ld [wcd4d], a
- ld a, h
- ld [wcd4e], a
- call Function17e451
- call Function17e55b
- call Function17e5af
- callba Function104061
- jp Function17e438
-; 17d5be
-
-Function17d5be: ; 17d5be
- call Function32f9
- call Function17e438
-
-Function17d5c4:
- ld a, [hJoyPressed]
- and a
- ret z
- ld c, $0
- ld b, c
- ld hl, wcd32
-.asm_17d5ce
- srl a
- jr c, .asm_17d5d6
- inc c
- inc c
- jr .asm_17d5ce
-
-.asm_17d5d6
- add hl, bc
- ld a, [hli]
- ld c, a
- ld a, [hli]
- ld b, a
- and c
- cp $ff
- ret z
- ld a, [BGMapBuffer]
- ld l, a
- ld a, [wcd21]
- ld h, a
- add hl, bc
- ld a, l
- ld [wcd78], a
- ld a, h
- ld [wcd79], a
- ld a, $3
- ld [wcd77], a
- ret
-; 17d5f6
-
-Function17d5f6: ; 17d5f6
- ld a, $5
- ld [rSVBK], a
- ld hl, $c608
- ld de, Unkn1Pals
- ld bc, $0040
- call CopyBytes
- ld a, $4
- ld [rSVBK], a
- ret
-; 17d60b
-
-Function17d60b: ; 17d60b
- ld a, $5
- call GetSRAMBank
- ld hl, $b1d3
- ld de, $c608
- ld bc, $0020
- call CopyBytes
- ld a, [$b1b1]
- ld c, a
- ld a, [$b1b2]
- ld b, a
- ld a, [$b1b3]
- ld l, a
- ld a, [$b1b4]
- ld h, a
- call CloseSRAM
- ld a, $6
- call GetSRAMBank
- ld de, wc708
- ld a, c
- and a
- jr z, .asm_17d684
-.asm_17d63b
- push bc
- ld a, l
- ld [de], a
- inc de
- ld a, h
- ld [de], a
- inc de
- ld bc, $000a
- add hl, bc
- pop bc
- ld a, [hli]
- ld [wcd4a], a
- ld a, [hli]
- ld [wcd49], a
- push hl
- push de
- ld hl, $c608
- ld e, b
- ld d, $0
- add hl, de
- ld a, [hli]
- ld [wcd4b], a
- ld a, [hl]
- ld [wcd4c], a
- pop de
- pop hl
- inc b
- inc b
- dec c
- dec c
- jr z, .asm_17d684
- push bc
- push de
- ld a, [wcd49]
- ld c, a
- ld a, [wcd4a]
- ld b, a
- ld a, [wcd4b]
- ld e, a
- ld a, [wcd4c]
- ld d, a
-.asm_17d67a
- add hl, de
- dec bc
- ld a, c
- or b
- jr nz, .asm_17d67a
- pop de
- pop bc
- jr .asm_17d63b
-
-.asm_17d684
- call CloseSRAM
- ld a, $5
- call GetSRAMBank
- ld hl, wc708
- ld de, $b1b3
- ld a, [$b1b1]
- ld c, a
- ld a, [$b1b2]
- ld b, a
- call CopyBytes
- call CloseSRAM
- ret
-; 17d6a1
-
-
-Function17d6a1: ; 17d6a1
- push hl
- ld a, [wcd6e]
- ld c, a
- ld b, $0
- ld a, $5
- call GetSRAMBank
- ld hl, $b1d3
- add hl, bc
- add hl, bc
- ld a, [hli]
- ld [wcd47], a
- ld a, [hl]
- ld [BGMapPalBuffer], a
- ld hl, $b1b3
- add hl, bc
- add hl, bc
- ld a, [hli]
- ld c, a
- ld a, [hl]
- ld h, a
- ld l, c
- call CloseSRAM
- ld a, $6
- call GetSRAMBank
- ld a, l
- ld [wcd5e], a
- ld a, h
- ld [wcd5f], a
- ld de, wcd60
- ld bc, $0004
- call CopyBytes
- inc hl
- inc hl
- ld de, wcd64
- ld bc, $0004
- call CopyBytes
- ld a, [hli]
- ld [wcd69], a
- ld a, [hli]
- ld [wcd68], a
- ld a, l
- ld [wcd6a], a
- ld a, h
- ld [wcd6b], a
- call CloseSRAM
- pop hl
- ret
-; 17d6fd
-
-Function17d6fd: ; 17d6fd
- ld a, [wcd77]
- bit 7, a
- jr nz, asm_17d721
- ld a, [wcd78]
- ld l, a
- ld a, [wcd79]
- ld h, a
- ld a, [hl]
- cp $ff
- jr z, asm_17d721
-
-Function17d711:
-.asm_17d711
- cp $31
- jr nc, .asm_17d711
- ld e, a
- ld d, 0
- ld hl, Jumptable_17d72a
- add hl, de
- add hl, de
- ld a, [hli]
- ld h, [hl]
- ld l, a
- jp [hl]
-
-asm_17d721
- call Function17e5af
- ld a, $2
- ld [wcd77], a
- ret
-; 17d72a
-
-Jumptable_17d72a: ; 17d72a
- dw Function17d78c
- dw Function17d78d
- dw Function17d7b4
- dw Function17d7c2
- dw Function17d7d3
- dw Function17d7e5
- dw Function17d818
- dw Function17d833
- dw Function17d85d
- dw Function17d902
- dw Function17d93a
- dw Function17d98b
- dw Function17d9e3
- dw Function17da31
- dw Function17da9c
- dw Function17dadc
- dw Function17db2d
- dw Function17db56
- dw Function17db77
- dw Function17dbe9
- dw Function17dc1f
- dw Function17dc9f
- dw Function17dca9
- dw Function17dccf
- dw Function17dd13
- dw Function17dd30
- dw Function17dd49
- dw Function17ddcd
- dw Function17de32
- dw Function17de91
- dw Function17ded9
- dw Function17e0fd
- dw Function17e133
- dw Function17e165
- dw Function17e1a1
- dw Function17e254
- dw Function17e261
- dw Function17e270
- dw Function17e27f
- dw Function17e293
- dw Function17e2a7
- dw Function17e367
- dw Function17e37e
- dw Function17e395
- dw Function17e3ac
- dw Function17e3c3
- dw Function17e3e0
- dw Function17e3f0
- dw Function17e409
-; 17d78c
-
-Function17d78c: ; 17d78c
- ret
-; 17d78d
-
-Function17d78d: ; 17d78d
- call Function17e415
- ld a, [hli]
- ld c, a
- ld a, [hli]
- ld b, a
- call Function17e41e
- ld a, $6
- call GetSRAMBank
- ld hl, $a006
- add hl, bc
- ld de, Unkn1Pals
- ld bc, $1000
- call CopyBytes
- call CloseSRAM
- xor a
- ld [wcd77], a
- call WhiteBGMap
- ret
-; 17d7b4
-
-Function17d7b4: ; 17d7b4
- call Function17e415
- ld a, [hli]
- ld e, a
- ld d, $0
- call PlayMusic2
- call Function17e41e
- ret
-; 17d7c2
-
-Function17d7c2: ; 17d7c2
- call Function17e415
- ld a, [hli]
- ld e, a
- ld d, $0
- call PlaySFX
- call WaitSFX
- call Function17e41e
- ret
-; 17d7d3
-
-Function17d7d3: ; 17d7d3
- call Function17e415
- ld a, [hli]
- dec a
- ld e, a
- ld d, $0
- call PlayCryHeader
- call WaitSFX
- call Function17e41e
- ret
-; 17d7e5
-
-Function17d7e5: ; 17d7e5
- call Function17e415
- ld a, [hli]
- ld [wcd4f], a
- ld a, [hli]
- ld [wcd50], a
- ld a, [hli]
- ld [wcd51], a
- ld a, [hli]
- ld [wcd52], a
- ld a, [hli]
- sla a
- sla a
- sla a
- add $98
- ld [wcd53], a
- ld de, wcd4f
- call Function17e613
- ld a, [hli]
- ld [wcd53], a
- ld de, wcd4f
- call Function17e691
- call Function17e41e
- ret
-; 17d818
-
-Function17d818: ; 17d818
- call Function17e415
- ld a, [hli]
- ld c, a
- ld a, [hli]
- ld b, a
- ld a, [hli]
- ld e, a
- ld a, [hli]
- ld d, a
- call Function17e41e
- call Function17e447
- ld e, l
- ld d, h
- ld hl, TileMap
- add hl, bc
- call PlaceString
- ret
-; 17d833
-
-Function17d833: ; 17d833
- call Function17e415
- ld a, [hli]
- ld e, a
- ld a, [hli]
- ld d, a
- ld a, [hli]
- ld c, a
- ld a, [hli]
- ld b, a
- call Function17e41e
- push de
- push bc
- call Function17e32b
- pop bc
- pop de
- call Function17e43d
- ld c, l
- ld b, h
- ld hl, TileMap
- add hl, de
- ld e, l
- ld d, h
- callba Function11c08f
- call Function17e349
- ret
-; 17d85d
-
-Function17d85d: ; 17d85d
- call Function17e415
- ld a, [hli]
- ld e, a
- ld a, [hli]
- ld d, a
- push hl
- ld hl, Unkn1Pals
- add hl, de
- ld de, wcc60
-.asm_17d86c
- ld a, [hli]
- ld [de], a
- inc de
- and a
- jr nz, .asm_17d86c
- pop hl
- ld de, $c608
- ld c, $0
-.asm_17d878
- ld a, [hli]
- cp $ff
- jr z, .asm_17d8c7
- ld [wcd4f], a
- ld a, [hli]
- ld [wcd50], a
- ld a, [hli]
- ld [wcd51], a
- ld a, [hli]
- ld [wcd52], a
- ld a, [wcd51]
- push af
- cp $c0
- jr c, .asm_17d89b
- ld a, [wcd4f]
- ld [rSVBK], a
- jr .asm_17d8a1
-
-.asm_17d89b
- ld a, [wcd4f]
- call GetSRAMBank
-
-.asm_17d8a1
- push hl
- ld a, [wcd50]
- ld l, a
- ld a, [wcd51]
- ld h, a
- ld a, [wcd52]
-.asm_17d8ad
- push af
- ld a, [hli]
- ld [de], a
- inc de
- inc c
- pop af
- dec a
- jr nz, .asm_17d8ad
- pop hl
- pop af
- cp $c0
- jr c, .asm_17d8c2
- ld a, $4
- ld [rSVBK], a
- jr .asm_17d878
-
-.asm_17d8c2
- call CloseSRAM
- jr .asm_17d878
-
-.asm_17d8c7
- call Function17e41e
- push bc
- ld a, $3
- ld [rSVBK], a
- ld hl, $c608
- ld de, Unkn1Pals
- ld b, $0
- call CopyBytes
- ld a, $4
- ld [rSVBK], a
- call Function17e32b
- pop bc
- ld a, c
- ld [wcd3b], a
- xor a
- ld [wcf66], a
- callba Function118329
- ld a, [wc300]
- and a
- jr z, .asm_17d8fe
- cp $a
- jr z, .asm_17d8fe
- call Function17e309
- ret
-
-.asm_17d8fe
- call Function17e349
- ret
-; 17d902
-
-Function17d902: ; 17d902
- call Function17e415
- ld a, [hli]
- ld e, a
- ld a, [hli]
- ld d, a
- push de
- call Function17e41e
- call Function17e32b
- pop de
- ld hl, Unkn1Pals
- add hl, de
- ld de, wcc60
-.asm_17d918
- ld a, [hli]
- ld [de], a
- inc de
- and a
- jr nz, .asm_17d918
- xor a
- ld [wcf66], a
- callba Function11837a
- ld a, [wc300]
- and a
- jr z, .asm_17d936
- cp $a
- jr z, .asm_17d936
- call Function17e309
- ret
-
-.asm_17d936
- call Function17e349
- ret
-; 17d93a
-
-Function17d93a: ; 17d93a
- call Function17e415
- ld de, wc708
- ld bc, $0005
- call CopyBytes
- call Function17e41e
- call Function17e32b
- ld a, [rSVBK]
- push af
- ld a, $1
- ld [rSVBK], a
- ld a, [wc70c]
- call Function17e6de
- ld a, [wc70a]
- ld [CurPartySpecies], a
- ld a, [wc70c]
- ld e, a
- callba Function8bc6
- call Function32f9
- ld a, [wc708]
- ld l, a
- ld a, [wc709]
- ld h, a
- ld a, [wc70b]
- ld c, a
- ld de, TileMap
- add hl, de
- ld e, l
- ld d, h
- callba Functiond066e
- pop af
- ld [rSVBK], a
- call Function17e349
- ret
-; 17d98b
-
-Function17d98b: ; 17d98b
- call Function17e415
- ld de, wc708
- ld bc, $0004
- call CopyBytes
- call Function17e41e
- call Function17e32b
- ld a, [rSVBK]
- push af
- ld a, $1
- ld [rSVBK], a
- ld a, [wc70b]
- call Function17e6de
- ld a, [wc70a]
- ld [TrainerClass], a
- ld a, [wc70b]
- ld e, a
- callba Function8bbd
- call Function32f9
- ld a, [wc708]
- ld e, a
- ld a, [wc709]
- ld d, a
- push de
- ld de, VTiles2
- callba GetTrainerPic
- pop hl
- ld de, TileMap
- add hl, de
- ld bc, $0707
- predef FillBox
- pop af
- ld [rSVBK], a
- call Function17e349
- ret
-; 17d9e3
-
-Function17d9e3: ; 17d9e3
- call Function17e415
- ld de, wc708
- ld bc, $0007
- call CopyBytes
- call Function17e41e
- ld a, [wc70b]
- push af
- cp $c0
- jr c, .asm_17da01
- ld a, [wc70c]
- ld [rSVBK], a
- jr .asm_17da07
-
-.asm_17da01
- ld a, [wc70c]
- call GetSRAMBank
-
-.asm_17da07
- ld a, [wc708]
- ld l, a
- ld a, [wc709]
- ld h, a
- ld a, [wc70a]
- ld e, a
- ld a, [wc70b]
- ld d, a
- ld a, [wc70d]
- ld c, a
- ld a, [wc70e]
- ld b, a
- call CopyBytes
- pop af
- cp $c0
- jr c, .asm_17da2d
- ld a, $4
- ld [rSVBK], a
- jr .asm_17da30
-
-.asm_17da2d
- call CloseSRAM
-
-.asm_17da30
- ret
-; 17da31
-
-Function17da31: ; 17da31
- call Function17e415
- ld de, wc708
- ld bc, $0004
- call CopyBytes
- call Function17e41e
- ld a, [wc709]
- push af
- cp $c0
- jr c, .asm_17da4f
- ld a, [wc70a]
- ld [rSVBK], a
- jr .asm_17da55
-
-.asm_17da4f
- ld a, [wc70a]
- call GetSRAMBank
-
-.asm_17da55
- ld a, [wc708]
- ld e, a
- ld a, [wc709]
- ld d, a
- ld a, [wc70b]
- ld c, a
- bit 7, c
- jr nz, .asm_17da70
- ld hl, Unknown_17da8c
- ld b, $0
- add hl, bc
- ld a, [de]
- or [hl]
- ld [de], a
- jr .asm_17da7d
-
-.asm_17da70
- ld hl, Unknown_17da94
- ld a, c
- and $7f
- ld c, a
- ld b, $0
- add hl, bc
- ld a, [de]
- and [hl]
- ld [de], a
-
-.asm_17da7d
- pop af
- cp $c0
- jr c, .asm_17da88
- ld a, $4
- ld [rSVBK], a
- jr .asm_17da8b
-
-.asm_17da88
- call CloseSRAM
-
-.asm_17da8b
- ret
-; 17da8c
-
-Unknown_17da8c:
-x = 0
- rept 8
- db 1 << x
-x = x + 1
- endr
-
-Unknown_17da94:
-x = 0
- rept 8
- db (1 << x) ^ $ff
-x = x + 1
- endr
-; 17da9c
-
-Function17da9c: ; 17da9c
- ld a, [wcd31]
- dec a
- jr z, .asm_17dabd
- push af
- call Function17e566
- pop af
- ld [wcd31], a
- ld hl, wcd24
- ld a, [wcd2e]
- sub [hl]
- ld [wcd2e], a
- call Function17e55b
- call Function17e5af
-.asm_17daba
- jp Function17e415
-
-.asm_17dabd
- ld a, [wcd2f]
- and a
- jr z, .asm_17daba
- ld hl, wcd24
- sub [hl]
- ld [wcd2f], a
- ld a, [wcd2e]
- sub [hl]
- ld [wcd2e], a
- call Function17e451
- call Function17e55b
- call Function17e5af
- jr .asm_17daba
-; 17dadc
-
-Function17dadc: ; 17dadc
- ld a, [wcd2e]
- ld hl, wcd24
- add [hl]
- ld hl, wcd42
- cp [hl]
- jr z, .asm_17db0e
- jr nc, .asm_17db0e
- ld hl, wcd31
- ld a, [wcd2b]
- cp [hl]
- jr z, .asm_17db11
- call Function17e566
- ld a, [wcd31]
- inc a
- ld [wcd31], a
- ld hl, wcd24
- ld a, [wcd2e]
- add [hl]
- ld [wcd2e], a
- call Function17e55b
- call Function17e5af
-
-.asm_17db0e
- jp Function17e415
-
-.asm_17db11
- ld hl, wcd24
- ld a, [wcd2f]
- add [hl]
- ld [wcd2f], a
- ld a, [wcd2e]
- add [hl]
- ld [wcd2e], a
- call Function17e451
- call Function17e55b
- call Function17e5af
- jr .asm_17db0e
-; 17db2d
-
-Function17db2d: ; 17db2d
- ld a, [wcd30]
- ld hl, wcd24
- cp [hl]
- jr z, .asm_17db53
- ld hl, wcd42
- ld a, [wcd2e]
- inc a
- cp [hl]
- jr z, .asm_17db53
- ld [wcd2e], a
- call Function17e566
- ld a, [wcd30]
- inc a
- ld [wcd30], a
- call Function17e55b
- call Function17e5af
-
-.asm_17db53
- jp Function17e415
-; 17db56
-
-Function17db56: ; 17db56
- ld a, [wcd30]
- cp $1
- jr z, .asm_17db74
- call Function17e566
- ld a, [wcd30]
- dec a
- ld [wcd30], a
- ld a, [wcd2e]
- dec a
- ld [wcd2e], a
- call Function17e55b
- call Function17e5af
-
-.asm_17db74
- jp Function17e415
-; 17db77
-
-Function17db77: ; 17db77
- ld hl, wcd2d
- ld a, [wcd2f]
- add [hl]
- ld hl, wcd42
- cp [hl]
- jr z, .asm_17dbae
- jr nc, .asm_17dbae
- call Function17e566
- ld hl, wcd2d
- ld a, [wcd2f]
- add [hl]
- ld [wcd2f], a
- ld a, [wcd2e]
- add [hl]
- ld hl, wcd42
- cp [hl]
- jr c, .asm_17db9f
- ld a, [hl]
- dec a
-
-.asm_17db9f
- ld [wcd2e], a
- call Function17dbb1
- call Function17e451
- call Function17e55b
- call Function17e5af
-
-.asm_17dbae
- jp Function17e415
-; 17dbb1
-
-Function17dbb1: ; 17dbb1
- ld hl, wcd2f
- ld a, [wcd42]
- sub [hl]
- ld hl, wcd2d
- cp [hl]
- ret nc
- ld a, $1
- ld [wcd30], a
- ld [wcd31], a
- ld a, [wcd24]
- ld c, a
- ld a, [wcd24]
- ld b, a
- ld a, [wcd2e]
- ld hl, wcd2f
- sub [hl]
-.asm_17dbd4
- and a
- ret z
- push af
- ld hl, wcd30
- ld a, b
- cp [hl]
- jr nz, .asm_17dbe4
- ld a, $1
- ld [hl], a
- ld hl, wcd31
-
-.asm_17dbe4
- inc [hl]
- pop af
- dec a
- jr .asm_17dbd4
-; 17dbe9
-
-Function17dbe9: ; 17dbe9
- ld hl, wcd2d
- ld a, [wcd2f]
- sub [hl]
- bit 7, a
- jr z, .asm_17dbf5
- xor a
-
-.asm_17dbf5
- ld [wcd2f], a
- ld a, [wcd30]
- dec a
- ld c, a
- ld a, [wcd31]
- ld b, a
- xor a
- ld hl, wcd24
-.asm_17dc05
- dec b
- jr z, .asm_17dc0b
- add [hl]
- jr .asm_17dc05
-
-.asm_17dc0b
- add c
- ld hl, wcd2f
- add [hl]
- ld [wcd2e], a
- call Function17e451
- call Function17e55b
- call Function17e5af
- jp Function17e415
-; 17dc1f
-
-Function17dc1f: ; 17dc1f
- call Function17e415
- ld de, $c688
- ld bc, $0006
- call CopyBytes
- call Function17e32b
- ld a, [rSVBK]
- push af
- ld a, $1
- ld [rSVBK], a
- ld hl, $c688
- ld a, $40
- ld [wc708], a
- ld a, [hli]
- ld [wc70a], a
- add $5
- ld [wc70c], a
- ld a, [hli]
- ld [wc709], a
- add $4
- ld [wc70b], a
- ld a, $96
- ld [wc70d], a
- ld a, $5c
- ld [wc70e], a
- ld a, $1
- ld [wc70f], a
- ld hl, wc708
- call LoadMenuDataHeader
- call Function1d81
- jr nc, .asm_17dc6e
- ld a, $2
- ld [wcfa9], a
-
-.asm_17dc6e
- call Function1c17
- pop af
- ld [rSVBK], a
- ld a, [wcfa9]
- cp $1
- jr nz, .asm_17dc85
- ld a, [$c68a]
- ld l, a
- ld a, [$c68a + 1]
- ld h, a
- jr .asm_17dc8d
-
-.asm_17dc85
- ld a, [$c68a + 2]
- ld l, a
- ld a, [$c68a + 3]
- ld h, a
-
-.asm_17dc8d
- push hl
- call Function17e349
- pop hl
- call Function17e40f
- ret
-; 17dc96
-
-MenuData2_17dc96:
- db $e0 ; flags
- db 2
- db "はい@"
- db "いいえ@"
-; 17dc9f
-
-Function17dc9f: ; 17dc9f
- call Function17e415
- call Function17e41e
- call Function4dd
- ret
-; 17dca9
-
-Function17dca9: ; 17dca9
- call Function17e415
- call Function17e41e
-
-Function17dcaf:
- ld a, $5
- ld [rSVBK], a
- ld hl, Unkn1Pals
- ld de, $0008
- ld c, $8
-.asm_17dcbb
- push hl
- ld a, $ff
- ld [hli], a
- ld a, $7f
- ld [hl], a
- pop hl
- add hl, de
- dec c
- jr nz, .asm_17dcbb
- call Function4b6
- ld a, $4
- ld [rSVBK], a
- ret
-; 17dccf
-
-Function17dccf: ; 17dccf
- call Function17e415
- push hl
- ld a, [wcd4b]
- ld l, a
- ld a, [wcd4c]
- ld h, a
- ld a, [wcd2e]
- ld c, a
- ld b, $0
- add hl, bc
- add hl, bc
- ld a, [hli]
- ld c, a
- ld a, [hl]
- ld b, a
- call Function17e43d
- call Function17e41e
-.asm_17dced
- ld a, [wcd78]
- ld l, a
- ld a, [wcd79]
- ld h, a
- ld a, [hl]
- cp $ff
- jr z, .asm_17dd0d
-.asm_17dcfa
- cp $31
- jr nc, .asm_17dcfa
- call Function17d711
- ld a, [wcd77]
- bit 7, a
- jr nz, .asm_17dd0d
- and a
- jr z, .asm_17dd11
- jr .asm_17dced
-
-.asm_17dd0d
- pop hl
- jp Function17e41e
-
-.asm_17dd11
- pop hl
- ret
-; 17dd13
-
-Function17dd13: ; 17dd13
- call Function17e415
- ld a, [hli]
- ld c, a
- ld a, [hli]
- ld b, a
- ld a, [hli]
- ld e, a
- ld a, [hli]
- ld d, a
- call Function17e41e
- call Function17e447
- push hl
- ld hl, TileMap
- add hl, bc
- push hl
- pop bc
- pop hl
- call Function13e5
- ret
-; 17dd30
-
-Function17dd30: ; 17dd30
- call Function17e415
- ld a, [hli]
- ld e, a
- ld a, [hli]
- ld d, a
- ld a, [hli]
- ld c, a
- ld b, $0
- ld a, [hli]
- push af
- call Function17e41e
- pop af
- ld hl, TileMap
- add hl, de
- call Function17e600
- ret
-; 17dd49
-
-Function17dd49: ; 17dd49
- call Function17e415
- ld de, wc708
- ld bc, $000a
- call CopyBytes
- ld a, [wc711]
- ld c, a
- ld b, $0
- call CopyBytes
- ld a, [wc70a]
- cp $c0
- jr c, .asm_17dd6c
- ld a, [wc708]
- ld [rSVBK], a
- jr .asm_17dd72
-
-.asm_17dd6c
- ld a, [wc708]
- call GetSRAMBank
-
-.asm_17dd72
- ld a, [wc709]
- ld l, a
- ld a, [wc70a]
- ld h, a
- ld de, $c688
- ld a, [wc711]
- ld c, a
- ld b, $0
- call CopyBytes
- ld a, [wc70a]
- cp $c0
- jr c, .asm_17dd93
- ld a, $4
- ld [rSVBK], a
- jr .asm_17dd96
-
-.asm_17dd93
- call CloseSRAM
-
-.asm_17dd96
- ld a, [wc711]
- ld c, a
- ld hl, wc712
- ld de, $c688
-.asm_17dda0
- ld a, [de]
- inc de
- cp [hl]
- inc hl
- jr z, .asm_17ddaa
- jr c, .asm_17ddc1
- jr .asm_17ddb7
-
-.asm_17ddaa
- dec c
- jr nz, .asm_17dda0
- ld a, [wc70d]
- ld l, a
- ld a, [wc70e]
- ld h, a
- jr .asm_17ddc9
-
-.asm_17ddb7
- ld a, [wc70f]
- ld l, a
- ld a, [wc710]
- ld h, a
- jr .asm_17ddc9
-
-.asm_17ddc1
- ld a, [wc70b]
- ld l, a
- ld a, [wc70c]
- ld h, a
-
-.asm_17ddc9
- call Function17e40f
- ret
-; 17ddcd
-
-Function17ddcd: ; 17ddcd
- call Function17e415
- ld de, wc708
- ld bc, $0008
- call CopyBytes
- ld a, [wc70a]
- cp $c0
- jr c, .asm_17dde7
- ld a, [wc708]
- ld [rSVBK], a
- jr .asm_17dded
-
-.asm_17dde7
- ld a, [wc708]
- call GetSRAMBank
-
-.asm_17dded
- ld a, [wc709]
- ld e, a
- ld a, [wc70a]
- ld d, a
- ld a, [de]
- ld [wc710], a
- ld a, [wc70b]
- ld c, a
- ld b, $0
- ld a, [wc70a]
- cp $c0
- jr c, .asm_17de0c
- ld a, $4
- ld [rSVBK], a
- jr .asm_17de0f
-
-.asm_17de0c
- call CloseSRAM
-
-.asm_17de0f
- push hl
- ld hl, Unknown_17da8c
- add hl, bc
- ld a, [hl]
- ld hl, wc710
- and [hl]
- pop hl
- jr nz, .asm_17de26
- ld a, [wc70e]
- ld l, a
- ld a, [wc70f]
- ld h, a
- jr .asm_17de2e
-
-.asm_17de26
- ld a, [wc70c]
- ld l, a
- ld a, [wc70d]
- ld h, a
-
-.asm_17de2e
- call Function17e40f
- ret
-; 17de32
-
-Function17de32: ; 17de32
- call Function17e415
- ld de, wc708
- ld bc, $0009
- call CopyBytes
- ld a, [wc710]
- ld c, a
- ld b, $0
- call CopyBytes
- ld a, $6
- call GetSRAMBank
- call Function17f4f6
- ld a, [wc708]
- ld e, a
- ld a, [wc709]
- ld d, a
- add hl, de
- ld e, l
- ld d, h
- ld a, [wc710]
- ld c, a
- ld hl, wc711
-.asm_17de61
- ld a, [de]
- inc de
- cp [hl]
- inc hl
- jr z, .asm_17de6b
- jr c, .asm_17de82
- jr .asm_17de78
-
-.asm_17de6b
- dec c
- jr nz, .asm_17de61
- ld a, [wc70c]
- ld l, a
- ld a, [wc70d]
- ld h, a
- jr .asm_17de8a
-
-.asm_17de78
- ld a, [wc70e]
- ld l, a
- ld a, [wc70f]
- ld h, a
- jr .asm_17de8a
-
-.asm_17de82
- ld a, [wc70a]
- ld l, a
- ld a, [wc70b]
- ld h, a
-
-.asm_17de8a
- call CloseSRAM
- call Function17e40f
- ret
-; 17de91
-
-Function17de91: ; 17de91
- call Function17e415
- ld de, wc708
- ld bc, $0007
- call CopyBytes
- ld a, $6
- call GetSRAMBank
- call Function17f4f6
- ld a, [wc708]
- ld e, a
- ld a, [wc709]
- ld d, a
- add hl, de
- ld e, l
- ld d, h
- ld a, [wc70a]
- ld c, a
- ld b, $0
- ld hl, Unknown_17da8c
- add hl, bc
- ld a, [hl]
- ld l, e
- ld h, d
- and [hl]
- jr nz, .asm_17deca
- ld a, [wc70d]
- ld l, a
- ld a, [wc70e]
- ld h, a
- jr .asm_17ded2
-
-.asm_17deca
- ld a, [wc70b]
- ld l, a
- ld a, [wc70c]
- ld h, a
-
-.asm_17ded2
- call CloseSRAM
- call Function17e40f
- ret
-; 17ded9
-
-Function17ded9: ; 17ded9
- call Function17e415
- ld de, wc708
- ld bc, $001f
- call CopyBytes
- call Function17e32b
- ld a, [rSVBK]
- push af
- ld a, $1
- ld [rSVBK], a
- ld hl, wc708
- ld a, [hli]
- ld [CurPartySpecies], a
- ld [TempEnemyMonSpecies], a
- ld a, [hli]
- ld [CurPartyLevel], a
- ld a, [hli]
- ld b, a
- ld a, [PartyCount]
- cp $6
- jp nc, Function17e026
- xor a
- ld [MonType], a
- push hl
- push bc
- predef Functiond88c
- callba Function4db49
- pop bc
- pop hl
- bit 1, b
- jr z, .asm_17df33
- push bc
- push hl
- ld a, [PartyCount]
- dec a
- ld hl, PartyMonNicknames
- call SkipNames
- ld d, h
- ld e, l
- pop hl
- call CopyBytes
- pop bc
- jr .asm_17df37
-
-.asm_17df33
- ld de, $0006
- add hl, de
-
-.asm_17df37
- bit 2, b
- jr z, .asm_17df5a
- push bc
- push hl
- ld a, [PartyCount]
- dec a
- ld hl, PartyMonOT
- call SkipNames
- ld d, h
- ld e, l
- pop hl
- call CopyBytes
- ld a, [hli]
- ld b, a
- push hl
- callba Function4dba3
- pop hl
- pop bc
- jr .asm_17df5e
-
-.asm_17df5a
- ld de, $0007
- add hl, de
-
-.asm_17df5e
- bit 3, b
- jr z, .asm_17df79
- push bc
- push hl
- ld a, [PartyCount]
- dec a
- ld hl, PartyMon1ID
- call GetPartyLocation
- ld d, h
- ld e, l
- pop hl
- ld a, [hli]
- ld [de], a
- inc de
- ld a, [hli]
- ld [de], a
- pop bc
- jr .asm_17df7b
-
-.asm_17df79
- inc hl
- inc hl
-
-.asm_17df7b
- bit 4, b
- jr z, .asm_17dfd0
- push bc
- push hl
- ld a, [PartyCount]
- dec a
- ld hl, PartyMon1DVs
- call GetPartyLocation
- ld d, h
- ld e, l
- pop hl
- ld a, [hli]
- ld [de], a
- inc de
- ld a, [hli]
- ld [de], a
- push hl
- ld a, [PartyCount]
- dec a
- ld hl, PartyMon1Species
- call GetPartyLocation
- ld a, [hl]
- ld [CurSpecies], a
- call GetBaseData
- ld a, [PartyCount]
- dec a
- ld hl, PartyMon1MaxHP
- call GetPartyLocation
- ld d, h
- ld e, l
- push hl
- ld b, $0
- callba Functione167
- ld a, [PartyCount]
- dec a
- ld hl, PartyMon1HP
- call GetPartyLocation
- ld d, h
- ld e, l
- pop hl
- ld a, [hli]
- ld [de], a
- inc de
- ld a, [hl]
- ld [de], a
- pop hl
- pop bc
- jr .asm_17dfd2
-
-.asm_17dfd0
- inc hl
- inc hl
-
-.asm_17dfd2
- bit 5, b
- jr z, .asm_17dfea
- push bc
- push hl
- ld a, [PartyCount]
- dec a
- ld hl, PartyMon1Item
- call GetPartyLocation
- ld d, h
- ld e, l
- pop hl
- ld a, [hli]
- ld [de], a
- pop bc
- jr .asm_17dfeb
-
-.asm_17dfea
- inc hl
-
-.asm_17dfeb
- bit 6, b
- jr z, .asm_17e01f
- push bc
- push hl
- ld a, [PartyCount]
- dec a
- ld hl, PartyMon1Moves
- call GetPartyLocation
- ld d, h
- ld e, l
- pop hl
- push de
- ld bc, $0004
- call CopyBytes
- pop de
- push hl
- push de
- ld a, [PartyCount]
- dec a
- ld hl, PartyMon1PP
- call GetPartyLocation
- ld d, h
- ld e, l
- pop hl
- predef FillPP
- pop hl
- pop bc
- jp asm_17e0ee
-
-.asm_17e01f
- ld de, $0004
- add hl, de
- jp asm_17e0ee
-; 17e026
-
-Function17e026: ; 17e026
- ld a, $1
- call GetSRAMBank
- ld a, [sBoxCount]
- call CloseSRAM
- cp $14
- jp nc, .asm_17e0ea
- bit 0, b
- jp z, .asm_17e0ea
- push bc
- push hl
- callba LoadEnemyMon
- callba Functionde6e
- callba Function4db83
- pop hl
- pop bc
- ld a, $1
- call GetSRAMBank
- bit 1, b
- jr z, .asm_17e067
- push bc
- ld bc, $000b
- ld de, sBoxMonNicknames
- call CopyBytes
- pop bc
- jr .asm_17e06b
-
-.asm_17e067
- ld de, $0006
- add hl, de
-
-.asm_17e06b
- bit 2, b
- jr z, .asm_17e08e
- push bc
- ld bc, $0006
- ld de, sBoxMonOT
- call CopyBytes
- ld a, [hli]
- ld b, a
- push hl
- call CloseSRAM
- callba Function4db92
- ld a, $1
- call GetSRAMBank
- pop hl
- pop bc
- jr .asm_17e092
-
-.asm_17e08e
- ld de, $0007
- add hl, de
-
-.asm_17e092
- bit 3, b
- jr z, .asm_17e0a2
- push bc
- ld de, sBoxMon1ID
- ld a, [hli]
- ld [de], a
- inc de
- ld a, [hli]
- ld [de], a
- pop bc
- jr .asm_17e0a4
-
-.asm_17e0a2
- inc hl
- inc hl
-
-.asm_17e0a4
- bit 4, b
- jr z, .asm_17e0b4
- push bc
- ld de, sBoxMon1DVs
- ld a, [hli]
- ld [de], a
- inc de
- ld a, [hli]
- ld [de], a
- pop bc
- jr .asm_17e0b6
-
-.asm_17e0b4
- inc hl
- inc hl
-
-.asm_17e0b6
- bit 5, b
- ld a, [hli]
- jr z, .asm_17e0be
- ld [sBoxMon1Item], a
-
-.asm_17e0be
- bit 6, b
- jr z, .asm_17e0e1
- push bc
- ld de, sBoxMon1Moves
- ld bc, $0004
- call CopyBytes
- push hl
- ld hl, sBoxMon1Moves
- ld de, sBoxMon1PP
- predef FillPP
- call CloseSRAM
- pop hl
- pop bc
- inc hl
- inc hl
- jr asm_17e0ee
-
-.asm_17e0e1
- call CloseSRAM
- ld de, $0006
- add hl, de
- jr asm_17e0ee
-
-.asm_17e0ea
- ld bc, $001a
- add hl, bc
-
-asm_17e0ee
- ld a, [hli]
- ld h, [hl]
- ld l, a
- pop af
- ld [rSVBK], a
- push hl
- call Function17e349
- pop hl
- call Function17e40f
- ret
-; 17e0fd
-
-Function17e0fd: ; 17e0fd
- call Function17e415
- ld de, wc708
- ld bc, $0006
- call CopyBytes
- ld a, [rSVBK]
- push af
- ld a, $1
- ld [rSVBK], a
- ld hl, wc708
- ld a, [hli]
- ld [CurItem], a
- ld a, [hli]
- ld [wd10c], a
- push hl
- ld hl, NumItems
- call ReceiveItem
- pop hl
- jr c, .asm_17e127
- inc hl
- inc hl
-
-.asm_17e127
- ld a, [hli]
- ld b, a
- ld a, [hl]
- ld h, a
- ld l, b
- pop af
- ld [rSVBK], a
- call Function17e40f
- ret
-; 17e133
-
-Function17e133: ; 17e133
- call Function17e415
- ld de, wc708
- ld bc, $0005
- call CopyBytes
- ld a, [rSVBK]
- push af
- ld a, $1
- ld [rSVBK], a
- ld hl, wc708
- ld a, [hli]
- ld [ScriptVar], a
- push hl
- callba Function4a843
- pop hl
- jr c, .asm_17e159
- inc hl
- inc hl
-
-.asm_17e159
- ld a, [hli]
- ld b, a
- ld a, [hl]
- ld h, a
- ld l, b
- pop af
- ld [rSVBK], a
- call Function17e40f
- ret
-; 17e165
-
-Function17e165: ; 17e165
- call Function17e415
- ld de, wc708
- ld bc, $0005
- call CopyBytes
- ld a, [rSVBK]
- push af
- ld a, $1
- ld [rSVBK], a
- ld hl, wc708
- ld a, [hli]
- ld [CurItem], a
- push hl
- ld hl, NumItems
- call CheckItem
- pop hl
- jr c, .asm_17e195
- push hl
- ld hl, PCItems
- call CheckItem
- pop hl
- jr c, .asm_17e195
- inc hl
- inc hl
-
-.asm_17e195
- ld a, [hli]
- ld b, a
- ld a, [hl]
- ld h, a
- ld l, b
- pop af
- ld [rSVBK], a
- call Function17e40f
- ret
-; 17e1a1
-
-Function17e1a1: ; 17e1a1
- call Function17e415
- ld de, wc708
- ld bc, $000d
- call CopyBytes
- ld a, [wc70a]
- cp $c0
- jr c, .asm_17e1bb
- ld a, [wc708]
- ld [rSVBK], a
- jr .asm_17e1c1
-
-.asm_17e1bb
- ld a, [wc708]
- call GetSRAMBank
-
-.asm_17e1c1
- ld a, [wc709]
- ld l, a
- ld a, [wc70a]
- ld h, a
- ld de, $c608
- ld a, [wc70b]
- ld c, a
- ld b, $0
- call CopyBytes
- ld a, [wc70a]
- cp $c0
- jr c, .asm_17e1e2
- ld a, $4
- ld [rSVBK], a
- jr .asm_17e1e5
-
-.asm_17e1e2
- call CloseSRAM
-
-.asm_17e1e5
- ld a, [wc70e]
- cp $c0
- jr c, .asm_17e1f3
- ld a, [wc70c]
- ld [rSVBK], a
- jr .asm_17e1f9
-
-.asm_17e1f3
- ld a, [wc70c]
- call GetSRAMBank
-
-.asm_17e1f9
- ld a, [wc70d]
- ld l, a
- ld a, [wc70e]
- ld h, a
- ld de, $c688
- ld a, [wc70b]
- ld c, a
- ld b, $0
- call CopyBytes
- ld a, [wc70e]
- cp $c0
- jr c, .asm_17e21a
- ld a, $4
- ld [rSVBK], a
- jr .asm_17e21d
-
-.asm_17e21a
- call CloseSRAM
-
-.asm_17e21d
- ld a, [wc70b]
- ld c, a
- ld hl, $c688
- ld de, $c608
-.asm_17e227
- ld a, [de]
- inc de
- cp [hl]
- inc hl
- jr z, .asm_17e231
- jr c, .asm_17e23e
- jr .asm_17e248
-
-.asm_17e231
- dec c
- jr nz, .asm_17e227
- ld a, [wc711]
- ld l, a
- ld a, [wc712]
- ld h, a
- jr .asm_17e250
-
-.asm_17e23e
- ld a, [wc70f]
- ld l, a
- ld a, [wc710]
- ld h, a
- jr .asm_17e250
-
-.asm_17e248
- ld a, [wc712 + 1]
- ld l, a
- ld a, [wc712 + 2]
- ld h, a
-
-.asm_17e250
- call Function17e40f
- ret
-; 17e254
-
-Function17e254: ; 17e254
- call Function17e415
- ld a, [hli]
- ld e, a
- ld a, [hli]
- ld d, a
- ld a, [hli]
- ld [de], a
- call Function17e41e
- ret
-; 17e261
-
-Function17e261: ; 17e261
- call Function17e415
- ld a, [hli]
- ld e, a
- ld a, [hli]
- ld d, a
- ld a, [de]
- add [hl]
- ld [de], a
- inc hl
- call Function17e41e
- ret
-; 17e270
-
-Function17e270: ; 17e270
- call Function17e415
- ld a, [hli]
- ld e, a
- ld a, [hli]
- ld d, a
- ld a, [de]
- sub [hl]
- ld [de], a
- inc hl
- call Function17e41e
- ret
-; 17e27f
-
-Function17e27f: ; 17e27f
- call Function17e415
- ld a, [hli]
- ld e, a
- ld a, [hli]
- ld d, a
- ld a, [hli]
- ld c, a
- ld a, [hli]
- ld b, a
- call Function17e41e
- ld l, c
- ld h, b
- ld a, [de]
- add [hl]
- ld [de], a
- ret
-; 17e293
-
-Function17e293: ; 17e293
- call Function17e415
- ld a, [hli]
- ld e, a
- ld a, [hli]
- ld d, a
- ld a, [hli]
- ld c, a
- ld a, [hli]
- ld b, a
- call Function17e41e
- ld l, c
- ld h, b
- ld a, [de]
- sub [hl]
- ld [de], a
- ret
-; 17e2a7
-
-Function17e2a7: ; 17e2a7
- call Function17e415
- call Function17e41e
- call Function17e32b
- xor a
- ld [wcf66], a
- callba Function118233
- ld de, GFX_17eb7e
- ld hl, $9600
- lb bc, BANK(GFX_17eb7e), 1
- call Get2bpp
- ld a, [wc300]
- and a
- jr z, .asm_17e2d8
- cp $a
- jr z, .asm_17e2f7
- cp $b
- jr z, .asm_17e300
- call Function17e309
- ret
-
-.asm_17e2d8
- call Function17d60b
- call Function17e349
- xor a
- ld [wcd7a], a
- ld a, $5
- call GetSRAMBank
- ld hl, $aa73
- ld de, $aa7f
- ld bc, $000c
- call CopyBytes
- call CloseSRAM
- ret
-
-.asm_17e2f7
- call Function17e349
- ld a, $1
- ld [wcd7a], a
- ret
-
-.asm_17e300
- call Function17e349
- ld a, $2
- ld [wcd7a], a
- ret
-; 17e309
-
-Function17e309: ; 17e309
- ld a, $2
- ld [wc303], a
- call Function17dcaf
- call ClearScreen
- call Function17e349
- call Function17d5f6
- callba Function17f555
- call Function17e349
- call Function17dcaf
- xor a
- ld [wcd77], a
- ret
-; 17e32b
-
-Function17e32b: ; 17e32b
- ld a, $5
- call GetSRAMBank
- ld hl, $c608
- ld de, $b0b1
- ld bc, $0040
- call CopyBytes
- ld hl, BGMapBuffer
- ld bc, $005b
- call CopyBytes
- call CloseSRAM
- ret
-; 17e349
-
-Function17e349: ; 17e349
- ld a, $5
- call GetSRAMBank
- ld hl, $b0b1
- ld de, $c608
- ld bc, $0040
- call CopyBytes
- ld de, BGMapBuffer
- ld bc, $005b
- call CopyBytes
- call CloseSRAM
- ret
-; 17e367
-
-Function17e367: ; 17e367
- call Function17e415
- call Function17e41e
- ld a, [rSVBK]
- push af
- ld a, $1
- ld [rSVBK], a
- callba Function14c10
- pop af
- ld [rSVBK], a
- ret
-; 17e37e
-
-Function17e37e: ; 17e37e
- call Function17e415
- call Function17e41e
- ld a, [rSVBK]
- push af
- ld a, $1
- ld [rSVBK], a
- callba Function14a58
- pop af
- ld [rSVBK], a
- ret
-; 17e395
-
-Function17e395: ; 17e395
- call Function17e415
- call Function17e41e
- ld a, [rSVBK]
- push af
- ld a, $1
- ld [rSVBK], a
- callba Function14e0c
- pop af
- ld [rSVBK], a
- ret
-; 17e3ac
-
-Function17e3ac: ; 17e3ac
- call Function17e415
- call Function17e41e
- ld a, [rSVBK]
- push af
- ld a, $1
- ld [rSVBK], a
- callba Function14e13
- pop af
- ld [rSVBK], a
- ret
-; 17e3c3
-
-Function17e3c3: ; 17e3c3
- call Function17e415
- call Function17e41e
- ld a, [rSVBK]
- push af
- ld a, $1
- ld [rSVBK], a
- callba Function106155
- callba Function106187
- pop af
- ld [rSVBK], a
- ret
-; 17e3e0
-
-Function17e3e0: ; 17e3e0
- call Function17e415
- ld a, [hli]
- ld c, a
- call Function17e41e
- ld a, $1
- ld [hBGMapMode], a
- call DelayFrames
- ret
-; 17e3f0
-
-Function17e3f0: ; 17e3f0
- call Function17e415
- call Function17e41e
-.asm_17e3f6
- call Functiona57
- ld hl, hJoyPressed
- ld a, [hl]
- and $1
- ret nz
- ld a, [hl]
- and $2
- ret nz
- call WaitBGMap
- jr .asm_17e3f6
-; 17e409
-
-Function17e409: ; 17e409
- ld hl, wcd77
- set 7, [hl]
- ret
-; 17e40f
-
-Function17e40f: ; 17e40f
- ld de, Unkn1Pals
- add hl, de
- jr Function17e41e
-
-Function17e415:
- ld a, [wcd78]
- ld l, a
- ld a, [wcd79]
- ld h, a
- inc hl
-
-Function17e41e:
- ld a, l
- ld [wcd78], a
- ld a, h
- ld [wcd79], a
- ret
-; 17e427
-
-Function17e427: ; 17e427
- ld hl, hJoyPressed
- ld a, [hl]
- and $1
- jr nz, .asm_17e432
- and $2
- ret z
-
-.asm_17e432
- ld a, $3
- ld [wcd77], a
- ret
-; 17e438
-
-Function17e438: ; 17e438
- ld hl, wcd77
- inc [hl]
- ret
-; 17e43d
-
-Function17e43d: ; 17e43d
- ld a, [BGMapBuffer]
- ld l, a
- ld a, [wcd21]
- ld h, a
- add hl, bc
- ret
-; 17e447
-
-Function17e447: ; 17e447
- ld a, [BGMapBuffer]
- ld l, a
- ld a, [wcd21]
- ld h, a
- add hl, de
- ret
-; 17e451
-
-Function17e451: ; 17e451
- ld a, [wcd42]
- and a
- ret z
- call Function17e51b
- call Function17e4dd
- ld a, [wcd2e]
- push af
- ld a, [wcd49]
- ld l, a
- ld a, [wcd4a]
- ld h, a
- ld a, [wcd2f]
- ld [wcd2e], a
- ld c, a
- ld b, $0
- add hl, bc
- add hl, bc
- push hl
- ld hl, TileMap
- ld bc, $0014
- ld a, [wcd23]
- call AddNTimes
- ld a, [CreditsTimer]
- ld c, a
- ld b, $0
- add hl, bc
- pop bc
- ld a, [wcd25]
-.asm_17e48b
- push af
- push hl
- ld a, [wcd24]
-.asm_17e490
- push af
- push hl
- ld a, [bc]
- inc bc
- ld e, a
- ld a, [bc]
- inc bc
- ld d, a
- push bc
- push hl
- ld a, [BGMapBuffer]
- ld l, a
- ld a, [wcd21]
- ld h, a
- add hl, de
- push hl
- pop de
- pop hl
- call PlaceString
- pop bc
- pop hl
- ld a, [wcd26]
- ld e, a
- ld d, $0
- add hl, de
- ld a, [wcd2e]
- inc a
- ld [wcd2e], a
- ld e, a
- ld a, [wcd42]
- cp e
- jr z, .asm_17e4d5
- pop af
- dec a
- jr nz, .asm_17e490
- pop hl
- ld a, [wcd27]
- ld de, $0014
-.asm_17e4cb
- add hl, de
- dec a
- jr nz, .asm_17e4cb
- pop af
- dec a
- jr nz, .asm_17e48b
- jr .asm_17e4d8
-
-.asm_17e4d5
- pop af
- pop hl
- pop af
-
-.asm_17e4d8
- pop af
- ld [wcd2e], a
- ret
-; 17e4dd
-
-Function17e4dd: ; 17e4dd
- ld a, [wcd2c]
- and $1
- ret z
- ld a, [wcd29]
- ld hl, TileMap
- ld bc, $0014
- call AddNTimes
- ld a, [wcd28]
- ld c, a
- ld b, $0
- add hl, bc
- ld a, [wcd2f]
- and a
- jr z, .asm_17e4ff
- ld a, $61
- ld [hl], a
-
-.asm_17e4ff
- ld a, [wcd2a]
- ld bc, $0014
- call AddNTimes
- ld a, [wcd42]
- ld c, a
- ld a, [wcd2e]
- ld b, a
- ld a, [wcd24]
- add b
- cp c
- ret z
- ret nc
- ld a, $ee
- ld [hl], a
- ret
-; 17e51b
-
-Function17e51b: ; 17e51b
- ld a, [wcd28]
- ld hl, CreditsTimer
- sub [hl]
- inc a
- ld [wcd4f], a
- ld hl, TileMap
- ld bc, $0014
- ld a, [wcd23]
- dec a
- call AddNTimes
- ld a, [CreditsTimer]
- ld c, a
- ld b, $0
- add hl, bc
- ld a, [wcd25]
- ld c, a
- ld a, [wcd27]
- call SimpleMultiply
-.asm_17e544
- push af
- push hl
- ld a, [wcd4f]
- ld c, a
- ld b, $0
- ld a, $7f
- call ByteFill
- pop hl
- ld bc, $0014
- add hl, bc
- pop af
- dec a
- jr nz, .asm_17e544
- ret
-; 17e55b
-
-Function17e55b: ; 17e55b
- ld a, [wcd42]
- and a
- ret z
- ld a, $ed
- call Function17e571
- ret
-; 17e566
-
-Function17e566: ; 17e566
- ld a, [wcd42]
- and a
- ret z
- ld a, $7f
- call Function17e571
- ret
-; 17e571
-
-Function17e571: ; 17e571
- push af
- ld hl, TileMap
- ld bc, $0014
- ld a, [wcd23]
- call AddNTimes
- ld a, [CreditsTimer]
- ld c, a
- ld b, $0
- add hl, bc
- dec hl
- push hl
- ld a, [wcd31]
- dec a
- ld c, a
- ld a, [wcd27]
- call SimpleMultiply
- ld l, $0
- ld h, l
- ld bc, $0014
- call AddNTimes
- ld a, [wcd30]
- dec a
- ld c, a
- ld a, [wcd26]
- call SimpleMultiply
- ld c, a
- ld b, $0
- add hl, bc
- pop bc
- add hl, bc
- pop af
- ld [hl], a
- ret
-; 17e5af
-
-Function17e5af: ; 17e5af
- ld a, [wcd2c]
- and $2
- ret z
- ld a, [wcd43]
- ld l, a
- ld a, [wcd44]
- ld h, a
- ld bc, TileMap
- add hl, bc
- ld bc, $ffec
- add hl, bc
- ld a, [wcd45]
- ld c, a
- ld b, $0
- ld a, [wcd46]
- call Function17e600
- ld a, [wcd2e]
- ld c, a
- ld b, $0
- ld a, [wcd4d]
- ld l, a
- ld a, [wcd4e]
- ld h, a
- add hl, bc
- add hl, bc
- ld a, [hli]
- ld e, a
- ld a, [hli]
- ld d, a
- ld a, [BGMapBuffer]
- ld l, a
- ld a, [wcd21]
- ld h, a
- add hl, de
- push hl
- pop de
- ld a, [wcd43]
- ld l, a
- ld a, [wcd44]
- ld h, a
- ld bc, TileMap
- add hl, bc
- call PlaceString
- ret
-; 17e600
-
-Function17e600: ; 17e600
-.asm_17e600
- push af
- push hl
- push bc
- ld a, $7f
- call ByteFill
- pop bc
- pop hl
- ld de, $0014
- add hl, de
- pop af
- dec a
- jr nz, .asm_17e600
- ret
-; 17e613
-
-Function17e613: ; 17e613
- push hl
- ld hl, TileMap
- ld bc, $0014
- ld a, [de]
- inc de
- push af
- ld a, [de]
- inc de
- and a
-.asm_17e620
- jr z, .asm_17e626
- add hl, bc
- dec a
- jr .asm_17e620
-
-.asm_17e626
- pop af
- ld c, a
- ld b, $0
- add hl, bc
- push hl
- ld a, [wcd53]
- ld [hli], a
- ld a, [de]
- inc de
- dec a
- dec a
- jr z, .asm_17e63f
- ld c, a
- ld a, [wcd53]
- inc a
-.asm_17e63b
- ld [hli], a
- dec c
- jr nz, .asm_17e63b
-
-.asm_17e63f
- ld a, [wcd53]
- add $2
- ld [hl], a
- pop hl
- ld bc, $0014
- add hl, bc
- ld a, [de]
- dec de
- dec a
- dec a
- jr z, .asm_17e674
- ld b, a
-.asm_17e651
- push hl
- ld a, [wcd53]
- add $3
- ld [hli], a
- ld a, [de]
- dec a
- dec a
- jr z, .asm_17e664
- ld c, a
- ld a, $7f
-.asm_17e660
- ld [hli], a
- dec c
- jr nz, .asm_17e660
-
-.asm_17e664
- ld a, [wcd53]
- add $4
- ld [hl], a
- pop hl
- push bc
- ld bc, $0014
- add hl, bc
- pop bc
- dec b
- jr nz, .asm_17e651
-
-.asm_17e674
- ld a, [wcd53]
- add $5
- ld [hli], a
- ld a, [de]
- dec a
- dec a
- jr z, .asm_17e689
- ld c, a
- ld a, [wcd53]
- add $6
-.asm_17e685
- ld [hli], a
- dec c
- jr nz, .asm_17e685
-
-.asm_17e689
- ld a, [wcd53]
- add $7
- ld [hl], a
- pop hl
- ret
-; 17e691
-
-Function17e691: ; 17e691
- push hl
- ld hl, NULL
- ld bc, $0014
- ld a, [de]
- inc de
- push af
- ld a, [de]
- inc de
- inc de
- and a
-.asm_17e69f
- jr z, .asm_17e6a5
- add hl, bc
- dec a
- jr .asm_17e69f
-
-.asm_17e6a5
- pop af
- ld c, a
- ld b, $0
- add hl, bc
- ld a, [de]
- dec de
-.asm_17e6ac
- push af
- push hl
- ld a, [de]
-.asm_17e6af
- push af
- push hl
- push hl
- ld bc, TileMap
- add hl, bc
- ld a, [hl]
- cp $7f
- jr z, .asm_17e6c2
- ld a, [wcd53]
- add $8
- jr .asm_17e6c7
-
-.asm_17e6c2
- ld a, [wcd53]
- jr .asm_17e6c7
-
-.asm_17e6c7
- pop hl
- ld bc, AttrMap
- add hl, bc
- ld [hl], a
- pop hl
- inc hl
- pop af
- dec a
- jr nz, .asm_17e6af
- pop hl
- ld bc, $0014
- add hl, bc
- pop af
- dec a
- jr nz, .asm_17e6ac
- pop hl
- ret
-; 17e6de
-
-Function17e6de: ; 17e6de
- push af
- ld a, [wc708]
- ld l, a
- ld a, [wc709]
- ld h, a
- ld de, AttrMap
- add hl, de
- pop af
- ld b, $7
-.asm_17e6ee
- push hl
- ld c, $7
-.asm_17e6f1
- ld [hli], a
- dec c
- jr nz, .asm_17e6f1
- pop hl
- ld de, $0014
- add hl, de
- dec b
- jr nz, .asm_17e6ee
- ret
-; 17e6fe
-
-
-PokemonNewsGFX: ; 17e6fe
-INCBIN "gfx/mobile/pokemon_news.2bpp"
-
-GFX_17eb7e:
-INCBIN "gfx/unknown/17eb7e.2bpp"
-
-TileAttrmap_17eb8e:
-INCBIN "gfx/unknown/17eb8e.attrmap"
-
-Palette_17eff6:
- RGB 24, 9, 8
- RGB 4, 9, 18
- RGB 18, 18, 12
- RGB 0, 0, 0
- RGB 24, 24, 18
- RGB 18, 18, 12
- RGB 4, 9, 18
- RGB 0, 0, 0
- RGB 31, 31, 31
- RGB 23, 11, 10
- RGB 13, 6, 5
- RGB 0, 0, 0
- RGB 31, 31, 31
- RGB 15, 25, 5
- RGB 10, 20, 0
- RGB 0, 0, 0
- RGB 31, 31, 31
- RGB 20, 28, 20
- RGB 10, 18, 15
- RGB 0, 0, 0
- RGB 31, 31, 31
- RGB 22, 22, 12
- RGB 17, 12, 5
- RGB 0, 0, 0
- RGB 5, 5, 16
- RGB 8, 19, 28
- RGB 0, 0, 0
- RGB 31, 31, 31
- RGB 31, 31, 31
- RGB 27, 24, 0
- RGB 24, 16, 3
- RGB 0, 0, 0
-
-
-Function17f036:: ; 17f036
- ld a, $6
- call GetSRAMBank
- inc de
-.asm_17f03c
- call Function17f047
- jr c, .asm_17f043
- jr .asm_17f03c
-
-.asm_17f043
- call CloseSRAM
- ret
-; 17f047
-
-Function17f047: ; 17f047
- ld a, [de]
- inc de
- cp $50
- jr z, .asm_17f05f
- cp $10
- jr nc, .asm_17f05f
- dec a
- push de
- ld e, a
- ld d, 0
- ld hl, Jumptable_17f061
- add hl, de
- add hl, de
- ld a, [hli]
- ld h, [hl]
- ld l, a
- jp [hl]
-
-.asm_17f05f
- scf
- ret
-; 17f061
-
-Jumptable_17f061: ; 17f061
- dw Function17f081
- dw Function17f0f8
- dw Function17f154
- dw Function17f181
- dw Function17f1d0
- dw Function17f220
- dw Function17f27b
- dw Function17f2cb
- dw Function17f2ff
- dw Function17f334
- dw Function17f382
- dw Function17f3c9
- dw Function17f3f0
- dw Function17f41d
- dw Function17f44f
- dw Function17f44f
-; 17f081
-
-Function17f081: ; 17f081
- pop hl
- call Function17f524
- jr c, .asm_17f09f
- ld de, $0004
- add hl, de
- ld a, [hli]
- inc hl
- inc hl
- ld e, l
- ld d, h
- ld l, c
- ld h, b
- ld c, a
- ld b, $0
- add hl, bc
- ld a, [de]
- cp $50
- jr z, .asm_17f09d
- and a
- ret
-
-.asm_17f09d
- scf
- ret
-
-.asm_17f09f
- push bc
- ld de, wcd54
- ld bc, $0007
- call CopyBytes
- pop bc
- push hl
- push bc
- call Function17f4f6
- pop bc
- ld a, [wcd54]
- ld e, a
- ld a, [wcd55]
- ld d, a
- add hl, de
- ld e, l
- ld d, h
- ld l, c
- ld h, b
- push hl
- ld a, [wcd56]
- ld b, a
- ld a, [wcd57]
- ld c, a
- call Function31a4
- ld a, l
- ld [wcd52], a
- ld a, h
- ld [wcd53], a
- ld a, [wcd59]
- and a
- jr z, .asm_17f0ee
- ld c, a
- ld a, [wcd57]
- inc a
- ld b, a
- ld e, l
- ld d, h
- dec de
-.asm_17f0e0
- ld a, c
- cp b
- jr z, .asm_17f0ea
- ld a, [de]
- dec de
- ld [hld], a
- dec b
- jr .asm_17f0e0
-
-.asm_17f0ea
- ld a, [wcd5a]
- ld [hl], a
-
-.asm_17f0ee
- pop hl
- ld a, [wcd58]
- call Function17f50f
- pop de
- and a
- ret
-; 17f0f8
-
-Function17f0f8: ; 17f0f8
- pop hl
- call Function17f524
- jr c, .asm_17f114
- ld de, $0003
- add hl, de
- ld a, [hli]
- ld e, l
- ld d, h
- ld l, c
- ld h, b
- ld c, a
- ld b, $0
- add hl, bc
- ld a, [de]
- cp $50
- jr z, .asm_17f112
- and a
- ret
-
-.asm_17f112
- scf
- ret
-
-.asm_17f114
- push bc
- ld de, wcd54
- ld bc, $0004
- call CopyBytes
- pop bc
- push hl
- push bc
- call Function17f4f6
- ld a, [wcd54]
- ld e, a
- ld a, [wcd55]
- ld d, a
- add hl, de
- ld de, $c608
- ld a, [wcd56]
- ld c, a
- ld b, $0
- call CopyBytes
- ld a, $50
- ld [de], a
- pop hl
- ld de, $c608
- call PlaceString
- ld a, c
- ld [wcd52], a
- ld a, b
- ld [wcd53], a
- ld a, [wcd57]
- call Function17f50f
- pop de
- and a
- ret
-; 17f154
-
-Function17f154: ; 17f154
- pop hl
- call Function17f524
- jr c, .asm_17f167
- inc hl
- inc hl
- ld e, l
- ld d, h
- ld a, [de]
- cp $50
- jr z, .asm_17f165
- and a
- ret
-
-.asm_17f165
- scf
- ret
-
-.asm_17f167
- push bc
- ld a, [hli]
- ld e, a
- ld a, [hli]
- ld d, a
- pop bc
- push hl
- push bc
- call Function17f4f6
- add hl, de
- ld c, l
- ld b, h
- pop de
- callba Function11c08f
- ld c, l
- ld b, h
- pop de
- and a
- ret
-; 17f181
-
-Function17f181: ; 17f181
- pop hl
- call Function17f524
- jr c, .asm_17f19d
- ld de, $0002
- add hl, de
- ld a, [hli]
- ld e, l
- ld d, h
- ld l, c
- ld h, b
- ld c, a
- ld b, $0
- add hl, bc
- ld a, [de]
- cp $50
- jr z, .asm_17f19b
- and a
- ret
-
-.asm_17f19b
- scf
- ret
-
-.asm_17f19d
- push bc
- ld a, [hli]
- ld e, a
- ld a, [hli]
- ld d, a
- ld a, [hli]
- ld [wcd54], a
- pop bc
- push hl
- push bc
- call Function17f4f6
- add hl, de
- ld a, [hl]
- ld c, a
- ld de, $c608
- callba Function48c63
- pop hl
- ld de, $c608
- call PlaceString
- ld a, c
- ld [wcd52], a
- ld a, b
- ld [wcd53], a
- ld a, [wcd54]
- call Function17f50f
- pop de
- and a
- ret
-; 17f1d0
-
-Function17f1d0: ; 17f1d0
- pop hl
- call Function17f524
- jr c, .asm_17f1ec
- ld de, $0002
- add hl, de
- ld a, [hli]
- ld e, l
- ld d, h
- ld l, c
- ld h, b
- ld c, a
- ld b, $0
- add hl, bc
- ld a, [de]
- cp $50
- jr z, .asm_17f1ea
- and a
- ret
-
-.asm_17f1ea
- scf
- ret
-
-.asm_17f1ec
- push bc
- ld a, [hli]
- ld e, a
- ld a, [hli]
- ld d, a
- ld a, [hli]
- ld [wcd54], a
- pop bc
- push hl
- push bc
- call Function17f4f6
- add hl, de
- ld a, [hl]
- ld a, $1
- ld [rSVBK], a
- ld [wd265], a
- call GetPokemonName
- pop hl
- call PlaceString
- ld a, c
- ld [wcd52], a
- ld a, b
- ld [wcd53], a
- ld a, $4
- ld [rSVBK], a
- ld a, [wcd54]
- call Function17f50f
- pop de
- and a
- ret
-; 17f220
-
-Function17f220: ; 17f220
- pop hl
- call Function17f524
- jr c, .asm_17f23c
- ld de, $0002
- add hl, de
- ld a, [hli]
- ld e, l
- ld d, h
- ld l, c
- ld h, b
- ld c, a
- ld b, $0
- add hl, bc
- ld a, [de]
- cp $50
- jr z, .asm_17f23a
- and a
- ret
-
-.asm_17f23a
- scf
- ret
-
-.asm_17f23c
- push bc
- ld a, [hli]
- ld e, a
- ld a, [hli]
- ld d, a
- ld a, [hli]
- ld [wcd54], a
- pop bc
- push hl
- push bc
- call Function17f4f6
- add hl, de
- ld a, [hl]
- ld e, a
- ld d, 0
- ld hl, .Genders
- add hl, de
- add hl, de
- ld a, [hli]
- ld e, a
- ld a, [hl]
- ld d, a
- pop hl
- call PlaceString
- ld a, c
- ld [wcd52], a
- ld a, b
- ld [wcd53], a
- ld a, [wcd54]
- call Function17f50f
- pop de
- and a
- ret
-; 17f26e
-
-.Genders: dw .Boy, .Girl
-.Boy: db "Boy@"
-.Girl: db "Girl@"
-
-Function17f27b: ; 17f27b
- pop hl
- call Function17f524
- jr c, .asm_17f297
- ld de, $0002
- add hl, de
- ld a, [hli]
- ld e, l
- ld d, h
- ld l, c
- ld h, b
- ld c, a
- ld b, $0
- add hl, bc
- ld a, [de]
- cp $50
- jr z, .asm_17f295
- and a
- ret
-
-.asm_17f295
- scf
- ret
-
-.asm_17f297
- push bc
- ld a, [hli]
- ld e, a
- ld a, [hli]
- ld d, a
- ld a, [hli]
- ld [wcd54], a
- pop bc
- push hl
- push bc
- call Function17f4f6
- add hl, de
- ld a, [hl]
- ld a, $1
- ld [rSVBK], a
- ld [wd265], a
- call GetItemName
- pop hl
- call PlaceString
- ld a, c
- ld [wcd52], a
- ld a, b
- ld [wcd53], a
- ld a, $4
- ld [rSVBK], a
- ld a, [wcd54]
- call Function17f50f
- pop de
- and a
- ret
-; 17f2cb
-
-Function17f2cb: ; 17f2cb
- pop hl
- push bc
- ld a, [hli]
- ld [wcd54], a
- ld a, [hli]
- ld [wcd55], a
- ld a, [wcd2e]
- inc a
- ld [wcd56], a
- pop bc
- push hl
- ld l, c
- ld h, b
- push hl
- ld de, wcd56
- ld b, $1
- ld a, [wcd54]
- ld c, a
- call Function31a4
- ld a, l
- ld [wcd52], a
- ld a, h
- ld [wcd53], a
- pop hl
- ld a, [wcd55]
- call Function17f50f
- pop de
- and a
- ret
-; 17f2ff
-
-Function17f2ff: ; 17f2ff
- pop hl
- push bc
- ld a, [hli]
- ld [wcd54], a
- pop bc
- push hl
- push bc
- ld a, $1
- ld [rSVBK], a
- ld hl, PlayerName
- ld de, $c608
- ld bc, $0006
- call CopyBytes
- ld a, $4
- ld [rSVBK], a
- pop hl
- ld de, $c608
- call PlaceString
- ld a, c
- ld [wcd52], a
- ld a, b
- ld [wcd53], a
- ld a, [wcd54]
- call Function17f50f
- pop de
- and a
- ret
-; 17f334
-
-Function17f334: ; 17f334
- pop hl
- push bc
- ld a, [hli]
- ld [wcd55], a
- and $f
- ld [wcd54], a
- pop bc
- push hl
- ld l, c
- ld h, b
- push hl
- ld a, [wcd55]
- bit 7, a
- jr nz, .asm_17f355
- ld a, $1
- call GetSRAMBank
- ld a, [$be3f]
- jr .asm_17f35d
-
-.asm_17f355
- ld a, $5
- call GetSRAMBank
- ld a, [$b2f3]
-
-.asm_17f35d
- ld c, a
- call CloseSRAM
- ld de, $c608
- callba Function48c63
- pop hl
- ld de, $c608
- call PlaceString
- ld a, c
- ld [wcd52], a
- ld a, b
- ld [wcd53], a
- ld a, [wcd54]
- call Function17f50f
- pop de
- and a
- ret
-; 17f382
-
-Function17f382: ; 17f382
- pop hl
- push bc
- ld a, [hli]
- ld [wcd55], a
- and $f
- ld [wcd54], a
- pop bc
- push hl
- push bc
- ld l, c
- ld h, b
- ld a, [wcd55]
- bit 7, a
- jr nz, .asm_17f3a3
- ld a, $1
- call GetSRAMBank
- ld de, $be40
- jr .asm_17f3ab
-
-.asm_17f3a3
- ld a, $5
- call GetSRAMBank
- ld de, $b2f4
-
-.asm_17f3ab
- ld a, $82
- ld b, a
- ld a, $3
- ld c, a
- call PrintNum
- call CloseSRAM
- ld a, l
- ld [wcd52], a
- ld a, h
- ld [wcd53], a
- pop hl
- ld a, [wcd54]
- call Function17f50f
- pop de
- and a
- ret
-; 17f3c9
-
-Function17f3c9: ; 17f3c9
- push bc
- ld hl, wcd36
- ld de, wc708
- ld bc, $000c
- call CopyBytes
- pop de
- ld c, $0
- callba Function11c075
- push hl
- ld hl, wc708
- ld de, wcd36
- ld bc, $000c
- call CopyBytes
- pop bc
- pop de
- and a
- ret
-; 17f3f0
-
-Function17f3f0: ; 17f3f0
- pop hl
- push hl
- ld a, [hli]
- push af
- push bc
- ld a, [hli]
- ld e, a
- ld a, [hli]
- ld d, a
- ld a, [de]
- ld c, a
- ld b, $0
- add hl, bc
- add hl, bc
- ld a, [hli]
- ld e, a
- ld a, [hli]
- ld d, a
- ld hl, Unkn1Pals
- add hl, de
- ld e, l
- ld d, h
- pop hl
- call PlaceString
- pop af
- ld e, a
- ld d, $0
- pop hl
- add hl, de
- add hl, de
- inc hl
- inc hl
- inc hl
- ld e, l
- ld d, h
- ld l, c
- ld h, b
- scf
- ret
-; 17f41d
-
-Function17f41d: ; 17f41d
- pop hl
- ld a, [hli]
- push hl
- push af
- ld l, c
- ld h, b
- ld bc, -TileMap + $10000
- add hl, bc
- ld de, -SCREEN_WIDTH
- ld c, $1
-.asm_17f42c
- ld a, h
- and a
- jr nz, .asm_17f435
- ld a, l
- cp SCREEN_WIDTH
- jr c, .asm_17f439
-
-.asm_17f435
- add hl, de
- inc c
- jr .asm_17f42c
-
-.asm_17f439
- ld hl, TileMap
- ld de, SCREEN_WIDTH
- ld a, c
-.asm_17f440
- and a
- jr z, .asm_17f447
- add hl, de
- dec a
- jr .asm_17f440
-
-.asm_17f447
- pop af
- ld e, a
- ld d, 0
- add hl, de
- pop de
- and a
- ret
-; 17f44f
-
-Function17f44f: ; 17f44f
- pop hl
- call Function17f524
- jr c, .asm_17f46d
- ld de, $0005
- add hl, de
- ld a, [hli]
- inc hl
- inc hl
- ld e, l
- ld d, h
- ld l, c
- ld h, b
- ld c, a
- ld b, 0
- add hl, bc
- ld a, [de]
- cp $50
- jr z, .asm_17f46b
- and a
- ret
-
-.asm_17f46b
- scf
- ret
-
-.asm_17f46d
- push bc
- ld de, wcd54
- ld bc, $0008
- call CopyBytes
- pop bc
- push hl
- push bc
- ld a, [wcd56]
- cp $c0
- jr c, .asm_17f488
- ld a, [wcd54]
- ld [rSVBK], a
- jr .asm_17f48e
-
-.asm_17f488
- ld a, [wcd54]
- call GetSRAMBank
-
-.asm_17f48e
- ld a, [wcd55]
- ld l, a
- ld a, [wcd56]
- ld h, a
- ld de, $c608
- ld a, [wcd57]
- ld c, a
- ld b, $0
- call CopyBytes
- ld a, [wcd56]
- cp $c0
- jr c, .asm_17f4af
- ld a, $4
- ld [rSVBK], a
- jr .asm_17f4b7
-
-.asm_17f4af
- call CloseSRAM
- ld a, $6
- call GetSRAMBank
-
-.asm_17f4b7
- ld de, $c608
- pop hl
- push hl
- ld a, [wcd57]
- ld b, a
- ld a, [wcd58]
- ld c, a
- call Function31a4
- ld a, l
- ld [wcd52], a
- ld a, h
- ld [wcd53], a
- ld a, [wcd5a]
- and a
- jr z, .asm_17f4ec
- ld c, a
- ld a, [wcd58]
- inc a
- ld b, a
- ld e, l
- ld d, h
- dec de
-.asm_17f4de
- ld a, c
- cp b
- jr z, .asm_17f4e8
- ld a, [de]
- dec de
- ld [hld], a
- dec b
- jr .asm_17f4de
-
-.asm_17f4e8
- ld a, [wcd5b]
- ld [hl], a
-
-.asm_17f4ec
- pop hl
- ld a, [wcd59]
- call Function17f50f
- pop de
- and a
- ret
-; 17f4f6
-
-Function17f4f6: ; 17f4f6
- ld a, [wcd6a]
- ld l, a
- ld a, [wcd6b]
- ld h, a
- ld a, [wcd47]
- ld c, a
- ld a, [BGMapPalBuffer]
- ld b, a
- ld a, [wcd2e]
-.asm_17f509
- and a
- ret z
- dec a
- add hl, bc
- jr .asm_17f509
-; 17f50f
-
-Function17f50f: ; 17f50f
- and a
- jr z, .asm_17f519
- ld c, a
- ld b, $0
- add hl, bc
- ld c, l
- ld b, h
- ret
-
-.asm_17f519
- ld a, [wcd52]
- ld c, a
- ld l, a
- ld a, [wcd53]
- ld b, a
- ld h, a
- ret
-; 17f524
-
-Function17f524: ; 17f524
- push hl
- push bc
- push de
- ld a, [wcd42]
- dec a
- ld b, a
- ld a, [wcd2e]
- cp b
- jr z, .asm_17f53a
- ld hl, wcd68
- cp [hl]
-.asm_17f536
- pop de
- pop bc
- pop hl
- ret
-
-.asm_17f53a
- scf
- jr .asm_17f536
-; 17f53d
-
-Function17f53d: ; 17f53d
- call FadeToMenu
- xor a
- ld [wc303], a
- ld a, [rSVBK]
- push af
- ld a, $1
- ld [rSVBK], a
- call Function17f555
- pop af
- ld [rSVBK], a
- call Function2b4d
- ret
-; 17f555
-
-Function17f555: ; 17f555
-.asm_17f555
- call Functiona57
- call Function17f5ae
- ld a, [wc303]
- bit 7, a
- jr nz, .asm_17f56a
- callba Function104000
- jr .asm_17f555
-
-.asm_17f56a
- call Function17f56e
- ret
-; 17f56e
-
-Function17f56e: ; 17f56e
- ld a, [wc300]
- cp $22
- jr z, .asm_17f597
- cp $31
- jr z, .asm_17f58a
- cp $33
- ret nz
- ld a, [wc301]
- cp $1
- ret nz
- ld a, [wc302]
- cp $2
- ret nz
- jr .asm_17f5a1
-
-.asm_17f58a
- ld a, [wc301]
- cp $3
- ret nz
- ld a, [wc302]
- and a
- ret nz
- jr .asm_17f5a1
-
-.asm_17f597
- ld a, [wc301]
- and a
- ret nz
- ld a, [wc302]
- and a
- ret nz
-
-.asm_17f5a1
- ld a, $5
- call GetSRAMBank
- xor a
- ld [$aa4b], a
- call CloseSRAM
- ret
-; 17f5ae
-
-Function17f5ae: ; 17f5ae
- ld a, [wc303]
- ld e, a
- ld d, 0
- ld hl, Table17f5bd
- add hl, de
- add hl, de
- ld a, [hli]
- ld h, [hl]
- ld l, a
- jp [hl]
-; 17f5bd
-
-Table17f5bd: ; 17f5bd
- dw Function17f5c3
- dw Function17ff23
- dw Function17f5d2
-; 17f5c3
-
-Function17f5c3: ; 17f5c3
- call Function17f5e4
- callba Function2b5c
- ld a, $1
- ld [wc303], a
- ret
-; 17f5d2
-
-Function17f5d2: ; 17f5d2
- call Function17f5e4
- callba Function104000
- call Function32f9
- ld a, $1
- ld [wc303], a
- ret
-; 17f5e4
-
-Function17f5e4: ; 17f5e4
- ld a, $8
- ld [MusicFade], a
- ld de, MUSIC_NONE
- ld a, e
- ld [MusicFadeIDLo], a
- ld a, d
- ld [MusicFadeIDHi], a
- ld a, " "
- ld hl, TileMap
- ld bc, $0168
- call ByteFill
- ld a, $6
- ld hl, AttrMap
- ld bc, $0168
- call ByteFill
- hlcoord 2, 1
- ld b, $1
- ld c, $e
- call Function3eea
- hlcoord 1, 4
- ld b, $c
- ld c, $10
- call Function3eea
- hlcoord 3, 2
- ld de, String_17f6dc
- call PlaceString
- call Function17ff3c
- jr nc, .asm_17f632
- hlcoord 11, 2
- call Function17f6b7
-
-.asm_17f632
- ld a, [wc300]
- cp $d0
- jr nc, .asm_17f684
- cp $10
- jr c, .asm_17f679
- sub $10
- cp $24
- jr nc, .asm_17f679
- ld e, a
- ld d, $0
- ld hl, Table_17f706
- add hl, de
- add hl, de
- ld a, [wc301]
- ld e, a
- ld a, [wc302]
- ld d, a
- ld a, [hli]
- ld c, a
- ld a, [hl]
- ld h, a
- ld l, c
- ld a, [hli]
- and a
- jr z, .asm_17f679
- ld c, a
-.asm_17f65d
- ld a, [hli]
- ld b, a
- ld a, [hli]
- cp $ff
- jr nz, .asm_17f667
- cp b
- jr z, .asm_17f66e
-
-.asm_17f667
- xor d
- jr nz, .asm_17f674
- ld a, b
- xor e
- jr nz, .asm_17f674
-
-.asm_17f66e
- ld a, [hli]
- ld e, a
- ld a, [hl]
- ld d, a
- jr .asm_17f67d
-
-.asm_17f674
- inc hl
- inc hl
- dec c
- jr nz, .asm_17f65d
-
-.asm_17f679
- ld a, $d9
- jr .asm_17f684
-
-.asm_17f67d
- hlcoord 2, 6
- call PlaceString
- ret
-
-.asm_17f684
- sub $d0
- ld e, a
- ld d, 0
- ld hl, Table_17f699
- add hl, de
- add hl, de
- ld a, [hli]
- ld e, a
- ld a, [hl]
- ld d, a
- hlcoord 2, 6
- call PlaceString
- ret
-; 17f699
-
-Table_17f699: ; 17f699
- dw String_17fedf
- dw String_17fdd9
- dw String_17fdd9
- dw String_17fe03
- dw String_17fd84
- dw String_17fe63
- dw String_17fdb2
- dw String_17fe4b
- dw String_17fe03
- dw String_17fe03
- dw String_17fe03
-; 17f6af
-
-Palette_17f6af: ; 17f6af
- RGB 5, 5, 16
- RGB 8, 19, 28
- RGB 0, 0, 0
- RGB 31, 31, 31
-; 17f6b7
-
-Function17f6b7: ; 17f6b7
- ld a, [wc300]
- call Function17f6cd
- inc hl
- ld a, [wc302]
- and $f
- call Function17f6d8
- ld a, [wc301]
- call Function17f6cd
- ret
-; 17f6cd
-
-Function17f6cd: ; 17f6cd
- ld c, a
- and $f0
- swap a
- call Function17f6d8
- ld a, c
- and $f
-
-Function17f6d8: ; 17f6d8
- add $f6
- ld [hli], a
- ret
-; 17f6dc
-
-String_17f6dc: ; 17f6dc
- db "つうしんエラー ー@"
-; 17f6e8
-
-String_17f6e8: ; 17f6e8
- db "みていぎ", $25, "エラーです"
- next "プログラム", $1f
- next "かくにん してください"
- db "@"
-; 17f706
-
-Table_17f706:
- dw Unknown_17f74e
- dw Unknown_17f753
- dw Unknown_17f758
- dw Unknown_17f75d
- dw Unknown_17f762
- dw Unknown_17f767
- dw Unknown_17f778
- dw Unknown_17f77d
- dw Unknown_17f782
- dw Unknown_17f782
- dw Unknown_17f782
- dw Unknown_17f782
- dw Unknown_17f782
- dw Unknown_17f782
- dw Unknown_17f782
- dw Unknown_17f782
- dw Unknown_17f782
- dw Unknown_17f787
- dw Unknown_17f78c
- dw Unknown_17f791
- dw Unknown_17f796
- dw Unknown_17f79b
- dw Unknown_17f7a0
- dw Unknown_17f7a5
- dw Unknown_17f7a5
- dw Unknown_17f7a5
- dw Unknown_17f7a5
- dw Unknown_17f7a5
- dw Unknown_17f7a5
- dw Unknown_17f7a5
- dw Unknown_17f7a5
- dw Unknown_17f7a5
- dw Unknown_17f7a5
- dw Unknown_17f7ea
- dw Unknown_17f7ff
- dw Unknown_17f844
-
-Unknown_17f74e: db 1
- dbbw $0, $0, String_17f891
-
-Unknown_17f753: db 1
- dbbw $0, $0, String_17f8d1
-
-Unknown_17f758: db 1
- dbbw $0, $0, String_17f913
-
-Unknown_17f75d: db 1
- dbbw $0, $0, String_17f8d1
-
-Unknown_17f762: db 1
- dbbw $0, $0, String_17fa71
-
-Unknown_17f767: db 4
- dbbw $0, $0, String_17f946
- dbbw $1, $0, String_17f946
- dbbw $2, $0, String_17f946
- dbbw $3, $0, String_17f946
-
-Unknown_17f778: db 1
- dbbw $0, $0, String_17f98e
-
-Unknown_17f77d: db 1
- dbbw $0, $0, String_17f98e
-
-Unknown_17f782: db 1
- dbbw $0, $0, String_17f98e
-
-Unknown_17f787: db 1
- dbbw $0, $0, String_17f98e
-
-Unknown_17f78c: db 1
- dbbw $0, $0, String_17f9d0
-
-Unknown_17f791: db 1
- dbbw $0, $0, String_17fa14
-
-Unknown_17f796: db 1
- dbbw $0, $0, String_17fcbf
-
-Unknown_17f79b: db 1
- dbbw $0, $0, String_17fa71
-
-Unknown_17f7a0: db 1
- dbbw $0, $0, String_17fbfe
-
-Unknown_17f7a5: db 17
- dbbw $0, $0, String_17f98e
- dbbw $21, $2, String_17fcbf
- dbbw $21, $4, String_17fcbf
- dbbw $50, $4, String_17faf9
- dbbw $51, $4, String_17fcbf
- dbbw $52, $4, String_17fcbf
- dbbw $0, $5, String_17f98e
- dbbw $1, $5, String_17f98e
- dbbw $2, $5, String_17f98e
- dbbw $3, $5, String_17f98e
- dbbw $4, $5, String_17f98e
- dbbw $50, $5, String_17faf9
- dbbw $51, $5, String_17faf9
- dbbw $52, $5, String_17fcbf
- dbbw $53, $5, String_17faf9
- dbbw $54, $5, String_17fcbf
- dbbw $ff, $ff, String_17fcbf
-
-Unknown_17f7ea: db 5
- dbbw $0, $0, String_17f98e
- dbbw $2, $0, String_17fb2a
- dbbw $3, $0, String_17fb6e
- dbbw $4, $0, String_17f98e
- dbbw $ff, $ff, String_17fcbf
-
-Unknown_17f7ff: db 17
- dbbw $0, $0, String_17f98e
- dbbw $1, $3, String_17f98e
- dbbw $2, $3, String_17f98e
- dbbw $0, $4, String_17f98e
- dbbw $1, $4, String_17f98e
- dbbw $3, $4, String_17fbb6
- dbbw $4, $4, String_17fbb6
- dbbw $5, $4, String_17f98e
- dbbw $6, $4, String_17f98e
- dbbw $7, $4, String_17f98e
- dbbw $8, $4, String_17fbfe
- dbbw $0, $5, String_17fa49
- dbbw $1, $5, String_17f98e
- dbbw $2, $5, String_17fa49
- dbbw $3, $5, String_17fab0
- dbbw $4, $5, String_17fa49
- dbbw $ff, $ff, String_17fa49
-
-Unknown_17f844: db 19
- dbbw $1, $1, String_17fc3e
- dbbw $2, $1, String_17fc88
- dbbw $3, $1, String_17fcff
- dbbw $4, $1, String_17fd84
- dbbw $5, $1, String_17fd84
- dbbw $6, $1, String_17fd47
- dbbw $1, $2, String_17fb6e
- dbbw $2, $2, String_17f98e
- dbbw $3, $2, String_17fd84
- dbbw $4, $2, String_17f98e
- dbbw $5, $2, String_17fa49
- dbbw $6, $2, String_17fd84
- dbbw $99, $2, String_17fc88
- dbbw $1, $3, String_17fa49
- dbbw $1, $4, String_17fa49
- dbbw $2, $4, String_17fa49
- dbbw $3, $4, String_17fa49
- dbbw $4, $4, String_17fa49
- dbbw $ff, $ff, String_17fa49
-
-String_17f891: ; 17f891
- db "モバイルアダプタが ただしく"
- next "さしこまれていません"
- next "とりあつかいせつめいしょを"
- next "ごらんのうえ しっかりと"
- next "さしこんで ください"
- db "@"
-
-String_17f8d1: ; 17f8d1
- db "でんわが うまく かけられないか"
- next "でんわかいせんが こんでいるので"
- next "つうしん できません"
- next "しばらく まって"
- next "かけなおして ください"
- db "@"
-
-String_17f913: ; 17f913
- db "でんわかいせんが こんでいるため"
- next "でんわが かけられません"
- next "しばらく まって"
- next "かけなおして ください"
- db "@"
-
-String_17f946: ; 17f946
- db "モバイルアダプタの エラーです"
- next "しばらく まって"
- next "かけなおして ください"
- next "なおらない ときは"
- next "モバイルサポートセンターへ"
- next "おといあわせください"
- db "@"
-
-String_17f98e: ; 17f98e
- db "つうしんエラーです"
- next "しばらく まって"
- next "かけなおして ください"
- next "なおらない ときは"
- next "モバイルサポートセンターへ"
- next "おといあわせください"
- db "@"
-
-String_17f9d0: ; 17f9d0
- db "ログインパスワードか"
- next "ログイン アイディーに"
- next "まちがいがあります"
- next "パスワードを かくにんして"
- next "しばらく まって"
- next "かけなおして ください"
- db "@"
-
-String_17fa14: ; 17fa14
- db "でんわが きれました"
- next "とりあつかいせつめいしょを"
- next "ごらんのうえ"
- next "しばらく まって"
- next "かけなおして ください"
- db "@"
-
-String_17fa49: ; 17fa49
- db "モバイルセンターの"
- next "つうしんエラーです"
- next "しばらくまって"
- next "かけなおして ください"
- db "@"
-
-String_17fa71: ; 17fa71
- db "モバイルアダプタに"
- next "とうろくされた じょうほうが"
- next "ただしく ありません"
- next "モバイルトレーナーで"
- next "しょきとうろくを してください"
- db "@"
-
-String_17fab0: ; 17fab0
- db "モバイルセンターが"
- next "こんでいて つながりません"
- next "しばらくまって"
- next "かけなおして ください"
- next "くわしくは とりあつかい"
- next "せつめいしょを ごらんください"
- db "@"
-
-String_17faf9: ; 17faf9
- db "あてさき メールアドレスに"
- next "まちがいがあります"
- next "ただしい メールアドレスを"
- next "いれなおしてください"
- db "@"
-
-String_17fb2a: ; 17fb2a
- db "メールアドレスに"
- next "まちがいが あります"
- next "とりあつかいせつめいしょを"
- next "ごらんのうえ"
- next "モバイルトレーナーで"
- next "しょきとうろくを してください"
- db "@"
-
-String_17fb6e: ; 17fb6e
- db "ログインパスワードに"
- next "まちがいが あるか"
- next "モバイルセンターの エラーです"
- next "パスワードを かくにんして"
- next "しばらく まって"
- next "かけなおして ください"
- db "@"
-
-String_17fbb6: ; 17fbb6
- db "データの よみこみが できません"
- next "しばらくまって"
- next "かけなおして ください"
- next "なおらない ときは"
- next "モバイルサポートセンターへ"
- next "おといあわせください"
- db "@"
-
-String_17fbfe: ; 17fbfe
- db "じかんぎれです"
- next "でんわが きれました"
- next "でんわを かけなおしてください"
- next "くわしくは とりあつかい"
- next "せつめいしょを ごらんください"
- db "@"
-
-String_17fc3e: ; 17fc3e
- db "ごりよう りょうきんの "
- next "おしはらいが おくれたばあいには"
- next "ごりようが できなくなります"
- next "くわしくは とりあつかい"
- next "せつめいしょを ごらんください"
- db "@"
-
-String_17fc88: ; 17fc88
- db "おきゃくさまの ごつごうにより"
- next "ごりようできません"
- next "くわしくは とりあつかい"
- next "せつめいしょを ごらんください"
- db "@"
-
-String_17fcbf: ; 17fcbf
- db "でんわかいせんが こんでいるか"
- next "モバイルセンターの エラーで"
- next "つうしんが できません"
- next "しばらく まって"
- next "かけなおして ください"
- db "@"
-
-String_17fcff: ; 17fcff
- db "ごりよう りょうきんが"
- next "じょうげんを こえているため"
- next "こんげつは ごりようできません"
- next "くわしくは とりあつかい"
- next "せつめいしょを ごらんください"
- db "@"
-
-String_17fd47: ; 17fd47
- db "げんざい モバイルセンターの"
- next "てんけんを しているので"
- next "つうしんが できません"
- next "しばらく まって"
- next "かけなおして ください"
- db "@"
-
-String_17fd84: ; 17fd84
- db "データの よみこみが できません"
- next "くわしくは とりあつかい"
- next "せつめいしょを ごらんください"
- db "@"
-
-
-String_17fdb2: ; 17fdb2
- db "3ぷん いじょう なにも"
- next "にゅうりょく しなかったので"
- next "でんわが きれました"
- db "@"
-
-String_17fdd9: ; 17fdd9
- db "つうしんが うまく"
- next "できませんでした"
- next "もういちど はじめから"
- next "やりなおしてください"
- db "@"
-
-String_17fe03: ; 17fe03
- db "データの よみこみが できません"
- next "しばらくまって"
- next "かけなおして ください"
- next "なおらない ときは"
- next "モバイルサポートセンターへ"
- next "おといあわせください"
- db "@"
-
-String_17fe4b: ; 17fe4b
- db "まちじかんが ながいので"
- next "でんわが きれました"
- db "@"
-
-String_17fe63: ; 17fe63
- db "あいての モバイルアダプタと"
- next "タイプが ちがいます"
- next "くわしくは とりあつかい"
- next "せつめいしょを ごらんください"
- db "@"
-
-String_17fe9a: ; 17fe9a ; unreferenced
- db "ポケモンニュースが"
- next "あたらしくなっているので"
- next "レポートを おくれません"
- next "あたらしい ポケモンニュースの"
- next "よみこみを さきに してください"
- db "@"
-
-String_17fedf: ; 17fedf
- db "つうしんの じょうきょうが"
- next "よくないか かけるあいてが"
- next "まちがっています"
- next "もういちど かくにんをして"
- next "でんわを かけなおして ください"
- db "@"
-; 17ff23
-
-Function17ff23: ; 17ff23
- ld a, [hJoyPressed]
- and a
- ret z
- ld a, $8
- ld [MusicFade], a
- ld a, [wMapMusic]
- ld [MusicFadeIDLo], a
- xor a
- ld [MusicFadeIDHi], a
- ld hl, wc303
- set 7, [hl]
- ret
-; 17ff3c
-
-Function17ff3c: ; 17ff3c
- nop
- ld a, [wc300]
- cp $d0
- ret c
- hlcoord 10, 2
- ld de, String_17ff68
- call PlaceString
- ld a, [wc300]
- push af
- sub $d0
- inc a
- ld [wc300], a
- hlcoord 14, 2
- ld de, wc300
- ld bc, $8103
- call PrintNum
- pop af
- ld [wc300], a
- and a
- ret
-; 17ff68
-
-String_17ff68: ; 17ff68
- db "101@"
-; 17ff6c
-
+INCLUDE "misc/mobile_5f.asm"
SECTION "Common Text 1", ROMX, BANK[$6C]
@@ -144871,18 +95564,14 @@ INCLUDE "text/common_4.asm"
SECTION "bank72", ROMX, BANK[$72]
-; Item names & descriptions
-
ItemNames::
INCLUDE "items/item_names.asm"
INCLUDE "items/item_descriptions.asm"
-
MoveNames::
INCLUDE "battle/move_names.asm"
-
INCLUDE "engine/landmarks.asm"
@@ -145262,9 +95951,15 @@ MobileLvIcon: ; 1dc599
INCBIN "gfx/mobile/lv.1bpp"
+
+SECTION "Tileset Data 7", ROMX, BANK[TILESETS_7]
+
INCLUDE "tilesets/data_7.asm"
+
+SECTION "bank77_2", ROMX, BANK[$77]
+
Function1dd6a9: ; 1dd6a9
ld a, b
ld b, c
@@ -145330,99 +96025,9 @@ String_1dd6fc: db "AM@"
String_1dd6ff: db "PM@"
; 1dd702
-Function1dd702: ; 1dd702
- call Function1dd709
- call Functiona80
- ret
-; 1dd709
-
-Function1dd709: ; 1dd709
- call WhiteBGMap
- call ClearTileMap
- call ClearSprites
- call DisableLCD
- ld hl, LZ_1dd805
- ld de, VTiles2
- call Decompress
- ld hl, Tilemap_1ddc4b
- ld de, TileMap
- ld bc, $0168
- call CopyBytes
- ld de, String_1dd760
- hlcoord 2, 5
- call PlaceString
- ld de, String_1dd767
- hlcoord 15, 5
- call PlaceString
- ld de, PlayerName
- hlcoord 9, 5
- call PlaceString
- ld de, String_1dd768
- hlcoord 2, 8
- call PlaceString
- call EnableLCD
- call WaitBGMap
- ld b, $8
- call GetSGBLayout
- call Function32f9
- call DelayFrame
- ret
-; 1dd760
-
-String_1dd760:
- db "PLAYER@"
-
-String_1dd767:
- db "@"
-
-String_1dd768:
- db "This certifies"
- next "that you have"
- next "completed the"
- next "new #DEX."
- next "Congratulations!"
- db "@"
-; 1dd7ae
-
-Function1dd7ae: ; 1dd7ae
- ld hl, TileMap
- ld bc, $0168
- ld a, $7f
- call ByteFill
- ld hl, Tilemap_1dddb3
- ld de, TileMap
- ld bc, $0168
- call CopyBytes
- ld de, String_1dd7fa
- hlcoord 8, 0
- call PlaceString
- ld de, String_1dd7f0
- hlcoord 3, 15
- call PlaceString
- hlcoord 12, 15
- ld de, GameTimeHours
- ld bc, $0204
- call PrintNum
- ld [hl], $67
- inc hl
- ld de, GameTimeMinutes
- ld bc, $8102
- call PrintNum
- ret
-; 1dd7f0
-
-String_1dd7f0: db "PLAY TIME@"
-String_1dd7fa: db "GAME FREAK@"
-; 1dd805
-
-LZ_1dd805: ; 1dd805
-INCBIN "gfx/unknown/1dd805.2bpp.lz"
-Tilemap_1ddc4b: ; 1ddc4b
-INCBIN "gfx/unknown/1ddc4b.tilemap"
+INCLUDE "engine/diploma.asm"
-Tilemap_1dddb3: ; 1dddb3
-INCBIN "gfx/unknown/1dddb3.tilemap"
Function1ddf1c: ; 1ddf1c
ld hl, LZ_1ddf33
diff --git a/maps/AzaleaTown.asm b/maps/AzaleaTown.asm
index 101d0ff3d..d24362744 100644
--- a/maps/AzaleaTown.asm
+++ b/maps/AzaleaTown.asm
@@ -36,7 +36,7 @@ UnknownScript_0x198018: ; 0x198018
moveperson $b, $b, $b
spriteface $0, $3
showemote $0, $0, 15
- special $006a
+ special Functionc48f
pause 15
appear $b
applymovement $b, MovementData_0x198134
@@ -47,7 +47,7 @@ UnknownScript_0x198018: ; 0x198018
UnknownScript_0x198034: ; 0x198034
spriteface $0, $3
showemote $0, $0, 15
- special $006a
+ special Functionc48f
pause 15
appear $b
applymovement $b, MovementData_0x19813c
diff --git a/maps/BattleTower1F.asm b/maps/BattleTower1F.asm
index 152a8915e..5d65fd6bb 100644
--- a/maps/BattleTower1F.asm
+++ b/maps/BattleTower1F.asm
@@ -12,10 +12,10 @@ BattleTower1F_MapScriptHeader: ; 0x9e393
UnknownScript_0x9e39d: ; 0x9e39d
writebyte $9
- special $0086
+ special Function170687
iffalse UnknownScript_0x9e3d1
writebyte $2
- special $0086
+ special Function170687
if_equal $0, UnknownScript_0x9e3d1
if_equal $2, UnknownScript_0x9e3c4
if_equal $3, UnknownScript_0x9e3d1
@@ -34,9 +34,9 @@ UnknownScript_0x9e3c4: ; 0x9e3c4
UnknownScript_0x9e3c7: ; 0x9e3c7
writebyte $4
- special $0086
+ special Function170687
writebyte $6
- special $0086
+ special Function170687
UnknownScript_0x9e3d1: ; 0x9e3d1
dotrigger $1
UnknownScript_0x9e3d3: ; 0x9e3d3
@@ -57,13 +57,13 @@ UnknownScript_0x9e3e0: ; 0x9e3e0
ReceptionistScript_0x9e3e2: ; 0x9e3e2
writebyte $2
- special $0086
+ special Function170687
if_equal $3, BattleTowerBattleRoomScript_0x9f4e4
loadfont
writetext UnknownText_0x9e5ab
keeptextopen
writebyte $0
- special $0086
+ special Function170687
if_not_equal $0, UnknownScript_0x9e3fc
jump UnknownScript_0x9e49e
; 0x9e3fc
@@ -71,7 +71,7 @@ ReceptionistScript_0x9e3e2: ; 0x9e3e2
UnknownScript_0x9e3fc: ; 0x9e3fc
writetext UnknownText_0x9e5ea
writebyte $1
- special $0088
+ special Function17d224
if_equal $1, UnknownScript_0x9e40f
if_equal $2, UnknownScript_0x9e4a5
jump UnknownScript_0x9e4b0
@@ -79,35 +79,35 @@ UnknownScript_0x9e3fc: ; 0x9e3fc
UnknownScript_0x9e40f: ; 0x9e40f
writebyte $1a
- special $0086
- special $007c
+ special Function170687
+ special Function170bd3
if_not_equal $0, UnknownScript_0x9e4bb
writetext UnknownText_0x9ef1f
yesorno
iffalse UnknownScript_0x9e3fc
dotrigger $0
- special $0004
+ special Function29e66
iffalse UnknownScript_0x9e3fc
dotrigger $1
writebyte $1
- special $0086
- special $0074
+ special Function170687
+ special Function1700b0
if_equal $a, UnknownScript_0x9e3fc
if_not_equal $0, UnknownScript_0x9e550
writebyte $11
- special $0086
+ special Function170687
writetext UnknownText_0x9e60a
closetext
loadmovesprites
writebyte $1e
- special $0086
+ special Function170687
jump UnknownScript_0x9e454
; 0x9e44e
UnknownScript_0x9e44e: ; 0x9e44e
loadmovesprites
writebyte $8
- special $0086
+ special Function170687
UnknownScript_0x9e454: ; 0x9e454
musicfadeout $0000, $8
domaptrigger GROUP_BATTLE_TOWER_BATTLE_ROOM, MAP_BATTLE_TOWER_BATTLE_ROOM, $0
@@ -116,7 +116,7 @@ UnknownScript_0x9e454: ; 0x9e454
follow $2, $0
applymovement $2, MovementData_0x9e571
writebyte $a
- special $0086
+ special Function170687
warpsound
disappear $2
stopfollow
@@ -127,15 +127,15 @@ UnknownScript_0x9e454: ; 0x9e454
UnknownScript_0x9e47a: ; 0x9e47a
writebyte $1c
- special $0086
+ special Function170687
writebyte $1b
- special $0086
+ special Function170687
if_equal $12, UnknownScript_0x9e498
itemtotext $0, $1
giveitem $ff, $5
writetext UnknownText_0x9eb7e
writebyte $1d
- special $0086
+ special Function170687
loadmovesprites
end
; 0x9e498
@@ -155,7 +155,7 @@ UnknownScript_0x9e4a5: ; 0x9e4a5
writetext UnknownText_0x9e886
UnknownScript_0x9e4a8: ; 0x9e4a8
writebyte $1
- special $0086
+ special Function170687
jump UnknownScript_0x9e3fc
; 0x9e4b0
@@ -167,7 +167,7 @@ UnknownScript_0x9e4b0: ; 0x9e4b0
; 0x9e4b6
UnknownScript_0x9e4b6: ; 0x9e4b6
- special $008b
+ special Function17f53d
loadmovesprites
end
; 0x9e4bb
@@ -183,11 +183,11 @@ UnknownScript_0x9e4be: ; 0x9e4be
writetext UnknownText_0x9ef1f
yesorno
iffalse UnknownScript_0x9e3fc
- special $0004
+ special Function29e66
iffalse UnknownScript_0x9e3fc
writebyte $1
- special $0086
- special $0075
+ special Function170687
+ special Function1700ba
if_equal $a, UnknownScript_0x9e3fc
if_not_equal $0, UnknownScript_0x9e550
writetext UnknownText_0x9e9eb
@@ -201,15 +201,15 @@ UnknownScript_0x9e4be: ; 0x9e4be
UnknownScript_0x9e4ea: ; 0x9e4ea
writebyte $18
- special $0086
+ special Function170687
if_not_equal $0, UnknownScript_0x9e542
writebyte $19
- special $0086
+ special Function170687
if_not_equal $0, UnknownScript_0x9e549
- special $007c
+ special Function170bd3
if_not_equal $0, UnknownScript_0x9e4bb
writebyte $5
- special $0086
+ special Function170687
if_equal $0, UnknownScript_0x9e512
writetext UnknownText_0x9ecb0
jump UnknownScript_0x9e515
@@ -224,13 +224,13 @@ UnknownScript_0x9e515: ; 0x9e515
yesorno
iffalse UnknownScript_0x9e3fc
dotrigger $0
- special $0004
+ special Function29e66
iffalse UnknownScript_0x9e3fc
dotrigger $1
writebyte $6
- special $0086
+ special Function170687
writebyte $12
- special $0086
+ special Function170687
writetext UnknownText_0x9e60a
closetext
jump UnknownScript_0x9e44e
@@ -255,7 +255,7 @@ UnknownScript_0x9e549: ; 0x9e549
; 0x9e550
UnknownScript_0x9e550: ; 0x9e550
- special $008b
+ special Function17f53d
loadmovesprites
end
; 0x9e555
diff --git a/maps/BattleTowerBattleRoom.asm b/maps/BattleTowerBattleRoom.asm
index d07ebbb3c..e16feb3e8 100644
--- a/maps/BattleTowerBattleRoom.asm
+++ b/maps/BattleTowerBattleRoom.asm
@@ -24,7 +24,7 @@ UnknownScript_0x9f421: ; 0x9f421
applymovement $0, MovementData_0x9e58c
UnknownScript_0x9f425: ; 0x9f425
writebyte $2
- special $007a
+ special Function170b44
appear $2
warpsound
waitbutton
@@ -33,8 +33,8 @@ UnknownScript_0x9f425: ; 0x9f425
storetext 1
keeptextopen
loadmovesprites
- special $0077
- special $002e
+ special Function170215
+ special Function8c084
reloadmap
if_not_equal $0, UnknownScript_0x9f4c2
copybytetovar wcf64
@@ -49,11 +49,11 @@ UnknownScript_0x9f425: ; 0x9f425
closetext
loadmovesprites
playmusic MUSIC_HEAL
- special $002e
- special $00a4
+ special Function8c084
+ special Function1047eb
pause 60
- special $0031
- special $003d
+ special Function8c079
+ special RestartMapMusic
loadfont
writetext UnknownText_0x9eebc
yesorno
@@ -70,25 +70,25 @@ UnknownScript_0x9f483: ; 0x9f483
yesorno
iffalse UnknownScript_0x9f4a3
writebyte $7
- special $0086
+ special Function170687
writebyte $1f
- special $0086
+ special Function170687
writebyte $3
- special $0086
+ special Function170687
playsound SFX_SAVE
waitbutton
- special $002e
- special $007e
+ special Function8c084
+ special Reset
UnknownScript_0x9f4a3: ; 0x9f4a3
writetext UnknownText_0x9efbf
yesorno
iffalse UnknownScript_0x9f477
writebyte $4
- special $0086
+ special Function170687
writebyte $6
- special $0086
+ special Function170687
loadmovesprites
- special $002e
+ special Function8c084
warpfacing $1, GROUP_BATTLE_TOWER_1F, MAP_BATTLE_TOWER_1F, $7, $7
loadfont
jump UnknownScript_0x9e4b0
@@ -96,10 +96,10 @@ UnknownScript_0x9f4a3: ; 0x9f4a3
UnknownScript_0x9f4c2: ; 0x9f4c2
pause 60
- special $002f
+ special Function8c092
warpfacing $1, GROUP_BATTLE_TOWER_1F, MAP_BATTLE_TOWER_1F, $7, $7
writebyte $4
- special $0086
+ special Function170687
loadfont
writetext UnknownText_0x9ea49
closetext
@@ -109,7 +109,7 @@ UnknownScript_0x9f4c2: ; 0x9f4c2
UnknownScript_0x9f4d9: ; 0x9f4d9
pause 60
- special $002f
+ special Function8c092
warpfacing $1, GROUP_BATTLE_TOWER_1F, MAP_BATTLE_TOWER_1F, $7, $7
BattleTowerBattleRoomScript_0x9f4e4: ; 0x9f4e4
loadfont
@@ -119,7 +119,7 @@ BattleTowerBattleRoomScript_0x9f4e4: ; 0x9f4e4
UnknownScript_0x9f4eb: ; 0x9f4eb
writebyte $4
- special $0086
+ special Function170687
loadfont
writetext UnknownText_0x9f0c1
closetext
@@ -129,9 +129,9 @@ UnknownScript_0x9f4eb: ; 0x9f4eb
UnknownScript_0x9f4f7: ; 0x9f4f7
writebyte $4
- special $0086
+ special Function170687
writebyte $6
- special $0086
+ special Function170687
loadfont
writetext UnknownText_0x9ea49
writetext UnknownText_0x9ec09
diff --git a/maps/BattleTowerElevator.asm b/maps/BattleTowerElevator.asm
index 4314730d1..900d01c7b 100644
--- a/maps/BattleTowerElevator.asm
+++ b/maps/BattleTowerElevator.asm
@@ -24,7 +24,7 @@ UnknownScript_0x9f568: ; 0x9f568
applymovement $2, MovementData_0x9f58f
applymovement $0, MovementData_0x9f592
writebyte $a
- special $0086
+ special Function170687
playsound SFX_ELEVATOR
earthquake 60
waitbutton
diff --git a/maps/BillsHouse.asm b/maps/BillsHouse.asm
index 91ab8acec..886430c50 100644
--- a/maps/BillsHouse.asm
+++ b/maps/BillsHouse.asm
@@ -35,7 +35,7 @@ UnknownScript_0x189553: ; 0x189553
yesorno
iffalse UnknownScript_0x1896aa
scall UnknownScript_0x1896a5
- special $004d
+ special Function73f7
iffalse UnknownScript_0x1896aa
if_not_equal LICKITUNG, UnknownScript_0x1896c6
scall UnknownScript_0x1896b0
@@ -50,7 +50,7 @@ UnknownScript_0x189592: ; 0x189592
yesorno
iffalse UnknownScript_0x1896aa
scall UnknownScript_0x1896a5
- special $004d
+ special Function73f7
iffalse UnknownScript_0x1896aa
if_not_equal ODDISH, UnknownScript_0x1896c6
scall UnknownScript_0x1896b0
@@ -65,7 +65,7 @@ UnknownScript_0x1895b3: ; 0x1895b3
yesorno
iffalse UnknownScript_0x1896aa
scall UnknownScript_0x1896a5
- special $004d
+ special Function73f7
iffalse UnknownScript_0x1896aa
if_not_equal STARYU, UnknownScript_0x1896c6
scall UnknownScript_0x1896b0
@@ -82,7 +82,7 @@ UnknownScript_0x1895d4: ; 0x1895d4
yesorno
iffalse UnknownScript_0x1896aa
scall UnknownScript_0x1896a5
- special $004d
+ special Function73f7
iffalse UnknownScript_0x1896aa
if_not_equal GROWLITHE, UnknownScript_0x1896c6
scall UnknownScript_0x1896b0
@@ -97,7 +97,7 @@ UnknownScript_0x1895f9: ; 0x1895f9
yesorno
iffalse UnknownScript_0x1896aa
scall UnknownScript_0x1896a5
- special $004d
+ special Function73f7
iffalse UnknownScript_0x1896aa
if_not_equal VULPIX, UnknownScript_0x1896c6
scall UnknownScript_0x1896b0
@@ -112,7 +112,7 @@ UnknownScript_0x18961a: ; 0x18961a
yesorno
iffalse UnknownScript_0x1896aa
scall UnknownScript_0x1896a5
- special $004d
+ special Function73f7
iffalse UnknownScript_0x1896aa
if_not_equal PICHU, UnknownScript_0x1896c6
scall UnknownScript_0x1896b0
diff --git a/maps/BluesHouse.asm b/maps/BluesHouse.asm
index 59ef62951..aab29be8f 100644
--- a/maps/BluesHouse.asm
+++ b/maps/BluesHouse.asm
@@ -25,21 +25,21 @@ UnknownScript_0x19b0de: ; 0x19b0de
iffalse UnknownScript_0x19b124
writetext UnknownText_0x19b244
closetext
- special $0063
+ special Function741d
if_equal $0, UnknownScript_0x19b124
if_equal $1, UnknownScript_0x19b12a
setflag $005c
writetext UnknownText_0x19b266
closetext
loadmovesprites
- special $002e
+ special Function8c084
playmusic MUSIC_HEAL
pause 60
- special $0031
- special $003d
+ special Function8c079
+ special RestartMapMusic
loadfont
writetext UnknownText_0x19b296
- special $0064
+ special Functionc472
keeptextopen
writetext UnknownText_0x19b2aa
closetext
diff --git a/maps/BurnedTower1F.asm b/maps/BurnedTower1F.asm
index 50325c41d..356dfcb81 100644
--- a/maps/BurnedTower1F.asm
+++ b/maps/BurnedTower1F.asm
@@ -55,7 +55,7 @@ UnknownScript_0x185c0d: ; 0x185c0d
UnknownScript_0x185c25: ; 0x185c25
showemote $0, $4, 15
- special $006a
+ special Functionc48f
pause 15
spriteface $4, $3
pause 15
@@ -107,7 +107,7 @@ UnknownScript_0x185c80: ; 0x185c80
loadmovesprites
dotrigger $2
setevent $06c5
- special $006a
+ special Functionc48f
pause 15
earthquake 50
showemote $0, $0, 15
diff --git a/maps/BurnedTowerB1F.asm b/maps/BurnedTowerB1F.asm
index 026d494a6..67dd1bd7a 100644
--- a/maps/BurnedTowerB1F.asm
+++ b/maps/BurnedTowerB1F.asm
@@ -78,10 +78,10 @@ UnknownScript_0x18616b: ; 0x18616b
spriteface $0, $0
disappear $5
waitbutton
- special $003d
+ special RestartMapMusic
dotrigger $1
setevent EVENT_RELEASED_THE_BEASTS
- special $0069
+ special InitRoamMons
domaptrigger GROUP_ECRUTEAK_GYM, MAP_ECRUTEAK_GYM, $1
domaptrigger GROUP_CIANWOOD_CITY, MAP_CIANWOOD_CITY, $1
clearevent EVENT_SAW_SUICUNE_AT_CIANWOOD_CITY
diff --git a/maps/CeladonDeptStore6F.asm b/maps/CeladonDeptStore6F.asm
index a498ab1e1..b7e4a0b59 100644
--- a/maps/CeladonDeptStore6F.asm
+++ b/maps/CeladonDeptStore6F.asm
@@ -27,7 +27,7 @@ MapCeladonDeptStore6FSignpost5Script: ; 0x71180
loadfont
writetext UnknownText_0x71250
UnknownScript_0x71184: ; 0x71184
- special $0051
+ special Function24ae8
loadmenudata MenuDataHeader_0x71203
interpretmenu2
writebackup
diff --git a/maps/CeladonGameCorner.asm b/maps/CeladonGameCorner.asm
index a490e2c2a..119543cb5 100644
--- a/maps/CeladonGameCorner.asm
+++ b/maps/CeladonGameCorner.asm
@@ -119,7 +119,7 @@ MapCeladonGameCornerSignpost35Script: ; 0x721a1
if_equal $0, MapCeladonGameCornerSignpost16Script
refreshscreen $0
writebyte $0
- special $002a
+ special Functionc373
loadmovesprites
end
; 0x721b0
@@ -127,14 +127,14 @@ MapCeladonGameCornerSignpost35Script: ; 0x721a1
MapCeladonGameCornerSignpost16Script: ; 0x721b0
refreshscreen $0
writebyte $1
- special $002a
+ special Functionc373
loadmovesprites
end
; 0x721b9
MapCeladonGameCornerSignpost11Script: ; 0x721b9
refreshscreen $0
- special $002b
+ special Functionc380
loadmovesprites
end
; 0x721c0
@@ -147,7 +147,7 @@ MapCeladonGameCornerSignpost9Script: ; 0x721c3
loadfont
writetext UnknownText_0x72567
closetext
- special $002b
+ special Functionc380
loadmovesprites
end
; 0x721cd
diff --git a/maps/CeladonGameCornerPrizeRoom.asm b/maps/CeladonGameCornerPrizeRoom.asm
index 2eaa2d81a..87af10d63 100644
--- a/maps/CeladonGameCornerPrizeRoom.asm
+++ b/maps/CeladonGameCornerPrizeRoom.asm
@@ -23,7 +23,7 @@ MapCeladonGameCornerPrizeRoomSignpost0Script: ; 0x726ef
iffalse UnknownScript_0x7278a
writetext UnknownText_0x72974
UnknownScript_0x726fd: ; 0x726fd
- special $004f
+ special Function24b25
loadmenudata MenuDataHeader_0x72790
interpretmenu2
writebackup
@@ -139,7 +139,7 @@ MapCeladonGameCornerPrizeRoomSignpost1Script: ; 0x727c8
iffalse UnknownScript_0x7278a
UnknownScript_0x727d3: ; 0x727d3
writetext UnknownText_0x72974
- special $004f
+ special Function24b25
loadmenudata MenuDataHeader_0x72877
interpretmenu2
writebackup
@@ -162,7 +162,7 @@ UnknownScript_0x727ed: ; 0x727ed
writetext UnknownText_0x729ad
closetext
writebyte PIKACHU
- special $0039
+ special Functionc230
givepoke PIKACHU, 25, 0, 0
takecoins 2222
jump UnknownScript_0x727d3
@@ -181,7 +181,7 @@ UnknownScript_0x7281b: ; 0x7281b
writetext UnknownText_0x729ad
closetext
writebyte PORYGON
- special $0039
+ special Functionc230
givepoke PORYGON, 15, 0, 0
takecoins 5555
jump UnknownScript_0x727d3
@@ -200,7 +200,7 @@ UnknownScript_0x72849: ; 0x72849
writetext UnknownText_0x729ad
closetext
writebyte LARVITAR
- special $0039
+ special Functionc230
givepoke LARVITAR, 40, 0, 0
takecoins 8888
jump UnknownScript_0x727d3
diff --git a/maps/CeladonMansion3F.asm b/maps/CeladonMansion3F.asm
index 763e2bd3b..6051e4a49 100644
--- a/maps/CeladonMansion3F.asm
+++ b/maps/CeladonMansion3F.asm
@@ -24,7 +24,7 @@ UnknownScript_0x7167e: ; 0x7167e
waitbutton
writetext UnknownText_0x71760
keeptextopen
- special $006b
+ special Functionc49f
writetext UnknownText_0x71763
closetext
loadmovesprites
@@ -47,7 +47,7 @@ UnknownScript_0x716a4: ; 0x716a4
writetext UnknownText_0x717d8
yesorno
iffalse UnknownScript_0x716b0
- special $006c
+ special Functionc4ac
loadmovesprites
end
; 0x716b0
diff --git a/maps/CeladonPokeCenter1F.asm b/maps/CeladonPokeCenter1F.asm
index 82810b6f5..be868698b 100644
--- a/maps/CeladonPokeCenter1F.asm
+++ b/maps/CeladonPokeCenter1F.asm
@@ -28,9 +28,9 @@ SuperNerdScript_0x71e2e: ; 0x71e2e
writetext UnknownText_0x71f22
keeptextopen
writebyte SUICUNE
- special $0097
+ special SpecialMonCheck
iffalse UnknownScript_0x71e46
- special $0096
+ special SpecialBeastsCheck
iftrue UnknownScript_0x71e48
writetext UnknownText_0x7201a
closetext
diff --git a/maps/CeruleanGym.asm b/maps/CeruleanGym.asm
index 41729d9cc..c208c8094 100644
--- a/maps/CeruleanGym.asm
+++ b/maps/CeruleanGym.asm
@@ -49,7 +49,7 @@ UnknownScript_0x1883de: ; 0x1883de
domaptrigger GROUP_ROUTE_25, MAP_ROUTE_25, $1
domaptrigger GROUP_POWER_PLANT, MAP_POWER_PLANT, $0
waitbutton
- special $003d
+ special RestartMapMusic
pause 15
spriteface $0, $0
pause 15
diff --git a/maps/CeruleanPokeCenter1F.asm b/maps/CeruleanPokeCenter1F.asm
index ed88f27f8..16a4f36f4 100644
--- a/maps/CeruleanPokeCenter1F.asm
+++ b/maps/CeruleanPokeCenter1F.asm
@@ -11,7 +11,7 @@ NurseScript_0x18820f: ; 0x18820f
; 0x188212
SuperNerdScript_0x188212: ; 0x188212
- special $00a0
+ special Function10630f
iftrue UnknownScript_0x18821b
jumptextfaceplayer UnknownText_0x188221
; 0x18821b
diff --git a/maps/CherrygroveCity.asm b/maps/CherrygroveCity.asm
index 7c35745a4..2575965f8 100644
--- a/maps/CherrygroveCity.asm
+++ b/maps/CherrygroveCity.asm
@@ -82,7 +82,7 @@ UnknownScript_0x19c01f: ; 0x19c01f
closetext
loadmovesprites
stopfollow
- special $003d
+ special RestartMapMusic
spriteface $0, $1
applymovement $2, MovementData_0x19c1cb
playsound SFX_ENTER_DOOR
@@ -113,7 +113,7 @@ UnknownScript_0x19c0aa: ; 0x19c0aa
UnknownScript_0x19c0ae: ; 0x19c0ae
spriteface $0, $3
showemote $0, $0, 15
- special $006a
+ special Functionc48f
pause 15
appear $3
applymovement $3, MovementData_0x19c1ce
@@ -184,7 +184,7 @@ UnknownScript_0x19c12f: ; 0x19c12f
applymovement $3, MovementData_0x19c1da
disappear $3
dotrigger $0
- special $001b
+ special Functionc658
playmapmusic
end
; 0x19c146
diff --git a/maps/CianwoodCity.asm b/maps/CianwoodCity.asm
index 9565e7f0f..855557b5a 100644
--- a/maps/CianwoodCity.asm
+++ b/maps/CianwoodCity.asm
@@ -71,7 +71,7 @@ UnknownScript_0x1a001e: ; 0x1a001e
applymovement $c, MovementData_0x1a00ec
disappear $c
pause 20
- special $006a
+ special Functionc48f
playmapmusic
pause 10
UnknownScript_0x1a0083: ; 0x1a0083
diff --git a/maps/CianwoodCityPhotoStudio.asm b/maps/CianwoodCityPhotoStudio.asm
index da3457fc0..6ad10d62f 100644
--- a/maps/CianwoodCityPhotoStudio.asm
+++ b/maps/CianwoodCityPhotoStudio.asm
@@ -14,7 +14,7 @@ FishingGuruScript_0x9e0e0: ; 0x9e0e0
iffalse UnknownScript_0x9e0f3
writetext UnknownText_0x9e142
closetext
- special $0068
+ special Function16dc7
closetext
loadmovesprites
end
diff --git a/maps/Colosseum.asm b/maps/Colosseum.asm
index 71e3c803d..23ce0ae36 100644
--- a/maps/Colosseum.asm
+++ b/maps/Colosseum.asm
@@ -31,7 +31,7 @@ UnknownScript_0x193476: ; 0x193476
; 0x193477
UnknownScript_0x193477: ; 0x193477
- special $0010
+ special Function29f47
iffalse UnknownScript_0x193482
disappear $3
appear $2
@@ -56,7 +56,7 @@ UnknownScript_0x19348c: ; 0x19348c
; 0x193493
MapColosseumSignpost1Script: ; 0x193493
- special $000e
+ special Function29ed9
newloadmap $f8
end
; 0x193499
diff --git a/maps/CopycatsHouse2F.asm b/maps/CopycatsHouse2F.asm
index 1573f51db..e102c651e 100644
--- a/maps/CopycatsHouse2F.asm
+++ b/maps/CopycatsHouse2F.asm
@@ -46,7 +46,7 @@ UnknownScript_0x18aed4: ; 0x18aed4
faceplayer
variablesprite $b, $60
UnknownScript_0x18aedc: ; 0x18aedc
- special $005e
+ special Function14209
checkevent EVENT_RETURNED_MACHINE_PART
iftrue UnknownScript_0x18af16
loadfont
@@ -72,7 +72,7 @@ UnknownScript_0x18af04: ; 0x18af04
UnknownScript_0x18af08: ; 0x18af08
faceplayer
variablesprite $b, $28
- special $005e
+ special Function14209
loadfont
writetext UnknownText_0x18b028
closetext
@@ -104,7 +104,7 @@ UnknownScript_0x18af35: ; 0x18af35
UnknownScript_0x18af39: ; 0x18af39
faceplayer
variablesprite $b, $28
- special $005e
+ special Function14209
loadfont
writetext UnknownText_0x18b116
closetext
@@ -151,7 +151,7 @@ UnknownScript_0x18af80: ; 0x18af80
faceplayer
variablesprite $b, $60
UnknownScript_0x18af88: ; 0x18af88
- special $005e
+ special Function14209
loadfont
checkflag $0063
iftrue UnknownScript_0x18af98
@@ -175,7 +175,7 @@ UnknownScript_0x18afaa: ; 0x18afaa
UnknownScript_0x18afae: ; 0x18afae
faceplayer
variablesprite $b, $28
- special $005e
+ special Function14209
loadfont
writetext UnknownText_0x18b2f5
closetext
diff --git a/maps/DayCare.asm b/maps/DayCare.asm
index 104308d39..eda851c11 100644
--- a/maps/DayCare.asm
+++ b/maps/DayCare.asm
@@ -34,7 +34,7 @@ GrampsScript_0x62f8f: ; 0x62f8f
loadmovesprites
checkcode $1
if_equal $6, UnknownScript_0x62fb6
- special $007d
+ special Function117656
loadfont
writetext UnknownText_0x631ae
playsound SFX_KEY_ITEM
@@ -55,7 +55,7 @@ UnknownScript_0x62fb6: ; 0x62fb6
; 0x62fbd
UnknownScript_0x62fbd: ; 0x62fbd
- special $001e
+ special Function166d6
closetext
loadmovesprites
end
@@ -66,7 +66,7 @@ GrannyScript_0x62fc3: ; 0x62fc3
loadfont
checkflag $0005
iftrue UnknownScript_0x62fd1
- special $001f
+ special Function1672a
closetext
loadmovesprites
end
diff --git a/maps/DragonShrine.asm b/maps/DragonShrine.asm
index 3c6e93777..db020759b 100644
--- a/maps/DragonShrine.asm
+++ b/maps/DragonShrine.asm
@@ -134,7 +134,7 @@ UnknownScript_0x18d100: ; 0x18d100
writetext UnknownText_0x18d916
closetext
loadmovesprites
- special $006a
+ special Functionc48f
applymovement $5, MovementData_0x18d2da
loadfont
writetext UnknownText_0x18d974
@@ -163,7 +163,7 @@ UnknownScript_0x18d100: ; 0x18d100
setflag $0022
playsound SFX_GET_BADGE
waitbutton
- special $003d
+ special RestartMapMusic
specialphonecall $8
dotrigger $1
domaptrigger GROUP_DRAGONS_DEN_B1F, MAP_DRAGONS_DEN_B1F, $1
@@ -219,7 +219,7 @@ UnknownScript_0x18d1c5: ; 0x18d1c5
waitbutton
givepoke DRATINI, 15, 0, 0
checkevent $00c1
- special $0094
+ special SpecialDratini
setevent $00bd
setevent $0006
writetext UnknownText_0x18d6ca
diff --git a/maps/DragonsDenB1F.asm b/maps/DragonsDenB1F.asm
index b2d750813..520e406d8 100644
--- a/maps/DragonsDenB1F.asm
+++ b/maps/DragonsDenB1F.asm
@@ -77,9 +77,9 @@ UnknownScript_0x18c8f4: ; 0x18c8f4
loadmovesprites
UnknownScript_0x18c8f9: ; 0x18c8f9
applymovement $3, MovementData_0x18c9b3
- special $006a
+ special Functionc48f
pause 30
- special $003d
+ special RestartMapMusic
disappear $3
dotrigger $0
end
@@ -236,7 +236,7 @@ SilverScript_0x18c97e: ; 0x18c97e
closetext
loadmovesprites
setevent $0000
- special $003d
+ special RestartMapMusic
end
; 0x18c995
@@ -244,7 +244,7 @@ UnknownScript_0x18c995: ; 0x18c995
writetext UnknownText_0x18cd2d
closetext
loadmovesprites
- special $003d
+ special RestartMapMusic
end
; 0x18c99e
diff --git a/maps/EcruteakGym.asm b/maps/EcruteakGym.asm
index 5d0e69fd5..fe33080fa 100644
--- a/maps/EcruteakGym.asm
+++ b/maps/EcruteakGym.asm
@@ -92,7 +92,7 @@ UnknownScript_0x99dc6: ; 0x99dc6
follow $0, $8
applymovement $0, MovementData_0x99e5f
stopfollow
- special $002e
+ special Function8c084
playsound SFX_ENTER_DOOR
waitbutton
warp GROUP_ECRUTEAK_CITY, MAP_ECRUTEAK_CITY, $6, $1b
diff --git a/maps/EcruteakPokeCenter1F.asm b/maps/EcruteakPokeCenter1F.asm
index 633c01723..dcce7b399 100644
--- a/maps/EcruteakPokeCenter1F.asm
+++ b/maps/EcruteakPokeCenter1F.asm
@@ -62,7 +62,7 @@ NurseScript_0x98eb0: ; 0x98eb0
; 0x98eb3
PokefanMScript_0x98eb3: ; 0x98eb3
- special $00a0
+ special Function10630f
iftrue UnknownScript_0x98ebc
jumptextfaceplayer UnknownText_0x99155
; 0x98ebc
diff --git a/maps/ElmsLab.asm b/maps/ElmsLab.asm
index d9c06ff46..502fb1ab1 100644
--- a/maps/ElmsLab.asm
+++ b/maps/ElmsLab.asm
@@ -115,10 +115,10 @@ UnknownScript_0x78bfa: ; 0x78bfa
checkevent EVENT_TOLD_ELM_ABOUT_TOGEPI_OVER_THE_PHONE
iffalse UnknownScript_0x78c35
writebyte TOGEPI
- special $0043
+ special Functionc284
iftrue ShowElmTogepiScript
writebyte TOGETIC
- special $0043
+ special Functionc284
iftrue ShowElmTogepiScript
writetext UnknownText_0x79a40
closetext
@@ -128,10 +128,10 @@ UnknownScript_0x78bfa: ; 0x78bfa
UnknownScript_0x78c22: ; 0x78c22
writebyte TOGEPI
- special $0043
+ special Functionc284
iftrue ShowElmTogepiScript
writebyte TOGETIC
- special $0043
+ special Functionc284
iftrue ShowElmTogepiScript
jump UnknownScript_0x78c41
; 0x78c35
@@ -328,13 +328,13 @@ UnknownScript_0x78d81: ; 0x78d81
; 0x78d8a
UnknownScript_0x78d8a: ; 0x78d8a
- special $009d
- special $001b
+ special Function1060a2
+ special Functionc658
playmusic MUSIC_NONE
writebyte $1
- special $003e
+ special Function12324
pause 30
- special $003d
+ special RestartMapMusic
loadmovesprites
end
; 0x78d9f
@@ -604,7 +604,7 @@ CopScript: ; 0x78f1a
loadfont
writetext UnknownText_0x7a0f0
keeptextopen
- special $0024
+ special SpecialNameRival
writetext UnknownText_0x7a1c0
closetext
loadmovesprites
diff --git a/maps/FastShip1F.asm b/maps/FastShip1F.asm
index 7d0896ddb..e0090fbc6 100644
--- a/maps/FastShip1F.asm
+++ b/maps/FastShip1F.asm
@@ -72,7 +72,7 @@ UnknownScript_0x7517a: ; 0x7517a
loadmovesprites
scall UnknownScript_0x751b8
playsound SFX_EXIT_BUILDING
- special $002e
+ special Function8c084
waitbutton
setevent $072b
domaptrigger GROUP_VERMILION_PORT, MAP_VERMILION_PORT, $1
@@ -86,7 +86,7 @@ UnknownScript_0x7519c: ; 0x7519c
loadmovesprites
scall UnknownScript_0x751b8
playsound SFX_EXIT_BUILDING
- special $002e
+ special Function8c084
waitbutton
setevent $072a
domaptrigger GROUP_OLIVINE_PORT, MAP_OLIVINE_PORT, $1
diff --git a/maps/FastShipCabins.asm b/maps/FastShipCabins.asm
index d6a24950f..6ba34a780 100644
--- a/maps/FastShipCabins.asm
+++ b/maps/FastShipCabins.asm
@@ -39,15 +39,15 @@ TwinScript_0x75ebb: ; 0x75ebb
writetext UnknownText_0x7621f
closetext
loadmovesprites
- special $0030
- special $0033
+ special Function8c0b6
+ special Functiond91
disappear $5
applymovement $0, MovementData_0x76004
moveperson $4, $3, $13
appear $4
spriteface $0, $1
spriteface $4, $1
- special $0032
+ special Function8c0ab
spriteface $3, $0
showemote $0, $3, 15
applymovement $4, MovementData_0x7600c
diff --git a/maps/FastShipCabins_NNW_NNE_NE.asm b/maps/FastShipCabins_NNW_NNE_NE.asm
index 57f4b84e7..cc8879cc5 100644
--- a/maps/FastShipCabins_NNW_NNE_NE.asm
+++ b/maps/FastShipCabins_NNW_NNE_NE.asm
@@ -191,7 +191,7 @@ SailorScript_0x755f1: ; 0x755f1
loadtrainer SAILOR, STANLY
startbattle
reloadmap
- special $001b
+ special Functionc658
setevent $057d
loadfont
writetext UnknownText_0x758b1
diff --git a/maps/FastShipCabins_SE_SSE_CaptainsCabin.asm b/maps/FastShipCabins_SE_SSE_CaptainsCabin.asm
index d6a24950f..6ba34a780 100644
--- a/maps/FastShipCabins_SE_SSE_CaptainsCabin.asm
+++ b/maps/FastShipCabins_SE_SSE_CaptainsCabin.asm
@@ -39,15 +39,15 @@ TwinScript_0x75ebb: ; 0x75ebb
writetext UnknownText_0x7621f
closetext
loadmovesprites
- special $0030
- special $0033
+ special Function8c0b6
+ special Functiond91
disappear $5
applymovement $0, MovementData_0x76004
moveperson $4, $3, $13
appear $4
spriteface $0, $1
spriteface $4, $1
- special $0032
+ special Function8c0ab
spriteface $3, $0
showemote $0, $3, 15
applymovement $4, MovementData_0x7600c
diff --git a/maps/FastShipCabins_SW_SSW_NW.asm b/maps/FastShipCabins_SW_SSW_NW.asm
index 1a62f21b5..8af2b9827 100644
--- a/maps/FastShipCabins_SW_SSW_NW.asm
+++ b/maps/FastShipCabins_SW_SSW_NW.asm
@@ -115,7 +115,7 @@ TrainerGuitaristClyde: ; 0x75a8b
GuitaristClydeScript: ; 0x75a97
talkaftercancel
- special $00a0
+ special Function10630f
iftrue UnknownScript_0x75aa5
loadfont
writetext UnknownText_0x75d65
@@ -137,14 +137,14 @@ MapFastShipCabins_SW_SSW_NWSignpost1Script: ; 0x75aac
writetext UnknownText_0x75da4
closetext
loadmovesprites
- special $0030
- special $0033
- special $009d
- special $001b
+ special Function8c0b6
+ special Functiond91
+ special Function1060a2
+ special Functionc658
playmusic MUSIC_HEAL
pause 60
- special $003d
- special $0032
+ special RestartMapMusic
+ special Function8c0ab
loadfont
writetext UnknownText_0x75dc1
closetext
diff --git a/maps/FuchsiaGym.asm b/maps/FuchsiaGym.asm
index 4f2ee927d..6899bc821 100644
--- a/maps/FuchsiaGym.asm
+++ b/maps/FuchsiaGym.asm
@@ -28,7 +28,7 @@ JanineScript_0x195db9: ; 0x195db9
variablesprite $8, $28
variablesprite $9, $28
variablesprite $a, $27
- special $005e
+ special Function14209
loadfont
writetext UnknownText_0x195feb
playsound SFX_GET_BADGE
@@ -61,7 +61,7 @@ FuschiaGym1Script_0x195e1b: ; 0x195e1b
applymovement $3, MovementData_0x195f27
faceplayer
variablesprite $7, $28
- special $005e
+ special Function14209
UnknownScript_0x195e2c: ; 0x195e2c
faceplayer
loadfont
@@ -98,7 +98,7 @@ FuschiaGym2Script_0x195e55: ; 0x195e55
applymovement $4, MovementData_0x195f27
faceplayer
variablesprite $8, $28
- special $005e
+ special Function14209
UnknownScript_0x195e66: ; 0x195e66
faceplayer
loadfont
@@ -135,7 +135,7 @@ FuschiaGym3Script_0x195e8f: ; 0x195e8f
applymovement $5, MovementData_0x195f27
faceplayer
variablesprite $9, $28
- special $005e
+ special Function14209
UnknownScript_0x195ea0: ; 0x195ea0
faceplayer
loadfont
@@ -172,7 +172,7 @@ FuschiaGym4Script_0x195ec9: ; 0x195ec9
applymovement $6, MovementData_0x195f27
faceplayer
variablesprite $a, $27
- special $005e
+ special Function14209
UnknownScript_0x195eda: ; 0x195eda
faceplayer
loadfont
diff --git a/maps/FuchsiaPokeCenter1F.asm b/maps/FuchsiaPokeCenter1F.asm
index 37afaaaca..49ee101da 100644
--- a/maps/FuchsiaPokeCenter1F.asm
+++ b/maps/FuchsiaPokeCenter1F.asm
@@ -34,7 +34,7 @@ JanineImpersonatorScript_0x196462: ; 0x196462
applymovement $5, MovementData_0x196486
faceplayer
variablesprite $c, $a
- special $005e
+ special Function14209
loadfont
writetext UnknownText_0x19654e
closetext
@@ -42,7 +42,7 @@ JanineImpersonatorScript_0x196462: ; 0x196462
applymovement $5, MovementData_0x196486
faceplayer
variablesprite $c, $28
- special $005e
+ special Function14209
end
; 0x196486
diff --git a/maps/GoldenrodCity.asm b/maps/GoldenrodCity.asm
index 58852960c..8927ecc67 100644
--- a/maps/GoldenrodCity.asm
+++ b/maps/GoldenrodCity.asm
@@ -49,7 +49,7 @@ PokefanMScript_0x198909: ; 0x198909
writetext UnknownText_0x199042
yesorno
iffalse UnknownScript_0x19899a
- special $004f
+ special Function24b25
writetext UnknownText_0x199090
yesorno
iffalse UnknownScript_0x1989a0
@@ -68,7 +68,7 @@ PokefanMScript_0x198909: ; 0x198909
UnknownScript_0x19893a: ; 0x19893a
writebyte $1
writetext UnknownText_0x1991cf
- special $0083
+ special Function4925b
if_equal $0, UnknownScript_0x1989a6
jump UnknownScript_0x1989d7
; 0x198949
@@ -76,7 +76,7 @@ UnknownScript_0x19893a: ; 0x19893a
UnknownScript_0x198949: ; 0x198949
writebyte $2
writetext UnknownText_0x1991cf
- special $0083
+ special Function4925b
if_equal $0, UnknownScript_0x1989a6
jump UnknownScript_0x1989d7
; 0x198958
@@ -84,7 +84,7 @@ UnknownScript_0x198949: ; 0x198949
UnknownScript_0x198958: ; 0x198958
writebyte $3
writetext UnknownText_0x1991cf
- special $0083
+ special Function4925b
if_equal $0, UnknownScript_0x1989a6
jump UnknownScript_0x1989d7
; 0x198967
@@ -128,7 +128,7 @@ UnknownScript_0x1989a6: ; 0x1989a6
takecoins 4000
waitbutton
playsound SFX_TRANSACTION
- special $004f
+ special Function24b25
writetext UnknownText_0x19918b
closetext
loadmovesprites
diff --git a/maps/GoldenrodDeptStore5F.asm b/maps/GoldenrodDeptStore5F.asm
index b17a4d0d4..417638a38 100644
--- a/maps/GoldenrodDeptStore5F.asm
+++ b/maps/GoldenrodDeptStore5F.asm
@@ -69,7 +69,7 @@ ReceptionistScript_0x560ce: ; 0x560ce
if_not_equal SUNDAY, UnknownScript_0x56112
checkflag $005b
iftrue UnknownScript_0x56112
- special $0059
+ special Function718d
writetext UnknownText_0x56143
keeptextopen
if_greater_than $95, UnknownScript_0x560ee
@@ -115,12 +115,12 @@ UnknownScript_0x56116: ; 0x56116
TwinScript_0x56118: ; 0x56118
faceplayer
loadfont
- special $0066
+ special SpecialGameboyCheck
if_not_equal $2, UnknownScript_0x5612a
writetext UnknownText_0x56241
closetext
loadmovesprites
- special $0013
+ special Function1050b9
end
; 0x5612a
diff --git a/maps/GoldenrodDeptStore6F.asm b/maps/GoldenrodDeptStore6F.asm
index c5b8fe6f3..9554a576a 100644
--- a/maps/GoldenrodDeptStore6F.asm
+++ b/maps/GoldenrodDeptStore6F.asm
@@ -10,7 +10,7 @@ MapGoldenrodDeptStore6FSignpost5Script: ; 0x563f5
loadfont
writetext UnknownText_0x564cb
UnknownScript_0x563f9: ; 0x563f9
- special $0051
+ special Function24ae8
loadmenudata MenuDataHeader_0x56478
interpretmenu2
writebackup
diff --git a/maps/GoldenrodGameCorner.asm b/maps/GoldenrodGameCorner.asm
index 8906568e2..5605f8fef 100644
--- a/maps/GoldenrodGameCorner.asm
+++ b/maps/GoldenrodGameCorner.asm
@@ -54,7 +54,7 @@ ReceptionistScript_0x56c28: ; 0x56c28
iffalse UnknownScript_0x56cc3
writetext UnknownText_0x56e8b
UnknownScript_0x56c36: ; 056c36
- special $004f
+ special Function24b25
loadmenudata MenuDataHeader_0x56cc9
interpretmenu2
writebackup
@@ -170,7 +170,7 @@ ReceptionistScript_0x56d01: ; 0x56d01
iffalse UnknownScript_0x56cc3
UnknownScript_0x56d0c: ; 0x56d0c
writetext UnknownText_0x56e8b
- special $004f
+ special Function24b25
loadmenudata MenuDataHeader_0x56db0
interpretmenu2
writebackup
@@ -193,7 +193,7 @@ UnknownScript_0x56d26: ; 0x56d26
writetext UnknownText_0x56ebd
closetext
writebyte ABRA
- special $0039
+ special Functionc230
givepoke ABRA, 5, 0, 0
takecoins 100
jump UnknownScript_0x56d0c
@@ -212,7 +212,7 @@ UnknownScript_0x56d54: ; 0x56d54
writetext UnknownText_0x56ebd
closetext
writebyte CUBONE
- special $0039
+ special Functionc230
givepoke CUBONE, 15, 0, 0
takecoins 800
jump UnknownScript_0x56d0c
@@ -231,7 +231,7 @@ UnknownScript_0x56d82: ; 0x56d82
writetext UnknownText_0x56ebd
closetext
writebyte WOBBUFFET
- special $0039
+ special Functionc230
givepoke WOBBUFFET, 15, 0, 0
takecoins 1500
jump UnknownScript_0x56d0c
@@ -323,7 +323,7 @@ MapGoldenrodGameCornerSignpost17Script: ; 0x56e31
if_equal $0, MapGoldenrodGameCornerSignpost7Script
refreshscreen $0
writebyte $0
- special $002a
+ special Functionc373
loadmovesprites
end
; 0x56e40
@@ -331,14 +331,14 @@ MapGoldenrodGameCornerSignpost17Script: ; 0x56e31
MapGoldenrodGameCornerSignpost7Script: ; 0x56e40
refreshscreen $0
writebyte $1
- special $002a
+ special Functionc373
loadmovesprites
end
; 0x56e49
MapGoldenrodGameCornerSignpost29Script: ; 0x56e49
refreshscreen $0
- special $002b
+ special Functionc380
loadmovesprites
end
; 0x56e50
diff --git a/maps/GoldenrodHappinessRater.asm b/maps/GoldenrodHappinessRater.asm
index f4f856c46..a714c7e54 100644
--- a/maps/GoldenrodHappinessRater.asm
+++ b/maps/GoldenrodHappinessRater.asm
@@ -9,7 +9,7 @@ GoldenrodHappinessRater_MapScriptHeader: ; 0x54951
TeacherScript_0x54953: ; 0x54953
faceplayer
loadfont
- special $0059
+ special Function718d
writetext UnknownText_0x549a3
keeptextopen
if_greater_than $f9, UnknownScript_0x54973
diff --git a/maps/GoldenrodMagnetTrainStation.asm b/maps/GoldenrodMagnetTrainStation.asm
index a3f77c7e5..b26bb421d 100644
--- a/maps/GoldenrodMagnetTrainStation.asm
+++ b/maps/GoldenrodMagnetTrainStation.asm
@@ -36,7 +36,7 @@ UnknownScript_0x550fa: ; 0x550fa
applymovement $2, MovementData_0x55146
applymovement $0, MovementData_0x5514f
writebyte $0
- special $0023
+ special Function8cc04
warpcheck
newloadmap $f9
applymovement $0, MovementData_0x55122
diff --git a/maps/GoldenrodNameRatersHouse.asm b/maps/GoldenrodNameRatersHouse.asm
index 821c2eddb..760e88084 100644
--- a/maps/GoldenrodNameRatersHouse.asm
+++ b/maps/GoldenrodNameRatersHouse.asm
@@ -9,7 +9,7 @@ GoldenrodNameRatersHouse_MapScriptHeader: ; 0x5577a
GentlemanScript_0x5577c: ; 0x5577c
faceplayer
loadfont
- special $0057
+ special SpecialNameRater
closetext
loadmovesprites
end
diff --git a/maps/GoldenrodPokeCenter1F.asm b/maps/GoldenrodPokeCenter1F.asm
index 44c7f78ec..45e977bdb 100644
--- a/maps/GoldenrodPokeCenter1F.asm
+++ b/maps/GoldenrodPokeCenter1F.asm
@@ -12,7 +12,7 @@ NurseScript_0x60f91: ; 0x60f91
UnknownScript_0x60f94: ; 0x60f94
writebyte $b
- special $0086
+ special Function170687
if_equal $b, UnknownScript_0x60f9e
end
; 0x60f9e
@@ -37,7 +37,7 @@ UnknownScript_0x60f9e: ; 0x60f9e
closetext
loadmovesprites
applymovement $3, MovementData_0x61060
- special $003d
+ special RestartMapMusic
disappear $3
playsound SFX_EXIT_BUILDING
UnknownScript_0x60fd8: ; 0x60fd8
@@ -46,7 +46,7 @@ UnknownScript_0x60fd8: ; 0x60fd8
UnknownScript_0x60fd9: ; 0x60fd9
writebyte $b
- special $0086
+ special Function170687
if_equal $b, UnknownScript_0x60fe3
end
; 0x60fe3
@@ -71,7 +71,7 @@ UnknownScript_0x60fe3: ; 0x60fe3
closetext
loadmovesprites
applymovement $3, MovementData_0x6106c
- special $003d
+ special RestartMapMusic
disappear $3
playsound SFX_EXIT_BUILDING
UnknownScript_0x6101d: ; 0x6101d
diff --git a/maps/HallOfFame.asm b/maps/HallOfFame.asm
index 7c218bc72..a44a63546 100644
--- a/maps/HallOfFame.asm
+++ b/maps/HallOfFame.asm
@@ -33,7 +33,7 @@ UnknownScript_0x181454: ; 0x181454
dotrigger $1
pause 15
writebyte $2
- special $003e
+ special Function12324
setevent $0044
setevent $077c
setevent $06c4
@@ -41,7 +41,7 @@ UnknownScript_0x181454: ; 0x181454
setevent $0737
clearevent $0738
domaptrigger GROUP_SPROUT_TOWER_3F, MAP_SPROUT_TOWER_3F, $1
- special $001b
+ special Functionc658
checkevent EVENT_GOT_SS_TICKET_FROM_ELM
iftrue UnknownScript_0x181497
specialphonecall $5
diff --git a/maps/IlexForest.asm b/maps/IlexForest.asm
index e91e49c52..d016b73e9 100644
--- a/maps/IlexForest.asm
+++ b/maps/IlexForest.asm
@@ -523,18 +523,18 @@ UnknownScript_0x6ee42: ; 0x6ee42
loadmovesprites
pause 20
showemote $0, $0, 20
- special $006a
+ special Functionc48f
applymovement $0, MovementData_0x6ef58
pause 30
spriteface $0, $0
pause 20
clearflag $0064
- special $008f
+ special Function4989a
loadpokedata CELEBI, 30
startbattle
returnafterbattle
pause 20
- special $0090
+ special Function49bf9
iffalse UnknownScript_0x6ee8e
appear $7
applymovement $7, MovementData_0x6ef4e
diff --git a/maps/IndigoPlateauPokeCenter1F.asm b/maps/IndigoPlateauPokeCenter1F.asm
index 8a0450247..656ca2d20 100644
--- a/maps/IndigoPlateauPokeCenter1F.asm
+++ b/maps/IndigoPlateauPokeCenter1F.asm
@@ -58,7 +58,7 @@ UnknownScript_0x180053: ; 0x180053
appear $5
spriteface $0, $0
showemote $0, $0, 15
- special $006a
+ special Functionc48f
pause 15
applymovement $5, MovementData_0x180164
playmusic MUSIC_RIVAL_ENCOUNTER
@@ -80,7 +80,7 @@ UnknownScript_0x180094: ; 0x180094
appear $5
spriteface $0, $0
showemote $0, $0, 15
- special $006a
+ special Functionc48f
pause 15
applymovement $5, MovementData_0x18016b
playmusic MUSIC_RIVAL_ENCOUNTER
@@ -165,7 +165,7 @@ GrampsScript_0x180139: ; 0x180139
closetext
loadmovesprites
playsound SFX_WARP_TO
- special $002e
+ special Function8c084
waitbutton
warp GROUP_NEW_BARK_TOWN, MAP_NEW_BARK_TOWN, $d, $6
end
diff --git a/maps/KrissHouse1F.asm b/maps/KrissHouse1F.asm
index a03649e76..eb57eebb7 100644
--- a/maps/KrissHouse1F.asm
+++ b/maps/KrissHouse1F.asm
@@ -48,19 +48,19 @@ UnknownScript_0x7a4f6: ; 0x7a4f6
clearevent $06c8
writetext UnknownText_0x7a6bd
keeptextopen
- special $0025
+ special Function90913
UnknownScript_0x7a519: ; 0x7a519
writetext UnknownText_0x7a742
yesorno
iffalse UnknownScript_0x7a52a
- special $00a6
+ special Function90a54
yesorno
iffalse UnknownScript_0x7a519
jump UnknownScript_0x7a531
; 0x7a52a
UnknownScript_0x7a52a: ; 0x7a52a
- special $00a7
+ special Function90a88
yesorno
iffalse UnknownScript_0x7a519
UnknownScript_0x7a531: ; 0x7a531
@@ -104,7 +104,7 @@ UnknownScript_0x7a564: ; 0x7a564
; 0x7a56b
UnknownScript_0x7a56b: ; 0x7a56b
- special $003d
+ special RestartMapMusic
spriteface $2, $2
end
; 0x7a572
@@ -161,7 +161,7 @@ UnknownScript_0x7a5b5: ; 0x7a5b5
setevent $0076
UnknownScript_0x7a5b8: ; 0x7a5b8
setevent EVENT_TALKED_TO_MOM_AFTER_MYSTERY_EGG_QUEST
- special $0022
+ special Function16218
closetext
loadmovesprites
end
diff --git a/maps/KrissHouse2F.asm b/maps/KrissHouse2F.asm
index 42e064dbe..e50fbd7be 100644
--- a/maps/KrissHouse2F.asm
+++ b/maps/KrissHouse2F.asm
@@ -17,7 +17,7 @@ UnknownScript_0x7abb3: ; 0x7abb3
; 0x7abb4
UnknownScript_0x7abb4: ; 0x7abb4
- special $004a
+ special Function27043
setevent $0007
checkevent $0036
iftrue UnknownScript_0x7abc4
@@ -30,7 +30,7 @@ UnknownScript_0x7abc4: ; 0x7abc4
; 0x7abc5
UnknownScript_0x7abc5: ; 0x7abc5
- special $0049
+ special Function26feb
return
; 0x7abc9
@@ -103,7 +103,7 @@ MapKrissHouse2FSignpost3Script: ; 0x7ac12
MapKrissHouse2FSignpost0Script: ; 0x7ac15
loadfont
- special $001d
+ special Functionc2e7
iftrue UnknownScript_0x7ac1e
loadmovesprites
end
diff --git a/maps/KurtsHouse.asm b/maps/KurtsHouse.asm
index f22f89fec..c0002ea06 100644
--- a/maps/KurtsHouse.asm
+++ b/maps/KurtsHouse.asm
@@ -43,7 +43,7 @@ KurtScript_0x18e178: ; 0x18e178
writetext UnknownText_0x18e473
closetext
loadmovesprites
- special $006a
+ special Functionc48f
setevent $06fa
checkcode $9
if_equal $1, UnknownScript_0x18e1ab
@@ -53,7 +53,7 @@ KurtScript_0x18e178: ; 0x18e178
playsound SFX_EXIT_BUILDING
disappear $2
waitbutton
- special $003d
+ special RestartMapMusic
end
; 0x18e1ab
@@ -64,7 +64,7 @@ UnknownScript_0x18e1ab: ; 0x18e1ab
playsound SFX_EXIT_BUILDING
disappear $2
waitbutton
- special $003d
+ special RestartMapMusic
end
; 0x18e1bf
@@ -134,7 +134,7 @@ UnknownScript_0x18e249: ; 0x18e249
writetext UnknownText_0x18e736
keeptextopen
setevent $0002
- special $0056
+ special Function88018
if_equal $0, UnknownScript_0x18e2a5
if_equal $59, UnknownScript_0x18e275
if_equal $5c, UnknownScript_0x18e27b
@@ -319,7 +319,7 @@ UnknownScript_0x18e378: ; 0x18e378
setevent $00c0
clearevent EVENT_CAN_GIVE_GS_BALL_TO_KURT
clearevent $00bf
- special $006a
+ special Functionc48f
pause 20
showemote $0, $2, 30
checkcode $9
@@ -339,7 +339,7 @@ UnknownScript_0x18e3ac: ; 0x18e3ac
disappear $2
clearevent $07a4
waitbutton
- special $003d
+ special RestartMapMusic
domaptrigger GROUP_AZALEA_TOWN, MAP_AZALEA_TOWN, $2
end
; 0x18e3bd
diff --git a/maps/LakeofRage.asm b/maps/LakeofRage.asm
index 5237c25d5..0fcec1fb2 100644
--- a/maps/LakeofRage.asm
+++ b/maps/LakeofRage.asm
@@ -146,7 +146,7 @@ MapLakeofRageSignpost1Script: ; 0x700ab
UnknownScript_0x700b8: ; 0x700b8
keeptextopen
- special $001a
+ special Functionfbcd2
loadmovesprites
end
; 0x700be
diff --git a/maps/LakeofRageMagikarpHouse.asm b/maps/LakeofRageMagikarpHouse.asm
index a76abb35d..b688390bf 100644
--- a/maps/LakeofRageMagikarpHouse.asm
+++ b/maps/LakeofRageMagikarpHouse.asm
@@ -41,11 +41,11 @@ UnknownScript_0x19a6d7: ; 0x19a6d7
UnknownScript_0x19a6e0: ; 0x19a6e0
writebyte MAGIKARP
- special $0042
+ special Functionc276
iffalse UnknownScript_0x19a6d7
writetext UnknownText_0x19a93e
closetext
- special $0019
+ special Functionfbb32
if_equal $0, UnknownScript_0x19a71c
if_equal $1, UnknownScript_0x19a722
if_equal $2, UnknownScript_0x19a716
diff --git a/maps/LancesRoom.asm b/maps/LancesRoom.asm
index 5c6609da4..c315ad61c 100644
--- a/maps/LancesRoom.asm
+++ b/maps/LancesRoom.asm
@@ -49,13 +49,13 @@ UnknownScript_0x180e53: ; 0x180e53
; 0x180e6a
UnknownScript_0x180e6a: ; 0x180e6a
- special $006a
+ special Functionc48f
applymovement $0, MovementData_0x180f38
jump LanceScript_0x180e7b
; 0x180e74
UnknownScript_0x180e74: ; 0x180e74
- special $006a
+ special Functionc48f
applymovement $0, MovementData_0x180f3c
LanceScript_0x180e7b: ; 0x180e7b
spriteface $2, $2
@@ -131,7 +131,7 @@ LanceScript_0x180e7b: ; 0x180e7b
pause 30
loadmovesprites
applymovement $3, MovementData_0x180f5b
- special $002e
+ special Function8c084
pause 15
warpfacing $1, GROUP_HALL_OF_FAME, MAP_HALL_OF_FAME, $4, $d
end
diff --git a/maps/LavenderNameRater.asm b/maps/LavenderNameRater.asm
index 7ae8469cf..43c3464ba 100644
--- a/maps/LavenderNameRater.asm
+++ b/maps/LavenderNameRater.asm
@@ -16,7 +16,7 @@ UnknownScript_0x7eaf1: ; 0x7eaf1
GentlemanScript_0x7eaf2: ; 0x7eaf2
faceplayer
loadfont
- special $0057
+ special SpecialNameRater
closetext
loadmovesprites
end
diff --git a/maps/MahoganyTown.asm b/maps/MahoganyTown.asm
index d88bd4687..76a582636 100644
--- a/maps/MahoganyTown.asm
+++ b/maps/MahoganyTown.asm
@@ -59,7 +59,7 @@ UnknownScript_0x190039: ; 0x190039
UnknownScript_0x190040: ; 0x190040
loadfont
writetext UnknownText_0x1900b0
- special $0051
+ special Function24ae8
yesorno
iffalse UnknownScript_0x190072
checkmoney $0, 300
@@ -69,7 +69,7 @@ UnknownScript_0x190040: ; 0x190040
waitbutton
playsound SFX_TRANSACTION
takemoney $0, 300
- special $0051
+ special Function24ae8
writetext UnknownText_0x19014a
closetext
loadmovesprites
diff --git a/maps/ManiasHouse.asm b/maps/ManiasHouse.asm
index eda6bf7d3..854f0665e 100644
--- a/maps/ManiasHouse.asm
+++ b/maps/ManiasHouse.asm
@@ -16,7 +16,7 @@ RockerScript_0x9d278: ; 0x9d278
writetext UnknownText_0x9d303
yesorno
iffalse UnknownScript_0x9d2b6
- special SPECIAL_GIVESHUCKLE
+ special SpecialGiveShuckle
iffalse UnknownScript_0x9d2b0
writetext UnknownText_0x9d3ed
keeptextopen
@@ -56,7 +56,7 @@ UnknownScript_0x9d2bc: ; 0x9d2bc
writetext UnknownText_0x9d470
yesorno
iffalse UnknownScript_0x9d2ee
- special $004c
+ special SpecialReturnShuckle
if_equal $0, UnknownScript_0x9d2df
if_equal $1, UnknownScript_0x9d2ee
if_equal $3, UnknownScript_0x9d2e5
diff --git a/maps/MobileBattleRoom.asm b/maps/MobileBattleRoom.asm
index dfbdfa7ac..4d9485e37 100644
--- a/maps/MobileBattleRoom.asm
+++ b/maps/MobileBattleRoom.asm
@@ -27,9 +27,9 @@ UnknownScript_0x1935d3: ; 0x1935d3
MapMobileBattleRoomSignpost0Script: ; 0x1935da
refreshscreen $0
- special $009f
+ special Function1037c2
if_equal $1, UnknownScript_0x193619
- special $009b
+ special Function1037eb
iffalse UnknownScript_0x193624
if_equal $1, UnknownScript_0x1935f4
if_equal $2, UnknownScript_0x19360d
@@ -40,24 +40,24 @@ UnknownScript_0x1935f4: ; 0x1935f4
writetext UnknownText_0x193644
pause 20
loadmovesprites
- special $002e
+ special Function8c084
playmusic MUSIC_HEAL
- special $00a4
+ special Function1047eb
pause 60
- special $0031
- special $003d
+ special Function8c079
+ special RestartMapMusic
refreshscreen $0
UnknownScript_0x19360d: ; 0x19360d
- special $009d
- special $001b
- special $009c
+ special Function1060a2
+ special Functionc658
+ special Function10383c
iftrue UnknownScript_0x193624
UnknownScript_0x193619: ; 0x193619
- special $00a2
+ special Function10387b
writetext UnknownText_0x193626
closetext
reloadmappart
- special $0081
+ special Function101225
UnknownScript_0x193624: ; 0x193624
loadmovesprites
end
diff --git a/maps/MobileTradeRoomMobile.asm b/maps/MobileTradeRoomMobile.asm
index cc10fc19a..e32463b4a 100644
--- a/maps/MobileTradeRoomMobile.asm
+++ b/maps/MobileTradeRoomMobile.asm
@@ -27,11 +27,11 @@ UnknownScript_0x19357b: ; 0x19357b
MapMobileTradeRoomMobileSignpost0Script: ; 0x193582
refreshscreen $0
- special $009f
+ special Function1037c2
writetext UnknownText_0x193591
closetext
reloadmappart
- special $0082
+ special Function101231
loadmovesprites
end
; 0x193591
diff --git a/maps/MountMoon.asm b/maps/MountMoon.asm
index c4fb9b62a..92760f5a7 100644
--- a/maps/MountMoon.asm
+++ b/maps/MountMoon.asm
@@ -22,7 +22,7 @@ UnknownScript_0x7408d: ; 0x7408d
UnknownScript_0x7408e: ; 0x7408e
spriteface $0, $3
showemote $0, $0, 15
- special $006a
+ special Functionc48f
pause 15
applymovement $2, MovementData_0x740f9
playmusic MUSIC_RIVAL_ENCOUNTER
diff --git a/maps/MoveDeletersHouse.asm b/maps/MoveDeletersHouse.asm
index 975a003aa..b700bdcea 100644
--- a/maps/MoveDeletersHouse.asm
+++ b/maps/MoveDeletersHouse.asm
@@ -9,7 +9,7 @@ MoveDeletersHouse_MapScriptHeader: ; 0x195cb2
SuperNerdScript_0x195cb4: ; 0x195cb4
faceplayer
loadfont
- special $0021
+ special Function2c547
closetext
loadmovesprites
end
diff --git a/maps/MrPokemonsHouse.asm b/maps/MrPokemonsHouse.asm
index 08a02f337..513385ec9 100644
--- a/maps/MrPokemonsHouse.asm
+++ b/maps/MrPokemonsHouse.asm
@@ -109,21 +109,21 @@ UnknownScript_0x196ec9: ; 0x196ec9
playsound SFX_EXIT_BUILDING
disappear $3
waitbutton
- special $003d
+ special RestartMapMusic
pause 15
spriteface $0, $1
loadfont
writetext UnknownText_0x1970ed
closetext
loadmovesprites
- special $0030
- special $0033
+ special Function8c0b6
+ special Functiond91
playmusic MUSIC_HEAL
- special $009d
- special $001b
+ special Function1060a2
+ special Functionc658
pause 60
- special $0032
- special $003d
+ special Function8c0ab
+ special RestartMapMusic
loadfont
writetext UnknownText_0x197134
closetext
diff --git a/maps/NewBarkTown.asm b/maps/NewBarkTown.asm
index fa0955423..7eeb2d671 100644
--- a/maps/NewBarkTown.asm
+++ b/maps/NewBarkTown.asm
@@ -48,7 +48,7 @@ UnknownScript_0x1a8016: ; 0x1a8016
writetext UnknownText_0x1a815e
closetext
loadmovesprites
- special $003d
+ special RestartMapMusic
end
; 0x1a8041
@@ -73,7 +73,7 @@ UnknownScript_0x1a8041: ; 0x1a8041
writetext UnknownText_0x1a815e
closetext
loadmovesprites
- special $003d
+ special RestartMapMusic
end
; 0x1a806f
diff --git a/maps/OaksLab.asm b/maps/OaksLab.asm
index 54f1c5f1c..30f1d3234 100644
--- a/maps/OaksLab.asm
+++ b/maps/OaksLab.asm
@@ -30,7 +30,7 @@ UnknownScript_0x19b3dd: ; 0x19b3dd
UnknownScript_0x19b3ea: ; 0x19b3ea
writetext UnknownText_0x19b4a2
closetext
- special $0065
+ special ProfOaksPCBoot
writetext UnknownText_0x19b4c8
closetext
loadmovesprites
diff --git a/maps/OlivineCity.asm b/maps/OlivineCity.asm
index e1fefcf01..714904162 100644
--- a/maps/OlivineCity.asm
+++ b/maps/OlivineCity.asm
@@ -30,7 +30,7 @@ UnknownScript_0x1a882f: ; 0x1a882f
UnknownScript_0x1a8833: ; 0x1a8833
spriteface $0, $2
showemote $0, $0, 15
- special $006a
+ special Functionc48f
pause 15
playsound SFX_ENTER_DOOR
appear $5
@@ -46,16 +46,16 @@ UnknownScript_0x1a8833: ; 0x1a8833
applymovement $5, MovementData_0x1a88db
dotrigger $1
disappear $5
- special $003d
+ special RestartMapMusic
variablesprite $5, $31
- special $005e
+ special Function14209
end
; 0x1a886b
UnknownScript_0x1a886b: ; 0x1a886b
spriteface $0, $2
showemote $0, $0, 15
- special $006a
+ special Functionc48f
pause 15
playsound SFX_ENTER_DOOR
appear $5
@@ -71,9 +71,9 @@ UnknownScript_0x1a886b: ; 0x1a886b
applymovement $5, MovementData_0x1a88e8
disappear $5
dotrigger $1
- special $003d
+ special RestartMapMusic
variablesprite $5, $31
- special $005e
+ special Function14209
end
; 0x1a88a3
diff --git a/maps/OlivineLighthouse6F.asm b/maps/OlivineLighthouse6F.asm
index 2a12b6a27..e9b18143f 100644
--- a/maps/OlivineLighthouse6F.asm
+++ b/maps/OlivineLighthouse6F.asm
@@ -42,11 +42,11 @@ UnknownScript_0x60bab: ; 0x60bab
pause 60
keeptextopen
loadmovesprites
- special $003d
+ special RestartMapMusic
cry AMPHAROS
- special $002e
+ special Function8c084
pause 10
- special $0031
+ special Function8c079
loadfont
writetext UnknownText_0x60f3d
closetext
@@ -111,7 +111,7 @@ MonsterScript_0x60c3a: ; 0x60c3a
iftrue UnknownScript_0x60c51
writetext UnknownText_0x60f03
writebyte AMPHAROS
- special $005f
+ special Functionfb841
keeptextopen
writetext UnknownText_0x60f19
closetext
@@ -124,10 +124,10 @@ UnknownScript_0x60c51: ; 0x60c51
cry AMPHAROS
closetext
loadmovesprites
- special $002e
- special $0031
- special $002e
- special $0031
+ special Function8c084
+ special Function8c079
+ special Function8c084
+ special Function8c079
end
; 0x60c66
diff --git a/maps/OlivinePort.asm b/maps/OlivinePort.asm
index a67451bb7..437db358a 100644
--- a/maps/OlivinePort.asm
+++ b/maps/OlivinePort.asm
@@ -43,7 +43,7 @@ SailorScript_0x748c0: ; 0x748c0
waitbutton
applymovement $0, MovementData_0x74a30
playsound SFX_EXIT_BUILDING
- special $002e
+ special Function8c084
waitbutton
checkevent $0030
iffalse UnknownScript_0x7490a
diff --git a/maps/PokeCenter2F.asm b/maps/PokeCenter2F.asm
index ab4a0c8bf..7b00ed670 100644
--- a/maps/PokeCenter2F.asm
+++ b/maps/PokeCenter2F.asm
@@ -15,7 +15,7 @@ PokeCenter2F_MapScriptHeader: ; 0x192845
; 0x19285f
UnknownScript_0x19285f: ; 0x19285f
- special $0011
+ special Functionc2f6
if_equal $0, UnknownScript_0x192872
clearevent $0711
checkevent $0001
@@ -83,28 +83,28 @@ LinkReceptionistScript_0x19289d: ; 0x19289d
writetext UnknownText_0x192e3a
yesorno
iffalse UnknownScript_0x19291d
- special $00a0
+ special Function10630f
iffalse UnknownScript_0x1928be
writetext UnknownText_0x192d7e
- special $008c
+ special Function103612
iffalse UnknownScript_0x19291d
if_equal $1, UnknownScript_0x19291f
UnknownScript_0x1928be: ; 0x1928be
- special $0001
+ special Function29ce8
writetext UnknownText_0x192f67
- special $0002
+ special Function29d11
iffalse UnknownScript_0x1928f6
writetext UnknownText_0x192f34
yesorno
iffalse UnknownScript_0x192917
- special $0004
+ special Function29e66
iffalse UnknownScript_0x192917
writetext UnknownText_0x192f67
- special $0003
+ special Function29d92
iffalse UnknownScript_0x192911
copybytetovar wcf51
iffalse UnknownScript_0x1928fe
- special $0005
+ special Function29e82
iffalse UnknownScript_0x192909
writetext UnknownText_0x19306b
closetext
@@ -115,23 +115,23 @@ UnknownScript_0x1928be: ; 0x1928be
; 0x1928f6
UnknownScript_0x1928f6: ; 0x1928f6
- special $0008
+ special Function29c92
writetext UnknownText_0x192f19
loadmovesprites
end
; 0x1928fe
UnknownScript_0x1928fe: ; 0x1928fe
- special $0006
+ special Function29efa
writetext UnknownText_0x193029
- special $0007
+ special Function29eee
loadmovesprites
end
; 0x192909
UnknownScript_0x192909: ; 0x192909
writetext UnknownText_0x19304a
- special $0007
+ special Function29eee
loadmovesprites
end
; 0x192911
@@ -144,7 +144,7 @@ UnknownScript_0x192911: ; 0x192911
UnknownScript_0x192917: ; 0x192917
writetext UnknownText_0x192fd1
UnknownScript_0x19291a: ; 0x19291a
- special $0008
+ special Function29c92
UnknownScript_0x19291d: ; 0x19291d
loadmovesprites
end
@@ -166,9 +166,9 @@ UnknownScript_0x19292b: ; 0x19292b
writetext UnknownText_0x192f34
yesorno
iffalse UnknownScript_0x192943
- special $0004
+ special Function29e66
iffalse UnknownScript_0x192943
- special $007f
+ special Function1011f1
writetext UnknownText_0x19306b
closetext
loadmovesprites
@@ -196,28 +196,28 @@ LinkReceptionistScript_0x192952: ; 0x192952
writetext UnknownText_0x192de0
yesorno
iffalse UnknownScript_0x1929d2
- special $00a0
+ special Function10630f
iffalse UnknownScript_0x192973
writetext UnknownText_0x192d39
- special $008c
+ special Function103612
iffalse UnknownScript_0x1929d2
if_equal $1, UnknownScript_0x1929d4
UnknownScript_0x192973: ; 0x192973
- special $0009
+ special Function29cf1
writetext UnknownText_0x192f67
- special $0002
+ special Function29d11
iffalse UnknownScript_0x1929ab
writetext UnknownText_0x192f34
yesorno
iffalse UnknownScript_0x1929cc
- special $0004
+ special Function29e66
iffalse UnknownScript_0x1929cc
writetext UnknownText_0x192f67
- special $0003
+ special Function29d92
iffalse UnknownScript_0x1929c6
copybytetovar wcf51
iffalse UnknownScript_0x1929b3
- special $0005
+ special Function29e82
iffalse UnknownScript_0x1929be
writetext UnknownText_0x19306b
closetext
@@ -228,23 +228,23 @@ UnknownScript_0x192973: ; 0x192973
; 0x1929ab
UnknownScript_0x1929ab: ; 0x1929ab
- special $0008
+ special Function29c92
writetext UnknownText_0x192f19
loadmovesprites
end
; 0x1929b3
UnknownScript_0x1929b3: ; 0x1929b3
- special $0006
+ special Function29efa
writetext UnknownText_0x193029
- special $0007
+ special Function29eee
loadmovesprites
end
; 0x1929be
UnknownScript_0x1929be: ; 0x1929be
writetext UnknownText_0x19304a
- special $0007
+ special Function29eee
loadmovesprites
end
; 0x1929c6
@@ -257,7 +257,7 @@ UnknownScript_0x1929c6: ; 0x1929c6
UnknownScript_0x1929cc: ; 0x1929cc
writetext UnknownText_0x192fd1
UnknownScript_0x1929cf: ; 0x1929cf
- special $0008
+ special Function29c92
UnknownScript_0x1929d2: ; 0x1929d2
loadmovesprites
end
@@ -281,9 +281,9 @@ UnknownScript_0x1929e6: ; 0x1929e6
writetext UnknownText_0x192f34
yesorno
iffalse UnknownScript_0x1929fe
- special $00a1
+ special Function103780
iffalse UnknownScript_0x1929fe
- special $007f
+ special Function1011f1
writetext UnknownText_0x19306b
closetext
loadmovesprites
@@ -299,7 +299,7 @@ UnknownScript_0x1929fe: ; 0x1929fe
; 0x192a05
UnknownScript_0x192a05: ; 0x192a05
- special $009a
+ special Function10366e
iffalse UnknownScript_0x192a1e
if_equal $1, UnknownScript_0x192a22
if_equal $2, UnknownScript_0x192a22
@@ -335,38 +335,38 @@ LinkReceptionistScript_0x192a2d: ; 0x192a2d
iftrue UnknownScript_0x192a25
checkflag $0053
iftrue UnknownScript_0x192a25
- special $000a
+ special Function29cfa
faceplayer
loadfont
writetext UnknownText_0x192e9f
yesorno
iffalse UnknownScript_0x192aa2
- special $000b
+ special Function29bfb
if_equal $1, UnknownScript_0x192aa7
if_equal $2, UnknownScript_0x192aac
if_equal $3, UnknownScript_0x192ab1
writetext UnknownText_0x192f67
- special $0002
+ special Function29d11
iffalse UnknownScript_0x192a91
writetext UnknownText_0x192f34
yesorno
iffalse UnknownScript_0x192a9f
- special $0004
+ special Function29e66
iffalse UnknownScript_0x192a9f
writetext UnknownText_0x192f67
- special $0003
+ special Function29d92
iffalse UnknownScript_0x192a99
copybytetovar wcf51
iffalse UnknownScript_0x192a84
- special $0005
+ special Function29e82
writetext UnknownText_0x19304a
- special $0007
+ special Function29eee
loadmovesprites
end
; 0x192a84
UnknownScript_0x192a84: ; 0x192a84
- special $000c
+ special Function29c7b
writetext UnknownText_0x19306b
closetext
loadmovesprites
@@ -376,7 +376,7 @@ UnknownScript_0x192a84: ; 0x192a84
; 0x192a91
UnknownScript_0x192a91: ; 0x192a91
- special $0008
+ special Function29c92
writetext UnknownText_0x192f19
loadmovesprites
end
@@ -390,7 +390,7 @@ UnknownScript_0x192a99: ; 0x192a99
UnknownScript_0x192a9f: ; 0x192a9f
writetext UnknownText_0x192fd1
UnknownScript_0x192aa2: ; 0x192aa2
- special $0008
+ special Function29c92
loadmovesprites
end
; 0x192aa7
@@ -414,7 +414,7 @@ UnknownScript_0x192ab1: ; 0x192ab1
; 0x192ab6
UnknownScript_0x192ab6: ; 0x192ab6
- special $0008
+ special Function29c92
scall UnknownScript_0x192b50
dotrigger $0
domaptrigger GROUP_TRADE_CENTER, MAP_TRADE_CENTER, $0
@@ -422,7 +422,7 @@ UnknownScript_0x192ab6: ; 0x192ab6
; 0x192ac3
UnknownScript_0x192ac3: ; 0x192ac3
- special $0080
+ special Function101220
scall UnknownScript_0x192ad0
dotrigger $0
domaptrigger GROUP_MOBILE_TRADE_ROOM_MOBILE, MAP_MOBILE_TRADE_ROOM_MOBILE, $0
@@ -437,7 +437,7 @@ UnknownScript_0x192ad0: ; 0x192ad0
; 0x192add
UnknownScript_0x192add: ; 0x192add
- special $0008
+ special Function29c92
scall UnknownScript_0x192b8a
dotrigger $0
domaptrigger GROUP_COLOSSEUM, MAP_COLOSSEUM, $0
@@ -445,7 +445,7 @@ UnknownScript_0x192add: ; 0x192add
; 0x192aea
UnknownScript_0x192aea: ; 0x192aea
- special $0080
+ special Function101220
scall UnknownScript_0x192af7
dotrigger $0
domaptrigger GROUP_MOBILE_BATTLE_ROOM, MAP_MOBILE_BATTLE_ROOM, $0
@@ -483,10 +483,10 @@ UnknownScript_0x192b12: ; 0x192b12
playsound SFX_TINGLE
applymovement $0, MovementData_0x192d17
writebyte $80
- special $0098
+ special Functionc225
applymovement $0, MovementData_0x192d1c
setflag $009f
- special $0038
+ special Functione4a
loadfont
writetext UnknownText_0x19329a
closetext
@@ -512,9 +512,9 @@ UnknownScript_0x192b63: ; 0x192b63
playsound SFX_TINGLE
applymovement $0, MovementData_0x192d17
writebyte $90
- special $0098
+ special Functionc225
applymovement $0, MovementData_0x192d1c
- special $0038
+ special Functione4a
applymovement $0, MovementData_0x192d2a
applymovement $2, MovementData_0x192cfe
end
@@ -536,9 +536,9 @@ UnknownScript_0x192b9d: ; 0x192b9d
playsound SFX_TINGLE
applymovement $0, MovementData_0x192d17
writebyte $90
- special $0098
+ special Functionc225
applymovement $0, MovementData_0x192d1c
- special $0038
+ special Functione4a
applymovement $0, MovementData_0x192d2a
applymovement $3, MovementData_0x192cfe
end
@@ -601,11 +601,11 @@ UnknownScript_0x192c20: ; 0x192c20
playsound SFX_TINGLE
applymovement $0, MovementData_0x192d17
writebyte $80
- special $0098
+ special Functionc225
applymovement $0, MovementData_0x192d22
faceperson $0, $4
setflag $009f
- special $0038
+ special Functione4a
loadfont
writetext UnknownText_0x19329a
closetext
@@ -616,7 +616,7 @@ UnknownScript_0x192c20: ; 0x192c20
; 0x192c4e
UnknownScript_0x192c4e: ; 0x192c4e
- special $0008
+ special Function29c92
checkflag $009f
iftrue UnknownScript_0x192c66
applymovement $4, MovementData_0x192d08
@@ -632,9 +632,9 @@ UnknownScript_0x192c66: ; 0x192c66
playsound SFX_TINGLE
applymovement $0, MovementData_0x192d17
writebyte $90
- special $0098
+ special Functionc225
applymovement $0, MovementData_0x192d1c
- special $0038
+ special Functione4a
applymovement $0, MovementData_0x192cfc
applymovement $4, MovementData_0x192d01
UnknownScript_0x192c8c: ; 0x192c8c
@@ -645,7 +645,7 @@ UnknownScript_0x192c8c: ; 0x192c8c
MapPokeCenter2FSignpost0Script: ; 0x192c93
refreshscreen $0
- special $0058
+ special Functionc2da
loadmovesprites
end
; 0x192c9a
@@ -661,7 +661,7 @@ OfficerScript_0x192c9a: ; 0x192c9a
writetext UnknownText_0x1931c4
keeptextopen
waitbutton
- special $0012
+ special Functionc309
iffalse UnknownScript_0x192cbe
itemnotify
setevent $0711
diff --git a/maps/PokeSeersHouse.asm b/maps/PokeSeersHouse.asm
index ebb3d2759..0d03b21d2 100644
--- a/maps/PokeSeersHouse.asm
+++ b/maps/PokeSeersHouse.asm
@@ -9,7 +9,7 @@ PokeSeersHouse_MapScriptHeader: ; 0x9e36c
SeerScript: ; 0x9e36e
faceplayer
loadfont
- special SPECIAL_POKESEER
+ special SpecialPokeSeer
closetext
loadmovesprites
end
diff --git a/maps/RadioTower1F.asm b/maps/RadioTower1F.asm
index 0fda5651e..8a5f1aca4 100644
--- a/maps/RadioTower1F.asm
+++ b/maps/RadioTower1F.asm
@@ -29,11 +29,11 @@ GentlemanScript_0x5cd3d: ; 0x5cd3d
loadfont
writetext UnknownText_0x5ceba
keeptextopen
- special $0053
+ special Functionc434
iffalse UnknownScript_0x5cd4c
- special $0054
+ special Functionc422
UnknownScript_0x5cd4c: ; 0x5cd4c
- special $0055
+ special Function4d9d3
checkflag $004e
iftrue UnknownScript_0x5cd84
writetext UnknownText_0x5cf3a
@@ -48,7 +48,7 @@ UnknownScript_0x5cd4c: ; 0x5cd4c
playsound SFX_DEX_FANFARE_20_49
waitbutton
keeptextopen
- special $0052
+ special Function4d87a
loadmovesprites
applymovement $6, MovementData_0x5ce74
loadfont
diff --git a/maps/RadioTower2F.asm b/maps/RadioTower2F.asm
index 18af832be..b99bae619 100644
--- a/maps/RadioTower2F.asm
+++ b/maps/RadioTower2F.asm
@@ -184,7 +184,7 @@ BuenaScript_0x5d775: ; 0x5d775
if_equal $1e, UnknownScript_0x5d87f
playmusic MUSIC_BUENAS_PASSWORD
writetext UnknownText_0x5de35
- special $00a3
+ special Function4ae12
iffalse UnknownScript_0x5d81e
writetext UnknownText_0x5de84
closetext
@@ -201,7 +201,7 @@ UnknownScript_0x5d7be: ; 0x5d7be
loadmovesprites
spriteface $b, $0
refreshscreen $0
- special SPECIAL_BUENAS_PASSWORD
+ special SpecialBuenasPassword
loadmovesprites
iffalse UnknownScript_0x5d845
loadfont
@@ -220,9 +220,9 @@ UnknownScript_0x5d7be: ; 0x5d7be
writetext UnknownText_0x5e054
closetext
loadmovesprites
- special $006a
+ special Functionc48f
pause 20
- special $003d
+ special RestartMapMusic
checkcode $18
if_equal $1e, UnknownScript_0x5d8a4
end
@@ -251,9 +251,9 @@ UnknownScript_0x5d81e: ; 0x5d81e
closetext
loadmovesprites
spriteface $b, $3
- special $006a
+ special Functionc48f
pause 20
- special $003d
+ special RestartMapMusic
end
; 0x5d82f
@@ -284,9 +284,9 @@ UnknownScript_0x5d845: ; 0x5d845
closetext
loadmovesprites
spriteface $b, $3
- special $006a
+ special Functionc48f
pause 20
- special $003d
+ special RestartMapMusic
end
; 0x5d865
@@ -396,7 +396,7 @@ ReceptionistScript_0x5d8ff: ; 0x5d8ff
iffalse UnknownScript_0x5d90f
writetext UnknownText_0x5e392
keeptextopen
- special SPECIAL_BUENA_PRIZE
+ special SpecialBuenaPrize
loadmovesprites
end
; 0x5d90f
diff --git a/maps/RadioTower5F.asm b/maps/RadioTower5F.asm
index bed4fe254..bafa1a755 100644
--- a/maps/RadioTower5F.asm
+++ b/maps/RadioTower5F.asm
@@ -115,12 +115,12 @@ UnknownScript_0x6006e: ; 0x6006e
writetext UnknownText_0x6050e
closetext
loadmovesprites
- special $0030
- special $0033
+ special Function8c0b6
+ special Functiond91
disappear $3
disappear $4
pause 15
- special $0032
+ special Function8c0ab
setevent $0571
setevent EVENT_CLEARED_RADIO_TOWER
clearflag $0013
@@ -133,7 +133,7 @@ UnknownScript_0x6006e: ; 0x6006e
clearevent $06d0
setevent $06e3
clearevent $06e4
- special $003c
+ special PlayMapMusic
disappear $2
moveperson $2, $c, $0
appear $2
diff --git a/maps/Route24.asm b/maps/Route24.asm
index 8a30bab43..70e7d577a 100644
--- a/maps/Route24.asm
+++ b/maps/Route24.asm
@@ -22,15 +22,15 @@ RocketScript_0x1adbfa: ; 0x1adbfa
loadfont
writetext UnknownText_0x1addc0
keeptextopen
- special $006a
+ special Functionc48f
writetext UnknownText_0x1adee1
closetext
loadmovesprites
- special $0030
- special $0033
+ special Function8c0b6
+ special Functiond91
disappear $2
pause 25
- special $0032
+ special Function8c0ab
playmapmusic
end
; 0x1adc2e
diff --git a/maps/Route25.asm b/maps/Route25.asm
index e4f66416c..a003d362c 100644
--- a/maps/Route25.asm
+++ b/maps/Route25.asm
@@ -41,7 +41,7 @@ UnknownScript_0x19eea0: ; 0x19eea0
disappear $2
clearevent $076f
dotrigger $0
- special $003d
+ special RestartMapMusic
end
; 0x19eee0
@@ -68,7 +68,7 @@ UnknownScript_0x19eee0: ; 0x19eee0
disappear $2
clearevent $076f
dotrigger $0
- special $003d
+ special RestartMapMusic
end
; 0x19ef20
diff --git a/maps/Route26HealSpeechHouse.asm b/maps/Route26HealSpeechHouse.asm
index b2cfc2c06..e44f898c5 100644
--- a/maps/Route26HealSpeechHouse.asm
+++ b/maps/Route26HealSpeechHouse.asm
@@ -12,14 +12,14 @@ TeacherScript_0x7b125: ; 0x7b125
writetext UnknownText_0x7b14d
closetext
loadmovesprites
- special $0030
- special $0033
- special $009d
+ special Function8c0b6
+ special Functiond91
+ special Function1060a2
playmusic MUSIC_HEAL
- special $001b
+ special Functionc658
pause 60
- special $0032
- special $003d
+ special Function8c0ab
+ special RestartMapMusic
loadfont
writetext UnknownText_0x7b18b
closetext
diff --git a/maps/Route27SandstormHouse.asm b/maps/Route27SandstormHouse.asm
index 6218c7858..1b4e969fb 100644
--- a/maps/Route27SandstormHouse.asm
+++ b/maps/Route27SandstormHouse.asm
@@ -11,7 +11,7 @@ GrannyScript_0x7b394: ; 0x7b394
loadfont
checkevent EVENT_GOT_TM37_SANDSTORM
iftrue UnknownScript_0x7b3b7
- special $0059
+ special Function718d
writetext UnknownText_0x7b3c6
keeptextopen
if_greater_than $95, UnknownScript_0x7b3aa
diff --git a/maps/Route30.asm b/maps/Route30.asm
index a7e223770..2e7e990d6 100644
--- a/maps/Route30.asm
+++ b/maps/Route30.asm
@@ -23,7 +23,7 @@ YoungsterScript_0x1a1673: ; 0x1a1673
loadmovesprites
playsound SFX_TACKLE
applymovement $7, MovementData_0x1a1802
- special $003d
+ special RestartMapMusic
end
; 0x1a169a
diff --git a/maps/Route34.asm b/maps/Route34.asm
index 94c5b59b3..846b84059 100644
--- a/maps/Route34.asm
+++ b/maps/Route34.asm
@@ -51,7 +51,7 @@ UnknownScript_0x78039: ; 0x78039
GrampsScript_0x7803d: ; 0x7803d
faceplayer
loadfont
- special $0020
+ special Function16936
closetext
loadmovesprites
if_equal $1, UnknownScript_0x7805a
@@ -74,14 +74,14 @@ UnknownScript_0x7805b: ; 0x7805b
DaycareMon1Script_0x78065: ; 0x78065
loadfont
- special $0045
+ special Function17421
loadmovesprites
end
; 0x7806b
DaycareMon2Script_0x7806b: ; 0x7806b
loadfont
- special $0046
+ special Function17440
loadmovesprites
end
; 0x78071
diff --git a/maps/Route35NationalParkgate.asm b/maps/Route35NationalParkgate.asm
index 684c61c08..da0cc9de6 100644
--- a/maps/Route35NationalParkgate.asm
+++ b/maps/Route35NationalParkgate.asm
@@ -84,7 +84,7 @@ UnknownScript_0x6a1ee: ; 0x6a1ee
loadmovesprites
scall UnknownScript_0x6a261
playsound SFX_ENTER_DOOR
- special $002e
+ special Function8c084
waitbutton
warpfacing $1, GROUP_NATIONAL_PARK_BUG_CONTEST, MAP_NATIONAL_PARK_BUG_CONTEST, $a, $2f
end
@@ -106,11 +106,11 @@ OfficerScript_0x6a204: ; 0x6a204
iffalse UnknownScript_0x6a2a3
checkcode $1
if_greater_than $1, UnknownScript_0x6a271
- special $0016
+ special Function13a12
clearevent $0308
UnknownScript_0x6a234: ; 0x6a234
setflag $0011
- special $003c
+ special PlayMapMusic
writetext UnknownText_0x6a39d
keeptextopen
writetext UnknownText_0x6a3c7
@@ -119,12 +119,12 @@ UnknownScript_0x6a234: ; 0x6a234
writetext UnknownText_0x6a3e2
closetext
loadmovesprites
- special $0018
+ special Function135db
scall UnknownScript_0x6a261
playsound SFX_ENTER_DOOR
- special $002e
+ special Function8c084
waitbutton
- special $0047
+ special Function139a8
warpfacing $1, GROUP_NATIONAL_PARK_BUG_CONTEST, MAP_NATIONAL_PARK_BUG_CONTEST, $a, $2f
end
; 0x6a261
@@ -148,12 +148,12 @@ UnknownScript_0x6a271: ; 0x6a271
if_equal $0, UnknownScript_0x6a2b5
UnknownScript_0x6a27d: ; 6a27d
- special $005a
+ special Function71ac
if_equal $1, UnknownScript_0x6a2bb
writetext UnknownText_0x6a4c6
yesorno
iffalse UnknownScript_0x6a2a9
- special $0016
+ special Function13a12
iftrue UnknownScript_0x6a2af
setevent $0308
writetext UnknownText_0x6a537
diff --git a/maps/Route36.asm b/maps/Route36.asm
index 1a07ddf63..38db65fca 100644
--- a/maps/Route36.asm
+++ b/maps/Route36.asm
@@ -96,8 +96,8 @@ UnknownScript_0x19407b: ; 0x19407b
applymovement $4, MovementData_0x19424b
disappear $4
variablesprite $4, $26
- special $005e
- special $009e
+ special Function14209
+ special Function14168
end
; 0x19408c
diff --git a/maps/Route36NationalParkgate.asm b/maps/Route36NationalParkgate.asm
index 93133e342..5414e9b46 100644
--- a/maps/Route36NationalParkgate.asm
+++ b/maps/Route36NationalParkgate.asm
@@ -75,14 +75,14 @@ UnknownScript_0x6ab47: ; 0x6ab47
writetext UnknownText_0x6b2c5
closetext
loadmovesprites
- special $0030
- special $0033
+ special Function8c0b6
+ special Functiond91
scall UnknownScript_0x6ab8c
disappear $2
appear $d
applymovement $0, MovementData_0x6add1
pause 15
- special $0032
+ special Function8c0ab
jumpstd $0017
; 0x6ab76
@@ -92,7 +92,7 @@ UnknownScript_0x6ab76: ; 0x6ab76
loadmovesprites
spriteface $0, $2
playsound SFX_EXIT_BUILDING
- special $002e
+ special Function8c084
waitbutton
warpfacing $2, GROUP_NATIONAL_PARK_BUG_CONTEST, MAP_NATIONAL_PARK_BUG_CONTEST, $21, $12
end
@@ -139,7 +139,7 @@ UnknownScript_0x6abd4: ; 0x6abd4
iftrue UnknownScript_0x6abdc
appear $c
UnknownScript_0x6abdc: ; 0x6abdc
- special $0037
+ special Function1ad2
end
; 0x6abe0
@@ -159,11 +159,11 @@ OfficerScript_0x6abe0: ; 0x6abe0
iffalse UnknownScript_0x6ac73
checkcode $1
if_greater_than $1, UnknownScript_0x6ac41
- special $0016
+ special Function13a12
clearevent $0308
UnknownScript_0x6ac10: ; 0x6ac10
setflag $0011
- special $003c
+ special PlayMapMusic
writetext UnknownText_0x6ae87
keeptextopen
waitbutton
@@ -174,12 +174,12 @@ UnknownScript_0x6ac10: ; 0x6ac10
closetext
loadmovesprites
setflag $0011
- special $0018
+ special Function135db
spriteface $0, $2
playsound SFX_EXIT_BUILDING
- special $002e
+ special Function8c084
waitbutton
- special $0047
+ special Function139a8
warpfacing $2, GROUP_NATIONAL_PARK_BUG_CONTEST, MAP_NATIONAL_PARK_BUG_CONTEST, $21, $12
end
; 0x6ac41
@@ -190,12 +190,12 @@ UnknownScript_0x6ac41: ; 0x6ac41
checkcode $10
if_equal $0, UnknownScript_0x6ac85
UnknownScript_0x6ac4d: ; 0x6ac4d
- special $005a
+ special Function71ac
if_equal $1, UnknownScript_0x6ac8b
writetext UnknownText_0x6afb0
yesorno
iffalse UnknownScript_0x6ac79
- special $0016
+ special Function13a12
iftrue UnknownScript_0x6ac7f
setevent $0308
writetext UnknownText_0x6b021
diff --git a/maps/Route39Barn.asm b/maps/Route39Barn.asm
index 2bebb86ac..161e563b8 100644
--- a/maps/Route39Barn.asm
+++ b/maps/Route39Barn.asm
@@ -52,7 +52,7 @@ TaurosScript_0x9ccaa: ; 0x9ccaa
iftrue UnknownScript_0x9cd25
writetext UnknownText_0x9cd70
writebyte MILTANK
- special $005f
+ special Functionfb841
keeptextopen
writetext UnknownText_0x9cd80
checkevent EVENT_TALKED_TO_FARMER_ABOUT_MOOMOO
@@ -105,7 +105,7 @@ UnknownScript_0x9cd04: ; 0x9cd04
writetext UnknownText_0x9cdbc
pause 60
keeptextopen
- special $003d
+ special RestartMapMusic
writetext UnknownText_0x9ce1b
closetext
loadmovesprites
diff --git a/maps/Route39Farmhouse.asm b/maps/Route39Farmhouse.asm
index 5135c05c7..b1224e7f6 100644
--- a/maps/Route39Farmhouse.asm
+++ b/maps/Route39Farmhouse.asm
@@ -22,7 +22,7 @@ UnknownScript_0x9cec5: ; 0x9cec5
checkitem MOOMOO_MILK
iftrue UnknownScript_0x9cf08
writetext UnknownText_0x9cfe1
- special $0051
+ special Function24ae8
yesorno
iffalse UnknownScript_0x9cf02
checkmoney $0, 500
@@ -30,7 +30,7 @@ UnknownScript_0x9cec5: ; 0x9cec5
giveitem MOOMOO_MILK, $1
iffalse UnknownScript_0x9cefc
takemoney $0, 500
- special $0051
+ special Function24ae8
waitbutton
playsound SFX_TRANSACTION
writetext UnknownText_0x9d05d
diff --git a/maps/Route40.asm b/maps/Route40.asm
index d8bdcdcce..6b8dab552 100644
--- a/maps/Route40.asm
+++ b/maps/Route40.asm
@@ -141,7 +141,7 @@ LassScript_0x1a61c4: ; 0x1a61c4
; 0x1a61c7
PokefanMScript_0x1a61c7: ; 0x1a61c7
- special $00a0
+ special Function10630f
iftrue UnknownScript_0x1a61d0
jumptextfaceplayer UnknownText_0x1a646a
; 0x1a61d0
diff --git a/maps/Route43Gate.asm b/maps/Route43Gate.asm
index 96718487d..dc0b45ca6 100644
--- a/maps/Route43Gate.asm
+++ b/maps/Route43Gate.asm
@@ -77,7 +77,7 @@ UnknownScript_0x19ac28: ; 0x19ac28
applymovement $3, MovementData_0x19acaa
applymovement $4, MovementData_0x19acc1
dotrigger $1
- special $003d
+ special RestartMapMusic
end
; 0x19ac38
@@ -113,7 +113,7 @@ UnknownScript_0x19ac72: ; 0x19ac72
applymovement $4, MovementData_0x19accd
applymovement $3, MovementData_0x19acb5
dotrigger $1
- special $003d
+ special RestartMapMusic
end
; 0x19ac82
diff --git a/maps/Route45.asm b/maps/Route45.asm
index 7b215d9a6..4a762660f 100644
--- a/maps/Route45.asm
+++ b/maps/Route45.asm
@@ -34,7 +34,7 @@ BlackbeltKenji3Script: ; 0x19e0ad
iftrue UnknownScript_0x19e0e4
checkevent $0299
iftrue UnknownScript_0x19e0cd
- special $0095
+ special Function11485
writetext UnknownText_0x19e5e2
closetext
setevent $0299
@@ -66,7 +66,7 @@ UnknownScript_0x19e0e4: ; 0x19e0e4
verbosegiveitem PP_UP, 1
iffalse UnknownScript_0x19e118
clearevent $026a
- special $0095
+ special Function11485
jump UnknownScript_0x19e127
; 0x19e10c
diff --git a/maps/RuinsofAlphAerodactylChamber.asm b/maps/RuinsofAlphAerodactylChamber.asm
index 3faf1c92b..6018c1f7d 100644
--- a/maps/RuinsofAlphAerodactylChamber.asm
+++ b/maps/RuinsofAlphAerodactylChamber.asm
@@ -62,7 +62,7 @@ UnknownScript_0x58dd3: ; 0x58dd3
MapRuinsofAlphAerodactylChamberSignpost2Script: ; 0x58deb
refreshscreen $0
writebyte $2
- special $0029
+ special Functionc360
loadmovesprites
iftrue UnknownScript_0x58df7
end
@@ -100,7 +100,7 @@ MapRuinsofAlphAerodactylChamberSignpost4Script: ; 0x58e2a
loadfont
writetext UnknownText_0x58e4f
writebyte $1
- special $0087
+ special Function8ae68
loadmovesprites
end
; 0x58e35
@@ -111,7 +111,7 @@ MapRuinsofAlphAerodactylChamberSignpost5Script: ; 0x58e35
loadfont
writetext UnknownText_0x58e81
writebyte $1
- special $0087
+ special Function8ae68
loadmovesprites
end
; 0x58e46
diff --git a/maps/RuinsofAlphHoOhChamber.asm b/maps/RuinsofAlphHoOhChamber.asm
index f4e0d1c1b..6159cf19d 100644
--- a/maps/RuinsofAlphHoOhChamber.asm
+++ b/maps/RuinsofAlphHoOhChamber.asm
@@ -15,7 +15,7 @@ RuinsofAlphHoOhChamber_MapScriptHeader: ; 0x58560
; 0x5856d
UnknownScript_0x5856d: ; 0x5856d
- special $008d
+ special SpecialHoOhChamber
checkevent EVENT_WALL_OPENED_IN_HO_OH_CHAMBER
iftrue UnknownScript_0x58577
end
@@ -63,7 +63,7 @@ UnknownScript_0x58596: ; 0x58596
MapRuinsofAlphHoOhChamberSignpost2Script: ; 0x585ae
refreshscreen $0
writebyte $3
- special $0029
+ special Functionc360
loadmovesprites
iftrue UnknownScript_0x585ba
end
@@ -101,7 +101,7 @@ MapRuinsofAlphHoOhChamberSignpost4Script: ; 0x585ed
loadfont
writetext UnknownText_0x58612
writebyte $3
- special $0087
+ special Function8ae68
loadmovesprites
end
; 0x585f8
@@ -112,7 +112,7 @@ MapRuinsofAlphHoOhChamberSignpost5Script: ; 0x585f8
loadfont
writetext UnknownText_0x58644
writebyte $3
- special $0087
+ special Function8ae68
loadmovesprites
end
; 0x58609
diff --git a/maps/RuinsofAlphKabutoChamber.asm b/maps/RuinsofAlphKabutoChamber.asm
index cd8d33cc7..57528ffa8 100644
--- a/maps/RuinsofAlphKabutoChamber.asm
+++ b/maps/RuinsofAlphKabutoChamber.asm
@@ -69,7 +69,7 @@ ReceptionistScript_0x58769: ; 0x58769
MapRuinsofAlphKabutoChamberSignpost2Script: ; 0x5876c
refreshscreen $0
writebyte $0
- special $0029
+ special Functionc360
loadmovesprites
iftrue UnknownScript_0x58778
end
@@ -141,7 +141,7 @@ MapRuinsofAlphKabutoChamberSignpost4Script: ; 0x587db
loadfont
writetext UnknownText_0x58aa7
writebyte $0
- special $0087
+ special Function8ae68
loadmovesprites
end
; 0x587e6
@@ -152,7 +152,7 @@ MapRuinsofAlphKabutoChamberSignpost5Script: ; 0x587e6
loadfont
writetext UnknownText_0x58ad9
writebyte $0
- special $0087
+ special Function8ae68
loadmovesprites
end
; 0x587f7
diff --git a/maps/RuinsofAlphOmanyteChamber.asm b/maps/RuinsofAlphOmanyteChamber.asm
index 04f3bfa7d..0518c383f 100644
--- a/maps/RuinsofAlphOmanyteChamber.asm
+++ b/maps/RuinsofAlphOmanyteChamber.asm
@@ -15,7 +15,7 @@ RuinsofAlphOmanyteChamber_MapScriptHeader: ; 0x58bdc
; 0x58be9
UnknownScript_0x58be9: ; 0x58be9
- special $0084
+ special Function8adef
checkevent EVENT_WALL_OPENED_IN_OMANYTE_CHAMBER
iftrue UnknownScript_0x58bf3
end
@@ -63,7 +63,7 @@ UnknownScript_0x58c12: ; 0x58c12
MapRuinsofAlphOmanyteChamberSignpost2Script: ; 0x58c2a
refreshscreen $0
writebyte $1
- special $0029
+ special Functionc360
loadmovesprites
iftrue UnknownScript_0x58c36
end
@@ -101,7 +101,7 @@ MapRuinsofAlphOmanyteChamberSignpost4Script: ; 0x58c69
loadfont
writetext UnknownText_0x58c8e
writebyte $2
- special $0087
+ special Function8ae68
loadmovesprites
end
; 0x58c74
@@ -112,7 +112,7 @@ MapRuinsofAlphOmanyteChamberSignpost5Script: ; 0x58c74
loadfont
writetext UnknownText_0x58cc0
writebyte $2
- special $0087
+ special Function8ae68
loadmovesprites
end
; 0x58c85
diff --git a/maps/RuinsofAlphResearchCenter.asm b/maps/RuinsofAlphResearchCenter.asm
index 238f6d8b7..f925044d0 100644
--- a/maps/RuinsofAlphResearchCenter.asm
+++ b/maps/RuinsofAlphResearchCenter.asm
@@ -61,7 +61,7 @@ UnknownScript_0x59192: ; 0x59192
loadmovesprites
applymovement $4, MovementData_0x59276
dotrigger $0
- special $003d
+ special RestartMapMusic
end
; 0x591d1
@@ -183,7 +183,7 @@ UnknownScript_0x5925a: ; 0x5925a
UnknownScript_0x59260: ; 0x59260
writetext UnknownText_0x5982d
closetext
- special $0027
+ special Functionc2cd
loadmovesprites
end
; 0x59269
diff --git a/maps/SaffronPokeCenter1F.asm b/maps/SaffronPokeCenter1F.asm
index b334a24af..c05f93dd9 100644
--- a/maps/SaffronPokeCenter1F.asm
+++ b/maps/SaffronPokeCenter1F.asm
@@ -11,7 +11,7 @@ NurseScript_0x18a47d: ; 0x18a47d
; 0x18a480
TeacherScript_0x18a480: ; 0x18a480
- special $00a0
+ special Function10630f
iftrue UnknownScript_0x18a489
jumptextfaceplayer UnknownText_0x18a4a3
; 0x18a489
diff --git a/maps/SaffronTrainStation.asm b/maps/SaffronTrainStation.asm
index c809e94c2..453d23f9b 100644
--- a/maps/SaffronTrainStation.asm
+++ b/maps/SaffronTrainStation.asm
@@ -36,7 +36,7 @@ UnknownScript_0x18a82c: ; 0x18a82c
applymovement $2, MovementData_0x18a88f
applymovement $0, MovementData_0x18a898
writebyte $1
- special $0023
+ special Function8cc04
warpcheck
newloadmap $f9
applymovement $0, MovementData_0x18a854
diff --git a/maps/SilverCaveRoom3.asm b/maps/SilverCaveRoom3.asm
index cd4df3362..b855d0516 100644
--- a/maps/SilverCaveRoom3.asm
+++ b/maps/SilverCaveRoom3.asm
@@ -7,7 +7,7 @@ SilverCaveRoom3_MapScriptHeader: ; 0x18c601
; 0x18c603
RedScript_0x18c603: ; 0x18c603
- special $006a
+ special Functionc48f
faceplayer
loadfont
writetext UnknownText_0x18c637
@@ -18,18 +18,18 @@ RedScript_0x18c603: ; 0x18c603
startbattle
reloadmapmusic
returnafterbattle
- special $006a
+ special Functionc48f
loadfont
writetext UnknownText_0x18c63f
closetext
loadmovesprites
- special $0030
- special $0033
+ special Function8c0b6
+ special Functiond91
disappear $2
pause 15
- special $0032
+ special Function8c0ab
pause 30
- special $001b
+ special Functionc658
refreshscreen $0
credits
end
diff --git a/maps/SlowpokeWellB1F.asm b/maps/SlowpokeWellB1F.asm
index e1e017eee..c06792b43 100644
--- a/maps/SlowpokeWellB1F.asm
+++ b/maps/SlowpokeWellB1F.asm
@@ -64,14 +64,14 @@ GruntM1Script: ; 0x5a5f8
writetext TrainerGruntM1WhenTalkText
closetext
loadmovesprites
- special $0030
- special $0033
+ special Function8c0b6
+ special Functiond91
disappear $2
disappear $3
disappear $4
disappear $5
pause 15
- special $0032
+ special Function8c0ab
disappear $8
moveperson $8, $b, $6
appear $8
@@ -93,8 +93,8 @@ GruntM1Script: ; 0x5a5f8
clearevent $06f9
clearevent $06fd
clearevent $073e
- special $002e
- special $001b
+ special Function8c084
+ special Functionc658
pause 15
warp GROUP_KURTS_HOUSE, MAP_KURTS_HOUSE, $3, $3
end
diff --git a/maps/SproutTower3F.asm b/maps/SproutTower3F.asm
index 1db16e21c..4c2fb6805 100644
--- a/maps/SproutTower3F.asm
+++ b/maps/SproutTower3F.asm
@@ -21,7 +21,7 @@ UnknownScript_0x184946: ; 0x184946
UnknownScript_0x184947: ; 0x184947
spriteface $0, $1
showemote $0, $0, 15
- special $006a
+ special Functionc48f
playsound SFX_TACKLE
playsound SFX_ELEVATOR
earthquake 79
@@ -50,13 +50,13 @@ UnknownScript_0x184947: ; 0x184947
pause 15
loadmovesprites
playsound SFX_WARP_TO
- special $0030
- special $0033
+ special Function8c0b6
+ special Functiond91
disappear $8
waitbutton
- special $0032
+ special Function8c0ab
dotrigger $1
- special $003d
+ special RestartMapMusic
end
; 0x1849a6
diff --git a/maps/TeamRocketBaseB1F.asm b/maps/TeamRocketBaseB1F.asm
index 14152bdb1..dece0d88d 100644
--- a/maps/TeamRocketBaseB1F.asm
+++ b/maps/TeamRocketBaseB1F.asm
@@ -460,9 +460,9 @@ ExplodingTrap22: ; 0x6ca26
end
VoltorbExplodingTrap: ; 0x6ca34
- special $002e
+ special Function8c084
cry VOLTORB
- special $0031
+ special Function8c079
setlasttalked $ff
writecode $3, BATTLETYPE_TRAP
loadpokedata VOLTORB, 23
@@ -470,9 +470,9 @@ VoltorbExplodingTrap: ; 0x6ca34
end
GeodudeExplodingTrap: ; 0x6ca47
- special $002e
+ special Function8c084
cry GEODUDE
- special $0031
+ special Function8c079
setlasttalked $ff
writecode $3, BATTLETYPE_TRAP
loadpokedata GEODUDE, 21
@@ -480,9 +480,9 @@ GeodudeExplodingTrap: ; 0x6ca47
end
KoffingExplodingTrap: ; 0x6ca5a
- special $002e
+ special Function8c084
cry KOFFING
- special $0031
+ special Function8c079
setlasttalked $ff
writecode $3, BATTLETYPE_TRAP
loadpokedata KOFFING, 21
diff --git a/maps/TeamRocketBaseB2F.asm b/maps/TeamRocketBaseB2F.asm
index c51bb8c62..dbfd357ac 100644
--- a/maps/TeamRocketBaseB2F.asm
+++ b/maps/TeamRocketBaseB2F.asm
@@ -106,15 +106,15 @@ UnknownScript_0x6cfac: ; 0x6cfac
writetext UnknownText_0x6d4c6
closetext
loadmovesprites
- special $0030
- special $0033
+ special Function8c0b6
+ special Functiond91
disappear $2
disappear $3
disappear $c
disappear $d
disappear $e
pause 15
- special $0032
+ special Function8c0ab
dotrigger $2
clearevent $06d6
spriteface $4, $0
@@ -167,11 +167,11 @@ UnknownScript_0x6d091: ; 0x6d091
writetext UnknownText_0x6da97
closetext
loadmovesprites
- special $002e
- special $009d
+ special Function8c084
+ special Function1060a2
playsound SFX_FULL_HEAL
- special $001b
- special $0031
+ special Functionc658
+ special Function8c079
loadfont
writetext UnknownText_0x6daf7
closetext
@@ -292,7 +292,7 @@ VoltorbScript_0x6d101: ; 0x6d101
checkevent $06e2
iffalse UnknownScript_0x6d182
returnafterbattle
- special $003c
+ special PlayMapMusic
applymovement $0, MovementData_0x6d28c
jump UnknownScript_0x6d184
; 0x6d12c
@@ -311,7 +311,7 @@ VoltorbScript_0x6d12c: ; 0x6d12c
checkevent $06e2
iffalse UnknownScript_0x6d182
returnafterbattle
- special $003c
+ special PlayMapMusic
applymovement $0, MovementData_0x6d299
jump UnknownScript_0x6d184
; 0x6d157
@@ -330,7 +330,7 @@ VoltorbScript_0x6d157: ; 0x6d157
checkevent $06e2
iffalse UnknownScript_0x6d182
returnafterbattle
- special $003c
+ special PlayMapMusic
applymovement $0, MovementData_0x6d2a4
jump UnknownScript_0x6d184
; 0x6d182
diff --git a/maps/TeamRocketBaseB3F.asm b/maps/TeamRocketBaseB3F.asm
index 028a89825..c22068a46 100644
--- a/maps/TeamRocketBaseB3F.asm
+++ b/maps/TeamRocketBaseB3F.asm
@@ -63,7 +63,7 @@ LanceScript_0x6dffc: ; 0x6dffc
UnknownScript_0x6e019: ; 0x6e019
spriteface $0, $2
showemote $0, $0, 15
- special $006a
+ special Functionc48f
appear $a
applymovement $a, MovementData_0x6e164
spriteface $0, $2
@@ -77,7 +77,7 @@ UnknownScript_0x6e019: ; 0x6e019
applymovement $a, MovementData_0x6e16d
disappear $a
dotrigger $2
- special $003d
+ special RestartMapMusic
end
; 0x6e048
diff --git a/maps/TimeCapsule.asm b/maps/TimeCapsule.asm
index a6b7e4321..8e5b4e343 100644
--- a/maps/TimeCapsule.asm
+++ b/maps/TimeCapsule.asm
@@ -24,7 +24,7 @@ UnknownScript_0x1934fc: ; 0x1934fc
; 0x1934fd
UnknownScript_0x1934fd: ; 0x1934fd
- special $0010
+ special Function29f47
iffalse UnknownScript_0x193508
disappear $3
appear $2
@@ -44,7 +44,7 @@ UnknownScript_0x19350d: ; 0x19350d
; 0x193514
MapTimeCapsuleSignpost1Script: ; 0x193514
- special $000f
+ special Function29eaf
newloadmap $f8
end
; 0x19351a
diff --git a/maps/TinTower1F.asm b/maps/TinTower1F.asm
index 5820b8f2a..43ae52b69 100644
--- a/maps/TinTower1F.asm
+++ b/maps/TinTower1F.asm
@@ -30,7 +30,7 @@ UnknownScript_0x18502f: ; 0x18502f
iftrue UnknownScript_0x185047
checkevent $0044
iffalse UnknownScript_0x185050
- special $0096
+ special SpecialBeastsCheck
iffalse UnknownScript_0x185050
clearevent $07c5
setevent $07b6
@@ -47,7 +47,7 @@ UnknownScript_0x185050: ; 0x185050
iftrue UnknownScript_0x185077
appear $2
writebyte RAIKOU
- special $0097
+ special SpecialMonCheck
iftrue UnknownScript_0x185065
appear $3
jump UnknownScript_0x185067
@@ -57,7 +57,7 @@ UnknownScript_0x185065: ; 0x185065
disappear $3
UnknownScript_0x185067: ; 0x185067
writebyte ENTEI
- special $0097
+ special SpecialMonCheck
iftrue UnknownScript_0x185074
appear $4
jump UnknownScript_0x185076
@@ -90,7 +90,7 @@ UnknownScript_0x18508f: ; 0x18508f
applymovement $0, MovementData_0x1851cb
pause 15
writebyte RAIKOU
- special $0097
+ special SpecialMonCheck
iftrue UnknownScript_0x1850b6
applymovement $3, MovementData_0x1851d0
spriteface $0, $2
@@ -103,7 +103,7 @@ UnknownScript_0x18508f: ; 0x18508f
waitbutton
UnknownScript_0x1850b6: ; 0x1850b6
writebyte ENTEI
- special $0097
+ special SpecialMonCheck
iftrue UnknownScript_0x1850d7
applymovement $4, MovementData_0x1851da
spriteface $0, $3
@@ -167,7 +167,7 @@ UnknownScript_0x1850d7: ; 0x1850d7
playsound SFX_EXIT_BUILDING
disappear $5
waitbutton
- special $006a
+ special Functionc48f
pause 20
playmapmusic
end
diff --git a/maps/TradeCenter.asm b/maps/TradeCenter.asm
index 1075c169a..a87b10d9c 100644
--- a/maps/TradeCenter.asm
+++ b/maps/TradeCenter.asm
@@ -24,7 +24,7 @@ UnknownScript_0x1933ed: ; 0x1933ed
; 0x1933ee
UnknownScript_0x1933ee: ; 0x1933ee
- special $0010
+ special Function29f47
iffalse UnknownScript_0x1933f9
disappear $3
appear $2
@@ -44,7 +44,7 @@ UnknownScript_0x1933fe: ; 0x1933fe
; 0x193405
MapTradeCenterSignpost1Script: ; 0x193405
- special $000d
+ special Function29ec4
newloadmap $f8
end
; 0x19340b
diff --git a/maps/TrainerHouseB1F.asm b/maps/TrainerHouseB1F.asm
index 8c10eca11..9c65f4e9f 100644
--- a/maps/TrainerHouseB1F.asm
+++ b/maps/TrainerHouseB1F.asm
@@ -20,7 +20,7 @@ UnknownScript_0x9b38b: ; 0x9b38b
iftrue UnknownScript_0x9b3f7
writetext UnknownText_0x9b420
keeptextopen
- special $0067
+ special SpecialTrainerHouse
iffalse UnknownScript_0x9b3a6
trainertotext CAL, CAL2, $0
jump UnknownScript_0x9b3aa
@@ -43,7 +43,7 @@ UnknownScript_0x9b3aa: ; 0x9b3aa
writetext UnknownText_0x9b587
closetext
loadmovesprites
- special $0067
+ special SpecialTrainerHouse
iffalse UnknownScript_0x9b3dc
winlosstext UnknownText_0x9b578, $0000
setlasttalked $3
diff --git a/maps/UndergroundPathSwitchRoomEntrances.asm b/maps/UndergroundPathSwitchRoomEntrances.asm
index a32f88c77..264db76b7 100644
--- a/maps/UndergroundPathSwitchRoomEntrances.asm
+++ b/maps/UndergroundPathSwitchRoomEntrances.asm
@@ -86,7 +86,7 @@ TeacherScript_0x7ca7d: ; 0x7ca7d
UnknownScript_0x7ca80: ; 0x7ca80
spriteface $0, $3
showemote $0, $0, 15
- special $006a
+ special Functionc48f
pause 15
playsound SFX_EXIT_BUILDING
appear $c
@@ -106,7 +106,7 @@ UnknownScript_0x7ca80: ; 0x7ca80
UnknownScript_0x7caaa: ; 0x7caaa
spriteface $0, $3
showemote $0, $0, 15
- special $006a
+ special Functionc48f
pause 15
playsound SFX_EXIT_BUILDING
appear $c
diff --git a/maps/VermilionCity.asm b/maps/VermilionCity.asm
index 26a7fc6a0..f1dd6f2a7 100644
--- a/maps/VermilionCity.asm
+++ b/maps/VermilionCity.asm
@@ -43,7 +43,7 @@ SuperNerdScript_0x1aa99b: ; 0x1aa99b
BigSnorlaxScript_0x1aa99e: ; 0x1aa99e
loadfont
- special $0060
+ special SpecialSnorlaxAwake
iftrue UnknownScript_0x1aa9ab
writetext UnknownText_0x1aab64
closetext
diff --git a/maps/VermilionPort.asm b/maps/VermilionPort.asm
index c0e155db5..914511b18 100644
--- a/maps/VermilionPort.asm
+++ b/maps/VermilionPort.asm
@@ -57,7 +57,7 @@ SailorScript_0x74dc4: ; 0x74dc4
waitbutton
applymovement $0, MovementData_0x74ef1
playsound SFX_EXIT_BUILDING
- special $002e
+ special Function8c084
waitbutton
setevent $073a
clearevent $073b
diff --git a/maps/VictoryRoad.asm b/maps/VictoryRoad.asm
index 7a87a72ad..003249b6c 100644
--- a/maps/VictoryRoad.asm
+++ b/maps/VictoryRoad.asm
@@ -22,7 +22,7 @@ UnknownScript_0x74492: ; 0x74492
moveperson $2, $12, $b
spriteface $0, $0
showemote $0, $0, 15
- special $006a
+ special Functionc48f
pause 15
appear $2
applymovement $2, MovementData_0x74539
@@ -37,7 +37,7 @@ UnknownScript_0x74492: ; 0x74492
UnknownScript_0x744b5: ; 0x744b5
spriteface $0, $0
showemote $0, $0, 15
- special $006a
+ special Functionc48f
pause 15
appear $2
applymovement $2, MovementData_0x74542
diff --git a/maps/VioletCity.asm b/maps/VioletCity.asm
index c04ad8069..316818371 100644
--- a/maps/VioletCity.asm
+++ b/maps/VioletCity.asm
@@ -42,7 +42,7 @@ UnknownScript_0x1a83d1: ; 0x1a83d1
spriteface $0, $1
applymovement $2, MovementData_0x1a8465
stopfollow
- special $003d
+ special RestartMapMusic
loadfont
writetext UnknownText_0x1a84f9
closetext
diff --git a/maps/WarehouseEntrance.asm b/maps/WarehouseEntrance.asm
index 929e7a98d..b80f29cee 100644
--- a/maps/WarehouseEntrance.asm
+++ b/maps/WarehouseEntrance.asm
@@ -272,7 +272,7 @@ SuperNerdScript_0x7c161: ; 0x7c161
UnknownScript_0x7c173: ; 0x7c173
checkflag $005a
iftrue UnknownScript_0x7c208
- special $0051
+ special Function24ae8
writetext UnknownText_0x7c5f9
yesorno
iffalse UnknownScript_0x7c1fc
@@ -280,7 +280,7 @@ UnknownScript_0x7c173: ; 0x7c173
if_equal $2, UnknownScript_0x7c202
writetext UnknownText_0x7c69a
keeptextopen
- special $0061
+ special Function7413
if_equal $0, UnknownScript_0x7c1fc
if_equal $1, UnknownScript_0x7c1fc
setflag $005a
@@ -312,15 +312,15 @@ UnknownScript_0x7c1c1: ; 0x7c1c1
UnknownScript_0x7c1cd: ; 0x7c1cd
takemoney $0, 500
- special $0051
+ special Function24ae8
writetext UnknownText_0x7c6b8
closetext
loadmovesprites
- special $002e
+ special Function8c084
playmusic MUSIC_HEAL
pause 60
- special $0031
- special $003d
+ special Function8c079
+ special RestartMapMusic
loadfont
writetext UnknownText_0x7c6d8
closetext
@@ -364,7 +364,7 @@ SuperNerdScript_0x7c20e: ; 0x7c20e
UnknownScript_0x7c220: ; 0x7c220
checkflag $005a
iftrue UnknownScript_0x7c2b5
- special $0051
+ special Function24ae8
writetext UnknownText_0x7c75c
yesorno
iffalse UnknownScript_0x7c2a9
@@ -372,7 +372,7 @@ UnknownScript_0x7c220: ; 0x7c220
if_equal $2, UnknownScript_0x7c2af
writetext UnknownText_0x7c7f1
keeptextopen
- special $0062
+ special Function7418
if_equal $0, UnknownScript_0x7c2a9
if_equal $1, UnknownScript_0x7c2a9
setflag $005a
@@ -404,15 +404,15 @@ UnknownScript_0x7c26e: ; 0x7c26e
UnknownScript_0x7c27a: ; 0x7c27a
takemoney $0, 300
- special $0051
+ special Function24ae8
writetext UnknownText_0x7c80e
closetext
loadmovesprites
- special $002e
+ special Function8c084
playmusic MUSIC_HEAL
pause 60
- special $0031
- special $003d
+ special Function8c079
+ special RestartMapMusic
loadfont
writetext UnknownText_0x7c82a
closetext
@@ -446,7 +446,7 @@ UnknownScript_0x7c2b5: ; 0x7c2b5
UnknownScript_0x7c2bb: ; 0x7c2bb
writetext UnknownText_0x7c8bf
- special $0064
+ special Functionc472
closetext
loadmovesprites
end
@@ -454,7 +454,7 @@ UnknownScript_0x7c2bb: ; 0x7c2bb
UnknownScript_0x7c2c4: ; 0x7c2c4
writetext UnknownText_0x7c8dc
- special $0064
+ special Functionc472
closetext
loadmovesprites
end
@@ -462,7 +462,7 @@ UnknownScript_0x7c2c4: ; 0x7c2c4
UnknownScript_0x7c2cd: ; 0x7c2cd
writetext UnknownText_0x7c8ee
- special $0064
+ special Functionc472
closetext
loadmovesprites
end
diff --git a/maps/map_headers.asm b/maps/map_headers.asm
index 90cb1f415..36768a54d 100644
--- a/maps/map_headers.asm
+++ b/maps/map_headers.asm
@@ -1,11 +1,3 @@
-map_header: MACRO
- ; label, tileset, permission, location, music, time of day, fishing group
-\1_MapHeader:
- db BANK(\1_SecondMapHeader), \2, \3
- dw \1_SecondMapHeader
- db \4, \5, \6, \7
-ENDM
-
MapGroupPointers:: ; 0x94000
; pointers to the first map header of each map group
diff --git a/maps/second_map_headers.asm b/maps/second_map_headers.asm
index 086dbaf04..0651dd9d1 100644
--- a/maps/second_map_headers.asm
+++ b/maps/second_map_headers.asm
@@ -1,1357 +1,281 @@
-map_header_2: MACRO
-; label, map, border block, connections
-\1_SecondMapHeader::
- db \3
-\2\@HEIGHT EQUS "\2_HEIGHT"
-\2\@WIDTH EQUS "\2_WIDTH"
- db \2\@HEIGHT, \2\@WIDTH
- db BANK(\1_BlockData)
- dw \1_BlockData
- db BANK(\1_MapScriptHeader)
- dw \1_MapScriptHeader
- dw \1_MapEventHeader
- db \4
-ENDM
map_header_2 NewBarkTown, NEW_BARK_TOWN, $5, WEST | EAST ; 0x94dd8
-
- ; WEST to Route 29
- map ROUTE_29
- dw (Route29_BlockData + ROUTE_29_WIDTH - 3) ; strip pointer
- dw $c830 ; strip destination
- db 9, ROUTE_29_WIDTH ; (connection strip length, connected map width)
- db 0, ((ROUTE_29_WIDTH * 2) - 1) ; yoffset, xoffset
- dw ($C807 + 59) ; window
-
- ; EAST to Route 27
- map ROUTE_27
- dw (Route27_BlockData) ; strip pointer
- dw $c83d ; strip destination
- db 9, ROUTE_27_WIDTH ; (connection strip length, connected map width)
- db 0, 0 ; yoffset, xoffset
- dw ($C807 + ROUTE_27_WIDTH) ; window
-; 0x94dfc
+ connection west, ROUTE_29, Route29, 0, 0, 9, NEW_BARK_TOWN
+ connection east, ROUTE_27, Route27, 0, 0, 9, NEW_BARK_TOWN
map_header_2 CherrygroveCity, CHERRYGROVE_CITY, $35, NORTH | EAST ; 0x94dfc
-
- ; NORTH to Route 30
- map ROUTE_30
- dw (Route30_BlockData + (ROUTE_30_HEIGHT * ROUTE_30_WIDTH) - (ROUTE_30_WIDTH * 3)) ; strip pointer
- dw ($C703 + 261) ; strip destination
- db 10, ROUTE_30_WIDTH ; (connection strip length, connected map width)
- db ((ROUTE_30_HEIGHT * 2) - 1), 246 ; yoffset, xoffset
- dw ($C801 + ((ROUTE_30_HEIGHT * 6) + (ROUTE_30_HEIGHT * ROUTE_30_WIDTH))) ; window
-
- ; EAST to Route 29
- map ROUTE_29
- dw (Route29_BlockData) ; strip pointer
- dw $c865 ; strip destination
- db 9, ROUTE_29_WIDTH ; (connection strip length, connected map width)
- db 0, 0 ; yoffset, xoffset
- dw ($C807 + ROUTE_29_WIDTH) ; window
-; 0x94e20
+ connection north, ROUTE_30, Route30, 5, 0, 10, CHERRYGROVE_CITY
+ connection east, ROUTE_29, Route29, 0, 0, 9, CHERRYGROVE_CITY
map_header_2 VioletCity, VIOLET_CITY, $5, SOUTH | WEST | EAST ; 0x94e20
-
- ; SOUTH to Route 32
- map ROUTE_32
- dw (Route32_BlockData) ; strip pointer
- dw ($C703 + 256 + ((VIOLET_CITY_HEIGHT + 3) * (VIOLET_CITY_WIDTH + 6))) ; strip destination
- db 10, ROUTE_32_WIDTH ; (connection strip length, connected map width)
- db 0, 0 ; yoffset, xoffset
- dw ($C807 + ROUTE_32_WIDTH) ; window
-
- ; WEST to Route 36
- map ROUTE_36
- dw (Route36_BlockData + ROUTE_36_WIDTH - 3) ; strip pointer
- dw $c84e ; strip destination
- db 9, ROUTE_36_WIDTH ; (connection strip length, connected map width)
- db 0, ((ROUTE_36_WIDTH * 2) - 1) ; yoffset, xoffset
- dw ($C807 + 59) ; window
-
- ; EAST to Route 31
- map ROUTE_31
- dw (Route31_BlockData) ; strip pointer
- dw $c94f ; strip destination
- db 9, ROUTE_31_WIDTH ; (connection strip length, connected map width)
- db 238, 0 ; yoffset, xoffset
- dw ($C807 + ROUTE_31_WIDTH) ; window
-; 0x94e50
+ connection south, ROUTE_32, Route32, 0, 0, 10, VIOLET_CITY
+ connection west, ROUTE_36, Route36, 0, 0, 9, VIOLET_CITY
+ connection east, ROUTE_31, Route31, 9, 0, 9, VIOLET_CITY
map_header_2 AzaleaTown, AZALEA_TOWN, $5, WEST | EAST ; 0x94e50
-
- ; WEST to Route 34
- map ROUTE_34
- dw (Route34_BlockData + (((ROUTE_34_HEIGHT - AZALEA_TOWN_HEIGHT) * ROUTE_34_WIDTH) - (ROUTE_34_WIDTH * 3) + (ROUTE_34_WIDTH - 1) - 2)) ; strip pointer
- dw $c800 ; strip destination
- db 12, ROUTE_34_WIDTH ; (connection strip length, connected map width)
- db 36, ((ROUTE_34_WIDTH * 2) - 1) ; yoffset, xoffset
- dw ($C807 + 19) ; window
-
- ; EAST to Route 33
- map ROUTE_33
- dw (Route33_BlockData) ; strip pointer
- dw $c865 ; strip destination
- db 9, ROUTE_33_WIDTH ; (connection strip length, connected map width)
- db 0, 0 ; yoffset, xoffset
- dw ($C807 + ROUTE_33_WIDTH) ; window
-; 0x94e74
+ connection west, ROUTE_34, Route34, -3, 15, 12, AZALEA_TOWN
+ connection east, ROUTE_33, Route33, 0, 0, 9, AZALEA_TOWN
map_header_2 CianwoodCity, CIANWOOD_CITY, $35, EAST ; 0x94e74
-
- ; EAST to Route 41
- map ROUTE_41
- dw (Route41_BlockData) ; strip pointer
- dw $c851 ; strip destination
- db 27, ROUTE_41_WIDTH ; (connection strip length, connected map width)
- db 0, 0 ; yoffset, xoffset
- dw ($C807 + ROUTE_41_WIDTH) ; window
-; 0x94e8c
+ connection east, ROUTE_41, Route41, 0, 0, 27, CIANWOOD_CITY
map_header_2 GoldenrodCity, GOLDENROD_CITY, $35, NORTH | SOUTH ; 0x94e8c
-
- ; NORTH to Route 35
- map ROUTE_35
- dw (Route35_BlockData + (ROUTE_35_HEIGHT * ROUTE_35_WIDTH) - (ROUTE_35_WIDTH * 3)) ; strip pointer
- dw ($C703 + 261) ; strip destination
- db 10, ROUTE_35_WIDTH ; (connection strip length, connected map width)
- db ((ROUTE_35_HEIGHT * 2) - 1), 246 ; yoffset, xoffset
- dw ($C801 + ((ROUTE_35_HEIGHT * 6) + (ROUTE_35_HEIGHT * ROUTE_35_WIDTH))) ; window
-
- ; SOUTH to Route 34
- map ROUTE_34
- dw (Route34_BlockData) ; strip pointer
- dw ($C703 + 261 + ((GOLDENROD_CITY_HEIGHT + 3) * (GOLDENROD_CITY_WIDTH + 6))) ; strip destination
- db 10, ROUTE_34_WIDTH ; (connection strip length, connected map width)
- db 0, 246 ; yoffset, xoffset
- dw ($C807 + ROUTE_34_WIDTH) ; window
-; 0x94eb0
+ connection north, ROUTE_35, Route35, 5, 0, 10, GOLDENROD_CITY
+ connection south, ROUTE_34, Route34, 5, 0, 10, GOLDENROD_CITY
map_header_2 OlivineCity, OLIVINE_CITY, $35, NORTH | WEST ; 0x94eb0
-
- ; NORTH to Route 39
- map ROUTE_39
- dw (Route39_BlockData + (ROUTE_39_HEIGHT * ROUTE_39_WIDTH) - (ROUTE_39_WIDTH * 3)) ; strip pointer
- dw ($C703 + 261) ; strip destination
- db 10, ROUTE_39_WIDTH ; (connection strip length, connected map width)
- db ((ROUTE_39_HEIGHT * 2) - 1), 246 ; yoffset, xoffset
- dw ($C801 + ((ROUTE_39_HEIGHT * 6) + (ROUTE_39_HEIGHT * ROUTE_39_WIDTH))) ; window
-
- ; WEST to Route 40
- map ROUTE_40
- dw (Route40_BlockData + ROUTE_40_WIDTH - 3) ; strip pointer
- dw $c938 ; strip destination
- db 12, ROUTE_40_WIDTH ; (connection strip length, connected map width)
- db 238, ((ROUTE_40_WIDTH * 2) - 1) ; yoffset, xoffset
- dw ($C807 + 19) ; window
-; 0x94ed4
+ connection north, ROUTE_39, Route39, 5, 0, 10, OLIVINE_CITY
+ connection west, ROUTE_40, Route40, 9, 0, 12, OLIVINE_CITY
map_header_2 EcruteakCity, ECRUTEAK_CITY, $5, SOUTH | WEST | EAST ; 0x94ed4
-
- ; SOUTH to Route 37
- map ROUTE_37
- dw (Route37_BlockData) ; strip pointer
- dw ($C703 + 261 + ((ECRUTEAK_CITY_HEIGHT + 3) * (ECRUTEAK_CITY_WIDTH + 6))) ; strip destination
- db 10, ROUTE_37_WIDTH ; (connection strip length, connected map width)
- db 0, 246 ; yoffset, xoffset
- dw ($C807 + ROUTE_37_WIDTH) ; window
-
- ; WEST to Route 38
- map ROUTE_38
- dw (Route38_BlockData + ROUTE_38_WIDTH - 3) ; strip pointer
- dw $c8d0 ; strip destination
- db 9, ROUTE_38_WIDTH ; (connection strip length, connected map width)
- db 246, ((ROUTE_38_WIDTH * 2) - 1) ; yoffset, xoffset
- dw ($C807 + 39) ; window
-
- ; EAST to Route 42
- map ROUTE_42
- dw (Route42_BlockData) ; strip pointer
- dw $c94f ; strip destination
- db 9, ROUTE_42_WIDTH ; (connection strip length, connected map width)
- db 238, 0 ; yoffset, xoffset
- dw ($C807 + ROUTE_42_WIDTH) ; window
-; 0x94f04
+ connection south, ROUTE_37, Route37, 5, 0, 10, ECRUTEAK_CITY
+ connection west, ROUTE_38, Route38, 5, 0, 9, ECRUTEAK_CITY
+ connection east, ROUTE_42, Route42, 9, 0, 9, ECRUTEAK_CITY
map_header_2 MahoganyTown, MAHOGANY_TOWN, $71, NORTH | WEST | EAST ; 0x94f04
-
- ; NORTH to Route 43
- map ROUTE_43
- dw (Route43_BlockData + (ROUTE_43_HEIGHT * ROUTE_43_WIDTH) - (ROUTE_43_WIDTH * 3)) ; strip pointer
- dw ($C703 + 256) ; strip destination
- db 10, ROUTE_43_WIDTH ; (connection strip length, connected map width)
- db ((ROUTE_43_HEIGHT * 2) - 1), 0 ; yoffset, xoffset
- dw ($C801 + ((ROUTE_43_HEIGHT * 6) + (ROUTE_43_HEIGHT * ROUTE_43_WIDTH))) ; window
-
- ; WEST to Route 42
- map ROUTE_42
- dw (Route42_BlockData + ROUTE_42_WIDTH - 3) ; strip pointer
- dw $c830 ; strip destination
- db 9, ROUTE_42_WIDTH ; (connection strip length, connected map width)
- db 0, ((ROUTE_42_WIDTH * 2) - 1) ; yoffset, xoffset
- dw ($C807 + 59) ; window
-
- ; EAST to Route 44
- map ROUTE_44
- dw (Route44_BlockData) ; strip pointer
- dw $c83d ; strip destination
- db 9, ROUTE_44_WIDTH ; (connection strip length, connected map width)
- db 0, 0 ; yoffset, xoffset
- dw ($C807 + ROUTE_44_WIDTH) ; window
-; 0x94f34
+ connection north, ROUTE_43, Route43, 0, 0, 10, MAHOGANY_TOWN
+ connection west, ROUTE_42, Route42, 0, 0, 9, MAHOGANY_TOWN
+ connection east, ROUTE_44, Route44, 0, 0, 9, MAHOGANY_TOWN
map_header_2 LakeofRage, LAKE_OF_RAGE, $5, SOUTH ; 0x94f34
-
- ; SOUTH to Route 43
- map ROUTE_43
- dw (Route43_BlockData) ; strip pointer
- dw ($C703 + 261 + ((LAKE_OF_RAGE_HEIGHT + 3) * (LAKE_OF_RAGE_WIDTH + 6))) ; strip destination
- db 10, ROUTE_43_WIDTH ; (connection strip length, connected map width)
- db 0, 246 ; yoffset, xoffset
- dw ($C807 + ROUTE_43_WIDTH) ; window
-; 0x94f4c
+ connection south, ROUTE_43, Route43, 5, 0, 10, LAKE_OF_RAGE
map_header_2 BlackthornCity, BLACKTHORN_CITY, $71, SOUTH | WEST ; 0x94f4c
-
- ; SOUTH to Route 45
- map ROUTE_45
- dw (Route45_BlockData) ; strip pointer
- dw ($C703 + 256 + ((BLACKTHORN_CITY_HEIGHT + 3) * (BLACKTHORN_CITY_WIDTH + 6))) ; strip destination
- db 10, ROUTE_45_WIDTH ; (connection strip length, connected map width)
- db 0, 0 ; yoffset, xoffset
- dw ($C807 + ROUTE_45_WIDTH) ; window
-
- ; WEST to Route 44
- map ROUTE_44
- dw (Route44_BlockData + ROUTE_44_WIDTH - 3) ; strip pointer
- dw $c938 ; strip destination
- db 9, ROUTE_44_WIDTH ; (connection strip length, connected map width)
- db 238, ((ROUTE_44_WIDTH * 2) - 1) ; yoffset, xoffset
- dw ($C807 + 59) ; window
-; 0x94f70
+ connection south, ROUTE_45, Route45, 0, 0, 10, BLACKTHORN_CITY
+ connection west, ROUTE_44, Route44, 9, 0, 9, BLACKTHORN_CITY
map_header_2 SilverCaveOutside, SILVER_CAVE_OUTSIDE, $2c, EAST ; 0x94f70
-
- ; EAST to Route 28
- map ROUTE_28
- dw (Route28_BlockData) ; strip pointer
- dw $c94f ; strip destination
- db 9, ROUTE_28_WIDTH ; (connection strip length, connected map width)
- db 238, 0 ; yoffset, xoffset
- dw ($C807 + ROUTE_28_WIDTH) ; window
-; 0x94f88
+ connection east, ROUTE_28, Route28, 9, 0, 9, SILVER_CAVE_OUTSIDE
map_header_2 Route26, ROUTE_26, $5, WEST ; 0x94f88
-
- ; WEST to Route 27
- map ROUTE_27
- dw (Route27_BlockData + ROUTE_27_WIDTH - 3) ; strip pointer
- dw $cb00 ; strip destination
- db 9, ROUTE_27_WIDTH ; (connection strip length, connected map width)
- db 166, ((ROUTE_27_WIDTH * 2) - 1) ; yoffset, xoffset
- dw ($C807 + 79) ; window
-; 0x94fa0
+ connection west, ROUTE_27, Route27, 45, 0, 9, ROUTE_26
map_header_2 Route27, ROUTE_27, $35, WEST | EAST ; 0x94fa0
-
- ; WEST to New Bark Town
- map NEW_BARK_TOWN
- dw (NewBarkTown_BlockData + NEW_BARK_TOWN_WIDTH - 3) ; strip pointer
- dw $c88a ; strip destination
- db 9, NEW_BARK_TOWN_WIDTH ; (connection strip length, connected map width)
- db 0, ((NEW_BARK_TOWN_WIDTH * 2) - 1) ; yoffset, xoffset
- dw ($C807 + 19) ; window
-
- ; EAST to Route 26
- map ROUTE_26
- dw (Route26_BlockData + ((ROUTE_26_HEIGHT - 12) * ROUTE_26_WIDTH)) ; strip pointer
- dw $c82b ; strip destination
- db 12, ROUTE_26_WIDTH ; (connection strip length, connected map width)
- db 90, 0 ; yoffset, xoffset
- dw ($C807 + ROUTE_26_WIDTH) ; window
-; 0x94fc4
+ connection west, NEW_BARK_TOWN, NewBarkTown, 0, 0, 9, ROUTE_27
+ connection east, ROUTE_26, Route26, -3, 42, 12, ROUTE_27
map_header_2 Route28, ROUTE_28, $2c, WEST ; 0x94fc4
-
- ; WEST to Silver Cave Outside
- map SILVER_CAVE_OUTSIDE
- dw (SilverCaveOutside_BlockData + (((SILVER_CAVE_OUTSIDE_HEIGHT - ROUTE_28_HEIGHT) * SILVER_CAVE_OUTSIDE_WIDTH) - (SILVER_CAVE_OUTSIDE_WIDTH * 3) + (SILVER_CAVE_OUTSIDE_WIDTH - 1) - 2)) ; strip pointer
- dw $c800 ; strip destination
- db 12, SILVER_CAVE_OUTSIDE_WIDTH ; (connection strip length, connected map width)
- db 18, ((SILVER_CAVE_OUTSIDE_WIDTH * 2) - 1) ; yoffset, xoffset
- dw ($C807 + 39) ; window
-; 0x94fdc
+ connection west, SILVER_CAVE_OUTSIDE, SilverCaveOutside, -3, 6, 12, ROUTE_28
map_header_2 Route29, ROUTE_29, $5, NORTH | WEST | EAST ; 0x94fdc
-
- ; NORTH to Route 46
- map ROUTE_46
- dw (Route46_BlockData + (ROUTE_46_HEIGHT * ROUTE_46_WIDTH) - (ROUTE_46_WIDTH * 3)) ; strip pointer
- dw ($C703 + 266) ; strip destination
- db 10, ROUTE_46_WIDTH ; (connection strip length, connected map width)
- db ((ROUTE_46_HEIGHT * 2) - 1), 236 ; yoffset, xoffset
- dw ($C801 + ((ROUTE_46_HEIGHT * 6) + (ROUTE_46_HEIGHT * ROUTE_46_WIDTH))) ; window
-
- ; WEST to Cherrygrove City
- map CHERRYGROVE_CITY
- dw (CherrygroveCity_BlockData + CHERRYGROVE_CITY_WIDTH - 3) ; strip pointer
- dw $c86c ; strip destination
- db 9, CHERRYGROVE_CITY_WIDTH ; (connection strip length, connected map width)
- db 0, ((CHERRYGROVE_CITY_WIDTH * 2) - 1) ; yoffset, xoffset
- dw ($C807 + 39) ; window
-
- ; EAST to New Bark Town
- map NEW_BARK_TOWN
- dw (NewBarkTown_BlockData) ; strip pointer
- dw $c88d ; strip destination
- db 9, NEW_BARK_TOWN_WIDTH ; (connection strip length, connected map width)
- db 0, 0 ; yoffset, xoffset
- dw ($C807 + NEW_BARK_TOWN_WIDTH) ; window
-; 0x9500c
+ connection north, ROUTE_46, Route46, 10, 0, 10, ROUTE_29
+ connection west, CHERRYGROVE_CITY, CherrygroveCity, 0, 0, 9, ROUTE_29
+ connection east, NEW_BARK_TOWN, NewBarkTown, 0, 0, 9, ROUTE_29
map_header_2 Route30, ROUTE_30, $5, NORTH | SOUTH ; 0x9500c
-
- ; NORTH to Route 31
- map ROUTE_31
- dw (Route31_BlockData + ((ROUTE_31_HEIGHT - 3) * ROUTE_31_WIDTH) + 7) ; strip pointer
- dw ($C703 + 253) ; strip destination
- db 13, ROUTE_31_WIDTH ; (connection strip length, connected map width)
- db ((ROUTE_31_HEIGHT * 2) - 1), 20 ; yoffset, xoffset
- dw ($C801 + ((ROUTE_31_HEIGHT * 6) + (ROUTE_31_HEIGHT * ROUTE_31_WIDTH))) ; window
-
- ; SOUTH to Cherrygrove City
- map CHERRYGROVE_CITY
- dw (CherrygroveCity_BlockData + ((10 - 16 + ROUTE_30_WIDTH) / 2)) ; strip pointer
- dw ($C703 + 253 + ((ROUTE_30_HEIGHT + 3) * (ROUTE_30_WIDTH + 6))) ; strip destination
- db 16, CHERRYGROVE_CITY_WIDTH ; (connection strip length, connected map width)
- db 0, 10 ; yoffset, xoffset
- dw ($C807 + CHERRYGROVE_CITY_WIDTH) ; window
-; 0x95030
+ connection north, ROUTE_31, Route31, -3, 7, 13, ROUTE_30
+ connection south, CHERRYGROVE_CITY, CherrygroveCity, -3, 2, 16, ROUTE_30
map_header_2 Route31, ROUTE_31, $5, SOUTH | WEST ; 0x95030
-
- ; SOUTH to Route 30
- map ROUTE_30
- dw (Route30_BlockData) ; strip pointer
- dw ($C703 + 266 + ((ROUTE_31_HEIGHT + 3) * (ROUTE_31_WIDTH + 6))) ; strip destination
- db 10, ROUTE_30_WIDTH ; (connection strip length, connected map width)
- db 0, 236 ; yoffset, xoffset
- dw ($C807 + ROUTE_30_WIDTH) ; window
-
- ; WEST to Violet City
- map VIOLET_CITY
- dw (VioletCity_BlockData + (((VIOLET_CITY_HEIGHT - ROUTE_31_HEIGHT) * VIOLET_CITY_WIDTH) - (VIOLET_CITY_WIDTH * 3) + (VIOLET_CITY_WIDTH - 1) - 2)) ; strip pointer
- dw $c800 ; strip destination
- db 12, VIOLET_CITY_WIDTH ; (connection strip length, connected map width)
- db 18, ((VIOLET_CITY_WIDTH * 2) - 1) ; yoffset, xoffset
- dw ($C807 + 39) ; window
-; 0x95054
+ connection south, ROUTE_30, Route30, 10, 0, 10, ROUTE_31
+ connection west, VIOLET_CITY, VioletCity, -3, 6, 12, ROUTE_31
map_header_2 Route32, ROUTE_32, $5, NORTH | SOUTH ; 0x95054
-
- ; NORTH to Violet City
- map VIOLET_CITY
- dw (VioletCity_BlockData + (VIOLET_CITY_HEIGHT * VIOLET_CITY_WIDTH) - (VIOLET_CITY_WIDTH * 3)) ; strip pointer
- dw ($C703 + 256) ; strip destination
- db 13, VIOLET_CITY_WIDTH ; (connection strip length, connected map width)
- db ((VIOLET_CITY_HEIGHT * 2) - 1), 0 ; yoffset, xoffset
- dw ($C801 + ((VIOLET_CITY_HEIGHT * 6) + (VIOLET_CITY_HEIGHT * VIOLET_CITY_WIDTH))) ; window
-
- ; SOUTH to Route 33
- map ROUTE_33
- dw (Route33_BlockData) ; strip pointer
- dw ($C703 + 256 + ((ROUTE_32_HEIGHT + 3) * (ROUTE_32_WIDTH + 6))) ; strip destination
- db 10, ROUTE_33_WIDTH ; (connection strip length, connected map width)
- db 0, 0 ; yoffset, xoffset
- dw ($C807 + ROUTE_33_WIDTH) ; window
-; 0x95078
+ connection north, VIOLET_CITY, VioletCity, 0, 0, 13, ROUTE_32
+ connection south, ROUTE_33, Route33, 0, 0, 10, ROUTE_32
map_header_2 Route33, ROUTE_33, $5, NORTH | WEST ; 0x95078
-
- ; NORTH to Route 32
- map ROUTE_32
- dw (Route32_BlockData + (ROUTE_32_HEIGHT * ROUTE_32_WIDTH) - (ROUTE_32_WIDTH * 3)) ; strip pointer
- dw ($C703 + 256) ; strip destination
- db 10, ROUTE_32_WIDTH ; (connection strip length, connected map width)
- db ((ROUTE_32_HEIGHT * 2) - 1), 0 ; yoffset, xoffset
- dw ($C801 + ((ROUTE_32_HEIGHT * 6) + (ROUTE_32_HEIGHT * ROUTE_32_WIDTH))) ; window
-
- ; WEST to Azalea Town
- map AZALEA_TOWN
- dw (AzaleaTown_BlockData + AZALEA_TOWN_WIDTH - 3) ; strip pointer
- dw $c830 ; strip destination
- db 9, AZALEA_TOWN_WIDTH ; (connection strip length, connected map width)
- db 0, ((AZALEA_TOWN_WIDTH * 2) - 1) ; yoffset, xoffset
- dw ($C807 + 39) ; window
-; 0x9509c
+ connection north, ROUTE_32, Route32, 0, 0, 10, ROUTE_33
+ connection west, AZALEA_TOWN, AzaleaTown, 0, 0, 9, ROUTE_33
map_header_2 Route34, ROUTE_34, $5, NORTH | EAST ; 0x9509c
-
- ; NORTH to Goldenrod City
- map GOLDENROD_CITY
- dw (GoldenrodCity_BlockData + GOLDENROD_CITY_WIDTH + 10 + (16 * GOLDENROD_CITY_HEIGHT) - 16) ; strip pointer
- dw ($C703 + 253) ; strip destination
- db 16, GOLDENROD_CITY_WIDTH ; (connection strip length, connected map width)
- db ((GOLDENROD_CITY_HEIGHT * 2) - 1), 10 ; yoffset, xoffset
- dw ($C801 + ((GOLDENROD_CITY_HEIGHT * 6) + (GOLDENROD_CITY_HEIGHT * GOLDENROD_CITY_WIDTH))) ; window
-
- ; EAST to Azalea Town
- map AZALEA_TOWN
- dw (AzaleaTown_BlockData) ; strip pointer
- dw $c95d ; strip destination
- db 9, AZALEA_TOWN_WIDTH ; (connection strip length, connected map width)
- db 220, 0 ; yoffset, xoffset
- dw ($C807 + AZALEA_TOWN_WIDTH) ; window
-; 0x950c0
+ connection north, GOLDENROD_CITY, GoldenrodCity, -3, 2, 16, ROUTE_34
+ connection east, AZALEA_TOWN, AzaleaTown, 18, 0, 9, ROUTE_34
map_header_2 Route35, ROUTE_35, $5, NORTH | SOUTH ; 0x950c0
-
- ; NORTH to Route 36
- map ROUTE_36
- dw (Route36_BlockData + (ROUTE_36_HEIGHT * ROUTE_36_WIDTH) - (ROUTE_36_WIDTH * 3)) ; strip pointer
- dw ($C703 + 256) ; strip destination
- db 13, ROUTE_36_WIDTH ; (connection strip length, connected map width)
- db ((ROUTE_36_HEIGHT * 2) - 1), 0 ; yoffset, xoffset
- dw ($C801 + ((ROUTE_36_HEIGHT * 6) + (ROUTE_36_HEIGHT * ROUTE_36_WIDTH))) ; window
-
- ; SOUTH to Goldenrod City
- map GOLDENROD_CITY
- dw (GoldenrodCity_BlockData + ((10 - 16 + ROUTE_35_WIDTH) / 2)) ; strip pointer
- dw ($C703 + 253 + ((ROUTE_35_HEIGHT + 3) * (ROUTE_35_WIDTH + 6))) ; strip destination
- db 16, GOLDENROD_CITY_WIDTH ; (connection strip length, connected map width)
- db 0, 10 ; yoffset, xoffset
- dw ($C807 + GOLDENROD_CITY_WIDTH) ; window
-; 0x950e4
+ connection north, ROUTE_36, Route36, 0, 0, 13, ROUTE_35
+ connection south, GOLDENROD_CITY, GoldenrodCity, -3, 2, 16, ROUTE_35
map_header_2 Route36, ROUTE_36, $5, NORTH | SOUTH | EAST ; 0x950e4
-
- ; NORTH to Route 37
- map ROUTE_37
- dw (Route37_BlockData + (ROUTE_37_HEIGHT * ROUTE_37_WIDTH) - (ROUTE_37_WIDTH * 3)) ; strip pointer
- dw ($C703 + 266) ; strip destination
- db 10, ROUTE_37_WIDTH ; (connection strip length, connected map width)
- db ((ROUTE_37_HEIGHT * 2) - 1), 236 ; yoffset, xoffset
- dw ($C801 + ((ROUTE_37_HEIGHT * 6) + (ROUTE_37_HEIGHT * ROUTE_37_WIDTH))) ; window
-
- ; SOUTH to Route 35
- map ROUTE_35
- dw (Route35_BlockData) ; strip pointer
- dw ($C703 + 256 + ((ROUTE_36_HEIGHT + 3) * (ROUTE_36_WIDTH + 6))) ; strip destination
- db 10, ROUTE_35_WIDTH ; (connection strip length, connected map width)
- db 0, 0 ; yoffset, xoffset
- dw ($C807 + ROUTE_35_WIDTH) ; window
-
- ; EAST to Violet City
- map VIOLET_CITY
- dw (VioletCity_BlockData) ; strip pointer
- dw $c88d ; strip destination
- db 12, VIOLET_CITY_WIDTH ; (connection strip length, connected map width)
- db 0, 0 ; yoffset, xoffset
- dw ($C807 + VIOLET_CITY_WIDTH) ; window
-; 0x95114
+ connection north, ROUTE_37, Route37, 10, 0, 10, ROUTE_36
+ connection south, ROUTE_35, Route35, 0, 0, 10, ROUTE_36
+ connection east, VIOLET_CITY, VioletCity, 0, 0, 12, ROUTE_36
map_header_2 Route37, ROUTE_37, $5, NORTH | SOUTH ; 0x95114
-
- ; NORTH to Ecruteak City
- map ECRUTEAK_CITY
- dw (EcruteakCity_BlockData + ECRUTEAK_CITY_WIDTH + 10 + (16 * ECRUTEAK_CITY_HEIGHT) - 16) ; strip pointer
- dw ($C703 + 253) ; strip destination
- db 16, ECRUTEAK_CITY_WIDTH ; (connection strip length, connected map width)
- db ((ECRUTEAK_CITY_HEIGHT * 2) - 1), 10 ; yoffset, xoffset
- dw ($C801 + ((ECRUTEAK_CITY_HEIGHT * 6) + (ECRUTEAK_CITY_HEIGHT * ECRUTEAK_CITY_WIDTH))) ; window
-
- ; SOUTH to Route 36
- map ROUTE_36
- dw (Route36_BlockData + ((20 - 16 + ROUTE_37_WIDTH) / 2)) ; strip pointer
- dw ($C703 + 253 + ((ROUTE_37_HEIGHT + 3) * (ROUTE_37_WIDTH + 6))) ; strip destination
- db 16, ROUTE_36_WIDTH ; (connection strip length, connected map width)
- db 0, 20 ; yoffset, xoffset
- dw ($C807 + ROUTE_36_WIDTH) ; window
-; 0x95138
+ connection north, ECRUTEAK_CITY, EcruteakCity, -3, 2, 16, ROUTE_37
+ connection south, ROUTE_36, Route36, -3, 7, 16, ROUTE_37
map_header_2 Route38, ROUTE_38, $5, WEST | EAST ; 0x95138
-
- ; WEST to Route 39
- map ROUTE_39
- dw (Route39_BlockData + ROUTE_39_WIDTH - 3) ; strip pointer
- dw $c84e ; strip destination
- db 12, ROUTE_39_WIDTH ; (connection strip length, connected map width)
- db 0, ((ROUTE_39_WIDTH * 2) - 1) ; yoffset, xoffset
- dw ($C807 + 19) ; window
-
- ; EAST to Ecruteak City
- map ECRUTEAK_CITY
- dw (EcruteakCity_BlockData + ((100 - (ECRUTEAK_CITY_WIDTH * 4)) * 2)) ; strip pointer
- dw $c817 ; strip destination
- db 15, ECRUTEAK_CITY_WIDTH ; (connection strip length, connected map width)
- db 10, 0 ; yoffset, xoffset
- dw ($C807 + ECRUTEAK_CITY_WIDTH) ; window
-; 0x9515c
+ connection west, ROUTE_39, Route39, 0, 0, 12, ROUTE_38
+ connection east, ECRUTEAK_CITY, EcruteakCity, -3, 2, 15, ROUTE_38
map_header_2 Route39, ROUTE_39, $5, SOUTH | EAST ; 0x9515c
-
- ; SOUTH to Olivine City
- map OLIVINE_CITY
- dw (OlivineCity_BlockData + ((10 - 16 + ROUTE_39_WIDTH) / 2)) ; strip pointer
- dw ($C703 + 253 + ((ROUTE_39_HEIGHT + 3) * (ROUTE_39_WIDTH + 6))) ; strip destination
- db 16, OLIVINE_CITY_WIDTH ; (connection strip length, connected map width)
- db 0, 10 ; yoffset, xoffset
- dw ($C807 + OLIVINE_CITY_WIDTH) ; window
-
- ; EAST to Route 38
- map ROUTE_38
- dw (Route38_BlockData) ; strip pointer
- dw $c83d ; strip destination
- db 9, ROUTE_38_WIDTH ; (connection strip length, connected map width)
- db 0, 0 ; yoffset, xoffset
- dw ($C807 + ROUTE_38_WIDTH) ; window
-; 0x95180
+ connection south, OLIVINE_CITY, OlivineCity, -3, 2, 16, ROUTE_39
+ connection east, ROUTE_38, Route38, 0, 0, 9, ROUTE_39
map_header_2 Route40, ROUTE_40, $35, SOUTH | EAST ; 0x95180
-
- ; SOUTH to Route 41
- map ROUTE_41
- dw (Route41_BlockData + (((30 - 13 + ROUTE_40_WIDTH) / 2) - 1)) ; strip pointer
- dw ($C703 + 253 + ((ROUTE_40_HEIGHT + 3) * (ROUTE_40_WIDTH + 6))) ; strip destination
- db 13, ROUTE_41_WIDTH ; (connection strip length, connected map width)
- db 0, 30 ; yoffset, xoffset
- dw ($C807 + ROUTE_41_WIDTH) ; window
-
- ; EAST to Olivine City
- map OLIVINE_CITY
- dw (OlivineCity_BlockData + ((OLIVINE_CITY_HEIGHT - 12) * OLIVINE_CITY_WIDTH)) ; strip pointer
- dw $c80d ; strip destination
- db 12, OLIVINE_CITY_WIDTH ; (connection strip length, connected map width)
- db 18, 0 ; yoffset, xoffset
- dw ($C807 + OLIVINE_CITY_WIDTH) ; window
-; 0x951a4
+ connection south, ROUTE_41, Route41, -3, 12, 13, ROUTE_40
+ connection east, OLIVINE_CITY, OlivineCity, -3, 6, 12, ROUTE_40
map_header_2 Route41, ROUTE_41, $35, NORTH | WEST ; 0x951a4
-
- ; NORTH to Route 40
- map ROUTE_40
- dw (Route40_BlockData + (ROUTE_40_HEIGHT * ROUTE_40_WIDTH) - (ROUTE_40_WIDTH * 3)) ; strip pointer
- dw ($C703 + 271) ; strip destination
- db 10, ROUTE_40_WIDTH ; (connection strip length, connected map width)
- db ((ROUTE_40_HEIGHT * 2) - 1), 226 ; yoffset, xoffset
- dw ($C801 + ((ROUTE_40_HEIGHT * 6) + (ROUTE_40_HEIGHT * ROUTE_40_WIDTH))) ; window
-
- ; WEST to Cianwood City
- map CIANWOOD_CITY
- dw (CianwoodCity_BlockData + CIANWOOD_CITY_WIDTH - 3) ; strip pointer
- dw $c85d ; strip destination
- db 27, CIANWOOD_CITY_WIDTH ; (connection strip length, connected map width)
- db 0, ((CIANWOOD_CITY_WIDTH * 2) - 1) ; yoffset, xoffset
- dw ($C807 + 29) ; window
-; 0x951c8
+ connection north, ROUTE_40, Route40, 15, 0, 10, ROUTE_41
+ connection west, CIANWOOD_CITY, CianwoodCity, 0, 0, 27, ROUTE_41
map_header_2 Route42, ROUTE_42, $5, WEST | EAST ; 0x951c8
-
- ; WEST to Ecruteak City
- map ECRUTEAK_CITY
- dw (EcruteakCity_BlockData + (((ECRUTEAK_CITY_HEIGHT - ROUTE_42_HEIGHT) * ECRUTEAK_CITY_WIDTH) - (ECRUTEAK_CITY_WIDTH * 3) + (ECRUTEAK_CITY_WIDTH - 1) - 2)) ; strip pointer
- dw $c800 ; strip destination
- db 12, ECRUTEAK_CITY_WIDTH ; (connection strip length, connected map width)
- db 18, ((ECRUTEAK_CITY_WIDTH * 2) - 1) ; yoffset, xoffset
- dw ($C807 + 39) ; window
-
- ; EAST to Mahogany Town
- map MAHOGANY_TOWN
- dw (MahoganyTown_BlockData) ; strip pointer
- dw $c88d ; strip destination
- db 9, MAHOGANY_TOWN_WIDTH ; (connection strip length, connected map width)
- db 0, 0 ; yoffset, xoffset
- dw ($C807 + MAHOGANY_TOWN_WIDTH) ; window
-; 0x951ec
+ connection west, ECRUTEAK_CITY, EcruteakCity, -3, 6, 12, ROUTE_42
+ connection east, MAHOGANY_TOWN, MahoganyTown, 0, 0, 9, ROUTE_42
map_header_2 Route43, ROUTE_43, $5, NORTH | SOUTH ; 0x951ec
-
- ; NORTH to Lake of Rage
- map LAKE_OF_RAGE
- dw (LakeofRage_BlockData + LAKE_OF_RAGE_WIDTH + 10 + (16 * LAKE_OF_RAGE_HEIGHT) - 16) ; strip pointer
- dw ($C703 + 253) ; strip destination
- db 16, LAKE_OF_RAGE_WIDTH ; (connection strip length, connected map width)
- db ((LAKE_OF_RAGE_HEIGHT * 2) - 1), 10 ; yoffset, xoffset
- dw ($C801 + ((LAKE_OF_RAGE_HEIGHT * 6) + (LAKE_OF_RAGE_HEIGHT * LAKE_OF_RAGE_WIDTH))) ; window
-
- ; SOUTH to Mahogany Town
- map MAHOGANY_TOWN
- dw (MahoganyTown_BlockData) ; strip pointer
- dw ($C703 + 256 + ((ROUTE_43_HEIGHT + 3) * (ROUTE_43_WIDTH + 6))) ; strip destination
- db 10, MAHOGANY_TOWN_WIDTH ; (connection strip length, connected map width)
- db 0, 0 ; yoffset, xoffset
- dw ($C807 + MAHOGANY_TOWN_WIDTH) ; window
-; 0x95210
+ connection north, LAKE_OF_RAGE, LakeofRage, -3, 2, 16, ROUTE_43
+ connection south, MAHOGANY_TOWN, MahoganyTown, 0, 0, 10, ROUTE_43
map_header_2 Route44, ROUTE_44, $71, WEST | EAST ; 0x95210
-
- ; WEST to Mahogany Town
- map MAHOGANY_TOWN
- dw (MahoganyTown_BlockData + MAHOGANY_TOWN_WIDTH - 3) ; strip pointer
- dw $c86c ; strip destination
- db 9, MAHOGANY_TOWN_WIDTH ; (connection strip length, connected map width)
- db 0, ((MAHOGANY_TOWN_WIDTH * 2) - 1) ; yoffset, xoffset
- dw ($C807 + 19) ; window
-
- ; EAST to Blackthorn City
- map BLACKTHORN_CITY
- dw (BlackthornCity_BlockData + ((BLACKTHORN_CITY_HEIGHT - 12) * BLACKTHORN_CITY_WIDTH)) ; strip pointer
- dw $c821 ; strip destination
- db 12, BLACKTHORN_CITY_WIDTH ; (connection strip length, connected map width)
- db 18, 0 ; yoffset, xoffset
- dw ($C807 + BLACKTHORN_CITY_WIDTH) ; window
-; 0x95234
+ connection west, MAHOGANY_TOWN, MahoganyTown, 0, 0, 9, ROUTE_44
+ connection east, BLACKTHORN_CITY, BlackthornCity, -3, 6, 12, ROUTE_44
map_header_2 Route45, ROUTE_45, $71, NORTH | WEST ; 0x95234
-
- ; NORTH to Blackthorn City
- map BLACKTHORN_CITY
- dw (BlackthornCity_BlockData + (BLACKTHORN_CITY_HEIGHT * BLACKTHORN_CITY_WIDTH) - (BLACKTHORN_CITY_WIDTH * 3)) ; strip pointer
- dw ($C703 + 256) ; strip destination
- db 13, BLACKTHORN_CITY_WIDTH ; (connection strip length, connected map width)
- db ((BLACKTHORN_CITY_HEIGHT * 2) - 1), 0 ; yoffset, xoffset
- dw ($C801 + ((BLACKTHORN_CITY_HEIGHT * 6) + (BLACKTHORN_CITY_HEIGHT * BLACKTHORN_CITY_WIDTH))) ; window
-
- ; WEST to Route 46
- map ROUTE_46
- dw (Route46_BlockData + ROUTE_46_WIDTH - 3) ; strip pointer
- dw $ca70 ; strip destination
- db 12, ROUTE_46_WIDTH ; (connection strip length, connected map width)
- db 184, ((ROUTE_46_WIDTH * 2) - 1) ; yoffset, xoffset
- dw ($C807 + 19) ; window
-; 0x95258
+ connection north, BLACKTHORN_CITY, BlackthornCity, 0, 0, 13, ROUTE_45
+ connection west, ROUTE_46, Route46, 36, 0, 12, ROUTE_45
map_header_2 Route46, ROUTE_46, $5, SOUTH | EAST ; 0x95258
-
- ; SOUTH to Route 29
- map ROUTE_29
- dw (Route29_BlockData + ((20 - 16 + ROUTE_46_WIDTH) / 2)) ; strip pointer
- dw ($C703 + 253 + ((ROUTE_46_HEIGHT + 3) * (ROUTE_46_WIDTH + 6))) ; strip destination
- db 16, ROUTE_29_WIDTH ; (connection strip length, connected map width)
- db 0, 20 ; yoffset, xoffset
- dw ($C807 + ROUTE_29_WIDTH) ; window
-
- ; EAST to Route 45
- map ROUTE_45
- dw (Route45_BlockData + ((ROUTE_45_HEIGHT - 12) * ROUTE_45_WIDTH)) ; strip pointer
- dw $c80d ; strip destination
- db 12, ROUTE_45_WIDTH ; (connection strip length, connected map width)
- db 72, 0 ; yoffset, xoffset
- dw ($C807 + ROUTE_45_WIDTH) ; window
-; 0x9527c
+ connection south, ROUTE_29, Route29, -3, 7, 16, ROUTE_46
+ connection east, ROUTE_45, Route45, -3, 33, 12, ROUTE_46
map_header_2 PewterCity, PEWTER_CITY, $f, SOUTH | EAST ; 0x9527c
-
- ; SOUTH to Route 2
- map ROUTE_2
- dw (Route2_BlockData) ; strip pointer
- dw ($C703 + 261 + ((PEWTER_CITY_HEIGHT + 3) * (PEWTER_CITY_WIDTH + 6))) ; strip destination
- db 10, ROUTE_2_WIDTH ; (connection strip length, connected map width)
- db 0, 246 ; yoffset, xoffset
- dw ($C807 + ROUTE_2_WIDTH) ; window
-
- ; EAST to Route 3
- map ROUTE_3
- dw (Route3_BlockData) ; strip pointer
- dw $c8e7 ; strip destination
- db 9, ROUTE_3_WIDTH ; (connection strip length, connected map width)
- db 246, 0 ; yoffset, xoffset
- dw ($C807 + ROUTE_3_WIDTH) ; window
-; 0x952a0
+ connection south, ROUTE_2, Route2, 5, 0, 10, PEWTER_CITY
+ connection east, ROUTE_3, Route3, 5, 0, 9, PEWTER_CITY
map_header_2 Route2, ROUTE_2, $f, NORTH | SOUTH ; 0x952a0
-
- ; NORTH to Pewter City
- map PEWTER_CITY
- dw (PewterCity_BlockData + PEWTER_CITY_WIDTH + 10 + (16 * PEWTER_CITY_HEIGHT) - 16) ; strip pointer
- dw ($C703 + 253) ; strip destination
- db 16, PEWTER_CITY_WIDTH ; (connection strip length, connected map width)
- db ((PEWTER_CITY_HEIGHT * 2) - 1), 10 ; yoffset, xoffset
- dw ($C801 + ((PEWTER_CITY_HEIGHT * 6) + (PEWTER_CITY_HEIGHT * PEWTER_CITY_WIDTH))) ; window
-
- ; SOUTH to Viridian City
- map VIRIDIAN_CITY
- dw (ViridianCity_BlockData + ((10 - 16 + ROUTE_2_WIDTH) / 2)) ; strip pointer
- dw ($C703 + 253 + ((ROUTE_2_HEIGHT + 3) * (ROUTE_2_WIDTH + 6))) ; strip destination
- db 16, VIRIDIAN_CITY_WIDTH ; (connection strip length, connected map width)
- db 0, 10 ; yoffset, xoffset
- dw ($C807 + VIRIDIAN_CITY_WIDTH) ; window
-; 0x952c4
+ connection north, PEWTER_CITY, PewterCity, -3, 2, 16, ROUTE_2
+ connection south, VIRIDIAN_CITY, ViridianCity, -3, 2, 16, ROUTE_2
map_header_2 ViridianCity, VIRIDIAN_CITY, $f, NORTH | SOUTH | WEST ; 0x952c4
-
- ; NORTH to Route 2
- map ROUTE_2
- dw (Route2_BlockData + (ROUTE_2_HEIGHT * ROUTE_2_WIDTH) - (ROUTE_2_WIDTH * 3)) ; strip pointer
- dw ($C703 + 261) ; strip destination
- db 10, ROUTE_2_WIDTH ; (connection strip length, connected map width)
- db ((ROUTE_2_HEIGHT * 2) - 1), 246 ; yoffset, xoffset
- dw ($C801 + ((ROUTE_2_HEIGHT * 6) + (ROUTE_2_HEIGHT * ROUTE_2_WIDTH))) ; window
-
- ; SOUTH to Route 1
- map ROUTE_1
- dw (Route1_BlockData) ; strip pointer
- dw ($C703 + 266 + ((VIRIDIAN_CITY_HEIGHT + 3) * (VIRIDIAN_CITY_WIDTH + 6))) ; strip destination
- db 10, ROUTE_1_WIDTH ; (connection strip length, connected map width)
- db 0, 236 ; yoffset, xoffset
- dw ($C807 + ROUTE_1_WIDTH) ; window
-
- ; WEST to Route 22
- map ROUTE_22
- dw (Route22_BlockData + ROUTE_22_WIDTH - 3) ; strip pointer
- dw $c8b6 ; strip destination
- db 9, ROUTE_22_WIDTH ; (connection strip length, connected map width)
- db 248, ((ROUTE_22_WIDTH * 2) - 1) ; yoffset, xoffset
- dw ($C807 + 39) ; window
-; 0x952f4
+ connection north, ROUTE_2, Route2, 5, 0, 10, VIRIDIAN_CITY
+ connection south, ROUTE_1, Route1, 10, 0, 10, VIRIDIAN_CITY
+ connection west, ROUTE_22, Route22, 4, 0, 9, VIRIDIAN_CITY
map_header_2 Route22, ROUTE_22, $2c, EAST ; 0x952f4
-
- ; EAST to Viridian City
- map VIRIDIAN_CITY
- dw (ViridianCity_BlockData + 100 - (VIRIDIAN_CITY_WIDTH * 4)) ; strip pointer
- dw $c817 ; strip destination
- db 15, VIRIDIAN_CITY_WIDTH ; (connection strip length, connected map width)
- db 8, 0 ; yoffset, xoffset
- dw ($C807 + VIRIDIAN_CITY_WIDTH) ; window
-; 0x9530c
+ connection east, VIRIDIAN_CITY, ViridianCity, -3, 1, 15, ROUTE_22
map_header_2 Route1, ROUTE_1, $f, NORTH | SOUTH ; 0x9530c
-
- ; NORTH to Viridian City
- map VIRIDIAN_CITY
- dw (ViridianCity_BlockData + ((VIRIDIAN_CITY_HEIGHT - 3) * VIRIDIAN_CITY_WIDTH) + 7) ; strip pointer
- dw ($C703 + 253) ; strip destination
- db 13, VIRIDIAN_CITY_WIDTH ; (connection strip length, connected map width)
- db ((VIRIDIAN_CITY_HEIGHT * 2) - 1), 20 ; yoffset, xoffset
- dw ($C801 + ((VIRIDIAN_CITY_HEIGHT * 6) + (VIRIDIAN_CITY_HEIGHT * VIRIDIAN_CITY_WIDTH))) ; window
-
- ; SOUTH to Pallet Town
- map PALLET_TOWN
- dw (PalletTown_BlockData) ; strip pointer
- dw ($C703 + 256 + ((ROUTE_1_HEIGHT + 3) * (ROUTE_1_WIDTH + 6))) ; strip destination
- db 10, PALLET_TOWN_WIDTH ; (connection strip length, connected map width)
- db 0, 0 ; yoffset, xoffset
- dw ($C807 + PALLET_TOWN_WIDTH) ; window
-; 0x95330
+ connection north, VIRIDIAN_CITY, ViridianCity, -3, 7, 13, ROUTE_1
+ connection south, PALLET_TOWN, PalletTown, 0, 0, 10, ROUTE_1
map_header_2 PalletTown, PALLET_TOWN, $f, NORTH | SOUTH ; 0x95330
-
- ; NORTH to Route 1
- map ROUTE_1
- dw (Route1_BlockData + (ROUTE_1_HEIGHT * ROUTE_1_WIDTH) - (ROUTE_1_WIDTH * 3)) ; strip pointer
- dw ($C703 + 256) ; strip destination
- db 10, ROUTE_1_WIDTH ; (connection strip length, connected map width)
- db ((ROUTE_1_HEIGHT * 2) - 1), 0 ; yoffset, xoffset
- dw ($C801 + ((ROUTE_1_HEIGHT * 6) + (ROUTE_1_HEIGHT * ROUTE_1_WIDTH))) ; window
-
- ; SOUTH to Route 21
- map ROUTE_21
- dw (Route21_BlockData) ; strip pointer
- dw ($C703 + 256 + ((PALLET_TOWN_HEIGHT + 3) * (PALLET_TOWN_WIDTH + 6))) ; strip destination
- db 10, ROUTE_21_WIDTH ; (connection strip length, connected map width)
- db 0, 0 ; yoffset, xoffset
- dw ($C807 + ROUTE_21_WIDTH) ; window
-; 0x95354
+ connection north, ROUTE_1, Route1, 0, 0, 10, PALLET_TOWN
+ connection south, ROUTE_21, Route21, 0, 0, 10, PALLET_TOWN
map_header_2 Route21, ROUTE_21, $43, NORTH | SOUTH ; 0x95354
-
- ; NORTH to Pallet Town
- map PALLET_TOWN
- dw (PalletTown_BlockData + (PALLET_TOWN_HEIGHT * PALLET_TOWN_WIDTH) - (PALLET_TOWN_WIDTH * 3)) ; strip pointer
- dw ($C703 + 256) ; strip destination
- db 10, PALLET_TOWN_WIDTH ; (connection strip length, connected map width)
- db ((PALLET_TOWN_HEIGHT * 2) - 1), 0 ; yoffset, xoffset
- dw ($C801 + ((PALLET_TOWN_HEIGHT * 6) + (PALLET_TOWN_HEIGHT * PALLET_TOWN_WIDTH))) ; window
-
- ; SOUTH to Cinnabar Island
- map CINNABAR_ISLAND
- dw (CinnabarIsland_BlockData) ; strip pointer
- dw ($C703 + 256 + ((ROUTE_21_HEIGHT + 3) * (ROUTE_21_WIDTH + 6))) ; strip destination
- db 10, CINNABAR_ISLAND_WIDTH ; (connection strip length, connected map width)
- db 0, 0 ; yoffset, xoffset
- dw ($C807 + CINNABAR_ISLAND_WIDTH) ; window
-; 0x95378
+ connection north, PALLET_TOWN, PalletTown, 0, 0, 10, ROUTE_21
+ connection south, CINNABAR_ISLAND, CinnabarIsland, 0, 0, 10, ROUTE_21
map_header_2 CinnabarIsland, CINNABAR_ISLAND, $43, NORTH | EAST ; 0x95378
-
- ; NORTH to Route 21
- map ROUTE_21
- dw (Route21_BlockData + (ROUTE_21_HEIGHT * ROUTE_21_WIDTH) - (ROUTE_21_WIDTH * 3)) ; strip pointer
- dw ($C703 + 256) ; strip destination
- db 10, ROUTE_21_WIDTH ; (connection strip length, connected map width)
- db ((ROUTE_21_HEIGHT * 2) - 1), 0 ; yoffset, xoffset
- dw ($C801 + ((ROUTE_21_HEIGHT * 6) + (ROUTE_21_HEIGHT * ROUTE_21_WIDTH))) ; window
-
- ; EAST to Route 20
- map ROUTE_20
- dw (Route20_BlockData) ; strip pointer
- dw $c83d ; strip destination
- db 9, ROUTE_20_WIDTH ; (connection strip length, connected map width)
- db 0, 0 ; yoffset, xoffset
- dw ($C807 + ROUTE_20_WIDTH) ; window
-; 0x9539c
+ connection north, ROUTE_21, Route21, 0, 0, 10, CINNABAR_ISLAND
+ connection east, ROUTE_20, Route20, 0, 0, 9, CINNABAR_ISLAND
map_header_2 Route20, ROUTE_20, $43, WEST | EAST ; 0x9539c
-
- ; WEST to Cinnabar Island
- map CINNABAR_ISLAND
- dw (CinnabarIsland_BlockData + CINNABAR_ISLAND_WIDTH - 3) ; strip pointer
- dw $c86c ; strip destination
- db 9, CINNABAR_ISLAND_WIDTH ; (connection strip length, connected map width)
- db 0, ((CINNABAR_ISLAND_WIDTH * 2) - 1) ; yoffset, xoffset
- dw ($C807 + 19) ; window
-
- ; EAST to Route 19
- map ROUTE_19
- dw (Route19_BlockData + ((ROUTE_19_HEIGHT - 12) * ROUTE_19_WIDTH)) ; strip pointer
- dw $c821 ; strip destination
- db 12, ROUTE_19_WIDTH ; (connection strip length, connected map width)
- db 18, 0 ; yoffset, xoffset
- dw ($C807 + ROUTE_19_WIDTH) ; window
-; 0x953c0
+ connection west, CINNABAR_ISLAND, CinnabarIsland, 0, 0, 9, ROUTE_20
+ connection east, ROUTE_19, Route19, -3, 6, 12, ROUTE_20
map_header_2 Route19, ROUTE_19, $43, NORTH | WEST ; 0x953c0
-
- ; NORTH to Fuchsia City
- map FUCHSIA_CITY
- dw (FuchsiaCity_BlockData + (FUCHSIA_CITY_HEIGHT * FUCHSIA_CITY_WIDTH) - (FUCHSIA_CITY_WIDTH * 3)) ; strip pointer
- dw ($C703 + 256) ; strip destination
- db 13, FUCHSIA_CITY_WIDTH ; (connection strip length, connected map width)
- db ((FUCHSIA_CITY_HEIGHT * 2) - 1), 0 ; yoffset, xoffset
- dw ($C801 + ((FUCHSIA_CITY_HEIGHT * 6) + (FUCHSIA_CITY_HEIGHT * FUCHSIA_CITY_WIDTH))) ; window
-
- ; WEST to Route 20
- map ROUTE_20
- dw (Route20_BlockData + ROUTE_20_WIDTH - 3) ; strip pointer
- dw $c8c0 ; strip destination
- db 9, ROUTE_20_WIDTH ; (connection strip length, connected map width)
- db 238, ((ROUTE_20_WIDTH * 2) - 1) ; yoffset, xoffset
- dw ($C807 + 59) ; window
-; 0x953e4
+ connection north, FUCHSIA_CITY, FuchsiaCity, 0, 0, 13, ROUTE_19
+ connection west, ROUTE_20, Route20, 9, 0, 9, ROUTE_19
map_header_2 FuchsiaCity, FUCHSIA_CITY, $f, SOUTH | WEST | EAST ; 0x953e4
-
- ; SOUTH to Route 19
- map ROUTE_19
- dw (Route19_BlockData) ; strip pointer
- dw ($C703 + 256 + ((FUCHSIA_CITY_HEIGHT + 3) * (FUCHSIA_CITY_WIDTH + 6))) ; strip destination
- db 10, ROUTE_19_WIDTH ; (connection strip length, connected map width)
- db 0, 0 ; yoffset, xoffset
- dw ($C807 + ROUTE_19_WIDTH) ; window
-
- ; WEST to Route 18
- map ROUTE_18
- dw (Route18_BlockData + ROUTE_18_WIDTH - 3) ; strip pointer
- dw $c904 ; strip destination
- db 9, ROUTE_18_WIDTH ; (connection strip length, connected map width)
- db 242, ((ROUTE_18_WIDTH * 2) - 1) ; yoffset, xoffset
- dw ($C807 + 19) ; window
-
- ; EAST to Route 15
- map ROUTE_15
- dw (Route15_BlockData) ; strip pointer
- dw $c94f ; strip destination
- db 9, ROUTE_15_WIDTH ; (connection strip length, connected map width)
- db 238, 0 ; yoffset, xoffset
- dw ($C807 + ROUTE_15_WIDTH) ; window
-; 0x95414
+ connection south, ROUTE_19, Route19, 0, 0, 10, FUCHSIA_CITY
+ connection west, ROUTE_18, Route18, 7, 0, 9, FUCHSIA_CITY
+ connection east, ROUTE_15, Route15, 9, 0, 9, FUCHSIA_CITY
map_header_2 Route18, ROUTE_18, $43, WEST | EAST ; 0x95414
-
- ; WEST to Route 17
- map ROUTE_17
- dw (Route17_BlockData + ((ROUTE_17_HEIGHT - 10) * ROUTE_17_WIDTH) + 7) ; strip pointer
- dw $c800 ; strip destination
- db 10, ROUTE_17_WIDTH ; (connection strip length, connected map width)
- db 76, ((ROUTE_17_WIDTH * 2) - 1) ; yoffset, xoffset
- dw ($C807 + 19) ; window
-
- ; EAST to Fuchsia City
- map FUCHSIA_CITY
- dw (FuchsiaCity_BlockData + ((FUCHSIA_CITY_HEIGHT - 14) * FUCHSIA_CITY_WIDTH)) ; strip pointer
- dw $c80d ; strip destination
- db 14, FUCHSIA_CITY_WIDTH ; (connection strip length, connected map width)
- db 14, 0 ; yoffset, xoffset
- dw ($C807 + FUCHSIA_CITY_WIDTH) ; window
-; 0x95438
+ connection west, ROUTE_17, Route17, -3, 35, 10, ROUTE_18
+ connection east, FUCHSIA_CITY, FuchsiaCity, -3, 4, 14, ROUTE_18
map_header_2 Route17, ROUTE_17, $43, NORTH | EAST ; 0x95438
-
- ; NORTH to Route 16
- map ROUTE_16
- dw (Route16_BlockData + (ROUTE_16_HEIGHT * ROUTE_16_WIDTH) - (ROUTE_16_WIDTH * 3)) ; strip pointer
- dw ($C703 + 256) ; strip destination
- db 10, ROUTE_16_WIDTH ; (connection strip length, connected map width)
- db ((ROUTE_16_HEIGHT * 2) - 1), 0 ; yoffset, xoffset
- dw ($C801 + ((ROUTE_16_HEIGHT * 6) + (ROUTE_16_HEIGHT * ROUTE_16_WIDTH))) ; window
-
- ; EAST to Route 18
- map ROUTE_18
- dw (Route18_BlockData) ; strip pointer
- dw $ca9d ; strip destination
- db 9, ROUTE_18_WIDTH ; (connection strip length, connected map width)
- db 180, 0 ; yoffset, xoffset
- dw ($C807 + ROUTE_18_WIDTH) ; window
-; 0x9545c
+ connection north, ROUTE_16, Route16, 0, 0, 10, ROUTE_17
+ connection east, ROUTE_18, Route18, 38, 0, 9, ROUTE_17
map_header_2 Route16, ROUTE_16, $f, SOUTH | EAST ; 0x9545c
-
- ; SOUTH to Route 17
- map ROUTE_17
- dw (Route17_BlockData) ; strip pointer
- dw ($C703 + 256 + ((ROUTE_16_HEIGHT + 3) * (ROUTE_16_WIDTH + 6))) ; strip destination
- db 10, ROUTE_17_WIDTH ; (connection strip length, connected map width)
- db 0, 0 ; yoffset, xoffset
- dw ($C807 + ROUTE_17_WIDTH) ; window
-
- ; EAST to Celadon City
- map CELADON_CITY
- dw (CeladonCity_BlockData + ((CELADON_CITY_HEIGHT - 12) * CELADON_CITY_WIDTH)) ; strip pointer
- dw $c80d ; strip destination
- db 12, CELADON_CITY_WIDTH ; (connection strip length, connected map width)
- db 18, 0 ; yoffset, xoffset
- dw ($C807 + CELADON_CITY_WIDTH) ; window
-; 0x95480
+ connection south, ROUTE_17, Route17, 0, 0, 10, ROUTE_16
+ connection east, CELADON_CITY, CeladonCity, -3, 6, 12, ROUTE_16
map_header_2 CeladonCity, CELADON_CITY, $f, WEST | EAST ; 0x95480
-
- ; WEST to Route 16
- map ROUTE_16
- dw (Route16_BlockData + ROUTE_16_WIDTH - 3) ; strip pointer
- dw $c938 ; strip destination
- db 9, ROUTE_16_WIDTH ; (connection strip length, connected map width)
- db 238, ((ROUTE_16_WIDTH * 2) - 1) ; yoffset, xoffset
- dw ($C807 + 19) ; window
-
- ; EAST to Route 7
- map ROUTE_7
- dw (Route7_BlockData) ; strip pointer
- dw $c8e7 ; strip destination
- db 9, ROUTE_7_WIDTH ; (connection strip length, connected map width)
- db 246, 0 ; yoffset, xoffset
- dw ($C807 + ROUTE_7_WIDTH) ; window
-; 0x954a4
+ connection west, ROUTE_16, Route16, 9, 0, 9, CELADON_CITY
+ connection east, ROUTE_7, Route7, 5, 0, 9, CELADON_CITY
map_header_2 Route7, ROUTE_7, $f, WEST | EAST ; 0x954a4
-
- ; WEST to Celadon City
- map CELADON_CITY
- dw (CeladonCity_BlockData + 21 + (CELADON_CITY_HEIGHT * 2)) ; strip pointer
- dw $c800 ; strip destination
- db 15, CELADON_CITY_WIDTH ; (connection strip length, connected map width)
- db 10, ((CELADON_CITY_WIDTH * 2) - 1) ; yoffset, xoffset
- dw ($C807 + 39) ; window
-
- ; EAST to Saffron City
- map SAFFRON_CITY
- dw (SaffronCity_BlockData + ((SAFFRON_CITY_HEIGHT - 12) * SAFFRON_CITY_WIDTH)) ; strip pointer
- dw $c80d ; strip destination
- db 12, SAFFRON_CITY_WIDTH ; (connection strip length, connected map width)
- db 18, 0 ; yoffset, xoffset
- dw ($C807 + SAFFRON_CITY_WIDTH) ; window
-; 0x954c8
+ connection west, CELADON_CITY, CeladonCity, -3, 2, 15, ROUTE_7
+ connection east, SAFFRON_CITY, SaffronCity, -3, 6, 12, ROUTE_7
map_header_2 Route15, ROUTE_15, $f, WEST | EAST ; 0x954c8
-
- ; WEST to Fuchsia City
- map FUCHSIA_CITY
- dw (FuchsiaCity_BlockData + (((FUCHSIA_CITY_HEIGHT - ROUTE_15_HEIGHT) * FUCHSIA_CITY_WIDTH) - (FUCHSIA_CITY_WIDTH * 3) + (FUCHSIA_CITY_WIDTH - 1) - 2)) ; strip pointer
- dw $c800 ; strip destination
- db 12, FUCHSIA_CITY_WIDTH ; (connection strip length, connected map width)
- db 18, ((FUCHSIA_CITY_WIDTH * 2) - 1) ; yoffset, xoffset
- dw ($C807 + 39) ; window
-
- ; EAST to Route 14
- map ROUTE_14
- dw (Route14_BlockData + ((ROUTE_14_HEIGHT - 12) * ROUTE_14_WIDTH)) ; strip pointer
- dw $c817 ; strip destination
- db 12, ROUTE_14_WIDTH ; (connection strip length, connected map width)
- db 18, 0 ; yoffset, xoffset
- dw ($C807 + ROUTE_14_WIDTH) ; window
-; 0x954ec
+ connection west, FUCHSIA_CITY, FuchsiaCity, -3, 6, 12, ROUTE_15
+ connection east, ROUTE_14, Route14, -3, 6, 12, ROUTE_15
map_header_2 Route14, ROUTE_14, $43, NORTH | WEST ; 0x954ec
-
- ; NORTH to Route 13
- map ROUTE_13
- dw (Route13_BlockData + (ROUTE_13_HEIGHT * ROUTE_13_WIDTH) - (ROUTE_13_WIDTH * 3)) ; strip pointer
- dw ($C703 + 256) ; strip destination
- db 13, ROUTE_13_WIDTH ; (connection strip length, connected map width)
- db ((ROUTE_13_HEIGHT * 2) - 1), 0 ; yoffset, xoffset
- dw ($C801 + ((ROUTE_13_HEIGHT * 6) + (ROUTE_13_HEIGHT * ROUTE_13_WIDTH))) ; window
-
- ; WEST to Route 15
- map ROUTE_15
- dw (Route15_BlockData + ROUTE_15_WIDTH - 3) ; strip pointer
- dw $c8c0 ; strip destination
- db 9, ROUTE_15_WIDTH ; (connection strip length, connected map width)
- db 238, ((ROUTE_15_WIDTH * 2) - 1) ; yoffset, xoffset
- dw ($C807 + 39) ; window
-; 0x95510
+ connection north, ROUTE_13, Route13, 0, 0, 13, ROUTE_14
+ connection west, ROUTE_15, Route15, 9, 0, 9, ROUTE_14
map_header_2 Route13, ROUTE_13, $43, NORTH | SOUTH ; 0x95510
-
- ; NORTH to Route 12
- map ROUTE_12
- dw (Route12_BlockData + (ROUTE_12_HEIGHT * ROUTE_12_WIDTH) - (ROUTE_12_WIDTH * 3)) ; strip pointer
- dw ($C703 + 276) ; strip destination
- db 10, ROUTE_12_WIDTH ; (connection strip length, connected map width)
- db ((ROUTE_12_HEIGHT * 2) - 1), 216 ; yoffset, xoffset
- dw ($C801 + ((ROUTE_12_HEIGHT * 6) + (ROUTE_12_HEIGHT * ROUTE_12_WIDTH))) ; window
-
- ; SOUTH to Route 14
- map ROUTE_14
- dw (Route14_BlockData) ; strip pointer
- dw ($C703 + 256 + ((ROUTE_13_HEIGHT + 3) * (ROUTE_13_WIDTH + 6))) ; strip destination
- db 10, ROUTE_14_WIDTH ; (connection strip length, connected map width)
- db 0, 0 ; yoffset, xoffset
- dw ($C807 + ROUTE_14_WIDTH) ; window
-; 0x95534
+ connection north, ROUTE_12, Route12, 20, 0, 10, ROUTE_13
+ connection south, ROUTE_14, Route14, 0, 0, 10, ROUTE_13
map_header_2 Route12, ROUTE_12, $43, NORTH | SOUTH | WEST ; 0x95534
-
- ; NORTH to Lavender Town
- map LAVENDER_TOWN
- dw (LavenderTown_BlockData + (LAVENDER_TOWN_HEIGHT * LAVENDER_TOWN_WIDTH) - (LAVENDER_TOWN_WIDTH * 3)) ; strip pointer
- dw ($C703 + 256) ; strip destination
- db 10, LAVENDER_TOWN_WIDTH ; (connection strip length, connected map width)
- db ((LAVENDER_TOWN_HEIGHT * 2) - 1), 0 ; yoffset, xoffset
- dw ($C801 + ((LAVENDER_TOWN_HEIGHT * 6) + (LAVENDER_TOWN_HEIGHT * LAVENDER_TOWN_WIDTH))) ; window
-
- ; SOUTH to Route 13
- map ROUTE_13
- dw (Route13_BlockData + (((40 - 13 + ROUTE_12_WIDTH) / 2) - 1)) ; strip pointer
- dw ($C703 + 253 + ((ROUTE_12_HEIGHT + 3) * (ROUTE_12_WIDTH + 6))) ; strip destination
- db 13, ROUTE_13_WIDTH ; (connection strip length, connected map width)
- db 0, 40 ; yoffset, xoffset
- dw ($C807 + ROUTE_13_WIDTH) ; window
-
- ; WEST to Route 11
- map ROUTE_11
- dw (Route11_BlockData + ROUTE_11_WIDTH - 3) ; strip pointer
- dw $c8c0 ; strip destination
- db 9, ROUTE_11_WIDTH ; (connection strip length, connected map width)
- db 238, ((ROUTE_11_WIDTH * 2) - 1) ; yoffset, xoffset
- dw ($C807 + 39) ; window
-; 0x95564
+ connection north, LAVENDER_TOWN, LavenderTown, 0, 0, 10, ROUTE_12
+ connection south, ROUTE_13, Route13, -3, 17, 13, ROUTE_12
+ connection west, ROUTE_11, Route11, 9, 0, 9, ROUTE_12
map_header_2 Route11, ROUTE_11, $f, WEST | EAST ; 0x95564
-
- ; WEST to Vermilion City
- map VERMILION_CITY
- dw (VermilionCity_BlockData + VERMILION_CITY_WIDTH - 3) ; strip pointer
- dw $c84e ; strip destination
- db 12, VERMILION_CITY_WIDTH ; (connection strip length, connected map width)
- db 0, ((VERMILION_CITY_WIDTH * 2) - 1) ; yoffset, xoffset
- dw ($C807 + 39) ; window
-
- ; EAST to Route 12
- map ROUTE_12
- dw (Route12_BlockData + 100 - (ROUTE_12_WIDTH * 4)) ; strip pointer
- dw $c817 ; strip destination
- db 15, ROUTE_12_WIDTH ; (connection strip length, connected map width)
- db 18, 0 ; yoffset, xoffset
- dw ($C807 + ROUTE_12_WIDTH) ; window
-; 0x95588
+ connection west, VERMILION_CITY, VermilionCity, 0, 0, 12, ROUTE_11
+ connection east, ROUTE_12, Route12, -3, 6, 15, ROUTE_11
map_header_2 LavenderTown, LAVENDER_TOWN, $2c, NORTH | SOUTH | WEST ; 0x95588
-
- ; NORTH to Route 10 South
- map ROUTE_10_SOUTH
- dw (Route10South_BlockData + (ROUTE_10_SOUTH_HEIGHT * ROUTE_10_SOUTH_WIDTH) - (ROUTE_10_SOUTH_WIDTH * 3)) ; strip pointer
- dw ($C703 + 256) ; strip destination
- db 10, ROUTE_10_SOUTH_WIDTH ; (connection strip length, connected map width)
- db ((ROUTE_10_SOUTH_HEIGHT * 2) - 1), 0 ; yoffset, xoffset
- dw ($C801 + ((ROUTE_10_SOUTH_HEIGHT * 6) + (ROUTE_10_SOUTH_HEIGHT * ROUTE_10_SOUTH_WIDTH))) ; window
-
- ; SOUTH to Route 12
- map ROUTE_12
- dw (Route12_BlockData) ; strip pointer
- dw ($C703 + 256 + ((LAVENDER_TOWN_HEIGHT + 3) * (LAVENDER_TOWN_WIDTH + 6))) ; strip destination
- db 10, ROUTE_12_WIDTH ; (connection strip length, connected map width)
- db 0, 0 ; yoffset, xoffset
- dw ($C807 + ROUTE_12_WIDTH) ; window
-
- ; WEST to Route 8
- map ROUTE_8
- dw (Route8_BlockData + ROUTE_8_WIDTH - 3) ; strip pointer
- dw $c830 ; strip destination
- db 9, ROUTE_8_WIDTH ; (connection strip length, connected map width)
- db 0, ((ROUTE_8_WIDTH * 2) - 1) ; yoffset, xoffset
- dw ($C807 + 39) ; window
-; 0x955b8
+ connection north, ROUTE_10_SOUTH, Route10South, 0, 0, 10, LAVENDER_TOWN
+ connection south, ROUTE_12, Route12, 0, 0, 10, LAVENDER_TOWN
+ connection west, ROUTE_8, Route8, 0, 0, 9, LAVENDER_TOWN
map_header_2 VermilionCity, VERMILION_CITY, $43, NORTH | EAST ; 0x955b8
-
- ; NORTH to Route 6
- map ROUTE_6
- dw (Route6_BlockData + (ROUTE_6_HEIGHT * ROUTE_6_WIDTH) - (ROUTE_6_WIDTH * 3)) ; strip pointer
- dw ($C703 + 261) ; strip destination
- db 10, ROUTE_6_WIDTH ; (connection strip length, connected map width)
- db ((ROUTE_6_HEIGHT * 2) - 1), 246 ; yoffset, xoffset
- dw ($C801 + ((ROUTE_6_HEIGHT * 6) + (ROUTE_6_HEIGHT * ROUTE_6_WIDTH))) ; window
-
- ; EAST to Route 11
- map ROUTE_11
- dw (Route11_BlockData) ; strip pointer
- dw $c865 ; strip destination
- db 9, ROUTE_11_WIDTH ; (connection strip length, connected map width)
- db 0, 0 ; yoffset, xoffset
- dw ($C807 + ROUTE_11_WIDTH) ; window
-; 0x955dc
+ connection north, ROUTE_6, Route6, 5, 0, 10, VERMILION_CITY
+ connection east, ROUTE_11, Route11, 0, 0, 9, VERMILION_CITY
map_header_2 Route6, ROUTE_6, $f, NORTH | SOUTH ; 0x955dc
-
- ; NORTH to Saffron City
- map SAFFRON_CITY
- dw (SaffronCity_BlockData + SAFFRON_CITY_WIDTH + 10 + (16 * SAFFRON_CITY_HEIGHT) - 16) ; strip pointer
- dw ($C703 + 253) ; strip destination
- db 16, SAFFRON_CITY_WIDTH ; (connection strip length, connected map width)
- db ((SAFFRON_CITY_HEIGHT * 2) - 1), 10 ; yoffset, xoffset
- dw ($C801 + ((SAFFRON_CITY_HEIGHT * 6) + (SAFFRON_CITY_HEIGHT * SAFFRON_CITY_WIDTH))) ; window
-
- ; SOUTH to Vermilion City
- map VERMILION_CITY
- dw (VermilionCity_BlockData + ((10 - 16 + ROUTE_6_WIDTH) / 2)) ; strip pointer
- dw ($C703 + 253 + ((ROUTE_6_HEIGHT + 3) * (ROUTE_6_WIDTH + 6))) ; strip destination
- db 16, VERMILION_CITY_WIDTH ; (connection strip length, connected map width)
- db 0, 10 ; yoffset, xoffset
- dw ($C807 + VERMILION_CITY_WIDTH) ; window
-; 0x95600
+ connection north, SAFFRON_CITY, SaffronCity, -3, 2, 16, ROUTE_6
+ connection south, VERMILION_CITY, VermilionCity, -3, 2, 16, ROUTE_6
map_header_2 SaffronCity, SAFFRON_CITY, $f, NORTH | SOUTH | WEST | EAST ; 0x95600
-
- ; NORTH to Route 5
- map ROUTE_5
- dw (Route5_BlockData + (ROUTE_5_HEIGHT * ROUTE_5_WIDTH) - (ROUTE_5_WIDTH * 3)) ; strip pointer
- dw ($C703 + 261) ; strip destination
- db 10, ROUTE_5_WIDTH ; (connection strip length, connected map width)
- db ((ROUTE_5_HEIGHT * 2) - 1), 246 ; yoffset, xoffset
- dw ($C801 + ((ROUTE_5_HEIGHT * 6) + (ROUTE_5_HEIGHT * ROUTE_5_WIDTH))) ; window
-
- ; SOUTH to Route 6
- map ROUTE_6
- dw (Route6_BlockData) ; strip pointer
- dw ($C703 + 261 + ((SAFFRON_CITY_HEIGHT + 3) * (SAFFRON_CITY_WIDTH + 6))) ; strip destination
- db 10, ROUTE_6_WIDTH ; (connection strip length, connected map width)
- db 0, 246 ; yoffset, xoffset
- dw ($C807 + ROUTE_6_WIDTH) ; window
-
- ; WEST to Route 7
- map ROUTE_7
- dw (Route7_BlockData + ROUTE_7_WIDTH - 3) ; strip pointer
- dw $c938 ; strip destination
- db 9, ROUTE_7_WIDTH ; (connection strip length, connected map width)
- db 238, ((ROUTE_7_WIDTH * 2) - 1) ; yoffset, xoffset
- dw ($C807 + 19) ; window
-
- ; EAST to Route 8
- map ROUTE_8
- dw (Route8_BlockData) ; strip pointer
- dw $c94f ; strip destination
- db 9, ROUTE_8_WIDTH ; (connection strip length, connected map width)
- db 238, 0 ; yoffset, xoffset
- dw ($C807 + ROUTE_8_WIDTH) ; window
-; 0x9563c
+ connection north, ROUTE_5, Route5, 5, 0, 10, SAFFRON_CITY
+ connection south, ROUTE_6, Route6, 5, 0, 10, SAFFRON_CITY
+ connection west, ROUTE_7, Route7, 9, 0, 9, SAFFRON_CITY
+ connection east, ROUTE_8, Route8, 9, 0, 9, SAFFRON_CITY
map_header_2 Route5, ROUTE_5, $f, NORTH | SOUTH ; 0x9563c
-
- ; NORTH to Cerulean City
- map CERULEAN_CITY
- dw (CeruleanCity_BlockData + CERULEAN_CITY_WIDTH + 10 + (16 * CERULEAN_CITY_HEIGHT) - 16) ; strip pointer
- dw ($C703 + 253) ; strip destination
- db 16, CERULEAN_CITY_WIDTH ; (connection strip length, connected map width)
- db ((CERULEAN_CITY_HEIGHT * 2) - 1), 10 ; yoffset, xoffset
- dw ($C801 + ((CERULEAN_CITY_HEIGHT * 6) + (CERULEAN_CITY_HEIGHT * CERULEAN_CITY_WIDTH))) ; window
-
- ; SOUTH to Saffron City
- map SAFFRON_CITY
- dw (SaffronCity_BlockData + ((10 - 16 + ROUTE_5_WIDTH) / 2)) ; strip pointer
- dw ($C703 + 253 + ((ROUTE_5_HEIGHT + 3) * (ROUTE_5_WIDTH + 6))) ; strip destination
- db 16, SAFFRON_CITY_WIDTH ; (connection strip length, connected map width)
- db 0, 10 ; yoffset, xoffset
- dw ($C807 + SAFFRON_CITY_WIDTH) ; window
-; 0x95660
+ connection north, CERULEAN_CITY, CeruleanCity, -3, 2, 16, ROUTE_5
+ connection south, SAFFRON_CITY, SaffronCity, -3, 2, 16, ROUTE_5
map_header_2 CeruleanCity, CERULEAN_CITY, $f, NORTH | SOUTH | WEST | EAST ; 0x95660
-
- ; NORTH to Route 24
- map ROUTE_24
- dw (Route24_BlockData + (ROUTE_24_HEIGHT * ROUTE_24_WIDTH) - (ROUTE_24_WIDTH * 3)) ; strip pointer
- dw ($C703 + 262) ; strip destination
- db 10, ROUTE_24_WIDTH ; (connection strip length, connected map width)
- db ((ROUTE_24_HEIGHT * 2) - 1), 244 ; yoffset, xoffset
- dw ($C801 + ((ROUTE_24_HEIGHT * 6) + (ROUTE_24_HEIGHT * ROUTE_24_WIDTH))) ; window
-
- ; SOUTH to Route 5
- map ROUTE_5
- dw (Route5_BlockData) ; strip pointer
- dw ($C703 + 261 + ((CERULEAN_CITY_HEIGHT + 3) * (CERULEAN_CITY_WIDTH + 6))) ; strip destination
- db 10, ROUTE_5_WIDTH ; (connection strip length, connected map width)
- db 0, 246 ; yoffset, xoffset
- dw ($C807 + ROUTE_5_WIDTH) ; window
-
- ; WEST to Route 4
- map ROUTE_4
- dw (Route4_BlockData + ROUTE_4_WIDTH - 3) ; strip pointer
- dw $c8d0 ; strip destination
- db 9, ROUTE_4_WIDTH ; (connection strip length, connected map width)
- db 246, ((ROUTE_4_WIDTH * 2) - 1) ; yoffset, xoffset
- dw ($C807 + 39) ; window
-
- ; EAST to Route 9
- map ROUTE_9
- dw (Route9_BlockData) ; strip pointer
- dw $c94f ; strip destination
- db 9, ROUTE_9_WIDTH ; (connection strip length, connected map width)
- db 238, 0 ; yoffset, xoffset
- dw ($C807 + ROUTE_9_WIDTH) ; window
-; 0x9569c
+ connection north, ROUTE_24, Route24, 6, 0, 10, CERULEAN_CITY
+ connection south, ROUTE_5, Route5, 5, 0, 10, CERULEAN_CITY
+ connection west, ROUTE_4, Route4, 5, 0, 9, CERULEAN_CITY
+ connection east, ROUTE_9, Route9, 9, 0, 9, CERULEAN_CITY
map_header_2 Route9, ROUTE_9, $2c, SOUTH | WEST ; 0x9569c
-
- ; SOUTH to Route 10 North
- map ROUTE_10_NORTH
- dw (Route10North_BlockData) ; strip pointer
- dw ($C703 + 276 + ((ROUTE_9_HEIGHT + 3) * (ROUTE_9_WIDTH + 6))) ; strip destination
- db 10, ROUTE_10_NORTH_WIDTH ; (connection strip length, connected map width)
- db 0, 216 ; yoffset, xoffset
- dw ($C807 + ROUTE_10_NORTH_WIDTH) ; window
-
- ; WEST to Cerulean City
- map CERULEAN_CITY
- dw (CeruleanCity_BlockData + (((CERULEAN_CITY_HEIGHT - ROUTE_9_HEIGHT) * CERULEAN_CITY_WIDTH) - (CERULEAN_CITY_WIDTH * 3) + (CERULEAN_CITY_WIDTH - 1) - 2)) ; strip pointer
- dw $c800 ; strip destination
- db 12, CERULEAN_CITY_WIDTH ; (connection strip length, connected map width)
- db 18, ((CERULEAN_CITY_WIDTH * 2) - 1) ; yoffset, xoffset
- dw ($C807 + 39) ; window
-; 0x956c0
+ connection south, ROUTE_10_NORTH, Route10North, 20, 0, 10, ROUTE_9
+ connection west, CERULEAN_CITY, CeruleanCity, -3, 6, 12, ROUTE_9
map_header_2 Route24, ROUTE_24, $2c, NORTH | SOUTH ; 0x956c0
-
- ; NORTH to Route 25
- map ROUTE_25
- dw (Route25_BlockData + (ROUTE_25_HEIGHT * ROUTE_25_WIDTH) - (ROUTE_25_WIDTH * 3)) ; strip pointer
- dw ($C703 + 256) ; strip destination
- db 13, ROUTE_25_WIDTH ; (connection strip length, connected map width)
- db ((ROUTE_25_HEIGHT * 2) - 1), 0 ; yoffset, xoffset
- dw ($C801 + ((ROUTE_25_HEIGHT * 6) + (ROUTE_25_HEIGHT * ROUTE_25_WIDTH))) ; window
-
- ; SOUTH to Cerulean City
- map CERULEAN_CITY
- dw (CeruleanCity_BlockData + ((12 - 16 + ROUTE_24_WIDTH) / 2)) ; strip pointer
- dw ($C703 + 253 + ((ROUTE_24_HEIGHT + 3) * (ROUTE_24_WIDTH + 6))) ; strip destination
- db 16, CERULEAN_CITY_WIDTH ; (connection strip length, connected map width)
- db 0, 12 ; yoffset, xoffset
- dw ($C807 + CERULEAN_CITY_WIDTH) ; window
-; 0x956e4
+ connection north, ROUTE_25, Route25, 0, 0, 13, ROUTE_24
+ connection south, CERULEAN_CITY, CeruleanCity, -3, 3, 16, ROUTE_24
map_header_2 Route25, ROUTE_25, $2c, SOUTH ; 0x956e4
-
- ; SOUTH to Route 24
- map ROUTE_24
- dw (Route24_BlockData) ; strip pointer
- dw ($C703 + 256 + ((ROUTE_25_HEIGHT + 3) * (ROUTE_25_WIDTH + 6))) ; strip destination
- db 10, ROUTE_24_WIDTH ; (connection strip length, connected map width)
- db 0, 0 ; yoffset, xoffset
- dw ($C807 + ROUTE_24_WIDTH) ; window
-; 0x956fc
+ connection south, ROUTE_24, Route24, 0, 0, 10, ROUTE_25
map_header_2 Route3, ROUTE_3, $2c, WEST | EAST ; 0x956fc
-
- ; WEST to Pewter City
- map PEWTER_CITY
- dw (PewterCity_BlockData + 21 + (PEWTER_CITY_HEIGHT * 2)) ; strip pointer
- dw $c800 ; strip destination
- db 15, PEWTER_CITY_WIDTH ; (connection strip length, connected map width)
- db 10, ((PEWTER_CITY_WIDTH * 2) - 1) ; yoffset, xoffset
- dw ($C807 + 39) ; window
-
- ; EAST to Route 4
- map ROUTE_4
- dw (Route4_BlockData) ; strip pointer
- dw $c88d ; strip destination
- db 9, ROUTE_4_WIDTH ; (connection strip length, connected map width)
- db 0, 0 ; yoffset, xoffset
- dw ($C807 + ROUTE_4_WIDTH) ; window
-; 0x95720
+ connection west, PEWTER_CITY, PewterCity, -3, 2, 15, ROUTE_3
+ connection east, ROUTE_4, Route4, 0, 0, 9, ROUTE_3
map_header_2 Route4, ROUTE_4, $2c, WEST | EAST ; 0x95720
-
- ; WEST to Route 3
- map ROUTE_3
- dw (Route3_BlockData + ROUTE_3_WIDTH - 3) ; strip pointer
- dw $c84e ; strip destination
- db 9, ROUTE_3_WIDTH ; (connection strip length, connected map width)
- db 0, ((ROUTE_3_WIDTH * 2) - 1) ; yoffset, xoffset
- dw ($C807 + 59) ; window
-
- ; EAST to Cerulean City
- map CERULEAN_CITY
- dw (CeruleanCity_BlockData + ((100 - (CERULEAN_CITY_WIDTH * 4)) * 2)) ; strip pointer
- dw $c817 ; strip destination
- db 15, CERULEAN_CITY_WIDTH ; (connection strip length, connected map width)
- db 10, 0 ; yoffset, xoffset
- dw ($C807 + CERULEAN_CITY_WIDTH) ; window
-; 0x95744
+ connection west, ROUTE_3, Route3, 0, 0, 9, ROUTE_4
+ connection east, CERULEAN_CITY, CeruleanCity, -3, 2, 15, ROUTE_4
map_header_2 Route8, ROUTE_8, $2c, WEST | EAST ; 0x95744
-
- ; WEST to Saffron City
- map SAFFRON_CITY
- dw (SaffronCity_BlockData + (((SAFFRON_CITY_HEIGHT - ROUTE_8_HEIGHT) * SAFFRON_CITY_WIDTH) - (SAFFRON_CITY_WIDTH * 3) + (SAFFRON_CITY_WIDTH - 1) - 2)) ; strip pointer
- dw $c800 ; strip destination
- db 12, SAFFRON_CITY_WIDTH ; (connection strip length, connected map width)
- db 18, ((SAFFRON_CITY_WIDTH * 2) - 1) ; yoffset, xoffset
- dw ($C807 + 39) ; window
-
- ; EAST to Lavender Town
- map LAVENDER_TOWN
- dw (LavenderTown_BlockData) ; strip pointer
- dw $c865 ; strip destination
- db 9, LAVENDER_TOWN_WIDTH ; (connection strip length, connected map width)
- db 0, 0 ; yoffset, xoffset
- dw ($C807 + LAVENDER_TOWN_WIDTH) ; window
-; 0x95768
+ connection west, SAFFRON_CITY, SaffronCity, -3, 6, 12, ROUTE_8
+ connection east, LAVENDER_TOWN, LavenderTown, 0, 0, 9, ROUTE_8
map_header_2 Route10North, ROUTE_10_NORTH, $2c, NORTH | SOUTH ; 0x95768
-
- ; NORTH to Route 9
- map ROUTE_9
- dw (Route9_BlockData + ((ROUTE_9_HEIGHT - 3) * ROUTE_9_WIDTH) + 17) ; strip pointer
- dw ($C703 + 253) ; strip destination
- db 13, ROUTE_9_WIDTH ; (connection strip length, connected map width)
- db ((ROUTE_9_HEIGHT * 2) - 1), 40 ; yoffset, xoffset
- dw ($C801 + ((ROUTE_9_HEIGHT * 6) + (ROUTE_9_HEIGHT * ROUTE_9_WIDTH))) ; window
-
- ; SOUTH to Route 10 South
- map ROUTE_10_SOUTH
- dw (Route10South_BlockData) ; strip pointer
- dw ($C703 + 256 + ((ROUTE_10_NORTH_HEIGHT + 3) * (ROUTE_10_NORTH_WIDTH + 6))) ; strip destination
- db 10, ROUTE_10_SOUTH_WIDTH ; (connection strip length, connected map width)
- db 0, 0 ; yoffset, xoffset
- dw ($C807 + ROUTE_10_SOUTH_WIDTH) ; window
-; 0x9578c
+ connection north, ROUTE_9, Route9, -3, 17, 13, ROUTE_10_NORTH
+ connection south, ROUTE_10_SOUTH, Route10South, 0, 0, 10, ROUTE_10_NORTH
map_header_2 Route10South, ROUTE_10_SOUTH, $2c, NORTH | SOUTH ; 0x9578c
-
- ; NORTH to Route 10 North
- map ROUTE_10_NORTH
- dw (Route10North_BlockData + (ROUTE_10_NORTH_HEIGHT * ROUTE_10_NORTH_WIDTH) - (ROUTE_10_NORTH_WIDTH * 3)) ; strip pointer
- dw ($C703 + 256) ; strip destination
- db 10, ROUTE_10_NORTH_WIDTH ; (connection strip length, connected map width)
- db ((ROUTE_10_NORTH_HEIGHT * 2) - 1), 0 ; yoffset, xoffset
- dw ($C801 + ((ROUTE_10_NORTH_HEIGHT * 6) + (ROUTE_10_NORTH_HEIGHT * ROUTE_10_NORTH_WIDTH))) ; window
-
- ; SOUTH to Lavender Town
- map LAVENDER_TOWN
- dw (LavenderTown_BlockData) ; strip pointer
- dw ($C703 + 256 + ((ROUTE_10_SOUTH_HEIGHT + 3) * (ROUTE_10_SOUTH_WIDTH + 6))) ; strip destination
- db 10, LAVENDER_TOWN_WIDTH ; (connection strip length, connected map width)
- db 0, 0 ; yoffset, xoffset
- dw ($C807 + LAVENDER_TOWN_WIDTH) ; window
-; 0x957b0
+ connection north, ROUTE_10_NORTH, Route10North, 0, 0, 10, ROUTE_10_SOUTH
+ connection south, LAVENDER_TOWN, LavenderTown, 0, 0, 10, ROUTE_10_SOUTH
map_header_2 Route23, ROUTE_23, $f, NONE ; 0x957b0
map_header_2 SproutTower1F, SPROUT_TOWER_1F, $0, NONE ; 0x957bc
@@ -1673,3 +597,4 @@ ENDM
map_header_2 Route30BerrySpeechHouse, ROUTE_30_BERRY_SPEECH_HOUSE, $0, NONE ; 0x9668c
map_header_2 MrPokemonsHouse, MR_POKEMONS_HOUSE, $0, NONE ; 0x96698
map_header_2 Route31VioletGate, ROUTE_31_VIOLET_GATE, $0, NONE ; 0x966a4
+
diff --git a/misc/mobile_40.asm b/misc/mobile_40.asm
new file mode 100644
index 000000000..12cbd326c
--- /dev/null
+++ b/misc/mobile_40.asm
@@ -0,0 +1,8080 @@
+
+SECTION "bank40", ROMX, BANK[$40]
+
+Function100000: ; 100000
+ ld a, [rSVBK]
+ push af
+ ld a, $1
+ ld [rSVBK], a
+ call Function100022
+ call Function1000ba
+ call Function100675
+ call Function100057
+ call Function10016f
+ call Function100276
+ push bc
+ call Function100301
+ pop bc
+ pop af
+ ld [rSVBK], a
+ ret
+; 100022
+
+Function100022: ; 100022
+ push de
+ push bc
+ call Function100063
+ pop bc
+ pop de
+ ld a, d
+ ld [wcd21], a
+ ld a, e
+ ld [CreditsTimer], a
+ ld a, c
+ ld [wcd23], a
+ ld a, b
+ ld [wcd24], a
+ callba Function10127e
+ callba Function106462
+ callba Function106464
+ callba Function11615a
+ ld hl, VramState
+ set 1, [hl]
+ ret
+; 100057
+
+Function100057: ; 100057
+ call Function1000a4
+ call Function222a
+ ld hl, VramState
+ res 1, [hl]
+ ret
+; 100063
+
+Function100063: ; 100063
+ xor a
+ ld hl, BGMapBuffer
+ ld bc, $0065
+ call ByteFill
+ xor a
+ ld hl, wc300
+ ld bc, $100
+ call ByteFill
+ ld a, [rIE]
+ ld [BGMapBuffer], a
+ xor a
+ ld [$ffde], a
+ ld [hLCDStatCustom], a
+ ret
+; 100082
+
+Function100082: ; 100082
+ xor a
+ ld hl, OverworldMap
+ ld bc, 1300
+ call ByteFill
+ di
+ call DoubleSpeed
+ xor a
+ ld [rIF], a
+ ld a, 1 << VBLANK + 1 << LCD_STAT + 1 << TIMER + 1 << SERIAL
+ ld [rIE], a
+ xor a
+ ld [$ffde], a
+ ld [hLCDStatCustom], a
+ ld a, $1
+ ld [$ffc9], a
+ ld [$ffe9], a
+ ei
+ ret
+; 0x1000a4
+
+Function1000a4: ; 1000a4
+ di
+ xor a
+ ld [$ffc9], a
+ ld [$ffe9], a
+ xor a
+ ld [hVBlank], a
+ call NormalSpeed
+ xor a
+ ld [rIF], a
+ ld a, [BGMapBuffer]
+ ld [rIE], a
+ ei
+ ret
+; 1000ba
+
+Function1000ba: ; 1000ba
+.asm_1000ba
+ ld hl, wcd23
+ ld a, [hli]
+ ld h, [hl]
+ ld l, a
+ ld a, [wcd25]
+ ld e, a
+ ld d, $0
+ add hl, de
+ add hl, de
+ ld a, [CreditsTimer]
+ call GetFarHalfword
+ ld a, [CreditsTimer]
+ rst FarCall
+ call Function1000e8
+ call Function1000fa
+ call Function100144
+ call Function100163
+ ld a, [wcd2b]
+ and a
+ jr z, .asm_1000ba
+ call DelayFrame
+ ret
+; 1000e8
+
+Function1000e8: ; 1000e8
+ ld hl, wcd29
+ bit 7, [hl]
+ ret z
+ callba Function115dd3
+ ld hl, wcd29
+ set 6, [hl]
+ ret
+; 1000fa
+
+Function1000fa: ; 1000fa
+ ld a, [wc30d]
+ and a
+ ret z
+ ld hl, wcd29
+ bit 4, [hl]
+ ret z
+ ld a, [wcd2b]
+ and a
+ jr nz, .asm_100117
+ callba Function11619d
+ ld hl, wcd29
+ set 6, [hl]
+ ret
+
+.asm_100117
+ di
+ xor a
+ ld [rIF], a
+ ld a, [rIE]
+ and $13
+ ld [rIE], a
+ xor a
+ ld [$ffc9], a
+ ld [$ffe9], a
+ ei
+ ld a, [InLinkBattle]
+ push af
+ xor a
+ ld [InLinkBattle], a
+ ld a, $4
+ ld [wc319], a
+ callba Function11619d
+ ld hl, wcd29
+ set 6, [hl]
+ pop af
+ ld [InLinkBattle], a
+ ret
+; 100144
+
+Function100144: ; 100144
+ ld hl, wcd29
+ bit 5, [hl]
+ jr z, .asm_100155
+ res 5, [hl]
+ res 2, [hl]
+ res 6, [hl]
+ call Function100320
+ ret
+
+.asm_100155
+ bit 2, [hl]
+ ret z
+ res 2, [hl]
+ res 6, [hl]
+ callba Function10402d
+ ret
+; 100163
+
+Function100163: ; 100163
+ ld hl, wcd29
+ bit 6, [hl]
+ ret z
+ res 6, [hl]
+ call DelayFrame
+ ret
+; 10016f
+
+Function10016f: ; 10016f
+ ld a, [wcd2b]
+ cp $1
+ ret z
+ cp $2
+ ret z
+ cp $ff
+ jp z, .asm_1001f5
+ cp $fe
+ jr z, .asm_1001c4
+ cp $f5
+ jr z, .asm_1001e7
+ cp $f6
+ jr z, .asm_1001b6
+ cp $fa
+ jp z, .asm_1001bd
+ cp $f7
+ jp z, .asm_1001ee
+ cp $f4
+ jr z, .asm_1001d2
+ cp $f3
+ jr z, .asm_1001cb
+ cp $f1
+ jr z, .asm_1001c4
+ cp $f2
+ jr z, .asm_1001c4
+ cp $fc
+ jr z, .asm_1001e6
+ cp $fb
+ jr z, .asm_1001af
+ cp $f8
+ ret z
+ ret
+
+.asm_1001af
+ ld a, $d7
+ ld de, $0000
+ jr .asm_1001d7
+
+.asm_1001b6
+ ld a, $d5
+ ld de, $0000
+ jr .asm_1001d7
+
+.asm_1001bd
+ ld a, $d6
+ ld de, $0000
+ jr .asm_1001d7
+
+.asm_1001c4
+ ld a, $d2
+ ld de, $0002
+ jr .asm_1001d7
+
+.asm_1001cb
+ ld a, $d1
+ ld de, $0001
+ jr .asm_1001d7
+
+.asm_1001d2
+ ld a, $d0
+ ld de, $0000
+
+.asm_1001d7
+ ld [wc300], a
+ ld a, d
+ ld [wc302], a
+ ld a, e
+ ld [wc301], a
+ call Function10020b
+ ret
+
+.asm_1001e6
+ ret
+
+.asm_1001e7
+ ld de, String10025e
+ call Function100232
+ ret
+
+.asm_1001ee
+ ld de, String10024d
+ call Function100232
+ ret
+
+.asm_1001f5
+ ld a, [wcd2c]
+ ld [wc300], a
+ ld a, [wcd2d]
+ ld [wc302], a
+ ld a, [wcd2d]
+ ld [wc301], a
+ call Function10020b
+ ret
+; 10020b
+
+Function10020b: ; 10020b
+ xor a
+ ld [wc303], a
+ callba Function8c084
+ callba Function106464
+ call HideSprites
+ call DelayFrame
+ ld a, [rSVBK]
+ push af
+ ld a, $1
+ ld [rSVBK], a
+ callba Function17f555
+ pop af
+ ld [rSVBK], a
+ ret
+; 100232
+
+Function100232: ; 100232
+ push de
+ callba Function106464
+ call Function3f20
+ call Function1ad2
+ hlcoord 1, 2
+ pop de
+ call PlaceString
+ call Function100320
+ call Functiona36
+ ret
+; 10024d
+
+String10024d: ; 10024d
+ db "つうしんを キャンセル しました@"
+; 10025e
+
+String10025e: ; 10025e
+ db "おともだちと えらんだ へやが"
+ next "ちがうようです@"
+; 100276
+
+Function100276: ; 100276
+ ld a, [wcd2b]
+ cp $1
+ jr z, .asm_10029f
+ cp $2
+ jr z, .asm_100296
+ cp $f5
+ jr z, .asm_1002a5
+ cp $f6
+ jr z, .asm_1002a5
+ cp $f7
+ jr z, .asm_100293
+ cp $f8
+ jr z, .asm_1002b1
+ jr .asm_1002c0
+
+.asm_100293
+ ld c, $2
+ ret
+
+.asm_100296
+ callba Script_reloadmappart
+ ld c, $4
+ ret
+
+.asm_10029f
+ call Function1002dc
+ ld c, $0
+ ret
+
+.asm_1002a5
+ callba Script_reloadmappart
+ call Function1002ed
+ ld c, $3
+ ret
+
+.asm_1002b1
+ call Function1002c9
+ call Function1002dc
+ ld de, String10024d
+ call Function100232
+ ld c, $2
+ ret
+
+.asm_1002c0
+ call Function1002c9
+ call Function1002dc
+ ld c, $1
+ ret
+; 1002c9
+
+Function1002c9: ; 1002c9
+ ld hl, wcd2a
+ bit 0, [hl]
+ ret z
+ callba Function3f6d0
+ callba Function1500c
+ ret
+; 1002dc
+
+Function1002dc: ; 1002dc
+ ld a, $f8
+ ld [$ff9f], a
+ callba RunMapSetupScript
+ xor a
+ ld [$ff9f], a
+ call Functione51
+ ret
+; 1002ed
+
+Function1002ed: ; 1002ed
+ callba Function49409
+ callba Function96a4
+ ld a, $1
+ ld [hCGBPalUpdate], a
+ call DelayFrame
+ ret
+; 100301
+
+Function100301: ; 100301
+ ld hl, wcd2a
+ bit 1, [hl]
+ ret z
+ callba Function106464
+ callba Function10202c
+ callba Function115dd3
+ call Function100320
+ call Functiona36
+ ret
+; 100320
+
+Function100320: ; 100320
+ callba Function104099
+ ret
+; 100327
+
+Function100327: ; 100327
+ callba Function10402d
+ ret
+; 100327
+
+
+Function10032e: ; 10032e
+ call Function10034d
+ ld e, a
+ ret nc
+ ld [wcd2b], a
+ ret
+; 100337
+
+Function100337: ; 100337
+ call Function10032e
+ ret c
+ ld a, [wc821]
+ bit 4, a
+ jr z, .asm_100345
+ ld a, e
+ and a
+ ret
+
+.asm_100345
+ ld a, $f9
+ ld e, a
+ ld [wcd2b], a
+ scf
+ ret
+; 10034d
+
+Function10034d: ; 10034d
+ ld a, [wc821]
+ bit 1, a
+ jr nz, .asm_10036a
+ bit 2, a
+ jr nz, .asm_10037e
+ bit 3, a
+ jr nz, .asm_100366
+ bit 0, a
+ jr nz, .asm_100364
+ ld a, $1
+ and a
+ ret
+
+.asm_100364
+ xor a
+ ret
+
+.asm_100366
+ ld a, $2
+ and a
+ ret
+
+.asm_10036a
+ ld a, $0
+ call Function3e32
+ ld [wcd2c], a
+ ld a, h
+ ld [wcd2d], a
+ ld a, l
+ ld [wcd2e], a
+ ld a, $ff
+ scf
+ ret
+
+.asm_10037e
+ ld a, $fe
+ scf
+ ret
+; 100382
+
+Function100382: ; 100382
+ ld a, [wcd27]
+ ld hl, Jumptable_10044e
+ rst JumpTable
+ ret
+; 10038a
+
+Function10038a: ; 10038a
+ ld hl, wccb4
+ ld a, $2e
+ call Function3e32
+ ret
+; 100393
+
+Function100393: ; 100393
+ ld hl, wcc60
+ ld a, $3a
+ call Function3e32
+ ret
+; 10039c
+
+Function10039c: ; 10039c
+ ld hl, wcc60
+ ld de, wd000
+ ld bc, $0054
+ ld a, $3
+ call FarCopyWRAM
+ ret
+; 1003ab
+
+Function1003ab: ; 1003ab
+ ld hl, wd000
+ ld de, wcc60
+ ld bc, $0054
+ ld a, $3
+ call FarCopyWRAM
+ ret
+; 1003ba
+
+Function1003ba: ; 1003ba
+ ld hl, wccb4
+ ld de, $d080
+ ld bc, $0054
+ ld a, $3
+ call FarCopyWRAM
+ ret
+; 1003c9
+
+Function1003c9: ; 1003c9
+ ld hl, $d080
+ ld de, wccb4
+ ld bc, $0054
+ ld a, $3
+ call FarCopyWRAM
+ ret
+; 1003d8
+
+Function1003d8: ; 1003d8
+ ld hl, wccb4
+ ld a, [hli]
+ ld c, a
+ ld b, $0
+ push hl
+ add hl, bc
+ ld a, [BGMapPalBuffer]
+ ld [hl], a
+ pop hl
+ inc bc
+ call Function10043a
+ add hl, bc
+ ld [hl], e
+ inc hl
+ ld [hl], d
+ ld a, c
+ add $2
+ ld [wccb4], a
+ ret
+; 1003f5
+
+Function1003f5: ; 1003f5
+ ld a, [wcc60]
+ sub $3
+ ld [wcc60], a
+ ld a, [wccb4]
+ sub $3
+ ld [wccb4], a
+ ret
+; 100406
+
+Function100406: ; 100406
+ ld a, [wcc60]
+ sub $2
+ ld c, a
+ ld b, $0
+ ld hl, wcc61
+ call Function10043a
+ add hl, bc
+ ld a, [hli]
+ cp e
+ jr nz, .asm_100426
+ ld a, [hld]
+ cp d
+ jr nz, .asm_100426
+ dec hl
+ ld a, [BGMapPalBuffer]
+ cp [hl]
+ jr nz, .asm_10042d
+ xor a
+ ret
+
+.asm_100426
+ ld a, $f4
+ ld [wcd2b], a
+ jr .asm_100432
+
+.asm_10042d
+ ld a, $f3
+ ld [wcd2b], a
+
+.asm_100432
+ push hl
+ ld hl, wcd7c
+ inc [hl]
+ pop hl
+ scf
+ ret
+; 10043a
+
+Function10043a: ; 10043a
+ push hl
+ push bc
+ ld de, $0000
+.asm_10043f
+ ld a, [hli]
+ add e
+ ld e, a
+ ld a, d
+ adc $0
+ ld d, a
+ dec bc
+ ld a, b
+ or c
+ jr nz, .asm_10043f
+ pop bc
+ pop hl
+ ret
+; 10044e
+
+
+Jumptable_10044e: ; 10044e (40:444e)
+ dw Function10046a
+ dw Function10047c
+ dw Function100493
+ dw Function1004ba
+ dw Function1004f4
+ dw Function1004ce
+ dw Function1004de
+ dw Function1004a4
+ dw Function100495
+ dw Function1004ce
+ dw Function1004de
+ dw Function1004e9
+ dw Function1004f4
+ dw Function1004a4
+
+Function10046a: ; 10046a
+ ld hl, BGMapPalBuffer
+ inc [hl]
+ call Function1003d8
+ call Function1003ba
+ ld a, [wcd27]
+ inc a
+ ld [wcd27], a
+ ret
+; 10047c
+
+Function10047c: ; 10047c
+ call Function100337
+ ret c
+ ret z
+ cp $2
+ jr z, .asm_100487
+ jr .asm_10048d
+
+.asm_100487
+ ld a, $8
+ ld [wcd27], a
+ ret
+
+.asm_10048d
+ ld a, $2
+ ld [wcd27], a
+ ret
+; 100493
+
+Function100493: ; 100493
+ jr asm_100497
+
+Function100495: ; 100495
+ jr asm_100497
+
+asm_100497
+ call Function100337
+ ret c
+ ret z
+ ld a, [wcd27]
+ inc a
+ ld [wcd27], a
+ ret
+; 1004a4
+
+Function1004a4: ; 1004a4
+ call Function100406
+ jr c, .asm_1004b8
+ call Function1003c9
+ call Function1003f5
+ ld a, [wcd27]
+ set 7, a
+ ld [wcd27], a
+ ret
+
+.asm_1004b8
+ scf
+ ret
+; 1004ba
+
+Function1004ba: ; 1004ba
+ call Function10038a
+ and a
+ jr nz, .asm_1004c8
+ ld a, [wcd27]
+ inc a
+ ld [wcd27], a
+ ret
+
+.asm_1004c8
+ ld a, $8
+ ld [wcd27], a
+ ret
+; 1004ce
+
+Function1004ce: ; 1004ce
+ call Function100337
+ ret c
+ ret z
+ cp $2
+ ret nz
+ ld a, [wcd27]
+ inc a
+ ld [wcd27], a
+ ret
+; 1004de
+
+Function1004de: ; 1004de
+ call Function100393
+ ld a, [wcd27]
+ inc a
+ ld [wcd27], a
+ ret
+; 1004e9
+
+Function1004e9: ; 1004e9
+ call Function10038a
+ ld a, [wcd27]
+ inc a
+ ld [wcd27], a
+ ret
+; 1004f4
+
+Function1004f4: ; 1004f4
+ call Function100337
+ ret c
+ ret z
+ ld a, [wcd27]
+ inc a
+ ld [wcd27], a
+ call Function10039c
+ ret
+; 100504
+
+Function100504: ; 100504
+ push de
+ call Function3f20
+ call Function1ad2
+ pop de
+ hlcoord 4, 2
+ call PlaceString
+ ret
+; 100513
+
+Function100513: ; 100513
+ call Function3f7c
+ call Function1c89
+ call Function1c10
+ ld hl, wcfa5
+ set 7, [hl]
+ ret
+; 100522
+
+Function100522: ; 100522
+ ld a, [wcd28]
+ ld hl, Jumptable_10052a
+ rst JumpTable
+ ret
+; 10052a
+
+Jumptable_10052a: ; 10052a
+ dw Function100534
+ dw Function100545
+ dw Function100545
+ dw Function100545
+ dw Function10054d
+; 100534
+
+Function100534: ; 100534
+ call Function100513
+ call Function1ad2
+ call Function321c
+ ld a, [wcd28]
+ inc a
+ ld [wcd28], a
+ ret
+; 100545
+
+Function100545: ; 100545
+ ld a, [wcd28]
+ inc a
+ ld [wcd28], a
+ ret
+; 10054d
+
+Function10054d: ; 10054d
+ callba Function241ba
+ ld a, c
+ ld hl, wcfa8
+ and [hl]
+ ret z
+ call Function1ff8
+ bit 0, a
+ jr nz, .asm_100565
+ bit 1, a
+ jr nz, .asm_10056f
+ ret
+
+.asm_100565
+ ld a, [wcd28]
+ set 7, a
+ ld [wcd28], a
+ and a
+ ret
+
+.asm_10056f
+ ld a, [wcd28]
+ set 7, a
+ ld [wcd28], a
+ scf
+ ret
+; 100579
+
+Function100579: ; 100579
+ ld a, [wcd26]
+ ld hl, Jumptable_100581
+ rst JumpTable
+ ret
+; 100581
+
+Jumptable_100581: ; 100581
+ dw Function100585
+ dw Function100597
+; 100585
+
+Function100585: ; 100585
+ ld hl, MenuDataHeader_1005b2
+ call LoadMenuDataHeader
+ ld a, $0
+ ld [wcd28], a
+ ld a, [wcd26]
+ inc a
+ ld [wcd26], a
+
+Function100597: ; 100597
+ call Function100522
+ ld a, [wcd28]
+ bit 7, a
+ ret z
+ jr nc, .asm_1005a6
+ xor a
+ ld [wcfa9], a
+
+.asm_1005a6
+ call Function1c07
+ ld a, [wcd26]
+ set 7, a
+ ld [wcd26], a
+ ret
+; 1005b2
+
+MenuDataHeader_1005b2: ; 1005b2
+ db $40 ; flags
+ db 6, 14
+ db 10, 19
+ dw MenuData2_1005ba
+ db 1 ; default option
+
+MenuData2_1005ba:
+ db $c0 ; flags
+ db 2
+ db "はい@"
+ db "いいえ@"
+; 1005c3
+
+Function1005c3: ; 1005c3
+ ld a, [wcd26]
+ ld hl, Jumptable_1005cb
+ rst JumpTable
+ ret
+; 1005cb
+
+Jumptable_1005cb: ; 1005cb
+ dw Function1005cf
+ dw Function1005e1
+; 1005cf
+
+Function1005cf: ; 1005cf
+ ld hl, MenuDataHeader_1005fc
+ call LoadMenuDataHeader
+ ld a, $0
+ ld [wcd28], a
+ ld a, [wcd26]
+ inc a
+ ld [wcd26], a
+
+Function1005e1: ; 1005e1
+ call Function100522
+ ld a, [wcd28]
+ bit 7, a
+ ret z
+ jr nc, .asm_1005f0
+ xor a
+ ld [wcfa9], a
+.asm_1005f0
+ call Function1c07
+ ld a, [wcd26]
+ set 7, a
+ ld [wcd26], a
+ ret
+; 1005fc
+
+MenuDataHeader_1005fc: ; 1005fc
+ db $40 ; flags
+ db 6, 14
+ db 10, 19
+ dw MenuData2_100604
+ db 1 ; default option
+
+MenuData2_100604: ; 100604
+ db $c0 ; flags
+ db 2
+ db "かける@"
+ db "まつ@"
+; 10060d
+
+Function10060d: ; 10060d
+ hlcoord 3, 10
+ ld b, $1
+ ld c, $b
+ call Function3eea
+ ld de, String_100621
+ hlcoord 4, 11
+ call PlaceString
+ ret
+; 100621
+
+String_100621: ; 100621
+ db "つうしんたいきちゅう!@"
+; 10062d
+
+Function10062d: ; 10062d
+ push bc
+ call Function10064e
+ pop bc
+ ld a, [wcd44]
+ cp b
+ jr nc, .asm_10063a
+ and a
+ ret
+
+.asm_10063a
+ ld a, $fa
+ ld [wcd2b], a
+ scf
+ ret
+; 100641
+
+Function100641: ; 100641
+ xor a
+ ld [wcd44], a
+ ld [wcd45], a
+ ld [wcd46], a
+ ret
+; 10064c
+
+Function10064c: ; 10064c
+ ld c, 1
+
+Function10064e: ; 10064e
+ ld hl, wcd46
+ ld a, [hl]
+ add c
+ cp $3c
+ jr c, .asm_100658
+ xor a
+
+.asm_100658
+ ld [hld], a
+ ret c
+ ld a, [hl]
+ inc a
+ cp $3c
+ jr c, .asm_100661
+ xor a
+
+.asm_100661
+ ld [hld], a
+ ret c
+ inc [hl]
+ ret
+; 100665
+
+Function100665: ; 100665
+ call UpdateTime
+ ld hl, wcd36
+ ld a, [hHours]
+ ld [hli], a
+ ld a, [hMinutes]
+ ld [hli], a
+ ld a, [hSeconds]
+ ld [hl], a
+ ret
+; 100675
+
+Function100675: ; 100675
+ ld hl, wcd2a
+ bit 2, [hl]
+ set 2, [hl]
+ ret nz
+ call Function1006d3
+ ret
+; 100681
+
+Function100681: ; 100681
+ push hl
+ ld hl, wcd2a
+ bit 2, [hl]
+ ld hl, wcd2a
+ set 2, [hl]
+ pop hl
+ jr nz, .asm_100694
+ push hl
+ call Function1006d3
+ pop hl
+.asm_100694
+ ld de, wcd32
+
+Function100697: ; 100697
+ ld a, [de]
+ and a
+ jr nz, .asm_1006bb
+ inc de
+ push de
+ call .asm_1006b4
+ ld de, String1006c2
+ call PlaceString
+ ld h, b
+ ld l, c
+ pop de
+ inc de
+ call .asm_1006b4
+ ld de, String1006c6
+ call PlaceString
+ ret
+
+.asm_1006b4
+ ld bc, $8102
+ call PrintNum
+ ret
+
+.asm_1006bb
+ ld de, String1006ca
+ call PlaceString
+ ret
+; 1006c2
+
+String1006c2: ; 1006c2
+ db "ふん @"
+String1006c6: ; 1006c6
+ db "びょう@"
+String1006ca: ; 1006ca
+ db "1じかんいじょう@"
+; 1006d3
+
+Function1006d3: ; 1006d3
+ call UpdateTime
+ ld de, wcd34
+ ld hl, wcd38
+
+Function1006dc: ; 1006dc
+ ld a, [hld]
+ ld c, a
+ ld a, [hSeconds]
+ sub c
+ jr nc, .asm_1006e5
+ add $3c
+
+.asm_1006e5
+ ld [de], a
+ dec de
+ ld a, [hld]
+ ld c, a
+ ld a, [hMinutes]
+ sbc c
+ jr nc, .asm_1006f0
+ add $3c
+
+.asm_1006f0
+ ld [de], a
+ dec de
+ ld a, [hl]
+ ld c, a
+ ld a, [hHours]
+ sbc c
+ jr nc, .asm_1006fb
+ add $18
+
+.asm_1006fb
+ ld [de], a
+ ret
+; 1006fd
+
+Function1006fd: ; 1006fd
+ ld a, $4
+ ld hl, $a800
+ call GetSRAMBank
+ xor a
+ ld [hli], a
+ ld [hli], a
+ ld [hli], a
+ call CloseSRAM
+ ret
+; 10070d
+
+Function10070d: ; 10070d
+ ld a, $4
+ ld hl, $a800
+ call GetSRAMBank
+ xor a
+ ld [hli], a
+ ld a, $a
+ ld [hli], a
+ xor a
+ ld [hli], a
+ call CloseSRAM
+ ret
+; 100720
+
+Function100720: ; 100720
+ xor a
+ ld [wcd6a], a
+ call UpdateTime
+ ld a, [hHours]
+ ld [wcd72], a
+ ld a, [hMinutes]
+ ld [wcd73], a
+ ld a, [hSeconds]
+ ld [wcd74], a
+ ld a, $4
+ ld hl, $a800
+ call GetSRAMBank
+ ld a, [hli]
+ ld [wcd6c], a
+ ld a, [hli]
+ ld [wcd6d], a
+ ld a, [hli]
+ ld [wcd6e], a
+ call CloseSRAM
+ ld a, [wcd6d]
+ ld [wcd6b], a
+ ret
+; 100754
+
+Function100754: ; 100754
+ call UpdateTime
+ ld a, [hHours]
+ ld [wcd72], a
+ ld a, [hMinutes]
+ ld [wcd73], a
+ ld a, [hSeconds]
+ ld [wcd74], a
+ ld a, [wcd6d]
+ ld [wcd6b], a
+ ld hl, wcd2a
+ res 6, [hl]
+ ret
+; 100772
+
+Function100772: ; 100772
+ push de
+ ld hl, wcd6c
+ ld a, [de]
+ cp [hl]
+ jr c, .asm_10079a
+ jr nz, .asm_10078c
+ inc hl
+ inc de
+ ld a, [de]
+ cp [hl]
+ jr c, .asm_10079a
+ jr nz, .asm_10078c
+ inc hl
+ inc de
+ ld a, [de]
+ cp [hl]
+ jr c, .asm_10079a
+ jr z, .asm_10079a
+
+.asm_10078c
+ pop hl
+ ld a, [hli]
+ ld [wcd6c], a
+ ld a, [hli]
+ ld [wcd6d], a
+ ld a, [hli]
+ ld [wcd6e], a
+ ret
+
+.asm_10079a
+ pop de
+ ret
+; 10079c
+
+
+Function10079c: ; 10079c
+ ld a, [wcd21]
+ cp $1
+ jr nz, .asm_1007f4
+ ld hl, wcd2a
+ bit 5, [hl]
+ jr nz, .asm_1007f4
+ ld hl, wcd2a
+ bit 6, [hl]
+ jr nz, .asm_1007f4
+ ld a, [wcd6a]
+ add c
+ cp $3c
+ jr nc, .asm_1007be
+ ld [wcd6a], a
+ and a
+ ret
+
+.asm_1007be
+ sub $3c
+ ld [wcd6a], a
+ ld d, b
+ push de
+ call Function1007f6
+ pop de
+ jr c, .asm_1007e5
+ ld a, c
+ and a
+ jr nz, .asm_1007e5
+ ld a, b
+ cp $a
+ jr nc, .asm_1007e5
+ ld a, d
+ and a
+ ret z
+ ld a, [wcd6b]
+ cp b
+ ret z
+ ld a, b
+ ld [wcd6b], a
+ call Function1008e0
+ and a
+ ret
+
+.asm_1007e5
+ call Function1008e0
+ ld hl, wcd2a
+ set 4, [hl]
+ ld a, $fc
+ ld [wcd2b], a
+ scf
+ ret
+
+.asm_1007f4
+ and a
+ ret
+; 1007f6
+
+Function1007f6: ; 1007f6
+ call UpdateTime
+ ld hl, wcd74
+ ld de, wcd71
+ call Function1006dc
+ ld a, $4
+ call GetSRAMBank
+ ld hl, $a802
+ call Function100826
+ call CloseSRAM
+ ld hl, wcd6e
+ call Function100826
+ ld a, [hHours]
+ ld [wcd72], a
+ ld a, [hMinutes]
+ ld [wcd73], a
+ ld a, [hSeconds]
+ ld [wcd74], a
+ ret
+; 100826
+
+Function100826: ; 100826
+ ld a, [wcd71]
+ add [hl]
+ sub $3c
+ jr nc, .asm_100830
+ add $3c
+
+.asm_100830
+ ld [hld], a
+ ccf
+ ld a, [BGMapBufferPtrs]
+ adc [hl]
+ sub $3c
+ jr nc, .asm_10083c
+ add $3c
+
+.asm_10083c
+ ld [hld], a
+ ld b, a
+ ccf
+ ld a, [wcd6f]
+ adc [hl]
+ ld [hl], a
+ ld c, a
+ ret
+; 100846
+
+Function100846: ; 100846
+ ld hl, wcd2a
+ bit 5, [hl]
+ jr nz, .asm_10087c
+ ld a, [wcd6e]
+ ld c, a
+ ld a, $0
+ sub c
+ jr nc, .asm_100858
+ add $3c
+
+.asm_100858
+ ld [StringBuffer2 + 2], a
+ ld a, [wcd6d]
+ ld c, a
+ ld a, $a
+ sbc c
+ ld [StringBuffer2 + 1], a
+ xor a
+ ld [StringBuffer2], a
+ ld de, String_10088e
+ hlcoord 1, 14
+ call PlaceString
+ ld de, StringBuffer2
+ hlcoord 4, 16
+ call Function100697
+ ret
+
+.asm_10087c
+ ld de, String_10088e
+ hlcoord 1, 14
+ call PlaceString
+ ld h, b
+ ld l, c
+ ld de, String_10089f
+ call PlaceString
+ ret
+; 10088e
+
+String_10088e: ; 10088e
+ db "モバイルたいせん できる"
+ next "じかん@"
+; 10089f
+
+String_10089f: ; 10089f
+ db " むせいげん@"
+; 1008a6
+
+Function1008a6: ; 1008a6
+ ld a, $4
+ ld hl, $a800
+ call GetSRAMBank
+ ld a, [hli]
+ ld [StringBuffer2], a
+ ld a, [hli]
+ ld [StringBuffer2 + 1], a
+ ld a, [hli]
+ ld [StringBuffer2 + 2], a
+ call CloseSRAM
+ ld a, [StringBuffer2 + 2]
+ ld b, a
+ ld a, $0
+ sub b
+ jr nc, .asm_1008c8
+ add $3c
+
+.asm_1008c8
+ ld b, a
+ ld a, [StringBuffer2 + 1]
+ ld c, a
+ ld a, $a
+ sbc c
+ ld c, a
+ jr c, .asm_1008da
+ ld a, [StringBuffer2]
+ and a
+ jr nz, .asm_1008da
+ ret
+
+.asm_1008da
+ call Function10070d
+ ld c, $0
+ ret
+; 1008e0
+
+
+Function1008e0: ; 1008e0
+ ld a, [hBGMapMode]
+ ld b, a
+ ld a, [hVBlank]
+ ld c, a
+ push bc
+ xor a
+ ld [hBGMapMode], a
+ ld a, $3
+ ld [hVBlank], a
+ call Function100970
+ call Function100902
+ call Function100989
+ call DelayFrame
+ pop bc
+ ld a, c
+ ld [hVBlank], a
+ ld a, b
+ ld [hBGMapMode], a
+ ret
+; 100902
+
+Function100902: ; 100902
+ hlcoord 3, 10
+ ld b, $1
+ ld c, $b
+ call TextBox
+ ld a, [wcd6d]
+ ld c, a
+ ld a, $a
+ sub c
+ ld [StringBuffer2], a
+ jr z, .asm_10093f
+ ld de, .string_100966
+ hlcoord 4, 11
+ call PlaceString
+ hlcoord 8, 11
+ ld bc, $0102
+ ld de, StringBuffer2
+ call PrintNum
+ ld de, SFX_TWO_PC_BEEPS
+ call PlaySFX
+ callba Function104061
+ ld c, $3c
+ call DelayFrames
+ ret
+
+.asm_10093f
+ ld de, .string_10095a
+ hlcoord 4, 11
+ call PlaceString
+ ld de, SFX_4_NOTE_DITTY
+ call PlaySFX
+ callba Function104061
+ ld c, $78
+ call DelayFrames
+ ret
+; 10095a
+
+.string_10095a ; 10095a
+ db "たいせん しゅうりょう@"
+.string_100966 ; 100966
+ db "のこり ふん", $e7, "@"
+; 100970
+
+
+Function100970: ; 100970
+ ld hl, TileMap
+ ld de, wdc00
+ call Function1009a5
+ ld hl, AttrMap
+ ld de, $dd68
+ call Function1009a5
+ call Function1009d2
+ call Function1009ae
+ ret
+; 100989
+
+Function100989: ; 100989
+ ld hl, wdc00
+ ld de, TileMap
+ call Function1009a5
+ call Function1009ae
+ callba Function104061
+ ld hl, $dd68
+ ld de, AttrMap
+ call Function1009a5
+ ret
+; 1009a5
+
+Function1009a5: ; 1009a5
+ ld bc, $0168
+ ld a, $3
+ call FarCopyWRAM
+ ret
+; 1009ae
+
+Function1009ae: ; 1009ae
+ ld a, [rSVBK]
+ push af
+ ld a, $3
+ ld [rSVBK], a
+ ld hl, $d800
+ ld de, AttrMap
+ ld c, $14
+ ld b, $12
+.asm_1009bf
+ push bc
+.asm_1009c0
+ ld a, [hli]
+ ld [de], a
+ inc de
+ dec c
+ jr nz, .asm_1009c0
+ ld bc, $000c
+ add hl, bc
+ pop bc
+ dec b
+ jr nz, .asm_1009bf
+ pop af
+ ld [rSVBK], a
+ ret
+; 1009d2
+
+Function1009d2: ; 1009d2
+ ld a, [rSVBK]
+ push af
+ ld a, $3
+ ld [rSVBK], a
+ ld a, [rVBK]
+ push af
+ ld a, $1
+ ld [rVBK], a
+ ld hl, $d800
+ ld de, VBGMap0
+ lb bc, $3, $24
+ call Get2bpp
+ pop af
+ ld [rVBK], a
+ pop af
+ ld [rSVBK], a
+ ret
+; 1009f3
+
+Function1009f3: ; 1009f3
+ ld a, [hJoyDown]
+ and SELECT + A_BUTTON
+ cp SELECT + A_BUTTON
+ jr nz, .asm_100a07
+ ld hl, wcd2a
+ set 4, [hl]
+ ld a, $f8
+ ld [wcd2b], a
+ scf
+ ret
+
+.asm_100a07
+ xor a
+ ret
+; 100a09
+
+Function100a09: ; 100a09
+ call Function100a2e
+ ld [wd431], a
+ callba Function4000
+ ld a, [InLinkBattle]
+ cp $4
+ jr nz, .asm_100a2a
+ call Function100a87
+ call Function100da5
+ callba Function3ee27
+ jr .asm_100a2d
+
+.asm_100a2a
+ call Function100a53
+
+.asm_100a2d
+ ret
+; 100a2e
+
+Function100a2e: ; 100a2e
+ ld a, [wd0ec]
+ and a
+ jr nz, .asm_100a48
+ ld a, [CurPlayerMove]
+ ld b, $e
+ cp STRUGGLE
+ jr z, .asm_100a4f
+ ld b, $d
+ cp $ff
+ jr z, .asm_100a4f
+ ld a, [CurMoveNum]
+ jr .asm_100a50
+
+.asm_100a48
+ ld a, [CurPartyMon]
+ add $4
+ jr .asm_100a50
+
+.asm_100a4f
+ ld a, b
+
+.asm_100a50
+ and $f
+ ret
+; 100a53
+
+Function100a53: ; 100a53
+ ld a, [wd431]
+ ld [wcf56], a
+ ld a, $ff
+ ld [wcf52], a
+.asm_100a5e
+ call Function8c1
+ call DelayFrame
+ ld a, [wcf52]
+ inc a
+ jr z, .asm_100a5e
+ ld b, $a
+.asm_100a6c
+ call DelayFrame
+ call Function8c1
+ dec b
+ jr nz, .asm_100a6c
+ ld b, $a
+.asm_100a77
+ call DelayFrame
+ call Function908
+ dec b
+ jr nz, .asm_100a77
+ ld a, [wcf52]
+ ld [wd430], a
+ ret
+; 100a87
+
+Function100a87: ; 100a87
+ call Function100acf
+ call Function100641
+ ld a, $0
+ ld [wcd27], a
+.asm_100a92
+ call DelayFrame
+ call GetJoypad
+ callba Function100382
+ ld c, $1
+ ld b, $3
+ push bc
+ call Function10062d
+ pop bc
+ jr c, .asm_100ac7
+ ld b, $1
+ call Function10079c
+ jr c, .asm_100ac7
+ call Function1009f3
+ jr c, .asm_100ac7
+ ld a, [wcd2b]
+ and a
+ jr nz, .asm_100ac7
+ ld a, [wcd27]
+ bit 7, a
+ jr z, .asm_100a92
+ call Function100ae7
+ jr .asm_100ace
+
+.asm_100ac7
+ ld a, $f
+ ld [wd430], a
+ jr .asm_100ace
+
+.asm_100ace
+ ret
+; 100acf
+
+Function100acf: ; 100acf
+ ld de, Unknown_100b0a
+ ld hl, wccb5
+ ld a, [wd431]
+ ld [hli], a
+ ld c, $1
+.asm_100adb
+ ld a, [de]
+ inc de
+ ld [hli], a
+ inc c
+ and a
+ jr nz, .asm_100adb
+ ld a, c
+ ld [wccb4], a
+ ret
+; 100ae7
+
+Function100ae7: ; 100ae7
+ ld de, Unknown_100b0a
+ ld hl, wcc62
+.asm_100aed
+ ld a, [de]
+ inc de
+ and a
+ jr z, .asm_100af8
+ cp [hl]
+ jr nz, .asm_100aff
+ inc hl
+ jr .asm_100aed
+
+.asm_100af8
+ ld a, [wcc61]
+ ld [wd430], a
+ ret
+
+.asm_100aff
+ ld a, $f
+ ld [wd430], a
+ ld a, $f1
+ ld [wcd2b], a
+ ret
+; 100b0a
+
+
+SECTION "tetsuji", ROMX, BANK[$40]
+
+ charmap " ", $20 ; revert to ascii
+
+Unknown_100b0a: ; 100b0a
+ db "tetsuji", 0
+; 100b12
+
+
+SECTION "bank40_2", ROMX, BANK[$40]
+
+Function100b12: ; 100b12
+ call Function100dd8
+ ret c
+ ld hl, BattleMenuDataHeader
+ ld a, BANK(BattleMenuDataHeader)
+ ld de, LoadMenuDataHeader
+ call FarCall_de
+ ld a, BANK(BattleMenuDataHeader)
+ ld [wcf94], a
+ ld a, [wd0d2]
+ ld [wcf88], a
+ call Function100e72
+ call Function100b45
+ callba Function8e85
+ call Function100ed4
+ ld a, [wcf88]
+ ld [wd0d2], a
+ call Function1c07
+ ret
+; 100b45
+
+Function100b45: ; 100b45
+ call Function100b7a
+.asm_100b48
+ call Function100dd2
+ callba Function241ba
+ push bc
+ callba Function10402d
+ call Function100e2d
+ pop bc
+ jr c, .asm_100b6b
+ ld a, [wcfa8]
+ and c
+ jr z, .asm_100b48
+ callba Function24098
+ ret
+
+.asm_100b6b
+ ld a, [wcfa4]
+ ld c, a
+ ld a, [wcfa3]
+ call SimpleMultiply
+ ld [wcf88], a
+ and a
+ ret
+; 100b7a
+
+Function100b7a: ; 100b7a
+ ld hl, Function1c66
+ ld a, [wcf94]
+ rst FarCall
+ callba Function24085
+ callba MobileTextBorder
+ call Function1ad2
+ call Function321c
+ callba Function2411a
+ ld hl, wcfa5
+ set 7, [hl]
+ ret
+; 100b9f
+
+Function100b9f: ; 100b9f
+ xor a
+ ld [wd0e3], a
+ callba Function3e786
+ ret z
+ call Function100dd8
+ jp c, Function2ec8
+ call Function100e72
+ call Function100bc2
+ push af
+ callba Function8e85
+ call Function100ed4
+ pop af
+ ret
+; 100bc2
+
+Function100bc2: ; 100bc2
+ xor a
+ ld [hBGMapMode], a
+ call Function100c74
+ call Function100c98
+.asm_100bcb
+ callba MoveInfoBox
+.asm_100bd1
+ call Function100dd2
+ callba Function241ba
+ push bc
+ callba Function10402d
+ call Function100e2d
+ pop bc
+ jr c, .asm_100c25
+ ld a, [wcfa8]
+ and c
+ bit 6, a
+ jp nz, .asm_100bff
+ bit 7, a
+ jp nz, .asm_100c10
+ bit 0, a
+ jr nz, .asm_100c30
+ bit 1, a
+ jr nz, .asm_100c25
+ jr .asm_100bd1
+
+.asm_100bff
+ ld a, [wcfa9]
+ and a
+ jp nz, .asm_100bcb
+ ld a, [wd0eb]
+ inc a
+ ld [wcfa9], a
+ jp .asm_100bcb
+
+.asm_100c10
+ ld a, [wcfa9]
+ ld b, a
+ ld a, [wd0eb]
+ inc a
+ inc a
+ cp b
+ jp nz, .asm_100bcb
+ ld a, $1
+ ld [wcfa9], a
+ jp .asm_100bcb
+
+.asm_100c25
+ ld a, [wcfa9]
+ dec a
+ ld [CurMoveNum], a
+ ld a, $1
+ and a
+ ret
+
+.asm_100c30
+ ld a, [wcfa9]
+ dec a
+ ld [CurMoveNum], a
+ ld a, [wcfa9]
+ dec a
+ ld c, a
+ ld b, 0
+ ld hl, BattleMonPP
+ add hl, bc
+ ld a, [hl]
+ and $3f
+ jr z, .asm_100c68
+ ld a, [PlayerDisableCount]
+ swap a
+ and $f
+ dec a
+ cp c
+ jr z, .asm_100c63
+ ld a, [wcfa9]
+ dec a
+ ld c, a
+ ld b, 0
+ ld hl, BattleMonMoves
+ add hl, bc
+ ld a, [hl]
+ ld [CurPlayerMove], a
+ xor a
+ ret
+
+.asm_100c63
+ ld hl, BattleText_0x80c5b
+ jr .asm_100c6b
+
+.asm_100c68
+ ld hl, BattleText_0x80c39
+
+.asm_100c6b
+ call StdBattleTextBox
+ call Function30b4
+ jp Function100bc2
+; 100c74
+
+Function100c74: ; 100c74
+ hlcoord 0, 8
+ ld b, 8
+ ld c, 8
+ call TextBox
+ ld hl, BattleMonMoves
+ ld de, wd25e
+ ld bc, NUM_MOVES
+ call CopyBytes
+ ld a, SCREEN_WIDTH * 2
+ ld [Buffer1], a
+ hlcoord 2, 10
+ predef ListMoves
+ ret
+; 100c98
+
+Function100c98: ; 100c98
+ ld de, Unknown_100cad
+ call Function1bb1
+ ld a, [wd0eb]
+ inc a
+ ld [wcfa3], a
+ ld a, [CurMoveNum]
+ inc a
+ ld [wcfa9], a
+ ret
+; 100cad
+
+Unknown_100cad: ; 100cad
+INCBIN "baserom.gbc",$100cad,$100cb5 - $100cad
+
+
+Function100cb5: ; 100cb5
+ call Function100dd8
+ ret c
+ ld hl, wcfa5
+ set 7, [hl]
+ res 6, [hl]
+.asm_100cc0
+ call Function100dd2
+ callba Function241ba
+ push bc
+ callba Function8cf69
+ callba Function10402d
+ call Function100dfd
+ pop bc
+ jr c, .asm_100d17
+ ld a, [wcfa8]
+ and c
+ jr z, .asm_100cc0
+ call Function1bee
+ ld a, [PartyCount]
+ inc a
+ ld b, a
+ ld a, [wcfa9]
+ cp b
+ jr z, .asm_100d17
+ ld [wd0d8], a
+ ld a, [$ffa9]
+ ld b, a
+ bit 1, b
+ jr nz, .asm_100d17
+ ld a, [wcfa9]
+ dec a
+ ld [CurPartyMon], a
+ ld c, a
+ ld b, $0
+ ld hl, PartySpecies
+ add hl, bc
+ ld a, [hl]
+ ld [CurPartySpecies], a
+ ld de, SFX_READ_TEXT_2
+ call PlaySFX
+ call WaitSFX
+ and a
+ ret
+
+.asm_100d17
+ ld de, SFX_READ_TEXT_2
+ call PlaySFX
+ call WaitSFX
+ scf
+ ret
+; 100d22
+
+Function100d22: ; 100d22
+ call Function100dd8
+ ret c
+ call Function100d67
+ ld hl, wcfa5
+ set 7, [hl]
+ res 6, [hl]
+.asm_100d30
+ call Function100dd2
+ callba Function241ba
+ push bc
+ callba Function8cf69
+ callba Function10402d
+ call Function100dfd
+ pop bc
+ jr c, .asm_100d54
+ ld a, [wcfa8]
+ and c
+ jr nz, .asm_100d56
+ jr .asm_100d30
+
+.asm_100d54
+ scf
+ ret
+
+.asm_100d56
+ push af
+ ld de, SFX_READ_TEXT_2
+ call PlaySFX
+ pop af
+ bit 1, a
+ jr z, .asm_100d65
+ ret z
+ scf
+ ret
+
+.asm_100d65
+ and a
+ ret
+; 100d67
+
+Function100d67: ; 100d67
+ ld hl, MenuDataHeader_100d88
+ call Function1d3c
+ xor a
+ ld [hBGMapMode], a
+ call Function1cbb
+ call Function1ad2
+ call Function1c89
+ call WaitBGMap
+ call Function1c66
+ call Function1c10
+ ld hl, wcfa5
+ set 6, [hl]
+ ret
+; 100d88
+
+MenuDataHeader_100d88: ; 100d88
+ db 0 ; flags
+ db 11, 11 ; start coords
+ db 17, 19 ; end coords
+ dw MenuData2_100d90
+ db 1 ; default option
+
+MenuData2_100d90: ; 100d90
+ db $c0 ; flags
+ db 3
+ db "いれかえる@"
+ db "つよさをみる@"
+ db "キャンセル@"
+; 100da5
+
+Function100da5: ; 100da5
+ ld hl, wcd2a
+ res 3, [hl]
+ ld hl, wcd29
+ res 0, [hl]
+ ret
+; 100db0
+
+Function100db0: ; 100db0
+ ld hl, wcd2a
+ bit 3, [hl]
+ jr nz, .asm_100dbe
+ ld hl, wcd2a
+ set 3, [hl]
+ scf
+ ret
+
+.asm_100dbe
+ xor a
+ ret
+; 100dc0
+
+
+
+Function100dc0: ; 100dc0
+ ld a, [InLinkBattle]
+ cp $4
+ jr nz, .asm_100dd0
+ ld hl, wcd2a
+ bit 3, [hl]
+ jr z, .asm_100dd0
+ scf
+ ret
+
+.asm_100dd0
+ xor a
+ ret
+; 100dd2
+
+Function100dd2: ; 100dd2
+ ld a, 30
+ ld [OverworldDelay], a
+ ret
+; 100dd8
+
+Function100dd8: ; 100dd8
+ ld c, $1
+ ld b, $3
+ callba Function10062d
+ jr c, .asm_100dfb
+ ld c, $3c
+ ld b, $1
+ call Function10079c
+ jr c, .asm_100dfb
+ callba Function10032e
+ ld a, [wcd2b]
+ and a
+ jr nz, .asm_100dfb
+ xor a
+ ret
+
+.asm_100dfb
+ scf
+ ret
+; 100dfd
+
+Function100dfd: ; 100dfd
+ ld a, [OverworldDelay]
+ ld c, a
+ ld a, 30
+ sub c
+ ld c, a
+ ld b, 3
+ push bc
+ callba Function10062d
+ pop bc
+ jr c, .asm_100e2b
+ ld b, 1
+ call Function10079c
+ jr c, .asm_100e2b
+ call Function1009f3
+ jr c, .asm_100e2b
+ callba Function10032e
+ ld a, [wcd2b]
+ and a
+ jr nz, .asm_100e2b
+ xor a
+ ret
+
+.asm_100e2b
+ scf
+ ret
+; 100e2d
+
+Function100e2d: ; 100e2d
+ ld a, [OverworldDelay]
+ ld c, a
+ ld a, 30
+ sub c
+ ld c, a
+ ld b, 3
+ push bc
+ callba Function10062d
+ pop bc
+ jr c, .asm_100e61
+ ld b, 1
+ call Function10079c
+ jr c, .asm_100e61
+ call Function1009f3
+ jr c, .asm_100e61
+ callba Function10032e
+ ld a, [wcd2b]
+ and a
+ jr nz, .asm_100e61
+ call Function100e63
+ call Function100e84
+ xor a
+ ret
+
+.asm_100e61
+ scf
+ ret
+; 100e63
+
+Function100e63: ; 100e63
+ ld a, e
+ cp $2
+ ret nz
+ call Function100db0
+ ret nc
+ ld de, SFX_ELEVATOR_END
+ call PlaySFX
+ ret
+; 100e72
+
+Function100e72: ; 100e72
+ xor a
+ ld hl, wcd29
+ bit 0, [hl]
+ jr z, .asm_100e7c
+ ld a, $a
+
+.asm_100e7c
+ ld [wcd67], a
+ xor a
+ ld [wcd68], a
+ ret
+; 100e84
+
+Function100e84: ; 100e84
+ ld a, [wcd67]
+ ld hl, Jumptable_100e8c
+ rst JumpTable
+ ret
+; 100e8c
+
+
+Jumptable_100e8c: ; 100e8c (40:4e8c)
+ dw Function100ea2
+ dw Function100eae
+ dw Function100eb4
+ dw Function100eae
+ dw Function100eb4
+ dw Function100eae
+ dw Function100eb4
+ dw Function100eae
+ dw Function100eb4
+ dw Function100eae
+ dw Function100ec4
+
+
+Function100ea2: ; 100ea2 (40:4ea2)
+ call Function100dc0
+ ret nc
+ ld hl, wcd29
+ set 0, [hl]
+ call Function100ec5
+
+
+Function100eae: ; 100eae
+ scf
+ call Function100eca
+ jr asm_100eb8
+
+Function100eb4: ; 100eb4
+ and a
+ call Function100eca
+
+asm_100eb8
+ ld hl, wcd68
+ inc [hl]
+ ld a, [hl]
+ cp $2
+ ret c
+ ld [hl], $0
+ jr Function100ec5
+
+Function100ec4: ; 100ec4
+ ret
+
+Function100ec5
+ ld hl, wcd67
+ inc [hl]
+ ret
+; 100eca
+
+Function100eca: ; 100eca
+ callba Function8e8b
+ call Function100ed4
+ ret
+; 100ed4
+
+Function100ed4: ; 100ed4
+ callba Function96a4
+ ld a, $1
+ ld [hCGBPalUpdate], a
+ ret
+; 100edf
+
+Function100edf: ; 100edf
+ ld hl, Unknown_100fc0
+ ld c, 1
+ jr asm_100f02
+
+Function100ee6: ; 100ee6
+ ld hl, Unknown_100fc0
+ ld c, 2
+ jr asm_100f02
+
+Function100eed: ; 100eed
+ ld hl, Unknown_100feb
+ ld c, 1
+ jr asm_100f02
+
+Function100ef4: ; 100ef4
+ ld hl, Unknown_100ff3
+ ld c, 1
+ jr asm_100f02
+
+Function100efb: ; 100efb
+ ld hl, Unknown_10102c
+ ld c, 1
+ jr asm_100f02
+
+asm_100f02:
+ ld a, c
+ ld [StringBuffer2], a
+ ld a, e
+ ld [StringBuffer2 + 1], a
+ ld a, d
+ ld [StringBuffer2 + 2], a
+ xor a
+ ld [StringBuffer2 + 4], a
+ ld [StringBuffer2 + 5], a
+.asm_100f15
+ ld a, [hl]
+ cp $ff
+ jr z, .asm_100f34
+ ld [StringBuffer2 + 3], a
+ push hl
+ inc hl
+ ld a, [hli]
+ ld e, a
+ ld a, [hli]
+ ld d, a
+ ld a, [hli]
+ ld c, a
+ ld a, [hli]
+ ld b, a
+ ld a, [hli]
+ ld h, [hl]
+ ld l, a
+ call Function100f3d
+ pop hl
+ ld de, $0007
+ add hl, de
+ jr .asm_100f15
+
+.asm_100f34
+ ld a, [StringBuffer2 + 4]
+ ld c, a
+ ld a, [StringBuffer2 + 5]
+ ld b, a
+ ret
+; 100f3d
+
+Function100f3d: ; 100f3d
+ ld a, [StringBuffer2]
+ cp $2
+ jr z, .asm_100f61
+ cp $1
+ jr z, .asm_100f77
+ cp $3
+ jr z, .asm_100f4d
+ ret
+
+.asm_100f4d
+ ld a, [StringBuffer2 + 1]
+ ld l, a
+ ld a, [StringBuffer2 + 2]
+ ld h, a
+ call Function100f8d
+ ld a, l
+ ld [StringBuffer2 + 1], a
+ ld a, h
+ ld [StringBuffer2 + 2], a
+ ret
+
+.asm_100f61
+ ld d, h
+ ld e, l
+ ld a, [StringBuffer2 + 1]
+ ld l, a
+ ld a, [StringBuffer2 + 2]
+ ld h, a
+ call Function100f8d
+ ld a, l
+ ld [StringBuffer2 + 1], a
+ ld a, h
+ ld [StringBuffer2 + 2], a
+ ret
+
+.asm_100f77
+ ld h, d
+ ld l, e
+ ld a, [StringBuffer2 + 1]
+ ld e, a
+ ld a, [StringBuffer2 + 2]
+ ld d, a
+ call Function100f8d
+ ld a, e
+ ld [StringBuffer2 + 1], a
+ ld a, d
+ ld [StringBuffer2 + 2], a
+ ret
+; 100f8d
+
+Function100f8d: ; 100f8d
+ push hl
+ ld a, [StringBuffer2 + 4]
+ ld l, a
+ ld a, [StringBuffer2 + 5]
+ ld h, a
+ add hl, bc
+ ld a, l
+ ld [StringBuffer2 + 4], a
+ ld a, h
+ ld [StringBuffer2 + 5], a
+ pop hl
+ ld a, [StringBuffer2 + 3]
+ bit 7, a
+ res 7, a
+ jr z, .asm_100fb6
+ and a
+ jr nz, .asm_100fb0
+ call CopyBytes
+ ret
+
+.asm_100fb0
+ and $7f
+ call FarCopyWRAM
+ ret
+
+.asm_100fb6
+ call GetSRAMBank
+ call CopyBytes
+ call CloseSRAM
+ ret
+; 100fc0
+
+Unknown_100fc0: ; 100fc0
+ dbwww $80, PlayerName, NAME_LENGTH, wd26b
+ dbwww $80, PartyCount, 1 + PARTY_LENGTH + 1, OTPartyCount
+ dbwww $80, PlayerID, 2, wd276
+ dbwww $80, PartyMons, $30 * PARTY_LENGTH, OTPartyMons
+ dbwww $80, PartyMonOT, NAME_LENGTH * PARTY_LENGTH, OTPartyMonOT
+ dbwww $80, PartyMonNicknames, PKMN_NAME_LENGTH * PARTY_LENGTH, OTPartyMonNicknames
+ db -1
+
+Unknown_100feb: ; 100feb
+ dbwww $00, $a600, $2f * PARTY_LENGTH, NULL
+ db -1
+
+Unknown_100ff3: ; 100ff3
+ dbwww $80, wdc41, 1, NULL
+ dbwww $80, PlayerName, NAME_LENGTH, NULL
+ dbwww $80, PlayerName, NAME_LENGTH, NULL
+ dbwww $80, PlayerID, 2, NULL
+ dbwww $80, wd84a, 2, NULL
+ dbwww $80, PlayerGender, 1, NULL
+ dbwww $04, $a603, 8, NULL
+ dbwww $04, $a007, $30, NULL
+ db -1
+
+Unknown_10102c: ; 10102c
+ dbwww $80, wd26b, 11, NULL
+ dbwww $80, wd276, 2, NULL
+ dbwww $80, OTPartyMonNicknames, PKMN_NAME_LENGTH * PARTY_LENGTH, NULL
+ dbwww $80, OTPartyMonOT, NAME_LENGTH * PARTY_LENGTH, NULL
+ dbwww $80, OTPartyMons, $30 * PARTY_LENGTH, NULL
+ db -1
+; 10104f
+
+Function101050: ; 101050
+ call Function10107d
+ ld a, [OTPartyCount]
+ ld hl, $c608
+ ld hl, $c608
+ ld bc, $01b3
+ call Function1010de
+ ld hl, wc7bb
+ ld [hl], e
+ inc hl
+ ld [hl], d
+ ld a, $7
+ call GetSRAMBank
+ ld hl, $c608
+ ld de, $a001
+ ld bc, $01b5
+ call CopyBytes
+ call CloseSRAM
+ ret
+; 10107d
+
+Function10107d: ; 10107d
+ xor a
+ ld hl, $c608
+ ld bc, $01b5
+ call ByteFill
+ ld hl, wd26b
+ ld de, $c608
+ ld bc, $000b
+ call CopyBytes
+ ld hl, wd271
+ ld a, [hli]
+ ld [$c608 + 11], a
+ ld a, [hl]
+ ld [$c608 + 12], a
+ ld hl, OTPartyMonNicknames
+ ld de, $c608 + 13
+ ld bc, $000b
+ call Function1010cd
+ ld hl, OTPartyMonOT
+ ld de, $c656 + 1
+ ld bc, $000b
+ call Function1010cd
+ ld hl, OTPartyMon1Species
+ ld de, $c68a + 15
+ ld bc, $0030
+ call Function1010cd
+ ld a, $50
+ ld [wc7b9], a
+ ld a, $33
+ ld [wc7ba], a
+ ret
+; 1010cd
+
+Function1010cd: ; 1010cd
+ push hl
+ ld hl, 0
+ ld a, [OTPartyCount]
+ call AddNTimes
+ ld b, h
+ ld c, l
+ pop hl
+ call CopyBytes
+ ret
+; 1010de
+
+Function1010de: ; 1010de
+ push hl
+ push bc
+ ld de, 0
+.asm_1010e3
+ ld a, [hli]
+ add e
+ ld e, a
+ ld a, d
+ adc 0
+ ld d, a
+ dec bc
+ ld a, b
+ or c
+ jr nz, .asm_1010e3
+ pop bc
+ pop hl
+ ret
+; 1010f2
+
+Function1010f2: ; 1010f2
+ xor a
+ ld hl, StringBuffer2
+ ld bc, $0009
+ call ByteFill
+ ld hl, wdc5c
+ ld de, PartyCount
+ call Function101145
+ ld hl, wdc5c
+ ld de, PartyMon1Species
+ call Function10117c
+ ld hl, wdc5c
+ ld de, PartyMonOT
+ call Function101181
+ ld hl, wdc5c
+ ld de, PartyMonNicknames
+ call Function101181
+ ld hl, wcd75
+ ld de, OTPartyCount
+ call Function101145
+ ld hl, wcd75
+ ld de, OTPartyMon1Species
+ call Function10117c
+ ld hl, wcd75
+ ld de, OTPartyMonOT
+ call Function101181
+ ld hl, wcd75
+ ld de, OTPartyMonNicknames
+ call Function101181
+ ret
+; 101145
+
+Function101145: ; 101145
+ push de
+ ld bc, StringBuffer2 + 6
+ xor a
+.asm_10114a
+ push af
+ call Function101168
+ ld [bc], a
+ inc bc
+ pop af
+ inc a
+ cp $3
+ jr nz, .asm_10114a
+ pop de
+ ld a, $3
+ ld [de], a
+ inc de
+ ld hl, StringBuffer2 + 6
+ ld bc, $0003
+ call CopyBytes
+ ld a, $ff
+ ld [de], a
+ ret
+; 101168
+
+Function101168: ; 101168
+ push hl
+ add l
+ ld l, a
+ ld a, h
+ adc $0
+ ld h, a
+ ld a, [hl]
+ pop hl
+ push de
+ inc de
+ add e
+ ld e, a
+ ld a, d
+ adc $0
+ ld d, a
+ ld a, [de]
+ pop de
+ ret
+; 10117c
+
+Function10117c: ; 10117c
+ ld bc, $0030
+ jr asm_101184
+
+Function101181: ; 101181
+ ld bc, $000b
+
+asm_101184:
+ ld a, $c608 % $100
+ ld [StringBuffer2], a
+ ld a, $c608 / $100
+ ld [StringBuffer2 + 1], a
+ ld a, c
+ ld [StringBuffer2 + 2], a
+ ld a, b
+ ld [StringBuffer2 + 3], a
+ ld a, e
+ ld [StringBuffer2 + 4], a
+ ld a, d
+ ld [StringBuffer2 + 5], a
+ ld a, $3
+.asm_1011a0
+ push af
+ ld a, [hli]
+ push hl
+ push af
+ call Function1011df
+ call Function1011e8
+ pop af
+ call AddNTimes
+ ld a, [StringBuffer2]
+ ld e, a
+ ld a, [StringBuffer2 + 1]
+ ld d, a
+ call CopyBytes
+ ld a, e
+ ld [StringBuffer2], a
+ ld a, d
+ ld [StringBuffer2 + 1], a
+ pop hl
+ pop af
+ dec a
+ jr nz, .asm_1011a0
+ call Function1011e8
+ ld a, 3
+ ld hl, 0
+ call AddNTimes
+ ld b, h
+ ld c, l
+ call Function1011df
+ ld d, h
+ ld e, l
+ ld hl, $c608
+ call CopyBytes
+ ret
+; 1011df
+
+Function1011df: ; 1011df
+ ld a, [StringBuffer2 + 4]
+ ld l, a
+ ld a, [StringBuffer2 + 5]
+ ld h, a
+ ret
+; 1011e8
+
+Function1011e8: ; 1011e8
+ ld a, [StringBuffer2 + 2]
+ ld c, a
+ ld a, [StringBuffer2 + 3]
+ ld b, a
+ ret
+; 1011f1
+
+Function1011f1: ; 1011f1
+ ld a, $4
+ call GetSRAMBank
+ ld a, [$a60c]
+ ld [wdc41], a
+ call CloseSRAM
+ ld hl, wdc41
+ res 4, [hl]
+ ld hl, GameTimerPause
+ bit 7, [hl]
+ jr z, .asm_101210
+ ld hl, wdc41
+ set 4, [hl]
+
+.asm_101210
+ call Function10209c
+ xor a
+ ld [wdc5f], a
+ ld [wdc60], a
+ ld a, $4
+ ld [InLinkBattle], a
+ ret
+; 101220
+
+Function101220: ; 101220
+ xor a
+ ld [InLinkBattle], a
+ ret
+; 101225
+
+Function101225: ; 101225
+ ld d, 1
+ ld e, BANK(Jumptable_101297)
+ ld bc, Jumptable_101297
+ call Function100000
+ jr Function10123d
+
+Function101231: ; 101231
+ ld d, 2
+ ld e, BANK(Jumptable_101297)
+ ld bc, Jumptable_101297
+ call Function100000
+ jr Function10123d
+
+Function10123d: ; 10123d
+ xor a
+ ld [ScriptVar], a
+ ld a, c
+ ld hl, Jumptable_101247
+ rst JumpTable
+ ret
+; 101247
+
+Jumptable_101247: ; 101247
+ dw Function101251
+ dw Function10127d
+ dw Function10127c
+ dw Function10126c
+ dw Function101265
+; 101251
+
+Function101251: ; 101251
+ call Function1ad2
+ call ResetWindow
+ ld hl, UnknownText_0x1021f4
+ call Function1021e0
+ call Function1020ea
+ ret c
+ call Function102142
+ ret
+; 101265
+
+Function101265: ; 101265
+ ld hl, UnknownText_0x1021ef
+ call Function1021e0
+ ret
+; 10126c
+
+Function10126c: ; 10126c
+ call Function1ad2
+ callba Script_reloadmappart
+ ld hl, UnknownText_0x1021f4
+ call Function1021e0
+ ret
+; 10127c
+
+Function10127c: ; 10127c
+ ret
+; 10127d
+
+Function10127d: ; 10127d
+ ret
+; 10127e
+
+Function10127e: ; 10127e
+ ld a, [wdc5f]
+ and a
+ jr z, .asm_101290
+ cp $1
+ ld c, $27
+ jr z, .asm_101292
+ cp $2
+ ld c, $37
+ jr z, .asm_101292
+
+.asm_101290
+ ld c, $0
+
+.asm_101292
+ ld a, c
+ ld [wcd25], a
+ ret
+; 101297
+
+Jumptable_101297: ; 101297
+ dw Function101a97
+ dw Function101ab4
+ dw Function101475
+ dw Function101b0f
+ dw Function101438
+ dw Function101b2b
+ dw Function101b59
+ dw Function101475
+ dw Function101b70
+ dw Function101438
+ dw Function101b8f
+ dw Function101d7b
+ dw Function101d95
+ dw Function101475
+ dw Function101db2
+ dw Function101e4f
+ dw Function101475
+ dw Function101e64
+ dw Function101e4f
+ dw Function101475
+ dw Function101e64
+ dw Function101d95
+ dw Function101475
+ dw Function101db2
+ dw Function101dd0
+ dw Function101de3
+ dw Function101e39
+ dw Function101e09
+ dw Function101e4f
+ dw Function101475
+ dw Function101e64
+ dw Function101d95
+ dw Function101475
+ dw Function101db2
+ dw Function101e09
+ dw Function101e31
+ dw Function101bc8
+ dw Function101438
+ dw Function101be5
+ dw Function101ac6
+ dw Function101ab4
+ dw Function101475
+ dw Function101c11
+ dw Function1014f4
+ dw Function101cc8
+ dw Function1014e2
+ dw Function1014e2
+ dw Function101d10
+ dw Function101d2a
+ dw Function101d2a
+ dw Function101507
+ dw Function10156d
+ dw Function101557
+ dw Function10158a
+ dw Function101c42
+ dw Function101aed
+ dw Function101ab4
+ dw Function101475
+ dw Function101c2b
+ dw Function1014f4
+ dw Function101cdf
+ dw Function1014e2
+ dw Function1014e2
+ dw Function101d1e
+ dw Function101d2a
+ dw Function101d2a
+ dw Function101507
+ dw Function10156d
+ dw Function101544
+ dw Function10158a
+ dw Function101c42
+ dw Function101c50
+ dw Function1014ce
+ dw Function101cf6
+ dw Function101826
+ dw Function1017e4
+ dw Function1017f1
+ dw Function1018a8
+ dw Function1018d6
+ dw Function1017e4
+ dw Function1017f1
+ dw Function1018e1
+ dw Function1015df
+ dw Function10167d
+ dw Function10168a
+ dw Function10162a
+ dw Function1015be
+ dw Function10167d
+ dw Function10168a
+ dw Function10161f
+ dw Function10159d
+ dw Function10167d
+ dw Function10168a
+ dw Function101600
+ dw Function101d03
+ dw Function101d6b
+ dw Function10159d
+ dw Function1014ce
+ dw Function10168e
+ dw Function101600
+ dw Function101913
+ dw Function10194b
+ dw Function10196d
+ dw Function1017e4
+ dw Function1017f5
+ dw Function1019ab
+ dw Function101537
+ dw Function101571
+ dw Function101c92
+ dw Function10152a
+ dw Function101571
+ dw Function101a4f
+ dw Function101cbc
+ dw Function101c62
+ dw Function101537
+ dw Function101571
+ dw Function101c92
+ dw Function10152a
+ dw Function101571
+ dw Function101ca0
+ dw Function101475
+ dw Function101cbc
+; 10138b
+
+Function10138b: ; 10138b
+ callba Function8adcc
+ ld c, $0
+ jr c, .asm_101396
+ inc c
+
+.asm_101396
+ sla c
+ ld a, [wcd2f]
+ and a
+ jr z, .asm_10139f
+ inc c
+
+.asm_10139f
+ sla c
+ ld a, [wcd21]
+ cp $1
+ jr z, .asm_1013a9
+ inc c
+
+.asm_1013a9
+ ret
+; 1013aa
+
+Function1013aa: ; 1013aa
+ call WhiteBGMap
+ call Function1d7d
+ call Function2bae
+ callba Function106464
+ call Function1ad2
+ call Function2b5c
+ ret
+; 1013c0
+
+Function1013c0: ; 1013c0
+ callba Function8000
+ callba Function106462
+ callba Function106464
+ call Function2b5c
+ ret
+; 1013d6
+
+Function1013d6: ; 1013d6
+ callba Function104000
+ ret
+; 1013dd
+
+Function1013dd: ; 1013dd
+ call Function3238
+ ret
+; 1013e1
+
+Function1013e1: ; 1013e1 ; unreferenced
+ push de
+ inc de
+ ld b, a
+ ld c, $0
+.asm_1013e6
+ inc c
+ ld a, [hli]
+ ld [de], a
+ inc de
+ and a
+ jr z, .asm_1013f1
+ dec b
+ jr nz, .asm_1013e6
+ scf
+
+.asm_1013f1
+ pop de
+ ld a, c
+ ld [de], a
+ ret
+; 1013f5
+
+Function1013f5: ; 1013f5
+ ld a, [hli]
+ ld [de], a
+ inc de
+ ld c, a
+.asm_1013f9
+ ld a, [hli]
+ ld [de], a
+ inc de
+ dec c
+ jr nz, .asm_1013f9
+ ret
+; 101400
+
+Function101400: ; 101400 ; unreferenced
+ ld a, [de]
+ inc de
+ cp [hl]
+ jr nz, asm_101416
+ inc hl
+
+Function101406: ; 101406
+ ld c, a
+ ld b, $0
+.asm_101409
+ ld a, [de]
+ inc de
+ cp [hl]
+ jr nz, asm_101416
+ inc hl
+ dec bc
+ ld a, b
+ or c
+ jr nz, .asm_101409
+ and a
+ ret
+
+asm_101416
+ scf
+ ret
+; 101418
+
+Function101418: ; 101418
+ call GetJoypad
+ ld a, [hJoyDown]
+ and SELECT + A_BUTTON
+ cp SELECT + A_BUTTON
+ jr z, .asm_101425
+ xor a
+ ret
+
+.asm_101425
+ ld a, $f7
+ ld [wcd2b], a
+ scf
+ ret
+; 10142c
+
+Function10142c: ; 10142c
+ ld a, $1
+ ld [wc305], a
+ callba Function115e18
+ ret
+; 101438
+
+Function101438: ; 101438
+ ld hl, wcd29
+ set 6, [hl]
+ ld a, [wcd26]
+ ld hl, Jumptable_101457
+ rst JumpTable
+ ld a, [wcd26]
+ bit 7, a
+ ret z
+ ld a, $0
+ ld [wcd26], a
+ ld a, [wcd25]
+ inc a
+ ld [wcd25], a
+ ret
+; 101457
+
+Jumptable_101457: ; 101457
+ dw Function10145b
+ dw Function101467
+; 10145b
+
+Function10145b: ; 10145b
+ ld a, $3c
+ ld [wcd42], a
+ ld a, [wcd26]
+ inc a
+ ld [wcd26], a
+
+Function101467: ; 101467
+ ld hl, wcd42
+ dec [hl]
+ ret nz
+ ld a, [wcd26]
+ set 7, a
+ ld [wcd26], a
+ ret
+; 101475
+
+Function101475: ; 101475
+ ld hl, wcd29
+ set 6, [hl]
+ ld a, [wcd26]
+ ld hl, Jumptable_101494
+ rst JumpTable
+ ld a, [wcd26]
+ bit 7, a
+ ret z
+ ld a, $0
+ ld [wcd26], a
+ ld a, [wcd25]
+ inc a
+ ld [wcd25], a
+ ret
+; 101494
+
+Jumptable_101494: ; 101494
+ dw Function10149a
+ dw Function1014a6
+ dw Function1014b7
+; 10149a
+
+Function10149a: ; 10149a
+ ld a, $28
+ ld [wcd42], a
+ ld a, [wcd26]
+ inc a
+ ld [wcd26], a
+
+Function1014a6: ; 1014a6
+ ld hl, wcd42
+ dec [hl]
+ ret nz
+ ld a, $50
+ ld [wcd42], a
+ ld a, [wcd26]
+ inc a
+ ld [wcd26], a
+
+Function1014b7: ; 1014b7
+ call GetJoypad
+ ld a, [hJoyPressed]
+ and $3
+ jr nz, .asm_1014c5
+ ld hl, wcd42
+ dec [hl]
+ ret nz
+
+.asm_1014c5
+ ld a, [wcd26]
+ set 7, a
+ ld [wcd26], a
+ ret
+; 1014ce
+
+Function1014ce: ; 1014ce
+ callba Function100720
+ callba Function100641
+ ld a, [wcd25]
+ inc a
+ ld [wcd25], a
+ ret
+; 1014e2
+
+Function1014e2: ; 1014e2
+ ld hl, wcd29
+ set 6, [hl]
+ ld a, $0
+ ld [wcd26], a
+ ld a, [wcd25]
+ inc a
+ ld [wcd25], a
+ ret
+; 1014f4
+
+Function1014f4: ; 1014f4
+ callba Function100082
+ ld hl, wcd29
+ set 6, [hl]
+ ld a, [wcd25]
+ inc a
+ ld [wcd25], a
+ ret
+; 101507
+
+Function101507: ; 101507
+ ld de, wcd30
+ ld hl, $0040
+ ld bc, $0040
+ ld a, $2
+ call Function3e32
+ ld a, [wcd25]
+ inc a
+ ld [wcd25], a
+ ret
+; 10151d
+
+Function10151d: ; 10151d ; unreferenced
+ ld a, $34
+ call Function3e32
+ ld a, [wcd25]
+ inc a
+ ld [wcd25], a
+ ret
+; 10152a
+
+Function10152a: ; 10152a
+ ld a, $36
+ call Function3e32
+ ld a, [wcd25]
+ inc a
+ ld [wcd25], a
+ ret
+; 101537
+
+Function101537: ; 101537
+ ld a, $a
+ call Function3e32
+ ld a, [wcd25]
+ inc a
+ ld [wcd25], a
+ ret
+; 101544
+
+Function101544: ; 101544
+ callba Function100641
+ ld a, $12
+ call Function3e32
+ ld a, [wcd25]
+ inc a
+ ld [wcd25], a
+ ret
+; 101557
+
+Function101557: ; 101557
+ callba Function100641
+ ld hl, wcd53
+ ld a, $8
+ call Function3e32
+ ld a, [wcd25]
+ inc a
+ ld [wcd25], a
+ ret
+; 10156d
+
+Function10156d: ; 10156d
+ call Function101418
+ ret c
+
+Function101571: ; 101571
+ callba Function10032e
+ ret c
+ ret z
+ ld a, e
+ cp $1
+ jr z, .asm_101582
+ ld [wcd2b], a
+ ret
+
+.asm_101582
+ ld a, [wcd25]
+ inc a
+ ld [wcd25], a
+ ret
+; 10158a
+
+Function10158a: ; 10158a
+ callba Function10064c
+ ld a, [wcd44]
+ cp $a
+ jr c, Function10156d
+ ld a, $fb
+ ld [wcd2b], a
+ ret
+; 10159d
+
+Function10159d: ; 10159d
+ ld de, $c608
+ callba Function100edf
+ ld de, $c608
+ ld a, $5
+ ld hl, $d800
+ call Function10174c
+ ld a, $0
+ ld [wcd26], a
+ ld a, [wcd25]
+ inc a
+ ld [wcd25], a
+ ret
+; 1015be
+
+Function1015be: ; 1015be
+ ld de, $c608
+ callba Function100eed
+ ld de, $c608
+ ld a, $5
+ ld hl, $d800
+ call Function10174c
+ ld a, $0
+ ld [wcd26], a
+ ld a, [wcd25]
+ inc a
+ ld [wcd25], a
+ ret
+; 1015df
+
+Function1015df: ; 1015df
+ ld de, $c608
+ callba Function100ef4
+ ld de, $c608
+ ld a, $5
+ ld hl, $d800
+ call Function10174c
+ ld a, $0
+ ld [wcd26], a
+ ld a, [wcd25]
+ inc a
+ ld [wcd25], a
+ ret
+; 101600
+
+Function101600: ; 101600
+ ld hl, $d800
+ ld de, $c608
+ ld bc, $01e0
+ ld a, $5
+ call FarCopyWRAM
+ ld de, $c608
+ callba Function100ee6
+ ld a, [wcd25]
+ inc a
+ ld [wcd25], a
+ ret
+; 10161f
+
+Function10161f: ; 10161f
+ call Function101649
+ ld a, [wcd25]
+ inc a
+ ld [wcd25], a
+ ret
+; 10162a
+
+Function10162a: ; 10162a
+ call Function101663
+ ld a, [wcd25]
+ inc a
+ ld [wcd25], a
+ ret
+; 101635
+
+Function101635: ; 101635
+ ld de, $c608
+ ld bc, $01e0
+ call FarCopyWRAM
+ ret
+; 10163f
+
+Function10163f: ; 10163f
+ ld hl, $c608
+ ld bc, $01e0
+ call FarCopyWRAM
+ ret
+; 101649
+
+Function101649: ; 101649
+ ld a, $5
+ ld hl, $d800
+ call Function101635
+ ld a, $5
+ ld de, wda00
+ call Function10163f
+ ret
+; 10165a
+
+Function10165a: ; 10165a
+ ld a, $5
+ ld hl, wda00
+ call Function101635
+ ret
+; 101663
+
+Function101663: ; 101663
+ ld a, $5
+ ld hl, $d800
+ call Function101635
+ ld a, $5
+ ld de, wdc00
+ call Function10163f
+ ret
+; 101674
+
+Function101674: ; 101674 ; unreferenced
+ ld a, $5
+ ld hl, wdc00
+ call Function101635
+ ret
+; 10167d
+
+Function10167d: ; 10167d
+ ld a, $0
+ ld [wcd26], a
+ ld a, [wcd25]
+ inc a
+ ld [wcd25], a
+ ret
+; 10168a
+
+Function10168a: ; 10168a
+ call Function101418
+ ret c
+
+Function10168e: ; 10168e
+ ld b, $0
+ ld c, $1
+ callba Function10079c
+ ret c
+ ld c, $1
+ ld b, $3
+ callba Function10062d
+ ret c
+ ld a, [wcd26]
+ ld hl, Jumptable_1016c3
+ rst JumpTable
+ ld hl, wcd29
+ set 6, [hl]
+ ld a, [wcd26]
+ bit 7, a
+ ret z
+ ld a, $0
+ ld [wcd26], a
+ ld a, [wcd25]
+ inc a
+ ld [wcd25], a
+ ret
+; 1016c3
+
+Jumptable_1016c3: ; 1016c3
+ dw Function1016cf
+ dw Function1016de
+ dw Function1016f8
+ dw Function101705
+ dw Function101719
+ dw Function101724
+; 1016cf
+
+Function1016cf: ; 1016cf
+ ld hl, wcd3a
+ inc [hl]
+ call Function10176f
+ ld a, [wcd26]
+ inc a
+ ld [wcd26], a
+ ret
+; 1016de
+
+Function1016de: ; 1016de
+ call Function10177b
+ jr nc, .asm_1016eb
+ ld a, [wcd26]
+ inc a
+ ld [wcd26], a
+ ret
+
+.asm_1016eb
+ ld a, $ff
+ ld [wcd39], a
+ ld a, [wcd26]
+ inc a
+ ld [wcd26], a
+ ret
+; 1016f8
+
+Function1016f8: ; 1016f8
+ ld a, $0
+ ld [wcd27], a
+ ld a, [wcd26]
+ inc a
+ ld [wcd26], a
+ ret
+; 101705
+
+Function101705: ; 101705
+ callba Function100382
+ ld a, [wcd27]
+ bit 7, a
+ ret z
+ ld a, [wcd26]
+ inc a
+ ld [wcd26], a
+ ret
+; 101719
+
+Function101719: ; 101719
+ call Function1017c7
+ ld a, [wcd26]
+ inc a
+ ld [wcd26], a
+ ret
+; 101724
+
+Function101724: ; 101724
+ ld a, [wcd39]
+ cp $ff
+ jr z, .asm_101731
+ ld a, $0
+ ld [wcd26], a
+ ret
+
+.asm_101731
+ ld a, [wcd26]
+ set 7, a
+ ld [wcd26], a
+ ret
+; 10173a
+
+Unknown_10173a:
+ db $50
+
+Function10173b: ; 10173b
+ push bc
+ push af
+ ld a, [hli]
+ ld h, [hl]
+ ld l, a
+ ld a, [Unknown_10173a]
+ ld c, a
+ ld b, $0
+ pop af
+ call AddNTimes
+ pop bc
+ ret
+; 10174c
+
+Function10174c: ; 10174c
+ ld [wcd3d], a
+ ld a, l
+ ld [wcd3e], a
+ ld a, h
+ ld [wcd3f], a
+ ld a, e
+ ld [wcd3b], a
+ ld a, d
+ ld [wcd3c], a
+ ld a, c
+ ld [wcd40], a
+ ld a, b
+ ld [wcd41], a
+ xor a
+ ld [wcd39], a
+ ld [wcd3a], a
+ ret
+; 10176f
+
+Function10176f: ; 10176f
+ ld hl, wccb4
+ ld bc, $0054
+ ld a, $11
+ call ByteFill
+ ret
+; 10177b
+
+Function10177b: ; 10177b
+ ld a, [Unknown_10173a]
+ ld c, a
+ ld b, $0
+ ld a, [wcd3a]
+ ld hl, $0000
+ call AddNTimes
+ ld e, l
+ ld d, h
+ ld hl, wcd40
+ ld a, [hli]
+ ld h, [hl]
+ ld l, a
+ ld a, l
+ sub e
+ ld l, a
+ ld a, h
+ sbc d
+ ld h, a
+ jr c, .asm_1017a0
+ add hl, bc
+ call Function1017b0
+ scf
+ ret
+
+.asm_1017a0
+ ld a, $ff
+ ld [wcd39], a
+ add hl, bc
+ ld a, h
+ or l
+ ret z
+ ld c, l
+ ld b, h
+ call Function1017b0
+ xor a
+ ret
+; 1017b0
+
+Function1017b0: ; 1017b0
+ ld a, c
+ ld [wccb4], a
+ push bc
+ ld a, [wcd3a]
+ dec a
+ ld hl, wcd3b
+ call Function10173b
+ pop bc
+ ld de, wccb5
+ call CopyBytes
+ ret
+; 1017c7
+
+Function1017c7: ; 1017c7
+ ld a, [wcc60]
+ ld c, a
+ ld b, $0
+ ld a, [wcd3a]
+ dec a
+ ld hl, wcd3e
+ call Function10173b
+ ld e, l
+ ld d, h
+ ld hl, wcc61
+ ld a, [wcd3d]
+ call FarCopyWRAM
+ and a
+ ret
+; 1017e4
+
+Function1017e4: ; 1017e4
+ ld a, $0
+ ld [wcd27], a
+ ld a, [wcd25]
+ inc a
+ ld [wcd25], a
+ ret
+; 1017f1
+
+Function1017f1: ; 1017f1
+ call Function101418
+ ret c
+
+Function1017f5: ; 1017f5
+ ld b, $0
+ ld c, $1
+ callba Function10079c
+ ret c
+ ld c, $1
+ ld b, $3
+ callba Function10062d
+ ret c
+ callba Function100382
+ ld a, [wcd27]
+ bit 7, a
+ jr nz, .asm_10181e
+ ld hl, wcd29
+ set 6, [hl]
+ ret
+
+.asm_10181e
+ ld a, [wcd25]
+ inc a
+ ld [wcd25], a
+ ret
+; 101826
+
+Function101826: ; 101826
+ ld a, [wcd21]
+ cp $2
+ jr z, .asm_101833
+ cp $1
+ jr z, .asm_101844
+ jr .asm_101869
+
+.asm_101833
+ ld hl, Unknown_10186f
+ ld de, wccb4
+ call Function1013f5
+ ld a, [wcd25]
+ inc a
+ ld [wcd25], a
+ ret
+
+.asm_101844
+ callba Function103654
+ ld a, c
+ ld hl, Unknown_101882
+ cp $1
+ jr z, .asm_10185b
+ ld hl, Unknown_101895
+ cp $2
+ jr z, .asm_10185b
+ jr .asm_101869
+
+.asm_10185b
+ ld de, wccb4
+ call Function1013f5
+ ld a, [wcd25]
+ inc a
+ ld [wcd25], a
+ ret
+
+.asm_101869
+ ld a, $fe
+ ld [wcd2b], a
+ ret
+; 10186f
+
+
+SECTION "ascii 10186f", ROMX, BANK[$40]
+
+ charmap " ", $20 ; revert to ascii
+
+Unknown_10186f:
+ db .end - @
+ db $19, $73, $09, $13, "trade_crystal"
+.end db 0
+
+Unknown_101882:
+ db .end - @
+ db $19, $67, $10, $01, "free__crystal"
+.end db 0
+
+Unknown_101895:
+ db .end - @
+ db $19, $67, $10, $01, "limit_crystal"
+.end db 0
+; 1018a8
+
+
+SECTION "bank40_3", ROMX, BANK[$40]
+
+Function1018a8: ; 1018a8
+ ld hl, wccb5
+ ld de, wcc61
+ ld a, $4
+ call Function101406
+ jr c, .asm_1018d0
+ ld hl, wccb9
+ ld de, wcc65
+ ld a, $6
+ call Function101406
+ jr c, .asm_1018ca
+ ld a, [wcd25]
+ inc a
+ ld [wcd25], a
+ ret
+
+.asm_1018ca
+ ld a, $f6
+ ld [wcd2b], a
+ ret
+
+.asm_1018d0
+ ld a, $f5
+ ld [wcd2b], a
+ ret
+; 1018d6
+
+Function1018d6: ; 1018d6
+ call Function1018ec
+ ld a, [wcd25]
+ inc a
+ ld [wcd25], a
+ ret
+; 1018e1
+
+Function1018e1: ; 1018e1
+ call Function1018fb
+ ld a, [wcd25]
+ inc a
+ ld [wcd25], a
+ ret
+; 1018ec
+
+Function1018ec: ; 1018ec
+ ld a, $a
+ ld hl, wccb4
+ ld [hli], a
+ ld c, a
+.asm_1018f3
+ call Random
+ ld [hli], a
+ dec c
+ jr nz, .asm_1018f3
+ ret
+; 1018fb
+
+Function1018fb: ; 1018fb
+ ld a, [wcd2f]
+ and a
+ jr z, .asm_101906
+ ld hl, wcc61
+ jr .asm_101909
+
+.asm_101906
+ ld hl, wccb5
+
+.asm_101909
+ ld de, LinkBattleRNs
+ ld bc, $000a
+ call CopyBytes
+ ret
+; 101913
+
+Function101913: ; 101913
+ ld hl, wcd2a
+ set 0, [hl]
+ xor a
+ ld [wc30d], a
+ ld hl, wcd29
+ res 4, [hl]
+ xor a
+ ld [wc305], a
+ ld hl, wcd29
+ res 7, [hl]
+ ld a, $90
+ ld [hWY], a
+ ld a, [wcd21]
+ cp $1
+ jr z, .asm_10193f
+ cp $2
+ jr z, .asm_101945
+ ld a, $71
+ ld [wcd25], a
+ ret
+
+.asm_10193f
+ ld a, $66
+ ld [wcd25], a
+ ret
+
+.asm_101945
+ ld a, $65
+ ld [wcd25], a
+ ret
+; 10194b
+
+Function10194b: ; 10194b
+ call Function2ed3
+ call ClearSprites
+ callba Function1021f9
+ ld hl, wcd29
+ bit 3, [hl]
+ jr nz, .asm_101967
+ call Function1013c0
+ ld a, $71
+ ld [wcd25], a
+ ret
+
+.asm_101967
+ ld a, $60
+ ld [wcd25], a
+ ret
+; 10196d
+
+Function10196d: ; 10196d
+ callba Function8000
+ callba Function10060d
+ ld hl, wcd29
+ set 5, [hl]
+ ld hl, wcd2a
+ set 6, [hl]
+ ld a, $6
+ ld [wccb4], a
+ ld hl, wdc5c
+ ld de, wccb5
+ ld bc, $0003
+ call CopyBytes
+ ld hl, wcd6c
+ ld a, [hli]
+ ld [wccb8], a
+ ld a, [hli]
+ ld [wccb9], a
+ ld a, [hl]
+ ld [wccba], a
+ ld a, [wcd25]
+ inc a
+ ld [wcd25], a
+ ret
+; 1019ab
+
+Function1019ab: ; 1019ab
+ call Function101a75
+ callba Function100754
+ xor a
+ ld [wdc5f], a
+ ld [wdc60], a
+ callba Function8000
+ call SpeechTextBox
+ callba Function100846
+ ld c, $78
+ call DelayFrames
+ callba ClearTileMap
+ call Function1019ee
+ call Function101a21
+ ld a, [wcd2b]
+ cp $fc
+ jr nz, .asm_1019e6
+ xor a
+ ld [wcd2b], a
+
+.asm_1019e6
+ ld a, [wcd25]
+ inc a
+ ld [wcd25], a
+ ret
+; 1019ee
+
+Function1019ee: ; 1019ee
+ ld a, [rSVBK]
+ push af
+ ld a, $5
+ ld [rSVBK], a
+ ld bc, wdc0d
+ ld de, wdc11
+ callba Function4e929
+ pop af
+ ld [rSVBK], a
+ ld a, c
+ ld [OtherTrainerClass], a
+ ld hl, wd26b
+ ld de, $c656
+ ld bc, $000b
+ call CopyBytes
+ ld a, [wcd2f]
+ and a
+ ld a, $2
+ jr z, .asm_101a1e
+ ld a, $1
+
+.asm_101a1e
+ ld [$ffcb], a
+ ret
+; 101a21
+
+Function101a21: ; 101a21
+ ld hl, Options
+ ld a, [hl]
+ push af
+ and $20
+ or $1
+ ld [hl], a
+ ld a, $1
+ ld [wc2d7], a
+ callba Function3f4dd
+ callba Function3c000
+ callba Function3f759
+ xor a
+ ld [wc2d7], a
+ ld a, $ff
+ ld [$ffcb], a
+ pop af
+ ld [Options], a
+ ret
+; 101a4f
+
+Function101a4f: ; 101a4f
+ ld a, $1
+ ld [wc2d7], a
+ callba Function3f77c
+ xor a
+ ld [wc2d7], a
+ callba Function3f6d0
+ callba Function1500c
+ call Function1013c0
+ ld a, [wcd25]
+ inc a
+ ld [wcd25], a
+ ret
+; 101a75
+
+Function101a75: ; 101a75
+ ld hl, wcc61
+ ld de, wcd75
+ ld bc, $0003
+ call CopyBytes
+ ld de, wcc64
+ callba Function100772
+ callba Function101050
+ callba Function1010f2
+ ret
+; 101a97
+
+Function101a97: ; 101a97
+ callba Function115d99
+ ld hl, wcd29
+ set 7, [hl]
+ ld c, $2
+ call Function10142c
+ ld hl, wcd29
+ set 6, [hl]
+ ld a, [wcd25]
+ inc a
+ ld [wcd25], a
+ ret
+; 101ab4
+
+Function101ab4: ; 101ab4
+ ld e, $1
+ call Function101ee4
+ ld hl, wcd29
+ set 5, [hl]
+ ld a, [wcd25]
+ inc a
+ ld [wcd25], a
+ ret
+; 101ac6
+
+Function101ac6: ; 101ac6
+ callba Function115d99
+ ld hl, wcd29
+ set 7, [hl]
+ ld c, $2
+ call Function10142c
+ ld hl, wcd29
+ set 6, [hl]
+ xor a
+ ld [wcd2f], a
+ ld de, wdc42
+ call Function102068
+ ld a, [wcd25]
+ inc a
+ ld [wcd25], a
+ ret
+; 101aed
+
+Function101aed: ; 101aed
+ callba Function115d99
+ ld hl, wcd29
+ set 7, [hl]
+ ld c, $2
+ call Function10142c
+ ld hl, wcd29
+ set 6, [hl]
+ ld a, $1
+ ld [wcd2f], a
+ ld a, [wcd25]
+ inc a
+ ld [wcd25], a
+ ret
+; 101b0f
+
+Function101b0f: ; 101b0f
+ ld c, $0
+ call Function10142c
+ ld e, $3
+ call Function101ee4
+ ld hl, wcd29
+ set 5, [hl]
+ ld a, [wcd25]
+ inc a
+ ld [wcd25], a
+ ld a, $0
+ ld [wcd26], a
+ ret
+; 101b2b
+
+Function101b2b: ; 101b2b
+ callba Function100579
+ ld hl, wcd29
+ set 2, [hl]
+ ld a, [wcd26]
+ bit 7, a
+ ret z
+ call Function1013dd
+ ld a, $0
+ ld [wcd26], a
+ ld a, [wcfa9]
+ cp $1
+ jr z, .asm_101b51
+ ld a, $2
+ ld [wcd2b], a
+ ret
+
+.asm_101b51
+ ld a, [wcd25]
+ inc a
+ ld [wcd25], a
+ ret
+; 101b59
+
+Function101b59: ; 101b59
+ ld c, $2
+ call Function10142c
+ ld e, $2
+ call Function101ee4
+ ld hl, wcd29
+ set 5, [hl]
+ ld a, [wcd25]
+ inc a
+ ld [wcd25], a
+ ret
+; 101b70
+
+Function101b70: ; 101b70
+ ld c, $2
+ call Function10142c
+ ld e, $4
+ call Function101ee4
+ ld hl, wcd29
+ set 5, [hl]
+ call Function1ad2
+ ld a, [wcd25]
+ inc a
+ ld [wcd25], a
+ ld a, $0
+ ld [wcd26], a
+ ret
+; 101b8f
+
+Function101b8f: ; 101b8f
+ callba Function1005c3
+ ld hl, wcd29
+ set 2, [hl]
+ ld a, [wcd26]
+ bit 7, a
+ ret z
+ call Function1013dd
+ ld a, $0
+ ld [wcd26], a
+ ld a, [wcfa9]
+ cp $1
+ jr z, .asm_101bbc
+ ld a, $1
+ ld [wcd2f], a
+ ld a, [wcd25]
+ inc a
+ ld [wcd25], a
+ ret
+
+.asm_101bbc
+ xor a
+ ld [wcd2f], a
+ ld a, [wcd25]
+ inc a
+ ld [wcd25], a
+ ret
+; 101bc8
+
+Function101bc8: ; 101bc8
+ ld c, $2
+ call Function10142c
+ ld e, $8
+ call Function101ee4
+ call Function102048
+ call Function1013dd
+ ld a, $0
+ ld [wcd26], a
+ ld a, [wcd25]
+ inc a
+ ld [wcd25], a
+ ret
+; 101be5
+
+Function101be5: ; 101be5
+ callba Function100579
+ ld hl, wcd29
+ set 2, [hl]
+ ld a, [wcd26]
+ bit 7, a
+ ret z
+ call Function1013dd
+ ld a, $0
+ ld [wcd26], a
+ ld a, [wcfa9]
+ cp $1
+ jr nz, .asm_101c0b
+ ld a, $2a
+ ld [wcd25], a
+ ret
+
+.asm_101c0b
+ ld a, $2
+ ld [wcd2b], a
+ ret
+; 101c11
+
+Function101c11: ; 101c11
+ ld a, $1
+ ld [wdc5f], a
+ ld e, $9
+ call Function101ee4
+ call Function102048
+ ld hl, wcd29
+ set 5, [hl]
+ ld a, [wcd25]
+ inc a
+ ld [wcd25], a
+ ret
+; 101c2b
+
+Function101c2b: ; 101c2b
+ ld a, $2
+ ld [wdc5f], a
+ ld e, $7
+ call Function101ee4
+ ld hl, wcd29
+ set 5, [hl]
+ ld a, [wcd25]
+ inc a
+ ld [wcd25], a
+ ret
+; 101c42
+
+Function101c42: ; 101c42
+ ld hl, wcd2a
+ set 1, [hl]
+ call Function100665
+ ld a, $47
+ ld [wcd25], a
+ ret
+; 101c50
+
+Function101c50: ; 101c50
+ ld e, $a
+ call Function101ee4
+ ld hl, wcd29
+ set 2, [hl]
+ ld a, [wcd25]
+ inc a
+ ld [wcd25], a
+ ret
+; 101c62
+
+Function101c62: ; 101c62
+ callba Function115d99
+ ld hl, wcd29
+ set 7, [hl]
+ ld c, $1
+ call Function10142c
+ xor a
+ ld [wc30d], a
+ ld hl, wcd29
+ res 4, [hl]
+ ld e, $b
+ call Function101ee4
+ ld hl, wcd29
+ set 5, [hl]
+ ld a, [wcd25]
+ inc a
+ ld [wcd25], a
+ ld a, $0
+ ld [wcd26], a
+ ret
+; 101c92
+
+Function101c92: ; 101c92
+ callba Function100675
+ ld a, [wcd25]
+ inc a
+ ld [wcd25], a
+ ret
+; 101ca0
+
+Function101ca0: ; 101ca0
+ ld c, $2
+ call Function10142c
+ ld e, $c
+ call Function101ee4
+ ld hl, wcd29
+ set 5, [hl]
+ ld a, [wcd25]
+ inc a
+ ld [wcd25], a
+ ld a, $0
+ ld [wcd26], a
+ ret
+; 101cbc
+
+Function101cbc: ; 101cbc
+ ld a, $1
+ ld [wcd2b], a
+ ret
+; 101cc2
+
+Function101cc2: ; 101cc2 ; unreferenced
+ ld a, $2
+ ld [wcd2b], a
+ ret
+; 101cc8
+
+Function101cc8: ; 101cc8
+ ld a, $1
+ ld [wc314], a
+ ld a, $1
+ ld [wc30d], a
+ ld hl, wcd29
+ set 4, [hl]
+ ld a, [wcd25]
+ inc a
+ ld [wcd25], a
+ ret
+; 101cdf
+
+Function101cdf: ; 101cdf
+ ld a, $6
+ ld [wc314], a
+ ld a, $1
+ ld [wc30d], a
+ ld hl, wcd29
+ set 4, [hl]
+ ld a, [wcd25]
+ inc a
+ ld [wcd25], a
+ ret
+; 101cf6
+
+Function101cf6: ; 101cf6
+ ld a, $b
+ ld [wc315], a
+ ld a, [wcd25]
+ inc a
+ ld [wcd25], a
+ ret
+; 101d03
+
+Function101d03: ; 101d03
+ ld a, $e
+ ld [wc315], a
+ ld a, [wcd25]
+ inc a
+ ld [wcd25], a
+ ret
+; 101d10
+
+Function101d10: ; 101d10
+ ld c, $1
+ call Function10142c
+ ld a, [wcd25]
+ inc a
+ ld [wcd25], a
+ jr Function101d2a
+
+Function101d1e: ; 101d1e
+ ld c, $3
+ call Function10142c
+ ld a, [wcd25]
+ inc a
+ ld [wcd25], a
+
+Function101d2a: ; 101d2a
+ call Function101418
+ ret c
+ ld hl, wcd29
+ set 6, [hl]
+ ld a, [wcd26]
+ ld hl, Jumptable_101d4d
+ rst JumpTable
+ ld a, [wcd26]
+ bit 7, a
+ ret z
+ ld a, $0
+ ld [wcd26], a
+ ld a, [wcd25]
+ inc a
+ ld [wcd25], a
+ ret
+; 101d4d
+
+Jumptable_101d4d: ; 101d4d
+ dw Function101d51
+ dw Function101d5d
+; 101d51
+
+Function101d51: ; 101d51
+ ld a, $3c
+ ld [wcd42], a
+ ld a, [wcd26]
+ inc a
+ ld [wcd26], a
+
+Function101d5d: ; 101d5d
+ ld hl, wcd42
+ dec [hl]
+ ret nz
+ ld a, [wcd26]
+ set 7, a
+ ld [wcd26], a
+ ret
+; 101d6b
+
+Function101d6b: ; 101d6b
+ ld a, [wc30d]
+ and a
+ ret nz
+ ld hl, wcd29
+ res 4, [hl]
+ ld a, $64
+ ld [wcd25], a
+ ret
+; 101d7b
+
+Function101d7b: ; 101d7b
+ callba Function10138b
+ ld b, 0
+ ld hl, Unknown_101d8d
+ add hl, bc
+ ld c, [hl]
+ ld a, c
+ ld [wcd25], a
+ ret
+; 101d8d
+
+Unknown_101d8d: ; 101d8d
+ db $15, $15, $1f, $1f, $0c, $12, $3a, $3a
+; 101d95
+
+Function101d95: ; 101d95
+ call Function101ee2
+ call Function1d6e
+ ld e, $e
+ call Function101ee4
+ ld hl, wcd29
+ set 5, [hl]
+ ld a, [wcd25]
+ inc a
+ ld [wcd25], a
+ ld a, $0
+ ld [wcd26], a
+ ret
+; 101db2
+
+Function101db2: ; 101db2
+ callba Function103302
+ call Function1c07
+ ld hl, wcd29
+ set 5, [hl]
+ jr c, .asm_101dca
+ ld a, [wcd25]
+ inc a
+ ld [wcd25], a
+ ret
+
+.asm_101dca
+ ld a, $2
+ ld [wcd2b], a
+ ret
+; 101dd0
+
+Function101dd0: ; 101dd0
+ ld hl, wdc41
+ bit 1, [hl]
+ jr nz, .asm_101ddd
+ ld a, $19
+ ld [wcd25], a
+ ret
+
+.asm_101ddd
+ ld a, $1b
+ ld [wcd25], a
+ ret
+; 101de3
+
+Function101de3: ; 101de3
+ call Function101ecc
+ call Function101ead
+ jr c, .asm_101df3
+ ld a, [wcd25]
+ inc a
+ ld [wcd25], a
+ ret
+
+.asm_101df3
+ call Function101e98
+ jr c, .asm_101e00
+ ld a, [wcd25]
+ inc a
+ ld [wcd25], a
+ ret
+
+.asm_101e00
+ call Function101ed3
+ ld a, $2
+ ld [wcd2b], a
+ ret
+; 101e09
+
+Function101e09: ; 101e09
+ call Function101ead
+ jr c, .asm_101e16
+ ld a, [wcd25]
+ inc a
+ ld [wcd25], a
+ ret
+
+.asm_101e16
+ call Function101ecc
+ call Function101e98
+ push af
+ call Function101ed3
+ pop af
+ jr c, .asm_101e2b
+ ld a, [wcd25]
+ inc a
+ ld [wcd25], a
+ ret
+
+.asm_101e2b
+ ld a, $2
+ ld [wcd2b], a
+ ret
+; 101e31
+
+Function101e31: ; 101e31
+ ld a, $3a
+ ld [wcd25], a
+ jp Function101c2b
+; 101e39
+
+Function101e39: ; 101e39
+ call Function1020bf
+ push af
+ call Function101ed3
+ pop af
+ jr c, .asm_101e49
+ ld a, $2a
+ ld [wcd25], a
+ ret
+
+.asm_101e49
+ ld a, $2
+ ld [wcd2b], a
+ ret
+; 101e4f
+
+Function101e4f: ; 101e4f
+ ld e, $6
+ call Function101ee4
+ call Function1013d6
+ ld a, [wcd25]
+ inc a
+ ld [wcd25], a
+ ld a, $0
+ ld [wcd26], a
+ ret
+; 101e64
+
+Function101e64: ; 101e64
+ call Function101ecc
+ call Function1020a8
+ push af
+ call Function101ed3
+ pop af
+ jr c, .asm_101e77
+ ld a, $24
+ ld [wcd25], a
+ ret
+
+.asm_101e77
+ ld hl, wcd29
+ set 5, [hl]
+ ld a, $2
+ ld [wcd2b], a
+ ret
+; 101e82
+
+Function101e82: ; 101e82 ; unreferenced
+ call Function101ecc
+ ld a, [wcd25]
+ inc a
+ ld [wcd25], a
+ ret
+; 101e8d
+
+Function101e8d: ; 101e8d ; unreferenced
+ call Function101ed3
+ ld a, [wcd25]
+ inc a
+ ld [wcd25], a
+ ret
+; 101e98
+
+Function101e98: ; 101e98
+ call ClearSprites
+ callba Function8adb3
+ ret c
+ ld hl, GameTimerPause
+ set 7, [hl]
+ ld hl, wdc41
+ set 4, [hl]
+ ret
+; 101ead
+
+Function101ead: ; 101ead
+ ld hl, GameTimerPause
+ bit 7, [hl]
+ jr nz, .asm_101ec8
+ ld hl, wdc41
+ bit 2, [hl]
+ jr z, .asm_101eca
+ ld a, [wcd2f]
+ and a
+ jr nz, .asm_101ec8
+ ld hl, wdc41
+ bit 1, [hl]
+ jr z, .asm_101eca
+
+.asm_101ec8
+ xor a
+ ret
+
+.asm_101eca
+ scf
+ ret
+; 101ecc
+
+Function101ecc: ; 101ecc
+ call Function101ee2
+ call FadeToMenu
+ ret
+; 101ed3
+
+Function101ed3: ; 101ed3
+ call Function1013aa
+ callba Function115d99
+ ld hl, wcd29
+ set 7, [hl]
+ ret
+; 101ee2
+
+Function101ee2: ; 101ee2
+ ld e, 0
+
+Function101ee4: ; 101ee4
+ ld d, 0
+ ld hl, Unknown_101ef5
+ add hl, de
+ add hl, de
+ ld a, [hli]
+ ld d, [hl]
+ ld e, a
+ callba Function100504
+ ret
+; 101ef5
+
+Unknown_101ef5: ; 101ef5
+ dw String_101f13
+ dw String_101f14
+ dw String_101f32
+ dw String_101f4f
+ dw String_101f69
+ dw String_101f81
+ dw String_101f93
+ dw String_101faa
+ dw String_101fc5
+ dw String_101fd2
+ dw String_101fe1
+ dw String_101fef
+ dw String_102000
+ dw String_10200c
+ dw String_102014
+
+String_101f13: ; 101f13
+ db "@"
+
+String_101f14: ; 101f14
+ db "モバイルアダプタを つかって"
+ next "おともだちと つうしんします@"
+
+String_101f32: ; 101f32
+ db "でんわを かけるひとには"
+ next "つうわりょうきんが かかります@"
+
+String_101f4f: ; 101f4f
+ db "モバイルアダプタの じゅんびは"
+ next "できて いますか?@"
+
+String_101f69: ; 101f69
+ db "あなたが おともだちに"
+ next "でんわを かけますか?@"
+
+String_101f81: ; 101f81
+ db "めいしフ,ルダーを"
+ next "つかいますか?@"
+
+String_101f93: ; 101f93
+ db "でんわばんごうを にゅうりょく"
+ next "してください@"
+
+String_101faa: ; 101faa
+ db "それでは おともだちからの"
+ next "でんわを おまちします…@"
+
+String_101fc5: ; 101fc5
+ next "に でんわを かけます@"
+
+String_101fd2: ; 101fd2
+ next "に でんわを かけています@"
+
+String_101fe1: ; 101fe1
+ db "でんわが つながりました!@"
+
+String_101fef: ; 101fef
+ db "つうわを"
+ next "しゅうりょう します…@"
+
+String_102000: ; 102000
+ db "つうしん しゅうりょう@"
+
+String_10200c: ; 10200c
+ db "つうわ じかん@"
+
+String_102014: ; 102014
+ db "それでは つうしんの"
+ next "せっていを してください@"
+; 10202c
+
+Function10202c: ; 10202c
+ callba Function115d99
+ ld hl, wcd29
+ set 7, [hl]
+ ld c, $2
+ call Function10142c
+ ld e, $d
+ call Function101ee4
+ hlcoord 4, 4
+ call Function100681
+ ret
+; 102048
+
+Function102048: ; 102048
+ call Function10204c
+ ret
+; 10204c
+
+Function10204c: ; 10204c
+ hlcoord 3, 2
+ ld c, $10
+ ld de, wcd53
+.asm_102054
+ ld a, [de]
+ inc de
+ and a
+ jr z, .asm_102067
+ sub $30
+ jr c, .asm_102067
+ cp $a
+ jr nc, .asm_102067
+ add $f6
+ ld [hli], a
+ dec c
+ jr nz, .asm_102054
+
+.asm_102067
+ ret
+; 102068
+
+Function102068: ; 102068
+ ld hl, wcd53
+ ld c, $8
+.asm_10206d
+ ld a, [de]
+ call Function102080
+ jr c, .asm_10207f
+ ld a, [de]
+ swap a
+ call Function102080
+ jr c, .asm_10207f
+ inc de
+ dec c
+ jr nz, .asm_10206d
+
+.asm_10207f
+ ret
+; 102080
+
+Function102080: ; 102080
+ and $f
+ cp $f
+ jr z, .asm_10208a
+ add $30
+ ld [hli], a
+ ret
+
+.asm_10208a
+ ld [hl], $0
+ scf
+ ret
+; 10208e
+
+Function10208e: ; 10208e
+ push de
+ ld h, d
+ ld l, e
+ ld de, wdc42
+ ld bc, $0008
+ call CopyBytes
+ pop de
+ ret
+; 10209c
+
+Function10209c: ; 10209c
+ ld a, $ff
+ ld hl, wdc42
+ ld bc, $0008
+ call ByteFill
+ ret
+; 1020a8
+
+Function1020a8: ; 1020a8
+ call Function10209c
+ ld c, $1
+ ld de, wdc42
+ callba Function17a68f
+ ret c
+ call Function10208e
+ call Function102068
+ xor a
+ ret
+; 1020bf
+
+Function1020bf: ; 1020bf
+ call ClearSprites
+ callba Function8aba9
+ ld a, c
+ and a
+ jr z, .asm_1020e8
+ dec a
+ ld hl, $a04c
+ ld bc, $0025
+ call AddNTimes
+ ld d, h
+ ld e, l
+ ld a, $4
+ call GetSRAMBank
+ call Function10208e
+ call Function102068
+ call CloseSRAM
+ xor a
+ ret
+
+.asm_1020e8
+ scf
+ ret
+; 1020ea
+
+Function1020ea: ; 1020ea
+ ld hl, wdc41
+ bit 4, [hl]
+ jr z, .asm_102110
+ ld hl, wdc41
+ bit 2, [hl]
+ jr nz, .asm_102110
+ call Function10218d
+ ld hl, $c608
+ bit 4, [hl]
+ jr z, .asm_102110
+ ld hl, $c608
+ bit 2, [hl]
+ jr nz, .asm_102110
+ call Function102112
+ jr z, .asm_102110
+ and a
+ ret
+
+.asm_102110
+ scf
+ ret
+; 102112
+
+Function102112: ; 102112
+ ld a, $4
+ call GetSRAMBank
+ ld hl, $a041
+ ld c, $28
+.asm_10211c
+ push hl
+ ld de, $c60f
+ ld b, $1f
+.asm_102122
+ ld a, [de]
+ cp [hl]
+ jr nz, .asm_10212f
+ inc de
+ inc hl
+ dec b
+ jr nz, .asm_102122
+ pop hl
+ xor a
+ jr .asm_10213c
+
+.asm_10212f
+ pop hl
+ ld de, $0025
+ add hl, de
+ dec c
+ jr nz, .asm_10211c
+ ld a, $1
+ and a
+ jr .asm_10213c
+
+.asm_10213c
+ push af
+ call CloseSRAM
+ pop af
+ ret
+; 102142
+
+Function102142: ; 102142
+ call Function10218d
+ call Function102180
+ ld hl, UnknownText_0x1021d1
+ call Function1d4f
+ ld de, SFX_LEVEL_UP
+ call PlaySFX
+ call Functiona36
+ call Function1c07
+ call Function10219f
+ ld hl, UnknownText_0x1021d6
+ call Function1d4f
+ call YesNoBox
+ call Function1c07
+ jr c, .asm_10217c
+ call Function1021b8
+ jr c, .asm_10217c
+ call Function10218d
+ call Function102180
+ ld hl, UnknownText_0x1021db
+ call PrintText
+
+.asm_10217c
+ call Function1013d6
+ ret
+; 102180
+
+Function102180: ; 102180
+ ld hl, $c608 + 1
+ ld de, StringBuffer2
+ ld bc, $000b
+ call CopyBytes
+ ret
+; 10218d
+
+Function10218d: ; 10218d
+ ld hl, wdc00
+ ld de, $c608
+ ld bc, $0026
+ ld a, $5
+ call FarCopyWRAM
+ ld de, $c608 + 1
+ ret
+; 10219f
+
+Function10219f: ; 10219f
+ call FadeToMenu
+ call Function10218d
+ ld de, $c608 + 1
+ callba Function8ac4e
+ call Functiona36
+ call PlayClickSFX
+ call Function1013aa
+ ret
+; 1021b8
+
+Function1021b8: ; 1021b8
+ call FadeToMenu
+ call Function10218d
+ ld de, $c60f
+ callba Function8ac70
+ ld a, c
+ ld [StringBuffer1], a
+ push af
+ call Function1013aa
+ pop af
+ ret
+; 1021d1
+
+UnknownText_0x1021d1: ; 1021d1
+ text_jump UnknownText_0x1bd19a
+ db "@"
+
+UnknownText_0x1021d6: ; 1021d1
+ text_jump UnknownText_0x1bd1ba
+ db "@"
+
+UnknownText_0x1021db: ; 1021d1
+ text_jump UnknownText_0x1bd1dd
+ db "@"
+; 1021e0
+
+Function1021e0: ; 1021e0
+ call Function1d4f
+ call Functiona36
+ call Function1c07
+ ret
+; 1021ea
+
+UnknownText_0x1021ea: ; 1021ea
+ text_jump UnknownText_0x1bd201
+ db "@"
+
+UnknownText_0x1021ef:
+ text_jump UnknownText_0x1bd211
+ db "@"
+
+UnknownText_0x1021f4:
+ text_jump UnknownText_0x1bd223
+ db "@"
+; 1021f9
+
+Function1021f9: ; 1021f9
+ call Function102233
+ ld a, $0
+ ld [wcd49], a
+ ld hl, wcd29
+ bit 3, [hl]
+ res 3, [hl]
+ jr z, .asm_10220f
+ ld a, $1
+ ld [wcd49], a
+
+.asm_10220f
+ call Function1022ca
+ ld a, [wcd49]
+ ld hl, Jumptable_1022f5
+ rst JumpTable
+ call Function102241
+ call Function1022d0
+ jr c, .asm_102231
+ ld a, [wcd49]
+ bit 7, a
+ jr z, .asm_10220f
+ xor a
+ ld hl, wcd29
+ bit 3, [hl]
+ ret z
+ scf
+ ret
+
+.asm_102231
+ xor a
+ ret
+; 102233
+
+Function102233: ; 102233
+ ld hl, wcd49
+ ld bc, $000a
+ xor a
+ call ByteFill
+ call Function10304f
+ ret
+; 102241
+
+Function102241: ; 102241
+ call Function10226a
+ call Function102274
+ call Function10224b
+ ret
+; 10224b
+
+Function10224b: ; 10224b
+ ld hl, wcd4b
+ bit 1, [hl]
+ jr nz, .asm_10225e
+ bit 2, [hl]
+ jr nz, .asm_10225e
+ call DelayFrame
+ call DelayFrame
+ xor a
+ ret
+
+.asm_10225e
+ res 1, [hl]
+ res 2, [hl]
+ callba Function104099
+ scf
+ ret
+; 10226a
+
+Function10226a: ; 10226a
+ ld hl, wcd4b
+ bit 0, [hl]
+ ret z
+ call Function10305d
+ ret
+; 102274
+
+Function102274: ; 102274
+ ld hl, wcd4b
+ bit 3, [hl]
+ ret z
+ res 3, [hl]
+ ld de, $0008
+ call PlaySFX
+ ret
+; 102283
+
+Function102283: ; 102283
+ ld a, $1
+ ld [AttrMapEnd], a
+ ld hl, wcd4b
+ set 0, [hl]
+ ret
+; 10228e
+
+Function10228e: ; 10228e
+ xor a
+ ld [AttrMapEnd], a
+ ld hl, wcd4b
+ res 0, [hl]
+ ret
+; 102298
+
+Function102298: ; 102298
+ ld a, e
+ cp $2
+ ret nz
+ ld hl, wcd4b
+ bit 6, [hl]
+ jr z, .asm_1022b6
+ ld hl, wcd4b
+ bit 7, [hl]
+ ld hl, wcd4b
+ set 7, [hl]
+ ret nz
+ ld de, SFX_ELEVATOR_END
+ call PlaySFX
+ jr .asm_1022c1
+
+.asm_1022b6
+ ld hl, wcd4b
+ bit 7, [hl]
+ ld hl, wcd4b
+ res 7, [hl]
+ ret z
+
+.asm_1022c1
+ call Function10304f
+ ld a, $1
+ ld [AttrMapEnd], a
+ ret
+; 1022ca
+
+Function1022ca: ; 1022ca
+ ld a, 30
+ ld [OverworldDelay], a
+ ret
+; 1022d0
+
+Function1022d0: ; 1022d0
+ callba Function10032e
+ ld a, [wcd2b]
+ and a
+ jr nz, .asm_1022f3
+ call Function102298
+ ld a, [OverworldDelay]
+ ld c, a
+ ld a, 30
+ sub c
+ ld c, a
+ ld b, $3
+ callba Function10062d
+ jr c, .asm_1022f3
+ xor a
+ ret
+
+.asm_1022f3
+ scf
+ ret
+; 1022f5
+
+Jumptable_1022f5: ; 1022f5
+ dw Function10234b
+ dw Function102361
+ dw Function10236e
+ dw Function102387
+ dw Function1023a1
+ dw Function1025c7
+ dw Function1025dc
+ dw Function1024f6
+ dw Function10250c
+ dw Function1024a8
+ dw Function102591
+ dw Function1024a8
+ dw Function1025b0
+ dw Function1025bd
+ dw Function102814
+ dw Function10283c
+ dw Function102862
+ dw Function10286f
+ dw Function1024a8
+ dw Function1028a5
+ dw Function1028ab
+ dw Function1023b5
+ dw Function1023c6
+ dw Function1024af
+ dw Function102416
+ dw Function102423
+ dw Function10244b
+ dw Function1024af
+ dw Function10246a
+ dw Function102652
+ dw Function10266b
+ dw Function1025e9
+ dw Function1025ff
+ dw Function102738
+ dw Function102754
+ dw Function1026b7
+ dw Function1026c8
+ dw Function1028bf
+ dw Function1028c6
+ dw Function1028d3
+ dw Function1028da
+ dw Function1024a8
+ dw Function10248d
+; 10234b
+
+Function10234b: ; 10234b
+ call Function102d9a
+ call Function102dd3
+ call Function102dec
+ ld hl, wcd4b
+ set 1, [hl]
+ ld a, [wcd49]
+ inc a
+ ld [wcd49], a
+ ret
+; 102361
+
+Function102361: ; 102361
+ ld a, $cc
+ call Function1028e8
+ ld a, [wcd49]
+ inc a
+ ld [wcd49], a
+ ret
+; 10236e
+
+Function10236e: ; 10236e
+ call Function1028fc
+ ret nc
+ ld a, [wcd51]
+ cp $cc
+ jr z, .asm_10237f
+ ld a, $f2
+ ld [wcd2b], a
+ ret
+
+.asm_10237f
+ ld a, [wcd49]
+ inc a
+ ld [wcd49], a
+ ret
+; 102387
+
+Function102387: ; 102387
+ ld hl, wcd4b
+ set 6, [hl]
+ xor a
+ ld [wdc5f], a
+ ld de, MUSIC_ROUTE_30
+ call PlayMusic
+ call Function102d9a
+ call Function102dd3
+ ld a, $1
+ ld [wcfa9], a
+
+Function1023a1: ; 1023a1
+ call Function102283
+ call Function102db7
+ call Function102dec
+ ld hl, wcd4b
+ set 1, [hl]
+ ld a, $1d
+ ld [wcd49], a
+ ret
+; 1023b5
+
+Function1023b5: ; 1023b5
+ call Function10228e
+ call Function102a3b
+ call Function102b12
+ ld a, [wcd49]
+ inc a
+ ld [wcd49], a
+ ret
+; 1023c6
+
+Function1023c6: ; 1023c6
+ call Function102c48
+ call Function102c87
+ ld a, [wcd4c]
+ dec a
+ ld [CurPartyMon], a
+ xor a
+ ld [wd10b], a
+ callba Functione039
+ ld hl, PartyCount
+ inc [hl]
+ ld a, [hli]
+ ld c, a
+ ld b, $0
+ add hl, bc
+ ld [hl], $ff
+ ld a, [PartyCount]
+ ld [wcd4c], a
+ call Function102c07
+ call Function102d48
+ call Function102b32
+ call Function102f50
+ ld hl, wcd4b
+ set 1, [hl]
+ ld a, $14
+ ld [wcd4e], a
+ ld a, $0
+ ld [wcd4f], a
+ ld a, $0
+ ld [wcd4a], a
+ ld a, [wcd49]
+ inc a
+ ld [wcd49], a
+ ret
+; 102416
+
+Function102416: ; 102416
+ ld a, $aa
+ call Function1028e8
+ ld a, [wcd49]
+ inc a
+ ld [wcd49], a
+ ret
+; 102423
+
+Function102423: ; 102423
+ call Function102921
+ ret nc
+ callba Function14a58
+ callba Function1060af
+ callba Function106187
+ ld hl, wcd4b
+ set 1, [hl]
+ ld a, $0
+ ld [wcd4a], a
+ ld a, [wcd49]
+ inc a
+ ld [wcd49], a
+ ret
+; 10244b
+
+Function10244b: ; 10244b
+ call Function102f32
+ ld hl, wcd4b
+ set 1, [hl]
+ ld a, $19
+ ld [wcd4e], a
+ ld a, $0
+ ld [wcd4f], a
+ ld a, $0
+ ld [wcd4a], a
+ ld a, [wcd49]
+ inc a
+ ld [wcd49], a
+ ret
+; 10246a
+
+Function10246a: ; 10246a
+ call Function102d9a
+ ld hl, wcd29
+ set 3, [hl]
+ call Function102e07
+ ld hl, wcd4b
+ set 1, [hl]
+ ld a, $2a
+ ld [wcd49], a
+ ret
+; 102480
+
+Function102480: ; 102480
+ ld c, $32
+ call DelayFrames
+ ld a, [wcd49]
+ inc a
+ ld [wcd49], a
+ ret
+; 10248d
+
+Function10248d: ; 10248d
+ ld a, [wcd49]
+ set 7, a
+ ld [wcd49], a
+ ret
+; 102496
+
+Function102496: ; 102496
+ ld hl, wcd4e
+ dec [hl]
+ ret nz
+ ld a, $0
+ ld [wcd4a], a
+ ld a, [wcd49]
+ inc a
+ ld [wcd49], a
+ ret
+; 1024a8
+
+Function1024a8: ; 1024a8
+ callba Function1009f3
+ ret c
+
+Function1024af: ; 1024af
+ call GetJoypad
+ ld a, [wcd4a]
+ ld hl, Jumptable_1024ba
+ rst JumpTable
+ ret
+; 1024ba
+
+Jumptable_1024ba: ; 1024ba
+ dw Function1024c0
+ dw Function1024cb
+ dw Function1024de
+; 1024c0
+
+Function1024c0: ; 1024c0
+ ld hl, wcd4e
+ inc [hl]
+ ld a, [wcd4a]
+ inc a
+ ld [wcd4a], a
+
+Function1024cb: ; 1024cb
+ ld hl, wcd4e
+ dec [hl]
+ ret nz
+ ld a, [wcd4f]
+ inc a
+ ld [wcd4e], a
+ ld a, [wcd4a]
+ inc a
+ ld [wcd4a], a
+
+Function1024de: ; 1024de
+ ld hl, wcd4e
+ dec [hl]
+ jr z, .asm_1024e9
+ ld a, [hJoyPressed]
+ and A_BUTTON | B_BUTTON
+ ret z
+
+.asm_1024e9
+ ld a, $0
+ ld [wcd4a], a
+ ld a, [wcd49]
+ inc a
+ ld [wcd49], a
+ ret
+; 1024f6
+
+Function1024f6: ; 1024f6
+ call Function1bee
+ ld hl, wcd4b
+ set 1, [hl]
+ ld a, [wcd4c]
+ call Function1028e8
+ ld a, [wcd49]
+ inc a
+ ld [wcd49], a
+ ret
+; 10250c
+
+Function10250c: ; 10250c
+ call Function1028fc
+ ret nc
+ ld a, [wcd51]
+ cp $f
+ jr z, .asm_10254b
+ and a
+ jr z, .asm_102572
+ cp $aa
+ jr z, .asm_102572
+ cp $7
+ jr nc, .asm_102572
+ ld [wcd4d], a
+ dec a
+ ld [wd003], a
+ ld a, [wcd4c]
+ dec a
+ ld [DefaultFlypoint], a
+ call Function102b9c
+ call Function102bdc
+ jr c, .asm_10256d
+ callba Functionfb5dd
+ jr c, .asm_102568
+ ld hl, wcd4b
+ set 1, [hl]
+ ld a, $e
+ ld [wcd49], a
+ ret
+
+.asm_10254b
+ call Function103021
+ ld hl, wcd4b
+ set 1, [hl]
+ ld a, $0
+ ld [wcd4a], a
+ ld a, $1e
+ ld [wcd4e], a
+ ld a, $1e
+ ld [wcd4f], a
+ ld a, $29
+ ld [wcd49], a
+ ret
+
+.asm_102568
+ call Function102ff5
+ jr .asm_102577
+
+.asm_10256d
+ call Function102f85
+ jr .asm_102577
+
+.asm_102572
+ call Function102fce
+ jr .asm_102577
+
+.asm_102577
+ ld hl, wcd4b
+ set 1, [hl]
+ ld a, $0
+ ld [wcd4a], a
+ ld a, $1e
+ ld [wcd4e], a
+ ld a, $3c
+ ld [wcd4f], a
+ ld a, $9
+ ld [wcd49], a
+ ret
+; 102591
+
+Function102591: ; 102591
+ call Function102ee7
+ ld hl, wcd4b
+ set 1, [hl]
+ ld a, $0
+ ld [wcd4a], a
+ ld a, $1e
+ ld [wcd4e], a
+ ld a, $3c
+ ld [wcd4f], a
+ ld a, [wcd49]
+ inc a
+ ld [wcd49], a
+ ret
+; 1025b0
+
+Function1025b0: ; 1025b0
+ ld a, $9
+ call Function1028e8
+ ld a, [wcd49]
+ inc a
+ ld [wcd49], a
+ ret
+; 1025bd
+
+Function1025bd: ; 1025bd
+ call Function1028fc
+ ret nc
+ ld a, $4
+ ld [wcd49], a
+ ret
+; 1025c7
+
+Function1025c7: ; 1025c7
+ call Function102f6d
+ ld hl, wcd4b
+ set 1, [hl]
+ ld a, $f
+ call Function1028e8
+ ld a, [wcd49]
+ inc a
+ ld [wcd49], a
+ ret
+; 1025dc
+
+Function1025dc: ; 1025dc
+ call Function1028fc
+ ret nc
+ ld a, [wcd49]
+ set 7, a
+ ld [wcd49], a
+ ret
+; 1025e9
+
+Function1025e9: ; 1025e9
+ nop
+ ld hl, wcd4b
+ set 6, [hl]
+ call Function102b4e
+ ld hl, wcd4b
+ set 1, [hl]
+ ld a, [wcd49]
+ inc a
+ ld [wcd49], a
+ ret
+; 1025ff
+
+Function1025ff: ; 1025ff
+ ld hl, wcd4b
+ set 2, [hl]
+ callba Function1009f3
+ ret c
+ callba Function241ba
+ ld a, [wcfa8]
+ and c
+ ret z
+ bit 0, c
+ jr nz, .asm_102623
+ bit 6, c
+ jr nz, .asm_10262e
+ bit 7, c
+ jr nz, .asm_102646
+ ret
+
+.asm_102623
+ ld hl, wcd4b
+ set 3, [hl]
+ ld a, $27
+ ld [wcd49], a
+ ret
+
+.asm_10262e
+ ld a, [wcfa9]
+ ld b, a
+ ld a, [OTPartyCount]
+ cp b
+ ret nz
+ call Function1bf7
+ ld a, [PartyCount]
+ ld [wcfa9], a
+ ld a, $1d
+ ld [wcd49], a
+ ret
+
+.asm_102646
+ ld a, [wcfa9]
+ cp $1
+ ret nz
+ ld a, $23
+ ld [wcd49], a
+ ret
+; 102652
+
+Function102652: ; 102652
+ nop
+ ld hl, wcd4b
+ set 6, [hl]
+ nop
+ call Function102b7b
+ nop
+ ld hl, wcd4b
+ set 1, [hl]
+ nop
+ ld a, [wcd49]
+ inc a
+ ld [wcd49], a
+ ret
+; 10266b
+
+Function10266b: ; 10266b
+ ld hl, wcd4b
+ set 2, [hl]
+ callba Function1009f3
+ ret c
+ callba Function241ba
+ ld a, [wcfa8]
+ and c
+ ret z
+ bit 0, c
+ jr nz, .asm_10268f
+ bit 7, c
+ jr nz, .asm_10269a
+ bit 6, c
+ jr nz, .asm_1026a8
+ ret
+
+.asm_10268f
+ ld hl, wcd4b
+ set 3, [hl]
+ ld a, $21
+ ld [wcd49], a
+ ret
+
+.asm_10269a
+ ld a, [wcfa9]
+ dec a
+ ret nz
+ call Function1bf7
+ ld a, $1f
+ ld [wcd49], a
+ ret
+
+.asm_1026a8
+ ld a, [wcfa9]
+ ld b, a
+ ld a, [PartyCount]
+ cp b
+ ret nz
+ ld a, $23
+ ld [wcd49], a
+ ret
+; 1026b7
+
+Function1026b7: ; 1026b7
+ ld hl, wcd4b
+ set 6, [hl]
+ ld a, [wcd49]
+ inc a
+ ld [wcd49], a
+ ld a, $0
+ ld [wcd4a], a
+
+Function1026c8: ; 1026c8
+ call GetJoypad
+ callba Function1009f3
+ ret c
+ ld a, [wcd4a]
+ ld hl, Jumptable_1026da
+ rst JumpTable
+ ret
+; 1026da
+
+Jumptable_1026da: ; 1026da
+ dw Function1026de
+ dw Function1026f3
+; 1026de
+
+Function1026de: ; 1026de
+ call Function1bf7
+ hlcoord 9, 17
+ ld [hl], $ed
+ ld a, [wcd4a]
+ inc a
+ ld [wcd4a], a
+ ld hl, wcd4b
+ set 1, [hl]
+ ret
+; 1026f3
+
+Function1026f3: ; 1026f3
+ ld a, [hJoyPressed]
+ bit 0, a
+ jr nz, .asm_102723
+ bit 6, a
+ jr nz, .asm_102712
+ bit 7, a
+ jr nz, .asm_102702
+ ret
+
+.asm_102702
+ hlcoord 9, 17
+ ld [hl], $7f
+ ld a, $1
+ ld [wcfa9], a
+ ld a, $1d
+ ld [wcd49], a
+ ret
+
+.asm_102712
+ hlcoord 9, 17
+ ld [hl], $7f
+ ld a, [OTPartyCount]
+ ld [wcfa9], a
+ ld a, $1f
+ ld [wcd49], a
+ ret
+
+.asm_102723
+ hlcoord 9, 17
+ ld [hl], $ec
+ ld hl, wcd4b
+ set 3, [hl]
+ ld hl, wcd4b
+ set 2, [hl]
+ ld a, $5
+ ld [wcd49], a
+ ret
+; 102738
+
+Function102738: ; 102738
+ ld hl, wcd4b
+ set 6, [hl]
+ call Function1bee
+ call Function1027eb
+ ld hl, wcd4b
+ set 1, [hl]
+ ld a, [wcd49]
+ inc a
+ ld [wcd49], a
+ ld a, $0
+ ld [wcd4a], a
+
+Function102754: ; 102754
+ call GetJoypad
+ callba Function1009f3
+ ret c
+ ld a, [wcd4a]
+ ld hl, Jumptable_102766
+ rst JumpTable
+ ret
+; 102766
+
+Jumptable_102766: ; 102766
+ dw Function102770
+ dw Function102775
+ dw Function10278c
+ dw Function1027a0
+ dw Function1027b7
+; 102770
+
+Function102770: ; 102770
+ ld a, $1
+ ld [wcd4a], a
+
+Function102775: ; 102775
+ hlcoord 1, 16
+ ld [hl], $ed
+ hlcoord 11, 16
+ ld [hl], $7f
+ ld hl, wcd4b
+ set 2, [hl]
+ ld a, [wcd4a]
+ inc a
+ ld [wcd4a], a
+ ret
+; 10278c
+
+Function10278c: ; 10278c
+ ld a, [hJoyPressed]
+ bit 0, a
+ jr nz, asm_1027c6
+ bit 1, a
+ jr nz, asm_1027e2
+ bit 4, a
+ jr nz, .asm_10279b
+ ret
+
+.asm_10279b
+ ld a, $3
+ ld [wcd4a], a
+
+Function1027a0: ; 1027a0
+ hlcoord 1, 16
+ ld [hl], $7f
+ hlcoord 11, 16
+ ld [hl], $ed
+ ld hl, wcd4b
+ set 2, [hl]
+ ld a, [wcd4a]
+ inc a
+ ld [wcd4a], a
+ ret
+
+Function1027b7: ; 1027b7
+ ld a, [hJoyPressed]
+ bit 0, a
+ jr nz, asm_1027d1
+ bit 1, a
+ jr nz, asm_1027e2
+ bit 5, a
+ jr nz, Function102770
+ ret
+
+asm_1027c6:
+ ld hl, wcd4b
+ set 3, [hl]
+ ld a, $25
+ ld [wcd49], a
+ ret
+
+asm_1027d1:
+ ld hl, wcd4b
+ set 3, [hl]
+ ld a, [wcfa9]
+ ld [wcd4c], a
+ ld a, $7
+ ld [wcd49], a
+ ret
+
+asm_1027e2:
+ call Function102db7
+ ld a, $1d
+ ld [wcd49], a
+ ret
+; 1027eb
+
+Function1027eb: ; 1027eb
+ hlcoord 0, 14
+ ld b, $2
+ ld c, $12
+ ld d, h
+ ld e, l
+ callba Function16d61d
+ ld de, String_102804
+ hlcoord 2, 16
+ call PlaceString
+ ret
+; 102804
+
+String_102804: ; 102804
+ db "STATS TRADE@"
+; 102814
+
+Function102814: ; 102814
+ ld a, [wcfa9]
+ ld [wcd52], a
+ ld a, [wcd4c]
+ dec a
+ ld [DefaultFlypoint], a
+ ld a, [wcd4d]
+ dec a
+ ld [wd003], a
+ call Function102ea8
+ ld a, [wcd49]
+ inc a
+ ld [wcd49], a
+ ld a, $0
+ ld [wcd4a], a
+ ld hl, wcd4b
+ set 1, [hl]
+
+Function10283c: ; 10283c
+ ld hl, wcd4b
+ set 2, [hl]
+ call Function1029c3
+ ret z
+ jr c, .asm_102852
+ ld a, $10
+ ld [wcd49], a
+ ld hl, wcd4b
+ set 1, [hl]
+ ret
+
+.asm_102852
+ ld a, $14
+ ld [wcd49], a
+ ld hl, wcd4b
+ set 3, [hl]
+ ld hl, wcd4b
+ set 1, [hl]
+ ret
+; 102862
+
+Function102862: ; 102862
+ ld a, $8
+ call Function1028e8
+ ld a, [wcd49]
+ inc a
+ ld [wcd49], a
+ ret
+; 10286f
+
+Function10286f: ; 10286f
+ call Function1028fc
+ ret nc
+ ld a, [wcd52]
+ ld [wcfa9], a
+ ld a, [wcd51]
+ cp $8
+ jr nz, .asm_102886
+ ld a, $15
+ ld [wcd49], a
+ ret
+
+.asm_102886
+ call Function102ee7
+ ld hl, wcd4b
+ set 1, [hl]
+ ld a, $1e
+ ld [wcd4e], a
+ ld a, $3c
+ ld [wcd4f], a
+ ld a, $0
+ ld [wcd4a], a
+ ld a, [wcd49]
+ inc a
+ ld [wcd49], a
+ ret
+; 1028a5
+
+Function1028a5: ; 1028a5
+ ld a, $4
+ ld [wcd49], a
+ ret
+; 1028ab
+
+Function1028ab: ; 1028ab
+ ld a, [wcd52]
+ ld [wcfa9], a
+ call Function102f15
+ ld hl, wcd4b
+ set 1, [hl]
+ ld a, $c
+ ld [wcd49], a
+ ret
+; 1028bf
+
+Function1028bf: ; 1028bf
+ ld a, [wcd49]
+ inc a
+ ld [wcd49], a
+
+Function1028c6: ; 1028c6
+ xor a
+ ld [MonType], a
+ call Function102bac
+ ld a, $1d
+ ld [wcd49], a
+ ret
+; 1028d3
+
+Function1028d3: ; 1028d3
+ ld a, [wcd49]
+ inc a
+ ld [wcd49], a
+
+Function1028da: ; 1028da
+ ld a, $1
+ ld [MonType], a
+ call Function102bac
+ ld a, $1f
+ ld [wcd49], a
+ ret
+; 1028e8
+
+Function1028e8: ; 1028e8
+ ld hl, wcd4b
+ res 6, [hl]
+ ld [wcd50], a
+ callba Function100641
+ ld a, $0
+ ld [wcd4a], a
+ ret
+; 1028fc
+
+Function1028fc: ; 1028fc
+ call GetJoypad
+ callba Function1009f3
+ jr nc, .asm_102909
+ and a
+ ret
+
+.asm_102909
+ ld a, [wcd4a]
+ ld hl, Jumptable_102917
+ rst JumpTable
+ ret nc
+ ld a, $0
+ ld [wcd4a], a
+ ret
+; 102917
+
+Jumptable_102917: ; 102917
+ dw Function102933
+ dw Function10294f
+ dw Function10295d
+ dw Function10296e
+ dw Function102996
+; 102921
+
+Function102921: ; 102921
+ ld a, [wcd4a]
+ ld hl, Jumptable_10292f
+ rst JumpTable
+ ret nc
+ ld a, $0
+ ld [wcd4a], a
+ ret
+; 10292f
+
+Jumptable_10292f: ; 10292f
+ dw Function10295d
+ dw Function102984
+; 102933
+
+Function102933: ; 102933
+ ld hl, MenuDataHeader_1029bb
+ call LoadMenuDataHeader
+ call Function102e07
+ ld a, $32
+ ld [TextDelayFrames], a
+ ld hl, wcd4b
+ set 1, [hl]
+ ld a, [wcd4a]
+ inc a
+ ld [wcd4a], a
+ and a
+ ret
+; 10294f
+
+Function10294f: ; 10294f
+ ld a, [TextDelayFrames]
+ and a
+ ret nz
+ ld a, [wcd4a]
+ inc a
+ ld [wcd4a], a
+ and a
+ ret
+; 10295d
+
+Function10295d: ; 10295d
+ call Function10299e
+ ld a, $0
+ ld [wcd27], a
+ ld a, [wcd4a]
+ inc a
+ ld [wcd4a], a
+ and a
+ ret
+; 10296e
+
+Function10296e: ; 10296e
+ callba Function100382
+ and a
+ ld a, [wcd27]
+ bit 7, a
+ ret z
+ ld a, [wcd4a]
+ inc a
+ ld [wcd4a], a
+ and a
+ ret
+; 102984
+
+Function102984: ; 102984
+ callba Function100382
+ and a
+ ld a, [wcd27]
+ bit 7, a
+ ret z
+ call Function1029af
+ scf
+ ret
+; 102996
+
+Function102996: ; 102996
+ call Function1029af
+ call Function1c07
+ scf
+ ret
+; 10299e
+
+Function10299e: ; 10299e
+ ld a, $1
+ ld [wccb4], a
+ ld a, [wcd50]
+ ld [wccb5], a
+ ld a, $aa
+ ld [wcd51], a
+ ret
+; 1029af
+
+Function1029af: ; 1029af
+ ld hl, wcd4b
+ res 7, [hl]
+ ld a, [wcc61]
+ ld [wcd51], a
+ ret
+; 1029bb
+
+MenuDataHeader_1029bb: ; 1029bb
+ db $40 ; flags
+ db 10, 3 ; start coords
+ db 12, 15 ; end coords
+ dw NULL
+ db 1 ; default option
+; 1029c3
+
+Function1029c3: ; 1029c3
+ ld a, [wcd4a]
+ ld hl, Jumptable_1029cb
+ rst JumpTable
+ ret
+; 1029cb
+
+Jumptable_1029cb: ; 1029cb
+ dw Function1029cf
+ dw Function1029fe
+; 1029cf
+
+Function1029cf: ; 1029cf
+ call Function1d6e
+ hlcoord 10, 7
+ ld b, $3
+ ld c, $8
+ ld d, h
+ ld e, l
+ callba Function16d61d
+ ld de, String_102a26
+ hlcoord 12, 8
+ call PlaceString
+ ld hl, wcd4b
+ set 1, [hl]
+ ld de, Unknown_102a33
+ call Function1bb1
+ ld a, [wcd4a]
+ inc a
+ ld [wcd4a], a
+ xor a
+ ret
+; 1029fe
+
+Function1029fe: ; 1029fe
+ callba Function1009f3
+ ret c
+ callba Function241ba
+ ld a, c
+ ld hl, wcfa8
+ and [hl]
+ ret z
+ push af
+ call Function1c07
+ pop af
+ ld a, [wcfa9]
+ cp $1
+ jr nz, .asm_102a21
+ ld a, $1
+ and a
+ ret
+
+.asm_102a21
+ ld a, $1
+ and a
+ scf
+ ret
+; 102a26
+
+String_102a26: ; 102a26
+ db "TRADE"
+ next "CANCEL"
+ db "@"
+; 102a33
+
+Unknown_102a33:
+INCBIN "baserom.gbc", $102a33, $102a3b - $102a33
+
+Function102a3b: ; 102a3b
+ ld a, [wcd30]
+ ld [wc74e], a
+ ld hl, PlayerName
+ ld de, $c6e7
+ ld bc, $000b
+ call CopyBytes
+ ld a, [wcd4c]
+ dec a
+ ld c, a
+ ld b, $0
+ ld hl, PartySpecies
+ add hl, bc
+ ld a, [hl]
+ ld [$c6d0], a
+ ld a, [wcd4c]
+ dec a
+ ld hl, PartyMonOT
+ call SkipNames
+ ld de, $c6f2
+ ld bc, $000b
+ call CopyBytes
+ ld a, [wcd4c]
+ dec a
+ ld hl, PartyMon1ID
+ call GetPartyLocation
+ ld a, [hli]
+ ld [$c6ff], a
+ ld a, [hl]
+ ld [wc700], a
+ ld a, [wcd4c]
+ dec a
+ ld hl, PartyMon1DVs
+ call GetPartyLocation
+ ld a, [hli]
+ ld [$c6fd], a
+ ld a, [hl]
+ ld [$c6fe], a
+ ld a, [wcd4c]
+ dec a
+ ld hl, PartyMon1Species
+ call GetPartyLocation
+ ld b, h
+ ld c, l
+ callba GetCaughtGender
+ ld a, c
+ ld [wc701], a
+ ld hl, wd26b
+ ld de, wc719
+ ld bc, $000b
+ call CopyBytes
+ ld a, [wcd4d]
+ dec a
+ ld c, a
+ ld b, $0
+ ld hl, OTPartySpecies
+ add hl, bc
+ ld a, [hl]
+ ld [wc702], a
+ ld a, [wcd4d]
+ dec a
+ ld hl, OTPartyMonOT
+ call SkipNames
+ ld de, wc724
+ ld bc, $000b
+ call CopyBytes
+ ld a, [wcd4d]
+ dec a
+ ld hl, OTPartyMon1ID
+ call GetPartyLocation
+ ld a, [hli]
+ ld [wc731], a
+ ld a, [hl]
+ ld [wc732], a
+ ld a, [wcd4d]
+ dec a
+ ld hl, OTPartyMon1DVs
+ call GetPartyLocation
+ ld a, [hli]
+ ld [wc72f], a
+ ld a, [hl]
+ ld [wc730], a
+ ld a, [wcd4d]
+ dec a
+ ld hl, OTPartyMon1Species
+ call GetPartyLocation
+ ld b, h
+ ld c, l
+ callba GetCaughtGender
+ ld a, c
+ ld [wc733], a
+ ret
+; 102b12
+
+Function102b12: ; 102b12
+ ld c, $64
+ call DelayFrames
+ call Function102d9a
+ call Functione58
+ ld a, [wcd2f]
+ and a
+ jr nz, .asm_102b2b
+ callba Function108026
+ jr .asm_102b31
+
+.asm_102b2b
+ callba Function10802a
+
+.asm_102b31
+ ret
+; 102b32
+
+Function102b32: ; 102b32
+ ld a, [wcd4c]
+ dec a
+ ld [CurPartyMon], a
+ ld a, $1
+ ld [wd1e9], a
+ callba Function421d8
+ call Function102d9a
+ call Function102dd3
+ call Function102dec
+ ret
+; 102b4e
+
+Function102b4e: ; 102b4e
+ ld a, $1
+ ld [MonType], a
+ ld a, [wcfa9]
+ push af
+ ld de, Unknown_102b73
+ call Function1bb1
+ pop af
+ ld [wcfa9], a
+ ld a, [OTPartyCount]
+ ld [wcfa3], a
+ ret
+; 102b68
+
+Function102b68: ; 102b68 ; unreferenced
+ xor a
+ ld hl, wcf71
+ ld bc, $0010
+ call ByteFill
+ ret
+; 102b73
+
+Unknown_102b73:
+INCBIN "baserom.gbc", $102b73, $102b7b - $102b73
+
+Function102b7b: ; 102b7b
+ xor a
+ ld [MonType], a
+ ld a, [wcfa9]
+ push af
+ ld de, Unknown_102b94
+ call Function1bb1
+ pop af
+ ld [wcfa9], a
+ ld a, [PartyCount]
+ ld [wcfa3], a
+ ret
+; 102b94
+
+Unknown_102b94:
+INCBIN "baserom.gbc", $102b94, $102b9c - $102b94
+
+Function102b9c: ; 102b9c
+ ld a, [wcd4d]
+ dec a
+ hlcoord 6, 9
+ ld bc, $0014
+ call AddNTimes
+ ld [hl], $ec
+ ret
+; 102bac
+
+Function102bac: ; 102bac
+ ld a, [wcfa9]
+ dec a
+ ld [CurPartyMon], a
+ call LowVolume
+ call ClearSprites
+ callba Function4dc8f
+ ld a, [CurPartyMon]
+ inc a
+ ld [wcfa9], a
+ call Function102d9a
+ call ClearPalettes
+ call DelayFrame
+ call MaxVolume
+ call Function102dd3
+ call Function102dec
+ call Function102db7
+ ret
+; 102bdc
+
+Function102bdc: ; 102bdc
+ ld a, [wcd4d]
+ dec a
+ ld hl, OTPartyMon1Species
+ call GetPartyLocation
+ push hl
+ ld a, [wcd4d]
+ ld c, a
+ ld b, $0
+ ld hl, OTPartyCount
+ add hl, bc
+ ld a, [hl]
+ pop hl
+ cp EGG
+ jr z, .asm_102bfa
+ cp [hl]
+ jr nz, .asm_102c05
+
+.asm_102bfa
+ ld bc, OTPartyMon1Level - OTPartyMon1
+ add hl, bc
+ ld a, [hl]
+ cp MAX_LEVEL + 1
+ jr nc, .asm_102c05
+ and a
+ ret
+
+.asm_102c05
+ scf
+ ret
+; 102c07
+
+Function102c07: ; 102c07
+ call Function102c14
+ call Function102c3b
+ call Function102c21
+ call Function102c2e
+ ret
+; 102c14
+
+Function102c14: ; 102c14
+ ld hl, PartySpecies
+ ld de, OTPartySpecies
+ ld bc, $0001
+ call Function102c71
+ ret
+; 102c21
+
+Function102c21: ; 102c21
+ ld hl, PartyMonNicknames
+ ld de, OTPartyMonNicknames
+ ld bc, $000b
+ call Function102c71
+ ret
+; 102c2e
+
+Function102c2e: ; 102c2e
+ ld hl, PartyMonOT
+ ld de, OTPartyMonOT
+ ld bc, $000b
+ call Function102c71
+ ret
+; 102c3b
+
+Function102c3b: ; 102c3b
+ ld hl, PartyMon1
+ ld de, OTPartyMon1
+ ld bc, $0030
+ call Function102c71
+ ret
+; 102c48
+
+Function102c48: ; 102c48
+ callba Function10165a
+ ld a, $0
+ call GetSRAMBank
+ ld hl, $a600
+ ld de, $c608
+ ld bc, $002f
+ call Function102c71
+ call CloseSRAM
+ ld hl, $c608
+ ld de, wda00
+ ld bc, $01e0
+ ld a, $5
+ call FarCopyWRAM
+ ret
+; 102c71
+
+Function102c71: ; 102c71
+ ld a, [wcd4c]
+ dec a
+ call AddNTimes
+ push hl
+ ld h, d
+ ld l, e
+ ld a, [wcd4d]
+ dec a
+ call AddNTimes
+ pop de
+ call SwapBytes
+ ret
+; 102c87
+
+Function102c87: ; 102c87
+ ld a, [wcf63]
+ push af
+ ld a, [wcf64]
+ push af
+ ld a, [wcd4c]
+ ld [wcf63], a
+ ld a, [PartyCount]
+ ld [wcf64], a
+ ld a, $0
+ ld hl, $a600
+ ld de, $c608
+ ld bc, $011a
+ call Function102d3e
+ call Function102cee
+ ld a, $0
+ ld hl, $c608
+ ld de, $a600
+ ld bc, $011a
+ call Function102d3e
+ ld a, [wcd4d]
+ ld [wcf63], a
+ ld a, [OTPartyCount]
+ ld [wcf64], a
+ ld a, $5
+ ld hl, wda00
+ ld de, $c608
+ ld bc, $011a
+ call FarCopyWRAM
+ call Function102cee
+ ld a, $5
+ ld hl, $c608
+ ld de, wda00
+ ld bc, $011a
+ call FarCopyWRAM
+ pop af
+ ld [wcf64], a
+ pop af
+ ld [wcf63], a
+ ret
+; 102cee
+
+Function102cee: ; 102cee
+ ld a, [wcf63]
+ dec a
+ call Function102d34
+ ld de, DefaultFlypoint
+ ld bc, $002f
+ call CopyBytes
+ ld a, [wcf63]
+ ld c, a
+ ld a, $6
+ sub c
+ ret z
+ ld bc, $002f
+ ld hl, $0000
+ call AddNTimes
+ push hl
+ ld a, [wcf63]
+ dec a
+ call Function102d34
+ ld d, h
+ ld e, l
+ ld hl, $002f
+ add hl, de
+ pop bc
+ call CopyBytes
+ ld a, [wcf64]
+ dec a
+ call Function102d34
+ ld d, h
+ ld e, l
+ ld hl, DefaultFlypoint
+ ld bc, $002f
+ call CopyBytes
+ ret
+; 102d34
+
+Function102d34: ; 102d34
+ ld hl, $c608
+ ld bc, $002f
+ call AddNTimes
+ ret
+; 102d3e
+
+Function102d3e: ; 102d3e
+ call GetSRAMBank
+ call CopyBytes
+ call CloseSRAM
+ ret
+; 102d48
+
+Function102d48: ; 102d48
+ ld a, [wcd4c]
+ ld e, a
+ ld d, 0
+ ld hl, PartyCount
+ add hl, de
+ ld a, [hl]
+ ld [wd265], a
+ cp EGG
+ jr z, .asm_102d6d
+ dec a
+ call SetSeenAndCaughtMon
+ ld a, [wcd4c]
+ dec a
+ ld bc, PartyMon2 - PartyMon1
+ ld hl, PartyMon1Happiness
+ call AddNTimes
+ ld [hl], BASE_HAPPINESS
+
+.asm_102d6d
+ ld a, [wd265]
+ cp UNOWN
+ jr nz, .asm_102d98
+ ld a, [wcd4c]
+ dec a
+ ld bc, PartyMon2 - PartyMon1
+ ld hl, PartyMon1DVs
+ call AddNTimes
+ predef GetUnownLetter
+ callba Functionfba18
+ ld a, [wdef4]
+ and a
+ jr nz, .asm_102d98
+ ld a, [UnownLetter]
+ ld [wdef4], a
+
+.asm_102d98
+ and a
+ ret
+; 102d9a
+
+Function102d9a: ; 102d9a
+ ld a, $7f
+ ld hl, SpritesEnd
+ ld bc, $0168
+ call ByteFill
+ ld a, $7
+ ld hl, AttrMap
+ ld bc, $0168
+ call ByteFill
+ callba Function104000
+ ret
+; 102db7
+
+Function102db7: ; 102db7
+ call Function102e4f
+ call Function102e3e
+ ld hl, wcd4b
+ set 1, [hl]
+ ret
+; 102dc3
+
+Function102dc3: ; 102dc3
+ hlcoord 0, 12
+ ld b, $4
+ ld c, $12
+ ld d, h
+ ld e, l
+ callba Function16d61d
+ ret
+; 102dd3
+
+Function102dd3: ; 102dd3
+ call DisableLCD
+ ld de, GFX_1032a2
+ ld hl, VTiles0
+ lb bc, BANK(GFX_1032a2), 4
+ call Get2bpp
+ callba Function16d421
+ call EnableLCD
+ ret
+; 102dec
+
+Function102dec: ; 102dec
+ ld hl, Unknown_1032e2
+ ld de, Unkn2Pals
+ ld bc, $0020
+ ld a, $5
+ call FarCopyWRAM
+ callba Function49742
+ call Function32f9
+ call DelayFrame
+ ret
+; 102e07
+
+Function102e07: ; 102e07
+ hlcoord 3, 10
+ ld b, $1
+ ld c, $b
+ ld a, [IsInBattle]
+ and a
+ jr z, .asm_102e19
+ call TextBox
+ jr .asm_102e28
+
+.asm_102e19
+ hlcoord 3, 10
+ ld b, $1
+ ld c, $b
+ ld d, h
+ ld e, l
+ callba Function16d61d
+
+.asm_102e28
+ ld de, String_102e32
+ hlcoord 4, 11
+ call PlaceString
+ ret
+; 102e32
+
+String_102e32: ; 102e32
+ db "Waiting...!@"
+; 102e3e
+
+Function102e3e: ; 102e3e
+ ld de, String_102e48
+ hlcoord 10, 17
+ call PlaceString
+ ret
+; 102e48
+
+String_102e48: ; 102e48
+ db "CANCEL@"
+; 102e4f
+
+Function102e4f: ; 102e4f
+ callba Function16d42e
+ callba Function49797
+ ld de, PlayerName
+ hlcoord 4, 0
+ call PlaceString
+ ld a, $14
+ ld [bc], a
+ ld de, wd26b
+ hlcoord 4, 8
+ call PlaceString
+ ld a, $14
+ ld [bc], a
+ hlcoord 7, 1
+ ld de, PartySpecies
+ call Function102e86
+ hlcoord 7, 9
+ ld de, OTPartySpecies
+ call Function102e86
+ ret
+; 102e86
+
+Function102e86: ; 102e86
+ ld c, $0
+.asm_102e88
+ ld a, [de]
+ cp $ff
+ ret z
+ ld [wd265], a
+ push bc
+ push hl
+ push de
+ push hl
+ ld a, c
+ ld [hDividend], a
+ call GetPokemonName
+ pop hl
+ call PlaceString
+ pop de
+ inc de
+ pop hl
+ ld bc, $0014
+ add hl, bc
+ pop bc
+ inc c
+ jr .asm_102e88
+; 102ea8
+
+Function102ea8: ; 102ea8
+ call Function102dc3
+ ld a, [wcd4c]
+ dec a
+ ld c, a
+ ld b, $0
+ ld hl, PartySpecies
+ add hl, bc
+ ld a, [hl]
+ ld [wd265], a
+ call GetPokemonName
+ ld hl, StringBuffer1
+ ld de, StringBuffer2
+ ld bc, $000b
+ call CopyBytes
+ ld a, [wcd4d]
+ dec a
+ ld c, a
+ ld b, $0
+ ld hl, OTPartySpecies
+ add hl, bc
+ ld a, [hl]
+ ld [wd265], a
+ call GetPokemonName
+ ld hl, UnknownText_0x102ee2
+ call PrintTextBoxText
+ ret
+; 102ee2
+
+UnknownText_0x102ee2: ; 102ee2
+ text_jump UnknownText_0x1bd286
+ db "@"
+
+Function102ee7: ; 102ee7
+ call Function102dc3
+ ld de, String_102ef4
+ hlcoord 1, 14
+ call PlaceString
+ ret
+; 102ef4
+
+String_102ef4: ; 102ef4
+ db "Too bad! The trade"
+ next "was canceled!"
+ db "@"
+; 102f15
+
+Function102f15: ; 102f15
+ call Function102dc3
+ ld de, String_102f22
+ hlcoord 1, 14
+ call PlaceString
+ ret
+; 102f22
+
+String_102f22: ; 102f22
+ db "こうかんを キャンセルしました@"
+; 102f32
+
+Function102f32: ; 102f32
+ call Function102dc3
+ ld de, String_102f3f
+ hlcoord 1, 14
+ call PlaceString
+ ret
+; 102f3f
+
+String_102f3f: ; 102f3f
+ db "Trade completed!@"
+; 102f50
+
+Function102f50: ; 102f50
+ call Function102dc3
+ ld de, String_102f5d
+ hlcoord 1, 14
+ call PlaceString
+ ret
+; 102f5d
+
+String_102f5d: ; 102f5d
+ db "しょうしょう おまち ください@"
+; 102f6d
+
+Function102f6d: ; 102f6d
+ call Function102dc3
+ ld de, String_102f7a
+ hlcoord 1, 14
+ call PlaceString
+ ret
+; 102f7a
+
+String_102f7a: ; 102f7a
+ db "しゅうりょう します@"
+; 102f85
+
+Function102f85: ; 102f85
+ ld a, [wd003]
+ ld c, a
+ ld b, $0
+ ld hl, OTPartySpecies
+ add hl, bc
+ ld a, [hl]
+ ld [wd265], a
+ call GetPokemonName
+ call Function102dc3
+ ld de, String_102fb2
+ hlcoord 1, 14
+ call PlaceString
+ ld de, StringBuffer1
+ hlcoord 13, 14
+ call PlaceString
+ ld de, String_102fcc
+ call PlaceString
+ ret
+; 102fb2
+
+String_102fb2: ; 102fb2
+ db "あいてがわ", $4a, "えらんだ "
+ next "いじょう", $4a, "あるようです!!"
+ db "@"
+; 102fcc
+
+String_102fcc: ; 102fcc
+ db "に@"
+; 102fce
+
+Function102fce: ; 102fce
+ call Function102dc3
+ ld de, String_102fdb
+ hlcoord 1, 14
+ call PlaceString
+ ret
+; 102fdb
+
+String_102fdb: ; 102fdb
+ db "あいてがわ", $25, "せんたくに"
+ next "いじょう", $4a, "あるようです!!"
+ done
+; 102ff5
+
+Function102ff5: ; 102ff5
+ call Function102dc3
+ ld de, String_103002
+ hlcoord 1, 14
+ call PlaceString
+ ret
+; 103002
+
+String_103002: ; 103002
+ db "その#を こうかんすると"
+ next "せんとう できなく なっちゃうよ!"
+ db "@"
+; 103021
+
+Function103021: ; 103021
+ call Function102dc3
+ ld de, String_10302e
+ hlcoord 1, 14
+ call PlaceString
+ ret
+; 10302e
+
+String_10302e: ; 10302e
+ db "あいてが ちゅうしを えらんだので"
+ next "こうかんを ちゅうし します"
+ db "@"
+; 10304f
+
+Function10304f: ; 10304f
+ xor a
+ ld [AttrMapEnd], a
+ ld [wcf42], a
+ ld [wcf44], a
+ ld [wcf45], a
+ ret
+; 10305d
+
+Function10305d: ; 10305d
+ nop
+ ld a, [AttrMapEnd]
+ and a
+ ret z
+ call Function10307f
+ ret c
+ call Function103094
+ call Function10306e
+ ret
+; 10306e
+
+Function10306e: ; 10306e
+ ld a, $1
+ ld [hOAMUpdate], a
+ call ClearSprites
+ ld de, Sprites
+ call Function1030cd
+ xor a
+ ld [hOAMUpdate], a
+ ret
+; 10307f
+
+Function10307f: ; 10307f
+ ld c, $2
+ ld hl, wcd4b
+ bit 7, [hl]
+ jr z, .asm_10308a
+ ld c, $1
+
+.asm_10308a
+ ld hl, wcf45
+ inc [hl]
+ ld a, [hl]
+ cp c
+ ret c
+ xor a
+ ld [hl], a
+ ret
+; 103094
+
+Function103094: ; 103094
+ ld hl, wcd4b
+ bit 7, [hl]
+ jr nz, .asm_1030c0
+ ld a, [wcf42]
+ bit 7, a
+ jr nz, .asm_1030b2
+ ld a, [wcf44]
+ inc a
+ ld [wcf44], a
+ cp $2c
+ ret nz
+ ld hl, wcf42
+ set 7, [hl]
+ ret
+
+.asm_1030b2
+ ld a, [wcf44]
+ dec a
+ ld [wcf44], a
+ ret nz
+ ld hl, wcf42
+ res 7, [hl]
+ ret
+
+.asm_1030c0
+ ld hl, wcf44
+ ld a, [hl]
+ and a
+ jr z, .asm_1030ca
+ dec a
+ ld [hl], a
+ ret nz
+
+.asm_1030ca
+ ld [hl], $2c
+ ret
+; 1030cd
+
+Function1030cd: ; 1030cd
+ ld a, [wcf44]
+ ld l, a
+ ld h, 0
+ add hl, hl
+ add hl, hl
+ add hl, hl
+ ld bc, Unknown_103112
+ add hl, bc
+ ld b, $30
+ ld c, $8
+.asm_1030de
+ push hl
+ ld hl, wcd4b
+ bit 7, [hl]
+ pop hl
+ ld a, $0
+ jr z, .asm_1030eb
+ ld a, $5
+.asm_1030eb
+
+ add [hl]
+ inc hl
+ push hl
+
+ add a
+ add a
+
+ add Unknown_10327a % $100
+ ld l, a
+ ld a, Unknown_10327a / $100
+ adc 0
+ ld h, a
+
+ ld a, b
+ add [hl]
+ inc hl
+ ld [de], a
+ inc de
+ ld a, $a
+ add [hl]
+ inc hl
+ ld [de], a
+ inc de
+ ld a, [hli]
+ ld [de], a
+ inc de
+ ld a, [hli]
+ ld [de], a
+ inc de
+ pop hl
+ ld a, b
+ add $8
+ ld b, a
+ dec c
+ jr nz, .asm_1030de
+ ret
+; 103112
+
+Unknown_103112: ; 103112
+ db $00, $00, $00, $00, $00, $00, $00, $00
+ db $00, $00, $00, $00, $00, $00, $00, $00
+ db $00, $00, $00, $00, $00, $00, $00, $00
+ db $00, $00, $00, $00, $00, $00, $00, $00
+ db $00, $00, $00, $00, $00, $00, $00, $00
+ db $00, $00, $00, $00, $00, $00, $00, $00
+ db $00, $00, $00, $00, $00, $00, $00, $00
+ db $00, $00, $00, $00, $00, $00, $00, $00
+ db $01, $00, $00, $00, $00, $00, $00, $00
+ db $02, $01, $00, $00, $00, $00, $00, $00
+ db $03, $02, $01, $00, $00, $00, $00, $00
+ db $04, $03, $02, $01, $00, $00, $00, $00
+ db $04, $04, $03, $02, $01, $00, $00, $00
+ db $04, $04, $04, $03, $02, $01, $00, $00
+ db $04, $04, $04, $04, $03, $02, $01, $00
+ db $04, $04, $04, $04, $04, $03, $02, $01
+ db $04, $04, $04, $04, $04, $04, $03, $02
+ db $04, $04, $04, $04, $04, $04, $04, $03
+ db $04, $04, $04, $04, $04, $04, $04, $04
+ db $04, $04, $04, $04, $04, $04, $04, $04
+ db $04, $04, $04, $04, $04, $04, $04, $04
+ db $04, $04, $04, $04, $04, $04, $04, $04
+ db $04, $04, $04, $04, $04, $04, $04, $04
+ db $04, $04, $04, $04, $04, $04, $04, $04
+ db $04, $04, $04, $04, $04, $04, $04, $04
+ db $04, $04, $04, $04, $04, $04, $04, $04
+ db $03, $04, $04, $04, $04, $04, $04, $04
+ db $02, $03, $04, $04, $04, $04, $04, $04
+ db $01, $02, $03, $04, $04, $04, $04, $04
+ db $00, $01, $02, $03, $04, $04, $04, $04
+ db $00, $00, $01, $02, $03, $04, $04, $04
+ db $00, $00, $00, $01, $02, $03, $04, $04
+ db $00, $00, $00, $00, $01, $02, $03, $04
+ db $00, $00, $00, $00, $00, $01, $02, $03
+ db $00, $00, $00, $00, $00, $00, $01, $02
+ db $00, $00, $00, $00, $00, $00, $00, $01
+ db $00, $00, $00, $00, $00, $00, $00, $00
+ db $00, $00, $00, $00, $00, $00, $00, $00
+ db $00, $00, $00, $00, $00, $00, $00, $00
+ db $00, $00, $00, $00, $00, $00, $00, $00
+ db $00, $00, $00, $00, $00, $00, $00, $00
+ db $00, $00, $00, $00, $00, $00, $00, $00
+ db $00, $00, $00, $00, $00, $00, $00, $00
+ db $00, $00, $00, $00, $00, $00, $00, $00
+ db $00, $00, $00, $00, $00, $00, $00, $00
+; 10327a
+
+Unknown_10327a: ; 10327a
+ db $00, $00, $00, $00
+ db $00, $00, $01, $00
+ db $00, $00, $02, $00
+ db $00, $00, $03, $00
+ db $00, $00, $01, $01
+ db $00, $00, $00, $00
+ db $00, $00, $01, $02
+ db $00, $00, $02, $02
+ db $00, $00, $03, $02
+ db $00, $00, $01, $03
+
+GFX_1032a2:
+INCBIN "gfx/unknown/1032a2.2bpp"
+
+Unknown_1032e2:
+ db $00, $00, $ff, $1f
+ db $f4, $1b, $8d, $42
+ db $00, $00, $67, $45
+ db $00, $00, $00, $00
+ db $00, $00, $1f, $13
+ db $99, $01, $ff, $10
+ db $00, $00, $19, $00
+ db $00, $00, $00, $00
+; 103302
+
+Function103302: ; 103302
+ call Function103309
+ call Function103362
+ ret
+; 103309
+
+Function103309: ; 103309
+ xor a
+ ld [hBGMapMode], a
+ ld hl, Buffer1
+ ld bc, $000a
+ xor a
+ call ByteFill
+ ld a, $4
+ call GetSRAMBank
+ ld a, [wdc41]
+ ld [$a60c], a
+ ld [Buffer1], a
+ call CloseSRAM
+ call Function1035c6
+ ld a, [hli]
+ ld e, a
+ ld a, [hli]
+ ld d, a
+ ld a, [hli]
+ ld c, a
+ ld a, [hli]
+ ld b, a
+ ld a, [hli]
+ ld [wd1ef], a
+ ld a, [hli]
+ ld [wd1ec], a
+ ld a, [hli]
+ ld [wd1ed], a
+ ld h, d
+ ld l, e
+ call Function3eea
+ ld hl, wd1ec
+ ld a, [hli]
+ ld h, [hl]
+ ld l, a
+ ld a, [hl]
+ ld [wd1ee], a
+ call Function1034be
+ call Function1ad2
+ callba Function104000
+ ld a, $1
+ ld [wd1f0], a
+ call Function10339a
+ ret
+; 103362
+
+Function103362: ; 103362
+.asm_103362
+ ld a, [wd1f0]
+ ld [wd1f1], a
+ call Function1033af
+ call Function10339a
+ call Function10342c
+ callba Function10402d
+ ld a, [Buffer2]
+ bit 7, a
+ jr z, .asm_103362
+ ld hl, Buffer2
+ bit 6, [hl]
+ jr z, .asm_103398
+ ld a, $4
+ call GetSRAMBank
+ ld a, [Buffer1]
+ ld [$a60c], a
+ ld [wdc41], a
+ call CloseSRAM
+ xor a
+ ret
+
+.asm_103398
+ scf
+ ret
+; 10339a
+
+Function10339a: ; 10339a
+ ld a, [wd1f0]
+ ld [wd1f2], a
+ ld c, a
+ ld b, $0
+ ld hl, wd1ec
+ ld a, [hli]
+ ld h, [hl]
+ ld l, a
+ add hl, bc
+ ld a, [hl]
+ ld [wd1f3], a
+ ret
+; 1033af
+
+Function1033af: ; 1033af
+ call GetJoypad
+ ld a, [hJoyPressed]
+ bit 5, a
+ jr nz, .left
+ bit 4, a
+ jr nz, .right
+ bit 1, a
+ jr nz, .b
+ bit 0, a
+ jr nz, .a
+ bit 6, a
+ jr nz, .up
+ bit 7, a
+ jr nz, .down
+ ret
+
+.up
+ ld a, [wd1f0]
+ dec a
+ ld [wd1f0], a
+ cp $1
+ ret nc
+ ld a, [wd1ee]
+ ld [wd1f0], a
+ ret
+
+.down
+ ld a, [wd1f0]
+ inc a
+ ld [wd1f0], a
+ ld c, a
+ ld a, [wd1ee]
+ cp c
+ ret nc
+ ld a, $1
+ ld [wd1f0], a
+ ret
+
+.b
+ call PlayClickSFX
+ ld hl, Buffer2
+ set 7, [hl]
+ ret
+
+.a
+ ld a, [wd1f3]
+ cp $3
+ jr nz, .asm_103412
+ ld de, SFX_TRANSACTION
+ call PlaySFX
+ ld hl, Buffer2
+ set 7, [hl]
+ ld hl, Buffer2
+ set 6, [hl]
+ ret
+
+.left
+.right
+.asm_103412
+ ld a, [wd1f3]
+ cp $3
+ ret z
+ ld de, SFX_PUSH_BUTTON
+ call PlaySFX
+ ld bc, $0008
+ call Function10350f
+ ld a, [Buffer1]
+ xor e
+ ld [Buffer1], a
+ ret
+; 10342c
+
+Function10342c: ; 10342c
+ ld a, [wd1f0]
+ ld [wd1f2], a
+ call Function103490
+ call Function10343c
+ call Function1034a7
+ ret
+; 10343c
+
+Function10343c: ; 10343c
+ ld a, [wd1f3]
+ cp $2
+ jr nz, .asm_103452
+ ld bc, $0001
+ call Function1034f7
+ ld c, $12
+ ld b, $1
+ call Function1034e0
+ jr .asm_10345f
+
+.asm_103452
+ ld bc, $ffed
+ call Function1034f7
+ ld c, $12
+ ld b, $2
+ call Function1034e0
+
+.asm_10345f
+ ld bc, $0000
+ call Function10350f
+ ld bc, $0001
+ call Function103487
+ ld bc, $0008
+ call Function10350f
+ ld a, [Buffer1]
+ and e
+ ld bc, $0002
+ jr z, .asm_10347d
+ ld bc, $0004
+
+.asm_10347d
+ call Function10350f
+ ld bc, $000b
+ call Function103487
+ ret
+; 103487
+
+Function103487: ; 103487
+ push de
+ call Function1034f7
+ pop de
+ call PlaceString
+ ret
+; 103490
+
+Function103490: ; 103490
+ hlcoord 0, 15
+ ld c, $14
+ ld b, $3
+ call Function1034e0
+ ld bc, $0006
+ call Function10350f
+ hlcoord 1, 16
+ call PlaceString
+ ret
+; 1034a7
+
+Function1034a7: ; 1034a7
+ ld a, [wd1f1]
+ ld [wd1f2], a
+ ld bc, $000a
+ call Function1034f7
+ ld [hl], $7f
+ ld bc, $000a
+ call Function1034f1
+ ld [hl], $ed
+ ret
+; 1034be
+
+Function1034be: ; 1034be
+ ld a, $1
+ ld [wd1f2], a
+ ld hl, wd1ec
+ ld a, [hli]
+ ld h, [hl]
+ ld l, a
+ ld a, [hli]
+.asm_1034ca
+ push af
+ ld a, [hli]
+ push hl
+ ld [wd1f3], a
+ call Function10343c
+ ld hl, wd1f2
+ inc [hl]
+ pop hl
+ pop af
+ dec a
+ jr nz, .asm_1034ca
+ call Function103490
+ ret
+; 1034e0
+
+Function1034e0: ; 1034e0
+ push bc
+ push hl
+ call ClearBox
+ pop hl
+ ld bc, AttrMap - TileMap
+ add hl, bc
+ pop bc
+ ld a, $6
+ call Functionfb8
+ ret
+; 1034f1
+
+Function1034f1: ; 1034f1
+ ld a, [wd1f0]
+ ld [wd1f2], a
+
+Function1034f7: ; 10134f7
+ ld hl, TileMap
+ add hl, bc
+ ld a, [wd1ef]
+ ld bc, SCREEN_WIDTH
+ call AddNTimes
+ ld a, [wd1f2]
+ dec a
+ ld bc, 40
+ call AddNTimes
+ ret
+; 10350f
+
+Function10350f: ; 10350f
+ ld a, [wd1f3]
+ push bc
+ ld hl, Unknown_103522
+ ld bc, $0009
+ call AddNTimes
+ pop bc
+ add hl, bc
+ ld a, [hli]
+ ld d, [hl]
+ ld e, a
+ ret
+; 103522
+
+Unknown_103522: ; 103522
+ dw String_103546
+ dw String_103598
+ dw String_1035a0
+ dw String_10355f
+ db $1
+ dw String_10354f
+ dw String_1035a8
+ dw String_1035b1
+ dw String_103571
+ db $2
+ dw String_103557
+ dw String_1035ba
+ dw String_1035bd
+ dw String_103585
+ db $4
+ dw String_103545
+ dw String_1035c1
+ dw String_1035c1
+ dw String_103545
+
+String_103545: db "@"
+String_103546: db "せんとう アニメ@"
+String_10354f: db "でんわばんごう@"
+String_103557: db "めいしこうかん@"
+String_10355f: db "でんわを かけるひとが きめられる@"
+String_103571: db "でんわばんごうの にゅうりょくのしかた@"
+String_103585: db "あたらしいめいしが あれば こうかん@"
+String_103598: db "とばして みる@"
+String_1035a0: db "じっくり みる@"
+String_1035a8: db "めいしからえらぶ@"
+String_1035b1: db "すうじで いれる@"
+String_1035ba: db "する@"
+String_1035bd: db "しない@"
+String_1035c1: db "けってい@"
+; 1035c6
+
+Function1035c6: ; 1035c6
+ callba Function10138b
+ ld b, 0
+ ld hl, Unknown_1035d7
+ add hl, bc
+ add hl, bc
+ ld a, [hli]
+ ld h, [hl]
+ ld l, a
+ ret
+; 1035d7
+
+Unknown_1035d7: ; 1035d7
+ dw Unknown_1035e7
+ dw Unknown_1035f3
+ dw Unknown_103608
+ dw Unknown_103608
+ dw Unknown_1035fe
+
+ dw Function103612
+ dw Function103612
+ dw Function103612
+
+Unknown_1035e7: ; 1035e7
+ dwcoord 0, 6
+ db $12, $07, $07
+ dw .this
+.this
+ db 4, 2, 1, 0, 3
+
+Unknown_1035f3: ; 1035f3
+ dwcoord 0, 7
+ db $12, $06, $09
+ dw .this
+.this
+ db 3, 2, 1, 3
+
+Unknown_1035fe: ; 1035fe
+ dwcoord 0, 9
+ db $12, $04, $0b
+ dw .this
+.this
+ db 2, 0, 3
+
+Unknown_103608: ; 103608
+ dwcoord 0, 9
+ db $12, $04, $0b
+ dw .this
+.this
+ db 2, 2, 3
+; 103612
+
+Function103612: ; 103612
+ ld hl, MenuDataHeader_103640
+ call LoadMenuDataHeader
+ ld a, [wdc40]
+ and $f
+ jr z, .asm_103622
+ ld [wcf88], a
+
+.asm_103622
+ call Function1d81
+ call Function1c17
+ jr c, .asm_10363b
+ ld a, [wcfa9]
+ ld [ScriptVar], a
+ ld c, a
+ ld a, [wdc40]
+ and $f0
+ or c
+ ld [wdc40], a
+ ret
+
+.asm_10363b
+ xor a
+ ld [ScriptVar], a
+ ret
+; 103640
+
+MenuDataHeader_103640: ; 103640
+ db $40 ; flags
+ db 6, 13 ; start coords
+ db 11, 19 ; end coords
+ dw MenuData2_103648
+ db 1 ; default option
+
+MenuData2_103648: ; 103648
+ db $80 ; flags
+ db 2
+ db "モバイル@"
+ db "ケーブル@"
+; 103654
+
+Function103654: ; 103654
+ callba Function10632f
+ bit 7, c
+ jr nz, .asm_103666
+ ld hl, wcd2a
+ res 5, [hl]
+ ld c, $2
+ ret
+
+.asm_103666
+ ld hl, wcd2a
+ set 5, [hl]
+ ld c, $1
+ ret
+; 10366e
+
+Function10366e: ; 10366e
+ callba Function10632f
+ bit 7, c
+ jr z, .asm_10369b
+ ld hl, UnknownText_0x10375d
+ call PrintText
+ call YesNoBox
+ jr c, .asm_103696
+ callba Function8b1e1
+ jr nc, .asm_103690
+ call Functiona36
+ jr .asm_103696
+
+.asm_103690
+ ld a, $1
+ ld [ScriptVar], a
+ ret
+
+.asm_103696
+ xor a
+ ld [ScriptVar], a
+ ret
+
+.asm_10369b
+ ld hl, wdc40
+ bit 7, [hl]
+ set 7, [hl]
+ jr nz, .asm_1036b5
+ ld hl, UnknownText_0x103762
+ call PrintText
+ call YesNoBox
+ jr c, .asm_1036b5
+ call Function1036f9
+ call Functiona36
+
+.asm_1036b5
+ call Function103700
+ jr c, .asm_1036f4
+ ld hl, MenuDataHeader_103747
+ call LoadMenuDataHeader
+ call Function1d81
+ call Function1c07
+ jr c, .asm_1036f4
+ ld a, [wcfa9]
+ cp $1
+ jr z, .asm_1036d9
+ cp $2
+ jr z, .asm_1036f4
+ cp $3
+ jr z, .asm_1036ec
+ jr .asm_1036b5
+
+.asm_1036d9
+ callba Function8b1e1
+ jr nc, .asm_1036e6
+ call Functiona36
+ jr .asm_1036f4
+
+.asm_1036e6
+ ld a, $1
+ ld [ScriptVar], a
+ ret
+
+.asm_1036ec
+ call Function1036f9
+ call Functiona36
+ jr .asm_1036b5
+
+.asm_1036f4
+ xor a
+ ld [ScriptVar], a
+ ret
+; 1036f9
+
+Function1036f9: ; 1036f9
+ ld hl, UnknownText_0x103767
+ call PrintText
+ ret
+; 103700
+
+Function103700: ; 103700
+ ld c, $a
+ ld hl, wdc20
+ bit 4, [hl]
+ jr z, .asm_10370f
+ callba Function1008a6
+
+.asm_10370f
+ ld a, c
+ ld [StringBuffer2], a
+ ld a, [StringBuffer2]
+ cp $5
+ jr nc, .asm_103724
+ cp $2
+ jr nc, .asm_10372c
+ cp $1
+ jr nc, .asm_103734
+ jr .asm_10373c
+
+.asm_103724
+ ld hl, UnknownText_0x10376c
+ call PrintText
+ and a
+ ret
+
+.asm_10372c
+ ld hl, UnknownText_0x103771
+ call PrintText
+ and a
+ ret
+
+.asm_103734
+ ld hl, UnknownText_0x103776
+ call PrintText
+ and a
+ ret
+
+.asm_10373c
+ ld hl, UnknownText_0x10377b
+ call PrintText
+ call Functiona36
+ scf
+ ret
+; 103747
+
+MenuDataHeader_103747: ; 103747
+ db $40 ; flags
+ db 5, 13 ; start coords
+ db 11, 19 ; end coords
+ dw MenuData2_10374f
+ db 1 ; default option
+
+MenuData2_10374f: ; 10374f
+ db $c0 ; flags
+ db 3
+ db "はい@"
+ db "やめる@"
+ db "せつめい@"
+; 10375d
+
+UnknownText_0x10375d: ; 0x10375d
+ text_jump UnknownText_0x1c422a
+ db "@"
+; 0x103762
+UnknownText_0x103762: ; 0x103762
+ text_jump UnknownText_0x1c4275
+ db "@"
+; 0x103767
+UnknownText_0x103767: ; 0x103767
+ text_jump UnknownText_0x1c4298
+ db "@"
+; 0x10376c
+UnknownText_0x10376c: ; 0x10376c
+ text_jump UnknownText_0x1c439c
+ db "@"
+; 0x103771
+UnknownText_0x103771: ; 0x103771
+ text_jump UnknownText_0x1c43dc
+ db "@"
+; 0x103776
+UnknownText_0x103776: ; 0x103776
+ text_jump UnknownText_0x1c4419
+ db "@"
+; 0x10377b
+UnknownText_0x10377b: ; 0x10377b
+ text_jump UnknownText_0x1c445a
+ db "@"
+; 0x103780
+
+Function103780: ; 103780
+ ld a, [wd265]
+ push af
+ call Function10378c
+ pop af
+ ld [wd265], a
+ ret
+; 10378c
+
+Function10378c: ; 10378c
+ ld c, $0
+ ld hl, wdc20
+ bit 4, [hl]
+ jr nz, .asm_10379c
+ ld c, $1
+ ld hl, wdc20
+ set 4, [hl]
+
+.asm_10379c
+ push bc
+ callba Function14ab2
+ pop bc
+ jr c, .asm_1037b5
+ ld a, $1
+ ld [ScriptVar], a
+ ld a, c
+ and a
+ ret z
+ callba Function1006fd
+ ret
+
+.asm_1037b5
+ xor a
+ ld [ScriptVar], a
+ ld a, c
+ and a
+ ret z
+ ld hl, wdc20
+ res 4, [hl]
+ ret
+; 1037c2
+
+Function1037c2: ; 1037c2
+ call Function103823
+ jr c, .asm_1037de
+ ld a, [wdc5f]
+ and a
+ jr z, .asm_1037de
+ ld hl, UnknownText_0x1037e6
+ call PrintText
+ call YesNoBox
+ jr c, .asm_1037de
+ ld a, $1
+ ld [ScriptVar], a
+ ret
+
+.asm_1037de
+ xor a
+ ld [wdc5f], a
+ ld [ScriptVar], a
+ ret
+; 1037e6
+
+UnknownText_0x1037e6: ; 0x1037e6
+ text_jump UnknownText_0x1c449c
+ db "@"
+; 0x1037eb
+
+Function1037eb: ; 1037eb
+ call Function103823
+ jr nc, .asm_103807
+ ld hl, UnknownText_0x103819
+ call PrintText
+ call Functiona36
+ ld hl, UnknownText_0x10381e
+ call PrintText
+ call Functiona36
+ xor a
+ ld [ScriptVar], a
+ ret
+
+.asm_103807
+ ld a, [wdc60]
+ and a
+ jr nz, .asm_103813
+ ld a, $1
+ ld [ScriptVar], a
+ ret
+
+.asm_103813
+ ld a, $2
+ ld [ScriptVar], a
+ ret
+; 103819
+
+UnknownText_0x103819: ; 0x103819
+ text_jump UnknownText_0x1c44c0
+ db "@"
+; 0x10381e
+
+UnknownText_0x10381e: ; 0x10381e
+ text_jump UnknownText_0x1c44e7
+ db "@"
+; 0x103823
+
+Function103823: ; 103823
+ callba Function10632f
+ bit 7, c
+ jr nz, .asm_103838
+ callba Function1008a6
+ ld a, c
+ cp $1
+ jr c, .asm_10383a
+
+.asm_103838
+ xor a
+ ret
+
+.asm_10383a
+ scf
+ ret
+; 10383c
+
+Function10383c: ; 10383c
+ ld a, $1
+ ld [wdc60], a
+ xor a
+ ld hl, wdc5c
+ ld [hli], a
+ ld [hli], a
+ ld [hl], a
+ ld hl, UnknownText_0x103876
+ call PrintText
+ call Functiona36
+ callba Script_reloadmappart
+ callba Function4a94e
+ jr c, .asm_103870
+ ld hl, DefaultFlypoint
+ ld de, wdc5c
+ ld bc, $0003
+ call CopyBytes
+ xor a
+ ld [ScriptVar], a
+ ret
+
+.asm_103870
+ ld a, $1
+ ld [ScriptVar], a
+ ret
+; 103876
+
+UnknownText_0x103876: ; 0x103876
+ text_jump UnknownText_0x1c4508
+ db "@"
+; 0x10387b
+
+Function10387b: ; 10387b
+ callba Function10632f
+ bit 7, c
+ ret nz
+ callba Function1008a6
+ ld a, c
+ ld [StringBuffer2], a
+ ld hl, UnknownText_0x103898
+ call PrintText
+ call Functiona36
+ ret
+; 103898
+
+UnknownText_0x103898: ; 0x103898
+ text_jump UnknownText_0x1c4525
+ db "@"
+; 0x10389d
+
+
diff --git a/misc/mobile_42.asm b/misc/mobile_42.asm
new file mode 100644
index 000000000..310ceb622
--- /dev/null
+++ b/misc/mobile_42.asm
@@ -0,0 +1,1947 @@
+
+SECTION "bank42", ROMX, BANK[$42]
+
+Function108000: ; 108000
+ ld a, $80
+ ld [wcf65], a
+ ld de, Unknown_10800b
+ jp Function108089
+; 10800b
+
+Unknown_10800b:
+INCBIN "baserom.gbc", $10800b, $108012 - $10800b
+
+Function108012:
+ ld a, $80
+ jr asm_108018
+
+Function108016: ; 108016
+ ld a, $0
+asm_108018:
+ ld [wcf65], a
+ ld de, Unknown_108021
+ jp Function108089
+; 108021
+
+Unknown_108021:
+INCBIN "baserom.gbc", $108021, $108026 - $108021
+
+Function108026: ; 108026
+ ld a, $0
+ jr asm_10802c
+
+Function10802a: ; 10802a
+ ld a, $1
+
+asm_10802c:
+ ld [wcf65], a
+ ld de, Unknown_108035
+ jp Function10805b
+; 108035
+
+Unknown_108035:
+INCBIN "baserom.gbc", $108035, $10803d - $108035
+
+Function10803d: ; 10803d
+ ld a, $0
+ ld [wcf65], a
+ ld de, Unknown_108048
+ jp Function108089
+; 108048
+
+Unknown_108048:
+INCBIN "baserom.gbc", $108048, $10804d - $108048
+
+Function10804d: ; 10804d
+ ld a, $0
+ ld [wcf65], a
+ ld de, Unknown_108058
+ jp Function108089
+; 108058
+
+Unknown_108058:
+INCBIN "baserom.gbc", $108058, $10805b - $108058
+
+Function10805b: ; 10805b
+ ld hl, wc734
+ ld [hl], e
+ inc hl
+ ld [hl], d
+ ld a, [$ffde]
+ push af
+ xor a
+ ld [$ffde], a
+ ld hl, VramState
+ ld a, [hl]
+ push af
+ res 0, [hl]
+ ld hl, Options
+ ld a, [hl]
+ push af
+ set 4, [hl]
+ call Function1080b7
+.asm_108078
+ call Function10824b
+ jr nc, .asm_108078
+ pop af
+ ld [Options], a
+ pop af
+ ld [VramState], a
+ pop af
+ ld [$ffde], a
+ ret
+; 108089
+
+Function108089: ; 108089
+ ld hl, BattleEnded
+ ld [hl], e
+ inc hl
+ ld [hl], d
+ ld a, [$ffde]
+ push af
+ xor a
+ ld [$ffde], a
+ ld hl, VramState
+ ld a, [hl]
+ push af
+ res 0, [hl]
+ ld hl, Options
+ ld a, [hl]
+ push af
+ set 4, [hl]
+ call Function108157
+.asm_1080a6
+ call Function10824b
+ jr nc, .asm_1080a6
+ pop af
+ ld [Options], a
+ pop af
+ ld [VramState], a
+ pop af
+ ld [$ffde], a
+ ret
+; 1080b7
+
+Function1080b7: ; 1080b7
+ xor a
+ ld [wcf63], a
+ call WhiteBGMap
+ call ClearSprites
+ call ClearTileMap
+ call DisableLCD
+ call Function1081ad
+ call Function1081ca
+ call Functione51
+ call Functione58
+ ld a, $1
+ ld [rVBK], a
+ ld hl, LZ_108da7
+ ld de, VTiles2
+ call Decompress
+ ld a, $0
+ ld [rVBK], a
+ ld hl, LZ_108d27
+ ld de, $8200
+ call Decompress
+ call EnableLCD
+ xor a
+ ld [hSCX], a
+ ld [hSCY], a
+ ld a, $7
+ ld [hWX], a
+ ld a, $90
+ ld [hWY], a
+ callba Function8cf53
+ call DelayFrame
+ ld de, TradeBallGFX
+ ld hl, VTiles0
+ lb bc, BANK(TradeBallGFX), $06
+ call Request2bpp
+ ld de, TradePoofGFX
+ ld hl, $8060
+ lb bc, BANK(TradePoofGFX), $0c
+ call Request2bpp
+ xor a
+ ld hl, wc300
+ ld [hli], a
+ ld [hl], $0
+ ld a, [$c6d0]
+ ld hl, $c6fd
+ ld de, $8300
+ call Function1081e9
+ ld a, [wc702]
+ ld hl, wc72f
+ ld de, $9310
+ call Function1081e9
+ ld a, [$c6d0]
+ ld de, $c6d1
+ call Function108239
+ ld a, [wc702]
+ ld de, wc703
+ call Function108239
+ xor a
+ call Function108b98
+ call Function108af4
+ ret
+; 108157
+
+Function108157: ; 108157
+ xor a
+ ld [wcf63], a
+ call WhiteBGMap
+ call ClearSprites
+ call ClearTileMap
+ call DisableLCD
+ call Function1081ad
+ call Function1081ca
+ call Functione51
+ call Functione58
+ call EnableLCD
+ xor a
+ ld [hSCX], a
+ ld [hSCY], a
+ ld a, $7
+ ld [hWX], a
+ ld a, $90
+ ld [hWY], a
+ callba Function8cf53
+ xor a
+ ld hl, wc300
+ ld [hli], a
+ ld [hl], $0
+ call DelayFrame
+ ld a, [$c6d0]
+ ld de, $c6d1
+ call Function108239
+ ld a, [wc702]
+ ld de, wc703
+ call Function108239
+ xor a
+ call Function108b98
+ call Function108af4
+ ret
+; 1081ad
+
+Function1081ad: ; 1081ad
+ ld a, $1
+ ld [rVBK], a
+ ld hl, VTiles0
+ ld bc, $1800
+ xor a
+ call ByteFill
+ ld a, $0
+ ld [rVBK], a
+ ld hl, VTiles0
+ ld bc, $1800
+ xor a
+ call ByteFill
+ ret
+; 1081ca
+
+Function1081ca: ; 1081ca
+ ld a, $1
+ ld [rVBK], a
+ ld hl, VBGMap0
+ ld bc, $0800
+ ld a, $0
+ call ByteFill
+ ld a, $0
+ ld [rVBK], a
+ ld hl, VBGMap0
+ ld bc, $0800
+ ld a, $7f
+ call ByteFill
+ ret
+; 1081e9
+
+Function1081e9: ; 1081e9
+ push de
+ push af
+ predef GetUnownLetter
+ pop af
+ ld [CurPartySpecies], a
+ ld [CurSpecies], a
+ call GetBaseData
+ pop de
+ predef GetFrontpic
+ ret
+; 108201
+
+Function108201: ; 108201
+ push de
+ push af
+ predef GetUnownLetter
+ pop af
+ ld [CurPartySpecies], a
+ ld [CurSpecies], a
+ call GetBaseData
+ pop de
+ predef Function5108b
+ ret
+; 108219
+
+Function108219: ; 108219
+ ld [CurPartySpecies], a
+ hlcoord 7, 2
+ ld d, $0
+ ld e, $3
+ predef Functiond008e
+ ret
+; 108229
+
+Function108229: ; 108229
+ ld [CurPartySpecies], a
+ hlcoord 7, 2
+ ld d, $0
+ ld e, $3
+ predef Functiond00a3
+ ret
+; 108239
+
+Function108239: ; 108239
+ push de
+ ld [wd265], a
+ call GetPokemonName
+ ld hl, StringBuffer1
+ pop de
+ ld bc, $000b
+ call CopyBytes
+ ret
+; 10824b
+
+Function10824b: ; 10824b
+ ld a, [wcf63]
+ bit 7, a
+ jr nz, .asm_10825a
+ call Function10827b
+ call DelayFrame
+ and a
+ ret
+
+.asm_10825a
+ xor a
+ ld [hSCX], a
+ ld [hSCY], a
+ ld a, $7
+ ld [hWX], a
+ ld a, $90
+ ld [hWY], a
+ call Functione51
+ call Functione58
+ callba Function106462
+ callba Function106464
+ scf
+ ret
+; 10827b
+
+Function10827b: ; 10827b
+ ld a, [wcf63]
+ ld e, a
+ ld d, 0
+ ld hl, Jumptable_10828a
+ add hl, de
+ add hl, de
+ ld a, [hli]
+ ld h, [hl]
+ ld l, a
+ jp [hl]
+; 10828a
+
+Jumptable_10828a: ; 10828a
+ dw Function1082b7
+ dw Function10830e
+ dw Function108638
+ dw Function108763
+ dw Function1087cf
+ dw Function108811
+ dw Function108838
+ dw Function10884c
+ dw Function108863
+ dw Function108894
+ dw Function10890a
+ dw Function10839b
+ dw Function1082c6
+ dw Function10842c
+ dw Function1084d7
+ dw Function108919
+ dw Function108689
+ dw Function1086f4
+ dw Function10893d
+ dw Function108589
+; 1082b2
+
+Function1082b2: ; 1082b2
+ ld hl, wcf63
+ inc [hl]
+ ret
+; 1082b7
+
+Function1082b7: ; 1082b7
+ ld hl, wc734
+ ld e, [hl]
+ inc hl
+ ld d, [hl]
+ ld a, [de]
+ ld [wcf63], a
+ inc de
+ ld [hl], d
+ dec hl
+ ld [hl], e
+ ret
+; 1082c6
+
+Function1082c6: ; 1082c6
+ ld hl, wcf63
+ set 7, [hl]
+ ret
+; 1082cc
+
+Function1082cc: ; 1082cc
+.asm_1082cc
+ push bc
+ callba Function8cf69
+ pop bc
+ call DelayFrame
+ dec c
+ jr nz, .asm_1082cc
+ ret
+; 1082db
+
+Function1082db: ; 1082db
+.asm_1082db
+ callba Function8cf69
+ callba Functiond00b4
+ callba Function10402d
+ jr nc, .asm_1082db
+ ret
+; 1082f0
+
+Function1082f0: ; 1082f0
+.asm_1082f0
+ call Function108b78
+ call DelayFrame
+ dec c
+ jr nz, .asm_1082f0
+ ret
+; 1082fa
+
+Function1082fa: ; 1082fa
+.asm_1082fa
+ call Function108b78
+ push hl
+ push bc
+ callba Function8cf69
+ pop bc
+ pop hl
+ call DelayFrame
+ dec c
+ jr nz, .asm_1082fa
+ ret
+; 10830e
+
+Function10830e: ; 10830e
+ ld de, MUSIC_EVOLUTION
+ call PlayMusic2
+ ld a, $80
+ ld [hSCX], a
+ xor a
+ ld [hSCY], a
+ ld a, $87
+ ld [hWX], a
+ ld a, $50
+ ld [hWY], a
+ call Function1089a8
+ ld a, [$c6d0]
+ ld [CurPartySpecies], a
+ call Function10895e
+ ld a, [$c6fd]
+ ld [TempMonDVs], a
+ ld a, [$c6fe]
+ ld [TempMonDVs + 1], a
+ ld b, $1a
+ call GetSGBLayout
+ ld a, $e4
+ call DmgToCgbBGPals
+ call WaitBGMap
+.asm_108348
+ ld a, [hWX]
+ cp $7
+ jr z, .asm_10835d
+ sub $4
+ ld [hWX], a
+ ld a, [hSCX]
+ sub $4
+ ld [hSCX], a
+ call DelayFrame
+ jr .asm_108348
+
+.asm_10835d
+ ld a, $7
+ ld [hWX], a
+ xor a
+ ld [hSCX], a
+ ld a, [$c6d0]
+ call GetCryIndex
+ jr c, .asm_108371
+ ld e, c
+ ld d, b
+ call PlayCryHeader
+
+.asm_108371
+ ld c, $50
+ call DelayFrames
+ call Function108bec
+ lb de, $54, $58
+ ld a, $20
+ call Function3b2a
+ ld de, SFX_BALL_POOF
+ call PlaySFX
+ ld hl, TileMap
+ ld bc, $00f0
+ ld a, $7f
+ call ByteFill
+ ld c, $50
+ call Function1082cc
+ call Function1082b7
+ ret
+; 10839b
+
+Function10839b: ; 10839b
+ call WhiteBGMap
+ call ClearSprites
+ call ClearTileMap
+ call DisableLCD
+ call Function1081ca
+ ld a, [wc702]
+ ld [CurPartySpecies], a
+ ld hl, wc72f
+ ld de, VTiles2
+ call Function108201
+ call EnableLCD
+ callba Function8d03d
+ xor a
+ ld [hSCX], a
+ ld [hSCY], a
+ ld a, $7
+ ld [hWX], a
+ ld a, $90
+ ld [hWY], a
+ lb de, $54, $58
+ ld a, $21
+ call Function3b2a
+ call Function108b45
+ ld a, $1
+ call Function108b98
+ call Function108af4
+ ld c, $30
+ call Function1082cc
+ ld de, SFX_BALL_POOF
+ call PlaySFX
+ call Function1089d2
+ xor a
+ ld [hSCX], a
+ ld [hSCY], a
+ ld a, $7
+ ld [hWX], a
+ ld a, $50
+ ld [hWY], a
+ ld a, [wc702]
+ ld [CurPartySpecies], a
+ ld a, [wc72f]
+ ld [TempMonDVs], a
+ ld a, [wc730]
+ ld [TempMonDVs + 1], a
+ ld b, $1a
+ call GetSGBLayout
+ ld a, $e4
+ call DmgToCgbBGPals
+ call Function108963
+ ld a, [wc702]
+ call Function108229
+ call Function1082db
+ call Function108c16
+ call Function1082b7
+ ret
+; 10842c
+
+Function10842c: ; 10842c
+ ld de, MUSIC_EVOLUTION
+ call PlayMusic2
+ ld a, $80
+ ld [hSCX], a
+ xor a
+ ld [hSCY], a
+ ld a, $87
+ ld [hWX], a
+ ld a, $50
+ ld [hWY], a
+ call Function1089a8
+ ld a, [$c6d0]
+ ld [CurPartySpecies], a
+ ld hl, $c6fd
+ call Function10898a
+ call DelayFrame
+ ld de, TradeBallGFX
+ ld hl, VTiles0
+ lb bc, BANK(TradeBallGFX), $06
+ call Request2bpp
+ ld de, TradePoofGFX
+ ld hl, $8060
+ lb bc, BANK(TradePoofGFX), $0c
+ call Request2bpp
+ ld a, [$c6fd]
+ ld [TempMonDVs], a
+ ld a, [$c6fe]
+ ld [TempMonDVs + 1], a
+ ld b, $1a
+ call GetSGBLayout
+ ld a, $e4
+ call DmgToCgbBGPals
+ call WaitBGMap
+.asm_108484
+ ld a, [hWX]
+ cp $7
+ jr z, .asm_108499
+ sub $4
+ ld [hWX], a
+ ld a, [hSCX]
+ sub $4
+ ld [hSCX], a
+ call DelayFrame
+ jr .asm_108484
+
+.asm_108499
+ ld a, $7
+ ld [hWX], a
+ xor a
+ ld [hSCX], a
+ ld a, [$c6d0]
+ call GetCryIndex
+ jr c, .asm_1084ad
+ ld e, c
+ ld d, b
+ call PlayCryHeader
+
+.asm_1084ad
+ ld c, $50
+ call DelayFrames
+ call Function108c2b
+ lb de, $54, $58
+ ld a, $20
+ call Function3b2a
+ ld de, SFX_BALL_POOF
+ call PlaySFX
+ ld hl, TileMap
+ ld bc, $00f0
+ ld a, $7f
+ call ByteFill
+ ld c, $50
+ call Function1082cc
+ call Function1082b7
+ ret
+; 1084d7
+
+Function1084d7: ; 1084d7
+ call WhiteBGMap
+ call ClearSprites
+ call ClearTileMap
+ call DisableLCD
+ call Function1081ca
+ ld a, [wc702]
+ ld [CurPartySpecies], a
+ ld hl, wc72f
+ ld de, VTiles2
+ call Function108201
+ call EnableLCD
+ callba Function8d03d
+ call DelayFrame
+ ld de, TradeBallGFX
+ ld hl, VTiles0
+ lb bc, BANK(TradeBallGFX), $06
+ call Request2bpp
+ ld de, TradePoofGFX
+ ld hl, $8060
+ lb bc, BANK(TradePoofGFX), $0c
+ call Request2bpp
+ xor a
+ ld [hSCX], a
+ ld [hSCY], a
+ ld a, $7
+ ld [hWX], a
+ ld a, $90
+ ld [hWY], a
+ lb de, $54, $58
+ ld a, $21
+ call Function3b2a
+ call Function108b45
+ ld a, $1
+ call Function108b98
+ call Function108af4
+ ld c, $30
+ call Function1082cc
+ ld de, SFX_BALL_POOF
+ call PlaySFX
+ call Function1089d2
+ xor a
+ ld [hSCX], a
+ ld [hSCY], a
+ ld a, $7
+ ld [hWX], a
+ ld a, $50
+ ld [hWY], a
+ ld a, [wc702]
+ ld [CurPartySpecies], a
+ ld a, [wc72f]
+ ld [TempMonDVs], a
+ ld a, [wc730]
+ ld [TempMonDVs + 1], a
+ ld b, $1a
+ call GetSGBLayout
+ ld a, $e4
+ call DmgToCgbBGPals
+ ld a, [wc702]
+ ld hl, wc72f
+ call Function10898a
+ ld a, [wc702]
+ call Function108229
+ call Function1082db
+ call Function108c40
+ call Function1082b7
+ ret
+; 108589
+
+Function108589: ; 108589
+ call WhiteBGMap
+ call ClearSprites
+ call ClearTileMap
+ call DisableLCD
+ call Function1081ca
+ ld a, [wc702]
+ ld [CurPartySpecies], a
+ ld hl, wc72f
+ ld de, VTiles2
+ call Function108201
+ call EnableLCD
+ callba Function8d03d
+ call DelayFrame
+ ld de, TradeBallGFX
+ ld hl, VTiles0
+ lb bc, BANK(TradeBallGFX), $06
+ call Request2bpp
+ ld de, TradePoofGFX
+ ld hl, $8060
+ lb bc, BANK(TradePoofGFX), $0c
+ call Request2bpp
+ xor a
+ ld [hSCX], a
+ ld [hSCY], a
+ ld a, $7
+ ld [hWX], a
+ ld a, $90
+ ld [hWY], a
+ lb de, $54, $58
+ ld a, $21
+ call Function3b2a
+ call Function108b45
+ ld a, $1
+ call Function108b98
+ call Function108af4
+ ld c, $30
+ call Function1082cc
+ ld de, SFX_BALL_POOF
+ call PlaySFX
+ call Function108a33
+ xor a
+ ld [hSCX], a
+ ld [hSCY], a
+ ld a, $7
+ ld [hWX], a
+ ld a, $50
+ ld [hWY], a
+ ld a, [wc702]
+ ld [CurPartySpecies], a
+ ld a, [wc72f]
+ ld [TempMonDVs], a
+ ld a, [wc730]
+ ld [TempMonDVs + 1], a
+ ld b, $1a
+ call GetSGBLayout
+ ld a, $e4
+ call DmgToCgbBGPals
+ ld a, [wc702]
+ ld hl, wc72f
+ call Function10898a
+ ld a, [wc702]
+ call Function108229
+ call Function1082db
+ call Function1082b7
+ ret
+; 108638
+
+Function108638: ; 108638
+ callba Function8d03d
+ call WhiteBGMap
+ call ClearSprites
+ call ClearTileMap
+ xor a
+ ld [hBGMapMode], a
+ call DisableLCD
+ call Function1081ca
+ call Function108c80
+ call Function108c6d
+ call EnableLCD
+ ld a, $c
+ ld [hSCX], a
+ ld a, $78
+ ld [hSCY], a
+ ld a, $7
+ ld [hWX], a
+ ld a, $90
+ ld [hWY], a
+ ld a, [rSVBK]
+ push af
+ ld a, $5
+ ld [rSVBK], a
+ ld hl, Palette_109107
+ ld de, Unkn1Pals
+ ld bc, $0040
+ call CopyBytes
+ pop af
+ ld [rSVBK], a
+ call Function108d07
+ call Function108af4
+ call Function1082b7
+ ret
+; 108689
+
+Function108689: ; 108689
+ callba Function8d03d
+ call WhiteBGMap
+ call ClearSprites
+ call ClearTileMap
+ xor a
+ ld [hBGMapMode], a
+ call DisableLCD
+ call Function1081ca
+ ld a, $1
+ ld [rVBK], a
+ ld hl, LZ_108da7
+ ld de, VTiles2
+ call Decompress
+ ld a, $0
+ ld [rVBK], a
+ ld hl, LZ_108d27
+ ld de, $8200
+ call Decompress
+ call Function108c80
+ call Function108c6d
+ call EnableLCD
+ ld a, $c
+ ld [hSCX], a
+ ld a, $78
+ ld [hSCY], a
+ ld a, $7
+ ld [hWX], a
+ ld a, $90
+ ld [hWY], a
+ ld a, [rSVBK]
+ push af
+ ld a, $5
+ ld [rSVBK], a
+ ld hl, Palette_109107
+ ld de, Unkn1Pals
+ ld bc, $0040
+ call CopyBytes
+ pop af
+ ld [rSVBK], a
+ call Function108d07
+ call Function108af4
+ call Function1082b7
+ ret
+; 1086f4
+
+Function1086f4: ; 1086f4
+ call WhiteBGMap
+ call ClearSprites
+ call ClearTileMap
+ xor a
+ ld [hBGMapMode], a
+ call DisableLCD
+ ld a, $1
+ ld [rVBK], a
+ ld hl, LZ_108da7
+ ld de, VTiles2
+ call Decompress
+ ld a, $0
+ ld [rVBK], a
+ ld hl, LZ_108d27
+ ld de, $8200
+ call Decompress
+ call Function108c80
+ call Function108c6d
+ call EnableLCD
+ ld a, $80
+ ld [hSCX], a
+ ld a, $90
+ ld [hSCY], a
+ ld a, $7
+ ld [hWX], a
+ ld a, $90
+ ld [hWY], a
+ ld a, [rSVBK]
+ push af
+ ld a, $5
+ ld [rSVBK], a
+ ld hl, Palette_109107
+ ld de, Unkn1Pals
+ ld bc, $0040
+ call CopyBytes
+ pop af
+ ld [rSVBK], a
+ call Function108d07
+ call Function108af4
+ call Function108b5a
+ ld a, $e0
+ ld [hSCX], a
+ ld de, MUSIC_EVOLUTION
+ call PlayMusic2
+ call Function1082b7
+ ret
+; 108763
+
+Function108763: ; 108763
+ ld de, SFX_GIVE_TRADEMON
+ call PlaySFX
+ ld c, $28
+ ld hl, $d0b0
+ call Function1082f0
+ call Function108af4
+.asm_108774
+ ld a, [hSCX]
+ cp $e0
+ jr z, .asm_108791
+ dec a
+ dec a
+ ld [hSCX], a
+ cp $f8
+ jr nz, .asm_10878a
+ lb de, $54, $58
+ ld a, $22
+ call Function3b2a
+
+.asm_10878a
+ ld c, $1
+ call Function1082cc
+ jr .asm_108774
+
+.asm_108791
+ ld a, [hSCY]
+ cp $f8
+ jr z, .asm_1087cb
+ dec a
+ dec a
+ ld [hSCY], a
+ cp $40
+ jr z, .asm_1087a9
+ cp $30
+ jr z, .asm_1087b7
+ cp $68
+ jr z, .asm_1087bc
+ jr .asm_1087c4
+
+.asm_1087a9
+ lb de, $54, $58
+ ld a, $22
+ call Function3b2a
+ xor a
+ call Function108ad4
+ jr .asm_1087c4
+
+.asm_1087b7
+ call Function108bbd
+ jr .asm_1087c4
+
+.asm_1087bc
+ call Function108bbd
+ ld a, $1
+ call Function108ad4
+
+.asm_1087c4
+ ld c, $1
+ call Function1082cc
+ jr .asm_108791
+
+.asm_1087cb
+ call Function1082b2
+ ret
+; 1087cf
+
+Function1087cf: ; 1087cf
+ ld c, $28
+ ld hl, StringBuffer2 + 2
+ call Function1082f0
+ call Function108af4
+ call Function108b5a
+ lb de, $4a, $50
+ ld a, $25
+ call Function3b2a
+ 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
+.asm_1087fc
+ ld a, [hSCY]
+ cp $90
+ jr z, .asm_10880d
+ sub $8
+ ld [hSCY], a
+ ld c, $1
+ call Function1082cc
+ jr .asm_1087fc
+
+.asm_10880d
+ call Function1082b7
+ ret
+; 108811
+
+Function108811: ; 108811
+ ld c, $28
+ call Function1082cc
+ ld a, $1
+ ld [wcf64], a
+ ld de, SFX_SHARPEN
+ call PlaySFX
+ ld c, $3c
+ call Function1082cc
+ lb de, $f2, $50
+ ld a, $24
+ call Function3b2a
+ call Function1082b7
+ ld de, SFX_THROW_BALL
+ call PlaySFX
+ ret
+; 108838
+
+Function108838: ; 108838
+ ld c, $28
+ call Function1082cc
+ ld a, $1
+ ld [wcf64], a
+ ld de, SFX_SHARPEN
+ call PlaySFX
+ call Function1082b7
+ ret
+; 10884c
+
+Function10884c: ; 10884c
+ ld c, $50
+ call DelayFrames
+ lb de, $f2, $50
+ ld a, $24
+ call Function3b2a
+ call Function1082b7
+ ld de, SFX_THROW_BALL
+ call PlaySFX
+ ret
+; 108863
+
+Function108863: ; 108863
+ ld c, $28
+ call Function1082cc
+.asm_108868
+ ld a, [hSCY]
+ cp $f8
+ jr z, .asm_108879
+ add $8
+ ld [hSCY], a
+ ld c, $1
+ call Function1082cc
+ jr .asm_108868
+
+.asm_108879
+ callba Function8d03d
+ lb de, $4a, $50
+ ld a, $25
+ call Function3b2a
+ ld de, SFX_GLASS_TING_2
+ call PlaySFX
+ call Function108af4
+ call Function1082b2
+ ret
+; 108894
+
+Function108894: ; 108894
+ ld c, $14
+ ld hl, StringBuffer2 + 2
+ call Function1082fa
+ ld de, SFX_GIVE_TRADEMON
+ call PlaySFX
+ ld c, $14
+ ld hl, StringBuffer2 + 2
+ call Function1082fa
+ call Function108af4
+.asm_1088ad
+ ld a, [hSCY]
+ cp $78
+ jr z, .asm_1088ee
+ inc a
+ inc a
+ ld [hSCY], a
+ cp $30
+ jr z, .asm_1088c5
+ cp $40
+ jr z, .asm_1088dd
+ cp $68
+ jr z, .asm_1088cf
+ jr .asm_1088e7
+
+.asm_1088c5
+ lb de, $54, $58
+ ld a, $22
+ call Function3b2a
+ jr .asm_1088e7
+
+.asm_1088cf
+ lb de, $54, $58
+ ld a, $22
+ call Function3b2a
+ xor a
+ call Function108ad4
+ jr .asm_1088e7
+
+.asm_1088dd
+ call Function108bbd
+ ld a, $1
+ call Function108ad4
+ jr .asm_1088e7
+
+.asm_1088e7
+ ld c, $1
+ call Function1082cc
+ jr .asm_1088ad
+
+.asm_1088ee
+ ld a, [hSCX]
+ cp $c
+ jr z, .asm_108906
+ inc a
+ inc a
+ ld [hSCX], a
+ cp $f8
+ jr nz, .asm_1088e7
+ call Function108bbd
+ ld c, $1
+ call Function1082cc
+ jr .asm_1088ee
+
+.asm_108906
+ call Function1082b2
+ ret
+; 10890a
+
+Function10890a: ; 10890a
+ ld c, $28
+ ld hl, $d0b0
+ call Function1082f0
+ call Function108af4
+ call Function1082b7
+ ret
+; 108919
+
+Function108919: ; 108919
+ ld c, $28
+ call Function1082cc
+ callba Function8d03d
+ call WhiteBGMap
+ call ClearSprites
+ call ClearTileMap
+ call DisableLCD
+ call Function1081ad
+ call Function1081ca
+ call EnableLCD
+ call Function1082b7
+ ret
+; 10893d
+
+Function10893d: ; 10893d
+.asm_10893d
+ ld a, [rBGP]
+ and a
+ jr z, .asm_108953
+ sla a
+ sla a
+ call DmgToCgbBGPals
+ call Functioncf8
+ ld c, $4
+ call DelayFrames
+ jr .asm_10893d
+
+.asm_108953
+ xor a
+ call DmgToCgbBGPals
+ call Functioncf8
+ call Function1082b7
+ ret
+; 10895e
+
+Function10895e: ; 10895e
+ ld de, $8300
+ jr asm_108966
+
+Function108963:
+ ld de, $9310
+
+asm_108966
+ call DelayFrame
+ ld hl, VTiles2
+ lb bc, $0a, $31
+ call Request2bpp
+ call WaitTop
+ call Function108ac8
+ hlcoord 7, 2
+ xor a
+ ld [$ffad], a
+ ld bc, $0707
+ predef FillBox
+ call WaitBGMap
+ ret
+; 10898a
+
+Function10898a: ; 10898a
+ ld de, VTiles2
+ call Function1081e9
+ call WaitTop
+ call Function108ac8
+ hlcoord 7, 2
+ xor a
+ ld [$ffad], a
+ ld bc, $0707
+ predef FillBox
+ call WaitBGMap
+ ret
+; 1089a8
+
+Function1089a8: ; 1089a8
+ ld de, $c6d0
+ ld a, [de]
+ cp $fd
+ jr z, asm_1089fc
+ call Function108a5b
+ ld de, $c6d0
+ call Function108a92
+ ld de, $c6d1
+ call Function108a9c
+ ld a, [wc701]
+ ld de, $c6f2
+ call Function108aa3
+ ld de, $c6ff
+ call Function108abe
+ call Function108a87
+ ret
+
+Function1089d2:
+ ld de, wc702
+ ld a, [de]
+ cp $fd
+ jr z, asm_1089fc
+ call Function108a5b
+ ld de, wc702
+ call Function108a92
+ ld de, wc703
+ call Function108a9c
+ ld a, [wc733]
+ ld de, wc724
+ call Function108aa3
+ ld de, wc731
+ call Function108abe
+ call Function108a87
+ ret
+
+asm_1089fc
+ call WaitTop
+ call Function108ac8
+ ld a, $9c
+ ld [$ffd7], a
+ hlcoord 5, 0
+ ld b, $6
+ ld c, $9
+ call TextBox
+ hlcoord 6, 2
+ ld de, String_108a1d
+ call PlaceString
+ call Function108a87
+ ret
+; 108a1d
+
+String_108a1d: ; 108a1d
+ db "タマゴ"
+ next "おや/?????"
+ next $73, "№", $f2, "?????"
+ db "@"
+; 108a33
+
+Function108a33: ; 108a33
+ call WaitTop
+ call Function108ac8
+ ld a, $9c
+ ld [$ffd7], a
+ hlcoord 5, 0
+ ld b, $6
+ ld c, $9
+ call TextBox
+ hlcoord 7, 4
+ ld de, String_108a54
+ call PlaceString
+ call Function108a87
+ ret
+; 108a54
+
+String_108a54: ; 108a54
+ db "なぞのタマゴ@"
+; 108a5b
+
+Function108a5b: ; 108a5b
+ call WaitTop
+ call Function108ac8
+ ld a, $9c
+ ld [$ffd7], a
+ hlcoord 4, 0
+ ld b, $6
+ ld c, $a
+ call TextBox
+ hlcoord 5, 0
+ ld de, String_108a79
+ call PlaceString
+ ret
+; 108a79
+
+String_108a79: ; 108a79
+ db "─ №", $f2
+ next ""
+ next "おや/"
+ next $73, "№", $f2, ""
+ db "@"
+; 108a87
+
+Function108a87: ; 108a87
+ call WaitBGMap
+ call WaitTop
+ ld a, $98
+ ld [$ffd7], a
+ ret
+; 108a92
+
+Function108a92: ; 108a92
+ hlcoord 9, 0
+ ld bc, $8103
+ call PrintNum
+ ret
+; 108a9c
+
+Function108a9c: ; 108a9c
+ hlcoord 5, 2
+ call PlaceString
+ ret
+; 108aa3
+
+Function108aa3: ; 108aa3
+ cp $3
+ jr c, .asm_108aa8
+ xor a
+
+.asm_108aa8
+ push af
+ hlcoord 8, 4
+ call PlaceString
+ inc bc
+ pop af
+ ld hl, Unknown_108abb
+ ld d, 0
+ ld e, a
+ add hl, de
+ ld a, [hl]
+ ld [bc], a
+ ret
+; 108abb
+
+Unknown_108abb: ; 108abb
+ db " ", "♂", "♀"
+; 108abe
+
+Function108abe: ; 108abe
+ hlcoord 8, 6
+ ld bc, $8205
+ call PrintNum
+ ret
+; 108ac8
+
+Function108ac8: ; 108ac8
+ ld hl, TileMap
+ ld bc, $0168
+ ld a, $7f
+ call ByteFill
+ ret
+; 108ad4
+
+Function108ad4: ; 108ad4
+ and a
+ jr z, .asm_108adc
+ ld de, GFX_1092c7
+ jr .asm_108adf
+
+.asm_108adc
+ ld de, GFX_1091c7
+
+.asm_108adf
+ ld a, $1
+ ld [rVBK], a
+ ld hl, $94a0
+ lb bc, $42, $10
+ call Functiondc9
+ call DelayFrame
+ ld a, $0
+ ld [rVBK], a
+ ret
+; 108af4
+
+Function108af4: ; 108af4
+ ld a, [rSVBK]
+ push af
+ ld a, $5
+ ld [rSVBK], a
+ ld a, [wcf65]
+ and $1
+ jr z, .asm_108b1c
+ ld hl, Palette_109187
+ ld de, Unkn2Pals
+ ld bc, $0040
+ call CopyBytes
+ ld hl, Palette_109187
+ ld de, OBPals
+ ld bc, $0040
+ call CopyBytes
+ jr .asm_108b34
+
+.asm_108b1c
+ ld hl, Palette_109147
+ ld de, Unkn2Pals
+ ld bc, $0040
+ call CopyBytes
+ ld hl, Palette_109147
+ ld de, OBPals
+ ld bc, $0040
+ call CopyBytes
+
+.asm_108b34
+ pop af
+ ld [rSVBK], a
+ ld a, $e4
+ call Functioncf8
+ ld a, $e4
+ call DmgToCgbBGPals
+ call DelayFrame
+ ret
+; 108b45
+
+Function108b45: ; 108b45
+ ld a, [rSVBK]
+ push af
+ ld a, $5
+ ld [rSVBK], a
+ ld de, $7fff
+ ld hl, Unkn1Pals
+ ld a, e
+ ld [hli], a
+ ld d, a
+ ld [hli], a
+ pop af
+ ld [rSVBK], a
+ ret
+; 108b5a
+
+Function108b5a: ; 108b5a
+ ld a, [rSVBK]
+ push af
+ ld a, $5
+ ld [rSVBK], a
+ ld de, $3ff2
+ ld hl, $d0a0
+ ld c, $10
+.asm_108b69
+ ld a, e
+ ld [hli], a
+ ld a, d
+ ld [hli], a
+ dec c
+ jr nz, .asm_108b69
+ pop af
+ ld [rSVBK], a
+ ld a, $1
+ ld [hCGBPalUpdate], a
+ ret
+; 108b78
+
+Function108b78: ; 108b78
+ ld a, [rSVBK]
+ push af
+ ld a, $5
+ ld [rSVBK], a
+ ld a, c
+ and $2
+ jr z, .asm_108b89
+ ld de, $7fff
+ jr .asm_108b8c
+
+.asm_108b89
+ ld de, $05ff
+
+.asm_108b8c
+ ld a, e
+ ld [hli], a
+ ld a, d
+ ld [hld], a
+ pop af
+ ld [rSVBK], a
+ ld a, $1
+ ld [hCGBPalUpdate], a
+ ret
+; 108b98
+
+Palette_108b98:
+; removed
+
+Function108b98: ; 108b98
+ ld d, a
+ ld a, [rSVBK]
+ push af
+ ld a, $5
+ ld [rSVBK], a
+ ld a, [wcf65]
+ and $1
+ xor d
+ jr z, .asm_108bad
+ ld hl, Palette_108b98 + 8
+ jr .asm_108bb0
+
+.asm_108bad
+ ld hl, Palette_108b98
+
+.asm_108bb0
+ ld de, Unkn1Pals + 8 * 7
+ ld bc, $0040
+ call CopyBytes
+ pop af
+ ld [rSVBK], a
+ ret
+; 108bbd
+
+Function108bbd: ; 108bbd
+ callba Function8d03d
+ call ClearSprites
+ ret
+; 108bc7
+
+Function108bc7: ; 108bc7 (42:4bc7)
+ ld a, [wcf64]
+ and a
+ ret z
+ ld hl, $5
+ add hl, bc
+ ld a, [hl]
+ cp $f2
+ jr z, .asm_108bd9
+ sub $8
+ ld [hl], a
+ ret
+.asm_108bd9
+ callba Function8d036
+ ret
+
+Function108be0: ; 108be0 (42:4be0)
+ ld hl, $5
+ add hl, bc
+ ld a, [hl]
+ cp $4a
+ ret z
+ add $8
+ ld [hl], a
+ ret
+; 108bec (42:4bec)
+
+Function108bec: ; 108bec
+ ld a, $90
+ ld [hWY], a
+ ld hl, UnknownText_0x108c07
+ call PrintText
+ ld c, $50
+ call DelayFrames
+ ld hl, UnknownText_0x108c0c
+ call PrintText
+ ld c, $50
+ call DelayFrames
+ ret
+; 108c07
+
+UnknownText_0x108c07: ; 0x108c07
+ text_jump UnknownText_0x1bc787
+ db "@"
+; 0x108c0c
+
+UnknownText_0x108c0c: ; 0x108c0c
+ text_jump UnknownText_0x1bc79d
+ db "@"
+; 0x108c11
+
+UnknownText_0x108c11: ; 0x108c11
+ text_jump UnknownText_0x1bc7b0
+ db "@"
+; 0x108c16
+
+Function108c16: ; 108c16
+ ld a, $90
+ ld [hWY], a
+ ld hl, UnknownText_0x108c26
+ call PrintText
+ ld c, $50
+ call DelayFrames
+ ret
+; 108c26
+
+UnknownText_0x108c26: ; 0x108c26
+ text_jump UnknownText_0x1bc7c3
+ db "@"
+; 0x108c2b
+
+Function108c2b: ; 108c2b
+ ld a, $90
+ ld [hWY], a
+ ld hl, UnknownText_0x108c3b
+ call PrintText
+ ld c, $50
+ call DelayFrames
+ ret
+; 108c3b
+
+UnknownText_0x108c3b: ; 0x108c3b
+ text_jump UnknownText_0x1bc7dd
+ db $50
+; 0x108c40
+
+Function108c40: ; 108c40
+ ld a, $90
+ ld [hWY], a
+ ld a, [wcf65]
+ and $80
+ jr z, .asm_108c57
+ ld hl, UnknownText_0x108c68
+ call PrintText
+ ld c, $50
+ call DelayFrames
+ ret
+
+.asm_108c57
+ ld hl, UnknownText_0x108c63
+ call PrintText
+ ld c, $50
+ call DelayFrames
+ ret
+; 108c63
+
+UnknownText_0x108c63: ; 0x108c63
+ text_jump UnknownText_0x1bc7f0
+ db "@"
+; 0x108c68
+
+UnknownText_0x108c68: ; 0x108c68
+ text_jump UnknownText_0x1bc80a
+ db "@"
+; 0x108c6d
+
+Function108c6d: ; 108c6d
+ ld hl, LZ_108fe7
+ ld de, VBGMap0
+ call Decompress
+ ld hl, LZ_108fe7
+ ld de, VBGMap1
+ call Decompress
+ ret
+; 108c80
+
+Function108c80: ; 108c80
+ ld a, $1
+ ld [rVBK], a
+ ld hl, LZ_1090a7
+ ld de, VBGMap0
+ call Decompress
+ ld hl, LZ_1090a7
+ ld de, VBGMap1
+ call Decompress
+ ld a, $0
+ ld [rVBK], a
+ ret
+; 108c9b
+
+Function108c9b: ; 108c9b
+; localization error: $b should be 6 here
+
+ ld hl, Unknown_108ce9
+ ld a, [hli]
+ ld [$c6d0], a
+
+ ld de, $c6e7
+ ld c, $b
+.asm_108ca7
+ ld a, [hli]
+ ld [de], a
+ inc de
+ dec c
+ jr nz, .asm_108ca7
+
+ ld de, $c6ff
+ ld c, $2
+.asm_108cb2
+ ld a, [hli]
+ ld [de], a
+ inc de
+ dec c
+ jr nz, .asm_108cb2
+
+ ld de, $c6f2
+ ld c, $b
+.asm_108cbd
+ ld a, [hli]
+ ld [de], a
+ inc de
+ dec c
+ jr nz, .asm_108cbd
+
+ ld a, [hli]
+ ld [wc702], a
+
+ ld de, wc719
+ ld c, $b
+.asm_108ccc
+ ld a, [hli]
+ ld [de], a
+ inc de
+ dec c
+ jr nz, .asm_108ccc
+
+ ld de, wc731
+ ld c, $2
+.asm_108cd7
+ ld a, [hli]
+ ld [de], a
+ inc de
+ dec c
+ jr nz, .asm_108cd7
+
+ ld de, wc724
+ ld c, $b
+.asm_108ce2
+ ld a, [hli]
+ ld [de], a
+ inc de
+ dec c
+ jr nz, .asm_108ce2
+
+ ret
+; 108ce9
+
+Unknown_108ce9:
+ db 3
+ db "ゲーフり@@"
+ db $23, $01
+ db "かびーん@@"
+ db 6
+ db "クりーチャ@"
+ db $56, $04
+ db "マツミヤ@@"
+; 108d07
+
+Function108d07: ; 108d07
+ ld a, [wc74e]
+ and $7f
+ cp $8
+ jr c, .asm_108d12
+ ld a, $7
+
+.asm_108d12
+ ld bc, $0008
+ ld hl, Palette_1093c7
+ call AddNTimes
+ ld a, $5
+ ld de, wd020
+ ld bc, $0008
+ call FarCopyWRAM
+ ret
+; 108d27
+
+LZ_108d27:
+INCBIN "gfx/unknown/108d27.2bpp.lz"
+
+LZ_108da7:
+INCBIN "gfx/unknown/108da7.2bpp.lz"
+
+LZ_108fe7:
+INCBIN "gfx/unknown/108fe7.tilemap.lz"
+
+LZ_1090a7:
+INCBIN "gfx/unknown/1090a7.tilemap.lz"
+
+Palette_1090f7:
+ RGB 31, 31, 31
+ RGB 0, 0, 0
+ RGB 31, 0, 25
+ RGB 0, 0, 0
+ RGB 31, 31, 31
+ RGB 0, 0, 0
+ RGB 9, 19, 31
+ RGB 0, 0, 0
+
+Palette_109107:
+ RGB 18, 31, 15
+ RGB 20, 20, 20
+ RGB 11, 11, 11
+ RGB 0, 0, 0
+ RGB 31, 15, 1
+ RGB 14, 14, 31
+ RGB 12, 9, 31
+ RGB 0, 0, 0
+ RGB 18, 31, 15
+ RGB 14, 14, 31
+ RGB 12, 9, 31
+ RGB 0, 0, 0
+ RGB 18, 31, 15
+ RGB 20, 20, 20
+ RGB 11, 11, 11
+ RGB 0, 0, 0
+ RGB 18, 31, 15
+ RGB 31, 7, 9
+ RGB 18, 0, 1
+ RGB 0, 0, 0
+ RGB 18, 31, 15
+ RGB 20, 20, 20
+ RGB 11, 11, 11
+ RGB 0, 0, 0
+ RGB 31, 15, 1
+ RGB 18, 0, 30
+ RGB 9, 0, 17
+ RGB 0, 0, 0
+ RGB 18, 31, 15
+ RGB 18, 0, 30
+ RGB 9, 0, 17
+ RGB 0, 0, 0
+
+Palette_109147:
+ RGB 31, 31, 31
+ RGB 31, 31, 12
+ RGB 31, 13, 12
+ RGB 0, 0, 0
+ RGB 31, 31, 31
+ RGB 31, 23, 15
+ RGB 31, 18, 7
+ RGB 31, 15, 0
+ RGB 31, 31, 31
+ RGB 20, 20, 20
+ RGB 11, 11, 11
+ RGB 0, 0, 0
+ RGB 31, 31, 31
+ RGB 31, 0, 25
+ RGB 31, 0, 25
+ RGB 0, 0, 0
+ RGB 31, 31, 31
+ RGB 9, 19, 31
+ RGB 9, 19, 31
+ RGB 0, 0, 0
+ RGB 31, 31, 31
+ RGB 0, 0, 0
+ RGB 0, 0, 0
+ RGB 0, 0, 0
+ RGB 31, 31, 31
+ RGB 0, 0, 0
+ RGB 0, 0, 0
+ RGB 0, 0, 0
+ RGB 31, 31, 31
+ RGB 0, 0, 0
+ RGB 0, 0, 0
+ RGB 0, 0, 0
+
+Palette_109187:
+ RGB 31, 31, 31
+ RGB 31, 31, 12
+ RGB 31, 13, 12
+ RGB 0, 0, 0
+ RGB 31, 31, 31
+ RGB 31, 23, 15
+ RGB 31, 18, 7
+ RGB 31, 15, 0
+ RGB 31, 31, 31
+ RGB 20, 20, 20
+ RGB 11, 11, 11
+ RGB 0, 0, 0
+ RGB 31, 31, 31
+ RGB 9, 19, 31
+ RGB 9, 19, 31
+ RGB 0, 0, 0
+ RGB 31, 31, 31
+ RGB 31, 0, 25
+ RGB 31, 0, 25
+ RGB 0, 0, 0
+ RGB 31, 31, 31
+ RGB 0, 0, 0
+ RGB 0, 0, 0
+ RGB 0, 0, 0
+ RGB 31, 31, 31
+ RGB 0, 0, 0
+ RGB 0, 0, 0
+ RGB 0, 0, 0
+ RGB 31, 31, 31
+ RGB 0, 0, 0
+ RGB 0, 0, 0
+ RGB 0, 0, 0
+
+GFX_1091c7:
+INCBIN "gfx/unknown/1091c7.2bpp"
+GFX_1092c7:
+INCBIN "gfx/unknown/1092c7.2bpp"
+
+Palette_1093c7:
+ RGB 18, 31, 15
+ RGB 4, 13, 31
+ RGB 0, 0, 31
+ RGB 0, 0, 0
+ RGB 18, 31, 15
+ RGB 31, 31, 0
+ RGB 31, 15, 0
+ RGB 0, 0, 0
+ RGB 18, 31, 15
+ RGB 9, 24, 0
+ RGB 2, 16, 0
+ RGB 0, 0, 0
+ RGB 18, 31, 15
+ RGB 31, 7, 9
+ RGB 18, 0, 1
+ RGB 0, 0, 0
+ RGB 18, 31, 15
+ RGB 28, 5, 31
+ RGB 17, 0, 17
+ RGB 0, 0, 0
+ RGB 18, 31, 15
+ RGB 9, 9, 9
+ RGB 4, 4, 4
+ RGB 0, 0, 0
+ RGB 18, 31, 15
+ RGB 31, 13, 21
+ RGB 27, 7, 12
+ RGB 0, 0, 0
+ RGB 18, 31, 15
+ RGB 21, 20, 20
+ RGB 14, 14, 31
+ RGB 0, 0, 0
+
diff --git a/misc/mobile_45.asm b/misc/mobile_45.asm
new file mode 100644
index 000000000..ed301ae6b
--- /dev/null
+++ b/misc/mobile_45.asm
@@ -0,0 +1,24075 @@
+
+SECTION "bank45", ROMX, BANK[$45]
+
+ charmap " ", $20 ; revert to ascii
+
+String_114000:
+ db "---", 0
+String_114004:
+ db "CGB-AAAA-00", 0, 0
+
+Unknown_114011: ; 114011
+ dw String_114033
+ dw String_11403a
+ dw String_114043
+ dw String_11404e
+ dw String_114053
+ dw String_114058
+ dw String_114062
+ dw String_114074
+ dw String_11408d
+ dw String_11409f
+ dw String_1140b8
+ dw String_1140e6
+ dw String_114110
+ dw String_11413f
+ dw String_114160
+ dw String_114160
+ dw String_114163
+
+String_114033: ; 114033
+ db "From: ", 0
+String_11403a: ; 11403a
+ db "Sender: ", 0
+String_114043: ; 114043
+ db "Reply-To: ", 0
+String_11404e: ; 11404e
+ db "To: ", 0
+String_114053: ; 114053
+ db "Cc: ", 0
+String_114058: ; 114058
+ db "Subject: ", 0
+String_114062: ; 114062
+ db "MIME-Version: 1.0", 0
+String_114074: ; 114074
+ db "X-Game-title: XXXXXXXXXX", 0
+String_11408d: ; 11408d
+ db "X-Game-code: CGB-", 0
+String_11409f: ; 11409f
+ db "X-GBmail-type: exclusive", 0
+String_1140b8: ; 1140b8
+ db "Content-Type: text/plain; charset=iso-2022-jp", 0
+String_1140e6: ; 1140e6
+ db "Content-Type: multipart/mixed; boundary=\"", 0
+String_114110: ; 114110
+ db "Content-Type: Application/Octet-Stream; name=\"", 0
+String_11413f: ; 11413f
+ db "Content-Transfer-Encoding:Base64", 0
+String_114160: ; 114160
+ db "--", 0
+String_114163: ; 114163
+ db ".", 0
+; 114165
+
+Jumptable_114165: ; 114165
+ dw Function114268
+ dw Function114269
+ dw Function11433c
+ dw Function1143b7
+ dw Function1144d1
+ dw Function114b55
+ dw Function114bbc
+ dw Function114cd9
+ dw Function114e62
+ dw Function1152b8
+ dw Function1154d4
+ dw Function1156cc
+ dw Function1159fb
+; 11417f
+
+Unknown_11417f: ; 11417f
+ dw String_114199
+ dw String_11419f
+ dw String_1141a7
+ dw String_1141b1
+ dw String_1141b5
+ dw String_1141b9
+ dw String_1141c2
+ dw String_1141c8
+ dw String_1141d6
+ dw String_1141e4
+ dw String_1141ee
+ dw String_1141fc
+ dw String_114209
+
+String_114199: ; 114199
+ db "FROM:", 0
+String_11419f: ; 11419f
+ db "SENDER:", 0
+String_1141a7: ; 1141a7
+ db "REPLY-TO:", 0
+String_1141b1: ; 1141b1
+ db "TO:", 0
+String_1141b5: ; 1141b5
+ db "CC:", 0
+String_1141b9: ; 1141b9
+ db "SUBJECT:", 0
+String_1141c2: ; 1141c2
+ db "DATE:", 0
+String_1141c8: ; 1141c8
+ db "CONTENT-TYPE:", 0
+String_1141d6: ; 1141d6
+ db "MIME-VERSION:", 0
+String_1141e4: ; 1141e4
+ db "X-MAILER:", 0
+String_1141ee: ; 1141ee
+ db "X-GAME-TITLE:", 0
+String_1141fc: ; 1141fc
+ db "X-GAME-CODE:", 0
+String_114209: ; 114209
+ db "X-GBMAIL-TYPE:", 0
+; 114218
+
+String_114218: ; 114218
+ db "NAME=", 0
+String_11421e: ; 11421e
+ db "MULTIPART", 0
+String_114228: ; 114228
+ db "BOUNDARY=", 0
+String_114232: ; 114232
+ db "=?ISO-2022-JP?B?", 0
+; 114243
+
+Function114243:: ; 114243
+ ld a, $a
+ ld [MBC3SRamEnable], a
+ ld a, [$ff8c]
+ push af
+ push de
+ ld a, [wdc02]
+ add a
+ ld e, a
+ ld d, 0
+ ld hl, Jumptable_114165
+ add hl, de
+ ld a, [hli]
+ ld h, [hl]
+ ld l, a
+ pop de
+ jp [hl]
+; 11425c
+
+Function11425c: ; 11425c
+ ld [wdc02], a
+ pop af
+ ld [$ff8c], a
+ ld [$ff8c], a
+ ld [$4000], a
+ ret
+; 114268
+
+Function114268: ; 114268
+ ret
+; 114269
+
+Function114269: ; 114269
+ ld h, d
+ ld l, e
+ xor a
+ ld [wdc02], a
+ ld [wdc03], a
+ ld a, [hli]
+ ld [wdc00], a
+ ld [$ff8c], a
+ ld [$4000], a
+ ld e, [hl]
+ inc hl
+ ld d, [hl]
+ inc hl
+ ld c, [hl]
+ inc hl
+ ld b, [hl]
+.asm_114282
+ ld a, [de]
+ and a
+ jr z, .asm_1142a4
+ ld h, a
+ ld a, [wdc03]
+ and a
+ jr nz, .asm_114292
+ ld a, h
+ cp $80
+ jr nc, .asm_1142ae
+
+.asm_114292
+ ld a, h
+ cp $d
+ jr z, .asm_1142bb
+ xor a
+ ld [wdc02], a
+.asm_11429b
+ inc e
+ call z, Function114333
+ dec bc
+ ld a, b
+ or c
+ jr nz, .asm_114282
+
+.asm_1142a4
+ ld a, [wdc03]
+ and a
+ jr nz, .asm_114303
+ ld b, $80
+ jr .asm_1142b0
+
+.asm_1142ae
+ ld b, $81
+
+.asm_1142b0
+ ld a, [wdc00]
+ ld c, a
+ ld a, $1
+ ld h, d
+ ld l, e
+ jp Function11425c
+
+.asm_1142bb
+ and a
+ jr z, .asm_1142a4
+ inc e
+ call z, Function114333
+ dec bc
+ ld a, b
+ or c
+ jr z, .asm_1142a4
+ ld a, [de]
+ ld h, a
+ ld a, [wdc03]
+ and a
+ jr nz, .asm_1142d4
+ ld a, h
+ cp $80
+ jr nc, .asm_1142ae
+
+.asm_1142d4
+ ld a, h
+ cp $a
+ jr nz, .asm_1142ae
+ ld a, [wdc03]
+ and a
+ jr nz, .asm_11430d
+ ld a, [wdc02]
+ and a
+ jr nz, .asm_114309
+ ld a, $1
+ ld [wdc02], a
+ inc e
+ call z, Function114333
+ dec bc
+ ld a, b
+ or c
+ jr z, .asm_1142a4
+ ld a, [de]
+ cp $20
+ jr z, .asm_11429b
+ cp $9
+ jr z, .asm_11429b
+ jr .asm_114282
+
+.asm_1142fe
+ xor a
+ ld b, a
+ jp Function11425c
+
+.asm_114303
+ xor a
+ ld b, $1
+ jp Function11425c
+
+.asm_114309
+ xor a
+ ld [wdc02], a
+
+.asm_11430d
+ ld a, [wdc02]
+ and a
+ jr nz, .asm_1142fe
+ ld a, $1
+ ld [wdc03], a
+ inc e
+ call z, Function114333
+ dec bc
+ ld a, b
+ or c
+ jr z, .asm_1142a4
+ ld a, [de]
+ and a
+ jp z, .asm_1142a4
+ cp $2e
+ jp nz, .asm_114282
+ ld a, $1
+ ld [wdc02], a
+ jp .asm_11429b
+; 114333
+
+Function114333: ; 114333
+ push bc
+ ld bc, wdc00
+ call Function115d80
+ pop bc
+ ret
+; 11433c
+
+Function11433c: ; 11433c
+ push de
+ ld h, d
+ ld l, e
+ ld c, [hl]
+ inc hl
+ ld e, [hl]
+ inc hl
+ ld d, [hl]
+ ld b, $b
+ call Function1143f3
+ cp $2
+ jr z, .asm_114358
+ and a
+ jr z, .asm_114360
+ pop hl
+.asm_114351
+ xor a
+ ld b, $3
+ jp Function11425c
+
+.asm_114357
+ pop hl
+
+.asm_114358
+ pop hl
+ ld a, $1
+ ld b, $82
+ jp Function11425c
+
+.asm_114360
+ ld a, h
+ ld [wdc03], a
+ pop hl
+ push bc
+ push de
+ ld c, [hl]
+ inc hl
+ ld e, [hl]
+ inc hl
+ ld d, [hl]
+ inc hl
+ ld b, $c
+ call Function1143f3
+ cp $2
+ jr z, .asm_114357
+ and a
+ jr z, .asm_114381
+ xor a
+ ld b, $2
+ pop hl
+ pop hl
+ jp Function11425c
+
+.asm_114381
+ pop de
+ pop bc
+ ld a, [wdc03]
+ ld [wdc00], a
+ ld [$ff8c], a
+ ld [$4000], a
+ call Function114c0b
+ ld hl, String_114004
+.asm_114394
+ ld de, wdc24
+.asm_114397
+ ld a, [hli]
+ and a
+ jr z, .asm_1143ad
+ ld b, a
+ ld a, [de]
+ inc de
+ cp b
+ jr z, .asm_114397
+.asm_1143a1
+ ld a, [hli]
+ and a
+ jr nz, .asm_1143a1
+ ld a, [hl]
+ and a
+ jr nz, .asm_114394
+ ld b, a
+ jp Function11425c
+
+.asm_1143ad
+ ld a, [de]
+ and a
+ jr nz, .asm_114351
+ xor a
+ ld b, $1
+ jp Function11425c
+; 1143b7
+
+Function1143b7: ; 1143b7
+ ld a, [de]
+ ld b, a
+ inc de
+ ld a, [de]
+ ld c, a
+ inc de
+ ld a, [de]
+ ld h, a
+ inc de
+ ld a, [de]
+ inc de
+ push de
+ ld d, a
+ ld e, h
+ call Function1143f3
+ cp $2
+ jr z, .asm_1143eb
+ and a
+ jr nz, .asm_1143ed
+ ld a, h
+ pop hl
+ push af
+ ld a, [hli]
+ ld [wdc01], a
+ ld [$ff8c], a
+ ld [$4000], a
+ ld a, [hli]
+ ld h, [hl]
+ ld l, a
+ pop af
+ ld [hli], a
+ ld a, e
+ ld [hli], a
+ ld a, d
+ ld [hli], a
+ ld a, c
+ ld [hli], a
+ ld [hl], b
+ xor a
+ jp Function11425c
+
+.asm_1143eb
+ ld b, $82
+
+.asm_1143ed
+ ld a, $1
+ pop hl
+ jp Function11425c
+; 1143f3
+
+Function1143f3: ; 1143f3
+ call Function114412
+ and a
+ jr nz, .asm_11440d
+ ld a, $4
+ cp b
+ jr c, .asm_114407
+ jr z, .asm_114402
+.asm_114400
+ xor a
+ ret
+
+.asm_114402
+ ld a, $0
+ cp c
+ jr nc, .asm_114400
+
+.asm_114407
+ ld bc, VBlank5
+ ld a, $2
+ ret
+
+.asm_11440d
+ ld a, $1
+ ld b, $84
+ ret
+; 114412
+
+Function114412: ; 114412
+ ld a, c
+ ld [wdc00], a
+ ld [$ff8c], a
+ ld [$4000], a
+ ld hl, Unknown_11417f
+ ld a, b
+ add a
+ ld c, a
+ ld b, $0
+ add hl, bc
+ ld a, [hli]
+ ld h, [hl]
+ ld l, a
+ ld c, $0
+ jr .asm_11444a
+
+.asm_11442b
+ ld a, [de]
+ and a
+ jp z, .asm_1144c2
+ inc e
+ call z, Function1144c8
+ cp $d
+ jr nz, .asm_11442b
+ ld a, [de]
+ inc e
+ call z, Function1144c8
+ cp $a
+ jr nz, .asm_11442b
+ ld a, [de]
+ cp $2e
+ jr z, .asm_1144ae
+ cp $d
+ jr z, .asm_1144b8
+
+.asm_11444a
+ ld a, [wdc00]
+ ld [wdc02], a
+ ld a, [de]
+ and a
+ jr z, .asm_1144c2
+ inc e
+ call z, Function1144c8
+ cp $61
+ jr c, .asm_114462
+ cp $7b
+ jr nc, .asm_114462
+ sub $20
+
+.asm_114462
+ ld b, a
+ ld a, [hl]
+ and a
+ jr z, .asm_114476
+ cp b
+ jr nz, .asm_11446e
+ inc c
+ inc hl
+ jr .asm_11444a
+
+.asm_11446e
+ ld a, c
+ and a
+ jr z, .asm_11442b
+ dec c
+ dec hl
+ jr .asm_11446e
+
+.asm_114476
+ ld a, $20
+ cp b
+ jr z, .asm_114481
+ ld a, $a
+ cp b
+ jr z, .asm_114481
+ dec de
+
+.asm_114481
+ ld h, d
+ ld l, e
+ ld bc, NULL
+.asm_114486
+ ld a, [de]
+ and a
+ jr z, .asm_1144c2
+ inc bc
+ inc e
+ call z, Function1144c8
+ cp $d
+ jr nz, .asm_114486
+ ld a, [de]
+ inc bc
+ inc e
+ call z, Function1144c8
+ cp $a
+ jr nz, .asm_114486
+ ld a, [de]
+ cp $20
+ jr z, .asm_114486
+ cp $9
+ jr z, .asm_114486
+ ld d, h
+ ld e, l
+ ld a, [wdc02]
+ ld h, a
+ xor a
+ ret
+
+.asm_1144ae
+ inc e
+ call z, Function1144c8
+ ld a, [de]
+ cp $d
+ jp nz, .asm_11442b
+
+.asm_1144b8
+ inc e
+ call z, Function1144c8
+ ld a, [de]
+ cp $a
+ jp nz, .asm_11442b
+
+.asm_1144c2
+ ld a, $0
+ ld [hl], a
+ ld a, $1
+ ret
+; 1144c8
+
+Function1144c8: ; 1144c8
+ push bc
+ ld bc, wdc00
+ call Function115d80
+ pop bc
+ ret
+; 1144d1
+
+Function1144d1: ; 1144d1
+ call Function114561
+ dec de
+ dec de
+ push de
+ inc de
+ inc de
+ inc de
+ inc hl
+ ld a, [de]
+ ld [hli], a
+ inc de
+ ld a, [de]
+ ld [hli], a
+ inc hl
+ ld a, [de]
+ ld [hld], a
+ dec de
+ ld a, [de]
+ ld [hl], a
+ xor a
+ ld [BigDoll], a
+ ld [wdc17], a
+ ld a, $2
+ ld [wdc0e], a
+ ld hl, wdc03
+ ld c, [hl]
+ inc hl
+ ld e, [hl]
+ inc hl
+ ld d, [hl]
+ call Function114576
+ cp $2
+ jr z, .asm_11455b
+ and a
+ jr z, .asm_114511
+ ld a, $1
+ ld [wdc0d], a
+ call Function1146fa
+ and a
+ jr nz, .asm_11455b
+ jr .asm_11451c
+
+.asm_114511
+ call Function1146a4
+ and a
+ jr nz, .asm_11455b
+ ld a, $2
+ ld [wdc0d], a
+
+.asm_11451c
+ pop hl
+ ld a, [hli]
+ ld [wdc01], a
+ ld [$ff8c], a
+ ld [$4000], a
+ ld e, [hl]
+ inc hl
+ ld d, [hl]
+ ld a, [wdc0d]
+ ld [de], a
+ ld b, $0
+ ld a, [BigDoll]
+ and a
+ jr z, .asm_114537
+ ld b, $1
+
+.asm_114537
+ ld hl, wdc06
+ ld a, [hl]
+ ld [wdc01], a
+ ld [$ff8c], a
+ ld [$4000], a
+ ld hl, wdc09
+ ld e, [hl]
+ inc hl
+ ld d, [hl]
+ dec de
+ ld a, d
+ or e
+ jr z, .asm_114559
+ ld hl, wdc07
+ ld e, [hl]
+ inc hl
+ ld d, [hl]
+ xor a
+ ld [de], a
+ jp Function11425c
+
+.asm_114559
+ ld b, $83
+
+.asm_11455b
+ pop hl
+ ld a, $1
+ jp Function11425c
+; 114561
+
+Function114561: ; 114561
+ ld hl, wdc03
+ ld a, [de]
+ ld [hli], a
+ inc de
+ ld a, [de]
+ ld [hli], a
+ inc de
+ ld a, [de]
+ ld [hli], a
+ inc de
+ ld a, [de]
+ ld [hli], a
+ inc de
+ ld a, [de]
+ ld [hli], a
+ inc de
+ ld a, [de]
+ ld [hl], a
+ ret
+; 114576
+
+Function114576: ; 114576
+ xor a
+ ld [Bed], a
+ ld b, $7
+ call Function1143f3
+ cp $2
+ jr z, .asm_1145b6
+ and a
+ jr nz, .asm_1145b4
+ ld a, h
+ ld [wdc00], a
+ ld [$ff8c], a
+ ld [$4000], a
+ push hl
+ push de
+ push bc
+ ld hl, wdc24
+ call Function115d53
+ call Function1145c5
+ pop bc
+ pop de
+ pop hl
+ and a
+ jr z, .asm_1145bf
+ ld a, b
+ and a
+ jr nz, .asm_1145ba
+ ld a, h
+ ld [wdc00], a
+ ld [$ff8c], a
+ ld [$4000], a
+ ld hl, String_114218
+ call Function114acf
+
+.asm_1145b4
+ xor a
+ ret
+
+.asm_1145b6
+ ld b, $82
+ jr .asm_1145bc
+
+.asm_1145ba
+ ld b, $81
+
+.asm_1145bc
+ ld a, $2
+ ret
+
+.asm_1145bf
+ ld a, $1
+ ld [Bed], a
+ ret
+; 1145c5
+
+Function1145c5: ; 1145c5
+ ld hl, wdc24
+ ld de, String_11421e
+ ld c, $0
+.asm_1145cd
+ ld a, [hli]
+ and a
+ jr z, .asm_1145ef
+ cp $20
+ jr z, .asm_1145cd
+ cp $d
+ jr z, .asm_1145f8
+ cp $61
+ jr c, .asm_1145e3
+ cp $7b
+ jr nc, .asm_1145e3
+ sub $20
+
+.asm_1145e3
+ ld b, a
+ ld a, [de]
+ and a
+ jr z, .asm_11460e
+ inc de
+ cp b
+ jr z, .asm_1145cd
+ dec de
+ jr .asm_1145cd
+
+.asm_1145ef
+ ld b, $0
+ jr .asm_1145f5
+
+.asm_1145f3
+ ld b, $81
+
+.asm_1145f5
+ ld a, $1
+ ret
+
+.asm_1145f8
+ ld a, [hli]
+ and a
+ jr z, .asm_1145f3
+ cp $a
+ jr nz, .asm_1145f3
+ ld a, [hli]
+ and a
+ jr z, .asm_1145f3
+ cp $20
+ jr z, .asm_1145cd
+ cp $9
+ jr z, .asm_1145cd
+ jr .asm_1145f3
+
+.asm_11460e
+ ld a, c
+ and a
+ jr nz, .asm_114619
+ ld c, $1
+ ld de, String_114228
+ jr .asm_1145cd
+
+.asm_114619
+ dec hl
+ ld a, [hl]
+ cp $22
+ jr nz, .asm_114620
+ inc hl
+
+.asm_114620
+ ld de, $ddc8
+ ld b, $0
+ ld c, $40
+.asm_114627
+ ld a, [hli]
+ cp $22
+ jr z, .asm_114636
+ cp $d
+ jr z, .asm_114636
+ ld [de], a
+ inc de
+ inc b
+ dec c
+ jr nz, .asm_114627
+
+.asm_114636
+ ld a, b
+ ld [PartyMon5Defense], a
+ xor a
+ ret
+; 11463c
+
+Function11463c: ; 11463c
+ ld a, [wdc00]
+ push af
+ push de
+ ld hl, $ddc8
+ ld a, [PartyMon5Defense]
+ ld b, a
+.asm_114648
+ ld a, [de]
+ ld c, a
+ ld a, [hli]
+ cp c
+ jr nz, .asm_11468a
+ inc e
+ call z, Function11469b
+ dec b
+ jr nz, .asm_114648
+ ld a, [de]
+ cp $2d
+ jr z, .asm_114673
+ cp $d
+ jr nz, .asm_11468a
+ xor a
+ ld [Carpet], a
+.asm_114662
+ inc e
+ call z, Function11469b
+ ld a, [de]
+ cp $a
+ jr nz, .asm_11468a
+ inc e
+ call z, Function11469b
+ xor a
+ pop hl
+ pop hl
+ ret
+
+.asm_114673
+ inc e
+ call z, Function11469b
+ ld a, [de]
+ cp $2d
+ jr nz, .asm_11468a
+ inc e
+ call z, Function11469b
+ ld a, $1
+ ld [Carpet], a
+ ld a, [de]
+ cp $d
+ jr z, .asm_114662
+
+.asm_11468a
+ pop de
+ pop af
+ ld [wdc00], a
+ ld [$ff8c], a
+ ld [$4000], a
+ xor a
+ ld [Carpet], a
+ ld a, $1
+ ret
+; 11469b
+
+Function11469b: ; 11469b
+ push bc
+ ld bc, wdc00
+ call Function115d80
+ pop bc
+ ret
+; 1146a4
+
+Function1146a4: ; 1146a4
+ call Function114867
+ and a
+ jr nz, .asm_1146e4
+ ld hl, wdc03
+ ld a, [hli]
+ ld [wdc00], a
+ ld [$ff8c], a
+ ld [$4000], a
+ ld e, [hl]
+ inc hl
+ ld d, [hl]
+ call Function114a18
+ and a
+ jr nz, .asm_1146e8
+ call Function1148c2
+ and a
+ jr nz, .asm_1146e4
+ ld hl, wdc03
+ ld a, [hli]
+ ld [wdc00], a
+ ld [$ff8c], a
+ ld [$4000], a
+ ld e, [hl]
+ inc hl
+ ld d, [hl]
+ call Function114a7a
+ and a
+ jr nz, .asm_1146e8
+.asm_1146da
+ dec bc
+ dec bc
+ call Function1149cc
+ and a
+ jr nz, .asm_1146e4
+ xor a
+ ret
+
+.asm_1146e4
+ ld b, $83
+ jr .asm_1146f7
+
+.asm_1146e8
+ ld a, [wdc17]
+ and a
+ jr z, .asm_1146f5
+ ld a, $1
+ ld [BigDoll], a
+ jr .asm_1146da
+
+.asm_1146f5
+ ld b, $81
+
+.asm_1146f7
+ ld a, $1
+ ret
+; 1146fa
+
+Function1146fa: ; 1146fa
+ call Function114867
+ and a
+ jp nz, .asm_11478a
+ ld hl, wdc03
+ ld a, [hli]
+ ld [wdc00], a
+ ld [$ff8c], a
+ ld [$4000], a
+ ld e, [hl]
+ inc hl
+ ld d, [hl]
+ call Function114a18
+ and a
+ jp nz, .asm_11478e
+ call Function1149cc
+ and a
+ jp nz, .asm_11478a
+ ld a, $1
+ ld [wdc0e], a
+ ld a, [wdc00]
+ ld [$ff8c], a
+ ld [$4000], a
+ ld a, $1
+ ld [RightOrnament], a
+ call Function1147cd
+ and a
+ jp nz, .asm_1147b7
+.asm_114737
+ call Function114843
+ cp $1
+ jr nz, .asm_114749
+ ld a, [wdc17]
+ and a
+ jr z, .asm_114794
+ ld a, $1
+ ld [BigDoll], a
+
+.asm_114749
+ call Function11494d
+ and a
+ jr nz, .asm_11478a
+ ld a, [BigDoll]
+ and a
+ jr nz, .asm_114786
+ ld hl, wdc03
+ ld a, [hli]
+ ld [wdc00], a
+ ld [$ff8c], a
+ ld [$4000], a
+ ld e, [hl]
+ inc hl
+ ld d, [hl]
+ call Function1147cd
+ and a
+ jr nz, .asm_1147b7
+ ld a, [wdc0e]
+ cp $3
+ jr nz, .asm_114773
+ dec bc
+ dec bc
+
+.asm_114773
+ call Function1149cc
+ and a
+ jr nz, .asm_11478a
+ ld a, [wdc0d]
+ inc a
+ ld [wdc0d], a
+ ld a, [BigDoll]
+ and a
+ jr z, .asm_114799
+
+.asm_114786
+ ld b, $1
+ jr .asm_1147cb
+
+.asm_11478a
+ ld b, $83
+ jr .asm_114796
+
+.asm_11478e
+ ld a, [wdc17]
+ and a
+ jr nz, .asm_114796
+
+.asm_114794
+ ld b, $81
+
+.asm_114796
+ ld a, $1
+ ret
+
+.asm_114799
+ ld a, [Carpet]
+ and a
+ jr z, .asm_114737
+ jr .asm_1147cb
+
+ ld hl, wdc03
+ ld a, [hli]
+ ld [wdc00], a
+ ld [$ff8c], a
+ ld [$4000], a
+ call Function114a7a
+ and a
+ jr z, .asm_1147cb
+ xor a
+ ld [BigDoll], a
+
+.asm_1147b7
+ ld a, [wdc17]
+ and a
+ jr z, .asm_114794
+ ld a, $1
+ ld [BigDoll], a
+ ld a, [wdc0d]
+ cp $1
+ jr nz, .asm_114773
+ ld b, $1
+
+.asm_1147cb
+ xor a
+ ret
+; 1147cd
+
+Function1147cd: ; 1147cd
+ ld bc, NULL
+ ld a, [RightOrnament]
+ and a
+ jr nz, .asm_11480c
+.asm_1147d6
+ ld a, [de]
+ and a
+ jr z, .asm_11482f
+ inc e
+ call z, Function11483a
+ inc bc
+ cp $d
+ jr nz, .asm_1147d6
+ ld a, [de]
+ cp $a
+ jr nz, .asm_11482f
+.asm_1147e8
+ inc bc
+ inc e
+ call z, Function11483a
+ ld a, [de]
+ cp $20
+ jr z, .asm_114827
+ cp $9
+ jr z, .asm_114827
+ cp $d
+ jr nz, .asm_11482b
+ inc e
+ call z, Function11483a
+ ld a, [de]
+ cp $a
+ jr nz, .asm_11482f
+ inc e
+ call z, Function11483a
+ ld a, h
+ and a
+ jr z, .asm_11480c
+ dec bc
+
+.asm_11480c
+ ld a, [de]
+ cp $2d
+ jr nz, .asm_1147d6
+ inc e
+ call z, Function11483a
+ ld a, [de]
+ cp $2d
+ jr nz, .asm_1147d6
+ inc e
+ call z, Function11483a
+ push bc
+ call Function11463c
+ pop bc
+ and a
+ jr nz, .asm_1147d6
+ ret
+
+.asm_114827
+ ld h, $1
+ jr .asm_1147e8
+
+.asm_11482b
+ ld h, $0
+ jr .asm_11480c
+
+.asm_11482f
+ and a
+ jr nz, .asm_114837
+ ld a, $1
+ ld [wdc17], a
+
+.asm_114837
+ ld a, $1
+ ret
+; 11483a
+
+Function11483a: ; 11483a
+ push bc
+ ld bc, wdc00
+ call Function115d80
+ pop bc
+ ret
+; 114843
+
+Function114843: ; 114843
+ ld a, [wdc00]
+ push af
+ push de
+ ld [$ff8c], a
+ ld [$4000], a
+ call Function114a18
+ and a
+ jr nz, .asm_11485f
+ pop de
+ pop af
+ ld [wdc00], a
+ ld hl, String_114218
+ call Function114acf
+ ret
+
+.asm_11485f
+ pop de
+ pop af
+ ld [wdc00], a
+ ld a, $1
+ ret
+; 114867
+
+Function114867: ; 114867
+ ld hl, wdc06
+ ld a, [hli]
+ ld [wdc01], a
+ ld [$ff8c], a
+ ld [$4000], a
+ ld e, [hl]
+ inc hl
+ ld d, [hl]
+ ld a, $2
+ ld [de], a
+ inc e
+ call z, Function1148b9
+ ld a, $1
+ ld [de], a
+ inc e
+ call z, Function1148b9
+ ld hl, wdc03
+ ld a, [hli]
+ ld [de], a
+ inc e
+ call z, Function1148b9
+ ld a, [hli]
+ ld [de], a
+ inc e
+ call z, Function1148b9
+ ld a, [hli]
+ ld [de], a
+ inc e
+ call z, Function1148b9
+ ld hl, wdc06
+ ld a, [wdc01]
+ ld [hli], a
+ ld [hl], e
+ inc hl
+ ld [hl], d
+ inc hl
+ ld c, [hl]
+ inc hl
+ ld b, [hl]
+ ld d, $5
+.asm_1148a9
+ dec bc
+ ld a, b
+ or c
+ jr z, .asm_1148b6
+ dec d
+ jr nz, .asm_1148a9
+ ld [hl], b
+ dec hl
+ ld [hl], c
+ xor a
+ ret
+
+.asm_1148b6
+ ld a, $1
+ ret
+; 1148b9
+
+Function1148b9: ; 1148b9
+ push bc
+ ld bc, wdc01
+ call Function115d80
+ pop bc
+ ret
+; 1148c2
+
+Function1148c2: ; 1148c2
+ ld hl, wdc06
+ ld a, [hli]
+ ld [wdc01], a
+ ld [$ff8c], a
+ ld [$4000], a
+ ld e, [hl]
+ inc hl
+ ld d, [hl]
+ ld a, c
+ ld [de], a
+ inc e
+ call z, Function114944
+ ld a, b
+ ld [de], a
+ inc e
+ call z, Function114944
+ ld a, [wdc0e]
+ ld [de], a
+ inc e
+ call z, Function114944
+ cp $3
+ jr nz, .asm_114904
+ ld hl, Plant
+ ld a, [hli]
+ ld [de], a
+ inc e
+ call z, Function114944
+ ld a, [hli]
+ ld [de], a
+ inc e
+ call z, Function114944
+ ld a, [hli]
+ ld [de], a
+ inc e
+ call z, Function114944
+ ld a, [hli]
+ ld [de], a
+ inc e
+ call z, Function114944
+
+.asm_114904
+ ld hl, wdc03
+ ld a, [hli]
+ ld [de], a
+ inc e
+ call z, Function114944
+ ld a, [hli]
+ ld [de], a
+ inc e
+ call z, Function114944
+ ld a, [hli]
+ ld [de], a
+ inc e
+ call z, Function114944
+ ld hl, wdc06
+ ld a, [wdc01]
+ ld [hli], a
+ ld [hl], e
+ inc hl
+ ld [hl], d
+ inc hl
+ ld c, [hl]
+ inc hl
+ ld b, [hl]
+ ld a, [wdc0e]
+ cp $3
+ jr z, .asm_114932
+ ld d, $6
+ jr .asm_114934
+
+.asm_114932
+ ld d, $a
+
+.asm_114934
+ dec bc
+ ld a, b
+ or c
+ jr z, .asm_114941
+ dec d
+ jr nz, .asm_114934
+ ld [hl], b
+ dec hl
+ ld [hl], c
+ xor a
+ ret
+
+.asm_114941
+ ld a, $1
+ ret
+; 114944
+
+Function114944: ; 114944
+ push bc
+ ld bc, wdc01
+ call Function115d80
+ pop bc
+ ret
+; 11494d
+
+Function11494d: ; 11494d
+ ld hl, wdc06
+ ld a, [hli]
+ ld [wdc01], a
+ ld [$ff8c], a
+ ld [$4000], a
+ ld e, [hl]
+ inc hl
+ ld d, [hl]
+ ld a, [wdc0e]
+ ld [de], a
+ inc e
+ call z, Function1149c3
+ cp $3
+ jr nz, .asm_114983
+ ld hl, Plant
+ ld a, [hli]
+ ld [de], a
+ inc e
+ call z, Function1149c3
+ ld a, [hli]
+ ld [de], a
+ inc e
+ call z, Function1149c3
+ ld a, [hli]
+ ld [de], a
+ inc e
+ call z, Function1149c3
+ ld a, [hli]
+ ld [de], a
+ inc e
+ call z, Function1149c3
+
+.asm_114983
+ ld hl, wdc03
+ ld a, [hli]
+ ld [de], a
+ inc e
+ call z, Function1149c3
+ ld a, [hli]
+ ld [de], a
+ inc e
+ call z, Function1149c3
+ ld a, [hli]
+ ld [de], a
+ inc e
+ call z, Function1149c3
+ ld hl, wdc06
+ ld a, [wdc01]
+ ld [hli], a
+ ld [hl], e
+ inc hl
+ ld [hl], d
+ inc hl
+ ld c, [hl]
+ inc hl
+ ld b, [hl]
+ ld a, [wdc0e]
+ cp $3
+ jr z, .asm_1149b1
+ ld d, $4
+ jr .asm_1149b3
+
+.asm_1149b1
+ ld d, $8
+
+.asm_1149b3
+ dec bc
+ ld a, b
+ or c
+ jr z, .asm_1149c0
+ dec d
+ jr nz, .asm_1149b3
+ ld [hl], b
+ dec hl
+ ld [hl], c
+ xor a
+ ret
+
+.asm_1149c0
+ ld a, $1
+ ret
+; 1149c3
+
+Function1149c3: ; 1149c3
+ push bc
+ ld bc, wdc01
+ call Function115d80
+ pop bc
+ ret
+; 1149cc
+
+Function1149cc: ; 1149cc
+ ld hl, wdc06
+ ld a, [hl]
+ ld [wdc01], a
+ ld [$ff8c], a
+ ld [$4000], a
+ push de
+ ld hl, wdc09
+ ld e, [hl]
+ inc hl
+ ld d, [hl]
+ dec de
+ ld a, d
+ or e
+ jr z, .asm_114a0b
+ dec de
+ ld a, d
+ or e
+ jr z, .asm_114a0b
+ ld [hl], d
+ dec hl
+ ld [hl], e
+ ld hl, wdc07
+ ld e, [hl]
+ inc hl
+ ld d, [hl]
+ ld a, c
+ ld [de], a
+ inc e
+ call z, Function114a0f
+ ld a, b
+ ld [de], a
+ inc e
+ call z, Function114a0f
+ ld hl, wdc06
+ ld a, [wdc01]
+ ld [hli], a
+ ld [hl], e
+ inc hl
+ ld [hl], d
+ pop de
+ xor a
+ ret
+
+.asm_114a0b
+ pop de
+ ld a, $1
+ ret
+; 114a0f
+
+Function114a0f: ; 114a0f
+ push bc
+ ld bc, wdc01
+ call Function115d80
+ pop bc
+ ret
+; 114a18
+
+Function114a18: ; 114a18
+ ld bc, NULL
+ ld h, b
+.asm_114a1c
+ inc bc
+ ld a, [de]
+ and a
+ jr z, .asm_114a66
+ inc e
+ call z, Function114a71
+ cp $d
+ jr nz, .asm_114a1c
+ ld a, [de]
+ cp $a
+ jr nz, .asm_114a66
+.asm_114a2e
+ inc bc
+ inc e
+ call z, Function114a71
+ ld a, [de]
+ cp $20
+ jr z, .asm_114a5e
+ cp $9
+ jr z, .asm_114a5e
+ cp $d
+ jr nz, .asm_114a62
+ inc e
+ call z, Function114a71
+ ld a, [de]
+ cp $a
+ jr nz, .asm_114a66
+ inc e
+ call z, Function114a71
+ ld a, h
+ and a
+ jr z, .asm_114a52
+ dec bc
+
+.asm_114a52
+ ld hl, wdc03
+ ld a, [wdc00]
+ ld [hli], a
+ ld [hl], e
+ inc hl
+ ld [hl], d
+ xor a
+ ret
+
+.asm_114a5e
+ ld h, $1
+ jr .asm_114a2e
+
+.asm_114a62
+ ld h, $0
+ jr .asm_114a1c
+
+.asm_114a66
+ and a
+ jr nz, .asm_114a6e
+ ld a, $1
+ ld [wdc17], a
+
+.asm_114a6e
+ ld a, $1
+ ret
+; 114a71
+
+Function114a71: ; 114a71
+ push bc
+ ld bc, wdc00
+ call Function115d80
+ pop bc
+ ret
+; 114a7a
+
+Function114a7a: ; 114a7a
+ ld bc, NULL
+.asm_114a7d
+ inc bc
+ ld a, [de]
+ and a
+ jr z, .asm_114abb
+ inc e
+ call z, Function114ac6
+ cp $d
+ jr nz, .asm_114a7d
+ ld a, [de]
+ cp $a
+ jr nz, .asm_114abb
+ inc e
+ call z, Function114ac6
+ inc bc
+ ld a, [de]
+ cp $2e
+ jr nz, .asm_114a7d
+ inc e
+ call z, Function114ac6
+ ld a, [de]
+ cp $d
+ jr nz, .asm_114a7d
+ inc e
+ call z, Function114ac6
+ ld a, [de]
+ cp $a
+ jr nz, .asm_114abb
+ inc e
+ call z, Function114ac6
+ ld hl, wdc03
+ ld a, [wdc00]
+ ld [hli], a
+ ld [hl], e
+ inc hl
+ ld [hl], d
+ xor a
+ ret
+
+.asm_114abb
+ and a
+ jr nz, .asm_114ac3
+ ld a, $1
+ ld [wdc17], a
+
+.asm_114ac3
+ ld a, $1
+ ret
+; 114ac6
+
+Function114ac6: ; 114ac6
+ push bc
+ ld bc, wdc00
+ call Function115d80
+ pop bc
+ ret
+; 114acf
+
+Function114acf: ; 114acf
+.asm_114acf
+ push hl
+ push bc
+.asm_114ad1
+ ld a, [hl]
+ ld b, a
+ ld a, [de]
+ inc e
+ call z, Function114b4c
+ cp $61
+ jr c, .asm_114ae2
+ cp $7b
+ jr nc, .asm_114ae2
+ sub $20
+
+.asm_114ae2
+ cp b
+ jr z, .asm_114af4
+ pop bc
+ dec bc
+ push bc
+ ld a, b
+ or c
+ jr nz, .asm_114ad1
+.asm_114aec
+ ld a, $2
+ ld [wdc0e], a
+ pop bc
+ pop hl
+ ret
+
+.asm_114af4
+ inc hl
+.asm_114af5
+ ld a, [hli]
+ and a
+ jr z, .asm_114b19
+ ld b, a
+ ld a, [de]
+ inc e
+ call z, Function114b4c
+ cp $61
+ jr c, .asm_114b09
+ cp $7b
+ jr nc, .asm_114b09
+ sub $20
+
+.asm_114b09
+ cp b
+ jr nz, .asm_114b15
+ pop bc
+ dec bc
+ push bc
+ ld a, b
+ or c
+ jr nz, .asm_114af5
+ jr .asm_114aec
+
+.asm_114b15
+ pop bc
+ pop hl
+ jr .asm_114acf
+
+.asm_114b19
+ ld b, $0
+ ld c, $40
+ ld a, [de]
+ cp $22
+ jr nz, .asm_114b26
+ inc e
+ call z, Function114b4c
+
+.asm_114b26
+ ld hl, Plant
+ ld a, [wdc00]
+ ld [hli], a
+ ld [hl], e
+ inc hl
+ ld [hl], d
+ inc hl
+.asm_114b31
+ ld a, [de]
+ cp $22
+ jr z, .asm_114b42
+ cp $d
+ jr z, .asm_114b42
+ inc e
+ call z, Function114b4c
+ inc b
+ dec c
+ jr nz, .asm_114b31
+
+.asm_114b42
+ ld [hl], b
+ pop bc
+ pop hl
+ ld a, $3
+ ld [wdc0e], a
+ xor a
+ ret
+; 114b4c
+
+Function114b4c: ; 114b4c
+ push bc
+ ld bc, wdc00
+ call Function115d80
+ pop bc
+ ret
+; 114b55
+
+Function114b55: ; 114b55
+ call Function114561
+ ld b, $0
+ ld hl, wdc03
+ ld c, [hl]
+ inc hl
+ ld e, [hl]
+ inc hl
+ ld d, [hl]
+ ld hl, wdc24
+.asm_114b65
+ push de
+ push bc
+ push hl
+ call Function1143f3
+ cp $2
+ jr z, .asm_114bb2
+ and a
+ jr nz, .asm_114b8c
+ ld a, h
+ pop hl
+ inc hl
+ ld [hld], a
+ ld a, $1
+ ld [hli], a
+ inc hl
+ ld [hl], e
+ inc hl
+ ld [hl], d
+ inc hl
+ ld [hl], c
+ inc hl
+ ld [hl], b
+ inc hl
+.asm_114b82
+ pop bc
+ pop de
+ inc b
+ ld a, b
+ cp $d
+ jr z, .asm_114b96
+ jr .asm_114b65
+
+.asm_114b8c
+ pop hl
+ xor a
+ ld [hli], a
+ ld [hli], a
+ ld [hli], a
+ ld [hli], a
+ ld [hli], a
+ ld [hli], a
+ jr .asm_114b82
+
+.asm_114b96
+ ld hl, wdc06
+ ld a, [hli]
+ ld [wdc01], a
+ ld [$ff8c], a
+ ld [$4000], a
+ ld e, [hl]
+ inc hl
+ ld d, [hl]
+ inc hl
+ ld bc, $004e
+ ld hl, wdc24
+ call Function115d6a
+ jp Function11425c
+
+.asm_114bb2
+ ld a, $1
+ pop bc
+ pop bc
+ pop bc
+ ld b, $82
+ jp Function11425c
+; 114bbc
+
+Function114bbc: ; 114bbc
+ ld h, d
+ ld l, e
+ ld a, [hli]
+ ld b, a
+ ld a, [hli]
+ ld c, a
+ ld a, [hli]
+ ld e, a
+ ld d, [hl]
+ inc hl
+ push hl
+ call Function1143f3
+ cp $2
+ jr z, .asm_114c03
+ and a
+ jr nz, .asm_114bff
+ ld a, h
+ ld [wdc00], a
+ ld [$ff8c], a
+ ld [$4000], a
+ call Function114c0b
+ ld hl, wdc24
+ call Function114c5e
+ ld a, b
+ or c
+ jr z, .asm_114bff
+ pop hl
+ ld a, [hli]
+ ld [wdc01], a
+ ld [$ff8c], a
+ ld [$4000], a
+ ld a, [hli]
+ ld e, a
+ ld d, [hl]
+ ld hl, wdc24
+ push bc
+ call Function115d6a
+ pop hl
+ jp Function11425c
+
+.asm_114bff
+ ld b, $84
+ jr .asm_114c05
+
+.asm_114c03
+ ld b, $82
+
+.asm_114c05
+ ld a, $1
+ pop hl
+ jp Function11425c
+; 114c0b
+
+Function114c0b: ; 114c0b
+ ld hl, wdc24
+ push bc
+ call Function115d53
+ pop bc
+ ld hl, wdc24
+ ld d, h
+ ld e, l
+.asm_114c18
+ ld a, [hli]
+ cp $d
+ jr z, .asm_114c34
+ ld [de], a
+ inc de
+ dec bc
+ ld a, b
+ or c
+ jr nz, .asm_114c18
+.asm_114c24
+ xor a
+ ld [de], a
+ ld hl, wdc24
+ ld bc, NULL
+.asm_114c2c
+ ld a, [hli]
+ inc bc
+ and a
+ jr nz, .asm_114c2c
+ dec bc
+ xor a
+ ret
+
+.asm_114c34
+ dec bc
+ ld a, b
+ or c
+ jr z, .asm_114c24
+ ld a, [hli]
+ cp $a
+ jr nz, .asm_114c18
+ dec bc
+ ld a, b
+ or c
+ jr z, .asm_114c24
+ ld a, [hli]
+ cp $20
+ jr z, .asm_114c4e
+ cp $9
+ jr z, .asm_114c4e
+ jr .asm_114c24
+
+.asm_114c4e
+ dec bc
+ ld a, b
+ or c
+ jr z, .asm_114c24
+ jr .asm_114c18
+; 114c55
+
+Function114c55: ; 114c55
+ push bc
+ ld bc, wdc00
+ call Function115d80
+ pop bc
+ ret
+; 114c5e
+
+Function114c5e: ; 114c5e
+ ld de, PartyMon5Defense
+ push hl
+.asm_114c62
+ ld a, [hli]
+ ld [de], a
+ inc de
+ and a
+ jr z, .asm_114cc6
+ cp $3d
+ jr nz, .asm_114c62
+ ld a, [hli]
+ ld [de], a
+ inc de
+ cp $3f
+ jr nz, .asm_114c62
+ dec de
+ dec de
+.asm_114c75
+ ld a, [hli]
+ cp $3f
+ jr nz, .asm_114c75
+ ld a, [hli]
+ cp $42
+ jr nz, .asm_114cb8
+ inc hl
+ ld bc, NULL
+ push hl
+.asm_114c84
+ inc bc
+ ld a, [hli]
+ cp $3f
+ jr nz, .asm_114c84
+ inc bc
+ ld a, [hli]
+ cp $3d
+ jr nz, .asm_114c84
+ dec bc
+ dec bc
+ ld a, l
+ ld [wdc03], a
+ ld a, h
+ ld [wdc04], a
+ pop hl
+ push de
+ call Function115c49
+ pop de
+ ld h, d
+ ld l, e
+ ld a, [hli]
+ ld c, a
+ ld a, [hli]
+ ld b, a
+.asm_114ca6
+ ld a, [hli]
+ ld [de], a
+ inc de
+ dec bc
+ ld a, b
+ or c
+ jr nz, .asm_114ca6
+ ld a, [wdc03]
+ ld l, a
+ ld a, [wdc04]
+ ld h, a
+ jr .asm_114c62
+
+.asm_114cb8
+ ld a, $3d
+ ld [de], a
+ inc de
+ ld a, $3f
+ ld [de], a
+ inc de
+.asm_114cc0
+ ld a, [hli]
+ ld [de], a
+ inc de
+ and a
+ jr nz, .asm_114cc0
+
+.asm_114cc6
+ ld [de], a
+ pop hl
+ ld de, PartyMon5Defense
+ ld bc, NULL
+.asm_114cce
+ inc bc
+ ld a, [de]
+ ld [hli], a
+ inc de
+ and a
+ jr z, .asm_114cd7
+ jr .asm_114cce
+
+.asm_114cd7
+ dec bc
+ ret
+; 114cd9
+
+Function114cd9: ; 114cd9
+ ld h, d
+ ld l, e
+ ld b, [hl]
+ inc hl
+ ld c, [hl]
+ inc hl
+ ld e, [hl]
+ inc hl
+ ld d, [hl]
+ inc hl
+ push hl
+ call Function1143f3
+ and a
+ jr nz, .asm_114d33
+ ld [wdc03], a
+ ld [wdc04], a
+ ld a, h
+ ld [wdc00], a
+ ld [$ff8c], a
+ ld [$4000], a
+ ld hl, wdc24
+ call Function114d39
+ ld hl, wdc24
+ call Function114d99
+ pop hl
+ push hl
+ inc hl
+ inc hl
+ inc hl
+ inc hl
+ ld a, [hld]
+ cp b
+ jr c, .asm_114d2d
+ jr z, .asm_114d29
+.asm_114d11
+ pop hl
+ ld a, [hli]
+ ld [wdc01], a
+ ld [$ff8c], a
+ ld [$4000], a
+ ld a, [hli]
+ ld e, a
+ ld a, [hli]
+ ld d, a
+ ld hl, PartyMon5Defense
+ call Function115d6a
+ xor a
+ jp Function11425c
+
+.asm_114d29
+ ld a, [hli]
+ cp c
+ jr nc, .asm_114d11
+
+.asm_114d2d
+ ld b, $83
+ jr .asm_114d33
+
+ ld b, $82
+
+.asm_114d33
+ pop hl
+ ld a, $1
+ jp Function11425c
+; 114d39
+
+Function114d39: ; 114d39
+.asm_114d39
+ ld a, [wdc04]
+ and a
+ jr nz, .asm_114d4a
+ ld a, [de]
+ cp $28
+ jr z, .asm_114d55
+ cp $22
+ jr z, .asm_114d55
+ jr .asm_114d7f
+
+.asm_114d4a
+ ld a, [de]
+ cp $29
+ jr z, .asm_114d5f
+ cp $22
+ jr z, .asm_114d6f
+ jr .asm_114d84
+
+.asm_114d55
+ ld [wdc03], a
+ ld a, $1
+ ld [wdc04], a
+ jr .asm_114d84
+
+.asm_114d5f
+ ld a, [wdc03]
+ cp $28
+ jr nz, .asm_114d84
+ xor a
+ ld [wdc03], a
+ ld [wdc04], a
+ jr .asm_114d84
+
+.asm_114d6f
+ ld a, [wdc03]
+ cp $22
+ jr nz, .asm_114d84
+ xor a
+ ld [wdc03], a
+ ld [wdc04], a
+ jr .asm_114d84
+
+.asm_114d7f
+ cp $20
+ jr z, .asm_114d84
+ ld [hli], a
+
+.asm_114d84
+ dec bc
+ ld a, b
+ or c
+ jr z, .asm_114d96
+ inc e
+ jr nz, .asm_114d39
+ push bc
+ ld bc, wdc00
+ call Function115d80
+ pop bc
+ jr .asm_114d39
+
+.asm_114d96
+ xor a
+ ld [hli], a
+ ret
+; 114d99
+
+Function114d99: ; 114d99
+ ld de, PartyMon5Defense
+ xor a
+ ld [de], a
+.asm_114d9e
+ ld a, [hli]
+ call Function114df1
+ and a
+ jr z, .asm_114dde
+ cp $40
+ jr nz, .asm_114d9e
+ dec hl
+.asm_114daa
+ dec hl
+ ld a, [hl]
+ call Function114e2d
+ and a
+ jr z, .asm_114daa
+ inc hl
+ push hl
+ ld b, $0
+.asm_114db6
+ ld a, [hli]
+ cp $40
+ jr z, .asm_114dc1
+ call Function114e2d
+ and a
+ jr nz, .asm_114dc4
+
+.asm_114dc1
+ inc b
+ jr .asm_114db6
+
+.asm_114dc4
+ pop hl
+ ld a, [PartyMon5Defense]
+ and a
+ jr z, .asm_114dd2
+ ld a, $2c
+ inc de
+ ld [de], a
+ ld a, [PartyMon5Defense]
+
+.asm_114dd2
+ inc a
+ ld [PartyMon5Defense], a
+.asm_114dd6
+ inc de
+ ld a, [hli]
+ ld [de], a
+ dec b
+ jr nz, .asm_114dd6
+ jr .asm_114d9e
+
+.asm_114dde
+ inc de
+ xor a
+ ld [de], a
+ ld a, $dd
+ cpl
+ ld h, a
+ ld a, $c8
+ cpl
+ ld l, a
+ inc hl
+ add hl, de
+ ld b, h
+ ld c, l
+ inc bc
+ inc bc
+ xor a
+ ret
+; 114df1
+
+Function114df1: ; 114df1
+ cp $1b
+ ret nz
+ ld a, [hli]
+ and a
+ jr z, .asm_114e2b
+ cp $24
+ jr nz, .asm_114e09
+ ld a, [hli]
+ and a
+ jr z, .asm_114e2b
+ cp $42
+ jr z, .asm_114e0b
+ cp $40
+ jr z, .asm_114e0b
+ dec hl
+
+.asm_114e09
+ dec hl
+ ret
+
+.asm_114e0b
+ ld a, [hli]
+ and a
+ jr z, .asm_114e2b
+ cp $1b
+ jr nz, .asm_114e0b
+ ld a, [hli]
+ and a
+ jr z, .asm_114e2b
+ cp $28
+ jr nz, .asm_114e0b
+ ld a, [hli]
+ and a
+ jr z, .asm_114e2b
+ cp $42
+ jr z, .asm_114e29
+ cp $4a
+ jr z, .asm_114e29
+ jr .asm_114e0b
+
+.asm_114e29
+ ld a, [hli]
+ ret
+
+.asm_114e2b
+ xor a
+ ret
+; 114e2d
+
+Function114e2d: ; 114e2d
+ cp $30
+ jr c, .asm_114e45
+ cp $40
+ jr c, .asm_114e58
+ cp $41
+ jr c, .asm_114e45
+ cp $5b
+ jr c, .asm_114e58
+ cp $61
+ jr c, .asm_114e45
+ cp $7b
+ jr c, .asm_114e58
+
+.asm_114e45
+ cp $20
+ jr z, .asm_114e58
+ cp $2d
+ jr z, .asm_114e58
+ cp $2e
+ jr z, .asm_114e58
+ cp $5f
+ jr z, .asm_114e58
+.asm_114e55
+ ld a, $1
+ ret
+
+.asm_114e58
+ cp $3c
+ jr z, .asm_114e55
+ cp $3e
+ jr z, .asm_114e55
+ xor a
+ ret
+; 114e62
+
+Function114e62: ; 114e62
+ ld a, c
+ and a
+ jr nz, .asm_114e6f
+ ld a, [wdc23]
+ and a
+ jp z, Function11425c
+ jr .asm_114e76
+
+.asm_114e6f
+ xor a
+ ld [wdc23], a
+ call Function114ee9
+
+.asm_114e76
+ call Function114f0a
+ cp $ff
+ jp z, Function11425c
+ and a
+ jr nz, .asm_114e99
+ call Function114ea0
+ and a
+ jr nz, .asm_114e99
+ ld hl, wdc09
+ ld a, [hli]
+ cpl
+ ld e, a
+ ld a, [hli]
+ cpl
+ ld d, a
+ inc de
+ ld a, [hli]
+ ld h, [hl]
+ ld l, a
+ add hl, de
+ xor a
+ jp Function11425c
+
+.asm_114e99
+ ld a, $1
+ ld b, $83
+ jp Function11425c
+; 114ea0
+
+Function114ea0: ; 114ea0
+ ld hl, wdc06
+ ld a, [hli]
+ ld [wdc01], a
+ ld [$ff8c], a
+ ld [$4000], a
+ ld a, [hli]
+ ld e, a
+ ld a, [hli]
+ ld d, a
+ ld a, [hli]
+ ld c, a
+ ld a, [hli]
+ ld b, a
+ ld a, $d
+ ld [de], a
+ dec bc
+ ld a, b
+ or c
+ jr z, .asm_114edb
+ inc e
+ call z, Function114ee0
+ ld a, $a
+ ld [de], a
+ dec bc
+ inc e
+ call z, Function114ee0
+ ld hl, wdc06
+ ld a, [wdc01]
+ ld [hli], a
+ ld a, e
+ ld [hli], a
+ ld a, d
+ ld [hli], a
+ ld a, c
+ ld [hli], a
+ ld [hl], b
+ xor a
+ ld [wdc23], a
+ ret
+
+.asm_114edb
+ ld a, $1
+ ld b, $83
+ ret
+; 114ee0
+
+Function114ee0: ; 114ee0
+ push bc
+ ld bc, wdc01
+ call Function115d80
+ pop bc
+ ret
+; 114ee9
+
+Function114ee9: ; 114ee9
+ ld hl, wdc03
+ ld a, b
+ ld [hli], a
+ ld a, c
+ ld [hli], a
+ ld [hli], a
+ ld a, [de]
+ ld [hli], a
+ inc de
+ ld a, [de]
+ ld [hli], a
+ inc de
+ ld a, [de]
+ ld [hli], a
+ inc de
+ ld a, [de]
+ ld c, a
+ ld [hli], a
+ inc de
+ ld a, [de]
+ ld b, a
+ ld [hli], a
+ inc de
+ ld a, c
+ ld [hli], a
+ ld a, b
+ ld [hli], a
+ ld a, e
+ ld [hli], a
+ ld [hl], d
+ ret
+; 114f0a
+
+Function114f0a: ; 114f0a
+ call Function114f39
+ and a
+ jr nz, .asm_114f26
+ ld a, [wdc03]
+ cp $6
+ jr c, .asm_114f21
+ cp $c
+ jr z, .asm_114f23
+ call Function114f59
+ and a
+ jr nz, .asm_114f23
+
+.asm_114f21
+ xor a
+ ret
+
+.asm_114f23
+ ld a, $1
+ ret
+
+.asm_114f26
+ call Function114f59
+ and a
+ jr nz, .asm_114f23
+ ld hl, wdc0d
+ ld e, [hl]
+ inc hl
+ ld d, [hl]
+ ld a, [de]
+ and a
+ jr z, .asm_114f21
+ ld a, $ff
+ ret
+; 114f39
+
+Function114f39: ; 114f39
+ ld hl, wdc0d
+ ld e, [hl]
+ inc hl
+ ld d, [hl]
+ inc hl
+ ld a, [de]
+ and a
+ jr z, .asm_114f58
+ ld [hli], a
+ inc de
+ ld a, [de]
+ ld [hli], a
+ inc de
+ ld a, [de]
+ ld [hli], a
+ inc de
+ ld a, [de]
+ ld [hli], a
+ inc de
+ ld hl, wdc0d
+ ld [hl], e
+ inc hl
+ ld [hl], d
+ ld a, $1
+ ret
+
+.asm_114f58
+ ret
+; 114f59
+
+Function114f59: ; 114f59
+ ld a, [wdc23]
+ and a
+ jr nz, .asm_114f7c
+ ld a, [wdc03]
+ cp $11
+ jr z, .asm_114fa7
+ add a
+ ld e, a
+ ld d, 0
+ ld hl, Unknown_114011
+ add hl, de
+ ld a, [hli]
+ ld h, [hl]
+ ld l, a
+ call Function115020
+ and a
+ jr nz, .asm_114fe7
+ ld a, $1
+ ld [wdc23], a
+
+.asm_114f7c
+ ld a, [wdc03]
+ cp $5
+ jr c, .asm_114fc9
+ jr z, .asm_114fec
+ cp $8
+ jr c, .asm_114fa5
+ jr z, .asm_114ff4
+ cp $b
+ jr c, .asm_114fa5
+ jr z, .asm_114ffc
+ cp $c
+ jr z, .asm_115007
+ cp $d
+ jr z, .asm_114fa5
+ cp $10
+ jr c, .asm_115015
+ jr z, .asm_114fa5
+ cp $12
+ jr c, .asm_114fa5
+ jr .asm_114fe7
+
+.asm_114fa5
+ xor a
+ ret
+
+.asm_114fa7
+ ld hl, Bed
+ ld c, [hl]
+ inc hl
+ ld a, [hli]
+ ld [wdc00], a
+ ld [$ff8c], a
+ ld [$4000], a
+ ld e, [hl]
+ inc hl
+ ld d, [hl]
+ ld hl, wdc24
+ call Function115d53
+ ld hl, wdc24
+ call Function115020
+ and a
+ jr nz, .asm_114fe7
+ jr .asm_11501e
+
+.asm_114fc9
+ call Function115062
+ and a
+ jr nz, .asm_114fe7
+ ld a, [wdc04]
+ dec a
+ ld [wdc04], a
+ and a
+ jr z, .asm_114fdf
+ call Function114f39
+ and a
+ jr nz, .asm_114fc9
+
+.asm_114fdf
+ ld a, [wdc05]
+ ld [wdc04], a
+ jr .asm_11501e
+
+.asm_114fe7
+ ld a, $1
+ ld b, $83
+ ret
+
+.asm_114fec
+ call Function115062
+ and a
+ jr nz, .asm_114fe7
+ jr .asm_11501e
+
+.asm_114ff4
+ call Function115179
+ and a
+ jr nz, .asm_114fe7
+ jr .asm_11501e
+
+.asm_114ffc
+ ld hl, String_114000
+ call Function115217
+ and a
+ jr nz, .asm_114fe7
+ jr .asm_11501e
+
+.asm_115007
+ call Function11528f
+ ld hl, wdc24
+ call Function115217
+ and a
+ jr nz, .asm_114fe7
+ jr .asm_11501e
+
+.asm_115015
+ ld hl, String_114000
+ call Function115217
+ and a
+ jr nz, .asm_114fe7
+
+.asm_11501e
+ xor a
+ ret
+; 115020
+
+Function115020: ; 115020
+ push hl
+ ld hl, wdc06
+ ld a, [hli]
+ ld [wdc01], a
+ ld [$ff8c], a
+ ld [$4000], a
+ ld a, [hli]
+ ld e, a
+ ld a, [hli]
+ ld d, a
+ ld a, [hli]
+ ld c, a
+ ld a, [hli]
+ ld b, a
+ pop hl
+.asm_115036
+ ld a, [hli]
+ and a
+ jr z, .asm_115046
+ ld [de], a
+ dec bc
+ ld a, b
+ or c
+ jr z, .asm_115056
+ inc e
+ call z, Function115059
+ jr .asm_115036
+
+.asm_115046
+ ld hl, wdc06
+ ld a, [wdc01]
+ ld [hli], a
+ ld a, e
+ ld [hli], a
+ ld a, d
+ ld [hli], a
+ ld a, c
+ ld [hli], a
+ ld [hl], b
+ xor a
+ ret
+
+.asm_115056
+ ld a, $1
+ ret
+; 115059
+
+Function115059: ; 115059
+ push bc
+ ld bc, wdc01
+ call Function115d80
+ pop bc
+ ret
+; 115062
+
+Function115062: ; 115062
+ ld hl, Bed
+ ld a, [hli]
+ and a
+ jr z, .asm_1150ae
+ ld c, a
+ ld a, [hli]
+ ld [wdc00], a
+ ld [$ff8c], a
+ ld [$4000], a
+ ld e, [hl]
+ inc hl
+ ld d, [hl]
+ ld b, $0
+ ld hl, wdc24
+ ld a, [wdc23]
+ cp $1
+ jr z, .asm_11509b
+ cp $2
+ jr z, .asm_115098
+ cp $3
+ jr nz, .asm_1150b2
+ ld a, $2c
+ ld [hli], a
+ ld a, $d
+ ld [hli], a
+ ld a, $a
+ ld [hli], a
+ ld a, $9
+ ld [hli], a
+ jr .asm_11509b
+
+.asm_115098
+ ld a, $2c
+ ld [hli], a
+
+.asm_11509b
+ call Function115d53
+ call Function1150b3
+ call Function115136
+ ld a, [wdc23]
+ inc a
+ cp $4
+ jr nz, .asm_1150ae
+ ld a, $2
+
+.asm_1150ae
+ ld [wdc23], a
+ xor a
+
+.asm_1150b2
+ ret
+; 1150b3
+
+Function1150b3: ; 1150b3
+ ld hl, wdc24
+ ld de, PartyMon5Defense
+ ld b, $0
+.asm_1150bb
+ ld c, $0
+ ld a, [hli]
+ cp $1b
+ jr z, .asm_1150c9
+ ld [de], a
+ inc de
+ and a
+ jr z, .asm_115133
+ jr .asm_1150bb
+
+.asm_1150c9
+ inc c
+ ld a, [hl]
+ cp $24
+ jr nz, .asm_1150bb
+ inc hl
+ inc c
+ ld a, [hl]
+ cp $42
+ jr z, .asm_1150dc
+ cp $40
+ jr z, .asm_1150dc
+ jr .asm_1150bb
+
+.asm_1150dc
+ push hl
+.asm_1150dd
+ inc c
+ ld a, [hli]
+ and a
+ jr z, .asm_115133
+ cp $1b
+ jr nz, .asm_1150dd
+ inc c
+ ld a, [hli]
+ cp $28
+ jr nz, .asm_1150dd
+ inc c
+ ld a, [hli]
+ cp $42
+ jr z, .asm_1150f8
+ cp $4a
+ jr z, .asm_1150f8
+ jr .asm_1150dd
+
+.asm_1150f8
+ ld a, l
+ ld [Console], a
+ ld a, h
+ ld [LeftOrnament], a
+ ld hl, String_114232
+.asm_115103
+ ld a, [hli]
+ and a
+ jr z, .asm_11510b
+ ld [de], a
+ inc de
+ jr .asm_115103
+
+.asm_11510b
+ pop hl
+ dec hl
+ dec hl
+ push de
+ call Function1158c2
+ pop de
+ ld h, d
+ ld l, e
+ ld c, [hl]
+ inc hl
+ ld b, [hl]
+ inc hl
+.asm_115119
+ ld a, [hli]
+ ld [de], a
+ inc de
+ dec bc
+ ld a, b
+ or c
+ jr nz, .asm_115119
+ ld a, $3f
+ ld [de], a
+ inc de
+ ld a, $3d
+ ld [de], a
+ inc de
+ ld a, [Console]
+ ld l, a
+ ld a, [LeftOrnament]
+ ld h, a
+ jr .asm_1150bb
+
+.asm_115133
+ xor a
+ ld [de], a
+ ret
+; 115136
+
+Function115136: ; 115136
+ ld hl, wdc06
+ ld a, [hli]
+ ld [wdc01], a
+ ld [$ff8c], a
+ ld [$4000], a
+ ld a, [hli]
+ ld e, a
+ ld a, [hli]
+ ld d, a
+ ld a, [hli]
+ ld c, a
+ ld a, [hli]
+ ld b, a
+ ld hl, PartyMon5Defense
+.asm_11514d
+ ld a, [hli]
+ and a
+ jr z, .asm_11515d
+ ld [de], a
+ dec bc
+ ld a, b
+ or c
+ jr z, .asm_11516d
+ inc e
+ call z, Function115170
+ jr .asm_11514d
+
+.asm_11515d
+ ld hl, wdc06
+ ld a, [wdc01]
+ ld [hli], a
+ ld a, e
+ ld [hli], a
+ ld a, d
+ ld [hli], a
+ ld a, c
+ ld [hli], a
+ ld [hl], b
+ xor a
+ ret
+
+.asm_11516d
+ ld a, $1
+ ret
+; 115170
+
+Function115170: ; 115170
+ push bc
+ ld bc, wdc01
+ call Function115d80
+ pop bc
+ ret
+; 115179
+
+Function115179: ; 115179
+ ld hl, wdc06
+ ld a, [hli]
+ ld [wdc01], a
+ ld [$ff8c], a
+ ld [$4000], a
+ ld a, [hli]
+ ld e, a
+ ld a, [hli]
+ ld d, a
+ ld a, [hli]
+ ld c, a
+ ld a, [hli]
+ ld b, a
+ ld hl, $013f
+ ld a, [hli]
+ ld [de], a
+ dec bc
+ ld a, b
+ or c
+ jr z, .asm_1151ef
+ inc e
+ call z, Function11520e
+ ld a, [hli]
+ ld [de], a
+ dec bc
+ ld a, b
+ or c
+ jr z, .asm_1151ef
+ inc e
+ call z, Function11520e
+ ld a, [hli]
+ ld [de], a
+ dec bc
+ ld a, b
+ or c
+ jr z, .asm_1151ef
+ inc e
+ call z, Function11520e
+ ld a, [hli]
+ ld [de], a
+ dec bc
+ ld a, b
+ or c
+ jr z, .asm_1151ef
+ inc e
+ call z, Function11520e
+ ld a, $2d
+ ld [de], a
+ dec bc
+ ld a, b
+ or c
+ jr z, .asm_1151ef
+ inc e
+ call z, Function11520e
+ ld a, [$014c]
+ ld h, a
+ and $f0
+ swap a
+ cp $a
+ jr nc, .asm_1151d8
+ add $30
+ jr .asm_1151da
+
+.asm_1151d8
+ add $37
+
+.asm_1151da
+ ld [de], a
+ dec bc
+ ld a, b
+ or c
+ jr z, .asm_1151ef
+ inc e
+ call z, Function11520e
+ ld a, h
+ and $f
+ cp $a
+ jr nc, .asm_1151f2
+ add $30
+ jr .asm_1151f4
+
+.asm_1151ef
+ ld a, $1
+ ret
+
+.asm_1151f2
+ add $37
+
+.asm_1151f4
+ ld [de], a
+ dec bc
+ ld a, b
+ or c
+ jr z, .asm_1151ef
+ inc e
+ call z, Function11520e
+ ld hl, wdc06
+ ld a, [wdc01]
+ ld [hli], a
+ ld a, e
+ ld [hli], a
+ ld a, d
+ ld [hli], a
+ ld a, c
+ ld [hli], a
+ ld [hl], b
+ xor a
+ ret
+; 11520e
+
+Function11520e: ; 11520e
+ push bc
+ ld bc, wdc01
+ call Function115d80
+ pop bc
+ ret
+; 115217
+
+Function115217: ; 115217
+ push hl
+ ld hl, wdc06
+ ld a, [hli]
+ ld [wdc01], a
+ ld [$ff8c], a
+ ld [$4000], a
+ ld a, [hli]
+ ld e, a
+ ld a, [hli]
+ ld d, a
+ ld a, [hli]
+ ld c, a
+ ld a, [hli]
+ ld b, a
+ pop hl
+.asm_11522d
+ ld a, [hli]
+ and a
+ jr z, .asm_11523d
+ ld [de], a
+ dec bc
+ ld a, b
+ or c
+ jr z, .asm_115262
+ inc e
+ call z, Function115286
+ jr .asm_11522d
+
+.asm_11523d
+ ld a, [wdc03]
+ cp $b
+ jr z, .asm_115278
+ cp $c
+ jr z, .asm_115278
+ cp $e
+ jr z, .asm_115252
+ cp $f
+ jr z, .asm_115265
+ jr .asm_115262
+
+.asm_115252
+ ld hl, wdc06
+ ld a, [wdc01]
+ ld [hli], a
+ ld a, e
+ ld [hli], a
+ ld a, d
+ ld [hli], a
+ ld a, c
+ ld [hli], a
+ ld [hl], b
+ xor a
+ ret
+
+.asm_115262
+ ld a, $1
+ ret
+
+.asm_115265
+ ld h, $2
+.asm_115267
+ ld a, $2d
+ ld [de], a
+ dec bc
+ ld a, b
+ or c
+ jr z, .asm_115262
+ inc e
+ call z, Function115286
+ dec h
+ jr nz, .asm_115267
+ jr .asm_115252
+
+.asm_115278
+ ld a, $22
+ ld [de], a
+ dec bc
+ ld a, b
+ or c
+ jr z, .asm_115262
+ inc e
+ call z, Function115286
+ jr .asm_115252
+; 115286
+
+Function115286: ; 115286
+ push bc
+ ld bc, wdc01
+ call Function115d80
+ pop bc
+ ret
+; 11528f
+
+Function11528f: ; 11528f
+ ld hl, Bed
+ ld c, [hl]
+ inc hl
+ ld a, [hli]
+ ld [wdc00], a
+ ld [$ff8c], a
+ ld [$4000], a
+ ld a, [hli]
+ ld e, a
+ ld a, [hli]
+ ld d, a
+ ld hl, wdc24
+.asm_1152a4
+ ld a, [de]
+ ld [hli], a
+ inc e
+ call z, Function1152af
+ dec c
+ jr nz, .asm_1152a4
+ ld [hl], c
+ ret
+; 1152af
+
+Function1152af: ; 1152af
+ push bc
+ ld bc, wdc00
+ call Function115d80
+ pop bc
+ ret
+; 1152b8
+
+Function1152b8: ; 1152b8
+ push bc
+ call Function11537d
+ push de
+ ld h, d
+ ld l, e
+ ld a, [hli]
+ ld b, a
+ ld c, $1
+ call Function1153d2
+ pop de
+ and a
+ jr nz, .asm_1152f9
+.asm_1152ca
+ ld hl, wdc0d
+ ld e, [hl]
+ inc hl
+ ld d, [hl]
+.asm_1152d0
+ ld a, [wdc03]
+ cp $3
+ jr nz, .asm_1152d8
+ push de
+
+.asm_1152d8
+ cp $5
+ jr nz, .asm_1152e7
+ pop hl
+ ld a, [hli]
+ ld b, a
+ ld c, $3
+ call Function1153d2
+ and a
+ jr nz, .asm_1152f9
+
+.asm_1152e7
+ ld a, [de]
+ inc de
+ and a
+ jr nz, .asm_115301
+ ld a, [wdc03]
+ cp $6
+ jr z, .asm_115335
+ inc a
+ ld [wdc03], a
+ jr .asm_1152d0
+
+.asm_1152f9
+ pop hl
+ ld a, $1
+ ld b, $83
+ jp Function11425c
+
+.asm_115301
+ ld hl, wdc0d
+ ld [hl], e
+ inc hl
+ ld [hl], d
+.asm_115307
+ ld [wdc05], a
+ ld a, $1
+ ld [wdc04], a
+ call Function1153b5
+ call Function114f59
+ and a
+ jr nz, .asm_1152f9
+ ld a, [wdc05]
+ dec a
+ jr nz, .asm_115307
+ ld a, [wdc03]
+ inc a
+ ld [wdc03], a
+ call Function114ea0
+ and a
+ jr nz, .asm_1152f9
+ ld [wdc23], a
+ ld a, [wdc03]
+ cp $6
+ jr nz, .asm_1152ca
+
+.asm_115335
+ call Function1153b5
+ xor a
+ ld [wdc23], a
+ call Function114f59
+ and a
+ jr nz, .asm_1152f9
+ call Function114ea0
+ and a
+ jr nz, .asm_1152f9
+ ld a, [wdc03]
+ inc a
+ ld [wdc03], a
+ cp $9
+ jr nz, .asm_115335
+ pop bc
+ ld a, b
+ and a
+ jr z, .asm_11536b
+ call Function1153b5
+ xor a
+ ld [wdc23], a
+ call Function114f59
+ and a
+ jr nz, .asm_1152f9
+ call Function114ea0
+ and a
+ jr nz, .asm_1152f9
+
+.asm_11536b
+ ld hl, wdc09
+ ld a, [hli]
+ cpl
+ ld e, a
+ ld a, [hli]
+ cpl
+ ld d, a
+ inc de
+ ld a, [hli]
+ ld h, [hl]
+ ld l, a
+ add hl, de
+ xor a
+ jp Function11425c
+; 11537d
+
+Function11537d: ; 11537d
+ ld hl, wdc06
+ ld a, [de]
+ ld [hli], a
+ inc de
+ ld a, [de]
+ ld [hli], a
+ inc de
+ ld a, [de]
+ ld [hli], a
+ inc de
+ ld a, [de]
+ ld [hli], a
+ ld b, a
+ inc de
+ ld a, [de]
+ ld [hli], a
+ inc hl
+ ld a, [de]
+ ld [hld], a
+ ld a, b
+ ld [hli], a
+ inc de
+ ld hl, RightOrnament
+ ld a, [de]
+ ld [hli], a
+ inc de
+ ld a, [de]
+ ld [hli], a
+ inc de
+ ld a, [de]
+ ld [hli], a
+ inc de
+ ld a, [de]
+ ld [hli], a
+ inc de
+ ld a, [de]
+ ld [hli], a
+ inc de
+ ld hl, wdc0d
+ ld [hl], e
+ inc hl
+ ld [hl], d
+ xor a
+ ld [wdc03], a
+ ld [wdc23], a
+ ret
+; 1153b5
+
+Function1153b5: ; 1153b5
+ ld hl, wdc0d
+ ld e, [hl]
+ inc hl
+ ld d, [hl]
+ inc hl
+ inc hl
+ ld a, [de]
+ ld [hli], a
+ inc de
+ ld a, [de]
+ ld [hli], a
+ inc de
+ ld a, [de]
+ ld [hl], a
+ inc de
+ ld a, [de]
+ ld [Bed], a
+ inc de
+ ld hl, wdc0d
+ ld [hl], e
+ inc hl
+ ld [hl], d
+ ret
+; 1153d2
+
+Function1153d2: ; 1153d2
+ ld a, [wdc03]
+ ld d, a
+ ld a, [wdc04]
+ ld e, a
+ push de
+ xor a
+ ld [wdc03], a
+ ld [wdc04], a
+ ld a, $24
+ ld [Console], a
+ ld a, $dc
+ ld [LeftOrnament], a
+ push bc
+ jr .asm_1153f4
+
+.asm_1153ef
+ ld a, [hli]
+ and a
+ jr z, .asm_115426
+ ld b, a
+
+.asm_1153f4
+ push bc
+.asm_1153f5
+ ld a, [hli]
+ ld [wdc00], a
+ ld [$ff8c], a
+ ld [$4000], a
+ ld e, [hl]
+ inc hl
+ ld d, [hl]
+ inc hl
+ ld c, [hl]
+ inc hl
+ push hl
+ ld a, [Console]
+ ld l, a
+ ld a, [LeftOrnament]
+ ld h, a
+ push bc
+ ld b, $0
+ call Function115d53
+ inc hl
+ ld [hl], a
+ pop bc
+ ld a, l
+ ld e, a
+ ld [Console], a
+ ld a, h
+ ld d, a
+ ld [LeftOrnament], a
+ dec b
+ jr z, .asm_11542b
+ pop hl
+ jr .asm_1153f5
+
+.asm_115426
+ dec c
+ jr nz, .asm_1153ef
+ jr .asm_115430
+
+.asm_11542b
+ pop hl
+ pop bc
+ dec c
+ jr nz, .asm_1153ef
+
+.asm_115430
+ ld a, l
+ ld [Console], a
+ ld a, h
+ ld [LeftOrnament], a
+ xor a
+ ld [de], a
+ ld hl, wdc24
+.asm_11543d
+ ld a, [hli]
+ and a
+ jr nz, .asm_11543d
+ ld a, [hl]
+ and a
+ jr z, .asm_115457
+ dec hl
+ ld a, $2c
+ ld [hli], a
+ jr .asm_11543d
+
+.asm_11544b
+ pop hl
+ ld a, h
+ ld [wdc03], a
+ ld a, l
+ ld [wdc04], a
+ ld a, $1
+ ret
+
+.asm_115457
+ ld hl, wdc24
+ call Function114d99
+ ld hl, $ddc8
+.asm_115460
+ ld a, [hli]
+ and a
+ jr z, .asm_11546d
+ cp $2c
+ jr nz, .asm_115460
+ dec hl
+ xor a
+ ld [hli], a
+ jr .asm_115460
+
+.asm_11546d
+ pop de
+ ld a, e
+ cp $1
+ jr z, .asm_115477
+ xor a
+ ld [hli], a
+ jr .asm_115478
+
+.asm_115477
+ dec bc
+
+.asm_115478
+ ld hl, $dc18
+ ld a, [hli]
+ ld h, [hl]
+ ld l, a
+ ld a, b
+ cp h
+ jr c, .asm_11548c
+ jr nz, .asm_11544b
+ ld a, c
+ cp l
+ jr c, .asm_11548c
+ jr z, .asm_11548c
+ jr .asm_11544b
+
+.asm_11548c
+ ld hl, $dc18
+ ld a, c
+ cpl
+ ld e, a
+ ld a, b
+ cpl
+ ld d, a
+ inc de
+ ld a, [hli]
+ ld h, [hl]
+ ld l, a
+ add hl, de
+ ld de, $dc18
+ ld a, l
+ ld [de], a
+ inc de
+ ld a, h
+ ld [de], a
+ ld hl, RightOrnament
+ ld a, [hli]
+ ld [wdc01], a
+ ld [$ff8c], a
+ ld [$4000], a
+ ld e, [hl]
+ inc hl
+ ld d, [hl]
+ ld hl, $ddc8
+ call Function115d6a
+ ld hl, RightOrnament
+ ld a, [wdc01]
+ ld [hli], a
+ ld [hl], e
+ inc hl
+ ld [hl], d
+ ld a, [Console]
+ ld e, a
+ ld a, [LeftOrnament]
+ ld d, a
+ pop hl
+ ld a, h
+ ld [wdc03], a
+ ld a, l
+ ld [wdc04], a
+ xor a
+ ret
+; 1154d4
+
+Function1154d4: ; 1154d4
+ xor a
+ ld [wdc23], a
+ call Function1155af
+ call Function11560a
+ and a
+ jr nz, .asm_11552c
+ call Function1155d1
+ ld a, [RightOrnament]
+ dec a
+ ld [RightOrnament], a
+ and a
+ jp z, .asm_115577
+ cp $1
+ jr nz, .asm_115531
+ xor a
+ ld [wdc1c], a
+.asm_1154f7
+ ld a, [BigDoll]
+ cp $2
+ jr z, .asm_115502
+ cp $3
+ jr z, .asm_11550f
+
+.asm_115502
+ ld a, $a
+ ld [wdc03], a
+ call Function114f59
+ and a
+ jr z, .asm_11551a
+ jr .asm_11552c
+
+.asm_11550f
+ ld a, $c
+ ld [wdc03], a
+ call Function114f59
+ and a
+ jr nz, .asm_11552c
+
+.asm_11551a
+ call Function114ea0
+ and a
+ jr nz, .asm_11552c
+ call Function114ea0
+ and a
+ jr nz, .asm_11552c
+ call Function11560a
+ and a
+ jr z, .asm_1155a0
+
+.asm_11552c
+ ld a, $1
+ jp Function11425c
+
+.asm_115531
+ ld a, $1
+ ld [wdc1c], a
+ ld a, $b
+ ld [wdc03], a
+ call Function114f59
+ and a
+ jr nz, .asm_11552c
+ call Function114ea0
+ and a
+ jr nz, .asm_11552c
+.asm_115547
+ call Function114ea0
+ and a
+ jr nz, .asm_11552c
+ ld a, $e
+ ld [wdc03], a
+ call Function114f59
+ and a
+ jr nz, .asm_11552c
+ call Function114ea0
+ and a
+ jr nz, .asm_11552c
+ jr .asm_1154f7
+
+.asm_115560
+ call Function114ea0
+ and a
+ jr nz, .asm_11552c
+ ld a, [wdc1c]
+ and a
+ jr z, .asm_11557d
+ ld a, $f
+ ld [wdc03], a
+ call Function114f59
+ and a
+ jr nz, .asm_11552c
+
+.asm_115577
+ call Function114ea0
+ and a
+ jr nz, .asm_11552c
+
+.asm_11557d
+ ld a, $10
+ ld [wdc03], a
+ call Function114f59
+ and a
+ jr nz, .asm_11552c
+ call Function114ea0
+ and a
+ jr nz, .asm_11552c
+ ld hl, wdc09
+ ld a, [hli]
+ cpl
+ ld e, a
+ ld a, [hli]
+ cpl
+ ld d, a
+ inc de
+ ld a, [hli]
+ ld h, [hl]
+ ld l, a
+ add hl, de
+ xor a
+ jp Function11425c
+
+.asm_1155a0
+ ld a, [RightOrnament]
+ dec a
+ ld [RightOrnament], a
+ and a
+ jr z, .asm_115560
+ call Function1155d1
+ jr .asm_115547
+; 1155af
+
+Function1155af: ; 1155af
+ ld hl, wdc06
+ ld a, [de]
+ ld [hli], a
+ inc de
+ ld a, [de]
+ ld [hli], a
+ inc de
+ ld a, [de]
+ ld [hli], a
+ inc de
+ ld a, [de]
+ ld [hli], a
+ ld b, a
+ inc de
+ ld a, [de]
+ ld [hli], a
+ ld [hl], b
+ inc hl
+ ld [hli], a
+ inc de
+ ld a, [de]
+ ld [RightOrnament], a
+ inc de
+ ld a, e
+ ld [hli], a
+ ld [hl], d
+ call Function1155d1
+ ret
+; 1155d1
+
+Function1155d1: ; 1155d1
+ ld a, [wdc0d]
+ ld l, a
+ ld a, [wdc0e]
+ ld h, a
+ ld a, [hli]
+ ld [BigDoll], a
+ cp $3
+ jr nz, .asm_1155f0
+ ld de, Carpet
+ ld a, [hli]
+ ld [de], a
+ inc de
+ ld a, [hli]
+ ld [de], a
+ inc de
+ ld a, [hli]
+ ld [de], a
+ ld a, [hli]
+ ld [Bed], a
+
+.asm_1155f0
+ ld de, wdc17
+ ld a, [hli]
+ ld [de], a
+ inc de
+ ld a, [hli]
+ ld [de], a
+ inc de
+ ld a, [hli]
+ ld [de], a
+ inc de
+ ld a, [hli]
+ ld [de], a
+ inc de
+ ld a, [hli]
+ ld [de], a
+ ld a, l
+ ld [wdc0d], a
+ ld a, h
+ ld [wdc0e], a
+ ret
+; 11560a
+
+Function11560a: ; 11560a
+ ld a, [wdc06]
+ ld [wdc01], a
+ ld a, [wdc17]
+ ld [wdc00], a
+ ld [$ff8c], a
+ ld [$4000], a
+ ld hl, wdc1a
+ ld c, [hl]
+ inc hl
+ ld b, [hl]
+ ld a, [wdc0a]
+ cp b
+ jp c, .asm_1156b1
+ jr nz, .asm_115631
+ ld a, [wdc09]
+ cp c
+ jp c, .asm_1156b1
+
+.asm_115631
+ ld a, b
+ or c
+ jr z, .asm_1156a9
+ ld a, [wdc09]
+ ld l, a
+ ld a, [wdc0a]
+ ld h, a
+ ld a, c
+ cpl
+ ld e, a
+ ld a, b
+ cpl
+ ld d, a
+ inc de
+ add hl, de
+ ld a, l
+ ld [wdc09], a
+ ld a, h
+ ld [wdc0a], a
+.asm_11564d
+ ld a, $3
+ cp b
+ jr c, .asm_1156b6
+ jr nz, .asm_115659
+ ld a, $db
+ cp c
+ jr c, .asm_1156b6
+
+.asm_115659
+ ld a, [wdc1a]
+ ld e, a
+ ld a, [wdc1b]
+ ld d, a
+ ld a, c
+ cpl
+ ld l, a
+ ld a, b
+ cpl
+ ld h, a
+ inc hl
+ add hl, de
+ ld a, l
+ ld [wdc1a], a
+ ld a, h
+ ld [wdc1b], a
+ push bc
+ ld hl, $dc18
+ ld e, [hl]
+ inc hl
+ ld d, [hl]
+ ld hl, wdc24
+ call Function115d53
+ ld hl, $dc18
+ ld [hl], e
+ inc hl
+ ld [hl], d
+ pop bc
+ ld a, [wdc01]
+ ld [$ff8c], a
+ ld [$4000], a
+ ld hl, wdc07
+ ld e, [hl]
+ inc hl
+ ld d, [hl]
+ ld hl, wdc24
+ call Function115d6a
+ ld hl, wdc07
+ ld [hl], e
+ inc hl
+ ld [hl], d
+ ld hl, wdc1a
+ ld c, [hl]
+ inc hl
+ ld b, [hl]
+ ld a, b
+ or c
+ jr nz, .asm_11564d
+
+.asm_1156a9
+ ld a, [wdc01]
+ ld [wdc06], a
+ xor a
+ ret
+
+.asm_1156b1
+ ld a, $1
+ ld b, $83
+ ret
+
+.asm_1156b6
+ ld a, $3
+ cpl
+ ld h, a
+ ld a, $db
+ cpl
+ ld l, a
+ add hl, bc
+ ld de, wdc1a
+ ld a, l
+ ld [de], a
+ inc de
+ ld a, h
+ ld [de], a
+ ld bc, $03db
+ jr .asm_115659
+; 1156cc
+
+Function1156cc: ; 1156cc
+ ld a, [wdc23]
+ and a
+ jp z, Function11425c
+ cp $2
+ jr z, .asm_1156fa
+ cp $3
+ jr z, .asm_1156fd
+ cp $4
+ jr z, .asm_1156fd
+ cp $5
+ jr z, .asm_115716
+ cp $ff
+ jr z, .asm_11572b
+ cp $1
+ jp nz, Function11425c
+ call Function115732
+ call Function11575c
+ ld a, h
+ ld [Poster], a
+ ld a, l
+ ld [Plant], a
+
+.asm_1156fa
+ call Function1157d0
+
+.asm_1156fd
+ call Function11581e
+ and a
+ jr nz, .asm_11572b
+ ld a, [wdc23]
+ cp $5
+ jr z, .asm_115716
+ ld a, [Poster]
+ ld h, a
+ ld a, [Plant]
+ ld l, a
+ xor a
+ jp Function11425c
+
+.asm_115716
+ ld hl, wdc0a
+ ld a, [hli]
+ cpl
+ ld e, a
+ ld a, [hli]
+ cpl
+ ld d, a
+ inc de
+ ld a, [hli]
+ ld h, [hl]
+ ld l, a
+ add hl, de
+ xor a
+ ld [wdc23], a
+ jp Function11425c
+
+.asm_11572b
+ ld a, $1
+ ld b, $83
+ jp Function11425c
+; 115732
+
+Function115732: ; 115732
+ ld hl, wdc02
+ ld a, [de]
+ ld [hli], a
+ inc de
+ ld a, [de]
+ ld [hli], a
+ inc de
+ ld a, [de]
+ ld [hli], a
+ inc de
+ ld a, [de]
+ ld [hli], a
+ inc de
+ ld a, [de]
+ ld [hli], a
+ inc de
+ ld a, [de]
+ ld [hli], a
+ inc de
+ ld a, [de]
+ ld [hli], a
+ inc de
+ ld a, [de]
+ ld [hli], a
+ inc de
+ ld a, [de]
+ ld [hli], a
+ inc de
+ ld a, [de]
+ ld [hli], a
+ dec de
+ ld a, [de]
+ ld [hli], a
+ inc de
+ ld a, [de]
+ ld [hli], a
+ ld a, c
+ ld [hli], a
+ ld [hl], b
+ ret
+; 11575c
+
+Function11575c: ; 11575c
+ ld hl, wdc05
+ ld a, [hli]
+ ld h, [hl]
+ ld l, a
+ ld e, $10
+ ld b, $0
+ ld c, b
+ ld d, b
+ ld a, $3
+.asm_11576a
+ rl l
+ rl h
+ rl d
+ cp d
+ jr c, .asm_11577c
+ rl c
+ rl b
+ dec e
+ jr nz, .asm_11576a
+ jr .asm_11578a
+
+.asm_11577c
+ ld a, d
+ sub $3
+ ld d, a
+ ld a, $3
+ scf
+ rl c
+ rl b
+ dec e
+ jr nz, .asm_11576a
+
+.asm_11578a
+ ld a, d
+ and a
+ jr z, .asm_11578f
+ inc bc
+
+.asm_11578f
+ sla c
+ rl b
+ sla c
+ rl b
+ ld h, b
+ ld l, c
+ push hl
+ ld e, $10
+ ld b, $0
+ ld c, b
+ ld d, b
+ ld a, $40
+.asm_1157a2
+ rl l
+ rl h
+ rl d
+ cp d
+ jr c, .asm_1157b4
+ rl c
+ rl b
+ dec e
+ jr nz, .asm_1157a2
+ jr .asm_1157c3
+
+.asm_1157b4
+ ld a, d
+ sub $40
+ ld d, a
+ ld a, $40
+ scf
+ rl c
+ rl b
+ dec e
+ jr nz, .asm_1157a2
+ inc bc
+
+.asm_1157c3
+ and a
+ sla c
+ rl b
+ pop hl
+ add hl, bc
+ ld a, $2
+ ld [wdc23], a
+ ret
+; 1157d0
+
+Function1157d0: ; 1157d0
+ ld hl, wdc05
+ ld a, [hli]
+ ld h, [hl]
+ ld l, a
+ ld a, [wdc0e]
+ ld c, a
+ ld a, [Bed]
+ ld b, a
+ cp h
+ jr c, .asm_1157eb
+ jr nz, .asm_1157e9
+ ld a, c
+ cp l
+ jr c, .asm_1157eb
+ jr z, .asm_1157eb
+
+.asm_1157e9
+ ld b, h
+ ld c, l
+
+.asm_1157eb
+ push bc
+ ld a, b
+ cpl
+ ld b, a
+ ld a, c
+ cpl
+ ld c, a
+ inc bc
+ add hl, bc
+ ld a, l
+ ld [wdc05], a
+ ld a, h
+ ld [wdc06], a
+ ld a, h
+ or l
+ jr nz, .asm_11580f
+ pop bc
+ ld a, c
+ ld [wdc0e], a
+ ld a, b
+ ld [Bed], a
+ ld a, $4
+ ld [wdc23], a
+ ret
+
+.asm_11580f
+ pop bc
+ ld a, c
+ ld [wdc0e], a
+ ld a, b
+ ld [Bed], a
+ ld a, $3
+ ld [wdc23], a
+ ret
+; 11581e
+
+Function11581e: ; 11581e
+ ld a, [wdc23]
+ and a
+ ret z
+ ld a, [wdc0e]
+ ld c, a
+ ld a, [Bed]
+ ld b, a
+ ld hl, wdc02
+ ld a, [hli]
+ ld [wdc00], a
+ ld [$ff8c], a
+ ld [$4000], a
+ ld e, [hl]
+ inc hl
+ ld d, [hl]
+ ld hl, wdc24
+ push bc
+ call Function115d53
+ pop bc
+ ld hl, wdc02
+ ld a, [wdc00]
+ ld [hli], a
+ ld [hl], e
+ inc hl
+ ld [hl], d
+ ld hl, wdc24
+ ld de, PartyMon5Defense
+ call Function1158c2
+ ld hl, PartyMon5Defense
+ ld c, [hl]
+ inc hl
+ ld b, [hl]
+ inc hl
+ push hl
+ ld a, [wdc0a]
+ ld l, a
+ ld a, [wdc0b]
+ ld h, a
+ cp b
+ jr c, .asm_1158bb
+ jr nz, .asm_11586e
+ ld a, l
+ cp c
+ jr c, .asm_1158bb
+
+.asm_11586e
+ push bc
+ ld a, b
+ cpl
+ ld b, a
+ ld a, c
+ cpl
+ ld c, a
+ inc bc
+ add hl, bc
+ ld a, l
+ ld [wdc0a], a
+ ld a, h
+ ld [wdc0b], a
+ pop bc
+ pop hl
+ ld hl, wdc07
+ ld a, [hli]
+ ld [wdc01], a
+ ld [$ff8c], a
+ ld [$4000], a
+ ld e, [hl]
+ inc hl
+ ld d, [hl]
+ ld hl, PartyMon5Speed
+ call Function115d6a
+ ld hl, wdc07
+ ld a, [wdc01]
+ ld [hli], a
+ ld a, e
+ ld [hli], a
+ ld [hl], d
+ ld a, [wdc23]
+ cp $3
+ jr z, .asm_1158b4
+ cp $4
+ jr z, .asm_1158ad
+ jr .asm_1158bc
+
+.asm_1158ad
+ ld a, $5
+ ld [wdc23], a
+ jr .asm_1158b9
+
+.asm_1158b4
+ ld a, $2
+ ld [wdc23], a
+
+.asm_1158b9
+ xor a
+ ret
+
+.asm_1158bb
+ pop hl
+
+.asm_1158bc
+ ld a, $ff
+ ld [wdc23], a
+ ret
+; 1158c2
+
+Function1158c2: ; 1158c2
+ ld a, e
+ ld [wdc20], a
+ ld a, d
+ ld [wdc21], a
+ xor a
+ ld [wdc22], a
+ xor a
+ ld [de], a
+ inc de
+ ld [de], a
+ inc de
+ ld a, c
+ ld [wdc19], a
+ ld a, b
+ ld [wdc1a], a
+ ld c, e
+ ld b, d
+ ld e, l
+ ld d, h
+ ld l, c
+ ld h, b
+ xor a
+ ld [wdc1f], a
+
+.asm_1158e5
+ ld b, $3
+ push hl
+ ld hl, wdc1b
+.asm_1158eb
+ ld a, [de]
+ inc de
+ ld [hli], a
+ dec b
+ jr nz, .asm_1158eb
+ ld a, [wdc19]
+ ld c, a
+ ld a, [wdc1a]
+ ld b, a
+ xor a
+ or b
+ jr nz, .asm_115914
+ ld a, $2
+ cp c
+ jr c, .asm_115914
+ push hl
+ dec hl
+ ld a, c
+ ld [wdc1f], a
+.asm_115908
+ xor a
+ ld [hld], a
+ inc c
+ ld a, $3
+ cp c
+ jr nz, .asm_115908
+ pop hl
+ ld bc, $0003
+
+.asm_115914
+ dec bc
+ dec bc
+ dec bc
+ ld a, c
+ ld [wdc19], a
+ ld a, b
+ ld [wdc1a], a
+ push de
+ push hl
+ ld hl, wdc20
+ ld a, [hli]
+ ld h, [hl]
+ ld l, a
+ ld e, [hl]
+ inc hl
+ ld d, [hl]
+ inc de
+ inc de
+ inc de
+ inc de
+ ld [hl], d
+ dec hl
+ ld [hl], e
+ pop hl
+ dec hl
+ ld c, [hl]
+ dec hl
+ ld b, [hl]
+ dec hl
+ ld a, [hl]
+ ld d, a
+ srl a
+ srl a
+ ld [hli], a
+ ld a, $3
+ and d
+ ld d, a
+ ld a, $f0
+ and b
+ or d
+ swap a
+ ld [hli], a
+ ld a, $f
+ and b
+ ld d, a
+ ld a, c
+ and $c0
+ or d
+ rlca
+ rlca
+ ld [hli], a
+ ld a, $3f
+ and c
+ ld [hld], a
+ dec hl
+ dec hl
+ pop de
+ ld b, h
+ ld c, l
+ pop hl
+ ld a, [bc]
+ inc bc
+ call Function1159dc
+ ld [hli], a
+ ld a, [bc]
+ inc bc
+ call Function1159dc
+ ld [hli], a
+ ld a, [bc]
+ inc bc
+ call Function1159dc
+ ld [hli], a
+ ld a, [bc]
+ inc bc
+ call Function1159dc
+ ld [hli], a
+ ld a, [wdc22]
+ inc a
+ cp $10
+ jr nz, .asm_1159b1
+ push af
+ push bc
+ ld a, [wdc19]
+ ld b, a
+ ld a, [wdc1a]
+ or b
+ jr nz, .asm_115998
+ ld a, [wdc05]
+ ld b, a
+ ld a, [wdc06]
+ or b
+ jr nz, .asm_115998
+ pop bc
+ pop af
+ jr .asm_1159c4
+
+.asm_115998
+ pop bc
+ pop af
+ ld a, $d
+ ld [hli], a
+ ld a, $a
+ ld [hli], a
+ push hl
+ ld hl, wdc20
+ ld a, [hli]
+ ld h, [hl]
+ ld l, a
+ ld a, [hli]
+ ld c, a
+ ld b, [hl]
+ inc bc
+ inc bc
+ ld a, b
+ ld [hld], a
+ ld [hl], c
+ pop hl
+ xor a
+
+.asm_1159b1
+ ld [wdc22], a
+ ld a, [wdc19]
+ cp $0
+ jp nz, .asm_1158e5
+ ld a, [wdc1a]
+ cp $0
+ jp nz, .asm_1158e5
+
+.asm_1159c4
+ ld a, [wdc1f]
+ cp $0
+ jr z, .asm_1159d8
+ push hl
+ dec hl
+ ld b, a
+.asm_1159ce
+ ld a, $3d
+ ld [hld], a
+ inc b
+ ld a, $3
+ cp b
+ jr nz, .asm_1159ce
+ pop hl
+
+.asm_1159d8
+ ld a, $0
+ ld [hl], a
+ ret
+; 1159dc
+
+Function1159dc: ; 1159dc
+ cp $1a
+ jr c, .asm_1159ef
+ cp $34
+ jr c, .asm_1159f2
+ cp $3e
+ jr c, .asm_1159f5
+ cp $3e
+ jr z, .asm_1159f8
+ ld a, $2f
+ ret
+
+.asm_1159ef
+ add $41
+ ret
+
+.asm_1159f2
+ add $47
+ ret
+
+.asm_1159f5
+ sub $4
+ ret
+
+.asm_1159f8
+ ld a, $2b
+ ret
+; 1159fb
+
+Function1159fb: ; 1159fb
+ ld a, [wdc23]
+ and a
+ jp z, Function11425c
+ cp $2
+ jr z, .asm_115a29
+ cp $3
+ jr z, .asm_115a2c
+ cp $4
+ jr z, .asm_115a2c
+ cp $5
+ jr z, .asm_115a45
+ cp $ff
+ jr z, .asm_115a5a
+ cp $1
+ jp nz, Function11425c
+ call Function115732
+ call Function115a5f
+ ld a, h
+ ld [Plant], a
+ ld a, l
+ ld [Poster], a
+
+.asm_115a29
+ call Function115ab0
+
+.asm_115a2c
+ call Function115b00
+ and a
+ jr nz, .asm_115a5a
+ ld a, [wdc23]
+ cp $5
+ jr z, .asm_115a45
+ ld a, [Poster]
+ ld h, a
+ ld a, [Plant]
+ ld l, a
+ xor a
+ jp Function11425c
+
+.asm_115a45
+ ld hl, wdc0a
+ ld a, [hli]
+ cpl
+ ld e, a
+ ld a, [hli]
+ cpl
+ ld d, a
+ inc de
+ ld a, [hli]
+ ld h, [hl]
+ ld l, a
+ add hl, de
+ xor a
+ ld [wdc23], a
+ jp Function11425c
+
+.asm_115a5a
+ ld a, $1
+ jp Function11425c
+; 115a5f
+
+Function115a5f: ; 115a5f
+ ld hl, wdc05
+ ld a, [hli]
+ ld h, [hl]
+ ld l, a
+ push hl
+ ld e, $10
+ ld b, $0
+ ld c, b
+ ld d, b
+ ld a, $42
+.asm_115a6e
+ rl l
+ rl h
+ rl d
+ cp d
+ jr c, .asm_115a80
+ rl c
+ rl b
+ dec e
+ jr nz, .asm_115a6e
+ jr .asm_115a8e
+
+.asm_115a80
+ ld a, d
+ sub $42
+ ld d, a
+ ld a, $42
+ scf
+ rl c
+ rl b
+ dec e
+ jr nz, .asm_115a6e
+
+.asm_115a8e
+ sla c
+ rl b
+ pop hl
+ ld a, b
+ cpl
+ ld b, a
+ ld a, c
+ cpl
+ ld c, a
+ inc bc
+ add hl, bc
+ srl h
+ rr l
+ srl h
+ rr l
+ ld b, h
+ ld c, l
+ sla c
+ rl b
+ add hl, bc
+ ld a, $2
+ ld [wdc23], a
+ ret
+; 115ab0
+
+Function115ab0: ; 115ab0
+ ld hl, wdc05
+ ld a, [hli]
+ ld h, [hl]
+ ld l, a
+ ld a, [wdc0e]
+ ld c, a
+ ld a, [Bed]
+ ld b, a
+ cp h
+ jr c, .asm_115acb
+ jr nz, .asm_115ac9
+ ld a, c
+ cp l
+ jr c, .asm_115acb
+ jr z, .asm_115acb
+
+.asm_115ac9
+ ld b, h
+ ld c, l
+
+.asm_115acb
+ push bc
+ ld a, b
+ cpl
+ ld b, a
+ ld a, c
+ cpl
+ ld c, a
+ inc bc
+ add hl, bc
+ ld a, l
+ ld [wdc05], a
+ ld a, h
+ ld [wdc06], a
+ ld a, h
+ or l
+ jr nz, .asm_115af0
+ pop bc
+ ld a, c
+ ld [wdc0e], a
+ ld a, b
+ ld [Bed], a
+ ld a, $4
+ ld [wdc23], a
+ xor a
+ ret
+
+.asm_115af0
+ pop bc
+ ld a, c
+ ld [wdc0e], a
+ ld a, b
+ ld [Bed], a
+ ld a, $3
+ ld [wdc23], a
+ xor a
+ ret
+; 115b00
+
+Function115b00: ; 115b00
+ ld a, [wdc23]
+ and a
+ ret z
+ ld a, [wdc0e]
+ ld c, a
+ ld a, [Bed]
+ ld b, a
+ ld hl, wdc02
+ ld a, [hli]
+ ld [wdc00], a
+ ld [$ff8c], a
+ ld [$4000], a
+ ld e, [hl]
+ inc hl
+ ld d, [hl]
+ ld hl, PartyMon5Defense
+ push bc
+ call Function115bc8
+ pop hl
+ and a
+ jr z, .asm_115b43
+ cp $2
+ jr z, .asm_115b3b
+ ld a, [wdc23]
+ cp $4
+ jr z, .asm_115b43
+ inc hl
+ inc hl
+ jr .asm_115b43
+
+.asm_115b36
+ pop hl
+ ld b, $83
+ jr .asm_115b3d
+
+.asm_115b3b
+ ld b, $81
+
+.asm_115b3d
+ ld a, $ff
+ ld [wdc23], a
+ ret
+
+.asm_115b43
+ ld a, [Carpet]
+ add a
+ cpl
+ ld c, a
+ ld b, $ff
+ inc bc
+ add hl, bc
+ ld b, h
+ ld c, l
+ ld hl, wdc02
+ ld a, [wdc00]
+ ld [hli], a
+ ld [hl], e
+ inc hl
+ ld [hl], d
+ ld hl, PartyMon5Defense
+ ld de, wdc24
+ call Function115c49
+ ld hl, wdc24
+ ld c, [hl]
+ inc hl
+ ld b, [hl]
+ inc hl
+ push hl
+ ld a, [wdc0a]
+ ld l, a
+ ld a, [wdc0b]
+ ld h, a
+ cp b
+ jr c, .asm_115b36
+ jr nz, .asm_115b7b
+ ld a, l
+ cp c
+ jr c, .asm_115b36
+
+.asm_115b7b
+ push bc
+ ld a, b
+ cpl
+ ld b, a
+ ld a, c
+ cpl
+ ld c, a
+ inc bc
+ add hl, bc
+ ld a, l
+ ld [wdc0a], a
+ ld a, h
+ ld [wdc0b], a
+ pop bc
+ pop hl
+ ld hl, wdc07
+ ld a, [hli]
+ ld [wdc01], a
+ ld [$ff8c], a
+ ld [$4000], a
+ ld e, [hl]
+ inc hl
+ ld d, [hl]
+ ld hl, wdc26
+ call Function115d6a
+ ld hl, wdc07
+ ld a, [wdc01]
+ ld [hli], a
+ ld a, e
+ ld [hli], a
+ ld [hl], d
+ ld a, [wdc23]
+ cp $3
+ jr z, .asm_115bc1
+ cp $4
+ jr z, .asm_115bba
+ jr .asm_115b3b
+
+.asm_115bba
+ ld a, $5
+ ld [wdc23], a
+ jr .asm_115bc6
+
+.asm_115bc1
+ ld a, $2
+ ld [wdc23], a
+
+.asm_115bc6
+ xor a
+ ret
+; 115bc8
+
+Function115bc8: ; 115bc8
+ xor a
+ ld [Carpet], a
+.asm_115bcc
+ ld a, [de]
+ ld [hli], a
+ inc e
+ call z, .Function115c3d
+ dec bc
+ ld a, b
+ or c
+ jr z, .asm_115c46
+ ld a, [de]
+ ld [hli], a
+ inc e
+ call z, .Function115c3d
+ dec bc
+ ld a, b
+ or c
+ jr z, .asm_115c1b
+ ld a, [de]
+ ld [hli], a
+ inc e
+ call z, .Function115c3d
+ dec bc
+ ld a, b
+ or c
+ jr z, .asm_115c46
+ ld a, [de]
+ ld [hli], a
+ inc e
+ call z, .Function115c3d
+ dec bc
+ ld a, b
+ or c
+ jr z, .asm_115c3a
+ ld a, [de]
+ cp $d
+ jr nz, .asm_115bcc
+ inc e
+ call z, .Function115c3d
+ ld a, [de]
+ cp $a
+ jr nz, .asm_115c46
+ inc e
+ call z, .Function115c3d
+ dec bc
+ ld a, b
+ or c
+ jr z, .asm_115c46
+ ld a, [Carpet]
+ inc a
+ ld [Carpet], a
+ dec bc
+ ld a, b
+ or c
+ jr nz, .asm_115bcc
+
+.asm_115c1b
+ ld a, [wdc23]
+ cp $4
+ jr z, .asm_115c33
+ ld a, [de]
+ ld [hli], a
+ inc e
+ call z, .Function115c3d
+ ld a, [de]
+ ld [hli], a
+ inc e
+ call z, .Function115c3d
+ xor a
+ ld [hl], a
+ ld a, $1
+ ret
+
+.asm_115c33
+ dec hl
+ dec hl
+ xor a
+ ld [hl], a
+ ld a, $1
+ ret
+
+.asm_115c3a
+ xor a
+ ld [hl], a
+ ret
+
+.Function115c3d:
+ push bc
+ ld bc, wdc00
+ call Function115d80
+ pop bc
+ ret
+
+.asm_115c46
+ ld a, $2
+ ret
+; 115c49
+
+Function115c49: ; 115c49
+ ld a, e
+ ld [wdc1f], a
+ ld a, d
+ ld [wdc20], a
+ xor a
+ ld [de], a
+ inc de
+ ld [de], a
+ inc de
+
+ ld a, c
+ ld [wdc19], a
+ ld a, b
+ ld [wdc1a], a
+ ld c, e
+ ld b, d
+ ld e, l
+ ld d, h
+ ld l, c
+ ld h, b
+
+.asm_115c64
+ ld a, [wdc1a]
+ or a
+ jr nz, .asm_115c71
+ ld a, [wdc19]
+ cp $4
+ jr c, .asm_115c99
+
+.asm_115c71
+ ld b, $4
+ push hl
+ ld hl, wdc1b
+.asm_115c77
+ ld a, [de]
+ inc de
+ call Function115cfd
+ ld [hli], a
+ dec b
+ jr nz, .asm_115c77
+ ld a, [wdc19]
+ ld c, a
+ ld a, [wdc1a]
+ ld b, a
+ dec bc
+ dec bc
+ dec bc
+ dec bc
+.asm_115c8c
+ ld a, [de]
+ cp $d
+ jr z, .asm_115c95
+ cp $a
+ jr nz, .asm_115c9f
+
+.asm_115c95
+ inc de
+ dec bc
+ jr .asm_115c8c
+
+.asm_115c99
+ ld a, $ff
+ ld [wdc23], a
+ ret
+
+.asm_115c9f
+ ld a, c
+ ld [wdc19], a
+ ld a, b
+ ld [wdc1a], a
+ push de
+ push hl
+ ld hl, wdc1f
+ ld a, [hli]
+ ld h, [hl]
+ ld l, a
+ ld e, [hl]
+ inc hl
+ ld d, [hl]
+ inc de
+ inc de
+ inc de
+ ld [hl], d
+ dec hl
+ ld [hl], e
+ pop hl
+ dec hl
+ ld d, [hl]
+ dec hl
+ ld c, [hl]
+ dec hl
+ ld b, [hl]
+ dec hl
+ ld a, [hl]
+ sla b
+ sla b
+ sla b
+ rla
+ sla b
+ rla
+ ld [hli], a
+ ld [hl], b
+ inc hl
+ rrc c
+ rrc c
+ ld [hl], c
+ dec hl
+ ld a, $f
+ and c
+ or [hl]
+ ld [hli], a
+ ld a, [hli]
+ and $c0
+ or [hl]
+ dec hl
+ ld [hld], a
+ dec hl
+ pop de
+ ld b, h
+ ld c, l
+ pop hl
+ ld a, [bc]
+ ld [hli], a
+ inc bc
+ ld a, [bc]
+ ld [hli], a
+ inc bc
+ ld a, [bc]
+ ld [hli], a
+ ld a, [wdc19]
+ cp $0
+ jp nz, .asm_115c64
+ ld a, [wdc1a]
+ cp $0
+ jp nz, .asm_115c64
+ ret
+; 115cfd
+
+Function115cfd: ; 115cfd
+ cp $2b
+ jr c, .asm_115d27
+ jr z, .asm_115d2f
+ cp $2f
+ jr c, .asm_115d27
+ jr z, .asm_115d32
+ cp $30
+ jr c, .asm_115d27
+ cp $3a
+ jr c, .asm_115d35
+ cp $3d
+ jr c, .asm_115d27
+ jr z, .asm_115d38
+ cp $41
+ jr c, .asm_115d27
+ cp $5b
+ jr c, .asm_115d4d
+ cp $61
+ jr c, .asm_115d27
+ cp $7b
+ jr c, .asm_115d50
+
+.asm_115d27
+ pop hl
+ pop hl
+ ld a, $ff
+ ld [wdc23], a
+ ret
+
+.asm_115d2f
+ ld a, $3e
+ ret
+
+.asm_115d32
+ ld a, $3f
+ ret
+
+.asm_115d35
+ add $4
+ ret
+
+.asm_115d38
+ push de
+ push hl
+ ld a, [wdc1f]
+ ld l, a
+ ld a, [wdc20]
+ ld h, a
+ ld e, [hl]
+ inc hl
+ ld d, [hl]
+ dec de
+ ld [hl], d
+ dec hl
+ ld [hl], e
+ pop hl
+ pop de
+ xor a
+ ret
+
+.asm_115d4d
+ sub $41
+ ret
+
+.asm_115d50
+ sub $47
+ ret
+; 115d53
+
+Function115d53: ; 115d53
+.asm_115d53
+ ld a, [de]
+ ld [hli], a
+ inc e
+ call z, Function115d61
+ dec bc
+ ld a, b
+ or c
+ jr nz, .asm_115d53
+ xor a
+ ld [hl], a
+ ret
+; 115d61
+
+Function115d61: ; 115d61
+ push bc
+ ld bc, wdc00
+ call Function115d80
+ pop bc
+ ret
+; 115d6a
+
+Function115d6a: ; 115d6a
+.asm_115d6a
+ ld a, [hli]
+ ld [de], a
+ inc e
+ call z, Function115d77
+ dec bc
+ ld a, b
+ or c
+ jr nz, .asm_115d6a
+ xor a
+ ret
+; 115d77
+
+Function115d77: ; 115d77
+ push bc
+ ld bc, wdc01
+ call Function115d80
+ pop bc
+ ret
+; 115d80
+
+Function115d80: ; 115d80
+ ld e, a
+ ld a, d
+ cp $bf
+ jr z, .asm_115d8b
+ inc d
+ ld a, e
+ ld e, $0
+ ret
+
+.asm_115d8b
+ ld a, [bc]
+ inc a
+ ld [bc], a
+ ld [$ff8c], a
+ ld [$4000], a
+ ld a, e
+ ld d, $a0
+ ld e, $0
+ ret
+; 115d99
+
+Function115d99: ; 115d99
+ ld de, GFX_11601a
+ ld hl, $8600
+ lb bc, BANK(GFX_11601a), $14
+ call Get2bpp
+ xor a
+ ld [wc305], a
+ ld [wc306], a
+ ld [wc309], a
+ ld [wc30a], a
+ ld [wc30b], a
+ ld [wc30c], a
+ ld a, $10
+ ld [wc307], a
+ ld a, $18
+ ld [wc308], a
+ ret
+; 115dc3
+
+Function115dc3: ; 115dc3
+ xor a
+ ld [wc305], a
+ ld a, $a0
+ ld hl, Sprites + $7c
+ ld bc, $0020
+ call ByteFill
+ ret
+; 115dd3
+
+Function115dd3: ; 115dd3
+ ld a, [wc305]
+ and a
+ ret z
+ ld a, $a0
+ ld hl, Sprites + $7c
+ ld bc, $0020
+ call ByteFill
+ call Function115e22
+ ld a, [wc309]
+ sla a
+ ld c, a
+ ld b, 0
+ ld hl, Unknown_115e86
+ add hl, bc
+ ld a, [hli]
+ ld e, a
+ ld a, [hl]
+ ld d, a
+ push de
+ pop hl
+ ld de, Sprites + $7c
+ ld a, [wc307]
+ ld c, a
+ ld a, [wc308]
+ ld b, a
+ ld a, [hli]
+.asm_115e04
+ push af
+ ld a, [hli]
+ add b
+ ld [de], a
+ inc de
+ ld a, [hli]
+ add c
+ ld [de], a
+ inc de
+ ld a, [hli]
+ ld [de], a
+ inc de
+ ld a, [hli]
+ ld [de], a
+ inc de
+ pop af
+ dec a
+ jr nz, .asm_115e04
+ ret
+; 115e18
+
+Function115e18: ; 115e18
+ ld a, c
+ ld [wc30a], a
+ xor a
+ ld [wc30b], a
+ jr Function115e2b
+; 115e22
+
+Function115e22: ; 115e22
+ ld hl, wc30c
+ dec [hl]
+ ret nz
+ ld hl, wc30b
+ inc [hl]
+
+Function115e2b: ; 115e2b
+ ld a, [wc30a]
+ sla a
+ ld c, a
+ ld b, 0
+ ld hl, Unknown_115e59
+ add hl, bc
+ ld a, [hli]
+ ld e, a
+ ld a, [hli]
+ ld d, a
+ push de
+ pop hl
+ ld a, [wc30b]
+ sla a
+ ld c, a
+ ld b, $0
+ add hl, bc
+ ld a, [hli]
+ cp $ff
+ jr nz, .asm_115e51
+ xor a
+ ld [wc30b], a
+ jr Function115e2b
+
+.asm_115e51
+ ld [wc309], a
+ ld a, [hl]
+ ld [wc30c], a
+ ret
+; 115e59
+
+Unknown_115e59:
+ dw Unknown_115e61
+ dw Unknown_115e6c
+ dw Unknown_115e76
+ dw Unknown_115e79
+
+Unknown_115e61: ; 115e61
+ db $4, $8
+ db $5, $8
+ db $6, $8
+ db $7, $8
+ db $8, $8
+ db $ff
+
+Unknown_115e6c: ; 115e6c
+ db $1, $8
+ db $2, $8
+ db $3, $8
+ db $9, $8
+ db $a, $8
+
+Unknown_115e76: ; 115e76
+ db $0, $8
+ db $ff
+
+Unknown_115e79: ; 115e79
+ db $b, $8
+ db $c, $8
+ db $d, $8
+ db $e, $8
+ db $f, $8
+ db $0, $8
+ db $ff
+; 115e86
+
+Unknown_115e86:
+ dw Unknown_115ea6
+ dw Unknown_115eb7
+ dw Unknown_115ecc
+ dw Unknown_115ee1
+ dw Unknown_115ef6
+ dw Unknown_115f13
+ dw Unknown_115f30
+ dw Unknown_115f4d
+ dw Unknown_115f6a
+ dw Unknown_115f87
+ dw Unknown_115f9c
+ dw Unknown_115fb1
+ dw Unknown_115fc6
+ dw Unknown_115fdb
+ dw Unknown_115ff0
+ dw Unknown_116005
+
+Unknown_115ea6: ; 115ea6
+ db $4
+ db $8, $0, $60, $1
+ db $8, $8, $61, $1
+ db $10, $0, $62, $1
+ db $10, $8, $63, $1
+
+Unknown_115eb7: ; 115eb7
+ db $5
+ db $0, $8, $64, $0
+ db $8, $0, $60, $1
+ db $8, $8, $61, $1
+ db $10, $0, $62, $1
+ db $10, $8, $63, $1
+
+Unknown_115ecc: ; 115ecc
+ db $5
+ db $0, $8, $65, $0
+ db $8, $0, $60, $1
+ db $8, $8, $61, $1
+ db $10, $0, $62, $1
+ db $10, $8, $63, $1
+
+Unknown_115ee1: ; 115ee1
+ db $5
+ db $0, $8, $66, $0
+ db $8, $0, $60, $1
+ db $8, $8, $61, $1
+ db $10, $0, $62, $1
+ db $10, $8, $63, $1
+
+Unknown_115ef6: ; 115ef6
+ db $7
+ db $0, $0, $67, $1
+ db $8, $0, $68, $1
+ db $10, $0, $6d, $0
+ db $10, $8, $69, $0
+ db $10, $10, $6a, $0
+ db $18, $8, $6b, $0
+ db $18, $10, $6c, $0
+
+Unknown_115f13: ; 115f13
+ db $7
+ db $0, $0, $67, $1
+ db $8, $0, $68, $1
+ db $10, $0, $6e, $0
+ db $10, $8, $69, $0
+ db $10, $10, $6a, $0
+ db $18, $8, $6b, $0
+ db $18, $10, $6c, $0
+
+Unknown_115f30: ; 115f30
+ db $7
+ db $0, $0, $67, $1
+ db $8, $0, $68, $1
+ db $10, $0, $6f, $0
+ db $10, $8, $69, $0
+ db $10, $10, $6a, $0
+ db $18, $8, $6b, $0
+ db $18, $10, $6c, $0
+
+Unknown_115f4d: ; 115f4d
+ db $7
+ db $0, $0, $67, $1
+ db $8, $0, $68, $1
+ db $10, $0, $70, $0
+ db $10, $8, $69, $0
+ db $10, $10, $6a, $0
+ db $18, $8, $6b, $0
+ db $18, $10, $6c, $0
+
+Unknown_115f6a: ; 115f6a
+ db $7
+ db $0, $0, $67, $1
+ db $8, $0, $68, $1
+ db $10, $0, $71, $0
+ db $10, $8, $69, $0
+ db $10, $10, $6a, $0
+ db $18, $8, $6b, $0
+ db $18, $10, $6c, $0
+
+Unknown_115f87: ; 115f87
+ db $5
+ db $0, $8, $72, $0
+ db $8, $0, $60, $1
+ db $8, $8, $61, $1
+ db $10, $0, $62, $1
+ db $10, $8, $63, $1
+
+Unknown_115f9c: ; 115f9c
+ db $5
+ db $0, $8, $73, $0
+ db $8, $0, $60, $1
+ db $8, $8, $61, $1
+ db $10, $0, $62, $1
+ db $10, $8, $63, $1
+
+Unknown_115fb1: ; 115fb1
+ db $5
+ db $1, $8, $64, $60
+ db $8, $0, $60, $1
+ db $8, $8, $61, $1
+ db $10, $0, $62, $1
+ db $10, $8, $63, $1
+
+Unknown_115fc6: ; 115fc6
+ db $5
+ db $1, $8, $65, $60
+ db $8, $0, $60, $1
+ db $8, $8, $61, $1
+ db $10, $0, $62, $1
+ db $10, $8, $63, $1
+
+Unknown_115fdb: ; 115fdb
+ db $5
+ db $1, $8, $66, $60
+ db $8, $0, $60, $1
+ db $8, $8, $61, $1
+ db $10, $0, $62, $1
+ db $10, $8, $63, $1
+
+Unknown_115ff0: ; 115ff0
+ db $5
+ db $1, $8, $72, $60
+ db $8, $0, $60, $1
+ db $8, $8, $61, $1
+ db $10, $0, $62, $1
+ db $10, $8, $63, $1
+
+Unknown_116005: ; 116005
+ db $5
+ db $1, $8, $73, $60
+ db $8, $0, $60, $1
+ db $8, $8, $61, $1
+ db $10, $0, $62, $1
+ db $10, $8, $63, $1
+; 11601a
+
+GFX_11601a:: ; 11601a
+INCBIN "gfx/unknown/11601a.2bpp"
+
+Function11615a: ; 11615a
+ xor a
+ ld [wc30d], a
+ ld [wc319], a
+ ld [wc310], a
+ ld [wc311], a
+ ld [wc312], a
+ ld [wc313], a
+ ld [wc314], a
+ ld [wc315], a
+ ld [wc318], a
+ ld [wc3f6], a
+ ld [wc3f8], a
+ ld [wc3f2], a
+ ld [wc3f4], a
+ ld a, $24
+ ld [wc3f5], a
+ ld a, $7
+ ld [wc3f7], a
+ ld a, $b0
+ ld [wc30e], a
+ ld [wc3f1], a
+ ld a, $48
+ ld [wc30f], a
+ ld [wc3f3], a
+ ret
+; 11619d
+
+Function11619d: ; 11619d
+ ld a, [wc30d]
+ and a
+ ret z
+ ld a, [wc319]
+ cp $2
+ jr c, .asm_1161b4
+ ld a, $a0
+ ld hl, Sprites
+ ld bc, $0064
+ call ByteFill
+
+.asm_1161b4
+ call Function1161b8
+ ret
+; 1161b8
+
+Function1161b8: ; 1161b8
+ ld a, [wc319]
+ ld e, a
+ ld d, 0
+ ld hl, Jumptable_1161c7
+ add hl, de
+ add hl, de
+ ld a, [hli]
+ ld h, [hl]
+ ld l, a
+ jp [hl]
+; 1161c7
+
+Jumptable_1161c7: ; 1161c7
+ dw Function1161d5
+ dw Function116294
+ dw Function1162cb
+ dw Function1162f2
+ dw Function1163c0
+ dw Function11636e
+ dw Function116441
+; 1161d5
+
+Function1161d5: ; 1161d5
+ ld a, [rSVBK]
+ push af
+ ld a, $6
+ ld [rSVBK], a
+ ld hl, Unknown_117356
+ ld de, w6_d000
+ ld bc, $0300
+ call CopyBytes
+ di
+.asm_1161e9
+ ld a, [rLY]
+ cp $91
+ jr nz, .asm_1161e9
+ ld a, $d0
+ ld [rHDMA1], a
+ ld a, $0
+ ld [rHDMA2], a
+ ld a, $1c
+ ld [rHDMA3], a
+ xor a
+ ld [rHDMA4], a
+ ld a, $8
+ ld [rHDMA5], a
+ ld a, $d0
+ ld [rHDMA1], a
+ ld a, $80
+ ld [rHDMA2], a
+ ld a, $1c
+ ld [rHDMA3], a
+ ld a, $80
+ ld [rHDMA4], a
+ ld a, $8
+ ld [rHDMA5], a
+ ld a, $d1
+ ld [rHDMA1], a
+ ld a, $0
+ ld [rHDMA2], a
+ ld a, $1d
+ ld [rHDMA3], a
+ xor a
+ ld [rHDMA4], a
+ ld a, $8
+ ld [rHDMA5], a
+ ld a, $1
+ ld [rVBK], a
+ ld a, $d1
+ ld [rHDMA1], a
+ ld a, $80
+ ld [rHDMA2], a
+ ld a, $1c
+ ld [rHDMA3], a
+ xor a
+ ld [rHDMA4], a
+ ld a, $8
+ ld [rHDMA5], a
+ ld a, $d2
+ ld [rHDMA1], a
+ ld a, $0
+ ld [rHDMA2], a
+ ld a, $1c
+ ld [rHDMA3], a
+ ld a, $80
+ ld [rHDMA4], a
+ ld a, $8
+ ld [rHDMA5], a
+ ld a, $d2
+ ld [rHDMA1], a
+ ld a, $80
+ ld [rHDMA2], a
+ ld a, $1d
+ ld [rHDMA3], a
+ xor a
+ ld [rHDMA4], a
+ ld a, $8
+ ld [rHDMA5], a
+ xor a
+ ld [rVBK], a
+ ei
+ pop af
+ ld [rSVBK], a
+ callba Function104061
+ ld a, $8
+ ld [MusicFade], a
+ ld de, MUSIC_MOBILE_ADAPTER
+ ld a, e
+ ld [wc2a9], a
+ ld a, d
+ ld [wc2aa], a
+ ld a, [wc319]
+ inc a
+ ld [wc319], a
+ ret
+; 11628c
+
+MenuDataHeader_11628c: ; 11628c
+ db $40 ; flags
+ db 6, 0 ; start coords
+ db 17, 19 ; end coords
+ dw NULL
+ db 0 ; default option
+; 116294
+
+Function116294: ; 116294
+ callba Function170d02
+ ld a, [wc319]
+ inc a
+ ld [wc319], a
+ ld a, [rSVBK]
+ push af
+ ld a, $5
+ ld [rSVBK], a
+ ld hl, wd030
+ ld de, wc320
+ ld bc, $0010
+ call CopyBytes
+ ld hl, Palette_11734e
+ ld de, Unkn1Pals + 8 * 7
+ ld bc, $0008
+ call CopyBytes
+ call Function32f9
+ pop af
+ ld [rSVBK], a
+ ld a, $30
+ ld [hWY], a
+ ret
+; 1162cb
+
+Function1162cb: ; 1162cb
+ callba Function170cc6
+ ld a, [wc319]
+ inc a
+ ld [wc319], a
+ ld a, [rSVBK]
+ push af
+ ld a, $5
+ ld [rSVBK], a
+ ld hl, Palette_11730e
+ ld de, wd050
+ ld bc, $0030
+ call CopyBytes
+ call Function32f9
+ pop af
+ ld [rSVBK], a
+ ret
+; 1162f2
+
+Function1162f2: ; 1162f2
+ call Function11659d
+ call Function116758
+ call Function1167a6
+ ld a, [wc310]
+ cp $fd
+ ret z
+ sla a
+ ld c, a
+ ld b, 0
+ ld hl, Unknown_1168c5
+ add hl, bc
+ ld a, [hli]
+ ld e, a
+ ld a, [hl]
+ ld d, a
+ push de
+ pop hl
+ ld a, [wc30e]
+ ld c, a
+ ld a, [wc30f]
+ ld b, a
+ ld a, [wc318]
+ ld e, a
+ ld a, [hli]
+ sub e
+ ld de, Sprites + $24
+.asm_116321
+ push af
+ ld a, [hli]
+ add b
+ ld [de], a
+ inc de
+ ld a, [hli]
+ add c
+ ld [de], a
+ inc de
+ ld a, [hli]
+ ld [de], a
+ inc de
+ ld a, [hli]
+ ld [de], a
+ inc de
+ pop af
+ dec a
+ jr nz, .asm_116321
+ call Function116468
+ ld a, [wc3f5]
+ sla a
+ ld c, a
+ ld b, 0
+ ld hl, Unknown_1168c5
+ add hl, bc
+ ld a, [hli]
+ ld e, a
+ ld a, [hl]
+ ld d, a
+ push de
+ pop hl
+ ld a, [wc3f1]
+ ld c, a
+ ld a, [wc3f3]
+ ld b, a
+ ld a, [wc3f8]
+ ld e, a
+ ld a, [hli]
+ sub e
+ ld de, Sprites
+.asm_11635a
+ push af
+ ld a, [hli]
+ add b
+ ld [de], a
+ inc de
+ ld a, [hli]
+ add c
+ ld [de], a
+ inc de
+ ld a, [hli]
+ ld [de], a
+ inc de
+ ld a, [hli]
+ ld [de], a
+ inc de
+ pop af
+ dec a
+ jr nz, .asm_11635a
+ ret
+; 11636e
+
+Function11636e: ; 11636e
+ ld a, [rSVBK]
+ push af
+ ld a, $5
+ ld [rSVBK], a
+ ld hl, BGPals
+ ld de, Unkn1Pals
+ ld bc, $0040
+ call CopyBytes
+ pop af
+ ld [rSVBK], a
+ call Function32f9
+ ld a, [rSVBK]
+ push af
+ ld a, $1
+ ld [rSVBK], a
+ ld a, $a0
+ ld hl, Sprites
+ ld bc, $0040
+ call ByteFill
+ ld a, $90
+ ld [hWY], a
+ call Function1ad2
+ pop af
+ ld [rSVBK], a
+ callba Function104061
+ ld a, $8
+ ld [MusicFade], a
+ ld a, [wc2c0]
+ ld [wc2a9], a
+ xor a
+ ld [wc2aa], a
+ xor a
+ ld [wc319], a
+ ld [wc30d], a
+ ret
+; 1163c0
+
+Function1163c0: ; 1163c0
+ ld a, [rSVBK]
+ push af
+ ld a, $1
+ ld [rSVBK], a
+ ld a, $a0
+ ld hl, Sprites
+ ld bc, $0040
+ call ByteFill
+ call DelayFrame
+ callba Function14146
+ ld b, $9
+ call GetSGBLayout
+ ld a, [rSVBK]
+ push af
+ ld a, $5
+ ld [rSVBK], a
+ ld hl, wc320
+ ld de, wd030
+ ld bc, $0010
+ call CopyBytes
+ pop af
+ ld [rSVBK], a
+ call Function32f9
+ call DelayFrame
+ ld a, $90
+ ld [hWY], a
+ call Function1ad2
+ callba Function14157
+ pop af
+ ld [rSVBK], a
+ callba Function104061
+ ld a, [InLinkBattle]
+ cp $4
+ jr z, .asm_11642a
+ ld a, $8
+ ld [MusicFade], a
+ ld a, [wc2c0]
+ ld [wc2a9], a
+ xor a
+ ld [wc2aa], a
+ jr .asm_116439
+
+.asm_11642a
+ ld a, $8
+ ld [MusicFade], a
+ ld a, $0
+ ld [wc2a9], a
+ ld a, $0
+ ld [wc2aa], a
+
+.asm_116439
+ xor a
+ ld [wc319], a
+ ld [wc30d], a
+ ret
+; 116441
+
+Function116441: ; 116441
+ callba Function17d405
+ ld a, $90
+ ld [hWY], a
+ callba Function104061
+ ld a, $8
+ ld [MusicFade], a
+ ld a, [wc2c0]
+ ld [wc2a9], a
+ xor a
+ ld [wc2aa], a
+ xor a
+ ld [wc319], a
+ ld [wc30d], a
+ ret
+; 116468
+
+Function116468: ; 116468
+ call Function116567
+ ld a, [wc314]
+ cp $d
+ jr nz, .asm_1164a8
+ ld hl, wc30e
+ ld a, [hl]
+ cp $50
+ jr nc, .asm_116484
+ ld a, $50
+ sub [hl]
+ add $50
+ ld [wc3f1], a
+ jr .asm_11648d
+
+.asm_116484
+ sub $50
+ ld c, a
+ ld a, $50
+ sub c
+ ld [wc3f1], a
+
+.asm_11648d
+ ld hl, wc30f
+ ld a, [hl]
+ cp $60
+ jr nc, .asm_11649e
+ ld a, $60
+ sub [hl]
+ add $60
+ ld [wc3f3], a
+ ret
+
+.asm_11649e
+ sub $60
+ ld c, a
+ ld a, $60
+ sub c
+ ld [wc3f3], a
+ ret
+
+.asm_1164a8
+ ld hl, wc30e
+ ld a, $b0
+ cp [hl]
+ jr nc, .asm_1164b8
+ ld a, [wc3f1]
+ and a
+ jr z, .asm_11650b
+ jr .asm_1164f2
+
+.asm_1164b8
+ ld a, [wc3f1]
+ sub [hl]
+ jr nc, .asm_1164c1
+ xor $ff
+ inc a
+
+.asm_1164c1
+ ld b, a
+ ld c, $0
+ ld a, $5
+.asm_1164c6
+ srl b
+ rr c
+ dec a
+ jr nz, .asm_1164c6
+ ld a, c
+ ld [wc3fa], a
+ ld a, b
+ ld [wc3f9], a
+ ld a, [wc3f1]
+ sub [hl]
+ jr c, .asm_1164f2
+ ld c, $0
+ ld a, [wc3fa]
+ xor $ff
+ add $1
+ rl c
+ ld [wc3fa], a
+ ld a, [wc3f9]
+ xor $ff
+ add c
+ ld [wc3f9], a
+
+.asm_1164f2
+ ld a, [wc3f2]
+ ld l, a
+ ld a, [wc3f1]
+ ld h, a
+ ld a, [wc3fa]
+ ld e, a
+ ld a, [wc3f9]
+ ld d, a
+ add hl, de
+ ld a, l
+ ld [wc3f2], a
+ ld a, h
+ ld [wc3f1], a
+
+.asm_11650b
+ ld hl, wc30f
+ ld a, $b0
+ cp [hl]
+ jr c, .asm_11654d
+ ld a, [wc3f3]
+ sub [hl]
+ jr nc, .asm_11651c
+ xor $ff
+ inc a
+
+.asm_11651c
+ ld b, a
+ ld c, $0
+ ld a, $5
+.asm_116521
+ srl b
+ rr c
+ dec a
+ jr nz, .asm_116521
+ ld a, c
+ ld [wc3fc], a
+ ld a, b
+ ld [wc3fb], a
+ ld a, [wc3f3]
+ sub [hl]
+ jr c, .asm_11654d
+ ld c, $0
+ ld a, [wc3fc]
+ xor $ff
+ add $1
+ rl c
+ ld [wc3fc], a
+ ld a, [wc3fb]
+ xor $ff
+ add c
+ ld [wc3fb], a
+
+.asm_11654d
+ ld a, [wc3f4]
+ ld l, a
+ ld a, [wc3f3]
+ ld h, a
+ ld a, [wc3fc]
+ ld e, a
+ ld a, [wc3fb]
+ ld d, a
+ add hl, de
+ ld a, l
+ ld [wc3f4], a
+ ld a, h
+ ld [wc3f3], a
+ ret
+; 116567
+
+Function116567: ; 116567
+ ld hl, wc3f7
+ dec [hl]
+ ret nz
+ ld hl, wc3f6
+ inc [hl]
+.asm_116570
+ ld a, $7
+ sla a
+ ld c, a
+ ld b, 0
+ ld hl, Unknown_1167eb
+ add hl, bc
+ ld a, [hli]
+ ld e, a
+ ld a, [hli]
+ ld d, a
+ push de
+ pop hl
+ ld a, [wc3f6]
+ sla a
+ ld c, a
+ ld b, $0
+ add hl, bc
+ ld a, [hli]
+ cp $fe
+ jr nz, .asm_116595
+ xor a
+ ld [wc3f6], a
+ jr .asm_116570
+
+.asm_116595
+ ld [wc3f5], a
+ ld a, [hl]
+ ld [wc3f7], a
+ ret
+; 11659d
+
+Function11659d: ; 11659d
+ ld a, [wc314]
+ cp $12
+ ret nc
+ ld e, a
+ ld d, 0
+ ld hl, Jumptable_1165af
+ add hl, de
+ add hl, de
+ ld a, [hli]
+ ld h, [hl]
+ ld l, a
+ jp [hl]
+; 1165af
+
+Jumptable_1165af: ; 1165af
+ dw Function11677e
+ dw Function1165d5
+ dw Function1165d8
+ dw Function1165e3
+ dw Function1165f5
+ dw Function116600
+ dw Function116615
+ dw Function116618
+ dw Function116623
+ dw Function116635
+ dw Function116640
+ dw Function116655
+ dw Function11665c
+ dw Function11668d
+ dw Function11669f
+ dw Function1166a2
+ dw Function1166c4
+ dw Function1166d6
+ dw Function1166d6
+; 1165d5
+
+Function1165d5: ; 1165d5
+ call Function11678e
+
+Function1165d8:
+ ld a, $0
+ ld c, a
+ ld a, $ff
+ ld b, a
+ ld a, $a8
+ call Function1166f4
+
+Function1165e3:
+ call Function116747
+ ld a, [wc30e]
+ cp $e8
+ ret nz
+ ld a, $1
+ call Function116780
+ ret c
+ jp Function116797
+; 1165f5
+
+Function1165f5: ; 1165f5
+ ld a, $1
+ ld c, a
+ ld a, $1
+ ld b, a
+ ld a, $e8
+ call Function1166f4
+
+Function116600:
+ call Function116747
+ ld a, [wc30e]
+ cp $a8
+ ret nz
+ ld a, $1
+ call Function116780
+ ret c
+ ld a, $2
+ ld [wc314], a
+ ret
+; 116615
+
+Function116615: ; 116615
+ call Function11678e
+
+Function116618:
+ ld a, $3
+ ld c, a
+ ld a, $1
+ ld b, a
+ ld a, $28
+ call Function11671f
+
+Function116623:
+ call Function116747
+ ld a, [wc30f]
+ cp $a0
+ ret nz
+ ld a, $6
+ call Function116780
+ ret c
+ jp Function116797
+; 116635
+
+Function116635: ; 116635
+ ld a, $2
+ ld c, a
+ ld a, $ff
+ ld b, a
+ ld a, $a0
+ call Function11671f
+
+Function116640:
+ call Function116747
+ ld a, [wc30f]
+ cp $28
+ ret nz
+ ld a, $6
+ call Function116780
+ ret c
+ ld a, $7
+ ld [wc314], a
+ ret
+; 116655
+
+Function116655: ; 116655
+ xor a
+ ld [wc317], a
+ call Function11678e
+
+Function11665c:
+ ld hl, wc317
+ ld a, $1
+ xor [hl]
+ ld [hl], a
+ add $4
+ ld c, a
+ call Function11679c
+ ld a, [wc317]
+ and a
+ jr nz, .asm_116673
+ ld a, $48
+ jr .asm_116675
+
+.asm_116673
+ ld a, $78
+
+.asm_116675
+ ld [wc30f], a
+ call Random
+ ld a, [hRandomAdd]
+ and $7
+ sla a
+ sla a
+ sla a
+ add $30
+ ld [wc30e], a
+ call Function116797
+
+Function11668d:
+ ld a, [wc311]
+ cp $ff
+ ret nz
+ ld a, $b
+ call Function116780
+ ret c
+ ld a, $c
+ ld [wc314], a
+ ret
+; 11669f
+
+Function11669f: ; 11669f
+ call Function11678e
+
+Function1166a2:
+ ld a, $a8
+ ld [wc30e], a
+ ld [wc3f1], a
+ ld a, $60
+ ld [wc30f], a
+ ld [wc3f3], a
+ ld a, $ff
+ ld [wc316], a
+ xor a
+ ld [wc317], a
+ ld a, $0
+ ld c, a
+ call Function11679c
+ call Function116797
+
+Function1166c4:
+ call Function116747
+ ld a, [wc30e]
+ cp $58
+ ret nz
+ ld a, $6
+ ld c, a
+ call Function11679c
+ call Function116797
+
+Function1166d6:
+ call Function116747
+ ld a, [wc30e]
+ cp $48
+ jr nz, .asm_1166e4
+ xor a
+ ld [wc316], a
+
+.asm_1166e4
+ ld a, [wc311]
+ cp $ff
+ ret nz
+ ld a, $4
+ ld [wc319], a
+ xor a
+ ld [wc314], a
+ ret
+; 1166f4
+
+Function1166f4: ; 1166f4
+ ld [wc30e], a
+ ld a, b
+ ld [wc316], a
+ xor a
+ ld [wc317], a
+ ld hl, wc30f
+.asm_116702
+ call Random
+ ld a, [hRandomAdd]
+ and $7
+ jr z, .asm_11670c
+ dec a
+
+.asm_11670c
+ sla a
+ sla a
+ sla a
+ add $48
+ cp [hl]
+ jr z, .asm_116702
+ ld [hl], a
+ call Function11679c
+ call Function116797
+ ret
+; 11671f
+
+Function11671f: ; 11671f
+ ld [wc30f], a
+ ld a, b
+ ld [wc317], a
+ xor a
+ ld [wc316], a
+ ld hl, wc30e
+.asm_11672d
+ call Random
+ ld a, [hRandomAdd]
+ and $7
+ sla a
+ sla a
+ sla a
+ add $30
+ cp [hl]
+ jr z, .asm_11672d
+ ld [hl], a
+ call Function11679c
+ call Function116797
+ ret
+; 116747
+
+Function116747: ; 116747
+ ld hl, wc30e
+ ld a, [wc316]
+ add [hl]
+ ld [hl], a
+ ld hl, wc30f
+ ld a, [wc317]
+ add [hl]
+ ld [hl], a
+ ret
+; 116758
+
+Function116758: ; 116758
+ ld a, [wc30f]
+ cp $30
+ jr c, .asm_116770
+ jr z, .asm_116770
+ cp $38
+ jr c, .asm_116774
+ jr z, .asm_116774
+ cp $40
+ jr c, .asm_116778
+ jr z, .asm_116778
+ xor a
+ jr .asm_11677a
+
+.asm_116770
+ ld a, $c
+ jr .asm_11677a
+
+.asm_116774
+ ld a, $8
+ jr .asm_11677a
+
+.asm_116778
+ ld a, $4
+
+.asm_11677a
+ ld [wc318], a
+ ret
+; 11677e
+
+Function11677e: ; 11677e
+ ld a, $0
+
+Function116780:
+ ld hl, wc315
+ cp [hl]
+ jr z, .asm_11678c
+ ld a, [hl]
+ ld [wc314], a
+ scf
+ ret
+
+.asm_11678c
+ and a
+ ret
+; 11678e
+
+Function11678e: ; 11678e
+ ld hl, wc314
+ ld a, [hl]
+ ld [wc315], a
+ inc [hl]
+ ret
+; 116797
+
+Function116797: ; 116797
+ ld hl, wc314
+ inc [hl]
+ ret
+; 11679c
+
+Function11679c:
+ ld a, c
+ ld [wc311], a
+ xor a
+ ld [wc312], a
+ jr asm_1167af
+
+Function1167a6: ; 1167a6
+ ld hl, wc313
+ dec [hl]
+ ret nz
+ ld hl, wc312
+ inc [hl]
+
+asm_1167af
+.asm_1167af
+ ld a, [wc311]
+ cp $ff
+ ret z
+ sla a
+ ld c, a
+ ld b, 0
+ ld hl, Unknown_1167eb
+ add hl, bc
+ ld a, [hli]
+ ld e, a
+ ld a, [hli]
+ ld d, a
+ push de
+ pop hl
+ ld a, [wc312]
+ sla a
+ ld c, a
+ ld b, $0
+ add hl, bc
+ ld a, [hli]
+ cp $ff
+ jr z, .asm_1167dc
+ cp $fe
+ jr nz, .asm_1167e3
+ xor a
+ ld [wc312], a
+ jr .asm_1167af
+
+.asm_1167dc
+ ld a, $ff
+ ld [wc311], a
+ ld a, $fd
+
+.asm_1167e3
+ ld [wc310], a
+ ld a, [hl]
+ ld [wc313], a
+ ret
+; 1167eb
+
+Unknown_1167eb:
+ dw Unknown_1167fb
+ dw Unknown_116808
+ dw Unknown_116867
+ dw Unknown_116870
+ dw Unknown_116815
+ dw Unknown_11683e
+ dw Unknown_116881
+ dw Unknown_1168ae
+
+Unknown_1167fb: ; 1167fb
+ db $0, $6
+ db $1, $4
+ db $2, $4
+ db $3, $6
+ db $2, $4
+ db $1, $4
+ db $fe
+
+Unknown_116808: ; 116808
+ db $4, $6
+ db $5, $4
+ db $6, $4
+ db $7, $6
+ db $6, $4
+ db $5, $4
+ db $fe
+
+Unknown_116815: ; 116815
+ db $fd, $20
+ db $8, $c
+ db $9, $24
+ db $a, $4
+ db $b, $8
+ db $a, $4
+ db $9, $6
+ db $c, $4
+ db $d, $8
+ db $c, $5
+ db $9, $24
+ db $a, $4
+ db $b, $8
+ db $a, $4
+ db $9, $6
+ db $c, $4
+ db $d, $8
+ db $c, $5
+ db $9, $8
+ db $8, $4
+ db $ff
+
+Unknown_11683e: ; 11683e
+ db $fd, $20
+ db $e, $c
+ db $f, $24
+ db $10, $4
+ db $11, $8
+ db $10, $4
+ db $f, $6
+ db $12, $4
+ db $13, $8
+ db $12, $5
+ db $f, $24
+ db $10, $4
+ db $11, $8
+ db $10, $4
+ db $f, $6
+ db $12, $4
+ db $13, $8
+ db $12, $5
+ db $f, $8
+ db $e, $4
+ db $ff
+
+Unknown_116867: ; 116867
+ db $14, $8
+ db $15, $8
+ db $16, $8
+ db $15, $8
+ db $fe
+
+Unknown_116870: ; 116870
+ db $17, $5
+ db $18, $5
+ db $19, $5
+ db $1a, $5
+ db $1b, $5
+ db $1a, $5
+ db $19, $5
+ db $18, $5
+ db $fe
+
+Unknown_116881: ; 116881
+ db $1c, $7
+ db $1d, $7
+ db $1e, $a
+ db $1f, $a
+ db $20, $5
+ db $21, $5
+ db $20, $5
+ db $21, $5
+ db $20, $18
+ db $22, $4
+ db $23, $2
+ db $22, $2
+ db $23, $2
+ db $22, $1
+ db $23, $1
+ db $22, $1
+ db $23, $4
+ db $fd, $1
+ db $23, $1
+ db $fd, $2
+ db $23, $2
+ db $fd, $40
+ db $ff
+
+Unknown_1168ae: ; 1168ae
+ db $24, $4
+ db $25, $4
+ db $26, $4
+ db $27, $4
+ db $28, $4
+ db $29, $4
+ db $2a, $4
+ db $2b, $4
+ db $2c, $4
+ db $2d, $4
+ db $2e, $4
+ db $fe
+; 1168c5
+
+Unknown_1168c5:
+ dw Unknown_116923
+ dw Unknown_116960
+ dw Unknown_1169a1
+ dw Unknown_1169de
+ dw Unknown_116a1b
+ dw Unknown_116a58
+ dw Unknown_116a99
+ dw Unknown_116ad6
+ dw Unknown_116d1b
+ dw Unknown_116d4c
+ dw Unknown_116d85
+ dw Unknown_116dbe
+ dw Unknown_116df7
+ dw Unknown_116e30
+ dw Unknown_116e69
+ dw Unknown_116e9a
+ dw Unknown_116ed3
+ dw Unknown_116f0c
+ dw Unknown_116f45
+ dw Unknown_116f7e
+ dw Unknown_116b13
+ dw Unknown_116b54
+ dw Unknown_116b95
+ dw Unknown_116bd6
+ dw Unknown_116c17
+ dw Unknown_116c58
+ dw Unknown_116c99
+ dw Unknown_116cda
+ dw Unknown_116fb7
+ dw Unknown_116fec
+ dw Unknown_117025
+ dw Unknown_117056
+ dw Unknown_117083
+ dw Unknown_1170c0
+ dw Unknown_1170fd
+ dw Unknown_11713a
+ dw Unknown_117177
+ dw Unknown_11719c
+ dw Unknown_1171c1
+ dw Unknown_1171e6
+ dw Unknown_11720b
+ dw Unknown_117230
+ dw Unknown_117255
+ dw Unknown_11727a
+ dw Unknown_11729f
+ dw Unknown_1172c4
+ dw Unknown_1172e9
+
+Unknown_116923: ; 116923
+ db $f
+ db $0, $0, $1, $a
+ db $0, $8, $2, $d
+ db $0, $10, $3, $d
+ db $0, $18, $4, $d
+ db $8, $0, $11, $a
+ db $8, $8, $12, $a
+ db $8, $10, $13, $a
+ db $8, $18, $14, $d
+ db $10, $0, $21, $a
+ db $10, $8, $22, $a
+ db $10, $10, $23, $a
+ db $10, $18, $24, $a
+ db $18, $0, $31, $a
+ db $18, $8, $32, $a
+ db $18, $10, $33, $a
+
+Unknown_116960: ; 116960
+ db $10
+ db $1, $0, $1, $a
+ db $1, $8, $2, $d
+ db $1, $10, $3, $d
+ db $1, $18, $4, $d
+ db $9, $0, $11, $a
+ db $9, $8, $12, $a
+ db $9, $10, $13, $a
+ db $9, $18, $14, $d
+ db $11, $0, $5, $a
+ db $11, $8, $6, $a
+ db $11, $10, $7, $a
+ db $11, $18, $34, $a
+ db $19, $0, $15, $a
+ db $19, $8, $16, $a
+ db $19, $10, $17, $a
+ db $19, $18, $35, $a
+
+Unknown_1169a1: ; 1169a1
+ db $f
+ db $1, $0, $1, $a
+ db $1, $8, $2, $d
+ db $1, $10, $3, $d
+ db $1, $18, $4, $d
+ db $9, $0, $11, $a
+ db $9, $8, $12, $a
+ db $9, $10, $13, $a
+ db $9, $18, $14, $d
+ db $11, $0, $25, $a
+ db $11, $8, $26, $a
+ db $11, $10, $27, $a
+ db $11, $18, $34, $a
+ db $19, $8, $36, $a
+ db $19, $10, $37, $a
+ db $19, $18, $35, $a
+
+Unknown_1169de: ; 1169de
+ db $f
+ db $0, $0, $1, $a
+ db $0, $8, $2, $d
+ db $0, $10, $3, $d
+ db $0, $18, $4, $d
+ db $8, $0, $11, $a
+ db $8, $8, $12, $a
+ db $8, $10, $13, $a
+ db $8, $18, $14, $d
+ db $10, $0, $10, $a
+ db $10, $8, $20, $a
+ db $10, $10, $30, $a
+ db $10, $18, $24, $a
+ db $18, $0, $31, $a
+ db $18, $8, $32, $a
+ db $18, $10, $33, $a
+
+Unknown_116a1b: ; 116a1b
+ db $f
+ db $0, $0, $4, $2d
+ db $0, $8, $3, $2d
+ db $0, $10, $2, $2d
+ db $0, $18, $1, $2a
+ db $8, $0, $14, $2d
+ db $8, $8, $13, $2a
+ db $8, $10, $12, $2a
+ db $8, $18, $11, $2a
+ db $10, $0, $24, $2a
+ db $10, $8, $23, $2a
+ db $10, $10, $22, $2a
+ db $10, $18, $21, $2a
+ db $18, $8, $33, $2a
+ db $18, $10, $32, $2a
+ db $18, $18, $31, $2a
+
+Unknown_116a58: ; 116a58
+ db $10
+ db $1, $0, $4, $2d
+ db $1, $8, $3, $2d
+ db $1, $10, $2, $2d
+ db $1, $18, $1, $2a
+ db $9, $0, $14, $2d
+ db $9, $8, $13, $2a
+ db $9, $10, $12, $2a
+ db $9, $18, $11, $2a
+ db $11, $0, $34, $2a
+ db $11, $8, $7, $2a
+ db $11, $10, $6, $2a
+ db $11, $18, $5, $2a
+ db $19, $0, $35, $2a
+ db $19, $8, $17, $2a
+ db $19, $10, $16, $2a
+ db $19, $18, $15, $2a
+
+Unknown_116a99: ; 116a99
+ db $f
+ db $1, $0, $4, $2d
+ db $1, $8, $3, $2d
+ db $1, $10, $2, $2d
+ db $1, $18, $1, $2a
+ db $9, $0, $14, $2d
+ db $9, $8, $13, $2a
+ db $9, $10, $12, $2a
+ db $9, $18, $11, $2a
+ db $11, $0, $34, $2a
+ db $11, $8, $27, $2a
+ db $11, $10, $26, $2a
+ db $11, $18, $25, $2a
+ db $19, $0, $35, $2a
+ db $19, $8, $37, $2a
+ db $19, $10, $36, $2a
+
+Unknown_116ad6: ; 116ad6
+ db $f
+ db $0, $0, $4, $2d
+ db $0, $8, $3, $2d
+ db $0, $10, $2, $2d
+ db $0, $18, $1, $2a
+ db $8, $0, $14, $2d
+ db $8, $8, $13, $2a
+ db $8, $10, $12, $2a
+ db $8, $18, $11, $2a
+ db $10, $0, $24, $2a
+ db $10, $8, $30, $2a
+ db $10, $10, $20, $2a
+ db $10, $18, $10, $2a
+ db $18, $8, $33, $2a
+ db $18, $10, $32, $2a
+ db $18, $18, $31, $2a
+
+Unknown_116b13: ; 116b13
+ db $10
+ db $18, $0, $0, $b
+ db $18, $8, $8, $b
+ db $18, $10, $5c, $b
+ db $18, $18, $0, $b
+ db $10, $0, $0, $b
+ db $10, $8, $5d, $b
+ db $10, $10, $5e, $b
+ db $10, $18, $0, $b
+ db $8, $0, $50, $b
+ db $8, $8, $51, $b
+ db $8, $10, $52, $b
+ db $8, $18, $50, $2b
+ db $0, $0, $43, $b
+ db $0, $8, $44, $b
+ db $0, $10, $44, $2b
+ db $0, $18, $43, $2b
+
+Unknown_116b54: ; 116b54
+ db $10
+ db $19, $0, $0, $b
+ db $19, $8, $18, $b
+ db $19, $10, $c, $b
+ db $19, $18, $0, $b
+ db $11, $0, $42, $b
+ db $11, $8, $3a, $b
+ db $11, $10, $3a, $2b
+ db $11, $18, $42, $2b
+ db $9, $0, $58, $b
+ db $9, $8, $45, $b
+ db $9, $10, $45, $2b
+ db $9, $18, $58, $2b
+ db $1, $0, $d, $b
+ db $1, $8, $44, $b
+ db $1, $10, $44, $2b
+ db $1, $18, $d, $2b
+
+Unknown_116b95: ; 116b95
+ db $10
+ db $18, $0, $0, $b
+ db $18, $8, $5c, $2b
+ db $18, $10, $8, $2b
+ db $18, $18, $0, $b
+ db $10, $0, $0, $b
+ db $10, $8, $5e, $2b
+ db $10, $10, $5d, $2b
+ db $10, $18, $0, $b
+ db $8, $0, $50, $b
+ db $8, $8, $52, $2b
+ db $8, $10, $51, $2b
+ db $8, $18, $50, $2b
+ db $0, $0, $43, $b
+ db $0, $8, $44, $b
+ db $0, $10, $44, $2b
+ db $0, $18, $43, $2b
+
+Unknown_116bd6: ; 116bd6
+ db $10
+ db $18, $0, $0, $a
+ db $18, $8, $56, $a
+ db $18, $10, $57, $a
+ db $18, $18, $0, $a
+ db $10, $0, $64, $a
+ db $10, $8, $4a, $a
+ db $10, $10, $4b, $a
+ db $10, $18, $71, $a
+ db $8, $0, $54, $a
+ db $8, $8, $55, $a
+ db $8, $10, $55, $2a
+ db $8, $18, $54, $2a
+ db $0, $0, $48, $a
+ db $0, $8, $49, $a
+ db $0, $10, $49, $2a
+ db $0, $18, $48, $2a
+
+Unknown_116c17: ; 116c17
+ db $10
+ db $19, $0, $0, $a
+ db $19, $8, $76, $a
+ db $19, $10, $77, $a
+ db $19, $18, $0, $a
+ db $11, $0, $64, $a
+ db $11, $8, $69, $a
+ db $11, $10, $6a, $a
+ db $11, $18, $6b, $a
+ db $9, $0, $6f, $a
+ db $9, $8, $70, $a
+ db $9, $10, $70, $2a
+ db $9, $18, $6f, $2a
+ db $1, $0, $63, $a
+ db $1, $8, $19, $a
+ db $1, $10, $19, $2a
+ db $1, $18, $63, $2a
+
+Unknown_116c58: ; 116c58
+ db $10
+ db $1a, $0, $6c, $a
+ db $1a, $8, $6d, $a
+ db $1a, $10, $6e, $a
+ db $1a, $18, $0, $a
+ db $12, $0, $5f, $a
+ db $12, $8, $60, $a
+ db $12, $10, $61, $a
+ db $12, $18, $62, $a
+ db $a, $0, $53, $a
+ db $a, $8, $55, $a
+ db $a, $10, $55, $2a
+ db $a, $18, $53, $2a
+ db $2, $0, $46, $a
+ db $2, $8, $47, $a
+ db $2, $10, $47, $2a
+ db $2, $18, $46, $2a
+
+Unknown_116c99: ; 116c99
+ db $10
+ db $19, $0, $0, $2a
+ db $19, $8, $77, $2a
+ db $19, $10, $76, $2a
+ db $19, $18, $0, $2a
+ db $11, $0, $6b, $2a
+ db $11, $8, $6a, $2a
+ db $11, $10, $69, $2a
+ db $11, $18, $64, $2a
+ db $9, $0, $6f, $a
+ db $9, $8, $70, $a
+ db $9, $10, $70, $2a
+ db $9, $18, $6f, $2a
+ db $1, $0, $63, $a
+ db $1, $8, $19, $a
+ db $1, $10, $19, $2a
+ db $1, $18, $63, $2a
+
+Unknown_116cda: ; 116cda
+ db $10
+ db $18, $0, $0, $a
+ db $18, $8, $57, $2a
+ db $18, $10, $56, $2a
+ db $18, $18, $0, $a
+ db $10, $0, $71, $2a
+ db $10, $8, $4b, $2a
+ db $10, $10, $4a, $2a
+ db $10, $18, $64, $2a
+ db $8, $0, $54, $a
+ db $8, $8, $55, $a
+ db $8, $10, $55, $2a
+ db $8, $18, $54, $2a
+ db $0, $0, $48, $a
+ db $0, $8, $49, $a
+ db $0, $10, $49, $2a
+ db $0, $18, $48, $2a
+
+Unknown_116d1b: ; 116d1b
+ db $c
+ db $0, $0, $38, $4a
+ db $0, $8, $39, $4a
+ db $0, $10, $39, $6a
+ db $0, $18, $38, $6a
+ db $8, $0, $28, $4a
+ db $8, $8, $29, $4a
+ db $8, $10, $29, $6a
+ db $8, $18, $28, $6a
+ db $10, $0, $9, $4d
+ db $10, $8, $19, $4a
+ db $10, $10, $19, $6a
+ db $10, $18, $9, $6d
+
+Unknown_116d4c: ; 116d4c
+ db $e
+ db $0, $8, $3b, $4a
+ db $0, $10, $3b, $6a
+ db $8, $0, $2a, $4a
+ db $8, $8, $2b, $4a
+ db $8, $10, $2b, $6a
+ db $8, $18, $2a, $6a
+ db $10, $0, $1a, $4a
+ db $10, $8, $1b, $4a
+ db $10, $10, $1b, $6a
+ db $10, $18, $1a, $6a
+ db $18, $0, $a, $4a
+ db $18, $8, $b, $4a
+ db $18, $10, $b, $6a
+ db $18, $18, $a, $6a
+
+Unknown_116d85: ; 116d85
+ db $e
+ db $0, $0, $35, $2a
+ db $0, $8, $3c, $4a
+ db $0, $10, $3d, $4a
+ db $0, $18, $3e, $4a
+ db $8, $0, $2c, $4a
+ db $8, $8, $2d, $4a
+ db $8, $10, $2e, $4a
+ db $8, $18, $2f, $4a
+ db $10, $0, $1c, $4a
+ db $10, $8, $1d, $4a
+ db $10, $10, $1e, $4d
+ db $10, $18, $1f, $4d
+ db $18, $10, $e, $4d
+ db $18, $18, $f, $4a
+
+Unknown_116dbe: ; 116dbe
+ db $e
+ db $0, $0, $65, $4a
+ db $0, $8, $66, $4a
+ db $0, $10, $67, $4a
+ db $0, $18, $68, $4a
+ db $8, $8, $59, $4a
+ db $8, $10, $5a, $4a
+ db $8, $18, $5b, $4a
+ db $10, $0, $4c, $4a
+ db $10, $8, $4d, $4d
+ db $10, $10, $4e, $4d
+ db $10, $18, $4f, $4a
+ db $18, $0, $3f, $4d
+ db $18, $8, $40, $4d
+ db $18, $10, $41, $4d
+
+Unknown_116df7: ; 116df7
+ db $e
+ db $0, $0, $3e, $6a
+ db $0, $8, $3d, $6a
+ db $0, $10, $3c, $6a
+ db $0, $18, $35, $a
+ db $8, $0, $2f, $6a
+ db $8, $8, $2e, $6a
+ db $8, $10, $2d, $6a
+ db $8, $18, $2c, $6a
+ db $10, $0, $1f, $6d
+ db $10, $8, $1e, $6d
+ db $10, $10, $1d, $6a
+ db $10, $18, $1c, $6a
+ db $18, $0, $f, $6a
+ db $18, $8, $e, $6d
+
+Unknown_116e30: ; 116e30
+ db $e
+ db $0, $0, $68, $6a
+ db $0, $8, $67, $6a
+ db $0, $10, $66, $6a
+ db $0, $18, $65, $6a
+ db $8, $0, $5b, $6a
+ db $8, $8, $5a, $6a
+ db $8, $10, $59, $6a
+ db $10, $0, $4f, $6a
+ db $10, $8, $4e, $6d
+ db $10, $10, $4d, $6d
+ db $10, $18, $4c, $6a
+ db $18, $8, $41, $6d
+ db $18, $10, $40, $6d
+ db $18, $18, $3f, $6d
+
+Unknown_116e69: ; 116e69
+ db $c
+ db $8, $0, $9, $d
+ db $8, $8, $19, $a
+ db $8, $10, $19, $2a
+ db $8, $18, $9, $2d
+ db $10, $0, $28, $a
+ db $10, $8, $29, $a
+ db $10, $10, $29, $2a
+ db $10, $18, $28, $2a
+ db $18, $0, $38, $a
+ db $18, $8, $39, $a
+ db $18, $10, $39, $2a
+ db $18, $18, $38, $2a
+
+Unknown_116e9a: ; 116e9a
+ db $e
+ db $0, $0, $a, $a
+ db $0, $8, $b, $a
+ db $0, $10, $b, $2a
+ db $0, $18, $a, $2a
+ db $8, $0, $1a, $a
+ db $8, $8, $1b, $a
+ db $8, $10, $1b, $2a
+ db $8, $18, $1a, $2a
+ db $10, $0, $2a, $a
+ db $10, $8, $2b, $a
+ db $10, $10, $2b, $2a
+ db $10, $18, $2a, $2a
+ db $18, $8, $3b, $a
+ db $18, $10, $3b, $2a
+
+Unknown_116ed3: ; 116ed3
+ db $e
+ db $0, $10, $e, $d
+ db $0, $18, $f, $a
+ db $8, $0, $1c, $a
+ db $8, $8, $1d, $a
+ db $8, $10, $1e, $d
+ db $8, $18, $1f, $d
+ db $10, $0, $2c, $a
+ db $10, $8, $2d, $a
+ db $10, $10, $2e, $a
+ db $10, $18, $2f, $a
+ db $18, $0, $35, $6a
+ db $18, $8, $3c, $a
+ db $18, $10, $3d, $a
+ db $18, $18, $3e, $a
+
+Unknown_116f0c: ; 116f0c
+ db $e
+ db $0, $0, $3f, $d
+ db $0, $8, $40, $d
+ db $0, $10, $41, $d
+ db $8, $0, $4c, $a
+ db $8, $8, $4d, $d
+ db $8, $10, $4e, $d
+ db $8, $18, $4f, $a
+ db $10, $8, $59, $a
+ db $10, $10, $5a, $a
+ db $10, $18, $5b, $a
+ db $18, $0, $65, $a
+ db $18, $8, $66, $a
+ db $18, $10, $67, $a
+ db $18, $18, $68, $a
+
+Unknown_116f45: ; 116f45
+ db $e
+ db $0, $0, $f, $2a
+ db $0, $8, $e, $2d
+ db $8, $0, $1f, $2d
+ db $8, $8, $1e, $2d
+ db $8, $10, $1d, $2a
+ db $8, $18, $1c, $2a
+ db $10, $0, $2f, $2a
+ db $10, $8, $2e, $2a
+ db $10, $10, $2d, $2a
+ db $10, $18, $2c, $2a
+ db $18, $0, $3e, $2a
+ db $18, $8, $3d, $2a
+ db $18, $10, $3c, $2a
+ db $18, $18, $35, $4a
+
+Unknown_116f7e: ; 116f7e
+ db $e
+ db $0, $8, $41, $2d
+ db $0, $10, $40, $2d
+ db $0, $18, $3f, $2d
+ db $8, $0, $4f, $2a
+ db $8, $8, $4e, $2d
+ db $8, $10, $4d, $2d
+ db $8, $18, $4c, $2a
+ db $10, $0, $5b, $2a
+ db $10, $8, $5a, $2a
+ db $10, $10, $59, $2a
+ db $18, $0, $68, $2a
+ db $18, $8, $67, $2a
+ db $18, $10, $66, $2a
+ db $18, $18, $65, $2a
+
+Unknown_116fb7: ; 116fb7
+ db $d
+ db $fa, $0, $72, $a
+ db $fa, $8, $73, $d
+ db $fa, $10, $74, $d
+ db $fa, $18, $75, $d
+ db $2, $0, $81, $a
+ db $2, $8, $82, $a
+ db $2, $10, $83, $a
+ db $2, $18, $84, $a
+ db $a, $0, $91, $a
+ db $a, $8, $92, $a
+ db $a, $10, $93, $a
+ db $a, $18, $94, $a
+ db $12, $10, $a3, $a
+
+Unknown_116fec: ; 116fec
+ db $e
+ db $fd, $0, $85, $d
+ db $fd, $8, $86, $d
+ db $5, $0, $95, $d
+ db $5, $8, $96, $a
+ db $5, $10, $97, $a
+ db $5, $18, $98, $a
+ db $d, $0, $a5, $a
+ db $d, $8, $a6, $a
+ db $d, $10, $a7, $a
+ db $d, $18, $a8, $a
+ db $15, $0, $b3, $a
+ db $15, $8, $b4, $a
+ db $15, $10, $b5, $a
+ db $15, $18, $b6, $a
+
+Unknown_117025: ; 117025
+ db $c
+ db $8, $0, $79, $d
+ db $8, $8, $7a, $d
+ db $8, $10, $7b, $a
+ db $8, $18, $7c, $a
+ db $10, $0, $89, $d
+ db $10, $8, $8a, $a
+ db $10, $10, $8b, $a
+ db $10, $18, $8c, $a
+ db $18, $0, $99, $a
+ db $18, $8, $9a, $a
+ db $18, $10, $9b, $a
+ db $18, $18, $9c, $a
+
+Unknown_117056: ; 117056
+ db $b
+ db $8, $0, $7d, $a
+ db $8, $8, $7e, $d
+ db $8, $10, $7f, $d
+ db $8, $18, $80, $a
+ db $10, $0, $8d, $a
+ db $10, $8, $8e, $a
+ db $10, $10, $8f, $a
+ db $10, $18, $90, $a
+ db $18, $8, $9e, $a
+ db $18, $10, $9f, $a
+ db $18, $18, $a0, $a
+
+Unknown_117083: ; 117083
+ db $f
+ db $0, $0, $a1, $a
+ db $0, $8, $a2, $a
+ db $0, $10, $a2, $2a
+ db $0, $18, $a1, $2a
+ db $8, $0, $b1, $a
+ db $8, $8, $b2, $d
+ db $8, $10, $b2, $2d
+ db $8, $18, $b1, $2a
+ db $10, $0, $ab, $a
+ db $10, $8, $ac, $a
+ db $10, $10, $ac, $2a
+ db $10, $18, $ab, $2a
+ db $18, $8, $a4, $a
+ db $18, $10, $87, $a
+ db $18, $18, $88, $a
+
+Unknown_1170c0: ; 1170c0
+ db $f
+ db $0, $0, $a1, $a
+ db $0, $8, $a2, $d
+ db $0, $10, $a2, $2a
+ db $0, $18, $a1, $2a
+ db $8, $0, $b1, $a
+ db $8, $8, $78, $d
+ db $8, $10, $78, $2d
+ db $8, $18, $b1, $2a
+ db $10, $0, $ab, $a
+ db $10, $8, $ac, $a
+ db $10, $10, $ac, $2a
+ db $10, $18, $ab, $2a
+ db $18, $8, $a4, $a
+ db $18, $10, $87, $a
+ db $18, $18, $88, $a
+
+Unknown_1170fd: ; 1170fd
+ db $f
+ db $0, $0, $a9, $a
+ db $0, $8, $aa, $a
+ db $0, $10, $aa, $2a
+ db $0, $18, $a9, $2a
+ db $8, $0, $b7, $a
+ db $8, $8, $b8, $a
+ db $8, $10, $b8, $2a
+ db $8, $18, $b7, $2a
+ db $10, $0, $ab, $a
+ db $10, $8, $ac, $a
+ db $10, $10, $ac, $2a
+ db $10, $18, $ad, $a
+ db $18, $8, $a4, $a
+ db $18, $10, $ba, $a
+ db $18, $18, $bb, $a
+
+Unknown_11713a: ; 11713a
+ db $f
+ db $0, $0, $ae, $c
+ db $0, $8, $af, $c
+ db $0, $10, $af, $2c
+ db $0, $18, $ae, $2c
+ db $8, $0, $bc, $c
+ db $8, $8, $bd, $c
+ db $8, $10, $bd, $2c
+ db $8, $18, $bc, $2c
+ db $10, $0, $bf, $c
+ db $10, $8, $9d, $c
+ db $10, $10, $9d, $2c
+ db $10, $18, $b0, $c
+ db $18, $8, $b9, $c
+ db $18, $10, $c0, $c
+ db $18, $18, $be, $c
+
+Unknown_117177: ; 117177
+ db $9
+ db $14, $0, $1f, $6
+ db $14, $8, $20, $6
+ db $14, $10, $21, $6
+ db $c, $0, $10, $6
+ db $c, $8, $11, $6
+ db $c, $10, $12, $6
+ db $4, $0, $1, $6
+ db $4, $8, $2, $6
+ db $4, $10, $3, $6
+
+Unknown_11719c: ; 11719c
+ db $9
+ db $14, $0, $22, $6
+ db $14, $8, $23, $6
+ db $14, $10, $24, $6
+ db $c, $0, $13, $6
+ db $c, $8, $14, $6
+ db $c, $10, $15, $6
+ db $4, $0, $4, $6
+ db $4, $8, $5, $6
+ db $4, $10, $6, $6
+
+Unknown_1171c1: ; 1171c1
+ db $9
+ db $14, $0, $25, $6
+ db $14, $8, $26, $6
+ db $14, $10, $27, $6
+ db $c, $0, $16, $6
+ db $c, $8, $17, $6
+ db $c, $10, $18, $6
+ db $4, $0, $7, $6
+ db $4, $8, $8, $6
+ db $4, $10, $9, $6
+
+Unknown_1171e6: ; 1171e6
+ db $9
+ db $14, $0, $28, $6
+ db $14, $8, $29, $6
+ db $14, $10, $2a, $6
+ db $c, $0, $19, $6
+ db $c, $8, $1a, $6
+ db $c, $10, $1b, $6
+ db $4, $0, $a, $6
+ db $4, $8, $b, $6
+ db $4, $10, $c, $6
+
+Unknown_11720b: ; 11720b
+ db $9
+ db $14, $0, $2b, $6
+ db $14, $8, $2c, $6
+ db $14, $10, $2d, $6
+ db $c, $0, $1c, $6
+ db $c, $8, $1d, $6
+ db $c, $10, $1e, $6
+ db $4, $0, $d, $6
+ db $4, $8, $e, $6
+ db $4, $10, $f, $6
+
+Unknown_117230: ; 117230
+ db $9
+ db $14, $0, $47, $6
+ db $14, $8, $48, $6
+ db $14, $10, $49, $6
+ db $c, $0, $3b, $6
+ db $c, $8, $3c, $6
+ db $c, $10, $3b, $26
+ db $4, $0, $2e, $6
+ db $4, $8, $2f, $6
+ db $4, $10, $30, $6
+
+Unknown_117255: ; 117255
+ db $9
+ db $14, $0, $35, $6
+ db $14, $8, $4a, $6
+ db $14, $10, $35, $6
+ db $c, $0, $3d, $6
+ db $c, $8, $35, $6
+ db $c, $10, $3d, $26
+ db $4, $0, $31, $6
+ db $4, $8, $32, $6
+ db $4, $10, $31, $26
+
+Unknown_11727a: ; 11727a
+ db $9
+ db $14, $0, $4b, $6
+ db $14, $8, $4c, $6
+ db $14, $10, $4d, $6
+ db $c, $0, $3e, $6
+ db $c, $8, $3f, $6
+ db $c, $10, $40, $6
+ db $4, $0, $33, $6
+ db $4, $8, $34, $6
+ db $4, $10, $35, $6
+
+Unknown_11729f: ; 11729f
+ db $9
+ db $14, $0, $4e, $6
+ db $14, $8, $4f, $6
+ db $14, $10, $50, $6
+ db $c, $0, $41, $6
+ db $c, $8, $42, $6
+ db $c, $10, $43, $6
+ db $4, $0, $35, $6
+ db $4, $8, $36, $6
+ db $4, $10, $37, $6
+
+Unknown_1172c4: ; 1172c4
+ db $9
+ db $14, $0, $51, $6
+ db $14, $8, $52, $6
+ db $14, $10, $35, $6
+ db $c, $0, $44, $6
+ db $c, $8, $45, $6
+ db $c, $10, $46, $6
+ db $4, $0, $38, $6
+ db $4, $8, $39, $6
+ db $4, $10, $3a, $6
+
+Unknown_1172e9: ; 1172e9
+ db $9
+ db $10, $0, $0, $2
+ db $10, $8, $0, $2
+ db $10, $10, $0, $2
+ db $8, $0, $0, $2
+ db $8, $8, $0, $2
+ db $c, $10, $1f, $6
+ db $0, $0, $0, $2
+ db $0, $8, $0, $2
+ db $4, $10, $10, $6
+; 11730e
+
+Palette_11730e:
+ RGB 31, 31, 31
+ RGB 7, 5, 4
+ RGB 31, 28, 4
+ RGB 31, 5, 5
+ RGB 31, 31, 31
+ RGB 7, 5, 4
+ RGB 31, 23, 0
+ RGB 31, 28, 4
+ RGB 31, 31, 31
+ RGB 16, 19, 31
+ RGB 17, 31, 31
+ RGB 31, 31, 31
+ RGB 5, 5, 5
+ RGB 7, 5, 4
+ RGB 31, 28, 4
+ RGB 19, 11, 6
+ RGB 31, 31, 31
+ RGB 3, 15, 31
+ RGB 4, 25, 25
+ RGB 0, 7, 12
+ RGB 31, 31, 31
+ RGB 0, 16, 0
+ RGB 0, 16, 0
+ RGB 0, 16, 0
+ RGB 4, 11, 22
+ RGB 0, 16, 0
+ RGB 0, 16, 0
+ RGB 0, 16, 0
+ RGB 22, 11, 8
+ RGB 0, 16, 0
+ RGB 0, 16, 0
+ RGB 0, 16, 0
+
+Palette_11734e:
+ RGB 31, 30, 30
+ RGB 2, 0, 0
+ RGB 10, 9, 9
+ RGB 15, 14, 14
+
+Unknown_117356:
+INCBIN "baserom.gbc", $117356, $117656 - $117356
+
+
+SECTION "Mobile Stadium", ROMX, BANK[$45]
+
+Function117656: ; 117656
+ callba GiveOddEgg
+ ret
+; 11765d
+
+Function11765d: ; 11765d (45:765d)
+ ld a, [$ffaa]
+ push af
+ ld a, $1
+ ld [$ffaa], a
+ call Function11766b
+ pop af
+ ld [$ffaa], a
+ ret
+
+Function11766b: ; 11766b (45:766b)
+ call Function117699
+ ld a, [rSVBK] ; $ff00+$70
+ push af
+ ld a, $5
+ ld [rSVBK], a ; $ff00+$70
+ call Function1176ee
+ ld a, $5
+ call GetSRAMBank
+ ld hl, $b1f3
+ ld de, wcd49
+ ld bc, $8
+ call CopyBytes
+ ld de, wc708
+ ld bc, $11
+ call CopyBytes
+ call CloseSRAM
+ pop af
+ ld [rSVBK], a ; $ff00+$70
+ ret
+
+Function117699: ; 117699 (45:7699)
+ ld a, $5
+ call GetSRAMBank
+ ld hl, wcd49
+ ld de, $b1f3
+ ld bc, $8
+ call CopyBytes
+ ld hl, wc708
+ ld bc, $11
+ call CopyBytes
+ call CloseSRAM
+ xor a
+ ld [wcd49], a
+ ld [wcd4a], a
+ ld [wcd4b], a
+ ld [wcd4c], a
+ ld [wcd4d], a
+ ld [wcd4e], a
+ ld [wcd4f], a
+ ld hl, wc708
+ ld bc, $11
+ call ByteFill
+ call WhiteBGMap
+ call ClearSprites
+ callba Function171c87
+ callba Function104061
+ callba Function8cf53
+ ret
+
+Function1176ee: ; 1176ee (45:76ee)
+ call Functiona57
+ ld a, [wcd49]
+ bit 7, a
+ jr nz, .asm_117709
+ call Function117719
+ callba Function8cf69
+ callba Function104061
+ jr Function1176ee
+.asm_117709
+ callba Function8cf53
+ call WhiteBGMap
+ call ClearScreen
+ call ClearSprites
+ ret
+
+Function117719: ; 117719 (45:7719)
+ ld a, [wcd49]
+ ld e, a
+ ld d, 0
+ ld hl, Jumptable_117728
+ add hl, de
+ add hl, de
+ ld a, [hli]
+ ld h, [hl]
+ ld l, a
+ jp [hl]
+
+Jumptable_117728: ; 117728 (45:7728)
+ dw Function117738
+ dw Function117764
+ dw Function1178aa
+ dw Function1178e8
+ dw Function117942
+ dw Function117976
+ dw Function117984
+ dw Function1179a7
+
+
+Function117738: ; 117738 (45:7738)
+ callba Function171ccd
+ lb de, $30, $18
+ ld a, $1d
+ call Function3b2a
+ ld hl, $c
+ add hl, bc
+ ld a, $6
+ ld [hl], a
+ lb de, $48, $20
+ ld a, $1d
+ call Function3b2a
+ ld hl, $c
+ add hl, bc
+ ld a, $7
+ ld [hl], a
+ ld a, $3
+ ld [wcd23], a
+ jp Function117a0a
+
+Function117764: ; 117764 (45:7764)
+ ld a, [wcd4a]
+ cp $10
+ jr nz, .asm_11776f
+ ld a, $1
+ jr .asm_117770
+.asm_11776f
+ xor a
+.asm_117770
+ ld [wcd24], a
+ ld hl, hJoyPressed ; $ffa7
+ ld a, [hl]
+ and $4
+ jr nz, Function1177a5
+ ld a, [hl]
+ and $8
+ jr nz, Function1177ac
+ ld a, [hl]
+ and $1
+ jp nz, Function11784c
+ ld a, [hl]
+ and $2
+ jr nz, asm_1177d6
+ ld hl, $ffa9
+ ld a, [hl]
+ and $40
+ jr nz, asm_1177f1
+ ld a, [hl]
+ and $80
+ jr nz, asm_11780a
+ ld a, [hl]
+ and $20
+ jp nz, Function11782d
+ ld a, [hl]
+ and $10
+ jp nz, Function117837
+ ret
+
+Function1177a5: ; 1177a5 (45:77a5)
+ callba Function171cf0
+ ret
+
+Function1177ac: ; 1177ac (45:77ac)
+ ld a, $2
+ ld [wcd4c], a
+ ld a, $4
+ ld [wcd4d], a
+ ret
+
+Function1177b7: ; 1177b7 (45:77b7)
+ ld a, $3
+ ld [wcd24], a
+ ld a, [wcd4a]
+ and a
+ jr z, .asm_1177c5
+ jp Function117a0a
+.asm_1177c5
+ ld a, $6
+ ld [wcd49], a
+ ret
+
+Function1177cb: ; 1177cb (45:77cb)
+ ld a, $80
+ ld [wcd49], a
+ ld [ScriptVar], a
+ jp Function117a0a
+asm_1177d6: ; 1177d6 (45:77d6)
+ call PlayClickSFX
+ ld a, [wcd4a]
+ and a
+ ret z
+ dec a
+ ld [wcd4a], a
+ ld e, a
+ ld d, $0
+ ld hl, wc708
+ add hl, de
+ xor a
+ ld [hl], a
+ hlcoord 2, 4
+ add hl, de
+ ld [hl], a
+ ret
+asm_1177f1: ; 1177f1 (45:77f1)
+ ld a, [wcd4d]
+ and a
+ ret z
+ dec a
+ ld [wcd4d], a
+ cp $3
+ ret nz
+ ld a, [wcd4c]
+ ld e, a
+ sla a
+ sla a
+ add e
+asm_117806: ; 117806 (45:7806)
+ ld [wcd4c], a
+ ret
+asm_11780a: ; 11780a (45:780a)
+ ld a, [wcd4d]
+ cp $4
+ ret z
+ inc a
+ ld [wcd4d], a
+ cp $4
+ ret nz
+ ld a, [wcd4c]
+ cp $a
+ jr nc, .asm_117825
+ cp $5
+ jr nc, .asm_117829
+ xor a
+ jr asm_117806
+.asm_117825
+ ld a, $2
+ jr asm_117806
+.asm_117829
+ ld a, $1
+ jr asm_117806
+
+Function11782d: ; 11782d (45:782d)
+ ld a, [wcd4c]
+ and a
+ ret z
+ dec a
+ ld [wcd4c], a
+ ret
+
+Function117837: ; 117837 (45:7837)
+ ld e, $d
+ ld a, [wcd4d]
+ cp $4
+ jr nz, .asm_117842
+ ld e, $2
+.asm_117842
+ ld a, [wcd4c]
+ cp e
+ ret z
+ inc a
+ ld [wcd4c], a
+ ret
+
+Function11784c: ; 11784c (45:784c)
+ call PlayClickSFX
+ ld a, [wcd4d]
+ cp $4
+ jr nz, .asm_117866
+ ld a, [wcd4c]
+ cp $2
+ jp z, Function1177b7
+ cp $1
+ jp z, Function1177cb
+ jp Function1177a5
+.asm_117866
+ ld a, [wcd4a]
+ ld e, a
+ cp $10
+ jp z, Function1177ac
+ inc a
+ ld [wcd4a], a
+ ld d, $0
+ ld a, [wcd4b]
+ and a
+ jr nz, .asm_117880
+ ld hl, Unknown_117a0f
+ jr .asm_117883
+.asm_117880
+ ld hl, Unknown_117a47
+.asm_117883
+ push de
+ ld a, [wcd4c]
+ ld b, a
+ ld a, [wcd4d]
+ ld c, $e
+ call SimpleMultiply
+ add b
+ ld c, a
+ ld b, $0
+ add hl, bc
+ ld a, [hl]
+ ld hl, wc708
+ add hl, de
+ ld [hl], a
+ pop de
+ hlcoord 2, 4
+ add hl, de
+ sub $20
+ ld [hl], a
+ ld a, e
+ cp $f
+ ret nz
+ jp Function1177ac
+
+Function1178aa: ; 1178aa (45:78aa)
+ ld hl, MenuDataHeader_1179b5
+ call LoadMenuDataHeader
+ call Function1cbb
+ call Function1cfd
+ ld hl, MenuDataHeader_1179bd
+ call LoadMenuDataHeader
+ call Function1cbb
+ call Function1cfd
+ callba Function104061
+ hlcoord 16, 8
+ ld de, String_1179c5
+ call PlaceString
+ hlcoord 15, 10
+ ld a, $ed
+ ld [hl], a
+ hlcoord 1, 14
+ ld de, String_1179cc
+ call PlaceString
+ ld a, $1
+ ld [wcd4e], a
+ jp Function117a0a
+
+Function1178e8: ; 1178e8 (45:78e8)
+ ld a, [hJoyPressed] ; $ff00+$a7
+ cp $2
+ jr z, .asm_117939
+ cp $1
+ jr z, .asm_117925
+ cp $80
+ jr z, .asm_11790f
+ cp $40
+ ret nz
+ ld a, [wcd4e]
+ and a
+ ret z
+ dec a
+ ld [wcd4e], a
+ hlcoord 15, 8
+ ld a, $ed
+ ld [hl], a
+ hlcoord 15, 10
+ ld a, $7f
+ ld [hl], a
+ ret
+.asm_11790f
+ ld a, [wcd4e]
+ and a
+ ret nz
+ inc a
+ ld [wcd4e], a
+ hlcoord 15, 8
+ ld a, $7f
+ ld [hl], a
+ hlcoord 15, 10
+ ld a, $ed
+ ld [hl], a
+ ret
+.asm_117925
+ call PlayClickSFX
+ ld a, [wcd4e]
+ and a
+ jr nz, .asm_117939
+ call Function1c07
+ ld a, $1
+ ld [wcd4f], a
+ jp Function117a0a
+.asm_117939
+ call Function1c07
+ call Function1c07
+ jp Function117a0a
+
+Function117942: ; 117942 (45:7942)
+ call SpeechTextBox
+ hlcoord 1, 14
+ ld de, String_1179f7
+ call PlaceString
+ ld a, $1e
+ ld [wcd4e], a
+ ld a, $5
+ call GetSRAMBank
+ ld a, [wcd4f]
+ ld [$aa4b], a
+ ld hl, wc708
+ ld de, $aa4c
+ ld bc, $11
+ call CopyBytes
+ call CloseSRAM
+ ld a, [wcd4f]
+ and a
+ jr z, asm_11797e
+ call Function117a0a
+
+Function117976: ; 117976 (45:7976)
+ ld hl, wcd4e
+ dec [hl]
+ ret nz
+ call Function1c07
+asm_11797e: ; 11797e (45:797e)
+ ld a, $80
+ ld [wcd49], a
+ ret
+
+Function117984: ; 117984 (45:7984)
+ ld hl, MenuDataHeader_1179b5
+ call LoadMenuDataHeader
+ call Function1cbb
+ call Function1cfd
+ callba Function104061
+ hlcoord 1, 14
+ ld de, String_1179e1
+ call PlaceString
+ ld a, $1e
+ ld [wcd4e], a
+ call Function117a0a
+
+Function1179a7: ; 1179a7 (45:79a7)
+ ld hl, wcd4e
+ dec [hl]
+ ret nz
+ call Function1c07
+ ld a, $1
+ ld [wcd49], a
+ ret
+; 1179b5 (45:79b5)
+
+MenuDataHeader_1179b5: ; 1179b5
+ db $40 ; flags
+ db 12, 0 ; start coords
+ db 17, 19 ; end coords
+ dw NULL
+ db 0 ; default option
+; 1179bd
+
+MenuDataHeader_1179bd: ; 1179bd
+ db $40 ; flags
+ db 7, 14 ; start coords
+ db 11, 19 ; end coords
+ dw NULL
+ db 0 ; default option
+; 1179c5
+
+
+String_1179c5: ; 1179c5
+ db "はい"
+ next "いいえ@"
+; 1179cc
+
+String_1179cc: ; 1179cc
+ db "こ", $25, "パスワード", $1f, "ほぞんして"
+ line "おきますか?@"
+; 1179e1
+
+String_1179e1: ; 1179e1
+ db "パスワード", $4a, "にゅうりょく"
+ line "されていません!@"
+; 1179f7
+
+String_1179f7: ; 1179f7
+ db "ログインパスワード", $1f, "ほぞん"
+ line "しました@"
+; 117a0a
+
+Function117a0a: ; 117a0a (45:7a0a)
+ ld hl, wcd49
+ inc [hl]
+ ret
+; 117a0f (45:7a0f)
+
+Unknown_117a0f:
+INCBIN "data/mobile/ascii-alpha.txt"
+
+Unknown_117a47:
+INCBIN "data/mobile/ascii-sym.txt"
+; 117a7f
+
+
+; everything from here to the end of the bank is related to the
+; Mobile Stadium option from the continue/newgame menu.
+; XXX better function names
+MobileStudium: ; 0x117a7f
+ ld a, [$ffaa]
+ push af
+ ld a, $1
+ ld [$ffaa], a
+ call Function117a8d
+ pop af
+ ld [$ffaa], a
+ ret
+; 0x117a8d
+
+Function117a8d: ; 0x117a8d
+ call Function117a94
+ call Function117acd
+ ret
+; 0x117a94
+
+Function117a94: ; 0x117a94
+ xor a
+ ld [wcf63], a
+ ld [wcf64], a
+ ld [wcf65], a
+ ld [wcf66], a
+ call WhiteBGMap
+ call ClearSprites
+ callba Function172e78
+ callba Function104000
+ ret
+; 0x117ab4
+
+Function117ab4: ; 0x117ab4
+ call WhiteBGMap
+ call ClearSprites
+ callba Function172e78
+ callba Function172eb9
+ callba Function104061
+ ret
+; 0x117acd
+
+Function117acd: ; 0x117acd
+ call Functiona57
+ ld a, [wcf63]
+ bit 7, a
+ jr nz, .asm_117ae2 ; 0x117ad5 $b
+ call Function117ae9
+ callba Function104000
+ jr Function117acd
+.asm_117ae2
+ call WhiteBGMap
+ call ClearSprites
+ ret
+
+Function117ae9: ; 0x117ae9
+ ld a, [wcf63]
+ ld e, a
+ ld d, $0
+ ld hl, Pointers117af8
+ add hl, de
+ add hl, de
+ ld a, [hli]
+ ld h, [hl]
+ ld l, a
+ jp [hl]
+
+Pointers117af8: ; 0x117af8
+ dw Function117b06
+ dw Function117b14
+ dw Function117b28
+ dw Function117b31
+ dw Function117b4f
+ dw Function117bb6
+ dw Function117c4a
+
+Function117b06:
+ callba Function172eb9
+ ld a, $10
+ ld [wcf64], a
+ jp Function117cdd
+
+Function117b14:
+ ld hl, wcf64
+ dec [hl]
+ ret nz
+ ld hl, Data117cbc
+ call LoadMenuDataHeader
+ call Function1cbb
+ call Function1cfd
+ jp Function117cdd
+
+Function117b28:
+ ld hl, MobileStadiumEntryText
+ call PrintText
+ jp Function117cdd
+
+Function117b31:
+ ld hl, Data117cc4
+ call LoadMenuDataHeader
+ call Function1cbb
+ call Function1cfd
+ hlcoord 16, 8
+ ld de, YesNo117ccc
+ call PlaceString
+ hlcoord 15, 8
+ ld a, "▶"
+ ld [hl], a
+ jp Function117cdd
+
+Function117b4f:
+ ld a, [hJoyPressed]
+ cp $2
+ jr z, .asm_117ba4 ; 0x117b53 $4f
+ cp $1
+ jr z, .asm_117b8c ; 0x117b57 $33
+ cp $80
+ jr z, .asm_117b76 ; 0x117b5b $19
+ cp $40
+ ret nz
+ ld a, [wcf64]
+ and a
+ ret z
+ dec a
+ ld [wcf64], a
+ hlcoord 15, 8
+ ld a, "▶"
+ ld [hl], a
+ hlcoord 15, 10
+ ld a, " "
+ ld [hl], a
+ ret
+.asm_117b76
+ ld a, [wcf64]
+ and a
+ ret nz
+ inc a
+ ld [wcf64], a
+ hlcoord 15, 8
+ ld a, " "
+ ld [hl], a
+ hlcoord 15, 10
+ ld a, "▶"
+ ld [hl], a
+ ret
+.asm_117b8c
+ call PlayClickSFX
+ ld a, [wcf64]
+ and a
+ jr nz, .asm_117ba4 ; 0x117b93 $f
+ call Function1c07
+ call Function1c07
+ callba Function104061
+ jp Function117cdd
+.asm_117ba4
+ call Function1c07
+ call Function1c07
+ callba Function104061
+ ld a, $80
+ ld [wcf63], a
+ ret
+
+Function117bb6:
+ call Function117c89
+ ld a, $1
+ ld [hBGMapMode], a
+ callba Function118284
+ call ClearSprites
+ ld a, [wc300]
+ and a
+ jr z, .asm_117be7 ; 0x117bca $1b
+ cp $a
+ jr z, .asm_117be1 ; 0x117bce $11
+.asm_117bd0
+ ld a, $2
+ ld [wc303], a
+ callba Function17f555
+ ld a, $80
+ ld [wcf63], a
+ ret
+.asm_117be1
+ ld a, $80
+ ld [wcf63], a
+ ret
+.asm_117be7
+ ld a, [rSVBK]
+ push af
+ ld a, $3
+ ld [rSVBK], a
+ ld a, [wcd89]
+ and $1
+ jr nz, .asm_117c16 ; 0x117bf3 $21
+ ld a, [wd000]
+ cp $fe
+ jr nz, .asm_117c16 ; 0x117bfa $1a
+ ld a, [wd001]
+ cp $f
+ jr nz, .asm_117c16 ; 0x117c01 $13
+ ld hl, wdfec
+ ld de, wcd69
+ ld c, $10
+.asm_117c0b
+ ld a, [de]
+ inc de
+ cp [hl]
+ jr nz, .asm_117c16 ; 0x117c0e $6
+ inc hl
+ dec c
+ jr nz, .asm_117c0b ; 0x117c12 $f7
+ jr .asm_117c20 ; 0x117c14 $a
+.asm_117c16
+ pop af
+ ld [rSVBK], a
+ ld a, $d3
+ ld [wc300], a
+ jr .asm_117bd0 ; 0x117c1e $b0
+.asm_117c20
+ pop af
+ ld [rSVBK], a
+ callba Function172eb9
+ ld a, [rSVBK]
+ push af
+ ld a, $3
+ ld [rSVBK], a
+ ld a, $7
+ call GetSRAMBank
+ ld hl, DefaultFlypoint
+ ld de, $b000
+ ld bc, $1000
+ call CopyBytes
+ call CloseSRAM
+ pop af
+ ld [rSVBK], a
+ jp Function117cdd
+
+Function117c4a:
+ ld hl, Data117cbc
+ call LoadMenuDataHeader
+ call Function1cbb
+ call Function1cfd
+ callba Function104061
+ ld hl, MobileStadiumSuccessText
+ call PrintText
+ ld a, [rSVBK]
+ push af
+ ld a, $5
+ ld [rSVBK], a
+ ld hl, wd000
+ ld de, $0008
+ ld c, $8
+.asm_117c71
+ push hl
+ ld a, $ff
+ ld [hli], a
+ ld a, " "
+ ld [hl], a
+ pop hl
+ add hl, de
+ dec c
+ jr nz, .asm_117c71 ; 0x117c7b $f4
+ call Function4b6
+ pop af
+ ld [rSVBK], a
+ ld a, $80
+ ld [wcf63], a
+ ret
+
+Function117c89:
+ ld a, $7
+ call GetSRAMBank
+ ld l, $0
+ ld h, l
+ ld de, $b000
+ ld bc, $0ffc
+.asm_117c97
+ push bc
+ ld a, [de]
+ inc de
+ ld c, a
+ ld b, $0
+ add hl, bc
+ pop bc
+ dec bc
+ ld a, b
+ or c
+ jr nz, .asm_117c97 ; 0x117ca2 $f3
+ ld a, l
+ ld [wcd83], a
+ ld a, h
+ ld [wcd84], a
+ ld hl, $bfea
+ ld de, wcd69
+ ld bc, $0010
+ call CopyBytes
+ call CloseSRAM
+ ret
+
+Data117cbc: ; 0x117cbc
+ db $40, $0c, $00, $11, $13, $00, $00, $00
+
+Data117cc4: ; 0x117cc4
+ db $40, $07, $0e, $0b, $13, $00, $00, $00 ; XXX what is this
+
+YesNo117ccc: ; 0x117ccc
+ db "はい"
+ next "いいえ"
+ db "@"
+
+MobileStadiumEntryText: ; 0x117cd3
+ TX_FAR _MobileStadiumEntryText
+ db "@"
+
+MobileStadiumSuccessText: ; 0x117cd8
+ TX_FAR _MobileStadiumSuccessText
+ db "@"
+
+Function117cdd: ; 0x117cdd
+ ld hl, wcf63
+ inc [hl]
+ ret
+
+
+SECTION "bank46", ROMX, BANK[$46]
+
+Function118000: ; 118000
+ ld a, $1
+ ld [wcd38], a
+ jr asm_11800b
+
+Function118007: ; 118007
+ xor a
+ ld [wcd38], a
+
+asm_11800b
+ call Function1183cb
+ ld a, $18
+ ld [wcd33], a
+ ld a, $19
+ ld [wcd34], a
+ ld a, $4
+ ld [wc3f0], a
+ ld a, [rSVBK]
+ push af
+ ld a, $3
+ ld [rSVBK], a
+.asm_118024
+ call Functiona57
+ call Function118473
+ ld a, [wcf66]
+ cp $1b
+ jr c, .asm_118037
+ ld a, [wcd34]
+ ld [wcf66], a
+
+.asm_118037
+ call Function1184a5
+ call Function11a8fa
+ callba Function115dd3
+ callba Function11619d
+ call DelayFrame
+ ld a, [wcf66]
+ ld hl, wcd33
+ cp [hl]
+ jr nz, .asm_118024
+ pop af
+ ld [rSVBK], a
+ call Function118452
+ call Function222a
+Function11805e: ; 11805e (46:405e)
+ ret
+; 11805f
+
+Function11805f: ; 11805f
+ ld a, $1
+ ld [wcd38], a
+ call Function1183cb
+ ld a, $18
+ ld [wcd33], a
+ ld a, $19
+ ld [wcd34], a
+ ld a, $4
+ ld [wc3f0], a
+ ld a, [rSVBK]
+ push af
+ ld a, $3
+ ld [rSVBK], a
+.asm_11807d
+ call Functiona57
+ call Function118473
+ ld a, [wcf66]
+ cp $1b
+ jr c, .asm_118090
+ ld a, [wcd34]
+ ld [wcf66], a
+
+.asm_118090
+ call Function11857c
+ call Function11a8fa
+ callba Function115dd3
+ callba Function11619d
+ call DelayFrame
+ ld a, [wcf66]
+ ld hl, wcd33
+ cp [hl]
+ jr nz, .asm_11807d
+ pop af
+ ld [rSVBK], a
+ call Function118452
+ call Function222a
+ ret
+; 1180b8
+
+Function1180b8: ; 1180b8
+ call Function1183cb
+ ld a, $22
+ ld [wcd33], a
+ ld a, $23
+ ld [wcd34], a
+ ld a, $4
+ ld [wc3f0], a
+ ld a, [rSVBK]
+ push af
+ ld a, $3
+ ld [rSVBK], a
+.asm_1180d1
+ call Functiona57
+ call Function118473
+ ld a, [wcf66]
+ cp $28
+ jr c, .asm_1180e4
+ ld a, [wcd34]
+ ld [wcf66], a
+
+.asm_1180e4
+ ld a, [wcf66]
+ cp $10
+ jr c, .asm_1180f2
+ cp $16
+ jr nc, .asm_1180f2
+ call Function11884c
+
+.asm_1180f2
+ call Function1184ec
+ call Function11a8fa
+ callba Function115dd3
+ callba Function11619d
+ call DelayFrame
+ ld a, [wcf66]
+ ld hl, wcd33
+ cp [hl]
+ jr nz, .asm_1180d1
+ pop af
+ ld [rSVBK], a
+ call Function118452
+ call Function222a
+ ret
+; 11811a
+
+Function11811a: ; 11811a
+ ld a, 1
+ ld [wcd38], a
+ jr Function118125
+
+Function118121: ; 118121
+ xor a
+ ld [wcd38], a
+
+Function118125: ; 118125
+ call Function1183cb
+ ld a, $3
+ ld [wcd33], a
+ ld a, $d
+ ld [wcd34], a
+ ld a, $4
+ ld [wc3f0], a
+ ld a, [rSVBK]
+ push af
+ ld a, $3
+ ld [rSVBK], a
+.asm_11813e
+ call Functiona57
+ call Function118473
+ ld a, [wcf66]
+ cp $f
+ jr c, .asm_118151
+ ld a, [wcd34]
+ ld [wcf66], a
+
+.asm_118151
+ call Function11854d
+ call Function11a8fa
+ callba Function115dd3
+ callba Function11619d
+ call DelayFrame
+ ld a, [wcf66]
+ ld hl, wcd33
+ cp [hl]
+ jr nz, .asm_11813e
+ xor a
+ ld [Unkn1Pals], a
+ pop af
+ ld [rSVBK], a
+ call Function118452
+ call Function118180
+ call Function222a
+ ret
+; 118180
+
+Function118180: ; 118180
+ ld a, [ScriptVar]
+ and a
+ ret nz
+ ld a, [wcd38]
+ and a
+ ret z
+ ld a, $5
+ call GetSRAMBank
+ ld hl, wcd69
+ ld de, $a89c
+ ld bc, $0016
+ call CopyBytes
+ ld a, [rSVBK]
+ push af
+ ld a, $3
+ ld [rSVBK], a
+ ld de, $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
+ ld de, $a8b2
+ ld bc, $0096
+ call CopyBytes
+.asm_1181c9
+ pop af
+ ld [rSVBK], a
+ call CloseSRAM
+ ret
+
+.asm_1181d0
+ ld a, $d3
+ ld [wc300], a
+ ld [ScriptVar], a
+ jr .asm_1181c9
+; 1181da
+
+Function1181da: ; 1181da
+ call Function1183cb
+ ld a, $2
+ ld [wcd38], a
+ ld a, $21
+ ld [wcd33], a
+ ld a, $22
+ ld [wcd34], a
+ ld a, $4
+ ld [wc3f0], a
+ ld a, [rSVBK]
+ push af
+ ld a, $3
+ ld [rSVBK], a
+.asm_1181f8
+ call Functiona57
+ call Function118473
+ ld a, [wcf66]
+ cp $28
+ jr c, .asm_11820b
+ ld a, [wcd34]
+ ld [wcf66], a
+
+.asm_11820b
+ call Function1185c3
+ call Function11a8fa
+ callba Function115dd3
+ callba Function11619d
+ call DelayFrame
+ ld a, [wcf66]
+ ld hl, wcd33
+ cp [hl]
+ jr nz, .asm_1181f8
+ pop af
+ ld [rSVBK], a
+ call Function118452
+ call Function222a
+ ret
+; 118233
+
+Function118233: ; 118233
+ call Function1183cb
+ ld a, $1b
+ ld [wcd33], a
+ ld a, $1c
+ ld [wcd34], a
+ ld a, $6
+ ld [wc3f0], a
+ ld a, [rSVBK]
+ push af
+ ld a, $3
+ ld [rSVBK], a
+.asm_11824c
+ call Functiona57
+ call Function118473
+ ld a, [wcf66]
+ cp $1e
+ jr c, .asm_11825f
+ ld a, [wcd34]
+ ld [wcf66], a
+
+.asm_11825f
+ call Function118624
+ call Function11a8fa
+ callba Function115dd3
+ callba Function11619d
+ call DelayFrame
+ ld a, [wcf66]
+ ld hl, wcd33
+ cp [hl]
+ jr nz, .asm_11824c
+ pop af
+ ld [rSVBK], a
+ call Function118452
+ ret
+; 118284
+
+Function118284: ; 118284
+ call Function1183cb
+ ld a, $19
+ ld [wcd33], a
+ ld a, $1e
+ ld [wcd34], a
+ ld a, $5
+ ld [wc3f0], a
+ ld a, [rSVBK] ; $ff00+$70
+ push af
+ ld a, $3
+ ld [rSVBK], a ; $ff00+$70
+.asm_11829d
+ call Functiona57
+ call Function118473
+ ld a, [wcf66]
+ cp $20
+ jr c, .asm_1182b0
+ ld a, [wcd34]
+ ld [wcf66], a
+.asm_1182b0
+ call Function1186f5
+ call Function11a8fa
+ callba Function115dd3
+ callba Function11619d
+ call DelayFrame
+ ld a, [wcf66]
+ ld hl, wcd33
+ cp [hl]
+ jr nz, .asm_11829d
+ pop af
+ ld [rSVBK], a ; $ff00+$70
+ call Function118452
+ ret
+; 1182d5 (46:42d5)
+
+
+Function1182d5: ; 1182d5
+ call Function1183cb
+ ld a, $18
+ ld [wcd33], a
+ ld a, $19
+ ld [wcd34], a
+ ld a, $4
+ ld [wc3f0], a
+ ld a, [rSVBK]
+ push af
+ ld a, $3
+ ld [rSVBK], a
+.asm_1182ee
+ call Functiona57
+ call Function118473
+ ld a, [wcf66]
+ cp $1b
+ jr c, .asm_118301
+ ld a, [wcd34]
+ ld [wcf66], a
+
+.asm_118301
+ call Function118746
+ call Function11a8fa
+ callba Function115dd3
+ callba Function11619d
+ call DelayFrame
+ ld a, [wcf66]
+ ld hl, wcd33
+ cp [hl]
+ jr nz, .asm_1182ee
+ pop af
+ ld [rSVBK], a
+ call Function118452
+ call Function222a
+ ret
+; 118329
+
+Function118329: ; 118329
+ call Function1183cb
+ ld a, $15
+ ld [wcd33], a
+ ld a, $16
+ ld [wcd34], a
+ ld a, $6
+ ld [wc3f0], a
+ ld a, [rSVBK]
+ push af
+ ld a, $3
+ ld [rSVBK], a
+.asm_118342
+ call Functiona57
+ call Function118473
+ ld a, [wcf66]
+ cp $18
+ jr c, .asm_118355
+ ld a, [wcd34]
+ ld [wcf66], a
+
+.asm_118355
+ call Function118671
+ call Function11a8fa
+ callba Function115dd3
+ callba Function11619d
+ call DelayFrame
+ ld a, [wcf66]
+ ld hl, wcd33
+ cp [hl]
+ jr nz, .asm_118342
+ pop af
+ ld [rSVBK], a
+ call Function118452
+ ret
+; 11837a
+
+Function11837a: ; 11837a
+ call Function1183cb
+ ld a, $16
+ ld [wcd33], a
+ ld a, $17
+ ld [wcd34], a
+ ld a, $6
+ ld [wc3f0], a
+ ld a, [rSVBK]
+ push af
+ ld a, $3
+ ld [rSVBK], a
+.asm_118393
+ call Functiona57
+ call Function118473
+ ld a, [wcf66]
+ cp $19
+ jr c, .asm_1183a6
+ ld a, [wcd34]
+ ld [wcf66], a
+
+.asm_1183a6
+ call Function1186b2
+ call Function11a8fa
+ callba Function115dd3
+ callba Function11619d
+ call DelayFrame
+ ld a, [wcf66]
+ ld hl, wcd33
+ cp [hl]
+ jr nz, .asm_118393
+ pop af
+ ld [rSVBK], a
+ call Function118452
+ ret
+; 1183cb
+
+Function1183cb: ; 1183cb
+ di
+ ld a, [rIE]
+ ld [wcd32], a
+ call DoubleSpeed
+ xor a
+ ld [rIF], a
+ ld [wc300], a
+ ld [wc301], a
+ ld [wc302], a
+ ld [wcd80], a
+ ld [wcd65], a
+ ld [wcd66], a
+ ld [wcd67], a
+ ld [wcd68], a
+ ld [wc31a], a
+ ld [wcd89], a
+ ld [wcd8a], a
+ ld [wcd8b], a
+ ld [wc3ec], a
+ ld [wc3ed], a
+ ld [wc3ee], a
+ ld [wc3ef], a
+ ld hl, VramState
+ ld a, [hl]
+ ld [wcd7f], a
+ set 1, [hl]
+ ld a, $f
+ ld [rIE], a
+ ld a, $1
+ ld [$ffc9], a
+ ld [$ffe9], a
+ ei
+ callba Function106462
+ callba Function106464
+ callba Function115d99
+ callba Function11615a
+ ld a, $5
+ call GetSRAMBank
+ xor a
+ ld [$bfff], a
+ call CloseSRAM
+ ret
+; 118440
+
+Function118440: ; 118440
+ push af
+ ld a, $5
+ call GetSRAMBank
+ ld a, [$bfff]
+ inc a
+ ld [$bfff], a
+ call CloseSRAM
+ pop af
+ ret
+; 118452
+
+Function118452: ; 118452
+ di
+ xor a
+ ld [$ffc9], a
+ ld [$ffe9], a
+ ld [hVBlank], a
+ call NormalSpeed
+ xor a
+ ld [rIF], a
+ ld a, [wcd32]
+ ld [rIE], a
+ ei
+ ld a, [wcd7f]
+ ld [VramState], a
+ ld a, [wc300]
+ ld [ScriptVar], a
+ ret
+; 118473
+
+Function118473: ; 118473
+ ld a, [wcd65]
+ and a
+ ret z
+ ld a, [wcd66]
+ inc a
+ ld [wcd66], a
+ cp $3c
+ ret nz
+ xor a
+ ld [wcd66], a
+ ld a, [wcd67]
+ inc a
+ ld [wcd67], a
+ cp $3c
+ ret nz
+ ld a, [wcd68]
+ inc a
+ ld [wcd68], a
+ cp $63
+ jr z, .asm_1184a0
+ xor a
+ ld [wcd67], a
+ ret
+
+.asm_1184a0
+ xor a
+ ld [wcd65], a
+ ret
+; 1184a5
+
+Function1184a5: ; 1184a5
+ ld a, [wcf66]
+ ld e, a
+ ld d, 0
+ ld hl, Jumptable_1184b4
+ add hl, de
+ add hl, de
+ ld a, [hli]
+ ld h, [hl]
+ ld l, a
+ jp [hl]
+; 1184b4
+
+Jumptable_1184b4: ; 1184b4
+ dw Function11886e
+ dw Function118880
+ dw Function11878d
+ dw Function1188b0
+ dw Function11878d
+ dw Function1188b8
+ dw Function11878d
+ dw Function1188c0
+ dw Function11878d
+ dw Function1188c8
+ dw Function11878d
+ dw Function118903
+ dw Function118a8f
+ dw Function11878d
+ dw Function118d80
+ dw Function118d9b
+ dw Function11878d
+ dw Function118ded
+ dw Function118e6d
+ dw Function11878d
+ dw Function11984e
+ dw Function118e76
+ dw Function118e7e
+ dw Function11878d
+ dw Function11805e
+ dw Function118e76
+ dw Function118e87
+ dw Function118e76
+; 1184ec
+
+Function1184ec: ; 1184ec
+ ld a, [wcf66]
+ ld e, a
+ ld d, 0
+ ld hl, Jumptable_1184fb
+ add hl, de
+ add hl, de
+ ld a, [hli]
+ ld h, [hl]
+ ld l, a
+ jp [hl]
+; 1184fb
+
+Jumptable_1184fb: ; 1184fb
+ dw Function11886e
+ dw Function118880
+ dw Function11878d
+ dw Function1188b0
+ dw Function11878d
+ dw Function1188b8
+ dw Function11878d
+ dw Function1188c0
+ dw Function11878d
+ dw Function1188c8
+ dw Function11878d
+ dw Function118903
+ dw Function119954
+ dw Function11878d
+ dw Function119973
+ dw Function11878d
+ dw Function119987
+ dw Function11878d
+ dw Function1199b4
+ dw Function1199ca
+ dw Function11878d
+ dw Function1199e2
+ dw Function119b0d
+ dw Function11878d
+ dw Function119b6b
+ dw Function119b3b
+ dw Function11878d
+ dw Function119b52
+ dw Function11878d
+ dw Function118e6d
+ dw Function11878d
+ dw Function118e76
+ dw Function118e7e
+ dw Function11878d
+ dw Function11805e
+ dw Function118e76
+ dw Function118e87
+ dw Function119b45
+ dw Function11878d
+ dw Function119ac9
+ dw Function118e76
+; 11854d
+
+Function11854d: ; 11854d
+ ld a, [wcf66]
+ ld e, a
+ ld d, 0
+ ld hl, Jumptable_11855c
+ add hl, de
+ add hl, de
+ ld a, [hli]
+ ld h, [hl]
+ ld l, a
+ jp [hl]
+; 11855c
+
+Jumptable_11855c: ; 11855c
+ dw Function118922
+ dw Function118936
+ dw Function118982
+ dw Function11805e
+ dw Function119ca2
+ dw Function119cab
+ dw Function119cb8
+ dw Function119cc3
+ dw Function119cdf
+ dw Function119cec
+ dw Function119c97
+ dw Function119cab
+ dw Function119cb8
+ dw Function118e76
+ dw Function118e87
+ dw Function118e76
+; 11857c
+
+Function11857c: ; 11857c
+ ld a, [wcf66]
+ ld e, a
+ ld d, 0
+ ld hl, Jumptable_11858b
+ add hl, de
+ add hl, de
+ ld a, [hli]
+ ld h, [hl]
+ ld l, a
+ jp [hl]
+; 11858b
+
+Jumptable_11858b: ; 11858b
+ dw Function11886e
+ dw Function118880
+ dw Function11878d
+ dw Function1188b0
+ dw Function11878d
+ dw Function1188b8
+ dw Function11878d
+ dw Function1188c0
+ dw Function11878d
+ dw Function1188c8
+ dw Function11878d
+ dw Function118903
+ dw Function118a7a
+ dw Function11878d
+ dw Function11891c
+ dw Function1198ee
+ dw Function1198f7
+ dw Function11878d
+ dw Function119937
+ dw Function118e6d
+ dw Function11878d
+ dw Function118e76
+ dw Function118e7e
+ dw Function11878d
+ dw Function11805e
+ dw Function118e76
+ dw Function118e87
+ dw Function118e76
+; 1185c3
+
+Function1185c3: ; 1185c3
+ ld a, [wcf66]
+ ld e, a
+ ld d, 0
+ ld hl, Jumptable_1185d2
+ add hl, de
+ add hl, de
+ ld a, [hli]
+ ld h, [hl]
+ ld l, a
+ jp [hl]
+; 1185d2
+
+Jumptable_1185d2: ; 1185d2
+ dw Function11886e
+ dw Function118880
+ dw Function11878d
+ dw Function1188b0
+ dw Function11878d
+ dw Function1188b8
+ dw Function11878d
+ dw Function1188c0
+ dw Function11878d
+ dw Function1188c8
+ dw Function11878d
+ dw Function118903
+ dw Function118aa4
+ dw Function11878d
+ dw Function118e92
+ dw Function11878d
+ dw Function118eb0
+ dw Function118ec6
+ dw Function118f0d
+ dw Function118f14
+ dw Function118f5e
+ dw Function11878d
+ dw Function118fc0
+ dw Function11878d
+ dw Function119054
+ dw Function1190d0
+ dw Function11878d
+ dw Function1190ec
+ dw Function118e6d
+ dw Function11878d
+ dw Function118e76
+ dw Function118e7e
+ dw Function11878d
+ dw Function11805e
+ dw Function118e76
+ dw Function118e87
+ dw Function119cc3
+ dw Function119cdf
+ dw Function119cec
+ dw Function11914e
+ dw Function118e76
+; 118624
+
+Function118624: ; 118624
+ ld a, [wcf66]
+ ld e, a
+ ld d, 0
+ ld hl, Jumptable_118633
+ add hl, de
+ add hl, de
+ ld a, [hli]
+ ld h, [hl]
+ ld l, a
+ jp [hl]
+; 118633
+
+Jumptable_118633: ; 118633
+ dw Function118866
+ dw Function118880
+ dw Function11878d
+ dw Function1188b0
+ dw Function11878d
+ dw Function1188b8
+ dw Function11878d
+ dw Function1188c0
+ dw Function11878d
+ dw Function1188c8
+ dw Function11878d
+ dw Function118903
+ dw Function118aa4
+ dw Function11878d
+ dw Function118e92
+ dw Function11878d
+ dw Function11915d
+ dw Function118f68
+ dw Function11878d
+ dw Function119009
+ dw Function11878d
+ dw Function119054
+ dw Function118e6d
+ dw Function11878d
+ dw Function118e76
+ dw Function118e7e
+ dw Function11878d
+ dw Function11805e
+ dw Function118e76
+ dw Function118e87
+ dw Function118e76
+; 118671
+
+Function118671: ; 118671
+ ld a, [wcf66]
+ ld e, a
+ ld d, 0
+ ld hl, Jumptable_118680
+ add hl, de
+ add hl, de
+ ld a, [hli]
+ ld h, [hl]
+ ld l, a
+ jp [hl]
+; 118680
+
+Jumptable_118680: ; 118680
+ dw Function118866
+ dw Function118880
+ dw Function11878d
+ dw Function1188b0
+ dw Function11878d
+ dw Function1188b8
+ dw Function11878d
+ dw Function1188c0
+ dw Function11878d
+ dw Function1188c8
+ dw Function11878d
+ dw Function118903
+ dw Function119380
+ dw Function119388
+ dw Function1193a0
+ dw Function11878d
+ dw Function118e6d
+ dw Function11878d
+ dw Function118e76
+ dw Function118e7e
+ dw Function11878d
+ dw Function11805e
+ dw Function118e76
+ dw Function118e87
+ dw Function118e76
+; 1186b2
+
+Function1186b2: ; 1186b2
+ ld a, [wcf66]
+ ld e, a
+ ld d, 0
+ ld hl, Jumptable_1186c1
+ add hl, de
+ add hl, de
+ ld a, [hli]
+ ld h, [hl]
+ ld l, a
+ jp [hl]
+; 1186c1
+
+Jumptable_1186c1: ; 1186c1
+ dw Function118866
+ dw Function118880
+ dw Function11878d
+ dw Function1188b0
+ dw Function11878d
+ dw Function1188b8
+ dw Function11878d
+ dw Function1188c0
+ dw Function11878d
+ dw Function1188c8
+ dw Function11878d
+ dw Function118903
+ dw Function119380
+ dw Function1193e3
+ dw Function1193fb
+ dw Function11878d
+ dw Function119413
+ dw Function118e6d
+ dw Function11878d
+ dw Function118e76
+ dw Function118e7e
+ dw Function11878d
+ dw Function11805e
+ dw Function118e76
+ dw Function118e87
+ dw Function118e76
+; 1186f5
+
+Function1186f5: ; 1186f5 (46:46f5)
+ ld a, [wcf66]
+ ld e, a
+ ld d, 0
+ ld hl, Jumptable_118704
+ add hl, de
+ add hl, de
+ ld a, [hli]
+ ld h, [hl]
+ ld l, a
+ jp [hl]
+; 118704 (46:4704)
+
+Jumptable_118704: ; 118704 (46:4704)
+ dw Function11886a
+ dw Function118880
+ dw Function11878d
+ dw Function1188b0
+ dw Function11878d
+ dw Function1188b8
+ dw Function11878d
+ dw Function1188c0
+ dw Function11878d
+ dw Function1188c8
+ dw Function11878d
+ dw Function118903
+ dw Function118abc
+ dw Function11878d
+ dw Function119451
+ dw Function1195f8
+ dw Function119612
+ dw Function119629
+ dw Function119648
+ dw Function11878d
+ dw Function118e6d
+ dw Function11878d
+ dw Function118e76
+ dw Function118e7e
+ dw Function11878d
+ dw Function11805e
+ dw Function11967d
+ dw Function119685
+ dw Function119665
+ dw Function11966d
+ dw Function118e76
+ dw Function118e87
+ dw Function118e76
+; 118746 (46:4746)
+
+Function118746: ; 118746
+ ld a, [wcf66]
+ ld e, a
+ ld d, 0
+ ld hl, Jumptable_118755
+ add hl, de
+ add hl, de
+ ld a, [hli]
+ ld h, [hl]
+ ld l, a
+ jp [hl]
+; 118755
+
+Jumptable_118755: ; 118755
+ dw Function11886e
+ dw Function118880
+ dw Function11878d
+ dw Function1188b0
+ dw Function11878d
+ dw Function1188b8
+ dw Function11878d
+ dw Function1188c0
+ dw Function11878d
+ dw Function1188c8
+ dw Function11878d
+ dw Function118903
+ dw Function118ad0
+ dw Function11878d
+ dw Function1196f2
+ dw Function1197c9
+ dw Function1197dc
+ dw Function11878d
+ dw Function118e6d
+ dw Function11878d
+ dw Function119800
+ dw Function118e76
+ dw Function118e7e
+ dw Function11878d
+ dw Function11805e
+ dw Function118e76
+ dw Function118e87
+ dw Function118e76
+; 11878d
+
+Function11878d: ; 11878d (46:478d)
+ ld a, [wc821]
+ bit 1, a
+ jr nz, .asm_1187af
+ bit 2, a
+ jr nz, .asm_1187d1
+ bit 0, a
+ jr nz, .asm_1187aa
+ ld a, [wcd89]
+ and $1
+ jr z, .asm_1187a7
+ ld a, $3
+ ld [rSVBK], a ; $ff00+$70
+.asm_1187a7
+ jp Function119e2e
+.asm_1187aa
+ call Function118821
+ ret c
+ ret
+.asm_1187af
+ ld a, $0
+ call Function3e32
+ ld [wc300], a
+ ld a, l
+ ld [wc301], a
+ ld a, h
+ ld [wc302], a
+ ld a, $a
+ call Function3e32
+ ld a, [wc3f0]
+ ld [wc319], a
+ ld a, [wcd34]
+ ld [wcf66], a
+ ret
+.asm_1187d1
+ ld hl, wcd89
+ bit 0, [hl]
+ jr nz, .asm_118803
+ set 0, [hl]
+ ld a, $6
+ ld [rSVBK], a ; $ff00+$70
+ ld de, Unkn1Pals
+ ld bc, $1000
+ ld a, [hl]
+ sla a
+ jr c, .asm_1187f9
+ sla a
+ jr c, .asm_1187fd
+ sla a
+ jr c, .asm_1187f5
+ ld a, $24
+ jr .asm_1187ff
+.asm_1187f5
+ ld a, $28
+ jr .asm_1187ff
+.asm_1187f9
+ ld a, $2a
+ jr .asm_1187ff
+.asm_1187fd
+ ld a, $2c
+.asm_1187ff
+ call Function3e32
+ ret
+.asm_118803
+ ld a, $d3
+
+Function118805: ; 118805 (46:4805)
+ ld [wc300], a
+ xor a
+ ld [wc301], a
+ ld [wc302], a
+ ld a, $a
+ call Function3e32
+ ld a, [wc3f0]
+ ld [wc319], a
+ ld a, [wcd34]
+ ld [wcf66], a
+ ret
+
+Function118821: ; 118821 (46:4821)
+ ld a, [wc319]
+ cp $3
+ jr c, .asm_11884a
+ cp $4
+ jr z, .asm_11884a
+ ld a, [hJoyDown] ; $ff00+$a8
+ cp $5
+ jr nz, .asm_11884a
+ ld a, $a
+ call Function3e32
+ ld a, $a
+ ld [wc300], a
+ ld a, [wc3f0]
+ ld [wc319], a
+ ld a, [wcd34]
+ ld [wcf66], a
+ scf
+ ret
+.asm_11884a
+ and a
+ ret
+; 11884c (46:484c)
+
+Function11884c: ; 11884c
+ ld a, [hJoyDown]
+ cp $5
+ jr nz, .asm_118864
+ ld a, $a
+ call Function3e32
+ ld a, $a
+ ld [wc300], a
+ ld a, [wcd34]
+ ld [wcf66], a
+ scf
+ ret
+
+.asm_118864
+ and a
+ ret
+; 118866
+
+Function118866:
+ ld a, 2
+ jr asm_11886f
+
+Function11886a: ; 11886a (46:486a)
+ ld a, 1
+ jr asm_11886f
+; 11886e (46:486e)
+
+Function11886e:
+ xor a
+
+asm_11886f
+ ld [BGMapPalBuffer], a
+ ld a, $0
+ ld [wcd3c], a
+ call Function119e2e
+ ld a, [wcd33]
+ ld [wcd45], a
+
+Function118880: ; 118880 (46:4880)
+ call Function119ed8
+ ret c
+ xor a
+ ld [wcf64], a
+ ld [wc807], a
+ ld de, wcd81
+ ld hl, $46
+ ld a, $2
+ jp Function119e2b
+; 118896 (46:4896)
+
+Function118896: ; 118896
+ ld a, [wc821]
+ bit 1, a
+ jr nz, .asm_1188a5
+ bit 2, a
+ jr nz, .asm_1188a5
+ bit 0, a
+ jr z, .asm_1188aa
+
+.asm_1188a5
+ ld a, $34
+ jp Function119e2b
+
+.asm_1188aa
+ call Function119e2e
+ jp Function119e2e
+; 1188b0
+
+Function1188b0: ; 1188b0 (46:48b0)
+ ld de, wc346
+ ld a, $c
+ jp Function119e2b
+
+Function1188b8: ; 1188b8 (46:48b8)
+ ld de, wc3ac
+ ld a, $e
+ jp Function119e2b
+
+Function1188c0: ; 1188c0 (46:48c0)
+ ld de, wc3cd
+ ld a, $10
+ jp Function119e2b
+
+Function1188c8: ; 1188c8 (46:48c8)
+ ld a, $1
+ ld [wcd65], a
+ call Function1188e7
+ ld hl, wc708
+.asm_1188d3
+ ld a, [de]
+ inc de
+ ld [hli], a
+ and a
+ jr nz, .asm_1188d3
+ call Function119eb4
+ call Function119ec2
+ ld hl, wc708
+ ld a, $6
+ jp Function119e2b
+
+Function1188e7: ; 1188e7 (46:48e7)
+ ld de, wc346
+ ld a, $5
+ call GetSRAMBank
+ ld a, [$aa4a]
+ call CloseSRAM
+ and a
+ ret z
+ sla a
+ ld c, a
+.asm_1188fa
+ ld a, [de]
+ inc de
+ and a
+ jr nz, .asm_1188fa
+ dec c
+ jr nz, .asm_1188fa
+ ret
+
+Function118903: ; 118903 (46:4903)
+ ld a, [wc3f0]
+ ld [wc319], a
+ ld c, $1
+ callba Function115e18
+ ld a, $8
+ ld [wcd3c], a
+ call Function119ed8
+ jp Function119e2e
+; 11891c (46:491c)
+
+Function11891c: ; 11891c
+ call Function118b42
+ jp Function119e2e
+; 118922
+
+Function118922: ; 118922
+ ld a, [wcd38]
+ and a
+ jr nz, .asm_11892d
+ ld hl, UnknownText_0x11aba5
+ jr .asm_118930
+
+.asm_11892d
+ ld hl, UnknownText_0x11abcb
+
+.asm_118930
+ call Function11a9c0
+ call Function119e2e
+
+Function118936:
+ ld a, [wc31a]
+ and a
+ ret nz
+ ld hl, MenuDataHeader_119cf7
+ call LoadMenuDataHeader
+ call Function1cbb
+ call Function1cfd
+ call Function321c
+ hlcoord 16, 8, AttrMap
+ ld a, $40
+ or [hl]
+ ld [hl], a
+ call Function3200
+ ld a, $1
+ ld [wcd4f], a
+ ld a, $1
+ ld [rSVBK], a
+ ld a, [StatusFlags]
+ bit 6, a
+ jr nz, .asm_11896b
+ ld hl, Strings_119d64
+ ld a, $5
+ jr .asm_118970
+
+.asm_11896b
+ ld hl, Strings_119d0c
+ ld a, $b
+
+.asm_118970
+ ld [wcd4a], a
+ ld a, l
+ ld [wcd4b], a
+ ld a, h
+ ld [wcd4c], a
+ ld a, $3
+ ld [rSVBK], a
+ call Function119e2e
+
+Function118982:
+ hlcoord 13, 8
+ ld de, String_119d07
+ call PlaceString
+ hlcoord 13, 10
+ ld de, String_119d07
+ call PlaceString
+ ld a, [wcd4b]
+ ld l, a
+ ld a, [wcd4c]
+ ld h, a
+ ld d, $0
+ ld a, [wcd4f]
+ dec a
+ rlca
+ rlca
+ rlca
+ ld e, a
+ add hl, de
+ ld a, l
+ ld e, a
+ ld a, h
+ ld d, a
+ ld a, [rSVBK]
+ push af
+ ld a, $1
+ ld [rSVBK], a
+ ld bc, StringBuffer3
+.asm_1189b5
+ ld a, [hli]
+ cp $50
+ jr z, .asm_1189c4
+ cp $7f
+ jr z, .asm_1189c2
+ ld [bc], a
+ inc bc
+ jr .asm_1189b5
+
+.asm_1189c2
+ ld a, $50
+
+.asm_1189c4
+ ld [bc], a
+ pop af
+ ld [rSVBK], a
+ hlcoord 13, 9
+ call PlaceString
+ ld hl, hJoyPressed
+ ld a, [hl]
+ and $2
+ jr nz, .asm_118a39
+ ld a, [hl]
+ and $1
+ jr nz, .asm_118a01
+ ld a, [hl]
+ and $80
+ jr nz, .asm_1189e6
+ ld a, [hl]
+ and $40
+ jr nz, .asm_1189f2
+.asm_1189e5
+ ret
+
+.asm_1189e6
+ ld hl, wcd4f
+ dec [hl]
+ jr nz, .asm_1189e5
+ ld a, [wcd4a]
+ ld [hl], a
+ jr .asm_1189e5
+
+.asm_1189f2
+ ld a, [wcd4a]
+ ld hl, wcd4f
+ inc [hl]
+ cp [hl]
+ jr nc, .asm_1189e5
+ ld a, $1
+ ld [hl], a
+ jr .asm_1189e5
+
+.asm_118a01
+ call PlayClickSFX
+ ld a, [wcd4f]
+ ld hl, wcd4a
+ cp [hl]
+ jr z, .asm_118a3c
+ dec a
+ and $fe
+ srl a
+ ld [wcf65], a
+ ld a, [rSVBK]
+ push af
+ ld a, $1
+ ld [rSVBK], a
+ call Function1c17
+ pop af
+ ld [rSVBK], a
+ ld a, [wcd38]
+ and a
+ jr nz, .asm_118a30
+ call Function119d93
+ ret c
+ call Function119dd1
+ ret c
+
+.asm_118a30
+ ld a, [wcd4f]
+ ld [wd000 + $800], a
+ jp Function119e2e
+
+.asm_118a39
+ call PlayClickSFX
+
+.asm_118a3c
+ ld a, [rSVBK]
+ push af
+ ld a, $1
+ ld [rSVBK], a
+ call Function1c17
+ pop af
+ ld [rSVBK], a
+ ld a, $7
+ ld [wcf66], a
+ ld a, $0
+ ld [wcd46], a
+ ret
+; 118a54
+
+Function118a54: ; 118a54
+ ld a, [wcd55]
+ ld l, a
+ ld a, [wcd56]
+ ld h, a
+ ld de, wc3ec
+ ld bc, $0004
+ jp Function118ae4
+; 118a65
+
+Function118a65: ; 118a65
+ ld hl, BattleDownloadURL
+ ld de, wcc60
+ ld bc, $80
+ call CopyBytes
+ ld de, Unkn1Pals
+ ld bc, $1000
+ jp Function118b10
+; 118a7a
+
+Function118a7a: ; 118a7a
+ ld hl, BattleDownloadURL
+ ld de, wcc60
+ ld bc, $80
+ call CopyBytes
+ ld de, Unkn1Pals
+ ld bc, $1000
+ jp Function118b10
+; 118a8f
+
+Function118a8f: ; 118a8f
+ ld hl, ExchangeDownloadURL
+ ld de, wcc60
+ ld bc, $80
+ call CopyBytes
+ ld de, Unkn1Pals
+ ld bc, $1000
+ jp Function118b10
+; 118aa4
+
+Function118aa4: ; 118aa4
+ ld hl, NewsDownloadURL
+ ld de, wcc60
+ ld bc, $80
+ call CopyBytes
+ ld a, $5
+ ld [rSVBK], a
+ ld de, LYOverrides
+ ld bc, $e00
+ jr Function118b10
+; 118abc
+
+Function118abc: ; 118abc (46:4abc)
+ ld hl, MenuDownloadURL
+ ld de, wcc60
+ ld bc, $80
+ call CopyBytes
+ ld de, Unkn1Pals
+ ld bc, $1000
+ jr Function118b10
+; 118ad0 (46:4ad0)
+
+Function118ad0:
+ ld hl, IndexDownloadURL
+ ld de, wcc60
+ ld bc, $80
+ call CopyBytes
+ ld de, Unkn1Pals
+ ld bc, $1000
+ jr Function118b10
+
+Function118ae4:
+ push bc
+ push de
+ push hl
+ ld a, $8
+ ld [wcd3c], a
+ call Function119ed8
+ pop hl
+ ld c, $0
+ ld de, wcc60
+.asm_118af5
+ ld a, [hli]
+ ld [de], a
+ inc de
+ and a
+ jr z, .asm_118b06
+ inc c
+ ld a, c
+ cp $a6
+ jr c, .asm_118af5
+ ld a, $da
+ jp Function118805
+
+.asm_118b06
+ call Function118b24
+ pop de
+ pop bc
+ ld a, $2a
+ jp Function119e2b
+; 118b10
+
+Function118b10:
+ push de
+ push bc
+ ld a, $8
+ ld [wcd3c], a
+ call Function119ed8
+ call Function118b24
+ pop bc
+ pop de
+ ld a, $2a
+ jp Function119e2b
+
+Function118b24: ; 118b24 (46:4b24)
+ ld hl, wc346
+ ld a, $8
+ ld [hli], a
+ ld a, $c7
+ ld [hli], a
+ ld a, $60
+ ld [hli], a
+ ld a, $cc
+ ld [hli], a
+ call Function119eb4
+ call Function119ec2
+ ld a, $80
+ ld [wcd89], a
+ ld hl, wc346
+ ret
+; 118b42 (46:4b42)
+
+Function118b42: ; 118b42
+ ld hl, DefaultFlypoint
+ ld a, l
+ ld [wcd51], a
+ ld a, h
+ ld [wcd52], a
+ call Function118b8c
+ ld a, l
+ ld [wcd55], a
+ ld [wcd59], a
+ ld a, h
+ ld [wcd56], a
+ ld [wcd5a], a
+ call Function118b8c
+ ld a, l
+ ld [wcd53], a
+ ld [wcd5d], a
+ ld a, h
+ ld [wcd54], a
+ ld [wcd5e], a
+ call Function118b8c
+ ld a, l
+ ld [wcd57], a
+ ld [wcd5b], a
+ ld a, h
+ ld [wcd58], a
+ ld [wcd5c], a
+ call Function118b8c
+ ld a, l
+ ld [wcd5f], a
+ ld a, h
+ ld [wcd60], a
+ ret
+; 118b8c
+
+Function118b8c: ; 118b8c
+.asm_118b8c
+ call Function118b9a
+ ret nc
+ ld a, [hli]
+ cp $d
+ jr nz, .asm_118b8c
+ dec hl
+ xor a
+ ld [hli], a
+ ld [hli], a
+ ret
+; 118b9a
+
+Function118b9a: ; 118b9a
+ ld a, h
+ cp $e0
+ ret c
+ ld a, $d3
+ call Function118805
+ and a
+ ret
+; 118ba5
+
+
+ charmap " ", $20 ; revert to ascii
+
+ExchangeDownloadURL: ; 0x118ba5
+ db "http://gameboy.datacenter.ne.jp/cgb/download?name=/01/CGB-BXTJ/exchange/index.txt", 0
+
+BattleDownloadURL: ; 0x118bf7
+ db "http://gameboy.datacenter.ne.jp/cgb/download?name=/01/CGB-BXTJ/battle/index.txt", 0
+
+NewsDownloadURL: ; 0x118c47
+ db "http://gameboy.datacenter.ne.jp/cgb/download?name=/01/CGB-BXTJ/news/index.txt", 0
+
+MenuDownloadURL: ; 0x118c95
+ db "http://gameboy.datacenter.ne.jp/cgb/download?name=/01/CGB-BXTJ/POKESTA/menu.cgb", 0
+
+IndexDownloadURL: ; 0x118ce5
+ db "http://gameboy.datacenter.ne.jp/cgb/download?name=/01/CGB-BXTJ/tamago/index.txt", 0
+
+
+Function118d35: ; 118d35
+ ld hl, LYOverridesBackup
+ ld a, [wcd38]
+ and a
+ jr nz, .asm_118d6e
+ ld a, [hli]
+ cp $94
+ jr nz, .asm_118d7b
+ ld a, [hl]
+ cp $5
+ jr nz, .asm_118d7b
+ ld a, [wcd4f]
+ sla a
+ ld b, a
+ sla a
+ sla a
+ add b
+ ld b, a
+ ld a, $5
+ call GetSRAMBank
+ ld a, b
+ ld [$b2fb], a
+ call CloseSRAM
+ callba Function170be4
+ callba Function1700c4
+ jr .asm_118d78
+
+.asm_118d6e
+ ld a, [hli]
+ cp $96
+ jr nz, .asm_118d7b
+ ld a, [hl]
+ cp $0
+ jr nz, .asm_118d7b
+
+.asm_118d78
+ jp Function119e2e
+
+.asm_118d7b
+ ld a, $d3
+ jp Function118805
+; 118d80
+
+Function118d80: ; 118d80
+ call Function118e06
+ ld a, [wcd38]
+ and a
+ jr z, .asm_118d8e
+ call Function119e2e
+ jr asm_118d9f
+
+.asm_118d8e
+ ld a, $9
+ ld [wcd3c], a
+ ld a, $12
+ ld [wcd45], a
+ call Function119e2e
+
+Function118d9b:
+ call Function119ed8
+ ret c
+
+asm_118d9f
+ ld hl, $c608
+ call Function119940
+ ld a, [wcd38]
+ and a
+ jr nz, .asm_118db2
+ ld a, $8f
+ ld [wcd3b], a
+ jr .asm_118db7
+
+.asm_118db2
+ ld a, $26
+ ld [wcd3b], a
+
+.asm_118db7
+ ld hl, $d800
+ ld a, $8
+ ld [hli], a
+ ld a, $c6
+ ld [hli], a
+ ld a, [wcd3b]
+ ld [hli], a
+ xor a
+ ld [hli], a
+ ld a, $8
+ ld [hli], a
+ ld a, $c7
+ ld [hli], a
+ ld a, [wcd39]
+ ld [hli], a
+ ld a, [wcd3a]
+ ld [hli], a
+ call Function119eb4
+ call Function119ec2
+ ld a, $40
+ ld [wcd89], a
+ ld hl, $d800
+ ld de, $de00
+ ld bc, $0200
+ ld a, $2c
+ jp Function119e2b
+; 118ded
+
+Function118ded: ; 118ded
+ ld a, [wcd38]
+ and a
+ jr z, .asm_118e03
+ ld a, [rSVBK]
+ push af
+ ld a, $1
+ ld [rSVBK], a
+ callba Function11b93b
+ pop af
+ ld [rSVBK], a
+
+.asm_118e03
+ jp Function119e2e
+; 118e06
+
+Function118e06: ; 118e06
+ ld hl, DefaultFlypoint
+ ld a, [wcd38]
+ and a
+ jr z, .asm_118e1d
+.asm_118e0f
+ call Function118b9a
+ ret nc
+ ld a, [hli]
+ cp $d
+ jr nz, .asm_118e0f
+ ld a, [hli]
+ cp $a
+ jr nz, .asm_118e0f
+
+.asm_118e1d
+ ld a, l
+ ld [wcd39], a
+ ld a, h
+ ld [wcd3a], a
+.asm_118e25
+ call Function118b9a
+ ret nc
+ ld a, [hli]
+ cp $d
+ jr nz, .asm_118e25
+ ld a, [hli]
+ cp $a
+ jr nz, .asm_118e25
+ dec hl
+ xor a
+ ld [hld], a
+ ld [hl], a
+ jr asm_118e3e
+
+Function118e39: ; 118e39 (46:4e39)
+.asm_118e39
+ ld a, [hli]
+ and a
+ jr nz, .asm_118e39
+ dec hl
+asm_118e3e
+.asm_118e3e
+ ld a, [hld]
+ cp $2f
+ jr nz, .asm_118e3e
+ inc hl
+ inc hl
+ ld de, wcd85
+ ld c, $4
+.asm_118e4a
+ ld a, [hli]
+ cp $2e
+ jr z, .asm_118e63
+ cp $30
+ jr c, .asm_118e67
+ cp $3a
+ jr nc, .asm_118e67
+ sub $30
+ add $f6
+ ld [de], a
+ inc de
+ dec c
+ jr nz, .asm_118e4a
+ ld de, wcd85
+.asm_118e63
+ ld a, $50
+ ld [de], a
+ ret
+.asm_118e67
+ ld a, $f3
+ ld [de], a
+ inc de
+ jr .asm_118e63
+
+Function118e6d: ; 118e6d (46:4e6d)
+ xor a
+ ld [wcd65], a
+ ld a, $a
+ jp Function119e2b
+
+Function118e76: ; 118e76 (46:4e76)
+ ld a, $c
+ ld [wcd3c], a
+ jp Function119e2e
+
+Function118e7e: ; 118e7e (46:4e7e)
+ call Function119ed8
+ ret c
+ ld a, $36
+ jp Function119e2b
+
+Function118e87: ; 118e87 (46:4e87)
+ call Function119ed8
+ ret c
+ ld a, [wcd33]
+ ld [wcf66], a
+ ret
+; 118e92 (46:4e92)
+
+Function118e92: ; 118e92
+ call Function118440
+ call Function1191d3
+ ld a, [wcd53]
+ ld l, a
+ ld a, [wcd54]
+ ld h, a
+ ld de, wcc60
+ call Function1191ad
+ ret c
+ ld de, $d800
+ ld bc, $0800
+ jp Function118b10
+; 118eb0
+
+Function118eb0: ; 118eb0
+ call Function118440
+ ld hl, $d802
+ ld de, BGMapBuffer
+ ld bc, $000c
+ call CopyBytes
+ call Function1192cc
+ ret c
+ jp Function119e2e
+; 118ec6
+
+Function118ec6: ; 118ec6
+ call Function118440
+ call SpeechTextBox
+ ld hl, $d80e
+ ld de, wc320
+ ld bc, $0026
+ call CopyBytes
+ xor a
+ ld [wc31f], a
+ ld a, $20
+ ld [wc31b], a
+ ld a, $c3
+ ld [wc31c], a
+ hlcoord 1, 14
+ ld a, l
+ ld [wc31d], a
+ ld a, h
+ ld [wc31e], a
+ ld a, $2
+ ld [wc31a], a
+ ld a, $1d
+ ld [wcd3c], a
+ ld a, $24
+ ld [wcd45], a
+ ld a, $11
+ ld [wcd46], a
+ ld a, $1c
+ ld [wcd47], a
+ jp Function119e2e
+; 118f0d
+
+Function118f0d: ; 118f0d
+ call Function119ed8
+ ret c
+ call Function118440
+
+Function118f14:
+ call Function118440
+ ld a, [wcd51]
+ ld l, a
+ ld a, [wcd52]
+ ld h, a
+ ld de, wcc60
+ call Function1191ad
+ ret c
+ ld a, [wcc60]
+ and a
+ jr z, .asm_118f32
+ ld hl, UnknownText_0x11aa13
+ call Function11a9c0
+
+.asm_118f32
+ ld a, [wcd57]
+ ld l, a
+ ld a, [wcd58]
+ ld h, a
+ ld de, wcc60
+ call Function1191ad
+ ret c
+ ld hl, wcc60
+ call Function118e39
+ ld a, $9
+ ld [wcd3c], a
+ ld a, $24
+ ld [wcd45], a
+ ld a, $13
+ ld [wcd46], a
+ ld a, $1c
+ ld [wcd47], a
+ jp Function119e2e
+; 118f5e
+
+Function118f5e: ; 118f5e
+ call Function119ed8
+ ret c
+ call Function118440
+ call DelayFrame
+
+Function118f68:
+ call Function119223
+ ret c
+ call Function118440
+ ld a, [wcd51]
+ ld l, a
+ ld a, [wcd52]
+ ld h, a
+ ld de, wcc60
+ call Function1191ad
+ ret c
+ ld a, [wcc60]
+ and a
+ jr z, .asm_118fba
+ ld hl, wc346
+ ld a, $c608 % $100
+ ld [hli], a
+ ld a, $c608 / $100
+ ld [hli], a
+ ld a, [wcd4b]
+ ld [hli], a
+ ld a, [wcd4c]
+ ld [hli], a
+ ld a, wc708 % $100
+ ld [hli], a
+ ld a, wc708 / $100
+ ld [hli], a
+ ld a, $60
+ ld [hli], a
+ ld a, $cc
+ ld [hli], a
+ call Function119eb4
+ call Function119ec2
+ ld a, $40
+ ld [wcd89], a
+ ld hl, wc346
+ ld de, $de00
+ ld bc, $0200
+ ld a, $2c
+ jp Function119e2b
+
+.asm_118fba
+ call Function119e2e
+ jp Function119e2e
+; 118fc0
+
+Function118fc0: ; 118fc0
+ call Function118440
+ ld a, [wcd55]
+ ld l, a
+ ld a, [wcd56]
+ ld h, a
+ ld de, wcc60
+ call Function1191ad
+ ret c
+ ld a, [wcc60]
+ and a
+ jr z, .asm_118ffa
+ ld a, [wcd51]
+ ld l, a
+ ld a, [wcd52]
+ ld h, a
+ ld de, wcc60
+ call Function1191ad
+ ret c
+ ld a, [wcc60]
+ and a
+ jr z, .asm_118ff2
+ ld hl, UnknownText_0x11aa2c
+ jr .asm_118ff5
+
+.asm_118ff2
+ ld hl, UnknownText_0x11aa4b
+
+.asm_118ff5
+ call Function11a9c0
+ jr Function119009
+
+.asm_118ffa
+ ld hl, UnknownText_0x11aa4b
+ call Function11a9c0
+ call Function119e2e
+ call Function119e2e
+ jp Function119e2e
+
+Function119009:
+ call Function118440
+ call Function119300
+ ld a, [wcd55]
+ ld l, a
+ ld a, [wcd56]
+ ld h, a
+ ld de, wcc60
+ call Function1191ad
+ ret c
+ ld hl, wc346
+ ld a, $8
+ ld [hli], a
+ ld a, $c6
+ ld [hli], a
+ ld a, [wcd4b]
+ ld [hli], a
+ ld a, [wcd4c]
+ ld [hli], a
+ ld a, $8
+ ld [hli], a
+ ld a, $c7
+ ld [hli], a
+ ld a, $60
+ ld [hli], a
+ ld a, $cc
+ ld [hli], a
+ call Function119eb4
+ call Function119ec2
+ ld a, $40
+ ld [wcd89], a
+ ld hl, wc346
+ ld de, Unkn1Pals
+ ld bc, $1000
+ ld a, $2c
+ jp Function119e2b
+; 119054
+
+Function119054: ; 119054
+ ld a, $6
+ call GetSRAMBank
+ ld hl, DefaultFlypoint
+ ld a, [wcd4f]
+ ld e, a
+ ld a, [wcd50]
+ ld d, a
+ ld a, [Unkn1Pals]
+ ld c, a
+ ld a, [wd001]
+ ld b, a
+ call Function119192
+ ret c
+ ld a, [wcd89]
+ and $1
+ jr z, .asm_11908a
+ ld a, $6
+ ld [rSVBK], a
+ ld hl, DefaultFlypoint
+ ld a, [Unkn1Pals]
+ ld c, a
+ ld a, [wd001]
+ ld b, a
+ call Function119192
+ ret c
+
+.asm_11908a
+ call CloseSRAM
+ ld a, $3
+ ld [rSVBK], a
+ ld a, $5
+ call GetSRAMBank
+ ld a, [wcd4f]
+ ld [$b1b3], a
+ ld a, [wcd50]
+ ld [$b1b4], a
+ ld hl, BGMapBuffer
+ ld de, $aa7f
+ ld bc, $000c
+ call CopyBytes
+ ld a, [rSVBK]
+ push af
+ ld a, $1
+ ld [rSVBK], a
+ ld a, [wd474]
+ ld [$b2f3], a
+ ld hl, wd475
+ ld de, $b2f4
+ ld bc, $0004
+ call CopyBytes
+ pop af
+ ld [rSVBK], a
+ call CloseSRAM
+ jp Function119e2e
+; 1190d0
+
+Function1190d0: ; 1190d0
+ ld a, $3
+ ld [rSVBK], a
+ ld a, [wcd57]
+ ld l, a
+ ld a, [wcd58]
+ ld h, a
+ ld de, wcc60
+ call Function1191ad
+ ret c
+ ld de, Unkn1Pals
+ ld bc, $1000
+ jp Function118b10
+; 1190ec
+
+Function1190ec: ; 1190ec
+ ld a, $5
+ call GetSRAMBank
+ ld hl, BGMapBuffer
+ ld de, $aa73
+ ld bc, $000c
+ call CopyBytes
+ call CloseSRAM
+ ld a, $5
+ call GetSRAMBank
+ ld a, $1
+ ld [$aa72], a
+ call CloseSRAM
+ ld a, $6
+ call GetSRAMBank
+ ld a, [Unkn1Pals]
+ ld c, a
+ ld a, [wd001]
+ ld b, a
+ ld hl, DefaultFlypoint
+ ld de, $a000
+ call Function119192
+ ret c
+ ld a, [wcd89]
+ and $1
+ jr z, .asm_11913e
+ ld a, $6
+ ld [rSVBK], a
+ ld a, [Unkn1Pals]
+ ld c, a
+ ld a, [wd001]
+ ld b, a
+ ld hl, DefaultFlypoint
+ call Function119192
+ ret c
+
+.asm_11913e
+ ld a, $3
+ ld [rSVBK], a
+ call CloseSRAM
+ ld hl, UnknownText_0x11aa5a
+ call Function11a9c0
+ jp Function119e2e
+; 11914e
+
+Function11914e: ; 11914e
+ call Function119ed8
+ ret c
+ ld a, $1c
+ ld [wcf66], a
+ ld a, $a
+ ld [wc300], a
+ ret
+; 11915d
+
+Function11915d: ; 11915d
+ ld hl, $d802
+ ld de, BGMapBuffer
+ ld bc, $000c
+ call CopyBytes
+ ld a, $5
+ call GetSRAMBank
+ ld hl, BGMapBuffer
+ ld de, $aa7f
+ ld c, $c
+.asm_119176
+ ld a, [de]
+ inc de
+ cp [hl]
+ jr nz, .asm_119184
+ inc hl
+ dec c
+ jr nz, .asm_119176
+ call Function119e2e
+ jr .asm_11918e
+
+.asm_119184
+ ld a, $16
+ ld [wcf66], a
+ ld a, $b
+ ld [wc300], a
+
+.asm_11918e
+ call CloseSRAM
+ ret
+; 119192
+
+Function119192: ; 119192
+ inc b
+ inc c
+ jr .asm_11919e
+
+.asm_119196
+ ld a, [hli]
+ ld [de], a
+ inc de
+ ld a, $bf
+ cp d
+ jr c, .asm_1191a6
+
+.asm_11919e
+ dec c
+ jr nz, .asm_119196
+ dec b
+ jr nz, .asm_119196
+ and a
+ ret
+
+.asm_1191a6
+ ld a, $d3
+ call Function118805
+ scf
+ ret
+; 1191ad
+
+Function1191ad: ; 1191ad
+ push bc
+ ld c, $0
+ ld a, $5
+ ld [rSVBK], a
+.asm_1191b4
+ ld a, [hli]
+ ld [de], a
+ inc de
+ and a
+ jr z, .asm_1191cc
+ inc c
+ ld a, c
+ cp $a6
+ jr c, .asm_1191b4
+ ld a, $da
+ call Function118805
+ ld a, $3
+ ld [rSVBK], a
+ pop bc
+ scf
+ ret
+
+.asm_1191cc
+ ld a, $3
+ ld [rSVBK], a
+ pop bc
+ and a
+ ret
+; 1191d3
+
+Function1191d3: ; 1191d3
+ ld hl, wd102
+ ld a, l
+ ld [wcd53], a
+ ld a, h
+ ld [wcd54], a
+ call Function11920f
+ ld a, l
+ ld [wcd51], a
+ ld a, [wcd4a]
+ ld a, h
+ ld [wcd52], a
+ call Function11920f
+ ld a, l
+ ld [wcd55], a
+ ld a, [wcd4a]
+ ld a, h
+ ld [wcd56], a
+ call Function11920f
+ ld a, [wcd49]
+ ld a, l
+ ld [wcd57], a
+ ld a, [wcd4a]
+ ld a, h
+ ld [wcd58], a
+ call Function11920f
+ ret
+; 11920f
+
+Function11920f: ; 11920f
+.asm_11920f
+ call Function118b9a
+ ret nc
+ ld a, [hli]
+ cp $d
+ jr nz, .asm_11920f
+ ld a, [hli]
+ cp $a
+ jr nz, .asm_11920f
+ dec hl
+ xor a
+ ld [hld], a
+ ld [hli], a
+ inc hl
+ ret
+; 119223
+
+Function119223: ; 119223
+ xor a
+ ld [wcd4b], a
+ ld [wcd4c], a
+ ld a, $5
+ call GetSRAMBank
+ ld hl, wc3cd
+ ld de, $b092
+ ld bc, $001f
+ call CopyBytes
+ dec de
+ xor a
+ ld [de], a
+ ld hl, $d810
+.asm_119241
+ ld a, [hli]
+ cp $50
+ jr nz, .asm_119241
+ ld a, [hli]
+ ld [wcd4f], a
+ ld a, [hli]
+ ld [wcd50], a
+ ld a, [hli]
+ ld [$b1b1], a
+ ld c, a
+ ld a, [hli]
+ ld [$b1b2], a
+ ld b, a
+ ld de, $b1d3
+ call CopyBytes
+ call CloseSRAM
+ ld e, l
+ ld d, h
+ ld hl, $c608
+.asm_119266
+ ld a, [de]
+ inc de
+ cp $ff
+ jr z, .asm_1192c2
+ cp $fe
+ jr z, .asm_1192a5
+ call GetSRAMBank
+ ld a, [de]
+ inc de
+ ld c, a
+ ld a, [de]
+ inc de
+ ld b, a
+ ld a, [de]
+ inc de
+ push de
+ push af
+ ld a, [wcd4b]
+ ld e, a
+ ld a, [wcd4c]
+ ld d, a
+ pop af
+.asm_119286
+ push af
+ ld a, [bc]
+ inc bc
+ ld [hli], a
+ inc de
+ pop af
+ dec a
+ jr nz, .asm_119286
+ call CloseSRAM
+ ld a, e
+ ld [wcd4b], a
+ ld a, d
+ ld [wcd4c], a
+ pop de
+.asm_11929b
+ and a
+ jr z, .asm_119266
+ ld a, $d3
+ call Function118805
+ scf
+ ret
+
+.asm_1192a5
+ ld a, [wcd4b]
+ ld c, a
+ ld a, [wcd4c]
+ ld b, a
+ ld a, [de]
+ inc de
+.asm_1192af
+ push af
+ ld a, [de]
+ inc de
+ ld [hli], a
+ inc bc
+ pop af
+ dec a
+ jr nz, .asm_1192af
+ ld a, c
+ ld [wcd4b], a
+ ld a, b
+ ld [wcd4c], a
+ jr .asm_11929b
+
+.asm_1192c2
+ ld a, e
+ ld [wcd4d], a
+ ld a, d
+ ld [wcd4e], a
+ and a
+ ret
+; 1192cc
+
+Function1192cc: ; 1192cc
+ ld a, $5
+ call GetSRAMBank
+ ld hl, $aa73
+ ld de, $c608
+ ld bc, $000c
+ call CopyBytes
+ call CloseSRAM
+ ld hl, $c608
+ ld de, BGMapBuffer
+ ld c, $c
+.asm_1192e8
+ ld a, [de]
+ inc de
+ ld b, a
+ ld a, [hli]
+ cp b
+ jr nz, .asm_1192fe
+ dec c
+ jr nz, .asm_1192e8
+ ld a, $1f
+ ld [wcd3c], a
+ ld a, $27
+ ld [wcf66], a
+ scf
+ ret
+
+.asm_1192fe
+ and a
+ ret
+; 119300
+
+Function119300: ; 119300
+ xor a
+ ld [wcd4b], a
+ ld [wcd4c], a
+ ld a, [wcd4d]
+ ld e, a
+ ld a, [wcd4e]
+ ld d, a
+ ld hl, $c608
+ ld a, [wcd4b]
+ ld c, a
+ ld a, [wcd4c]
+ ld b, a
+.asm_11931a
+ ld a, [de]
+ inc de
+ cp $50
+ jr z, .asm_119324
+ ld [hli], a
+ inc bc
+ jr .asm_11931a
+
+.asm_119324
+ ld a, $3d
+ ld [hli], a
+ inc bc
+ ld a, c
+ ld [wcd4b], a
+ ld a, b
+ ld [wcd4c], a
+ ld a, [de]
+ inc de
+ call GetSRAMBank
+ ld a, [de]
+ inc de
+ ld c, a
+ ld a, [de]
+ inc de
+ ld b, a
+ ld a, [de]
+ inc de
+ push de
+ push af
+ ld a, [wcd4b]
+ ld e, a
+ ld a, [wcd4c]
+ ld d, a
+ pop af
+.asm_119348
+ push af
+ ld a, [bc]
+ and $f0
+ swap a
+ call Function1197bf
+ ld [hli], a
+ inc de
+ ld a, [bc]
+ inc bc
+ and $f
+ call Function1197bf
+ ld [hli], a
+ inc de
+ pop af
+ dec a
+ jr nz, .asm_119348
+ call CloseSRAM
+ ld a, e
+ ld [wcd4b], a
+ ld a, d
+ ld [wcd4c], a
+ pop de
+ ld a, [de]
+ cp $50
+ jr z, .asm_11937f
+ ld a, [wcd4b]
+ ld c, a
+ ld a, [wcd4c]
+ ld b, a
+ ld a, $26
+ ld [hli], a
+ inc bc
+ jr .asm_11931a
+
+.asm_11937f
+ ret
+; 119380
+
+Function119380: ; 119380
+ ld a, $80
+ ld [wcd49], a
+ jp Function119e2e
+; 119388
+
+Function119388: ; 119388
+ ld hl, wcd49
+ dec [hl]
+ ret nz
+ ld hl, wcc60
+ call Function118e39
+ ld a, $9
+ ld [wcd3c], a
+ ld a, $10
+ ld [wcd45], a
+ call Function119e2e
+
+Function1193a0:
+ call Function119ed8
+ ret c
+ call DelayFrame
+ ld a, $8
+ ld [wcd3c], a
+ call Function119ed8
+ ld hl, wc346
+ ld a, wd000 % $100
+ ld [hli], a
+ ld a, wd000 / $100
+ ld [hli], a
+ ld a, [wcd3b]
+ ld [hli], a
+ xor a
+ ld [hli], a
+ ld a, wc708 % $100
+ ld [hli], a
+ ld a, wc708 / $100
+ ld [hli], a
+ ld a, $60
+ ld [hli], a
+ ld a, $cc
+ ld [hli], a
+ call Function119eb4
+ call Function119ec2
+ ld a, $40
+ ld [wcd89], a
+ ld hl, wc346
+ ld de, $de00
+ ld bc, $0200
+ ld a, $2c
+ jp Function119e2b
+; 1193e3
+
+Function1193e3: ; 1193e3
+ ld hl, wcd49
+ dec [hl]
+ ret nz
+ ld hl, wcc60
+ call Function118e39
+ ld a, $9
+ ld [wcd3c], a
+ ld a, $11
+ ld [wcd45], a
+ call Function119e2e
+
+Function1193fb:
+ call Function119ed8
+ ret c
+ call DelayFrame
+ ld a, $8
+ ld [wcd3c], a
+ call Function119ed8
+ ld de, Unkn1Pals
+ ld bc, $1000
+ jp Function118b10
+; 119413
+
+Function119413: ; 119413
+ ld a, $6
+ call GetSRAMBank
+ ld a, [Unkn1Pals]
+ ld c, a
+ ld a, [wd001]
+ ld b, a
+ dec bc
+ dec bc
+ ld hl, wd002
+ ld a, [hli]
+ ld e, a
+ ld a, [hli]
+ ld d, a
+ call Function119192
+ ret c
+ ld a, [wcd89]
+ and $1
+ jr z, .asm_119447
+ ld a, $6
+ ld [rSVBK], a
+ ld a, [wd000]
+ ld c, a
+ ld a, [wd001]
+ ld b, a
+ ld hl, wd002
+ call Function119192
+ ret c
+
+.asm_119447
+ ld a, $3
+ ld [rSVBK], a
+ call CloseSRAM
+ jp Function119e2e
+; 119451
+
+Function119451: ; 119451 (46:5451)
+ ld a, [wcd89]
+ and $1
+ jr z, .asm_11945d
+ ld a, $d3
+ jp Function118805
+.asm_11945d
+ xor a
+ ld [wcd50], a
+ call Function119694
+ ld a, b
+ ld [wcd49], a
+ call Function1196cd
+ ld a, [DefaultFlypoint]
+ ld hl, wd003
+
+Function119471: ; 119471 (46:5471)
+ push af
+ ld a, [hli]
+ ld [$c608], a
+ ld a, [hli]
+ ld [$c608 + 3], a
+ ld a, [hli]
+ ld [$c608 + 1], a
+ ld a, [hli]
+ ld [$c608 + 2], a
+ ld a, [hli]
+ ld [$c608 + 4], a
+ ld a, [hli]
+ ld [$c608 + 5], a ; $c608 + 5
+ push hl
+ ld a, [$c608]
+ cp $ff
+ jr z, .asm_1194a7
+ ld a, [$c608 + 2]
+ cp $ff
+ jr z, .asm_1194a7
+ ld a, [$c608 + 1]
+ cp $ff
+ jr nz, .asm_1194a7
+ call Function119584
+ jr c, .asm_11950c
+ jr .asm_1194f0
+.asm_1194a7
+ ld hl, $c608
+ ld de, $c608 + 3
+ ld c, $3
+.asm_1194af
+ ld a, [de]
+ inc de
+ cp [hl]
+ inc hl
+ jr c, .asm_1194f3
+ jr z, .asm_1194b9
+ jr nc, .asm_1194bc
+.asm_1194b9
+ dec c
+ jr nz, .asm_1194af
+.asm_1194bc
+ ld c, $3
+ ld hl, wcd49
+ ld de, $c608
+.asm_1194c4
+ ld a, [de]
+ inc de
+ cp $ff
+ jr z, .asm_1194d1
+ cp [hl]
+ jr z, .asm_1194d1
+ jr c, .asm_1194d5
+ jr nc, .asm_1194f0
+.asm_1194d1
+ inc hl
+ dec c
+ jr nz, .asm_1194c4
+.asm_1194d5
+ ld c, $3
+ ld hl, wcd49
+ ld de, $c608 + 3
+.asm_1194dd
+ ld a, [de]
+ inc de
+ cp $ff
+ jr z, .asm_1194ea
+ cp [hl]
+ jr c, .asm_1194f0
+ jr z, .asm_1194ea
+ jr nc, .asm_11950c
+.asm_1194ea
+ inc hl
+ dec c
+ jr nz, .asm_1194dd
+ jr .asm_11950c
+.asm_1194f0
+ pop hl
+ jr .asm_119557
+.asm_1194f3
+ ld c, $3
+ ld hl, wcd49
+ ld de, $c608
+.asm_1194fb
+ ld a, [de]
+ inc de
+ cp $ff
+ jr z, .asm_119508
+ cp [hl]
+ jr c, .asm_11950c
+ jr z, .asm_119508
+ jr nc, .asm_1194d5
+.asm_119508
+ inc hl
+ dec c
+ jr nz, .asm_1194fb
+.asm_11950c
+ pop hl
+ ld a, $1
+ ld [wcd50], a
+ ld a, l
+ ld [$c608], a
+ ld a, h
+ ld [$c608 + 1], a
+ ld de, wcd69
+ ld c, $10
+ ld b, $0
+.asm_119521
+ ld a, [de]
+ inc de
+ cp [hl]
+ inc hl
+ jr nz, .asm_119528
+ inc b
+.asm_119528
+ dec c
+ jr nz, .asm_119521
+ ld a, $10
+ cp b
+ jr z, .asm_119536
+ inc hl
+ inc hl
+ inc hl
+ inc hl
+ jr .asm_11957a
+.asm_119536
+ ld a, [hli]
+ cp $50
+ jr nz, .asm_119552
+ ld a, [hli]
+ cp $33
+ jr nz, .asm_119553
+ ld a, [hli]
+ ld c, a
+ ld a, [hli]
+ ld b, a
+ ld a, [wcd83]
+ cp c
+ jr nz, .asm_119576
+ ld a, [wcd84]
+ cp b
+ jr nz, .asm_119576
+ jr .asm_11955b
+.asm_119552
+ inc hl
+.asm_119553
+ inc hl
+ inc hl
+ jr .asm_11955b
+.asm_119557
+ ld de, $14
+ add hl, de
+.asm_11955b
+ ld a, [hli]
+ ld e, a
+ ld a, [hli]
+ ld d, a
+ add hl, de
+ pop af
+ dec a
+ jp nz, Function119471
+ ld a, [wcd50]
+ and a
+ jr z, .asm_119571
+ ld a, $1a
+ ld [wcf66], a
+ ret
+.asm_119571
+ ld a, $d8
+ jp Function118805
+.asm_119576
+ ld a, $10
+ jr .asm_11957c
+.asm_11957a
+ ld a, $f
+.asm_11957c
+ ld [wcf66], a
+ pop af
+ call Function1195c4
+ ret
+
+Function119584: ; 119584 (46:5584)
+ ld a, [$c608]
+ ld b, a
+ ld a, [$c608 + 3]
+ ld c, a
+ cp b
+ jr c, .asm_11959c
+ ld a, [wcd49]
+ cp b
+ jr c, .asm_1195c2
+.asm_119595
+ cp c
+ jr c, .asm_1195a2
+ jr z, .asm_1195a2
+ jr .asm_1195c2
+.asm_11959c
+ ld a, [wcd49]
+ cp b
+ jr c, .asm_119595
+.asm_1195a2
+ ld a, [$c608 + 2]
+ ld b, a
+ ld a, [$c608 + 5] ; $c608 + 5
+ ld c, a
+ cp b
+ jr c, .asm_1195ba
+ ld a, [wcd4b]
+ cp b
+ jr c, .asm_1195c2
+.asm_1195b3
+ cp c
+ jr c, .asm_1195c0
+ jr z, .asm_1195c0
+ jr .asm_1195c2
+.asm_1195ba
+ ld a, [wcd4b]
+ cp b
+ jr c, .asm_1195b3
+.asm_1195c0
+ scf
+ ret
+.asm_1195c2
+ and a
+ ret
+
+Function1195c4: ; 1195c4 (46:55c4)
+ ld a, [hli]
+ ld c, a
+ ld a, [hli]
+ ld b, a
+ ld de, $a5
+ ld a, b
+ cp d
+ jr c, .asm_1195d9
+ jr z, .asm_1195d3
+ jr nc, .asm_1195f3
+.asm_1195d3
+ ld a, c
+ cp e
+ jr z, .asm_1195d9
+ jr nc, .asm_1195f3
+.asm_1195d9
+ ld de, wcc60
+ call CopyBytes
+ xor a
+ ld [de], a
+ ld a, [$c608]
+ ld l, a
+ ld a, [$c608 + 1]
+ ld h, a
+ ld de, wcd69
+ ld bc, $10
+ call CopyBytes
+ ret
+.asm_1195f3
+ ld a, $d8
+ jp Function118805
+
+Function1195f8: ; 1195f8 (46:55f8)
+ ld a, $11
+ ld [wcd3c], a
+ ld a, $1c
+ ld [wcd45], a
+ ld a, $f
+ ld [wcd46], a
+ ld a, $14
+ ld [wcd47], a
+ call Function119e2e
+ jp Function119e2e
+
+Function119612: ; 119612 (46:5612)
+ ld a, $14
+ ld [wcd3c], a
+ ld a, $1c
+ ld [wcd45], a
+ ld a, $10
+ ld [wcd46], a
+ ld a, $14
+ ld [wcd47], a
+ jp Function119e2e
+
+Function119629: ; 119629 (46:5629)
+ call Function119ed8
+ ret c
+ ld a, $60
+ ld l, a
+ ld a, $cc
+ ld h, a
+ call Function118e39
+ ld a, $9
+ ld [wcd3c], a
+ ld a, $1c
+ ld [wcd45], a
+ ld a, $14
+ ld [wcd47], a
+ call Function119e2e
+
+Function119648: ; 119648 (46:5648)
+ call Function119ed8
+ ret c
+ call DelayFrame
+ ld a, $8
+ ld [wcd3c], a
+ call Function119ed8
+ call Function118b24
+ ld de, Unkn1Pals
+ ld bc, $1000
+ ld a, $2a
+ jp Function119e2b
+
+Function119665: ; 119665 (46:5665)
+ ld a, $1a
+ ld [wcd3c], a
+ call Function119e2e
+
+Function11966d: ; 11966d (46:566d)
+ call Function119ed8
+ ret c
+ ld a, [wcd47]
+ ld [wcf66], a
+ ld a, $a
+ ld [wc300], a
+ ret
+
+Function11967d: ; 11967d (46:567d)
+ ld a, $18
+ ld [wcd3c], a
+ call Function119e2e
+
+Function119685: ; 119685 (46:5685)
+ call Function119ed8
+ ret c
+ ld a, $14
+ ld [wcf66], a
+ ld a, $a
+ ld [wc300], a
+ ret
+
+Function119694: ; 119694 (46:5694)
+ ld b, 0
+ ld hl, Unknown_1196b8
+.asm_119699
+ ld de, wc708
+ ld a, [de]
+ inc de
+ cp [hl]
+ inc hl
+ jr nz, .asm_1196af
+ ld a, [de]
+ inc de
+ cp [hl]
+ inc hl
+ jr nz, .asm_1196b0
+ ld a, [de]
+ inc de
+ cp [hl]
+ inc hl
+ jr nz, .asm_1196b1
+ ret
+.asm_1196af
+ inc hl
+.asm_1196b0
+ inc hl
+.asm_1196b1
+ inc b
+ ld a, b
+ cp $7
+ jr nz, .asm_119699
+ ret
+; 1196b8 (46:56b8)
+
+Unknown_1196b8: ; 1196b8
+ db "Mon"
+ db "Tue"
+ db "Wed"
+ db "Thu"
+ db "Fri"
+ db "Sat"
+ db "Sun"
+; 1196cd
+
+SECTION "bank46_2", ROMX, BANK[$46]
+; A hack to use ascii above.
+
+Function1196cd: ; 1196cd (46:56cd)
+ ld de, wc719
+ call Function1196de
+ ld [wcd4a], a
+ inc de
+ call Function1196de
+ ld [wcd4b], a
+ ret
+
+Function1196de: ; 1196de (46:56de)
+ ld a, [de]
+ inc de
+ sub $30
+ sla a
+ ld b, a
+ sla a
+ sla a
+ add b
+ ld c, a
+ add hl, bc
+ ld a, [de]
+ inc de
+ sub $30
+ add c
+ ret
+; 1196f2 (46:56f2)
+
+Function1196f2: ; 1196f2
+ ld hl, DefaultFlypoint
+.asm_1196f5
+ call Function118b9a
+ ret nc
+ ld a, [hli]
+ cp $d
+ jr nz, .asm_1196f5
+ ld a, [hl]
+ cp $a
+ jr nz, .asm_1196f5
+ xor a
+ ld [hld], a
+ ld [hli], a
+ ld a, l
+ ld [wcd5b], a
+ ld a, h
+ ld [wcd5c], a
+ inc hl
+ ld e, l
+ ld d, h
+ ld a, [de]
+ inc de
+ cp $d
+ jr nz, .asm_119722
+ ld a, [de]
+ inc de
+ cp $a
+ jr nz, .asm_119722
+ ld a, $b
+ jp Function118805
+
+.asm_119722
+ call Random
+ ld c, $0
+ ld b, c
+.asm_119728
+ call Function119798
+ ld a, d
+ cp $ff
+ jr nz, .asm_119735
+ ld a, e
+ cp $ff
+ jr z, .asm_11974c
+
+.asm_119735
+ ld a, [hRandomSub]
+ cp d
+ jr c, .asm_11974c
+ jr z, .asm_11973e
+ jr .asm_119745
+
+.asm_11973e
+ ld a, [hRandomAdd]
+ cp e
+ jr c, .asm_11974c
+ jr z, .asm_11974c
+
+.asm_119745
+ inc bc
+ ld a, c
+ or b
+ jr z, .asm_119770
+ jr .asm_119728
+
+.asm_11974c
+ ld a, [wcd5b]
+ ld l, a
+ ld a, [wcd5c]
+ ld h, a
+.asm_119754
+ ld a, [hld]
+ cp $58
+ jr nz, .asm_119754
+ ld d, $0
+.asm_11975b
+ inc d
+ ld a, [hld]
+ cp $58
+ jr z, .asm_11975b
+ inc hl
+ inc hl
+ ld a, d
+ dec a
+ jr z, .asm_11978e
+ dec a
+ jr z, .asm_119785
+ dec a
+ jr z, .asm_11977e
+ dec a
+ jr z, .asm_119775
+
+.asm_119770
+ ld a, $d3
+ jp Function118805
+
+.asm_119775
+ ld a, b
+ and $f0
+ swap a
+ call Function1197bf
+ ld [hli], a
+
+.asm_11977e
+ ld a, b
+ and $f
+ call Function1197bf
+ ld [hli], a
+
+.asm_119785
+ ld a, c
+ and $f0
+ swap a
+ call Function1197bf
+ ld [hli], a
+
+.asm_11978e
+ ld a, c
+ and $f
+ call Function1197bf
+ ld [hli], a
+ jp Function119e2e
+; 119798
+
+Function119798: ; 119798
+ ld d, $0
+ ld e, d
+ call Function1197b4
+ swap a
+ or d
+ ld d, a
+ call Function1197b4
+ or d
+ ld d, a
+ call Function1197b4
+ swap a
+ or e
+ ld e, a
+ call Function1197b4
+ or e
+ ld e, a
+ ret
+; 1197b4
+
+Function1197b4: ; 1197b4
+ ld a, [hli]
+ cp $61
+ jr nc, .asm_1197bc
+ sub $30
+ ret
+
+.asm_1197bc
+ sub $57
+ ret
+; 1197bf
+
+Function1197bf: ; 1197bf
+ cp $a
+ jr nc, .asm_1197c6
+ add $30
+ ret
+
+.asm_1197c6
+ add $57
+ ret
+; 1197c9
+
+Function1197c9: ; 1197c9
+ ld hl, DefaultFlypoint
+ call Function118e39
+ ld a, $9
+ ld [wcd3c], a
+ ld a, $12
+ ld [wcd45], a
+ call Function119e2e
+
+Function1197dc:
+ call Function119ed8
+ ret c
+ call DelayFrame
+ ld hl, DefaultFlypoint
+ ld de, wcc60
+ ld bc, $0080
+ call CopyBytes
+ dec de
+ xor a
+ ld [de], a
+ call Function118b24
+ ld de, Unkn1Pals
+ ld bc, $1000
+ ld a, $2a
+ jp Function119e2b
+; 119800
+
+Function119800: ; 119800
+ ld a, $fd
+ ld [$c6d0], a
+ ld [wc702], a
+ ld a, [wcd81]
+ ld [wc74e], a
+ ld a, [wcf63]
+ push af
+ ld a, [wcf64]
+ push af
+ ld a, [wcf65]
+ push af
+ ld a, [wcf66]
+ push af
+ ld a, $1
+ ld [rSVBK], a
+ call FadeToMenu
+ callba Function10803d
+ call Function11a9ce
+ call RestartMapMusic
+ ld a, $3
+ ld [rSVBK], a
+ pop af
+ ld [wcf66], a
+ pop af
+ ld [wcf65], a
+ pop af
+ ld [wcf64], a
+ pop af
+ ld [wcf63], a
+ callba Function115dc3
+ jp Function119e2e
+; 11984e
+
+Function11984e: ; 11984e
+ ld a, [wcd80]
+ and a
+ jr nz, .asm_1198a0
+ ld a, [wcd38]
+ and a
+ jr nz, .asm_1198a8
+ callba Function170000
+ ld a, [wcf63]
+ push af
+ ld a, [wcf64]
+ push af
+ ld a, [wcf65]
+ push af
+ ld a, [wcf66]
+ push af
+ ld a, $1
+ ld [rSVBK], a
+ call FadeToMenu
+ callba Function108000
+ call Function11a9ce
+ call RestartMapMusic
+ ld a, $3
+ ld [rSVBK], a
+ pop af
+ ld [wcf66], a
+ pop af
+ ld [wcf65], a
+ pop af
+ ld [wcf64], a
+ pop af
+ ld [wcf63], a
+ callba Function115dc3
+ jp Function119e2e
+
+.asm_1198a0
+ ld a, $a
+ ld [wc300], a
+ jp Function119e2e
+
+.asm_1198a8
+ callba Function17005a
+ ld a, [wcf63]
+ push af
+ ld a, [wcf64]
+ push af
+ ld a, [wcf65]
+ push af
+ ld a, [wcf66]
+ push af
+ ld a, $1
+ ld [rSVBK], a
+ call FadeToMenu
+ callba Function108012
+ call Function11a9ce
+ call RestartMapMusic
+ ld a, $3
+ ld [rSVBK], a
+ pop af
+ ld [wcf66], a
+ pop af
+ ld [wcf65], a
+ pop af
+ ld [wcf64], a
+ pop af
+ ld [wcf63], a
+ callba Function115dc3
+ jp Function119e2e
+; 1198ee
+
+Function1198ee: ; 1198ee
+ ld hl, UnknownText_0x11aab2
+ call Function11a9c0
+ call Function119e2e
+
+Function1198f7:
+ ld a, [wc31a]
+ and a
+ ret nz
+ ld hl, $c608 + 2
+ call Function119940
+ ld hl, $d800
+ ld a, $c608 % $100
+ ld [hli], a
+ ld a, $c608 / $100
+ ld [hli], a
+ ld a, $f6
+ ld [hli], a
+ xor a
+ ld [hli], a
+ ld a, wc708 % $100
+ ld [hli], a
+ ld a, wc708 / $100
+ ld [hli], a
+ ld a, [wcd51]
+ ld [hli], a
+ ld a, [wcd52]
+ ld [hli], a
+ call Function119eb4
+ call Function119ec2
+ ld a, $40
+ ld [wcd89], a
+ ld hl, $d800
+ ld de, $de00
+ ld bc, $0200
+ ld a, $2c
+ jp Function119e2b
+; 119937
+
+Function119937: ; 119937
+ callba Function1707f4
+ jp Function119e2e
+; 119940
+
+Function119940: ; 119940
+ ld de, wc3cd
+ ld c, $1e
+.asm_119945
+ ld a, [de]
+ inc de
+ ld [hli], a
+ dec c
+ jr z, .asm_119953
+ and a
+ jr nz, .asm_119945
+ xor a
+.asm_11994f
+ ld [hli], a
+ dec c
+ jr nz, .asm_11994f
+
+.asm_119953
+ ret
+; 119954
+
+Function119954: ; 119954
+ ld a, $1c
+ ld [wcd3c], a
+ call Function119ed8
+ ld hl, $c608
+ ld de, wc3cd
+.asm_119962
+ ld a, [de]
+ inc de
+ ld [hli], a
+ and a
+ jr nz, .asm_119962
+ call Function119ec2
+ ld hl, $c608
+ ld a, $1e
+ jp Function119e2b
+; 119973
+
+Function119973: ; 119973
+ ld a, $1
+ ld [wcf64], a
+ xor a
+ ld [wcf65], a
+ ld [StringBuffer2 + 10], a
+ ld de, Unkn1Pals
+ ld a, $20
+ jp Function119e2b
+; 119987
+
+Function119987: ; 119987
+ ld hl, wd001
+ ld a, [Unkn1Pals]
+ or [hl]
+ jr z, .asm_1199a0
+ ld a, [wcf64]
+ ld l, a
+ ld a, [wcf65]
+ ld h, a
+ ld de, BGPals
+ ld a, $22
+ jp Function119e2b
+
+.asm_1199a0
+ ld a, [StringBuffer2 + 10]
+ and a
+ jr z, .asm_1199ae
+ ld a, $16
+ ld [wcf66], a
+ jp Function119b0d
+
+.asm_1199ae
+ ld a, $1b
+ ld [wcf66], a
+ ret
+; 1199b4
+
+Function1199b4: ; 1199b4
+ ld a, [wd000 + 130]
+ and a
+ jr nz, .asm_1199c7
+ ld a, [wd000 + 129]
+ cp $7
+ jr nc, .asm_1199c7
+ call Function119e2e
+ jp Function1199ca
+
+.asm_1199c7
+ jp Function119ac9
+; 1199ca
+
+Function1199ca: ; 1199ca
+ ld a, $20
+ ld [wcd89], a
+ ld a, [wcf64]
+ ld l, a
+ ld a, [wcf65]
+ ld h, a
+ ld de, LYOverrides
+ ld bc, $0700
+ ld a, $28
+ jp Function119e2b
+; 1199e2
+
+Function1199e2: ; 1199e2
+ ld c, $c
+ ld de, Unknown_119e33
+ call Function119e4f
+ jp c, Function119ac9
+ ld a, c
+ cp $1
+ jp nz, Function119ac9
+ ld hl, $d880
+ ld bc, Unknown_119af1
+.asm_1199f9
+ ld a, [bc]
+ and a
+ jr z, .asm_119a05
+ cp [hl]
+ jp nz, Function119ac9
+ inc bc
+ inc hl
+ jr .asm_1199f9
+
+.asm_119a05
+ ld c, $17
+ ld de, Unknown_119e40
+ call Function119e4f
+ jp c, .asm_119aa7
+ ld a, c
+ cp $1
+ jp nz, .asm_119aa7
+ ld a, [wd000 + $880]
+ cp $31
+ jp nz, .asm_119aa7
+ ld a, [wd000 + $881]
+ cp $20
+ jp nz, .asm_119aa7
+ ld a, [wd000 + $88a]
+ cp $20
+ jp nz, .asm_119aa7
+ ld a, [wd000 + $894]
+ cp $20
+ jp nz, .asm_119aa7
+ xor a
+ ld [wd000 + $8a0], a
+ ld [wd000 + $8a1], a
+ ld [wd000 + $8a2], a
+ ld [wd000 + $8a3], a
+ ld hl, $d8a0
+ ld bc, $d889
+ call Function119e98
+ call Function119e98
+ ld hl, $d8a0
+ ld a, [wcd2d]
+ cp [hl]
+ jr nz, Function119ac9
+ inc hl
+ ld a, [wcd2c]
+ cp [hl]
+ jr nz, Function119ac9
+ inc hl
+ ld a, [wcd2b]
+ cp [hl]
+ jr nz, Function119ac9
+ inc hl
+ ld a, [wcd2a]
+ cp [hl]
+ jr nz, Function119ac9
+ xor a
+ ld [wd000 + $8a0], a
+ ld [wd000 + $8a1], a
+ ld [wd000 + $8a2], a
+ ld [wd000 + $8a3], a
+ ld hl, $d8a0
+ ld bc, $d88e
+ call Function119e98
+ ld bc, $d893
+ call Function119e98
+ ld hl, $d8a0
+ ld a, [wcd2f]
+ cp [hl]
+ jr nz, .asm_119aa7
+ inc hl
+ ld a, [wcd2e]
+ cp [hl]
+ jr nz, .asm_119aa7
+ inc hl
+ ld a, [wcd31]
+ cp [hl]
+ jr nz, .asm_119aa7
+ inc hl
+ ld a, [wcd30]
+ cp [hl]
+ jr z, .asm_119aaf
+
+.asm_119aa7
+ ld a, $25
+ ld [wcf66], a
+ jp Function119b45
+
+.asm_119aaf
+ ld a, [StringBuffer2 + 10]
+ and a
+ jr nz, .asm_119aa7
+ ld a, [wd000 + $895]
+ sub $30
+ ld [StringBuffer2 + 10], a
+ ld a, [wcf64]
+ ld [StringBuffer2 + 11], a
+ ld a, [wcf65]
+ ld [StringBuffer2 + 12], a
+
+Function119ac9:
+ ld a, [Unkn1Pals]
+ ld l, a
+ ld a, [wd001]
+ ld h, a
+ dec hl
+ ld a, l
+ ld [Unkn1Pals], a
+ ld a, h
+ ld [wd001], a
+ ld a, [wcf64]
+ ld l, a
+ ld a, [wcf65]
+ ld h, a
+ inc hl
+ ld a, l
+ ld [wcf64], a
+ ld a, h
+ ld [wcf65], a
+ ld a, $10
+ ld [wcf66], a
+ ret
+; 119af1
+
+Unknown_119af1:
+ INCBIN "data/mobile/x-game-code.txt"
+ INCBIN "data/mobile/x-game-result.txt"
+; 119b0d
+
+Function119b0d: ; 119b0d
+ ld a, $8
+ ld [wcd3c], a
+ call Function119ed8
+ ld a, [StringBuffer2 + 10]
+ cp $1
+ jr z, .asm_119b23
+ ld a, $19
+ ld [wcf66], a
+ jr Function119b3b
+
+.asm_119b23
+ ld a, $10
+ ld [wcd89], a
+ ld a, [StringBuffer2 + 11]
+ ld l, a
+ ld a, [StringBuffer2 + 12]
+ ld h, a
+ ld de, LYOverrides
+ ld bc, $0700
+ ld a, $24
+ jp Function119e2b
+
+Function119b3b:
+ ld a, [StringBuffer2 + 11]
+ ld l, a
+ ld a, [StringBuffer2 + 12]
+ ld h, a
+ jr asm_119b4d
+
+Function119b45:
+ ld a, [wcf64]
+ ld l, a
+ ld a, [wcf65]
+ ld h, a
+
+asm_119b4d
+ ld a, $26
+ jp Function119e2b
+; 119b52
+
+Function119b52: ; 119b52
+ ld a, [StringBuffer2 + 10]
+ cp $1
+ jr nz, .asm_119b66
+ ld a, $5
+ call GetSRAMBank
+ ld a, $4
+ ld [$a800], a
+ call CloseSRAM
+
+.asm_119b66
+ ld a, $1c
+ jp Function119e2b
+; 119b6b
+
+Function119b6b: ; 119b6b
+ ld a, [StringBuffer2 + 10]
+ cp $1
+ jr z, .asm_119b75
+ jp Function119e2e
+
+.asm_119b75
+ ld a, [LYOverrides]
+ ld b, a
+ ld a, [wd101]
+ or b
+ jr z, .asm_119be3
+ ld hl, $d800
+ ld de, wd102
+.asm_119b85
+ ld a, [de]
+ inc de
+ cp $d
+ jr nz, .asm_119b85
+ inc de
+ ld a, [de]
+ cp $d
+ jr nz, .asm_119b85
+ inc de
+ inc de
+.asm_119b93
+ ld a, [de]
+ inc de
+ cp $d
+ jr z, .asm_119bfa
+ call Function119c3e
+ ret c
+ ld [hli], a
+ ld a, [de]
+ inc de
+ call Function119c3e
+ ret c
+ ld [hli], a
+ ld a, [de]
+ inc de
+ call Function119c3e
+ ret c
+ ld [hli], a
+ ld a, [de]
+ inc de
+ call Function119c3e
+ ret c
+ ld [hl], a
+ push de
+ ld d, [hl]
+ dec hl
+ ld c, [hl]
+ dec hl
+ ld b, [hl]
+ dec hl
+ ld a, [hl]
+ sla b
+ sla b
+ sla b
+ rla
+ sla b
+ rla
+ ld [hli], a
+ ld [hl], b
+ inc hl
+ rrc c
+ rrc c
+ ld [hl], c
+ dec hl
+ ld a, $f
+ and c
+ or [hl]
+ ld [hli], a
+ ld a, [hli]
+ and $c0
+ or [hl]
+ dec hl
+ ld [hld], a
+ dec hl
+ pop de
+ inc hl
+ inc hl
+ inc hl
+ ld a, h
+ cp $e0
+ jr c, .asm_119b93
+
+.asm_119be3
+ ld a, $19
+ ld [wcf66], a
+ ld a, $5
+ call GetSRAMBank
+ ld a, $1
+ ld [$a800], a
+ call CloseSRAM
+ xor a
+ ld [StringBuffer2 + 10], a
+ ret
+
+.asm_119bfa
+ inc de
+ ld a, [de]
+ cp $d
+ jr nz, .asm_119b93
+ ld a, l
+ cp (wd000 + $800 + $69) % $100
+ jr nz, .asm_119be3
+ ld a, h
+ cp (wd000 + $800 + $69) / $100
+ jr nz, .asm_119be3
+ ld a, $5
+ call GetSRAMBank
+ ld a, [wcf64]
+ ld [$b090], a
+ ld a, [wcf65]
+ ld [$b091], a
+ ld hl, $d800
+ ld de, $b023
+ ld bc, $0069
+ call CopyBytes
+ ld a, $3
+ ld [$a800], a
+ call CloseSRAM
+ ld hl, $d800
+ ld de, $c608
+ ld bc, $0069
+ call CopyBytes
+ jp Function119e2e
+; 119c3e
+
+Function119c3e: ; 119c3e
+ cp $2b
+ jr c, .asm_119c68
+ jr z, .asm_119c80
+ cp $2f
+ jr c, .asm_119c68
+ jr z, .asm_119c84
+ cp $30
+ jr c, .asm_119c68
+ cp $3a
+ jr c, .asm_119c88
+ cp $3d
+ jr c, .asm_119c68
+ jr z, .asm_119c8c
+ cp $41
+ jr c, .asm_119c68
+ cp $5b
+ jr c, .asm_119c8f
+ cp $61
+ jr c, .asm_119c68
+ cp $7b
+ jr c, .asm_119c93
+
+.asm_119c68
+ ld a, $19
+ ld [wcf66], a
+ ld a, $5
+ call GetSRAMBank
+ ld a, $1
+ ld [$a800], a
+ call CloseSRAM
+ xor a
+ ld [StringBuffer2 + 10], a
+ scf
+ ret
+
+.asm_119c80
+ ld a, $3e
+ and a
+ ret
+
+.asm_119c84
+ ld a, $3f
+ and a
+ ret
+
+.asm_119c88
+ add $4
+ and a
+ ret
+
+.asm_119c8c
+ xor a
+ and a
+ ret
+
+.asm_119c8f
+ sub $41
+ and a
+ ret
+
+.asm_119c93
+ sub $47
+ and a
+ ret
+; 119c97
+
+Function119c97: ; 119c97
+ ld hl, UnknownText_0x11ab0f
+ call Function11a9c0
+ call Function119e2e
+ jr Function119cab
+
+Function119ca2:
+ ld hl, UnknownText_0x11aaf0
+ call Function11a9c0
+ call Function119e2e
+
+Function119cab:
+ ld a, [wc31a]
+ and a
+ ret nz
+ ld a, $80
+ ld [wcd50], a
+ call Function119e2e
+
+Function119cb8:
+ ld hl, wcd50
+ dec [hl]
+ ret nz
+ ld a, $0
+ ld [wcf66], a
+ ret
+; 119cc3
+
+Function119cc3: ; 119cc3
+ ld a, [wcd38]
+ and a
+ jr z, .asm_119cd1
+ dec a
+ jr z, .asm_119cd6
+ ld hl, UnknownText_0x11aa6a
+ jr .asm_119cd9
+
+.asm_119cd1
+ ld hl, UnknownText_0x11ab4a
+ jr .asm_119cd9
+
+.asm_119cd6
+ ld hl, UnknownText_0x11ab6e
+
+.asm_119cd9
+ call Function11a9c0
+ call Function119e2e
+
+Function119cdf:
+ ld a, [wc31a]
+ and a
+ ret nz
+ ld a, $f
+ ld [wcd3c], a
+ call Function119e2e
+
+Function119cec:
+ call Function119ed8
+ ret c
+ ld a, [wcd46]
+ ld [wcf66], a
+ ret
+; 119cf7
+
+MenuDataHeader_119cf7: ; 119cf7
+ db $40 ; flags
+ db 7, 12 ; start coords
+ db 11, 19 ; end coords
+ dw NULL
+ db 0 ; default option
+; 119cff
+
+MenuData_119cff: ; 119cff
+ db $40 ; flags
+ db 7, 15 ; start coords
+ db 11, 19 ; end coords
+ dw NULL
+ db 0 ; default option
+; 119d07
+
+String_119d07:
+ db " ▼@"
+
+Strings_119d0c:
+ db " L:10 @@"
+ db " L:20 @@"
+ db " L:30 @@"
+ db " L:40 @@"
+ db " L:50 @@"
+ db " L:60 @@"
+ db " L:70 @@"
+ db " L:80 @@"
+ db " L:90 @@"
+ db " L:100@@"
+ db "CANCEL@@"
+
+Strings_119d64:
+ db " L:10 @@"
+ db " L:20 @@"
+ db " L:30 @@"
+ db " L:40 @@"
+ db "CANCEL@@"
+
+String_119d8c:
+ db "CANCEL@"
+; 119d93
+
+Function119d93: ; 119d93 (46:5d93)
+ ld a, [rSVBK] ; $ff00+$70
+ push af
+ ld a, $1
+ ld [rSVBK], a ; $ff00+$70
+ ld a, [wcd4f]
+ ld c, 10
+ call SimpleMultiply
+ ld hl, wcd50
+ ld [hl], a
+ ld bc, PartyMon2 - PartyMon1
+ ld de, PartyMon1Level
+ ld a, [PartyCount]
+.asm_119daf
+ push af
+ ld a, [de]
+ push hl
+ push de
+ pop hl
+ add hl, bc
+ push hl
+ pop de
+ pop hl
+ cp [hl]
+ jr z, .asm_119dbd
+ jr nc, .asm_119dc6
+.asm_119dbd
+ pop af
+ dec a
+ jr nz, .asm_119daf
+ pop af
+ ld [rSVBK], a ; $ff00+$70
+ and a
+ ret
+.asm_119dc6
+ pop af
+ ld a, $4
+ ld [wcf66], a
+ pop af
+ ld [rSVBK], a ; $ff00+$70
+ scf
+ ret
+
+Function119dd1: ; 119dd1 (46:5dd1)
+ ld a, [rSVBK] ; $ff00+$70
+ push af
+ ld a, [wcd4f]
+ cp 70 / 10
+ jr nc, .asm_119e08
+ ld a, $1
+ ld [rSVBK], a ; $ff00+$70
+ ld hl, PartyMon1Level
+ ld bc, PartyMon2 - PartyMon1
+ ld de, PartySpecies
+ ld a, [PartyCount]
+.asm_119deb
+ push af
+ ld a, [de]
+ cp MEWTWO
+ jr z, .asm_119dfd
+ cp MEW
+ jr z, .asm_119dfd
+ cp LUGIA
+ jr c, .asm_119e02
+ cp NUM_POKEMON + 1
+ jr nc, .asm_119e02
+.asm_119dfd
+ ld a, [hl]
+ cp 70
+ jr c, .asm_119e0d
+.asm_119e02
+ add hl, bc
+ inc de
+ pop af
+ dec a
+ jr nz, .asm_119deb
+.asm_119e08
+ pop af
+ ld [rSVBK], a ; $ff00+$70
+ and a
+ ret
+.asm_119e0d
+ pop af
+ ld a, [de]
+ ld [wd265], a
+ call GetPokemonName
+ ld hl, StringBuffer1
+ ld de, wcd49
+ ld bc, PKMN_NAME_LENGTH
+ call CopyBytes
+ ld a, $a
+ ld [wcf66], a
+ pop af
+ ld [rSVBK], a ; $ff00+$70
+ scf
+ ret
+; 119e2b (46:5e2b)
+
+Function119e2b: ; 119e2b (46:5e2b)
+ call Function3e32
+
+Function119e2e: ; 119e2e (46:5e2e)
+ ld hl, wcf66
+ inc [hl]
+ ret
+; 119e33 (46:5e33)
+
+Unknown_119e33: ; 119e33
+ INCBIN "data/mobile/x-game-code-prefix.txt"
+Unknown_119e40:
+ INCBIN "data/mobile/x-game-result-prefix.txt"
+; 119e4f
+
+Function119e4f: ; 119e4f
+ push bc
+ ld hl, LYOverrides
+ ld a, [hli]
+ ld c, a
+ ld a, [hli]
+ ld b, a
+.asm_119e57
+ ld a, [de]
+ cp [hl]
+ jr z, .asm_119e64
+.asm_119e5b
+ inc hl
+ dec bc
+ ld a, b
+ or c
+ jr nz, .asm_119e57
+.asm_119e61
+ pop bc
+ scf
+ ret
+
+.asm_119e64
+ push de
+.asm_119e65
+ ld a, [de]
+ inc de
+ cp "\n"
+ jr z, .asm_119e7a
+ cp [hl]
+ jr nz, .asm_119e77
+ inc hl
+ dec bc
+ ld a, b
+ or c
+ jr nz, .asm_119e65
+ pop de
+ jr .asm_119e61
+
+.asm_119e77
+ pop de
+ jr .asm_119e5b
+
+.asm_119e7a
+ pop de
+ pop bc
+ inc hl
+ ld de, $d880
+.asm_119e80
+ ld a, [hli]
+ ld [de], a
+ inc de
+ cp $d
+ jr z, .asm_119e8c
+ dec c
+ jr nz, .asm_119e80
+ scf
+ ret
+
+.asm_119e8c
+ and a
+ ret
+; 119e8e
+
+Function119e8e: ; 119e8e
+ cp $60
+ jr c, .asm_119e95
+ sub $57
+ ret
+
+.asm_119e95
+ sub $30
+ ret
+; 119e98
+
+Function119e98: ; 119e98
+ ld a, $2
+.asm_119e9a
+ push af
+ ld a, [bc]
+ dec bc
+ call Function119e8e
+ or [hl]
+ ld [hl], a
+ ld a, [bc]
+ dec bc
+ call Function119e8e
+ rlca
+ rlca
+ rlca
+ rlca
+ or [hl]
+ ld [hl], a
+ inc hl
+ pop af
+ dec a
+ and a
+ jr nz, .asm_119e9a
+ ret
+; 119eb4
+
+Function119eb4: ; 119eb4 (46:5eb4)
+ xor a
+ ld [wc3cc], a
+ ld de, wc3ac
+.asm_119ebb
+ ld a, [de]
+ inc de
+ ld [hli], a
+ and a
+ jr nz, .asm_119ebb
+ ret
+
+Function119ec2: ; 119ec2 (46:5ec2)
+ ld a, $5
+ call GetSRAMBank
+ xor a
+ ld [$aa5c], a
+ ld de, $aa4c
+.asm_119ece
+ ld a, [de]
+ inc de
+ ld [hli], a
+ and a
+ jr nz, .asm_119ece
+ call CloseSRAM
+ ret
+
+Function119ed8: ; 119ed8 (46:5ed8)
+ ld a, [rSVBK] ; $ff00+$70
+ ld [wcd8c], a
+ ld a, $1
+ ld [rSVBK], a ; $ff00+$70
+ call Function119eee
+ ld a, [wcd8c]
+ ld [rSVBK], a ; $ff00+$70
+ ld a, $1
+ ld [hBGMapMode], a ; $ff00+$d4
+ ret
+
+Function119eee: ; 119eee (46:5eee)
+ ld a, [wcd3c]
+ ld e, a
+ ld d, 0
+ ld hl, Jumptable_119efd
+ add hl, de
+ add hl, de
+ ld a, [hli]
+ ld h, [hl]
+ ld l, a
+ jp [hl]
+; 119efd (46:5efd)
+
+Jumptable_119efd: ; 119efd
+ dw Function119f3f
+ dw Function119f45
+ dw Function119f56
+ dw Function119f76
+ dw Function119f98
+ dw Function11a113
+ dw Function11a129
+ dw Function11a131
+ dw Function11a13d
+ dw Function11a14b
+ dw Function11a16d
+ dw Function11a192
+ dw Function11a2e6
+ dw Function11a302
+ dw Function11a33a
+ dw Function11a207
+ dw Function11a235
+ dw Function11a357
+ dw Function11a36b
+ dw Function11a38d
+ dw Function11a3c5
+ dw Function11a3d9
+ dw Function11a3f9
+ dw Function11a41b
+ dw Function11a452
+ dw Function11a47a
+ dw Function11a488
+ dw Function11a49e
+ dw Function11a4db
+ dw Function11a4e8
+ dw Function11a4fe
+ dw Function11a466
+ dw Function11a47a
+; 119f3f
+
+Function119f3f: ; 119f3f
+ call Function11a5b9
+ jp Function11a5b0
+; 119f45
+
+Function119f45: ; 119f45
+ hlcoord 4, 2
+ ld de, String_11a661
+ call PlaceString
+ ld a, $80
+ ld [wcd44], a
+ jp Function11a5b0
+; 119f56
+
+Function119f56: ; 119f56
+ ld a, [wcd44]
+ and a
+ jr z, .asm_119f62
+ dec a
+ ld [wcd44], a
+ scf
+ ret
+
+.asm_119f62
+ call Function11a63c
+ hlcoord 4, 2
+ ld de, String_11a6aa
+ call PlaceString
+ ld a, $80
+ ld [wcd44], a
+ jp Function11a5b0
+; 119f76
+
+Function119f76: ; 119f76
+ ld a, [wcd44]
+ and a
+ jr z, .asm_119f82
+ dec a
+ ld [wcd44], a
+ scf
+ ret
+
+.asm_119f82
+ call Function11a63c
+ hlcoord 4, 2
+ ld de, String_11a679
+ call PlaceString
+ call Function11a5f5
+ xor a
+ ld [wcd44], a
+ jp Function11a5b0
+; 119f98
+
+Function119f98: ; 119f98
+ call Function11a536
+ ret c
+ call PlayClickSFX
+ ld a, [wcd44]
+ and a
+ jr nz, .asm_119fef
+ call Function1c07
+ call Function11a63c
+ xor a
+ ld [ScriptVar], a
+ call Function11a00e
+ ld a, [ScriptVar]
+ and a
+ jr z, .asm_119fd4
+ call Function1c07
+ callba Function104061
+ callba Function115dc3
+ ld a, [wcd33]
+ ld [wcf66], a
+ ld a, $a
+ ld [wc300], a
+ scf
+ ret
+
+.asm_119fd4
+ hlcoord 4, 2
+ ld de, String_11a692
+ call PlaceString
+ ld a, $1
+ ld [wc30d], a
+ ld a, $1
+ ld [wc314], a
+ callba Function104061
+ and a
+ ret
+
+.asm_119fef
+ call Function1c07
+ call Function1c07
+ callba Function104061
+ ld a, [wcd45]
+ ld [wcf66], a
+ callba Function115dc3
+ ld a, $a
+ ld [wc300], a
+ scf
+ ret
+; 11a00e
+
+Function11a00e: ; 11a00e
+ ld a, $5
+ call GetSRAMBank
+ ld a, [$aa4b]
+ and a
+ jr z, .asm_11a02a
+ ld a, [$aa4c]
+ call CloseSRAM
+ and a
+ ret nz
+ ld a, $5
+ call GetSRAMBank
+ xor a
+ ld [$aa4b], a
+
+.asm_11a02a
+ call CloseSRAM
+ ld a, [BGMapPalBuffer]
+ and a
+ jr z, .asm_11a039
+ dec a
+ jr z, .asm_11a081
+ jp Function11a0ca
+
+.asm_11a039
+ ld a, $3
+ ld [rSVBK], a
+ ld hl, $c608
+ ld de, $d800
+ ld bc, $00f6
+ call CopyBytes
+ ld a, $1
+ ld [rSVBK], a
+ call FadeToMenu
+ callba Function11765d
+ call Function11a9ce
+ ld a, $3
+ ld [rSVBK], a
+ ld hl, $d800
+ ld de, $c608
+ ld bc, $00f6
+ call CopyBytes
+ ld a, $1
+ ld [rSVBK], a
+ callba Function115d99
+ ld c, $0
+ callba Function115e18
+ ld a, $1
+ ld [wc305], a
+ ret
+
+.asm_11a081
+ xor a
+ ld [wcf83], a
+ ld [wcf82], a
+ ld a, $13
+ ld [wcf85], a
+ ld a, $5
+ ld [wcf84], a
+ call Function1c00
+ callba Function11765d
+ callba Function117ab4
+ callba Function106462
+ callba Function106464
+ call Function1c07
+ callba Function104061
+ callba Function115d99
+ ld c, $0
+ callba Function115e18
+ ld a, $1
+ ld [wc305], a
+ ret
+; 11a0ca
+
+Function11a0ca: ; 11a0ca
+ xor a
+ ld [wcf83], a
+ ld [wcf82], a
+ ld a, $13
+ ld [wcf85], a
+ ld a, $11
+ ld [wcf84], a
+ call Function1c00
+ callba Function11765d
+ callba Function17d3f6
+ callba Function106462
+ callba Function106464
+ call Function1c07
+ callba Function104061
+ callba Function115d99
+ ld c, $0
+ callba Function115e18
+ ld a, $1
+ ld [wc305], a
+ ret
+; 11a113
+
+Function11a113: ; 11a113
+ call Function11a63c
+ ld c, $1
+ callba Function115e18
+ hlcoord 4, 2
+ ld de, String_11a6c8
+ call PlaceString
+ and a
+ ret
+; 11a129
+
+Function11a129: ; 11a129
+ ld a, $80
+ ld [wcd44], a
+ jp Function11a5b0
+; 11a131
+
+Function11a131: ; 11a131
+ ld hl, wcd44
+ dec [hl]
+ ret nz
+ ld a, [wcd3c]
+ inc a
+ ld [wcd3c], a
+
+Function11a13d:
+ call Function11a63c
+ hlcoord 4, 2
+ ld de, String_11a6d2
+ call PlaceString
+ and a
+ ret
+; 11a14b
+
+Function11a14b: ; 11a14b
+ ld hl, wcd85
+ ld a, [hl]
+ cp $f3
+ jr nz, .asm_11a155
+ and a
+ ret
+
+.asm_11a155
+ call Function11a1d6
+ ret c
+ call Function11a63c
+ hlcoord 4, 2
+ ld de, String_11a6f1
+ call PlaceString
+ ld a, $80
+ ld [wcd44], a
+ jp Function11a5b0
+; 11a16d
+
+Function11a16d: ; 11a16d
+ ld a, [wcd44]
+ and a
+ jr z, .asm_11a179
+ dec a
+ ld [wcd44], a
+ scf
+ ret
+
+.asm_11a179
+ call Function11a63c
+ call Function11a1e6
+ hlcoord 4, 2
+ ld de, wc346
+ call PlaceString
+ call Function11a5f5
+ xor a
+ ld [wcd44], a
+ jp Function11a5b0
+; 11a192
+
+Function11a192: ; 11a192
+ call Function11a536
+ ret c
+ call PlayClickSFX
+ ld a, [wcd44]
+ and a
+ jr nz, .asm_11a1b6
+ call Function1c07
+ callba Function104061
+ call Function11a63c
+ hlcoord 4, 2
+ ld de, String_11a6d2
+ call PlaceString
+ and a
+ ret
+
+.asm_11a1b6
+ call Function1c07
+ callba Function104061
+ ld a, [wcd45]
+ ld [wcf66], a
+ ld [wcd80], a
+ call Function11a63c
+ hlcoord 4, 2
+ ld de, String_11a6d2
+ call PlaceString
+ scf
+ ret
+; 11a1d6
+
+Function11a1d6: ; 11a1d6
+ ld a, [wcd85]
+ cp $50
+ jr nz, .asm_11a1e4
+ ld a, $d3
+ call Function118805
+ scf
+ ret
+
+.asm_11a1e4
+ and a
+ ret
+; 11a1e6
+
+Function11a1e6: ; 11a1e6
+ ld hl, String_11a706
+ ld de, wc346
+ call Function11a1ff
+ ld hl, wcd85
+ call Function11a1ff
+ ld hl, String_11a70b
+ call Function11a1ff
+ ld a, $50
+ ld [de], a
+ ret
+; 11a1ff
+
+Function11a1ff: ; 11a1ff
+.asm_11a1ff
+ ld a, [hli]
+ cp $50
+ ret z
+ ld [de], a
+ inc de
+ jr .asm_11a1ff
+; 11a207
+
+Function11a207: ; 11a207
+ ld hl, MenuDataHeader_11a2de
+ call LoadMenuDataHeader
+ call Function1cbb
+ call Function1cfd
+ call Function321c
+ hlcoord 16, 8
+ ld de, String_11a2cf
+ call PlaceString
+ hlcoord 16, 10
+ ld de, String_11a2d3
+ call PlaceString
+ hlcoord 15, 8
+ ld a, $ed
+ ld [hl], a
+ xor a
+ ld [wcd44], a
+ jp Function11a5b0
+; 11a235
+
+Function11a235: ; 11a235
+ ld hl, hJoyPressed
+ ld a, [hl]
+ and A_BUTTON
+ jr nz, .asm_11a28f
+ ld a, [hl]
+ and B_BUTTON
+ jr nz, .asm_11a2c1
+ ld a, [hl]
+ and D_UP
+ jr nz, .asm_11a251
+ ld a, [hl]
+ and D_DOWN
+ jr nz, .asm_11a270
+.asm_11a24c
+ call Function11a9f0
+ scf
+ ret
+
+.asm_11a251
+ xor a
+ ld [wcd8a], a
+ ld [wcd8b], a
+ ld a, [wcd44]
+ and a
+ jr z, .asm_11a24c
+ xor a
+ ld [wcd44], a
+ hlcoord 15, 8
+ ld a, $ed
+ ld [hl], a
+ hlcoord 15, 10
+ ld a, $7f
+ ld [hl], a
+ jr .asm_11a24c
+
+.asm_11a270
+ xor a
+ ld [wcd8a], a
+ ld [wcd8b], a
+ ld a, [wcd44]
+ and a
+ jr nz, .asm_11a24c
+ inc a
+ ld [wcd44], a
+ hlcoord 15, 8
+ ld a, $7f
+ ld [hl], a
+ hlcoord 15, 10
+ ld a, $ed
+ ld [hl], a
+ jr .asm_11a24c
+
+.asm_11a28f
+ xor a
+ ld [wcd8a], a
+ ld [wcd8b], a
+ call PlayClickSFX
+ ld a, [wcd44]
+ and a
+ jr nz, .asm_11a2c4
+ call Function1c07
+ callba Function104061
+ ld a, [wcd46]
+ cp $0
+ jr z, .asm_11a2b4
+ ld a, [wcd47]
+ jr .asm_11a2b7
+
+.asm_11a2b4
+ ld a, [wcd33]
+
+.asm_11a2b7
+ ld [wcf66], a
+ ld a, $a
+ ld [wc300], a
+ scf
+ ret
+
+.asm_11a2c1
+ call PlayClickSFX
+
+.asm_11a2c4
+ call Function1c07
+ callba Function104061
+ and a
+ ret
+; 11a2cf
+
+String_11a2cf: ; 11a2cf
+ db "YES@"
+; 11a2d3
+
+String_11a2d3: ; 11a2d3
+ db "NO@"
+; 11a2d6
+
+MenuDataHeader_11a2d6: ; 11a2d6
+ db $40 ; flags
+ db 6, 14 ; start coords
+ db 10, 19 ; end coords
+ dw NULL
+ db 0 ; default option
+; 11a2de
+
+MenuDataHeader_11a2de: ; 11a2de
+ db $40 ; flags
+ db 7, 14 ; start coords
+ db 11, 19 ; end coords
+ dw NULL
+ db 0 ; default option
+; 11a2e6
+
+Function11a2e6: ; 11a2e6
+ call Function11a63c
+ ld c, $2
+ callba Function115e18
+ hlcoord 4, 2
+ ld de, String_11a71e
+ call PlaceString
+ ld a, $80
+ ld [wcd44], a
+ jp Function11a5b0
+; 11a302
+
+Function11a302: ; 11a302
+ ld a, [wcd44]
+ and a
+ jr z, .asm_11a30e
+ dec a
+ ld [wcd44], a
+ scf
+ ret
+
+.asm_11a30e
+ call Function11a63c
+ hlcoord 4, 2
+ ld de, String_11a72a
+ call PlaceString
+ hlcoord 9, 4
+ ld de, wcd68
+ ld bc, $8102
+ call PrintNum
+ hlcoord 14, 4
+ ld de, wcd67
+ ld bc, $8102
+ call PrintNum
+ ld a, $80
+ ld [wcd44], a
+ jp Function11a5b0
+; 11a33a
+
+Function11a33a: ; 11a33a
+ ld a, [wcd44]
+ and a
+ jr z, .asm_11a346
+ dec a
+ ld [wcd44], a
+ scf
+ ret
+
+.asm_11a346
+ call Function1c07
+ callba Function104061
+ callba Function115dc3
+ and a
+ ret
+; 11a357
+
+Function11a357: ; 11a357
+ call Function11a63c
+ hlcoord 4, 2
+ ld de, String_11a743
+ call PlaceString
+ ld a, $80
+ ld [wcd44], a
+ jp Function11a5b0
+; 11a36b
+
+Function11a36b: ; 11a36b
+ ld a, [wcd44]
+ and a
+ jr z, .asm_11a377
+ dec a
+ ld [wcd44], a
+ scf
+ ret
+
+.asm_11a377
+ call Function11a63c
+ hlcoord 4, 2
+ ld de, String_11a755
+ call PlaceString
+ call Function11a5f5
+ xor a
+ ld [wcd44], a
+ jp Function11a5b0
+; 11a38d
+
+Function11a38d: ; 11a38d
+ call Function11a536
+ ret c
+ call PlayClickSFX
+ ld a, [wcd44]
+ and a
+ jr nz, .asm_11a3b1
+ call Function1c07
+ callba Function104061
+ call Function11a63c
+ hlcoord 4, 2
+ ld de, String_11a6d2
+ call PlaceString
+ and a
+ ret
+
+.asm_11a3b1
+ call Function1c07
+ callba Function104061
+ ld a, [wcd45]
+ ld [wcf66], a
+ ld [wcd80], a
+ scf
+ ret
+; 11a3c5
+
+Function11a3c5: ; 11a3c5
+ call Function11a63c
+ hlcoord 4, 2
+ ld de, String_11a762
+ call PlaceString
+ ld a, $80
+ ld [wcd44], a
+ jp Function11a5b0
+; 11a3d9
+
+Function11a3d9: ; 11a3d9
+ ld a, [wcd44]
+ and a
+ jr z, .asm_11a3e5
+ dec a
+ ld [wcd44], a
+ scf
+ ret
+
+.asm_11a3e5
+ call Function11a63c
+ hlcoord 4, 2
+ ld de, String_11a779
+ call PlaceString
+ ld a, $80
+ ld [wcd44], a
+ jp Function11a5b0
+; 11a3f9
+
+Function11a3f9: ; 11a3f9
+ ld a, [wcd44]
+ and a
+ jr z, .asm_11a405
+ dec a
+ ld [wcd44], a
+ scf
+ ret
+
+.asm_11a405
+ call Function11a63c
+ hlcoord 4, 2
+ ld de, String_11a755
+ call PlaceString
+ call Function11a5f5
+ xor a
+ ld [wcd44], a
+ jp Function11a5b0
+; 11a41b
+
+Function11a41b: ; 11a41b
+ call Function11a536
+ ret c
+ call PlayClickSFX
+ ld a, [wcd44]
+ and a
+ jr nz, .asm_11a43f
+ call Function1c07
+ callba Function104061
+ call Function11a63c
+ hlcoord 4, 2
+ ld de, String_11a6d2
+ call PlaceString
+ and a
+ ret
+
+.asm_11a43f
+ call Function1c07
+ callba Function104061
+ ld a, $1c
+ ld [wcf66], a
+ ld [wcd80], a
+ scf
+ ret
+; 11a452
+
+Function11a452: ; 11a452
+ call Function11a63c
+ hlcoord 4, 2
+ ld de, String_11a791
+ call PlaceString
+ ld a, $80
+ ld [wcd44], a
+ jp Function11a5b0
+; 11a466
+
+Function11a466: ; 11a466
+ call Function11a63c
+ hlcoord 4, 2
+ ld de, String_11a7c1
+ call PlaceString
+ ld a, $80
+ ld [wcd44], a
+ jp Function11a5b0
+; 11a47a
+
+Function11a47a: ; 11a47a
+ ld a, [wcd44]
+ and a
+ jr z, .asm_11a486
+ dec a
+ ld [wcd44], a
+ scf
+ ret
+
+.asm_11a486
+ and a
+ ret
+; 11a488
+
+Function11a488: ; 11a488
+ call Function11a63c
+ hlcoord 4, 2
+ ld de, String_11a7ac
+ call PlaceString
+ call Function11a5f5
+ xor a
+ ld [wcd44], a
+ jp Function11a5b0
+; 11a49e
+
+Function11a49e: ; 11a49e
+ call Function11a536
+ ret c
+ call PlayClickSFX
+ ld a, [wcd44]
+ and a
+ jr nz, .asm_11a4c7
+ call Function1c07
+ callba Function104061
+ call Function11a63c
+ hlcoord 4, 2
+ ld de, String_11a6d2
+ call PlaceString
+ ld a, $14
+ ld [wcf66], a
+ and a
+ ret
+
+.asm_11a4c7
+ call Function1c07
+ callba Function104061
+ ld a, [wcd46]
+ ld [wcf66], a
+ ld [wcd80], a
+ scf
+ ret
+; 11a4db
+
+Function11a4db: ; 11a4db
+ call Function11a63c
+ ld de, String_11a6db
+ hlcoord 4, 2
+ call PlaceString
+ ret
+; 11a4e8
+
+Function11a4e8: ; 11a4e8
+ call Function11a63c
+ hlcoord 4, 2
+ ld de, String_11a7d7
+ call PlaceString
+ call Function11a5f5
+ xor a
+ ld [wcd44], a
+ jp Function11a5b0
+; 11a4fe
+
+Function11a4fe: ; 11a4fe
+ call Function11a536
+ ret c
+ call PlayClickSFX
+ ld a, [wcd44]
+ and a
+ jr nz, .asm_11a522
+ call Function1c07
+ callba Function104061
+ call Function11a63c
+ hlcoord 4, 2
+ ld de, String_11a6d2
+ call PlaceString
+ and a
+ ret
+
+.asm_11a522
+ call Function1c07
+ callba Function104061
+ ld a, [wcd45]
+ ld [wcf66], a
+ ld [wcd80], a
+ scf
+ ret
+; 11a536
+
+Function11a536: ; 11a536
+ ld hl, hJoyPressed
+ ld a, [hl]
+ and $1
+ jr nz, .asm_11a5a7
+ ld a, [hl]
+ and $2
+ jr nz, .asm_11a5a2
+ ld a, [hl]
+ and $40
+ jr nz, .asm_11a564
+ ld a, [hl]
+ and $80
+ jr nz, .asm_11a583
+.asm_11a54d
+ ld a, [wcd3c]
+ cp $4
+ jr z, .asm_11a562
+ call Function11a9f0
+ jr nz, .asm_11a562
+ call Function1c07
+ callba Function104061
+
+.asm_11a562
+ scf
+ ret
+
+.asm_11a564
+ xor a
+ ld [wcd8a], a
+ ld [wcd8b], a
+ ld a, [wcd44]
+ and a
+ jr z, .asm_11a54d
+ xor a
+ ld [wcd44], a
+ hlcoord 15, 7
+ ld a, $ed
+ ld [hl], a
+ hlcoord 15, 9
+ ld a, $7f
+ ld [hl], a
+ jr .asm_11a54d
+
+.asm_11a583
+ xor a
+ ld [wcd8a], a
+ ld [wcd8b], a
+ ld a, [wcd44]
+ and a
+ jr nz, .asm_11a54d
+ inc a
+ ld [wcd44], a
+ hlcoord 15, 7
+ ld a, $7f
+ ld [hl], a
+ hlcoord 15, 9
+ ld a, $ed
+ ld [hl], a
+ jr .asm_11a54d
+
+.asm_11a5a2
+ ld a, $1
+ ld [wcd44], a
+
+.asm_11a5a7
+ xor a
+ ld [wcd8a], a
+ ld [wcd8b], a
+ and a
+ ret
+; 11a5b0
+
+Function11a5b0: ; 11a5b0
+ ld a, [wcd3c]
+ inc a
+ ld [wcd3c], a
+ scf
+ ret
+; 11a5b9
+
+Function11a5b9: ; 11a5b9
+ xor a
+ ld [wcf83], a
+ ld [wcf82], a
+ ld a, $13
+ ld [wcf85], a
+ ld a, $5
+ ld [wcf84], a
+ call Function1c00
+ ld hl, AttrMap
+ ld b, $6
+ ld c, $14
+ ld hl, TileMap
+ ld b, $4
+ ld c, $12
+ call Function3eea
+ callba Function104061
+ call Function1ad2
+ ld c, $0
+ callba Function115e18
+ ld a, $1
+ ld [wc305], a
+ ret
+; 11a5f5
+
+Function11a5f5: ; 11a5f5
+ ld a, $e
+ ld [wcf83], a
+ ld a, $13
+ ld [wcf85], a
+ ld a, $6
+ ld [wcf82], a
+ ld a, $a
+ ld [wcf84], a
+ call Function1c00
+ hlcoord 14, 6, AttrMap
+ ld b, $5
+ ld c, $6
+ hlcoord 14, 6
+ ld b, $3
+ ld c, $4
+ call Function3eea
+ hlcoord 16, 7
+ ld de, String_11a2cf
+ call PlaceString
+ hlcoord 16, 9
+ ld de, String_11a2d3
+ call PlaceString
+ hlcoord 15, 7
+ ld a, $ed
+ ld [hl], a
+ callba Function104061
+ ret
+; 11a63c
+
+Function11a63c: ; 11a63c
+ hlcoord 4, 1
+ ld de, String_11a7f4
+ call PlaceString
+ hlcoord 4, 2
+ ld de, String_11a7f4
+ call PlaceString
+ hlcoord 4, 3
+ ld de, String_11a7f4
+ call PlaceString
+ hlcoord 4, 4
+ ld de, String_11a7f4
+ call PlaceString
+ ret
+; 11a661
+
+String_11a661: ; 11a661
+ db "これから モバイルセンターに"
+ next "でんわ", $1f, "かけます@"
+; 11a679
+
+String_11a679: ; 11a679
+ db "モバイルアダプタ", $25, "じゅんびは"
+ next "できて いますか?@"
+; 11a692
+
+String_11a692: ; 11a692
+ db "でんわ", $1f, "かけています"
+ next "しばらく おまちください@"
+; 11a6aa
+
+String_11a6aa: ; 11a6aa
+ db "でんわをかけると つうわりょう"
+ next "せつぞくりょう", $4a, "かかります@"
+; 11a6c8
+
+String_11a6c8: ; 11a6c8
+ db "せつぞく しました@"
+; 11a6d2
+
+String_11a6d2: ; 11a6d2
+ db "つうしん ちゅう@"
+; 11a6db
+
+String_11a6db: ; 11a6db
+ db "つうしん ちゅう"
+ next "セレクト エーでちゅうし@"
+; 11a6f1
+
+String_11a6f1: ; 11a6f1
+ db "この サービスには"
+ next "つうわりょう", $25, "ほかに@"
+; 11a706
+
+String_11a706: ; 11a706
+ db "おかね", $4a, "@"
+; 11a70b
+
+String_11a70b: ; 11a70b
+ db "えん"
+ next "かかります よろしい ですか?@"
+; 11a71e
+
+String_11a71e: ; 11a71e
+ db "つうしん しゅうりょう@"
+; 11a72a
+
+String_11a72a: ; 11a72a
+ db "つないだ じかん"
+ next " やく ふん びょう@"
+; 11a743
+
+String_11a743: ; 11a743
+ db "もっていない データが"
+ next "あります!@"
+; 11a755
+
+String_11a755: ; 11a755
+ db "データ", $1f, "よみこみますか?@"
+; 11a762
+
+String_11a762: ; 11a762
+ db "おなじ データ", $1f, "よみこんだ"
+ next "こと", $4a, "ありますが@"
+; 11a779
+
+String_11a779: ; 11a779
+ db "そのデータ", $24, "なくなっているか"
+ next "こわれて います@"
+; 11a791
+
+String_11a791: ; 11a791
+ db "もっている データと"
+ next "おなじデータしか ありません!@"
+; 11a7ac
+
+String_11a7ac: ; 11a7ac
+ db "データ", $25, "よみこみを"
+ next "ちゅうし しますか?@"
+; 11a7c1
+
+String_11a7c1: ; 11a7c1
+ db "あたらしい ニュースは"
+ next "ありません でした@"
+; 11a7d7
+
+String_11a7d7: ; 11a7d7
+ db "あたらしいニュース", $4a, "あります"
+ next "ニュース", $1f, "よみこみますか?@"
+; 11a7f4
+
+String_11a7f4: ; 11a7f4
+ db " @"
+; 11a804
+
+MenuDataHeader_11a804: ; 11a804
+ db $40 ; flags
+ db 0, 0 ; start coords
+ db 5, 19 ; end coords
+ dw NULL
+ db 0 ; default option
+; 11a80c
+
+Function11a80c: ; 11a80c
+ ld de, hDivisor
+ ld bc, hDividend
+ ld hl, Unknown_11a89a
+ call Function11a88c
+ ld bc, hQuotient
+ ld hl, Unknown_11a8ba
+ call Function11a88c
+ ld bc, $ffb5
+ ld hl, Unknown_11a8da
+ call Function11a88c
+ xor a
+ ld b, a
+ ld a, [hDivisor]
+ and $f
+ ld e, a
+ ld a, [$ffb9]
+ and $f
+ call Function11a884
+ ld e, a
+ ld a, [$ffbb]
+ and $f
+ call Function11a884
+ ld [wcd62], a
+ ld e, b
+ xor a
+ ld b, a
+ ld a, [hDivisor]
+ and $f0
+ swap a
+ call Function11a884
+ ld e, a
+ ld a, [$ffb9]
+ and $f0
+ swap a
+ call Function11a884
+ ld e, a
+ ld a, [$ffbb]
+ and $f0
+ swap a
+ call Function11a884
+ ld [wcd63], a
+ ld e, b
+ xor a
+ ld b, a
+ ld a, [hMathBuffer]
+ and $f
+ call Function11a884
+ ld e, a
+ ld a, [$ffba]
+ and $f
+ call Function11a884
+ ld e, a
+ ld a, [$ffbc]
+ and $f
+ call Function11a884
+ ld [wcd64], a
+ ret
+; 11a884
+
+Function11a884: ; 11a884
+ add e
+ cp $a
+ ret c
+ sub $a
+ inc b
+ ret
+; 11a88c
+
+Function11a88c: ; 11a88c
+ ld a, [bc]
+ sla a
+ ld c, a
+ xor a
+ ld b, a
+ add hl, bc
+ ld a, [hli]
+ ld [de], a
+ inc de
+ ld a, [hl]
+ ld [de], a
+ inc de
+ ret
+; 11a89a
+
+Unknown_11a89a: ; 11a89a
+x = 0
+rept 16
+ bcd x % 100, x / 100
+x = x + 1
+endr
+
+Unknown_11a8ba: ; 11a8ba
+x = 0
+rept 16
+ bcd x % 100, x / 100
+x = x + 16
+endr
+
+Unknown_11a8da: ; 11a8da
+x = 0
+rept 16
+ bcd x % 100, x / 100
+x = x + 256
+endr
+; 11a8fa
+
+Function11a8fa: ; 11a8fa
+ ld a, [wc31a]
+ ld e, a
+ ld d, 0
+ ld hl, Jumptable_11a909
+ add hl, de
+ add hl, de
+ ld a, [hli]
+ ld h, [hl]
+ ld l, a
+ jp [hl]
+; 11a909
+
+Jumptable_11a909: ; 11a909
+ dw Function11a970
+ dw Function11a90f
+ dw Function11a971
+; 11a90f
+
+Function11a90f: ; 11a90f
+ ld a, $1
+ ld [rSVBK], a
+ call SpeechTextBox
+ ld a, $50
+ ld hl, wc320
+ ld bc, $008c
+ call ByteFill
+ ld a, [wc31b]
+ ld l, a
+ ld a, [wc31c]
+ ld h, a
+ ld de, wc320
+.asm_11a92c
+ ld a, [hli]
+ cp $57
+ jr z, .asm_11a94f
+ cp $0
+ jr z, .asm_11a92c
+ cp $50
+ jr z, .asm_11a92c
+ cp $1
+ jr z, .asm_11a941
+ ld [de], a
+ inc de
+ jr .asm_11a92c
+
+.asm_11a941
+ ld a, [hli]
+ ld c, a
+ ld a, [hli]
+ ld b, a
+.asm_11a945
+ ld a, [bc]
+ inc bc
+ cp $50
+ jr z, .asm_11a92c
+ ld [de], a
+ inc de
+ jr .asm_11a945
+
+.asm_11a94f
+ xor a
+ ld [wc31f], a
+ ld a, $20
+ ld [wc31b], a
+ ld a, $c3
+ ld [wc31c], a
+ hlcoord 1, 14
+ ld a, l
+ ld [wc31d], a
+ ld a, h
+ ld [wc31e], a
+ ld hl, wc31a
+ inc [hl]
+ ld a, $3
+ ld [rSVBK], a
+
+Function11a970:
+ ret
+; 11a971
+
+Function11a971: ; 11a971
+ ld hl, wc31f
+ ld a, [hJoyDown]
+ and a
+ jr nz, .asm_11a97f
+ ld a, [hl]
+ and a
+ jr z, .asm_11a97f
+ dec [hl]
+ ret
+
+.asm_11a97f
+ ld a, [Options]
+ and $7
+ ld [hl], a
+ ld hl, wcd8d
+ ld a, [wc31b]
+ ld e, a
+ ld a, [wc31c]
+ ld d, a
+ ld a, [de]
+ inc de
+ ld [hli], a
+ ld a, e
+ ld [wc31b], a
+ ld a, d
+ ld [wc31c], a
+ ld a, $50
+ ld [hl], a
+ ld a, [wc31d]
+ ld l, a
+ ld a, [wc31e]
+ ld h, a
+ ld de, wcd8d
+ call PlaceString
+ ld a, c
+ ld [wc31d], a
+ ld a, b
+ ld [wc31e], a
+ ld a, [wcd8d]
+ cp $50
+ jr nz, .asm_11a9bf
+ xor a
+ ld [wc31a], a
+
+.asm_11a9bf
+ ret
+; 11a9c0
+
+Function11a9c0: ; 11a9c0
+ ld a, l
+ ld [wc31b], a
+ ld a, h
+ ld [wc31c], a
+ ld a, $1
+ ld [wc31a], a
+ ret
+; 11a9ce
+
+Function11a9ce: ; 11a9ce
+ call WhiteBGMap
+ call Function2bae
+ call Function1d7d
+ callba Function106462
+ callba Function106464
+ call Functiond90
+ callba Function2b5c
+ call Function1ad2
+ ret
+; 11a9f0
+
+Function11a9f0: ; 11a9f0
+ ld a, $1
+ and a
+ ret
+; 11a9f4
+
+Function11a9f4: ; 11a9f4
+ ld a, [wcd8a]
+ ld l, a
+ ld a, [wcd8b]
+ ld h, a
+ inc hl
+ ld a, l
+ ld [wcd8a], a
+ ld a, h
+ ld [wcd8b], a
+ ld de, $d5d0
+ add hl, de
+ bit 7, h
+ ret nz
+ ld a, $d6
+ call Function118805
+ and a
+ ret
+; 11aa13
+
+UnknownText_0x11aa13: ; 0x11aa13
+ text "SAVE FILE will be"
+ line "sent."
+ done
+; 0x11aa2c
+
+UnknownText_0x11aa2c: ; 0x11aa2c
+ text "Sent SAVE FILE."
+ line "Reading NEWS…"
+ done
+; 0x11aa4b
+
+UnknownText_0x11aa4b: ; 0x11aa4b
+ text "Reading NEWS…"
+ done
+; 0x11aa5a
+
+UnknownText_0x11aa5a: ; 0x11aa5a
+ text "Received NEWS!"
+ done
+; 0x11aa6a
+
+UnknownText_0x11aa6a: ; 0x11aa6a
+ text "Quit reading NEWS?"
+ done
+; 0x11aa7e
+
+UnknownText_0x11aa7e: ; 0x11aa7e
+ text "Canceled sending"
+ line "SAVE FILE."
+ done
+; 0x11aa9b
+
+UnknownText_0x11aa9b: ; 0x11aa9b
+ text "ODD EGG"
+ line "was received!"
+ done
+; 0x11aab2
+
+UnknownText_0x11aab2: ; 0x11aab2
+ text "Registering your"
+ line "record…"
+ done
+; 0x11aacc
+
+UnknownText_0x11aacc: ; 0x11aacc
+ text "One visit per day"
+ line "per BATTLE ROOM!"
+ done
+; 0x11aaf0
+
+UnknownText_0x11aaf0: ; 0x11aaf0
+ text "A party #MON"
+ line "tops this level."
+ done
+; 0x11ab0f
+
+UnknownText_0x11ab0f: ; 0x11ab0f
+ text_from_ram wcd49
+ text " may go"
+ line "only to BATTLE"
+
+ para "ROOMS that are"
+ line "Lv.70 or higher."
+ done
+; 0x11ab4a
+
+UnknownText_0x11ab4a: ; 0x11ab4a
+ text "Cancel your BATTLE"
+ line "ROOM challenge?"
+ done
+; 0x11ab6e
+
+UnknownText_0x11ab6e: ; 0x11ab6e
+ text "Exit GYM LEADER"
+ line "HONOR ROLL?"
+ done
+; 0x11ab8b
+
+UnknownText_0x11ab8b: ; 0x11ab8b
+ text "Linking with the"
+ line "CENTER…"
+ done
+; 0x11aba5
+
+UnknownText_0x11aba5: ; 0x11aba5
+ text "What level do you"
+ line "want to challenge?"
+ done
+; 0x11abcb
+
+UnknownText_0x11abcb: ; 0x11abcb
+ text "Check BATTLE ROOM"
+ line "list by max level?"
+ done
+; 0x11abf1
+
+UnknownText_0x11abf1: ; 0x11abf1
+ text "Enter which"
+ line "BATTLE ROOM?"
+ done
+; 0x11ac0b
+
+UnknownText_0x11ac0b: ; 0x11ac0b
+ text "Which BATTLE ROOM?"
+ done
+; 0x11ac1f
+
+UnknownText_0x11ac1f: ; 0x11ac1f
+ text_from_ram StringBuffer3
+ text "'s ROOM"
+ line "@"
+ text_from_ram StringBuffer4
+ text "?"
+ cont "Please wait…"
+ done
+; 0x11ac3e
+
+Function11ac3e: ; 11ac3e
+ call SpeechTextBox
+ call FadeToMenu
+ callab Function8e814
+ call Function11ac51
+ call Function2b3c
+ ret
+; 11ac51
+
+Function11ac51: ; 11ac51
+ xor a
+ ld [hBGMapMode], a
+ ld hl, Options
+ ld a, [hl]
+ push af
+ set 4, [hl]
+ ld a, [VramState]
+ push af
+ xor a
+ ld [VramState], a
+ ld a, [$ffaa]
+ push af
+ ld a, $1
+ ld [$ffaa], a
+ xor a
+ ld [$ffde], a
+ ld [wcd49], a
+ ld [wcd4a], a
+ ld [wcd4c], a
+ ld [wcd4d], a
+ ld [wcd4e], a
+ call Function11ad1b
+ call DelayFrame
+.asm_11ac82
+ call Functiona57
+ ld a, [wcf63]
+ bit 7, a
+ jr nz, .asm_11aca8
+ call Function11b314
+ call Function11acb7
+ call Function11ad6e
+ ld a, $78
+ ld [wc3b5], a
+ callba Function8cf7a
+ callba Function104061
+ jr .asm_11ac82
+
+.asm_11aca8
+ call ClearSprites
+ pop af
+ ld [$ffaa], a
+ pop af
+ ld [VramState], a
+ pop af
+ ld [Options], a
+ ret
+; 11acb7
+
+Function11acb7: ; 11acb7
+ ld hl, Unknown_11ba44
+ ld a, [wcd49]
+ ld c, a
+ ld b, $0
+ sla c
+ rl b
+ sla c
+ rl b
+ sla c
+ rl b
+ add hl, bc
+ decoord 6, 6
+ ld a, [hli]
+ ld [de], a
+ decoord 0, 7
+ ld bc, $0007
+ call CopyBytes
+ ld a, [wcd49]
+ inc a
+ ld [wcd49], a
+ ld a, [hl]
+ cp $ff
+ jr nz, .asm_11aceb
+ xor a
+ ld [wcd49], a
+
+.asm_11aceb
+ ld hl, Unknown_11bb7d
+ ld a, [wcd4a]
+ ld c, a
+ ld b, $0
+ sla c
+ rl b
+ sla c
+ rl b
+ sla c
+ rl b
+ add hl, bc
+ decoord 3, 9
+ ld bc, $0007
+ call CopyBytes
+ ld a, [wcd4a]
+ inc a
+ ld [wcd4a], a
+ inc hl
+ ld a, [hl]
+ cp $ff
+ ret nz
+ xor a
+ ld [wcd4a], a
+ ret
+; 11ad1b
+
+Function11ad1b: ; 11ad1b
+ call WhiteBGMap
+ call ClearSprites
+ call ClearTileMap
+ callba Function17c000
+ ld a, [wcfa9]
+ ld [wcd82], a
+ dec a
+ ld [$ffb0], a
+ ld a, $10
+ ld [wc3b7], a
+ ld hl, Function8e83f
+ ld a, BANK(Function8e83f)
+ ld e, $4
+ rst FarCall
+ ld hl, Function8e83f
+ ld a, BANK(Function8e83f)
+ ld e, $5
+ rst FarCall
+ ld hl, $c6d0
+ ld bc, $0115
+ xor a
+ call ByteFill
+ xor a
+ ld [wcf63], a
+ ld [wcf64], a
+ ld [wcf65], a
+ ld [wcf66], a
+ ld [wcd30], a
+ ld a, $2
+ ld [wc7d4], a
+ callba Function40bdc
+ ret
+; 11ad6e
+
+Function11ad6e: ; 11ad6e
+ ld a, [wcf63]
+ ld hl, Jumptable_11ad78
+ call Function11b239
+ jp [hl]
+; 11ad78
+
+Jumptable_11ad78: ; 11ad78
+ dw Function11b082
+ dw Function11b0ff
+ dw Function11ad95
+ dw Function11adc4
+ dw Function11ae4e
+ dw Function11ae98
+ dw Function11ad8f
+ dw Function11af04
+ dw Function11af4e
+; 11ad8a
+
+Function11ad8a: ; 11ad8a
+ ld hl, wcf63
+ inc [hl]
+ ret
+; 11ad8f
+
+Function11ad8f: ; 11ad8f
+ ld hl, wcf63
+ set 7, [hl]
+ ret
+; 11ad95
+
+Function11ad95: ; 11ad95
+ ld hl, MenuDataHeader_11ae38
+ call LoadMenuDataHeader
+ call Function1cbb
+ hlcoord 12, 12
+ ld de, String_11ae40
+ call PlaceString
+ hlcoord 10, 10, AttrMap
+ ld bc, $0808
+ call Function11afd6
+ callba Function104061
+ call Function11ad8a
+ ld a, $1
+ ld [wcfa9], a
+ ld hl, Unknown_11afcc
+ call Function11afb7
+
+Function11adc4:
+ ld hl, hJoyPressed
+ ld a, [hl]
+ and a
+ ret z
+ ld a, [hl]
+ and $40
+ jr nz, .asm_11ade6
+ ld a, [hl]
+ and $80
+ jr nz, .asm_11aded
+ ld a, [hl]
+ and $1
+ jr nz, .asm_11ae06
+ ld a, [hl]
+ and $2
+ ret z
+ call PlayClickSFX
+ xor a
+ ld [wcf63], a
+ jr .asm_11ae2e
+
+.asm_11ade6
+ ld a, [wcfa9]
+ dec a
+ ret z
+ jr .asm_11adf4
+
+.asm_11aded
+ ld a, [wcfa9]
+ inc a
+ cp $4
+ ret z
+
+.asm_11adf4
+ push af
+ ld hl, Unknown_11afcc
+ call Function11afbb
+ pop af
+ ld [wcfa9], a
+ ld hl, Unknown_11afcc
+ call Function11afb7
+ ret
+
+.asm_11ae06
+ call PlayClickSFX
+ ld a, [wcfa9]
+ dec a
+ ld hl, wcd30
+ ld [hl], a
+ and a
+ jr z, .asm_11ae28
+ hlcoord 2, 14
+ ld a, [wcfa9]
+ cp $2
+ jr z, .asm_11ae23
+ call Function11b272
+ jr .asm_11ae2b
+
+.asm_11ae23
+ call Function11b267
+ jr .asm_11ae2b
+
+.asm_11ae28
+ ld a, $3
+ ld [hl], a
+
+.asm_11ae2b
+ call Function11ad8a
+
+.asm_11ae2e
+ call Function1c07
+ callba Function104061
+ ret
+; 11ae38
+
+MenuDataHeader_11ae38: ; 11ae38
+ db $40 ; flags
+ db 10, 10 ; start coords
+ db 17, 17 ; end coords
+ dw NULL
+ db 0 ; default option
+; 11ae40
+
+String_11ae40: ; 11ae40
+ db "どちらでも"
+ next "♂ォス"
+ next "♀メス"
+ db "@"
+; 11ae4e
+
+Function11ae4e: ; 11ae4e
+ ld hl, MenuDataHeader_11afe8
+ call LoadMenuDataHeader
+ call Function1cbb
+ hlcoord 10, 14
+ ld de, String_11aff0
+ call PlaceString
+ ld hl, MenuDataHeader_11b013
+ call LoadMenuDataHeader
+ call Function1cbb
+ hlcoord 16, 8
+ ld de, String_11b01b
+ call PlaceString
+ hlcoord 14, 7, AttrMap
+ lb bc, 5, 6
+ call Function11afd6
+ hlcoord 9, 12, AttrMap
+ lb bc, 6, 11
+ call Function11afd6
+ callba Function104061
+ call Function11ad8a
+ ld a, $1
+ ld [wcfa9], a
+ ld hl, Unknown_11afd2
+ call Function11afb7
+
+Function11ae98:
+ ld hl, hJoyPressed
+ ld a, [hl]
+ and a
+ ret z
+ ld a, [hl]
+ and D_UP
+ jr nz, .asm_11aec1
+ ld a, [hl]
+ and D_DOWN
+ jr nz, .asm_11aec8
+ ld a, [hl]
+ and A_BUTTON
+ jr nz, .asm_11aee1
+ ld a, [hl]
+ and B_BUTTON
+ ret z
+ call PlayClickSFX
+.asm_11aeb4
+ hlcoord 2, 14
+ ld a, $7f
+ ld [hl], a
+ ld a, $1
+ ld [wcf63], a
+ jr .asm_11aef7
+
+.asm_11aec1
+ ld a, [wcfa9]
+ dec a
+ ret z
+ jr .asm_11aecf
+
+.asm_11aec8
+ ld a, [wcfa9]
+ inc a
+ cp $3
+ ret z
+
+.asm_11aecf
+ push af
+ ld hl, Unknown_11afd2
+ call Function11afbb
+ pop af
+ ld [wcfa9], a
+ ld hl, Unknown_11afd2
+ call Function11afb7
+ ret
+
+.asm_11aee1
+ call PlayClickSFX
+ ld a, [wcfa9]
+ cp $2
+ jr z, .asm_11aeb4
+ ld a, [wcd4b]
+ ld [ScriptVar], a
+ call Function11b022
+ call Function11ad8a
+
+.asm_11aef7
+ call Function1c07
+ call Function1c07
+ callba Function104061
+ ret
+; 11af04
+
+Function11af04: ; 11af04
+ ld hl, MenuDataHeader_11afe8
+ call LoadMenuDataHeader
+ call Function1cbb
+ hlcoord 10, 14
+ ld de, String_11b003
+ call PlaceString
+ ld hl, MenuDataHeader_11b013
+ call LoadMenuDataHeader
+ call Function1cbb
+ hlcoord 16, 8
+ ld de, String_11b01b
+ call PlaceString
+ hlcoord 14, 7, AttrMap
+ lb bc, 5, 6
+ call Function11afd6
+ hlcoord 9, 12, AttrMap
+ lb bc, 6, 11
+ call Function11afd6
+ callba Function104061
+ call Function11ad8a
+ ld a, $2
+ ld [wcfa9], a
+ ld hl, Unknown_11afd2
+ call Function11afb7
+
+Function11af4e:
+ ld hl, hJoyPressed
+ ld a, [hl]
+ and a
+ ret z
+ ld a, [hl]
+ and D_UP
+ jr nz, .asm_11af77
+ ld a, [hl]
+ and D_DOWN
+ jr nz, .asm_11af7e
+ ld a, [hl]
+ and A_BUTTON
+ jr nz, .asm_11af97
+ ld a, [hl]
+ and B_BUTTON
+ ret z
+ call PlayClickSFX
+.asm_11af6a
+ hlcoord 2, 14
+ ld a, $7f
+ ld [hl], a
+ ld a, $1
+ ld [wcf63], a
+ jr .asm_11afaa
+
+.asm_11af77
+ ld a, [wcfa9]
+ dec a
+ ret z
+ jr .asm_11af85
+
+.asm_11af7e
+ ld a, [wcfa9]
+ inc a
+ cp $3
+ ret z
+
+.asm_11af85
+ push af
+ ld hl, Unknown_11afd2
+ call Function11afbb
+ pop af
+ ld [wcfa9], a
+ ld hl, Unknown_11afd2
+ call Function11afb7
+ ret
+
+.asm_11af97
+ call PlayClickSFX
+ ld a, [wcfa9]
+ cp $2
+ jr z, .asm_11af6a
+ ld a, $6
+ ld [wcf63], a
+ xor a
+ ld [ScriptVar], a
+
+.asm_11afaa
+ call Function1c07
+ call Function1c07
+ callba Function104061
+ ret
+; 11afb7
+
+Function11afb7: ; 11afb7
+ ld e, $ed
+ jr asm_11afbd
+
+Function11afbb:
+ ld e, $7f
+
+asm_11afbd:
+ ld a, [wcfa9]
+ dec a
+ ld c, a
+ ld b, 0
+ add hl, bc
+ add hl, bc
+ ld a, e
+ ld e, [hl]
+ inc hl
+ ld d, [hl]
+ ld [de], a
+ ret
+; 11afcc
+
+Unknown_11afcc:
+ dwcoord 11, 12
+ dwcoord 11, 14
+ dwcoord 11, 16
+
+Unknown_11afd2:
+ dwcoord 15, 8
+ dwcoord 15, 10
+; 11afd6
+
+Function11afd6: ; 11afd6
+ ld de, $0014
+ ld a, $3
+.asm_11afdb
+ push bc
+ push hl
+.asm_11afdd
+ ld [hli], a
+ dec c
+ jr nz, .asm_11afdd
+ pop hl
+ add hl, de
+ pop bc
+ dec b
+ jr nz, .asm_11afdb
+ ret
+; 11afe8
+
+MenuDataHeader_11afe8: ; 11afe8
+ db $40 ; flags
+ db 12, 9 ; start coords
+ db 17, 19 ; end coords
+ dw NULL
+ db 0 ; default option
+; 11aff0
+
+String_11aff0: ; 11aff0
+ db "この じょうけんで"
+ next "よろしいですか?@"
+; 11b003
+
+String_11b003: ; 11b003
+ db "こうかんを"
+ next "ちゅうししますか?@"
+; 11b013
+
+MenuDataHeader_11b013: ; 11b013
+ db $40 ; flags
+ db 7, 14 ; start coords
+ db 11, 19 ; end coords
+ dw NULL
+ db 1 ; default option
+; 11b01b
+
+String_11b01b:
+ db "はい"
+ next "いいえ@"
+; 11b022
+
+Function11b022: ; 11b022
+ ld a, [wcd2e]
+ and a
+ jr z, .asm_11b02e
+ ld hl, StringBuffer3
+ call Function11b03d
+
+.asm_11b02e
+ ld a, [wcd30]
+ and a
+ ret z
+ cp $3
+ ret z
+ ld hl, StringBuffer4
+ call Function11b03d
+ ret
+; 11b03d
+
+Function11b03d: ; 11b03d
+ push hl
+ push af
+ ld c, $1
+.asm_11b041
+ ld a, [hli]
+ cp $ef
+ jr z, .asm_11b051
+ cp $f5
+ jr z, .asm_11b051
+ cp $50
+ jr z, .asm_11b055
+ inc c
+ jr .asm_11b041
+
+.asm_11b051
+ dec hl
+ ld a, $50
+ ld [hli], a
+
+.asm_11b055
+ dec hl
+ push hl
+ ld e, $4
+ ld d, $0
+ add hl, de
+ ld e, l
+ ld d, h
+ pop hl
+.asm_11b05f
+ ld a, [hld]
+ ld [de], a
+ dec de
+ dec c
+ jr nz, .asm_11b05f
+ pop af
+ pop de
+ cp $1
+ jr nz, .asm_11b070
+ ld hl, String_11b07a
+ jr .asm_11b073
+
+.asm_11b070
+ ld hl, String_11b07e
+
+.asm_11b073
+ ld bc, 4
+ call CopyBytes
+ ret
+; 11b07a
+
+String_11b07a: db "ォスの "
+String_11b07e: db "メスの "
+
+Function11b082: ; 11b082
+ call Function11b242
+ ld a, $7
+ ld [wc7d3], a
+ call Function11b099
+ call Function11b295
+ call Function11b275
+ call Function32f9
+ jp Function11ad8a
+; 11b099
+
+Function11b099: ; 11b099
+ ld c, $6
+ hlcoord 11, 1
+ ld a, [wc7d3]
+ add a
+ ld b, a
+ xor a
+ call Function11b236
+ ld a, [wc7d0]
+ ld e, a
+ ld d, $0
+ ld hl, $c6d0
+ add hl, de
+ ld e, l
+ ld d, h
+ hlcoord 11, 2
+ ld a, [wc7d3]
+.asm_11b0b9
+ push af
+ ld a, [de]
+ ld [wd265], a
+ push de
+ push hl
+ call Function11b0cf
+ pop hl
+ ld de, $0028
+ add hl, de
+ pop de
+ inc de
+ pop af
+ dec a
+ jr nz, .asm_11b0b9
+ ret
+; 11b0cf
+
+Function11b0cf: ; 11b0cf
+ and a
+ ret z
+ call Function11b0ec
+ ret c
+ call Function11b0e1
+ push hl
+ call GetPokemonName
+ pop hl
+ call PlaceString
+ ret
+; 11b0e1
+
+Function11b0e1: ; 11b0e1
+ call Function11b21e
+ jr nz, .asm_11b0e8
+ inc hl
+ ret
+
+.asm_11b0e8
+ ld a, $1
+ ld [hli], a
+ ret
+; 11b0ec
+
+Function11b0ec: ; 11b0ec
+ call Function11b22a
+ ret nz
+ inc hl
+ ld de, String_11b0f9
+ call PlaceString
+ scf
+ ret
+; 11b0f9
+
+String_11b0f9: ; 11b0f9
+ db "ーーーーー@"
+; 11b0ff
+
+Function11b0ff: ; 11b0ff
+ ld hl, hJoyPressed
+ ld a, [hl]
+ and $2
+ jr nz, .asm_11b141
+ ld a, [hl]
+ and $1
+ jr nz, .asm_11b131
+ call Function11b175
+ jr nc, .asm_11b125
+ ld a, [wcd4c]
+ inc a
+ and $3
+ ld [wcd4c], a
+ xor a
+ ld [hBGMapMode], a
+ call Function11b099
+ ld a, $1
+ ld [hBGMapMode], a
+ ret
+
+.asm_11b125
+ ld a, [wcd4c]
+ and a
+ ret z
+ inc a
+ and $3
+ ld [wcd4c], a
+ ret
+
+.asm_11b131
+ call Function11b20b
+ call Function11b22a
+ jr z, .asm_11b13d
+ ld a, $1
+ jr .asm_11b148
+
+.asm_11b13d
+ ld a, $2
+ jr .asm_11b148
+
+.asm_11b141
+ ld hl, wcf63
+ ld a, $7
+ ld [hl], a
+ ret
+
+.asm_11b148
+ call PlayClickSFX
+ ld [wcd4b], a
+ and a
+ jr z, .asm_11b16c
+ ld a, [wcf65]
+ cp $0
+ jr z, .asm_11b163
+ cp $fe
+ jr z, .asm_11b167
+ cp $ff
+ jr z, .asm_11b16b
+ jp Function11ad8a
+
+.asm_11b163
+ ld a, $1
+ jr .asm_11b16c
+
+.asm_11b167
+ ld a, $2
+ jr .asm_11b16c
+
+.asm_11b16b
+ xor a
+
+.asm_11b16c
+ ld [wcd30], a
+ ld a, $4
+ ld [wcf63], a
+ ret
+; 11b175
+
+Function11b175: ; 11b175
+ ld a, [wc7d3]
+ ld d, a
+ ld a, [wc7d2]
+ ld e, a
+ ld hl, $ffa9
+ ld a, [hl]
+ and $40
+ jr nz, .asm_11b19a
+ ld a, [hl]
+ and $80
+ jr nz, .asm_11b1ae
+ ld a, d
+ cp e
+ jr nc, .asm_11b1ed
+ ld a, [hl]
+ and $20
+ jr nz, .asm_11b1c6
+ ld a, [hl]
+ and $10
+ jr nz, .asm_11b1d8
+ jr .asm_11b1ed
+
+.asm_11b19a
+ ld hl, wc7d1
+ ld a, [hl]
+ and a
+ jr z, .asm_11b1a4
+ dec [hl]
+ jr .asm_11b1ef
+
+.asm_11b1a4
+ ld hl, wc7d0
+ ld a, [hl]
+ and a
+ jr z, .asm_11b1ed
+ dec [hl]
+ jr .asm_11b1ef
+
+.asm_11b1ae
+ ld hl, wc7d1
+ ld a, [hl]
+ inc a
+ cp e
+ jr nc, .asm_11b1ed
+ cp d
+ jr nc, .asm_11b1bc
+ inc [hl]
+ jr .asm_11b1ef
+
+.asm_11b1bc
+ ld hl, wc7d0
+ add [hl]
+ cp e
+ jr nc, .asm_11b1ed
+ inc [hl]
+ jr .asm_11b1ef
+
+.asm_11b1c6
+ ld hl, wc7d0
+ ld a, [hl]
+ and a
+ jr z, .asm_11b1ed
+ cp d
+ jr nc, .asm_11b1d4
+ xor a
+ ld [hl], a
+ jr .asm_11b1ef
+
+.asm_11b1d4
+ sub d
+ ld [hl], a
+ jr .asm_11b1ef
+
+.asm_11b1d8
+ ld hl, wc7d0
+ ld a, d
+ add a
+ add [hl]
+ jr c, .asm_11b1e3
+ cp e
+ jr c, .asm_11b1e8
+
+.asm_11b1e3
+ ld a, e
+ sub d
+ ld [hl], a
+ jr .asm_11b1ef
+
+.asm_11b1e8
+ ld a, [hl]
+ add d
+ ld [hl], a
+ jr .asm_11b1ef
+
+.asm_11b1ed
+ and a
+ ret
+
+.asm_11b1ef
+ call Function11b295
+ call Function11b275
+ scf
+ ret
+; 11b1f7
+
+Function11b1f7: ; 11b1f7
+ ld hl, TileMap
+ ld a, $32
+ ld bc, $0168
+ call ByteFill
+ ret
+; 11b203
+
+Function11b203: ; 11b203
+.asm_11b203
+ ld a, [de]
+ cp $ff
+ ret z
+ inc de
+ ld [hli], a
+ jr .asm_11b203
+; 11b20b
+
+Function11b20b: ; 11b20b
+ ld a, [wc7d1]
+ ld hl, wc7d0
+ add [hl]
+ ld e, a
+ ld d, $0
+ ld hl, $c6d0
+ add hl, de
+ ld a, [hl]
+ ld [wd265], a
+ ret
+; 11b21e
+
+Function11b21e: ; 11b21e
+ push de
+ push hl
+ ld a, [wd265]
+ dec a
+ call CheckCaughtMon
+ pop hl
+ pop de
+ ret
+; 11b22a
+
+Function11b22a: ; 11b22a
+ push de
+ push hl
+ ld a, [wd265]
+ dec a
+ call CheckSeenMon
+ pop hl
+ pop de
+ ret
+; 11b236
+
+Function11b236: ; 11b236
+ jp Functionfb8
+; 11b239
+
+Function11b239: ; 11b239
+ ld e, a
+ ld d, 0
+ add hl, de
+ add hl, de
+ ld a, [hli]
+ ld h, [hl]
+ ld l, a
+ ret
+; 11b242
+
+Function11b242: ; 11b242
+ hlcoord 3, 4
+ ld de, StringBuffer3
+ call PlaceString
+ xor a
+ ld [MonType], a
+ callba GetGender
+ hlcoord 1, 4
+ ld a, [CurPartySpecies]
+ ld bc, wcd2f
+ ld [bc], a
+ dec bc
+ jr c, asm_11b26a
+ jr z, asm_11b26f
+ ld a, $1
+ ld [bc], a
+
+Function11b267:
+ ld [hl], $ef
+ ret
+
+asm_11b26a
+ xor a
+ ld [bc], a
+ ld [hl], $7f
+ ret
+
+asm_11b26f
+ ld a, $2
+ ld [bc], a
+
+Function11b272:
+ ld [hl], $f5
+ ret
+; 11b275
+
+Function11b275: ; 11b275
+ call Function11b279
+ ret
+; 11b279
+
+Function11b279: ; 11b279
+ ld a, [wd265]
+ ld [CurSpecies], a
+ call Function11b22a
+ jr z, .asm_11b28f
+ call GetBaseData
+ ld a, [BaseGender]
+ ld [wcf65], a
+ jr .asm_11b294
+
+.asm_11b28f
+ ld a, $ff
+ ld [wcf65], a
+
+.asm_11b294
+ ret
+; 11b295
+
+Function11b295: ; 11b295
+ hlcoord 4, 13
+ ld de, String_11b308
+ call PlaceString
+ hlcoord 4, 14
+ ld de, String_11b308
+ call PlaceString
+ call Function11b20b
+ call Function11b22a
+ jr z, .asm_11b2d1
+ ld a, [$c608]
+ ld c, a
+ ld a, [$c608 + 1]
+ ld b, a
+ ld hl, $0007
+ add hl, bc
+ xor a
+ ld [hl], a
+ ld hl, $0003
+ add hl, bc
+ ld e, [hl]
+ callba Function8e9bc
+ hlcoord 4, 14
+ push hl
+ call GetPokemonName
+ jr .asm_11b2e7
+
+.asm_11b2d1
+ ld a, [$c608]
+ ld c, a
+ ld a, [$c608 + 1]
+ ld b, a
+ ld hl, $0007
+ add hl, bc
+ ld a, $50
+ ld [hl], a
+ hlcoord 4, 13
+ push hl
+ ld de, String_11b30e
+
+.asm_11b2e7
+ ld a, $6
+ ld bc, StringBuffer4
+.asm_11b2ec
+ push af
+ ld a, [de]
+ ld [bc], a
+ inc de
+ inc bc
+ pop af
+ dec a
+ and a
+ jr nz, .asm_11b2ec
+ pop hl
+ ld de, StringBuffer4
+ call PlaceString
+ ret
+; 11b2fe
+
+String_11b2fe: ; 11b2fe
+ db "あげる#@"
+; 11b303
+
+String_11b303: ; 11b303
+ db "ほしい#@"
+; 11b308
+
+String_11b308: ; 11b308
+ db " @"
+; 11b30e
+
+String_11b30e: ; 11b30e
+ db "みはっけん@"
+; 11b314
+
+Function11b314: ; 11b314
+ call Function11b31b
+ call Function11b3d9
+ ret
+; 11b31b
+
+Function11b31b: ; 11b31b
+ ld hl, Unknown_11b350
+ ld a, [wcf63]
+ cp $2
+ jr c, .asm_11b349
+ ld a, [wc7d1]
+ cp $4
+ jr nc, .asm_11b344
+ cp $3
+ jr c, .asm_11b349
+ ld a, [wcf63]
+ cp $2
+ jr z, .asm_11b349
+ cp $3
+ jr z, .asm_11b349
+ cp $6
+ jr z, .asm_11b349
+
+ ld bc, Unknown_11b37b
+ jr .asm_11b34c
+
+.asm_11b344
+ ld bc, Unknown_11b389
+ jr .asm_11b34c
+
+.asm_11b349
+ ld bc, Unknown_11b36d
+
+.asm_11b34c
+ call Function11b397
+ ret
+; 11b350
+
+Unknown_11b350:
+INCBIN "baserom.gbc",$11b350,$11b36d - $11b350
+
+Unknown_11b36d:
+INCBIN "baserom.gbc",$11b36d,$11b37b - $11b36d
+Unknown_11b37b:
+INCBIN "baserom.gbc",$11b37b,$11b389 - $11b37b
+Unknown_11b389:
+INCBIN "baserom.gbc",$11b389,$11b397 - $11b389
+
+Function11b397: ; 11b397
+ ld de, Sprites
+.asm_11b39a
+ ld a, [hl]
+ cp $ff
+ ret z
+ ld a, [wc7d1]
+ and $7
+ swap a
+ add [hl]
+ inc hl
+ ld [de], a
+ inc de
+ ld a, [hli]
+ ld [de], a
+ inc de
+ ld a, [bc]
+ inc bc
+ ld [de], a
+ inc de
+ ld a, $5
+ ld [de], a
+ inc de
+ jr .asm_11b39a
+; 11b3b6
+
+Function11b3b6: ; 11b3b6
+.asm_11b3b6
+ ld a, [hl]
+ cp $ff
+ ret z
+ ld a, [wcd4d]
+ and $7
+ swap a
+ add [hl]
+ inc hl
+ ld [de], a
+ inc de
+ ld a, [hli]
+ ld [de], a
+ inc de
+ push hl
+ ld l, c
+ ld h, b
+ ld a, [wcd4e]
+ add [hl]
+ inc bc
+ ld [de], a
+ inc de
+ pop hl
+ ld a, $5
+ ld [de], a
+ inc de
+ jr .asm_11b3b6
+; 11b3d9
+
+Function11b3d9: ; 11b3d9
+ ld de, Sprites + $70
+ push de
+ ld a, [wc7d2]
+ dec a
+ ld e, a
+ ld a, [wc7d1]
+ ld hl, wc7d0
+ add [hl]
+ cp e
+ jr z, .asm_11b40d
+ ld hl, $0000
+ ld bc, $0070
+ call AddNTimes
+ ld e, l
+ ld d, h
+ ld b, $0
+ ld a, d
+ or e
+ jr z, .asm_11b40f
+ ld a, [wc7d2]
+ ld c, a
+.asm_11b401
+ ld a, e
+ sub c
+ ld e, a
+ ld a, d
+ sbc $0
+ ld d, a
+ jr c, .asm_11b40f
+ inc b
+ jr .asm_11b401
+
+.asm_11b40d
+ ld b, $70
+
+.asm_11b40f
+ ld a, $15
+ add b
+ pop hl
+ ld [hli], a
+ cp $41
+ jr c, .asm_11b42b
+ ld a, [wcf63]
+ cp $4
+ jr z, .asm_11b43b
+ cp $5
+ jr z, .asm_11b43b
+ cp $7
+ jr z, .asm_11b43b
+ cp $8
+ jr z, .asm_11b43b
+
+.asm_11b42b
+ ld a, $9b
+ ld [hli], a
+ ld a, [wcd4c]
+ add $3c
+ ld [hli], a
+ ld a, [wcd4c]
+ add $1
+ ld [hl], a
+ ret
+
+.asm_11b43b
+ ld a, $9b
+ ld [hli], a
+ ld a, $39
+ ld [hli], a
+ xor a
+ ld [hl], a
+ ret
+; 11b444
+
+Function11b444: ; 11b444
+ call Function11b44b
+ call Function11b45c
+ ret
+; 11b44b
+
+Function11b44b: ; 11b44b
+ xor a
+ ld [wcf63], a
+ ld [wcf64], a
+ ld [wcf65], a
+ ld [wcf66], a
+ call UpdateTime
+ ret
+; 11b45c
+
+Function11b45c: ; 11b45c
+.asm_11b45c
+ call Function11b46a
+ call DelayFrame
+ ld a, [wcf63]
+ cp $4
+ jr nz, .asm_11b45c
+ ret
+; 11b46a
+
+Function11b46a: ; 11b46a
+ ld a, [wcf63]
+ ld e, a
+ ld d, 0
+ ld hl, Jumptable_11b479
+ add hl, de
+ add hl, de
+ ld a, [hli]
+ ld h, [hl]
+ ld l, a
+ jp [hl]
+; 11b479
+
+Jumptable_11b479: ; 11b479
+ dw Function11b483
+ dw Function11b570
+ dw Function11b5c0
+ dw Function11b5e0
+ dw Function11b5e7
+; 11b483
+
+Function11b483: ; 11b483
+ call Function11b538
+ ld hl, PlayerName
+ ld a, $5
+.asm_11b48b
+ push af
+ ld a, [hli]
+ ld [bc], a
+ inc bc
+ pop af
+ dec a
+ and a
+ jr nz, .asm_11b48b
+ ld de, $0030
+ ld hl, PartyMon1Species
+ ld a, [wcd82]
+ dec a
+ push af
+.asm_11b49f
+ and a
+ jr z, .asm_11b4a6
+ add hl, de
+ dec a
+ jr .asm_11b49f
+
+.asm_11b4a6
+ push bc
+ ld a, $30
+.asm_11b4a9
+ push af
+ ld a, [hli]
+ ld [bc], a
+ inc bc
+ pop af
+ dec a
+ and a
+ jr nz, .asm_11b4a9
+ pop de
+ push bc
+ ld a, [de]
+ ld [CurSpecies], a
+ call GetBaseData
+ ld hl, $001f
+ add hl, de
+ ld a, [hl]
+ ld [CurPartyLevel], a
+ ld hl, $0024
+ add hl, de
+ push hl
+ ld hl, $000a
+ add hl, de
+ pop de
+ push de
+ ld b, $1
+ predef Functione167
+ pop de
+ ld h, d
+ ld l, e
+ dec hl
+ dec hl
+ ld a, [de]
+ ld [hli], a
+ inc de
+ ld a, [de]
+ ld [hl], a
+ pop bc
+ ld de, $000b
+ ld hl, PartyMonOT
+ pop af
+ push af
+.asm_11b4e8
+ and a
+ jr z, .asm_11b4ef
+ add hl, de
+ dec a
+ jr .asm_11b4e8
+
+.asm_11b4ef
+ ld a, $a
+.asm_11b4f1
+ push af
+ ld a, [hli]
+ ld [bc], a
+ inc bc
+ pop af
+ dec a
+ and a
+ jr nz, .asm_11b4f1
+ ld de, $000b
+ ld hl, PartyMonNicknames
+ pop af
+ push af
+.asm_11b502
+ and a
+ jr z, .asm_11b509
+ add hl, de
+ dec a
+ jr .asm_11b502
+
+.asm_11b509
+ ld a, $a
+.asm_11b50b
+ push af
+ ld a, [hli]
+ ld [bc], a
+ inc bc
+ pop af
+ dec a
+ and a
+ jr nz, .asm_11b50b
+ ld de, $002f
+ ld hl, $a600
+ pop af
+.asm_11b51b
+ and a
+ jr z, .asm_11b522
+ add hl, de
+ dec a
+ jr .asm_11b51b
+
+.asm_11b522
+ ld a, $0
+ call GetSRAMBank
+ ld a, $2f
+.asm_11b529
+ push af
+ ld a, [hli]
+ ld [bc], a
+ inc bc
+ pop af
+ dec a
+ and a
+ jr nz, .asm_11b529
+ call CloseSRAM
+ jp Function11ad8a
+; 11b538
+
+Function11b538: ; 11b538
+ ld bc, BattleMonNick + 5
+ ld a, [PlayerID]
+ ld [wcd2a], a
+ ld [bc], a
+ inc bc
+ ld a, [PlayerID + 1]
+ ld [wcd2b], a
+ ld [bc], a
+ inc bc
+ ld a, [wd84a]
+ ld [wcd2c], a
+ ld [bc], a
+ inc bc
+ ld a, [wd84b]
+ ld [wcd2d], a
+ ld [bc], a
+ inc bc
+ ld a, [wcd2e]
+ ld [bc], a
+ inc bc
+ ld a, [wcd2f]
+ ld [bc], a
+ inc bc
+ ld a, [wcd30]
+ ld [bc], a
+ inc bc
+ ld a, [wd265]
+ ld [bc], a
+ inc bc
+ ret
+; 11b570
+
+Function11b570: ; 11b570
+ call Function118007
+ ld a, [ScriptVar]
+ and a
+ jr nz, .asm_11b57f
+ call Function11b585
+ jp Function11ad8a
+
+.asm_11b57f
+ ld a, $4
+ ld [wcf63], a
+ ret
+; 11b585
+
+Function11b585: ; 11b585
+ ld a, $3
+ ld [rSVBK], a
+ ld hl, $d800
+ ld de, $c608
+ ld bc, $008f
+ call CopyBytes
+ ld a, $1
+ ld [rSVBK], a
+ ld a, $5
+ call GetSRAMBank
+ ld de, $a800
+ ld a, $1
+ ld [de], a
+ inc de
+ ld hl, $c608
+ ld bc, $008f
+ call CopyBytes
+ push de
+ pop hl
+ ld a, [hRTCMinutes]
+ ld [hli], a
+ ld a, [hRTCHours]
+ ld [hli], a
+ ld a, [hRTCDayLo]
+ ld [hli], a
+ ld a, [hRTCDayHi]
+ ld [hl], a
+ call CloseSRAM
+ ret
+; 11b5c0
+
+Function11b5c0: ; 11b5c0
+ ld a, [wcd82]
+ dec a
+ ld [CurPartyMon], a
+ xor a
+ ld [wd10b], a
+ callba Functione039
+ callba Function170807
+ callba Function14a58
+ jp Function11ad8a
+; 11b5e0
+
+Function11b5e0: ; 11b5e0
+ xor a
+ ld [ScriptVar], a
+ jp Function11ad8a
+; 11b5e7
+
+Function11b5e7: ; 11b5e7
+ ret
+; 11b5e8
+
+Function11b5e8: ; 11b5e8
+ 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, $c608
+ ld de, $b08c
+ ld bc, $0004
+ call CopyBytes
+ ld a, $2
+ ld [$a800], a
+ ld a, [$a81f]
+ ld [wcd2a], a
+ ld a, [$a820]
+ ld [wcd2b], a
+ ld a, [$a821]
+ ld [wcd2c], a
+ ld a, [$a822]
+ ld [wcd2d], a
+ ld a, [$a823]
+ ld [wcd2e], a
+ ld a, [$a824]
+ ld [wcd2f], a
+ ld a, [$a825]
+ ld [wcd30], a
+ ld a, [$a826]
+ ld [wcd31], a
+ call CloseSRAM
+ call Function11b44b
+ call Function11b64c
+ ret
+; 11b64c
+
+Function11b64c: ; 11b64c
+.asm_11b64c
+ call Function11b65a
+ call DelayFrame
+ ld a, [wcf63]
+ cp $1
+ jr nz, .asm_11b64c
+ ret
+; 11b65a
+
+Function11b65a: ; 11b65a
+ ld a, [wcf63]
+ ld e, a
+ ld d, 0
+ ld hl, Jumptable_11b669
+ add hl, de
+ add hl, de
+ ld a, [hli]
+ ld h, [hl]
+ ld l, a
+ jp [hl]
+; 11b669
+
+Jumptable_11b669: ; 11b669
+ dw Function11b66d
+ dw Function11b6b3
+; 11b66d
+
+Function11b66d: ; 11b66d
+ call Function1180b8
+ ld a, [ScriptVar]
+ and a
+ jr nz, .asm_11b6b0
+ ld a, [rSVBK]
+ push af
+ ld a, $3
+ ld [rSVBK], a
+ ld a, [StringBuffer2 + 10]
+ ld b, a
+ pop af
+ ld [rSVBK], a
+ ld a, b
+ and a
+ jr z, .asm_11b691
+ cp $1
+ jr nz, .asm_11b6b0
+ call Function11b6b4
+ jr .asm_11b6b0
+
+.asm_11b691
+ callba Function17081d
+ ld a, [ScriptVar]
+ and a
+ jr z, .asm_11b6b0
+ xor a
+ ld [ScriptVar], a
+ ld a, [rSVBK]
+ push af
+ ld a, $3
+ ld [rSVBK], a
+ ld a, $2
+ ld [StringBuffer2 + 10], a
+ pop af
+ ld [rSVBK], a
+
+.asm_11b6b0
+ jp Function11ad8a
+; 11b6b3
+
+Function11b6b3: ; 11b6b3
+ ret
+; 11b6b4
+
+Function11b6b4: ; 11b6b4
+ ld a, $5
+ call GetSRAMBank
+ ld a, [wcd30]
+ ld [wc708], a
+ ld a, [wcd31]
+ ld [wc709], a
+ ld a, $8
+ ld [BGMapBuffer], a
+ ld a, $c7
+ ld [wcd21], a
+ ld a, $d
+ ld [CreditsTimer], a
+ ld a, $c6
+ ld [wcd23], a
+ ld a, $3d
+ ld [wcd24], a
+ ld a, $c6
+ ld [wcd25], a
+ ld a, $42
+ ld [wcd26], a
+ ld a, $c6
+ ld [wcd27], a
+ ld a, $47
+ ld [wcd28], a
+ ld a, $c6
+ ld [wcd29], a
+ ld a, $46
+ ld [$c628], a
+ ld de, $c63d
+ ld c, $5
+ callba Function17d073
+ jr nc, .asm_11b70f
+ callba Function17d187
+
+.asm_11b70f
+ ld de, $c63d
+ ld bc, $0105
+ callba Function17d1e1
+ jr nc, .asm_11b723
+ callba Function17d187
+
+.asm_11b723
+ ld de, $c642
+ ld c, $5
+ callba Function17d073
+ jr nc, .asm_11b736
+ callba Function17d199
+
+.asm_11b736
+ ld de, $c642
+ ld bc, $0105
+ callba Function17d1e1
+ jr nc, .asm_11b74a
+ callba Function17d199
+
+.asm_11b74a
+ ld de, $c647
+ ld c, $21
+ callba Function17d073
+ jr nc, .asm_11b75d
+ callba Function17d1ab
+
+.asm_11b75d
+ ld de, $c647
+ ld bc, $0221
+ callba Function17d1e1
+ jr c, .asm_11b770
+ ld a, b
+ cp $2
+ jr nz, .asm_11b776
+
+.asm_11b770
+ callba Function17d1ab
+
+.asm_11b776
+ ld de, $c668
+ ld c, $5
+ callba Function17d073
+ jr nc, .asm_11b789
+ callba Function17d1c9
+
+.asm_11b789
+ ld de, $c668
+ ld bc, $0105
+ callba Function17d1e1
+ jr nc, .asm_11b79d
+ callba Function17d1c9
+
+.asm_11b79d
+ ld a, [$c608 + 6]
+ cp $ff
+ jr nz, .asm_11b7a8
+ xor a
+ ld [$c608 + 6], a
+
+.asm_11b7a8
+ ld a, [wcd31]
+ ld [$c608 + 5], a
+ ld [CurSpecies], a
+ call GetBaseData
+
+ ld hl, $c62c
+ ld a, [hl]
+ cp MIN_LEVEL
+ ld a, MIN_LEVEL
+ jr c, .asm_11b7c5
+ ld a, [hl]
+ cp MAX_LEVEL
+ jr c, .asm_11b7c6
+ ld a, MAX_LEVEL
+.asm_11b7c5
+ ld [hl], a
+.asm_11b7c6
+ ld [CurPartyLevel], a
+
+ ld hl, $c616 + 1
+ ld de, $c62c + 5
+ ld b, $1
+ predef Functione167
+ ld de, $c62c + 5
+ ld hl, $c62c + 3
+ ld a, [de]
+ ld [hli], a
+ inc de
+ ld a, [de]
+ ld [hl], a
+ call Function11b98f
+ ret
+; 11b7e5
+
+Function11b7e5: ; 11b7e5
+ ld a, [$c608 + 5]
+ ld [wc702], a
+ ld [CurPartySpecies], a
+ ld a, [wcd81]
+ ld [wc74e], a
+ ld hl, $c63d
+ ld de, wc724
+ ld bc, $0005
+ call CopyBytes
+ ld a, $50
+ ld [de], a
+ ld a, [$c608 + 11]
+ ld [wc731], a
+ ld a, [$c608 + 12]
+ ld [wc732], a
+ ld hl, $c608 + 26
+ ld a, [hli]
+ ld [wc72f], a
+ ld a, [hl]
+ ld [wc730], a
+ ld bc, $c608 + 5
+ callba GetCaughtGender
+ ld a, c
+ ld [wc733], a
+ call SpeechTextBox
+ call FadeToMenu
+ callba Function108016
+ callba Function17d1f1
+ ld a, $1
+ ld [wd1e9], a
+ ld a, $2
+ ld [InLinkBattle], a
+ callba Function421d8
+ xor a
+ ld [InLinkBattle], a
+ callba Function14a58
+ ld a, $5
+ call GetSRAMBank
+ ld a, $5
+ ld [$a800], a
+ call CloseSRAM
+ ld a, [MapGroup]
+ ld b, a
+ ld a, [MapNumber]
+ ld c, a
+ call GetMapTrigger
+ ld a, d
+ or e
+ jr z, .asm_11b872
+ ld a, $1
+ ld [de], a
+
+.asm_11b872
+ call Function2b3c
+ call RestartMapMusic
+ ret
+; 11b879
+
+Function11b879: ; 11b879
+ callba Function17089a
+ ld a, [ScriptVar]
+ and a
+ ret z
+ ld a, $5
+ call GetSRAMBank
+ ld a, [$a800]
+ ld [ScriptVar], a
+ ld a, [$a890]
+ ld [wcd49], a
+ ld a, [$a891]
+ ld [wcd4a], a
+ ld a, [$a892]
+ ld [wcd4b], a
+ ld a, [$a893]
+ ld [wcd4c], a
+ call CloseSRAM
+ ld a, [ScriptVar]
+ and a
+ ret z
+ ld hl, wcd4c
+ ld a, [hRTCDayHi]
+ cp [hl]
+ ret nz
+ dec hl
+ ld a, [hRTCDayLo]
+ cp [hl]
+ ret nz
+ ld hl, wcd4a
+ ld a, [hRTCHours]
+ cp [hl]
+ jr nc, .asm_11b8d8
+ ld a, $18
+ sub [hl]
+ ld hl, hRTCHours
+ add [hl]
+ ld [wcd4c], a
+ ld a, [hRTCMinutes]
+ ld [wcd4b], a
+ xor a
+ ld [wcd4a], a
+ jr .asm_11b8e2
+
+.asm_11b8d8
+ ld a, [hRTCMinutes]
+ ld [wcd4b], a
+ ld a, [hRTCHours]
+ ld [wcd4c], a
+
+.asm_11b8e2
+ xor a
+ ld l, a
+ ld h, a
+ ld b, a
+ ld d, a
+ ld a, [wcd4b]
+ ld e, a
+ ld a, [wcd4c]
+ ld c, $3c
+ call AddNTimes
+ add hl, de
+ push hl
+ xor a
+ ld l, a
+ ld h, a
+ ld b, a
+ ld d, a
+ ld a, [wcd49]
+ ld e, a
+ ld a, [wcd4a]
+ ld c, $3c
+ call AddNTimes
+ add hl, de
+ ld a, l
+ cpl
+ add $1
+ ld e, a
+ ld a, h
+ cpl
+ adc $0
+ ld d, a
+ pop hl
+ add hl, de
+ ld de, $ff88
+ add hl, de
+ bit 7, h
+ ret z
+ ld a, $2
+ ld [ScriptVar], a
+ ret
+; 11b920
+
+Function11b920: ; 11b920
+ call Function11b44b
+ ld a, $5
+ call GetSRAMBank
+ ld hl, $a81f
+ ld de, BattleMonNick + 5
+ ld bc, $0008
+ call CopyBytes
+ call CloseSRAM
+ call Function118000
+ ret
+; 11b93b
+
+Function11b93b: ; 11b93b
+ ld a, $5
+ call GetSRAMBank
+ xor a
+ ld [$a800], a
+ ld hl, $a823
+ ld de, $c608
+ ld bc, $008f
+ call CopyBytes
+ call CloseSRAM
+ ld a, $8
+ ld [BGMapBuffer], a
+ ld a, $c6
+ ld [wcd21], a
+ ld a, $11
+ ld [CreditsTimer], a
+ ld a, $c6
+ ld [wcd23], a
+ ld a, $41
+ ld [wcd24], a
+ ld a, $c6
+ ld [wcd25], a
+ ld a, $46
+ ld [wcd26], a
+ ld a, $c6
+ ld [wcd27], a
+ ld a, $4b
+ ld [wcd28], a
+ ld a, $c6
+ ld [wcd29], a
+ call Function11b98f
+ callba Function14a58
+ ret
+; 11b98f
+
+Function11b98f: ; 11b98f
+ ld hl, PartyCount
+ ld a, [hl]
+ ld e, a
+ inc [hl]
+ ld a, [BGMapBuffer]
+ ld l, a
+ ld a, [wcd21]
+ ld h, a
+ inc hl
+ ld bc, PartySpecies
+ ld d, e
+.asm_11b9a2
+ inc bc
+ dec d
+ jr nz, .asm_11b9a2
+ ld a, e
+ ld [CurPartyMon], a
+ ld a, [hl]
+ ld [bc], a
+ inc bc
+ ld a, $ff
+ ld [bc], a
+ ld hl, PartyMon1Species
+ ld bc, PartyMon2 - PartyMon1
+ ld a, e
+ ld [wcd2a], a
+.asm_11b9ba
+ add hl, bc
+ dec a
+ and a
+ jr nz, .asm_11b9ba
+ ld e, l
+ ld d, h
+ ld a, [CreditsTimer]
+ ld l, a
+ ld a, [wcd23]
+ ld h, a
+ ld bc, PartyMon2 - PartyMon1
+ call CopyBytes
+ ld hl, PartyMonOT
+ ld bc, $000b
+ ld a, [wcd2a]
+.asm_11b9d8
+ add hl, bc
+ dec a
+ and a
+ jr nz, .asm_11b9d8
+ ld e, l
+ ld d, h
+ ld a, [wcd24]
+ ld l, a
+ ld a, [wcd25]
+ ld h, a
+ ld bc, $000a
+ call CopyBytes
+ ld a, $50
+ ld [de], a
+ ld hl, PartyMonNicknames
+ ld bc, $000b
+ ld a, [wcd2a]
+.asm_11b9f9
+ add hl, bc
+ dec a
+ and a
+ jr nz, .asm_11b9f9
+ ld e, l
+ ld d, h
+ ld a, [wcd26]
+ ld l, a
+ ld a, [wcd27]
+ ld h, a
+ ld bc, $000a
+ call CopyBytes
+ ld a, $50
+ ld [de], a
+ ld hl, $a600
+ ld bc, $002f
+ ld a, [wcd2a]
+.asm_11ba1a
+ add hl, bc
+ dec a
+ and a
+ jr nz, .asm_11ba1a
+ ld a, $0
+ call GetSRAMBank
+ ld e, l
+ ld d, h
+ ld a, [wcd28]
+ ld l, a
+ ld a, [wcd29]
+ ld h, a
+ ld bc, $002f
+ call CopyBytes
+ call CloseSRAM
+ ret
+; 11ba38
+
+Function11ba38: ; 11ba38
+ callba Functione538
+ ret c
+ xor a
+ ld [ScriptVar], a
+ ret
+; 11ba44
+
+Unknown_11ba44:
+INCBIN "baserom.gbc",$11ba44,$11bb7d - $11ba44
+
+Unknown_11bb7d:
+INCBIN "baserom.gbc",$11bb7d,$11bc9e - $11bb7d
+
+
+SECTION "bank47", ROMX, BANK[$47]
+
+Function11c000:: ; 11c000
+ ld a, [rSVBK]
+ push af
+ ld a, $3
+ ld [rSVBK], a
+ ld hl, wd105
+ ld a, [hl]
+ dec a
+ ld e, a
+ ld d, 0
+ ld hl, Unknown_11f2f0
+ add hl, de
+ ld a, [hl]
+ and a
+ jr nz, .asm_11c026
+ ld a, [hRandomAdd]
+ and $1f
+ cp $19
+ jr c, .asm_11c021
+ sub $19
+
+.asm_11c021
+ ld hl, Unknown_11f332
+ jr .asm_11c033
+
+.asm_11c026
+ ld a, [hRandomAdd]
+ and $f
+ cp $f
+ jr c, .asm_11c030
+ sub $f
+
+.asm_11c030
+ ld hl, Unknown_11f3ce
+
+.asm_11c033
+ ld b, 0
+ dec c
+ jr nz, .asm_11c03d
+ ld [wd000 + $200], a
+ jr .asm_11c040
+
+.asm_11c03d
+ ld a, [wd000 + $200]
+
+.asm_11c040
+ push af
+ add hl, bc
+ add hl, bc
+ ld a, [hli]
+ ld c, a
+ ld a, [hl]
+ ld h, a
+ ld l, c
+ pop af
+ ld c, a
+ ld b, 0
+ add hl, bc
+ add hl, bc
+ ld a, [hli]
+ ld c, a
+ ld a, [hl]
+ ld l, c
+ ld h, a
+ bccoord 1, 14
+ pop af
+ ld [rSVBK], a
+ call Function13e5
+ 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, [wcf63]
+ 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 [wcf63], 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, [wcf63]
+ inc a
+ ld [wcf63], 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 Function13e5
+ pop hl
+ ld a, l
+ ld [wcf63], 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, [$ffaa]
+ push af
+ ld a, $1
+ ld [$ffaa], a
+ call Function11c1b9
+ pop af
+ ld [$ffaa], 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 [wcf63], 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, [wcfa9]
+ dec a
+ call Function11c254
+ call WhiteBGMap
+ call ClearSprites
+ call ClearScreen
+ call Function11d323
+ call Function32f9
+ 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 Function1500c
+ 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 Functiona57
+ ld a, [hJoyPressed]
+ ld [hJoypadPressed], a
+ ld a, [wcf63]
+ 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, [wcf63]
+ ld e, a
+ ld d, 0
+ ld hl, Jumptable_11c2bb
+ add hl, de
+ add hl, de
+ 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
+ inc [hl]
+ inc [hl]
+ dec hl
+ dec hl
+ dec [hl]
+ push af
+ ld de, wcd2d
+ call Function11cfce
+ pop af
+ ret nz
+ jp Function11cfb5
+
+Function11c373: ; 11c373 (47:4373)
+ ld hl, wcd30
+ inc [hl]
+ inc [hl]
+ dec hl
+ dec hl
+ 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, $ffa9
+ 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 [wcf63], 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, $ffa9
+
+ 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 [wcf63], 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, $ffa9
+ 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 [wcf63], 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
+ add hl, bc
+ add hl, bc
+ 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
+ add hl, de
+ add hl, de
+ 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
+ add hl, de
+ add hl, de
+ 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
+ add hl, bc
+ add hl, bc
+ 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
+ add hl, de
+ add hl, de
+ 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
+ add hl, de
+ add hl, de
+ ld a, [wcd25]
+ ld e, a
+ add hl, de
+ add hl, de
+ 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 [wcf63], 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
+ add hl, bc
+ add hl, bc
+ 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, wcf63
+ set 7, [hl]
+ ret
+.asm_11caf9
+ call PlayClickSFX
+.asm_11cafc
+ ld hl, wcd24
+ set 4, [hl]
+ ld a, $4
+ ld [wcf63], 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, [wcfa9]
+.asm_11cb58
+ dec a
+ jr z, .asm_11cb5f
+ inc hl
+ inc hl
+ 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, [wcfa9]
+ 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, [wcfa9]
+.asm_11cbba
+ dec a
+ jr z, .asm_11cbc1
+ inc hl
+ inc hl
+ jr .asm_11cbba
+.asm_11cbc1
+ ld a, [hli]
+ ld e, a
+ ld a, [hl]
+ ld d, a
+ hlcoord 1, 14
+ call PlaceString
+ ld hl, wcf63
+ 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 [wcf63], 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 [wcf63], 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 [wcf63], 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, $ffa9
+ 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 [wcf63], 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, wcf63
+ 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)
+ ld hl, TileMap
+ 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
+ dec a
+ dec a
+ 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
+ dec a
+ dec a
+ jr z, .asm_11d022
+ ld b, a
+.asm_11d005
+ push hl
+ ld a, $7c
+ ld [hli], a
+ ld a, [de]
+ dec a
+ dec a
+ 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]
+ dec a
+ dec a
+ 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)
+ ld hl, TileMap
+ 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
+ dec a
+ dec a
+.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
+ dec a
+ dec a
+ 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
+ add hl, de
+ add hl, de
+ 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
+INCBIN "baserom.gbc",$11d208,$11d21a - $11d208
+Unknown_11d21a: ; 11d21a
+INCBIN "baserom.gbc",$11d21a,$11d23e - $11d21a
+Unknown_11d23e: ; 11d23e
+INCBIN "baserom.gbc",$11d23e,$11d29e - $11d23e
+Unknown_11d29e: ; 11d29e
+INCBIN "baserom.gbc",$11d29e,$11d2b6 - $11d29e
+Unknown_11d2b6: ; 11d2b6
+INCBIN "baserom.gbc",$11d2b6,$11d2ba - $11d2b6
+Unknown_11d2ba: ; 11d2ba
+INCBIN "baserom.gbc",$11d2ba,$11d2be - $11d2ba
+Unknown_11d2be: ; 11d2be
+INCBIN "baserom.gbc",$11d2be,$11d2ee - $11d2be
+
+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, Unkn1Pals
+ ld bc, $0080
+ 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, Unkn1Pals
+ 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]
+ inc bc
+ inc bc
+ 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:
+INCBIN "baserom.gbc",$11f220,$11f23c - $11f220
+
+Unknown_11f23c:
+INCBIN "baserom.gbc",$11f23c,$11f2f0 - $11f23c
+
+Unknown_11f2f0:
+INCBIN "baserom.gbc",$11f2f0,$11f332 - $11f2f0
+
+Unknown_11f332:
+INCBIN "baserom.gbc",$11f332,$11f3ce - $11f332
+
+Unknown_11f3ce:
+INCBIN "baserom.gbc",$11f3ce,$11f686 - $11f3ce
+
+
+
+SECTION "bank5B", ROMX, BANK[$5B]
+
+Function16c000: ; 16c000
+ ld a, [hCGB]
+ and a
+ ret z
+ ld a, [$ffea]
+ and a
+ ret z
+ ld a, [wcfbe]
+ push af
+ set 7, a
+ ld [wcfbe], a
+ call Function16c108
+ callba Function100063
+ callba Function100082
+ call Function16c031
+ callba Function1000a4
+ xor a
+ ld [$ffea], a
+ pop af
+ ld [wcfbe], a
+ ret
+; 16c031
+
+Function16c031: ; 16c031
+ xor a
+ ld [wcf63], a
+ ld [wcf64], a
+ ld [DefaultFlypoint], a
+ ld [wd003], a
+.asm_16c03e
+ call DelayFrame
+ callba Function10635c
+ ld a, [DefaultFlypoint]
+ ld hl, Jumptable_16c05c
+ rst JumpTable
+ call Function16cb2e
+ call Function16cbae
+ ld a, [DefaultFlypoint]
+ cp $ff
+ jr nz, .asm_16c03e
+ ret
+; 16c05c
+
+Jumptable_16c05c: ; 16c05c
+ dw Function16c074
+ dw Function16c0ba
+ dw Function16c089
+ dw Function16c09e
+ dw Function16c0a8
+ dw Function16c0dc
+ dw Function16c0ec
+ dw Function16c0ba
+ dw Function16c0ca
+ dw Function16c0dc
+ dw Function16c0ec
+ dw Function16c081
+; 16c074
+
+Function16c074: ; 16c074
+ ld a, [wcf64]
+ and a
+ ret z
+ ld [DefaultFlypoint], a
+ xor a
+ ld [wd003], a
+ ret
+; 16c081
+
+Function16c081: ; 16c081
+ push af
+ ld a, $ff
+ ld [DefaultFlypoint], a
+ pop af
+ ret
+; 16c089
+
+Function16c089: ; 16c089
+ ld a, $1
+ ld [Buffer2], a
+ ld [wd1f1], a
+ xor a
+ ld [hWY], a
+ call Function16c0fa
+ ld a, [DefaultFlypoint]
+ ld [wcf64], a
+ ret
+; 16c09e
+
+Function16c09e: ; 16c09e
+ ld a, [wcf64]
+ cp $4
+ ret nz
+ call Function16c0fa
+ ret
+; 16c0a8
+
+Function16c0a8: ; 16c0a8
+ xor a
+ ld [Buffer2], a
+ ld [wd1f1], a
+ call ClearSprites
+ ld a, $90
+ ld [hWY], a
+ call Function16c0fa
+ ret
+; 16c0ba
+
+Function16c0ba: ; 16c0ba
+ call Function16c943
+ push af
+ ld a, [wd003]
+ inc a
+ ld [wd003], a
+ pop af
+ call c, Function16c0fa
+ ret
+; 16c0ca
+
+Function16c0ca: ; 16c0ca
+ ld a, [wd003]
+ cp $28
+ push af
+ ld a, [wd003]
+ inc a
+ ld [wd003], a
+ pop af
+ call z, Function16c0fa
+ ret
+; 16c0dc
+
+Function16c0dc: ; 16c0dc
+ call Function16ca11
+ push af
+ ld a, [wd003]
+ inc a
+ ld [wd003], a
+ pop af
+ call c, Function16c0fa
+ ret
+; 16c0ec
+
+Function16c0ec: ; 16c0ec
+ call WhiteBGMap
+ call ClearScreen
+ push af
+ ld a, $ff
+ ld [DefaultFlypoint], a
+ pop af
+ ret
+; 16c0fa
+
+Function16c0fa: ; 16c0fa
+ push af
+ ld a, [DefaultFlypoint]
+ inc a
+ ld [DefaultFlypoint], a
+ xor a
+ ld [wd003], a
+ pop af
+ ret
+; 16c108
+
+Function16c108: ; 16c108
+ call DisableLCD
+ ld hl, VTiles2
+ ld de, GFX_16c173
+ lb bc, BANK(GFX_16c173), $68
+ call Get2bpp
+ call Function16c130
+ call Function16c145
+ call Function16c15c
+ ld hl, VBGMap0
+ call Function16cc73
+ call Function16cc02
+ xor a
+ ld [hBGMapMode], a
+ call EnableLCD
+ ret
+; 16c130
+
+Function16c130: ; 16c130
+ ld de, Unkn1Pals
+ ld hl, Unknown_16c903
+ ld bc, 8
+ ld a, $5
+ call FarCopyWRAM
+ callba Function96a4
+ ret
+; 16c145
+
+Function16c145: ; 16c145
+ ld hl, TileMap
+ ld bc, 20
+ xor a
+ call ByteFill
+ ld hl, Tilemap_16c633
+ decoord 0, 1
+ ld bc, $0154
+ call CopyBytes
+ ret
+; 16c15c
+
+Function16c15c: ; 16c15c
+ ld hl, AttrMap
+ ld bc, $0014
+ xor a
+ call ByteFill
+ ld hl, Tilemap_16c79b
+ decoord 0, 1, AttrMap
+ ld bc, $0154
+ call CopyBytes
+ ret
+; 16c173
+
+GFX_16c173:
+INCBIN "gfx/unknown/16c173.2bpp"
+
+Tilemap_16c633:
+INCBIN "gfx/unknown/16c633.tilemap"
+
+Tilemap_16c79b:
+INCBIN "gfx/unknown/16c79b.tilemap"
+
+Unknown_16c903:
+ RGB 31, 31, 31
+ RGB 04, 10, 20
+ RGB 16, 19, 25
+ RGB 25, 27, 29
+ RGB 31, 31, 31
+ RGB 31, 31, 31
+ RGB 31, 31, 31
+ RGB 31, 31, 31
+ RGB 31, 31, 31
+ RGB 31, 31, 31
+ RGB 31, 31, 31
+ RGB 31, 31, 31
+ RGB 31, 31, 31
+ RGB 31, 31, 31
+ RGB 31, 31, 31
+ RGB 31, 31, 31
+ RGB 31, 31, 31
+ RGB 31, 31, 31
+ RGB 31, 31, 31
+ RGB 31, 31, 31
+ RGB 31, 31, 31
+ RGB 31, 31, 31
+ RGB 31, 31, 31
+ RGB 31, 31, 31
+ RGB 31, 31, 31
+ RGB 31, 31, 31
+ RGB 31, 31, 31
+ RGB 31, 31, 31
+ RGB 31, 31, 31
+ RGB 31, 31, 31
+ RGB 31, 31, 31
+ RGB 31, 31, 31
+; 16c943
+
+Function16c943: ; 16c943
+ ld a, [wd003]
+ and a
+ jr nz, .asm_16c95e
+ ld a, [rSVBK]
+ push af
+ ld a, $5
+ ld [rSVBK], a
+ ld a, $ff
+ ld bc, $0008
+ ld hl, Unkn1Pals
+ call ByteFill
+ pop af
+ ld [rSVBK], a
+
+.asm_16c95e
+ ld a, [rSVBK]
+ push af
+ ld a, $5
+ ld [rSVBK], a
+ ld e, $0
+ ld a, $0
+.asm_16c969
+ ld hl, Unknown_16c903
+ call Function16cab6
+ call Function16cabb
+ ld d, a
+ ld hl, Unkn1Pals
+ call Function16cab6
+ call Function16cabb
+ cp d
+ jr z, .asm_16c991
+ ld b, $1
+.asm_16c981
+ dec a
+ cp d
+ jr z, .asm_16c988
+ dec b
+ jr nz, .asm_16c981
+
+.asm_16c988
+ ld hl, Unkn1Pals
+ call Function16cab6
+ call Function16cadc
+
+.asm_16c991
+ ld hl, Unknown_16c903
+ call Function16cab6
+ call Function16cad8
+ ld d, a
+ ld hl, Unkn1Pals
+ call Function16cab6
+ call Function16cad8
+ cp d
+ jr z, .asm_16c9b9
+ ld b, $1
+.asm_16c9a9
+ dec a
+ cp d
+ jr z, .asm_16c9b0
+ dec b
+ jr nz, .asm_16c9a9
+
+.asm_16c9b0
+ ld hl, Unkn1Pals
+ call Function16cab6
+ call Function16cb08
+
+.asm_16c9b9
+ ld hl, Unknown_16c903
+ call Function16cab6
+ call Function16cac4
+ ld d, a
+ ld hl, Unkn1Pals
+ call Function16cab6
+ call Function16cac4
+ cp d
+ jr z, .asm_16c9e1
+ ld b, $1
+.asm_16c9d1
+ dec a
+ cp d
+ jr z, .asm_16c9d8
+ dec b
+ jr nz, .asm_16c9d1
+
+.asm_16c9d8
+ ld hl, Unkn1Pals
+ call Function16cab6
+ call Function16cae8
+
+.asm_16c9e1
+ inc e
+ inc e
+ ld a, e
+ cp $8
+ jr nz, .asm_16c969
+ callba Function96a4
+ call Function32f9
+ ld a, [rSVBK]
+ push af
+ ld a, $1
+ ld [rSVBK], a
+ ld a, [wd003]
+ cp $1f
+ jr z, .asm_16ca09
+ pop af
+ ld [rSVBK], a
+ ld e, $0
+ pop af
+ ld [rSVBK], a
+ and a
+ ret
+
+.asm_16ca09
+ pop af
+ ld [rSVBK], a
+ pop af
+ ld [rSVBK], a
+ scf
+ ret
+; 16ca11
+
+Function16ca11: ; 16ca11
+ ld a, [wd003]
+ and a
+ jr nz, .asm_16ca1d
+ callba Function96a4
+
+.asm_16ca1d
+ ld a, [rSVBK]
+ push af
+ ld a, $5
+ ld [rSVBK], a
+ ld e, $0
+ ld a, $0
+.asm_16ca28
+ ld hl, Unkn1Pals
+ call Function16cab6
+ call Function16cabb
+ cp $1f
+ jr z, .asm_16ca48
+ ld b, $1
+.asm_16ca37
+ inc a
+ cp $1f
+ jr z, .asm_16ca3f
+ dec b
+ jr nz, .asm_16ca37
+
+.asm_16ca3f
+ ld hl, Unkn1Pals
+ call Function16cab6
+ call Function16cadc
+
+.asm_16ca48
+ ld hl, Unkn1Pals
+ call Function16cab6
+ call Function16cad8
+ cp $1f
+ jr z, .asm_16ca68
+ ld b, $1
+.asm_16ca57
+ inc a
+ cp $1f
+ jr z, .asm_16ca5f
+ dec b
+ jr nz, .asm_16ca57
+
+.asm_16ca5f
+ ld hl, Unkn1Pals
+ call Function16cab6
+ call Function16cb08
+
+.asm_16ca68
+ ld hl, Unkn1Pals
+ call Function16cab6
+ call Function16cac4
+ cp $1f
+ jr z, .asm_16ca88
+ ld b, $1
+.asm_16ca77
+ inc a
+ cp $1f
+ jr z, .asm_16ca7f
+ dec b
+ jr nz, .asm_16ca77
+
+.asm_16ca7f
+ ld hl, Unkn1Pals
+ call Function16cab6
+ call Function16cae8
+
+.asm_16ca88
+ inc e
+ inc e
+ ld a, e
+ cp $8
+ jr nz, .asm_16ca28
+ callba Function96a4
+ call Function32f9
+ ld a, [rSVBK]
+ push af
+ ld a, $1
+ ld [rSVBK], a
+ ld a, [wd003]
+ cp $1f
+ jr z, .asm_16caae
+ pop af
+ ld [rSVBK], a
+ pop af
+ ld [rSVBK], a
+ and a
+ ret
+
+.asm_16caae
+ pop af
+ ld [rSVBK], a
+ pop af
+ ld [rSVBK], a
+ scf
+ ret
+; 16cab6
+
+Function16cab6: ; 16cab6
+ ld b, $0
+ ld c, e
+ add hl, bc
+ ret
+; 16cabb
+
+Function16cabb: ; 16cabb
+ inc hl
+ ld a, [hl]
+ srl a
+ srl a
+ and $1f
+ ret
+; 16cac4
+
+Function16cac4: ; 16cac4
+ inc hl
+ ld a, [hld]
+ and $3
+ ld b, a
+ ld a, [hl]
+ sla a
+ rl b
+ sla a
+ rl b
+ sla a
+ rl b
+ ld a, b
+ ret
+; 16cad8
+
+Function16cad8: ; 16cad8
+ ld a, [hl]
+ and $1f
+ ret
+; 16cadc
+
+Function16cadc: ; 16cadc
+ sla a
+ sla a
+ ld b, a
+ inc hl
+ ld a, [hl]
+ and $83
+ or b
+ ld [hl], a
+ ret
+; 16cae8
+
+Function16cae8: ; 16cae8
+ ld c, a
+ srl a
+ srl a
+ srl a
+ ld b, a
+ inc hl
+ ld a, [hl]
+ and $fc
+ or b
+ ld [hld], a
+ ld a, c
+ sla a
+ sla a
+ sla a
+ sla a
+ sla a
+ ld b, a
+ ld a, [hl]
+ and $1f
+ or b
+ ld [hl], a
+ ret
+; 16cb08
+
+Function16cb08: ; 16cb08
+ ld b, a
+ ld a, [hl]
+ and $e0
+ or b
+ ld [hl], a
+ ret
+; 16cb0f
+
+Function16cb0f: ; 16cb0f
+ xor a
+ ld [Buffer1], a
+ ld [Buffer2], a
+ xor a
+ ld [wd1ec], a
+ ld a, $70
+ ld [wd1ee], a
+ ld a, $4
+ ld [wd1ed], a
+ ld a, $a0
+ ld [wd1ef], a
+ xor a
+ ld [wd1f0], a
+ ret
+; 16cb2e
+
+Function16cb2e: ; 16cb2e
+ ld a, [Buffer2]
+ and a
+ ret z
+ call Function16cb40
+ ld hl, Unknown_16cb86
+ ld de, Sprites
+ call Function16cb5d
+ ret
+; 16cb40
+
+Function16cb40: ; 16cb40
+ ld hl, wd1ec
+ inc [hl]
+ ld a, [hl]
+ cp $18
+ ret c
+ xor a
+ ld [hl], a
+ ld a, [wd1ef]
+ cp $a0
+ jr nz, .asm_16cb57
+ ld a, $a7
+ ld [wd1ef], a
+ ret
+
+.asm_16cb57
+ ld a, $a0
+ ld [wd1ef], a
+ ret
+; 16cb5d
+
+Function16cb5d: ; 16cb5d
+ ld a, [hli]
+ and a
+ ret z
+.asm_16cb60
+ push af
+ ld a, [wd1ee]
+ add [hl]
+ add $10
+ ld [de], a
+ inc hl
+ inc de
+ ld a, [wd1ed]
+ add [hl]
+ add $8
+ ld [de], a
+ inc hl
+ inc de
+ ld a, [wd1ef]
+ add [hl]
+ ld [de], a
+ inc hl
+ inc de
+ ld a, [wd1f0]
+ or [hl]
+ ld [de], a
+ inc hl
+ inc de
+ pop af
+ dec a
+ jr nz, .asm_16cb60
+ ret
+; 16cb86
+
+Unknown_16cb86:
+ db 7
+ db 0, 0, 0, 1
+ db 8, 0, 1, 1
+ db 8, 8, 2, 0
+ db 8, 16, 3, 0
+ db 16, 0, 4, 1
+ db 16, 8, 5, 0
+ db 16, 16, 6, 0
+; 16cba3
+
+Function16cba3: ; 16cba3
+ xor a
+ ld [wd1f1], a
+ ld [wd1f2], a
+ ld [wd1f3], a
+ ret
+; 16cbae
+
+Function16cbae: ; 16cbae
+ ld a, [wd1f1]
+ and a
+ ret z
+ call Function16cbba
+ call Function16cbd1
+ ret
+; 16cbba
+
+Function16cbba: ; 16cbba
+ ld hl, wd1f2
+ inc [hl]
+ ld a, [hl]
+ cp $c
+ ret c
+ xor a
+ ld [hl], a
+ ld a, [wd1f3]
+ inc a
+ cp $4
+ jr c, .asm_16cbcd
+ xor a
+
+.asm_16cbcd
+ ld [wd1f3], a
+ ret
+; 16cbd1
+
+Function16cbd1: ; 16cbd1
+ ld a, [wd1f3]
+ ld c, a
+ ld b, 0
+ ld hl, Unknown_16cbfb
+ add hl, bc
+ ld a, [hl]
+ ld bc, $0002
+ ld hl, Unknown_16cfa3
+ call AddNTimes
+ ld de, wd00c
+ ld bc, $0002
+ ld a, $5
+ call FarCopyWRAM
+ callba Function96a4
+ ld a, $1
+ ld [hCGBPalUpdate], a
+ ret
+; 16cbfb
+
+Unknown_16cbfb:
+ db 0, 1, 2, 1, 0, 1, 2
+; 16cc02
+
+Function16cc02: ; 16cc02
+ call Function16cc18
+ call Function16cc49
+ call Function16cc62
+ call Function16cc25
+ call Function16cc6e
+ call Function16cb0f
+ call Function16cba3
+ ret
+; 16cc18
+
+Function16cc18: ; 16cc18
+ ld hl, VTiles1
+ ld de, GFX_16cca3
+ lb bc, BANK(GFX_16cca3), $2e
+ call Get2bpp
+ ret
+; 16cc25
+
+Function16cc25: ; 16cc25
+ ld hl, Unknown_16cfa9
+ ld de, wd008
+ call Function16cc41
+ ld hl, Unknown_16cfb1
+ ld de, Unkn2Pals
+ call Function16cc41
+ ld hl, Unknown_16cfb9
+ ld de, wd048
+ call Function16cc41
+ ret
+; 16cc41
+
+Function16cc41: ; 16cc41
+ ld bc, $0008
+ ld a, $5
+ jp FarCopyWRAM
+; 16cc49
+
+Function16cc49: ; 16cc49
+ hlcoord 4, 15
+ ld a, $80
+ call Function16cc5a
+ hlcoord 4, 16
+ ld a, $90
+ call Function16cc5a
+ ret
+; 16cc5a
+
+Function16cc5a: ; 16cc5a
+ ld c, $10
+.asm_16cc5c
+ ld [hli], a
+ inc a
+ dec c
+ jr nz, .asm_16cc5c
+ ret
+; 16cc62
+
+Function16cc62: ; 16cc62
+ hlcoord 0, 15, AttrMap
+ ld bc, $0028
+ ld a, $1
+ call ByteFill
+ ret
+; 16cc6e
+
+Function16cc6e: ; 16cc6e
+ ld hl, VBGMap1
+ jr Function16cc73
+
+Function16cc73:
+ ld a, [rVBK]
+ push af
+ ld a, $0
+ ld [rVBK], a
+ push hl
+ ld de, TileMap
+ call Function16cc90
+ pop hl
+ ld a, $1
+ ld [rVBK], a
+ ld de, AttrMap
+ call Function16cc90
+ pop af
+ ld [rVBK], a
+ ret
+; 16cc90
+
+Function16cc90: ; 16cc90
+ ld bc, $1214
+.asm_16cc93
+ push bc
+.asm_16cc94
+ ld a, [de]
+ inc de
+ ld [hli], a
+ dec c
+ jr nz, .asm_16cc94
+ ld bc, $000c
+ add hl, bc
+ pop bc
+ dec b
+ jr nz, .asm_16cc93
+ ret
+; 16cca3
+
+GFX_16cca3:
+INCBIN "gfx/unknown/16cca3.2bpp"
+
+Unknown_16cfa3:
+ RGB 31, 31, 31
+ RGB 25, 27, 29
+ RGB 16, 19, 25
+
+Unknown_16cfa9:
+ RGB 31, 31, 31
+ RGB 25, 27, 29
+ RGB 31, 31, 31
+ RGB 07, 07, 07
+
+Unknown_16cfb1:
+ RGB 31, 31, 31
+ RGB 13, 09, 18
+ RGB 26, 21, 16
+ RGB 07, 07, 07
+
+Unknown_16cfb9:
+ RGB 31, 31, 31
+ RGB 18, 05, 02
+ RGB 27, 11, 12
+ RGB 07, 07, 07
+; 16cfc1
+
+GFX_16cfc1:
+INCBIN "gfx/unknown/16cfc1.2bpp"
+
+Function16d421: ; 16d421
+ ld de, GFX_16cfc1
+ ld hl, VTiles2
+ lb bc, BANK(GFX_16cfc1), $46
+ call Get2bpp
+ ret
+; 16d42e
+
+Function16d42e: ; 16d42e
+ ld hl, Tilemap_16d465
+ ld de, TileMap
+ ld bc, $0168
+ call CopyBytes
+ ret
+; 16d43b
+
+Function16d43b: ; 16d43b
+ call Function1d6e
+ call WhiteBGMap
+ call ClearTileMap
+ call ClearSprites
+ callba Function16d421
+ callba Function16d42e
+ ld b, $8
+ call GetSGBLayout
+ call Function32f9
+ call WaitBGMap
+ call Functiona36
+ call Function1d7d
+ ret
+; 16d465
+
+Tilemap_16d465:
+INCBIN "gfx/unknown/16d465.tilemap"
+
+Tilemap_16d5cd:
+INCBIN "gfx/unknown/16d5cd.tilemap"
+
+Tilemap_16d5f5:
+INCBIN "gfx/unknown/16d5f5.tilemap"
+
+Function16d61d: ; 16d61d
+ ld h, d
+ ld l, e
+ push bc
+ push hl
+ call Function16d640
+ pop hl
+ pop bc
+ ld de, AttrMap - TileMap
+ add hl, de
+ inc b
+ inc b
+ inc c
+ inc c
+ ld a, $7
+.asm_16d630
+ push bc
+ push hl
+.asm_16d632
+ ld [hli], a
+ dec c
+ jr nz, .asm_16d632
+ pop hl
+ ld de, $0014
+ add hl, de
+ pop bc
+ dec b
+ jr nz, .asm_16d630
+ ret
+; 16d640
+
+Function16d640: ; 16d640
+ push hl
+ ld a, $30
+ ld [hli], a
+ inc a
+ call Function16d66d
+ inc a
+ ld [hl], a
+ pop hl
+ ld de, $0014
+ add hl, de
+.asm_16d64f
+ push hl
+ ld a, $33
+ ld [hli], a
+ ld a, $7f
+ call Function16d66d
+ ld [hl], $34
+ pop hl
+ ld de, $0014
+ add hl, de
+ dec b
+ jr nz, .asm_16d64f
+ ld a, $35
+ ld [hli], a
+ ld a, $36
+ call Function16d66d
+ ld [hl], $37
+ ret
+; 16d66d
+
+Function16d66d: ; 16d66d
+ ld d, c
+.asm_16d66e
+ ld [hli], a
+ dec d
+ jr nz, .asm_16d66e
+ ret
+; 16d673
+
+Function16d673: ; 16d673
+ call Function16d696
+ call Function16d6ae
+ callba Function49856
+ callba Functionfb60d
+ hlcoord 10, 17
+ ld de, String_16d68f
+ call PlaceString
+ ret
+; 16d68f
+
+String_16d68f: ; 16d68f
+ db "CANCEL@"
+; 16d696
+
+Function16d696: ; 16d696
+ call Function16d421
+ ret
+; 16d69a
+
+
+Function16d69a: ; 16d69a
+ ld de, GFX_16cfc1 + $300
+ ld hl, $9760
+ lb bc, BANK(GFX_16cfc1), 8
+ call Get2bpp
+ ret
+; 16d6a7
+
+Function16d6a7: ; 16d6a7
+ callba Function49811
+ ret
+; 16d6ae
+
+Function16d6ae: ; 16d6ae
+ call Function16d42e
+ ld hl, Tilemap_16d5cd
+ ld de, TileMap
+ ld bc, $0028
+ call CopyBytes
+ ld hl, Tilemap_16d5f5
+ decoord 0, 16
+ ld bc, $0028
+ call CopyBytes
+ ret
+; 16d6ca
+
+Function16d6ca: ; 16d6ca
+ call Function16d61d
+ ret
+; 16d6ce
+
+Function16d6ce: ; 16d6ce
+ call Function1d6e
+ call Function16d6e1
+ callba Function87d
+ call Function1d7d
+ call Function3200
+ ret
+; 16d6e1
+
+Function16d6e1: ; 16d6e1
+ hlcoord 4, 10
+ ld b, $1
+ ld c, $a
+ predef Function28eef
+ hlcoord 5, 11
+ ld de, String_16d701
+ call PlaceString
+ call WaitBGMap
+ call Function3200
+ ld c, $32
+ jp DelayFrames
+; 16d701
+
+String_16d701: ; 16d701
+ db "WAITING..!@"
+; 16d70c
+
+Function16d70c: ; 16d70c
+ call Function16d725
+ call Function16d713
+ ret
+; 16d713
+
+Function16d713: ; 16d713
+ push bc
+ push af
+ ld a, [$ffa9]
+ and $f0
+ ld b, a
+ ld a, [hJoyPressed]
+ and $f
+ or b
+ ld b, a
+ pop af
+ ld a, b
+ pop bc
+ ld d, a
+ ret
+; 16d725
+
+Function16d725: ; 16d725
+ ld hl, wcfa6
+ res 7, [hl]
+ ld a, [hBGMapMode]
+ push af
+ call Function16d734
+ pop af
+ ld [hBGMapMode], a
+ ret
+; 16d734
+
+Function16d734: ; 16d734
+.asm_16d734
+ call Function16d77a
+ call Function16d759
+ call Function16d76a
+ jr nc, .asm_16d758
+ callba Function24270
+ jr c, .asm_16d758
+ ld a, [wcfa5]
+ bit 7, a
+ jr nz, .asm_16d758
+ call Function16d713
+ ld b, a
+ ld a, [wcfa8]
+ and b
+ jr z, .asm_16d734
+
+.asm_16d758
+ ret
+; 16d759
+
+Function16d759: ; 16d759
+ ld a, [hOAMUpdate]
+ push af
+ ld a, $1
+ ld [hOAMUpdate], a
+ call WaitBGMap
+ pop af
+ ld [hOAMUpdate], a
+ xor a
+ ld [hBGMapMode], a
+ ret
+; 16d76a
+
+Function16d76a: ; 16d76a
+.asm_16d76a
+ call RTC
+ call Function16d7e7
+ ret c
+ ld a, [wcfa5]
+ bit 7, a
+ jr z, .asm_16d76a
+ and a
+ ret
+; 16d77a
+
+Function16d77a: ; 16d77a
+ ld hl, wcfac
+ ld a, [hli]
+ ld h, [hl]
+ ld l, a
+ ld a, [hl]
+ cp $1f
+ jr nz, .asm_16d792
+ ld a, [wcfab]
+ ld [hl], a
+ push hl
+ push bc
+ ld bc, $000b
+ add hl, bc
+ ld [hl], a
+ pop bc
+ pop hl
+
+.asm_16d792
+ ld a, [wcfa1]
+ ld b, a
+ ld a, [wcfa2]
+ ld c, a
+ call GetTileCoord
+ ld a, [wcfa7]
+ swap a
+ and $f
+ ld c, a
+ ld a, [wcfa9]
+ ld b, a
+ xor a
+ dec b
+ jr z, .asm_16d7b1
+.asm_16d7ad
+ add c
+ dec b
+ jr nz, .asm_16d7ad
+
+.asm_16d7b1
+ ld c, $14
+ call AddNTimes
+ ld a, [wcfa7]
+ and $f
+ ld c, a
+ ld a, [wcfaa]
+ ld b, a
+ xor a
+ dec b
+ jr z, .asm_16d7c8
+.asm_16d7c4
+ add c
+ dec b
+ jr nz, .asm_16d7c4
+
+.asm_16d7c8
+ ld c, a
+ add hl, bc
+ ld a, [hl]
+ cp $1f
+ jr z, .asm_16d7de
+ ld [wcfab], a
+ ld [hl], $1f
+ push hl
+ push bc
+ ld bc, $000b
+ add hl, bc
+ ld [hl], $1f
+ pop bc
+ pop hl
+
+.asm_16d7de
+ ld a, l
+ ld [wcfac], a
+ ld a, h
+ ld [wcfad], a
+ ret
+; 16d7e7
+
+Function16d7e7: ; 16d7e7
+ ld a, [wcfa5]
+ bit 6, a
+ jr z, .asm_16d7f4
+ callba Function8cf62
+
+.asm_16d7f4
+ call Functiona57
+ call Function16d713
+ and a
+ ret z
+ scf
+ ret
+; 16d7fe
+
+
+SECTION "bank5C", ROMX, BANK[$5C]
+
+Function170000: ; 170000
+ ld a, [$c62b]
+ ld [$c6d0], a
+ ld hl, $c62e
+ ld de, $c6e7
+ ld bc, $0005
+ call CopyBytes
+ ld a, $50
+ ld [de], a
+ ld hl, $c663
+ ld de, $c6f2
+ ld bc, $0005
+ call CopyBytes
+ ld a, $50
+ ld [de], a
+ ld hl, $c648
+ ld a, [hli]
+ ld [$c6fd], a
+ ld a, [hl]
+ ld [$c6fe], a
+ ld hl, $c639
+ ld a, [hli]
+ ld [$c6ff], a
+ ld a, [hl]
+ ld [wc700], a
+ ld bc, $c633
+ callba GetCaughtGender
+ ld a, c
+ ld [wc701], a
+ ld a, [wcd81]
+ ld [wc74e], a
+ ld hl, $c608
+ ld de, $d800
+ ld bc, $008f
+ call CopyBytes
+ ret
+; 17005a
+
+Function17005a: ; 17005a
+ ld a, $5
+ call GetSRAMBank
+ ld a, [$a824]
+ ld [wc702], a
+ ld hl, $a827
+ ld de, wc719
+ ld bc, $0005
+ call CopyBytes
+ ld a, $50
+ ld [de], a
+ ld hl, $a85c
+ ld de, wc724
+ ld bc, $0005
+ call CopyBytes
+ ld a, $50
+ ld [de], a
+ ld hl, $a841
+ ld a, [hli]
+ ld [wc72f], a
+ ld a, [hl]
+ ld [wc730], a
+ ld hl, $a832
+ ld a, [hli]
+ ld [wc731], a
+ ld a, [hl]
+ ld [wc732], a
+ ld bc, $a82c
+ callba GetCaughtGender
+ ld a, c
+ ld [wc733], a
+ ld a, [wcd81]
+ ld [wc74e], a
+ call CloseSRAM
+ 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, [wd84a]
+ ld [hli], a
+ ld a, [wd84b]
+ ld [hli], a
+ ld e, l
+ ld d, h
+ ld hl, PlayerName
+ ld bc, $0005
+ 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
+
+Function170215: ; 170215
+ xor a
+ ld [wcf63], a
+ call Function17022c
+ ret
+; 17021d
+
+Function17021d: ; 17021d
+ ret
+; 17021e
+
+Function17021e: ; 17021e
+ xor a
+ ld [wcf63], a
+ ld [wcf64], a
+ ld [wcf65], a
+ ld [wcf66], a
+ ret
+; 17022c
+
+Function17022c: ; 17022c
+.asm_17022c
+ call Function17023a
+ call DelayFrame
+ ld a, [wcf63]
+ cp $1
+ jr nz, .asm_17022c
+ ret
+; 17023a
+
+Function17023a: ; 17023a
+ ld a, [wcf63]
+ ld e, a
+ ld d, 0
+ ld hl, Jumptable_170249
+ add hl, de
+ add hl, de
+ ld a, [hli]
+ ld h, [hl]
+ ld l, a
+ jp [hl]
+; 170249
+
+Jumptable_170249: ; 170249
+ dw Function17024d
+ dw Function1704c9
+; 17024d
+
+Function17024d: ; 17024d
+ ld a, [Options]
+ push af
+ ld hl, Options
+ set 6, [hl]
+ ld a, [wcfc0]
+ push af
+ or $1
+ ld [wcfc0], a
+ xor a
+ ld [InLinkBattle], a
+ callba Function1060a2
+ callba Functionc658
+ call Function1702b7
+ call Function170bf7
+ predef StartBattle
+ callba Function1500c
+ callba Functionc658
+ ld a, [wd0ee]
+ ld [ScriptVar], a
+ and a
+ jr nz, .asm_1702a9
+ ld a, $1
+ call GetSRAMBank
+ ld a, [$be46]
+ ld [wcf64], a
+ call CloseSRAM
+ ld hl, StringBuffer3
+ ld a, [wcf64]
+ add $f7
+ ld [hli], a
+ ld a, $50
+ ld [hl], a
+
+.asm_1702a9
+ pop af
+ ld [wcfc0], a
+ pop af
+ ld [Options], a
+ ld a, $1
+ ld [wcf63], a
+ ret
+; 1702b7
+
+Function1702b7: ; 1702b7
+ call Function1704a2
+ ld de, $c643
+ ld c, $b
+ callba Function17d073
+ jr nc, .asm_1702db
+ ld a, [$c608 + 11]
+ ld [wd265], a
+ call GetPokemonName
+ ld l, e
+ ld h, d
+ ld de, $c643
+ ld bc, $000b
+ call CopyBytes
+
+.asm_1702db
+ ld de, $c67e
+ ld c, $b
+ callba Function17d073
+ jr nc, .asm_1702fc
+ ld a, [$c64e]
+ ld [wd265], a
+ call GetPokemonName
+ ld l, e
+ ld h, d
+ ld de, $c67e
+ ld bc, $000b
+ call CopyBytes
+
+.asm_1702fc
+ ld de, $c686 + 51
+ ld c, $b
+ callba Function17d073
+ jr nc, .asm_17031d
+ ld a, [$c689]
+ ld [wd265], a
+ call GetPokemonName
+ ld l, e
+ ld h, d
+ ld de, $c686 + 51
+ ld bc, $000b
+ call CopyBytes
+
+.asm_17031d
+ ld a, $50
+ ld [$c64d], a
+ ld [$c688], a
+ ld [$c68a + 57], a
+ call Function170c98
+ ld de, $c608
+ ld c, $a
+ callba Function17d073
+ jr nc, .asm_17033d
+ ld hl, String_170426
+ jr .asm_170340
+
+.asm_17033d
+ ld hl, $c608
+
+.asm_170340
+ ld de, wd26b
+ ld bc, $000a
+ call CopyBytes
+ ld a, $50
+ ld [de], a
+ ld hl, $c608 + 10
+ ld a, [hli]
+ ld [OtherTrainerClass], a
+ ld a, $ea
+ ld [BGMapBuffer], a
+ ld a, $d3
+ ld [wcd21], a
+ ld de, OTPartyMon1Species
+ ld bc, OTPartyCount
+ ld a, $3
+ ld [bc], a
+ inc bc
+.asm_170367
+ push af
+ ld a, [hl]
+ ld [bc], a
+ inc bc
+ push bc
+ ld bc, $0030
+ call CopyBytes
+ push de
+ ld a, [BGMapBuffer]
+ ld e, a
+ ld a, [wcd21]
+ ld d, a
+ ld bc, $000b
+ call CopyBytes
+ ld a, e
+ ld [BGMapBuffer], a
+ ld a, d
+ ld [wcd21], a
+ pop de
+ pop bc
+ pop af
+ dec a
+ and a
+ jr nz, .asm_170367
+ ld a, $ff
+ ld [bc], a
+ ret
+; 170394
+
+Function170394: ; 170394
+ ld hl, $c608 + 11
+ ld d, $3
+.asm_170399
+ push de
+ push hl
+ ld b, h
+ ld c, l
+ ld a, [hl]
+ and a
+ jr z, .asm_1703b1
+ cp $ff
+ jr z, .asm_1703b1
+ cp $fe
+ jr z, .asm_1703b1
+ cp $fd
+ jr z, .asm_1703b1
+ cp $fc
+ jr nz, .asm_1703b4
+
+.asm_1703b1
+ ld a, $eb
+ ld [hl], a
+
+.asm_1703b4
+ ld [CurSpecies], a
+ call GetBaseData
+ ld a, $5
+ call GetSRAMBank
+ ld a, [$b2fb]
+ call CloseSRAM
+ ld e, a
+ ld hl, $001f
+ add hl, bc
+ ld a, [hl]
+ cp $2
+ ld a, $2
+ jr c, .asm_1703d6
+ ld a, [hl]
+ cp e
+ jr c, .asm_1703d7
+ ld a, e
+
+.asm_1703d6
+ ld [hl], a
+
+.asm_1703d7
+ ld [CurPartyLevel], a
+ ld hl, $0002
+ add hl, bc
+ ld d, $3
+ ld a, [hli]
+ and a
+ jr z, .asm_1703ea
+ cp $fc
+ jr nc, .asm_1703ea
+ jr .asm_1703f4
+
+.asm_1703ea
+ dec hl
+ ld a, $1
+ ld [hli], a
+ xor a
+ ld [hli], a
+ ld [hli], a
+ ld [hl], a
+ jr .asm_1703ff
+
+.asm_1703f4
+ ld a, [hl]
+ cp $fc
+ jr c, .asm_1703fb
+ ld [hl], $0
+
+.asm_1703fb
+ inc hl
+ dec d
+ jr nz, .asm_1703f4
+
+.asm_1703ff
+ ld hl, $0024
+ add hl, bc
+ ld d, h
+ ld e, l
+ push hl
+ push de
+ ld hl, $000a
+ add hl, bc
+ ld b, $1
+ predef Functione167
+ pop de
+ pop hl
+ dec de
+ dec de
+ ld a, [hli]
+ ld [de], a
+ inc de
+ ld a, [hl]
+ ld [de], a
+ pop hl
+ ld bc, $003b
+ add hl, bc
+ pop de
+ dec d
+ jp nz, .asm_170399
+ ret
+; 170426
+
+String_170426: ; 170426
+ db "CHRIS@"
+; 17042c
+
+Function17042c: ; 17042c
+ ld hl, OTPartyMon2ID
+ ld a, $7
+.asm_170431
+ push af
+ push hl
+ ld c, $12
+.asm_170435
+ ld a, [hli]
+ ld b, a
+ ld a, [hli]
+ and a
+ jr z, .asm_170451
+ cp $f
+ jr nc, .asm_17045b
+ push hl
+ ld hl, Unknown_170470
+ dec a
+ ld e, a
+ ld d, 0
+ add hl, de
+ ld a, [hl]
+ pop hl
+ cp b
+ jr c, .asm_17045b
+ jr z, .asm_17045b
+ jr .asm_170456
+
+.asm_170451
+ ld a, b
+ cp $fc
+ jr nc, .asm_17045b
+
+.asm_170456
+ dec c
+ jr nz, .asm_170435
+ jr .asm_170466
+
+.asm_17045b
+ pop de
+ push de
+ ld hl, Unknown_17047e
+ ld bc, $0024
+ call CopyBytes
+
+.asm_170466
+ pop hl
+ ld de, $00e0
+ add hl, de
+ pop af
+ dec a
+ jr nz, .asm_170431
+ ret
+; 170470
+
+Unknown_170470:
+ db $12, $24, $45, $45, $42, $42, $45, $42, $27, $27, $45, $27, $42, $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
+; 1704a2
+
+Function1704a2: ; 1704a2
+ ld a, [rSVBK]
+ push af
+ ld a, $3
+ ld [rSVBK], a
+ ld hl, LYOverrides
+ ld de, $c608
+ ld bc, $00e0
+ call CopyBytes
+ pop af
+ ld [rSVBK], a
+ ld a, $1
+ call GetSRAMBank
+ ld a, $2
+ ld [$be45], a
+ ld hl, $be46
+ inc [hl]
+ call CloseSRAM
+Function1704c9:
+ 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 Function2b3c
+ ret
+; 1704f1
+
+Function1704f1: ; 1704f1
+ call WhiteBGMap
+ call ClearSprites
+ call ClearScreen
+.asm_1704fa
+ call Functiona57
+ ld a, [wcf63]
+ bit 7, a
+ jr nz, .asm_17050f
+ call Function170510
+ callba Function104061
+ jr .asm_1704fa
+
+.asm_17050f
+ ret
+; 170510
+
+Function170510: ; 170510
+ ld a, [wcf63]
+ ld e, a
+ ld d, 0
+ ld hl, Jumptable_17051f
+ add hl, de
+ add hl, de
+ 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 Function32f9
+ 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, wcf63
+ set 7, [hl]
+ ret
+
+Function1705b2:
+ ld hl, wcf63
+ 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
+ inc hl
+ inc hl
+ 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
+
+Function170687: ; 170687
+ ld a, [ScriptVar]
+ ld e, a
+ ld d, 0
+ ld hl, Jumptable_170696
+ add hl, de
+ add hl, de
+ ld a, [hli]
+ ld h, [hl]
+ ld l, a
+ jp [hl]
+; 170696
+
+
+Jumptable_170696: ; 170696 (5c:4696)
+ dw Function17075f
+ dw Function170788
+ dw Function170778
+ dw Function170799
+ dw Function17079d
+ dw Function1707ac
+ dw Function1707f4
+ dw Function170868
+ dw Function170881
+ dw Function17089a
+ dw Function1708b1
+ dw Function1708b9
+ dw Function1708c8
+ dw Function1708f0
+ dw Function17093c
+ dw Function1709aa
+ dw Function1709bb
+ dw Function170a9c
+ dw Function170aa0
+ dw Function170aaf
+ dw Function170abe
+ dw Function170ad7
+ dw Function170807
+ dw Function17081d
+ dw Function170ae8
+ dw Function170b16
+ dw Function1706d6
+ dw Function1706ee
+ dw Function17071b
+ dw Function170729
+ dw Function17073e
+ dw Function170737
+
+
+Function1706d6: ; 1706d6 (5c:46d6)
+ ld a, $1
+ call GetSRAMBank
+ ld a, $ff
+ ld hl, $be48
+ ld bc, $7
+ call ByteFill
+ xor a
+ ld [$be46], a
+ call CloseSRAM
+ ret
+
+Function1706ee: ; 1706ee (5c:46ee)
+ ld a, $1
+ call GetSRAMBank
+ ld a, [$be50]
+ 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, $1
+ call GetSRAMBank
+ ld a, $3
+ ld [$be45], a
+ call CloseSRAM
+ ret
+
+Function170729: ; 170729 (5c:4729)
+ ld a, $1
+ call GetSRAMBank
+ ld a, $4
+ ld [$be45], a
+ call CloseSRAM
+ ret
+
+Function170737: ; 170737 (5c:4737)
+ callba Function14dbb
+ ret
+
+Function17073e: ; 17073e (5c:473e)
+ call Random
+ ld a, [hRandomAdd] ; $ff00+$e1
+ and $7
+ cp $6
+ jr c, .asm_17074b
+ sub $6
+.asm_17074b
+ add $1a
+ cp $1e
+ jr z, Function17073e
+ push af
+ ld a, $1
+ call GetSRAMBank
+ pop af
+ ld [$be50], a
+ call CloseSRAM
+ ret
+
+Function17075f: ; 17075f (5c:475f)
+ call Function17089a
+ ld a, [ScriptVar]
+ and a
+ ret z
+ ld a, $1
+ call GetSRAMBank
+ ld a, [$be4f]
+ and $2
+ ld [ScriptVar], a
+ call CloseSRAM
+ ret
+
+Function170778: ; 170778 (5c:4778)
+ ld hl, $be45
+ ld a, $1
+ call GetSRAMBank
+ ld a, [hl]
+ ld [ScriptVar], a
+ call CloseSRAM
+ ret
+
+Function170788: ; 170788 (5c:4788)
+ ld a, $1
+ call GetSRAMBank
+ ld a, [$be4f]
+ or $2
+ ld [$be4f], 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, $1
+ call GetSRAMBank
+ ld a, c
+ ld [$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, $1
+ call GetSRAMBank
+ ld a, [rSVBK] ; $ff00+$70
+ push af
+ ld a, $3
+ ld [rSVBK], a ; $ff00+$70
+ ld a, [wd000 + $800]
+ ld [$be47], a
+ pop af
+ ld [rSVBK], a ; $ff00+$70
+ call CloseSRAM
+ ret
+
+Function170881: ; 170881 (5c:4881)
+ ld a, $1
+ call GetSRAMBank
+ ld a, [rSVBK] ; $ff00+$70
+ push af
+ ld a, $3
+ ld [rSVBK], a ; $ff00+$70
+ ld a, [$be47]
+ ld [wd000 + $800], a
+ pop af
+ ld [rSVBK], a ; $ff00+$70
+ 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
+
+Function1708b9: ; 1708b9 (5c:48b9)
+ ld a, $1
+ call GetSRAMBank
+ ld a, [$be3c]
+ 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
+.asm_170955
+ ld a, [hli]
+ cp EGG
+ jr nz, .asm_17099f
+ push hl
+ ld hl, PartyMonOT ; wddff (aliases: PartyMonOT)
+ ld de, $6
+ ld a, b
+ and a
+ jr z, .asm_170969
+.asm_170965
+ add hl, de
+ dec a
+ jr nz, .asm_170965
+.asm_170969
+ 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
+ dec hl
+ dec hl
+ dec hl
+ dec hl
+ ld a, $50
+ ld [hli], a
+ ld [hli], a
+ pop hl
+ ld a, EGG_TICKET
+ ld [CurItem], a
+ ld a, $1
+ ld [wd10c], 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
+.asm_17099f
+ inc b
+ dec c
+ jr nz, .asm_170955
+ ret
+; 1709a4 (5c:49a4)
+
+String_1709a4: ; 1709a4
+ db "なぞナゾ@@"
+
+Function1709aa: ; 1709aa (5c:49aa)
+ ld a, [rSVBK] ; $ff00+$70
+ push af
+ ld a, $3
+ ld [rSVBK], a ; $ff00+$70
+ ld a, [StringBuffer2 + 10]
+ ld [ScriptVar], a
+ pop af
+ ld [rSVBK], a ; $ff00+$70
+ ret
+
+Function1709bb: ; 1709bb (5c:49bb)
+ xor a
+ ld [ScriptVar], a
+ ld a, $5
+ call GetSRAMBank
+ ld a, [$a800]
+ call CloseSRAM
+ cp 6
+ jr nc, .asm_1709da
+ ld e, a
+ ld d, 0
+ ld hl, Jumptable_1709e7
+ add hl, de
+ add hl, de
+ ld a, [hli]
+ ld h, [hl]
+ ld l, a
+ jp [hl]
+.asm_1709da
+ 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, $1
+ call GetSRAMBank
+ ld a, [$be4f]
+ and $1
+ ld [ScriptVar], a
+ call CloseSRAM
+ ret
+
+Function170ad7: ; 170ad7 (5c:4ad7)
+ ld a, $1
+ call GetSRAMBank
+ ld a, [$be4f]
+ or $1
+ ld [$be4f], 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
+
+Function170b44: ; 170b44
+ callba Function1f8000
+ ld a, [rSVBK]
+ push af
+ ld a, $3
+ ld [rSVBK], a
+ ld hl, wd10a
+ ld a, [hl]
+ dec a
+ ld c, a
+ ld b, $0
+ pop af
+ ld [rSVBK], a
+ ld hl, Unknown_170b90
+ add hl, bc
+ ld a, [hl]
+ ld [wcd49], a
+ ld a, [ScriptVar]
+ dec a
+ sla a
+ ld e, a
+ sla a
+ sla a
+ sla a
+ ld c, a
+ ld b, $0
+ ld d, $0
+ ld hl, MapObjects
+ add hl, bc
+ inc hl
+ ld a, [wcd49]
+ ld [hl], a
+ ld hl, UsedSprites
+ add hl, de
+ ld [hli], a
+ ld [$ffbd], a
+ ld a, [hl]
+ ld [$ffbe], a
+ callba Function143c8
+ ret
+; 170b90
+
+Unknown_170b90:
+INCBIN "baserom.gbc",$170b90,$170bd2 - $170b90
+
+Function170bd2: ; 170bd2
+ ret
+; 170bd3
+
+Function170bd3: ; 170bd3
+ callba Function8b201
+ jr c, .asm_170bde
+ xor a
+ jr .asm_170be0
+
+.asm_170bde
+ ld a, $1
+
+.asm_170be0
+ ld [ScriptVar], a
+ ret
+; 170be4
+
+Function170be4: ; 170be4
+ ld a, $5
+ call GetSRAMBank
+ xor a
+ ld hl, $a894
+ ld bc, $0008
+ call ByteFill
+ call CloseSRAM
+ ret
+; 170bf7
+
+Function170bf7: ; 170bf7
+ ld a, $5
+ call GetSRAMBank
+ ld hl, $a89a
+ xor a
+ ld [hli], a
+ ld [hl], a
+ call CloseSRAM
+ ret
+; 170c06
+
+Function170c06: ; 170c06
+ ld a, $5
+ call GetSRAMBank
+ ld hl, $a894
+ ld a, [wd0ee]
+ and a
+ jr nz, .asm_170c15
+ inc [hl]
+
+.asm_170c15
+ inc hl
+ inc hl
+ ld a, [$a89b]
+ add [hl]
+ ld [hld], a
+ ld a, [$a89a]
+ adc [hl]
+ ld [hli], a
+ jr nc, .asm_170c27
+ ld a, $ff
+ ld [hld], a
+ ld [hli], a
+
+.asm_170c27
+ inc hl
+ push hl
+ ld de, 0
+ xor a
+ ld [wd265], a
+.asm_170c30
+ ld hl, PartyMon1HP
+ ld a, [wd265]
+ call GetPartyLocation
+ ld a, [hli]
+ ld b, a
+ ld c, [hl]
+ inc hl
+ inc hl
+ ld a, [hld]
+ sub c
+ ld c, a
+ ld a, [hl]
+ sbc b
+ ld b, a
+ push de
+ pop hl
+ add hl, bc
+ push hl
+ pop de
+ jr c, .asm_170c58
+ ld a, [wd265]
+ inc a
+ ld [wd265], a
+ cp $3
+ jr c, .asm_170c30
+ jr .asm_170c5b
+
+.asm_170c58
+ ld de, -1
+
+.asm_170c5b
+ pop hl
+ inc hl
+ ld a, e
+ add [hl]
+ ld [hld], a
+ ld a, d
+ adc [hl]
+ ld [hli], a
+ jr nc, .asm_170c69
+ ld a, $ff
+ ld [hld], a
+ ld [hli], a
+
+.asm_170c69
+ inc hl
+ push hl
+ ld b, $0
+ ld c, $0
+.asm_170c6f
+ ld hl, PartyMon1HP
+ ld a, b
+ push bc
+ call GetPartyLocation
+ pop bc
+ ld a, [hli]
+ or [hl]
+ jr nz, .asm_170c7d
+ inc c
+
+.asm_170c7d
+ inc b
+ ld a, b
+ cp $3
+ jr c, .asm_170c6f
+ pop hl
+ ld a, [hl]
+ add c
+ ld [hl], a
+ call CloseSRAM
+ ret
+; 170c8b
+
+Function170c8b: ; 170c8b
+ ld hl, LastPlayerCounterMove
+ ld b, $5
+.asm_170c90
+ ld a, [hl]
+ xor $ff
+ ld [hli], a
+ dec b
+ jr nz, .asm_170c90
+ ret
+; 170c98
+
+Function170c98: ; 170c98
+ ld c, $3
+ ld hl, $c608 + 13
+.asm_170c9d
+ push hl
+ ld a, [hl]
+ cp $fc
+ jr c, .asm_170ca6
+ ld a, $1
+ ld [hl], a
+
+.asm_170ca6
+ inc hl
+ ld b, $3
+.asm_170ca9
+ ld a, [hl]
+ and a
+ jr z, .asm_170cb1
+ cp $fc
+ jr c, .asm_170cb9
+
+.asm_170cb1
+ xor a
+ ld [hl], a
+ inc hl
+ dec b
+ jr nz, .asm_170cb1
+ jr .asm_170cbd
+
+.asm_170cb9
+ inc hl
+ dec b
+ jr nz, .asm_170ca9
+
+.asm_170cbd
+ pop hl
+ ld de, $003b
+ add hl, de
+ dec c
+ jr nz, .asm_170c9d
+ ret
+; 170cc6
+
+Function170cc6: ; 170cc6
+ ld a, [rSVBK]
+ push af
+ ld a, $6
+ ld [rSVBK], a
+ ld hl, LZ_170d16
+ ld de, wd000
+ call Decompress
+ ld a, $1
+ ld [rVBK], a
+ ld de, wd000
+ ld hl, VTiles0
+ lb bc, $6, $c1
+ call Get2bpp
+ xor a
+ ld [rVBK], a
+ ld hl, LZ_1715a4
+ ld de, wd000
+ call Decompress
+ ld de, Unkn1Pals
+ ld hl, VTiles0
+ lb bc, $6, $53
+ call Get2bpp
+ pop af
+ ld [rSVBK], a
+ ret
+; 170d02
+
+Function170d02: ; 170d02
+ ld a, $1
+ ld [rVBK], a
+ ld de, GFX_171848
+ ld hl, $8c10
+ lb bc, BANK(GFX_171848), $18
+ call Get2bpp
+ xor a
+ ld [rVBK], a
+ ret
+; 170d16
+
+LZ_170d16:
+INCBIN "gfx/unknown/170d16.2bpp.lz"
+
+LZ_1715a4:
+INCBIN "gfx/unknown/1715a4.2bpp.lz"
+
+GFX_171848:
+INCBIN "gfx/unknown/171848.2bpp"
+
+Function1719c8: ; 1719c8 (5c:59c8)
+ ld a, [$ffaa]
+ push af
+ ld a, $1
+ ld [$ffaa], a
+ call Function1719d6
+ pop af
+ ld [$ffaa], a
+ ret
+
+Function1719d6: ; 1719d6 (5c:59d6)
+ callba Function1183cb
+ call Function1719ed
+ ld a, [rSVBK] ; $ff00+$70
+ push af
+ ld a, $5
+ ld [rSVBK], a ; $ff00+$70
+ call Function171a11
+ pop af
+ ld [rSVBK], a ; $ff00+$70
+ ret
+
+Function1719ed: ; 1719ed (5c:59ed)
+ xor a
+ ld [wcd49], a
+ ld [wcd4a], a
+ dec a
+ ld [wcd4b], a
+ call WhiteBGMap
+ call ClearSprites
+ callba Function171d2b
+ callba Function104061
+ callba Function8cf53
+ ret
+
+Function171a11: ; 171a11 (5c:5a11)
+ call Functiona57
+ ld a, [wcd49]
+ bit 7, a
+ jr nz, .asm_171a2c
+ call Function171a36
+ callba Function8cf69
+ callba Function104061
+ jr Function171a11
+.asm_171a2c
+ callba Function8cf53
+ call ClearSprites
+ ret
+
+Function171a36: ; 171a36 (5c:5a36)
+ ld a, [wcd49]
+ ld e, a
+ ld d, 0
+ ld hl, Jumptable_171a45
+ add hl, de
+ add hl, de
+ ld a, [hli]
+ ld h, [hl]
+ ld l, a
+ jp [hl]
+
+Jumptable_171a45: ; 171a45 (5c:5a45)
+ dw Function171a95
+ dw Function171ac9
+ dw Function171a5d
+ dw Function171ad7
+ dw Function171a5d
+ dw Function171aec
+ dw Function171b4b
+ dw Function171b85
+ dw Function171bcc
+ dw Function171c2c
+ dw Function171c39
+ dw Function171c41
+
+
+Function171a5d: ; 171a5d (5c:5a5d)
+ ld a, [wc821]
+ bit 1, a
+ jr nz, .asm_171a6a
+ bit 0, a
+ ret nz
+ jp Function171c66
+.asm_171a6a
+ ld a, $0
+ call Function3e32
+ ld [wc300], a
+ ld a, l
+ ld [wc301], a
+ ld a, h
+ ld [wc302], a
+ ld a, $a
+ call Function3e32
+ ld a, [rSVBK] ; $ff00+$70
+ push af
+ ld a, $1
+ ld [rSVBK], a ; $ff00+$70
+ callba Function118452
+ pop af
+ ld [rSVBK], a ; $ff00+$70
+ ld a, $a
+ ld [wcd49], a
+ ret
+
+Function171a95: ; 171a95 (5c:5a95)
+ callba Function171ccd
+ hlcoord 2, 8
+ ld de, String_171aa7
+ call PlaceString
+ jp Function171c66
+; 171aa7 (5c:5aa7)
+
+String_171aa7: ; 171aa7
+ db "モバイルアダプタに"
+ next "せつぞく しています"
+ next "しばらく おまちください"
+ db "@"
+; 171ac9
+
+Function171ac9: ; 171ac9 (5c:5ac9)
+ ld de, wcd81
+ ld hl, $5c
+ ld a, $2
+ call Function3e32
+ jp Function171c66
+
+Function171ad7: ; 171ad7 (5c:5ad7)
+ xor a
+ ld hl, $c608
+ ld bc, $66
+ call ByteFill
+ ld de, $c608
+ ld a, $c
+ call Function3e32
+ jp Function171c66
+
+Function171aec: ; 171aec (5c:5aec)
+ ld a, [rSVBK] ; $ff00+$70
+ push af
+ ld a, $1
+ ld [rSVBK], a ; $ff00+$70
+ callba Function118452
+ pop af
+ ld [rSVBK], a ; $ff00+$70
+ hlcoord 2, 6
+ ld a, $8
+.asm_171b01
+ push af
+ push hl
+ xor a
+ ld bc, $10
+ call ByteFill
+ pop hl
+ ld de, $14
+ add hl, de
+ pop af
+ dec a
+ jr nz, .asm_171b01
+ hlcoord 2, 7
+ ld a, $3
+ ld de, $c608
+.asm_171b1b
+ push af
+ push hl
+ ld a, [de]
+ and a
+ jr z, .asm_171b34
+ ld a, [wcd4b]
+ inc a
+ ld [wcd4b], a
+ push hl
+ call Function171b42
+ pop hl
+ ld bc, $ffec
+ add hl, bc
+ call Function171b42
+.asm_171b34
+ pop hl
+ ld bc, $14
+ add hl, bc
+ add hl, bc
+ add hl, bc
+ pop af
+ dec a
+ jr nz, .asm_171b1b
+ jp Function171c66
+
+Function171b42: ; 171b42 (5c:5b42)
+ ld a, [de]
+ inc de
+ and a
+ ret z
+ sub $20
+ ld [hli], a
+ jr Function171b42
+
+Function171b4b: ; 171b4b (5c:5b4b)
+ lb de, $40, $10
+ ld a, $1d
+ call Function3b2a
+ ld hl, $c
+ add hl, bc
+ ld a, $8
+ ld [hl], a
+ lb de, $40, $98
+ ld a, $1d
+ call Function3b2a
+ ld hl, $c
+ add hl, bc
+ ld a, $9
+ ld [hl], a
+ lb de, $8a, $70
+ ld a, $1d
+ call Function3b2a
+ ld hl, $c
+ add hl, bc
+ ld a, $a
+ ld [hl], a
+ ld a, $4
+ ld [wcd23], a
+ ld a, $8
+ ld [wcd24], a
+ jp Function171c66
+
+Function171b85: ; 171b85 (5c:5b85)
+ ld hl, hJoyPressed ; $ffa7
+ ld a, [hl]
+ and $2
+ jp nz, Function171b9f
+ ld a, [hl]
+ and $1
+ jp nz, Function171bbd
+ ld a, [hl]
+ and $40
+ jr nz, asm_171ba5
+ ld a, [hl]
+ and $80
+ jr nz, asm_171baf
+ ret
+
+Function171b9f: ; 171b9f (5c:5b9f)
+ ld a, $80
+ ld [wcd49], a
+ ret
+asm_171ba5: ; 171ba5 (5c:5ba5)
+ ld a, [wcd4a]
+ and a
+ ret z
+ dec a
+ ld [wcd4a], a
+ ret
+asm_171baf: ; 171baf (5c:5baf)
+ ld a, [wcd4b]
+ ld c, a
+ ld a, [wcd4a]
+ cp c
+ ret z
+ inc a
+ ld [wcd4a], a
+ ret
+
+Function171bbd: ; 171bbd (5c:5bbd)
+ call PlayClickSFX
+ ld a, $8
+ ld [wcd23], a
+ xor a
+ ld [wcd24], a
+ jp Function171c66
+
+Function171bcc: ; 171bcc (5c:5bcc)
+ ld hl, hJoyPressed ; $ffa7
+ ld a, [hl]
+ and $2
+ jp nz, Function171bdc
+ ld a, [hl]
+ and $1
+ jp nz, Function171beb
+ ret
+
+Function171bdc: ; 171bdc (5c:5bdc)
+ ld a, $4
+ ld [wcd23], a
+ ld a, $8
+ ld [wcd24], a
+ ld hl, wcd49
+ dec [hl]
+ ret
+
+Function171beb: ; 171beb (5c:5beb)
+ ld a, $5
+ call GetSRAMBank
+ ld a, [wcd4a]
+ ld [$aa4a], a
+ call CloseSRAM
+ ld hl, MenuDataHeader_171c6b
+ call LoadMenuDataHeader
+ call Function1cbb
+ call Function1cfd
+ callba Function104061
+ hlcoord 1, 14
+ ld de, String_171c73
+ call PlaceString
+ ld a, [wcd4a]
+ cp $2
+ jr z, .asm_171c1f
+ ld a, $8
+ jr .asm_171c21
+.asm_171c1f
+ ld a, $c
+.asm_171c21
+ ld [wcd24], a
+ ld a, $1e
+ ld [wcd4c], a
+ call Function171c66
+
+Function171c2c: ; 171c2c (5c:5c2c)
+ ld hl, wcd4c
+ dec [hl]
+ ret nz
+ call Function1c07
+ call WhiteBGMap
+ jr asm_171c60
+
+Function171c39: ; 171c39 (5c:5c39)
+ ld a, $28
+ ld [wcd4c], a
+ call Function171c66
+
+Function171c41: ; 171c41 (5c:5c41)
+ ld hl, wcd4c
+ dec [hl]
+ ret nz
+ call WhiteBGMap
+ callba Function106462
+ callba Function106464
+ ld a, $2
+ ld [wc303], a
+ callba Function17f555
+asm_171c60: ; 171c60 (5c:5c60)
+ ld a, $80
+ ld [wcd49], a
+ ret
+
+Function171c66: ; 171c66 (5c:5c66)
+ ld hl, wcd49
+ inc [hl]
+ ret
+; 171c6b (5c:5c6b)
+
+MenuDataHeader_171c6b: ; 171c6b
+ db $40 ; flags
+ db 12, 0 ; start coords
+ db 17, 19 ; end coords
+ dw NULL
+ db 0 ; default option
+; 171c73
+
+String_171c73: ; 171c73
+ db "モバイルセンターを けってい"
+ next "しました@"
+; 171c87
+
+Function171c87: ; 171c87 (5c:5c87)
+ call DisableLCD
+ ld hl, GFX_171db1
+ ld de, $9000
+ ld bc, $6e0
+ call CopyBytes
+ ld hl, LZ_172abd
+ ld de, $8000
+ call Decompress
+ call EnableLCD
+ ld hl, Tilemap_172491
+ ld de, TileMap
+ ld bc, $168
+ call CopyBytes
+ ld hl, Attrmap_1727ed
+ ld de, AttrMap
+ ld bc, $168
+ call CopyBytes
+ hlcoord 3, 2
+ ld de, String_172e31
+ call PlaceString
+ hlcoord 3, 16
+ ld de, String_172e3f
+ call PlaceString
+ ret
+
+Function171ccd: ; 171ccd (5c:5ccd)
+ ld a, [rSVBK] ; $ff00+$70
+ push af
+ ld a, $5
+ ld [rSVBK], a ; $ff00+$70
+ ld hl, Palette_171d71
+ ld de, Unkn1Pals
+ ld bc, $40
+ call CopyBytes
+ ld hl, MovementAnimation
+ ld a, $ff
+ ld [hli], a
+ ld a, $7f
+ ld [hl], a
+ call Function32f9
+ pop af
+ ld [rSVBK], a ; $ff00+$70
+ ret
+
+Function171cf0: ; 171cf0 (5c:5cf0)
+ xor a
+ hlcoord 4, 15
+ ld [hli], a
+ ld [hli], a
+ ld a, [wcd4b]
+ xor $1
+ ld [wcd4b], a
+ and a
+ jr nz, .asm_171d16
+ ld hl, Tilemap_17251d
+ decoord 0, 7
+ ld bc, $8c
+ call CopyBytes
+ hlcoord 3, 16
+ ld de, String_172e3f
+ jp PlaceString
+.asm_171d16
+ ld hl, Tilemap_1725f9
+ decoord 0, 7
+ ld bc, $8c
+ call CopyBytes
+ hlcoord 3, 16
+ ld de, String_172e4e
+ jp PlaceString
+
+Function171d2b: ; 171d2b (5c:5d2b)
+ call DisableLCD
+ ld hl, GFX_171db1
+ ld de, $9000
+ ld bc, $6e0
+ call CopyBytes
+ ld hl, LZ_172abd
+ ld de, $8000
+ call Decompress
+ call EnableLCD
+ ld hl, Tilemap_172685
+ ld de, TileMap
+ ld bc, $168
+ call CopyBytes
+ ld hl, Attrmap_172955
+ ld de, AttrMap
+ ld bc, $168
+ call CopyBytes
+ hlcoord 2, 2
+ ld de, String_172e5d
+ call PlaceString
+ hlcoord 14, 16
+ ld de, String_172e58
+ call PlaceString
+ ret
+; 171d71 (5c:5d71)
+
+Palette_171d71:
+ RGB 0, 0, 0
+ RGB 3, 0, 0
+ RGB 5, 0, 0
+ RGB 31, 31, 29
+ RGB 0, 2, 10
+ RGB 2, 10, 21
+ RGB 0, 0, 0
+ RGB 10, 26, 31
+ RGB 0, 0, 0
+ RGB 0, 7, 8
+ RGB 31, 8, 0
+ RGB 1, 17, 15
+ RGB 31, 16, 0
+ RGB 31, 22, 0
+ RGB 31, 27, 0
+ RGB 31, 31, 0
+ RGB 31, 18, 6
+ RGB 0, 3, 0
+ RGB 0, 9, 0
+ RGB 0, 12, 0
+ RGB 0, 16, 0
+ RGB 0, 22, 0
+ RGB 0, 25, 0
+ RGB 0, 27, 0
+ RGB 5, 5, 16
+ RGB 8, 19, 28
+ RGB 0, 0, 0
+ RGB 31, 31, 31
+ RGB 31, 31, 29
+ RGB 21, 21, 20
+ RGB 11, 11, 10
+ RGB 0, 0, 0
+GFX_171db1:
+INCBIN "gfx/unknown/171db1.2bpp"
+Tilemap_172491:
+INCBIN "gfx/unknown/172491.tilemap"
+Tilemap_17251d:
+INCBIN "gfx/unknown/17251d.tilemap"
+Tilemap_1725f9:
+INCBIN "gfx/unknown/1725f9.tilemap"
+Tilemap_172685:
+INCBIN "gfx/unknown/172685.tilemap"
+Attrmap_1727ed:
+INCBIN "gfx/unknown/1727ed.attrmap"
+Attrmap_172955:
+INCBIN "gfx/unknown/172955.attrmap"
+LZ_172abd:
+INCBIN "gfx/pokedex/slowpoke.2bpp.lz"
+
+String_172e31: ; 172e31
+ db "パスワード", $1f, "いれてください@"
+String_172e3f: ; 172e3f
+ db "きりかえ やめる けってい@"
+String_172e4e: ; 172e4e
+ db "きりかえ やめる "
+String_172e58:
+ db "けってい@"
+String_172e5d: ; 172e5d
+ db "せつぞくする モバイルセンターを"
+ next "えらんで ください@"
+; 172e78
+
+
+Function172e78: ; 172e78 (5c:6e78)
+ ld a, $7f
+ ld hl, TileMap
+ ld bc, $168
+ call ByteFill
+ ld a, $7
+ ld hl, AttrMap
+ ld bc, $168
+ call ByteFill
+ call DisableLCD
+ ld hl, GFX_172f1f
+ ld de, $9000
+ ld bc, $610
+ call CopyBytes
+ call EnableLCD
+ ld hl, Tilemap_1733af
+ ld de, TileMap
+ ld bc, $168
+ call CopyBytes
+ ld hl, Attrmap_173517
+ ld de, AttrMap
+ ld bc, $168
+ call CopyBytes
+ ret
+; 172eb9 (5c:6eb9)
+
+Function172eb9:
+ ld a, [rSVBK] ; $ff00+$70
+ push af
+ ld a, $5
+ ld [rSVBK], a ; $ff00+$70
+ ld hl, Palette_172edf
+ ld de, Unkn1Pals
+ ld bc, $40
+ call CopyBytes
+ ld hl, Palette_172edf
+ ld de, BGPals
+ ld bc, $40
+ call CopyBytes
+ call Function32f9
+ pop af
+ ld [rSVBK], a ; $ff00+$70
+ ret
+; 172edf (5c:6edf)
+
+Palette_172edf:
+ RGB 5, 12, 17
+ RGB 31, 31, 31
+ RGB 18, 25, 28
+ RGB 10, 17, 21
+ RGB 6, 13, 18
+ RGB 31, 31, 31
+ RGB 20, 26, 28
+ RGB 12, 19, 23
+ RGB 3, 10, 16
+ RGB 31, 31, 31
+ RGB 6, 13, 18
+ RGB 20, 26, 28
+ RGB 0, 0, 0
+ RGB 0, 0, 0
+ RGB 0, 0, 0
+ RGB 0, 0, 0
+ RGB 0, 0, 0
+ RGB 0, 0, 0
+ RGB 0, 0, 0
+ RGB 0, 0, 0
+ RGB 0, 0, 0
+ RGB 0, 0, 0
+ RGB 0, 0, 0
+ RGB 0, 0, 0
+ RGB 5, 5, 16
+ RGB 8, 19, 28
+ RGB 0, 0, 0
+ RGB 31, 31, 31
+ RGB 31, 31, 31
+ RGB 0, 0, 0
+ RGB 0, 0, 0
+ RGB 0, 0, 0
+
+GFX_172f1f:
+INCBIN "gfx/unknown/172f1f.2bpp"
+
+Tilemap_1733af:
+INCBIN "gfx/unknown/1733af.tilemap"
+
+Attrmap_173517:
+INCBIN "gfx/unknown/173517.attrmap"
+
+
diff --git a/misc/mobile_5f.asm b/misc/mobile_5f.asm
new file mode 100644
index 000000000..375701a2c
--- /dev/null
+++ b/misc/mobile_5f.asm
@@ -0,0 +1,5234 @@
+
+SECTION "bank5F", ROMX, BANK[$5F]
+
+Function17c000: ; 17c000
+
+ call DisableLCD
+
+ ld hl, VTiles2
+ ld bc, $310
+ xor a
+ call ByteFill
+
+ call Functione51
+ call Functione5f
+
+ ld hl, HaveWantMap
+ ld de, TileMap
+ ld bc, AttrMap
+
+ ld a, SCREEN_HEIGHT
+.y
+ push af
+ ld a, SCREEN_WIDTH
+
+ push hl
+.x
+ push af
+ ld a, [hli]
+ ld [de], a
+ inc de
+ ld a, [hli]
+ ld [bc], a
+ inc bc
+ pop af
+ dec a
+ jr nz, .x
+ pop hl
+
+ push bc
+ ld bc, BG_MAP_WIDTH * 2
+ add hl, bc
+ pop bc
+
+ pop af
+ dec a
+ jr nz, .y
+
+ ld a, [rSVBK]
+ push af
+
+ ld a, 5 ; BANK(Unkn1Pals)
+ ld [rSVBK], a
+
+ ld hl, HaveWantPals
+ ld de, Unkn1Pals
+ ld bc, $80
+ call CopyBytes
+
+ pop af
+ ld [rSVBK], a
+
+ ld hl, MobileSelectGFX
+ ld de, $8300
+ ld bc, $200
+ call CopyBytes
+
+ ld a, 1
+ ld [rVBK], a
+
+ ld hl, HaveWantGFX
+ ld de, VTiles2
+ ld bc, $800
+ call CopyBytes
+
+ ld hl, HaveWantGFX + $800
+ ld de, VTiles1
+ ld bc, $100
+ call CopyBytes
+
+ xor a
+ ld [rVBK], a
+
+ call EnableLCD
+ callba Function104061
+ ret
+; 17c083
+
+HaveWantGFX: ; 17c083
+INCBIN "gfx/mobile/havewant.2bpp"
+
+MobileSelectGFX: ; 17c983
+INCBIN "gfx/mobile/select.2bpp"
+
+HaveWantMap: ; 17cb83
+; Interleaved tile/palette map.
+INCBIN "baserom.gbc", $17cb83, $17cff3 - $17cb83
+
+HaveWantPals: ; 17cff3
+; BG and OBJ palettes.
+INCBIN "baserom.gbc", $17cff3, $17d073 - $17cff3
+
+
+Function17d073: ; 17d073
+.asm_17d073
+ ld a, [de]
+ inc de
+ and a
+ jr z, .asm_17d0ae
+ cp $60
+ jr nc, .asm_17d0ae
+ cp $4e
+ jr z, .asm_17d0ae
+ cp $50
+ jr z, .asm_17d0b1
+ cp $5
+ jr c, .asm_17d0ac
+ cp $14
+ jr c, .asm_17d0ae
+ cp $19
+ jr c, .asm_17d0ac
+ cp $1d
+ jr c, .asm_17d0ae
+ cp $26
+ jr c, .asm_17d0ac
+ cp $35
+ jr c, .asm_17d0ae
+ cp $3a
+ jr c, .asm_17d0ac
+ cp $3f
+ jr c, .asm_17d0ae
+ cp $40
+ jr c, .asm_17d0ac
+ cp $49
+ jr c, .asm_17d0ae
+
+.asm_17d0ac
+ scf
+ ret
+
+.asm_17d0ae
+ dec c
+ jr nz, .asm_17d073
+
+.asm_17d0b1
+ and a
+ ret
+; 17d0b3
+
+Function17d0b3: ; 17d0b3
+.asm_17d0b3
+ 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
+ cp $5
+ jr c, .asm_17d0ec
+ cp $14
+ jr c, .asm_17d0ee
+ cp $19
+ jr c, .asm_17d0ec
+ cp $1d
+ jr c, .asm_17d0ee
+ cp $26
+ jr c, .asm_17d0ec
+ 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
+ scf
+ ret
+
+.asm_17d0ee
+ dec c
+ jr nz, .asm_17d0b3
+ and a
+ ret
+; 17d0f3
+
+Function17d0f3: ; 17d0f3
+ ld a, [$c608 + 5]
+ ld [wc702], a
+ ld [CurPartySpecies], a
+ ld a, [wcd81]
+ ld [wc74e], a
+ ld hl, $c63d
+ ld de, wc724
+ ld bc, $0005
+ call CopyBytes
+ ld a, $50
+ ld [de], a
+ ld a, [$c608 + 11]
+ ld [wc731], a
+ ld a, [$c608 + 12]
+ ld [wc732], a
+ ld hl, $c608 + 26
+ ld a, [hli]
+ ld [wc72f], a
+ ld a, [hl]
+ ld [wc730], a
+ ld bc, $c608 + 5
+ callba GetCaughtGender
+ ld a, c
+ ld [wc733], a
+ call SpeechTextBox
+ call FadeToMenu
+ callba Function10804d
+ callba Function17d1f1
+ ld a, $1
+ ld [wd1e9], a
+ ld a, $2
+ ld [InLinkBattle], a
+ callba Function421d8
+ xor a
+ ld [InLinkBattle], a
+ callba Function14a58
+ ld a, $5
+ call GetSRAMBank
+ ld a, $5
+ ld [$a800], a
+ call CloseSRAM
+ ld a, [MapGroup]
+ ld b, a
+ ld a, [MapNumber]
+ ld c, a
+ call GetMapTrigger
+ ld a, d
+ or e
+ jr z, .asm_17d180
+ ld a, $1
+ ld [de], a
+
+.asm_17d180
+ call Function2b3c
+ call RestartMapMusic
+ ret
+; 17d187
+
+Function17d187: ; 17d187
+ ld hl, Unknown_17d194
+ ld de, $c63d
+ ld bc, $0005
+ call CopyBytes
+ ret
+; 17d194
+
+Unknown_17d194:
+INCBIN "baserom.gbc", $17d194, $17d199 - $17d194
+
+Function17d199: ; 17d199
+ ld hl, Unknown_17d1a6
+ ld de, $c642
+ ld bc, $0005
+ call CopyBytes
+ ret
+; 17d1a6
+
+Unknown_17d1a6:
+INCBIN "baserom.gbc", $17d1a6, $17d1ab - $17d1a6
+
+Function17d1ab: ; 17d1ab
+ ld a, $50
+ ld hl, $c647
+ ld bc, $0021
+ call ByteFill
+ ld hl, Unknown_17d1c3
+ ld de, $c647
+ ld bc, $0006
+ call CopyBytes
+ ret
+; 17d1c3
+
+Unknown_17d1c3:
+INCBIN "baserom.gbc", $17d1c3, $17d1c9 - $17d1c3
+
+Function17d1c9: ; 17d1c9
+ ld a, $50
+ ld de, $c668
+ ld bc, $0005
+ call ByteFill
+ ld hl, Unknown_17d194
+ ld de, $c668
+ ld bc, $0005
+ call CopyBytes
+ ret
+; 17d1e1
+
+Function17d1e1: ; 17d1e1
+.asm_17d1e1
+ ld a, [de]
+ inc de
+ cp $4e
+ jr nz, .asm_17d1ea
+ dec b
+ jr z, .asm_17d1ef
+
+.asm_17d1ea
+ dec c
+ jr nz, .asm_17d1e1
+ and a
+ ret
+
+.asm_17d1ef
+ scf
+ ret
+; 17d1f1
+
+Function17d1f1: ; 17d1f1
+ ld a, [CurPartySpecies]
+ dec a
+ call SetSeenAndCaughtMon
+
+ ld a, [CurPartySpecies]
+ cp UNOWN
+ jr nz, .asm_17d223
+
+ ld hl, PartyMon1DVs
+ ld a, [PartyCount]
+ dec a
+ ld bc, PartyMon2 - PartyMon1
+ call AddNTimes
+ predef GetUnownLetter
+ callab Functionfba18
+ ld a, [wdef4]
+ and a
+ jr nz, .asm_17d223
+
+ ld a, [UnownLetter]
+ ld [wdef4], a
+
+.asm_17d223
+ ret
+; 17d224
+
+Function17d224: ; 17d224
+ ld a, [ScriptVar]
+ and a
+ jr nz, .asm_17d234
+ ld a, $4
+ ld [ScriptVar], a
+ ld hl, MenuDataHeader_17d26a
+ jr .asm_17d23c
+
+.asm_17d234
+ ld a, $4
+ ld [ScriptVar], a
+ ld hl, MenuDataHeader_17d28f
+
+.asm_17d23c
+ call LoadMenuDataHeader
+ call Function17d246
+ call Function1c17
+ ret
+; 17d246
+
+Function17d246: ; 17d246
+ call Function1d81
+ jr c, .asm_17d264
+ ld a, [ScriptVar]
+ cp $5
+ jr nz, .asm_17d25d
+ ld a, [wcfa9]
+ cp $3
+ ret z
+ jr c, .asm_17d25d
+ dec a
+ jr .asm_17d260
+
+.asm_17d25d
+ ld a, [wcfa9]
+
+.asm_17d260
+ ld [ScriptVar], a
+ ret
+
+.asm_17d264
+ ld a, $4
+ ld [ScriptVar], a
+ ret
+; 17d26a
+
+MenuDataHeader_17d26a: ; 17d26a
+ db $40 ; flags
+ db 0, 0 ; start coords
+ db 9, 14 ; end coords
+ dw MenuData2_17d272
+ db 1 ; default option
+
+MenuData2_17d272: ; 17d272
+ db $a0 ; flags
+ db 4
+ db "ニュース", $1f, "よみこむ@"
+ db "ニュース", $1f, "みる@"
+ db "せつめい@"
+ db "やめる@"
+; 17d28f
+
+MenuDataHeader_17d28f: ; 17d28f
+ db $40 ; flags
+ db 0, 0 ; start coords
+ db 7, 14 ; end coords
+ dw MenuData2_17d297
+ db 1 ; default option
+
+MenuData2_17d297: ; 17d297
+ db $a0 ; flags
+ db 3
+ db "Challenge@"
+ db "Explanation@"
+ db "Cancel@"
+; 17d2b6
+
+Function17d2b6: ; 17d2b6
+ call Function17d2c0
+ callba Function1181da
+ ret
+; 17d2c0
+
+Function17d2c0: ; 17d2c0
+ xor a
+ ld [wcf63], a
+ ld [wcf64], a
+ ld [wcf65], a
+ ld [wcf66], a
+ ret
+; 17d2ce
+
+Function17d2ce: ; 17d2ce
+ ld a, $5
+ call GetSRAMBank
+ ld a, [$aa72]
+ call CloseSRAM
+ and a
+ jr nz, .asm_17d2e2
+ ld a, $1
+ ld [ScriptVar], a
+ ret
+
+.asm_17d2e2
+ call Function17d314
+ ret c
+ call SpeechTextBox
+ call FadeToMenu
+ ld a, [rSVBK]
+ push af
+ ld a, $4
+ ld [rSVBK], a
+ call Function17d370
+ call Function17d45a
+ pop af
+ ld [rSVBK], a
+ ld de, MUSIC_MOBILE_CENTER
+ ld a, e
+ ld [wMapMusic], a
+ ld [MusicFadeIDLo], a
+ ld a, d
+ ld [MusicFadeIDHi], a
+ call PlayMusic
+ call Function222a
+ call Function2b3c
+ ret
+; 17d314
+
+Function17d314: ; 17d314
+ ld a, $5
+ call GetSRAMBank
+ ld a, [$b1b1]
+ call CloseSRAM
+ cp $21
+ jr nc, .asm_17d354
+ ld a, $6
+ call GetSRAMBank
+ ld l, $0
+ ld h, l
+ ld de, $a006
+ ld a, [$a004]
+ ld c, a
+ ld a, [$a005]
+ ld b, a
+.asm_17d336
+ push bc
+ ld a, [de]
+ inc de
+ ld c, a
+ ld b, $0
+ add hl, bc
+ pop bc
+ dec bc
+ ld a, b
+ or c
+ jr nz, .asm_17d336
+ ld a, [$a002]
+ cp l
+ jr nz, .asm_17d354
+ ld a, [$a003]
+ cp h
+ jr nz, .asm_17d354
+ call CloseSRAM
+ and a
+ ret
+
+.asm_17d354
+ call CloseSRAM
+ ld a, $5
+ call GetSRAMBank
+ xor a
+ ld hl, $aa73
+ ld bc, $000c
+ call ByteFill
+ call CloseSRAM
+ ld a, $2
+ ld [ScriptVar], a
+ scf
+ ret
+; 17d370
+
+Function17d370: ; 17d370
+ xor a
+ ld [wcd77], a
+ ld [wcd78], a
+ ld [wcd79], a
+ dec a
+ ld [wcd6c], a
+ call WhiteBGMap
+ call ClearSprites
+ call ClearScreen
+ callba Function104061
+ call DisableLCD
+ ld hl, $8ee0
+ ld de, $c608
+ ld bc, $0010
+ call CopyBytes
+ ld a, $1
+ ld [rVBK], a
+ ld hl, PokemonNewsGFX
+ ld de, VTiles1
+ ld bc, $0480
+ call CopyBytes
+ xor a
+ ld hl, $97f0
+ ld bc, $0010
+ call ByteFill
+ ld hl, $c608
+ ld de, $8ee0
+ ld bc, $0010
+ call CopyBytes
+ xor a
+ ld [rVBK], a
+ ld hl, GFX_17eb7e
+ ld de, $9600
+ ld bc, $0010
+ call CopyBytes
+ call EnableLCD
+ call Function17d60b
+ ld a, $0
+ ld [BGMapBuffer], a
+ ld a, $d0
+ ld [wcd21], a
+ ld a, $6
+ call GetSRAMBank
+ ld hl, $a006
+ ld de, Unkn1Pals
+ ld bc, $1000
+ call CopyBytes
+ call CloseSRAM
+ ret
+; 17d3f6
+
+Function17d3f6: ; 17d3f6
+ call WhiteBGMap
+ call ClearSprites
+ call ClearScreen
+ callba Function104061
+
+Function17d405:
+ call DisableLCD
+ ld hl, $8ee0
+ ld de, $c608
+ ld bc, $0010
+ call CopyBytes
+ ld a, $1
+ ld [rVBK], a
+ ld hl, PokemonNewsGFX
+ ld de, VTiles1
+ ld bc, $0480
+ call CopyBytes
+ xor a
+ ld hl, $97f0
+ ld bc, $0010
+ call ByteFill
+ ld hl, $c608
+ ld de, $8ee0
+ ld bc, $0010
+ call CopyBytes
+ xor a
+ ld [rVBK], a
+ call EnableLCD
+ ld a, [rSVBK]
+ push af
+ ld a, $5
+ ld [rSVBK], a
+ ld hl, Palette_17eff6
+ ld de, Unkn1Pals
+ ld bc, $0040
+ call CopyBytes
+ call Function32f9
+ pop af
+ ld [rSVBK], a
+ ret
+; 17d45a
+
+Function17d45a: ; 17d45a
+.asm_17d45a
+ call Functiona57
+ ld a, [wcd77]
+ bit 7, a
+ jr nz, .asm_17d46f
+ call Function17d474
+ callba Function104061
+ jr .asm_17d45a
+
+.asm_17d46f
+ xor a
+ ld [ScriptVar], a
+ ret
+; 17d474
+
+Function17d474: ; 17d474
+ ld a, [wcd77]
+ ld e, a
+ ld d, 0
+ ld hl, Jumptable_17d483
+ add hl, de
+ add hl, de
+ ld a, [hli]
+ ld h, [hl]
+ ld l, a
+ jp [hl]
+; 17d483
+
+Jumptable_17d483: ; 17d483
+ dw Function17d48d
+ dw Function17d5be
+ dw Function17d5c4
+ dw Function17d6fd
+ dw Function17e427
+; 17d48d
+
+Function17d48d: ; 17d48d
+ ld hl, Palette_17eff6
+ ld de, $c608
+ ld bc, $0040
+ call CopyBytes
+ ld hl, TileAttrmap_17eb8e
+ ld de, TileMap
+ ld bc, AttrMap
+ ld a, $12
+.asm_17d4a4
+ push af
+ ld a, $14
+ push hl
+.asm_17d4a8
+ push af
+ ld a, [hli]
+ cp $7f
+ jr z, .asm_17d4b0
+ add $80
+
+.asm_17d4b0
+ ld [de], a
+ inc de
+ ld a, [hli]
+ ld [bc], a
+ inc bc
+ pop af
+ dec a
+ jr nz, .asm_17d4a8
+ pop hl
+ push bc
+ ld bc, $0040
+ add hl, bc
+ pop bc
+ pop af
+ dec a
+ jr nz, .asm_17d4a4
+ ld a, [BGMapBuffer]
+ ld l, a
+ ld a, [wcd21]
+ ld h, a
+ ld a, [hli]
+ ld e, a
+ ld a, [wcd6c]
+ cp e
+ jr z, .asm_17d4e0
+ ld a, e
+ ld [wcd6c], a
+ ld [wc2c0], a
+ ld d, $0
+ call PlayMusic2
+
+.asm_17d4e0
+ ld a, [hli]
+ ld de, $c608
+ ld c, $8
+.asm_17d4e6
+ srl a
+ jr nc, .asm_17d4f6
+ ld b, $8
+ push af
+.asm_17d4ed
+ ld a, [hli]
+ ld [de], a
+ inc de
+ dec b
+ jr nz, .asm_17d4ed
+ pop af
+ jr .asm_17d4fc
+
+.asm_17d4f6
+ push af
+ ld a, e
+ add $8
+ ld e, a
+ pop af
+
+.asm_17d4fc
+ dec c
+ jr nz, .asm_17d4e6
+ push hl
+ call Function17d5f6
+ pop hl
+ ld a, [hli]
+ and a
+ jr z, .asm_17d539
+.asm_17d508
+ push af
+ ld a, [hli]
+ ld [wcd4f], a
+ ld a, [hli]
+ ld [wcd50], a
+ ld a, [hli]
+ ld [wcd51], a
+ ld a, [hli]
+ ld [wcd52], a
+ ld a, [hli]
+ sla a
+ sla a
+ sla a
+ add $98
+ ld [wcd53], a
+ ld de, wcd4f
+ call Function17e613
+ ld a, [hli]
+ ld [wcd53], a
+ ld de, wcd4f
+ call Function17e691
+ pop af
+ dec a
+ jr nz, .asm_17d508
+
+.asm_17d539
+ ld a, [hli]
+.asm_17d53a
+ push af
+ ld a, [hli]
+ ld c, a
+ ld a, [hli]
+ ld b, a
+ push hl
+ pop de
+ ld hl, TileMap
+ add hl, bc
+ call PlaceString
+ push de
+ pop hl
+ inc hl
+ pop af
+ dec a
+ jr nz, .asm_17d53a
+ ld de, CreditsTimer
+ ld bc, $000c
+ call CopyBytes
+ xor a
+ ld [wcd2e], a
+ ld [wcd2f], a
+ inc a
+ ld [wcd30], a
+ ld [wcd31], a
+ ld de, wcd32
+ ld bc, $0010
+ call CopyBytes
+ ld a, [hli]
+ ld [wcd42], a
+ ld a, [hli]
+ ld [wcd43], a
+ ld a, [hli]
+ ld [wcd44], a
+ ld a, [hli]
+ ld [wcd45], a
+ ld a, [hli]
+ ld [wcd46], a
+ ld a, [hli]
+ and a
+ jr z, .asm_17d58a
+ call Function17d6a1
+
+.asm_17d58a
+ ld a, l
+ ld [wcd49], a
+ ld a, h
+ ld [wcd4a], a
+ ld a, [wcd42]
+ ld c, a
+ ld b, $0
+ add hl, bc
+ add hl, bc
+ ld a, l
+ ld [wcd4b], a
+ ld a, h
+ ld [wcd4c], a
+ add hl, bc
+ add hl, bc
+ ld a, l
+ ld [wcd4d], a
+ ld a, h
+ ld [wcd4e], a
+ call Function17e451
+ call Function17e55b
+ call Function17e5af
+ callba Function104061
+ jp Function17e438
+; 17d5be
+
+Function17d5be: ; 17d5be
+ call Function32f9
+ call Function17e438
+
+Function17d5c4:
+ ld a, [hJoyPressed]
+ and a
+ ret z
+ ld c, $0
+ ld b, c
+ ld hl, wcd32
+.asm_17d5ce
+ srl a
+ jr c, .asm_17d5d6
+ inc c
+ inc c
+ jr .asm_17d5ce
+
+.asm_17d5d6
+ add hl, bc
+ ld a, [hli]
+ ld c, a
+ ld a, [hli]
+ ld b, a
+ and c
+ cp $ff
+ ret z
+ ld a, [BGMapBuffer]
+ ld l, a
+ ld a, [wcd21]
+ ld h, a
+ add hl, bc
+ ld a, l
+ ld [wcd78], a
+ ld a, h
+ ld [wcd79], a
+ ld a, $3
+ ld [wcd77], a
+ ret
+; 17d5f6
+
+Function17d5f6: ; 17d5f6
+ ld a, $5
+ ld [rSVBK], a
+ ld hl, $c608
+ ld de, Unkn1Pals
+ ld bc, $0040
+ call CopyBytes
+ ld a, $4
+ ld [rSVBK], a
+ ret
+; 17d60b
+
+Function17d60b: ; 17d60b
+ ld a, $5
+ call GetSRAMBank
+ ld hl, $b1d3
+ ld de, $c608
+ ld bc, $0020
+ call CopyBytes
+ ld a, [$b1b1]
+ ld c, a
+ ld a, [$b1b2]
+ ld b, a
+ ld a, [$b1b3]
+ ld l, a
+ ld a, [$b1b4]
+ ld h, a
+ call CloseSRAM
+ ld a, $6
+ call GetSRAMBank
+ ld de, wc708
+ ld a, c
+ and a
+ jr z, .asm_17d684
+.asm_17d63b
+ push bc
+ ld a, l
+ ld [de], a
+ inc de
+ ld a, h
+ ld [de], a
+ inc de
+ ld bc, $000a
+ add hl, bc
+ pop bc
+ ld a, [hli]
+ ld [wcd4a], a
+ ld a, [hli]
+ ld [wcd49], a
+ push hl
+ push de
+ ld hl, $c608
+ ld e, b
+ ld d, $0
+ add hl, de
+ ld a, [hli]
+ ld [wcd4b], a
+ ld a, [hl]
+ ld [wcd4c], a
+ pop de
+ pop hl
+ inc b
+ inc b
+ dec c
+ dec c
+ jr z, .asm_17d684
+ push bc
+ push de
+ ld a, [wcd49]
+ ld c, a
+ ld a, [wcd4a]
+ ld b, a
+ ld a, [wcd4b]
+ ld e, a
+ ld a, [wcd4c]
+ ld d, a
+.asm_17d67a
+ add hl, de
+ dec bc
+ ld a, c
+ or b
+ jr nz, .asm_17d67a
+ pop de
+ pop bc
+ jr .asm_17d63b
+
+.asm_17d684
+ call CloseSRAM
+ ld a, $5
+ call GetSRAMBank
+ ld hl, wc708
+ ld de, $b1b3
+ ld a, [$b1b1]
+ ld c, a
+ ld a, [$b1b2]
+ ld b, a
+ call CopyBytes
+ call CloseSRAM
+ ret
+; 17d6a1
+
+
+Function17d6a1: ; 17d6a1
+ push hl
+ ld a, [wcd6e]
+ ld c, a
+ ld b, $0
+ ld a, $5
+ call GetSRAMBank
+ ld hl, $b1d3
+ add hl, bc
+ add hl, bc
+ ld a, [hli]
+ ld [wcd47], a
+ ld a, [hl]
+ ld [BGMapPalBuffer], a
+ ld hl, $b1b3
+ add hl, bc
+ add hl, bc
+ ld a, [hli]
+ ld c, a
+ ld a, [hl]
+ ld h, a
+ ld l, c
+ call CloseSRAM
+ ld a, $6
+ call GetSRAMBank
+ ld a, l
+ ld [wcd5e], a
+ ld a, h
+ ld [wcd5f], a
+ ld de, wcd60
+ ld bc, $0004
+ call CopyBytes
+ inc hl
+ inc hl
+ ld de, wcd64
+ ld bc, $0004
+ call CopyBytes
+ ld a, [hli]
+ ld [wcd69], a
+ ld a, [hli]
+ ld [wcd68], a
+ ld a, l
+ ld [wcd6a], a
+ ld a, h
+ ld [wcd6b], a
+ call CloseSRAM
+ pop hl
+ ret
+; 17d6fd
+
+Function17d6fd: ; 17d6fd
+ ld a, [wcd77]
+ bit 7, a
+ jr nz, asm_17d721
+ ld a, [wcd78]
+ ld l, a
+ ld a, [wcd79]
+ ld h, a
+ ld a, [hl]
+ cp $ff
+ jr z, asm_17d721
+
+Function17d711:
+.asm_17d711
+ cp $31
+ jr nc, .asm_17d711
+ ld e, a
+ ld d, 0
+ ld hl, Jumptable_17d72a
+ add hl, de
+ add hl, de
+ ld a, [hli]
+ ld h, [hl]
+ ld l, a
+ jp [hl]
+
+asm_17d721
+ call Function17e5af
+ ld a, $2
+ ld [wcd77], a
+ ret
+; 17d72a
+
+Jumptable_17d72a: ; 17d72a
+ dw Function17d78c
+ dw Function17d78d
+ dw Function17d7b4
+ dw Function17d7c2
+ dw Function17d7d3
+ dw Function17d7e5
+ dw Function17d818
+ dw Function17d833
+ dw Function17d85d
+ dw Function17d902
+ dw Function17d93a
+ dw Function17d98b
+ dw Function17d9e3
+ dw Function17da31
+ dw Function17da9c
+ dw Function17dadc
+ dw Function17db2d
+ dw Function17db56
+ dw Function17db77
+ dw Function17dbe9
+ dw Function17dc1f
+ dw Function17dc9f
+ dw Function17dca9
+ dw Function17dccf
+ dw Function17dd13
+ dw Function17dd30
+ dw Function17dd49
+ dw Function17ddcd
+ dw Function17de32
+ dw Function17de91
+ dw Function17ded9
+ dw Function17e0fd
+ dw Function17e133
+ dw Function17e165
+ dw Function17e1a1
+ dw Function17e254
+ dw Function17e261
+ dw Function17e270
+ dw Function17e27f
+ dw Function17e293
+ dw Function17e2a7
+ dw Function17e367
+ dw Function17e37e
+ dw Function17e395
+ dw Function17e3ac
+ dw Function17e3c3
+ dw Function17e3e0
+ dw Function17e3f0
+ dw Function17e409
+; 17d78c
+
+Function17d78c: ; 17d78c
+ ret
+; 17d78d
+
+Function17d78d: ; 17d78d
+ call Function17e415
+ ld a, [hli]
+ ld c, a
+ ld a, [hli]
+ ld b, a
+ call Function17e41e
+ ld a, $6
+ call GetSRAMBank
+ ld hl, $a006
+ add hl, bc
+ ld de, Unkn1Pals
+ ld bc, $1000
+ call CopyBytes
+ call CloseSRAM
+ xor a
+ ld [wcd77], a
+ call WhiteBGMap
+ ret
+; 17d7b4
+
+Function17d7b4: ; 17d7b4
+ call Function17e415
+ ld a, [hli]
+ ld e, a
+ ld d, $0
+ call PlayMusic2
+ call Function17e41e
+ ret
+; 17d7c2
+
+Function17d7c2: ; 17d7c2
+ call Function17e415
+ ld a, [hli]
+ ld e, a
+ ld d, $0
+ call PlaySFX
+ call WaitSFX
+ call Function17e41e
+ ret
+; 17d7d3
+
+Function17d7d3: ; 17d7d3
+ call Function17e415
+ ld a, [hli]
+ dec a
+ ld e, a
+ ld d, $0
+ call PlayCryHeader
+ call WaitSFX
+ call Function17e41e
+ ret
+; 17d7e5
+
+Function17d7e5: ; 17d7e5
+ call Function17e415
+ ld a, [hli]
+ ld [wcd4f], a
+ ld a, [hli]
+ ld [wcd50], a
+ ld a, [hli]
+ ld [wcd51], a
+ ld a, [hli]
+ ld [wcd52], a
+ ld a, [hli]
+ sla a
+ sla a
+ sla a
+ add $98
+ ld [wcd53], a
+ ld de, wcd4f
+ call Function17e613
+ ld a, [hli]
+ ld [wcd53], a
+ ld de, wcd4f
+ call Function17e691
+ call Function17e41e
+ ret
+; 17d818
+
+Function17d818: ; 17d818
+ call Function17e415
+ ld a, [hli]
+ ld c, a
+ ld a, [hli]
+ ld b, a
+ ld a, [hli]
+ ld e, a
+ ld a, [hli]
+ ld d, a
+ call Function17e41e
+ call Function17e447
+ ld e, l
+ ld d, h
+ ld hl, TileMap
+ add hl, bc
+ call PlaceString
+ ret
+; 17d833
+
+Function17d833: ; 17d833
+ call Function17e415
+ ld a, [hli]
+ ld e, a
+ ld a, [hli]
+ ld d, a
+ ld a, [hli]
+ ld c, a
+ ld a, [hli]
+ ld b, a
+ call Function17e41e
+ push de
+ push bc
+ call Function17e32b
+ pop bc
+ pop de
+ call Function17e43d
+ ld c, l
+ ld b, h
+ ld hl, TileMap
+ add hl, de
+ ld e, l
+ ld d, h
+ callba Function11c08f
+ call Function17e349
+ ret
+; 17d85d
+
+Function17d85d: ; 17d85d
+ call Function17e415
+ ld a, [hli]
+ ld e, a
+ ld a, [hli]
+ ld d, a
+ push hl
+ ld hl, Unkn1Pals
+ add hl, de
+ ld de, wcc60
+.asm_17d86c
+ ld a, [hli]
+ ld [de], a
+ inc de
+ and a
+ jr nz, .asm_17d86c
+ pop hl
+ ld de, $c608
+ ld c, $0
+.asm_17d878
+ ld a, [hli]
+ cp $ff
+ jr z, .asm_17d8c7
+ ld [wcd4f], a
+ ld a, [hli]
+ ld [wcd50], a
+ ld a, [hli]
+ ld [wcd51], a
+ ld a, [hli]
+ ld [wcd52], a
+ ld a, [wcd51]
+ push af
+ cp $c0
+ jr c, .asm_17d89b
+ ld a, [wcd4f]
+ ld [rSVBK], a
+ jr .asm_17d8a1
+
+.asm_17d89b
+ ld a, [wcd4f]
+ call GetSRAMBank
+
+.asm_17d8a1
+ push hl
+ ld a, [wcd50]
+ ld l, a
+ ld a, [wcd51]
+ ld h, a
+ ld a, [wcd52]
+.asm_17d8ad
+ push af
+ ld a, [hli]
+ ld [de], a
+ inc de
+ inc c
+ pop af
+ dec a
+ jr nz, .asm_17d8ad
+ pop hl
+ pop af
+ cp $c0
+ jr c, .asm_17d8c2
+ ld a, $4
+ ld [rSVBK], a
+ jr .asm_17d878
+
+.asm_17d8c2
+ call CloseSRAM
+ jr .asm_17d878
+
+.asm_17d8c7
+ call Function17e41e
+ push bc
+ ld a, $3
+ ld [rSVBK], a
+ ld hl, $c608
+ ld de, Unkn1Pals
+ ld b, $0
+ call CopyBytes
+ ld a, $4
+ ld [rSVBK], a
+ call Function17e32b
+ pop bc
+ ld a, c
+ ld [wcd3b], a
+ xor a
+ ld [wcf66], a
+ callba Function118329
+ ld a, [wc300]
+ and a
+ jr z, .asm_17d8fe
+ cp $a
+ jr z, .asm_17d8fe
+ call Function17e309
+ ret
+
+.asm_17d8fe
+ call Function17e349
+ ret
+; 17d902
+
+Function17d902: ; 17d902
+ call Function17e415
+ ld a, [hli]
+ ld e, a
+ ld a, [hli]
+ ld d, a
+ push de
+ call Function17e41e
+ call Function17e32b
+ pop de
+ ld hl, Unkn1Pals
+ add hl, de
+ ld de, wcc60
+.asm_17d918
+ ld a, [hli]
+ ld [de], a
+ inc de
+ and a
+ jr nz, .asm_17d918
+ xor a
+ ld [wcf66], a
+ callba Function11837a
+ ld a, [wc300]
+ and a
+ jr z, .asm_17d936
+ cp $a
+ jr z, .asm_17d936
+ call Function17e309
+ ret
+
+.asm_17d936
+ call Function17e349
+ ret
+; 17d93a
+
+Function17d93a: ; 17d93a
+ call Function17e415
+ ld de, wc708
+ ld bc, $0005
+ call CopyBytes
+ call Function17e41e
+ call Function17e32b
+ ld a, [rSVBK]
+ push af
+ ld a, $1
+ ld [rSVBK], a
+ ld a, [wc70c]
+ call Function17e6de
+ ld a, [wc70a]
+ ld [CurPartySpecies], a
+ ld a, [wc70c]
+ ld e, a
+ callba Function8bc6
+ call Function32f9
+ ld a, [wc708]
+ ld l, a
+ ld a, [wc709]
+ ld h, a
+ ld a, [wc70b]
+ ld c, a
+ ld de, TileMap
+ add hl, de
+ ld e, l
+ ld d, h
+ callba Functiond066e
+ pop af
+ ld [rSVBK], a
+ call Function17e349
+ ret
+; 17d98b
+
+Function17d98b: ; 17d98b
+ call Function17e415
+ ld de, wc708
+ ld bc, $0004
+ call CopyBytes
+ call Function17e41e
+ call Function17e32b
+ ld a, [rSVBK]
+ push af
+ ld a, $1
+ ld [rSVBK], a
+ ld a, [wc70b]
+ call Function17e6de
+ ld a, [wc70a]
+ ld [TrainerClass], a
+ ld a, [wc70b]
+ ld e, a
+ callba Function8bbd
+ call Function32f9
+ ld a, [wc708]
+ ld e, a
+ ld a, [wc709]
+ ld d, a
+ push de
+ ld de, VTiles2
+ callba GetTrainerPic
+ pop hl
+ ld de, TileMap
+ add hl, de
+ ld bc, $0707
+ predef FillBox
+ pop af
+ ld [rSVBK], a
+ call Function17e349
+ ret
+; 17d9e3
+
+Function17d9e3: ; 17d9e3
+ call Function17e415
+ ld de, wc708
+ ld bc, $0007
+ call CopyBytes
+ call Function17e41e
+ ld a, [wc70b]
+ push af
+ cp $c0
+ jr c, .asm_17da01
+ ld a, [wc70c]
+ ld [rSVBK], a
+ jr .asm_17da07
+
+.asm_17da01
+ ld a, [wc70c]
+ call GetSRAMBank
+
+.asm_17da07
+ ld a, [wc708]
+ ld l, a
+ ld a, [wc709]
+ ld h, a
+ ld a, [wc70a]
+ ld e, a
+ ld a, [wc70b]
+ ld d, a
+ ld a, [wc70d]
+ ld c, a
+ ld a, [wc70e]
+ ld b, a
+ call CopyBytes
+ pop af
+ cp $c0
+ jr c, .asm_17da2d
+ ld a, $4
+ ld [rSVBK], a
+ jr .asm_17da30
+
+.asm_17da2d
+ call CloseSRAM
+
+.asm_17da30
+ ret
+; 17da31
+
+Function17da31: ; 17da31
+ call Function17e415
+ ld de, wc708
+ ld bc, $0004
+ call CopyBytes
+ call Function17e41e
+ ld a, [wc709]
+ push af
+ cp $c0
+ jr c, .asm_17da4f
+ ld a, [wc70a]
+ ld [rSVBK], a
+ jr .asm_17da55
+
+.asm_17da4f
+ ld a, [wc70a]
+ call GetSRAMBank
+
+.asm_17da55
+ ld a, [wc708]
+ ld e, a
+ ld a, [wc709]
+ ld d, a
+ ld a, [wc70b]
+ ld c, a
+ bit 7, c
+ jr nz, .asm_17da70
+ ld hl, Unknown_17da8c
+ ld b, $0
+ add hl, bc
+ ld a, [de]
+ or [hl]
+ ld [de], a
+ jr .asm_17da7d
+
+.asm_17da70
+ ld hl, Unknown_17da94
+ ld a, c
+ and $7f
+ ld c, a
+ ld b, $0
+ add hl, bc
+ ld a, [de]
+ and [hl]
+ ld [de], a
+
+.asm_17da7d
+ pop af
+ cp $c0
+ jr c, .asm_17da88
+ ld a, $4
+ ld [rSVBK], a
+ jr .asm_17da8b
+
+.asm_17da88
+ call CloseSRAM
+
+.asm_17da8b
+ ret
+; 17da8c
+
+Unknown_17da8c:
+x = 0
+ rept 8
+ db 1 << x
+x = x + 1
+ endr
+
+Unknown_17da94:
+x = 0
+ rept 8
+ db (1 << x) ^ $ff
+x = x + 1
+ endr
+; 17da9c
+
+Function17da9c: ; 17da9c
+ ld a, [wcd31]
+ dec a
+ jr z, .asm_17dabd
+ push af
+ call Function17e566
+ pop af
+ ld [wcd31], a
+ ld hl, wcd24
+ ld a, [wcd2e]
+ sub [hl]
+ ld [wcd2e], a
+ call Function17e55b
+ call Function17e5af
+.asm_17daba
+ jp Function17e415
+
+.asm_17dabd
+ ld a, [wcd2f]
+ and a
+ jr z, .asm_17daba
+ ld hl, wcd24
+ sub [hl]
+ ld [wcd2f], a
+ ld a, [wcd2e]
+ sub [hl]
+ ld [wcd2e], a
+ call Function17e451
+ call Function17e55b
+ call Function17e5af
+ jr .asm_17daba
+; 17dadc
+
+Function17dadc: ; 17dadc
+ ld a, [wcd2e]
+ ld hl, wcd24
+ add [hl]
+ ld hl, wcd42
+ cp [hl]
+ jr z, .asm_17db0e
+ jr nc, .asm_17db0e
+ ld hl, wcd31
+ ld a, [wcd2b]
+ cp [hl]
+ jr z, .asm_17db11
+ call Function17e566
+ ld a, [wcd31]
+ inc a
+ ld [wcd31], a
+ ld hl, wcd24
+ ld a, [wcd2e]
+ add [hl]
+ ld [wcd2e], a
+ call Function17e55b
+ call Function17e5af
+
+.asm_17db0e
+ jp Function17e415
+
+.asm_17db11
+ ld hl, wcd24
+ ld a, [wcd2f]
+ add [hl]
+ ld [wcd2f], a
+ ld a, [wcd2e]
+ add [hl]
+ ld [wcd2e], a
+ call Function17e451
+ call Function17e55b
+ call Function17e5af
+ jr .asm_17db0e
+; 17db2d
+
+Function17db2d: ; 17db2d
+ ld a, [wcd30]
+ ld hl, wcd24
+ cp [hl]
+ jr z, .asm_17db53
+ ld hl, wcd42
+ ld a, [wcd2e]
+ inc a
+ cp [hl]
+ jr z, .asm_17db53
+ ld [wcd2e], a
+ call Function17e566
+ ld a, [wcd30]
+ inc a
+ ld [wcd30], a
+ call Function17e55b
+ call Function17e5af
+
+.asm_17db53
+ jp Function17e415
+; 17db56
+
+Function17db56: ; 17db56
+ ld a, [wcd30]
+ cp $1
+ jr z, .asm_17db74
+ call Function17e566
+ ld a, [wcd30]
+ dec a
+ ld [wcd30], a
+ ld a, [wcd2e]
+ dec a
+ ld [wcd2e], a
+ call Function17e55b
+ call Function17e5af
+
+.asm_17db74
+ jp Function17e415
+; 17db77
+
+Function17db77: ; 17db77
+ ld hl, wcd2d
+ ld a, [wcd2f]
+ add [hl]
+ ld hl, wcd42
+ cp [hl]
+ jr z, .asm_17dbae
+ jr nc, .asm_17dbae
+ call Function17e566
+ ld hl, wcd2d
+ ld a, [wcd2f]
+ add [hl]
+ ld [wcd2f], a
+ ld a, [wcd2e]
+ add [hl]
+ ld hl, wcd42
+ cp [hl]
+ jr c, .asm_17db9f
+ ld a, [hl]
+ dec a
+
+.asm_17db9f
+ ld [wcd2e], a
+ call Function17dbb1
+ call Function17e451
+ call Function17e55b
+ call Function17e5af
+
+.asm_17dbae
+ jp Function17e415
+; 17dbb1
+
+Function17dbb1: ; 17dbb1
+ ld hl, wcd2f
+ ld a, [wcd42]
+ sub [hl]
+ ld hl, wcd2d
+ cp [hl]
+ ret nc
+ ld a, $1
+ ld [wcd30], a
+ ld [wcd31], a
+ ld a, [wcd24]
+ ld c, a
+ ld a, [wcd24]
+ ld b, a
+ ld a, [wcd2e]
+ ld hl, wcd2f
+ sub [hl]
+.asm_17dbd4
+ and a
+ ret z
+ push af
+ ld hl, wcd30
+ ld a, b
+ cp [hl]
+ jr nz, .asm_17dbe4
+ ld a, $1
+ ld [hl], a
+ ld hl, wcd31
+
+.asm_17dbe4
+ inc [hl]
+ pop af
+ dec a
+ jr .asm_17dbd4
+; 17dbe9
+
+Function17dbe9: ; 17dbe9
+ ld hl, wcd2d
+ ld a, [wcd2f]
+ sub [hl]
+ bit 7, a
+ jr z, .asm_17dbf5
+ xor a
+
+.asm_17dbf5
+ ld [wcd2f], a
+ ld a, [wcd30]
+ dec a
+ ld c, a
+ ld a, [wcd31]
+ ld b, a
+ xor a
+ ld hl, wcd24
+.asm_17dc05
+ dec b
+ jr z, .asm_17dc0b
+ add [hl]
+ jr .asm_17dc05
+
+.asm_17dc0b
+ add c
+ ld hl, wcd2f
+ add [hl]
+ ld [wcd2e], a
+ call Function17e451
+ call Function17e55b
+ call Function17e5af
+ jp Function17e415
+; 17dc1f
+
+Function17dc1f: ; 17dc1f
+ call Function17e415
+ ld de, $c688
+ ld bc, $0006
+ call CopyBytes
+ call Function17e32b
+ ld a, [rSVBK]
+ push af
+ ld a, $1
+ ld [rSVBK], a
+ ld hl, $c688
+ ld a, $40
+ ld [wc708], a
+ ld a, [hli]
+ ld [wc70a], a
+ add $5
+ ld [wc70c], a
+ ld a, [hli]
+ ld [wc709], a
+ add $4
+ ld [wc70b], a
+ ld a, $96
+ ld [wc70d], a
+ ld a, $5c
+ ld [wc70e], a
+ ld a, $1
+ ld [wc70f], a
+ ld hl, wc708
+ call LoadMenuDataHeader
+ call Function1d81
+ jr nc, .asm_17dc6e
+ ld a, $2
+ ld [wcfa9], a
+
+.asm_17dc6e
+ call Function1c17
+ pop af
+ ld [rSVBK], a
+ ld a, [wcfa9]
+ cp $1
+ jr nz, .asm_17dc85
+ ld a, [$c68a]
+ ld l, a
+ ld a, [$c68a + 1]
+ ld h, a
+ jr .asm_17dc8d
+
+.asm_17dc85
+ ld a, [$c68a + 2]
+ ld l, a
+ ld a, [$c68a + 3]
+ ld h, a
+
+.asm_17dc8d
+ push hl
+ call Function17e349
+ pop hl
+ call Function17e40f
+ ret
+; 17dc96
+
+MenuData2_17dc96:
+ db $e0 ; flags
+ db 2
+ db "はい@"
+ db "いいえ@"
+; 17dc9f
+
+Function17dc9f: ; 17dc9f
+ call Function17e415
+ call Function17e41e
+ call Function4dd
+ ret
+; 17dca9
+
+Function17dca9: ; 17dca9
+ call Function17e415
+ call Function17e41e
+
+Function17dcaf:
+ ld a, $5
+ ld [rSVBK], a
+ ld hl, Unkn1Pals
+ ld de, $0008
+ ld c, $8
+.asm_17dcbb
+ push hl
+ ld a, $ff
+ ld [hli], a
+ ld a, $7f
+ ld [hl], a
+ pop hl
+ add hl, de
+ dec c
+ jr nz, .asm_17dcbb
+ call Function4b6
+ ld a, $4
+ ld [rSVBK], a
+ ret
+; 17dccf
+
+Function17dccf: ; 17dccf
+ call Function17e415
+ push hl
+ ld a, [wcd4b]
+ ld l, a
+ ld a, [wcd4c]
+ ld h, a
+ ld a, [wcd2e]
+ ld c, a
+ ld b, $0
+ add hl, bc
+ add hl, bc
+ ld a, [hli]
+ ld c, a
+ ld a, [hl]
+ ld b, a
+ call Function17e43d
+ call Function17e41e
+.asm_17dced
+ ld a, [wcd78]
+ ld l, a
+ ld a, [wcd79]
+ ld h, a
+ ld a, [hl]
+ cp $ff
+ jr z, .asm_17dd0d
+.asm_17dcfa
+ cp $31
+ jr nc, .asm_17dcfa
+ call Function17d711
+ ld a, [wcd77]
+ bit 7, a
+ jr nz, .asm_17dd0d
+ and a
+ jr z, .asm_17dd11
+ jr .asm_17dced
+
+.asm_17dd0d
+ pop hl
+ jp Function17e41e
+
+.asm_17dd11
+ pop hl
+ ret
+; 17dd13
+
+Function17dd13: ; 17dd13
+ call Function17e415
+ ld a, [hli]
+ ld c, a
+ ld a, [hli]
+ ld b, a
+ ld a, [hli]
+ ld e, a
+ ld a, [hli]
+ ld d, a
+ call Function17e41e
+ call Function17e447
+ push hl
+ ld hl, TileMap
+ add hl, bc
+ push hl
+ pop bc
+ pop hl
+ call Function13e5
+ ret
+; 17dd30
+
+Function17dd30: ; 17dd30
+ call Function17e415
+ ld a, [hli]
+ ld e, a
+ ld a, [hli]
+ ld d, a
+ ld a, [hli]
+ ld c, a
+ ld b, $0
+ ld a, [hli]
+ push af
+ call Function17e41e
+ pop af
+ ld hl, TileMap
+ add hl, de
+ call Function17e600
+ ret
+; 17dd49
+
+Function17dd49: ; 17dd49
+ call Function17e415
+ ld de, wc708
+ ld bc, $000a
+ call CopyBytes
+ ld a, [wc711]
+ ld c, a
+ ld b, $0
+ call CopyBytes
+ ld a, [wc70a]
+ cp $c0
+ jr c, .asm_17dd6c
+ ld a, [wc708]
+ ld [rSVBK], a
+ jr .asm_17dd72
+
+.asm_17dd6c
+ ld a, [wc708]
+ call GetSRAMBank
+
+.asm_17dd72
+ ld a, [wc709]
+ ld l, a
+ ld a, [wc70a]
+ ld h, a
+ ld de, $c688
+ ld a, [wc711]
+ ld c, a
+ ld b, $0
+ call CopyBytes
+ ld a, [wc70a]
+ cp $c0
+ jr c, .asm_17dd93
+ ld a, $4
+ ld [rSVBK], a
+ jr .asm_17dd96
+
+.asm_17dd93
+ call CloseSRAM
+
+.asm_17dd96
+ ld a, [wc711]
+ ld c, a
+ ld hl, wc712
+ ld de, $c688
+.asm_17dda0
+ ld a, [de]
+ inc de
+ cp [hl]
+ inc hl
+ jr z, .asm_17ddaa
+ jr c, .asm_17ddc1
+ jr .asm_17ddb7
+
+.asm_17ddaa
+ dec c
+ jr nz, .asm_17dda0
+ ld a, [wc70d]
+ ld l, a
+ ld a, [wc70e]
+ ld h, a
+ jr .asm_17ddc9
+
+.asm_17ddb7
+ ld a, [wc70f]
+ ld l, a
+ ld a, [wc710]
+ ld h, a
+ jr .asm_17ddc9
+
+.asm_17ddc1
+ ld a, [wc70b]
+ ld l, a
+ ld a, [wc70c]
+ ld h, a
+
+.asm_17ddc9
+ call Function17e40f
+ ret
+; 17ddcd
+
+Function17ddcd: ; 17ddcd
+ call Function17e415
+ ld de, wc708
+ ld bc, $0008
+ call CopyBytes
+ ld a, [wc70a]
+ cp $c0
+ jr c, .asm_17dde7
+ ld a, [wc708]
+ ld [rSVBK], a
+ jr .asm_17dded
+
+.asm_17dde7
+ ld a, [wc708]
+ call GetSRAMBank
+
+.asm_17dded
+ ld a, [wc709]
+ ld e, a
+ ld a, [wc70a]
+ ld d, a
+ ld a, [de]
+ ld [wc710], a
+ ld a, [wc70b]
+ ld c, a
+ ld b, $0
+ ld a, [wc70a]
+ cp $c0
+ jr c, .asm_17de0c
+ ld a, $4
+ ld [rSVBK], a
+ jr .asm_17de0f
+
+.asm_17de0c
+ call CloseSRAM
+
+.asm_17de0f
+ push hl
+ ld hl, Unknown_17da8c
+ add hl, bc
+ ld a, [hl]
+ ld hl, wc710
+ and [hl]
+ pop hl
+ jr nz, .asm_17de26
+ ld a, [wc70e]
+ ld l, a
+ ld a, [wc70f]
+ ld h, a
+ jr .asm_17de2e
+
+.asm_17de26
+ ld a, [wc70c]
+ ld l, a
+ ld a, [wc70d]
+ ld h, a
+
+.asm_17de2e
+ call Function17e40f
+ ret
+; 17de32
+
+Function17de32: ; 17de32
+ call Function17e415
+ ld de, wc708
+ ld bc, $0009
+ call CopyBytes
+ ld a, [wc710]
+ ld c, a
+ ld b, $0
+ call CopyBytes
+ ld a, $6
+ call GetSRAMBank
+ call Function17f4f6
+ ld a, [wc708]
+ ld e, a
+ ld a, [wc709]
+ ld d, a
+ add hl, de
+ ld e, l
+ ld d, h
+ ld a, [wc710]
+ ld c, a
+ ld hl, wc711
+.asm_17de61
+ ld a, [de]
+ inc de
+ cp [hl]
+ inc hl
+ jr z, .asm_17de6b
+ jr c, .asm_17de82
+ jr .asm_17de78
+
+.asm_17de6b
+ dec c
+ jr nz, .asm_17de61
+ ld a, [wc70c]
+ ld l, a
+ ld a, [wc70d]
+ ld h, a
+ jr .asm_17de8a
+
+.asm_17de78
+ ld a, [wc70e]
+ ld l, a
+ ld a, [wc70f]
+ ld h, a
+ jr .asm_17de8a
+
+.asm_17de82
+ ld a, [wc70a]
+ ld l, a
+ ld a, [wc70b]
+ ld h, a
+
+.asm_17de8a
+ call CloseSRAM
+ call Function17e40f
+ ret
+; 17de91
+
+Function17de91: ; 17de91
+ call Function17e415
+ ld de, wc708
+ ld bc, $0007
+ call CopyBytes
+ ld a, $6
+ call GetSRAMBank
+ call Function17f4f6
+ ld a, [wc708]
+ ld e, a
+ ld a, [wc709]
+ ld d, a
+ add hl, de
+ ld e, l
+ ld d, h
+ ld a, [wc70a]
+ ld c, a
+ ld b, $0
+ ld hl, Unknown_17da8c
+ add hl, bc
+ ld a, [hl]
+ ld l, e
+ ld h, d
+ and [hl]
+ jr nz, .asm_17deca
+ ld a, [wc70d]
+ ld l, a
+ ld a, [wc70e]
+ ld h, a
+ jr .asm_17ded2
+
+.asm_17deca
+ ld a, [wc70b]
+ ld l, a
+ ld a, [wc70c]
+ ld h, a
+
+.asm_17ded2
+ call CloseSRAM
+ call Function17e40f
+ ret
+; 17ded9
+
+Function17ded9: ; 17ded9
+ call Function17e415
+ ld de, wc708
+ ld bc, $001f
+ call CopyBytes
+ call Function17e32b
+ ld a, [rSVBK]
+ push af
+ ld a, $1
+ ld [rSVBK], a
+ ld hl, wc708
+ ld a, [hli]
+ ld [CurPartySpecies], a
+ ld [TempEnemyMonSpecies], a
+ ld a, [hli]
+ ld [CurPartyLevel], a
+ ld a, [hli]
+ ld b, a
+ ld a, [PartyCount]
+ cp $6
+ jp nc, Function17e026
+ xor a
+ ld [MonType], a
+ push hl
+ push bc
+ predef Functiond88c
+ callba Function4db49
+ pop bc
+ pop hl
+ bit 1, b
+ jr z, .asm_17df33
+ push bc
+ push hl
+ ld a, [PartyCount]
+ dec a
+ ld hl, PartyMonNicknames
+ call SkipNames
+ ld d, h
+ ld e, l
+ pop hl
+ call CopyBytes
+ pop bc
+ jr .asm_17df37
+
+.asm_17df33
+ ld de, $0006
+ add hl, de
+
+.asm_17df37
+ bit 2, b
+ jr z, .asm_17df5a
+ push bc
+ push hl
+ ld a, [PartyCount]
+ dec a
+ ld hl, PartyMonOT
+ call SkipNames
+ ld d, h
+ ld e, l
+ pop hl
+ call CopyBytes
+ ld a, [hli]
+ ld b, a
+ push hl
+ callba Function4dba3
+ pop hl
+ pop bc
+ jr .asm_17df5e
+
+.asm_17df5a
+ ld de, $0007
+ add hl, de
+
+.asm_17df5e
+ bit 3, b
+ jr z, .asm_17df79
+ push bc
+ push hl
+ ld a, [PartyCount]
+ dec a
+ ld hl, PartyMon1ID
+ call GetPartyLocation
+ ld d, h
+ ld e, l
+ pop hl
+ ld a, [hli]
+ ld [de], a
+ inc de
+ ld a, [hli]
+ ld [de], a
+ pop bc
+ jr .asm_17df7b
+
+.asm_17df79
+ inc hl
+ inc hl
+
+.asm_17df7b
+ bit 4, b
+ jr z, .asm_17dfd0
+ push bc
+ push hl
+ ld a, [PartyCount]
+ dec a
+ ld hl, PartyMon1DVs
+ call GetPartyLocation
+ ld d, h
+ ld e, l
+ pop hl
+ ld a, [hli]
+ ld [de], a
+ inc de
+ ld a, [hli]
+ ld [de], a
+ push hl
+ ld a, [PartyCount]
+ dec a
+ ld hl, PartyMon1Species
+ call GetPartyLocation
+ ld a, [hl]
+ ld [CurSpecies], a
+ call GetBaseData
+ ld a, [PartyCount]
+ dec a
+ ld hl, PartyMon1MaxHP
+ call GetPartyLocation
+ ld d, h
+ ld e, l
+ push hl
+ ld b, $0
+ callba Functione167
+ ld a, [PartyCount]
+ dec a
+ ld hl, PartyMon1HP
+ call GetPartyLocation
+ ld d, h
+ ld e, l
+ pop hl
+ ld a, [hli]
+ ld [de], a
+ inc de
+ ld a, [hl]
+ ld [de], a
+ pop hl
+ pop bc
+ jr .asm_17dfd2
+
+.asm_17dfd0
+ inc hl
+ inc hl
+
+.asm_17dfd2
+ bit 5, b
+ jr z, .asm_17dfea
+ push bc
+ push hl
+ ld a, [PartyCount]
+ dec a
+ ld hl, PartyMon1Item
+ call GetPartyLocation
+ ld d, h
+ ld e, l
+ pop hl
+ ld a, [hli]
+ ld [de], a
+ pop bc
+ jr .asm_17dfeb
+
+.asm_17dfea
+ inc hl
+
+.asm_17dfeb
+ bit 6, b
+ jr z, .asm_17e01f
+ push bc
+ push hl
+ ld a, [PartyCount]
+ dec a
+ ld hl, PartyMon1Moves
+ call GetPartyLocation
+ ld d, h
+ ld e, l
+ pop hl
+ push de
+ ld bc, $0004
+ call CopyBytes
+ pop de
+ push hl
+ push de
+ ld a, [PartyCount]
+ dec a
+ ld hl, PartyMon1PP
+ call GetPartyLocation
+ ld d, h
+ ld e, l
+ pop hl
+ predef FillPP
+ pop hl
+ pop bc
+ jp asm_17e0ee
+
+.asm_17e01f
+ ld de, $0004
+ add hl, de
+ jp asm_17e0ee
+; 17e026
+
+Function17e026: ; 17e026
+ ld a, $1
+ call GetSRAMBank
+ ld a, [sBoxCount]
+ call CloseSRAM
+ cp $14
+ jp nc, .asm_17e0ea
+ bit 0, b
+ jp z, .asm_17e0ea
+ push bc
+ push hl
+ callba LoadEnemyMon
+ callba Functionde6e
+ callba Function4db83
+ pop hl
+ pop bc
+ ld a, $1
+ call GetSRAMBank
+ bit 1, b
+ jr z, .asm_17e067
+ push bc
+ ld bc, $000b
+ ld de, sBoxMonNicknames
+ call CopyBytes
+ pop bc
+ jr .asm_17e06b
+
+.asm_17e067
+ ld de, $0006
+ add hl, de
+
+.asm_17e06b
+ bit 2, b
+ jr z, .asm_17e08e
+ push bc
+ ld bc, $0006
+ ld de, sBoxMonOT
+ call CopyBytes
+ ld a, [hli]
+ ld b, a
+ push hl
+ call CloseSRAM
+ callba Function4db92
+ ld a, $1
+ call GetSRAMBank
+ pop hl
+ pop bc
+ jr .asm_17e092
+
+.asm_17e08e
+ ld de, $0007
+ add hl, de
+
+.asm_17e092
+ bit 3, b
+ jr z, .asm_17e0a2
+ push bc
+ ld de, sBoxMon1ID
+ ld a, [hli]
+ ld [de], a
+ inc de
+ ld a, [hli]
+ ld [de], a
+ pop bc
+ jr .asm_17e0a4
+
+.asm_17e0a2
+ inc hl
+ inc hl
+
+.asm_17e0a4
+ bit 4, b
+ jr z, .asm_17e0b4
+ push bc
+ ld de, sBoxMon1DVs
+ ld a, [hli]
+ ld [de], a
+ inc de
+ ld a, [hli]
+ ld [de], a
+ pop bc
+ jr .asm_17e0b6
+
+.asm_17e0b4
+ inc hl
+ inc hl
+
+.asm_17e0b6
+ bit 5, b
+ ld a, [hli]
+ jr z, .asm_17e0be
+ ld [sBoxMon1Item], a
+
+.asm_17e0be
+ bit 6, b
+ jr z, .asm_17e0e1
+ push bc
+ ld de, sBoxMon1Moves
+ ld bc, $0004
+ call CopyBytes
+ push hl
+ ld hl, sBoxMon1Moves
+ ld de, sBoxMon1PP
+ predef FillPP
+ call CloseSRAM
+ pop hl
+ pop bc
+ inc hl
+ inc hl
+ jr asm_17e0ee
+
+.asm_17e0e1
+ call CloseSRAM
+ ld de, $0006
+ add hl, de
+ jr asm_17e0ee
+
+.asm_17e0ea
+ ld bc, $001a
+ add hl, bc
+
+asm_17e0ee
+ ld a, [hli]
+ ld h, [hl]
+ ld l, a
+ pop af
+ ld [rSVBK], a
+ push hl
+ call Function17e349
+ pop hl
+ call Function17e40f
+ ret
+; 17e0fd
+
+Function17e0fd: ; 17e0fd
+ call Function17e415
+ ld de, wc708
+ ld bc, $0006
+ call CopyBytes
+ ld a, [rSVBK]
+ push af
+ ld a, $1
+ ld [rSVBK], a
+ ld hl, wc708
+ ld a, [hli]
+ ld [CurItem], a
+ ld a, [hli]
+ ld [wd10c], a
+ push hl
+ ld hl, NumItems
+ call ReceiveItem
+ pop hl
+ jr c, .asm_17e127
+ inc hl
+ inc hl
+
+.asm_17e127
+ ld a, [hli]
+ ld b, a
+ ld a, [hl]
+ ld h, a
+ ld l, b
+ pop af
+ ld [rSVBK], a
+ call Function17e40f
+ ret
+; 17e133
+
+Function17e133: ; 17e133
+ call Function17e415
+ ld de, wc708
+ ld bc, $0005
+ call CopyBytes
+ ld a, [rSVBK]
+ push af
+ ld a, $1
+ ld [rSVBK], a
+ ld hl, wc708
+ ld a, [hli]
+ ld [ScriptVar], a
+ push hl
+ callba Function4a843
+ pop hl
+ jr c, .asm_17e159
+ inc hl
+ inc hl
+
+.asm_17e159
+ ld a, [hli]
+ ld b, a
+ ld a, [hl]
+ ld h, a
+ ld l, b
+ pop af
+ ld [rSVBK], a
+ call Function17e40f
+ ret
+; 17e165
+
+Function17e165: ; 17e165
+ call Function17e415
+ ld de, wc708
+ ld bc, $0005
+ call CopyBytes
+ ld a, [rSVBK]
+ push af
+ ld a, $1
+ ld [rSVBK], a
+ ld hl, wc708
+ ld a, [hli]
+ ld [CurItem], a
+ push hl
+ ld hl, NumItems
+ call CheckItem
+ pop hl
+ jr c, .asm_17e195
+ push hl
+ ld hl, PCItems
+ call CheckItem
+ pop hl
+ jr c, .asm_17e195
+ inc hl
+ inc hl
+
+.asm_17e195
+ ld a, [hli]
+ ld b, a
+ ld a, [hl]
+ ld h, a
+ ld l, b
+ pop af
+ ld [rSVBK], a
+ call Function17e40f
+ ret
+; 17e1a1
+
+Function17e1a1: ; 17e1a1
+ call Function17e415
+ ld de, wc708
+ ld bc, $000d
+ call CopyBytes
+ ld a, [wc70a]
+ cp $c0
+ jr c, .asm_17e1bb
+ ld a, [wc708]
+ ld [rSVBK], a
+ jr .asm_17e1c1
+
+.asm_17e1bb
+ ld a, [wc708]
+ call GetSRAMBank
+
+.asm_17e1c1
+ ld a, [wc709]
+ ld l, a
+ ld a, [wc70a]
+ ld h, a
+ ld de, $c608
+ ld a, [wc70b]
+ ld c, a
+ ld b, $0
+ call CopyBytes
+ ld a, [wc70a]
+ cp $c0
+ jr c, .asm_17e1e2
+ ld a, $4
+ ld [rSVBK], a
+ jr .asm_17e1e5
+
+.asm_17e1e2
+ call CloseSRAM
+
+.asm_17e1e5
+ ld a, [wc70e]
+ cp $c0
+ jr c, .asm_17e1f3
+ ld a, [wc70c]
+ ld [rSVBK], a
+ jr .asm_17e1f9
+
+.asm_17e1f3
+ ld a, [wc70c]
+ call GetSRAMBank
+
+.asm_17e1f9
+ ld a, [wc70d]
+ ld l, a
+ ld a, [wc70e]
+ ld h, a
+ ld de, $c688
+ ld a, [wc70b]
+ ld c, a
+ ld b, $0
+ call CopyBytes
+ ld a, [wc70e]
+ cp $c0
+ jr c, .asm_17e21a
+ ld a, $4
+ ld [rSVBK], a
+ jr .asm_17e21d
+
+.asm_17e21a
+ call CloseSRAM
+
+.asm_17e21d
+ ld a, [wc70b]
+ ld c, a
+ ld hl, $c688
+ ld de, $c608
+.asm_17e227
+ ld a, [de]
+ inc de
+ cp [hl]
+ inc hl
+ jr z, .asm_17e231
+ jr c, .asm_17e23e
+ jr .asm_17e248
+
+.asm_17e231
+ dec c
+ jr nz, .asm_17e227
+ ld a, [wc711]
+ ld l, a
+ ld a, [wc712]
+ ld h, a
+ jr .asm_17e250
+
+.asm_17e23e
+ ld a, [wc70f]
+ ld l, a
+ ld a, [wc710]
+ ld h, a
+ jr .asm_17e250
+
+.asm_17e248
+ ld a, [wc712 + 1]
+ ld l, a
+ ld a, [wc712 + 2]
+ ld h, a
+
+.asm_17e250
+ call Function17e40f
+ ret
+; 17e254
+
+Function17e254: ; 17e254
+ call Function17e415
+ ld a, [hli]
+ ld e, a
+ ld a, [hli]
+ ld d, a
+ ld a, [hli]
+ ld [de], a
+ call Function17e41e
+ ret
+; 17e261
+
+Function17e261: ; 17e261
+ call Function17e415
+ ld a, [hli]
+ ld e, a
+ ld a, [hli]
+ ld d, a
+ ld a, [de]
+ add [hl]
+ ld [de], a
+ inc hl
+ call Function17e41e
+ ret
+; 17e270
+
+Function17e270: ; 17e270
+ call Function17e415
+ ld a, [hli]
+ ld e, a
+ ld a, [hli]
+ ld d, a
+ ld a, [de]
+ sub [hl]
+ ld [de], a
+ inc hl
+ call Function17e41e
+ ret
+; 17e27f
+
+Function17e27f: ; 17e27f
+ call Function17e415
+ ld a, [hli]
+ ld e, a
+ ld a, [hli]
+ ld d, a
+ ld a, [hli]
+ ld c, a
+ ld a, [hli]
+ ld b, a
+ call Function17e41e
+ ld l, c
+ ld h, b
+ ld a, [de]
+ add [hl]
+ ld [de], a
+ ret
+; 17e293
+
+Function17e293: ; 17e293
+ call Function17e415
+ ld a, [hli]
+ ld e, a
+ ld a, [hli]
+ ld d, a
+ ld a, [hli]
+ ld c, a
+ ld a, [hli]
+ ld b, a
+ call Function17e41e
+ ld l, c
+ ld h, b
+ ld a, [de]
+ sub [hl]
+ ld [de], a
+ ret
+; 17e2a7
+
+Function17e2a7: ; 17e2a7
+ call Function17e415
+ call Function17e41e
+ call Function17e32b
+ xor a
+ ld [wcf66], a
+ callba Function118233
+ ld de, GFX_17eb7e
+ ld hl, $9600
+ lb bc, BANK(GFX_17eb7e), 1
+ call Get2bpp
+ ld a, [wc300]
+ and a
+ jr z, .asm_17e2d8
+ cp $a
+ jr z, .asm_17e2f7
+ cp $b
+ jr z, .asm_17e300
+ call Function17e309
+ ret
+
+.asm_17e2d8
+ call Function17d60b
+ call Function17e349
+ xor a
+ ld [wcd7a], a
+ ld a, $5
+ call GetSRAMBank
+ ld hl, $aa73
+ ld de, $aa7f
+ ld bc, $000c
+ call CopyBytes
+ call CloseSRAM
+ ret
+
+.asm_17e2f7
+ call Function17e349
+ ld a, $1
+ ld [wcd7a], a
+ ret
+
+.asm_17e300
+ call Function17e349
+ ld a, $2
+ ld [wcd7a], a
+ ret
+; 17e309
+
+Function17e309: ; 17e309
+ ld a, $2
+ ld [wc303], a
+ call Function17dcaf
+ call ClearScreen
+ call Function17e349
+ call Function17d5f6
+ callba Function17f555
+ call Function17e349
+ call Function17dcaf
+ xor a
+ ld [wcd77], a
+ ret
+; 17e32b
+
+Function17e32b: ; 17e32b
+ ld a, $5
+ call GetSRAMBank
+ ld hl, $c608
+ ld de, $b0b1
+ ld bc, $0040
+ call CopyBytes
+ ld hl, BGMapBuffer
+ ld bc, $005b
+ call CopyBytes
+ call CloseSRAM
+ ret
+; 17e349
+
+Function17e349: ; 17e349
+ ld a, $5
+ call GetSRAMBank
+ ld hl, $b0b1
+ ld de, $c608
+ ld bc, $0040
+ call CopyBytes
+ ld de, BGMapBuffer
+ ld bc, $005b
+ call CopyBytes
+ call CloseSRAM
+ ret
+; 17e367
+
+Function17e367: ; 17e367
+ call Function17e415
+ call Function17e41e
+ ld a, [rSVBK]
+ push af
+ ld a, $1
+ ld [rSVBK], a
+ callba Function14c10
+ pop af
+ ld [rSVBK], a
+ ret
+; 17e37e
+
+Function17e37e: ; 17e37e
+ call Function17e415
+ call Function17e41e
+ ld a, [rSVBK]
+ push af
+ ld a, $1
+ ld [rSVBK], a
+ callba Function14a58
+ pop af
+ ld [rSVBK], a
+ ret
+; 17e395
+
+Function17e395: ; 17e395
+ call Function17e415
+ call Function17e41e
+ ld a, [rSVBK]
+ push af
+ ld a, $1
+ ld [rSVBK], a
+ callba Function14e0c
+ pop af
+ ld [rSVBK], a
+ ret
+; 17e3ac
+
+Function17e3ac: ; 17e3ac
+ call Function17e415
+ call Function17e41e
+ ld a, [rSVBK]
+ push af
+ ld a, $1
+ ld [rSVBK], a
+ callba Function14e13
+ pop af
+ ld [rSVBK], a
+ ret
+; 17e3c3
+
+Function17e3c3: ; 17e3c3
+ call Function17e415
+ call Function17e41e
+ ld a, [rSVBK]
+ push af
+ ld a, $1
+ ld [rSVBK], a
+ callba Function106155
+ callba Function106187
+ pop af
+ ld [rSVBK], a
+ ret
+; 17e3e0
+
+Function17e3e0: ; 17e3e0
+ call Function17e415
+ ld a, [hli]
+ ld c, a
+ call Function17e41e
+ ld a, $1
+ ld [hBGMapMode], a
+ call DelayFrames
+ ret
+; 17e3f0
+
+Function17e3f0: ; 17e3f0
+ call Function17e415
+ call Function17e41e
+.asm_17e3f6
+ call Functiona57
+ ld hl, hJoyPressed
+ ld a, [hl]
+ and $1
+ ret nz
+ ld a, [hl]
+ and $2
+ ret nz
+ call WaitBGMap
+ jr .asm_17e3f6
+; 17e409
+
+Function17e409: ; 17e409
+ ld hl, wcd77
+ set 7, [hl]
+ ret
+; 17e40f
+
+Function17e40f: ; 17e40f
+ ld de, Unkn1Pals
+ add hl, de
+ jr Function17e41e
+
+Function17e415:
+ ld a, [wcd78]
+ ld l, a
+ ld a, [wcd79]
+ ld h, a
+ inc hl
+
+Function17e41e:
+ ld a, l
+ ld [wcd78], a
+ ld a, h
+ ld [wcd79], a
+ ret
+; 17e427
+
+Function17e427: ; 17e427
+ ld hl, hJoyPressed
+ ld a, [hl]
+ and $1
+ jr nz, .asm_17e432
+ and $2
+ ret z
+
+.asm_17e432
+ ld a, $3
+ ld [wcd77], a
+ ret
+; 17e438
+
+Function17e438: ; 17e438
+ ld hl, wcd77
+ inc [hl]
+ ret
+; 17e43d
+
+Function17e43d: ; 17e43d
+ ld a, [BGMapBuffer]
+ ld l, a
+ ld a, [wcd21]
+ ld h, a
+ add hl, bc
+ ret
+; 17e447
+
+Function17e447: ; 17e447
+ ld a, [BGMapBuffer]
+ ld l, a
+ ld a, [wcd21]
+ ld h, a
+ add hl, de
+ ret
+; 17e451
+
+Function17e451: ; 17e451
+ ld a, [wcd42]
+ and a
+ ret z
+ call Function17e51b
+ call Function17e4dd
+ ld a, [wcd2e]
+ push af
+ ld a, [wcd49]
+ ld l, a
+ ld a, [wcd4a]
+ ld h, a
+ ld a, [wcd2f]
+ ld [wcd2e], a
+ ld c, a
+ ld b, $0
+ add hl, bc
+ add hl, bc
+ push hl
+ ld hl, TileMap
+ ld bc, $0014
+ ld a, [wcd23]
+ call AddNTimes
+ ld a, [CreditsTimer]
+ ld c, a
+ ld b, $0
+ add hl, bc
+ pop bc
+ ld a, [wcd25]
+.asm_17e48b
+ push af
+ push hl
+ ld a, [wcd24]
+.asm_17e490
+ push af
+ push hl
+ ld a, [bc]
+ inc bc
+ ld e, a
+ ld a, [bc]
+ inc bc
+ ld d, a
+ push bc
+ push hl
+ ld a, [BGMapBuffer]
+ ld l, a
+ ld a, [wcd21]
+ ld h, a
+ add hl, de
+ push hl
+ pop de
+ pop hl
+ call PlaceString
+ pop bc
+ pop hl
+ ld a, [wcd26]
+ ld e, a
+ ld d, $0
+ add hl, de
+ ld a, [wcd2e]
+ inc a
+ ld [wcd2e], a
+ ld e, a
+ ld a, [wcd42]
+ cp e
+ jr z, .asm_17e4d5
+ pop af
+ dec a
+ jr nz, .asm_17e490
+ pop hl
+ ld a, [wcd27]
+ ld de, $0014
+.asm_17e4cb
+ add hl, de
+ dec a
+ jr nz, .asm_17e4cb
+ pop af
+ dec a
+ jr nz, .asm_17e48b
+ jr .asm_17e4d8
+
+.asm_17e4d5
+ pop af
+ pop hl
+ pop af
+
+.asm_17e4d8
+ pop af
+ ld [wcd2e], a
+ ret
+; 17e4dd
+
+Function17e4dd: ; 17e4dd
+ ld a, [wcd2c]
+ and $1
+ ret z
+ ld a, [wcd29]
+ ld hl, TileMap
+ ld bc, $0014
+ call AddNTimes
+ ld a, [wcd28]
+ ld c, a
+ ld b, $0
+ add hl, bc
+ ld a, [wcd2f]
+ and a
+ jr z, .asm_17e4ff
+ ld a, $61
+ ld [hl], a
+
+.asm_17e4ff
+ ld a, [wcd2a]
+ ld bc, $0014
+ call AddNTimes
+ ld a, [wcd42]
+ ld c, a
+ ld a, [wcd2e]
+ ld b, a
+ ld a, [wcd24]
+ add b
+ cp c
+ ret z
+ ret nc
+ ld a, $ee
+ ld [hl], a
+ ret
+; 17e51b
+
+Function17e51b: ; 17e51b
+ ld a, [wcd28]
+ ld hl, CreditsTimer
+ sub [hl]
+ inc a
+ ld [wcd4f], a
+ ld hl, TileMap
+ ld bc, $0014
+ ld a, [wcd23]
+ dec a
+ call AddNTimes
+ ld a, [CreditsTimer]
+ ld c, a
+ ld b, $0
+ add hl, bc
+ ld a, [wcd25]
+ ld c, a
+ ld a, [wcd27]
+ call SimpleMultiply
+.asm_17e544
+ push af
+ push hl
+ ld a, [wcd4f]
+ ld c, a
+ ld b, $0
+ ld a, $7f
+ call ByteFill
+ pop hl
+ ld bc, $0014
+ add hl, bc
+ pop af
+ dec a
+ jr nz, .asm_17e544
+ ret
+; 17e55b
+
+Function17e55b: ; 17e55b
+ ld a, [wcd42]
+ and a
+ ret z
+ ld a, $ed
+ call Function17e571
+ ret
+; 17e566
+
+Function17e566: ; 17e566
+ ld a, [wcd42]
+ and a
+ ret z
+ ld a, $7f
+ call Function17e571
+ ret
+; 17e571
+
+Function17e571: ; 17e571
+ push af
+ ld hl, TileMap
+ ld bc, $0014
+ ld a, [wcd23]
+ call AddNTimes
+ ld a, [CreditsTimer]
+ ld c, a
+ ld b, $0
+ add hl, bc
+ dec hl
+ push hl
+ ld a, [wcd31]
+ dec a
+ ld c, a
+ ld a, [wcd27]
+ call SimpleMultiply
+ ld l, $0
+ ld h, l
+ ld bc, $0014
+ call AddNTimes
+ ld a, [wcd30]
+ dec a
+ ld c, a
+ ld a, [wcd26]
+ call SimpleMultiply
+ ld c, a
+ ld b, $0
+ add hl, bc
+ pop bc
+ add hl, bc
+ pop af
+ ld [hl], a
+ ret
+; 17e5af
+
+Function17e5af: ; 17e5af
+ ld a, [wcd2c]
+ and $2
+ ret z
+ ld a, [wcd43]
+ ld l, a
+ ld a, [wcd44]
+ ld h, a
+ ld bc, TileMap
+ add hl, bc
+ ld bc, $ffec
+ add hl, bc
+ ld a, [wcd45]
+ ld c, a
+ ld b, $0
+ ld a, [wcd46]
+ call Function17e600
+ ld a, [wcd2e]
+ ld c, a
+ ld b, $0
+ ld a, [wcd4d]
+ ld l, a
+ ld a, [wcd4e]
+ ld h, a
+ add hl, bc
+ add hl, bc
+ ld a, [hli]
+ ld e, a
+ ld a, [hli]
+ ld d, a
+ ld a, [BGMapBuffer]
+ ld l, a
+ ld a, [wcd21]
+ ld h, a
+ add hl, de
+ push hl
+ pop de
+ ld a, [wcd43]
+ ld l, a
+ ld a, [wcd44]
+ ld h, a
+ ld bc, TileMap
+ add hl, bc
+ call PlaceString
+ ret
+; 17e600
+
+Function17e600: ; 17e600
+.asm_17e600
+ push af
+ push hl
+ push bc
+ ld a, $7f
+ call ByteFill
+ pop bc
+ pop hl
+ ld de, $0014
+ add hl, de
+ pop af
+ dec a
+ jr nz, .asm_17e600
+ ret
+; 17e613
+
+Function17e613: ; 17e613
+ push hl
+ ld hl, TileMap
+ ld bc, $0014
+ ld a, [de]
+ inc de
+ push af
+ ld a, [de]
+ inc de
+ and a
+.asm_17e620
+ jr z, .asm_17e626
+ add hl, bc
+ dec a
+ jr .asm_17e620
+
+.asm_17e626
+ pop af
+ ld c, a
+ ld b, $0
+ add hl, bc
+ push hl
+ ld a, [wcd53]
+ ld [hli], a
+ ld a, [de]
+ inc de
+ dec a
+ dec a
+ jr z, .asm_17e63f
+ ld c, a
+ ld a, [wcd53]
+ inc a
+.asm_17e63b
+ ld [hli], a
+ dec c
+ jr nz, .asm_17e63b
+
+.asm_17e63f
+ ld a, [wcd53]
+ add $2
+ ld [hl], a
+ pop hl
+ ld bc, $0014
+ add hl, bc
+ ld a, [de]
+ dec de
+ dec a
+ dec a
+ jr z, .asm_17e674
+ ld b, a
+.asm_17e651
+ push hl
+ ld a, [wcd53]
+ add $3
+ ld [hli], a
+ ld a, [de]
+ dec a
+ dec a
+ jr z, .asm_17e664
+ ld c, a
+ ld a, $7f
+.asm_17e660
+ ld [hli], a
+ dec c
+ jr nz, .asm_17e660
+
+.asm_17e664
+ ld a, [wcd53]
+ add $4
+ ld [hl], a
+ pop hl
+ push bc
+ ld bc, $0014
+ add hl, bc
+ pop bc
+ dec b
+ jr nz, .asm_17e651
+
+.asm_17e674
+ ld a, [wcd53]
+ add $5
+ ld [hli], a
+ ld a, [de]
+ dec a
+ dec a
+ jr z, .asm_17e689
+ ld c, a
+ ld a, [wcd53]
+ add $6
+.asm_17e685
+ ld [hli], a
+ dec c
+ jr nz, .asm_17e685
+
+.asm_17e689
+ ld a, [wcd53]
+ add $7
+ ld [hl], a
+ pop hl
+ ret
+; 17e691
+
+Function17e691: ; 17e691
+ push hl
+ ld hl, NULL
+ ld bc, $0014
+ ld a, [de]
+ inc de
+ push af
+ ld a, [de]
+ inc de
+ inc de
+ and a
+.asm_17e69f
+ jr z, .asm_17e6a5
+ add hl, bc
+ dec a
+ jr .asm_17e69f
+
+.asm_17e6a5
+ pop af
+ ld c, a
+ ld b, $0
+ add hl, bc
+ ld a, [de]
+ dec de
+.asm_17e6ac
+ push af
+ push hl
+ ld a, [de]
+.asm_17e6af
+ push af
+ push hl
+ push hl
+ ld bc, TileMap
+ add hl, bc
+ ld a, [hl]
+ cp $7f
+ jr z, .asm_17e6c2
+ ld a, [wcd53]
+ add $8
+ jr .asm_17e6c7
+
+.asm_17e6c2
+ ld a, [wcd53]
+ jr .asm_17e6c7
+
+.asm_17e6c7
+ pop hl
+ ld bc, AttrMap
+ add hl, bc
+ ld [hl], a
+ pop hl
+ inc hl
+ pop af
+ dec a
+ jr nz, .asm_17e6af
+ pop hl
+ ld bc, $0014
+ add hl, bc
+ pop af
+ dec a
+ jr nz, .asm_17e6ac
+ pop hl
+ ret
+; 17e6de
+
+Function17e6de: ; 17e6de
+ push af
+ ld a, [wc708]
+ ld l, a
+ ld a, [wc709]
+ ld h, a
+ ld de, AttrMap
+ add hl, de
+ pop af
+ ld b, $7
+.asm_17e6ee
+ push hl
+ ld c, $7
+.asm_17e6f1
+ ld [hli], a
+ dec c
+ jr nz, .asm_17e6f1
+ pop hl
+ ld de, $0014
+ add hl, de
+ dec b
+ jr nz, .asm_17e6ee
+ ret
+; 17e6fe
+
+
+PokemonNewsGFX: ; 17e6fe
+INCBIN "gfx/mobile/pokemon_news.2bpp"
+
+GFX_17eb7e:
+INCBIN "gfx/unknown/17eb7e.2bpp"
+
+TileAttrmap_17eb8e:
+INCBIN "gfx/unknown/17eb8e.attrmap"
+
+Palette_17eff6:
+ RGB 24, 9, 8
+ RGB 4, 9, 18
+ RGB 18, 18, 12
+ RGB 0, 0, 0
+ RGB 24, 24, 18
+ RGB 18, 18, 12
+ RGB 4, 9, 18
+ RGB 0, 0, 0
+ RGB 31, 31, 31
+ RGB 23, 11, 10
+ RGB 13, 6, 5
+ RGB 0, 0, 0
+ RGB 31, 31, 31
+ RGB 15, 25, 5
+ RGB 10, 20, 0
+ RGB 0, 0, 0
+ RGB 31, 31, 31
+ RGB 20, 28, 20
+ RGB 10, 18, 15
+ RGB 0, 0, 0
+ RGB 31, 31, 31
+ RGB 22, 22, 12
+ RGB 17, 12, 5
+ RGB 0, 0, 0
+ RGB 5, 5, 16
+ RGB 8, 19, 28
+ RGB 0, 0, 0
+ RGB 31, 31, 31
+ RGB 31, 31, 31
+ RGB 27, 24, 0
+ RGB 24, 16, 3
+ RGB 0, 0, 0
+
+
+Function17f036:: ; 17f036
+ ld a, $6
+ call GetSRAMBank
+ inc de
+.asm_17f03c
+ call Function17f047
+ jr c, .asm_17f043
+ jr .asm_17f03c
+
+.asm_17f043
+ call CloseSRAM
+ ret
+; 17f047
+
+Function17f047: ; 17f047
+ ld a, [de]
+ inc de
+ cp $50
+ jr z, .asm_17f05f
+ cp $10
+ jr nc, .asm_17f05f
+ dec a
+ push de
+ ld e, a
+ ld d, 0
+ ld hl, Jumptable_17f061
+ add hl, de
+ add hl, de
+ ld a, [hli]
+ ld h, [hl]
+ ld l, a
+ jp [hl]
+
+.asm_17f05f
+ scf
+ ret
+; 17f061
+
+Jumptable_17f061: ; 17f061
+ dw Function17f081
+ dw Function17f0f8
+ dw Function17f154
+ dw Function17f181
+ dw Function17f1d0
+ dw Function17f220
+ dw Function17f27b
+ dw Function17f2cb
+ dw Function17f2ff
+ dw Function17f334
+ dw Function17f382
+ dw Function17f3c9
+ dw Function17f3f0
+ dw Function17f41d
+ dw Function17f44f
+ dw Function17f44f
+; 17f081
+
+Function17f081: ; 17f081
+ pop hl
+ call Function17f524
+ jr c, .asm_17f09f
+ ld de, $0004
+ add hl, de
+ ld a, [hli]
+ inc hl
+ inc hl
+ ld e, l
+ ld d, h
+ ld l, c
+ ld h, b
+ ld c, a
+ ld b, $0
+ add hl, bc
+ ld a, [de]
+ cp $50
+ jr z, .asm_17f09d
+ and a
+ ret
+
+.asm_17f09d
+ scf
+ ret
+
+.asm_17f09f
+ push bc
+ ld de, wcd54
+ ld bc, $0007
+ call CopyBytes
+ pop bc
+ push hl
+ push bc
+ call Function17f4f6
+ pop bc
+ ld a, [wcd54]
+ ld e, a
+ ld a, [wcd55]
+ ld d, a
+ add hl, de
+ ld e, l
+ ld d, h
+ ld l, c
+ ld h, b
+ push hl
+ ld a, [wcd56]
+ ld b, a
+ ld a, [wcd57]
+ ld c, a
+ call Function31a4
+ ld a, l
+ ld [wcd52], a
+ ld a, h
+ ld [wcd53], a
+ ld a, [wcd59]
+ and a
+ jr z, .asm_17f0ee
+ ld c, a
+ ld a, [wcd57]
+ inc a
+ ld b, a
+ ld e, l
+ ld d, h
+ dec de
+.asm_17f0e0
+ ld a, c
+ cp b
+ jr z, .asm_17f0ea
+ ld a, [de]
+ dec de
+ ld [hld], a
+ dec b
+ jr .asm_17f0e0
+
+.asm_17f0ea
+ ld a, [wcd5a]
+ ld [hl], a
+
+.asm_17f0ee
+ pop hl
+ ld a, [wcd58]
+ call Function17f50f
+ pop de
+ and a
+ ret
+; 17f0f8
+
+Function17f0f8: ; 17f0f8
+ pop hl
+ call Function17f524
+ jr c, .asm_17f114
+ ld de, $0003
+ add hl, de
+ ld a, [hli]
+ ld e, l
+ ld d, h
+ ld l, c
+ ld h, b
+ ld c, a
+ ld b, $0
+ add hl, bc
+ ld a, [de]
+ cp $50
+ jr z, .asm_17f112
+ and a
+ ret
+
+.asm_17f112
+ scf
+ ret
+
+.asm_17f114
+ push bc
+ ld de, wcd54
+ ld bc, $0004
+ call CopyBytes
+ pop bc
+ push hl
+ push bc
+ call Function17f4f6
+ ld a, [wcd54]
+ ld e, a
+ ld a, [wcd55]
+ ld d, a
+ add hl, de
+ ld de, $c608
+ ld a, [wcd56]
+ ld c, a
+ ld b, $0
+ call CopyBytes
+ ld a, $50
+ ld [de], a
+ pop hl
+ ld de, $c608
+ call PlaceString
+ ld a, c
+ ld [wcd52], a
+ ld a, b
+ ld [wcd53], a
+ ld a, [wcd57]
+ call Function17f50f
+ pop de
+ and a
+ ret
+; 17f154
+
+Function17f154: ; 17f154
+ pop hl
+ call Function17f524
+ jr c, .asm_17f167
+ inc hl
+ inc hl
+ ld e, l
+ ld d, h
+ ld a, [de]
+ cp $50
+ jr z, .asm_17f165
+ and a
+ ret
+
+.asm_17f165
+ scf
+ ret
+
+.asm_17f167
+ push bc
+ ld a, [hli]
+ ld e, a
+ ld a, [hli]
+ ld d, a
+ pop bc
+ push hl
+ push bc
+ call Function17f4f6
+ add hl, de
+ ld c, l
+ ld b, h
+ pop de
+ callba Function11c08f
+ ld c, l
+ ld b, h
+ pop de
+ and a
+ ret
+; 17f181
+
+Function17f181: ; 17f181
+ pop hl
+ call Function17f524
+ jr c, .asm_17f19d
+ ld de, $0002
+ add hl, de
+ ld a, [hli]
+ ld e, l
+ ld d, h
+ ld l, c
+ ld h, b
+ ld c, a
+ ld b, $0
+ add hl, bc
+ ld a, [de]
+ cp $50
+ jr z, .asm_17f19b
+ and a
+ ret
+
+.asm_17f19b
+ scf
+ ret
+
+.asm_17f19d
+ push bc
+ ld a, [hli]
+ ld e, a
+ ld a, [hli]
+ ld d, a
+ ld a, [hli]
+ ld [wcd54], a
+ pop bc
+ push hl
+ push bc
+ call Function17f4f6
+ add hl, de
+ ld a, [hl]
+ ld c, a
+ ld de, $c608
+ callba Function48c63
+ pop hl
+ ld de, $c608
+ call PlaceString
+ ld a, c
+ ld [wcd52], a
+ ld a, b
+ ld [wcd53], a
+ ld a, [wcd54]
+ call Function17f50f
+ pop de
+ and a
+ ret
+; 17f1d0
+
+Function17f1d0: ; 17f1d0
+ pop hl
+ call Function17f524
+ jr c, .asm_17f1ec
+ ld de, $0002
+ add hl, de
+ ld a, [hli]
+ ld e, l
+ ld d, h
+ ld l, c
+ ld h, b
+ ld c, a
+ ld b, $0
+ add hl, bc
+ ld a, [de]
+ cp $50
+ jr z, .asm_17f1ea
+ and a
+ ret
+
+.asm_17f1ea
+ scf
+ ret
+
+.asm_17f1ec
+ push bc
+ ld a, [hli]
+ ld e, a
+ ld a, [hli]
+ ld d, a
+ ld a, [hli]
+ ld [wcd54], a
+ pop bc
+ push hl
+ push bc
+ call Function17f4f6
+ add hl, de
+ ld a, [hl]
+ ld a, $1
+ ld [rSVBK], a
+ ld [wd265], a
+ call GetPokemonName
+ pop hl
+ call PlaceString
+ ld a, c
+ ld [wcd52], a
+ ld a, b
+ ld [wcd53], a
+ ld a, $4
+ ld [rSVBK], a
+ ld a, [wcd54]
+ call Function17f50f
+ pop de
+ and a
+ ret
+; 17f220
+
+Function17f220: ; 17f220
+ pop hl
+ call Function17f524
+ jr c, .asm_17f23c
+ ld de, $0002
+ add hl, de
+ ld a, [hli]
+ ld e, l
+ ld d, h
+ ld l, c
+ ld h, b
+ ld c, a
+ ld b, $0
+ add hl, bc
+ ld a, [de]
+ cp $50
+ jr z, .asm_17f23a
+ and a
+ ret
+
+.asm_17f23a
+ scf
+ ret
+
+.asm_17f23c
+ push bc
+ ld a, [hli]
+ ld e, a
+ ld a, [hli]
+ ld d, a
+ ld a, [hli]
+ ld [wcd54], a
+ pop bc
+ push hl
+ push bc
+ call Function17f4f6
+ add hl, de
+ ld a, [hl]
+ ld e, a
+ ld d, 0
+ ld hl, .Genders
+ add hl, de
+ add hl, de
+ ld a, [hli]
+ ld e, a
+ ld a, [hl]
+ ld d, a
+ pop hl
+ call PlaceString
+ ld a, c
+ ld [wcd52], a
+ ld a, b
+ ld [wcd53], a
+ ld a, [wcd54]
+ call Function17f50f
+ pop de
+ and a
+ ret
+; 17f26e
+
+.Genders: dw .Boy, .Girl
+.Boy: db "Boy@"
+.Girl: db "Girl@"
+
+Function17f27b: ; 17f27b
+ pop hl
+ call Function17f524
+ jr c, .asm_17f297
+ ld de, $0002
+ add hl, de
+ ld a, [hli]
+ ld e, l
+ ld d, h
+ ld l, c
+ ld h, b
+ ld c, a
+ ld b, $0
+ add hl, bc
+ ld a, [de]
+ cp $50
+ jr z, .asm_17f295
+ and a
+ ret
+
+.asm_17f295
+ scf
+ ret
+
+.asm_17f297
+ push bc
+ ld a, [hli]
+ ld e, a
+ ld a, [hli]
+ ld d, a
+ ld a, [hli]
+ ld [wcd54], a
+ pop bc
+ push hl
+ push bc
+ call Function17f4f6
+ add hl, de
+ ld a, [hl]
+ ld a, $1
+ ld [rSVBK], a
+ ld [wd265], a
+ call GetItemName
+ pop hl
+ call PlaceString
+ ld a, c
+ ld [wcd52], a
+ ld a, b
+ ld [wcd53], a
+ ld a, $4
+ ld [rSVBK], a
+ ld a, [wcd54]
+ call Function17f50f
+ pop de
+ and a
+ ret
+; 17f2cb
+
+Function17f2cb: ; 17f2cb
+ pop hl
+ push bc
+ ld a, [hli]
+ ld [wcd54], a
+ ld a, [hli]
+ ld [wcd55], a
+ ld a, [wcd2e]
+ inc a
+ ld [wcd56], a
+ pop bc
+ push hl
+ ld l, c
+ ld h, b
+ push hl
+ ld de, wcd56
+ ld b, $1
+ ld a, [wcd54]
+ ld c, a
+ call Function31a4
+ ld a, l
+ ld [wcd52], a
+ ld a, h
+ ld [wcd53], a
+ pop hl
+ ld a, [wcd55]
+ call Function17f50f
+ pop de
+ and a
+ ret
+; 17f2ff
+
+Function17f2ff: ; 17f2ff
+ pop hl
+ push bc
+ ld a, [hli]
+ ld [wcd54], a
+ pop bc
+ push hl
+ push bc
+ ld a, $1
+ ld [rSVBK], a
+ ld hl, PlayerName
+ ld de, $c608
+ ld bc, $0006
+ call CopyBytes
+ ld a, $4
+ ld [rSVBK], a
+ pop hl
+ ld de, $c608
+ call PlaceString
+ ld a, c
+ ld [wcd52], a
+ ld a, b
+ ld [wcd53], a
+ ld a, [wcd54]
+ call Function17f50f
+ pop de
+ and a
+ ret
+; 17f334
+
+Function17f334: ; 17f334
+ pop hl
+ push bc
+ ld a, [hli]
+ ld [wcd55], a
+ and $f
+ ld [wcd54], a
+ pop bc
+ push hl
+ ld l, c
+ ld h, b
+ push hl
+ ld a, [wcd55]
+ bit 7, a
+ jr nz, .asm_17f355
+ ld a, $1
+ call GetSRAMBank
+ ld a, [$be3f]
+ jr .asm_17f35d
+
+.asm_17f355
+ ld a, $5
+ call GetSRAMBank
+ ld a, [$b2f3]
+
+.asm_17f35d
+ ld c, a
+ call CloseSRAM
+ ld de, $c608
+ callba Function48c63
+ pop hl
+ ld de, $c608
+ call PlaceString
+ ld a, c
+ ld [wcd52], a
+ ld a, b
+ ld [wcd53], a
+ ld a, [wcd54]
+ call Function17f50f
+ pop de
+ and a
+ ret
+; 17f382
+
+Function17f382: ; 17f382
+ pop hl
+ push bc
+ ld a, [hli]
+ ld [wcd55], a
+ and $f
+ ld [wcd54], a
+ pop bc
+ push hl
+ push bc
+ ld l, c
+ ld h, b
+ ld a, [wcd55]
+ bit 7, a
+ jr nz, .asm_17f3a3
+ ld a, $1
+ call GetSRAMBank
+ ld de, $be40
+ jr .asm_17f3ab
+
+.asm_17f3a3
+ ld a, $5
+ call GetSRAMBank
+ ld de, $b2f4
+
+.asm_17f3ab
+ ld a, $82
+ ld b, a
+ ld a, $3
+ ld c, a
+ call PrintNum
+ call CloseSRAM
+ ld a, l
+ ld [wcd52], a
+ ld a, h
+ ld [wcd53], a
+ pop hl
+ ld a, [wcd54]
+ call Function17f50f
+ pop de
+ and a
+ ret
+; 17f3c9
+
+Function17f3c9: ; 17f3c9
+ push bc
+ ld hl, wcd36
+ ld de, wc708
+ ld bc, $000c
+ call CopyBytes
+ pop de
+ ld c, $0
+ callba Function11c075
+ push hl
+ ld hl, wc708
+ ld de, wcd36
+ ld bc, $000c
+ call CopyBytes
+ pop bc
+ pop de
+ and a
+ ret
+; 17f3f0
+
+Function17f3f0: ; 17f3f0
+ pop hl
+ push hl
+ ld a, [hli]
+ push af
+ push bc
+ ld a, [hli]
+ ld e, a
+ ld a, [hli]
+ ld d, a
+ ld a, [de]
+ ld c, a
+ ld b, $0
+ add hl, bc
+ add hl, bc
+ ld a, [hli]
+ ld e, a
+ ld a, [hli]
+ ld d, a
+ ld hl, Unkn1Pals
+ add hl, de
+ ld e, l
+ ld d, h
+ pop hl
+ call PlaceString
+ pop af
+ ld e, a
+ ld d, $0
+ pop hl
+ add hl, de
+ add hl, de
+ inc hl
+ inc hl
+ inc hl
+ ld e, l
+ ld d, h
+ ld l, c
+ ld h, b
+ scf
+ ret
+; 17f41d
+
+Function17f41d: ; 17f41d
+ pop hl
+ ld a, [hli]
+ push hl
+ push af
+ ld l, c
+ ld h, b
+ ld bc, -TileMap + $10000
+ add hl, bc
+ ld de, -SCREEN_WIDTH
+ ld c, $1
+.asm_17f42c
+ ld a, h
+ and a
+ jr nz, .asm_17f435
+ ld a, l
+ cp SCREEN_WIDTH
+ jr c, .asm_17f439
+
+.asm_17f435
+ add hl, de
+ inc c
+ jr .asm_17f42c
+
+.asm_17f439
+ ld hl, TileMap
+ ld de, SCREEN_WIDTH
+ ld a, c
+.asm_17f440
+ and a
+ jr z, .asm_17f447
+ add hl, de
+ dec a
+ jr .asm_17f440
+
+.asm_17f447
+ pop af
+ ld e, a
+ ld d, 0
+ add hl, de
+ pop de
+ and a
+ ret
+; 17f44f
+
+Function17f44f: ; 17f44f
+ pop hl
+ call Function17f524
+ jr c, .asm_17f46d
+ ld de, $0005
+ add hl, de
+ ld a, [hli]
+ inc hl
+ inc hl
+ ld e, l
+ ld d, h
+ ld l, c
+ ld h, b
+ ld c, a
+ ld b, 0
+ add hl, bc
+ ld a, [de]
+ cp $50
+ jr z, .asm_17f46b
+ and a
+ ret
+
+.asm_17f46b
+ scf
+ ret
+
+.asm_17f46d
+ push bc
+ ld de, wcd54
+ ld bc, $0008
+ call CopyBytes
+ pop bc
+ push hl
+ push bc
+ ld a, [wcd56]
+ cp $c0
+ jr c, .asm_17f488
+ ld a, [wcd54]
+ ld [rSVBK], a
+ jr .asm_17f48e
+
+.asm_17f488
+ ld a, [wcd54]
+ call GetSRAMBank
+
+.asm_17f48e
+ ld a, [wcd55]
+ ld l, a
+ ld a, [wcd56]
+ ld h, a
+ ld de, $c608
+ ld a, [wcd57]
+ ld c, a
+ ld b, $0
+ call CopyBytes
+ ld a, [wcd56]
+ cp $c0
+ jr c, .asm_17f4af
+ ld a, $4
+ ld [rSVBK], a
+ jr .asm_17f4b7
+
+.asm_17f4af
+ call CloseSRAM
+ ld a, $6
+ call GetSRAMBank
+
+.asm_17f4b7
+ ld de, $c608
+ pop hl
+ push hl
+ ld a, [wcd57]
+ ld b, a
+ ld a, [wcd58]
+ ld c, a
+ call Function31a4
+ ld a, l
+ ld [wcd52], a
+ ld a, h
+ ld [wcd53], a
+ ld a, [wcd5a]
+ and a
+ jr z, .asm_17f4ec
+ ld c, a
+ ld a, [wcd58]
+ inc a
+ ld b, a
+ ld e, l
+ ld d, h
+ dec de
+.asm_17f4de
+ ld a, c
+ cp b
+ jr z, .asm_17f4e8
+ ld a, [de]
+ dec de
+ ld [hld], a
+ dec b
+ jr .asm_17f4de
+
+.asm_17f4e8
+ ld a, [wcd5b]
+ ld [hl], a
+
+.asm_17f4ec
+ pop hl
+ ld a, [wcd59]
+ call Function17f50f
+ pop de
+ and a
+ ret
+; 17f4f6
+
+Function17f4f6: ; 17f4f6
+ ld a, [wcd6a]
+ ld l, a
+ ld a, [wcd6b]
+ ld h, a
+ ld a, [wcd47]
+ ld c, a
+ ld a, [BGMapPalBuffer]
+ ld b, a
+ ld a, [wcd2e]
+.asm_17f509
+ and a
+ ret z
+ dec a
+ add hl, bc
+ jr .asm_17f509
+; 17f50f
+
+Function17f50f: ; 17f50f
+ and a
+ jr z, .asm_17f519
+ ld c, a
+ ld b, $0
+ add hl, bc
+ ld c, l
+ ld b, h
+ ret
+
+.asm_17f519
+ ld a, [wcd52]
+ ld c, a
+ ld l, a
+ ld a, [wcd53]
+ ld b, a
+ ld h, a
+ ret
+; 17f524
+
+Function17f524: ; 17f524
+ push hl
+ push bc
+ push de
+ ld a, [wcd42]
+ dec a
+ ld b, a
+ ld a, [wcd2e]
+ cp b
+ jr z, .asm_17f53a
+ ld hl, wcd68
+ cp [hl]
+.asm_17f536
+ pop de
+ pop bc
+ pop hl
+ ret
+
+.asm_17f53a
+ scf
+ jr .asm_17f536
+; 17f53d
+
+Function17f53d: ; 17f53d
+ call FadeToMenu
+ xor a
+ ld [wc303], a
+ ld a, [rSVBK]
+ push af
+ ld a, $1
+ ld [rSVBK], a
+ call Function17f555
+ pop af
+ ld [rSVBK], a
+ call Function2b4d
+ ret
+; 17f555
+
+Function17f555: ; 17f555
+.asm_17f555
+ call Functiona57
+ call Function17f5ae
+ ld a, [wc303]
+ bit 7, a
+ jr nz, .asm_17f56a
+ callba Function104000
+ jr .asm_17f555
+
+.asm_17f56a
+ call Function17f56e
+ ret
+; 17f56e
+
+Function17f56e: ; 17f56e
+ ld a, [wc300]
+ cp $22
+ jr z, .asm_17f597
+ cp $31
+ jr z, .asm_17f58a
+ cp $33
+ ret nz
+ ld a, [wc301]
+ cp $1
+ ret nz
+ ld a, [wc302]
+ cp $2
+ ret nz
+ jr .asm_17f5a1
+
+.asm_17f58a
+ ld a, [wc301]
+ cp $3
+ ret nz
+ ld a, [wc302]
+ and a
+ ret nz
+ jr .asm_17f5a1
+
+.asm_17f597
+ ld a, [wc301]
+ and a
+ ret nz
+ ld a, [wc302]
+ and a
+ ret nz
+
+.asm_17f5a1
+ ld a, $5
+ call GetSRAMBank
+ xor a
+ ld [$aa4b], a
+ call CloseSRAM
+ ret
+; 17f5ae
+
+Function17f5ae: ; 17f5ae
+ ld a, [wc303]
+ ld e, a
+ ld d, 0
+ ld hl, Table17f5bd
+ add hl, de
+ add hl, de
+ ld a, [hli]
+ ld h, [hl]
+ ld l, a
+ jp [hl]
+; 17f5bd
+
+Table17f5bd: ; 17f5bd
+ dw Function17f5c3
+ dw Function17ff23
+ dw Function17f5d2
+; 17f5c3
+
+Function17f5c3: ; 17f5c3
+ call Function17f5e4
+ callba Function2b5c
+ ld a, $1
+ ld [wc303], a
+ ret
+; 17f5d2
+
+Function17f5d2: ; 17f5d2
+ call Function17f5e4
+ callba Function104000
+ call Function32f9
+ ld a, $1
+ ld [wc303], a
+ ret
+; 17f5e4
+
+Function17f5e4: ; 17f5e4
+ ld a, $8
+ ld [MusicFade], a
+ ld de, MUSIC_NONE
+ ld a, e
+ ld [MusicFadeIDLo], a
+ ld a, d
+ ld [MusicFadeIDHi], a
+ ld a, " "
+ ld hl, TileMap
+ ld bc, $0168
+ call ByteFill
+ ld a, $6
+ ld hl, AttrMap
+ ld bc, $0168
+ call ByteFill
+ hlcoord 2, 1
+ ld b, $1
+ ld c, $e
+ call Function3eea
+ hlcoord 1, 4
+ ld b, $c
+ ld c, $10
+ call Function3eea
+ hlcoord 3, 2
+ ld de, String_17f6dc
+ call PlaceString
+ call Function17ff3c
+ jr nc, .asm_17f632
+ hlcoord 11, 2
+ call Function17f6b7
+
+.asm_17f632
+ ld a, [wc300]
+ cp $d0
+ jr nc, .asm_17f684
+ cp $10
+ jr c, .asm_17f679
+ sub $10
+ cp $24
+ jr nc, .asm_17f679
+ ld e, a
+ ld d, $0
+ ld hl, Table_17f706
+ add hl, de
+ add hl, de
+ ld a, [wc301]
+ ld e, a
+ ld a, [wc302]
+ ld d, a
+ ld a, [hli]
+ ld c, a
+ ld a, [hl]
+ ld h, a
+ ld l, c
+ ld a, [hli]
+ and a
+ jr z, .asm_17f679
+ ld c, a
+.asm_17f65d
+ ld a, [hli]
+ ld b, a
+ ld a, [hli]
+ cp $ff
+ jr nz, .asm_17f667
+ cp b
+ jr z, .asm_17f66e
+
+.asm_17f667
+ xor d
+ jr nz, .asm_17f674
+ ld a, b
+ xor e
+ jr nz, .asm_17f674
+
+.asm_17f66e
+ ld a, [hli]
+ ld e, a
+ ld a, [hl]
+ ld d, a
+ jr .asm_17f67d
+
+.asm_17f674
+ inc hl
+ inc hl
+ dec c
+ jr nz, .asm_17f65d
+
+.asm_17f679
+ ld a, $d9
+ jr .asm_17f684
+
+.asm_17f67d
+ hlcoord 2, 6
+ call PlaceString
+ ret
+
+.asm_17f684
+ sub $d0
+ ld e, a
+ ld d, 0
+ ld hl, Table_17f699
+ add hl, de
+ add hl, de
+ ld a, [hli]
+ ld e, a
+ ld a, [hl]
+ ld d, a
+ hlcoord 2, 6
+ call PlaceString
+ ret
+; 17f699
+
+Table_17f699: ; 17f699
+ dw String_17fedf
+ dw String_17fdd9
+ dw String_17fdd9
+ dw String_17fe03
+ dw String_17fd84
+ dw String_17fe63
+ dw String_17fdb2
+ dw String_17fe4b
+ dw String_17fe03
+ dw String_17fe03
+ dw String_17fe03
+; 17f6af
+
+Palette_17f6af: ; 17f6af
+ RGB 5, 5, 16
+ RGB 8, 19, 28
+ RGB 0, 0, 0
+ RGB 31, 31, 31
+; 17f6b7
+
+Function17f6b7: ; 17f6b7
+ ld a, [wc300]
+ call Function17f6cd
+ inc hl
+ ld a, [wc302]
+ and $f
+ call Function17f6d8
+ ld a, [wc301]
+ call Function17f6cd
+ ret
+; 17f6cd
+
+Function17f6cd: ; 17f6cd
+ ld c, a
+ and $f0
+ swap a
+ call Function17f6d8
+ ld a, c
+ and $f
+
+Function17f6d8: ; 17f6d8
+ add $f6
+ ld [hli], a
+ ret
+; 17f6dc
+
+String_17f6dc: ; 17f6dc
+ db "つうしんエラー ー@"
+; 17f6e8
+
+String_17f6e8: ; 17f6e8
+ db "みていぎ", $25, "エラーです"
+ next "プログラム", $1f
+ next "かくにん してください"
+ db "@"
+; 17f706
+
+Table_17f706:
+ dw Unknown_17f74e
+ dw Unknown_17f753
+ dw Unknown_17f758
+ dw Unknown_17f75d
+ dw Unknown_17f762
+ dw Unknown_17f767
+ dw Unknown_17f778
+ dw Unknown_17f77d
+ dw Unknown_17f782
+ dw Unknown_17f782
+ dw Unknown_17f782
+ dw Unknown_17f782
+ dw Unknown_17f782
+ dw Unknown_17f782
+ dw Unknown_17f782
+ dw Unknown_17f782
+ dw Unknown_17f782
+ dw Unknown_17f787
+ dw Unknown_17f78c
+ dw Unknown_17f791
+ dw Unknown_17f796
+ dw Unknown_17f79b
+ dw Unknown_17f7a0
+ dw Unknown_17f7a5
+ dw Unknown_17f7a5
+ dw Unknown_17f7a5
+ dw Unknown_17f7a5
+ dw Unknown_17f7a5
+ dw Unknown_17f7a5
+ dw Unknown_17f7a5
+ dw Unknown_17f7a5
+ dw Unknown_17f7a5
+ dw Unknown_17f7a5
+ dw Unknown_17f7ea
+ dw Unknown_17f7ff
+ dw Unknown_17f844
+
+Unknown_17f74e: db 1
+ dbbw $0, $0, String_17f891
+
+Unknown_17f753: db 1
+ dbbw $0, $0, String_17f8d1
+
+Unknown_17f758: db 1
+ dbbw $0, $0, String_17f913
+
+Unknown_17f75d: db 1
+ dbbw $0, $0, String_17f8d1
+
+Unknown_17f762: db 1
+ dbbw $0, $0, String_17fa71
+
+Unknown_17f767: db 4
+ dbbw $0, $0, String_17f946
+ dbbw $1, $0, String_17f946
+ dbbw $2, $0, String_17f946
+ dbbw $3, $0, String_17f946
+
+Unknown_17f778: db 1
+ dbbw $0, $0, String_17f98e
+
+Unknown_17f77d: db 1
+ dbbw $0, $0, String_17f98e
+
+Unknown_17f782: db 1
+ dbbw $0, $0, String_17f98e
+
+Unknown_17f787: db 1
+ dbbw $0, $0, String_17f98e
+
+Unknown_17f78c: db 1
+ dbbw $0, $0, String_17f9d0
+
+Unknown_17f791: db 1
+ dbbw $0, $0, String_17fa14
+
+Unknown_17f796: db 1
+ dbbw $0, $0, String_17fcbf
+
+Unknown_17f79b: db 1
+ dbbw $0, $0, String_17fa71
+
+Unknown_17f7a0: db 1
+ dbbw $0, $0, String_17fbfe
+
+Unknown_17f7a5: db 17
+ dbbw $0, $0, String_17f98e
+ dbbw $21, $2, String_17fcbf
+ dbbw $21, $4, String_17fcbf
+ dbbw $50, $4, String_17faf9
+ dbbw $51, $4, String_17fcbf
+ dbbw $52, $4, String_17fcbf
+ dbbw $0, $5, String_17f98e
+ dbbw $1, $5, String_17f98e
+ dbbw $2, $5, String_17f98e
+ dbbw $3, $5, String_17f98e
+ dbbw $4, $5, String_17f98e
+ dbbw $50, $5, String_17faf9
+ dbbw $51, $5, String_17faf9
+ dbbw $52, $5, String_17fcbf
+ dbbw $53, $5, String_17faf9
+ dbbw $54, $5, String_17fcbf
+ dbbw $ff, $ff, String_17fcbf
+
+Unknown_17f7ea: db 5
+ dbbw $0, $0, String_17f98e
+ dbbw $2, $0, String_17fb2a
+ dbbw $3, $0, String_17fb6e
+ dbbw $4, $0, String_17f98e
+ dbbw $ff, $ff, String_17fcbf
+
+Unknown_17f7ff: db 17
+ dbbw $0, $0, String_17f98e
+ dbbw $1, $3, String_17f98e
+ dbbw $2, $3, String_17f98e
+ dbbw $0, $4, String_17f98e
+ dbbw $1, $4, String_17f98e
+ dbbw $3, $4, String_17fbb6
+ dbbw $4, $4, String_17fbb6
+ dbbw $5, $4, String_17f98e
+ dbbw $6, $4, String_17f98e
+ dbbw $7, $4, String_17f98e
+ dbbw $8, $4, String_17fbfe
+ dbbw $0, $5, String_17fa49
+ dbbw $1, $5, String_17f98e
+ dbbw $2, $5, String_17fa49
+ dbbw $3, $5, String_17fab0
+ dbbw $4, $5, String_17fa49
+ dbbw $ff, $ff, String_17fa49
+
+Unknown_17f844: db 19
+ dbbw $1, $1, String_17fc3e
+ dbbw $2, $1, String_17fc88
+ dbbw $3, $1, String_17fcff
+ dbbw $4, $1, String_17fd84
+ dbbw $5, $1, String_17fd84
+ dbbw $6, $1, String_17fd47
+ dbbw $1, $2, String_17fb6e
+ dbbw $2, $2, String_17f98e
+ dbbw $3, $2, String_17fd84
+ dbbw $4, $2, String_17f98e
+ dbbw $5, $2, String_17fa49
+ dbbw $6, $2, String_17fd84
+ dbbw $99, $2, String_17fc88
+ dbbw $1, $3, String_17fa49
+ dbbw $1, $4, String_17fa49
+ dbbw $2, $4, String_17fa49
+ dbbw $3, $4, String_17fa49
+ dbbw $4, $4, String_17fa49
+ dbbw $ff, $ff, String_17fa49
+
+String_17f891: ; 17f891
+ db "モバイルアダプタが ただしく"
+ next "さしこまれていません"
+ next "とりあつかいせつめいしょを"
+ next "ごらんのうえ しっかりと"
+ next "さしこんで ください"
+ db "@"
+
+String_17f8d1: ; 17f8d1
+ db "でんわが うまく かけられないか"
+ next "でんわかいせんが こんでいるので"
+ next "つうしん できません"
+ next "しばらく まって"
+ next "かけなおして ください"
+ db "@"
+
+String_17f913: ; 17f913
+ db "でんわかいせんが こんでいるため"
+ next "でんわが かけられません"
+ next "しばらく まって"
+ next "かけなおして ください"
+ db "@"
+
+String_17f946: ; 17f946
+ db "モバイルアダプタの エラーです"
+ next "しばらく まって"
+ next "かけなおして ください"
+ next "なおらない ときは"
+ next "モバイルサポートセンターへ"
+ next "おといあわせください"
+ db "@"
+
+String_17f98e: ; 17f98e
+ db "つうしんエラーです"
+ next "しばらく まって"
+ next "かけなおして ください"
+ next "なおらない ときは"
+ next "モバイルサポートセンターへ"
+ next "おといあわせください"
+ db "@"
+
+String_17f9d0: ; 17f9d0
+ db "ログインパスワードか"
+ next "ログイン アイディーに"
+ next "まちがいがあります"
+ next "パスワードを かくにんして"
+ next "しばらく まって"
+ next "かけなおして ください"
+ db "@"
+
+String_17fa14: ; 17fa14
+ db "でんわが きれました"
+ next "とりあつかいせつめいしょを"
+ next "ごらんのうえ"
+ next "しばらく まって"
+ next "かけなおして ください"
+ db "@"
+
+String_17fa49: ; 17fa49
+ db "モバイルセンターの"
+ next "つうしんエラーです"
+ next "しばらくまって"
+ next "かけなおして ください"
+ db "@"
+
+String_17fa71: ; 17fa71
+ db "モバイルアダプタに"
+ next "とうろくされた じょうほうが"
+ next "ただしく ありません"
+ next "モバイルトレーナーで"
+ next "しょきとうろくを してください"
+ db "@"
+
+String_17fab0: ; 17fab0
+ db "モバイルセンターが"
+ next "こんでいて つながりません"
+ next "しばらくまって"
+ next "かけなおして ください"
+ next "くわしくは とりあつかい"
+ next "せつめいしょを ごらんください"
+ db "@"
+
+String_17faf9: ; 17faf9
+ db "あてさき メールアドレスに"
+ next "まちがいがあります"
+ next "ただしい メールアドレスを"
+ next "いれなおしてください"
+ db "@"
+
+String_17fb2a: ; 17fb2a
+ db "メールアドレスに"
+ next "まちがいが あります"
+ next "とりあつかいせつめいしょを"
+ next "ごらんのうえ"
+ next "モバイルトレーナーで"
+ next "しょきとうろくを してください"
+ db "@"
+
+String_17fb6e: ; 17fb6e
+ db "ログインパスワードに"
+ next "まちがいが あるか"
+ next "モバイルセンターの エラーです"
+ next "パスワードを かくにんして"
+ next "しばらく まって"
+ next "かけなおして ください"
+ db "@"
+
+String_17fbb6: ; 17fbb6
+ db "データの よみこみが できません"
+ next "しばらくまって"
+ next "かけなおして ください"
+ next "なおらない ときは"
+ next "モバイルサポートセンターへ"
+ next "おといあわせください"
+ db "@"
+
+String_17fbfe: ; 17fbfe
+ db "じかんぎれです"
+ next "でんわが きれました"
+ next "でんわを かけなおしてください"
+ next "くわしくは とりあつかい"
+ next "せつめいしょを ごらんください"
+ db "@"
+
+String_17fc3e: ; 17fc3e
+ db "ごりよう りょうきんの "
+ next "おしはらいが おくれたばあいには"
+ next "ごりようが できなくなります"
+ next "くわしくは とりあつかい"
+ next "せつめいしょを ごらんください"
+ db "@"
+
+String_17fc88: ; 17fc88
+ db "おきゃくさまの ごつごうにより"
+ next "ごりようできません"
+ next "くわしくは とりあつかい"
+ next "せつめいしょを ごらんください"
+ db "@"
+
+String_17fcbf: ; 17fcbf
+ db "でんわかいせんが こんでいるか"
+ next "モバイルセンターの エラーで"
+ next "つうしんが できません"
+ next "しばらく まって"
+ next "かけなおして ください"
+ db "@"
+
+String_17fcff: ; 17fcff
+ db "ごりよう りょうきんが"
+ next "じょうげんを こえているため"
+ next "こんげつは ごりようできません"
+ next "くわしくは とりあつかい"
+ next "せつめいしょを ごらんください"
+ db "@"
+
+String_17fd47: ; 17fd47
+ db "げんざい モバイルセンターの"
+ next "てんけんを しているので"
+ next "つうしんが できません"
+ next "しばらく まって"
+ next "かけなおして ください"
+ db "@"
+
+String_17fd84: ; 17fd84
+ db "データの よみこみが できません"
+ next "くわしくは とりあつかい"
+ next "せつめいしょを ごらんください"
+ db "@"
+
+
+String_17fdb2: ; 17fdb2
+ db "3ぷん いじょう なにも"
+ next "にゅうりょく しなかったので"
+ next "でんわが きれました"
+ db "@"
+
+String_17fdd9: ; 17fdd9
+ db "つうしんが うまく"
+ next "できませんでした"
+ next "もういちど はじめから"
+ next "やりなおしてください"
+ db "@"
+
+String_17fe03: ; 17fe03
+ db "データの よみこみが できません"
+ next "しばらくまって"
+ next "かけなおして ください"
+ next "なおらない ときは"
+ next "モバイルサポートセンターへ"
+ next "おといあわせください"
+ db "@"
+
+String_17fe4b: ; 17fe4b
+ db "まちじかんが ながいので"
+ next "でんわが きれました"
+ db "@"
+
+String_17fe63: ; 17fe63
+ db "あいての モバイルアダプタと"
+ next "タイプが ちがいます"
+ next "くわしくは とりあつかい"
+ next "せつめいしょを ごらんください"
+ db "@"
+
+String_17fe9a: ; 17fe9a ; unreferenced
+ db "ポケモンニュースが"
+ next "あたらしくなっているので"
+ next "レポートを おくれません"
+ next "あたらしい ポケモンニュースの"
+ next "よみこみを さきに してください"
+ db "@"
+
+String_17fedf: ; 17fedf
+ db "つうしんの じょうきょうが"
+ next "よくないか かけるあいてが"
+ next "まちがっています"
+ next "もういちど かくにんをして"
+ next "でんわを かけなおして ください"
+ db "@"
+; 17ff23
+
+Function17ff23: ; 17ff23
+ ld a, [hJoyPressed]
+ and a
+ ret z
+ ld a, $8
+ ld [MusicFade], a
+ ld a, [wMapMusic]
+ ld [MusicFadeIDLo], a
+ xor a
+ ld [MusicFadeIDHi], a
+ ld hl, wc303
+ set 7, [hl]
+ ret
+; 17ff3c
+
+Function17ff3c: ; 17ff3c
+ nop
+ ld a, [wc300]
+ cp $d0
+ ret c
+ hlcoord 10, 2
+ ld de, String_17ff68
+ call PlaceString
+ ld a, [wc300]
+ push af
+ sub $d0
+ inc a
+ ld [wc300], a
+ hlcoord 14, 2
+ ld de, wc300
+ ld bc, $8103
+ call PrintNum
+ pop af
+ ld [wc300], a
+ and a
+ ret
+; 17ff68
+
+String_17ff68: ; 17ff68
+ db "101@"
+; 17ff6c
+
diff --git a/misc/unused_title.asm b/misc/unused_title.asm
new file mode 100644
index 000000000..4364f19a2
--- /dev/null
+++ b/misc/unused_title.asm
@@ -0,0 +1,559 @@
+
+SECTION "bank43", ROMX, BANK[$43]
+
+UnusedTitleScreen: ; 10c000
+
+ call WhiteBGMap
+ call ClearTileMap
+ call DisableLCD
+ xor a
+ ld [hBGMapMode], a
+
+ ld hl, wcf63
+ ld [hli], a
+ ld [hli], a
+ ld [hli], a
+ ld [hl], a
+
+ ld hl, UnusedTitleBG_GFX
+ ld de, VTiles2
+ ld bc, $800
+ call CopyBytes
+
+ ld hl, UnusedTitleBG_GFX + $800
+ ld de, VTiles1
+ ld bc, $800
+ call CopyBytes
+
+ ld hl, UnusedTitleFG_GFX
+ ld de, VTiles0
+ ld bc, $800
+ call CopyBytes
+
+ ld hl, UnusedTitleBG_Tilemap
+ ld de, VBGMap0
+ ld bc, 32 * 32
+.copy
+ ld a, 0
+ ld [rVBK], a
+ ld a, [hli]
+ ld [de], a
+ ld a, 1
+ ld [rVBK], a
+ ld a, [hli]
+ ld [de], a
+ inc de
+ dec bc
+ ld a, b
+ or c
+ jr nz, .copy
+
+ ld hl, UnusedTitleFG_OAM
+ ld de, Sprites
+ ld bc, $a0
+ call CopyBytes
+
+ call EnableLCD
+ ld a, [rLCDC]
+ set 1, a
+ set 2, a
+ ld [rLCDC], a
+
+ call DelayFrame
+
+ ld a, [rSVBK]
+ push af
+ ld a, $5
+ ld [rSVBK], a
+
+ ld hl, UnsuedTitleBG_Palettes
+ ld de, Unkn1Pals
+ ld bc, $40
+ call CopyBytes
+
+ ld hl, UnsuedTitleFG_Palettes
+ ld de, Unkn2Pals
+ ld bc, $40
+ call CopyBytes
+
+ ld hl, UnsuedTitleBG_Palettes
+ ld de, BGPals
+ ld bc, $40
+ call CopyBytes
+
+ ld hl, UnsuedTitleFG_Palettes
+ ld de, OBPals
+ ld bc, $40
+ call CopyBytes
+
+ pop af
+ ld [rSVBK], a
+
+ ld a, $1
+ ld [hCGBPalUpdate], a
+
+ ld de, MUSIC_TITLE
+ call PlayMusic
+
+ ret
+; 10c0b1
+
+UnusedTitleBG_GFX: ; 10c0b1
+INCBIN "gfx/title/old_bg.2bpp"
+; 10d0b1
+
+UnusedTitleBG_Tilemap: ; 10d0b1
+; 32x32 (tile, attributes)
+ db $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $01,$00, $02,$01, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00
+ db $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $03,$00, $04,$00, $05,$01, $06,$01, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00
+ db $00,$00, $00,$00, $07,$05, $08,$05, $09,$05, $0a,$05, $0b,$00, $0c,$00, $0d,$00, $0e,$00, $0f,$01, $10,$01, $11,$01, $12,$01, $13,$05, $14,$05, $15,$05, $16,$05, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00
+ db $00,$00, $00,$00, $17,$04, $18,$04, $19,$04, $1a,$04, $1b,$00, $1c,$00, $1d,$02, $1e,$02, $1f,$07, $20,$07, $21,$01, $22,$01, $23,$04, $24,$04, $25,$04, $26,$04, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00
+ db $00,$00, $00,$00, $27,$04, $28,$04, $29,$04, $2a,$04, $2b,$00, $2c,$00, $2d,$03, $2e,$01, $2f,$01, $30,$01, $31,$01, $32,$01, $33,$04, $34,$04, $35,$04, $36,$04, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00
+ db $00,$00, $00,$00, $37,$04, $38,$04, $39,$04, $3a,$04, $3b,$00, $3c,$00, $3d,$01, $00,$00, $00,$00, $3e,$07, $3f,$01, $40,$01, $41,$04, $42,$04, $43,$04, $44,$04, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00
+ db $00,$00, $00,$00, $45,$04, $46,$04, $47,$04, $48,$04, $49,$00, $3c,$00, $4a,$01, $00,$00, $00,$00, $4b,$07, $3f,$01, $4c,$01, $4d,$06, $4e,$06, $4f,$06, $50,$06, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00
+ db $00,$00, $00,$00, $51,$04, $52,$06, $53,$06, $54,$06, $55,$00, $3c,$00, $56,$01, $00,$00, $00,$00, $57,$07, $58,$01, $59,$01, $5a,$06, $5b,$06, $5c,$06, $5d,$06, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00
+ db $00,$00, $00,$00, $5e,$06, $5f,$06, $60,$06, $61,$06, $62,$00, $63,$00, $64,$03, $65,$01, $66,$01, $67,$07, $68,$01, $69,$01, $26,$04, $6a,$06, $26,$04, $26,$04, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00
+ db $00,$00, $00,$00, $6b,$00, $6c,$05, $6d,$05, $6e,$05, $6f,$00, $70,$02, $71,$02, $72,$01, $73,$00, $74,$02, $75,$01, $76,$01, $77,$05, $78,$05, $79,$05, $6b,$00, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00
+ db $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $7a,$00, $7b,$00, $7c,$00, $7d,$00, $0f,$01, $7e,$01, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00
+ db $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $a2,$00, $80,$00, $81,$00, $82,$00, $83,$00, $84,$07, $85,$01, $86,$01, $87,$01, $88,$01, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00
+ db $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $89,$00, $8a,$00, $8b,$00, $8c,$07, $8d,$01, $8e,$01, $8f,$01, $90,$01, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00
+ db $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $91,$01, $92,$01, $93,$01, $94,$01, $95,$01, $00,$00, $00,$00, $00,$00, $96,$05, $97,$05, $98,$05, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00
+ db $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $99,$05, $9a,$05, $9b,$05, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00
+ db $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $9c,$05, $9d,$05, $9e,$05, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00
+ db $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $9f,$05, $a0,$05, $a1,$05, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00
+ db $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00
+ db $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00
+ db $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00
+ db $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00
+ db $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00
+ db $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00
+ db $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00
+ db $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00
+ db $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00
+ db $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $6b,$00, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00
+ db $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00
+ db $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00
+ db $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00
+ db $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00
+ db $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00, $00,$00
+; 10d8b1
+
+UnsuedTitleBG_Palettes: ; 10d8b1
+ RGB 00, 00, 00
+ RGB 25, 15, 28
+ RGB 22, 11, 28
+ RGB 19, 08, 26
+
+ RGB 00, 00, 00
+ RGB 17, 07, 22
+ RGB 13, 07, 16
+ RGB 19, 08, 26
+
+ RGB 25, 15, 28
+ RGB 22, 11, 28
+ RGB 19, 08, 26
+ RGB 17, 07, 22
+
+ RGB 22, 11, 28
+ RGB 19, 08, 26
+ RGB 17, 07, 22
+ RGB 13, 07, 16
+
+ RGB 00, 00, 00
+ RGB 31, 31, 31
+ RGB 16, 16, 24
+ RGB 02, 13, 21
+
+ RGB 00, 00, 00
+ RGB 31, 31, 31
+ RGB 20, 20, 20
+ RGB 12, 12, 12
+
+ RGB 00, 00, 00
+ RGB 01, 11, 23
+ RGB 16, 16, 24
+ RGB 02, 13, 21
+
+ RGB 00, 00, 00
+ RGB 22, 10, 31
+ RGB 19, 08, 26
+ RGB 17, 07, 22
+
+
+ RGB 31, 31, 31
+ RGB 31, 31, 31
+ RGB 31, 31, 31
+ RGB 31, 31, 31
+
+ RGB 31, 31, 31
+ RGB 20, 04, 20
+ RGB 16, 08, 16
+ RGB 24, 00, 24
+
+ rept 54
+ RGB 31, 31, 31
+ RGB 31, 31, 31
+ RGB 31, 31, 31
+ RGB 31, 31, 31
+ endr
+; 10dab1
+
+UnusedTitleFG_GFX: ; 10dab1
+INCBIN "gfx/title/old_fg.2bpp"
+; 10eab1
+
+UnsuedTitleFG_Palettes: ; 10eab1
+ RGB 00, 00, 00
+ RGB 31, 31, 31
+ RGB 16, 16, 24
+ RGB 02, 13, 21
+
+ RGB 00, 00, 00
+ RGB 31, 31, 31
+ RGB 20, 20, 20
+ RGB 12, 12, 12
+
+ RGB 00, 00, 00
+ RGB 01, 11, 23
+ RGB 16, 16, 24
+ RGB 02, 13, 21
+
+ RGB 00, 00, 00
+ RGB 31, 22, 00
+ RGB 31, 27, 00
+ RGB 31, 31, 00
+
+ RGB 00, 00, 00
+ RGB 31, 31, 31
+ RGB 16, 16, 24
+ RGB 02, 13, 21
+
+ RGB 00, 00, 00
+ RGB 31, 31, 31
+ RGB 20, 20, 20
+ RGB 12, 12, 12
+
+ RGB 00, 00, 00
+ RGB 01, 11, 23
+ RGB 16, 16, 24
+ RGB 02, 13, 21
+
+ RGB 16, 31, 00
+ RGB 22, 31, 00
+ RGB 27, 31, 00
+ RGB 31, 31, 00
+
+
+ RGB 31, 00, 18
+ RGB 31, 31, 31
+ RGB 16, 16, 24
+ RGB 02, 13, 21
+
+ RGB 00, 00, 00
+ RGB 31, 31, 31
+ RGB 20, 20, 20
+ RGB 12, 12, 12
+
+ RGB 00, 00, 00
+ RGB 01, 11, 23
+ RGB 16, 16, 24
+ RGB 02, 13, 21
+
+ RGB 16, 31, 00
+ RGB 22, 31, 00
+ RGB 27, 31, 00
+ RGB 31, 31, 00
+
+ RGB 24, 18, 31
+ RGB 31, 31, 00
+ RGB 31, 31, 01
+ RGB 31, 31, 03
+
+ RGB 31, 31, 05
+ RGB 31, 31, 08
+ RGB 31, 31, 10
+ RGB 31, 31, 12
+
+ RGB 31, 31, 14
+ RGB 31, 31, 16
+ RGB 31, 31, 18
+ RGB 31, 31, 20
+
+ RGB 31, 31, 22
+ RGB 31, 31, 25
+ RGB 31, 31, 27
+ RGB 31, 31, 29
+
+ RGB 24, 06, 06
+ RGB 01, 01, 01
+ RGB 03, 03, 03
+ RGB 05, 05, 05
+
+ RGB 08, 08, 08
+ RGB 10, 10, 10
+ RGB 12, 12, 12
+ RGB 14, 14, 14
+
+ RGB 16, 16, 16
+ RGB 18, 18, 18
+ RGB 20, 20, 20
+ RGB 22, 22, 22
+
+ RGB 25, 25, 25
+ RGB 27, 27, 27
+ RGB 29, 29, 29
+ RGB 31, 31, 31
+
+ RGB 18, 24, 18
+ RGB 31, 29, 01
+ RGB 31, 27, 03
+ RGB 31, 25, 05
+
+ RGB 31, 22, 08
+ RGB 31, 20, 10
+ RGB 31, 18, 12
+ RGB 31, 16, 14
+
+ RGB 31, 14, 16
+ RGB 31, 12, 18
+ RGB 31, 10, 20
+ RGB 31, 08, 22
+
+ RGB 31, 05, 25
+ RGB 31, 03, 27
+ RGB 31, 01, 29
+ RGB 31, 00, 31
+
+ RGB 18, 06, 31
+ RGB 00, 31, 31
+ RGB 00, 31, 29
+ RGB 00, 31, 27
+
+ RGB 00, 31, 25
+ RGB 00, 31, 22
+ RGB 00, 31, 20
+ RGB 00, 31, 18
+
+ RGB 00, 31, 16
+ RGB 00, 31, 14
+ RGB 00, 31, 12
+ RGB 00, 31, 10
+
+ RGB 00, 31, 08
+ RGB 00, 31, 05
+ RGB 00, 31, 03
+ RGB 00, 31, 01
+
+ RGB 12, 31, 06
+ RGB 00, 00, 31
+ RGB 00, 01, 31
+ RGB 00, 03, 31
+
+ RGB 00, 05, 31
+ RGB 00, 08, 31
+ RGB 00, 10, 31
+ RGB 00, 12, 31
+
+ RGB 00, 14, 31
+ RGB 00, 16, 31
+ RGB 00, 18, 31
+ RGB 00, 20, 31
+
+ RGB 00, 22, 31
+ RGB 00, 25, 31
+ RGB 00, 27, 31
+ RGB 00, 29, 31
+
+ RGB 00, 00, 00
+ RGB 06, 00, 04
+ RGB 19, 02, 09
+ RGB 28, 04, 11
+
+ RGB 31, 07, 16
+ RGB 31, 17, 23
+ RGB 31, 26, 30
+ RGB 07, 05, 10
+
+ RGB 14, 10, 18
+ RGB 20, 20, 25
+ RGB 25, 27, 31
+ RGB 09, 05, 06
+
+ RGB 23, 16, 13
+ RGB 30, 23, 22
+ RGB 31, 28, 28
+ RGB 31, 31, 31
+
+ RGB 06, 31, 31
+ RGB 04, 00, 04
+ RGB 11, 02, 04
+ RGB 17, 02, 04
+
+ RGB 24, 05, 04
+ RGB 28, 07, 04
+ RGB 31, 11, 04
+ RGB 02, 01, 15
+
+ RGB 04, 11, 22
+ RGB 12, 25, 25
+ RGB 20, 31, 31
+ RGB 09, 04, 03
+
+ RGB 22, 11, 08
+ RGB 27, 19, 16
+ RGB 30, 28, 26
+ RGB 31, 31, 31
+
+ RGB 06, 18, 06
+ RGB 04, 04, 02
+ RGB 07, 07, 02
+ RGB 18, 18, 04
+
+ RGB 24, 24, 06
+ RGB 27, 27, 11
+ RGB 31, 31, 20
+ RGB 02, 03, 10
+
+ RGB 04, 05, 13
+ RGB 06, 10, 25
+ RGB 08, 15, 31
+ RGB 04, 00, 06
+
+ RGB 11, 07, 14
+ RGB 21, 16, 23
+ RGB 29, 26, 31
+ RGB 31, 31, 31
+
+ RGB 06, 00, 18
+ RGB 00, 04, 03
+ RGB 02, 09, 05
+ RGB 11, 19, 07
+
+ RGB 16, 24, 08
+ RGB 22, 31, 09
+ RGB 24, 31, 18
+ RGB 03, 01, 03
+
+ RGB 10, 04, 10
+ RGB 20, 08, 20
+ RGB 31, 17, 31
+ RGB 01, 03, 06
+
+ RGB 05, 09, 10
+ RGB 15, 21, 21
+ RGB 23, 25, 25
+ RGB 31, 31, 31
+
+ RGB 00, 18, 31
+ RGB 00, 05, 07
+ RGB 00, 08, 13
+ RGB 00, 12, 17
+
+ RGB 01, 20, 24
+ RGB 04, 27, 31
+ RGB 14, 31, 31
+ RGB 04, 02, 02
+
+ RGB 15, 01, 03
+ RGB 26, 04, 07
+ RGB 31, 13, 16
+ RGB 00, 05, 02
+
+ RGB 01, 11, 03
+ RGB 06, 21, 06
+ RGB 13, 31, 16
+ RGB 31, 31, 31
+
+ RGB 00, 06, 06
+ RGB 00, 01, 08
+ RGB 00, 05, 14
+ RGB 00, 08, 19
+
+ RGB 02, 14, 26
+ RGB 04, 21, 31
+ RGB 06, 26, 31
+ RGB 13, 00, 00
+
+ RGB 27, 07, 00
+ RGB 31, 17, 05
+ RGB 31, 25, 16
+ RGB 02, 04, 00
+
+ RGB 07, 11, 03
+ RGB 17, 19, 05
+ RGB 27, 31, 16
+ RGB 31, 31, 31
+
+ RGB 02, 00, 00
+ RGB 04, 01, 06
+ RGB 11, 03, 14
+ RGB 16, 04, 19
+
+ RGB 20, 07, 22
+ RGB 26, 12, 27
+ RGB 26, 20, 31
+ RGB 04, 07, 00
+
+ RGB 16, 20, 07
+ RGB 24, 28, 15
+ RGB 29, 31, 24
+ RGB 05, 02, 02
+
+ RGB 15, 04, 02
+ RGB 24, 11, 10
+ RGB 31, 22, 20
+ RGB 31, 31, 31
+
+ RGB 00, 00, 14
+ RGB 12, 00, 00
+ RGB 27, 05, 00
+ RGB 31, 15, 05
+
+ RGB 31, 26, 13
+ RGB 31, 30, 21
+ RGB 05, 07, 16
+ RGB 04, 16, 20
+
+ RGB 04, 24, 26
+ RGB 08, 31, 31
+ RGB 23, 31, 31
+ RGB 00, 00, 00
+
+ RGB 05, 05, 05
+ RGB 17, 17, 15
+ RGB 28, 28, 24
+ RGB 31, 31, 31
+; 10ecb1
+
+UnusedTitleFG_OAM: ; 10ecb1
+ db $18, $38, $00, $01, $18, $40, $02, $01, $18, $48, $04, $01, $18, $50, $06, $01
+ db $18, $58, $08, $01, $18, $60, $0a, $01, $18, $68, $0c, $01, $18, $70, $0e, $01
+
+ db $28, $38, $10, $00, $28, $40, $12, $00, $28, $48, $14, $00, $28, $50, $16, $00
+ db $28, $58, $18, $00, $28, $60, $1a, $00, $28, $68, $1c, $00, $28, $70, $1e, $00
+
+ db $38, $38, $20, $00, $38, $40, $22, $00, $38, $48, $24, $00, $38, $50, $26, $00
+ db $38, $58, $28, $00, $38, $60, $2a, $00, $38, $68, $2c, $00, $38, $70, $2e, $00
+
+ db $48, $38, $30, $02, $48, $40, $32, $02, $48, $48, $34, $02, $48, $50, $36, $02
+ db $48, $58, $38, $02, $48, $60, $3a, $02, $48, $68, $3c, $02, $48, $70, $3e, $02
+
+ db $58, $38, $40, $01, $58, $40, $42, $01, $58, $48, $44, $01, $58, $50, $46, $01
+ db $58, $58, $48, $01, $58, $60, $4a, $01, $58, $68, $4c, $01, $58, $70, $4e, $01
+; 10ed51
+
+
+Function10ed51: ; 10ed51
+ call _TitleScreen
+.loop
+ call Functiona57
+ ld a, [$ffa9]
+ ld b, a
+ and 1
+ jr nz, .done
+ call Function10eea7
+ call DelayFrame
+ jr .loop
+.done
+ ret
+; 10ed67
diff --git a/wram.asm b/wram.asm
index 3689e3849..609702da3 100644
--- a/wram.asm
+++ b/wram.asm
@@ -4,7 +4,7 @@ flag_array: MACRO
ds ((\1) + 7) / 8
ENDM
-box_struct_length EQU 32
+box_struct_length EQU 24 + NUM_MOVES * 2
box_struct: MACRO
\1Species:: db
\1Item:: db
@@ -801,7 +801,7 @@ wc712::
PlayerUsedMoves:: ; c712
; add a move that has been used once by the player
; added in order of use
- ds 4
+ ds NUM_MOVES
wc716:: ds 1
wc717:: ds 1