root / demos / john / projects / libdragonfly / serial.lst @ 1693
History | View | Annotate | Download (26.6 KB)
1 |
1 .file "serial.c" |
---|---|
2 |
2 .arch atmega128 |
3 |
3 __SREG__ = 0x3f |
4 |
4 __SP_H__ = 0x3e |
5 |
5 __SP_L__ = 0x3d |
6 |
6 __tmp_reg__ = 0 |
7 |
7 __zero_reg__ = 1 |
8 |
8 .global __do_copy_data |
9 |
9 .global __do_clear_bss |
10 |
17 .Ltext0: |
11 |
18 .global usb_init |
12 |
20 usb_init: |
13 |
21 .LFB3: |
14 |
22 .LM1: |
15 |
23 /* prologue: frame size=0 */ |
16 |
24 /* prologue end (size=0) */ |
17 |
25 .LM2: |
18 |
26 0000 1092 9000 sts 144,__zero_reg__ |
19 |
27 .LM3: |
20 |
28 0004 88E0 ldi r24,lo8(8) |
21 |
29 0006 89B9 out 41-0x20,r24 |
22 |
30 .LM4: |
23 |
31 0008 599A sbi 43-0x20,1 |
24 |
32 .LM5: |
25 |
33 000a 8AB1 in r24,42-0x20 |
26 |
34 000c 8861 ori r24,lo8(24) |
27 |
35 000e 8AB9 out 42-0x20,r24 |
28 |
36 .LM6: |
29 |
37 0010 E5E9 ldi r30,lo8(149) |
30 |
38 0012 F0E0 ldi r31,hi8(149) |
31 |
39 0014 8081 ld r24,Z |
32 |
40 0016 8660 ori r24,lo8(6) |
33 |
41 0018 8083 st Z,r24 |
34 |
42 /* epilogue: frame size=0 */ |
35 |
43 001a 0895 ret |
36 |
44 /* epilogue end (size=1) */ |
37 |
45 /* function usb_init size 14 (13) */ |
38 |
46 .LFE3: |
39 |
48 .global xbee_init |
40 |
50 xbee_init: |
41 |
51 .LFB4: |
42 |
52 .LM7: |
43 |
53 /* prologue: frame size=0 */ |
44 |
54 /* prologue end (size=0) */ |
45 |
55 .LM8: |
46 |
56 001c 1092 9800 sts 152,__zero_reg__ |
47 |
57 .LM9: |
48 |
58 0020 87E6 ldi r24,lo8(103) |
49 |
59 0022 8093 9900 sts 153,r24 |
50 |
60 .LM10: |
51 |
61 0026 EBE9 ldi r30,lo8(155) |
52 |
62 0028 F0E0 ldi r31,hi8(155) |
53 |
63 002a 8081 ld r24,Z |
54 |
64 002c 8260 ori r24,lo8(2) |
55 |
65 002e 8083 st Z,r24 |
56 |
66 .LM11: |
57 |
67 0030 EAE9 ldi r30,lo8(154) |
58 |
68 0032 F0E0 ldi r31,hi8(154) |
59 |
69 0034 8081 ld r24,Z |
60 |
70 0036 8861 ori r24,lo8(24) |
61 |
71 0038 8083 st Z,r24 |
62 |
72 .LM12: |
63 |
73 003a EDE9 ldi r30,lo8(157) |
64 |
74 003c F0E0 ldi r31,hi8(157) |
65 |
75 003e 8081 ld r24,Z |
66 |
76 0040 8660 ori r24,lo8(6) |
67 |
77 0042 8083 st Z,r24 |
68 |
78 /* epilogue: frame size=0 */ |
69 |
79 0044 0895 ret |
70 |
80 /* epilogue end (size=1) */ |
71 |
81 /* function xbee_init size 21 (20) */ |
72 |
82 .LFE4: |
73 |
84 .global usb_putc |
74 |
86 usb_putc: |
75 |
87 .LFB5: |
76 |
88 .LM13: |
77 |
89 /* prologue: frame size=0 */ |
78 |
90 /* prologue end (size=0) */ |
79 |
91 .LVL0: |
80 |
92 .L7: |
81 |
93 .LM14: |
82 |
94 0046 5D9B sbis 43-0x20,5 |
83 |
95 0048 00C0 rjmp .L7 |
84 |
96 .LM15: |
85 |
97 004a 8CB9 out 44-0x20,r24 |
86 |
98 .LM16: |
87 |
99 004c 80E0 ldi r24,lo8(0) |
88 |
100 004e 90E0 ldi r25,hi8(0) |
89 |
101 .LVL1: |
90 |
102 /* epilogue: frame size=0 */ |
91 |
103 0050 0895 ret |
92 |
104 /* epilogue end (size=1) */ |
93 |
105 /* function usb_putc size 6 (5) */ |
94 |
106 .LFE5: |
95 |
108 .global xbee_putc |
96 |
110 xbee_putc: |
97 |
111 .LFB6: |
98 |
112 .LM17: |
99 |
113 /* prologue: frame size=0 */ |
100 |
114 /* prologue end (size=0) */ |
101 |
115 .LVL2: |
102 |
116 0052 982F mov r25,r24 |
103 |
117 .LVL3: |
104 |
118 .L14: |
105 |
119 .LM18: |
106 |
120 0054 8091 9B00 lds r24,155 |
107 |
121 0058 85FF sbrs r24,5 |
108 |
122 005a 00C0 rjmp .L14 |
109 |
123 .LM19: |
110 |
124 005c 9093 9C00 sts 156,r25 |
111 |
125 .LM20: |
112 |
126 0060 80E0 ldi r24,lo8(0) |
113 |
127 0062 90E0 ldi r25,hi8(0) |
114 |
128 /* epilogue: frame size=0 */ |
115 |
129 0064 0895 ret |
116 |
130 /* epilogue end (size=1) */ |
117 |
131 /* function xbee_putc size 10 (9) */ |
118 |
132 .LFE6: |
119 |
134 .global usb_getc |
120 |
136 usb_getc: |
121 |
137 .LFB9: |
122 |
138 .LM21: |
123 |
139 /* prologue: frame size=0 */ |
124 |
140 /* prologue end (size=0) */ |
125 |
141 .L21: |
126 |
142 .LM22: |
127 |
143 0066 5F9B sbis 43-0x20,7 |
128 |
144 0068 00C0 rjmp .L21 |
129 |
145 .LM23: |
130 |
146 006a 8CB1 in r24,44-0x20 |
131 |
147 .LM24: |
132 |
148 006c 9927 clr r25 |
133 |
149 /* epilogue: frame size=0 */ |
134 |
150 006e 0895 ret |
135 |
151 /* epilogue end (size=1) */ |
136 |
152 /* function usb_getc size 5 (4) */ |
137 |
153 .LFE9: |
138 |
155 .global xbee_getc |
139 |
157 xbee_getc: |
140 |
158 .LFB10: |
141 |
159 .LM25: |
142 |
160 /* prologue: frame size=0 */ |
143 |
161 /* prologue end (size=0) */ |
144 |
162 .L28: |
145 |
163 .LM26: |
146 |
164 0070 8091 9B00 lds r24,155 |
147 |
165 0074 87FF sbrs r24,7 |
148 |
166 0076 00C0 rjmp .L28 |
149 |
167 .LM27: |
150 |
168 0078 8091 9C00 lds r24,156 |
151 |
169 .LM28: |
152 |
170 007c 9927 clr r25 |
153 |
171 /* epilogue: frame size=0 */ |
154 |
172 007e 0895 ret |
155 |
173 /* epilogue end (size=1) */ |
156 |
174 /* function xbee_getc size 8 (7) */ |
157 |
175 .LFE10: |
158 |
177 .global usb_getc_nb |
159 |
179 usb_getc_nb: |
160 |
180 .LFB11: |
161 |
181 .LM29: |
162 |
182 /* prologue: frame size=0 */ |
163 |
183 /* prologue end (size=0) */ |
164 |
184 .LVL4: |
165 |
185 0080 FC01 movw r30,r24 |
166 |
186 .LM30: |
167 |
187 0082 5F99 sbic 43-0x20,7 |
168 |
188 0084 00C0 rjmp .L34 |
169 |
189 .LVL5: |
170 |
190 .LM31: |
171 |
191 0086 8FEF ldi r24,lo8(-1) |
172 |
192 0088 9FEF ldi r25,hi8(-1) |
173 |
193 008a 0895 ret |
174 |
194 .LVL6: |
175 |
195 .L34: |
176 |
196 .LM32: |
177 |
197 008c 8CB1 in r24,44-0x20 |
178 |
198 008e 8083 st Z,r24 |
179 |
199 0090 80E0 ldi r24,lo8(0) |
180 |
200 0092 90E0 ldi r25,hi8(0) |
181 |
201 .LM33: |
182 |
202 0094 0895 ret |
183 |
203 /* epilogue: frame size=0 */ |
184 |
204 /* epilogue: noreturn */ |
185 |
205 /* epilogue end (size=0) */ |
186 |
206 /* function usb_getc_nb size 11 (11) */ |
187 |
207 .LFE11: |
188 |
209 .global xbee_getc_nb |
189 |
211 xbee_getc_nb: |
190 |
212 .LFB12: |
191 |
213 .LM34: |
192 |
214 /* prologue: frame size=0 */ |
193 |
215 /* prologue end (size=0) */ |
194 |
216 .LVL7: |
195 |
217 0096 FC01 movw r30,r24 |
196 |
218 .LM35: |
197 |
219 0098 8091 9B00 lds r24,155 |
198 |
220 .LVL8: |
199 |
221 009c 87FD sbrc r24,7 |
200 |
222 009e 00C0 rjmp .L39 |
201 |
223 .LM36: |
202 |
224 00a0 8FEF ldi r24,lo8(-1) |
203 |
225 00a2 9FEF ldi r25,hi8(-1) |
204 |
226 00a4 0895 ret |
205 |
227 .L39: |
206 |
228 .LM37: |
207 |
229 00a6 8091 9C00 lds r24,156 |
208 |
230 00aa 8083 st Z,r24 |
209 |
231 00ac 80E0 ldi r24,lo8(0) |
210 |
232 00ae 90E0 ldi r25,hi8(0) |
211 |
233 .LM38: |
212 |
234 00b0 0895 ret |
213 |
235 /* epilogue: frame size=0 */ |
214 |
236 /* epilogue: noreturn */ |
215 |
237 /* epilogue end (size=0) */ |
216 |
238 /* function xbee_getc_nb size 14 (14) */ |
217 |
239 .LFE12: |
218 |
241 .data |
219 |
242 .LC0: |
220 |
243 0000 3031 3233 .string "0123456789ABCDEF" |
221 |
243 3435 3637 |
222 |
243 3839 4142 |
223 |
243 4344 4546 |
224 |
243 00 |
225 |
244 .text |
226 |
245 .global hex_digit |
227 |
247 hex_digit: |
228 |
248 .LFB14: |
229 |
249 .LM39: |
230 |
250 /* prologue: frame size=0 */ |
231 |
251 /* prologue end (size=0) */ |
232 |
252 .LVL9: |
233 |
253 .LM40: |
234 |
254 00b2 8031 cpi r24,lo8(16) |
235 |
255 00b4 00F0 brlo .L44 |
236 |
256 .LM41: |
237 |
257 00b6 8FE3 ldi r24,lo8(63) |
238 |
258 00b8 90E0 ldi r25,hi8(63) |
239 |
259 .LVL10: |
240 |
260 00ba 0895 ret |
241 |
261 .LVL11: |
242 |
262 .L44: |
243 |
263 .LM42: |
244 |
264 00bc E82F mov r30,r24 |
245 |
265 00be FF27 clr r31 |
246 |
266 00c0 E050 subi r30,lo8(-(.LC0)) |
247 |
267 00c2 F040 sbci r31,hi8(-(.LC0)) |
248 |
268 00c4 8081 ld r24,Z |
249 |
269 .LVL12: |
250 |
270 00c6 9927 clr r25 |
251 |
271 .LM43: |
252 |
272 00c8 0895 ret |
253 |
273 /* epilogue: frame size=0 */ |
254 |
274 /* epilogue: noreturn */ |
255 |
275 /* epilogue end (size=0) */ |
256 |
276 /* function hex_digit size 12 (12) */ |
257 |
277 .LFE14: |
258 |
279 .global usb_puts |
259 |
281 usb_puts: |
260 |
282 .LFB7: |
261 |
283 .LM44: |
262 |
284 /* prologue: frame size=0 */ |
263 |
285 /* prologue end (size=0) */ |
264 |
286 .LVL13: |
265 |
287 00ca FC01 movw r30,r24 |
266 |
288 .LVL14: |
267 |
289 00cc 00C0 rjmp .L49 |
268 |
290 .LVL15: |
269 |
291 .L55: |
270 |
292 .LBB4: |
271 |
293 .LBB5: |
272 |
294 .LM45: |
273 |
295 00ce 5D9B sbis 43-0x20,5 |
274 |
296 00d0 00C0 rjmp .L55 |
275 |
297 .LM46: |
276 |
298 00d2 8CB9 out 44-0x20,r24 |
277 |
299 .LBE5: |
278 |
300 .LBE4: |
279 |
301 .LM47: |
280 |
302 00d4 3196 adiw r30,1 |
281 |
303 .LVL16: |
282 |
304 .L49: |
283 |
305 .LM48: |
284 |
306 00d6 8081 ld r24,Z |
285 |
307 .LVL17: |
286 |
308 00d8 8823 tst r24 |
287 |
309 00da 01F4 brne .L55 |
288 |
310 .LM49: |
289 |
311 00dc 80E0 ldi r24,lo8(0) |
290 |
312 00de 90E0 ldi r25,hi8(0) |
291 |
313 /* epilogue: frame size=0 */ |
292 |
314 00e0 0895 ret |
293 |
315 /* epilogue end (size=1) */ |
294 |
316 /* function usb_puts size 12 (11) */ |
295 |
317 .LFE7: |
296 |
319 .global usb_puti |
297 |
321 usb_puti: |
298 |
322 .LFB13: |
299 |
323 .LM50: |
300 |
324 /* prologue: frame size=6 */ |
301 |
325 00e2 0F93 push r16 |
302 |
326 00e4 1F93 push r17 |
303 |
327 00e6 CF93 push r28 |
304 |
328 00e8 DF93 push r29 |
305 |
329 00ea CDB7 in r28,__SP_L__ |
306 |
330 00ec DEB7 in r29,__SP_H__ |
307 |
331 00ee 2697 sbiw r28,6 |
308 |
332 00f0 0FB6 in __tmp_reg__,__SREG__ |
309 |
333 00f2 F894 cli |
310 |
334 00f4 DEBF out __SP_H__,r29 |
311 |
335 00f6 0FBE out __SREG__,__tmp_reg__ |
312 |
336 00f8 CDBF out __SP_L__,r28 |
313 |
337 /* prologue end (size=12) */ |
314 |
338 .LVL18: |
315 |
339 00fa 9C01 movw r18,r24 |
316 |
340 .LM51: |
317 |
341 00fc DE01 movw r26,r28 |
318 |
342 00fe 1196 adiw r26,1 |
319 |
343 0100 E0E0 ldi r30,lo8(C.1.1534) |
320 |
344 0102 F0E0 ldi r31,hi8(C.1.1534) |
321 |
345 0104 86E0 ldi r24,lo8(6) |
322 |
346 .LVL19: |
323 |
347 .L59: |
324 |
348 .LM52: |
325 |
349 0106 0190 ld r0,Z+ |
326 |
350 0108 0D92 st X+,r0 |
327 |
351 010a 8150 subi r24,lo8(-(-1)) |
328 |
352 010c 01F4 brne .L59 |
329 |
353 .LM53: |
330 |
354 010e 37FF sbrs r19,7 |
331 |
355 0110 00C0 rjmp .L60 |
332 |
356 .L70: |
333 |
357 .LBB10: |
334 |
358 .LBB11: |
335 |
359 .LM54: |
336 |
360 0112 5D9B sbis 43-0x20,5 |
337 |
361 0114 00C0 rjmp .L70 |
338 |
362 .LM55: |
339 |
363 0116 8DE2 ldi r24,lo8(45) |
340 |
364 0118 8CB9 out 44-0x20,r24 |
341 |
365 .LBE11: |
342 |
366 .LBE10: |
343 |
367 .LM56: |
344 |
368 011a 3095 com r19 |
345 |
369 011c 2195 neg r18 |
346 |
370 011e 3F4F sbci r19,lo8(-1) |
347 |
371 .L60: |
348 |
372 0120 46E0 ldi r20,lo8(6) |
349 |
373 .LVL20: |
350 |
374 0122 8E01 movw r16,r28 |
351 |
375 0124 0F5F subi r16,lo8(-(1)) |
352 |
376 0126 1F4F sbci r17,hi8(-(1)) |
353 |
377 .L63: |
354 |
378 .LM57: |
355 |
379 0128 4150 subi r20,lo8(-(-1)) |
356 |
380 .LM58: |
357 |
381 012a F801 movw r30,r16 |
358 |
382 012c E40F add r30,r20 |
359 |
383 012e F11D adc r31,__zero_reg__ |
360 |
384 0130 C901 movw r24,r18 |
361 |
385 0132 6AE0 ldi r22,lo8(10) |
362 |
386 0134 70E0 ldi r23,hi8(10) |
363 |
387 0136 0E94 0000 call __divmodhi4 |
364 |
388 013a 805D subi r24,lo8(-(48)) |
365 |
389 013c 8083 st Z,r24 |
366 |
390 .LM59: |
367 |
391 013e C901 movw r24,r18 |
368 |
392 0140 6AE0 ldi r22,lo8(10) |
369 |
393 0142 70E0 ldi r23,hi8(10) |
370 |
394 0144 0E94 0000 call __divmodhi4 |
371 |
395 0148 9B01 movw r18,r22 |
372 |
396 .LM60: |
373 |
397 014a 672B or r22,r23 |
374 |
398 014c 01F4 brne .L63 |
375 |
399 .LVL21: |
376 |
400 014e CE01 movw r24,r28 |
377 |
401 0150 0196 adiw r24,1 |
378 |
402 0152 00C0 rjmp .L64 |
379 |
403 .L65: |
380 |
404 .LM61: |
381 |
405 0154 FC01 movw r30,r24 |
382 |
406 0156 E40F add r30,r20 |
383 |
407 0158 F11D adc r31,__zero_reg__ |
384 |
408 015a E081 ld r30,Z |
385 |
409 .L66: |
386 |
410 .LBB12: |
387 |
411 .LBB13: |
388 |
412 .LM62: |
389 |
413 015c 5D9B sbis 43-0x20,5 |
390 |
414 015e 00C0 rjmp .L66 |
391 |
415 .LM63: |
392 |
416 0160 ECB9 out 44-0x20,r30 |
393 |
417 .LBE13: |
394 |
418 .LBE12: |
395 |
419 .LM64: |
396 |
420 0162 4F5F subi r20,lo8(-(1)) |
397 |
421 .L64: |
398 |
422 0164 4630 cpi r20,lo8(6) |
399 |
423 0166 00F0 brlo .L65 |
400 |
424 .LM65: |
401 |
425 0168 80E0 ldi r24,lo8(0) |
402 |
426 016a 90E0 ldi r25,hi8(0) |
403 |
427 /* epilogue: frame size=6 */ |
404 |
428 016c 2696 adiw r28,6 |
405 |
429 016e 0FB6 in __tmp_reg__,__SREG__ |
406 |
430 0170 F894 cli |
407 |
431 0172 DEBF out __SP_H__,r29 |
408 |
432 0174 0FBE out __SREG__,__tmp_reg__ |
409 |
433 0176 CDBF out __SP_L__,r28 |
410 |
434 0178 DF91 pop r29 |
411 |
435 017a CF91 pop r28 |
412 |
436 017c 1F91 pop r17 |
413 |
437 017e 0F91 pop r16 |
414 |
438 0180 0895 ret |
415 |
439 /* epilogue end (size=11) */ |
416 |
440 /* function usb_puti size 81 (58) */ |
417 |
441 .LFE13: |
418 |
443 .global usb_puts_P |
419 |
445 usb_puts_P: |
420 |
446 .LFB8: |
421 |
447 .LM66: |
422 |
448 /* prologue: frame size=1 */ |
423 |
449 0182 0F93 push r16 |
424 |
450 0184 1F93 push r17 |
425 |
451 0186 CF93 push r28 |
426 |
452 0188 DF93 push r29 |
427 |
453 018a CDB7 in r28,__SP_L__ |
428 |
454 018c DEB7 in r29,__SP_H__ |
429 |
455 018e 2197 sbiw r28,1 |
430 |
456 0190 0FB6 in __tmp_reg__,__SREG__ |
431 |
457 0192 F894 cli |
432 |
458 0194 DEBF out __SP_H__,r29 |
433 |
459 0196 0FBE out __SREG__,__tmp_reg__ |
434 |
460 0198 CDBF out __SP_L__,r28 |
435 |
461 /* prologue end (size=12) */ |
436 |
462 .LVL22: |
437 |
463 019a 8C01 movw r16,r24 |
438 |
464 019c 00C0 rjmp .L80 |
439 |
465 .LVL23: |
440 |
466 .L85: |
441 |
467 .LBB16: |
442 |
468 .LBB17: |
443 |
469 .LM67: |
444 |
470 019e 5D9B sbis 43-0x20,5 |
445 |
471 01a0 00C0 rjmp .L85 |
446 |
472 .LM68: |
447 |
473 01a2 8CB9 out 44-0x20,r24 |
448 |
474 .LBE17: |
449 |
475 .LBE16: |
450 |
476 .LM69: |
451 |
477 01a4 0F5F subi r16,lo8(-(1)) |
452 |
478 01a6 1F4F sbci r17,hi8(-(1)) |
453 |
479 .LVL24: |
454 |
480 .L80: |
455 |
481 .LM70: |
456 |
482 01a8 41E0 ldi r20,lo8(1) |
457 |
483 01aa 50E0 ldi r21,hi8(1) |
458 |
484 01ac B801 movw r22,r16 |
459 |
485 01ae CE01 movw r24,r28 |
460 |
486 01b0 0196 adiw r24,1 |
461 |
487 01b2 0E94 0000 call memcpy_P |
462 |
488 01b6 8981 ldd r24,Y+1 |
463 |
489 01b8 8823 tst r24 |
464 |
490 01ba 01F4 brne .L85 |
465 |
491 /* epilogue: frame size=1 */ |
466 |
492 01bc 2196 adiw r28,1 |
467 |
493 01be 0FB6 in __tmp_reg__,__SREG__ |
468 |
494 01c0 F894 cli |
469 |
495 01c2 DEBF out __SP_H__,r29 |
470 |
496 01c4 0FBE out __SREG__,__tmp_reg__ |
471 |
497 01c6 CDBF out __SP_L__,r28 |
472 |
498 01c8 DF91 pop r29 |
473 |
499 01ca CF91 pop r28 |
474 |
500 01cc 1F91 pop r17 |
475 |
501 01ce 0F91 pop r16 |
476 |
502 01d0 0895 ret |
477 |
503 /* epilogue end (size=11) */ |
478 |
504 /* function usb_puts_P size 40 (17) */ |
479 |
505 .LFE8: |
480 |
507 .global usb_puth8 |
481 |
509 usb_puth8: |
482 |
510 .LFB16: |
483 |
511 .LM71: |
484 |
512 /* prologue: frame size=0 */ |
485 |
513 /* prologue end (size=0) */ |
486 |
514 .LVL25: |
487 |
515 01d2 282F mov r18,r24 |
488 |
516 .LM72: |
489 |
517 01d4 E82F mov r30,r24 |
490 |
518 .LVL26: |
491 |
519 01d6 E295 swap r30 |
492 |
520 01d8 EF70 andi r30,0x0f |
493 |
521 .LBB26: |
494 |
522 .LBB27: |
495 |
523 .LM73: |
496 |
524 01da E031 cpi r30,lo8(16) |
497 |
525 01dc 00F0 brlo .L89 |
498 |
526 .LM74: |
499 |
527 01de 8FE3 ldi r24,lo8(63) |
500 |
528 01e0 90E0 ldi r25,hi8(63) |
501 |
529 .LVL27: |
502 |
530 01e2 00C0 rjmp .L98 |
503 |
531 .LVL28: |
504 |
532 .L89: |
505 |
533 .LM75: |
506 |
534 01e4 FF27 clr r31 |
507 |
535 01e6 E050 subi r30,lo8(-(.LC0)) |
508 |
536 01e8 F040 sbci r31,hi8(-(.LC0)) |
509 |
537 01ea 8081 ld r24,Z |
510 |
538 .LVL29: |
511 |
539 01ec 9927 clr r25 |
512 |
540 .L98: |
513 |
541 .LBE27: |
514 |
542 .LBE26: |
515 |
543 .LBB28: |
516 |
544 .LBB29: |
517 |
545 .LM76: |
518 |
546 01ee 5D9B sbis 43-0x20,5 |
519 |
547 01f0 00C0 rjmp .L98 |
520 |
548 .LM77: |
521 |
549 01f2 8CB9 out 44-0x20,r24 |
522 |
550 .LBE29: |
523 |
551 .LBE28: |
524 |
552 .LM78: |
525 |
553 01f4 822F mov r24,r18 |
526 |
554 .LVL30: |
527 |
555 01f6 8F70 andi r24,lo8(15) |
528 |
556 .LBB30: |
529 |
557 .LBB31: |
530 |
558 .LM79: |
531 |
559 01f8 8031 cpi r24,lo8(16) |
532 |
560 01fa 00F0 brlo .L93 |
533 |
561 01fc 8FE3 ldi r24,lo8(63) |
534 |
562 01fe 90E0 ldi r25,hi8(63) |
535 |
563 .LVL31: |
536 |
564 0200 00C0 rjmp .L99 |
537 |
565 .LVL32: |
538 |
566 .L93: |
539 |
567 .LM80: |
540 |
568 0202 E82F mov r30,r24 |
541 |
569 0204 FF27 clr r31 |
542 |
570 .LVL33: |
543 |
571 0206 E050 subi r30,lo8(-(.LC0)) |
544 |
572 0208 F040 sbci r31,hi8(-(.LC0)) |
545 |
573 020a 8081 ld r24,Z |
546 |
574 .LVL34: |
547 |
575 020c 9927 clr r25 |
548 |
576 .LVL35: |
549 |
577 .L99: |
550 |
578 .LBE31: |
551 |
579 .LBE30: |
552 |
580 .LBB32: |
553 |
581 .LBB33: |
554 |
582 .LM81: |
555 |
583 020e 5D9B sbis 43-0x20,5 |
556 |
584 0210 00C0 rjmp .L99 |
557 |
585 .LM82: |
558 |
586 0212 8CB9 out 44-0x20,r24 |
559 |
587 .LBE33: |
560 |
588 .LBE32: |
561 |
589 /* epilogue: frame size=0 */ |
562 |
590 0214 0895 ret |
563 |
591 /* epilogue end (size=1) */ |
564 |
592 /* function usb_puth8 size 34 (33) */ |
565 |
593 .LFE16: |
566 |
595 .global usb_puth16 |
567 |
597 usb_puth16: |
568 |
598 .LFB15: |
569 |
599 .LM83: |
570 |
600 /* prologue: frame size=0 */ |
571 |
601 /* prologue end (size=0) */ |
572 |
602 .LVL36: |
573 |
603 0216 9C01 movw r18,r24 |
574 |
604 .LVL37: |
575 |
605 .LM84: |
576 |
606 0218 892F mov r24,r25 |
577 |
607 021a 9927 clr r25 |
578 |
608 021c 8295 swap r24 |
579 |
609 021e 8F70 andi r24,0x0f |
580 |
610 0220 8F70 andi r24,lo8(15) |
581 |
611 .LVL38: |
582 |
612 .LBB50: |
583 |
613 .LBB51: |
584 |
614 .LM85: |
585 |
615 0222 8031 cpi r24,lo8(16) |
586 |
616 0224 00F0 brlo .L105 |
587 |
617 .LM86: |
588 |
618 0226 8FE3 ldi r24,lo8(63) |
589 |
619 0228 90E0 ldi r25,hi8(63) |
590 |
620 .LVL39: |
591 |
621 022a 00C0 rjmp .L122 |
592 |
622 .LVL40: |
593 |
623 .L105: |
594 |
624 .LM87: |
595 |
625 022c E82F mov r30,r24 |
596 |
626 022e FF27 clr r31 |
597 |
627 0230 E050 subi r30,lo8(-(.LC0)) |
598 |
628 0232 F040 sbci r31,hi8(-(.LC0)) |
599 |
629 0234 8081 ld r24,Z |
600 |
630 .LVL41: |
601 |
631 0236 9927 clr r25 |
602 |
632 .L122: |
603 |
633 .LBE51: |
604 |
634 .LBE50: |
605 |
635 .LBB52: |
606 |
636 .LBB53: |
607 |
637 .LM88: |
608 |
638 0238 5D9B sbis 43-0x20,5 |
609 |
639 023a 00C0 rjmp .L122 |
610 |
640 .LM89: |
611 |
641 023c 8CB9 out 44-0x20,r24 |
612 |
642 .LBE53: |
613 |
643 .LBE52: |
614 |
644 .LM90: |
615 |
645 023e 832F mov r24,r19 |
616 |
646 0240 9927 clr r25 |
617 |
647 0242 8F70 andi r24,lo8(15) |
618 |
648 .LVL42: |
619 |
649 .LBB54: |
620 |
650 .LBB55: |
621 |
651 .LM91: |
622 |
652 0244 8031 cpi r24,lo8(16) |
623 |
653 0246 00F0 brlo .L109 |
624 |
654 0248 8FE3 ldi r24,lo8(63) |
625 |
655 024a 90E0 ldi r25,hi8(63) |
626 |
656 .LVL43: |
627 |
657 024c 00C0 rjmp .L123 |
628 |
658 .LVL44: |
629 |
659 .L109: |
630 |
660 .LM92: |
631 |
661 024e E82F mov r30,r24 |
632 |
662 0250 FF27 clr r31 |
633 |
663 .LVL45: |
634 |
664 0252 E050 subi r30,lo8(-(.LC0)) |
635 |
665 0254 F040 sbci r31,hi8(-(.LC0)) |
636 |
666 0256 8081 ld r24,Z |
637 |
667 .LVL46: |
638 |
668 0258 9927 clr r25 |
639 |
669 .LVL47: |
640 |
670 .L123: |
641 |
671 .LBE55: |
642 |
672 .LBE54: |
643 |
673 .LBB56: |
644 |
674 .LBB57: |
645 |
675 .LM93: |
646 |
676 025a 5D9B sbis 43-0x20,5 |
647 |
677 025c 00C0 rjmp .L123 |
648 |
678 .LM94: |
649 |
679 025e 8CB9 out 44-0x20,r24 |
650 |
680 .LBE57: |
651 |
681 .LBE56: |
652 |
682 .LM95: |
653 |
683 0260 C901 movw r24,r18 |
654 |
684 0262 34E0 ldi r19,4 |
655 |
685 0264 9695 1: lsr r25 |
656 |
686 0266 8795 ror r24 |
657 |
687 0268 3A95 dec r19 |
658 |
688 026a 01F4 brne 1b |
659 |
689 026c 8F70 andi r24,lo8(15) |
660 |
690 .LVL48: |
661 |
691 .LBB58: |
662 |
692 .LBB59: |
663 |
693 .LM96: |
664 |
694 026e 8031 cpi r24,lo8(16) |
665 |
695 0270 00F0 brlo .L113 |
666 |
696 0272 8FE3 ldi r24,lo8(63) |
667 |
697 0274 90E0 ldi r25,hi8(63) |
668 |
698 .LVL49: |
669 |
699 0276 00C0 rjmp .L124 |
670 |
700 .LVL50: |
671 |
701 .L113: |
672 |
702 .LM97: |
673 |
703 0278 E82F mov r30,r24 |
674 |
704 027a FF27 clr r31 |
675 |
705 .LVL51: |
676 |
706 027c E050 subi r30,lo8(-(.LC0)) |
677 |
707 027e F040 sbci r31,hi8(-(.LC0)) |
678 |
708 0280 8081 ld r24,Z |
679 |
709 .LVL52: |
680 |
710 0282 9927 clr r25 |
681 |
711 .LVL53: |
682 |
712 .L124: |
683 |
713 .LBE59: |
684 |
714 .LBE58: |
685 |
715 .LBB60: |
686 |
716 .LBB61: |
687 |
717 .LM98: |
688 |
718 0284 5D9B sbis 43-0x20,5 |
689 |
719 0286 00C0 rjmp .L124 |
690 |
720 .LM99: |
691 |
721 0288 8CB9 out 44-0x20,r24 |
692 |
722 .LVL54: |
693 |
723 .LBE61: |
694 |
724 .LBE60: |
695 |
725 .LM100: |
696 |
726 028a 822F mov r24,r18 |
697 |
727 .LVL55: |
698 |
728 028c 8F70 andi r24,lo8(15) |
699 |
729 .LBB62: |
700 |
730 .LBB63: |
701 |
731 .LM101: |
702 |
732 028e 8031 cpi r24,lo8(16) |
703 |
733 0290 00F0 brlo .L117 |
704 |
734 0292 8FE3 ldi r24,lo8(63) |
705 |
735 0294 90E0 ldi r25,hi8(63) |
706 |
736 .LVL56: |
707 |
737 0296 00C0 rjmp .L125 |
708 |
738 .LVL57: |
709 |
739 .L117: |
710 |
740 .LM102: |
711 |
741 0298 E82F mov r30,r24 |
712 |
742 029a FF27 clr r31 |
713 |
743 .LVL58: |
714 |
744 029c E050 subi r30,lo8(-(.LC0)) |
715 |
745 029e F040 sbci r31,hi8(-(.LC0)) |
716 |
746 02a0 8081 ld r24,Z |
717 |
747 .LVL59: |
718 |
748 02a2 9927 clr r25 |
719 |
749 .LVL60: |
720 |
750 .L125: |
721 |
751 .LBE63: |
722 |
752 .LBE62: |
723 |
753 .LBB64: |
724 |
754 .LBB65: |
725 |
755 .LM103: |
726 |
756 02a4 5D9B sbis 43-0x20,5 |
727 |
757 02a6 00C0 rjmp .L125 |
728 |
758 .LM104: |
729 |
759 02a8 8CB9 out 44-0x20,r24 |
730 |
760 .LBE65: |
731 |
761 .LBE64: |
732 |
762 /* epilogue: frame size=0 */ |
733 |
763 02aa 0895 ret |
734 |
764 /* epilogue end (size=1) */ |
735 |
765 /* function usb_puth16 size 75 (74) */ |
736 |
766 .LFE15: |
737 |
768 .data |
738 |
771 C.1.1534: |
739 |
772 0011 30 .byte 48 |
740 |
773 0012 30 .byte 48 |
741 |
774 0013 30 .byte 48 |
742 |
775 0014 30 .byte 48 |
743 |
776 0015 30 .byte 48 |
744 |
777 0016 30 .byte 48 |
745 |
906 .Letext0: |
746 |
DEFINED SYMBOLS |
747 |
*ABS*:00000000 serial.c |
748 |
F:\DOCUME~1\Evan\LOCALS~1\Temp/cccDgrgV.s:3 *ABS*:0000003f __SREG__ |
749 |
F:\DOCUME~1\Evan\LOCALS~1\Temp/cccDgrgV.s:4 *ABS*:0000003e __SP_H__ |
750 |
F:\DOCUME~1\Evan\LOCALS~1\Temp/cccDgrgV.s:5 *ABS*:0000003d __SP_L__ |
751 |
F:\DOCUME~1\Evan\LOCALS~1\Temp/cccDgrgV.s:6 *ABS*:00000000 __tmp_reg__ |
752 |
F:\DOCUME~1\Evan\LOCALS~1\Temp/cccDgrgV.s:7 *ABS*:00000001 __zero_reg__ |
753 |
F:\DOCUME~1\Evan\LOCALS~1\Temp/cccDgrgV.s:20 .text:00000000 usb_init |
754 |
F:\DOCUME~1\Evan\LOCALS~1\Temp/cccDgrgV.s:50 .text:0000001c xbee_init |
755 |
F:\DOCUME~1\Evan\LOCALS~1\Temp/cccDgrgV.s:86 .text:00000046 usb_putc |
756 |
F:\DOCUME~1\Evan\LOCALS~1\Temp/cccDgrgV.s:110 .text:00000052 xbee_putc |
757 |
F:\DOCUME~1\Evan\LOCALS~1\Temp/cccDgrgV.s:136 .text:00000066 usb_getc |
758 |
F:\DOCUME~1\Evan\LOCALS~1\Temp/cccDgrgV.s:157 .text:00000070 xbee_getc |
759 |
F:\DOCUME~1\Evan\LOCALS~1\Temp/cccDgrgV.s:179 .text:00000080 usb_getc_nb |
760 |
F:\DOCUME~1\Evan\LOCALS~1\Temp/cccDgrgV.s:211 .text:00000096 xbee_getc_nb |
761 |
F:\DOCUME~1\Evan\LOCALS~1\Temp/cccDgrgV.s:247 .text:000000b2 hex_digit |
762 |
F:\DOCUME~1\Evan\LOCALS~1\Temp/cccDgrgV.s:281 .text:000000ca usb_puts |
763 |
F:\DOCUME~1\Evan\LOCALS~1\Temp/cccDgrgV.s:321 .text:000000e2 usb_puti |
764 |
F:\DOCUME~1\Evan\LOCALS~1\Temp/cccDgrgV.s:771 .data:00000011 C.1.1534 |
765 |
F:\DOCUME~1\Evan\LOCALS~1\Temp/cccDgrgV.s:445 .text:00000182 usb_puts_P |
766 |
F:\DOCUME~1\Evan\LOCALS~1\Temp/cccDgrgV.s:509 .text:000001d2 usb_puth8 |
767 |
F:\DOCUME~1\Evan\LOCALS~1\Temp/cccDgrgV.s:597 .text:00000216 usb_puth16 |
768 |
|
769 |
UNDEFINED SYMBOLS |
770 |
__do_copy_data |
771 |
__do_clear_bss |
772 |
__divmodhi4 |
773 |
memcpy_P |