shithub: pokecrystal

Download patch

ref: 9dcdad5e60fbc10ba81ae127743c78a6b00d3dd5
parent: a2b6befd7d12b2ad8bb97979a10519500dcdd870
author: Rangi <remy.oukaour+rangi42@gmail.com>
date: Mon Oct 26 11:45:57 EDT 2020

Comment, remove, or revise many unreferenced labels

--- a/audio/cries.asm
+++ b/audio/cries.asm
@@ -464,7 +464,7 @@
 	square_note 8, 15, 1, 1824
 	sound_ret
 
-Cry_Sentret_Ch8:
+Cry_Sentret_Ch8: ; unreferenced
 	noise_note 8, 3, -3, 0
 	noise_note 8, 9, 2, 0
 	sound_ret
@@ -1082,7 +1082,7 @@
 	channel 6, Cry_Weepinbell_Ch6
 	channel 8, Cry_Weepinbell_Ch8
 
-Cry_Unused_Ch5:
+Cry_Unused_Ch5: ; unreferenced
 	duty_cycle_pattern 3, 3, 0, 0
 	square_note 15, 14, 0, 1920
 	square_note 15, 15, 0, 1924
@@ -1092,7 +1092,7 @@
 	square_note 8, 7, 1, 1924
 	sound_ret
 
-Cry_Unused_Ch6:
+Cry_Unused_Ch6: ; unreferenced
 	duty_cycle_pattern 0, 0, 1, 1
 	square_note 15, 10, 0, 1857
 	square_note 15, 11, 0, 1859
@@ -1102,7 +1102,7 @@
 	square_note 8, 3, 1, 1862
 	sound_ret
 
-Cry_Unused_Ch8:
+Cry_Unused_Ch8: ; unreferenced
 	noise_note 2, 15, 2, 76
 	noise_note 6, 14, 0, 58
 	noise_note 15, 13, 0, 58
--- a/audio/engine.asm
+++ b/audio/engine.asm
@@ -38,15 +38,16 @@
 	dec e
 	jr nz, .clearsound
 
-	ld hl, wChannels ; start of channel data
-	ld de, wChannelsEnd - wChannels ; length of area to clear (entire sound wram area)
-.clearchannels
+	ld hl, wAudio
+	ld de, wAudioEnd - wAudio
+.clearaudio
 	xor a
 	ld [hli], a
 	dec de
 	ld a, e
 	or d
-	jr nz, .clearchannels
+	jr nz, .clearaudio
+
 	ld a, MAX_VOLUME
 	ld [wVolume], a
 	call MusicOn
--- a/audio/music/magnettrain.asm
+++ b/audio/music/magnettrain.asm
@@ -246,7 +246,7 @@
 	drum_note 12, 16
 	sound_ret
 
-.sub1: ; unused
+.sub1: ; unreferenced
 	drum_note 9, 1
 	drum_note 8, 1
 	drum_note 8, 1
--- a/audio/sfx.asm
+++ b/audio/sfx.asm
@@ -21,7 +21,7 @@
 Sfx_ReadText:
 Sfx_ReadText2:
 	channel_count 1
-	channel 5, Sfx_ReadText2_Ch5
+	channel 5, Sfx_ReadText_Ch5 ; aka Sfx_ReadText2_Ch5
 
 Sfx_Poison:
 	channel_count 1
@@ -486,10 +486,10 @@
 Sfx_LevelUp:
 Sfx_DexFanfare5079:
 	channel_count 4
-	channel 5, Sfx_LevelUp_Ch5
-	channel 6, Sfx_LevelUp_Ch6
-	channel 7, Sfx_LevelUp_Ch7
-	channel 8, Sfx_LevelUp_Ch8
+	channel 5, Sfx_LevelUp_Ch5 ; aka Sfx_DexFanfare5079_Ch5
+	channel 6, Sfx_LevelUp_Ch6 ; aka Sfx_DexFanfare5079_Ch6
+	channel 7, Sfx_LevelUp_Ch7 ; aka Sfx_DexFanfare5079_Ch7
+	channel 8, Sfx_LevelUp_Ch8 ; aka Sfx_DexFanfare5079_Ch8
 
 Sfx_LevelUp_Ch5:
 Sfx_DexFanfare5079_Ch5:
@@ -942,7 +942,7 @@
 	channel 6, Sfx_Fanfare2_Ch6
 	channel 8, Sfx_Fanfare2_Ch8
 
-Sfx_Unused:
+Sfx_Unused: ; unreferenced
 	channel_count 4
 	channel 5, Sfx_Unused_Ch5
 	channel 6, Sfx_Unused_Ch6
--- a/audio/sfx_pointers.asm
+++ b/audio/sfx_pointers.asm
@@ -144,7 +144,7 @@
 	dba Sfx_MilkDrink
 	dba Sfx_Present
 	dba Sfx_MorningSun
-	dba Sfx_LevelUp
+	dba Sfx_LevelUp ; aka Sfx_DexFanfare5079
 	dba Sfx_KeyItem
 	dba Sfx_Fanfare2
 	dba Sfx_RegisterPhoneNumber
--- a/constants/map_constants.asm
+++ b/constants/map_constants.asm
@@ -1,5 +1,5 @@
 newgroup: MACRO
-const_value = const_value + 1
+	const_skip
 __map_value__ = 1
 ENDM
 
--- a/constants/map_data_constants.asm
+++ b/constants/map_data_constants.asm
@@ -66,7 +66,7 @@
 	shift_const NORTH
 
 ; SpawnPoints indexes (see data/maps/spawn_points.asm)
-const_value = -1
+	const_def -1
 	const SPAWN_N_A
 	const SPAWN_HOME
 	const SPAWN_DEBUG
--- a/constants/pokemon_data_constants.asm
+++ b/constants/pokemon_data_constants.asm
@@ -179,7 +179,7 @@
 	const TREEMON_SCORE_RARE ; 2
 
 ; ChangeHappiness arguments (see data/happiness_changes.asm)
-const_value = 1
+	const_def 1
 	const HAPPINESS_GAINLEVEL         ; 01
 	const HAPPINESS_USEDITEM          ; 02
 	const HAPPINESS_USEDXITEM         ; 03
--- a/constants/trainer_constants.asm
+++ b/constants/trainer_constants.asm
@@ -3,7 +3,7 @@
 trainerclass: MACRO
 \1 EQU __trainer_class__
 __trainer_class__ = __trainer_class__ + 1
-const_value = 1
+	const_def 1
 ENDM
 
 ; trainer class ids
--- a/data/battle_tower/parties.asm
+++ b/data/battle_tower/parties.asm
@@ -1,7 +1,7 @@
 BattleTowerMons:
-; 10 groups of 21 mons.
+; 10 groups (one per floor level) of 21 mons (BATTLETOWER_NUM_UNIQUE_MON).
 
-BattleTowerMons1:
+; BattleTowerMons group 1
 
 	db JOLTEON
 	db MIRACLEBERRY
@@ -550,7 +550,7 @@
 	db "BARIYA-DO@@"
 
 
-BattleTowerMons2:
+; BattleTowerMons group 2
 
 	db UMBREON
 	db LEFTOVERS
@@ -1099,7 +1099,7 @@
 	db "NUO-@@@@@@@"
 
 
-BattleTowerMons3:
+; BattleTowerMons group 3
 
 	db JOLTEON
 	db MIRACLEBERRY
@@ -1648,7 +1648,7 @@
 	db "OKORIZARU@@"
 
 
-BattleTowerMons4:
+; BattleTowerMons group 4
 
 	db TAUROS
 	db GOLD_BERRY
@@ -2197,7 +2197,7 @@
 	db "EREBU-@@@@@"
 
 
-BattleTowerMons5:
+; BattleTowerMons group 5
 
 	db KINGDRA
 	db GOLD_BERRY
@@ -2746,7 +2746,7 @@
 	db "HURI-ZA-@@@"
 
 
-BattleTowerMons6:
+; BattleTowerMons group 6
 
 	db KINGDRA
 	db LEFTOVERS
@@ -3295,7 +3295,7 @@
 	db "GORO-NIya@@"
 
 
-BattleTowerMons7:
+; BattleTowerMons group 7
 
 	db JOLTEON
 	db MIRACLEBERRY
@@ -3844,7 +3844,7 @@
 	db "KAMEtuKUSU@"
 
 
-BattleTowerMons8:
+; BattleTowerMons group 8
 
 	db JOLTEON
 	db MIRACLEBERRY
@@ -4393,7 +4393,7 @@
 	db "GURANBURU@@"
 
 
-BattleTowerMons9:
+; BattleTowerMons group 9
 
 	db UMBREON
 	db KINGS_ROCK
@@ -4942,7 +4942,7 @@
 	db "BETOBETON@@"
 
 
-BattleTowerMons10:
+; BattleTowerMons group 10
 
 	db HOUNDOOM
 	db MINT_BERRY
--- a/data/battle_tower/unknown.asm
+++ b/data/battle_tower/unknown.asm
@@ -1,8 +1,8 @@
-BattleTowerTrainerData:: ; What exactly it is, I don't know
-; Size is 70 (Nr of Trainers in BattleTower) * 0x24 (Nr of Bytes that are copied)
+BattleTowerTrainerData:: ; ???
+; 70 tables (BATTLETOWER_NUM_UNIQUE_TRAINERS) of 18 two-argument entries (total size BATTLETOWER_TRAINERDATALENGTH).
 ; Second argument points to an entry in Unknown_170470, to which the first argument is compared.
 
-BattleTowerTrainer1DataTable:
+; BattleTowerTrainerData table 1:
 	db $37,  3
 	db $0e,  9
 	db $25, 11
@@ -22,7 +22,7 @@
 	db $34,  3
 	db $06,  5
 
-BattleTowerTrainer2DataTable:
+; BattleTowerTrainerData table 2:
 	db $36,  3
 	db $ca,  0
 	db $22,  8
@@ -42,7 +42,7 @@
 	db $28, 11
 	db $0c, 13
 
-BattleTowerTrainer3DataTable:
+; BattleTowerTrainerData table 3:
 	db $32,  6
 	db $31,  4
 	db $02,  2
@@ -62,7 +62,7 @@
 	db $22,  2
 	db $13, 13
 
-BattleTowerTrainer4DataTable:
+; BattleTowerTrainerData table 4:
 	db $22, 12
 	db $22, 12
 	db $0a,  9
@@ -82,7 +82,7 @@
 	db $1c, 11
 	db $41, 11
 
-BattleTowerTrainer5DataTable:
+; BattleTowerTrainerData table 5:
 	db $a3,  0
 	db $41,  3
 	db $1f,  4
@@ -102,7 +102,7 @@
 	db $d1,  0
 	db $0a,  6
 
-BattleTowerTrainer6DataTable:
+; BattleTowerTrainerData table 6:
 	db $13,  2
 	db $31,  6
 	db $04,  2
@@ -122,7 +122,7 @@
 	db $08,  5
 	db $1a, 13
 
-BattleTowerTrainer7DataTable:
+; BattleTowerTrainerData table 7:
 	db $0d,  2
 	db $07,  2
 	db $00,  5
@@ -142,7 +142,7 @@
 	db $20,  4
 	db $23, 13
 
-BattleTowerTrainer8DataTable:
+; BattleTowerTrainerData table 8:
 	db $1e,  2
 	db $22,  2
 	db $00,  5
@@ -162,7 +162,7 @@
 	db $14,  8
 	db $00,  5
 
-BattleTowerTrainer9DataTable:
+; BattleTowerTrainerData table 9:
 	db $06, 12
 	db $09,  6
 	db $00,  0
@@ -182,7 +182,7 @@
 	db $31, 13
 	db $01,  5
 
-BattleTowerTrainer10DataTable:
+; BattleTowerTrainerData table 10:
 	db $22, 12
 	db $30,  4
 	db $01,  5
@@ -202,7 +202,7 @@
 	db $30, 13
 	db $06,  5
 
-BattleTowerTrainer11DataTable:
+; BattleTowerTrainerData table 11:
 	db $0e,  6
 	db $04,  5
 	db $2c,  4
@@ -222,7 +222,7 @@
 	db $26, 13
 	db $04,  5
 
-BattleTowerTrainer12DataTable:
+; BattleTowerTrainerData table 12:
 	db $18,  2
 	db $33,  3
 	db $28,  4
@@ -242,7 +242,7 @@
 	db $0f,  2
 	db $00,  5
 
-BattleTowerTrainer13DataTable:
+; BattleTowerTrainerData table 13:
 	db $3a, 11
 	db $3a, 11
 	db $00,  5
@@ -262,7 +262,7 @@
 	db $3a,  8
 	db $2a, 13
 
-BattleTowerTrainer14DataTable:
+; BattleTowerTrainerData table 14:
 	db $31,  5
 	db $11, 14
 	db $30,  4
@@ -282,7 +282,7 @@
 	db $3b,  7
 	db $0e, 13
 
-BattleTowerTrainer15DataTable:
+; BattleTowerTrainerData table 15:
 	db $1b,  2
 	db $2c,  4
 	db $0d, 13
@@ -302,7 +302,7 @@
 	db $06,  5
 	db $00,  0
 
-BattleTowerTrainer16DataTable:
+; BattleTowerTrainerData table 16:
 	db $42,  3
 	db $30,  4
 	db $1f, 11
@@ -322,7 +322,7 @@
 	db $36,  8
 	db $41, 13
 
-BattleTowerTrainer17DataTable:
+; BattleTowerTrainerData table 17:
 	db $18,  3
 	db $42,  3
 	db $43,  4
@@ -342,7 +342,7 @@
 	db $3f,  4
 	db $20, 14
 
-BattleTowerTrainer18DataTable:
+; BattleTowerTrainerData table 18:
 	db $0c,  5
 	db $36,  7
 	db $30,  4
@@ -362,7 +362,7 @@
 	db $30,  7
 	db $06,  5
 
-BattleTowerTrainer19DataTable:
+; BattleTowerTrainerData table 19:
 	db $36,  3
 	db $06,  6
 	db $44,  4
@@ -382,7 +382,7 @@
 	db $05, 13
 	db $00,  0
 
-BattleTowerTrainer20DataTable:
+; BattleTowerTrainerData table 20:
 	db $3f,  6
 	db $2c,  4
 	db $34, 13
@@ -402,7 +402,7 @@
 	db $34,  7
 	db $04, 13
 
-BattleTowerTrainer21DataTable:
+; BattleTowerTrainerData table 21:
 	db $12,  3
 	db $02,  4
 	db $07,  7
@@ -422,7 +422,7 @@
 	db $28, 11
 	db $02,  5
 
-BattleTowerTrainer22DataTable:
+; BattleTowerTrainerData table 22:
 	db $41,  4
 	db $3c, 11
 	db $34, 13
@@ -442,7 +442,7 @@
 	db $0c,  4
 	db $3b, 13
 
-BattleTowerTrainer23DataTable:
+; BattleTowerTrainerData table 23:
 	db $03, 10
 	db $3a, 13
 	db $2c,  4
@@ -462,7 +462,7 @@
 	db $13,  4
 	db $04,  5
 
-BattleTowerTrainer24DataTable:
+; BattleTowerTrainerData table 24:
 	db $06,  5
 	db $06,  5
 	db $06,  5
@@ -482,7 +482,7 @@
 	db $33,  4
 	db $03,  5
 
-BattleTowerTrainer25DataTable:
+; BattleTowerTrainerData table 25:
 	db $27,  5
 	db $01,  5
 	db $00,  0
@@ -502,7 +502,7 @@
 	db $0c,  4
 	db $19, 13
 
-BattleTowerTrainer26DataTable:
+; BattleTowerTrainerData table 26:
 	db $03,  2
 	db $43,  3
 	db $27,  4
@@ -522,7 +522,7 @@
 	db $20,  4
 	db $41, 13
 
-BattleTowerTrainer27DataTable:
+; BattleTowerTrainerData table 27:
 	db $34,  3
 	db $00,  3
 	db $11, 13
@@ -542,7 +542,7 @@
 	db $0d,  6
 	db $20,  6
 
-BattleTowerTrainer28DataTable:
+; BattleTowerTrainerData table 28:
 	db $19,  3
 	db $17, 11
 	db $20,  6
@@ -562,7 +562,7 @@
 	db $06, 12
 	db $1a, 11
 
-BattleTowerTrainer29DataTable:
+; BattleTowerTrainerData table 29:
 	db $0a,  3
 	db $0c, 12
 	db $25, 10
@@ -582,7 +582,7 @@
 	db $0a,  9
 	db $2f, 13
 
-BattleTowerTrainer30DataTable:
+; BattleTowerTrainerData table 30:
 	db $15,  2
 	db $2c,  4
 	db $03,  2
@@ -602,7 +602,7 @@
 	db $0c,  4
 	db $3b, 13
 
-BattleTowerTrainer31DataTable:
+; BattleTowerTrainerData table 31:
 	db $10, 11
 	db $04,  4
 	db $00,  5
@@ -622,7 +622,7 @@
 	db $13,  7
 	db $16, 13
 
-BattleTowerTrainer32DataTable:
+; BattleTowerTrainerData table 32:
 	db $0f, 14
 	db $19, 13
 	db $00,  5
@@ -642,7 +642,7 @@
 	db $19, 13
 	db $01,  5
 
-BattleTowerTrainer33DataTable:
+; BattleTowerTrainerData table 33:
 	db $35,  3
 	db $06,  4
 	db $0d,  6
@@ -662,7 +662,7 @@
 	db $29,  8
 	db $03,  5
 
-BattleTowerTrainer34DataTable:
+; BattleTowerTrainerData table 34:
 	db $18,  4
 	db $03,  5
 	db $0b, 13
@@ -682,7 +682,7 @@
 	db $0c,  6
 	db $1a, 13
 
-BattleTowerTrainer35DataTable:
+; BattleTowerTrainerData table 35:
 	db $0c, 12
 	db $37,  3
 	db $1a,  3
@@ -702,7 +702,7 @@
 	db $3b,  8
 	db $1b,  7
 
-BattleTowerTrainer36DataTable:
+; BattleTowerTrainerData table 36:
 	db $18,  3
 	db $1b,  8
 	db $29, 11
@@ -722,7 +722,7 @@
 	db $2f,  8
 	db $27,  6
 
-BattleTowerTrainer37DataTable:
+; BattleTowerTrainerData table 37:
 	db $1c,  3
 	db $02, 14
 	db $31,  3
@@ -742,7 +742,7 @@
 	db $27,  4
 	db $34, 13
 
-BattleTowerTrainer38DataTable:
+; BattleTowerTrainerData table 38:
 	db $33,  3
 	db $30,  4
 	db $2c,  4
@@ -762,7 +762,7 @@
 	db $40,  6
 	db $22,  7
 
-BattleTowerTrainer39DataTable:
+; BattleTowerTrainerData table 39:
 	db $22, 12
 	db $22, 12
 	db $16, 10
@@ -782,7 +782,7 @@
 	db $2c,  4
 	db $26,  7
 
-BattleTowerTrainer40DataTable:
+; BattleTowerTrainerData table 40:
 	db $0e,  6
 	db $05,  8
 	db $04, 13
@@ -802,7 +802,7 @@
 	db $00,  0
 	db $00,  0
 
-BattleTowerTrainer41DataTable:
+; BattleTowerTrainerData table 41:
 	db $18,  3
 	db $27,  3
 	db $03,  5
@@ -822,7 +822,7 @@
 	db $2f,  8
 	db $06,  5
 
-BattleTowerTrainer42DataTable:
+; BattleTowerTrainerData table 42:
 	db $36,  3
 	db $30,  4
 	db $17,  4
@@ -842,7 +842,7 @@
 	db $07, 13
 	db $3b, 13
 
-BattleTowerTrainer43DataTable:
+; BattleTowerTrainerData table 43:
 	db $0b,  5
 	db $14,  6
 	db $24,  4
@@ -862,7 +862,7 @@
 	db $00,  2
 	db $07,  5
 
-BattleTowerTrainer44DataTable:
+; BattleTowerTrainerData table 44:
 	db $0a,  3
 	db $32,  7
 	db $0b, 14
@@ -882,7 +882,7 @@
 	db $1e,  6
 	db $14,  7
 
-BattleTowerTrainer45DataTable:
+; BattleTowerTrainerData table 45:
 	db $0e,  6
 	db $2c,  4
 	db $00, 13
@@ -902,7 +902,7 @@
 	db $31,  4
 	db $21, 13
 
-BattleTowerTrainer46DataTable:
+; BattleTowerTrainerData table 46:
 	db $22,  5
 	db $07, 14
 	db $30,  4
@@ -922,7 +922,7 @@
 	db $3f,  4
 	db $06,  5
 
-BattleTowerTrainer47DataTable:
+; BattleTowerTrainerData table 47:
 	db $3a,  7
 	db $3b,  7
 	db $36,  3
@@ -942,7 +942,7 @@
 	db $3f,  4
 	db $0c, 13
 
-BattleTowerTrainer48DataTable:
+; BattleTowerTrainerData table 48:
 	db $43,  3
 	db $20,  4
 	db $41, 13
@@ -962,7 +962,7 @@
 	db $39,  4
 	db $41, 13
 
-BattleTowerTrainer49DataTable:
+; BattleTowerTrainerData table 49:
 	db $36,  3
 	db $16,  4
 	db $08,  6
@@ -982,7 +982,7 @@
 	db $2c, 13
 	db $00,  5
 
-BattleTowerTrainer50DataTable:
+; BattleTowerTrainerData table 50:
 	db $11,  5
 	db $25,  3
 	db $33,  4
@@ -1002,7 +1002,7 @@
 	db $19, 13
 	db $06,  5
 
-BattleTowerTrainer51DataTable:
+; BattleTowerTrainerData table 51:
 	db $2c,  4
 	db $0a, 13
 	db $04,  5
@@ -1022,7 +1022,7 @@
 	db $29,  8
 	db $05, 13
 
-BattleTowerTrainer52DataTable:
+; BattleTowerTrainerData table 52:
 	db $05,  3
 	db $1b,  4
 	db $41,  3
@@ -1042,7 +1042,7 @@
 	db $1d, 11
 	db $03,  5
 
-BattleTowerTrainer53DataTable:
+; BattleTowerTrainerData table 53:
 	db $1c, 12
 	db $20,  6
 	db $05,  8
@@ -1062,7 +1062,7 @@
 	db $06,  5
 	db $1f,  8
 
-BattleTowerTrainer54DataTable:
+; BattleTowerTrainerData table 54:
 	db $37,  3
 	db $0e,  1
 	db $08,  1
@@ -1082,7 +1082,7 @@
 	db $41,  8
 	db $3b, 13
 
-BattleTowerTrainer55DataTable:
+; BattleTowerTrainerData table 55:
 	db $06,  2
 	db $00,  5
 	db $34,  3
@@ -1102,7 +1102,7 @@
 	db $1b,  4
 	db $0c, 13
 
-BattleTowerTrainer56DataTable:
+; BattleTowerTrainerData table 56:
 	db $2c,  4
 	db $13,  9
 	db $20,  6
@@ -1122,7 +1122,7 @@
 	db $06, 13
 	db $3b, 13
 
-BattleTowerTrainer57DataTable:
+; BattleTowerTrainerData table 57:
 	db $06,  3
 	db $20,  4
 	db $24, 13
@@ -1142,7 +1142,7 @@
 	db $09,  6
 	db $06,  5
 
-BattleTowerTrainer58DataTable:
+; BattleTowerTrainerData table 58:
 	db $44,  7
 	db $23, 11
 	db $33, 13
@@ -1162,7 +1162,7 @@
 	db $11,  8
 	db $41, 13
 
-BattleTowerTrainer59DataTable:
+; BattleTowerTrainerData table 59:
 	db $36,  3
 	db $06,  6
 	db $30,  4
@@ -1182,7 +1182,7 @@
 	db $0b,  6
 	db $27,  6
 
-BattleTowerTrainer60DataTable:
+; BattleTowerTrainerData table 60:
 	db $14,  5
 	db $04,  2
 	db $09, 14
@@ -1202,7 +1202,7 @@
 	db $39,  4
 	db $00,  5
 
-BattleTowerTrainer61DataTable:
+; BattleTowerTrainerData table 61:
 	db $34,  3
 	db $00,  3
 	db $11, 13
@@ -1222,7 +1222,7 @@
 	db $1e,  6
 	db $14, 13
 
-BattleTowerTrainer62DataTable:
+; BattleTowerTrainerData table 62:
 	db $37,  5
 	db $37,  5
 	db $00,  5
@@ -1242,7 +1242,7 @@
 	db $16,  5
 	db $01,  5
 
-BattleTowerTrainer63DataTable:
+; BattleTowerTrainerData table 63:
 	db $1f, 14
 	db $36,  4
 	db $40, 13
@@ -1262,7 +1262,7 @@
 	db $27, 13
 	db $00,  0
 
-BattleTowerTrainer64DataTable:
+; BattleTowerTrainerData table 64:
 	db $41,  8
 	db $0b,  6
 	db $37,  3
@@ -1282,7 +1282,7 @@
 	db $28,  6
 	db $06,  5
 
-BattleTowerTrainer65DataTable:
+; BattleTowerTrainerData table 65:
 	db $0c,  8
 	db $2c,  4
 	db $1c, 11
@@ -1302,7 +1302,7 @@
 	db $20,  6
 	db $22,  7
 
-BattleTowerTrainer66DataTable:
+; BattleTowerTrainerData table 66:
 	db $22, 12
 	db $22, 12
 	db $0a,  9
@@ -1322,7 +1322,7 @@
 	db $02,  7
 	db $04,  5
 
-BattleTowerTrainer67DataTable:
+; BattleTowerTrainerData table 67:
 	db $2d, 11
 	db $02,  8
 	db $37, 13
@@ -1342,7 +1342,7 @@
 	db $10,  5
 	db $04,  5
 
-BattleTowerTrainer68DataTable:
+; BattleTowerTrainerData table 68:
 	db $3f,  3
 	db $16, 14
 	db $3f,  8
@@ -1362,7 +1362,7 @@
 	db $26,  7
 	db $03,  5
 
-BattleTowerTrainer69DataTable:
+; BattleTowerTrainerData table 69:
 	db $3a,  6
 	db $2c,  3
 	db $12,  3
@@ -1382,7 +1382,7 @@
 	db $1b,  7
 	db $00,  5
 
-BattleTowerTrainer70DataTable:
+; BattleTowerTrainerData table 70:
 	db $1b,  2
 	db $00,  5
 	db $0c,  8
@@ -1401,4 +1401,3 @@
 	db $22,  7
 	db $d1,  0
 	db $32, 13
-BattleTowerTrainerDataEnd:
--- a/data/decorations/decorations.asm
+++ b/data/decorations/decorations.asm
@@ -48,7 +48,8 @@
 	db DECO_BIG_SNORLAX_DOLL ; 1a
 	db DECO_BIG_ONIX_DOLL ; 1b
 	db DECO_BIG_LAPRAS_DOLL ; 1c
-TrophyIDs:
+
 	db DECO_GOLD_TROPHY_DOLL ; 33
 	db DECO_SILVER_TROPHY_DOLL ; 34
-	db -1
+
+	db -1 ; end
--- a/data/maps/blocks.asm
+++ b/data/maps/blocks.asm
@@ -15,7 +15,7 @@
 Route28_Blocks:
 	INCBIN "maps/Route28.blk"
 
-BetaPlayersHouse2F_Blocks:
+BetaPlayersHouse2F_Blocks: ; unreferenced
 	INCBIN "maps/unused/BetaPlayersHouse2F.blk"
 
 CeladonCity_Blocks:
@@ -30,25 +30,25 @@
 ElmsHouse_Blocks:
 	INCBIN "maps/ElmsHouse.blk"
 
-BetaSproutTower1_Blocks:
+BetaSproutTower1_Blocks: ; unreferenced
 	INCBIN "maps/unused/BetaSproutTower1.blk"
 
 Route11_Blocks:
 	INCBIN "maps/Route11.blk"
 
-BetaSproutTower5_Blocks:
+BetaSproutTower5_Blocks: ; unreferenced
 	INCBIN "maps/unused/BetaSproutTower5.blk"
 
 Route15_Blocks:
 	INCBIN "maps/Route15.blk"
 
-BetaSproutTower9_Blocks:
+BetaSproutTower9_Blocks: ; unreferenced
 	INCBIN "maps/unused/BetaSproutTower9.blk"
 
 Route19_Blocks:
 	INCBIN "maps/Route19.blk"
 
-BetaBlackthornCity_Blocks:
+BetaBlackthornCity_Blocks: ; unreferenced
 	INCBIN "maps/unused/BetaBlackthornCity.blk"
 
 Route10South_Blocks:
@@ -94,7 +94,7 @@
 Route24_Blocks:
 	INCBIN "maps/Route24.blk"
 
-BetaVioletCity_Blocks:
+BetaVioletCity_Blocks: ; unreferenced
 	INCBIN "maps/unused/BetaVioletCity.blk"
 
 Route3_Blocks:
@@ -103,25 +103,25 @@
 PewterCity_Blocks:
 	INCBIN "maps/PewterCity.blk"
 
-BetaSilverCaveOutside_Blocks:
+BetaSilverCaveOutside_Blocks: ; unreferenced
 	INCBIN "maps/unused/BetaSilverCaveOutside.blk"
 
-BetaSproutTower2_Blocks:
+BetaSproutTower2_Blocks: ; unreferenced
 	INCBIN "maps/unused/BetaSproutTower2.blk"
 
 Route12_Blocks:
 	INCBIN "maps/Route12.blk"
 
-BetaGoldenrodCity_Blocks:
+BetaGoldenrodCity_Blocks: ; unreferenced
 	INCBIN "maps/unused/BetaGoldenrodCity.blk"
 
 Route20_Blocks:
 	INCBIN "maps/Route20.blk"
 
-BetaSproutTower6_Blocks:
+BetaSproutTower6_Blocks: ; unreferenced
 	INCBIN "maps/unused/BetaSproutTower6.blk"
 
-BetaPokecenter_Blocks:
+BetaPokecenter_Blocks: ; unreferenced
 	INCBIN "maps/unused/BetaPokecenter.blk"
 
 Route30_Blocks:
@@ -145,7 +145,7 @@
 Route38_Blocks:
 	INCBIN "maps/Route38.blk"
 
-BetaCianwoodCity_Blocks:
+BetaCianwoodCity_Blocks: ; unreferenced
 	INCBIN "maps/unused/BetaCianwoodCity.blk"
 
 OlivineTimsHouse_Blocks:
@@ -214,10 +214,10 @@
 Route5SaffronGate_Blocks:
 	INCBIN "maps/NorthSouthGate.blk"
 
-BetaEcruteakCity_Blocks:
+BetaEcruteakCity_Blocks: ; unreferenced
 	INCBIN "maps/unused/BetaEcruteakCity.blk"
 
-BetaCherrygroveCity_Blocks:
+BetaCherrygroveCity_Blocks: ; unreferenced
 	INCBIN "maps/unused/BetaCherrygroveCity.blk"
 
 CinnabarIsland_Blocks:
@@ -229,7 +229,7 @@
 Route8_Blocks:
 	INCBIN "maps/Route8.blk"
 
-BetaSproutTower3_Blocks:
+BetaSproutTower3_Blocks: ; unreferenced
 	INCBIN "maps/unused/BetaSproutTower3.blk"
 
 ViridianCity_Blocks:
@@ -241,13 +241,13 @@
 Route21_Blocks:
 	INCBIN "maps/Route21.blk"
 
-BetaSproutTower7_Blocks:
+BetaSproutTower7_Blocks: ; unreferenced
 	INCBIN "maps/unused/BetaSproutTower7.blk"
 
 Route17_Blocks:
 	INCBIN "maps/Route17.blk"
 
-BetaMahoganyTown_Blocks:
+BetaMahoganyTown_Blocks: ; unreferenced
 	INCBIN "maps/unused/BetaMahoganyTown.blk"
 
 Route31_Blocks:
@@ -280,16 +280,16 @@
 Route31VioletGate_Blocks:
 	INCBIN "maps/EastWestGate.blk"
 
-BetaAzaleaTown_Blocks:
+BetaAzaleaTown_Blocks: ; unreferenced
 	INCBIN "maps/unused/BetaAzaleaTown.blk"
 
 VermilionCity_Blocks:
 	INCBIN "maps/VermilionCity.blk"
 
-BetaOlivineCity_Blocks:
+BetaOlivineCity_Blocks: ; unreferenced
 	INCBIN "maps/unused/BetaOlivineCity.blk"
 
-BetaNewBarkTown_Blocks:
+BetaNewBarkTown_Blocks: ; unreferenced
 	INCBIN "maps/unused/BetaNewBarkTown.blk"
 
 ElmsLab_Blocks:
@@ -316,7 +316,7 @@
 Route14_Blocks:
 	INCBIN "maps/Route14.blk"
 
-BetaSproutTower8_Blocks:
+BetaSproutTower8_Blocks: ; unreferenced
 	INCBIN "maps/unused/BetaSproutTower8.blk"
 
 OlivineMart_Blocks:
@@ -337,7 +337,7 @@
 Route10North_Blocks:
 	INCBIN "maps/Route10North.blk"
 
-BetaLakeOfRage_Blocks:
+BetaLakeOfRage_Blocks: ; unreferenced
 	INCBIN "maps/unused/BetaLakeOfRage.blk"
 
 OlivinePokecenter1F_Blocks:
@@ -363,25 +363,25 @@
 CherrygrovePokecenter1F_Blocks:
 	INCBIN "maps/Pokecenter1F.blk"
 
-BetaPewterMuseumOfScience1F_Blocks:
+BetaPewterMuseumOfScience1F_Blocks: ; unreferenced
 	INCBIN "maps/unused/BetaPewterMuseumOfScience1F.blk"
 
-BetaPewterMuseumOfScience2F_Blocks:
+BetaPewterMuseumOfScience2F_Blocks: ; unreferenced
 	INCBIN "maps/unused/BetaPewterMuseumOfScience2F.blk"
 
 EarlsPokemonAcademy_Blocks:
 	INCBIN "maps/EarlsPokemonAcademy.blk"
 
-BetaCinnabarPokemonLabHallway_Blocks:
+BetaCinnabarPokemonLabHallway_Blocks: ; unreferenced
 	INCBIN "maps/unused/BetaCinnabarPokemonLabHallway.blk"
 
-BetaCinnabarPokemonLabRoom1_Blocks:
+BetaCinnabarPokemonLabRoom1_Blocks: ; unreferenced
 	INCBIN "maps/unused/BetaCinnabarPokemonLabRoom1.blk"
 
-BetaCinnabarPokemonLabRoom2_Blocks:
+BetaCinnabarPokemonLabRoom2_Blocks: ; unreferenced
 	INCBIN "maps/unused/BetaCinnabarPokemonLabRoom2.blk"
 
-BetaCinnabarPokemonLabRoom3_Blocks:
+BetaCinnabarPokemonLabRoom3_Blocks: ; unreferenced
 	INCBIN "maps/unused/BetaCinnabarPokemonLabRoom3.blk"
 
 GoldenrodDeptStore1F_Blocks:
@@ -424,7 +424,7 @@
 CeladonMansionRoof_Blocks:
 	INCBIN "maps/CeladonMansionRoof.blk"
 
-BetaHouse_Blocks:
+BetaHouse_Blocks: ; unreferenced
 	INCBIN "maps/unused/BetaHouse.blk"
 
 CeladonGameCorner_Blocks:
@@ -446,7 +446,7 @@
 VioletKylesHouse_Blocks:
 	INCBIN "maps/House2.blk"
 
-BetaUnionCave_Blocks:
+BetaUnionCave_Blocks: ; unreferenced
 	INCBIN "maps/unused/BetaUnionCave.blk"
 
 UnionCaveB1F_Blocks:
@@ -466,7 +466,7 @@
 Route6UndergroundPathEntrance_Blocks:
 	INCBIN "maps/UndergroundPathEntrance.blk"
 
-BetaCapsuleHouse_Blocks:
+BetaCapsuleHouse_Blocks: ; unreferenced
 	INCBIN "maps/unused/BetaCapsuleHouse.blk"
 
 KurtsHouse_Blocks:
@@ -478,7 +478,7 @@
 RuinsOfAlphOutside_Blocks:
 	INCBIN "maps/RuinsOfAlphOutside.blk"
 
-BetaRuinsOfAlphUnsolvedPuzzleRoom_Blocks:
+BetaRuinsOfAlphUnsolvedPuzzleRoom_Blocks: ; unreferenced
 	INCBIN "maps/unused/BetaRuinsOfAlphUnsolvedPuzzleRoom.blk"
 
 RuinsOfAlphInnerChamber_Blocks:
@@ -493,19 +493,19 @@
 SproutTower1F_Blocks:
 	INCBIN "maps/SproutTower1F.blk"
 
-BetaSproutTowerCutOut1_Blocks:
+BetaSproutTowerCutOut1_Blocks: ; unreferenced
 	INCBIN "maps/unused/BetaSproutTowerCutOut1.blk"
 
 SproutTower2F_Blocks:
 	INCBIN "maps/SproutTower2F.blk"
 
-BetaSproutTowerCutOut2_Blocks:
+BetaSproutTowerCutOut2_Blocks: ; unreferenced
 	INCBIN "maps/unused/BetaSproutTowerCutOut2.blk"
 
 SproutTower3F_Blocks:
 	INCBIN "maps/SproutTower3F.blk"
 
-BetaSproutTowerCutOut3_Blocks:
+BetaSproutTowerCutOut3_Blocks: ; unreferenced
 	INCBIN "maps/unused/BetaSproutTowerCutOut3.blk"
 
 RadioTower1F_Blocks:
@@ -583,7 +583,7 @@
 GoldenrodUndergroundWarehouse_Blocks:
 	INCBIN "maps/GoldenrodUndergroundWarehouse.blk"
 
-BetaElevator_Blocks:
+BetaElevator_Blocks: ; unreferenced
 	INCBIN "maps/unused/BetaElevator.blk"
 
 TinTower1F_Blocks:
@@ -622,7 +622,7 @@
 BurnedTowerB1F_Blocks:
 	INCBIN "maps/BurnedTowerB1F.blk"
 
-BetaCaveTestMap_Blocks:
+BetaCaveTestMap_Blocks: ; unreferenced
 	INCBIN "maps/unused/BetaCaveTestMap.blk"
 
 MountMortar1FOutside_Blocks:
@@ -685,16 +685,16 @@
 SilverCaveRoom3_Blocks:
 	INCBIN "maps/SilverCaveRoom3.blk"
 
-BetaRocketHideoutB2F_Blocks:
+BetaRocketHideoutB2F_Blocks: ; unreferenced
 	INCBIN "maps/unused/BetaRocketHideoutB2F.blk"
 
-BetaRocketHideoutB1F_Blocks:
+BetaRocketHideoutB1F_Blocks: ; unreferenced
 	INCBIN "maps/unused/BetaRocketHideoutB1F.blk"
 
-BetaRocketHideout1F_Blocks:
+BetaRocketHideout1F_Blocks: ; unreferenced
 	INCBIN "maps/unused/BetaRocketHideout1F.blk"
 
-BetaRocketHideoutB3F_Blocks:
+BetaRocketHideoutB3F_Blocks: ; unreferenced
 	INCBIN "maps/unused/BetaRocketHideoutB3F.blk"
 
 MahoganyMart1F_Blocks:
@@ -710,7 +710,7 @@
 TeamRocketBaseB3F_Blocks:
 	INCBIN "maps/TeamRocketBaseB3F.blk"
 
-BetaRoute23_Blocks:
+BetaRoute23_Blocks: ; unreferenced
 	INCBIN "maps/unused/BetaRoute23.blk"
 
 IndigoPlateauPokecenter1F_Blocks:
@@ -746,7 +746,7 @@
 OlivineGym_Blocks:
 	INCBIN "maps/OlivineGym.blk"
 
-BetaUnknownGym_Blocks:
+BetaUnknownGym_Blocks: ; unreferenced
 	INCBIN "maps/unused/BetaUnknownGym.blk"
 
 CianwoodGym_Blocks:
@@ -779,7 +779,7 @@
 
 SECTION "Map Blocks 3", ROMX
 
-BetaSlowpokeWell1F_Blocks:
+BetaSlowpokeWell1F_Blocks: ; unreferenced
 	INCBIN "maps/unused/BetaSlowpokeWell1F.blk"
 
 SlowpokeWellB1F_Blocks:
@@ -824,7 +824,7 @@
 FastShipB1F_Blocks:
 	INCBIN "maps/FastShipB1F.blk"
 
-BetaFastShipInsideCutOut_Blocks:
+BetaFastShipInsideCutOut_Blocks: ; unreferenced
 	INCBIN "maps/unused/BetaFastShipInsideCutOut.blk"
 
 FastShipCabins_NNW_NNE_NE_Blocks:
@@ -913,13 +913,13 @@
 CeladonGym_Blocks:
 	INCBIN "maps/CeladonGym.blk"
 
-BetaCeladonMansion1F_Blocks:
+BetaCeladonMansion1F_Blocks: ; unreferenced
 	INCBIN "maps/unused/BetaCeladonMansion1F.blk"
 
 CeladonCafe_Blocks:
 	INCBIN "maps/CeladonCafe.blk"
 
-BetaCeladonMansion2F_Blocks:
+BetaCeladonMansion2F_Blocks: ; unreferenced
 	INCBIN "maps/unused/BetaCeladonMansion2F.blk"
 
 RockTunnel1F_Blocks:
@@ -1040,7 +1040,7 @@
 BattleTowerOutside_Blocks:
 	INCBIN "maps/BattleTowerOutside.blk"
 
-BetaBlank_Blocks:
+BetaBlank_Blocks: ; unreferenced
 	INCBIN "maps/unused/BetaBlank.blk"
 
 GoldenrodDeptStoreRoof_Blocks:
--- a/data/maps/landmarks.asm
+++ b/data/maps/landmarks.asm
@@ -128,7 +128,7 @@
 MtMortarName:        db "MT.MORTAR@"
 DragonsDenName:      db "DRAGON'S¯DEN@"
 IcePathName:         db "ICE PATH@"
-NotApplicableName:   db "N/A@" ; "オバケやしき" ("HAUNTED HOUSE") in Japanese
+NotApplicableName:   db "N/A@" ; unreferenced ; "オバケやしき" ("HAUNTED HOUSE") in Japanese
 PalletTownName:      db "PALLET TOWN@"
 ViridianCityName:    db "VIRIDIAN¯CITY@"
 PewterCityName:      db "PEWTER CITY@"
@@ -144,11 +144,11 @@
 MtMoonName:          db "MT.MOON@"
 RockTunnelName:      db "ROCK TUNNEL@"
 LavRadioTowerName:   db "LAV¯RADIO TOWER@"
-SilphCoName:         db "SILPH CO.@"
-SafariZoneName:      db "SAFARI ZONE@"
+SilphCoName:         db "SILPH CO.@" ; unreferenced
+SafariZoneName:      db "SAFARI ZONE@" ; unreferenced
 SeafoamIslandsName:  db "SEAFOAM¯ISLANDS@"
-PokemonMansionName:  db "#MON¯MANSION@"
-CeruleanCaveName:    db "CERULEAN¯CAVE@"
+PokemonMansionName:  db "#MON¯MANSION@" ; unreferenced
+CeruleanCaveName:    db "CERULEAN¯CAVE@" ; unreferenced
 Route1Name:          db "ROUTE 1@"
 Route2Name:          db "ROUTE 2@"
 Route3Name:          db "ROUTE 3@"
@@ -199,7 +199,7 @@
 IlexForestName:      db "ILEX¯FOREST@"
 BurnedTowerName:     db "BURNED¯TOWER@"
 FastShipName:        db "FAST SHIP@"
-ViridianForestName:  db "VIRIDIAN¯FOREST@"
+ViridianForestName:  db "VIRIDIAN¯FOREST@" ; unreferenced
 DiglettsCaveName:    db "DIGLETT'S¯CAVE@"
 TohjoFallsName:      db "TOHJO FALLS@"
 UndergroundName:     db "UNDERGROUND@"
--- a/data/moves/animations.asm
+++ b/data/moves/animations.asm
@@ -481,7 +481,7 @@
 
 BattleAnim_ReturnMon:
 	anim_sound 0, 0, SFX_BALL_POOF
-.anim:
+BattleAnimSub_Return:
 	anim_bgeffect ANIM_BG_RETURN_MON, $0, BG_EFFECT_USER, $0
 	anim_wait 32
 	anim_ret
@@ -1314,7 +1314,7 @@
 	anim_wait 24
 	anim_ret
 
-BattleAnim_Sonicboom_JP:
+BattleAnim_Sonicboom_JP: ; unreferenced
 	anim_2gfx ANIM_GFX_WHIP, ANIM_GFX_HIT
 .loop
 	anim_sound 3, 0, SFX_RAZOR_WIND
@@ -4106,7 +4106,7 @@
 	anim_1gfx ANIM_GFX_MISC
 	anim_obj ANIM_OBJ_BATON_PASS, 44, 104, $20
 	anim_sound 0, 0, SFX_BATON_PASS
-	anim_call BattleAnim_ReturnMon.anim
+	anim_call BattleAnimSub_Return
 	anim_wait 64
 	anim_ret
 
--- a/data/phone/text/elm.asm
+++ b/data/phone/text/elm.asm
@@ -197,7 +197,6 @@
 	para "See you later!"
 	done
 
-; unused
 ElmPhoneGotAholdOfSomethingNeatText:
 	text "Hello, <PLAY_G>?"
 	line "How's it going?"
--- a/data/phone/text/todd_overworld.asm
+++ b/data/phone/text/todd_overworld.asm
@@ -57,9 +57,8 @@
 	line "my #MON better!"
 	done
 
-UnusedText_0xa43ca:
-; This is unused; Todd says this during the department store sale,
-; but this is a duplicate of the actual string in the Route 34 scripts.
+ToddSaleText: ; unreferenced
+; This is a duplicate of CamperToddSaleText in maps/Route34.asm.
 	text "Shopping under the"
 	line "sky!"
 
--- a/data/text/battle.asm
+++ b/data/text/battle.asm
@@ -1102,7 +1102,7 @@
 	line "been canceled…"
 	prompt
 
-BattleText_0x8188e:
+BattleText_NoTimeLeftToday: ; unreferenced
 	text "There is no time"
 	line "left today!"
 	done
--- a/data/text/common_1.asm
+++ b/data/text/common_1.asm
@@ -463,7 +463,6 @@
 	text "."
 	done
 
-; unreferenced
 _MobilePlayersMonTradeText::
 	text_ram wPlayerTrademonSenderName
 	text "'s"
--- a/data/text/common_2.asm
+++ b/data/text/common_2.asm
@@ -263,12 +263,12 @@
 _MysteryGiftReceivedCardText::
 	text "Received"
 	line "@"
-	text_ram wc850
+	text_ram wMysteryGiftCardHolderName
 	text "'s CARD."
 	prompt
 
 _MysteryGiftListedCardText::
-	text_ram wc850
+	text_ram wMysteryGiftCardHolderName
 	text "'s CARD was"
 	line "listed as no.@"
 	text_decimal wDeciramBuffer, 1, 2
@@ -487,7 +487,6 @@
 	text "Not even a nibble!"
 	prompt
 
-; unreferenced
 _UnusedNothingHereText::
 	text "Looks like there's"
 	line "nothing here."
--- a/data/text/common_3.asm
+++ b/data/text/common_3.asm
@@ -620,7 +620,6 @@
 	line "See you around."
 	done
 
-; unreferenced
 _NothingToSellText::
 	text "You don't have"
 	line "anything to sell."
@@ -744,25 +743,21 @@
 	text "Clock time unknown"
 	done
 
-; unreferenced mobile
 _DeleteSavedLoginPasswordText::
 	text "Delete the saved"
 	line "LOG-IN PASSWORD?"
 	done
 
-; unreferenced mobile
 _DeletedTheLoginPasswordText::
 	text "Deleted the LOG-IN"
 	line "PASSWORD."
 	done
 
-; unreferenced mobile
 _MobilePickThreeMonForBattle::
 	text "Pick three #MON"
 	line "for battle."
 	prompt
 
-; unreferenced mobile
 _MobileUseTheseThreeMonText::
 	text_ram wMobileParticipant1Nickname
 	text ","
@@ -776,13 +771,11 @@
 	para "Use these three?"
 	done
 
-; unreferenced mobile
 _MobileOnlyThreeMonMayEnterText::
 	text "Only three #MON"
 	line "may enter."
 	prompt
 
-; unreferenced mobile
 _MobileCardFolderIntro1Text::
 	text "The CARD FOLDER"
 	line "stores your and"
@@ -800,7 +793,6 @@
 	para ""
 	done
 
-; unreferenced mobile
 _MobileCardFolderIntro2Text::
 	text "This is your CARD."
 
@@ -814,7 +806,6 @@
 	para ""
 	done
 
-; unreferenced mobile
 _MobileCardFolderIntro3Text::
 	text "If you have your"
 	line "friend's CARD, you"
@@ -829,7 +820,6 @@
 	para ""
 	done
 
-; unreferenced mobile
 _MobileCardFolderIntro4Text::
 	text "To safely store"
 	line "your collection of"
@@ -841,7 +831,6 @@
 	para ""
 	done
 
-; unreferenced mobile
 _MobileCardFolderAskDeleteText::
 	text "If the CARD FOLDER"
 	line "is deleted, all"
@@ -858,13 +847,11 @@
 	line "your CARD FOLDER?"
 	done
 
-; unreferenced mobile
 _MobileCardFolderDeleteAreYouSureText::
 	text "Are you sure you"
 	line "want to delete it?"
 	done
 
-; unreferenced mobile
 _MobileCardFolderDeletedText::
 	text "The CARD FOLDER"
 	line "has been deleted."
@@ -872,7 +859,6 @@
 	para ""
 	done
 
-; unreferenced mobile
 _MobileCardFolderAskOpenOldText::
 	text "There is an older"
 	line "CARD FOLDER from a"
@@ -882,13 +868,11 @@
 	line "open it?"
 	done
 
-; unreferenced mobile
 _MobileCardFolderAskDeleteOldText::
 	text "Delete the old"
 	line "CARD FOLDER?"
 	done
 
-; unreferenced mobile
 _MobileCardFolderFinishRegisteringCardsText::
 	text "Finish registering"
 	line "CARDS?"
--- a/data/text/unused_sweet_honey.asm
+++ b/data/text/unused_sweet_honey.asm
@@ -8,7 +8,7 @@
 ; Most of these texts seem to be associated with a single NPC.
 ; The last text is associated with a second NPC, probably a Butterfree.
 
-UnusedSweetHoneyText:
+UnusedSweetHoneyText: ; unreferenced
 	text "My #MON is an"
 	line "expert at collect-"
 	cont "ing SWEET HONEY."
@@ -17,7 +17,7 @@
 	line "with you."
 	done
 
-UnusedSweetHoneyBagFullText:
+UnusedSweetHoneyBagFullText: ; unreferenced
 	text "I want to give you"
 	line "some SWEET HONEY,"
 
@@ -25,17 +25,17 @@
 	line "room for it."
 	done
 
-UnusedSweetHoneyGiveText:
+UnusedSweetHoneyGiveText: ; unreferenced
 	text "Here you go! Have"
 	line "some SWEET HONEY!"
 	done
 
-UnusedGotSweetHoneyText:
+UnusedGotSweetHoneyText: ; unreferenced
 	text "<PLAYER> received"
 	line "SWEET HONEY."
 	done
 
-UnusedSweetHoneyAfterText1:
+UnusedSweetHoneyAfterText1: ; unreferenced
 	text "My little brother"
 	line "takes SWEET HONEY"
 
@@ -46,7 +46,7 @@
 	line "up to?"
 	done
 
-UnusedSweetHoneyAfterText2:
+UnusedSweetHoneyAfterText2: ; unreferenced
 	text "Did you put SWEET"
 	line "HONEY on a tree?"
 
@@ -54,7 +54,7 @@
 	line "it?"
 	done
 
-UnusedSweetHoneyAfterText3:
+UnusedSweetHoneyAfterText3: ; unreferenced
 	text "Did you put SWEET"
 	line "HONEY on a tree?"
 
@@ -63,6 +63,6 @@
 	cont "be drawn to it."
 	done
 
-UnusedSweetHoneyButterfreeText:
+UnusedSweetHoneyButterfreeText: ; unreferenced
 	text "BUTTERFREE: Freeh!"
 	done
--- a/engine/battle/ai/items.asm
+++ b/engine/battle/ai/items.asm
@@ -20,8 +20,9 @@
 	and a
 	jr nz, DontSwitch
 
+	; always load the first trainer class in wTrainerClass for Battle Tower trainers
 	ld hl, TrainerClassAttributes + TRNATTR_AI_ITEM_SWITCH
-	ld a, [wInBattleTowerBattle] ; always load the first trainer class in wTrainerClass for BattleTower-Trainers
+	ld a, [wInBattleTowerBattle]
 	and a
 	jr nz, .ok
 
@@ -29,6 +30,7 @@
 	dec a
 	ld bc, NUM_TRAINER_ATTRIBUTES
 	call AddNTimes
+
 .ok
 	bit SWITCH_OFTEN_F, [hl]
 	jp nz, SwitchOften
@@ -145,13 +147,13 @@
 	ld [wEnemySwitchMonIndex], a
 	jp AI_TrySwitch
 
-CheckSubstatusCantRun:
+CheckSubstatusCantRun: ; unreferenced
 	ld a, [wEnemySubStatus5]
 	bit SUBSTATUS_CANT_RUN, a
 	ret
 
 AI_TryItem:
-	; items are not allowed in the BattleTower
+	; items are not allowed in the Battle Tower
 	ld a, [wInBattleTowerBattle]
 	and a
 	ret nz
@@ -213,7 +215,7 @@
 	inc hl
 	jr c, .loop
 
-.used_item
+; used item
 	xor a
 	ld [de], a
 	inc a
@@ -259,7 +261,7 @@
 	cp e
 	jr nc, .yes
 
-.no
+.no ; unreferenced
 	and a
 	ret
 
--- a/engine/battle/battle_transition.asm
+++ b/engine/battle/battle_transition.asm
@@ -449,7 +449,7 @@
 	spin_quadrant LOWER_LEFT,  .wedge1,  1, 11
 	db -1
 
-.load
+.load:
 	ld a, [hli]
 	ld e, a
 	ld a, [hli]
--- a/engine/battle/core.asm
+++ b/engine/battle/core.asm
@@ -1697,7 +1697,7 @@
 	cp USING_EXTERNAL_CLOCK
 	jr z, .enemy_first
 
-.player_first
+; player first
 	call SetPlayerTurn
 	call .SandstormDamage
 	call SetEnemyTurn
@@ -2711,7 +2711,7 @@
 ForcePlayerMonChoice:
 	call EmptyBattleTextbox
 	call LoadStandardMenuHeader
-	call SetUpBattlePartyMenu_NoLoop
+	call SetUpBattlePartyMenu
 	call ForcePickPartyMonInBattle
 	ld a, [wLinkMode]
 	and a
@@ -2810,9 +2810,9 @@
 	cp LINK_MOBILE
 	ret
 
-SetUpBattlePartyMenu_NoLoop:
+SetUpBattlePartyMenu:
 	call ClearBGPalettes
-SetUpBattlePartyMenu: ; switch to fullscreen menu?
+SetUpBattlePartyMenu_Loop: ; switch to fullscreen menu?
 	farcall LoadPartyMenuGFX
 	farcall InitPartyMenuWithCancel
 	farcall InitPartyMenuBGPal7
@@ -3486,7 +3486,7 @@
 	ld a, [wMenuCursorY]
 	dec a
 	jr nz, .said_no
-	call SetUpBattlePartyMenu_NoLoop
+	call SetUpBattlePartyMenu
 	call PickSwitchMonInBattle
 	jr c, .canceled_switch
 	ld a, [wCurBattleMon]
@@ -5043,7 +5043,7 @@
 	call LoadStandardMenuHeader
 	call ClearBGPalettes
 BattleMenuPKMN_Loop:
-	call SetUpBattlePartyMenu
+	call SetUpBattlePartyMenu_Loop
 	xor a
 	ld [wPartyMenuActionText], a
 	call JumpToPartyMenuAndPrintText
@@ -8952,13 +8952,13 @@
 	ldh [rSVBK], a
 
 	ld hl, wDecompressScratch
-	ld bc, wScratchAttrmap - wDecompressScratch
+	ld bc, BG_MAP_WIDTH * BG_MAP_HEIGHT
 	ld a, " "
 	call ByteFill
 
 	ld de, wDecompressScratch
 	hlbgcoord 0, 0
-	lb bc, BANK(.BlankBGMap), $40
+	lb bc, BANK(@), (BG_MAP_WIDTH * BG_MAP_HEIGHT) / LEN_2BPP_TILE
 	call Request2bpp
 
 	pop af
--- a/engine/battle/effect_commands.asm
+++ b/engine/battle/effect_commands.asm
@@ -134,7 +134,7 @@
 	and a
 	jp nz, CheckEnemyTurn
 
-CheckPlayerTurn:
+; check player turn
 	ld hl, wPlayerSubStatus4
 	bit SUBSTATUS_RECHARGE, [hl]
 	jr z, .no_recharge
@@ -2586,7 +2586,7 @@
 	cp SPECIAL
 	jr nc, .special
 
-.physical
+; physical
 	ld hl, wEnemyMonDefense
 	ld a, [hli]
 	ld b, a
@@ -2826,9 +2826,9 @@
 
 	ld a, [hl]
 	cp SPECIAL
-	jr nc, .Special
+	jr nc, .special
 
-.physical
+; physical
 	ld hl, wBattleMonDefense
 	ld a, [hli]
 	ld b, a
@@ -2852,7 +2852,7 @@
 	ld hl, wEnemyAttack
 	jr .thickclub
 
-.Special:
+.special
 	ld hl, wBattleMonSpclDef
 	ld a, [hli]
 	ld b, a
@@ -6124,7 +6124,7 @@
 BattleCommand_ResetStats:
 ; resetstats
 
-	ld a, 7 ; neutral
+	ld a, BASE_STAT_LEVEL
 	ld hl, wPlayerStatLevels
 	call .Fill
 	ld hl, wEnemyStatLevels
@@ -6147,7 +6147,7 @@
 	jp StdBattleTextbox
 
 .Fill:
-	ld b, wPlayerStatLevelsEnd - wPlayerStatLevels
+	ld b, NUM_LEVEL_STATS
 .next
 	ld [hli], a
 	dec b
--- a/engine/battle/menu.asm
+++ b/engine/battle/menu.asm
@@ -9,8 +9,7 @@
 	call ExitMenu
 	ret
 
-SafariBattleMenu:
-; untranslated
+SafariBattleMenu: ; unreferenced
 	ld hl, SafariBattleMenuHeader
 	call LoadMenuHeader
 	jr CommonBattleMenu
@@ -18,7 +17,8 @@
 ContestBattleMenu:
 	ld hl, ContestBattleMenuHeader
 	call LoadMenuHeader
-; fallthrough
+	; fallthrough
+
 CommonBattleMenu:
 	ld a, [wBattleMenuCursorBuffer]
 	ld [wMenuCursorBuffer], a
--- a/engine/battle/move_effects/baton_pass.asm
+++ b/engine/battle/move_effects/baton_pass.asm
@@ -17,7 +17,7 @@
 
 ; Transition into switchmon menu
 	call LoadStandardMenuHeader
-	farcall SetUpBattlePartyMenu_NoLoop
+	farcall SetUpBattlePartyMenu
 
 	farcall ForcePickSwitchMonInBattle
 
--- a/engine/battle_anims/anim_commands.asm
+++ b/engine/battle_anims/anim_commands.asm
@@ -1050,7 +1050,7 @@
 	and a
 	jr z, .player
 
-	ld de, sScratch + $1a tiles
+	ld de, sScratch + (3 * 7 + 5) tiles
 	call CopyMinimizePic
 	ld hl, vTiles2 tile $00
 	ld de, sScratch
@@ -1058,7 +1058,7 @@
 	ret
 
 .player
-	ld de, sScratch + $160
+	ld de, sScratch + (3 * 6 + 4) tiles
 	call CopyMinimizePic
 	ld hl, vTiles2 tile $31
 	ld de, sScratch
--- a/engine/battle_anims/core.asm
+++ b/engine/battle_anims/core.asm
@@ -263,14 +263,12 @@
 	jr nz, .no_sub
 	ld a, [wFXAnimID]
 	cp KINESIS
-	jr z, .kinesis
+	jr z, .do_sub
 	cp SOFTBOILED
-	jr z, .softboiled
+	jr z, .do_sub
 	cp MILK_DRINK
 	jr nz, .no_sub
-.kinesis
-.softboiled
-.milk_drink
+.do_sub
 	pop af
 	sub 1 * 8
 	jr .done
--- a/engine/battle_anims/functions.asm
+++ b/engine/battle_anims/functions.asm
@@ -4299,7 +4299,7 @@
 	ld e, a
 	ret
 
-BattleAnim_AbsSinePrecise:
+BattleAnim_AbsSinePrecise: ; unreferenced
 	ld a, e
 	call BattleAnim_Sine
 	ld e, l
@@ -4306,7 +4306,7 @@
 	ld d, h
 	ret
 
-BattleAnim_AbsCosinePrecise:
+BattleAnim_AbsCosinePrecise: ; unreferenced
 	ld a, e
 	call BattleAnim_Cosine
 	ld e, l
--- a/engine/debug/color_picker.asm
+++ b/engine/debug/color_picker.asm
@@ -32,7 +32,7 @@
 	const DEBUGCOLORMAIN_INITTMHM       ; 4
 	const DEBUGCOLORMAIN_TMHMJOYPAD     ; 5
 
-DebugColorPicker:
+DebugColorPicker: ; unreferenced
 ; A debug menu to test monster and trainer palettes at runtime.
 	ldh a, [hCGB]
 	and a
@@ -1069,7 +1069,7 @@
 DebugColor_GFX:
 INCBIN "gfx/debug/color_test.2bpp"
 
-TilesetColorPicker:
+TilesetColorPicker: ; unreferenced
 ; A debug menu to test tileset palettes at runtime.
 ; dummied out
 	ret
--- a/engine/debug/debug_room.asm
+++ b/engine/debug/debug_room.asm
@@ -1328,9 +1328,9 @@
 .Move4:     db "MOVE 4@"
 .ID0:       db "ID[0]@"
 .ID1:       db "ID[1]@"
-.BaseExp0:  db "BASE EXP[0]@"
-.BaseExp1:  db "BASE EXP[1]@"
-.BaseExp2:  db "BASE EXP[2]@"
+.BaseExp0:  db "BASE EXP[0]@" ; unreferenced
+.BaseExp1:  db "BASE EXP[1]@" ; unreferenced
+.BaseExp2:  db "BASE EXP[2]@" ; unreferenced
 .HPExp0:    db "HP EXP[0]@"
 .HPExp1:    db "HP EXP[1]@"
 .AttkExp0:  db "ATTK EXP[0]@"
--- a/engine/events/battle_tower/battle_tower.asm
+++ b/engine/events/battle_tower/battle_tower.asm
@@ -67,7 +67,7 @@
 	call Function170c8b
 	ret
 
-Function170139:
+Function170139: ; unreferenced
 ; Convert the 4-digit decimal number at s5_aa41 into binary
 	ld a, BANK(s5_aa41)
 	call OpenSRAM
@@ -374,7 +374,7 @@
 	ld [bc], a
 	ret
 
-ValidateBTParty:
+ValidateBTParty: ; unreferenced
 ; Check for and fix errors in party data
 	ld hl, wBT_OTTempMon1Species
 	ld d, BATTLETOWER_PARTY_LENGTH
@@ -386,7 +386,7 @@
 	ld a, [hl]
 	and a
 x = $ff
-rept ($ff - NUM_POKEMON)
+rept $ff - NUM_POKEMON
 	jr z, .invalid
 	cp x
 x = x - 1
--- a/engine/events/battle_tower/load_trainer.asm
+++ b/engine/events/battle_tower/load_trainer.asm
@@ -95,7 +95,7 @@
 	ld c, BATTLETOWER_PARTY_LENGTH
 .loop
 	push bc
-	ld a, BANK(sBTMonPrevTrainer1)
+	ld a, BANK(sBTMonOfTrainers)
 	call OpenSRAM
 
 .FindARandomBattleTowerMon:
--- a/engine/events/buena.asm
+++ b/engine/events/buena.asm
@@ -85,7 +85,7 @@
 	call Buena_PrizeMenu
 	jr z, .done
 	ld [wMenuSelectionQuantity], a
-	call Buena_getprize
+	call Buena_GetPrize
 	ld a, [hl]
 	ld [wNamedObjectIndexBuffer], a
 	call GetItemName
@@ -95,7 +95,7 @@
 	jr c, .loop
 
 	ld a, [wMenuSelectionQuantity]
-	call Buena_getprize
+	call Buena_GetPrize
 	inc hl
 	ld a, [hld]
 	ld c, a
@@ -258,11 +258,11 @@
 	db SCROLLINGMENU_DISPLAY_ARROWS ; flags
 	db 4, 13 ; rows, columns
 	db SCROLLINGMENU_ITEMS_NORMAL ; item format
-	dba .indices
-	dba .prizeitem
-	dba .prizepoints
+	dba .Prizes
+	dba .PrintPrizeItem
+	dba .PrintPrizePoints
 
-.indices:
+.Prizes:
 	db NUM_BUENA_PRIZES
 x = 1
 rept NUM_BUENA_PRIZES
@@ -271,9 +271,9 @@
 endr
 	db -1
 
-.prizeitem:
+.PrintPrizeItem:
 	ld a, [wMenuSelection]
-	call Buena_getprize
+	call Buena_GetPrize
 	ld a, [hl]
 	push de
 	ld [wNamedObjectIndexBuffer], a
@@ -282,9 +282,9 @@
 	call PlaceString
 	ret
 
-.prizepoints:
+.PrintPrizePoints:
 	ld a, [wMenuSelection]
-	call Buena_getprize
+	call Buena_GetPrize
 	inc hl
 	ld a, [hl]
 	ld c, "0"
@@ -292,7 +292,7 @@
 	ld [de], a
 	ret
 
-Buena_getprize:
+Buena_GetPrize:
 	dec a
 	ld hl, BuenaPrizeItems
 	ld b, 0
--- a/engine/events/celebi.asm
+++ b/engine/events/celebi.asm
@@ -1,6 +1,6 @@
 SPECIALCELEBIEVENT_CELEBI EQU $84
 
-UnusedForestTreeFrames:
+UnusedForestTreeFrames: ; unreferenced
 INCBIN "gfx/tilesets/forest-tree/1.2bpp"
 INCBIN "gfx/tilesets/forest-tree/2.2bpp"
 INCBIN "gfx/tilesets/forest-tree/3.2bpp"
@@ -99,8 +99,7 @@
 	set 7, [hl]
 	ret
 
-CelebiEvent_SpawnLeaf:
-; unused
+CelebiEvent_SpawnLeaf: ; unreferenced
 	ld hl, wcf65
 	ld a, [hl]
 	inc [hl]
--- a/engine/events/daycare.asm
+++ b/engine/events/daycare.asm
@@ -166,7 +166,7 @@
 	scf
 	ret
 
-.DaycareDummyText:
+.DaycareDummyText: ; unreferenced
 	text_far _DaycareDummyText
 	text_end
 
--- a/engine/events/engine_flags.asm
+++ b/engine/events/engine_flags.asm
@@ -57,7 +57,7 @@
 	jr z, .set   ; b = 1
 
 ; Return the given flag in c.
-.check
+; check
 	ld a, [de]
 	and c
 	ld c, a
--- a/engine/events/heal_machine_anim.asm
+++ b/engine/events/heal_machine_anim.asm
@@ -56,7 +56,7 @@
 .Pointers:
 ; entries correspond to HEALMACHINE_* constants
 	dw .Pokecenter
-	dw .ElmLab
+	dw .ElmsLab
 	dw .HallOfFame
 
 healmachineanimseq: MACRO
@@ -68,7 +68,7 @@
 
 .Pokecenter:
 	healmachineanimseq LOADGFX, PCLOADBALLS, PLAYMUSIC, FINISH
-.ElmLab:
+.ElmsLab:
 	healmachineanimseq LOADGFX, PCLOADBALLS, PLAYMUSIC, FINISH
 .HallOfFame:
 	healmachineanimseq LOADGFX, HOFLOADBALLS, HOFPLAYSFX, FINISH
--- a/engine/events/magnet_train.asm
+++ b/engine/events/magnet_train.asm
@@ -69,7 +69,7 @@
 	ld [wRequested2bppSource + 1], a
 	ld [wRequested2bppDest], a
 	ld [wRequested2bppDest + 1], a
-	ld [wRequested2bpp], a
+	ld [wRequested2bppSize], a
 	call ClearTilemap
 
 	pop af
--- a/engine/events/overworld.asm
+++ b/engine/events/overworld.asm
@@ -1414,7 +1414,7 @@
 	ld d, ROCK_SMASH
 	call CheckPartyMove
 	jr nc, .yes
-.no
+; no
 	ld a, 1
 	jr .done
 .yes
@@ -1616,7 +1616,7 @@
 	text_far _RodNothingText
 	text_end
 
-UnusedNothingHereText: ; unused
+UnusedNothingHereText: ; unreferenced
 	text_far _UnusedNothingHereText
 	text_end
 
--- a/engine/events/poisonstep.asm
+++ b/engine/events/poisonstep.asm
@@ -149,6 +149,6 @@
 	text_far _PoisonFaintText
 	text_end
 
-.PoisonWhiteoutText:
+.PoisonWhiteoutText: ; unreferenced
 	text_far _PoisonWhiteoutText
 	text_end
--- a/engine/events/print_unown_2.asm
+++ b/engine/events/print_unown_2.asm
@@ -30,7 +30,7 @@
 	cp 7 * 7
 	jr c, .loop
 
-	ld hl, wGameboyPrinterRAM
+	ld hl, wGameboyPrinter2bppSource
 	ld de, sScratch
 	ld bc, 7 * 7 tiles
 	call CopyBytes
@@ -100,7 +100,7 @@
 rept \1
 x = \1 * (\2 - 1) + y
 rept \2
-	dw wGameboyPrinterRAM tile x
+	dw wGameboyPrinter2bppSource tile x
 x = x - \2
 endr
 y = y + 1
--- a/engine/events/specials.asm
+++ b/engine/events/specials.asm
@@ -380,17 +380,17 @@
 	ldh a, [hCGB]
 	and a
 	jr nz, .cgb
-
 	ldh a, [hSGB]
 	and a
 	jr nz, .sgb
-
-.gb
+; gb
 	xor a ; GBCHECK_GB
 	jr .done
+
 .sgb
 	ld a, GBCHECK_SGB
 	jr .done
+
 .cgb
 	ld a, GBCHECK_CGB
 .done
--- a/engine/events/treemons.asm
+++ b/engine/events/treemons.asm
@@ -210,7 +210,7 @@
 	cp 5
 	jr c, .good
 
-.bad
+; bad
 	xor a ; TREEMON_SCORE_BAD
 	ret
 
--- a/engine/games/card_flip.asm
+++ b/engine/games/card_flip.asm
@@ -1,7 +1,8 @@
 CARDFLIP_LIGHT_OFF EQU "♂" ; $ef
 CARDFLIP_LIGHT_ON  EQU "♀" ; $f5
 
-CARDFLIP_DECK_SIZE EQU 4 * 6
+CARDFLIP_DECK_SIZE EQUS "(wDeckEnd - wDeck)"
+	assert wDiscardPileEnd - wDiscardPile == wDeckEnd - wDeck
 
 DummyGameGFX:
 ; Graphics for an unused Game Corner
--- a/engine/games/dummy_game.asm
+++ b/engine/games/dummy_game.asm
@@ -20,7 +20,7 @@
 	ld a, BANK(DummyGameGFX)
 	call FarCopyBytes
 	ld a, $8
-	ld hl, wc300
+	ld hl, wSpriteAnimDict
 	ld [hli], a
 	ld [hl], $0
 	hlcoord 0, 0
--- a/engine/gfx/cgb_layouts.asm
+++ b/engine/gfx/cgb_layouts.asm
@@ -326,7 +326,7 @@
 	call LoadHLPaletteIntoDE
 	jr .GotPalette
 
-.GetMonPalette:
+.GetMonPalette: ; unreferenced
 	ld bc, wTempMonDVs
 	call GetPlayerOrMonPalettePointer
 	call LoadPalette_White_Col1_Col2_Black
--- a/engine/gfx/color.asm
+++ b/engine/gfx/color.asm
@@ -15,31 +15,31 @@
 ; Attack
 	ld a, [hl]
 	and 1 << SHINY_ATK_BIT
-	jr z, .NotShiny
+	jr z, .not_shiny
 
 ; Defense
 	ld a, [hli]
 	and $f
 	cp  SHINY_DEF_VAL
-	jr nz, .NotShiny
+	jr nz, .not_shiny
 
 ; Speed
 	ld a, [hl]
 	and $f0
 	cp  SHINY_SPD_VAL << 4
-	jr nz, .NotShiny
+	jr nz, .not_shiny
 
 ; Special
 	ld a, [hl]
 	and $f
 	cp  SHINY_SPC_VAL
-	jr nz, .NotShiny
+	jr nz, .not_shiny
 
-.Shiny:
+; shiny
 	scf
 	ret
 
-.NotShiny:
+.not_shiny
 	and a
 	ret
 
@@ -49,30 +49,30 @@
 ; Attack
 	ld a, [hl]
 	cp 10 << 4
-	jr c, .NotShiny
+	jr c, .not_shiny
 
 ; Defense
 	ld a, [hli]
 	and $f
 	cp 10
-	jr c, .NotShiny
+	jr c, .not_shiny
 
 ; Speed
 	ld a, [hl]
 	cp 10 << 4
-	jr c, .NotShiny
+	jr c, .not_shiny
 
 ; Special
 	ld a, [hl]
 	and $f
 	cp 10
-	jr c, .NotShiny
+	jr c, .not_shiny
 
-.Shiny:
+; shiny
 	scf
 	ret
 
-.NotShiny:
+.not_shiny
 	and a
 	ret
 
@@ -977,7 +977,7 @@
 
 .LoadSGBBorderPointers:
 	ld hl, SGBBorderGFX
-	ld de, SGBBorderMap
+	ld de, SGBBorderMapAndPalettes
 	ret
 
 SGB_ClearVRAM:
@@ -1174,12 +1174,10 @@
 PredefPals:
 INCLUDE "gfx/sgb/predef.pal"
 
-SGBBorderMap:
+SGBBorderMapAndPalettes:
 ; interleaved tile ids and palette ids, without the center 20x18 screen area
 INCBIN "gfx/sgb/sgb_border.sgb.tilemap"
-
-SGBBorderPalettes:
-; assumed to come after SGBBorderMap
+; four SGB palettes of 16 colors each; only the first 4 colors are used
 INCLUDE "gfx/sgb/sgb_border.pal"
 
 SGBBorderGFX:
@@ -1317,7 +1315,7 @@
 PartyMenuOBPals:
 INCLUDE "gfx/stats/party_menu_ob.pal"
 
-UnusedBattleObjectPals:
+UnusedBattleObjectPals: ; unreferenced
 INCLUDE "gfx/battle_anims/unused_battle_anims.pal"
 
 UnusedGSTitleBGPals:
--- a/engine/gfx/player_gfx.asm
+++ b/engine/gfx/player_gfx.asm
@@ -113,10 +113,10 @@
 	ld bc, $23 tiles
 	ld a, BANK(ChrisCardPic) ; aka BANK(KrisCardPic)
 	call FarCopyBytes
-	ld hl, CardGFX
+	ld hl, TrainerCardGFX
 	ld de, vTiles2 tile $23
 	ld bc, 6 tiles
-	ld a, BANK(CardGFX)
+	ld a, BANK(TrainerCardGFX)
 	call FarCopyBytes
 	ret
 
@@ -126,7 +126,7 @@
 KrisCardPic:
 INCBIN "gfx/trainer_card/kris_card.2bpp"
 
-CardGFX:
+TrainerCardGFX:
 INCBIN "gfx/trainer_card/trainer_card.2bpp"
 
 GetPlayerBackpic:
--- a/engine/items/item_effects.asm
+++ b/engine/items/item_effects.asm
@@ -1062,14 +1062,13 @@
 	ld b, $ff
 	ret
 
-; These two texts were carried over from gen 1.
-; They are not used in gen 2, and are dummied out.
+; BallDodgedText and BallMissedText were used in Gen 1.
 
-BallDodgedText:
+BallDodgedText: ; unreferenced
 	text_far _BallDodgedText
 	text_end
 
-BallMissedText:
+BallMissedText: ; unreferenced
 	text_far _BallMissedText
 	text_end
 
@@ -1896,7 +1895,7 @@
 	ld [wBuffer5], a
 	ret
 
-LoadHPIntoBuffer5:
+LoadHPIntoBuffer5: ; unreferenced
 	ld a, d
 	ld [wBuffer6], a
 	ld a, e
@@ -1903,7 +1902,7 @@
 	ld [wBuffer5], a
 	ret
 
-LoadHPFromBuffer5:
+LoadHPFromBuffer5: ; unreferenced
 	ld a, [wBuffer6]
 	ld d, a
 	ld a, [wBuffer5]
@@ -2353,7 +2352,6 @@
 	jr c, .do_ppup
 
 .CantUsePPUpOnSketch:
-.pp_is_maxed_out
 	ld hl, PPIsMaxedOutText
 	call PrintText
 	jr .loop2
@@ -2650,16 +2648,17 @@
 	ld hl, ItemWontHaveEffectText
 	jr CantUseItemMessage
 
-BelongsToSomeoneElseMessage:
+BelongsToSomeoneElseMessage: ; unreferenced
 	ld hl, ItemBelongsToSomeoneElseText
 	jr CantUseItemMessage
 
-CyclingIsntAllowedMessage:
+CyclingIsntAllowedMessage: ; unreferenced
 	ld hl, NoCyclingText
 	jr CantUseItemMessage
 
-CantGetOnYourBikeMessage:
+CantGetOnYourBikeMessage: ; unreferenced
 	ld hl, ItemCantGetOnText
+	; fallthrough
 
 CantUseItemMessage:
 ; Item couldn't be used.
@@ -2711,11 +2710,11 @@
 	text_far _ItemUsedText
 	text_end
 
-ItemGotOnText:
+ItemGotOnText: ; unreferenced
 	text_far _ItemGotOnText
 	text_end
 
-ItemGotOffText:
+ItemGotOffText: ; unreferenced
 	text_far _ItemGotOffText
 	text_end
 
--- a/engine/items/items.asm
+++ b/engine/items/items.asm
@@ -481,7 +481,7 @@
 	jr c, .done
 	cp ITEM_DC - (TM01 - 1) - 1
 	jr c, .skip_one
-.skip_two
+; skip two
 	inc a
 .skip_one
 	inc a
--- a/engine/items/pack.asm
+++ b/engine/items/pack.asm
@@ -1531,7 +1531,7 @@
 	dba PlaceMenuItemQuantity
 	dba UpdateItemDescription
 
-PackNoItemText:
+PackNoItemText: ; unreferenced
 	text_far _PackNoItemText
 	text_end
 
@@ -1571,7 +1571,7 @@
 	text_far _PackEmptyText
 	text_end
 
-YouCantUseItInABattleText:
+YouCantUseItInABattleText: ; unreferenced
 	text_far _YouCantUseItInABattleText
 	text_end
 
--- a/engine/items/tmhm.asm
+++ b/engine/items/tmhm.asm
@@ -159,7 +159,7 @@
 	and a
 	ret
 
-.unused
+.didnt_use ; unreferenced
 	ld a, 2
 	ld [wItemEffectSucceeded], a
 .learned_move
--- a/engine/link/link.asm
+++ b/engine/link/link.asm
@@ -107,8 +107,8 @@
 	ld de, wLinkData
 	ld bc, $1a2
 	call Link_CopyOTData
-	ld de, wPlayerTrademonSpecies
-	ld hl, wTimeCapsulePartyMon1Species
+	ld de, wPlayerTrademon
+	ld hl, wTimeCapsulePlayerData
 	ld c, 2
 .loop
 	ld a, [de]
@@ -162,7 +162,7 @@
 
 .done_party
 	ld [de], a
-	ld hl, wTimeCapsulePartyMon1Species
+	ld hl, wTimeCapsulePlayerData
 	call Function2868a
 	ld a, LOW(wOTPartyMonOT)
 	ld [wUnusedD102], a
@@ -253,8 +253,8 @@
 	ld de, wLinkData
 	ld bc, $1b9
 	call Link_CopyOTData
-	ld de, wPlayerTrademonSpecies
-	ld hl, wLinkPlayerPartyMon1Species
+	ld de, wPlayerTrademon
+	ld hl, wLinkPlayerData
 	ld c, 2
 .loop1
 	ld a, [de]
@@ -584,7 +584,7 @@
 	ld [hli], a
 	dec b
 	jr nz, .loop3
-	ld hl, wTimeCapsulePartyMon1 - 1 + PARTY_LENGTH
+	ld hl, wTimeCapsulePlayerData - 1 + PARTY_LENGTH
 	ld de, wc612
 	lb bc, 0, 0
 .loop4
--- a/engine/link/link_trade.asm
+++ b/engine/link/link_trade.asm
@@ -15,7 +15,7 @@
 	call CopyBytes
 	ret
 
-Function16d43b:
+Function16d43b: ; unreferenced
 	call LoadStandardMenuHeader
 	call ClearBGPalettes
 	call ClearTilemap
--- a/engine/link/mystery_gift.asm
+++ b/engine/link/mystery_gift.asm
@@ -1148,7 +1148,7 @@
 .skip
 	inc c
 	ld a, c
-	cp TrophyIDs - DecorationIDs
+	cp NUM_NON_TROPHY_DECOS
 	jr c, .loop
 	jp CloseSRAM
 
--- a/engine/link/mystery_gift_2.asm
+++ b/engine/link/mystery_gift_2.asm
@@ -2,7 +2,7 @@
 	ld de, wMysteryGiftStaging
 	ld a, $1 + GS_VERSION
 	ld [de], a
-	inc de ; wc801
+	inc de ; wMysteryGiftStaging+1
 	ld a, BANK(sGameData)
 	call OpenSRAM
 	ld hl, sPlayerData + wPlayerID - wPlayerData
@@ -9,16 +9,16 @@
 	ld a, [hli]
 	ld [de], a
 	ld b, a
-	inc de ; wc802
+	inc de ; wMysteryGiftStaging+2
 	ld a, [hl]
 	ld [de], a
 	ld c, a
-	inc de ; wc803
+	inc de ; wMysteryGiftStaging+3
 	push bc
 	ld hl, sPlayerData + wPlayerName - wPlayerData
 	ld bc, NAME_LENGTH
 	call CopyBytes
-	push de ; wc80e
+	push de ; wMysteryGiftStaging+14
 	ld hl, sPokemonData + wPokedexCaught - wPokemonData
 	ld b, wEndPokedexCaught - wPokedexCaught
 	call CountSetBits
@@ -26,21 +26,21 @@
 	pop bc
 	ld a, [wNumSetBits]
 	ld [de], a
-	inc de ; wc80f
+	inc de ; wMysteryGiftStaging+15
 	call CloseSRAM
 	call Random
 	and 1
 	ld [de], a
-	inc de ; wc810
+	inc de ; wMysteryGiftStaging+16
 	call .RandomSample
 	ld [de], a
-	inc de ; wc811
+	inc de ; wMysteryGiftStaging+17
 	ld a, c
 	ld c, b
 	ld b, a
 	call .RandomSample
 	ld [de], a
-	inc de ; wc812
+	inc de ; wMysteryGiftStaging+18
 	ld a, BANK(sBackupMysteryGiftItem)
 	call OpenSRAM
 	ld a, [sBackupMysteryGiftItem]
--- a/engine/math/print_num.asm
+++ b/engine/math/print_num.asm
@@ -35,7 +35,6 @@
 	cp 2
 	jr z, .word
 ; maximum 3 bytes
-.long
 	ld a, [de]
 	ldh [hPrintNumBuffer + 1], a
 	inc de
@@ -81,7 +80,7 @@
 	cp 6
 	jr z, .six
 
-.seven
+; seven
 	ld a, HIGH(1000000 >> 8)
 	ldh [hPrintNumBuffer + 4], a
 	ld a, HIGH(1000000) ; mid
--- a/engine/menus/main_menu.asm
+++ b/engine/menus/main_menu.asm
@@ -316,20 +316,19 @@
 	call PrintNum
 	ret
 
-.min
-; unused
+.minString: ; unreferenced
 	db "min.@"
 
 .PrintTimeNotSet:
 	hlcoord 1, 14
-	ld de, .TimeNotSet
+	ld de, .TimeNotSetString
 	call PlaceString
 	ret
 
-.TimeNotSet:
+.TimeNotSetString:
 	db "TIME NOT SET@"
 
-.MainMenuTimeUnknownText:
+.MainMenuTimeUnknownText: ; unreferenced
 	text_far _MainMenuTimeUnknownText
 	text_end
 
--- a/engine/menus/menu_2.asm
+++ b/engine/menus/menu_2.asm
@@ -156,7 +156,7 @@
 	set NO_TEXT_SCROLL, [hl]
 	call StartMenu_DrawBugContestStatusBox
 	hlcoord 1, 5
-	ld de, .Balls_EN
+	ld de, .BallsString
 	call PlaceString
 	hlcoord 8, 5
 	ld de, wParkBallsRemaining
@@ -163,11 +163,11 @@
 	lb bc, PRINTNUM_LEFTALIGN | 1, 2
 	call PrintNum
 	hlcoord 1, 1
-	ld de, .CAUGHT
+	ld de, .CaughtString
 	call PlaceString
 	ld a, [wContestMon]
 	and a
-	ld de, .None
+	ld de, .NoneString
 	jr z, .no_contest_mon
 	ld [wNamedObjectIndexBuffer], a
 	call GetPokemonName
@@ -179,7 +179,7 @@
 	and a
 	jr z, .skip_level
 	hlcoord 1, 3
-	ld de, .LEVEL
+	ld de, .LevelString
 	call PlaceString
 	ld a, [wContestMonLevel]
 	ld h, b
@@ -193,15 +193,15 @@
 	ld [wOptions], a
 	ret
 
-.Balls_JP:
+.BallsJPString: ; unreferenced
 	db "ボール   こ@"
-.CAUGHT:
+.CaughtString:
 	db "CAUGHT@"
-.Balls_EN:
+.BallsString:
 	db "BALLS:@"
-.None:
+.NoneString:
 	db "None@"
-.LEVEL:
+.LevelString:
 	db "LEVEL@"
 
 FindApricornsInBag:
--- a/engine/menus/naming_screen.asm
+++ b/engine/menus/naming_screen.asm
@@ -275,6 +275,7 @@
 NamingScreen_ApplyTextInputMode:
 	call NamingScreen_IsTargetBox
 	jr nz, .not_box
+	assert BoxNameInputLower - NameInputLower == BoxNameInputUpper - NameInputUpper
 	ld hl, BoxNameInputLower - NameInputLower
 	add hl, de
 	ld d, h
@@ -880,7 +881,7 @@
 
 INCLUDE "data/text/name_input_chars.asm"
 
-NamingScreenGFX_End: ; unused
+NamingScreenGFX_End: ; unreferenced
 INCBIN "gfx/naming_screen/end.1bpp"
 
 NamingScreenGFX_MiddleLine:
--- a/engine/movie/credits.asm
+++ b/engine/movie/credits.asm
@@ -199,7 +199,7 @@
 	xor a
 	ldh [hBGMapMode], a
 	ld a, 8
-	ld [wRequested2bpp], a
+	ld [wRequested2bppSize], a
 	jp Credits_Next
 
 Credits_LYOverride:
--- a/engine/movie/unused_title.asm
+++ b/engine/movie/unused_title.asm
@@ -1,4 +1,4 @@
-UnusedTitleScreen:
+UnusedTitleScreen: ; unreferenced
 	call ClearBGPalettes
 	call ClearTilemap
 	call DisableLCD
@@ -154,7 +154,7 @@
 	dbsprite 13, 11,  0,  0, $4c, 1
 	dbsprite 14, 11,  0,  0, $4e, 1
 
-Function10ed51:
+Function10ed51: ; unreferenced
 	call _TitleScreen
 .loop
 	call JoyTextDelay
--- a/engine/overworld/decorations.asm
+++ b/engine/overworld/decorations.asm
@@ -549,7 +549,7 @@
 	ld a, e
 	jr .getpokename
 
-.unused
+.unused ; unreferenced
 	push de
 	call .getdeconame
 	pop de
@@ -939,7 +939,7 @@
 	pop hl
 	ret
 
-SetAllDecorationFlags:
+SetAllDecorationFlags: ; unreferenced
 	ld hl, DecorationIDs
 .loop
 	ld a, [hli]
--- a/engine/overworld/events.asm
+++ b/engine/overworld/events.asm
@@ -25,76 +25,76 @@
 
 DisableEvents:
 	xor a
-	ld [wScriptFlags3], a
+	ld [wScriptFlags2], a
 	ret
 
 EnableEvents::
 	ld a, $ff
-	ld [wScriptFlags3], a
+	ld [wScriptFlags2], a
 	ret
 
-CheckBit5_ScriptFlags3:
-	ld hl, wScriptFlags3
+CheckBit5_ScriptFlags2:
+	ld hl, wScriptFlags2
 	bit 5, [hl]
 	ret
 
-DisableWarpsConnxns:
-	ld hl, wScriptFlags3
+DisableWarpsConnxns: ; unreferenced
+	ld hl, wScriptFlags2
 	res 2, [hl]
 	ret
 
-DisableCoordEvents:
-	ld hl, wScriptFlags3
+DisableCoordEvents: ; unreferenced
+	ld hl, wScriptFlags2
 	res 1, [hl]
 	ret
 
-DisableStepCount:
-	ld hl, wScriptFlags3
+DisableStepCount: ; unreferenced
+	ld hl, wScriptFlags2
 	res 0, [hl]
 	ret
 
-DisableWildEncounters:
-	ld hl, wScriptFlags3
+DisableWildEncounters: ; unreferenced
+	ld hl, wScriptFlags2
 	res 4, [hl]
 	ret
 
-EnableWarpsConnxns:
-	ld hl, wScriptFlags3
+EnableWarpsConnxns: ; unreferenced
+	ld hl, wScriptFlags2
 	set 2, [hl]
 	ret
 
-EnableCoordEvents:
-	ld hl, wScriptFlags3
+EnableCoordEvents: ; unreferenced
+	ld hl, wScriptFlags2
 	set 1, [hl]
 	ret
 
-EnableStepCount:
-	ld hl, wScriptFlags3
+EnableStepCount: ; unreferenced
+	ld hl, wScriptFlags2
 	set 0, [hl]
 	ret
 
 EnableWildEncounters:
-	ld hl, wScriptFlags3
+	ld hl, wScriptFlags2
 	set 4, [hl]
 	ret
 
 CheckWarpConnxnScriptFlag:
-	ld hl, wScriptFlags3
+	ld hl, wScriptFlags2
 	bit 2, [hl]
 	ret
 
 CheckCoordEventScriptFlag:
-	ld hl, wScriptFlags3
+	ld hl, wScriptFlags2
 	bit 1, [hl]
 	ret
 
 CheckStepCountScriptFlag:
-	ld hl, wScriptFlags3
+	ld hl, wScriptFlags2
 	bit 0, [hl]
 	ret
 
 CheckWildEncountersScriptFlag:
-	ld hl, wScriptFlags3
+	ld hl, wScriptFlags2
 	bit 4, [hl]
 	ret
 
@@ -135,7 +135,7 @@
 	ld [wMapStatus], a
 	ret
 
-UnusedWait30Frames:
+UnusedWait30Frames: ; unreferenced
 	ld c, 30
 	call DelayFrames
 	ret
@@ -248,7 +248,7 @@
 	and a
 	ret nz
 
-	call Dummy_CheckScriptFlags3Bit5 ; This is a waste of time
+	call Dummy_CheckScriptFlags2Bit5 ; This is a waste of time
 
 	call CheckTrainerBattle_GetPlayerEvent
 	jr c, .ok
@@ -395,8 +395,8 @@
 	ld [wWildEncounterCooldown], a
 	ret
 
-Dummy_CheckScriptFlags3Bit5:
-	call CheckBit5_ScriptFlags3
+Dummy_CheckScriptFlags2Bit5:
+	call CheckBit5_ScriptFlags2
 	ret z
 	call SetXYCompareFlags
 	ret
@@ -480,8 +480,8 @@
 	scf
 	ret
 
-.unused
-	ld a, 8
+.unused ; unreferenced
+	ld a, $8 ; ???
 	scf
 	ret
 
--- a/engine/overworld/map_objects.asm
+++ b/engine/overworld/map_objects.asm
@@ -2894,20 +2894,20 @@
 	ldh [hCurSpriteTile], a
 	xor a
 	bit 7, [hl]
-	jr nz, .skip1
+	jr nz, .not_vram1
 	or VRAM_BANK_1
-.skip1
+.not_vram1
 	ld hl, OBJECT_FLAGS2
 	add hl, bc
 	ld e, [hl]
 	bit OBJ_FLAGS2_7, e
-	jr z, .skip2
+	jr z, .not_priority
 	or PRIORITY
-.skip2
+.not_priority
 	bit USE_OBP1_F, e
-	jr z, .skip3
+	jr z, .not_obp_num
 	or OBP_NUM
-.skip3
+.not_obp_num
 	ld hl, OBJECT_PALETTE
 	add hl, bc
 	ld d, a
@@ -2917,9 +2917,9 @@
 	ld d, a
 	xor a
 	bit OVERHEAD_F, e
-	jr z, .skip4
+	jr z, .not_overhead
 	or PRIORITY
-.skip4
+.not_overhead
 	ldh [hCurSpriteOAMFlags], a
 	ld hl, OBJECT_SPRITE_X
 	add hl, bc
--- a/engine/overworld/scripting.asm
+++ b/engine/overworld/scripting.asm
@@ -2173,8 +2173,7 @@
 	farcall EnableEvents
 	ret
 
-Script_enableevents:
-; unused
+Script_enableevents: ; unreferenced
 	farcall EnableEvents
 	ret
 
--- a/engine/overworld/time.asm
+++ b/engine/overworld/time.asm
@@ -203,7 +203,7 @@
 	xor a
 	ret
 
-SetUnusedTwoDayTimer:
+SetUnusedTwoDayTimer: ; unreferenced
 	ld a, 2
 	ld hl, wUnusedTwoDayTimer
 	ld [hl], a
@@ -308,7 +308,7 @@
 	scf
 	ret
 
-GetSecondsSinceIfLessThan60:
+GetSecondsSinceIfLessThan60: ; unreferenced
 	ld a, [wDaysSince]
 	and a
 	jr nz, GetTimeElapsed_ExceedsUnitLimit
@@ -330,7 +330,7 @@
 	ld a, [wMinutesSince]
 	ret
 
-GetHoursSinceIfLessThan24:
+GetHoursSinceIfLessThan24: ; unreferenced
 	ld a, [wDaysSince]
 	and a
 	jr nz, GetTimeElapsed_ExceedsUnitLimit
@@ -349,7 +349,7 @@
 	xor a
 	jr _CalcDaysSince
 
-CalcHoursDaysSince:
+CalcHoursDaysSince: ; unreferenced
 	inc hl
 	xor a
 	jr _CalcHoursDaysSince
@@ -423,7 +423,7 @@
 	ld [hl], a
 	ret
 
-CopyDayHourToHL:
+CopyDayHourToHL: ; unreferenced
 	ld a, [wCurDay]
 	ld [hli], a
 	ldh a, [hHours]
--- a/engine/phone/phone.asm
+++ b/engine/phone/phone.asm
@@ -437,7 +437,7 @@
 	ld e, PHONE_BILL
 	jp LoadCallerScript
 
-LoadElmCallScript:
+Script_SpecialElmCall: ; unreferenced
 	callasm .LoadElmScript
 	pause 30
 	sjump Script_ReceivePhoneCall
@@ -720,7 +720,7 @@
 	text_far _PhoneJustTalkToThemText
 	text_end
 
-PhoneThankYouTextScript:
+PhoneThankYouTextScript: ; unreferenced
 	writetext PhoneThankYouText
 	end
 
--- a/engine/phone/scripts/elm.asm
+++ b/engine/phone/scripts/elm.asm
@@ -95,7 +95,7 @@
 	specialphonecall SPECIALCALL_NONE
 	end
 
-.unused
+.neat ; unreferenced
 	farwritetext ElmPhoneGotAholdOfSomethingNeatText
 	specialphonecall SPECIALCALL_NONE
 	end
--- a/engine/phone/scripts/generic_callee.asm
+++ b/engine/phone/scripts/generic_callee.asm
@@ -1103,7 +1103,7 @@
 	promptbutton
 	end
 
-.Unknown:
+.Unknown: ; unreferenced
 	farwritetext UnknownGenericText
 	promptbutton
 	end
--- a/engine/phone/scripts/hangups_2.asm
+++ b/engine/phone/scripts/hangups_2.asm
@@ -3,7 +3,7 @@
 	promptbutton
 	sjump PhoneScript_HangUpText_Female
 
-JoseComePickUpScript:
+JoseComePickUpScript: ; unreferenced
 	farwritetext JoseComePickUpText
 	promptbutton
 	sjump PhoneScript_HangUpText_Male
--- a/engine/pokedex/pokedex.asm
+++ b/engine/pokedex/pokedex.asm
@@ -1166,7 +1166,7 @@
 	call Pokedex_PlaceFrontpicTopLeftCorner
 	ret
 
-.Unused:
+.Number: ; unreferenced
 	db $5c, $5d, -1 ; No.
 .Height:
 	db "HT  ?", $5e, "??", $5f, -1 ; HT  ?'??"
@@ -2480,6 +2480,7 @@
 	ld a, BANK(sScratch)
 	call OpenSRAM
 	ld hl, UnownFont
+	; sScratch + $188 was the address of sDecompressBuffer in pokegold
 	ld de, sScratch + $188
 	ld bc, 39 tiles
 	ld a, BANK(UnownFont)
--- a/engine/pokegear/pokegear.asm
+++ b/engine/pokegear/pokegear.asm
@@ -1546,7 +1546,7 @@
 	jr z, .johto
 	cp KANTO_LANDMARK
 	jr c, .johto
-.kanto
+; kanto
 	and a
 	ret
 
@@ -2265,7 +2265,7 @@
 ; The first 46 locations are part of Johto. The rest are in Kanto.
 	cp KANTO_LANDMARK
 	jr nc, .KantoFlyMap
-.JohtoFlyMap:
+; Johto fly map
 ; Note that .NoKanto should be modified in tandem with this branch
 	push af
 	ld a, JOHTO_FLYPOINT ; first Johto flypoint
@@ -2569,7 +2569,7 @@
 	jr z, .johto
 	cp KANTO_LANDMARK
 	jr c, .johto
-.kanto
+; kanto
 	ld a, [wTownMapCursorLandmark]
 	and a
 	jr z, .clear
--- a/engine/pokegear/radio.asm
+++ b/engine/pokegear/radio.asm
@@ -141,7 +141,7 @@
 	ld [wRadioTextDelay], a
 	ret
 
-ReplacePeriodsWithSpaces:
+ReplacePeriodsWithSpaces: ; unreferenced
 	push hl
 	ld b, SCREEN_WIDTH * 2
 .loop
@@ -149,7 +149,6 @@
 	cp "."
 	jr nz, .next
 	ld [hl], " "
-
 .next
 	inc hl
 	dec b
@@ -1779,7 +1778,7 @@
 	cp TX_FAR
 	jp z, FarCopyRadioText
 	ld de, wRadioText
-	ld bc, SCREEN_WIDTH * 2
+	ld bc, 2 * SCREEN_WIDTH
 	jp CopyBytes
 
 StartRadioStation:
--- a/engine/pokemon/bills_pc.asm
+++ b/engine/pokemon/bills_pc.asm
@@ -101,7 +101,7 @@
 	ld [wJumptableIndex], a
 	ret
 
-.go_back
+.go_back ; unreferenced
 	ld hl, wJumptableIndex
 	dec [hl]
 	ret
@@ -358,7 +358,7 @@
 	ld [wJumptableIndex], a
 	ret
 
-.unused
+.go_back ; unreferenced
 	ld hl, wJumptableIndex
 	dec [hl]
 	ret
@@ -609,7 +609,7 @@
 	ld [wJumptableIndex], a
 	ret
 
-.unused
+.go_back ; unreferenced
 	ld hl, wJumptableIndex
 	dec [hl]
 	ret
@@ -2222,7 +2222,7 @@
 PCString_Bye: db "Bye,@"
 PCString_Stored: db "Stored @"
 PCString_Got: db "Got @"
-PCString_Non: db "Non.@"
+PCString_Non: db "Non.@" ; unreferenced
 PCString_BoxFull: db "The BOX is full.@"
 PCString_PartyFull: db "The party's full!@"
 PCString_NoReleasingEGGS: db "No releasing EGGS!@"
@@ -2268,16 +2268,16 @@
 	dw .MenuData
 	db 1 ; default option
 
-.MenuData
+.MenuData:
 	db SCROLLINGMENU_CALL_FUNCTION3_NO_SWITCH | SCROLLINGMENU_ENABLE_FUNCTION3 ; flags
 	db 4, 0 ; rows, columns
 	db SCROLLINGMENU_ITEMS_NORMAL ; item format
-	dba .boxes
-	dba .boxnames
+	dba .Boxes
+	dba .PrintBoxNames
 	dba NULL
 	dba BillsPC_PrintBoxCountAndCapacity
 
-.boxes
+.Boxes:
 	db NUM_BOXES
 x = 1
 rept NUM_BOXES
@@ -2286,7 +2286,7 @@
 endr
 	db -1
 
-.boxnames
+.PrintBoxNames:
 	push de
 	ld a, [wMenuSelection]
 	dec a
--- a/engine/pokemon/breedmon_level_growth.asm
+++ b/engine/pokemon/breedmon_level_growth.asm
@@ -1,5 +1,5 @@
 GetBreedMon1LevelGrowth:
-	ld hl, wBreedMon1Stats
+	ld hl, wBreedMon1
 	ld de, wTempMon
 	ld bc, BOXMON_STRUCT_LENGTH
 	call CopyBytes
@@ -13,7 +13,7 @@
 	ret
 
 GetBreedMon2LevelGrowth:
-	ld hl, wBreedMon2Stats
+	ld hl, wBreedMon2
 	ld de, wTempMon
 	ld bc, BOXMON_STRUCT_LENGTH
 	call CopyBytes
--- a/engine/pokemon/mail.asm
+++ b/engine/pokemon/mail.asm
@@ -8,7 +8,7 @@
 	cp MAILBOX_CAPACITY
 	jr nc, .full
 	ld bc, MAIL_STRUCT_LENGTH
-	ld hl, sMailbox
+	ld hl, sMailboxes
 	call AddNTimes
 	ld d, h
 	ld e, l
@@ -44,7 +44,7 @@
 	call OpenSRAM
 	ld a, b
 	push bc
-	ld hl, sMailbox
+	ld hl, sMailboxes
 	ld bc, MAIL_STRUCT_LENGTH
 	call AddNTimes
 	push hl
@@ -73,7 +73,7 @@
 
 ReadMailMessage:
 	ld a, b
-	ld hl, sMailbox
+	ld hl, sMailboxes
 	ld bc, MAIL_STRUCT_LENGTH
 	call AddNTimes
 	ld d, h
@@ -87,7 +87,7 @@
 	push bc
 	ld a, b
 	ld bc, MAIL_STRUCT_LENGTH
-	ld hl, sMailbox
+	ld hl, sMailboxes
 	call AddNTimes
 	push hl
 	ld a, [wCurPartyMon]
@@ -314,19 +314,19 @@
 	text_end
 
 InitMail:
-; initialize wMailboxCount and beyond with incrementing values, one per mail
-; set z if no mail
+; return z if no mail
 	ld a, BANK(sMailboxCount)
 	call OpenSRAM
 	ld a, [sMailboxCount]
 	call CloseSRAM
+
+; initialize wMailboxCount from sMailboxCount
 	ld hl, wMailboxCount
-	ld [hli], a
+	ld [hli], a ; now hl = wMailboxItems
 	and a
-
 	jr z, .done ; if no mail, we're done
 
-	; load values in memory with incrementing values starting at wMailboxCount
+; initialize wMailboxItems with incrementing values starting at 1
 	ld b, a
 	ld a, 1
 .loop
@@ -334,6 +334,7 @@
 	inc a
 	dec b
 	jr nz, .loop
+
 .done
 	ld [hl], -1 ; terminate
 
--- a/engine/pokemon/mail_2.asm
+++ b/engine/pokemon/mail_2.asm
@@ -404,7 +404,7 @@
 	ld de, BlueSkyMailGrassGFX
 	ld c, 1 * LEN_1BPP_TILE
 	call LoadMailGFX_Color3
-	ld de, MailDragoniteGFX
+	ld de, MailDragoniteAndSentretGFX
 	ld c, 23 * LEN_1BPP_TILE
 	call LoadMailGFX_Color3
 	ld de, MailCloudGFX
@@ -767,7 +767,7 @@
 	ld b, 14 / 2
 	jr Mail_PlaceAlternatingRow
 
-Mail_Place16TileAlternatingRow:
+Mail_Place16TileAlternatingRow: ; unreferenced
 	push af
 	ld b, 16 / 2
 	jr Mail_PlaceAlternatingRow
@@ -775,6 +775,7 @@
 Mail_Place18TileAlternatingRow:
 	push af
 	ld b, 18 / 2
+	; fallthrough
 
 Mail_PlaceAlternatingRow:
 .loop
@@ -812,16 +813,16 @@
 	pop af
 	ret
 
-Mail_Draw7TileRow:
-	ld b, $7
+Mail_Draw7TileRow: ; unreferenced
+	ld b, 7
 	jr Mail_DrawRowLoop
 
 Mail_Draw13TileRow:
-	ld b, $d
+	ld b, 13
 	jr Mail_DrawRowLoop
 
 Mail_Draw16TileRow:
-	ld b, $10
+	ld b, 16
 	jr Mail_DrawRowLoop
 
 Mail_DrawTopBottomBorder:
@@ -830,6 +831,7 @@
 
 Mail_DrawFullWidthBorder:
 	ld b, SCREEN_WIDTH
+	; fallthrough
 
 Mail_DrawRowLoop:
 .loop
--- a/engine/pokemon/party_menu.asm
+++ b/engine/pokemon/party_menu.asm
@@ -758,12 +758,10 @@
 MoveToWhereString:
 	db "Move to where?@"
 
-ChooseAFemalePKMNString:
-; unused
+ChooseAFemalePKMNString: ; unreferenced
 	db "Choose a ♀<PK><MN>.@"
 
-ChooseAMalePKMNString:
-; unused
+ChooseAMalePKMNString: ; unreferenced
 	db "Choose a ♂<PK><MN>.@"
 
 ToWhichPKMNString:
--- a/engine/printer/printer_serial.asm
+++ b/engine/printer/printer_serial.asm
@@ -304,7 +304,7 @@
 	xor a
 	ld [wPrinterSendByteCounter], a
 	ld [wPrinterSendByteCounter + 1], a
-	ld hl, wGameboyPrinterRAM
+	ld hl, wGameboyPrinter2bppSource
 	ld bc, wGameboyPrinter2bppSourceEnd - wGameboyPrinter2bppSource
 	call Printer_ByteFill
 	ret
@@ -435,10 +435,10 @@
 PrinterDataPacket4:
 	db  4, 0, $00, 0
 	dw 4
-PrinterDataPacket5: ; unused
+PrinterDataPacket5: ; unreferenced
 	db  8, 0, $00, 0
 	dw 8
-PrinterDataPacket6: ; unused
+PrinterDataPacket6: ; unreferenced
 	db 15, 0, $00, 0
 	dw 15
 
--- a/engine/smallflag.asm
+++ b/engine/smallflag.asm
@@ -36,9 +36,9 @@
 	jr z, .set ; 1 = SET_FLAG
 	dec b
 	jr z, .check ; 2 = CHECK_FLAG
-; 0 = RESET_FLAG
+	; 0 = RESET_FLAG
 
-.reset
+; reset
 	ld a, c
 	cpl
 	and [hl]
--- a/engine/tilesets/tileset_anims.asm
+++ b/engine/tilesets/tileset_anims.asm
@@ -305,7 +305,7 @@
 	jr nz, ScrollTileLeft
 	jr ScrollTileRight
 
-ScrollTileUpDown:
+ScrollTileUpDown: ; unreferenced
 ; Scroll up for 4 ticks, then down for 4 ticks.
 	ld a, [wTileAnimationTimer]
 	inc a
@@ -891,7 +891,7 @@
 	cp %100 ; frame 4
 	jr z, .color2
 
-.color1
+; color1
 	ld hl, wBGPals1 palette PAL_BG_WATER color 1
 	ld a, [hli]
 	ldh [rBGPD], a
--- a/gfx/font.asm
+++ b/gfx/font.asm
@@ -33,13 +33,13 @@
 TownMapGFX:
 INCBIN "gfx/pokegear/town_map.2bpp.lz"
 
-UnusedWeekdayKanjiGFX:
+UnusedWeekdayKanjiGFX: ; unreferenced
 INCBIN "gfx/font/unused_weekday_kanji.2bpp"
 
 PokegearPhoneIconGFX:
 INCBIN "gfx/font/phone_icon.2bpp"
 
-UnusedBoldFontGFX:
+UnusedBoldFontGFX: ; unreferenced
 INCBIN "gfx/font/unused_bold_font.1bpp"
 
 TextboxSpaceGFX:
@@ -49,7 +49,7 @@
 FontsExtra_SolidBlackGFX:
 INCBIN "gfx/font/black.1bpp"
 
-UnusedUpArrowGFX:
+UnusedUpArrowGFX: ; unreferenced
 INCBIN "gfx/font/unused_up_arrow.1bpp"
 
 MobilePhoneTilesGFX:
--- a/gfx/mail.asm
+++ b/gfx/mail.asm
@@ -55,14 +55,9 @@
 MailMewGFX:
 INCBIN "gfx/mail/mew.1bpp"
 
-MailDragoniteGFX:
+MailDragoniteAndSentretGFX:
 INCBIN "gfx/mail/dragonite.1bpp"
-
-MailSentretGFX:
 INCBIN "gfx/mail/sentret.1bpp"
-
-MailUnusedGrassGFX:
-INCBIN "gfx/mail/unused_grass.1bpp"
 
 PortraitMailLargePokeballGFX:
 INCBIN "gfx/mail/large_pokeball.1bpp"
binary files a/gfx/mail/sentret.png b/gfx/mail/sentret.png differ
--- a/gfx/tileset_palette_maps.asm
+++ b/gfx/tileset_palette_maps.asm
@@ -90,7 +90,7 @@
 TilesetPlayersRoomPalMap:
 INCLUDE "gfx/tilesets/players_room_palette_map.asm"
 
-UnusedMuseumPalMap:
+UnusedMuseumPalMap: ; unreferenced
 INCLUDE "gfx/tilesets/unused_museum_palette_map.asm"
 
 TilesetIcePathPalMap:
--- a/home/audio.asm
+++ b/home/audio.asm
@@ -436,7 +436,7 @@
 	and a
 	ret
 
-.bike
+.bike ; unreferenced
 	ld de, MUSIC_BICYCLE
 	scf
 	ret
--- a/home/battle.asm
+++ b/home/battle.asm
@@ -275,6 +275,6 @@
 	ld a, HIGH(wLYOverrides)
 	ld [wRequested2bppDest + 1], a
 
-	ld a, (wLYOverridesEnd - wLYOverrides) / 16
-	ld [wRequested2bpp], a
+	ld a, (wLYOverridesEnd - wLYOverrides) / LEN_2BPP_TILE
+	ld [wRequested2bppSize], a
 	ret
--- a/home/decompress.asm
+++ b/home/decompress.asm
@@ -80,7 +80,6 @@
 	cp LZ_LONG
 	jr nz, .short
 
-.long
 ; The count is now 10 bits.
 
 	; Read the next 3 bits.
@@ -133,7 +132,7 @@
 	cp LZ_ZERO
 	jr z, .Zero
 
-.Literal:
+; Literal
 ; Read literal data for bc bytes.
 .lloop
 	dec c
@@ -215,10 +214,8 @@
 	bit 7, a ; sign
 	jr z, .positive
 
-.negative
-; hl = de - a
-	; Since we can't subtract a from de,
-	; Make it negative and add de.
+; negative
+	; hl = de + -a
 	and %01111111
 	cpl
 	add e
--- a/home/gfx.asm
+++ b/home/gfx.asm
@@ -111,7 +111,7 @@
 	farcall _LoadFontsExtra2
 	ret
 
-LoadFontsExtra2:
+LoadFontsExtra2: ; unreferenced
 	farcall _LoadFontsExtra2
 	ret
 
@@ -226,10 +226,10 @@
 	cp [hl]
 	jr nc, .cycle
 
-	ld [wRequested2bpp], a
+	ld [wRequested2bppSize], a
 .wait
 	call DelayFrame
-	ld a, [wRequested2bpp]
+	ld a, [wRequested2bppSize]
 	and a
 	jr nz, .wait
 
@@ -245,11 +245,11 @@
 
 .cycle
 	ldh a, [hTilesPerCycle]
-	ld [wRequested2bpp], a
+	ld [wRequested2bppSize], a
 
 .wait2
 	call DelayFrame
-	ld a, [wRequested2bpp]
+	ld a, [wRequested2bppSize]
 	and a
 	jr nz, .wait2
 
@@ -300,10 +300,10 @@
 	cp [hl]
 	jr nc, .cycle
 
-	ld [wRequested1bpp], a
+	ld [wRequested1bppSize], a
 .wait
 	call DelayFrame
-	ld a, [wRequested1bpp]
+	ld a, [wRequested1bppSize]
 	and a
 	jr nz, .wait
 
@@ -319,11 +319,11 @@
 
 .cycle
 	ldh a, [hTilesPerCycle]
-	ld [wRequested1bpp], a
+	ld [wRequested1bppSize], a
 
 .wait2
 	call DelayFrame
-	ld a, [wRequested1bpp]
+	ld a, [wRequested1bppSize]
 	and a
 	jr nz, .wait2
 
--- a/home/print_bcd.asm
+++ b/home/print_bcd.asm
@@ -33,10 +33,11 @@
 	jr nz, .loop
 	bit PRINTNUM_LEADINGZEROS_F, b
 	jr z, .done ; if so, we are done
-.numberEqualsZero ; if every digit of the BCD number is zero
+; every digit of the BCD number is zero
 	bit PRINTNUM_LEFTALIGN_F, b
 	jr nz, .skipLeftAlignmentAdjustment
-	dec hl ; if the string is left-aligned, it needs to be moved back one space
+; the string is left-aligned; it needs to be moved back one space
+	dec hl
 .skipLeftAlignmentAdjustment
 	bit PRINTNUM_MONEY_F, b
 	jr z, .skipCurrencySymbol
@@ -53,7 +54,7 @@
 	and %00001111
 	and a
 	jr z, .zeroDigit
-.nonzeroDigit
+; nonzero digit
 	bit PRINTNUM_LEADINGZEROS_F, b ; have any non-space characters been printed?
 	jr z, .outputDigit
 ; if bit 7 is set, then no numbers have been printed yet
--- a/home/serial.asm
+++ b/home/serial.asm
@@ -278,7 +278,7 @@
 	call WaitLinkTransfer
 	jp SafeLoadTempTilemapToTilemap
 
-Serial_SyncAndExchangeNybble::
+Serial_SyncAndExchangeNybble:: ; unreferenced
 	call LoadTilemapToTempTilemap
 	callfar PlaceWaitingText
 	jp WaitLinkTransfer
--- a/home/text.asm
+++ b/home/text.asm
@@ -242,7 +242,7 @@
 	dict "゙",         .place ; should be .diacritic
 	jr .not_diacritic
 
-.diacritic
+.diacritic ; unreferenced
 	ld b, a
 	call Diacritic
 	jp NextChar
@@ -250,18 +250,19 @@
 .not_diacritic
 	cp FIRST_REGULAR_TEXT_CHAR
 	jr nc, .place
-
+; dakuten or handakuten
 	cp "パ"
 	jr nc, .handakuten
-
-.dakuten
+; dakuten
 	cp FIRST_HIRAGANA_DAKUTEN_CHAR
 	jr nc, .hiragana_dakuten
+; katakana dakuten
 	add "カ" - "ガ"
-	jr .katakana_dakuten
+	jr .place_dakuten
+
 .hiragana_dakuten
 	add "か" - "が"
-.katakana_dakuten
+.place_dakuten
 	ld b, "゙" ; dakuten
 	call Diacritic
 	jr .place
@@ -269,11 +270,13 @@
 .handakuten
 	cp "ぱ"
 	jr nc, .hiragana_handakuten
+; katakana handakuten
 	add "ハ" - "パ"
-	jr .katakana_handakuten
+	jr .place_handakuten
+
 .hiragana_handakuten
 	add "は" - "ぱ"
-.katakana_handakuten
+.place_handakuten
 	ld b, "゚" ; handakuten
 	call Diacritic
 
--- a/home/video.asm
+++ b/home/video.asm
@@ -184,7 +184,7 @@
 
 THIRD_HEIGHT EQU SCREEN_HEIGHT / 3
 
-.bottom
+; bottom
 	ld de, 2 * THIRD_HEIGHT * SCREEN_WIDTH
 	add hl, de
 	ld sp, hl
@@ -267,7 +267,7 @@
 Serve1bppRequest::
 ; Only call during the first fifth of VBlank
 
-	ld a, [wRequested1bpp]
+	ld a, [wRequested1bppSize]
 	and a
 	ret z
 
@@ -278,7 +278,7 @@
 	cp LY_VBLANK + 2
 	ret nc
 
-; Copy [wRequested1bpp] 1bpp tiles from [wRequested1bppSource] to [wRequested1bppDest]
+; Copy [wRequested1bppSize] 1bpp tiles from [wRequested1bppSource] to [wRequested1bppDest]
 
 	ld [hSPBuffer], sp
 
@@ -296,11 +296,11 @@
 	ld l, a
 
 ; # tiles to copy
-	ld a, [wRequested1bpp]
+	ld a, [wRequested1bppSize]
 	ld b, a
 
 	xor a
-	ld [wRequested1bpp], a
+	ld [wRequested1bppSize], a
 
 .next
 
@@ -345,7 +345,7 @@
 Serve2bppRequest::
 ; Only call during the first fifth of VBlank
 
-	ld a, [wRequested2bpp]
+	ld a, [wRequested2bppSize]
 	and a
 	ret z
 
@@ -358,12 +358,12 @@
 	jr _Serve2bppRequest
 
 Serve2bppRequest_VBlank::
-	ld a, [wRequested2bpp]
+	ld a, [wRequested2bppSize]
 	and a
 	ret z
 
 _Serve2bppRequest::
-; Copy [wRequested2bpp] 2bpp tiles from [wRequested2bppSource] to [wRequested2bppDest]
+; Copy [wRequested2bppSize] 2bpp tiles from [wRequested2bppSource] to [wRequested2bppDest]
 
 	ld [hSPBuffer], sp
 
@@ -381,11 +381,11 @@
 	ld l, a
 
 ; # tiles to copy
-	ld a, [wRequested2bpp]
+	ld a, [wRequested2bppSize]
 	ld b, a
 
 	xor a
-	ld [wRequested2bpp], a
+	ld [wRequested2bppSize], a
 
 .next
 
--- a/maps/AzaleaPokecenter1F.asm
+++ b/maps/AzaleaPokecenter1F.asm
@@ -36,8 +36,7 @@
 	line "fainted."
 	done
 
-AzaleaPokecenter1FUnusedText:
-; unreferenced
+AzaleaPokecenter1FUnusedText: ; unreferenced
 	text "This BILL guy"
 	line "created the system"
 
--- a/maps/AzaleaTown.asm
+++ b/maps/AzaleaTown.asm
@@ -143,8 +143,7 @@
 	closetext
 	end
 
-UnusedWoosterScript:
-; unused
+UnusedWoosterScript: ; unreferenced
 	faceplayer
 	opentext
 	writetext WoosterText
--- a/maps/BattleTower1F.asm
+++ b/maps/BattleTower1F.asm
@@ -364,7 +364,7 @@
 	line "your BATTLE ROOM."
 	done
 
-Text_BattleTowerIntroduction_1:
+Text_BattleTowerIntroduction_1: ; unreferenced
 	text "BATTLE TOWER is a"
 	line "facility made for"
 	cont "#MON battles."
@@ -473,7 +473,7 @@
 	line "this monitor."
 	done
 
-Text_ThankYou:
+Text_ThankYou: ; unreferenced
 	text "Thank you!"
 
 	para ""
@@ -484,7 +484,7 @@
 	line "visiting!"
 	done
 
-Text_BeatenAllTheTrainers_Mobile:
+Text_BeatenAllTheTrainers_Mobile: ; unreferenced
 	text "Congratulations!"
 
 	para "You've beaten all"
@@ -514,7 +514,7 @@
 	para ""
 	done
 
-Text_AskRegisterRecord_Mobile:
+Text_AskRegisterRecord_Mobile: ; unreferenced
 	text "Would you like to"
 	line "register your"
 
@@ -539,7 +539,7 @@
 	line "and come back."
 	done
 
-Text_YourRegistrationIsComplete:
+Text_YourRegistrationIsComplete: ; unreferenced
 	text "Your registration"
 	line "is complete."
 
@@ -582,7 +582,7 @@
 	cont "deleted. OK?"
 	done
 
-Text_CheckTheLeaderHonorRoll:
+Text_CheckTheLeaderHonorRoll: ; unreferenced
 	text "Check the LEADER"
 	line "HONOR ROLL?"
 	done
@@ -639,7 +639,7 @@
 	text ". Ready?"
 	done
 
-Text_SaveBeforeConnecting_Mobile:
+Text_SaveBeforeConnecting_Mobile: ; unreferenced
 	text "Your session will"
 	line "be SAVED before"
 
@@ -673,7 +673,7 @@
 	line "ROOM challenge?"
 	done
 
-Text_RegisterRecordOnFile_Mobile:
+Text_RegisterRecordOnFile_Mobile: ; unreferenced
 	text "We have your"
 	line "previous record on"
 
@@ -714,8 +714,8 @@
 	cont "challenge."
 	done
 
-; a dupe?
-Text_RegisterRecordTimedOut_Mobile:
+Text_RegisterRecordTimedOut_Mobile: ; unreferenced
+; duplicate of Text_TooMuchTimeElapsedNoRegister
 	text "Sorry, but it's"
 	line "not possible to"
 
--- a/maps/BattleTowerBattleRoom.asm
+++ b/maps/BattleTowerBattleRoom.asm
@@ -131,7 +131,7 @@
 	closetext
 	end
 
-Text_ReturnedAfterSave_Mobile:
+Text_ReturnedAfterSave_Mobile: ; unreferenced
 	text "You'll be returned"
 	line "after you SAVE."
 	done
--- a/maps/BattleTowerOutside.asm
+++ b/maps/BattleTowerOutside.asm
@@ -30,8 +30,7 @@
 BattleTowerOutsideSign:
 	jumptext BattleTowerOutsideSignText
 
-BattleTowerOutsideYoungsterText_NotYetOpen:
-; unreferenced
+BattleTowerOutsideYoungsterText_NotYetOpen: ; unreferenced
 	text "Wow, the BATTLE"
 	line "TOWER is huge! My"
 
@@ -39,8 +38,7 @@
 	line "looking up at it."
 	done
 
-BattleTowerOutsideYoungsterText_Mobile:
-; unreferenced
+BattleTowerOutsideYoungsterText_Mobile: ; unreferenced
 	text "Wow, the BATTLE"
 	line "TOWER is huge!"
 
@@ -63,8 +61,7 @@
 	cont "in there!"
 	done
 
-BattleTowerOutsideBeautyText_NotYetOpen:
-; unreferenced
+BattleTowerOutsideBeautyText_NotYetOpen: ; unreferenced
 	text "What on earth do"
 	line "they do here?"
 
@@ -86,8 +83,7 @@
 	line "battle…"
 	done
 
-BattleTowerOutsideSailorText_Mobile:
-; unreferenced
+BattleTowerOutsideSailorText_Mobile: ; unreferenced
 	text "Ehehehe…"
 	line "I sneaked out of"
 	cont "work to come here."
@@ -108,8 +104,8 @@
 	line "all. That I must!"
 	done
 
-BattleTowerOutsideSignText_NotYetOpen:
-; unused; originally shown when the Battle Tower was closed
+BattleTowerOutsideSignText_NotYetOpen: ; unreferenced
+; originally shown when the Battle Tower was closed
 	text "BATTLE TOWER"
 	done
 
@@ -120,14 +116,14 @@
 	line "Trainer Challenge!"
 	done
 
-BattleTowerOutsideText_DoorsClosed:
-; unused; originally shown when the Battle Tower was closed
+BattleTowerOutsideText_DoorsClosed: ; unreferenced
+; originally shown when the Battle Tower was closed
 	text "The BATTLE TOWER's"
 	line "doors are closed…"
 	done
 
-BattleTowerOutsideText_DoorsOpen:
-; unused; originally shown after the Battle Tower opened
+BattleTowerOutsideText_DoorsOpen: ; unreferenced
+; originally shown after the Battle Tower opened
 	text "It's open!"
 	done
 
--- a/maps/BlackthornDragonSpeechHouse.asm
+++ b/maps/BlackthornDragonSpeechHouse.asm
@@ -18,12 +18,10 @@
 	closetext
 	end
 
-; unused
-BlackthornDragonSpeechHousePictureBookshelf:
+BlackthornDragonSpeechHousePictureBookshelf: ; unreferenced
 	jumpstd PictureBookshelfScript
 
-; unused
-BlackthornDragonSpeechHouseMagazineBookshelf:
+BlackthornDragonSpeechHouseMagazineBookshelf: ; unreferenced
 	jumpstd MagazineBookshelfScript
 
 BlackthornDragonSpeechHouseGrannyText:
--- a/maps/BurnedTowerB1F.asm
+++ b/maps/BurnedTowerB1F.asm
@@ -155,8 +155,7 @@
 	remove_sliding
 	step_end
 
-BurnedTowerUnusedMovement:
-; unreferenced
+BurnedTowerUnusedMovement: ; unreferenced
 	set_sliding
 	big_step DOWN
 	remove_sliding
--- a/maps/CeladonCity.asm
+++ b/maps/CeladonCity.asm
@@ -164,8 +164,7 @@
 	line "a sales clerk."
 	done
 
-CeladonCityLassText_Mobile:
-; unused
+CeladonCityLassText_Mobile: ; unreferenced
 	text "I love being"
 	line "surrounded by tall"
 	cont "buildings!"
--- a/maps/CeladonDeptStore6F.asm
+++ b/maps/CeladonDeptStore6F.asm
@@ -98,8 +98,7 @@
 CeladonDeptStore6FDirectory:
 	jumptext CeladonDeptStore6FDirectoryText
 
-; unused
-CeladonDeptStore6FElevatorButton:
+CeladonDeptStore6FElevatorButton: ; unreferenced
 	jumpstd ElevatorButtonScript
 
 CeladonVendingText:
--- a/maps/CeladonGameCorner.asm
+++ b/maps/CeladonGameCorner.asm
@@ -141,8 +141,7 @@
 	closetext
 	end
 
-CeladonGameCornerUnusedMovementData:
-; unreferenced
+CeladonGameCornerUnusedMovementData: ; unreferenced
 	step RIGHT
 	turn_head LEFT
 	step_end
--- a/maps/CeladonMansion3F.asm
+++ b/maps/CeladonMansion3F.asm
@@ -57,8 +57,7 @@
 	closetext
 	end
 
-.CancelPrinting:
-; unused
+.CancelPrinting: ; unreferenced
 	writetext GameFreakGraphicArtistErrorText
 	waitbutton
 	closetext
--- a/maps/CherrygroveCity.asm
+++ b/maps/CherrygroveCity.asm
@@ -317,7 +317,7 @@
 	turn_head UP
 	step_end
 
-CherrygroveCity_UnusedMovementData:
+CherrygroveCity_UnusedMovementData: ; unreferenced
 	step LEFT
 	turn_head DOWN
 	step_end
--- a/maps/CianwoodCity.asm
+++ b/maps/CianwoodCity.asm
@@ -118,8 +118,7 @@
 CianwoodCityLass:
 	jumptextfaceplayer CianwoodCityLassText
 
-CianwoodCityUnusedScript:
-; unreferenced
+CianwoodCityUnusedScript: ; unreferenced
 	jumptextfaceplayer CianwoodCityUnusedText
 
 CianwoodCitySign:
@@ -266,7 +265,6 @@
 	done
 
 CianwoodCityUnusedText:
-; unused
 	text "There are several"
 	line "islands between"
 	cont "here and OLIVINE."
--- a/maps/CianwoodPokecenter1F.asm
+++ b/maps/CianwoodPokecenter1F.asm
@@ -89,8 +89,7 @@
 	cont "looking at you!"
 	done
 
-CianwoodPokecenter1FUnusedText1:
-; unreferenced
+CianwoodPokecenter1FUnusedText1: ; unreferenced
 	text "Don't you get the"
 	line "urge to show off"
 
@@ -104,8 +103,7 @@
 	line "in VIOLET."
 	done
 
-CianwoodPokecenter1FUnusedText2:
-; unreferenced
+CianwoodPokecenter1FUnusedText2: ; unreferenced
 	text "I've been battling"
 	line "my pal in VIOLET"
 
--- a/maps/DayCare.asm
+++ b/maps/DayCare.asm
@@ -78,7 +78,7 @@
 	line "for you."
 	done
 
-Text_DayCareManTalksAboutEggTicket:
+Text_DayCareManTalksAboutEggTicket: ; unreferenced
 	text "I'm the DAY-CARE"
 	line "MAN."
 
@@ -125,7 +125,7 @@
 	line "yours to keep!"
 	done
 
-DayCareText_ComeAgain:
+DayCareText_ComeAgain: ; unreferenced
 	text "Come again."
 	done
 
--- a/maps/DragonsDenB1F.asm
+++ b/maps/DragonsDenB1F.asm
@@ -56,7 +56,7 @@
 	giveitem TM_DRAGONBREATH
 	iffalse .BagFull
 	getitemname STRING_BUFFER_3, TM_DRAGONBREATH
-	writetext NotifyReceiveDragonbreath
+	writetext Text_ReceivedTM24
 	playsound SFX_ITEM
 	waitsfx
 	itemnotify
@@ -214,7 +214,7 @@
 	line "my apology."
 	done
 
-NotifyReceiveDragonbreath:
+Text_ReceivedTM24:
 	text "<PLAYER> received"
 	line "TM24."
 	done
--- a/maps/EarlsPokemonAcademy.asm
+++ b/maps/EarlsPokemonAcademy.asm
@@ -138,8 +138,7 @@
 	closetext
 	end
 
-AcademyStickerMachine:
-; unused
+AcademyStickerMachine: ; unreferenced
 	jumptext AcademyStickerMachineText
 
 AcademyBookshelf:
@@ -271,8 +270,7 @@
 	line "battle."
 	done
 
-AcademyBlackboardText2:
-; unused
+AcademyBlackboardText2: ; unreferenced
 	text "Read which topic?"
 	done
 
--- a/maps/EcruteakCity.asm
+++ b/maps/EcruteakCity.asm
@@ -88,8 +88,7 @@
 EcruteakCityHiddenHyperPotion:
 	hiddenitem HYPER_POTION, EVENT_ECRUTEAK_CITY_HIDDEN_HYPER_POTION
 
-UnusedMissingDaughterText:
-; unused
+UnusedMissingDaughterText: ; unreferenced
 	text "Oh, no. Oh, no…"
 
 	para "My daughter is"
--- a/maps/ElmsHouse.asm
+++ b/maps/ElmsHouse.asm
@@ -43,15 +43,13 @@
 	cont "professor!"
 	done
 
-ElmsHouseLabFoodText:
-; unused
+ElmsHouseLabFoodText: ; unreferenced
 	text "There's some food"
 	line "here. It must be"
 	cont "for the LAB."
 	done
 
-ElmsHousePokemonFoodText:
-; unused
+ElmsHousePokemonFoodText: ; unreferenced
 	text "There's some food"
 	line "here. This must be"
 	cont "for #MON."
--- a/maps/ElmsLab.asm
+++ b/maps/ElmsLab.asm
@@ -601,8 +601,7 @@
 ElmsLabPC:
 	jumptext ElmsLabPCText
 
-ElmsLabTrashcan2:
-; unused
+ElmsLabTrashcan2: ; unreferenced
 	jumpstd TrashCanScript
 
 ElmsLabBookshelf:
@@ -1209,7 +1208,7 @@
 	line "PROF.OAK in KANTO!"
 	done
 
-ElmsLabSignpostText_Egg:
+ElmsLabMonEggText: ; unreferenced
 	text "It's the #MON"
 	line "EGG being studied"
 	cont "by PROF.ELM."
--- a/maps/GoldenrodBikeShop.asm
+++ b/maps/GoldenrodBikeShop.asm
@@ -39,8 +39,7 @@
 	closetext
 	end
 
-GoldenrodBikeShopJustReleasedCompactBike:
-; unused
+GoldenrodBikeShopJustReleasedCompactBike: ; unreferenced
 	jumptext GoldenrodBikeShopJustReleasedCompactBikeText
 
 GoldenrodBikeShopBicycle:
--- a/maps/GoldenrodCity.asm
+++ b/maps/GoldenrodCity.asm
@@ -476,8 +476,7 @@
 	line "ENTRANCE"
 	done
 
-GoldenrodCityPokeComCenterSignText:
-; unused
+GoldenrodCityPokeComCenterSignText: ; unreferenced
 	text "For Mobile Tips!"
 	line "#COM CENTER"
 	done
--- a/maps/GoldenrodDeptStore2F.asm
+++ b/maps/GoldenrodDeptStore2F.asm
@@ -39,8 +39,7 @@
 GoldenrodDeptStore2FElevatorButton:
 	jumpstd ElevatorButtonScript
 
-GoldenrodDeptStore2FUnusedText1:
-; unused
+GoldenrodDeptStore2FUnusedText1: ; unreferenced
 	text "We intend to sell"
 	line "items for #MON"
 	cont "to hold."
@@ -50,8 +49,7 @@
 	cont "MON hold it."
 	done
 
-GoldenrodDeptStore2FUnusedText2:
-; unused
+GoldenrodDeptStore2FUnusedText2: ; unreferenced
 	text "By giving #MON"
 	line "items to hold, I"
 
--- a/maps/GoldenrodFlowerShop.asm
+++ b/maps/GoldenrodFlowerShop.asm
@@ -73,16 +73,13 @@
 	closetext
 	end
 
-FlowerShopShelf1:
-; unused
+FlowerShopShelf1: ; unreferenced
 	jumpstd PictureBookshelfScript
 
-FlowerShopShelf2:
-; unused
+FlowerShopShelf2: ; unreferenced
 	jumpstd MagazineBookshelfScript
 
-FlowerShopRadio:
-; unused
+FlowerShopRadio: ; unreferenced
 	jumpstd Radio2Script
 
 GoldenrodFlowerShopTeacherMySisterWentToSeeWigglyTreeRoute36Text:
--- a/maps/GoldenrodPokecenter1F.asm
+++ b/maps/GoldenrodPokecenter1F.asm
@@ -149,8 +149,7 @@
 	step DOWN
 	step_end
 
-; unused
-UnknownText_0x61072:
+UnknownText_0x61072: ; unreferenced
 	text "Hello! Welcome to"
 	line "#COM CENTER"
 	cont "TRADE CORNER."
@@ -160,7 +159,7 @@
 	cont "people far away."
 	done
 
-UnknownText_0x610ce:
+UnknownText_0x610ce: ; unreferenced
 	text "To make a trade,"
 	line "we must hold your"
 	cont "#MON."
@@ -169,13 +168,13 @@
 	line "trade?"
 	done
 
-UnknownText_0x61111:
+UnknownText_0x61111: ; unreferenced
 	text "What kind of"
 	line "#MON do you"
 	cont "want in return?"
 	done
 
-UnknownText_0x6113b:
+UnknownText_0x6113b: ; unreferenced
 	text "Fine. We will try"
 	line "to trade your"
 
@@ -195,7 +194,7 @@
 	cont "room for it."
 	done
 
-UnknownText_0x611c9:
+UnknownText_0x611c9: ; unreferenced
 	text "Fine. We will try"
 	line "to trade your"
 
@@ -214,7 +213,7 @@
 	cont "room for it."
 	done
 
-UnknownText_0x61271:
+UnknownText_0x61271: ; unreferenced
 	text "Your trade #MON"
 	line "has been received."
 
@@ -225,7 +224,7 @@
 	line "come back later."
 	done
 
-UnknownText_0x612d8:
+UnknownText_0x612d8: ; unreferenced
 	text "Oh? You have only"
 	line "one #MON in"
 	cont "your party. "
@@ -236,28 +235,28 @@
 	cont "of your party."
 	done
 
-UnknownText_0x61344:
+UnknownText_0x61344: ; unreferenced
 	text "We hope to see you"
 	line "again."
 	done
 
-UnknownText_0x6135f:
+UnknownText_0x6135f: ; unreferenced
 	text "Communication"
 	line "error…"
 	done
 
-UnknownText_0x61375:
+UnknownText_0x61375: ; unreferenced
 	text "If we accept that"
 	line "#MON, what will"
 	cont "you battle with?"
 	done
 
-UnknownText_0x613a9:
+UnknownText_0x613a9: ; unreferenced
 	text "Sorry. We can't"
 	line "accept an EGG."
 	done
 
-UnknownText_0x613c8:
+UnknownText_0x613c8: ; unreferenced
 	text "Sorry, but your"
 	line "#MON appears to"
 
@@ -265,13 +264,13 @@
 	line "can't accept it."
 	done
 
-UnknownText_0x61409:
+UnknownText_0x61409: ; unreferenced
 	text "Oh? Aren't we"
 	line "already holding a"
 	cont "#MON of yours?"
 	done
 
-UnknownText_0x61438:
+UnknownText_0x61438: ; unreferenced
 	text "We'll check the"
 	line "rooms."
 
@@ -278,7 +277,7 @@
 	para "Please wait."
 	done
 
-UnknownText_0x6145c:
+UnknownText_0x6145c: ; unreferenced
 	text "Thank you for your"
 	line "patience."
 
@@ -286,7 +285,7 @@
 	line "has been found."
 	done
 
-UnknownText_0x6149a:
+UnknownText_0x6149a: ; unreferenced
 	text "It's your new"
 	line "partner."
 
@@ -297,7 +296,7 @@
 	line "again."
 	done
 
-UnknownText_0x614ed:
+UnknownText_0x614ed: ; unreferenced
 	text "Uh-oh. Your party"
 	line "is already full."
 
@@ -306,7 +305,7 @@
 	cont "in your party."
 	done
 
-UnknownText_0x61544:
+UnknownText_0x61544: ; unreferenced
 	text "It's unfortunate,"
 	line "but no one has"
 
@@ -317,12 +316,12 @@
 	line "your #MON back?"
 	done
 
-UnknownText_0x615a5:
+UnknownText_0x615a5: ; unreferenced
 	text "We have returned"
 	line "your #MON."
 	done
 
-UnknownText_0x615c2:
+UnknownText_0x615c2: ; unreferenced
 	text "It's unfortunate,"
 	line "but no one has"
 
@@ -339,18 +338,18 @@
 	line "return it to you."
 	done
 
-UnknownText_0x6166e:
+UnknownText_0x6166e: ; unreferenced
 	text "We hope to see you"
 	line "again."
 	done
 
-UnknownText_0x61689:
+UnknownText_0x61689: ; unreferenced
 	text "Fine. We will"
 	line "continue to hold"
 	cont "your #MON."
 	done
 
-UnknownText_0x616b4:
+UnknownText_0x616b4: ; unreferenced
 	text "Oh? You left your"
 	line "#MON with us"
 	cont "only recently."
@@ -359,23 +358,23 @@
 	line "later."
 	done
 
-UnknownText_0x616fb:
+UnknownText_0x616fb: ; unreferenced
 	text "We'll SAVE before"
 	line "connecting to the"
 	cont "CENTER."
 	done
 
-UnknownText_0x61727:
+UnknownText_0x61727: ; unreferenced
 	text "Which #MON do"
 	line "you want to trade?"
 	done
 
-UnknownText_0x61749:
+UnknownText_0x61749: ; unreferenced
 	text "Sorry, but we must"
 	line "cancel the trade."
 	done
 
-UnknownText_0x6176f:
+UnknownText_0x6176f: ; unreferenced
 	text "Oh!"
 
 	para "I see you have an"
@@ -388,7 +387,7 @@
 	line "special #MON!"
 	done
 
-UnknownText_0x617d2:
+UnknownText_0x617d2: ; unreferenced
 	text "Let me give you a"
 	line "quick briefing."
 
@@ -421,12 +420,12 @@
 	line "chosen room."
 	done
 
-UnknownText_0x6191f:
+UnknownText_0x6191f: ; unreferenced
 	text "Please wait a"
 	line "moment."
 	done
 
-UnknownText_0x61936:
+UnknownText_0x61936: ; unreferenced
 	text "Thank you for"
 	line "waiting."
 
@@ -439,7 +438,7 @@
 	line "with loving care."
 	done
 
-UnknownText_0x61996:
+UnknownText_0x61996: ; unreferenced
 	text "I'm awfully sorry."
 
 	para "The EGG TICKET"
@@ -447,17 +446,17 @@
 	cont "isn't running now."
 	done
 
-UnknownText_0x619db:
+UnknownText_0x619db: ; unreferenced
 	text "It's a #MON"
 	line "NEWS MACHINE."
 	done
 
-UnknownText_0x619f5:
+UnknownText_0x619f5: ; unreferenced
 	text "What would you"
 	line "like to do?"
 	done
 
-UnknownText_0x61a11:
+UnknownText_0x61a11: ; unreferenced
 	text "#MON NEWS is"
 	line "news compiled from"
 
@@ -492,22 +491,22 @@
 	line "in the NEWS!"
 	done
 
-UnknownText_0x61b7c:
+UnknownText_0x61b7c: ; unreferenced
 	text "Would you like to"
 	line "get the NEWS?"
 	done
 
-UnknownText_0x61b9d:
+UnknownText_0x61b9d: ; unreferenced
 	text "Reading the latest"
 	line "NEWS… Please wait."
 	done
 
-UnknownText_0x61bc4:
+UnknownText_0x61bc4: ; unreferenced
 	text "There is no old"
 	line "NEWS…"
 	done
 
-UnknownText_0x61bdb:
+UnknownText_0x61bdb: ; unreferenced
 	text "The NEWS data is"
 	line "corrupted."
 
@@ -515,7 +514,7 @@
 	line "the NEWS again."
 	done
 
-UnknownText_0x61c18:
+UnknownText_0x61c18: ; unreferenced
 	text "We're making"
 	line "preparations."
 
@@ -523,7 +522,7 @@
 	line "later."
 	done
 
-UnknownText_0x61c4b:
+UnknownText_0x61c4b: ; unreferenced
 	text "We will SAVE your"
 	line "progress before"
 
@@ -531,7 +530,7 @@
 	line "MACHINE."
 	done
 
-UnknownText_0x61c89:
+UnknownText_0x61c89: ; unreferenced
 	text "Whoa, this #MON"
 	line "CENTER is huge."
 
@@ -542,7 +541,7 @@
 	line "new machines too."
 	done
 
-UnknownText_0x61cef:
+UnknownText_0x61cef: ; unreferenced
 	text "I thought up a fun"
 	line "new thing for the"
 	cont "TRADE CORNER!"
@@ -570,7 +569,7 @@
 	line "friends!"
 	done
 
-UnknownText_0x61dfd:
+UnknownText_0x61dfd: ; unreferenced
 	text "They said you can"
 	line "trade #MON with"
 
@@ -581,7 +580,7 @@
 	line "adjusting things."
 	done
 
-UnknownText_0x61e5c:
+UnknownText_0x61e5c: ; unreferenced
 	text "Some girl I don't"
 	line "know sent me her"
 
@@ -592,7 +591,7 @@
 	line "you want."
 	done
 
-UnknownText_0x61eb2:
+UnknownText_0x61eb2: ; unreferenced
 	text "I received a"
 	line "female HOPPIP, but"
 	cont "its named STANLEY!"
@@ -601,7 +600,7 @@
 	line "name!"
 	done
 
-UnknownText_0x61efa:
+UnknownText_0x61efa: ; unreferenced
 	text "What is the NEWS"
 	line "MACHINE?"
 
@@ -610,7 +609,7 @@
 	cont "than the radio?"
 	done
 
-UnknownText_0x61f48:
+UnknownText_0x61f48: ; unreferenced
 	text "The #COM CENTER"
 	line "will link with all"
 
@@ -624,7 +623,7 @@
 	line "sorts of people."
 	done
 
-UnknownText_0x61fc9:
+UnknownText_0x61fc9: ; unreferenced
 	text "The machines here"
 	line "can't be used yet."
 
@@ -635,7 +634,7 @@
 	line "people."
 	done
 
-UnknownText_0x6202c:
+UnknownText_0x6202c: ; unreferenced
 	text "My friend was in"
 	line "the NEWS a while"
 
@@ -643,13 +642,13 @@
 	line "surprised!"
 	done
 
-UnknownText_0x6206d:
+UnknownText_0x6206d: ; unreferenced
 	text "I get anxious if I"
 	line "don't check out"
 	cont "the latest NEWS!"
 	done
 
-UnknownText_0x620a1:
+UnknownText_0x620a1: ; unreferenced
 	text "If I get in the"
 	line "NEWS and become"
 
@@ -673,7 +672,7 @@
 	line "afford to lose."
 	done
 
-UnknownText_0x62173:
+UnknownText_0x62173: ; unreferenced
 	text "I came over here"
 	line "when I got word"
 
@@ -691,7 +690,7 @@
 	line "preparations…"
 	done
 
-UnknownText_0x62222:
+UnknownText_0x62222: ; unreferenced
 	text "Just seeing all"
 	line "these new things"
 
@@ -732,7 +731,7 @@
 	line "again!"
 	done
 
-UnknownText_0x62370:
+UnknownText_0x62370: ; unreferenced
 	text "#COM CENTER"
 	line "1F INFORMATION"
 
@@ -746,7 +745,7 @@
 	line "#MON NEWS"
 	done
 
-UnknownText_0x623c7:
+UnknownText_0x623c7: ; unreferenced
 	text "It's a #MON"
 	line "NEWS MACHINE!"
 
--- a/maps/GoldenrodUnderground.asm
+++ b/maps/GoldenrodUnderground.asm
@@ -58,7 +58,7 @@
 	ifequal FRIDAY, .Friday
 	ifequal SATURDAY, .Saturday
 
-.Sunday:
+; Sunday
 	disappear GOLDENRODUNDERGROUND_GRAMPS
 	disappear GOLDENRODUNDERGROUND_OLDER_HAIRCUT_BROTHER
 	appear GOLDENRODUNDERGROUND_YOUNGER_HAIRCUT_BROTHER
--- a/maps/IlexForest.asm
+++ b/maps/IlexForest.asm
@@ -420,8 +420,7 @@
 IlexForestHiddenFullHeal:
 	hiddenitem FULL_HEAL, EVENT_ILEX_FOREST_HIDDEN_FULL_HEAL
 
-IlexForestBoulder:
-; unused
+IlexForestBoulder: ; unreferenced
 	jumpstd StrengthBoulderScript
 
 IlexForestSignpost:
--- a/maps/LakeOfRageMagikarpHouse.asm
+++ b/maps/LakeOfRageMagikarpHouse.asm
@@ -83,8 +83,7 @@
 	closetext
 	end
 
-LakeOfRageMagikarpHouseUnusedRecordSign:
-; unused
+LakeOfRageMagikarpHouseUnusedRecordSign: ; unreferenced
 	jumptext LakeOfRageMagikarpHouseUnusedRecordText
 
 MagikarpHouseBookshelf:
--- a/maps/LavRadioTower1F.asm
+++ b/maps/LavRadioTower1F.asm
@@ -72,8 +72,7 @@
 LavRadioTower1FPokeFluteSign:
 	jumptext LavRadioTower1FPokeFluteSignText
 
-LavRadioTower1FReferenceLibrary:
-; unreferenced
+LavRadioTower1FReferenceLibrary: ; unreferenced
 	jumptext LavRadioTower1FReferenceLibraryText
 
 LavRadioTower1FReceptionistText:
--- a/maps/LavenderNameRater.asm
+++ b/maps/LavenderNameRater.asm
@@ -18,8 +18,7 @@
 	closetext
 	end
 
-LavenderNameRaterUnusedBookshelf:
-; unused
+LavenderNameRaterUnusedBookshelf: ; unreferenced
 	jumpstd DifficultBookshelfScript
 
 LavenderNameRater_MapEvents:
--- a/maps/MahoganyRedGyaradosSpeechHouse.asm
+++ b/maps/MahoganyRedGyaradosSpeechHouse.asm
@@ -26,12 +26,10 @@
 	closetext
 	end
 
-MahoganyRedGyaradosSpeechHouseUnusedBookshelf1:
-; unused
+MahoganyRedGyaradosSpeechHouseUnusedBookshelf1: ; unreferenced
 	jumpstd PictureBookshelfScript
 
-MahoganyRedGyaradosSpeechHouseUnusedBookshelf2:
-; unused
+MahoganyRedGyaradosSpeechHouseUnusedBookshelf2: ; unreferenced
 	jumpstd MagazineBookshelfScript
 
 MahoganyRedGyaradosSpeechHouseBlackBeltText:
--- a/maps/ManiasHouse.asm
+++ b/maps/ManiasHouse.asm
@@ -83,7 +83,7 @@
 	closetext
 	end
 
-.nothingleft
+.nothingleft ; unreferenced
 	writetext ManiaText_ShuckleIsYourLastMon
 	waitbutton
 	closetext
@@ -95,8 +95,7 @@
 	closetext
 	end
 
-ManiasHouseUnusedBookshelf:
-; unused
+ManiasHouseUnusedBookshelf: ; unreferenced
 	jumpstd PictureBookshelfScript
 
 ManiaText_AskLookAfterShuckle:
--- a/maps/OaksLab.asm
+++ b/maps/OaksLab.asm
@@ -9,7 +9,7 @@
 
 	def_callbacks
 
-.DummyScene:
+.DummyScene: ; unreferenced
 	end
 
 Oak:
--- a/maps/OlivineCity.asm
+++ b/maps/OlivineCity.asm
@@ -281,8 +281,8 @@
 	line "Opening Now!"
 	done
 
-OlivineCityBattleTowerSignText_NotYetOpen:
-; unused; originally shown when the Battle Tower was closed
+OlivineCityBattleTowerSignText_NotYetOpen: ; unreferenced
+; originally shown when the Battle Tower was closed
 	text "BATTLE TOWER AHEAD"
 	done
 
--- a/maps/OlivineGoodRodHouse.asm
+++ b/maps/OlivineGoodRodHouse.asm
@@ -35,8 +35,7 @@
 	closetext
 	end
 
-GoodRodHouseBookshelf:
-; unused
+GoodRodHouseBookshelf: ; unreferenced
 	jumpstd PictureBookshelfScript
 
 OfferGoodRodText:
--- a/maps/OlivineGym.asm
+++ b/maps/OlivineGym.asm
@@ -145,7 +145,7 @@
 	line "this too…"
 	done
 
-Text_ReceivedTM09:
+Text_ReceivedTM09: ; unreferenced
 	text "<PLAYER> received"
 	line "TM09."
 	done
--- a/maps/OlivineLighthouse2F.asm
+++ b/maps/OlivineLighthouse2F.asm
@@ -162,8 +162,7 @@
 	line "I lose!"
 	done
 
-SailorHueyUnusedText:
-; unused
+SailorHueyUnusedText: ; unreferenced
 	text "What power!"
 	line "How would you like"
 
--- a/maps/OlivineLighthouse6F.asm
+++ b/maps/OlivineLighthouse6F.asm
@@ -27,7 +27,7 @@
 .BroughtSecretpotion:
 	writetext JasmineCureAmphyText
 	yesorno
-	iffalse .no
+	iffalse .Refused
 	writetext PlayerHandedSecretpotionText
 	promptbutton
 	takeitem SECRETPOTION
@@ -84,7 +84,7 @@
 	disappear OLIVINELIGHTHOUSE6F_JASMINE
 	end
 
-.no:
+.Refused:
 	writetext JasmineISeeText
 	waitbutton
 	closetext
@@ -97,8 +97,7 @@
 	closetext
 	end
 
-OlivineLighthouseUnusedDummyScript:
-; unused
+.Unused: ; unreferenced
 	end
 
 OlivineLighthouseAmphy:
--- a/maps/PlayersHouse2F.asm
+++ b/maps/PlayersHouse2F.asm
@@ -11,8 +11,7 @@
 	callback MAPCALLBACK_NEWMAP, .InitializeRoom
 	callback MAPCALLBACK_TILES, .SetUpTileDecorations
 
-; unused
-.Null:
+.DummyScene: ; unreferenced
 	end
 
 .InitializeRoom:
--- a/maps/Pokecenter2F.asm
+++ b/maps/Pokecenter2F.asm
@@ -97,7 +97,7 @@
 	iffalse .LinkedToFirstGen
 	special CheckBothSelectedSameRoom
 	iffalse .IncompatibleRooms
-	writetext Text_PleaseComeIn2
+	writetext Text_PleaseComeIn
 	waitbutton
 	closetext
 	scall Pokecenter2F_CheckGender
@@ -152,7 +152,7 @@
 	special TryQuickSave
 	iffalse .Mobile_DidNotSave
 	special Function1011f1
-	writetext Text_PleaseComeIn2
+	writetext Text_PleaseComeIn
 	waitbutton
 	closetext
 	setval FALSE
@@ -199,7 +199,7 @@
 	iffalse .LinkedToFirstGen
 	special CheckBothSelectedSameRoom
 	iffalse .IncompatibleRooms
-	writetext Text_PleaseComeIn2
+	writetext Text_PleaseComeIn
 	waitbutton
 	closetext
 	scall Pokecenter2F_CheckGender
@@ -256,7 +256,7 @@
 	special Function103780
 	iffalse .Mobile_DidNotSave
 	special Function1011f1
-	writetext Text_PleaseComeIn2
+	writetext Text_PleaseComeIn
 	waitbutton
 	closetext
 	setval FALSE
@@ -332,7 +332,7 @@
 
 .OK:
 	special EnterTimeCapsule
-	writetext Text_PleaseComeIn2
+	writetext Text_PleaseComeIn
 	waitbutton
 	closetext
 	scall TimeCapsuleScript_CheckPlayerGender
@@ -813,7 +813,7 @@
 	line "mobile phone?"
 	done
 
-Text_ThisWayToMobileRoom:
+Text_ThisWayToMobileRoom: ; unreferenced
 	text "This way to the"
 	line "MOBILE ROOM."
 	done
@@ -882,11 +882,11 @@
 	text "Please come again."
 	prompt
 
-Text_PleaseComeIn:
+Text_PleaseComeInDuplicate: ; unreferenced
 	text "Please come in."
 	prompt
 
-Text_TemporaryStagingInLinkRoom:
+Text_TemporaryStagingInLinkRoom: ; unreferenced
 	text "We'll put you in"
 	line "the link room for"
 	cont "the time being."
@@ -902,11 +902,11 @@
 	line "were chosen."
 	prompt
 
-Text_PleaseComeIn2:
+Text_PleaseComeIn:
 	text "Please come in."
 	done
 
-Text_PleaseEnter:
+Text_PleaseEnter: ; unreferenced
 	text "Please enter."
 	prompt
 
--- a/maps/RadioTower2F.asm
+++ b/maps/RadioTower2F.asm
@@ -16,8 +16,7 @@
 
 	def_callbacks
 
-RadioTower2FUnusedDummyScene:
-; unused
+RadioTower2FUnusedDummyScene: ; unreferenced
 	end
 
 RadioTower2FSuperNerdScript:
--- a/maps/Route12SuperRodHouse.asm
+++ b/maps/Route12SuperRodHouse.asm
@@ -32,8 +32,7 @@
 	closetext
 	end
 
-SuperRodHouseBookshelf:
-; unused
+SuperRodHouseBookshelf: ; unreferenced
 	jumpstd PictureBookshelfScript
 
 OfferSuperRodText:
--- a/maps/Route29.asm
+++ b/maps/Route29.asm
@@ -322,8 +322,7 @@
 	line "progress."
 	done
 
-; unused
-Text_WaitingForDay:
+Text_WaitingForDay: ; unreferenced
 	text "I'm waiting for"
 	line "#MON that"
 
--- a/maps/Route2NuggetHouse.asm
+++ b/maps/Route2NuggetHouse.asm
@@ -23,8 +23,7 @@
 	closetext
 	end
 
-Route2NuggetHouseBookshelf:
-; unused
+Route2NuggetHouseBookshelf: ; unreferenced
 	jumpstd DifficultBookshelfScript
 
 Route2NuggetHouseFisherText:
--- a/maps/Route32.asm
+++ b/maps/Route32.asm
@@ -542,7 +542,6 @@
 	done
 
 Route32CooltrainerMText_UnusedSproutTower:
-; unused
 	text "Have you gone to"
 	line "SPROUT TOWER?"
 
@@ -679,9 +678,7 @@
 	line "as you can, kid!"
 	done
 
-; --- start a segment of unused text
-
-Route32UnusedFisher1SeenText:
+Route32UnusedFisher1SeenText: ; unreferenced
 	text "I keep catching"
 	line "the same #MON…"
 
@@ -690,29 +687,29 @@
 	cont "around for me."
 	done
 
-Route32UnusedFisher1BeatenText:
+Route32UnusedFisher1BeatenText: ; unreferenced
 	text "Nothing ever goes"
 	line "right for me now…"
 	done
 
-Route32UnusedFisher1AfterText:
+Route32UnusedFisher1AfterText: ; unreferenced
 	text "How come the guy"
 	line "next to me catches"
 	cont "good #MON?"
 	done
 
-Route32UnusedFisher2SeenText:
+Route32UnusedFisher2SeenText: ; unreferenced
 	text "Heh, I'm on a roll"
 	line "today. How about a"
 	cont "battle, kid?"
 	done
 
-Route32UnusedFisher2BeatenText:
+Route32UnusedFisher2BeatenText: ; unreferenced
 	text "Oof. I wasn't"
 	line "lucky that time."
 	done
 
-Route32UnusedFisher2AfterText:
+Route32UnusedFisher2AfterText: ; unreferenced
 	text "You have to have a"
 	line "good ROD if you"
 
@@ -720,8 +717,6 @@
 	line "#MON."
 	done
 
-; --- end a segment of unused texts
-
 FisherHenrySeenText:
 	text "My #MON?"
 	line "Freshly caught!"
@@ -835,8 +830,7 @@
 	cont "in VIOLET CITY."
 	done
 
-Route32UnusedText:
-; unused
+Route32UnusedText: ; unreferenced
 	text "The fishermen"
 	line "yelled at me for"
 	cont "bugging them…"
--- a/maps/Route34.asm
+++ b/maps/Route34.asm
@@ -470,8 +470,7 @@
 	closetext
 	end
 
-Route34IlexForestSign:
-; unused
+Route34IlexForestSign: ; unreferenced
 	jumptext Route34IlexForestSignText
 
 Route34Sign:
@@ -516,7 +515,7 @@
 	line "passing stranger!"
 	done
 
-YoungsterSamuelMobileText:
+YoungsterSamuelMobileText: ; unreferenced
 	text "Have you been to"
 	line "GOLDENROD CITY?"
 
--- a/maps/Route36.asm
+++ b/maps/Route36.asm
@@ -489,7 +489,7 @@
 	cont "have this."
 	done
 
-UnusedReceivedTM08Text:
+Text_ReceivedTM08: ; unreferenced
 	text "<PLAYER> received"
 	line "TM08."
 	done
@@ -509,7 +509,7 @@
 	cont "smash 'em up!"
 	done
 
-UnusedOddTreeText:
+UnusedOddTreeText: ; unreferenced
 	text "An odd tree is"
 	line "blocking the way"
 	cont "to GOLDENROD CITY."
--- a/maps/Route36NationalParkGate.asm
+++ b/maps/Route36NationalParkGate.asm
@@ -463,7 +463,7 @@
 	closetext
 	end
 
-UnusedBugCatchingContestExplanationSign:
+UnusedBugCatchingContestExplanationSign: ; unreferenced
 ; duplicate of BugCatchingContestExplanationSign in Route35NationalParkGate.asm
 	jumptext UnusedBugCatchingContestExplanationText
 
@@ -795,10 +795,9 @@
 	line "win."
 	done
 
-UnusedSudowoodoText:
-; This text is unused and unreferenced in the final game.
-; The tree Pokémon is Sudowoodo.
-; The Silph Scope 2 was later reworked into the Squirtbottle.
+UnusedSilphScope2Text: ; unreferenced
+; This text is referring to Sudowoodo.
+; The SILPHSCOPE2 was later reworked into the SQUIRTBOTTLE.
 	text "I hear there's a"
 	line "#MON that looks"
 	cont "just like a tree."
--- a/maps/Route39Farmhouse.asm
+++ b/maps/Route39Farmhouse.asm
@@ -172,7 +172,7 @@
 	line "fer your trouble."
 	done
 
-Text_ReceivedTM13:
+Text_ReceivedTM13: ; unreferenced
 	text "<PLAYER> received"
 	line "TM13."
 	done
--- a/maps/Route40BattleTowerGate.asm
+++ b/maps/Route40BattleTowerGate.asm
@@ -18,7 +18,7 @@
 Route40BattleTowerGateTwinScript:
 	jumptextfaceplayer Route40BattleTowerGateTwinText
 
-UnknownText_0x9f66f:
+Route40BattleTowerGateUnusedText1: ; unreferenced
 	text "Did you come to"
 	line "see the BATTLE"
 	cont "TOWER too?"
@@ -27,7 +27,7 @@
 	line "can't go in yet."
 	done
 
-UnknownText_0x9f6ba:
+Route40BattleTowerGateUnusedText2: ; unreferenced
 	text "BATTLE TOWER has"
 	line "opened."
 
@@ -49,7 +49,7 @@
 	line "win special gifts."
 	done
 
-UnknownText_0x9f783:
+Route40BattleTowerGateUnusedText3: ; unreferenced
 	text "I'm going to train"
 	line "my #MON so I'll"
 
--- a/maps/Route41.asm
+++ b/maps/Route41.asm
@@ -125,8 +125,7 @@
 	closetext
 	end
 
-Route41Rock:
-; unused
+Route41Rock: ; unreferenced
 	jumpstd SmashRockScript
 
 Route41HiddenMaxEther:
--- a/maps/Route43Gate.asm
+++ b/maps/Route43Gate.asm
@@ -234,7 +234,7 @@
 	cont "you take it away?"
 	done
 
-Text_ReceivedTM30:
+Text_ReceivedTM30: ; unreferenced
 	text "<PLAYER> received"
 	line "TM30."
 	done
--- a/maps/Route45.asm
+++ b/maps/Route45.asm
@@ -285,7 +285,7 @@
 	closetext
 	end
 
-Route45DummyScript:
+Route45DummyScript: ; unreferenced
 	writetext Route45DummyText
 	waitbutton
 	closetext
--- a/maps/RuinsOfAlphAerodactylChamber.asm
+++ b/maps/RuinsOfAlphAerodactylChamber.asm
@@ -112,8 +112,7 @@
 	line "on the walls…"
 	done
 
-RuinsOfAlphAerodactylChamberUnownText:
-; unused
+RuinsOfAlphAerodactylChamberUnownText: ; unreferenced
 	text "It's UNOWN text!"
 	done
 
--- a/maps/RuinsOfAlphHoOhChamber.asm
+++ b/maps/RuinsOfAlphHoOhChamber.asm
@@ -113,8 +113,7 @@
 	line "on the walls…"
 	done
 
-RuinsOfAlphHoOhChamberUnownText:
-; unused
+RuinsOfAlphHoOhChamberUnownText: ; unreferenced
 	text "It's UNOWN text!"
 	done
 
--- a/maps/RuinsOfAlphKabutoChamber.asm
+++ b/maps/RuinsOfAlphKabutoChamber.asm
@@ -200,8 +200,7 @@
 	cont "this wall here…"
 	done
 
-RuinsOfAlphKabutoChamberUnusedText:
-; unused
+RuinsOfAlphKabutoChamberUnusedText: ; unreferenced
 	text "The patterns on"
 	line "the wall appear to"
 	cont "be words!"
@@ -224,8 +223,7 @@
 	line "on the walls…"
 	done
 
-RuinsOfAlphKabutoChamberUnownText:
-; unused
+RuinsOfAlphKabutoChamberUnownText: ; unreferenced
 	text "It's UNOWN text!"
 	done
 
--- a/maps/RuinsOfAlphOmanyteChamber.asm
+++ b/maps/RuinsOfAlphOmanyteChamber.asm
@@ -113,8 +113,7 @@
 	line "on the walls…"
 	done
 
-RuinsOfAlphOmanyteChamberUnownText:
-; unused
+RuinsOfAlphOmanyteChamberUnownText: ; unreferenced
 	text "It's UNOWN text!"
 	done
 
--- a/maps/RuinsOfAlphOutside.asm
+++ b/maps/RuinsOfAlphOutside.asm
@@ -110,7 +110,7 @@
 	closetext
 	end
 
-TrainerSuperNerdStan:
+TrainerSuperNerdStan: ; unreferenced
 	trainer SUPER_NERD, STAN, EVENT_BEAT_SUPER_NERD_STAN, SuperNerdStanSeenText, SuperNerdStanBeatenText, 0, .Script
 
 .Script:
--- a/maps/RuinsOfAlphResearchCenter.asm
+++ b/maps/RuinsOfAlphResearchCenter.asm
@@ -167,8 +167,7 @@
 	closetext
 	end
 
-RuinsOfAlphResearchCenterPhoto:
-; unreferenced
+RuinsOfAlphResearchCenterPhoto: ; unreferenced
 	jumptext RuinsOfAlphResearchCenterProfSilktreePhotoText
 
 RuinsOfAlphResearchCenterBookshelf:
@@ -307,8 +306,7 @@
 	cont "kinds of them…"
 	done
 
-RuinsOfAlphResearchCenterUnusedText1:
-; unused
+RuinsOfAlphResearchCenterUnusedText1: ; unreferenced
 	text "We think something"
 	line "caused the cryptic"
 
@@ -319,8 +317,7 @@
 	line "studies on that."
 	done
 
-RuinsOfAlphResearchCenterUnusedText2:
-; unused
+RuinsOfAlphResearchCenterUnusedText2: ; unreferenced
 	text "According to my"
 	line "research…"
 
@@ -374,7 +371,6 @@
 	done
 
 RuinsOfAlphResearchCenterProfSilktreePhotoText:
-; unused
 	text "It's a photo of"
 	line "the RESEARCH"
 
--- a/maps/TeamRocketBaseB2F.asm
+++ b/maps/TeamRocketBaseB2F.asm
@@ -731,7 +731,7 @@
 	cont "any need for it."
 	done
 
-RocketBaseReceivedHM06Text: ; unused
+RocketBaseReceivedHM06Text: ; unreferenced
 	text "<PLAYER> received"
 	line "HM06."
 	done
--- a/maps/TinTower9F.asm
+++ b/maps/TinTower9F.asm
@@ -9,13 +9,11 @@
 TinTower9FHPUp:
 	itemball HP_UP
 
-TinTower9FUnusedHoOhText:
-; unused
+TinTower9FUnusedHoOhText: ; unreferenced
 	text "HO-OH: Shaoooh!"
 	done
 
-TinTower9FUnusedLugiaText:
-; unused
+TinTower9FUnusedLugiaText: ; unreferenced
 	text "LUGIA: Gyaaan!"
 	done
 
--- a/maps/TradeCenter.asm
+++ b/maps/TradeCenter.asm
@@ -39,15 +39,14 @@
 	newloadmap MAPSETUP_LINKRETURN
 	end
 
-TradeCenterFriendScript:
-; unreferenced
+TradeCenterFriendScript: ; unreferenced
 	opentext
-	writetext .FriendReadyText
+	writetext TradeCenterFriendReadyText
 	waitbutton
 	closetext
 	end
 
-.FriendReadyText:
+TradeCenterFriendReadyText:
 	text "Your friend is"
 	line "ready."
 	done
--- a/maps/UnionCave1F.asm
+++ b/maps/UnionCave1F.asm
@@ -81,8 +81,7 @@
 UnionCave1FAwakening:
 	itemball AWAKENING
 
-UnionCave1FUnusedSign:
-; unused
+UnionCave1FUnusedSign: ; unreferenced
 	jumptext UnionCave1FUnusedSignText
 
 HikerRussellSeenText:
--- a/maps/VermilionFishingSpeechHouse.asm
+++ b/maps/VermilionFishingSpeechHouse.asm
@@ -12,8 +12,7 @@
 FishingDudesHousePhoto:
 	jumptext FishingDudesHousePhotoText
 
-FishingDudesHouseBookshelf:
-; unused
+FishingDudesHouseBookshelf: ; unreferenced
 	jumpstd PictureBookshelfScript
 
 FishingDudeText:
--- a/maps/VioletPokecenter1F.asm
+++ b/maps/VioletPokecenter1F.asm
@@ -157,8 +157,7 @@
 	line "take the EGG?"
 	done
 
-; unused
-VioletPokecenterFarawayLinkText:
+VioletPokecenterFarawayLinkText: ; unreferenced
 	text "I've been thinking"
 	line "it'd be great to"
 
@@ -169,8 +168,7 @@
 	line "far away."
 	done
 
-; unused
-VioletPokecenterMobileAdapterText:
+VioletPokecenterMobileAdapterText: ; unreferenced
 	text "I just battled a"
 	line "friend in CIANWOOD"
 	cont "over a link."
--- a/mobile/fixed_words.asm
+++ b/mobile/fixed_words.asm
@@ -1334,7 +1334,7 @@
 	jr nz, .asm_11c8c2
 	ret
 
-BCD2String:
+BCD2String: ; unreferenced
 	inc a
 	push af
 	and $f
@@ -1356,7 +1356,7 @@
 	ld [hli], a
 	ret
 
-MobileString_Page:
+MobileString_Page: ; unreferenced
 	db "ぺージ@"
 
 MobileString_Prev:
--- a/mobile/mobile_12.asm
+++ b/mobile/mobile_12.asm
@@ -1080,7 +1080,7 @@
 	call DelayFrames
 	jr asm_48972
 
-Function4895a:
+Function4895a: ; unreferenced
 	ldh a, [hJoyPressed]
 	and a
 	jr z, .asm_48965
@@ -1608,7 +1608,7 @@
 	call WaitBGMap
 	ret
 
-Function48ca3:
+Function48ca3: ; unreferenced
 	push af
 	push bc
 	push de
--- a/mobile/mobile_12_2.asm
+++ b/mobile/mobile_12_2.asm
@@ -332,7 +332,7 @@
 	pop af
 	ret
 
-Function4aa6e:
+Function4aa6e: ; unreferenced
 	pop af
 	ld de, SFX_WRONG
 	call PlaySFX
@@ -803,7 +803,7 @@
 	farcall ManagePokemonMoves
 	ret
 
-Function4ad67:
+Function4ad67: ; unreferenced
 	ret
 
 Function4ad68:
--- a/mobile/mobile_22.asm
+++ b/mobile/mobile_22.asm
@@ -507,7 +507,7 @@
 	call FarCopyBytes
 	ret
 
-Function893fe:
+Function893fe: ; unreferenced
 	call DisableLCD
 	call Function893ef
 	call EnableLCD
@@ -792,7 +792,7 @@
 	RGB 07, 07, 06
 	RGB 00, 00, 00
 
-Function895e6:
+Function895e6: ; unreferenced
 	ld a, 7
 	hlcoord 0, 0, wAttrmap
 	ld bc, SCREEN_WIDTH * SCREEN_HEIGHT
@@ -989,32 +989,33 @@
 	inc hl
 	ld b, 2
 
-ClearScreenArea:
-; clears an area of the screen
+Function896ff: ; unreferenced
 ; INPUT:
 ; hl = address of upper left corner of the area
 ; b = height
 ; c = width
 
-	ld a, " " ; blank tile
-	ld de, 20 ; screen width
-.loop
+; clears an area of the screen
+	ld a, " "
+	ld de, SCREEN_WIDTH
+.row_loop
 	push bc
 	push hl
-.innerLoop
+.col_loop
 	ld [hli], a
 	dec c
-	jr nz, .innerLoop
+	jr nz, .col_loop
 	pop hl
 	pop bc
 	add hl, de
 	dec b
-	jr nz, .loop
+	jr nz, .row_loop
 
+; alternates tiles $36 and $18 at the bottom of the area
 	dec hl
 	inc c
 	inc c
-.asm_89713
+.bottom_loop
 	ld a, $36
 	ld [hli], a
 	dec c
@@ -1022,7 +1023,7 @@
 	ld a, $18
 	ld [hli], a
 	dec c
-	jr nz, .asm_89713
+	jr nz, .bottom_loop
 	ret
 
 Function8971f:
@@ -1695,7 +1696,7 @@
 	farcall Function4a3a7
 	ret
 
-Function89b14:
+Function89b14: ; unreferenced
 	call ClearBGPalettes
 	call Function89b07
 	call Function89b00
@@ -4225,7 +4226,7 @@
 	pop af
 	ret
 
-Function8adbf:
+Function8adbf: ; unreferenced
 	call OpenSRAMBank4
 	ld hl, $a603
 	call Function89b45
--- a/mobile/mobile_22_2.asm
+++ b/mobile/mobile_22_2.asm
@@ -32,7 +32,7 @@
 .two
 	ret
 
-Function8b35d:
+Function8b35d: ; unreferenced
 	ld a, h
 	cp d
 	ret nz
@@ -40,7 +40,7 @@
 	cp e
 	ret
 
-Function8b363:
+Function8b363: ; unreferenced
 	push bc
 	farcall Mobile_AlwaysReturnNotCarry
 	pop bc
@@ -719,7 +719,7 @@
 	jr nz, .asm_8b780
 	jr Function8b79e
 
-Function8b787:
+Function8b787: ; unreferenced
 	ret
 
 Function8b788:
--- a/mobile/mobile_40.asm
+++ b/mobile/mobile_40.asm
@@ -429,7 +429,7 @@
 	farcall Mobile_ReloadMapPart
 	ret
 
-Function100327:
+Function100327: ; unreferenced
 	farcall HDMATransferTilemapToWRAMBank3
 	ret
 
@@ -523,7 +523,7 @@
 	call FarCopyWRAM
 	ret
 
-Function1003ab:
+Function1003ab: ; unreferenced
 	ld hl, w3_d000
 	ld de, wcc60
 	ld bc, $54
@@ -2217,29 +2217,29 @@
 Function100edf:
 	ld hl, Unknown_100fc0
 	ld c, 1
-	jr asm_100f02
+	jr Function100f02
 
 Function100ee6:
 	ld hl, Unknown_100fc0
 	ld c, 2
-	jr asm_100f02
+	jr Function100f02
 
 Function100eed:
 	ld hl, Unknown_100feb
 	ld c, 1
-	jr asm_100f02
+	jr Function100f02
 
 Function100ef4:
 	ld hl, Unknown_100ff3
 	ld c, 1
-	jr asm_100f02
+	jr Function100f02
 
-Function100efb:
+Function100efb: ; unreferenced
 	ld hl, Unknown_10102c
 	ld c, 1
-	jr asm_100f02
+	jr Function100f02
 
-asm_100f02:
+Function100f02:
 	ld a, c
 	ld [wStringBuffer2], a
 	; someting that was previously stored in de gets backed up to here
@@ -4812,7 +4812,7 @@
 	call ExitMenu
 	ret
 
-UnknownText_0x1021ea:
+UnknownText_0x1021ea: ; unreferenced
 	text_far UnknownText_0x1bd201
 	text_end
 
@@ -5169,7 +5169,7 @@
 	ld [wcd49], a
 	ret
 
-Function102480:
+Function102480: ; unreferenced
 	ld c, $32
 	call DelayFrames
 	ld a, [wcd49]
@@ -5183,7 +5183,7 @@
 	ld [wcd49], a
 	ret
 
-Function102496:
+Function102496: ; unreferenced
 	ld hl, wcd4e
 	dec [hl]
 	ret nz
--- a/mobile/mobile_41.asm
+++ b/mobile/mobile_41.asm
@@ -282,7 +282,7 @@
 	ld hl, sTrainerRankingTrainerBattles
 	jp StubbedTrainerRankings_Increment3Byte
 
-StubbedTrainerRankings_Unused1:
+StubbedTrainerRankings_Unused1: ; unreferenced
 	ret
 	ld hl, sTrainerRankingUnused1
 	jp StubbedTrainerRankings_Increment3Byte
@@ -362,7 +362,7 @@
 	ld hl, sTrainerRankingPhoneCalls
 	jr StubbedTrainerRankings_Increment3Byte
 
-StubbedTrainerRankings_Unused2:
+StubbedTrainerRankings_Unused2: ; unreferenced
 	ret
 	ld hl, sTrainerRankingUnused2
 	jr StubbedTrainerRankings_Increment3Byte
@@ -386,7 +386,7 @@
 	ld hl, sTrainerRankingTreeEncounters
 	jr StubbedTrainerRankings_Increment3Byte
 
-StubbedTrainerRankings_Unused3:
+StubbedTrainerRankings_Unused3: ; unreferenced
 	ret
 	ld hl, sTrainerRankingUnused3
 	jr StubbedTrainerRankings_Increment3Byte
@@ -431,8 +431,7 @@
 	ld bc, 1
 	jr StubbedTrainerRankings_Increment
 
-; unused
-StubbedTrainerRankings_Increment1Byte:
+StubbedTrainerRankings_Increment1Byte: ; unreferenced
 	push bc
 	ld bc, 0
 
@@ -556,9 +555,8 @@
 	call CloseSRAM
 	ret
 
-; Used in the Japanese version to initialize Trainer Rankings data
-; for a new save file. Unreferenced in the English version.
-InitializeTrainerRankings:
+InitializeTrainerRankings: ; unreferenced
+; Initializes Trainer Rankings data for a new save file in JP Crystal.
 	ld hl, sTrainerRankings
 	ld bc, sTrainerRankingsEnd - sTrainerRankings
 	xor a
@@ -807,8 +805,8 @@
 	or a
 	ret
 
-Function106331:
-; called by Mobile_DummyReturnFalse in Crystal-J
+Function106331: ; unreferenced
+; called by Mobile_DummyReturnFalse in JP Crystal
 	; check ~[s4_b000] == [s7_a800]
 	ld a, BANK(s4_b000)
 	call OpenSRAM
@@ -1028,7 +1026,7 @@
 	farcall LoadFrame
 	ret
 
-Function10649b:
+Function10649b: ; unreferenced
 	ld a, [wTextboxFrame]
 	maskbits NUM_FRAMES
 	ld bc, 6 * LEN_1BPP_TILE
@@ -1063,7 +1061,7 @@
 	ldh [rSVBK], a
 	jr asm_1064ed
 
-Function1064d8:
+Function1064d8: ; unreferenced
 	ldh a, [rSVBK]
 	push af
 	ld a, $6
@@ -1097,7 +1095,7 @@
 	ldh [rSVBK], a
 	ret
 
-Function10650a:
+Function10650a: ; unreferenced
 	ld de, MobilePhoneTilesGFX
 	lb bc, BANK(MobilePhoneTilesGFX), 17
 	call Get2bpp
--- a/mobile/mobile_42.asm
+++ b/mobile/mobile_42.asm
@@ -309,7 +309,7 @@
 	predef GetAnimatedFrontpic
 	ret
 
-Function108219:
+Function108219: ; unreferenced
 	ld [wCurPartySpecies], a
 	hlcoord 7, 2
 	ld d, $0
@@ -1557,7 +1557,7 @@
 	text_far _MobileForPartnersMonText
 	text_end
 
-.MobilePlayersMonTradeText:
+.MobilePlayersMonTradeText: ; unreferenced
 	text_far _MobilePlayersMonTradeText
 	text_end
 
@@ -1636,7 +1636,7 @@
 	ldh [rVBK], a
 	ret
 
-DebugMobileTrade:
+DebugMobileTrade: ; unreferenced
 ; localization error: NAME_LENGTH (11) should be NAME_LENGTH_JAPANESE (6) here
 
 	ld hl, .DebugTradeData
@@ -1741,7 +1741,7 @@
 MobileTradeAttrmapLZ:
 INCBIN "gfx/mobile/mobile_trade.attrmap.lz"
 
-UnusedMobilePulsePalettes:
+UnusedMobilePulsePalettes: ; unreferenced
 INCLUDE "gfx/mobile/unused_mobile_pulses.pal"
 
 MobileTradeBGPalettes:
--- a/mobile/mobile_45.asm
+++ b/mobile/mobile_45.asm
@@ -1959,7 +1959,7 @@
 	jr z, .asm_114c24
 	jr .asm_114c18
 
-Function114c55:
+Function114c55: ; unreferenced
 	push bc
 	ld bc, $dc00
 	call Function115d80
--- a/mobile/mobile_45_sprite_engine.asm
+++ b/mobile/mobile_45_sprite_engine.asm
@@ -475,7 +475,7 @@
 	ld [wc319], a
 	ret
 
-MenuHeader_11628c:
+MenuHeader_11628c: ; unreferenced
 	db MENU_BACKUP_TILES ; flags
 	menu_coords 0, 6, SCREEN_WIDTH - 1, SCREEN_HEIGHT - 1
 	dw NULL
--- a/mobile/mobile_46.asm
+++ b/mobile/mobile_46.asm
@@ -331,7 +331,7 @@
 	call BattleTowerRoomMenu_Cleanup
 	ret
 
-Function1182d5:
+Function1182d5: ; unreferenced
 	call BattleTowerRoomMenu_InitRAM
 	ld a, $18
 	ld [wcd33], a
@@ -1039,7 +1039,7 @@
 	ld a, $2
 	jp Function119e2b
 
-Function118896:
+Function118896: ; unreferenced
 	ld a, [wc821]
 	bit 1, a
 	jr nz, .asm_1188a5
@@ -1302,7 +1302,7 @@
 	ld [wMobileInactivityTimerFrames], a
 	ret
 
-Function118a54:
+Function118a54: ; unreferenced
 	ld a, [wcd55]
 	ld l, a
 	ld a, [wcd56]
@@ -1311,7 +1311,7 @@
 	ld bc, $0004
 	jp Function118ae4
 
-Function118a65:
+Function118a65: ; unreferenced
 	ld hl, BattleDownloadURL
 	ld de, wcc60
 	ld bc, $80
@@ -3530,7 +3530,7 @@
 XGameCode:
 	db "CGB-BXTJ-00", $0
 
-XGameResult:
+XGameResult: ; unreferenced
 	db "pokemon_crystal", $0
 
 popc
@@ -3861,7 +3861,7 @@
 	dw NULL
 	db 0 ; default option
 
-MenuData_119cff:
+MenuData_119cff: ; unreferenced
 	db MENU_BACKUP_TILES ; flags
 	menu_coords 15, 7, SCREEN_WIDTH - 1, TEXTBOX_Y - 1
 	dw NULL
@@ -4627,7 +4627,7 @@
 String_11a2d3:
 	db "NO@"
 
-MenuHeader_11a2d6:
+MenuHeader_11a2d6: ; unreferenced
 	db MENU_BACKUP_TILES ; flags
 	menu_coords 14, 6, SCREEN_WIDTH - 1, 10
 	dw NULL
@@ -5151,7 +5151,7 @@
 String_11a7f4:
 	db   "               @"
 
-MenuHeader_11a804:
+MenuHeader_11a804: ; unreferenced
 	db MENU_BACKUP_TILES ; flags
 	menu_coords 0, 0, SCREEN_WIDTH - 1, 5
 	dw NULL
@@ -5402,7 +5402,7 @@
 	and a
 	ret
 
-Function11a9f4:
+Function11a9f4: ; unreferenced
 	ld a, [wcd8a]
 	ld l, a
 	ld a, [wcd8b]
@@ -5443,12 +5443,12 @@
 	text "Quit reading NEWS?"
 	done
 
-Text_CanceledSendingSaveFile:
+Text_CanceledSendingSaveFile: ; unreferenced
 	text "Canceled sending"
 	line "SAVE FILE."
 	done
 
-Text_ReceivedOddEgg:
+Text_ReceivedOddEgg: ; unreferenced
 	text "ODD EGG"
 	line "was received!"
 	done
@@ -5458,7 +5458,7 @@
 	line "record…"
 	done
 
-Text_BattleRoomVisitLimit:
+Text_BattleRoomVisitLimit: ; unreferenced
 	text "One visit per day"
 	line "per BATTLE ROOM!"
 	done
@@ -5487,7 +5487,7 @@
 	line "HONOR ROLL?"
 	done
 
-Text_LinkingWithCenter:
+Text_LinkingWithCenter: ; unreferenced
 	text "Linking with the"
 	line "CENTER…"
 	done
@@ -5502,16 +5502,16 @@
 	line "list by max level?"
 	done
 
-Text_EnterWhichBattleRoom:
+Text_EnterWhichBattleRoom: ; unreferenced
 	text "Enter which"
 	line "BATTLE ROOM?"
 	done
 
-Text_WhichBattleRoom:
+Text_WhichBattleRoom: ; unreferenced
 	text "Which BATTLE ROOM?"
 	done
 
-Text_ThisBattleRoomPleaseWait:
+Text_ThisBattleRoomPleaseWait: ; unreferenced
 	text_ram wStringBuffer3
 	text "'s ROOM"
 	line "@"
@@ -6379,7 +6379,7 @@
 	scf
 	ret
 
-Function11b1f7:
+FillScreenWithTile32: ; unreferenced
 	hlcoord 0, 0
 	ld a, $32
 	ld bc, SCREEN_WIDTH * SCREEN_HEIGHT
@@ -6386,14 +6386,14 @@
 	call ByteFill
 	ret
 
-Function11b203:
-.asm_11b203
+CopyDataUntilFF: ; unreferenced
+.loop
 	ld a, [de]
 	cp $ff
 	ret z
 	inc de
 	ld [hli], a
-	jr .asm_11b203
+	jr .loop
 
 Function11b20b:
 	ld a, [wc7d1]
@@ -6554,10 +6554,10 @@
 	call PlaceString
 	ret
 
-String_11b2fe:
+String_11b2fe: ; unreferenced
 	db "あげる#@"
 
-String_11b303:
+String_11b303: ; unreferenced
 	db "ほしい#@"
 
 String_11b308:
--- a/mobile/mobile_5c.asm
+++ b/mobile/mobile_5c.asm
@@ -93,7 +93,7 @@
 	call CloseSRAM
 	ret
 
-Function170c06:
+Function170c06: ; unreferenced
 	ld a, $5
 	call OpenSRAM
 	ld hl, $a894
--- a/mobile/mobile_5e.asm
+++ b/mobile/mobile_5e.asm
@@ -186,7 +186,7 @@
 	farcall ReloadMapPart
 	ret
 
-Function17a7a6:
+Function17a7a6: ; unreferenced
 	ld a, [$d087]
 	inc a
 	ld [$d087], a
--- a/mobile/mobile_5f.asm
+++ b/mobile/mobile_5f.asm
@@ -1882,7 +1882,7 @@
 	call Function17e40f
 	ret
 
-MenuData_17dc96:
+MenuData_17dc96: ; unreferenced
 	db STATICMENU_CURSOR | STATICMENU_NO_TOP_SPACING | STATICMENU_WRAP ; flags
 	db 2
 	db "はい@"
@@ -4645,7 +4645,7 @@
 	dw MobileErrorCode_101_009_Text
 	dw MobileErrorCode_101_009_Text
 
-Palette_17f6af:
+Palette_17f6af: ; unreferenced
 	RGB  5,  5, 16
 	RGB  8, 19, 28
 	RGB  0,  0,  0
@@ -4678,7 +4678,7 @@
 MobileCommunicationErrorText:
 	db "つうしんエラー   ー@"
 
-String_17f6e8:
+String_17f6e8: ; unreferenced
 	db   "みていぎ<NO>エラーです"
 	next "プログラム<WO>"
 	next "かくにん してください"
@@ -5115,7 +5115,7 @@
 	next "せつめいしょを ごらんください"
 	db   "@"
 
-String_17fe9a: ; unused
+String_17fe9a: ; unreferenced
 ; Cannot send your save data because Pokémon News is being updated.
 ; Please send your save data after loading new Pokémon News.
 	db   "ポケモンニュースが"
--- a/mobile/mobile_menu.asm
+++ b/mobile/mobile_menu.asm
@@ -108,24 +108,20 @@
 	db   "@"
 
 MobileStrings2:
-
+; string 0
 String_0x49fe9:
 	db   "めいし¯つくったり"
 	next "ほぞんしておける フォルダーです@"
-
-String_0x4a004:
+; string 1
 	db   "モバイルたいせんや じぶんのめいしで"
 	next "つかう あいさつ¯つくります@"
-
-String_0x4a026:
+; string 2
 	db   "あなた<NO>じゅうしょや ねんれいの"
 	next "せ<TTE>い¯かえられます@"
-
-String_0x4a042:
+; string 3
 	db  "モバイルセンター<NI>せつぞくするとき"
 	next "ひつような こと¯きめます@"
-
-String_0x4a062:
+; string 4
 	db   "まえ<NO>がめん <NI>もどります"
 	next "@"
 
@@ -446,7 +442,7 @@
 	xor a
 	ret
 
-MenuHeader_0x4a346:
+MenuHeader_0x4a346: ; unreferenced
 	db MENU_BACKUP_TILES ; flags
 	menu_coords 12, 0, SCREEN_WIDTH - 1, 6
 
@@ -502,7 +498,7 @@
 	ld [hli], a
 	ret
 
-Function4a39a:
+Function4a39a: ; unreferenced
 	call Function4a485
 	call Function4a492
 	call Function4a3aa
@@ -574,7 +570,7 @@
 	call Function4a6d8
 	ret
 
-Function4a449:
+Function4a449: ; unreferenced
 	ld bc, 3 * SCREEN_WIDTH
 	ld a, $0
 	hlcoord 0, 0
--- a/mobile/news/news.asm
+++ b/mobile/news/news.asm
@@ -28,7 +28,7 @@
 .news_data
 INCBIN "mobile/news/news_2.bin"
 
-Function1f5d9f:
+Function1f5d9f: ; unreferenced
 	ld a, BANK(s6_a000)
 	call OpenSRAM
 	ld hl, .news_data
--- a/sram.asm
+++ b/sram.asm
@@ -1,6 +1,6 @@
 SECTION "Scratch", SRAM
 
-sScratch:: ds $600
+sScratch:: ds $60 tiles
 
 
 SECTION "SRAM Bank 0", SRAM
@@ -22,7 +22,7 @@
 sPartyMon6MailBackup:: mailmsg sPartyMon6MailBackup
 
 sMailboxCount:: db
-sMailbox::
+sMailboxes::
 sMailbox1::  mailmsg sMailbox1
 sMailbox2::  mailmsg sMailbox2
 sMailbox3::  mailmsg sMailbox3
@@ -35,7 +35,7 @@
 sMailbox10:: mailmsg sMailbox10
 
 sMailboxCountBackup:: db
-sMailboxBackup::
+sMailboxesBackup::
 sMailbox1Backup::  mailmsg sMailbox1Backup
 sMailbox2Backup::  mailmsg sMailbox2Backup
 sMailbox3Backup::  mailmsg sMailbox3Backup
@@ -54,8 +54,7 @@
 sDailyMysteryGiftPartnerIDs:: ds 5 * 2 ; maximum 5 per day, 2 bytes per ID
 sMysteryGiftDecorationsReceived:: flag_array NUM_NON_TROPHY_DECOS
 	ds 4
-sMysteryGiftTimer:: db
-sMysteryGiftTimerStartDay:: db
+sMysteryGiftTimer:: dw
 	ds 1
 sMysteryGiftTrainerHouseFlag:: db
 sMysteryGiftPartnerName:: ds NAME_LENGTH
@@ -194,7 +193,6 @@
 ; 2: battle tower
 	db
 
-sBattleTower::
 sNrOfBeatenBattleTowerTrainers:: db
 sBTChoiceOfLevelGroup:: db
 ; Battle Tower trainers are saved here, so nobody appears more than once
--- a/wram.asm
+++ b/wram.asm
@@ -10,7 +10,6 @@
 
 wStackBottom::
 	ds $100 - 1
-wStack::
 wStackTop::
 	ds 1
 
@@ -17,18 +16,16 @@
 
 SECTION "Audio RAM", WRAM0
 
-wMusic::
-
 ; nonzero if playing
 wMusicPlaying:: db
 
-wChannels::
+wAudio::
+
 wChannel1:: channel_struct wChannel1
 wChannel2:: channel_struct wChannel2
 wChannel3:: channel_struct wChannel3
 wChannel4:: channel_struct wChannel4
 
-wSFXChannels::
 wChannel5:: channel_struct wChannel5
 wChannel6:: channel_struct wChannel6
 wChannel7:: channel_struct wChannel7
@@ -118,12 +115,12 @@
 wCurSFX::
 ; id of sfx currently playing
 	db
-wChannelsEnd::
 
+wAudioEnd::
+
 wMapMusic:: db
 
 wDontPlayMapMusicOnReload:: db
-wMusicEnd::
 
 
 SECTION "WRAM", WRAM0
@@ -169,7 +166,6 @@
 
 	ds 2
 
-wc2e2::
 wMovementObject::
 	db
 wMovementDataBank:: db
@@ -240,10 +236,6 @@
 wSpriteAnimationStructsEnd::
 
 NEXTU
-; dummy game
-wc300::
-
-NEXTU
 ; mobile data
 wMobileWRAM::
 wMobileErrorCodeBuffer:: ds 3
@@ -410,6 +402,7 @@
 
 wWildMon:: db
 	ds 1
+
 wEnemyTrainerItem1:: db
 wEnemyTrainerItem2:: db
 wEnemyTrainerBaseReward:: db
@@ -443,71 +436,17 @@
 ; nonzero for a miss
 	db
 
-wPlayerSubStatus1::
-; bit
-; 0 nightmare
-; 1 curse
-; 2 protect
-; 3 identified
-; 4 perish song
-; 5 endure
-; 6 rollout
-; 7 in love
-	db
-wPlayerSubStatus2::
-; bit
-; 0 curled
-; 1-7 unused
-	db
-wPlayerSubStatus3::
-; bit
-; 0 bide
-; 1 rampage
-; 2 in loop
-; 3 flinched
-; 4 charged
-; 5 underground
-; 6 flying
-; 7 confused
-	db
-wPlayerSubStatus4::
-; bit
-; 0 x accuracy
-; 1 mist
-; 2 focus energy
-; 3
-; 4 substitute
-; 5 recharge
-; 6 rage
-; 7 leech seed
-	db
-wPlayerSubStatus5::
-; bit
-; 0 toxic
-; 1
-; 2
-; 3 transformed
-; 4 encored
-; 5 lock-on
-; 6 destiny bond
-; 7 can't run
-	db
+wPlayerSubStatus1:: db
+wPlayerSubStatus2:: db
+wPlayerSubStatus3:: db
+wPlayerSubStatus4:: db
+wPlayerSubStatus5:: db
 
-wEnemySubStatus1::
-; see wPlayerSubStatus1
-	db
-wEnemySubStatus2::
-; see wPlayerSubStatus2
-	db
-wEnemySubStatus3::
-; see wPlayerSubStatus3
-	db
-wEnemySubStatus4::
-; see wPlayerSubStatus4
-	db
-wEnemySubStatus5::
-; see wPlayerSubStatus5
-	db
+wEnemySubStatus1:: db
+wEnemySubStatus2:: db
+wEnemySubStatus3:: db
+wEnemySubStatus4:: db
+wEnemySubStatus5:: db
 
 wPlayerRolloutCount:: db
 wPlayerConfuseCount:: db
@@ -528,7 +467,7 @@
 wEnemyProtectCount:: db
 
 wPlayerDamageTaken:: dw
-wEnemyDamageTaken:: dw
+wEnemyDamageTaken::  dw
 
 wBattleReward:: ds 3
 
@@ -543,56 +482,53 @@
 	ds 1
 
 wPlayerStats::
-wPlayerAttack:: dw
+wPlayerAttack::  dw
 wPlayerDefense:: dw
-wPlayerSpeed:: dw
-wPlayerSpAtk:: dw
-wPlayerSpDef:: dw
+wPlayerSpeed::   dw
+wPlayerSpAtk::   dw
+wPlayerSpDef::   dw
 	ds 1
 
 wEnemyStats::
-wEnemyAttack:: dw
+wEnemyAttack::  dw
 wEnemyDefense:: dw
-wEnemySpeed:: dw
-wEnemySpAtk:: dw
-wEnemySpDef:: dw
+wEnemySpeed::   dw
+wEnemySpAtk::   dw
+wEnemySpDef::   dw
 	ds 1
 
 wPlayerStatLevels::
-; 07 neutral
-wPlayerAtkLevel:: db
-wPlayerDefLevel:: db
-wPlayerSpdLevel:: db
+wPlayerAtkLevel::  db
+wPlayerDefLevel::  db
+wPlayerSpdLevel::  db
 wPlayerSAtkLevel:: db
 wPlayerSDefLevel:: db
-wPlayerAccLevel:: db
-wPlayerEvaLevel:: db
+wPlayerAccLevel::  db
+wPlayerEvaLevel::  db
 	ds 1
-wPlayerStatLevelsEnd::
 
 wEnemyStatLevels::
-; 07 neutral
-wEnemyAtkLevel:: db
-wEnemyDefLevel:: db
-wEnemySpdLevel:: db
+wEnemyAtkLevel::  db
+wEnemyDefLevel::  db
+wEnemySpdLevel::  db
 wEnemySAtkLevel:: db
 wEnemySDefLevel:: db
-wEnemyAccLevel:: db
-wEnemyEvaLevel:: db
+wEnemyAccLevel::  db
+wEnemyEvaLevel::  db
 	ds 1
 
-wEnemyTurnsTaken:: db
+wEnemyTurnsTaken::  db
 wPlayerTurnsTaken:: db
 	ds 1
 
 wPlayerSubstituteHP:: db
-wEnemySubstituteHP:: db
+wEnemySubstituteHP::  db
 
 wUnusedPlayerLockedMove:: db
 	ds 1
 
 wCurPlayerMove:: db
-wCurEnemyMove:: db
+wCurEnemyMove::  db
 
 wLinkBattleRNCount::
 ; how far through the prng stream
@@ -605,7 +541,7 @@
 wEnemyHPAtTimeOfPlayerSwitch:: dw
 wPayDayMoney:: ds 3
 
-wSafariMonAngerCount:: db
+wSafariMonAngerCount:: db ; unreferenced
 wSafariMonEating:: db
 	ds 1
 wEnemyBackupDVs:: dw ; used when enemy is transformed
@@ -703,7 +639,7 @@
 
 wGivingExperienceToExpShareHolders:: db
 
-wBackupEnemyMonBaseStats:: ds 5
+wBackupEnemyMonBaseStats:: ds NUM_EXP_STATS
 wBackupEnemyMonCatchRate:: db
 wBackupEnemyMonBaseExp:: db
 
@@ -859,7 +795,6 @@
 wTrademons::
 wPlayerTrademon:: trademon wPlayerTrademon
 wOTTrademon::     trademon wOTTrademon
-wTrademonsEnd::
 wTradeAnimAddress:: dw
 wLinkPlayer1Name:: ds NAME_LENGTH
 wLinkPlayer2Name:: ds NAME_LENGTH
@@ -902,18 +837,15 @@
 
 NEXTU
 ; card flip
-wCardFlip::
-wDeck:: ds 24
+wDeck:: ds 4 * 6
 wDeckEnd::
 wCardFlipNumCardsPlayed:: db
 wCardFlipFaceUpCard:: db
-wDiscardPile:: ds 24
+wDiscardPile:: ds 4 * 6
 wDiscardPileEnd::
-wCardFlipEnd::
 
 NEXTU
 ; dummy game
-wDummyGame::
 wDummyGameCards:: ds 9 * 5
 wDummyGameCardsEnd::
 wDummyGameLastCardPicked:: db
@@ -925,7 +857,6 @@
 wDummyGameLastMatches:: ds 5
 wDummyGameCounter:: db
 wDummyGameNumCardsMatched:: db
-wDummyGameEnd::
 
 NEXTU
 ; mobile data
@@ -950,8 +881,7 @@
 wc7d0:: ds 1
 wc7d1:: ds 1
 wc7d2:: ds 1
-wc7d3:: ds 1
-wc7d4:: ds 1
+wc7d3:: ds 2
 ENDU
 
 ENDU
@@ -970,13 +900,8 @@
 wOverworldMapBlocksEnd::
 
 NEXTU
-; GB Printer screen RAM
-wGameboyPrinterRAM::
-wGameboyPrinterScreen:: ds SCREEN_HEIGHT * SCREEN_WIDTH
-wGameboyPrinterScreenEnd::
-
-NEXTU
 ; GB Printer data
+wGameboyPrinterRAM::
 wGameboyPrinter2bppSource:: ds 40 tiles
 wGameboyPrinter2bppSourceEnd::
 wca80:: db
@@ -1000,7 +925,6 @@
 
 ; tilemap backup?
 wPrinterTilemapBuffer:: ds SCREEN_HEIGHT * SCREEN_WIDTH
-wPrinterTilemapBufferEnd::
 wPrinterStatus:: db
 	ds 1
 ; High nibble is for margin before the image, low nibble is for after.
@@ -1060,7 +984,6 @@
 wTimeCapsulePartyMon6:: red_party_struct wTimeCapsulePartyMon6
 wTimeCapsulePartyMonOTNames:: ds PARTY_LENGTH * NAME_LENGTH
 wTimeCapsulePartyMonNicks:: ds PARTY_LENGTH * MON_NAME_LENGTH
-wTimeCapsulePlayerDataEnd::
 
 NEXTU
 ; link player data
@@ -1073,7 +996,6 @@
 wLinkPlayerPartyMon6:: party_struct wLinkPlayerPartyMon6
 wLinkPlayerPartyMonOTNames:: ds PARTY_LENGTH * NAME_LENGTH
 wLinkPlayerPartyMonNicks:: ds PARTY_LENGTH * MON_NAME_LENGTH
-wLinkPlayerDataEnd::
 ENDU
 
 NEXTU
@@ -1085,22 +1007,15 @@
 wMysteryGiftStaging:: ds 80
 
 NEXTU
-wc800:: ds 1
-wc801:: ds 1
-wc802:: ds 1
-wc803:: ds 4
-wc807:: ds 7
-wc80e:: ds 1
-wc80f:: ds 1
-wc810:: ds 1
-wc811:: ds 1
+	ds 7
+wc807:: ds 1
+	ds 10
 wMobileSDK_PacketChecksum:: dw
-wc814:: ds 4
+	ds 4
 wMobileSDK_AdapterType:: db
 	ds 5
 wMobileSDK_SendCommandID:: db
-	ds 1
-wc820:: ds 1
+	ds 2
 wc821:: ds 1
 wc822:: ds 46
 ENDU
@@ -1110,19 +1025,11 @@
 wMysteryGiftTrainerDataEnd::
 
 NEXTU
-wc850:: ds 16
-wc860:: ds 16
-wc870:: ds 16
-wc880:: ds 16
-wc890:: ds 16
-wc8a0:: ds 16
-wc8b0:: ds 16
-wc8c0:: ds 16
-wc8d0:: ds 16
-wc8e0:: ds 16
-wc8f0:: ds 16
+wMysteryGiftCardHolderName:: ds PLAYER_NAME_LENGTH
 ENDU
 
+	ds 138
+
 wMysteryGiftPartnerData::
 wc900:: db
 wMysteryGiftPartnerID:: dw
@@ -1181,12 +1088,8 @@
 
 	ds 14
 wcb0e:: ds 5
-wcb13:: ds 50
-wcb45:: ds 2
-wMobileSDK_PacketBuffer:: ds 18
-wcb59:: ds 20
-wcb6d:: ds 1
-wcb6e:: ds 22
+wcb13:: ds 52
+wMobileSDK_PacketBuffer:: ds 61
 wcb84:: ds 100
 wcbe8:: dw
 wLinkOTPartyMonTypes:: ds 2 * PARTY_LENGTH
@@ -1553,12 +1456,10 @@
 	db
 ENDU
 
-wRequested2bpp::
 wRequested2bppSize:: db
 wRequested2bppSource:: dw
 wRequested2bppDest:: dw
 
-wRequested1bpp::
 wRequested1bppSize:: db
 wRequested1bppSource:: dw
 wRequested1bppDest:: dw
@@ -1815,7 +1716,6 @@
 wOaksPKMNTalkSegmentCounter:: db
 	ds 5
 wRadioText:: ds 2 * SCREEN_WIDTH
-wRadioTextEnd::
 
 NEXTU
 ; lucky number show
@@ -2060,7 +1960,7 @@
 wTMHMPocketCursor::     db
 
 wPCItemsScrollPosition::        db
-wPartyMenuScrollPosition::      db ; unused
+	ds 1
 wItemsPocketScrollPosition::    db
 wKeyItemsPocketScrollPosition:: db
 wBallsPocketScrollPosition::    db
@@ -2118,7 +2018,6 @@
 wCurMessageIndex:: db
 wMailboxCount:: db
 wMailboxItems:: ds MAILBOX_CAPACITY
-wMailboxEnd::
 ENDU
 
 wListPointer:: dw
@@ -2303,7 +2202,7 @@
 wTempBattleMonSpecies:: db
 
 wEnemyMon:: battle_struct wEnemyMon
-wEnemyMonBaseStats:: ds 5
+wEnemyMonBaseStats:: ds NUM_EXP_STATS
 wEnemyMonCatchRate:: db
 wEnemyMonBaseExp::   db
 wEnemyMonEnd::
@@ -2443,25 +2342,21 @@
 wOTPartyMonOT:: ds NAME_LENGTH * PARTY_LENGTH
 wOTPartyMonNicknames:: ds MON_NAME_LENGTH * PARTY_LENGTH
 wOTPartyDataEnd::
-	ds 4
 
 NEXTU
 ; catch tutorial dude pack
-wDudeBag::
 wDudeNumItems:: db
-wDudeItems:: ds 2 * 4
-wDudeItemsEnd:: db
+wDudeItems:: ds 2 * 4 + 1
 
 wDudeNumKeyItems:: db
-wDudeKeyItems:: ds 18
-wDudeKeyItemsEnd:: db
+wDudeKeyItems:: ds 18 + 1
 
 wDudeNumBalls:: db
-wDudeBalls:: ds 2 * 4
-wDudeBallsEnd:: db
-wDudeBagEnd::
+wDudeBalls:: ds 2 * 4 + 1
 ENDU
 
+	ds 4
+
 wd430:: ; mobile
 wBattleAction:: db
 
@@ -2472,9 +2367,8 @@
 wScriptFlags::
 ; bit 3: priority jump
 	db
+	ds 1
 wScriptFlags2::
-	db
-wScriptFlags3::
 ; bit 0: count steps
 ; bit 1: coord events
 ; bit 2: warps and connections
@@ -2565,8 +2459,8 @@
 wSpawnAfterChampion:: db
 
 ; init time set at newgame
-wStartDay:: db
-wStartHour:: db
+wStartDay::    db
+wStartHour::   db
 wStartMinute:: db
 wStartSecond:: db
 
@@ -2611,7 +2505,6 @@
 wObject10Struct:: object_struct wObject10
 wObject11Struct:: object_struct wObject11
 wObject12Struct:: object_struct wObject12
-wObjectStructsEnd::
 
 wCmdQueue:: ds CMDQUEUE_CAPACITY * CMDQUEUE_ENTRY_SIZE
 
@@ -2634,7 +2527,6 @@
 wMap13Object::  map_object wMap13
 wMap14Object::  map_object wMap14
 wMap15Object::  map_object wMap15
-wMapObjectsEnd::
 
 wObjectMasks:: ds NUM_OBJECTS
 
@@ -2690,23 +2582,18 @@
 wKantoBadges:: flag_array NUM_KANTO_BADGES
 
 wTMsHMs:: ds NUM_TMS + NUM_HMS
-wTMsHMsEnd::
 
 wNumItems:: db
 wItems:: ds MAX_ITEMS * 2 + 1
-wItemsEnd::
 
 wNumKeyItems:: db
 wKeyItems:: ds MAX_KEY_ITEMS + 1
-wKeyItemsEnd::
 
 wNumBalls:: db
 wBalls:: ds MAX_BALLS * 2 + 1
-wBallsEnd::
 
 wNumPCItems:: db
 wPCItems:: ds MAX_PC_ITEMS * 2 + 1
-wPCItemsEnd::
 
 wPokegearFlags::
 ; bit 0: map
@@ -2818,7 +2705,7 @@
 
 ; fight counts
 wJackFightCount::    db
-wBeverlyFightCount:: db ; unused
+wBeverlyFightCount:: db ; unreferenced
 wHueyFightCount::    db
 wGavenFightCount::   db
 wBethFightCount::    db
@@ -2831,18 +2718,18 @@
 wAnthonyFightCount:: db
 wToddFightCount::    db
 wGinaFightCount::    db
-wIrwinFightCount::   db ; unused
+wIrwinFightCount::   db ; unreferenced
 wArnieFightCount::   db
 wAlanFightCount::    db
 wDanaFightCount::    db
 wChadFightCount::    db
-wDerekFightCount::   db ; unused
+wDerekFightCount::   db ; unreferenced
 wTullyFightCount::   db
 wBrentFightCount::   db
 wTiffanyFightCount:: db
 wVanceFightCount::   db
 wWiltonFightCount::  db
-wKenjiFightCount::   db ; unused
+wKenjiFightCount::   db ; unreferenced
 wParryFightCount::   db
 wErinFightCount::    db
 
@@ -3034,10 +2921,9 @@
 ; bit 0: monster 1 in day-care
 	db
 
-wBreedMon1::
-wBreedMon1Nick::  ds MON_NAME_LENGTH
-wBreedMon1OT::    ds NAME_LENGTH
-wBreedMon1Stats:: box_struct wBreedMon1
+wBreedMon1Nick:: ds MON_NAME_LENGTH
+wBreedMon1OT::   ds NAME_LENGTH
+wBreedMon1::     box_struct wBreedMon1
 
 wDayCareLady::
 ; bit 7: active
@@ -3051,10 +2937,9 @@
 ; nz: no
 	db
 
-wBreedMon2::
-wBreedMon2Nick::  ds MON_NAME_LENGTH
-wBreedMon2OT::    ds NAME_LENGTH
-wBreedMon2Stats:: box_struct wBreedMon2
+wBreedMon2Nick:: ds MON_NAME_LENGTH
+wBreedMon2OT::   ds NAME_LENGTH
+wBreedMon2::     box_struct wBreedMon2
 
 wEggNick:: ds MON_NAME_LENGTH
 wEggOT::   ds NAME_LENGTH
@@ -3237,7 +3122,6 @@
 wAnimObject08:: battle_anim_struct wAnimObject08
 wAnimObject09:: battle_anim_struct wAnimObject09
 wAnimObject10:: battle_anim_struct wAnimObject10
-wActiveAnimObjectsEnd::
 
 wActiveBGEffects::
 wBGEffect1:: battle_bg_effect wBGEffect1
@@ -3245,7 +3129,6 @@
 wBGEffect3:: battle_bg_effect wBGEffect3
 wBGEffect4:: battle_bg_effect wBGEffect4
 wBGEffect5:: battle_bg_effect wBGEffect5
-wActiveBGEffectsEnd::
 
 wLastAnimObjectIndex:: db