st7735s: documentation, ready for merge
[cortex-from-scratch] / include / lib / fonts / wogfont.h
1 /* (CC-BY-NC-SA) ROBIN KRENS - ROBIN @ ROBINKRENS.NL
2  * 
3  * $LOG$
4  * 2019/9/18 - ROBIN KRENS      
5  * Initial version 
6  * 
7  * $DESCRIPTION$
8  * A non-standard 5 by 7 bit font (ALL CHARs ARE UPPER CASE)
9  * Some characters I haven't designed yet, these will display
10  * a'█' on a VGA or TFT screen. A character is column hex-coded. 
11  *
12  * An example to make things clear!
13  * The letter 'S's bitmap is: 
14  *
15  * WIDTH = 5
16  * ##### L
17  * #___# E
18  * #____ N
19  * ##### G
20  * ____# T
21  * #___# H
22  * ##### = 7
23  *
24  * # represents a selected bit, 1
25  * _ represents a non selected bit, 0
26  *  
27  * For example, the first column is 1111101, the second columm 1001001
28  * For hex encoding we start at the MSB, the first LSB is never used
29  * The first column is 0xF6 and the second column 0x92. The letter 'S' 
30  * equals to: 0xF6, 0x92, 0x92, 0x92, 0xDE, 
31  *
32  * */
33
34 const uint8_t ASCII5x7[] = {
35         0x00, 0x00, 0x00, 0x00, 0x00, // NULL
36         0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 
37         0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 
38         0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 
39         0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 
40         0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 
41         0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 
42         0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 
43         0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 
44         0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 
45         0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 
46         0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 
47         0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 
48         0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 
49         0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 
50         0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 
51         0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 
52         0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 
53         0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 
54         0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 
55         0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 
56         0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 
57         0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 
58         0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 
59         0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 
60         0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 
61         0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 
62         0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 
63         0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 
64         0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 
65         0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 
66         0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 
67         0x00, 0x00, 0x00, 0x00, 0x00, // SPACE
68         0xFF, 0xFF, 0xFF, 0xFF, 0xFF, // ! 
69         0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 
70         0x28, 0x7C, 0x28, 0x7C, 0x28, // # definitely needed for terminal :D
71         0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 
72         0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 
73         0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 
74         0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 
75         0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 
76         0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 
77         0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 
78         0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 
79         0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 
80         0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 
81         0x00, 0x02, 0x00, 0x00, 0x00, // .
82         0xFF, 0xFF, 0xFF, 0xFF, 0xFF, // /
83         0xFE, 0x82, 0x92, 0x82, 0xFE, // 0
84         0x00, 0x00, 0x82, 0xFE, 0x02, // 1
85         0xDE, 0x92, 0x92, 0x92, 0xF2, // 2
86         0xC6, 0x92, 0x92, 0x92, 0xFE, // 3
87         0xF8, 0x08, 0x08, 0x08, 0xFE, // 4
88         0xF6, 0x92, 0x92, 0x92, 0x9E, // 5
89         0xFE, 0x92, 0x92, 0x92, 0xDE, // 6
90         0xC0, 0x80, 0x80, 0x80, 0xFE, // 7
91         0xFE, 0x92, 0x92, 0x92, 0xFE, // 8
92         0xF6, 0x92, 0x92, 0x92, 0xFE, // 9
93         0x00, 0x44, 0x00, 0x00, 0x00, //:
94         0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 
95         0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 
96         0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 
97         0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 
98         0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 
99         0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 
100         0x7E, 0x88, 0x88, 0x88, 0x7E, // upper case A
101         0xFE, 0x92, 0x92, 0x92, 0x7C, // B
102         0xFE, 0x82, 0x82, 0x82, 0xC6, // C
103         0xFE, 0x82, 0x82, 0x82, 0x7C, // D
104         0xFE, 0x92, 0x92, 0x92, 0xC6, // E 
105         0xFE, 0x90, 0x90, 0x90, 0xC0, // F 
106         0xFE, 0x82, 0x9A, 0x92, 0xDE, // G
107         0xFE, 0x10, 0x10, 0x10, 0xFE, // H
108         0x00, 0x82, 0xFE, 0x82, 0x00, // I
109         0x00, 0x06, 0x02, 0x82, 0xFE, // J
110         0xFE, 0x10, 0x10, 0x28, 0xC6, // K
111         0xFE, 0x02, 0x02, 0x02, 0x06, // L
112         0xFE, 0x60, 0x18, 0x60, 0xFE, // M
113         0xFE, 0x60, 0x30, 0x18, 0xFE, // N
114         0x7C, 0x82, 0x82, 0x82, 0x7C, // O  
115         0xFE, 0x90, 0x90, 0x90, 0x70, // P
116         0x7C, 0x82, 0x8A, 0x84, 0x7A, // Q
117         0xFE, 0x90, 0x90, 0x98, 0x6E, // R  
118         0xF6, 0x92, 0x92, 0x92, 0xDE, // S
119         0xC0, 0x80, 0xFE, 0x80, 0xC0, // T  
120         0xFE, 0x02, 0x02, 0x02, 0xFE, // U
121         0xF8, 0x0C, 0x02, 0x0C, 0xF8, // V 
122         0xFE, 0x0C, 0x30, 0x0C, 0xFE, // W 
123         0xC6, 0x6C, 0x10, 0x6C, 0xC6, // X
124         0xE0, 0x30, 0x1E, 0x30, 0xE0, // Y
125         0xC6, 0x8A, 0x92, 0xA2, 0xC6, // Z
126         0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 
127         0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 
128         0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 
129         0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 
130         0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 
131         0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 
132         0x7E, 0x88, 0x88, 0x88, 0x7E, // lower case A
133         0xFE, 0x92, 0x92, 0x92, 0x7C, // b
134         0xFE, 0x82, 0x82, 0x82, 0xC6, // c
135         0xFE, 0x82, 0x82, 0x82, 0x7C, // d
136         0xFE, 0x92, 0x92, 0x92, 0xC6, // e 
137         0xFE, 0x90, 0x90, 0x90, 0xC0, // f 
138         0xFE, 0x82, 0x9A, 0x92, 0xDE, // g
139         0xFE, 0x10, 0x10, 0x10, 0xFE, // h
140         0x00, 0x82, 0xFE, 0x82, 0x00, // i
141         0x00, 0x06, 0x02, 0x82, 0xFE, // j
142         0xFE, 0x10, 0x10, 0x28, 0xC6, // k
143         0xFE, 0x02, 0x02, 0x02, 0x06, // l
144         0xFE, 0x60, 0x18, 0x60, 0xFE, // m
145         0xFE, 0x60, 0x30, 0x18, 0xFE, // n
146         0x7C, 0x82, 0x82, 0x82, 0x7C, // o  
147         0xFE, 0x90, 0x90, 0x90, 0x70, // p
148         0x7C, 0x82, 0x8A, 0x84, 0x7A, // q
149         0xFE, 0x90, 0x90, 0x98, 0x6E, // r  
150         0xF6, 0x92, 0x92, 0x92, 0xDE, // s
151         0xC0, 0x80, 0xFE, 0x80, 0xC0, // t  
152         0xFE, 0x02, 0x02, 0x02, 0xFE, // u
153         0xF8, 0x0C, 0x02, 0x0C, 0xF8, // v 
154         0xFE, 0x0C, 0x30, 0x0C, 0xFE, // w 
155         0xC6, 0x6C, 0x10, 0x6C, 0xC6, // x
156         0xE0, 0x30, 0x1E, 0x30, 0xE0, // y
157         0xC6, 0x8A, 0x92, 0xA2, 0xC6, // z
158         0xFF, 0xFF, 0xFF, 0xFF, 0xFF,  
159         0xFF, 0xFF, 0xFF, 0xFF, 0xFF,  
160         0xFF, 0xFF, 0xFF, 0xFF, 0xFF,  
161         0xFF, 0xFF, 0xFF, 0xFF, 0xFF,  
162         0xFF, 0xFF, 0xFF, 0xFF, 0xFF, // DEL 
163         
164 };