From 65e8369d1ce17bd7bf18a8648df5a74739ad5f94 Mon Sep 17 00:00:00 2001 From: Arceveti <73617174+Arceveti@users.noreply.github.com> Date: Tue, 28 Sep 2021 14:28:14 -0700 Subject: [PATCH] Puppyprint debug font improvements --- bin/segment2.c | 10 +++++----- textures/segment2/custom_text2.i4.png | Bin 16247 -> 1681 bytes 2 files changed, 5 insertions(+), 5 deletions(-) diff --git a/bin/segment2.c b/bin/segment2.c index 033b8406..f9526518 100644 --- a/bin/segment2.c +++ b/bin/segment2.c @@ -30,11 +30,11 @@ static const u8 small_font_kerning_1[80] = { }; static const u8 small_font_kerning_2[80] = { - /*0*/ 7, /*1*/ 7, /*2*/ 7, /*3*/ 7, /*4*/ 7, /*5*/ 7, /*6*/ 7, /*7*/ 7, /*8*/ 7, /*9*/ 7, /*-*/ 7, /*+*/ 7, /*(*/ 4, /*)*/ 4, /*!*/ 5, /*?*/ 6, - /*A*/ 7, /*B*/ 7, /*C*/ 7, /*D*/ 7, /*E*/ 7, /*F*/ 7, /*G*/ 7, /*H*/ 7, /*I*/ 7, /*J*/ 7, /*K*/ 7, /*L*/ 7, /*M*/ 7, /*N*/ 7, /*O*/ 7, /*P*/ 7, - /*Q*/ 7, /*R*/ 7, /*S*/ 7, /*T*/ 7, /*U*/ 7, /*V*/ 7, /*W*/ 7, /*X*/ 7, /*Y*/ 7, /*Z*/ 7, /*"*/ 5, /*'*/ 2, /*:*/ 3, /*;*/ 3, /*.*/ 3, /*,*/ 3, - /*a*/ 6, /*b*/ 6, /*c*/ 6, /*d*/ 6, /*e*/ 6, /*f*/ 6, /*g*/ 6, /*h*/ 6, /*i*/ 2, /*j*/ 6, /*k*/ 6, /*l*/ 3, /*m*/ 6, /*n*/ 6, /*o*/ 6, /*p*/ 6, - /*q*/ 6, /*r*/ 6, /*s*/ 6, /*t*/ 6, /*u*/ 6, /*v*/ 6, /*w*/ 6, /*x*/ 6, /*y*/ 6, /*z*/ 6, /*~*/ 7, /*¨*/ 6, /*^*/ 7, /*/*/ 6, /*%*/ 6, /*&*/ 7, + /*0*/ 6, /*1*/ 6, /*2*/ 6, /*3*/ 6, /*4*/ 6, /*5*/ 6, /*6*/ 6, /*7*/ 6, /*8*/ 6, /*9*/ 6, /*-*/ 6, /*+*/ 6, /*(*/ 3, /*)*/ 3, /*!*/ 4, /*?*/ 5, + /*A*/ 6, /*B*/ 6, /*C*/ 6, /*D*/ 6, /*E*/ 6, /*F*/ 6, /*G*/ 6, /*H*/ 6, /*I*/ 6, /*J*/ 6, /*K*/ 6, /*L*/ 6, /*M*/ 6, /*N*/ 6, /*O*/ 6, /*P*/ 6, + /*Q*/ 6, /*R*/ 6, /*S*/ 6, /*T*/ 6, /*U*/ 6, /*V*/ 6, /*W*/ 6, /*X*/ 6, /*Y*/ 6, /*Z*/ 6, /*"*/ 4, /*'*/ 1, /*:*/ 2, /*;*/ 2, /*.*/ 2, /*,*/ 2, + /*a*/ 5, /*b*/ 5, /*c*/ 5, /*d*/ 5, /*e*/ 5, /*f*/ 5, /*g*/ 5, /*h*/ 5, /*i*/ 1, /*j*/ 5, /*k*/ 5, /*l*/ 3, /*m*/ 5, /*n*/ 5, /*o*/ 5, /*p*/ 5, + /*q*/ 5, /*r*/ 5, /*s*/ 5, /*t*/ 5, /*u*/ 5, /*v*/ 5, /*w*/ 5, /*x*/ 5, /*y*/ 5, /*z*/ 5, /*~*/ 6, /*¨*/ 5, /*^*/ 6, /*/*/ 5, /*%*/ 5, /*&*/ 6, }; const u8 *const puppyprint_kerning_lut[2][80] = { diff --git a/textures/segment2/custom_text2.i4.png b/textures/segment2/custom_text2.i4.png index ccecd85f80c1c528ca00be449182fba0ae95a2e6..4073382638478f4194b40696310830a479e21900 100644 GIT binary patch delta 1665 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 DXE1q!