Bienvenue aux nouveaux arrivants sur FantasPic !
- Pensez à lire les règles durant votre visite, il n'y en a pas beaucoup, mais encore faut-il les respecter .
- N’hésitez pas à faire des remarques et/ou suggestions sur le Forum, dans le but de l'améliorer et de rendre vos prochaines visites plus agréables.
- Vous pouvez regarder votre "panneau de l'utilisateur" afin de configurer vos préférences.
- Un passage par "l'utilisation du forum" est recommandé pour connaître les fonctionnalités du forum.
--- L’équipe FantasPic ---
- Pensez à lire les règles durant votre visite, il n'y en a pas beaucoup, mais encore faut-il les respecter .
- N’hésitez pas à faire des remarques et/ou suggestions sur le Forum, dans le but de l'améliorer et de rendre vos prochaines visites plus agréables.
- Vous pouvez regarder votre "panneau de l'utilisateur" afin de configurer vos préférences.
- Un passage par "l'utilisation du forum" est recommandé pour connaître les fonctionnalités du forum.
--- L’équipe FantasPic ---
Modérateur : Jérémy
Fonctionnement des "FONT" sur écran OLED
-
Jérémy
Administrateur du site- Messages : 2727
- Âge : 45
- Enregistré en : juillet 2015
- Localisation : Dans le sud
- Contact :
Bonjour,
Je désire ecrire du texte mon petit projet d’écran. Je me suis déjà cogné les chiffres a faire pixel par pixel. Pour l'alphabet je pense faire autrement
J'ai donc récupéré des FONT déjà faites ! par exemple comme celle-ci . S'en est une parmi d'autres, mais une fois le principe compris je ferais des tests, afin de sélectionner celle qui me scié le mieux
Elle est donné pour mon écran OLED avec le driver SSD1306 .
Je n'arrive pas a comprendre comment il peuvent la mettre dans le bon sens .
En effet, elle est tournée d'un quart de tour . j'ai bien essayé de changer le mode d'addressage de horizontale a vertical mais sans succés.
c'est dommage car il en existe plein de FONT et de trés jolies.
Auriez vous une idée , de comment faire pour utiliser cette font?
Je désire ecrire du texte mon petit projet d’écran. Je me suis déjà cogné les chiffres a faire pixel par pixel. Pour l'alphabet je pense faire autrement
J'ai donc récupéré des FONT déjà faites ! par exemple comme celle-ci . S'en est une parmi d'autres, mais une fois le principe compris je ferais des tests, afin de sélectionner celle qui me scié le mieux
Elle est donné pour mon écran OLED avec le driver SSD1306 .
Je n'arrive pas a comprendre comment il peuvent la mettre dans le bon sens .
En effet, elle est tournée d'un quart de tour . j'ai bien essayé de changer le mode d'addressage de horizontale a vertical mais sans succés.
c'est dommage car il en existe plein de FONT et de trés jolies.
Auriez vous une idée , de comment faire pour utiliser cette font?
Code : Tout sélectionner
# coding=utf-8
# Module arial_16
# generated from Arial 12pt
name = "Arial 16"
start_char = '!'
end_char = chr(127)
char_height = 16
space_width = 8
gap_width = 2
bitmaps = (
# @0 '!' (1 pixels wide)
0x00, #
0x80, # O
0x80, # O
0x80, # O
0x80, # O
0x80, # O
0x80, # O
0x80, # O
0x80, # O
0x80, # O
0x80, # O
0x00, #
0x80, # O
0x00, #
0x00, #
0x00, #
# @16 '"' (4 pixels wide)
0x00, #
0x90, # O O
0x90, # O O
0x90, # O O
0x90, # O O
0x00, #
0x00, #
0x00, #
0x00, #
0x00, #
0x00, #
0x00, #
0x00, #
0x00, #
0x00, #
0x00, #
# @32 '#' (9 pixels wide)
0x00, 0x00, #
0x11, 0x00, # O O
0x11, 0x00, # O O
0x11, 0x00, # O O
0x22, 0x00, # O O
0xFF, 0x80, # OOOOOOOOO
0x22, 0x00, # O O
0x22, 0x00, # O O
0x22, 0x00, # O O
0xFF, 0x80, # OOOOOOOOO
0x44, 0x00, # O O
0x44, 0x00, # O O
0x44, 0x00, # O O
0x00, 0x00, #
0x00, 0x00, #
0x00, 0x00, #
# @64 '$' (7 pixels wide)
0x10, # O
0x3C, # OOOO
0x52, # O O O
0x92, # O O O
0x90, # O O
0x90, # O O
0x70, # OOO
0x1C, # OOO
0x12, # O O
0x12, # O O
0x92, # O O O
0x54, # O O O
0x38, # OOO
0x10, # O
0x00, #
0x00, #
# @80 '%' (12 pixels wide)
0x00, 0x00, #
0x70, 0x80, # OOO O
0x89, 0x00, # O O O
0x89, 0x00, # O O O
0x8A, 0x00, # O O O
0x8A, 0x00, # O O O
0x72, 0x00, # OOO O
0x04, 0xE0, # O OOO
0x05, 0x10, # O O O
0x09, 0x10, # O O O
0x09, 0x10, # O O O
0x11, 0x10, # O O O
0x10, 0xE0, # O OOO
0x00, 0x00, #
0x00, 0x00, #
0x00, 0x00, #
# @112 '&' (9 pixels wide)
0x00, 0x00, #
0x38, 0x00, # OOO
0x44, 0x00, # O O
0x44, 0x00, # O O
0x44, 0x00, # O O
0x28, 0x00, # O O
0x30, 0x00, # OO
0x50, 0x00, # O O
0x88, 0x80, # O O O
0x85, 0x00, # O O O
0x82, 0x00, # O O
0x45, 0x00, # O O O
0x38, 0x80, # OOO O
0x00, 0x00, #
0x00, 0x00, #
0x00, 0x00, #
# @144 ''' (1 pixels wide)
0x00, #
0x80, # O
0x80, # O
0x80, # O
0x80, # O
0x00, #
0x00, #
0x00, #
0x00, #
0x00, #
0x00, #
0x00, #
0x00, #
0x00, #
0x00, #
0x00, #
# @160 '(' (3 pixels wide)
0x00, #
0x20, # O
0x40, # O
0x40, # O
0x40, # O
0x80, # O
0x80, # O
0x80, # O
0x80, # O
0x80, # O
0x80, # O
0x80, # O
0x40, # O
0x40, # O
0x40, # O
0x20, # O
# @176 ')' (3 pixels wide)
0x00, #
0x80, # O
0x40, # O
0x40, # O
0x40, # O
0x20, # O
0x20, # O
0x20, # O
0x20, # O
0x20, # O
0x20, # O
0x20, # O
0x40, # O
0x40, # O
0x40, # O
0x80, # O
# @192 '*' (5 pixels wide)
0x00, #
0x20, # O
0xF8, # OOOOO
0x20, # O
0x50, # O O
0x50, # O O
0x00, #
0x00, #
0x00, #
0x00, #
0x00, #
0x00, #
0x00, #
0x00, #
0x00, #
0x00, #
# @208 '+' (7 pixels wide)
0x00, #
0x00, #
0x00, #
0x00, #
0x10, # O
0x10, # O
0x10, # O
0xFE, # OOOOOOO
0x10, # O
0x10, # O
0x10, # O
0x00, #
0x00, #
0x00, #
0x00, #
0x00, #
# @224 ',' (1 pixels wide)
0x00, #
0x00, #
0x00, #
0x00, #
0x00, #
0x00, #
0x00, #
0x00, #
0x00, #
0x00, #
0x00, #
0x00, #
0x80, # O
0x80, # O
0x80, # O
0x00, #
# @240 '-' (4 pixels wide)
0x00, #
0x00, #
0x00, #
0x00, #
0x00, #
0x00, #
0x00, #
0x00, #
0x00, #
0xF0, # OOOO
0x00, #
0x00, #
0x00, #
0x00, #
0x00, #
0x00, #
# @256 '.' (1 pixels wide)
0x00, #
0x00, #
0x00, #
0x00, #
0x00, #
0x00, #
0x00, #
0x00, #
0x00, #
0x00, #
0x00, #
0x00, #
0x80, # O
0x00, #
0x00, #
0x00, #
# @272 '/' (4 pixels wide)
0x00, #
0x10, # O
0x10, # O
0x20, # O
0x20, # O
0x20, # O
0x20, # O
0x40, # O
0x40, # O
0x40, # O
0x40, # O
0x80, # O
0x80, # O
0x00, #
0x00, #
0x00, #
# @288 '0' (7 pixels wide)
0x00, #
0x38, # OOO
0x44, # O O
0x82, # O O
0x82, # O O
0x82, # O O
0x82, # O O
0x82, # O O
0x82, # O O
0x82, # O O
0x82, # O O
0x44, # O O
0x38, # OOO
0x00, #
0x00, #
0x00, #
# @304 '1' (4 pixels wide)
0x00, #
0x10, # O
0x30, # OO
0x50, # O O
0x90, # O O
0x10, # O
0x10, # O
0x10, # O
0x10, # O
0x10, # O
0x10, # O
0x10, # O
0x10, # O
0x00, #
0x00, #
0x00, #
# @320 '2' (7 pixels wide)
0x00, #
0x3C, # OOOO
0x44, # O O
0x82, # O O
0x02, # O
0x02, # O
0x04, # O
0x04, # O
0x08, # O
0x10, # O
0x20, # O
0x40, # O
0xFE, # OOOOOOO
0x00, #
0x00, #
0x00, #
# @336 '3' (7 pixels wide)
0x00, #
0x38, # OOO
0x44, # O O
0x84, # O O
0x04, # O
0x0C, # OO
0x38, # OOO
0x04, # O
0x02, # O
0x02, # O
0x82, # O O
0xC4, # OO O
0x38, # OOO
0x00, #
0x00, #
0x00, #
# @352 '4' (8 pixels wide)
0x00, #
0x02, # O
0x06, # OO
0x0A, # O O
0x12, # O O
0x12, # O O
0x22, # O O
0x42, # O O
0x82, # O O
0xFF, # OOOOOOOO
0x02, # O
0x02, # O
0x02, # O
0x00, #
0x00, #
0x00, #
# @368 '5' (7 pixels wide)
0x00, #
0x7E, # OOOOOO
0x40, # O
0x40, # O
0x80, # O
0xF8, # OOOOO
0x84, # O O
0x02, # O
0x02, # O
0x02, # O
0x82, # O O
0x44, # O O
0x38, # OOO
0x00, #
0x00, #
0x00, #
# @384 '6' (7 pixels wide)
0x00, #
0x38, # OOO
0x44, # O O
0x82, # O O
0x80, # O
0xB8, # O OOO
0xC4, # OO O
0x82, # O O
0x82, # O O
0x82, # O O
0x82, # O O
0x44, # O O
0x38, # OOO
0x00, #
0x00, #
0x00, #
# @400 '7' (7 pixels wide)
0x00, #
0xFE, # OOOOOOO
0x04, # O
0x04, # O
0x08, # O
0x08, # O
0x10, # O
0x10, # O
0x10, # O
0x10, # O
0x20, # O
0x20, # O
0x20, # O
0x00, #
0x00, #
0x00, #
# @416 '8' (7 pixels wide)
0x00, #
0x38, # OOO
0x44, # O O
0x82, # O O
0x82, # O O
0x44, # O O
0x38, # OOO
0x44, # O O
0x82, # O O
0x82, # O O
0x82, # O O
0x44, # O O
0x38, # OOO
0x00, #
0x00, #
0x00, #
# @432 '9' (7 pixels wide)
0x00, #
0x38, # OOO
0x44, # O O
0x82, # O O
0x82, # O O
0x82, # O O
0x82, # O O
0x46, # O OO
0x3A, # OOO O
0x02, # O
0x82, # O O
0x44, # O O
0x38, # OOO
0x00, #
0x00, #
0x00, #
# @448 ':' (1 pixels wide)
0x00, #
0x00, #
0x00, #
0x00, #
0x80, # O
0x00, #
0x00, #
0x00, #
0x00, #
0x00, #
0x00, #
0x00, #
0x80, # O
0x00, #
0x00, #
0x00, #
# @464 ';' (1 pixels wide)
0x00, #
0x00, #
0x00, #
0x00, #
0x80, # O
0x00, #
0x00, #
0x00, #
0x00, #
0x00, #
0x00, #
0x00, #
0x80, # O
0x80, # O
0x80, # O
0x00, #
# @480 '<' (7 pixels wide)
0x00, #
0x00, #
0x00, #
0x00, #
0x02, # O
0x1C, # OOO
0x60, # OO
0x80, # O
0x60, # OO
0x1C, # OOO
0x02, # O
0x00, #
0x00, #
0x00, #
0x00, #
0x00, #
# @496 '=' (7 pixels wide)
0x00, #
0x00, #
0x00, #
0x00, #
0x00, #
0xFE, # OOOOOOO
0x00, #
0x00, #
0x00, #
0xFE, # OOOOOOO
0x00, #
0x00, #
0x00, #
0x00, #
0x00, #
0x00, #
# @512 '>' (7 pixels wide)
0x00, #
0x00, #
0x00, #
0x00, #
0x80, # O
0x70, # OOO
0x0C, # OO
0x02, # O
0x0C, # OO
0x70, # OOO
0x80, # O
0x00, #
0x00, #
0x00, #
0x00, #
0x00, #
# @528 '?' (7 pixels wide)
0x00, #
0x38, # OOO
0x44, # O O
0x82, # O O
0x82, # O O
0x02, # O
0x04, # O
0x08, # O
0x10, # O
0x10, # O
0x10, # O
0x00, #
0x10, # O
0x00, #
0x00, #
0x00, #
# @544 '@' (15 pixels wide)
0x00, 0x00, #
0x07, 0xE0, # OOOOOO
0x18, 0x18, # OO OO
0x20, 0x04, # O O
0x43, 0xA4, # O OOO O O
0x44, 0x62, # O O OO O
0x88, 0x22, # O O O O
0x90, 0x22, # O O O O
0x90, 0x42, # O O O O
0x90, 0x42, # O O O O
0x90, 0x44, # O O O O
0x88, 0xC8, # O O OO O
0x47, 0x70, # O OOO OOO
0x20, 0x02, # O O
0x18, 0x0C, # OO OO
0x07, 0xF0, # OOOOOOO
# @576 'A' (9 pixels wide)
0x00, 0x00, #
0x08, 0x00, # O
0x14, 0x00, # O O
0x14, 0x00, # O O
0x14, 0x00, # O O
0x22, 0x00, # O O
0x22, 0x00, # O O
0x22, 0x00, # O O
0x7F, 0x00, # OOOOOOO
0x41, 0x00, # O O
0x41, 0x00, # O O
0x80, 0x80, # O O
0x80, 0x80, # O O
0x00, 0x00, #
0x00, 0x00, #
0x00, 0x00, #
# @608 'B' (9 pixels wide)
0x00, 0x00, #
0xFF, 0x00, # OOOOOOOO
0x81, 0x00, # O O
0x80, 0x80, # O O
0x80, 0x80, # O O
0x81, 0x00, # O O
0xFE, 0x00, # OOOOOOO
0x81, 0x00, # O O
0x80, 0x80, # O O
0x80, 0x80, # O O
0x80, 0x80, # O O
0x81, 0x00, # O O
0xFE, 0x00, # OOOOOOO
0x00, 0x00, #
0x00, 0x00, #
0x00, 0x00, #
# @640 'C' (10 pixels wide)
0x00, 0x00, #
0x1F, 0x00, # OOOOO
0x20, 0x80, # O O
0x40, 0x40, # O O
0x80, 0x00, # O
0x80, 0x00, # O
0x80, 0x00, # O
0x80, 0x00, # O
0x80, 0x00, # O
0x80, 0x00, # O
0x40, 0x40, # O O
0x20, 0x80, # O O
0x1F, 0x00, # OOOOO
0x00, 0x00, #
0x00, 0x00, #
0x00, 0x00, #
# @672 'D' (10 pixels wide)
0x00, 0x00, #
0xFE, 0x00, # OOOOOOO
0x81, 0x00, # O O
0x80, 0x80, # O O
0x80, 0x40, # O O
0x80, 0x40, # O O
0x80, 0x40, # O O
0x80, 0x40, # O O
0x80, 0x40, # O O
0x80, 0x40, # O O
0x80, 0x80, # O O
0x81, 0x00, # O O
0xFE, 0x00, # OOOOOOO
0x00, 0x00, #
0x00, 0x00, #
0x00, 0x00, #
# @704 'E' (9 pixels wide)
0x00, 0x00, #
0xFF, 0x80, # OOOOOOOOO
0x80, 0x00, # O
0x80, 0x00, # O
0x80, 0x00, # O
0x80, 0x00, # O
0xFF, 0x00, # OOOOOOOO
0x80, 0x00, # O
0x80, 0x00, # O
0x80, 0x00, # O
0x80, 0x00, # O
0x80, 0x00, # O
0xFF, 0x80, # OOOOOOOOO
0x00, 0x00, #
0x00, 0x00, #
0x00, 0x00, #
# @736 'F' (8 pixels wide)
0x00, #
0xFF, # OOOOOOOO
0x80, # O
0x80, # O
0x80, # O
0x80, # O
0x80, # O
0xFE, # OOOOOOO
0x80, # O
0x80, # O
0x80, # O
0x80, # O
0x80, # O
0x00, #
0x00, #
0x00, #
# @752 'G' (10 pixels wide)
0x00, 0x00, #
0x1E, 0x00, # OOOO
0x21, 0x00, # O O
0x40, 0x80, # O O
0x80, 0x00, # O
0x80, 0x00, # O
0x80, 0x00, # O
0x87, 0xC0, # O OOOOO
0x80, 0x40, # O O
0x80, 0x40, # O O
0x40, 0x80, # O O
0x21, 0x00, # O O
0x1E, 0x00, # OOOO
0x00, 0x00, #
0x00, 0x00, #
0x00, 0x00, #
# @784 'H' (9 pixels wide)
0x00, 0x00, #
0x80, 0x80, # O O
0x80, 0x80, # O O
0x80, 0x80, # O O
0x80, 0x80, # O O
0x80, 0x80, # O O
0xFF, 0x80, # OOOOOOOOO
0x80, 0x80, # O O
0x80, 0x80, # O O
0x80, 0x80, # O O
0x80, 0x80, # O O
0x80, 0x80, # O O
0x80, 0x80, # O O
0x00, 0x00, #
0x00, 0x00, #
0x00, 0x00, #
# @816 'I' (1 pixels wide)
0x00, #
0x80, # O
0x80, # O
0x80, # O
0x80, # O
0x80, # O
0x80, # O
0x80, # O
0x80, # O
0x80, # O
0x80, # O
0x80, # O
0x80, # O
0x00, #
0x00, #
0x00, #
# @832 'J' (6 pixels wide)
0x00, #
0x04, # O
0x04, # O
0x04, # O
0x04, # O
0x04, # O
0x04, # O
0x04, # O
0x04, # O
0x84, # O O
0x84, # O O
0x84, # O O
0x78, # OOOO
0x00, #
0x00, #
0x00, #
# @848 'K' (9 pixels wide)
0x00, 0x00, #
0x80, 0x80, # O O
0x81, 0x00, # O O
0x82, 0x00, # O O
0x84, 0x00, # O O
0x88, 0x00, # O O
0x98, 0x00, # O OO
0xA8, 0x00, # O O O
0xC4, 0x00, # OO O
0x82, 0x00, # O O
0x82, 0x00, # O O
0x81, 0x00, # O O
0x80, 0x80, # O O
0x00, 0x00, #
0x00, 0x00, #
0x00, 0x00, #
# @880 'L' (7 pixels wide)
0x00, #
0x80, # O
0x80, # O
0x80, # O
0x80, # O
0x80, # O
0x80, # O
0x80, # O
0x80, # O
0x80, # O
0x80, # O
0x80, # O
0xFE, # OOOOOOO
0x00, #
0x00, #
0x00, #
# @896 'M' (11 pixels wide)
0x00, 0x00, #
0x80, 0x20, # O O
0xC0, 0x60, # OO OO
0xC0, 0x60, # OO OO
0xA0, 0xA0, # O O O O
0xA0, 0xA0, # O O O O
0x91, 0x20, # O O O O
0x91, 0x20, # O O O O
0x8A, 0x20, # O O O O
0x8A, 0x20, # O O O O
0x8A, 0x20, # O O O O
0x84, 0x20, # O O O
0x84, 0x20, # O O O
0x00, 0x00, #
0x00, 0x00, #
0x00, 0x00, #
# @928 'N' (9 pixels wide)
0x00, 0x00, #
0x80, 0x80, # O O
0xC0, 0x80, # OO O
0xA0, 0x80, # O O O
0xA0, 0x80, # O O O
0x90, 0x80, # O O O
0x88, 0x80, # O O O
0x88, 0x80, # O O O
0x84, 0x80, # O O O
0x82, 0x80, # O O O
0x82, 0x80, # O O O
0x81, 0x80, # O OO
0x80, 0x80, # O O
0x00, 0x00, #
0x00, 0x00, #
0x00, 0x00, #
# @960 'O' (10 pixels wide)
0x00, 0x00, #
0x1E, 0x00, # OOOO
0x21, 0x00, # O O
0x40, 0x80, # O O
0x80, 0x40, # O O
0x80, 0x40, # O O
0x80, 0x40, # O O
0x80, 0x40, # O O
0x80, 0x40, # O O
0x80, 0x40, # O O
0x40, 0x80, # O O
0x21, 0x00, # O O
0x1E, 0x00, # OOOO
0x00, 0x00, #
0x00, 0x00, #
0x00, 0x00, #
# @992 'P' (9 pixels wide)
0x00, 0x00, #
0xFE, 0x00, # OOOOOOO
0x81, 0x00, # O O
0x80, 0x80, # O O
0x80, 0x80, # O O
0x80, 0x80, # O O
0x81, 0x00, # O O
0xFE, 0x00, # OOOOOOO
0x80, 0x00, # O
0x80, 0x00, # O
0x80, 0x00, # O
0x80, 0x00, # O
0x80, 0x00, # O
0x00, 0x00, #
0x00, 0x00, #
0x00, 0x00, #
# @1024 'Q' (10 pixels wide)
0x00, 0x00, #
0x1E, 0x00, # OOOO
0x21, 0x00, # O O
0x40, 0x80, # O O
0x80, 0x40, # O O
0x80, 0x40, # O O
0x80, 0x40, # O O
0x80, 0x40, # O O
0x80, 0x40, # O O
0x80, 0x40, # O O
0x46, 0xC0, # O OO OO
0x21, 0x80, # O OO
0x1E, 0xC0, # OOOO OO
0x00, 0x00, #
0x00, 0x00, #
0x00, 0x00, #
# @1056 'R' (9 pixels wide)
0x00, 0x00, #
0xFE, 0x00, # OOOOOOO
0x81, 0x00, # O O
0x80, 0x80, # O O
0x80, 0x80, # O O
0x80, 0x80, # O O
0x81, 0x00, # O O
0xFE, 0x00, # OOOOOOO
0x84, 0x00, # O O
0x82, 0x00, # O O
0x82, 0x00, # O O
0x81, 0x00, # O O
0x80, 0x80, # O O
0x00, 0x00, #
0x00, 0x00, #
0x00, 0x00, #
# @1088 'S' (9 pixels wide)
0x00, 0x00, #
0x3E, 0x00, # OOOOO
0x41, 0x00, # O O
0x80, 0x80, # O O
0x80, 0x00, # O
0x40, 0x00, # O
0x38, 0x00, # OOO
0x07, 0x00, # OOO
0x00, 0x80, # O
0x00, 0x80, # O
0x80, 0x80, # O O
0x41, 0x00, # O O
0x3E, 0x00, # OOOOO
0x00, 0x00, #
0x00, 0x00, #
0x00, 0x00, #
# @1120 'T' (9 pixels wide)
0x00, 0x00, #
0xFF, 0x80, # OOOOOOOOO
0x08, 0x00, # O
0x08, 0x00, # O
0x08, 0x00, # O
0x08, 0x00, # O
0x08, 0x00, # O
0x08, 0x00, # O
0x08, 0x00, # O
0x08, 0x00, # O
0x08, 0x00, # O
0x08, 0x00, # O
0x08, 0x00, # O
0x00, 0x00, #
0x00, 0x00, #
0x00, 0x00, #
# @1152 'U' (9 pixels wide)
0x00, 0x00, #
0x80, 0x80, # O O
0x80, 0x80, # O O
0x80, 0x80, # O O
0x80, 0x80, # O O
0x80, 0x80, # O O
0x80, 0x80, # O O
0x80, 0x80, # O O
0x80, 0x80, # O O
0x80, 0x80, # O O
0x80, 0x80, # O O
0x41, 0x00, # O O
0x3E, 0x00, # OOOOO
0x00, 0x00, #
0x00, 0x00, #
0x00, 0x00, #
# @1184 'V' (9 pixels wide)
0x00, 0x00, #
0x80, 0x80, # O O
0x80, 0x80, # O O
0x41, 0x00, # O O
0x41, 0x00, # O O
0x41, 0x00, # O O
0x22, 0x00, # O O
0x22, 0x00, # O O
0x22, 0x00, # O O
0x14, 0x00, # O O
0x14, 0x00, # O O
0x08, 0x00, # O
0x08, 0x00, # O
0x00, 0x00, #
0x00, 0x00, #
0x00, 0x00, #
# @1216 'W' (15 pixels wide)
0x00, 0x00, #
0x81, 0x02, # O O O
0x82, 0x82, # O O O O
0x42, 0x84, # O O O O
0x42, 0x84, # O O O O
0x44, 0x44, # O O O O
0x44, 0x44, # O O O O
0x24, 0x48, # O O O O
0x28, 0x28, # O O O O
0x28, 0x28, # O O O O
0x28, 0x28, # O O O O
0x10, 0x10, # O O
0x10, 0x10, # O O
0x00, 0x00, #
0x00, 0x00, #
0x00, 0x00, #
# @1248 'X' (11 pixels wide)
0x00, 0x00, #
0x40, 0x40, # O O
0x20, 0x80, # O O
0x11, 0x00, # O O
0x11, 0x00, # O O
0x0A, 0x00, # O O
0x04, 0x00, # O
0x0A, 0x00, # O O
0x11, 0x00, # O O
0x11, 0x00, # O O
0x20, 0x80, # O O
0x40, 0x40, # O O
0x80, 0x20, # O O
0x00, 0x00, #
0x00, 0x00, #
0x00, 0x00, #
# @1280 'Y' (9 pixels wide)
0x00, 0x00, #
0x80, 0x80, # O O
0x41, 0x00, # O O
0x41, 0x00, # O O
0x22, 0x00, # O O
0x14, 0x00, # O O
0x14, 0x00, # O O
0x08, 0x00, # O
0x08, 0x00, # O
0x08, 0x00, # O
0x08, 0x00, # O
0x08, 0x00, # O
0x08, 0x00, # O
0x00, 0x00, #
0x00, 0x00, #
0x00, 0x00, #
# @1312 'Z' (9 pixels wide)
0x00, 0x00, #
0x7F, 0x80, # OOOOOOOO
0x01, 0x00, # O
0x02, 0x00, # O
0x02, 0x00, # O
0x04, 0x00, # O
0x08, 0x00, # O
0x08, 0x00, # O
0x10, 0x00, # O
0x20, 0x00, # O
0x20, 0x00, # O
0x40, 0x00, # O
0xFF, 0x80, # OOOOOOOOO
0x00, 0x00, #
0x00, 0x00, #
0x00, 0x00, #
# @1344 '[' (3 pixels wide)
0x00, #
0xE0, # OOO
0x80, # O
0x80, # O
0x80, # O
0x80, # O
0x80, # O
0x80, # O
0x80, # O
0x80, # O
0x80, # O
0x80, # O
0x80, # O
0x80, # O
0x80, # O
0xE0, # OOO
# @1360 '\' (4 pixels wide)
0x00, #
0x80, # O
0x80, # O
0x40, # O
0x40, # O
0x40, # O
0x40, # O
0x20, # O
0x20, # O
0x20, # O
0x20, # O
0x10, # O
0x10, # O
0x00, #
0x00, #
0x00, #
# @1376 ']' (3 pixels wide)
0x00, #
0xE0, # OOO
0x20, # O
0x20, # O
0x20, # O
0x20, # O
0x20, # O
0x20, # O
0x20, # O
0x20, # O
0x20, # O
0x20, # O
0x20, # O
0x20, # O
0x20, # O
0xE0, # OOO
# @1392 '^' (7 pixels wide)
0x00, #
0x10, # O
0x28, # O O
0x28, # O O
0x44, # O O
0x44, # O O
0x82, # O O
0x00, #
0x00, #
0x00, #
0x00, #
0x00, #
0x00, #
0x00, #
0x00, #
0x00, #
# @1408 '_' (9 pixels wide)
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, #
0xFF, 0x80, # OOOOOOOOO
# @1440 '`' (2 pixels wide)
0x00, #
0x80, # O
0x40, # O
0x00, #
0x00, #
0x00, #
0x00, #
0x00, #
0x00, #
0x00, #
0x00, #
0x00, #
0x00, #
0x00, #
0x00, #
0x00, #
# @1456 'a' (7 pixels wide)
0x00, #
0x00, #
0x00, #
0x00, #
0x3C, # OOOO
0x42, # O O
0x82, # O O
0x0E, # OOO
0x72, # OOO O
0x82, # O O
0x82, # O O
0x86, # O OO
0x7A, # OOOO O
0x00, #
0x00, #
0x00, #
# @1472 'b' (7 pixels wide)
0x00, #
0x80, # O
0x80, # O
0x80, # O
0xB8, # O OOO
0xC4, # OO O
0x82, # O O
0x82, # O O
0x82, # O O
0x82, # O O
0x82, # O O
0xC4, # OO O
0xB8, # O OOO
0x00, #
0x00, #
0x00, #
# @1488 'c' (6 pixels wide)
0x00, #
0x00, #
0x00, #
0x00, #
0x38, # OOO
0x44, # O O
0x80, # O
0x80, # O
0x80, # O
0x80, # O
0x80, # O
0x44, # O O
0x38, # OOO
0x00, #
0x00, #
0x00, #
# @1504 'd' (7 pixels wide)
0x00, #
0x02, # O
0x02, # O
0x02, # O
0x3A, # OOO O
0x46, # O OO
0x82, # O O
0x82, # O O
0x82, # O O
0x82, # O O
0x82, # O O
0x46, # O OO
0x3A, # OOO O
0x00, #
0x00, #
0x00, #
# @1520 'e' (7 pixels wide)
0x00, #
0x00, #
0x00, #
0x00, #
0x38, # OOO
0x44, # O O
0x82, # O O
0x82, # O O
0xFE, # OOOOOOO
0x80, # O
0x82, # O O
0x44, # O O
0x38, # OOO
0x00, #
0x00, #
0x00, #
# @1536 'f' (4 pixels wide)
0x00, #
0x30, # OO
0x40, # O
0x40, # O
0xF0, # OOOO
0x40, # O
0x40, # O
0x40, # O
0x40, # O
0x40, # O
0x40, # O
0x40, # O
0x40, # O
0x00, #
0x00, #
0x00, #
# @1552 'g' (7 pixels wide)
0x00, #
0x00, #
0x00, #
0x00, #
0x3A, # OOO O
0x46, # O OO
0x82, # O O
0x82, # O O
0x82, # O O
0x82, # O O
0x82, # O O
0x46, # O OO
0x3A, # OOO O
0x02, # O
0x84, # O O
0x78, # OOOO
# @1568 'h' (6 pixels wide)
0x00, #
0x80, # O
0x80, # O
0x80, # O
0xB8, # O OOO
0xC4, # OO O
0x84, # O O
0x84, # O O
0x84, # O O
0x84, # O O
0x84, # O O
0x84, # O O
0x84, # O O
0x00, #
0x00, #
0x00, #
# @1584 'i' (1 pixels wide)
0x00, #
0x80, # O
0x00, #
0x00, #
0x80, # O
0x80, # O
0x80, # O
0x80, # O
0x80, # O
0x80, # O
0x80, # O
0x80, # O
0x80, # O
0x00, #
0x00, #
0x00, #
# @1600 'j' (3 pixels wide)
0x00, #
0x20, # O
0x00, #
0x00, #
0x20, # O
0x20, # O
0x20, # O
0x20, # O
0x20, # O
0x20, # O
0x20, # O
0x20, # O
0x20, # O
0x20, # O
0x20, # O
0xC0, # OO
# @1616 'k' (7 pixels wide)
0x00, #
0x80, # O
0x80, # O
0x80, # O
0x82, # O O
0x84, # O O
0x88, # O O
0x90, # O O
0xB0, # O OO
0xC8, # OO O
0x88, # O O
0x84, # O O
0x82, # O O
0x00, #
0x00, #
0x00, #
# @1632 'l' (1 pixels wide)
0x00, #
0x80, # O
0x80, # O
0x80, # O
0x80, # O
0x80, # O
0x80, # O
0x80, # O
0x80, # O
0x80, # O
0x80, # O
0x80, # O
0x80, # O
0x00, #
0x00, #
0x00, #
# @1648 'm' (11 pixels wide)
0x00, 0x00, #
0x00, 0x00, #
0x00, 0x00, #
0x00, 0x00, #
0xB9, 0xC0, # O OOO OOO
0xC6, 0x20, # OO OO O
0x84, 0x20, # O O O
0x84, 0x20, # O O O
0x84, 0x20, # O O O
0x84, 0x20, # O O O
0x84, 0x20, # O O O
0x84, 0x20, # O O O
0x84, 0x20, # O O O
0x00, 0x00, #
0x00, 0x00, #
0x00, 0x00, #
# @1680 'n' (6 pixels wide)
0x00, #
0x00, #
0x00, #
0x00, #
0xB8, # O OOO
0xC4, # OO O
0x84, # O O
0x84, # O O
0x84, # O O
0x84, # O O
0x84, # O O
0x84, # O O
0x84, # O O
0x00, #
0x00, #
0x00, #
# @1696 'o' (7 pixels wide)
0x00, #
0x00, #
0x00, #
0x00, #
0x38, # OOO
0x44, # O O
0x82, # O O
0x82, # O O
0x82, # O O
0x82, # O O
0x82, # O O
0x44, # O O
0x38, # OOO
0x00, #
0x00, #
0x00, #
# @1712 'p' (7 pixels wide)
0x00, #
0x00, #
0x00, #
0x00, #
0xB8, # O OOO
0xC4, # OO O
0x82, # O O
0x82, # O O
0x82, # O O
0x82, # O O
0x82, # O O
0xC4, # OO O
0xB8, # O OOO
0x80, # O
0x80, # O
0x80, # O
# @1728 'q' (7 pixels wide)
0x00, #
0x00, #
0x00, #
0x00, #
0x3A, # OOO O
0x46, # O OO
0x82, # O O
0x82, # O O
0x82, # O O
0x82, # O O
0x82, # O O
0x46, # O OO
0x3A, # OOO O
0x02, # O
0x02, # O
0x02, # O
# @1744 'r' (4 pixels wide)
0x00, #
0x00, #
0x00, #
0x00, #
0xB0, # O OO
0xC0, # OO
0x80, # O
0x80, # O
0x80, # O
0x80, # O
0x80, # O
0x80, # O
0x80, # O
0x00, #
0x00, #
0x00, #
# @1760 's' (6 pixels wide)
0x00, #
0x00, #
0x00, #
0x00, #
0x78, # OOOO
0x84, # O O
0x80, # O
0x80, # O
0x78, # OOOO
0x04, # O
0x04, # O
0x84, # O O
0x78, # OOOO
0x00, #
0x00, #
0x00, #
# @1776 't' (4 pixels wide)
0x00, #
0x00, #
0x40, # O
0x40, # O
0xF0, # OOOO
0x40, # O
0x40, # O
0x40, # O
0x40, # O
0x40, # O
0x40, # O
0x40, # O
0x70, # OOO
0x00, #
0x00, #
0x00, #
# @1792 'u' (6 pixels wide)
0x00, #
0x00, #
0x00, #
0x00, #
0x84, # O O
0x84, # O O
0x84, # O O
0x84, # O O
0x84, # O O
0x84, # O O
0x84, # O O
0x8C, # O OO
0x74, # OOO O
0x00, #
0x00, #
0x00, #
# @1808 'v' (7 pixels wide)
0x00, #
0x00, #
0x00, #
0x00, #
0x82, # O O
0x82, # O O
0x44, # O O
0x44, # O O
0x28, # O O
0x28, # O O
0x28, # O O
0x10, # O
0x10, # O
0x00, #
0x00, #
0x00, #
# @1824 'w' (11 pixels wide)
0x00, 0x00, #
0x00, 0x00, #
0x00, 0x00, #
0x00, 0x00, #
0x84, 0x20, # O O O
0x84, 0x20, # O O O
0x4A, 0x40, # O O O O
0x4A, 0x40, # O O O O
0x51, 0x40, # O O O O
0x51, 0x40, # O O O O
0x51, 0x40, # O O O O
0x20, 0x80, # O O
0x20, 0x80, # O O
0x00, 0x00, #
0x00, 0x00, #
0x00, 0x00, #
# @1856 'x' (7 pixels wide)
0x00, #
0x00, #
0x00, #
0x00, #
0x82, # O O
0x44, # O O
0x28, # O O
0x28, # O O
0x10, # O
0x28, # O O
0x28, # O O
0x44, # O O
0x82, # O O
0x00, #
0x00, #
0x00, #
# @1872 'y' (7 pixels wide)
0x00, #
0x00, #
0x00, #
0x00, #
0x82, # O O
0x82, # O O
0x84, # O O
0x44, # O O
0x44, # O O
0x28, # O O
0x28, # O O
0x28, # O O
0x10, # O
0x10, # O
0x10, # O
0x60, # OO
# @1888 'z' (7 pixels wide)
0x00, #
0x00, #
0x00, #
0x00, #
0xFE, # OOOOOOO
0x04, # O
0x08, # O
0x08, # O
0x10, # O
0x20, # O
0x20, # O
0x40, # O
0xFE, # OOOOOOO
0x00, #
0x00, #
0x00, #
# @1904 '{' (5 pixels wide)
0x00, #
0x18, # OO
0x20, # O
0x20, # O
0x20, # O
0x20, # O
0x20, # O
0x20, # O
0xC0, # OO
0x20, # O
0x20, # O
0x20, # O
0x20, # O
0x20, # O
0x20, # O
0x18, # OO
# @1920 '|' (1 pixels wide)
0x00, #
0x80, # O
0x80, # O
0x80, # O
0x80, # O
0x80, # O
0x80, # O
0x80, # O
0x80, # O
0x80, # O
0x80, # O
0x80, # O
0x80, # O
0x80, # O
0x80, # O
0x80, # O
# @1936 '}' (5 pixels wide)
0x00, #
0xC0, # OO
0x20, # O
0x20, # O
0x20, # O
0x20, # O
0x20, # O
0x20, # O
0x18, # OO
0x20, # O
0x20, # O
0x20, # O
0x20, # O
0x20, # O
0x20, # O
0xC0, # OO
# @1952 '~' (8 pixels wide)
0x00, #
0x00, #
0x00, #
0x00, #
0x00, #
0x00, #
0x71, # OOO O
0x8E, # O OOO
0x00, #
0x00, #
0x00, #
0x00, #
0x00, #
0x00, #
0x00, #
0x00, #
# @1968 '°' (4 pixels wide)
0x00, #
0x60, # OO
0x90, # O O
0x90, # O O
0x60, # OO
0x00, #
0x00, #
0x00, #
0x00, #
0x00, #
0x00, #
0x00, #
0x00, #
0x00, #
0x00, #
0x00, #
)
descriptors = (
(1,0),# !
(4,16),# "
(9,32),# #
(7,64),# $
(12,80),# %
(9,112),# &
(1,144),# '
(3,160),# (
(3,176),# )
(5,192),# *
(7,208),# +
(1,224),# ,
(4,240),# -
(1,256),# .
(4,272),# /
(7,288),# 0
(4,304),# 1
(7,320),# 2
(7,336),# 3
(8,352),# 4
(7,368),# 5
(7,384),# 6
(7,400),# 7
(7,416),# 8
(7,432),# 9
(1,448),# :
(1,464),# ;
(7,480),# <
(7,496),# =
(7,512),# >
(7,528),# ?
(15,544),# @
(9,576),# A
(9,608),# B
(10,640),# C
(10,672),# D
(9,704),# E
(8,736),# F
(10,752),# G
(9,784),# H
(1,816),# I
(6,832),# J
(9,848),# K
(7,880),# L
(11,896),# M
(9,928),# N
(10,960),# O
(9,992),# P
(10,1024),# Q
(9,1056),# R
(9,1088),# S
(9,1120),# T
(9,1152),# U
(9,1184),# V
(15,1216),# W
(11,1248),# X
(9,1280),# Y
(9,1312),# Z
(3,1344),# [
(4,1360),# \
(3,1376),# ]
(7,1392),# ^
(9,1408),# _
(2,1440),# `
(7,1456),# a
(7,1472),# b
(6,1488),# c
(7,1504),# d
(7,1520),# e
(4,1536),# f
(7,1552),# g
(6,1568),# h
(1,1584),# i
(3,1600),# j
(7,1616),# k
(1,1632),# l
(11,1648),# m
(6,1680),# n
(7,1696),# o
(7,1712),# p
(7,1728),# q
(4,1744),# r
(6,1760),# s
(4,1776),# t
(6,1792),# u
(7,1808),# v
(11,1824),# w
(7,1856),# x
(7,1872),# y
(7,1888),# z
(5,1904),# {
(1,1920),# |
(5,1936),# }
(8,1952),# ~
(4,1968),# °
)
kerning = (
(1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,0,1,1,1,1,1,1,1,1,1,1,0,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,),
(4,4,2,4,4,3,4,3,4,4,1,3,0,3,2,4,4,4,4,1,4,4,4,4,4,4,4,0,0,4,4,3,1,4,4,4,4,4,4,4,4,0,4,4,4,4,4,4,4,4,4,4,4,4,4,3,4,3,4,4,4,3,0,4,2,4,2,2,2,4,2,4,4,2,4,4,4,4,2,4,2,4,3,4,4,4,4,4,4,4,2,4,4,0,4,),
(9,8,9,9,9,9,8,9,8,8,7,8,9,8,8,9,7,8,8,9,9,9,8,9,9,8,8,7,9,8,8,9,8,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,8,8,9,8,8,7,8,7,9,8,8,8,0,8,9,9,9,9,9,8,9,9,9,7,9,9,9,9,9,9,9,9,9,8,9,9,9,8,9,7,7,9,8,7,8,),
(7,7,7,7,7,7,7,7,6,7,6,6,7,6,6,7,6,7,7,7,7,7,6,7,7,6,6,6,7,7,7,7,6,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,6,7,7,7,5,6,5,7,7,6,5,0,6,7,7,7,7,7,6,7,7,7,5,7,7,7,7,7,7,7,7,6,6,7,5,6,5,6,5,7,7,6,6,7,),
(12,9,12,12,9,12,11,12,10,8,11,11,12,11,12,12,9,11,12,12,12,12,10,12,12,11,11,11,12,12,9,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,9,12,10,10,11,9,11,12,10,10,7,3,10,12,12,12,12,12,11,12,12,12,10,12,12,12,12,12,12,12,12,12,11,12,10,11,11,11,11,12,12,10,11,8,),
(9,6,8,7,6,9,8,9,8,6,6,9,8,9,9,9,6,9,8,9,7,9,7,9,7,9,9,8,8,7,6,9,9,9,9,9,9,9,9,9,9,8,9,9,9,9,9,9,9,9,7,5,9,7,7,9,5,9,9,7,7,5,0,7,8,9,9,9,9,8,9,9,9,7,9,9,9,9,9,9,9,9,8,8,9,7,8,9,8,9,9,9,7,4,6,),
(1,1,0,1,1,0,1,0,1,1,0,0,0,0,0,1,1,1,1,0,1,1,1,1,1,1,1,0,0,1,1,0,0,1,1,1,1,1,1,1,1,0,1,1,1,1,1,1,1,1,1,1,1,1,1,0,1,0,1,1,1,0,0,1,0,1,0,0,0,1,0,1,1,0,1,1,1,1,0,1,0,1,0,1,1,1,1,1,1,1,0,1,1,0,1,),
(3,3,1,2,2,1,3,1,3,2,1,2,1,2,2,2,2,2,2,1,2,2,3,2,2,2,2,1,1,2,2,1,2,3,2,3,3,3,2,3,3,1,3,3,3,3,2,3,2,3,2,3,3,3,3,2,3,2,3,3,3,1,3,3,1,3,1,1,1,2,2,3,3,3,3,3,2,2,1,3,1,2,1,2,2,2,2,2,2,2,1,3,3,1,2,),
(3,2,3,3,3,3,2,3,1,2,3,2,3,2,3,3,2,2,3,3,3,3,1,3,3,2,2,3,3,3,2,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,1,3,2,2,2,1,2,3,2,1,3,1,1,3,3,3,3,3,2,3,3,3,1,3,3,3,3,3,3,3,3,3,2,3,3,3,2,3,2,3,3,1,3,2,),
(5,5,4,4,5,4,5,4,4,5,1,4,1,4,2,4,4,4,4,1,4,4,3,4,4,4,4,1,4,4,4,3,2,5,4,5,5,5,4,5,5,0,5,5,5,5,4,5,4,5,4,3,5,5,5,3,4,2,5,5,3,3,0,4,3,5,3,3,3,4,3,5,4,2,5,5,4,4,3,4,3,4,4,4,4,4,4,4,4,4,3,5,3,0,5,),
(7,4,5,4,4,6,6,7,5,3,7,6,4,6,6,7,4,2,4,6,4,7,4,6,6,6,6,7,4,4,4,7,5,7,7,7,7,7,7,7,7,4,7,7,7,7,7,7,7,7,4,3,7,5,5,3,3,3,7,5,5,4,0,5,4,7,7,7,7,6,7,7,7,5,7,7,7,7,7,7,7,7,7,6,7,6,6,5,6,4,5,7,5,7,3,),
(1,0,0,0,0,0,0,0,0,0,0,1,0,1,1,0,0,1,0,0,0,0,0,0,0,1,1,0,0,0,0,0,1,1,0,1,1,1,0,1,1,0,1,1,1,1,0,1,0,1,0,0,0,0,0,1,0,1,1,0,0,0,0,0,0,1,0,0,0,0,1,1,1,0,1,1,1,1,0,1,0,1,0,0,0,0,0,1,0,1,0,1,0,0,0,),
(4,0,4,1,0,4,3,4,2,0,1,3,4,3,3,4,1,1,0,4,0,4,1,4,0,3,3,1,4,3,1,4,3,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,0,0,4,1,2,1,0,2,4,2,2,0,0,2,4,4,4,4,4,3,4,4,4,2,4,4,4,4,4,4,4,4,0,3,4,2,3,2,2,2,2,4,2,0,0,),
(1,0,0,0,0,0,0,0,0,0,0,1,0,1,1,0,0,1,0,0,0,0,0,0,0,1,1,0,0,0,0,0,1,1,0,1,1,1,0,1,1,0,1,1,1,1,0,1,0,1,0,0,0,0,0,1,0,1,1,0,0,0,0,0,0,1,0,0,0,0,0,1,1,0,1,1,1,1,0,1,0,1,0,0,0,0,0,1,0,1,0,1,0,0,0,),
(4,4,3,3,4,3,4,3,4,4,2,3,2,3,1,3,3,3,3,2,3,3,4,3,3,3,3,2,3,3,3,3,1,4,3,4,4,4,3,4,4,2,4,4,4,4,3,4,3,4,3,4,4,4,4,3,4,3,4,4,4,3,0,4,3,4,3,3,3,3,3,4,4,2,4,4,3,3,3,3,3,3,3,3,3,3,3,3,3,3,2,4,4,2,4,),
(7,7,7,7,7,7,7,7,6,6,7,6,7,6,6,7,7,7,7,7,7,7,5,7,7,7,7,7,7,7,7,7,6,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,5,7,6,6,5,6,5,7,6,5,7,0,5,7,7,7,7,7,7,7,7,7,5,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,5,7,7,),
(4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,0,4,4,4,4,4,4,4,4,4,4,2,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,),
(7,7,7,7,7,6,7,7,6,6,6,7,4,7,7,7,7,7,7,5,7,7,6,7,7,7,7,6,7,7,7,6,7,7,7,7,7,7,7,7,7,6,7,7,7,7,7,7,7,7,7,6,7,6,6,7,6,7,7,6,6,6,0,6,6,7,6,6,6,7,6,7,7,5,7,7,7,7,6,7,6,7,7,7,7,7,7,7,7,7,5,7,6,6,7,),
(7,6,7,7,6,7,6,7,5,6,6,6,7,6,6,7,6,6,7,7,7,7,5,7,7,6,6,6,7,7,6,7,6,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,5,7,6,6,5,5,5,7,6,5,5,0,5,7,7,7,7,7,6,7,7,7,5,7,7,7,7,7,7,7,7,6,6,7,6,6,6,6,6,7,7,5,6,6,),
(8,7,8,7,7,8,7,8,7,7,7,7,8,7,7,8,7,7,7,8,7,8,7,8,7,7,7,7,8,7,7,8,7,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,7,7,8,7,7,7,7,7,8,7,7,7,0,7,8,8,8,8,8,7,8,8,8,6,8,8,8,8,8,8,8,8,7,7,8,7,7,7,7,7,7,8,7,7,7,),
(7,7,7,7,6,7,7,7,7,5,7,6,7,6,6,7,4,5,7,7,7,7,7,7,7,6,6,7,7,7,5,7,6,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,6,7,6,7,7,7,6,0,7,7,7,7,7,7,6,7,7,7,5,7,7,7,7,7,7,7,7,7,6,7,6,6,5,6,5,7,7,7,7,6,),
(7,7,7,7,7,7,7,7,6,6,7,6,7,6,6,7,6,7,7,7,7,7,5,7,7,6,6,7,7,7,7,7,6,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,5,7,6,6,5,6,5,7,6,5,6,0,5,7,7,7,7,7,6,7,7,7,5,7,7,7,7,7,7,7,7,7,6,7,6,6,5,6,5,7,7,5,7,7,),
(7,7,5,6,6,5,7,5,7,6,4,6,4,6,4,6,5,6,6,4,6,6,7,6,6,6,6,4,5,5,6,4,3,7,5,7,7,7,5,7,7,4,7,7,7,7,5,7,5,7,6,7,7,7,7,6,7,6,7,7,7,4,0,7,4,7,4,4,4,5,4,7,7,5,7,7,5,5,4,5,4,5,5,5,5,5,5,5,5,5,4,7,7,4,6,),
(7,7,7,7,7,7,7,7,6,6,6,6,7,6,6,7,7,7,7,7,7,7,5,7,7,7,7,6,7,7,7,7,6,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,5,7,6,6,5,6,5,7,6,5,6,0,5,7,7,7,7,7,7,7,7,7,5,7,7,7,7,7,7,7,7,6,7,7,7,7,7,7,7,7,7,5,6,7,),
(7,7,7,7,7,7,7,7,6,6,7,6,7,6,6,7,7,7,7,7,7,7,5,7,7,7,7,7,7,7,7,7,6,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,5,7,6,6,5,6,5,7,6,5,7,0,5,7,7,7,7,7,7,7,7,7,5,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,5,7,7,),
(1,1,0,1,1,0,1,0,0,0,0,1,0,1,1,1,1,1,0,0,1,1,0,1,1,1,1,0,0,1,1,0,1,1,1,1,1,1,1,1,1,0,1,1,1,1,1,1,1,1,1,0,1,0,0,1,0,1,1,0,0,0,0,0,0,1,0,0,0,1,0,1,1,0,1,1,1,1,0,1,0,1,0,1,1,1,1,1,1,1,0,1,0,0,0,),
(1,1,0,1,1,0,1,0,0,0,0,1,0,1,1,1,1,1,0,0,1,1,0,1,1,1,1,0,0,1,1,0,1,1,1,1,1,1,1,1,1,0,1,1,1,1,1,1,1,1,1,0,1,0,0,1,0,1,1,0,0,0,0,0,0,1,0,0,0,1,1,1,1,0,1,1,1,1,0,1,0,1,0,1,1,1,1,1,1,1,0,1,0,0,0,),
(7,7,6,7,7,7,7,7,6,6,4,6,6,6,6,7,7,5,7,6,7,7,5,7,7,7,7,3,6,7,7,7,6,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,3,7,6,6,5,5,5,7,6,5,6,0,5,7,7,7,7,7,7,7,7,7,5,7,7,7,7,7,7,7,7,6,7,7,7,7,7,7,7,5,7,5,2,6,),
(7,3,7,7,7,7,6,7,5,6,4,6,7,6,6,7,4,4,3,7,7,7,4,7,7,6,6,4,7,6,4,7,6,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,6,3,7,6,6,4,4,5,7,6,5,6,0,5,7,7,7,7,7,6,7,7,7,5,7,7,7,7,7,7,7,7,7,6,7,7,7,6,7,5,5,7,5,0,3,),
(7,3,5,5,5,6,6,7,5,3,7,6,4,6,6,7,4,2,4,6,6,7,4,6,6,6,6,7,4,3,3,7,5,7,7,7,7,7,7,7,7,4,7,7,7,7,7,7,7,7,4,3,7,5,5,3,3,3,7,5,5,6,0,5,6,7,7,7,7,6,7,7,7,5,7,7,7,7,7,7,7,7,7,6,7,6,6,5,6,3,6,7,5,7,3,),
(7,7,7,7,7,6,7,7,6,6,5,6,4,6,5,7,7,7,7,4,7,7,5,7,7,7,7,5,7,7,7,6,5,7,7,7,7,7,7,7,7,4,7,7,7,7,7,7,7,7,7,5,7,6,6,4,6,4,7,6,5,6,0,5,6,7,6,6,6,7,6,7,7,5,7,7,7,7,6,7,6,7,7,7,7,7,7,7,7,7,5,7,5,5,7,),
(15,14,15,15,15,15,14,15,14,14,15,15,15,14,14,15,14,14,14,15,15,15,12,15,15,14,15,15,15,14,14,15,14,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,14,11,15,14,14,12,13,13,15,14,13,15,12,13,15,15,15,15,15,14,15,15,15,13,15,15,15,15,15,15,15,15,15,14,15,15,15,14,15,14,15,15,13,15,14,),
(9,6,8,8,7,8,8,9,8,6,7,9,8,9,9,8,6,9,9,8,8,8,7,8,8,9,9,7,8,8,6,9,9,9,8,9,9,9,8,9,9,9,9,9,9,9,8,9,8,9,8,5,8,6,6,9,5,9,9,6,7,7,0,7,9,9,8,8,8,8,8,9,9,7,9,9,9,9,8,9,8,9,9,8,9,7,7,9,7,9,8,9,7,7,6,),
(9,9,9,9,9,9,9,9,8,8,8,8,9,8,8,9,9,9,9,9,9,9,8,9,9,9,9,8,9,9,9,9,8,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,8,9,8,8,7,8,7,9,8,8,8,0,8,9,9,9,9,9,9,9,9,9,7,9,9,9,9,9,9,9,9,8,9,9,9,9,9,9,9,9,9,8,8,9,),
(10,10,9,10,10,10,10,10,9,9,7,9,6,9,9,10,9,10,10,6,10,10,8,10,10,9,9,4,3,10,10,10,9,10,9,10,10,10,9,10,10,10,10,10,10,10,9,10,9,10,10,8,10,9,9,8,9,8,10,9,8,8,1,8,10,10,10,10,10,9,10,10,10,8,10,10,10,10,10,10,10,10,9,9,10,8,9,8,8,8,8,10,8,2,10,),
(10,10,10,10,10,10,10,10,9,9,10,9,10,9,9,10,10,9,9,10,10,10,7,10,10,10,10,10,10,10,10,10,9,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,7,10,9,9,7,8,8,10,9,8,10,1,8,10,10,10,10,10,10,10,10,10,8,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,8,10,9,),
(9,9,8,7,8,7,9,8,9,7,5,9,5,9,9,8,6,9,7,6,8,8,9,7,8,9,9,7,2,4,7,8,9,9,8,9,9,9,8,9,9,8,9,9,9,9,8,9,8,9,7,9,9,9,9,9,9,9,9,9,9,8,0,9,8,9,8,8,8,8,8,9,9,7,9,9,9,9,8,9,8,9,8,8,8,7,7,9,8,9,7,9,9,7,8,),
(8,8,5,6,7,6,8,7,8,6,7,7,4,7,6,7,5,6,6,6,7,7,8,6,6,7,7,7,1,1,6,7,5,8,7,8,8,8,7,8,8,3,8,8,8,8,7,8,7,8,6,8,8,8,8,7,8,7,8,8,8,5,0,8,3,8,7,7,7,6,7,8,8,6,8,8,7,7,7,7,7,7,7,6,7,6,6,5,6,3,5,8,8,7,7,),
(10,9,10,9,9,10,9,10,8,8,10,9,10,9,9,10,8,9,9,10,9,10,7,10,9,9,9,10,10,9,9,10,9,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,9,7,10,8,8,7,8,8,10,8,8,7,1,8,10,10,10,10,10,9,10,10,10,8,10,10,10,10,10,10,10,10,10,9,10,9,9,8,9,8,10,10,8,10,9,),
(9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,0,9,9,9,9,9,9,9,9,9,9,7,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,),
(1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,0,1,1,1,1,1,1,1,1,1,1,0,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,),
(6,6,6,6,6,6,6,6,6,6,6,5,6,5,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,5,6,5,6,6,6,6,0,6,6,6,6,6,6,6,6,6,6,4,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,),
(9,9,8,7,8,7,9,8,9,8,5,9,7,9,9,7,6,9,8,7,8,7,9,7,7,9,9,5,7,7,7,8,9,9,7,9,9,9,7,9,9,8,9,9,9,9,7,9,7,9,7,9,9,9,9,9,9,9,9,9,9,6,0,9,8,9,7,7,7,8,7,9,9,7,9,9,9,9,7,9,7,9,8,8,8,6,7,9,6,9,7,9,9,5,8,),
(7,3,6,5,4,5,6,6,6,2,1,7,3,7,7,5,4,7,5,1,5,5,5,5,5,7,7,1,1,1,4,6,7,7,4,7,7,7,4,7,7,6,7,7,7,7,4,7,4,7,5,3,5,3,4,7,3,7,7,4,5,1,0,5,6,7,5,5,5,6,5,7,7,5,7,7,7,7,5,7,5,7,6,6,6,4,5,7,4,7,5,7,5,1,3,),
(11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,2,11,11,11,11,11,11,11,11,11,11,9,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,),
(9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,0,9,9,9,9,9,9,9,9,9,9,7,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,),
(10,10,10,10,10,10,10,10,9,9,10,9,10,9,9,10,10,9,9,10,10,10,7,10,10,10,10,10,10,10,10,10,9,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,7,10,9,9,7,8,8,10,9,8,10,1,8,10,10,10,10,10,10,10,10,10,8,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,8,10,9,),
(9,9,9,9,9,8,9,9,8,8,7,8,5,8,7,9,9,9,9,6,9,9,7,9,9,9,9,7,9,9,9,8,7,9,9,9,9,9,9,9,9,4,9,9,9,9,9,9,9,9,9,7,9,8,8,6,8,6,9,8,7,8,0,7,8,9,8,8,8,9,8,9,9,7,9,9,9,9,8,9,8,9,9,9,9,9,9,9,9,9,7,9,7,7,9,),
(10,10,10,10,10,10,10,10,9,9,10,10,10,10,10,10,10,10,10,10,10,10,8,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,7,10,9,9,10,8,10,10,9,8,10,1,8,10,10,10,10,10,10,10,10,10,8,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,8,10,9,),
(9,9,9,9,9,8,9,9,8,8,7,9,7,9,9,9,9,9,9,7,9,9,7,9,9,9,9,7,9,9,9,8,9,9,9,9,9,9,9,9,9,8,9,9,9,9,9,9,9,9,9,7,9,8,8,9,8,9,9,8,7,8,0,7,8,9,8,8,8,9,8,9,9,7,9,9,9,9,8,9,8,9,9,9,9,9,9,9,9,9,7,9,7,7,9,),
(9,9,9,9,9,9,9,9,8,8,8,8,9,8,8,9,8,9,9,9,9,9,7,9,9,8,8,8,9,9,9,9,8,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,7,9,8,8,7,8,7,9,8,7,7,0,7,9,9,9,9,9,8,9,9,9,7,9,9,9,9,9,9,9,9,8,8,9,7,8,7,8,7,9,9,7,8,9,),
(9,9,6,7,8,7,9,7,9,7,5,8,5,8,6,7,6,7,7,5,8,7,9,7,7,8,8,5,5,5,7,5,5,9,6,9,9,9,6,9,9,5,9,9,9,9,6,9,6,9,7,9,9,9,9,8,9,8,9,9,9,6,0,9,5,9,5,5,5,7,5,9,9,7,9,9,5,5,5,5,5,5,5,5,5,5,5,5,5,5,6,9,9,5,8,),
(9,9,9,9,9,9,9,9,9,9,9,8,9,8,8,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,8,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,8,9,8,9,9,9,9,0,9,9,9,9,9,9,9,9,9,9,7,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,),
(9,9,8,8,9,8,9,8,9,9,7,8,6,8,6,8,8,8,8,7,8,8,9,8,8,8,8,7,8,8,8,7,6,9,8,9,9,9,8,9,9,6,9,9,9,9,8,9,8,9,8,9,9,9,9,8,9,8,9,9,9,7,0,9,7,9,7,7,7,8,7,9,9,7,9,9,8,8,7,8,7,8,8,8,8,8,8,8,8,8,7,9,9,7,9,),
(15,15,14,14,15,14,15,14,15,15,13,14,13,14,12,14,14,14,14,13,14,14,15,14,14,14,14,13,14,14,14,14,12,15,14,15,15,15,14,15,15,13,15,15,15,15,14,15,14,15,14,15,15,15,15,14,15,14,15,15,15,14,6,15,14,15,14,14,14,14,14,15,15,13,15,15,14,14,14,14,14,14,14,14,14,14,14,14,14,14,13,15,15,13,15,),
(11,10,10,9,9,9,10,10,10,9,7,11,8,11,11,9,8,11,10,8,9,9,10,9,9,11,11,7,8,9,8,10,11,11,8,11,11,11,8,11,11,10,11,11,11,11,8,11,8,11,9,10,10,10,10,11,10,11,11,10,10,7,2,10,10,11,9,9,9,10,9,11,11,9,11,11,11,11,9,11,9,11,10,10,10,8,9,11,8,11,9,11,10,7,9,),
(9,9,6,8,8,7,9,7,9,8,5,8,5,8,6,8,7,8,8,5,8,8,9,8,8,8,8,5,6,7,8,6,5,9,7,9,9,9,7,9,9,5,9,9,9,9,7,9,7,9,8,9,9,9,9,8,9,8,9,9,9,6,0,9,6,9,6,6,6,7,6,9,9,7,9,9,7,7,6,7,6,7,6,7,7,7,7,7,7,7,6,9,9,5,8,),
(9,9,8,7,8,7,9,8,9,8,5,9,5,9,9,7,7,9,7,4,8,7,9,7,7,9,9,5,6,7,7,8,9,9,7,9,9,9,7,9,9,8,9,9,9,9,7,9,7,9,7,9,9,9,9,9,9,9,9,9,9,6,0,9,8,9,7,7,7,8,7,9,9,7,9,9,9,9,7,9,7,9,8,8,8,7,7,9,7,9,7,9,9,5,8,),
(3,3,1,1,2,1,3,1,3,1,1,2,1,2,1,1,1,1,1,1,2,1,3,1,1,2,2,1,1,1,1,1,1,3,1,3,3,3,1,3,3,1,3,3,3,3,1,3,1,3,1,3,3,3,3,2,3,2,3,3,3,1,3,3,1,3,1,1,1,1,2,3,3,3,3,3,1,1,1,3,1,1,1,1,1,1,1,1,2,1,1,3,3,1,2,),
(4,2,3,3,2,3,3,4,3,1,3,4,3,4,4,3,2,4,4,3,3,3,2,3,3,4,4,3,3,3,2,4,4,4,3,4,4,4,3,4,4,4,4,4,4,4,3,4,3,4,3,1,3,1,1,4,1,4,4,1,2,2,0,2,4,4,3,3,3,3,3,4,4,2,4,4,4,4,3,4,3,4,4,3,4,2,2,4,2,4,3,4,2,3,2,),
(3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,),
(7,6,6,6,6,5,6,7,5,5,4,6,3,6,5,7,6,5,5,5,7,7,4,6,7,6,6,6,6,6,6,7,5,7,7,7,7,7,7,7,7,2,7,7,7,7,7,7,7,7,6,4,7,5,6,3,4,3,7,6,5,7,0,5,7,7,7,7,7,6,7,7,7,5,7,7,7,7,7,7,7,7,7,6,7,6,6,6,7,6,5,7,5,6,5,),
(8,5,0,2,0,0,8,7,9,4,2,8,5,8,5,2,5,2,2,1,2,2,2,2,2,8,8,2,2,2,2,4,0,0,0,0,0,1,0,0,8,3,0,2,0,0,0,0,0,0,0,0,0,0,0,0,0,0,9,5,9,2,9,7,2,2,3,2,2,5,8,3,8,9,2,8,0,3,2,9,3,5,3,5,3,2,0,2,8,2,6,9,9,1,5,),
(2,2,0,1,2,1,2,1,1,2,0,1,0,1,0,1,0,1,1,0,1,1,1,1,1,1,1,0,0,0,1,0,0,2,0,2,2,2,0,2,2,0,2,2,2,2,0,2,0,2,1,1,2,2,2,0,1,0,2,2,1,0,0,1,0,2,0,0,0,1,0,2,1,0,2,2,0,0,0,0,0,0,0,1,0,0,0,0,0,0,0,2,1,0,2,),
(7,6,7,7,7,7,6,7,6,6,7,7,7,7,7,7,6,7,7,7,7,7,5,7,7,7,7,7,7,7,6,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,3,7,6,6,7,4,7,7,6,5,7,0,5,7,7,7,7,7,6,7,7,7,5,7,7,7,7,7,7,7,7,7,6,7,7,7,7,7,7,7,7,5,7,5,),
(7,5,7,7,6,7,6,7,5,5,7,6,7,6,6,7,5,5,7,7,7,7,5,7,7,6,6,7,7,7,5,7,6,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,3,7,5,6,5,4,5,7,6,5,7,0,5,7,7,7,7,7,6,7,7,7,5,7,7,7,7,7,7,7,7,7,6,7,6,6,5,7,5,7,7,5,7,4,),
(6,5,6,6,6,5,5,6,4,5,3,5,2,5,6,6,5,5,6,3,6,6,4,5,6,5,5,3,6,5,5,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,5,2,6,5,5,5,3,5,6,5,4,5,0,4,6,6,5,5,5,5,5,6,6,4,6,6,6,6,5,6,5,6,6,5,6,6,6,5,6,5,4,6,4,1,4,),
(7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,0,7,7,7,7,7,7,7,7,7,7,5,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,),
(7,5,6,7,6,7,6,7,5,5,7,6,3,6,6,7,5,5,7,7,7,7,5,7,7,6,6,7,6,7,5,7,6,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,3,7,5,6,5,4,5,7,6,5,7,0,5,7,7,7,7,7,6,7,7,7,5,7,7,7,7,7,7,7,7,7,6,7,6,6,5,7,5,7,7,5,7,4,),
(4,4,2,4,4,3,4,3,4,3,2,3,2,3,2,4,4,2,2,2,4,4,4,4,4,4,4,2,2,4,4,3,2,4,4,4,4,4,4,4,4,2,4,4,4,4,4,4,4,4,4,4,4,4,4,3,4,3,4,4,4,3,0,4,2,4,2,2,2,4,2,4,4,2,4,4,4,4,2,4,2,4,3,4,4,4,4,4,4,4,2,4,4,2,3,),
(7,7,7,7,7,7,7,7,6,6,7,7,7,7,7,7,7,7,7,7,7,7,5,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,3,7,6,6,7,5,7,7,6,5,7,5,5,7,7,7,7,7,7,7,7,7,5,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,5,7,6,),
(6,5,6,6,6,6,5,6,5,5,6,6,6,6,6,6,5,6,6,6,6,6,4,6,6,6,6,6,6,6,5,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,2,6,5,5,6,3,6,6,5,4,6,0,4,6,6,6,6,6,5,6,6,6,4,6,6,6,6,6,6,6,6,6,5,6,6,6,6,6,6,6,6,4,6,4,),
(1,1,1,1,1,1,1,1,1,0,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,0,1,1,1,1,1,1,1,1,1,1,0,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,0,),
(3,3,3,3,3,3,3,3,3,2,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,2,3,3,3,3,3,3,3,3,3,3,2,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,2,),
(7,7,6,7,7,6,7,6,6,6,4,7,5,7,7,7,7,7,6,5,7,7,5,7,7,7,7,4,6,7,7,6,7,7,7,7,7,7,7,7,7,6,7,7,7,7,7,7,7,7,7,3,7,6,6,7,5,7,7,6,5,6,0,5,6,7,5,5,5,7,5,7,7,5,7,7,7,7,5,7,5,7,6,7,7,7,7,7,7,7,5,7,5,4,6,),
(1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,0,1,1,1,1,1,1,1,1,1,1,0,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,),
(11,10,11,11,11,11,10,11,10,10,11,11,11,11,11,11,10,11,11,11,11,11,9,11,11,11,11,11,11,11,10,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,7,11,10,10,11,8,11,11,10,9,11,2,9,11,11,11,11,11,10,11,11,11,9,11,11,11,11,11,11,11,11,11,10,11,11,11,11,11,11,11,11,9,11,9,),
(6,5,6,6,6,6,5,6,5,5,6,6,6,6,6,6,5,6,6,6,6,6,4,6,6,6,6,6,6,6,5,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,2,6,5,5,6,3,6,6,5,4,6,0,4,6,6,6,6,6,5,6,6,6,4,6,6,6,6,6,6,6,6,6,5,6,6,6,6,6,6,6,6,4,6,4,),
(7,5,7,7,6,7,6,7,5,5,7,6,7,6,6,7,5,5,7,7,7,7,5,7,7,6,6,7,7,7,5,7,6,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,3,7,5,6,5,4,5,7,6,5,7,0,5,7,7,7,7,7,6,7,7,7,5,7,7,7,7,7,7,7,7,7,6,7,6,6,5,7,5,7,7,5,7,4,),
(7,5,7,7,6,7,6,7,5,5,7,6,7,6,6,7,5,5,7,7,7,7,5,7,7,6,6,7,7,7,5,7,6,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,3,7,5,6,5,4,5,7,6,5,7,1,5,7,7,7,7,7,6,7,7,7,5,7,7,7,7,7,7,7,7,7,6,7,6,6,5,7,5,7,7,5,7,4,),
(7,7,7,7,7,7,7,7,7,6,7,7,7,7,7,7,7,7,7,7,7,7,5,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,3,7,6,6,7,5,7,7,6,7,7,7,5,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,6,),
(4,4,2,4,4,3,4,3,3,3,1,3,1,3,2,4,4,1,1,1,4,4,0,4,4,4,4,1,2,4,4,3,1,4,4,4,4,4,4,4,4,1,4,4,4,4,4,4,4,4,4,0,4,3,3,1,2,1,4,3,2,3,0,2,2,4,2,2,2,4,2,4,4,2,4,4,4,4,2,4,2,4,3,4,4,4,4,4,4,4,2,4,2,1,3,),
(6,5,6,6,6,6,5,6,4,5,3,5,6,5,6,6,5,5,6,6,6,6,4,6,6,5,5,4,6,6,5,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,2,6,5,5,5,3,5,6,5,4,5,0,4,6,6,6,6,6,5,6,6,6,4,6,6,6,6,6,6,6,6,6,5,6,6,6,5,6,5,5,6,4,1,4,),
(4,4,3,4,4,3,4,3,3,3,2,4,2,4,4,4,4,4,2,2,4,4,2,4,4,4,4,2,2,4,4,3,4,4,4,4,4,4,4,4,4,3,4,4,4,4,4,4,4,4,4,0,4,3,3,4,2,4,4,3,2,3,0,2,3,4,2,2,2,4,2,4,4,2,4,4,4,4,2,4,2,4,3,4,4,4,4,4,4,4,2,4,2,2,3,),
(6,6,6,6,6,6,6,6,5,5,6,6,6,6,6,6,6,6,6,6,6,6,4,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,2,6,5,5,6,4,6,6,5,4,6,0,4,6,6,6,6,6,6,6,6,6,4,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,4,6,5,),
(7,7,7,7,7,6,7,7,6,6,6,6,5,6,5,7,7,4,5,5,7,7,3,7,7,7,7,6,7,7,7,6,5,7,7,7,7,7,7,7,7,5,7,7,7,7,7,7,7,7,7,3,7,6,6,4,5,4,7,6,5,6,0,5,6,7,6,6,6,7,6,7,7,5,7,7,7,7,6,7,6,7,7,7,7,7,7,7,7,7,5,7,5,6,6,),
(11,11,11,11,11,10,11,11,10,10,10,10,10,10,9,11,11,9,10,10,11,11,8,11,11,11,11,10,11,11,11,10,9,11,11,11,11,11,11,11,11,10,11,11,11,11,11,11,11,11,11,7,11,10,10,9,9,9,11,10,9,10,2,9,10,11,10,10,10,11,10,11,11,9,11,11,11,11,10,11,10,11,11,11,11,11,11,11,11,11,10,11,9,10,10,),
(7,7,6,7,7,6,7,6,6,6,5,7,5,7,7,7,7,7,6,5,7,7,5,7,7,7,7,5,6,7,7,6,7,7,7,7,7,7,7,7,7,6,7,7,7,7,7,7,7,7,7,3,7,6,6,7,5,7,7,6,5,6,0,5,6,7,5,5,5,7,5,7,7,5,7,7,7,7,5,7,5,7,6,7,7,7,7,7,7,7,5,7,5,5,6,),
(7,7,7,7,7,6,7,7,6,6,6,6,5,6,5,7,7,4,5,6,7,7,3,7,7,7,7,6,7,7,7,6,5,7,7,7,7,7,7,7,7,5,7,7,7,7,7,7,7,7,7,3,7,6,6,4,5,4,7,6,5,6,3,5,6,7,6,6,6,7,6,7,7,5,7,7,7,7,6,7,6,7,7,7,7,7,7,7,7,7,6,7,5,6,6,),
(7,7,6,7,7,6,7,6,6,6,5,7,3,7,7,7,7,7,5,4,7,7,5,7,7,7,7,5,6,7,7,6,7,7,7,7,7,7,7,7,7,6,7,7,7,7,7,7,7,7,7,3,7,6,6,7,5,7,7,6,5,6,0,5,6,7,5,5,5,7,5,7,7,5,7,7,7,7,5,7,5,7,6,7,7,7,7,7,7,7,5,7,5,5,6,),
(5,5,3,3,4,3,5,3,5,3,3,4,3,4,3,3,3,3,3,3,4,3,5,3,3,4,4,3,3,3,3,3,3,5,3,5,5,5,3,5,5,3,5,5,5,5,3,5,3,5,3,5,5,5,5,4,5,4,5,5,5,3,5,5,3,5,3,3,3,3,4,5,5,5,5,5,3,3,3,5,3,3,3,3,3,3,3,3,4,3,2,5,5,3,4,),
(1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,),
(5,3,3,3,3,5,4,5,3,3,3,4,3,4,4,5,3,3,3,5,3,5,2,5,3,4,4,4,3,3,3,5,4,5,5,5,5,5,5,5,5,3,5,5,5,5,5,5,5,5,3,2,5,3,3,3,2,3,5,3,3,3,2,3,4,5,5,5,5,4,5,5,5,3,5,5,5,5,5,5,5,5,4,4,5,3,4,3,4,3,5,5,2,3,3,),
(8,4,6,7,7,6,7,8,6,3,7,7,4,7,6,8,5,3,6,6,8,8,5,6,8,7,7,7,1,4,3,8,6,8,8,8,8,8,8,8,8,3,8,8,8,8,8,8,8,8,6,4,8,6,7,3,5,4,8,7,6,8,0,6,8,8,8,8,8,7,8,8,8,6,8,8,8,8,8,8,8,8,8,7,8,7,7,6,8,4,6,8,6,7,4,),
(4,4,1,4,4,3,4,3,3,4,0,3,0,3,2,4,3,4,4,0,3,4,3,4,4,3,3,0,0,3,4,2,1,4,3,4,4,4,3,4,4,0,4,4,4,4,3,4,3,4,4,3,4,4,4,2,3,2,4,4,3,2,0,3,1,4,1,1,1,3,1,4,3,1,4,4,3,3,1,3,1,3,2,3,3,3,3,3,3,3,2,4,3,0,4,),
)
# End of font
Focntionnement des "FONT" sur écran OLED
-
Jérémy
Administrateur du site- Messages : 2727
- Âge : 45
- Enregistré en : juillet 2015
- Localisation : Dans le sud
- Contact :
Je rajoute le lien : http://guy.carpenter.id.au/gaugette/201 ... r-ssd1306/
Apres re-lecture, il me seble que la personne a créer une fonction a bas ede tableau comme buffer pour ensuite ressortir les bons codes . trop dur pour moi !
Apres re-lecture, il me seble que la personne a créer une fonction a bas ede tableau comme buffer pour ensuite ressortir les bons codes . trop dur pour moi !
Fonctionnement des "FONT" sur écran OLED
Bonjour
Je ne comprends pas trop ce que tu ne dis, j'ai jeté un œil sur la DS, très très proche du KS108S ,tout cela avec des commandes en plus,
Pour résumer ,tu as 127 colonnes et 7 pages .Pour, par exemple ( page 0 colonnes 0) tu as le 1er octet tu es sur la 1er RAM , tu ne peux pas le dissocier. C'est pas mal a faire du graphisme avec ce type de contrôleur, exemple modification d'un bit, fonction pixel -> (lecture octet modification du bit écriture octet)
Tu as un pointeur GRAM qui suivant commande se déplace horizontalement ou verticalement (offset si zéro horizontale si 128 verticale) encore un pointeur avec ou sans des butées.
Exemple après RESET pointeur sur page0 colonne 0 (donc 1er RAM) offset 0 ,puis si écriture ou lecture se déplace vers la RAM suivante c'est a dire horizontalement et comme cela jusqu’à la page 7 et colonne 127 fig 10.1 de la ds . Le plan RAM (a bien se mettre dans la tête) est de 0 a 8191et la dans sont taillés les PAGES ou lignes.
Après a toi de gérer ,ce que tu veux envoyer, dans la RAM graphique, mais HORS OLED
Bon je suis sûrement hors sujet, à toi de m'en dire un peu plus
A+
PS: a oui comme sur le KS108S bit zero de l'octet est en HAUT
Pour offset cela fonctionne comme cela : index du pointeur = index du pointeur+offset. Offset ->c'est bien aussi déplacement
Je ne comprends pas trop ce que tu ne dis, j'ai jeté un œil sur la DS, très très proche du KS108S ,tout cela avec des commandes en plus,
Pour résumer ,tu as 127 colonnes et 7 pages .Pour, par exemple ( page 0 colonnes 0) tu as le 1er octet tu es sur la 1er RAM , tu ne peux pas le dissocier. C'est pas mal a faire du graphisme avec ce type de contrôleur, exemple modification d'un bit, fonction pixel -> (lecture octet modification du bit écriture octet)
Tu as un pointeur GRAM qui suivant commande se déplace horizontalement ou verticalement (offset si zéro horizontale si 128 verticale) encore un pointeur avec ou sans des butées.
Exemple après RESET pointeur sur page0 colonne 0 (donc 1er RAM) offset 0 ,puis si écriture ou lecture se déplace vers la RAM suivante c'est a dire horizontalement et comme cela jusqu’à la page 7 et colonne 127 fig 10.1 de la ds . Le plan RAM (a bien se mettre dans la tête) est de 0 a 8191et la dans sont taillés les PAGES ou lignes.
Après a toi de gérer ,ce que tu veux envoyer, dans la RAM graphique, mais HORS OLED
Bon je suis sûrement hors sujet, à toi de m'en dire un peu plus
A+
PS: a oui comme sur le KS108S bit zero de l'octet est en HAUT
Pour offset cela fonctionne comme cela : index du pointeur = index du pointeur+offset. Offset ->c'est bien aussi déplacement
Fonctionnement des "FONT" sur écran OLED
-
Jérémy
Administrateur du site- Messages : 2727
- Âge : 45
- Enregistré en : juillet 2015
- Localisation : Dans le sud
- Contact :
Bonjour,
Merci d'avoir jeter un oeil !
Tu n'est pas Hors sujet mais pas non plus pile poil
En fait, je crois qu'il y a une librairie spéciale pour traiter ce genre de font .
Un octet est une barre verticale de 8 pixels, chaque pixels correspond à une byte. Prenons l'exemple d'une font de 8 pixel de haut sur 5 de large ( classique).
Pour dessiner une lettre on viendra coller 5 barres verticales les unes a la suite des autres .
Dans la font donné en #1 , il dessine la lettre en empilant 8 barres horizontales. C'est ici que se trouve le problème. Il faut donc trouver une astuce pour transformer un empilement d'octets ( les uns au dessus ds autres) par un collage d'octets les uns à cotés des autres !
Merci d'avoir jeter un oeil !
Tu n'est pas Hors sujet mais pas non plus pile poil
En fait, je crois qu'il y a une librairie spéciale pour traiter ce genre de font .
Un octet est une barre verticale de 8 pixels, chaque pixels correspond à une byte. Prenons l'exemple d'une font de 8 pixel de haut sur 5 de large ( classique).
Pour dessiner une lettre on viendra coller 5 barres verticales les unes a la suite des autres .
Dans la font donné en #1 , il dessine la lettre en empilant 8 barres horizontales. C'est ici que se trouve le problème. Il faut donc trouver une astuce pour transformer un empilement d'octets ( les uns au dessus ds autres) par un collage d'octets les uns à cotés des autres !
Fonctionnement des "FONT" sur écran OLED
Fonctionnement des "FONT" sur écran OLED
Fonctionnement des "FONT" sur écran OLED
oui je viens de voir alors la papier crayon
On part sur matrice du 16x8
Mettre dans un tableau A a 2 dimensions les 8 premières données matrice -> A,[x,0] puis les 8 derniers matrice -> A[x,1]
alors si tu veux on va allez doucement
c'est bon pour les tableaux?
Pourquoi a 2 dimensions parce que le traitement de la dimension 0 sera la même que la dimension 1( 8X8)
a suivre.....
On part sur matrice du 16x8
Mettre dans un tableau A a 2 dimensions les 8 premières données matrice -> A,[x,0] puis les 8 derniers matrice -> A[x,1]
alors si tu veux on va allez doucement
c'est bon pour les tableaux?
Pourquoi a 2 dimensions parce que le traitement de la dimension 0 sera la même que la dimension 1( 8X8)
a suivre.....
Fonctionnement des "FONT" sur écran OLED
Bon je prend un peu d'avance
il va falloir faire des boucles imbriquées
On va commencer par la plus petite elle fera 8 passes avant il va falloir un tableau résultat 1 dimension allez ici TabResul[0]
TabResul[0]=<<1 A[0,0];
TabResul[0]= <<1A[0,1];
Et cela jusqu'a [0,7] donc ici avec l'index cela nous donne:index
TabResul[0]= <<1 A[0,i]:
fin petite passe
et on a extrait le premier octet tu suis sinon stop
il va falloir faire des boucles imbriquées
On va commencer par la plus petite elle fera 8 passes avant il va falloir un tableau résultat 1 dimension allez ici TabResul[0]
TabResul[0]=<<1 A[0,0];
TabResul[0]= <<1A[0,1];
Et cela jusqu'a [0,7] donc ici avec l'index cela nous donne:index
TabResul[0]= <<1 A[0,i]:
fin petite passe
et on a extrait le premier octet tu suis sinon stop
Fonctionnement des "FONT" sur écran OLED
Fonctionnement des "FONT" sur écran OLED
avant d'allez plus loin dit moi si c'est bien cela que tu veux
la suite c'est cela et la on a récupéré le 1er octet le << 1 est un test de bit et non pas une rotation
je te laisse programmer je ne fais que l'organisation 0K?
la suite c'est cela et la on a récupéré le 1er octet le << 1 est un test de bit et non pas une rotation
je te laisse programmer je ne fais que l'organisation 0K?
Vous n’avez pas les permissions nécessaires pour voir les fichiers joints à ce message.
Qui est en ligne
Utilisateurs parcourant ce forum : Aucun utilisateur enregistré et 114 invités