Go to most recent revision | Blame | Compare with Previous | Last modification | View Log | RSS feed
1 .file "printf_P.c"
2 __SREG__ = 0x3f
3 __SP_H__ = 0x3e
4 __SP_L__ = 0x3d
5 __tmp_reg__ = 0
6 __zero_reg__ = 1
7 .global __do_copy_data
8 .global __do_clear_bss
9 .text
10 .global Putchar
12 Putchar:
13 /* prologue: frame size=0 */
14 /* prologue end (size=0) */
15 0000 982F mov r25,r24
16 0002 8091 0000 lds r24,PrintZiel
17 0006 8130 cpi r24,lo8(1)
18 0008 01F0 breq .L7
19 000a 892F mov r24,r25
20 000c 0E94 0000 call uart_putchar
21 0010 282F mov r18,r24
22 0012 30E0 ldi r19,lo8(0)
23 0014 00C0 rjmp .L4
24 .L7:
25 0016 8091 0000 lds r24,DispPtr
26 001a E82F mov r30,r24
27 001c F0E0 ldi r31,lo8(0)
28 001e E050 subi r30,lo8(-(DisplayBuff))
29 0020 F040 sbci r31,hi8(-(DisplayBuff))
30 0022 9083 st Z,r25
31 0024 8F5F subi r24,lo8(-(1))
32 0026 8093 0000 sts DispPtr,r24
33 002a 21E0 ldi r18,lo8(1)
34 002c 30E0 ldi r19,hi8(1)
35 .L4:
36 002e C901 movw r24,r18
37 /* epilogue: frame size=0 */
38 0030 0895 ret
39 /* epilogue end (size=1) */
40 /* function Putchar size 25 (24) */
42 .global PAD_0
44 PAD_0:
45 /* prologue: frame size=0 */
46 0032 1F93 push r17
47 /* prologue end (size=1) */
48 0034 182F mov r17,r24
49 0036 1816 cp __zero_reg__,r24
50 0038 04F4 brge .L11
51 .L12:
52 003a 80E3 ldi r24,lo8(48)
53 003c 0E94 0000 call Putchar
54 0040 1150 subi r17,lo8(-(-1))
55 0042 01F4 brne .L12
56 .L11:
57 /* epilogue: frame size=0 */
58 0044 1F91 pop r17
59 0046 0895 ret
60 /* epilogue end (size=2) */
61 /* function PAD_0 size 12 (9) */
63 .global PAD_SP
65 PAD_SP:
66 /* prologue: frame size=0 */
67 0048 1F93 push r17
68 /* prologue end (size=1) */
69 004a 182F mov r17,r24
70 004c 1816 cp __zero_reg__,r24
71 004e 04F4 brge .L17
72 .L18:
73 0050 80E2 ldi r24,lo8(32)
74 0052 0E94 0000 call Putchar
75 0056 1150 subi r17,lo8(-(-1))
76 0058 01F4 brne .L18
77 .L17:
78 /* epilogue: frame size=0 */
79 005a 1F91 pop r17
80 005c 0895 ret
81 /* epilogue end (size=2) */
82 /* function PAD_SP size 12 (9) */
84 .global PRINTP
86 PRINTP:
87 /* prologue: frame size=0 */
88 005e 0F93 push r16
89 0060 1F93 push r17
90 0062 CF93 push r28
91 0064 DF93 push r29
92 /* prologue end (size=4) */
93 0066 8C01 movw r16,r24
94 0068 EB01 movw r28,r22
95 006a 672B or r22,r23
96 006c 01F0 breq .L23
97 .L24:
98 006e F801 movw r30,r16
99 0070 0F5F subi r16,lo8(-(1))
100 0072 1F4F sbci r17,hi8(-(1))
101 /* #APP */
102 0074 E491 lpm r30, Z
103
104 /* #NOAPP */
105 0076 8E2F mov r24,r30
106 0078 0E94 0000 call Putchar
107 007c 2197 sbiw r28,1
108 007e 01F4 brne .L24
109 .L23:
110 /* epilogue: frame size=0 */
111 0080 DF91 pop r29
112 0082 CF91 pop r28
113 0084 1F91 pop r17
114 0086 0F91 pop r16
115 0088 0895 ret
116 /* epilogue end (size=5) */
117 /* function PRINTP size 26 (17) */
119 .global PRINT
121 PRINT:
122 /* prologue: frame size=0 */
123 008a 0F93 push r16
124 008c 1F93 push r17
125 008e CF93 push r28
126 0090 DF93 push r29
127 /* prologue end (size=4) */
128 0092 8C01 movw r16,r24
129 0094 EB01 movw r28,r22
130 0096 672B or r22,r23
131 0098 01F0 breq .L29
132 .L30:
133 009a F801 movw r30,r16
134 009c 8191 ld r24,Z+
135 009e 8F01 movw r16,r30
136 00a0 0E94 0000 call Putchar
137 00a4 2197 sbiw r28,1
138 00a6 01F4 brne .L30
139 .L29:
140 /* epilogue: frame size=0 */
141 00a8 DF91 pop r29
142 00aa CF91 pop r28
143 00ac 1F91 pop r17
144 00ae 0F91 pop r16
145 00b0 0895 ret
146 /* epilogue end (size=5) */
147 /* function PRINT size 21 (12) */
149 .global _printf_P
151 _printf_P:
152 /* prologue: frame size=53 */
153 00b2 2F92 push r2
154 00b4 3F92 push r3
155 00b6 4F92 push r4
156 00b8 5F92 push r5
157 00ba 6F92 push r6
158 00bc 7F92 push r7
159 00be 8F92 push r8
160 00c0 9F92 push r9
161 00c2 AF92 push r10
162 00c4 BF92 push r11
163 00c6 CF92 push r12
164 00c8 DF92 push r13
165 00ca EF92 push r14
166 00cc FF92 push r15
167 00ce 0F93 push r16
168 00d0 1F93 push r17
169 00d2 CF93 push r28
170 00d4 DF93 push r29
171 00d6 CDB7 in r28,__SP_L__
172 00d8 DEB7 in r29,__SP_H__
173 00da E597 sbiw r28,53
174 00dc 0FB6 in __tmp_reg__,__SREG__
175 00de F894 cli
176 00e0 DEBF out __SP_H__,r29
177 00e2 0FBE out __SREG__,__tmp_reg__
178 00e4 CDBF out __SP_L__,r28
179 /* prologue end (size=26) */
180 00e6 2B96 adiw r28,74-63
181 00e8 8FAD ldd r24,Y+63
182 00ea 2B97 sbiw r28,74-63
183 00ec 8093 0000 sts PrintZiel,r24
184 00f0 CE01 movw r24,r28
185 00f2 835B subi r24,lo8(-(77))
186 00f4 9F4F sbci r25,hi8(-(77))
187 00f6 9B83 std Y+3,r25
188 00f8 8A83 std Y+2,r24
189 00fa 2D96 adiw r28,75-62
190 00fc 0EAD ldd r16,Y+62
191 00fe 1FAD ldd r17,Y+63
192 0100 2D97 sbiw r28,75-62
193 0102 1EA6 std Y+46,__zero_reg__
194 0104 1FA6 std Y+47,__zero_reg__
195 0106 18AA std Y+48,__zero_reg__
196 0108 19AA std Y+49,__zero_reg__
197 .L184:
198 010a F801 movw r30,r16
199 /* #APP */
200 010c 8491 lpm r24, Z
201
202 /* #NOAPP */
203 010e 8823 tst r24
204 0110 01F4 brne .+2
205 0112 00C0 rjmp .L165
206 0114 8532 cpi r24,lo8(37)
207 0116 01F4 brne .+2
208 0118 00C0 rjmp .L187
209 011a 6801 movw r12,r16
210 011c 00C0 rjmp .L39
211 .L188:
212 011e F5E2 ldi r31,lo8(37)
213 0120 FF16 cp r15,r31
214 0122 01F0 breq .L40
215 .L39:
216 0124 0894 sec
217 0126 C11C adc r12,__zero_reg__
218 0128 D11C adc r13,__zero_reg__
219 012a F601 movw r30,r12
220 /* #APP */
221 012c F490 lpm r15, Z
222
223 /* #NOAPP */
224 012e FF20 tst r15
225 0130 01F4 brne .L188
226 .L40:
227 0132 B601 movw r22,r12
228 0134 601B sub r22,r16
229 0136 710B sbc r23,r17
230 0138 01F0 breq .L42
231 013a C801 movw r24,r16
232 013c 0E94 0000 call PRINTP
233 .L42:
234 0140 FF20 tst r15
235 0142 01F4 brne .+2
236 0144 00C0 rjmp .L165
237 .L38:
238 0146 8601 movw r16,r12
239 0148 0F5F subi r16,lo8(-(1))
240 014a 1F4F sbci r17,hi8(-(1))
241 014c 1982 std Y+1,__zero_reg__
242 014e AA81 ldd r26,Y+2
243 0150 BB81 ldd r27,Y+3
244 0152 8EA4 ldd r8,Y+46
245 0154 9FA4 ldd r9,Y+47
246 0156 A8A8 ldd r10,Y+48
247 0158 B9A8 ldd r11,Y+49
248 015a 3324 clr r3
249 015c 2224 clr r2
250 015e 8FEF ldi r24,lo8(-1)
251 0160 8BAB std Y+51,r24
252 .L185:
253 0162 F801 movw r30,r16
254 0164 0F5F subi r16,lo8(-(1))
255 0166 1F4F sbci r17,hi8(-(1))
256 /* #APP */
257 0168 F490 lpm r15, Z
258
259 /* #NOAPP */
260 016a C32C mov r12,r3
261 016c DD24 clr r13
262 016e 91E0 ldi r25,lo8(1)
263 0170 C922 and r12,r25
264 0172 DD24 clr r13
265 .L186:
266 0174 E5E7 ldi r30,lo8(117)
267 0176 FE16 cp r15,r30
268 0178 01F4 brne .+2
269 017a 00C0 rjmp .L46
270 .L193:
271 017c 8F2D mov r24,r15
272 017e 8062 ori r24,lo8(32)
273 0180 8837 cpi r24,lo8(120)
274 0182 01F4 brne .+2
275 0184 00C0 rjmp .L46
276 .L48:
277 0186 F0E2 ldi r31,lo8(32)
278 0188 FF16 cp r15,r31
279 018a 01F4 brne .+2
280 018c 00C0 rjmp .L189
281 .L51:
282 018e 83E2 ldi r24,lo8(35)
283 0190 F816 cp r15,r24
284 0192 01F4 brne .+2
285 0194 00C0 rjmp .L190
286 0196 EAE2 ldi r30,lo8(42)
287 0198 FE16 cp r15,r30
288 019a 01F4 brne .+2
289 019c 00C0 rjmp .L56
290 019e FDE2 ldi r31,lo8(45)
291 01a0 FF16 cp r15,r31
292 01a2 01F4 brne .+2
293 01a4 00C0 rjmp .L58
294 01a6 EBE2 ldi r30,lo8(43)
295 01a8 FE16 cp r15,r30
296 01aa 01F4 brne .+2
297 01ac 00C0 rjmp .L182
298 01ae FEE2 ldi r31,lo8(46)
299 01b0 FF16 cp r15,r31
300 01b2 01F0 breq .L191
301 01b4 80E3 ldi r24,lo8(48)
302 01b6 F816 cp r15,r24
303 01b8 01F4 brne .+2
304 01ba 00C0 rjmp .L192
305 01bc 8F2D mov r24,r15
306 01be 8153 subi r24,lo8(-(-49))
307 01c0 8930 cpi r24,lo8(9)
308 01c2 00F0 brlo .+2
309 01c4 00C0 rjmp .L76
310 01c6 20E0 ldi r18,lo8(0)
311 01c8 30E0 ldi r19,hi8(0)
312 .L78:
313 01ca C901 movw r24,r18
314 01cc 880F lsl r24
315 01ce 991F rol r25
316 01d0 880F lsl r24
317 01d2 991F rol r25
318 01d4 880F lsl r24
319 01d6 991F rol r25
320 01d8 220F lsl r18
321 01da 331F rol r19
322 01dc 280F add r18,r24
323 01de 391F adc r19,r25
324 01e0 2F0D add r18,r15
325 01e2 311D adc r19,__zero_reg__
326 01e4 2053 subi r18,lo8(-(-48))
327 01e6 3040 sbci r19,hi8(-(-48))
328 01e8 F801 movw r30,r16
329 01ea 0F5F subi r16,lo8(-(1))
330 01ec 1F4F sbci r17,hi8(-(1))
331 /* #APP */
332 01ee F490 lpm r15, Z
333
334 /* #NOAPP */
335 01f0 8F2D mov r24,r15
336 01f2 8053 subi r24,lo8(-(-48))
337 01f4 8A30 cpi r24,lo8(10)
338 01f6 00F0 brlo .L78
339 01f8 222E mov r2,r18
340 01fa E5E7 ldi r30,lo8(117)
341 01fc FE16 cp r15,r30
342 01fe 01F0 breq .+2
343 0200 00C0 rjmp .L193
344 .L46:
345 0202 C114 cp r12,__zero_reg__
346 0204 D104 cpc r13,__zero_reg__
347 0206 01F4 brne .+2
348 0208 00C0 rjmp .L49
349 020a 8D90 ld r8,X+
350 020c 9D90 ld r9,X+
351 020e AD90 ld r10,X+
352 0210 BC90 ld r11,X
353 0212 1397 sbiw r26,3
354 0214 1496 adiw r26,4
355 0216 F0E2 ldi r31,lo8(32)
356 0218 FF16 cp r15,r31
357 021a 01F0 breq .+2
358 021c 00C0 rjmp .L51
359 .L189:
360 021e 8981 ldd r24,Y+1
361 0220 8823 tst r24
362 0222 01F0 breq .+2
363 0224 00C0 rjmp .L185
364 .L182:
365 0226 F982 std Y+1,r15
366 0228 00C0 rjmp .L185
367 .L191:
368 022a F801 movw r30,r16
369 022c 0F5F subi r16,lo8(-(1))
370 022e 1F4F sbci r17,hi8(-(1))
371 /* #APP */
372 0230 9491 lpm r25, Z
373
374 /* #NOAPP */
375 0232 9A32 cpi r25,lo8(42)
376 0234 01F4 brne .+2
377 0236 00C0 rjmp .L65
378 0238 892F mov r24,r25
379 023a 8053 subi r24,lo8(-(-48))
380 023c 8A30 cpi r24,lo8(10)
381 023e 00F4 brsh .L194
382 0240 492F mov r20,r25
383 0242 20E0 ldi r18,lo8(0)
384 0244 30E0 ldi r19,hi8(0)
385 .L70:
386 0246 C901 movw r24,r18
387 0248 880F lsl r24
388 024a 991F rol r25
389 024c 880F lsl r24
390 024e 991F rol r25
391 0250 880F lsl r24
392 0252 991F rol r25
393 0254 220F lsl r18
394 0256 331F rol r19
395 0258 280F add r18,r24
396 025a 391F adc r19,r25
397 025c 240F add r18,r20
398 025e 311D adc r19,__zero_reg__
399 0260 2053 subi r18,lo8(-(-48))
400 0262 3040 sbci r19,hi8(-(-48))
401 0264 F801 movw r30,r16
402 0266 0F5F subi r16,lo8(-(1))
403 0268 1F4F sbci r17,hi8(-(1))
404 /* #APP */
405 026a 6491 lpm r22, Z
406
407 /* #NOAPP */
408 026c 462F mov r20,r22
409 026e 862F mov r24,r22
410 0270 8053 subi r24,lo8(-(-48))
411 0272 8A30 cpi r24,lo8(10)
412 0274 00F0 brlo .L70
413 0276 A901 movw r20,r18
414 0278 37FD sbrc r19,7
415 027a 00C0 rjmp .L195
416 .L72:
417 027c 4BAB std Y+51,r20
418 027e F62E mov r15,r22
419 0280 00C0 rjmp .L186
420 .L49:
421 0282 8D91 ld r24,X+
422 0284 9C91 ld r25,X
423 0286 1197 sbiw r26,1
424 0288 4C01 movw r8,r24
425 028a AA24 clr r10
426 028c BB24 clr r11
427 028e 1296 adiw r26,2
428 0290 00C0 rjmp .L48
429 .L195:
430 0292 4FEF ldi r20,lo8(-1)
431 0294 5FEF ldi r21,hi8(-1)
432 0296 00C0 rjmp .L72
433 .L194:
434 0298 F92E mov r15,r25
435 029a 1BAA std Y+51,__zero_reg__
436 029c 00C0 rjmp .L186
437 .L56:
438 029e FD01 movw r30,r26
439 02a0 1296 adiw r26,2
440 02a2 2080 ld r2,Z
441 02a4 27FE sbrs r2,7
442 02a6 00C0 rjmp .L185
443 02a8 2194 neg r2
444 .L58:
445 02aa 80E1 ldi r24,lo8(16)
446 02ac 382A or r3,r24
447 02ae 9FED ldi r25,lo8(-33)
448 02b0 3922 and r3,r25
449 02b2 00C0 rjmp .L185
450 .L190:
451 02b4 98E0 ldi r25,lo8(8)
452 02b6 392A or r3,r25
453 02b8 00C0 rjmp .L185
454 .L192:
455 02ba 34FC sbrc r3,4
456 02bc 00C0 rjmp .L185
457 02be 90E2 ldi r25,lo8(32)
458 02c0 392A or r3,r25
459 02c2 00C0 rjmp .L185
460 .L76:
461 02c4 E8E6 ldi r30,lo8(104)
462 02c6 FE16 cp r15,r30
463 02c8 01F0 breq .L196
464 02ca 8CE6 ldi r24,lo8(108)
465 02cc F816 cp r15,r24
466 02ce 01F4 brne .L82
467 02d0 91E0 ldi r25,lo8(1)
468 02d2 392A or r3,r25
469 02d4 00C0 rjmp .L185
470 .L65:
471 02d6 CD01 movw r24,r26
472 02d8 0296 adiw r24,2
473 02da 4D91 ld r20,X+
474 02dc 5C91 ld r21,X
475 02de 57FD sbrc r21,7
476 02e0 00C0 rjmp .L197
477 .L69:
478 02e2 4BAB std Y+51,r20
479 02e4 DC01 movw r26,r24
480 02e6 00C0 rjmp .L185
481 .L196:
482 02e8 F4E0 ldi r31,lo8(4)
483 02ea 3F2A or r3,r31
484 02ec 00C0 rjmp .L185
485 .L82:
486 02ee BB83 std Y+3,r27
487 02f0 AA83 std Y+2,r26
488 02f2 E3E6 ldi r30,lo8(99)
489 02f4 FE16 cp r15,r30
490 02f6 01F4 brne .+2
491 02f8 00C0 rjmp .L198
492 02fa F4E4 ldi r31,lo8(68)
493 02fc FF16 cp r15,r31
494 02fe 01F4 brne .+2
495 0300 00C0 rjmp .L87
496 0302 84E6 ldi r24,lo8(100)
497 0304 F816 cp r15,r24
498 0306 01F4 brne .+2
499 0308 00C0 rjmp .L89
500 030a 99E6 ldi r25,lo8(105)
501 030c F916 cp r15,r25
502 030e 01F4 brne .+2
503 0310 00C0 rjmp .L89
504 0312 9FE4 ldi r25,lo8(79)
505 0314 F916 cp r15,r25
506 0316 01F4 brne .+2
507 0318 00C0 rjmp .L98
508 031a EFE6 ldi r30,lo8(111)
509 031c FE16 cp r15,r30
510 031e 01F4 brne .+2
511 0320 00C0 rjmp .L199
512 0322 E0E7 ldi r30,lo8(112)
513 0324 FE16 cp r15,r30
514 0326 01F4 brne .+2
515 0328 00C0 rjmp .L200
516 032a 93E7 ldi r25,lo8(115)
517 032c F916 cp r15,r25
518 032e 01F4 brne .+2
519 0330 00C0 rjmp .L201
520 0332 85E5 ldi r24,lo8(85)
521 0334 F816 cp r15,r24
522 0336 01F4 brne .+2
523 0338 00C0 rjmp .L116
524 033a 95E7 ldi r25,lo8(117)
525 033c F916 cp r15,r25
526 033e 01F4 brne .+2
527 0340 00C0 rjmp .L202
528 0342 98E5 ldi r25,lo8(88)
529 0344 F916 cp r15,r25
530 0346 01F4 brne .+2
531 0348 00C0 rjmp .L120
532 034a E8E7 ldi r30,lo8(120)
533 034c FE16 cp r15,r30
534 034e 01F4 brne .+2
535 0350 00C0 rjmp .L120
536 0352 FF20 tst r15
537 0354 01F4 brne .+2
538 0356 00C0 rjmp .L165
539 0358 FE82 std Y+6,r15
540 035a 1982 std Y+1,__zero_reg__
541 .L34:
542 .L86:
543 035c 632C mov r6,r3
544 035e 7724 clr r7
545 0360 8EA6 std Y+46,r8
546 0362 9FA6 std Y+47,r9
547 0364 A8AA std Y+48,r10
548 0366 B9AA std Y+49,r11
549 0368 EE24 clr r14
550 036a 36E0 ldi r19,lo8(6)
551 036c C32E mov r12,r19
552 036e D12C mov r13,__zero_reg__
553 0370 CC0E add r12,r28
554 0372 DD1E adc r13,r29
555 0374 81E0 ldi r24,lo8(1)
556 0376 E1E0 ldi r30,lo8(1)
557 0378 90E0 ldi r25,lo8(0)
558 037a 21E0 ldi r18,lo8(1)
559 037c A22E mov r10,r18
560 037e B12C mov r11,__zero_reg__
561 .L150:
562 0380 2981 ldd r18,Y+1
563 0382 2223 tst r18
564 0384 01F4 brne .+2
565 0386 00C0 rjmp .L151
566 0388 8F5F subi r24,lo8(-(1))
567 .L153:
568 038a 582E mov r5,r24
569 038c 590E add r5,r25
570 038e 40E3 ldi r20,lo8(48)
571 0390 842E mov r8,r20
572 0392 912C mov r9,__zero_reg__
573 0394 8620 and r8,r6
574 0396 9720 and r9,r7
575 0398 8114 cp r8,__zero_reg__
576 039a 9104 cpc r9,__zero_reg__
577 039c 01F4 brne .+2
578 039e 00C0 rjmp .L203
579 .L156:
580 03a0 2223 tst r18
581 03a2 01F0 breq .+2
582 03a4 00C0 rjmp .L204
583 03a6 66FC sbrc r6,6
584 03a8 00C0 rjmp .L205
585 .L160:
586 03aa F0E2 ldi r31,lo8(32)
587 03ac 8F16 cp r8,r31
588 03ae 9104 cpc r9,__zero_reg__
589 03b0 01F4 brne .+2
590 03b2 00C0 rjmp .L206
591 .L162:
592 03b4 8E2D mov r24,r14
593 03b6 0E94 0000 call PAD_0
594 03ba B501 movw r22,r10
595 03bc C601 movw r24,r12
596 03be 0E94 0000 call PRINT
597 03c2 64FE sbrs r6,4
598 03c4 00C0 rjmp .L184
599 03c6 822D mov r24,r2
600 03c8 8519 sub r24,r5
601 03ca 0E94 0000 call PAD_SP
602 03ce 00C0 rjmp .L184
603 .L197:
604 03d0 4FEF ldi r20,lo8(-1)
605 03d2 5FEF ldi r21,hi8(-1)
606 03d4 00C0 rjmp .L69
607 .L87:
608 03d6 E1E0 ldi r30,lo8(1)
609 03d8 3E2A or r3,r30
610 .L89:
611 03da 30FE sbrs r3,0
612 03dc 00C0 rjmp .L92
613 03de 1496 adiw r26,4
614 03e0 BB83 std Y+3,r27
615 03e2 AA83 std Y+2,r26
616 03e4 BE90 ld r11,-X
617 03e6 AE90 ld r10,-X
618 03e8 9E90 ld r9,-X
619 03ea 8E90 ld r8,-X
620 .L94:
621 03ec B7FC sbrc r11,7
622 03ee 00C0 rjmp .L95
623 03f0 FAE0 ldi r31,lo8(10)
624 03f2 FAAB std Y+50,r31
625 .L97:
626 03f4 EBA9 ldd r30,Y+51
627 03f6 E7FD sbrc r30,7
628 03f8 00C0 rjmp .L126
629 03fa FFED ldi r31,lo8(-33)
630 03fc 3F22 and r3,r31
631 .L126:
632 03fe 8114 cp r8,__zero_reg__
633 0400 9104 cpc r9,__zero_reg__
634 0402 A104 cpc r10,__zero_reg__
635 0404 B104 cpc r11,__zero_reg__
636 0406 01F0 breq .L128
637 0408 8AA9 ldd r24,Y+50
638 040a 482E mov r4,r24
639 040c 5524 clr r5
640 040e 6624 clr r6
641 0410 7724 clr r7
642 .L130:
643 0412 EEE2 ldi r30,lo8(46)
644 0414 CE2E mov r12,r30
645 0416 D12C mov r13,__zero_reg__
646 0418 CC0E add r12,r28
647 041a DD1E adc r13,r29
648 041c DDAA std Y+53,r13
649 041e CCAA std Y+52,r12
650 0420 00C0 rjmp .L134
651 .L207:
652 0422 70E3 ldi r23,lo8(48)
653 0424 E72E mov r14,r23
654 0426 E60E add r14,r22
655 .L137:
656 0428 F601 movw r30,r12
657 042a E292 st -Z,r14
658 042c 6F01 movw r12,r30
659 042e C501 movw r24,r10
660 0430 B401 movw r22,r8
661 0432 A301 movw r20,r6
662 0434 9201 movw r18,r4
663 0436 0E94 0000 call __udivmodsi4
664 043a 2EA7 std Y+46,r18
665 043c 3FA7 std Y+47,r19
666 043e 48AB std Y+48,r20
667 0440 59AB std Y+49,r21
668 0442 8414 cp r8,r4
669 0444 9504 cpc r9,r5
670 0446 A604 cpc r10,r6
671 0448 B704 cpc r11,r7
672 044a 00F0 brlo .L139
673 044c 4901 movw r8,r18
674 044e 5A01 movw r10,r20
675 .L134:
676 0450 C501 movw r24,r10
677 0452 B401 movw r22,r8
678 0454 A301 movw r20,r6
679 0456 9201 movw r18,r4
680 0458 0E94 0000 call __udivmodsi4
681 045c 6A30 cpi r22,lo8(10)
682 045e 00F0 brlo .L207
683 0460 57E5 ldi r21,lo8(87)
684 0462 E52E mov r14,r21
685 0464 E60E add r14,r22
686 0466 F8E5 ldi r31,lo8(88)
687 0468 FF16 cp r15,r31
688 046a 01F4 brne .L137
689 046c 8FED ldi r24,lo8(-33)
690 046e E822 and r14,r24
691 0470 00C0 rjmp .L137
692 .L128:
693 0472 9BA9 ldd r25,Y+51
694 0474 9923 tst r25
695 0476 01F4 brne .L131
696 0478 632C mov r6,r3
697 047a 7724 clr r7
698 047c 1EA6 std Y+46,__zero_reg__
699 047e 1FA6 std Y+47,__zero_reg__
700 0480 18AA std Y+48,__zero_reg__
701 0482 19AA std Y+49,__zero_reg__
702 0484 FEE2 ldi r31,lo8(46)
703 0486 CF2E mov r12,r31
704 0488 D12C mov r13,__zero_reg__
705 048a CC0E add r12,r28
706 048c DD1E adc r13,r29
707 048e 80E0 ldi r24,lo8(0)
708 0490 E0E0 ldi r30,lo8(0)
709 .L133:
710 0492 4BA9 ldd r20,Y+51
711 .L115:
712 0494 E42E mov r14,r20
713 0496 EE1A sub r14,r30
714 0498 E7FC sbrc r14,7
715 049a 00C0 rjmp .L208
716 049c 9E2D mov r25,r14
717 049e A82E mov r10,r24
718 04a0 BB24 clr r11
719 04a2 A7FC sbrc r10,7
720 04a4 B094 com r11
721 04a6 00C0 rjmp .L150
722 .L131:
723 04a8 EAA9 ldd r30,Y+50
724 04aa 4E2E mov r4,r30
725 04ac 5524 clr r5
726 04ae 6624 clr r6
727 04b0 7724 clr r7
728 04b2 00C0 rjmp .L130
729 .L139:
730 04b4 FAA9 ldd r31,Y+50
731 04b6 F830 cpi r31,lo8(8)
732 04b8 01F4 brne .+2
733 04ba 00C0 rjmp .L141
734 04bc ECA9 ldd r30,Y+52
735 04be EC19 sub r30,r12
736 04c0 8E2F mov r24,r30
737 04c2 632C mov r6,r3
738 04c4 7724 clr r7
739 04c6 00C0 rjmp .L133
740 .L151:
741 04c8 66FE sbrs r6,6
742 04ca 00C0 rjmp .L153
743 04cc 8E2F mov r24,r30
744 04ce 8E5F subi r24,lo8(-(2))
745 04d0 00C0 rjmp .L153
746 .L208:
747 04d2 A82E mov r10,r24
748 04d4 BB24 clr r11
749 04d6 A7FC sbrc r10,7
750 04d8 B094 com r11
751 04da EE24 clr r14
752 04dc 90E0 ldi r25,lo8(0)
753 04de 00C0 rjmp .L150
754 .L95:
755 04e0 B094 com r11
756 04e2 A094 com r10
757 04e4 9094 com r9
758 04e6 8094 com r8
759 04e8 811C adc r8,__zero_reg__
760 04ea 911C adc r9,__zero_reg__
761 04ec A11C adc r10,__zero_reg__
762 04ee B11C adc r11,__zero_reg__
763 04f0 2DE2 ldi r18,lo8(45)
764 04f2 2983 std Y+1,r18
765 04f4 8AE0 ldi r24,lo8(10)
766 04f6 8AAB std Y+50,r24
767 04f8 00C0 rjmp .L97
768 .L92:
769 04fa 1296 adiw r26,2
770 04fc BB83 std Y+3,r27
771 04fe AA83 std Y+2,r26
772 0500 9E91 ld r25,-X
773 0502 8E91 ld r24,-X
774 0504 4C01 movw r8,r24
775 0506 AA24 clr r10
776 0508 97FC sbrc r9,7
777 050a A094 com r10
778 050c BA2C mov r11,r10
779 050e 00C0 rjmp .L94
780 .L198:
781 0510 1296 adiw r26,2
782 0512 BB83 std Y+3,r27
783 0514 AA83 std Y+2,r26
784 0516 1297 sbiw r26,2
785 0518 8C91 ld r24,X
786 051a 8E83 std Y+6,r24
787 051c 1982 std Y+1,__zero_reg__
788 051e 00C0 rjmp .L86
789 .L199:
790 0520 F8E0 ldi r31,lo8(8)
791 0522 FAAB std Y+50,r31
792 .L102:
793 0524 1982 std Y+1,__zero_reg__
794 0526 00C0 rjmp .L97
795 .L98:
796 0528 81E0 ldi r24,lo8(1)
797 052a 382A or r3,r24
798 052c 98E0 ldi r25,lo8(8)
799 052e 9AAB std Y+50,r25
800 0530 00C0 rjmp .L102
801 .L206:
802 0532 822D mov r24,r2
803 0534 8519 sub r24,r5
804 0536 0E94 0000 call PAD_0
805 053a 00C0 rjmp .L162
806 .L205:
807 053c 80E3 ldi r24,lo8(48)
808 053e 8C83 std Y+4,r24
809 0540 FD82 std Y+5,r15
810 0542 62E0 ldi r22,lo8(2)
811 0544 70E0 ldi r23,hi8(2)
812 0546 CE01 movw r24,r28
813 0548 0496 adiw r24,4
814 054a 0E94 0000 call PRINT
815 054e 00C0 rjmp .L160
816 .L187:
817 0550 6801 movw r12,r16
818 0552 00C0 rjmp .L38
819 .L202:
820 0554 EAE0 ldi r30,lo8(10)
821 0556 EAAB std Y+50,r30
822 0558 00C0 rjmp .L102
823 .L116:
824 055a F1E0 ldi r31,lo8(1)
825 055c 3F2A or r3,r31
826 055e 8AE0 ldi r24,lo8(10)
827 0560 8AAB std Y+50,r24
828 0562 00C0 rjmp .L102
829 .L201:
830 0564 1296 adiw r26,2
831 0566 BB83 std Y+3,r27
832 0568 AA83 std Y+2,r26
833 056a DE90 ld r13,-X
834 056c CE90 ld r12,-X
835 056e C114 cp r12,__zero_reg__
836 0570 D104 cpc r13,__zero_reg__
837 0572 01F4 brne .L107
838 0574 88E2 ldi r24,lo8(40)
839 0576 8E83 std Y+6,r24
840 0578 8EE6 ldi r24,lo8(110)
841 057a 8F83 std Y+7,r24
842 057c 85E7 ldi r24,lo8(117)
843 057e 8887 std Y+8,r24
844 0580 8CE6 ldi r24,lo8(108)
845 0582 8987 std Y+9,r24
846 0584 8A87 std Y+10,r24
847 0586 89E2 ldi r24,lo8(41)
848 0588 8B87 std Y+11,r24
849 058a 1C86 std Y+12,__zero_reg__
850 058c A6E0 ldi r26,lo8(6)
851 058e CA2E mov r12,r26
852 0590 D12C mov r13,__zero_reg__
853 0592 CC0E add r12,r28
854 0594 DD1E adc r13,r29
855 .L107:
856 0596 EBA9 ldd r30,Y+51
857 0598 E7FD sbrc r30,7
858 059a 00C0 rjmp .L109
859 059c 4E2F mov r20,r30
860 059e 5527 clr r21
861 05a0 47FD sbrc r20,7
862 05a2 5095 com r21
863 05a4 60E0 ldi r22,lo8(0)
864 05a6 70E0 ldi r23,hi8(0)
865 05a8 C601 movw r24,r12
866 05aa 0E94 0000 call memchr
867 05ae 0097 sbiw r24,0
868 05b0 01F0 breq .L209
869 05b2 8C19 sub r24,r12
870 05b4 FBA9 ldd r31,Y+51
871 05b6 F817 cp r31,r24
872 05b8 04F4 brge .L113
873 05ba 8F2F mov r24,r31
874 .L113:
875 05bc 1982 std Y+1,__zero_reg__
876 05be E82F mov r30,r24
877 05c0 632C mov r6,r3
878 05c2 7724 clr r7
879 05c4 8EA6 std Y+46,r8
880 05c6 9FA6 std Y+47,r9
881 05c8 A8AA std Y+48,r10
882 05ca B9AA std Y+49,r11
883 05cc 40E0 ldi r20,lo8(0)
884 05ce 00C0 rjmp .L115
885 .L209:
886 05d0 8BA9 ldd r24,Y+51
887 05d2 00C0 rjmp .L113
888 .L109:
889 05d4 F601 movw r30,r12
890 05d6 0190 ld __tmp_reg__,Z+
891 05d8 0020 tst __tmp_reg__
892 05da 01F4 brne .-6
893 05dc 3197 sbiw r30,1
894 05de 8E2F mov r24,r30
895 05e0 8C19 sub r24,r12
896 05e2 00C0 rjmp .L113
897 .L200:
898 05e4 1296 adiw r26,2
899 05e6 BB83 std Y+3,r27
900 05e8 AA83 std Y+2,r26
901 05ea 9E91 ld r25,-X
902 05ec 8E91 ld r24,-X
903 05ee 4C01 movw r8,r24
904 05f0 AA24 clr r10
905 05f2 BB24 clr r11
906 05f4 F0E4 ldi r31,lo8(64)
907 05f6 3F2A or r3,r31
908 05f8 B8E7 ldi r27,lo8(120)
909 05fa FB2E mov r15,r27
910 05fc 80E1 ldi r24,lo8(16)
911 05fe 8AAB std Y+50,r24
912 0600 00C0 rjmp .L102
913 .L204:
914 0602 61E0 ldi r22,lo8(1)
915 0604 70E0 ldi r23,hi8(1)
916 0606 CE01 movw r24,r28
917 0608 0196 adiw r24,1
918 060a 0E94 0000 call PRINT
919 060e 00C0 rjmp .L160
920 .L203:
921 0610 822D mov r24,r2
922 0612 8519 sub r24,r5
923 0614 0E94 0000 call PAD_SP
924 0618 2981 ldd r18,Y+1
925 061a 00C0 rjmp .L156
926 .L120:
927 061c 33FE sbrs r3,3
928 061e 00C0 rjmp .L123
929 0620 8114 cp r8,__zero_reg__
930 0622 9104 cpc r9,__zero_reg__
931 0624 A104 cpc r10,__zero_reg__
932 0626 B104 cpc r11,__zero_reg__
933 0628 01F0 breq .L123
934 062a F0E4 ldi r31,lo8(64)
935 062c 3F2A or r3,r31
936 062e 80E1 ldi r24,lo8(16)
937 0630 8AAB std Y+50,r24
938 0632 00C0 rjmp .L102
939 .L141:
940 0634 632C mov r6,r3
941 0636 7724 clr r7
942 0638 33FE sbrs r3,3
943 063a 00C0 rjmp .L183
944 063c 80E3 ldi r24,lo8(48)
945 063e E816 cp r14,r24
946 0640 01F0 breq .L183
947 0642 80E3 ldi r24,lo8(48)
948 0644 F601 movw r30,r12
949 0646 8293 st -Z,r24
950 0648 6F01 movw r12,r30
951 .L183:
952 064a ECA9 ldd r30,Y+52
953 064c EC19 sub r30,r12
954 064e 8E2F mov r24,r30
955 0650 00C0 rjmp .L133
956 .L123:
957 0652 90E1 ldi r25,lo8(16)
958 0654 9AAB std Y+50,r25
959 0656 00C0 rjmp .L102
960 .L165:
961 /* epilogue: frame size=53 */
962 0658 E596 adiw r28,53
963 065a 0FB6 in __tmp_reg__,__SREG__
964 065c F894 cli
965 065e DEBF out __SP_H__,r29
966 0660 0FBE out __SREG__,__tmp_reg__
967 0662 CDBF out __SP_L__,r28
968 0664 DF91 pop r29
969 0666 CF91 pop r28
970 0668 1F91 pop r17
971 066a 0F91 pop r16
972 066c FF90 pop r15
973 066e EF90 pop r14
974 0670 DF90 pop r13
975 0672 CF90 pop r12
976 0674 BF90 pop r11
977 0676 AF90 pop r10
978 0678 9F90 pop r9
979 067a 8F90 pop r8
980 067c 7F90 pop r7
981 067e 6F90 pop r6
982 0680 5F90 pop r5
983 0682 4F90 pop r4
984 0684 3F90 pop r3
985 0686 2F90 pop r2
986 0688 0895 ret
987 /* epilogue end (size=25) */
988 /* function _printf_P size 767 (716) */
990 .comm PrintZiel,1,1
991 /* File "printf_P.c": code 863 = 0x035f ( 787), prologues 36, epilogues 40 */
DEFINED SYMBOLS
*ABS*:00000000 printf_P.c
C:\DOKUME~1\DPeters\LOKALE~1\Temp/ccUYX4v5.s:2 *ABS*:0000003f __SREG__
C:\DOKUME~1\DPeters\LOKALE~1\Temp/ccUYX4v5.s:3 *ABS*:0000003e __SP_H__
C:\DOKUME~1\DPeters\LOKALE~1\Temp/ccUYX4v5.s:4 *ABS*:0000003d __SP_L__
C:\DOKUME~1\DPeters\LOKALE~1\Temp/ccUYX4v5.s:5 *ABS*:00000000 __tmp_reg__
C:\DOKUME~1\DPeters\LOKALE~1\Temp/ccUYX4v5.s:6 *ABS*:00000001 __zero_reg__
C:\DOKUME~1\DPeters\LOKALE~1\Temp/ccUYX4v5.s:12 .text:00000000 Putchar
*COM*:00000001 PrintZiel
C:\DOKUME~1\DPeters\LOKALE~1\Temp/ccUYX4v5.s:44 .text:00000032 PAD_0
C:\DOKUME~1\DPeters\LOKALE~1\Temp/ccUYX4v5.s:65 .text:00000048 PAD_SP
C:\DOKUME~1\DPeters\LOKALE~1\Temp/ccUYX4v5.s:86 .text:0000005e PRINTP
C:\DOKUME~1\DPeters\LOKALE~1\Temp/ccUYX4v5.s:121 .text:0000008a PRINT
C:\DOKUME~1\DPeters\LOKALE~1\Temp/ccUYX4v5.s:151 .text:000000b2 _printf_P
UNDEFINED SYMBOLS
__do_copy_data
__do_clear_bss
uart_putchar
DispPtr
DisplayBuff
__udivmodsi4
memchr