📄 wmfuc.lst
字号:
1 .file "wmfuc.c"
2 .arch atmega32
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 hex2asc
20 hex2asc:
21 .LFB14:
22 .LM1:
23 /* prologue: frame size=0 */
24 /* prologue end (size=0) */
25 .LM2:
26 0000 8A30 cpi r24,lo8(10)
27 0002 10F0 brlo .L2
28 .LM3:
29 0004 895C subi r24,lo8(-(55))
30 0006 01C0 rjmp .L3
31 .L2:
32 .LM4:
33 0008 805D subi r24,lo8(-(48))
34 .L3:
35 .LM5:
36 000a 9927 clr r25
37 /* epilogue: frame size=0 */
38 000c 0895 ret
39 /* epilogue end (size=1) */
40 /* function hex2asc size 7 (6) */
41 .LFE14:
43 .global asc2hex
45 asc2hex:
46 .LFB15:
47 .LM6:
48 /* prologue: frame size=0 */
49 /* prologue end (size=0) */
50 .LM7:
51 000e 8A33 cpi r24,lo8(58)
52 0010 10F0 brlo .L5
53 .LM8:
54 0012 8753 subi r24,lo8(-(-55))
55 0014 01C0 rjmp .L6
56 .L5:
57 .LM9:
58 0016 8053 subi r24,lo8(-(-48))
59 .L6:
60 .LM10:
61 0018 9927 clr r25
62 /* epilogue: frame size=0 */
63 001a 0895 ret
64 /* epilogue end (size=1) */
65 /* function asc2hex size 7 (6) */
66 .LFE15:
68 .global dec2bcd
70 dec2bcd:
71 .LFB16:
72 .LM11:
73 /* prologue: frame size=0 */
74 /* prologue end (size=0) */
75 001c 282F mov r18,r24
76 .LM12:
77 001e 4AE0 ldi r20,lo8(10)
78 0020 642F mov r22,r20
79 0022 0E94 0000 call __udivmodqi4
80 .LM13:
81 0026 382F mov r19,r24
82 0028 3295 swap r19
83 002a 307F andi r19,0xf0
84 .LM14:
85 002c 822F mov r24,r18
86 002e 0E94 0000 call __udivmodqi4
87 0032 390F add r19,r25
88 .LM15:
89 0034 832F mov r24,r19
90 0036 9927 clr r25
91 /* epilogue: frame size=0 */
92 0038 0895 ret
93 /* epilogue end (size=1) */
94 /* function dec2bcd size 15 (14) */
95 .LFE16:
97 .global bcd2dec
99 bcd2dec:
100 .LFB17:
101 .LM16:
102 /* prologue: frame size=0 */
103 /* prologue end (size=0) */
104 .LM17:
105 003a 982F mov r25,r24
106 003c 9295 swap r25
107 003e 9F70 andi r25,0x0f
108 .LM18:
109 0040 2AE0 ldi r18,lo8(10)
110 0042 929F mul r25,r18
111 0044 902D mov r25,r0
112 0046 1124 clr r1
113 .LM19:
114 0048 8F70 andi r24,lo8(15)
115 004a 980F add r25,r24
116 .LM20:
117 004c 892F mov r24,r25
118 004e 9927 clr r25
119 /* epilogue: frame size=0 */
120 0050 0895 ret
121 /* epilogue end (size=1) */
122 /* function bcd2dec size 12 (11) */
123 .LFE17:
125 .global clearAlrByClass
127 clearAlrByClass:
128 .LFB18:
129 .LM21:
130 /* prologue: frame size=0 */
131 /* prologue end (size=0) */
132 0052 9AEA ldi r25,lo8(-86)
133 0054 E0E0 ldi r30,lo8(xRAlrData+18)
134 0056 F0E0 ldi r31,hi8(xRAlrData+18)
135 0058 84E1 ldi r24,lo8(20)
136 .L13:
137 .LM22:
138 005a 9083 st Z,r25
139 005c 7396 adiw r30,19
140 .LM23:
141 005e 8150 subi r24,lo8(-(-1))
142 0060 87FF sbrs r24,7
143 0062 FBCF rjmp .L13
144 /* epilogue: frame size=0 */
145 0064 0895 ret
146 /* epilogue end (size=1) */
147 /* function clearAlrByClass size 10 (9) */
148 .LFE18:
150 .global cleardor_FLAG
152 cleardor_FLAG:
153 .LFB19:
154 .LM24:
155 /* prologue: frame size=0 */
156 /* prologue end (size=0) */
157 .LM25:
158 0066 1092 0000 sts xRdorData+2,__zero_reg__
159 .LM26:
160 006a 1092 0000 sts xRdorData+5,__zero_reg__
161 .LM27:
162 006e 1092 0000 sts xRdorData+8,__zero_reg__
163 .LM28:
164 0072 1092 0000 sts xRdorData,__zero_reg__
165 .LM29:
166 0076 1092 0000 sts xRdorData+3,__zero_reg__
167 .LM30:
168 007a 1092 0000 sts xRdorData+6,__zero_reg__
169 /* epilogue: frame size=0 */
170 007e 0895 ret
171 /* epilogue end (size=1) */
172 /* function cleardor_FLAG size 13 (12) */
173 .LFE19:
175 .global newAlrOffset
177 newAlrOffset:
178 .LFB20:
179 .LM31:
180 /* prologue: frame size=0 */
181 /* prologue end (size=0) */
182 .LM32:
183 0080 95E1 ldi r25,lo8(21)
184 .LM33:
185 0082 20E0 ldi r18,lo8(0)
186 0084 E0E0 ldi r30,lo8(xRAlrData+18)
187 0086 F0E0 ldi r31,hi8(xRAlrData+18)
188 .L22:
189 .LM34:
190 0088 8081 ld r24,Z
191 008a 7396 adiw r30,19
192 008c 8A3A cpi r24,lo8(-86)
193 008e 11F4 brne .L20
194 .LM35:
195 0090 922F mov r25,r18
196 .LM36:
197 0092 03C0 rjmp .L19
198 .L20:
199 .LM37:
200 0094 2F5F subi r18,lo8(-(1))
201 0096 2531 cpi r18,lo8(21)
202 0098 B8F3 brlo .L22
203 .L19:
204 .LM38:
205 009a 892F mov r24,r25
206 009c 9927 clr r25
207 /* epilogue: frame size=0 */
208 009e 0895 ret
209 /* epilogue end (size=1) */
210 /* function newAlrOffset size 16 (15) */
211 .LFE20:
213 .global seekAlrOffset
215 seekAlrOffset:
216 .LFB21:
217 .LM39:
218 /* prologue: frame size=0 */
219 /* prologue end (size=0) */
220 00a0 382F mov r19,r24
221 .LM40:
222 00a2 95E1 ldi r25,lo8(21)
223 .LM41:
224 00a4 20E0 ldi r18,lo8(0)
225 00a6 E0E0 ldi r30,lo8(xRAlrData)
226 00a8 F0E0 ldi r31,hi8(xRAlrData)
227 .L29:
228 .LM42:
229 00aa 8081 ld r24,Z
230 00ac 8317 cp r24,r19
231 00ae 29F4 brne .L27
232 00b0 8289 ldd r24,Z+18
233 00b2 8A3A cpi r24,lo8(-86)
234 00b4 11F0 breq .L27
235 .LM43:
236 00b6 922F mov r25,r18
237 .LM44:
238 00b8 04C0 rjmp .L26
239 .L27:
240 .LM45:
241 00ba 2F5F subi r18,lo8(-(1))
242 00bc 7396 adiw r30,19
243 00be 2531 cpi r18,lo8(21)
244 00c0 A0F3 brlo .L29
245 .L26:
246 .LM46:
247 00c2 892F mov r24,r25
248 00c4 9927 clr r25
249 /* epilogue: frame size=0 */
250 00c6 0895 ret
251 /* epilogue end (size=1) */
252 /* function seekAlrOffset size 20 (19) */
253 .LFE21:
255 .global handleOkBit
257 handleOkBit:
258 .LFB22:
259 .LM47:
260 /* prologue: frame size=0 */
261 /* prologue end (size=0) */
262 .LM48:
263 00c8 0E94 0000 call seekAlrOffset
264 .LM49:
265 00cc 8531 cpi r24,lo8(21)
266 00ce C0F4 brsh .L31
267 .LM50:
268 00d0 282F mov r18,r24
269 00d2 3327 clr r19
270 00d4 83E1 ldi r24,lo8(19)
271 00d6 90E0 ldi r25,hi8(19)
272 00d8 289F mul r18,r24
273 00da F001 movw r30,r0
274 00dc 299F mul r18,r25
275 00de F00D add r31,r0
276 00e0 389F mul r19,r24
277 00e2 F00D add r31,r0
278 00e4 1124 clr r1
279 00e6 E050 subi r30,lo8(-(xRAlrData))
280 00e8 F040 sbci r31,hi8(-(xRAlrData))
281 00ea 8085 ldd r24,Z+8
282 00ec 8A3A cpi r24,lo8(-86)
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -