forked from brianwiddas/pi-baremetal
-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathteletext.h
102 lines (102 loc) · 3.48 KB
/
teletext.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
// Character definitions from SAA5050 datasheet
// Each character is a 5x9 bit matrix
// 9 rows of 5-bit numbers
static unsigned char teletext[][9] = {
{ 0,0,0,0,0,0,0,0,0 }, // space
{ 4,4,4,4,4,0,4,0,0 }, // !
{ 10,10,10,0,0,0,0,0,0 }, // "
{ 6,9,8,28,8,8,31,0,0 }, // £ # in ASCII
{ 14,21,20,14,5,21,14,0,0 }, // $
{ 24,25,2,4,8,19,3,0,0 }, // %
{ 8,20,20,8,21,18,13,0,0 }, // &
{ 4,4,4,0,0,0,0,0,0 }, // '
{ 2,4,8,8,8,4,2,0,0 }, // (
{ 8,4,2,2,2,4,8,0,0 }, // )
{ 4,21,14,4,14,21,4,0,0 }, // *
{ 0,4,4,31,4,4,0,0,0 }, // +
{ 0,0,0,0,0,4,4,8,0 }, // ,
{ 0,0,0,14,0,0,0,0,0 }, // -
{ 0,0,0,0,0,0,4,0,0 }, // .
{ 0,1,2,4,8,16,0,0,0 }, // /
{ 4,10,17,17,17,10,4,0,0 }, // 0
{ 4,12,4,4,4,4,14,0,0 }, // 1
{ 14,17,1,6,8,16,31,0,0 }, // 2
{ 31,1,2,6,1,17,14,0,0 }, // 3
{ 2,6,10,18,31,2,2,0,0 }, // 4
{ 31,16,30,1,1,17,14,0,0 }, // 5
{ 6,8,16,30,17,17,14,0,0 }, // 6
{ 31,1,2,4,8,8,8,0,0 }, // 7
{ 14,17,17,14,17,17,14,0,0 }, // 8
{ 14,17,17,15,1,2,12,0,0 }, // 9
{ 0,0,4,0,0,0,4,0,0 }, // :
{ 0,0,4,0,0,4,4,8,0 }, // ;
{ 2,4,8,16,8,4,2,0,0 }, // <
{ 0,0,31,0,31,0,0,0,0 }, // =
{ 8,4,2,1,2,4,8,0,0 }, // >
{ 14,17,2,4,4,0,4,0,0 }, // ?
{ 14,17,23,21,23,16,14,0,0 }, // @
{ 4,10,17,17,31,17,17,0,0 }, // A
{ 30,17,17,30,17,17,30,0,0 }, // B
{ 14,17,16,16,16,17,14,0,0 }, // C
{ 30,17,17,17,17,17,30,0,0 }, // D
{ 31,16,16,30,16,16,31,0,0 }, // E
{ 31,16,16,30,16,16,16,0,0 }, // F
{ 14,17,16,16,19,17,15,0,0 }, // G
{ 17,17,17,31,17,17,17,0,0 }, // H
{ 14,4,4,4,4,4,14,0,0 }, // I
{ 1,1,1,1,1,17,14,0,0 }, // J
{ 17,18,20,24,20,18,17,0,0 }, // K
{ 16,16,16,16,16,16,31,0,0 }, // L
{ 17,27,21,21,17,17,17,0,0 }, // M
{ 17,17,25,21,19,17,17,0,0 }, // N
{ 14,17,17,17,17,17,14,0,0 }, // O
{ 30,17,17,30,16,16,16,0,0 }, // P
{ 14,17,17,17,21,18,13,0,0 }, // Q
{ 30,17,17,30,20,18,17,0,0 }, // R
{ 14,17,16,14,1,17,14,0,0 }, // S
{ 31,4,4,4,4,4,4,0,0 }, // T
{ 17,17,17,17,17,17,14,0,0 }, // U
{ 17,17,17,10,10,4,4,0,0 }, // V
{ 17,17,17,21,21,21,10,0,0 }, // W
{ 17,17,10,4,10,17,17,0,0 }, // X
{ 17,17,10,4,4,4,4,0,0 }, // Y
{ 31,1,2,4,8,16,31,0,0 }, // Z
{ 0,4,8,31,8,4,0,0,0 }, // left arrow [ in ASCII
{ 16,16,16,16,22,1,2,4,7 }, // 1/2 \ in ASCII
{ 0,4,2,31,2,4,0,0,0 }, // right arrow ] in ASCII
{ 0,4,14,21,4,4,0,0,0 }, // up arrow ^ in ASCII
{ 10,10,31,10,31,10,10,0,0 }, // # _ in ASCII
{ 0,0,0,31,0,0,0,0,0 }, // dash ` in ASCII
{ 0,0,14,1,15,17,15,0,0 }, // a
{ 16,16,30,17,17,17,30,0,0 }, // b
{ 0,0,15,16,16,16,15,0,0 }, // c
{ 1,1,15,17,17,17,15,0,0 }, // d
{ 0,0,14,17,31,16,14,0,0 }, // e
{ 2,4,4,14,4,4,4,0,0 }, // f
{ 0,0,15,17,17,17,15,1,14 }, // g
{ 16,16,30,17,17,17,17,0,0 }, // h
{ 4,0,12,4,4,4,14,0,0 }, // i
{ 4,0,4,4,4,4,4,4,8 }, // j
{ 8,8,9,10,12,10,9,0,0 }, // k
{ 12,4,4,4,4,4,14,0,0 }, // l
{ 0,0,26,21,21,21,21,0,0 }, // m
{ 0,0,30,17,17,17,17,0,0 }, // n
{ 0,0,14,17,17,17,14,0,0 }, // o
{ 0,0,30,17,17,17,30,16,16 }, // p
{ 0,0,15,17,17,17,15,1,1 }, // q
{ 0,0,11,12,8,8,8,0,0 }, // r
{ 0,0,15,16,14,1,30,0,0 }, // s
{ 4,4,14,4,4,4,2,0,0 }, // t
{ 0,0,17,17,17,17,15,0,0 }, // u
{ 0,0,17,17,10,10,4,0,0 }, // v
{ 0,0,17,17,21,21,10,0,0 }, // w
{ 0,0,17,10,4,10,17,0,0 }, // x
{ 0,0,17,17,17,17,15,1,14 }, // y
{ 0,0,31,2,4,8,31,0,0 }, // z
{ 8,8,8,8,9,3,5,7,1 }, // 1/4 { in ASCII
{ 10,10,10,10,10,10,10,0,0 }, // || | in ASCII
{ 24,4,24,4,25,3,5,7,1 }, // 3/4 } in ASCII
{ 0,4,0,31,0,4,0,0,0 }, // divide sign ~ in ASCII
{ 31,31,31,31,31,31,31,0,0 } // character-sized block
// not defined in ASCII
};