Blame | Last modification | View Log | RSS feed
1 .file "rc.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 .text
11 .global rc_sum_init
13 rc_sum_init:
14 /* prologue: frame size=0 */
15 /* prologue end (size=0) */
16 0000 83EC ldi r24,lo8(-61)
17 0002 8093 8100 sts 129,r24
18 0006 EFE6 ldi r30,lo8(111)
19 0008 F0E0 ldi r31,hi8(111)
20 000a 8081 ld r24,Z
21 000c 8062 ori r24,lo8(32)
22 000e 8083 st Z,r24
23 0010 1092 0000 sts (AdNeutralGier)+1,__zero_reg__
24 0014 1092 0000 sts AdNeutralGier,__zero_reg__
25 0018 1092 0000 sts (AdNeutralRoll)+1,__zero_reg__
26 001c 1092 0000 sts AdNeutralRoll,__zero_reg__
27 0020 1092 0000 sts (AdNeutralNick)+1,__zero_reg__
28 0024 1092 0000 sts AdNeutralNick,__zero_reg__
29 /* epilogue: frame size=0 */
30 0028 0895 ret
31 /* epilogue end (size=1) */
32 /* function rc_sum_init size 21 (20) */
34 .global __vector_12
36 __vector_12:
37 /* prologue: frame size=0 */
38 002a 1F92 push __zero_reg__
39 002c 0F92 push __tmp_reg__
40 002e 0FB6 in __tmp_reg__,__SREG__
41 0030 0F92 push __tmp_reg__
42 0032 1124 clr __zero_reg__
43 0034 0F93 push r16
44 0036 1F93 push r17
45 0038 2F93 push r18
46 003a 3F93 push r19
47 003c 4F93 push r20
48 003e 5F93 push r21
49 0040 6F93 push r22
50 0042 7F93 push r23
51 0044 8F93 push r24
52 0046 9F93 push r25
53 0048 AF93 push r26
54 004a BF93 push r27
55 004c CF93 push r28
56 004e DF93 push r29
57 0050 EF93 push r30
58 0052 FF93 push r31
59 /* prologue end (size=21) */
60 0054 2091 8600 lds r18,134
61 0058 3091 8700 lds r19,(134)+1
62 005c 8091 0000 lds r24,AltICR.2035
63 0060 9091 0000 lds r25,(AltICR.2035)+1
64 0064 281B sub r18,r24
65 0066 390B sbc r19,r25
66 0068 8091 8600 lds r24,134
67 006c 9091 8700 lds r25,(134)+1
68 0070 9093 0000 sts (AltICR.2035)+1,r25
69 0074 8093 0000 sts AltICR.2035,r24
70 0078 C901 movw r24,r18
71 007a 8D54 subi r24,lo8(-(-1101))
72 007c 9440 sbci r25,hi8(-(-1101))
73 007e C091 0000 lds r28,index.2038
74 0082 D091 0000 lds r29,(index.2038)+1
75 0086 835F subi r24,lo8(6899)
76 0088 9A41 sbci r25,hi8(6899)
77 008a 00F4 brsh .L4
78 008c 2497 sbiw r28,4
79 008e 04F0 brlt .L6
80 0090 1092 0000 sts NewPpmData,__zero_reg__
81 .L6:
82 0094 81E0 ldi r24,lo8(1)
83 0096 90E0 ldi r25,hi8(1)
84 0098 9093 0000 sts (index.2038)+1,r25
85 009c 8093 0000 sts index.2038,r24
86 00a0 00C0 rjmp .L22
87 .L4:
88 00a2 CA30 cpi r28,10
89 00a4 D105 cpc r29,__zero_reg__
90 00a6 04F0 brlt .+2
91 00a8 00C0 rjmp .L22
92 00aa C901 movw r24,r18
93 00ac 8B5F subi r24,lo8(-(-251))
94 00ae 9040 sbci r25,hi8(-(-251))
95 00b0 845B subi r24,lo8(436)
96 00b2 9140 sbci r25,hi8(436)
97 00b4 00F0 brlo .+2
98 00b6 00C0 rjmp .L10
99 00b8 A901 movw r20,r18
100 00ba 425D subi r20,lo8(-(-466))
101 00bc 5140 sbci r21,hi8(-(-466))
102 00be FE01 movw r30,r28
103 00c0 EE0F lsl r30
104 00c2 FF1F rol r31
105 00c4 E050 subi r30,lo8(-(PPM_in))
106 00c6 F040 sbci r31,hi8(-(PPM_in))
107 00c8 8081 ld r24,Z
108 00ca 9181 ldd r25,Z+1
109 00cc FA01 movw r30,r20
110 00ce E81B sub r30,r24
111 00d0 F90B sbc r31,r25
112 00d2 CF01 movw r24,r30
113 00d4 F7FF sbrs r31,7
114 00d6 00C0 rjmp .L13
115 00d8 9095 com r25
116 00da 8195 neg r24
117 00dc 9F4F sbci r25,lo8(-1)
118 .L13:
119 00de 0697 sbiw r24,6
120 00e0 04F4 brge .L12
121 00e2 8091 0000 lds r24,SenderOkay
122 00e6 883C cpi r24,lo8(-56)
123 00e8 00F4 brsh .L12
124 00ea 8091 0000 lds r24,SenderOkay
125 00ee 865F subi r24,lo8(-(10))
126 00f0 8093 0000 sts SenderOkay,r24
127 .L12:
128 00f4 FE01 movw r30,r28
129 00f6 EE0F lsl r30
130 00f8 FF1F rol r31
131 00fa 8F01 movw r16,r30
132 00fc 0050 subi r16,lo8(-(PPM_in))
133 00fe 1040 sbci r17,hi8(-(PPM_in))
134 0100 D801 movw r26,r16
135 0102 2D91 ld r18,X+
136 0104 3C91 ld r19,X
137 0106 C901 movw r24,r18
138 0108 880F lsl r24
139 010a 991F rol r25
140 010c 820F add r24,r18
141 010e 931F adc r25,r19
142 0110 840F add r24,r20
143 0112 951F adc r25,r21
144 0114 64E0 ldi r22,lo8(4)
145 0116 70E0 ldi r23,hi8(4)
146 0118 0E94 0000 call __divmodhi4
147 011c D801 movw r26,r16
148 011e 8D91 ld r24,X+
149 0120 9C91 ld r25,X
150 0122 1197 sbiw r26,1
151 0124 9B01 movw r18,r22
152 0126 281B sub r18,r24
153 0128 390B sbc r19,r25
154 012a E050 subi r30,lo8(-(PPM_diff))
155 012c F040 sbci r31,hi8(-(PPM_diff))
156 012e 3183 std Z+1,r19
157 0130 2083 st Z,r18
158 0132 1196 adiw r26,1
159 0134 7C93 st X,r23
160 0136 6E93 st -X,r22
161 .L10:
162 0138 FE01 movw r30,r28
163 013a 3196 adiw r30,1
164 013c F093 0000 sts (index.2038)+1,r31
165 0140 E093 0000 sts index.2038,r30
166 0144 E530 cpi r30,5
167 0146 F105 cpc r31,__zero_reg__
168 0148 01F4 brne .L16
169 014a 5D9A sbi 43-0x20,5
170 014c 5C98 cbi 43-0x20,4
171 014e 00C0 rjmp .L18
172 .L16:
173 0150 5D98 cbi 43-0x20,5
174 0152 E630 cpi r30,6
175 0154 F105 cpc r31,__zero_reg__
176 0156 01F4 brne .L19
177 0158 5C9A sbi 43-0x20,4
178 015a 00C0 rjmp .L18
179 .L19:
180 015c 5C98 cbi 43-0x20,4
181 015e 3797 sbiw r30,7
182 0160 01F4 brne .L18
183 0162 5B9A sbi 43-0x20,3
184 0164 00C0 rjmp .L22
185 .L18:
186 0166 5B98 cbi 43-0x20,3
187 .L22:
188 /* epilogue: frame size=0 */
189 0168 FF91 pop r31
190 016a EF91 pop r30
191 016c DF91 pop r29
192 016e CF91 pop r28
193 0170 BF91 pop r27
194 0172 AF91 pop r26
195 0174 9F91 pop r25
196 0176 8F91 pop r24
197 0178 7F91 pop r23
198 017a 6F91 pop r22
199 017c 5F91 pop r21
200 017e 4F91 pop r20
201 0180 3F91 pop r19
202 0182 2F91 pop r18
203 0184 1F91 pop r17
204 0186 0F91 pop r16
205 0188 0F90 pop __tmp_reg__
206 018a 0FBE out __SREG__,__tmp_reg__
207 018c 0F90 pop __tmp_reg__
208 018e 1F90 pop __zero_reg__
209 0190 1895 reti
210 /* epilogue end (size=21) */
211 /* function __vector_12 size 185 (143) */
213 .global NewPpmData
214 .data
217 NewPpmData:
218 0000 01 .byte 1
219 .lcomm index.2038,2
220 .lcomm AltICR.2035,2
221 .comm PPM_in,22,1
222 .comm PPM_diff,22,1
223 /* File "rc.c": code 206 = 0x00ce ( 163), prologues 21, epilogues 22 */
DEFINED SYMBOLS
*ABS*:00000000 rc.c
C:\Users\gunterl\AppData\Local\Temp/cciFxVgq.s:3 *ABS*:0000003f __SREG__
C:\Users\gunterl\AppData\Local\Temp/cciFxVgq.s:4 *ABS*:0000003e __SP_H__
C:\Users\gunterl\AppData\Local\Temp/cciFxVgq.s:5 *ABS*:0000003d __SP_L__
C:\Users\gunterl\AppData\Local\Temp/cciFxVgq.s:6 *ABS*:00000000 __tmp_reg__
C:\Users\gunterl\AppData\Local\Temp/cciFxVgq.s:7 *ABS*:00000001 __zero_reg__
C:\Users\gunterl\AppData\Local\Temp/cciFxVgq.s:13 .text:00000000 rc_sum_init
C:\Users\gunterl\AppData\Local\Temp/cciFxVgq.s:36 .text:0000002a __vector_12
C:\Users\gunterl\AppData\Local\Temp/cciFxVgq.s:219 .bss:00000002 AltICR.2035
.bss:00000000 index.2038
C:\Users\gunterl\AppData\Local\Temp/cciFxVgq.s:217 .data:00000000 NewPpmData
*COM*:00000016 PPM_in
*COM*:00000016 PPM_diff
UNDEFINED SYMBOLS
__do_copy_data
__do_clear_bss
AdNeutralGier
AdNeutralRoll
AdNeutralNick
SenderOkay
__divmodhi4