Blame | Last modification | View Log | RSS feed
1 .file "compass.c"
2 .arch atmega644
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 .text
11 .global __vector_19
13 __vector_19:
14 /* prologue: frame size=0 */
15 0000 1F92 push __zero_reg__
16 0002 0F92 push __tmp_reg__
17 0004 0FB6 in __tmp_reg__,__SREG__
18 0006 0F92 push __tmp_reg__
19 0008 1124 clr __zero_reg__
20 000a 2F93 push r18
21 000c 3F93 push r19
22 000e 4F93 push r20
23 0010 8F93 push r24
24 0012 9F93 push r25
25 /* prologue end (size=10) */
26 0014 8091 0000 lds r24,MM3
27 0018 8330 cpi r24,lo8(3)
28 001a 01F0 breq .L3
29 001c 8430 cpi r24,lo8(4)
30 001e 01F4 brne .L10
31 0020 00C0 rjmp .L4
32 .L3:
33 0022 8EB5 in r24,78-0x20
34 0024 8093 0000 sts tmp.2057,r24
35 0028 1EBC out 78-0x20,__zero_reg__
36 002a 84E0 ldi r24,lo8(4)
37 002c 8093 0000 sts MM3,r24
38 0030 00C0 rjmp .L10
39 .L4:
40 0032 8091 0000 lds r24,tmp.2057
41 0036 9927 clr r25
42 0038 382F mov r19,r24
43 003a 2227 clr r18
44 003c 8EB5 in r24,78-0x20
45 003e 9927 clr r25
46 0040 282B or r18,r24
47 0042 392B or r19,r25
48 0044 C901 movw r24,r18
49 0046 8D50 subi r24,lo8(-(499))
50 0048 9E4F sbci r25,hi8(-(499))
51 004a 875E subi r24,lo8(999)
52 004c 9340 sbci r25,hi8(999)
53 004e 00F4 brsh .L5
54 0050 8091 0000 lds r24,MM3+3
55 0054 8530 cpi r24,lo8(5)
56 0056 01F0 breq .L8
57 0058 8630 cpi r24,lo8(6)
58 005a 01F4 brne .L11
59 005c 00C0 rjmp .L9
60 .L8:
61 005e 3093 0000 sts (MM3+4)+1,r19
62 0062 2093 0000 sts MM3+4,r18
63 0066 86E0 ldi r24,lo8(6)
64 0068 00C0 rjmp .L12
65 .L9:
66 006a 3093 0000 sts (MM3+6)+1,r19
67 006e 2093 0000 sts MM3+6,r18
68 0072 87E0 ldi r24,lo8(7)
69 0074 00C0 rjmp .L12
70 .L11:
71 0076 3093 0000 sts (MM3+8)+1,r19
72 007a 2093 0000 sts MM3+8,r18
73 007e 85E0 ldi r24,lo8(5)
74 .L12:
75 0080 8093 0000 sts MM3+3,r24
76 .L5:
77 0084 1092 0000 sts MM3,__zero_reg__
78 .L10:
79 /* epilogue: frame size=0 */
80 0088 9F91 pop r25
81 008a 8F91 pop r24
82 008c 4F91 pop r20
83 008e 3F91 pop r19
84 0090 2F91 pop r18
85 0092 0F90 pop __tmp_reg__
86 0094 0FBE out __SREG__,__tmp_reg__
87 0096 0F90 pop __tmp_reg__
88 0098 1F90 pop __zero_reg__
89 009a 1895 reti
90 /* epilogue end (size=10) */
91 /* function __vector_19 size 79 (59) */
93 .global heading_MM3
95 heading_MM3:
96 /* prologue: frame size=10 */
97 009c AAE0 ldi r26,lo8(10)
98 009e B0E0 ldi r27,hi8(10)
99 00a0 E0E0 ldi r30,lo8(gs(1f))
100 00a2 F0E0 ldi r31,hi8(gs(1f))
101 00a4 0C94 0000 jmp __prologue_saves__+0
102 1:
103 /* prologue end (size=6) */
104 00a8 A090 0000 lds r10,EE_Parameter+31
105 00ac BB24 clr r11
106 00ae 33E0 ldi r19,3
107 00b0 AA0C 1: lsl r10
108 00b2 BB1C rol r11
109 00b4 3A95 dec r19
110 00b6 01F4 brne 1b
111 00b8 CC24 clr r12
112 00ba DD24 clr r13
113 00bc 6091 0000 lds r22,IntegralNick
114 00c0 7091 0000 lds r23,(IntegralNick)+1
115 00c4 8091 0000 lds r24,(IntegralNick)+2
116 00c8 9091 0000 lds r25,(IntegralNick)+3
117 00cc A601 movw r20,r12
118 00ce 9501 movw r18,r10
119 00d0 0E94 0000 call __divmodsi4
120 00d4 7901 movw r14,r18
121 00d6 8A01 movw r16,r20
122 00d8 FF24 clr r15
123 00da E7FC sbrc r14,7
124 00dc F094 com r15
125 00de C701 movw r24,r14
126 00e0 0E94 0000 call sin_i
127 00e4 2C01 movw r4,r24
128 00e6 C701 movw r24,r14
129 00e8 0E94 0000 call cos_i
130 00ec 3C01 movw r6,r24
131 00ee 6091 0000 lds r22,IntegralRoll
132 00f2 7091 0000 lds r23,(IntegralRoll)+1
133 00f6 8091 0000 lds r24,(IntegralRoll)+2
134 00fa 9091 0000 lds r25,(IntegralRoll)+3
135 00fe A601 movw r20,r12
136 0100 9501 movw r18,r10
137 0102 0E94 0000 call __divmodsi4
138 0106 7901 movw r14,r18
139 0108 8A01 movw r16,r20
140 010a FF24 clr r15
141 010c E7FC sbrc r14,7
142 010e F094 com r15
143 0110 C701 movw r24,r14
144 0112 0E94 0000 call sin_i
145 0116 9A87 std Y+10,r25
146 0118 8987 std Y+9,r24
147 011a C701 movw r24,r14
148 011c 0E94 0000 call cos_i
149 0120 1C01 movw r2,r24
150 0122 6091 0000 lds r22,MM3+4
151 0126 7091 0000 lds r23,(MM3+4)+1
152 012a E090 0000 lds r14,MM3+6
153 012e F090 0000 lds r15,(MM3+6)+1
154 0132 2091 0000 lds r18,MM3_calib+1
155 0136 3327 clr r19
156 0138 27FD sbrc r18,7
157 013a 3095 com r19
158 013c E21A sub r14,r18
159 013e F30A sbc r15,r19
160 0140 0027 clr r16
161 0142 F7FC sbrc r15,7
162 0144 0095 com r16
163 0146 102F mov r17,r16
164 0148 A090 0000 lds r10,MM3+8
165 014c B090 0000 lds r11,(MM3+8)+1
166 0150 2091 0000 lds r18,MM3_calib+2
167 0154 3327 clr r19
168 0156 27FD sbrc r18,7
169 0158 3095 com r19
170 015a A21A sub r10,r18
171 015c B30A sbc r11,r19
172 015e CC24 clr r12
173 0160 B7FC sbrc r11,7
174 0162 C094 com r12
175 0164 DC2C mov r13,r12
176 0166 2091 0000 lds r18,MM3_calib
177 016a 3327 clr r19
178 016c 27FD sbrc r18,7
179 016e 3095 com r19
180 0170 621B sub r22,r18
181 0172 730B sbc r23,r19
182 0174 8827 clr r24
183 0176 77FD sbrc r23,7
184 0178 8095 com r24
185 017a 982F mov r25,r24
186 017c 8824 clr r8
187 017e 77FC sbrc r7,7
188 0180 8094 com r8
189 0182 982C mov r9,r8
190 0184 A401 movw r20,r8
191 0186 9301 movw r18,r6
192 0188 0E94 0000 call __mulsi3
193 018c 3B01 movw r6,r22
194 018e 4C01 movw r8,r24
195 0190 8985 ldd r24,Y+9
196 0192 9A85 ldd r25,Y+10
197 0194 AA27 clr r26
198 0196 97FD sbrc r25,7
199 0198 A095 com r26
200 019a BA2F mov r27,r26
201 019c 8D83 std Y+5,r24
202 019e 9E83 std Y+6,r25
203 01a0 AF83 std Y+7,r26
204 01a2 B887 std Y+8,r27
205 01a4 C201 movw r24,r4
206 01a6 AA27 clr r26
207 01a8 97FD sbrc r25,7
208 01aa A095 com r26
209 01ac BA2F mov r27,r26
210 01ae 8983 std Y+1,r24
211 01b0 9A83 std Y+2,r25
212 01b2 AB83 std Y+3,r26
213 01b4 BC83 std Y+4,r27
214 01b6 C801 movw r24,r16
215 01b8 B701 movw r22,r14
216 01ba 2D81 ldd r18,Y+5
217 01bc 3E81 ldd r19,Y+6
218 01be 4F81 ldd r20,Y+7
219 01c0 5885 ldd r21,Y+8
220 01c2 0E94 0000 call __mulsi3
221 01c6 2981 ldd r18,Y+1
222 01c8 3A81 ldd r19,Y+2
223 01ca 4B81 ldd r20,Y+3
224 01cc 5C81 ldd r21,Y+4
225 01ce 0E94 0000 call __mulsi3
226 01d2 20E0 ldi r18,lo8(1024)
227 01d4 34E0 ldi r19,hi8(1024)
228 01d6 40E0 ldi r20,hlo8(1024)
229 01d8 50E0 ldi r21,hhi8(1024)
230 01da 0E94 0000 call __divmodsi4
231 01de 620E add r6,r18
232 01e0 731E adc r7,r19
233 01e2 841E adc r8,r20
234 01e4 951E adc r9,r21
235 01e6 4424 clr r4
236 01e8 37FC sbrc r3,7
237 01ea 4094 com r4
238 01ec 542C mov r5,r4
239 01ee C601 movw r24,r12
240 01f0 B501 movw r22,r10
241 01f2 A201 movw r20,r4
242 01f4 9101 movw r18,r2
243 01f6 0E94 0000 call __mulsi3
244 01fa 2981 ldd r18,Y+1
245 01fc 3A81 ldd r19,Y+2
246 01fe 4B81 ldd r20,Y+3
247 0200 5C81 ldd r21,Y+4
248 0202 0E94 0000 call __mulsi3
249 0206 20E0 ldi r18,lo8(1024)
250 0208 34E0 ldi r19,hi8(1024)
251 020a 40E0 ldi r20,hlo8(1024)
252 020c 50E0 ldi r21,hhi8(1024)
253 020e 0E94 0000 call __divmodsi4
254 0212 621A sub r6,r18
255 0214 730A sbc r7,r19
256 0216 840A sbc r8,r20
257 0218 950A sbc r9,r21
258 021a C801 movw r24,r16
259 021c B701 movw r22,r14
260 021e A201 movw r20,r4
261 0220 9101 movw r18,r2
262 0222 0E94 0000 call __mulsi3
263 0226 7B01 movw r14,r22
264 0228 8C01 movw r16,r24
265 022a C601 movw r24,r12
266 022c B501 movw r22,r10
267 022e 2D81 ldd r18,Y+5
268 0230 3E81 ldd r19,Y+6
269 0232 4F81 ldd r20,Y+7
270 0234 5885 ldd r21,Y+8
271 0236 0E94 0000 call __mulsi3
272 023a E60E add r14,r22
273 023c F71E adc r15,r23
274 023e 081F adc r16,r24
275 0240 191F adc r17,r25
276 0242 C801 movw r24,r16
277 0244 B701 movw r22,r14
278 0246 20E1 ldi r18,lo8(16)
279 0248 30E0 ldi r19,hi8(16)
280 024a 40E0 ldi r20,hlo8(16)
281 024c 50E0 ldi r21,hhi8(16)
282 024e 0E94 0000 call __divmodsi4
283 0252 7901 movw r14,r18
284 0254 8A01 movw r16,r20
285 0256 C401 movw r24,r8
286 0258 B301 movw r22,r6
287 025a 20E0 ldi r18,lo8(1024)
288 025c 34E0 ldi r19,hi8(1024)
289 025e 40E0 ldi r20,hlo8(1024)
290 0260 50E0 ldi r21,hhi8(1024)
291 0262 0E94 0000 call __divmodsi4
292 0266 DA01 movw r26,r20
293 0268 C901 movw r24,r18
294 026a B701 movw r22,r14
295 026c 0E94 0000 call atan2_i
296 0270 9C01 movw r18,r24
297 0272 97FF sbrs r25,7
298 0274 00C0 rjmp .L14
299 0276 8827 clr r24
300 0278 9927 clr r25
301 027a 821B sub r24,r18
302 027c 930B sbc r25,r19
303 027e 00C0 rjmp .L16
304 .L14:
305 0280 88E6 ldi r24,lo8(360)
306 0282 91E0 ldi r25,hi8(360)
307 0284 821B sub r24,r18
308 0286 930B sbc r25,r19
309 .L16:
310 /* epilogue: frame size=10 */
311 0288 E2E1 ldi r30,18
312 028a C65F subi r28,-10
313 028c 0C94 0000 jmp __epilogue_restores__+0
314 /* epilogue end (size=4) */
315 /* function heading_MM3 size 250 (240) */
317 .global timer0_MM3
319 timer0_MM3:
320 /* prologue: frame size=0 */
321 /* prologue end (size=0) */
322 0290 8091 0000 lds r24,MM3
323 0294 8130 cpi r24,lo8(1)
324 0296 01F0 breq .L21
325 0298 8130 cpi r24,lo8(1)
326 029a 00F0 brlo .L20
327 029c 8230 cpi r24,lo8(2)
328 029e 01F4 brne .L29
329 02a0 00C0 rjmp .L22
330 .L20:
331 02a2 2A9A sbi 37-0x20,2
332 02a4 81E0 ldi r24,lo8(1)
333 02a6 00C0 rjmp .L31
334 .L21:
335 02a8 2A98 cbi 37-0x20,2
336 02aa 8091 0000 lds r24,MM3+3
337 02ae 8530 cpi r24,lo8(5)
338 02b0 01F4 brne .L23
339 02b2 81E3 ldi r24,lo8(49)
340 02b4 00C0 rjmp .L30
341 .L23:
342 02b6 8630 cpi r24,lo8(6)
343 02b8 01F4 brne .L26
344 02ba 82E3 ldi r24,lo8(50)
345 02bc 00C0 rjmp .L30
346 .L26:
347 02be 83E3 ldi r24,lo8(51)
348 .L30:
349 02c0 8EBD out 78-0x20,r24
350 02c2 88E0 ldi r24,lo8(8)
351 02c4 90E0 ldi r25,hi8(8)
352 02c6 0E94 0000 call SetDelay
353 02ca 9093 0000 sts (MM3+1)+1,r25
354 02ce 8093 0000 sts MM3+1,r24
355 02d2 82E0 ldi r24,lo8(2)
356 .L31:
357 02d4 8093 0000 sts MM3,r24
358 02d8 0895 ret
359 .L22:
360 02da 8091 0000 lds r24,MM3+1
361 02de 9091 0000 lds r25,(MM3+1)+1
362 02e2 0E94 0000 call CheckDelay
363 02e6 8823 tst r24
364 02e8 01F0 breq .L29
365 02ea 1EBC out 78-0x20,__zero_reg__
366 02ec 83E0 ldi r24,lo8(3)
367 02ee 8093 0000 sts MM3,r24
368 .L29:
369 02f2 0895 ret
370 /* epilogue: frame size=0 */
371 /* epilogue: noreturn */
372 /* epilogue end (size=0) */
373 /* function timer0_MM3 size 50 (50) */
375 .global calib_MM3
377 calib_MM3:
378 /* prologue: frame size=0 */
379 02f4 A0E0 ldi r26,lo8(0)
380 02f6 B0E0 ldi r27,hi8(0)
381 02f8 E0E0 ldi r30,lo8(gs(1f))
382 02fa F0E0 ldi r31,hi8(gs(1f))
383 02fc 0C94 0000 jmp __prologue_saves__+4
384 1:
385 /* prologue end (size=6) */
386 0300 299A sbi 37-0x20,1
387 0302 8091 0000 lds r24,PlatinenVersion
388 0306 8A30 cpi r24,lo8(10)
389 0308 01F4 brne .L33
390 030a 2898 cbi 37-0x20,0
391 030c 00C0 rjmp .L60
392 .L33:
393 030e 289A sbi 37-0x20,0
394 .L60:
395 0310 AA24 clr r10
396 0312 BB24 clr r11
397 0314 00E0 ldi r16,lo8(0)
398 0316 10E0 ldi r17,hi8(0)
399 0318 8824 clr r8
400 031a 9924 clr r9
401 031c EE24 clr r14
402 031e FF24 clr r15
403 0320 6624 clr r6
404 0322 7724 clr r7
405 0324 CC24 clr r12
406 0326 DD24 clr r13
407 0328 62E3 ldi r22,lo8(50)
408 032a 462E mov r4,r22
409 032c 5524 clr r5
410 .L59:
411 032e 8091 0000 lds r24,MM3+4
412 0332 9091 0000 lds r25,(MM3+4)+1
413 0336 0817 cp r16,r24
414 0338 1907 cpc r17,r25
415 033a 04F4 brge .L36
416 033c 0091 0000 lds r16,MM3+4
417 0340 1091 0000 lds r17,(MM3+4)+1
418 0344 00C0 rjmp .L38
419 .L36:
420 0346 8091 0000 lds r24,MM3+4
421 034a 9091 0000 lds r25,(MM3+4)+1
422 034e 8A15 cp r24,r10
423 0350 9B05 cpc r25,r11
424 0352 04F4 brge .L38
425 0354 A090 0000 lds r10,MM3+4
426 0358 B090 0000 lds r11,(MM3+4)+1
427 .L38:
428 035c 8091 0000 lds r24,MM3+6
429 0360 9091 0000 lds r25,(MM3+6)+1
430 0364 E816 cp r14,r24
431 0366 F906 cpc r15,r25
432 0368 04F4 brge .L40
433 036a E090 0000 lds r14,MM3+6
434 036e F090 0000 lds r15,(MM3+6)+1
435 0372 00C0 rjmp .L42
436 .L40:
437 0374 8091 0000 lds r24,MM3+6
438 0378 9091 0000 lds r25,(MM3+6)+1
439 037c 8815 cp r24,r8
440 037e 9905 cpc r25,r9
441 0380 04F4 brge .L42
442 0382 8090 0000 lds r8,MM3+6
443 0386 9090 0000 lds r9,(MM3+6)+1
444 .L42:
445 038a 8091 0000 lds r24,MM3+8
446 038e 9091 0000 lds r25,(MM3+8)+1
447 0392 C816 cp r12,r24
448 0394 D906 cpc r13,r25
449 0396 04F4 brge .L44
450 0398 C090 0000 lds r12,MM3+8
451 039c D090 0000 lds r13,(MM3+8)+1
452 03a0 00C0 rjmp .L46
453 .L44:
454 03a2 8091 0000 lds r24,MM3+8
455 03a6 9091 0000 lds r25,(MM3+8)+1
456 03aa 8615 cp r24,r6
457 03ac 9705 cpc r25,r7
458 03ae 04F4 brge .L46
459 03b0 6090 0000 lds r6,MM3+8
460 03b4 7090 0000 lds r7,(MM3+8)+1
461 .L46:
462 03b8 5520 tst r5
463 03ba 01F4 brne .L48
464 03bc 85B1 in r24,37-0x20
465 03be 91E0 ldi r25,lo8(1)
466 03c0 8927 eor r24,r25
467 03c2 85B9 out 37-0x20,r24
468 03c4 85B1 in r24,37-0x20
469 03c6 92E0 ldi r25,lo8(2)
470 03c8 8927 eor r24,r25
471 03ca 85B9 out 37-0x20,r24
472 03cc 82E3 ldi r24,lo8(50)
473 03ce 90E0 ldi r25,hi8(50)
474 03d0 9093 0000 sts (beeptime)+1,r25
475 03d4 8093 0000 sts beeptime,r24
476 03d8 52E3 ldi r21,lo8(50)
477 03da 552E mov r5,r21
478 .L48:
479 03dc 8AE0 ldi r24,lo8(10)
480 03de 90E0 ldi r25,hi8(10)
481 03e0 0E94 0000 call SetDelay
482 03e4 EC01 movw r28,r24
483 .L50:
484 03e6 CE01 movw r24,r28
485 03e8 0E94 0000 call CheckDelay
486 03ec 8823 tst r24
487 03ee 01F0 breq .L50
488 03f0 E091 0000 lds r30,EE_Parameter+2
489 03f4 FF27 clr r31
490 03f6 EE0F lsl r30
491 03f8 FF1F rol r31
492 03fa E050 subi r30,lo8(-(PPM_in))
493 03fc F040 sbci r31,hi8(-(PPM_in))
494 03fe 8081 ld r24,Z
495 0400 9181 ldd r25,Z+1
496 0402 8436 cpi r24,100
497 0404 9105 cpc r25,__zero_reg__
498 0406 04F4 brge .L52
499 0408 4A94 dec r4
500 .L52:
501 040a 4420 tst r4
502 040c 01F0 breq .L54
503 040e 5A94 dec r5
504 0410 00C0 rjmp .L59
505 .L54:
506 0412 C801 movw r24,r16
507 0414 8A19 sub r24,r10
508 0416 9B09 sbc r25,r11
509 0418 9093 0000 sts (MM3_calib+3)+1,r25
510 041c 8093 0000 sts MM3_calib+3,r24
511 0420 C701 movw r24,r14
512 0422 8819 sub r24,r8
513 0424 9909 sbc r25,r9
514 0426 9093 0000 sts (MM3_calib+5)+1,r25
515 042a 8093 0000 sts MM3_calib+5,r24
516 042e C601 movw r24,r12
517 0430 8619 sub r24,r6
518 0432 9709 sbc r25,r7
519 0434 9093 0000 sts (MM3_calib+7)+1,r25
520 0438 8093 0000 sts MM3_calib+7,r24
521 043c E0E0 ldi r30,lo8(MM3_calib)
522 043e F0E0 ldi r31,hi8(MM3_calib)
523 0440 C801 movw r24,r16
524 0442 8A0D add r24,r10
525 0444 9B1D adc r25,r11
526 0446 62E0 ldi r22,lo8(2)
527 0448 70E0 ldi r23,hi8(2)
528 044a 0E94 0000 call __divmodhi4
529 044e 6093 0000 sts MM3_calib,r22
530 0452 C701 movw r24,r14
531 0454 880D add r24,r8
532 0456 991D adc r25,r9
533 0458 62E0 ldi r22,lo8(2)
534 045a 70E0 ldi r23,hi8(2)
535 045c 0E94 0000 call __divmodhi4
536 0460 6093 0000 sts MM3_calib+1,r22
537 0464 C601 movw r24,r12
538 0466 860D add r24,r6
539 0468 971D adc r25,r7
540 046a 62E0 ldi r22,lo8(2)
541 046c 70E0 ldi r23,hi8(2)
542 046e 0E94 0000 call __divmodhi4
543 0472 6093 0000 sts MM3_calib+2,r22
544 0476 89E0 ldi r24,lo8(9)
545 0478 A0E0 ldi r26,lo8(ee_calib)
546 047a B0E0 ldi r27,hi8(ee_calib)
547 /* #APP */
548 047c 182E mov __zero_reg__,r24
549 047e 0E94 0000 call __eeprom_write_block_1F2021
550 /* #NOAPP */
551 /* epilogue: frame size=0 */
552 0482 E0E1 ldi r30,16
553 0484 CDB7 in r28,__SP_L__
554 0486 DEB7 in r29,__SP_H__
555 0488 0C94 0000 jmp __epilogue_restores__+4
556 /* epilogue end (size=5) */
557 /* function calib_MM3 size 205 (194) */
559 .global init_MM3
561 init_MM3:
562 /* prologue: frame size=0 */
563 /* prologue end (size=0) */
564 048c 83ED ldi r24,lo8(-45)
565 048e 8CBD out 76-0x20,r24
566 0490 84B1 in r24,36-0x20
567 0492 846A ori r24,lo8(-92)
568 0494 84B9 out 36-0x20,r24
569 0496 8091 0000 lds r24,PlatinenVersion
570 049a 8A30 cpi r24,lo8(10)
571 049c 01F4 brne .L62
572 049e 539A sbi 42-0x20,3
573 04a0 5B98 cbi 43-0x20,3
574 04a2 00C0 rjmp .L64
575 .L62:
576 04a4 3E9A sbi 39-0x20,6
577 04a6 4698 cbi 40-0x20,6
578 .L64:
579 04a8 85E0 ldi r24,lo8(5)
580 04aa 8093 0000 sts MM3+3,r24
581 04ae 1092 0000 sts MM3,__zero_reg__
582 04b2 89E0 ldi r24,lo8(9)
583 04b4 E0E0 ldi r30,lo8(MM3_calib)
584 04b6 F0E0 ldi r31,hi8(MM3_calib)
585 04b8 A0E0 ldi r26,lo8(ee_calib)
586 04ba B0E0 ldi r27,hi8(ee_calib)
587 /* #APP */
588 04bc 182E mov __zero_reg__,r24
589 04be 0E94 0000 call __eeprom_read_block_1F2021
590 /* #NOAPP */
591 /* epilogue: frame size=0 */
592 04c2 0895 ret
593 /* epilogue end (size=1) */
594 /* function init_MM3 size 29 (28) */
596 .lcomm tmp.2057,1
597 .comm MM3,10,1
598 .comm MM3_calib,9,1
599 .global ee_calib
600 .section .eeprom,"aw",@progbits
603 ee_calib:
604 0000 0000 0000 .skip 9,0
604 0000 0000
604 00
605 /* File "compass.c": code 613 = 0x0265 ( 571), prologues 22, epilogues 20 */
DEFINED SYMBOLS
*ABS*:00000000 compass.c
C:\DOKUME~1\PIMMEL~1\LOKALE~1\Temp/cc23eFKu.s:3 *ABS*:0000003f __SREG__
C:\DOKUME~1\PIMMEL~1\LOKALE~1\Temp/cc23eFKu.s:4 *ABS*:0000003e __SP_H__
C:\DOKUME~1\PIMMEL~1\LOKALE~1\Temp/cc23eFKu.s:5 *ABS*:0000003d __SP_L__
C:\DOKUME~1\PIMMEL~1\LOKALE~1\Temp/cc23eFKu.s:6 *ABS*:00000000 __tmp_reg__
C:\DOKUME~1\PIMMEL~1\LOKALE~1\Temp/cc23eFKu.s:7 *ABS*:00000001 __zero_reg__
C:\DOKUME~1\PIMMEL~1\LOKALE~1\Temp/cc23eFKu.s:13 .text:00000000 __vector_19
*COM*:0000000a MM3
.bss:00000000 tmp.2057
C:\DOKUME~1\PIMMEL~1\LOKALE~1\Temp/cc23eFKu.s:95 .text:0000009c heading_MM3
*COM*:00000009 MM3_calib
C:\DOKUME~1\PIMMEL~1\LOKALE~1\Temp/cc23eFKu.s:319 .text:00000290 timer0_MM3
C:\DOKUME~1\PIMMEL~1\LOKALE~1\Temp/cc23eFKu.s:377 .text:000002f4 calib_MM3
C:\DOKUME~1\PIMMEL~1\LOKALE~1\Temp/cc23eFKu.s:603 .eeprom:00000000 ee_calib
C:\DOKUME~1\PIMMEL~1\LOKALE~1\Temp/cc23eFKu.s:561 .text:0000048c init_MM3
UNDEFINED SYMBOLS
__do_copy_data
__do_clear_bss
__prologue_saves__
EE_Parameter
IntegralNick
__divmodsi4
sin_i
cos_i
IntegralRoll
__mulsi3
atan2_i
__epilogue_restores__
SetDelay
CheckDelay
PlatinenVersion
beeptime
PPM_in
__divmodhi4
__eeprom_write_block_1F2021
__eeprom_read_block_1F2021