From 11d5403558d09eecd2c1fbf824ac925fe3f75d21 Mon Sep 17 00:00:00 2001 From: JF Date: Fri, 27 Dec 2019 15:12:09 +0100 Subject: [PATCH] Add small font, display date, Ble connection and battery power in display app (hard-coded values for now). --- src/CMakeLists.txt | 6 +- src/DisplayApp/DisplayApp.cpp | 5 +- src/DisplayApp/DisplayApp.h | 2 + src/DisplayApp/lcdfont14.c | 1718 +++++++++++++++++++++ src/DisplayApp/lcdfont14.h | 5 + src/DisplayApp/{lcdfont.c => lcdfont70.c} | 0 src/DisplayApp/{lcdfont.h => lcdfont70.h} | 0 7 files changed, 1733 insertions(+), 3 deletions(-) create mode 100644 src/DisplayApp/lcdfont14.c create mode 100644 src/DisplayApp/lcdfont14.h rename src/DisplayApp/{lcdfont.c => lcdfont70.c} (100%) rename src/DisplayApp/{lcdfont.h => lcdfont70.h} (100%) diff --git a/src/CMakeLists.txt b/src/CMakeLists.txt index 46c684ab..d5f57ebf 100644 --- a/src/CMakeLists.txt +++ b/src/CMakeLists.txt @@ -31,7 +31,8 @@ list(APPEND SOURCE_FILES Logging/NrfLogger.cpp BlinkApp/BlinkApp.cpp DisplayApp/DisplayApp.cpp - DisplayApp/lcdfont.c + DisplayApp/lcdfont70.c + DisplayApp/lcdfont14.c main.cpp drivers/St7789.cpp drivers/SpiMaster.cpp @@ -44,7 +45,8 @@ set(INCLUDE_FILES Logging/NrfLogger.h BlinkApp/BlinkApp.h DisplayApp/DisplayApp.h - DisplayApp/lcdfont.h + DisplayApp/lcdfont70.h + DisplayApp/lcdfont14.h drivers/St7789.h drivers/SpiMaster.h Components/Gfx/Gfx.h diff --git a/src/DisplayApp/DisplayApp.cpp b/src/DisplayApp/DisplayApp.cpp index 964db633..496a204f 100644 --- a/src/DisplayApp/DisplayApp.cpp +++ b/src/DisplayApp/DisplayApp.cpp @@ -13,7 +13,6 @@ using namespace Pinetime::Applications; void DisplayApp::Start() { if (pdPASS != xTaskCreate(DisplayApp::Process, "DisplayApp", 256, this, 0, &taskHandle)) APP_ERROR_HANDLER(NRF_ERROR_NO_MEM); - } void DisplayApp::Process(void *instance) { @@ -117,6 +116,10 @@ void DisplayApp::SetTime(uint8_t minutes, uint8_t hours) { void DisplayApp::RunningState() { uint32_t systick_counter = nrf_rtc_counter_get(portNRF_RTC_REG); + gfx->DrawString(10, 0, 0xffff, "BLE", &smallFont, false); + gfx->DrawString((240-96), 0, 0xffff, "BAT: 58%", &smallFont, false); + gfx->DrawString(20, 160, 0xffff, "FRIDAY 27 DEC 2019", &smallFont, false); + auto raw = systick_counter / 1000; auto currentDeltaSeconds = raw - deltaSeconds; diff --git a/src/DisplayApp/DisplayApp.h b/src/DisplayApp/DisplayApp.h index b15c3580..19fe7ff1 100644 --- a/src/DisplayApp/DisplayApp.h +++ b/src/DisplayApp/DisplayApp.h @@ -6,6 +6,7 @@ #include #include #include +#include "lcdfont14.h" extern const FONT_INFO lCD_70ptFontInfo; @@ -33,6 +34,7 @@ namespace Pinetime { std::unique_ptr lcd; std::unique_ptr gfx; const FONT_INFO largeFont {lCD_70ptFontInfo.height, lCD_70ptFontInfo.startChar, lCD_70ptFontInfo.endChar, lCD_70ptFontInfo.spacePixels, lCD_70ptFontInfo.charInfo, lCD_70ptFontInfo.data}; + const FONT_INFO smallFont {lCD_14ptFontInfo.height, lCD_14ptFontInfo.startChar, lCD_14ptFontInfo.endChar, lCD_14ptFontInfo.spacePixels, lCD_14ptFontInfo.charInfo, lCD_14ptFontInfo.data}; void Refresh(); uint8_t seconds = 0; diff --git a/src/DisplayApp/lcdfont14.c b/src/DisplayApp/lcdfont14.c new file mode 100644 index 00000000..b4edf502 --- /dev/null +++ b/src/DisplayApp/lcdfont14.c @@ -0,0 +1,1718 @@ +#include "nrf_font.h" + +// +// Font data for LCD 14pt +// + +// Character bitmaps for LCD 14pt +const uint8_t lCD_14ptBitmaps[] = +{ + // @0 '!' (10 pixels wide) + 0x00, 0x00, // + 0x0C, 0x00, // ## + 0x0C, 0x00, // ## + 0x0C, 0x00, // ## + 0x0C, 0x00, // ## + 0x0C, 0x00, // ## + 0x0C, 0x00, // ## + 0x00, 0x00, // + 0x00, 0x00, // + 0x00, 0x00, // + 0x00, 0x00, // + 0x00, 0x00, // + 0x00, 0x00, // + 0x73, 0x80, // ### ### + 0xFF, 0x80, // ######### + + // @30 '"' (10 pixels wide) + 0x00, 0x00, // + 0x8C, 0x00, // # ## + 0x8C, 0x00, // # ## + 0x8C, 0x00, // # ## + 0x8C, 0x00, // # ## + 0x8C, 0x00, // # ## + 0x8C, 0x00, // # ## + 0x00, 0x00, // + 0x00, 0x00, // + 0x00, 0x00, // + 0x00, 0x00, // + 0x00, 0x00, // + 0x00, 0x00, // + 0x00, 0x00, // + 0x00, 0x00, // + + // @60 '#' (10 pixels wide) + 0x00, 0x00, // + 0x8C, 0x00, // # ## + 0x8C, 0x00, // # ## + 0x8C, 0x00, // # ## + 0x8C, 0x00, // # ## + 0x8C, 0x00, // # ## + 0x8C, 0x00, // # ## + 0xFF, 0x80, // ######### + 0x8C, 0x00, // # ## + 0x8C, 0x00, // # ## + 0x8C, 0x00, // # ## + 0x8C, 0x00, // # ## + 0x8C, 0x00, // # ## + 0xFF, 0x80, // ######### + 0x7F, 0x80, // ######## + + // @90 '$' (10 pixels wide) + 0xFF, 0x80, // ######### + 0x8C, 0x00, // # ## + 0x8C, 0x00, // # ## + 0x8C, 0x00, // # ## + 0x8C, 0x00, // # ## + 0x8C, 0x00, // # ## + 0x8C, 0x00, // # ## + 0xFF, 0x80, // ######### + 0x0C, 0x40, // ## # + 0x0C, 0x40, // ## # + 0x0C, 0x40, // ## # + 0x0C, 0x40, // ## # + 0x0C, 0x40, // ## # + 0x7F, 0xC0, // ######### + 0xFF, 0x80, // ######### + + // @120 '%' (10 pixels wide) + 0xFF, 0x80, // ######### + 0x8C, 0x80, // # ## # + 0x8D, 0x80, // # ## ## + 0x8D, 0x00, // # ## # + 0x8F, 0x00, // # #### + 0x8E, 0x00, // # ### + 0x8C, 0x00, // # ## + 0xFF, 0x80, // ######### + 0x1C, 0x40, // ### # + 0x3C, 0x40, // #### # + 0x3C, 0x40, // #### # + 0x6C, 0x40, // ## ## # + 0x4C, 0x40, // # ## # + 0x7F, 0xC0, // ######### + 0xFF, 0x80, // ######### + + // @150 '&' (10 pixels wide) + 0xFF, 0x80, // ######### + 0x40, 0x80, // # # + 0x41, 0x80, // # ## + 0x61, 0x00, // ## # + 0x33, 0x00, // ## ## + 0x12, 0x00, // # # + 0x12, 0x00, // # # + 0x00, 0x40, // # + 0x12, 0x40, // # # # + 0x32, 0x40, // ## # # + 0x33, 0x40, // ## ## # + 0x61, 0x40, // ## # # + 0x41, 0xC0, // # ### + 0x73, 0xC0, // ### #### + 0xFF, 0x80, // ######### + + // @180 ''' (10 pixels wide) + 0x00, 0x00, // + 0x0C, 0x00, // ## + 0x0C, 0x00, // ## + 0x0C, 0x00, // ## + 0x0C, 0x00, // ## + 0x0C, 0x00, // ## + 0x0C, 0x00, // ## + 0x00, 0x00, // + 0x00, 0x00, // + 0x00, 0x00, // + 0x00, 0x00, // + 0x00, 0x00, // + 0x00, 0x00, // + 0x00, 0x00, // + 0x00, 0x00, // + + // @210 '(' (10 pixels wide) + 0xFF, 0x80, // ######### + 0x80, 0x00, // # + 0x80, 0x00, // # + 0x80, 0x00, // # + 0x80, 0x00, // # + 0x80, 0x00, // # + 0x80, 0x00, // # + 0x80, 0x00, // # + 0x80, 0x00, // # + 0x80, 0x00, // # + 0x80, 0x00, // # + 0x80, 0x00, // # + 0x80, 0x00, // # + 0xF3, 0x80, // #### ### + 0x7F, 0x80, // ######## + + // @240 ')' (10 pixels wide) + 0xFF, 0x80, // ######### + 0x00, 0x40, // # + 0x00, 0x40, // # + 0x00, 0x40, // # + 0x00, 0x40, // # + 0x00, 0x40, // # + 0x00, 0x40, // # + 0x00, 0x40, // # + 0x00, 0x40, // # + 0x00, 0x40, // # + 0x00, 0x40, // # + 0x00, 0x40, // # + 0x00, 0x40, // # + 0x73, 0xC0, // ### #### + 0xFF, 0x80, // ######### + + // @270 '*' (10 pixels wide) + 0x00, 0x00, // + 0x4C, 0x80, // # ## # + 0x4D, 0x80, // # ## ## + 0x6D, 0x00, // ## ## # + 0x3F, 0x00, // ###### + 0x1E, 0x00, // #### + 0x1C, 0x00, // ### + 0xFF, 0x80, // ######### + 0x1E, 0x00, // #### + 0x3E, 0x00, // ##### + 0x3F, 0x00, // ###### + 0x6D, 0x00, // ## ## # + 0x4D, 0x80, // # ## ## + 0x0C, 0x00, // ## + 0x00, 0x00, // + + // @300 '+' (10 pixels wide) + 0x00, 0x00, // + 0x0C, 0x00, // ## + 0x0C, 0x00, // ## + 0x0C, 0x00, // ## + 0x0C, 0x00, // ## + 0x0C, 0x00, // ## + 0x0C, 0x00, // ## + 0xFF, 0x80, // ######### + 0x0C, 0x00, // ## + 0x0C, 0x00, // ## + 0x0C, 0x00, // ## + 0x0C, 0x00, // ## + 0x0C, 0x00, // ## + 0x0C, 0x00, // ## + 0x00, 0x00, // + + // @330 ',' (10 pixels wide) + 0x00, 0x00, // + 0x00, 0x00, // + 0x00, 0x00, // + 0x00, 0x00, // + 0x00, 0x00, // + 0x00, 0x00, // + 0x00, 0x00, // + 0x00, 0x00, // + 0x10, 0x00, // # + 0x30, 0x00, // ## + 0x30, 0x00, // ## + 0x60, 0x00, // ## + 0x40, 0x00, // # + 0x00, 0x00, // + 0x00, 0x00, // + + // @360 '-' (10 pixels wide) + 0x00, 0x00, // + 0x00, 0x00, // + 0x00, 0x00, // + 0x00, 0x00, // + 0x00, 0x00, // + 0x00, 0x00, // + 0x00, 0x00, // + 0xFF, 0x80, // ######### + 0x00, 0x00, // + 0x00, 0x00, // + 0x00, 0x00, // + 0x00, 0x00, // + 0x00, 0x00, // + 0x00, 0x00, // + 0x00, 0x00, // + + // @390 '.' (10 pixels wide) + 0x00, 0x00, // + 0x00, 0x00, // + 0x00, 0x00, // + 0x00, 0x00, // + 0x00, 0x00, // + 0x00, 0x00, // + 0x00, 0x00, // + 0x80, 0x00, // # + 0x80, 0x00, // # + 0x80, 0x00, // # + 0x80, 0x00, // # + 0x80, 0x00, // # + 0x80, 0x00, // # + 0x80, 0x00, // # + 0x00, 0x00, // + + // @420 '/' (10 pixels wide) + 0x00, 0x00, // + 0x00, 0x80, // # + 0x01, 0x80, // ## + 0x01, 0x00, // # + 0x03, 0x00, // ## + 0x02, 0x00, // # + 0x02, 0x00, // # + 0x00, 0x00, // + 0x10, 0x00, // # + 0x30, 0x00, // ## + 0x30, 0x00, // ## + 0x60, 0x00, // ## + 0x40, 0x00, // # + 0x00, 0x00, // + 0x00, 0x00, // + + // @450 '0' (10 pixels wide) + 0xFF, 0x80, // ######### + 0x80, 0xC0, // # ## + 0x81, 0xC0, // # ### + 0x81, 0x40, // # # # + 0x83, 0x40, // # ## # + 0x82, 0x40, // # # # + 0x82, 0x40, // # # # + 0x80, 0x40, // # # + 0x90, 0x40, // # # # + 0xB0, 0x40, // # ## # + 0xB0, 0x40, // # ## # + 0xE0, 0x40, // ### # + 0xC0, 0x40, // ## # + 0xF3, 0xC0, // #### #### + 0x7F, 0x80, // ######## + + // @480 '1' (10 pixels wide) + 0x00, 0x00, // + 0x00, 0xC0, // ## + 0x01, 0xC0, // ### + 0x01, 0x40, // # # + 0x03, 0x40, // ## # + 0x02, 0x40, // # # + 0x02, 0x40, // # # + 0x00, 0x40, // # + 0x00, 0x40, // # + 0x00, 0x40, // # + 0x00, 0x40, // # + 0x00, 0x40, // # + 0x00, 0x40, // # + 0x00, 0x40, // # + 0x00, 0x00, // + + // @510 '2' (10 pixels wide) + 0xFF, 0x80, // ######### + 0x00, 0x40, // # + 0x00, 0x40, // # + 0x00, 0x40, // # + 0x00, 0x40, // # + 0x00, 0x40, // # + 0x00, 0x40, // # + 0xFF, 0x80, // ######### + 0x80, 0x00, // # + 0x80, 0x00, // # + 0x80, 0x00, // # + 0x80, 0x00, // # + 0x80, 0x00, // # + 0xF3, 0x80, // #### ### + 0x7F, 0x80, // ######## + + // @540 '3' (10 pixels wide) + 0xFF, 0x80, // ######### + 0x00, 0x40, // # + 0x00, 0x40, // # + 0x00, 0x40, // # + 0x00, 0x40, // # + 0x00, 0x40, // # + 0x00, 0x40, // # + 0xFF, 0x80, // ######### + 0x00, 0x40, // # + 0x00, 0x40, // # + 0x00, 0x40, // # + 0x00, 0x40, // # + 0x00, 0x40, // # + 0x73, 0xC0, // ### #### + 0xFF, 0x80, // ######### + + // @570 '4' (10 pixels wide) + 0x00, 0x00, // + 0x80, 0x40, // # # + 0x80, 0x40, // # # + 0x80, 0x40, // # # + 0x80, 0x40, // # # + 0x80, 0x40, // # # + 0x80, 0x40, // # # + 0xFF, 0x80, // ######### + 0x00, 0x40, // # + 0x00, 0x40, // # + 0x00, 0x40, // # + 0x00, 0x40, // # + 0x00, 0x40, // # + 0x00, 0x40, // # + 0x00, 0x00, // + + // @600 '5' (10 pixels wide) + 0xFF, 0x80, // ######### + 0x40, 0x00, // # + 0x40, 0x00, // # + 0x60, 0x00, // ## + 0x30, 0x00, // ## + 0x10, 0x00, // # + 0x10, 0x00, // # + 0x07, 0x80, // #### + 0x00, 0x40, // # + 0x00, 0x40, // # + 0x00, 0x40, // # + 0x00, 0x40, // # + 0x00, 0x40, // # + 0x73, 0xC0, // ### #### + 0xFF, 0x80, // ######### + + // @630 '6' (10 pixels wide) + 0xFF, 0x80, // ######### + 0x80, 0x00, // # + 0x80, 0x00, // # + 0x80, 0x00, // # + 0x80, 0x00, // # + 0x80, 0x00, // # + 0x80, 0x00, // # + 0xFF, 0x80, // ######### + 0x80, 0x40, // # # + 0x80, 0x40, // # # + 0x80, 0x40, // # # + 0x80, 0x40, // # # + 0x80, 0x40, // # # + 0xF3, 0xC0, // #### #### + 0x7F, 0x80, // ######## + + // @660 '7' (10 pixels wide) + 0xFF, 0x80, // ######### + 0x00, 0x40, // # + 0x00, 0x40, // # + 0x00, 0x40, // # + 0x00, 0x40, // # + 0x00, 0x40, // # + 0x00, 0x40, // # + 0x00, 0x40, // # + 0x00, 0x40, // # + 0x00, 0x40, // # + 0x00, 0x40, // # + 0x00, 0x40, // # + 0x00, 0x40, // # + 0x00, 0x40, // # + 0x00, 0x00, // + + // @690 '8' (10 pixels wide) + 0xFF, 0x80, // ######### + 0x80, 0x40, // # # + 0x80, 0x40, // # # + 0x80, 0x40, // # # + 0x80, 0x40, // # # + 0x80, 0x40, // # # + 0x80, 0x40, // # # + 0xFF, 0x80, // ######### + 0x80, 0x40, // # # + 0x80, 0x40, // # # + 0x80, 0x40, // # # + 0x80, 0x40, // # # + 0x80, 0x40, // # # + 0xF3, 0xC0, // #### #### + 0x7F, 0x80, // ######## + + // @720 '9' (10 pixels wide) + 0xFF, 0x80, // ######### + 0x80, 0x40, // # # + 0x80, 0x40, // # # + 0x80, 0x40, // # # + 0x80, 0x40, // # # + 0x80, 0x40, // # # + 0x80, 0x40, // # # + 0xFF, 0x80, // ######### + 0x00, 0x40, // # + 0x00, 0x40, // # + 0x00, 0x40, // # + 0x00, 0x40, // # + 0x00, 0x40, // # + 0x73, 0xC0, // ### #### + 0xFF, 0x80, // ######### + + // @750 ':' (10 pixels wide) + 0x00, 0x00, // + 0x08, 0x00, // # + 0x08, 0x00, // # + 0x00, 0x00, // + 0x00, 0x00, // + 0x00, 0x00, // + 0x00, 0x00, // + 0x00, 0x00, // + 0x00, 0x00, // + 0x00, 0x00, // + 0x00, 0x00, // + 0x00, 0x00, // + 0x08, 0x00, // # + 0x08, 0x00, // # + 0x00, 0x00, // + + // @780 ';' (10 pixels wide) + 0x00, 0x00, // + 0x0C, 0x00, // ## + 0x0C, 0x00, // ## + 0x0C, 0x00, // ## + 0x0C, 0x00, // ## + 0x0C, 0x00, // ## + 0x0C, 0x00, // ## + 0x00, 0x00, // + 0x10, 0x00, // # + 0x30, 0x00, // ## + 0x30, 0x00, // ## + 0x60, 0x00, // ## + 0x40, 0x00, // # + 0x00, 0x00, // + 0x00, 0x00, // + + // @810 '<' (10 pixels wide) + 0x00, 0x00, // + 0x00, 0x80, // # + 0x01, 0x80, // ## + 0x01, 0x00, // # + 0x03, 0x00, // ## + 0x02, 0x00, // # + 0x02, 0x00, // # + 0x00, 0x00, // + 0x02, 0x00, // # + 0x02, 0x00, // # + 0x03, 0x00, // ## + 0x01, 0x00, // # + 0x01, 0x80, // ## + 0x00, 0x00, // + 0x00, 0x00, // + + // @840 '=' (10 pixels wide) + 0x00, 0x00, // + 0x00, 0x00, // + 0x00, 0x00, // + 0x00, 0x00, // + 0x00, 0x00, // + 0x00, 0x00, // + 0x00, 0x00, // + 0xFF, 0x80, // ######### + 0x00, 0x00, // + 0x00, 0x00, // + 0x00, 0x00, // + 0x00, 0x00, // + 0x00, 0x00, // + 0x73, 0x80, // ### ### + 0xFF, 0x80, // ######### + + // @870 '>' (10 pixels wide) + 0x00, 0x00, // + 0x40, 0x00, // # + 0x40, 0x00, // # + 0x60, 0x00, // ## + 0x30, 0x00, // ## + 0x10, 0x00, // # + 0x10, 0x00, // # + 0x00, 0x00, // + 0x10, 0x00, // # + 0x30, 0x00, // ## + 0x30, 0x00, // ## + 0x60, 0x00, // ## + 0x40, 0x00, // # + 0x00, 0x00, // + 0x00, 0x00, // + + // @900 '?' (10 pixels wide) + 0xFF, 0x80, // ######### + 0x80, 0x40, // # # + 0x80, 0x40, // # # + 0x80, 0x40, // # # + 0x80, 0x40, // # # + 0x80, 0x40, // # # + 0x80, 0x40, // # # + 0x07, 0x80, // #### + 0x0C, 0x00, // ## + 0x0C, 0x00, // ## + 0x0C, 0x00, // ## + 0x0C, 0x00, // ## + 0x0C, 0x00, // ## + 0x0C, 0x00, // ## + 0x00, 0x00, // + + // @930 '@' (10 pixels wide) + 0xFF, 0x80, // ######### + 0x80, 0x40, // # # + 0x80, 0x40, // # # + 0x80, 0x40, // # # + 0x80, 0x40, // # # + 0x80, 0x40, // # # + 0x80, 0x40, // # # + 0x00, 0x40, // # + 0x12, 0x40, // # # # + 0x32, 0x40, // ## # # + 0x33, 0x40, // ## ## # + 0x61, 0x40, // ## # # + 0x41, 0xC0, // # ### + 0x73, 0xC0, // ### #### + 0xFF, 0x80, // ######### + + // @960 'A' (10 pixels wide) + 0xFF, 0x80, // ######### + 0x80, 0x40, // # # + 0x80, 0x40, // # # + 0x80, 0x40, // # # + 0x80, 0x40, // # # + 0x80, 0x40, // # # + 0x80, 0x40, // # # + 0xFF, 0x80, // ######### + 0x80, 0x40, // # # + 0x80, 0x40, // # # + 0x80, 0x40, // # # + 0x80, 0x40, // # # + 0x80, 0x40, // # # + 0x80, 0x40, // # # + 0x00, 0x00, // + + // @990 'B' (10 pixels wide) + 0xFF, 0x80, // ######### + 0x0C, 0x40, // ## # + 0x0C, 0x40, // ## # + 0x0C, 0x40, // ## # + 0x0C, 0x40, // ## # + 0x0C, 0x40, // ## # + 0x0C, 0x40, // ## # + 0x07, 0x80, // #### + 0x0C, 0x40, // ## # + 0x0C, 0x40, // ## # + 0x0C, 0x40, // ## # + 0x0C, 0x40, // ## # + 0x0C, 0x40, // ## # + 0x7F, 0xC0, // ######### + 0xFF, 0x80, // ######### + + // @1020 'C' (10 pixels wide) + 0xFF, 0x80, // ######### + 0x80, 0x00, // # + 0x80, 0x00, // # + 0x80, 0x00, // # + 0x80, 0x00, // # + 0x80, 0x00, // # + 0x80, 0x00, // # + 0x80, 0x00, // # + 0x80, 0x00, // # + 0x80, 0x00, // # + 0x80, 0x00, // # + 0x80, 0x00, // # + 0x80, 0x00, // # + 0xF3, 0x80, // #### ### + 0x7F, 0x80, // ######## + + // @1050 'D' (10 pixels wide) + 0xFF, 0x80, // ######### + 0x0C, 0x40, // ## # + 0x0C, 0x40, // ## # + 0x0C, 0x40, // ## # + 0x0C, 0x40, // ## # + 0x0C, 0x40, // ## # + 0x0C, 0x40, // ## # + 0x08, 0x40, // # # + 0x0C, 0x40, // ## # + 0x0C, 0x40, // ## # + 0x0C, 0x40, // ## # + 0x0C, 0x40, // ## # + 0x0C, 0x40, // ## # + 0x7F, 0xC0, // ######### + 0xFF, 0x80, // ######### + + // @1080 'E' (10 pixels wide) + 0xFF, 0x80, // ######### + 0x80, 0x00, // # + 0x80, 0x00, // # + 0x80, 0x00, // # + 0x80, 0x00, // # + 0x80, 0x00, // # + 0x80, 0x00, // # + 0xFF, 0x80, // ######### + 0x80, 0x00, // # + 0x80, 0x00, // # + 0x80, 0x00, // # + 0x80, 0x00, // # + 0x80, 0x00, // # + 0xF3, 0x80, // #### ### + 0x7F, 0x80, // ######## + + // @1110 'F' (10 pixels wide) + 0xFF, 0x80, // ######### + 0x80, 0x00, // # + 0x80, 0x00, // # + 0x80, 0x00, // # + 0x80, 0x00, // # + 0x80, 0x00, // # + 0x80, 0x00, // # + 0xFF, 0x80, // ######### + 0x80, 0x00, // # + 0x80, 0x00, // # + 0x80, 0x00, // # + 0x80, 0x00, // # + 0x80, 0x00, // # + 0x80, 0x00, // # + 0x00, 0x00, // + + // @1140 'G' (10 pixels wide) + 0xFF, 0x80, // ######### + 0x80, 0x00, // # + 0x80, 0x00, // # + 0x80, 0x00, // # + 0x80, 0x00, // # + 0x80, 0x00, // # + 0x80, 0x00, // # + 0x87, 0x80, // # #### + 0x80, 0x40, // # # + 0x80, 0x40, // # # + 0x80, 0x40, // # # + 0x80, 0x40, // # # + 0x80, 0x40, // # # + 0xF3, 0xC0, // #### #### + 0x7F, 0x80, // ######## + + // @1170 'H' (10 pixels wide) + 0x00, 0x00, // + 0x80, 0x40, // # # + 0x80, 0x40, // # # + 0x80, 0x40, // # # + 0x80, 0x40, // # # + 0x80, 0x40, // # # + 0x80, 0x40, // # # + 0xFF, 0x80, // ######### + 0x80, 0x40, // # # + 0x80, 0x40, // # # + 0x80, 0x40, // # # + 0x80, 0x40, // # # + 0x80, 0x40, // # # + 0x80, 0x40, // # # + 0x00, 0x00, // + + // @1200 'I' (10 pixels wide) + 0xFF, 0x80, // ######### + 0x0C, 0x00, // ## + 0x0C, 0x00, // ## + 0x0C, 0x00, // ## + 0x0C, 0x00, // ## + 0x0C, 0x00, // ## + 0x0C, 0x00, // ## + 0x08, 0x00, // # + 0x0C, 0x00, // ## + 0x0C, 0x00, // ## + 0x0C, 0x00, // ## + 0x0C, 0x00, // ## + 0x0C, 0x00, // ## + 0x7F, 0x80, // ######## + 0xFF, 0x80, // ######### + + // @1230 'J' (10 pixels wide) + 0x00, 0x00, // + 0x00, 0x40, // # + 0x00, 0x40, // # + 0x00, 0x40, // # + 0x00, 0x40, // # + 0x00, 0x40, // # + 0x00, 0x40, // # + 0x80, 0x40, // # # + 0x80, 0x40, // # # + 0x80, 0x40, // # # + 0x80, 0x40, // # # + 0x80, 0x40, // # # + 0x80, 0x40, // # # + 0xF3, 0xC0, // #### #### + 0x7F, 0x80, // ######## + + // @1260 'K' (10 pixels wide) + 0x00, 0x00, // + 0x80, 0x80, // # # + 0x81, 0x80, // # ## + 0x81, 0x00, // # # + 0x83, 0x00, // # ## + 0x82, 0x00, // # # + 0x82, 0x00, // # # + 0xF8, 0x00, // ##### + 0x82, 0x00, // # # + 0x82, 0x00, // # # + 0x83, 0x00, // # ## + 0x81, 0x00, // # # + 0x81, 0x80, // # ## + 0x80, 0x00, // # + 0x00, 0x00, // + + // @1290 'L' (10 pixels wide) + 0x00, 0x00, // + 0x80, 0x00, // # + 0x80, 0x00, // # + 0x80, 0x00, // # + 0x80, 0x00, // # + 0x80, 0x00, // # + 0x80, 0x00, // # + 0x80, 0x00, // # + 0x80, 0x00, // # + 0x80, 0x00, // # + 0x80, 0x00, // # + 0x80, 0x00, // # + 0x80, 0x00, // # + 0xF3, 0x80, // #### ### + 0x7F, 0x80, // ######## + + // @1320 'M' (10 pixels wide) + 0x00, 0x00, // + 0xC0, 0xC0, // ## ## + 0xC1, 0xC0, // ## ### + 0xE1, 0x40, // ### # # + 0xB3, 0x40, // # ## ## # + 0x92, 0x40, // # # # # + 0x92, 0x40, // # # # # + 0x80, 0x40, // # # + 0x80, 0x40, // # # + 0x80, 0x40, // # # + 0x80, 0x40, // # # + 0x80, 0x40, // # # + 0x80, 0x40, // # # + 0x80, 0x40, // # # + 0x00, 0x00, // + + // @1350 'N' (10 pixels wide) + 0x00, 0x00, // + 0xC0, 0x40, // ## # + 0xC0, 0x40, // ## # + 0xE0, 0x40, // ### # + 0xB0, 0x40, // # ## # + 0x90, 0x40, // # # # + 0x90, 0x40, // # # # + 0x80, 0x40, // # # + 0x82, 0x40, // # # # + 0x82, 0x40, // # # # + 0x83, 0x40, // # ## # + 0x81, 0x40, // # # # + 0x81, 0xC0, // # ### + 0x80, 0x40, // # # + 0x00, 0x00, // + + // @1380 'O' (10 pixels wide) + 0xFF, 0x80, // ######### + 0x80, 0x40, // # # + 0x80, 0x40, // # # + 0x80, 0x40, // # # + 0x80, 0x40, // # # + 0x80, 0x40, // # # + 0x80, 0x40, // # # + 0x80, 0x40, // # # + 0x80, 0x40, // # # + 0x80, 0x40, // # # + 0x80, 0x40, // # # + 0x80, 0x40, // # # + 0x80, 0x40, // # # + 0xF3, 0xC0, // #### #### + 0x7F, 0x80, // ######## + + // @1410 'P' (10 pixels wide) + 0xFF, 0x80, // ######### + 0x80, 0x40, // # # + 0x80, 0x40, // # # + 0x80, 0x40, // # # + 0x80, 0x40, // # # + 0x80, 0x40, // # # + 0x80, 0x40, // # # + 0xFF, 0x80, // ######### + 0x80, 0x00, // # + 0x80, 0x00, // # + 0x80, 0x00, // # + 0x80, 0x00, // # + 0x80, 0x00, // # + 0x80, 0x00, // # + 0x00, 0x00, // + + // @1440 'Q' (10 pixels wide) + 0xFF, 0x80, // ######### + 0x80, 0x40, // # # + 0x80, 0x40, // # # + 0x80, 0x40, // # # + 0x80, 0x40, // # # + 0x80, 0x40, // # # + 0x80, 0x40, // # # + 0x80, 0x40, // # # + 0x82, 0x40, // # # # + 0x82, 0x40, // # # # + 0x83, 0x40, // # ## # + 0x81, 0x40, // # # # + 0x81, 0xC0, // # ### + 0xF3, 0xC0, // #### #### + 0x7F, 0x80, // ######## + + // @1470 'R' (10 pixels wide) + 0xFF, 0x80, // ######### + 0x80, 0x40, // # # + 0x80, 0x40, // # # + 0x80, 0x40, // # # + 0x80, 0x40, // # # + 0x80, 0x40, // # # + 0x80, 0x40, // # # + 0xFF, 0x80, // ######### + 0x82, 0x00, // # # + 0x82, 0x00, // # # + 0x83, 0x00, // # ## + 0x81, 0x00, // # # + 0x81, 0x80, // # ## + 0x80, 0x00, // # + 0x00, 0x00, // + + // @1500 'S' (10 pixels wide) + 0xFF, 0x80, // ######### + 0x80, 0x00, // # + 0x80, 0x00, // # + 0x80, 0x00, // # + 0x80, 0x00, // # + 0x80, 0x00, // # + 0x80, 0x00, // # + 0xFF, 0x80, // ######### + 0x00, 0x40, // # + 0x00, 0x40, // # + 0x00, 0x40, // # + 0x00, 0x40, // # + 0x00, 0x40, // # + 0x73, 0xC0, // ### #### + 0xFF, 0x80, // ######### + + // @1530 'T' (10 pixels wide) + 0xFF, 0x80, // ######### + 0x0C, 0x00, // ## + 0x0C, 0x00, // ## + 0x0C, 0x00, // ## + 0x0C, 0x00, // ## + 0x0C, 0x00, // ## + 0x0C, 0x00, // ## + 0x08, 0x00, // # + 0x0C, 0x00, // ## + 0x0C, 0x00, // ## + 0x0C, 0x00, // ## + 0x0C, 0x00, // ## + 0x0C, 0x00, // ## + 0x0C, 0x00, // ## + 0x00, 0x00, // + + // @1560 'U' (10 pixels wide) + 0x00, 0x00, // + 0x80, 0x40, // # # + 0x80, 0x40, // # # + 0x80, 0x40, // # # + 0x80, 0x40, // # # + 0x80, 0x40, // # # + 0x80, 0x40, // # # + 0x80, 0x40, // # # + 0x80, 0x40, // # # + 0x80, 0x40, // # # + 0x80, 0x40, // # # + 0x80, 0x40, // # # + 0x80, 0x40, // # # + 0xF3, 0xC0, // #### #### + 0x7F, 0x80, // ######## + + // @1590 'V' (10 pixels wide) + 0x00, 0x00, // + 0x40, 0x40, // # # + 0x40, 0x40, // # # + 0x60, 0x40, // ## # + 0x30, 0x40, // ## # + 0x10, 0x40, // # # + 0x10, 0x40, // # # + 0x00, 0x40, // # + 0x02, 0x40, // # # + 0x02, 0x40, // # # + 0x03, 0x40, // ## # + 0x01, 0x40, // # # + 0x01, 0xC0, // ### + 0x00, 0x40, // # + 0x00, 0x00, // + + // @1620 'W' (10 pixels wide) + 0x00, 0x00, // + 0x80, 0x40, // # # + 0x80, 0x40, // # # + 0x80, 0x40, // # # + 0x80, 0x40, // # # + 0x80, 0x40, // # # + 0x80, 0x40, // # # + 0x80, 0x40, // # # + 0x92, 0x40, // # # # # + 0xB2, 0x40, // # ## # # + 0xB3, 0x40, // # ## ## # + 0xE1, 0x40, // ### # # + 0xC1, 0xC0, // ## ### + 0x80, 0x40, // # # + 0x00, 0x00, // + + // @1650 'X' (10 pixels wide) + 0x00, 0x00, // + 0x40, 0x80, // # # + 0x41, 0x80, // # ## + 0x61, 0x00, // ## # + 0x33, 0x00, // ## ## + 0x12, 0x00, // # # + 0x12, 0x00, // # # + 0x00, 0x00, // + 0x12, 0x00, // # # + 0x32, 0x00, // ## # + 0x33, 0x00, // ## ## + 0x61, 0x00, // ## # + 0x41, 0x80, // # ## + 0x00, 0x00, // + 0x00, 0x00, // + + // @1680 'Y' (10 pixels wide) + 0x00, 0x00, // + 0x40, 0x80, // # # + 0x41, 0x80, // # ## + 0x61, 0x00, // ## # + 0x33, 0x00, // ## ## + 0x12, 0x00, // # # + 0x12, 0x00, // # # + 0x08, 0x00, // # + 0x0C, 0x00, // ## + 0x0C, 0x00, // ## + 0x0C, 0x00, // ## + 0x0C, 0x00, // ## + 0x0C, 0x00, // ## + 0x0C, 0x00, // ## + 0x00, 0x00, // + + // @1710 'Z' (10 pixels wide) + 0xFF, 0x80, // ######### + 0x00, 0x80, // # + 0x01, 0x80, // ## + 0x01, 0x00, // # + 0x03, 0x00, // ## + 0x02, 0x00, // # + 0x02, 0x00, // # + 0xFF, 0x80, // ######### + 0x10, 0x00, // # + 0x30, 0x00, // ## + 0x30, 0x00, // ## + 0x60, 0x00, // ## + 0x40, 0x00, // # + 0x73, 0x80, // ### ### + 0xFF, 0x80, // ######### + + // @1740 '[' (10 pixels wide) + 0xFF, 0x80, // ######### + 0x8C, 0x00, // # ## + 0x8C, 0x00, // # ## + 0x8C, 0x00, // # ## + 0x8C, 0x00, // # ## + 0x8C, 0x00, // # ## + 0x8C, 0x00, // # ## + 0x88, 0x00, // # # + 0x8C, 0x00, // # ## + 0x8C, 0x00, // # ## + 0x8C, 0x00, // # ## + 0x8C, 0x00, // # ## + 0x8C, 0x00, // # ## + 0xFF, 0x80, // ######### + 0x7F, 0x80, // ######## + + // @1770 '\' (10 pixels wide) + 0x00, 0x00, // + 0x40, 0x00, // # + 0x40, 0x00, // # + 0x60, 0x00, // ## + 0x30, 0x00, // ## + 0x10, 0x00, // # + 0x10, 0x00, // # + 0x00, 0x00, // + 0x02, 0x00, // # + 0x02, 0x00, // # + 0x03, 0x00, // ## + 0x01, 0x00, // # + 0x01, 0x80, // ## + 0x00, 0x00, // + 0x00, 0x00, // + + // @1800 ']' (10 pixels wide) + 0xFF, 0x80, // ######### + 0x0C, 0x40, // ## # + 0x0C, 0x40, // ## # + 0x0C, 0x40, // ## # + 0x0C, 0x40, // ## # + 0x0C, 0x40, // ## # + 0x0C, 0x40, // ## # + 0x08, 0x40, // # # + 0x0C, 0x40, // ## # + 0x0C, 0x40, // ## # + 0x0C, 0x40, // ## # + 0x0C, 0x40, // ## # + 0x0C, 0x40, // ## # + 0x7F, 0xC0, // ######### + 0xFF, 0x80, // ######### + + // @1830 '^' (10 pixels wide) + 0x00, 0x00, // + 0x00, 0x00, // + 0x00, 0x00, // + 0x00, 0x00, // + 0x00, 0x00, // + 0x00, 0x00, // + 0x00, 0x00, // + 0x00, 0x00, // + 0x12, 0x00, // # # + 0x32, 0x00, // ## # + 0x33, 0x00, // ## ## + 0x61, 0x00, // ## # + 0x41, 0x80, // # ## + 0x00, 0x00, // + 0x00, 0x00, // + + // @1860 '_' (10 pixels wide) + 0x00, 0x00, // + 0x00, 0x00, // + 0x00, 0x00, // + 0x00, 0x00, // + 0x00, 0x00, // + 0x00, 0x00, // + 0x00, 0x00, // + 0x00, 0x00, // + 0x00, 0x00, // + 0x00, 0x00, // + 0x00, 0x00, // + 0x00, 0x00, // + 0x00, 0x00, // + 0x73, 0x80, // ### ### + 0xFF, 0x80, // ######### + + // @1890 '`' (10 pixels wide) + 0x00, 0x00, // + 0x40, 0x00, // # + 0x40, 0x00, // # + 0x60, 0x00, // ## + 0x30, 0x00, // ## + 0x10, 0x00, // # + 0x10, 0x00, // # + 0x00, 0x00, // + 0x00, 0x00, // + 0x00, 0x00, // + 0x00, 0x00, // + 0x00, 0x00, // + 0x00, 0x00, // + 0x00, 0x00, // + 0x00, 0x00, // + + // @1920 'a' (10 pixels wide) + 0xFF, 0x80, // ######### + 0x00, 0x40, // # + 0x00, 0x40, // # + 0x00, 0x40, // # + 0x00, 0x40, // # + 0x00, 0x40, // # + 0x00, 0x40, // # + 0xFF, 0x80, // ######### + 0x80, 0x40, // # # + 0x80, 0x40, // # # + 0x80, 0x40, // # # + 0x80, 0x40, // # # + 0x80, 0x40, // # # + 0xF3, 0xC0, // #### #### + 0x7F, 0x80, // ######## + + // @1950 'b' (10 pixels wide) + 0x00, 0x00, // + 0x80, 0x00, // # + 0x80, 0x00, // # + 0x80, 0x00, // # + 0x80, 0x00, // # + 0x80, 0x00, // # + 0x80, 0x00, // # + 0xFF, 0x80, // ######### + 0x80, 0x40, // # # + 0x80, 0x40, // # # + 0x80, 0x40, // # # + 0x80, 0x40, // # # + 0x80, 0x40, // # # + 0xF3, 0xC0, // #### #### + 0x7F, 0x80, // ######## + + // @1980 'c' (10 pixels wide) + 0x00, 0x00, // + 0x00, 0x00, // + 0x00, 0x00, // + 0x00, 0x00, // + 0x00, 0x00, // + 0x00, 0x00, // + 0x00, 0x00, // + 0xFF, 0x80, // ######### + 0x80, 0x00, // # + 0x80, 0x00, // # + 0x80, 0x00, // # + 0x80, 0x00, // # + 0x80, 0x00, // # + 0xF3, 0x80, // #### ### + 0x7F, 0x80, // ######## + + // @2010 'd' (10 pixels wide) + 0x00, 0x00, // + 0x00, 0x40, // # + 0x00, 0x40, // # + 0x00, 0x40, // # + 0x00, 0x40, // # + 0x00, 0x40, // # + 0x00, 0x40, // # + 0xFF, 0x80, // ######### + 0x80, 0x40, // # # + 0x80, 0x40, // # # + 0x80, 0x40, // # # + 0x80, 0x40, // # # + 0x80, 0x40, // # # + 0xF3, 0xC0, // #### #### + 0x7F, 0x80, // ######## + + // @2040 'e' (10 pixels wide) + 0xFF, 0x80, // ######### + 0x80, 0x40, // # # + 0x80, 0x40, // # # + 0x80, 0x40, // # # + 0x80, 0x40, // # # + 0x80, 0x40, // # # + 0x80, 0x40, // # # + 0xFF, 0x80, // ######### + 0x80, 0x00, // # + 0x80, 0x00, // # + 0x80, 0x00, // # + 0x80, 0x00, // # + 0x80, 0x00, // # + 0xF3, 0x80, // #### ### + 0x7F, 0x80, // ######## + + // @2070 'f' (10 pixels wide) + 0xFF, 0x80, // ######### + 0x80, 0x00, // # + 0x80, 0x00, // # + 0x80, 0x00, // # + 0x80, 0x00, // # + 0x80, 0x00, // # + 0x80, 0x00, // # + 0xF8, 0x00, // ##### + 0x80, 0x00, // # + 0x80, 0x00, // # + 0x80, 0x00, // # + 0x80, 0x00, // # + 0x80, 0x00, // # + 0x80, 0x00, // # + 0x00, 0x00, // + + // @2100 'g' (10 pixels wide) + 0xFF, 0x80, // ######### + 0x80, 0x40, // # # + 0x80, 0x40, // # # + 0x80, 0x40, // # # + 0x80, 0x40, // # # + 0x80, 0x40, // # # + 0x80, 0x40, // # # + 0xFF, 0x80, // ######### + 0x00, 0x40, // # + 0x00, 0x40, // # + 0x00, 0x40, // # + 0x00, 0x40, // # + 0x00, 0x40, // # + 0x73, 0xC0, // ### #### + 0xFF, 0x80, // ######### + + // @2130 'h' (10 pixels wide) + 0x00, 0x00, // + 0x80, 0x00, // # + 0x80, 0x00, // # + 0x80, 0x00, // # + 0x80, 0x00, // # + 0x80, 0x00, // # + 0x80, 0x00, // # + 0xFF, 0x80, // ######### + 0x80, 0x40, // # # + 0x80, 0x40, // # # + 0x80, 0x40, // # # + 0x80, 0x40, // # # + 0x80, 0x40, // # # + 0x80, 0x40, // # # + 0x00, 0x00, // + + // @2160 'i' (10 pixels wide) + 0xFF, 0x80, // ######### + 0x00, 0x00, // + 0x00, 0x00, // + 0x00, 0x00, // + 0x00, 0x00, // + 0x00, 0x00, // + 0x00, 0x00, // + 0x08, 0x00, // # + 0x0C, 0x00, // ## + 0x0C, 0x00, // ## + 0x0C, 0x00, // ## + 0x0C, 0x00, // ## + 0x0C, 0x00, // ## + 0x0C, 0x00, // ## + 0x00, 0x00, // + + // @2190 'j' (10 pixels wide) + 0xFF, 0x80, // ######### + 0x00, 0x00, // + 0x00, 0x00, // + 0x00, 0x00, // + 0x00, 0x00, // + 0x00, 0x00, // + 0x00, 0x00, // + 0x00, 0x40, // # + 0x00, 0x40, // # + 0x00, 0x40, // # + 0x00, 0x40, // # + 0x00, 0x40, // # + 0x00, 0x40, // # + 0x73, 0xC0, // ### #### + 0xFF, 0x80, // ######### + + // @2220 'k' (10 pixels wide) + 0x00, 0x00, // + 0x80, 0x80, // # # + 0x81, 0x80, // # ## + 0x81, 0x00, // # # + 0x83, 0x00, // # ## + 0x82, 0x00, // # # + 0x82, 0x00, // # # + 0xF8, 0x00, // ##### + 0x82, 0x00, // # # + 0x82, 0x00, // # # + 0x83, 0x00, // # ## + 0x81, 0x00, // # # + 0x81, 0x80, // # ## + 0x80, 0x00, // # + 0x00, 0x00, // + + // @2250 'l' (10 pixels wide) + 0x00, 0x00, // + 0x0C, 0x00, // ## + 0x0C, 0x00, // ## + 0x0C, 0x00, // ## + 0x0C, 0x00, // ## + 0x0C, 0x00, // ## + 0x0C, 0x00, // ## + 0x08, 0x00, // # + 0x0C, 0x00, // ## + 0x0C, 0x00, // ## + 0x0C, 0x00, // ## + 0x0C, 0x00, // ## + 0x0C, 0x00, // ## + 0x0C, 0x00, // ## + 0x00, 0x00, // + + // @2280 'm' (10 pixels wide) + 0x00, 0x00, // + 0x00, 0x00, // + 0x00, 0x00, // + 0x00, 0x00, // + 0x00, 0x00, // + 0x00, 0x00, // + 0x00, 0x00, // + 0xFF, 0x80, // ######### + 0x8C, 0x40, // # ## # + 0x8C, 0x40, // # ## # + 0x8C, 0x40, // # ## # + 0x8C, 0x40, // # ## # + 0x8C, 0x40, // # ## # + 0x8C, 0x40, // # ## # + 0x00, 0x00, // + + // @2310 'n' (10 pixels wide) + 0x00, 0x00, // + 0x00, 0x00, // + 0x00, 0x00, // + 0x00, 0x00, // + 0x00, 0x00, // + 0x00, 0x00, // + 0x00, 0x00, // + 0xFF, 0x80, // ######### + 0x80, 0x40, // # # + 0x80, 0x40, // # # + 0x80, 0x40, // # # + 0x80, 0x40, // # # + 0x80, 0x40, // # # + 0x80, 0x40, // # # + 0x00, 0x00, // + + // @2340 'o' (10 pixels wide) + 0x00, 0x00, // + 0x00, 0x00, // + 0x00, 0x00, // + 0x00, 0x00, // + 0x00, 0x00, // + 0x00, 0x00, // + 0x00, 0x00, // + 0xFF, 0x80, // ######### + 0x80, 0x40, // # # + 0x80, 0x40, // # # + 0x80, 0x40, // # # + 0x80, 0x40, // # # + 0x80, 0x40, // # # + 0xF3, 0xC0, // #### #### + 0x7F, 0x80, // ######## + + // @2370 'p' (10 pixels wide) + 0xFF, 0x80, // ######### + 0x80, 0x40, // # # + 0x80, 0x40, // # # + 0x80, 0x40, // # # + 0x80, 0x40, // # # + 0x80, 0x40, // # # + 0x80, 0x40, // # # + 0xFF, 0x80, // ######### + 0x80, 0x00, // # + 0x80, 0x00, // # + 0x80, 0x00, // # + 0x80, 0x00, // # + 0x80, 0x00, // # + 0x80, 0x00, // # + 0x00, 0x00, // + + // @2400 'q' (10 pixels wide) + 0xFF, 0x80, // ######### + 0x80, 0x40, // # # + 0x80, 0x40, // # # + 0x80, 0x40, // # # + 0x80, 0x40, // # # + 0x80, 0x40, // # # + 0x80, 0x40, // # # + 0xFF, 0x80, // ######### + 0x00, 0x40, // # + 0x00, 0x40, // # + 0x00, 0x40, // # + 0x00, 0x40, // # + 0x00, 0x40, // # + 0x00, 0x40, // # + 0x00, 0x00, // + + // @2430 'r' (10 pixels wide) + 0x00, 0x00, // + 0x00, 0x00, // + 0x00, 0x00, // + 0x00, 0x00, // + 0x00, 0x00, // + 0x00, 0x00, // + 0x00, 0x00, // + 0xFF, 0x80, // ######### + 0x80, 0x00, // # + 0x80, 0x00, // # + 0x80, 0x00, // # + 0x80, 0x00, // # + 0x80, 0x00, // # + 0x80, 0x00, // # + 0x00, 0x00, // + + // @2460 's' (10 pixels wide) + 0xFF, 0x80, // ######### + 0x80, 0x00, // # + 0x80, 0x00, // # + 0x80, 0x00, // # + 0x80, 0x00, // # + 0x80, 0x00, // # + 0x80, 0x00, // # + 0xFF, 0x80, // ######### + 0x00, 0x40, // # + 0x00, 0x40, // # + 0x00, 0x40, // # + 0x00, 0x40, // # + 0x00, 0x40, // # + 0x73, 0xC0, // ### #### + 0xFF, 0x80, // ######### + + // @2490 't' (10 pixels wide) + 0x00, 0x00, // + 0x0C, 0x00, // ## + 0x0C, 0x00, // ## + 0x0C, 0x00, // ## + 0x0C, 0x00, // ## + 0x0C, 0x00, // ## + 0x0C, 0x00, // ## + 0xFF, 0x80, // ######### + 0x0C, 0x00, // ## + 0x0C, 0x00, // ## + 0x0C, 0x00, // ## + 0x0C, 0x00, // ## + 0x0C, 0x00, // ## + 0x0C, 0x00, // ## + 0x00, 0x00, // + + // @2520 'u' (10 pixels wide) + 0x00, 0x00, // + 0x00, 0x00, // + 0x00, 0x00, // + 0x00, 0x00, // + 0x00, 0x00, // + 0x00, 0x00, // + 0x00, 0x00, // + 0x80, 0x40, // # # + 0x80, 0x40, // # # + 0x80, 0x40, // # # + 0x80, 0x40, // # # + 0x80, 0x40, // # # + 0x80, 0x40, // # # + 0xF3, 0xC0, // #### #### + 0x7F, 0x80, // ######## + + // @2550 'v' (10 pixels wide) + 0x00, 0x00, // + 0x00, 0x00, // + 0x00, 0x00, // + 0x00, 0x00, // + 0x00, 0x00, // + 0x00, 0x00, // + 0x00, 0x00, // + 0x00, 0x40, // # + 0x02, 0x40, // # # + 0x02, 0x40, // # # + 0x03, 0x40, // ## # + 0x01, 0x40, // # # + 0x01, 0xC0, // ### + 0x00, 0x40, // # + 0x00, 0x00, // + + // @2580 'w' (10 pixels wide) + 0x00, 0x00, // + 0x00, 0x00, // + 0x00, 0x00, // + 0x00, 0x00, // + 0x00, 0x00, // + 0x00, 0x00, // + 0x00, 0x00, // + 0x80, 0x40, // # # + 0x92, 0x40, // # # # # + 0xB2, 0x40, // # ## # # + 0xB3, 0x40, // # ## ## # + 0xE1, 0x40, // ### # # + 0xC1, 0xC0, // ## ### + 0x80, 0x40, // # # + 0x00, 0x00, // + + // @2610 'x' (10 pixels wide) + 0x00, 0x00, // + 0x40, 0x80, // # # + 0x41, 0x80, // # ## + 0x61, 0x00, // ## # + 0x33, 0x00, // ## ## + 0x12, 0x00, // # # + 0x12, 0x00, // # # + 0x00, 0x00, // + 0x12, 0x00, // # # + 0x32, 0x00, // ## # + 0x33, 0x00, // ## ## + 0x61, 0x00, // ## # + 0x41, 0x80, // # ## + 0x00, 0x00, // + 0x00, 0x00, // + + // @2640 'y' (10 pixels wide) + 0x00, 0x00, // + 0x80, 0x40, // # # + 0x80, 0x40, // # # + 0x80, 0x40, // # # + 0x80, 0x40, // # # + 0x80, 0x40, // # # + 0x80, 0x40, // # # + 0xFF, 0x80, // ######### + 0x00, 0x40, // # + 0x00, 0x40, // # + 0x00, 0x40, // # + 0x00, 0x40, // # + 0x00, 0x40, // # + 0x73, 0xC0, // ### #### + 0xFF, 0x80, // ######### + + // @2670 'z' (10 pixels wide) + 0xFF, 0x80, // ######### + 0x00, 0x80, // # + 0x01, 0x80, // ## + 0x01, 0x00, // # + 0x03, 0x00, // ## + 0x02, 0x00, // # + 0x02, 0x00, // # + 0x00, 0x00, // + 0x10, 0x00, // # + 0x30, 0x00, // ## + 0x30, 0x00, // ## + 0x60, 0x00, // ## + 0x40, 0x00, // # + 0x73, 0x80, // ### ### + 0xFF, 0x80, // ######### + + // @2700 '{' (10 pixels wide) + 0xFF, 0x80, // ######### + 0x80, 0x00, // # + 0x80, 0x00, // # + 0x80, 0x00, // # + 0x80, 0x00, // # + 0x80, 0x00, // # + 0x80, 0x00, // # + 0xF8, 0x00, // ##### + 0x80, 0x00, // # + 0x80, 0x00, // # + 0x80, 0x00, // # + 0x80, 0x00, // # + 0x80, 0x00, // # + 0xF3, 0x80, // #### ### + 0x7F, 0x80, // ######## + + // @2730 '|' (10 pixels wide) + 0x00, 0x00, // + 0x0C, 0x00, // ## + 0x0C, 0x00, // ## + 0x0C, 0x00, // ## + 0x0C, 0x00, // ## + 0x0C, 0x00, // ## + 0x0C, 0x00, // ## + 0x08, 0x00, // # + 0x0C, 0x00, // ## + 0x0C, 0x00, // ## + 0x0C, 0x00, // ## + 0x0C, 0x00, // ## + 0x0C, 0x00, // ## + 0x0C, 0x00, // ## + 0x00, 0x00, // + + // @2760 '}' (10 pixels wide) + 0xFF, 0x80, // ######### + 0x00, 0x40, // # + 0x00, 0x40, // # + 0x00, 0x40, // # + 0x00, 0x40, // # + 0x00, 0x40, // # + 0x00, 0x40, // # + 0x07, 0x80, // #### + 0x00, 0x40, // # + 0x00, 0x40, // # + 0x00, 0x40, // # + 0x00, 0x40, // # + 0x00, 0x40, // # + 0x73, 0xC0, // ### #### + 0xFF, 0x80, // ######### + + // @2790 '~' (10 pixels wide) + 0x00, 0x00, // + 0xC0, 0x00, // ## + 0xC0, 0x00, // ## + 0xE0, 0x00, // ### + 0xB0, 0x00, // # ## + 0x90, 0x00, // # # + 0x90, 0x00, // # # + 0x00, 0x40, // # + 0x02, 0x40, // # # + 0x02, 0x40, // # # + 0x03, 0x40, // ## # + 0x01, 0x40, // # # + 0x01, 0xC0, // ### + 0x00, 0x40, // # + 0x00, 0x00, // +}; + +// Character descriptors for LCD 14pt +// { [Char width in bits], [Offset into lCD_14ptCharBitmaps in bytes] } +const FONT_CHAR_INFO lCD_14ptDescriptors[] = +{ + {10, 0}, // ! + {10, 30}, // " + {10, 60}, // # + {10, 90}, // $ + {10, 120}, // % + {10, 150}, // & + {10, 180}, // ' + {10, 210}, // ( + {10, 240}, // ) + {10, 270}, // * + {10, 300}, // + + {10, 330}, // , + {10, 360}, // - + {10, 390}, // . + {10, 420}, // / + {10, 450}, // 0 + {10, 480}, // 1 + {10, 510}, // 2 + {10, 540}, // 3 + {10, 570}, // 4 + {10, 600}, // 5 + {10, 630}, // 6 + {10, 660}, // 7 + {10, 690}, // 8 + {10, 720}, // 9 + {10, 750}, // : + {10, 780}, // ; + {10, 810}, // < + {10, 840}, // = + {10, 870}, // > + {10, 900}, // ? + {10, 930}, // @ + {10, 960}, // A + {10, 990}, // B + {10, 1020}, // C + {10, 1050}, // D + {10, 1080}, // E + {10, 1110}, // F + {10, 1140}, // G + {10, 1170}, // H + {10, 1200}, // I + {10, 1230}, // J + {10, 1260}, // K + {10, 1290}, // L + {10, 1320}, // M + {10, 1350}, // N + {10, 1380}, // O + {10, 1410}, // P + {10, 1440}, // Q + {10, 1470}, // R + {10, 1500}, // S + {10, 1530}, // T + {10, 1560}, // U + {10, 1590}, // V + {10, 1620}, // W + {10, 1650}, // X + {10, 1680}, // Y + {10, 1710}, // Z + {10, 1740}, // [ + {10, 1770}, // '\' + {10, 1800}, // ] + {10, 1830}, // ^ + {10, 1860}, // _ + {10, 1890}, // ` + {10, 1920}, // a + {10, 1950}, // b + {10, 1980}, // c + {10, 2010}, // d + {10, 2040}, // e + {10, 2070}, // f + {10, 2100}, // g + {10, 2130}, // h + {10, 2160}, // i + {10, 2190}, // j + {10, 2220}, // k + {10, 2250}, // l + {10, 2280}, // m + {10, 2310}, // n + {10, 2340}, // o + {10, 2370}, // p + {10, 2400}, // q + {10, 2430}, // r + {10, 2460}, // s + {10, 2490}, // t + {10, 2520}, // u + {10, 2550}, // v + {10, 2580}, // w + {10, 2610}, // x + {10, 2640}, // y + {10, 2670}, // z + {10, 2700}, // { + {10, 2730}, // | + {10, 2760}, // } + {10, 2790}, // ~ +}; + +// Font information for LCD 14pt +const FONT_INFO lCD_14ptFontInfo = +{ + 15, // Character height + '!', // Start character + '~', // End character + 2, // Width, in pixels, of space character + lCD_14ptDescriptors, // Character descriptor array + lCD_14ptBitmaps, // Character bitmap array +}; diff --git a/src/DisplayApp/lcdfont14.h b/src/DisplayApp/lcdfont14.h new file mode 100644 index 00000000..271b19fd --- /dev/null +++ b/src/DisplayApp/lcdfont14.h @@ -0,0 +1,5 @@ +// Font data for LCD 14pt +extern const uint8_t lCD_14ptBitmaps[]; +extern const FONT_INFO lCD_14ptFontInfo; +extern const FONT_CHAR_INFO lCD_14ptDescriptors[]; + diff --git a/src/DisplayApp/lcdfont.c b/src/DisplayApp/lcdfont70.c similarity index 100% rename from src/DisplayApp/lcdfont.c rename to src/DisplayApp/lcdfont70.c diff --git a/src/DisplayApp/lcdfont.h b/src/DisplayApp/lcdfont70.h similarity index 100% rename from src/DisplayApp/lcdfont.h rename to src/DisplayApp/lcdfont70.h