Go to most recent revision | Blame | Last modification | View Log | RSS feed
1 .file "printf_P.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 Putchar
13 Putchar:
14 /* prologue: frame size=0 */
15 /* prologue end (size=0) */
16 0000 982F mov r25,r24
17 0002 8091 0000 lds r24,PrintZiel
18 0006 8130 cpi r24,lo8(1)
19 0008 01F0 breq .L5
20 000a 892F mov r24,r25
21 000c 0E94 0000 call uart_putchar
22 0010 282F mov r18,r24
23 0012 3327 clr r19
24 0014 00C0 rjmp .L1
25 .L5:
26 0016 8091 0000 lds r24,DispPtr
27 001a E82F mov r30,r24
28 001c FF27 clr r31
29 001e E050 subi r30,lo8(-(DisplayBuff))
30 0020 F040 sbci r31,hi8(-(DisplayBuff))
31 0022 9083 st Z,r25
32 0024 8F5F subi r24,lo8(-(1))
33 0026 8093 0000 sts DispPtr,r24
34 002a 21E0 ldi r18,lo8(1)
35 002c 30E0 ldi r19,hi8(1)
36 .L1:
37 002e C901 movw r24,r18
38 /* epilogue: frame size=0 */
39 0030 0895 ret
40 /* epilogue end (size=1) */
41 /* function Putchar size 25 (24) */
43 .global PRINT
45 PRINT:
46 /* prologue: frame size=0 */
47 0032 0F93 push r16
48 0034 1F93 push r17
49 0036 CF93 push r28
50 0038 DF93 push r29
51 /* prologue end (size=4) */
52 003a 8C01 movw r16,r24
53 003c EB01 movw r28,r22
54 003e 672B or r22,r23
55 0040 01F0 breq .L12
56 .L10:
57 0042 F801 movw r30,r16
58 0044 8191 ld r24,Z+
59 0046 8F01 movw r16,r30
60 0048 0E94 0000 call Putchar
61 004c 2197 sbiw r28,1
62 004e 01F0 breq .L12
63 0050 F801 movw r30,r16
64 0052 8191 ld r24,Z+
65 0054 8F01 movw r16,r30
66 0056 0E94 0000 call Putchar
67 005a 2197 sbiw r28,1
68 005c 01F4 brne .L10
69 .L12:
70 /* epilogue: frame size=0 */
71 005e DF91 pop r29
72 0060 CF91 pop r28
73 0062 1F91 pop r17
74 0064 0F91 pop r16
75 0066 0895 ret
76 /* epilogue end (size=5) */
77 /* function PRINT size 29 (20) */
79 .global PRINTP
81 PRINTP:
82 /* prologue: frame size=0 */
83 0068 0F93 push r16
84 006a 1F93 push r17
85 006c CF93 push r28
86 006e DF93 push r29
87 /* prologue end (size=4) */
88 0070 8C01 movw r16,r24
89 0072 EB01 movw r28,r22
90 0074 672B or r22,r23
91 0076 01F0 breq .L20
92 .L18:
93 0078 F801 movw r30,r16
94 007a 0F5F subi r16,lo8(-(1))
95 007c 1F4F sbci r17,hi8(-(1))
96 /* #APP */
97 007e 8491 lpm r24, Z
98
99 /* #NOAPP */
100 0080 0E94 0000 call Putchar
101 0084 2197 sbiw r28,1
102 0086 01F0 breq .L20
103 0088 F801 movw r30,r16
104 008a 0F5F subi r16,lo8(-(1))
105 008c 1F4F sbci r17,hi8(-(1))
106 /* #APP */
107 008e 8491 lpm r24, Z
108
109 /* #NOAPP */
110 0090 0E94 0000 call Putchar
111 0094 2197 sbiw r28,1
112 0096 01F4 brne .L18
113 .L20:
114 /* epilogue: frame size=0 */
115 0098 DF91 pop r29
116 009a CF91 pop r28
117 009c 1F91 pop r17
118 009e 0F91 pop r16
119 00a0 0895 ret
120 /* epilogue end (size=5) */
121 /* function PRINTP size 37 (28) */
123 .global PAD_SP
125 PAD_SP:
126 /* prologue: frame size=0 */
127 00a2 CF93 push r28
128 /* prologue end (size=1) */
129 00a4 C82F mov r28,r24
130 00a6 1816 cp __zero_reg__,r24
131 00a8 04F4 brge .L28
132 .L26:
133 00aa 80E2 ldi r24,lo8(32)
134 00ac 0E94 0000 call Putchar
135 00b0 C150 subi r28,lo8(-(-1))
136 00b2 1C16 cp __zero_reg__,r28
137 00b4 04F0 brlt .L26
138 .L28:
139 /* epilogue: frame size=0 */
140 00b6 CF91 pop r28
141 00b8 0895 ret
142 /* epilogue end (size=2) */
143 /* function PAD_SP size 12 (9) */
145 .global PAD_0
147 PAD_0:
148 /* prologue: frame size=0 */
149 00ba CF93 push r28
150 /* prologue end (size=1) */
151 00bc C82F mov r28,r24
152 00be 1816 cp __zero_reg__,r24
153 00c0 04F4 brge .L35
154 .L33:
155 00c2 80E3 ldi r24,lo8(48)
156 00c4 0E94 0000 call Putchar
157 00c8 C150 subi r28,lo8(-(-1))
158 00ca 1C16 cp __zero_reg__,r28
159 00cc 04F0 brlt .L33
160 .L35:
161 /* epilogue: frame size=0 */
162 00ce CF91 pop r28
163 00d0 0895 ret
164 /* epilogue end (size=2) */
165 /* function PAD_0 size 12 (9) */
167 .global _printf_P
169 _printf_P:
170 /* prologue: frame size=48 */
171 00d2 A0E3 ldi r26,lo8(48)
172 00d4 B0E0 ldi r27,hi8(48)
173 00d6 E0E0 ldi r30,pm_lo8(1f)
174 00d8 F0E0 ldi r31,pm_hi8(1f)
175 00da 0C94 0000 jmp __prologue_saves__+0
176 1:
177 /* prologue end (size=6) */
178 00de 2696 adiw r28,69-63
179 00e0 8FAD ldd r24,Y+63
180 00e2 2697 sbiw r28,69-63
181 00e4 2896 adiw r28,70-62
182 00e6 EEAD ldd r30,Y+62
183 00e8 FFAD ldd r31,Y+63
184 00ea 2897 sbiw r28,70-62
185 00ec 8824 clr r8
186 00ee 9924 clr r9
187 00f0 5401 movw r10,r8
188 00f2 8093 0000 sts PrintZiel,r24
189 00f6 48E4 ldi r20,lo8(72)
190 00f8 C42E mov r12,r20
191 00fa D12C mov r13,__zero_reg__
192 00fc CC0E add r12,r28
193 00fe DD1E adc r13,r29
194 0100 7F01 movw r14,r30
195 .L160:
196 0102 C701 movw r24,r14
197 .L154:
198 0104 F701 movw r30,r14
199 /* #APP */
200 0106 1491 lpm r17, Z
201
202 /* #NOAPP */
203 0108 1123 tst r17
204 010a 01F0 breq .L40
205 010c 1532 cpi r17,lo8(37)
206 010e 01F0 breq .L40
207 0110 0894 sec
208 0112 E11C adc r14,__zero_reg__
209 0114 F11C adc r15,__zero_reg__
210 0116 00C0 rjmp .L154
211 .L40:
212 0118 B701 movw r22,r14
213 011a 681B sub r22,r24
214 011c 790B sbc r23,r25
215 011e 01F0 breq .+2
216 0120 00C0 rjmp .L163
217 .L43:
218 0122 1123 tst r17
219 0124 01F4 brne .+2
220 0126 00C0 rjmp .L45
221 0128 0894 sec
222 012a E11C adc r14,__zero_reg__
223 012c F11C adc r15,__zero_reg__
224 012e 1FA6 std Y+47,__zero_reg__
225 0130 3FA4 ldd r3,Y+47
226 0132 232C mov r2,r3
227 0134 0FEF ldi r16,lo8(-1)
228 0136 39A6 std Y+41,r3
229 .L46:
230 .L161:
231 0138 F701 movw r30,r14
232 013a 0894 sec
233 013c E11C adc r14,__zero_reg__
234 013e F11C adc r15,__zero_reg__
235 /* #APP */
236 0140 1491 lpm r17, Z
237
238 .L47:
239 /* #NOAPP */
240 .L162:
241 0142 1537 cpi r17,lo8(117)
242 0144 01F0 breq .L49
243 .L168:
244 0146 812F mov r24,r17
245 0148 8062 ori r24,lo8(32)
246 014a 8837 cpi r24,lo8(120)
247 014c 01F0 breq .L49
248 .L48:
249 014e 1032 cpi r17,lo8(32)
250 0150 01F4 brne .+2
251 0152 00C0 rjmp .L164
252 .L52:
253 0154 1332 cpi r17,lo8(35)
254 0156 01F4 brne .+2
255 0158 00C0 rjmp .L165
256 015a 1A32 cpi r17,lo8(42)
257 015c 01F4 brne .+2
258 015e 00C0 rjmp .L58
259 0160 1D32 cpi r17,lo8(45)
260 0162 01F4 brne .+2
261 0164 00C0 rjmp .L58
262 0166 1B32 cpi r17,lo8(43)
263 0168 01F0 breq .L155
264 016a 1E32 cpi r17,lo8(46)
265 016c 01F0 breq .L166
266 016e 1033 cpi r17,lo8(48)
267 0170 01F4 brne .+2
268 0172 00C0 rjmp .L167
269 0174 812F mov r24,r17
270 0176 8153 subi r24,lo8(-(-49))
271 0178 8930 cpi r24,lo8(9)
272 017a 00F0 brlo .+2
273 017c 00C0 rjmp .L75
274 017e 60E0 ldi r22,lo8(0)
275 0180 70E0 ldi r23,hi8(0)
276 .L76:
277 0182 CB01 movw r24,r22
278 0184 880F lsl r24
279 0186 991F rol r25
280 0188 880F lsl r24
281 018a 991F rol r25
282 018c 880F lsl r24
283 018e 991F rol r25
284 0190 860F add r24,r22
285 0192 971F adc r25,r23
286 0194 680F add r22,r24
287 0196 791F adc r23,r25
288 0198 610F add r22,r17
289 019a 711D adc r23,__zero_reg__
290 019c 6053 subi r22,lo8(-(-48))
291 019e 7040 sbci r23,hi8(-(-48))
292 01a0 F701 movw r30,r14
293 01a2 0894 sec
294 01a4 E11C adc r14,__zero_reg__
295 01a6 F11C adc r15,__zero_reg__
296 /* #APP */
297 01a8 1491 lpm r17, Z
298
299 /* #NOAPP */
300 01aa 812F mov r24,r17
301 01ac 8053 subi r24,lo8(-(-48))
302 01ae 8A30 cpi r24,lo8(10)
303 01b0 00F0 brlo .L76
304 01b2 262E mov r2,r22
305 01b4 1537 cpi r17,lo8(117)
306 01b6 01F4 brne .L168
307 .L49:
308 01b8 30FE sbrs r3,0
309 01ba 00C0 rjmp .L50
310 01bc F601 movw r30,r12
311 01be 84E0 ldi r24,lo8(4)
312 01c0 90E0 ldi r25,hi8(4)
313 01c2 C80E add r12,r24
314 01c4 D91E adc r13,r25
315 01c6 8080 ld r8,Z
316 01c8 9180 ldd r9,Z+1
317 01ca A280 ldd r10,Z+2
318 01cc B380 ldd r11,Z+3
319 01ce 1032 cpi r17,lo8(32)
320 01d0 01F0 breq .+2
321 01d2 00C0 rjmp .L52
322 .L164:
323 01d4 89A5 ldd r24,Y+41
324 01d6 8823 tst r24
325 01d8 01F0 breq .+2
326 01da 00C0 rjmp .L161
327 .L155:
328 01dc 19A7 std Y+41,r17
329 01de 00C0 rjmp .L161
330 .L166:
331 01e0 F701 movw r30,r14
332 01e2 0894 sec
333 01e4 E11C adc r14,__zero_reg__
334 01e6 F11C adc r15,__zero_reg__
335 /* #APP */
336 01e8 1491 lpm r17, Z
337
338 /* #NOAPP */
339 01ea 1A32 cpi r17,lo8(42)
340 01ec 01F4 brne .+2
341 01ee 00C0 rjmp .L169
342 01f0 60E0 ldi r22,lo8(0)
343 01f2 70E0 ldi r23,hi8(0)
344 01f4 00C0 rjmp .L156
345 .L170:
346 01f6 CB01 movw r24,r22
347 01f8 880F lsl r24
348 01fa 991F rol r25
349 01fc 880F lsl r24
350 01fe 991F rol r25
351 0200 880F lsl r24
352 0202 991F rol r25
353 0204 860F add r24,r22
354 0206 971F adc r25,r23
355 0208 680F add r22,r24
356 020a 791F adc r23,r25
357 020c 610F add r22,r17
358 020e 711D adc r23,__zero_reg__
359 0210 6053 subi r22,lo8(-(-48))
360 0212 7040 sbci r23,hi8(-(-48))
361 0214 F701 movw r30,r14
362 0216 0894 sec
363 0218 E11C adc r14,__zero_reg__
364 021a F11C adc r15,__zero_reg__
365 /* #APP */
366 021c 1491 lpm r17, Z
367
368 /* #NOAPP */
369 .L156:
370 021e 812F mov r24,r17
371 0220 8053 subi r24,lo8(-(-48))
372 0222 8A30 cpi r24,lo8(10)
373 0224 00F0 brlo .L170
374 0226 EFEF ldi r30,hi8(-1)
375 0228 6F3F cpi r22,lo8(-1)
376 022a 7E07 cpc r23,r30
377 022c 04F4 brge .L70
378 022e 6FEF ldi r22,lo8(-1)
379 0230 7FEF ldi r23,hi8(-1)
380 .L70:
381 0232 062F mov r16,r22
382 0234 00C0 rjmp .L162
383 .L50:
384 0236 F601 movw r30,r12
385 0238 82E0 ldi r24,lo8(2)
386 023a 90E0 ldi r25,hi8(2)
387 023c C80E add r12,r24
388 023e D91E adc r13,r25
389 0240 8081 ld r24,Z
390 0242 9181 ldd r25,Z+1
391 0244 4C01 movw r8,r24
392 0246 AA24 clr r10
393 0248 BB24 clr r11
394 024a 00C0 rjmp .L48
395 .L163:
396 024c 0E94 0000 call PRINTP
397 0250 00C0 rjmp .L43
398 .L58:
399 0252 1A32 cpi r17,lo8(42)
400 0254 01F4 brne .L59
401 0256 F601 movw r30,r12
402 0258 82E0 ldi r24,lo8(2)
403 025a 90E0 ldi r25,hi8(2)
404 025c C80E add r12,r24
405 025e D91E adc r13,r25
406 0260 2080 ld r2,Z
407 0262 2220 tst r2
408 0264 04F0 brlt .+2
409 0266 00C0 rjmp .L161
410 0268 2194 neg r2
411 .L59:
412 026a 90E1 ldi r25,lo8(16)
413 026c 392A or r3,r25
414 026e EFED ldi r30,lo8(-33)
415 0270 3E22 and r3,r30
416 0272 00C0 rjmp .L161
417 .L165:
418 0274 98E0 ldi r25,lo8(8)
419 0276 392A or r3,r25
420 0278 00C0 rjmp .L161
421 .L75:
422 027a 1836 cpi r17,lo8(104)
423 027c 01F0 breq .L171
424 027e 1C36 cpi r17,lo8(108)
425 0280 01F4 brne .L82
426 0282 81E0 ldi r24,lo8(1)
427 0284 382A or r3,r24
428 0286 00C0 rjmp .L161
429 .L167:
430 0288 34FC sbrc r3,4
431 028a 00C0 rjmp .L161
432 028c F0E2 ldi r31,lo8(32)
433 028e 3F2A or r3,r31
434 0290 00C0 rjmp .L161
435 .L169:
436 0292 F601 movw r30,r12
437 0294 82E0 ldi r24,lo8(2)
438 0296 90E0 ldi r25,hi8(2)
439 0298 C80E add r12,r24
440 029a D91E adc r13,r25
441 029c 6081 ld r22,Z
442 029e 7181 ldd r23,Z+1
443 02a0 9FEF ldi r25,hi8(-1)
444 02a2 6F3F cpi r22,lo8(-1)
445 02a4 7907 cpc r23,r25
446 02a6 04F4 brge .L66
447 02a8 6FEF ldi r22,lo8(-1)
448 02aa 7FEF ldi r23,hi8(-1)
449 .L66:
450 02ac 062F mov r16,r22
451 02ae 00C0 rjmp .L161
452 .L171:
453 02b0 24E0 ldi r18,lo8(4)
454 02b2 322A or r3,r18
455 02b4 00C0 rjmp .L161
456 .L82:
457 02b6 1336 cpi r17,lo8(99)
458 02b8 01F4 brne .+2
459 02ba 00C0 rjmp .L172
460 02bc 1434 cpi r17,lo8(68)
461 02be 01F4 brne .+2
462 02c0 00C0 rjmp .L87
463 02c2 1436 cpi r17,lo8(100)
464 02c4 01F4 brne .+2
465 02c6 00C0 rjmp .L87
466 02c8 1936 cpi r17,lo8(105)
467 02ca 01F4 brne .+2
468 02cc 00C0 rjmp .L87
469 02ce 1F34 cpi r17,lo8(79)
470 02d0 01F4 brne .+2
471 02d2 00C0 rjmp .L95
472 02d4 1F36 cpi r17,lo8(111)
473 02d6 01F4 brne .+2
474 02d8 00C0 rjmp .L95
475 02da 1037 cpi r17,lo8(112)
476 02dc 01F4 brne .+2
477 02de 00C0 rjmp .L173
478 02e0 1337 cpi r17,lo8(115)
479 02e2 01F4 brne .+2
480 02e4 00C0 rjmp .L174
481 02e6 1535 cpi r17,lo8(85)
482 02e8 01F4 brne .+2
483 02ea 00C0 rjmp .L110
484 02ec 1537 cpi r17,lo8(117)
485 02ee 01F4 brne .+2
486 02f0 00C0 rjmp .L110
487 02f2 1835 cpi r17,lo8(88)
488 02f4 01F4 brne .+2
489 02f6 00C0 rjmp .L114
490 02f8 1837 cpi r17,lo8(120)
491 02fa 01F4 brne .+2
492 02fc 00C0 rjmp .L114
493 02fe 1123 tst r17
494 0300 01F4 brne .+2
495 0302 00C0 rjmp .L45
496 0304 CE01 movw r24,r28
497 0306 0196 adiw r24,1
498 0308 9DA7 std Y+45,r25
499 030a 8CA7 std Y+44,r24
500 030c 1983 std Y+1,r17
501 .L159:
502 030e 81E0 ldi r24,lo8(1)
503 0310 482E mov r4,r24
504 .L157:
505 0312 19A6 std Y+41,__zero_reg__
506 0314 632C mov r6,r3
507 0316 7724 clr r7
508 .L54:
509 0318 042D mov r16,r4
510 031a 5FA4 ldd r5,Y+47
511 031c 5418 sub r5,r4
512 031e 57FC sbrc r5,7
513 0320 00C0 rjmp .L175
514 .L129:
515 0322 29A5 ldd r18,Y+41
516 0324 2223 tst r18
517 0326 01F0 breq .L130
518 0328 0F5F subi r16,lo8(-(1))
519 .L131:
520 032a 050D add r16,r5
521 032c C301 movw r24,r6
522 032e 8073 andi r24,lo8(48)
523 0330 9070 andi r25,hi8(48)
524 0332 892B or r24,r25
525 0334 01F4 brne .+2
526 0336 00C0 rjmp .L176
527 .L133:
528 0338 2223 tst r18
529 033a 01F0 breq .+2
530 033c 00C0 rjmp .L177
531 033e 66FC sbrc r6,6
532 0340 00C0 rjmp .L178
533 .L135:
534 0342 C301 movw r24,r6
535 0344 8073 andi r24,lo8(48)
536 0346 9070 andi r25,hi8(48)
537 0348 8097 sbiw r24,32
538 034a 01F4 brne .+2
539 034c 00C0 rjmp .L179
540 .L137:
541 034e 852D mov r24,r5
542 0350 0E94 0000 call PAD_0
543 0354 842D mov r24,r4
544 0356 9927 clr r25
545 0358 87FD sbrc r24,7
546 035a 9095 com r25
547 035c BC01 movw r22,r24
548 035e 8CA5 ldd r24,Y+44
549 0360 9DA5 ldd r25,Y+45
550 0362 0E94 0000 call PRINT
551 0366 64FE sbrs r6,4
552 0368 00C0 rjmp .L160
553 036a 822D mov r24,r2
554 036c 801B sub r24,r16
555 036e 0E94 0000 call PAD_SP
556 0372 00C0 rjmp .L160
557 .L130:
558 0374 66FE sbrs r6,6
559 0376 00C0 rjmp .L131
560 0378 0E5F subi r16,lo8(-(2))
561 037a 00C0 rjmp .L131
562 .L175:
563 037c 5524 clr r5
564 037e 00C0 rjmp .L129
565 .L114:
566 0380 E0E1 ldi r30,lo8(16)
567 0382 EEA7 std Y+46,r30
568 0384 33FE sbrs r3,3
569 0386 00C0 rjmp .L97
570 0388 8114 cp r8,__zero_reg__
571 038a 9104 cpc r9,__zero_reg__
572 038c A104 cpc r10,__zero_reg__
573 038e B104 cpc r11,__zero_reg__
574 0390 01F0 breq .L97
575 0392 F0E4 ldi r31,lo8(64)
576 0394 3F2A or r3,r31
577 .L97:
578 0396 19A6 std Y+41,__zero_reg__
579 .L92:
580 0398 0FA7 std Y+47,r16
581 039a 07FD sbrc r16,7
582 039c 00C0 rjmp .L116
583 039e 2FED ldi r18,lo8(-33)
584 03a0 3222 and r3,r18
585 .L116:
586 03a2 CE01 movw r24,r28
587 03a4 8996 adiw r24,41
588 03a6 9DA7 std Y+45,r25
589 03a8 8CA7 std Y+44,r24
590 03aa 8114 cp r8,__zero_reg__
591 03ac 9104 cpc r9,__zero_reg__
592 03ae A104 cpc r10,__zero_reg__
593 03b0 B104 cpc r11,__zero_reg__
594 03b2 01F4 brne .L118
595 03b4 9FA5 ldd r25,Y+47
596 03b6 9923 tst r25
597 03b8 01F0 breq .L143
598 .L118:
599 03ba EEA5 ldd r30,Y+46
600 03bc 4E2E mov r4,r30
601 03be 5524 clr r5
602 03c0 6624 clr r6
603 03c2 7724 clr r7
604 .L119:
605 03c4 18AA std Y+48,__zero_reg__
606 03c6 8414 cp r8,r4
607 03c8 9504 cpc r9,r5
608 03ca A604 cpc r10,r6
609 03cc B704 cpc r11,r7
610 03ce 00F0 brlo .L122
611 03d0 F1E0 ldi r31,lo8(1)
612 03d2 F8AB std Y+48,r31
613 .L122:
614 03d4 C501 movw r24,r10
615 03d6 B401 movw r22,r8
616 03d8 A301 movw r20,r6
617 03da 9201 movw r18,r4
618 03dc 0E94 0000 call __udivmodsi4
619 03e0 DC01 movw r26,r24
620 03e2 CB01 movw r24,r22
621 03e4 082F mov r16,r24
622 03e6 8A30 cpi r24,lo8(10)
623 03e8 00F4 brsh .L123
624 03ea 005D subi r16,lo8(-(48))
625 .L124:
626 03ec ECA5 ldd r30,Y+44
627 03ee FDA5 ldd r31,Y+45
628 03f0 0293 st -Z,r16
629 03f2 FDA7 std Y+45,r31
630 03f4 ECA7 std Y+44,r30
631 03f6 C501 movw r24,r10
632 03f8 B401 movw r22,r8
633 03fa A301 movw r20,r6
634 03fc 9201 movw r18,r4
635 03fe 0E94 0000 call __udivmodsi4
636 0402 4901 movw r8,r18
637 0404 5A01 movw r10,r20
638 0406 F8A9 ldd r31,Y+48
639 0408 FF23 tst r31
640 040a 01F4 brne .L119
641 040c 2EA5 ldd r18,Y+46
642 040e 2830 cpi r18,lo8(8)
643 0410 01F0 breq .L180
644 .L143:
645 0412 632C mov r6,r3
646 0414 7724 clr r7
647 .L117:
648 0416 CE01 movw r24,r28
649 0418 0196 adiw r24,1
650 041a 482E mov r4,r24
651 041c FCA5 ldd r31,Y+44
652 041e 4F1A sub r4,r31
653 0420 28E2 ldi r18,lo8(40)
654 0422 420E add r4,r18
655 0424 00C0 rjmp .L54
656 .L123:
657 0426 095A subi r16,lo8(-(87))
658 0428 1835 cpi r17,lo8(88)
659 042a 01F4 brne .L124
660 042c 0F7D andi r16,lo8(-33)
661 042e 00C0 rjmp .L124
662 .L180:
663 0430 632C mov r6,r3
664 0432 7724 clr r7
665 0434 63FE sbrs r6,3
666 0436 00C0 rjmp .L117
667 0438 0033 cpi r16,lo8(48)
668 043a 01F0 breq .L117
669 043c 80E3 ldi r24,lo8(48)
670 043e ECA5 ldd r30,Y+44
671 0440 FDA5 ldd r31,Y+45
672 0442 8293 st -Z,r24
673 0444 FDA7 std Y+45,r31
674 0446 ECA7 std Y+44,r30
675 0448 00C0 rjmp .L117
676 .L174:
677 044a F601 movw r30,r12
678 044c 82E0 ldi r24,lo8(2)
679 044e 90E0 ldi r25,hi8(2)
680 0450 C80E add r12,r24
681 0452 D91E adc r13,r25
682 0454 0190 ld __tmp_reg__,Z+
683 0456 F081 ld r31,Z
684 0458 E02D mov r30,__tmp_reg__
685 045a FDA7 std Y+45,r31
686 045c ECA7 std Y+44,r30
687 045e EF2B or r30,r31
688 0460 01F4 brne .L102
689 0462 FE01 movw r30,r28
690 0464 3196 adiw r30,1
691 0466 FDA7 std Y+45,r31
692 0468 ECA7 std Y+44,r30
693 046a 88E2 ldi r24,lo8(40)
694 046c 8983 std Y+1,r24
695 046e 8EE6 ldi r24,lo8(110)
696 0470 8183 std Z+1,r24
697 0472 85E7 ldi r24,lo8(117)
698 0474 8B83 std Y+3,r24
699 0476 8CE6 ldi r24,lo8(108)
700 0478 8C83 std Y+4,r24
701 047a 8D83 std Y+5,r24
702 047c 89E2 ldi r24,lo8(41)
703 047e 8E83 std Y+6,r24
704 0480 1F82 std Y+7,__zero_reg__
705 .L102:
706 0482 07FD sbrc r16,7
707 0484 00C0 rjmp .L103
708 0486 802F mov r24,r16
709 0488 9927 clr r25
710 048a 87FD sbrc r24,7
711 048c 9095 com r25
712 048e AC01 movw r20,r24
713 0490 60E0 ldi r22,lo8(0)
714 0492 70E0 ldi r23,hi8(0)
715 0494 8CA5 ldd r24,Y+44
716 0496 9DA5 ldd r25,Y+45
717 0498 0E94 0000 call memchr
718 049c 0097 sbiw r24,0
719 049e 01F0 breq .L104
720 04a0 482E mov r4,r24
721 04a2 FCA5 ldd r31,Y+44
722 04a4 4F1A sub r4,r31
723 04a6 0415 cp r16,r4
724 04a8 04F0 brlt .+2
725 04aa 00C0 rjmp .L157
726 .L104:
727 04ac 402E mov r4,r16
728 04ae 00C0 rjmp .L157
729 .L103:
730 04b0 ECA5 ldd r30,Y+44
731 04b2 FDA5 ldd r31,Y+45
732 04b4 0190 ld __tmp_reg__,Z+
733 04b6 0020 tst __tmp_reg__
734 04b8 01F4 brne .-6
735 04ba 3197 sbiw r30,1
736 04bc 4E2E mov r4,r30
737 04be 2CA5 ldd r18,Y+44
738 04c0 421A sub r4,r18
739 04c2 00C0 rjmp .L157
740 .L110:
741 04c4 1535 cpi r17,lo8(85)
742 04c6 01F4 brne .L111
743 04c8 81E0 ldi r24,lo8(1)
744 04ca 382A or r3,r24
745 .L111:
746 04cc 9AE0 ldi r25,lo8(10)
747 04ce 9EA7 std Y+46,r25
748 04d0 00C0 rjmp .L97
749 .L173:
750 04d2 F601 movw r30,r12
751 04d4 82E0 ldi r24,lo8(2)
752 04d6 90E0 ldi r25,hi8(2)
753 04d8 C80E add r12,r24
754 04da D91E adc r13,r25
755 04dc 8081 ld r24,Z
756 04de 9181 ldd r25,Z+1
757 04e0 4C01 movw r8,r24
758 04e2 AA24 clr r10
759 04e4 BB24 clr r11
760 04e6 90E1 ldi r25,lo8(16)
761 04e8 9EA7 std Y+46,r25
762 04ea E0E4 ldi r30,lo8(64)
763 04ec 3E2A or r3,r30
764 04ee 18E7 ldi r17,lo8(120)
765 04f0 00C0 rjmp .L97
766 .L95:
767 04f2 1F34 cpi r17,lo8(79)
768 04f4 01F4 brne .L96
769 04f6 E1E0 ldi r30,lo8(1)
770 04f8 3E2A or r3,r30
771 .L96:
772 04fa F8E0 ldi r31,lo8(8)
773 04fc FEA7 std Y+46,r31
774 04fe 00C0 rjmp .L97
775 .L87:
776 0500 1434 cpi r17,lo8(68)
777 0502 01F4 brne .L88
778 0504 91E0 ldi r25,lo8(1)
779 0506 392A or r3,r25
780 .L88:
781 0508 30FE sbrs r3,0
782 050a 00C0 rjmp .L89
783 050c F601 movw r30,r12
784 050e 84E0 ldi r24,lo8(4)
785 0510 90E0 ldi r25,hi8(4)
786 0512 C80E add r12,r24
787 0514 D91E adc r13,r25
788 0516 8080 ld r8,Z
789 0518 9180 ldd r9,Z+1
790 051a A280 ldd r10,Z+2
791 051c B380 ldd r11,Z+3
792 .L90:
793 051e B7FE sbrs r11,7
794 0520 00C0 rjmp .L91
795 0522 B094 com r11
796 0524 A094 com r10
797 0526 9094 com r9
798 0528 8094 com r8
799 052a 811C adc r8,__zero_reg__
800 052c 911C adc r9,__zero_reg__
801 052e A11C adc r10,__zero_reg__
802 0530 B11C adc r11,__zero_reg__
803 0532 8DE2 ldi r24,lo8(45)
804 0534 89A7 std Y+41,r24
805 .L91:
806 0536 9AE0 ldi r25,lo8(10)
807 0538 9EA7 std Y+46,r25
808 053a 00C0 rjmp .L92
809 .L89:
810 053c F601 movw r30,r12
811 053e 82E0 ldi r24,lo8(2)
812 0540 90E0 ldi r25,hi8(2)
813 0542 C80E add r12,r24
814 0544 D91E adc r13,r25
815 0546 8081 ld r24,Z
816 0548 9181 ldd r25,Z+1
817 054a 4C01 movw r8,r24
818 054c AA24 clr r10
819 054e 97FC sbrc r9,7
820 0550 A094 com r10
821 0552 BA2C mov r11,r10
822 0554 00C0 rjmp .L90
823 .L172:
824 0556 FE01 movw r30,r28
825 0558 3196 adiw r30,1
826 055a FDA7 std Y+45,r31
827 055c ECA7 std Y+44,r30
828 055e F601 movw r30,r12
829 0560 82E0 ldi r24,lo8(2)
830 0562 90E0 ldi r25,hi8(2)
831 0564 C80E add r12,r24
832 0566 D91E adc r13,r25
833 0568 8081 ld r24,Z
834 056a 8983 std Y+1,r24
835 056c 00C0 rjmp .L159
836 .L179:
837 056e 822D mov r24,r2
838 0570 801B sub r24,r16
839 0572 0E94 0000 call PAD_0
840 0576 00C0 rjmp .L137
841 .L178:
842 0578 80E3 ldi r24,lo8(48)
843 057a 8AA7 std Y+42,r24
844 057c 1BA7 std Y+43,r17
845 057e 62E0 ldi r22,lo8(2)
846 0580 70E0 ldi r23,hi8(2)
847 0582 CE01 movw r24,r28
848 0584 8A96 adiw r24,42
849 .L158:
850 0586 0E94 0000 call PRINT
851 058a 00C0 rjmp .L135
852 .L177:
853 058c 61E0 ldi r22,lo8(1)
854 058e 70E0 ldi r23,hi8(1)
855 0590 CE01 movw r24,r28
856 0592 8996 adiw r24,41
857 0594 00C0 rjmp .L158
858 .L176:
859 0596 822D mov r24,r2
860 0598 801B sub r24,r16
861 059a 0E94 0000 call PAD_SP
862 059e 29A5 ldd r18,Y+41
863 05a0 00C0 rjmp .L133
864 .L45:
865 /* epilogue: frame size=48 */
866 05a2 E2E1 ldi r30,18
867 05a4 C05D subi r28,-48
868 05a6 0C94 0000 jmp __epilogue_restores__+0
869 /* epilogue end (size=4) */
870 /* function _printf_P size 639 (629) */
872 .comm PrintZiel,1,1
873 .comm Mixer,77,1
874 /* File "printf_P.c": code 754 = 0x02f2 ( 719), prologues 16, epilogues 19 */
DEFINED SYMBOLS
*ABS*:00000000 printf_P.c
C:\Users\Bernd\AppData\Local\Temp/ccF6QCGh.s:3 *ABS*:0000003f __SREG__
C:\Users\Bernd\AppData\Local\Temp/ccF6QCGh.s:4 *ABS*:0000003e __SP_H__
C:\Users\Bernd\AppData\Local\Temp/ccF6QCGh.s:5 *ABS*:0000003d __SP_L__
C:\Users\Bernd\AppData\Local\Temp/ccF6QCGh.s:6 *ABS*:00000000 __tmp_reg__
C:\Users\Bernd\AppData\Local\Temp/ccF6QCGh.s:7 *ABS*:00000001 __zero_reg__
C:\Users\Bernd\AppData\Local\Temp/ccF6QCGh.s:13 .text:00000000 Putchar
*COM*:00000001 PrintZiel
C:\Users\Bernd\AppData\Local\Temp/ccF6QCGh.s:45 .text:00000032 PRINT
C:\Users\Bernd\AppData\Local\Temp/ccF6QCGh.s:81 .text:00000068 PRINTP
C:\Users\Bernd\AppData\Local\Temp/ccF6QCGh.s:125 .text:000000a2 PAD_SP
C:\Users\Bernd\AppData\Local\Temp/ccF6QCGh.s:147 .text:000000ba PAD_0
C:\Users\Bernd\AppData\Local\Temp/ccF6QCGh.s:169 .text:000000d2 _printf_P
*COM*:0000004d Mixer
UNDEFINED SYMBOLS
__do_copy_data
__do_clear_bss
uart_putchar
DispPtr
DisplayBuff
__prologue_saves__
__udivmodsi4
memchr
__epilogue_restores__