Blame | Last modification | View Log | RSS feed
1 .file "led.c"
2 .arch atmega644p
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
10 .global J17Mask
11 .data
14 J17Mask:
15 0000 01 .byte 1
16 .global J17Blinkcount
17 .global J17Blinkcount
18 .section .bss
21 J17Blinkcount:
22 0000 00 .skip 1,0
23 .global J16Mask
24 .data
27 J16Mask:
28 0001 01 .byte 1
29 .global J16Blinkcount
30 .global J16Blinkcount
31 .section .bss
34 J16Blinkcount:
35 0001 00 .skip 1,0
36 .global LED2_Timing
37 .global LED2_Timing
40 LED2_Timing:
41 0002 0000 .skip 2,0
42 .global LED1_Timing
43 .global LED1_Timing
46 LED1_Timing:
47 0004 0000 .skip 2,0
48 .text
49 .global LED_Init
51 LED_Init:
52 /* prologue: frame size=0 */
53 /* prologue end (size=0) */
54 0000 87B1 in r24,39-0x20
55 0002 8C60 ori r24,lo8(12)
56 0004 87B9 out 39-0x20,r24
57 0006 4298 cbi 40-0x20,2
58 0008 4398 cbi 40-0x20,3
59 000a 1092 0000 sts J16Blinkcount,__zero_reg__
60 000e 80E8 ldi r24,lo8(-128)
61 0010 8093 0000 sts J16Mask,r24
62 0014 1092 0000 sts J17Blinkcount,__zero_reg__
63 0018 8093 0000 sts J17Mask,r24
64 /* epilogue: frame size=0 */
65 001c 0895 ret
66 /* epilogue end (size=1) */
67 /* function LED_Init size 15 (14) */
69 .lcomm delay.0,1
70 .lcomm J16Bitmask.1,1
71 .lcomm J17Bitmask.2,1
72 .lcomm J16Warn.3,1
73 .lcomm J17Warn.4,1
74 .global LED_Update
76 LED_Update:
77 /* prologue: frame size=0 */
78 /* prologue end (size=0) */
79 001e 8091 0000 lds r24,delay.0
80 0022 8150 subi r24,lo8(-(-1))
81 0024 8093 0000 sts delay.0,r24
82 0028 8F3F cpi r24,lo8(-1)
83 002a 09F0 breq .+2
84 002c FBC0 rjmp .L2
85 002e 24E0 ldi r18,lo8(4)
86 0030 2093 0000 sts delay.0,r18
87 0034 8091 0000 lds r24,FC_StatusFlags
88 0038 9927 clr r25
89 003a 8073 andi r24,lo8(48)
90 003c 9070 andi r25,hi8(48)
91 003e 892B or r24,r25
92 0040 21F4 brne .L5
93 0042 8091 0000 lds r24,VersionInfo+6
94 0046 80FF sbrs r24,0
95 0048 1CC0 rjmp .L4
96 .L5:
97 004a 8091 0000 lds r24,EE_Parameter+78
98 004e 8823 tst r24
99 0050 49F0 breq .L6
100 0052 8091 0000 lds r24,J16Warn.3
101 0056 8823 tst r24
102 0058 11F4 brne .L7
103 005a 2093 0000 sts J16Blinkcount,r18
104 .L7:
105 005e 81E0 ldi r24,lo8(1)
106 0060 8093 0000 sts J16Warn.3,r24
107 .L6:
108 0064 8091 0000 lds r24,EE_Parameter+79
109 0068 8823 tst r24
110 006a B9F0 breq .L10
111 006c 8091 0000 lds r24,J17Warn.4
112 0070 8823 tst r24
113 0072 19F4 brne .L9
114 0074 84E0 ldi r24,lo8(4)
115 0076 8093 0000 sts J17Blinkcount,r24
116 .L9:
117 007a 81E0 ldi r24,lo8(1)
118 007c 8093 0000 sts J17Warn.4,r24
119 0080 0CC0 rjmp .L10
120 .L4:
121 0082 1092 0000 sts J16Warn.3,__zero_reg__
122 0086 1092 0000 sts J17Warn.4,__zero_reg__
123 008a 8091 0000 lds r24,EE_Parameter+74
124 008e 8093 0000 sts J16Bitmask.1,r24
125 0092 8091 0000 lds r24,EE_Parameter+76
126 0096 8093 0000 sts J17Bitmask.2,r24
127 .L10:
128 009a 8091 0000 lds r24,J16Warn.3
129 009e 8823 tst r24
130 00a0 09F0 breq .+2
131 00a2 40C0 rjmp .L11
132 00a4 8091 0000 lds r24,EE_Parameter+100
133 00a8 282F mov r18,r24
134 00aa 3327 clr r19
135 00ac 24FF sbrs r18,4
136 00ae 07C0 rjmp .L12
137 00b0 8091 0000 lds r24,MotorenEin
138 00b4 8823 tst r24
139 00b6 19F4 brne .L12
140 00b8 25FD sbrc r18,5
141 00ba 4DC0 rjmp .L61
142 00bc 4EC0 rjmp .L33
143 .L12:
144 00be 9091 0000 lds r25,EE_Parameter+75
145 00c2 983F cpi r25,lo8(-8)
146 00c4 50F0 brlo .L16
147 00c6 8091 0000 lds r24,Parameter_J16Timing
148 00ca 8D3D cpi r24,lo8(-35)
149 00cc 30F0 brlo .L16
150 00ce 8091 0000 lds r24,J16Bitmask.1
151 00d2 8823 tst r24
152 00d4 0CF4 brge .+2
153 00d6 3FC0 rjmp .L61
154 00d8 40C0 rjmp .L33
155 .L16:
156 00da 983F cpi r25,lo8(-8)
157 00dc 48F0 brlo .L20
158 00de 8091 0000 lds r24,Parameter_J16Timing
159 00e2 8A30 cpi r24,lo8(10)
160 00e4 28F4 brsh .L20
161 00e6 8091 0000 lds r24,J16Bitmask.1
162 00ea 8823 tst r24
163 00ec B4F1 brlt .L33
164 00ee 33C0 rjmp .L61
165 .L20:
166 00f0 8091 0000 lds r24,J16Blinkcount
167 00f4 8150 subi r24,lo8(-(-1))
168 00f6 8093 0000 sts J16Blinkcount,r24
169 00fa 8F3F cpi r24,lo8(-1)
170 00fc 79F5 brne .L29
171 00fe 8091 0000 lds r24,Parameter_J16Timing
172 0102 8150 subi r24,lo8(-(-1))
173 0104 8093 0000 sts J16Blinkcount,r24
174 0108 8091 0000 lds r24,J16Mask
175 010c 8130 cpi r24,lo8(1)
176 010e 11F4 brne .L25
177 0110 80E8 ldi r24,lo8(-128)
178 0112 01C0 rjmp .L59
179 .L25:
180 0114 8695 lsr r24
181 .L59:
182 0116 8093 0000 sts J16Mask,r24
183 011a 8091 0000 lds r24,J16Mask
184 011e 9091 0000 lds r25,J16Bitmask.1
185 0122 17C0 rjmp .L68
186 .L11:
187 0124 8091 0000 lds r24,J16Blinkcount
188 0128 8150 subi r24,lo8(-(-1))
189 012a 8093 0000 sts J16Blinkcount,r24
190 012e 8F3F cpi r24,lo8(-1)
191 0130 A9F4 brne .L29
192 0132 89E0 ldi r24,lo8(9)
193 0134 8093 0000 sts J16Blinkcount,r24
194 0138 8091 0000 lds r24,J16Mask
195 013c 8130 cpi r24,lo8(1)
196 013e 11F4 brne .L31
197 0140 80E8 ldi r24,lo8(-128)
198 0142 01C0 rjmp .L60
199 .L31:
200 0144 8695 lsr r24
201 .L60:
202 0146 8093 0000 sts J16Mask,r24
203 014a 8091 0000 lds r24,J16Mask
204 014e 9091 0000 lds r25,EE_Parameter+78
205 .L68:
206 0152 8923 and r24,r25
207 0154 11F0 breq .L33
208 .L61:
209 0156 429A sbi 40-0x20,2
210 0158 01C0 rjmp .L29
211 .L33:
212 015a 4298 cbi 40-0x20,2
213 .L29:
214 015c 8091 0000 lds r24,J17Warn.4
215 0160 8823 tst r24
216 0162 09F0 breq .+2
217 0164 43C0 rjmp .L35
218 0166 8091 0000 lds r24,EE_Parameter+100
219 016a 282F mov r18,r24
220 016c 3327 clr r19
221 016e 24FF sbrs r18,4
222 0170 07C0 rjmp .L36
223 0172 8091 0000 lds r24,MotorenEin
224 0176 8823 tst r24
225 0178 19F4 brne .L36
226 017a 26FD sbrc r18,6
227 017c 50C0 rjmp .L67
228 017e 34C0 rjmp .L51
229 .L36:
230 0180 9091 0000 lds r25,EE_Parameter+77
231 0184 983F cpi r25,lo8(-8)
232 0186 50F0 brlo .L40
233 0188 8091 0000 lds r24,Parameter_J17Timing
234 018c 8D3D cpi r24,lo8(-35)
235 018e 30F0 brlo .L40
236 0190 8091 0000 lds r24,J17Bitmask.2
237 0194 8823 tst r24
238 0196 0CF4 brge .+2
239 0198 42C0 rjmp .L67
240 019a 26C0 rjmp .L51
241 .L40:
242 019c 983F cpi r25,lo8(-8)
243 019e 48F0 brlo .L44
244 01a0 8091 0000 lds r24,Parameter_J17Timing
245 01a4 8A30 cpi r24,lo8(10)
246 01a6 28F4 brsh .L44
247 01a8 8091 0000 lds r24,J17Bitmask.2
248 01ac 8823 tst r24
249 01ae E4F0 brlt .L51
250 01b0 36C0 rjmp .L67
251 .L44:
252 01b2 8091 0000 lds r24,J17Blinkcount
253 01b6 8150 subi r24,lo8(-(-1))
254 01b8 8093 0000 sts J17Blinkcount,r24
255 01bc 8F3F cpi r24,lo8(-1)
256 01be 91F5 brne .L2
257 01c0 8091 0000 lds r24,Parameter_J17Timing
258 01c4 8150 subi r24,lo8(-(-1))
259 01c6 8093 0000 sts J17Blinkcount,r24
260 01ca 8091 0000 lds r24,J17Mask
261 01ce 8130 cpi r24,lo8(1)
262 01d0 11F4 brne .L49
263 01d2 80E8 ldi r24,lo8(-128)
264 01d4 01C0 rjmp .L62
265 .L49:
266 01d6 8695 lsr r24
267 .L62:
268 01d8 8093 0000 sts J17Mask,r24
269 01dc 8091 0000 lds r24,J17Mask
270 01e0 9091 0000 lds r25,J17Bitmask.2
271 01e4 8923 and r24,r25
272 01e6 D9F4 brne .L67
273 .L51:
274 01e8 4398 cbi 40-0x20,3
275 01ea 0895 ret
276 .L35:
277 01ec 8091 0000 lds r24,J17Blinkcount
278 01f0 8150 subi r24,lo8(-(-1))
279 01f2 8093 0000 sts J17Blinkcount,r24
280 01f6 8F3F cpi r24,lo8(-1)
281 01f8 A9F4 brne .L2
282 01fa 89E0 ldi r24,lo8(9)
283 01fc 8093 0000 sts J17Blinkcount,r24
284 0200 8091 0000 lds r24,J17Mask
285 0204 8130 cpi r24,lo8(1)
286 0206 11F4 brne .L55
287 0208 80E8 ldi r24,lo8(-128)
288 020a 01C0 rjmp .L63
289 .L55:
290 020c 8695 lsr r24
291 .L63:
292 020e 8093 0000 sts J17Mask,r24
293 0212 8091 0000 lds r24,J17Mask
294 0216 9091 0000 lds r25,EE_Parameter+79
295 021a 8923 and r24,r25
296 021c 11F0 breq .L57
297 .L67:
298 021e 439A sbi 40-0x20,3
299 0220 0895 ret
300 .L57:
301 0222 4398 cbi 40-0x20,3
302 .L2:
303 0224 0895 ret
304 /* epilogue: frame size=0 */
305 /* epilogue: noreturn */
306 /* epilogue end (size=0) */
307 /* function LED_Update size 267 (267) */
309 /* File "led.c": code 282 = 0x011a ( 281), prologues 0, epilogues 1 */
DEFINED SYMBOLS
*ABS*:00000000 led.c
C:\Users\Thomas\AppData\Local\Temp/ccCQbaaa.s:3 *ABS*:0000003f __SREG__
C:\Users\Thomas\AppData\Local\Temp/ccCQbaaa.s:4 *ABS*:0000003e __SP_H__
C:\Users\Thomas\AppData\Local\Temp/ccCQbaaa.s:5 *ABS*:0000003d __SP_L__
C:\Users\Thomas\AppData\Local\Temp/ccCQbaaa.s:6 *ABS*:00000000 __tmp_reg__
C:\Users\Thomas\AppData\Local\Temp/ccCQbaaa.s:7 *ABS*:00000001 __zero_reg__
C:\Users\Thomas\AppData\Local\Temp/ccCQbaaa.s:14 .data:00000000 J17Mask
C:\Users\Thomas\AppData\Local\Temp/ccCQbaaa.s:21 .bss:00000000 J17Blinkcount
C:\Users\Thomas\AppData\Local\Temp/ccCQbaaa.s:27 .data:00000001 J16Mask
C:\Users\Thomas\AppData\Local\Temp/ccCQbaaa.s:34 .bss:00000001 J16Blinkcount
C:\Users\Thomas\AppData\Local\Temp/ccCQbaaa.s:40 .bss:00000002 LED2_Timing
C:\Users\Thomas\AppData\Local\Temp/ccCQbaaa.s:46 .bss:00000004 LED1_Timing
C:\Users\Thomas\AppData\Local\Temp/ccCQbaaa.s:51 .text:00000000 LED_Init
.bss:00000006 delay.0
C:\Users\Thomas\AppData\Local\Temp/ccCQbaaa.s:69 .bss:00000007 J16Bitmask.1
C:\Users\Thomas\AppData\Local\Temp/ccCQbaaa.s:70 .bss:00000008 J17Bitmask.2
C:\Users\Thomas\AppData\Local\Temp/ccCQbaaa.s:71 .bss:00000009 J16Warn.3
C:\Users\Thomas\AppData\Local\Temp/ccCQbaaa.s:72 .bss:0000000a J17Warn.4
C:\Users\Thomas\AppData\Local\Temp/ccCQbaaa.s:76 .text:0000001e LED_Update
UNDEFINED SYMBOLS
__do_copy_data
__do_clear_bss
FC_StatusFlags
VersionInfo
EE_Parameter
MotorenEin
Parameter_J16Timing
Parameter_J17Timing