Subversion Repositories FlightCtrl

Compare Revisions

Ignore whitespace Rev 1755 → Rev 1789

/branches/V0.80g-Arthur-P1/rc.lst
1,685 → 1,643
1 .file "rc.c"
2 .arch atmega644p
3 __SREG__ = 0x3f
4 __SP_H__ = 0x3e
5 __SP_L__ = 0x3d
2 __SREG__ = 0x3f
3 __SP_H__ = 0x3e
4 __SP_L__ = 0x3d
5 __CCP__ = 0x34
6 __tmp_reg__ = 0
7 __zero_reg__ = 1
8 .global __do_copy_data
9 .global __do_clear_bss
10 .global NewPpmData
11 .data
14 NewPpmData:
15 0000 01 .byte 1
16 .global tmpChannels
17 .global tmpChannels
18 .section .bss
21 tmpChannels:
22 0000 00 .skip 1,0
23 .text
24 .global rc_sum_init
26 rc_sum_init:
27 /* prologue: frame size=0 */
28 /* prologue end (size=0) */
29 0000 89E1 ldi r24,lo8(25)
30 0002 A0E0 ldi r26,lo8(PPM_diff)
31 0004 B0E0 ldi r27,hi8(PPM_diff)
32 0006 E0E0 ldi r30,lo8(PPM_in)
33 0008 F0E0 ldi r31,hi8(PPM_in)
34 .L5:
35 000a 1182 std Z+1,__zero_reg__
36 000c 1082 st Z,__zero_reg__
37 000e 3296 adiw r30,2
38 0010 1196 adiw r26,1
39 0012 1C92 st X,__zero_reg__
40 0014 1E92 st -X,__zero_reg__
41 0016 1296 adiw r26,2
42 0018 8150 subi r24,lo8(-(-1))
43 001a 87FF sbrs r24,7
44 001c F6CF rjmp .L5
45 001e 1092 0000 sts (AdNeutralGier)+1,__zero_reg__
46 0022 1092 0000 sts AdNeutralGier,__zero_reg__
47 0026 1092 0000 sts (AdNeutralRoll)+1,__zero_reg__
48 002a 1092 0000 sts AdNeutralRoll,__zero_reg__
49 002e 1092 0000 sts (AdNeutralNick)+1,__zero_reg__
50 0032 1092 0000 sts AdNeutralNick,__zero_reg__
51 /* epilogue: frame size=0 */
52 0036 0895 ret
53 /* epilogue end (size=1) */
54 /* function rc_sum_init size 28 (27) */
56 .lcomm AltICR.0,2
57 .lcomm index.1,2
58 .lcomm AltICR.2,2
59 .lcomm ppm_in.3,26
60 .lcomm ppm_diff.4,26
61 .lcomm old_ppm_in.5,26
62 .lcomm old_ppm_diff.6,26
63 .lcomm index.7,1
64 .lcomm okay_cnt.8,1
65 .global __vector_12
67 __vector_12:
68 /* prologue: frame size=0 */
69 0038 1F92 push __zero_reg__
70 003a 0F92 push __tmp_reg__
71 003c 0FB6 in __tmp_reg__,__SREG__
72 003e 0F92 push __tmp_reg__
73 0040 1124 clr __zero_reg__
74 0042 0F93 push r16
75 0044 1F93 push r17
76 0046 2F93 push r18
77 0048 3F93 push r19
78 004a 4F93 push r20
79 004c 5F93 push r21
80 004e 6F93 push r22
81 0050 7F93 push r23
82 0052 8F93 push r24
83 0054 9F93 push r25
84 0056 AF93 push r26
85 0058 BF93 push r27
86 005a CF93 push r28
87 005c DF93 push r29
88 005e EF93 push r30
89 0060 FF93 push r31
90 /* prologue end (size=21) */
91 0062 8091 0000 lds r24,EE_Parameter+99
92 0066 82FD sbrc r24,2
93 0068 CFC0 rjmp .L9
94 006a 4091 8600 lds r20,134
95 006e 5091 8700 lds r21,(134)+1
96 0072 8091 0000 lds r24,AltICR.0
97 0076 9091 0000 lds r25,(AltICR.0)+1
98 007a 481B sub r20,r24
99 007c 590B sbc r21,r25
100 007e 8091 8600 lds r24,134
101 0082 9091 8700 lds r25,(134)+1
102 0086 9093 0000 sts (AltICR.0)+1,r25
103 008a 8093 0000 sts AltICR.0,r24
104 008e CA01 movw r24,r20
105 0090 8D54 subi r24,lo8(-(-1101))
106 0092 9440 sbci r25,hi8(-(-1101))
107 0094 A091 0000 lds r26,index.1
108 0098 B091 0000 lds r27,(index.1)+1
109 009c 835F subi r24,lo8(6899)
110 009e 9A41 sbci r25,hi8(6899)
111 00a0 78F4 brsh .L10
112 00a2 8091 0000 lds r24,index.1
113 00a6 8093 0000 sts Channels,r24
114 00aa 1497 sbiw r26,4
115 00ac 14F0 brlt .L11
116 00ae 1092 0000 sts NewPpmData,__zero_reg__
117 .L11:
118 00b2 81E0 ldi r24,lo8(1)
119 00b4 90E0 ldi r25,hi8(1)
120 00b6 9093 0000 sts (index.1)+1,r25
121 00ba 8093 0000 sts index.1,r24
122 00be 07C2 rjmp .L8
123 .L10:
124 00c0 AD30 cpi r26,13
125 00c2 B105 cpc r27,__zero_reg__
126 00c4 0CF0 brlt .+2
127 00c6 03C2 rjmp .L8
128 00c8 CA01 movw r24,r20
129 00ca 8B5F subi r24,lo8(-(-251))
130 00cc 9040 sbci r25,hi8(-(-251))
131 00ce 845B subi r24,lo8(436)
132 00d0 9140 sbci r25,hi8(436)
133 00d2 08F0 brlo .+2
134 00d4 74C0 rjmp .L14
135 00d6 425D subi r20,lo8(-(-466))
136 00d8 5140 sbci r21,hi8(-(-466))
137 00da FD01 movw r30,r26
138 00dc EA0F add r30,r26
139 00de FB1F adc r31,r27
140 00e0 E050 subi r30,lo8(-(PPM_in))
141 00e2 F040 sbci r31,hi8(-(PPM_in))
142 00e4 8081 ld r24,Z
143 00e6 9181 ldd r25,Z+1
144 00e8 FA01 movw r30,r20
145 00ea E81B sub r30,r24
146 00ec F90B sbc r31,r25
147 00ee CF01 movw r24,r30
148 00f0 F7FF sbrs r31,7
149 00f2 03C0 rjmp .L16
150 00f4 9095 com r25
151 00f6 8195 neg r24
152 00f8 9F4F sbci r25,lo8(-1)
153 .L16:
154 00fa 0697 sbiw r24,6
155 00fc 5CF4 brge .L15
156 00fe 8091 0000 lds r24,SenderOkay
157 0102 883C cpi r24,lo8(-56)
158 0104 20F4 brsh .L17
159 0106 8091 0000 lds r24,SenderOkay
160 010a 865F subi r24,lo8(-(10))
161 010c 01C0 rjmp .L87
162 .L17:
163 010e 88EC ldi r24,lo8(-56)
164 .L87:
165 0110 8093 0000 sts SenderOkay,r24
166 .L15:
167 0114 FD01 movw r30,r26
168 0116 EA0F add r30,r26
169 0118 FB1F adc r31,r27
170 011a E050 subi r30,lo8(-(PPM_in))
171 011c F040 sbci r31,hi8(-(PPM_in))
172 011e 8081 ld r24,Z
173 0120 9181 ldd r25,Z+1
174 0122 9C01 movw r18,r24
175 0124 220F lsl r18
176 0126 331F rol r19
177 0128 280F add r18,r24
178 012a 391F adc r19,r25
179 012c 240F add r18,r20
180 012e 351F adc r19,r21
181 0130 37FF sbrs r19,7
182 0132 02C0 rjmp .L19
183 0134 2D5F subi r18,lo8(-(3))
184 0136 3F4F sbci r19,hi8(-(3))
185 .L19:
186 0138 E901 movw r28,r18
187 013a D595 asr r29
188 013c C795 ror r28
189 013e D595 asr r29
190 0140 C795 ror r28
191 0142 CA01 movw r24,r20
192 0144 0196 adiw r24,1
193 0146 8C17 cp r24,r28
194 0148 9D07 cpc r25,r29
195 014a 14F4 brge .L20
196 014c 2197 sbiw r28,1
197 014e 06C0 rjmp .L21
198 .L20:
199 0150 4150 subi r20,lo8(-(-1))
200 0152 5040 sbci r21,hi8(-(-1))
201 0154 C417 cp r28,r20
202 0156 D507 cpc r29,r21
203 0158 0CF4 brge .L21
204 015a 2196 adiw r28,1
205 .L21:
206 015c 8091 0000 lds r24,SenderOkay
207 0160 833C cpi r24,lo8(-61)
208 0162 E0F0 brlo .L23
209 0164 8D01 movw r16,r26
210 0166 0A0F add r16,r26
211 0168 1B1F adc r17,r27
212 016a F801 movw r30,r16
213 016c E050 subi r30,lo8(-(PPM_in))
214 016e F040 sbci r31,hi8(-(PPM_in))
215 0170 8081 ld r24,Z
216 0172 9181 ldd r25,Z+1
217 0174 9E01 movw r18,r28
218 0176 281B sub r18,r24
219 0178 390B sbc r19,r25
220 017a C901 movw r24,r18
221 017c 63E0 ldi r22,lo8(3)
222 017e 70E0 ldi r23,hi8(3)
223 0180 0E94 0000 call __divmodhi4
224 0184 CB01 movw r24,r22
225 0186 880F lsl r24
226 0188 991F rol r25
227 018a 860F add r24,r22
228 018c 971F adc r25,r23
229 018e 0050 subi r16,lo8(-(PPM_diff))
230 0190 1040 sbci r17,hi8(-(PPM_diff))
231 0192 D801 movw r26,r16
232 0194 1196 adiw r26,1
233 0196 9C93 st X,r25
234 0198 8E93 st -X,r24
235 019a 07C0 rjmp .L24
236 .L23:
237 019c AA0F add r26,r26
238 019e BB1F adc r27,r27
239 01a0 A050 subi r26,lo8(-(PPM_diff))
240 01a2 B040 sbci r27,hi8(-(PPM_diff))
241 01a4 1196 adiw r26,1
242 01a6 1C92 st X,__zero_reg__
243 01a8 1E92 st -X,__zero_reg__
244 .L24:
245 01aa E091 0000 lds r30,index.1
246 01ae F091 0000 lds r31,(index.1)+1
247 01b2 EE0F add r30,r30
248 01b4 FF1F adc r31,r31
249 01b6 E050 subi r30,lo8(-(PPM_in))
250 01b8 F040 sbci r31,hi8(-(PPM_in))
251 01ba D183 std Z+1,r29
252 01bc C083 st Z,r28
253 .L14:
254 01be 2091 0000 lds r18,index.1
255 01c2 3091 0000 lds r19,(index.1)+1
256 01c6 2F5F subi r18,lo8(-(1))
257 01c8 3F4F sbci r19,hi8(-(1))
258 01ca 3093 0000 sts (index.1)+1,r19
259 01ce 2093 0000 sts index.1,r18
260 01d2 8091 0000 lds r24,PlatinenVersion
261 01d6 8431 cpi r24,lo8(20)
262 01d8 08F0 brlo .+2
263 01da 79C1 rjmp .L8
264 01dc 2530 cpi r18,5
265 01de 3105 cpc r19,__zero_reg__
266 01e0 11F4 brne .L26
267 01e2 5D9A sbi 43-0x20,5
268 01e4 01C0 rjmp .L27
269 .L26:
270 01e6 5D98 cbi 43-0x20,5
271 .L27:
272 01e8 8091 0000 lds r24,index.1
273 01ec 9091 0000 lds r25,(index.1)+1
274 01f0 8630 cpi r24,6
275 01f2 9105 cpc r25,__zero_reg__
276 01f4 11F4 brne .L28
277 01f6 5C9A sbi 43-0x20,4
278 01f8 01C0 rjmp .L29
279 .L28:
280 01fa 5C98 cbi 43-0x20,4
281 .L29:
282 01fc 0797 sbiw r24,7
283 01fe 11F4 brne .L30
284 0200 5B9A sbi 43-0x20,3
285 0202 65C1 rjmp .L8
286 .L30:
287 0204 5B98 cbi 43-0x20,3
288 0206 63C1 rjmp .L8
289 .L9:
290 0208 4091 8600 lds r20,134
291 020c 5091 8700 lds r21,(134)+1
292 0210 8091 0000 lds r24,AltICR.2
293 0214 9091 0000 lds r25,(AltICR.2)+1
294 0218 481B sub r20,r24
295 021a 590B sbc r21,r25
296 021c 8091 8600 lds r24,134
297 0220 9091 8700 lds r25,(134)+1
298 0224 9093 0000 sts (AltICR.2)+1,r25
299 0228 8093 0000 sts AltICR.2,r24
300 022c CA01 movw r24,r20
301 022e 8D54 subi r24,lo8(-(-1101))
302 0230 9440 sbci r25,hi8(-(-1101))
303 0232 6091 0000 lds r22,index.7
304 0236 835F subi r24,lo8(6899)
305 0238 9A41 sbci r25,hi8(6899)
306 023a 08F0 brlo .+2
307 023c 7AC0 rjmp .L33
308 023e 6093 0000 sts tmpChannels,r22
309 0242 8091 0000 lds r24,tmpChannels
310 0246 8430 cpi r24,lo8(4)
311 0248 08F4 brsh .+2
312 024a 53C0 rjmp .L34
313 024c 9091 0000 lds r25,Channels
314 0250 8091 0000 lds r24,tmpChannels
315 0254 9817 cp r25,r24
316 0256 09F0 breq .+2
317 0258 4CC0 rjmp .L34
318 025a 5091 0000 lds r21,okay_cnt.8
319 025e 5B30 cpi r21,lo8(11)
320 0260 08F4 brsh .+2
321 0262 3FC0 rjmp .L35
322 0264 1092 0000 sts NewPpmData,__zero_reg__
323 0268 1092 0000 sts index.7,__zero_reg__
324 026c 40E0 ldi r20,lo8(0)
325 .L40:
326 026e 5F31 cpi r21,lo8(31)
327 0270 C0F0 brlo .L39
328 0272 E42F mov r30,r20
329 0274 FF27 clr r31
330 0276 EE0F add r30,r30
331 0278 FF1F adc r31,r31
332 027a 9F01 movw r18,r30
333 027c 2050 subi r18,lo8(-(old_ppm_in.5))
334 027e 3040 sbci r19,hi8(-(old_ppm_in.5))
335 0280 DF01 movw r26,r30
336 0282 A050 subi r26,lo8(-(PPM_in))
337 0284 B040 sbci r27,hi8(-(PPM_in))
338 0286 8D91 ld r24,X+
339 0288 9C91 ld r25,X
340 028a D901 movw r26,r18
341 028c 8D93 st X+,r24
342 028e 9C93 st X,r25
343 0290 DF01 movw r26,r30
344 0292 A050 subi r26,lo8(-(PPM_diff))
345 0294 B040 sbci r27,hi8(-(PPM_diff))
346 0296 8D91 ld r24,X+
347 0298 9C91 ld r25,X
348 029a E050 subi r30,lo8(-(old_ppm_diff.6))
349 029c F040 sbci r31,hi8(-(old_ppm_diff.6))
350 029e 9183 std Z+1,r25
351 02a0 8083 st Z,r24
352 .L39:
353 02a2 E42F mov r30,r20
354 02a4 FF27 clr r31
355 02a6 EE0F add r30,r30
356 02a8 FF1F adc r31,r31
357 02aa 9F01 movw r18,r30
358 02ac 2050 subi r18,lo8(-(PPM_in))
359 02ae 3040 sbci r19,hi8(-(PPM_in))
360 02b0 DF01 movw r26,r30
361 02b2 A050 subi r26,lo8(-(ppm_in.3))
362 02b4 B040 sbci r27,hi8(-(ppm_in.3))
363 02b6 8D91 ld r24,X+
364 02b8 9C91 ld r25,X
365 02ba D901 movw r26,r18
366 02bc 1196 adiw r26,1
367 02be 9C93 st X,r25
368 02c0 8E93 st -X,r24
369 02c2 DF01 movw r26,r30
370 02c4 A050 subi r26,lo8(-(ppm_diff.4))
371 02c6 B040 sbci r27,hi8(-(ppm_diff.4))
372 02c8 8D91 ld r24,X+
373 02ca 9C91 ld r25,X
374 02cc E050 subi r30,lo8(-(PPM_diff))
375 02ce F040 sbci r31,hi8(-(PPM_diff))
376 02d0 9183 std Z+1,r25
377 02d2 8083 st Z,r24
378 02d4 842F mov r24,r20
379 02d6 8F5F subi r24,lo8(-(1))
380 02d8 482F mov r20,r24
381 02da 8D30 cpi r24,lo8(13)
382 02dc 40F2 brlo .L40
383 02de 8093 0000 sts index.7,r24
384 .L35:
385 02e2 8091 0000 lds r24,okay_cnt.8
386 02e6 8F3F cpi r24,lo8(-1)
387 02e8 B9F0 breq .L42
388 02ea 8F5F subi r24,lo8(-(1))
389 02ec 8093 0000 sts okay_cnt.8,r24
390 02f0 13C0 rjmp .L42
391 .L34:
392 02f2 8091 0000 lds r24,okay_cnt.8
393 02f6 8536 cpi r24,lo8(101)
394 02f8 20F0 brlo .L43
395 02fa 8AE0 ldi r24,lo8(10)
396 02fc 8093 0000 sts okay_cnt.8,r24
397 0300 02C0 rjmp .L44
398 .L43:
399 0302 1092 0000 sts okay_cnt.8,__zero_reg__
400 .L44:
401 0306 8091 0000 lds r24,PlatinenVersion
402 030a 8A30 cpi r24,lo8(10)
403 030c 11F0 breq .L46
404 030e 8431 cpi r24,lo8(20)
405 0310 10F0 brlo .L45
406 .L46:
407 0312 289A sbi 37-0x20,0
408 0314 01C0 rjmp .L42
409 .L45:
410 0316 2898 cbi 37-0x20,0
411 .L42:
412 0318 81E0 ldi r24,lo8(1)
413 031a 8093 0000 sts index.7,r24
414 031e 8091 0000 lds r24,MotorenEin
415 0322 8823 tst r24
416 0324 09F0 breq .+2
417 0326 D3C0 rjmp .L8
418 0328 8091 0000 lds r24,tmpChannels
419 032c 8093 0000 sts Channels,r24
420 0330 CEC0 rjmp .L8
421 .L33:
422 0332 6D30 cpi r22,lo8(13)
423 0334 08F0 brlo .+2
424 0336 A3C0 rjmp .L50
425 0338 CA01 movw r24,r20
426 033a 8B5F subi r24,lo8(-(-251))
427 033c 9040 sbci r25,hi8(-(-251))
428 033e 845B subi r24,lo8(436)
429 0340 9140 sbci r25,hi8(436)
430 0342 08F0 brlo .+2
431 0344 7EC0 rjmp .L51
432 0346 425D subi r20,lo8(-(-466))
433 0348 5140 sbci r21,hi8(-(-466))
434 034a E62F mov r30,r22
435 034c FF27 clr r31
436 034e EE0F add r30,r30
437 0350 FF1F adc r31,r31
438 0352 E050 subi r30,lo8(-(ppm_in.3))
439 0354 F040 sbci r31,hi8(-(ppm_in.3))
440 0356 8081 ld r24,Z
441 0358 9181 ldd r25,Z+1
442 035a FA01 movw r30,r20
443 035c E81B sub r30,r24
444 035e F90B sbc r31,r25
445 0360 CF01 movw r24,r30
446 0362 0596 adiw r24,5
447 0364 0B97 sbiw r24,11
448 0366 B0F4 brsh .L52
449 0368 8091 0000 lds r24,okay_cnt.8
450 036c 8A31 cpi r24,lo8(26)
451 036e 20F0 brlo .L53
452 0370 8091 0000 lds r24,SenderOkay
453 0374 865F subi r24,lo8(-(10))
454 0376 05C0 rjmp .L88
455 .L53:
456 0378 8B30 cpi r24,lo8(11)
457 037a 28F0 brlo .L54
458 037c 8091 0000 lds r24,SenderOkay
459 0380 8E5F subi r24,lo8(-(2))
460 .L88:
461 0382 8093 0000 sts SenderOkay,r24
462 .L54:
463 0386 8091 0000 lds r24,SenderOkay
464 038a 893C cpi r24,lo8(-55)
465 038c 18F0 brlo .L52
466 038e 88EC ldi r24,lo8(-56)
467 0390 8093 0000 sts SenderOkay,r24
468 .L52:
469 0394 E62F mov r30,r22
470 0396 FF27 clr r31
471 0398 EE0F add r30,r30
472 039a FF1F adc r31,r31
473 039c E050 subi r30,lo8(-(ppm_in.3))
474 039e F040 sbci r31,hi8(-(ppm_in.3))
475 03a0 8081 ld r24,Z
476 03a2 9181 ldd r25,Z+1
477 03a4 9C01 movw r18,r24
478 03a6 220F lsl r18
479 03a8 331F rol r19
480 03aa 280F add r18,r24
481 03ac 391F adc r19,r25
482 03ae 240F add r18,r20
483 03b0 351F adc r19,r21
484 03b2 37FF sbrs r19,7
485 03b4 02C0 rjmp .L57
486 03b6 2D5F subi r18,lo8(-(3))
487 03b8 3F4F sbci r19,hi8(-(3))
488 .L57:
489 03ba E901 movw r28,r18
490 03bc D595 asr r29
491 03be C795 ror r28
492 03c0 D595 asr r29
493 03c2 C795 ror r28
494 03c4 CA01 movw r24,r20
495 03c6 0196 adiw r24,1
496 03c8 8C17 cp r24,r28
497 03ca 9D07 cpc r25,r29
498 03cc 14F4 brge .L58
499 03ce 2197 sbiw r28,1
500 03d0 06C0 rjmp .L59
501 .L58:
502 03d2 4150 subi r20,lo8(-(-1))
503 03d4 5040 sbci r21,hi8(-(-1))
504 03d6 C417 cp r28,r20
505 03d8 D507 cpc r29,r21
506 03da 0CF4 brge .L59
507 03dc 2196 adiw r28,1
508 .L59:
509 03de 8091 0000 lds r24,SenderOkay
510 03e2 8E3B cpi r24,lo8(-66)
511 03e4 D8F0 brlo .L61
512 03e6 E62F mov r30,r22
513 03e8 FF27 clr r31
514 03ea EE0F add r30,r30
515 03ec FF1F adc r31,r31
516 03ee DF01 movw r26,r30
517 03f0 A050 subi r26,lo8(-(ppm_in.3))
518 03f2 B040 sbci r27,hi8(-(ppm_in.3))
519 03f4 8D91 ld r24,X+
520 03f6 9C91 ld r25,X
521 03f8 9E01 movw r18,r28
522 03fa 281B sub r18,r24
523 03fc 390B sbc r19,r25
524 03fe C901 movw r24,r18
525 0400 63E0 ldi r22,lo8(3)
526 0402 70E0 ldi r23,hi8(3)
527 0404 0E94 0000 call __divmodhi4
528 0408 CB01 movw r24,r22
529 040a 880F lsl r24
530 040c 991F rol r25
531 040e 860F add r24,r22
532 0410 971F adc r25,r23
533 0412 E050 subi r30,lo8(-(ppm_diff.4))
534 0414 F040 sbci r31,hi8(-(ppm_diff.4))
535 0416 9183 std Z+1,r25
536 0418 8083 st Z,r24
537 041a 08C0 rjmp .L62
538 .L61:
539 041c E62F mov r30,r22
540 041e FF27 clr r31
541 0420 EE0F add r30,r30
542 0422 FF1F adc r31,r31
543 0424 E050 subi r30,lo8(-(ppm_diff.4))
544 0426 F040 sbci r31,hi8(-(ppm_diff.4))
545 0428 1182 std Z+1,__zero_reg__
546 042a 1082 st Z,__zero_reg__
547 .L62:
548 042c 8091 0000 lds r24,index.7
549 0430 E82F mov r30,r24
550 0432 FF27 clr r31
551 0434 EE0F add r30,r30
552 0436 FF1F adc r31,r31
553 0438 E050 subi r30,lo8(-(ppm_in.3))
554 043a F040 sbci r31,hi8(-(ppm_in.3))
555 043c D183 std Z+1,r29
556 043e C083 st Z,r28
557 0440 09C0 rjmp .L63
558 .L51:
559 0442 8091 0000 lds r24,PlatinenVersion
560 0446 8A30 cpi r24,lo8(10)
561 0448 11F0 breq .L65
562 044a 8431 cpi r24,lo8(20)
563 044c 10F0 brlo .L64
564 .L65:
565 044e 289A sbi 37-0x20,0
566 0450 01C0 rjmp .L63
567 .L64:
568 0452 2898 cbi 37-0x20,0
569 .L63:
570 0454 8091 0000 lds r24,PlatinenVersion
571 0458 8431 cpi r24,lo8(20)
572 045a 88F4 brsh .L50
573 045c 8091 0000 lds r24,index.7
574 0460 8530 cpi r24,lo8(5)
575 0462 11F4 brne .L68
576 0464 5D9A sbi 43-0x20,5
577 0466 05C0 rjmp .L70
578 .L68:
579 0468 5D98 cbi 43-0x20,5
580 046a 8630 cpi r24,lo8(6)
581 046c 11F4 brne .L70
582 046e 5C9A sbi 43-0x20,4
583 0470 05C0 rjmp .L72
584 .L70:
585 0472 5C98 cbi 43-0x20,4
586 0474 8730 cpi r24,lo8(7)
587 0476 11F4 brne .L72
588 0478 5B9A sbi 43-0x20,3
589 047a 01C0 rjmp .L50
590 .L72:
591 047c 5B98 cbi 43-0x20,3
592 .L50:
593 047e 8091 0000 lds r24,index.7
594 0482 8431 cpi r24,lo8(20)
595 0484 20F4 brsh .L74
596 0486 8F5F subi r24,lo8(-(1))
597 0488 8093 0000 sts index.7,r24
598 048c 20C0 rjmp .L8
599 .L74:
600 048e 8431 cpi r24,lo8(20)
601 0490 F1F4 brne .L8
602 0492 8091 0000 lds r24,PlatinenVersion
603 0496 8A30 cpi r24,lo8(10)
604 0498 11F0 breq .L78
605 049a 8431 cpi r24,lo8(20)
606 049c 10F0 brlo .L77
607 .L78:
608 049e 289A sbi 37-0x20,0
609 04a0 01C0 rjmp .L79
610 .L77:
611 04a2 2898 cbi 37-0x20,0
612 .L79:
613 04a4 8EE1 ldi r24,lo8(30)
614 04a6 8093 0000 sts index.7,r24
615 04aa 2CE0 ldi r18,lo8(12)
616 04ac C0E0 ldi r28,lo8(PPM_diff)
617 04ae D0E0 ldi r29,hi8(PPM_diff)
618 04b0 A0E0 ldi r26,lo8(old_ppm_in.5)
619 04b2 B0E0 ldi r27,hi8(old_ppm_in.5)
620 04b4 E0E0 ldi r30,lo8(PPM_in)
621 04b6 F0E0 ldi r31,hi8(PPM_in)
622 .L83:
623 04b8 8D91 ld r24,X+
624 04ba 9D91 ld r25,X+
625 04bc 9183 std Z+1,r25
626 04be 8083 st Z,r24
627 04c0 3296 adiw r30,2
628 04c2 1982 std Y+1,__zero_reg__
629 04c4 1882 st Y,__zero_reg__
630 04c6 2296 adiw r28,2
631 04c8 2150 subi r18,lo8(-(-1))
632 04ca 27FF sbrs r18,7
633 04cc F5CF rjmp .L83
634 .L8:
635 /* epilogue: frame size=0 */
636 04ce FF91 pop r31
637 04d0 EF91 pop r30
638 04d2 DF91 pop r29
639 04d4 CF91 pop r28
640 04d6 BF91 pop r27
641 04d8 AF91 pop r26
642 04da 9F91 pop r25
643 04dc 8F91 pop r24
644 04de 7F91 pop r23
645 04e0 6F91 pop r22
646 04e2 5F91 pop r21
647 04e4 4F91 pop r20
648 04e6 3F91 pop r19
649 04e8 2F91 pop r18
650 04ea 1F91 pop r17
651 04ec 0F91 pop r16
652 04ee 0F90 pop __tmp_reg__
653 04f0 0FBE out __SREG__,__tmp_reg__
654 04f2 0F90 pop __tmp_reg__
655 04f4 1F90 pop __zero_reg__
656 04f6 1895 reti
657 /* epilogue end (size=21) */
658 /* function __vector_12 size 615 (573) */
660 .comm PPM_in,52,1
661 .comm PPM_diff,52,1
662 .comm Channels,1,1
663 /* File "rc.c": code 643 = 0x0283 ( 600), prologues 21, epilogues 22 */
8 .text
9 .global rc_sum_init
11 rc_sum_init:
12 /* prologue: function */
13 /* frame size = 0 */
14 0000 80E0 ldi r24,lo8(0)
15 0002 90E0 ldi r25,hi8(0)
16 .L2:
17 0004 FC01 movw r30,r24
18 0006 EE0F lsl r30
19 0008 FF1F rol r31
20 000a DF01 movw r26,r30
21 000c A050 subi r26,lo8(-(PPM_in))
22 000e B040 sbci r27,hi8(-(PPM_in))
23 0010 1196 adiw r26,1
24 0012 1C92 st X,__zero_reg__
25 0014 1E92 st -X,__zero_reg__
26 0016 E050 subi r30,lo8(-(PPM_diff))
27 0018 F040 sbci r31,hi8(-(PPM_diff))
28 001a 1182 std Z+1,__zero_reg__
29 001c 1082 st Z,__zero_reg__
30 001e 0196 adiw r24,1
31 0020 8A31 cpi r24,26
32 0022 9105 cpc r25,__zero_reg__
33 0024 01F4 brne .L2
34 0026 1092 0000 sts (AdNeutralGier)+1,__zero_reg__
35 002a 1092 0000 sts AdNeutralGier,__zero_reg__
36 002e 1092 0000 sts (AdNeutralRoll)+1,__zero_reg__
37 0032 1092 0000 sts AdNeutralRoll,__zero_reg__
38 0036 1092 0000 sts (AdNeutralNick)+1,__zero_reg__
39 003a 1092 0000 sts AdNeutralNick,__zero_reg__
40 /* epilogue start */
41 003e 0895 ret
43 .global __vector_12
45 __vector_12:
46 0040 1F92 push __zero_reg__
47 0042 0F92 push r0
48 0044 0FB6 in r0,__SREG__
49 0046 0F92 push r0
50 0048 1124 clr __zero_reg__
51 004a 0F93 push r16
52 004c 1F93 push r17
53 004e 2F93 push r18
54 0050 3F93 push r19
55 0052 4F93 push r20
56 0054 5F93 push r21
57 0056 6F93 push r22
58 0058 7F93 push r23
59 005a 8F93 push r24
60 005c 9F93 push r25
61 005e AF93 push r26
62 0060 BF93 push r27
63 0062 CF93 push r28
64 0064 DF93 push r29
65 0066 EF93 push r30
66 0068 FF93 push r31
67 /* prologue: Signal */
68 /* frame size = 0 */
69 006a 8091 0000 lds r24,EE_Parameter+99
70 006e 82FD sbrc r24,2
71 0070 00C0 rjmp .L6
72 0072 2091 8600 lds r18,134
73 0076 3091 8700 lds r19,(134)+1
74 007a 8091 0000 lds r24,AltICR.2229
75 007e 9091 0000 lds r25,(AltICR.2229)+1
76 0082 281B sub r18,r24
77 0084 390B sbc r19,r25
78 0086 8091 8600 lds r24,134
79 008a 9091 8700 lds r25,(134)+1
80 008e 9093 0000 sts (AltICR.2229)+1,r25
81 0092 8093 0000 sts AltICR.2229,r24
82 0096 C901 movw r24,r18
83 0098 8D54 subi r24,lo8(-(-1101))
84 009a 9440 sbci r25,hi8(-(-1101))
85 009c 0091 0000 lds r16,index.2232
86 00a0 1091 0000 lds r17,(index.2232)+1
87 00a4 835F subi r24,lo8(6899)
88 00a6 9A41 sbci r25,hi8(6899)
89 00a8 00F4 brsh .L7
90 00aa 0093 0000 sts Channels,r16
91 00ae 0430 cpi r16,4
92 00b0 1105 cpc r17,__zero_reg__
93 00b2 04F0 brlt .L8
94 00b4 1092 0000 sts NewPpmData,__zero_reg__
95 .L8:
96 00b8 81E0 ldi r24,lo8(1)
97 00ba 90E0 ldi r25,hi8(1)
98 00bc 9093 0000 sts (index.2232)+1,r25
99 00c0 8093 0000 sts index.2232,r24
100 00c4 00C0 rjmp .L53
101 .L7:
102 00c6 0D30 cpi r16,13
103 00c8 1105 cpc r17,__zero_reg__
104 00ca 04F0 brlt .+2
105 00cc 00C0 rjmp .L53
106 00ce C901 movw r24,r18
107 00d0 8B5F subi r24,lo8(-(-251))
108 00d2 9040 sbci r25,hi8(-(-251))
109 00d4 845B subi r24,lo8(436)
110 00d6 9140 sbci r25,hi8(436)
111 00d8 00F0 brlo .+2
112 00da 00C0 rjmp .L10
113 00dc E901 movw r28,r18
114 00de C25D subi r28,lo8(-(-466))
115 00e0 D140 sbci r29,hi8(-(-466))
116 00e2 F801 movw r30,r16
117 00e4 EE0F lsl r30
118 00e6 FF1F rol r31
119 00e8 E050 subi r30,lo8(-(PPM_in))
120 00ea F040 sbci r31,hi8(-(PPM_in))
121 00ec 8081 ld r24,Z
122 00ee 9181 ldd r25,Z+1
123 00f0 FE01 movw r30,r28
124 00f2 E81B sub r30,r24
125 00f4 F90B sbc r31,r25
126 00f6 CF01 movw r24,r30
127 00f8 F7FF sbrs r31,7
128 00fa 00C0 rjmp .L12
129 00fc 9095 com r25
130 00fe 8195 neg r24
131 0100 9F4F sbci r25,lo8(-1)
132 .L12:
133 0102 0697 sbiw r24,6
134 0104 04F4 brge .L11
135 0106 8091 0000 lds r24,SenderOkay
136 010a 883C cpi r24,lo8(-56)
137 010c 00F4 brsh .L13
138 010e 8091 0000 lds r24,SenderOkay
139 0112 865F subi r24,lo8(-(10))
140 0114 00C0 rjmp .L55
141 .L13:
142 0116 88EC ldi r24,lo8(-56)
143 .L55:
144 0118 8093 0000 sts SenderOkay,r24
145 .L11:
146 011c F801 movw r30,r16
147 011e EE0F lsl r30
148 0120 FF1F rol r31
149 0122 E050 subi r30,lo8(-(PPM_in))
150 0124 F040 sbci r31,hi8(-(PPM_in))
151 0126 2081 ld r18,Z
152 0128 3181 ldd r19,Z+1
153 012a C901 movw r24,r18
154 012c 880F lsl r24
155 012e 991F rol r25
156 0130 820F add r24,r18
157 0132 931F adc r25,r19
158 0134 8C0F add r24,r28
159 0136 9D1F adc r25,r29
160 0138 64E0 ldi r22,lo8(4)
161 013a 70E0 ldi r23,hi8(4)
162 013c 0E94 0000 call __divmodhi4
163 0140 9B01 movw r18,r22
164 0142 CE01 movw r24,r28
165 0144 0196 adiw r24,1
166 0146 8617 cp r24,r22
167 0148 9707 cpc r25,r23
168 014a 04F4 brge .L14
169 014c 2150 subi r18,lo8(-(-1))
170 014e 3040 sbci r19,hi8(-(-1))
171 0150 00C0 rjmp .L15
172 .L14:
173 0152 2197 sbiw r28,1
174 0154 6C17 cp r22,r28
175 0156 7D07 cpc r23,r29
176 0158 04F4 brge .L15
177 015a 2F5F subi r18,lo8(-(1))
178 015c 3F4F sbci r19,hi8(-(1))
179 .L15:
180 015e 8091 0000 lds r24,SenderOkay
181 0162 E801 movw r28,r16
182 0164 CC0F lsl r28
183 0166 DD1F rol r29
184 0168 833C cpi r24,lo8(-61)
185 016a 00F0 brlo .L16
186 016c FE01 movw r30,r28
187 016e E050 subi r30,lo8(-(PPM_in))
188 0170 F040 sbci r31,hi8(-(PPM_in))
189 0172 8081 ld r24,Z
190 0174 9181 ldd r25,Z+1
191 0176 A901 movw r20,r18
192 0178 481B sub r20,r24
193 017a 590B sbc r21,r25
194 017c CA01 movw r24,r20
195 017e 63E0 ldi r22,lo8(3)
196 0180 70E0 ldi r23,hi8(3)
197 0182 0E94 0000 call __divmodhi4
198 0186 CB01 movw r24,r22
199 0188 880F lsl r24
200 018a 991F rol r25
201 018c 860F add r24,r22
202 018e 971F adc r25,r23
203 0190 C050 subi r28,lo8(-(PPM_diff))
204 0192 D040 sbci r29,hi8(-(PPM_diff))
205 0194 9983 std Y+1,r25
206 0196 8883 st Y,r24
207 0198 00C0 rjmp .L17
208 .L16:
209 019a C050 subi r28,lo8(-(PPM_diff))
210 019c D040 sbci r29,hi8(-(PPM_diff))
211 019e 1982 std Y+1,__zero_reg__
212 01a0 1882 st Y,__zero_reg__
213 .L17:
214 01a2 F801 movw r30,r16
215 01a4 EE0F lsl r30
216 01a6 FF1F rol r31
217 01a8 E050 subi r30,lo8(-(PPM_in))
218 01aa F040 sbci r31,hi8(-(PPM_in))
219 01ac 3183 std Z+1,r19
220 01ae 2083 st Z,r18
221 .L10:
222 01b0 F801 movw r30,r16
223 01b2 3196 adiw r30,1
224 01b4 F093 0000 sts (index.2232)+1,r31
225 01b8 E093 0000 sts index.2232,r30
226 01bc 8091 0000 lds r24,PlatinenVersion
227 01c0 8431 cpi r24,lo8(20)
228 01c2 00F0 brlo .+2
229 01c4 00C0 rjmp .L53
230 01c6 E530 cpi r30,5
231 01c8 F105 cpc r31,__zero_reg__
232 01ca 01F4 brne .L18
233 01cc 5D9A sbi 43-32,5
234 01ce 00C0 rjmp .L19
235 .L18:
236 01d0 5D98 cbi 43-32,5
237 01d2 E630 cpi r30,6
238 01d4 F105 cpc r31,__zero_reg__
239 01d6 01F4 brne .L19
240 01d8 5C9A sbi 43-32,4
241 01da 00C0 rjmp .L20
242 .L19:
243 01dc 5C98 cbi 43-32,4
244 01de 3797 sbiw r30,7
245 01e0 01F4 brne .L20
246 01e2 5B9A sbi 43-32,3
247 01e4 00C0 rjmp .L53
248 .L20:
249 01e6 5B98 cbi 43-32,3
250 01e8 00C0 rjmp .L53
251 .L6:
252 01ea 2091 8600 lds r18,134
253 01ee 3091 8700 lds r19,(134)+1
254 01f2 8091 0000 lds r24,AltICR.2233
255 01f6 9091 0000 lds r25,(AltICR.2233)+1
256 01fa 281B sub r18,r24
257 01fc 390B sbc r19,r25
258 01fe 8091 8600 lds r24,134
259 0202 9091 8700 lds r25,(134)+1
260 0206 9093 0000 sts (AltICR.2233)+1,r25
261 020a 8093 0000 sts AltICR.2233,r24
262 020e C901 movw r24,r18
263 0210 8D54 subi r24,lo8(-(-1101))
264 0212 9440 sbci r25,hi8(-(-1101))
265 0214 4091 0000 lds r20,index.2240
266 0218 835F subi r24,lo8(6899)
267 021a 9A41 sbci r25,hi8(6899)
268 021c 00F0 brlo .+2
269 021e 00C0 rjmp .L21
270 0220 4093 0000 sts tmpChannels,r20
271 0224 8091 0000 lds r24,tmpChannels
272 0228 8430 cpi r24,lo8(4)
273 022a 00F4 brsh .+2
274 022c 00C0 rjmp .L22
275 022e 9091 0000 lds r25,Channels
276 0232 8091 0000 lds r24,tmpChannels
277 0236 9817 cp r25,r24
278 0238 01F0 breq .+2
279 023a 00C0 rjmp .L22
280 023c 3091 0000 lds r19,okay_cnt.2241
281 0240 3B30 cpi r19,lo8(11)
282 0242 00F0 brlo .L23
283 0244 1092 0000 sts NewPpmData,__zero_reg__
284 0248 20E0 ldi r18,lo8(0)
285 024a 00C0 rjmp .L24
286 .L26:
287 024c 3F31 cpi r19,lo8(31)
288 024e 00F0 brlo .L25
289 0250 E22F mov r30,r18
290 0252 F0E0 ldi r31,lo8(0)
291 0254 EE0F lsl r30
292 0256 FF1F rol r31
293 0258 DF01 movw r26,r30
294 025a A050 subi r26,lo8(-(PPM_in))
295 025c B040 sbci r27,hi8(-(PPM_in))
296 025e 8D91 ld r24,X+
297 0260 9C91 ld r25,X
298 0262 DF01 movw r26,r30
299 0264 A050 subi r26,lo8(-(old_ppm_in.2236))
300 0266 B040 sbci r27,hi8(-(old_ppm_in.2236))
301 0268 8D93 st X+,r24
302 026a 9C93 st X,r25
303 026c DF01 movw r26,r30
304 026e A050 subi r26,lo8(-(PPM_diff))
305 0270 B040 sbci r27,hi8(-(PPM_diff))
306 0272 8D91 ld r24,X+
307 0274 9C91 ld r25,X
308 0276 E050 subi r30,lo8(-(old_ppm_diff.2237))
309 0278 F040 sbci r31,hi8(-(old_ppm_diff.2237))
310 027a 9183 std Z+1,r25
311 027c 8083 st Z,r24
312 .L25:
313 027e E22F mov r30,r18
314 0280 F0E0 ldi r31,lo8(0)
315 0282 EE0F lsl r30
316 0284 FF1F rol r31
317 0286 DF01 movw r26,r30
318 0288 A050 subi r26,lo8(-(ppm_in.2234))
319 028a B040 sbci r27,hi8(-(ppm_in.2234))
320 028c 8D91 ld r24,X+
321 028e 9C91 ld r25,X
322 0290 DF01 movw r26,r30
323 0292 A050 subi r26,lo8(-(PPM_in))
324 0294 B040 sbci r27,hi8(-(PPM_in))
325 0296 1196 adiw r26,1
326 0298 9C93 st X,r25
327 029a 8E93 st -X,r24
328 029c DF01 movw r26,r30
329 029e A050 subi r26,lo8(-(ppm_diff.2235))
330 02a0 B040 sbci r27,hi8(-(ppm_diff.2235))
331 02a2 8D91 ld r24,X+
332 02a4 9C91 ld r25,X
333 02a6 E050 subi r30,lo8(-(PPM_diff))
334 02a8 F040 sbci r31,hi8(-(PPM_diff))
335 02aa 9183 std Z+1,r25
336 02ac 8083 st Z,r24
337 02ae 2F5F subi r18,lo8(-(1))
338 .L24:
339 02b0 2D30 cpi r18,lo8(13)
340 02b2 00F0 brlo .L26
341 02b4 3F3F cpi r19,lo8(-1)
342 02b6 01F0 breq .L27
343 .L23:
344 02b8 3F5F subi r19,lo8(-(1))
345 02ba 3093 0000 sts okay_cnt.2241,r19
346 02be 00C0 rjmp .L27
347 .L22:
348 02c0 8091 0000 lds r24,okay_cnt.2241
349 02c4 8536 cpi r24,lo8(101)
350 02c6 00F0 brlo .L28
351 02c8 8AE0 ldi r24,lo8(10)
352 02ca 8093 0000 sts okay_cnt.2241,r24
353 02ce 00C0 rjmp .L29
354 .L28:
355 02d0 1092 0000 sts okay_cnt.2241,__zero_reg__
356 .L29:
357 02d4 8091 0000 lds r24,PlatinenVersion
358 02d8 8A30 cpi r24,lo8(10)
359 02da 01F0 breq .L30
360 02dc 8431 cpi r24,lo8(20)
361 02de 00F0 brlo .L31
362 .L30:
363 02e0 289A sbi 37-32,0
364 02e2 00C0 rjmp .L27
365 .L31:
366 02e4 2898 cbi 37-32,0
367 .L27:
368 02e6 81E0 ldi r24,lo8(1)
369 02e8 8093 0000 sts index.2240,r24
370 02ec 8091 0000 lds r24,MotorenEin
371 02f0 8823 tst r24
372 02f2 01F0 breq .+2
373 02f4 00C0 rjmp .L53
374 02f6 8091 0000 lds r24,tmpChannels
375 02fa 8093 0000 sts Channels,r24
376 02fe 00C0 rjmp .L53
377 .L21:
378 0300 4D30 cpi r20,lo8(13)
379 0302 00F0 brlo .+2
380 0304 00C0 rjmp .L32
381 0306 C901 movw r24,r18
382 0308 8B5F subi r24,lo8(-(-251))
383 030a 9040 sbci r25,hi8(-(-251))
384 030c 845B subi r24,lo8(436)
385 030e 9140 sbci r25,hi8(436)
386 0310 00F0 brlo .+2
387 0312 00C0 rjmp .L33
388 0314 E901 movw r28,r18
389 0316 C25D subi r28,lo8(-(-466))
390 0318 D140 sbci r29,hi8(-(-466))
391 031a 042F mov r16,r20
392 031c 10E0 ldi r17,lo8(0)
393 031e F801 movw r30,r16
394 0320 EE0F lsl r30
395 0322 FF1F rol r31
396 0324 E050 subi r30,lo8(-(ppm_in.2234))
397 0326 F040 sbci r31,hi8(-(ppm_in.2234))
398 0328 0190 ld __tmp_reg__,Z+
399 032a F081 ld r31,Z
400 032c E02D mov r30,__tmp_reg__
401 032e CE01 movw r24,r28
402 0330 8E1B sub r24,r30
403 0332 9F0B sbc r25,r31
404 0334 0596 adiw r24,5
405 0336 0B97 sbiw r24,11
406 0338 00F4 brsh .L34
407 033a 8091 0000 lds r24,okay_cnt.2241
408 033e 8A31 cpi r24,lo8(26)
409 0340 00F0 brlo .L35
410 0342 8091 0000 lds r24,SenderOkay
411 0346 865F subi r24,lo8(-(10))
412 0348 00C0 rjmp .L56
413 .L35:
414 034a 8B30 cpi r24,lo8(11)
415 034c 00F0 brlo .L36
416 034e 8091 0000 lds r24,SenderOkay
417 0352 8E5F subi r24,lo8(-(2))
418 .L56:
419 0354 8093 0000 sts SenderOkay,r24
420 .L36:
421 0358 8091 0000 lds r24,SenderOkay
422 035c 893C cpi r24,lo8(-55)
423 035e 00F0 brlo .L34
424 0360 88EC ldi r24,lo8(-56)
425 0362 8093 0000 sts SenderOkay,r24
426 .L34:
427 0366 CF01 movw r24,r30
428 0368 880F lsl r24
429 036a 991F rol r25
430 036c 8E0F add r24,r30
431 036e 9F1F adc r25,r31
432 0370 8C0F add r24,r28
433 0372 9D1F adc r25,r29
434 0374 64E0 ldi r22,lo8(4)
435 0376 70E0 ldi r23,hi8(4)
436 0378 0E94 0000 call __divmodhi4
437 037c 9B01 movw r18,r22
438 037e CE01 movw r24,r28
439 0380 0196 adiw r24,1
440 0382 8617 cp r24,r22
441 0384 9707 cpc r25,r23
442 0386 04F4 brge .L37
443 0388 2150 subi r18,lo8(-(-1))
444 038a 3040 sbci r19,hi8(-(-1))
445 038c 00C0 rjmp .L38
446 .L37:
447 038e 2197 sbiw r28,1
448 0390 6C17 cp r22,r28
449 0392 7D07 cpc r23,r29
450 0394 04F4 brge .L38
451 0396 2F5F subi r18,lo8(-(1))
452 0398 3F4F sbci r19,hi8(-(1))
453 .L38:
454 039a 8091 0000 lds r24,SenderOkay
455 039e E801 movw r28,r16
456 03a0 CC0F lsl r28
457 03a2 DD1F rol r29
458 03a4 8E3B cpi r24,lo8(-66)
459 03a6 00F0 brlo .L39
460 03a8 C050 subi r28,lo8(-(ppm_diff.2235))
461 03aa D040 sbci r29,hi8(-(ppm_diff.2235))
462 03ac C901 movw r24,r18
463 03ae 8E1B sub r24,r30
464 03b0 9F0B sbc r25,r31
465 03b2 63E0 ldi r22,lo8(3)
466 03b4 70E0 ldi r23,hi8(3)
467 03b6 0E94 0000 call __divmodhi4
468 03ba CB01 movw r24,r22
469 03bc 880F lsl r24
470 03be 991F rol r25
471 03c0 860F add r24,r22
472 03c2 971F adc r25,r23
473 03c4 9983 std Y+1,r25
474 03c6 8883 st Y,r24
475 03c8 00C0 rjmp .L40
476 .L39:
477 03ca C050 subi r28,lo8(-(ppm_diff.2235))
478 03cc D040 sbci r29,hi8(-(ppm_diff.2235))
479 03ce 1982 std Y+1,__zero_reg__
480 03d0 1882 st Y,__zero_reg__
481 .L40:
482 03d2 000F lsl r16
483 03d4 111F rol r17
484 03d6 0050 subi r16,lo8(-(ppm_in.2234))
485 03d8 1040 sbci r17,hi8(-(ppm_in.2234))
486 03da F801 movw r30,r16
487 03dc 3183 std Z+1,r19
488 03de 2083 st Z,r18
489 03e0 00C0 rjmp .L41
490 .L33:
491 03e2 8091 0000 lds r24,PlatinenVersion
492 03e6 8A30 cpi r24,lo8(10)
493 03e8 01F0 breq .L42
494 03ea 8431 cpi r24,lo8(20)
495 03ec 00F0 brlo .L43
496 .L42:
497 03ee 289A sbi 37-32,0
498 03f0 00C0 rjmp .L41
499 .L43:
500 03f2 2898 cbi 37-32,0
501 .L41:
502 03f4 8091 0000 lds r24,PlatinenVersion
503 03f8 8431 cpi r24,lo8(20)
504 03fa 00F4 brsh .L44
505 03fc 4530 cpi r20,lo8(5)
506 03fe 01F4 brne .L45
507 0400 5D9A sbi 43-32,5
508 0402 00C0 rjmp .L46
509 .L45:
510 0404 5D98 cbi 43-32,5
511 0406 4630 cpi r20,lo8(6)
512 0408 01F4 brne .L46
513 040a 5C9A sbi 43-32,4
514 040c 00C0 rjmp .L47
515 .L46:
516 040e 5C98 cbi 43-32,4
517 0410 4730 cpi r20,lo8(7)
518 0412 01F4 brne .L47
519 0414 5B9A sbi 43-32,3
520 0416 00C0 rjmp .L44
521 .L47:
522 0418 5B98 cbi 43-32,3
523 041a 00C0 rjmp .L44
524 .L32:
525 041c 4431 cpi r20,lo8(20)
526 041e 00F4 brsh .L48
527 .L44:
528 0420 4F5F subi r20,lo8(-(1))
529 0422 4093 0000 sts index.2240,r20
530 0426 00C0 rjmp .L53
531 .L48:
532 0428 4431 cpi r20,lo8(20)
533 042a 01F4 brne .L53
534 042c 8091 0000 lds r24,PlatinenVersion
535 0430 8A30 cpi r24,lo8(10)
536 0432 01F0 breq .L49
537 0434 8431 cpi r24,lo8(20)
538 0436 00F0 brlo .L50
539 .L49:
540 0438 289A sbi 37-32,0
541 043a 00C0 rjmp .L51
542 .L50:
543 043c 2898 cbi 37-32,0
544 .L51:
545 043e 8EE1 ldi r24,lo8(30)
546 0440 8093 0000 sts index.2240,r24
547 0444 C0E0 ldi r28,lo8(old_ppm_in.2236)
548 0446 D0E0 ldi r29,hi8(old_ppm_in.2236)
549 0448 20E0 ldi r18,lo8(0)
550 044a 30E0 ldi r19,hi8(0)
551 .L52:
552 044c 8991 ld r24,Y+
553 044e 9991 ld r25,Y+
554 0450 F901 movw r30,r18
555 0452 EE0F lsl r30
556 0454 FF1F rol r31
557 0456 DF01 movw r26,r30
558 0458 A050 subi r26,lo8(-(PPM_in))
559 045a B040 sbci r27,hi8(-(PPM_in))
560 045c 1196 adiw r26,1
561 045e 9C93 st X,r25
562 0460 8E93 st -X,r24
563 0462 E050 subi r30,lo8(-(PPM_diff))
564 0464 F040 sbci r31,hi8(-(PPM_diff))
565 0466 1182 std Z+1,__zero_reg__
566 0468 1082 st Z,__zero_reg__
567 046a 2F5F subi r18,lo8(-(1))
568 046c 3F4F sbci r19,hi8(-(1))
569 046e 2D30 cpi r18,13
570 0470 3105 cpc r19,__zero_reg__
571 0472 01F4 brne .L52
572 .L53:
573 /* epilogue start */
574 0474 FF91 pop r31
575 0476 EF91 pop r30
576 0478 DF91 pop r29
577 047a CF91 pop r28
578 047c BF91 pop r27
579 047e AF91 pop r26
580 0480 9F91 pop r25
581 0482 8F91 pop r24
582 0484 7F91 pop r23
583 0486 6F91 pop r22
584 0488 5F91 pop r21
585 048a 4F91 pop r20
586 048c 3F91 pop r19
587 048e 2F91 pop r18
588 0490 1F91 pop r17
589 0492 0F91 pop r16
590 0494 0F90 pop r0
591 0496 0FBE out __SREG__,r0
592 0498 0F90 pop r0
593 049a 1F90 pop __zero_reg__
594 049c 1895 reti
596 .global tmpChannels
597 .global tmpChannels
598 .section .bss
601 tmpChannels:
602 0000 00 .skip 1,0
603 .global NewPpmData
604 .data
607 NewPpmData:
608 0000 01 .byte 1
609 .lcomm okay_cnt.2241,1
610 .lcomm index.2240,1
611 .lcomm old_ppm_diff.2237,26
612 .lcomm old_ppm_in.2236,26
613 .lcomm ppm_diff.2235,26
614 .lcomm ppm_in.2234,26
615 .lcomm AltICR.2233,2
616 .lcomm index.2232,2
617 .lcomm AltICR.2229,2
618 .comm PPM_in,52,1
619 .comm PPM_diff,52,1
620 .comm Channels,1,1
621 .global __do_copy_data
622 .global __do_clear_bss
DEFINED SYMBOLS
*ABS*:00000000 rc.c
C:\Users\Arthur-P\AppData\Local\Temp/cc21baaa.s:3 *ABS*:0000003f __SREG__
C:\Users\Arthur-P\AppData\Local\Temp/cc21baaa.s:4 *ABS*:0000003e __SP_H__
C:\Users\Arthur-P\AppData\Local\Temp/cc21baaa.s:5 *ABS*:0000003d __SP_L__
C:\Users\Arthur-P\AppData\Local\Temp/cc21baaa.s:6 *ABS*:00000000 __tmp_reg__
C:\Users\Arthur-P\AppData\Local\Temp/cc21baaa.s:7 *ABS*:00000001 __zero_reg__
C:\Users\Arthur-P\AppData\Local\Temp/cc21baaa.s:14 .data:00000000 NewPpmData
C:\Users\Arthur-P\AppData\Local\Temp/cc21baaa.s:21 .bss:00000000 tmpChannels
C:\Users\Arthur-P\AppData\Local\Temp/cc21baaa.s:26 .text:00000000 rc_sum_init
C:\DOCUME~1\ADMINI~1\LOCALS~1\Temp/ccRlEfUb.s:2 *ABS*:0000003f __SREG__
C:\DOCUME~1\ADMINI~1\LOCALS~1\Temp/ccRlEfUb.s:3 *ABS*:0000003e __SP_H__
C:\DOCUME~1\ADMINI~1\LOCALS~1\Temp/ccRlEfUb.s:4 *ABS*:0000003d __SP_L__
C:\DOCUME~1\ADMINI~1\LOCALS~1\Temp/ccRlEfUb.s:5 *ABS*:00000034 __CCP__
C:\DOCUME~1\ADMINI~1\LOCALS~1\Temp/ccRlEfUb.s:6 *ABS*:00000000 __tmp_reg__
C:\DOCUME~1\ADMINI~1\LOCALS~1\Temp/ccRlEfUb.s:7 *ABS*:00000001 __zero_reg__
C:\DOCUME~1\ADMINI~1\LOCALS~1\Temp/ccRlEfUb.s:11 .text:00000000 rc_sum_init
*COM*:00000034 PPM_in
*COM*:00000034 PPM_diff
*COM*:00000034 PPM_in
.bss:00000001 AltICR.0
C:\Users\Arthur-P\AppData\Local\Temp/cc21baaa.s:56 .bss:00000003 index.1
C:\Users\Arthur-P\AppData\Local\Temp/cc21baaa.s:57 .bss:00000005 AltICR.2
C:\Users\Arthur-P\AppData\Local\Temp/cc21baaa.s:58 .bss:00000007 ppm_in.3
C:\Users\Arthur-P\AppData\Local\Temp/cc21baaa.s:59 .bss:00000021 ppm_diff.4
C:\Users\Arthur-P\AppData\Local\Temp/cc21baaa.s:60 .bss:0000003b old_ppm_in.5
C:\Users\Arthur-P\AppData\Local\Temp/cc21baaa.s:61 .bss:00000055 old_ppm_diff.6
C:\Users\Arthur-P\AppData\Local\Temp/cc21baaa.s:62 .bss:0000006f index.7
C:\Users\Arthur-P\AppData\Local\Temp/cc21baaa.s:63 .bss:00000070 okay_cnt.8
C:\Users\Arthur-P\AppData\Local\Temp/cc21baaa.s:67 .text:00000038 __vector_12
C:\DOCUME~1\ADMINI~1\LOCALS~1\Temp/ccRlEfUb.s:45 .text:00000040 __vector_12
C:\DOCUME~1\ADMINI~1\LOCALS~1\Temp/ccRlEfUb.s:616 .bss:0000006f AltICR.2229
C:\DOCUME~1\ADMINI~1\LOCALS~1\Temp/ccRlEfUb.s:615 .bss:0000006d index.2232
*COM*:00000001 Channels
C:\DOCUME~1\ADMINI~1\LOCALS~1\Temp/ccRlEfUb.s:607 .data:00000000 NewPpmData
C:\DOCUME~1\ADMINI~1\LOCALS~1\Temp/ccRlEfUb.s:614 .bss:0000006b AltICR.2233
C:\DOCUME~1\ADMINI~1\LOCALS~1\Temp/ccRlEfUb.s:609 .bss:00000002 index.2240
C:\DOCUME~1\ADMINI~1\LOCALS~1\Temp/ccRlEfUb.s:601 .bss:00000000 tmpChannels
.bss:00000001 okay_cnt.2241
C:\DOCUME~1\ADMINI~1\LOCALS~1\Temp/ccRlEfUb.s:611 .bss:0000001d old_ppm_in.2236
C:\DOCUME~1\ADMINI~1\LOCALS~1\Temp/ccRlEfUb.s:610 .bss:00000003 old_ppm_diff.2237
C:\DOCUME~1\ADMINI~1\LOCALS~1\Temp/ccRlEfUb.s:613 .bss:00000051 ppm_in.2234
C:\DOCUME~1\ADMINI~1\LOCALS~1\Temp/ccRlEfUb.s:612 .bss:00000037 ppm_diff.2235
 
UNDEFINED SYMBOLS
__do_copy_data
__do_clear_bss
AdNeutralGier
AdNeutralRoll
AdNeutralNick
688,3 → 646,5
__divmodhi4
PlatinenVersion
MotorenEin
__do_copy_data
__do_clear_bss