font.h (10682B)
1 #pragma once 2 #include <inttypes.h> 3 #include <avr/pgmspace.h> 4 5 namespace fonts 6 { 7 using glyph = uint8_t[8]; 8 9 using font = glyph[]; 10 11 font const mash [[gnu::__progmem__]] = 12 { 13 {0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00},// space 14 {0x18, 0x3C, 0x3C, 0x18, 0x18, 0x00, 0x18, 0x00},// ! 15 {0x36, 0x36, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00},// " 16 {0x14, 0x14, 0x3E, 0x14, 0x3E, 0x14, 0x14, 0x00},// # 17 {0x1C, 0x36, 0x30, 0x7C, 0x30, 0x30, 0x7E, 0x00},// $ 18 {0x66, 0x64, 0x0C, 0x08, 0x18, 0x13, 0x33, 0x00},// % 19 {0x38, 0x6C, 0x6C, 0x39, 0x6E, 0x6E, 0x3B, 0x00},// & 20 {0x18, 0x18, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00},// ' 21 {0x0C, 0x1C, 0x18, 0x18, 0x18, 0x1C, 0x0C, 0x00},// ( 22 {0x18, 0x1C, 0x0C, 0x0C, 0x0C, 0x1C, 0x18, 0x00},// ) 23 {0x08, 0x2A, 0x1C, 0x14, 0x22, 0x00, 0x00, 0x00},// * 24 {0x00, 0x08, 0x08, 0x3E, 0x08, 0x08, 0x00, 0x00},// + 25 {0x00, 0x00, 0x00, 0x00, 0x00, 0x18, 0x18, 0x30},// , 26 {0x00, 0x00, 0x00, 0x3E, 0x00, 0x00, 0x00, 0x00},// - 27 {0x00, 0x00, 0x00, 0x00, 0x00, 0x18, 0x18, 0x00},// . 28 {0x0C, 0x0C, 0x1C, 0x18, 0x38, 0x30, 0x30, 0x00},// / 29 {0x18, 0x24, 0x6E, 0x76, 0x66, 0x24, 0x18, 0x00},// 0 30 {0x18, 0x38, 0x18, 0x18, 0x18, 0x18, 0x3C, 0x00},// 1 31 {0x3C, 0x66, 0x06, 0x0C, 0x18, 0x30, 0x7E, 0x00},// 2 32 {0x3C, 0x66, 0x06, 0x1C, 0x06, 0x66, 0x3C, 0x00},// 3 33 {0x0E, 0x1E, 0x36, 0x66, 0x7F, 0x06, 0x06, 0x00},// 4 34 {0x7E, 0x60, 0x60, 0x7C, 0x06, 0x66, 0x3C, 0x00},// 5 35 {0x3C, 0x60, 0x60, 0x7C, 0x66, 0x66, 0x3C, 0x00},// 6 36 {0x7E, 0x06, 0x0E, 0x0C, 0x0C, 0x18, 0x18, 0x00},// 7 37 {0x3C, 0x66, 0x66, 0x3C, 0x66, 0x66, 0x3C, 0x00},// 8 38 {0x3C, 0x66, 0x66, 0x3E, 0x06, 0x06, 0x06, 0x00},// 9 39 {0x00, 0x00, 0x18, 0x18, 0x00, 0x18, 0x18, 0x00},// : 40 {0x00, 0x00, 0x18, 0x18, 0x00, 0x18, 0x18, 0x30},// ; 41 {0x00, 0x06, 0x1C, 0x30, 0x1C, 0x06, 0x00, 0x00},// < 42 {0x00, 0x00, 0x3E, 0x00, 0x3E, 0x00, 0x00, 0x00},// = 43 {0x00, 0x30, 0x1C, 0x06, 0x1C, 0x30, 0x00, 0x00},// > 44 {0x3C, 0x66, 0x0C, 0x18, 0x00, 0x18, 0x18, 0x00},// ? 45 {0x1C, 0x22, 0x4D, 0x55, 0x4E, 0x20, 0x1E, 0x00},// @ 46 {0x1C, 0x3E, 0x36, 0x36, 0x7F, 0x63, 0x63, 0x00},// A 47 {0x7C, 0x66, 0x66, 0x7C, 0x66, 0x66, 0x7C, 0x00},// B 48 {0x3C, 0x66, 0x60, 0x60, 0x60, 0x66, 0x3C, 0x00},// C 49 {0x7C, 0x66, 0x66, 0x66, 0x66, 0x66, 0x7C, 0x00},// D 50 {0x7E, 0x60, 0x60, 0x7C, 0x60, 0x60, 0x7E, 0x00},// E 51 {0x7E, 0x60, 0x60, 0x7C, 0x60, 0x60, 0x60, 0x00},// F 52 {0x3C, 0x66, 0x60, 0x60, 0x6E, 0x66, 0x3C, 0x00},// G 53 {0x66, 0x66, 0x66, 0x7E, 0x66, 0x66, 0x66, 0x00},// H 54 {0x3C, 0x18, 0x18, 0x18, 0x18, 0x18, 0x3C, 0x00},// I 55 {0x1E, 0x0C, 0x0C, 0x0C, 0x0C, 0x6C, 0x38, 0x00},// J 56 {0x66, 0x6C, 0x78, 0x70, 0x78, 0x6C, 0x66, 0x00},// K 57 {0x60, 0x60, 0x60, 0x60, 0x60, 0x60, 0x7E, 0x00},// L 58 {0x63, 0x77, 0x7F, 0x6B, 0x63, 0x63, 0x63, 0x00},// M 59 {0x66, 0x76, 0x7E, 0x7E, 0x6E, 0x66, 0x66, 0x00},// N 60 {0x3C, 0x66, 0x66, 0x66, 0x66, 0x66, 0x3C, 0x00},// O 61 {0x7C, 0x66, 0x66, 0x7C, 0x60, 0x60, 0x60, 0x00},// P 62 {0x3C, 0x66, 0x66, 0x66, 0x66, 0x6E, 0x3C, 0x06},// Q 63 {0x7C, 0x66, 0x66, 0x7C, 0x78, 0x6C, 0x66, 0x00},// R 64 {0x3C, 0x66, 0x70, 0x3C, 0x0E, 0x66, 0x3C, 0x00},// S 65 {0x7E, 0x18, 0x18, 0x18, 0x18, 0x18, 0x18, 0x00},// T 66 {0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x3C, 0x00},// U 67 {0x63, 0x63, 0x36, 0x36, 0x1C, 0x1C, 0x08, 0x00},// V 68 {0x63, 0x63, 0x63, 0x6B, 0x6B, 0x36, 0x36, 0x00},// W 69 {0x66, 0x66, 0x3C, 0x18, 0x3C, 0x66, 0x66, 0x00},// X 70 {0x66, 0x66, 0x66, 0x3C, 0x18, 0x18, 0x18, 0x00},// Y 71 {0x7E, 0x06, 0x0C, 0x18, 0x30, 0x60, 0x7E, 0x00},// Z 72 {0x3C, 0x30, 0x30, 0x30, 0x30, 0x30, 0x3C, 0x00},// [ 73 {0x30, 0x30, 0x38, 0x18, 0x1C, 0x0C, 0x0C, 0x00},// '\' 74 {0x3C, 0x0C, 0x0C, 0x0C, 0x0C, 0x0C, 0x3C, 0x00},// ] 75 {0x08, 0x14, 0x22, 0x00, 0x00, 0x00, 0x00, 0x00},// ^ 76 {0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x3E, 0x00},// _ 77 {0x0C, 0x06, 0x02, 0x00, 0x00, 0x00, 0x00, 0x00},// ` 78 {0x00, 0x00, 0x1E, 0x36, 0x36, 0x36, 0x1F, 0x00},// a 79 {0x30, 0x30, 0x3C, 0x36, 0x36, 0x36, 0x3C, 0x00},// b 80 {0x00, 0x00, 0x1C, 0x36, 0x30, 0x36, 0x1C, 0x00},// c 81 {0x06, 0x06, 0x1E, 0x36, 0x36, 0x36, 0x1F, 0x00},// d 82 {0x00, 0x00, 0x1C, 0x36, 0x3C, 0x30, 0x1C, 0x00},// e 83 {0x0E, 0x18, 0x18, 0x18, 0x3C, 0x18, 0x18, 0x00},// f 84 {0x00, 0x00, 0x1E, 0x36, 0x36, 0x1E, 0x06, 0x1C},// g 85 {0x30, 0x30, 0x3C, 0x36, 0x36, 0x36, 0x36, 0x00},// h 86 {0x00, 0x18, 0x00, 0x18, 0x18, 0x18, 0x18, 0x00},// i 87 {0x00, 0x0C, 0x00, 0x0C, 0x0C, 0x0C, 0x2C, 0x18},// j 88 {0x30, 0x30, 0x36, 0x3C, 0x3C, 0x36, 0x36, 0x00},// k 89 {0x18, 0x18, 0x18, 0x18, 0x18, 0x18, 0x0C, 0x00},// l 90 {0x00, 0x00, 0x76, 0x6B, 0x6B, 0x6B, 0x63, 0x00},// m 91 {0x00, 0x00, 0x3C, 0x36, 0x36, 0x36, 0x36, 0x00},// n 92 {0x00, 0x00, 0x1C, 0x36, 0x36, 0x36, 0x1C, 0x00},// o 93 {0x00, 0x00, 0x3C, 0x36, 0x36, 0x36, 0x3C, 0x30},// p 94 {0x00, 0x00, 0x1E, 0x36, 0x36, 0x36, 0x1E, 0x06},// q 95 {0x00, 0x00, 0x3C, 0x32, 0x30, 0x30, 0x30, 0x00},// r 96 {0x00, 0x00, 0x1E, 0x30, 0x1C, 0x06, 0x3C, 0x00},// s 97 {0x00, 0x18, 0x3C, 0x18, 0x18, 0x18, 0x0C, 0x00},// t 98 {0x00, 0x00, 0x36, 0x36, 0x36, 0x36, 0x1C, 0x00},// u 99 {0x00, 0x00, 0x36, 0x36, 0x36, 0x1C, 0x08, 0x00},// v 100 {0x00, 0x00, 0x63, 0x6B, 0x6B, 0x3E, 0x14, 0x00},// w 101 {0x00, 0x00, 0x36, 0x1C, 0x08, 0x1C, 0x36, 0x00},// x 102 {0x00, 0x00, 0x36, 0x36, 0x36, 0x1E, 0x06, 0x1C},// y 103 {0x00, 0x00, 0x3E, 0x0C, 0x18, 0x30, 0x3E, 0x00},// z 104 {0x0C, 0x08, 0x18, 0x30, 0x18, 0x08, 0x0C, 0x00},// { 105 {0x08, 0x08, 0x08, 0x08, 0x08, 0x08, 0x08, 0x00},// | 106 {0x18, 0x08, 0x0C, 0x06, 0x0C, 0x08, 0x18, 0x00},// } 107 {0x00, 0x00, 0x30, 0x49, 0x06, 0x00, 0x00, 0x00}// ~ 108 }; 109 110 font const oryxB [[gnu::__progmem__]] = 111 { 112 {0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00},// space 113 {0x00, 0x18, 0x18, 0x18, 0x08, 0x00, 0x18, 0x00},// ! 114 {0x36, 0x36, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00},// " 115 {0x00, 0x36, 0x7F, 0x36, 0x36, 0x7F, 0x36, 0x00},// # 116 {0x1C, 0x36, 0x30, 0x7C, 0x30, 0x30, 0x7E, 0x00},// $ 117 {0x66, 0x64, 0x0C, 0x08, 0x18, 0x13, 0x33, 0x00},// % 118 {0x38, 0x6C, 0x6C, 0x39, 0x6E, 0x6E, 0x3B, 0x00},// & 119 {0x18, 0x18, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00},// ' 120 {0x0C, 0x1C, 0x18, 0x18, 0x18, 0x1C, 0x0C, 0x00},// ( 121 {0x18, 0x1C, 0x0C, 0x0C, 0x0C, 0x1C, 0x18, 0x00},// ) 122 {0x08, 0x2A, 0x1C, 0x14, 0x22, 0x00, 0x00, 0x00},// * 123 {0x00, 0x08, 0x08, 0x3E, 0x08, 0x08, 0x00, 0x00},// + 124 {0x00, 0x00, 0x00, 0x00, 0x00, 0x18, 0x18, 0x30},// , 125 {0x00, 0x00, 0x00, 0x3E, 0x00, 0x00, 0x00, 0x00},// - 126 {0x00, 0x00, 0x00, 0x00, 0x00, 0x18, 0x18, 0x00},// . 127 {0x0C, 0x0C, 0x1C, 0x18, 0x38, 0x30, 0x30, 0x00},// / 128 {0x00, 0x3C, 0x66, 0x76, 0x6E, 0x66, 0x3C, 0x00},// 0 129 {0x00, 0x18, 0x38, 0x18, 0x18, 0x18, 0x3C, 0x00},// 1 130 {0x00, 0x3C, 0x66, 0x0E, 0x3C, 0x70, 0x7E, 0x00},// 2 131 {0x00, 0x3C, 0x66, 0x1C, 0x06, 0x66, 0x3C, 0x00},// 3 132 {0x00, 0x1C, 0x2C, 0x4C, 0x4C, 0x7E, 0x0C, 0x00},// 4 133 {0x00, 0x7C, 0x60, 0x7C, 0x06, 0x66, 0x3C, 0x00},// 5 134 {0x00, 0x3C, 0x60, 0x7C, 0x66, 0x66, 0x3C, 0x00},// 6 135 {0x00, 0x7E, 0x06, 0x0C, 0x18, 0x18, 0x18, 0x00},// 7 136 {0x00, 0x3C, 0x66, 0x3C, 0x66, 0x66, 0x3C, 0x00},// 8 137 {0x00, 0x3C, 0x66, 0x66, 0x3E, 0x06, 0x3C, 0x00},// 9 138 {0x00, 0x00, 0x18, 0x18, 0x00, 0x18, 0x18, 0x00},// : 139 {0x00, 0x00, 0x18, 0x18, 0x00, 0x18, 0x18, 0x30},// ; 140 {0x00, 0x06, 0x1C, 0x30, 0x1C, 0x06, 0x00, 0x00},// < 141 {0x00, 0x00, 0x3E, 0x00, 0x3E, 0x00, 0x00, 0x00},// = 142 {0x00, 0x30, 0x1C, 0x06, 0x1C, 0x30, 0x00, 0x00},// > 143 {0x00, 0x7C, 0xCE, 0xCE, 0x18, 0x00, 0x18, 0x00},// ? 144 {0x1C, 0x22, 0x4D, 0x55, 0x4E, 0x20, 0x1E, 0x00},// @ 145 {0x00, 0x38, 0x7C, 0xE6, 0xFE, 0xE6, 0xE6, 0x00},// A 146 {0x00, 0xFC, 0xE6, 0xFC, 0xE6, 0xE6, 0xFC, 0x00},// B 147 {0x00, 0x7C, 0xE6, 0xE0, 0xE0, 0xE6, 0x7C, 0x00},// C 148 {0x00, 0xFC, 0xE6, 0xE6, 0xE6, 0xE6, 0xFC, 0x00},// D 149 {0x00, 0xFE, 0xE0, 0xFC, 0xE0, 0xE0, 0xFE, 0x00},// E 150 {0x00, 0xFE, 0xE0, 0xFC, 0xE0, 0xE0, 0xE0, 0x00},// F 151 {0x00, 0x7C, 0xE6, 0xE0, 0xEE, 0xE6, 0x7C, 0x00},// G 152 {0x00, 0xE6, 0xE6, 0xFE, 0xE6, 0xE6, 0xE6, 0x00},// H 153 {0x00, 0x7C, 0x38, 0x38, 0x38, 0x38, 0x7C, 0x00},// I 154 {0x00, 0xFE, 0x1C, 0x1C, 0xDC, 0xDC, 0x78, 0x00},// J 155 {0x00, 0xE6, 0xEC, 0xF8, 0xF8, 0xEC, 0xE6, 0x00},// K 156 {0x00, 0xE0, 0xE0, 0xE0, 0xE0, 0xE6, 0xFE, 0x00},// L 157 {0x00, 0xC6, 0xEE, 0xFE, 0xD6, 0xC6, 0xC6, 0x00},// M 158 {0x00, 0xE6, 0xF6, 0xFE, 0xEE, 0xE6, 0xE6, 0x00},// N 159 {0x00, 0x7C, 0xE6, 0xE6, 0xE6, 0xE6, 0x7C, 0x00},// O 160 {0x00, 0xFC, 0xE6, 0xE6, 0xFC, 0xE0, 0xE0, 0x00},// P 161 {0x00, 0x7C, 0xE6, 0xE6, 0xEE, 0xEE, 0x7C, 0x0E},// Q 162 {0x00, 0xFC, 0xE6, 0xE6, 0xFC, 0xEC, 0xE6, 0x00},// R 163 {0x00, 0x7C, 0xE2, 0x7C, 0x0E, 0xEE, 0x7C, 0x00},// S 164 {0x00, 0xFE, 0x38, 0x38, 0x38, 0x38, 0x38, 0x00},// T 165 {0x00, 0xE6, 0xE6, 0xE6, 0xE6, 0xE6, 0x7C, 0x00},// U 166 {0x00, 0xE6, 0xE6, 0xE6, 0xE6, 0x7C, 0x38, 0x00},// V 167 {0x00, 0xC6, 0xC6, 0xD6, 0xD6, 0xEE, 0xC6, 0x00},// W 168 {0x00, 0xEE, 0xF4, 0x78, 0x3C, 0x5E, 0xEE, 0x00},// X 169 {0x00, 0xC6, 0xEE, 0x7C, 0x38, 0x38, 0x38, 0x00},// Y 170 {0x00, 0xFE, 0x1C, 0x38, 0x70, 0xE0, 0xFE, 0x00},// Z 171 {0x3C, 0x30, 0x30, 0x30, 0x30, 0x30, 0x3C, 0x00},// [ 172 {0x30, 0x30, 0x38, 0x18, 0x1C, 0x0C, 0x0C, 0x00},// '\' 173 {0x3C, 0x0C, 0x0C, 0x0C, 0x0C, 0x0C, 0x3C, 0x00},// ] 174 {0x08, 0x14, 0x22, 0x00, 0x00, 0x00, 0x00, 0x00},// ^ 175 {0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x3E, 0x00},// _ 176 {0x0C, 0x06, 0x02, 0x00, 0x00, 0x00, 0x00, 0x00},// ` 177 {0x00, 0x00, 0x7C, 0xEC, 0xEC, 0xEC, 0x76, 0x00},// a 178 {0x00, 0xE0, 0xE0, 0xFC, 0xEE, 0xEE, 0xFC, 0x00},// b 179 {0x00, 0x00, 0x7C, 0xEE, 0xE0, 0xEE, 0x7C, 0x00},// c 180 {0x00, 0x0E, 0x0E, 0x7E, 0xEE, 0xEE, 0x7E, 0x00},// d 181 {0x00, 0x00, 0x7C, 0xEE, 0xFE, 0xE0, 0x7E, 0x00},// e 182 {0x00, 0x3C, 0x76, 0x70, 0xFE, 0x70, 0x70, 0x00},// f 183 {0x00, 0x7C, 0xEE, 0xEE, 0x7E, 0x0E, 0xEE, 0x7C},// g 184 {0x00, 0xE0, 0xE0, 0xFC, 0xEE, 0xEE, 0xEE, 0x00},// h 185 {0x00, 0x38, 0x00, 0x38, 0x38, 0x38, 0x38, 0x00},// i 186 {0x00, 0x1C, 0x00, 0x1C, 0x1C, 0xDC, 0xDC, 0x78},// j 187 {0x00, 0xE0, 0xE0, 0xE6, 0xF8, 0xEC, 0xE6, 0x00},// k 188 {0x00, 0x78, 0x38, 0x38, 0x38, 0x38, 0x38, 0x00},// l 189 {0x00, 0x00, 0xFC, 0xD6, 0xD6, 0xD6, 0xD6, 0x00},// m 190 {0x00, 0x00, 0xFC, 0xE6, 0xE6, 0xE6, 0xE6, 0x00},// n 191 {0x00, 0x00, 0x7C, 0xE6, 0xE6, 0xE6, 0x7C, 0x00},// o 192 {0x00, 0x00, 0xFC, 0xEE, 0xEE, 0xFC, 0xE0, 0xE0},// p 193 {0x00, 0x00, 0x7E, 0xEE, 0xEE, 0x7E, 0x0E, 0x0E},// q 194 {0x00, 0x00, 0xEE, 0xF8, 0xF0, 0xE0, 0xE0, 0x00},// r 195 {0x00, 0x00, 0x7E, 0xE0, 0xFE, 0x0E, 0xFC, 0x00},// s 196 {0x00, 0x70, 0x70, 0xFE, 0x70, 0x76, 0x3C, 0x00},// t 197 {0x00, 0x00, 0xEE, 0xEE, 0xEE, 0xEE, 0x7E, 0x00},// u 198 {0x00, 0x00, 0xC6, 0xC6, 0xEE, 0x7C, 0x38, 0x00},// v 199 {0x00, 0x00, 0xC6, 0xD6, 0xD6, 0xEE, 0xC6, 0x00},// w 200 {0x00, 0x00, 0xEE, 0x74, 0x38, 0x5C, 0xEE, 0x00},// x 201 {0x00, 0x00, 0xC6, 0x6E, 0x3C, 0x38, 0x70, 0xE0},// y 202 {0x00, 0x00, 0xFE, 0x1C, 0x38, 0x70, 0xFE, 0x00},// z 203 {0x0C, 0x08, 0x18, 0x30, 0x18, 0x08, 0x0C, 0x00},// { 204 {0x08, 0x08, 0x08, 0x08, 0x08, 0x08, 0x08, 0x00},// | 205 {0x18, 0x08, 0x0C, 0x06, 0x0C, 0x08, 0x18, 0x00},// } 206 {0x00, 0x00, 0x30, 0x49, 0x06, 0x00, 0x00, 0x00}// ~ 207 }; 208 }