forked from nhfruchter/python-ldp8008
-
Notifications
You must be signed in to change notification settings - Fork 0
/
fontv.py
121 lines (120 loc) · 5.99 KB
/
fontv.py
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
#
# Font derived from LED Matrix Studio file: fontv.h
#
# The first element in each array variable is the width of the character
# The remaining 8 elements are the decimal value for each row of
# the character to display
#
# EG for the 'A' character
#
# | *** | = 011100(28)
# |* * | = 100010(34)
# |* * | = 100010(34)
# |* * | = 100010(34)
# |***** | = 111110(62)
# |* * | = 100010(34)
# |* * | = 100010(34)
# | | = 000000(0)
# the ascii value of the character is used for the array index value
# eg 65 for 'A'
#
# initialise 9 x 128 array with 0
array=[[0 for i in xrange(9)] for i in xrange(128)]
#
# define ascii characters 32 to 126
#
array[32] = [5, 0, 0, 0, 0, 0, 0, 0, 0] # ASCII 32
array[33] = [2, 2, 2, 2, 2, 0, 0, 2, 0] # ! ASCII 33
array[34] = [4, 10, 10, 10, 0, 0, 0, 0, 0] # " ASCII 34
array[35] = [6, 20, 20, 62, 20, 62, 20, 20, 0] # # ASCII 35
array[36] = [6, 8, 30, 40, 28, 10, 60, 8, 0] # $ ASCII 36
array[37] = [6, 48, 50, 4, 8, 16, 38, 6, 0] # % ASCII 37
array[38] = [6, 24, 36, 40, 16, 42, 36, 26, 0] # & ASCII 38
array[39] = [3, 6, 2, 4, 0, 0, 0, 0, 0] # ' ASCII 39
array[40] = [4, 2, 4, 8, 8, 8, 4, 2, 0] # ( ASCII 40
array[41] = [4, 8, 4, 2, 2, 2, 4, 8, 0] # ) ASCII 41
array[42] = [6, 0, 8, 42, 28, 42, 8, 0, 0] # * ASCII 42
array[43] = [6, 0, 8, 8, 62, 8, 8, 0, 0] # + ASCII 43
array[44] = [3, 0, 0, 0, 0, 0, 6, 2, 4] # , ASCII 44
array[45] = [6, 0, 0, 0, 62, 0, 0, 0, 0] # - ASCII 45
array[46] = [3, 0, 0, 0, 0, 0, 6, 6, 0] # . ASCII 46
array[47] = [6, 0, 2, 4, 8, 16, 32, 0, 0] # / ASCII 47
array[48] = [6, 28, 34, 38, 42, 50, 34, 28, 0] # 0 ASCII 48
array[49] = [4, 4, 12, 4, 4, 4, 4, 14, 0] # 1 ASCII 49
array[50] = [6, 28, 34, 2, 4, 8, 16, 62, 0] # 2 ASCII 50
array[51] = [6, 62, 4, 8, 4, 2, 34, 28, 0] # 3 ASCII 51
array[52] = [6, 4, 12, 20, 36, 62, 4, 4, 0] # 4 ASCII 52
array[53] = [6, 62, 32, 60, 2, 2, 34, 28, 0] # 5 ASCII 53
array[54] = [6, 12, 16, 32, 60, 34, 34, 28, 0] # 6 ASCII 54
array[55] = [6, 62, 2, 4, 8, 16, 16, 16, 0] # 7 ASCII 55
array[56] = [6, 28, 34, 34, 28, 34, 34, 28, 0] # 8 ASCII 56
array[57] = [6, 28, 34, 34, 30, 2, 4, 24, 0] # 9 ASCII 57
array[58] = [3, 0, 6, 6, 0, 6, 6, 0, 0] # : ASCII 58
array[59] = [3, 0, 6, 6, 0, 6, 2, 4, 0] # ; ASCII 59
array[60] = [5, 2, 4, 8, 16, 8, 4, 2, 0] # < ASCII 60
array[61] = [6, 0, 0, 62, 0, 62, 0, 0, 0] # = ASCII 61
array[62] = [5, 16, 8, 4, 2, 4, 8, 16, 0] # > ASCII 62
array[63] = [6, 28, 34, 2, 4, 8, 0, 8, 0] # ? ASCII 63
array[64] = [6, 28, 34, 2, 26, 42, 42, 28, 0] # @ ASCII 64
array[65] = [6, 28, 34, 34, 34, 62, 34, 34, 0] # A ASCII 65
array[66] = [6, 60, 34, 34, 60, 34, 34, 60, 0] # B ASCII 66
array[67] = [6, 28, 34, 32, 32, 32, 34, 28, 0] # C ASCII 67
array[68] = [6, 56, 36, 34, 34, 34, 36, 56, 0] # D ASCII 68
array[69] = [6, 62, 32, 32, 60, 32, 32, 62, 0] # E ASCII 69
array[70] = [6, 62, 32, 32, 60, 32, 32, 32, 0] # F ASCII 70
array[71] = [6, 28, 34, 32, 46, 34, 34, 30, 0] # G ASCII 71
array[72] = [6, 34, 34, 34, 62, 34, 34, 34, 0] # H ASCII 72
array[73] = [4, 14, 4, 4, 4, 4, 4, 14, 0] # I ASCII 73
array[74] = [6, 14, 4, 4, 4, 4, 36, 24, 0] # J ASCII 74
array[75] = [6, 34, 36, 40, 48, 40, 36, 34, 0] # K ASCII 75
array[76] = [6, 32, 32, 32, 32, 32, 32, 62, 0] # L ASCII 76
array[77] = [6, 34, 54, 42, 42, 34, 34, 34, 0] # M ASCII 77
array[78] = [6, 34, 34, 50, 42, 38, 34, 34, 0] # N ASCII 78
array[79] = [6, 28, 34, 34, 34, 34, 34, 28, 0] # O ASCII 79
array[80] = [6, 60, 34, 34, 60, 32, 32, 32, 0] # P ASCII 80
array[81] = [6, 28, 34, 34, 34, 42, 36, 26, 0] # Q ASCII 81
array[82] = [6, 60, 34, 34, 60, 40, 36, 34, 0] # R ASCII 82
array[83] = [6, 30, 32, 32, 28, 2, 2, 60, 0] # S ASCII 83
array[84] = [6, 62, 8, 8, 8, 8, 8, 8, 0] # T ASCII 84
array[85] = [6, 34, 34, 34, 34, 34, 34, 28, 0] # U ASCII 85
array[86] = [6, 34, 34, 34, 34, 34, 20, 8, 0] # V ASCII 86
array[87] = [6, 34, 34, 34, 42, 42, 42, 20, 0] # W ASCII 87
array[88] = [6, 34, 34, 20, 8, 20, 34, 34, 0] # X ASCII 88
array[89] = [6, 34, 34, 34, 20, 8, 8, 8, 0] # Y ASCII 89
array[90] = [6, 62, 2, 4, 8, 16, 32, 62, 0] # Z ASCII 90
array[91] = [4, 14, 8, 8, 8, 8, 8, 14, 0] # [ ASCII 91
array[92] = [6, 0, 32, 16, 8, 4, 2, 0, 0] # \ ASCII 92
array[93] = [4, 14, 2, 2, 2, 2, 2, 14, 0] # ] ASCII 93
array[94] = [6, 8, 20, 34, 0, 0, 0, 0, 0] # ^ ASCII 94
array[95] = [6, 0, 0, 0, 0, 0, 0, 62, 0] # _ ASCII 95
array[96] = [4, 8, 4, 2, 0, 0, 0, 0, 0] # ` ASCII 96
array[97] = [6, 0, 0, 28, 2, 30, 34, 30, 0] # a ASCII 97
array[98] = [6, 32, 32, 44, 50, 34, 34, 60, 0] # b ASCII 98
array[99] = [6, 0, 0, 28, 32, 32, 34, 28, 0] # c ASCII 99
array[100] = [6, 2, 2, 26, 38, 34, 34, 30, 0] # d ASCII 100
array[101] = [6, 0, 0, 28, 34, 62, 32, 28, 0] # e ASCII 101
array[102] = [6, 12, 18, 16, 56, 16, 16, 16, 0] # f ASCII 102
array[103] = [6, 0, 0, 30, 34, 34, 30, 2, 28] # g ASCII 103
array[104] = [6, 32, 32, 44, 50, 34, 34, 34, 0] # h ASCII 104
array[105] = [2, 2, 0, 2, 2, 2, 2, 2, 0] # i ASCII 105
array[106] = [5, 2, 0, 6, 2, 2, 2, 18, 12] # j ASCII 106
array[107] = [5, 16, 16, 18, 20, 24, 20, 18, 0] # k ASCII 107
array[108] = [4, 12, 4, 4, 4, 4, 4, 14, 0] # l ASCII 108
array[109] = [6, 0, 0, 52, 42, 42, 34, 34, 0] # m ASCII 109
array[110] = [6, 0, 0, 44, 50, 34, 34, 34, 0] # n ASCII 110
array[111] = [6, 0, 0, 28, 34, 34, 34, 28, 0] # o ASCII 111
array[112] = [6, 0, 0, 60, 34, 34, 60, 32, 32] # p ASCII 112
array[113] = [6, 0, 0, 26, 38, 34, 30, 2, 6] # q ASCII 113
array[114] = [6, 0, 0, 44, 50, 32, 32, 32, 0] # r ASCII 114
array[115] = [6, 0, 0, 30, 32, 28, 2, 60, 0] # s ASCII 115
array[116] = [6, 16, 16, 56, 16, 16, 18, 12, 0] # t ASCII 116
array[117] = [6, 0, 0, 34, 34, 34, 38, 26, 0] # u ASCII 117
array[118] = [6, 0, 0, 34, 34, 34, 20, 8, 0] # v ASCII 118
array[119] = [6, 0, 0, 34, 34, 42, 42, 20, 0] # w ASCII 119
array[120] = [6, 0, 0, 34, 20, 8, 20, 34, 0] # x ASCII 120
array[121] = [6, 0, 0, 34, 34, 34, 30, 2, 28] # y ASCII 121
array[122] = [6, 0, 0, 62, 4, 8, 16, 62, 0] # z ASCII 122
array[123] = [4, 2, 4, 4, 8, 4, 4, 2, 0] # { ASCII 123
array[124] = [2, 2, 2, 2, 2, 2, 2, 2, 0] # | ASCII 124
array[125] = [4, 8, 4, 4, 2, 4, 4, 8, 0] # } ASCII 125
array[126] = [6, 0, 16, 42, 42, 4, 0, 0, 0] # ~ ASCII 126