📄 main.lst
字号:
1 .file "main.c"
2 __SREG__ = 0x3f
3 __SP_H__ = 0x3e
4 __SP_L__ = 0x3d
5 __CCP__ = 0x34
6 __tmp_reg__ = 0
7 __zero_reg__ = 1
8 .global __do_copy_data
9 .global __do_clear_bss
17 .Ltext0:
18 .global main
20 main:
21 .LFB6:
22 .LM1:
23 0000 FF92 push r15
24 0002 0F93 push r16
25 0004 1F93 push r17
26 0006 CF93 push r28
27 0008 DF93 push r29
28 /* prologue: function */
29 /* frame size = 0 */
30 .LBB42:
31 .LBB43:
32 .LBB44:
33 .LBB45:
34 .LM2:
35 000a 80E3 ldi r24,lo8(30000)
36 000c 95E7 ldi r25,hi8(30000)
37 000e FC01 movw r30,r24
38 .LVL0:
39 /* #APP */
40 ; 105 "d:/program files/winavr-20080610/lib/gcc/../../avr/include/util/delay_basic.h" 1
41 0010 3197 1: sbiw r30,1
42 0012 01F4 brne 1b
43 ; 0 "" 2
44 /* #NOAPP */
45 .LBE45:
46 .LBE44:
47 .LBE43:
48 .LBE42:
49 .LBB46:
50 .LBB47:
51 .LBB48:
52 .LBB49:
53 /* #APP */
54 ; 105 "d:/program files/winavr-20080610/lib/gcc/../../avr/include/util/delay_basic.h" 1
55 0014 0197 1: sbiw r24,1
56 0016 01F4 brne 1b
57 ; 0 "" 2
58 .LVL1:
59 /* #NOAPP */
60 .LBE49:
61 .LBE48:
62 .LBE47:
63 .LBE46:
64 .LM3:
65 0018 9FEF ldi r25,lo8(-1)
66 001a 95BB out 53-32,r25
67 001c 8FED ldi r24,lo8(-33)
68 .LVL2:
69 001e 82BB out 50-32,r24
70 0020 94BB out 52-32,r25
71 0022 91BB out 49-32,r25
72 .LM4:
73 0024 9298 cbi 50-32,2
74 .LBB50:
75 .LBB51:
76 .LBB52:
77 .LBB53:
78 .LM5:
79 0026 88EB ldi r24,lo8(3000)
80 0028 9BE0 ldi r25,hi8(3000)
81 .LVL3:
82 /* #APP */
83 ; 105 "d:/program files/winavr-20080610/lib/gcc/../../avr/include/util/delay_basic.h" 1
84 002a 0197 1: sbiw r24,1
85 002c 01F4 brne 1b
86 ; 0 "" 2
87 /* #NOAPP */
88 .LBE53:
89 .LBE52:
90 .LBE51:
91 .LBE50:
92 .LM6:
93 002e 929A sbi 50-32,2
94 .LM7:
95 0030 80E4 ldi r24,lo8(64)
96 0032 90E0 ldi r25,hi8(64)
97 .LVL4:
98 0034 0E94 0000 call malloc
99 .LVL5:
100 0038 092F mov r16,r25
101 003a 282F mov r18,r24
102 003c 392F mov r19,r25
103 003e F82E mov r15,r24
104 .LVL6:
105 0040 C901 movw r24,r18
106 0042 FC01 movw r30,r24
107 .LM8:
108 0044 2AEA ldi r18,lo8(-86)
109 0046 805C subi r24,lo8(-(64))
110 0048 9F4F sbci r25,hi8(-(64))
111 .L2:
112 004a 2193 st Z+,r18
113 004c E817 cp r30,r24
114 004e F907 cpc r31,r25
115 0050 01F4 brne .L2
116 .LM9:
117 0052 8FE3 ldi r24,lo8(63)
118 0054 0E94 0000 call lcd_write_cmd
119 .LM10:
120 0058 949A sbi 50-32,4
121 005a 939A sbi 50-32,3
122 005c 10E0 ldi r17,lo8(0)
123 .LVL7:
124 .L3:
125 .LM11:
126 005e 20E4 ldi r18,lo8(64)
127 0060 4F2D mov r20,r15
128 0062 502F mov r21,r16
129 0064 60E0 ldi r22,lo8(0)
130 0066 812F mov r24,r17
131 0068 0E94 0000 call lcd_write_data
132 .LM12:
133 006c 1F5F subi r17,lo8(-(1))
134 006e 1830 cpi r17,lo8(8)
135 0070 01F4 brne .L3
136 0072 20E0 ldi r18,lo8(0)
137 .LVL8:
138 .LBB54:
139 .LBB55:
140 .LBB56:
141 .LBB57:
142 .LM13:
143 0074 48EC ldi r20,lo8(-20536)
144 0076 5FEA ldi r21,hi8(-20536)
145 .L4:
146 0078 CA01 movw r24,r20
147 .LVL9:
148 /* #APP */
149 ; 105 "d:/program files/winavr-20080610/lib/gcc/../../avr/include/util/delay_basic.h" 1
150 007a 0197 1: sbiw r24,1
151 007c 01F4 brne 1b
152 ; 0 "" 2
153 /* #NOAPP */
154 .LBE57:
155 .LBE56:
156 .LBE55:
157 .LBE54:
158 .LM14:
159 007e 2F5F subi r18,lo8(-(1))
160 0080 2436 cpi r18,lo8(100)
161 0082 01F4 brne .L4
162 .LM15:
163 0084 8F2D mov r24,r15
164 .LVL10:
165 0086 902F mov r25,r16
166 0088 0E94 0000 call free
167 .LVL11:
168 .LM16:
169 008c 949A sbi 50-32,4
170 008e 9398 cbi 50-32,3
171 0090 C0E0 ldi r28,lo8(word_mode)
172 0092 D0E0 ldi r29,hi8(word_mode)
173 0094 10E0 ldi r17,lo8(0)
174 .LVL12:
175 .L5:
176 .LM17:
177 0096 20E2 ldi r18,lo8(32)
178 0098 30E0 ldi r19,hi8(32)
179 009a AE01 movw r20,r28
180 009c 60E0 ldi r22,lo8(0)
181 009e 812F mov r24,r17
182 00a0 0E94 0000 call write
183 .LM18:
184 00a4 C058 subi r28,lo8(-(128))
185 00a6 DF4F sbci r29,hi8(-(128))
186 00a8 20E2 ldi r18,lo8(32)
187 00aa 30E0 ldi r19,hi8(32)
188 00ac AE01 movw r20,r28
189 00ae 60E2 ldi r22,lo8(32)
190 00b0 812F mov r24,r17
191 00b2 0E94 0000 call write
192 .LM19:
193 00b6 1F5F subi r17,lo8(-(1))
194 00b8 C056 subi r28,lo8(-(-96))
195 00ba D040 sbci r29,hi8(-(-96))
196 00bc 1430 cpi r17,lo8(4)
197 00be 01F4 brne .L5
198 .LM20:
199 00c0 939A sbi 50-32,3
200 00c2 9498 cbi 50-32,4
201 00c4 C0E0 ldi r28,lo8(word_mode+256)
202 00c6 D0E0 ldi r29,hi8(word_mode+256)
203 00c8 10E0 ldi r17,lo8(0)
204 .LVL13:
205 .L6:
206 .LM21:
207 00ca 20E2 ldi r18,lo8(32)
208 00cc 30E0 ldi r19,hi8(32)
209 00ce AE01 movw r20,r28
210 00d0 60E0 ldi r22,lo8(0)
211 00d2 812F mov r24,r17
212 00d4 0E94 0000 call write
213 00d8 1F5F subi r17,lo8(-(1))
214 00da A096 adiw r28,32
215 00dc 1430 cpi r17,lo8(4)
216 00de 01F4 brne .L6
217 00e0 20E0 ldi r18,lo8(0)
218 .LVL14:
219 .LBB58:
220 .LBB59:
221 .LBB60:
222 .LBB61:
223 .LM22:
224 00e2 48EC ldi r20,lo8(-20536)
225 00e4 5FEA ldi r21,hi8(-20536)
226 .L7:
227 00e6 CA01 movw r24,r20
228 .LVL15:
229 /* #APP */
230 ; 105 "d:/program files/winavr-20080610/lib/gcc/../../avr/include/util/delay_basic.h" 1
231 00e8 0197 1: sbiw r24,1
232 00ea 01F4 brne 1b
233 ; 0 "" 2
234 /* #NOAPP */
235 .LBE61:
236 .LBE60:
237 .LBE59:
238 .LBE58:
239 .LM23:
240 00ec 2F5F subi r18,lo8(-(1))
241 00ee 2436 cpi r18,lo8(100)
242 00f0 01F4 brne .L7
243 .LM24:
244 00f2 949A sbi 50-32,4
245 00f4 939A sbi 50-32,3
246 .LM25:
247 00f6 80EE ldi r24,lo8(-32)
248 .LVL16:
249 00f8 0E94 0000 call lcd_write_cmd
250 .LVL17:
251 00fc 20E0 ldi r18,lo8(0)
252 .LVL18:
253 .LBB62:
254 .LBB63:
255 .LBB64:
256 .LBB65:
257 .LM26:
258 00fe 48EC ldi r20,lo8(-20536)
259 0100 5FEA ldi r21,hi8(-20536)
260 .L8:
261 0102 CA01 movw r24,r20
262 .LVL19:
263 /* #APP */
264 ; 105 "d:/program files/winavr-20080610/lib/gcc/../../avr/include/util/delay_basic.h" 1
265 0104 0197 1: sbiw r24,1
266 0106 01F4 brne 1b
267 ; 0 "" 2
268 /* #NOAPP */
269 .LBE65:
270 .LBE64:
271 .LBE63:
272 .LBE62:
273 .LM27:
274 0108 2F5F subi r18,lo8(-(1))
275 010a 2436 cpi r18,lo8(100)
276 010c 01F4 brne .L8
277 010e C0E0 ldi r28,lo8(picture_mode)
278 0110 D0E0 ldi r29,hi8(picture_mode)
279 0112 10E0 ldi r17,lo8(0)
280 .LVL20:
281 .L9:
282 .LM28:
283 0114 949A sbi 50-32,4
284 0116 9398 cbi 50-32,3
285 .LM29:
286 0118 20E4 ldi r18,lo8(64)
287 011a 30E0 ldi r19,hi8(64)
288 011c AE01 movw r20,r28
289 011e 60E0 ldi r22,lo8(0)
290 0120 812F mov r24,r17
291 .LVL21:
292 0122 0E94 0000 call write
293 .LM30:
294 0126 939A sbi 50-32,3
295 0128 9498 cbi 50-32,4
296 .LM31:
297 012a C05C subi r28,lo8(-(64))
298 012c DF4F sbci r29,hi8(-(64))
299 012e 20E4 ldi r18,lo8(64)
300 0130 30E0 ldi r19,hi8(64)
301 0132 AE01 movw r20,r28
302 0134 60E0 ldi r22,lo8(0)
303 0136 812F mov r24,r17
304 0138 0E94 0000 call write
305 .LM32:
306 013c 1F5F subi r17,lo8(-(1))
307 013e C05C subi r28,lo8(-(64))
308 0140 DF4F sbci r29,hi8(-(64))
309 0142 1830 cpi r17,lo8(8)
310 0144 01F4 brne .L9
311 .LM33:
312 0146 949A sbi 50-32,4
313 0148 939A sbi 50-32,3
314 .LM34:
315 014a 80EC ldi r24,lo8(-64)
316 014c 0E94 0000 call lcd_write_cmd
317 .L10:
318 0150 00C0 rjmp .L10
319 .LFE6:
321 .global word_mode
322 .section .progmem.data,"a",@progbits
325 word_mode:
326 0000 00 .byte 0
327 0001 00 .byte 0
328 0002 00 .byte 0
329 0003 20 .byte 32
330 0004 30 .byte 48
331 0005 10 .byte 16
332 0006 10 .byte 16
333 0007 10 .byte 16
334 0008 10 .byte 16
335 0009 10 .byte 16
336 000a 18 .byte 24
337 000b 08 .byte 8
338 000c 08 .byte 8
339 000d F8 .byte -8
340 000e FC .byte -4
341 000f 0C .byte 12
342 0010 04 .byte 4
343 0011 04 .byte 4
344 0012 06 .byte 6
345 0013 06 .byte 6
346 0014 06 .byte 6
347 0015 06 .byte 6
348 0016 83 .byte -125
349 0017 83 .byte -125
350 0018 02 .byte 2
351 0019 00 .byte 0
352 001a 00 .byte 0
353 001b 00 .byte 0
354 001c 00 .byte 0
355 001d 00 .byte 0
356 001e 00 .byte 0
357 001f 00 .byte 0
358 0020 00 .byte 0
359 0021 00 .byte 0
360 0022 00 .byte 0
361 0023 08 .byte 8
362 0024 08 .byte 8
363 0025 08 .byte 8
364 0026 08 .byte 8
365 0027 08 .byte 8
366 0028 0C .byte 12
367 0029 0C .byte 12
368 002a 0C .byte 12
369 002b 0C .byte 12
370 002c 04 .byte 4
371 002d FF .byte -1
372 002e FF .byte -1
373 002f 04 .byte 4
374 0030 06 .byte 6
375 0031 06 .byte 6
376 0032 06 .byte 6
377 0033 02 .byte 2
378 0034 02 .byte 2
379 0035 02 .byte 2
380 0036 03 .byte 3
381 0037 83 .byte -125
382 0038 83 .byte -125
383 0039 C0 .byte -64
384 003a C0 .byte -64
385 003b C0 .byte -64
386 003c 80 .byte -128
387 003d 80 .byte -128
388 003e 00 .byte 0
389 003f 00 .byte 0
390 0040 00 .byte 0
391 0041 0C .byte 12
392 0042 0C .byte 12
393 0043 04 .byte 4
394 0044 04 .byte 4
395 0045 04 .byte 4
396 0046 06 .byte 6
397 0047 06 .byte 6
398 0048 06 .byte 6
399 0049 02 .byte 2
400 004a 02 .byte 2
401 004b 02 .byte 2
402 004c 02 .byte 2
403 004d FF .byte -1
404 004e FF .byte -1
405 004f 03 .byte 3
406 0050 03 .byte 3
407 0051 01 .byte 1
408 0052 01 .byte 1
409 0053 01 .byte 1
410 0054 01 .byte 1
411 0055 01 .byte 1
412 0056 01 .byte 1
413 0057 01 .byte 1
414 0058 00 .byte 0
415 0059 00 .byte 0
416 005a 00 .byte 0
417 005b E0 .byte -32
418 005c E0 .byte -32
419 005d 00 .byte 0
420 005e 00 .byte 0
421 005f 00 .byte 0
422 0060 00 .byte 0
423 0061 00 .byte 0
424 0062 00 .byte 0
425 0063 00 .byte 0
426 0064 00 .byte 0
427 0065 00 .byte 0
428 0066 00 .byte 0
429 0067 00 .byte 0
430 0068 00 .byte 0
431 0069 00 .byte 0
432 006a 00 .byte 0
433 006b 00 .byte 0
434 006c 00 .byte 0
435 006d 07 .byte 7
436 006e 0F .byte 15
437 006f 08 .byte 8
438 0070 08 .byte 8
439 0071 08 .byte 8
440 0072 08 .byte 8
441 0073 08 .byte 8
442 0074 08 .byte 8
443 0075 08 .byte 8
444 0076 08 .byte 8
445 0077 08 .byte 8
446 0078 08 .byte 8
447 0079 08 .byte 8
448 007a 0C .byte 12
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -