-
Notifications
You must be signed in to change notification settings - Fork 0
/
fonts.h
187 lines (181 loc) · 11.5 KB
/
fonts.h
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
/**
* fonts.c
* So many hours wasted on this...
*
* @author Nathan Campos <nathanpc@dreamintech.net>
*/
#ifndef FONTS_H_
#define FONTS_H_
/**
* Big font.
*/
static const char big_font[][3][18] = {
{ // 0
{ 0b00000000, 0b00000000, 0b11111100, 0b11111100, 0b11111100, 0b00011100, 0b00011100, 0b00011100, 0b00011100, 0b00011100, 0b00011100, 0b00011100, 0b00011100, 0b11111100, 0b11111100, 0b11111100, 0b00000000, 0b00000000 },
{ 0b00000000, 0b00000000, 0b11111111, 0b11111111, 0b11111111, 0b00000000, 0b00000000, 0b00000000, 0b00000000, 0b00000000, 0b00000000, 0b00000000, 0b00000000, 0b11111111, 0b11111111, 0b11111111, 0b00000000, 0b00000000 },
{ 0b00000000, 0b00000000, 0b00111111, 0b00111111, 0b00111111, 0b00111000, 0b00111000, 0b00111000, 0b00111000, 0b00111000, 0b00111000, 0b00111000, 0b00111000, 0b00111111, 0b00111111, 0b00111111, 0b00000000, 0b00000000 }
},
{ // 1
{ 0b00000000, 0b00000000, 0b00000000, 0b00000000, 0b00000000, 0b00000000, 0b00000000, 0b00000000, 0b00000000, 0b00000000, 0b00000000, 0b00000000, 0b00000000, 0b11111100, 0b11111100, 0b11111100, 0b00000000, 0b00000000 },
{ 0b00000000, 0b00000000, 0b00000000, 0b00000000, 0b00000000, 0b00000000, 0b00000000, 0b00000000, 0b00000000, 0b00000000, 0b00000000, 0b00000000, 0b00000000, 0b11111111, 0b11111111, 0b11111111, 0b00000000, 0b00000000 },
{ 0b00000000, 0b00000000, 0b00000000, 0b00000000, 0b00000000, 0b00000000, 0b00000000, 0b00000000, 0b00000000, 0b00000000, 0b00000000, 0b00000000, 0b00000000, 0b00111111, 0b00111111, 0b00111111, 0b00000000, 0b00000000 }
},
{ // 2
{ 0b00000000, 0b00000000, 0b00011100, 0b00011100, 0b00011100, 0b00011100, 0b00011100, 0b00011100, 0b00011100, 0b00011100, 0b00011100, 0b00011100, 0b00011100, 0b11111100, 0b11111100, 0b11111100, 0b00000000, 0b00000000 },
{ 0b00000000, 0b00000000, 0b11111100, 0b11111100, 0b11111100, 0b00011100, 0b00011100, 0b00011100, 0b00011100, 0b00011100, 0b00011100, 0b00011100, 0b00011100, 0b00011111, 0b00011111, 0b00011111, 0b00000000, 0b00000000 },
{ 0b00000000, 0b00000000, 0b00111111, 0b00111111, 0b00111111, 0b00111000, 0b00111000, 0b00111000, 0b00111000, 0b00111000, 0b00111000, 0b00111000, 0b00111000, 0b00111000, 0b00111000, 0b00111000, 0b00000000, 0b00000000 }
},
{ // 3
{ 0b00000000, 0b00000000, 0b00011100, 0b00011100, 0b00011100, 0b00011100, 0b00011100, 0b00011100, 0b00011100, 0b00011100, 0b00011100, 0b00011100, 0b00011100, 0b11111100, 0b11111100, 0b11111100, 0b00000000, 0b00000000 },
{ 0b00000000, 0b00000000, 0b00000000, 0b00000000, 0b00000000, 0b00011100, 0b00011100, 0b00011100, 0b00011100, 0b00011100, 0b00011100, 0b00011100, 0b00011100, 0b11111111, 0b11111111, 0b11111111, 0b00000000, 0b00000000 },
{ 0b00000000, 0b00000000, 0b00111000, 0b00111000, 0b00111000, 0b00111000, 0b00111000, 0b00111000, 0b00111000, 0b00111000, 0b00111000, 0b00111000, 0b00111000, 0b00111111, 0b00111111, 0b00111111, 0b00000000, 0b00000000 }
},
{ // 4
{ 0b00000000, 0b00000000, 0b11111100, 0b11111100, 0b11111100, 0b00000000, 0b00000000, 0b00000000, 0b00000000, 0b00000000, 0b00000000, 0b00000000, 0b00000000, 0b11111100, 0b11111100, 0b11111100, 0b00000000, 0b00000000 },
{ 0b00000000, 0b00000000, 0b00111111, 0b00111111, 0b00111111, 0b00111000, 0b00111000, 0b00111000, 0b00111000, 0b00111000, 0b00111000, 0b00111000, 0b00111000, 0b11111111, 0b11111111, 0b11111111, 0b00000000, 0b00000000 },
{ 0b00000000, 0b00000000, 0b00000000, 0b00000000, 0b00000000, 0b00000000, 0b00000000, 0b00000000, 0b00000000, 0b00000000, 0b00000000, 0b00000000, 0b00000000, 0b00111111, 0b00111111, 0b00111111, 0b00000000, 0b00000000 }
},
{ // 5
{ 0b00000000, 0b00000000, 0b11111100, 0b11111100, 0b11111100, 0b00011100, 0b00011100, 0b00011100, 0b00011100, 0b00011100, 0b00011100, 0b00011100, 0b00011100, 0b00011100, 0b00011100, 0b00011100, 0b00000000, 0b00000000 },
{ 0b00000000, 0b00000000, 0b00011111, 0b00011111, 0b00011111, 0b00011100, 0b00011100, 0b00011100, 0b00011100, 0b00011100, 0b00011100, 0b00011100, 0b00011100, 0b11111100, 0b11111100, 0b11111100, 0b00000000, 0b00000000 },
{ 0b00000000, 0b00000000, 0b00111000, 0b00111000, 0b00111000, 0b00111000, 0b00111000, 0b00111000, 0b00111000, 0b00111000, 0b00111000, 0b00111000, 0b00111000, 0b00111111, 0b00111111, 0b00111111, 0b00000000, 0b00000000 }
},
{ // 6
{ 0b00000000, 0b00000000, 0b11111100, 0b11111100, 0b11111100, 0b00011100, 0b00011100, 0b00011100, 0b00011100, 0b00011100, 0b00011100, 0b00011100, 0b00011100, 0b00011100, 0b00011100, 0b00011100, 0b00000000, 0b00000000 },
{ 0b00000000, 0b00000000, 0b11111111, 0b11111111, 0b11111111, 0b00011100, 0b00011100, 0b00011100, 0b00011100, 0b00011100, 0b00011100, 0b00011100, 0b00011100, 0b11111100, 0b11111100, 0b11111100, 0b00000000, 0b00000000 },
{ 0b00000000, 0b00000000, 0b00111111, 0b00111111, 0b00111111, 0b00111000, 0b00111000, 0b00111000, 0b00111000, 0b00111000, 0b00111000, 0b00111000, 0b00111000, 0b00111111, 0b00111111, 0b00111111, 0b00000000, 0b00000000 }
},
{ // 7
{ 0b00000000, 0b00000000, 0b00011100, 0b00011100, 0b00011100, 0b00011100, 0b00011100, 0b00011100, 0b00011100, 0b00011100, 0b00011100, 0b00011100, 0b00011100, 0b11111100, 0b11111100, 0b11111100, 0b00000000, 0b00000000 },
{ 0b00000000, 0b00000000, 0b00000000, 0b00000000, 0b00000000, 0b00000000, 0b00000000, 0b00000000, 0b00000000, 0b00000000, 0b00000000, 0b00000000, 0b00000000, 0b11111111, 0b11111111, 0b11111111, 0b00000000, 0b00000000 },
{ 0b00000000, 0b00000000, 0b00000000, 0b00000000, 0b00000000, 0b00000000, 0b00000000, 0b00000000, 0b00000000, 0b00000000, 0b00000000, 0b00000000, 0b00000000, 0b00111111, 0b00111111, 0b00111111, 0b00000000, 0b00000000 }
},
{ // 8
{ 0b00000000, 0b00000000, 0b11111100, 0b11111100, 0b11111100, 0b00011100, 0b00011100, 0b00011100, 0b00011100, 0b00011100, 0b00011100, 0b00011100, 0b00011100, 0b11111100, 0b11111100, 0b11111100, 0b00000000, 0b00000000 },
{ 0b00000000, 0b00000000, 0b11111111, 0b11111111, 0b11111111, 0b00011100, 0b00011100, 0b00011100, 0b00011100, 0b00011100, 0b00011100, 0b00011100, 0b00011100, 0b11111111, 0b11111111, 0b11111111, 0b00000000, 0b00000000 },
{ 0b00000000, 0b00000000, 0b00111111, 0b00111111, 0b00111111, 0b00111000, 0b00111000, 0b00111000, 0b00111000, 0b00111000, 0b00111000, 0b00111000, 0b00111000, 0b00111111, 0b00111111, 0b00111111, 0b00000000, 0b00000000 }
},
{ // 9
{ 0b00000000, 0b00000000, 0b11111100, 0b11111100, 0b11111100, 0b00011100, 0b00011100, 0b00011100, 0b00011100, 0b00011100, 0b00011100, 0b00011100, 0b00011100, 0b11111100, 0b11111100, 0b11111100, 0b00000000, 0b00000000 },
{ 0b00000000, 0b00000000, 0b00011111, 0b00011111, 0b00011111, 0b00011100, 0b00011100, 0b00011100, 0b00011100, 0b00011100, 0b00011100, 0b00011100, 0b00011100, 0b11111111, 0b11111111, 0b11111111, 0b00000000, 0b00000000 },
{ 0b00000000, 0b00000000, 0b00111000, 0b00111000, 0b00111000, 0b00111000, 0b00111000, 0b00111000, 0b00111000, 0b00111000, 0b00111000, 0b00111000, 0b00111000, 0b00111111, 0b00111111, 0b00111111, 0b00000000, 0b00000000 }
}
};
/**
* Big symbols.
*/
static const char big_font_sym[][3][12] = {
{ // : (0)
{ 0b00000000, 0b00000000, 0b00000000, 0b00000000, 0b11000000, 0b11000000, 0b11000000, 0b11000000, 0b00000000, 0b00000000, 0b00000000, 0b00000000 },
{ 0b00000000, 0b00000000, 0b00000000, 0b00000000, 0b10000001, 0b10000001, 0b10000001, 0b10000001, 0b00000000, 0b00000000, 0b00000000, 0b00000000 },
{ 0b00000000, 0b00000000, 0b00000000, 0b00000000, 0b00000011, 0b00000011, 0b00000011, 0b00000011, 0b00000000, 0b00000000, 0b00000000, 0b00000000 }
}
};
/**
* Battery symbols.
*/
static const char batt_sym[][13] = {
{ 0b00000000, 0b01111110, 0b01000010, 0b01000010, 0b01000010, 0b01000010, 0b01000010, 0b01000010, 0b01000010, 0b01000010, 0b01111110, 0b00011000, 0b00000000 } // Low battery.
};
/**
* Basic font.
*/
static const char font[][5] = {
{0x00, 0x00, 0x00, 0x00, 0x00} // 20
,{0x00, 0x00, 0x5f, 0x00, 0x00} // 21 !
,{0x00, 0x07, 0x00, 0x07, 0x00} // 22 "
,{0x14, 0x7f, 0x14, 0x7f, 0x14} // 23 #
,{0x24, 0x2a, 0x7f, 0x2a, 0x12} // 24 $
,{0x23, 0x13, 0x08, 0x64, 0x62} // 25 %
,{0x36, 0x49, 0x55, 0x22, 0x50} // 26 &
,{0x00, 0x05, 0x03, 0x00, 0x00} // 27 '
,{0x00, 0x1c, 0x22, 0x41, 0x00} // 28 (
,{0x00, 0x41, 0x22, 0x1c, 0x00} // 29 )
,{0x14, 0x08, 0x3e, 0x08, 0x14} // 2a *
,{0x08, 0x08, 0x3e, 0x08, 0x08} // 2b +
,{0x00, 0x50, 0x30, 0x00, 0x00} // 2c ,
,{0x08, 0x08, 0x08, 0x08, 0x08} // 2d -
,{0x00, 0x60, 0x60, 0x00, 0x00} // 2e .
,{0x20, 0x10, 0x08, 0x04, 0x02} // 2f /
,{0x3e, 0x51, 0x49, 0x45, 0x3e} // 30 0
,{0x00, 0x42, 0x7f, 0x40, 0x00} // 31 1
,{0x42, 0x61, 0x51, 0x49, 0x46} // 32 2
,{0x21, 0x41, 0x45, 0x4b, 0x31} // 33 3
,{0x18, 0x14, 0x12, 0x7f, 0x10} // 34 4
,{0x27, 0x45, 0x45, 0x45, 0x39} // 35 5
,{0x3c, 0x4a, 0x49, 0x49, 0x30} // 36 6
,{0x01, 0x71, 0x09, 0x05, 0x03} // 37 7
,{0x36, 0x49, 0x49, 0x49, 0x36} // 38 8
,{0x06, 0x49, 0x49, 0x29, 0x1e} // 39 9
,{0x00, 0x36, 0x36, 0x00, 0x00} // 3a :
,{0x00, 0x56, 0x36, 0x00, 0x00} // 3b ;
,{0x08, 0x14, 0x22, 0x41, 0x00} // 3c <
,{0x14, 0x14, 0x14, 0x14, 0x14} // 3d =
,{0x00, 0x41, 0x22, 0x14, 0x08} // 3e >
,{0x02, 0x01, 0x51, 0x09, 0x06} // 3f ?
,{0x32, 0x49, 0x79, 0x41, 0x3e} // 40 @
,{0x7e, 0x11, 0x11, 0x11, 0x7e} // 41 A
,{0x7f, 0x49, 0x49, 0x49, 0x36} // 42 B
,{0x3e, 0x41, 0x41, 0x41, 0x22} // 43 C
,{0x7f, 0x41, 0x41, 0x22, 0x1c} // 44 D
,{0x7f, 0x49, 0x49, 0x49, 0x41} // 45 E
,{0x7f, 0x09, 0x09, 0x09, 0x01} // 46 F
,{0x3e, 0x41, 0x49, 0x49, 0x7a} // 47 G
,{0x7f, 0x08, 0x08, 0x08, 0x7f} // 48 H
,{0x00, 0x41, 0x7f, 0x41, 0x00} // 49 I
,{0x20, 0x40, 0x41, 0x3f, 0x01} // 4a J
,{0x7f, 0x08, 0x14, 0x22, 0x41} // 4b K
,{0x7f, 0x40, 0x40, 0x40, 0x40} // 4c L
,{0x7f, 0x02, 0x0c, 0x02, 0x7f} // 4d M
,{0x7f, 0x04, 0x08, 0x10, 0x7f} // 4e N
,{0x3e, 0x41, 0x41, 0x41, 0x3e} // 4f O
,{0x7f, 0x09, 0x09, 0x09, 0x06} // 50 P
,{0x3e, 0x41, 0x51, 0x21, 0x5e} // 51 Q
,{0x7f, 0x09, 0x19, 0x29, 0x46} // 52 R
,{0x46, 0x49, 0x49, 0x49, 0x31} // 53 S
,{0x01, 0x01, 0x7f, 0x01, 0x01} // 54 T
,{0x3f, 0x40, 0x40, 0x40, 0x3f} // 55 U
,{0x1f, 0x20, 0x40, 0x20, 0x1f} // 56 V
,{0x3f, 0x40, 0x38, 0x40, 0x3f} // 57 W
,{0x63, 0x14, 0x08, 0x14, 0x63} // 58 X
,{0x07, 0x08, 0x70, 0x08, 0x07} // 59 Y
,{0x61, 0x51, 0x49, 0x45, 0x43} // 5a Z
,{0x00, 0x7f, 0x41, 0x41, 0x00} // 5b [
,{0x02, 0x04, 0x08, 0x10, 0x20} // 5c ¥
,{0x00, 0x41, 0x41, 0x7f, 0x00} // 5d ]
,{0x04, 0x02, 0x01, 0x02, 0x04} // 5e ^
,{0x40, 0x40, 0x40, 0x40, 0x40} // 5f _
,{0x00, 0x01, 0x02, 0x04, 0x00} // 60 `
,{0x20, 0x54, 0x54, 0x54, 0x78} // 61 a
,{0x7f, 0x48, 0x44, 0x44, 0x38} // 62 b
,{0x38, 0x44, 0x44, 0x44, 0x20} // 63 c
,{0x38, 0x44, 0x44, 0x48, 0x7f} // 64 d
,{0x38, 0x54, 0x54, 0x54, 0x18} // 65 e
,{0x08, 0x7e, 0x09, 0x01, 0x02} // 66 f
,{0x0c, 0x52, 0x52, 0x52, 0x3e} // 67 g
,{0x7f, 0x08, 0x04, 0x04, 0x78} // 68 h
,{0x00, 0x44, 0x7d, 0x40, 0x00} // 69 i
,{0x20, 0x40, 0x44, 0x3d, 0x00} // 6a j
,{0x7f, 0x10, 0x28, 0x44, 0x00} // 6b k
,{0x00, 0x41, 0x7f, 0x40, 0x00} // 6c l
,{0x7c, 0x04, 0x18, 0x04, 0x78} // 6d m
,{0x7c, 0x08, 0x04, 0x04, 0x78} // 6e n
,{0x38, 0x44, 0x44, 0x44, 0x38} // 6f o
,{0x7c, 0x14, 0x14, 0x14, 0x08} // 70 p
,{0x08, 0x14, 0x14, 0x18, 0x7c} // 71 q
,{0x7c, 0x08, 0x04, 0x04, 0x08} // 72 r
,{0x48, 0x54, 0x54, 0x54, 0x20} // 73 s
,{0x04, 0x3f, 0x44, 0x40, 0x20} // 74 t
,{0x3c, 0x40, 0x40, 0x20, 0x7c} // 75 u
,{0x1c, 0x20, 0x40, 0x20, 0x1c} // 76 v
,{0x3c, 0x40, 0x30, 0x40, 0x3c} // 77 w
,{0x44, 0x28, 0x10, 0x28, 0x44} // 78 x
,{0x0c, 0x50, 0x50, 0x50, 0x3c} // 79 y
,{0x44, 0x64, 0x54, 0x4c, 0x44} // 7a z
,{0x00, 0x08, 0x36, 0x41, 0x00} // 7b {
,{0x00, 0x00, 0x7f, 0x00, 0x00} // 7c |
,{0x00, 0x41, 0x36, 0x08, 0x00} // 7d }
,{0x10, 0x08, 0x08, 0x10, 0x08} // 7e ~
,{0x00, 0x06, 0x09, 0x09, 0x06} // 7f Deg Symbol
};
#endif