0,0 → 1,1168 |
1 .file "eeprom.c" |
2 __SREG__ = 0x3f |
3 __SP_H__ = 0x3e |
4 __SP_L__ = 0x3d |
5 __tmp_reg__ = 0 |
6 __zero_reg__ = 1 |
7 .global __do_copy_data |
8 .global __do_clear_bss |
9 .text |
10 .global RAM_Checksum |
12 RAM_Checksum: |
13 /* prologue: frame size=0 */ |
14 /* prologue end (size=0) */ |
15 0000 DC01 movw r26,r24 |
16 0002 4AEA ldi r20,lo8(-86) |
17 0004 20E0 ldi r18,lo8(0) |
18 0006 30E0 ldi r19,hi8(0) |
19 0008 00C0 rjmp .L2 |
20 .L3: |
21 000a FD01 movw r30,r26 |
22 000c E20F add r30,r18 |
23 000e F31F adc r31,r19 |
24 0010 8081 ld r24,Z |
25 0012 480F add r20,r24 |
26 0014 2F5F subi r18,lo8(-(1)) |
27 0016 3F4F sbci r19,hi8(-(1)) |
28 .L2: |
29 0018 2617 cp r18,r22 |
30 001a 3707 cpc r19,r23 |
31 001c 01F4 brne .L3 |
32 001e 842F mov r24,r20 |
33 0020 90E0 ldi r25,lo8(0) |
34 /* epilogue: frame size=0 */ |
35 0022 0895 ret |
36 /* epilogue end (size=1) */ |
37 /* function RAM_Checksum size 18 (17) */ |
39 .global EEProm_Checksum |
41 EEProm_Checksum: |
42 /* prologue: frame size=0 */ |
43 /* prologue end (size=0) */ |
44 0024 FC01 movw r30,r24 |
45 0026 4AEA ldi r20,lo8(-86) |
46 0028 20E0 ldi r18,lo8(0) |
47 002a 30E0 ldi r19,hi8(0) |
48 002c 00C0 rjmp .L7 |
49 .L8: |
50 002e DF01 movw r26,r30 |
51 0030 A20F add r26,r18 |
52 0032 B31F adc r27,r19 |
53 /* #APP */ |
54 0034 0E94 0000 call __eeprom_read_byte_1F2021 |
55 0038 802D mov r24,__tmp_reg__ |
56 /* #NOAPP */ |
57 003a 480F add r20,r24 |
58 003c 2F5F subi r18,lo8(-(1)) |
59 003e 3F4F sbci r19,hi8(-(1)) |
60 .L7: |
61 0040 2617 cp r18,r22 |
62 0042 3707 cpc r19,r23 |
63 0044 01F4 brne .L8 |
64 0046 842F mov r24,r20 |
65 0048 90E0 ldi r25,lo8(0) |
66 /* epilogue: frame size=0 */ |
67 004a 0895 ret |
68 /* epilogue end (size=1) */ |
69 /* function EEProm_Checksum size 21 (20) */ |
71 .global ParamSet_DefaultStickMapping |
73 ParamSet_DefaultStickMapping: |
74 /* prologue: frame size=0 */ |
75 /* prologue end (size=0) */ |
76 004c 81E0 ldi r24,lo8(1) |
77 004e 8093 0000 sts EE_Parameter+3,r24 |
78 0052 82E0 ldi r24,lo8(2) |
79 0054 8093 0000 sts EE_Parameter+2,r24 |
80 0058 83E0 ldi r24,lo8(3) |
81 005a 8093 0000 sts EE_Parameter+1,r24 |
82 005e 84E0 ldi r24,lo8(4) |
83 0060 8093 0000 sts EE_Parameter+4,r24 |
84 0064 85E0 ldi r24,lo8(5) |
85 0066 8093 0000 sts EE_Parameter+5,r24 |
86 006a 86E0 ldi r24,lo8(6) |
87 006c 8093 0000 sts EE_Parameter+6,r24 |
88 0070 87E0 ldi r24,lo8(7) |
89 0072 8093 0000 sts EE_Parameter+7,r24 |
90 0076 88E0 ldi r24,lo8(8) |
91 0078 8093 0000 sts EE_Parameter+8,r24 |
92 007c 89E0 ldi r24,lo8(9) |
93 007e 8093 0000 sts EE_Parameter+9,r24 |
94 0082 8AE0 ldi r24,lo8(10) |
95 0084 8093 0000 sts EE_Parameter+10,r24 |
96 0088 8BE0 ldi r24,lo8(11) |
97 008a 8093 0000 sts EE_Parameter+11,r24 |
98 008e 8CE0 ldi r24,lo8(12) |
99 0090 8093 0000 sts EE_Parameter+12,r24 |
100 /* epilogue: frame size=0 */ |
101 0094 0895 ret |
102 /* epilogue end (size=1) */ |
103 /* function ParamSet_DefaultStickMapping size 37 (36) */ |
105 .global CommonDefaults |
107 CommonDefaults: |
108 /* prologue: frame size=0 */ |
109 /* prologue end (size=0) */ |
110 0096 95E5 ldi r25,lo8(85) |
111 0098 9093 0000 sts EE_Parameter,r25 |
112 009c 8091 0000 lds r24,PlatinenVersion |
113 00a0 8431 cpi r24,lo8(20) |
114 00a2 00F0 brlo .L14 |
115 00a4 8AE0 ldi r24,lo8(10) |
116 00a6 8093 0000 sts EE_Parameter+32,r24 |
117 00aa 1092 0000 sts EE_Parameter+68,__zero_reg__ |
118 00ae 8BE1 ldi r24,lo8(27) |
119 00b0 8093 0000 sts EE_Parameter+28,r24 |
120 00b4 8EE4 ldi r24,lo8(78) |
121 00b6 8093 0000 sts EE_Parameter+65,r24 |
122 00ba 8093 0000 sts EE_Parameter+66,r24 |
123 00be 00C0 rjmp .L16 |
124 .L14: |
125 00c0 83E0 ldi r24,lo8(3) |
126 00c2 8093 0000 sts EE_Parameter+32,r24 |
127 00c6 80E2 ldi r24,lo8(32) |
128 00c8 8093 0000 sts EE_Parameter+68,r24 |
129 00cc 8EE1 ldi r24,lo8(30) |
130 00ce 8093 0000 sts EE_Parameter+28,r24 |
131 00d2 9093 0000 sts EE_Parameter+65,r25 |
132 00d6 9093 0000 sts EE_Parameter+66,r25 |
133 .L16: |
134 00da 8AE6 ldi r24,lo8(106) |
135 00dc 8093 0000 sts EE_Parameter+13,r24 |
136 00e0 83E0 ldi r24,lo8(3) |
137 00e2 8093 0000 sts EE_Parameter+102,r24 |
138 00e6 81E0 ldi r24,lo8(1) |
139 00e8 8093 0000 sts EE_Parameter+39,r24 |
140 00ec 1092 0000 sts EE_Parameter+99,__zero_reg__ |
141 00f0 1092 0000 sts EE_Parameter+96,__zero_reg__ |
142 00f4 68E0 ldi r22,lo8(8) |
143 00f6 6093 0000 sts EE_Parameter+26,r22 |
144 00fa 86EE ldi r24,lo8(-26) |
145 00fc 8093 0000 sts EE_Parameter+27,r24 |
146 0100 80E8 ldi r24,lo8(-128) |
147 0102 8093 0000 sts EE_Parameter+29,r24 |
148 0106 5EE1 ldi r21,lo8(30) |
149 0108 5093 0000 sts EE_Parameter+14,r21 |
150 010c 8FEF ldi r24,lo8(-1) |
151 010e 8093 0000 sts EE_Parameter+16,r24 |
152 0112 9FE0 ldi r25,lo8(15) |
153 0114 9093 0000 sts EE_Parameter+17,r25 |
154 0118 5093 0000 sts EE_Parameter+15,r21 |
155 011c 1092 0000 sts EE_Parameter+19,__zero_reg__ |
156 0120 6093 0000 sts EE_Parameter+20,r22 |
157 0124 80E4 ldi r24,lo8(64) |
158 0126 8093 0000 sts EE_Parameter+21,r24 |
159 012a 1092 0000 sts EE_Parameter+22,__zero_reg__ |
160 012e 9093 0000 sts EE_Parameter+18,r25 |
161 0132 1092 0000 sts EE_Parameter+41,__zero_reg__ |
162 0136 1092 0000 sts EE_Parameter+42,__zero_reg__ |
163 013a 1092 0000 sts EE_Parameter+43,__zero_reg__ |
164 013e 1092 0000 sts EE_Parameter+44,__zero_reg__ |
165 0142 1092 0000 sts EE_Parameter+70,__zero_reg__ |
166 0146 1092 0000 sts EE_Parameter+71,__zero_reg__ |
167 014a 1092 0000 sts EE_Parameter+72,__zero_reg__ |
168 014e 1092 0000 sts EE_Parameter+73,__zero_reg__ |
169 0152 38E7 ldi r19,lo8(120) |
170 0154 3093 0000 sts EE_Parameter+45,r19 |
171 0158 48E2 ldi r20,lo8(40) |
172 015a 4093 0000 sts EE_Parameter+46,r20 |
173 015e 72E0 ldi r23,lo8(2) |
174 0160 7093 0000 sts EE_Parameter+101,r23 |
175 0164 9093 0000 sts EE_Parameter+47,r25 |
176 0168 27EF ldi r18,lo8(-9) |
177 016a 2093 0000 sts EE_Parameter+48,r18 |
178 016e 85E0 ldi r24,lo8(5) |
179 0170 8093 0000 sts EE_Parameter+53,r24 |
180 0174 8DE7 ldi r24,lo8(125) |
181 0176 8093 0000 sts EE_Parameter+56,r24 |
182 017a 8093 0000 sts EE_Parameter+57,r24 |
183 017e 8093 0000 sts EE_Parameter+58,r24 |
184 0182 3093 0000 sts EE_Parameter+49,r19 |
185 0186 9AE5 ldi r25,lo8(90) |
186 0188 9093 0000 sts EE_Parameter+50,r25 |
187 018c 1092 0000 sts EE_Parameter+51,__zero_reg__ |
188 0190 2093 0000 sts EE_Parameter+52,r18 |
189 0194 4093 0000 sts EE_Parameter+54,r20 |
190 0198 1092 0000 sts EE_Parameter+55,__zero_reg__ |
191 019c 8FE5 ldi r24,lo8(95) |
192 019e 8093 0000 sts EE_Parameter+74,r24 |
193 01a2 83EF ldi r24,lo8(-13) |
194 01a4 8093 0000 sts EE_Parameter+76,r24 |
195 01a8 8AEA ldi r24,lo8(-86) |
196 01aa 8093 0000 sts EE_Parameter+78,r24 |
197 01ae 8093 0000 sts EE_Parameter+79,r24 |
198 01b2 84E1 ldi r24,lo8(20) |
199 01b4 8093 0000 sts EE_Parameter+75,r24 |
200 01b8 8093 0000 sts EE_Parameter+77,r24 |
201 01bc 82E3 ldi r24,lo8(50) |
202 01be 8093 0000 sts EE_Parameter+59,r24 |
203 01c2 9093 0000 sts EE_Parameter+60,r25 |
204 01c6 8093 0000 sts EE_Parameter+61,r24 |
205 01ca 1092 0000 sts EE_Parameter+100,__zero_reg__ |
206 01ce 8EEF ldi r24,lo8(-2) |
207 01d0 8093 0000 sts EE_Parameter+80,r24 |
208 01d4 24E6 ldi r18,lo8(100) |
209 01d6 2093 0000 sts EE_Parameter+81,r18 |
210 01da 9093 0000 sts EE_Parameter+82,r25 |
211 01de 9093 0000 sts EE_Parameter+83,r25 |
212 01e2 9093 0000 sts EE_Parameter+84,r25 |
213 01e6 8BE4 ldi r24,lo8(75) |
214 01e8 8093 0000 sts EE_Parameter+85,r24 |
215 01ec 8093 0000 sts EE_Parameter+86,r24 |
216 01f0 8093 0000 sts EE_Parameter+87,r24 |
217 01f4 1092 0000 sts EE_Parameter+88,__zero_reg__ |
218 01f8 86E0 ldi r24,lo8(6) |
219 01fa 8093 0000 sts EE_Parameter+89,r24 |
220 01fe 6093 0000 sts EE_Parameter+90,r22 |
221 0202 9093 0000 sts EE_Parameter+91,r25 |
222 0206 5093 0000 sts EE_Parameter+92,r21 |
223 020a 2093 0000 sts EE_Parameter+93,r18 |
224 020e 2093 0000 sts EE_Parameter+94,r18 |
225 0212 7093 0000 sts EE_Parameter+95,r23 |
226 0216 1092 0000 sts EE_Parameter+97,__zero_reg__ |
227 021a 1092 0000 sts EE_Parameter+98,__zero_reg__ |
228 021e 81E2 ldi r24,lo8(33) |
229 0220 8093 0000 sts EE_Parameter+36,r24 |
230 0224 8DE2 ldi r24,lo8(45) |
231 0226 8093 0000 sts EE_Parameter+37,r24 |
232 022a 9093 0000 sts EE_Parameter+38,r25 |
233 /* epilogue: frame size=0 */ |
234 022e 0895 ret |
235 /* epilogue end (size=1) */ |
236 /* function CommonDefaults size 205 (204) */ |
238 .global GetParamByte |
240 GetParamByte: |
241 /* prologue: frame size=0 */ |
242 /* prologue end (size=0) */ |
243 0230 DC01 movw r26,r24 |
244 /* #APP */ |
245 0232 0E94 0000 call __eeprom_read_byte_1F2021 |
246 0236 802D mov r24,__tmp_reg__ |
247 /* #NOAPP */ |
248 0238 90E0 ldi r25,lo8(0) |
249 /* epilogue: frame size=0 */ |
250 023a 0895 ret |
251 /* epilogue end (size=1) */ |
252 /* function GetParamByte size 7 (6) */ |
254 .global SetParamByte |
256 SetParamByte: |
257 /* prologue: frame size=0 */ |
258 /* prologue end (size=0) */ |
259 023c DC01 movw r26,r24 |
260 /* #APP */ |
261 023e 062E mov __tmp_reg__,r22 |
262 0240 0E94 0000 call __eeprom_write_byte_1F2021 |
263 /* #NOAPP */ |
264 /* epilogue: frame size=0 */ |
265 0244 0895 ret |
266 /* epilogue end (size=1) */ |
267 /* function SetParamByte size 6 (5) */ |
269 .global GetParamWord |
271 GetParamWord: |
272 /* prologue: frame size=0 */ |
273 /* prologue end (size=0) */ |
274 0246 DC01 movw r26,r24 |
275 /* #APP */ |
276 0248 0E94 0000 call __eeprom_read_word_1F2021 |
277 |
278 /* #NOAPP */ |
279 024c CF01 movw r24,r30 |
280 /* epilogue: frame size=0 */ |
281 024e 0895 ret |
282 /* epilogue end (size=1) */ |
283 /* function GetParamWord size 7 (6) */ |
285 .global SetParamWord |
287 SetParamWord: |
288 /* prologue: frame size=0 */ |
289 /* prologue end (size=0) */ |
290 0250 DC01 movw r26,r24 |
291 /* #APP */ |
292 0252 0B01 movw __tmp_reg__,r22 |
293 0254 0E94 0000 call __eeprom_write_word_1F2021 |
294 |
295 /* #NOAPP */ |
296 /* epilogue: frame size=0 */ |
297 0258 0895 ret |
298 /* epilogue end (size=1) */ |
299 /* function SetParamWord size 8 (7) */ |
301 .global GetActiveParamSet |
303 GetActiveParamSet: |
304 /* prologue: frame size=0 */ |
305 /* prologue end (size=0) */ |
306 025a 22E0 ldi r18,lo8(2) |
307 025c 30E0 ldi r19,hi8(2) |
308 025e D901 movw r26,r18 |
309 /* #APP */ |
310 0260 0E94 0000 call __eeprom_read_byte_1F2021 |
311 0264 802D mov r24,__tmp_reg__ |
312 /* #NOAPP */ |
313 0266 8630 cpi r24,lo8(6) |
314 0268 00F0 brlo .L27 |
315 026a 83E0 ldi r24,lo8(3) |
316 026c D901 movw r26,r18 |
317 /* #APP */ |
318 026e 082E mov __tmp_reg__,r24 |
319 0270 0E94 0000 call __eeprom_write_byte_1F2021 |
320 /* #NOAPP */ |
321 .L27: |
322 0274 90E0 ldi r25,lo8(0) |
323 /* epilogue: frame size=0 */ |
324 0276 0895 ret |
325 /* epilogue end (size=1) */ |
326 /* function GetActiveParamSet size 17 (16) */ |
328 .global SetActiveParamSet |
330 SetActiveParamSet: |
331 /* prologue: frame size=0 */ |
332 /* prologue end (size=0) */ |
333 0278 8630 cpi r24,lo8(6) |
334 027a 00F0 brlo .L31 |
335 027c 85E0 ldi r24,lo8(5) |
336 027e 00C0 rjmp .L33 |
337 .L31: |
338 0280 8823 tst r24 |
339 0282 01F4 brne .L33 |
340 0284 81E0 ldi r24,lo8(1) |
341 .L33: |
342 0286 A2E0 ldi r26,lo8(2) |
343 0288 B0E0 ldi r27,hi8(2) |
344 /* #APP */ |
345 028a 082E mov __tmp_reg__,r24 |
346 028c 0E94 0000 call __eeprom_write_byte_1F2021 |
347 /* #NOAPP */ |
348 /* epilogue: frame size=0 */ |
349 0290 0895 ret |
350 /* epilogue end (size=1) */ |
351 /* function SetActiveParamSet size 14 (13) */ |
353 .global MixerTable_WriteToEEProm |
355 MixerTable_WriteToEEProm: |
356 /* prologue: frame size=0 */ |
357 0292 CF93 push r28 |
358 0294 DF93 push r29 |
359 /* prologue end (size=2) */ |
360 0296 C0E0 ldi r28,lo8(Mixer) |
361 0298 D0E0 ldi r29,hi8(Mixer) |
362 029a 8091 0000 lds r24,Mixer |
363 029e 8130 cpi r24,lo8(1) |
364 02a0 01F0 breq .L37 |
365 02a2 80E0 ldi r24,lo8(0) |
366 02a4 90E0 ldi r25,hi8(0) |
367 02a6 00C0 rjmp .L39 |
368 .L37: |
369 02a8 6DE4 ldi r22,lo8(77) |
370 02aa 70E0 ldi r23,hi8(77) |
371 02ac CE01 movw r24,r28 |
372 02ae 0E94 0000 call RAM_Checksum |
373 02b2 8093 0000 sts Mixer+77,r24 |
374 02b6 8EE4 ldi r24,lo8(78) |
375 02b8 A8EE ldi r26,lo8(1000) |
376 02ba B3E0 ldi r27,hi8(1000) |
377 02bc FE01 movw r30,r28 |
378 /* #APP */ |
379 02be 182E mov __zero_reg__,r24 |
380 02c0 0E94 0000 call __eeprom_write_block_1F2021 |
381 /* #NOAPP */ |
382 02c4 81E0 ldi r24,lo8(1) |
383 02c6 90E0 ldi r25,hi8(1) |
384 .L39: |
385 /* epilogue: frame size=0 */ |
386 02c8 DF91 pop r29 |
387 02ca CF91 pop r28 |
388 02cc 0895 ret |
389 /* epilogue end (size=3) */ |
390 /* function MixerTable_WriteToEEProm size 31 (26) */ |
392 .global MixerTable_ReadFromEEProm |
394 MixerTable_ReadFromEEProm: |
395 /* prologue: frame size=0 */ |
396 /* prologue end (size=0) */ |
397 02ce 6DE4 ldi r22,lo8(77) |
398 02d0 70E0 ldi r23,hi8(77) |
399 02d2 88EE ldi r24,lo8(1000) |
400 02d4 93E0 ldi r25,hi8(1000) |
401 02d6 0E94 0000 call EEProm_Checksum |
402 02da A5E3 ldi r26,lo8(1077) |
403 02dc B4E0 ldi r27,hi8(1077) |
404 /* #APP */ |
405 02de 0E94 0000 call __eeprom_read_byte_1F2021 |
406 02e2 902D mov r25,__tmp_reg__ |
407 /* #NOAPP */ |
408 02e4 8917 cp r24,r25 |
409 02e6 01F4 brne .L42 |
410 02e8 28EE ldi r18,lo8(1000) |
411 02ea 33E0 ldi r19,hi8(1000) |
412 02ec D901 movw r26,r18 |
413 /* #APP */ |
414 02ee 0E94 0000 call __eeprom_read_byte_1F2021 |
415 02f2 802D mov r24,__tmp_reg__ |
416 /* #NOAPP */ |
417 02f4 8130 cpi r24,lo8(1) |
418 02f6 01F4 brne .L42 |
419 02f8 8EE4 ldi r24,lo8(78) |
420 02fa E0E0 ldi r30,lo8(Mixer) |
421 02fc F0E0 ldi r31,hi8(Mixer) |
422 02fe D901 movw r26,r18 |
423 /* #APP */ |
424 0300 182E mov __zero_reg__,r24 |
425 0302 0E94 0000 call __eeprom_read_block_1F2021 |
426 /* #NOAPP */ |
427 0306 81E0 ldi r24,lo8(1) |
428 0308 90E0 ldi r25,hi8(1) |
429 030a 0895 ret |
430 .L42: |
431 030c 80E0 ldi r24,lo8(0) |
432 030e 90E0 ldi r25,hi8(0) |
433 0310 0895 ret |
434 /* epilogue: frame size=0 */ |
435 /* epilogue: noreturn */ |
436 /* epilogue end (size=0) */ |
437 /* function MixerTable_ReadFromEEProm size 37 (37) */ |
439 .data |
440 .LC0: |
441 0000 5175 6164 .string "Quadro" |
441 726F 00 |
442 0007 00 .string "" |
443 .text |
444 .global MixerTable_Default |
446 MixerTable_Default: |
447 /* prologue: frame size=0 */ |
448 /* prologue end (size=0) */ |
449 0312 81E0 ldi r24,lo8(1) |
450 0314 8093 0000 sts Mixer,r24 |
451 0318 E0E0 ldi r30,lo8(Mixer+13) |
452 031a F0E0 ldi r31,hi8(Mixer+13) |
453 .L48: |
454 031c 1082 st Z,__zero_reg__ |
455 031e 1182 std Z+1,__zero_reg__ |
456 0320 1282 std Z+2,__zero_reg__ |
457 0322 1382 std Z+3,__zero_reg__ |
458 0324 3496 adiw r30,4 |
459 0326 80E0 ldi r24,hi8(Mixer+77) |
460 0328 E030 cpi r30,lo8(Mixer+77) |
461 032a F807 cpc r31,r24 |
462 032c 01F4 brne .L48 |
463 032e 80E4 ldi r24,lo8(64) |
464 0330 8093 0000 sts Mixer+13,r24 |
465 0334 8093 0000 sts Mixer+14,r24 |
466 0338 1092 0000 sts Mixer+15,__zero_reg__ |
467 033c 8093 0000 sts Mixer+16,r24 |
468 0340 8093 0000 sts Mixer+17,r24 |
469 0344 90EC ldi r25,lo8(-64) |
470 0346 9093 0000 sts Mixer+18,r25 |
471 034a 1092 0000 sts Mixer+19,__zero_reg__ |
472 034e 8093 0000 sts Mixer+20,r24 |
473 0352 8093 0000 sts Mixer+21,r24 |
474 0356 1092 0000 sts Mixer+22,__zero_reg__ |
475 035a 9093 0000 sts Mixer+23,r25 |
476 035e 9093 0000 sts Mixer+24,r25 |
477 0362 8093 0000 sts Mixer+25,r24 |
478 0366 1092 0000 sts Mixer+26,__zero_reg__ |
479 036a 8093 0000 sts Mixer+27,r24 |
480 036e 9093 0000 sts Mixer+28,r25 |
481 0372 A0E0 ldi r26,lo8(Mixer+1) |
482 0374 B0E0 ldi r27,hi8(Mixer+1) |
483 0376 E0E0 ldi r30,lo8(.LC0) |
484 0378 F0E0 ldi r31,hi8(.LC0) |
485 037a 87E0 ldi r24,lo8(7) |
486 .L50: |
487 037c 0190 ld r0,Z+ |
488 037e 0D92 st X+,r0 |
489 0380 8150 subi r24,lo8(-(-1)) |
490 0382 01F4 brne .L50 |
491 0384 6DE4 ldi r22,lo8(77) |
492 0386 70E0 ldi r23,hi8(77) |
493 0388 80E0 ldi r24,lo8(Mixer) |
494 038a 90E0 ldi r25,hi8(Mixer) |
495 038c 0E94 0000 call RAM_Checksum |
496 0390 8093 0000 sts Mixer+77,r24 |
497 /* epilogue: frame size=0 */ |
498 0394 0895 ret |
499 /* epilogue end (size=1) */ |
500 /* function MixerTable_Default size 67 (66) */ |
502 .data |
503 .LC1: |
504 0008 4265 6769 .string "Beginner" |
504 6E6E 6572 |
504 00 |
505 0011 00 .string "" |
506 .text |
507 .global ParamSet_DefaultSet3 |
509 ParamSet_DefaultSet3: |
510 /* prologue: frame size=0 */ |
511 /* prologue end (size=0) */ |
512 0396 0E94 0000 call CommonDefaults |
513 039a 88E0 ldi r24,lo8(8) |
514 039c 8093 0000 sts EE_Parameter+23,r24 |
515 03a0 30E1 ldi r19,lo8(16) |
516 03a2 3093 0000 sts EE_Parameter+24,r19 |
517 03a6 26E0 ldi r18,lo8(6) |
518 03a8 2093 0000 sts EE_Parameter+25,r18 |
519 03ac 94E6 ldi r25,lo8(100) |
520 03ae 9093 0000 sts EE_Parameter+30,r25 |
521 03b2 88E7 ldi r24,lo8(120) |
522 03b4 8093 0000 sts EE_Parameter+31,r24 |
523 03b8 9093 0000 sts EE_Parameter+33,r25 |
524 03bc 8093 0000 sts EE_Parameter+34,r24 |
525 03c0 2093 0000 sts EE_Parameter+35,r18 |
526 03c4 3093 0000 sts EE_Parameter+40,r19 |
527 03c8 8AE5 ldi r24,lo8(90) |
528 03ca 8093 0000 sts EE_Parameter+62,r24 |
529 03ce 80E5 ldi r24,lo8(80) |
530 03d0 8093 0000 sts EE_Parameter+63,r24 |
531 03d4 96E4 ldi r25,lo8(70) |
532 03d6 9093 0000 sts EE_Parameter+64,r25 |
533 03da 80E2 ldi r24,lo8(32) |
534 03dc 8093 0000 sts EE_Parameter+67,r24 |
535 03e0 9093 0000 sts EE_Parameter+69,r25 |
536 03e4 A0E0 ldi r26,lo8(EE_Parameter+103) |
537 03e6 B0E0 ldi r27,hi8(EE_Parameter+103) |
538 03e8 E0E0 ldi r30,lo8(.LC1) |
539 03ea F0E0 ldi r31,hi8(.LC1) |
540 03ec 8CE0 ldi r24,lo8(12) |
541 .L57: |
542 03ee 0190 ld r0,Z+ |
543 03f0 0D92 st X+,r0 |
544 03f2 8150 subi r24,lo8(-(-1)) |
545 03f4 01F4 brne .L57 |
546 03f6 63E7 ldi r22,lo8(115) |
547 03f8 70E0 ldi r23,hi8(115) |
548 03fa 80E0 ldi r24,lo8(EE_Parameter) |
549 03fc 90E0 ldi r25,hi8(EE_Parameter) |
550 03fe 0E94 0000 call RAM_Checksum |
551 0402 8093 0000 sts EE_Parameter+115,r24 |
552 /* epilogue: frame size=0 */ |
553 0406 0895 ret |
554 /* epilogue end (size=1) */ |
555 /* function ParamSet_DefaultSet3 size 58 (57) */ |
557 .data |
558 .LC2: |
559 0012 4E6F 726D .string "Normal" |
559 616C 00 |
560 0019 00 .string "" |
561 .text |
562 .global ParamSet_DefaultSet2 |
564 ParamSet_DefaultSet2: |
565 /* prologue: frame size=0 */ |
566 /* prologue end (size=0) */ |
567 0408 0E94 0000 call CommonDefaults |
568 040c 8AE0 ldi r24,lo8(10) |
569 040e 8093 0000 sts EE_Parameter+23,r24 |
570 0412 80E1 ldi r24,lo8(16) |
571 0414 8093 0000 sts EE_Parameter+24,r24 |
572 0418 26E0 ldi r18,lo8(6) |
573 041a 2093 0000 sts EE_Parameter+25,r18 |
574 041e 9AE5 ldi r25,lo8(90) |
575 0420 9093 0000 sts EE_Parameter+30,r25 |
576 0424 88E7 ldi r24,lo8(120) |
577 0426 8093 0000 sts EE_Parameter+31,r24 |
578 042a 9093 0000 sts EE_Parameter+33,r25 |
579 042e 8093 0000 sts EE_Parameter+34,r24 |
580 0432 2093 0000 sts EE_Parameter+35,r18 |
581 0436 20E2 ldi r18,lo8(32) |
582 0438 2093 0000 sts EE_Parameter+40,r18 |
583 043c 9093 0000 sts EE_Parameter+62,r25 |
584 0440 80E5 ldi r24,lo8(80) |
585 0442 8093 0000 sts EE_Parameter+63,r24 |
586 0446 8CE3 ldi r24,lo8(60) |
587 0448 8093 0000 sts EE_Parameter+64,r24 |
588 044c 2093 0000 sts EE_Parameter+67,r18 |
589 0450 8BE4 ldi r24,lo8(75) |
590 0452 8093 0000 sts EE_Parameter+69,r24 |
591 0456 A0E0 ldi r26,lo8(EE_Parameter+103) |
592 0458 B0E0 ldi r27,hi8(EE_Parameter+103) |
593 045a E0E0 ldi r30,lo8(.LC2) |
594 045c F0E0 ldi r31,hi8(.LC2) |
595 045e 8CE0 ldi r24,lo8(12) |
596 .L62: |
597 0460 0190 ld r0,Z+ |
598 0462 0D92 st X+,r0 |
599 0464 8150 subi r24,lo8(-(-1)) |
600 0466 01F4 brne .L62 |
601 0468 63E7 ldi r22,lo8(115) |
602 046a 70E0 ldi r23,hi8(115) |
603 046c 80E0 ldi r24,lo8(EE_Parameter) |
604 046e 90E0 ldi r25,hi8(EE_Parameter) |
605 0470 0E94 0000 call RAM_Checksum |
606 0474 8093 0000 sts EE_Parameter+115,r24 |
607 /* epilogue: frame size=0 */ |
608 0478 0895 ret |
609 /* epilogue end (size=1) */ |
610 /* function ParamSet_DefaultSet2 size 58 (57) */ |
612 .data |
613 .LC3: |
614 001a 5370 6F72 .string "Sport" |
614 7400 |
615 0020 00 .string "" |
616 .text |
617 .global ParamSet_DefaultSet1 |
619 ParamSet_DefaultSet1: |
620 /* prologue: frame size=0 */ |
621 /* prologue end (size=0) */ |
622 047a 0E94 0000 call CommonDefaults |
623 047e 8EE0 ldi r24,lo8(14) |
624 0480 8093 0000 sts EE_Parameter+23,r24 |
625 0484 20E1 ldi r18,lo8(16) |
626 0486 2093 0000 sts EE_Parameter+24,r18 |
627 048a 8CE0 ldi r24,lo8(12) |
628 048c 8093 0000 sts EE_Parameter+25,r24 |
629 0490 90E5 ldi r25,lo8(80) |
630 0492 9093 0000 sts EE_Parameter+30,r25 |
631 0496 86E9 ldi r24,lo8(-106) |
632 0498 8093 0000 sts EE_Parameter+31,r24 |
633 049c 9093 0000 sts EE_Parameter+33,r25 |
634 04a0 8093 0000 sts EE_Parameter+34,r24 |
635 04a4 86E0 ldi r24,lo8(6) |
636 04a6 8093 0000 sts EE_Parameter+35,r24 |
637 04aa 80E2 ldi r24,lo8(32) |
638 04ac 8093 0000 sts EE_Parameter+40,r24 |
639 04b0 8AE5 ldi r24,lo8(90) |
640 04b2 8093 0000 sts EE_Parameter+62,r24 |
641 04b6 9093 0000 sts EE_Parameter+63,r25 |
642 04ba 81E0 ldi r24,lo8(1) |
643 04bc 8093 0000 sts EE_Parameter+64,r24 |
644 04c0 2093 0000 sts EE_Parameter+67,r18 |
645 04c4 84E6 ldi r24,lo8(100) |
646 04c6 8093 0000 sts EE_Parameter+69,r24 |
647 04ca A0E0 ldi r26,lo8(EE_Parameter+103) |
648 04cc B0E0 ldi r27,hi8(EE_Parameter+103) |
649 04ce E0E0 ldi r30,lo8(.LC3) |
650 04d0 F0E0 ldi r31,hi8(.LC3) |
651 04d2 8CE0 ldi r24,lo8(12) |
652 .L67: |
653 04d4 0190 ld r0,Z+ |
654 04d6 0D92 st X+,r0 |
655 04d8 8150 subi r24,lo8(-(-1)) |
656 04da 01F4 brne .L67 |
657 04dc 63E7 ldi r22,lo8(115) |
658 04de 70E0 ldi r23,hi8(115) |
659 04e0 80E0 ldi r24,lo8(EE_Parameter) |
660 04e2 90E0 ldi r25,hi8(EE_Parameter) |
661 04e4 0E94 0000 call RAM_Checksum |
662 04e8 8093 0000 sts EE_Parameter+115,r24 |
663 /* epilogue: frame size=0 */ |
664 04ec 0895 ret |
665 /* epilogue end (size=1) */ |
666 /* function ParamSet_DefaultSet1 size 59 (58) */ |
668 .global ParamSet_WriteToEEProm |
670 ParamSet_WriteToEEProm: |
671 /* prologue: frame size=0 */ |
672 04ee FF92 push r15 |
673 04f0 0F93 push r16 |
674 04f2 1F93 push r17 |
675 /* prologue end (size=3) */ |
676 04f4 F82E mov r15,r24 |
677 04f6 8091 0000 lds r24,EE_Parameter |
678 04fa 8535 cpi r24,lo8(85) |
679 04fc 01F4 brne .L72 |
680 04fe 85E0 ldi r24,lo8(5) |
681 0500 8F15 cp r24,r15 |
682 0502 00F4 brsh .L74 |
683 0504 85E0 ldi r24,lo8(5) |
684 0506 F82E mov r15,r24 |
685 0508 00C0 rjmp .L76 |
686 .L74: |
687 050a FF20 tst r15 |
688 050c 01F0 breq .L72 |
689 .L76: |
690 050e 00E0 ldi r16,lo8(EE_Parameter) |
691 0510 10E0 ldi r17,hi8(EE_Parameter) |
692 0512 63E7 ldi r22,lo8(115) |
693 0514 70E0 ldi r23,hi8(115) |
694 0516 C801 movw r24,r16 |
695 0518 0E94 0000 call RAM_Checksum |
696 051c 8093 0000 sts EE_Parameter+115,r24 |
697 0520 84E7 ldi r24,lo8(116) |
698 0522 F89E mul r15,r24 |
699 0524 D001 movw r26,r0 |
700 0526 1124 clr r1 |
701 0528 5097 sbiw r26,16 |
702 052a F801 movw r30,r16 |
703 /* #APP */ |
704 052c 182E mov __zero_reg__,r24 |
705 052e 0E94 0000 call __eeprom_write_block_1F2021 |
706 /* #NOAPP */ |
707 0532 8CE0 ldi r24,lo8(12) |
708 0534 0F5F subi r16,lo8(-(1)) |
709 0536 1F4F sbci r17,hi8(-(1)) |
710 0538 A0E5 ldi r26,lo8(80) |
711 053a B0E0 ldi r27,hi8(80) |
712 053c F801 movw r30,r16 |
713 /* #APP */ |
714 053e 182E mov __zero_reg__,r24 |
715 0540 0E94 0000 call __eeprom_write_block_1F2021 |
716 /* #NOAPP */ |
717 0544 6CE0 ldi r22,lo8(12) |
718 0546 70E0 ldi r23,hi8(12) |
719 0548 C801 movw r24,r16 |
720 054a 0E94 0000 call RAM_Checksum |
721 054e ACE5 ldi r26,lo8(92) |
722 0550 B0E0 ldi r27,hi8(92) |
723 /* #APP */ |
724 0552 082E mov __tmp_reg__,r24 |
725 0554 0E94 0000 call __eeprom_write_byte_1F2021 |
726 /* #NOAPP */ |
727 0558 8F2D mov r24,r15 |
728 055a 0E94 0000 call SetActiveParamSet |
729 055e 0E94 0000 call LED_Init |
730 0562 81E0 ldi r24,lo8(1) |
731 0564 90E0 ldi r25,hi8(1) |
732 0566 00C0 rjmp .L77 |
733 .L72: |
734 0568 80E0 ldi r24,lo8(0) |
735 056a 90E0 ldi r25,hi8(0) |
736 .L77: |
737 /* epilogue: frame size=0 */ |
738 056c 1F91 pop r17 |
739 056e 0F91 pop r16 |
740 0570 FF90 pop r15 |
741 0572 0895 ret |
742 /* epilogue end (size=4) */ |
743 /* function ParamSet_WriteToEEProm size 70 (63) */ |
745 .global ParamSet_ReadFromEEProm |
747 ParamSet_ReadFromEEProm: |
748 /* prologue: frame size=0 */ |
749 0574 FF92 push r15 |
750 0576 0F93 push r16 |
751 0578 1F93 push r17 |
752 057a CF93 push r28 |
753 057c DF93 push r29 |
754 /* prologue end (size=5) */ |
755 057e 982F mov r25,r24 |
756 0580 8150 subi r24,lo8(-(-1)) |
757 0582 8530 cpi r24,lo8(5) |
758 0584 00F0 brlo .L80 |
759 0586 93E0 ldi r25,lo8(3) |
760 .L80: |
761 0588 24E7 ldi r18,lo8(116) |
762 058a F22E mov r15,r18 |
763 058c 9F9D mul r25,r15 |
764 058e 8001 movw r16,r0 |
765 0590 1124 clr r1 |
766 0592 E801 movw r28,r16 |
767 0594 6097 sbiw r28,16 |
768 0596 63E7 ldi r22,lo8(115) |
769 0598 70E0 ldi r23,hi8(115) |
770 059a CE01 movw r24,r28 |
771 059c 0E94 0000 call EEProm_Checksum |
772 05a0 0D59 subi r16,lo8(-(99)) |
773 05a2 1F4F sbci r17,hi8(-(99)) |
774 05a4 D801 movw r26,r16 |
775 /* #APP */ |
776 05a6 0E94 0000 call __eeprom_read_byte_1F2021 |
777 05aa 902D mov r25,__tmp_reg__ |
778 /* #NOAPP */ |
779 05ac 8917 cp r24,r25 |
780 05ae 01F4 brne .L82 |
781 05b0 DE01 movw r26,r28 |
782 /* #APP */ |
783 05b2 0E94 0000 call __eeprom_read_byte_1F2021 |
784 05b6 802D mov r24,__tmp_reg__ |
785 /* #NOAPP */ |
786 05b8 8535 cpi r24,lo8(85) |
787 05ba 01F4 brne .L82 |
788 05bc E0E0 ldi r30,lo8(EE_Parameter) |
789 05be F0E0 ldi r31,hi8(EE_Parameter) |
790 05c0 DE01 movw r26,r28 |
791 /* #APP */ |
792 05c2 1F2C mov __zero_reg__,r15 |
793 05c4 0E94 0000 call __eeprom_read_block_1F2021 |
794 /* #NOAPP */ |
795 05c8 0E94 0000 call LED_Init |
796 05cc 81E0 ldi r24,lo8(1) |
797 05ce 90E0 ldi r25,hi8(1) |
798 05d0 00C0 rjmp .L85 |
799 .L82: |
800 05d2 80E0 ldi r24,lo8(0) |
801 05d4 90E0 ldi r25,hi8(0) |
802 .L85: |
803 /* epilogue: frame size=0 */ |
804 05d6 E5E0 ldi r30,5 |
805 05d8 CDB7 in r28,__SP_L__ |
806 05da DEB7 in r29,__SP_H__ |
807 05dc 0C94 0000 jmp __epilogue_restores__+26 |
808 /* epilogue end (size=5) */ |
809 /* function ParamSet_ReadFromEEProm size 57 (47) */ |
811 .global SetDefaultParameter |
813 SetDefaultParameter: |
814 /* prologue: frame size=0 */ |
815 05e0 0F93 push r16 |
816 05e2 1F93 push r17 |
817 /* prologue end (size=2) */ |
818 05e4 182F mov r17,r24 |
819 05e6 062F mov r16,r22 |
820 05e8 8630 cpi r24,lo8(6) |
821 05ea 00F4 brsh .L88 |
822 05ec 8823 tst r24 |
823 05ee 01F4 brne .L90 |
824 05f0 11E0 ldi r17,lo8(1) |
825 05f2 00C0 rjmp .L92 |
826 .L90: |
827 05f4 8230 cpi r24,lo8(2) |
828 05f6 01F0 breq .L94 |
829 05f8 8330 cpi r24,lo8(3) |
830 05fa 01F0 breq .L93 |
831 05fc 8130 cpi r24,lo8(1) |
832 05fe 01F4 brne .L93 |
833 .L92: |
834 0600 0E94 0000 call ParamSet_DefaultSet1 |
835 0604 00C0 rjmp .L96 |
836 .L94: |
837 0606 0E94 0000 call ParamSet_DefaultSet2 |
838 060a 00C0 rjmp .L96 |
839 .L88: |
840 060c 15E0 ldi r17,lo8(5) |
841 .L93: |
842 060e 0E94 0000 call ParamSet_DefaultSet3 |
843 .L96: |
844 0612 0023 tst r16 |
845 0614 01F0 breq .L97 |
846 0616 6CE0 ldi r22,lo8(12) |
847 0618 70E0 ldi r23,hi8(12) |
848 061a 80E5 ldi r24,lo8(80) |
849 061c 90E0 ldi r25,hi8(80) |
850 061e 0E94 0000 call EEProm_Checksum |
851 0622 ACE5 ldi r26,lo8(92) |
852 0624 B0E0 ldi r27,hi8(92) |
853 /* #APP */ |
854 0626 0E94 0000 call __eeprom_read_byte_1F2021 |
855 062a 902D mov r25,__tmp_reg__ |
856 /* #NOAPP */ |
857 062c 8917 cp r24,r25 |
858 062e 01F4 brne .L97 |
859 0630 8CE0 ldi r24,lo8(12) |
860 0632 E0E0 ldi r30,lo8(EE_Parameter+1) |
861 0634 F0E0 ldi r31,hi8(EE_Parameter+1) |
862 0636 A0E5 ldi r26,lo8(80) |
863 0638 B0E0 ldi r27,hi8(80) |
864 /* #APP */ |
865 063a 182E mov __zero_reg__,r24 |
866 063c 0E94 0000 call __eeprom_read_block_1F2021 |
867 /* #NOAPP */ |
868 0640 00C0 rjmp .L101 |
869 .L97: |
870 0642 0E94 0000 call ParamSet_DefaultStickMapping |
871 .L101: |
872 0646 812F mov r24,r17 |
873 0648 0E94 0000 call ParamSet_WriteToEEProm |
874 /* epilogue: frame size=0 */ |
875 064c 1F91 pop r17 |
876 064e 0F91 pop r16 |
877 0650 0895 ret |
878 /* epilogue end (size=3) */ |
879 /* function SetDefaultParameter size 59 (54) */ |
881 .global ParamSet_Init |
883 ParamSet_Init: |
884 /* prologue: frame size=0 */ |
885 0652 A0E0 ldi r26,lo8(0) |
886 0654 B0E0 ldi r27,hi8(0) |
887 0656 E0E0 ldi r30,pm_lo8(1f) |
888 0658 F0E0 ldi r31,pm_hi8(1f) |
889 065a 0C94 0000 jmp __prologue_saves__+10 |
890 1: |
891 /* prologue end (size=6) */ |
892 065e 21E0 ldi r18,lo8(1) |
893 0660 30E0 ldi r19,hi8(1) |
894 0662 D901 movw r26,r18 |
895 /* #APP */ |
896 0664 0E94 0000 call __eeprom_read_byte_1F2021 |
897 0668 802D mov r24,__tmp_reg__ |
898 /* #NOAPP */ |
899 066a 8535 cpi r24,lo8(85) |
900 066c 01F4 brne .L104 |
901 066e DD24 clr r13 |
902 0670 00C0 rjmp .L106 |
903 .L104: |
904 0672 85E5 ldi r24,lo8(85) |
905 0674 D901 movw r26,r18 |
906 /* #APP */ |
907 0676 082E mov __tmp_reg__,r24 |
908 0678 0E94 0000 call __eeprom_write_byte_1F2021 |
909 /* #NOAPP */ |
910 067c DD24 clr r13 |
911 067e D394 inc r13 |
912 .L106: |
913 0680 6CE0 ldi r22,lo8(12) |
914 0682 70E0 ldi r23,hi8(12) |
915 0684 80E5 ldi r24,lo8(80) |
916 0686 90E0 ldi r25,hi8(80) |
917 0688 0E94 0000 call EEProm_Checksum |
918 068c 782E mov r7,r24 |
919 068e ACE5 ldi r26,lo8(92) |
920 0690 B0E0 ldi r27,hi8(92) |
921 /* #APP */ |
922 0692 0E94 0000 call __eeprom_read_byte_1F2021 |
923 0696 C02C mov r12,__tmp_reg__ |
924 /* #NOAPP */ |
925 0698 10E0 ldi r17,lo8(0) |
926 069a C1E0 ldi r28,lo8(1) |
927 069c D0E0 ldi r29,hi8(1) |
928 069e 50E0 ldi r21,lo8(__c.2643) |
929 06a0 852E mov r8,r21 |
930 06a2 50E0 ldi r21,hi8(__c.2643) |
931 06a4 952E mov r9,r21 |
932 06a6 40E0 ldi r20,lo8(gs(uart_putchar)) |
933 06a8 A42E mov r10,r20 |
934 06aa 40E0 ldi r20,hi8(gs(uart_putchar)) |
935 06ac B42E mov r11,r20 |
936 06ae 30E0 ldi r19,lo8(EE_Parameter+1) |
937 06b0 E32E mov r14,r19 |
938 06b2 30E0 ldi r19,hi8(EE_Parameter+1) |
939 06b4 F32E mov r15,r19 |
940 .L107: |
941 06b6 0C2F mov r16,r28 |
942 06b8 DD20 tst r13 |
943 06ba 01F4 brne .L108 |
944 06bc 8C2F mov r24,r28 |
945 06be 0E94 0000 call ParamSet_ReadFromEEProm |
946 06c2 8823 tst r24 |
947 06c4 01F4 brne .L110 |
948 .L108: |
949 06c6 DF93 push r29 |
950 06c8 CF93 push r28 |
951 06ca 9F92 push r9 |
952 06cc 8F92 push r8 |
953 06ce BF92 push r11 |
954 06d0 AF92 push r10 |
955 06d2 E091 0000 lds r30,_printf_P |
956 06d6 F091 0000 lds r31,(_printf_P)+1 |
957 06da 0995 icall |
958 06dc 8DB7 in r24,__SP_L__ |
959 06de 9EB7 in r25,__SP_H__ |
960 06e0 0696 adiw r24,6 |
961 06e2 8DBF out __SP_L__,r24 |
962 06e4 0230 cpi r16,lo8(2) |
963 06e6 01F0 breq .L113 |
964 06e8 0330 cpi r16,lo8(3) |
965 06ea 01F0 breq .L111 |
966 06ec 0130 cpi r16,lo8(1) |
967 06ee 01F4 brne .L111 |
968 06f0 0E94 0000 call ParamSet_DefaultSet1 |
969 06f4 00C0 rjmp .L115 |
970 .L113: |
971 06f6 0E94 0000 call ParamSet_DefaultSet2 |
972 06fa 00C0 rjmp .L115 |
973 .L111: |
974 06fc 0E94 0000 call ParamSet_DefaultSet3 |
975 .L115: |
976 0700 7C14 cp r7,r12 |
977 0702 01F4 brne .L116 |
978 0704 8CE0 ldi r24,lo8(12) |
979 0706 A0E5 ldi r26,lo8(80) |
980 0708 B0E0 ldi r27,hi8(80) |
981 070a F701 movw r30,r14 |
982 /* #APP */ |
983 070c 182E mov __zero_reg__,r24 |
984 070e 0E94 0000 call __eeprom_read_block_1F2021 |
985 /* #NOAPP */ |
986 0712 00C0 rjmp .L118 |
987 .L116: |
988 0714 0E94 0000 call ParamSet_DefaultStickMapping |
989 .L118: |
990 0718 802F mov r24,r16 |
991 071a 0E94 0000 call ParamSet_WriteToEEProm |
992 071e 11E0 ldi r17,lo8(1) |
993 .L110: |
994 0720 2196 adiw r28,1 |
995 0722 C630 cpi r28,6 |
996 0724 D105 cpc r29,__zero_reg__ |
997 0726 01F4 brne .L107 |
998 0728 1123 tst r17 |
999 072a 01F0 breq .L120 |
1000 072c 83E0 ldi r24,lo8(3) |
1001 072e 0E94 0000 call SetActiveParamSet |
1002 .L120: |
1003 0732 22E0 ldi r18,lo8(2) |
1004 0734 30E0 ldi r19,hi8(2) |
1005 0736 D901 movw r26,r18 |
1006 /* #APP */ |
1007 0738 0E94 0000 call __eeprom_read_byte_1F2021 |
1008 073c 002D mov r16,__tmp_reg__ |
1009 /* #NOAPP */ |
1010 073e 0630 cpi r16,lo8(6) |
1011 0740 00F0 brlo .L122 |
1012 0742 83E0 ldi r24,lo8(3) |
1013 0744 D901 movw r26,r18 |
1014 /* #APP */ |
1015 0746 082E mov __tmp_reg__,r24 |
1016 0748 0E94 0000 call __eeprom_write_byte_1F2021 |
1017 /* #NOAPP */ |
1018 074c 03E0 ldi r16,lo8(3) |
1019 .L122: |
1020 074e 802F mov r24,r16 |
1021 0750 0E94 0000 call ParamSet_ReadFromEEProm |
1022 0754 802F mov r24,r16 |
1023 0756 90E0 ldi r25,lo8(0) |
1024 0758 9F93 push r25 |
1025 075a 8F93 push r24 |
1026 075c 80E0 ldi r24,lo8(__c.2653) |
1027 075e 90E0 ldi r25,hi8(__c.2653) |
1028 0760 9F93 push r25 |
1029 0762 8F93 push r24 |
1030 0764 C0E0 ldi r28,lo8(gs(uart_putchar)) |
1031 0766 D0E0 ldi r29,hi8(gs(uart_putchar)) |
1032 0768 DF93 push r29 |
1033 076a CF93 push r28 |
1034 076c E091 0000 lds r30,_printf_P |
1035 0770 F091 0000 lds r31,(_printf_P)+1 |
1036 0774 0995 icall |
1037 0776 8DB7 in r24,__SP_L__ |
1038 0778 9EB7 in r25,__SP_H__ |
1039 077a 0696 adiw r24,6 |
1040 077c 8DBF out __SP_L__,r24 |
1041 077e DD20 tst r13 |
1042 0780 01F4 brne .L124 |
1043 0782 0E94 0000 call MixerTable_ReadFromEEProm |
1044 0786 8823 tst r24 |
1045 0788 01F4 brne .L126 |
1046 .L124: |
1047 078a 80E0 ldi r24,lo8(__c.2655) |
1048 078c 90E0 ldi r25,hi8(__c.2655) |
1049 078e 9F93 push r25 |
1050 0790 8F93 push r24 |
1051 0792 DF93 push r29 |
1052 0794 CF93 push r28 |
1053 0796 E091 0000 lds r30,_printf_P |
1054 079a F091 0000 lds r31,(_printf_P)+1 |
1055 079e 0995 icall |
1056 07a0 0E94 0000 call MixerTable_Default |
1057 07a4 0E94 0000 call MixerTable_WriteToEEProm |
1058 07a8 0F90 pop __tmp_reg__ |
1059 07aa 0F90 pop __tmp_reg__ |
1060 07ac 0F90 pop __tmp_reg__ |
1061 07ae 0F90 pop __tmp_reg__ |
1062 .L126: |
1063 07b0 E0E0 ldi r30,lo8(Mixer+13) |
1064 07b2 F0E0 ldi r31,hi8(Mixer+13) |
1065 07b4 90E0 ldi r25,lo8(0) |
1066 .L127: |
1067 07b6 8081 ld r24,Z |
1068 07b8 1816 cp __zero_reg__,r24 |
1069 07ba 04F4 brge .L128 |
1070 07bc 9F5F subi r25,lo8(-(1)) |
1071 .L128: |
1072 07be 3496 adiw r30,4 |
1073 07c0 80E0 ldi r24,hi8(Mixer+77) |
1074 07c2 E030 cpi r30,lo8(Mixer+77) |
1075 07c4 F807 cpc r31,r24 |
1076 07c6 01F4 brne .L127 |
1077 07c8 9093 0000 sts RequiredMotors,r25 |
1078 07cc 892F mov r24,r25 |
1079 07ce 90E0 ldi r25,lo8(0) |
1080 07d0 9F93 push r25 |
1081 07d2 8F93 push r24 |
1082 07d4 80E0 ldi r24,lo8(Mixer+1) |
1083 07d6 90E0 ldi r25,hi8(Mixer+1) |
1084 07d8 9F93 push r25 |
1085 07da 8F93 push r24 |
1086 07dc 80E0 ldi r24,lo8(__c.2660) |
1087 07de 90E0 ldi r25,hi8(__c.2660) |
1088 07e0 9F93 push r25 |
1089 07e2 8F93 push r24 |
1090 07e4 00E0 ldi r16,lo8(gs(uart_putchar)) |
1091 07e6 10E0 ldi r17,hi8(gs(uart_putchar)) |
1092 07e8 1F93 push r17 |
1093 07ea 0F93 push r16 |
1094 07ec E091 0000 lds r30,_printf_P |
1095 07f0 F091 0000 lds r31,(_printf_P)+1 |
1096 07f4 0995 icall |
1097 07f6 80E0 ldi r24,lo8(__c.2662) |
1098 07f8 90E0 ldi r25,hi8(__c.2662) |
1099 07fa 9F93 push r25 |
1100 07fc 8F93 push r24 |
1101 07fe 1F93 push r17 |
1102 0800 0F93 push r16 |
1103 0802 E091 0000 lds r30,_printf_P |
1104 0806 F091 0000 lds r31,(_printf_P)+1 |
1105 080a 0995 icall |
1106 080c EDB7 in r30,__SP_L__ |
1107 080e FEB7 in r31,__SP_H__ |
1108 0810 3C96 adiw r30,12 |
1109 0812 EDBF out __SP_L__,r30 |
1110 /* epilogue: frame size=0 */ |
1111 0814 EDE0 ldi r30,13 |
1112 0816 CDB7 in r28,__SP_L__ |
1113 0818 DEB7 in r29,__SP_H__ |
1114 081a 0C94 0000 jmp __epilogue_restores__+10 |
1115 /* epilogue end (size=5) */ |
1116 /* function ParamSet_Init size 236 (225) */ |
1118 .section .progmem.data,"a",@progbits |
1121 __c.2662: |
1122 0000 0A0D 3D3D .string "\n\r==============================" |
1122 3D3D 3D3D |
1122 3D3D 3D3D |
1122 3D3D 3D3D |
1122 3D3D 3D3D |
1125 __c.2660: |
1126 0021 0A0D 4D69 .string "\n\rMixer-Config: '%s' (%u Motors)" |
1126 7865 722D |
1126 436F 6E66 |
1126 6967 3A20 |
1126 2725 7327 |
1129 __c.2655: |
1130 0042 0A0D 4765 .string "\n\rGenerating default Mixer Table" |
1130 6E65 7261 |
1130 7469 6E67 |
1130 2064 6566 |
1130 6175 6C74 |
1133 __c.2653: |
1134 0063 0A0D 5573 .string "\n\rUsing Parameter Set %d" |
1134 696E 6720 |
1134 5061 7261 |
1134 6D65 7465 |
1134 7220 5365 |
1137 __c.2643: |
1138 007c 0A0D 4765 .string "\n\rGenerating default Parameter Set %d" |
1138 6E65 7261 |
1138 7469 6E67 |
1138 2064 6566 |
1138 6175 6C74 |
1139 .comm Mixer,78,1 |
1140 .comm RequiredMotors,1,1 |
1141 .comm EE_Parameter,116,1 |
1142 /* File "eeprom.c": code 1072 = 0x0430 (1020), prologues 18, epilogues 34 */ |
DEFINED SYMBOLS |
*ABS*:00000000 eeprom.c |
C:\DOCUME~1\Owner\LOCALS~1\Temp/cc9cj6yR.s:2 *ABS*:0000003f __SREG__ |
C:\DOCUME~1\Owner\LOCALS~1\Temp/cc9cj6yR.s:3 *ABS*:0000003e __SP_H__ |
C:\DOCUME~1\Owner\LOCALS~1\Temp/cc9cj6yR.s:4 *ABS*:0000003d __SP_L__ |
C:\DOCUME~1\Owner\LOCALS~1\Temp/cc9cj6yR.s:5 *ABS*:00000000 __tmp_reg__ |
C:\DOCUME~1\Owner\LOCALS~1\Temp/cc9cj6yR.s:6 *ABS*:00000001 __zero_reg__ |
C:\DOCUME~1\Owner\LOCALS~1\Temp/cc9cj6yR.s:12 .text:00000000 RAM_Checksum |
C:\DOCUME~1\Owner\LOCALS~1\Temp/cc9cj6yR.s:41 .text:00000024 EEProm_Checksum |
C:\DOCUME~1\Owner\LOCALS~1\Temp/cc9cj6yR.s:73 .text:0000004c ParamSet_DefaultStickMapping |
*COM*:00000074 EE_Parameter |
C:\DOCUME~1\Owner\LOCALS~1\Temp/cc9cj6yR.s:107 .text:00000096 CommonDefaults |
C:\DOCUME~1\Owner\LOCALS~1\Temp/cc9cj6yR.s:240 .text:00000230 GetParamByte |
C:\DOCUME~1\Owner\LOCALS~1\Temp/cc9cj6yR.s:256 .text:0000023c SetParamByte |
C:\DOCUME~1\Owner\LOCALS~1\Temp/cc9cj6yR.s:271 .text:00000246 GetParamWord |
C:\DOCUME~1\Owner\LOCALS~1\Temp/cc9cj6yR.s:287 .text:00000250 SetParamWord |
C:\DOCUME~1\Owner\LOCALS~1\Temp/cc9cj6yR.s:303 .text:0000025a GetActiveParamSet |
C:\DOCUME~1\Owner\LOCALS~1\Temp/cc9cj6yR.s:330 .text:00000278 SetActiveParamSet |
C:\DOCUME~1\Owner\LOCALS~1\Temp/cc9cj6yR.s:355 .text:00000292 MixerTable_WriteToEEProm |
*COM*:0000004e Mixer |
C:\DOCUME~1\Owner\LOCALS~1\Temp/cc9cj6yR.s:394 .text:000002ce MixerTable_ReadFromEEProm |
C:\DOCUME~1\Owner\LOCALS~1\Temp/cc9cj6yR.s:446 .text:00000312 MixerTable_Default |
C:\DOCUME~1\Owner\LOCALS~1\Temp/cc9cj6yR.s:509 .text:00000396 ParamSet_DefaultSet3 |
C:\DOCUME~1\Owner\LOCALS~1\Temp/cc9cj6yR.s:564 .text:00000408 ParamSet_DefaultSet2 |
C:\DOCUME~1\Owner\LOCALS~1\Temp/cc9cj6yR.s:619 .text:0000047a ParamSet_DefaultSet1 |
C:\DOCUME~1\Owner\LOCALS~1\Temp/cc9cj6yR.s:670 .text:000004ee ParamSet_WriteToEEProm |
C:\DOCUME~1\Owner\LOCALS~1\Temp/cc9cj6yR.s:747 .text:00000574 ParamSet_ReadFromEEProm |
C:\DOCUME~1\Owner\LOCALS~1\Temp/cc9cj6yR.s:813 .text:000005e0 SetDefaultParameter |
C:\DOCUME~1\Owner\LOCALS~1\Temp/cc9cj6yR.s:883 .text:00000652 ParamSet_Init |
C:\DOCUME~1\Owner\LOCALS~1\Temp/cc9cj6yR.s:1137 .progmem.data:0000007c __c.2643 |
C:\DOCUME~1\Owner\LOCALS~1\Temp/cc9cj6yR.s:1133 .progmem.data:00000063 __c.2653 |
C:\DOCUME~1\Owner\LOCALS~1\Temp/cc9cj6yR.s:1129 .progmem.data:00000042 __c.2655 |
*COM*:00000001 RequiredMotors |
C:\DOCUME~1\Owner\LOCALS~1\Temp/cc9cj6yR.s:1125 .progmem.data:00000021 __c.2660 |
C:\DOCUME~1\Owner\LOCALS~1\Temp/cc9cj6yR.s:1121 .progmem.data:00000000 __c.2662 |
|
UNDEFINED SYMBOLS |
__do_copy_data |
__do_clear_bss |
__eeprom_read_byte_1F2021 |
PlatinenVersion |
__eeprom_write_byte_1F2021 |
__eeprom_read_word_1F2021 |
__eeprom_write_word_1F2021 |
__eeprom_write_block_1F2021 |
__eeprom_read_block_1F2021 |
LED_Init |
__epilogue_restores__ |
__prologue_saves__ |
uart_putchar |
_printf_P |