📄 main.lst
字号:
1 .file "main.c"
2 .arch attiny2313
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 pixelNum3
19 .data
22 pixelNum3:
23 0000 0F .byte 15
24 .global charNum3
27 charNum3:
28 0001 1F .byte 31
29 .global scrollChar
30 .global scrollChar
31 .section .bss
34 scrollChar:
35 0000 0000 .skip 2,0
36 .global pixelNum2
37 .data
40 pixelNum2:
41 0002 0F .byte 15
42 .global charNum2
45 charNum2:
46 0003 1F .byte 31
47 .global pixelNum
50 pixelNum:
51 0004 0F .byte 15
52 .global charNum
55 charNum:
56 0005 1F .byte 31
57 .global botChar
58 .global botChar
59 .section .bss
62 botChar:
63 0002 0000 .skip 2,0
64 .global topChar
65 .global topChar
68 topChar:
69 0004 0000 .skip 2,0
70 .global line_shift
71 .data
74 line_shift:
75 0006 0F .byte 15
76 .global cur_line
79 cur_line:
80 0007 11 .byte 17
81 .global line_timer
84 line_timer:
85 0008 10 .byte 16
86 .global halfSpace
89 halfSpace:
90 0009 20 .byte 32
91 .global lines
92 .section .progmem.data,"a",@progbits
95 lines:
96 0000 2020 2020 .ascii " \240 T.O. 2006 Thank-yous \240 Pet"
96 2020 2020
96 2020 2020
96 2020 2020
96 A020 2020
97 0036 6572 2053 .ascii "er Smith \240 Nick Martin Solidworks Metfab "
97 6D69 7468
97 2020 A020
97 204E 6963
97 6B20 4D61
98 006f 2020 2054 .ascii " Titanium Joe Team Whyachi \240 Battlepacks Dura"
98 6974 616E
98 6975 6D20
98 4A6F 6520
98 2020 2054
99 00a8 6C69 7465 .ascii "lite "
99 2020 2020
100 00b0 A020 2020 .string "\240 Limor \240 ATMEL \240 AVRFreaks \240 And Many More "
100 2020 4C69
100 6D6F 7220
100 2020 2020
100 A020 2020
101 .global lineOffsets
104 lineOffsets:
105 00f1 00 .byte 0
106 00f2 10 .byte 16
107 00f3 20 .byte 32
108 00f4 00 .byte 0
109 00f5 30 .byte 48
110 00f6 40 .byte 64
111 00f7 00 .byte 0
112 00f8 50 .byte 80
113 00f9 60 .byte 96
114 00fa 70 .byte 112
115 00fb 80 .byte -128
116 00fc 90 .byte -112
117 00fd A0 .byte -96
118 00fe B0 .byte -80
119 00ff C0 .byte -64
120 0100 D0 .byte -48
121 0101 00 .byte 0
122 0102 E0 .byte -32
123 0103 00 .byte 0
124 0104 10 .byte 16
125 .text
126 .global clock_scroll
128 clock_scroll:
129 .LFB2:
130 .LM1:
131 /* prologue: frame size=0 */
132 0000 CF93 push r28
133 /* prologue end (size=1) */
134 0002 C82F mov r28,r24
135 .LM2:
136 0004 8091 0000 lds r24,fleds
137 0008 00D0 rcall spi_transfer
138 .LM3:
139 000a 8091 0000 lds r24,fleds+1
140 000e 00D0 rcall spi_transfer
141 .LM4:
142 0010 8091 0000 lds r24,fleds+2
143 0014 00D0 rcall spi_transfer
144 .LM5:
145 0016 8091 0000 lds r24,fleds+3
146 001a 00D0 rcall spi_transfer
147 .LM6:
148 001c CC23 tst r28
149 001e 79F0 breq .L2
150 .LM7:
151 0020 C830 cpi r28,lo8(8)
152 0022 20F4 brsh .L3
153 .LM8:
154 0024 6C2F mov r22,r28
155 0026 8091 0000 lds r24,fleds+4
156 002a 08C0 rjmp .L6
157 .L3:
158 .LM9:
159 002c 8091 0000 lds r24,fleds+4
160 0030 00D0 rcall spi_transfer
161 .LM10:
162 0032 C850 subi r28,lo8(-(-8))
163 .LM11:
164 0034 21F0 breq .L2
165 .LM12:
166 0036 6C2F mov r22,r28
167 0038 8091 0000 lds r24,fleds+5
168 .L6:
169 003c 00D0 rcall spi_transfer_n
170 .L2:
171 .LM13:
172 003e 949A sbi 50-0x20,4
173 .LM14:
174 /* #APP */
175 0040 0000 nop
176 0042 0000 nop
177 0044 0000 nop
178 0046 0000 nop
179 .LM15:
180 /* #NOAPP */
181 0048 9498 cbi 50-0x20,4
182 /* epilogue: frame size=0 */
183 004a CF91 pop r28
184 004c 0895 ret
185 /* epilogue end (size=2) */
186 /* function clock_scroll size 44 (41) */
187 .LFE2:
189 .global __vector_6
191 __vector_6:
192 .LFB3:
193 .LM16:
194 /* prologue: frame size=0 */
195 004e 1F92 push __zero_reg__
196 0050 0F92 push __tmp_reg__
197 0052 0FB6 in __tmp_reg__,__SREG__
198 0054 0F92 push __tmp_reg__
199 0056 1124 clr __zero_reg__
200 0058 8F93 push r24
201 005a 9F93 push r25
202 /* prologue end (size=7) */
203 .LM17:
204 005c 8091 0000 lds r24,hall_debounce
205 0060 8F5F subi r24,lo8(-(1))
206 0062 8093 0000 sts hall_debounce,r24
207 .LM18:
208 0066 8091 0000 lds r24,sensor_timer+1
209 006a 8F3F cpi r24,lo8(-1)
210 006c 49F0 breq .L8
211 .LM19:
212 006e 8091 0000 lds r24,sensor_timer
213 0072 9091 0000 lds r25,(sensor_timer)+1
214 0076 0196 adiw r24,1
215 0078 9093 0000 sts (sensor_timer)+1,r25
216 007c 8093 0000 sts sensor_timer,r24
217 .L8:
218 .LM20:
219 0080 8091 0000 lds r24,line_timer
220 0084 8F3F cpi r24,lo8(-1)
221 0086 29F0 breq .L7
222 .LM21:
223 0088 8091 0000 lds r24,line_timer
224 008c 8F5F subi r24,lo8(-(1))
225 008e 8093 0000 sts line_timer,r24
226 .L7:
227 /* epilogue: frame size=0 */
228 0092 9F91 pop r25
229 0094 8F91 pop r24
230 0096 0F90 pop __tmp_reg__
231 0098 0FBE out __SREG__,__tmp_reg__
232 009a 0F90 pop __tmp_reg__
233 009c 1F90 pop __zero_reg__
234 009e 1895 reti
235 /* epilogue end (size=7) */
236 /* function __vector_6 size 41 (27) */
237 .LFE3:
239 .global set_all
241 set_all:
242 .LFB8:
243 .LM22:
244 /* prologue: frame size=0 */
245 /* prologue end (size=0) */
246 .LM23:
247 00a0 8093 0000 sts fleds+3,r24
248 00a4 8093 0000 sts fleds+2,r24
249 00a8 8093 0000 sts fleds+1,r24
250 00ac 8093 0000 sts fleds,r24
251 .LM24:
252 00b0 80E0 ldi r24,lo8(0)
253 00b2 A6DF rcall clock_scroll
254 /* epilogue: frame size=0 */
255 00b4 0895 ret
256 /* epilogue end (size=1) */
257 /* function set_all size 11 (10) */
258 .LFE8:
260 .global __vector_4
262 __vector_4:
263 .LFB4:
264 .LM25:
265 /* prologue: frame size=0 */
266 00b6 1F92 push __zero_reg__
267 00b8 0F92 push __tmp_reg__
268 00ba 0FB6 in __tmp_reg__,__SREG__
269 00bc 0F92 push __tmp_reg__
270 00be 1124 clr __zero_reg__
271 00c0 2F93 push r18
272 00c2 3F93 push r19
273 00c4 4F93 push r20
274 00c6 5F93 push r21
275 00c8 6F93 push r22
276 00ca 7F93 push r23
277 00cc 8F93 push r24
278 00ce 9F93 push r25
279 00d0 AF93 push r26
280 00d2 BF93 push r27
281 00d4 EF93 push r30
282 00d6 FF93 push r31
283 /* prologue end (size=17) */
284 .LM26:
285 00d8 8091 0000 lds r24,sensor_timer+1
286 00dc 8230 cpi r24,lo8(2)
287 00de 08F0 brlo .+2
288 00e0 A0C0 rjmp .L11
289 .LM27:
290 00e2 8091 0000 lds r24,pixelNum
291 00e6 8F5F subi r24,lo8(-(1))
292 00e8 8093 0000 sts pixelNum,r24
293 .LM28:
294 00ec 8091 0000 lds r24,pixelNum
295 00f0 8031 cpi r24,lo8(16)
296 00f2 01F5 brne .L13
297 .LM29:
298 00f4 8091 0000 lds r24,charNum
299 00f8 8F30 cpi r24,lo8(15)
300 00fa 31F4 brne .L14
301 .LM30:
302 00fc 8EB5 in r24,78-0x20
303 00fe 887F andi r24,lo8(-8)
304 0100 8EBD out 78-0x20,r24
305 .LM31:
306 0102 8FEF ldi r24,lo8(-1)
307 0104 CDDF rcall set_all
308 .LM32:
309 0106 8DC0 rjmp .L11
310 .L14:
311 .LM33:
312 0108 1092 0000 sts pixelNum,__zero_reg__
313 .LM34:
314 010c 8091 0000 lds r24,charNum
315 0110 8F5F subi r24,lo8(-(1))
316 0112 8F70 andi r24,lo8(15)
317 0114 8093 0000 sts charNum,r24
318 .LM35:
319 0118 8091 0000 lds r24,charNum
320 011c E82F mov r30,r24
321 011e FF27 clr r31
322 0120 E050 subi r30,lo8(-(topLine))
323 0122 F040 sbci r31,hi8(-(topLine))
324 0124 8081 ld r24,Z
325 0126 9927 clr r25
326 0128 8F77 andi r24,lo8(127)
327 012a 9070 andi r25,hi8(127)
328 012c 8097 sbiw r24,32
329 012e 880F lsl r24
330 0130 991F rol r25
331 0132 06C0 rjmp .L20
332 .L13:
333 .LM36:
334 0134 8091 0000 lds r24,topChar
335 0138 9091 0000 lds r25,(topChar)+1
336 013c 8054 subi r24,lo8(-(192))
337 013e 9F4F sbci r25,hi8(-(192))
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -