From fec11012a5440b959149f39b7dde9f2af094c7b4 Mon Sep 17 00:00:00 2001 From: Jeffrey Pfau Date: Sun, 23 Aug 2015 01:45:50 -0700 Subject: [PATCH] Wii: Lowercase and font metrics --- src/platform/wii/font.tpl | Bin 131136 -> 131136 bytes src/platform/wii/gui-font.c | 26 +++++++++++++------------- src/platform/wii/main.c | 4 ++-- 3 files changed, 15 insertions(+), 15 deletions(-) diff --git a/src/platform/wii/font.tpl b/src/platform/wii/font.tpl index e0b1a1c552dfe35b94e89c7f9c163dbb8224024e..e1ca520dffac497b9e3281655fd6901aab475e5c 100644 GIT binary patch delta 2303 zcmb7FZA@Eb6y^}Pv<1qA@nwNRFw;TygBbiFYzhd(=wkR|Vn|bKVu&+wS@^LJ|JW4* z#7x@TLwX3P)PU>*HfdlsG21MV7_w>X5SI|XIz;zFgZ(85Td3!~w}k@Y=6#bl_r2#m z?|aVkob%j(T^F$H>=V#)L1{`;Y+=9a1SEpeWc1l8V0)q1CNS8RguRo;#^*l&7RdD~ zq~g5uk^0p&szYz*W3uSr40|fJ)0(5$C81{hTWK=*Y@tN5yWl>*Q%O2hQ6Iofv9MX- z2nL7sf^2tJj|i7~0dD{2r6X8>L&o50k`_DX{T{EwydE3XGJi~>Q4{FgT^-oymhnwApe<;`Q*Ire!qmgjcoHJoh{dM{#&Om*h=IR%^~EJp z2rpuAIvtm~E>ZhQm__+lMo9<9aVfx-wxq;_2m_W+V{b6T;Xz$uZG%$dB4#gx23}|H zJ^1--C7_)zLkhWCK!+iZiM{aV+_M^rB{z|uS4T1mJA1V`+!pLl*aSyv$g=X zZ`9D8b;wnkB=mmg9k-7s!k}XV(6Lb$XBhIgpNC_h*r!a}1+KCrI1)n?KQ4~sJd+?6_v~FIV!49B08y=4LpDG8)Kx1BR8?^2vM)hL{we^;{}9nB@QL zE?iAwgJOMQe$;pToiV6t7V{kUR zV0Wi#4$)cd)lHV7&XF8Zw_l8yF?=}%r$;hHPgU@$u<5mGWOm49 z;i|db0>$)cCg|yYGvv~!!kREP#Q%b?CAYVcW-NS>JjCie0Y(a2*m~NXo)=9~E%4~O zs#c3uFd1T5FnNJyxMNa#g!?1b4p9Kq@*iYzTTH=Uu4LdGOYy`NnXVV{PjYJsY;klx zL6t<8 delta 129 zcmX@mz;U2~qhSl -#define GLYPH_HEIGHT 11 -#define GLYPH_WIDTH 14 -#define FONT_TRACKING 10 +#define GLYPH_HEIGHT 12 #define CELL_HEIGHT 16 #define CELL_WIDTH 16 @@ -67,21 +66,22 @@ void GUIFontPrintf(const struct GUIFont* font, int x, int y, enum GUITextAlignme if (c > 0x7F) { c = 0; } - s16 tx = (c & 15) * CELL_WIDTH + ((CELL_WIDTH - GLYPH_WIDTH) >> 1); - s16 ty = (c >> 4) * CELL_HEIGHT + ((CELL_HEIGHT - GLYPH_HEIGHT) >> 1) - 1; + struct GUIFontGlyphMetric metric = defaultFontMetrics[c]; + s16 tx = (c & 15) * CELL_WIDTH + metric.padding.left; + s16 ty = (c >> 4) * CELL_HEIGHT + metric.padding.top; GX_Begin(GX_QUADS, GX_VTXFMT0, 4); - GX_Position2s16(x, y - GLYPH_HEIGHT); + GX_Position2s16(x, y - GLYPH_HEIGHT + metric.padding.top); GX_TexCoord2f32(tx / 256.f, ty / 128.f); - GX_Position2s16(x + GLYPH_WIDTH, y - GLYPH_HEIGHT); - GX_TexCoord2f32((tx + CELL_WIDTH) / 256.f, ty / 128.f); + GX_Position2s16(x + CELL_WIDTH - (metric.padding.left + metric.padding.right), y - GLYPH_HEIGHT + metric.padding.top); + GX_TexCoord2f32((tx + CELL_WIDTH - (metric.padding.left + metric.padding.right)) / 256.f, ty / 128.f); - GX_Position2s16(x + GLYPH_WIDTH, y); - GX_TexCoord2f32((tx + CELL_WIDTH) / 256.f, (ty + CELL_HEIGHT) / 128.f); + GX_Position2s16(x + CELL_WIDTH - (metric.padding.left + metric.padding.right), y - GLYPH_HEIGHT + CELL_HEIGHT - metric.padding.bottom); + GX_TexCoord2f32((tx + CELL_WIDTH - (metric.padding.left + metric.padding.right)) / 256.f, (ty + CELL_HEIGHT - (metric.padding.top + metric.padding.bottom)) / 128.f); - GX_Position2s16(x, y); - GX_TexCoord2f32(tx / 256.f, (ty + CELL_HEIGHT) / 128.f); + GX_Position2s16(x, y - GLYPH_HEIGHT + CELL_HEIGHT - metric.padding.bottom); + GX_TexCoord2f32(tx / 256.f, (ty + CELL_HEIGHT - (metric.padding.top + metric.padding.bottom)) / 128.f); GX_End(); - x += FONT_TRACKING; + x += metric.width; } } diff --git a/src/platform/wii/main.c b/src/platform/wii/main.c index 6baabfdd5..97edbe775 100644 --- a/src/platform/wii/main.c +++ b/src/platform/wii/main.c @@ -161,11 +161,11 @@ int main() { #endif char path[256]; - guOrtho(proj, -20, 220, 0, 400, 0, 300); + guOrtho(proj, -20, 240, 0, 352, 0, 300); GX_LoadProjectionMtx(proj, GX_ORTHOGRAPHIC); struct GUIParams params = { - 400, 230, + 352, 230, font, _drawStart, _drawEnd, _pollInput }; if (!selectFile(¶ms, "/", path, sizeof(path), "gba") || !GBAWiiLoadGame(path)) {