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