ref: 2acaa96cf16ce953a7149f300d54e5440abc27d8
parent: 676b585375522127d3d1e134c8761d55ede32739
author: Remy Oukaour <remy.oukaour@gmail.com>
date: Thu Jan 18 13:34:20 EST 2018
More charmap and home/text.asm documentation for JP chars
--- a/charmap.asm
+++ b/charmap.asm
@@ -1,20 +1,21 @@
-; Control characters
- charmap "<START>", $00
- charmap "<PLAY_G>", $14 ; gendered PlayerName; same as "<PLAYER>" in English
- charmap "<DAY>", $15
+; $00-$16 are TX_* constants (see macros/scripts/text.asm)
+
+; Control characters (see home/text.asm)
+
+ charmap "<PLAY_G>", $14 ; "<PLAYER>くん" or "<PLAYER>ちゃん"; same as "<PLAYER>" in English
charmap "¯", $1f ; soft linebreak
charmap "<LNBRK>", $22
- charmap "<KOUGEKI>", $23 ; "こうげき"
charmap "<POKE>", $24 ; "<PO><KE>"
charmap "%", $25
charmap "<RED>", $38 ; RedsName
charmap "<GREEN>", $39 ; GreensName
- charmap "<ENEMY>", $3f
charmap "<MOM>", $49 ; MomsName
+ charmap "<ENEMY>", $3f
charmap "<PKMN>", $4a ; "<PK><MN>"
+ charmap "<CONT2>", $4b ; implements "<CONT>"
+ charmap "<CONT3>", $4c ; unused
charmap "<NEXT>", $4e
charmap "<LINE>", $4f
-
charmap "@", $50 ; string terminator
charmap "<PARA>", $51
charmap "<PLAYER>", $52 ; PlayerName
@@ -207,17 +208,29 @@
; Japanese kana, for those bits of text that were not translated to English
- charmap "ガ", $5
- charmap "ギ", $6
- charmap "グ", $7
- charmap "ゲ", $8
- charmap "ゴ", $9
- charmap "ザ", $a
- charmap "ジ", $b
- charmap "ズ", $c
- charmap "ゼ", $d
- charmap "ゾ", $e
- charmap "ダ", $f
+ charmap "<NI>", $1d ; "に "
+ charmap "<TTE>", $1e ; "って"
+ charmap "<O>", $1e ; "を "
+ charmap "<TA!>", $22 ; "た!"
+ charmap "<KOUGEKI>", $23 ; "こうげき"
+ charmap "<WA>", $24 ; "は "
+ charmap "<NO>", $25 ; "の "
+ charmap "<ROUTE>", $35 ; "ばん どうろ"
+ charmap "<WATASHI>", $36 ; "わたし"
+ charmap "<KOKO_WA>", $37 ; "ここは"
+ charmap "<GA>", $4a ; "が "
+
+ charmap "ガ", $05
+ charmap "ギ", $06
+ charmap "グ", $07
+ charmap "ゲ", $08
+ charmap "ゴ", $09
+ charmap "ザ", $0a
+ charmap "ジ", $0b
+ charmap "ズ", $0c
+ charmap "ゼ", $0d
+ charmap "ゾ", $0e
+ charmap "ダ", $0f
charmap "ヂ", $10
charmap "ヅ", $11
charmap "デ", $12
@@ -227,7 +240,6 @@
charmap "ビ", $1a
charmap "ブ", $1b
charmap "ボ", $1c
-; charmap "ベ", $1d
charmap "が", $26
charmap "ぎ", $27
--- a/constants/map_data_constants.asm
+++ b/constants/map_data_constants.asm
@@ -132,10 +132,6 @@
MAPOBJECT_SCREEN_HEIGHT EQU 11
MAPOBJECT_SCREEN_WIDTH EQU 12
-; NPCs disappear if standing on tile $60-$7f or $e0-$ff,
-; since those IDs are for text characters and textbox frames.
-MAPOBJECT_VISIBLE_TILE_LIMIT EQU $60
-
; object_struct members (see macros/wram.asm)
const_def
--- a/constants/text_constants.asm
+++ b/constants/text_constants.asm
@@ -39,3 +39,7 @@
PRINTNUM_MONEY EQU 1 << PRINTNUM_MONEY_F
PRINTNUM_RIGHTALIGN EQU 1 << PRINTNUM_RIGHTALIGN_F
PRINTNUM_LEADINGZEROS EQU 1 << PRINTNUM_LEADINGZEROS_F
+
+; character sets (see charmap.asm)
+FIRST_REGULAR_TEXT_CHAR EQU $60
+FIRST_HIRAGANA_DAKUTEN_CHAR EQU $20
--- a/data/battle/battle_text.asm
+++ b/data/battle/battle_text.asm
@@ -11,7 +11,7 @@
WildPokemonAppearedText: ; 0x80746
text "Wild @"
text_from_ram EnemyMonNick
- text ""
+ text_start
line "appeared!"
prompt
; 0x8075c
@@ -20,7 +20,7 @@
text "The hooked"
line "@"
text_from_ram EnemyMonNick
- text ""
+ text_start
cont "attacked!"
prompt
; 0x80778
@@ -35,7 +35,7 @@
WildCelebiAppearedText: ; 0x80793
text "Wild @"
text_from_ram EnemyMonNick
- text ""
+ text_start
line "appeared!"
prompt
; 0x807a9
@@ -49,7 +49,7 @@
BattleText_WildFled: ; 0x807bd
text "Wild @"
text_from_ram EnemyMonNick
- text ""
+ text_start
line "fled!"
prompt
; 0x807cf
@@ -57,7 +57,7 @@
BattleText_EnemyFled: ; 0x807cf
text "Enemy @"
text_from_ram EnemyMonNick
- text ""
+ text_start
line "fled!"
prompt
; 0x807e2
@@ -189,7 +189,7 @@
BattleText_EnemyPkmnFainted: ; 0x809a8
text "Enemy @"
text_from_ram EnemyMonNick
- text ""
+ text_start
line "fainted!"
prompt
; 0x809be
@@ -197,7 +197,7 @@
GotMoneyForWinningText:
text "<PLAYER> got ¥@"
deciram wBattleReward, 3, 6
- text ""
+ text_start
line "for winning!"
prompt
@@ -216,7 +216,7 @@
SentSomeToMomText:
text "<PLAYER> got ¥@"
deciram wBattleReward, 3, 6
- text ""
+ text_start
line "for winning!"
cont "Sent some to MOM!"
prompt
@@ -238,7 +238,7 @@
BattleText_PkmnFainted: ; 0x80a75
text_from_ram BattleMonNick
- text ""
+ text_start
line "fainted!"
prompt
; 0x80a83
@@ -342,7 +342,7 @@
text "<USER>'s"
line "@"
text_from_ram StringBuffer1
- text ""
+ text_start
cont "activated!"
prompt
; 0x80bf3
@@ -355,7 +355,7 @@
BattleText_PkmnIsAlreadyOut: ; 0x80c0d
text_from_ram BattleMonNick
- text ""
+ text_start
line "is already out."
prompt
; 0x80c22
@@ -362,7 +362,7 @@
BattleText_PkmnCantBeRecalled: ; 0x80c22
text_from_ram BattleMonNick
- text ""
+ text_start
line "can't be recalled!"
prompt
; 0x80c39
@@ -381,7 +381,7 @@
BattleText_PkmnHasNoMovesLeft: ; 0x80c72
text_from_ram BattleMonNick
- text ""
+ text_start
line "has no moves left!"
done
; 0x80c8a
@@ -405,7 +405,7 @@
BattleText_WildPkmnIsEating: ; 0x80cba
text "Wild @"
text_from_ram EnemyMonNick
- text ""
+ text_start
line "is eating!"
prompt
; 0x80cd1
@@ -413,7 +413,7 @@
BattleText_WildPkmnIsAngry: ; 0x80cd1
text "Wild @"
text_from_ram EnemyMonNick
- text ""
+ text_start
line "is angry!"
prompt
; 0x80ce7
@@ -1103,7 +1103,7 @@
text "<USER>"
line "stole @"
text_from_ram StringBuffer1
- text ""
+ text_start
cont "from its foe!"
prompt
; 0x815f7
--- a/data/common_text/common_text_1.asm
+++ b/data/common_text/common_text_1.asm
@@ -39,7 +39,7 @@
UnknownText_0x1bc0a2::
text_from_ram StringBuffer1
- text ""
+ text_start
line "recovered @"
deciram wd1f3, 2, 3
text "HP!"
@@ -65,13 +65,13 @@
UnknownText_0x1bc101::
text_from_ram StringBuffer1
- text ""
+ text_start
line "was defrosted."
done
UnknownText_0x1bc115::
text_from_ram StringBuffer1
- text ""
+ text_start
line "woke up."
done
@@ -83,7 +83,7 @@
UnknownText_0x1bc13a::
text_from_ram StringBuffer1
- text ""
+ text_start
line "is revitalized."
done
@@ -292,7 +292,7 @@
text "Put away the"
line "@"
text_from_ram StringBuffer3
- text ""
+ text_start
para "and set up the"
line "@"
@@ -376,7 +376,7 @@
done
UnknownText_0x1bc701::
- text ""
+ text_start
done
UnknownText_0x1bc703::
@@ -485,33 +485,33 @@
; Oak's Pokémon Talk
_OPT_IntroText1::
- text ""
+ text_start
line "MARY: PROF.OAK'S"
done
_OPT_IntroText2::
- text ""
+ text_start
line "#MON TALK!"
done
_OPT_IntroText3::
- text ""
+ text_start
line "With me, MARY!"
done
_OPT_OakText1::
- text ""
+ text_start
line "OAK: @"
text_from_ram wMonOrItemNameBuffer
db "@@"
_OPT_OakText2::
- text ""
+ text_start
line "may be seen around"
done
_OPT_OakText3::
- text ""
+ text_start
line "@"
text_from_ram StringBuffer1
text "."
@@ -518,7 +518,7 @@
done
_OPT_MaryText1::
- text ""
+ text_start
line "MARY: @"
text_from_ram StringBuffer1
text "'s"
@@ -525,162 +525,162 @@
done
OPT_SweetAdorably::
- text ""
+ text_start
line "sweet and adorably"
done
OPT_WigglySlickly::
- text ""
+ text_start
line "wiggly and slickly"
done
OPT_AptlyNamed::
- text ""
+ text_start
line "aptly named and"
done
OPT_UndeniablyKindOf::
- text ""
+ text_start
line "undeniably kind of"
done
OPT_Unbearably::
- text ""
+ text_start
line "so, so unbearably"
done
OPT_WowImpressively::
- text ""
+ text_start
line "wow, impressively"
done
OPT_AlmostPoisonously::
- text ""
+ text_start
line "almost poisonously"
done
OPT_Sensually::
- text ""
+ text_start
line "ooh, so sensually"
done
OPT_Mischievously::
- text ""
+ text_start
line "so mischievously"
done
OPT_Topically::
- text ""
+ text_start
line "so very topically"
done
OPT_Addictively::
- text ""
+ text_start
line "sure addictively"
done
OPT_LooksInWater::
- text ""
+ text_start
line "looks in water is"
done
OPT_EvolutionMustBe::
- text ""
+ text_start
line "evolution must be"
done
OPT_Provocatively::
- text ""
+ text_start
line "provocatively"
done
OPT_FlippedOut::
- text ""
+ text_start
line "so flipped out and"
done
OPT_HeartMeltingly::
- text ""
+ text_start
line "heart-meltingly"
done
OPT_Cute::
- text ""
+ text_start
line "cute."
done
OPT_Weird::
- text ""
+ text_start
line "weird."
done
OPT_Pleasant::
- text ""
+ text_start
line "pleasant."
done
OPT_BoldSortOf::
- text ""
+ text_start
line "bold, sort of."
done
OPT_Frightening::
- text ""
+ text_start
line "frightening."
done
OPT_SuaveDebonair::
- text ""
+ text_start
line "suave & debonair!"
done
OPT_Powerful::
- text ""
+ text_start
line "powerful."
done
OPT_Exciting::
- text ""
+ text_start
line "exciting."
done
OPT_Groovy::
- text ""
+ text_start
line "groovy!"
done
OPT_Inspiring::
- text ""
+ text_start
line "inspiring."
done
OPT_Friendly::
- text ""
+ text_start
line "friendly."
done
OPT_HotHotHot::
- text ""
+ text_start
line "hot, hot, hot!"
done
OPT_Stimulating::
- text ""
+ text_start
line "stimulating."
done
OPT_Guarded::
- text ""
+ text_start
line "guarded."
done
OPT_Lovely::
- text ""
+ text_start
line "lovely."
done
OPT_Speedy::
- text ""
+ text_start
line "speedy."
done
@@ -689,7 +689,7 @@
done
_PokedexShowText::
- text ""
+ text_start
line "@"
text_from_ram StringBuffer1
db "@@"
@@ -697,32 +697,32 @@
; Pokémon Music Channel / Pokémusic
_BenIntroText1::
- text ""
+ text_start
line "BEN: #MON MUSIC"
done
_BenIntroText2::
- text ""
+ text_start
line "CHANNEL!"
done
_BenIntroText3::
- text ""
+ text_start
line "It's me, DJ BEN!"
done
_FernIntroText1::
- text ""
+ text_start
line "FERN: #MUSIC!"
done
_FernIntroText2::
- text ""
+ text_start
line "With DJ FERN!"
done
_BenFernText1::
- text ""
+ text_start
line "Today's @"
current_day
text ","
@@ -729,22 +729,22 @@
done
_BenFernText2A::
- text ""
+ text_start
line "so let us jam to"
done
_BenFernText2B::
- text ""
+ text_start
line "so chill out to"
done
_BenFernText3A::
- text ""
+ text_start
line "#MON March!"
done
_BenFernText3B::
- text ""
+ text_start
line "#MON Lullaby!"
done
@@ -751,42 +751,42 @@
; Lucky Channel
_LC_Text1::
- text ""
+ text_start
line "REED: Yeehaw! How"
done
_LC_Text2::
- text ""
+ text_start
line "y'all doin' now?"
done
_LC_Text3::
- text ""
+ text_start
line "Whether you're up"
done
_LC_Text4::
- text ""
+ text_start
line "or way down low,"
done
_LC_Text5::
- text ""
+ text_start
line "don't you miss the"
done
_LC_Text6::
- text ""
+ text_start
line "LUCKY NUMBER SHOW!"
done
_LC_Text7::
- text ""
+ text_start
line "This week's Lucky"
done
_LC_Text8::
- text ""
+ text_start
line "Number is @"
interpret_data
text_from_ram StringBuffer1
@@ -794,27 +794,27 @@
done
_LC_Text9::
- text ""
+ text_start
line "I'll repeat that!"
done
_LC_Text10::
- text ""
+ text_start
line "Match it and go to"
done
_LC_Text11::
- text ""
+ text_start
line "the RADIO TOWER!"
done
_LC_DragText1::
- text ""
+ text_start
line "…Repeating myself"
done
_LC_DragText2::
- text ""
+ text_start
line "gets to be a drag…"
done
@@ -821,22 +821,22 @@
; Places and People
_PnP_Text1::
- text ""
+ text_start
line "PLACES AND PEOPLE!"
done
_PnP_Text2::
- text ""
+ text_start
line "Brought to you by"
done
_PnP_Text3::
- text ""
+ text_start
line "me, DJ LILY!"
done
_PnP_Text4::
- text ""
+ text_start
line "@"
text_from_ram StringBuffer2
text " @"
@@ -844,123 +844,123 @@
db "@@"
_PnP_cute::
- text ""
+ text_start
line "is cute."
done
_PnP_lazy::
- text ""
+ text_start
line "is sort of lazy."
done
_PnP_happy::
- text ""
+ text_start
line "is always happy."
done
_PnP_noisy::
- text ""
+ text_start
line "is quite noisy."
done
_PnP_precocious::
- text ""
+ text_start
line "is precocious."
done
_PnP_bold::
- text ""
+ text_start
line "is somewhat bold."
done
_PnP_picky::
- text ""
+ text_start
line "is too picky!"
done
_PnP_sortofok::
- text ""
+ text_start
line "is sort of OK."
done
_PnP_soso::
- text ""
+ text_start
line "is just so-so."
done
_PnP_great::
- text ""
+ text_start
line "is actually great."
done
_PnP_mytype::
- text ""
+ text_start
line "is just my type."
done
_PnP_cool::
- text ""
+ text_start
line "is so cool, no?"
done
_PnP_inspiring::
- text ""
+ text_start
line "is inspiring!"
done
_PnP_weird::
- text ""
+ text_start
line "is kind of weird."
done
_PnP_rightforme::
- text ""
+ text_start
line "is right for me?"
done
_PnP_odd::
- text ""
+ text_start
line "is definitely odd!"
done
_PnP_Text5::
- text ""
+ text_start
line "@"
text_from_ram StringBuffer1
db "@@"
_RocketRadioText1::
- text ""
+ text_start
line "… …Ahem, we are"
done
_RocketRadioText2::
- text ""
+ text_start
line "TEAM ROCKET!"
done
_RocketRadioText3::
- text ""
+ text_start
line "After three years"
done
_RocketRadioText4::
- text ""
+ text_start
line "of preparation, we"
done
_RocketRadioText5::
- text ""
+ text_start
line "have risen again"
done
_RocketRadioText6::
- text ""
+ text_start
line "from the ashes!"
done
_RocketRadioText7::
- text ""
+ text_start
line "GIOVANNI! @"
interpret_data
text "Can you"
@@ -967,7 +967,7 @@
done
_RocketRadioText8::
- text ""
+ text_start
line "hear?@"
interpret_data
text " We did it!"
@@ -974,7 +974,7 @@
done
_RocketRadioText9::
- text ""
+ text_start
line "@"
interpret_data
text "Where is our boss?"
@@ -981,7 +981,7 @@
done
_RocketRadioText10::
- text ""
+ text_start
line "@"
interpret_data
text "Is he listening?"
@@ -988,22 +988,22 @@
done
_BuenaRadioText1::
- text ""
+ text_start
line "BUENA: BUENA here!"
done
_BuenaRadioText2::
- text ""
+ text_start
line "Today's password!"
done
_BuenaRadioText3::
- text ""
+ text_start
line "Let me think… It's"
done
_BuenaRadioText4::
- text ""
+ text_start
line "@"
text_from_ram StringBuffer1
text "!"
@@ -1010,57 +1010,57 @@
done
_BuenaRadioText5::
- text ""
+ text_start
line "Don't forget it!"
done
_BuenaRadioText6::
- text ""
+ text_start
line "I'm in GOLDENROD's"
done
_BuenaRadioText7::
- text ""
+ text_start
line "RADIO TOWER!"
done
_BuenaRadioMidnightText1::
- text ""
+ text_start
line "BUENA: Oh my…"
done
_BuenaRadioMidnightText2::
- text ""
+ text_start
line "It's midnight! I"
done
_BuenaRadioMidnightText3::
- text ""
+ text_start
line "have to shut down!"
done
_BuenaRadioMidnightText4::
- text ""
+ text_start
line "Thanks for tuning"
done
_BuenaRadioMidnightText5::
- text ""
+ text_start
line "in to the end! But"
done
_BuenaRadioMidnightText6::
- text ""
+ text_start
line "don't stay up too"
done
_BuenaRadioMidnightText7::
- text ""
+ text_start
line "late! Presented to"
done
_BuenaRadioMidnightText8::
- text ""
+ text_start
line "you by DJ BUENA!"
done
@@ -1073,7 +1073,7 @@
done
_BuenaOffTheAirText::
- text ""
+ text_start
line ""
done
@@ -1089,7 +1089,7 @@
text "<ENEMY>"
line "used @"
text_from_ram wMonOrItemNameBuffer
- text ""
+ text_start
cont "on @"
text_from_ram EnemyMonNick
text "!"
@@ -1108,7 +1108,7 @@
Text_TheItemWasPutInThePack::
text "The @"
text_from_ram StringBuffer1
- text ""
+ text_start
line "was put in the"
cont "PACK."
done
@@ -1248,7 +1248,7 @@
UnknownText_0x1bd286::
text "Trading @"
text_from_ram StringBuffer2
- text ""
+ text_start
line "for @"
text_from_ram StringBuffer1
text "…"
@@ -1432,7 +1432,7 @@
UnknownText_0x1bd5f4::
text "Hi! The @"
text_from_ram wMonOrItemNameBuffer
- text ""
+ text_start
line "you traded me is"
cont "doing great!"
done
@@ -1621,7 +1621,7 @@
done
UnknownText_0x1bdaa7::
- text ""
+ text_start
done
UnknownText_0x1bdaa9::
@@ -1725,7 +1725,7 @@
UnknownText_0x1bdd96::
text "Your @"
text_from_ram StringBuffer1
- text ""
+ text_start
line "has grown a lot."
para "By level, it's"
@@ -1756,7 +1756,7 @@
text "Huh? Back already?"
line "Your @"
text_from_ram StringBuffer1
- text ""
+ text_start
para "needs a little"
line "more time with us."
--- a/data/common_text/common_text_2.asm
+++ b/data/common_text/common_text_2.asm
@@ -67,7 +67,7 @@
para "Treat @"
text_from_ram StringBuffer1
- text ""
+ text_start
line "with loving care."
done
@@ -99,7 +99,7 @@
text " gained@@"
Text_ABoostedStringBuffer2ExpPoints::
- text ""
+ text_start
line "a boosted"
cont "@"
deciram StringBuffer2, 2, 4
@@ -107,7 +107,7 @@
prompt
Text_StringBuffer2ExpPoints::
- text ""
+ text_start
line "@"
deciram StringBuffer2, 2, 4
text " EXP. Points!"
@@ -169,7 +169,7 @@
para "Teach @"
text_from_ram StringBuffer2
- text ""
+ text_start
line "to a #MON?"
done
@@ -245,7 +245,7 @@
text " sent"
line "@"
text_from_ram StringBuffer1
- text ""
+ text_start
cont "to @"
text_from_ram wMysteryGiftPlayerName
text "'s home."
@@ -546,7 +546,7 @@
UnknownText_0x1c0acc::
text_from_ram StringBuffer3
- text ""
+ text_start
line "fainted!"
prompt
@@ -599,7 +599,7 @@
UnknownText_0x1c0bbb::
text "Throw away @"
deciram wItemQuantityChangeBuffer, 1, 2
- text ""
+ text_start
line "@"
text_from_ram StringBuffer2
text "(S)?"
@@ -641,7 +641,7 @@
done
UnknownText_0x1c0c83::
- text ""
+ text_start
done
Text_YouCantUseItInABattle::
@@ -688,32 +688,32 @@
text "<USER>@@"
UnknownText_0x1c0d12::
- text ""
+ text_start
line "made a whirlwind!"
prompt
UnknownText_0x1c0d26::
- text ""
+ text_start
line "took in sunlight!"
prompt
UnknownText_0x1c0d3a::
- text ""
+ text_start
line "lowered its head!"
prompt
UnknownText_0x1c0d4e::
- text ""
+ text_start
line "is glowing!"
prompt
UnknownText_0x1c0d5c::
- text ""
+ text_start
line "flew up high!"
prompt
UnknownText_0x1c0d6c::
- text ""
+ text_start
line "dug a hole!"
prompt
@@ -721,11 +721,11 @@
text "<USER>@@"
_UsedMove1Text::
- text ""
+ text_start
line "used @@"
_UsedMove2Text::
- text ""
+ text_start
line "used @@"
_UsedInsteadText::
@@ -761,7 +761,7 @@
para "@@"
UnknownText_0x1c0db8::
- text ""
+ text_start
done
UnknownText_0x1c0dba::
@@ -782,7 +782,7 @@
UnknownText_0x1c0df3::
text "It's @"
text_from_ram wBreedMon2Nick
- text ""
+ text_start
line "that was left with"
cont "the DAY-CARE LADY."
done
@@ -790,7 +790,7 @@
UnknownText_0x1c0e24::
text "It's @"
text_from_ram wBreedMon1
- text ""
+ text_start
line "that was left with"
cont "the DAY-CARE MAN."
done
@@ -874,7 +874,7 @@
deciram wcf64, 1, 3
text " @"
text_from_ram StringBuffer1
- text ""
+ text_start
line "Animation type @"
text_from_ram StringBuffer2
db "@@"
@@ -953,7 +953,7 @@
text "!@@"
ContestJudging_FirstPlaceScoreText::
- text ""
+ text_start
para "The winning score"
line "was @"
@@ -972,7 +972,7 @@
text "!@@"
ContestJudging_SecondPlaceScoreText::
- text ""
+ text_start
para "The score was"
line "@"
deciram wBugContestSecondPlaceScore, 2, 3
@@ -990,7 +990,7 @@
text "!@@"
ContestJudging_ThirdPlaceScoreText::
- text ""
+ text_start
para "The score was"
line "@"
deciram wBugContestThirdPlaceScore, 2, 3
@@ -1073,7 +1073,7 @@
_KrissPCWithdrewItemsText::
text "Withdrew @"
deciram wItemQuantityChangeBuffer, 1, 2
- text ""
+ text_start
line "@"
text_from_ram StringBuffer2
text "(S)."
@@ -1096,7 +1096,7 @@
_KrissPCDepositItemsText::
text "Deposited @"
deciram wItemQuantityChangeBuffer, 1, 2
- text ""
+ text_start
line "@"
text_from_ram StringBuffer2
text "(S)."
@@ -1349,7 +1349,7 @@
UnknownText_0x1c1aad::
text "Throw away @"
deciram wItemQuantityChangeBuffer, 1, 2
- text ""
+ text_start
line "@"
text_from_ram StringBuffer2
text "(S)?"
@@ -1390,7 +1390,7 @@
UnknownText_0x1c1b57::
text "Made @"
text_from_ram wMonOrItemNameBuffer
- text ""
+ text_start
line "hold @"
text_from_ram StringBuffer2
text "."
@@ -1415,7 +1415,7 @@
UnknownText_0x1c1bc4::
text "Took @"
text_from_ram StringBuffer1
- text ""
+ text_start
line "from @"
text_from_ram wMonOrItemNameBuffer
text "."
--- a/data/common_text/common_text_3.asm
+++ b/data/common_text/common_text_3.asm
@@ -73,7 +73,7 @@
UnknownText_0x1c4212::
text "Trade @"
text_from_ram wd004
- text ""
+ text_start
line "for @"
text_from_ram StringBuffer1
text "?"
@@ -134,7 +134,7 @@
UnknownText_0x1c43dc::
text "There are only @"
deciram StringBuffer2, 1, 2
- text ""
+ text_start
line "min. left today."
para "Want a quick"
@@ -274,7 +274,7 @@
UnknownText_0x1c474b::
text "The @"
text_from_ram StringBuffer3
- text ""
+ text_start
line "is full…"
prompt
@@ -320,18 +320,18 @@
UnknownText_0x1c4837::
text "Hm… @"
text_from_ram wSeerNickname
- text ""
+ text_start
line "came from @"
text_from_ram wSeerOTName
- text ""
+ text_start
cont "in a trade?"
para "@"
text_from_ram wSeerCaughtLocation
- text ""
+ text_start
line "was where @"
text_from_ram wSeerOTName
- text ""
+ text_start
cont "met @"
text_from_ram wSeerNickname
text "!"
@@ -410,7 +410,7 @@
para "This @"
text_from_ram wSeerNickname
- text ""
+ text_start
line "must have come"
para "through numerous"
@@ -438,7 +438,7 @@
para "I'm sure that"
line "seeing @"
text_from_ram wSeerNickname
- text ""
+ text_start
para "in battle would"
line "excite anyone."
done
@@ -450,7 +450,7 @@
db "@@"
UnknownText_0x1c4baf::
- text ""
+ text_start
para "evolved into"
line "@"
text_from_ram StringBuffer1
@@ -460,7 +460,7 @@
UnknownText_0x1c4bc5::
text "Huh? @"
text_from_ram StringBuffer2
- text ""
+ text_start
line "stopped evolving!"
prompt
@@ -467,7 +467,7 @@
UnknownText_0x1c4be3::
text "What? @"
text_from_ram StringBuffer2
- text ""
+ text_start
line "is evolving!"
done
@@ -937,7 +937,7 @@
UnknownText_0x1c56af::
text_from_ram wMonOrItemNameBuffer
- text ""
+ text_start
line "did not learn"
cont "@"
text_from_ram StringBuffer2
@@ -954,7 +954,7 @@
para "But @"
text_from_ram wMonOrItemNameBuffer
- text ""
+ text_start
line "can't learn more"
cont "than four moves."
@@ -973,7 +973,7 @@
UnknownText_0x1c574e::
text " Poof!@"
interpret_data
- text ""
+ text_start
para "@"
text_from_ram wMonOrItemNameBuffer
text " forgot"
@@ -1179,7 +1179,7 @@
UnknownText_0x1c5b17::
text "Gotcha! @"
text_from_ram EnemyMonNick
- text ""
+ text_start
line "was caught!@"
sound_caught_mon
db "@@"
@@ -1291,7 +1291,7 @@
text "There was a trophy"
line "inside!@"
sound_dex_fanfare_50_79
- text ""
+ text_start
para "@"
text_from_ram PlayerName
text " sent the"
--- a/data/phone/text/bill.asm
+++ b/data/phone/text/bill.asm
@@ -45,7 +45,7 @@
para "<PLAY_G>, your BOX"
line "has room for @"
text_from_ram StringBuffer3
- text ""
+ text_start
cont "more #MON."
para "Get out there and"
--- a/data/phone/text/extra.asm
+++ b/data/phone/text/extra.asm
@@ -491,7 +491,7 @@
para "to @"
text_from_ram StringBuffer5
- text ""
+ text_start
line "and pick it up?"
done
; 0x64e90
@@ -561,7 +561,7 @@
text "You know what?"
line "A wild @"
text_from_ram StringBuffer4
- text ""
+ text_start
para "got away from me"
line "again."
@@ -918,7 +918,7 @@
text "Listen to this."
line "My @"
text_from_ram StringBuffer4
- text ""
+ text_start
para "grins happily when"
line "I pinch its cheek."
@@ -1497,7 +1497,7 @@
text "But get this, a"
line "wild @"
text_from_ram StringBuffer4
- text ""
+ text_start
para "just barely eluded"
line "us."
@@ -1808,7 +1808,7 @@
text_from_ram StringBuffer3
text "'s @"
text_from_ram StringBuffer4
- text ""
+ text_start
line "is much stronger"
cont "than before!"
done
@@ -1831,7 +1831,7 @@
para "A wild @"
text_from_ram StringBuffer4
- text ""
+ text_start
line "got away from me"
para "again. It's just"
--- a/data/phone/text/extra2.asm
+++ b/data/phone/text/extra2.asm
@@ -316,7 +316,7 @@
para "in @"
text_from_ram StringBuffer5
- text ""
+ text_start
line "when you can."
done
; 0x1748ea
@@ -372,7 +372,7 @@
GavenGreaterText: ; 0x174a24
text "My @"
text_from_ram StringBuffer4
- text ""
+ text_start
line "might be greater"
cont "than I imagined."
@@ -485,7 +485,7 @@
text "Oh, have you ever"
line "seen a @"
text_from_ram StringBuffer4
- text ""
+ text_start
cont "before?"
para "I just battled"
@@ -823,7 +823,7 @@
text "Oh yeah, I took"
line "down a @"
text_from_ram StringBuffer4
- text ""
+ text_start
para "in the wild the"
line "other day."
@@ -927,7 +927,7 @@
text "Oh yeah, we KO'd a"
line "wild @"
text_from_ram StringBuffer4
- text ""
+ text_start
para "with one hit a"
line "while back."
@@ -1549,7 +1549,7 @@
para "wild @"
text_from_ram StringBuffer4
- text ""
+ text_start
line "quite often."
para "They're easily"
@@ -1605,13 +1605,13 @@
para "I took a hike in"
line "@"
text_from_ram StringBuffer5
- text ""
+ text_start
cont "yesterday, see?"
para "Well, there were"
line "tons of @"
text_from_ram StringBuffer4
- text ""
+ text_start
para "around! You have"
line "to see it!"
@@ -1618,7 +1618,7 @@
para "I get this feeling"
line "that @"
text_from_ram StringBuffer4
- text ""
+ text_start
para "may be timid."
line "I didn't see any"
--- a/data/phone/text/jose_overworld.asm
+++ b/data/phone/text/jose_overworld.asm
@@ -1,7 +1,7 @@
JoseAskNumber1Text:
text "If my @"
text_from_ram StringBuffer4
- text ""
+ text_start
line "sees anything"
para "pretty, it goes"
--- a/data/phone/text/mom.asm
+++ b/data/phone/text/mom.asm
@@ -14,7 +14,7 @@
para "Isn't that where"
line "@"
text_from_ram StringBuffer4
- text ""
+ text_start
para "is? Did you go"
line "take a look?"
done
--- a/data/phone/text/trainers1.asm
+++ b/data/phone/text/trainers1.asm
@@ -739,7 +739,7 @@
UnknownText_0x1b5d9f: ; 0x1b5d9f
text "Hello, @"
text_from_ram StringBuffer3
- text ""
+ text_start
line "speaking."
para "Oh, <PLAY_G>."
@@ -749,7 +749,7 @@
UnknownText_0x1b5dcc: ; 0x1b5dcc
text "Hello, @"
text_from_ram StringBuffer3
- text ""
+ text_start
line "speaking."
para "Oh, <PLAY_G>."
@@ -759,7 +759,7 @@
UnknownText_0x1b5df8: ; 0x1b5df8
text "Hello, @"
text_from_ram StringBuffer3
- text ""
+ text_start
line "speaking."
para "Oh, <PLAY_G>."
@@ -852,7 +852,7 @@
para "This is @"
text_from_ram StringBuffer3
- text ""
+ text_start
line "the HIKER!"
done
@@ -862,7 +862,7 @@
para "This is @"
text_from_ram StringBuffer3
- text ""
+ text_start
line "the HIKER!"
done
@@ -872,7 +872,7 @@
para "This is @"
text_from_ram StringBuffer3
- text ""
+ text_start
line "the HIKER!"
done
@@ -1033,7 +1033,7 @@
UnknownText_0x1b638c: ; 0x1b638c
text "Hello? @"
text_from_ram StringBuffer3
- text ""
+ text_start
line "here…"
para "Hey, <PLAY_G>!"
@@ -1042,7 +1042,7 @@
UnknownText_0x1b63a8: ; 0x1b63a8
text "Hello? @"
text_from_ram StringBuffer3
- text ""
+ text_start
line "here…"
para "Wow, <PLAY_G>!"
@@ -1051,7 +1051,7 @@
UnknownText_0x1b63c4: ; 0x1b63c4
text "Hello? @"
text_from_ram StringBuffer3
- text ""
+ text_start
line "here…"
para "Yippee, <PLAY_G>!"
@@ -1563,7 +1563,7 @@
para "Heh, my @"
text_from_ram StringBuffer4
- text ""
+ text_start
line "is so tough, it"
para "doesn't need to go"
@@ -1722,7 +1722,7 @@
para "My @"
text_from_ram StringBuffer4
- text ""
+ text_start
line "looks like it will"
para "get tough enough"
--- a/data/std_text.asm
+++ b/data/std_text.asm
@@ -232,7 +232,7 @@
ContestResults_PlayerWonAPrizeText:
text "<PLAYER>, the No.@"
text_from_ram StringBuffer3
- text ""
+ text_start
line "finisher, wins"
cont "@"
text_from_ram StringBuffer4
@@ -280,7 +280,7 @@
GymStatue_CityGymText:
text_from_ram StringBuffer3
- text ""
+ text_start
line "#MON GYM"
done
@@ -287,7 +287,7 @@
GymStatue_WinningTrainersText:
text "LEADER: @"
text_from_ram StringBuffer4
- text ""
+ text_start
para "WINNING TRAINERS:"
line "<PLAYER>"
done
--- a/docs/bugs_and_glitches.md
+++ b/docs/bugs_and_glitches.md
@@ -567,7 +567,7 @@
```asm
Text_ABoostedStringBuffer2ExpPoints::
- text ""
+ text_start
line "a boosted"
cont "@"
deciram StringBuffer2, 2, 4
@@ -575,7 +575,7 @@
prompt
Text_StringBuffer2ExpPoints::
- text ""
+ text_start
line "@"
deciram StringBuffer2, 2, 4
text " EXP. Points!"
--- a/docs/text_commands.md
+++ b/docs/text_commands.md
@@ -101,9 +101,9 @@
Play `SFX_DEX_FANFARE_50_79`.
-## `$0C`: <code>limited_interpret_data <i>number</i></code>
+## `$0C`: <code>limited_interpret_data <i>n</i></code>
-Print *number* `"…"`s.
+Print *n* `"…"`s.
## `$0D`: `link_wait_button`
@@ -143,7 +143,7 @@
## `$14`: <code>text_buffer <i>id</i></code>
-Write text from one of the following addresses (listed in `StringBufferPointers`):
+Write text from one of the following addresses (listed in [data/text_buffers.asm](/data/text_buffers.asm)):
0. `StringBuffer3`
1. `StringBuffer4`
@@ -162,3 +162,8 @@
## `$16`: <code>text_jump <i>address</i></code>
Write text from a different bank.
+
+
+## `$00`: `text_start`
+
+Start writing regular text again after a special command.
--- a/engine/map_objects.asm
+++ b/engine/map_objects.asm
@@ -2474,8 +2474,10 @@
push bc
call Coord2Tile
pop bc
+; NPCs disappear if standing on tile $60-$7f (or $e0-$ff),
+; since those IDs are for text characters and textbox frames.
ld a, [hl]
- cp MAPOBJECT_VISIBLE_TILE_LIMIT
+ cp FIRST_REGULAR_TEXT_CHAR
jr nc, .nope
.ok8
dec d
--- a/engine/radio.asm
+++ b/engine/radio.asm
@@ -134,7 +134,7 @@
cp 2
jr nc, .print
inc hl
- ld [hl], "<START>"
+ ld [hl], TX_START
inc a
ld [wNumRadioLinesPrinted], a
cp 2
@@ -813,7 +813,7 @@
ld bc, SCREEN_WIDTH - 1
call FarCopyBytes
ld hl, wPokedexShowPointerAddr
- ld [hl], "<START>"
+ ld [hl], TX_START
inc hl
ld [hl], "<LINE>"
inc hl
--- a/engine/routines/checknickerrors.asm
+++ b/engine/routines/checknickerrors.asm
@@ -64,10 +64,10 @@
; table defining which characters are actually text commands
; format:
; ≥ <
- db "<START>", TX_BOX + 1
+ db TX_START, TX_BOX + 1
db "<PLAY_G>", $18 + 1
- db $1d, "%" + 1
- db $35, "<GREEN>" + 1
+ db "<NI>", "%" + 1
+ db "<ROUTE>", "<GREEN>" + 1
db "<ENEMY>", "<ENEMY>" + 1
db "<MOM>", "<TM>" + 1
db "<ROCKET>", "┘" + 1
--- a/home/text.asm
+++ b/home/text.asm
@@ -214,20 +214,20 @@
._\@:
ENDM
- dict "<DAY>", Char15
+ dict TX_DAY, DayOfWeekChar
dict "<LINE>", LineChar
dict "<NEXT>", NextLineChar
dict TX_FAR, TextFar
- dict $00, NullChar
- dict $4c, Char4C
- dict $4b, Char4B
+ dict TX_START, NullChar
+ dict "<CONT3>", _ContTextNoPause
+ dict "<CONT2>", _ContText
dict "<PARA>", Paragraph
dict "<MOM>", PrintMomsName
dict "<PLAYER>", PrintPlayerName
dict "<RIVAL>", PrintRivalName
- dict $35, Char35
- dict $36, Char36
- dict $37, Char37
+ dict "<ROUTE>", PlaceJPRoute
+ dict "<WATASHI>", PlaceWatashi
+ dict "<KOKO_WA>", PlaceKokoWa
dict "<RED>", PrintRedsName
dict "<GREEN>", PrintGreensName
dict "#", PlacePOKe
@@ -236,7 +236,7 @@
dict "<TM>", TMChar
dict "<TRNER>", TrainerChar
dict "<KOUGEKI>", PlaceKougeki
- dict "<LNBRK>", Char22
+ dict "<LNBRK>", LineBreakChar
dict "<CONT>", ContText
dict "<......>", SixDotsChar
dict "<DONE>", DoneText
@@ -263,7 +263,7 @@
jp NextChar
.not_diacritic
- cp $60 ; Regular characters
+ cp FIRST_REGULAR_TEXT_CHAR
jr nc, .place
cp "パ"
@@ -270,13 +270,13 @@
jr nc, .handakuten
.dakuten
- cp $20
- jr nc, .daku1
+ cp FIRST_HIRAGANA_DAKUTEN_CHAR
+ jr nc, .hiragana_dakuten
add "カ" - "ガ"
- jr .daku2
-.daku1
+ jr .katakana_dakuten
+.hiragana_dakuten
add "か" - "が"
-.daku2
+.katakana_dakuten
ld b, "゙" ; dakuten
call Diacritic
jr .place
@@ -283,12 +283,12 @@
.handakuten
cp "ぱ"
- jr nc, .han1
+ jr nc, .hiragana_handakuten
add "ハ" - "パ"
- jr .han2
-.han1
+ jr .katakana_handakuten
+.hiragana_handakuten
add "は" - "ぱ"
-.han2
+.katakana_handakuten
ld b, "゚" ; handakuten
call Diacritic
@@ -299,7 +299,7 @@
; 0x117b
-Char15:: ; 117b
+DayOfWeekChar:: ; 117b
ld c, l
ld b, h
farcall Function17f036
@@ -328,9 +328,9 @@
SixDotsChar: print_name SixDotsCharText ; 11d3
PlacePKMN: print_name PlacePKMNText ; 11da
PlacePOKE: print_name PlacePOKEText ; 11e1
-Char35: print_name Char35Text ; 11e8
-Char36: print_name Char36Text ; 11ef
-Char37: print_name Char37Text ; 11f6
+PlaceJPRoute: print_name PlaceJPRouteText ; 11e8
+PlaceWatashi: print_name PlaceWatashiText ; 11ef
+PlaceKokoWa: print_name PlaceKokoWaText ; 11f6
PlaceMoveTargetsName:: ; 11fd
@@ -350,7 +350,7 @@
jr PlaceCommandCharacter
.enemy
- ld de, EnemyText ; Enemy
+ ld de, EnemyText
call PlaceString
ld h, b
ld l, c
@@ -375,7 +375,7 @@
call PlaceString
ld h, b
ld l, c
- ld de, String12a2
+ ld de, String_Space
call PlaceString
push bc
callfar Battle_GetTrainerName
@@ -400,9 +400,9 @@
ld l, c
ld a, [wPlayerGender]
bit 0, a
- ld de, String_kun
+ ld de, KunSuffixText
jr z, PlaceCommandCharacter
- ld de, String_chan
+ ld de, ChanSuffixText
jr PlaceCommandCharacter
@@ -414,22 +414,23 @@
jp NextChar
; 0x1273
-TMCharText:: db "TM@" ; 1273
-TrainerCharText:: db "TRAINER@" ; 1276
-PCCharText:: db "PC@" ; 127e
-RocketCharText:: db "ROCKET@" ; 1281
-PlacePOKeText:: db "POKé@" ; 1288
-KougekiText:: db "こうげき@" ; 128d
-SixDotsCharText:: db "……@" ; 1292
-EnemyText:: db "Enemy @" ; 1295
-PlacePKMNText:: db "<PK><MN>@" ; PK MN ; 129c
-PlacePOKEText:: db "<PO><KE>@" ; PO KE ; 129f
-String12a2:: db " @" ; 12a2
-Char35Text::
-Char36Text::
-Char37Text:: db "@" ; 12a4
-String_kun:: db "@" ; 12a5
-String_chan:: db "@" ; 12a6
+TMCharText:: db "TM@"
+TrainerCharText:: db "TRAINER@"
+PCCharText:: db "PC@"
+RocketCharText:: db "ROCKET@"
+PlacePOKeText:: db "POKé@"
+KougekiText:: db "こうげき@"
+SixDotsCharText:: db "……@"
+EnemyText:: db "Enemy @"
+PlacePKMNText:: db "<PK><MN>@"
+PlacePOKEText:: db "<PO><KE>@"
+String_Space:: db " @"
+; These strings have been dummied out.
+PlaceJPRouteText::
+PlaceWatashiText::
+PlaceKokoWaText:: db "@"
+KunSuffixText:: db "@"
+ChanSuffixText:: db "@"
; 12a7
NextLineChar:: ; 12a7
@@ -440,7 +441,7 @@
jp NextChar
; 12b0
-Char22:: ; 12b0
+LineBreakChar:: ; 12b0
pop hl
ld bc, SCREEN_WIDTH
add hl, bc
@@ -523,7 +524,7 @@
; 131f
-Char4B:: ; 131f
+_ContText:: ; 131f
ld a, [wLinkMode]
or a
jr nz, .communication
@@ -539,8 +540,9 @@
ld a, [wLinkMode]
or a
call z, UnloadBlinkingCursor
+ ; fallthrough
-Char4C:: ; 1337
+_ContTextNoPause:: ; 1337
push de
call TextScroll
call TextScroll
@@ -561,7 +563,7 @@
pop de
jp NextChar
-.cont db $4b, "@"
+.cont: db "<CONT2>@"
; 1356
@@ -596,7 +598,8 @@
ld de, .stop
dec de
ret
-.stop db "@"
+
+.stop: db "@"
; 1383
NullChar:: ; 1383
@@ -688,7 +691,7 @@
ld hl, .stop
ret
-.stop db "@"
+.stop: db "@"
; 13e5
--- a/macros/scripts/text.asm
+++ b/macros/scripts/text.asm
@@ -1,4 +1,4 @@
-text EQUS "db \"<START>\"," ; Start writing text.
+text EQUS "db TX_START," ; Start writing text.
next EQUS "db \"<NEXT>\"," ; Move a line down.
line EQUS "db \"<LINE>\"," ; Start writing at the bottom line.
page EQUS "db \"@\"," ; Start a new Pokédex page.
@@ -8,7 +8,12 @@
prompt EQUS "db \"<PROMPT>\"" ; Prompt the player to end a text box (initiating some other event).
; TextCommands indexes (see home/text.asm)
- enum_start $01
+ enum_start
+
+ enum TX_START ; $00
+text_start: MACRO
+ db TX_START
+ENDM
enum TX_RAM ; $01
text_from_ram: MACRO
--- a/maps/CeladonDeptStore6F.asm
+++ b/maps/CeladonDeptStore6F.asm
@@ -110,7 +110,7 @@
para "@"
text_from_ram StringBuffer3
- text ""
+ text_start
line "popped out."
done
--- a/maps/GoldenrodCity.asm
+++ b/maps/GoldenrodCity.asm
@@ -548,7 +548,7 @@
done
UnknownText_0x1991cf:
- text ""
+ text_start
done
GoldenrodCity_MapEvents:
--- a/maps/GoldenrodDeptStore6F.asm
+++ b/maps/GoldenrodDeptStore6F.asm
@@ -103,7 +103,7 @@
text "Clang! A can of"
line "@"
text_from_ram StringBuffer3
- text ""
+ text_start
cont "popped out!"
done
--- a/maps/Pokecenter2F.asm
+++ b/maps/Pokecenter2F.asm
@@ -915,7 +915,7 @@
Text_RejectNewMon:
text "Sorry--@"
text_from_ram StringBuffer1
- text ""
+ text_start
line "can't be taken."
prompt
--- a/maps/Route35NationalParkGate.asm
+++ b/maps/Route35NationalParkGate.asm
@@ -374,7 +374,7 @@
UnknownText_0x6a79a:
text "You still have @"
text_from_ram StringBuffer3
- text ""
+ text_start
line "minute(s) left."
para "Do you want to"
--- a/maps/Route36NationalParkGate.asm
+++ b/maps/Route36NationalParkGate.asm
@@ -624,7 +624,7 @@
UnknownText_0x6b284:
text "You still have @"
text_from_ram StringBuffer3
- text ""
+ text_start
line "minute(s) left."
para "Do you want to"