Statistics
| Revision:

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