root / demos / hunter_prey_john / projects / libwireless / lib / wireless.lst @ 1694
History | View | Annotate | Download (20.9 KB)
1 |
1 .file "wireless.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 |
10 .text |
11 |
12 timer_handler: |
12 |
13 /* prologue: frame size=0 */ |
13 |
14 /* prologue end (size=0) */ |
14 |
15 0000 81E0 ldi r24,lo8(1) |
15 |
16 0002 90E0 ldi r25,hi8(1) |
16 |
17 0004 9093 0000 sts (wl_timeout)+1,r25 |
17 |
18 0008 8093 0000 sts wl_timeout,r24 |
18 |
19 /* epilogue: frame size=0 */ |
19 |
20 000c 0895 ret |
20 |
21 /* epilogue end (size=1) */ |
21 |
22 /* function timer_handler size 7 (6) */ |
22 |
24 .global wl_register_packet_group |
23 |
26 wl_register_packet_group: |
24 |
27 /* prologue: frame size=0 */ |
25 |
28 /* prologue end (size=0) */ |
26 |
29 000e DC01 movw r26,r24 |
27 |
30 0010 8D91 ld r24,X+ |
28 |
31 0012 9C91 ld r25,X |
29 |
32 0014 1197 sbiw r26,1 |
30 |
33 0016 8031 cpi r24,16 |
31 |
34 0018 9105 cpc r25,__zero_reg__ |
32 |
35 001a 00F4 brsh .L7 |
33 |
36 001c FC01 movw r30,r24 |
34 |
37 001e EE0F lsl r30 |
35 |
38 0020 FF1F rol r31 |
36 |
39 0022 E050 subi r30,lo8(-(wl_packet_groups)) |
37 |
40 0024 F040 sbci r31,hi8(-(wl_packet_groups)) |
38 |
41 0026 8081 ld r24,Z |
39 |
42 0028 9181 ldd r25,Z+1 |
40 |
43 002a 892B or r24,r25 |
41 |
44 002c 01F4 brne .L7 |
42 |
45 002e B183 std Z+1,r27 |
43 |
46 0030 A083 st Z,r26 |
44 |
47 .L7: |
45 |
48 0032 0895 ret |
46 |
49 /* epilogue: frame size=0 */ |
47 |
50 /* epilogue: noreturn */ |
48 |
51 /* epilogue end (size=0) */ |
49 |
52 /* function wl_register_packet_group size 19 (19) */ |
50 |
54 .global wl_unregister_packet_group |
51 |
56 wl_unregister_packet_group: |
52 |
57 /* prologue: frame size=0 */ |
53 |
58 0034 CF93 push r28 |
54 |
59 0036 DF93 push r29 |
55 |
60 /* prologue end (size=2) */ |
56 |
61 0038 FC01 movw r30,r24 |
57 |
62 003a C081 ld r28,Z |
58 |
63 003c D181 ldd r29,Z+1 |
59 |
64 003e FE01 movw r30,r28 |
60 |
65 0040 EE0F lsl r30 |
61 |
66 0042 FF1F rol r31 |
62 |
67 0044 E050 subi r30,lo8(-(wl_packet_groups)) |
63 |
68 0046 F040 sbci r31,hi8(-(wl_packet_groups)) |
64 |
69 0048 0190 ld __tmp_reg__,Z+ |
65 |
70 004a F081 ld r31,Z |
66 |
71 004c E02D mov r30,__tmp_reg__ |
67 |
72 004e 3097 sbiw r30,0 |
68 |
73 0050 01F0 breq .L9 |
69 |
74 0052 0084 ldd __tmp_reg__,Z+8 |
70 |
75 0054 F185 ldd r31,Z+9 |
71 |
76 0056 E02D mov r30,__tmp_reg__ |
72 |
77 0058 3097 sbiw r30,0 |
73 |
78 005a 01F0 breq .L9 |
74 |
79 005c 0995 icall |
75 |
80 .L9: |
76 |
81 005e CC0F lsl r28 |
77 |
82 0060 DD1F rol r29 |
78 |
83 0062 C050 subi r28,lo8(-(wl_packet_groups)) |
79 |
84 0064 D040 sbci r29,hi8(-(wl_packet_groups)) |
80 |
85 0066 1982 std Y+1,__zero_reg__ |
81 |
86 0068 1882 st Y,__zero_reg__ |
82 |
87 /* epilogue: frame size=0 */ |
83 |
88 006a DF91 pop r29 |
84 |
89 006c CF91 pop r28 |
85 |
90 006e 0895 ret |
86 |
91 /* epilogue end (size=3) */ |
87 |
92 /* function wl_unregister_packet_group size 30 (25) */ |
88 |
94 .global wl_do |
89 |
96 wl_do: |
90 |
97 /* prologue: frame size=0 */ |
91 |
98 0070 CF93 push r28 |
92 |
99 0072 DF93 push r29 |
93 |
100 /* prologue end (size=2) */ |
94 |
101 0074 8091 0000 lds r24,wl_timeout |
95 |
102 0078 9091 0000 lds r25,(wl_timeout)+1 |
96 |
103 007c 892B or r24,r25 |
97 |
104 007e 01F0 breq .L14 |
98 |
105 0080 C0E0 ldi r28,lo8(wl_packet_groups) |
99 |
106 0082 D0E0 ldi r29,hi8(wl_packet_groups) |
100 |
107 .L16: |
101 |
108 0084 E881 ld r30,Y |
102 |
109 0086 F981 ldd r31,Y+1 |
103 |
110 0088 3097 sbiw r30,0 |
104 |
111 008a 01F0 breq .L17 |
105 |
112 008c 0280 ldd __tmp_reg__,Z+2 |
106 |
113 008e F381 ldd r31,Z+3 |
107 |
114 0090 E02D mov r30,__tmp_reg__ |
108 |
115 0092 3097 sbiw r30,0 |
109 |
116 0094 01F0 breq .L17 |
110 |
117 0096 0995 icall |
111 |
118 .L17: |
112 |
119 0098 2296 adiw r28,2 |
113 |
120 009a 80E0 ldi r24,hi8(wl_packet_groups+32) |
114 |
121 009c C030 cpi r28,lo8(wl_packet_groups+32) |
115 |
122 009e D807 cpc r29,r24 |
116 |
123 00a0 01F4 brne .L16 |
117 |
124 00a2 1092 0000 sts (wl_timeout)+1,__zero_reg__ |
118 |
125 00a6 1092 0000 sts wl_timeout,__zero_reg__ |
119 |
126 .L14: |
120 |
127 00aa 80E0 ldi r24,lo8(wl_buf) |
121 |
128 00ac 90E0 ldi r25,hi8(wl_buf) |
122 |
129 00ae 0E94 0000 call xbee_get_packet |
123 |
130 00b2 9C01 movw r18,r24 |
124 |
131 00b4 97FD sbrc r25,7 |
125 |
132 00b6 00C0 rjmp .L33 |
126 |
133 00b8 8091 0000 lds r24,wl_buf |
127 |
134 00bc 8938 cpi r24,lo8(-119) |
128 |
135 00be 01F4 brne .L23 |
129 |
136 00c0 2330 cpi r18,3 |
130 |
137 00c2 3105 cpc r19,__zero_reg__ |
131 |
138 00c4 01F0 breq .+2 |
132 |
139 00c6 00C0 rjmp .L33 |
133 |
140 00c8 8091 0000 lds r24,wl_buf+1 |
134 |
141 00cc 9091 0000 lds r25,wl_buf+2 |
135 |
142 00d0 E82F mov r30,r24 |
136 |
143 00d2 E295 swap r30 |
137 |
144 00d4 EF70 andi r30,0x0f |
138 |
145 00d6 FF27 clr r31 |
139 |
146 00d8 EE0F lsl r30 |
140 |
147 00da FF1F rol r31 |
141 |
148 00dc E050 subi r30,lo8(-(wl_packet_groups)) |
142 |
149 00de F040 sbci r31,hi8(-(wl_packet_groups)) |
143 |
150 00e0 0190 ld __tmp_reg__,Z+ |
144 |
151 00e2 F081 ld r31,Z |
145 |
152 00e4 E02D mov r30,__tmp_reg__ |
146 |
153 00e6 3097 sbiw r30,0 |
147 |
154 00e8 01F0 breq .L33 |
148 |
155 00ea 0480 ldd __tmp_reg__,Z+4 |
149 |
156 00ec F581 ldd r31,Z+5 |
150 |
157 00ee E02D mov r30,__tmp_reg__ |
151 |
158 00f0 3097 sbiw r30,0 |
152 |
159 00f2 01F0 breq .L33 |
153 |
160 00f4 60E0 ldi r22,lo8(0) |
154 |
161 00f6 70E0 ldi r23,hi8(0) |
155 |
162 00f8 9923 tst r25 |
156 |
163 00fa 01F4 brne .L28 |
157 |
164 00fc 61E0 ldi r22,lo8(1) |
158 |
165 00fe 70E0 ldi r23,hi8(1) |
159 |
166 .L28: |
160 |
167 0100 9927 clr r25 |
161 |
168 0102 8F70 andi r24,lo8(15) |
162 |
169 0104 9070 andi r25,hi8(15) |
163 |
170 0106 0995 icall |
164 |
171 0108 00C0 rjmp .L33 |
165 |
172 .L23: |
166 |
173 010a 8138 cpi r24,lo8(-127) |
167 |
174 010c 01F4 brne .L33 |
168 |
175 010e 2730 cpi r18,7 |
169 |
176 0110 3105 cpc r19,__zero_reg__ |
170 |
177 0112 04F0 brlt .L33 |
171 |
178 0114 6091 0000 lds r22,wl_buf+1 |
172 |
179 0118 9091 0000 lds r25,wl_buf+2 |
173 |
180 011c 8091 0000 lds r24,wl_buf+6 |
174 |
181 0120 E091 0000 lds r30,wl_buf+5 |
175 |
182 0124 FF27 clr r31 |
176 |
183 0126 EE0F lsl r30 |
177 |
184 0128 FF1F rol r31 |
178 |
185 012a E050 subi r30,lo8(-(wl_packet_groups)) |
179 |
186 012c F040 sbci r31,hi8(-(wl_packet_groups)) |
180 |
187 012e 0190 ld __tmp_reg__,Z+ |
181 |
188 0130 F081 ld r31,Z |
182 |
189 0132 E02D mov r30,__tmp_reg__ |
183 |
190 0134 3097 sbiw r30,0 |
184 |
191 0136 01F0 breq .L33 |
185 |
192 0138 0680 ldd __tmp_reg__,Z+6 |
186 |
193 013a F781 ldd r31,Z+7 |
187 |
194 013c E02D mov r30,__tmp_reg__ |
188 |
195 013e 3097 sbiw r30,0 |
189 |
196 0140 01F0 breq .L33 |
190 |
197 0142 2750 subi r18,lo8(-(-7)) |
191 |
198 0144 3040 sbci r19,hi8(-(-7)) |
192 |
199 0146 7727 clr r23 |
193 |
200 0148 762F mov r23,r22 |
194 |
201 014a 6627 clr r22 |
195 |
202 014c 690F add r22,r25 |
196 |
203 014e 711D adc r23,__zero_reg__ |
197 |
204 0150 40E0 ldi r20,lo8(wl_buf+7) |
198 |
205 0152 50E0 ldi r21,hi8(wl_buf+7) |
199 |
206 0154 0995 icall |
200 |
207 .L33: |
201 |
208 /* epilogue: frame size=0 */ |
202 |
209 0156 DF91 pop r29 |
203 |
210 0158 CF91 pop r28 |
204 |
211 015a 0895 ret |
205 |
212 /* epilogue end (size=3) */ |
206 |
213 /* function wl_do size 118 (113) */ |
207 |
216 wl_send_packet: |
208 |
217 /* prologue: frame size=128 */ |
209 |
218 015c AF92 push r10 |
210 |
219 015e BF92 push r11 |
211 |
220 0160 CF92 push r12 |
212 |
221 0162 EF92 push r14 |
213 |
222 0164 0F93 push r16 |
214 |
223 0166 1F93 push r17 |
215 |
224 0168 CF93 push r28 |
216 |
225 016a DF93 push r29 |
217 |
226 016c CDB7 in r28,__SP_L__ |
218 |
227 016e DEB7 in r29,__SP_H__ |
219 |
228 0170 C058 subi r28,lo8(128) |
220 |
229 0172 D040 sbci r29,hi8(128) |
221 |
230 0174 0FB6 in __tmp_reg__,__SREG__ |
222 |
231 0176 F894 cli |
223 |
232 0178 DEBF out __SP_H__,r29 |
224 |
233 017a 0FBE out __SREG__,__tmp_reg__ |
225 |
234 017c CDBF out __SP_L__,r28 |
226 |
235 /* prologue end (size=17) */ |
227 |
236 017e 982F mov r25,r24 |
228 |
237 0180 E62F mov r30,r22 |
229 |
238 0182 B901 movw r22,r18 |
230 |
239 0184 5801 movw r10,r16 |
231 |
240 0186 0C2D mov r16,r12 |
232 |
241 0188 CC20 tst r12 |
233 |
242 018a 01F0 breq .L37 |
234 |
243 018c 8C2D mov r24,r12 |
235 |
244 018e 8F70 andi r24,lo8(15) |
236 |
245 0190 092F mov r16,r25 |
237 |
246 0192 0295 swap r16 |
238 |
247 0194 007F andi r16,0xf0 |
239 |
248 0196 082B or r16,r24 |
240 |
249 .L37: |
241 |
250 0198 9983 std Y+1,r25 |
242 |
251 019a EA83 std Y+2,r30 |
243 |
252 019c E0E0 ldi r30,lo8(0) |
244 |
253 019e F0E0 ldi r31,hi8(0) |
245 |
254 01a0 9E01 movw r18,r28 |
246 |
255 01a2 2D5F subi r18,lo8(-(3)) |
247 |
256 01a4 3F4F sbci r19,hi8(-(3)) |
248 |
257 01a6 00C0 rjmp .L39 |
249 |
258 .L40: |
250 |
259 01a8 DA01 movw r26,r20 |
251 |
260 01aa 8D91 ld r24,X+ |
252 |
261 01ac AD01 movw r20,r26 |
253 |
262 01ae D901 movw r26,r18 |
254 |
263 01b0 8D93 st X+,r24 |
255 |
264 01b2 9D01 movw r18,r26 |
256 |
265 01b4 3196 adiw r30,1 |
257 |
266 .L39: |
258 |
267 01b6 E617 cp r30,r22 |
259 |
268 01b8 F707 cpc r31,r23 |
260 |
269 01ba 04F0 brlt .L40 |
261 |
270 01bc 6E5F subi r22,lo8(-(2)) |
262 |
271 01be 7F4F sbci r23,hi8(-(2)) |
263 |
272 01c0 2E2D mov r18,r14 |
264 |
273 01c2 A501 movw r20,r10 |
265 |
274 01c4 CE01 movw r24,r28 |
266 |
275 01c6 0196 adiw r24,1 |
267 |
276 01c8 0E94 0000 call xbee_send_packet |
268 |
277 /* epilogue: frame size=128 */ |
269 |
278 01cc C058 subi r28,lo8(-128) |
270 |
279 01ce DF4F sbci r29,hi8(-128) |
271 |
280 01d0 0FB6 in __tmp_reg__,__SREG__ |
272 |
281 01d2 F894 cli |
273 |
282 01d4 DEBF out __SP_H__,r29 |
274 |
283 01d6 0FBE out __SREG__,__tmp_reg__ |
275 |
284 01d8 CDBF out __SP_L__,r28 |
276 |
285 01da DF91 pop r29 |
277 |
286 01dc CF91 pop r28 |
278 |
287 01de 1F91 pop r17 |
279 |
288 01e0 0F91 pop r16 |
280 |
289 01e2 EF90 pop r14 |
281 |
290 01e4 CF90 pop r12 |
282 |
291 01e6 BF90 pop r11 |
283 |
292 01e8 AF90 pop r10 |
284 |
293 01ea 0895 ret |
285 |
294 /* epilogue end (size=16) */ |
286 |
295 /* function wl_send_packet size 72 (39) */ |
287 |
297 .global wl_send_pan_packet |
288 |
299 wl_send_pan_packet: |
289 |
300 /* prologue: frame size=0 */ |
290 |
301 01ec CF92 push r12 |
291 |
302 01ee EF92 push r14 |
292 |
303 01f0 0F93 push r16 |
293 |
304 01f2 1F93 push r17 |
294 |
305 /* prologue end (size=4) */ |
295 |
306 01f4 C02E mov r12,r16 |
296 |
307 01f6 EE24 clr r14 |
297 |
308 01f8 0FEF ldi r16,lo8(-1) |
298 |
309 01fa 1FEF ldi r17,hi8(-1) |
299 |
310 01fc 0E94 0000 call wl_send_packet |
300 |
311 /* epilogue: frame size=0 */ |
301 |
312 0200 1F91 pop r17 |
302 |
313 0202 0F91 pop r16 |
303 |
314 0204 EF90 pop r14 |
304 |
315 0206 CF90 pop r12 |
305 |
316 0208 0895 ret |
306 |
317 /* epilogue end (size=5) */ |
307 |
318 /* function wl_send_pan_packet size 15 (6) */ |
308 |
320 .global wl_send_global_packet |
309 |
322 wl_send_global_packet: |
310 |
323 /* prologue: frame size=0 */ |
311 |
324 020a CF92 push r12 |
312 |
325 020c EF92 push r14 |
313 |
326 020e 0F93 push r16 |
314 |
327 0210 1F93 push r17 |
315 |
328 /* prologue end (size=4) */ |
316 |
329 0212 C02E mov r12,r16 |
317 |
330 0214 74E0 ldi r23,lo8(4) |
318 |
331 0216 E72E mov r14,r23 |
319 |
332 0218 0FEF ldi r16,lo8(-1) |
320 |
333 021a 1FEF ldi r17,hi8(-1) |
321 |
334 021c 0E94 0000 call wl_send_packet |
322 |
335 /* epilogue: frame size=0 */ |
323 |
336 0220 1F91 pop r17 |
324 |
337 0222 0F91 pop r16 |
325 |
338 0224 EF90 pop r14 |
326 |
339 0226 CF90 pop r12 |
327 |
340 0228 0895 ret |
328 |
341 /* epilogue end (size=5) */ |
329 |
342 /* function wl_send_global_packet size 16 (7) */ |
330 |
344 .global wl_send_robot_to_robot_packet |
331 |
346 wl_send_robot_to_robot_packet: |
332 |
347 /* prologue: frame size=0 */ |
333 |
348 022a CF92 push r12 |
334 |
349 022c EF92 push r14 |
335 |
350 022e 0F93 push r16 |
336 |
351 0230 1F93 push r17 |
337 |
352 /* prologue end (size=4) */ |
338 |
353 0232 CE2C mov r12,r14 |
339 |
354 0234 EE24 clr r14 |
340 |
355 0236 0E94 0000 call wl_send_packet |
341 |
356 /* epilogue: frame size=0 */ |
342 |
357 023a 1F91 pop r17 |
343 |
358 023c 0F91 pop r16 |
344 |
359 023e EF90 pop r14 |
345 |
360 0240 CF90 pop r12 |
346 |
361 0242 0895 ret |
347 |
362 /* epilogue end (size=5) */ |
348 |
363 /* function wl_send_robot_to_robot_packet size 13 (4) */ |
349 |
365 .global wl_send_robot_to_robot_global_packet |
350 |
367 wl_send_robot_to_robot_global_packet: |
351 |
368 /* prologue: frame size=0 */ |
352 |
369 0244 CF92 push r12 |
353 |
370 0246 EF92 push r14 |
354 |
371 0248 0F93 push r16 |
355 |
372 024a 1F93 push r17 |
356 |
373 /* prologue end (size=4) */ |
357 |
374 024c CE2C mov r12,r14 |
358 |
375 024e E4E0 ldi r30,lo8(4) |
359 |
376 0250 EE2E mov r14,r30 |
360 |
377 0252 0E94 0000 call wl_send_packet |
361 |
378 /* epilogue: frame size=0 */ |
362 |
379 0256 1F91 pop r17 |
363 |
380 0258 0F91 pop r16 |
364 |
381 025a EF90 pop r14 |
365 |
382 025c CF90 pop r12 |
366 |
383 025e 0895 ret |
367 |
384 /* epilogue end (size=5) */ |
368 |
385 /* function wl_send_robot_to_robot_global_packet size 14 (5) */ |
369 |
387 .global wl_get_xbee_id |
370 |
389 wl_get_xbee_id: |
371 |
390 /* prologue: frame size=0 */ |
372 |
391 /* prologue end (size=0) */ |
373 |
392 0260 0E94 0000 call xbee_get_address |
374 |
393 /* epilogue: frame size=0 */ |
375 |
394 0264 0895 ret |
376 |
395 /* epilogue end (size=1) */ |
377 |
396 /* function wl_get_xbee_id size 3 (2) */ |
378 |
398 .global wl_get_channel |
379 |
400 wl_get_channel: |
380 |
401 /* prologue: frame size=0 */ |
381 |
402 /* prologue end (size=0) */ |
382 |
403 0266 0E94 0000 call xbee_get_channel |
383 |
404 /* epilogue: frame size=0 */ |
384 |
405 026a 0895 ret |
385 |
406 /* epilogue end (size=1) */ |
386 |
407 /* function wl_get_channel size 3 (2) */ |
387 |
409 .global wl_set_channel |
388 |
411 wl_set_channel: |
389 |
412 /* prologue: frame size=0 */ |
390 |
413 /* prologue end (size=0) */ |
391 |
414 026c 0E94 0000 call xbee_set_channel |
392 |
415 /* epilogue: frame size=0 */ |
393 |
416 0270 0895 ret |
394 |
417 /* epilogue end (size=1) */ |
395 |
418 /* function wl_set_channel size 3 (2) */ |
396 |
420 .global wl_get_pan |
397 |
422 wl_get_pan: |
398 |
423 /* prologue: frame size=0 */ |
399 |
424 /* prologue end (size=0) */ |
400 |
425 0272 0E94 0000 call xbee_get_pan_id |
401 |
426 /* epilogue: frame size=0 */ |
402 |
427 0276 0895 ret |
403 |
428 /* epilogue end (size=1) */ |
404 |
429 /* function wl_get_pan size 3 (2) */ |
405 |
431 .global wl_set_pan |
406 |
433 wl_set_pan: |
407 |
434 /* prologue: frame size=0 */ |
408 |
435 /* prologue end (size=0) */ |
409 |
436 0278 0E94 0000 call xbee_set_pan_id |
410 |
437 /* epilogue: frame size=0 */ |
411 |
438 027c 0895 ret |
412 |
439 /* epilogue end (size=1) */ |
413 |
440 /* function wl_set_pan size 3 (2) */ |
414 |
442 .global wl_terminate |
415 |
444 wl_terminate: |
416 |
445 /* prologue: frame size=0 */ |
417 |
446 027e CF93 push r28 |
418 |
447 0280 DF93 push r29 |
419 |
448 /* prologue end (size=2) */ |
420 |
449 0282 C0E0 ldi r28,lo8(wl_packet_groups) |
421 |
450 0284 D0E0 ldi r29,hi8(wl_packet_groups) |
422 |
451 .L62: |
423 |
452 0286 E881 ld r30,Y |
424 |
453 0288 F981 ldd r31,Y+1 |
425 |
454 028a 3097 sbiw r30,0 |
426 |
455 028c 01F0 breq .L63 |
427 |
456 028e 0084 ldd __tmp_reg__,Z+8 |
428 |
457 0290 F185 ldd r31,Z+9 |
429 |
458 0292 E02D mov r30,__tmp_reg__ |
430 |
459 0294 3097 sbiw r30,0 |
431 |
460 0296 01F0 breq .L63 |
432 |
461 0298 0995 icall |
433 |
462 .L63: |
434 |
463 029a 2296 adiw r28,2 |
435 |
464 029c 80E0 ldi r24,hi8(wl_packet_groups+32) |
436 |
465 029e C030 cpi r28,lo8(wl_packet_groups+32) |
437 |
466 02a0 D807 cpc r29,r24 |
438 |
467 02a2 01F4 brne .L62 |
439 |
468 02a4 0E94 0000 call xbee_terminate |
440 |
469 /* epilogue: frame size=0 */ |
441 |
470 02a8 DF91 pop r29 |
442 |
471 02aa CF91 pop r28 |
443 |
472 02ac 0895 ret |
444 |
473 /* epilogue end (size=3) */ |
445 |
474 /* function wl_terminate size 24 (19) */ |
446 |
476 .global wl_init |
447 |
478 wl_init: |
448 |
479 /* prologue: frame size=0 */ |
449 |
480 /* prologue end (size=0) */ |
450 |
481 02ae E0E0 ldi r30,lo8(wl_packet_groups) |
451 |
482 02b0 F0E0 ldi r31,hi8(wl_packet_groups) |
452 |
483 .L71: |
453 |
484 02b2 1192 st Z+,__zero_reg__ |
454 |
485 02b4 1192 st Z+,__zero_reg__ |
455 |
486 02b6 20E0 ldi r18,hi8(wl_packet_groups+32) |
456 |
487 02b8 E030 cpi r30,lo8(wl_packet_groups+32) |
457 |
488 02ba F207 cpc r31,r18 |
458 |
489 02bc 01F4 brne .L71 |
459 |
490 02be 0E94 0000 call xbee_lib_init |
460 |
491 02c2 8F5F subi r24,lo8(-1) |
461 |
492 02c4 9F4F sbci r25,hi8(-1) |
462 |
493 02c6 01F4 brne .L73 |
463 |
494 02c8 8FEF ldi r24,lo8(-1) |
464 |
495 02ca 9FEF ldi r25,hi8(-1) |
465 |
496 02cc 0895 ret |
466 |
497 .L73: |
467 |
498 02ce 60E0 ldi r22,lo8(gs(timer_handler)) |
468 |
499 02d0 70E0 ldi r23,hi8(gs(timer_handler)) |
469 |
500 02d2 88E0 ldi r24,lo8(8) |
470 |
501 02d4 90E0 ldi r25,hi8(8) |
471 |
502 02d6 0E94 0000 call rtc_init |
472 |
503 02da 80E0 ldi r24,lo8(0) |
473 |
504 02dc 90E0 ldi r25,hi8(0) |
474 |
505 02de 0895 ret |
475 |
506 /* epilogue: frame size=0 */ |
476 |
507 /* epilogue: noreturn */ |
477 |
508 /* epilogue end (size=0) */ |
478 |
509 /* function wl_init size 26 (26) */ |
479 |
511 .lcomm wl_timeout,2 |
480 |
512 .lcomm wl_buf,128 |
481 |
513 .lcomm wl_packet_groups,32 |
482 |
514 /* File "wireless.c": code 369 = 0x0171 ( 279), prologues 39, epilogues 51 */ |
483 |
DEFINED SYMBOLS |
484 |
*ABS*:00000000 wireless.c |
485 |
F:\DOCUME~1\Evan\LOCALS~1\Temp/ccu8lDFd.s:3 *ABS*:0000003f __SREG__ |
486 |
F:\DOCUME~1\Evan\LOCALS~1\Temp/ccu8lDFd.s:4 *ABS*:0000003e __SP_H__ |
487 |
F:\DOCUME~1\Evan\LOCALS~1\Temp/ccu8lDFd.s:5 *ABS*:0000003d __SP_L__ |
488 |
F:\DOCUME~1\Evan\LOCALS~1\Temp/ccu8lDFd.s:6 *ABS*:00000000 __tmp_reg__ |
489 |
F:\DOCUME~1\Evan\LOCALS~1\Temp/ccu8lDFd.s:7 *ABS*:00000001 __zero_reg__ |
490 |
F:\DOCUME~1\Evan\LOCALS~1\Temp/ccu8lDFd.s:12 .text:00000000 timer_handler |
491 |
.bss:00000000 wl_timeout |
492 |
F:\DOCUME~1\Evan\LOCALS~1\Temp/ccu8lDFd.s:26 .text:0000000e wl_register_packet_group |
493 |
F:\DOCUME~1\Evan\LOCALS~1\Temp/ccu8lDFd.s:512 .bss:00000082 wl_packet_groups |
494 |
F:\DOCUME~1\Evan\LOCALS~1\Temp/ccu8lDFd.s:56 .text:00000034 wl_unregister_packet_group |
495 |
F:\DOCUME~1\Evan\LOCALS~1\Temp/ccu8lDFd.s:96 .text:00000070 wl_do |
496 |
F:\DOCUME~1\Evan\LOCALS~1\Temp/ccu8lDFd.s:511 .bss:00000002 wl_buf |
497 |
F:\DOCUME~1\Evan\LOCALS~1\Temp/ccu8lDFd.s:216 .text:0000015c wl_send_packet |
498 |
F:\DOCUME~1\Evan\LOCALS~1\Temp/ccu8lDFd.s:299 .text:000001ec wl_send_pan_packet |
499 |
F:\DOCUME~1\Evan\LOCALS~1\Temp/ccu8lDFd.s:322 .text:0000020a wl_send_global_packet |
500 |
F:\DOCUME~1\Evan\LOCALS~1\Temp/ccu8lDFd.s:346 .text:0000022a wl_send_robot_to_robot_packet |
501 |
F:\DOCUME~1\Evan\LOCALS~1\Temp/ccu8lDFd.s:367 .text:00000244 wl_send_robot_to_robot_global_packet |
502 |
F:\DOCUME~1\Evan\LOCALS~1\Temp/ccu8lDFd.s:389 .text:00000260 wl_get_xbee_id |
503 |
F:\DOCUME~1\Evan\LOCALS~1\Temp/ccu8lDFd.s:400 .text:00000266 wl_get_channel |
504 |
F:\DOCUME~1\Evan\LOCALS~1\Temp/ccu8lDFd.s:411 .text:0000026c wl_set_channel |
505 |
F:\DOCUME~1\Evan\LOCALS~1\Temp/ccu8lDFd.s:422 .text:00000272 wl_get_pan |
506 |
F:\DOCUME~1\Evan\LOCALS~1\Temp/ccu8lDFd.s:433 .text:00000278 wl_set_pan |
507 |
F:\DOCUME~1\Evan\LOCALS~1\Temp/ccu8lDFd.s:444 .text:0000027e wl_terminate |
508 |
F:\DOCUME~1\Evan\LOCALS~1\Temp/ccu8lDFd.s:478 .text:000002ae wl_init |
509 |
|
510 |
UNDEFINED SYMBOLS |
511 |
__do_copy_data |
512 |
__do_clear_bss |
513 |
xbee_get_packet |
514 |
xbee_send_packet |
515 |
xbee_get_address |
516 |
xbee_get_channel |
517 |
xbee_set_channel |
518 |
xbee_get_pan_id |
519 |
xbee_set_pan_id |
520 |
xbee_terminate |
521 |
xbee_lib_init |
522 |
rtc_init |