Blame | Last modification | View Log | RSS feed
1 .file "main.c"
2 .arch atmega8
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
17 .Ltext0:
18 .global __vector_8
20 __vector_8:
21 .LFB10:
22 .LM1:
23 /* prologue: frame size=0 */
24 0000 1F92 push __zero_reg__
25 0002 0F92 push __tmp_reg__
26 0004 0FB6 in __tmp_reg__,__SREG__
27 0006 0F92 push __tmp_reg__
28 0008 1124 clr __zero_reg__
29 000a 8F93 push r24
30 /* prologue end (size=6) */
31 .LM2:
32 000c 8091 0000 lds r24,TMR1OvF
33 0010 8F5F subi r24,lo8(-(1))
34 0012 8093 0000 sts TMR1OvF,r24
35 /* epilogue: frame size=0 */
36 0016 8F91 pop r24
37 0018 0F90 pop __tmp_reg__
38 001a 0FBE out __SREG__,__tmp_reg__
39 001c 0F90 pop __tmp_reg__
40 001e 1F90 pop __zero_reg__
41 0020 1895 reti
42 /* epilogue end (size=6) */
43 /* function __vector_8 size 17 (5) */
44 .LFE10:
46 .global __vector_5
48 __vector_5:
49 .LFB11:
50 .LM3:
51 /* prologue: frame size=0 */
52 0022 1F92 push __zero_reg__
53 0024 0F92 push __tmp_reg__
54 0026 0FB6 in __tmp_reg__,__SREG__
55 0028 0F92 push __tmp_reg__
56 002a 1124 clr __zero_reg__
57 002c 2F93 push r18
58 002e 3F93 push r19
59 0030 4F93 push r20
60 0032 8F93 push r24
61 0034 9F93 push r25
62 /* prologue end (size=10) */
63 .LM4:
64 0036 0EB4 in __tmp_reg__,78-0x20
65 0038 06FE sbrs __tmp_reg__,6
66 003a 00C0 rjmp .L4
67 .LM5:
68 003c 8EB5 in r24,78-0x20
69 003e 8F7B andi r24,lo8(-65)
70 0040 8EBD out 78-0x20,r24
71 .LM6:
72 0042 1092 0000 sts TMR1OvF,__zero_reg__
73 .LM7:
74 0046 86B5 in r24,70-0x20
75 0048 97B5 in r25,(70)+1-0x20
76 004a 9093 0000 sts (pos_ICR.1752)+1,r25
77 004e 8093 0000 sts pos_ICR.1752,r24
78 0052 00C0 rjmp .L12
79 .L4:
80 .LM8:
81 0054 8EB5 in r24,78-0x20
82 0056 8064 ori r24,lo8(64)
83 0058 8EBD out 78-0x20,r24
84 .LM9:
85 005a 26B5 in r18,70-0x20
86 005c 37B5 in r19,(70)+1-0x20
87 005e 8091 0000 lds r24,TMR1OvF
88 0062 8091 0000 lds r24,pos_ICR.1752
89 0066 9091 0000 lds r25,(pos_ICR.1752)+1
90 006a 281B sub r18,r24
91 006c 390B sbc r19,r25
92 006e 3093 0000 sts (ppm.1753)+1,r19
93 0072 2093 0000 sts ppm.1753,r18
94 .LM10:
95 0076 C901 movw r24,r18
96 0078 8955 subi r24,lo8(-(-601))
97 007a 9240 sbci r25,hi8(-(-601))
98 007c 8750 subi r24,lo8(1799)
99 007e 9740 sbci r25,hi8(1799)
100 0080 00F4 brsh .L12
101 .LM11:
102 0082 88E0 ldi r24,hi8(2101)
103 0084 2533 cpi r18,lo8(2101)
104 0086 3807 cpc r19,r24
105 0088 00F0 brlo .L8
106 008a 84E3 ldi r24,lo8(2100)
107 008c 98E0 ldi r25,hi8(2100)
108 008e 00C0 rjmp .L13
109 .L8:
110 .LM12:
111 0090 2458 subi r18,lo8(900)
112 0092 3340 sbci r19,hi8(900)
113 0094 00F4 brsh .L10
114 0096 84E8 ldi r24,lo8(900)
115 0098 93E0 ldi r25,hi8(900)
116 .L13:
117 009a 9093 0000 sts (ppm.1753)+1,r25
118 009e 8093 0000 sts ppm.1753,r24
119 .L10:
120 .LM13:
121 00a2 2091 0000 lds r18,ppm_signal
122 00a6 3091 0000 lds r19,(ppm_signal)+1
123 00aa C901 movw r24,r18
124 00ac 43E0 ldi r20,3
125 00ae 880F 1: lsl r24
126 00b0 991F rol r25
127 00b2 4A95 dec r20
128 00b4 01F4 brne 1b
129 00b6 821B sub r24,r18
130 00b8 930B sbc r25,r19
131 00ba 2091 0000 lds r18,ppm.1753
132 00be 3091 0000 lds r19,(ppm.1753)+1
133 00c2 820F add r24,r18
134 00c4 931F adc r25,r19
135 00c6 23E0 ldi r18,3
136 00c8 9695 1: lsr r25
137 00ca 8795 ror r24
138 00cc 2A95 dec r18
139 00ce 01F4 brne 1b
140 00d0 9093 0000 sts (ppm.1753)+1,r25
141 00d4 8093 0000 sts ppm.1753,r24
142 .LM14:
143 00d8 9093 0000 sts (ppm_signal)+1,r25
144 00dc 8093 0000 sts ppm_signal,r24
145 .LM15:
146 00e0 81E0 ldi r24,lo8(1)
147 00e2 8093 0000 sts ppm_new,r24
148 .L12:
149 /* epilogue: frame size=0 */
150 00e6 9F91 pop r25
151 00e8 8F91 pop r24
152 00ea 4F91 pop r20
153 00ec 3F91 pop r19
154 00ee 2F91 pop r18
155 00f0 0F90 pop __tmp_reg__
156 00f2 0FBE out __SREG__,__tmp_reg__
157 00f4 0F90 pop __tmp_reg__
158 00f6 1F90 pop __zero_reg__
159 00f8 1895 reti
160 /* epilogue end (size=10) */
161 /* function __vector_5 size 110 (90) */
162 .LFE11:
164 .global StartIRModulation
166 StartIRModulation:
167 .LFB12:
168 .LM16:
169 /* prologue: frame size=0 */
170 /* prologue end (size=0) */
171 .LM17:
172 00fa 89E0 ldi r24,lo8(9)
173 00fc 85BD out 69-0x20,r24
174 .LM18:
175 00fe 8CE6 ldi r24,lo8(108)
176 0100 83BD out 67-0x20,r24
177 .LM19:
178 0102 85E0 ldi r24,lo8(5)
179 0104 83BF out 83-0x20,r24
180 .LM20:
181 0106 89B7 in r24,89-0x20
182 0108 8E7F andi r24,lo8(-2)
183 010a 89BF out 89-0x20,r24
184 /* epilogue: frame size=0 */
185 010c 0895 ret
186 /* epilogue end (size=1) */
187 /* function StartIRModulation size 10 (9) */
188 .LFE12:
190 .global __vector_9
192 __vector_9:
193 .LFB13:
194 .LM21:
195 /* prologue: frame size=0 */
196 010e 1F92 push __zero_reg__
197 0110 0F92 push __tmp_reg__
198 0112 0FB6 in __tmp_reg__,__SREG__
199 0114 0F92 push __tmp_reg__
200 0116 1124 clr __zero_reg__
201 0118 8F93 push r24
202 011a 9F93 push r25
203 /* prologue end (size=7) */
204 .LM22:
205 011c 9091 0000 lds r25,IRstate
206 0120 9230 cpi r25,lo8(2)
207 0122 01F0 breq .L19
208 .LM23:
209 0124 9330 cpi r25,lo8(3)
210 0126 00F4 brsh .L22
211 0128 9130 cpi r25,lo8(1)
212 012a 01F0 breq .+2
213 012c 00C0 rjmp .L17
214 012e 00C0 rjmp .L18
215 .L22:
216 0130 9330 cpi r25,lo8(3)
217 0132 01F0 breq .L20
218 0134 9430 cpi r25,lo8(4)
219 0136 01F0 breq .+2
220 0138 00C0 rjmp .L17
221 013a 00C0 rjmp .L21
222 .L18:
223 .LM24:
224 013c 85B5 in r24,69-0x20
225 013e 8061 ori r24,lo8(16)
226 0140 85BD out 69-0x20,r24
227 .LM25:
228 0142 82E0 ldi r24,lo8(2)
229 0144 8093 0000 sts IRstate,r24
230 .LM26:
231 0148 1092 0000 sts IRbit,__zero_reg__
232 .LM27:
233 014c 8AE9 ldi r24,lo8(-102)
234 014e 00C0 rjmp .L32
235 .L19:
236 .LM28:
237 0150 85B5 in r24,69-0x20
238 0152 8F7E andi r24,lo8(-17)
239 0154 85BD out 69-0x20,r24
240 .LM29:
241 0156 83E0 ldi r24,lo8(3)
242 0158 8093 0000 sts IRstate,r24
243 .LM30:
244 015c 8091 0000 lds r24,IRdat
245 0160 86FD sbrc r24,6
246 0162 00C0 rjmp .L24
247 0164 88EF ldi r24,lo8(-8)
248 .L32:
249 0166 82BF out 82-0x20,r24
250 0168 00C0 rjmp .L31
251 .L24:
252 .LM31:
253 016a 88EE ldi r24,lo8(-24)
254 016c 00C0 rjmp .L32
255 .L20:
256 .LM32:
257 016e 85B5 in r24,69-0x20
258 0170 8061 ori r24,lo8(16)
259 0172 85BD out 69-0x20,r24
260 .LM33:
261 0174 88EF ldi r24,lo8(-8)
262 0176 82BF out 82-0x20,r24
263 .LM34:
264 0178 8091 0000 lds r24,IRdat
265 017c 880F lsl r24
266 017e 8093 0000 sts IRdat,r24
267 .LM35:
268 0182 8091 0000 lds r24,IRbit
269 0186 8F5F subi r24,lo8(-(1))
270 0188 8093 0000 sts IRbit,r24
271 .LM36:
272 018c 8091 0000 lds r24,IRbit
273 0190 8730 cpi r24,lo8(7)
274 0192 00F4 brsh .L26
275 0194 82E0 ldi r24,lo8(2)
276 0196 8093 0000 sts IRstate,r24
277 019a 00C0 rjmp .L31
278 .L26:
279 .LM37:
280 019c 84E0 ldi r24,lo8(4)
281 019e 8093 0000 sts IRstate,r24
282 .LM38:
283 01a2 1092 0000 sts IRbit,__zero_reg__
284 01a6 00C0 rjmp .L31
285 .L21:
286 .LM39:
287 01a8 85B5 in r24,69-0x20
288 01aa 8F7E andi r24,lo8(-17)
289 01ac 85BD out 69-0x20,r24
290 .LM40:
291 01ae 8CE3 ldi r24,lo8(60)
292 01b0 82BF out 82-0x20,r24
293 .LM41:
294 01b2 8091 0000 lds r24,IRbit
295 01b6 8431 cpi r24,lo8(20)
296 01b8 00F4 brsh .L28
297 01ba 9093 0000 sts IRstate,r25
298 01be 00C0 rjmp .L30
299 .L28:
300 .LM42:
301 01c0 85E0 ldi r24,lo8(5)
302 01c2 8093 0000 sts IRstate,r24
303 .L30:
304 .LM43:
305 01c6 8091 0000 lds r24,IRbit
306 01ca 8F5F subi r24,lo8(-(1))
307 01cc 8093 0000 sts IRbit,r24
308 01d0 00C0 rjmp .L31
309 .L17:
310 .LM44:
311 01d2 89B7 in r24,89-0x20
312 01d4 8E7F andi r24,lo8(-2)
313 01d6 89BF out 89-0x20,r24
314 .LM45:
315 01d8 1092 0000 sts IRstate,__zero_reg__
316 .L31:
317 /* epilogue: frame size=0 */
318 01dc 9F91 pop r25
319 01de 8F91 pop r24
320 01e0 0F90 pop __tmp_reg__
321 01e2 0FBE out __SREG__,__tmp_reg__
322 01e4 0F90 pop __tmp_reg__
323 01e6 1F90 pop __zero_reg__
324 01e8 1895 reti
325 /* epilogue end (size=7) */
326 /* function __vector_9 size 110 (96) */
327 .LFE13:
329 .global SendIRSignal
331 SendIRSignal:
332 .LFB14:
333 .LM46:
334 /* prologue: frame size=0 */
335 /* prologue end (size=0) */
336 .LVL0:
337 01ea 982F mov r25,r24
338 .LVL1:
339 .L35:
340 .LM47:
341 01ec 8091 0000 lds r24,IRstate
342 01f0 8823 tst r24
343 01f2 01F4 brne .L35
344 .LM48:
345 01f4 81E0 ldi r24,lo8(1)
346 01f6 8093 0000 sts IRstate,r24
347 .LM49:
348 01fa 9093 0000 sts IRdat,r25
349 .LM50:
350 01fe 88B7 in r24,88-0x20
351 0200 18BE out 88-0x20,__zero_reg__
352 .LM51:
353 0202 89B7 in r24,89-0x20
354 0204 8160 ori r24,lo8(1)
355 0206 89BF out 89-0x20,r24
356 /* epilogue: frame size=0 */
357 0208 0895 ret
358 /* epilogue end (size=1) */
359 /* function SendIRSignal size 16 (15) */
360 .LFE14:
362 .global StartPPM
364 StartPPM:
365 .LFB15:
366 .LM52:
367 /* prologue: frame size=0 */
368 /* prologue end (size=0) */
369 .LM53:
370 020a 1FBC out 79-0x20,__zero_reg__
371 .LM54:
372 020c 82EC ldi r24,lo8(-62)
373 020e 8EBD out 78-0x20,r24
374 .LM55:
375 0210 89B7 in r24,89-0x20
376 0212 8462 ori r24,lo8(36)
377 0214 89BF out 89-0x20,r24
378 /* epilogue: frame size=0 */
379 0216 0895 ret
380 /* epilogue end (size=1) */
381 /* function StartPPM size 7 (6) */
382 .LFE15:
384 .global GetPPM
386 GetPPM:
387 .LFB16:
388 .LM56:
389 /* prologue: frame size=0 */
390 /* prologue end (size=0) */
391 .LM57:
392 0218 29B7 in r18,89-0x20
393 .LVL2:
394 .LM58:
395 021a 89B7 in r24,89-0x20
396 021c 8F7D andi r24,lo8(-33)
397 021e 89BF out 89-0x20,r24
398 .LM59:
399 0220 8091 0000 lds r24,ppm_signal
400 0224 9091 0000 lds r25,(ppm_signal)+1
401 .LVL3:
402 .LM60:
403 0228 29BF out 89-0x20,r18
404 .LVL4:
405 /* epilogue: frame size=0 */
406 022a 0895 ret
407 /* epilogue end (size=1) */
408 /* function GetPPM size 10 (9) */
409 .LFE16:
411 .global main
413 main:
414 .LFB17:
415 .LM61:
416 /* prologue: frame size=0 */
417 /* prologue end (size=0) */
418 .LM62:
419 022c 88E0 ldi r24,lo8(8)
420 022e 84BB out 52-0x20,r24
421 .LM63:
422 0230 15BA out 53-0x20,__zero_reg__
423 .LM64:
424 0232 80E8 ldi r24,lo8(-128)
425 0234 81BB out 49-0x20,r24
426 .LM65:
427 0236 12BA out 50-0x20,__zero_reg__
428 .LM66:
429 0238 8EE0 ldi r24,lo8(14)
430 023a 87BB out 55-0x20,r24
431 .LM67:
432 023c 18BA out 56-0x20,__zero_reg__
433 .LM68:
434 023e 00D0 rcall StartUART
435 .LBB12:
436 .LBB13:
437 .LM69:
438 0240 1FBC out 79-0x20,__zero_reg__
439 .LM70:
440 0242 82EC ldi r24,lo8(-62)
441 0244 8EBD out 78-0x20,r24
442 .LM71:
443 0246 89B7 in r24,89-0x20
444 0248 8462 ori r24,lo8(36)
445 024a 89BF out 89-0x20,r24
446 .LBE13:
447 .LBE12:
448 .LM72:
449 024c 00D0 rcall StartIRModulation
450 .LM73:
451 /* #APP */
452 024e 7894 sei
453 .LVL5:
454 /* #NOAPP */
455 .L64:
456 .LM74:
457 0250 8091 0000 lds r24,ppm_new
458 0254 8130 cpi r24,lo8(1)
459 0256 01F4 brne .L64
460 .LM75:
461 0258 1092 0000 sts ppm_new,__zero_reg__
462 .LBB14:
463 .LBB15:
464 .LM76:
465 025c 89B7 in r24,89-0x20
466 .LVL6:
467 .LM77:
468 025e 99B7 in r25,89-0x20
469 0260 9F7D andi r25,lo8(-33)
470 0262 99BF out 89-0x20,r25
471 .LM78:
472 0264 2091 0000 lds r18,ppm_signal
473 0268 3091 0000 lds r19,(ppm_signal)+1
474 .LVL7:
475 .LM79:
476 026c 89BF out 89-0x20,r24
477 .LBE15:
478 .LBE14:
479 .LM80:
480 026e 275D subi r18,lo8(1751)
481 0270 3640 sbci r19,hi8(1751)
482 .LVL8:
483 0272 04F0 brlt .L47
484 .LM81:
485 0274 81E4 ldi r24,lo8(65)
486 0276 00D0 rcall SendIRSignal
487 .LVL9:
488 .LM82:
489 0278 AB9A sbi 53-0x20,3
490 .L49:
491 .LBB16:
492 .LBB17:
493 .LM83:
494 027a 89B7 in r24,89-0x20
495 .LVL10:
496 .LM84:
497 027c 99B7 in r25,89-0x20
498 027e 9F7D andi r25,lo8(-33)
499 0280 99BF out 89-0x20,r25
500 .LM85:
501 0282 2091 0000 lds r18,ppm_signal
502 0286 3091 0000 lds r19,(ppm_signal)+1
503 .LVL11:
504 .LM86:
505 028a 89BF out 89-0x20,r24
506 .LBE17:
507 .LBE16:
508 .LM87:
509 028c 2357 subi r18,lo8(1651)
510 028e 3640 sbci r19,hi8(1651)
511 .LVL12:
512 0290 04F4 brge .L49
513 .LM88:
514 0292 AB98 cbi 53-0x20,3
515 .LVL13:
516 .L47:
517 .LBB18:
518 .LBB19:
519 .LM89:
520 0294 89B7 in r24,89-0x20
521 .LVL14:
522 .LM90:
523 0296 99B7 in r25,89-0x20
524 0298 9F7D andi r25,lo8(-33)
525 029a 99BF out 89-0x20,r25
526 .LM91:
527 029c 2091 0000 lds r18,ppm_signal
528 02a0 3091 0000 lds r19,(ppm_signal)+1
529 .LVL15:
530 .LM92:
531 02a4 89BF out 89-0x20,r24
532 .LBE19:
533 .LBE18:
534 .LM93:
535 02a6 225E subi r18,lo8(1250)
536 02a8 3440 sbci r19,hi8(1250)
537 .LVL16:
538 02aa 04F4 brge .L64
539 .LM94:
540 02ac 979A sbi 50-0x20,7
541 .LM95:
542 02ae 80E4 ldi r24,lo8(64)
543 02b0 00D0 rcall SendIRSignal
544 .LVL17:
545 .L52:
546 .LBB20:
547 .LBB21:
548 .LM96:
549 02b2 89B7 in r24,89-0x20
550 .LVL18:
551 .LM97:
552 02b4 99B7 in r25,89-0x20
553 02b6 9F7D andi r25,lo8(-33)
554 02b8 99BF out 89-0x20,r25
555 .LM98:
556 02ba 2091 0000 lds r18,ppm_signal
557 02be 3091 0000 lds r19,(ppm_signal)+1
558 .LVL19:
559 .LM99:
560 02c2 89BF out 89-0x20,r24
561 .LBE21:
562 .LBE20:
563 .LM100:
564 02c4 2654 subi r18,lo8(1350)
565 02c6 3540 sbci r19,hi8(1350)
566 .LVL20:
567 02c8 04F0 brlt .L52
568 .LM101:
569 02ca 9798 cbi 50-0x20,7
570 02cc 00C0 rjmp .L64
571 /* epilogue: frame size=0 */
572 /* epilogue: noreturn */
573 /* epilogue end (size=0) */
574 /* function main size 86 (86) */
575 .LFE17:
577 .global ppm_signal
578 .global ppm_signal
579 .section .bss
582 ppm_signal:
583 0000 0000 .skip 2,0
584 .global ppm_new
585 .global ppm_new
588 ppm_new:
589 0002 00 .skip 1,0
590 .global TMR1OvF
591 .global TMR1OvF
594 TMR1OvF:
595 0003 00 .skip 1,0
596 .global IRstate
597 .global IRstate
600 IRstate:
601 0004 00 .skip 1,0
602 .global IRdat
603 .global IRdat
606 IRdat:
607 0005 00 .skip 1,0
608 .global IRbit
609 .global IRbit
612 IRbit:
613 0006 00 .skip 1,0
614 .lcomm ppm.1753,2
615 .lcomm pos_ICR.1752,2
696 .Letext0:
DEFINED SYMBOLS
*ABS*:00000000 main.c
C:\DOKUME~1\Walter\LOKALE~1\Temp/cclgOpT2.s:3 *ABS*:0000003f __SREG__
C:\DOKUME~1\Walter\LOKALE~1\Temp/cclgOpT2.s:4 *ABS*:0000003e __SP_H__
C:\DOKUME~1\Walter\LOKALE~1\Temp/cclgOpT2.s:5 *ABS*:0000003d __SP_L__
C:\DOKUME~1\Walter\LOKALE~1\Temp/cclgOpT2.s:6 *ABS*:00000000 __tmp_reg__
C:\DOKUME~1\Walter\LOKALE~1\Temp/cclgOpT2.s:7 *ABS*:00000001 __zero_reg__
C:\DOKUME~1\Walter\LOKALE~1\Temp/cclgOpT2.s:20 .text:00000000 __vector_8
C:\DOKUME~1\Walter\LOKALE~1\Temp/cclgOpT2.s:594 .bss:00000003 TMR1OvF
C:\DOKUME~1\Walter\LOKALE~1\Temp/cclgOpT2.s:48 .text:00000022 __vector_5
C:\DOKUME~1\Walter\LOKALE~1\Temp/cclgOpT2.s:614 .bss:00000009 pos_ICR.1752
.bss:00000007 ppm.1753
C:\DOKUME~1\Walter\LOKALE~1\Temp/cclgOpT2.s:582 .bss:00000000 ppm_signal
C:\DOKUME~1\Walter\LOKALE~1\Temp/cclgOpT2.s:588 .bss:00000002 ppm_new
C:\DOKUME~1\Walter\LOKALE~1\Temp/cclgOpT2.s:166 .text:000000fa StartIRModulation
C:\DOKUME~1\Walter\LOKALE~1\Temp/cclgOpT2.s:192 .text:0000010e __vector_9
C:\DOKUME~1\Walter\LOKALE~1\Temp/cclgOpT2.s:600 .bss:00000004 IRstate
C:\DOKUME~1\Walter\LOKALE~1\Temp/cclgOpT2.s:612 .bss:00000006 IRbit
C:\DOKUME~1\Walter\LOKALE~1\Temp/cclgOpT2.s:606 .bss:00000005 IRdat
C:\DOKUME~1\Walter\LOKALE~1\Temp/cclgOpT2.s:331 .text:000001ea SendIRSignal
C:\DOKUME~1\Walter\LOKALE~1\Temp/cclgOpT2.s:364 .text:0000020a StartPPM
C:\DOKUME~1\Walter\LOKALE~1\Temp/cclgOpT2.s:386 .text:00000218 GetPPM
C:\DOKUME~1\Walter\LOKALE~1\Temp/cclgOpT2.s:413 .text:0000022c main
UNDEFINED SYMBOLS
__do_copy_data
__do_clear_bss
StartUART