diff --git a/chargen.c b/chargen.c index 1d7cf3f..9fede84 100644 --- a/chargen.c +++ b/chargen.c @@ -38,6 +38,12 @@ int pixels_sm; #define CHAR_Y (9) #define FB_HEIGHT_PIXEL (FB_HEIGHT_CHAR * CHAR_Y) +#define ATTR_BASE 9 +#define BG_ATTR(x) ((x) << 11) +#define FG_ATTR(x) ((x) << ATTR_BASE) + +#define MAKE_ATTR(fg, bg) (((fg) ^ (((bg)*9) & 073)) << ATTR_BASE) + struct lw_terminal_vt100 *vt100; // declaring this static breaks it (why?) @@ -50,10 +56,10 @@ void __not_in_flash_func(scan_convert)(const uint32_t *restrict cptr32, #define READ_CHARDATA (ch = *cptr32++) #define ONE_CHAR(in_shift, op, out_shift) \ do { \ - chardata = cgptr[(ch >> (in_shift)) & 0xff]; \ - mask = shade[(ch >> (8 + (in_shift))) & 7]; \ - pixels op(shade[(ch >> (11 + (in_shift))) & 7] ^ (chardata & mask)) \ - out_shift; \ + chardata = cgptr[(ch >> (in_shift)) & ((1 << ATTR_BASE) - 1)]; \ + mask = shade[(ch >> (ATTR_BASE + (in_shift))) & 7]; \ + pixels op(shade[(ch >> (ATTR_BASE + 3 + (in_shift))) & 7] ^ \ + (chardata & mask)) out_shift; \ } while (0) uint32_t ch; @@ -113,7 +119,8 @@ void __not_in_flash_func(scan_convert)(const uint32_t *restrict cptr32, SIX_CHARS; /* 132 */ } -uint16_t chargen[256 * CHAR_Y] = { +#define CHAR_COUNT (512) +uint16_t chargen[CHAR_COUNT * CHAR_Y] = { #include "5x9.h" }; @@ -127,12 +134,12 @@ static int status_printf(const char *fmt, ...) { va_start(ap, fmt); int n = vsnprintf(buf, sizeof(buf), fmt, ap); va_end(ap); - int attr = 0x300; + int attr = 0x3 << ATTR_BASE; int i, j; for (i = j = 0; j < FB_WIDTH_CHAR && buf[i]; i++) { int c = (unsigned char)buf[i]; if (c < 32) { - attr = c << 8; + attr = c << ATTR_BASE; } else { statusline[j++] = c | attr; } @@ -201,7 +208,7 @@ __not_in_flash_func(core1_loop)(void) { ? (uint32_t *)statusline : (uint32_t *)lw_terminal_vt100_getline(vt100, row); for (int j = 0; j < CHAR_Y; j++) { - scan_convert(chardata, &chargen[256 * j], shade_ptr); + scan_convert(chardata, &chargen[CHAR_COUNT * j], shade_ptr); } } @@ -230,12 +237,6 @@ __not_in_flash_func(core1_entry)(void) { core1_loop(); } #endif - -#define BG_ATTR(x) ((x) << 11) -#define FG_ATTR(x) ((x) << 8) - -#define MAKE_ATTR(fg, bg) (((fg) ^ (((bg)*9) & 073)) << 8) - static int map_one(int i) { return (i > 0) + (i > 6); } static lw_cell_t char_attr(void *user_data, const struct lw_parsed_attr *attr) { @@ -525,6 +526,12 @@ static int map_unicode(void *user_data, int n, lw_cell_t *attr) { return n; } switch (n) { + case 0x2191: // upwards arrow + return 0x100; + case 0x2193: // downwards arrow + return 0x101; + case 0x25ae: // black vertical rectangle + return 0x102; case 9608: { struct lw_parsed_attr tmp_attr = vt100->parsed_attr; tmp_attr.inverse = !tmp_attr.inverse; diff --git a/mkfont/5x9.bdf b/mkfont/5x9.bdf index 2e56465..44faf9b 100644 --- a/mkfont/5x9.bdf +++ b/mkfont/5x9.bdf @@ -1,7 +1,7 @@ STARTFONT 2.1 FONT -Misc-Fixed-Medium-R-Normal-sans-9-90-75-75-M-50-iso8859-1 SIZE 9 75 75 -FONTBOUNDINGBOX 5 11 0 -2 +FONTBOUNDINGBOX 6 9 0 -2 STARTPROPERTIES 24 FONTNAME_REGISTRY "" FOUNDRY "Misc" @@ -26,19 +26,20 @@ QUAD_WIDTH 5 FONT_ASCENT 7 FONT_DESCENT 2 DEFAULT_CHAR 0 +_GBDFED_INFO "Edited with gbdfed 1.6." ENDPROPERTIES -CHARS 255 +CHARS 258 STARTCHAR char0 ENCODING 0 SWIDTH 640 0 -DWIDTH 5 0 +DWIDTH 6 0 BBX 0 0 0 0 BITMAP ENDCHAR STARTCHAR char1 ENCODING 1 SWIDTH 640 0 -DWIDTH 5 0 +DWIDTH 6 0 BBX 4 5 1 0 BITMAP 60 @@ -50,7 +51,7 @@ ENDCHAR STARTCHAR char2 ENCODING 2 SWIDTH 640 0 -DWIDTH 5 0 +DWIDTH 6 0 BBX 4 8 1 -2 BITMAP 50 @@ -65,7 +66,7 @@ ENDCHAR STARTCHAR char3 ENCODING 3 SWIDTH 640 0 -DWIDTH 5 0 +DWIDTH 6 0 BBX 4 7 1 -1 BITMAP A0 @@ -79,7 +80,7 @@ ENDCHAR STARTCHAR char4 ENCODING 4 SWIDTH 640 0 -DWIDTH 5 0 +DWIDTH 6 0 BBX 4 7 1 -1 BITMAP C0 @@ -93,7 +94,7 @@ ENDCHAR STARTCHAR char5 ENCODING 5 SWIDTH 640 0 -DWIDTH 5 0 +DWIDTH 6 0 BBX 4 8 1 -2 BITMAP 60 @@ -108,7 +109,7 @@ ENDCHAR STARTCHAR char6 ENCODING 6 SWIDTH 640 0 -DWIDTH 5 0 +DWIDTH 6 0 BBX 4 8 1 -2 BITMAP 80 @@ -123,7 +124,7 @@ ENDCHAR STARTCHAR char7 ENCODING 7 SWIDTH 640 0 -DWIDTH 5 0 +DWIDTH 6 0 BBX 4 3 1 2 BITMAP 60 @@ -133,7 +134,7 @@ ENDCHAR STARTCHAR char8 ENCODING 8 SWIDTH 640 0 -DWIDTH 5 0 +DWIDTH 6 0 BBX 3 5 1 0 BITMAP 40 @@ -145,7 +146,7 @@ ENDCHAR STARTCHAR char9 ENCODING 9 SWIDTH 640 0 -DWIDTH 5 0 +DWIDTH 6 0 BBX 4 8 1 -2 BITMAP 90 @@ -160,7 +161,7 @@ ENDCHAR STARTCHAR char10 ENCODING 10 SWIDTH 640 0 -DWIDTH 5 0 +DWIDTH 6 0 BBX 4 7 1 -1 BITMAP A0 @@ -174,7 +175,7 @@ ENDCHAR STARTCHAR char11 ENCODING 11 SWIDTH 640 0 -DWIDTH 5 0 +DWIDTH 6 0 BBX 3 5 0 2 BITMAP 20 @@ -186,7 +187,7 @@ ENDCHAR STARTCHAR char12 ENCODING 12 SWIDTH 640 0 -DWIDTH 5 0 +DWIDTH 6 0 BBX 3 5 0 -2 BITMAP E0 @@ -198,7 +199,7 @@ ENDCHAR STARTCHAR char13 ENCODING 13 SWIDTH 640 0 -DWIDTH 5 0 +DWIDTH 6 0 BBX 3 5 2 -2 BITMAP E0 @@ -210,7 +211,7 @@ ENDCHAR STARTCHAR char14 ENCODING 14 SWIDTH 640 0 -DWIDTH 5 0 +DWIDTH 6 0 BBX 3 5 2 2 BITMAP 80 @@ -222,7 +223,7 @@ ENDCHAR STARTCHAR char15 ENCODING 15 SWIDTH 640 0 -DWIDTH 5 0 +DWIDTH 6 0 BBX 5 9 0 -2 BITMAP 20 @@ -238,7 +239,7 @@ ENDCHAR STARTCHAR char16 ENCODING 16 SWIDTH 640 0 -DWIDTH 5 0 +DWIDTH 6 0 BBX 5 1 0 5 BITMAP F8 @@ -246,7 +247,7 @@ ENDCHAR STARTCHAR char17 ENCODING 17 SWIDTH 640 0 -DWIDTH 5 0 +DWIDTH 6 0 BBX 5 1 0 3 BITMAP F8 @@ -254,7 +255,7 @@ ENDCHAR STARTCHAR char18 ENCODING 18 SWIDTH 640 0 -DWIDTH 5 0 +DWIDTH 6 0 BBX 5 1 0 2 BITMAP F8 @@ -262,7 +263,7 @@ ENDCHAR STARTCHAR char19 ENCODING 19 SWIDTH 640 0 -DWIDTH 5 0 +DWIDTH 6 0 BBX 5 1 0 1 BITMAP F8 @@ -270,7 +271,7 @@ ENDCHAR STARTCHAR char20 ENCODING 20 SWIDTH 640 0 -DWIDTH 5 0 +DWIDTH 6 0 BBX 5 1 0 -1 BITMAP F8 @@ -278,7 +279,7 @@ ENDCHAR STARTCHAR char21 ENCODING 21 SWIDTH 640 0 -DWIDTH 5 0 +DWIDTH 6 0 BBX 3 9 2 -2 BITMAP 80 @@ -294,7 +295,7 @@ ENDCHAR STARTCHAR char22 ENCODING 22 SWIDTH 640 0 -DWIDTH 5 0 +DWIDTH 6 0 BBX 3 9 0 -2 BITMAP 20 @@ -310,7 +311,7 @@ ENDCHAR STARTCHAR char23 ENCODING 23 SWIDTH 640 0 -DWIDTH 5 0 +DWIDTH 6 0 BBX 5 5 0 2 BITMAP 20 @@ -322,7 +323,7 @@ ENDCHAR STARTCHAR char24 ENCODING 24 SWIDTH 640 0 -DWIDTH 5 0 +DWIDTH 6 0 BBX 5 5 0 -2 BITMAP F8 @@ -334,7 +335,7 @@ ENDCHAR STARTCHAR char25 ENCODING 25 SWIDTH 640 0 -DWIDTH 5 0 +DWIDTH 6 0 BBX 1 9 2 -2 BITMAP 80 @@ -350,7 +351,7 @@ ENDCHAR STARTCHAR char26 ENCODING 26 SWIDTH 640 0 -DWIDTH 5 0 +DWIDTH 6 0 BBX 4 7 1 -1 BITMAP 10 @@ -364,7 +365,7 @@ ENDCHAR STARTCHAR char27 ENCODING 27 SWIDTH 640 0 -DWIDTH 5 0 +DWIDTH 6 0 BBX 4 7 1 -1 BITMAP 80 @@ -378,7 +379,7 @@ ENDCHAR STARTCHAR char28 ENCODING 28 SWIDTH 640 0 -DWIDTH 5 0 +DWIDTH 6 0 BBX 5 5 0 0 BITMAP F8 @@ -390,7 +391,7 @@ ENDCHAR STARTCHAR char29 ENCODING 29 SWIDTH 640 0 -DWIDTH 5 0 +DWIDTH 6 0 BBX 5 7 0 -1 BITMAP 08 @@ -404,7 +405,7 @@ ENDCHAR STARTCHAR char30 ENCODING 30 SWIDTH 640 0 -DWIDTH 5 0 +DWIDTH 6 0 BBX 4 7 1 -1 BITMAP 20 @@ -418,7 +419,7 @@ ENDCHAR STARTCHAR char31 ENCODING 31 SWIDTH 640 0 -DWIDTH 5 0 +DWIDTH 6 0 BBX 1 1 2 2 BITMAP 80 @@ -426,14 +427,14 @@ ENDCHAR STARTCHAR char32 ENCODING 32 SWIDTH 640 0 -DWIDTH 5 0 +DWIDTH 6 0 BBX 0 0 0 0 BITMAP ENDCHAR STARTCHAR char33 ENCODING 33 SWIDTH 640 0 -DWIDTH 5 0 +DWIDTH 6 0 BBX 1 7 2 0 BITMAP 80 @@ -447,7 +448,7 @@ ENDCHAR STARTCHAR char34 ENCODING 34 SWIDTH 640 0 -DWIDTH 5 0 +DWIDTH 6 0 BBX 3 3 1 4 BITMAP A0 @@ -457,7 +458,7 @@ ENDCHAR STARTCHAR char35 ENCODING 35 SWIDTH 640 0 -DWIDTH 5 0 +DWIDTH 6 0 BBX 5 5 0 1 BITMAP 50 @@ -469,7 +470,7 @@ ENDCHAR STARTCHAR char36 ENCODING 36 SWIDTH 640 0 -DWIDTH 5 0 +DWIDTH 6 0 BBX 5 7 0 0 BITMAP 20 @@ -483,7 +484,7 @@ ENDCHAR STARTCHAR char37 ENCODING 37 SWIDTH 640 0 -DWIDTH 5 0 +DWIDTH 6 0 BBX 5 6 0 0 BITMAP C8 @@ -496,7 +497,7 @@ ENDCHAR STARTCHAR char38 ENCODING 38 SWIDTH 640 0 -DWIDTH 5 0 +DWIDTH 6 0 BBX 5 7 0 0 BITMAP 20 @@ -510,7 +511,7 @@ ENDCHAR STARTCHAR char39 ENCODING 39 SWIDTH 640 0 -DWIDTH 5 0 +DWIDTH 6 0 BBX 2 4 2 3 BITMAP 40 @@ -521,7 +522,7 @@ ENDCHAR STARTCHAR char40 ENCODING 40 SWIDTH 640 0 -DWIDTH 5 0 +DWIDTH 6 0 BBX 2 7 2 0 BITMAP 40 @@ -535,7 +536,7 @@ ENDCHAR STARTCHAR char41 ENCODING 41 SWIDTH 640 0 -DWIDTH 5 0 +DWIDTH 6 0 BBX 2 7 2 0 BITMAP 80 @@ -549,7 +550,7 @@ ENDCHAR STARTCHAR char42 ENCODING 42 SWIDTH 640 0 -DWIDTH 5 0 +DWIDTH 6 0 BBX 4 5 1 0 BITMAP 90 @@ -561,7 +562,7 @@ ENDCHAR STARTCHAR char43 ENCODING 43 SWIDTH 640 0 -DWIDTH 5 0 +DWIDTH 6 0 BBX 5 5 0 0 BITMAP 20 @@ -573,7 +574,7 @@ ENDCHAR STARTCHAR char44 ENCODING 44 SWIDTH 640 0 -DWIDTH 5 0 +DWIDTH 6 0 BBX 2 4 2 -2 BITMAP 40 @@ -584,7 +585,7 @@ ENDCHAR STARTCHAR char45 ENCODING 45 SWIDTH 640 0 -DWIDTH 5 0 +DWIDTH 6 0 BBX 5 1 0 2 BITMAP F8 @@ -592,7 +593,7 @@ ENDCHAR STARTCHAR char46 ENCODING 46 SWIDTH 640 0 -DWIDTH 5 0 +DWIDTH 6 0 BBX 2 2 2 0 BITMAP C0 @@ -601,7 +602,7 @@ ENDCHAR STARTCHAR char47 ENCODING 47 SWIDTH 640 0 -DWIDTH 5 0 +DWIDTH 6 0 BBX 4 6 1 0 BITMAP 10 @@ -614,7 +615,7 @@ ENDCHAR STARTCHAR char48 ENCODING 48 SWIDTH 640 0 -DWIDTH 5 0 +DWIDTH 6 0 BBX 4 7 1 0 BITMAP 60 @@ -628,7 +629,7 @@ ENDCHAR STARTCHAR char49 ENCODING 49 SWIDTH 640 0 -DWIDTH 5 0 +DWIDTH 6 0 BBX 3 7 1 0 BITMAP 40 @@ -642,7 +643,7 @@ ENDCHAR STARTCHAR char50 ENCODING 50 SWIDTH 640 0 -DWIDTH 5 0 +DWIDTH 6 0 BBX 4 7 1 0 BITMAP 60 @@ -656,7 +657,7 @@ ENDCHAR STARTCHAR char51 ENCODING 51 SWIDTH 640 0 -DWIDTH 5 0 +DWIDTH 6 0 BBX 4 7 1 0 BITMAP E0 @@ -670,7 +671,7 @@ ENDCHAR STARTCHAR char52 ENCODING 52 SWIDTH 640 0 -DWIDTH 5 0 +DWIDTH 6 0 BBX 5 7 0 0 BITMAP 10 @@ -684,7 +685,7 @@ ENDCHAR STARTCHAR char53 ENCODING 53 SWIDTH 640 0 -DWIDTH 5 0 +DWIDTH 6 0 BBX 4 7 1 0 BITMAP F0 @@ -698,7 +699,7 @@ ENDCHAR STARTCHAR char54 ENCODING 54 SWIDTH 640 0 -DWIDTH 5 0 +DWIDTH 6 0 BBX 4 7 1 0 BITMAP 60 @@ -712,7 +713,7 @@ ENDCHAR STARTCHAR char55 ENCODING 55 SWIDTH 640 0 -DWIDTH 5 0 +DWIDTH 6 0 BBX 5 7 1 0 BITMAP F0 @@ -726,7 +727,7 @@ ENDCHAR STARTCHAR char56 ENCODING 56 SWIDTH 640 0 -DWIDTH 5 0 +DWIDTH 6 0 BBX 4 7 1 0 BITMAP 60 @@ -740,7 +741,7 @@ ENDCHAR STARTCHAR char57 ENCODING 57 SWIDTH 640 0 -DWIDTH 5 0 +DWIDTH 6 0 BBX 4 7 1 0 BITMAP 60 @@ -754,7 +755,7 @@ ENDCHAR STARTCHAR char58 ENCODING 58 SWIDTH 640 0 -DWIDTH 5 0 +DWIDTH 6 0 BBX 2 5 2 0 BITMAP 80 @@ -766,7 +767,7 @@ ENDCHAR STARTCHAR char59 ENCODING 59 SWIDTH 640 0 -DWIDTH 5 0 +DWIDTH 6 0 BBX 2 7 2 -2 BITMAP 40 @@ -780,7 +781,7 @@ ENDCHAR STARTCHAR char60 ENCODING 60 SWIDTH 640 0 -DWIDTH 5 0 +DWIDTH 6 0 BBX 3 5 1 1 BITMAP 20 @@ -792,7 +793,7 @@ ENDCHAR STARTCHAR char61 ENCODING 61 SWIDTH 640 0 -DWIDTH 5 0 +DWIDTH 6 0 BBX 4 3 1 1 BITMAP F0 @@ -802,7 +803,7 @@ ENDCHAR STARTCHAR char62 ENCODING 62 SWIDTH 640 0 -DWIDTH 5 0 +DWIDTH 6 0 BBX 3 5 1 1 BITMAP 80 @@ -814,7 +815,7 @@ ENDCHAR STARTCHAR char63 ENCODING 63 SWIDTH 640 0 -DWIDTH 5 0 +DWIDTH 6 0 BBX 4 7 1 0 BITMAP 60 @@ -828,7 +829,7 @@ ENDCHAR STARTCHAR char64 ENCODING 64 SWIDTH 640 0 -DWIDTH 5 0 +DWIDTH 6 0 BBX 4 7 1 0 BITMAP 60 @@ -842,7 +843,7 @@ ENDCHAR STARTCHAR char65 ENCODING 65 SWIDTH 640 0 -DWIDTH 5 0 +DWIDTH 6 0 BBX 4 7 1 0 BITMAP 60 @@ -856,7 +857,7 @@ ENDCHAR STARTCHAR char66 ENCODING 66 SWIDTH 640 0 -DWIDTH 5 0 +DWIDTH 6 0 BBX 5 7 1 0 BITMAP E0 @@ -870,7 +871,7 @@ ENDCHAR STARTCHAR char67 ENCODING 67 SWIDTH 640 0 -DWIDTH 5 0 +DWIDTH 6 0 BBX 4 7 1 0 BITMAP 60 @@ -884,7 +885,7 @@ ENDCHAR STARTCHAR char68 ENCODING 68 SWIDTH 640 0 -DWIDTH 5 0 +DWIDTH 6 0 BBX 4 7 1 0 BITMAP E0 @@ -898,7 +899,7 @@ ENDCHAR STARTCHAR char69 ENCODING 69 SWIDTH 640 0 -DWIDTH 5 0 +DWIDTH 6 0 BBX 5 7 1 0 BITMAP F0 @@ -912,7 +913,7 @@ ENDCHAR STARTCHAR char70 ENCODING 70 SWIDTH 640 0 -DWIDTH 5 0 +DWIDTH 6 0 BBX 4 7 1 0 BITMAP F0 @@ -926,7 +927,7 @@ ENDCHAR STARTCHAR char71 ENCODING 71 SWIDTH 640 0 -DWIDTH 5 0 +DWIDTH 6 0 BBX 4 7 1 0 BITMAP 60 @@ -940,7 +941,7 @@ ENDCHAR STARTCHAR char72 ENCODING 72 SWIDTH 640 0 -DWIDTH 5 0 +DWIDTH 6 0 BBX 4 7 1 0 BITMAP 90 @@ -954,7 +955,7 @@ ENDCHAR STARTCHAR char73 ENCODING 73 SWIDTH 640 0 -DWIDTH 5 0 +DWIDTH 6 0 BBX 4 7 1 0 BITMAP 70 @@ -968,7 +969,7 @@ ENDCHAR STARTCHAR char74 ENCODING 74 SWIDTH 640 0 -DWIDTH 5 0 +DWIDTH 6 0 BBX 4 7 1 0 BITMAP 10 @@ -982,7 +983,7 @@ ENDCHAR STARTCHAR char75 ENCODING 75 SWIDTH 640 0 -DWIDTH 5 0 +DWIDTH 6 0 BBX 4 7 1 0 BITMAP 90 @@ -996,7 +997,7 @@ ENDCHAR STARTCHAR char76 ENCODING 76 SWIDTH 640 0 -DWIDTH 5 0 +DWIDTH 6 0 BBX 4 7 1 0 BITMAP 80 @@ -1010,7 +1011,7 @@ ENDCHAR STARTCHAR char77 ENCODING 77 SWIDTH 640 0 -DWIDTH 5 0 +DWIDTH 6 0 BBX 4 7 1 0 BITMAP 90 @@ -1024,7 +1025,7 @@ ENDCHAR STARTCHAR char78 ENCODING 78 SWIDTH 640 0 -DWIDTH 5 0 +DWIDTH 6 0 BBX 4 7 1 0 BITMAP 90 @@ -1038,7 +1039,7 @@ ENDCHAR STARTCHAR char79 ENCODING 79 SWIDTH 640 0 -DWIDTH 5 0 +DWIDTH 6 0 BBX 4 7 1 0 BITMAP 60 @@ -1052,7 +1053,7 @@ ENDCHAR STARTCHAR char80 ENCODING 80 SWIDTH 640 0 -DWIDTH 5 0 +DWIDTH 6 0 BBX 4 7 1 0 BITMAP E0 @@ -1066,7 +1067,7 @@ ENDCHAR STARTCHAR char81 ENCODING 81 SWIDTH 640 0 -DWIDTH 5 0 +DWIDTH 6 0 BBX 4 8 1 -1 BITMAP 60 @@ -1081,7 +1082,7 @@ ENDCHAR STARTCHAR char82 ENCODING 82 SWIDTH 640 0 -DWIDTH 5 0 +DWIDTH 6 0 BBX 4 7 1 0 BITMAP E0 @@ -1095,7 +1096,7 @@ ENDCHAR STARTCHAR char83 ENCODING 83 SWIDTH 640 0 -DWIDTH 5 0 +DWIDTH 6 0 BBX 4 7 1 0 BITMAP 60 @@ -1109,7 +1110,7 @@ ENDCHAR STARTCHAR char84 ENCODING 84 SWIDTH 640 0 -DWIDTH 5 0 +DWIDTH 6 0 BBX 5 7 0 0 BITMAP F8 @@ -1123,7 +1124,7 @@ ENDCHAR STARTCHAR char85 ENCODING 85 SWIDTH 640 0 -DWIDTH 5 0 +DWIDTH 6 0 BBX 4 7 1 0 BITMAP 90 @@ -1137,7 +1138,7 @@ ENDCHAR STARTCHAR char86 ENCODING 86 SWIDTH 640 0 -DWIDTH 5 0 +DWIDTH 6 0 BBX 4 7 1 0 BITMAP 90 @@ -1151,7 +1152,7 @@ ENDCHAR STARTCHAR char87 ENCODING 87 SWIDTH 640 0 -DWIDTH 5 0 +DWIDTH 6 0 BBX 4 7 1 0 BITMAP 90 @@ -1165,7 +1166,7 @@ ENDCHAR STARTCHAR char88 ENCODING 88 SWIDTH 640 0 -DWIDTH 5 0 +DWIDTH 6 0 BBX 4 7 1 0 BITMAP 90 @@ -1179,7 +1180,7 @@ ENDCHAR STARTCHAR char89 ENCODING 89 SWIDTH 640 0 -DWIDTH 5 0 +DWIDTH 6 0 BBX 5 7 0 0 BITMAP 88 @@ -1193,7 +1194,7 @@ ENDCHAR STARTCHAR char90 ENCODING 90 SWIDTH 640 0 -DWIDTH 5 0 +DWIDTH 6 0 BBX 4 7 1 0 BITMAP F0 @@ -1207,7 +1208,7 @@ ENDCHAR STARTCHAR char91 ENCODING 91 SWIDTH 640 0 -DWIDTH 5 0 +DWIDTH 6 0 BBX 3 8 2 -1 BITMAP E0 @@ -1222,7 +1223,7 @@ ENDCHAR STARTCHAR char92 ENCODING 92 SWIDTH 640 0 -DWIDTH 5 0 +DWIDTH 6 0 BBX 4 6 1 0 BITMAP 80 @@ -1235,7 +1236,7 @@ ENDCHAR STARTCHAR char93 ENCODING 93 SWIDTH 640 0 -DWIDTH 5 0 +DWIDTH 6 0 BBX 3 8 1 -1 BITMAP E0 @@ -1250,7 +1251,7 @@ ENDCHAR STARTCHAR char94 ENCODING 94 SWIDTH 640 0 -DWIDTH 5 0 +DWIDTH 6 0 BBX 3 2 1 4 BITMAP 40 @@ -1259,7 +1260,7 @@ ENDCHAR STARTCHAR char95 ENCODING 95 SWIDTH 640 0 -DWIDTH 5 0 +DWIDTH 6 0 BBX 5 1 0 -2 BITMAP F8 @@ -1267,7 +1268,7 @@ ENDCHAR STARTCHAR char96 ENCODING 96 SWIDTH 640 0 -DWIDTH 5 0 +DWIDTH 6 0 BBX 2 4 2 3 BITMAP 80 @@ -1278,7 +1279,7 @@ ENDCHAR STARTCHAR char97 ENCODING 97 SWIDTH 640 0 -DWIDTH 5 0 +DWIDTH 6 0 BBX 4 5 1 0 BITMAP 60 @@ -1290,7 +1291,7 @@ ENDCHAR STARTCHAR char98 ENCODING 98 SWIDTH 640 0 -DWIDTH 5 0 +DWIDTH 6 0 BBX 4 7 1 0 BITMAP 80 @@ -1304,7 +1305,7 @@ ENDCHAR STARTCHAR char99 ENCODING 99 SWIDTH 640 0 -DWIDTH 5 0 +DWIDTH 6 0 BBX 5 5 1 0 BITMAP 70 @@ -1316,7 +1317,7 @@ ENDCHAR STARTCHAR char100 ENCODING 100 SWIDTH 640 0 -DWIDTH 5 0 +DWIDTH 6 0 BBX 4 7 1 0 BITMAP 10 @@ -1330,7 +1331,7 @@ ENDCHAR STARTCHAR char101 ENCODING 101 SWIDTH 640 0 -DWIDTH 5 0 +DWIDTH 6 0 BBX 4 5 1 0 BITMAP 60 @@ -1342,7 +1343,7 @@ ENDCHAR STARTCHAR char102 ENCODING 102 SWIDTH 640 0 -DWIDTH 5 0 +DWIDTH 6 0 BBX 4 7 1 0 BITMAP 30 @@ -1356,7 +1357,7 @@ ENDCHAR STARTCHAR char103 ENCODING 103 SWIDTH 640 0 -DWIDTH 5 0 +DWIDTH 6 0 BBX 4 7 1 -2 BITMAP 60 @@ -1370,7 +1371,7 @@ ENDCHAR STARTCHAR char104 ENCODING 104 SWIDTH 640 0 -DWIDTH 5 0 +DWIDTH 6 0 BBX 4 7 1 0 BITMAP 80 @@ -1384,7 +1385,7 @@ ENDCHAR STARTCHAR char105 ENCODING 105 SWIDTH 640 0 -DWIDTH 5 0 +DWIDTH 6 0 BBX 3 7 2 0 BITMAP 40 @@ -1398,7 +1399,7 @@ ENDCHAR STARTCHAR char106 ENCODING 106 SWIDTH 640 0 -DWIDTH 5 0 +DWIDTH 6 0 BBX 3 9 1 -2 BITMAP 20 @@ -1414,7 +1415,7 @@ ENDCHAR STARTCHAR char107 ENCODING 107 SWIDTH 640 0 -DWIDTH 5 0 +DWIDTH 6 0 BBX 4 7 1 0 BITMAP 80 @@ -1428,7 +1429,7 @@ ENDCHAR STARTCHAR char108 ENCODING 108 SWIDTH 640 0 -DWIDTH 5 0 +DWIDTH 6 0 BBX 3 7 2 0 BITMAP C0 @@ -1442,7 +1443,7 @@ ENDCHAR STARTCHAR char109 ENCODING 109 SWIDTH 640 0 -DWIDTH 5 0 +DWIDTH 6 0 BBX 5 5 0 0 BITMAP D0 @@ -1454,7 +1455,7 @@ ENDCHAR STARTCHAR char110 ENCODING 110 SWIDTH 640 0 -DWIDTH 5 0 +DWIDTH 6 0 BBX 4 5 1 0 BITMAP E0 @@ -1466,7 +1467,7 @@ ENDCHAR STARTCHAR char111 ENCODING 111 SWIDTH 640 0 -DWIDTH 5 0 +DWIDTH 6 0 BBX 4 5 1 0 BITMAP 60 @@ -1478,7 +1479,7 @@ ENDCHAR STARTCHAR char112 ENCODING 112 SWIDTH 640 0 -DWIDTH 5 0 +DWIDTH 6 0 BBX 4 7 1 -2 BITMAP E0 @@ -1492,7 +1493,7 @@ ENDCHAR STARTCHAR char113 ENCODING 113 SWIDTH 640 0 -DWIDTH 5 0 +DWIDTH 6 0 BBX 4 7 1 -2 BITMAP 70 @@ -1506,7 +1507,7 @@ ENDCHAR STARTCHAR char114 ENCODING 114 SWIDTH 640 0 -DWIDTH 5 0 +DWIDTH 6 0 BBX 5 5 1 0 BITMAP A0 @@ -1518,7 +1519,7 @@ ENDCHAR STARTCHAR char115 ENCODING 115 SWIDTH 640 0 -DWIDTH 5 0 +DWIDTH 6 0 BBX 4 5 1 0 BITMAP 70 @@ -1530,7 +1531,7 @@ ENDCHAR STARTCHAR char116 ENCODING 116 SWIDTH 640 0 -DWIDTH 5 0 +DWIDTH 6 0 BBX 4 7 1 0 BITMAP 40 @@ -1544,7 +1545,7 @@ ENDCHAR STARTCHAR char117 ENCODING 117 SWIDTH 640 0 -DWIDTH 5 0 +DWIDTH 6 0 BBX 4 5 1 0 BITMAP 90 @@ -1556,7 +1557,7 @@ ENDCHAR STARTCHAR char118 ENCODING 118 SWIDTH 640 0 -DWIDTH 5 0 +DWIDTH 6 0 BBX 4 5 1 0 BITMAP 90 @@ -1568,7 +1569,7 @@ ENDCHAR STARTCHAR char119 ENCODING 119 SWIDTH 640 0 -DWIDTH 5 0 +DWIDTH 6 0 BBX 5 5 0 0 BITMAP 88 @@ -1580,7 +1581,7 @@ ENDCHAR STARTCHAR char120 ENCODING 120 SWIDTH 640 0 -DWIDTH 5 0 +DWIDTH 6 0 BBX 4 5 1 0 BITMAP 90 @@ -1592,7 +1593,7 @@ ENDCHAR STARTCHAR char121 ENCODING 121 SWIDTH 640 0 -DWIDTH 5 0 +DWIDTH 6 0 BBX 4 7 1 -2 BITMAP 90 @@ -1606,7 +1607,7 @@ ENDCHAR STARTCHAR char122 ENCODING 122 SWIDTH 640 0 -DWIDTH 5 0 +DWIDTH 6 0 BBX 4 5 1 0 BITMAP F0 @@ -1618,7 +1619,7 @@ ENDCHAR STARTCHAR char123 ENCODING 123 SWIDTH 640 0 -DWIDTH 5 0 +DWIDTH 6 0 BBX 3 7 2 0 BITMAP 20 @@ -1632,7 +1633,7 @@ ENDCHAR STARTCHAR char124 ENCODING 124 SWIDTH 640 0 -DWIDTH 5 0 +DWIDTH 6 0 BBX 1 7 2 -1 BITMAP 80 @@ -1646,7 +1647,7 @@ ENDCHAR STARTCHAR char125 ENCODING 125 SWIDTH 640 0 -DWIDTH 5 0 +DWIDTH 6 0 BBX 3 7 1 0 BITMAP 80 @@ -1660,7 +1661,7 @@ ENDCHAR STARTCHAR char126 ENCODING 126 SWIDTH 640 0 -DWIDTH 5 0 +DWIDTH 6 0 BBX 4 2 1 3 BITMAP 50 @@ -1669,21 +1670,21 @@ ENDCHAR STARTCHAR char127 ENCODING 127 SWIDTH 640 0 -DWIDTH 5 0 +DWIDTH 6 0 BBX 0 0 0 0 BITMAP ENDCHAR STARTCHAR char128 ENCODING 128 SWIDTH 640 0 -DWIDTH 5 0 +DWIDTH 6 0 BBX 0 0 0 0 BITMAP ENDCHAR STARTCHAR char129 ENCODING 129 SWIDTH 640 0 -DWIDTH 5 0 +DWIDTH 6 0 BBX 3 3 0 4 BITMAP E0 @@ -1693,7 +1694,7 @@ ENDCHAR STARTCHAR char130 ENCODING 130 SWIDTH 640 0 -DWIDTH 5 0 +DWIDTH 6 0 BBX 3 3 2 4 BITMAP E0 @@ -1703,7 +1704,7 @@ ENDCHAR STARTCHAR char131 ENCODING 131 SWIDTH 640 0 -DWIDTH 5 0 +DWIDTH 6 0 BBX 5 3 0 4 BITMAP F8 @@ -1713,7 +1714,7 @@ ENDCHAR STARTCHAR char132 ENCODING 132 SWIDTH 640 0 -DWIDTH 5 0 +DWIDTH 6 0 BBX 3 3 0 1 BITMAP E0 @@ -1723,7 +1724,7 @@ ENDCHAR STARTCHAR char133 ENCODING 133 SWIDTH 640 0 -DWIDTH 5 0 +DWIDTH 6 0 BBX 3 6 0 1 BITMAP E0 @@ -1736,7 +1737,7 @@ ENDCHAR STARTCHAR char134 ENCODING 134 SWIDTH 640 0 -DWIDTH 5 0 +DWIDTH 6 0 BBX 5 6 0 1 BITMAP 38 @@ -1749,7 +1750,7 @@ ENDCHAR STARTCHAR char135 ENCODING 135 SWIDTH 640 0 -DWIDTH 5 0 +DWIDTH 6 0 BBX 5 6 0 1 BITMAP F8 @@ -1762,7 +1763,7 @@ ENDCHAR STARTCHAR char136 ENCODING 136 SWIDTH 640 0 -DWIDTH 5 0 +DWIDTH 6 0 BBX 3 3 2 1 BITMAP E0 @@ -1772,7 +1773,7 @@ ENDCHAR STARTCHAR char137 ENCODING 137 SWIDTH 640 0 -DWIDTH 5 0 +DWIDTH 6 0 BBX 5 6 0 1 BITMAP E0 @@ -1785,7 +1786,7 @@ ENDCHAR STARTCHAR char138 ENCODING 138 SWIDTH 640 0 -DWIDTH 5 0 +DWIDTH 6 0 BBX 3 6 2 1 BITMAP E0 @@ -1798,7 +1799,7 @@ ENDCHAR STARTCHAR char139 ENCODING 139 SWIDTH 640 0 -DWIDTH 5 0 +DWIDTH 6 0 BBX 5 6 0 1 BITMAP F8 @@ -1811,7 +1812,7 @@ ENDCHAR STARTCHAR char140 ENCODING 140 SWIDTH 640 0 -DWIDTH 5 0 +DWIDTH 6 0 BBX 5 3 0 1 BITMAP F8 @@ -1821,7 +1822,7 @@ ENDCHAR STARTCHAR char141 ENCODING 141 SWIDTH 640 0 -DWIDTH 5 0 +DWIDTH 6 0 BBX 5 6 0 1 BITMAP E0 @@ -1834,7 +1835,7 @@ ENDCHAR STARTCHAR char142 ENCODING 142 SWIDTH 640 0 -DWIDTH 5 0 +DWIDTH 6 0 BBX 5 6 0 1 BITMAP 38 @@ -1847,7 +1848,7 @@ ENDCHAR STARTCHAR char143 ENCODING 143 SWIDTH 640 0 -DWIDTH 5 0 +DWIDTH 6 0 BBX 5 6 0 1 BITMAP F8 @@ -1860,7 +1861,7 @@ ENDCHAR STARTCHAR char145 ENCODING 144 SWIDTH 640 0 -DWIDTH 5 0 +DWIDTH 6 0 BBX 3 3 0 -2 BITMAP E0 @@ -1870,7 +1871,7 @@ ENDCHAR STARTCHAR char146 ENCODING 145 SWIDTH 640 0 -DWIDTH 5 0 +DWIDTH 6 0 BBX 3 9 0 -2 BITMAP E0 @@ -1886,7 +1887,7 @@ ENDCHAR STARTCHAR char147 ENCODING 146 SWIDTH 640 0 -DWIDTH 5 0 +DWIDTH 6 0 BBX 5 9 0 -2 BITMAP 38 @@ -1902,7 +1903,7 @@ ENDCHAR STARTCHAR char148 ENCODING 147 SWIDTH 640 0 -DWIDTH 5 0 +DWIDTH 6 0 BBX 5 9 0 -2 BITMAP F8 @@ -1918,7 +1919,7 @@ ENDCHAR STARTCHAR char149 ENCODING 148 SWIDTH 640 0 -DWIDTH 5 0 +DWIDTH 6 0 BBX 3 6 0 -2 BITMAP E0 @@ -1931,7 +1932,7 @@ ENDCHAR STARTCHAR char150 ENCODING 149 SWIDTH 640 0 -DWIDTH 5 0 +DWIDTH 6 0 BBX 3 9 0 -2 BITMAP E0 @@ -1947,7 +1948,7 @@ ENDCHAR STARTCHAR char151 ENCODING 150 SWIDTH 640 0 -DWIDTH 5 0 +DWIDTH 6 0 BBX 5 9 0 -2 BITMAP 38 @@ -1963,7 +1964,7 @@ ENDCHAR STARTCHAR char135 ENCODING 151 SWIDTH 640 0 -DWIDTH 5 0 +DWIDTH 6 0 BBX 5 9 0 -2 BITMAP F8 @@ -1979,7 +1980,7 @@ ENDCHAR STARTCHAR char136 ENCODING 152 SWIDTH 640 0 -DWIDTH 5 0 +DWIDTH 6 0 BBX 5 6 0 -2 BITMAP 38 @@ -1992,7 +1993,7 @@ ENDCHAR STARTCHAR char137 ENCODING 153 SWIDTH 640 0 -DWIDTH 5 0 +DWIDTH 6 0 BBX 5 9 0 -2 BITMAP E0 @@ -2008,7 +2009,7 @@ ENDCHAR STARTCHAR char138 ENCODING 154 SWIDTH 640 0 -DWIDTH 5 0 +DWIDTH 6 0 BBX 5 9 0 -2 BITMAP 38 @@ -2024,7 +2025,7 @@ ENDCHAR STARTCHAR char139 ENCODING 155 SWIDTH 640 0 -DWIDTH 5 0 +DWIDTH 6 0 BBX 5 9 0 -2 BITMAP F8 @@ -2040,7 +2041,7 @@ ENDCHAR STARTCHAR char140 ENCODING 156 SWIDTH 640 0 -DWIDTH 5 0 +DWIDTH 6 0 BBX 5 6 0 -2 BITMAP F8 @@ -2053,7 +2054,7 @@ ENDCHAR STARTCHAR char141 ENCODING 157 SWIDTH 640 0 -DWIDTH 5 0 +DWIDTH 6 0 BBX 5 9 0 -2 BITMAP E0 @@ -2069,7 +2070,7 @@ ENDCHAR STARTCHAR char142 ENCODING 158 SWIDTH 640 0 -DWIDTH 5 0 +DWIDTH 6 0 BBX 5 9 0 -2 BITMAP 38 @@ -2085,7 +2086,7 @@ ENDCHAR STARTCHAR char143 ENCODING 159 SWIDTH 640 0 -DWIDTH 5 0 +DWIDTH 6 0 BBX 5 9 0 -2 BITMAP F8 @@ -2101,7 +2102,7 @@ ENDCHAR STARTCHAR exclamdown ENCODING 161 SWIDTH 640 0 -DWIDTH 5 0 +DWIDTH 6 0 BBX 1 7 3 -1 BITMAP 80 @@ -2115,7 +2116,7 @@ ENDCHAR STARTCHAR cent ENCODING 162 SWIDTH 640 0 -DWIDTH 5 0 +DWIDTH 6 0 BBX 4 7 1 0 BITMAP 20 @@ -2129,7 +2130,7 @@ ENDCHAR STARTCHAR sterling ENCODING 163 SWIDTH 640 0 -DWIDTH 5 0 +DWIDTH 6 0 BBX 4 7 1 0 BITMAP 30 @@ -2143,7 +2144,7 @@ ENDCHAR STARTCHAR currency ENCODING 164 SWIDTH 640 0 -DWIDTH 5 0 +DWIDTH 6 0 BBX 4 5 1 1 BITMAP F0 @@ -2155,7 +2156,7 @@ ENDCHAR STARTCHAR yen ENCODING 165 SWIDTH 640 0 -DWIDTH 5 0 +DWIDTH 6 0 BBX 5 7 0 0 BITMAP 88 @@ -2169,7 +2170,7 @@ ENDCHAR STARTCHAR brokenbar ENCODING 166 SWIDTH 640 0 -DWIDTH 5 0 +DWIDTH 6 0 BBX 1 8 3 -1 BITMAP 80 @@ -2184,7 +2185,7 @@ ENDCHAR STARTCHAR section ENCODING 167 SWIDTH 640 0 -DWIDTH 5 0 +DWIDTH 6 0 BBX 4 8 1 -1 BITMAP 70 @@ -2199,7 +2200,7 @@ ENDCHAR STARTCHAR diaeresis ENCODING 168 SWIDTH 640 0 -DWIDTH 5 0 +DWIDTH 6 0 BBX 4 1 1 6 BITMAP 90 @@ -2207,7 +2208,7 @@ ENDCHAR STARTCHAR copyright ENCODING 169 SWIDTH 640 0 -DWIDTH 5 0 +DWIDTH 6 0 BBX 5 7 0 0 BITMAP 78 @@ -2221,8 +2222,8 @@ ENDCHAR STARTCHAR ordfeminine ENCODING 170 SWIDTH 640 0 -DWIDTH 5 0 -BBX 5 5 1 2 +DWIDTH 6 0 +BBX 5 5 0 2 BITMAP E0 10 @@ -2233,7 +2234,7 @@ ENDCHAR STARTCHAR guillemotleft ENCODING 171 SWIDTH 640 0 -DWIDTH 5 0 +DWIDTH 6 0 BBX 5 3 0 2 BITMAP 48 @@ -2243,7 +2244,7 @@ ENDCHAR STARTCHAR notsign ENCODING 172 SWIDTH 640 0 -DWIDTH 5 0 +DWIDTH 6 0 BBX 5 3 0 2 BITMAP F8 @@ -2253,7 +2254,7 @@ ENDCHAR STARTCHAR hyphen ENCODING 173 SWIDTH 640 0 -DWIDTH 5 0 +DWIDTH 6 0 BBX 2 1 2 3 BITMAP C0 @@ -2261,7 +2262,7 @@ ENDCHAR STARTCHAR registered ENCODING 174 SWIDTH 640 0 -DWIDTH 5 0 +DWIDTH 6 0 BBX 5 7 0 0 BITMAP 78 @@ -2275,7 +2276,7 @@ ENDCHAR STARTCHAR macron ENCODING 175 SWIDTH 640 0 -DWIDTH 5 0 +DWIDTH 6 0 BBX 3 1 1 6 BITMAP E0 @@ -2283,7 +2284,7 @@ ENDCHAR STARTCHAR degree ENCODING 176 SWIDTH 640 0 -DWIDTH 5 0 +DWIDTH 6 0 BBX 3 3 2 4 BITMAP 40 @@ -2293,7 +2294,7 @@ ENDCHAR STARTCHAR plusminus ENCODING 177 SWIDTH 640 0 -DWIDTH 5 0 +DWIDTH 6 0 BBX 5 5 0 1 BITMAP 20 @@ -2305,7 +2306,7 @@ ENDCHAR STARTCHAR twosuperior ENCODING 178 SWIDTH 640 0 -DWIDTH 5 0 +DWIDTH 6 0 BBX 4 5 1 2 BITMAP E0 @@ -2317,7 +2318,7 @@ ENDCHAR STARTCHAR threesuperior ENCODING 179 SWIDTH 640 0 -DWIDTH 5 0 +DWIDTH 6 0 BBX 4 5 1 2 BITMAP E0 @@ -2329,7 +2330,7 @@ ENDCHAR STARTCHAR acute ENCODING 180 SWIDTH 640 0 -DWIDTH 5 0 +DWIDTH 6 0 BBX 2 2 2 5 BITMAP 40 @@ -2338,7 +2339,7 @@ ENDCHAR STARTCHAR mu ENCODING 181 SWIDTH 640 0 -DWIDTH 5 0 +DWIDTH 6 0 BBX 4 7 1 -2 BITMAP 90 @@ -2352,7 +2353,7 @@ ENDCHAR STARTCHAR paragraph ENCODING 182 SWIDTH 640 0 -DWIDTH 5 0 +DWIDTH 6 0 BBX 5 8 0 -1 BITMAP 78 @@ -2367,7 +2368,7 @@ ENDCHAR STARTCHAR periodcentered ENCODING 183 SWIDTH 640 0 -DWIDTH 5 0 +DWIDTH 6 0 BBX 2 2 2 2 BITMAP C0 @@ -2376,7 +2377,7 @@ ENDCHAR STARTCHAR cedilla ENCODING 184 SWIDTH 640 0 -DWIDTH 5 0 +DWIDTH 6 0 BBX 2 2 2 -2 BITMAP 40 @@ -2385,7 +2386,7 @@ ENDCHAR STARTCHAR onesuperior ENCODING 185 SWIDTH 640 0 -DWIDTH 5 0 +DWIDTH 6 0 BBX 3 5 1 2 BITMAP 20 @@ -2397,7 +2398,7 @@ ENDCHAR STARTCHAR masculine ENCODING 186 SWIDTH 640 0 -DWIDTH 5 0 +DWIDTH 6 0 BBX 4 5 1 2 BITMAP 60 @@ -2409,7 +2410,7 @@ ENDCHAR STARTCHAR guillemotright ENCODING 187 SWIDTH 640 0 -DWIDTH 5 0 +DWIDTH 6 0 BBX 5 3 0 2 BITMAP 90 @@ -2419,7 +2420,7 @@ ENDCHAR STARTCHAR onequarter ENCODING 188 SWIDTH 640 0 -DWIDTH 5 0 +DWIDTH 6 0 BBX 5 9 0 -2 BITMAP C0 @@ -2435,7 +2436,7 @@ ENDCHAR STARTCHAR onehalf ENCODING 189 SWIDTH 640 0 -DWIDTH 5 0 +DWIDTH 6 0 BBX 5 9 0 -2 BITMAP C0 @@ -2451,7 +2452,7 @@ ENDCHAR STARTCHAR threequarters ENCODING 190 SWIDTH 640 0 -DWIDTH 5 0 +DWIDTH 6 0 BBX 5 9 0 -2 BITMAP E0 @@ -2467,7 +2468,7 @@ ENDCHAR STARTCHAR questiondown ENCODING 191 SWIDTH 640 0 -DWIDTH 5 0 +DWIDTH 6 0 BBX 4 7 1 -1 BITMAP 20 @@ -2481,7 +2482,7 @@ ENDCHAR STARTCHAR Agrave ENCODING 192 SWIDTH 640 0 -DWIDTH 5 0 +DWIDTH 6 0 BBX 4 8 1 -1 BITMAP 40 @@ -2496,7 +2497,7 @@ ENDCHAR STARTCHAR Aacute ENCODING 193 SWIDTH 640 0 -DWIDTH 5 0 +DWIDTH 6 0 BBX 4 8 1 -1 BITMAP 20 @@ -2511,7 +2512,7 @@ ENDCHAR STARTCHAR Acircumflex ENCODING 194 SWIDTH 640 0 -DWIDTH 5 0 +DWIDTH 6 0 BBX 4 8 1 -1 BITMAP 40 @@ -2526,7 +2527,7 @@ ENDCHAR STARTCHAR Atilde ENCODING 195 SWIDTH 640 0 -DWIDTH 5 0 +DWIDTH 6 0 BBX 4 8 1 -1 BITMAP 50 @@ -2541,7 +2542,7 @@ ENDCHAR STARTCHAR Adiaeresis ENCODING 196 SWIDTH 640 0 -DWIDTH 5 0 +DWIDTH 6 0 BBX 4 7 1 -1 BITMAP 90 @@ -2555,7 +2556,7 @@ ENDCHAR STARTCHAR Aring ENCODING 197 SWIDTH 640 0 -DWIDTH 5 0 +DWIDTH 6 0 BBX 4 8 1 -1 BITMAP 60 @@ -2570,7 +2571,7 @@ ENDCHAR STARTCHAR AE ENCODING 198 SWIDTH 640 0 -DWIDTH 5 0 +DWIDTH 6 0 BBX 5 7 0 0 BITMAP 38 @@ -2584,7 +2585,7 @@ ENDCHAR STARTCHAR Ccedilla ENCODING 199 SWIDTH 640 0 -DWIDTH 5 0 +DWIDTH 6 0 BBX 5 9 0 -2 BITMAP 38 @@ -2600,7 +2601,7 @@ ENDCHAR STARTCHAR Egrave ENCODING 200 SWIDTH 640 0 -DWIDTH 5 0 +DWIDTH 6 0 BBX 4 8 1 -1 BITMAP 40 @@ -2615,7 +2616,7 @@ ENDCHAR STARTCHAR Eacute ENCODING 201 SWIDTH 640 0 -DWIDTH 5 0 +DWIDTH 6 0 BBX 4 8 1 -1 BITMAP 20 @@ -2630,7 +2631,7 @@ ENDCHAR STARTCHAR Ecircumflex ENCODING 202 SWIDTH 640 0 -DWIDTH 5 0 +DWIDTH 6 0 BBX 4 8 1 -1 BITMAP 40 @@ -2645,7 +2646,7 @@ ENDCHAR STARTCHAR Ediaeresis ENCODING 203 SWIDTH 640 0 -DWIDTH 5 0 +DWIDTH 6 0 BBX 4 7 1 -1 BITMAP A0 @@ -2659,7 +2660,7 @@ ENDCHAR STARTCHAR Igrave ENCODING 204 SWIDTH 640 0 -DWIDTH 5 0 +DWIDTH 6 0 BBX 3 8 2 -1 BITMAP 40 @@ -2674,7 +2675,7 @@ ENDCHAR STARTCHAR Iacute ENCODING 205 SWIDTH 640 0 -DWIDTH 5 0 +DWIDTH 6 0 BBX 3 8 2 -1 BITMAP 20 @@ -2689,7 +2690,7 @@ ENDCHAR STARTCHAR Icircumflex ENCODING 206 SWIDTH 640 0 -DWIDTH 5 0 +DWIDTH 6 0 BBX 3 8 2 -1 BITMAP 40 @@ -2704,7 +2705,7 @@ ENDCHAR STARTCHAR Idiaeresis ENCODING 207 SWIDTH 640 0 -DWIDTH 5 0 +DWIDTH 6 0 BBX 3 8 2 -1 BITMAP A0 @@ -2719,7 +2720,7 @@ ENDCHAR STARTCHAR ETH ENCODING 208 SWIDTH 640 0 -DWIDTH 5 0 +DWIDTH 6 0 BBX 5 7 0 0 BITMAP 70 @@ -2733,7 +2734,7 @@ ENDCHAR STARTCHAR Ntilde ENCODING 209 SWIDTH 640 0 -DWIDTH 5 0 +DWIDTH 6 0 BBX 4 7 1 0 BITMAP 50 @@ -2747,7 +2748,7 @@ ENDCHAR STARTCHAR Ograve ENCODING 210 SWIDTH 640 0 -DWIDTH 5 0 +DWIDTH 6 0 BBX 4 8 1 -1 BITMAP 40 @@ -2762,7 +2763,7 @@ ENDCHAR STARTCHAR Oacute ENCODING 211 SWIDTH 640 0 -DWIDTH 5 0 +DWIDTH 6 0 BBX 4 8 1 -1 BITMAP 20 @@ -2777,7 +2778,7 @@ ENDCHAR STARTCHAR Ocircumflex ENCODING 212 SWIDTH 640 0 -DWIDTH 5 0 +DWIDTH 6 0 BBX 4 8 1 -1 BITMAP 20 @@ -2792,7 +2793,7 @@ ENDCHAR STARTCHAR Otilde ENCODING 213 SWIDTH 640 0 -DWIDTH 5 0 +DWIDTH 6 0 BBX 4 8 1 -1 BITMAP 50 @@ -2807,7 +2808,7 @@ ENDCHAR STARTCHAR Odiaeresis ENCODING 214 SWIDTH 640 0 -DWIDTH 5 0 +DWIDTH 6 0 BBX 4 7 1 0 BITMAP 90 @@ -2821,8 +2822,8 @@ ENDCHAR STARTCHAR multiply ENCODING 215 SWIDTH 640 0 -DWIDTH 5 0 -BBX 5 5 1 1 +DWIDTH 6 0 +BBX 5 5 0 1 BITMAP 88 50 @@ -2833,7 +2834,7 @@ ENDCHAR STARTCHAR Ooblique ENCODING 216 SWIDTH 640 0 -DWIDTH 5 0 +DWIDTH 6 0 BBX 5 7 0 0 BITMAP 38 @@ -2847,7 +2848,7 @@ ENDCHAR STARTCHAR Ugrave ENCODING 217 SWIDTH 640 0 -DWIDTH 5 0 +DWIDTH 6 0 BBX 4 8 1 -1 BITMAP 40 @@ -2862,7 +2863,7 @@ ENDCHAR STARTCHAR Uacute ENCODING 218 SWIDTH 640 0 -DWIDTH 5 0 +DWIDTH 6 0 BBX 4 8 1 -1 BITMAP 20 @@ -2877,7 +2878,7 @@ ENDCHAR STARTCHAR Ucircumflex ENCODING 219 SWIDTH 640 0 -DWIDTH 5 0 +DWIDTH 6 0 BBX 4 8 1 -1 BITMAP 20 @@ -2892,7 +2893,7 @@ ENDCHAR STARTCHAR Udiaeresis ENCODING 220 SWIDTH 640 0 -DWIDTH 5 0 +DWIDTH 6 0 BBX 4 8 1 -1 BITMAP 90 @@ -2907,8 +2908,8 @@ ENDCHAR STARTCHAR Yacute ENCODING 221 SWIDTH 640 0 -DWIDTH 5 0 -BBX 5 8 1 -1 +DWIDTH 6 0 +BBX 5 8 0 -1 BITMAP 10 20 @@ -2922,7 +2923,7 @@ ENDCHAR STARTCHAR THORN ENCODING 222 SWIDTH 640 0 -DWIDTH 5 0 +DWIDTH 6 0 BBX 4 7 1 0 BITMAP 80 @@ -2936,8 +2937,8 @@ ENDCHAR STARTCHAR ssharp ENCODING 223 SWIDTH 640 0 -DWIDTH 5 0 -BBX 5 8 1 -1 +DWIDTH 6 0 +BBX 5 8 0 -1 BITMAP 60 90 @@ -2951,7 +2952,7 @@ ENDCHAR STARTCHAR agrave ENCODING 224 SWIDTH 640 0 -DWIDTH 5 0 +DWIDTH 6 0 BBX 4 8 1 -1 BITMAP 40 @@ -2966,7 +2967,7 @@ ENDCHAR STARTCHAR aacute ENCODING 225 SWIDTH 640 0 -DWIDTH 5 0 +DWIDTH 6 0 BBX 4 8 1 -1 BITMAP 20 @@ -2981,7 +2982,7 @@ ENDCHAR STARTCHAR acircumflex ENCODING 226 SWIDTH 640 0 -DWIDTH 5 0 +DWIDTH 6 0 BBX 4 8 1 -1 BITMAP 20 @@ -2996,7 +2997,7 @@ ENDCHAR STARTCHAR atilde ENCODING 227 SWIDTH 640 0 -DWIDTH 5 0 +DWIDTH 6 0 BBX 4 8 1 -1 BITMAP 50 @@ -3011,7 +3012,7 @@ ENDCHAR STARTCHAR adiaeresis ENCODING 228 SWIDTH 640 0 -DWIDTH 5 0 +DWIDTH 6 0 BBX 4 7 1 0 BITMAP 50 @@ -3025,7 +3026,7 @@ ENDCHAR STARTCHAR aring ENCODING 229 SWIDTH 640 0 -DWIDTH 5 0 +DWIDTH 6 0 BBX 4 8 1 -1 BITMAP 20 @@ -3040,8 +3041,8 @@ ENDCHAR STARTCHAR ae ENCODING 230 SWIDTH 640 0 -DWIDTH 5 0 -BBX 5 6 1 0 +DWIDTH 6 0 +BBX 5 6 0 0 BITMAP D8 28 @@ -3053,7 +3054,7 @@ ENDCHAR STARTCHAR ccedilla ENCODING 231 SWIDTH 640 0 -DWIDTH 5 0 +DWIDTH 6 0 BBX 4 8 1 -2 BITMAP 70 @@ -3068,7 +3069,7 @@ ENDCHAR STARTCHAR egrave ENCODING 232 SWIDTH 640 0 -DWIDTH 5 0 +DWIDTH 6 0 BBX 4 8 1 -1 BITMAP 40 @@ -3083,7 +3084,7 @@ ENDCHAR STARTCHAR eacute ENCODING 233 SWIDTH 640 0 -DWIDTH 5 0 +DWIDTH 6 0 BBX 4 8 1 -1 BITMAP 20 @@ -3098,7 +3099,7 @@ ENDCHAR STARTCHAR ecircumflex ENCODING 234 SWIDTH 640 0 -DWIDTH 5 0 +DWIDTH 6 0 BBX 4 8 1 -1 BITMAP 20 @@ -3113,7 +3114,7 @@ ENDCHAR STARTCHAR ediaeresis ENCODING 235 SWIDTH 640 0 -DWIDTH 5 0 +DWIDTH 6 0 BBX 4 7 1 0 BITMAP 90 @@ -3127,7 +3128,7 @@ ENDCHAR STARTCHAR igrave ENCODING 236 SWIDTH 640 0 -DWIDTH 5 0 +DWIDTH 6 0 BBX 2 7 2 0 BITMAP 80 @@ -3141,7 +3142,7 @@ ENDCHAR STARTCHAR iacute ENCODING 237 SWIDTH 640 0 -DWIDTH 5 0 +DWIDTH 6 0 BBX 2 7 2 0 BITMAP 40 @@ -3155,7 +3156,7 @@ ENDCHAR STARTCHAR icircumflex ENCODING 238 SWIDTH 640 0 -DWIDTH 5 0 +DWIDTH 6 0 BBX 3 7 2 0 BITMAP 40 @@ -3169,7 +3170,7 @@ ENDCHAR STARTCHAR idiaeresis ENCODING 239 SWIDTH 640 0 -DWIDTH 5 0 +DWIDTH 6 0 BBX 3 7 2 0 BITMAP A0 @@ -3183,7 +3184,7 @@ ENDCHAR STARTCHAR eth ENCODING 240 SWIDTH 640 0 -DWIDTH 5 0 +DWIDTH 6 0 BBX 4 8 1 -1 BITMAP 50 @@ -3198,7 +3199,7 @@ ENDCHAR STARTCHAR ntilde ENCODING 241 SWIDTH 640 0 -DWIDTH 5 0 +DWIDTH 6 0 BBX 4 7 1 0 BITMAP 50 @@ -3212,7 +3213,7 @@ ENDCHAR STARTCHAR ograve ENCODING 242 SWIDTH 640 0 -DWIDTH 5 0 +DWIDTH 6 0 BBX 4 7 1 0 BITMAP 40 @@ -3226,7 +3227,7 @@ ENDCHAR STARTCHAR oacute ENCODING 243 SWIDTH 640 0 -DWIDTH 5 0 +DWIDTH 6 0 BBX 4 7 1 0 BITMAP 20 @@ -3240,7 +3241,7 @@ ENDCHAR STARTCHAR ocircumflex ENCODING 244 SWIDTH 640 0 -DWIDTH 5 0 +DWIDTH 6 0 BBX 4 7 1 0 BITMAP 20 @@ -3254,7 +3255,7 @@ ENDCHAR STARTCHAR otilde ENCODING 245 SWIDTH 640 0 -DWIDTH 5 0 +DWIDTH 6 0 BBX 4 7 1 0 BITMAP 50 @@ -3268,7 +3269,7 @@ ENDCHAR STARTCHAR odiaeresis ENCODING 246 SWIDTH 640 0 -DWIDTH 5 0 +DWIDTH 6 0 BBX 4 7 1 0 BITMAP 90 @@ -3282,8 +3283,8 @@ ENDCHAR STARTCHAR division ENCODING 247 SWIDTH 640 0 -DWIDTH 5 0 -BBX 5 5 1 1 +DWIDTH 6 0 +BBX 5 5 0 1 BITMAP 20 00 @@ -3294,7 +3295,7 @@ ENDCHAR STARTCHAR oslash ENCODING 248 SWIDTH 640 0 -DWIDTH 5 0 +DWIDTH 6 0 BBX 5 6 0 0 BITMAP 30 @@ -3307,7 +3308,7 @@ ENDCHAR STARTCHAR ugrave ENCODING 249 SWIDTH 640 0 -DWIDTH 5 0 +DWIDTH 6 0 BBX 4 7 1 0 BITMAP 40 @@ -3321,7 +3322,7 @@ ENDCHAR STARTCHAR uacute ENCODING 250 SWIDTH 640 0 -DWIDTH 5 0 +DWIDTH 6 0 BBX 4 7 1 0 BITMAP 20 @@ -3335,7 +3336,7 @@ ENDCHAR STARTCHAR ucircumflex ENCODING 251 SWIDTH 640 0 -DWIDTH 5 0 +DWIDTH 6 0 BBX 4 7 1 0 BITMAP 20 @@ -3349,7 +3350,7 @@ ENDCHAR STARTCHAR udiaeresis ENCODING 252 SWIDTH 640 0 -DWIDTH 5 0 +DWIDTH 6 0 BBX 4 7 1 0 BITMAP 90 @@ -3363,7 +3364,7 @@ ENDCHAR STARTCHAR yacute ENCODING 253 SWIDTH 640 0 -DWIDTH 5 0 +DWIDTH 6 0 BBX 4 9 1 -2 BITMAP 20 @@ -3379,7 +3380,7 @@ ENDCHAR STARTCHAR thorn ENCODING 254 SWIDTH 640 0 -DWIDTH 5 0 +DWIDTH 6 0 BBX 4 9 1 -2 BITMAP 80 @@ -3395,7 +3396,7 @@ ENDCHAR STARTCHAR ydiaeresis ENCODING 255 SWIDTH 640 0 -DWIDTH 5 0 +DWIDTH 6 0 BBX 4 9 1 -2 BITMAP 90 @@ -3408,4 +3409,44 @@ BITMAP 40 80 ENDCHAR +STARTCHAR char256 +ENCODING 256 +SWIDTH 640 0 +DWIDTH 6 0 +BBX 5 7 0 0 +BITMAP +20 +70 +A8 +20 +20 +20 +20 +ENDCHAR +STARTCHAR char257 +ENCODING 257 +SWIDTH 640 0 +DWIDTH 6 0 +BBX 5 7 0 0 +BITMAP +20 +20 +20 +20 +A8 +70 +20 +ENDCHAR +STARTCHAR char258 +ENCODING 258 +SWIDTH 640 0 +DWIDTH 6 0 +BBX 3 5 1 1 +BITMAP +E0 +E0 +E0 +E0 +E0 +ENDCHAR ENDFONT diff --git a/mkfont/mkfont.py b/mkfont/mkfont.py index ec27ffd..77719bd 100644 --- a/mkfont/mkfont.py +++ b/mkfont/mkfont.py @@ -29,6 +29,9 @@ class OffsetBitmap: return 0 +CHAR_COUNT = 512 + + def main(bdf, header): font = bitmap_font.load_font(bdf, Bitmap) width, height, dx, dy = font.get_bounding_box() @@ -36,11 +39,11 @@ def main(bdf, header): # if width != 5 or height != 9: # raise SystemExit("sorry, only 5x9 monospace fonts supported") - output_data = array.array("H", [0] * 9 * 256) + output_data = array.array("H", [0] * 9 * CHAR_COUNT) - font.load_glyphs(range(256)) + font.load_glyphs(range(CHAR_COUNT)) - for i in range(256): + for i in range(CHAR_COUNT): g = font.get_glyph(i) if g is None: continue @@ -53,7 +56,7 @@ def main(bdf, header): (bitmap[1, j], 6, 7), (bitmap[0, j], 8, 9), ) - output_data[j * 256 + i] = d << 2 + output_data[j * CHAR_COUNT + i] = d << 2 for x in output_data: print(f"0x{x:04x},", file=header)