Blame | Last modification | View Log | RSS feed
1 .file "main.c"
2 __SREG__ = 0x3f
3 __SP_H__ = 0x3e
4 __SP_L__ = 0x3d
5 __CCP__ = 0x34
6 __tmp_reg__ = 0
7 __zero_reg__ = 1
8 .text
9 .global GetCPUType
11 GetCPUType:
12 /* prologue: function */
13 /* frame size = 0 */
14 0000 8091 C800 lds r24,200
15 0004 8032 cpi r24,lo8(32)
16 0006 01F0 breq .L2
17 0008 90E0 ldi r25,lo8(0)
18 .L3:
19 000a 892F mov r24,r25
20 /* epilogue start */
21 000c 0895 ret
22 .L2:
23 000e 8091 CA00 lds r24,202
24 0012 90E0 ldi r25,lo8(0)
25 0014 8630 cpi r24,lo8(6)
26 0016 01F4 brne .L3
27 0018 91E0 ldi r25,lo8(1)
28 001a 892F mov r24,r25
29 001c 0895 ret
31 .global GetBoardRelease
33 GetBoardRelease:
34 /* prologue: function */
35 /* frame size = 0 */
36 001e 85B1 in r24,37-32
37 0020 8C7F andi r24,lo8(-4)
38 0022 85B9 out 37-32,r24
39 0024 2098 cbi 36-32,0
40 0026 88EE ldi r24,lo8(1000)
41 0028 93E0 ldi r25,hi8(1000)
42 /* #APP */
43 ; 105 "c:/winavr-20090313/lib/gcc/../../avr/include/util/delay_basic.h" 1
44 002a 0197 1: sbiw r24,1
45 002c 01F4 brne 1b
46 ; 0 "" 2
47 /* #NOAPP */
48 002e 83B1 in r24,35-32
49 0030 90E0 ldi r25,lo8(0)
50 0032 8370 andi r24,lo8(3)
51 0034 9070 andi r25,hi8(3)
52 0036 8230 cpi r24,2
53 0038 9105 cpc r25,__zero_reg__
54 003a 01F0 breq .L10
55 003c 8330 cpi r24,3
56 003e 9105 cpc r25,__zero_reg__
57 0040 01F0 breq .L11
58 0042 0197 sbiw r24,1
59 0044 01F0 breq .L9
60 0046 84B1 in r24,36-32
61 0048 8360 ori r24,lo8(3)
62 004a 84B9 out 36-32,r24
63 004c 8AE0 ldi r24,lo8(10)
64 .L16:
65 004e 289A sbi 37-32,0
66 0050 8C30 cpi r24,lo8(12)
67 0052 00F0 brlo .L18
68 .L13:
69 0054 299A sbi 37-32,1
70 0056 0895 ret
71 .L9:
72 0058 84B1 in r24,36-32
73 005a 8360 ori r24,lo8(3)
74 005c 84B9 out 36-32,r24
75 005e 8BE0 ldi r24,lo8(11)
76 0060 2898 cbi 37-32,0
77 .L19:
78 0062 8C30 cpi r24,lo8(12)
79 0064 00F4 brsh .L13
80 .L18:
81 0066 2998 cbi 37-32,1
82 0068 0895 ret
83 .L11:
84 006a 84B1 in r24,36-32
85 006c 8360 ori r24,lo8(3)
86 006e 84B9 out 36-32,r24
87 0070 8DE0 ldi r24,lo8(13)
88 0072 2898 cbi 37-32,0
89 0074 00C0 rjmp .L19
90 .L10:
91 0076 84B1 in r24,36-32
92 0078 8360 ori r24,lo8(3)
93 007a 84B9 out 36-32,r24
94 007c 84E1 ldi r24,lo8(20)
95 007e 00C0 rjmp .L16
97 .global LipoDetection
99 LipoDetection:
100 0080 1F93 push r17
101 0082 CF93 push r28
102 0084 DF93 push r29
103 /* prologue: function */
104 /* frame size = 0 */
105 0086 182F mov r17,r24
106 0088 8823 tst r24
107 008a 01F0 breq .+2
108 008c 00C0 rjmp .L32
109 .L21:
110 008e 8091 0000 lds r24,ParamSet+30
111 0092 8233 cpi r24,lo8(50)
112 0094 00F0 brlo .L33
113 0096 8093 0000 sts LowVoltageWarning,r24
114 009a 1123 tst r17
115 009c 01F4 brne .L27
116 .L28:
117 /* epilogue start */
118 009e DF91 pop r29
119 00a0 CF91 pop r28
120 00a2 1F91 pop r17
121 00a4 0895 ret
122 .L33:
123 00a6 84EF ldi r24,lo8(500)
124 00a8 91E0 ldi r25,hi8(500)
125 00aa 0E94 0000 call SetDelay
126 00ae EC01 movw r28,r24
127 00b0 1123 tst r17
128 00b2 01F0 breq .+2
129 00b4 00C0 rjmp .L29
130 .L23:
131 00b6 8091 0000 lds r24,UBat
132 00ba 9091 0000 lds r25,(UBat)+1
133 00be 8238 cpi r24,130
134 00c0 9105 cpc r25,__zero_reg__
135 00c2 04F0 brlt .+2
136 00c4 00C0 rjmp .L25
137 00c6 8091 0000 lds r24,ParamSet+30
138 00ca 23E0 ldi r18,lo8(3)
139 00cc 829F mul r24,r18
140 00ce C001 movw r24,r0
141 00d0 1124 clr r1
142 00d2 8093 0000 sts LowVoltageWarning,r24
143 00d6 1123 tst r17
144 00d8 01F0 breq .L28
145 00da 83E0 ldi r24,lo8(3)
146 00dc 68EC ldi r22,lo8(200)
147 00de 70E0 ldi r23,hi8(200)
148 00e0 0E94 0000 call Beep
149 00e4 00D0 rcall .
150 00e6 0F92 push __tmp_reg__
151 00e8 EDB7 in r30,__SP_L__
152 00ea FEB7 in r31,__SP_H__
153 00ec 1182 std Z+1,__zero_reg__
154 00ee 80E0 ldi r24,lo8(__c.1914)
155 00f0 90E0 ldi r25,hi8(__c.1914)
156 00f2 9383 std Z+3,r25
157 00f4 8283 std Z+2,r24
158 00f6 0E94 0000 call _printf_P
159 00fa 0F90 pop __tmp_reg__
160 00fc 0F90 pop __tmp_reg__
161 00fe 0F90 pop __tmp_reg__
162 .L27:
163 0100 2091 0000 lds r18,LowVoltageWarning
164 0104 EDB7 in r30,__SP_L__
165 0106 FEB7 in r31,__SP_H__
166 0108 3797 sbiw r30,7
167 010a 0FB6 in __tmp_reg__,__SREG__
168 010c F894 cli
169 010e FEBF out __SP_H__,r31
170 0110 0FBE out __SREG__,__tmp_reg__
171 0112 EDBF out __SP_L__,r30
172 0114 3196 adiw r30,1
173 0116 ADB7 in r26,__SP_L__
174 0118 BEB7 in r27,__SP_H__
175 011a 1196 adiw r26,1
176 011c 1C92 st X,__zero_reg__
177 011e 80E0 ldi r24,lo8(__c.1918)
178 0120 90E0 ldi r25,hi8(__c.1918)
179 0122 9283 std Z+2,r25
180 0124 8183 std Z+1,r24
181 0126 822F mov r24,r18
182 0128 6AE0 ldi r22,lo8(10)
183 012a 0E94 0000 call __udivmodqi4
184 012e 8383 std Z+3,r24
185 0130 1482 std Z+4,__zero_reg__
186 0132 822F mov r24,r18
187 0134 0E94 0000 call __udivmodqi4
188 0138 9583 std Z+5,r25
189 013a 1682 std Z+6,__zero_reg__
190 013c 0E94 0000 call _printf_P
191 0140 EDB7 in r30,__SP_L__
192 0142 FEB7 in r31,__SP_H__
193 0144 3796 adiw r30,7
194 0146 0FB6 in __tmp_reg__,__SREG__
195 0148 F894 cli
196 014a FEBF out __SP_H__,r31
197 014c 0FBE out __SREG__,__tmp_reg__
198 014e EDBF out __SP_L__,r30
199 0150 DF91 pop r29
200 0152 CF91 pop r28
201 0154 1F91 pop r17
202 0156 0895 ret
203 .L29:
204 0158 CE01 movw r24,r28
205 015a 0E94 0000 call CheckDelay
206 015e 8823 tst r24
207 0160 01F0 breq .+2
208 0162 00C0 rjmp .L23
209 0164 CE01 movw r24,r28
210 0166 0E94 0000 call CheckDelay
211 016a 8823 tst r24
212 016c 01F0 breq .L29
213 016e 00C0 rjmp .L23
214 .L32:
215 0170 00D0 rcall .
216 0172 0F92 push __tmp_reg__
217 0174 ADB7 in r26,__SP_L__
218 0176 BEB7 in r27,__SP_H__
219 0178 1196 adiw r26,1
220 017a 1C92 st X,__zero_reg__
221 017c 1197 sbiw r26,1
222 017e 80E0 ldi r24,lo8(__c.1909)
223 0180 90E0 ldi r25,hi8(__c.1909)
224 0182 1396 adiw r26,2+1
225 0184 9C93 st X,r25
226 0186 8E93 st -X,r24
227 0188 1297 sbiw r26,2
228 018a 0E94 0000 call _printf_P
229 018e 0F90 pop __tmp_reg__
230 0190 0F90 pop __tmp_reg__
231 0192 0F90 pop __tmp_reg__
232 0194 00C0 rjmp .L21
233 .L25:
234 0196 8091 0000 lds r24,ParamSet+30
235 019a 90E0 ldi r25,lo8(0)
236 019c 880F lsl r24
237 019e 991F rol r25
238 01a0 880F lsl r24
239 01a2 991F rol r25
240 01a4 8093 0000 sts LowVoltageWarning,r24
241 01a8 1123 tst r17
242 01aa 01F4 brne .+2
243 01ac 00C0 rjmp .L28
244 01ae 84E0 ldi r24,lo8(4)
245 01b0 68EC ldi r22,lo8(200)
246 01b2 70E0 ldi r23,hi8(200)
247 01b4 0E94 0000 call Beep
248 01b8 00D0 rcall .
249 01ba 0F92 push __tmp_reg__
250 01bc ADB7 in r26,__SP_L__
251 01be BEB7 in r27,__SP_H__
252 01c0 1196 adiw r26,1
253 01c2 1C92 st X,__zero_reg__
254 01c4 1197 sbiw r26,1
255 01c6 80E0 ldi r24,lo8(__c.1916)
256 01c8 90E0 ldi r25,hi8(__c.1916)
257 01ca 1396 adiw r26,2+1
258 01cc 9C93 st X,r25
259 01ce 8E93 st -X,r24
260 01d0 1297 sbiw r26,2
261 01d2 0E94 0000 call _printf_P
262 01d6 0F90 pop __tmp_reg__
263 01d8 0F90 pop __tmp_reg__
264 01da 0F90 pop __tmp_reg__
265 01dc 00C0 rjmp .L27
267 .global main
269 main:
270 01de 2F92 push r2
271 01e0 3F92 push r3
272 01e2 4F92 push r4
273 01e4 5F92 push r5
274 01e6 6F92 push r6
275 01e8 7F92 push r7
276 01ea 8F92 push r8
277 01ec 9F92 push r9
278 01ee AF92 push r10
279 01f0 BF92 push r11
280 01f2 CF92 push r12
281 01f4 DF92 push r13
282 01f6 EF92 push r14
283 01f8 FF92 push r15
284 01fa 0F93 push r16
285 01fc 1F93 push r17
286 01fe CF93 push r28
287 0200 DF93 push r29
288 /* prologue: function */
289 /* frame size = 0 */
290 /* #APP */
291 ; 172 "main.c" 1
292 0202 F894 cli
293 ; 0 "" 2
294 /* #NOAPP */
295 0204 8091 C800 lds r24,200
296 0208 8032 cpi r24,lo8(32)
297 020a 01F4 brne .+2
298 020c 00C0 rjmp .L35
299 020e 90E0 ldi r25,lo8(0)
300 .L36:
301 0210 9093 0000 sts CPUType,r25
302 0214 0E94 0000 call GetBoardRelease
303 0218 282F mov r18,r24
304 021a 8093 0000 sts BoardRelease,r24
305 021e 84B7 in r24,84-32
306 0220 877F andi r24,lo8(-9)
307 0222 84BF out 84-32,r24
308 0224 8091 6000 lds r24,96
309 0228 8861 ori r24,lo8(24)
310 022a 8093 6000 sts 96,r24
311 022e 1092 6000 sts 96,__zero_reg__
312 0232 80ED ldi r24,lo8(2000)
313 0234 97E0 ldi r25,hi8(2000)
314 0236 9093 0000 sts (BeepTime)+1,r25
315 023a 8093 0000 sts BeepTime,r24
316 023e 1092 0000 sts (PPM_in+4)+1,__zero_reg__
317 0242 1092 0000 sts PPM_in+4,__zero_reg__
318 0246 1092 0000 sts (StickYaw)+1,__zero_reg__
319 024a 1092 0000 sts StickYaw,__zero_reg__
320 024e 1092 0000 sts (StickRoll)+1,__zero_reg__
321 0252 1092 0000 sts StickRoll,__zero_reg__
322 0256 1092 0000 sts (StickNick)+1,__zero_reg__
323 025a 1092 0000 sts StickNick,__zero_reg__
324 025e 2A30 cpi r18,lo8(10)
325 0260 01F4 brne .+2
326 0262 00C0 rjmp .L38
327 0264 2431 cpi r18,lo8(20)
328 0266 01F4 brne .+2
329 0268 00C0 rjmp .L38
330 026a 289A sbi 37-32,0
331 .L40:
332 026c 0E94 0000 call LED_Init
333 0270 0E94 0000 call TIMER0_Init
334 0274 0E94 0000 call TIMER2_Init
335 0278 0E94 0000 call USART0_Init
336 027c 8091 0000 lds r24,CPUType
337 0280 8130 cpi r24,lo8(1)
338 0282 01F4 brne .+2
339 0284 00C0 rjmp .L104
340 .L41:
341 0286 0E94 0000 call RC_Init
342 028a 0E94 0000 call ADC_Init
343 028e 0E94 0000 call I2C_Init
344 0292 0E94 0000 call SPI_MasterInit
345 /* #APP */
346 ; 212 "main.c" 1
347 0296 7894 sei
348 ; 0 "" 2
349 /* #NOAPP */
350 0298 00D0 rcall .
351 029a 0F92 push __tmp_reg__
352 029c ADB7 in r26,__SP_L__
353 029e BEB7 in r27,__SP_H__
354 02a0 1196 adiw r26,1
355 02a2 1C92 st X,__zero_reg__
356 02a4 1197 sbiw r26,1
357 02a6 80E0 ldi r24,lo8(__c.1940)
358 02a8 90E0 ldi r25,hi8(__c.1940)
359 02aa 1396 adiw r26,2+1
360 02ac 9C93 st X,r25
361 02ae 8E93 st -X,r24
362 02b0 1297 sbiw r26,2
363 02b2 0E94 0000 call _printf_P
364 02b6 EDB7 in r30,__SP_L__
365 02b8 FEB7 in r31,__SP_H__
366 02ba 1182 std Z+1,__zero_reg__
367 02bc 80E0 ldi r24,lo8(__c.1942)
368 02be 90E0 ldi r25,hi8(__c.1942)
369 02c0 9383 std Z+3,r25
370 02c2 8283 std Z+2,r24
371 02c4 0E94 0000 call _printf_P
372 02c8 2091 0000 lds r18,BoardRelease
373 02cc 00D0 rcall .
374 02ce 00D0 rcall .
375 02d0 EDB7 in r30,__SP_L__
376 02d2 FEB7 in r31,__SP_H__
377 02d4 3196 adiw r30,1
378 02d6 ADB7 in r26,__SP_L__
379 02d8 BEB7 in r27,__SP_H__
380 02da 1196 adiw r26,1
381 02dc 1C92 st X,__zero_reg__
382 02de 80E0 ldi r24,lo8(__c.1944)
383 02e0 90E0 ldi r25,hi8(__c.1944)
384 02e2 9283 std Z+2,r25
385 02e4 8183 std Z+1,r24
386 02e6 822F mov r24,r18
387 02e8 6AE0 ldi r22,lo8(10)
388 02ea 0E94 0000 call __udivmodqi4
389 02ee 8383 std Z+3,r24
390 02f0 1482 std Z+4,__zero_reg__
391 02f2 822F mov r24,r18
392 02f4 0E94 0000 call __udivmodqi4
393 02f8 9583 std Z+5,r25
394 02fa 1682 std Z+6,__zero_reg__
395 02fc 0E94 0000 call _printf_P
396 0300 0F90 pop __tmp_reg__
397 0302 0F90 pop __tmp_reg__
398 0304 0F90 pop __tmp_reg__
399 0306 0F90 pop __tmp_reg__
400 0308 EDB7 in r30,__SP_L__
401 030a FEB7 in r31,__SP_H__
402 030c 1182 std Z+1,__zero_reg__
403 030e 80E0 ldi r24,lo8(__c.1946)
404 0310 90E0 ldi r25,hi8(__c.1946)
405 0312 9383 std Z+3,r25
406 0314 8283 std Z+2,r24
407 0316 0E94 0000 call _printf_P
408 031a ADB7 in r26,__SP_L__
409 031c BEB7 in r27,__SP_H__
410 031e 1196 adiw r26,1
411 0320 1C92 st X,__zero_reg__
412 0322 1197 sbiw r26,1
413 0324 80E0 ldi r24,lo8(__c.1948)
414 0326 90E0 ldi r25,hi8(__c.1948)
415 0328 1396 adiw r26,2+1
416 032a 9C93 st X,r25
417 032c 8E93 st -X,r24
418 032e 1297 sbiw r26,2
419 0330 0E94 0000 call _printf_P
420 0334 EDB7 in r30,__SP_L__
421 0336 FEB7 in r31,__SP_H__
422 0338 1182 std Z+1,__zero_reg__
423 033a 80E0 ldi r24,lo8(__c.1950)
424 033c 90E0 ldi r25,hi8(__c.1950)
425 033e 9383 std Z+3,r25
426 0340 8283 std Z+2,r24
427 0342 0E94 0000 call _printf_P
428 0346 0F90 pop __tmp_reg__
429 0348 0F90 pop __tmp_reg__
430 034a 0F90 pop __tmp_reg__
431 034c 8091 0000 lds r24,CPUType
432 0350 8130 cpi r24,lo8(1)
433 0352 01F4 brne .+2
434 0354 00C0 rjmp .L105
435 0356 00D0 rcall .
436 0358 0F92 push __tmp_reg__
437 035a EDB7 in r30,__SP_L__
438 035c FEB7 in r31,__SP_H__
439 035e 1182 std Z+1,__zero_reg__
440 0360 80E0 ldi r24,lo8(__c.1954)
441 0362 90E0 ldi r25,hi8(__c.1954)
442 0364 9383 std Z+3,r25
443 0366 8283 std Z+2,r24
444 0368 0E94 0000 call _printf_P
445 036c 0F90 pop __tmp_reg__
446 036e 0F90 pop __tmp_reg__
447 0370 0F90 pop __tmp_reg__
448 .L43:
449 0372 8DB7 in r24,__SP_L__
450 0374 9EB7 in r25,__SP_H__
451 0376 0997 sbiw r24,9
452 0378 0FB6 in __tmp_reg__,__SREG__
453 037a F894 cli
454 037c 9EBF out __SP_H__,r25
455 037e 0FBE out __SREG__,__tmp_reg__
456 0380 8DBF out __SP_L__,r24
457 0382 EDB7 in r30,__SP_L__
458 0384 FEB7 in r31,__SP_H__
459 0386 3196 adiw r30,1
460 0388 ADB7 in r26,__SP_L__
461 038a BEB7 in r27,__SP_H__
462 038c 1196 adiw r26,1
463 038e 1C92 st X,__zero_reg__
464 0390 80E0 ldi r24,lo8(__c.1956)
465 0392 90E0 ldi r25,hi8(__c.1956)
466 0394 9283 std Z+2,r25
467 0396 8183 std Z+1,r24
468 0398 1482 std Z+4,__zero_reg__
469 039a 1382 std Z+3,__zero_reg__
470 039c 8CE4 ldi r24,lo8(76)
471 039e 90E0 ldi r25,hi8(76)
472 03a0 9683 std Z+6,r25
473 03a2 8583 std Z+5,r24
474 03a4 87E6 ldi r24,lo8(103)
475 03a6 90E0 ldi r25,hi8(103)
476 03a8 9087 std Z+8,r25
477 03aa 8783 std Z+7,r24
478 03ac 0E94 0000 call _printf_P
479 03b0 EDB7 in r30,__SP_L__
480 03b2 FEB7 in r31,__SP_H__
481 03b4 3696 adiw r30,6
482 03b6 0FB6 in __tmp_reg__,__SREG__
483 03b8 F894 cli
484 03ba FEBF out __SP_H__,r31
485 03bc 0FBE out __SREG__,__tmp_reg__
486 03be EDBF out __SP_L__,r30
487 03c0 1182 std Z+1,__zero_reg__
488 03c2 80E0 ldi r24,lo8(__c.1958)
489 03c4 90E0 ldi r25,hi8(__c.1958)
490 03c6 9383 std Z+3,r25
491 03c8 8283 std Z+2,r24
492 03ca 0E94 0000 call _printf_P
493 03ce 0F90 pop __tmp_reg__
494 03d0 0F90 pop __tmp_reg__
495 03d2 0F90 pop __tmp_reg__
496 03d4 8091 0000 lds r24,BoardRelease
497 03d8 8C30 cpi r24,lo8(12)
498 03da 00F0 brlo .+2
499 03dc 00C0 rjmp .L44
500 03de 299A sbi 37-32,1
501 .L45:
502 03e0 0E94 0000 call ParamSet_Init
503 03e4 00D0 rcall .
504 03e6 0F92 push __tmp_reg__
505 03e8 ADB7 in r26,__SP_L__
506 03ea BEB7 in r27,__SP_H__
507 03ec 1196 adiw r26,1
508 03ee 1C92 st X,__zero_reg__
509 03f0 1197 sbiw r26,1
510 03f2 80E0 ldi r24,lo8(__c.1960)
511 03f4 90E0 ldi r25,hi8(__c.1960)
512 03f6 1396 adiw r26,2+1
513 03f8 9C93 st X,r25
514 03fa 8E93 st -X,r24
515 03fc 1297 sbiw r26,2
516 03fe 0E94 0000 call _printf_P
517 0402 1092 0000 sts motor_read,__zero_reg__
518 0406 1092 0000 sts UpdateMotor,__zero_reg__
519 040a 0F90 pop __tmp_reg__
520 040c 0F90 pop __tmp_reg__
521 040e 0F90 pop __tmp_reg__
522 0410 0E94 0000 call SendMotorData
523 .L46:
524 0414 8091 0000 lds r24,UpdateMotor
525 0418 8823 tst r24
526 041a 01F0 breq .L46
527 041c 1092 0000 sts motor_read,__zero_reg__
528 0420 80ED ldi r24,lo8(2000)
529 0422 97E0 ldi r25,hi8(2000)
530 0424 0E94 0000 call SetDelay
531 0428 8C01 movw r16,r24
532 042a 20E0 ldi r18,lo8(Motor+1)
533 042c C22E mov r12,r18
534 042e 20E0 ldi r18,hi8(Motor+1)
535 0430 D22E mov r13,r18
536 0432 90E0 ldi r25,lo8(Mixer+13)
537 0434 892E mov r8,r25
538 0436 90E0 ldi r25,hi8(Mixer+13)
539 0438 992E mov r9,r25
540 043a E601 movw r28,r12
541 043c 5401 movw r10,r8
542 043e 81E0 ldi r24,lo8(1)
543 0440 E82E mov r14,r24
544 0442 F12C mov r15,__zero_reg__
545 0444 B0E0 ldi r27,lo8(__c.1974)
546 0446 6B2E mov r6,r27
547 0448 B0E0 ldi r27,hi8(__c.1974)
548 044a 7B2E mov r7,r27
549 .L54:
550 044c 1092 0000 sts UpdateMotor,__zero_reg__
551 0450 0E94 0000 call SendMotorData
552 .L47:
553 0454 8091 0000 lds r24,UpdateMotor
554 0458 8823 tst r24
555 045a 01F0 breq .L47
556 045c F501 movw r30,r10
557 045e 8081 ld r24,Z
558 0460 1816 cp __zero_reg__,r24
559 0462 04F4 brge .L49
560 0464 C801 movw r24,r16
561 0466 0E94 0000 call CheckDelay
562 046a 8823 tst r24
563 046c 01F4 brne .L49
564 .L106:
565 046e 8881 ld r24,Y
566 0470 8823 tst r24
567 0472 01F0 breq .+2
568 0474 00C0 rjmp .L52
569 0476 1092 0000 sts UpdateMotor,__zero_reg__
570 047a 0E94 0000 call SendMotorData
571 .L50:
572 047e 8091 0000 lds r24,UpdateMotor
573 0482 8823 tst r24
574 0484 01F0 breq .L50
575 0486 C801 movw r24,r16
576 0488 0E94 0000 call CheckDelay
577 048c 8823 tst r24
578 048e 01F0 breq .L106
579 .L49:
580 0490 8881 ld r24,Y
581 0492 8823 tst r24
582 0494 01F0 breq .+2
583 0496 00C0 rjmp .L52
584 .L53:
585 0498 2596 adiw r28,5
586 049a 0894 sec
587 049c E11C adc r14,__zero_reg__
588 049e F11C adc r15,__zero_reg__
589 04a0 E4E0 ldi r30,lo8(4)
590 04a2 F0E0 ldi r31,hi8(4)
591 04a4 AE0E add r10,r30
592 04a6 BF1E adc r11,r31
593 04a8 F0E0 ldi r31,hi8(Motor+61)
594 04aa C030 cpi r28,lo8(Motor+61)
595 04ac DF07 cpc r29,r31
596 04ae 01F4 brne .L54
597 04b0 01E0 ldi r16,lo8(1)
598 04b2 10E0 ldi r17,hi8(1)
599 04b4 A0E0 ldi r26,lo8(__c.1979)
600 04b6 EA2E mov r14,r26
601 04b8 A0E0 ldi r26,hi8(__c.1979)
602 04ba FA2E mov r15,r26
603 .L56:
604 04bc D601 movw r26,r12
605 04be 8C91 ld r24,X
606 04c0 8823 tst r24
607 04c2 01F4 brne .L55
608 04c4 F401 movw r30,r8
609 04c6 8081 ld r24,Z
610 04c8 1816 cp __zero_reg__,r24
611 04ca 04F4 brge .L55
612 04cc 00D0 rcall .
613 04ce 00D0 rcall .
614 04d0 0F92 push __tmp_reg__
615 04d2 EDB7 in r30,__SP_L__
616 04d4 FEB7 in r31,__SP_H__
617 04d6 3196 adiw r30,1
618 04d8 ADB7 in r26,__SP_L__
619 04da BEB7 in r27,__SP_H__
620 04dc 1196 adiw r26,1
621 04de 1C92 st X,__zero_reg__
622 04e0 F282 std Z+2,r15
623 04e2 E182 std Z+1,r14
624 04e4 1483 std Z+4,r17
625 04e6 0383 std Z+3,r16
626 04e8 0E94 0000 call _printf_P
627 04ec 0F90 pop __tmp_reg__
628 04ee 0F90 pop __tmp_reg__
629 04f0 0F90 pop __tmp_reg__
630 04f2 0F90 pop __tmp_reg__
631 04f4 0F90 pop __tmp_reg__
632 04f6 0E94 0000 call Servo_On
633 .L55:
634 04fa F601 movw r30,r12
635 04fc 1182 std Z+1,__zero_reg__
636 04fe 85E0 ldi r24,lo8(5)
637 0500 90E0 ldi r25,hi8(5)
638 0502 C80E add r12,r24
639 0504 D91E adc r13,r25
640 0506 A4E0 ldi r26,lo8(4)
641 0508 B0E0 ldi r27,hi8(4)
642 050a 8A0E add r8,r26
643 050c 9B1E adc r9,r27
644 050e 0F5F subi r16,lo8(-(1))
645 0510 1F4F sbci r17,hi8(-(1))
646 0512 CC15 cp r28,r12
647 0514 DD05 cpc r29,r13
648 0516 01F4 brne .L56
649 0518 00D0 rcall .
650 051a 0F92 push __tmp_reg__
651 051c EDB7 in r30,__SP_L__
652 051e FEB7 in r31,__SP_H__
653 0520 1182 std Z+1,__zero_reg__
654 0522 80E0 ldi r24,lo8(__c.1984)
655 0524 90E0 ldi r25,hi8(__c.1984)
656 0526 9383 std Z+3,r25
657 0528 8283 std Z+2,r24
658 052a 0E94 0000 call _printf_P
659 052e 0F90 pop __tmp_reg__
660 0530 0F90 pop __tmp_reg__
661 0532 0F90 pop __tmp_reg__
662 0534 0E94 0000 call SendMotorData
663 0538 84EF ldi r24,lo8(500)
664 053a 91E0 ldi r25,hi8(500)
665 053c 0E94 0000 call SetDelay
666 0540 EC01 movw r28,r24
667 .L57:
668 0542 CE01 movw r24,r28
669 0544 0E94 0000 call CheckDelay
670 0548 8823 tst r24
671 054a 01F0 breq .L57
672 054c 8091 0000 lds r24,ParamSet+8
673 0550 80FD sbrc r24,0
674 0552 00C0 rjmp .L107
675 .L58:
676 0554 00D0 rcall .
677 0556 0F92 push __tmp_reg__
678 0558 ADB7 in r26,__SP_L__
679 055a BEB7 in r27,__SP_H__
680 055c 1196 adiw r26,1
681 055e 1C92 st X,__zero_reg__
682 0560 1197 sbiw r26,1
683 0562 80E0 ldi r24,lo8(__c.1996)
684 0564 90E0 ldi r25,hi8(__c.1996)
685 0566 1396 adiw r26,2+1
686 0568 9C93 st X,r25
687 056a 8E93 st -X,r24
688 056c 1297 sbiw r26,2
689 056e 0E94 0000 call _printf_P
690 0572 EDB7 in r30,__SP_L__
691 0574 FEB7 in r31,__SP_H__
692 0576 1182 std Z+1,__zero_reg__
693 0578 80E0 ldi r24,lo8(__c.1998)
694 057a 90E0 ldi r25,hi8(__c.1998)
695 057c 9383 std Z+3,r25
696 057e 8283 std Z+2,r24
697 0580 0E94 0000 call _printf_P
698 0584 0F90 pop __tmp_reg__
699 0586 0F90 pop __tmp_reg__
700 0588 0F90 pop __tmp_reg__
701 058a 80E0 ldi r24,lo8(0)
702 058c 0E94 0000 call SetNeutral
703 0590 8091 0000 lds r24,BoardRelease
704 0594 8A30 cpi r24,lo8(10)
705 0596 01F4 brne .+2
706 0598 00C0 rjmp .L60
707 059a 8431 cpi r24,lo8(20)
708 059c 01F4 brne .+2
709 059e 00C0 rjmp .L60
710 05a0 289A sbi 37-32,0
711 .L62:
712 05a2 80ED ldi r24,lo8(2000)
713 05a4 97E0 ldi r25,hi8(2000)
714 05a6 9093 0000 sts (BeepTime)+1,r25
715 05aa 8093 0000 sts BeepTime,r24
716 05ae 85E5 ldi r24,lo8(85)
717 05b0 8093 0000 sts ExternControl,r24
718 05b4 8EE0 ldi r24,lo8(14)
719 05b6 90E0 ldi r25,hi8(14)
720 05b8 0E94 0000 call GetParamWord
721 05bc 9093 0000 sts (FlightMinutes)+1,r25
722 05c0 8093 0000 sts FlightMinutes,r24
723 05c4 8AE0 ldi r24,lo8(10)
724 05c6 90E0 ldi r25,hi8(10)
725 05c8 0E94 0000 call GetParamWord
726 05cc 9093 0000 sts (FlightMinutesTotal)+1,r25
727 05d0 8093 0000 sts FlightMinutesTotal,r24
728 05d4 8F5F subi r24,lo8(-1)
729 05d6 9F4F sbci r25,hi8(-1)
730 05d8 01F4 brne .+2
731 05da 00C0 rjmp .L63
732 05dc 8091 0000 lds r24,FlightMinutes
733 05e0 9091 0000 lds r25,(FlightMinutes)+1
734 05e4 8F5F subi r24,lo8(-1)
735 05e6 9F4F sbci r25,hi8(-1)
736 05e8 01F4 brne .+2
737 05ea 00C0 rjmp .L63
738 .L64:
739 05ec 8DB7 in r24,__SP_L__
740 05ee 9EB7 in r25,__SP_H__
741 05f0 0797 sbiw r24,7
742 05f2 0FB6 in __tmp_reg__,__SREG__
743 05f4 F894 cli
744 05f6 9EBF out __SP_H__,r25
745 05f8 0FBE out __SREG__,__tmp_reg__
746 05fa 8DBF out __SP_L__,r24
747 05fc EDB7 in r30,__SP_L__
748 05fe FEB7 in r31,__SP_H__
749 0600 3196 adiw r30,1
750 0602 ADB7 in r26,__SP_L__
751 0604 BEB7 in r27,__SP_H__
752 0606 1196 adiw r26,1
753 0608 1C92 st X,__zero_reg__
754 060a 80E0 ldi r24,lo8(__c.2000)
755 060c 90E0 ldi r25,hi8(__c.2000)
756 060e 9283 std Z+2,r25
757 0610 8183 std Z+1,r24
758 0612 8091 0000 lds r24,FlightMinutes
759 0616 9091 0000 lds r25,(FlightMinutes)+1
760 061a 9483 std Z+4,r25
761 061c 8383 std Z+3,r24
762 061e 8091 0000 lds r24,FlightMinutesTotal
763 0622 9091 0000 lds r25,(FlightMinutesTotal)+1
764 0626 9683 std Z+6,r25
765 0628 8583 std Z+5,r24
766 062a 0E94 0000 call _printf_P
767 062e 0F90 pop __tmp_reg__
768 0630 0F90 pop __tmp_reg__
769 0632 0F90 pop __tmp_reg__
770 0634 0F90 pop __tmp_reg__
771 0636 EDB7 in r30,__SP_L__
772 0638 FEB7 in r31,__SP_H__
773 063a 1182 std Z+1,__zero_reg__
774 063c 80E0 ldi r24,lo8(__c.2002)
775 063e 90E0 ldi r25,hi8(__c.2002)
776 0640 9383 std Z+3,r25
777 0642 8283 std Z+2,r24
778 0644 0E94 0000 call _printf_P
779 0648 8091 0000 lds r24,ParamSet+8
780 064c 0F90 pop __tmp_reg__
781 064e 0F90 pop __tmp_reg__
782 0650 0F90 pop __tmp_reg__
783 0652 82FF sbrs r24,2
784 0654 00C0 rjmp .L65
785 0656 00D0 rcall .
786 0658 0F92 push __tmp_reg__
787 065a ADB7 in r26,__SP_L__
788 065c BEB7 in r27,__SP_H__
789 065e 1196 adiw r26,1
790 0660 1C92 st X,__zero_reg__
791 0662 1197 sbiw r26,1
792 0664 80E0 ldi r24,lo8(__c.2004)
793 0666 90E0 ldi r25,hi8(__c.2004)
794 0668 1396 adiw r26,2+1
795 066a 9C93 st X,r25
796 066c 8E93 st -X,r24
797 066e 1297 sbiw r26,2
798 0670 0E94 0000 call _printf_P
799 0674 0F90 pop __tmp_reg__
800 0676 0F90 pop __tmp_reg__
801 0678 0F90 pop __tmp_reg__
802 .L66:
803 067a 0E94 0000 call LCD_Clear
804 067e 88E8 ldi r24,lo8(5000)
805 0680 93E1 ldi r25,hi8(5000)
806 0682 9093 0000 sts (I2CTimeout)+1,r25
807 0686 8093 0000 sts I2CTimeout,r24
808 068a 81E0 ldi r24,lo8(1)
809 068c 0E94 0000 call LipoDetection
810 0690 00D0 rcall .
811 0692 0F92 push __tmp_reg__
812 0694 ADB7 in r26,__SP_L__
813 0696 BEB7 in r27,__SP_H__
814 0698 1196 adiw r26,1
815 069a 1C92 st X,__zero_reg__
816 069c 1197 sbiw r26,1
817 069e 80E0 ldi r24,lo8(__c.2008)
818 06a0 90E0 ldi r25,hi8(__c.2008)
819 06a2 1396 adiw r26,2+1
820 06a4 9C93 st X,r25
821 06a6 8E93 st -X,r24
822 06a8 1297 sbiw r26,2
823 06aa 0E94 0000 call _printf_P
824 06ae 0F90 pop __tmp_reg__
825 06b0 0F90 pop __tmp_reg__
826 06b2 0F90 pop __tmp_reg__
827 06b4 80ED ldi r24,lo8(2000)
828 06b6 97E0 ldi r25,hi8(2000)
829 06b8 0E94 0000 call SetDelay
830 06bc EC01 movw r28,r24
831 06be 00E0 ldi r16,lo8(0)
832 06c0 10E0 ldi r17,hi8(0)
833 06c2 F4E0 ldi r31,lo8(4)
834 06c4 FF2E mov r15,r31
835 06c6 C12C mov r12,__zero_reg__
836 06c8 E3E0 ldi r30,hi8(768)
837 06ca DE2E mov r13,r30
838 06cc 70E7 ldi r23,lo8(6000)
839 06ce 872E mov r8,r23
840 06d0 77E1 ldi r23,hi8(6000)
841 06d2 972E mov r9,r23
842 06d4 68E9 ldi r22,lo8(15000)
843 06d6 262E mov r2,r22
844 06d8 6AE3 ldi r22,hi8(15000)
845 06da 362E mov r3,r22
846 06dc 50E1 ldi r21,lo8(10000)
847 06de 652E mov r6,r21
848 06e0 57E2 ldi r21,hi8(10000)
849 06e2 752E mov r7,r21
850 06e4 40E8 ldi r20,lo8(128)
851 06e6 442E mov r4,r20
852 06e8 512C mov r5,__zero_reg__
853 06ea 35E0 ldi r19,lo8(5)
854 06ec A32E mov r10,r19
855 06ee B12C mov r11,__zero_reg__
856 .L103:
857 06f0 8091 0000 lds r24,UpdateMotor
858 06f4 8823 tst r24
859 06f6 01F0 breq .L67
860 06f8 8091 0000 lds r24,ADReady
861 06fc 8823 tst r24
862 06fe 01F4 brne .L108
863 .L67:
864 0700 8091 0000 lds r24,SendSPI
865 0704 8823 tst r24
866 0706 01F4 brne .L103
867 0708 0E94 0000 call SPI_TransmitByte
868 070c 8091 0000 lds r24,UpdateMotor
869 0710 8823 tst r24
870 0712 01F0 breq .L67
871 0714 8091 0000 lds r24,ADReady
872 0718 8823 tst r24
873 071a 01F0 breq .L67
874 .L108:
875 071c 1092 0000 sts UpdateMotor,__zero_reg__
876 0720 0E94 0000 call MotorControl
877 0724 0E94 0000 call SendMotorData
878 0728 2091 0000 lds r18,BoardRelease
879 072c 2A30 cpi r18,lo8(10)
880 072e 01F4 brne .+2
881 0730 00C0 rjmp .L68
882 0732 2431 cpi r18,lo8(20)
883 0734 01F4 brne .+2
884 0736 00C0 rjmp .L68
885 0738 289A sbi 37-32,0
886 073a 8091 0000 lds r24,RC_Quality
887 073e 8823 tst r24
888 0740 01F4 brne .+2
889 0742 00C0 rjmp .L71
890 .L110:
891 0744 8091 0000 lds r24,RC_Quality
892 0748 8150 subi r24,lo8(-(-1))
893 074a 8093 0000 sts RC_Quality,r24
894 .L72:
895 074e 8091 0000 lds r24,NCDataOkay
896 0752 8823 tst r24
897 0754 01F0 breq .L73
898 0756 8150 subi r24,lo8(-(-1))
899 0758 8093 0000 sts NCDataOkay,r24
900 075c 8823 tst r24
901 075e 01F4 brne .L73
902 0760 1092 0000 sts (GPSStickNick)+1,__zero_reg__
903 0764 1092 0000 sts GPSStickNick,__zero_reg__
904 0768 1092 0000 sts (GPSStickRoll)+1,__zero_reg__
905 076c 1092 0000 sts GPSStickRoll,__zero_reg__
906 0770 1092 0000 sts NCSerialDataOkay,__zero_reg__
907 0774 1092 0000 sts NCGpsZ,__zero_reg__
908 .L73:
909 0778 8091 0000 lds r24,I2CTimeout
910 077c 9091 0000 lds r25,(I2CTimeout)+1
911 0780 0197 sbiw r24,1
912 0782 9093 0000 sts (I2CTimeout)+1,r25
913 0786 8093 0000 sts I2CTimeout,r24
914 078a 8091 0000 lds r24,I2CTimeout
915 078e 9091 0000 lds r25,(I2CTimeout)+1
916 0792 892B or r24,r25
917 0794 01F4 brne .+2
918 0796 00C0 rjmp .L74
919 0798 8091 0000 lds r24,MissingMotor
920 079c 8823 tst r24
921 079e 01F0 breq .+2
922 07a0 00C0 rjmp .L74
923 07a2 2A30 cpi r18,lo8(10)
924 07a4 01F4 brne .+2
925 07a6 00C0 rjmp .L81
926 07a8 2431 cpi r18,lo8(20)
927 07aa 01F4 brne .+2
928 07ac 00C0 rjmp .L81
929 07ae 289A sbi 37-32,0
930 .L80:
931 07b0 8091 0000 lds r24,UpdateMotor
932 07b4 8823 tst r24
933 07b6 01F0 breq .L83
934 07b8 8091 0000 lds r24,MKFlags
935 07bc 80FD sbrc r24,0
936 07be 00C0 rjmp .L84
937 .L83:
938 07c0 0E94 0000 call USART0_TransmitTxData
939 .L84:
940 07c4 0E94 0000 call USART0_ProcessRxData
941 07c8 CE01 movw r24,r28
942 07ca 0E94 0000 call CheckDelay
943 07ce 8823 tst r24
944 07d0 01F0 breq .L85
945 07d2 6496 adiw r28,20
946 07d4 8091 0000 lds r24,PcAccess
947 07d8 8823 tst r24
948 07da 01F4 brne .+2
949 07dc 00C0 rjmp .L86
950 07de 8150 subi r24,lo8(-(-1))
951 07e0 8093 0000 sts PcAccess,r24
952 .L87:
953 07e4 2091 0000 lds r18,UBat
954 07e8 3091 0000 lds r19,(UBat)+1
955 07ec 8091 0000 lds r24,LowVoltageWarning
956 07f0 90E0 ldi r25,lo8(0)
957 07f2 2817 cp r18,r24
958 07f4 3907 cpc r19,r25
959 07f6 04F0 brlt .+2
960 07f8 00C0 rjmp .L88
961 07fa 8091 0000 lds r24,MKFlags
962 07fe 8062 ori r24,lo8(32)
963 0800 8093 0000 sts MKFlags,r24
964 0804 D092 0000 sts (BeepModulation)+1,r13
965 0808 C092 0000 sts BeepModulation,r12
966 080c 8091 0000 lds r24,BeepTime
967 0810 9091 0000 lds r25,(BeepTime)+1
968 0814 892B or r24,r25
969 0816 01F4 brne .L89
970 0818 9092 0000 sts (BeepTime)+1,r9
971 081c 8092 0000 sts BeepTime,r8
972 .L89:
973 0820 0E94 0000 call SPI_StartTransmitPacket
974 0824 F092 0000 sts SendSPI,r15
975 0828 8091 0000 lds r24,MKFlags
976 082c 80FD sbrc r24,0
977 082e 00C0 rjmp .L90
978 0830 0BEA ldi r16,lo8(1451)
979 0832 15E0 ldi r17,hi8(1451)
980 .L85:
981 0834 0E94 0000 call LED_Update
982 0838 00C0 rjmp .L67
983 .L74:
984 083a 2A30 cpi r18,lo8(10)
985 083c 01F0 breq .L76
986 083e 2431 cpi r18,lo8(20)
987 0840 01F0 breq .L76
988 0842 2898 cbi 37-32,0
989 0844 8091 0000 lds r24,I2CTimeout
990 0848 9091 0000 lds r25,(I2CTimeout)+1
991 084c 892B or r24,r25
992 084e 01F0 breq .L109
993 .L79:
994 0850 8091 0000 lds r24,BeepModulation
995 0854 9091 0000 lds r25,(BeepModulation)+1
996 0858 8F5F subi r24,lo8(-1)
997 085a 9F4F sbci r25,hi8(-1)
998 085c 01F0 breq .+2
999 085e 00C0 rjmp .L80
1000 0860 8091 0000 lds r24,MKFlags
1001 0864 80FF sbrs r24,0
1002 0866 00C0 rjmp .L80
1003 0868 7092 0000 sts (BeepTime)+1,r7
1004 086c 6092 0000 sts BeepTime,r6
1005 0870 5092 0000 sts (BeepModulation)+1,r5
1006 0874 4092 0000 sts BeepModulation,r4
1007 0878 00C0 rjmp .L80
1008 .L68:
1009 087a 2898 cbi 37-32,0
1010 087c 8091 0000 lds r24,RC_Quality
1011 0880 8823 tst r24
1012 0882 01F0 breq .+2
1013 0884 00C0 rjmp .L110
1014 .L71:
1015 0886 8091 6F00 lds r24,111
1016 088a 8062 ori r24,lo8(32)
1017 088c 8093 6F00 sts 111,r24
1018 0890 00C0 rjmp .L72
1019 .L76:
1020 0892 289A sbi 37-32,0
1021 0894 8091 0000 lds r24,I2CTimeout
1022 0898 9091 0000 lds r25,(I2CTimeout)+1
1023 089c 892B or r24,r25
1024 089e 01F4 brne .L79
1025 .L109:
1026 08a0 0E94 0000 call I2C_Reset
1027 08a4 B092 0000 sts (I2CTimeout)+1,r11
1028 08a8 A092 0000 sts I2CTimeout,r10
1029 08ac 8091 0000 lds r24,DebugOut+58
1030 08b0 9091 0000 lds r25,(DebugOut+58)+1
1031 08b4 0196 adiw r24,1
1032 08b6 9093 0000 sts (DebugOut+58)+1,r25
1033 08ba 8093 0000 sts DebugOut+58,r24
1034 08be 00C0 rjmp .L79
1035 .L90:
1036 08c0 0F5F subi r16,lo8(-(1))
1037 08c2 1F4F sbci r17,hi8(-(1))
1038 08c4 9BE0 ldi r25,hi8(2930)
1039 08c6 0237 cpi r16,lo8(2930)
1040 08c8 1907 cpc r17,r25
1041 08ca 01F0 breq .+2
1042 08cc 00C0 rjmp .L85
1043 08ce 6091 0000 lds r22,FlightMinutesTotal
1044 08d2 7091 0000 lds r23,(FlightMinutesTotal)+1
1045 08d6 6F5F subi r22,lo8(-(1))
1046 08d8 7F4F sbci r23,hi8(-(1))
1047 08da 7093 0000 sts (FlightMinutesTotal)+1,r23
1048 08de 6093 0000 sts FlightMinutesTotal,r22
1049 08e2 8091 0000 lds r24,FlightMinutes
1050 08e6 9091 0000 lds r25,(FlightMinutes)+1
1051 08ea 0196 adiw r24,1
1052 08ec 9093 0000 sts (FlightMinutes)+1,r25
1053 08f0 8093 0000 sts FlightMinutes,r24
1054 08f4 8AE0 ldi r24,lo8(10)
1055 08f6 90E0 ldi r25,hi8(10)
1056 08f8 0E94 0000 call SetParamWord
1057 08fc 6091 0000 lds r22,FlightMinutes
1058 0900 7091 0000 lds r23,(FlightMinutes)+1
1059 0904 8EE0 ldi r24,lo8(14)
1060 0906 90E0 ldi r25,hi8(14)
1061 0908 0E94 0000 call SetParamWord
1062 090c 84E1 ldi r24,lo8(20)
1063 090e 90E0 ldi r25,hi8(20)
1064 0910 0E94 0000 call SetDelay
1065 0914 EC01 movw r28,r24
1066 0916 00E0 ldi r16,lo8(0)
1067 0918 10E0 ldi r17,hi8(0)
1068 091a 00C0 rjmp .L85
1069 .L86:
1070 091c 1092 0000 sts ExternControl+10,__zero_reg__
1071 0920 1092 0000 sts (ExternStickNick)+1,__zero_reg__
1072 0924 1092 0000 sts ExternStickNick,__zero_reg__
1073 0928 1092 0000 sts (ExternStickRoll)+1,__zero_reg__
1074 092c 1092 0000 sts ExternStickRoll,__zero_reg__
1075 0930 1092 0000 sts (ExternStickYaw)+1,__zero_reg__
1076 0934 1092 0000 sts ExternStickYaw,__zero_reg__
1077 0938 8091 0000 lds r24,BeepModulation
1078 093c 9091 0000 lds r25,(BeepModulation)+1
1079 0940 8F5F subi r24,lo8(-1)
1080 0942 9F4F sbci r25,hi8(-1)
1081 0944 01F0 breq .+2
1082 0946 00C0 rjmp .L87
1083 0948 8091 0000 lds r24,RC_Quality
1084 094c 8823 tst r24
1085 094e 01F0 breq .+2
1086 0950 00C0 rjmp .L87
1087 0952 3092 0000 sts (BeepTime)+1,r3
1088 0956 2092 0000 sts BeepTime,r2
1089 095a 80E0 ldi r24,lo8(3072)
1090 095c 9CE0 ldi r25,hi8(3072)
1091 095e 9093 0000 sts (BeepModulation)+1,r25
1092 0962 8093 0000 sts BeepModulation,r24
1093 0966 00C0 rjmp .L87
1094 .L88:
1095 0968 8091 0000 lds r24,MKFlags
1096 096c 8F7D andi r24,lo8(-33)
1097 096e 8093 0000 sts MKFlags,r24
1098 0972 00C0 rjmp .L89
1099 .L81:
1100 0974 2898 cbi 37-32,0
1101 0976 00C0 rjmp .L80
1102 .L52:
1103 0978 00D0 rcall .
1104 097a 00D0 rcall .
1105 097c 0F92 push __tmp_reg__
1106 097e EDB7 in r30,__SP_L__
1107 0980 FEB7 in r31,__SP_H__
1108 0982 3196 adiw r30,1
1109 0984 ADB7 in r26,__SP_L__
1110 0986 BEB7 in r27,__SP_H__
1111 0988 1196 adiw r26,1
1112 098a 1C92 st X,__zero_reg__
1113 098c 7282 std Z+2,r7
1114 098e 6182 std Z+1,r6
1115 0990 F482 std Z+4,r15
1116 0992 E382 std Z+3,r14
1117 0994 0E94 0000 call _printf_P
1118 0998 0F90 pop __tmp_reg__
1119 099a 0F90 pop __tmp_reg__
1120 099c 0F90 pop __tmp_reg__
1121 099e 0F90 pop __tmp_reg__
1122 09a0 0F90 pop __tmp_reg__
1123 09a2 00C0 rjmp .L53
1124 .L44:
1125 09a4 2998 cbi 37-32,1
1126 09a6 00C0 rjmp .L45
1127 .L63:
1128 09a8 1092 0000 sts (FlightMinutes)+1,__zero_reg__
1129 09ac 1092 0000 sts FlightMinutes,__zero_reg__
1130 09b0 1092 0000 sts (FlightMinutesTotal)+1,__zero_reg__
1131 09b4 1092 0000 sts FlightMinutesTotal,__zero_reg__
1132 09b8 00C0 rjmp .L64
1133 .L60:
1134 09ba 2898 cbi 37-32,0
1135 09bc 00C0 rjmp .L62
1136 .L38:
1137 09be 2898 cbi 37-32,0
1138 09c0 00C0 rjmp .L40
1139 .L35:
1140 09c2 8091 CA00 lds r24,202
1141 09c6 90E0 ldi r25,lo8(0)
1142 09c8 8630 cpi r24,lo8(6)
1143 09ca 01F0 breq .+2
1144 09cc 00C0 rjmp .L36
1145 09ce 91E0 ldi r25,lo8(1)
1146 09d0 00C0 rjmp .L36
1147 .L65:
1148 09d2 00D0 rcall .
1149 09d4 0F92 push __tmp_reg__
1150 09d6 EDB7 in r30,__SP_L__
1151 09d8 FEB7 in r31,__SP_H__
1152 09da 1182 std Z+1,__zero_reg__
1153 09dc 80E0 ldi r24,lo8(__c.2006)
1154 09de 90E0 ldi r25,hi8(__c.2006)
1155 09e0 9383 std Z+3,r25
1156 09e2 8283 std Z+2,r24
1157 09e4 0E94 0000 call _printf_P
1158 09e8 0F90 pop __tmp_reg__
1159 09ea 0F90 pop __tmp_reg__
1160 09ec 0F90 pop __tmp_reg__
1161 09ee 00C0 rjmp .L66
1162 .L105:
1163 09f0 00D0 rcall .
1164 09f2 0F92 push __tmp_reg__
1165 09f4 ADB7 in r26,__SP_L__
1166 09f6 BEB7 in r27,__SP_H__
1167 09f8 1196 adiw r26,1
1168 09fa 1C92 st X,__zero_reg__
1169 09fc 1197 sbiw r26,1
1170 09fe 80E0 ldi r24,lo8(__c.1952)
1171 0a00 90E0 ldi r25,hi8(__c.1952)
1172 0a02 1396 adiw r26,2+1
1173 0a04 9C93 st X,r25
1174 0a06 8E93 st -X,r24
1175 0a08 1297 sbiw r26,2
1176 0a0a 0E94 0000 call _printf_P
1177 0a0e 0F90 pop __tmp_reg__
1178 0a10 0F90 pop __tmp_reg__
1179 0a12 0F90 pop __tmp_reg__
1180 0a14 00C0 rjmp .L43
1181 .L104:
1182 0a16 0E94 0000 call USART1_Init
1183 0a1a 00C0 rjmp .L41
1184 .L107:
1185 0a1c 00D0 rcall .
1186 0a1e 0F92 push __tmp_reg__
1187 0a20 ADB7 in r26,__SP_L__
1188 0a22 BEB7 in r27,__SP_H__
1189 0a24 1196 adiw r26,1
1190 0a26 1C92 st X,__zero_reg__
1191 0a28 1197 sbiw r26,1
1192 0a2a 80E0 ldi r24,lo8(__c.1989)
1193 0a2c 90E0 ldi r25,hi8(__c.1989)
1194 0a2e 1396 adiw r26,2+1
1195 0a30 9C93 st X,r25
1196 0a32 8E93 st -X,r24
1197 0a34 1297 sbiw r26,2
1198 0a36 0E94 0000 call _printf_P
1199 0a3a 0F90 pop __tmp_reg__
1200 0a3c 0F90 pop __tmp_reg__
1201 0a3e 0F90 pop __tmp_reg__
1202 0a40 88EE ldi r24,lo8(1000)
1203 0a42 93E0 ldi r25,hi8(1000)
1204 0a44 0E94 0000 call SetDelay
1205 0a48 EC01 movw r28,r24
1206 0a4a 0E94 0000 call SearchAirPressureOffset
1207 .L59:
1208 0a4e CE01 movw r24,r28
1209 0a50 0E94 0000 call CheckDelay
1210 0a54 8823 tst r24
1211 0a56 01F0 breq .L59
1212 0a58 00D0 rcall .
1213 0a5a 0F92 push __tmp_reg__
1214 0a5c EDB7 in r30,__SP_L__
1215 0a5e FEB7 in r31,__SP_H__
1216 0a60 1182 std Z+1,__zero_reg__
1217 0a62 80E0 ldi r24,lo8(__c.1994)
1218 0a64 90E0 ldi r25,hi8(__c.1994)
1219 0a66 9383 std Z+3,r25
1220 0a68 8283 std Z+2,r24
1221 0a6a 0E94 0000 call _printf_P
1222 0a6e 0F90 pop __tmp_reg__
1223 0a70 0F90 pop __tmp_reg__
1224 0a72 0F90 pop __tmp_reg__
1225 0a74 00C0 rjmp .L58
1227 .global BoardRelease
1228 .data
1231 BoardRelease:
1232 0000 0A .byte 10
1233 .global CPUType
1236 CPUType:
1237 0001 01 .byte 1
1238 .global LowVoltageWarning
1241 LowVoltageWarning:
1242 0002 5E .byte 94
1243 .global FlightMinutes
1244 .global FlightMinutes
1245 .section .bss
1248 FlightMinutes:
1249 0000 0000 .skip 2,0
1250 .global FlightMinutesTotal
1251 .global FlightMinutesTotal
1254 FlightMinutesTotal:
1255 0002 0000 .skip 2,0
1256 .section .progmem.data,"a",@progbits
1259 __c.2008:
1260 0000 0A0D 3D3D .string "\n\r===================================\n\r"
1260 3D3D 3D3D
1260 3D3D 3D3D
1260 3D3D 3D3D
1260 3D3D 3D3D
1263 __c.2006:
1264 0028 4E65 7574 .string "Neutral (ACC-Mode)"
1264 7261 6C20
1264 2841 4343
1264 2D4D 6F64
1264 6529 00
1267 __c.2004:
1268 003b 4865 6164 .string "HeadingHold"
1268 696E 6748
1268 6F6C 6400
1271 __c.2002:
1272 0047 0A0D 436F .string "\n\rControl: "
1272 6E74 726F
1272 6C3A 2000
1275 __c.2000:
1276 0053 0A0D 466C .string "\n\rFlight-time %u min Total:%u min"
1276 6967 6874
1276 2D74 696D
1276 6520 2575
1276 206D 696E
1279 __c.1998:
1280 0076 0D0A 5375 .string "\r\nSupport for JENNIC RC at 2nd UART"
1280 7070 6F72
1280 7420 666F
1280 7220 4A45
1280 4E4E 4943
1283 __c.1996:
1284 009a 0A0D 5375 .string "\n\rSupport for NaviCtrl"
1284 7070 6F72
1284 7420 666F
1284 7220 4E61
1284 7669 4374
1287 __c.1994:
1288 00b1 4F4B 0A0D .string "OK\n\r"
1288 00
1291 __c.1989:
1292 00b6 0A0D 4361 .string "\n\rCalibrating air pressure sensor.."
1292 6C69 6272
1292 6174 696E
1292 6720 6169
1292 7220 7072
1295 __c.1984:
1296 00da 0A0D 3D3D .string "\n\r==================================="
1296 3D3D 3D3D
1296 3D3D 3D3D
1296 3D3D 3D3D
1296 3D3D 3D3D
1299 __c.1979:
1300 0100 0A0D 0A0D .string "\n\r\n\r!! MISSING BL-CTRL: %d !!"
1300 2121 204D
1300 4953 5349
1300 4E47 2042
1300 4C2D 4354
1303 __c.1974:
1304 011e 2564 2000 .string "%d "
1307 __c.1960:
1308 0122 0A0D 466F .string "\n\rFound BL-Ctrl: "
1308 756E 6420
1308 424C 2D43
1308 7472 6C3A
1308 2000
1311 __c.1958:
1312 0134 0A0D 3D3D .string "\n\r==================================="
1312 3D3D 3D3D
1312 3D3D 3D3D
1312 3D3D 3D3D
1312 3D3D 3D3D
1315 __c.1956:
1316 015a 0A0D 536F .string "\n\rSoftware: V%d.%d%c"
1316 6674 7761
1316 7265 3A20
1316 5625 642E
1316 2564 2563
1319 __c.1954:
1320 016f 0D0A 2020 .string "\r\n CPU: Atmega644"
1320 2020 2043
1320 5055 3A20
1320 4174 6D65
1320 6761 3634
1323 __c.1952:
1324 0185 0D0A 2020 .string "\r\n CPU: Atmega644p"
1324 2020 2043
1324 5055 3A20
1324 4174 6D65
1324 6761 3634
1327 __c.1950:
1328 019c 0A0D 3D3D .string "\n\r==================================="
1328 3D3D 3D3D
1328 3D3D 3D3D
1328 3D3D 3D3D
1328 3D3D 3D3D
1331 __c.1948:
1332 01c2 0A0D 7777 .string "\n\rwww.MikroKopter.de (c) HiSystems GmbH"
1332 772E 4D69
1332 6B72 6F4B
1332 6F70 7465
1332 722E 6465
1335 __c.1946:
1336 01ea 0A0D 7468 .ascii "\n\rthe use of th"
1336 6520 7573
1336 6520 6F66
1336 2074 68
1337 01f9 6973 2073 .string "is software is only permitted \n\ron original MikroKopter-Hardware"
1337 6F66 7477
1337 6172 6520
1337 6973 206F
1337 6E6C 7920
1340 __c.1944:
1341 023a 0A0D 4861 .string "\n\rHardware: %d.%d"
1341 7264 7761
1341 7265 3A20
1341 2564 2E25
1341 6400
1344 __c.1942:
1345 024c 0A0D 466C .string "\n\rFlightControl"
1345 6967 6874
1345 436F 6E74
1345 726F 6C00
1348 __c.1940:
1349 025c 0A0D 3D3D .string "\n\r==================================="
1349 3D3D 3D3D
1349 3D3D 3D3D
1349 3D3D 3D3D
1349 3D3D 3D3D
1352 __c.1918:
1353 0282 4C6F 7720 .string "Low Warning level: %d.%dV"
1353 5761 726E
1353 696E 6720
1353 6C65 7665
1353 6C3A 2025
1356 __c.1916:
1357 029c 2034 2043 .string " 4 Cells "
1357 656C 6C73
1357 2020 00
1360 __c.1914:
1361 02a7 2033 2043 .string " 3 Cells "
1361 656C 6C73
1361 2020 00
1364 __c.1909:
1365 02b2 0A0D 4261 .string "\n\rBatt:"
1365 7474 3A00
1366 .global __do_copy_data
1367 .global __do_clear_bss
DEFINED SYMBOLS
*ABS*:00000000 main.c
C:\DOKUME~1\LUKEPA~1\LOKALE~1\Temp/ccMHWd4q.s:2 *ABS*:0000003f __SREG__
C:\DOKUME~1\LUKEPA~1\LOKALE~1\Temp/ccMHWd4q.s:3 *ABS*:0000003e __SP_H__
C:\DOKUME~1\LUKEPA~1\LOKALE~1\Temp/ccMHWd4q.s:4 *ABS*:0000003d __SP_L__
C:\DOKUME~1\LUKEPA~1\LOKALE~1\Temp/ccMHWd4q.s:5 *ABS*:00000034 __CCP__
C:\DOKUME~1\LUKEPA~1\LOKALE~1\Temp/ccMHWd4q.s:6 *ABS*:00000000 __tmp_reg__
C:\DOKUME~1\LUKEPA~1\LOKALE~1\Temp/ccMHWd4q.s:7 *ABS*:00000001 __zero_reg__
C:\DOKUME~1\LUKEPA~1\LOKALE~1\Temp/ccMHWd4q.s:11 .text:00000000 GetCPUType
C:\DOKUME~1\LUKEPA~1\LOKALE~1\Temp/ccMHWd4q.s:33 .text:0000001e GetBoardRelease
C:\DOKUME~1\LUKEPA~1\LOKALE~1\Temp/ccMHWd4q.s:99 .text:00000080 LipoDetection
C:\DOKUME~1\LUKEPA~1\LOKALE~1\Temp/ccMHWd4q.s:1241 .data:00000002 LowVoltageWarning
C:\DOKUME~1\LUKEPA~1\LOKALE~1\Temp/ccMHWd4q.s:1360 .progmem.data:000002a7 __c.1914
C:\DOKUME~1\LUKEPA~1\LOKALE~1\Temp/ccMHWd4q.s:1352 .progmem.data:00000282 __c.1918
C:\DOKUME~1\LUKEPA~1\LOKALE~1\Temp/ccMHWd4q.s:1364 .progmem.data:000002b2 __c.1909
C:\DOKUME~1\LUKEPA~1\LOKALE~1\Temp/ccMHWd4q.s:1356 .progmem.data:0000029c __c.1916
C:\DOKUME~1\LUKEPA~1\LOKALE~1\Temp/ccMHWd4q.s:269 .text:000001de main
C:\DOKUME~1\LUKEPA~1\LOKALE~1\Temp/ccMHWd4q.s:1236 .data:00000001 CPUType
C:\DOKUME~1\LUKEPA~1\LOKALE~1\Temp/ccMHWd4q.s:1231 .data:00000000 BoardRelease
C:\DOKUME~1\LUKEPA~1\LOKALE~1\Temp/ccMHWd4q.s:1348 .progmem.data:0000025c __c.1940
C:\DOKUME~1\LUKEPA~1\LOKALE~1\Temp/ccMHWd4q.s:1344 .progmem.data:0000024c __c.1942
C:\DOKUME~1\LUKEPA~1\LOKALE~1\Temp/ccMHWd4q.s:1340 .progmem.data:0000023a __c.1944
C:\DOKUME~1\LUKEPA~1\LOKALE~1\Temp/ccMHWd4q.s:1335 .progmem.data:000001ea __c.1946
C:\DOKUME~1\LUKEPA~1\LOKALE~1\Temp/ccMHWd4q.s:1331 .progmem.data:000001c2 __c.1948
C:\DOKUME~1\LUKEPA~1\LOKALE~1\Temp/ccMHWd4q.s:1327 .progmem.data:0000019c __c.1950
C:\DOKUME~1\LUKEPA~1\LOKALE~1\Temp/ccMHWd4q.s:1319 .progmem.data:0000016f __c.1954
C:\DOKUME~1\LUKEPA~1\LOKALE~1\Temp/ccMHWd4q.s:1315 .progmem.data:0000015a __c.1956
C:\DOKUME~1\LUKEPA~1\LOKALE~1\Temp/ccMHWd4q.s:1311 .progmem.data:00000134 __c.1958
C:\DOKUME~1\LUKEPA~1\LOKALE~1\Temp/ccMHWd4q.s:1307 .progmem.data:00000122 __c.1960
C:\DOKUME~1\LUKEPA~1\LOKALE~1\Temp/ccMHWd4q.s:1303 .progmem.data:0000011e __c.1974
C:\DOKUME~1\LUKEPA~1\LOKALE~1\Temp/ccMHWd4q.s:1299 .progmem.data:00000100 __c.1979
C:\DOKUME~1\LUKEPA~1\LOKALE~1\Temp/ccMHWd4q.s:1295 .progmem.data:000000da __c.1984
C:\DOKUME~1\LUKEPA~1\LOKALE~1\Temp/ccMHWd4q.s:1283 .progmem.data:0000009a __c.1996
C:\DOKUME~1\LUKEPA~1\LOKALE~1\Temp/ccMHWd4q.s:1279 .progmem.data:00000076 __c.1998
C:\DOKUME~1\LUKEPA~1\LOKALE~1\Temp/ccMHWd4q.s:1248 .bss:00000000 FlightMinutes
C:\DOKUME~1\LUKEPA~1\LOKALE~1\Temp/ccMHWd4q.s:1254 .bss:00000002 FlightMinutesTotal
C:\DOKUME~1\LUKEPA~1\LOKALE~1\Temp/ccMHWd4q.s:1275 .progmem.data:00000053 __c.2000
C:\DOKUME~1\LUKEPA~1\LOKALE~1\Temp/ccMHWd4q.s:1271 .progmem.data:00000047 __c.2002
C:\DOKUME~1\LUKEPA~1\LOKALE~1\Temp/ccMHWd4q.s:1267 .progmem.data:0000003b __c.2004
C:\DOKUME~1\LUKEPA~1\LOKALE~1\Temp/ccMHWd4q.s:1259 .progmem.data:00000000 __c.2008
C:\DOKUME~1\LUKEPA~1\LOKALE~1\Temp/ccMHWd4q.s:1263 .progmem.data:00000028 __c.2006
C:\DOKUME~1\LUKEPA~1\LOKALE~1\Temp/ccMHWd4q.s:1323 .progmem.data:00000185 __c.1952
C:\DOKUME~1\LUKEPA~1\LOKALE~1\Temp/ccMHWd4q.s:1291 .progmem.data:000000b6 __c.1989
C:\DOKUME~1\LUKEPA~1\LOKALE~1\Temp/ccMHWd4q.s:1287 .progmem.data:000000b1 __c.1994
UNDEFINED SYMBOLS
ParamSet
SetDelay
UBat
Beep
_printf_P
__udivmodqi4
CheckDelay
BeepTime
PPM_in
StickYaw
StickRoll
StickNick
LED_Init
TIMER0_Init
TIMER2_Init
USART0_Init
RC_Init
ADC_Init
I2C_Init
SPI_MasterInit
ParamSet_Init
motor_read
UpdateMotor
SendMotorData
Motor
Mixer
Servo_On
SetNeutral
ExternControl
GetParamWord
LCD_Clear
I2CTimeout
ADReady
SendSPI
SPI_TransmitByte
MotorControl
RC_Quality
NCDataOkay
GPSStickNick
GPSStickRoll
NCSerialDataOkay
NCGpsZ
MissingMotor
MKFlags
USART0_TransmitTxData
USART0_ProcessRxData
PcAccess
BeepModulation
SPI_StartTransmitPacket
LED_Update
I2C_Reset
DebugOut
SetParamWord
ExternStickNick
ExternStickRoll
ExternStickYaw
USART1_Init
SearchAirPressureOffset
__do_copy_data
__do_clear_bss