Go to most recent revision | Blame | Compare with Previous | Last modification | View Log | RSS feed
1 .file "jetimenu.c"
2 .arch atmega644p
3 __SREG__ = 0x3f
4 __SP_H__ = 0x3e
5 __SP_L__ = 0x3d
6 __tmp_reg__ = 0
7 __zero_reg__ = 1
8 .global __do_copy_data
9 .global __do_clear_bss
10 .global JetiBox_Menu
11 .section .progmem.data,"a",@progbits
14 JetiBox_Menu:
15 0000 03 .byte 3
16 0001 01 .byte 1
17 0002 00 .byte 0
18 0003 00 .byte 0
19 0004 0000 .word pm(Menu_Status)
20 0006 00 .byte 0
21 0007 02 .byte 2
22 0008 01 .byte 1
23 0009 01 .byte 1
24 000a 0000 .word pm(Menu_Temperature)
25 000c 01 .byte 1
26 000d 03 .byte 3
27 000e 02 .byte 2
28 000f 02 .byte 2
29 0010 0000 .word pm(Menu_Battery)
30 0012 02 .byte 2
31 0013 00 .byte 0
32 0014 03 .byte 3
33 0015 03 .byte 3
34 0016 0000 .word pm(Menu_PosInfo)
37 __c.14:
38 0018 2532 692E .string "%2i.%1iV"
38 2531 6956
38 00
41 __c.15:
42 0021 2533 6425 .string "%3d%c %03dm"
42 6320 2530
42 3364 6D00
45 __c.16:
46 002d 5374 6174 .string "Status"
46 7573 00
49 __c.17:
50 0034 4552 524F .string "ERROR: %2d"
50 523A 2025
50 3264 00
53 __c.18:
54 003f 2534 6920 .string "%4i %2i:%02i"
54 2532 693A
54 2530 3269
54 00
57 __c.19:
58 004c 2534 696D .string "%4im%c"
58 2563 00
59 .text
60 .global Menu_Status
62 Menu_Status:
63 /* prologue: frame size=0 */
64 0000 CF93 push r28
65 0002 DF93 push r29
66 /* prologue end (size=2) */
67 0004 80E0 ldi r24,lo8(0)
68 0006 0E94 0000 call LIBFC_JetiBox_SetPos
69 000a 8091 0000 lds r24,UBat
70 000e 9091 0000 lds r25,(UBat)+1
71 0012 6AE0 ldi r22,lo8(10)
72 0014 70E0 ldi r23,hi8(10)
73 0016 0E94 0000 call __divmodhi4
74 001a 9F93 push r25
75 001c 8F93 push r24
76 001e 8091 0000 lds r24,UBat
77 0022 9091 0000 lds r25,(UBat)+1
78 0026 6AE0 ldi r22,lo8(10)
79 0028 70E0 ldi r23,hi8(10)
80 002a 0E94 0000 call __divmodhi4
81 002e 7F93 push r23
82 0030 6F93 push r22
83 0032 80E0 ldi r24,lo8(__c.14)
84 0034 90E0 ldi r25,hi8(__c.14)
85 0036 9F93 push r25
86 0038 8F93 push r24
87 003a C0E0 ldi r28,lo8(pm(LIBFC_JetiBox_Putchar))
88 003c D0E0 ldi r29,hi8(pm(LIBFC_JetiBox_Putchar))
89 003e DF93 push r29
90 0040 CF93 push r28
91 0042 E091 0000 lds r30,_printf_P
92 0046 F091 0000 lds r31,(_printf_P)+1
93 004a 0995 icall
94 004c 2DB7 in r18,__SP_L__
95 004e 3EB7 in r19,__SP_H__
96 0050 285F subi r18,lo8(-(8))
97 0052 3F4F sbci r19,hi8(-(8))
98 0054 2DBF out __SP_L__,r18
99 0056 8091 0000 lds r24,NaviDataOkay
100 005a 8823 tst r24
101 005c B9F1 breq .L2
102 005e 86E0 ldi r24,lo8(6)
103 0060 0E94 0000 call LIBFC_JetiBox_SetPos
104 0064 8091 0000 lds r24,GPSInfo+4
105 0068 9091 0000 lds r25,(GPSInfo+4)+1
106 006c 6AE0 ldi r22,lo8(10)
107 006e 70E0 ldi r23,hi8(10)
108 0070 0E94 0000 call __udivmodhi4
109 0074 7F93 push r23
110 0076 6F93 push r22
111 0078 8FED ldi r24,lo8(223)
112 007a 90E0 ldi r25,hi8(223)
113 007c 9F93 push r25
114 007e 8F93 push r24
115 0080 8091 0000 lds r24,ErsatzKompass
116 0084 9091 0000 lds r25,(ErsatzKompass)+1
117 0088 A091 0000 lds r26,(ErsatzKompass)+2
118 008c B091 0000 lds r27,(ErsatzKompass)+3
119 0090 2091 0000 lds r18,GIER_GRAD_FAKTOR
120 0094 3091 0000 lds r19,(GIER_GRAD_FAKTOR)+1
121 0098 4091 0000 lds r20,(GIER_GRAD_FAKTOR)+2
122 009c 5091 0000 lds r21,(GIER_GRAD_FAKTOR)+3
123 00a0 BC01 movw r22,r24
124 00a2 CD01 movw r24,r26
125 00a4 0E94 0000 call __divmodsi4
126 00a8 3F93 push r19
127 00aa 2F93 push r18
128 00ac 80E0 ldi r24,lo8(__c.15)
129 00ae 90E0 ldi r25,hi8(__c.15)
130 00b0 9F93 push r25
131 00b2 8F93 push r24
132 00b4 DF93 push r29
133 00b6 CF93 push r28
134 00b8 E091 0000 lds r30,_printf_P
135 00bc F091 0000 lds r31,(_printf_P)+1
136 00c0 0995 icall
137 00c2 8DB7 in r24,__SP_L__
138 00c4 9EB7 in r25,__SP_H__
139 00c6 0A96 adiw r24,10
140 00c8 8DBF out __SP_L__,r24
141 00ca 12C0 rjmp .L3
142 .L2:
143 00cc 86E0 ldi r24,lo8(6)
144 00ce 0E94 0000 call LIBFC_JetiBox_SetPos
145 00d2 80E0 ldi r24,lo8(__c.16)
146 00d4 90E0 ldi r25,hi8(__c.16)
147 00d6 9F93 push r25
148 00d8 8F93 push r24
149 00da DF93 push r29
150 00dc CF93 push r28
151 00de E091 0000 lds r30,_printf_P
152 00e2 F091 0000 lds r31,(_printf_P)+1
153 00e6 0995 icall
154 00e8 0F90 pop __tmp_reg__
155 00ea 0F90 pop __tmp_reg__
156 00ec 0F90 pop __tmp_reg__
157 00ee 0F90 pop __tmp_reg__
158 .L3:
159 00f0 8091 0000 lds r24,NC_ErrorCode
160 00f4 8823 tst r24
161 00f6 C1F0 breq .L4
162 00f8 86E0 ldi r24,lo8(6)
163 00fa 0E94 0000 call LIBFC_JetiBox_SetPos
164 00fe 8091 0000 lds r24,NC_ErrorCode
165 0102 9927 clr r25
166 0104 9F93 push r25
167 0106 8F93 push r24
168 0108 80E0 ldi r24,lo8(__c.17)
169 010a 90E0 ldi r25,hi8(__c.17)
170 010c 9F93 push r25
171 010e 8F93 push r24
172 0110 DF93 push r29
173 0112 CF93 push r28
174 0114 E091 0000 lds r30,_printf_P
175 0118 F091 0000 lds r31,(_printf_P)+1
176 011c 0995 icall
177 011e 2DB7 in r18,__SP_L__
178 0120 3EB7 in r19,__SP_H__
179 0122 2A5F subi r18,lo8(-(6))
180 0124 3F4F sbci r19,hi8(-(6))
181 0126 2DBF out __SP_L__,r18
182 .L4:
183 0128 80E1 ldi r24,lo8(16)
184 012a 0E94 0000 call LIBFC_JetiBox_SetPos
185 012e 8091 0000 lds r24,FlugSekunden
186 0132 9091 0000 lds r25,(FlugSekunden)+1
187 0136 6CE3 ldi r22,lo8(60)
188 0138 70E0 ldi r23,hi8(60)
189 013a 0E94 0000 call __udivmodhi4
190 013e 9F93 push r25
191 0140 8F93 push r24
192 0142 8091 0000 lds r24,FlugSekunden
193 0146 9091 0000 lds r25,(FlugSekunden)+1
194 014a 6CE3 ldi r22,lo8(60)
195 014c 70E0 ldi r23,hi8(60)
196 014e 0E94 0000 call __udivmodhi4
197 0152 7F93 push r23
198 0154 6F93 push r22
199 0156 8091 0000 lds r24,Capacity+4
200 015a 9091 0000 lds r25,(Capacity+4)+1
201 015e 9F93 push r25
202 0160 8F93 push r24
203 0162 80E0 ldi r24,lo8(__c.18)
204 0164 90E0 ldi r25,hi8(__c.18)
205 0166 9F93 push r25
206 0168 8F93 push r24
207 016a C0E0 ldi r28,lo8(pm(LIBFC_JetiBox_Putchar))
208 016c D0E0 ldi r29,hi8(pm(LIBFC_JetiBox_Putchar))
209 016e DF93 push r29
210 0170 CF93 push r28
211 0172 E091 0000 lds r30,_printf_P
212 0176 F091 0000 lds r31,(_printf_P)+1
213 017a 0995 icall
214 017c 8091 0000 lds r24,EE_Parameter+13
215 0180 2DB7 in r18,__SP_L__
216 0182 3EB7 in r19,__SP_H__
217 0184 265F subi r18,lo8(-(10))
218 0186 3F4F sbci r19,hi8(-(10))
219 0188 2DBF out __SP_L__,r18
220 018a 80FF sbrs r24,0
221 018c 29C0 rjmp .L1
222 018e 8AE1 ldi r24,lo8(26)
223 0190 0E94 0000 call LIBFC_JetiBox_SetPos
224 0194 8091 0000 lds r24,VarioCharacter
225 0198 9927 clr r25
226 019a 9F93 push r25
227 019c 8F93 push r24
228 019e 8091 0000 lds r24,HoehenWert
229 01a2 9091 0000 lds r25,(HoehenWert)+1
230 01a6 A091 0000 lds r26,(HoehenWert)+2
231 01aa B091 0000 lds r27,(HoehenWert)+3
232 01ae BC01 movw r22,r24
233 01b0 CD01 movw r24,r26
234 01b2 24E6 ldi r18,lo8(100)
235 01b4 30E0 ldi r19,hi8(100)
236 01b6 40E0 ldi r20,hlo8(100)
237 01b8 50E0 ldi r21,hhi8(100)
238 01ba 0E94 0000 call __divmodsi4
239 01be 3F93 push r19
240 01c0 2F93 push r18
241 01c2 80E0 ldi r24,lo8(__c.19)
242 01c4 90E0 ldi r25,hi8(__c.19)
243 01c6 9F93 push r25
244 01c8 8F93 push r24
245 01ca DF93 push r29
246 01cc CF93 push r28
247 01ce E091 0000 lds r30,_printf_P
248 01d2 F091 0000 lds r31,(_printf_P)+1
249 01d6 0995 icall
250 01d8 8DB7 in r24,__SP_L__
251 01da 9EB7 in r25,__SP_H__
252 01dc 0896 adiw r24,8
253 01de 8DBF out __SP_L__,r24
254 .L1:
255 /* epilogue: frame size=0 */
256 01e0 DF91 pop r29
257 01e2 CF91 pop r28
258 01e4 0895 ret
259 /* epilogue end (size=3) */
260 /* function Menu_Status size 243 (238) */
262 .section .progmem.data
265 __c.10:
266 0053 2533 6920 .string "%3i %3i %3i %3i"
266 2533 6920
266 2533 6920
266 2533 6900
269 __c.11:
270 0063 2533 6920 .string "%3i %3i %3i %3i"
270 2533 6920
270 2533 6920
270 2533 6900
273 __c.12:
274 0073 5465 6D70 .string "Temperatures "
274 6572 6174
274 7572 6573
274 2020 2020
274 00
277 __c.13:
278 0084 2563 4320 .string "%cC "
278 2020 2020
278 00
279 .text
280 .global Menu_Temperature
282 Menu_Temperature:
283 /* prologue: frame size=0 */
284 01e6 CF93 push r28
285 01e8 DF93 push r29
286 /* prologue end (size=2) */
287 01ea 80E0 ldi r24,lo8(0)
288 01ec 0E94 0000 call LIBFC_JetiBox_SetPos
289 01f0 8091 0000 lds r24,Motor+31
290 01f4 9927 clr r25
291 01f6 87FD sbrc r24,7
292 01f8 9095 com r25
293 01fa 9F93 push r25
294 01fc 8F93 push r24
295 01fe 8091 0000 lds r24,Motor+23
296 0202 9927 clr r25
297 0204 87FD sbrc r24,7
298 0206 9095 com r25
299 0208 9F93 push r25
300 020a 8F93 push r24
301 020c 8091 0000 lds r24,Motor+15
302 0210 9927 clr r25
303 0212 87FD sbrc r24,7
304 0214 9095 com r25
305 0216 9F93 push r25
306 0218 8F93 push r24
307 021a 8091 0000 lds r24,Motor+7
308 021e 9927 clr r25
309 0220 87FD sbrc r24,7
310 0222 9095 com r25
311 0224 9F93 push r25
312 0226 8F93 push r24
313 0228 80E0 ldi r24,lo8(__c.10)
314 022a 90E0 ldi r25,hi8(__c.10)
315 022c 9F93 push r25
316 022e 8F93 push r24
317 0230 C0E0 ldi r28,lo8(pm(LIBFC_JetiBox_Putchar))
318 0232 D0E0 ldi r29,hi8(pm(LIBFC_JetiBox_Putchar))
319 0234 DF93 push r29
320 0236 CF93 push r28
321 0238 E091 0000 lds r30,_printf_P
322 023c F091 0000 lds r31,(_printf_P)+1
323 0240 0995 icall
324 0242 80E1 ldi r24,lo8(16)
325 0244 0E94 0000 call LIBFC_JetiBox_SetPos
326 0248 2DB7 in r18,__SP_L__
327 024a 3EB7 in r19,__SP_H__
328 024c 245F subi r18,lo8(-(12))
329 024e 3F4F sbci r19,hi8(-(12))
330 0250 2DBF out __SP_L__,r18
331 0252 8091 0000 lds r24,Motor+63
332 0256 9927 clr r25
333 0258 87FD sbrc r24,7
334 025a 9095 com r25
335 025c 9F93 push r25
336 025e 8F93 push r24
337 0260 8091 0000 lds r24,Motor+55
338 0264 9927 clr r25
339 0266 87FD sbrc r24,7
340 0268 9095 com r25
341 026a 9F93 push r25
342 026c 8F93 push r24
343 026e 8091 0000 lds r24,Motor+47
344 0272 9927 clr r25
345 0274 87FD sbrc r24,7
346 0276 9095 com r25
347 0278 9F93 push r25
348 027a 8F93 push r24
349 027c 8091 0000 lds r24,Motor+39
350 0280 9927 clr r25
351 0282 87FD sbrc r24,7
352 0284 9095 com r25
353 0286 9F93 push r25
354 0288 8F93 push r24
355 028a 80E0 ldi r24,lo8(__c.11)
356 028c 90E0 ldi r25,hi8(__c.11)
357 028e 9F93 push r25
358 0290 8F93 push r24
359 0292 DF93 push r29
360 0294 CF93 push r28
361 0296 E091 0000 lds r30,_printf_P
362 029a F091 0000 lds r31,(_printf_P)+1
363 029e 0995 icall
364 02a0 8091 0000 lds r24,RequiredMotors
365 02a4 2DB7 in r18,__SP_L__
366 02a6 3EB7 in r19,__SP_H__
367 02a8 245F subi r18,lo8(-(12))
368 02aa 3F4F sbci r19,hi8(-(12))
369 02ac 2DBF out __SP_L__,r18
370 02ae 8530 cpi r24,lo8(5)
371 02b0 98F4 brsh .L7
372 02b2 80E1 ldi r24,lo8(16)
373 02b4 0E94 0000 call LIBFC_JetiBox_SetPos
374 02b8 80E0 ldi r24,lo8(__c.12)
375 02ba 90E0 ldi r25,hi8(__c.12)
376 02bc 9F93 push r25
377 02be 8F93 push r24
378 02c0 DF93 push r29
379 02c2 CF93 push r28
380 02c4 E091 0000 lds r30,_printf_P
381 02c8 F091 0000 lds r31,(_printf_P)+1
382 02cc 0995 icall
383 02ce 0F90 pop __tmp_reg__
384 02d0 0F90 pop __tmp_reg__
385 02d2 0F90 pop __tmp_reg__
386 02d4 0F90 pop __tmp_reg__
387 02d6 18C0 rjmp .L6
388 .L7:
389 02d8 8730 cpi r24,lo8(7)
390 02da B0F4 brsh .L6
391 02dc 88E1 ldi r24,lo8(24)
392 02de 0E94 0000 call LIBFC_JetiBox_SetPos
393 02e2 8FED ldi r24,lo8(223)
394 02e4 90E0 ldi r25,hi8(223)
395 02e6 9F93 push r25
396 02e8 8F93 push r24
397 02ea 80E0 ldi r24,lo8(__c.13)
398 02ec 90E0 ldi r25,hi8(__c.13)
399 02ee 9F93 push r25
400 02f0 8F93 push r24
401 02f2 DF93 push r29
402 02f4 CF93 push r28
403 02f6 E091 0000 lds r30,_printf_P
404 02fa F091 0000 lds r31,(_printf_P)+1
405 02fe 0995 icall
406 0300 8DB7 in r24,__SP_L__
407 0302 9EB7 in r25,__SP_H__
408 0304 0696 adiw r24,6
409 0306 8DBF out __SP_L__,r24
410 .L6:
411 /* epilogue: frame size=0 */
412 0308 DF91 pop r29
413 030a CF91 pop r28
414 030c 0895 ret
415 /* epilogue end (size=3) */
416 /* function Menu_Temperature size 148 (143) */
418 .section .progmem.data
421 __c.8:
422 008d 2532 692E .string "%2i.%1iV %3i.%1iA"
422 2531 6956
422 2020 2533
422 692E 2531
422 6941 00
425 __c.9:
426 00a0 2534 6957 .string "%4iW %6imAh"
426 2025 3669
426 6D41 6800
427 .text
428 .global Menu_Battery
430 Menu_Battery:
431 /* prologue: frame size=0 */
432 030e 0F93 push r16
433 0310 1F93 push r17
434 /* prologue end (size=2) */
435 0312 80E0 ldi r24,lo8(0)
436 0314 0E94 0000 call LIBFC_JetiBox_SetPos
437 0318 2AE0 ldi r18,lo8(10)
438 031a 30E0 ldi r19,hi8(10)
439 031c 8091 0000 lds r24,Capacity
440 0320 9091 0000 lds r25,(Capacity)+1
441 0324 B901 movw r22,r18
442 0326 0E94 0000 call __udivmodhi4
443 032a 9F93 push r25
444 032c 8F93 push r24
445 032e 8091 0000 lds r24,Capacity
446 0332 9091 0000 lds r25,(Capacity)+1
447 0336 B901 movw r22,r18
448 0338 0E94 0000 call __udivmodhi4
449 033c 7F93 push r23
450 033e 6F93 push r22
451 0340 8091 0000 lds r24,UBat
452 0344 9091 0000 lds r25,(UBat)+1
453 0348 B901 movw r22,r18
454 034a 0E94 0000 call __divmodhi4
455 034e 9F93 push r25
456 0350 8F93 push r24
457 0352 8091 0000 lds r24,UBat
458 0356 9091 0000 lds r25,(UBat)+1
459 035a B901 movw r22,r18
460 035c 0E94 0000 call __divmodhi4
461 0360 7F93 push r23
462 0362 6F93 push r22
463 0364 80E0 ldi r24,lo8(__c.8)
464 0366 90E0 ldi r25,hi8(__c.8)
465 0368 9F93 push r25
466 036a 8F93 push r24
467 036c 00E0 ldi r16,lo8(pm(LIBFC_JetiBox_Putchar))
468 036e 10E0 ldi r17,hi8(pm(LIBFC_JetiBox_Putchar))
469 0370 1F93 push r17
470 0372 0F93 push r16
471 0374 E091 0000 lds r30,_printf_P
472 0378 F091 0000 lds r31,(_printf_P)+1
473 037c 0995 icall
474 037e 80E1 ldi r24,lo8(16)
475 0380 0E94 0000 call LIBFC_JetiBox_SetPos
476 0384 8DB7 in r24,__SP_L__
477 0386 9EB7 in r25,__SP_H__
478 0388 0C96 adiw r24,12
479 038a 8DBF out __SP_L__,r24
480 038c 8091 0000 lds r24,Capacity+4
481 0390 9091 0000 lds r25,(Capacity+4)+1
482 0394 9F93 push r25
483 0396 8F93 push r24
484 0398 8091 0000 lds r24,Capacity+2
485 039c 9091 0000 lds r25,(Capacity+2)+1
486 03a0 9F93 push r25
487 03a2 8F93 push r24
488 03a4 80E0 ldi r24,lo8(__c.9)
489 03a6 90E0 ldi r25,hi8(__c.9)
490 03a8 9F93 push r25
491 03aa 8F93 push r24
492 03ac 1F93 push r17
493 03ae 0F93 push r16
494 03b0 E091 0000 lds r30,_printf_P
495 03b4 F091 0000 lds r31,(_printf_P)+1
496 03b8 0995 icall
497 03ba 8DB7 in r24,__SP_L__
498 03bc 9EB7 in r25,__SP_H__
499 03be 0896 adiw r24,8
500 03c0 8DBF out __SP_L__,r24
501 /* epilogue: frame size=0 */
502 03c2 1F91 pop r17
503 03c4 0F91 pop r16
504 03c6 0895 ret
505 /* epilogue end (size=3) */
506 /* function Menu_Battery size 93 (88) */
508 .section .progmem.data
511 __c.2:
512 00ac 2532 756D .string "%2um/s Sat:%d "
512 2F73 2053
512 6174 3A25
512 6420 00
515 __c.3:
516 00bb 2020 3344 .string " 3D"
516 00
519 __c.4:
520 00c0 4E6F 4678 .string "NoFx"
520 00
523 __c.5:
524 00c5 4447 5053 .string "DGPS"
524 00
527 __c.6:
528 00ca 486F 6D65 .string "Home:%3dm %3d%c"
528 3A25 3364
528 6D20 2533
528 6425 6300
531 __c.7:
532 00da 4E6F 204E .string "No NaviCtrl!"
532 6176 6943
532 7472 6C21
532 00
533 .text
534 .global Menu_PosInfo
536 Menu_PosInfo:
537 /* prologue: frame size=0 */
538 03c8 0F93 push r16
539 03ca 1F93 push r17
540 03cc CF93 push r28
541 03ce DF93 push r29
542 /* prologue end (size=4) */
543 03d0 8091 0000 lds r24,NaviDataOkay
544 03d4 C0E0 ldi r28,lo8(pm(LIBFC_JetiBox_Putchar))
545 03d6 D0E0 ldi r29,hi8(pm(LIBFC_JetiBox_Putchar))
546 03d8 8823 tst r24
547 03da 09F4 brne .+2
548 03dc 78C0 rjmp .L12
549 03de 80E0 ldi r24,lo8(0)
550 03e0 0E94 0000 call LIBFC_JetiBox_SetPos
551 03e4 8091 0000 lds r24,GPSInfo+1
552 03e8 9927 clr r25
553 03ea 9F93 push r25
554 03ec 8F93 push r24
555 03ee 8091 0000 lds r24,GPSInfo+3
556 03f2 9927 clr r25
557 03f4 9F93 push r25
558 03f6 8F93 push r24
559 03f8 80E0 ldi r24,lo8(__c.2)
560 03fa 90E0 ldi r25,hi8(__c.2)
561 03fc 9F93 push r25
562 03fe 8F93 push r24
563 0400 8E01 movw r16,r28
564 0402 DF93 push r29
565 0404 CF93 push r28
566 0406 E091 0000 lds r30,_printf_P
567 040a F091 0000 lds r31,(_printf_P)+1
568 040e 0995 icall
569 0410 8DB7 in r24,__SP_L__
570 0412 9EB7 in r25,__SP_H__
571 0414 0896 adiw r24,8
572 0416 8DBF out __SP_L__,r24
573 0418 8091 0000 lds r24,GPSInfo+2
574 041c 8330 cpi r24,lo8(3)
575 041e 31F4 brne .L17
576 0420 8CE0 ldi r24,lo8(12)
577 0422 0E94 0000 call LIBFC_JetiBox_SetPos
578 0426 80E0 ldi r24,lo8(__c.3)
579 0428 90E0 ldi r25,hi8(__c.3)
580 042a 05C0 rjmp .L20
581 .L17:
582 042c 8CE0 ldi r24,lo8(12)
583 042e 0E94 0000 call LIBFC_JetiBox_SetPos
584 0432 80E0 ldi r24,lo8(__c.4)
585 0434 90E0 ldi r25,hi8(__c.4)
586 .L20:
587 0436 9F93 push r25
588 0438 8F93 push r24
589 043a DF93 push r29
590 043c CF93 push r28
591 043e E091 0000 lds r30,_printf_P
592 0442 F091 0000 lds r31,(_printf_P)+1
593 0446 0995 icall
594 0448 0F90 pop __tmp_reg__
595 044a 0F90 pop __tmp_reg__
596 044c 0F90 pop __tmp_reg__
597 044e 0F90 pop __tmp_reg__
598 0450 8091 0000 lds r24,GPSInfo
599 0454 81FF sbrs r24,1
600 0456 12C0 rjmp .L18
601 0458 8CE0 ldi r24,lo8(12)
602 045a 0E94 0000 call LIBFC_JetiBox_SetPos
603 045e 80E0 ldi r24,lo8(__c.5)
604 0460 90E0 ldi r25,hi8(__c.5)
605 0462 9F93 push r25
606 0464 8F93 push r24
607 0466 1F93 push r17
608 0468 0F93 push r16
609 046a E091 0000 lds r30,_printf_P
610 046e F091 0000 lds r31,(_printf_P)+1
611 0472 0995 icall
612 0474 0F90 pop __tmp_reg__
613 0476 0F90 pop __tmp_reg__
614 0478 0F90 pop __tmp_reg__
615 047a 0F90 pop __tmp_reg__
616 .L18:
617 047c 80E1 ldi r24,lo8(16)
618 047e 0E94 0000 call LIBFC_JetiBox_SetPos
619 0482 8FED ldi r24,lo8(223)
620 0484 90E0 ldi r25,hi8(223)
621 0486 9F93 push r25
622 0488 8F93 push r24
623 048a 8091 0000 lds r24,GPSInfo+6
624 048e 9091 0000 lds r25,(GPSInfo+6)+1
625 0492 9F93 push r25
626 0494 8F93 push r24
627 0496 8091 0000 lds r24,GPSInfo+4
628 049a 9091 0000 lds r25,(GPSInfo+4)+1
629 049e 6AE0 ldi r22,lo8(10)
630 04a0 70E0 ldi r23,hi8(10)
631 04a2 0E94 0000 call __udivmodhi4
632 04a6 7F93 push r23
633 04a8 6F93 push r22
634 04aa 80E0 ldi r24,lo8(__c.6)
635 04ac 90E0 ldi r25,hi8(__c.6)
636 04ae 9F93 push r25
637 04b0 8F93 push r24
638 04b2 80E0 ldi r24,lo8(pm(LIBFC_JetiBox_Putchar))
639 04b4 90E0 ldi r25,hi8(pm(LIBFC_JetiBox_Putchar))
640 04b6 9F93 push r25
641 04b8 8F93 push r24
642 04ba E091 0000 lds r30,_printf_P
643 04be F091 0000 lds r31,(_printf_P)+1
644 04c2 0995 icall
645 04c4 8DB7 in r24,__SP_L__
646 04c6 9EB7 in r25,__SP_H__
647 04c8 0A96 adiw r24,10
648 04ca 8DBF out __SP_L__,r24
649 04cc 12C0 rjmp .L11
650 .L12:
651 04ce 82E0 ldi r24,lo8(2)
652 04d0 0E94 0000 call LIBFC_JetiBox_SetPos
653 04d4 80E0 ldi r24,lo8(__c.7)
654 04d6 90E0 ldi r25,hi8(__c.7)
655 04d8 9F93 push r25
656 04da 8F93 push r24
657 04dc DF93 push r29
658 04de CF93 push r28
659 04e0 E091 0000 lds r30,_printf_P
660 04e4 F091 0000 lds r31,(_printf_P)+1
661 04e8 0995 icall
662 04ea 0F90 pop __tmp_reg__
663 04ec 0F90 pop __tmp_reg__
664 04ee 0F90 pop __tmp_reg__
665 04f0 0F90 pop __tmp_reg__
666 .L11:
667 /* epilogue: frame size=0 */
668 04f2 DF91 pop r29
669 04f4 CF91 pop r28
670 04f6 1F91 pop r17
671 04f8 0F91 pop r16
672 04fa 0895 ret
673 /* epilogue end (size=5) */
674 /* function Menu_PosInfo size 154 (145) */
676 .lcomm item.0,1
677 .lcomm last_item.1,1
678 .global JetiBox_Update
680 JetiBox_Update:
681 /* prologue: frame size=0 */
682 04fc CF93 push r28
683 /* prologue end (size=1) */
684 04fe C82F mov r28,r24
685 0500 2091 0000 lds r18,item.0
686 0504 2093 0000 sts last_item.1,r18
687 0508 9927 clr r25
688 050a 8F32 cpi r24,47
689 050c 9105 cpc r25,__zero_reg__
690 050e 09F1 breq .L27
691 0510 8033 cpi r24,48
692 0512 9105 cpc r25,__zero_reg__
693 0514 1CF4 brge .L30
694 0516 4F97 sbiw r24,31
695 0518 A1F0 breq .L26
696 051a 2CC0 rjmp .L22
697 .L30:
698 051c 8F34 cpi r24,79
699 051e 9105 cpc r25,__zero_reg__
700 0520 01F1 breq .L28
701 0522 8F38 cpi r24,143
702 0524 9105 cpc r25,__zero_reg__
703 0526 31F5 brne .L22
704 0528 2223 tst r18
705 052a 19F4 brne .L24
706 052c 81E0 ldi r24,lo8(1)
707 052e 90E0 ldi r25,hi8(1)
708 0530 38C0 rjmp .L21
709 .L24:
710 0532 86E0 ldi r24,lo8(6)
711 0534 289F mul r18,r24
712 0536 F001 movw r30,r0
713 0538 1124 clr r1
714 053a E050 subi r30,lo8(-(JetiBox_Menu))
715 053c F040 sbci r31,hi8(-(JetiBox_Menu))
716 /* #APP */
717 053e 8491 lpm r24, Z
718
719 /* #NOAPP */
720 0540 17C0 rjmp .L32
721 .L26:
722 0542 86E0 ldi r24,lo8(6)
723 0544 289F mul r18,r24
724 0546 F001 movw r30,r0
725 0548 1124 clr r1
726 054a E050 subi r30,lo8(-(JetiBox_Menu+1))
727 054c F040 sbci r31,hi8(-(JetiBox_Menu+1))
728 /* #APP */
729 054e 8491 lpm r24, Z
730
731 /* #NOAPP */
732 0550 0FC0 rjmp .L32
733 .L27:
734 0552 86E0 ldi r24,lo8(6)
735 0554 289F mul r18,r24
736 0556 F001 movw r30,r0
737 0558 1124 clr r1
738 055a E050 subi r30,lo8(-(JetiBox_Menu+2))
739 055c F040 sbci r31,hi8(-(JetiBox_Menu+2))
740 /* #APP */
741 055e 8491 lpm r24, Z
742
743 /* #NOAPP */
744 0560 07C0 rjmp .L32
745 .L28:
746 0562 86E0 ldi r24,lo8(6)
747 0564 289F mul r18,r24
748 0566 F001 movw r30,r0
749 0568 1124 clr r1
750 056a E050 subi r30,lo8(-(JetiBox_Menu+3))
751 056c F040 sbci r31,hi8(-(JetiBox_Menu+3))
752 /* #APP */
753 056e 8491 lpm r24, Z
754
755 /* #NOAPP */
756 .L32:
757 0570 8093 0000 sts item.0,r24
758 .L22:
759 0574 9091 0000 lds r25,item.0
760 0578 8091 0000 lds r24,last_item.1
761 057c 9813 cpse r25,r24
762 057e C0E0 ldi r28,lo8(0)
763 .L31:
764 0580 0E94 0000 call LIBFC_JetiBox_Clear
765 0584 9091 0000 lds r25,item.0
766 0588 86E0 ldi r24,lo8(6)
767 058a 989F mul r25,r24
768 058c F001 movw r30,r0
769 058e 1124 clr r1
770 0590 E050 subi r30,lo8(-(JetiBox_Menu+4))
771 0592 F040 sbci r31,hi8(-(JetiBox_Menu+4))
772 /* #APP */
773 0594 2591 lpm r18, Z+
774 0596 3491 lpm r19, Z
775
776 /* #NOAPP */
777 0598 8C2F mov r24,r28
778 059a F901 movw r30,r18
779 059c 0995 icall
780 059e 80E0 ldi r24,lo8(0)
781 05a0 90E0 ldi r25,hi8(0)
782 .L21:
783 /* epilogue: frame size=0 */
784 05a2 CF91 pop r28
785 05a4 0895 ret
786 /* epilogue end (size=2) */
787 /* function JetiBox_Update size 103 (100) */
789 /* File "jetimenu.c": code 741 = 0x02e5 ( 714), prologues 11, epilogues 16 */
DEFINED SYMBOLS
*ABS*:00000000 jetimenu.c
C:\Users\Arthur-P\AppData\Local\Temp/cc00baaa.s:3 *ABS*:0000003f __SREG__
C:\Users\Arthur-P\AppData\Local\Temp/cc00baaa.s:4 *ABS*:0000003e __SP_H__
C:\Users\Arthur-P\AppData\Local\Temp/cc00baaa.s:5 *ABS*:0000003d __SP_L__
C:\Users\Arthur-P\AppData\Local\Temp/cc00baaa.s:6 *ABS*:00000000 __tmp_reg__
C:\Users\Arthur-P\AppData\Local\Temp/cc00baaa.s:7 *ABS*:00000001 __zero_reg__
C:\Users\Arthur-P\AppData\Local\Temp/cc00baaa.s:14 .progmem.data:00000000 JetiBox_Menu
C:\Users\Arthur-P\AppData\Local\Temp/cc00baaa.s:62 .text:00000000 Menu_Status
C:\Users\Arthur-P\AppData\Local\Temp/cc00baaa.s:282 .text:000001e6 Menu_Temperature
C:\Users\Arthur-P\AppData\Local\Temp/cc00baaa.s:430 .text:0000030e Menu_Battery
C:\Users\Arthur-P\AppData\Local\Temp/cc00baaa.s:536 .text:000003c8 Menu_PosInfo
C:\Users\Arthur-P\AppData\Local\Temp/cc00baaa.s:37 .progmem.data:00000018 __c.14
C:\Users\Arthur-P\AppData\Local\Temp/cc00baaa.s:41 .progmem.data:00000021 __c.15
C:\Users\Arthur-P\AppData\Local\Temp/cc00baaa.s:45 .progmem.data:0000002d __c.16
C:\Users\Arthur-P\AppData\Local\Temp/cc00baaa.s:49 .progmem.data:00000034 __c.17
C:\Users\Arthur-P\AppData\Local\Temp/cc00baaa.s:53 .progmem.data:0000003f __c.18
C:\Users\Arthur-P\AppData\Local\Temp/cc00baaa.s:57 .progmem.data:0000004c __c.19
C:\Users\Arthur-P\AppData\Local\Temp/cc00baaa.s:265 .progmem.data:00000053 __c.10
C:\Users\Arthur-P\AppData\Local\Temp/cc00baaa.s:269 .progmem.data:00000063 __c.11
C:\Users\Arthur-P\AppData\Local\Temp/cc00baaa.s:273 .progmem.data:00000073 __c.12
C:\Users\Arthur-P\AppData\Local\Temp/cc00baaa.s:277 .progmem.data:00000084 __c.13
C:\Users\Arthur-P\AppData\Local\Temp/cc00baaa.s:421 .progmem.data:0000008d __c.8
C:\Users\Arthur-P\AppData\Local\Temp/cc00baaa.s:425 .progmem.data:000000a0 __c.9
C:\Users\Arthur-P\AppData\Local\Temp/cc00baaa.s:511 .progmem.data:000000ac __c.2
C:\Users\Arthur-P\AppData\Local\Temp/cc00baaa.s:515 .progmem.data:000000bb __c.3
C:\Users\Arthur-P\AppData\Local\Temp/cc00baaa.s:519 .progmem.data:000000c0 __c.4
C:\Users\Arthur-P\AppData\Local\Temp/cc00baaa.s:523 .progmem.data:000000c5 __c.5
C:\Users\Arthur-P\AppData\Local\Temp/cc00baaa.s:527 .progmem.data:000000ca __c.6
C:\Users\Arthur-P\AppData\Local\Temp/cc00baaa.s:531 .progmem.data:000000da __c.7
.bss:00000000 item.0
C:\Users\Arthur-P\AppData\Local\Temp/cc00baaa.s:676 .bss:00000001 last_item.1
C:\Users\Arthur-P\AppData\Local\Temp/cc00baaa.s:680 .text:000004fc JetiBox_Update
UNDEFINED SYMBOLS
__do_copy_data
__do_clear_bss
LIBFC_JetiBox_SetPos
UBat
__divmodhi4
LIBFC_JetiBox_Putchar
_printf_P
NaviDataOkay
GPSInfo
__udivmodhi4
ErsatzKompass
GIER_GRAD_FAKTOR
__divmodsi4
NC_ErrorCode
FlugSekunden
Capacity
EE_Parameter
VarioCharacter
HoehenWert
Motor
RequiredMotors
LIBFC_JetiBox_Clear