-
Notifications
You must be signed in to change notification settings - Fork 4
/
Copy pathtrack.h
311 lines (307 loc) · 10.1 KB
/
track.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
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
#pragma once
#include <Arduino.h>
#define TRACK_COUNT 144
#define TRACK_NONE 0xFF
struct Track
{
// defined "backwards" because AVR is little-endian
uint8_t cathodeNextLoc2; // neighbor2 on cathode side
uint8_t anodeNextLoc2; // neighbor2 on anode side
uint8_t cathodeNextLoc; // neighbor on cathode side
uint8_t anodeNextLoc; // neighbor on anode side
};
#ifndef LED_BACKPACK_MATRIX
const uint32_t TrackData[TRACK_COUNT] = {
0x6111FFFF, // track 0/0x00
0x20202020, // track 1/0x01 PLATFORM
0x3003FFFF, // track 2/0x02
0x7002FFFF, // track 3/0x03
0x5082FFFF, // track 4/0x04
0x60606060, // track 5/0x05 PLATFORM
0x70707070, // track 6/0x06 PLATFORM
0x8042FFFF, // track 7/0x07
0x0D69FF1D, // track 8/0x08
0x682DFFFF, // track 9/0x09
0x4838FFFF, // track 10/0x0A
0x3B5CFFFF, // track 11/0x0B
0x1839FFFF, // track 12/0x0C
0x0868FFFF, // track 13/0x0D
0x4C4EFFFF, // track 14/0x0E
0x88888888, // track 15/0x0F PLATFORM
0x4920FFFF, // track 16/0x10
0x0021FFFF, // track 17/0x11
0x2933FFFF, // track 18/0x12
0x53535353, // track 19/0x13 PLATFORM
0x5154FFFF, // track 20/0x14
0x61616161, // track 21/0x15 PLATFORM
0x5351FFFF, // track 22/0x16
0x1E81FFFF, // track 23/0x17
0x4F0CFFFF, // track 24/0x18
0x594AFFFF, // track 25/0x19
0x39393939, // track 26/0x1A PLATFORM
0x6949FFFF, // track 27/0x1B
0x59595959, // track 28/0x1C PLATFORM
0x0848FFFF, // track 29/0x1D
0x171FFFFF, // track 30/0x1E
0x1E5FFFFF, // track 31/0x1F
0x6010FFFF, // track 32/0x20
0x3211FFFF, // track 33/0x21
0x6230FFFF, // track 34/0x22
0x73737373, // track 35/0x23 PLATFORM
0x5276FFFF, // track 36/0x24
0x6362FFFF, // track 37/0x25
0x5272FFFF, // track 38/0x26
0x8289428C, // track 39/0x27
0x09090909, // track 40/0x28 PLATFORM
0x2B12FFFF, // track 41/0x29
0x6A6BFF3D, // track 42/0x2A
0x294EFFFF, // track 43/0x2B
0x5A5A5A5A, // track 44/0x2C PLATFORM
0x096AFFFF, // track 45/0x2D
0x8D7AFFFF, // track 46/0x2E
0x8A7AFFFF, // track 47/0x2F
0x2202FFFF, // track 48/0x30
0x12121212, // track 49/0x31 PLATFORM
0x2162FFFF, // track 50/0x32
0x8312FFFF, // track 51/0x33
0x5350FFFF, // track 52/0x34
0x6336FFFF, // track 53/0x35
0x7335FFFF, // track 54/0x36
0x8447FFFF, // track 55/0x37
0x390AFFFF, // track 56/0x38
0x380CFFFF, // track 57/0x39
0x5B5B5B5B, // track 58/0x3A PLATFORM
0x0B4DFFFF, // track 59/0x3B
0x5D5D5D5D, // track 60/0x3C PLATFORM
0x2A6FFFFF, // track 61/0x3D
0x7B6FFFFF, // track 62/0x3E
0x8B8EFFFF, // track 63/0x3F
0x03030303, // track 64/0x40 PLATFORM
0x16161616, // track 65/0x41 PLATFORM
0x0727FFFF, // track 66/0x42
0x72727272, // track 67/0x43 PLATFORM
0x5455FFFF, // track 68/0x44
0x6764FFFF, // track 69/0x45
0x8774FFFF, // track 70/0x46
0x8537FF83, // track 71/0x47
0x1D0AFFFF, // track 72/0x48
0x1B10FFFF, // track 73/0x49
0x194EFFFF, // track 74/0x4A
0x3B3B3B3B, // track 75/0x4B PLATFORM
0x6E0EFFFF, // track 76/0x4C
0x3B88FFFF, // track 77/0x4D
0x2B0E4A78, // track 78/0x4E
0x188CFFFF, // track 79/0x4F
0x0434FFFF, // track 80/0x50
0x1614FFFF, // track 81/0x51
0x2426FFFF, // track 82/0x52
0x3416FFFF, // track 83/0x53
0x1444FFFF, // track 84/0x54
0x4466FFFF, // track 85/0x55
0x87878787, // track 86/0x56 PLATFORM
0x7785FFFF, // track 87/0x57
0x0C0C0C0C, // track 88/0x58 PLATFORM
0x7F19FFFF, // track 89/0x59
0x5B8AFFFF, // track 90/0x5A
0x5D5AFFFF, // track 91/0x5B
0x780BFFFF, // track 92/0x5C
0x5B6DFFFF, // track 93/0x5D
0x8D5FFFFF, // track 94/0x5E
0x5E1FFFFF, // track 95/0x5F
0x6120FFFF, // track 96/0x60
0x6000FFFF, // track 97/0x61
0x2532FF22, // track 98/0x62
0x2535FFFF, // track 99/0x63
0x4565FFFF, // track 100/0x64
0x6664FFFF, // track 101/0x65
0x657655FF, // track 102/0x66
0x4574FFFF, // track 103/0x67
0x0D09FFFF, // track 104/0x68
0x1B08FFFF, // track 105/0x69
0x2D2AFFFF, // track 106/0x6A
0x8E2AFFFF, // track 107/0x6B
0x4D4D4D4D, // track 108/0x6C PLATFORM
0x8B5DFFFF, // track 109/0x6D
0x8F4CFFFF, // track 110/0x6E
0x3E3DFFFF, // track 111/0x6F
0x0380FFFF, // track 112/0x70
0x51515151, // track 113/0x71 PLATFORM
0x7326FFFF, // track 114/0x72
0x7236FFFF, // track 115/0x73
0x4667FFFF, // track 116/0x74
0x46464646, // track 117/0x75 PLATFORM
0x6624FFFF, // track 118/0x76
0x8757FFFF, // track 119/0x77
0x4E5CFFFF, // track 120/0x78
0x1E1E1E1E, // track 121/0x79 PLATFORM
0x2E2FFFFF, // track 122/0x7A
0x883EFFFF, // track 123/0x7B
0x17171717, // track 124/0x7C PLATFORM
0x7F8DFFFF, // track 125/0x7D
0x6E6E6E6E, // track 126/0x7E PLATFORM
0x7D59FFFF, // track 127/0x7F
0x7007FFFF, // track 128/0x80
0x8417FFFF, // track 129/0x81
0x0427FFFF, // track 130/0x82
0x4733FFFF, // track 131/0x83
0x8137FFFF, // track 132/0x84
0x5747FFFF, // track 133/0x85
0x74747474, // track 134/0x86 PLATFORM
0x4677FFFF, // track 135/0x87
0x7B4DFFFF, // track 136/0x88
0x8F27FFFF, // track 137/0x89
0x2F5AFFFF, // track 138/0x8A
0x6D3FFFFF, // track 139/0x8B
0x4F27FFFF, // track 140/0x8C
0x2E5EFF7D, // track 141/0x8D
0x6B3FFFFF, // track 142/0x8E
0x896EFFFF, // track 143/0x8F
};
#else
const uint32_t TrackData[TRACK_COUNT] = {
0x0110FFFF, // track 0/0x00
0x0200FFFF, // track 1/0x01
0x0301FFFF, // track 2/0x02
0x0402FFFF, // track 3/0x03
0x0503FFFF, // track 4/0x04
0x0604FFFF, // track 5/0x05
0x0705FFFF, // track 6/0x06
0x0806FFFF, // track 7/0x07
0x0907FFFF, // track 8/0x08
0x0A08FFFF, // track 9/0x09
0x0B09FFFF, // track 10/0x0A
0x0C0AFFFF, // track 11/0x0B
0x0D0BFFFF, // track 12/0x0C
0x0E0CFFFF, // track 13/0x0D
0x0F0DFFFF, // track 14/0x0E
0x1F0EFFFF, // track 15/0x0F
0x0020FFFF, // track 16/0x10
0xFFFFFFFF, // track 17/0x11
0xFFFFFFFF, // track 18/0x12
0xFFFFFFFF, // track 19/0x13
0xFFFFFFFF, // track 20/0x14
0xFFFFFFFF, // track 21/0x15
0xFFFFFFFF, // track 22/0x16
0xFFFFFFFF, // track 23/0x17
0xFFFFFFFF, // track 24/0x18
0xFFFFFFFF, // track 25/0x19
0xFFFFFFFF, // track 26/0x1A
0xFFFFFFFF, // track 27/0x1B
0xFFFFFFFF, // track 28/0x1C
0xFFFFFFFF, // track 29/0x1D
0xFFFFFFFF, // track 30/0x1E
0x2F0FFFFF, // track 31/0x1F
0x1030FFFF, // track 32/0x20
0xFFFFFFFF, // track 33/0x21
0xFFFFFFFF, // track 34/0x22
0xFFFFFFFF, // track 35/0x23
0xFFFFFFFF, // track 36/0x24
0xFFFFFFFF, // track 37/0x25
0xFFFFFFFF, // track 38/0x26
0xFFFFFFFF, // track 39/0x27
0xFFFFFFFF, // track 40/0x28
0xFFFFFFFF, // track 41/0x29
0xFFFFFFFF, // track 42/0x2A
0xFFFFFFFF, // track 43/0x2B
0xFFFFFFFF, // track 44/0x2C
0xFFFFFFFF, // track 45/0x2D
0xFFFFFFFF, // track 46/0x2E
0x3F1FFFFF, // track 47/0x2F
0x2040FFFF, // track 48/0x30
0xFFFFFFFF, // track 49/0x31
0xFFFFFFFF, // track 50/0x32
0xFFFFFFFF, // track 51/0x33
0xFFFFFFFF, // track 52/0x34
0xFFFFFFFF, // track 53/0x35
0xFFFFFFFF, // track 54/0x36
0xFFFFFFFF, // track 55/0x37
0xFFFFFFFF, // track 56/0x38
0xFFFFFFFF, // track 57/0x39
0xFFFFFFFF, // track 58/0x30
0xFFFFFFFF, // track 59/0x31
0xFFFFFFFF, // track 60/0x32
0xFFFFFFFF, // track 61/0x33
0xFFFFFFFF, // track 62/0x34
0x4F2FFFFF, // track 63/0x3F
0x3050FFFF, // track 64/0x40
0xFFFFFFFF, // track 65/0x41
0xFFFFFFFF, // track 66/0x42
0xFFFFFFFF, // track 67/0x43
0xFFFFFFFF, // track 68/0x44
0xFFFFFFFF, // track 69/0x45
0xFFFFFFFF, // track 70/0x46
0xFFFFFFFF, // track 71/0x47
0xFFFFFFFF, // track 72/0x48
0xFFFFFFFF, // track 73/0x49
0xFFFFFFFF, // track 74/0x4A
0xFFFFFFFF, // track 75/0x4B
0xFFFFFFFF, // track 76/0x4C
0xFFFFFFFF, // track 77/0x4D
0xFFFFFFFF, // track 78/0x4E
0x5F3FFFFF, // track 79/0x4F
0x4060FFFF, // track 80/0x50
0xFFFFFFFF, // track 81/0x51
0xFFFFFFFF, // track 82/0x52
0xFFFFFFFF, // track 83/0x53
0xFFFFFFFF, // track 84/0x54
0xFFFFFFFF, // track 85/0x55
0xFFFFFFFF, // track 86/0x56
0xFFFFFFFF, // track 87/0x57
0xFFFFFFFF, // track 88/0x58
0xFFFFFFFF, // track 89/0x59
0xFFFFFFFF, // track 90/0x5A
0xFFFFFFFF, // track 91/0x5B
0xFFFFFFFF, // track 92/0x5C
0xFFFFFFFF, // track 93/0x5D
0xFFFFFFFF, // track 94/0x5E
0x6F4FFFFF, // track 95/0x5F
0x5070FFFF, // track 96/0x60
0xFFFFFFFF, // track 97/0x61
0xFFFFFFFF, // track 98/0x62
0xFFFFFFFF, // track 99/0x63
0xFFFFFFFF, // track 100/0x64
0xFFFFFFFF, // track 101/0x65
0xFFFFFFFF, // track 102/0x66
0xFFFFFFFF, // track 103/0x67
0xFFFFFFFF, // track 104/0x68
0xFFFFFFFF, // track 105/0x69
0xFFFFFFFF, // track 106/0x6A
0xFFFFFFFF, // track 107/0x6B
0xFFFFFFFF, // track 108/0x6C
0xFFFFFFFF, // track 109/0x6D
0xFFFFFFFF, // track 110/0x6E
0x7F5FFFFF, // track 111/0x6F
0x6080FFFF, // track 112/0x70
0xFFFFFFFF, // track 113/0x71
0xFFFFFFFF, // track 114/0x72
0xFFFFFFFF, // track 115/0x73
0xFFFFFFFF, // track 116/0x74
0xFFFFFFFF, // track 117/0x75
0xFFFFFFFF, // track 118/0x76
0xFFFFFFFF, // track 119/0x77
0xFFFFFFFF, // track 120/0x78
0xFFFFFFFF, // track 121/0x79
0xFFFFFFFF, // track 122/0x7A
0xFFFFFFFF, // track 123/0x7B
0xFFFFFFFF, // track 124/0x7C
0xFFFFFFFF, // track 125/0x7D
0xFFFFFFFF, // track 126/0x7E
0x8F6FFFFF, // track 127/0x7F
0x7081FFFF, // track 128/0x80
0x8082FFFF, // track 129/0x81
0x8183FFFF, // track 130/0x82
0x8284FFFF, // track 131/0x83
0x8385FFFF, // track 132/0x84
0x8486FFFF, // track 133/0x85
0x8587FFFF, // track 134/0x86
0x8688FFFF, // track 135/0x87
0x8789FFFF, // track 136/0x88
0x888AFFFF, // track 137/0x89
0x898BFFFF, // track 138/0x8A
0x8A8CFFFF, // track 139/0x8B
0x8B8DFFFF, // track 140/0x8C
0x8C8EFFFF, // track 141/0x8D
0x8D8FFFFF, // track 142/0x8E
0x8E7FFFFF, // track 143/0x8F
};
#endif