From 45d88fa052995da4fb77deb72ddf1597cfdb058c Mon Sep 17 00:00:00 2001 From: Christian Vogel Date: Mon, 11 Oct 2010 20:49:39 +0200 Subject: Calypso FB: 8 Fonts, header file and utility functions. I only activate two fonts, Helvetica Regular 8pt and bold 14pt because the others bloat the binary too much. --- src/target/firmware/fb/4x6.c | 731 +++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 731 insertions(+) create mode 100644 src/target/firmware/fb/4x6.c (limited to 'src/target/firmware/fb/4x6.c') diff --git a/src/target/firmware/fb/4x6.c b/src/target/firmware/fb/4x6.c new file mode 100644 index 00000000..2a35eba6 --- /dev/null +++ b/src/target/firmware/fb/4x6.c @@ -0,0 +1,731 @@ +#include +static const uint8_t font_4x6_data[] = { +/* --- new character space (32) starting at offset 0x0000 --- */ + /*0000:*/ 4, 4, 1, 0, -1, /* width and bbox (w,h,x,y) */ + /*0005:*/ 0x00, /* ........ */ +/* --- new character exclam (33) starting at offset 0x0006 --- */ + /*0006:*/ 4, 4, 5, 0, 0, /* width and bbox (w,h,x,y) */ + /*000b:*/ 0x40, /* .#...... */ + /*000c:*/ 0x40, /* .#...... */ + /*000d:*/ 0x40, /* .#...... */ + /*000e:*/ 0x00, /* ........ */ + /*000f:*/ 0x40, /* .#...... */ +/* --- new character quotedbl (34) starting at offset 0x0010 --- */ + /*0010:*/ 4, 4, 2, 0, 3, /* width and bbox (w,h,x,y) */ + /*0015:*/ 0xa0, /* #.#..... */ + /*0016:*/ 0xa0, /* #.#..... */ +/* --- new character numbersign (35) starting at offset 0x0017 --- */ + /*0017:*/ 4, 4, 5, 0, 0, /* width and bbox (w,h,x,y) */ + /*001c:*/ 0xa0, /* #.#..... */ + /*001d:*/ 0xf0, /* ####.... */ + /*001e:*/ 0xa0, /* #.#..... */ + /*001f:*/ 0xf0, /* ####.... */ + /*0020:*/ 0xa0, /* #.#..... */ +/* --- new character dollar (36) starting at offset 0x0021 --- */ + /*0021:*/ 4, 4, 6, 0, -1, /* width and bbox (w,h,x,y) */ + /*0026:*/ 0x40, /* .#...... */ + /*0027:*/ 0xe0, /* ###..... */ + /*0028:*/ 0xc0, /* ##...... */ + /*0029:*/ 0x20, /* ..#..... */ + /*002a:*/ 0xe0, /* ###..... */ + /*002b:*/ 0x40, /* .#...... */ +/* --- new character percent (37) starting at offset 0x002c --- */ + /*002c:*/ 4, 4, 5, 0, 0, /* width and bbox (w,h,x,y) */ + /*0031:*/ 0x80, /* #....... */ + /*0032:*/ 0x20, /* ..#..... */ + /*0033:*/ 0x40, /* .#...... */ + /*0034:*/ 0x80, /* #....... */ + /*0035:*/ 0x20, /* ..#..... */ +/* --- new character ampersand (38) starting at offset 0x0036 --- */ + /*0036:*/ 4, 4, 5, 0, 0, /* width and bbox (w,h,x,y) */ + /*003b:*/ 0x40, /* .#...... */ + /*003c:*/ 0xa0, /* #.#..... */ + /*003d:*/ 0x40, /* .#...... */ + /*003e:*/ 0xa0, /* #.#..... */ + /*003f:*/ 0x50, /* .#.#.... */ +/* --- new character quotesingle (39) starting at offset 0x0040 --- */ + /*0040:*/ 4, 4, 2, 0, 3, /* width and bbox (w,h,x,y) */ + /*0045:*/ 0x40, /* .#...... */ + /*0046:*/ 0x40, /* .#...... */ +/* --- new character parenleft (40) starting at offset 0x0047 --- */ + /*0047:*/ 4, 4, 6, 0, -1, /* width and bbox (w,h,x,y) */ + /*004c:*/ 0x20, /* ..#..... */ + /*004d:*/ 0x40, /* .#...... */ + /*004e:*/ 0x40, /* .#...... */ + /*004f:*/ 0x40, /* .#...... */ + /*0050:*/ 0x40, /* .#...... */ + /*0051:*/ 0x20, /* ..#..... */ +/* --- new character parenright (41) starting at offset 0x0052 --- */ + /*0052:*/ 4, 4, 6, 0, -1, /* width and bbox (w,h,x,y) */ + /*0057:*/ 0x80, /* #....... */ + /*0058:*/ 0x40, /* .#...... */ + /*0059:*/ 0x40, /* .#...... */ + /*005a:*/ 0x40, /* .#...... */ + /*005b:*/ 0x40, /* .#...... */ + /*005c:*/ 0x80, /* #....... */ +/* --- new character asterisk (42) starting at offset 0x005d --- */ + /*005d:*/ 4, 4, 5, 0, 0, /* width and bbox (w,h,x,y) */ + /*0062:*/ 0xa0, /* #.#..... */ + /*0063:*/ 0x40, /* .#...... */ + /*0064:*/ 0xe0, /* ###..... */ + /*0065:*/ 0x40, /* .#...... */ + /*0066:*/ 0xa0, /* #.#..... */ +/* --- new character plus (43) starting at offset 0x0067 --- */ + /*0067:*/ 4, 4, 5, 0, 0, /* width and bbox (w,h,x,y) */ + /*006c:*/ 0x40, /* .#...... */ + /*006d:*/ 0x40, /* .#...... */ + /*006e:*/ 0xe0, /* ###..... */ + /*006f:*/ 0x40, /* .#...... */ + /*0070:*/ 0x40, /* .#...... */ +/* --- new character comma (44) starting at offset 0x0071 --- */ + /*0071:*/ 4, 4, 2, 0, -1, /* width and bbox (w,h,x,y) */ + /*0076:*/ 0x40, /* .#...... */ + /*0077:*/ 0x80, /* #....... */ +/* --- new character hyphen (45) starting at offset 0x0078 --- */ + /*0078:*/ 4, 4, 1, 0, 2, /* width and bbox (w,h,x,y) */ + /*007d:*/ 0xe0, /* ###..... */ +/* --- new character period (46) starting at offset 0x007e --- */ + /*007e:*/ 4, 4, 1, 0, 0, /* width and bbox (w,h,x,y) */ + /*0083:*/ 0x40, /* .#...... */ +/* --- new character slash (47) starting at offset 0x0084 --- */ + /*0084:*/ 4, 4, 5, 0, 0, /* width and bbox (w,h,x,y) */ + /*0089:*/ 0x20, /* ..#..... */ + /*008a:*/ 0x20, /* ..#..... */ + /*008b:*/ 0x40, /* .#...... */ + /*008c:*/ 0x80, /* #....... */ + /*008d:*/ 0x80, /* #....... */ +/* --- new character zero (48) starting at offset 0x008e --- */ + /*008e:*/ 4, 4, 5, 0, 0, /* width and bbox (w,h,x,y) */ + /*0093:*/ 0x40, /* .#...... */ + /*0094:*/ 0xa0, /* #.#..... */ + /*0095:*/ 0xe0, /* ###..... */ + /*0096:*/ 0xa0, /* #.#..... */ + /*0097:*/ 0x40, /* .#...... */ +/* --- new character one (49) starting at offset 0x0098 --- */ + /*0098:*/ 4, 4, 5, 0, 0, /* width and bbox (w,h,x,y) */ + /*009d:*/ 0x40, /* .#...... */ + /*009e:*/ 0xc0, /* ##...... */ + /*009f:*/ 0x40, /* .#...... */ + /*00a0:*/ 0x40, /* .#...... */ + /*00a1:*/ 0xe0, /* ###..... */ +/* --- new character two (50) starting at offset 0x00a2 --- */ + /*00a2:*/ 4, 4, 5, 0, 0, /* width and bbox (w,h,x,y) */ + /*00a7:*/ 0x40, /* .#...... */ + /*00a8:*/ 0xa0, /* #.#..... */ + /*00a9:*/ 0x20, /* ..#..... */ + /*00aa:*/ 0x40, /* .#...... */ + /*00ab:*/ 0xe0, /* ###..... */ +/* --- new character three (51) starting at offset 0x00ac --- */ + /*00ac:*/ 4, 4, 5, 0, 0, /* width and bbox (w,h,x,y) */ + /*00b1:*/ 0xe0, /* ###..... */ + /*00b2:*/ 0x20, /* ..#..... */ + /*00b3:*/ 0x40, /* .#...... */ + /*00b4:*/ 0x20, /* ..#..... */ + /*00b5:*/ 0xc0, /* ##...... */ +/* --- new character four (52) starting at offset 0x00b6 --- */ + /*00b6:*/ 4, 4, 5, 0, 0, /* width and bbox (w,h,x,y) */ + /*00bb:*/ 0xa0, /* #.#..... */ + /*00bc:*/ 0xa0, /* #.#..... */ + /*00bd:*/ 0xe0, /* ###..... */ + /*00be:*/ 0x20, /* ..#..... */ + /*00bf:*/ 0x20, /* ..#..... */ +/* --- new character five (53) starting at offset 0x00c0 --- */ + /*00c0:*/ 4, 4, 5, 0, 0, /* width and bbox (w,h,x,y) */ + /*00c5:*/ 0xe0, /* ###..... */ + /*00c6:*/ 0x80, /* #....... */ + /*00c7:*/ 0xc0, /* ##...... */ + /*00c8:*/ 0x20, /* ..#..... */ + /*00c9:*/ 0xc0, /* ##...... */ +/* --- new character six (54) starting at offset 0x00ca --- */ + /*00ca:*/ 4, 4, 5, 0, 0, /* width and bbox (w,h,x,y) */ + /*00cf:*/ 0x60, /* .##..... */ + /*00d0:*/ 0x80, /* #....... */ + /*00d1:*/ 0xc0, /* ##...... */ + /*00d2:*/ 0xa0, /* #.#..... */ + /*00d3:*/ 0x40, /* .#...... */ +/* --- new character seven (55) starting at offset 0x00d4 --- */ + /*00d4:*/ 4, 4, 5, 0, 0, /* width and bbox (w,h,x,y) */ + /*00d9:*/ 0xe0, /* ###..... */ + /*00da:*/ 0x20, /* ..#..... */ + /*00db:*/ 0x40, /* .#...... */ + /*00dc:*/ 0x80, /* #....... */ + /*00dd:*/ 0x80, /* #....... */ +/* --- new character eight (56) starting at offset 0x00de --- */ + /*00de:*/ 4, 4, 5, 0, 0, /* width and bbox (w,h,x,y) */ + /*00e3:*/ 0x60, /* .##..... */ + /*00e4:*/ 0xa0, /* #.#..... */ + /*00e5:*/ 0x40, /* .#...... */ + /*00e6:*/ 0xa0, /* #.#..... */ + /*00e7:*/ 0xc0, /* ##...... */ +/* --- new character nine (57) starting at offset 0x00e8 --- */ + /*00e8:*/ 4, 4, 5, 0, 0, /* width and bbox (w,h,x,y) */ + /*00ed:*/ 0x40, /* .#...... */ + /*00ee:*/ 0xa0, /* #.#..... */ + /*00ef:*/ 0x60, /* .##..... */ + /*00f0:*/ 0x20, /* ..#..... */ + /*00f1:*/ 0xc0, /* ##...... */ +/* --- new character colon (58) starting at offset 0x00f2 --- */ + /*00f2:*/ 4, 4, 4, 0, 0, /* width and bbox (w,h,x,y) */ + /*00f7:*/ 0x40, /* .#...... */ + /*00f8:*/ 0x00, /* ........ */ + /*00f9:*/ 0x00, /* ........ */ + /*00fa:*/ 0x40, /* .#...... */ +/* --- new character semicolon (59) starting at offset 0x00fb --- */ + /*00fb:*/ 4, 4, 5, 0, -1, /* width and bbox (w,h,x,y) */ + /*0100:*/ 0x40, /* .#...... */ + /*0101:*/ 0x00, /* ........ */ + /*0102:*/ 0x00, /* ........ */ + /*0103:*/ 0x40, /* .#...... */ + /*0104:*/ 0x80, /* #....... */ +/* --- new character less (60) starting at offset 0x0105 --- */ + /*0105:*/ 4, 4, 5, 0, 0, /* width and bbox (w,h,x,y) */ + /*010a:*/ 0x20, /* ..#..... */ + /*010b:*/ 0x40, /* .#...... */ + /*010c:*/ 0x80, /* #....... */ + /*010d:*/ 0x40, /* .#...... */ + /*010e:*/ 0x20, /* ..#..... */ +/* --- new character equal (61) starting at offset 0x010f --- */ + /*010f:*/ 4, 4, 3, 0, 1, /* width and bbox (w,h,x,y) */ + /*0114:*/ 0xe0, /* ###..... */ + /*0115:*/ 0x00, /* ........ */ + /*0116:*/ 0xe0, /* ###..... */ +/* --- new character greater (62) starting at offset 0x0117 --- */ + /*0117:*/ 4, 4, 5, 0, 0, /* width and bbox (w,h,x,y) */ + /*011c:*/ 0x80, /* #....... */ + /*011d:*/ 0x40, /* .#...... */ + /*011e:*/ 0x20, /* ..#..... */ + /*011f:*/ 0x40, /* .#...... */ + /*0120:*/ 0x80, /* #....... */ +/* --- new character question (63) starting at offset 0x0121 --- */ + /*0121:*/ 4, 4, 5, 0, 0, /* width and bbox (w,h,x,y) */ + /*0126:*/ 0xc0, /* ##...... */ + /*0127:*/ 0x20, /* ..#..... */ + /*0128:*/ 0x40, /* .#...... */ + /*0129:*/ 0x00, /* ........ */ + /*012a:*/ 0x40, /* .#...... */ +/* --- new character at (64) starting at offset 0x012b --- */ + /*012b:*/ 4, 4, 5, 0, 0, /* width and bbox (w,h,x,y) */ + /*0130:*/ 0x60, /* .##..... */ + /*0131:*/ 0xa0, /* #.#..... */ + /*0132:*/ 0xa0, /* #.#..... */ + /*0133:*/ 0x80, /* #....... */ + /*0134:*/ 0x60, /* .##..... */ +/* --- new character A (65) starting at offset 0x0135 --- */ + /*0135:*/ 4, 4, 5, 0, 0, /* width and bbox (w,h,x,y) */ + /*013a:*/ 0x40, /* .#...... */ + /*013b:*/ 0xa0, /* #.#..... */ + /*013c:*/ 0xe0, /* ###..... */ + /*013d:*/ 0xa0, /* #.#..... */ + /*013e:*/ 0xa0, /* #.#..... */ +/* --- new character B (66) starting at offset 0x013f --- */ + /*013f:*/ 4, 4, 5, 0, 0, /* width and bbox (w,h,x,y) */ + /*0144:*/ 0xc0, /* ##...... */ + /*0145:*/ 0xa0, /* #.#..... */ + /*0146:*/ 0xc0, /* ##...... */ + /*0147:*/ 0xa0, /* #.#..... */ + /*0148:*/ 0xc0, /* ##...... */ +/* --- new character C (67) starting at offset 0x0149 --- */ + /*0149:*/ 4, 4, 5, 0, 0, /* width and bbox (w,h,x,y) */ + /*014e:*/ 0x40, /* .#...... */ + /*014f:*/ 0xa0, /* #.#..... */ + /*0150:*/ 0x80, /* #....... */ + /*0151:*/ 0xa0, /* #.#..... */ + /*0152:*/ 0x40, /* .#...... */ +/* --- new character D (68) starting at offset 0x0153 --- */ + /*0153:*/ 4, 4, 5, 0, 0, /* width and bbox (w,h,x,y) */ + /*0158:*/ 0xc0, /* ##...... */ + /*0159:*/ 0xa0, /* #.#..... */ + /*015a:*/ 0xa0, /* #.#..... */ + /*015b:*/ 0xa0, /* #.#..... */ + /*015c:*/ 0xc0, /* ##...... */ +/* --- new character E (69) starting at offset 0x015d --- */ + /*015d:*/ 4, 4, 5, 0, 0, /* width and bbox (w,h,x,y) */ + /*0162:*/ 0xe0, /* ###..... */ + /*0163:*/ 0x80, /* #....... */ + /*0164:*/ 0xc0, /* ##...... */ + /*0165:*/ 0x80, /* #....... */ + /*0166:*/ 0xe0, /* ###..... */ +/* --- new character F (70) starting at offset 0x0167 --- */ + /*0167:*/ 4, 4, 5, 0, 0, /* width and bbox (w,h,x,y) */ + /*016c:*/ 0xe0, /* ###..... */ + /*016d:*/ 0x80, /* #....... */ + /*016e:*/ 0xc0, /* ##...... */ + /*016f:*/ 0x80, /* #....... */ + /*0170:*/ 0x80, /* #....... */ +/* --- new character G (71) starting at offset 0x0171 --- */ + /*0171:*/ 4, 4, 5, 0, 0, /* width and bbox (w,h,x,y) */ + /*0176:*/ 0x60, /* .##..... */ + /*0177:*/ 0x80, /* #....... */ + /*0178:*/ 0xa0, /* #.#..... */ + /*0179:*/ 0xa0, /* #.#..... */ + /*017a:*/ 0x60, /* .##..... */ +/* --- new character H (72) starting at offset 0x017b --- */ + /*017b:*/ 4, 4, 5, 0, 0, /* width and bbox (w,h,x,y) */ + /*0180:*/ 0xa0, /* #.#..... */ + /*0181:*/ 0xa0, /* #.#..... */ + /*0182:*/ 0xe0, /* ###..... */ + /*0183:*/ 0xa0, /* #.#..... */ + /*0184:*/ 0xa0, /* #.#..... */ +/* --- new character I (73) starting at offset 0x0185 --- */ + /*0185:*/ 4, 4, 5, 0, 0, /* width and bbox (w,h,x,y) */ + /*018a:*/ 0xe0, /* ###..... */ + /*018b:*/ 0x40, /* .#...... */ + /*018c:*/ 0x40, /* .#...... */ + /*018d:*/ 0x40, /* .#...... */ + /*018e:*/ 0xe0, /* ###..... */ +/* --- new character J (74) starting at offset 0x018f --- */ + /*018f:*/ 4, 4, 5, 0, 0, /* width and bbox (w,h,x,y) */ + /*0194:*/ 0x20, /* ..#..... */ + /*0195:*/ 0x20, /* ..#..... */ + /*0196:*/ 0x20, /* ..#..... */ + /*0197:*/ 0xa0, /* #.#..... */ + /*0198:*/ 0x40, /* .#...... */ +/* --- new character K (75) starting at offset 0x0199 --- */ + /*0199:*/ 4, 4, 5, 0, 0, /* width and bbox (w,h,x,y) */ + /*019e:*/ 0xa0, /* #.#..... */ + /*019f:*/ 0xa0, /* #.#..... */ + /*01a0:*/ 0xc0, /* ##...... */ + /*01a1:*/ 0xa0, /* #.#..... */ + /*01a2:*/ 0xa0, /* #.#..... */ +/* --- new character L (76) starting at offset 0x01a3 --- */ + /*01a3:*/ 4, 4, 5, 0, 0, /* width and bbox (w,h,x,y) */ + /*01a8:*/ 0x80, /* #....... */ + /*01a9:*/ 0x80, /* #....... */ + /*01aa:*/ 0x80, /* #....... */ + /*01ab:*/ 0x80, /* #....... */ + /*01ac:*/ 0xe0, /* ###..... */ +/* --- new character M (77) starting at offset 0x01ad --- */ + /*01ad:*/ 4, 4, 5, 0, 0, /* width and bbox (w,h,x,y) */ + /*01b2:*/ 0xa0, /* #.#..... */ + /*01b3:*/ 0xe0, /* ###..... */ + /*01b4:*/ 0xe0, /* ###..... */ + /*01b5:*/ 0xa0, /* #.#..... */ + /*01b6:*/ 0xa0, /* #.#..... */ +/* --- new character N (78) starting at offset 0x01b7 --- */ + /*01b7:*/ 4, 4, 5, 0, 0, /* width and bbox (w,h,x,y) */ + /*01bc:*/ 0x20, /* ..#..... */ + /*01bd:*/ 0xa0, /* #.#..... */ + /*01be:*/ 0xe0, /* ###..... */ + /*01bf:*/ 0xa0, /* #.#..... */ + /*01c0:*/ 0x80, /* #....... */ +/* --- new character O (79) starting at offset 0x01c1 --- */ + /*01c1:*/ 4, 4, 5, 0, 0, /* width and bbox (w,h,x,y) */ + /*01c6:*/ 0x40, /* .#...... */ + /*01c7:*/ 0xa0, /* #.#..... */ + /*01c8:*/ 0xa0, /* #.#..... */ + /*01c9:*/ 0xa0, /* #.#..... */ + /*01ca:*/ 0x40, /* .#...... */ +/* --- new character P (80) starting at offset 0x01cb --- */ + /*01cb:*/ 4, 4, 5, 0, 0, /* width and bbox (w,h,x,y) */ + /*01d0:*/ 0xc0, /* ##...... */ + /*01d1:*/ 0xa0, /* #.#..... */ + /*01d2:*/ 0xc0, /* ##...... */ + /*01d3:*/ 0x80, /* #....... */ + /*01d4:*/ 0x80, /* #....... */ +/* --- new character Q (81) starting at offset 0x01d5 --- */ + /*01d5:*/ 4, 4, 6, 0, -1, /* width and bbox (w,h,x,y) */ + /*01da:*/ 0x40, /* .#...... */ + /*01db:*/ 0xa0, /* #.#..... */ + /*01dc:*/ 0xa0, /* #.#..... */ + /*01dd:*/ 0xa0, /* #.#..... */ + /*01de:*/ 0x40, /* .#...... */ + /*01df:*/ 0x20, /* ..#..... */ +/* --- new character R (82) starting at offset 0x01e0 --- */ + /*01e0:*/ 4, 4, 5, 0, 0, /* width and bbox (w,h,x,y) */ + /*01e5:*/ 0xc0, /* ##...... */ + /*01e6:*/ 0xa0, /* #.#..... */ + /*01e7:*/ 0xc0, /* ##...... */ + /*01e8:*/ 0xa0, /* #.#..... */ + /*01e9:*/ 0xa0, /* #.#..... */ +/* --- new character S (83) starting at offset 0x01ea --- */ + /*01ea:*/ 4, 4, 5, 0, 0, /* width and bbox (w,h,x,y) */ + /*01ef:*/ 0x60, /* .##..... */ + /*01f0:*/ 0x80, /* #....... */ + /*01f1:*/ 0x40, /* .#...... */ + /*01f2:*/ 0x20, /* ..#..... */ + /*01f3:*/ 0xc0, /* ##...... */ +/* --- new character T (84) starting at offset 0x01f4 --- */ + /*01f4:*/ 4, 4, 5, 0, 0, /* width and bbox (w,h,x,y) */ + /*01f9:*/ 0xe0, /* ###..... */ + /*01fa:*/ 0x40, /* .#...... */ + /*01fb:*/ 0x40, /* .#...... */ + /*01fc:*/ 0x40, /* .#...... */ + /*01fd:*/ 0x40, /* .#...... */ +/* --- new character U (85) starting at offset 0x01fe --- */ + /*01fe:*/ 4, 4, 5, 0, 0, /* width and bbox (w,h,x,y) */ + /*0203:*/ 0xa0, /* #.#..... */ + /*0204:*/ 0xa0, /* #.#..... */ + /*0205:*/ 0xa0, /* #.#..... */ + /*0206:*/ 0xa0, /* #.#..... */ + /*0207:*/ 0xe0, /* ###..... */ +/* --- new character V (86) starting at offset 0x0208 --- */ + /*0208:*/ 4, 4, 5, 0, 0, /* width and bbox (w,h,x,y) */ + /*020d:*/ 0xa0, /* #.#..... */ + /*020e:*/ 0xa0, /* #.#..... */ + /*020f:*/ 0xa0, /* #.#..... */ + /*0210:*/ 0xe0, /* ###..... */ + /*0211:*/ 0x40, /* .#...... */ +/* --- new character W (87) starting at offset 0x0212 --- */ + /*0212:*/ 4, 4, 5, 0, 0, /* width and bbox (w,h,x,y) */ + /*0217:*/ 0xa0, /* #.#..... */ + /*0218:*/ 0xa0, /* #.#..... */ + /*0219:*/ 0xe0, /* ###..... */ + /*021a:*/ 0xe0, /* ###..... */ + /*021b:*/ 0xa0, /* #.#..... */ +/* --- new character X (88) starting at offset 0x021c --- */ + /*021c:*/ 4, 4, 5, 0, 0, /* width and bbox (w,h,x,y) */ + /*0221:*/ 0xa0, /* #.#..... */ + /*0222:*/ 0xa0, /* #.#..... */ + /*0223:*/ 0x40, /* .#...... */ + /*0224:*/ 0xa0, /* #.#..... */ + /*0225:*/ 0xa0, /* #.#..... */ +/* --- new character Y (89) starting at offset 0x0226 --- */ + /*0226:*/ 4, 4, 5, 0, 0, /* width and bbox (w,h,x,y) */ + /*022b:*/ 0xa0, /* #.#..... */ + /*022c:*/ 0xa0, /* #.#..... */ + /*022d:*/ 0x40, /* .#...... */ + /*022e:*/ 0x40, /* .#...... */ + /*022f:*/ 0x40, /* .#...... */ +/* --- new character Z (90) starting at offset 0x0230 --- */ + /*0230:*/ 4, 4, 5, 0, 0, /* width and bbox (w,h,x,y) */ + /*0235:*/ 0xe0, /* ###..... */ + /*0236:*/ 0x20, /* ..#..... */ + /*0237:*/ 0x40, /* .#...... */ + /*0238:*/ 0x80, /* #....... */ + /*0239:*/ 0xe0, /* ###..... */ +/* --- new character bracketleft (91) starting at offset 0x023a --- */ + /*023a:*/ 4, 4, 5, 0, 0, /* width and bbox (w,h,x,y) */ + /*023f:*/ 0x60, /* .##..... */ + /*0240:*/ 0x40, /* .#...... */ + /*0241:*/ 0x40, /* .#...... */ + /*0242:*/ 0x40, /* .#...... */ + /*0243:*/ 0x60, /* .##..... */ +/* --- new character backslash (92) starting at offset 0x0244 --- */ + /*0244:*/ 4, 4, 5, 0, 0, /* width and bbox (w,h,x,y) */ + /*0249:*/ 0x80, /* #....... */ + /*024a:*/ 0x80, /* #....... */ + /*024b:*/ 0x40, /* .#...... */ + /*024c:*/ 0x20, /* ..#..... */ + /*024d:*/ 0x20, /* ..#..... */ +/* --- new character bracketright (93) starting at offset 0x024e --- */ + /*024e:*/ 4, 4, 5, 0, 0, /* width and bbox (w,h,x,y) */ + /*0253:*/ 0xc0, /* ##...... */ + /*0254:*/ 0x40, /* .#...... */ + /*0255:*/ 0x40, /* .#...... */ + /*0256:*/ 0x40, /* .#...... */ + /*0257:*/ 0xc0, /* ##...... */ +/* --- new character asciicircum (94) starting at offset 0x0258 --- */ + /*0258:*/ 4, 4, 2, 0, 3, /* width and bbox (w,h,x,y) */ + /*025d:*/ 0x40, /* .#...... */ + /*025e:*/ 0xa0, /* #.#..... */ +/* --- new character underscore (95) starting at offset 0x025f --- */ + /*025f:*/ 4, 4, 1, 0, -1, /* width and bbox (w,h,x,y) */ + /*0264:*/ 0xe0, /* ###..... */ +/* --- new character grave (96) starting at offset 0x0265 --- */ + /*0265:*/ 4, 4, 2, 0, 3, /* width and bbox (w,h,x,y) */ + /*026a:*/ 0x40, /* .#...... */ + /*026b:*/ 0x20, /* ..#..... */ +/* --- new character a (97) starting at offset 0x026c --- */ + /*026c:*/ 4, 4, 4, 0, 0, /* width and bbox (w,h,x,y) */ + /*0271:*/ 0x60, /* .##..... */ + /*0272:*/ 0xa0, /* #.#..... */ + /*0273:*/ 0xa0, /* #.#..... */ + /*0274:*/ 0x60, /* .##..... */ +/* --- new character b (98) starting at offset 0x0275 --- */ + /*0275:*/ 4, 4, 5, 0, 0, /* width and bbox (w,h,x,y) */ + /*027a:*/ 0x80, /* #....... */ + /*027b:*/ 0xc0, /* ##...... */ + /*027c:*/ 0xa0, /* #.#..... */ + /*027d:*/ 0xa0, /* #.#..... */ + /*027e:*/ 0xc0, /* ##...... */ +/* --- new character c (99) starting at offset 0x027f --- */ + /*027f:*/ 4, 4, 4, 0, 0, /* width and bbox (w,h,x,y) */ + /*0284:*/ 0x60, /* .##..... */ + /*0285:*/ 0x80, /* #....... */ + /*0286:*/ 0x80, /* #....... */ + /*0287:*/ 0x60, /* .##..... */ +/* --- new character d (100) starting at offset 0x0288 --- */ + /*0288:*/ 4, 4, 5, 0, 0, /* width and bbox (w,h,x,y) */ + /*028d:*/ 0x20, /* ..#..... */ + /*028e:*/ 0x60, /* .##..... */ + /*028f:*/ 0xa0, /* #.#..... */ + /*0290:*/ 0xa0, /* #.#..... */ + /*0291:*/ 0x60, /* .##..... */ +/* --- new character e (101) starting at offset 0x0292 --- */ + /*0292:*/ 4, 4, 4, 0, 0, /* width and bbox (w,h,x,y) */ + /*0297:*/ 0x40, /* .#...... */ + /*0298:*/ 0xa0, /* #.#..... */ + /*0299:*/ 0xc0, /* ##...... */ + /*029a:*/ 0x60, /* .##..... */ +/* --- new character f (102) starting at offset 0x029b --- */ + /*029b:*/ 4, 4, 5, 0, 0, /* width and bbox (w,h,x,y) */ + /*02a0:*/ 0x20, /* ..#..... */ + /*02a1:*/ 0x40, /* .#...... */ + /*02a2:*/ 0xe0, /* ###..... */ + /*02a3:*/ 0x40, /* .#...... */ + /*02a4:*/ 0x40, /* .#...... */ +/* --- new character g (103) starting at offset 0x02a5 --- */ + /*02a5:*/ 4, 4, 5, 0, -1, /* width and bbox (w,h,x,y) */ + /*02aa:*/ 0x60, /* .##..... */ + /*02ab:*/ 0xa0, /* #.#..... */ + /*02ac:*/ 0x60, /* .##..... */ + /*02ad:*/ 0x20, /* ..#..... */ + /*02ae:*/ 0xc0, /* ##...... */ +/* --- new character h (104) starting at offset 0x02af --- */ + /*02af:*/ 4, 4, 5, 0, 0, /* width and bbox (w,h,x,y) */ + /*02b4:*/ 0x80, /* #....... */ + /*02b5:*/ 0xc0, /* ##...... */ + /*02b6:*/ 0xa0, /* #.#..... */ + /*02b7:*/ 0xa0, /* #.#..... */ + /*02b8:*/ 0xa0, /* #.#..... */ +/* --- new character i (105) starting at offset 0x02b9 --- */ + /*02b9:*/ 4, 4, 5, 0, 0, /* width and bbox (w,h,x,y) */ + /*02be:*/ 0x40, /* .#...... */ + /*02bf:*/ 0x00, /* ........ */ + /*02c0:*/ 0xc0, /* ##...... */ + /*02c1:*/ 0x40, /* .#...... */ + /*02c2:*/ 0xe0, /* ###..... */ +/* --- new character j (106) starting at offset 0x02c3 --- */ + /*02c3:*/ 4, 4, 6, 0, -1, /* width and bbox (w,h,x,y) */ + /*02c8:*/ 0x20, /* ..#..... */ + /*02c9:*/ 0x00, /* ........ */ + /*02ca:*/ 0x20, /* ..#..... */ + /*02cb:*/ 0x20, /* ..#..... */ + /*02cc:*/ 0x20, /* ..#..... */ + /*02cd:*/ 0xc0, /* ##...... */ +/* --- new character k (107) starting at offset 0x02ce --- */ + /*02ce:*/ 4, 4, 5, 0, 0, /* width and bbox (w,h,x,y) */ + /*02d3:*/ 0x80, /* #....... */ + /*02d4:*/ 0xa0, /* #.#..... */ + /*02d5:*/ 0xc0, /* ##...... */ + /*02d6:*/ 0xa0, /* #.#..... */ + /*02d7:*/ 0xa0, /* #.#..... */ +/* --- new character l (108) starting at offset 0x02d8 --- */ + /*02d8:*/ 4, 4, 5, 0, 0, /* width and bbox (w,h,x,y) */ + /*02dd:*/ 0xc0, /* ##...... */ + /*02de:*/ 0x40, /* .#...... */ + /*02df:*/ 0x40, /* .#...... */ + /*02e0:*/ 0x40, /* .#...... */ + /*02e1:*/ 0xe0, /* ###..... */ +/* --- new character m (109) starting at offset 0x02e2 --- */ + /*02e2:*/ 4, 4, 4, 0, 0, /* width and bbox (w,h,x,y) */ + /*02e7:*/ 0xa0, /* #.#..... */ + /*02e8:*/ 0xe0, /* ###..... */ + /*02e9:*/ 0xa0, /* #.#..... */ + /*02ea:*/ 0xa0, /* #.#..... */ +/* --- new character n (110) starting at offset 0x02eb --- */ + /*02eb:*/ 4, 4, 4, 0, 0, /* width and bbox (w,h,x,y) */ + /*02f0:*/ 0xc0, /* ##...... */ + /*02f1:*/ 0xa0, /* #.#..... */ + /*02f2:*/ 0xa0, /* #.#..... */ + /*02f3:*/ 0xa0, /* #.#..... */ +/* --- new character o (111) starting at offset 0x02f4 --- */ + /*02f4:*/ 4, 4, 4, 0, 0, /* width and bbox (w,h,x,y) */ + /*02f9:*/ 0x40, /* .#...... */ + /*02fa:*/ 0xa0, /* #.#..... */ + /*02fb:*/ 0xa0, /* #.#..... */ + /*02fc:*/ 0x40, /* .#...... */ +/* --- new character p (112) starting at offset 0x02fd --- */ + /*02fd:*/ 4, 4, 5, 0, -1, /* width and bbox (w,h,x,y) */ + /*0302:*/ 0xc0, /* ##...... */ + /*0303:*/ 0xa0, /* #.#..... */ + /*0304:*/ 0xc0, /* ##...... */ + /*0305:*/ 0x80, /* #....... */ + /*0306:*/ 0x80, /* #....... */ +/* --- new character q (113) starting at offset 0x0307 --- */ + /*0307:*/ 4, 4, 5, 0, -1, /* width and bbox (w,h,x,y) */ + /*030c:*/ 0x60, /* .##..... */ + /*030d:*/ 0xa0, /* #.#..... */ + /*030e:*/ 0xa0, /* #.#..... */ + /*030f:*/ 0x60, /* .##..... */ + /*0310:*/ 0x20, /* ..#..... */ +/* --- new character r (114) starting at offset 0x0311 --- */ + /*0311:*/ 4, 4, 4, 0, 0, /* width and bbox (w,h,x,y) */ + /*0316:*/ 0xa0, /* #.#..... */ + /*0317:*/ 0xc0, /* ##...... */ + /*0318:*/ 0x80, /* #....... */ + /*0319:*/ 0x80, /* #....... */ +/* --- new character s (115) starting at offset 0x031a --- */ + /*031a:*/ 4, 4, 4, 0, 0, /* width and bbox (w,h,x,y) */ + /*031f:*/ 0x60, /* .##..... */ + /*0320:*/ 0xc0, /* ##...... */ + /*0321:*/ 0x20, /* ..#..... */ + /*0322:*/ 0xc0, /* ##...... */ +/* --- new character t (116) starting at offset 0x0323 --- */ + /*0323:*/ 4, 4, 5, 0, 0, /* width and bbox (w,h,x,y) */ + /*0328:*/ 0x40, /* .#...... */ + /*0329:*/ 0xe0, /* ###..... */ + /*032a:*/ 0x40, /* .#...... */ + /*032b:*/ 0x40, /* .#...... */ + /*032c:*/ 0x20, /* ..#..... */ +/* --- new character u (117) starting at offset 0x032d --- */ + /*032d:*/ 4, 4, 4, 0, 0, /* width and bbox (w,h,x,y) */ + /*0332:*/ 0xa0, /* #.#..... */ + /*0333:*/ 0xa0, /* #.#..... */ + /*0334:*/ 0xa0, /* #.#..... */ + /*0335:*/ 0x60, /* .##..... */ +/* --- new character v (118) starting at offset 0x0336 --- */ + /*0336:*/ 4, 4, 4, 0, 0, /* width and bbox (w,h,x,y) */ + /*033b:*/ 0xa0, /* #.#..... */ + /*033c:*/ 0xa0, /* #.#..... */ + /*033d:*/ 0xa0, /* #.#..... */ + /*033e:*/ 0x40, /* .#...... */ +/* --- new character w (119) starting at offset 0x033f --- */ + /*033f:*/ 4, 4, 4, 0, 0, /* width and bbox (w,h,x,y) */ + /*0344:*/ 0xa0, /* #.#..... */ + /*0345:*/ 0xa0, /* #.#..... */ + /*0346:*/ 0xe0, /* ###..... */ + /*0347:*/ 0xa0, /* #.#..... */ +/* --- new character x (120) starting at offset 0x0348 --- */ + /*0348:*/ 4, 4, 4, 0, 0, /* width and bbox (w,h,x,y) */ + /*034d:*/ 0xa0, /* #.#..... */ + /*034e:*/ 0x40, /* .#...... */ + /*034f:*/ 0x40, /* .#...... */ + /*0350:*/ 0xa0, /* #.#..... */ +/* --- new character y (121) starting at offset 0x0351 --- */ + /*0351:*/ 4, 4, 5, 0, -1, /* width and bbox (w,h,x,y) */ + /*0356:*/ 0xa0, /* #.#..... */ + /*0357:*/ 0xa0, /* #.#..... */ + /*0358:*/ 0x60, /* .##..... */ + /*0359:*/ 0x20, /* ..#..... */ + /*035a:*/ 0xc0, /* ##...... */ +/* --- new character z (122) starting at offset 0x035b --- */ + /*035b:*/ 4, 4, 4, 0, 0, /* width and bbox (w,h,x,y) */ + /*0360:*/ 0xe0, /* ###..... */ + /*0361:*/ 0x20, /* ..#..... */ + /*0362:*/ 0x40, /* .#...... */ + /*0363:*/ 0xe0, /* ###..... */ +/* --- new character braceleft (123) starting at offset 0x0364 --- */ + /*0364:*/ 4, 4, 6, 0, -1, /* width and bbox (w,h,x,y) */ + /*0369:*/ 0x20, /* ..#..... */ + /*036a:*/ 0x40, /* .#...... */ + /*036b:*/ 0xc0, /* ##...... */ + /*036c:*/ 0x40, /* .#...... */ + /*036d:*/ 0x40, /* .#...... */ + /*036e:*/ 0x20, /* ..#..... */ +/* --- new character bar (124) starting at offset 0x036f --- */ + /*036f:*/ 4, 4, 5, 0, 0, /* width and bbox (w,h,x,y) */ + /*0374:*/ 0x40, /* .#...... */ + /*0375:*/ 0x40, /* .#...... */ + /*0376:*/ 0x40, /* .#...... */ + /*0377:*/ 0x40, /* .#...... */ + /*0378:*/ 0x40, /* .#...... */ +/* --- new character braceright (125) starting at offset 0x0379 --- */ + /*0379:*/ 4, 4, 6, 0, -1, /* width and bbox (w,h,x,y) */ + /*037e:*/ 0x80, /* #....... */ + /*037f:*/ 0x40, /* .#...... */ + /*0380:*/ 0x60, /* .##..... */ + /*0381:*/ 0x40, /* .#...... */ + /*0382:*/ 0x40, /* .#...... */ + /*0383:*/ 0x80, /* #....... */ +/* --- new character asciitilde (126) starting at offset 0x0384 --- */ + /*0384:*/ 4, 4, 2, 0, 3, /* width and bbox (w,h,x,y) */ + /*0389:*/ 0x50, /* .#.#.... */ + /*038a:*/ 0xa0, /* #.#..... */ +}; +static const uint16_t font_4x6_offsets[] = { +0x0000 /* space */, + 0x0006 /* exclam */, + 0x0010 /* quotedbl */, + 0x0017 /* numbersign */, + 0x0021 /* dollar */, + 0x002c /* percent */, + 0x0036 /* ampersand */, + 0x0040 /* quotesingle */, + 0x0047 /* parenleft */, + 0x0052 /* parenright */, + 0x005d /* asterisk */, + 0x0067 /* plus */, + 0x0071 /* comma */, + 0x0078 /* hyphen */, + 0x007e /* period */, + 0x0084 /* slash */, + 0x008e /* zero */, + 0x0098 /* one */, + 0x00a2 /* two */, + 0x00ac /* three */, + 0x00b6 /* four */, + 0x00c0 /* five */, + 0x00ca /* six */, + 0x00d4 /* seven */, + 0x00de /* eight */, + 0x00e8 /* nine */, + 0x00f2 /* colon */, + 0x00fb /* semicolon */, + 0x0105 /* less */, + 0x010f /* equal */, + 0x0117 /* greater */, + 0x0121 /* question */, + 0x012b /* at */, + 0x0135 /* A */, + 0x013f /* B */, + 0x0149 /* C */, + 0x0153 /* D */, + 0x015d /* E */, + 0x0167 /* F */, + 0x0171 /* G */, + 0x017b /* H */, + 0x0185 /* I */, + 0x018f /* J */, + 0x0199 /* K */, + 0x01a3 /* L */, + 0x01ad /* M */, + 0x01b7 /* N */, + 0x01c1 /* O */, + 0x01cb /* P */, + 0x01d5 /* Q */, + 0x01e0 /* R */, + 0x01ea /* S */, + 0x01f4 /* T */, + 0x01fe /* U */, + 0x0208 /* V */, + 0x0212 /* W */, + 0x021c /* X */, + 0x0226 /* Y */, + 0x0230 /* Z */, + 0x023a /* bracketleft */, + 0x0244 /* backslash */, + 0x024e /* bracketright */, + 0x0258 /* asciicircum */, + 0x025f /* underscore */, + 0x0265 /* grave */, + 0x026c /* a */, + 0x0275 /* b */, + 0x027f /* c */, + 0x0288 /* d */, + 0x0292 /* e */, + 0x029b /* f */, + 0x02a5 /* g */, + 0x02af /* h */, + 0x02b9 /* i */, + 0x02c3 /* j */, + 0x02ce /* k */, + 0x02d8 /* l */, + 0x02e2 /* m */, + 0x02eb /* n */, + 0x02f4 /* o */, + 0x02fd /* p */, + 0x0307 /* q */, + 0x0311 /* r */, + 0x031a /* s */, + 0x0323 /* t */, + 0x032d /* u */, + 0x0336 /* v */, + 0x033f /* w */, + 0x0348 /* x */, + 0x0351 /* y */, + 0x035b /* z */, + 0x0364 /* braceleft */, + 0x036f /* bar */, + 0x0379 /* braceright */, + 0x0384 /* asciitilde */, + 0xffff /* (no glyph) */ +}; +const struct fb_font font_4x6 = { + .height = 6, + .ascent = 5, + .firstchar = 32, /* space */ + .lastchar = 127, /* ? */ + .chardata = font_4x6_data, + .charoffs = font_4x6_offsets, +}; -- cgit v1.2.3