diff --git a/src/drivers/graphics/font.c b/src/drivers/graphics/font.c index f5ac0ff..1d15359 100644 --- a/src/drivers/graphics/font.c +++ b/src/drivers/graphics/font.c @@ -24,6 +24,137 @@ #include "drivers/graphics/font.h" +uint8_t font8x16_monocle[128][16] = { + { 0x00, 0x00, 0xe0, 0xa0, 0xaa, 0xa4, 0xea, 0x00, 0xee, 0xaa, 0xaa, 0xaa, 0xee, 0x00, 0x00, 0x00}, // 0x00 + { 0x00, 0x00, 0xe0, 0xa0, 0xaa, 0xa4, 0xea, 0x00, 0xe4, 0xac, 0xa4, 0xa4, 0xee, 0x00, 0x00, 0x00}, // 0x01 + { 0x00, 0x00, 0xe0, 0xa0, 0xaa, 0xa4, 0xea, 0x00, 0xee, 0xa2, 0xae, 0xa8, 0xee, 0x00, 0x00, 0x00}, // 0x02 + { 0x00, 0x00, 0xe0, 0xa0, 0xaa, 0xa4, 0xea, 0x00, 0xee, 0xa2, 0xae, 0xa2, 0xee, 0x00, 0x00, 0x00}, // 0x03 + { 0x00, 0x00, 0xe0, 0xa0, 0xaa, 0xa4, 0xea, 0x00, 0xe8, 0xaa, 0xae, 0xa2, 0xe2, 0x00, 0x00, 0x00}, // 0x04 + { 0x00, 0x00, 0xe0, 0xa0, 0xaa, 0xa4, 0xea, 0x00, 0xee, 0xa8, 0xae, 0xa2, 0xee, 0x00, 0x00, 0x00}, // 0x05 + { 0x00, 0x00, 0xe0, 0xa0, 0xaa, 0xa4, 0xea, 0x00, 0xee, 0xa8, 0xae, 0xaa, 0xee, 0x00, 0x00, 0x00}, // 0x06 + { 0x00, 0x00, 0xe0, 0xa0, 0xaa, 0xa4, 0xea, 0x00, 0xee, 0xa2, 0xa6, 0xa2, 0xe2, 0x00, 0x00, 0x00}, // 0x07 + { 0x00, 0x00, 0xe0, 0xa0, 0xaa, 0xa4, 0xea, 0x00, 0xee, 0xaa, 0xae, 0xaa, 0xee, 0x00, 0x00, 0x00}, // 0x08 + { 0x00, 0x00, 0xe0, 0xa0, 0xaa, 0xa4, 0xea, 0x00, 0xee, 0xaa, 0xae, 0xa2, 0xee, 0x00, 0x00, 0x00}, // 0x09 + { 0x00, 0x00, 0xe0, 0xa0, 0xaa, 0xa4, 0xea, 0x00, 0xee, 0xaa, 0xae, 0xaa, 0xea, 0x00, 0x00, 0x00}, // 0x0a + { 0x00, 0x00, 0xe0, 0xa0, 0xaa, 0xa4, 0xea, 0x00, 0xec, 0xaa, 0xae, 0xaa, 0xec, 0x00, 0x00, 0x00}, // 0x0b + { 0x00, 0x00, 0xe0, 0xa0, 0xaa, 0xa4, 0xea, 0x00, 0xe4, 0xaa, 0xa8, 0xaa, 0xe4, 0x00, 0x00, 0x00}, // 0x0c + { 0x00, 0x00, 0xe0, 0xa0, 0xaa, 0xa4, 0xea, 0x00, 0xec, 0xaa, 0xaa, 0xaa, 0xec, 0x00, 0x00, 0x00}, // 0x0d + { 0x00, 0x00, 0xe0, 0xa0, 0xaa, 0xa4, 0xea, 0x00, 0xee, 0xa8, 0xac, 0xa8, 0xee, 0x00, 0x00, 0x00}, // 0x0e + { 0x00, 0x00, 0xe0, 0xa0, 0xaa, 0xa4, 0xea, 0x00, 0xee, 0xa8, 0xac, 0xa8, 0xe8, 0x00, 0x00, 0x00}, // 0x0f + { 0x00, 0x00, 0xe0, 0xa0, 0xaa, 0xa4, 0xea, 0x00, 0x4e, 0xca, 0x4a, 0x4a, 0xee, 0x00, 0x00, 0x00}, // 0x10 + { 0x00, 0x00, 0xe0, 0xa0, 0xaa, 0xa4, 0xea, 0x00, 0x44, 0xcc, 0x44, 0x44, 0xee, 0x00, 0x00, 0x00}, // 0x11 + { 0x00, 0x00, 0xe0, 0xa0, 0xaa, 0xa4, 0xea, 0x00, 0x4e, 0xc2, 0x4e, 0x48, 0xee, 0x00, 0x00, 0x00}, // 0x12 + { 0x00, 0x00, 0xe0, 0xa0, 0xaa, 0xa4, 0xea, 0x00, 0x4e, 0xc2, 0x4e, 0x42, 0xee, 0x00, 0x00, 0x00}, // 0x13 + { 0x00, 0x00, 0xe0, 0xa0, 0xaa, 0xa4, 0xea, 0x00, 0x48, 0xca, 0x4e, 0x42, 0xe2, 0x00, 0x00, 0x00}, // 0x14 + { 0x00, 0x00, 0xe0, 0xa0, 0xaa, 0xa4, 0xea, 0x00, 0x4e, 0xc8, 0x4e, 0x42, 0xee, 0x00, 0x00, 0x00}, // 0x15 + { 0x00, 0x00, 0xe0, 0xa0, 0xaa, 0xa4, 0xea, 0x00, 0x4e, 0xc8, 0x4e, 0x4a, 0xee, 0x00, 0x00, 0x00}, // 0x16 + { 0x00, 0x00, 0xe0, 0xa0, 0xaa, 0xa4, 0xea, 0x00, 0x4e, 0xc2, 0x46, 0x42, 0xe2, 0x00, 0x00, 0x00}, // 0x17 + { 0x00, 0x00, 0xe0, 0xa0, 0xaa, 0xa4, 0xea, 0x00, 0x4e, 0xca, 0x4e, 0x4a, 0xee, 0x00, 0x00, 0x00}, // 0x18 + { 0x00, 0x00, 0xe0, 0xa0, 0xaa, 0xa4, 0xea, 0x00, 0x4e, 0xca, 0x4e, 0x42, 0xee, 0x00, 0x00, 0x00}, // 0x19 + { 0x00, 0x00, 0xe0, 0xa0, 0xaa, 0xa4, 0xea, 0x00, 0x4e, 0xca, 0x4e, 0x4a, 0xea, 0x00, 0x00, 0x00}, // 0x1a + { 0x00, 0x00, 0xe0, 0xa0, 0xaa, 0xa4, 0xea, 0x00, 0x4c, 0xca, 0x4e, 0x4a, 0xec, 0x00, 0x00, 0x00}, // 0x1b + { 0x00, 0x00, 0xe0, 0xa0, 0xaa, 0xa4, 0xea, 0x00, 0x44, 0xca, 0x48, 0x4a, 0xe4, 0x00, 0x00, 0x00}, // 0x1c + { 0x00, 0x00, 0xe0, 0xa0, 0xaa, 0xa4, 0xea, 0x00, 0x4c, 0xca, 0x4a, 0x4a, 0xec, 0x00, 0x00, 0x00}, // 0x1d + { 0x00, 0x00, 0xe0, 0xa0, 0xaa, 0xa4, 0xea, 0x00, 0x4e, 0xc8, 0x4c, 0x48, 0xee, 0x00, 0x00, 0x00}, // 0x1e + { 0x00, 0x00, 0xe0, 0xa0, 0xaa, 0xa4, 0xea, 0x00, 0x4e, 0xc8, 0x4c, 0x48, 0xe8, 0x00, 0x00, 0x00}, // 0x1f + { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}, // 0x20 + { 0x00, 0x18, 0x3c, 0x3c, 0x3c, 0x3c, 0x3c, 0x3c, 0x18, 0x18, 0x18, 0x00, 0x18, 0x18, 0x00, 0x00}, // ! + { 0x00, 0x6c, 0x6c, 0x6c, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}, // " + { 0x00, 0x6c, 0x6c, 0x6c, 0xfe, 0xfe, 0x6c, 0x6c, 0xfe, 0xfe, 0x6c, 0x6c, 0x6c, 0x6c, 0x00, 0x00}, // # + { 0x18, 0x18, 0x7e, 0xff, 0xd8, 0xd8, 0xfe, 0x7f, 0x1b, 0x1b, 0x1b, 0xff, 0x7c, 0x18, 0x18, 0x00}, // $ + { 0x00, 0x00, 0x06, 0x0e, 0x0c, 0xdc, 0xd8, 0x18, 0x38, 0x30, 0x36, 0x76, 0x60, 0x60, 0x00, 0x00}, // % + { 0x00, 0x00, 0x78, 0xfc, 0xcc, 0xcc, 0xfc, 0x70, 0xf8, 0xdd, 0xcf, 0xc7, 0xfc, 0x7b, 0x00, 0x00}, // & + { 0x00, 0x00, 0x18, 0x18, 0x18, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}, // ' + { 0x00, 0x00, 0x18, 0x3c, 0x30, 0x30, 0x30, 0x30, 0x30, 0x30, 0x30, 0x30, 0x3c, 0x18, 0x00, 0x00}, // ( + { 0x00, 0x00, 0x18, 0x3c, 0x0c, 0x0c, 0x0c, 0x0c, 0x0c, 0x0c, 0x0c, 0x0c, 0x3c, 0x18, 0x00, 0x00}, // ) + { 0x00, 0x00, 0x14, 0x08, 0x14, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}, // * + { 0x00, 0x00, 0x00, 0x00, 0x00, 0x18, 0x18, 0x7e, 0x7e, 0x18, 0x18, 0x00, 0x00, 0x00, 0x00, 0x00}, // + + { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x04, 0x0e, 0x0c, 0x1c, 0x18, 0x00}, // , + { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x7e, 0x7e, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}, // - + { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x18, 0x18, 0x00, 0x00, 0x00}, // . + { 0x00, 0x00, 0x06, 0x0c, 0x0c, 0x1c, 0x18, 0x18, 0x38, 0x30, 0x30, 0x70, 0x60, 0xe0, 0x00, 0x00}, // / + { 0x00, 0x00, 0x7c, 0xfe, 0xc6, 0xce, 0xde, 0xf6, 0xe6, 0xc6, 0xc6, 0xfe, 0x7c, 0x00, 0x00, 0x00}, // 0 + { 0x00, 0x00, 0x38, 0x78, 0x78, 0x18, 0x18, 0x18, 0x18, 0x18, 0x18, 0x7e, 0x7e, 0x00, 0x00, 0x00}, // 1 + { 0x00, 0x00, 0x7c, 0xfe, 0xce, 0x06, 0x06, 0x0e, 0x1c, 0x38, 0x70, 0xfe, 0xfe, 0x00, 0x00, 0x00}, // 2 + { 0x00, 0x00, 0x7c, 0xfe, 0x06, 0x06, 0x1e, 0x3c, 0x1e, 0x06, 0xc6, 0xfe, 0x7c, 0x00, 0x00, 0x00}, // 3 + { 0x00, 0x00, 0x40, 0xc0, 0xc8, 0xd8, 0xd8, 0xfc, 0xfc, 0x18, 0x18, 0x18, 0x18, 0x00, 0x00, 0x00}, // 4 + { 0x00, 0x00, 0xfe, 0xfe, 0xc0, 0xc0, 0xfe, 0xfe, 0x06, 0x06, 0x06, 0xfe, 0xfc, 0x00, 0x00, 0x00}, // 5 + { 0x00, 0x00, 0x7c, 0xfe, 0xe6, 0xc0, 0xc0, 0xfc, 0xfe, 0xc6, 0xc6, 0xfe, 0x7c, 0x00, 0x00, 0x00}, // 6 + { 0x00, 0x00, 0xfe, 0xfe, 0x06, 0x06, 0x7f, 0x1f, 0x0c, 0x1c, 0x18, 0x18, 0x38, 0x00, 0x00, 0x00}, // 7 + { 0x00, 0x00, 0x7c, 0xfe, 0xc6, 0xc6, 0x7c, 0xfe, 0xc6, 0xc6, 0xc6, 0xfe, 0x7c, 0x00, 0x00, 0x00}, // 8 + { 0x00, 0x00, 0x7c, 0xfe, 0xc6, 0xc6, 0xc6, 0xfe, 0x7e, 0x06, 0xc6, 0xfe, 0x7c, 0x00, 0x00, 0x00}, // 9 + { 0x00, 0x00, 0x00, 0x00, 0x18, 0x18, 0x00, 0x00, 0x18, 0x18, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}, // : + { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x0c, 0x0c, 0x00, 0x1c, 0x18, 0x1c, 0x0c, 0x00, 0x00, 0x00}, // ; + { 0x00, 0x00, 0x00, 0x06, 0x0e, 0x1c, 0x38, 0x70, 0x38, 0x1c, 0x0e, 0x06, 0x00, 0x00, 0x00, 0x00}, // < + { 0x00, 0x00, 0x00, 0x00, 0x00, 0xfe, 0xfe, 0x00, 0xfe, 0xfe, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}, // = + { 0x00, 0x00, 0x00, 0x60, 0x70, 0x38, 0x1c, 0x0e, 0x1c, 0x38, 0x70, 0x60, 0x00, 0x00, 0x00, 0x00}, // > + { 0x00, 0x00, 0x7c, 0xfe, 0xc6, 0x06, 0x0e, 0x0c, 0x1c, 0x18, 0x18, 0x00, 0x18, 0x18, 0x00, 0x00}, // ? + { 0x00, 0x00, 0x1c, 0x7f, 0x7f, 0xe3, 0xcb, 0xd3, 0xce, 0xe0, 0x73, 0x7f, 0x1e, 0x00, 0x00, 0x00}, // @ + { 0x00, 0x00, 0x7c, 0xfe, 0xee, 0xc6, 0xc6, 0xc6, 0xfe, 0xfe, 0xc6, 0xc6, 0xc6, 0x00, 0x00, 0x00}, // A + { 0x00, 0x00, 0xfc, 0xfe, 0x66, 0x66, 0x7c, 0x7e, 0x66, 0x66, 0x66, 0xfe, 0xfc, 0x00, 0x00, 0x00}, // B + { 0x00, 0x00, 0x7c, 0xfe, 0xc6, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xe6, 0xfe, 0x7c, 0x00, 0x00, 0x00}, // C + { 0x00, 0x00, 0xf8, 0xfe, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0xfe, 0xf8, 0x00, 0x00, 0x00}, // D + { 0x00, 0x00, 0xfe, 0xfe, 0xc0, 0xc0, 0xf8, 0xf8, 0xc0, 0xc0, 0xc0, 0xfe, 0xfe, 0x00, 0x00, 0x00}, // E + { 0x00, 0x00, 0xfe, 0xfe, 0xc0, 0xc0, 0xf8, 0xf8, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0x00, 0x00, 0x00}, // F + { 0x00, 0x00, 0x7e, 0xfe, 0xe2, 0xc0, 0xc0, 0xc0, 0xc6, 0xc6, 0xc6, 0xfe, 0x7e, 0x00, 0x00, 0x00}, // G + { 0x00, 0x00, 0xc6, 0xc6, 0xc6, 0xc6, 0xfe, 0xfe, 0xc6, 0xc6, 0xc6, 0xc6, 0xc6, 0x00, 0x00, 0x00}, // H + { 0x00, 0x00, 0x18, 0x18, 0x18, 0x18, 0x18, 0x18, 0x18, 0x18, 0x18, 0x18, 0x18, 0x00, 0x00, 0x00}, // I + { 0x00, 0x00, 0xfc, 0xfc, 0x0c, 0x0c, 0x0c, 0x0c, 0x0c, 0x0c, 0x0c, 0xcc, 0xcc, 0xfc, 0x7c, 0x00}, // J + { 0x00, 0x00, 0xce, 0xcc, 0xdc, 0xd8, 0xf0, 0xf8, 0xd8, 0xd8, 0xdc, 0xcc, 0xce, 0x00, 0x00, 0x00}, // K + { 0x00, 0x00, 0x60, 0x60, 0x60, 0x60, 0x60, 0x60, 0x60, 0x60, 0x60, 0x7e, 0x7e, 0x00, 0x00, 0x00}, // L + { 0x00, 0x00, 0xc6, 0xee, 0xee, 0xfe, 0xfe, 0xd6, 0xc6, 0xc6, 0xc6, 0xc6, 0xc6, 0x00, 0x00, 0x00}, // M + { 0x00, 0x00, 0xc6, 0xc6, 0xe6, 0xf6, 0xfe, 0xde, 0xce, 0xc6, 0xc6, 0xc6, 0xc6, 0x00, 0x00, 0x00}, // N + { 0x00, 0x00, 0x7c, 0xfe, 0xc6, 0xc6, 0xc6, 0xc6, 0xc6, 0xc6, 0xc6, 0xfe, 0x7c, 0x00, 0x00, 0x00}, // O + { 0x00, 0x00, 0xdc, 0xfe, 0xe6, 0xc6, 0xe6, 0xfe, 0xdc, 0xc0, 0xc0, 0xc0, 0xc0, 0x00, 0x00, 0x00}, // P + { 0x00, 0x00, 0x7c, 0xfe, 0xc6, 0xc6, 0xc6, 0xc6, 0xc6, 0xc6, 0xcc, 0xfe, 0x77, 0x01, 0x00, 0x00}, // Q + { 0x00, 0x00, 0xdc, 0xfe, 0xe6, 0xc6, 0xc6, 0xfc, 0xfe, 0xce, 0xc6, 0xc6, 0xc7, 0x00, 0x00, 0x00}, // R + { 0x00, 0x00, 0x7c, 0xfe, 0xc6, 0xc0, 0xfc, 0x7e, 0x06, 0x06, 0xc6, 0xfe, 0x7c, 0x00, 0x00, 0x00}, // S + { 0x00, 0x00, 0xff, 0xff, 0x18, 0x18, 0x18, 0x18, 0x18, 0x18, 0x18, 0x18, 0x18, 0x00, 0x00, 0x00}, // T + { 0x00, 0x00, 0xc6, 0xc6, 0xc6, 0xc6, 0xc6, 0xc6, 0xc6, 0xc6, 0xc6, 0xfe, 0x7c, 0x00, 0x00, 0x00}, // U + { 0x00, 0x00, 0xc6, 0xc6, 0xc6, 0xee, 0x6c, 0x6c, 0x6c, 0x7c, 0x38, 0x38, 0x10, 0x00, 0x00, 0x00}, // V + { 0x00, 0x00, 0xc3, 0xc3, 0xc3, 0xc3, 0xc3, 0xc3, 0xcb, 0xdb, 0xdb, 0xff, 0x76, 0x00, 0x00, 0x00}, // W + { 0x00, 0x00, 0xc3, 0x66, 0x66, 0x76, 0x3c, 0x18, 0x3c, 0x6e, 0x66, 0x66, 0xc3, 0x00, 0x00, 0x00}, // X + { 0x00, 0x00, 0xc3, 0xc3, 0xe7, 0x66, 0x7e, 0x3c, 0x18, 0x18, 0x18, 0x18, 0x18, 0x00, 0x00, 0x00}, // Y + { 0x00, 0x00, 0x7f, 0xfe, 0x0e, 0x0c, 0x1c, 0x18, 0x38, 0x30, 0x70, 0xff, 0xfe, 0x00, 0x00, 0x00}, // Z + { 0x00, 0x00, 0x7e, 0x7e, 0x60, 0x60, 0x60, 0x60, 0x60, 0x60, 0x60, 0x7e, 0x7e, 0x00, 0x00, 0x00}, // [ + { 0x00, 0x00, 0xc0, 0x60, 0x60, 0x70, 0x30, 0x30, 0x38, 0x18, 0x18, 0x1c, 0x0c, 0x0e, 0x00, 0x00}, // 0x5C + { 0x00, 0x00, 0x7e, 0x7e, 0x06, 0x06, 0x06, 0x06, 0x06, 0x06, 0x06, 0x7e, 0x7e, 0x00, 0x00, 0x00}, // ] + { 0x00, 0x10, 0x38, 0x7c, 0xee, 0xc6, 0x82, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}, // ^ + { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0x00, 0x00, 0x00}, // _ + { 0x00, 0x00, 0x30, 0x38, 0x1c, 0x0c, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}, // ` + { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x78, 0xfc, 0x0c, 0xfc, 0xcc, 0xfe, 0x76, 0x00, 0x00, 0x00}, // a + { 0x00, 0x00, 0xf0, 0x60, 0x60, 0x60, 0x7c, 0x7e, 0x66, 0x66, 0x66, 0xfe, 0xfc, 0x00, 0x00, 0x00}, // b + { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x7c, 0xfe, 0xc6, 0xc0, 0xc6, 0xfe, 0x7c, 0x00, 0x00, 0x00}, // c + { 0x00, 0x00, 0x1e, 0x0c, 0x0c, 0x0c, 0x7c, 0xfc, 0xcc, 0xcc, 0xcc, 0xfe, 0x76, 0x00, 0x00, 0x00}, // d + { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x7c, 0xfe, 0xc6, 0xfe, 0xc0, 0xfe, 0x7c, 0x00, 0x00, 0x00}, // e + { 0x00, 0x00, 0x38, 0x7c, 0x6c, 0x60, 0x60, 0xf8, 0xf8, 0x60, 0x60, 0x60, 0x60, 0x00, 0x00, 0x00}, // f + { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x1e, 0x7e, 0x76, 0xe6, 0xfe, 0x7e, 0x06, 0xc6, 0xfe, 0x7c}, // g + { 0x00, 0x00, 0xe0, 0x60, 0x60, 0x60, 0x7c, 0x7e, 0x66, 0x66, 0x66, 0x66, 0xf7, 0x00, 0x00, 0x00}, // h + { 0x00, 0x00, 0x00, 0x18, 0x18, 0x00, 0x38, 0x18, 0x18, 0x18, 0x18, 0x18, 0x3c, 0x00, 0x00, 0x00}, // i + { 0x00, 0x00, 0x00, 0x0c, 0x0c, 0x00, 0x7e, 0x7e, 0x06, 0x06, 0x06, 0x06, 0x06, 0x66, 0x7e, 0x3c}, // j + { 0x00, 0x00, 0xe0, 0x60, 0x60, 0x66, 0x6c, 0x78, 0x70, 0x78, 0x6c, 0x6c, 0xe6, 0x00, 0x00, 0x00}, // k + { 0x00, 0x00, 0x60, 0x60, 0x60, 0x60, 0x60, 0x60, 0x60, 0x60, 0x66, 0x7e, 0x3c, 0x00, 0x00, 0x00}, // l + { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xdc, 0xff, 0xff, 0xdb, 0xdb, 0xdb, 0xdb, 0x00, 0x00, 0x00}, // m + { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xdc, 0xfe, 0xe6, 0xc6, 0xc6, 0xc6, 0xc6, 0x00, 0x00, 0x00}, // n + { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x7c, 0xfe, 0xc6, 0xc6, 0xc6, 0xfe, 0x7c, 0x00, 0x00, 0x00}, // o + { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x6e, 0x7f, 0x73, 0x63, 0x73, 0x7f, 0x6e, 0x60, 0x60, 0xf0}, // p + { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x76, 0xfe, 0xce, 0xc6, 0xce, 0xfe, 0x76, 0x06, 0x06, 0x0f}, // q + { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xd8, 0xfc, 0xe4, 0xc0, 0xc0, 0xc0, 0xc0, 0x00, 0x00, 0x00}, // r + { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x7c, 0xfe, 0xc0, 0xfc, 0x0e, 0xfe, 0x7c, 0x00, 0x00, 0x00}, // s + { 0x00, 0x00, 0x18, 0x18, 0x18, 0x7e, 0x7e, 0x18, 0x18, 0x18, 0x18, 0x18, 0x18, 0x00, 0x00, 0x00}, // t + { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xc6, 0xc6, 0xc6, 0xc6, 0xc6, 0xfe, 0x7e, 0x00, 0x00, 0x00}, // u + { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xc6, 0x6c, 0x6c, 0x6c, 0x38, 0x38, 0x10, 0x00, 0x00, 0x00}, // v + { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xc3, 0xc3, 0xc3, 0xdb, 0xdb, 0xff, 0x76, 0x00, 0x00, 0x00}, // w + { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xc6, 0x6c, 0x7c, 0x38, 0x7c, 0x6c, 0xc6, 0x00, 0x00, 0x00}, // x + { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xc6, 0xc6, 0xc6, 0xc6, 0xfe, 0x7e, 0x06, 0x86, 0xfe, 0x7c}, // y + { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x7e, 0xfe, 0x1c, 0x38, 0x70, 0xfe, 0xfc, 0x00, 0x00, 0x00}, // z + { 0x00, 0x3c, 0x7e, 0x62, 0x70, 0x30, 0x70, 0xe0, 0x70, 0x30, 0x70, 0x62, 0x7e, 0x3c, 0x00, 0x00}, // { + { 0x00, 0x18, 0x18, 0x18, 0x18, 0x18, 0x18, 0x18, 0x18, 0x18, 0x18, 0x18, 0x18, 0x18, 0x00, 0x00}, // | + { 0x00, 0x3c, 0x7e, 0x46, 0x0e, 0x0c, 0x0e, 0x07, 0x0e, 0x0c, 0x0e, 0x46, 0x7e, 0x3c, 0x00, 0x00}, // } + { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x71, 0xfb, 0xdf, 0x8e, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}, // ~ + { 0x00, 0x00, 0xe0, 0xa0, 0xaa, 0xa4, 0xea, 0x00, 0xee, 0x28, 0x6c, 0x28, 0x28, 0x00, 0x00, 0x00} // 0x7f +}; + uint8_t font8x8_basic[128][8] = { { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}, // U+0000 (nul) { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}, // U+0001 @@ -157,7 +288,7 @@ uint8_t font8x8_basic[128][8] = { font_T g_font = { 8, - 8, - 8, - (uint8_t*)font8x8_basic + 16, + 16, + (uint8_t*)font8x16_monocle }; \ No newline at end of file diff --git a/src/drivers/graphics/renderer.c b/src/drivers/graphics/renderer.c index 1b36337..8da692d 100644 --- a/src/drivers/graphics/renderer.c +++ b/src/drivers/graphics/renderer.c @@ -77,7 +77,7 @@ void graphics_buffer_draw_char(graphics_buffer_T* graphics_buffer, uint32_t x, u for (int y_pos = 0; y_pos < g_renderer.font.height; y_pos++){ for (int x_pos = 0; x_pos < g_renderer.font.width; x_pos++){ - if (*glyph & (1 << x_pos)) { + if (*glyph & (0b10000000 >> x_pos)) { graphics_buffer_set_pixel(graphics_buffer, x + x_pos, y + y_pos, color); } else { graphics_buffer_set_pixel(graphics_buffer, x + x_pos, y + y_pos, (color_argb_T){0x00, 0x00, 0x00, 0x00});