ref: b272c0c3754012f83129c23c2c546013cd1e80ef
parent: d02c9e39dd5138aa2d5e11178fcef7e2a58d4230
author: PikalaxALT <[email protected]>
date: Wed Jan 27 07:25:12 EST 2016
Fix marts using hard-coded bank number
--- a/.gitattributes
+++ b/.gitattributes
@@ -2,10 +2,10 @@
* -text
# hexdump binary files
-*.png diff=hex
-*.lz diff=hex
-*.2bpp diff=hex
-*.1bpp diff=hex
-*.bin diff=hex
-*.blk diff=hex
+*.png binary diff=hex
+*.lz binary diff=hex
+*.2bpp binary diff=hex
+*.1bpp binary diff=hex
+*.bin binary diff=hex
+*.blk binary diff=hex
--- a/audio/engine.asm
+++ b/audio/engine.asm
@@ -2260,7 +2260,6 @@
add hl, bc
ld a, [hl]
and $f ; lo nybble
- ;
ld l, a ; ok
ld d, 0
ld h, d
--- a/battle/objects/functions.asm
+++ b/battle/objects/functions.asm
@@ -274,7 +274,7 @@
dw .ten
dw .eleven
.zero
- call GetBallAnimFunction
+ call GetBallAnimPal
call BattleAnim_IncAnonJumptableIndex
ret
@@ -342,7 +342,7 @@
ret
.seven
- call GetBallAnimFunction
+ call GetBallAnimPal
ld a, $a
call ReinitBattleAnimFrameset
call BattleAnim_IncAnonJumptableIndex
@@ -382,7 +382,7 @@
dw .one
dw .two
.zero
- call GetBallAnimFunction
+ call GetBallAnimPal
call BattleAnim_IncAnonJumptableIndex
ret
@@ -415,7 +415,7 @@
call DeinitBattleAnimation
ret
-GetBallAnimFunction: ; cd249 (33:5249)
+GetBallAnimPal: ; cd249 (33:5249)
ld hl, .balls
ld a, [rSVBK]
push af
--- a/constants/sfx_constants.asm
+++ b/constants/sfx_constants.asm
@@ -1,210 +1,210 @@
const_def
- const SFX_DEX_FANFARE_50_79
- const SFX_ITEM
- const SFX_CAUGHT_MON
- const SFX_POKEBALLS_PLACED_ON_TABLE
- const SFX_POTION
- const SFX_FULL_HEAL
- const SFX_MENU
- const SFX_READ_TEXT
- const SFX_READ_TEXT_2
- const SFX_DEX_FANFARE_20_49
- const SFX_DEX_FANFARE_80_109
- const SFX_POISON
- const SFX_GOT_SAFARI_BALLS
- const SFX_BOOT_PC
- const SFX_SHUT_DOWN_PC
- const SFX_CHOOSE_PC_OPTION
- const SFX_ESCAPE_ROPE
- const SFX_PUSH_BUTTON
- const SFX_SECOND_PART_OF_ITEMFINDER
- const SFX_WARP_TO
- const SFX_WARP_FROM
- const SFX_CHANGE_DEX_MODE
- const SFX_JUMP_OVER_LEDGE
- const SFX_GRASS_RUSTLE
- const SFX_FLY
- const SFX_WRONG
- const SFX_SQUEAK
- const SFX_STRENGTH
- const SFX_BOAT
- const SFX_WALL_OPEN
- const SFX_PLACE_PUZZLE_PIECE_DOWN
- const SFX_ENTER_DOOR
- const SFX_SWITCH_POKEMON
- const SFX_TALLY
- const SFX_TRANSACTION
- const SFX_EXIT_BUILDING
- const SFX_BUMP
- const SFX_SAVE
- const SFX_POKEFLUTE
- const SFX_ELEVATOR_END
- const SFX_THROW_BALL
- const SFX_BALL_POOF
- const SFX_FAINT
- const SFX_RUN
- const SFX_SLOT_MACHINE_START
- const SFX_FANFARE
- const SFX_PECK
- const SFX_KINESIS
- const SFX_LICK
- const SFX_POUND
- const SFX_MOVE_PUZZLE_PIECE
- const SFX_COMET_PUNCH
- const SFX_MEGA_PUNCH
- const SFX_SCRATCH
- const SFX_VICEGRIP
- const SFX_RAZOR_WIND
- const SFX_CUT
- const SFX_WING_ATTACK
- const SFX_WHIRLWIND
- const SFX_BIND
- const SFX_VINE_WHIP
- const SFX_DOUBLE_KICK
- const SFX_MEGA_KICK
- const SFX_HEADBUTT
- const SFX_HORN_ATTACK
- const SFX_TACKLE
- const SFX_POISON_STING
- const SFX_POWDER
- const SFX_DOUBLESLAP
- const SFX_BITE
- const SFX_JUMP_KICK
- const SFX_STOMP
- const SFX_TAIL_WHIP
- const SFX_KARATE_CHOP
- const SFX_SUBMISSION
- const SFX_WATER_GUN
- const SFX_SWORDS_DANCE
- const SFX_THUNDER
- const SFX_SUPERSONIC
- const SFX_LEER
- const SFX_EMBER
- const SFX_BUBBLEBEAM
- const SFX_HYDRO_PUMP
- const SFX_SURF
- const SFX_PSYBEAM
- const SFX_CHARGE
- const SFX_THUNDERSHOCK
- const SFX_PSYCHIC
- const SFX_SCREECH
- const SFX_BONE_CLUB
- const SFX_SHARPEN
- const SFX_EGG_BOMB
- const SFX_SING
- const SFX_HYPER_BEAM
- const SFX_SHINE
- const SFX_UNKNOWN_5F
- const SFX_UNKNOWN_60
- const SFX_UNKNOWN_61
- const SFX_SWITCH_POCKETS
- const SFX_UNKNOWN_63
- const SFX_BURN
- const SFX_TITLE_SCREEN_ENTRANCE
- const SFX_UNKNOWN_66
- const SFX_GET_COIN_FROM_SLOTS
- const SFX_PAY_DAY
- const SFX_METRONOME
- const SFX_CALL
- const SFX_HANG_UP
- const SFX_NO_SIGNAL
- const SFX_SANDSTORM
- const SFX_ELEVATOR
- const SFX_PROTECT
- const SFX_SKETCH
- const SFX_RAIN_DANCE
- const SFX_AEROBLAST
- const SFX_SPARK
- const SFX_CURSE
- const SFX_RAGE
- const SFX_THIEF
- const SFX_THIEF_2
- const SFX_SPIDER_WEB
- const SFX_MIND_READER
- const SFX_NIGHTMARE
- const SFX_SNORE
- const SFX_SWEET_KISS
- const SFX_SWEET_KISS_2
- const SFX_BELLY_DRUM
- const SFX_UNKNOWN_7F
- const SFX_SLUDGE_BOMB
- const SFX_FORESIGHT
- const SFX_SPITE
- const SFX_OUTRAGE
- const SFX_PERISH_SONG
- const SFX_GIGA_DRAIN
- const SFX_ATTRACT
- const SFX_KINESIS_2
- const SFX_ZAP_CANNON
- const SFX_MEAN_LOOK
- const SFX_HEAL_BELL
- const SFX_RETURN
- const SFX_EXP_BAR
- const SFX_MILK_DRINK
- const SFX_PRESENT
- const SFX_MORNING_SUN
- const SFX_LEVEL_UP
- const SFX_KEY_ITEM
- const SFX_FANFARE_2
- const SFX_REGISTER_PHONE_NUMBER
- const SFX_3RD_PLACE
- const SFX_GET_EGG_FROM_DAYCARE_MAN
- const SFX_GET_EGG_FROM_DAYCARE_LADY
- const SFX_MOVE_DELETED
- const SFX_2ND_PLACE
- const SFX_1ST_PLACE
- const SFX_CHOOSE_A_CARD
- const SFX_GET_TM
- const SFX_GET_BADGE
- const SFX_QUIT_SLOTS
- const SFX_EGG_CRACK
- const SFX_DEX_FANFARE_LESS_THAN_20
- const SFX_DEX_FANFARE_140_169
- const SFX_DEX_FANFARE_170_199
- const SFX_DEX_FANFARE_200_229
- const SFX_DEX_FANFARE_230_PLUS
- const SFX_EVOLVED
- const SFX_MASTER_BALL
- const SFX_EGG_HATCH
- const SFX_GS_INTRO_CHARIZARD_FIREBALL
- const SFX_GS_INTRO_POKEMON_APPEARS
- const SFX_FLASH
- const SFX_GAME_FREAK_LOGO_GS
- const SFX_NOT_VERY_EFFECTIVE
- const SFX_DAMAGE
- const SFX_SUPER_EFFECTIVE
- const SFX_BALL_BOUNCE
- const SFX_MOONLIGHT
- const SFX_ENCORE
- const SFX_BEAT_UP
- const SFX_BATON_PASS
- const SFX_BALL_WIGGLE
- const SFX_SWEET_SCENT
- const SFX_SWEET_SCENT_2
- const SFX_HIT_END_OF_EXP_BAR
- const SFX_GIVE_TRADEMON
- const SFX_GET_TRADEMON
- const SFX_TRAIN_ARRIVED
- const SFX_STOP_SLOT
- const SFX_2_BOOPS
- const SFX_GLASS_TING
- const SFX_GLASS_TING_2
+ const SFX_DEX_FANFARE_50_79 ; 00
+ const SFX_ITEM ; 01
+ const SFX_CAUGHT_MON ; 02
+ const SFX_POKEBALLS_PLACED_ON_TABLE ; 03
+ const SFX_POTION ; 04
+ const SFX_FULL_HEAL ; 05
+ const SFX_MENU ; 06
+ const SFX_READ_TEXT ; 07
+ const SFX_READ_TEXT_2 ; 08
+ const SFX_DEX_FANFARE_20_49 ; 09
+ const SFX_DEX_FANFARE_80_109 ; 0a
+ const SFX_POISON ; 0b
+ const SFX_GOT_SAFARI_BALLS ; 0c
+ const SFX_BOOT_PC ; 0d
+ const SFX_SHUT_DOWN_PC ; 0e
+ const SFX_CHOOSE_PC_OPTION ; 0f
+ const SFX_ESCAPE_ROPE ; 10
+ const SFX_PUSH_BUTTON ; 11
+ const SFX_SECOND_PART_OF_ITEMFINDER ; 12
+ const SFX_WARP_TO ; 13
+ const SFX_WARP_FROM ; 14
+ const SFX_CHANGE_DEX_MODE ; 15
+ const SFX_JUMP_OVER_LEDGE ; 16
+ const SFX_GRASS_RUSTLE ; 17
+ const SFX_FLY ; 18
+ const SFX_WRONG ; 19
+ const SFX_SQUEAK ; 1a
+ const SFX_STRENGTH ; 1b
+ const SFX_BOAT ; 1c
+ const SFX_WALL_OPEN ; 1d
+ const SFX_PLACE_PUZZLE_PIECE_DOWN ; 1e
+ const SFX_ENTER_DOOR ; 1f
+ const SFX_SWITCH_POKEMON ; 20
+ const SFX_TALLY ; 21
+ const SFX_TRANSACTION ; 22
+ const SFX_EXIT_BUILDING ; 23
+ const SFX_BUMP ; 24
+ const SFX_SAVE ; 25
+ const SFX_POKEFLUTE ; 26
+ const SFX_ELEVATOR_END ; 27
+ const SFX_THROW_BALL ; 28
+ const SFX_BALL_POOF ; 29
+ const SFX_FAINT ; 2a
+ const SFX_RUN ; 2b
+ const SFX_SLOT_MACHINE_START ; 2c
+ const SFX_FANFARE ; 2d
+ const SFX_PECK ; 2e
+ const SFX_KINESIS ; 2f
+ const SFX_LICK ; 30
+ const SFX_POUND ; 31
+ const SFX_MOVE_PUZZLE_PIECE ; 32
+ const SFX_COMET_PUNCH ; 33
+ const SFX_MEGA_PUNCH ; 34
+ const SFX_SCRATCH ; 35
+ const SFX_VICEGRIP ; 36
+ const SFX_RAZOR_WIND ; 37
+ const SFX_CUT ; 38
+ const SFX_WING_ATTACK ; 39
+ const SFX_WHIRLWIND ; 3a
+ const SFX_BIND ; 3b
+ const SFX_VINE_WHIP ; 3c
+ const SFX_DOUBLE_KICK ; 3d
+ const SFX_MEGA_KICK ; 3e
+ const SFX_HEADBUTT ; 3f
+ const SFX_HORN_ATTACK ; 40
+ const SFX_TACKLE ; 41
+ const SFX_POISON_STING ; 42
+ const SFX_POWDER ; 43
+ const SFX_DOUBLESLAP ; 44
+ const SFX_BITE ; 45
+ const SFX_JUMP_KICK ; 46
+ const SFX_STOMP ; 47
+ const SFX_TAIL_WHIP ; 48
+ const SFX_KARATE_CHOP ; 49
+ const SFX_SUBMISSION ; 4a
+ const SFX_WATER_GUN ; 4b
+ const SFX_SWORDS_DANCE ; 4c
+ const SFX_THUNDER ; 4d
+ const SFX_SUPERSONIC ; 4e
+ const SFX_LEER ; 4f
+ const SFX_EMBER ; 50
+ const SFX_BUBBLEBEAM ; 51
+ const SFX_HYDRO_PUMP ; 52
+ const SFX_SURF ; 53
+ const SFX_PSYBEAM ; 54
+ const SFX_CHARGE ; 55
+ const SFX_THUNDERSHOCK ; 56
+ const SFX_PSYCHIC ; 57
+ const SFX_SCREECH ; 58
+ const SFX_BONE_CLUB ; 59
+ const SFX_SHARPEN ; 5a
+ const SFX_EGG_BOMB ; 5b
+ const SFX_SING ; 5c
+ const SFX_HYPER_BEAM ; 5d
+ const SFX_SHINE ; 5e
+ const SFX_UNKNOWN_5F ; 5f
+ const SFX_UNKNOWN_60 ; 60
+ const SFX_UNKNOWN_61 ; 61
+ const SFX_SWITCH_POCKETS ; 62
+ const SFX_UNKNOWN_63 ; 63
+ const SFX_BURN ; 64
+ const SFX_TITLE_SCREEN_ENTRANCE ; 65
+ const SFX_UNKNOWN_66 ; 66
+ const SFX_GET_COIN_FROM_SLOTS ; 67
+ const SFX_PAY_DAY ; 68
+ const SFX_METRONOME ; 69
+ const SFX_CALL ; 6a
+ const SFX_HANG_UP ; 6b
+ const SFX_NO_SIGNAL ; 6c
+ const SFX_SANDSTORM ; 6d
+ const SFX_ELEVATOR ; 6e
+ const SFX_PROTECT ; 6f
+ const SFX_SKETCH ; 70
+ const SFX_RAIN_DANCE ; 71
+ const SFX_AEROBLAST ; 72
+ const SFX_SPARK ; 73
+ const SFX_CURSE ; 74
+ const SFX_RAGE ; 75
+ const SFX_THIEF ; 76
+ const SFX_THIEF_2 ; 77
+ const SFX_SPIDER_WEB ; 78
+ const SFX_MIND_READER ; 79
+ const SFX_NIGHTMARE ; 7a
+ const SFX_SNORE ; 7b
+ const SFX_SWEET_KISS ; 7c
+ const SFX_SWEET_KISS_2 ; 7d
+ const SFX_BELLY_DRUM ; 7e
+ const SFX_UNKNOWN_7F ; 7f
+ const SFX_SLUDGE_BOMB ; 80
+ const SFX_FORESIGHT ; 81
+ const SFX_SPITE ; 82
+ const SFX_OUTRAGE ; 83
+ const SFX_PERISH_SONG ; 84
+ const SFX_GIGA_DRAIN ; 85
+ const SFX_ATTRACT ; 86
+ const SFX_KINESIS_2 ; 87
+ const SFX_ZAP_CANNON ; 88
+ const SFX_MEAN_LOOK ; 89
+ const SFX_HEAL_BELL ; 8a
+ const SFX_RETURN ; 8b
+ const SFX_EXP_BAR ; 8c
+ const SFX_MILK_DRINK ; 8d
+ const SFX_PRESENT ; 8e
+ const SFX_MORNING_SUN ; 8f
+ const SFX_LEVEL_UP ; 90
+ const SFX_KEY_ITEM ; 91
+ const SFX_FANFARE_2 ; 92
+ const SFX_REGISTER_PHONE_NUMBER ; 93
+ const SFX_3RD_PLACE ; 94
+ const SFX_GET_EGG_FROM_DAYCARE_MAN ; 95
+ const SFX_GET_EGG_FROM_DAYCARE_LADY ; 96
+ const SFX_MOVE_DELETED ; 97
+ const SFX_2ND_PLACE ; 98
+ const SFX_1ST_PLACE ; 99
+ const SFX_CHOOSE_A_CARD ; 9a
+ const SFX_GET_TM ; 9b
+ const SFX_GET_BADGE ; 9c
+ const SFX_QUIT_SLOTS ; 9d
+ const SFX_EGG_CRACK ; 9e
+ const SFX_DEX_FANFARE_LESS_THAN_20 ; 9f
+ const SFX_DEX_FANFARE_140_169 ; a0
+ const SFX_DEX_FANFARE_170_199 ; a1
+ const SFX_DEX_FANFARE_200_229 ; a2
+ const SFX_DEX_FANFARE_230_PLUS ; a3
+ const SFX_EVOLVED ; a4
+ const SFX_MASTER_BALL ; a5
+ const SFX_EGG_HATCH ; a6
+ const SFX_GS_INTRO_CHARIZARD_FIREBALL ; a7
+ const SFX_GS_INTRO_POKEMON_APPEARS ; a8
+ const SFX_FLASH ; a9
+ const SFX_GAME_FREAK_LOGO_GS ; aa
+ const SFX_NOT_VERY_EFFECTIVE ; ab
+ const SFX_DAMAGE ; ac
+ const SFX_SUPER_EFFECTIVE ; ad
+ const SFX_BALL_BOUNCE ; ae
+ const SFX_MOONLIGHT ; af
+ const SFX_ENCORE ; b0
+ const SFX_BEAT_UP ; b1
+ const SFX_BATON_PASS ; b2
+ const SFX_BALL_WIGGLE ; b3
+ const SFX_SWEET_SCENT ; b4
+ const SFX_SWEET_SCENT_2 ; b5
+ const SFX_HIT_END_OF_EXP_BAR ; b6
+ const SFX_GIVE_TRADEMON ; b7
+ const SFX_GET_TRADEMON ; b8
+ const SFX_TRAIN_ARRIVED ; b9
+ const SFX_STOP_SLOT ; ba
+ const SFX_2_BOOPS ; bb
+ const SFX_GLASS_TING ; bc
+ const SFX_GLASS_TING_2 ; bd
- const SFX_INTRO_UNOWN_1
- const SFX_INTRO_UNOWN_2
- const SFX_INTRO_UNOWN_3
- const SFX_DITTO_POP_UP
- const SFX_DITTO_TRANSFORM
- const SFX_INTRO_SUICUNE_1
- const SFX_INTRO_PICHU
- const SFX_INTRO_SUICUNE_2
- const SFX_INTRO_SUICUNE_3
- const SFX_DITTO_BOUNCE
- const SFX_INTRO_SUICUNE_4
- const SFX_GAME_FREAK_PRESENTS
- const SFX_TINGLE
- const SFX_UNKNOWN_CB
- const SFX_TWO_PC_BEEPS
- const SFX_4_NOTE_DITTY
- const SFX_TWINKLE
+ const SFX_INTRO_UNOWN_1 ; be
+ const SFX_INTRO_UNOWN_2 ; bf
+ const SFX_INTRO_UNOWN_3 ; c0
+ const SFX_DITTO_POP_UP ; c1
+ const SFX_DITTO_TRANSFORM ; c2
+ const SFX_INTRO_SUICUNE_1 ; c3
+ const SFX_INTRO_PICHU ; c4
+ const SFX_INTRO_SUICUNE_2 ; c5
+ const SFX_INTRO_SUICUNE_3 ; c6
+ const SFX_DITTO_BOUNCE ; c7
+ const SFX_INTRO_SUICUNE_4 ; c8
+ const SFX_GAME_FREAK_PRESENTS ; c9
+ const SFX_TINGLE ; ca
+ const SFX_UNKNOWN_CB ; cb
+ const SFX_TWO_PC_BEEPS ; cc
+ const SFX_4_NOTE_DITTY ; cd
+ const SFX_TWINKLE ; ce
--- a/constants/tilemap_constants.asm
+++ b/constants/tilemap_constants.asm
@@ -36,7 +36,7 @@
const TILESET_ICE_PATH ; 1d
const TILESET_WHIRL_ISLANDS ; 1e
const TILESET_ILEX_FOREST ; 1f
- const TILESET_20 ; 20
+ const TILESET_32 ; 20
const TILESET_HO_OH_WORD_ROOM ; 21
const TILESET_KABUTO_WORD_ROOM ; 22
const TILESET_OMANYTE_WORD_ROOM ; 23
--- a/engine/battle_start.asm
+++ b/engine/battle_start.asm
@@ -120,7 +120,7 @@
ld [rSVBK], a
push hl
ld hl, wDecompressScratch
- ld bc, $28 * $10
+ ld bc, $28 tiles
.loop
ld [hl], -1
@@ -568,7 +568,7 @@
StartTrainerBattle_LoadPokeBallGraphics: ; 8c5dc (23:45dc)
ld a, [OtherTrainerClass]
and a
- jp z, .nextscene
+ jp z, .nextscene ; don't need to be here if wild
xor a
ld [hBGMapMode], a
@@ -579,6 +579,7 @@
jr .enter_loop_midway
.loop
+; set all pals to 7
ld a, [hl]
or %00000111
ld [hli], a
@@ -588,7 +589,7 @@
dec b
jr nz, .loop
- call .loadpokeballgfx ; load a, [OtherTrainerClass] \ ld de, PokeBallTransition
+ call .loadpokeballgfx ; ld a, [OtherTrainerClass] \ ld de, PokeBallTransition \ ret
hlcoord 2, 1
ld b, SCREEN_WIDTH - 4
@@ -605,7 +606,7 @@
jr z, .done
sla a
jr nc, .no_load
- ld [hl], $fe ; "8"
+ ld [hl], $fe
.no_load
inc hl
jr .loop4
@@ -650,12 +651,12 @@
ld [rSVBK], a
call .copypals
push hl
- ld de, UnknBGPals + 8 * 7
- ld bc, $8
+ ld de, UnknBGPals + 7 palettes
+ ld bc, 1 palettes
call CopyBytes
pop hl
- ld de, BGPals + 8 * 7
- ld bc, $8
+ ld de, BGPals + 7 palettes
+ ld bc, 1 palettes
call CopyBytes
pop af
ld [rSVBK], a
@@ -669,21 +670,21 @@
ret
.copypals: ; 8c677 (23:4677)
- ld de, UnknBGPals + 8 * 7
+ ld de, UnknBGPals + 7 palettes
call .copy
- ld de, BGPals + 8 * 7
+ ld de, BGPals + 7 palettes
call .copy
- ld de, UnknOBPals + 8 * 6
+ ld de, UnknOBPals + 6 palettes
call .copy
- ld de, OBPals + 8 * 6
+ ld de, OBPals + 6 palettes
call .copy
- ld de, UnknOBPals + 8 * 7
+ ld de, UnknOBPals + 7 palettes
call .copy
- ld de, OBPals + 8 * 7
+ ld de, OBPals + 7 palettes
.copy: ; 8c698 (23:4698)
push hl
- ld bc, $8
+ ld bc, 1 palettes
call CopyBytes
pop hl
ret
--- a/engine/events_3.asm
+++ b/engine/events_3.asm
@@ -4,7 +4,7 @@
; For some reson, GameFreak chose to use a callba here instead of just falling through.
; No other function in the game references the function at 2E:400A, here labeled
; ReturnFromMapSetupScript.inefficientcallba.
- callba .inefficientcallba ; this is a waste of 6 ROM bytes and 2 stack bytes
+ callba .inefficientcallba ; this is a waste of 6 ROM bytes and 6 stack bytes
ret
; b800a
--- a/engine/mart.asm
+++ b/engine/mart.asm
@@ -139,7 +139,7 @@
ld a, e
cp (MartsEnd - Marts) / 2
jr c, .IsAMart
- ld b, $5
+ ld b, BANK(DefaultMart)
ld de, DefaultMart
ret
@@ -151,7 +151,7 @@
ld e, [hl]
inc hl
ld d, [hl]
- ld b, $5
+ ld b, BANK(Marts)
ret
; 15b47
--- a/engine/namingscreen.asm
+++ b/engine/namingscreen.asm
@@ -971,7 +971,7 @@
db "1 2 3 4 5 6 7 8 9"
db "UPPER DEL END "
-NameInputUpper: ; Unreferenced?
+NameInputUpper:
db "A B C D E F G H I"
db "J K L M N O P Q R"
db "S T U V W X Y Z "
--- a/engine/player_movement.asm
+++ b/engine/player_movement.asm
@@ -446,7 +446,7 @@
db $70, $78, $76, $7e
; 8025f
-.DoStep: ; 8025f
+.DoStep
ld e, a
ld d, 0
ld hl, .Steps