shithub: pokecrystal

Download patch

ref: 083d51fd588d9752b8f7c5d104cffc3896d51b5b
parent: 5e104de3f5bdff54efd5ee562345236c0cdab5b5
parent: 0e311ad709ec65ce65dea962666d014f825da869
author: Rangi <35663410+Rangi42@users.noreply.github.com>
date: Sat Nov 23 22:57:20 EST 2019

Merge pull request #662 from Rangi42/master

Resolve miscellaneous issue #658

--- a/Makefile
+++ b/Makefile
@@ -14,6 +14,7 @@
 engine/overworld/events.o \
 gfx/pics.o \
 gfx/sprites.o \
+gfx/tilesets.o \
 lib/mobile/main.o
 
 crystal11_obj := $(crystal_obj:.o=11.o)
--- a/data/maps/map_data.asm
+++ b/data/maps/map_data.asm
@@ -6,6 +6,8 @@
 INCLUDE "data/maps/maps.asm"
 INCLUDE "data/maps/attributes.asm"
 
+
 INCLUDE "data/maps/blocks.asm"
+
 
 INCLUDE "data/maps/scripts.asm"
--- a/docs/bugs_and_glitches.md
+++ b/docs/bugs_and_glitches.md
@@ -811,10 +811,10 @@
 
 ([Video](https://www.youtube.com/watch?v=o54VjpAEoO8))
 
-**Fix:** Edit `_ABoostedStringBuffer2ExpPointsText` and `_StringBuffer2ExpPointsText` in [data/text/common_2.asm](https://github.com/pret/pokecrystal/blob/master/data/text/common_2.asm):
+**Fix:** Edit `_BoostedExpPointsText` and `_ExpPointsText` in [data/text/common_2.asm](https://github.com/pret/pokecrystal/blob/master/data/text/common_2.asm):
 
 ```diff
- _ABoostedStringBuffer2ExpPointsText::
+ _BoostedExpPointsText::
  	text_start
  	line "a boosted"
  	cont "@"
@@ -823,7 +823,7 @@
  	text " EXP. Points!"
  	prompt
 
- _StringBuffer2ExpPointsText::
+ _ExpPointsText::
  	text_start
  	line "@"
 -	text_decimal wStringBuffer2, 2, 4
@@ -1264,7 +1264,7 @@
 
 ([Video](https://www.youtube.com/watch?v=ojq3xqfRF6I))
 
-**Fix:** Edit `Slots_PayoutAnim` in [engine/games/slot_machine.asm](https://github.com/pret/pokecrystal/blob/master/engine/games/slot_machine.asm):
+**Fix:** Edit `SlotsAction_PayoutAnim` in [engine/games/slot_machine.asm](https://github.com/pret/pokecrystal/blob/master/engine/games/slot_machine.asm):
 
 ```diff
  .okay
--- a/engine/events/halloffame.asm
+++ b/engine/events/halloffame.asm
@@ -449,7 +449,7 @@
 	ld bc, MON_NAME_LENGTH - 1
 	call CopyBytes
 	ld a, "@"
-	ld [wStringBuffer2 + 10], a
+	ld [wStringBuffer2 + MON_NAME_LENGTH - 1], a
 	hlcoord 0, 0
 	ld bc, SCREEN_WIDTH * SCREEN_HEIGHT
 	ld a, " "
--- a/engine/events/lucky_number.asm
+++ b/engine/events/lucky_number.asm
@@ -148,7 +148,7 @@
 .done
 	pop hl
 	push hl
-	ld de, -6
+	ld de, MON_SPECIES - MON_ID
 	add hl, de
 	ld a, [hl]
 	pop hl
--- a/engine/pokemon/bills_pc_top.asm
+++ b/engine/pokemon/bills_pc_top.asm
@@ -261,7 +261,7 @@
 	call CloseSRAM
 	ret
 
-Unreferenced_Functione5d9:
+Unreferenced_LoadBoxMonListing:
 	ld a, [wCurBox]
 	cp b
 	jr z, .same_box
@@ -284,11 +284,11 @@
 .okay
 	call GetSRAMBank
 	ld a, [hl]
-	ld bc, 1 + MONS_PER_BOX + 1
+	ld bc, sBoxMons - sBox
 	add hl, bc
 	ld b, a
 	ld c, $0
-	ld de, wc608
+	ld de, wBoxPartialData
 	ld a, b
 	and a
 	jr z, .empty_box
@@ -296,7 +296,7 @@
 	push hl
 	push bc
 	ld a, c
-	ld bc, 0
+	ld bc, sBoxMon1Species - sBoxMons
 	add hl, bc
 	ld bc, BOXMON_STRUCT_LENGTH
 	call AddNTimes
@@ -311,7 +311,7 @@
 	push hl
 	push bc
 	ld a, c
-	ld bc, MONS_PER_BOX * (BOXMON_STRUCT_LENGTH + NAME_LENGTH)
+	ld bc, sBoxMonNicknames - sBoxMons
 	add hl, bc
 	call SkipNames
 	call CopyBytes
--- a/engine/pokemon/search.asm
+++ b/engine/pokemon/search.asm
@@ -113,7 +113,7 @@
 	jr z, .loopbox
 
 	; Load the box.
-	ld hl, BoxAddressTable1
+	ld hl, BoxAddressTable
 	ld b, 0
 	add hl, bc
 	add hl, bc
@@ -244,7 +244,7 @@
 	scf
 	ret
 
-BoxAddressTable1:
+BoxAddressTable:
 	dba sBox1
 	dba sBox2
 	dba sBox3
--- a/engine/pokemon/search2.asm
+++ b/engine/pokemon/search2.asm
@@ -117,7 +117,7 @@
 	ret
 
 RetroactivelyIgnoreEggs:
-	ld e, -2
+	ld e, %11111110
 	ld hl, wPartySpecies
 .loop
 	ld a, [hli]
--- a/gfx/tilesets.asm
+++ b/gfx/tilesets.asm
@@ -1,3 +1,5 @@
+INCLUDE "constants.asm"
+
 tilecoll: MACRO
 ; used in data/tilesets/*_collision.asm
 	db COLL_\1, COLL_\2, COLL_\3, COLL_\4
@@ -6,332 +8,332 @@
 
 SECTION "Tileset Data 1", ROMX
 
-TilesetKantoGFX:
+TilesetKantoGFX::
 INCBIN "gfx/tilesets/kanto.2bpp.lz"
 
-TilesetKantoMeta:
+TilesetKantoMeta::
 INCBIN "data/tilesets/kanto_metatiles.bin"
 
-TilesetKantoColl:
+TilesetKantoColl::
 INCLUDE "data/tilesets/kanto_collision.asm"
 
-Tileset0GFX:
-TilesetJohtoGFX:
+Tileset0GFX::
+TilesetJohtoGFX::
 INCBIN "gfx/tilesets/johto.2bpp.lz"
 
-Tileset0Meta:
-TilesetJohtoMeta:
+Tileset0Meta::
+TilesetJohtoMeta::
 INCBIN "data/tilesets/johto_metatiles.bin"
 
-Tileset0Coll:
-TilesetJohtoColl:
+Tileset0Coll::
+TilesetJohtoColl::
 INCLUDE "data/tilesets/johto_collision.asm"
 
-TilesetIcePathGFX:
+TilesetIcePathGFX::
 INCBIN "gfx/tilesets/ice_path.2bpp.lz"
 
-TilesetIcePathMeta:
+TilesetIcePathMeta::
 INCBIN "data/tilesets/ice_path_metatiles.bin"
 
-TilesetIcePathColl:
+TilesetIcePathColl::
 INCLUDE "data/tilesets/ice_path_collision.asm"
 
-TilesetPlayersRoomGFX:
+TilesetPlayersRoomGFX::
 INCBIN "gfx/tilesets/players_room.2bpp.lz"
 
-TilesetPlayersRoomMeta:
+TilesetPlayersRoomMeta::
 INCBIN "data/tilesets/players_room_metatiles.bin"
 
-TilesetPlayersRoomColl:
+TilesetPlayersRoomColl::
 INCLUDE "data/tilesets/players_room_collision.asm"
 
 
 SECTION "Tileset Data 2", ROMX
 
-TilesetPokecenterGFX:
+TilesetPokecenterGFX::
 INCBIN "gfx/tilesets/pokecenter.2bpp.lz"
 
-TilesetPokecenterMeta:
+TilesetPokecenterMeta::
 INCBIN "data/tilesets/pokecenter_metatiles.bin"
 
-TilesetPokecenterColl:
+TilesetPokecenterColl::
 INCLUDE "data/tilesets/pokecenter_collision.asm"
 
-TilesetPortGFX:
+TilesetPortGFX::
 INCBIN "gfx/tilesets/port.2bpp.lz"
 
-TilesetPortMeta:
+TilesetPortMeta::
 INCBIN "data/tilesets/port_metatiles.bin"
 
-TilesetPortColl:
+TilesetPortColl::
 INCLUDE "data/tilesets/port_collision.asm"
 
-TilesetPlayersHouseGFX:
+TilesetPlayersHouseGFX::
 INCBIN "gfx/tilesets/players_house.2bpp.lz"
 
-TilesetPlayersHouseMeta:
+TilesetPlayersHouseMeta::
 INCBIN "data/tilesets/players_house_metatiles.bin"
 
-TilesetPlayersHouseColl:
+TilesetPlayersHouseColl::
 INCLUDE "data/tilesets/players_house_collision.asm"
 
-TilesetMansionGFX:
+TilesetMansionGFX::
 INCBIN "gfx/tilesets/mansion.2bpp.lz"
 
-TilesetMansionMeta:
+TilesetMansionMeta::
 INCBIN "data/tilesets/mansion_metatiles.bin"
 
-TilesetMansionColl:
+TilesetMansionColl::
 INCLUDE "data/tilesets/mansion_collision.asm"
 
-TilesetCaveGFX:
+TilesetCaveGFX::
 INCBIN "gfx/tilesets/cave.2bpp.lz"
 
-TilesetCaveMeta:
-TilesetDarkCaveMeta:
+TilesetCaveMeta::
+TilesetDarkCaveMeta::
 INCBIN "data/tilesets/cave_metatiles.bin"
 
-TilesetCaveColl:
-TilesetDarkCaveColl:
+TilesetCaveColl::
+TilesetDarkCaveColl::
 INCLUDE "data/tilesets/cave_collision.asm"
 
 
 SECTION "Tileset Data 3", ROMX
 
-TilesetTowerGFX:
+TilesetTowerGFX::
 INCBIN "gfx/tilesets/tower.2bpp.lz"
 
-TilesetTowerMeta:
+TilesetTowerMeta::
 INCBIN "data/tilesets/tower_metatiles.bin"
 
-TilesetTowerColl:
+TilesetTowerColl::
 INCLUDE "data/tilesets/tower_collision.asm"
 
-TilesetLabGFX:
+TilesetLabGFX::
 INCBIN "gfx/tilesets/lab.2bpp.lz"
 
-TilesetLabMeta:
+TilesetLabMeta::
 INCBIN "data/tilesets/lab_metatiles.bin"
 
-TilesetLabColl:
+TilesetLabColl::
 INCLUDE "data/tilesets/lab_collision.asm"
 
-TilesetMartGFX:
+TilesetMartGFX::
 INCBIN "gfx/tilesets/mart.2bpp.lz"
 
-TilesetMartMeta:
+TilesetMartMeta::
 INCBIN "data/tilesets/mart_metatiles.bin"
 
-TilesetMartColl:
+TilesetMartColl::
 INCLUDE "data/tilesets/mart_collision.asm"
 
-TilesetGameCornerGFX:
+TilesetGameCornerGFX::
 INCBIN "gfx/tilesets/game_corner.2bpp.lz"
 
-TilesetGameCornerMeta:
+TilesetGameCornerMeta::
 INCBIN "data/tilesets/game_corner_metatiles.bin"
 
-TilesetGameCornerColl:
+TilesetGameCornerColl::
 INCLUDE "data/tilesets/game_corner_collision.asm"
 
-TilesetTrainStationGFX:
+TilesetTrainStationGFX::
 INCBIN "gfx/tilesets/train_station.2bpp.lz"
 
-TilesetTrainStationMeta:
+TilesetTrainStationMeta::
 INCBIN "data/tilesets/train_station_metatiles.bin"
 
-TilesetTrainStationColl:
+TilesetTrainStationColl::
 INCLUDE "data/tilesets/train_station_collision.asm"
 
-TilesetForestMeta:
+TilesetForestMeta::
 INCBIN "data/tilesets/forest_metatiles.bin"
 
 
 SECTION "Tileset Data 4", ROMX
 
-TilesetEliteFourRoomGFX:
+TilesetEliteFourRoomGFX::
 INCBIN "gfx/tilesets/elite_four_room.2bpp.lz"
 
-TilesetEliteFourRoomMeta:
+TilesetEliteFourRoomMeta::
 INCBIN "data/tilesets/elite_four_room_metatiles.bin"
 
-TilesetEliteFourRoomColl:
+TilesetEliteFourRoomColl::
 INCLUDE "data/tilesets/elite_four_room_collision.asm"
 
-TilesetParkGFX:
+TilesetParkGFX::
 INCBIN "gfx/tilesets/park.2bpp.lz"
 
-TilesetParkMeta:
+TilesetParkMeta::
 INCBIN "data/tilesets/park_metatiles.bin"
 
-TilesetParkColl:
+TilesetParkColl::
 INCLUDE "data/tilesets/park_collision.asm"
 
-TilesetRadioTowerGFX:
+TilesetRadioTowerGFX::
 INCBIN "gfx/tilesets/radio_tower.2bpp.lz"
 
-TilesetRadioTowerMeta:
+TilesetRadioTowerMeta::
 INCBIN "data/tilesets/radio_tower_metatiles.bin"
 
-TilesetRadioTowerColl:
+TilesetRadioTowerColl::
 INCLUDE "data/tilesets/radio_tower_collision.asm"
 
-TilesetUndergroundGFX:
+TilesetUndergroundGFX::
 INCBIN "gfx/tilesets/underground.2bpp.lz"
 
-TilesetUndergroundMeta:
+TilesetUndergroundMeta::
 INCBIN "data/tilesets/underground_metatiles.bin"
 
-TilesetUndergroundColl:
+TilesetUndergroundColl::
 INCLUDE "data/tilesets/underground_collision.asm"
 
-TilesetDarkCaveGFX:
+TilesetDarkCaveGFX::
 INCBIN "gfx/tilesets/dark_cave.2bpp.lz"
 
-UnusedTilesetDarkCaveMeta:
+UnusedTilesetDarkCaveMeta::
 INCBIN "data/tilesets/unused_dark_cave_metatiles.bin"
 
-UnusedTilesetDarkCaveColl:
+UnusedTilesetDarkCaveColl::
 INCLUDE "data/tilesets/unused_dark_cave_collision.asm"
 
 
 SECTION "Tileset Data 5", ROMX
 
-TilesetPokeComCenterGFX:
+TilesetPokeComCenterGFX::
 INCBIN "gfx/tilesets/pokecom_center.2bpp.lz"
 
-TilesetPokeComCenterMeta:
+TilesetPokeComCenterMeta::
 INCBIN "data/tilesets/pokecom_center_metatiles.bin"
 
-TilesetPokeComCenterColl:
+TilesetPokeComCenterColl::
 INCLUDE "data/tilesets/pokecom_center_collision.asm"
 
-TilesetBattleTowerInsideGFX:
+TilesetBattleTowerInsideGFX::
 INCBIN "gfx/tilesets/battle_tower_inside.2bpp.lz"
 
-TilesetBattleTowerInsideMeta:
+TilesetBattleTowerInsideMeta::
 INCBIN "data/tilesets/battle_tower_inside_metatiles.bin"
 
-TilesetBattleTowerInsideColl:
+TilesetBattleTowerInsideColl::
 INCLUDE "data/tilesets/battle_tower_inside_collision.asm"
 
-TilesetGateGFX:
+TilesetGateGFX::
 INCBIN "gfx/tilesets/gate.2bpp.lz"
 
-TilesetGateMeta:
+TilesetGateMeta::
 INCBIN "data/tilesets/gate_metatiles.bin"
 
-TilesetGateColl:
+TilesetGateColl::
 INCLUDE "data/tilesets/gate_collision.asm"
 
-TilesetJohtoModernGFX:
-TilesetBattleTowerOutsideGFX:
+TilesetJohtoModernGFX::
+TilesetBattleTowerOutsideGFX::
 INCBIN "gfx/tilesets/johto_modern.2bpp.lz"
 
-TilesetJohtoModernMeta:
+TilesetJohtoModernMeta::
 INCBIN "data/tilesets/johto_modern_metatiles.bin"
 
-TilesetJohtoModernColl:
+TilesetJohtoModernColl::
 INCLUDE "data/tilesets/johto_modern_collision.asm"
 
-TilesetTraditionalHouseGFX:
+TilesetTraditionalHouseGFX::
 INCBIN "gfx/tilesets/traditional_house.2bpp.lz"
 
-TilesetTraditionalHouseMeta:
+TilesetTraditionalHouseMeta::
 INCBIN "data/tilesets/traditional_house_metatiles.bin"
 
-TilesetTraditionalHouseColl:
+TilesetTraditionalHouseColl::
 INCLUDE "data/tilesets/traditional_house_collision.asm"
 
 
 SECTION "Tileset Data 6", ROMX
 
-TilesetForestGFX:
+TilesetForestGFX::
 INCBIN "gfx/tilesets/forest.2bpp.lz"
 
-TilesetChampionsRoomGFX:
+TilesetChampionsRoomGFX::
 INCBIN "gfx/tilesets/champions_room.2bpp.lz"
 
-TilesetChampionsRoomMeta:
+TilesetChampionsRoomMeta::
 INCBIN "data/tilesets/champions_room_metatiles.bin"
 
-TilesetChampionsRoomColl:
+TilesetChampionsRoomColl::
 INCLUDE "data/tilesets/champions_room_collision.asm"
 
-TilesetHouseGFX:
+TilesetHouseGFX::
 INCBIN "gfx/tilesets/house.2bpp.lz"
 
-TilesetHouseMeta:
+TilesetHouseMeta::
 INCBIN "data/tilesets/house_metatiles.bin"
 
-TilesetHouseColl:
+TilesetHouseColl::
 INCLUDE "data/tilesets/house_collision.asm"
 
-TilesetLighthouseGFX:
+TilesetLighthouseGFX::
 INCBIN "gfx/tilesets/lighthouse.2bpp.lz"
 
-TilesetLighthouseMeta:
+TilesetLighthouseMeta::
 INCBIN "data/tilesets/lighthouse_metatiles.bin"
 
-TilesetLighthouseColl:
+TilesetLighthouseColl::
 INCLUDE "data/tilesets/lighthouse_collision.asm"
 
-TilesetForestColl:
+TilesetForestColl::
 INCLUDE "data/tilesets/forest_collision.asm"
 
-TilesetFacilityGFX:
+TilesetFacilityGFX::
 INCBIN "gfx/tilesets/facility.2bpp.lz"
 
-TilesetFacilityMeta:
+TilesetFacilityMeta::
 INCBIN "data/tilesets/facility_metatiles.bin"
 
-TilesetFacilityColl:
+TilesetFacilityColl::
 INCLUDE "data/tilesets/facility_collision.asm"
 
-TilesetBattleTowerOutsideMeta:
+TilesetBattleTowerOutsideMeta::
 INCBIN "data/tilesets/battle_tower_outside_metatiles.bin"
 
-TilesetBattleTowerOutsideColl:
+TilesetBattleTowerOutsideColl::
 INCLUDE "data/tilesets/battle_tower_outside_collision.asm"
 
-TilesetBetaWordRoomMeta:
+TilesetBetaWordRoomMeta::
 INCBIN "data/tilesets/beta_word_room_metatiles.bin"
 
-TilesetBetaWordRoomColl:
-TilesetHoOhWordRoomColl:
-TilesetKabutoWordRoomColl:
-TilesetOmanyteWordRoomColl:
-TilesetAerodactylWordRoomColl:
+TilesetBetaWordRoomColl::
+TilesetHoOhWordRoomColl::
+TilesetKabutoWordRoomColl::
+TilesetOmanyteWordRoomColl::
+TilesetAerodactylWordRoomColl::
 INCLUDE "data/tilesets/beta_word_room_collision.asm"
 
 
 SECTION "Tileset Data 7", ROMX
 
-TilesetRuinsOfAlphGFX:
-TilesetBetaWordRoomGFX:
-TilesetHoOhWordRoomGFX:
-TilesetKabutoWordRoomGFX:
-TilesetOmanyteWordRoomGFX:
-TilesetAerodactylWordRoomGFX:
+TilesetRuinsOfAlphGFX::
+TilesetBetaWordRoomGFX::
+TilesetHoOhWordRoomGFX::
+TilesetKabutoWordRoomGFX::
+TilesetOmanyteWordRoomGFX::
+TilesetAerodactylWordRoomGFX::
 INCBIN "gfx/tilesets/ruins_of_alph.2bpp.lz"
 
-TilesetRuinsOfAlphMeta:
+TilesetRuinsOfAlphMeta::
 INCBIN "data/tilesets/ruins_of_alph_metatiles.bin"
 
-TilesetRuinsOfAlphColl:
+TilesetRuinsOfAlphColl::
 INCLUDE "data/tilesets/ruins_of_alph_collision.asm"
 
 
 SECTION "Tileset Data 8", ROMX
 
-TilesetHoOhWordRoomMeta:
+TilesetHoOhWordRoomMeta::
 INCBIN "data/tilesets/ho_oh_word_room_metatiles.bin"
 
-TilesetKabutoWordRoomMeta:
+TilesetKabutoWordRoomMeta::
 INCBIN "data/tilesets/kabuto_word_room_metatiles.bin"
 
-TilesetOmanyteWordRoomMeta:
+TilesetOmanyteWordRoomMeta::
 INCBIN "data/tilesets/omanyte_word_room_metatiles.bin"
 
-TilesetAerodactylWordRoomMeta:
+TilesetAerodactylWordRoomMeta::
 INCBIN "data/tilesets/aerodactyl_word_room_metatiles.bin"
--- a/home.asm
+++ b/home.asm
@@ -5,7 +5,9 @@
 
 NULL::
 
+
 INCLUDE "home/rst.asm"
+
 
 INCLUDE "home/interrupts.asm"
 
--- a/home/farcall.asm
+++ b/home/farcall.asm
@@ -23,7 +23,7 @@
 	push af
 	ldh a, [hBuffer]
 	rst Bankswitch
-	call FarJump_hl
+	call FarCall_JumpToHL
 
 ReturnFarCall::
 ; We want to retain the contents of f.
@@ -45,5 +45,5 @@
 	ld c, a
 	ret
 
-FarJump_hl::
+FarCall_JumpToHL::
 	jp hl
--- a/home/rst.asm
+++ b/home/rst.asm
@@ -26,12 +26,10 @@
 	add hl, de
 	ld a, [hli]
 	ld h, [hl]
+; SECTION "rst30", ROM0
 	ld l, a
 	pop de
 	jp hl
-
-; SECTION "rst30", ROM0
-; rst30 is midst rst28
 
 SECTION "rst38", ROM0
 	rst $38
--- a/hram.asm
+++ b/hram.asm
@@ -4,7 +4,7 @@
 
 hROMBankBackup:: db ; ff8a
 hBuffer:: db ; ff8b
-hFF8C:: db ; ff8c
+hSRAMBank:: db ; ff8c
 
 hRTCDayHi::   db ; ff8d
 hRTCDayLo::   db ; ff8e
--- a/main.asm
+++ b/main.asm
@@ -87,7 +87,6 @@
 INCLUDE "engine/events/print_unown.asm"
 INCLUDE "engine/events/print_photo.asm"
 INCLUDE "engine/pokemon/breeding.asm"
-INCLUDE "gfx/tilesets.asm"
 
 
 SECTION "Roofs", ROMX
@@ -518,6 +517,8 @@
 INCLUDE "engine/events/mom_phone.asm"
 
 
+SECTION "mobile40", ROMX
+
 INCLUDE "mobile/mobile_40.asm"
 
 
@@ -532,7 +533,7 @@
 INCLUDE "engine/gfx/load_overworld_font.asm"
 
 
-SECTION "Mobile 42", ROMX
+SECTION "mobile42", ROMX
 
 INCLUDE "mobile/mobile_42.asm"
 
@@ -549,9 +550,16 @@
 INCLUDE "engine/movie/title.asm"
 
 
+SECTION "mobile45", ROMX
+
 INCLUDE "mobile/mobile_45.asm"
+INCLUDE "mobile/mobile_45_sprite_engine.asm"
+INCLUDE "mobile/mobile_45_2.asm"
+INCLUDE "mobile/mobile_45_stadium.asm"
 
 
+SECTION "mobile46", ROMX
+
 INCLUDE "mobile/mobile_46.asm"
 
 
@@ -566,7 +574,7 @@
 INCLUDE "engine/link/link_trade.asm"
 
 
-SECTION "Mobile 5C", ROMX
+SECTION "mobile5C", ROMX
 
 INCLUDE "mobile/mobile_5c.asm"
 
@@ -595,12 +603,12 @@
 INCLUDE "engine/battle/update_battle_huds.asm"
 
 
-SECTION "Mobile 5E", ROMX
+SECTION "mobile5E", ROMX
 
 INCLUDE "mobile/mobile_5e.asm"
 
 
-SECTION "Mobile 5F", ROMX
+SECTION "mobile5F", ROMX
 
 INCLUDE "mobile/mobile_5f.asm"
 
--- a/mobile/mobile_12_2.asm
+++ b/mobile/mobile_12_2.asm
@@ -17,7 +17,7 @@
 	ld bc, PARTYMON_STRUCT_LENGTH
 	add hl, bc
 	pop bc
-	call .CopyName
+	call .AdvanceOTName
 	dec d
 	jr nz, .asm_4a851
 	ld a, BANK(sBoxCount)
@@ -39,7 +39,7 @@
 	ld bc, BOXMON_STRUCT_LENGTH
 	add hl, bc
 	pop bc
-	call .CopyName
+	call .AdvanceOTName
 	dec d
 	jr nz, .asm_4a873
 
@@ -90,7 +90,7 @@
 	ld bc, BOXMON_STRUCT_LENGTH
 	add hl, bc
 	pop bc
-	call .CopyName
+	call .AdvanceOTName
 	dec d
 	jr nz, .asm_4a8ba
 	pop bc
@@ -146,7 +146,7 @@
 	dba sBox13
 	dba sBox14
 
-.CopyName:
+.AdvanceOTName:
 	push hl
 	ld hl, NAME_LENGTH
 	add hl, bc
--- a/mobile/mobile_40.asm
+++ b/mobile/mobile_40.asm
@@ -1,5 +1,3 @@
-SECTION "mobile_40", ROMX
-
 Function100000:
 ; d: 1 or 2
 ; e: bank
--- a/mobile/mobile_45.asm
+++ b/mobile/mobile_45.asm
@@ -1,5 +1,3 @@
-SECTION "Mobile 45", ROMX
-
 pushc
 setcharmap ascii
 
@@ -131,7 +129,7 @@
 Function114243::
 	ld a, SRAM_ENABLE
 	ld [MBC3SRamEnable], a
-	ldh a, [hFF8C]
+	ldh a, [hSRAMBank]
 	push af ; if [$dc02] == 0, this is popped to pc.
 	push de
 	ld a, [$dc02]
@@ -149,8 +147,8 @@
 Function11425c:
 	ld [$dc02], a
 	pop af
-	ldh [hFF8C], a
-	ldh [hFF8C], a
+	ldh [hSRAMBank], a
+	ldh [hSRAMBank], a
 	ld [MBC3SRamBank], a
 	ret
 
@@ -165,7 +163,7 @@
 	ld [$dc03], a
 	ld a, [hli]
 	ld [$dc00], a
-	ldh [hFF8C], a
+	ldh [hSRAMBank], a
 	ld [MBC3SRamBank], a
 	ld e, [hl]
 	inc hl
@@ -362,7 +360,7 @@
 	pop bc
 	ld a, [$dc03]
 	ld [$dc00], a
-	ldh [hFF8C], a
+	ldh [hSRAMBank], a
 	ld [MBC3SRamBank], a
 	call Function114c0b
 	ld hl, String_114004
@@ -420,7 +418,7 @@
 	push af
 	ld a, [hli]
 	ld [wCurMapBGEventCount], a
-	ldh [hFF8C], a
+	ldh [hSRAMBank], a
 	ld [MBC3SRamBank], a
 	ld a, [hli]
 	ld h, [hl]
@@ -475,7 +473,7 @@
 Function114412:
 	ld a, c
 	ld [$dc00], a
-	ldh [hFF8C], a
+	ldh [hSRAMBank], a
 	ld [MBC3SRamBank], a
 	ld hl, Unknown_11417f
 	ld a, b
@@ -662,7 +660,7 @@
 	pop hl
 	ld a, [hli]
 	ld [wCurMapBGEventCount], a
-	ldh [hFF8C], a
+	ldh [hSRAMBank], a
 	ld [MBC3SRamBank], a
 	ld e, [hl]
 	inc hl
@@ -679,7 +677,7 @@
 	ld hl, $dc06
 	ld a, [hl]
 	ld [wCurMapBGEventCount], a
-	ldh [hFF8C], a
+	ldh [hSRAMBank], a
 	ld [MBC3SRamBank], a
 	ld hl, $dc09
 	ld e, [hl]
@@ -737,7 +735,7 @@
 	jr nz, .asm_1145b4
 	ld a, h
 	ld [$dc00], a
-	ldh [hFF8C], a
+	ldh [hSRAMBank], a
 	ld [MBC3SRamBank], a
 	push hl
 	push de
@@ -755,7 +753,7 @@
 	jr nz, .asm_1145ba
 	ld a, h
 	ld [$dc00], a
-	ldh [hFF8C], a
+	ldh [hSRAMBank], a
 	ld [MBC3SRamBank], a
 	ld hl, String_114218
 	call Function114acf
@@ -927,7 +925,7 @@
 	pop de
 	pop af
 	ld [$dc00], a
-	ldh [hFF8C], a
+	ldh [hSRAMBank], a
 	ld [MBC3SRamBank], a
 	xor a
 	ld [wDecoCarpet], a
@@ -948,7 +946,7 @@
 	ld hl, $dc03
 	ld a, [hli]
 	ld [$dc00], a
-	ldh [hFF8C], a
+	ldh [hSRAMBank], a
 	ld [MBC3SRamBank], a
 	ld e, [hl]
 	inc hl
@@ -962,7 +960,7 @@
 	ld hl, $dc03
 	ld a, [hli]
 	ld [$dc00], a
-	ldh [hFF8C], a
+	ldh [hSRAMBank], a
 	ld [MBC3SRamBank], a
 	ld e, [hl]
 	inc hl
@@ -1005,7 +1003,7 @@
 	ld hl, $dc03
 	ld a, [hli]
 	ld [$dc00], a
-	ldh [hFF8C], a
+	ldh [hSRAMBank], a
 	ld [MBC3SRamBank], a
 	ld e, [hl]
 	inc hl
@@ -1019,7 +1017,7 @@
 	ld a, $1
 	ld [$dc0e], a
 	ld a, [$dc00]
-	ldh [hFF8C], a
+	ldh [hSRAMBank], a
 	ld [MBC3SRamBank], a
 	ld a, $1
 	ld [wDecoRightOrnament], a
@@ -1046,7 +1044,7 @@
 	ld hl, $dc03
 	ld a, [hli]
 	ld [$dc00], a
-	ldh [hFF8C], a
+	ldh [hSRAMBank], a
 	ld [MBC3SRamBank], a
 	ld e, [hl]
 	inc hl
@@ -1100,7 +1098,7 @@
 	ld hl, $dc03
 	ld a, [hli]
 	ld [$dc00], a
-	ldh [hFF8C], a
+	ldh [hSRAMBank], a
 	ld [MBC3SRamBank], a
 	call Function114a7a
 	and a
@@ -1210,7 +1208,7 @@
 	ld a, [$dc00]
 	push af
 	push de
-	ldh [hFF8C], a
+	ldh [hSRAMBank], a
 	ld [MBC3SRamBank], a
 	call Function114a18
 	and a
@@ -1233,7 +1231,7 @@
 	ld hl, $dc06
 	ld a, [hli]
 	ld [wCurMapBGEventCount], a
-	ldh [hFF8C], a
+	ldh [hSRAMBank], a
 	ld [MBC3SRamBank], a
 	ld e, [hl]
 	inc hl
@@ -1298,7 +1296,7 @@
 	ld hl, $dc06
 	ld a, [hli]
 	ld [wCurMapBGEventCount], a
-	ldh [hFF8C], a
+	ldh [hSRAMBank], a
 	ld [MBC3SRamBank], a
 	ld e, [hl]
 	inc hl
@@ -1396,7 +1394,7 @@
 	ld hl, $dc06
 	ld a, [hli]
 	ld [wCurMapBGEventCount], a
-	ldh [hFF8C], a
+	ldh [hSRAMBank], a
 	ld [MBC3SRamBank], a
 	ld e, [hl]
 	inc hl
@@ -1486,7 +1484,7 @@
 	ld hl, $dc06
 	ld a, [hl]
 	ld [wCurMapBGEventCount], a
-	ldh [hFF8C], a
+	ldh [hSRAMBank], a
 	ld [MBC3SRamBank], a
 	push de
 	ld hl, $dc09
@@ -1833,7 +1831,7 @@
 	ld hl, $dc06
 	ld a, [hli]
 	ld [wCurMapBGEventCount], a
-	ldh [hFF8C], a
+	ldh [hSRAMBank], a
 	ld [MBC3SRamBank], a
 	ld e, [hl]
 	inc hl
@@ -1871,7 +1869,7 @@
 	jr nz, .asm_114bff
 	ld a, h
 	ld [$dc00], a
-	ldh [hFF8C], a
+	ldh [hSRAMBank], a
 	ld [MBC3SRamBank], a
 	call Function114c0b
 	ld hl, $dc24
@@ -1882,7 +1880,7 @@
 	pop hl
 	ld a, [hli]
 	ld [wCurMapBGEventCount], a
-	ldh [hFF8C], a
+	ldh [hSRAMBank], a
 	ld [MBC3SRamBank], a
 	ld a, [hli]
 	ld e, a
@@ -2088,7 +2086,7 @@
 	ld [$dc04], a
 	ld a, h
 	ld [$dc00], a
-	ldh [hFF8C], a
+	ldh [hSRAMBank], a
 	ld [MBC3SRamBank], a
 	ld hl, $dc24
 	call Function114d39
@@ -2107,7 +2105,7 @@
 	pop hl
 	ld a, [hli]
 	ld [wCurMapBGEventCount], a
-	ldh [hFF8C], a
+	ldh [hSRAMBank], a
 	ld [MBC3SRamBank], a
 	ld a, [hli]
 	ld e, a
@@ -2405,7 +2403,7 @@
 	ld hl, $dc06
 	ld a, [hli]
 	ld [wCurMapBGEventCount], a
-	ldh [hFF8C], a
+	ldh [hSRAMBank], a
 	ld [MBC3SRamBank], a
 	ld a, [hli]
 	ld e, a
@@ -2605,7 +2603,7 @@
 	inc hl
 	ld a, [hli]
 	ld [$dc00], a
-	ldh [hFF8C], a
+	ldh [hSRAMBank], a
 	ld [MBC3SRamBank], a
 	ld e, [hl]
 	inc hl
@@ -2683,7 +2681,7 @@
 	ld hl, $dc06
 	ld a, [hli]
 	ld [wCurMapBGEventCount], a
-	ldh [hFF8C], a
+	ldh [hSRAMBank], a
 	ld [MBC3SRamBank], a
 	ld a, [hli]
 	ld e, a
@@ -2740,7 +2738,7 @@
 	ld c, a
 	ld a, [hli]
 	ld [$dc00], a
-	ldh [hFF8C], a
+	ldh [hSRAMBank], a
 	ld [MBC3SRamBank], a
 	ld e, [hl]
 	inc hl
@@ -2891,7 +2889,7 @@
 	ld hl, $dc06
 	ld a, [hli]
 	ld [wCurMapBGEventCount], a
-	ldh [hFF8C], a
+	ldh [hSRAMBank], a
 	ld [MBC3SRamBank], a
 	ld a, [hli]
 	ld e, a
@@ -2944,7 +2942,7 @@
 	ld hl, $dc06
 	ld a, [hli]
 	ld [wCurMapBGEventCount], a
-	ldh [hFF8C], a
+	ldh [hSRAMBank], a
 	ld [MBC3SRamBank], a
 	ld a, [hli]
 	ld e, a
@@ -3062,7 +3060,7 @@
 	ld hl, $dc06
 	ld a, [hli]
 	ld [wCurMapBGEventCount], a
-	ldh [hFF8C], a
+	ldh [hSRAMBank], a
 	ld [MBC3SRamBank], a
 	ld a, [hli]
 	ld e, a
@@ -3155,7 +3153,7 @@
 	inc hl
 	ld a, [hli]
 	ld [$dc00], a
-	ldh [hFF8C], a
+	ldh [hSRAMBank], a
 	ld [MBC3SRamBank], a
 	ld a, [hli]
 	ld e, a
@@ -3404,7 +3402,7 @@
 .asm_1153f5
 	ld a, [hli]
 	ld [$dc00], a
-	ldh [hFF8C], a
+	ldh [hSRAMBank], a
 	ld [MBC3SRamBank], a
 	ld e, [hl]
 	inc hl
@@ -3538,7 +3536,7 @@
 	ld hl, wDecoRightOrnament
 	ld a, [hli]
 	ld [wCurMapBGEventCount], a
-	ldh [hFF8C], a
+	ldh [hSRAMBank], a
 	ld [MBC3SRamBank], a
 	ld e, [hl]
 	inc hl
@@ -3771,7 +3769,7 @@
 	ld [wCurMapBGEventCount], a
 	ld a, [$dc17]
 	ld [$dc00], a
-	ldh [hFF8C], a
+	ldh [hSRAMBank], a
 	ld [MBC3SRamBank], a
 	ld hl, $dc1a
 	ld c, [hl]
@@ -3844,7 +3842,7 @@
 	ld [hl], d
 	pop bc
 	ld a, [wCurMapBGEventCount]
-	ldh [hFF8C], a
+	ldh [hSRAMBank], a
 	ld [MBC3SRamBank], a
 	ld hl, wCurMapSceneScriptCount
 	ld e, [hl]
@@ -4150,7 +4148,7 @@
 	ld hl, $dc02
 	ld a, [hli]
 	ld [$dc00], a
-	ldh [hFF8C], a
+	ldh [hSRAMBank], a
 	ld [MBC3SRamBank], a
 	ld e, [hl]
 	inc hl
@@ -4204,7 +4202,7 @@
 	ld hl, wCurMapSceneScriptCount
 	ld a, [hli]
 	ld [wCurMapBGEventCount], a
-	ldh [hFF8C], a
+	ldh [hSRAMBank], a
 	ld [MBC3SRamBank], a
 	ld e, [hl]
 	inc hl
@@ -4671,7 +4669,7 @@
 	ld hl, $dc02
 	ld a, [hli]
 	ld [$dc00], a
-	ldh [hFF8C], a
+	ldh [hSRAMBank], a
 	ld [MBC3SRamBank], a
 	ld e, [hl]
 	inc hl
@@ -4759,7 +4757,7 @@
 	ld hl, wCurMapSceneScriptCount
 	ld a, [hli]
 	ld [wCurMapBGEventCount], a
-	ldh [hFF8C], a
+	ldh [hSRAMBank], a
 	ld [MBC3SRamBank], a
 	ld e, [hl]
 	inc hl
@@ -5152,2242 +5150,9 @@
 	ld a, [bc]
 	inc a
 	ld [bc], a
-	ldh [hFF8C], a
+	ldh [hSRAMBank], a
 	ld [MBC3SRamBank], a
 	ld a, e
 	ld d, $a0
 	ld e, $0
-	ret
-
-INCLUDE "mobile/mobile_45_sprite_engine.asm"
-
-Function116567:
-	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
-
-Function11659d:
-	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
-
-Jumptable_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
-
-Function1165d5:
-	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
-
-Function1165f5:
-	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
-
-Function116615:
-	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
-
-Function116635:
-	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
-
-Function116655:
-	xor a
-	ld [wc314 + 3], a
-	call Function11678e
-
-Function11665c:
-	ld hl, wc314 + 3
-	ld a, $1
-	xor [hl]
-	ld [hl], a
-	add $4
-	ld c, a
-	call Function11679c
-	ld a, [wc314 + 3]
-	and a
-	jr nz, .asm_116673
-	ld a, $48
-	jr .asm_116675
-
-.asm_116673
-	ld a, $78
-
-.asm_116675
-	ld [wc30f], a
-	call Random
-	ldh 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
-
-Function11669f:
-	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 [wc314 + 2], a
-	xor a
-	ld [wc314 + 3], 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 [wc314 + 2], a
-
-.asm_1166e4
-	ld a, [wc311]
-	cp $ff
-	ret nz
-	ld a, $4
-	ld [$c319], a
-	xor a
-	ld [wc314], a
-	ret
-
-Function1166f4:
-	ld [wc30e], a
-	ld a, b
-	ld [wc314 + 2], a
-	xor a
-	ld [wc314 + 3], a
-	ld hl, wc30f
-.asm_116702
-	call Random
-	ldh 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
-
-Function11671f:
-	ld [wc30f], a
-	ld a, b
-	ld [wc314 + 3], a
-	xor a
-	ld [wc314 + 2], a
-	ld hl, wc30e
-.asm_11672d
-	call Random
-	ldh 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
-
-Function116747:
-	ld hl, wc30e
-	ld a, [wc314 + 2]
-	add [hl]
-	ld [hl], a
-	ld hl, wc30f
-	ld a, [wc314 + 3]
-	add [hl]
-	ld [hl], a
-	ret
-
-Function116758:
-	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 [wc314 + 4], a
-	ret
-
-Function11677e:
-	ld a, $0
-
-Function116780:
-	ld hl, wc314 + 1
-	cp [hl]
-	jr z, .asm_11678c
-	ld a, [hl]
-	ld [wc314], a
-	scf
-	ret
-
-.asm_11678c
-	and a
-	ret
-
-Function11678e:
-	ld hl, wc314
-	ld a, [hl]
-	ld [wc314 + 1], a
-	inc [hl]
-	ret
-
-Function116797:
-	ld hl, wc314
-	inc [hl]
-	ret
-
-Function11679c:
-	ld a, c
-	ld [wc311], a
-	xor a
-	ld [wc312], a
-	jr asm_1167af
-
-Function1167a6:
-	ld hl, wc313
-	dec [hl]
-	ret nz
-	ld hl, wc312
-	inc [hl]
-
-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
-
-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:
-	db $0, $6
-	db $1, $4
-	db $2, $4
-	db $3, $6
-	db $2, $4
-	db $1, $4
-	db $fe
-
-Unknown_116808:
-	db $4, $6
-	db $5, $4
-	db $6, $4
-	db $7, $6
-	db $6, $4
-	db $5, $4
-	db $fe
-
-Unknown_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 -1 ; end
-
-Unknown_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 -1 ; end
-
-Unknown_116867:
-	db $14, $8
-	db $15, $8
-	db $16, $8
-	db $15, $8
-	db $fe
-
-Unknown_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:
-	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 -1 ; end
-
-Unknown_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
-
-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:
-	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:
-	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:
-	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:
-	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:
-	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:
-	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:
-	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:
-	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:
-	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:
-	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:
-	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:
-	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:
-	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:
-	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:
-	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:
-	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:
-	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:
-	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:
-	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:
-	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:
-	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:
-	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:
-	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:
-	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:
-	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:
-	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:
-	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:
-	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:
-	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:
-	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:
-	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:
-	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:
-	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:
-	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:
-	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:
-	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:
-	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:
-	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:
-	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:
-	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:
-	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:
-	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:
-	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:
-	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:
-	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:
-	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:
-	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
-
-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 "gfx/unknown/117356.tilemap"
-INCBIN "gfx/unknown/1174d6.attrmap"
-
-
-SECTION "Mobile Stadium", ROMX
-
-GiveOddEgg:
-	farcall _GiveOddEgg
-	ret
-
-Function11765d:
-	ldh a, [hInMenu]
-	push af
-	ld a, $1
-	ldh [hInMenu], a
-	call Function11766b
-	pop af
-	ldh [hInMenu], a
-	ret
-
-Function11766b:
-	call Function117699
-	ldh a, [rSVBK]
-	push af
-	ld a, $5
-	ldh [rSVBK], a
-	call Function1176ee
-	ld a, $5
-	call GetSRAMBank
-	ld hl, $b1f3
-	ld de, wcd49
-	ld bc, $8
-	call CopyBytes
-	ld de, $c708
-	ld bc, $11
-	call CopyBytes
-	call CloseSRAM
-	pop af
-	ldh [rSVBK], a
-	ret
-
-Function117699:
-	ld a, $5
-	call GetSRAMBank
-	ld hl, wcd49
-	ld de, $b1f3
-	ld bc, $8
-	call CopyBytes
-	ld hl, $c708
-	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, $c708
-	ld bc, $11
-	call ByteFill
-	call ClearBGPalettes
-	call ClearSprites
-	farcall Function171c87
-	farcall ReloadMapPart
-	farcall ClearSpriteAnims
-	ret
-
-Function1176ee:
-.loop
-	call JoyTextDelay
-	ld a, [wcd49]
-	bit 7, a
-	jr nz, .quit
-	call Function117719
-	farcall PlaySpriteAnimations
-	farcall ReloadMapPart
-	jr .loop
-
-.quit
-	farcall ClearSpriteAnims
-	call ClearBGPalettes
-	call ClearScreen
-	call ClearSprites
-	ret
-
-Function117719:
-	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:
-	dw Function117738
-	dw Function117764
-	dw Function1178aa
-	dw Function1178e8
-	dw Function117942
-	dw Function117976
-	dw Function117984
-	dw Function1179a7
-
-Function117738:
-	farcall Function171ccd
-	depixel 6, 3
-	ld a, $1d
-	call _InitSpriteAnimStruct
-	ld hl, $c
-	add hl, bc
-	ld a, $6
-	ld [hl], a
-	depixel 9, 4
-	ld a, $1d
-	call _InitSpriteAnimStruct
-	ld hl, $c
-	add hl, bc
-	ld a, $7
-	ld [hl], a
-	ld a, $3
-	ld [wcd23], a
-	jp MobilePassword_IncrementJumptable
-
-Function117764:
-	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
-	ld a, [hl]
-	and SELECT
-	jr nz, Function117764_select
-	ld a, [hl]
-	and START
-	jr nz, Function117764_start
-	ld a, [hl]
-	and A_BUTTON
-	jp nz, Function117764_a_button
-	ld a, [hl]
-	and B_BUTTON
-	jr nz, Function117764_b_button
-	ld hl, hJoyLast
-	ld a, [hl]
-	and D_UP
-	jr nz, Function117764_d_up
-	ld a, [hl]
-	and D_DOWN
-	jr nz, Function117764_d_down
-	ld a, [hl]
-	and D_LEFT
-	jp nz, Function117764_d_left
-	ld a, [hl]
-	and D_RIGHT
-	jp nz, Function117764_d_right
-	ret
-
-Function117764_select:
-	farcall Function171cf0
-	ret
-
-Function117764_start:
-	ld a, $2
-	ld [wcd4c], a
-	ld a, $4
-	ld [wcd4d], a
-	ret
-
-Function1177b7:
-	ld a, $3
-	ld [wcd24], a
-	ld a, [wcd4a]
-	and a
-	jr z, .asm_1177c5
-	jp MobilePassword_IncrementJumptable
-
-.asm_1177c5
-	ld a, $6
-	ld [wcd49], a
-	ret
-
-Function1177cb:
-	ld a, $80
-	ld [wcd49], a
-	ld [wScriptVar], a
-	jp MobilePassword_IncrementJumptable
-
-Function117764_b_button:
-	call PlayClickSFX
-	ld a, [wcd4a]
-	and a
-	ret z
-	dec a
-	ld [wcd4a], a
-	ld e, a
-	ld d, $0
-	ld hl, $c708
-	add hl, de
-	xor a
-	ld [hl], a
-	hlcoord 2, 4
-	add hl, de
-	ld [hl], a
-	ret
-
-Function117764_d_up:
-	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
-Function117764_d_vertical_load:
-	ld [wcd4c], a
-	ret
-
-Function117764_d_down:
-	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 Function117764_d_vertical_load
-
-.asm_117825
-	ld a, $2
-	jr Function117764_d_vertical_load
-
-.asm_117829
-	ld a, $1
-	jr Function117764_d_vertical_load
-
-Function117764_d_left:
-	ld a, [wcd4c]
-	and a
-	ret z
-	dec a
-	ld [wcd4c], a
-	ret
-
-Function117764_d_right:
-	ld e, $d
-	ld a, [wcd4d]
-	cp $4
-	jr nz, .wrap
-	ld e, $2
-.wrap
-	ld a, [wcd4c]
-	cp e
-	ret z
-	inc a
-	ld [wcd4c], a
-	ret
-
-Function117764_a_button:
-	call PlayClickSFX
-	ld a, [wcd4d]
-	cp $4
-	jr nz, .not_4
-	ld a, [wcd4c]
-	cp $2
-	jp z, Function1177b7
-	cp $1
-	jp z, Function1177cb
-	jp Function117764_select
-
-.not_4
-	ld a, [wcd4a]
-	ld e, a
-	cp $10
-	jp z, Function117764_start
-	inc a
-	ld [wcd4a], a
-	ld d, $0
-	ld a, [wcd4b]
-	and a
-	jr nz, .ascii_symbols
-	ld hl, Unknown_117a0f
-	jr .got_ascii
-
-.ascii_symbols
-	ld hl, Unknown_117a47
-.got_ascii
-	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, $c708
-	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 Function117764_start
-
-Function1178aa:
-	ld hl, MenuHeader_1179b5
-	call LoadMenuHeader
-	call MenuBox
-	call MenuBoxCoord2Tile
-	ld hl, MenuHeader_1179bd
-	call LoadMenuHeader
-	call MenuBox
-	call MenuBoxCoord2Tile
-	farcall ReloadMapPart
-	hlcoord 16, 8
-	ld de, YessNoString_1179c5
-	call PlaceString
-	hlcoord 15, 10
-	ld a, "▶"
-	ld [hl], a
-	hlcoord 1, 14
-	ld de, AskSavePasswordString
-	call PlaceString
-	ld a, $1
-	ld [wcd4e], a
-	jp MobilePassword_IncrementJumptable
-
-Function1178e8:
-	ldh a, [hJoyPressed]
-	cp B_BUTTON
-	jr z, .b_button
-	cp A_BUTTON
-	jr z, .a_button
-	cp D_DOWN
-	jr z, .d_down
-	cp D_UP
-	ret nz
-	ld a, [wcd4e]
-	and a
-	ret z
-	dec a
-	ld [wcd4e], a
-	hlcoord 15, 8
-	ld a, "▶"
-	ld [hl], a
-	hlcoord 15, 10
-	ld a, " "
-	ld [hl], a
-	ret
-
-.d_down
-	ld a, [wcd4e]
-	and a
-	ret nz
-	inc a
-	ld [wcd4e], a
-	hlcoord 15, 8
-	ld a, " "
-	ld [hl], a
-	hlcoord 15, 10
-	ld a, "▶"
-	ld [hl], a
-	ret
-
-.a_button
-	call PlayClickSFX
-	ld a, [wcd4e]
-	and a
-	jr nz, .b_button
-	call ExitMenu
-	ld a, $1
-	ld [wcd4f], a
-	jp MobilePassword_IncrementJumptable
-
-.b_button
-	call ExitMenu
-	call ExitMenu
-	jp MobilePassword_IncrementJumptable
-
-Function117942:
-	call SpeechTextbox
-	hlcoord 1, 14
-	ld de, SavedPasswordString
-	call PlaceString
-	ld a, $1e
-	ld [wcd4e], a
-	ld a, BANK(sMobileLoginPassword)
-	call GetSRAMBank
-	ld a, [wcd4f]
-	ld [sMobileLoginPassword], a
-	ld hl, $c708
-	ld de, sMobileLoginPassword + 1
-	ld bc, MOBILE_LOGIN_PASSWORD_LENGTH
-	call CopyBytes
-	call CloseSRAM
-	ld a, [wcd4f]
-	and a
-	jr z, asm_11797e
-	call MobilePassword_IncrementJumptable
-
-Function117976:
-	ld hl, wcd4e
-	dec [hl]
-	ret nz
-	call ExitMenu
-asm_11797e:
-	ld a, $80
-	ld [wcd49], a
-	ret
-
-Function117984:
-	ld hl, MenuHeader_1179b5
-	call LoadMenuHeader
-	call MenuBox
-	call MenuBoxCoord2Tile
-	farcall ReloadMapPart
-	hlcoord 1, 14
-	ld de, NotAPokemonPasswordString
-	call PlaceString
-	ld a, $1e
-	ld [wcd4e], a
-	call MobilePassword_IncrementJumptable
-
-Function1179a7:
-	ld hl, wcd4e
-	dec [hl]
-	ret nz
-	call ExitMenu
-	ld a, $1
-	ld [wcd49], a
-	ret
-
-MenuHeader_1179b5:
-	db MENU_BACKUP_TILES ; flags
-	menu_coords 0, 12, SCREEN_WIDTH - 1, SCREEN_HEIGHT - 1
-	dw NULL
-	db 0 ; default option
-
-MenuHeader_1179bd:
-	db MENU_BACKUP_TILES ; flags
-	menu_coords 14, 7, SCREEN_WIDTH - 1, TEXTBOX_Y - 1
-	dw NULL
-	db 0 ; default option
-
-YessNoString_1179c5:
-	db   "はい"
-	next "いいえ@"
-
-AskSavePasswordString:
-	db   "こ<NO>パスワード¯ほぞんして"
-	line "おきますか?@"
-
-NotAPokemonPasswordString:
-	db   "パスワード<PKMN>にゅうりょく"
-	line "されていません!@"
-
-SavedPasswordString:
-	db   "ログインパスワード¯ほぞん"
-	line "しました@"
-
-MobilePassword_IncrementJumptable:
-	ld hl, wcd49
-	inc [hl]
-	ret
-
-Unknown_117a0f:
-INCBIN "data/mobile/ascii-alpha.txt"
-
-Unknown_117a47:
-INCBIN "data/mobile/ascii-sym.txt"
-
-; everything from here to the end of the bank is related to the
-; Mobile Stadium option from the continue/newgame menu.
-; Needs better function names
-MobileStudium:
-	ldh a, [hInMenu]
-	push af
-	ld a, $1
-	ldh [hInMenu], a
-	call Function117a8d
-	pop af
-	ldh [hInMenu], a
-	ret
-
-Function117a8d:
-	call Function117a94
-	call Function117acd
-	ret
-
-Function117a94:
-	xor a
-	ld [wJumptableIndex], a
-	ld [wcf64], a
-	ld [wcf65], a
-	ld [wcf66], a
-	call ClearBGPalettes
-	call ClearSprites
-	farcall Function172e78
-	farcall HDMATransferAttrMapAndTileMapToWRAMBank3
-	ret
-
-Function117ab4:
-	call ClearBGPalettes
-	call ClearSprites
-	farcall Function172e78
-	farcall Function172eb9
-	farcall ReloadMapPart
-	ret
-
-Function117acd:
-	call JoyTextDelay
-	ld a, [wJumptableIndex]
-	bit 7, a
-	jr nz, .asm_117ae2
-	call Function117ae9
-	farcall HDMATransferAttrMapAndTileMapToWRAMBank3
-	jr Function117acd
-
-.asm_117ae2
-	call ClearBGPalettes
-	call ClearSprites
-	ret
-
-Function117ae9:
-	ld a, [wJumptableIndex]
-	ld e, a
-	ld d, $0
-	ld hl, .Jumptable
-	add hl, de
-	add hl, de
-	ld a, [hli]
-	ld h, [hl]
-	ld l, a
-	jp hl
-
-.Jumptable:
-	dw Function117b06
-	dw Function117b14
-	dw Function117b28
-	dw Function117b31
-	dw Function117b4f
-	dw Function117bb6
-	dw Function117c4a
-
-Function117b06:
-	farcall Function172eb9
-	ld a, $10
-	ld [wcf64], a
-	jp MobileStudium_JumptableIncrement
-
-Function117b14:
-	ld hl, wcf64
-	dec [hl]
-	ret nz
-	ld hl, MenuHeader_117cbc
-	call LoadMenuHeader
-	call MenuBox
-	call MenuBoxCoord2Tile
-	jp MobileStudium_JumptableIncrement
-
-Function117b28:
-	ld hl, MobileStadiumEntryText
-	call PrintText
-	jp MobileStudium_JumptableIncrement
-
-Function117b31:
-	ld hl, MenuHeader_117cc4
-	call LoadMenuHeader
-	call MenuBox
-	call MenuBoxCoord2Tile
-	hlcoord 16, 8
-	ld de, YesNo117ccc
-	call PlaceString
-	hlcoord 15, 8
-	ld a, "▶"
-	ld [hl], a
-	jp MobileStudium_JumptableIncrement
-
-Function117b4f:
-	ldh a, [hJoyPressed]
-	cp B_BUTTON
-	jr z, .b_button
-	cp A_BUTTON
-	jr z, .a_button
-	cp D_DOWN
-	jr z, .d_down
-	cp D_UP
-	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
-
-.d_down
-	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
-
-.a_button
-	call PlayClickSFX
-	ld a, [wcf64]
-	and a
-	jr nz, .b_button
-	call ExitMenu
-	call ExitMenu
-	farcall ReloadMapPart
-	jp MobileStudium_JumptableIncrement
-
-.b_button
-	call ExitMenu
-	call ExitMenu
-	farcall ReloadMapPart
-	ld a, $80
-	ld [wJumptableIndex], a
-	ret
-
-Function117bb6:
-	call Function117c89
-	ld a, $1
-	ldh [hBGMapMode], a
-	farcall Function118284
-	call ClearSprites
-	ld a, [wMobileErrorCodeBuffer]
-	and a
-	jr z, .asm_117be7
-	cp $a
-	jr z, .asm_117be1
-.asm_117bd0
-	ld a, $2
-	ld [wc303], a
-	farcall DisplayMobileError
-	ld a, $80
-	ld [wJumptableIndex], a
-	ret
-
-.asm_117be1
-	ld a, $80
-	ld [wJumptableIndex], a
-	ret
-
-.asm_117be7
-	ldh a, [rSVBK]
-	push af
-	ld a, $3
-	ldh [rSVBK], a
-	ld a, [wcd89]
-	and $1
-	jr nz, .asm_117c16
-	ld a, [w3_d000]
-	cp $fe
-	jr nz, .asm_117c16
-	ld a, [w3_d001]
-	cp $f
-	jr nz, .asm_117c16
-	ld hl, w3_dfec
-	ld de, wcd69
-	ld c, $10
-.asm_117c0b
-	ld a, [de]
-	inc de
-	cp [hl]
-	jr nz, .asm_117c16
-	inc hl
-	dec c
-	jr nz, .asm_117c0b
-	jr .asm_117c20
-
-.asm_117c16
-	pop af
-	ldh [rSVBK], a
-	ld a, $d3
-	ld [wMobileErrorCodeBuffer], a
-	jr .asm_117bd0
-
-.asm_117c20
-	pop af
-	ldh [rSVBK], a
-	farcall Function172eb9
-	ldh a, [rSVBK]
-	push af
-	ld a, $3
-	ldh [rSVBK], a
-	ld a, $7
-	call GetSRAMBank
-	ld hl, w3_d002
-	ld de, $b000
-	ld bc, $1000
-	call CopyBytes
-	call CloseSRAM
-	pop af
-	ldh [rSVBK], a
-	jp MobileStudium_JumptableIncrement
-
-Function117c4a:
-	ld hl, MenuHeader_117cbc
-	call LoadMenuHeader
-	call MenuBox
-	call MenuBoxCoord2Tile
-	farcall ReloadMapPart
-	ld hl, MobileStadiumSuccessText
-	call PrintText
-	ldh a, [rSVBK]
-	push af
-	ld a, $5
-	ldh [rSVBK], a
-	ld hl, wBGPals1
-	ld de, 1 palettes
-	ld c, 8
-.loop
-	push hl
-	ld a, LOW(PALRGB_WHITE)
-	ld [hli], a
-	ld a, HIGH(PALRGB_WHITE)
-	ld [hl], a
-	pop hl
-	add hl, de
-	dec c
-	jr nz, .loop
-	call RotateThreePalettesRight
-	pop af
-	ldh [rSVBK], a
-	ld a, $80
-	ld [wJumptableIndex], 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
-	ld a, l
-	ld [wcd83], a
-	ld a, h
-	ld [wcd84], a
-	ld hl, $bfea
-	ld de, wcd69
-	ld bc, $10
-	call CopyBytes
-	call CloseSRAM
-	ret
-
-MenuHeader_117cbc:
-	db MENU_BACKUP_TILES ; flags
-	menu_coords 0, 12, SCREEN_WIDTH - 1, SCREEN_HEIGHT - 1
-	dw NULL
-	db 0 ; default option
-
-MenuHeader_117cc4:
-	db MENU_BACKUP_TILES ; flags
-	menu_coords 14, 7, SCREEN_WIDTH - 1, TEXTBOX_Y - 1
-	dw NULL
-	db 0 ; default item
-
-YesNo117ccc:
-	db   "はい"
-	next "いいえ@"
-
-MobileStadiumEntryText:
-	text_far _MobileStadiumEntryText
-	text_end
-
-MobileStadiumSuccessText:
-	text_far _MobileStadiumSuccessText
-	text_end
-
-MobileStudium_JumptableIncrement:
-	ld hl, wJumptableIndex
-	inc [hl]
 	ret
--- /dev/null
+++ b/mobile/mobile_45_2.asm
@@ -1,0 +1,1403 @@
+Function116567:
+	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
+
+Function11659d:
+	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
+
+Jumptable_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
+
+Function1165d5:
+	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
+
+Function1165f5:
+	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
+
+Function116615:
+	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
+
+Function116635:
+	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
+
+Function116655:
+	xor a
+	ld [wc314 + 3], a
+	call Function11678e
+
+Function11665c:
+	ld hl, wc314 + 3
+	ld a, $1
+	xor [hl]
+	ld [hl], a
+	add $4
+	ld c, a
+	call Function11679c
+	ld a, [wc314 + 3]
+	and a
+	jr nz, .asm_116673
+	ld a, $48
+	jr .asm_116675
+
+.asm_116673
+	ld a, $78
+
+.asm_116675
+	ld [wc30f], a
+	call Random
+	ldh 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
+
+Function11669f:
+	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 [wc314 + 2], a
+	xor a
+	ld [wc314 + 3], 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 [wc314 + 2], a
+
+.asm_1166e4
+	ld a, [wc311]
+	cp $ff
+	ret nz
+	ld a, $4
+	ld [$c319], a
+	xor a
+	ld [wc314], a
+	ret
+
+Function1166f4:
+	ld [wc30e], a
+	ld a, b
+	ld [wc314 + 2], a
+	xor a
+	ld [wc314 + 3], a
+	ld hl, wc30f
+.asm_116702
+	call Random
+	ldh 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
+
+Function11671f:
+	ld [wc30f], a
+	ld a, b
+	ld [wc314 + 3], a
+	xor a
+	ld [wc314 + 2], a
+	ld hl, wc30e
+.asm_11672d
+	call Random
+	ldh 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
+
+Function116747:
+	ld hl, wc30e
+	ld a, [wc314 + 2]
+	add [hl]
+	ld [hl], a
+	ld hl, wc30f
+	ld a, [wc314 + 3]
+	add [hl]
+	ld [hl], a
+	ret
+
+Function116758:
+	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 [wc314 + 4], a
+	ret
+
+Function11677e:
+	ld a, $0
+
+Function116780:
+	ld hl, wc314 + 1
+	cp [hl]
+	jr z, .asm_11678c
+	ld a, [hl]
+	ld [wc314], a
+	scf
+	ret
+
+.asm_11678c
+	and a
+	ret
+
+Function11678e:
+	ld hl, wc314
+	ld a, [hl]
+	ld [wc314 + 1], a
+	inc [hl]
+	ret
+
+Function116797:
+	ld hl, wc314
+	inc [hl]
+	ret
+
+Function11679c:
+	ld a, c
+	ld [wc311], a
+	xor a
+	ld [wc312], a
+	jr asm_1167af
+
+Function1167a6:
+	ld hl, wc313
+	dec [hl]
+	ret nz
+	ld hl, wc312
+	inc [hl]
+
+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
+
+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:
+	db $0, $6
+	db $1, $4
+	db $2, $4
+	db $3, $6
+	db $2, $4
+	db $1, $4
+	db $fe
+
+Unknown_116808:
+	db $4, $6
+	db $5, $4
+	db $6, $4
+	db $7, $6
+	db $6, $4
+	db $5, $4
+	db $fe
+
+Unknown_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 -1 ; end
+
+Unknown_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 -1 ; end
+
+Unknown_116867:
+	db $14, $8
+	db $15, $8
+	db $16, $8
+	db $15, $8
+	db $fe
+
+Unknown_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:
+	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 -1 ; end
+
+Unknown_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
+
+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:
+	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:
+	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:
+	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:
+	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:
+	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:
+	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:
+	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:
+	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:
+	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:
+	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:
+	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:
+	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:
+	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:
+	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:
+	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:
+	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:
+	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:
+	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:
+	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:
+	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:
+	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:
+	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:
+	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:
+	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:
+	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:
+	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:
+	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:
+	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:
+	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:
+	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:
+	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:
+	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:
+	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:
+	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:
+	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:
+	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:
+	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:
+	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:
+	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:
+	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:
+	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:
+	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:
+	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:
+	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:
+	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:
+	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:
+	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
+
+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 "gfx/unknown/117356.tilemap"
+INCBIN "gfx/unknown/1174d6.attrmap"
--- /dev/null
+++ b/mobile/mobile_45_stadium.asm
@@ -1,0 +1,823 @@
+GiveOddEgg:
+	farcall _GiveOddEgg
+	ret
+
+Function11765d:
+	ldh a, [hInMenu]
+	push af
+	ld a, $1
+	ldh [hInMenu], a
+	call Function11766b
+	pop af
+	ldh [hInMenu], a
+	ret
+
+Function11766b:
+	call Function117699
+	ldh a, [rSVBK]
+	push af
+	ld a, $5
+	ldh [rSVBK], a
+	call Function1176ee
+	ld a, $5
+	call GetSRAMBank
+	ld hl, $b1f3
+	ld de, wcd49
+	ld bc, $8
+	call CopyBytes
+	ld de, $c708
+	ld bc, $11
+	call CopyBytes
+	call CloseSRAM
+	pop af
+	ldh [rSVBK], a
+	ret
+
+Function117699:
+	ld a, $5
+	call GetSRAMBank
+	ld hl, wcd49
+	ld de, $b1f3
+	ld bc, $8
+	call CopyBytes
+	ld hl, $c708
+	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, $c708
+	ld bc, $11
+	call ByteFill
+	call ClearBGPalettes
+	call ClearSprites
+	farcall Function171c87
+	farcall ReloadMapPart
+	farcall ClearSpriteAnims
+	ret
+
+Function1176ee:
+.loop
+	call JoyTextDelay
+	ld a, [wcd49]
+	bit 7, a
+	jr nz, .quit
+	call Function117719
+	farcall PlaySpriteAnimations
+	farcall ReloadMapPart
+	jr .loop
+
+.quit
+	farcall ClearSpriteAnims
+	call ClearBGPalettes
+	call ClearScreen
+	call ClearSprites
+	ret
+
+Function117719:
+	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:
+	dw Function117738
+	dw Function117764
+	dw Function1178aa
+	dw Function1178e8
+	dw Function117942
+	dw Function117976
+	dw Function117984
+	dw Function1179a7
+
+Function117738:
+	farcall Function171ccd
+	depixel 6, 3
+	ld a, $1d
+	call _InitSpriteAnimStruct
+	ld hl, $c
+	add hl, bc
+	ld a, $6
+	ld [hl], a
+	depixel 9, 4
+	ld a, $1d
+	call _InitSpriteAnimStruct
+	ld hl, $c
+	add hl, bc
+	ld a, $7
+	ld [hl], a
+	ld a, $3
+	ld [wcd23], a
+	jp MobilePassword_IncrementJumptable
+
+Function117764:
+	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
+	ld a, [hl]
+	and SELECT
+	jr nz, Function117764_select
+	ld a, [hl]
+	and START
+	jr nz, Function117764_start
+	ld a, [hl]
+	and A_BUTTON
+	jp nz, Function117764_a_button
+	ld a, [hl]
+	and B_BUTTON
+	jr nz, Function117764_b_button
+	ld hl, hJoyLast
+	ld a, [hl]
+	and D_UP
+	jr nz, Function117764_d_up
+	ld a, [hl]
+	and D_DOWN
+	jr nz, Function117764_d_down
+	ld a, [hl]
+	and D_LEFT
+	jp nz, Function117764_d_left
+	ld a, [hl]
+	and D_RIGHT
+	jp nz, Function117764_d_right
+	ret
+
+Function117764_select:
+	farcall Function171cf0
+	ret
+
+Function117764_start:
+	ld a, $2
+	ld [wcd4c], a
+	ld a, $4
+	ld [wcd4d], a
+	ret
+
+Function1177b7:
+	ld a, $3
+	ld [wcd24], a
+	ld a, [wcd4a]
+	and a
+	jr z, .asm_1177c5
+	jp MobilePassword_IncrementJumptable
+
+.asm_1177c5
+	ld a, $6
+	ld [wcd49], a
+	ret
+
+Function1177cb:
+	ld a, $80
+	ld [wcd49], a
+	ld [wScriptVar], a
+	jp MobilePassword_IncrementJumptable
+
+Function117764_b_button:
+	call PlayClickSFX
+	ld a, [wcd4a]
+	and a
+	ret z
+	dec a
+	ld [wcd4a], a
+	ld e, a
+	ld d, $0
+	ld hl, $c708
+	add hl, de
+	xor a
+	ld [hl], a
+	hlcoord 2, 4
+	add hl, de
+	ld [hl], a
+	ret
+
+Function117764_d_up:
+	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
+Function117764_d_vertical_load:
+	ld [wcd4c], a
+	ret
+
+Function117764_d_down:
+	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 Function117764_d_vertical_load
+
+.asm_117825
+	ld a, $2
+	jr Function117764_d_vertical_load
+
+.asm_117829
+	ld a, $1
+	jr Function117764_d_vertical_load
+
+Function117764_d_left:
+	ld a, [wcd4c]
+	and a
+	ret z
+	dec a
+	ld [wcd4c], a
+	ret
+
+Function117764_d_right:
+	ld e, $d
+	ld a, [wcd4d]
+	cp $4
+	jr nz, .wrap
+	ld e, $2
+.wrap
+	ld a, [wcd4c]
+	cp e
+	ret z
+	inc a
+	ld [wcd4c], a
+	ret
+
+Function117764_a_button:
+	call PlayClickSFX
+	ld a, [wcd4d]
+	cp $4
+	jr nz, .not_4
+	ld a, [wcd4c]
+	cp $2
+	jp z, Function1177b7
+	cp $1
+	jp z, Function1177cb
+	jp Function117764_select
+
+.not_4
+	ld a, [wcd4a]
+	ld e, a
+	cp $10
+	jp z, Function117764_start
+	inc a
+	ld [wcd4a], a
+	ld d, $0
+	ld a, [wcd4b]
+	and a
+	jr nz, .ascii_symbols
+	ld hl, Unknown_117a0f
+	jr .got_ascii
+
+.ascii_symbols
+	ld hl, Unknown_117a47
+.got_ascii
+	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, $c708
+	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 Function117764_start
+
+Function1178aa:
+	ld hl, MenuHeader_1179b5
+	call LoadMenuHeader
+	call MenuBox
+	call MenuBoxCoord2Tile
+	ld hl, MenuHeader_1179bd
+	call LoadMenuHeader
+	call MenuBox
+	call MenuBoxCoord2Tile
+	farcall ReloadMapPart
+	hlcoord 16, 8
+	ld de, YessNoString_1179c5
+	call PlaceString
+	hlcoord 15, 10
+	ld a, "▶"
+	ld [hl], a
+	hlcoord 1, 14
+	ld de, AskSavePasswordString
+	call PlaceString
+	ld a, $1
+	ld [wcd4e], a
+	jp MobilePassword_IncrementJumptable
+
+Function1178e8:
+	ldh a, [hJoyPressed]
+	cp B_BUTTON
+	jr z, .b_button
+	cp A_BUTTON
+	jr z, .a_button
+	cp D_DOWN
+	jr z, .d_down
+	cp D_UP
+	ret nz
+	ld a, [wcd4e]
+	and a
+	ret z
+	dec a
+	ld [wcd4e], a
+	hlcoord 15, 8
+	ld a, "▶"
+	ld [hl], a
+	hlcoord 15, 10
+	ld a, " "
+	ld [hl], a
+	ret
+
+.d_down
+	ld a, [wcd4e]
+	and a
+	ret nz
+	inc a
+	ld [wcd4e], a
+	hlcoord 15, 8
+	ld a, " "
+	ld [hl], a
+	hlcoord 15, 10
+	ld a, "▶"
+	ld [hl], a
+	ret
+
+.a_button
+	call PlayClickSFX
+	ld a, [wcd4e]
+	and a
+	jr nz, .b_button
+	call ExitMenu
+	ld a, $1
+	ld [wcd4f], a
+	jp MobilePassword_IncrementJumptable
+
+.b_button
+	call ExitMenu
+	call ExitMenu
+	jp MobilePassword_IncrementJumptable
+
+Function117942:
+	call SpeechTextbox
+	hlcoord 1, 14
+	ld de, SavedPasswordString
+	call PlaceString
+	ld a, $1e
+	ld [wcd4e], a
+	ld a, BANK(sMobileLoginPassword)
+	call GetSRAMBank
+	ld a, [wcd4f]
+	ld [sMobileLoginPassword], a
+	ld hl, $c708
+	ld de, sMobileLoginPassword + 1
+	ld bc, MOBILE_LOGIN_PASSWORD_LENGTH
+	call CopyBytes
+	call CloseSRAM
+	ld a, [wcd4f]
+	and a
+	jr z, asm_11797e
+	call MobilePassword_IncrementJumptable
+
+Function117976:
+	ld hl, wcd4e
+	dec [hl]
+	ret nz
+	call ExitMenu
+asm_11797e:
+	ld a, $80
+	ld [wcd49], a
+	ret
+
+Function117984:
+	ld hl, MenuHeader_1179b5
+	call LoadMenuHeader
+	call MenuBox
+	call MenuBoxCoord2Tile
+	farcall ReloadMapPart
+	hlcoord 1, 14
+	ld de, NotAPokemonPasswordString
+	call PlaceString
+	ld a, $1e
+	ld [wcd4e], a
+	call MobilePassword_IncrementJumptable
+
+Function1179a7:
+	ld hl, wcd4e
+	dec [hl]
+	ret nz
+	call ExitMenu
+	ld a, $1
+	ld [wcd49], a
+	ret
+
+MenuHeader_1179b5:
+	db MENU_BACKUP_TILES ; flags
+	menu_coords 0, 12, SCREEN_WIDTH - 1, SCREEN_HEIGHT - 1
+	dw NULL
+	db 0 ; default option
+
+MenuHeader_1179bd:
+	db MENU_BACKUP_TILES ; flags
+	menu_coords 14, 7, SCREEN_WIDTH - 1, TEXTBOX_Y - 1
+	dw NULL
+	db 0 ; default option
+
+YessNoString_1179c5:
+	db   "はい"
+	next "いいえ@"
+
+AskSavePasswordString:
+	db   "こ<NO>パスワード¯ほぞんして"
+	line "おきますか?@"
+
+NotAPokemonPasswordString:
+	db   "パスワード<PKMN>にゅうりょく"
+	line "されていません!@"
+
+SavedPasswordString:
+	db   "ログインパスワード¯ほぞん"
+	line "しました@"
+
+MobilePassword_IncrementJumptable:
+	ld hl, wcd49
+	inc [hl]
+	ret
+
+Unknown_117a0f:
+INCBIN "data/mobile/ascii-alpha.txt"
+
+Unknown_117a47:
+INCBIN "data/mobile/ascii-sym.txt"
+
+; everything from here to the end of the bank is related to the
+; Mobile Stadium option from the continue/newgame menu.
+; Needs better function names
+MobileStudium:
+	ldh a, [hInMenu]
+	push af
+	ld a, $1
+	ldh [hInMenu], a
+	call Function117a8d
+	pop af
+	ldh [hInMenu], a
+	ret
+
+Function117a8d:
+	call Function117a94
+	call Function117acd
+	ret
+
+Function117a94:
+	xor a
+	ld [wJumptableIndex], a
+	ld [wcf64], a
+	ld [wcf65], a
+	ld [wcf66], a
+	call ClearBGPalettes
+	call ClearSprites
+	farcall Function172e78
+	farcall HDMATransferAttrMapAndTileMapToWRAMBank3
+	ret
+
+Function117ab4:
+	call ClearBGPalettes
+	call ClearSprites
+	farcall Function172e78
+	farcall Function172eb9
+	farcall ReloadMapPart
+	ret
+
+Function117acd:
+	call JoyTextDelay
+	ld a, [wJumptableIndex]
+	bit 7, a
+	jr nz, .asm_117ae2
+	call Function117ae9
+	farcall HDMATransferAttrMapAndTileMapToWRAMBank3
+	jr Function117acd
+
+.asm_117ae2
+	call ClearBGPalettes
+	call ClearSprites
+	ret
+
+Function117ae9:
+	ld a, [wJumptableIndex]
+	ld e, a
+	ld d, $0
+	ld hl, .Jumptable
+	add hl, de
+	add hl, de
+	ld a, [hli]
+	ld h, [hl]
+	ld l, a
+	jp hl
+
+.Jumptable:
+	dw Function117b06
+	dw Function117b14
+	dw Function117b28
+	dw Function117b31
+	dw Function117b4f
+	dw Function117bb6
+	dw Function117c4a
+
+Function117b06:
+	farcall Function172eb9
+	ld a, $10
+	ld [wcf64], a
+	jp MobileStudium_JumptableIncrement
+
+Function117b14:
+	ld hl, wcf64
+	dec [hl]
+	ret nz
+	ld hl, MenuHeader_117cbc
+	call LoadMenuHeader
+	call MenuBox
+	call MenuBoxCoord2Tile
+	jp MobileStudium_JumptableIncrement
+
+Function117b28:
+	ld hl, MobileStadiumEntryText
+	call PrintText
+	jp MobileStudium_JumptableIncrement
+
+Function117b31:
+	ld hl, MenuHeader_117cc4
+	call LoadMenuHeader
+	call MenuBox
+	call MenuBoxCoord2Tile
+	hlcoord 16, 8
+	ld de, YesNo117ccc
+	call PlaceString
+	hlcoord 15, 8
+	ld a, "▶"
+	ld [hl], a
+	jp MobileStudium_JumptableIncrement
+
+Function117b4f:
+	ldh a, [hJoyPressed]
+	cp B_BUTTON
+	jr z, .b_button
+	cp A_BUTTON
+	jr z, .a_button
+	cp D_DOWN
+	jr z, .d_down
+	cp D_UP
+	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
+
+.d_down
+	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
+
+.a_button
+	call PlayClickSFX
+	ld a, [wcf64]
+	and a
+	jr nz, .b_button
+	call ExitMenu
+	call ExitMenu
+	farcall ReloadMapPart
+	jp MobileStudium_JumptableIncrement
+
+.b_button
+	call ExitMenu
+	call ExitMenu
+	farcall ReloadMapPart
+	ld a, $80
+	ld [wJumptableIndex], a
+	ret
+
+Function117bb6:
+	call Function117c89
+	ld a, $1
+	ldh [hBGMapMode], a
+	farcall Function118284
+	call ClearSprites
+	ld a, [wMobileErrorCodeBuffer]
+	and a
+	jr z, .asm_117be7
+	cp $a
+	jr z, .asm_117be1
+.asm_117bd0
+	ld a, $2
+	ld [wc303], a
+	farcall DisplayMobileError
+	ld a, $80
+	ld [wJumptableIndex], a
+	ret
+
+.asm_117be1
+	ld a, $80
+	ld [wJumptableIndex], a
+	ret
+
+.asm_117be7
+	ldh a, [rSVBK]
+	push af
+	ld a, $3
+	ldh [rSVBK], a
+	ld a, [wcd89]
+	and $1
+	jr nz, .asm_117c16
+	ld a, [w3_d000]
+	cp $fe
+	jr nz, .asm_117c16
+	ld a, [w3_d001]
+	cp $f
+	jr nz, .asm_117c16
+	ld hl, w3_dfec
+	ld de, wcd69
+	ld c, $10
+.asm_117c0b
+	ld a, [de]
+	inc de
+	cp [hl]
+	jr nz, .asm_117c16
+	inc hl
+	dec c
+	jr nz, .asm_117c0b
+	jr .asm_117c20
+
+.asm_117c16
+	pop af
+	ldh [rSVBK], a
+	ld a, $d3
+	ld [wMobileErrorCodeBuffer], a
+	jr .asm_117bd0
+
+.asm_117c20
+	pop af
+	ldh [rSVBK], a
+	farcall Function172eb9
+	ldh a, [rSVBK]
+	push af
+	ld a, $3
+	ldh [rSVBK], a
+	ld a, $7
+	call GetSRAMBank
+	ld hl, w3_d002
+	ld de, $b000
+	ld bc, $1000
+	call CopyBytes
+	call CloseSRAM
+	pop af
+	ldh [rSVBK], a
+	jp MobileStudium_JumptableIncrement
+
+Function117c4a:
+	ld hl, MenuHeader_117cbc
+	call LoadMenuHeader
+	call MenuBox
+	call MenuBoxCoord2Tile
+	farcall ReloadMapPart
+	ld hl, MobileStadiumSuccessText
+	call PrintText
+	ldh a, [rSVBK]
+	push af
+	ld a, $5
+	ldh [rSVBK], a
+	ld hl, wBGPals1
+	ld de, 1 palettes
+	ld c, 8
+.loop
+	push hl
+	ld a, LOW(PALRGB_WHITE)
+	ld [hli], a
+	ld a, HIGH(PALRGB_WHITE)
+	ld [hl], a
+	pop hl
+	add hl, de
+	dec c
+	jr nz, .loop
+	call RotateThreePalettesRight
+	pop af
+	ldh [rSVBK], a
+	ld a, $80
+	ld [wJumptableIndex], 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
+	ld a, l
+	ld [wcd83], a
+	ld a, h
+	ld [wcd84], a
+	ld hl, $bfea
+	ld de, wcd69
+	ld bc, $10
+	call CopyBytes
+	call CloseSRAM
+	ret
+
+MenuHeader_117cbc:
+	db MENU_BACKUP_TILES ; flags
+	menu_coords 0, 12, SCREEN_WIDTH - 1, SCREEN_HEIGHT - 1
+	dw NULL
+	db 0 ; default option
+
+MenuHeader_117cc4:
+	db MENU_BACKUP_TILES ; flags
+	menu_coords 14, 7, SCREEN_WIDTH - 1, TEXTBOX_Y - 1
+	dw NULL
+	db 0 ; default item
+
+YesNo117ccc:
+	db   "はい"
+	next "いいえ@"
+
+MobileStadiumEntryText:
+	text_far _MobileStadiumEntryText
+	text_end
+
+MobileStadiumSuccessText:
+	text_far _MobileStadiumSuccessText
+	text_end
+
+MobileStudium_JumptableIncrement:
+	ld hl, wJumptableIndex
+	inc [hl]
+	ret
--- a/mobile/mobile_46.asm
+++ b/mobile/mobile_46.asm
@@ -1,5 +1,3 @@
-SECTION "Mobile 46", ROMX
-
 Function118000:
 	ld a, $1
 	ld [wcd38], a
--- a/pokecrystal.link
+++ b/pokecrystal.link
@@ -166,11 +166,11 @@
 ROMX $3f
 	"bank3F"
 ROMX $40
-	"mobile_40"
+	"mobile40"
 ROMX $41
 	"bank41"
 ROMX $42
-	"Mobile 42"
+	"mobile42"
 	"Intro Logo"
 	"Credits"
 ROMX $43
@@ -178,10 +178,9 @@
 ROMX $44
 	"Mobile Adapter SDK"
 ROMX $45
-	"Mobile 45"
-	"Mobile Stadium"
+	"mobile45"
 ROMX $46
-	"Mobile 46"
+	"mobile46"
 ROMX $47
 	"Battle Tower"
 ROMX $48
@@ -231,7 +230,7 @@
 	"bank5B"
 	"Pics 20"
 ROMX $5c
-	"Mobile 5C"
+	"mobile5C"
 	"Pics 21"
 ROMX $5d
 	"Crystal Phone Text 2"
@@ -240,10 +239,10 @@
 	"UpdateBattleHUDs"
 	"Songs 5"
 	"Crystal Sound Effects"
-	"Mobile 5E"
+	"mobile5E"
 	"Pics 23"
 ROMX $5f
-	"Mobile 5F"
+	"mobile5F"
 	"Pics 24"
 ROMX $60
 	"Map Scripts 13"
--- a/sram.asm
+++ b/sram.asm
@@ -218,7 +218,7 @@
 sBTMonPrevPrevTrainer3:: db
 
 
-SECTION "Boxes 1-7",  SRAM, BANK [2]
+SECTION "Boxes 1-7", SRAM
 
 sBox1::  box sBox1
 sBox2::  box sBox2