From 6a41d4f63e8fb9f14e1c0a4a9ace062dac747432 Mon Sep 17 00:00:00 2001 From: Remy Oukaour Date: Sat, 9 Dec 2017 12:24:50 -0500 Subject: [PATCH] Define more charmap characters and use them in place of hard-coded numbers --- battle/trainer_huds.asm | 4 +- engine/events_2.asm | 2 +- engine/phone.asm | 4 +- engine/printnum.asm | 2 +- engine/stats_screen.asm | 6 +-- engine/trainer_card.asm | 2 +- engine/warp_connection.asm | 2 +- event/halloffame.asm | 10 ++-- event/magikarp.asm | 2 +- gfx/font.asm | 12 ++--- home/text.asm | 58 +++++++++++------------ macros/charmap.asm | 95 ++++++++++++++++++++++++++------------ macros/text.asm | 6 +-- main.asm | 6 +-- misc/mobile_42.asm | 6 +-- 15 files changed, 125 insertions(+), 92 deletions(-) diff --git a/battle/trainer_huds.asm b/battle/trainer_huds.asm index 03a85b9f4..60be946fa 100755 --- a/battle/trainer_huds.asm +++ b/battle/trainer_huds.asm @@ -256,9 +256,9 @@ _ShowLinkBattleParticipants: ; 2c1b2 ld de, OTPlayerName call PlaceString hlcoord 9, 8 - ld a, $69 ; "V" + ld a, "" ld [hli], a - ld [hl], $6a ; "S" + ld [hl], "" callba LinkBattle_TrainerHuds ; no need to callba ld b, SCGB_DIPLOMA call GetSGBLayout diff --git a/engine/events_2.asm b/engine/events_2.asm index 42e3ed8e4..285b3e05b 100644 --- a/engine/events_2.asm +++ b/engine/events_2.asm @@ -627,7 +627,7 @@ CmdQueue_StoneTable: ; 97f42 ld hl, OBJECT_MOVEMENTTYPE add hl, de ld a, [hl] - cp STEP_TYPE_SKYFALL_TOP + cp SPRITEMOVEDATA_STRENGTH_BOULDER jr nz, .next ld hl, OBJECT_NEXT_TILE diff --git a/engine/phone.asm b/engine/phone.asm index 8163047e0..69d685622 100644 --- a/engine/phone.asm +++ b/engine/phone.asm @@ -518,7 +518,7 @@ Phone_FirstOfTwoRings: ; 902b3 Phone_CallerTextboxWithName2: ; 902c9 call Phone_CallerTextbox hlcoord 1, 2 - ld [hl], $62 + ld [hl], "" inc hl inc hl ld a, [PhoneScriptBank] @@ -618,7 +618,7 @@ Function90363: ; 90363 (24:4363) push bc call Phone_CallerTextbox hlcoord 1, 1 - ld [hl], $62 + ld [hl], "" inc hl inc hl ld d, h diff --git a/engine/printnum.asm b/engine/printnum.asm index 4ef7721c8..c68776d5f 100755 --- a/engine/printnum.asm +++ b/engine/printnum.asm @@ -275,7 +275,7 @@ _PrintNum:: ; c4c7 dec e ret nz inc hl - ld [hl], "·" + ld [hl], "" ret .PrintLeadingZero: ; c644 diff --git a/engine/stats_screen.asm b/engine/stats_screen.asm index 6a59019f0..fef83afc7 100755 --- a/engine/stats_screen.asm +++ b/engine/stats_screen.asm @@ -453,7 +453,7 @@ Function4df7f: ; 4df7f ld bc, SCREEN_WIDTH ld d, SCREEN_HEIGHT .loop - ld a, $31 + ld a, "|" ld [hl], a add hl, bc dec d @@ -583,7 +583,7 @@ StatsScreen_LoadGFX: ; 4dfb6 (13:5fb6) hlcoord 9, 8 ld de, SCREEN_WIDTH ld b, 10 - ld a, $31 + ld a, "|" .vertical_divider ld [hl], a add hl, de @@ -743,7 +743,7 @@ StatsScreen_LoadGFX: ; 4dfb6 (13:5fb6) hlcoord 10, 8 ld de, SCREEN_WIDTH ld b, 10 - ld a, $31 + ld a, "|" .BluePageVerticalDivider: ld [hl], a add hl, de diff --git a/engine/trainer_card.asm b/engine/trainer_card.asm index 23defe919..497d81ae6 100755 --- a/engine/trainer_card.asm +++ b/engine/trainer_card.asm @@ -448,7 +448,7 @@ TrainerCard_Page1_PrintGameTime: ; 25415 (9:5415) ret nz hlcoord 15, 12 ld a, [hl] - xor %01010001 ; $7F <--> $2E + xor %01010001 ; $7F (space) <--> $2E (colon) ld [hl], a ret diff --git a/engine/warp_connection.asm b/engine/warp_connection.asm index 180aada87..f9b379cb2 100755 --- a/engine/warp_connection.asm +++ b/engine/warp_connection.asm @@ -254,7 +254,7 @@ LoadMapTimeOfDay: ; 104750 pop af ld [rVBK], a - ld a, $60 + ld a, "" ld bc, VBGMap1 - VBGMap0 hlbgcoord 0, 0 call ByteFill diff --git a/event/halloffame.asm b/event/halloffame.asm index 8d542addb..e1870b8ac 100755 --- a/event/halloffame.asm +++ b/event/halloffame.asm @@ -1,3 +1,5 @@ +HALLOFFAME_COLON EQU $63 + HallOfFame:: ; 0x8640e call HallOfFame_FadeOutMusic ld a, [StatusFlags] @@ -487,7 +489,7 @@ DisplayHOFMon: ; 86748 hlcoord 1, 13 ld a, "№" ld [hli], a - ld [hl], "·" + ld [hl], "" hlcoord 3, 13 ld de, wd265 lb bc, PRINTNUM_LEADINGZEROS | 1, 3 @@ -531,8 +533,8 @@ DisplayHOFMon: ; 86748 HOF_AnimatePlayerPic: ; 86810 call ClearBGPalettes - ld hl, VTiles2 tile $63 - ld de, FontExtra + 13 tiles + ld hl, VTiles2 tile HALLOFFAME_COLON + ld de, FontExtra + 13 tiles ; "" lb bc, BANK(FontExtra), 1 call Request2bpp hlcoord 0, 0 @@ -604,7 +606,7 @@ HOF_AnimatePlayerPic: ; 86810 ld de, GameTimeHours lb bc, 2, 3 call PrintNum - ld [hl], 99 + ld [hl], HALLOFFAME_COLON inc hl ld de, GameTimeMinutes lb bc, PRINTNUM_LEADINGZEROS | 1, 2 diff --git a/event/magikarp.asm b/event/magikarp.asm index f926196cd..649760c1d 100644 --- a/event/magikarp.asm +++ b/event/magikarp.asm @@ -79,7 +79,7 @@ Special_CheckMagikarpLength: ; fbb32 ; 0xfbbae Magikarp_LoadFeetInchesChars: ; fbbae - ld hl, VTiles2 tile "′" + ld hl, VTiles2 tile "′" ; $6e ld de, .feetinchchars lb bc, BANK(.feetinchchars), 2 call Request2bpp diff --git a/gfx/font.asm b/gfx/font.asm index 76c87545b..578085ddf 100755 --- a/gfx/font.asm +++ b/gfx/font.asm @@ -131,11 +131,11 @@ _LoadStandardFont:: ; fb449 _LoadFontsExtra1:: ; fb48a ld de, MobilePhoneTilesGFX - ld hl, VTiles2 tile $60 + ld hl, VTiles2 tile "" ; $60 lb bc, BANK(MobilePhoneTilesGFX), 1 call Get1bpp_2 ld de, OverworldPhoneIconGFX - ld hl, VTiles2 tile $62 + ld hl, VTiles2 tile "" ; $62 lb bc, BANK(OverworldPhoneIconGFX), 1 call Get2bpp_2 ld de, FontExtra + 3 * LEN_2BPP_TILE @@ -147,7 +147,7 @@ _LoadFontsExtra1:: ; fb48a _LoadFontsExtra2:: ; fb4b0 ld de, FontsExtra2_UpArrowGFX - ld hl, VTiles2 tile $61 + ld hl, VTiles2 tile "▲" ; $61 ld b, BANK(FontsExtra2_UpArrowGFX) ld c, 1 call Get2bpp_2 @@ -170,10 +170,10 @@ LoadFrame: ; fb4cc call AddNTimes ld d, h ld e, l - ld hl, VTiles2 tile $79 + ld hl, VTiles2 tile "┌" ; $79 lb bc, BANK(Frames), TILES_PER_FRAME call Get1bpp_2 - ld hl, VTiles2 tile $7f + ld hl, VTiles2 tile " " ; $7f ld de, TextBoxSpaceGFX lb bc, BANK(TextBoxSpaceGFX), 1 call Get1bpp_2 @@ -186,7 +186,7 @@ LoadBattleFontsHPBar: ; fb4f2 lb bc, BANK(FontBattleExtra), $c call Get2bpp_2 ld hl, VTiles2 tile $70 - ld de, FontBattleExtra + $10 * LEN_2BPP_TILE + ld de, FontBattleExtra tile $10 lb bc, BANK(FontBattleExtra), 3 call Get2bpp_2 call LoadFrame diff --git a/home/text.asm b/home/text.asm index f7730319a..4e20ab17e 100644 --- a/home/text.asm +++ b/home/text.asm @@ -230,41 +230,41 @@ dict2: macro ._\@: endm - dict "", Char15 - dict "", LineChar - dict "", NextLineChar - dict TX_FAR, TextFar - dict $00, NullChar - dict $4c, Char4C - dict $4b, Char4B - dict "", Paragraph - dict "", PrintMomsName + dict "", Char15 + dict "", LineChar + dict "", NextLineChar + dict TX_FAR, TextFar + dict $00, NullChar + dict $4c, Char4C + dict $4b, Char4B + dict "", Paragraph + dict "", PrintMomsName dict "", PrintPlayerName - dict "", PrintRivalName - dict $35, Char35 - dict $36, Char36 - dict $37, Char37 - dict "", PrintRedsName - dict "", PrintGreensName - dict "#", PlacePOKe - dict "", PCChar + dict "", PrintRivalName + dict $35, Char35 + dict $36, Char36 + dict $37, Char37 + dict "", PrintRedsName + dict "", PrintGreensName + dict "#", PlacePOKe + dict "", PCChar dict "", RocketChar - dict "", TMChar - dict "", TrainerChar - dict $23, PlaceKougeki - dict "", Char22 - dict "", ContText + dict "", TMChar + dict "", TrainerChar + dict $23, PlaceKougeki + dict "", Char22 + dict "", ContText dict "<......>", SixDotsChar - dict "", DoneText + dict "", DoneText dict "", PromptText - dict "", PlacePKMN - dict "", PlacePOKE - dict $25, NextChar - dict2 $1f, " " + dict "", PlacePKMN + dict "", PlacePOKE + dict $25, NextChar + dict2 $1f, " " dict "", PlaceDexEnd dict "", PlaceMoveTargetsName - dict "", PlaceMoveUsersName - dict "", PlaceEnemysName + dict "", PlaceMoveUsersName + dict "", PlaceEnemysName dict "", PlaceGenderedPlayerName cp "゚" diff --git a/macros/charmap.asm b/macros/charmap.asm index 445922932..89398033e 100644 --- a/macros/charmap.asm +++ b/macros/charmap.asm @@ -1,53 +1,63 @@ ; Control characters charmap "", $00 - charmap "", $14 ; + gender + charmap "", $14 ; gendered PlayerName; same as "" in English charmap "", $15 - charmap "¯", $1f + charmap "¯", $1f ; soft linebreak charmap "", $22 - charmap "", $24 + charmap "", $24 ; "" charmap "%", $25 - charmap "", $38 - charmap "", $39 + charmap "", $38 ; RedsName + charmap "", $39 ; GreensName charmap "", $3f - charmap "", $3f - charmap "", $49 - charmap "", $4a + charmap "", $49 ; MomsName + charmap "", $4a ; "" charmap "", $4e charmap "", $4f charmap "@", $50 charmap "", $51 - charmap "", $52 + charmap "", $52 ; PlayerName charmap "", $53 charmap "#", $54 charmap "", $55 - charmap "<......>", $56 + charmap "<......>", $56 ; "……" charmap "", $57 charmap "", $58 charmap "", $59 charmap "", $5a - charmap "", $5b - charmap "", $5c - charmap "", $5d - charmap "", $5e + charmap "", $5b ; "PC" + charmap "", $5c ; "TM" + charmap "", $5d ; "TRAINER" + charmap "", $5e ; "ROCKET" charmap "", $5f -; Actual characters - charmap "▲", $61 - charmap "_", $62 - charmap "", $6d ; necessary because ":" is already used - charmap "′", $6e - charmap "", $6e - charmap "″", $6f +; Actual characters (from gfx/misc/font_extra.png) + charmap "", $60 ; unused + charmap "", $61 ; unused + charmap "", $62 ; unused + charmap "", $63 ; unused + charmap "", $64 ; unused + charmap "", $65 ; unused + charmap "", $66 ; unused + charmap "", $67 ; unused + charmap "", $68 ; unused + charmap "", $69 + charmap "", $6a + charmap "", $6b ; unused + charmap "", $6c ; unused + charmap "", $6d ; colon with tinier dots than ":" + charmap "ぃ", $6e ; hiragana small i, unused + charmap "ぅ", $6f ; hiragana small u, unused charmap "", $70 charmap "", $71 - charmap "◀", $71 - charmap "<``>", $72 - charmap "<''>", $73 - charmap "", $73 - charmap "№", $74 - charmap "…", $75 + charmap "<``>", $72 ; opening quote + charmap "<''>", $73 ; closing quote + charmap "·", $74 ; middle dot, unused + charmap "…", $75 ; ellipsis + charmap "ぁ", $76 ; hiragana small a, unused + charmap "ぇ", $77 ; hiragana small e, unused + charmap "ぉ", $78 ; hiragana small o, unused charmap "┌", $79 charmap "─", $7a @@ -57,6 +67,32 @@ charmap "┘", $7e charmap " ", $7f +; Actual characters (from gfx/misc/font_battle_extra.png) + + charmap "", $6e + + charmap "<ど>", $70 ; hiragana small do, unused + charmap "◀", $71 + charmap "『", $72 ; Japanese opening quote, unused + charmap "", $73 + charmap "№", $74 + +; Actual characters (from other graphics files) + + charmap "|", $31 ; StatsScreenPageTilesGFX + + charmap "", $3f ; ShinyIcon + + charmap "", $60 ; MobilePhoneTilesGFX + charmap "▲", $61 ; FontsExtra2_UpArrowGFX + charmap "", $62 ; OverworldPhoneIconGFX + charmap "_", $62 ; HPExpBarBorderGFX + + charmap "′", $6e ; Magikarp_LoadFeetInchesChars.feetinchchars + charmap "″", $6f ; Magikarp_LoadFeetInchesChars.feetinchchars + +; Actual characters (from gfx/misc/font.png) + charmap "A", $80 charmap "B", $81 charmap "C", $82 @@ -152,7 +188,7 @@ charmap "♂", $ef charmap "¥", $f0 charmap "×", $f1 - charmap "·", $f2 + charmap "", $f2 ; same as "." in English charmap "/", $f3 charmap ",", $f4 charmap "♀", $f5 @@ -168,8 +204,7 @@ charmap "8", $fe charmap "9", $ff -; Japanese, for those bits of text that -; were not translated to English. +; Japanese kana, for those bits of text that were not translated to English charmap "ガ", $5 charmap "ギ", $6 diff --git a/macros/text.asm b/macros/text.asm index cc7f609b6..08004f32a 100644 --- a/macros/text.asm +++ b/macros/text.asm @@ -1,16 +1,12 @@ text EQUS "db $00," ; Start writing text. next EQUS "db $4e," ; Move a line down. line EQUS "db $4f," ; Start writing at the bottom line. +page EQUS "db $50," ; Start a new Pokedex page. para EQUS "db $51," ; Start a new paragraph. cont EQUS "db $55," ; Scroll to the next line. done EQUS "db $57" ; End a text box. prompt EQUS "db $58" ; Prompt the player to end a text box (initiating some other event). -; Pokedex text commands are only used with pokered. -; They are included for compatibility. -page EQUS "db $50," ; Start a new Pokedex page. -dex EQUS "db $e8, $50" ; End a Pokedex entry. - ; TX_RAM EQU $01 ; TX_FAR EQU $16 enum_start 1 diff --git a/main.asm b/main.asm index 2c19e9743..b2dbbeb9e 100644 --- a/main.asm +++ b/main.asm @@ -92,7 +92,7 @@ ReanchorBGMap_NoOAMUpdate:: ; 6454 xor a ld [hBGMapMode], a ld [hWY], a - callba HDMATransfer_FillBGMap0WithTile60 ; no need to farcall + callba HDMATransfer_FillBGMap0WithBlack ; no need to farcall ld a, VBGMap0 / $100 call .LoadBGMapAddrIntoHRAM xor a @@ -131,13 +131,13 @@ LoadFonts_NoOAMUpdate:: ; 64bf call LoadStandardFont ret -HDMATransfer_FillBGMap0WithTile60: ; 64db +HDMATransfer_FillBGMap0WithBlack: ; 64db ld a, [rSVBK] push af ld a, $6 ld [rSVBK], a - ld a, $60 + ld a, "" ; $60 ld hl, wDecompressScratch ld bc, wScratchAttrMap - wDecompressScratch call ByteFill diff --git a/misc/mobile_42.asm b/misc/mobile_42.asm index d08bc8882..d7690f813 100644 --- a/misc/mobile_42.asm +++ b/misc/mobile_42.asm @@ -1313,7 +1313,7 @@ MobileTradeAnim_DisplayEggData .EggTemplate: ; 108a1d db "タマゴ" next "おや/?????" - next "№·?????" + next "?????" db "@" ; 108a33 @@ -1353,10 +1353,10 @@ MobileTradeAnim_LoadMonTemplate: ; 108a5b ; 108a79 .MonTemplate: ; 108a79 - db "─ №·" + db "─ №" next "" next "おや/" - next "№·" + next "" db "@" ; 108a87