From 4fc14c2712b149e37673ed3130377778336f6447 Mon Sep 17 00:00:00 2001 From: Sam Mohr Date: Tue, 9 Sep 2025 12:32:59 -0400 Subject: [PATCH 1/2] [Keyboard] Add the Clog (#23009) --- keyboards/clog/keyboard.json | 89 +++++++++++++++++++++++++ keyboards/clog/keymaps/default/config.h | 7 ++ keyboards/clog/keymaps/default/keymap.c | 35 ++++++++++ keyboards/clog/readme.md | 26 ++++++++ 4 files changed, 157 insertions(+) create mode 100644 keyboards/clog/keyboard.json create mode 100644 keyboards/clog/keymaps/default/config.h create mode 100644 keyboards/clog/keymaps/default/keymap.c create mode 100644 keyboards/clog/readme.md diff --git a/keyboards/clog/keyboard.json b/keyboards/clog/keyboard.json new file mode 100644 index 00000000000..6197a176e58 --- /dev/null +++ b/keyboards/clog/keyboard.json @@ -0,0 +1,89 @@ +{ + "keyboard_name": "The Clog", + "manufacturer": "S'mores", + "url": "https://github.com/smores56/clog", + "maintainer": "@smores56", + "usb": { + "vid": "0xBEEF", + "pid": "0x5051", + "device_version": "0.0.1" + }, + "development_board": "elite_c", + "features": { + "bootmagic": true, + "extrakey": true, + "mousekey": true, + "nkro": false + }, + "matrix_pins": { + "direct": [ + ["B2", "F7", "F6", "F5", "F4"], + ["B6", "B3", "B1", "D3", "D1"], + ["D0", "D4", "C6", "D7", "E6"], + ["B4", "B5", null, null, null] + ] + }, + "split": { + "bootmagic": { + "matrix": [4, 4] + }, + "enabled": true, + "matrix_pins": { + "right": { + "direct": [ + ["F4", "F5", "F6", "F7", "B2"], + ["D1", "D3", "B1", "B3", "B6"], + ["E6", "D7", "C6", "D4", "D0"], + ["B5", "B4", null, null, null] + ] + } + }, + "serial": { + "pin": "D2" + } + }, + "community_layouts": ["split_3x5_2"], + "layout_aliases": { + "LAYOUT": "LAYOUT_split_3x5_2" + }, + "layouts": { + "LAYOUT_split_3x5_2": { + "layout": [ + {"label": "L01", "matrix": [0, 0], "x": 0, "y": 2.27}, + {"label": "L02", "matrix": [0, 1], "x": 2, "y": 0.31}, + {"label": "L03", "matrix": [0, 2], "x": 3, "y": 0}, + {"label": "L04", "matrix": [0, 3], "x": 4, "y": 0.28}, + {"label": "L05", "matrix": [0, 4], "x": 5, "y": 0.42}, + {"label": "R01", "matrix": [4, 0], "x": 9, "y": 0.42}, + {"label": "R02", "matrix": [4, 1], "x": 10, "y": 0.28}, + {"label": "R03", "matrix": [4, 2], "x": 11, "y": 0}, + {"label": "R04", "matrix": [4, 3], "x": 12, "y": 0.31}, + {"label": "R05", "matrix": [4, 4], "x": 14, "y": 2.27}, + {"label": "L06", "matrix": [1, 0], "x": 0, "y": 2.27}, + {"label": "L07", "matrix": [1, 1], "x": 2, "y": 1.31}, + {"label": "L08", "matrix": [1, 2], "x": 3, "y": 1}, + {"label": "L09", "matrix": [1, 3], "x": 4, "y": 1.28}, + {"label": "L10", "matrix": [1, 4], "x": 5, "y": 1.42}, + {"label": "R06", "matrix": [5, 0], "x": 9, "y": 1.42}, + {"label": "R07", "matrix": [5, 1], "x": 10, "y": 1.28}, + {"label": "R08", "matrix": [5, 2], "x": 11, "y": 1}, + {"label": "R09", "matrix": [5, 3], "x": 12, "y": 1.31}, + {"label": "R10", "matrix": [5, 4], "x": 14, "y": 2.27}, + {"label": "L11", "matrix": [2, 0], "x": 0, "y": 3.27}, + {"label": "L12", "matrix": [2, 1], "x": 2, "y": 2.31}, + {"label": "L13", "matrix": [2, 2], "x": 3, "y": 2}, + {"label": "L14", "matrix": [2, 3], "x": 4, "y": 2.28}, + {"label": "L15", "matrix": [2, 4], "x": 5, "y": 2.42}, + {"label": "R11", "matrix": [6, 0], "x": 9, "y": 2.42}, + {"label": "R12", "matrix": [6, 1], "x": 10, "y": 2.28}, + {"label": "R13", "matrix": [6, 2], "x": 11, "y": 2}, + {"label": "R14", "matrix": [6, 3], "x": 12, "y": 2.31}, + {"label": "R15", "matrix": [6, 4], "x": 14, "y": 3.27}, + {"label": "L16", "matrix": [3, 0], "x": 5, "y": 3.9}, + {"label": "L17", "matrix": [3, 1], "x": 6, "y": 3.7}, + {"label": "R16", "matrix": [7, 0], "x": 8, "y": 3.7}, + {"label": "R17", "matrix": [7, 1], "x": 9, "y": 3.9} + ] + } + } +} diff --git a/keyboards/clog/keymaps/default/config.h b/keyboards/clog/keymaps/default/config.h new file mode 100644 index 00000000000..be257a59195 --- /dev/null +++ b/keyboards/clog/keymaps/default/config.h @@ -0,0 +1,7 @@ +// Copyright 2024 Sam Mohr (@smores56) +// SPDX-License-Identifier: GPL-2.0+ + +#pragma once + +// Defaults for usable home row mods +#define TAPPING_TERM 250 diff --git a/keyboards/clog/keymaps/default/keymap.c b/keyboards/clog/keymaps/default/keymap.c new file mode 100644 index 00000000000..98617d7de09 --- /dev/null +++ b/keyboards/clog/keymaps/default/keymap.c @@ -0,0 +1,35 @@ +// Copyright 2024 Sam Mohr (@smores56) +// SPDX-License-Identifier: GPL-2.0+ + +#include QMK_KEYBOARD_H + +/* Base layer 0 layout uses home row mods. See the following guide for details: + * https://precondition.github.io/home-row-mods + */ + +const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { + [0] = LAYOUT_split_3x5_2( + KC_Q, KC_W, KC_E, KC_R, KC_T, KC_Y, KC_U, KC_I, KC_O, KC_P, + CTL_T(KC_A),ALT_T(KC_S),GUI_T(KC_D),SFT_T(KC_F), KC_G, KC_H, SFT_T(KC_J),GUI_T(KC_K),ALT_T(KC_L),CTL_T(KC_SCLN), + KC_Z, KC_X, KC_C, KC_V, KC_B, KC_N, KC_M, KC_COMM, KC_DOT, KC_SLSH, + LT(2,KC_TAB), KC_ENT, KC_SPC, LT(1,KC_BSPC) + ), + [1] = LAYOUT_split_3x5_2( + KC_INS, KC_1, KC_2, KC_3, KC_VOLU, KC_HOME, KC_PGDN, KC_PGUP, KC_END, KC_DQUO, + KC_DEL, KC_4, KC_5, KC_6, KC_VOLD, KC_LEFT, KC_DOWN, KC_UP, KC_RGHT, KC_QUOT, + KC_CAPS, KC_7, KC_8, KC_9, KC_0, _______, _______, _______, _______, _______, + MO(3), QK_GESC, _______, _______ + ), + [2] = LAYOUT_split_3x5_2( + _______, KC_LBRC, KC_LCBR, KC_RCBR, _______, KC_CIRC, KC_LPRN, KC_RPRN, KC_RBRC, KC_TILD, + KC_EXLM, KC_AT, KC_HASH, KC_DLR, KC_PERC, KC_AMPR, KC_MINS, KC_EQL, KC_BSLS, KC_GRV, + _______, _______, _______, _______, _______, KC_ASTR, KC_UNDS, KC_PLUS, KC_PIPE, _______, + _______, _______, KC_DEL, MO(3) + ), + [3] = LAYOUT_split_3x5_2( + _______, KC_F1, KC_F2, KC_F3, KC_F10, _______, MS_WHLU, MS_WHLD, _______, QK_BOOT, + _______, KC_F4, KC_F5, KC_F6, KC_F11, MS_LEFT, MS_DOWN, MS_UP, MS_RGHT, KC_INS, + _______, KC_F7, KC_F8, KC_F9, KC_F12, _______, MS_BTN1, MS_BTN2, _______, _______, + _______, _______, _______, _______ + ) +}; diff --git a/keyboards/clog/readme.md b/keyboards/clog/readme.md new file mode 100644 index 00000000000..ddf7105669d --- /dev/null +++ b/keyboards/clog/readme.md @@ -0,0 +1,26 @@ +# The Clog + +This is the official firmware for a family of boards designed by [smores56](https://github.com/smores56), +the first of which was [the Clog](https://github.com/smores56/clog). This firmware works for the following boards: + +- [The Clog](https://github.com/smores56/clog) +- [The Clog V3](https://github.com/smores56/clog-v3) +- [The Steel Toe](https://github.com/smores56/steel-toe) +- [The Sephirette](https://github.com/smores56/sephirette) + +Make example for this keyboard (after setting up your build environment): + + make clog:default + +Flashing example for this keyboard: + + make clog:default:flash + +See the [build environment setup](https://docs.qmk.fm/#/getting_started_build_tools) and the [make instructions](https://docs.qmk.fm/#/getting_started_make_guide) for more information. Brand new to QMK? Start with our [Complete Newbs Guide](https://docs.qmk.fm/#/newbs). + +## Bootloader + +Enter the bootloader in 2 ways: + +* **Bootmagic reset**: Hold down the key at (0,0) in the matrix (usually the top left key or Escape) and plug in the keyboard +* **Keycode in layout**: Press the key mapped to `QK_BOOT` if it is available From eda39f435698e41a043a4a21f48a75253f2fb879 Mon Sep 17 00:00:00 2001 From: Ryan Date: Wed, 10 Sep 2025 02:34:33 +1000 Subject: [PATCH 2/2] Update default OLED font (#25565) --- drivers/oled/glcdfont.c | 264 +++++++++++++++++++++++++++++-- platforms/avr/drivers/glcdfont.c | 23 --- 2 files changed, 252 insertions(+), 35 deletions(-) delete mode 100644 platforms/avr/drivers/glcdfont.c diff --git a/drivers/oled/glcdfont.c b/drivers/oled/glcdfont.c index 0e201d71eef..40993896914 100644 --- a/drivers/oled/glcdfont.c +++ b/drivers/oled/glcdfont.c @@ -1,16 +1,256 @@ +// Copyright 2025 QMK +// SPDX-License-Identifier: GPL-2.0-or-later WITH BSD-2-Clause + #include "progmem.h" -// Helidox 8x6 font with QMK Firmware Logo -// Online editor: http://teripom.x0.com/ - +/** + * QMK 6x8 Font for LCD and OLED displays + * + * Derived from the first half of the Adafruit GFX Library font: + * https://github.com/adafruit/Adafruit-GFX-Library + * + * The first 128 characters match that of code page 437, the character set used by the original IBM PC, which includes all printable ASCII characters. + * Each byte represents a column of 8 pixels, with the least significant bit being the top of the glyph. + * + * A large 21x3 character QMK Firmware logo is encoded from 0x80-0x94, 0xA0-0xB4, and 0xC0-0xD4. + * 2x2 character OS logos for Apple, Windows, Linux and Android are encoded from 0x95-0x9C and 0xB5-0xBC. + */ static const unsigned char font[] PROGMEM = { - 0x07, 0x08, 0x7F, 0x08, 0x07, 0x00, 0x3E, 0x5B, 0x4F, 0x5B, 0x3E, 0x00, 0x3E, 0x6B, 0x4F, 0x6B, 0x3E, 0x00, 0x1C, 0x3E, 0x7C, 0x3E, 0x1C, 0x00, 0x18, 0x3C, 0x7E, 0x3C, 0x18, 0x00, 0x1C, 0x57, 0x7D, 0x57, 0x1C, 0x00, 0x1C, 0x5E, 0x7F, 0x5E, 0x1C, 0x00, 0x00, 0x18, 0x3C, 0x18, 0x00, 0x00, 0xFF, 0xE7, 0xC3, 0xE7, 0xFF, 0x00, 0x00, 0x18, 0x24, 0x18, 0x00, 0x00, 0xFF, 0xE7, 0xDB, 0xE7, 0xFF, 0x00, 0x30, 0x48, 0x3A, 0x06, 0x0E, 0x00, 0x26, 0x29, 0x79, 0x29, 0x26, 0x00, 0x40, 0x7F, 0x05, 0x05, 0x07, 0x00, 0x40, 0x7F, 0x05, 0x25, 0x3F, 0x00, 0x5A, 0x3C, 0xE7, 0x3C, 0x5A, 0x00, 0x7F, 0x3E, 0x1C, 0x1C, 0x08, 0x00, 0x08, 0x1C, 0x1C, 0x3E, 0x7F, 0x00, 0x14, 0x22, 0x7F, 0x22, 0x14, 0x00, 0x5F, 0x5F, 0x00, 0x5F, 0x5F, 0x00, 0x06, 0x09, 0x7F, 0x01, 0x7F, 0x00, 0x00, 0x66, 0x89, 0x95, 0x6A, 0x00, 0x60, 0x60, 0x60, 0x60, 0x60, 0x00, 0x94, 0xA2, 0xFF, 0xA2, 0x94, 0x00, 0x08, 0x04, 0x7E, 0x04, 0x08, 0x00, - 0x10, 0x20, 0x7E, 0x20, 0x10, 0x00, 0x08, 0x08, 0x2A, 0x1C, 0x08, 0x00, 0x08, 0x1C, 0x2A, 0x08, 0x08, 0x00, 0x1E, 0x10, 0x10, 0x10, 0x10, 0x00, 0x0C, 0x1E, 0x0C, 0x1E, 0x0C, 0x00, 0x30, 0x38, 0x3E, 0x38, 0x30, 0x00, 0x06, 0x0E, 0x3E, 0x0E, 0x06, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x5F, 0x00, 0x00, 0x00, 0x00, 0x07, 0x00, 0x07, 0x00, 0x00, 0x14, 0x7F, 0x14, 0x7F, 0x14, 0x00, 0x24, 0x2A, 0x7F, 0x2A, 0x12, 0x00, 0x23, 0x13, 0x08, 0x64, 0x62, 0x00, 0x36, 0x49, 0x56, 0x20, 0x50, 0x00, 0x00, 0x08, 0x07, 0x03, 0x00, 0x00, 0x00, 0x1C, 0x22, 0x41, 0x00, 0x00, 0x00, 0x41, 0x22, 0x1C, 0x00, 0x00, 0x2A, 0x1C, 0x7F, 0x1C, 0x2A, 0x00, 0x08, 0x08, 0x3E, 0x08, 0x08, 0x00, 0x00, 0x80, 0x70, 0x30, 0x00, 0x00, 0x08, 0x08, 0x08, 0x08, 0x08, 0x00, 0x00, 0x00, 0x60, 0x60, 0x00, 0x00, 0x20, 0x10, 0x08, 0x04, 0x02, 0x00, 0x3E, 0x51, 0x49, 0x45, 0x3E, 0x00, 0x00, 0x42, 0x7F, 0x40, 0x00, 0x00, - 0x72, 0x49, 0x49, 0x49, 0x46, 0x00, 0x21, 0x41, 0x49, 0x4D, 0x33, 0x00, 0x18, 0x14, 0x12, 0x7F, 0x10, 0x00, 0x27, 0x45, 0x45, 0x45, 0x39, 0x00, 0x3C, 0x4A, 0x49, 0x49, 0x31, 0x00, 0x41, 0x21, 0x11, 0x09, 0x07, 0x00, 0x36, 0x49, 0x49, 0x49, 0x36, 0x00, 0x46, 0x49, 0x49, 0x29, 0x1E, 0x00, 0x00, 0x00, 0x14, 0x00, 0x00, 0x00, 0x00, 0x40, 0x34, 0x00, 0x00, 0x00, 0x00, 0x08, 0x14, 0x22, 0x41, 0x00, 0x14, 0x14, 0x14, 0x14, 0x14, 0x00, 0x00, 0x41, 0x22, 0x14, 0x08, 0x00, 0x02, 0x01, 0x59, 0x09, 0x06, 0x00, 0x3E, 0x41, 0x5D, 0x59, 0x4E, 0x00, 0x7C, 0x12, 0x11, 0x12, 0x7C, 0x00, 0x7F, 0x49, 0x49, 0x49, 0x36, 0x00, 0x3E, 0x41, 0x41, 0x41, 0x22, 0x00, 0x7F, 0x41, 0x41, 0x41, 0x3E, 0x00, 0x7F, 0x49, 0x49, 0x49, 0x41, 0x00, 0x7F, 0x09, 0x09, 0x09, 0x01, 0x00, 0x3E, 0x41, 0x41, 0x51, 0x73, 0x00, 0x7F, 0x08, 0x08, 0x08, 0x7F, 0x00, 0x00, 0x41, 0x7F, 0x41, 0x00, 0x00, 0x20, 0x40, 0x41, 0x3F, 0x01, 0x00, - 0x7F, 0x08, 0x14, 0x22, 0x41, 0x00, 0x7F, 0x40, 0x40, 0x40, 0x40, 0x00, 0x7F, 0x02, 0x1C, 0x02, 0x7F, 0x00, 0x7F, 0x04, 0x08, 0x10, 0x7F, 0x00, 0x3E, 0x41, 0x41, 0x41, 0x3E, 0x00, 0x7F, 0x09, 0x09, 0x09, 0x06, 0x00, 0x3E, 0x41, 0x51, 0x21, 0x5E, 0x00, 0x7F, 0x09, 0x19, 0x29, 0x46, 0x00, 0x26, 0x49, 0x49, 0x49, 0x32, 0x00, 0x03, 0x01, 0x7F, 0x01, 0x03, 0x00, 0x3F, 0x40, 0x40, 0x40, 0x3F, 0x00, 0x1F, 0x20, 0x40, 0x20, 0x1F, 0x00, 0x3F, 0x40, 0x38, 0x40, 0x3F, 0x00, 0x63, 0x14, 0x08, 0x14, 0x63, 0x00, 0x03, 0x04, 0x78, 0x04, 0x03, 0x00, 0x61, 0x59, 0x49, 0x4D, 0x43, 0x00, 0x00, 0x7F, 0x41, 0x41, 0x41, 0x00, 0x02, 0x04, 0x08, 0x10, 0x20, 0x00, 0x00, 0x41, 0x41, 0x41, 0x7F, 0x00, 0x04, 0x02, 0x01, 0x02, 0x04, 0x00, 0x40, 0x40, 0x40, 0x40, 0x40, 0x00, 0x00, 0x03, 0x07, 0x08, 0x00, 0x00, 0x20, 0x54, 0x54, 0x78, 0x40, 0x00, 0x7F, 0x28, 0x44, 0x44, 0x38, 0x00, 0x38, 0x44, 0x44, 0x44, 0x28, 0x00, - 0x38, 0x44, 0x44, 0x28, 0x7F, 0x00, 0x38, 0x54, 0x54, 0x54, 0x18, 0x00, 0x00, 0x08, 0x7E, 0x09, 0x02, 0x00, 0x18, 0xA4, 0xA4, 0x9C, 0x78, 0x00, 0x7F, 0x08, 0x04, 0x04, 0x78, 0x00, 0x00, 0x44, 0x7D, 0x40, 0x00, 0x00, 0x20, 0x40, 0x40, 0x3D, 0x00, 0x00, 0x7F, 0x10, 0x28, 0x44, 0x00, 0x00, 0x00, 0x41, 0x7F, 0x40, 0x00, 0x00, 0x7C, 0x04, 0x78, 0x04, 0x78, 0x00, 0x7C, 0x08, 0x04, 0x04, 0x78, 0x00, 0x38, 0x44, 0x44, 0x44, 0x38, 0x00, 0xFC, 0x18, 0x24, 0x24, 0x18, 0x00, 0x18, 0x24, 0x24, 0x18, 0xFC, 0x00, 0x7C, 0x08, 0x04, 0x04, 0x08, 0x00, 0x48, 0x54, 0x54, 0x54, 0x24, 0x00, 0x04, 0x04, 0x3F, 0x44, 0x24, 0x00, 0x3C, 0x40, 0x40, 0x20, 0x7C, 0x00, 0x1C, 0x20, 0x40, 0x20, 0x1C, 0x00, 0x3C, 0x40, 0x30, 0x40, 0x3C, 0x00, 0x44, 0x28, 0x10, 0x28, 0x44, 0x00, 0x4C, 0x90, 0x90, 0x90, 0x7C, 0x00, 0x44, 0x64, 0x54, 0x4C, 0x44, 0x00, 0x00, 0x08, 0x36, 0x41, 0x00, 0x00, 0x00, 0x00, 0x77, 0x00, 0x00, 0x00, - 0x00, 0x41, 0x36, 0x08, 0x00, 0x00, 0x02, 0x01, 0x02, 0x04, 0x02, 0x00, 0x3C, 0x26, 0x23, 0x26, 0x3C, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x40, 0x40, 0x40, 0xF0, 0xF8, 0xF8, 0xFF, 0x38, 0xFF, 0xF8, 0xF8, 0x3F, 0xF8, 0xF8, 0xFF, 0x38, 0xFF, 0xF8, 0xF8, 0xF0, 0x40, 0x40, 0x40, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0xC0, 0xC0, 0xC0, 0x80, 0x00, 0x00, 0xC0, 0xC0, 0x80, 0x00, 0x00, 0x00, 0x80, 0xC0, 0xC0, 0x00, 0xC0, 0xC0, 0x00, 0x00, 0x80, 0xC0, 0xC0, 0x00, 0x00, 0x00, 0x00, 0x00, 0xC0, 0xC0, 0xC0, 0xC0, 0xC0, 0x00, 0xC0, 0xC0, 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, 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, 0x00, 0x00, 0x00, 0xC0, 0xF0, 0xF8, 0xFC, 0x3E, - 0x1E, 0x06, 0x01, 0x00, 0x00, 0x00, 0x7F, 0x41, 0x41, 0x41, 0x7F, 0x00, 0x7F, 0x41, 0x41, 0x41, 0x7F, 0x00, 0x00, 0x80, 0xC0, 0xE0, 0x7E, 0x5B, 0x4F, 0x5B, 0xFE, 0xC0, 0x00, 0x00, 0xC0, 0x00, 0xDC, 0xD7, 0xDE, 0xDE, 0xDE, 0xD7, 0xDC, 0x00, 0xC0, 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, 0x49, 0x49, 0x49, 0xFF, 0xFF, 0xFF, 0xFF, 0xE0, 0xDF, 0xBF, 0xBF, 0x00, 0xBF, 0xBF, 0xDF, 0xE0, 0xFF, 0xFF, 0xFF, 0xFF, 0x49, 0x49, 0x49, 0x00, 0x00, 0x00, 0x00, 0x00, 0x1F, 0x3F, 0x60, 0x60, 0xE0, 0xBF, 0x1F, 0x00, 0x7F, 0x7F, 0x07, 0x1E, 0x38, 0x1E, 0x07, 0x7F, 0x7F, 0x00, 0x7F, 0x7F, 0x0E, 0x1F, 0x3B, 0x71, 0x60, 0x00, 0x00, 0x00, 0x00, 0x00, 0x7F, 0x7F, 0x0C, 0x0C, 0x0C, 0x00, 0x7E, 0x7E, 0x00, 0x7F, 0x7E, 0x03, 0x03, 0x00, 0x7F, 0x7E, 0x03, 0x03, 0x7E, 0x7E, 0x03, 0x03, 0x7F, 0x7E, 0x00, 0x0F, - 0x3E, 0x70, 0x3C, 0x06, 0x3C, 0x70, 0x3E, 0x0F, 0x00, 0x32, 0x7B, 0x49, 0x49, 0x3F, 0x7E, 0x00, 0x7F, 0x7E, 0x03, 0x03, 0x00, 0x1E, 0x3F, 0x69, 0x69, 0x6F, 0x26, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x03, 0x0F, 0x1F, 0x3F, 0x3C, 0x78, 0x70, 0x60, 0x00, 0x00, 0x00, 0x7F, 0x41, 0x41, 0x41, 0x7F, 0x00, 0x7F, 0x41, 0x41, 0x41, 0x7F, 0x00, 0x30, 0x7B, 0x7F, 0x78, 0x30, 0x20, 0x20, 0x30, 0x78, 0x7F, 0x3B, 0x00, 0x03, 0x00, 0x0F, 0x7F, 0x0F, 0x0F, 0x0F, 0x7F, 0x0F, 0x00, 0x03, 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, 0x01, 0x01, 0x01, 0x07, 0x0F, 0x0F, 0x7F, 0x0F, 0x7F, 0x0F, 0x0F, 0x7E, 0x0F, 0x0F, 0x7F, 0x0F, 0x7F, 0x0F, 0x0F, 0x07, 0x01, 0x01, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x01, 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, 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, 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, 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, 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, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x07, 0x08, 0x7F, 0x08, 0x07, 0x00, // 0x00 NUL / Ψ + 0x3E, 0x6B, 0x4F, 0x6B, 0x3E, 0x00, // 0x01 SOH / ☺︎ + 0xC1, 0x94, 0xB0, 0x94, 0xC1, 0x00, // 0x02 STX / ☻ + 0x1C, 0x3E, 0x7C, 0x3E, 0x1C, 0x00, // 0x03 ETX / ♥︎ + 0x18, 0x3C, 0x7E, 0x3C, 0x18, 0x00, // 0x04 EOT / ♦︎ + 0x1C, 0x57, 0x7D, 0x57, 0x1C, 0x00, // 0x05 ENQ / ♣︎ + 0x1C, 0x5E, 0x7F, 0x5E, 0x1C, 0x00, // 0x06 ACK / ♠︎ + 0x00, 0x18, 0x3C, 0x18, 0x00, 0x00, // 0x07 BEL / • + 0xFF, 0xE7, 0xC3, 0xE7, 0xFF, 0x00, // 0x08 BS / ◘ + 0x00, 0x18, 0x24, 0x18, 0x00, 0x00, // 0x09 HT / ○ + 0xFF, 0xE7, 0xDB, 0xE7, 0xFF, 0x00, // 0x0A LF / ◙ + 0x30, 0x48, 0x3A, 0x06, 0x0E, 0x00, // 0x0B VT / ♂︎ + 0x26, 0x29, 0x79, 0x29, 0x26, 0x00, // 0x0C FF / ♀︎ + 0x40, 0x7F, 0x05, 0x05, 0x07, 0x00, // 0x0D CR / ♪ + 0x40, 0x7F, 0x05, 0x25, 0x3F, 0x00, // 0x0E SO / ♫ + 0x5A, 0x3C, 0xE7, 0x3C, 0x5A, 0x00, // 0x0F SI / ☼ + + 0x7F, 0x3E, 0x1C, 0x1C, 0x08, 0x00, // 0x10 DLE / ► + 0x08, 0x1C, 0x1C, 0x3E, 0x7F, 0x00, // 0x11 DC1 / ◄ + 0x14, 0x22, 0x7F, 0x22, 0x14, 0x00, // 0x12 DC2 / ↕︎ + 0x5F, 0x5F, 0x00, 0x5F, 0x5F, 0x00, // 0x13 DC3 / ‼︎ + 0x06, 0x09, 0x7F, 0x01, 0x7F, 0x00, // 0x14 DC4 / ¶ + 0x00, 0x66, 0x89, 0x95, 0x6A, 0x00, // 0x15 NAK / § + 0x60, 0x60, 0x60, 0x60, 0x60, 0x00, // 0x16 SYN / ▬ + 0x94, 0xA2, 0xFF, 0xA2, 0x94, 0x00, // 0x17 ETB / ↨ + 0x08, 0x04, 0x7E, 0x04, 0x08, 0x00, // 0x18 CAN / ↑ + 0x10, 0x20, 0x7E, 0x20, 0x10, 0x00, // 0x19 EM / ↓ + 0x08, 0x08, 0x2A, 0x1C, 0x08, 0x00, // 0x1A SUB / → + 0x08, 0x1C, 0x2A, 0x08, 0x08, 0x00, // 0x1B ESC / ← + 0x1E, 0x10, 0x10, 0x10, 0x10, 0x00, // 0x1C FS / ∟ + 0x0C, 0x1E, 0x0C, 0x1E, 0x0C, 0x00, // 0x1D GS / ↔︎ + 0x30, 0x38, 0x3E, 0x38, 0x30, 0x00, // 0x1E RS / ▲ + 0x06, 0x0E, 0x3E, 0x0E, 0x06, 0x00, // 0x1F US / ▼ + + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, // 0x20 Space + 0x00, 0x00, 0x5F, 0x00, 0x00, 0x00, // 0x21 ! + 0x00, 0x07, 0x00, 0x07, 0x00, 0x00, // 0x22 " + 0x14, 0x7F, 0x14, 0x7F, 0x14, 0x00, // 0x23 # + 0x24, 0x2A, 0x7F, 0x2A, 0x12, 0x00, // 0x24 $ + 0x23, 0x13, 0x08, 0x64, 0x62, 0x00, // 0x25 % + 0x36, 0x49, 0x56, 0x20, 0x50, 0x00, // 0x26 & + 0x00, 0x08, 0x07, 0x03, 0x00, 0x00, // 0x27 ' + 0x00, 0x1C, 0x22, 0x41, 0x00, 0x00, // 0x28 ( + 0x00, 0x41, 0x22, 0x1C, 0x00, 0x00, // 0x29 ) + 0x2A, 0x1C, 0x7F, 0x1C, 0x2A, 0x00, // 0x2A * + 0x08, 0x08, 0x3E, 0x08, 0x08, 0x00, // 0x2B + + 0x00, 0x80, 0x70, 0x30, 0x00, 0x00, // 0x2C , + 0x08, 0x08, 0x08, 0x08, 0x08, 0x00, // 0x2D - + 0x00, 0x00, 0x60, 0x60, 0x00, 0x00, // 0x2E . + 0x20, 0x10, 0x08, 0x04, 0x02, 0x00, // 0x2F / + + 0x3E, 0x51, 0x49, 0x45, 0x3E, 0x00, // 0x30 0 + 0x00, 0x42, 0x7F, 0x40, 0x00, 0x00, // 0x31 1 + 0x72, 0x49, 0x49, 0x49, 0x46, 0x00, // 0x32 2 + 0x21, 0x41, 0x49, 0x4D, 0x33, 0x00, // 0x33 3 + 0x18, 0x14, 0x12, 0x7F, 0x10, 0x00, // 0x34 4 + 0x27, 0x45, 0x45, 0x45, 0x39, 0x00, // 0x35 5 + 0x3C, 0x4A, 0x49, 0x49, 0x31, 0x00, // 0x36 6 + 0x41, 0x21, 0x11, 0x09, 0x07, 0x00, // 0x37 7 + 0x36, 0x49, 0x49, 0x49, 0x36, 0x00, // 0x38 8 + 0x46, 0x49, 0x49, 0x29, 0x1E, 0x00, // 0x39 9 + 0x00, 0x00, 0x14, 0x00, 0x00, 0x00, // 0x3A : + 0x00, 0x40, 0x34, 0x00, 0x00, 0x00, // 0x3B ; + 0x00, 0x08, 0x14, 0x22, 0x41, 0x00, // 0x3C < + 0x14, 0x14, 0x14, 0x14, 0x14, 0x00, // 0x3D = + 0x00, 0x41, 0x22, 0x14, 0x08, 0x00, // 0x3E > + 0x02, 0x01, 0x59, 0x09, 0x06, 0x00, // 0x3F ? + + 0x3E, 0x41, 0x5D, 0x59, 0x4E, 0x00, // 0x40 @ + 0x7C, 0x12, 0x11, 0x12, 0x7C, 0x00, // 0x41 A + 0x7F, 0x49, 0x49, 0x49, 0x36, 0x00, // 0x42 B + 0x3E, 0x41, 0x41, 0x41, 0x22, 0x00, // 0x43 C + 0x7F, 0x41, 0x41, 0x41, 0x3E, 0x00, // 0x44 D + 0x7F, 0x49, 0x49, 0x49, 0x41, 0x00, // 0x45 E + 0x7F, 0x09, 0x09, 0x09, 0x01, 0x00, // 0x46 F + 0x3E, 0x41, 0x41, 0x51, 0x73, 0x00, // 0x47 G + 0x7F, 0x08, 0x08, 0x08, 0x7F, 0x00, // 0x48 H + 0x00, 0x41, 0x7F, 0x41, 0x00, 0x00, // 0x49 I + 0x20, 0x40, 0x41, 0x3F, 0x01, 0x00, // 0x4A J + 0x7F, 0x08, 0x14, 0x22, 0x41, 0x00, // 0x4B K + 0x7F, 0x40, 0x40, 0x40, 0x40, 0x00, // 0x4C L + 0x7F, 0x02, 0x1C, 0x02, 0x7F, 0x00, // 0x4D M + 0x7F, 0x04, 0x08, 0x10, 0x7F, 0x00, // 0x4E N + 0x3E, 0x41, 0x41, 0x41, 0x3E, 0x00, // 0x4F O + + 0x7F, 0x09, 0x09, 0x09, 0x06, 0x00, // 0x50 P + 0x3E, 0x41, 0x51, 0x21, 0x5E, 0x00, // 0x51 Q + 0x7F, 0x09, 0x19, 0x29, 0x46, 0x00, // 0x52 R + 0x26, 0x49, 0x49, 0x49, 0x32, 0x00, // 0x53 S + 0x03, 0x01, 0x7F, 0x01, 0x03, 0x00, // 0x54 T + 0x3F, 0x40, 0x40, 0x40, 0x3F, 0x00, // 0x55 U + 0x1F, 0x20, 0x40, 0x20, 0x1F, 0x00, // 0x56 V + 0x3F, 0x40, 0x38, 0x40, 0x3F, 0x00, // 0x57 W + 0x63, 0x14, 0x08, 0x14, 0x63, 0x00, // 0x58 X + 0x03, 0x04, 0x78, 0x04, 0x03, 0x00, // 0x59 Y + 0x61, 0x59, 0x49, 0x4D, 0x43, 0x00, // 0x5A Z + 0x00, 0x7F, 0x41, 0x41, 0x41, 0x00, // 0x5B [ + 0x02, 0x04, 0x08, 0x10, 0x20, 0x00, // 0x5C Backslash + 0x00, 0x41, 0x41, 0x41, 0x7F, 0x00, // 0x5D ] + 0x04, 0x02, 0x01, 0x02, 0x04, 0x00, // 0x5E ^ + 0x40, 0x40, 0x40, 0x40, 0x40, 0x00, // 0x5F _ + + 0x00, 0x03, 0x07, 0x08, 0x00, 0x00, // 0x60 ` + 0x20, 0x54, 0x54, 0x78, 0x40, 0x00, // 0x61 a + 0x7F, 0x28, 0x44, 0x44, 0x38, 0x00, // 0x62 b + 0x38, 0x44, 0x44, 0x44, 0x28, 0x00, // 0x63 c + 0x38, 0x44, 0x44, 0x28, 0x7F, 0x00, // 0x64 d + 0x38, 0x54, 0x54, 0x54, 0x18, 0x00, // 0x65 e + 0x00, 0x08, 0x7E, 0x09, 0x02, 0x00, // 0x66 f + 0x18, 0xA4, 0xA4, 0x9C, 0x78, 0x00, // 0x67 g + 0x7F, 0x08, 0x04, 0x04, 0x78, 0x00, // 0x68 h + 0x00, 0x44, 0x7D, 0x40, 0x00, 0x00, // 0x69 i + 0x20, 0x40, 0x40, 0x3D, 0x00, 0x00, // 0x6A j + 0x7F, 0x10, 0x28, 0x44, 0x00, 0x00, // 0x6B k + 0x00, 0x41, 0x7F, 0x40, 0x00, 0x00, // 0x6C l + 0x7C, 0x04, 0x78, 0x04, 0x78, 0x00, // 0x6D m + 0x7C, 0x08, 0x04, 0x04, 0x78, 0x00, // 0x6E n + 0x38, 0x44, 0x44, 0x44, 0x38, 0x00, // 0x6F o + + 0xFC, 0x18, 0x24, 0x24, 0x18, 0x00, // 0x70 p + 0x18, 0x24, 0x24, 0x18, 0xFC, 0x00, // 0x71 q + 0x7C, 0x08, 0x04, 0x04, 0x08, 0x00, // 0x72 r + 0x48, 0x54, 0x54, 0x54, 0x24, 0x00, // 0x73 s + 0x04, 0x04, 0x3F, 0x44, 0x24, 0x00, // 0x74 t + 0x3C, 0x40, 0x40, 0x20, 0x7C, 0x00, // 0x75 u + 0x1C, 0x20, 0x40, 0x20, 0x1C, 0x00, // 0x76 v + 0x3C, 0x40, 0x30, 0x40, 0x3C, 0x00, // 0x77 w + 0x44, 0x28, 0x10, 0x28, 0x44, 0x00, // 0x78 x + 0x4C, 0x90, 0x90, 0x90, 0x7C, 0x00, // 0x79 y + 0x44, 0x64, 0x54, 0x4C, 0x44, 0x00, // 0x7A z + 0x00, 0x08, 0x36, 0x41, 0x00, 0x00, // 0x7B { + 0x00, 0x00, 0x77, 0x00, 0x00, 0x00, // 0x7C | + 0x00, 0x41, 0x36, 0x08, 0x00, 0x00, // 0x7D } + 0x02, 0x01, 0x02, 0x04, 0x02, 0x00, // 0x7E ~ + 0x3C, 0x26, 0x23, 0x26, 0x3C, 0x00, // 0x7F DEL / ⌂ + + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, // 0x80 QMK Logo Top 1 + 0x00, 0x00, 0x80, 0x80, 0xE0, 0xF0, // 0x81 QMK Logo Top 2 + 0xF0, 0xFC, 0x70, 0xFC, 0xF0, 0x7C, // 0x82 QMK Logo Top 3 + 0xF0, 0xFC, 0x70, 0xFC, 0xF0, 0xF0, // 0x83 QMK Logo Top 4 + 0xE0, 0x80, 0x80, 0x00, 0x00, 0x00, // 0x84 QMK Logo Top 5 + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, // 0x85 QMK Logo Top 6 + 0x80, 0x80, 0x80, 0x00, 0x00, 0x00, // 0x86 QMK Logo Top 7 + 0x80, 0x80, 0x00, 0x00, 0x00, 0x00, // 0x87 QMK Logo Top 8 + 0x00, 0x80, 0x80, 0x00, 0x80, 0x80, // 0x88 QMK Logo Top 9 + 0x00, 0x00, 0x00, 0x80, 0x80, 0x00, // 0x89 QMK Logo Top 10 + 0x00, 0x00, 0x00, 0x00, 0x80, 0x80, // 0x8A QMK Logo Top 11 + 0x80, 0x80, 0x80, 0x00, 0x80, 0x80, // 0x8B QMK Logo Top 12 + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, // 0x8C QMK Logo Top 13 + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, // 0x8D QMK Logo Top 14 + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, // 0x8E QMK Logo Top 15 + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, // 0x8F QMK Logo Top 16 + + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, // 0x90 QMK Logo Top 17 + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, // 0x91 QMK Logo Top 18 + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, // 0x92 QMK Logo Top 19 + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, // 0x93 QMK Logo Top 20 + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, // 0x94 QMK Logo Top 21 + 0x00, 0xC0, 0xF0, 0xF8, 0xFC, 0x3E, // 0x95 Apple Logo TL + 0x1E, 0x06, 0x01, 0x00, 0x00, 0x00, // 0x96 Apple Logo TR + 0x7F, 0x41, 0x41, 0x41, 0x7F, 0x00, // 0x97 Windows Logo TL + 0x7F, 0x41, 0x41, 0x41, 0x7F, 0x00, // 0x98 Windows Logo TR + 0x00, 0x80, 0xC0, 0xE0, 0x7E, 0x5B, // 0x99 Linux Logo TL + 0x4F, 0x5B, 0xFE, 0xC0, 0x00, 0x00, // 0x9A Linux Logo TR + 0xC0, 0x00, 0xDC, 0xD7, 0xDE, 0xDE, // 0x9B Android Logo TL + 0xDE, 0xD7, 0xDC, 0x00, 0xC0, 0x00, // 0x9C Android Logo TR + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, // 0x9D + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, // 0x9E + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, // 0x9F + + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, // 0xA0 QMK Logo Middle 1 + 0x00, 0x00, 0xAA, 0xAA, 0xFF, 0xFF, // 0xA1 QMK Logo Middle 2 + 0xFF, 0xFF, 0xE0, 0xDF, 0xDF, 0x00, // 0xA2 QMK Logo Middle 3 + 0xDF, 0xDF, 0xE0, 0xFF, 0xFF, 0xFF, // 0xA3 QMK Logo Middle 4 + 0xFF, 0xAA, 0xAA, 0x00, 0x00, 0x00, // 0xA4 QMK Logo Middle 5 + 0x00, 0x00, 0x00, 0x00, 0x3E, 0x7F, // 0xA5 QMK Logo Middle 6 + 0xC1, 0xC1, 0xC1, 0x7F, 0x3E, 0x00, // 0xA6 QMK Logo Middle 7 + 0xFF, 0xFF, 0x0F, 0x3C, 0x78, 0x3C, // 0xA7 QMK Logo Middle 8 + 0x0F, 0xFF, 0xFF, 0x00, 0xFF, 0xFF, // 0xA8 QMK Logo Middle 9 + 0x1C, 0x3E, 0x77, 0xE3, 0xC1, 0x00, // 0xA9 QMK Logo Middle 10 + 0x00, 0x00, 0x00, 0x00, 0xFF, 0xFF, // 0xAA QMK Logo Middle 11 + 0x19, 0x19, 0x19, 0x00, 0xFD, 0xFD, // 0xAB QMK Logo Middle 12 + 0x00, 0xFE, 0xFC, 0x06, 0x06, 0x00, // 0xAC QMK Logo Middle 13 + 0xFE, 0xFC, 0x06, 0x06, 0xFC, 0xFC, // 0xAD QMK Logo Middle 14 + 0x06, 0x06, 0xFE, 0xFC, 0x00, 0x1E, // 0xAE QMK Logo Middle 15 + 0x7C, 0xE0, 0x78, 0x0C, 0x78, 0xE0, // 0xAF QMK Logo Middle 16 + + 0x7C, 0x1E, 0x00, 0x64, 0xF6, 0x92, // 0xB0 QMK Logo Middle 17 + 0x92, 0x7E, 0xFC, 0x00, 0xFE, 0xFC, // 0xB1 QMK Logo Middle 18 + 0x06, 0x06, 0x00, 0x3C, 0x7E, 0xD2, // 0xB2 QMK Logo Middle 19 + 0xD2, 0xDE, 0x4C, 0x00, 0x00, 0x00, // 0xB3 QMK Logo Middle 20 + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, // 0xB4 QMK Logo Middle 21 + 0x00, 0x03, 0x0F, 0x1F, 0x3F, 0x3C, // 0xB5 Apple Logo BL + 0x78, 0x70, 0x60, 0x00, 0x00, 0x00, // 0xB6 Apple Logo BR + 0x7F, 0x41, 0x41, 0x41, 0x7F, 0x00, // 0xB7 Windows Logo BL + 0x7F, 0x41, 0x41, 0x41, 0x7F, 0x00, // 0xB8 Windows Logo BR + 0x30, 0x7B, 0x7F, 0x78, 0x30, 0x20, // 0xB9 Linux Logo BL + 0x20, 0x30, 0x78, 0x7F, 0x3B, 0x00, // 0xBA Linux Logo BR + 0x03, 0x00, 0x0F, 0x7F, 0x0F, 0x0F, // 0xBB Android Logo BL + 0x0F, 0x7F, 0x0F, 0x00, 0x03, 0x00, // 0xBC Android Logo BR + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, // 0xBD + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, // 0xBE + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, // 0xBF + + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, // 0xC0 QMK Logo Bottom 1 + 0x00, 0x00, 0x00, 0x00, 0x03, 0x07, // 0xC1 QMK Logo Bottom 2 + 0x07, 0x1F, 0x07, 0x1F, 0x07, 0x1F, // 0xC2 QMK Logo Bottom 3 + 0x07, 0x1F, 0x07, 0x1F, 0x07, 0x07, // 0xC3 QMK Logo Bottom 4 + 0x03, 0x00, 0x00, 0x00, 0x00, 0x00, // 0xC4 QMK Logo Bottom 5 + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, // 0xC5 QMK Logo Bottom 6 + 0x00, 0x00, 0x01, 0x03, 0x02, 0x00, // 0xC6 QMK Logo Bottom 7 + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, // 0xC7 QMK Logo Bottom 8 + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, // 0xC8 QMK Logo Bottom 9 + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, // 0xC9 QMK Logo Bottom 10 + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, // 0xCA QMK Logo Bottom 11 + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, // 0xCB QMK Logo Bottom 12 + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, // 0xCC QMK Logo Bottom 13 + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, // 0xCD QMK Logo Bottom 14 + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, // 0xCE QMK Logo Bottom 15 + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, // 0xCF QMK Logo Bottom 16 + + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, // 0xD0 QMK Logo Bottom 17 + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, // 0xD1 QMK Logo Bottom 18 + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, // 0xD2 QMK Logo Bottom 19 + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, // 0xD3 QMK Logo Bottom 10 + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, // 0xD4 QMK Logo Bottom 21 + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, // 0xD5 + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, // 0xD6 + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, // 0xD7 + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, // 0xD8 + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, // 0xD9 + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, // 0xDA + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, // 0xDB + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, // 0xDC + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, // 0xDD + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, // 0xDE + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00 // 0xDF }; diff --git a/platforms/avr/drivers/glcdfont.c b/platforms/avr/drivers/glcdfont.c deleted file mode 100644 index 57a21965de6..00000000000 --- a/platforms/avr/drivers/glcdfont.c +++ /dev/null @@ -1,23 +0,0 @@ -// This is the 'classic' fixed-space bitmap font for Adafruit_GFX since 1.0. -// See gfxfont.h for newer custom bitmap font info. - -#include "progmem.h" - -// Standard ASCII 5x7 font - -static const unsigned char font[] PROGMEM = { - 0x00, 0x00, 0x00, 0x00, 0x00, 0x3E, 0x5B, 0x4F, 0x5B, 0x3E, 0x3E, 0x6B, 0x4F, 0x6B, 0x3E, 0x1C, 0x3E, 0x7C, 0x3E, 0x1C, 0x18, 0x3C, 0x7E, 0x3C, 0x18, 0x1C, 0x57, 0x7D, 0x57, 0x1C, 0x1C, 0x5E, 0x7F, 0x5E, 0x1C, 0x00, 0x18, 0x3C, 0x18, 0x00, 0xFF, 0xE7, 0xC3, 0xE7, 0xFF, 0x00, 0x18, 0x24, 0x18, 0x00, 0xFF, 0xE7, 0xDB, 0xE7, 0xFF, 0x30, 0x48, 0x3A, 0x06, 0x0E, 0x26, 0x29, 0x79, 0x29, 0x26, 0x40, 0x7F, 0x05, 0x05, 0x07, 0x40, 0x7F, 0x05, 0x25, 0x3F, 0x5A, 0x3C, 0xE7, 0x3C, 0x5A, 0x7F, 0x3E, 0x1C, 0x1C, 0x08, 0x08, 0x1C, 0x1C, 0x3E, 0x7F, 0x14, 0x22, 0x7F, 0x22, 0x14, 0x5F, 0x5F, 0x00, 0x5F, 0x5F, 0x06, 0x09, 0x7F, 0x01, 0x7F, 0x00, 0x66, 0x89, 0x95, 0x6A, 0x60, 0x60, 0x60, 0x60, 0x60, 0x94, 0xA2, 0xFF, 0xA2, 0x94, 0x08, 0x04, 0x7E, 0x04, 0x08, 0x10, 0x20, 0x7E, 0x20, 0x10, 0x08, 0x08, 0x2A, 0x1C, 0x08, 0x08, 0x1C, 0x2A, 0x08, 0x08, 0x1E, 0x10, 0x10, 0x10, 0x10, 0x0C, 0x1E, 0x0C, 0x1E, 0x0C, - 0x30, 0x38, 0x3E, 0x38, 0x30, 0x06, 0x0E, 0x3E, 0x0E, 0x06, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x5F, 0x00, 0x00, 0x00, 0x07, 0x00, 0x07, 0x00, 0x14, 0x7F, 0x14, 0x7F, 0x14, 0x24, 0x2A, 0x7F, 0x2A, 0x12, 0x23, 0x13, 0x08, 0x64, 0x62, 0x36, 0x49, 0x56, 0x20, 0x50, 0x00, 0x08, 0x07, 0x03, 0x00, 0x00, 0x1C, 0x22, 0x41, 0x00, 0x00, 0x41, 0x22, 0x1C, 0x00, 0x2A, 0x1C, 0x7F, 0x1C, 0x2A, 0x08, 0x08, 0x3E, 0x08, 0x08, 0x00, 0x80, 0x70, 0x30, 0x00, 0x08, 0x08, 0x08, 0x08, 0x08, 0x00, 0x00, 0x60, 0x60, 0x00, 0x20, 0x10, 0x08, 0x04, 0x02, 0x3E, 0x51, 0x49, 0x45, 0x3E, 0x00, 0x42, 0x7F, 0x40, 0x00, 0x72, 0x49, 0x49, 0x49, 0x46, 0x21, 0x41, 0x49, 0x4D, 0x33, 0x18, 0x14, 0x12, 0x7F, 0x10, 0x27, 0x45, 0x45, 0x45, 0x39, 0x3C, 0x4A, 0x49, 0x49, 0x31, 0x41, 0x21, 0x11, 0x09, 0x07, 0x36, 0x49, 0x49, 0x49, 0x36, 0x46, 0x49, 0x49, 0x29, 0x1E, 0x00, 0x00, 0x14, 0x00, 0x00, 0x00, 0x40, 0x34, 0x00, 0x00, - 0x00, 0x08, 0x14, 0x22, 0x41, 0x14, 0x14, 0x14, 0x14, 0x14, 0x00, 0x41, 0x22, 0x14, 0x08, 0x02, 0x01, 0x59, 0x09, 0x06, 0x3E, 0x41, 0x5D, 0x59, 0x4E, 0x7C, 0x12, 0x11, 0x12, 0x7C, 0x7F, 0x49, 0x49, 0x49, 0x36, 0x3E, 0x41, 0x41, 0x41, 0x22, 0x7F, 0x41, 0x41, 0x41, 0x3E, 0x7F, 0x49, 0x49, 0x49, 0x41, 0x7F, 0x09, 0x09, 0x09, 0x01, 0x3E, 0x41, 0x41, 0x51, 0x73, 0x7F, 0x08, 0x08, 0x08, 0x7F, 0x00, 0x41, 0x7F, 0x41, 0x00, 0x20, 0x40, 0x41, 0x3F, 0x01, 0x7F, 0x08, 0x14, 0x22, 0x41, 0x7F, 0x40, 0x40, 0x40, 0x40, 0x7F, 0x02, 0x1C, 0x02, 0x7F, 0x7F, 0x04, 0x08, 0x10, 0x7F, 0x3E, 0x41, 0x41, 0x41, 0x3E, 0x7F, 0x09, 0x09, 0x09, 0x06, 0x3E, 0x41, 0x51, 0x21, 0x5E, 0x7F, 0x09, 0x19, 0x29, 0x46, 0x26, 0x49, 0x49, 0x49, 0x32, 0x03, 0x01, 0x7F, 0x01, 0x03, 0x3F, 0x40, 0x40, 0x40, 0x3F, 0x1F, 0x20, 0x40, 0x20, 0x1F, 0x3F, 0x40, 0x38, 0x40, 0x3F, 0x63, 0x14, 0x08, 0x14, 0x63, 0x03, 0x04, 0x78, 0x04, 0x03, - 0x61, 0x59, 0x49, 0x4D, 0x43, 0x00, 0x7F, 0x41, 0x41, 0x41, 0x02, 0x04, 0x08, 0x10, 0x20, 0x00, 0x41, 0x41, 0x41, 0x7F, 0x04, 0x02, 0x01, 0x02, 0x04, 0x40, 0x40, 0x40, 0x40, 0x40, 0x00, 0x03, 0x07, 0x08, 0x00, 0x20, 0x54, 0x54, 0x78, 0x40, 0x7F, 0x28, 0x44, 0x44, 0x38, 0x38, 0x44, 0x44, 0x44, 0x28, 0x38, 0x44, 0x44, 0x28, 0x7F, 0x38, 0x54, 0x54, 0x54, 0x18, 0x00, 0x08, 0x7E, 0x09, 0x02, 0x18, 0xA4, 0xA4, 0x9C, 0x78, 0x7F, 0x08, 0x04, 0x04, 0x78, 0x00, 0x44, 0x7D, 0x40, 0x00, 0x20, 0x40, 0x40, 0x3D, 0x00, 0x7F, 0x10, 0x28, 0x44, 0x00, 0x00, 0x41, 0x7F, 0x40, 0x00, 0x7C, 0x04, 0x78, 0x04, 0x78, 0x7C, 0x08, 0x04, 0x04, 0x78, 0x38, 0x44, 0x44, 0x44, 0x38, 0xFC, 0x18, 0x24, 0x24, 0x18, 0x18, 0x24, 0x24, 0x18, 0xFC, 0x7C, 0x08, 0x04, 0x04, 0x08, 0x48, 0x54, 0x54, 0x54, 0x24, 0x04, 0x04, 0x3F, 0x44, 0x24, 0x3C, 0x40, 0x40, 0x20, 0x7C, 0x1C, 0x20, 0x40, 0x20, 0x1C, 0x3C, 0x40, 0x30, 0x40, 0x3C, - 0x44, 0x28, 0x10, 0x28, 0x44, 0x4C, 0x90, 0x90, 0x90, 0x7C, 0x44, 0x64, 0x54, 0x4C, 0x44, 0x00, 0x08, 0x36, 0x41, 0x00, 0x00, 0x00, 0x77, 0x00, 0x00, 0x00, 0x41, 0x36, 0x08, 0x00, 0x02, 0x01, 0x02, 0x04, 0x02, 0x3C, 0x26, 0x23, 0x26, 0x3C, 0x1E, 0xA1, 0xA1, 0x61, 0x12, 0x3A, 0x40, 0x40, 0x20, 0x7A, 0x38, 0x54, 0x54, 0x55, 0x59, 0x21, 0x55, 0x55, 0x79, 0x41, 0x22, 0x54, 0x54, 0x78, 0x42, // a-umlaut - 0x21, 0x55, 0x54, 0x78, 0x40, 0x20, 0x54, 0x55, 0x79, 0x40, 0x0C, 0x1E, 0x52, 0x72, 0x12, 0x39, 0x55, 0x55, 0x55, 0x59, 0x39, 0x54, 0x54, 0x54, 0x59, 0x39, 0x55, 0x54, 0x54, 0x58, 0x00, 0x00, 0x45, 0x7C, 0x41, 0x00, 0x02, 0x45, 0x7D, 0x42, 0x00, 0x01, 0x45, 0x7C, 0x40, 0x7D, 0x12, 0x11, 0x12, 0x7D, // A-umlaut - 0xF0, 0x28, 0x25, 0x28, 0xF0, 0x7C, 0x54, 0x55, 0x45, 0x00, 0x20, 0x54, 0x54, 0x7C, 0x54, 0x7C, 0x0A, 0x09, 0x7F, 0x49, 0x32, 0x49, 0x49, 0x49, 0x32, 0x3A, 0x44, 0x44, 0x44, 0x3A, // o-umlaut - 0x32, 0x4A, 0x48, 0x48, 0x30, 0x3A, 0x41, 0x41, 0x21, 0x7A, 0x3A, 0x42, 0x40, 0x20, 0x78, 0x00, 0x9D, 0xA0, 0xA0, 0x7D, 0x3D, 0x42, 0x42, 0x42, 0x3D, // O-umlaut - 0x3D, 0x40, 0x40, 0x40, 0x3D, 0x3C, 0x24, 0xFF, 0x24, 0x24, 0x48, 0x7E, 0x49, 0x43, 0x66, 0x2B, 0x2F, 0xFC, 0x2F, 0x2B, 0xFF, 0x09, 0x29, 0xF6, 0x20, 0xC0, 0x88, 0x7E, 0x09, 0x03, 0x20, 0x54, 0x54, 0x79, 0x41, 0x00, 0x00, 0x44, 0x7D, 0x41, 0x30, 0x48, 0x48, 0x4A, 0x32, 0x38, 0x40, 0x40, 0x22, 0x7A, 0x00, 0x7A, 0x0A, 0x0A, 0x72, 0x7D, 0x0D, 0x19, 0x31, 0x7D, 0x26, 0x29, 0x29, 0x2F, 0x28, 0x26, 0x29, 0x29, 0x29, 0x26, 0x30, 0x48, 0x4D, 0x40, 0x20, 0x38, 0x08, 0x08, 0x08, 0x08, 0x08, 0x08, 0x08, 0x08, 0x38, 0x2F, 0x10, 0xC8, 0xAC, 0xBA, 0x2F, 0x10, 0x28, 0x34, 0xFA, 0x00, 0x00, 0x7B, 0x00, 0x00, 0x08, 0x14, 0x2A, 0x14, 0x22, 0x22, 0x14, 0x2A, 0x14, 0x08, 0x55, 0x00, 0x55, 0x00, 0x55, // #176 (25% block) missing in old code - 0xAA, 0x55, 0xAA, 0x55, 0xAA, // 50% block - 0xFF, 0x55, 0xFF, 0x55, 0xFF, // 75% block - 0x00, 0x00, 0x00, 0xFF, 0x00, 0x10, 0x10, 0x10, 0xFF, 0x00, 0x14, 0x14, 0x14, 0xFF, 0x00, 0x10, 0x10, 0xFF, 0x00, 0xFF, 0x10, 0x10, 0xF0, 0x10, 0xF0, 0x14, 0x14, 0x14, 0xFC, 0x00, 0x14, 0x14, 0xF7, 0x00, 0xFF, 0x00, 0x00, 0xFF, 0x00, 0xFF, 0x14, 0x14, 0xF4, 0x04, 0xFC, 0x14, 0x14, 0x17, 0x10, 0x1F, 0x10, 0x10, 0x1F, 0x10, 0x1F, 0x14, 0x14, 0x14, 0x1F, 0x00, 0x10, 0x10, 0x10, 0xF0, 0x00, 0x00, 0x00, 0x00, 0x1F, 0x10, 0x10, 0x10, 0x10, 0x1F, 0x10, 0x10, 0x10, 0x10, 0xF0, 0x10, 0x00, 0x00, 0x00, 0xFF, 0x10, 0x10, 0x10, 0x10, 0x10, 0x10, 0x10, 0x10, 0x10, 0xFF, 0x10, 0x00, 0x00, 0x00, 0xFF, 0x14, 0x00, 0x00, 0xFF, 0x00, 0xFF, 0x00, 0x00, 0x1F, 0x10, 0x17, 0x00, 0x00, 0xFC, 0x04, 0xF4, 0x14, 0x14, 0x17, 0x10, 0x17, 0x14, 0x14, 0xF4, 0x04, 0xF4, 0x00, 0x00, 0xFF, 0x00, 0xF7, 0x14, 0x14, 0x14, 0x14, 0x14, 0x14, 0x14, 0xF7, 0x00, 0xF7, 0x14, 0x14, 0x14, 0x17, 0x14, 0x10, 0x10, 0x1F, 0x10, 0x1F, - 0x14, 0x14, 0x14, 0xF4, 0x14, 0x10, 0x10, 0xF0, 0x10, 0xF0, 0x00, 0x00, 0x1F, 0x10, 0x1F, 0x00, 0x00, 0x00, 0x1F, 0x14, 0x00, 0x00, 0x00, 0xFC, 0x14, 0x00, 0x00, 0xF0, 0x10, 0xF0, 0x10, 0x10, 0xFF, 0x10, 0xFF, 0x14, 0x14, 0x14, 0xFF, 0x14, 0x10, 0x10, 0x10, 0x1F, 0x00, 0x00, 0x00, 0x00, 0xF0, 0x10, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xF0, 0xF0, 0xF0, 0xF0, 0xF0, 0xFF, 0xFF, 0xFF, 0x00, 0x00, 0x00, 0x00, 0x00, 0xFF, 0xFF, 0x0F, 0x0F, 0x0F, 0x0F, 0x0F, 0x38, 0x44, 0x44, 0x38, 0x44, 0xFC, 0x4A, 0x4A, 0x4A, 0x34, // sharp-s or beta - 0x7E, 0x02, 0x02, 0x06, 0x06, 0x02, 0x7E, 0x02, 0x7E, 0x02, 0x63, 0x55, 0x49, 0x41, 0x63, 0x38, 0x44, 0x44, 0x3C, 0x04, 0x40, 0x7E, 0x20, 0x1E, 0x20, 0x06, 0x02, 0x7E, 0x02, 0x02, 0x99, 0xA5, 0xE7, 0xA5, 0x99, 0x1C, 0x2A, 0x49, 0x2A, 0x1C, 0x4C, 0x72, 0x01, 0x72, 0x4C, 0x30, 0x4A, 0x4D, 0x4D, 0x30, 0x30, 0x48, 0x78, 0x48, 0x30, 0xBC, 0x62, 0x5A, 0x46, 0x3D, 0x3E, 0x49, 0x49, 0x49, 0x00, 0x7E, 0x01, 0x01, 0x01, 0x7E, 0x2A, 0x2A, 0x2A, 0x2A, 0x2A, 0x44, 0x44, 0x5F, 0x44, 0x44, 0x40, 0x51, 0x4A, 0x44, 0x40, 0x40, 0x44, 0x4A, 0x51, 0x40, 0x00, 0x00, 0xFF, 0x01, 0x03, 0xE0, 0x80, 0xFF, 0x00, 0x00, 0x08, 0x08, 0x6B, 0x6B, 0x08, 0x36, 0x12, 0x36, 0x24, 0x36, 0x06, 0x0F, 0x09, 0x0F, 0x06, 0x00, 0x00, 0x18, 0x18, 0x00, 0x00, 0x00, 0x10, 0x10, 0x00, 0x30, 0x40, 0xFF, 0x01, 0x01, 0x00, 0x1F, 0x01, 0x01, 0x1E, 0x00, 0x19, 0x1D, 0x17, 0x12, 0x00, 0x3C, 0x3C, 0x3C, 0x3C, 0x00, 0x00, 0x00, 0x00, 0x00 // #255 NBSP -};