qmk_firmware

QMK firmware for my keyboards (Corne, Sweep Ferris) and trackball (Ploopy Adept)
Log | Files | Refs | Submodules | LICENSE

gfxfont.c (11002B)


      1 /*
      2 Copyright 2021 0xCB - Conor Burns
      3 
      4 This program is free software: you can redistribute it and/or modify
      5 it under the terms of the GNU General Public License as published by
      6 the Free Software Foundation, either version 2 of the License, or
      7 (at your option) any later version.
      8 
      9 This program is distributed in the hope that it will be useful,
     10 but WITHOUT ANY WARRANTY; without even the implied warranty of
     11 MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
     12 GNU General Public License for more details.
     13 
     14 You should have received a copy of the GNU General Public License
     15 along with this program.  If not, see <http://www.gnu.org/licenses/>.
     16 */
     17 #include "progmem.h"
     18 // clang-format off
     19 static const unsigned char font[] PROGMEM = {
     20     0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
     21     0x3E, 0x5B, 0x4F, 0x5B, 0x3E, 0x00,
     22     0x3E, 0x6B, 0x4F, 0x6B, 0x3E, 0x00,
     23     0x1C, 0x3E, 0x7C, 0x3E, 0x1C, 0x00,
     24     0x18, 0x3C, 0x7E, 0x3C, 0x18, 0x00,
     25     0x1C, 0x57, 0x7D, 0x57, 0x1C, 0x00,
     26     0x1C, 0x5E, 0x7F, 0x5E, 0x1C, 0x00,
     27     0x00, 0x18, 0x3C, 0x18, 0x00, 0x00,
     28     0xFF, 0xE7, 0xC3, 0xE7, 0xFF, 0x00,
     29     0x00, 0x18, 0x24, 0x18, 0x00, 0x00,
     30     0xFF, 0xE7, 0xDB, 0xE7, 0xFF, 0x00,
     31     0x30, 0x48, 0x3A, 0x06, 0x0E, 0x00,
     32     0x26, 0x29, 0x79, 0x29, 0x26, 0x00,
     33     0x40, 0x7F, 0x05, 0x05, 0x07, 0x00,
     34     0x40, 0x7F, 0x05, 0x25, 0x3F, 0x00,
     35     0x5A, 0x3C, 0xE7, 0x3C, 0x5A, 0x00,
     36     0x7F, 0x3E, 0x1C, 0x1C, 0x08, 0x00,
     37     0x08, 0x1C, 0x1C, 0x3E, 0x7F, 0x00,
     38     0x14, 0x22, 0x7F, 0x22, 0x14, 0x00,
     39     0x5F, 0x5F, 0x00, 0x5F, 0x5F, 0x00,
     40     0x06, 0x09, 0x7F, 0x01, 0x7F, 0x00,
     41     0x00, 0x66, 0x89, 0x95, 0x6A, 0x00,
     42     0x60, 0x60, 0x60, 0x60, 0x60, 0x00,
     43     0x94, 0xA2, 0xFF, 0xA2, 0x94, 0x00,
     44     0x08, 0x04, 0x7E, 0x04, 0x08, 0x00,
     45     0x10, 0x20, 0x7E, 0x20, 0x10, 0x00,
     46     0x08, 0x08, 0x2A, 0x1C, 0x08, 0x00,
     47     0x08, 0x1C, 0x2A, 0x08, 0x08, 0x00,
     48     0x1E, 0x10, 0x10, 0x10, 0x10, 0x00,
     49     0x0C, 0x1E, 0x0C, 0x1E, 0x0C, 0x00,
     50     0x30, 0x38, 0x3E, 0x38, 0x30, 0x00,
     51     0x06, 0x0E, 0x3E, 0x0E, 0x06, 0x00,
     52     0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
     53     0x00, 0x00, 0x5F, 0x00, 0x00, 0x00,
     54     0x00, 0x07, 0x00, 0x07, 0x00, 0x00,
     55     0x14, 0x7F, 0x14, 0x7F, 0x14, 0x00,
     56     0x24, 0x2A, 0x7F, 0x2A, 0x12, 0x00,
     57     0x23, 0x13, 0x08, 0x64, 0x62, 0x00,
     58     0x36, 0x49, 0x56, 0x20, 0x50, 0x00,
     59     0x00, 0x08, 0x07, 0x03, 0x00, 0x00,
     60     0x00, 0x1C, 0x22, 0x41, 0x00, 0x00,
     61     0x00, 0x41, 0x22, 0x1C, 0x00, 0x00,
     62     0x2A, 0x1C, 0x7F, 0x1C, 0x2A, 0x00,
     63     0x08, 0x08, 0x3E, 0x08, 0x08, 0x00,
     64     0x00, 0x80, 0x70, 0x30, 0x00, 0x00,
     65     0x08, 0x08, 0x08, 0x08, 0x08, 0x00,
     66     0x00, 0x00, 0x60, 0x60, 0x00, 0x00,
     67     0x20, 0x10, 0x08, 0x04, 0x02, 0x00,
     68     0x3E, 0x51, 0x49, 0x45, 0x3E, 0x00,
     69     0x00, 0x42, 0x7F, 0x40, 0x00, 0x00,
     70     0x72, 0x49, 0x49, 0x49, 0x46, 0x00,
     71     0x21, 0x41, 0x49, 0x4D, 0x33, 0x00,
     72     0x18, 0x14, 0x12, 0x7F, 0x10, 0x00,
     73     0x27, 0x45, 0x45, 0x45, 0x39, 0x00,
     74     0x3C, 0x4A, 0x49, 0x49, 0x31, 0x00,
     75     0x41, 0x21, 0x11, 0x09, 0x07, 0x00,
     76     0x36, 0x49, 0x49, 0x49, 0x36, 0x00,
     77     0x46, 0x49, 0x49, 0x29, 0x1E, 0x00,
     78     0x00, 0x00, 0x14, 0x00, 0x00, 0x00,
     79     0x00, 0x40, 0x34, 0x00, 0x00, 0x00,
     80     0x00, 0x08, 0x14, 0x22, 0x41, 0x00,
     81     0x14, 0x14, 0x14, 0x14, 0x14, 0x00,
     82     0x00, 0x41, 0x22, 0x14, 0x08, 0x00,
     83     0x02, 0x01, 0x59, 0x09, 0x06, 0x00,
     84     0x3E, 0x41, 0x5D, 0x59, 0x4E, 0x00,
     85     0x7C, 0x12, 0x11, 0x12, 0x7C, 0x00,
     86     0x7F, 0x49, 0x49, 0x49, 0x36, 0x00,
     87     0x3E, 0x41, 0x41, 0x41, 0x22, 0x00,
     88     0x7F, 0x41, 0x41, 0x41, 0x3E, 0x00,
     89     0x7F, 0x49, 0x49, 0x49, 0x41, 0x00,
     90     0x7F, 0x09, 0x09, 0x09, 0x01, 0x00,
     91     0x3E, 0x41, 0x41, 0x51, 0x73, 0x00,
     92     0x7F, 0x08, 0x08, 0x08, 0x7F, 0x00,
     93     0x00, 0x41, 0x7F, 0x41, 0x00, 0x00,
     94     0x20, 0x40, 0x41, 0x3F, 0x01, 0x00,
     95     0x7F, 0x08, 0x14, 0x22, 0x41, 0x00,
     96     0x7F, 0x40, 0x40, 0x40, 0x40, 0x00,
     97     0x7F, 0x02, 0x1C, 0x02, 0x7F, 0x00,
     98     0x7F, 0x04, 0x08, 0x10, 0x7F, 0x00,
     99     0x3E, 0x41, 0x41, 0x41, 0x3E, 0x00,
    100     0x7F, 0x09, 0x09, 0x09, 0x06, 0x00,
    101     0x3E, 0x41, 0x51, 0x21, 0x5E, 0x00,
    102     0x7F, 0x09, 0x19, 0x29, 0x46, 0x00,
    103     0x26, 0x49, 0x49, 0x49, 0x32, 0x00,
    104     0x03, 0x01, 0x7F, 0x01, 0x03, 0x00,
    105     0x3F, 0x40, 0x40, 0x40, 0x3F, 0x00,
    106     0x1F, 0x20, 0x40, 0x20, 0x1F, 0x00,
    107     0x3F, 0x40, 0x38, 0x40, 0x3F, 0x00,
    108     0x63, 0x14, 0x08, 0x14, 0x63, 0x00,
    109     0x03, 0x04, 0x78, 0x04, 0x03, 0x00,
    110     0x61, 0x59, 0x49, 0x4D, 0x43, 0x00,
    111     0x00, 0x7F, 0x41, 0x41, 0x41, 0x00,
    112     0x02, 0x04, 0x08, 0x10, 0x20, 0x00,
    113     0x00, 0x41, 0x41, 0x41, 0x7F, 0x00,
    114     0x04, 0x02, 0x01, 0x02, 0x04, 0x00,
    115     0x40, 0x40, 0x40, 0x40, 0x40, 0x00,
    116     0x00, 0x03, 0x07, 0x08, 0x00, 0x00,
    117     0x20, 0x54, 0x54, 0x78, 0x40, 0x00,
    118     0x7F, 0x28, 0x44, 0x44, 0x38, 0x00,
    119     0x38, 0x44, 0x44, 0x44, 0x28, 0x00,
    120     0x38, 0x44, 0x44, 0x28, 0x7F, 0x00,
    121     0x38, 0x54, 0x54, 0x54, 0x18, 0x00,
    122     0x00, 0x08, 0x7E, 0x09, 0x02, 0x00,
    123     0x18, 0x24, 0x24, 0x1C, 0x78, 0x00,
    124     0x7F, 0x08, 0x04, 0x04, 0x78, 0x00,
    125     0x00, 0x44, 0x7D, 0x40, 0x00, 0x00,
    126     0x20, 0x40, 0x40, 0x3D, 0x00, 0x00,
    127     0x7F, 0x10, 0x28, 0x44, 0x00, 0x00,
    128     0x00, 0x41, 0x7F, 0x40, 0x00, 0x00,
    129     0x7C, 0x04, 0x78, 0x04, 0x78, 0x00,
    130     0x7C, 0x08, 0x04, 0x04, 0x78, 0x00,
    131     0x38, 0x44, 0x44, 0x44, 0x38, 0x00,
    132     0xFC, 0x18, 0x24, 0x24, 0x18, 0x00,
    133     0x18, 0x24, 0x24, 0x18, 0xFC, 0x00,
    134     0x7C, 0x08, 0x04, 0x04, 0x08, 0x00,
    135     0x48, 0x54, 0x54, 0x54, 0x24, 0x00,
    136     0x04, 0x04, 0x3F, 0x44, 0x24, 0x00,
    137     0x3C, 0x40, 0x40, 0x20, 0x7C, 0x00,
    138     0x1C, 0x20, 0x40, 0x20, 0x1C, 0x00,
    139     0x3C, 0x40, 0x30, 0x40, 0x3C, 0x00,
    140     0x44, 0x28, 0x10, 0x28, 0x44, 0x00,
    141     0x4C, 0x10, 0x10, 0x10, 0x7C, 0x00,
    142     0x44, 0x64, 0x54, 0x4C, 0x44, 0x00,
    143     0x00, 0x08, 0x36, 0x41, 0x00, 0x00,
    144     0x00, 0x00, 0x77, 0x00, 0x00, 0x00,
    145     0x00, 0x41, 0x36, 0x08, 0x00, 0x00,
    146     0x02, 0x01, 0x02, 0x04, 0x02, 0x00,
    147     0x3C, 0x26, 0x23, 0x26, 0x3C, 0x00,
    148     0x00, 0xE0, 0xFC, 0x1E, 0x06, 0xC6,
    149     0xC6, 0x06, 0x1E, 0xFC, 0xE0, 0x00,
    150     0x00, 0x00, 0x60, 0xE0, 0x80, 0x00,
    151     0x00, 0x80, 0xE0, 0x60, 0x00, 0x00,
    152     0x00, 0x00, 0xE0, 0xF8, 0x3C, 0x0E,
    153     0x06, 0x06, 0x06, 0x0E, 0x0C, 0x00,
    154     0x00, 0x00, 0xFE, 0xFE, 0x86, 0x86,
    155     0x86, 0x86, 0x8C, 0x78, 0x70, 0x00,
    156     0x00, 0x0E, 0x0E, 0x06, 0x06, 0xFE,
    157     0xFE, 0x00, 0x00, 0x00, 0x00, 0x00,
    158     0x00, 0x0C, 0x8E, 0x86, 0x86, 0x86,
    159     0x86, 0x86, 0xCE, 0xFE, 0x7C, 0x00,
    160     0x00, 0x06, 0x06, 0x06, 0x06, 0x06,
    161     0x06, 0xE6, 0xE6, 0x3E, 0x3E, 0x00,
    162     0x01, 0x01, 0x01, 0x01, 0x01, 0x01,
    163     0x01, 0x01, 0x06, 0x78, 0x80, 0x00,
    164     0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
    165     0xE0, 0x1C, 0x02, 0x01, 0x04, 0x18,
    166     0x00, 0x00, 0x00, 0x02, 0x0C, 0x00,
    167     0x80, 0x80, 0x71, 0x02, 0x1C, 0xE0,
    168     0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
    169     0x00, 0x80, 0x78, 0x06, 0x01, 0x01,
    170     0x01, 0x01, 0x01, 0x01, 0x01, 0x01,
    171     0xF0, 0xF8, 0xF8, 0xF8, 0xF8, 0xF8,
    172     0x00, 0x00, 0xFC, 0xFC, 0xFC, 0xFC,
    173     0xFC, 0xFE, 0xFE, 0xFE, 0xFF, 0xFF,
    174     0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0x00,
    175     0xE0, 0xE0, 0xE0, 0xE0, 0xF0, 0xF0,
    176     0x00, 0x00, 0x40, 0xF0, 0xFC, 0xFF,
    177     0xFF, 0xFC, 0xF0, 0xC0, 0x00, 0x00,
    178     0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0x00,
    179     0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
    180     0x00, 0x07, 0x3F, 0x78, 0x60, 0x63,
    181     0x63, 0x60, 0x78, 0x3F, 0x07, 0x00,
    182     0x00, 0x00, 0x60, 0x79, 0x19, 0x06,
    183     0x06, 0x19, 0x79, 0x60, 0x00, 0x00,
    184     0x00, 0x00, 0x07, 0x1F, 0x3C, 0x70,
    185     0x60, 0x60, 0x60, 0x70, 0x30, 0x00,
    186     0x00, 0x00, 0x7F, 0x7F, 0x61, 0x61,
    187     0x61, 0x61, 0x31, 0x1E, 0x0E, 0x00,
    188     0x00, 0x60, 0x60, 0x60, 0x60, 0x7F,
    189     0x7F, 0x60, 0x60, 0x60, 0x60, 0x00,
    190     0x00, 0x30, 0x71, 0x61, 0x61, 0x61,
    191     0x61, 0x61, 0x73, 0x7F, 0x3E, 0x00,
    192     0x00, 0x00, 0x00, 0x00, 0x00, 0x7F,
    193     0x7F, 0x01, 0x01, 0x00, 0x00, 0x00,
    194     0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
    195     0x00, 0x00, 0x00, 0x00, 0x03, 0xBC,
    196     0x80, 0x80, 0x80, 0x80, 0x80, 0x80,
    197     0x87, 0x38, 0x40, 0x80, 0x08, 0x08,
    198     0x08, 0x04, 0x04, 0x02, 0x02, 0x01,
    199     0x00, 0x00, 0x80, 0x40, 0x38, 0x87,
    200     0x80, 0x80, 0x80, 0x80, 0x80, 0x80,
    201     0xBC, 0x03, 0x00, 0x00, 0x00, 0x00,
    202     0x7F, 0x7F, 0x7F, 0x7F, 0x7F, 0x7F,
    203     0x7F, 0x7F, 0x7F, 0x7F, 0x7F, 0x7F,
    204     0x00, 0x00, 0x7F, 0x7F, 0x7F, 0x7F,
    205     0x7F, 0x7F, 0x7F, 0x7F, 0x7F, 0x7F,
    206     0x7F, 0x7F, 0x7F, 0x7F, 0x7F, 0x00,
    207     0x00, 0x00, 0x00, 0x00, 0xC0, 0xF0,
    208     0xFC, 0xFE, 0xFC, 0xF8, 0xF9, 0xF3,
    209     0xF7, 0xFF, 0xFF, 0xFF, 0xFF, 0xFC,
    210     0xF0, 0xC0, 0x00, 0x00, 0x00, 0x00,
    211     0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
    212     0x70, 0xD0, 0x70, 0x00, 0x07, 0x05,
    213     0x07, 0x02, 0x02, 0x82, 0xC2, 0x42,
    214     0x7E, 0xC0, 0xC0, 0xC0, 0x40, 0x7E,
    215     0x42, 0xC2, 0x82, 0x02, 0x02, 0x07,
    216     0x05, 0x07, 0x00, 0x70, 0xD0, 0x70,
    217     0x00, 0x00, 0x00, 0x80, 0x40, 0x20,
    218     0x10, 0xC8, 0xC8, 0x84, 0x04, 0x02,
    219     0x02, 0x02, 0x02, 0xC2, 0xC2, 0xC2,
    220     0xC2, 0xC4, 0xC4, 0xC8, 0x88, 0x90,
    221     0x20, 0x40, 0x80, 0x00, 0x00, 0x00,
    222     0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
    223     0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
    224     0x01, 0xFD, 0x05, 0x04, 0x04, 0x04,
    225     0x1F, 0x30, 0x40, 0x87, 0x9F, 0x1F,
    226     0x01, 0x81, 0xFF, 0xFF, 0x00, 0x00,
    227     0x1E, 0x9E, 0x86, 0x40, 0x30, 0x1F,
    228     0x04, 0x04, 0x04, 0x05, 0xFD, 0x01,
    229     0x00, 0x0F, 0x70, 0x80, 0x00, 0x00,
    230     0x00, 0x00, 0x80, 0xE0, 0xF8, 0x3E,
    231     0x0F, 0x03, 0x00, 0xFF, 0xFF, 0x01,
    232     0x01, 0x01, 0x01, 0x01, 0x00, 0x00,
    233     0x00, 0x00, 0x80, 0x70, 0x0F, 0x00,
    234     0xFE, 0xFE, 0xFE, 0xFE, 0xFE, 0xFE,
    235     0xFE, 0xFE, 0xFE, 0xFE, 0xFE, 0xFE,
    236     0x00, 0x00, 0xFE, 0xFE, 0xFE, 0xFE,
    237     0xFE, 0xFE, 0xFE, 0xFE, 0xFE, 0xFE,
    238     0xFE, 0xFE, 0xFE, 0xFE, 0xFE, 0x00,
    239     0xC0, 0xF0, 0xFC, 0xFF, 0xFF, 0xFF,
    240     0xFF, 0xFF, 0xFF, 0x07, 0x03, 0x03,
    241     0x03, 0x03, 0x07, 0xFF, 0xFF, 0xFF,
    242     0xDF, 0x9F, 0x3F, 0x3C, 0x70, 0x40,
    243     0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
    244     0xC0, 0x5F, 0xD0, 0x90, 0x90, 0x90,
    245     0xFC, 0x06, 0x01, 0xF8, 0xFC, 0xFC,
    246     0xC0, 0xC0, 0xFF, 0xFF, 0x00, 0x00,
    247     0x3C, 0x3C, 0x30, 0x01, 0x06, 0xFC,
    248     0x90, 0x90, 0x90, 0xD0, 0x5F, 0xC0,
    249     0x00, 0xF0, 0x0E, 0x01, 0x00, 0x00,
    250     0x00, 0x00, 0x01, 0x03, 0x07, 0x1E,
    251     0x3C, 0xF0, 0xE0, 0xFF, 0xFF, 0x80,
    252     0x80, 0x80, 0x80, 0xC1, 0xC1, 0xFF,
    253     0x3E, 0x00, 0x01, 0x0E, 0xF0, 0x00,
    254     0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
    255     0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
    256     0x07, 0x05, 0x07, 0x00, 0x70, 0x50,
    257     0x70, 0x20, 0x20, 0x20, 0x21, 0x3F,
    258     0x01, 0x61, 0x9F, 0x9F, 0x61, 0x01,
    259     0x3F, 0x21, 0x20, 0x20, 0x20, 0x70,
    260     0x50, 0x70, 0x00, 0x07, 0x05, 0x07,
    261     0x00, 0x00, 0x00, 0x01, 0x02, 0x04,
    262     0x08, 0x10, 0x13, 0x23, 0x20, 0x40,
    263     0x40, 0x40, 0x40, 0x43, 0x43, 0x40,
    264     0x40, 0x20, 0x20, 0x10, 0x10, 0x08,
    265     0x04, 0x02, 0x01, 0x00, 0x00, 0x00,
    266     0x07, 0x07, 0x07, 0x07, 0x0F, 0x0F,
    267     0x0F, 0x1F, 0x1F, 0x1F, 0x1F, 0x1F,
    268     0x00, 0x00, 0x3F, 0x3F, 0x3F, 0x3F,
    269     0x3F, 0x7F, 0x7F, 0x7F, 0xFF, 0xFF,
    270     0x00, 0x80, 0xC0, 0x70, 0x7C, 0x3F,
    271     0x3F, 0x1F, 0x0F, 0x0F, 0x07, 0x07,
    272     0x07, 0x03, 0x03, 0x02, 0x00, 0x00,
    273     0x00, 0x00, 0x02, 0x03, 0x03, 0x07,
    274     0x07, 0x07, 0x0F, 0x0F, 0x1E, 0x3E,
    275     0x3C, 0x7C, 0x70, 0xC0, 0x80, 0x00,
    276 };
    277 // clang-format on