0,0 → 1,839 |
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 |