v.0.10.0 redesign prj structure, multi dev containers

This commit is contained in:
tiijay
2025-11-20 11:50:19 +00:00
parent 53b1b96fb3
commit 76a8203458
52 changed files with 63 additions and 83 deletions

View File

@@ -0,0 +1,9 @@
from .font_3x5 import font_3x5
from .font_5x7 import font_5x7
from .font_8x8 import font_8x8
from .font_16x16 import font_16x16
fonts_installed = [font_3x5, font_5x7, font_8x8, font_16x16]
__all__ = ['font_3x5', 'font_5x7', 'font_8x8', 'font_16x16', 'fonts_installed']

View File

@@ -0,0 +1,107 @@
font_16x16 = {
' ': [0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00],
'!': [0x06, 0x0F, 0x0F, 0x0F, 0x0F, 0x0F, 0x0F, 0x0F, 0x0F, 0x0F, 0x06, 0x00, 0x0F, 0x0F, 0x00, 0x00],
'"': [0x363, 0x363, 0x363, 0x363, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00],
'#': [0x318, 0x318, 0x318, 0xFFF, 0xFFF, 0x318, 0x318, 0x318, 0x318, 0xFFF, 0xFFF, 0x318, 0x318, 0x318, 0x00, 0x00],
'$': [0x78, 0xFE, 0x1CF, 0x1C7, 0x1C0, 0xF8, 0x7C, 0x0F, 0x07, 0x1C7, 0x1CF, 0xFE, 0x78, 0x10, 0x00, 0x00],
'%': [0xE0E, 0x1B0E, 0x1B1C, 0xE38, 0x70, 0xE0, 0x1C0, 0x380, 0x70E, 0xE1B, 0x1C1B, 0x380E, 0x00, 0x00, 0x00, 0x00],
'&': [0x7C0, 0xEE0, 0x1C70, 0x1C70, 0xEE0, 0x7C0, 0xFC7, 0x1CE7, 0x387E, 0x383C, 0x387E, 0x1CFF, 0xFE7, 0x7C0, 0x00, 0x00],
"'": [0x03, 0x03, 0x03, 0x03, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00],
'(': [0x07, 0x0E, 0x1C, 0x1C, 0x38, 0x38, 0x38, 0x38, 0x38, 0x38, 0x1C, 0x1C, 0x0E, 0x07, 0x00, 0x00],
')': [0x38, 0x1C, 0x0E, 0x0E, 0x07, 0x07, 0x07, 0x07, 0x07, 0x07, 0x0E, 0x0E, 0x1C, 0x38, 0x00, 0x00],
'*': [0x30, 0x1B3, 0xFC, 0x78, 0xFC, 0x1B3, 0x30, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00],
'+': [0x00, 0x00, 0x60, 0x60, 0x60, 0x60, 0x3FF, 0x3FF, 0x60, 0x60, 0x60, 0x60, 0x00, 0x00, 0x00, 0x00],
',': [0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x07, 0x07, 0x03, 0x06, 0x00, 0x00],
'-': [0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x3FF, 0x3FF, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00],
'.': [0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x03, 0x03, 0x00, 0x00, 0x00, 0x00],
'/': [0x03, 0x07, 0x0E, 0x1C, 0x38, 0x70, 0xE0, 0x1C0, 0x380, 0x700, 0xE00, 0xC00, 0x00, 0x00, 0x00, 0x00],
'0': [0x1F8, 0x3FC, 0x70E, 0x606, 0xE07, 0xE07, 0xE07, 0xE07, 0xE07, 0xE07, 0x606, 0x70E, 0x3FC, 0x1F8, 0x00, 0x00],
'1': [0x0C, 0x1C, 0x3C, 0x7C, 0x1C, 0x1C, 0x1C, 0x1C, 0x1C, 0x1C, 0x1C, 0x1C, 0x7F, 0x7F, 0x00, 0x00],
'2': [0xFC, 0x1FE, 0x387, 0x303, 0x03, 0x07, 0x0E, 0x1C, 0x38, 0x70, 0xE0, 0x1C0, 0x3FF, 0x3FF, 0x00, 0x00],
'3': [0xFC, 0x1FE, 0x387, 0x303, 0x03, 0x07, 0x7E, 0x7E, 0x07, 0x03, 0x303, 0x387, 0x1FE, 0xFC, 0x00, 0x00],
'4': [0x0E, 0x1E, 0x3E, 0x6E, 0xCE, 0x18E, 0x30E, 0x60E, 0x7FF, 0x7FF, 0x0E, 0x0E, 0x0E, 0x0E, 0x00, 0x00],
'5': [0x3FF, 0x3FF, 0x300, 0x300, 0x300, 0x3FC, 0x3FE, 0x07, 0x03, 0x03, 0x303, 0x387, 0x1FE, 0xFC, 0x00, 0x00],
'6': [0xFC, 0x1FE, 0x387, 0x303, 0x300, 0x37C, 0x3FE, 0x387, 0x303, 0x303, 0x303, 0x387, 0x1FE, 0xFC, 0x00, 0x00],
'7': [0x3FF, 0x3FF, 0x03, 0x07, 0x0E, 0x1C, 0x38, 0x70, 0x70, 0x70, 0x70, 0x70, 0x70, 0x70, 0x00, 0x00],
'8': [0xFC, 0x1FE, 0x387, 0x303, 0x303, 0x387, 0x1FE, 0xFC, 0x1FE, 0x387, 0x303, 0x303, 0x387, 0x1FE, 0xFC, 0x00],
'9': [0xFC, 0x1FE, 0x387, 0x303, 0x303, 0x387, 0x1FF, 0xFF, 0x03, 0x03, 0x303, 0x387, 0x1FE, 0xFC, 0x00, 0x00],
':': [0x00, 0x00, 0x00, 0x03, 0x03, 0x00, 0x00, 0x00, 0x00, 0x00, 0x03, 0x03, 0x00, 0x00, 0x00, 0x00],
';': [0x00, 0x00, 0x00, 0x06, 0x06, 0x00, 0x00, 0x00, 0x00, 0x00, 0x06, 0x06, 0x03, 0x06, 0x00, 0x00],
'<': [0x03, 0x0F, 0x3C, 0xF0, 0x3C0, 0x700, 0x3C0, 0xF0, 0x3C, 0x0F, 0x03, 0x00, 0x00, 0x00, 0x00, 0x00],
'=': [0x00, 0x00, 0x00, 0x00, 0x3FF, 0x3FF, 0x00, 0x00, 0x3FF, 0x3FF, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00],
'>': [0x600, 0x780, 0x1E0, 0x78, 0x1E, 0x07, 0x1E, 0x78, 0x1E0, 0x780, 0x600, 0x00, 0x00, 0x00, 0x00, 0x00],
'?': [0x7C, 0xFE, 0x1C7, 0x183, 0x03, 0x07, 0x0E, 0x1C, 0x18, 0x00, 0x18, 0x18, 0x00, 0x00, 0x00, 0x00],
'@': [0x1F8, 0x3FC, 0x70E, 0x606, 0xE3F, 0xE7F, 0xE67, 0xE67, 0xE67, 0xE7F, 0xE3E, 0x600, 0x70E, 0x3FC, 0x1F8, 0x00],
'A': [0x70, 0xF8, 0xF8, 0x1DC, 0x1DC, 0x38E, 0x38E, 0x38E, 0x3FE, 0x7FF, 0x707, 0x707, 0x707, 0x707, 0x00, 0x00],
'B': [0x7F8, 0x7FC, 0x70E, 0x70E, 0x70E, 0x71C, 0x7F8, 0x7FC, 0x70E, 0x707, 0x707, 0x707, 0x70E, 0x7FE, 0x7FC, 0x00],
'C': [0x1FC, 0x3FE, 0x787, 0x703, 0xE00, 0xE00, 0xE00, 0xE00, 0xE00, 0xE00, 0x703, 0x787, 0x3FE, 0x1FC, 0x00, 0x00],
'D': [0xFF0, 0xFFC, 0xE1E, 0xE0E, 0xE07, 0xE07, 0xE07, 0xE07, 0xE07, 0xE07, 0xE0E, 0xE1E, 0xFFC, 0xFF0, 0x00, 0x00],
'E': [0x7FF, 0x7FF, 0x700, 0x700, 0x700, 0x700, 0x7FC, 0x7FC, 0x700, 0x700, 0x700, 0x700, 0x7FF, 0x7FF, 0x00, 0x00],
'F': [0x7FF, 0x7FF, 0x700, 0x700, 0x700, 0x700, 0x7FC, 0x7FC, 0x700, 0x700, 0x700, 0x700, 0x700, 0x700, 0x00, 0x00],
'G': [0x1FC, 0x3FE, 0x787, 0x703, 0xE00, 0xE00, 0xE3F, 0xE3F, 0xE07, 0xE07, 0x707, 0x787, 0x3FF, 0x1FF, 0x00, 0x00],
'H': [0xE07, 0xE07, 0xE07, 0xE07, 0xE07, 0xE07, 0xFFF, 0xFFF, 0xE07, 0xE07, 0xE07, 0xE07, 0xE07, 0xE07, 0x00, 0x00],
'I': [0x7F, 0x7F, 0x1C, 0x1C, 0x1C, 0x1C, 0x1C, 0x1C, 0x1C, 0x1C, 0x1C, 0x1C, 0x7F, 0x7F, 0x00, 0x00],
'J': [0x7F, 0x7F, 0x1C, 0x1C, 0x1C, 0x1C, 0x1C, 0x1C, 0x1C, 0x71C, 0x71C, 0x738, 0x3F8, 0x1F0, 0x00, 0x00],
'K': [0xE0E, 0xE1C, 0xE38, 0xE70, 0xEE0, 0xFC0, 0xFC0, 0xFE0, 0xEF0, 0xE78, 0xE3C, 0xE1C, 0xE0E, 0xE07, 0x00, 0x00],
'L': [0x700, 0x700, 0x700, 0x700, 0x700, 0x700, 0x700, 0x700, 0x700, 0x700, 0x700, 0x700, 0x7FF, 0x7FF, 0x00, 0x00],
'M': [0x1C07, 0x1E0F, 0x1E0F, 0x1F1F, 0x1F1F, 0x1DB7, 0x1DB7, 0x1DB7, 0x1CE7, 0x1CE7, 0x1CE7, 0x1C07, 0x1C07, 0x1C07, 0x00, 0x00],
'N': [0xE07, 0xF07, 0xF07, 0xF87, 0xFC7, 0xEE7, 0xE77, 0xE77, 0xE3F, 0xE1F, 0xE1F, 0xE0F, 0xE07, 0xE07, 0x00, 0x00],
'O': [0x1F8, 0x3FC, 0x78E, 0x706, 0xE07, 0xE07, 0xE07, 0xE07, 0xE07, 0xE07, 0x706, 0x78E, 0x3FC, 0x1F8, 0x00, 0x00],
'P': [0x7F8, 0x7FC, 0x70E, 0x707, 0x707, 0x707, 0x70E, 0x7FC, 0x7F8, 0x700, 0x700, 0x700, 0x700, 0x700, 0x00, 0x00],
'Q': [0x1F8, 0x3FC, 0x78E, 0x706, 0xE07, 0xE07, 0xE07, 0xE07, 0xE07, 0xE67, 0x77E, 0x7BE, 0x3FC, 0x1F7, 0x00, 0x00],
'R': [0xFF0, 0xFF8, 0xE1C, 0xE0E, 0xE0E, 0xE0E, 0xE1C, 0xFF8, 0xFF0, 0xE78, 0xE3C, 0xE1E, 0xE0E, 0xE07, 0x00, 0x00],
'S': [0x1FC, 0x3FE, 0x787, 0x703, 0x700, 0x780, 0x3FC, 0xFE, 0x07, 0x03, 0x703, 0x787, 0x3FE, 0x1FC, 0x00, 0x00],
'T': [0x7FF, 0x7FF, 0x70, 0x70, 0x70, 0x70, 0x70, 0x70, 0x70, 0x70, 0x70, 0x70, 0x70, 0x70, 0x00, 0x00],
'U': [0xE07, 0xE07, 0xE07, 0xE07, 0xE07, 0xE07, 0xE07, 0xE07, 0xE07, 0xE07, 0xE07, 0x70E, 0x7FE, 0x1F8, 0x00, 0x00],
'V': [0xE07, 0xE07, 0xE07, 0x70E, 0x70E, 0x70E, 0x39C, 0x39C, 0x39C, 0x1F8, 0x1F8, 0x1F8, 0xF0, 0xF0, 0x00, 0x00],
'W': [0xE0E, 0xE0E, 0xE0E, 0xE0E, 0xE0E, 0xE0E, 0x6B6, 0x6B6, 0x6B6, 0x7F7, 0x7F7, 0x7F7, 0x3E3, 0x3E3, 0x00, 0x00],
'X': [0xE07, 0x70E, 0x70E, 0x39C, 0x1F8, 0x1F8, 0xF0, 0xF0, 0x1F8, 0x1F8, 0x39C, 0x70E, 0x70E, 0xE07, 0x00, 0x00],
'Y': [0xE07, 0x70E, 0x70E, 0x39C, 0x39C, 0x1F8, 0x1F8, 0xF0, 0xF0, 0xF0, 0xF0, 0xF0, 0xF0, 0xF0, 0x00, 0x00],
'Z': [0x7FF, 0x7FF, 0x0E, 0x1C, 0x38, 0x70, 0xE0, 0x1C0, 0x380, 0x700, 0xE00, 0xE00, 0x7FF, 0x7FF, 0x00, 0x00],
'[': [0x3F, 0x3F, 0x30, 0x30, 0x30, 0x30, 0x30, 0x30, 0x30, 0x30, 0x30, 0x30, 0x30, 0x3F, 0x3F, 0x00],
'\\': [0x3000, 0x3800, 0x1C00, 0xE00, 0x700, 0x380, 0x1C0, 0xE0, 0x70, 0x38, 0x1C, 0x0E, 0x07, 0x03, 0x00, 0x00],
']': [0x3F, 0x3F, 0x03, 0x03, 0x03, 0x03, 0x03, 0x03, 0x03, 0x03, 0x03, 0x03, 0x03, 0x3F, 0x3F, 0x00],
'^': [0x30, 0x78, 0xFC, 0x1CE, 0x387, 0x303, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00],
'_': [0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xFFFF, 0xFFFF],
'`': [0x0C, 0x06, 0x03, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00],
'a': [0x00, 0x00, 0x00, 0x7C, 0xFE, 0x1C7, 0x07, 0x7F, 0xFF, 0x1C7, 0x387, 0x387, 0x1FF, 0xF7, 0x00, 0x00],
'b': [0x380, 0x380, 0x380, 0x3BC, 0x3FE, 0x3CF, 0x387, 0x387, 0x387, 0x387, 0x387, 0x3CF, 0x3FE, 0x3BC, 0x00, 0x00],
'c': [0x00, 0x00, 0x00, 0x7C, 0xFE, 0x1C7, 0x383, 0x380, 0x380, 0x380, 0x383, 0x1C7, 0xFE, 0x7C, 0x00, 0x00],
'd': [0x07, 0x07, 0x07, 0x77, 0xFF, 0x1CF, 0x387, 0x387, 0x387, 0x387, 0x387, 0x1CF, 0xFF, 0x77, 0x00, 0x00],
'e': [0x00, 0x00, 0x00, 0x7C, 0xFE, 0x1C7, 0x383, 0x3FF, 0x3FF, 0x380, 0x381, 0x1C3, 0xFF, 0x7C, 0x00, 0x00],
'f': [0x1F, 0x3F, 0x78, 0x70, 0x1FE, 0x1FE, 0x70, 0x70, 0x70, 0x70, 0x70, 0x70, 0x70, 0x70, 0x00, 0x00],
'g': [0x00, 0x00, 0x00, 0x77, 0xFF, 0x1CF, 0x387, 0x387, 0x387, 0x387, 0x1CF, 0xFF, 0x77, 0x07, 0x1FE, 0x1FC],
'h': [0x380, 0x380, 0x380, 0x3BC, 0x3FE, 0x3CF, 0x387, 0x387, 0x387, 0x387, 0x387, 0x387, 0x387, 0x387, 0x00, 0x00],
'i': [0x0C, 0x0C, 0x00, 0x3C, 0x3C, 0x0C, 0x0C, 0x0C, 0x0C, 0x0C, 0x0C, 0x0C, 0x3F, 0x3F, 0x00, 0x00],
'j': [0x03, 0x03, 0x00, 0x0F, 0x0F, 0x03, 0x03, 0x03, 0x03, 0x03, 0x03, 0x03, 0xE3, 0xE3, 0x7E, 0x3C],
'k': [0x700, 0x700, 0x700, 0x70E, 0x71C, 0x738, 0x770, 0x7E0, 0x7E0, 0x770, 0x738, 0x71C, 0x70E, 0x707, 0x00, 0x00],
'l': [0x3C, 0x3C, 0x0C, 0x0C, 0x0C, 0x0C, 0x0C, 0x0C, 0x0C, 0x0C, 0x0C, 0x0C, 0x3F, 0x3F, 0x00, 0x00],
'm': [0x00, 0x00, 0x00, 0xEE7, 0xFFF, 0xF3B, 0xE3B, 0xE3B, 0xE3B, 0xE3B, 0xE3B, 0xE3B, 0xE3B, 0xE3B, 0x00, 0x00],
'n': [0x00, 0x00, 0x00, 0x3BC, 0x3FE, 0x3CF, 0x387, 0x387, 0x387, 0x387, 0x387, 0x387, 0x387, 0x387, 0x00, 0x00],
'o': [0x00, 0x00, 0x00, 0x7C, 0xFE, 0x1C7, 0x383, 0x383, 0x383, 0x383, 0x383, 0x1C7, 0xFE, 0x7C, 0x00, 0x00],
'p': [0x00, 0x00, 0x00, 0x3BC, 0x3FE, 0x3CF, 0x387, 0x387, 0x387, 0x387, 0x3CF, 0x3FE, 0x3BC, 0x380, 0x380, 0x380],
'q': [0x00, 0x00, 0x00, 0x77, 0xFF, 0x1CF, 0x387, 0x387, 0x387, 0x387, 0x1CF, 0xFF, 0x77, 0x07, 0x07, 0x07],
'r': [0x00, 0x00, 0x00, 0x3BC, 0x3FE, 0x3CF, 0x387, 0x380, 0x380, 0x380, 0x380, 0x380, 0x380, 0x380, 0x00, 0x00],
's': [0x00, 0x00, 0x00, 0xFC, 0x1FE, 0x387, 0x380, 0x1F8, 0xFE, 0x07, 0x07, 0x387, 0x3FE, 0x1FC, 0x00, 0x00],
't': [0x38, 0x38, 0x38, 0xFF, 0xFF, 0x38, 0x38, 0x38, 0x38, 0x38, 0x38, 0x38, 0x1F, 0x0F, 0x00, 0x00],
'u': [0x00, 0x00, 0x00, 0x387, 0x387, 0x387, 0x387, 0x387, 0x387, 0x387, 0x387, 0x1CF, 0x1FF, 0x77, 0x00, 0x00],
'v': [0x00, 0x00, 0x00, 0x707, 0x707, 0x38E, 0x38E, 0x38E, 0x1DC, 0x1DC, 0xF8, 0xF8, 0x70, 0x70, 0x00, 0x00],
'w': [0x00, 0x00, 0x00, 0xE0E, 0xE0E, 0xE0E, 0x6B6, 0x6B6, 0x6B6, 0x7F7, 0x7F7, 0x3E3, 0x3E3, 0x1C1, 0x00, 0x00],
'x': [0x00, 0x00, 0x00, 0x707, 0x38E, 0x1DC, 0xF8, 0x70, 0x70, 0xF8, 0x1DC, 0x38E, 0x707, 0x707, 0x00, 0x00],
'y': [0x00, 0x00, 0x00, 0x707, 0x707, 0x38E, 0x38E, 0x1DC, 0x1DC, 0xF8, 0xF8, 0x70, 0x70, 0xE0, 0x1C0, 0x00],
'z': [0x00, 0x00, 0x00, 0x3FF, 0x3FF, 0x0E, 0x1C, 0x38, 0x70, 0xE0, 0x1C0, 0x380, 0x3FF, 0x3FF, 0x00, 0x00],
'{': [0x0F, 0x1E, 0x1C, 0x1C, 0x1C, 0x1C, 0x38, 0x70, 0x38, 0x1C, 0x1C, 0x1C, 0x1C, 0x1E, 0x0F, 0x00],
'|': [0x03, 0x03, 0x03, 0x03, 0x03, 0x03, 0x03, 0x03, 0x03, 0x03, 0x03, 0x03, 0x03, 0x03, 0x03, 0x00],
'}': [0x78, 0x3C, 0x1C, 0x1C, 0x1C, 0x1C, 0x0E, 0x07, 0x0E, 0x1C, 0x1C, 0x1C, 0x1C, 0x3C, 0x78, 0x00],
'~': [0x00, 0x00, 0x00, 0x00, 0x00, 0x1C7, 0x3EF, 0x77E, 0x738, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00],
'°': [0x0E, 0x1F, 0x1F, 0x1F, 0x0E, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00],
'Ä': [0x18C, 0x18C, 0x00, 0xF8, 0x1FC, 0x38E, 0x38E, 0x38E, 0x3FE, 0x7FF, 0x707, 0x707, 0x707, 0x707, 0x00, 0x00],
'Ö': [0x318, 0x318, 0x00, 0x1F8, 0x3FC, 0x78E, 0x706, 0xE07, 0xE07, 0xE07, 0xE07, 0x706, 0x78E, 0x3FC, 0x1F8, 0x00],
'Ü': [0x318, 0x318, 0x00, 0xE07, 0xE07, 0xE07, 0xE07, 0xE07, 0xE07, 0xE07, 0xE07, 0xE07, 0x70E, 0x7FE, 0x1F8, 0x00],
'ß': [0x7C, 0xFE, 0x1C7, 0x1C7, 0x1C7, 0x1CE, 0x1FC, 0x1FE, 0x1CF, 0x1C7, 0x1C7, 0x1CF, 0x1FE, 0x1BC, 0x180, 0x180],
'ä': [0xC6, 0xC6, 0x00, 0x7C, 0xFE, 0x1C7, 0x07, 0x7F, 0xFF, 0x1C7, 0x387, 0x387, 0x1FF, 0xF7, 0x00, 0x00],
'ö': [0xC6, 0xC6, 0x00, 0x7C, 0xFE, 0x1C7, 0x383, 0x383, 0x383, 0x383, 0x383, 0x1C7, 0xFE, 0x7C, 0x00, 0x00],
'ü': [0xC6, 0xC6, 0x00, 0x387, 0x387, 0x387, 0x387, 0x387, 0x387, 0x387, 0x387, 0x1CF, 0x1FF, 0x77, 0x00, 0x00],
'': [0x00, 0x00, 0x00, 0x00, 0x3C, 0x7E, 0xFF, 0xFF, 0xFF, 0xFF, 0x7E, 0x3C, 0x00, 0x00, 0x00, 0x00],
'': [0x1F8, 0x7FC, 0xF0E, 0x1C07, 0x1FC0, 0x1FC0, 0x3800, 0x1FC0, 0x1FC0, 0x3800, 0x1FC0, 0x1FC0, 0x1C07, 0xF0E, 0x7FC, 0x1F8],
}

View File

@@ -0,0 +1,115 @@
font_3x5 = {
# Jedes Zeichen ist genau 3 Pixel breit, 5 Pixel hoch
' ': [0x00, 0x00, 0x00, 0x00, 0x00],
'!': [0x01, 0x01, 0x01, 0x00, 0x01],
'"': [0x05, 0x05, 0x00, 0x00, 0x00],
'#': [0x05, 0x07, 0x05, 0x07, 0x05],
'$': [0x07, 0x05, 0x07, 0x05, 0x07],
'%': [0x05, 0x01, 0x02, 0x04, 0x05],
'&': [0x02, 0x05, 0x02, 0x05, 0x06],
"'": [0x01, 0x01, 0x00, 0x00, 0x00],
'(': [0x02, 0x04, 0x04, 0x04, 0x02],
')': [0x04, 0x02, 0x02, 0x02, 0x04],
'*': [0x00, 0x05, 0x02, 0x05, 0x00],
'+': [0x00, 0x02, 0x07, 0x02, 0x00],
',': [0x00, 0x00, 0x00, 0x02, 0x04],
'-': [0x00, 0x00, 0x07, 0x00, 0x00],
'.': [0x00, 0x00, 0x00, 0x00, 0x02],
'/': [0x01, 0x01, 0x02, 0x04, 0x04],
# Zahlen
'0': [0x07, 0x05, 0x05, 0x05, 0x07],
'1': [0x02, 0x06, 0x02, 0x02, 0x07],
'2': [0x07, 0x01, 0x07, 0x04, 0x07],
'3': [0x07, 0x01, 0x07, 0x01, 0x07],
'4': [0x05, 0x05, 0x07, 0x01, 0x01],
'5': [0x07, 0x04, 0x07, 0x01, 0x07],
'6': [0x07, 0x04, 0x07, 0x05, 0x07],
'7': [0x07, 0x01, 0x01, 0x01, 0x01],
'8': [0x07, 0x05, 0x07, 0x05, 0x07],
'9': [0x07, 0x05, 0x07, 0x01, 0x07],
# Großbuchstaben
'A': [0x02, 0x05, 0x07, 0x05, 0x05],
'B': [0x06, 0x05, 0x06, 0x05, 0x06],
'C': [0x07, 0x04, 0x04, 0x04, 0x07],
'D': [0x06, 0x05, 0x05, 0x05, 0x06],
'E': [0x07, 0x04, 0x07, 0x04, 0x07],
'F': [0x07, 0x04, 0x07, 0x04, 0x04],
'G': [0x07, 0x04, 0x05, 0x05, 0x07],
'H': [0x05, 0x05, 0x07, 0x05, 0x05],
'I': [0x07, 0x02, 0x02, 0x02, 0x07],
'J': [0x07, 0x02, 0x02, 0x02, 0x06],
'K': [0x05, 0x05, 0x06, 0x05, 0x05],
'L': [0x04, 0x04, 0x04, 0x04, 0x07],
'M': [0x05, 0x07, 0x07, 0x05, 0x05],
'N': [0x05, 0x07, 0x07, 0x07, 0x05],
'O': [0x07, 0x05, 0x05, 0x05, 0x07],
'P': [0x07, 0x05, 0x07, 0x04, 0x04],
'Q': [0x07, 0x05, 0x05, 0x07, 0x03],
'R': [0x07, 0x05, 0x06, 0x05, 0x05],
'S': [0x07, 0x04, 0x07, 0x01, 0x07],
'T': [0x07, 0x02, 0x02, 0x02, 0x02],
'U': [0x05, 0x05, 0x05, 0x05, 0x07],
'V': [0x05, 0x05, 0x05, 0x05, 0x02],
'W': [0x05, 0x05, 0x07, 0x07, 0x05],
'X': [0x05, 0x05, 0x02, 0x05, 0x05],
'Y': [0x05, 0x05, 0x07, 0x02, 0x02],
'Z': [0x07, 0x01, 0x02, 0x04, 0x07],
# Kleinbuchstaben
'a': [0x00, 0x07, 0x05, 0x05, 0x07],
'b': [0x04, 0x06, 0x05, 0x05, 0x06],
'c': [0x00, 0x07, 0x04, 0x04, 0x07],
'd': [0x01, 0x07, 0x05, 0x05, 0x07],
'e': [0x00, 0x07, 0x07, 0x04, 0x07],
'f': [0x03, 0x04, 0x06, 0x04, 0x04],
'g': [0x07, 0x05, 0x07, 0x01, 0x06],
'h': [0x04, 0x06, 0x05, 0x05, 0x05],
'i': [0x02, 0x00, 0x02, 0x02, 0x02],
'j': [0x02, 0x00, 0x02, 0x02, 0x06],
'k': [0x04, 0x05, 0x06, 0x05, 0x05],
'l': [0x06, 0x02, 0x02, 0x02, 0x02],
'm': [0x00, 0x07, 0x07, 0x05, 0x05],
'n': [0x00, 0x06, 0x05, 0x05, 0x05],
'o': [0x00, 0x07, 0x05, 0x05, 0x07],
'p': [0x00, 0x06, 0x05, 0x06, 0x04],
'q': [0x00, 0x07, 0x05, 0x07, 0x01],
'r': [0x00, 0x06, 0x05, 0x04, 0x04],
's': [0x00, 0x07, 0x06, 0x03, 0x07],
't': [0x02, 0x07, 0x02, 0x02, 0x03],
'u': [0x00, 0x05, 0x05, 0x05, 0x07],
'v': [0x00, 0x05, 0x05, 0x05, 0x02],
'w': [0x00, 0x05, 0x05, 0x07, 0x05],
'x': [0x00, 0x05, 0x02, 0x02, 0x05],
'y': [0x00, 0x05, 0x05, 0x07, 0x01],
'z': [0x00, 0x07, 0x02, 0x04, 0x07],
# Sonderzeichen
':': [0x00, 0x02, 0x00, 0x02, 0x00],
';': [0x00, 0x02, 0x00, 0x02, 0x04],
'<': [0x01, 0x02, 0x04, 0x02, 0x01],
'=': [0x00, 0x07, 0x00, 0x07, 0x00],
'>': [0x04, 0x02, 0x01, 0x02, 0x04],
'?': [0x07, 0x01, 0x02, 0x00, 0x02],
'@': [0x07, 0x05, 0x05, 0x04, 0x07],
'[': [0x07, 0x04, 0x04, 0x04, 0x07],
'\\': [0x04, 0x04, 0x02, 0x01, 0x01],
']': [0x07, 0x01, 0x01, 0x01, 0x07],
'^': [0x02, 0x05, 0x00, 0x00, 0x00],
'_': [0x00, 0x00, 0x00, 0x00, 0x07],
'`': [0x04, 0x02, 0x00, 0x00, 0x00],
'{': [0x03, 0x02, 0x06, 0x02, 0x03],
'|': [0x02, 0x02, 0x02, 0x02, 0x02],
'}': [0x06, 0x02, 0x03, 0x02, 0x06],
'~': [0x00, 0x05, 0x0A, 0x00, 0x00],
'°': [0x02, 0x05, 0x02, 0x00, 0x00],
# DEUTSCHE UMLAUTE - Großbuchstaben
'Ä': [0x05, 0x02, 0x05, 0x07, 0x05], # A mit Umlautpunkten
'Ö': [0x05, 0x07, 0x05, 0x05, 0x07], # O mit Umlautpunkten
'Ü': [0x05, 0x05, 0x05, 0x05, 0x07], # U mit Umlautpunkten
'': [0x07, 0x05, 0x07, 0x05, 0x05], # Scharfes S (Groß)
# DEUTSCHE UMLAUTE - Kleinbuchstaben
'ä': [0x05, 0x00, 0x07, 0x05, 0x07], # a mit Umlautpunkten
'ö': [0x05, 0x00, 0x07, 0x05, 0x07], # o mit Umlautpunkten
'ü': [0x05, 0x00, 0x05, 0x05, 0x07], # u mit Umlautpunkten
'ß': [0x06, 0x05, 0x06, 0x04, 0x04], # scharfes s (Klein)
}

View File

@@ -0,0 +1,127 @@
# fonts.py - Optimized fonts for LED matrix with character width adjustment
# 5x7 Font (Optimized Width)
font_5x7 = {
# Uppercase letters (A-Z) - Optimized for better spacing
'A': [0x0E, 0x11, 0x11, 0x1F, 0x11, 0x11, 0x11], # Width: 5
'B': [0x1E, 0x11, 0x11, 0x1E, 0x11, 0x11, 0x1E], # Width: 5
'C': [0x0E, 0x11, 0x10, 0x10, 0x10, 0x11, 0x0E], # Width: 5
'D': [0x1E, 0x11, 0x11, 0x11, 0x11, 0x11, 0x1E], # Width: 5
'E': [0x1F, 0x10, 0x10, 0x1E, 0x10, 0x10, 0x1F], # Width: 5
'F': [0x1F, 0x10, 0x10, 0x1E, 0x10, 0x10, 0x10], # Width: 5
'G': [0x0E, 0x11, 0x10, 0x13, 0x11, 0x11, 0x0F], # Width: 5
'H': [0x11, 0x11, 0x11, 0x1F, 0x11, 0x11, 0x11], # Width: 5
# 'I': [0x0E, 0x04, 0x04, 0x04, 0x04, 0x04, 0x0E], # Width: 3
'I': [0x07, 0x02, 0x02, 0x02, 0x02, 0x02, 0x07], # Width: 3
'J': [0x07, 0x02, 0x02, 0x02, 0x02, 0x12, 0x0C], # Width: 4
'K': [0x11, 0x12, 0x14, 0x18, 0x14, 0x12, 0x11], # Width: 5
'L': [0x10, 0x10, 0x10, 0x10, 0x10, 0x10, 0x1F], # Width: 5
'M': [0x11, 0x1B, 0x15, 0x15, 0x11, 0x11, 0x11], # Width: 5
'N': [0x11, 0x19, 0x19, 0x15, 0x13, 0x13, 0x11], # Width: 5
'O': [0x0E, 0x11, 0x11, 0x11, 0x11, 0x11, 0x0E], # Width: 5
'P': [0x1E, 0x11, 0x11, 0x1E, 0x10, 0x10, 0x10], # Width: 5
'Q': [0x0E, 0x11, 0x11, 0x11, 0x15, 0x12, 0x0D], # Width: 5
'R': [0x1E, 0x11, 0x11, 0x1E, 0x14, 0x12, 0x11], # Width: 5
'S': [0x0F, 0x10, 0x10, 0x0E, 0x01, 0x01, 0x1E], # Width: 5
'T': [0x1F, 0x04, 0x04, 0x04, 0x04, 0x04, 0x04], # Width: 5
'U': [0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x0E], # Width: 5
'V': [0x11, 0x11, 0x11, 0x11, 0x11, 0x0A, 0x04], # Width: 5
'W': [0x11, 0x11, 0x11, 0x15, 0x15, 0x15, 0x0A], # Width: 5
'X': [0x11, 0x11, 0x0A, 0x04, 0x0A, 0x11, 0x11], # Width: 5
'Y': [0x11, 0x11, 0x0A, 0x04, 0x04, 0x04, 0x04], # Width: 5
'Z': [0x1F, 0x01, 0x02, 0x04, 0x08, 0x10, 0x1F], # Width: 5
# German Uppercase Umlaute
'Ä': [0x0A, 0x00, 0x0E, 0x11, 0x1F, 0x11, 0x11], # Width: 5 (A Umlaut)
'Ö': [0x0A, 0x00, 0x0E, 0x11, 0x11, 0x11, 0x0E], # Width: 5 (O Umlaut)
'Ü': [0x0A, 0x00, 0x11, 0x11, 0x11, 0x11, 0x0E], # Width: 5 (U Umlaut)
'': [0x0E, 0x11, 0x11, 0x1E, 0x11, 0x11, 0x1E], # Width: 5 (Eszett - scharfes S)
# Lowercase letters (a-z) - Optimized for compact display
'a': [0x00, 0x00, 0x0E, 0x01, 0x0F, 0x11, 0x0F], # Width: 4
'b': [0x10, 0x10, 0x16, 0x19, 0x11, 0x11, 0x1E], # Width: 5
'c': [0x00, 0x00, 0x0E, 0x11, 0x10, 0x11, 0x0E], # Width: 4
'd': [0x01, 0x01, 0x0D, 0x13, 0x11, 0x11, 0x0F], # Width: 5
'e': [0x00, 0x00, 0x0E, 0x11, 0x1F, 0x10, 0x0E], # Width: 4
'f': [0x06, 0x09, 0x08, 0x1C, 0x08, 0x08, 0x08], # Width: 4
'g': [0x00, 0x0F, 0x11, 0x11, 0x0F, 0x01, 0x0E], # Width: 5
'h': [0x10, 0x10, 0x16, 0x19, 0x11, 0x11, 0x11], # Width: 5
# 'i': [0x00, 0x04, 0x00, 0x0C, 0x04, 0x04, 0x0E], # Width: 2
'i': [0x00, 0x02, 0x00, 0x06, 0x02, 0x02, 0x07], # Width: 2
'j': [0x00, 0x02, 0x00, 0x06, 0x02, 0x12, 0x0C], # Width: 3
'k': [0x10, 0x10, 0x12, 0x14, 0x18, 0x14, 0x12], # Width: 4
# 'l': [0x0C, 0x04, 0x04, 0x04, 0x04, 0x04, 0x0E], # Width: 3
'l': [0x06, 0x02, 0x02, 0x02, 0x02, 0x02, 0x07], # Width: 3
'm': [0x00, 0x00, 0x1A, 0x15, 0x15, 0x15, 0x15], # Width: 5
'n': [0x00, 0x00, 0x16, 0x19, 0x11, 0x11, 0x11], # Width: 5
'o': [0x00, 0x00, 0x0E, 0x11, 0x11, 0x11, 0x0E], # Width: 4
'p': [0x00, 0x00, 0x1E, 0x11, 0x1E, 0x10, 0x10], # Width: 5
'q': [0x00, 0x00, 0x0D, 0x13, 0x0F, 0x01, 0x01], # Width: 5
'r': [0x00, 0x00, 0x16, 0x19, 0x10, 0x10, 0x10], # Width: 5
's': [0x00, 0x00, 0x0E, 0x10, 0x0E, 0x01, 0x1E], # Width: 4
't': [0x08, 0x08, 0x1C, 0x08, 0x08, 0x09, 0x06], # Width: 4
'u': [0x00, 0x00, 0x11, 0x11, 0x11, 0x13, 0x0D], # Width: 5
'v': [0x00, 0x00, 0x11, 0x11, 0x11, 0x0A, 0x04], # Width: 5
'w': [0x00, 0x00, 0x11, 0x11, 0x15, 0x15, 0x0A], # Width: 5
'x': [0x00, 0x00, 0x11, 0x0A, 0x04, 0x0A, 0x11], # Width: 5
'y': [0x00, 0x00, 0x11, 0x11, 0x0F, 0x01, 0x0E], # Width: 5
'z': [0x00, 0x00, 0x1F, 0x02, 0x04, 0x08, 0x1F], # Width: 5
# German Lowercase Umlaute
'ä': [0x0A, 0x00, 0x0E, 0x01, 0x0F, 0x11, 0x0F], # Width: 4 (a Umlaut)
'ö': [0x0A, 0x00, 0x0E, 0x11, 0x11, 0x11, 0x0E], # Width: 4 (o Umlaut)
'ü': [0x0A, 0x00, 0x11, 0x11, 0x11, 0x13, 0x0D], # Width: 5 (u Umlaut)
'ß': [0x00, 0x00, 0x0E, 0x11, 0x1E, 0x11, 0x1E], # Width: 5 (Eszett - scharfes S)
# Numbers (0-9) - Optimized for consistent width
'0': [0x0E, 0x11, 0x13, 0x15, 0x19, 0x11, 0x0E], # Width: 5
'1': [0x02, 0x06, 0x02, 0x02, 0x02, 0x02, 0x07], # Width: 3
# '1': [0x04, 0x0C, 0x04, 0x04, 0x04, 0x04, 0x0E], # Width: 3
# '1': [0x08, 0x18, 0x08, 0x08, 0x08, 0x08, 0x1C], # Width: 3
'2': [0x0E, 0x11, 0x01, 0x02, 0x04, 0x08, 0x1F], # Width: 5
'3': [0x1F, 0x02, 0x04, 0x02, 0x01, 0x11, 0x0E], # Width: 5
'4': [0x02, 0x06, 0x0A, 0x12, 0x1F, 0x02, 0x02], # Width: 5
'5': [0x1F, 0x10, 0x1E, 0x01, 0x01, 0x11, 0x0E], # Width: 5
'6': [0x06, 0x08, 0x10, 0x1E, 0x11, 0x11, 0x0E], # Width: 5
'7': [0x1F, 0x01, 0x02, 0x04, 0x08, 0x08, 0x08], # Width: 5
'8': [0x0E, 0x11, 0x11, 0x0E, 0x11, 0x11, 0x0E], # Width: 5
'9': [0x0E, 0x11, 0x11, 0x0F, 0x01, 0x02, 0x0C], # Width: 5
# Punctuation and symbols - Optimized widths
' ': [0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00], # Width: 2
# '!': [0x04, 0x04, 0x04, 0x04, 0x00, 0x00, 0x04], # Width: 1
'!': [0x01, 0x01, 0x01, 0x01, 0x01, 0x00, 0x01], # Width: 1
'?': [0x0E, 0x11, 0x02, 0x04, 0x04, 0x00, 0x04], # Width: 5
'.': [0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01], # Width: 1
',': [0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x02], # Width: 1
':': [0x00, 0x00, 0x01, 0x00, 0x00, 0x01, 0x00], # Width: 1
';': [0x00, 0x00, 0x01, 0x00, 0x00, 0x01, 0x02], # Width: 1
"'": [0x01, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00], # Width: 1
'"': [0x05, 0x05, 0x00, 0x00, 0x00, 0x00, 0x00], # Width: 3
'-': [0x00, 0x00, 0x00, 0x1F, 0x00, 0x00, 0x00], # Width: 5
'_': [0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x1F], # Width: 5
'+': [0x00, 0x04, 0x04, 0x1F, 0x04, 0x04, 0x00], # Width: 5
'=': [0x00, 0x00, 0x1F, 0x00, 0x1F, 0x00, 0x00], # Width: 5
'*': [0x00, 0x0A, 0x04, 0x1F, 0x04, 0x0A, 0x00], # Width: 5
'/': [0x00, 0x01, 0x02, 0x04, 0x08, 0x10, 0x00], # Width: 5
'\\': [0x00, 0x10, 0x08, 0x04, 0x02, 0x01, 0x00], # Width: 5
'(': [0x01, 0x02, 0x04, 0x04, 0x04, 0x02, 0x01], # Width: 3
')': [0x04, 0x02, 0x01, 0x01, 0x01, 0x02, 0x04], # Width: 3
'[': [0x07, 0x04, 0x04, 0x04, 0x04, 0x04, 0x07], # Width: 3
']': [0x07, 0x01, 0x01, 0x01, 0x01, 0x01, 0x07], # Width: 3
'{': [0x03, 0x02, 0x02, 0x04, 0x02, 0x02, 0x03], # Width: 3
'}': [0x06, 0x02, 0x02, 0x01, 0x02, 0x02, 0x06], # Width: 3
'<': [0x00, 0x01, 0x02, 0x04, 0x02, 0x01, 0x00], # Width: 4
'>': [0x00, 0x04, 0x02, 0x01, 0x02, 0x04, 0x00], # Width: 4
'@': [0x0E, 0x11, 0x17, 0x15, 0x17, 0x10, 0x0E], # Width: 5
'#': [0x0A, 0x0A, 0x1F, 0x0A, 0x1F, 0x0A, 0x0A], # Width: 5
'$': [0x04, 0x0F, 0x14, 0x0E, 0x05, 0x1E, 0x04], # Width: 5
'%': [0x18, 0x19, 0x02, 0x04, 0x08, 0x13, 0x03], # Width: 5
'&': [0x0C, 0x12, 0x14, 0x08, 0x15, 0x12, 0x0D], # Width: 5
'^': [0x04, 0x0A, 0x11, 0x00, 0x00, 0x00, 0x00], # Width: 5
'~': [0x00, 0x00, 0x00, 0x0D, 0x12, 0x00, 0x00], # Width: 5
# Special characters
'°': [0x07, 0x05, 0x07, 0x00, 0x00, 0x00, 0x00], # Width: 3 (Degree symbol)
'|': [0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01], # Width: 1 (Vertical bar)
'`': [0x02, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00], # Width: 2 (Backtick)
'': [0x0F, 0x0D, 0x0D, 0x0D, 0x0D, 0x0D, 0x0D], # Width: 5 (Paragraph symbol)
'': [0x00, 0x00, 0x02, 0x07, 0x02, 0x00, 0x00], # Width: 3 (Bullet point)
}

View File

@@ -0,0 +1,104 @@
font_8x8 = {
' ': [0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00],
'!': [0x03, 0x03, 0x03, 0x03, 0x00, 0x00, 0x03, 0x00],
'"': [0x1B, 0x1B, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00],
'#': [0x36, 0x36, 0x7F, 0x36, 0x7F, 0x36, 0x36, 0x00],
'$': [0x0C, 0x1F, 0x30, 0x1E, 0x03, 0x3E, 0x0C, 0x00],
'%': [0x31, 0x33, 0x06, 0x0C, 0x18, 0x33, 0x23, 0x00],
'&': [0x3C, 0x66, 0x3C, 0x38, 0x67, 0x66, 0x3F, 0x00],
"'": [0x03, 0x03, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00],
'(': [0x03, 0x06, 0x0C, 0x0C, 0x0C, 0x06, 0x03, 0x00],
')': [0x0C, 0x06, 0x03, 0x03, 0x03, 0x06, 0x0C, 0x00],
'*': [0x00, 0x66, 0x3C, 0xFF, 0x3C, 0x66, 0x00, 0x00],
'+': [0x00, 0x0C, 0x0C, 0x3F, 0x0C, 0x0C, 0x00, 0x00],
',': [0x00, 0x00, 0x00, 0x00, 0x00, 0x03, 0x03, 0x06],
'-': [0x00, 0x00, 0x00, 0x3F, 0x00, 0x00, 0x00, 0x00],
'.': [0x00, 0x00, 0x00, 0x00, 0x00, 0x03, 0x03, 0x00],
'/': [0x00, 0x03, 0x06, 0x0C, 0x18, 0x30, 0x00, 0x00],
'0': [0x1E, 0x33, 0x37, 0x3B, 0x33, 0x33, 0x1E, 0x00],
'1': [0x0C, 0x1C, 0x0C, 0x0C, 0x0C, 0x0C, 0x3F, 0x00],
'2': [0x1E, 0x33, 0x03, 0x06, 0x0C, 0x18, 0x3F, 0x00],
'3': [0x1E, 0x33, 0x03, 0x0E, 0x03, 0x33, 0x1E, 0x00],
'4': [0x06, 0x0E, 0x1E, 0x36, 0x3F, 0x06, 0x06, 0x00],
'5': [0x3F, 0x30, 0x3E, 0x03, 0x03, 0x33, 0x1E, 0x00],
'6': [0x1E, 0x33, 0x30, 0x3E, 0x33, 0x33, 0x1E, 0x00],
'7': [0x3F, 0x03, 0x06, 0x0C, 0x0C, 0x0C, 0x0C, 0x00],
'8': [0x1E, 0x33, 0x33, 0x1E, 0x33, 0x33, 0x1E, 0x00],
'9': [0x1E, 0x33, 0x33, 0x1F, 0x03, 0x33, 0x1E, 0x00],
':': [0x00, 0x03, 0x03, 0x00, 0x00, 0x03, 0x03, 0x00],
';': [0x00, 0x03, 0x03, 0x00, 0x00, 0x03, 0x03, 0x06],
'<': [0x00, 0x03, 0x06, 0x0C, 0x06, 0x03, 0x00, 0x00],
'=': [0x00, 0x00, 0x3F, 0x00, 0x3F, 0x00, 0x00, 0x00],
'>': [0x00, 0x0C, 0x06, 0x03, 0x06, 0x0C, 0x00, 0x00],
'?': [0x1E, 0x33, 0x06, 0x0C, 0x0C, 0x00, 0x0C, 0x00],
'@': [0x3C, 0x42, 0x99, 0xA5, 0xA5, 0x9E, 0x40, 0x3C],
'A': [0x0C, 0x1E, 0x33, 0x33, 0x3F, 0x33, 0x33, 0x00],
'B': [0x3E, 0x33, 0x33, 0x3E, 0x33, 0x33, 0x3E, 0x00],
'C': [0x1E, 0x33, 0x30, 0x30, 0x30, 0x33, 0x1E, 0x00],
'D': [0x3C, 0x36, 0x33, 0x33, 0x33, 0x36, 0x3C, 0x00],
'E': [0x3F, 0x30, 0x30, 0x3C, 0x30, 0x30, 0x3F, 0x00],
'F': [0x3F, 0x30, 0x30, 0x3C, 0x30, 0x30, 0x30, 0x00],
'G': [0x1E, 0x33, 0x30, 0x37, 0x33, 0x33, 0x1E, 0x00],
'H': [0x33, 0x33, 0x33, 0x3F, 0x33, 0x33, 0x33, 0x00],
'I': [0x0F, 0x06, 0x06, 0x06, 0x06, 0x06, 0x0F, 0x00],
'J': [0x0F, 0x06, 0x06, 0x06, 0x06, 0x36, 0x1C, 0x00],
'K': [0x33, 0x36, 0x3C, 0x38, 0x3C, 0x36, 0x33, 0x00],
'L': [0x30, 0x30, 0x30, 0x30, 0x30, 0x30, 0x3F, 0x00],
'M': [0x63, 0x77, 0x7F, 0x6B, 0x63, 0x63, 0x63, 0x00],
'N': [0x33, 0x3B, 0x3F, 0x3F, 0x37, 0x33, 0x33, 0x00],
'O': [0x1E, 0x33, 0x33, 0x33, 0x33, 0x33, 0x1E, 0x00],
'P': [0x3E, 0x33, 0x33, 0x3E, 0x30, 0x30, 0x30, 0x00],
'Q': [0x1E, 0x33, 0x33, 0x33, 0x33, 0x1E, 0x07, 0x00],
'R': [0x3E, 0x33, 0x33, 0x3E, 0x3C, 0x36, 0x33, 0x00],
'S': [0x1E, 0x33, 0x30, 0x1E, 0x03, 0x33, 0x1E, 0x00],
'T': [0x3F, 0x0C, 0x0C, 0x0C, 0x0C, 0x0C, 0x0C, 0x00],
'U': [0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x1E, 0x00],
'V': [0x33, 0x33, 0x33, 0x33, 0x33, 0x1E, 0x0C, 0x00],
'W': [0x63, 0x63, 0x63, 0x6B, 0x7F, 0x77, 0x63, 0x00],
'X': [0x33, 0x33, 0x1E, 0x0C, 0x1E, 0x33, 0x33, 0x00],
'Y': [0x33, 0x33, 0x33, 0x1E, 0x0C, 0x0C, 0x0C, 0x00],
'Z': [0x3F, 0x03, 0x06, 0x0C, 0x18, 0x30, 0x3F, 0x00],
'[': [0x0F, 0x0C, 0x0C, 0x0C, 0x0C, 0x0C, 0x0F, 0x00],
'\\': [0x00, 0x30, 0x18, 0x0C, 0x06, 0x03, 0x00, 0x00],
']': [0x0F, 0x03, 0x03, 0x03, 0x03, 0x03, 0x0F, 0x00],
'^': [0x0C, 0x1E, 0x33, 0x00, 0x00, 0x00, 0x00, 0x00],
'_': [0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x3F],
'`': [0x06, 0x03, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00],
'a': [0x00, 0x00, 0x1E, 0x03, 0x1F, 0x33, 0x1F, 0x00],
'b': [0x30, 0x30, 0x3E, 0x33, 0x33, 0x33, 0x3E, 0x00],
'c': [0x00, 0x00, 0x1E, 0x33, 0x30, 0x33, 0x1E, 0x00],
'd': [0x03, 0x03, 0x1F, 0x33, 0x33, 0x33, 0x1F, 0x00],
'e': [0x00, 0x00, 0x1E, 0x33, 0x3F, 0x30, 0x1E, 0x00],
'f': [0x0E, 0x1B, 0x18, 0x3C, 0x18, 0x18, 0x18, 0x00],
'g': [0x00, 0x00, 0x1F, 0x33, 0x33, 0x1F, 0x03, 0x3E],
'h': [0x30, 0x30, 0x3E, 0x33, 0x33, 0x33, 0x33, 0x00],
'i': [0x06, 0x00, 0x0E, 0x06, 0x06, 0x06, 0x0F, 0x00],
'j': [0x03, 0x00, 0x03, 0x03, 0x03, 0x03, 0x33, 0x1E],
'k': [0x30, 0x30, 0x33, 0x36, 0x3C, 0x36, 0x33, 0x00],
'l': [0x0E, 0x06, 0x06, 0x06, 0x06, 0x06, 0x0F, 0x00],
'm': [0x00, 0x00, 0x66, 0x7F, 0x7F, 0x6B, 0x63, 0x00],
'n': [0x00, 0x00, 0x3E, 0x33, 0x33, 0x33, 0x33, 0x00],
'o': [0x00, 0x00, 0x1E, 0x33, 0x33, 0x33, 0x1E, 0x00],
'p': [0x00, 0x00, 0x3E, 0x33, 0x33, 0x3E, 0x30, 0x30],
'q': [0x00, 0x00, 0x1F, 0x33, 0x33, 0x1F, 0x03, 0x03],
'r': [0x00, 0x00, 0x3E, 0x33, 0x30, 0x30, 0x30, 0x00],
's': [0x00, 0x00, 0x1F, 0x30, 0x1E, 0x03, 0x3E, 0x00],
't': [0x0C, 0x0C, 0x1F, 0x0C, 0x0C, 0x0C, 0x07, 0x00],
'u': [0x00, 0x00, 0x33, 0x33, 0x33, 0x33, 0x1F, 0x00],
'v': [0x00, 0x00, 0x33, 0x33, 0x33, 0x1E, 0x0C, 0x00],
'w': [0x00, 0x00, 0x63, 0x6B, 0x7F, 0x3E, 0x36, 0x00],
'x': [0x00, 0x00, 0x33, 0x1E, 0x0C, 0x1E, 0x33, 0x00],
'y': [0x00, 0x00, 0x33, 0x33, 0x33, 0x1F, 0x06, 0x3C],
'z': [0x00, 0x00, 0x3F, 0x06, 0x0C, 0x18, 0x3F, 0x00],
'{': [0x07, 0x0C, 0x0C, 0x38, 0x0C, 0x0C, 0x07, 0x00],
'|': [0x03, 0x03, 0x03, 0x03, 0x03, 0x03, 0x03, 0x00],
'}': [0x38, 0x0C, 0x0C, 0x07, 0x0C, 0x0C, 0x38, 0x00],
'~': [0x00, 0x00, 0x00, 0x1B, 0x36, 0x00, 0x00, 0x00],
'°': [0x0E, 0x11, 0x11, 0x0E, 0x00, 0x00, 0x00, 0x00],
'': [0x1F, 0x3D, 0x3D, 0x3D, 0x1D, 0x05, 0x05, 0x00],
'': [0x00, 0x00, 0x06, 0x0F, 0x0F, 0x06, 0x00, 0x00],
'': [0x1C, 0x3E, 0x7F, 0x7F, 0x1C, 0x1C, 0x3E, 0x00],
'': [0x1C, 0x1C, 0x3E, 0x7F, 0x36, 0x1C, 0x3E, 0x00],
'': [0x36, 0x7F, 0x7F, 0x7F, 0x3E, 0x1C, 0x08, 0x00],
'': [0x08, 0x1C, 0x3E, 0x7F, 0x3E, 0x1C, 0x08, 0x00],
}