ref: 5c4795d5bc19edd872adf7b17d0c6264eecd6459
parent: e076ee0a40b2a21183e2cc535519e64b706b5407
author: SatoMew <SatoMew@users.noreply.github.com>
date: Sun Feb 26 11:14:21 EST 2023
Complete and improve debug name labels (#408)
--- a/engine/debug/debug_menu.asm
+++ b/engine/debug/debug_menu.asm
@@ -2,12 +2,14 @@
IF DEF(_DEBUG)
call ClearScreen
- ld hl, DebugPlayerName
+ ; These debug names are used for TestBattle.
+ ; StartNewGameDebug uses the debug names from PrepareOakSpeech.
+ ld hl, DebugBattlePlayerName
ld de, wPlayerName
ld bc, NAME_LENGTH
call CopyData
- ld hl, DebugRivalName
+ ld hl, DebugBattleRivalName
ld de, wRivalName
ld bc, NAME_LENGTH
call CopyData
@@ -57,10 +59,10 @@
set 1, [hl]
jp StartNewGameDebug
-DebugPlayerName:
+DebugBattlePlayerName:
db "Tom@"
-DebugRivalName:
+DebugBattleRivalName:
db "Juerry@"
DebugMenuOptions:
--- a/engine/menus/main_menu.asm
+++ b/engine/menus/main_menu.asm
@@ -309,6 +309,7 @@
StartNewGame:
ld hl, wd732
res 1, [hl]
+ ; fallthrough
StartNewGameDebug:
call OakSpeech
ld c, 20
--- a/engine/movie/oak_speech/oak_speech.asm
+++ b/engine/movie/oak_speech/oak_speech.asm
@@ -1,4 +1,4 @@
-SetDefaultNames:
+PrepareOakSpeech:
ld a, [wLetterPrintingDelayFlags]
push af
ld a, [wOptions]
@@ -22,11 +22,13 @@
ld a, [wOptionsInitialized]
and a
call z, InitOptions
- ld hl, NintenText
+ ; These debug names are used for StartNewGameDebug.
+ ; TestBattle uses the debug names from DebugMenu.
+ ld hl, DebugNewGamePlayerName
ld de, wPlayerName
ld bc, NAME_LENGTH
call CopyData
- ld hl, SonyText
+ ld hl, DebugNewGameRivalName
ld de, wRivalName
ld bc, NAME_LENGTH
jp CopyData
@@ -40,7 +42,7 @@
call PlayMusic
call ClearScreen
call LoadTextBoxTilePatterns
- call SetDefaultNames
+ call PrepareOakSpeech
predef InitPlayerData2
ld hl, wNumBoxItems
ld a, POTION
--- a/engine/movie/title.asm
+++ b/engine/movie/title.asm
@@ -1,15 +1,17 @@
-; copy text of fixed length NAME_LENGTH (like player name, rival name, mon names, ...)
-CopyFixedLengthText:
+CopyDebugName:
ld bc, NAME_LENGTH
jp CopyData
-SetDefaultNamesBeforeTitlescreen::
- ld hl, NintenText
+PrepareTitleScreen::
+ ; These debug names are already copied later in PrepareOakSpeech.
+ ; Removing the unused copies below has no apparent impact.
+ ; CopyDebugName can also be safely deleted afterwards.
+ ld hl, DebugNewGamePlayerName
ld de, wPlayerName
- call CopyFixedLengthText
- ld hl, SonyText
+ call CopyDebugName
+ ld hl, DebugNewGameRivalName
ld de, wRivalName
- call CopyFixedLengthText
+ call CopyDebugName
xor a
ldh [hWY], a
ld [wLetterPrintingDelayFlags], a
@@ -405,5 +407,8 @@
db $61,$62,$63,$64,$65,$66,$67,$68,"@" ; "Blue Version"
ENDC
-NintenText: db "NINTEN@"
-SonyText: db "SONY@"
+DebugNewGamePlayerName:
+ db "NINTEN@"
+
+DebugNewGameRivalName:
+ db "SONY@"
--- a/home/init.asm
+++ b/home/init.asm
@@ -116,7 +116,7 @@
ld a, rLCDC_DEFAULT
ldh [rLCDC], a
- jp SetDefaultNamesBeforeTitlescreen
+ jp PrepareTitleScreen
ClearVram::
ld hl, VRAM_Begin