201 lines
12 KiB
C
201 lines
12 KiB
C
#include "../include/driver_framebuffer.h"
|
|
const uint8_t Exo2_Thin_18pt7bBitmaps[] = {
|
|
0x00, 0xFF, 0xCC, 0xB6, 0xD0, 0x08, 0x41, 0x08, 0x42, 0x08, 0x47, 0xFE,
|
|
0x21, 0x04, 0x20, 0x84, 0x21, 0x1F, 0xF8, 0x84, 0x10, 0x82, 0x10, 0x42,
|
|
0x00, 0x04, 0x02, 0x01, 0x0F, 0xE8, 0x84, 0x42, 0x21, 0x10, 0x88, 0x3C,
|
|
0x03, 0xC1, 0x10, 0x88, 0x44, 0x22, 0x11, 0x7F, 0x04, 0x02, 0x00, 0x78,
|
|
0x09, 0x08, 0x22, 0x10, 0x84, 0x21, 0x08, 0x44, 0x10, 0x93, 0xA1, 0x28,
|
|
0xBC, 0xA1, 0x02, 0x42, 0x04, 0x84, 0x11, 0x08, 0x42, 0x10, 0x82, 0x22,
|
|
0x03, 0x80, 0x7F, 0x84, 0x00, 0x20, 0x01, 0x01, 0x08, 0x08, 0x40, 0x41,
|
|
0xFF, 0xD0, 0x10, 0x80, 0x84, 0x04, 0x20, 0x21, 0x01, 0x08, 0x18, 0x3F,
|
|
0x3C, 0xF0, 0x08, 0x88, 0x84, 0x22, 0x10, 0x84, 0x21, 0x08, 0x21, 0x08,
|
|
0x21, 0x82, 0x82, 0x08, 0x21, 0x08, 0x21, 0x08, 0x42, 0x10, 0x84, 0x42,
|
|
0x21, 0x30, 0x10, 0x23, 0xF8, 0x82, 0x88, 0x80, 0x08, 0x04, 0x02, 0x01,
|
|
0x0F, 0xF8, 0x40, 0x20, 0x10, 0xF0, 0xFC, 0xC0, 0x01, 0x01, 0x02, 0x02,
|
|
0x04, 0x08, 0x08, 0x10, 0x10, 0x20, 0x20, 0x40, 0x40, 0x80, 0x80, 0x7C,
|
|
0x82, 0x81, 0x81, 0x81, 0x81, 0x81, 0x81, 0x81, 0x81, 0x81, 0x81, 0x82,
|
|
0x7C, 0x3D, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0xFE, 0x00, 0x80, 0x20,
|
|
0x20, 0x10, 0x08, 0x08, 0x08, 0x08, 0x04, 0x04, 0x04, 0x04, 0x07, 0xFC,
|
|
0xFE, 0x01, 0x01, 0x01, 0x01, 0x01, 0x3E, 0x01, 0x01, 0x01, 0x01, 0x01,
|
|
0x01, 0xFE, 0x08, 0x02, 0x01, 0x00, 0x84, 0x21, 0x10, 0x44, 0x12, 0x04,
|
|
0x81, 0x3F, 0xF0, 0x10, 0x04, 0x01, 0x00, 0x40, 0x7F, 0x40, 0x40, 0x40,
|
|
0x40, 0x7C, 0x02, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0xFE, 0x3E, 0x40,
|
|
0x80, 0x80, 0x80, 0xBC, 0xC2, 0x81, 0x81, 0x81, 0x81, 0x81, 0x81, 0x7E,
|
|
0xFF, 0x01, 0x01, 0x02, 0x02, 0x02, 0x04, 0x04, 0x04, 0x08, 0x08, 0x08,
|
|
0x10, 0x10, 0x7E, 0x40, 0xA0, 0x50, 0x28, 0x14, 0x09, 0xF9, 0x02, 0x80,
|
|
0xC0, 0x60, 0x30, 0x18, 0x13, 0xF0, 0x3E, 0x20, 0xA0, 0x30, 0x18, 0x0C,
|
|
0x06, 0x02, 0x87, 0x3C, 0x80, 0x40, 0x20, 0x20, 0x13, 0xF0, 0xC1, 0x80,
|
|
0xC1, 0xE0, 0x01, 0x06, 0x18, 0x60, 0xC0, 0x38, 0x06, 0x01, 0xFF, 0x00,
|
|
0x00, 0x00, 0xFF, 0x80, 0x60, 0x18, 0x06, 0x03, 0x1C, 0x60, 0x80, 0xFE,
|
|
0x01, 0x01, 0x01, 0x01, 0x02, 0x04, 0x08, 0x08, 0x10, 0x00, 0x00, 0x10,
|
|
0x10, 0x7F, 0xA0, 0x18, 0x06, 0x01, 0x8F, 0xE4, 0x1A, 0x06, 0x81, 0x91,
|
|
0xE3, 0x98, 0x02, 0x00, 0x7F, 0xC0, 0x06, 0x00, 0x60, 0x09, 0x00, 0x90,
|
|
0x08, 0x81, 0x08, 0x10, 0x82, 0x04, 0x3F, 0xC2, 0x04, 0x40, 0x24, 0x02,
|
|
0x40, 0x28, 0x01, 0xFE, 0x40, 0xA0, 0x30, 0x18, 0x0C, 0x0B, 0xF9, 0x02,
|
|
0x80, 0xC0, 0x60, 0x30, 0x18, 0x0F, 0xF8, 0x3F, 0x40, 0x80, 0x80, 0x80,
|
|
0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x40, 0x3F, 0xFF, 0x20, 0x28,
|
|
0x0A, 0x01, 0x80, 0x60, 0x18, 0x06, 0x01, 0x80, 0x60, 0x18, 0x06, 0x02,
|
|
0x80, 0xBF, 0xC0, 0x7F, 0x80, 0x80, 0x80, 0x80, 0x80, 0xFE, 0x80, 0x80,
|
|
0x80, 0x80, 0x80, 0x80, 0x7F, 0x7F, 0x80, 0x80, 0x80, 0x80, 0x80, 0xFE,
|
|
0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x3F, 0xA0, 0x20, 0x10, 0x08,
|
|
0x04, 0x02, 0x03, 0x01, 0x80, 0xC0, 0x60, 0x30, 0x14, 0x19, 0xF4, 0x80,
|
|
0xC0, 0x60, 0x30, 0x18, 0x0C, 0x07, 0xFF, 0x01, 0x80, 0xC0, 0x60, 0x30,
|
|
0x18, 0x0C, 0x04, 0xFF, 0xFC, 0x24, 0x92, 0x49, 0x24, 0x93, 0xC0, 0x81,
|
|
0x41, 0x20, 0x90, 0x88, 0x84, 0x83, 0x81, 0x20, 0x88, 0x42, 0x21, 0x10,
|
|
0x48, 0x14, 0x0C, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80,
|
|
0x80, 0x80, 0x80, 0x80, 0x7F, 0xC0, 0x1E, 0x00, 0xE8, 0x0B, 0x40, 0x59,
|
|
0x04, 0xC8, 0x26, 0x41, 0x31, 0x11, 0x88, 0x8C, 0x44, 0x61, 0x43, 0x0A,
|
|
0x18, 0x20, 0xC0, 0x04, 0xC0, 0x70, 0x1A, 0x06, 0x81, 0x90, 0x62, 0x18,
|
|
0x86, 0x11, 0x84, 0x60, 0x98, 0x26, 0x05, 0x81, 0x60, 0x30, 0x3F, 0x10,
|
|
0x28, 0x0A, 0x01, 0x80, 0x60, 0x18, 0x06, 0x01, 0x80, 0x60, 0x18, 0x06,
|
|
0x02, 0x40, 0x8F, 0xC0, 0xFE, 0x81, 0x81, 0x81, 0x81, 0x81, 0x81, 0xFE,
|
|
0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x3F, 0x10, 0x28, 0x0A, 0x01, 0x80,
|
|
0x60, 0x18, 0x06, 0x01, 0x80, 0x60, 0x18, 0x06, 0x02, 0x40, 0x8F, 0xC0,
|
|
0x00, 0x30, 0x03, 0x00, 0xFE, 0x40, 0xA0, 0x30, 0x18, 0x0C, 0x06, 0x05,
|
|
0xFC, 0x82, 0x40, 0xA0, 0x50, 0x28, 0x0C, 0x04, 0x7F, 0x40, 0x20, 0x10,
|
|
0x08, 0x04, 0x01, 0xE0, 0x0E, 0x00, 0x80, 0x40, 0x20, 0x10, 0x0B, 0xF8,
|
|
0xFF, 0xC2, 0x00, 0x80, 0x20, 0x08, 0x02, 0x00, 0x80, 0x20, 0x08, 0x02,
|
|
0x00, 0x80, 0x20, 0x08, 0x02, 0x00, 0x80, 0xC0, 0x60, 0x30, 0x18, 0x0C,
|
|
0x06, 0x03, 0x01, 0x80, 0xC0, 0x60, 0x30, 0x14, 0x09, 0xF8, 0x80, 0x60,
|
|
0x18, 0x06, 0x02, 0x40, 0x90, 0x24, 0x10, 0x84, 0x21, 0x04, 0x81, 0x20,
|
|
0x48, 0x0C, 0x03, 0x00, 0x81, 0x80, 0xC0, 0xA0, 0x60, 0x50, 0x30, 0x28,
|
|
0x24, 0x24, 0x12, 0x11, 0x09, 0x08, 0x88, 0x84, 0x44, 0x24, 0x22, 0x12,
|
|
0x09, 0x09, 0x05, 0x04, 0x82, 0x81, 0x81, 0x40, 0xC0, 0x40, 0x80, 0x50,
|
|
0x24, 0x10, 0x84, 0x12, 0x04, 0x80, 0xC0, 0x50, 0x12, 0x08, 0x42, 0x11,
|
|
0x02, 0x80, 0xA0, 0x10, 0x80, 0x50, 0x12, 0x08, 0x82, 0x11, 0x04, 0x40,
|
|
0xA0, 0x28, 0x04, 0x01, 0x00, 0x40, 0x10, 0x04, 0x01, 0x00, 0xFF, 0x80,
|
|
0x40, 0x40, 0x40, 0x20, 0x20, 0x20, 0x10, 0x10, 0x10, 0x08, 0x08, 0x04,
|
|
0x07, 0xFC, 0xF2, 0x49, 0x24, 0x92, 0x49, 0x24, 0x92, 0x70, 0x80, 0x80,
|
|
0x40, 0x40, 0x20, 0x20, 0x10, 0x10, 0x08, 0x08, 0x04, 0x02, 0x02, 0x01,
|
|
0x01, 0xE4, 0x92, 0x49, 0x24, 0x92, 0x49, 0x24, 0xF0, 0x31, 0x24, 0xA1,
|
|
0xFF, 0x80, 0x88, 0x80, 0x7E, 0x01, 0x01, 0x01, 0x7F, 0x81, 0x81, 0x81,
|
|
0x83, 0x7D, 0x80, 0x80, 0x80, 0x80, 0xBC, 0xC2, 0x81, 0x81, 0x81, 0x81,
|
|
0x81, 0x81, 0x82, 0xFC, 0x3E, 0x40, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80,
|
|
0x40, 0x3F, 0x01, 0x01, 0x01, 0x01, 0x3F, 0x41, 0x81, 0x81, 0x81, 0x81,
|
|
0x81, 0x81, 0x43, 0x3D, 0x3E, 0x41, 0x81, 0x81, 0xFE, 0x80, 0x80, 0x80,
|
|
0x40, 0x3F, 0x3D, 0x04, 0x10, 0xF9, 0x04, 0x10, 0x41, 0x04, 0x10, 0x41,
|
|
0x00, 0x3F, 0xA0, 0xA0, 0x50, 0x24, 0x13, 0xF1, 0x00, 0x80, 0x7E, 0x40,
|
|
0xA0, 0x30, 0x18, 0x0B, 0xF8, 0x80, 0x80, 0x80, 0x80, 0xBE, 0xC1, 0x81,
|
|
0x81, 0x81, 0x81, 0x81, 0x81, 0x81, 0x81, 0xCF, 0xFC, 0x50, 0x55, 0x55,
|
|
0x55, 0xA0, 0x81, 0x02, 0x04, 0x08, 0x51, 0x24, 0x48, 0xE1, 0x42, 0x44,
|
|
0x48, 0x50, 0x40, 0x92, 0x49, 0x24, 0x92, 0x49, 0xC0, 0xBC, 0x7B, 0x0E,
|
|
0x18, 0x20, 0x60, 0x81, 0x82, 0x06, 0x08, 0x18, 0x20, 0x60, 0x81, 0x82,
|
|
0x06, 0x08, 0x10, 0xBE, 0xC1, 0x81, 0x81, 0x81, 0x81, 0x81, 0x81, 0x81,
|
|
0x81, 0x3E, 0x20, 0xA0, 0x30, 0x18, 0x0C, 0x06, 0x03, 0x01, 0x41, 0x1F,
|
|
0x00, 0xBC, 0xC2, 0x81, 0x81, 0x81, 0x81, 0x81, 0x81, 0x82, 0xFC, 0x80,
|
|
0x80, 0x80, 0x80, 0x3F, 0x41, 0x81, 0x81, 0x81, 0x81, 0x81, 0x81, 0x43,
|
|
0x3D, 0x01, 0x01, 0x01, 0x01, 0xBE, 0x21, 0x08, 0x42, 0x10, 0x84, 0x00,
|
|
0x7F, 0x80, 0x80, 0x80, 0x70, 0x0E, 0x01, 0x01, 0x01, 0xFE, 0x42, 0x11,
|
|
0xF4, 0x21, 0x08, 0x42, 0x10, 0x83, 0x80, 0x83, 0x06, 0x0C, 0x18, 0x30,
|
|
0x60, 0xC1, 0x86, 0xF4, 0x80, 0xC0, 0xA0, 0x48, 0x44, 0x21, 0x10, 0x90,
|
|
0x48, 0x18, 0x0C, 0x00, 0x81, 0x03, 0x06, 0x0A, 0x0A, 0x12, 0x24, 0x24,
|
|
0x48, 0x88, 0x89, 0x0A, 0x12, 0x14, 0x28, 0x28, 0x30, 0x20, 0x40, 0x81,
|
|
0x42, 0x24, 0x24, 0x18, 0x14, 0x24, 0x42, 0x41, 0x81, 0x80, 0xC0, 0xA0,
|
|
0x48, 0x44, 0x21, 0x10, 0x90, 0x48, 0x18, 0x0C, 0x02, 0x02, 0x01, 0x03,
|
|
0x00, 0xFF, 0x02, 0x04, 0x04, 0x08, 0x10, 0x20, 0x40, 0x40, 0xFF, 0x34,
|
|
0x44, 0x44, 0x44, 0x48, 0x44, 0x44, 0x44, 0x44, 0x43, 0xFF, 0xFF, 0xF0,
|
|
0xC2, 0x22, 0x22, 0x22, 0x21, 0x22, 0x22, 0x22, 0x22, 0x48, 0xE3, 0x38 };
|
|
|
|
const GFXglyph Exo2_Thin_18pt7bGlyphs[] = {
|
|
{ 0, 1, 1, 5, 0, 0 }, // 0x20 ' '
|
|
{ 1, 1, 14, 5, 2, -13 }, // 0x21 '!'
|
|
{ 3, 3, 4, 7, 2, -13 }, // 0x22 '"'
|
|
{ 5, 11, 14, 13, 1, -13 }, // 0x23 '#'
|
|
{ 25, 9, 19, 11, 1, -16 }, // 0x24 '$'
|
|
{ 47, 15, 14, 18, 1, -13 }, // 0x25 '%'
|
|
{ 74, 13, 14, 16, 2, -13 }, // 0x26 '&'
|
|
{ 97, 1, 4, 4, 2, -13 }, // 0x27 '''
|
|
{ 98, 5, 19, 7, 1, -15 }, // 0x28 '('
|
|
{ 110, 5, 19, 7, 1, -15 }, // 0x29 ')'
|
|
{ 122, 7, 6, 9, 1, -13 }, // 0x2A '*'
|
|
{ 128, 9, 8, 11, 1, -9 }, // 0x2B '+'
|
|
{ 137, 1, 4, 4, 2, -1 }, // 0x2C ','
|
|
{ 138, 6, 1, 10, 2, -5 }, // 0x2D '-'
|
|
{ 139, 1, 2, 4, 2, -1 }, // 0x2E '.'
|
|
{ 140, 8, 15, 10, 1, -13 }, // 0x2F '/'
|
|
{ 155, 8, 14, 12, 2, -13 }, // 0x30 '0'
|
|
{ 169, 4, 14, 8, 1, -13 }, // 0x31 '1'
|
|
{ 176, 9, 14, 11, 1, -13 }, // 0x32 '2'
|
|
{ 192, 8, 14, 11, 1, -13 }, // 0x33 '3'
|
|
{ 206, 10, 14, 12, 1, -13 }, // 0x34 '4'
|
|
{ 224, 8, 14, 11, 1, -13 }, // 0x35 '5'
|
|
{ 238, 8, 14, 11, 2, -13 }, // 0x36 '6'
|
|
{ 252, 8, 14, 10, 1, -13 }, // 0x37 '7'
|
|
{ 266, 9, 14, 12, 2, -13 }, // 0x38 '8'
|
|
{ 282, 9, 14, 11, 1, -13 }, // 0x39 '9'
|
|
{ 298, 1, 9, 4, 2, -8 }, // 0x3A ':'
|
|
{ 300, 1, 11, 4, 2, -8 }, // 0x3B ';'
|
|
{ 302, 8, 8, 11, 1, -9 }, // 0x3C '<'
|
|
{ 310, 8, 5, 12, 2, -7 }, // 0x3D '='
|
|
{ 315, 8, 8, 11, 2, -9 }, // 0x3E '>'
|
|
{ 323, 8, 14, 10, 1, -13 }, // 0x3F '?'
|
|
{ 337, 10, 13, 14, 2, -11 }, // 0x40 '@'
|
|
{ 354, 12, 14, 12, 0, -13 }, // 0x41 'A'
|
|
{ 375, 9, 14, 12, 2, -13 }, // 0x42 'B'
|
|
{ 391, 8, 14, 11, 2, -13 }, // 0x43 'C'
|
|
{ 405, 10, 14, 13, 2, -13 }, // 0x44 'D'
|
|
{ 423, 8, 14, 11, 2, -13 }, // 0x45 'E'
|
|
{ 437, 8, 14, 11, 2, -13 }, // 0x46 'F'
|
|
{ 451, 9, 14, 12, 2, -13 }, // 0x47 'G'
|
|
{ 467, 9, 14, 13, 2, -13 }, // 0x48 'H'
|
|
{ 483, 1, 14, 5, 2, -13 }, // 0x49 'I'
|
|
{ 485, 3, 14, 6, 1, -13 }, // 0x4A 'J'
|
|
{ 491, 9, 14, 11, 2, -13 }, // 0x4B 'K'
|
|
{ 507, 8, 14, 10, 2, -13 }, // 0x4C 'L'
|
|
{ 521, 13, 14, 17, 2, -13 }, // 0x4D 'M'
|
|
{ 544, 10, 14, 14, 2, -13 }, // 0x4E 'N'
|
|
{ 562, 10, 14, 13, 2, -13 }, // 0x4F 'O'
|
|
{ 580, 8, 14, 12, 2, -13 }, // 0x50 'P'
|
|
{ 594, 10, 17, 13, 2, -13 }, // 0x51 'Q'
|
|
{ 616, 9, 14, 12, 2, -13 }, // 0x52 'R'
|
|
{ 632, 9, 14, 11, 1, -13 }, // 0x53 'S'
|
|
{ 648, 10, 14, 11, 1, -13 }, // 0x54 'T'
|
|
{ 666, 9, 14, 13, 2, -13 }, // 0x55 'U'
|
|
{ 682, 10, 14, 12, 1, -13 }, // 0x56 'V'
|
|
{ 700, 17, 14, 19, 1, -13 }, // 0x57 'W'
|
|
{ 730, 10, 14, 12, 1, -13 }, // 0x58 'X'
|
|
{ 748, 10, 14, 11, 0, -13 }, // 0x59 'Y'
|
|
{ 766, 9, 14, 11, 1, -13 }, // 0x5A 'Z'
|
|
{ 782, 3, 20, 6, 2, -15 }, // 0x5B '['
|
|
{ 790, 8, 15, 10, 1, -13 }, // 0x5C '\'
|
|
{ 805, 3, 20, 6, 1, -15 }, // 0x5D ']'
|
|
{ 813, 6, 4, 8, 1, -11 }, // 0x5E '^'
|
|
{ 816, 9, 1, 9, 0, 1 }, // 0x5F '_'
|
|
{ 818, 3, 3, 6, 1, -13 }, // 0x60 '`'
|
|
{ 820, 8, 10, 11, 1, -9 }, // 0x61 'a'
|
|
{ 830, 8, 14, 11, 2, -13 }, // 0x62 'b'
|
|
{ 844, 8, 10, 10, 1, -9 }, // 0x63 'c'
|
|
{ 854, 8, 14, 11, 1, -13 }, // 0x64 'd'
|
|
{ 868, 8, 10, 11, 1, -9 }, // 0x65 'e'
|
|
{ 878, 6, 14, 7, 1, -13 }, // 0x66 'f'
|
|
{ 889, 9, 14, 11, 1, -9 }, // 0x67 'g'
|
|
{ 905, 8, 14, 11, 2, -13 }, // 0x68 'h'
|
|
{ 919, 1, 14, 4, 2, -13 }, // 0x69 'i'
|
|
{ 921, 2, 18, 4, 1, -13 }, // 0x6A 'j'
|
|
{ 926, 7, 14, 9, 2, -13 }, // 0x6B 'k'
|
|
{ 939, 3, 14, 5, 2, -13 }, // 0x6C 'l'
|
|
{ 945, 14, 10, 18, 2, -9 }, // 0x6D 'm'
|
|
{ 963, 8, 10, 11, 2, -9 }, // 0x6E 'n'
|
|
{ 973, 9, 10, 11, 1, -9 }, // 0x6F 'o'
|
|
{ 985, 8, 14, 11, 2, -9 }, // 0x70 'p'
|
|
{ 999, 8, 14, 11, 1, -9 }, // 0x71 'q'
|
|
{ 1013, 5, 10, 8, 2, -9 }, // 0x72 'r'
|
|
{ 1020, 8, 10, 10, 1, -9 }, // 0x73 's'
|
|
{ 1030, 5, 13, 7, 1, -12 }, // 0x74 't'
|
|
{ 1039, 7, 10, 11, 2, -9 }, // 0x75 'u'
|
|
{ 1048, 9, 10, 10, 1, -9 }, // 0x76 'v'
|
|
{ 1060, 15, 10, 16, 1, -9 }, // 0x77 'w'
|
|
{ 1079, 8, 10, 10, 1, -9 }, // 0x78 'x'
|
|
{ 1089, 9, 14, 10, 1, -9 }, // 0x79 'y'
|
|
{ 1105, 8, 10, 10, 1, -9 }, // 0x7A 'z'
|
|
{ 1115, 4, 20, 6, 1, -15 }, // 0x7B '{'
|
|
{ 1125, 1, 20, 5, 2, -16 }, // 0x7C '|'
|
|
{ 1128, 4, 20, 6, 1, -15 }, // 0x7D '}'
|
|
{ 1138, 7, 2, 11, 2, -6 } }; // 0x7E '~'
|
|
|
|
const GFXfont Exo2_Thin_18pt7b = {
|
|
(uint8_t *)Exo2_Thin_18pt7bBitmaps,
|
|
(GFXglyph *)Exo2_Thin_18pt7bGlyphs,
|
|
0x20, 0x7E, 18 };//B
|
|
|
|
// Approx. 1812 bytes
|