📄 mmc_sd.lst
字号:
1 .file "MMC_SD.c"
2 .arch atmega128
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 SPI_Low
20 SPI_Low:
21 .LFB2:
22 .LM1:
23 /* prologue: frame size=0 */
24 /* prologue end (size=0) */
25 .LM2:
26 0000 83E5 ldi r24,lo8(83)
27 0002 8DB9 out 45-0x20,r24
28 .LM3:
29 0004 7098 cbi 46-0x20,0
30 /* epilogue: frame size=0 */
31 0006 0895 ret
32 /* epilogue end (size=1) */
33 /* function SPI_Low size 4 (3) */
34 .LFE2:
36 .global SPI_High
38 SPI_High:
39 .LFB3:
40 .LM4:
41 /* prologue: frame size=0 */
42 /* prologue end (size=0) */
43 .LM5:
44 0008 80E5 ldi r24,lo8(80)
45 000a 8DB9 out 45-0x20,r24
46 .LM6:
47 000c 709A sbi 46-0x20,0
48 /* epilogue: frame size=0 */
49 000e 0895 ret
50 /* epilogue end (size=1) */
51 /* function SPI_High size 4 (3) */
52 .LFE3:
54 .global SPI_Init
56 SPI_Init:
57 .LFB4:
58 .LM7:
59 /* prologue: frame size=0 */
60 /* prologue end (size=0) */
61 .LM8:
62 0010 87B3 in r24,55-0x20
63 0012 8760 ori r24,lo8(7)
64 0014 87BB out 55-0x20,r24
65 .LBB30:
66 .LBB31:
67 .LM9:
68 0016 83E5 ldi r24,lo8(83)
69 0018 8DB9 out 45-0x20,r24
70 .LM10:
71 001a 7098 cbi 46-0x20,0
72 .LBE31:
73 .LBE30:
74 /* epilogue: frame size=0 */
75 001c 0895 ret
76 /* epilogue end (size=1) */
77 /* function SPI_Init size 7 (6) */
78 .LFE4:
80 .global SPI_WriteByte
82 SPI_WriteByte:
83 .LFB5:
84 .LM11:
85 /* prologue: frame size=0 */
86 /* prologue end (size=0) */
87 .LVL0:
88 .LM12:
89 001e 8FB9 out 47-0x20,r24
90 .L8:
91 .LM13:
92 0020 779B sbis 46-0x20,7
93 0022 00C0 rjmp .L8
94 .LM14:
95 0024 8FB1 in r24,47-0x20
96 .LVL1:
97 .LM15:
98 0026 9927 clr r25
99 /* epilogue: frame size=0 */
100 0028 0895 ret
101 /* epilogue end (size=1) */
102 /* function SPI_WriteByte size 6 (5) */
103 .LFE5:
105 .global SPI_ReadByte
107 SPI_ReadByte:
108 .LFB6:
109 .LM16:
110 /* prologue: frame size=0 */
111 /* prologue end (size=0) */
112 .LM17:
113 002a 8FEF ldi r24,lo8(-1)
114 002c 8FB9 out 47-0x20,r24
115 .L14:
116 .LM18:
117 002e 779B sbis 46-0x20,7
118 0030 00C0 rjmp .L14
119 .LM19:
120 0032 8FB1 in r24,47-0x20
121 .LM20:
122 0034 9927 clr r25
123 /* epilogue: frame size=0 */
124 0036 0895 ret
125 /* epilogue end (size=1) */
126 /* function SPI_ReadByte size 7 (6) */
127 .LFE6:
129 .global MMC_SD_Init
131 MMC_SD_Init:
132 .LFB7:
133 .LM21:
134 /* prologue: frame size=0 */
135 /* prologue end (size=0) */
136 .LM22:
137 0038 0E94 0000 call SPI_Init
138 .LM23:
139 003c C09A sbi 56-0x20,0
140 .LM24:
141 003e 1B98 cbi 35-0x20,3
142 /* epilogue: frame size=0 */
143 0040 0895 ret
144 /* epilogue end (size=1) */
145 /* function MMC_SD_Init size 5 (4) */
146 .LFE7:
148 .global MMC_SD_SendCommand
150 MMC_SD_SendCommand:
151 .LFB8:
152 .LM25:
153 /* prologue: frame size=0 */
154 /* prologue end (size=0) */
155 .LVL2:
156 0042 982F mov r25,r24
157 .LBB32:
158 .LBB33:
159 .LM26:
160 0044 8FEF ldi r24,lo8(-1)
161 .LVL3:
162 0046 8FB9 out 47-0x20,r24
163 .L22:
164 .LM27:
165 0048 779B sbis 46-0x20,7
166 004a 00C0 rjmp .L22
167 .LM28:
168 004c 8FB1 in r24,47-0x20
169 .LBE33:
170 .LBE32:
171 .LBB34:
172 .LBB35:
173 .LM29:
174 004e 8FEF ldi r24,lo8(-1)
175 0050 8FB9 out 47-0x20,r24
176 .L24:
177 .LM30:
178 0052 779B sbis 46-0x20,7
179 0054 00C0 rjmp .L24
180 .LM31:
181 0056 8FB1 in r24,47-0x20
182 .LBE35:
183 .LBE34:
184 .LBB36:
185 .LBB37:
186 .LM32:
187 0058 8FEF ldi r24,lo8(-1)
188 005a 8FB9 out 47-0x20,r24
189 .L26:
190 .LM33:
191 005c 779B sbis 46-0x20,7
192 005e 00C0 rjmp .L26
193 .LM34:
194 0060 8FB1 in r24,47-0x20
195 .LBE37:
196 .LBE36:
197 .LBB38:
198 .LBB39:
199 .LM35:
200 0062 8FEF ldi r24,lo8(-1)
201 0064 8FB9 out 47-0x20,r24
202 .L28:
203 .LM36:
204 0066 779B sbis 46-0x20,7
205 0068 00C0 rjmp .L28
206 .LM37:
207 006a 8FB1 in r24,47-0x20
208 .LBE39:
209 .LBE38:
210 .LBB40:
211 .LBB41:
212 .LM38:
213 006c 8FEF ldi r24,lo8(-1)
214 006e 8FB9 out 47-0x20,r24
215 .L30:
216 .LM39:
217 0070 779B sbis 46-0x20,7
218 0072 00C0 rjmp .L30
219 .LM40:
220 0074 8FB1 in r24,47-0x20
221 .LBE41:
222 .LBE40:
223 .LBB42:
224 .LBB43:
225 .LM41:
226 0076 8FEF ldi r24,lo8(-1)
227 0078 8FB9 out 47-0x20,r24
228 .L32:
229 .LM42:
230 007a 779B sbis 46-0x20,7
231 007c 00C0 rjmp .L32
232 .LM43:
233 007e 8FB1 in r24,47-0x20
234 .LBE43:
235 .LBE42:
236 .LM44:
237 0080 C098 cbi 56-0x20,0
238 .LM45:
239 0082 9064 ori r25,lo8(64)
240 .LBB44:
241 .LBB45:
242 .LM46:
243 0084 9FB9 out 47-0x20,r25
244 .L34:
245 .LM47:
246 0086 779B sbis 46-0x20,7
247 0088 00C0 rjmp .L34
248 .LM48:
249 008a 8FB1 in r24,47-0x20
250 .LBE45:
251 .LBE44:
252 .LM49:
253 008c 872F mov r24,r23
254 008e 9927 clr r25
255 0090 AA27 clr r26
256 0092 BB27 clr r27
257 .LBB46:
258 .LBB47:
259 .LM50:
260 0094 8FB9 out 47-0x20,r24
261 .L36:
262 .LM51:
263 0096 779B sbis 46-0x20,7
264 0098 00C0 rjmp .L36
265 .LM52:
266 009a 8FB1 in r24,47-0x20
267 .LBE47:
268 .LBE46:
269 .LM53:
270 009c CB01 movw r24,r22
271 009e AA27 clr r26
272 00a0 BB27 clr r27
273 .LVL4:
274 .LBB48:
275 .LBB49:
276 .LM54:
277 00a2 8FB9 out 47-0x20,r24
278 .L38:
279 .LM55:
280 00a4 779B sbis 46-0x20,7
281 00a6 00C0 rjmp .L38
282 .LM56:
283 00a8 8FB1 in r24,47-0x20
284 .LBE49:
285 .LBE48:
286 .LM57:
287 00aa BB27 clr r27
288 00ac A72F mov r26,r23
289 00ae 962F mov r25,r22
290 00b0 852F mov r24,r21
291 .LBB50:
292 .LBB51:
293 .LM58:
294 00b2 8FB9 out 47-0x20,r24
295 .L40:
296 .LM59:
297 00b4 779B sbis 46-0x20,7
298 00b6 00C0 rjmp .L40
299 .LM60:
300 00b8 8FB1 in r24,47-0x20
301 .LBE51:
302 .LBE50:
303 .LBB52:
304 .LBB53:
305 .LM61:
306 00ba 4FB9 out 47-0x20,r20
307 .L42:
308 .LM62:
309 00bc 779B sbis 46-0x20,7
310 00be 00C0 rjmp .L42
311 .LM63:
312 00c0 8FB1 in r24,47-0x20
313 .LBE53:
314 .LBE52:
315 .LBB54:
316 .LBB55:
317 .LM64:
318 00c2 85E9 ldi r24,lo8(-107)
319 00c4 8FB9 out 47-0x20,r24
320 .L44:
321 .LM65:
322 00c6 779B sbis 46-0x20,7
323 00c8 00C0 rjmp .L44
324 .LM66:
325 00ca 8FB1 in r24,47-0x20
326 00cc 90E0 ldi r25,lo8(0)
327 .LVL5:
328 00ce 2FEF ldi r18,lo8(-1)
329 00d0 00C0 rjmp .L46
330 .LVL6:
331 .L47:
332 .LBE55:
333 .LBE54:
334 .LM67:
335 00d2 9536 cpi r25,lo8(101)
336 00d4 01F0 breq .L48
337 00d6 9F5F subi r25,lo8(-(1))
338 .L46:
339 .LBB56:
340 .LBB57:
341 .LM68:
342 00d8 2FB9 out 47-0x20,r18
343 .L50:
344 .LM69:
345 00da 779B sbis 46-0x20,7
346 00dc 00C0 rjmp .L50
347 .LM70:
348 00de 8FB1 in r24,47-0x20
349 .LVL7:
350 .LVL8:
351 .LBE57:
352 .LBE56:
353 .LM71:
354 00e0 8F3F cpi r24,lo8(-1)
355 00e2 01F0 breq .L47
356 .L48:
357 .LM72:
358 00e4 C09A sbi 56-0x20,0
359 .LM73:
360 00e6 9927 clr r25
361 .LVL9:
362 /* epilogue: frame size=0 */
363 00e8 0895 ret
364 /* epilogue end (size=1) */
365 /* function MMC_SD_SendCommand size 84 (83) */
366 .LFE8:
368 .global MMC_SD_ReadCapacity
370 MMC_SD_ReadCapacity:
371 .LFB12:
372 .LM74:
373 /* prologue: frame size=16 */
374 00ea 0F93 push r16
375 00ec 1F93 push r17
376 00ee CF93 push r28
377 00f0 DF93 push r29
378 00f2 CDB7 in r28,__SP_L__
379 00f4 DEB7 in r29,__SP_H__
380 00f6 6097 sbiw r28,16
381 00f8 0FB6 in __tmp_reg__,__SREG__
382 00fa F894 cli
383 00fc DEBF out __SP_H__,r29
384 00fe 0FBE out __SREG__,__tmp_reg__
385 0100 CDBF out __SP_L__,r28
386 /* prologue end (size=12) */
387 .LM75:
388 0102 40E0 ldi r20,lo8(0)
389 0104 50E0 ldi r21,hi8(0)
390 0106 60E0 ldi r22,hlo8(0)
391 0108 70E0 ldi r23,hhi8(0)
392 010a 89E0 ldi r24,lo8(9)
393 010c 0E94 0000 call MMC_SD_SendCommand
394 .LVL10:
395 .LM76:
396 0110 8823 tst r24
397 0112 01F0 breq .L80
398 .LM77:
399 0114 682F mov r22,r24
400 0116 7727 clr r23
401 0118 8827 clr r24
402 011a 9927 clr r25
403 .LVL11:
404 011c 00C0 rjmp .L82
405 .LVL12:
406 .L80:
407 .LM78:
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -