Local UI tiles don't belong in charmap

Separate 1bpp font tiles from gfx/mobile/phone_tiles.png
This commit is contained in:
Remy Oukaour 2018-01-11 22:16:17 -05:00
parent 177341425c
commit 163f3e0c3f
17 changed files with 113 additions and 95 deletions

View File

@ -80,15 +80,12 @@
; Actual characters (from other graphics files)
charmap "|", $31 ; from gfx/stats/stats_tiles
charmap "<SHINY>", $3f ; gfx/stats/shiny
charmap "<BLACK>", $60 ; from gfx/mobile/phone_tiles.2bpp
; needed for _LoadFontsExtra1 (see gfx/font.asm)
charmap "<BLACK>", $60 ; gfx/font/black_arrow.2bpp
charmap "▲", $61 ; gfx/font/up_arrow.png
charmap "<PHONE>", $62 ; gfx/font/overworld_phone_icon.2bpp
charmap "_", $62 ; from gfx/battle/hp_exp_bar_border.1bpp
charmap "<PHONE>", $62 ; gfx/font/phone_icon.2bpp
; needed for Special_MagikarpHouseSign (see engine/events/magikarp.asm)
charmap "", $6e ; gfx/font/feet_inches.png
charmap "″", $6f ; gfx/font/feet_inches.png

View File

@ -1,6 +1,6 @@
TILE_WIDTH EQU 8 ; pixels
LEN_1BPP_TILE EQU TILE_WIDTH ; bytes
LEN_2BPP_TILE EQU TILE_WIDTH * 2 ; bytes
LEN_1BPP_TILE EQU 1 * TILE_WIDTH ; bytes
LEN_2BPP_TILE EQU 2 * TILE_WIDTH ; bytes
NUM_PAL_COLORS EQU 4

View File

@ -43,6 +43,7 @@ MAX_PC_ITEMS EQU 50
; mail
MAIL_LINE_LENGTH EQU $10
MAIL_MSG_LENGTH EQU $20
MAILBOX_CAPACITY EQU 10
MAIL_STRUCT_LENGTH EQU $2f ; mailmsg struct

View File

@ -1,3 +1,9 @@
NAMINGSCREEN_CURSOR EQU $7e
NAMINGSCREEN_BORDER EQUS "\"<BLACK>\"" ; $60
NAMINGSCREEN_MIDDLELINE EQUS "\"→\"" ; $eb
NAMINGSCREEN_UNDERLINE EQUS "\"<DOT>\"" ; $f2
_NamingScreen: ; 0x116b7
call DisableSpriteUpdates
call NamingScreen
@ -287,7 +293,7 @@ NamingScreen_InitText: ; 118a8
call WaitTop
hlcoord 0, 0
ld bc, SCREEN_WIDTH * SCREEN_HEIGHT
ld a, $60
ld a, NAMINGSCREEN_BORDER
call ByteFill
hlcoord 1, 1
lb bc, 6, 18
@ -729,7 +735,7 @@ NamingScreen_AdvanceCursor_CheckEndOfString: ; 11b27
ld a, [hl]
cp "@"
jr z, .end_of_string
ld [hl], $f2
ld [hl], NAMINGSCREEN_UNDERLINE
and a
ret
@ -776,12 +782,12 @@ NamingScreen_DeleteCharacter: ; 11bbc (4:5bbc)
ret z
dec [hl]
call NamingScreen_GetTextCursorPosition
ld [hl], $f2
ld [hl], NAMINGSCREEN_UNDERLINE
inc hl
ld a, [hl]
cp $f2
cp NAMINGSCREEN_UNDERLINE
ret nz
ld [hl], $eb
ld [hl], NAMINGSCREEN_MIDDLELINE
ret
NamingScreen_GetTextCursorPosition: ; 11bd0 (4:5bd0)
@ -800,17 +806,17 @@ NamingScreen_GetTextCursorPosition: ; 11bd0 (4:5bd0)
; 11be0
NamingScreen_InitNameEntry: ; 11be0
; load $f2, ($eb * [wNamingScreenMaxNameLength]), $50 into the dw address at wNamingScreenDestinationPointer
; load NAMINGSCREEN_UNDERLINE, (NAMINGSCREEN_MIDDLELINE * [wNamingScreenMaxNameLength]), "@" into the dw address at wNamingScreenDestinationPointer
ld hl, wNamingScreenDestinationPointer
ld a, [hli]
ld h, [hl]
ld l, a
ld [hl], $f2
ld [hl], NAMINGSCREEN_UNDERLINE
inc hl
ld a, [wNamingScreenMaxNameLength]
dec a
ld c, a
ld a, $eb
ld a, NAMINGSCREEN_MIDDLELINE
.loop
ld [hli], a
dec c
@ -829,9 +835,9 @@ NamingScreen_StoreEntry: ; 11bf7 (4:5bf7)
ld c, a
.loop
ld a, [hl]
cp $eb
cp NAMINGSCREEN_MIDDLELINE
jr z, .terminator
cp $f2
cp NAMINGSCREEN_UNDERLINE
jr nz, .not_terminator
.terminator
ld [hl], "@"
@ -891,22 +897,22 @@ LoadNamingScreenGFX: ; 11c51
call LoadFontsExtra
ld de, NamingScreenGFX_MiddleLine
ld hl, vTiles1 tile $6b
ld hl, vTiles0 tile NAMINGSCREEN_MIDDLELINE
lb bc, BANK(NamingScreenGFX_MiddleLine), 1
call Get1bpp
ld de, NamingScreenGFX_UnderLine
ld hl, vTiles1 tile $72
ld hl, vTiles0 tile NAMINGSCREEN_UNDERLINE
lb bc, BANK(NamingScreenGFX_UnderLine), 1
call Get1bpp
ld de, vTiles2 tile $60
ld de, vTiles2 tile NAMINGSCREEN_BORDER
ld hl, NamingScreenGFX_Border
ld bc, 1 tiles
ld a, BANK(NamingScreenGFX_Border)
call FarCopyBytes
ld de, vTiles0 tile $7e
ld de, vTiles0 tile NAMINGSCREEN_CURSOR
ld hl, NamingScreenGFX_Cursor
ld bc, 2 tiles
ld a, BANK(NamingScreenGFX_Cursor)
@ -915,7 +921,7 @@ LoadNamingScreenGFX: ; 11c51
ld a, $5
ld hl, wSpriteAnimDict + 9 * 2
ld [hli], a
ld [hl], $7e
ld [hl], NAMINGSCREEN_CURSOR
xor a
ld [hSCY], a
ld [wGlobalAnimYOffset], a
@ -1019,9 +1025,9 @@ _ComposeMailMessage: ; 11e75 (mail?)
ld e, [hl]
inc hl
ld d, [hl]
ld hl, $10
ld hl, MAIL_LINE_LENGTH
add hl, de
ld [hl], $4e
ld [hl], "<NEXT>"
ret
; 11ef4 (4:5ef4)
@ -1046,7 +1052,7 @@ INCBIN "gfx/icons/mail2.2bpp"
call WaitTop
hlcoord 0, 0
ld bc, 6 * SCREEN_WIDTH
ld a, $60 ; border
ld a, NAMINGSCREEN_BORDER
call ByteFill
hlcoord 0, 6
ld bc, 12 * SCREEN_WIDTH
@ -1176,13 +1182,13 @@ INCBIN "gfx/icons/mail2.2bpp"
jr c, .start
ld hl, wNamingScreenCurrNameLength
ld a, [hl]
cp $10
cp MAIL_LINE_LENGTH
ret nz
inc [hl]
call NamingScreen_GetTextCursorPosition
ld [hl], $f2
ld [hl], NAMINGSCREEN_UNDERLINE
dec hl
ld [hl], $4e
ld [hl], "<NEXT>"
ret
.start
@ -1202,13 +1208,13 @@ INCBIN "gfx/icons/mail2.2bpp"
call NamingScreen_DeleteCharacter
ld hl, wNamingScreenCurrNameLength
ld a, [hl]
cp $10
cp MAIL_LINE_LENGTH
ret nz
dec [hl]
call NamingScreen_GetTextCursorPosition
ld [hl], $f2
ld [hl], NAMINGSCREEN_UNDERLINE
inc hl
ld [hl], $4e
ld [hl], "<NEXT>"
ret
.finished

View File

@ -1,3 +1,6 @@
PRINTPARTY_HP EQUS "\"◀\"" ; $71
PRINTPARTY_SHINY EQUS "\"<ENEMY>\"" ; $3f
PrintPage1: ; 1dc1b0
hlcoord 0, 0
decoord 0, 0, wPrinterTileMapBuffer
@ -141,17 +144,17 @@ PrintPartyMonPage1: ; 1dc381
call LoadFontsBattleExtra
ld de, GBPrinterHPIcon
ld hl, vTiles2 tile $71
ld hl, vTiles2 tile PRINTPARTY_HP
lb bc, BANK(GBPrinterHPIcon), 1
call Request1bpp
ld de, GBPrinterLvIcon
ld hl, vTiles2 tile $6e
ld hl, vTiles2 tile "<LV>"
lb bc, BANK(GBPrinterLvIcon), 1
call Request1bpp
ld de, ShinyIconGFX
ld hl, vTiles2 tile $3f
ld hl, vTiles2 tile PRINTPARTY_SHINY
lb bc, BANK(ShinyIconGFX), 1
call Get2bpp
@ -166,7 +169,7 @@ PrintPartyMonPage1: ; 1dc381
ld a, [TempMonLevel]
call PrintLevel_Force3Digits
hlcoord 12, 2
ld [hl], "◀" ; Filled left triangle
ld [hl], PRINTPARTY_HP
inc hl
ld de, TempMonMaxHP
lb bc, 2, 3
@ -330,7 +333,7 @@ Function1dc52c: ; 1dc52c
farcall CheckShininess
ret nc
hlcoord 18, 2
ld [hl], "<SHINY>"
ld [hl], PRINTPARTY_SHINY
ret
; 1dc550

View File

@ -459,7 +459,7 @@ Function4df7f: ; 4df7f
ld bc, SCREEN_WIDTH
ld d, SCREEN_HEIGHT
.loop
ld a, "|"
ld a, $31 ; vertical divider
ld [hl], a
add hl, bc
dec d
@ -470,7 +470,7 @@ Function4df7f: ; 4df7f
StatsScreen_PlaceHorizontalDivider: ; 4df8f (13:5f8f)
hlcoord 0, 7
ld b, SCREEN_WIDTH
ld a, "_"
ld a, $62 ; horizontal divider (empty HP/exp bar)
.loop
ld [hli], a
dec b
@ -489,7 +489,7 @@ StatsScreen_PlaceShinyIcon: ; 4dfa6 (13:5fa6)
farcall CheckShininess
ret nc
hlcoord 19, 0
ld [hl], "<SHINY>"
ld [hl], $3f ; shiny icon
ret
StatsScreen_LoadGFX: ; 4dfb6 (13:5fb6)
@ -550,7 +550,7 @@ StatsScreen_LoadGFX: ; 4dfb6 (13:5fb6)
ld b, $0
predef DrawPlayerHP
hlcoord 8, 9
ld [hl], $41
ld [hl], $41 ; right HP/exp bar end cap
ld de, .Status_Type
hlcoord 0, 12
call PlaceString
@ -562,7 +562,7 @@ StatsScreen_LoadGFX: ; 4dfb6 (13:5fb6)
and $f0
jr z, .NotImmuneToPkrs
hlcoord 8, 8
ld [hl], "."
ld [hl], "." ; Pokérus immunity dot
.NotImmuneToPkrs:
ld a, [MonType]
cp BOXMON
@ -588,7 +588,7 @@ StatsScreen_LoadGFX: ; 4dfb6 (13:5fb6)
hlcoord 9, 8
ld de, SCREEN_WIDTH
ld b, 10
ld a, "|"
ld a, $31 ; vertical divider
.vertical_divider
ld [hl], a
add hl, de
@ -620,9 +620,9 @@ StatsScreen_LoadGFX: ; 4dfb6 (13:5fb6)
ld de, TempMonExp + 2
predef FillInExpBar
hlcoord 10, 16
ld [hl], $40
ld [hl], $40 ; left exp bar end cap
hlcoord 19, 16
ld [hl], $41
ld [hl], $41 ; right exp bar end cap
ret
.PrintNextLevel: ; 4e0d3 (13:60d3)
@ -748,7 +748,7 @@ StatsScreen_LoadGFX: ; 4dfb6 (13:5fb6)
hlcoord 10, 8
ld de, SCREEN_WIDTH
ld b, 10
ld a, "|"
ld a, $31 ; vertical divider
.BluePageVerticalDivider:
ld [hl], a
add hl, de
@ -1087,17 +1087,17 @@ StatsScreen_AnimateEgg: ; 4e497 (13:6497)
StatsScreen_LoadPageIndicators: ; 4e4cd (13:64cd)
hlcoord 13, 5
ld a, $36
ld a, $36 ; first of 4 small square tiles
call .load_square
hlcoord 15, 5
ld a, $36
ld a, $36 ; """
call .load_square
hlcoord 17, 5
ld a, $36
ld a, $36 ; """
call .load_square
ld a, c
cp GREEN_PAGE
ld a, $3a
ld a, $3a ; first of 4 large square tiles
hlcoord 13, 5 ; PINK_PAGE (< GREEN_PAGE)
jr c, .load_square
hlcoord 15, 5 ; GREEN_PAGE (= GREEN_PAGE)
@ -1120,7 +1120,7 @@ StatsScreen_LoadPageIndicators: ; 4e4cd (13:64cd)
CopyNickname: ; 4e505 (13:6505)
ld de, StringBuffer1
ld bc, PKMN_NAME_LENGTH
jr .okay ; uuterly pointless
jr .okay ; utterly pointless
.okay
ld a, [MonType]
cp BOXMON

View File

@ -1,3 +1,6 @@
TIMESET_UP_ARROW EQUS "\"♂\"" ; $ef
TIMESET_DOWN_ARROW EQUS "\"♀\"" ; $f5
InitClock: ; 90672 (24:4672)
; Ask the player to set the time.
ld a, [hInMenu]
@ -410,11 +413,11 @@ Special_SetDayOfWeek: ; 90913
ld a, $1
ld [hInMenu], a
ld de, TimeSetUpArrowGFX
ld hl, vTiles1 tile $6f
ld hl, vTiles0 tile TIMESET_UP_ARROW
lb bc, BANK(TimeSetUpArrowGFX), 1
call Request1bpp
ld de, TimeSetDownArrowGFX
ld hl, vTiles1 tile $75
ld hl, vTiles0 tile TIMESET_DOWN_ARROW
lb bc, BANK(TimeSetDownArrowGFX), 1
call Request1bpp
xor a
@ -431,9 +434,9 @@ Special_SetDayOfWeek: ; 90913
ld c, 9
call TextBox
hlcoord 14, 3
ld [hl], "♂" ; gets overwritten with special up arrow
ld [hl], TIMESET_UP_ARROW
hlcoord 14, 6
ld [hl], "♀" ; gets overwritten with special down arrow
ld [hl], TIMESET_DOWN_ARROW
hlcoord 10, 5
call .PlaceWeekdayString
call ApplyTilemap

View File

@ -54,8 +54,8 @@ UnusedWeekdayKanjiGFX: ; unused kanji
INCBIN "gfx/font/unused_weekday_kanji.2bpp"
; f8f24
OverworldPhoneIconGFX: ; f8f24
INCBIN "gfx/font/overworld_phone_icon.2bpp"
PokegearPhoneIconGFX: ; f8f24
INCBIN "gfx/font/phone_icon.2bpp"
; f8f34
UnusedBoldFontGFX: ; unused bold letters + unown chars
@ -66,7 +66,15 @@ TextBoxSpaceGFX: ; f9204
INCBIN "gfx/frames/space.1bpp"
; f9214
MobilePhoneTilesGFX: ; f9214
FontsExtra_SolidBlackGFX: ; f9214
INCBIN "gfx/font/black.1bpp"
; f921c
UnusedUpArrowGFX: ; unused up arrow + whitespace
INCBIN "gfx/font/unused_arrow.1bpp"
; f9234
MobilePhoneTilesGFX: ; f9234
INCBIN "gfx/mobile/phone_tiles.2bpp"
; f9344
@ -105,42 +113,42 @@ Functionfb43f: ; fb43f
_LoadStandardFont:: ; fb449
ld de, Font
ld hl, vTiles1
lb bc, BANK(Font), $80
lb bc, BANK(Font), 128 ; "A" to "9"
ld a, [rLCDC]
bit rLCDC_ENABLE, a
jp z, Copy1bpp
ld de, Font
ld hl, vTiles1
lb bc, BANK(Font), $20
lb bc, BANK(Font), 32 ; "A" to "]"
call Get1bpp_2
ld de, Font + $20 * LEN_1BPP_TILE
ld de, Font + 32 * LEN_1BPP_TILE
ld hl, vTiles1 tile $20
lb bc, BANK(Font), $20
lb bc, BANK(Font), 32 ; "a" to $bf
call Get1bpp_2
ld de, Font + $40 * LEN_1BPP_TILE
ld de, Font + 64 * LEN_1BPP_TILE
ld hl, vTiles1 tile $40
lb bc, BANK(Font), $20
lb bc, BANK(Font), 32 ; "Ä" to "←"
call Get1bpp_2
ld de, Font + $60 * LEN_1BPP_TILE
ld de, Font + 96 * LEN_1BPP_TILE
ld hl, vTiles1 tile $60
lb bc, BANK(Font), $20
lb bc, BANK(Font), 32 ; "'" to "9"
call Get1bpp_2
ret
; fb48a
_LoadFontsExtra1:: ; fb48a
ld de, MobilePhoneTilesGFX
ld de, FontsExtra_SolidBlackGFX
ld hl, vTiles2 tile "<BLACK>" ; $60
lb bc, BANK(MobilePhoneTilesGFX), 1
lb bc, BANK(FontsExtra_SolidBlackGFX), 1
call Get1bpp_2
ld de, OverworldPhoneIconGFX
ld de, PokegearPhoneIconGFX
ld hl, vTiles2 tile "<PHONE>" ; $62
lb bc, BANK(OverworldPhoneIconGFX), 1
lb bc, BANK(PokegearPhoneIconGFX), 1
call Get2bpp_2
ld de, FontExtra + 3 * LEN_2BPP_TILE
ld hl, vTiles2 tile $63
lb bc, BANK(FontExtra), $16
ld de, FontExtra tile 3
ld hl, vTiles2 tile "<BOLD_D>"
lb bc, BANK(FontExtra), 22 ; "<BOLD_D>" to "ぉ"
call Get2bpp_2
jr LoadFrame
; fb4b0
@ -157,7 +165,7 @@ _LoadFontsExtra2:: ; fb4b0
_LoadFontsBattleExtra:: ; fb4be
ld de, FontBattleExtra
ld hl, vTiles2 tile $60
lb bc, BANK(FontBattleExtra), $19
lb bc, BANK(FontBattleExtra), 25
call Get2bpp_2
jr LoadFrame
; fb4cc
@ -165,13 +173,13 @@ _LoadFontsBattleExtra:: ; fb4be
LoadFrame: ; fb4cc
ld a, [TextBoxFrame]
and 7
ld bc, LEN_1BPP_TILE * 6
ld bc, 6 * LEN_1BPP_TILE
ld hl, Frames
call AddNTimes
ld d, h
ld e, l
ld hl, vTiles2 tile "┌" ; $79
lb bc, BANK(Frames), 6
lb bc, BANK(Frames), 6 ; "┌" to "┘"
call Get1bpp_2
ld hl, vTiles2 tile " " ; $7f
ld de, TextBoxSpaceGFX
@ -183,11 +191,11 @@ LoadFrame: ; fb4cc
LoadBattleFontsHPBar: ; fb4f2
ld de, FontBattleExtra
ld hl, vTiles2 tile $60
lb bc, BANK(FontBattleExtra), $c
lb bc, BANK(FontBattleExtra), 12
call Get2bpp_2
ld hl, vTiles2 tile $70
ld de, FontBattleExtra tile $10
lb bc, BANK(FontBattleExtra), 3
ld de, FontBattleExtra tile 16
lb bc, BANK(FontBattleExtra), 3 ; "<ど>" to "『"
call Get2bpp_2
call LoadFrame
@ -204,7 +212,7 @@ LoadHPBar: ; fb50d
ld hl, vTiles2 tile $55
lb bc, BANK(ExpBarGFX), 9
call Get2bpp_2
ld de, MobilePhoneTilesGFX + 9 * LEN_2BPP_TILE
ld de, MobilePhoneTilesGFX tile 7 ; mobile phone icon
ld hl, vTiles2 tile $5e
lb bc, BANK(MobilePhoneTilesGFX), 2
call Get2bpp_2

BIN
gfx/font/black.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 68 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 280 B

After

Width:  |  Height:  |  Size: 264 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 293 B

After

Width:  |  Height:  |  Size: 281 B

View File

Before

Width:  |  Height:  |  Size: 71 B

After

Width:  |  Height:  |  Size: 71 B

View File

Before

Width:  |  Height:  |  Size: 82 B

After

Width:  |  Height:  |  Size: 82 B

BIN
gfx/font/unused_arrow.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 86 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 264 B

After

Width:  |  Height:  |  Size: 245 B

View File

@ -1,17 +1,17 @@
LoadOverworldFont:: ; 106594
ld de, .font
ld de, .OverworldFontGFX
ld hl, vTiles1
lb bc, BANK(.font), $80
lb bc, BANK(.OverworldFontGFX), $80
call Get2bpp
ld de, .space
ld de, .OverworldFontSpaceGFX
ld hl, vTiles2 tile " "
lb bc, BANK(.space), 1
lb bc, BANK(.OverworldFontSpaceGFX), 1
call Get2bpp
ret
; 1065ad
.font
.OverworldFontGFX:
INCBIN "gfx/font/overworld.2bpp"
.space
INCBIN "gfx/font/space.2bpp"
.OverworldFontSpaceGFX:
INCBIN "gfx/font/overworld_space.2bpp"

View File

@ -1010,16 +1010,16 @@ MobileFunc_106462: mobile
; 106464
Function106464:: ; 106464
ld de, MobilePhoneTilesGFX
ld hl, vTiles2 tile $60
lb bc, BANK(MobilePhoneTilesGFX), 1
ld de, FontsExtra_SolidBlackGFX
ld hl, vTiles2 tile "<BLACK>" ; $60
lb bc, BANK(FontsExtra_SolidBlackGFX), 1
call Get2bpp
ld de, FontsExtra2_UpArrowGFX
ld hl, vTiles2 tile $61
ld hl, vTiles2 tile "▲" ; $61
lb bc, BANK(FontsExtra2_UpArrowGFX), 1
call Get2bpp
ld de, GFX_106514
ld hl, vTiles2 tile $62
ld hl, vTiles2 tile "<PHONE>" ; $62
ld c, 9
ld b, BANK(GFX_106514)
call Get2bpp
@ -1103,8 +1103,8 @@ asm_1064ed
; 10650a
Function10650a: ; 10650a
ld de, MobilePhoneTilesGFX + $20
lb bc, BANK(MobilePhoneTilesGFX), $11
ld de, MobilePhoneTilesGFX
lb bc, BANK(MobilePhoneTilesGFX), 17
call Get2bpp
ret
; 106514