?? protocol.lst
字號:
1 .file "protocol.c"
2 .arch atmega88
3 __SREG__ = 0x3f
4 __SP_H__ = 0x3e
5 __SP_L__ = 0x3d
6 __tmp_reg__ = 0
7 __zero_reg__ = 1
8 .global __do_copy_data
9 .global __do_clear_bss
17 .Ltext0:
18 .global stuff_packet
20 stuff_packet:
21 .LFB8:
22 .LM1:
23 /* prologue: frame size=0 */
24 0000 CF93 push r28
25 0002 DF93 push r29
26 /* prologue end (size=2) */
27 0004 80E0 ldi r24,lo8(0)
28 0006 90E0 ldi r25,hi8(0)
29 .LVL0:
30 0008 20E0 ldi r18,lo8(output)
31 000a 30E0 ldi r19,hi8(output)
32 .L2:
33 .LM2:
34 000c A091 0000 lds r26,output_write_ptr
35 0010 B091 0000 lds r27,(output_write_ptr)+1
36 0014 FD01 movw r30,r26
37 0016 1192 st Z+,__zero_reg__
38 .LM3:
39 0018 ED01 movw r28,r26
40 001a 1982 std Y+1,__zero_reg__
41 001c 3196 adiw r30,1
42 001e F093 0000 sts (output_write_ptr)+1,r31
43 0022 E093 0000 sts output_write_ptr,r30
44 .LM4:
45 0026 E050 subi r30,lo8(output+200)
46 0028 F040 sbci r31,hi8(output+200)
47 002a 00F0 brlo .L3
48 .LM5:
49 002c 3093 0000 sts (output_write_ptr)+1,r19
50 0030 2093 0000 sts output_write_ptr,r18
51 .L3:
52 .LM6:
53 0034 0196 adiw r24,1
54 0036 8E31 cpi r24,30
55 0038 9105 cpc r25,__zero_reg__
56 003a 01F4 brne .L2
57 /* epilogue: frame size=0 */
58 003c DF91 pop r29
59 003e CF91 pop r28
60 0040 0895 ret
61 /* epilogue end (size=3) */
62 /* function stuff_packet size 34 (29) */
63 .LFE8:
65 .global compress_audio
67 compress_audio:
68 .LFB9:
69 .LM7:
70 /* prologue: frame size=0 */
71 /* prologue end (size=0) */
72 .LVL1:
73 0042 BC01 movw r22,r24
74 .LM8:
75 0044 97FF sbrs r25,7
76 0046 00C0 rjmp .L10
77 .LM9:
78 0048 4427 clr r20
79 004a 5527 clr r21
80 004c 481B sub r20,r24
81 004e 590B sbc r21,r25
82 .LVL2:
83 0050 00C0 rjmp .L12
84 .LVL3:
85 .L10:
86 .LM10:
87 0052 AC01 movw r20,r24
88 .LVL4:
89 .L12:
90 .LBB2:
91 .LM11:
92 0054 80E0 ldi r24,lo8(Alaw_expand+128)
93 0056 90E0 ldi r25,hi8(Alaw_expand+128)
94 .LVL5:
95 0058 FC01 movw r30,r24
96 /* #APP */
97 005a 2591 lpm r18, Z+
98 005c 3491 lpm r19, Z
99
100 .LVL6:
101 /* #NOAPP */
102 .LBE2:
103 .LM12:
104 005e 4217 cp r20,r18
105 0060 5307 cpc r21,r19
106 0062 00F0 brlo .L13
107 0064 20E6 ldi r18,lo8(96)
108 0066 30E0 ldi r19,hi8(96)
109 .LVL7:
110 0068 00C0 rjmp .L15
111 .LVL8:
112 .L13:
113 006a 20E2 ldi r18,lo8(32)
114 006c 30E0 ldi r19,hi8(32)
115 .LVL9:
116 .L15:
117 .LBB3:
118 .LM13:
119 006e F901 movw r30,r18
120 .LVL10:
121 0070 EE0F lsl r30
122 0072 FF1F rol r31
123 0074 E050 subi r30,lo8(-(Alaw_expand))
124 0076 F040 sbci r31,hi8(-(Alaw_expand))
125 /* #APP */
126 0078 8591 lpm r24, Z+
127 007a 9491 lpm r25, Z
128
129 .LVL11:
130 /* #NOAPP */
131 .LBE3:
132 .LM14:
133 007c 4817 cp r20,r24
134 007e 5907 cpc r21,r25
135 0080 00F4 brsh .L16
136 .LM15:
137 0082 2051 subi r18,lo8(-(-16))
138 0084 3040 sbci r19,hi8(-(-16))
139 .LVL12:
140 0086 00C0 rjmp .L18
141 .LVL13:
142 .L16:
143 .LM16:
144 0088 205F subi r18,lo8(-(16))
145 008a 3F4F sbci r19,hi8(-(16))
146 .LVL14:
147 .L18:
148 .LBB4:
149 .LM17:
150 008c F901 movw r30,r18
151 .LVL15:
152 008e EE0F lsl r30
153 0090 FF1F rol r31
154 .LVL16:
155 0092 E050 subi r30,lo8(-(Alaw_expand))
156 0094 F040 sbci r31,hi8(-(Alaw_expand))
157 /* #APP */
158 0096 8591 lpm r24, Z+
159 0098 9491 lpm r25, Z
160
161 .LVL17:
162 /* #NOAPP */
163 .LBE4:
164 .LM18:
165 009a 4817 cp r20,r24
166 009c 5907 cpc r21,r25
167 009e 00F4 brsh .L19
168 .LM19:
169 00a0 2850 subi r18,lo8(-(-8))
170 00a2 3040 sbci r19,hi8(-(-8))
171 .LVL18:
172 00a4 00C0 rjmp .L21
173 .LVL19:
174 .L19:
175 .LM20:
176 00a6 285F subi r18,lo8(-(8))
177 00a8 3F4F sbci r19,hi8(-(8))
178 .LVL20:
179 .L21:
180 .LBB5:
181 .LM21:
182 00aa F901 movw r30,r18
183 .LVL21:
184 00ac EE0F lsl r30
185 00ae FF1F rol r31
186 00b0 E050 subi r30,lo8(-(Alaw_expand))
187 00b2 F040 sbci r31,hi8(-(Alaw_expand))
188 /* #APP */
189 00b4 8591 lpm r24, Z+
190 00b6 9491 lpm r25, Z
191
192 .LVL22:
193 /* #NOAPP */
194 .LBE5:
195 .LM22:
196 00b8 4817 cp r20,r24
197 00ba 5907 cpc r21,r25
198 00bc 00F4 brsh .L22
199 .LM23:
200 00be 2450 subi r18,lo8(-(-4))
201 00c0 3040 sbci r19,hi8(-(-4))
202 .LVL23:
203 00c2 00C0 rjmp .L24
204 .LVL24:
205 .L22:
206 .LM24:
207 00c4 2C5F subi r18,lo8(-(4))
208 00c6 3F4F sbci r19,hi8(-(4))
209 .LVL25:
210 .L24:
211 .LBB6:
212 .LM25:
213 00c8 F901 movw r30,r18
214 .LVL26:
215 00ca EE0F lsl r30
216 00cc FF1F rol r31
217 00ce E050 subi r30,lo8(-(Alaw_expand))
218 00d0 F040 sbci r31,hi8(-(Alaw_expand))
219 /* #APP */
220 00d2 8591 lpm r24, Z+
221 00d4 9491 lpm r25, Z
222
223 .LVL27:
224 /* #NOAPP */
225 .LBE6:
226 .LM26:
227 00d6 4817 cp r20,r24
228 00d8 5907 cpc r21,r25
229 00da 00F4 brsh .L25
230 .LM27:
231 00dc 2250 subi r18,lo8(-(-2))
232 00de 3040 sbci r19,hi8(-(-2))
233 .LVL28:
234 00e0 00C0 rjmp .L27
235 .LVL29:
236 .L25:
237 .LM28:
238 00e2 2E5F subi r18,lo8(-(2))
239 00e4 3F4F sbci r19,hi8(-(2))
240 .LVL30:
241 .L27:
242 .LBB7:
243 .LM29:
244 00e6 F901 movw r30,r18
245 .LVL31:
246 00e8 EE0F lsl r30
247 00ea FF1F rol r31
248 00ec E050 subi r30,lo8(-(Alaw_expand))
249 00ee F040 sbci r31,hi8(-(Alaw_expand))
250 /* #APP */
251 00f0 8591 lpm r24, Z+
252 00f2 9491 lpm r25, Z
253
254 .LVL32:
255 /* #NOAPP */
256 .LBE7:
257 .LM30:
258 00f4 4817 cp r20,r24
259 00f6 5907 cpc r21,r25
260 00f8 00F4 brsh .L28
261 .LM31:
262 00fa 2150 subi r18,lo8(-(-1))
263 00fc 3040 sbci r19,hi8(-(-1))
264 .LVL33:
265 00fe 00C0 rjmp .L30
266 .LVL34:
267 .L28:
268 .LM32:
269 0100 2F5F subi r18,lo8(-(1))
270 0102 3F4F sbci r19,hi8(-(1))
271 .LVL35:
272 .L30:
273 .LBB8:
274 .LM33:
275 0104 F901 movw r30,r18
276 .LVL36:
277 0106 EE0F lsl r30
278 0108 FF1F rol r31
279 .LVL37:
280 010a E050 subi r30,lo8(-(Alaw_expand))
281 010c F040 sbci r31,hi8(-(Alaw_expand))
282 /* #APP */
283 010e 8591 lpm r24, Z+
284 0110 9491 lpm r25, Z
285
286 .LVL38:
287 /* #NOAPP */
288 .LBE8:
289 .LM34:
290 0112 4817 cp r20,r24
291 0114 5907 cpc r21,r25
292 0116 00F4 brsh .L31
293 .LM35:
294 0118 2150 subi r18,lo8(-(-1))
295 011a 3040 sbci r19,hi8(-(-1))
296 .L31:
297 .LM36:
298 011c 77FD sbrc r23,7
299 .LM37:
300 011e 2068 ori r18,lo8(128)
301 .L33:
302 .LM38:
303 0120 822F mov r24,r18
304 0122 9927 clr r25
305 .LVL39:
306 /* epilogue: frame size=0 */
307 0124 0895 ret
308 /* epilogue end (size=1) */
309 /* function compress_audio size 143 (142) */
310 .LFE9:
312 .global expand_audio
314 expand_audio:
315 .LFB10:
316 .LM39:
317 /* prologue: frame size=0 */
318 /* prologue end (size=0) */
319 .LVL40:
320 .LBB9:
321 .LM40:
322 0126 E82F mov r30,r24
323 0128 FF27 clr r31
324 .LVL41:
325 012a EF77 andi r30,lo8(127)
326 012c F070 andi r31,hi8(127)
327 012e EE0F lsl r30
328 0130 FF1F rol r31
329 0132 E050 subi r30,lo8(-(Alaw_expand))
330 0134 F040 sbci r31,hi8(-(Alaw_expand))
331 .LBE9:
332 /* #APP */
333 0136 2591 lpm r18, Z+
334 0138 3491 lpm r19, Z
335
336 .LVL42:
337 .LM41:
338 /* #NOAPP */
339 013a 87FF sbrs r24,7
340 013c 00C0 rjmp .L37
341 .LM42:
342 013e 3095 com r19
343 0140 2195 neg r18
344 0142 3F4F sbci r19,lo8(-1)
345 .L37:
346 .LM43:
347 0144 C901 movw r24,r18
348 .LVL43:
349 /* epilogue: frame size=0 */
350 0146 0895 ret
351 /* epilogue end (size=1) */
352 /* function expand_audio size 21 (20) */
353 .LFE10:
355 .global init_protocol
357 init_protocol:
358 .LFB11:
359 .LM44:
360 /* prologue: frame size=0 */
361 /* prologue end (size=0) */
362 .LM45:
363 0148 89E0 ldi r24,lo8(9)
364 014a 90E0 ldi r25,hi8(9)
365 014c 9093 0000 sts (event_times)+1,r25
366 0150 8093 0000 sts event_times,r24
367 .LM46:
368 0154 8BE9 ldi r24,lo8(155)
369 0156 90E0 ldi r25,hi8(155)
370 0158 9093 0000 sts (event_times+2)+1,r25
371 015c 8093 0000 sts event_times+2,r24
372 .LM47:
373 0160 88EB ldi r24,lo8(184)
374 0162 90E0 ldi r25,hi8(184)
375 0164 9093 0000 sts (event_times+4)+1,r25
376 0168 8093 0000 sts event_times+4,r24
377 .LM48:
378 016c 8AE4 ldi r24,lo8(330)
379 016e 91E0 ldi r25,hi8(330)
380 0170 9093 0000 sts (event_times+6)+1,r25
381 0174 8093 0000 sts event_times+6,r24
?? 快捷鍵說明
復制代碼
Ctrl + C
搜索代碼
Ctrl + F
全屏模式
F11
切換主題
Ctrl + Shift + D
顯示快捷鍵
?
增大字號
Ctrl + =
減小字號
Ctrl + -