root / demos / john / projects / libdragonfly / move.lst @ 1693
History | View | Annotate | Download (19.6 KB)
1 |
1 .file "move.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 translateAngulartoLinear |
12 |
20 translateAngulartoLinear: |
13 |
21 .LFB4: |
14 |
22 .LM1: |
15 |
23 /* prologue: frame size=0 */ |
16 |
24 0000 8F92 push r8 |
17 |
25 0002 9F92 push r9 |
18 |
26 0004 AF92 push r10 |
19 |
27 0006 BF92 push r11 |
20 |
28 0008 CF92 push r12 |
21 |
29 000a DF92 push r13 |
22 |
30 000c EF92 push r14 |
23 |
31 000e FF92 push r15 |
24 |
32 0010 0F93 push r16 |
25 |
33 0012 1F93 push r17 |
26 |
34 0014 CF93 push r28 |
27 |
35 0016 DF93 push r29 |
28 |
36 /* prologue end (size=12) */ |
29 |
37 .LVL0: |
30 |
38 0018 FC01 movw r30,r24 |
31 |
39 001a 4A01 movw r8,r20 |
32 |
40 001c E901 movw r28,r18 |
33 |
41 .LVL1: |
34 |
42 .LM2: |
35 |
43 001e 8150 subi r24,lo8(-(255)) |
36 |
44 0020 9F4F sbci r25,hi8(-(255)) |
37 |
45 0022 8F5F subi r24,lo8(511) |
38 |
46 0024 9140 sbci r25,hi8(511) |
39 |
47 .LVL2: |
40 |
48 0026 00F0 brlo .+2 |
41 |
49 0028 00C0 rjmp .L14 |
42 |
50 .LVL3: |
43 |
51 .LM3: |
44 |
52 002a 8FEF ldi r24,hi8(-255) |
45 |
53 002c 6130 cpi r22,lo8(-255) |
46 |
54 002e 7807 cpc r23,r24 |
47 |
55 0030 04F4 brge .+2 |
48 |
56 0032 00C0 rjmp .L14 |
49 |
57 0034 6F3F cpi r22,255 |
50 |
58 0036 7105 cpc r23,__zero_reg__ |
51 |
59 0038 01F0 breq .+4 |
52 |
60 003a 04F0 brlt .+2 |
53 |
61 003c 00C0 rjmp .L14 |
54 |
62 .LM4: |
55 |
63 003e CB01 movw r24,r22 |
56 |
64 0040 880F lsl r24 |
57 |
65 0042 991F rol r25 |
58 |
66 0044 860F add r24,r22 |
59 |
67 0046 971F adc r25,r23 |
60 |
68 0048 9F01 movw r18,r30 |
61 |
69 004a 280F add r18,r24 |
62 |
70 004c 391F adc r19,r25 |
63 |
71 004e 5901 movw r10,r18 |
64 |
72 0050 CC24 clr r12 |
65 |
73 0052 B7FC sbrc r11,7 |
66 |
74 0054 C094 com r12 |
67 |
75 0056 DC2C mov r13,r12 |
68 |
76 .LVL4: |
69 |
77 .LM5: |
70 |
78 0058 E81B sub r30,r24 |
71 |
79 005a F90B sbc r31,r25 |
72 |
80 005c 7F01 movw r14,r30 |
73 |
81 005e 0027 clr r16 |
74 |
82 0060 F7FC sbrc r15,7 |
75 |
83 0062 0095 com r16 |
76 |
84 0064 102F mov r17,r16 |
77 |
85 .LVL5: |
78 |
86 .LM6: |
79 |
87 0066 EFEF ldi r30,lo8(255) |
80 |
88 0068 AE16 cp r10,r30 |
81 |
89 006a B104 cpc r11,__zero_reg__ |
82 |
90 006c C104 cpc r12,__zero_reg__ |
83 |
91 006e D104 cpc r13,__zero_reg__ |
84 |
92 .LVL6: |
85 |
93 0070 01F0 breq .L6 |
86 |
94 0072 04F0 brlt .L6 |
87 |
95 .LM7: |
88 |
96 0074 C801 movw r24,r16 |
89 |
97 0076 B701 movw r22,r14 |
90 |
98 .LVL7: |
91 |
99 0078 2FEF ldi r18,lo8(255) |
92 |
100 007a 30E0 ldi r19,hi8(255) |
93 |
101 007c 40E0 ldi r20,hlo8(255) |
94 |
102 007e 50E0 ldi r21,hhi8(255) |
95 |
103 0080 0E94 0000 call __mulsi3 |
96 |
104 0084 A601 movw r20,r12 |
97 |
105 0086 9501 movw r18,r10 |
98 |
106 0088 0E94 0000 call __divmodsi4 |
99 |
107 008c 7901 movw r14,r18 |
100 |
108 008e 8A01 movw r16,r20 |
101 |
109 0090 3FEF ldi r19,lo8(255) |
102 |
110 0092 A32E mov r10,r19 |
103 |
111 0094 B12C mov r11,__zero_reg__ |
104 |
112 0096 C12C mov r12,__zero_reg__ |
105 |
113 0098 D12C mov r13,__zero_reg__ |
106 |
114 .LVL8: |
107 |
115 .L6: |
108 |
116 .LM8: |
109 |
117 009a FFEF ldi r31,lo8(255) |
110 |
118 009c EF16 cp r14,r31 |
111 |
119 009e F104 cpc r15,__zero_reg__ |
112 |
120 00a0 0105 cpc r16,__zero_reg__ |
113 |
121 00a2 1105 cpc r17,__zero_reg__ |
114 |
122 00a4 01F0 breq .L8 |
115 |
123 00a6 04F0 brlt .L8 |
116 |
124 .LM9: |
117 |
125 00a8 C601 movw r24,r12 |
118 |
126 00aa B501 movw r22,r10 |
119 |
127 .LVL9: |
120 |
128 00ac 2FEF ldi r18,lo8(255) |
121 |
129 00ae 30E0 ldi r19,hi8(255) |
122 |
130 00b0 40E0 ldi r20,hlo8(255) |
123 |
131 00b2 50E0 ldi r21,hhi8(255) |
124 |
132 00b4 0E94 0000 call __mulsi3 |
125 |
133 00b8 A801 movw r20,r16 |
126 |
134 00ba 9701 movw r18,r14 |
127 |
135 00bc 0E94 0000 call __divmodsi4 |
128 |
136 00c0 5901 movw r10,r18 |
129 |
137 00c2 6A01 movw r12,r20 |
130 |
138 00c4 2FEF ldi r18,lo8(255) |
131 |
139 00c6 E22E mov r14,r18 |
132 |
140 00c8 F12C mov r15,__zero_reg__ |
133 |
141 00ca 012D mov r16,__zero_reg__ |
134 |
142 00cc 112D mov r17,__zero_reg__ |
135 |
143 .LVL10: |
136 |
144 .L8: |
137 |
145 .LM10: |
138 |
146 00ce 21E0 ldi r18,lo8(-255) |
139 |
147 00d0 A216 cp r10,r18 |
140 |
148 00d2 2FEF ldi r18,hi8(-255) |
141 |
149 00d4 B206 cpc r11,r18 |
142 |
150 00d6 2FEF ldi r18,hlo8(-255) |
143 |
151 00d8 C206 cpc r12,r18 |
144 |
152 00da 2FEF ldi r18,hhi8(-255) |
145 |
153 00dc D206 cpc r13,r18 |
146 |
154 00de 04F4 brge .L10 |
147 |
155 .LM11: |
148 |
156 00e0 C801 movw r24,r16 |
149 |
157 00e2 B701 movw r22,r14 |
150 |
158 .LVL11: |
151 |
159 00e4 21E0 ldi r18,lo8(-255) |
152 |
160 00e6 3FEF ldi r19,hi8(-255) |
153 |
161 00e8 4FEF ldi r20,hlo8(-255) |
154 |
162 00ea 5FEF ldi r21,hhi8(-255) |
155 |
163 00ec 0E94 0000 call __mulsi3 |
156 |
164 00f0 A601 movw r20,r12 |
157 |
165 00f2 9501 movw r18,r10 |
158 |
166 00f4 0E94 0000 call __divmodsi4 |
159 |
167 00f8 7901 movw r14,r18 |
160 |
168 00fa 8A01 movw r16,r20 |
161 |
169 00fc 91E0 ldi r25,lo8(-255) |
162 |
170 00fe A92E mov r10,r25 |
163 |
171 0100 9FEF ldi r25,hi8(-255) |
164 |
172 0102 B92E mov r11,r25 |
165 |
173 0104 9FEF ldi r25,hlo8(-255) |
166 |
174 0106 C92E mov r12,r25 |
167 |
175 0108 9FEF ldi r25,hhi8(-255) |
168 |
176 010a D92E mov r13,r25 |
169 |
177 .LVL12: |
170 |
178 .L10: |
171 |
179 .LM12: |
172 |
180 010c 81E0 ldi r24,lo8(-255) |
173 |
181 010e E816 cp r14,r24 |
174 |
182 0110 8FEF ldi r24,hi8(-255) |
175 |
183 0112 F806 cpc r15,r24 |
176 |
184 0114 8FEF ldi r24,hlo8(-255) |
177 |
185 0116 0807 cpc r16,r24 |
178 |
186 0118 8FEF ldi r24,hhi8(-255) |
179 |
187 011a 1807 cpc r17,r24 |
180 |
188 011c 04F4 brge .L12 |
181 |
189 .LM13: |
182 |
190 011e C601 movw r24,r12 |
183 |
191 0120 B501 movw r22,r10 |
184 |
192 .LVL13: |
185 |
193 0122 21E0 ldi r18,lo8(-255) |
186 |
194 0124 3FEF ldi r19,hi8(-255) |
187 |
195 0126 4FEF ldi r20,hlo8(-255) |
188 |
196 0128 5FEF ldi r21,hhi8(-255) |
189 |
197 012a 0E94 0000 call __mulsi3 |
190 |
198 012e A801 movw r20,r16 |
191 |
199 0130 9701 movw r18,r14 |
192 |
200 0132 0E94 0000 call __divmodsi4 |
193 |
201 0136 5901 movw r10,r18 |
194 |
202 0138 6A01 movw r12,r20 |
195 |
203 013a 81E0 ldi r24,lo8(-255) |
196 |
204 013c E82E mov r14,r24 |
197 |
205 013e 8FEF ldi r24,hi8(-255) |
198 |
206 0140 F82E mov r15,r24 |
199 |
207 0142 8FEF ldi r24,hlo8(-255) |
200 |
208 0144 082F mov r16,r24 |
201 |
209 0146 8FEF ldi r24,hhi8(-255) |
202 |
210 0148 182F mov r17,r24 |
203 |
211 .LVL14: |
204 |
212 .L12: |
205 |
213 .LM14: |
206 |
214 014a B982 std Y+1,r11 |
207 |
215 014c A882 st Y,r10 |
208 |
216 .LM15: |
209 |
217 014e F401 movw r30,r8 |
210 |
218 0150 F182 std Z+1,r15 |
211 |
219 0152 E082 st Z,r14 |
212 |
220 .LVL15: |
213 |
221 .L14: |
214 |
222 /* epilogue: frame size=0 */ |
215 |
223 0154 DF91 pop r29 |
216 |
224 0156 CF91 pop r28 |
217 |
225 0158 1F91 pop r17 |
218 |
226 015a 0F91 pop r16 |
219 |
227 015c FF90 pop r15 |
220 |
228 015e EF90 pop r14 |
221 |
229 0160 DF90 pop r13 |
222 |
230 0162 CF90 pop r12 |
223 |
231 0164 BF90 pop r11 |
224 |
232 0166 AF90 pop r10 |
225 |
233 0168 9F90 pop r9 |
226 |
234 016a 8F90 pop r8 |
227 |
235 016c 0895 ret |
228 |
236 /* epilogue end (size=13) */ |
229 |
237 /* function translateAngulartoLinear size 184 (159) */ |
230 |
238 .LFE4: |
231 |
240 .global move_avoid |
232 |
242 move_avoid: |
233 |
243 .LFB3: |
234 |
244 .LM16: |
235 |
245 /* prologue: frame size=4 */ |
236 |
246 016e CF92 push r12 |
237 |
247 0170 DF92 push r13 |
238 |
248 0172 EF92 push r14 |
239 |
249 0174 FF92 push r15 |
240 |
250 0176 0F93 push r16 |
241 |
251 0178 1F93 push r17 |
242 |
252 017a CF93 push r28 |
243 |
253 017c DF93 push r29 |
244 |
254 017e CDB7 in r28,__SP_L__ |
245 |
255 0180 DEB7 in r29,__SP_H__ |
246 |
256 0182 2497 sbiw r28,4 |
247 |
257 0184 0FB6 in __tmp_reg__,__SREG__ |
248 |
258 0186 F894 cli |
249 |
259 0188 DEBF out __SP_H__,r29 |
250 |
260 018a 0FBE out __SREG__,__tmp_reg__ |
251 |
261 018c CDBF out __SP_L__,r28 |
252 |
262 /* prologue end (size=16) */ |
253 |
263 .LVL16: |
254 |
264 018e 6C01 movw r12,r24 |
255 |
265 0190 7B01 movw r14,r22 |
256 |
266 0192 8A01 movw r16,r20 |
257 |
267 .LM17: |
258 |
268 0194 1C82 std Y+4,__zero_reg__ |
259 |
269 0196 1B82 std Y+3,__zero_reg__ |
260 |
270 .LVL17: |
261 |
271 .LM18: |
262 |
272 0198 1A82 std Y+2,__zero_reg__ |
263 |
273 019a 1982 std Y+1,__zero_reg__ |
264 |
274 .LVL18: |
265 |
275 .LM19: |
266 |
276 019c 86E0 ldi r24,lo8(6) |
267 |
277 019e 90E0 ldi r25,hi8(6) |
268 |
278 .LVL19: |
269 |
279 01a0 0E94 0000 call range_read_distance |
270 |
280 .LVL20: |
271 |
281 .LVL21: |
272 |
282 .LM20: |
273 |
283 01a4 2FEF ldi r18,hi8(-1) |
274 |
284 01a6 8F3F cpi r24,lo8(-1) |
275 |
285 01a8 9207 cpc r25,r18 |
276 |
286 01aa 01F4 brne .L16 |
277 |
287 .LM21: |
278 |
288 01ac 8091 0000 lds r24,d1 |
279 |
289 01b0 9091 0000 lds r25,(d1)+1 |
280 |
290 .L16: |
281 |
291 01b4 9093 0000 sts (d1)+1,r25 |
282 |
292 01b8 8093 0000 sts d1,r24 |
283 |
293 .LM22: |
284 |
294 01bc 85E0 ldi r24,lo8(5) |
285 |
295 01be 90E0 ldi r25,hi8(5) |
286 |
296 .LVL22: |
287 |
297 01c0 0E94 0000 call range_read_distance |
288 |
298 .LVL23: |
289 |
299 .LM23: |
290 |
300 01c4 4FEF ldi r20,hi8(-1) |
291 |
301 01c6 8F3F cpi r24,lo8(-1) |
292 |
302 01c8 9407 cpc r25,r20 |
293 |
303 01ca 01F4 brne .L18 |
294 |
304 01cc 8091 0000 lds r24,d2 |
295 |
305 01d0 9091 0000 lds r25,(d2)+1 |
296 |
306 .L18: |
297 |
307 01d4 9093 0000 sts (d2)+1,r25 |
298 |
308 01d8 8093 0000 sts d2,r24 |
299 |
309 .LM24: |
300 |
310 01dc 84E0 ldi r24,lo8(4) |
301 |
311 01de 90E0 ldi r25,hi8(4) |
302 |
312 .LVL24: |
303 |
313 01e0 0E94 0000 call range_read_distance |
304 |
314 .LVL25: |
305 |
315 .LM25: |
306 |
316 01e4 5FEF ldi r21,hi8(-1) |
307 |
317 01e6 8F3F cpi r24,lo8(-1) |
308 |
318 01e8 9507 cpc r25,r21 |
309 |
319 01ea 01F4 brne .L20 |
310 |
320 01ec 8091 0000 lds r24,d3 |
311 |
321 01f0 9091 0000 lds r25,(d3)+1 |
312 |
322 .L20: |
313 |
323 01f4 9093 0000 sts (d3)+1,r25 |
314 |
324 01f8 8093 0000 sts d3,r24 |
315 |
325 .LM26: |
316 |
326 01fc 83E0 ldi r24,lo8(3) |
317 |
327 01fe 90E0 ldi r25,hi8(3) |
318 |
328 .LVL26: |
319 |
329 0200 0E94 0000 call range_read_distance |
320 |
330 .LVL27: |
321 |
331 .LM27: |
322 |
332 0204 2FEF ldi r18,hi8(-1) |
323 |
333 0206 8F3F cpi r24,lo8(-1) |
324 |
334 0208 9207 cpc r25,r18 |
325 |
335 020a 01F4 brne .L22 |
326 |
336 020c 8091 0000 lds r24,d4 |
327 |
337 0210 9091 0000 lds r25,(d4)+1 |
328 |
338 .L22: |
329 |
339 0214 9093 0000 sts (d4)+1,r25 |
330 |
340 0218 8093 0000 sts d4,r24 |
331 |
341 .LM28: |
332 |
342 021c 82E0 ldi r24,lo8(2) |
333 |
343 021e 90E0 ldi r25,hi8(2) |
334 |
344 .LVL28: |
335 |
345 0220 0E94 0000 call range_read_distance |
336 |
346 0224 9C01 movw r18,r24 |
337 |
347 .LVL29: |
338 |
348 .LM29: |
339 |
349 0226 8F5F subi r24,lo8(-1) |
340 |
350 0228 9F4F sbci r25,hi8(-1) |
341 |
351 022a 01F4 brne .L24 |
342 |
352 .LVL30: |
343 |
353 022c 2091 0000 lds r18,d5 |
344 |
354 0230 3091 0000 lds r19,(d5)+1 |
345 |
355 .L24: |
346 |
356 0234 3093 0000 sts (d5)+1,r19 |
347 |
357 0238 2093 0000 sts d5,r18 |
348 |
358 .LM30: |
349 |
359 023c 84E6 ldi r24,lo8(100) |
350 |
360 023e 90E0 ldi r25,hi8(100) |
351 |
361 .LVL31: |
352 |
362 0240 801B sub r24,r16 |
353 |
363 0242 910B sbc r25,r17 |
354 |
364 0244 AC01 movw r20,r24 |
355 |
365 0246 E49E mul r14,r20 |
356 |
366 0248 C001 movw r24,r0 |
357 |
367 024a E59E mul r14,r21 |
358 |
368 024c 900D add r25,r0 |
359 |
369 024e F49E mul r15,r20 |
360 |
370 0250 900D add r25,r0 |
361 |
371 0252 1124 clr r1 |
362 |
372 0254 64E6 ldi r22,lo8(100) |
363 |
373 0256 70E0 ldi r23,hi8(100) |
364 |
374 0258 0E94 0000 call __divmodhi4 |
365 |
375 025c FB01 movw r30,r22 |
366 |
376 025e 8091 0000 lds r24,d4 |
367 |
377 0262 9091 0000 lds r25,(d4)+1 |
368 |
378 0266 281B sub r18,r24 |
369 |
379 0268 390B sbc r19,r25 |
370 |
380 026a 209F mul r18,r16 |
371 |
381 026c C001 movw r24,r0 |
372 |
382 026e 219F mul r18,r17 |
373 |
383 0270 900D add r25,r0 |
374 |
384 0272 309F mul r19,r16 |
375 |
385 0274 900D add r25,r0 |
376 |
386 0276 1124 clr r1 |
377 |
387 0278 64E6 ldi r22,lo8(100) |
378 |
388 027a 70E0 ldi r23,hi8(100) |
379 |
389 027c 0E94 0000 call __divmodhi4 |
380 |
390 0280 E60F add r30,r22 |
381 |
391 0282 F71F adc r31,r23 |
382 |
392 0284 9E01 movw r18,r28 |
383 |
393 .LVL32: |
384 |
394 0286 2F5F subi r18,lo8(-(1)) |
385 |
395 0288 3F4F sbci r19,hi8(-(1)) |
386 |
396 028a AE01 movw r20,r28 |
387 |
397 028c 4D5F subi r20,lo8(-(3)) |
388 |
398 028e 5F4F sbci r21,hi8(-(3)) |
389 |
399 0290 BF01 movw r22,r30 |
390 |
400 0292 C601 movw r24,r12 |
391 |
401 0294 0E94 0000 call translateAngulartoLinear |
392 |
402 .LM31: |
393 |
403 0298 6B81 ldd r22,Y+3 |
394 |
404 029a 7C81 ldd r23,Y+4 |
395 |
405 029c 77FF sbrs r23,7 |
396 |
406 029e 00C0 rjmp .L26 |
397 |
407 .LM32: |
398 |
408 02a0 7095 com r23 |
399 |
409 02a2 6195 neg r22 |
400 |
410 02a4 7F4F sbci r23,lo8(-1) |
401 |
411 02a6 80E0 ldi r24,lo8(0) |
402 |
412 02a8 90E0 ldi r25,hi8(0) |
403 |
413 02aa 00C0 rjmp .L33 |
404 |
414 .L26: |
405 |
415 .LM33: |
406 |
416 02ac 81E0 ldi r24,lo8(1) |
407 |
417 02ae 90E0 ldi r25,hi8(1) |
408 |
418 .L33: |
409 |
419 02b0 0E94 0000 call motor1_set |
410 |
420 .LM34: |
411 |
421 02b4 6981 ldd r22,Y+1 |
412 |
422 02b6 7A81 ldd r23,Y+2 |
413 |
423 02b8 77FF sbrs r23,7 |
414 |
424 02ba 00C0 rjmp .L29 |
415 |
425 .LM35: |
416 |
426 02bc 7095 com r23 |
417 |
427 02be 6195 neg r22 |
418 |
428 02c0 7F4F sbci r23,lo8(-1) |
419 |
429 02c2 80E0 ldi r24,lo8(0) |
420 |
430 02c4 90E0 ldi r25,hi8(0) |
421 |
431 02c6 00C0 rjmp .L34 |
422 |
432 .L29: |
423 |
433 .LM36: |
424 |
434 02c8 81E0 ldi r24,lo8(1) |
425 |
435 02ca 90E0 ldi r25,hi8(1) |
426 |
436 .L34: |
427 |
437 02cc 0E94 0000 call motor2_set |
428 |
438 /* epilogue: frame size=4 */ |
429 |
439 02d0 2496 adiw r28,4 |
430 |
440 02d2 0FB6 in __tmp_reg__,__SREG__ |
431 |
441 02d4 F894 cli |
432 |
442 02d6 DEBF out __SP_H__,r29 |
433 |
443 02d8 0FBE out __SREG__,__tmp_reg__ |
434 |
444 02da CDBF out __SP_L__,r28 |
435 |
445 02dc DF91 pop r29 |
436 |
446 02de CF91 pop r28 |
437 |
447 02e0 1F91 pop r17 |
438 |
448 02e2 0F91 pop r16 |
439 |
449 02e4 FF90 pop r15 |
440 |
450 02e6 EF90 pop r14 |
441 |
451 02e8 DF90 pop r13 |
442 |
452 02ea CF90 pop r12 |
443 |
453 02ec 0895 ret |
444 |
454 /* epilogue end (size=15) */ |
445 |
455 /* function move_avoid size 193 (162) */ |
446 |
456 .LFE3: |
447 |
458 .global move |
448 |
460 move: |
449 |
461 .LFB2: |
450 |
462 .LM37: |
451 |
463 /* prologue: frame size=4 */ |
452 |
464 02ee CF93 push r28 |
453 |
465 02f0 DF93 push r29 |
454 |
466 02f2 CDB7 in r28,__SP_L__ |
455 |
467 02f4 DEB7 in r29,__SP_H__ |
456 |
468 02f6 2497 sbiw r28,4 |
457 |
469 02f8 0FB6 in __tmp_reg__,__SREG__ |
458 |
470 02fa F894 cli |
459 |
471 02fc DEBF out __SP_H__,r29 |
460 |
472 02fe 0FBE out __SREG__,__tmp_reg__ |
461 |
473 0300 CDBF out __SP_L__,r28 |
462 |
474 /* prologue end (size=10) */ |
463 |
475 .LVL33: |
464 |
476 .LM38: |
465 |
477 0302 1C82 std Y+4,__zero_reg__ |
466 |
478 0304 1B82 std Y+3,__zero_reg__ |
467 |
479 .LVL34: |
468 |
480 .LM39: |
469 |
481 0306 1A82 std Y+2,__zero_reg__ |
470 |
482 0308 1982 std Y+1,__zero_reg__ |
471 |
483 .LVL35: |
472 |
484 .LM40: |
473 |
485 030a 9E01 movw r18,r28 |
474 |
486 030c 2F5F subi r18,lo8(-(1)) |
475 |
487 030e 3F4F sbci r19,hi8(-(1)) |
476 |
488 0310 AE01 movw r20,r28 |
477 |
489 0312 4D5F subi r20,lo8(-(3)) |
478 |
490 0314 5F4F sbci r21,hi8(-(3)) |
479 |
491 0316 0E94 0000 call translateAngulartoLinear |
480 |
492 .LVL36: |
481 |
493 .LM41: |
482 |
494 031a 6B81 ldd r22,Y+3 |
483 |
495 031c 7C81 ldd r23,Y+4 |
484 |
496 031e 77FF sbrs r23,7 |
485 |
497 0320 00C0 rjmp .L36 |
486 |
498 .LM42: |
487 |
499 0322 7095 com r23 |
488 |
500 0324 6195 neg r22 |
489 |
501 0326 7F4F sbci r23,lo8(-1) |
490 |
502 0328 80E0 ldi r24,lo8(0) |
491 |
503 032a 90E0 ldi r25,hi8(0) |
492 |
504 032c 00C0 rjmp .L43 |
493 |
505 .L36: |
494 |
506 .LM43: |
495 |
507 032e 81E0 ldi r24,lo8(1) |
496 |
508 0330 90E0 ldi r25,hi8(1) |
497 |
509 .L43: |
498 |
510 0332 0E94 0000 call motor1_set |
499 |
511 .LM44: |
500 |
512 0336 6981 ldd r22,Y+1 |
501 |
513 0338 7A81 ldd r23,Y+2 |
502 |
514 033a 77FF sbrs r23,7 |
503 |
515 033c 00C0 rjmp .L39 |
504 |
516 .LM45: |
505 |
517 033e 7095 com r23 |
506 |
518 0340 6195 neg r22 |
507 |
519 0342 7F4F sbci r23,lo8(-1) |
508 |
520 0344 80E0 ldi r24,lo8(0) |
509 |
521 0346 90E0 ldi r25,hi8(0) |
510 |
522 0348 00C0 rjmp .L44 |
511 |
523 .L39: |
512 |
524 .LM46: |
513 |
525 034a 81E0 ldi r24,lo8(1) |
514 |
526 034c 90E0 ldi r25,hi8(1) |
515 |
527 .L44: |
516 |
528 034e 0E94 0000 call motor2_set |
517 |
529 /* epilogue: frame size=4 */ |
518 |
530 0352 2496 adiw r28,4 |
519 |
531 0354 0FB6 in __tmp_reg__,__SREG__ |
520 |
532 0356 F894 cli |
521 |
533 0358 DEBF out __SP_H__,r29 |
522 |
534 035a 0FBE out __SREG__,__tmp_reg__ |
523 |
535 035c CDBF out __SP_L__,r28 |
524 |
536 035e DF91 pop r29 |
525 |
537 0360 CF91 pop r28 |
526 |
538 0362 0895 ret |
527 |
539 /* epilogue end (size=9) */ |
528 |
540 /* function move size 59 (40) */ |
529 |
541 .LFE2: |
530 |
543 .comm d1,2,1 |
531 |
544 .comm d2,2,1 |
532 |
545 .comm d3,2,1 |
533 |
546 .comm d4,2,1 |
534 |
547 .comm d5,2,1 |
535 |
588 .Letext0: |
536 |
DEFINED SYMBOLS |
537 |
*ABS*:00000000 move.c |
538 |
F:\DOCUME~1\Evan\LOCALS~1\Temp/cclqaS86.s:3 *ABS*:0000003f __SREG__ |
539 |
F:\DOCUME~1\Evan\LOCALS~1\Temp/cclqaS86.s:4 *ABS*:0000003e __SP_H__ |
540 |
F:\DOCUME~1\Evan\LOCALS~1\Temp/cclqaS86.s:5 *ABS*:0000003d __SP_L__ |
541 |
F:\DOCUME~1\Evan\LOCALS~1\Temp/cclqaS86.s:6 *ABS*:00000000 __tmp_reg__ |
542 |
F:\DOCUME~1\Evan\LOCALS~1\Temp/cclqaS86.s:7 *ABS*:00000001 __zero_reg__ |
543 |
F:\DOCUME~1\Evan\LOCALS~1\Temp/cclqaS86.s:20 .text:00000000 translateAngulartoLinear |
544 |
F:\DOCUME~1\Evan\LOCALS~1\Temp/cclqaS86.s:242 .text:0000016e move_avoid |
545 |
*COM*:00000002 d1 |
546 |
*COM*:00000002 d2 |
547 |
*COM*:00000002 d3 |
548 |
*COM*:00000002 d4 |
549 |
*COM*:00000002 d5 |
550 |
F:\DOCUME~1\Evan\LOCALS~1\Temp/cclqaS86.s:460 .text:000002ee move |
551 |
|
552 |
UNDEFINED SYMBOLS |
553 |
__do_copy_data |
554 |
__do_clear_bss |
555 |
__mulsi3 |
556 |
__divmodsi4 |
557 |
range_read_distance |
558 |
__divmodhi4 |
559 |
motor1_set |
560 |
motor2_set |