shithub: pokecrystal

Download patch

ref: 9bec0e0f7846bffb3e5d625b35cfb55db078d334
parent: 81eaf83cd7711a28dcd7a62a6e045dba50560f59
parent: 1d4c1aeef4b18738aae3966846429dae80da731c
author: Rangi <35663410+Rangi42@users.noreply.github.com>
date: Fri Feb 28 06:58:18 EST 2020

Merge pull request #691 from Rangi42/master

Identify remaining gfx/unknown files, and document a Teleport bug

diff: cannot open a/gfx/unknown//null: file does not exist: 'a/gfx/unknown//null'
--- a/Makefile
+++ b/Makefile
@@ -157,6 +157,8 @@
 
 gfx/trainers/%.2bpp: rgbgfx += -h
 
+gfx/pokemon/egg/unused_front.2bpp: rgbgfx += -h
+
 gfx/new_game/shrink1.2bpp: rgbgfx += -h
 gfx/new_game/shrink2.2bpp: rgbgfx += -h
 
@@ -181,7 +183,6 @@
 gfx/title/logo.2bpp: rgbgfx += -x 4
 
 gfx/trade/ball.2bpp: tools/gfx += --remove-whitespace
-gfx/trade/game_boy_n64.2bpp: tools/gfx += --trim-whitespace
 
 gfx/slots/slots_1.2bpp: tools/gfx += --trim-whitespace
 gfx/slots/slots_2.2bpp: tools/gfx += --interleave --png=$<
@@ -226,13 +227,17 @@
 gfx/sgb/sgb_border.2bpp: tools/gfx += --trim-whitespace
 
 gfx/mobile/ascii_font.2bpp: tools/gfx += --trim-whitespace
+gfx/mobile/dialpad.2bpp: tools/gfx += --trim-whitespace
+gfx/mobile/dialpad_cursor.2bpp: tools/gfx += --trim-whitespace
 gfx/mobile/electro_ball.2bpp: tools/gfx += --trim-whitespace
 gfx/mobile/electro_ball_nonmatching.2bpp: tools/gfx += --remove-duplicates --remove-xflip
-gfx/mobile/mobile_adapter.2bpp: tools/gfx += --trim-whitespace
 gfx/mobile/mobile_splash.2bpp: tools/gfx += --remove-duplicates --remove-xflip
+gfx/mobile/card.2bpp: tools/gfx += --trim-whitespace
+gfx/mobile/card_2.2bpp: tools/gfx += --trim-whitespace
+gfx/mobile/card_folder.2bpp: tools/gfx += --trim-whitespace
+gfx/mobile/phone_tiles.2bpp: tools/gfx += --remove-whitespace
 gfx/mobile/pichu_animated.2bpp: tools/gfx += --trim-whitespace
-
-gfx/unknown/unknown_egg.2bpp: rgbgfx += -h
+gfx/mobile/stadium2_n64.2bpp: tools/gfx += --trim-whitespace
 
 
 ### Catch-all graphics rules
--- a/docs/bugs_and_glitches.md
+++ b/docs/bugs_and_glitches.md
@@ -30,6 +30,7 @@
 - [A Disabled but PP Up–enhanced move may not trigger Struggle](#a-disabled-but-pp-upenhanced-move-may-not-trigger-struggle)
 - [A Pokémon that fainted from Pursuit will have its old status condition when revived](#a-pokémon-that-fainted-from-pursuit-will-have-its-old-status-condition-when-revived)
 - [Lock-On and Mind Reader don't always bypass Fly and Dig](#lock-on-and-mind-reader-dont-always-bypass-fly-and-dig)
+- [Wild Pokémon can always Teleport regardless of level difference](#wild-pokémon-can-always-teleport-regardless-of-level-difference)
 - [Beat Up can desynchronize link battles](#beat-up-can-desynchronize-link-battles)
 - [Beat Up works incorrectly with only one Pokémon in the party](#beat-up-works-incorrectly-with-only-one-pokémon-in-the-party)
 - [Beat Up may fail to raise Substitute](#beat-up-may-fail-to-raise-substitute)
@@ -690,6 +691,25 @@
 -	and 1 << SUBSTATUS_FLYING | 1 << SUBSTATUS_UNDERGROUND
 +	xor a
  	ret
+```
+
+
+## Wild Pokémon can always Teleport regardless of level difference
+
+**Fix:** Edit `BattleCommand_Teleport` in [engine/battle/move_effects/teleport.asm](https://github.com/pret/pokecrystal/blob/master/engine/battle/move_effects/teleport.asm):
+
+```diff
+ .loop_enemy
+ 	call BattleRandom
+ 	cp c
+ 	jr nc, .loop_enemy
+ 	srl b
+ 	srl b
+ 	cp b
+-	; This should be jr c, .failed
+-	; As written, it makes enemy use of Teleport always succeed if able
+-	jr nc, .run_away
++	jr c, .failed
 ```
 
 
--- a/engine/battle/move_effects/teleport.asm
+++ b/engine/battle/move_effects/teleport.asm
@@ -66,10 +66,8 @@
 	srl b
 	srl b
 	cp b
-	; This does the wrong thing. What was
-	; probably intended was jr c, .failed
-	; The way this is made makes enemy use
-	; of Teleport always succeed if able
+	; This should be jr c, .failed
+	; As written, it makes enemy use of Teleport always succeed if able
 	jr nc, .run_away
 .run_away
 	call UpdateBattleMonInParty
--- a/engine/battle_anims/anim_commands.asm
+++ b/engine/battle_anims/anim_commands.asm
@@ -152,7 +152,7 @@
 
 	ldh a, [rSVBK]
 	push af
-	ld a, BANK(wCurBattleMon) ; aka BANK(wTempMon) and BANK(wPartyMon1) and several others
+	ld a, BANK(wCurBattleMon) ; aka BANK(wTempMon), BANK(wPartyMon1), and several others
 	ldh [rSVBK], a
 
 	ld hl, UpdateBattleHuds
--- a/engine/events/battle_tower/battle_tower.asm
+++ b/engine/events/battle_tower/battle_tower.asm
@@ -17,7 +17,7 @@
 
 	call Function17042c
 
-	ld a, BANK(s5_be45) ; aka BANK(s5_be46) and BANK(s5_aa41) and BANK(s5_aa5d)
+	ld a, BANK(s5_be45) ; aka BANK(s5_be46), BANK(s5_aa41), and BANK(s5_aa5d)
 	call GetSRAMBank
 	ld a, 1
 	ld [s5_be45], a
@@ -1212,7 +1212,7 @@
 
 Function1708c8: ; BattleTowerAction $0c
 	call UpdateTime
-	ld a, BANK(s5_aa8b) ; aka BANK(s5_aa8c) and BANK(s5_aa5d) and BANK(s5_aa48) and BANK(s5_aa47)
+	ld a, BANK(s5_aa8b) ; aka BANK(s5_aa8c), BANK(s5_aa5d), BANK(s5_aa48), and BANK(s5_aa47)
 	call GetSRAMBank
 	ld a, [wCurDay]
 	ld [s5_aa8b], a
--- a/engine/gfx/crystal_layouts.asm
+++ b/engine/gfx/crystal_layouts.asm
@@ -222,7 +222,7 @@
 	RGB 31, 31, 31
 
 Function49742:
-	ld hl, .Palette_49757
+	ld hl, .MobileBorderPalettes
 	ld de, wBGPals1
 	ld bc, 8 palettes
 	ld a, BANK(wBGPals1)
@@ -230,8 +230,8 @@
 	farcall ApplyPals
 	ret
 
-.Palette_49757:
-INCLUDE "gfx/unknown/49757.pal"
+.MobileBorderPalettes:
+INCLUDE "gfx/trade/mobile_border.pal"
 
 _InitMG_Mobile_LinkTradePalMap:
 	hlcoord 0, 0, wAttrmap
--- a/engine/menus/main_menu.asm
+++ b/engine/menus/main_menu.asm
@@ -1,5 +1,5 @@
-GFX_49c0c:
-INCBIN "gfx/unknown/049c0c.2bpp"
+MobileMenuGFX:
+INCBIN "gfx/mobile/mobile_menu.2bpp"
 
 MainMenu:
 	xor a
--- a/engine/pokemon/stats_screen.asm
+++ b/engine/pokemon/stats_screen.asm
@@ -942,9 +942,8 @@
 	pop hl
 	ret
 
-Unreferenced_4e32a:
-; A blank space tile?
-	ds 16
+Unreferenced_StatsScreenSpaceGFX:
+INCBIN "gfx/font/space.2bpp"
 
 EggStatsScreen:
 	xor a
--- a/engine/rtc/rtc.asm
+++ b/engine/rtc/rtc.asm
@@ -136,7 +136,7 @@
 .time_overflow
 	farcall ClearDailyTimers
 	farcall Function170923
-	ld a, BANK(s5_aa8c) ; and BANK(s5_b2fa)
+	ld a, BANK(s5_aa8c) ; aka BANK(s5_b2fa)
 	call GetSRAMBank
 	ld a, [s5_aa8c]
 	inc a
--- a/gfx/font.asm
+++ b/gfx/font.asm
@@ -18,8 +18,6 @@
 INCBIN "gfx/frames/8.1bpp"
 INCBIN "gfx/frames/9.1bpp"
 
-; Various misc graphics here.
-
 StatsScreenPageTilesGFX:
 INCBIN "gfx/stats/stats_tiles.2bpp"
 
@@ -35,22 +33,23 @@
 TownMapGFX:
 INCBIN "gfx/pokegear/town_map.2bpp.lz"
 
-UnusedWeekdayKanjiGFX: ; unused kanji
+UnusedWeekdayKanjiGFX:
 INCBIN "gfx/font/unused_weekday_kanji.2bpp"
 
 PokegearPhoneIconGFX:
 INCBIN "gfx/font/phone_icon.2bpp"
 
-UnusedBoldFontGFX: ; unused bold letters + unown chars
+UnusedBoldFontGFX:
 INCBIN "gfx/font/unused_bold_font.1bpp"
 
 TextboxSpaceGFX:
-INCBIN "gfx/frames/space.1bpp"
+; StatsScreen_LoadTextboxSpaceGFX reads 2bpp; LoadFrame reads first half as 1bpp
+INCBIN "gfx/font/space.2bpp"
 
 FontsExtra_SolidBlackGFX:
 INCBIN "gfx/font/black.1bpp"
 
-UnusedUpArrowGFX: ; unused up arrow + whitespace
+UnusedUpArrowGFX:
 INCBIN "gfx/font/unused_up_arrow.1bpp"
 
 MobilePhoneTilesGFX:
binary files /dev/null b/gfx/font/postal_mark.png differ
binary files /dev/null b/gfx/font/space.png differ
binary files a/gfx/frames/space.png /dev/null differ
binary files /dev/null b/gfx/mobile/card.png differ
binary files /dev/null b/gfx/mobile/card_2.png differ
binary files /dev/null b/gfx/mobile/card_folder.png differ
binary files /dev/null b/gfx/mobile/card_large_sprite.png differ
binary files /dev/null b/gfx/mobile/card_list.png differ
binary files /dev/null b/gfx/mobile/card_sprite.png differ
binary files /dev/null b/gfx/mobile/chris_silhouette.png differ
binary files /dev/null b/gfx/mobile/dialing.png differ
binary files /dev/null b/gfx/mobile/dialing_frame.png differ
binary files /dev/null b/gfx/mobile/dialpad.attrmap differ
binary files /dev/null b/gfx/mobile/dialpad.png differ
binary files /dev/null b/gfx/mobile/dialpad.tilemap differ
binary files /dev/null b/gfx/mobile/dialpad_cursor.png differ
binary files a/gfx/mobile/down_arrow.png b/gfx/mobile/down_arrow.png differ
binary files /dev/null b/gfx/mobile/ez_chat_cursor.png differ
binary files /dev/null b/gfx/mobile/kris_silhouette.png differ
binary files a/gfx/mobile/mobile_adapter.png /dev/null differ
--- /dev/null
+++ b/gfx/mobile/mobile_adapters.pal
@@ -1,0 +1,8 @@
+	RGB 18,31,15, 04,13,31, 00,00,31, 00,00,00 ; blue
+	RGB 18,31,15, 31,31,00, 31,15,00, 00,00,00 ; yellow
+	RGB 18,31,15, 09,24,00, 02,16,00, 00,00,00 ; green
+	RGB 18,31,15, 31,07,09, 18,00,01, 00,00,00 ; red
+	RGB 18,31,15, 28,05,31, 17,00,17, 00,00,00 ; purple
+	RGB 18,31,15, 09,09,09, 04,04,04, 00,00,00 ; black
+	RGB 18,31,15, 31,13,21, 27,07,12, 00,00,00 ; pink
+	RGB 18,31,15, 21,20,20, 14,14,31, 00,00,00 ; gray
binary files /dev/null b/gfx/mobile/mobile_cable_1.png differ
binary files /dev/null b/gfx/mobile/mobile_cable_2.png differ
binary files /dev/null b/gfx/mobile/mobile_center.attrmap differ
binary files /dev/null b/gfx/mobile/mobile_center.tilemap differ
binary files /dev/null b/gfx/mobile/mobile_menu.png differ
--- /dev/null
+++ b/gfx/mobile/mobile_password.pal
@@ -1,0 +1,39 @@
+	RGB  0,  0,  0
+	RGB  3,  0,  0
+	RGB  5,  0,  0
+	RGB 31, 31, 29
+
+	RGB  0,  2, 10
+	RGB  2, 10, 21
+	RGB  0,  0,  0
+	RGB 10, 26, 31
+
+	RGB  0,  0,  0
+	RGB  0,  7,  8
+	RGB 31,  8,  0
+	RGB  1, 17, 15
+
+	RGB 31, 16,  0
+	RGB 31, 22,  0
+	RGB 31, 27,  0
+	RGB 31, 31,  0
+
+	RGB 31, 18,  6
+	RGB  0,  3,  0
+	RGB  0,  9,  0
+	RGB  0, 12,  0
+
+	RGB  0, 16,  0
+	RGB  0, 22,  0
+	RGB  0, 25,  0
+	RGB  0, 27,  0
+
+	RGB  5,  5, 16
+	RGB  8, 19, 28
+	RGB  0,  0,  0
+	RGB 31, 31, 31
+
+	RGB 31, 31, 29
+	RGB 21, 21, 20
+	RGB 11, 11, 10
+	RGB  0,  0,  0
--- /dev/null
+++ b/gfx/mobile/mobile_splash.pal
@@ -1,0 +1,39 @@
+	RGB 31, 31, 31
+	RGB 04, 10, 20
+	RGB 16, 19, 25
+	RGB 25, 27, 29
+
+	RGB 31, 31, 31
+	RGB 31, 31, 31
+	RGB 31, 31, 31
+	RGB 31, 31, 31
+
+	RGB 31, 31, 31
+	RGB 31, 31, 31
+	RGB 31, 31, 31
+	RGB 31, 31, 31
+
+	RGB 31, 31, 31
+	RGB 31, 31, 31
+	RGB 31, 31, 31
+	RGB 31, 31, 31
+
+	RGB 31, 31, 31
+	RGB 31, 31, 31
+	RGB 31, 31, 31
+	RGB 31, 31, 31
+
+	RGB 31, 31, 31
+	RGB 31, 31, 31
+	RGB 31, 31, 31
+	RGB 31, 31, 31
+
+	RGB 31, 31, 31
+	RGB 31, 31, 31
+	RGB 31, 31, 31
+	RGB 31, 31, 31
+
+	RGB 31, 31, 31
+	RGB 31, 31, 31
+	RGB 31, 31, 31
+	RGB 31, 31, 31
binary files /dev/null b/gfx/mobile/mobile_splash_check.png differ
binary files /dev/null b/gfx/mobile/mobile_trade.2bpp.lz.aad8592b differ
binary files /dev/null b/gfx/mobile/mobile_trade.attrmap differ
binary files /dev/null b/gfx/mobile/mobile_trade.attrmap.lz.ea4f2cbe differ
binary files /dev/null b/gfx/mobile/mobile_trade.png differ
binary files /dev/null b/gfx/mobile/mobile_trade.tilemap differ
binary files /dev/null b/gfx/mobile/mobile_trade.tilemap.lz.12882d37 differ
--- /dev/null
+++ b/gfx/mobile/mobile_trade_bg.pal
@@ -1,0 +1,39 @@
+	RGB 18, 31, 15
+	RGB 20, 20, 20
+	RGB 11, 11, 11
+	RGB 00, 00, 00
+
+	RGB 31, 15,  1
+	RGB 14, 14, 31
+	RGB 12, 09, 31
+	RGB 00, 00, 00
+
+	RGB 18, 31, 15
+	RGB 14, 14, 31
+	RGB 12, 09, 31
+	RGB 00, 00, 00
+
+	RGB 18, 31, 15
+	RGB 20, 20, 20
+	RGB 11, 11, 11
+	RGB 00, 00, 00
+
+	RGB 18, 31, 15
+	RGB 31, 07, 09
+	RGB 18, 00, 01
+	RGB 00, 00, 00
+
+	RGB 18, 31, 15
+	RGB 20, 20, 20
+	RGB 11, 11, 11
+	RGB 00, 00, 00
+
+	RGB 31, 15,  1
+	RGB 18, 00, 30
+	RGB 09, 00, 17
+	RGB 00, 00, 00
+
+	RGB 18, 31, 15
+	RGB 18, 00, 30
+	RGB 09, 00, 17
+	RGB 00, 00, 00
--- /dev/null
+++ b/gfx/mobile/mobile_trade_lights.pal
@@ -1,0 +1,19 @@
+	RGB  0,  0,  0
+	RGB 31, 31,  7
+	RGB 20, 31,  6
+	RGB 13, 20, 16
+
+	RGB  0,  0,  0
+	RGB  7, 11, 17
+	RGB  0,  0,  0
+	RGB  0,  0,  0
+
+	RGB  0,  0,  0
+	RGB 31, 24,  4
+	RGB 25, 12,  0
+	RGB 31,  7,  4
+
+	RGB  0,  0,  0
+	RGB 25,  0,  0
+	RGB  0,  0,  0
+	RGB  0,  0,  0
binary files /dev/null b/gfx/mobile/mobile_trade_lights.png differ
--- /dev/null
+++ b/gfx/mobile/mobile_trade_ob1.pal
@@ -1,0 +1,39 @@
+	RGB 31, 31, 31
+	RGB 31, 31, 12
+	RGB 31, 13, 12
+	RGB 00, 00, 00
+
+	RGB 31, 31, 31
+	RGB 31, 23, 15
+	RGB 31, 18, 07
+	RGB 31, 15, 00
+
+	RGB 31, 31, 31
+	RGB 20, 20, 20
+	RGB 11, 11, 11
+	RGB 00, 00, 00
+
+	RGB 31, 31, 31
+	RGB 31, 00, 25
+	RGB 31, 00, 25
+	RGB 00, 00, 00
+
+	RGB 31, 31, 31
+	RGB 09, 19, 31
+	RGB 09, 19, 31
+	RGB 00, 00, 00
+
+	RGB 31, 31, 31
+	RGB 00, 00, 00
+	RGB 00, 00, 00
+	RGB 00, 00, 00
+
+	RGB 31, 31, 31
+	RGB 00, 00, 00
+	RGB 00, 00, 00
+	RGB 00, 00, 00
+
+	RGB 31, 31, 31
+	RGB 00, 00, 00
+	RGB 00, 00, 00
+	RGB 00, 00, 00
--- /dev/null
+++ b/gfx/mobile/mobile_trade_ob2.pal
@@ -1,0 +1,39 @@
+	RGB 31, 31, 31
+	RGB 31, 31, 12
+	RGB 31, 13, 12
+	RGB 00, 00, 00
+
+	RGB 31, 31, 31
+	RGB 31, 23, 15
+	RGB 31, 18, 07
+	RGB 31, 15, 00
+
+	RGB 31, 31, 31
+	RGB 20, 20, 20
+	RGB 11, 11, 11
+	RGB 00, 00, 00
+
+	RGB 31, 31, 31
+	RGB 09, 19, 31
+	RGB 09, 19, 31
+	RGB 00, 00, 00
+
+	RGB 31, 31, 31
+	RGB 31, 00, 25
+	RGB 31, 00, 25
+	RGB 00, 00, 00
+
+	RGB 31, 31, 31
+	RGB 00, 00, 00
+	RGB 00, 00, 00
+	RGB 00, 00, 00
+
+	RGB 31, 31, 31
+	RGB 00, 00, 00
+	RGB 00, 00, 00
+	RGB 00, 00, 00
+
+	RGB 31, 31, 31
+	RGB 00, 00, 00
+	RGB 00, 00, 00
+	RGB 00, 00, 00
binary files /dev/null b/gfx/mobile/mobile_trade_sprites.2bpp.lz.eef1e11d differ
binary files /dev/null b/gfx/mobile/mobile_trade_sprites.png differ
binary files /dev/null b/gfx/mobile/password.attrmap differ
binary files /dev/null b/gfx/mobile/password_bottom.tilemap differ
binary files /dev/null b/gfx/mobile/password_shift.tilemap differ
binary files /dev/null b/gfx/mobile/password_top.tilemap differ
binary files a/gfx/mobile/phone_tiles.png b/gfx/mobile/phone_tiles.png differ
--- /dev/null
+++ b/gfx/mobile/pichu_border.attrmap
@@ -1,0 +1,1 @@
+������������������������������������������������������������������������������������������������
\ No newline at end of file
binary files /dev/null b/gfx/mobile/pichu_border.png differ
--- /dev/null
+++ b/gfx/mobile/pichu_border.tilemap
@@ -1,0 +1,1 @@
+�����������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������
\ No newline at end of file
--- /dev/null
+++ b/gfx/mobile/pichu_border_bg.pal
@@ -1,0 +1,4 @@
+	RGB 31, 30, 30
+	RGB  2,  0,  0
+	RGB 10,  9,  9
+	RGB 15, 14, 14
--- /dev/null
+++ b/gfx/mobile/pichu_border_ob.pal
@@ -1,0 +1,39 @@
+	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
--- /dev/null
+++ b/gfx/mobile/pokemon_news.pal
@@ -1,0 +1,39 @@
+	RGB 24,  9,  8
+	RGB  4,  9, 18
+	RGB 18, 18, 12
+	RGB  0,  0,  0
+
+	RGB 24, 24, 18
+	RGB 18, 18, 12
+	RGB  4,  9, 18
+	RGB  0,  0,  0
+
+	RGB 31, 31, 31
+	RGB 23, 11, 10
+	RGB 13,  6,  5
+	RGB  0,  0,  0
+
+	RGB 31, 31, 31
+	RGB 15, 25,  5
+	RGB 10, 20,  0
+	RGB  0,  0,  0
+
+	RGB 31, 31, 31
+	RGB 20, 28, 20
+	RGB 10, 18, 15
+	RGB  0,  0,  0
+
+	RGB 31, 31, 31
+	RGB 22, 22, 12
+	RGB 17, 12,  5
+	RGB  0,  0,  0
+
+	RGB  5,  5, 16
+	RGB  8, 19, 28
+	RGB  0,  0,  0
+	RGB 31, 31, 31
+
+	RGB 31, 31, 31
+	RGB 27, 24,  0
+	RGB 24, 16,  3
+	RGB  0,  0,  0
binary files /dev/null b/gfx/mobile/select_start.png differ
binary files /dev/null b/gfx/mobile/stadium2_n64.attrmap differ
binary files /dev/null b/gfx/mobile/stadium2_n64.png differ
--- /dev/null
+++ b/gfx/mobile/stadium2_n64.tilemap
@@ -1,0 +1,13 @@
+
+121	,-,./0
+
+<=<7879:;$ GHG!"#ABCDEF$%$0
+
+121	,-,./0
+;<=<7879:;F$%$ GHG!"#ABCDEF$,./0
+
+	,-,.79:;

7879CDEF$%$!"#ABCD	,-,./0&'()*+121	,7879:;345643<=<7#ABCDEF>?@@?>GHG!"#A1	,-,./0
+
+121<7879:;<=<G!"#ABCDEF$%$ GHG!121	,-,./0
+
+1<=<7879:;< GHG!"#ABCDEF$%$ G
\ No newline at end of file
--- /dev/null
+++ b/gfx/mobile/stadium2_n64_corrupt.tilemap
@@ -1,0 +1,15 @@
+
+121	,-,./0
+
+<=<7879:;$ GHG!"#ABCDEF$%$0
+
+121	,-,./0
+;<=<7879:;F$%$ GHG!"#ABCDEF$,./0
+
+	,-,.79:;
+
+7879CDEF$%$!"#ABCD	,-,./0&'()*+121	,7879:;345643<=<7#ABCDEF>?@@?>GHG!"#A1	,-,./0
+
+121<7879:;<=<G!"#ABCDEF$%$ GHG!121	,-,./0
+
+1<=<7879:;< GHG!"#ABCDEF$%$ G
\ No newline at end of file
--- /dev/null
+++ b/gfx/mobile/unused_mobile_pulses.pal
@@ -1,0 +1,11 @@
+	RGB 31, 31, 31
+	RGB 00, 00, 00
+
+	RGB 31, 00, 25
+	RGB 00, 00, 00
+
+	RGB 31, 31, 31
+	RGB 00, 00, 00
+
+	RGB 09, 19, 31
+	RGB 00, 00, 00
binary files a/gfx/mobile/up_arrow.png b/gfx/mobile/up_arrow.png differ
binary files a/gfx/pokedex/select_start.png /dev/null differ
binary files /dev/null b/gfx/pokemon/egg/unused_front.2bpp.lz.a5b6cbfa differ
binary files /dev/null b/gfx/pokemon/egg/unused_front.png differ
binary files a/gfx/trade/game_boy_n64.png /dev/null differ
--- /dev/null
+++ b/gfx/trade/mobile_border.pal
@@ -1,0 +1,39 @@
+	RGB 31, 31, 63
+	RGB 00, 00, 00
+	RGB 00, 00, 00
+	RGB 00, 00, 00
+
+	RGB 31, 31, 63
+	RGB 00, 00, 00
+	RGB 00, 00, 00
+	RGB 00, 00, 00
+
+	RGB 04, 02, 15
+	RGB 21, 00, 21
+	RGB 31, 00, 00
+	RGB 31, 31, 31
+
+	RGB 04, 02, 15
+	RGB 21, 00, 21
+	RGB 30, 16, 26
+	RGB 31, 31, 31
+
+	RGB 04, 02, 15
+	RGB 21, 00, 21
+	RGB 16, 16, 16
+	RGB 31, 31, 31
+
+	RGB 04, 02, 15
+	RGB 21, 00, 21
+	RGB 31, 12, 12
+	RGB 31, 31, 31
+
+	RGB 04, 02, 15
+	RGB 21, 00, 21
+	RGB 07, 08, 31
+	RGB 31, 31, 31
+
+	RGB 04, 02, 15
+	RGB 21, 00, 21
+	RGB 29, 28, 09
+	RGB 31, 31, 31
binary files a/gfx/unknown/049c0c.png /dev/null differ
binary files a/gfx/unknown/08940b.png /dev/null differ
binary files a/gfx/unknown/1032a2.png /dev/null differ
binary files a/gfx/unknown/106514.png /dev/null differ
binary files a/gfx/unknown/108d27.2bpp.lz.eef1e11d /dev/null differ
binary files a/gfx/unknown/108d27.png /dev/null differ
binary files a/gfx/unknown/108da7.2bpp.lz.aad8592b /dev/null differ
binary files a/gfx/unknown/108da7.png /dev/null differ
binary files a/gfx/unknown/108fe7.tilemap /dev/null differ
binary files a/gfx/unknown/108fe7.tilemap.lz.12882d37 /dev/null differ
binary files a/gfx/unknown/1090a7.tilemap /dev/null differ
binary files a/gfx/unknown/1090a7.tilemap.lz.ea4f2cbe /dev/null differ
binary files a/gfx/unknown/1091c7.png /dev/null differ
binary files a/gfx/unknown/1092c7.png /dev/null differ
binary files a/gfx/unknown/11601a.png /dev/null differ
--- a/gfx/unknown/117356.tilemap
+++ /dev/null
@@ -1,1 +1,0 @@
-�����������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������
\ No newline at end of file
--- a/gfx/unknown/1174d6.attrmap
+++ /dev/null
@@ -1,1 +1,0 @@
-������������������������������������������������������������������������������������������������
\ No newline at end of file
--- a/gfx/unknown/16c903.pal
+++ /dev/null
@@ -1,39 +1,0 @@
-	RGB 31, 31, 31
-	RGB 04, 10, 20
-	RGB 16, 19, 25
-	RGB 25, 27, 29
-
-	RGB 31, 31, 31
-	RGB 31, 31, 31
-	RGB 31, 31, 31
-	RGB 31, 31, 31
-
-	RGB 31, 31, 31
-	RGB 31, 31, 31
-	RGB 31, 31, 31
-	RGB 31, 31, 31
-
-	RGB 31, 31, 31
-	RGB 31, 31, 31
-	RGB 31, 31, 31
-	RGB 31, 31, 31
-
-	RGB 31, 31, 31
-	RGB 31, 31, 31
-	RGB 31, 31, 31
-	RGB 31, 31, 31
-
-	RGB 31, 31, 31
-	RGB 31, 31, 31
-	RGB 31, 31, 31
-	RGB 31, 31, 31
-
-	RGB 31, 31, 31
-	RGB 31, 31, 31
-	RGB 31, 31, 31
-	RGB 31, 31, 31
-
-	RGB 31, 31, 31
-	RGB 31, 31, 31
-	RGB 31, 31, 31
-	RGB 31, 31, 31
binary files a/gfx/unknown/16cca3.png /dev/null differ
binary files a/gfx/unknown/171848.png /dev/null differ
binary files a/gfx/unknown/172491.tilemap /dev/null differ
binary files a/gfx/unknown/17251d.tilemap /dev/null differ
binary files a/gfx/unknown/1725f9.tilemap /dev/null differ
binary files a/gfx/unknown/172685.tilemap /dev/null differ
binary files a/gfx/unknown/1727ed.attrmap /dev/null differ
binary files a/gfx/unknown/172955.attrmap /dev/null differ
--- a/gfx/unknown/1733af.tilemap
+++ /dev/null
@@ -1,13 +1,0 @@
-
-121	,-,./0
-
-<=<7879:;$ GHG!"#ABCDEF$%$0
-
-121	,-,./0
-;<=<7879:;F$%$ GHG!"#ABCDEF$,./0
-
-	,-,.79:;

7879CDEF$%$!"#ABCD	,-,./0&'()*+121	,7879:;345643<=<7#ABCDEF>?@@?>GHG!"#A1	,-,./0
-
-121<7879:;<=<G!"#ABCDEF$%$ GHG!121	,-,./0
-
-1<=<7879:;< GHG!"#ABCDEF$%$ G
\ No newline at end of file
--- a/gfx/unknown/1733af_corrupt.tilemap
+++ /dev/null
@@ -1,15 +1,0 @@
-
-121	,-,./0
-
-<=<7879:;$ GHG!"#ABCDEF$%$0
-
-121	,-,./0
-;<=<7879:;F$%$ GHG!"#ABCDEF$,./0
-
-	,-,.79:;
-
-7879CDEF$%$!"#ABCD	,-,./0&'()*+121	,7879:;345643<=<7#ABCDEF>?@@?>GHG!"#A1	,-,./0
-
-121<7879:;<=<G!"#ABCDEF$%$ GHG!121	,-,./0
-
-1<=<7879:;< GHG!"#ABCDEF$%$ G
\ No newline at end of file
binary files a/gfx/unknown/173517.attrmap /dev/null differ
binary files a/gfx/unknown/17acd5.tilemap /dev/null differ
binary files a/gfx/unknown/17ae3d.tilemap /dev/null differ
binary files a/gfx/unknown/17afa5.png /dev/null differ
binary files a/gfx/unknown/17eb7e.png /dev/null differ
--- a/gfx/unknown/49757.pal
+++ /dev/null
@@ -1,39 +1,0 @@
-	RGB 31, 31, 63
-	RGB 00, 00, 00
-	RGB 00, 00, 00
-	RGB 00, 00, 00
-
-	RGB 31, 31, 63
-	RGB 00, 00, 00
-	RGB 00, 00, 00
-	RGB 00, 00, 00
-
-	RGB 04, 02, 15
-	RGB 21, 00, 21
-	RGB 31, 00, 00
-	RGB 31, 31, 31
-
-	RGB 04, 02, 15
-	RGB 21, 00, 21
-	RGB 30, 16, 26
-	RGB 31, 31, 31
-
-	RGB 04, 02, 15
-	RGB 21, 00, 21
-	RGB 16, 16, 16
-	RGB 31, 31, 31
-
-	RGB 04, 02, 15
-	RGB 21, 00, 21
-	RGB 31, 12, 12
-	RGB 31, 31, 31
-
-	RGB 04, 02, 15
-	RGB 21, 00, 21
-	RGB 07, 08, 31
-	RGB 31, 31, 31
-
-	RGB 04, 02, 15
-	RGB 21, 00, 21
-	RGB 29, 28, 09
-	RGB 31, 31, 31
binary files a/gfx/unknown/unknown_egg.2bpp.lz.a5b6cbfa /dev/null differ
binary files a/gfx/unknown/unknown_egg.png /dev/null differ
--- a/home/pokemon.asm
+++ b/home/pokemon.asm
@@ -267,7 +267,7 @@
 	jr .end
 
 .egg
-	ld de, UnknownEggPic
+	ld de, UnusedEggFrontpic
 
 ; Sprite dimensions
 	ld b, $55 ; 5x5
--- a/main.asm
+++ b/main.asm
@@ -262,9 +262,9 @@
 INCLUDE "data/pokemon/names.asm"
 INCLUDE "data/pokemon/unused_pic_banks.asm"
 
-UnknownEggPic::
+UnusedEggFrontpic::
 ; Another egg pic. This is shifted up a few pixels.
-INCBIN "gfx/unknown/unknown_egg.2bpp.lz"
+INCBIN "gfx/pokemon/egg/unused_front.2bpp.lz"
 
 
 SECTION "Crystal Phone Text", ROMX
--- a/mobile/fixed_words.asm
+++ b/mobile/fixed_words.asm
@@ -311,11 +311,11 @@
 	call Function11d323
 	call SetPalettes
 	call DisableLCD
-	ld hl, GFX_11d67e
+	ld hl, SelectStartGFX
 	ld de, vTiles2
 	ld bc, $60
 	call CopyBytes
-	ld hl, LZ_11d6de
+	ld hl, EZChatSlowpokeLZ
 	ld de, vTiles0
 	call Decompress
 	call EnableLCD
@@ -3236,14 +3236,14 @@
 
 INCLUDE "data/pokemon/ezchat_order.asm"
 
-GFX_11d67e:
-INCBIN "gfx/pokedex/select_start.2bpp"
+SelectStartGFX:
+INCBIN "gfx/mobile/select_start.2bpp"
 
-LZ_11d6de:
+EZChatSlowpokeLZ:
 INCBIN "gfx/pokedex/slowpoke.2bpp.lz"
 
 MobileEZChatCategoryNames:
-; Fixed message categories
+; entries correspond to EZCHAT_* constants
 	db "ポケモン@@" ; 00
 	db "タイプ@@@" ; 01
 	db "あいさつ@@" ; 02
--- a/mobile/mobile_12.asm
+++ b/mobile/mobile_12.asm
@@ -1006,10 +1006,10 @@
 	ret
 
 MobileUpArrowGFX:
-INCBIN "gfx/mobile/up_arrow.2bpp"
+INCBIN "gfx/mobile/up_arrow.1bpp"
 
 MobileDownArrowGFX:
-INCBIN "gfx/mobile/down_arrow.2bpp"
+INCBIN "gfx/mobile/down_arrow.1bpp"
 
 Function488d3:
 	call Function48283
--- a/mobile/mobile_22.asm
+++ b/mobile/mobile_22.asm
@@ -501,9 +501,9 @@
 
 Function893ef:
 	ld de, vTiles0
-	ld hl, GFX_8940b
+	ld hl, EZChatCursorGFX
 	ld bc, $20
-	ld a, BANK(GFX_8940b)
+	ld a, BANK(EZChatCursorGFX)
 	call FarCopyBytes
 	ret
 
@@ -514,19 +514,19 @@
 	call DelayFrame
 	ret
 
-GFX_8940b:
-INCBIN "gfx/unknown/08940b.2bpp"
+EZChatCursorGFX:
+INCBIN "gfx/mobile/ez_chat_cursor.2bpp"
 
 Function8942b:
 	ld de, vTiles0 tile $02
-	ld hl, MobileAdapterGFX + $7d tiles
+	ld hl, CardLargeSpriteGFX
 	ld bc, 8 tiles
-	ld a, BANK(MobileAdapterGFX)
+	ld a, BANK(CardLargeSpriteGFX)
 	call FarCopyBytes
 	ld de, vTiles0 tile $0a
-	ld hl, MobileAdapterGFX + $c6 tiles
+	ld hl, CardSpriteGFX
 	ld bc, 4 tiles
-	ld a, BANK(MobileAdapterGFX)
+	ld a, BANK(CardSpriteGFX)
 	call FarCopyBytes
 	ret
 
@@ -544,23 +544,23 @@
 	ret
 
 Function89455:
-	ld hl, MobileAdapterGFX + $7d tiles
+	ld hl, CardLargeSpriteGFX
 	ld de, vTiles2 tile $0c
-	ld bc, $49 tiles
-	ld a, BANK(MobileAdapterGFX)
+	ld bc, (8 + 65) tiles
+	ld a, BANK(CardLargeSpriteGFX) ; aka BANK(CardFolderGFX)
 	call FarCopyBytes
 	ret
 
 Function89464:
-	ld hl, MobileAdapterGFX
+	ld hl, MobileCardGFX
 	ld de, vTiles2
 	ld bc, $20 tiles
-	ld a, BANK(MobileAdapterGFX)
+	ld a, BANK(MobileCardGFX)
 	call FarCopyBytes
-	ld hl, MobileAdapterGFX + $66 tiles
+	ld hl, MobileCard2GFX
 	ld de, vTiles2 tile $20
 	ld bc, $17 tiles
-	ld a, BANK(MobileAdapterGFX)
+	ld a, BANK(MobileCard2GFX)
 	call FarCopyBytes
 	ret
 
@@ -1193,16 +1193,16 @@
 	ret
 
 Function89807:
-	ld hl, MobileAdapterGFX + $20 tiles
+	ld hl, ChrisSilhouetteGFX
 	ld a, [wPlayerGender]
 	bit PLAYERGENDER_FEMALE_F, a
 	jr z, .asm_89814
-	ld hl, MobileAdapterGFX + $43 tiles
+	ld hl, KrisSilhouetteGFX
 .asm_89814
 	call DisableLCD
 	ld de, vTiles2 tile $37
-	ld bc, $23 tiles
-	ld a, BANK(MobileAdapterGFX)
+	ld bc, (5 * 7) tiles
+	ld a, BANK(ChrisSilhouetteGFX) ; aka BANK(KrisSilhouetteGFX)
 	call FarCopyBytes
 	call EnableLCD
 	call DelayFrame
--- a/mobile/mobile_22_2.asm
+++ b/mobile/mobile_22_2.asm
@@ -569,20 +569,20 @@
 	ret
 
 Function8b690:
-	ld hl, GFX_17afa5 + $514
+	ld hl, MobileCardListGFX
 	ld de, vTiles2
-	ld bc, $160
-	ld a, BANK(GFX_17afa5)
+	ld bc, $16 tiles
+	ld a, BANK(MobileCardListGFX)
 	call FarCopyBytes
-	ld hl, GFX_17afa5 + $514 + $160 - $10
+	ld hl, MobileCardListGFX tile $15
 	ld de, vTiles2 tile $61
-	ld bc, $10
-	ld a, BANK(GFX_17afa5)
+	ld bc, 1 tiles
+	ld a, BANK(MobileCardListGFX)
 	call FarCopyBytes
-	ld hl, GFX_17afa5 + $514 + $160
+	ld hl, MobileCardListGFX tile $16
 	ld de, vTiles0 tile $ee
-	ld bc, $10
-	ld a, BANK(GFX_17afa5)
+	ld bc, 1 tiles
+	ld a, BANK(MobileCardListGFX)
 	call FarCopyBytes
 	ret
 
--- a/mobile/mobile_40.asm
+++ b/mobile/mobile_40.asm
@@ -6439,9 +6439,9 @@
 
 Function102dd3:
 	call DisableLCD
-	ld de, GFX_1032a2
+	ld de, MobileTradeLightsGFX
 	ld hl, vTiles0
-	lb bc, BANK(GFX_1032a2), 4
+	lb bc, BANK(MobileTradeLightsGFX), 4
 	call Get2bpp
 	farcall __LoadTradeScreenBorder
 	call EnableLCD
@@ -6448,7 +6448,7 @@
 	ret
 
 Function102dec:
-	ld hl, Palettes_1032e2
+	ld hl, MobileTradeLightsPalettes
 	ld de, wOBPals1
 	ld bc, 4 palettes
 	ld a, $05
@@ -6890,29 +6890,11 @@
 	db $00, $00, $03, $02
 	db $00, $00, $01, $03
 
-GFX_1032a2:
-INCBIN "gfx/unknown/1032a2.2bpp"
+MobileTradeLightsGFX:
+INCBIN "gfx/mobile/mobile_trade_lights.2bpp"
 
-Palettes_1032e2:
-	RGB  0,  0,  0
-	RGB 31, 31,  7
-	RGB 20, 31,  6
-	RGB 13, 20, 16
-
-	RGB  0,  0,  0
-	RGB  7, 11, 17
-	RGB  0,  0,  0
-	RGB  0,  0,  0
-
-	RGB  0,  0,  0
-	RGB 31, 24,  4
-	RGB 25, 12,  0
-	RGB 31,  7,  4
-
-	RGB  0,  0,  0
-	RGB 25,  0,  0
-	RGB  0,  0,  0
-	RGB  0,  0,  0
+MobileTradeLightsPalettes:
+INCLUDE "gfx/mobile/mobile_trade_lights.pal"
 
 Function103302:
 	call Function103309
--- a/mobile/mobile_41.asm
+++ b/mobile/mobile_41.asm
@@ -1016,10 +1016,10 @@
 	ld hl, vTiles2 tile "▲" ; $61
 	lb bc, BANK(FontsExtra2_UpArrowGFX), 1
 	call Get2bpp
-	ld de, GFX_106514
+	ld de, MobileDialingFrameGFX
 	ld hl, vTiles2 tile "☎" ; $62
 	ld c, 9
-	ld b, BANK(GFX_106514)
+	ld b, BANK(MobileDialingFrameGFX)
 	call Get2bpp
 	ld de, $40b0
 	ld hl, vTiles2 tile $6b
@@ -1103,5 +1103,5 @@
 	call Get2bpp
 	ret
 
-GFX_106514:
-INCBIN "gfx/unknown/106514.2bpp"
+MobileDialingFrameGFX:
+INCBIN "gfx/mobile/dialing_frame.2bpp"
--- a/mobile/mobile_42.asm
+++ b/mobile/mobile_42.asm
@@ -149,13 +149,13 @@
 
 	ld a, $1
 	ldh [rVBK], a
-	ld hl, LZ_108da7
+	ld hl, MobileTradeGFX
 	ld de, vTiles2
 	call Decompress
 
 	ld a, $0
 	ldh [rVBK], a
-	ld hl, LZ_108d27
+	ld hl, MobileTradeSpritesGFX
 	ld de, vTiles0 tile $20
 	call Decompress
 
@@ -804,7 +804,7 @@
 	push af
 	ld a, $5
 	ldh [rSVBK], a
-	ld hl, Palette_109107
+	ld hl, MobileTradeBGPalettes
 	ld de, wBGPals1
 	ld bc, 8 palettes
 	call CopyBytes
@@ -826,12 +826,12 @@
 	call MobileTradeAnim_ClearBGMap
 	ld a, $1
 	ldh [rVBK], a
-	ld hl, LZ_108da7
+	ld hl, MobileTradeGFX
 	ld de, vTiles2
 	call Decompress
 	ld a, $0
 	ldh [rVBK], a
-	ld hl, LZ_108d27
+	ld hl, MobileTradeSpritesGFX
 	ld de, vTiles0 tile $20
 	call Decompress
 	call Function108c80
@@ -849,7 +849,7 @@
 	push af
 	ld a, $5
 	ldh [rSVBK], a
-	ld hl, Palette_109107
+	ld hl, MobileTradeBGPalettes
 	ld de, wBGPals1
 	ld bc, 8 palettes
 	call CopyBytes
@@ -869,12 +869,12 @@
 	call DisableLCD
 	ld a, $1
 	ldh [rVBK], a
-	ld hl, LZ_108da7
+	ld hl, MobileTradeGFX
 	ld de, vTiles2
 	call Decompress
 	ld a, $0
 	ldh [rVBK], a
-	ld hl, LZ_108d27
+	ld hl, MobileTradeSpritesGFX
 	ld de, vTiles0 tile $20
 	call Decompress
 	call Function108c80
@@ -892,7 +892,7 @@
 	push af
 	ld a, $5
 	ldh [rSVBK], a
-	ld hl, Palette_109107
+	ld hl, MobileTradeBGPalettes
 	ld de, wBGPals1
 	ld bc, 8 palettes
 	call CopyBytes
@@ -1364,16 +1364,16 @@
 Function108ad4:
 	and a
 	jr z, .asm_108adc
-	ld de, GFX_1092c7
+	ld de, MobileCable2GFX
 	jr .asm_108adf
 
 .asm_108adc
-	ld de, GFX_1091c7
+	ld de, MobileCable1GFX
 .asm_108adf
 	ld a, $1
 	ldh [rVBK], a
 	ld hl, vTiles2 tile $4a
-	lb bc, BANK(GFX_1092c7), 16
+	lb bc, BANK(MobileCable1GFX), 16 ; aka BANK(MobileCable2GFX)
 	call Get2bpp_2
 	call DelayFrame
 	ld a, $0
@@ -1387,23 +1387,23 @@
 	ldh [rSVBK], a
 	ld a, [wcf65]
 	and $1
-	jr z, .copy_palette_109147
-	ld hl, Palette_109187
+	jr z, .copy_MobileTradeOB1Palettes
+	ld hl, MobileTradeOB2Palettes
 	ld de, wOBPals1
 	ld bc, 8 palettes
 	call CopyBytes
-	ld hl, Palette_109187
+	ld hl, MobileTradeOB2Palettes
 	ld de, wOBPals2
 	ld bc, 8 palettes
 	call CopyBytes
 	jr .done_copy
 
-.copy_palette_109147
-	ld hl, Palette_109147
+.copy_MobileTradeOB1Palettes
+	ld hl, MobileTradeOB1Palettes
 	ld de, wOBPals1
 	ld bc, 8 palettes
 	call CopyBytes
-	ld hl, Palette_109147
+	ld hl, MobileTradeOB1Palettes
 	ld de, wOBPals2
 	ld bc, 8 palettes
 	call CopyBytes
@@ -1615,10 +1615,10 @@
 	text_end
 
 Function108c6d:
-	ld hl, LZ_108fe7
+	ld hl, MobileTradeTilemapLZ
 	debgcoord 0, 0
 	call Decompress
-	ld hl, LZ_108fe7
+	ld hl, MobileTradeTilemapLZ
 	debgcoord 0, 0, vBGMap1
 	call Decompress
 	ret
@@ -1626,10 +1626,10 @@
 Function108c80:
 	ld a, $1
 	ldh [rVBK], a
-	ld hl, LZ_1090a7
+	ld hl, MobileTradeAttrmapLZ
 	debgcoord 0, 0
 	call Decompress
-	ld hl, LZ_1090a7
+	ld hl, MobileTradeAttrmapLZ
 	debgcoord 0, 0, vBGMap1
 	call Decompress
 	ld a, $0
@@ -1729,197 +1729,35 @@
 	call FarCopyWRAM
 	ret
 
-LZ_108d27:
-INCBIN "gfx/unknown/108d27.2bpp.lz"
+MobileTradeSpritesGFX:
+INCBIN "gfx/mobile/mobile_trade_sprites.2bpp.lz"
 
-LZ_108da7:
-INCBIN "gfx/unknown/108da7.2bpp.lz"
+MobileTradeGFX:
+INCBIN "gfx/mobile/mobile_trade.2bpp.lz"
 
-LZ_108fe7:
-INCBIN "gfx/unknown/108fe7.tilemap.lz"
+MobileTradeTilemapLZ:
+INCBIN "gfx/mobile/mobile_trade.tilemap.lz"
 
-LZ_1090a7:
-INCBIN "gfx/unknown/1090a7.tilemap.lz"
+MobileTradeAttrmapLZ:
+INCBIN "gfx/mobile/mobile_trade.attrmap.lz"
 
-Palette_1090f7:
-; unused
-	RGB 31, 31, 31
-	RGB 00, 00, 00
+UnusedMobilePulsePalettes:
+INCLUDE "gfx/mobile/unused_mobile_pulses.pal"
 
-	RGB 31, 00, 25
-	RGB 00, 00, 00
+MobileTradeBGPalettes:
+INCLUDE "gfx/mobile/mobile_trade_bg.pal"
 
-	RGB 31, 31, 31
-	RGB 00, 00, 00
+MobileTradeOB1Palettes:
+INCLUDE "gfx/mobile/mobile_trade_ob1.pal"
 
-	RGB 09, 19, 31
-	RGB 00, 00, 00
+MobileTradeOB2Palettes:
+INCLUDE "gfx/mobile/mobile_trade_ob2.pal"
 
-Palette_109107:
-	RGB 18, 31, 15
-	RGB 20, 20, 20
-	RGB 11, 11, 11
-	RGB 00, 00, 00
+MobileCable1GFX:
+INCBIN "gfx/mobile/mobile_cable_1.2bpp"
 
-	RGB 31, 15,  1
-	RGB 14, 14, 31
-	RGB 12, 09, 31
-	RGB 00, 00, 00
+MobileCable2GFX:
+INCBIN "gfx/mobile/mobile_cable_2.2bpp"
 
-	RGB 18, 31, 15
-	RGB 14, 14, 31
-	RGB 12, 09, 31
-	RGB 00, 00, 00
-
-	RGB 18, 31, 15
-	RGB 20, 20, 20
-	RGB 11, 11, 11
-	RGB 00, 00, 00
-
-	RGB 18, 31, 15
-	RGB 31, 07, 09
-	RGB 18, 00, 01
-	RGB 00, 00, 00
-
-	RGB 18, 31, 15
-	RGB 20, 20, 20
-	RGB 11, 11, 11
-	RGB 00, 00, 00
-
-	RGB 31, 15,  1
-	RGB 18, 00, 30
-	RGB 09, 00, 17
-	RGB 00, 00, 00
-
-	RGB 18, 31, 15
-	RGB 18, 00, 30
-	RGB 09, 00, 17
-	RGB 00, 00, 00
-
-Palette_109147:
-	RGB 31, 31, 31
-	RGB 31, 31, 12
-	RGB 31, 13, 12
-	RGB 00, 00, 00
-
-	RGB 31, 31, 31
-	RGB 31, 23, 15
-	RGB 31, 18, 07
-	RGB 31, 15, 00
-
-	RGB 31, 31, 31
-	RGB 20, 20, 20
-	RGB 11, 11, 11
-	RGB 00, 00, 00
-
-	RGB 31, 31, 31
-	RGB 31, 00, 25
-	RGB 31, 00, 25
-	RGB 00, 00, 00
-
-	RGB 31, 31, 31
-	RGB 09, 19, 31
-	RGB 09, 19, 31
-	RGB 00, 00, 00
-
-	RGB 31, 31, 31
-	RGB 00, 00, 00
-	RGB 00, 00, 00
-	RGB 00, 00, 00
-
-	RGB 31, 31, 31
-	RGB 00, 00, 00
-	RGB 00, 00, 00
-	RGB 00, 00, 00
-
-	RGB 31, 31, 31
-	RGB 00, 00, 00
-	RGB 00, 00, 00
-	RGB 00, 00, 00
-
-Palette_109187:
-	RGB 31, 31, 31
-	RGB 31, 31, 12
-	RGB 31, 13, 12
-	RGB 00, 00, 00
-
-	RGB 31, 31, 31
-	RGB 31, 23, 15
-	RGB 31, 18, 07
-	RGB 31, 15, 00
-
-	RGB 31, 31, 31
-	RGB 20, 20, 20
-	RGB 11, 11, 11
-	RGB 00, 00, 00
-
-	RGB 31, 31, 31
-	RGB 09, 19, 31
-	RGB 09, 19, 31
-	RGB 00, 00, 00
-
-	RGB 31, 31, 31
-	RGB 31, 00, 25
-	RGB 31, 00, 25
-	RGB 00, 00, 00
-
-	RGB 31, 31, 31
-	RGB 00, 00, 00
-	RGB 00, 00, 00
-	RGB 00, 00, 00
-
-	RGB 31, 31, 31
-	RGB 00, 00, 00
-	RGB 00, 00, 00
-	RGB 00, 00, 00
-
-	RGB 31, 31, 31
-	RGB 00, 00, 00
-	RGB 00, 00, 00
-	RGB 00, 00, 00
-
-GFX_1091c7:
-INCBIN "gfx/unknown/1091c7.2bpp"
-GFX_1092c7:
-INCBIN "gfx/unknown/1092c7.2bpp"
-
 MobileAdapterPalettes:
-	RGB 18, 31, 15
-	RGB 04, 13, 31
-	RGB 00, 00, 31
-	RGB 00, 00, 00
-
-	RGB 18, 31, 15
-	RGB 31, 31, 00
-	RGB 31, 15, 00
-	RGB 00, 00, 00
-
-	RGB 18, 31, 15
-	RGB 09, 24, 00
-	RGB 02, 16, 00
-	RGB 00, 00, 00
-
-	RGB 18, 31, 15
-	RGB 31, 07, 09
-	RGB 18, 00, 01
-	RGB 00, 00, 00
-
-	RGB 18, 31, 15
-	RGB 28, 05, 31
-	RGB 17, 00, 17
-	RGB 00, 00, 00
-
-	RGB 18, 31, 15
-	RGB 09, 09, 09
-	RGB 04, 04, 04
-	RGB 00, 00, 00
-
-	RGB 18, 31, 15
-	RGB 31, 13, 21
-	RGB 27, 07, 12
-	RGB 00, 00, 00
-
-	RGB 18, 31, 15
-	RGB 21, 20, 20
-	RGB 14, 14, 31
-	RGB 00, 00, 00
+INCLUDE "gfx/mobile/mobile_adapters.pal"
--- a/mobile/mobile_45_2.asm
+++ b/mobile/mobile_45_2.asm
@@ -1358,46 +1358,12 @@
 	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
+PichuBorderMobileOBPalettes:
+INCLUDE "gfx/mobile/pichu_border_ob.pal"
 
-Palette_11734e:
-	RGB 31, 30, 30
-	RGB  2,  0,  0
-	RGB 10,  9,  9
-	RGB 15, 14, 14
+PichuBorderMobileBGPalettes:
+INCLUDE "gfx/mobile/pichu_border_bg.pal"
 
-Unknown_117356:
-INCBIN "gfx/unknown/117356.tilemap"
-INCBIN "gfx/unknown/1174d6.attrmap"
+PichuBorderMobileTilemapAttrmap:
+INCBIN "gfx/mobile/pichu_border.tilemap"
+INCBIN "gfx/mobile/pichu_border.attrmap"
--- a/mobile/mobile_45_sprite_engine.asm
+++ b/mobile/mobile_45_sprite_engine.asm
@@ -1,7 +1,7 @@
 Function115d99:
-	ld de, GFX_11601a
+	ld de, MobileDialingGFX
 	ld hl, vTiles0 tile $60
-	lb bc, BANK(GFX_11601a), 20
+	lb bc, BANK(MobileDialingGFX), 20
 	call Get2bpp
 	xor a
 	ld [wc305], a
@@ -307,13 +307,13 @@
 	dsprite   2, 0,   0, 0, $62, $01
 	dsprite   2, 0,   1, 0, $63, $01
 
-GFX_11601a::
-INCBIN "gfx/unknown/11601a.2bpp"
+MobileDialingGFX::
+INCBIN "gfx/mobile/dialing.2bpp"
 
 Function11615a:
 	xor a
 	ld [wc30d], a
-	ld [$c319], a
+	ld [wc319], a
 	ld [wc310], a
 	ld [wc311], a
 	ld [wc312], a
@@ -341,7 +341,7 @@
 	ld a, [wc30d]
 	and a
 	ret z
-	ld a, [$c319]
+	ld a, [wc319]
 	cp $2
 	jr c, .asm_1161b4
 	ld a, $a0
@@ -354,7 +354,7 @@
 	ret
 
 Function1161b8:
-	ld a, [$c319]
+	ld a, [wc319]
 	ld e, a
 	ld d, 0
 	ld hl, .Jumptable
@@ -381,9 +381,9 @@
 	ld a, $6
 	ldh [rSVBK], a
 
-	ld hl, Unknown_117356
+	ld hl, PichuBorderMobileTilemapAttrmap
 	ld de, wDecompressScratch
-	ld bc, $0300
+	ld bc, 32 * 12 * 2
 	call CopyBytes
 
 	di
@@ -479,9 +479,9 @@
 	ld [wMusicFadeID], a
 	ld a, d
 	ld [wMusicFadeID + 1], a
-	ld a, [$c319]
+	ld a, [wc319]
 	inc a
-	ld [$c319], a
+	ld [wc319], a
 	ret
 
 MenuHeader_11628c:
@@ -492,18 +492,18 @@
 
 Function116294:
 	farcall Function170d02
-	ld a, [$c319]
+	ld a, [wc319]
 	inc a
-	ld [$c319], a
+	ld [wc319], a
 	ldh a, [rSVBK]
 	push af
 	ld a, $5
 	ldh [rSVBK], a
 	ld hl, wBGPals1 palette 6
-	ld de, $c320
+	ld de, wc320
 	ld bc, 2 palettes
 	call CopyBytes
-	ld hl, Palette_11734e
+	ld hl, PichuBorderMobileBGPalettes
 	ld de, wBGPals1 palette 7
 	ld bc, 1 palettes
 	call CopyBytes
@@ -516,14 +516,14 @@
 
 Function1162cb:
 	farcall Function170cc6
-	ld a, [$c319]
+	ld a, [wc319]
 	inc a
-	ld [$c319], a
+	ld [wc319], a
 	ldh a, [rSVBK]
 	push af
 	ld a, $5
 	ldh [rSVBK], a
-	ld hl, Palette_11730e
+	ld hl, PichuBorderMobileOBPalettes
 	ld de, wOBPals1 + 2 palettes
 	ld bc, 6 palettes
 	call CopyBytes
@@ -654,7 +654,7 @@
 	xor a
 	ld [wMusicFadeID + 1], a
 	xor a
-	ld [$c319], a
+	ld [wc319], a
 	ld [wc30d], a
 	ret
 
@@ -711,7 +711,7 @@
 
 .asm_116439
 	xor a
-	ld [$c319], a
+	ld [wc319], a
 	ld [wc30d], a
 	ret
 
@@ -727,7 +727,7 @@
 	xor a
 	ld [wMusicFadeID + 1], a
 	xor a
-	ld [$c319], a
+	ld [wc319], a
 	ld [wc30d], a
 	ret
 
--- a/mobile/mobile_46.asm
+++ b/mobile/mobile_46.asm
@@ -183,7 +183,7 @@
 	ld a, [wcd38]
 	and a
 	ret z
-	ld a, BANK(s5_a89c) ; and BANK(s5_a8b2)
+	ld a, BANK(s5_a89c) ; aka BANK(s5_a8b2)
 	call GetSRAMBank
 	ld hl, wcd69
 	ld de, s5_a89c
--- a/mobile/mobile_5b.asm
+++ b/mobile/mobile_5b.asm
@@ -173,7 +173,7 @@
 
 .LoadPals:
 	ld de, wBGPals1
-	ld hl, UnknownMobilePalettes_16c903
+	ld hl, MobileSplashScreenPalettes
 	ld bc, 8
 	ld a, $5
 	call FarCopyWRAM
@@ -211,8 +211,8 @@
 .Attrmap:
 INCBIN "gfx/mobile/mobile_splash.attrmap"
 
-UnknownMobilePalettes_16c903:
-INCLUDE "gfx/unknown/16c903.pal"
+MobileSplashScreenPalettes:
+INCLUDE "gfx/mobile/mobile_splash.pal"
 
 Function16c943:
 	ld a, [wd003]
@@ -237,7 +237,7 @@
 	ld e, $0
 	ld a, $0
 .asm_16c969
-	ld hl, UnknownMobilePalettes_16c903
+	ld hl, MobileSplashScreenPalettes
 	call Function16cab6
 	call Function16cabb
 	ld d, a
@@ -260,7 +260,7 @@
 	call Function16cadc
 
 .asm_16c991
-	ld hl, UnknownMobilePalettes_16c903
+	ld hl, MobileSplashScreenPalettes
 	call Function16cab6
 	call Function16cad8
 	ld d, a
@@ -283,7 +283,7 @@
 	call Function16cb08
 
 .asm_16c9b9
-	ld hl, UnknownMobilePalettes_16c903
+	ld hl, MobileSplashScreenPalettes
 	call Function16cab6
 	call Function16cac4
 	ld d, a
@@ -669,8 +669,8 @@
 
 Function16cc18:
 	ld hl, vTiles1
-	ld de, GFX_16cca3
-	lb bc, BANK(GFX_16cca3), 46
+	ld de, MobileAdapterCheckGFX
+	lb bc, BANK(MobileAdapterCheckGFX), 46
 	call Get2bpp
 	ret
 
@@ -754,8 +754,8 @@
 	jr nz, .asm_16cc93
 	ret
 
-GFX_16cca3:
-INCBIN "gfx/unknown/16cca3.2bpp"
+MobileAdapterCheckGFX:
+INCBIN "gfx/mobile/mobile_splash_check.2bpp"
 
 Unknown_16cfa3:
 	RGB 31, 31, 31
--- a/mobile/mobile_5c.asm
+++ b/mobile/mobile_5c.asm
@@ -278,9 +278,9 @@
 Function170d02:
 	ld a, $1
 	ldh [rVBK], a
-	ld de, GFX_171848
+	ld de, PichuBorderMobileGFX
 	ld hl, vTiles0 tile $c1
-	lb bc, BANK(GFX_171848), 24
+	lb bc, BANK(PichuBorderMobileGFX), 24
 	call Get2bpp
 	xor a
 	ldh [rVBK], a
@@ -292,8 +292,8 @@
 ElectroBallMobileGFX:
 INCBIN "gfx/mobile/electro_ball.2bpp.lz"
 
-GFX_171848:
-INCBIN "gfx/unknown/171848.2bpp"
+PichuBorderMobileGFX:
+INCBIN "gfx/mobile/pichu_border.2bpp"
 
 Function1719c8:
 	ldh a, [hInMenu]
@@ -659,19 +659,19 @@
 
 Function171c87:
 	call DisableLCD
-	ld hl, GFX_171db1
+	ld hl, AsciiFontGFX
 	ld de, vTiles2 tile $00
 	ld bc, $6e0
 	call CopyBytes
-	ld hl, LZ_172abd
+	ld hl, PasswordSlowpokeLZ
 	ld de, vTiles0 tile $00
 	call Decompress
 	call EnableLCD
-	ld hl, Tilemap_172491
+	ld hl, PasswordTopTilemap
 	decoord 0, 0
 	ld bc, $168
 	call CopyBytes
-	ld hl, Attrmap_1727ed
+	ld hl, MobilePasswordAttrmap
 	decoord 0, 0, wAttrmap
 	ld bc, $168
 	call CopyBytes
@@ -688,7 +688,7 @@
 	push af
 	ld a, $5
 	ldh [rSVBK], a
-	ld hl, Palette_171d71
+	ld hl, MobilePasswordPalettes
 	ld de, wBGPals1
 	ld bc, 8 palettes
 	call CopyBytes
@@ -711,8 +711,8 @@
 	xor $1
 	ld [wcd4b], a
 	and a
-	jr nz, .asm_171d16
-	ld hl, Tilemap_17251d
+	jr nz, .shifted
+	ld hl, PasswordBottomTilemap
 	decoord 0, 7
 	ld bc, $8c
 	call CopyBytes
@@ -720,8 +720,8 @@
 	ld de, String_172e3f
 	jp PlaceString
 
-.asm_171d16
-	ld hl, Tilemap_1725f9
+.shifted
+	ld hl, PasswordShiftTilemap
 	decoord 0, 7
 	ld bc, $8c
 	call CopyBytes
@@ -731,19 +731,19 @@
 
 Function171d2b:
 	call DisableLCD
-	ld hl, GFX_171db1
+	ld hl, AsciiFontGFX
 	ld de, vTiles2 tile $00
 	ld bc, $6e0
 	call CopyBytes
-	ld hl, LZ_172abd
+	ld hl, PasswordSlowpokeLZ
 	ld de, vTiles0 tile $00
 	call Decompress
 	call EnableLCD
-	ld hl, Tilemap_172685
+	ld hl, ChooseMobileCenterTilemap
 	decoord 0, 0
 	ld bc, $168
 	call CopyBytes
-	ld hl, Attrmap_172955
+	ld hl, ChooseMobileCenterAttrmap
 	decoord 0, 0, wAttrmap
 	ld bc, $168
 	call CopyBytes
@@ -755,57 +755,31 @@
 	call PlaceString
 	ret
 
-Palette_171d71:
-	RGB  0,  0,  0
-	RGB  3,  0,  0
-	RGB  5,  0,  0
-	RGB 31, 31, 29
-	RGB  0,  2, 10
-	RGB  2, 10, 21
-	RGB  0,  0,  0
-	RGB 10, 26, 31
-	RGB  0,  0,  0
-	RGB  0,  7,  8
-	RGB 31,  8,  0
-	RGB  1, 17, 15
-	RGB 31, 16,  0
-	RGB 31, 22,  0
-	RGB 31, 27,  0
-	RGB 31, 31,  0
-	RGB 31, 18,  6
-	RGB  0,  3,  0
-	RGB  0,  9,  0
-	RGB  0, 12,  0
-	RGB  0, 16,  0
-	RGB  0, 22,  0
-	RGB  0, 25,  0
-	RGB  0, 27,  0
-	RGB  5,  5, 16
-	RGB  8, 19, 28
-	RGB  0,  0,  0
-	RGB 31, 31, 31
-	RGB 31, 31, 29
-	RGB 21, 21, 20
-	RGB 11, 11, 10
-	RGB  0,  0,  0
+MobilePasswordPalettes:
+INCLUDE "gfx/mobile/mobile_password.pal"
 
-GFX_171db1:
+AsciiFontGFX:
 INCBIN "gfx/mobile/ascii_font.2bpp"
 
-Tilemap_172491:
-INCBIN "gfx/unknown/172491.tilemap"
-Tilemap_17251d:
-INCBIN "gfx/unknown/17251d.tilemap"
-Tilemap_1725f9:
-INCBIN "gfx/unknown/1725f9.tilemap"
-Tilemap_172685:
-INCBIN "gfx/unknown/172685.tilemap"
-Attrmap_1727ed:
-INCBIN "gfx/unknown/1727ed.attrmap"
-Attrmap_172955:
-INCBIN "gfx/unknown/172955.attrmap"
+PasswordTopTilemap:
+INCBIN "gfx/mobile/password_top.tilemap"
 
-LZ_172abd:
+PasswordBottomTilemap:
+INCBIN "gfx/mobile/password_bottom.tilemap"
+
+PasswordShiftTilemap:
+INCBIN "gfx/mobile/password_shift.tilemap"
+
+ChooseMobileCenterTilemap:
+INCBIN "gfx/mobile/mobile_center.tilemap"
+
+MobilePasswordAttrmap:
+INCBIN "gfx/mobile/password.attrmap"
+
+ChooseMobileCenterAttrmap:
+INCBIN "gfx/mobile/mobile_center.attrmap"
+
+PasswordSlowpokeLZ:
 INCBIN "gfx/pokedex/slowpoke.2bpp.lz"
 
 String_172e31:
@@ -830,16 +804,16 @@
 	ld bc, $168
 	call ByteFill
 	call DisableLCD
-	ld hl, GameBoyN64GFX
+	ld hl, Stadium2N64GFX
 	ld de, vTiles2 tile $00
 	ld bc, $610
 	call CopyBytes
 	call EnableLCD
-	ld hl, Tilemap_1733af
+	ld hl, Stadium2N64Tilemap
 	decoord 0, 0
 	ld bc, $168
 	call CopyBytes
-	ld hl, Attrmap_173517
+	ld hl, Stadium2N64Attrmap
 	decoord 0, 0, wAttrmap
 	ld bc, $168
 	call CopyBytes
@@ -897,15 +871,17 @@
 	RGB  0,  0,  0
 	RGB  0,  0,  0
 
-GameBoyN64GFX:
-INCBIN "gfx/trade/game_boy_n64.2bpp"
+Stadium2N64GFX:
+INCBIN "gfx/mobile/stadium2_n64.2bpp"
 
-Tilemap_1733af:
+Stadium2N64Tilemap:
 if DEF(_CRYSTAL11)
-INCBIN "gfx/unknown/1733af_corrupt.tilemap"
+; Crystal 1.1 corrupted this tilemap by treating $0a bytes as Unix newlines,
+; and converting them to $0d $0a Windows newlines.
+INCBIN "gfx/mobile/stadium2_n64_corrupt.tilemap"
 else
-INCBIN "gfx/unknown/1733af.tilemap"
+INCBIN "gfx/mobile/stadium2_n64.tilemap"
 endc
 
-Attrmap_173517:
-INCBIN "gfx/unknown/173517.attrmap"
+Stadium2N64Attrmap:
+INCBIN "gfx/mobile/stadium2_n64.attrmap"
--- a/mobile/mobile_5e.asm
+++ b/mobile/mobile_5e.asm
@@ -1,6 +1,24 @@
-MobileAdapterGFX::
-INCBIN "gfx/mobile/mobile_adapter.2bpp"
+MobileCardGFX::
+INCBIN "gfx/mobile/card.2bpp"
 
+ChrisSilhouetteGFX::
+INCBIN "gfx/mobile/chris_silhouette.2bpp"
+
+KrisSilhouetteGFX::
+INCBIN "gfx/mobile/kris_silhouette.2bpp"
+
+MobileCard2GFX::
+INCBIN "gfx/mobile/card_2.2bpp"
+
+CardLargeSpriteGFX::
+INCBIN "gfx/mobile/card_large_sprite.2bpp"
+
+CardFolderGFX::
+INCBIN "gfx/mobile/card_folder.2bpp"
+
+CardSpriteGFX::
+INCBIN "gfx/mobile/card_sprite.2bpp"
+
 Function17a68f::
 	call Function17a6a8
 	call Function17a751
@@ -730,8 +748,8 @@
 	ldh [rVBK], a
 
 	ld hl, vTiles5 tile $00
-	ld de, GFX_17afa5
-	lb bc, BANK(GFX_17afa5), $80
+	ld de, DialpadGFX
+	lb bc, BANK(DialpadGFX), $80 ; includes first 4 tiles of DialpadCursorGFX
 	call Get2bpp
 
 	pop af
@@ -738,13 +756,13 @@
 	ldh [rVBK], a
 
 	ld hl, vTiles0 tile $00
-	ld de, GFX_17afa5 + $4c0
-	lb bc, BANK(GFX_17afa5), 5
+	ld de, DialpadCursorGFX
+	lb bc, BANK(DialpadCursorGFX), 5
 	call Get2bpp
 
 	ld hl, vTiles0 tile $05
-	ld de, GFX_11601a
-	lb bc, BANK(GFX_11601a), 4
+	ld de, MobileDialingGFX
+	lb bc, BANK(MobileDialingGFX), 4
 	call Get2bpp
 	ret
 
@@ -764,7 +782,7 @@
 	ld bc, 8 palettes
 	call CopyBytes
 
-	ld hl, GFX_17afa5 + $510
+	ld hl, Palette_17b4b5
 	ld de, wOBPals1 palette 1
 	ld bc, 2 palettes
 	call CopyBytes
@@ -789,7 +807,7 @@
 	ret
 
 Function17ac1d:
-	ld hl, Tilemap_17acd5
+	ld hl, DialpadTilemap
 	decoord 0, 4
 	ld bc, (SCREEN_HEIGHT - 4) * SCREEN_WIDTH
 	call CopyBytes
@@ -796,7 +814,7 @@
 	ret
 
 Function17ac2a:
-	ld hl, Tilemap_17ae3d
+	ld hl, DialpadAttrmap
 	decoord 0, 4, wAttrmap
 	ld bc, (SCREEN_HEIGHT - 4) * SCREEN_WIDTH
 	call CopyBytes
@@ -905,11 +923,21 @@
 	RGB 27, 31,  0
 	RGB 31, 31,  0
 
-Tilemap_17acd5:
-INCBIN "gfx/unknown/17acd5.tilemap"
+DialpadTilemap:
+INCBIN "gfx/mobile/dialpad.tilemap"
 
-Tilemap_17ae3d:
-INCBIN "gfx/unknown/17ae3d.tilemap"
+DialpadAttrmap:
+INCBIN "gfx/mobile/dialpad.attrmap"
 
-GFX_17afa5::
-INCBIN "gfx/unknown/17afa5.2bpp"
+DialpadGFX:
+INCBIN "gfx/mobile/dialpad.2bpp"
+
+DialpadCursorGFX:
+INCBIN "gfx/mobile/dialpad_cursor.2bpp"
+
+Palette_17b4b5:
+	RGB  2,  6, 10
+	RGB 24, 30, 29
+
+MobileCardListGFX::
+INCBIN "gfx/mobile/card_list.2bpp"
--- a/mobile/mobile_5f.asm
+++ b/mobile/mobile_5f.asm
@@ -625,7 +625,7 @@
 	call CopyBytes
 	xor a
 	ldh [rVBK], a
-	ld hl, GFX_17eb7e
+	ld hl, PostalMarkGFX
 	ld de, vTiles2 tile $60
 	ld bc, 1 tiles
 	call CopyBytes
@@ -677,7 +677,7 @@
 	push af
 	ld a, $5
 	ldh [rSVBK], a
-	ld hl, Palette_17eff6
+	ld hl, PokemonNewsPalettes
 	ld de, wBGPals1
 	ld bc, 8 palettes
 	call CopyBytes
@@ -712,7 +712,7 @@
 	dw Function17e427
 
 Function17d48d:
-	ld hl, Palette_17eff6
+	ld hl, PokemonNewsPalettes
 	ld de, wc608
 	ld bc, $40
 	call CopyBytes
@@ -2870,9 +2870,9 @@
 	xor a
 	ld [wcf66], a
 	farcall Function118233
-	ld de, GFX_17eb7e
+	ld de, PostalMarkGFX
 	ld hl, vTiles2 tile $60
-	lb bc, BANK(GFX_17eb7e), 1
+	lb bc, BANK(PostalMarkGFX), 1
 	call Get2bpp
 	ld a, [wMobileErrorCodeBuffer]
 	and a
@@ -3530,45 +3530,14 @@
 PokemonNewsGFX:
 INCBIN "gfx/mobile/pokemon_news.2bpp"
 
-GFX_17eb7e:
-INCBIN "gfx/unknown/17eb7e.2bpp"
+PostalMarkGFX:
+INCBIN "gfx/font/postal_mark.2bpp"
 
 PokemonNewsTileAttrmap:
 INCBIN "gfx/mobile/pokemon_news.bin"
 
-Palette_17eff6:
-	RGB 24,  9,  8
-	RGB  4,  9, 18
-	RGB 18, 18, 12
-	RGB  0,  0,  0
-	RGB 24, 24, 18
-	RGB 18, 18, 12
-	RGB  4,  9, 18
-	RGB  0,  0,  0
-	RGB 31, 31, 31
-	RGB 23, 11, 10
-	RGB 13,  6,  5
-	RGB  0,  0,  0
-	RGB 31, 31, 31
-	RGB 15, 25,  5
-	RGB 10, 20,  0
-	RGB  0,  0,  0
-	RGB 31, 31, 31
-	RGB 20, 28, 20
-	RGB 10, 18, 15
-	RGB  0,  0,  0
-	RGB 31, 31, 31
-	RGB 22, 22, 12
-	RGB 17, 12,  5
-	RGB  0,  0,  0
-	RGB  5,  5, 16
-	RGB  8, 19, 28
-	RGB  0,  0,  0
-	RGB 31, 31, 31
-	RGB 31, 31, 31
-	RGB 27, 24,  0
-	RGB 24, 16,  3
-	RGB  0,  0,  0
+PokemonNewsPalettes:
+INCLUDE "gfx/mobile/pokemon_news.pal"
 
 RunMobileScript::
 	ld a, $6
--- a/mobile/mobile_menu.asm
+++ b/mobile/mobile_menu.asm
@@ -600,9 +600,9 @@
 	ret
 
 Function4a485:
-	ld de, GFX_49c0c
+	ld de, MobileMenuGFX
 	ld hl, vTiles2 tile $00
-	lb bc, BANK(GFX_49c0c), 13
+	lb bc, BANK(MobileMenuGFX), 13
 	call Get2bpp
 	ret