/* Copyright 2023 Dual Tachyon * https://github.com/DualTachyon * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. * You may obtain a copy of the License at * * http://www.apache.org/licenses/LICENSE-2.0 * * Unless required by applicable law or agreed to in writing, software * distributed under the License is distributed on an "AS IS" BASIS, * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. * See the License for the specific language governing permissions and * limitations under the License. */ #include "font.h" #if 0 #elif 0 #else const uint8_t gFontBigDigits[11][20] = { // // {/*0x00, 0x00,*/ 0xFC, 0xFE, 0xFE, 0x06, 0x86, 0xC6, 0xE6, 0xFE, 0xFE, 0xFC, /*0x00,*/ /*0x00, 0x00,*/ 0x3F, 0x7F, 0x7F, 0x67, 0x63, 0x61, 0x60, 0x7F, 0x7F, 0x3F, /*0x00*/}, {/*0x00, 0x00,*/ 0x00, 0x00, 0x18, 0x1C, 0xFE, 0xFE, 0xFE, 0x00, 0x00, 0x00, /*0x00,*/ /*0x00, 0x00,*/ 0x00, 0x00, 0x60, 0x60, 0x7F, 0x7F, 0x7F, 0x60, 0x60, 0x00, /*0x00*/}, {/*0x00, 0x00,*/ 0x1C, 0x1E, 0x1E, 0x06, 0x06, 0x06, 0x86, 0xFE, 0xFE, 0x7C, /*0x00,*/ /*0x00, 0x00,*/ 0x60, 0x70, 0x78, 0x7C, 0x6E, 0x67, 0x63, 0x61, 0x60, 0x60, /*0x00*/}, {/*0x00, 0x00,*/ 0x0C, 0x0E, 0x0E, 0x86, 0x86, 0x86, 0x86, 0xFE, 0xFE, 0x7C, /*0x00,*/ /*0x00, 0x00,*/ 0x30, 0x70, 0x70, 0x61, 0x61, 0x61, 0x61, 0x7F, 0x7F, 0x3E, /*0x00*/}, {/*0x00, 0x00,*/ 0x80, 0xC0, 0xE0, 0x70, 0x38, 0x1C, 0x0E, 0xFE, 0xFE, 0xFE, /*0x00,*/ /*0x00, 0x00,*/ 0x0F, 0x0F, 0x0F, 0x0C, 0x0C, 0x0C, 0x0C, 0x7F, 0x7F, 0x7F, /*0x00*/}, {/*0x00, 0x00,*/ 0xFE, 0xFE, 0xFE, 0xC6, 0xC6, 0xC6, 0xC6, 0xC6, 0xC6, 0x86, /*0x00,*/ /*0x00, 0x00,*/ 0x30, 0x70, 0x70, 0x60, 0x60, 0x60, 0x60, 0x7F, 0x7F, 0x3F, /*0x00*/}, {/*0x00, 0x00,*/ 0xF8, 0xFC, 0xFE, 0xC6, 0xC6, 0xC6, 0xC6, 0xC6, 0xC6, 0x80, /*0x00,*/ /*0x00, 0x00,*/ 0x3F, 0x7F, 0x7F, 0x60, 0x60, 0x60, 0x60, 0x7F, 0x7F, 0x3F, /*0x00*/}, {/*0x00, 0x00,*/ 0x0E, 0x0E, 0x0E, 0x06, 0x06, 0x86, 0xE6, 0xFE, 0x7E, 0x1E, /*0x00,*/ /*0x00, 0x00,*/ 0x00, 0x00, 0x00, 0x00, 0x7C, 0x7F, 0x7F, 0x03, 0x00, 0x00, /*0x00*/}, {/*0x00, 0x00,*/ 0x7C, 0xFE, 0xFE, 0x86, 0x86, 0x86, 0x86, 0xFE, 0xFE, 0x7C, /*0x00,*/ /*0x00, 0x00,*/ 0x3F, 0x7F, 0x7F, 0x61, 0x61, 0x61, 0x61, 0x7F, 0x7F, 0x3F, /*0x00*/}, {/*0x00, 0x00,*/ 0xFC, 0xFE, 0xFE, 0x06, 0x06, 0x06, 0x06, 0xFE, 0xFE, 0xFC, /*0x00,*/ /*0x00, 0x00,*/ 0x01, 0x63, 0x63, 0x63, 0x63, 0x63, 0x63, 0x7F, 0x3F, 0x1F, /*0x00*/}, {/*0x00, 0x00,*/ 0x00, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x00, /*0x00,*/ /*0x00, 0x00,*/ 0x00, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x00, /*0x00*/} }; #endif const uint8_t gFontSmall[95-1][6] = { // {0x00, 0x00, 0x00, 0x00, 0x00, 0x00}, // ' ' {0x00, 0x00, 0x5E, 0x00, 0x00, 0x00}, // '!'0 {0x00, 0x06, 0x00, 0x06, 0x00, 0x00}, // '"' {0x14, 0x3E, 0x14, 0x3E, 0x14, 0x00}, // '#' {0x26, 0x49, 0x7F, 0x49, 0x32, 0x00}, // '$' {0x63, 0x13, 0x08, 0x04, 0x62, 0x61}, // '%'0 {0x30, 0x4B, 0x4D, 0x55, 0x22, 0x50}, // '&' {0x00, 0x00, 0x07, 0x07, 0x00, 0x00}, // ''' {0x00, 0x1C, 0x22, 0x41, 0x00, 0x00}, // '(' {0x00, 0x41, 0x22, 0x1C, 0x00, 0x00}, // ')' {0x00, 0x2A, 0x1C, 0x1C, 0x2A, 0x00}, // '*' {0x08, 0x08, 0x3E, 0x08, 0x08, 0x00}, // '+'0 {0x00, 0x40, 0x60, 0x20, 0x00, 0x00}, // ',' {0x00, 0x08, 0x08, 0x08, 0x08, 0x00}, // '-'0 {0x00, 0x00, 0x60, 0x60, 0x00, 0x00}, // '.'0 {0x40, 0x20, 0x10, 0x08, 0x04, 0x02}, // '/'0 {0x3E, 0x41, 0x41, 0x41, 0x41, 0x3E}, // '0' {0x00, 0x40, 0x42, 0x7F, 0x40, 0x40}, // '1' {0x62, 0x51, 0x51, 0x49, 0x49, 0x46}, // '2' {0x22, 0x41, 0x49, 0x49, 0x49, 0x36}, // '3' {0x18, 0x14, 0x12, 0x11, 0x7F, 0x10}, // '4' {0x27, 0x45, 0x45, 0x45, 0x45, 0x39}, // '5' {0x3E, 0x49, 0x49, 0x49, 0x49, 0x32}, // '6' {0x01, 0x01, 0x71, 0x09, 0x05, 0x03}, // '7' {0x36, 0x49, 0x49, 0x49, 0x49, 0x36}, // '8' {0x46, 0x49, 0x49, 0x49, 0x29, 0x1E}, // '9' {0x00, 0x00, 0x6C, 0x6C, 0x00, 0x00}, // ':' {0x00, 0x40, 0x6C, 0x2C, 0x00, 0x00}, // ';' {0x08, 0x14, 0x22, 0x41, 0x00, 0x00}, // '<' {0x14, 0x14, 0x14, 0x14, 0x14, 0x00}, // '=' {0x00, 0x41, 0x22, 0x14, 0x08, 0x00}, // '>' {0x02, 0x01, 0x51, 0x09, 0x06, 0x00}, // '?' {0x30, 0x4A, 0x4A, 0x52, 0x3C, 0x00}, // '@' {0x7E, 0x09, 0x09, 0x09, 0x09, 0x7E}, // 'A' {0x7F, 0x49, 0x49, 0x49, 0x49, 0x36}, // 'B' {0x3E, 0x41, 0x41, 0x41, 0x41, 0x22}, // 'C' {0x7F, 0x41, 0x41, 0x41, 0x41, 0x3E}, // 'D' {0x7F, 0x49, 0x49, 0x49, 0x49, 0x41}, // 'E' {0x7F, 0x09, 0x09, 0x09, 0x09, 0x01}, // 'F' {0x3E, 0x41, 0x49, 0x49, 0x49, 0x3A}, // 'G' {0x7F, 0x08, 0x08, 0x08, 0x08, 0x7F}, // 'H' {0x41, 0x41, 0x7F, 0x41, 0x41, 0x00}, // 'I' {0x20, 0x41, 0x41, 0x3F, 0x01, 0x01}, // 'J' {0x7F, 0x08, 0x0C, 0x12, 0x21, 0x40}, // 'K' {0x7F, 0x40, 0x40, 0x40, 0x40, 0x40}, // 'L' {0x7F, 0x02, 0x04, 0x04, 0x02, 0x7F}, // 'M' {0x7F, 0x02, 0x04, 0x08, 0x10, 0x7F}, // 'N' {0x3E, 0x41, 0x41, 0x41, 0x41, 0x3E}, // 'O' {0x7F, 0x09, 0x09, 0x09, 0x09, 0x06}, // 'P' {0x3E, 0x41, 0x51, 0x61, 0x41, 0x3E}, // 'Q' {0x7F, 0x09, 0x09, 0x19, 0x29, 0x46}, // 'R' {0x26, 0x49, 0x49, 0x49, 0x49, 0x32}, // 'S' {0x01, 0x01, 0x7F, 0x01, 0x01, 0x00}, // 'T' {0x3F, 0x40, 0x40, 0x40, 0x40, 0x3F}, // 'U' {0x07, 0x38, 0x40, 0x40, 0x38, 0x07}, // 'V' {0x3F, 0x40, 0x30, 0x30, 0x40, 0x3F}, // 'W' {0x63, 0x14, 0x08, 0x08, 0x14, 0x63}, // 'X' {0x07, 0x08, 0x70, 0x08, 0x07, 0x00}, // 'Y' {0x61, 0x51, 0x49, 0x45, 0x43, 0x41}, // 'Z' {0x00, 0x7F, 0x41, 0x41, 0x00, 0x00}, // '[' {0x01, 0x02, 0x04, 0x08, 0x10, 0x60}, // '"\' {0x00, 0x00, 0x41, 0x41, 0x7F, 0x00}, // ']' {0x04, 0x02, 0x01, 0x02, 0x04, 0x00}, // '^' {0x40, 0x40, 0x40, 0x40, 0x40, 0x40}, // '_' {0x00, 0x03, 0x07, 0x06, 0x00, 0x00}, // '`' {0x20, 0x54, 0x54, 0x54, 0x78, 0x00}, // 'a' {0x7F, 0x44, 0x44, 0x44, 0x38, 0x00}, // 'b' {0x38, 0x44, 0x44, 0x44, 0x28, 0x00}, // 'c' {0x38, 0x44, 0x44, 0x44, 0x7F, 0x00}, // 'd' {0x38, 0x54, 0x54, 0x54, 0x48, 0x00}, // 'e' {0x7C, 0x0A, 0x0A, 0x0A, 0x02, 0x00}, // 'f' {0x58, 0x54, 0x54, 0x54, 0x3C, 0x00}, // 'g' {0x7F, 0x04, 0x04, 0x04, 0x78, 0x00}, // 'h' {0x00, 0x00, 0x7A, 0x00, 0x00, 0x00}, // 'i' {0x20, 0x40, 0x40, 0x3D, 0x00, 0x00}, // 'j' {0x00, 0x7F, 0x10, 0x28, 0x44, 0x00}, // 'k' {0x00, 0x00, 0x3F, 0x40, 0x00, 0x00}, // 'l' {0x7C, 0x08, 0x10, 0x10, 0x08, 0x7C}, // 'm' {0x7C, 0x04, 0x04, 0x04, 0x78, 0x00}, // 'n' {0x38, 0x44, 0x44, 0x44, 0x38, 0x00}, // 'o' {0x7C, 0x14, 0x14, 0x14, 0x08, 0x00}, // 'p' {0x08, 0x14, 0x14, 0x14, 0x7C, 0x40}, // 'q' {0x7C, 0x04, 0x04, 0x04, 0x08, 0x00}, // 'r' {0x08, 0x54, 0x54, 0x54, 0x20, 0x00}, // 's' {0x3F, 0x44, 0x44, 0x44, 0x40, 0x00}, // 't' {0x3C, 0x40, 0x40, 0x40, 0x3C, 0x00}, // 'u' {0x0C, 0x30, 0x40, 0x30, 0x0C, 0x00}, // 'v' {0x3C, 0x40, 0x30, 0x40, 0x3C, 0x00}, // 'w' {0x44, 0x28, 0x10, 0x28, 0x44, 0x00}, // 'x' {0x0C, 0x50, 0x50, 0x50, 0x3C, 0x00}, // 'y' {0x44, 0x64, 0x54, 0x4C, 0x44, 0x00}, // 'z' {0x08, 0x36, 0x41, 0x00, 0x00, 0x00}, // '{' {0x00, 0x00, 0x7F, 0x00, 0x00, 0x00}, // '|' {0x00, 0x00, 0x41, 0x36, 0x08, 0x00}, // '}' {0x04, 0x02, 0x04, 0x08, 0x04, 0x00} // '->' }; #ifdef ENABLE_SMALL_BOLD const uint8_t gFontSmallBold[95 - 1][6] = { // {0x00, 0x00, 0x00, 0x00, 0x00, 0x00}, {0x00, 0x00, 0x5E, 0x5E, 0x00, 0x00}, {0x06, 0x06, 0x00, 0x06, 0x06, 0x00}, {0x14, 0x3E, 0x14, 0x3E, 0x14, 0x00}, {0x2E, 0x6B, 0x7F, 0x6B, 0x3A, 0x00}, {0x63, 0x33, 0x18, 0x0C, 0x66, 0x63}, {0x30, 0x4B, 0x4D, 0x55, 0x22, 0x50}, {0x00, 0x00, 0x07, 0x07, 0x00, 0x00}, {0x00, 0x1C, 0x3E, 0x63, 0x41, 0x00}, {0x00, 0x41, 0x63, 0x3E, 0x1C, 0x00}, {0x00, 0x2A, 0x1C, 0x1C, 0x2A, 0x00}, {0x18, 0x18, 0x7E, 0x7E, 0x18, 0x18}, {0x00, 0x40, 0x60, 0x20, 0x00, 0x00}, {0x00, 0x18, 0x18, 0x18, 0x18, 0x00}, {0x00, 0x00, 0x60, 0x60, 0x00, 0x00}, {0x60, 0x30, 0x18, 0x0C, 0x06, 0x03}, {0x3E, 0x7F, 0x63, 0x63, 0x7F, 0x3E}, {0x64, 0x66, 0x7F, 0x7F, 0x60, 0x60}, {0x62, 0x73, 0x7B, 0x7B, 0x6F, 0x66}, {0x63, 0x63, 0x6B, 0x6B, 0x7F, 0x36}, {0x38, 0x3C, 0x36, 0x7F, 0x7F, 0x30}, {0x6F, 0x6F, 0x6B, 0x6B, 0x7B, 0x33}, {0x3E, 0x7F, 0x6B, 0x6B, 0x7B, 0x32}, {0x03, 0x03, 0x73, 0x7B, 0x0F, 0x07}, {0x36, 0x7F, 0x6B, 0x6B, 0x7F, 0x36}, {0x06, 0x6F, 0x6B, 0x6B, 0x7F, 0x3E}, {0x00, 0x00, 0x6C, 0x6C, 0x00, 0x00}, {0x00, 0x40, 0x6C, 0x2C, 0x00, 0x00}, {0x08, 0x14, 0x22, 0x41, 0x00, 0x00}, {0x36, 0x36, 0x36, 0x36, 0x36, 0x00}, {0x00, 0x41, 0x22, 0x14, 0x08, 0x00}, {0x06, 0x07, 0x53, 0x5B, 0x1F, 0x0E}, {0x30, 0x7B, 0x6B, 0x7B, 0x7F, 0x3E}, {0x7E, 0x7F, 0x1B, 0x1B, 0x7F, 0x7E}, {0x7F, 0x7F, 0x6B, 0x6B, 0x7F, 0x36}, {0x3E, 0x7F, 0x63, 0x63, 0x63, 0x36}, {0x7F, 0x7F, 0x63, 0x63, 0x7F, 0x3E}, {0x7F, 0x7F, 0x6B, 0x6B, 0x6B, 0x63}, {0x7F, 0x7F, 0x1B, 0x1B, 0x1B, 0x03}, {0x3E, 0x7F, 0x63, 0x6B, 0x7B, 0x3A}, {0x7F, 0x7F, 0x0C, 0x0C, 0x7F, 0x7F}, {0x63, 0x63, 0x7F, 0x7F, 0x63, 0x63}, {0x30, 0x73, 0x63, 0x7F, 0x3F, 0x03}, {0x7F, 0x7F, 0x1C, 0x36, 0x63, 0x41}, {0x7F, 0x7F, 0x60, 0x60, 0x60, 0x60}, {0x7F, 0x7F, 0x06, 0x06, 0x7F, 0x7F}, {0x7F, 0x7F, 0x0C, 0x18, 0x7F, 0x7F}, {0x3E, 0x7F, 0x63, 0x63, 0x7F, 0x3E}, {0x7F, 0x7F, 0x1B, 0x1B, 0x1F, 0x0E}, {0x3E, 0x7F, 0x63, 0x73, 0x7F, 0x7E}, {0x7F, 0x7F, 0x1B, 0x3B, 0x7F, 0x66}, {0x66, 0x6F, 0x6B, 0x6B, 0x7B, 0x33}, {0x03, 0x03, 0x7F, 0x7F, 0x03, 0x03}, {0x3F, 0x7F, 0x60, 0x60, 0x7F, 0x3F}, {0x1F, 0x3F, 0x60, 0x60, 0x3F, 0x1F}, {0x3F, 0x7F, 0x30, 0x30, 0x7F, 0x3F}, {0x63, 0x77, 0x1C, 0x1C, 0x77, 0x63}, {0x07, 0x0F, 0x78, 0x78, 0x0F, 0x07}, {0x63, 0x73, 0x7B, 0x6F, 0x67, 0x63}, {0x00, 0x7F, 0x7F, 0x63, 0x63, 0x00}, {0x01, 0x02, 0x04, 0x08, 0x10, 0x60}, {0x00, 0x63, 0x63, 0x7F, 0x7F, 0x00}, {0x0C, 0x0E, 0x03, 0x03, 0x0E, 0x0C}, {0x60, 0x60, 0x60, 0x60, 0x60, 0x60}, {0x00, 0x03, 0x07, 0x06, 0x00, 0x00}, {0x20, 0x76, 0x56, 0x56, 0x7E, 0x3C}, {0x7F, 0x7F, 0x6C, 0x6C, 0x7C, 0x38}, {0x38, 0x7C, 0x6C, 0x6C, 0x6C, 0x00}, {0x38, 0x7C, 0x6C, 0x6C, 0x7F, 0x7F}, {0x3C, 0x7E, 0x56, 0x56, 0x5E, 0x0C}, {0x7E, 0x7F, 0x1B, 0x1B, 0x02, 0x00}, {0x0C, 0x5E, 0x56, 0x56, 0x7E, 0x3C}, {0x7F, 0x7F, 0x0C, 0x0C, 0x7C, 0x78}, {0x00, 0x00, 0x7A, 0x7A, 0x00, 0x00}, {0x30, 0x60, 0x60, 0x7D, 0x3D, 0x00}, {0x7F, 0x7F, 0x18, 0x3C, 0x7E, 0x66}, {0x00, 0x3F, 0x7F, 0x40, 0x00, 0x00}, {0x7C, 0x7C, 0x18, 0x18, 0x7C, 0x7C}, {0x7C, 0x7C, 0x0C, 0x0C, 0x7C, 0x78}, {0x3C, 0x7E, 0x66, 0x66, 0x7E, 0x3C}, {0x7E, 0x7E, 0x36, 0x36, 0x3E, 0x1C}, {0x1C, 0x3E, 0x36, 0x7E, 0x7E, 0x60}, {0x7C, 0x7C, 0x0C, 0x0C, 0x18, 0x00}, {0x4C, 0x5E, 0x56, 0x56, 0x76, 0x20}, {0x3F, 0x7F, 0x6C, 0x6C, 0x60, 0x00}, {0x3C, 0x7C, 0x60, 0x60, 0x7C, 0x3C}, {0x0C, 0x3C, 0x70, 0x70, 0x3C, 0x0C}, {0x3C, 0x7C, 0x30, 0x30, 0x7C, 0x3C}, {0x44, 0x6C, 0x38, 0x38, 0x6C, 0x44}, {0x06, 0x6E, 0x68, 0x68, 0x7E, 0x3E}, {0x66, 0x76, 0x7E, 0x6E, 0x66, 0x00}, {0x08, 0x3E, 0x77, 0x41, 0x00, 0x00}, {0x00, 0x00, 0x7F, 0x00, 0x00, 0x00}, {0x00, 0x41, 0x77, 0x3E, 0x08, 0x00}, {0x0C, 0x06, 0x0C, 0x18, 0x0C, 0x00} }; #endif #ifdef ENABLE_SPECTRUM const uint8_t gFont3x5[][3] = { {0x00, 0x00, 0x00}, // 32 - space {0x00, 0x17, 0x00}, // 33 - exclam {0x03, 0x00, 0x03}, // 34 - quotedbl {0x1f, 0x0a, 0x1f}, // 35 - numbersign {0x0a, 0x1f, 0x05}, // 36 - dollar {0x09, 0x04, 0x12}, // 37 - percent {0x0f, 0x17, 0x1c}, // 38 - ampersand {0x00, 0x03, 0x00}, // 39 - quotesingle {0x00, 0x0e, 0x11}, // 40 - parenleft {0x11, 0x0e, 0x00}, // 41 - parenright {0x05, 0x02, 0x05}, // 42 - asterisk {0x04, 0x0e, 0x04}, // 43 - plus {0x10, 0x08, 0x00}, // 44 - comma {0x04, 0x04, 0x04}, // 45 - hyphen {0x00, 0x10, 0x00}, // 46 - period {0x18, 0x04, 0x03}, // 47 - slash {0x1e, 0x11, 0x0f}, // 48 - zero {0x02, 0x1f, 0x00}, // 49 - one {0x19, 0x15, 0x12}, // 50 - two {0x11, 0x15, 0x0a}, // 51 - three {0x07, 0x04, 0x1f}, // 52 - four {0x17, 0x15, 0x09}, // 53 - five {0x1e, 0x15, 0x1d}, // 54 - six {0x19, 0x05, 0x03}, // 55 - seven {0x1f, 0x15, 0x1f}, // 56 - eight {0x17, 0x15, 0x0f}, // 57 - nine {0x00, 0x0a, 0x00}, // 58 - colon {0x10, 0x0a, 0x00}, // 59 - semicolon {0x04, 0x0a, 0x11}, // 60 - less {0x0a, 0x0a, 0x0a}, // 61 - equal {0x11, 0x0a, 0x04}, // 62 - greater {0x01, 0x15, 0x03}, // 63 - question {0x0e, 0x15, 0x16}, // 64 - at {0x1e, 0x05, 0x1e}, // 65 - A {0x1f, 0x15, 0x0a}, // 66 - B {0x0e, 0x11, 0x11}, // 67 - C {0x1f, 0x11, 0x0e}, // 68 - D {0x1f, 0x15, 0x15}, // 69 - E {0x1f, 0x05, 0x05}, // 70 - F {0x0e, 0x15, 0x1d}, // 71 - G {0x1f, 0x04, 0x1f}, // 72 - H {0x11, 0x1f, 0x11}, // 73 - I {0x08, 0x10, 0x0f}, // 74 - J {0x1f, 0x04, 0x1b}, // 75 - K {0x1f, 0x10, 0x10}, // 76 - L {0x1f, 0x06, 0x1f}, // 77 - M {0x1f, 0x0e, 0x1f}, // 78 - N {0x0e, 0x11, 0x0e}, // 79 - O {0x1f, 0x05, 0x02}, // 80 - P {0x0e, 0x19, 0x1e}, // 81 - Q {0x1f, 0x0d, 0x16}, // 82 - R {0x12, 0x15, 0x09}, // 83 - S {0x01, 0x1f, 0x01}, // 84 - T {0x0f, 0x10, 0x1f}, // 85 - U {0x07, 0x18, 0x07}, // 86 - V {0x1f, 0x0c, 0x1f}, // 87 - W {0x1b, 0x04, 0x1b}, // 88 - X {0x03, 0x1c, 0x03}, // 89 - Y {0x19, 0x15, 0x13}, // 90 - Z {0x1f, 0x11, 0x11}, // 91 - bracketleft {0x02, 0x04, 0x08}, // 92 - backslash {0x11, 0x11, 0x1f}, // 93 - bracketright {0x02, 0x01, 0x02}, // 94 - asciicircum {0x10, 0x10, 0x10}, // 95 - underscore {0x01, 0x02, 0x00}, // 96 - grave {0x1a, 0x16, 0x1c}, // 97 - a {0x1f, 0x12, 0x0c}, // 98 - b {0x0c, 0x12, 0x12}, // 99 - c {0x0c, 0x12, 0x1f}, // 100 - d {0x0c, 0x1a, 0x16}, // 101 - e {0x04, 0x1e, 0x05}, // 102 - f {0x0c, 0x2a, 0x1e}, // 103 - g {0x1f, 0x02, 0x1c}, // 104 - h {0x00, 0x1d, 0x00}, // 105 - i {0x10, 0x20, 0x1d}, // 106 - j {0x1f, 0x0c, 0x12}, // 107 - k {0x11, 0x1f, 0x10}, // 108 - l {0x1e, 0x0e, 0x1e}, // 109 - m {0x1e, 0x02, 0x1c}, // 110 - n {0x0c, 0x12, 0x0c}, // 111 - o {0x3e, 0x12, 0x0c}, // 112 - p {0x0c, 0x12, 0x3e}, // 113 - q {0x1c, 0x02, 0x02}, // 114 - r {0x14, 0x1e, 0x0a}, // 115 - s {0x02, 0x1f, 0x12}, // 116 - t {0x0e, 0x10, 0x1e}, // 117 - u {0x0e, 0x18, 0x0e}, // 118 - v {0x1e, 0x1c, 0x1e}, // 119 - w {0x12, 0x0c, 0x12}, // 120 - x {0x06, 0x28, 0x1e}, // 121 - y {0x1a, 0x1e, 0x16}, // 122 - z {0x04, 0x1b, 0x11}, // 123 - braceleft {0x00, 0x1b, 0x00}, // 124 - bar {0x11, 0x1b, 0x04}, // 125 - braceright {0x02, 0x03, 0x01}, // 126 - asciitilde {0x12, 0x17, 0x12}, // 127 - plusminus }; #endif const uint8_t gFontChinese_out[2013]={ 0X20,0X20,0X3E,0XA0,0X20,0XBF,0X24, 0X24,0X24,0XA4,0X20,0XA0,0X89, 0X74,0X22,0X01,0X00,0X11,0X21, 0X0F,0X44,0XF4,0X4F,0X44,0XF4, 0X4F,0X04,0X84,0X34,0XA4,0X89, 0XB8,0X88,0X10,0XDE,0X10,0XFF, 0X12,0X92,0XF9,0X0D,0XEB,0X09, 0XF9,0X89,0X24,0X01,0X49,0X43, 0X29,0XA0,0X28,0XA5,0X69,0X3D, 0X2B,0XAD,0X28,0XA5,0X28,0X20, 0X22,0X22,0X2F,0X22,0X22,0X88, 0X88,0XFF,0X48,0XA4,0XAC,0XB5, 0XE6,0XB4,0XAC,0XA4,0X80,0X0F, 0XA8,0X4B,0XB4,0XE8,0X0F,0X00, 0XF8,0X0F,0X02,0XF1,0X8E,0X80, 0X88,0X87,0X30,0X01,0X8F,0X24, 0X21,0X84,0X48,0X2A,0X98,0X7F, 0X28,0X4A,0X10,0XEF,0X08,0XF8, 0X08,0XB9,0X55,0X0B,0X58,0X52, 0XC8,0X40,0X40,0X42,0X52,0X62, 0X42,0X4A,0X46,0X42,0XC0,0X10, 0X11,0X99,0X1F,0X11,0X11,0X20, 0X42,0X82,0XFE,0X02,0X02,0X02, 0XFE,0X82,0X42,0X20,0X88,0XF8, 0X88,0XF8,0X88,0X08,0X21,0X6D, 0XA5,0X25,0X35,0X25,0XA5,0X65, 0X25,0X0D,0X01,0X5F,0X55,0X55, 0X55,0X0F,0X88,0X68,0XFF,0X48, 0X02,0XFA,0XAF,0XAA,0XAF,0XFA, 0X02,0X00,0X0F,0XAA,0X36,0XA6, 0X8A,0XF8,0X8F,0X04,0XE0,0X0F, 0X20,0XC8,0X00,0XFE,0X01,0X80, 0X0F,0X30,0X49,0X03,0XC3,0X0E, 0X08,0X88,0X78,0XCF,0X48,0X48, 0X49,0XCA,0X08,0X08,0X24,0X89, 0X54,0X52,0X84,0X18,0X21,0X0F, 0X84,0X94,0XA4,0X84,0XAF,0X94, 0X84,0X04,0X84,0X87,0XAC,0X89, 0XA9,0X8C,0X44,0X54,0X55,0XD6, 0X74,0X5C,0X54,0X56,0X55,0X54, 0X44,0X24,0X99,0X99,0X9F,0X99, 0X48,0X40,0X40,0XC0,0X5F,0X62, 0X42,0X42,0X42,0X42,0X4E,0X80, 0X34,0X00,0X80,0X88,0X07,0XFC, 0X04,0X04,0XE6,0X25,0X24,0X24, 0XE4,0X04,0X04,0XFC,0X0F,0X30, 0X22,0X32,0X88,0X8F,0X80,0XF0, 0X8F,0X80,0X80,0X0F,0XC0,0X4F, 0X40,0XC0,0X8F,0X16,0X88,0X07, 0X4F,0XF4,0X46,0X32,0X82,0XB2, 0X46,0X6B,0X52,0X4A,0X62,0X12, 0X66,0XE0,0X88,0XF8,0X88,0XE8, 0X10,0X22,0X0E,0X00,0XFC,0X55, 0XF5,0X5F,0X55,0XFD,0X05,0X8C, 0X87,0X8B,0X99,0X99,0XBA,0X78, 0X00,0XFF,0X04,0X08,0XF8,0X09, 0X0A,0X08,0X08,0X08,0X00,0X0F, 0XF0,0X88,0X88,0X20,0XA1,0XF4, 0XA7,0X24,0X05,0X24,0XA5,0XF4, 0XA7,0X24,0X11,0X59,0X91,0X1F, 0X51,0X19,0X00,0XFE,0X02,0X42, 0X42,0X42,0XFA,0X42,0X42,0X42, 0X02,0X78,0X88,0X88,0X8F,0XA9, 0X88,0X88,0XF8,0X8F,0X04,0XC0, 0X4F,0X50,0X60,0X40,0X40,0X00, 0XF8,0X80,0X07,0X00,0X00,0X84, 0X44,0XF4,0X0C,0X87,0X94,0X94, 0XD4,0XB4,0X94,0X84,0X00,0X0F, 0X00,0XF8,0X00,0X00,0X71,0X51, 0X5D,0X75,0XD5,0X77,0X55,0X55, 0X7D,0X01,0X81,0XF8,0X88,0X8E, 0XF8,0X88,0X10,0XFC,0X03,0X04, 0X54,0X54,0X55,0X56,0X54,0X54, 0X04,0XF0,0X00,0X5F,0X55,0XF5, 0X00,0X11,0X21,0X0F,0XA0,0XBF, 0XEA,0XAA,0XAA,0XBA,0XAA,0X8F, 0X34,0XB4,0XAA,0XAA,0XBA,0XFE, 0X22,0XFE,0X20,0XFE,0X22,0XFE, 0X20,0XFC,0X00,0XFF,0X87,0X0F, 0X87,0X0F,0X81,0XEF,0X2F,0XE3, 0X0C,0X80,0X44,0X25,0X15,0X2F, 0X45,0X85,0XF4,0X12,0X24,0X81, 0X0F,0X61,0X10,0XD0,0X48,0X54, 0XD2,0X11,0XD2,0X54,0X48,0XD0, 0X10,0X70,0X22,0X07,0X0F,0X74, 0X00,0X00,0X81,0X48,0X79,0X4E, 0X4C,0X4A,0X4A,0XC9,0X08,0X18, 0X01,0X4F,0X44,0X44,0XF4,0X88, 0X88,0XFF,0X48,0X48,0X02,0X22, 0X22,0X22,0X22,0XFE,0X80,0X0F, 0X40,0X44,0X44,0X8F,0X88,0XF8, 0X8F,0X24,0X7F,0X29,0X29,0X2F, 0X79,0X29,0X0F,0XF8,0XF0,0X44, 0X47,0XF4,0X42,0X22,0X5E,0X92, 0X12,0XF2,0X00,0XFC,0X00,0X00, 0XFF,0X80,0X24,0X01,0X10,0X88, 0X0F,0X44,0X44,0X45,0X45,0XFD, 0X47,0X4D,0X45,0X45,0X04,0X44, 0X24,0X8F,0X14,0X42,0X9A,0X88, 0X88,0XFF,0X48,0XBC,0XAA,0XA0, 0XFF,0XA0,0XAA,0XBE,0X80,0X0F, 0X98,0X4A,0XA4,0X89,0XA1,0XA0, 0XA4,0XA6,0XFD,0XA4,0XA4,0XA2, 0XA8,0X80,0X01,0X59,0X91,0X1F, 0X51,0X09,0X78,0X00,0XFF,0X08, 0XC4,0X3F,0XC4,0X04,0XF4,0X44, 0X24,0X00,0X4F,0X83,0X24,0X61, 0X48,0X20,0XD0,0X57,0X5D,0X55, 0X55,0X55,0X55,0XD5,0X17,0X00, 0X9A,0X5B,0X55,0XB5,0X89,0X08, 0X48,0X48,0XC8,0X48,0X48,0X08, 0XFF,0X08,0X09,0X0A,0X88,0X78, 0X44,0X04,0X43,0X0E,0X42,0X4A, 0XF2,0X4F,0X02,0X22,0XED,0X24, 0X24,0XE5,0X8D,0X47,0X9F,0XB9, 0XAA,0XBA,0XFE,0X22,0X22,0XFE, 0X00,0X08,0X48,0X88,0X08,0XFF, 0X08,0X27,0X72,0X00,0X90,0XF8, 0X80,0X42,0X22,0X0E,0X0B,0XFB, 0X8A,0X4A,0X2A,0X4A,0X8E,0X00, 0XF0,0XAA,0XAA,0XAA,0X0F,0XFC, 0X24,0X24,0X24,0XFF,0X24,0X24, 0X24,0XFC,0X00,0X00,0X13,0X11, 0X97,0X99,0X89,0X0E,0X22,0XA2, 0XA2,0XAE,0XFA,0XAB,0XAA,0XAA, 0X2A,0X02,0X82,0X9A,0X4A,0X44, 0X9A,0X88,0X04,0XF4,0X94,0X94, 0X94,0X9F,0X94,0X94,0X94,0XF4, 0X04,0X88,0X34,0X00,0X70,0X88, 0X0C,0XE0,0X2F,0X21,0X22,0X2C, 0XA2,0X21,0XE0,0X0F,0X00,0X80, 0X27,0X01,0X21,0X30,0XF4,0X10, 0X10,0XFF,0X10,0X3E,0XAB,0XA2, 0XBE,0XA2,0XAB,0X3E,0X44,0X23, 0XF0,0XAA,0XFA,0X80,0X94,0XAA, 0XC9,0X88,0X88,0X88,0XC8,0XA8, 0X99,0X8A,0X84,0X8F,0XF8,0XF8, 0X88,0X8F,0X80,0X3E,0X2A,0XEA, 0X2A,0X2A,0X2A,0XEA,0X2A,0X3E, 0X80,0X98,0XFA,0X88,0XF8,0X9A, 0X08,0X01,0X21,0X29,0X21,0X21, 0X2F,0X21,0X21,0X09,0X01,0X41, 0X12,0X80,0X0F,0X00,0X61,0X00, 0XFC,0X24,0X24,0X26,0X25,0X24, 0X24,0X24,0XFC,0X00,0XF0,0X99, 0X99,0X99,0XF9,0X00,0X21,0X2D, 0X23,0X09,0X01,0X80,0XF0,0X8F, 0X80,0X80,0X3F,0X22,0X32,0X68, 0X81,0X78,0X12,0X12,0XEA,0XBF, 0XA0,0XA0,0XA7,0XAA,0XEA,0X09, 0X0C,0X00,0X2F,0X22,0XA2,0X0F, 0X00,0X22,0X42,0X82,0X0E,0XF2, 0X03,0X82,0X4E,0X22,0X02,0X82, 0X24,0X01,0X00,0X87,0XE8,0X82, 0X82,0XBA,0XAA,0XAA,0XAB,0XAA, 0XAA,0XBA,0X82,0X82,0X89,0X26, 0X22,0X62,0X88,0X0D,0XE0,0XAF, 0XA0,0XE8,0XAB,0XBA,0XAA,0XEA, 0XAB,0XA8,0X80,0X07,0X98,0X4A, 0XA4,0X89,0X04,0XF4,0X55,0X56, 0X54,0X5C,0X54,0X56,0X55,0XF4, 0X04,0XF0,0X55,0X55,0X55,0XF5, 0X00,0XF0,0X5F,0X50,0X5A,0X5A, 0X5A,0X5E,0X55,0X55,0X71,0X80, 0X27,0X22,0X72,0X99,0XC9,0X10, 0X22,0X04,0X00,0XF2,0X54,0X50, 0X5F,0X50,0X54,0XF2,0X24,0X01, 0X1F,0X11,0X91,0X0F,0X11,0X21, 0X0F,0X80,0X80,0X82,0X8C,0X80, 0XF0,0X8F,0X80,0X34,0X84,0X88, 0XAA,0X8B,0X00,0XF8,0X88,0X88, 0X88,0XFF,0X88,0X88,0X88,0XF8, 0X00,0X10,0X00,0XF0,0X00,0X10, 0X80,0X49,0X3D,0X8B,0X08,0XE0, 0X4F,0X82,0XFA,0X8F,0X4A,0X42, 0X24,0X02,0X9F,0XF8,0X98,0X88, 0X88,0XFF,0X48,0X00,0X4C,0XC4, 0X75,0X46,0XC4,0X4C,0X80,0X0F, 0X88,0X25,0X52,0X48,0X39,0X2F, 0X49,0XC6,0X8D,0XA8,0XFA,0XAF, 0XEA,0X8B,0X00,0X4F,0X7A,0XAA, 0XAF,0XAA,0X00,0XFE,0X2A,0XAA, 0X2A,0X3E,0X00,0XFE,0X02,0X02, 0XFE,0XF0,0X24,0X61,0XF0,0X20, 0XE3,0X2F,0XE0,0X0F,0XA0,0X24, 0X25,0XE4,0X1F,0X14,0X95,0X34, 0X31,0X00,0X88,0X0F,0X00,0X00, 0X00,0X00,0X00,0XFF,0X10,0X10, 0X10,0X10,0X10,0X00,0X88,0X88, 0X8F,0X88,0X88,0X88,0X49,0X3D, 0X8B,0X08,0X80,0X84,0XF4,0X4F, 0X52,0X6A,0X42,0X24,0X82,0X48, 0X53,0XE8,0X42,0XF2,0X2E,0XE2, 0X01,0X3D,0X21,0X21,0X21,0X3F, 0XE0,0X70,0X72,0X11,0X11,0X89, 0X27,0X20,0X20,0X20,0XE0,0X2F, 0X20,0X21,0X22,0X24,0X28,0X00, 0X00,0XF0,0X00,0X00,0X01,0X10, 0XFC,0X03,0XFE,0XC2,0X02,0XFE, 0X00,0XFC,0X00,0XFF,0XF0,0X48, 0X43,0X08,0X81,0XCF,0X4F,0XC0, 0X0F,0XC0,0X4F,0X60,0X5E,0X42, 0X4E,0XC0,0X3F,0X31,0XF0,0X10, 0X11,0XF8,0X00,0XFC,0X04,0X44, 0X84,0X15,0XE6,0X04,0X04,0XE4, 0X04,0X78,0X88,0X8B,0XC8,0X8B, 0X08,0XC1,0X3F,0X80,0X80,0X86, 0X98,0XA0,0X80,0X80,0X8E,0X00, 0X0F,0X88,0X8B,0XBC,0X88,0X20, 0X2A,0XF2,0X2E,0X60,0X00,0XF2, 0X1A,0XD6,0X12,0XF2,0X80,0X0F, 0X00,0X49,0X43,0X89,0XA2,0XAE, 0XFB,0XAE,0XAA,0X8A,0XF0,0X8F, 0X90,0XAE,0X40,0X44,0X2F,0X82, 0X34,0XE4,0X22,0X44,0X00,0XFC, 0X24,0XE4,0X24,0X3F,0X24,0XE4, 0X0C,0X24,0X78,0X88,0X25,0X85, 0X28,0XE0,0X2F,0XE5,0X2F,0X94, 0XA4,0X84,0XAF,0X94,0X04,0X24, 0X23,0X9F,0X34,0X30,0X84,0X00, 0X82,0X92,0XDA,0XD6,0XB2,0XB1, 0X91,0X89,0XC1,0X80,0X48,0X02, 0XF8,0X00,0X42,0X09,0X00,0X00, 0X00,0X08,0XF6,0X01,0X06,0X08, 0X00,0X00,0X80,0X24,0X01,0X00, 0X21,0X84,0X22,0XEA,0XBF,0XEA, 0X2A,0X54,0X53,0XFA,0X56,0XF0, 0X40,0XF0,0XF2,0X10,0XF9,0X31, 0XE0,0X2F,0XE0,0X0F,0X00,0X77, 0X55,0X57,0X58,0X77,0X05,0X37, 0X31,0X90,0X35,0X3F,0X95,0X44, 0X53,0X52,0X56,0X52,0X7C,0X53, 0XD2,0X56,0X52,0X42,0X11,0X53, 0X91,0XF9,0X11,0X81,0X49,0X3D, 0X8B,0X28,0XE0,0X2F,0X28,0X20, 0XE3,0X02,0X4E,0X24,0X6A,0X81, 0X25,0X85,0X00,0XFE,0X2A,0XA9, 0X00,0X28,0XE7,0X21,0X21,0XEF, 0X08,0XF2,0X01,0X88,0X25,0X85, 0X88,0X40,0X3F,0XA5,0X6F,0X05, 0X9F,0X78,0X16,0X94,0XFE,0X84, 0X17,0X97,0X0F,0X22,0X2F,0X94, 0XF3,0X92,0X00,0XF2,0X14,0X10, 0XDF,0X10,0X14,0XF2,0XF0,0X84, 0X49,0X12,0X42,0X09,0XE8,0XBF, 0XAA,0XEA,0X0F,0X80,0X84,0X88, 0XF0,0X8F,0X40,0X12,0XF8,0X00, 0X89,0X0F,0X22,0X44,0X40,0XFC, 0X20,0X10,0XFF,0X08,0X04,0XFC, 0X00,0X24,0X70,0X88,0X8B,0X99, 0X1C,0X21,0X0F,0X00,0XF0,0X1F, 0X92,0XDA,0X9B,0X1A,0XF2,0X0F, 0X27,0X78,0X30,0XB2,0XF8,0X10, 0X10,0X10,0X10,0XD0,0X3F,0XD0, 0X10,0X10,0X10,0X10,0X88,0X34, 0X00,0X30,0X84,0X08,0X00,0X0C, 0X03,0X00,0XF0,0X0F,0X00,0X00, 0X01,0X06,0X18,0X00,0X88,0X0F, 0X00,0X10,0X90,0X54,0XB6,0X95, 0X5C,0X54,0X34,0X94,0X36,0X54, 0X90,0XA0,0XAA,0X9A,0X45,0X24, 0X00,0XC1,0X3F,0X00,0XE8,0XAF, 0XA2,0XBE,0XA2,0XAE,0XE2,0X0E, 0X1F,0XF0,0X71,0X71,0XF9,0X12, 0XD2,0XFE,0X91,0X08,0X44,0XAB, 0X52,0X6A,0X46,0XC0,0X01,0X0F, 0X98,0X54,0X12,0X00,0X84,0X94, 0XA4,0X84,0X84,0X8F,0XA4,0X94, 0X84,0X04,0X84,0X48,0X12,0X10, 0X42,0X88,0X00,0XF9,0X02,0X20, 0X20,0XA2,0XFA,0X22,0X22,0X02, 0XFE,0XF0,0X20,0X41,0X07,0X88, 0X0F,0X24,0X24,0XE4,0X2F,0X24, 0X24,0XE4,0X2F,0X24,0X04,0X04, 0X68,0X01,0X00,0X0F,0X00,0X00, 0X00,0XFC,0XA4,0XA4,0XA5,0XA6, 0XA4,0XA4,0XA4,0XBC,0X68,0XF1, 0X44,0X44,0X44,0X2F,0X21,0XED, 0X1F,0X09,0X84,0X03,0XF0,0X0F, 0X40,0X80,0X1B,0XF0,0X80,0X48, 0X24,0X01,0X20,0X10,0X2C,0X23, 0XE0,0X20,0X20,0X23,0XEC,0X10, 0X20,0X80,0X34,0X80,0X88,0X07, 0X00,0X80,0X88,0X88,0X98,0XA8, 0X8F,0X88,0X88,0X88,0X08,0X80, 0X88,0X88,0X8F,0X88,0X88,0X12, 0X62,0X82,0X62,0X1E,0X00,0X1E, 0X62,0X82,0X62,0X1E,0X68,0X61, 0X80,0X24,0X61,0X18,0XDC,0X55, 0X55,0X5D,0XD5,0X15,0X0C,0XC0, 0X0F,0XF0,0XFF,0X55,0X57,0XF5, 0X10,0XF8,0X20,0X20,0XAF,0X69, 0X29,0X29,0X29,0X29,0X2F,0X20, 0X20,0X00,0X11,0X11,0X91,0X79, 0X00,0X00,0XE0,0X2F,0X21,0X29, 0X29,0X19,0X19,0X19,0X09,0X89, 0X16,0XF0,0X44,0X44,0XF4,0X20, 0X10,0XFC,0X03,0X82,0XBA,0XAA, 0XAB,0XAA,0XBA,0X82,0X00,0X0F, 0X21,0XEA,0X22,0X01,0X00,0X80, 0X0F,0X00,0X00,0XF0,0X0F,0X01, 0X01,0X01,0X80,0XF8,0X88,0XF8, 0X88,0X88,0X12,0XD2,0XFE,0X51, 0X90,0XC8,0X07,0XF4,0X04,0X54, 0X8C,0X01,0X0F,0X12,0XF8,0X00, 0X23,0X20,0X20,0X28,0X24,0X22, 0XEF,0X20,0X22,0X24,0X28,0X10, 0X01,0X00,0X0F,0X00,0X10,0X04, 0X04,0X84,0X64,0X14,0XFF,0X14, 0X64,0X84,0X04,0X04,0X12,0X22, 0XF2,0X22,0X12,0X02,0X01,0XF1, 0X0F,0X01,0XC2,0X0F,0XF1,0X8F, 0X40,0XC8,0X4F,0X34,0X02,0X87, 0X89,0XE8,0X98,0XF7,0X94,0X84, 0X10,0X48,0X44,0X53,0X64,0XC8, 0X10,0XF0,0X24,0X00,0X42,0X0B, 0X00,0XE0,0X2F,0X20,0X20,0X2F, 0X29,0X29,0X2F,0X20,0XE0,0X0F, 0X4F,0X44,0X44,0X44,0XF4,0X10, 0X10,0X28,0X24,0X22,0XE1,0X22, 0X24,0X28,0X10,0X10,0X98,0X99, 0XF9,0X99,0X99,0X08,0XA2,0X2A, 0X3B,0X2A,0XAB,0X0A,0XE2,0X2F, 0X20,0XE3,0X0C,0X4F,0X44,0X0F, 0X2F,0X12,0X00,0XFE,0X92,0X92, 0X92,0XFE,0X92,0X92,0X92,0XFE, 0X00,0X78,0X00,0X70,0X80,0XF8, 0X00,0X02,0XC1,0X3F,0XE0,0X2F, 0X22,0XE2,0X1F,0X12,0X02,0X02, 0XF0,0X70,0X52,0X38,0XF4,0X20, 0X20,0X20,0XFF,0X28,0X28,0XE4, 0X24,0X22,0X22,0X20,0X00,0XF0, 0X24,0X10,0X42,0X24,0X28,0XA8, 0XAB,0XAA,0XBA,0XAA,0XAA,0XAA, 0X2B,0X28,0XF8,0X00,0XAE,0XAA, 0X0E,0XF8,};