mirror of
https://github.com/DarkFlippers/unleashed-firmware.git
synced 2024-12-22 21:01:40 +03:00
942 lines
11 KiB
C
942 lines
11 KiB
C
#include "mode_nine.h"
|
|
#include <stdint.h>
|
|
|
|
/* GENERATED BY https://github.com/pavius/the-dot-factory */
|
|
|
|
/*
|
|
** Font data for ModeNine 15pt
|
|
*/
|
|
|
|
/* Character bitmaps for ModeNine 15pt */
|
|
const uint8_t modeNine_15ptBitmaps[] = {
|
|
/* @0 '-' (10 pixels wide) */
|
|
0x00,
|
|
0x00,
|
|
0x00,
|
|
0x00,
|
|
0x00,
|
|
0x00,
|
|
0x00,
|
|
0x00,
|
|
0x00,
|
|
0x00,
|
|
0x00,
|
|
0x00,
|
|
0xFF,
|
|
0x03,
|
|
0xFF,
|
|
0x03,
|
|
0x00,
|
|
0x00,
|
|
0x00,
|
|
0x00,
|
|
0x00,
|
|
0x00,
|
|
0x00,
|
|
0x00,
|
|
0x00,
|
|
0x00,
|
|
0x00,
|
|
0x00,
|
|
|
|
/* @28 '0' (10 pixels wide) */
|
|
0xFC,
|
|
0x00,
|
|
0xFE,
|
|
0x01,
|
|
0x87,
|
|
0x03,
|
|
0x03,
|
|
0x03,
|
|
0x03,
|
|
0x03,
|
|
0x03,
|
|
0x03,
|
|
0x33,
|
|
0x03,
|
|
0x33,
|
|
0x03,
|
|
0x03,
|
|
0x03,
|
|
0x03,
|
|
0x03,
|
|
0x03,
|
|
0x03,
|
|
0x87,
|
|
0x03,
|
|
0xFE,
|
|
0x01,
|
|
0xFC,
|
|
0x00,
|
|
|
|
/* @56 '1' (10 pixels wide) */
|
|
0x30,
|
|
0x00,
|
|
0x38,
|
|
0x00,
|
|
0x3C,
|
|
0x00,
|
|
0x3C,
|
|
0x00,
|
|
0x30,
|
|
0x00,
|
|
0x30,
|
|
0x00,
|
|
0x30,
|
|
0x00,
|
|
0x30,
|
|
0x00,
|
|
0x30,
|
|
0x00,
|
|
0x30,
|
|
0x00,
|
|
0x30,
|
|
0x00,
|
|
0x30,
|
|
0x00,
|
|
0xFC,
|
|
0x00,
|
|
0xFC,
|
|
0x00,
|
|
|
|
/* @84 '2' (10 pixels wide) */
|
|
0xFC,
|
|
0x00,
|
|
0xFE,
|
|
0x01,
|
|
0x87,
|
|
0x03,
|
|
0x03,
|
|
0x03,
|
|
0x00,
|
|
0x03,
|
|
0x80,
|
|
0x03,
|
|
0xFC,
|
|
0x01,
|
|
0xFE,
|
|
0x00,
|
|
0x07,
|
|
0x00,
|
|
0x03,
|
|
0x00,
|
|
0x03,
|
|
0x00,
|
|
0x03,
|
|
0x00,
|
|
0xFF,
|
|
0x03,
|
|
0xFF,
|
|
0x03,
|
|
|
|
/* @112 '3' (10 pixels wide) */
|
|
0xFF,
|
|
0x03,
|
|
0xFF,
|
|
0x03,
|
|
0x80,
|
|
0x03,
|
|
0xC0,
|
|
0x01,
|
|
0xE0,
|
|
0x00,
|
|
0x70,
|
|
0x00,
|
|
0xF8,
|
|
0x00,
|
|
0xFC,
|
|
0x01,
|
|
0x80,
|
|
0x03,
|
|
0x00,
|
|
0x03,
|
|
0x03,
|
|
0x03,
|
|
0x87,
|
|
0x03,
|
|
0xFE,
|
|
0x01,
|
|
0xFC,
|
|
0x00,
|
|
|
|
/* @140 '4' (10 pixels wide) */
|
|
0xE0,
|
|
0x00,
|
|
0xF0,
|
|
0x00,
|
|
0xF8,
|
|
0x00,
|
|
0xDC,
|
|
0x00,
|
|
0xCE,
|
|
0x00,
|
|
0xC7,
|
|
0x00,
|
|
0xC3,
|
|
0x00,
|
|
0xC3,
|
|
0x00,
|
|
0xFF,
|
|
0x03,
|
|
0xFF,
|
|
0x03,
|
|
0xC0,
|
|
0x00,
|
|
0xC0,
|
|
0x00,
|
|
0xC0,
|
|
0x00,
|
|
0xC0,
|
|
0x00,
|
|
|
|
/* @168 '5' (10 pixels wide) */
|
|
0xFF,
|
|
0x03,
|
|
0xFF,
|
|
0x03,
|
|
0x03,
|
|
0x00,
|
|
0x03,
|
|
0x00,
|
|
0xFF,
|
|
0x00,
|
|
0xFF,
|
|
0x01,
|
|
0x80,
|
|
0x03,
|
|
0x00,
|
|
0x03,
|
|
0x00,
|
|
0x03,
|
|
0x00,
|
|
0x03,
|
|
0x03,
|
|
0x03,
|
|
0x87,
|
|
0x03,
|
|
0xFE,
|
|
0x01,
|
|
0xFC,
|
|
0x00,
|
|
|
|
/* @196 '6' (10 pixels wide) */
|
|
0xF0,
|
|
0x00,
|
|
0xFC,
|
|
0x00,
|
|
0x0E,
|
|
0x00,
|
|
0x06,
|
|
0x00,
|
|
0x03,
|
|
0x00,
|
|
0x03,
|
|
0x00,
|
|
0xFF,
|
|
0x00,
|
|
0xFF,
|
|
0x01,
|
|
0x83,
|
|
0x03,
|
|
0x03,
|
|
0x03,
|
|
0x03,
|
|
0x03,
|
|
0x87,
|
|
0x03,
|
|
0xFE,
|
|
0x01,
|
|
0xFC,
|
|
0x00,
|
|
|
|
/* @224 '7' (10 pixels wide) */
|
|
0xFF,
|
|
0x03,
|
|
0xFF,
|
|
0x03,
|
|
0x00,
|
|
0x03,
|
|
0x80,
|
|
0x01,
|
|
0xC0,
|
|
0x01,
|
|
0xE0,
|
|
0x00,
|
|
0x30,
|
|
0x00,
|
|
0x18,
|
|
0x00,
|
|
0x1C,
|
|
0x00,
|
|
0x0C,
|
|
0x00,
|
|
0x0C,
|
|
0x00,
|
|
0x0C,
|
|
0x00,
|
|
0x0C,
|
|
0x00,
|
|
0x0C,
|
|
0x00,
|
|
|
|
/* @252 '8' (10 pixels wide) */
|
|
0xFC,
|
|
0x00,
|
|
0xFE,
|
|
0x01,
|
|
0x87,
|
|
0x03,
|
|
0x03,
|
|
0x03,
|
|
0x03,
|
|
0x03,
|
|
0x87,
|
|
0x03,
|
|
0xFE,
|
|
0x01,
|
|
0xFE,
|
|
0x01,
|
|
0x87,
|
|
0x03,
|
|
0x03,
|
|
0x03,
|
|
0x03,
|
|
0x03,
|
|
0x87,
|
|
0x03,
|
|
0xFE,
|
|
0x01,
|
|
0xFC,
|
|
0x00,
|
|
|
|
/* @280 '9' (10 pixels wide) */
|
|
0xFC,
|
|
0x00,
|
|
0xFE,
|
|
0x01,
|
|
0x87,
|
|
0x03,
|
|
0x03,
|
|
0x03,
|
|
0x03,
|
|
0x03,
|
|
0x07,
|
|
0x03,
|
|
0xFE,
|
|
0x03,
|
|
0xFC,
|
|
0x03,
|
|
0x00,
|
|
0x03,
|
|
0x00,
|
|
0x03,
|
|
0x80,
|
|
0x01,
|
|
0xC0,
|
|
0x01,
|
|
0xFC,
|
|
0x00,
|
|
0x3C,
|
|
0x00,
|
|
|
|
/* @308 'B' (10 pixels wide) */
|
|
0xFF,
|
|
0x00,
|
|
0xFF,
|
|
0x01,
|
|
0x83,
|
|
0x03,
|
|
0x03,
|
|
0x03,
|
|
0x03,
|
|
0x03,
|
|
0x83,
|
|
0x03,
|
|
0xFF,
|
|
0x01,
|
|
0xFF,
|
|
0x01,
|
|
0x83,
|
|
0x03,
|
|
0x03,
|
|
0x03,
|
|
0x03,
|
|
0x03,
|
|
0x83,
|
|
0x03,
|
|
0xFF,
|
|
0x01,
|
|
0xFF,
|
|
0x00,
|
|
|
|
/* @336 'C' (10 pixels wide) */
|
|
0xFC,
|
|
0x00,
|
|
0xFE,
|
|
0x01,
|
|
0x87,
|
|
0x03,
|
|
0x03,
|
|
0x03,
|
|
0x03,
|
|
0x00,
|
|
0x03,
|
|
0x00,
|
|
0x03,
|
|
0x00,
|
|
0x03,
|
|
0x00,
|
|
0x03,
|
|
0x00,
|
|
0x03,
|
|
0x00,
|
|
0x03,
|
|
0x03,
|
|
0x87,
|
|
0x03,
|
|
0xFE,
|
|
0x01,
|
|
0xFC,
|
|
0x00,
|
|
|
|
/* @364 'D' (10 pixels wide) */
|
|
0xFF,
|
|
0x00,
|
|
0xFF,
|
|
0x01,
|
|
0x83,
|
|
0x03,
|
|
0x03,
|
|
0x03,
|
|
0x03,
|
|
0x03,
|
|
0x03,
|
|
0x03,
|
|
0x03,
|
|
0x03,
|
|
0x03,
|
|
0x03,
|
|
0x03,
|
|
0x03,
|
|
0x03,
|
|
0x03,
|
|
0x03,
|
|
0x03,
|
|
0x83,
|
|
0x03,
|
|
0xFF,
|
|
0x01,
|
|
0xFF,
|
|
0x00,
|
|
|
|
/* @392 'F' (10 pixels wide) */
|
|
0xFF,
|
|
0x03,
|
|
0xFF,
|
|
0x03,
|
|
0x03,
|
|
0x00,
|
|
0x03,
|
|
0x00,
|
|
0x03,
|
|
0x00,
|
|
0x03,
|
|
0x00,
|
|
0xFF,
|
|
0x00,
|
|
0xFF,
|
|
0x00,
|
|
0x03,
|
|
0x00,
|
|
0x03,
|
|
0x00,
|
|
0x03,
|
|
0x00,
|
|
0x03,
|
|
0x00,
|
|
0x03,
|
|
0x00,
|
|
0x03,
|
|
0x00,
|
|
|
|
/* @420 'G' (10 pixels wide) */
|
|
0xFC,
|
|
0x00,
|
|
0xFE,
|
|
0x01,
|
|
0x87,
|
|
0x03,
|
|
0x03,
|
|
0x03,
|
|
0x03,
|
|
0x00,
|
|
0x03,
|
|
0x00,
|
|
0x03,
|
|
0x00,
|
|
0x03,
|
|
0x00,
|
|
0xC3,
|
|
0x03,
|
|
0xC3,
|
|
0x03,
|
|
0x03,
|
|
0x03,
|
|
0x07,
|
|
0x03,
|
|
0xFE,
|
|
0x03,
|
|
0xFC,
|
|
0x03,
|
|
|
|
/* @448 'H' (10 pixels wide) */
|
|
0x03,
|
|
0x03,
|
|
0x03,
|
|
0x03,
|
|
0x03,
|
|
0x03,
|
|
0x03,
|
|
0x03,
|
|
0x03,
|
|
0x03,
|
|
0x03,
|
|
0x03,
|
|
0xFF,
|
|
0x03,
|
|
0xFF,
|
|
0x03,
|
|
0x03,
|
|
0x03,
|
|
0x03,
|
|
0x03,
|
|
0x03,
|
|
0x03,
|
|
0x03,
|
|
0x03,
|
|
0x03,
|
|
0x03,
|
|
0x03,
|
|
0x03,
|
|
|
|
/* @476 'J' (10 pixels wide) */
|
|
0x00,
|
|
0x03,
|
|
0x00,
|
|
0x03,
|
|
0x00,
|
|
0x03,
|
|
0x00,
|
|
0x03,
|
|
0x00,
|
|
0x03,
|
|
0x00,
|
|
0x03,
|
|
0x00,
|
|
0x03,
|
|
0x00,
|
|
0x03,
|
|
0x00,
|
|
0x03,
|
|
0x00,
|
|
0x03,
|
|
0x03,
|
|
0x03,
|
|
0x87,
|
|
0x03,
|
|
0xFE,
|
|
0x01,
|
|
0xFC,
|
|
0x00,
|
|
|
|
/* @504 'K' (10 pixels wide) */
|
|
0x83,
|
|
0x03,
|
|
0xC3,
|
|
0x01,
|
|
0xE3,
|
|
0x00,
|
|
0x73,
|
|
0x00,
|
|
0x3B,
|
|
0x00,
|
|
0x1F,
|
|
0x00,
|
|
0x0F,
|
|
0x00,
|
|
0x0F,
|
|
0x00,
|
|
0x1F,
|
|
0x00,
|
|
0x3B,
|
|
0x00,
|
|
0x73,
|
|
0x00,
|
|
0xE3,
|
|
0x00,
|
|
0xC3,
|
|
0x01,
|
|
0x83,
|
|
0x03,
|
|
|
|
/* @532 'M' (10 pixels wide) */
|
|
0x03,
|
|
0x03,
|
|
0x87,
|
|
0x03,
|
|
0xCF,
|
|
0x03,
|
|
0xFF,
|
|
0x03,
|
|
0x7B,
|
|
0x03,
|
|
0x33,
|
|
0x03,
|
|
0x03,
|
|
0x03,
|
|
0x03,
|
|
0x03,
|
|
0x03,
|
|
0x03,
|
|
0x03,
|
|
0x03,
|
|
0x03,
|
|
0x03,
|
|
0x03,
|
|
0x03,
|
|
0x03,
|
|
0x03,
|
|
0x03,
|
|
0x03,
|
|
|
|
/* @560 'N' (10 pixels wide) */
|
|
0x03,
|
|
0x03,
|
|
0x03,
|
|
0x03,
|
|
0x07,
|
|
0x03,
|
|
0x0F,
|
|
0x03,
|
|
0x1F,
|
|
0x03,
|
|
0x3B,
|
|
0x03,
|
|
0x73,
|
|
0x03,
|
|
0xE3,
|
|
0x03,
|
|
0xC3,
|
|
0x03,
|
|
0x83,
|
|
0x03,
|
|
0x03,
|
|
0x03,
|
|
0x03,
|
|
0x03,
|
|
0x03,
|
|
0x03,
|
|
0x03,
|
|
0x03,
|
|
|
|
/* @588 'P' (10 pixels wide) */
|
|
0xFF,
|
|
0x00,
|
|
0xFF,
|
|
0x01,
|
|
0x83,
|
|
0x03,
|
|
0x03,
|
|
0x03,
|
|
0x03,
|
|
0x03,
|
|
0x83,
|
|
0x03,
|
|
0xFF,
|
|
0x01,
|
|
0xFF,
|
|
0x00,
|
|
0x03,
|
|
0x00,
|
|
0x03,
|
|
0x00,
|
|
0x03,
|
|
0x00,
|
|
0x03,
|
|
0x00,
|
|
0x03,
|
|
0x00,
|
|
0x03,
|
|
0x00,
|
|
|
|
/* @616 'Q' (10 pixels wide) */
|
|
0xFC,
|
|
0x00,
|
|
0xFE,
|
|
0x01,
|
|
0x87,
|
|
0x03,
|
|
0x03,
|
|
0x03,
|
|
0x03,
|
|
0x03,
|
|
0x03,
|
|
0x03,
|
|
0x03,
|
|
0x03,
|
|
0x03,
|
|
0x03,
|
|
0x03,
|
|
0x03,
|
|
0x33,
|
|
0x03,
|
|
0x73,
|
|
0x03,
|
|
0xE7,
|
|
0x03,
|
|
0xFE,
|
|
0x01,
|
|
0xFC,
|
|
0x03,
|
|
|
|
/* @644 'R' (10 pixels wide) */
|
|
0xFF,
|
|
0x00,
|
|
0xFF,
|
|
0x01,
|
|
0x83,
|
|
0x03,
|
|
0x03,
|
|
0x03,
|
|
0x03,
|
|
0x03,
|
|
0x83,
|
|
0x03,
|
|
0xFF,
|
|
0x01,
|
|
0xFF,
|
|
0x00,
|
|
0x1F,
|
|
0x00,
|
|
0x3B,
|
|
0x00,
|
|
0x73,
|
|
0x00,
|
|
0xE3,
|
|
0x00,
|
|
0xC3,
|
|
0x01,
|
|
0x83,
|
|
0x03,
|
|
|
|
/* @672 'T' (10 pixels wide) */
|
|
0xFF,
|
|
0x03,
|
|
0xFF,
|
|
0x03,
|
|
0x30,
|
|
0x00,
|
|
0x30,
|
|
0x00,
|
|
0x30,
|
|
0x00,
|
|
0x30,
|
|
0x00,
|
|
0x30,
|
|
0x00,
|
|
0x30,
|
|
0x00,
|
|
0x30,
|
|
0x00,
|
|
0x30,
|
|
0x00,
|
|
0x30,
|
|
0x00,
|
|
0x30,
|
|
0x00,
|
|
0x30,
|
|
0x00,
|
|
0x30,
|
|
0x00,
|
|
|
|
/* @700 'V' (10 pixels wide) */
|
|
0x03,
|
|
0x03,
|
|
0x03,
|
|
0x03,
|
|
0x03,
|
|
0x03,
|
|
0x03,
|
|
0x03,
|
|
0x03,
|
|
0x03,
|
|
0x03,
|
|
0x03,
|
|
0x03,
|
|
0x03,
|
|
0x86,
|
|
0x01,
|
|
0x86,
|
|
0x01,
|
|
0xCC,
|
|
0x00,
|
|
0xCC,
|
|
0x00,
|
|
0x78,
|
|
0x00,
|
|
0x78,
|
|
0x00,
|
|
0x30,
|
|
0x00,
|
|
|
|
/* @728 'W' (10 pixels wide) */
|
|
0x03,
|
|
0x03,
|
|
0x03,
|
|
0x03,
|
|
0x03,
|
|
0x03,
|
|
0x03,
|
|
0x03,
|
|
0x03,
|
|
0x03,
|
|
0x03,
|
|
0x03,
|
|
0x33,
|
|
0x03,
|
|
0x33,
|
|
0x03,
|
|
0x33,
|
|
0x03,
|
|
0x33,
|
|
0x03,
|
|
0x33,
|
|
0x03,
|
|
0x33,
|
|
0x03,
|
|
0xFF,
|
|
0x03,
|
|
0xFE,
|
|
0x01,
|
|
|
|
/* @756 'X' (10 pixels wide) */
|
|
0x03,
|
|
0x03,
|
|
0x03,
|
|
0x03,
|
|
0x03,
|
|
0x03,
|
|
0x03,
|
|
0x03,
|
|
0x87,
|
|
0x03,
|
|
0xCE,
|
|
0x01,
|
|
0xFC,
|
|
0x00,
|
|
0xFC,
|
|
0x00,
|
|
0xCE,
|
|
0x01,
|
|
0x87,
|
|
0x03,
|
|
0x03,
|
|
0x03,
|
|
0x03,
|
|
0x03,
|
|
0x03,
|
|
0x03,
|
|
0x03,
|
|
0x03,
|
|
|
|
/* @784 'Y' (10 pixels wide) */
|
|
0x03,
|
|
0x03,
|
|
0x03,
|
|
0x03,
|
|
0x03,
|
|
0x03,
|
|
0x03,
|
|
0x03,
|
|
0x87,
|
|
0x03,
|
|
0xCE,
|
|
0x01,
|
|
0xFC,
|
|
0x00,
|
|
0x78,
|
|
0x00,
|
|
0x30,
|
|
0x00,
|
|
0x30,
|
|
0x00,
|
|
0x30,
|
|
0x00,
|
|
0x30,
|
|
0x00,
|
|
0x30,
|
|
0x00,
|
|
0x30,
|
|
0x00,
|
|
};
|
|
|
|
/* Character descriptors for ModeNine 15pt */
|
|
/* { [Char width in bits], [Offset into modeNine_15ptCharBitmaps in bytes] } */
|
|
const FONT_CHAR_INFO modeNine_15ptDescriptors[] = {
|
|
{10, 0}, /* - */
|
|
{0, 0}, /* . */
|
|
{0, 0}, /* / */
|
|
{10, 28}, /* 0 */
|
|
{10, 56}, /* 1 */
|
|
{10, 84}, /* 2 */
|
|
{10, 112}, /* 3 */
|
|
{10, 140}, /* 4 */
|
|
{10, 168}, /* 5 */
|
|
{10, 196}, /* 6 */
|
|
{10, 224}, /* 7 */
|
|
{10, 252}, /* 8 */
|
|
{10, 280}, /* 9 */
|
|
{0, 0}, /* : */
|
|
{0, 0}, /* ; */
|
|
{0, 0}, /* < */
|
|
{0, 0}, /* = */
|
|
{0, 0}, /* > */
|
|
{0, 0}, /* ? */
|
|
{0, 0}, /* @ */
|
|
{0, 0}, /* A */
|
|
{10, 308}, /* B */
|
|
{10, 336}, /* C */
|
|
{10, 364}, /* D */
|
|
{0, 0}, /* E */
|
|
{10, 392}, /* F */
|
|
{10, 420}, /* G */
|
|
{10, 448}, /* H */
|
|
{0, 0}, /* I */
|
|
{10, 476}, /* J */
|
|
{10, 504}, /* K */
|
|
{0, 0}, /* L */
|
|
{10, 532}, /* M */
|
|
{10, 560}, /* N */
|
|
{0, 0}, /* O */
|
|
{10, 588}, /* P */
|
|
{10, 616}, /* Q */
|
|
{10, 644}, /* R */
|
|
{0, 0}, /* S */
|
|
{10, 672}, /* T */
|
|
{0, 0}, /* U */
|
|
{10, 700}, /* V */
|
|
{10, 728}, /* W */
|
|
{10, 756}, /* X */
|
|
{10, 784}, /* Y */
|
|
};
|
|
|
|
/* Font information for ModeNine 15pt */
|
|
const FONT_INFO modeNine_15ptFontInfo = {
|
|
14, /* Character height */
|
|
'-', /* Start character */
|
|
'Y', /* End character */
|
|
2, /* Width, in pixels, of space character */
|
|
modeNine_15ptDescriptors, /* Character descriptor array */
|
|
modeNine_15ptBitmaps, /* Character bitmap array */
|
|
};
|