Subversion Repositories FlightCtrl

Rev

Details | Last modification | View Log | RSS feed

Rev Author Line No. Line
1612 dongfang 1
   1               		.file	"fc.c"
2
   2               	__SREG__ = 0x3f
3
   3               	__SP_H__ = 0x3e
4
   4               	__SP_L__ = 0x3d
5
   5               	__tmp_reg__ = 0
6
   6               	__zero_reg__ = 1
7
   7               		.global __do_copy_data
8
   8               		.global __do_clear_bss
9
   9               		.text
10
  10               	.global	MotorSmoothing
11
  12               	MotorSmoothing:
12
  13               	/* prologue: function */
13
  14               	/* frame size = 0 */
14
  15 0000 680F      		add r22,r24
15
  16 0002 791F      		adc r23,r25
16
  17 0004 77FD      		sbrc r23,7
17
  18 0006 00C0      		rjmp .L5
18
  19 0008 9B01      		movw r18,r22
19
  20 000a 3595      		asr r19
20
  21 000c 2795      		ror r18
21
  22 000e C901      		movw r24,r18
22
  23               	/* epilogue start */
23
  24 0010 0895      		ret
24
  25               	.L5:
25
  26 0012 6F5F      		subi r22,lo8(-(1))
26
  27 0014 7F4F      		sbci r23,hi8(-(1))
27
  28 0016 9B01      		movw r18,r22
28
  29 0018 3595      		asr r19
29
  30 001a 2795      		ror r18
30
  31 001c C901      		movw r24,r18
31
  32 001e 0895      		ret
32
  34               	.global	Mean
33
  36               	Mean:
34
  37 0020 2F92      		push r2
35
  38 0022 3F92      		push r3
36
  39 0024 4F92      		push r4
37
  40 0026 5F92      		push r5
38
  41 0028 6F92      		push r6
39
  42 002a 7F92      		push r7
40
  43 002c 8F92      		push r8
41
  44 002e 9F92      		push r9
42
  45 0030 AF92      		push r10
43
  46 0032 BF92      		push r11
44
  47 0034 CF92      		push r12
45
  48 0036 DF92      		push r13
46
  49 0038 EF92      		push r14
47
  50 003a FF92      		push r15
48
  51 003c 0F93      		push r16
49
  52 003e 1F93      		push r17
50
  53 0040 CF93      		push r28
51
  54 0042 DF93      		push r29
52
  55               	/* prologue: function */
53
  56               	/* frame size = 0 */
54
  57 0044 6091 0000 		lds r22,hiResPitchGyro
55
  58 0048 7091 0000 		lds r23,(hiResPitchGyro)+1
56
  59 004c E090 0000 		lds r14,vibrationOffsetNick
57
  60 0050 F090 0000 		lds r15,(vibrationOffsetNick)+1
58
  61 0054 0091 0000 		lds r16,(vibrationOffsetNick)+2
59
  62 0058 1091 0000 		lds r17,(vibrationOffsetNick)+3
60
  63 005c 8827      		clr r24
61
  64 005e 77FD      		sbrc r23,7
62
  65 0060 8095      		com r24
63
  66 0062 982F      		mov r25,r24
64
  67 0064 6E19      		sub r22,r14
65
  68 0066 7F09      		sbc r23,r15
66
  69 0068 800B      		sbc r24,r16
67
  70 006a 910B      		sbc r25,r17
68
  71 006c 24E0      		ldi r18,lo8(4)
69
  72 006e 30E0      		ldi r19,hi8(4)
70
  73 0070 40E0      		ldi r20,hlo8(4)
71
  74 0072 50E0      		ldi r21,hhi8(4)
72
  75 0074 0E94 0000 		call __divmodsi4
73
  76 0078 3093 0000 		sts (GyroNick)+1,r19
74
  77 007c 2093 0000 		sts GyroNick,r18
75
  78 0080 C090 0000 		lds r12,filteredHiResPitchGyro
76
  79 0084 D090 0000 		lds r13,(filteredHiResPitchGyro)+1
77
  80 0088 6091 0000 		lds r22,hiResRollGyro
78
  81 008c 7091 0000 		lds r23,(hiResRollGyro)+1
79
  82 0090 2090 0000 		lds r2,vibrationOffsetRoll
80
  83 0094 3090 0000 		lds r3,(vibrationOffsetRoll)+1
81
  84 0098 4090 0000 		lds r4,(vibrationOffsetRoll)+2
82
  85 009c 5090 0000 		lds r5,(vibrationOffsetRoll)+3
83
  86 00a0 8827      		clr r24
84
  87 00a2 77FD      		sbrc r23,7
85
  88 00a4 8095      		com r24
86
  89 00a6 982F      		mov r25,r24
87
  90 00a8 6219      		sub r22,r2
88
  91 00aa 7309      		sbc r23,r3
89
  92 00ac 8409      		sbc r24,r4
90
  93 00ae 9509      		sbc r25,r5
91
  94 00b0 24E0      		ldi r18,lo8(4)
92
  95 00b2 30E0      		ldi r19,hi8(4)
93
  96 00b4 40E0      		ldi r20,hlo8(4)
94
  97 00b6 50E0      		ldi r21,hhi8(4)
95
  98 00b8 0E94 0000 		call __divmodsi4
96
  99 00bc 3093 0000 		sts (GyroRoll)+1,r19
97
 100 00c0 2093 0000 		sts GyroRoll,r18
98
 101 00c4 C091 0000 		lds r28,filteredHiResRollGyro
99
 102 00c8 D091 0000 		lds r29,(filteredHiResRollGyro)+1
100
 103 00cc 8091 0000 		lds r24,hiResPitchGyro
101
 104 00d0 9091 0000 		lds r25,(hiResPitchGyro)+1
102
 105 00d4 2091 0000 		lds r18,NickNoisePeak
103
 106 00d8 3091 0000 		lds r19,(NickNoisePeak)+1
104
 107 00dc 2817      		cp r18,r24
105
 108 00de 3907      		cpc r19,r25
106
 109 00e0 04F0      		brlt .+2
107
 110 00e2 00C0      		rjmp .L7
108
 111 00e4 8091 0000 		lds r24,hiResPitchGyro
109
 112 00e8 9091 0000 		lds r25,(hiResPitchGyro)+1
110
 113 00ec 9093 0000 		sts (NickNoisePeak)+1,r25
111
 114 00f0 8093 0000 		sts NickNoisePeak,r24
112
 115               	.L8:
113
 116 00f4 8091 0000 		lds r24,hiResRollGyro
114
 117 00f8 9091 0000 		lds r25,(hiResRollGyro)+1
115
 118 00fc 2091 0000 		lds r18,RollNoisePeak
116
 119 0100 3091 0000 		lds r19,(RollNoisePeak)+1
117
 120 0104 2817      		cp r18,r24
118
 121 0106 3907      		cpc r19,r25
119
 122 0108 04F0      		brlt .+2
120
 123 010a 00C0      		rjmp .L9
121
 124 010c 8091 0000 		lds r24,hiResRollGyro
122
 125 0110 9091 0000 		lds r25,(hiResRollGyro)+1
123
 126 0114 9093 0000 		sts (RollNoisePeak)+1,r25
124
 127 0118 8093 0000 		sts RollNoisePeak,r24
125
 128               	.L10:
126
 129 011c 8091 0000 		lds r24,rawYawGyroSum
127
 130 0120 9091 0000 		lds r25,(rawYawGyroSum)+1
128
 131 0124 2091 0000 		lds r18,vibrationOffsetYaw
129
 132 0128 3091 0000 		lds r19,(vibrationOffsetYaw)+1
130
 133 012c 821B      		sub r24,r18
131
 134 012e 930B      		sbc r25,r19
132
 135 0130 9093 0000 		sts (GyroYaw)+1,r25
133
 136 0134 8093 0000 		sts GyroYaw,r24
134
 137 0138 2091 7A00 		lds r18,122
135
 138 013c 286C      		ori r18,lo8(-56)
136
 139 013e 2093 7A00 		sts 122,r18
137
 140 0142 1092 0000 		sts ADReady,__zero_reg__
138
 141 0146 AA27      		clr r26
139
 142 0148 97FD      		sbrc r25,7
140
 143 014a A095      		com r26
141
 144 014c BA2F      		mov r27,r26
142
 145 014e 2091 0000 		lds r18,YawGyroHeading
143
 146 0152 3091 0000 		lds r19,(YawGyroHeading)+1
144
 147 0156 4091 0000 		lds r20,(YawGyroHeading)+2
145
 148 015a 5091 0000 		lds r21,(YawGyroHeading)+3
146
 149 015e 280F      		add r18,r24
147
 150 0160 391F      		adc r19,r25
148
 151 0162 4A1F      		adc r20,r26
149
 152 0164 5B1F      		adc r21,r27
150
 153 0166 2093 0000 		sts YawGyroHeading,r18
151
 154 016a 3093 0000 		sts (YawGyroHeading)+1,r19
152
 155 016e 4093 0000 		sts (YawGyroHeading)+2,r20
153
 156 0172 5093 0000 		sts (YawGyroHeading)+3,r21
154
 157 0176 6090 0000 		lds r6,ReadingIntegralGyroYaw
155
 158 017a 7090 0000 		lds r7,(ReadingIntegralGyroYaw)+1
156
 159 017e 8090 0000 		lds r8,(ReadingIntegralGyroYaw)+2
157
 160 0182 9090 0000 		lds r9,(ReadingIntegralGyroYaw)+3
158
 161 0186 680E      		add r6,r24
159
 162 0188 791E      		adc r7,r25
160
 163 018a 8A1E      		adc r8,r26
161
 164 018c 9B1E      		adc r9,r27
162
 165 018e 6092 0000 		sts ReadingIntegralGyroYaw,r6
163
 166 0192 7092 0000 		sts (ReadingIntegralGyroYaw)+1,r7
164
 167 0196 8092 0000 		sts (ReadingIntegralGyroYaw)+2,r8
165
 168 019a 9092 0000 		sts (ReadingIntegralGyroYaw)+3,r9
166
 169 019e 2030      		cpi r18,lo8(184320)
167
 170 01a0 80ED      		ldi r24,hi8(184320)
168
 171 01a2 3807      		cpc r19,r24
169
 172 01a4 82E0      		ldi r24,hlo8(184320)
170
 173 01a6 4807      		cpc r20,r24
171
 174 01a8 80E0      		ldi r24,hhi8(184320)
172
 175 01aa 5807      		cpc r21,r24
173
 176 01ac 04F0      		brlt .L11
174
 177 01ae DA01      		movw r26,r20
175
 178 01b0 C901      		movw r24,r18
176
 179 01b2 8050      		subi r24,lo8(-(-184320))
177
 180 01b4 904D      		sbci r25,hi8(-(-184320))
178
 181 01b6 A240      		sbci r26,hlo8(-(-184320))
179
 182 01b8 B040      		sbci r27,hhi8(-(-184320))
180
 183 01ba 8093 0000 		sts YawGyroHeading,r24
181
 184 01be 9093 0000 		sts (YawGyroHeading)+1,r25
182
 185 01c2 A093 0000 		sts (YawGyroHeading)+2,r26
183
 186 01c6 B093 0000 		sts (YawGyroHeading)+3,r27
184
 187 01ca 9C01      		movw r18,r24
185
 188 01cc AD01      		movw r20,r26
186
 189               	.L11:
187
 190 01ce 57FD      		sbrc r21,7
188
 191 01d0 00C0      		rjmp .L18
189
 192               	.L12:
190
 193 01d2 B601      		movw r22,r12
191
 194 01d4 8827      		clr r24
192
 195 01d6 77FD      		sbrc r23,7
193
 196 01d8 8095      		com r24
194
 197 01da 982F      		mov r25,r24
195
 198 01dc 6E19      		sub r22,r14
196
 199 01de 7F09      		sbc r23,r15
197
 200 01e0 800B      		sbc r24,r16
198
 201 01e2 910B      		sbc r25,r17
199
 202 01e4 24E0      		ldi r18,lo8(4)
200
 203 01e6 30E0      		ldi r19,hi8(4)
201
 204 01e8 40E0      		ldi r20,hlo8(4)
202
 205 01ea 50E0      		ldi r21,hhi8(4)
203
 206 01ec 0E94 0000 		call __divmodsi4
204
 207 01f0 4427      		clr r20
205
 208 01f2 37FD      		sbrc r19,7
206
 209 01f4 4095      		com r20
207
 210 01f6 542F      		mov r21,r20
208
 211 01f8 A090 0000 		lds r10,ReadingIntegralGyroNick
209
 212 01fc B090 0000 		lds r11,(ReadingIntegralGyroNick)+1
210
 213 0200 C090 0000 		lds r12,(ReadingIntegralGyroNick)+2
211
 214 0204 D090 0000 		lds r13,(ReadingIntegralGyroNick)+3
212
 215 0208 A20E      		add r10,r18
213
 216 020a B31E      		adc r11,r19
214
 217 020c C41E      		adc r12,r20
215
 218 020e D51E      		adc r13,r21
216
 219 0210 A092 0000 		sts ReadingIntegralGyroNick,r10
217
 220 0214 B092 0000 		sts (ReadingIntegralGyroNick)+1,r11
218
 221 0218 C092 0000 		sts (ReadingIntegralGyroNick)+2,r12
219
 222 021c D092 0000 		sts (ReadingIntegralGyroNick)+3,r13
220
 223 0220 E090 0000 		lds r14,TurnOver180Nick
221
 224 0224 F090 0000 		lds r15,(TurnOver180Nick)+1
222
 225 0228 0091 0000 		lds r16,(TurnOver180Nick)+2
223
 226 022c 1091 0000 		lds r17,(TurnOver180Nick)+3
224
 227 0230 EA14      		cp r14,r10
225
 228 0232 FB04      		cpc r15,r11
226
 229 0234 0C05      		cpc r16,r12
227
 230 0236 1D05      		cpc r17,r13
228
 231 0238 04F0      		brlt .+2
229
 232 023a 00C0      		rjmp .L13
230
 233 023c 8827      		clr r24
231
 234 023e 9927      		clr r25
232
 235 0240 DC01      		movw r26,r24
233
 236 0242 8E19      		sub r24,r14
234
 237 0244 9F09      		sbc r25,r15
235
 238 0246 A00B      		sbc r26,r16
236
 239 0248 B10B      		sbc r27,r17
237
 240 024a 8093 0000 		sts ReadingIntegralGyroNick,r24
238
 241 024e 9093 0000 		sts (ReadingIntegralGyroNick)+1,r25
239
 242 0252 A093 0000 		sts (ReadingIntegralGyroNick)+2,r26
240
 243 0256 B093 0000 		sts (ReadingIntegralGyroNick)+3,r27
241
 244 025a 5C01      		movw r10,r24
242
 245 025c 6D01      		movw r12,r26
243
 246               	.L14:
244
 247 025e BE01      		movw r22,r28
245
 248 0260 8827      		clr r24
246
 249 0262 77FD      		sbrc r23,7
247
 250 0264 8095      		com r24
248
 251 0266 982F      		mov r25,r24
249
 252 0268 6219      		sub r22,r2
250
 253 026a 7309      		sbc r23,r3
251
 254 026c 8409      		sbc r24,r4
252
 255 026e 9509      		sbc r25,r5
253
 256 0270 24E0      		ldi r18,lo8(4)
254
 257 0272 30E0      		ldi r19,hi8(4)
255
 258 0274 40E0      		ldi r20,hlo8(4)
256
 259 0276 50E0      		ldi r21,hhi8(4)
257
 260 0278 0E94 0000 		call __divmodsi4
258
 261 027c 4427      		clr r20
259
 262 027e 37FD      		sbrc r19,7
260
 263 0280 4095      		com r20
261
 264 0282 542F      		mov r21,r20
262
 265 0284 E090 0000 		lds r14,ReadingIntegralGyroRoll
263
 266 0288 F090 0000 		lds r15,(ReadingIntegralGyroRoll)+1
264
 267 028c 0091 0000 		lds r16,(ReadingIntegralGyroRoll)+2
265
 268 0290 1091 0000 		lds r17,(ReadingIntegralGyroRoll)+3
266
 269 0294 E20E      		add r14,r18
267
 270 0296 F31E      		adc r15,r19
268
 271 0298 041F      		adc r16,r20
269
 272 029a 151F      		adc r17,r21
270
 273 029c E092 0000 		sts ReadingIntegralGyroRoll,r14
271
 274 02a0 F092 0000 		sts (ReadingIntegralGyroRoll)+1,r15
272
 275 02a4 0093 0000 		sts (ReadingIntegralGyroRoll)+2,r16
273
 276 02a8 1093 0000 		sts (ReadingIntegralGyroRoll)+3,r17
274
 277 02ac 2091 0000 		lds r18,TurnOver180Roll
275
 278 02b0 3091 0000 		lds r19,(TurnOver180Roll)+1
276
 279 02b4 4091 0000 		lds r20,(TurnOver180Roll)+2
277
 280 02b8 5091 0000 		lds r21,(TurnOver180Roll)+3
278
 281 02bc 2E15      		cp r18,r14
279
 282 02be 3F05      		cpc r19,r15
280
 283 02c0 4007      		cpc r20,r16
281
 284 02c2 5107      		cpc r21,r17
282
 285 02c4 04F4      		brge .+2
283
 286 02c6 00C0      		rjmp .L19
284
 287 02c8 8827      		clr r24
285
 288 02ca 9927      		clr r25
286
 289 02cc DC01      		movw r26,r24
287
 290 02ce 821B      		sub r24,r18
288
 291 02d0 930B      		sbc r25,r19
289
 292 02d2 A40B      		sbc r26,r20
290
 293 02d4 B50B      		sbc r27,r21
291
 294 02d6 E816      		cp r14,r24
292
 295 02d8 F906      		cpc r15,r25
293
 296 02da 0A07      		cpc r16,r26
294
 297 02dc 1B07      		cpc r17,r27
295
 298 02de 04F4      		brge .L16
296
 299 02e0 2093 0000 		sts ReadingIntegralGyroRoll,r18
297
 300 02e4 3093 0000 		sts (ReadingIntegralGyroRoll)+1,r19
298
 301 02e8 4093 0000 		sts (ReadingIntegralGyroRoll)+2,r20
299
 302 02ec 5093 0000 		sts (ReadingIntegralGyroRoll)+3,r21
300
 303 02f0 7901      		movw r14,r18
301
 304 02f2 8A01      		movw r16,r20
302
 305               	.L16:
303
 306 02f4 A092 0000 		sts IntegralGyroNick,r10
304
 307 02f8 B092 0000 		sts (IntegralGyroNick)+1,r11
305
 308 02fc C092 0000 		sts (IntegralGyroNick)+2,r12
306
 309 0300 D092 0000 		sts (IntegralGyroNick)+3,r13
307
 310 0304 E092 0000 		sts IntegralGyroRoll,r14
308
 311 0308 F092 0000 		sts (IntegralGyroRoll)+1,r15
309
 312 030c 0093 0000 		sts (IntegralGyroRoll)+2,r16
310
 313 0310 1093 0000 		sts (IntegralGyroRoll)+3,r17
311
 314 0314 6092 0000 		sts IntegralGyroYaw,r6
312
 315 0318 7092 0000 		sts (IntegralGyroYaw)+1,r7
313
 316 031c 8092 0000 		sts (IntegralGyroYaw)+2,r8
314
 317 0320 9092 0000 		sts (IntegralGyroYaw)+3,r9
315
 318               	/* epilogue start */
316
 319 0324 DF91      		pop r29
317
 320 0326 CF91      		pop r28
318
 321 0328 1F91      		pop r17
319
 322 032a 0F91      		pop r16
320
 323 032c FF90      		pop r15
321
 324 032e EF90      		pop r14
322
 325 0330 DF90      		pop r13
323
 326 0332 CF90      		pop r12
324
 327 0334 BF90      		pop r11
325
 328 0336 AF90      		pop r10
326
 329 0338 9F90      		pop r9
327
 330 033a 8F90      		pop r8
328
 331 033c 7F90      		pop r7
329
 332 033e 6F90      		pop r6
330
 333 0340 5F90      		pop r5
331
 334 0342 4F90      		pop r4
332
 335 0344 3F90      		pop r3
333
 336 0346 2F90      		pop r2
334
 337 0348 0895      		ret
335
 338               	.L13:
336
 339 034a 8827      		clr r24
337
 340 034c 9927      		clr r25
338
 341 034e DC01      		movw r26,r24
339
 342 0350 8E19      		sub r24,r14
340
 343 0352 9F09      		sbc r25,r15
341
 344 0354 A00B      		sbc r26,r16
342
 345 0356 B10B      		sbc r27,r17
343
 346 0358 A816      		cp r10,r24
344
 347 035a B906      		cpc r11,r25
345
 348 035c CA06      		cpc r12,r26
346
 349 035e DB06      		cpc r13,r27
347
 350 0360 04F0      		brlt .+2
348
 351 0362 00C0      		rjmp .L14
349
 352 0364 E092 0000 		sts ReadingIntegralGyroNick,r14
350
 353 0368 F092 0000 		sts (ReadingIntegralGyroNick)+1,r15
351
 354 036c 0093 0000 		sts (ReadingIntegralGyroNick)+2,r16
352
 355 0370 1093 0000 		sts (ReadingIntegralGyroNick)+3,r17
353
 356 0374 5701      		movw r10,r14
354
 357 0376 6801      		movw r12,r16
355
 358 0378 00C0      		rjmp .L14
356
 359               	.L9:
357
 360 037a 8091 0000 		lds r24,hiResRollGyro
358
 361 037e 9091 0000 		lds r25,(hiResRollGyro)+1
359
 362 0382 9095      		com r25
360
 363 0384 8195      		neg r24
361
 364 0386 9F4F      		sbci r25,lo8(-1)
362
 365 0388 2817      		cp r18,r24
363
 366 038a 3907      		cpc r19,r25
364
 367 038c 04F0      		brlt .+2
365
 368 038e 00C0      		rjmp .L10
366
 369 0390 8091 0000 		lds r24,hiResRollGyro
367
 370 0394 9091 0000 		lds r25,(hiResRollGyro)+1
368
 371 0398 9095      		com r25
369
 372 039a 8195      		neg r24
370
 373 039c 9F4F      		sbci r25,lo8(-1)
371
 374 039e 9093 0000 		sts (RollNoisePeak)+1,r25
372
 375 03a2 8093 0000 		sts RollNoisePeak,r24
373
 376 03a6 00C0      		rjmp .L10
374
 377               	.L7:
375
 378 03a8 8091 0000 		lds r24,hiResPitchGyro
376
 379 03ac 9091 0000 		lds r25,(hiResPitchGyro)+1
377
 380 03b0 9095      		com r25
378
 381 03b2 8195      		neg r24
379
 382 03b4 9F4F      		sbci r25,lo8(-1)
380
 383 03b6 2817      		cp r18,r24
381
 384 03b8 3907      		cpc r19,r25
382
 385 03ba 04F0      		brlt .+2
383
 386 03bc 00C0      		rjmp .L8
384
 387 03be 8091 0000 		lds r24,hiResPitchGyro
385
 388 03c2 9091 0000 		lds r25,(hiResPitchGyro)+1
386
 389 03c6 9095      		com r25
387
 390 03c8 8195      		neg r24
388
 391 03ca 9F4F      		sbci r25,lo8(-1)
389
 392 03cc 9093 0000 		sts (NickNoisePeak)+1,r25
390
 393 03d0 8093 0000 		sts NickNoisePeak,r24
391
 394 03d4 00C0      		rjmp .L8
392
 395               	.L19:
393
 396 03d6 8827      		clr r24
394
 397 03d8 9927      		clr r25
395
 398 03da DC01      		movw r26,r24
396
 399 03dc 821B      		sub r24,r18
397
 400 03de 930B      		sbc r25,r19
398
 401 03e0 A40B      		sbc r26,r20
399
 402 03e2 B50B      		sbc r27,r21
400
 403 03e4 8093 0000 		sts ReadingIntegralGyroRoll,r24
401
 404 03e8 9093 0000 		sts (ReadingIntegralGyroRoll)+1,r25
402
 405 03ec A093 0000 		sts (ReadingIntegralGyroRoll)+2,r26
403
 406 03f0 B093 0000 		sts (ReadingIntegralGyroRoll)+3,r27
404
 407 03f4 7C01      		movw r14,r24
405
 408 03f6 8D01      		movw r16,r26
406
 409 03f8 00C0      		rjmp .L16
407
 410               	.L18:
408
 411 03fa 2050      		subi r18,lo8(-(184320))
409
 412 03fc 3043      		sbci r19,hi8(-(184320))
410
 413 03fe 4D4F      		sbci r20,hlo8(-(184320))
411
 414 0400 5F4F      		sbci r21,hhi8(-(184320))
412
 415 0402 2093 0000 		sts YawGyroHeading,r18
413
 416 0406 3093 0000 		sts (YawGyroHeading)+1,r19
414
 417 040a 4093 0000 		sts (YawGyroHeading)+2,r20
415
 418 040e 5093 0000 		sts (YawGyroHeading)+3,r21
416
 419 0412 00C0      		rjmp .L12
417
 421               	.global	ParameterMapping
418
 423               	ParameterMapping:
419
 424               	/* prologue: function */
420
 425               	/* frame size = 0 */
421
 426 0414 8091 0000 		lds r24,RC_Quality
422
 427 0418 9091 0000 		lds r25,(RC_Quality)+1
423
 428 041c 813A      		cpi r24,161
424
 429 041e 9105      		cpc r25,__zero_reg__
425
 430 0420 04F0      		brlt .L162
426
 431 0422 8091 0000 		lds r24,ParamSet+11
427
 432 0426 8B3F      		cpi r24,lo8(-5)
428
 433 0428 00F4      		brsh .L169
429
 434 042a 8093 0000 		sts FCParam+1,r24
430
 435               	.L24:
431
 436 042e 8091 0000 		lds r24,ParamSet+10
432
 437 0432 8B3F      		cpi r24,lo8(-5)
433
 438 0434 00F0      		brlo .L27
434
 439 0436 8B3F      		cpi r24,lo8(-5)
435
 440 0438 01F4      		brne .+2
436
 441 043a 00C0      		rjmp .L170
437
 442 043c 8C3F      		cpi r24,lo8(-4)
438
 443 043e 01F4      		brne .+2
439
 444 0440 00C0      		rjmp .L171
440
 445 0442 8D3F      		cpi r24,lo8(-3)
441
 446 0444 01F4      		brne .+2
442
 447 0446 00C0      		rjmp .L172
443
 448 0448 8E3F      		cpi r24,lo8(-2)
444
 449 044a 01F4      		brne .L29
445
 450 044c 8091 0000 		lds r24,Poti4
446
 451 0450 8093 0000 		sts FCParam,r24
447
 452 0454 00C0      		rjmp .L29
448
 453               	.L157:
449
 454 0456 8093 0000 		sts FCParam+24,r24
450
 455               	.L159:
451
 456 045a 6091 0000 		lds r22,FCParam+9
452
 457 045e 70E0      		ldi r23,lo8(0)
453
 458 0460 6F5F      		subi r22,lo8(-(1))
454
 459 0462 7F4F      		sbci r23,hi8(-(1))
455
 460 0464 8CE3      		ldi r24,lo8(10300)
456
 461 0466 98E2      		ldi r25,hi8(10300)
457
 462 0468 0E94 0000 		call __divmodhi4
458
 463 046c 7093 0000 		sts (Ki)+1,r23
459
 464 0470 6093 0000 		sts Ki,r22
460
 465               	.L162:
461
 466 0474 0895      		ret
462
 467               	.L169:
463
 468 0476 8B3F      		cpi r24,lo8(-5)
464
 469 0478 01F4      		brne .+2
465
 470 047a 00C0      		rjmp .L173
466
 471 047c 8C3F      		cpi r24,lo8(-4)
467
 472 047e 01F4      		brne .+2
468
 473 0480 00C0      		rjmp .L174
469
 474 0482 8D3F      		cpi r24,lo8(-3)
470
 475 0484 01F4      		brne .+2
471
 476 0486 00C0      		rjmp .L175
472
 477 0488 8E3F      		cpi r24,lo8(-2)
473
 478 048a 01F4      		brne .L24
474
 479 048c 8091 0000 		lds r24,Poti4
475
 480 0490 8093 0000 		sts FCParam+1,r24
476
 481 0494 00C0      		rjmp .L24
477
 482               	.L27:
478
 483 0496 8093 0000 		sts FCParam,r24
479
 484               	.L29:
480
 485 049a 8091 0000 		lds r24,FCParam
481
 486 049e 8823      		tst r24
482
 487 04a0 01F4      		brne .L32
483
 488 04a2 1092 0000 		sts FCParam,__zero_reg__
484
 489               	.L33:
485
 490 04a6 8091 0000 		lds r24,ParamSet+12
486
 491 04aa 8B3F      		cpi r24,lo8(-5)
487
 492 04ac 00F0      		brlo .L34
488
 493               	.L179:
489
 494 04ae 8B3F      		cpi r24,lo8(-5)
490
 495 04b0 01F4      		brne .+2
491
 496 04b2 00C0      		rjmp .L176
492
 497 04b4 8C3F      		cpi r24,lo8(-4)
493
 498 04b6 01F4      		brne .+2
494
 499 04b8 00C0      		rjmp .L177
495
 500 04ba 8D3F      		cpi r24,lo8(-3)
496
 501 04bc 01F4      		brne .+2
497
 502 04be 00C0      		rjmp .L178
498
 503 04c0 8E3F      		cpi r24,lo8(-2)
499
 504 04c2 01F4      		brne .L36
500
 505 04c4 8091 0000 		lds r24,Poti4
501
 506 04c8 8093 0000 		sts FCParam+2,r24
502
 507 04cc 00C0      		rjmp .L36
503
 508               	.L32:
504
 509 04ce 8436      		cpi r24,lo8(100)
505
 510 04d0 00F0      		brlo .L33
506
 511 04d2 84E6      		ldi r24,lo8(100)
507
 512 04d4 8093 0000 		sts FCParam,r24
508
 513 04d8 8091 0000 		lds r24,ParamSet+12
509
 514 04dc 8B3F      		cpi r24,lo8(-5)
510
 515 04de 00F4      		brsh .L179
511
 516               	.L34:
512
 517 04e0 8093 0000 		sts FCParam+2,r24
513
 518               	.L36:
514
 519 04e4 8091 0000 		lds r24,FCParam+2
515
 520 04e8 8823      		tst r24
516
 521 04ea 01F4      		brne .L39
517
 522 04ec 1092 0000 		sts FCParam+2,__zero_reg__
518
 523               	.L40:
519
 524 04f0 8091 0000 		lds r24,ParamSet+14
520
 525 04f4 8B3F      		cpi r24,lo8(-5)
521
 526 04f6 00F0      		brlo .L41
522
 527               	.L183:
523
 528 04f8 8B3F      		cpi r24,lo8(-5)
524
 529 04fa 01F4      		brne .+2
525
 530 04fc 00C0      		rjmp .L180
526
 531 04fe 8C3F      		cpi r24,lo8(-4)
527
 532 0500 01F4      		brne .+2
528
 533 0502 00C0      		rjmp .L181
529
 534 0504 8D3F      		cpi r24,lo8(-3)
530
 535 0506 01F4      		brne .+2
531
 536 0508 00C0      		rjmp .L182
532
 537 050a 8E3F      		cpi r24,lo8(-2)
533
 538 050c 01F4      		brne .L43
534
 539 050e 8091 0000 		lds r24,Poti4
535
 540 0512 8093 0000 		sts FCParam+3,r24
536
 541 0516 00C0      		rjmp .L43
537
 542               	.L39:
538
 543 0518 8436      		cpi r24,lo8(100)
539
 544 051a 00F0      		brlo .L40
540
 545 051c 84E6      		ldi r24,lo8(100)
541
 546 051e 8093 0000 		sts FCParam+2,r24
542
 547 0522 8091 0000 		lds r24,ParamSet+14
543
 548 0526 8B3F      		cpi r24,lo8(-5)
544
 549 0528 00F4      		brsh .L183
545
 550               	.L41:
546
 551 052a 8093 0000 		sts FCParam+3,r24
547
 552               	.L43:
548
 553 052e 8091 0000 		lds r24,ParamSet+21
549
 554 0532 8B3F      		cpi r24,lo8(-5)
550
 555 0534 00F0      		brlo .L46
551
 556 0536 8B3F      		cpi r24,lo8(-5)
552
 557 0538 01F4      		brne .+2
553
 558 053a 00C0      		rjmp .L184
554
 559 053c 8C3F      		cpi r24,lo8(-4)
555
 560 053e 01F4      		brne .+2
556
 561 0540 00C0      		rjmp .L185
557
 562 0542 8D3F      		cpi r24,lo8(-3)
558
 563 0544 01F4      		brne .+2
559
 564 0546 00C0      		rjmp .L186
560
 565 0548 8E3F      		cpi r24,lo8(-2)
561
 566 054a 01F4      		brne .L48
562
 567 054c 8091 0000 		lds r24,Poti4
563
 568 0550 8093 0000 		sts FCParam+4,r24
564
 569 0554 00C0      		rjmp .L48
565
 570               	.L46:
566
 571 0556 8093 0000 		sts FCParam+4,r24
567
 572               	.L48:
568
 573 055a 8091 0000 		lds r24,ParamSet+22
569
 574 055e 8B3F      		cpi r24,lo8(-5)
570
 575 0560 00F0      		brlo .L51
571
 576 0562 8B3F      		cpi r24,lo8(-5)
572
 577 0564 01F4      		brne .+2
573
 578 0566 00C0      		rjmp .L187
574
 579 0568 8C3F      		cpi r24,lo8(-4)
575
 580 056a 01F4      		brne .+2
576
 581 056c 00C0      		rjmp .L188
577
 582 056e 8D3F      		cpi r24,lo8(-3)
578
 583 0570 01F4      		brne .+2
579
 584 0572 00C0      		rjmp .L189
580
 585 0574 8E3F      		cpi r24,lo8(-2)
581
 586 0576 01F4      		brne .L53
582
 587 0578 8091 0000 		lds r24,Poti4
583
 588 057c 8093 0000 		sts FCParam+6,r24
584
 589 0580 00C0      		rjmp .L53
585
 590               	.L51:
586
 591 0582 8093 0000 		sts FCParam+6,r24
587
 592               	.L53:
588
 593 0586 8091 0000 		lds r24,FCParam+6
589
 594 058a 8B30      		cpi r24,lo8(11)
590
 595 058c 00F4      		brsh .L56
591
 596 058e 8AE0      		ldi r24,lo8(10)
592
 597 0590 8093 0000 		sts FCParam+6,r24
593
 598               	.L57:
594
 599 0594 8091 0000 		lds r24,ParamSet+23
595
 600 0598 8B3F      		cpi r24,lo8(-5)
596
 601 059a 00F0      		brlo .L58
597
 602 059c 8B3F      		cpi r24,lo8(-5)
598
 603 059e 01F4      		brne .+2
599
 604 05a0 00C0      		rjmp .L190
600
 605 05a2 8C3F      		cpi r24,lo8(-4)
601
 606 05a4 01F4      		brne .+2
602
 607 05a6 00C0      		rjmp .L191
603
 608 05a8 8D3F      		cpi r24,lo8(-3)
604
 609 05aa 01F4      		brne .+2
605
 610 05ac 00C0      		rjmp .L192
606
 611 05ae 8E3F      		cpi r24,lo8(-2)
607
 612 05b0 01F4      		brne .L60
608
 613 05b2 8091 0000 		lds r24,Poti4
609
 614 05b6 8093 0000 		sts FCParam+7,r24
610
 615 05ba 00C0      		rjmp .L60
611
 616               	.L56:
612
 617 05bc 8F3F      		cpi r24,lo8(-1)
613
 618 05be 01F4      		brne .L57
614
 619 05c0 8093 0000 		sts FCParam+6,r24
615
 620 05c4 00C0      		rjmp .L57
616
 621               	.L58:
617
 622 05c6 8093 0000 		sts FCParam+7,r24
618
 623               	.L60:
619
 624 05ca 8091 0000 		lds r24,ParamSet+24
620
 625 05ce 8B3F      		cpi r24,lo8(-5)
621
 626 05d0 00F0      		brlo .L63
622
 627 05d2 8B3F      		cpi r24,lo8(-5)
623
 628 05d4 01F4      		brne .+2
624
 629 05d6 00C0      		rjmp .L193
625
 630 05d8 8C3F      		cpi r24,lo8(-4)
626
 631 05da 01F4      		brne .+2
627
 632 05dc 00C0      		rjmp .L194
628
 633 05de 8D3F      		cpi r24,lo8(-3)
629
 634 05e0 01F4      		brne .+2
630
 635 05e2 00C0      		rjmp .L195
631
 636 05e4 8E3F      		cpi r24,lo8(-2)
632
 637 05e6 01F4      		brne .L65
633
 638 05e8 8091 0000 		lds r24,Poti4
634
 639 05ec 8093 0000 		sts FCParam+5,r24
635
 640 05f0 00C0      		rjmp .L65
636
 641               	.L63:
637
 642 05f2 8093 0000 		sts FCParam+5,r24
638
 643               	.L65:
639
 644 05f6 8091 0000 		lds r24,ParamSet+29
640
 645 05fa 8B3F      		cpi r24,lo8(-5)
641
 646 05fc 00F0      		brlo .L68
642
 647 05fe 8B3F      		cpi r24,lo8(-5)
643
 648 0600 01F4      		brne .+2
644
 649 0602 00C0      		rjmp .L196
645
 650 0604 8C3F      		cpi r24,lo8(-4)
646
 651 0606 01F4      		brne .+2
647
 652 0608 00C0      		rjmp .L197
648
 653 060a 8D3F      		cpi r24,lo8(-3)
649
 654 060c 01F4      		brne .+2
650
 655 060e 00C0      		rjmp .L198
651
 656 0610 8E3F      		cpi r24,lo8(-2)
652
 657 0612 01F4      		brne .L70
653
 658 0614 8091 0000 		lds r24,Poti4
654
 659 0618 8093 0000 		sts FCParam+9,r24
655
 660 061c 00C0      		rjmp .L70
656
 661               	.L68:
657
 662 061e 8093 0000 		sts FCParam+9,r24
658
 663               	.L70:
659
 664 0622 8091 0000 		lds r24,ParamSet+30
660
 665 0626 8B3F      		cpi r24,lo8(-5)
661
 666 0628 00F0      		brlo .L73
662
 667 062a 8B3F      		cpi r24,lo8(-5)
663
 668 062c 01F4      		brne .+2
664
 669 062e 00C0      		rjmp .L199
665
 670 0630 8C3F      		cpi r24,lo8(-4)
666
 671 0632 01F4      		brne .+2
667
 672 0634 00C0      		rjmp .L200
668
 673 0636 8D3F      		cpi r24,lo8(-3)
669
 674 0638 01F4      		brne .+2
670
 675 063a 00C0      		rjmp .L201
671
 676 063c 8E3F      		cpi r24,lo8(-2)
672
 677 063e 01F4      		brne .L75
673
 678 0640 8091 0000 		lds r24,Poti4
674
 679 0644 8093 0000 		sts FCParam+10,r24
675
 680 0648 00C0      		rjmp .L75
676
 681               	.L73:
677
 682 064a 8093 0000 		sts FCParam+10,r24
678
 683               	.L75:
679
 684 064e 8091 0000 		lds r24,ParamSet+31
680
 685 0652 8B3F      		cpi r24,lo8(-5)
681
 686 0654 00F0      		brlo .L78
682
 687 0656 8B3F      		cpi r24,lo8(-5)
683
 688 0658 01F4      		brne .+2
684
 689 065a 00C0      		rjmp .L202
685
 690 065c 8C3F      		cpi r24,lo8(-4)
686
 691 065e 01F4      		brne .+2
687
 692 0660 00C0      		rjmp .L203
688
 693 0662 8D3F      		cpi r24,lo8(-3)
689
 694 0664 01F4      		brne .+2
690
 695 0666 00C0      		rjmp .L204
691
 696 0668 8E3F      		cpi r24,lo8(-2)
692
 697 066a 01F4      		brne .L80
693
 698 066c 8091 0000 		lds r24,Poti4
694
 699 0670 8093 0000 		sts FCParam+11,r24
695
 700 0674 00C0      		rjmp .L80
696
 701               	.L78:
697
 702 0676 8093 0000 		sts FCParam+11,r24
698
 703               	.L80:
699
 704 067a 8091 0000 		lds r24,ParamSet+32
700
 705 067e 8B3F      		cpi r24,lo8(-5)
701
 706 0680 00F0      		brlo .L83
702
 707 0682 8B3F      		cpi r24,lo8(-5)
703
 708 0684 01F4      		brne .+2
704
 709 0686 00C0      		rjmp .L205
705
 710 0688 8C3F      		cpi r24,lo8(-4)
706
 711 068a 01F4      		brne .+2
707
 712 068c 00C0      		rjmp .L206
708
 713 068e 8D3F      		cpi r24,lo8(-3)
709
 714 0690 01F4      		brne .+2
710
 715 0692 00C0      		rjmp .L207
711
 716 0694 8E3F      		cpi r24,lo8(-2)
712
 717 0696 01F4      		brne .L85
713
 718 0698 8091 0000 		lds r24,Poti4
714
 719 069c 8093 0000 		sts FCParam+12,r24
715
 720 06a0 00C0      		rjmp .L85
716
 721               	.L83:
717
 722 06a2 8093 0000 		sts FCParam+12,r24
718
 723               	.L85:
719
 724 06a6 8091 0000 		lds r24,ParamSet+33
720
 725 06aa 8B3F      		cpi r24,lo8(-5)
721
 726 06ac 00F0      		brlo .L88
722
 727 06ae 8B3F      		cpi r24,lo8(-5)
723
 728 06b0 01F4      		brne .+2
724
 729 06b2 00C0      		rjmp .L208
725
 730 06b4 8C3F      		cpi r24,lo8(-4)
726
 731 06b6 01F4      		brne .+2
727
 732 06b8 00C0      		rjmp .L209
728
 733 06ba 8D3F      		cpi r24,lo8(-3)
729
 734 06bc 01F4      		brne .+2
730
 735 06be 00C0      		rjmp .L210
731
 736 06c0 8E3F      		cpi r24,lo8(-2)
732
 737 06c2 01F4      		brne .L90
733
 738 06c4 8091 0000 		lds r24,Poti4
734
 739 06c8 8093 0000 		sts FCParam+13,r24
735
 740 06cc 00C0      		rjmp .L90
736
 741               	.L88:
737
 742 06ce 8093 0000 		sts FCParam+13,r24
738
 743               	.L90:
739
 744 06d2 8091 0000 		lds r24,ParamSet+50
740
 745 06d6 8B3F      		cpi r24,lo8(-5)
741
 746 06d8 00F0      		brlo .L93
742
 747 06da 8B3F      		cpi r24,lo8(-5)
743
 748 06dc 01F4      		brne .+2
744
 749 06de 00C0      		rjmp .L211
745
 750 06e0 8C3F      		cpi r24,lo8(-4)
746
 751 06e2 01F4      		brne .+2
747
 752 06e4 00C0      		rjmp .L212
748
 753 06e6 8D3F      		cpi r24,lo8(-3)
749
 754 06e8 01F4      		brne .+2
750
 755 06ea 00C0      		rjmp .L213
751
 756 06ec 8E3F      		cpi r24,lo8(-2)
752
 757 06ee 01F4      		brne .L95
753
 758 06f0 8091 0000 		lds r24,Poti4
754
 759 06f4 8093 0000 		sts FCParam+14,r24
755
 760 06f8 00C0      		rjmp .L95
756
 761               	.L93:
757
 762 06fa 8093 0000 		sts FCParam+14,r24
758
 763               	.L95:
759
 764 06fe 8091 0000 		lds r24,ParamSet+51
760
 765 0702 8B3F      		cpi r24,lo8(-5)
761
 766 0704 00F0      		brlo .L98
762
 767 0706 8B3F      		cpi r24,lo8(-5)
763
 768 0708 01F4      		brne .+2
764
 769 070a 00C0      		rjmp .L214
765
 770 070c 8C3F      		cpi r24,lo8(-4)
766
 771 070e 01F4      		brne .+2
767
 772 0710 00C0      		rjmp .L215
768
 773 0712 8D3F      		cpi r24,lo8(-3)
769
 774 0714 01F4      		brne .+2
770
 775 0716 00C0      		rjmp .L216
771
 776 0718 8E3F      		cpi r24,lo8(-2)
772
 777 071a 01F4      		brne .L100
773
 778 071c 8091 0000 		lds r24,Poti4
774
 779 0720 8093 0000 		sts FCParam+15,r24
775
 780 0724 00C0      		rjmp .L100
776
 781               	.L98:
777
 782 0726 8093 0000 		sts FCParam+15,r24
778
 783               	.L100:
779
 784 072a 8091 0000 		lds r24,ParamSet+52
780
 785 072e 8B3F      		cpi r24,lo8(-5)
781
 786 0730 00F0      		brlo .L103
782
 787 0732 8B3F      		cpi r24,lo8(-5)
783
 788 0734 01F4      		brne .+2
784
 789 0736 00C0      		rjmp .L217
785
 790 0738 8C3F      		cpi r24,lo8(-4)
786
 791 073a 01F4      		brne .+2
787
 792 073c 00C0      		rjmp .L218
788
 793 073e 8D3F      		cpi r24,lo8(-3)
789
 794 0740 01F4      		brne .+2
790
 795 0742 00C0      		rjmp .L219
791
 796 0744 8E3F      		cpi r24,lo8(-2)
792
 797 0746 01F4      		brne .L105
793
 798 0748 8091 0000 		lds r24,Poti4
794
 799 074c 8093 0000 		sts FCParam+16,r24
795
 800 0750 00C0      		rjmp .L105
796
 801               	.L103:
797
 802 0752 8093 0000 		sts FCParam+16,r24
798
 803               	.L105:
799
 804 0756 8091 0000 		lds r24,ParamSet+53
800
 805 075a 8B3F      		cpi r24,lo8(-5)
801
 806 075c 00F0      		brlo .L108
802
 807 075e 8B3F      		cpi r24,lo8(-5)
803
 808 0760 01F4      		brne .+2
804
 809 0762 00C0      		rjmp .L220
805
 810 0764 8C3F      		cpi r24,lo8(-4)
806
 811 0766 01F4      		brne .+2
807
 812 0768 00C0      		rjmp .L221
808
 813 076a 8D3F      		cpi r24,lo8(-3)
809
 814 076c 01F4      		brne .+2
810
 815 076e 00C0      		rjmp .L222
811
 816 0770 8E3F      		cpi r24,lo8(-2)
812
 817 0772 01F4      		brne .L110
813
 818 0774 8091 0000 		lds r24,Poti4
814
 819 0778 8093 0000 		sts FCParam+17,r24
815
 820 077c 00C0      		rjmp .L110
816
 821               	.L108:
817
 822 077e 8093 0000 		sts FCParam+17,r24
818
 823               	.L110:
819
 824 0782 8091 0000 		lds r24,ParamSet+34
820
 825 0786 8B3F      		cpi r24,lo8(-5)
821
 826 0788 00F0      		brlo .L113
822
 827 078a 8B3F      		cpi r24,lo8(-5)
823
 828 078c 01F4      		brne .+2
824
 829 078e 00C0      		rjmp .L223
825
 830 0790 8C3F      		cpi r24,lo8(-4)
826
 831 0792 01F4      		brne .+2
827
 832 0794 00C0      		rjmp .L224
828
 833 0796 8D3F      		cpi r24,lo8(-3)
829
 834 0798 01F4      		brne .+2
830
 835 079a 00C0      		rjmp .L225
831
 836 079c 8E3F      		cpi r24,lo8(-2)
832
 837 079e 01F4      		brne .L115
833
 838 07a0 8091 0000 		lds r24,Poti4
834
 839 07a4 8093 0000 		sts FCParam+18,r24
835
 840 07a8 00C0      		rjmp .L115
836
 841               	.L113:
837
 842 07aa 8093 0000 		sts FCParam+18,r24
838
 843               	.L115:
839
 844 07ae 8091 0000 		lds r24,ParamSet+39
840
 845 07b2 8B3F      		cpi r24,lo8(-5)
841
 846 07b4 00F0      		brlo .L118
842
 847 07b6 8B3F      		cpi r24,lo8(-5)
843
 848 07b8 01F4      		brne .+2
844
 849 07ba 00C0      		rjmp .L226
845
 850 07bc 8C3F      		cpi r24,lo8(-4)
846
 851 07be 01F4      		brne .+2
847
 852 07c0 00C0      		rjmp .L227
848
 853 07c2 8D3F      		cpi r24,lo8(-3)
849
 854 07c4 01F4      		brne .+2
850
 855 07c6 00C0      		rjmp .L228
851
 856 07c8 8E3F      		cpi r24,lo8(-2)
852
 857 07ca 01F4      		brne .L120
853
 858 07cc 8091 0000 		lds r24,Poti4
854
 859 07d0 8093 0000 		sts FCParam+19,r24
855
 860 07d4 00C0      		rjmp .L120
856
 861               	.L118:
857
 862 07d6 8093 0000 		sts FCParam+19,r24
858
 863               	.L120:
859
 864 07da 8091 0000 		lds r24,ParamSet+42
860
 865 07de 8B3F      		cpi r24,lo8(-5)
861
 866 07e0 00F0      		brlo .L123
862
 867 07e2 8B3F      		cpi r24,lo8(-5)
863
 868 07e4 01F4      		brne .+2
864
 869 07e6 00C0      		rjmp .L229
865
 870 07e8 8C3F      		cpi r24,lo8(-4)
866
 871 07ea 01F4      		brne .+2
867
 872 07ec 00C0      		rjmp .L230
868
 873 07ee 8D3F      		cpi r24,lo8(-3)
869
 874 07f0 01F4      		brne .+2
870
 875 07f2 00C0      		rjmp .L231
871
 876 07f4 8E3F      		cpi r24,lo8(-2)
872
 877 07f6 01F4      		brne .L125
873
 878 07f8 8091 0000 		lds r24,Poti4
874
 879 07fc 8093 0000 		sts FCParam+20,r24
875
 880 0800 00C0      		rjmp .L125
876
 881               	.L123:
877
 882 0802 8093 0000 		sts FCParam+20,r24
878
 883               	.L125:
879
 884 0806 8091 0000 		lds r24,ParamSet+43
880
 885 080a 8B3F      		cpi r24,lo8(-5)
881
 886 080c 00F0      		brlo .L128
882
 887 080e 8B3F      		cpi r24,lo8(-5)
883
 888 0810 01F4      		brne .+2
884
 889 0812 00C0      		rjmp .L232
885
 890 0814 8C3F      		cpi r24,lo8(-4)
886
 891 0816 01F4      		brne .+2
887
 892 0818 00C0      		rjmp .L233
888
 893 081a 8D3F      		cpi r24,lo8(-3)
889
 894 081c 01F4      		brne .+2
890
 895 081e 00C0      		rjmp .L234
891
 896 0820 8E3F      		cpi r24,lo8(-2)
892
 897 0822 01F4      		brne .L130
893
 898 0824 8091 0000 		lds r24,Poti4
894
 899 0828 8093 0000 		sts FCParam+21,r24
895
 900 082c 00C0      		rjmp .L130
896
 901               	.L128:
897
 902 082e 8093 0000 		sts FCParam+21,r24
898
 903               	.L130:
899
 904 0832 8091 0000 		lds r24,ParamSet+44
900
 905 0836 8B3F      		cpi r24,lo8(-5)
901
 906 0838 00F0      		brlo .L133
902
 907 083a 8B3F      		cpi r24,lo8(-5)
903
 908 083c 01F4      		brne .+2
904
 909 083e 00C0      		rjmp .L235
905
 910 0840 8C3F      		cpi r24,lo8(-4)
906
 911 0842 01F4      		brne .+2
907
 912 0844 00C0      		rjmp .L236
908
 913 0846 8D3F      		cpi r24,lo8(-3)
909
 914 0848 01F4      		brne .+2
910
 915 084a 00C0      		rjmp .L237
911
 916 084c 8E3F      		cpi r24,lo8(-2)
912
 917 084e 01F4      		brne .L135
913
 918 0850 8091 0000 		lds r24,Poti4
914
 919 0854 8093 0000 		sts FCParam+22,r24
915
 920 0858 00C0      		rjmp .L135
916
 921               	.L133:
917
 922 085a 8093 0000 		sts FCParam+22,r24
918
 923               	.L135:
919
 924 085e 8091 0000 		lds r24,ParamSet+49
920
 925 0862 8B3F      		cpi r24,lo8(-5)
921
 926 0864 00F0      		brlo .L138
922
 927 0866 8B3F      		cpi r24,lo8(-5)
923
 928 0868 01F4      		brne .+2
924
 929 086a 00C0      		rjmp .L238
925
 930 086c 8C3F      		cpi r24,lo8(-4)
926
 931 086e 01F4      		brne .+2
927
 932 0870 00C0      		rjmp .L239
928
 933 0872 8D3F      		cpi r24,lo8(-3)
929
 934 0874 01F4      		brne .+2
930
 935 0876 00C0      		rjmp .L240
931
 936 0878 8E3F      		cpi r24,lo8(-2)
932
 937 087a 01F4      		brne .L140
933
 938 087c 8091 0000 		lds r24,Poti4
934
 939 0880 8093 0000 		sts FCParam+23,r24
935
 940 0884 00C0      		rjmp .L140
936
 941               	.L138:
937
 942 0886 8093 0000 		sts FCParam+23,r24
938
 943               	.L140:
939
 944 088a 8091 0000 		lds r24,ParamSet+55
940
 945 088e 8B3F      		cpi r24,lo8(-5)
941
 946 0890 00F0      		brlo .L143
942
 947 0892 8B3F      		cpi r24,lo8(-5)
943
 948 0894 01F4      		brne .+2
944
 949 0896 00C0      		rjmp .L241
945
 950 0898 8C3F      		cpi r24,lo8(-4)
946
 951 089a 01F4      		brne .+2
947
 952 089c 00C0      		rjmp .L242
948
 953 089e 8D3F      		cpi r24,lo8(-3)
949
 954 08a0 01F4      		brne .+2
950
 955 08a2 00C0      		rjmp .L243
951
 956 08a4 8E3F      		cpi r24,lo8(-2)
952
 957 08a6 01F4      		brne .L145
953
 958 08a8 8091 0000 		lds r24,Poti4
954
 959 08ac 8093 0000 		sts FCParam+25,r24
955
 960 08b0 00C0      		rjmp .L145
956
 961               	.L143:
957
 962 08b2 8093 0000 		sts FCParam+25,r24
958
 963               	.L145:
959
 964 08b6 8091 0000 		lds r24,FCParam+25
960
 965 08ba 8230      		cpi r24,lo8(2)
961
 966 08bc 00F4      		brsh .+2
962
 967 08be 00C0      		rjmp .L244
963
 968 08c0 8F3F      		cpi r24,lo8(-1)
964
 969 08c2 01F4      		brne .+2
965
 970 08c4 00C0      		rjmp .L245
966
 971               	.L149:
967
 972 08c6 8091 0000 		lds r24,ParamSet+57
968
 973 08ca 8B3F      		cpi r24,lo8(-5)
969
 974 08cc 00F0      		brlo .L150
970
 975 08ce 8B3F      		cpi r24,lo8(-5)
971
 976 08d0 01F0      		breq .L246
972
 977 08d2 8C3F      		cpi r24,lo8(-4)
973
 978 08d4 01F4      		brne .+2
974
 979 08d6 00C0      		rjmp .L247
975
 980 08d8 8D3F      		cpi r24,lo8(-3)
976
 981 08da 01F4      		brne .+2
977
 982 08dc 00C0      		rjmp .L248
978
 983 08de 8E3F      		cpi r24,lo8(-2)
979
 984 08e0 01F4      		brne .L152
980
 985 08e2 8091 0000 		lds r24,Poti4
981
 986 08e6 8093 0000 		sts FCParam+26,r24
982
 987 08ea 00C0      		rjmp .L152
983
 988               	.L150:
984
 989 08ec 8093 0000 		sts FCParam+26,r24
985
 990               	.L152:
986
 991 08f0 8091 0000 		lds r24,FCParam+26
987
 992 08f4 8230      		cpi r24,lo8(2)
988
 993 08f6 00F4      		brsh .+2
989
 994 08f8 00C0      		rjmp .L249
990
 995 08fa 8F3F      		cpi r24,lo8(-1)
991
 996 08fc 01F4      		brne .+2
992
 997 08fe 00C0      		rjmp .L250
993
 998               	.L156:
994
 999 0900 8091 0000 		lds r24,ParamSet+74
995
 1000 0904 8B3F      		cpi r24,lo8(-5)
996
 1001 0906 00F4      		brsh .+2
997
 1002 0908 00C0      		rjmp .L157
998
 1003 090a 8B3F      		cpi r24,lo8(-5)
999
 1004 090c 01F4      		brne .+2
1000
 1005 090e 00C0      		rjmp .L251
1001
 1006 0910 8C3F      		cpi r24,lo8(-4)
1002
 1007 0912 01F4      		brne .+2
1003
 1008 0914 00C0      		rjmp .L252
1004
 1009 0916 8D3F      		cpi r24,lo8(-3)
1005
 1010 0918 01F4      		brne .+2
1006
 1011 091a 00C0      		rjmp .L253
1007
 1012 091c 8E3F      		cpi r24,lo8(-2)
1008
 1013 091e 01F0      		breq .+2
1009
 1014 0920 00C0      		rjmp .L159
1010
 1015 0922 8091 0000 		lds r24,Poti4
1011
 1016 0926 8093 0000 		sts FCParam+24,r24
1012
 1017 092a 00C0      		rjmp .L159
1013
 1018               	.L246:
1014
 1019 092c 8091 0000 		lds r24,Poti1
1015
 1020 0930 8093 0000 		sts FCParam+26,r24
1016
 1021 0934 00C0      		rjmp .L152
1017
 1022               	.L241:
1018
 1023 0936 8091 0000 		lds r24,Poti1
1019
 1024 093a 8093 0000 		sts FCParam+25,r24
1020
 1025 093e 00C0      		rjmp .L145
1021
 1026               	.L238:
1022
 1027 0940 8091 0000 		lds r24,Poti1
1023
 1028 0944 8093 0000 		sts FCParam+23,r24
1024
 1029 0948 00C0      		rjmp .L140
1025
 1030               	.L235:
1026
 1031 094a 8091 0000 		lds r24,Poti1
1027
 1032 094e 8093 0000 		sts FCParam+22,r24
1028
 1033 0952 00C0      		rjmp .L135
1029
 1034               	.L232:
1030
 1035 0954 8091 0000 		lds r24,Poti1
1031
 1036 0958 8093 0000 		sts FCParam+21,r24
1032
 1037 095c 00C0      		rjmp .L130
1033
 1038               	.L229:
1034
 1039 095e 8091 0000 		lds r24,Poti1
1035
 1040 0962 8093 0000 		sts FCParam+20,r24
1036
 1041 0966 00C0      		rjmp .L125
1037
 1042               	.L226:
1038
 1043 0968 8091 0000 		lds r24,Poti1
1039
 1044 096c 8093 0000 		sts FCParam+19,r24
1040
 1045 0970 00C0      		rjmp .L120
1041
 1046               	.L223:
1042
 1047 0972 8091 0000 		lds r24,Poti1
1043
 1048 0976 8093 0000 		sts FCParam+18,r24
1044
 1049 097a 00C0      		rjmp .L115
1045
 1050               	.L220:
1046
 1051 097c 8091 0000 		lds r24,Poti1
1047
 1052 0980 8093 0000 		sts FCParam+17,r24
1048
 1053 0984 00C0      		rjmp .L110
1049
 1054               	.L217:
1050
 1055 0986 8091 0000 		lds r24,Poti1
1051
 1056 098a 8093 0000 		sts FCParam+16,r24
1052
 1057 098e 00C0      		rjmp .L105
1053
 1058               	.L251:
1054
 1059 0990 8091 0000 		lds r24,Poti1
1055
 1060 0994 8093 0000 		sts FCParam+24,r24
1056
 1061 0998 00C0      		rjmp .L159
1057
 1062               	.L184:
1058
 1063 099a 8091 0000 		lds r24,Poti1
1059
 1064 099e 8093 0000 		sts FCParam+4,r24
1060
 1065 09a2 00C0      		rjmp .L48
1061
 1066               	.L190:
1062
 1067 09a4 8091 0000 		lds r24,Poti1
1063
 1068 09a8 8093 0000 		sts FCParam+7,r24
1064
 1069 09ac 00C0      		rjmp .L60
1065
 1070               	.L187:
1066
 1071 09ae 8091 0000 		lds r24,Poti1
1067
 1072 09b2 8093 0000 		sts FCParam+6,r24
1068
 1073 09b6 00C0      		rjmp .L53
1069
 1074               	.L173:
1070
 1075 09b8 8091 0000 		lds r24,Poti1
1071
 1076 09bc 8093 0000 		sts FCParam+1,r24
1072
 1077 09c0 00C0      		rjmp .L24
1073
 1078               	.L170:
1074
 1079 09c2 8091 0000 		lds r24,Poti1
1075
 1080 09c6 8093 0000 		sts FCParam,r24
1076
 1081 09ca 00C0      		rjmp .L29
1077
 1082               	.L176:
1078
 1083 09cc 8091 0000 		lds r24,Poti1
1079
 1084 09d0 8093 0000 		sts FCParam+2,r24
1080
 1085 09d4 00C0      		rjmp .L36
1081
 1086               	.L180:
1082
 1087 09d6 8091 0000 		lds r24,Poti1
1083
 1088 09da 8093 0000 		sts FCParam+3,r24
1084
 1089 09de 00C0      		rjmp .L43
1085
 1090               	.L193:
1086
 1091 09e0 8091 0000 		lds r24,Poti1
1087
 1092 09e4 8093 0000 		sts FCParam+5,r24
1088
 1093 09e8 00C0      		rjmp .L65
1089
 1094               	.L196:
1090
 1095 09ea 8091 0000 		lds r24,Poti1
1091
 1096 09ee 8093 0000 		sts FCParam+9,r24
1092
 1097 09f2 00C0      		rjmp .L70
1093
 1098               	.L202:
1094
 1099 09f4 8091 0000 		lds r24,Poti1
1095
 1100 09f8 8093 0000 		sts FCParam+11,r24
1096
 1101 09fc 00C0      		rjmp .L80
1097
 1102               	.L199:
1098
 1103 09fe 8091 0000 		lds r24,Poti1
1099
 1104 0a02 8093 0000 		sts FCParam+10,r24
1100
 1105 0a06 00C0      		rjmp .L75
1101
 1106               	.L214:
1102
 1107 0a08 8091 0000 		lds r24,Poti1
1103
 1108 0a0c 8093 0000 		sts FCParam+15,r24
1104
 1109 0a10 00C0      		rjmp .L100
1105
 1110               	.L211:
1106
 1111 0a12 8091 0000 		lds r24,Poti1
1107
 1112 0a16 8093 0000 		sts FCParam+14,r24
1108
 1113 0a1a 00C0      		rjmp .L95
1109
 1114               	.L208:
1110
 1115 0a1c 8091 0000 		lds r24,Poti1
1111
 1116 0a20 8093 0000 		sts FCParam+13,r24
1112
 1117 0a24 00C0      		rjmp .L90
1113
 1118               	.L205:
1114
 1119 0a26 8091 0000 		lds r24,Poti1
1115
 1120 0a2a 8093 0000 		sts FCParam+12,r24
1116
 1121 0a2e 00C0      		rjmp .L85
1117
 1122               	.L249:
1118
 1123 0a30 81E0      		ldi r24,lo8(1)
1119
 1124 0a32 8093 0000 		sts FCParam+26,r24
1120
 1125 0a36 00C0      		rjmp .L156
1121
 1126               	.L244:
1122
 1127 0a38 81E0      		ldi r24,lo8(1)
1123
 1128 0a3a 8093 0000 		sts FCParam+25,r24
1124
 1129 0a3e 00C0      		rjmp .L149
1125
 1130               	.L245:
1126
 1131 0a40 8093 0000 		sts FCParam+25,r24
1127
 1132 0a44 00C0      		rjmp .L149
1128
 1133               	.L250:
1129
 1134 0a46 8093 0000 		sts FCParam+26,r24
1130
 1135 0a4a 00C0      		rjmp .L156
1131
 1136               	.L177:
1132
 1137 0a4c 8091 0000 		lds r24,Poti2
1133
 1138 0a50 8093 0000 		sts FCParam+2,r24
1134
 1139 0a54 00C0      		rjmp .L36
1135
 1140               	.L171:
1136
 1141 0a56 8091 0000 		lds r24,Poti2
1137
 1142 0a5a 8093 0000 		sts FCParam,r24
1138
 1143 0a5e 00C0      		rjmp .L29
1139
 1144               	.L206:
1140
 1145 0a60 8091 0000 		lds r24,Poti2
1141
 1146 0a64 8093 0000 		sts FCParam+12,r24
1142
 1147 0a68 00C0      		rjmp .L85
1143
 1148               	.L212:
1144
 1149 0a6a 8091 0000 		lds r24,Poti2
1145
 1150 0a6e 8093 0000 		sts FCParam+14,r24
1146
 1151 0a72 00C0      		rjmp .L95
1147
 1152               	.L209:
1148
 1153 0a74 8091 0000 		lds r24,Poti2
1149
 1154 0a78 8093 0000 		sts FCParam+13,r24
1150
 1155 0a7c 00C0      		rjmp .L90
1151
 1156               	.L194:
1152
 1157 0a7e 8091 0000 		lds r24,Poti2
1153
 1158 0a82 8093 0000 		sts FCParam+5,r24
1154
 1159 0a86 00C0      		rjmp .L65
1155
 1160               	.L181:
1156
 1161 0a88 8091 0000 		lds r24,Poti2
1157
 1162 0a8c 8093 0000 		sts FCParam+3,r24
1158
 1163 0a90 00C0      		rjmp .L43
1159
 1164               	.L185:
1160
 1165 0a92 8091 0000 		lds r24,Poti2
1161
 1166 0a96 8093 0000 		sts FCParam+4,r24
1162
 1167 0a9a 00C0      		rjmp .L48
1163
 1168               	.L197:
1164
 1169 0a9c 8091 0000 		lds r24,Poti2
1165
 1170 0aa0 8093 0000 		sts FCParam+9,r24
1166
 1171 0aa4 00C0      		rjmp .L70
1167
 1172               	.L200:
1168
 1173 0aa6 8091 0000 		lds r24,Poti2
1169
 1174 0aaa 8093 0000 		sts FCParam+10,r24
1170
 1175 0aae 00C0      		rjmp .L75
1171
 1176               	.L203:
1172
 1177 0ab0 8091 0000 		lds r24,Poti2
1173
 1178 0ab4 8093 0000 		sts FCParam+11,r24
1174
 1179 0ab8 00C0      		rjmp .L80
1175
 1180               	.L227:
1176
 1181 0aba 8091 0000 		lds r24,Poti2
1177
 1182 0abe 8093 0000 		sts FCParam+19,r24
1178
 1183 0ac2 00C0      		rjmp .L120
1179
 1184               	.L233:
1180
 1185 0ac4 8091 0000 		lds r24,Poti2
1181
 1186 0ac8 8093 0000 		sts FCParam+21,r24
1182
 1187 0acc 00C0      		rjmp .L130
1183
 1188               	.L230:
1184
 1189 0ace 8091 0000 		lds r24,Poti2
1185
 1190 0ad2 8093 0000 		sts FCParam+20,r24
1186
 1191 0ad6 00C0      		rjmp .L125
1187
 1192               	.L218:
1188
 1193 0ad8 8091 0000 		lds r24,Poti2
1189
 1194 0adc 8093 0000 		sts FCParam+16,r24
1190
 1195 0ae0 00C0      		rjmp .L105
1191
 1196               	.L224:
1192
 1197 0ae2 8091 0000 		lds r24,Poti2
1193
 1198 0ae6 8093 0000 		sts FCParam+18,r24
1194
 1199 0aea 00C0      		rjmp .L115
1195
 1200               	.L221:
1196
 1201 0aec 8091 0000 		lds r24,Poti2
1197
 1202 0af0 8093 0000 		sts FCParam+17,r24
1198
 1203 0af4 00C0      		rjmp .L110
1199
 1204               	.L236:
1200
 1205 0af6 8091 0000 		lds r24,Poti2
1201
 1206 0afa 8093 0000 		sts FCParam+22,r24
1202
 1207 0afe 00C0      		rjmp .L135
1203
 1208               	.L215:
1204
 1209 0b00 8091 0000 		lds r24,Poti2
1205
 1210 0b04 8093 0000 		sts FCParam+15,r24
1206
 1211 0b08 00C0      		rjmp .L100
1207
 1212               	.L174:
1208
 1213 0b0a 8091 0000 		lds r24,Poti2
1209
 1214 0b0e 8093 0000 		sts FCParam+1,r24
1210
 1215 0b12 00C0      		rjmp .L24
1211
 1216               	.L191:
1212
 1217 0b14 8091 0000 		lds r24,Poti2
1213
 1218 0b18 8093 0000 		sts FCParam+7,r24
1214
 1219 0b1c 00C0      		rjmp .L60
1215
 1220               	.L188:
1216
 1221 0b1e 8091 0000 		lds r24,Poti2
1217
 1222 0b22 8093 0000 		sts FCParam+6,r24
1218
 1223 0b26 00C0      		rjmp .L53
1219
 1224               	.L252:
1220
 1225 0b28 8091 0000 		lds r24,Poti2
1221
 1226 0b2c 8093 0000 		sts FCParam+24,r24
1222
 1227 0b30 00C0      		rjmp .L159
1223
 1228               	.L247:
1224
 1229 0b32 8091 0000 		lds r24,Poti2
1225
 1230 0b36 8093 0000 		sts FCParam+26,r24
1226
 1231 0b3a 00C0      		rjmp .L152
1227
 1232               	.L242:
1228
 1233 0b3c 8091 0000 		lds r24,Poti2
1229
 1234 0b40 8093 0000 		sts FCParam+25,r24
1230
 1235 0b44 00C0      		rjmp .L145
1231
 1236               	.L239:
1232
 1237 0b46 8091 0000 		lds r24,Poti2
1233
 1238 0b4a 8093 0000 		sts FCParam+23,r24
1234
 1239 0b4e 00C0      		rjmp .L140
1235
 1240               	.L248:
1236
 1241 0b50 8091 0000 		lds r24,Poti3
1237
 1242 0b54 8093 0000 		sts FCParam+26,r24
1238
 1243 0b58 00C0      		rjmp .L152
1239
 1244               	.L253:
1240
 1245 0b5a 8091 0000 		lds r24,Poti3
1241
 1246 0b5e 8093 0000 		sts FCParam+24,r24
1242
 1247 0b62 00C0      		rjmp .L159
1243
 1248               	.L219:
1244
 1249 0b64 8091 0000 		lds r24,Poti3
1245
 1250 0b68 8093 0000 		sts FCParam+16,r24
1246
 1251 0b6c 00C0      		rjmp .L105
1247
 1252               	.L231:
1248
 1253 0b6e 8091 0000 		lds r24,Poti3
1249
 1254 0b72 8093 0000 		sts FCParam+20,r24
1250
 1255 0b76 00C0      		rjmp .L125
1251
 1256               	.L222:
1252
 1257 0b78 8091 0000 		lds r24,Poti3
1253
 1258 0b7c 8093 0000 		sts FCParam+17,r24
1254
 1259 0b80 00C0      		rjmp .L110
1255
 1260               	.L234:
1256
 1261 0b82 8091 0000 		lds r24,Poti3
1257
 1262 0b86 8093 0000 		sts FCParam+21,r24
1258
 1263 0b8a 00C0      		rjmp .L130
1259
 1264               	.L240:
1260
 1265 0b8c 8091 0000 		lds r24,Poti3
1261
 1266 0b90 8093 0000 		sts FCParam+23,r24
1262
 1267 0b94 00C0      		rjmp .L140
1263
 1268               	.L243:
1264
 1269 0b96 8091 0000 		lds r24,Poti3
1265
 1270 0b9a 8093 0000 		sts FCParam+25,r24
1266
 1271 0b9e 00C0      		rjmp .L145
1267
 1272               	.L225:
1268
 1273 0ba0 8091 0000 		lds r24,Poti3
1269
 1274 0ba4 8093 0000 		sts FCParam+18,r24
1270
 1275 0ba8 00C0      		rjmp .L115
1271
 1276               	.L237:
1272
 1277 0baa 8091 0000 		lds r24,Poti3
1273
 1278 0bae 8093 0000 		sts FCParam+22,r24
1274
 1279 0bb2 00C0      		rjmp .L135
1275
 1280               	.L178:
1276
 1281 0bb4 8091 0000 		lds r24,Poti3
1277
 1282 0bb8 8093 0000 		sts FCParam+2,r24
1278
 1283 0bbc 00C0      		rjmp .L36
1279
 1284               	.L201:
1280
 1285 0bbe 8091 0000 		lds r24,Poti3
1281
 1286 0bc2 8093 0000 		sts FCParam+10,r24
1282
 1287 0bc6 00C0      		rjmp .L75
1283
 1288               	.L186:
1284
 1289 0bc8 8091 0000 		lds r24,Poti3
1285
 1290 0bcc 8093 0000 		sts FCParam+4,r24
1286
 1291 0bd0 00C0      		rjmp .L48
1287
 1292               	.L207:
1288
 1293 0bd2 8091 0000 		lds r24,Poti3
1289
 1294 0bd6 8093 0000 		sts FCParam+12,r24
1290
 1295 0bda 00C0      		rjmp .L85
1291
 1296               	.L216:
1292
 1297 0bdc 8091 0000 		lds r24,Poti3
1293
 1298 0be0 8093 0000 		sts FCParam+15,r24
1294
 1299 0be4 00C0      		rjmp .L100
1295
 1300               	.L228:
1296
 1301 0be6 8091 0000 		lds r24,Poti3
1297
 1302 0bea 8093 0000 		sts FCParam+19,r24
1298
 1303 0bee 00C0      		rjmp .L120
1299
 1304               	.L192:
1300
 1305 0bf0 8091 0000 		lds r24,Poti3
1301
 1306 0bf4 8093 0000 		sts FCParam+7,r24
1302
 1307 0bf8 00C0      		rjmp .L60
1303
 1308               	.L213:
1304
 1309 0bfa 8091 0000 		lds r24,Poti3
1305
 1310 0bfe 8093 0000 		sts FCParam+14,r24
1306
 1311 0c02 00C0      		rjmp .L95
1307
 1312               	.L172:
1308
 1313 0c04 8091 0000 		lds r24,Poti3
1309
 1314 0c08 8093 0000 		sts FCParam,r24
1310
 1315 0c0c 00C0      		rjmp .L29
1311
 1316               	.L198:
1312
 1317 0c0e 8091 0000 		lds r24,Poti3
1313
 1318 0c12 8093 0000 		sts FCParam+9,r24
1314
 1319 0c16 00C0      		rjmp .L70
1315
 1320               	.L182:
1316
 1321 0c18 8091 0000 		lds r24,Poti3
1317
 1322 0c1c 8093 0000 		sts FCParam+3,r24
1318
 1323 0c20 00C0      		rjmp .L43
1319
 1324               	.L204:
1320
 1325 0c22 8091 0000 		lds r24,Poti3
1321
 1326 0c26 8093 0000 		sts FCParam+11,r24
1322
 1327 0c2a 00C0      		rjmp .L80
1323
 1328               	.L175:
1324
 1329 0c2c 8091 0000 		lds r24,Poti3
1325
 1330 0c30 8093 0000 		sts FCParam+1,r24
1326
 1331 0c34 00C0      		rjmp .L24
1327
 1332               	.L195:
1328
 1333 0c36 8091 0000 		lds r24,Poti3
1329
 1334 0c3a 8093 0000 		sts FCParam+5,r24
1330
 1335 0c3e 00C0      		rjmp .L65
1331
 1336               	.L189:
1332
 1337 0c40 8091 0000 		lds r24,Poti3
1333
 1338 0c44 8093 0000 		sts FCParam+6,r24
1334
 1339 0c48 00C0      		rjmp .L53
1335
 1340               	.L210:
1336
 1341 0c4a 8091 0000 		lds r24,Poti3
1337
 1342 0c4e 8093 0000 		sts FCParam+13,r24
1338
 1343 0c52 00C0      		rjmp .L90
1339
 1345               	.global	SendMotorData
1340
 1347               	SendMotorData:
1341
 1348               	/* prologue: function */
1342
 1349               	/* frame size = 0 */
1343
 1350 0c54 8091 0000 		lds r24,MKFlags
1344
 1351 0c58 80FD      		sbrc r24,0
1345
 1352 0c5a 00C0      		rjmp .L255
1346
 1353 0c5c 8091 0000 		lds r24,MKFlags
1347
 1354 0c60 857F      		andi r24,lo8(-11)
1348
 1355 0c62 8093 0000 		sts MKFlags,r24
1349
 1356 0c66 9091 0000 		lds r25,MotorTest_Active
1350
 1357 0c6a E0E0      		ldi r30,lo8(Motor)
1351
 1358 0c6c F0E0      		ldi r31,hi8(Motor)
1352
 1359 0c6e A0E0      		ldi r26,lo8(MotorTest)
1353
 1360 0c70 B0E0      		ldi r27,hi8(MotorTest)
1354
 1361 0c72 00C0      		rjmp .L258
1355
 1362               	.L263:
1356
 1363 0c74 1082      		st Z,__zero_reg__
1357
 1364 0c76 3596      		adiw r30,5
1358
 1365 0c78 1196      		adiw r26,1
1359
 1366 0c7a 80E0      		ldi r24,hi8(Motor+60)
1360
 1367 0c7c E030      		cpi r30,lo8(Motor+60)
1361
 1368 0c7e F807      		cpc r31,r24
1362
 1369 0c80 01F0      		breq .L262
1363
 1370               	.L258:
1364
 1371 0c82 9923      		tst r25
1365
 1372 0c84 01F0      		breq .L263
1366
 1373 0c86 8C91      		ld r24,X
1367
 1374 0c88 8083      		st Z,r24
1368
 1375 0c8a 3596      		adiw r30,5
1369
 1376 0c8c 1196      		adiw r26,1
1370
 1377 0c8e 80E0      		ldi r24,hi8(Motor+60)
1371
 1378 0c90 E030      		cpi r30,lo8(Motor+60)
1372
 1379 0c92 F807      		cpc r31,r24
1373
 1380 0c94 01F4      		brne .L258
1374
 1381               	.L262:
1375
 1382 0c96 9923      		tst r25
1376
 1383 0c98 01F0      		breq .L255
1377
 1384 0c9a 9150      		subi r25,lo8(-(-1))
1378
 1385 0c9c 9093 0000 		sts MotorTest_Active,r25
1379
 1386               	.L255:
1380
 1387 0ca0 E0E0      		ldi r30,lo8(DebugOut+26)
1381
 1388 0ca2 F0E0      		ldi r31,hi8(DebugOut+26)
1382
 1389 0ca4 8091 0000 		lds r24,Motor
1383
 1390 0ca8 8093 0000 		sts DebugOut+26,r24
1384
 1391 0cac 1092 0000 		sts DebugOut+27,__zero_reg__
1385
 1392 0cb0 8091 0000 		lds r24,Motor+5
1386
 1393 0cb4 8093 0000 		sts DebugOut+28,r24
1387
 1394 0cb8 1382      		std Z+3,__zero_reg__
1388
 1395 0cba 8091 0000 		lds r24,Motor+15
1389
 1396 0cbe 8093 0000 		sts DebugOut+30,r24
1390
 1397 0cc2 1582      		std Z+5,__zero_reg__
1391
 1398 0cc4 8091 0000 		lds r24,Motor+10
1392
 1399 0cc8 8093 0000 		sts DebugOut+32,r24
1393
 1400 0ccc 1782      		std Z+7,__zero_reg__
1394
 1401 0cce 80E0      		ldi r24,lo8(0)
1395
 1402 0cd0 0E94 0000 		call I2C_Start
1396
 1403               	/* epilogue start */
1397
 1404 0cd4 0895      		ret
1398
 1406               	.global	SetNeutral
1399
 1408               	SetNeutral:
1400
 1409 0cd6 1F93      		push r17
1401
 1410               	/* prologue: function */
1402
 1411               	/* frame size = 0 */
1403
 1412 0cd8 182F      		mov r17,r24
1404
 1413 0cda 0E94 0000 		call Servo_Off
1405
 1414 0cde 1092 0000 		sts FCParam+20,__zero_reg__
1406
 1415 0ce2 1092 0000 		sts FCParam+21,__zero_reg__
1407
 1416 0ce6 0E94 0000 		call analog_calibrate
1408
 1417 0cea 1092 0000 		sts (GyroNick)+1,__zero_reg__
1409
 1418 0cee 1092 0000 		sts GyroNick,__zero_reg__
1410
 1419 0cf2 1092 0000 		sts (GyroRoll)+1,__zero_reg__
1411
 1420 0cf6 1092 0000 		sts GyroRoll,__zero_reg__
1412
 1421 0cfa 1092 0000 		sts (GyroYaw)+1,__zero_reg__
1413
 1422 0cfe 1092 0000 		sts GyroYaw,__zero_reg__
1414
 1423 0d02 1092 0000 		sts IntegralGyroNick,__zero_reg__
1415
 1424 0d06 1092 0000 		sts (IntegralGyroNick)+1,__zero_reg__
1416
 1425 0d0a 1092 0000 		sts (IntegralGyroNick)+2,__zero_reg__
1417
 1426 0d0e 1092 0000 		sts (IntegralGyroNick)+3,__zero_reg__
1418
 1427 0d12 1092 0000 		sts ReadingIntegralGyroNick,__zero_reg__
1419
 1428 0d16 1092 0000 		sts (ReadingIntegralGyroNick)+1,__zero_reg__
1420
 1429 0d1a 1092 0000 		sts (ReadingIntegralGyroNick)+2,__zero_reg__
1421
 1430 0d1e 1092 0000 		sts (ReadingIntegralGyroNick)+3,__zero_reg__
1422
 1431 0d22 1092 0000 		sts IntegralGyroRoll,__zero_reg__
1423
 1432 0d26 1092 0000 		sts (IntegralGyroRoll)+1,__zero_reg__
1424
 1433 0d2a 1092 0000 		sts (IntegralGyroRoll)+2,__zero_reg__
1425
 1434 0d2e 1092 0000 		sts (IntegralGyroRoll)+3,__zero_reg__
1426
 1435 0d32 1092 0000 		sts ReadingIntegralGyroRoll,__zero_reg__
1427
 1436 0d36 1092 0000 		sts (ReadingIntegralGyroRoll)+1,__zero_reg__
1428
 1437 0d3a 1092 0000 		sts (ReadingIntegralGyroRoll)+2,__zero_reg__
1429
 1438 0d3e 1092 0000 		sts (ReadingIntegralGyroRoll)+3,__zero_reg__
1430
 1439 0d42 1092 0000 		sts IntegralGyroYaw,__zero_reg__
1431
 1440 0d46 1092 0000 		sts (IntegralGyroYaw)+1,__zero_reg__
1432
 1441 0d4a 1092 0000 		sts (IntegralGyroYaw)+2,__zero_reg__
1433
 1442 0d4e 1092 0000 		sts (IntegralGyroYaw)+3,__zero_reg__
1434
 1443 0d52 1092 0000 		sts ReadingIntegralGyroYaw,__zero_reg__
1435
 1444 0d56 1092 0000 		sts (ReadingIntegralGyroYaw)+1,__zero_reg__
1436
 1445 0d5a 1092 0000 		sts (ReadingIntegralGyroYaw)+2,__zero_reg__
1437
 1446 0d5e 1092 0000 		sts (ReadingIntegralGyroYaw)+3,__zero_reg__
1438
 1447 0d62 8091 0000 		lds r24,CompassHeading
1439
 1448 0d66 9091 0000 		lds r25,(CompassHeading)+1
1440
 1449 0d6a 9093 0000 		sts (CompassCourse)+1,r25
1441
 1450 0d6e 8093 0000 		sts CompassCourse,r24
1442
 1451 0d72 AA27      		clr r26
1443
 1452 0d74 97FD      		sbrc r25,7
1444
 1453 0d76 A095      		com r26
1445
 1454 0d78 BA2F      		mov r27,r26
1446
 1455 0d7a 59E0      		ldi r21,9
1447
 1456 0d7c 880F      	1:	lsl r24
1448
 1457 0d7e 991F      		rol r25
1449
 1458 0d80 AA1F      		rol r26
1450
 1459 0d82 BB1F      		rol r27
1451
 1460 0d84 5A95      		dec r21
1452
 1461 0d86 01F4      		brne 1b
1453
 1462 0d88 8093 0000 		sts YawGyroHeading,r24
1454
 1463 0d8c 9093 0000 		sts (YawGyroHeading)+1,r25
1455
 1464 0d90 A093 0000 		sts (YawGyroHeading)+2,r26
1456
 1465 0d94 B093 0000 		sts (YawGyroHeading)+3,r27
1457
 1466 0d98 82E3      		ldi r24,lo8(50)
1458
 1467 0d9a 90E0      		ldi r25,hi8(50)
1459
 1468 0d9c 9093 0000 		sts (BeepTime)+1,r25
1460
 1469 0da0 8093 0000 		sts BeepTime,r24
1461
 1470 0da4 1092 0000 		sts (GPSStickNick)+1,__zero_reg__
1462
 1471 0da8 1092 0000 		sts GPSStickNick,__zero_reg__
1463
 1472 0dac 1092 0000 		sts (GPSStickRoll)+1,__zero_reg__
1464
 1473 0db0 1092 0000 		sts GPSStickRoll,__zero_reg__
1465
 1474 0db4 8091 0000 		lds r24,MKFlags
1466
 1475 0db8 8460      		ori r24,lo8(4)
1467
 1476 0dba 8093 0000 		sts MKFlags,r24
1468
 1477 0dbe 8FEF      		ldi r24,lo8(-1)
1469
 1478 0dc0 8093 0000 		sts FCParam+27,r24
1470
 1479 0dc4 1092 0000 		sts FCParam+28,__zero_reg__
1471
 1480 0dc8 80E2      		ldi r24,lo8(32)
1472
 1481 0dca 8093 0000 		sts FCParam+29,r24
1473
 1482 0dce E091 0000 		lds r30,ParamSet+4
1474
 1483 0dd2 F0E0      		ldi r31,lo8(0)
1475
 1484 0dd4 EE0F      		lsl r30
1476
 1485 0dd6 FF1F      		rol r31
1477
 1486 0dd8 E050      		subi r30,lo8(-(PPM_in))
1478
 1487 0dda F040      		sbci r31,hi8(-(PPM_in))
1479
 1488 0ddc 8081      		ld r24,Z
1480
 1489 0dde 9181      		ldd r25,Z+1
1481
 1490 0de0 8259      		subi r24,lo8(-(110))
1482
 1491 0de2 9F4F      		sbci r25,hi8(-(110))
1483
 1492 0de4 9093 0000 		sts (Poti1)+1,r25
1484
 1493 0de8 8093 0000 		sts Poti1,r24
1485
 1494 0dec E091 0000 		lds r30,ParamSet+5
1486
 1495 0df0 F0E0      		ldi r31,lo8(0)
1487
 1496 0df2 EE0F      		lsl r30
1488
 1497 0df4 FF1F      		rol r31
1489
 1498 0df6 E050      		subi r30,lo8(-(PPM_in))
1490
 1499 0df8 F040      		sbci r31,hi8(-(PPM_in))
1491
 1500 0dfa 8081      		ld r24,Z
1492
 1501 0dfc 9181      		ldd r25,Z+1
1493
 1502 0dfe 8259      		subi r24,lo8(-(110))
1494
 1503 0e00 9F4F      		sbci r25,hi8(-(110))
1495
 1504 0e02 9093 0000 		sts (Poti2)+1,r25
1496
 1505 0e06 8093 0000 		sts Poti2,r24
1497
 1506 0e0a E091 0000 		lds r30,ParamSet+6
1498
 1507 0e0e F0E0      		ldi r31,lo8(0)
1499
 1508 0e10 EE0F      		lsl r30
1500
 1509 0e12 FF1F      		rol r31
1501
 1510 0e14 E050      		subi r30,lo8(-(PPM_in))
1502
 1511 0e16 F040      		sbci r31,hi8(-(PPM_in))
1503
 1512 0e18 8081      		ld r24,Z
1504
 1513 0e1a 9181      		ldd r25,Z+1
1505
 1514 0e1c 8259      		subi r24,lo8(-(110))
1506
 1515 0e1e 9F4F      		sbci r25,hi8(-(110))
1507
 1516 0e20 9093 0000 		sts (Poti3)+1,r25
1508
 1517 0e24 8093 0000 		sts Poti3,r24
1509
 1518 0e28 E091 0000 		lds r30,ParamSet+7
1510
 1519 0e2c F0E0      		ldi r31,lo8(0)
1511
 1520 0e2e EE0F      		lsl r30
1512
 1521 0e30 FF1F      		rol r31
1513
 1522 0e32 E050      		subi r30,lo8(-(PPM_in))
1514
 1523 0e34 F040      		sbci r31,hi8(-(PPM_in))
1515
 1524 0e36 8081      		ld r24,Z
1516
 1525 0e38 9181      		ldd r25,Z+1
1517
 1526 0e3a 8259      		subi r24,lo8(-(110))
1518
 1527 0e3c 9F4F      		sbci r25,hi8(-(110))
1519
 1528 0e3e 9093 0000 		sts (Poti4)+1,r25
1520
 1529 0e42 8093 0000 		sts Poti4,r24
1521
 1530 0e46 1123      		tst r17
1522
 1531 0e48 01F0      		breq .L265
1523
 1532 0e4a 8091 0000 		lds r24,stickOffsetNick
1524
 1533 0e4e 9091 0000 		lds r25,(stickOffsetNick)+1
1525
 1534 0e52 2091 0000 		lds r18,StickNick
1526
 1535 0e56 3091 0000 		lds r19,(StickNick)+1
1527
 1536 0e5a 820F      		add r24,r18
1528
 1537 0e5c 931F      		adc r25,r19
1529
 1538 0e5e 9093 0000 		sts (stickOffsetNick)+1,r25
1530
 1539 0e62 8093 0000 		sts stickOffsetNick,r24
1531
 1540 0e66 8091 0000 		lds r24,stickOffsetRoll
1532
 1541 0e6a 9091 0000 		lds r25,(stickOffsetRoll)+1
1533
 1542 0e6e 2091 0000 		lds r18,StickRoll
1534
 1543 0e72 3091 0000 		lds r19,(StickRoll)+1
1535
 1544 0e76 820F      		add r24,r18
1536
 1545 0e78 931F      		adc r25,r19
1537
 1546 0e7a 9093 0000 		sts (stickOffsetRoll)+1,r25
1538
 1547 0e7e 8093 0000 		sts stickOffsetRoll,r24
1539
 1548               	.L265:
1540
 1549 0e82 0E94 0000 		call Servo_On
1541
 1550 0e86 84E6      		ldi r24,lo8(100)
1542
 1551 0e88 90E0      		ldi r25,hi8(100)
1543
 1552 0e8a 9093 0000 		sts (RC_Quality)+1,r25
1544
 1553 0e8e 8093 0000 		sts RC_Quality,r24
1545
 1554               	/* epilogue start */
1546
 1555 0e92 1F91      		pop r17
1547
 1556 0e94 0895      		ret
1548
 1558               	.global	Beep
1549
 1560               	Beep:
1550
 1561 0e96 1F93      		push r17
1551
 1562 0e98 CF93      		push r28
1552
 1563 0e9a DF93      		push r29
1553
 1564               	/* prologue: function */
1554
 1565               	/* frame size = 0 */
1555
 1566 0e9c 982F      		mov r25,r24
1556
 1567 0e9e 8823      		tst r24
1557
 1568 0ea0 01F0      		breq .L271
1558
 1569 0ea2 8091 0000 		lds r24,MKFlags
1559
 1570 0ea6 80FD      		sbrc r24,0
1560
 1571 0ea8 00C0      		rjmp .L271
1561
 1572 0eaa 192F      		mov r17,r25
1562
 1573 0eac 1150      		subi r17,lo8(-(-1))
1563
 1574 0eae C4E6      		ldi r28,lo8(100)
1564
 1575 0eb0 D0E0      		ldi r29,hi8(100)
1565
 1576 0eb2 00C0      		rjmp .L269
1566
 1577               	.L270:
1567
 1578 0eb4 8091 0000 		lds r24,MKFlags
1568
 1579 0eb8 1150      		subi r17,lo8(-(-1))
1569
 1580 0eba 80FD      		sbrc r24,0
1570
 1581 0ebc 00C0      		rjmp .L271
1571
 1582               	.L269:
1572
 1583 0ebe D093 0000 		sts (BeepTime)+1,r29
1573
 1584 0ec2 C093 0000 		sts BeepTime,r28
1574
 1585 0ec6 8AEF      		ldi r24,lo8(250)
1575
 1586 0ec8 90E0      		ldi r25,hi8(250)
1576
 1587 0eca 0E94 0000 		call Delay_ms
1577
 1588 0ece 1123      		tst r17
1578
 1589 0ed0 01F4      		brne .L270
1579
 1590               	.L271:
1580
 1591               	/* epilogue start */
1581
 1592 0ed2 DF91      		pop r29
1582
 1593 0ed4 CF91      		pop r28
1583
 1594 0ed6 1F91      		pop r17
1584
 1595 0ed8 0895      		ret
1585
 1597               	.global	SetCompassCalState
1586
 1599               	SetCompassCalState:
1587
 1600               	/* prologue: function */
1588
 1601               	/* frame size = 0 */
1589
 1602 0eda 8091 0000 		lds r24,ParamSet
1590
 1603 0ede A82F      		mov r26,r24
1591
 1604 0ee0 B0E0      		ldi r27,lo8(0)
1592
 1605 0ee2 AA0F      		lsl r26
1593
 1606 0ee4 BB1F      		rol r27
1594
 1607 0ee6 FD01      		movw r30,r26
1595
 1608 0ee8 E050      		subi r30,lo8(-(PPM_in))
1596
 1609 0eea F040      		sbci r31,hi8(-(PPM_in))
1597
 1610 0eec 8081      		ld r24,Z
1598
 1611 0eee 9181      		ldd r25,Z+1
1599
 1612 0ef0 8D5E      		subi r24,lo8(-19)
1600
 1613 0ef2 9F4F      		sbci r25,hi8(-19)
1601
 1614 0ef4 04F0      		brlt .L273
1602
 1615 0ef6 1092 0000 		sts stick.1951,__zero_reg__
1603
 1616               	.L273:
1604
 1617 0efa A050      		subi r26,lo8(-(PPM_in))
1605
 1618 0efc B040      		sbci r27,hi8(-(PPM_in))
1606
 1619 0efe 8D91      		ld r24,X+
1607
 1620 0f00 9C91      		ld r25,X
1608
 1621 0f02 8A5B      		subi r24,lo8(-70)
1609
 1622 0f04 9F4F      		sbci r25,hi8(-70)
1610
 1623 0f06 04F4      		brge .L276
1611
 1624 0f08 8091 0000 		lds r24,stick.1951
1612
 1625 0f0c 8823      		tst r24
1613
 1626 0f0e 01F4      		brne .L276
1614
 1627 0f10 81E0      		ldi r24,lo8(1)
1615
 1628 0f12 8093 0000 		sts stick.1951,r24
1616
 1629 0f16 8091 0000 		lds r24,CompassCalState
1617
 1630 0f1a 8F5F      		subi r24,lo8(-(1))
1618
 1631 0f1c 8093 0000 		sts CompassCalState,r24
1619
 1632 0f20 8530      		cpi r24,lo8(5)
1620
 1633 0f22 00F0      		brlo .L277
1621
 1634 0f24 88EE      		ldi r24,lo8(1000)
1622
 1635 0f26 93E0      		ldi r25,hi8(1000)
1623
 1636 0f28 9093 0000 		sts (BeepTime)+1,r25
1624
 1637 0f2c 8093 0000 		sts BeepTime,r24
1625
 1638               	.L276:
1626
 1639 0f30 0895      		ret
1627
 1640               	.L277:
1628
 1641 0f32 0E94 0000 		call Beep
1629
 1642 0f36 0895      		ret
1630
 1644               	.global	MotorControl
1631
 1646               	MotorControl:
1632
 1647 0f38 2F92      		push r2
1633
 1648 0f3a 3F92      		push r3
1634
 1649 0f3c 4F92      		push r4
1635
 1650 0f3e 5F92      		push r5
1636
 1651 0f40 6F92      		push r6
1637
 1652 0f42 7F92      		push r7
1638
 1653 0f44 8F92      		push r8
1639
 1654 0f46 9F92      		push r9
1640
 1655 0f48 AF92      		push r10
1641
 1656 0f4a BF92      		push r11
1642
 1657 0f4c CF92      		push r12
1643
 1658 0f4e DF92      		push r13
1644
 1659 0f50 EF92      		push r14
1645
 1660 0f52 FF92      		push r15
1646
 1661 0f54 0F93      		push r16
1647
 1662 0f56 1F93      		push r17
1648
 1663 0f58 DF93      		push r29
1649
 1664 0f5a CF93      		push r28
1650
 1665 0f5c CDB7      		in r28,__SP_L__
1651
 1666 0f5e DEB7      		in r29,__SP_H__
1652
 1667 0f60 6B97      		sbiw r28,27
1653
 1668 0f62 0FB6      		in __tmp_reg__,__SREG__
1654
 1669 0f64 F894      		cli
1655
 1670 0f66 DEBF      		out __SP_H__,r29
1656
 1671 0f68 0FBE      		out __SREG__,__tmp_reg__
1657
 1672 0f6a CDBF      		out __SP_L__,r28
1658
 1673               	/* prologue: function */
1659
 1674               	/* frame size = 27 */
1660
 1675 0f6c 0E94 0000 		call Mean
1661
 1676 0f70 D090 0000 		lds r13,BoardRelease
1662
 1677 0f74 2BE0      		ldi r18,lo8(11)
1663
 1678 0f76 2D15      		cp r18,r13
1664
 1679 0f78 00F4      		brsh .+4
1665
 1680 0f7a 0C94 0000 		jmp .L279
1666
 1681 0f7e 299A      		sbi 37-0x20,1
1667
 1682               	.L280:
1668
 1683 0f80 4091 0000 		lds r20,StickGas
1669
 1684 0f84 5091 0000 		lds r21,(StickGas)+1
1670
 1685 0f88 5887      		std Y+8,r21
1671
 1686 0f8a 4F83      		std Y+7,r20
1672
 1687 0f8c 8091 0000 		lds r24,ParamSet+18
1673
 1688 0f90 282F      		mov r18,r24
1674
 1689 0f92 30E0      		ldi r19,lo8(0)
1675
 1690 0f94 C901      		movw r24,r18
1676
 1691 0f96 0996      		adiw r24,9
1677
 1692 0f98 8417      		cp r24,r20
1678
 1693 0f9a 9507      		cpc r25,r21
1679
 1694 0f9c 04F0      		brlt .L281
1680
 1695 0f9e B901      		movw r22,r18
1681
 1696 0fa0 665F      		subi r22,lo8(-(10))
1682
 1697 0fa2 7F4F      		sbci r23,hi8(-(10))
1683
 1698 0fa4 7887      		std Y+8,r23
1684
 1699 0fa6 6F83      		std Y+7,r22
1685
 1700               	.L281:
1686
 1701 0fa8 8091 0000 		lds r24,RC_Quality
1687
 1702 0fac 9091 0000 		lds r25,(RC_Quality)+1
1688
 1703 0fb0 8837      		cpi r24,120
1689
 1704 0fb2 9105      		cpc r25,__zero_reg__
1690
 1705 0fb4 04F0      		brlt .+2
1691
 1706 0fb6 00C0      		rjmp .L282
1692
 1707 0fb8 8091 0000 		lds r24,PcAccess
1693
 1708 0fbc 8823      		tst r24
1694
 1709 0fbe 01F4      		brne .L283
1695
 1710 0fc0 8091 0000 		lds r24,BeepModulation
1696
 1711 0fc4 9091 0000 		lds r25,(BeepModulation)+1
1697
 1712 0fc8 8F5F      		subi r24,lo8(-1)
1698
 1713 0fca 9F4F      		sbci r25,hi8(-1)
1699
 1714 0fcc 01F4      		brne .+4
1700
 1715 0fce 0C94 0000 		jmp .L481
1701
 1716               	.L283:
1702
 1717 0fd2 8091 0000 		lds r24,RcLostTimer.1981
1703
 1718 0fd6 9091 0000 		lds r25,(RcLostTimer.1981)+1
1704
 1719 0fda 0097      		sbiw r24,0
1705
 1720 0fdc 01F0      		breq .+4
1706
 1721 0fde 0C94 0000 		jmp .L482
1707
 1722 0fe2 8091 0000 		lds r24,MKFlags
1708
 1723 0fe6 8E7E      		andi r24,lo8(-18)
1709
 1724 0fe8 8093 0000 		sts MKFlags,r24
1710
 1725 0fec 8AE0      		ldi r24,lo8(10)
1711
 1726 0fee D816      		cp r13,r24
1712
 1727 0ff0 01F4      		brne .+4
1713
 1728 0ff2 0C94 0000 		jmp .L286
1714
 1729               	.L541:
1715
 1730 0ff6 94E1      		ldi r25,lo8(20)
1716
 1731 0ff8 D916      		cp r13,r25
1717
 1732 0ffa 01F4      		brne .+4
1718
 1733 0ffc 0C94 0000 		jmp .L286
1719
 1734 1000 2898      		cbi 37-0x20,0
1720
 1735               	.L288:
1721
 1736 1002 8091 0000 		lds r24,ModelIsFlying
1722
 1737 1006 9091 0000 		lds r25,(ModelIsFlying)+1
1723
 1738 100a 895E      		subi r24,lo8(1001)
1724
 1739 100c 9340      		sbci r25,hi8(1001)
1725
 1740 100e 00F4      		brsh .+4
1726
 1741 1010 0C94 0000 		jmp .L478
1727
 1742 1014 8091 0000 		lds r24,ParamSet+26
1728
 1743 1018 282F      		mov r18,r24
1729
 1744 101a 30E0      		ldi r19,lo8(0)
1730
 1745 101c 3887      		std Y+8,r19
1731
 1746 101e 2F83      		std Y+7,r18
1732
 1747 1020 8091 0000 		lds r24,MKFlags
1733
 1748 1024 8061      		ori r24,lo8(16)
1734
 1749 1026 8093 0000 		sts MKFlags,r24
1735
 1750 102a E091 0000 		lds r30,ParamSet
1736
 1751 102e 2E2F      		mov r18,r30
1737
 1752 1030 30E0      		ldi r19,lo8(0)
1738
 1753 1032 220F      		lsl r18
1739
 1754 1034 331F      		rol r19
1740
 1755 1036 F901      		movw r30,r18
1741
 1756 1038 E050      		subi r30,lo8(-(PPM_diff))
1742
 1757 103a F040      		sbci r31,hi8(-(PPM_diff))
1743
 1758 103c 1182      		std Z+1,__zero_reg__
1744
 1759 103e 1082      		st Z,__zero_reg__
1745
 1760 1040 A091 0000 		lds r26,ParamSet+1
1746
 1761 1044 B0E0      		ldi r27,lo8(0)
1747
 1762 1046 AA0F      		lsl r26
1748
 1763 1048 BB1F      		rol r27
1749
 1764 104a FD01      		movw r30,r26
1750
 1765 104c E050      		subi r30,lo8(-(PPM_diff))
1751
 1766 104e F040      		sbci r31,hi8(-(PPM_diff))
1752
 1767 1050 1182      		std Z+1,__zero_reg__
1753
 1768 1052 1082      		st Z,__zero_reg__
1754
 1769 1054 E091 0000 		lds r30,ParamSet+3
1755
 1770 1058 4E2F      		mov r20,r30
1756
 1771 105a 50E0      		ldi r21,lo8(0)
1757
 1772 105c 440F      		lsl r20
1758
 1773 105e 551F      		rol r21
1759
 1774 1060 CA01      		movw r24,r20
1760
 1775 1062 8050      		subi r24,lo8(-(PPM_diff))
1761
 1776 1064 9040      		sbci r25,hi8(-(PPM_diff))
1762
 1777 1066 FC01      		movw r30,r24
1763
 1778 1068 1182      		std Z+1,__zero_reg__
1764
 1779 106a 1082      		st Z,__zero_reg__
1765
 1780 106c 2050      		subi r18,lo8(-(PPM_in))
1766
 1781 106e 3040      		sbci r19,hi8(-(PPM_in))
1767
 1782 1070 F901      		movw r30,r18
1768
 1783 1072 1182      		std Z+1,__zero_reg__
1769
 1784 1074 1082      		st Z,__zero_reg__
1770
 1785 1076 A050      		subi r26,lo8(-(PPM_in))
1771
 1786 1078 B040      		sbci r27,hi8(-(PPM_in))
1772
 1787 107a 1196      		adiw r26,1
1773
 1788 107c 1C92      		st X,__zero_reg__
1774
 1789 107e 1E92      		st -X,__zero_reg__
1775
 1790 1080 4050      		subi r20,lo8(-(PPM_in))
1776
 1791 1082 5040      		sbci r21,hi8(-(PPM_in))
1777
 1792 1084 FA01      		movw r30,r20
1778
 1793 1086 1182      		std Z+1,__zero_reg__
1779
 1794 1088 1082      		st Z,__zero_reg__
1780
 1795               	.L290:
1781
 1796 108a 8091 0000 		lds r24,NewPpmData
1782
 1797 108e 8150      		subi r24,lo8(-(-1))
1783
 1798 1090 8093 0000 		sts NewPpmData,r24
1784
 1799 1094 8F5F      		subi r24,lo8(-(1))
1785
 1800 1096 01F4      		brne .+2
1786
 1801 1098 00C0      		rjmp .L355
1787
 1802 109a 8091 0000 		lds r24,MKFlags
1788
 1803 109e 84FD      		sbrc r24,4
1789
 1804 10a0 00C0      		rjmp .L355
1790
 1805               	.L356:
1791
 1806 10a2 8091 0000 		lds r24,LoopingRoll
1792
 1807 10a6 8823      		tst r24
1793
 1808 10a8 01F0      		breq .+4
1794
 1809 10aa 0C94 0000 		jmp .L386
1795
 1810               	.L528:
1796
 1811 10ae 8091 0000 		lds r24,LoopingNick
1797
 1812 10b2 8823      		tst r24
1798
 1813 10b4 01F0      		breq .+4
1799
 1814 10b6 0C94 0000 		jmp .L386
1800
 1815               	.L387:
1801
 1816 10ba 8091 0000 		lds r24,MKFlags
1802
 1817 10be 84FF      		sbrs r24,4
1803
 1818 10c0 00C0      		rjmp .L389
1804
 1819 10c2 1092 0000 		sts (StickYaw)+1,__zero_reg__
1805
 1820 10c6 1092 0000 		sts StickYaw,__zero_reg__
1806
 1821 10ca 1092 0000 		sts (StickNick)+1,__zero_reg__
1807
 1822 10ce 1092 0000 		sts StickNick,__zero_reg__
1808
 1823 10d2 1092 0000 		sts (StickRoll)+1,__zero_reg__
1809
 1824 10d6 1092 0000 		sts StickRoll,__zero_reg__
1810
 1825 10da 9AE5      		ldi r25,lo8(90)
1811
 1826 10dc 9093 0000 		sts GyroPFactor,r25
1812
 1827 10e0 88E7      		ldi r24,lo8(120)
1813
 1828 10e2 8093 0000 		sts GyroIFactor,r24
1814
 1829 10e6 9093 0000 		sts GyroYawPFactor,r25
1815
 1830 10ea 8093 0000 		sts GyroYawIFactor,r24
1816
 1831 10ee 1092 0000 		sts LoopingRoll,__zero_reg__
1817
 1832 10f2 1092 0000 		sts LoopingNick,__zero_reg__
1818
 1833 10f6 1092 0000 		sts (MaxStickNick)+1,__zero_reg__
1819
 1834 10fa 1092 0000 		sts MaxStickNick,__zero_reg__
1820
 1835 10fe 1092 0000 		sts (MaxStickRoll)+1,__zero_reg__
1821
 1836 1102 1092 0000 		sts MaxStickRoll,__zero_reg__
1822
 1837               	.L389:
1823
 1838 1106 3090 0000 		lds r3,LoopingNick
1824
 1839 110a 3320      		tst r3
1825
 1840 110c 01F0      		breq .+4
1826
 1841 110e 0C94 0000 		jmp .L390
1827
 1842 1112 8091 0000 		lds r24,LoopingRoll
1828
 1843 1116 8823      		tst r24
1829
 1844 1118 01F0      		breq .+4
1830
 1845 111a 0C94 0000 		jmp .L390
1831
 1846               	.L391:
1832
 1847 111e 2091 0000 		lds r18,ADCycleCount
1833
 1848 1122 3091 0000 		lds r19,(ADCycleCount)+1
1834
 1849 1126 8091 0000 		lds r24,FCParam+11
1835
 1850 112a 4AE0      		ldi r20,lo8(10)
1836
 1851 112c 849F      		mul r24,r20
1837
 1852 112e C001      		movw r24,r0
1838
 1853 1130 1124      		clr r1
1839
 1854 1132 2817      		cp r18,r24
1840
 1855 1134 3907      		cpc r19,r25
1841
 1856 1136 00F4      		brsh .+2
1842
 1857 1138 00C0      		rjmp .L392
1843
 1858 113a 8091 0000 		lds r24,FCParam+12
1844
 1859 113e 849F      		mul r24,r20
1845
 1860 1140 4001      		movw r8,r0
1846
 1861 1142 1124      		clr r1
1847
 1862 1144 8091 0000 		lds r24,FCParam+13
1848
 1863 1148 849F      		mul r24,r20
1849
 1864 114a 3001      		movw r6,r0
1850
 1865 114c 1124      		clr r1
1851
 1866 114e E090 0000 		lds r14,vibrationOffsetNick
1852
 1867 1152 F090 0000 		lds r15,(vibrationOffsetNick)+1
1853
 1868 1156 0091 0000 		lds r16,(vibrationOffsetNick)+2
1854
 1869 115a 1091 0000 		lds r17,(vibrationOffsetNick)+3
1855
 1870 115e 8091 0000 		lds r24,FCParam+10
1856
 1871 1162 C82E      		mov r12,r24
1857
 1872 1164 DD24      		clr r13
1858
 1873 1166 8091 0000 		lds r24,savedVibrationOffsetNick
1859
 1874 116a 9091 0000 		lds r25,(savedVibrationOffsetNick)+1
1860
 1875 116e A701      		movw r20,r14
1861
 1876 1170 481B      		sub r20,r24
1862
 1877 1172 590B      		sbc r21,r25
1863
 1878 1174 CA01      		movw r24,r20
1864
 1879 1176 57FF      		sbrs r21,7
1865
 1880 1178 00C0      		rjmp .+4
1866
 1881 117a 0C94 0000 		jmp .L483
1867
 1882 117e 8C15      		cp r24,r12
1868
 1883 1180 9D05      		cpc r25,r13
1869
 1884 1182 04F0      		brlt .+2
1870
 1885 1184 00C0      		rjmp .L393
1871
 1886               	.L542:
1872
 1887 1186 8091 0000 		lds r24,FCParam+15
1873
 1888 118a 8823      		tst r24
1874
 1889 118c 01F0      		breq .+2
1875
 1890 118e 00C0      		rjmp .L393
1876
 1891 1190 8091 0000 		lds r24,filteredHiResPitchGyro
1877
 1892 1194 9091 0000 		lds r25,(filteredHiResPitchGyro)+1
1878
 1893 1198 AA27      		clr r26
1879
 1894 119a 97FD      		sbrc r25,7
1880
 1895 119c A095      		com r26
1881
 1896 119e BA2F      		mov r27,r26
1882
 1897 11a0 E816      		cp r14,r24
1883
 1898 11a2 F906      		cpc r15,r25
1884
 1899 11a4 0A07      		cpc r16,r26
1885
 1900 11a6 1B07      		cpc r17,r27
1886
 1901 11a8 04F0      		brlt .+4
1887
 1902 11aa 0C94 0000 		jmp .L395
1888
 1903 11ae 2091 0000 		lds r18,IntegralGyroNick
1889
 1904 11b2 3091 0000 		lds r19,(IntegralGyroNick)+1
1890
 1905 11b6 4091 0000 		lds r20,(IntegralGyroNick)+2
1891
 1906 11ba 5091 0000 		lds r21,(IntegralGyroNick)+3
1892
 1907 11be 1216      		cp __zero_reg__,r18
1893
 1908 11c0 1306      		cpc __zero_reg__,r19
1894
 1909 11c2 1406      		cpc __zero_reg__,r20
1895
 1910 11c4 1506      		cpc __zero_reg__,r21
1896
 1911 11c6 04F0      		brlt .+4
1897
 1912 11c8 0C94 0000 		jmp .L395
1898
 1913 11cc A090 0000 		lds r10,StickNick
1899
 1914 11d0 B090 0000 		lds r11,(StickNick)+1
1900
 1915 11d4 A814      		cp r10,r8
1901
 1916 11d6 B904      		cpc r11,r9
1902
 1917 11d8 04F4      		brge .+4
1903
 1918 11da 0C94 0000 		jmp .L395
1904
 1919 11de 6A14      		cp r6,r10
1905
 1920 11e0 7B04      		cpc r7,r11
1906
 1921 11e2 04F4      		brge .+4
1907
 1922 11e4 0C94 0000 		jmp .L395
1908
 1923 11e8 8091 0000 		lds r24,FCParam+16
1909
 1924 11ec 8058      		subi r24,lo8(-(-128))
1910
 1925 11ee 9927      		clr r25
1911
 1926 11f0 87FD      		sbrc r24,7
1912
 1927 11f2 9095      		com r25
1913
 1928 11f4 A92F      		mov r26,r25
1914
 1929 11f6 B92F      		mov r27,r25
1915
 1930 11f8 8E0D      		add r24,r14
1916
 1931 11fa 9F1D      		adc r25,r15
1917
 1932 11fc A01F      		adc r26,r16
1918
 1933 11fe B11F      		adc r27,r17
1919
 1934 1200 8093 0000 		sts vibrationOffsetNick,r24
1920
 1935 1204 9093 0000 		sts (vibrationOffsetNick)+1,r25
1921
 1936 1208 A093 0000 		sts (vibrationOffsetNick)+2,r26
1922
 1937 120c B093 0000 		sts (vibrationOffsetNick)+3,r27
1923
 1938               	.L479:
1924
 1939 1210 6091 0000 		lds r22,FCParam+14
1925
 1940 1214 70E0      		ldi r23,lo8(0)
1926
 1941 1216 80E0      		ldi r24,lo8(0)
1927
 1942 1218 90E0      		ldi r25,hi8(0)
1928
 1943 121a 0E94 0000 		call __mulsi3
1929
 1944 121e 24E6      		ldi r18,lo8(100)
1930
 1945 1220 30E0      		ldi r19,hi8(100)
1931
 1946 1222 40E0      		ldi r20,hlo8(100)
1932
 1947 1224 50E0      		ldi r21,hhi8(100)
1933
 1948 1226 0E94 0000 		call __divmodsi4
1934
 1949 122a 2093 0000 		sts IntegralGyroNick,r18
1935
 1950 122e 3093 0000 		sts (IntegralGyroNick)+1,r19
1936
 1951 1232 4093 0000 		sts (IntegralGyroNick)+2,r20
1937
 1952 1236 5093 0000 		sts (IntegralGyroNick)+3,r21
1938
 1953               	.L393:
1939
 1954 123a E090 0000 		lds r14,vibrationOffsetRoll
1940
 1955 123e F090 0000 		lds r15,(vibrationOffsetRoll)+1
1941
 1956 1242 0091 0000 		lds r16,(vibrationOffsetRoll)+2
1942
 1957 1246 1091 0000 		lds r17,(vibrationOffsetRoll)+3
1943
 1958 124a 8091 0000 		lds r24,savedVibrationOffsetRoll
1944
 1959 124e 9091 0000 		lds r25,(savedVibrationOffsetRoll)+1
1945
 1960 1252 B701      		movw r22,r14
1946
 1961 1254 681B      		sub r22,r24
1947
 1962 1256 790B      		sbc r23,r25
1948
 1963 1258 CB01      		movw r24,r22
1949
 1964 125a 77FF      		sbrs r23,7
1950
 1965 125c 00C0      		rjmp .+4
1951
 1966 125e 0C94 0000 		jmp .L484
1952
 1967 1262 C816      		cp r12,r24
1953
 1968 1264 D906      		cpc r13,r25
1954
 1969 1266 04F0      		brlt .+4
1955
 1970 1268 0C94 0000 		jmp .L485
1956
 1971               	.L396:
1957
 1972 126c 8091 0000 		lds r24,NickNoisePeak
1958
 1973 1270 9091 0000 		lds r25,(NickNoisePeak)+1
1959
 1974 1274 9093 0000 		sts (debugNickNoisePeak)+1,r25
1960
 1975 1278 8093 0000 		sts debugNickNoisePeak,r24
1961
 1976 127c 8091 0000 		lds r24,RollNoisePeak
1962
 1977 1280 9091 0000 		lds r25,(RollNoisePeak)+1
1963
 1978 1284 9093 0000 		sts (debugRollNoisePeak)+1,r25
1964
 1979 1288 8093 0000 		sts debugRollNoisePeak,r24
1965
 1980 128c 1092 0000 		sts (RollNoisePeak)+1,__zero_reg__
1966
 1981 1290 1092 0000 		sts RollNoisePeak,__zero_reg__
1967
 1982 1294 1092 0000 		sts (NickNoisePeak)+1,__zero_reg__
1968
 1983 1298 1092 0000 		sts NickNoisePeak,__zero_reg__
1969
 1984 129c 1092 0000 		sts (ADCycleCount)+1,__zero_reg__
1970
 1985 12a0 1092 0000 		sts ADCycleCount,__zero_reg__
1971
 1986               	.L392:
1972
 1987 12a4 4091 0000 		lds r20,StickYaw
1973
 1988 12a8 5091 0000 		lds r21,(StickYaw)+1
1974
 1989 12ac CA01      		movw r24,r20
1975
 1990 12ae 57FF      		sbrs r21,7
1976
 1991 12b0 00C0      		rjmp .+4
1977
 1992 12b2 0C94 0000 		jmp .L486
1978
 1993               	.L400:
1979
 1994 12b6 4097      		sbiw r24,16
1980
 1995 12b8 04F0      		brlt .L399
1981
 1996 12ba 88EE      		ldi r24,lo8(1000)
1982
 1997 12bc 93E0      		ldi r25,hi8(1000)
1983
 1998 12be 9093 0000 		sts (BadCompassHeading)+1,r25
1984
 1999 12c2 8093 0000 		sts BadCompassHeading,r24
1985
 2000 12c6 8091 0000 		lds r24,ParamSet+8
1986
 2001 12ca 84FD      		sbrc r24,4
1987
 2002 12cc 00C0      		rjmp .+4
1988
 2003 12ce 0C94 0000 		jmp .L487
1989
 2004               	.L399:
1990
 2005 12d2 8091 0000 		lds r24,ParamSet+17
1991
 2006 12d6 90E0      		ldi r25,lo8(0)
1992
 2007 12d8 849F      		mul r24,r20
1993
 2008 12da 9001      		movw r18,r0
1994
 2009 12dc 859F      		mul r24,r21
1995
 2010 12de 300D      		add r19,r0
1996
 2011 12e0 949F      		mul r25,r20
1997
 2012 12e2 300D      		add r19,r0
1998
 2013 12e4 1124      		clr r1
1999
 2014 12e6 37FF      		sbrs r19,7
2000
 2015 12e8 00C0      		rjmp .+4
2001
 2016 12ea 0C94 0000 		jmp .L488
2002
 2017               	.L401:
2003
 2018 12ee 3595      		asr r19
2004
 2019 12f0 2795      		ror r18
2005
 2020 12f2 3595      		asr r19
2006
 2021 12f4 2795      		ror r18
2007
 2022 12f6 C901      		movw r24,r18
2008
 2023 12f8 AA27      		clr r26
2009
 2024 12fa 97FD      		sbrc r25,7
2010
 2025 12fc A095      		com r26
2011
 2026 12fe BA2F      		mov r27,r26
2012
 2027 1300 8093 0000 		sts SetPointYaw.1980,r24
2013
 2028 1304 9093 0000 		sts (SetPointYaw.1980)+1,r25
2014
 2029 1308 A093 0000 		sts (SetPointYaw.1980)+2,r26
2015
 2030 130c B093 0000 		sts (SetPointYaw.1980)+3,r27
2016
 2031 1310 2091 0000 		lds r18,ReadingIntegralGyroYaw
2017
 2032 1314 3091 0000 		lds r19,(ReadingIntegralGyroYaw)+1
2018
 2033 1318 4091 0000 		lds r20,(ReadingIntegralGyroYaw)+2
2019
 2034 131c 5091 0000 		lds r21,(ReadingIntegralGyroYaw)+3
2020
 2035 1320 281B      		sub r18,r24
2021
 2036 1322 390B      		sbc r19,r25
2022
 2037 1324 4A0B      		sbc r20,r26
2023
 2038 1326 5B0B      		sbc r21,r27
2024
 2039 1328 2093 0000 		sts ReadingIntegralGyroYaw,r18
2025
 2040 132c 3093 0000 		sts (ReadingIntegralGyroYaw)+1,r19
2026
 2041 1330 4093 0000 		sts (ReadingIntegralGyroYaw)+2,r20
2027
 2042 1334 5093 0000 		sts (ReadingIntegralGyroYaw)+3,r21
2028
 2043 1338 203B      		cpi r18,lo8(-50000)
2029
 2044 133a 7CE3      		ldi r23,hi8(-50000)
2030
 2045 133c 3707      		cpc r19,r23
2031
 2046 133e 7FEF      		ldi r23,hlo8(-50000)
2032
 2047 1340 4707      		cpc r20,r23
2033
 2048 1342 7FEF      		ldi r23,hhi8(-50000)
2034
 2049 1344 5707      		cpc r21,r23
2035
 2050 1346 04F0      		brlt .+4
2036
 2051 1348 0C94 0000 		jmp .L402
2037
 2052 134c 80EB      		ldi r24,lo8(-50000)
2038
 2053 134e 9CE3      		ldi r25,hi8(-50000)
2039
 2054 1350 AFEF      		ldi r26,hlo8(-50000)
2040
 2055 1352 BFEF      		ldi r27,hhi8(-50000)
2041
 2056 1354 8093 0000 		sts ReadingIntegralGyroYaw,r24
2042
 2057 1358 9093 0000 		sts (ReadingIntegralGyroYaw)+1,r25
2043
 2058 135c A093 0000 		sts (ReadingIntegralGyroYaw)+2,r26
2044
 2059 1360 B093 0000 		sts (ReadingIntegralGyroYaw)+3,r27
2045
 2060               	.L403:
2046
 2061 1364 8091 0000 		lds r24,ParamSet+8
2047
 2062 1368 8872      		andi r24,lo8(40)
2048
 2063 136a 01F0      		breq .+4
2049
 2064 136c 0C94 0000 		jmp .L474
2050
 2065 1370 E091 0000 		lds r30,GyroYaw
2051
 2066 1374 F091 0000 		lds r31,(GyroYaw)+1
2052
 2067 1378 FC87      		std Y+12,r31
2053
 2068 137a EB87      		std Y+11,r30
2054
 2069               	.L404:
2055
 2070 137c 8091 0000 		lds r24,TimerDebugOut.1985
2056
 2071 1380 8150      		subi r24,lo8(-(-1))
2057
 2072 1382 8093 0000 		sts TimerDebugOut.1985,r24
2058
 2073 1386 8F5F      		subi r24,lo8(-(1))
2059
 2074 1388 01F4      		brne .+4
2060
 2075 138a 0C94 0000 		jmp .L475
2061
 2076 138e A090 0000 		lds r10,StickNick
2062
 2077 1392 B090 0000 		lds r11,(StickNick)+1
2063
 2078 1396 C090 0000 		lds r12,StickRoll
2064
 2079 139a D090 0000 		lds r13,(StickRoll)+1
2065
 2080 139e 4090 0000 		lds r4,GyroNick
2066
 2081 13a2 5090 0000 		lds r5,(GyroNick)+1
2067
 2082 13a6 8090 0000 		lds r8,GyroRoll
2068
 2083 13aa 9090 0000 		lds r9,(GyroRoll)+1
2069
 2084               	.L422:
2070
 2085 13ae 8091 0000 		lds r24,FunnelCourse
2071
 2086 13b2 8823      		tst r24
2072
 2087 13b4 01F0      		breq .L423
2073
 2088 13b6 1092 0000 		sts IPartNick.1972,__zero_reg__
2074
 2089 13ba 1092 0000 		sts (IPartNick.1972)+1,__zero_reg__
2075
 2090 13be 1092 0000 		sts (IPartNick.1972)+2,__zero_reg__
2076
 2091 13c2 1092 0000 		sts (IPartNick.1972)+3,__zero_reg__
2077
 2092 13c6 1092 0000 		sts IPartRoll.1973,__zero_reg__
2078
 2093 13ca 1092 0000 		sts (IPartRoll.1973)+1,__zero_reg__
2079
 2094 13ce 1092 0000 		sts (IPartRoll.1973)+2,__zero_reg__
2080
 2095 13d2 1092 0000 		sts (IPartRoll.1973)+3,__zero_reg__
2081
 2096               	.L423:
2082
 2097 13d6 3320      		tst r3
2083
 2098 13d8 01F4      		brne .+4
2084
 2099 13da 0C94 0000 		jmp .L424
2085
 2100 13de 1E82      		std Y+6,__zero_reg__
2086
 2101 13e0 1D82      		std Y+5,__zero_reg__
2087
 2102 13e2 2224      		clr r2
2088
 2103 13e4 3324      		clr r3
2089
 2104 13e6 7091 0000 		lds r23,GyroIFactor
2090
 2105 13ea 7D87      		std Y+13,r23
2091
 2106               	.L425:
2092
 2107 13ec 8091 0000 		lds r24,GyroPFactor
2093
 2108 13f0 E82E      		mov r14,r24
2094
 2109 13f2 FF24      		clr r15
2095
 2110 13f4 00E0      		ldi r16,lo8(0)
2096
 2111 13f6 10E0      		ldi r17,hi8(0)
2097
 2112 13f8 8091 0000 		lds r24,LoopingRoll
2098
 2113 13fc 8823      		tst r24
2099
 2114 13fe 01F4      		brne .+4
2100
 2115 1400 0C94 0000 		jmp .L426
2101
 2116 1404 1C82      		std Y+4,__zero_reg__
2102
 2117 1406 1B82      		std Y+3,__zero_reg__
2103
 2118 1408 6624      		clr r6
2104
 2119 140a 7724      		clr r7
2105
 2120               	.L427:
2106
 2121 140c B401      		movw r22,r8
2107
 2122 140e 8827      		clr r24
2108
 2123 1410 77FD      		sbrc r23,7
2109
 2124 1412 8095      		com r24
2110
 2125 1414 982F      		mov r25,r24
2111
 2126 1416 A801      		movw r20,r16
2112
 2127 1418 9701      		movw r18,r14
2113
 2128 141a 0E94 0000 		call __mulsi3
2114
 2129 141e 20E4      		ldi r18,lo8(64)
2115
 2130 1420 30E0      		ldi r19,hi8(64)
2116
 2131 1422 40E0      		ldi r20,hlo8(64)
2117
 2132 1424 50E0      		ldi r21,hhi8(64)
2118
 2133 1426 0E94 0000 		call __divmodsi4
2119
 2134 142a B301      		movw r22,r6
2120
 2135 142c 620F      		add r22,r18
2121
 2136 142e 731F      		adc r23,r19
2122
 2137 1430 7B8F      		std Y+27,r23
2123
 2138 1432 6A8F      		std Y+26,r22
2124
 2139 1434 7091 0000 		lds r23,GyroYawPFactor
2125
 2140 1438 7A87      		std Y+10,r23
2126
 2141 143a 8091 0000 		lds r24,GyroYawIFactor
2127
 2142 143e 8987      		std Y+9,r24
2128
 2143 1440 6090 0000 		lds r6,IntegralGyroYaw
2129
 2144 1444 7090 0000 		lds r7,(IntegralGyroYaw)+1
2130
 2145 1448 8090 0000 		lds r8,(IntegralGyroYaw)+2
2131
 2146 144c 9090 0000 		lds r9,(IntegralGyroYaw)+3
2132
 2147 1450 9201      		movw r18,r4
2133
 2148 1452 4427      		clr r20
2134
 2149 1454 37FD      		sbrc r19,7
2135
 2150 1456 4095      		com r20
2136
 2151 1458 542F      		mov r21,r20
2137
 2152 145a C801      		movw r24,r16
2138
 2153 145c B701      		movw r22,r14
2139
 2154 145e 0E94 0000 		call __mulsi3
2140
 2155 1462 20E4      		ldi r18,lo8(64)
2141
 2156 1464 30E0      		ldi r19,hi8(64)
2142
 2157 1466 40E0      		ldi r20,hlo8(64)
2143
 2158 1468 50E0      		ldi r21,hhi8(64)
2144
 2159 146a 0E94 0000 		call __divmodsi4
2145
 2160 146e 220D      		add r18,r2
2146
 2161 1470 331D      		adc r19,r3
2147
 2162 1472 90E4      		ldi r25,hi8(16385)
2148
 2163 1474 2130      		cpi r18,lo8(16385)
2149
 2164 1476 3907      		cpc r19,r25
2150
 2165 1478 04F0      		brlt .L428
2151
 2166 147a 20E0      		ldi r18,lo8(16384)
2152
 2167 147c 30E4      		ldi r19,hi8(16384)
2153
 2168               	.L428:
2154
 2169 147e 1901      		movw r2,r18
2155
 2170 1480 E0EC      		ldi r30,hi8(-16384)
2156
 2171 1482 2030      		cpi r18,lo8(-16384)
2157
 2172 1484 3E07      		cpc r19,r30
2158
 2173 1486 04F4      		brge .L429
2159
 2174 1488 212C      		mov r2,__zero_reg__
2160
 2175 148a A0EC      		ldi r26,hi8(-16384)
2161
 2176 148c 3A2E      		mov r3,r26
2162
 2177               	.L429:
2163
 2178 148e 2A8D      		ldd r18,Y+26
2164
 2179 1490 3B8D      		ldd r19,Y+27
2165
 2180 1492 F0E4      		ldi r31,hi8(16385)
2166
 2181 1494 2130      		cpi r18,lo8(16385)
2167
 2182 1496 3F07      		cpc r19,r31
2168
 2183 1498 04F0      		brlt .L430
2169
 2184 149a 20E0      		ldi r18,lo8(16384)
2170
 2185 149c 30E4      		ldi r19,hi8(16384)
2171
 2186               	.L430:
2172
 2187 149e 3A83      		std Y+2,r19
2173
 2188 14a0 2983      		std Y+1,r18
2174
 2189 14a2 2050      		subi r18,lo8(-16384)
2175
 2190 14a4 304C      		sbci r19,hi8(-16384)
2176
 2191 14a6 04F4      		brge .L431
2177
 2192 14a8 60E0      		ldi r22,lo8(-16384)
2178
 2193 14aa 70EC      		ldi r23,hi8(-16384)
2179
 2194 14ac 7A83      		std Y+2,r23
2180
 2195 14ae 6983      		std Y+1,r22
2181
 2196               	.L431:
2182
 2197 14b0 8091 0000 		lds r24,MissingMotor
2183
 2198 14b4 8823      		tst r24
2184
 2199 14b6 01F0      		breq .L432
2185
 2200 14b8 8091 0000 		lds r24,ModelIsFlying
2186
 2201 14bc 9091 0000 		lds r25,(ModelIsFlying)+1
2187
 2202 14c0 0297      		sbiw r24,2
2188
 2203 14c2 C097      		sbiw r24,48
2189
 2204 14c4 00F4      		brsh .+4
2190
 2205 14c6 0C94 0000 		jmp .L489
2191
 2206               	.L433:
2192
 2207 14ca 8091 0000 		lds r24,ParamSet+18
2193
 2208 14ce E82F      		mov r30,r24
2194
 2209 14d0 F0E0      		ldi r31,lo8(0)
2195
 2210 14d2 F887      		std Y+8,r31
2196
 2211 14d4 EF83      		std Y+7,r30
2197
 2212               	.L432:
2198
 2213 14d6 8091 0000 		lds r24,ParamSet+19
2199
 2214 14da 90E0      		ldi r25,lo8(0)
2200
 2215 14dc 4497      		sbiw r24,20
2201
 2216 14de 880F      		lsl r24
2202
 2217 14e0 991F      		rol r25
2203
 2218 14e2 880F      		lsl r24
2204
 2219 14e4 991F      		rol r25
2205
 2220 14e6 4F80      		ldd r4,Y+7
2206
 2221 14e8 5884      		ldd r5,Y+8
2207
 2222 14ea 440C      		lsl r4
2208
 2223 14ec 551C      		rol r5
2209
 2224 14ee 440C      		lsl r4
2210
 2225 14f0 551C      		rol r5
2211
 2226 14f2 8415      		cp r24,r4
2212
 2227 14f4 9505      		cpc r25,r5
2213
 2228 14f6 04F4      		brge .L434
2214
 2229 14f8 2C01      		movw r4,r24
2215
 2230               	.L434:
2216
 2231 14fa 5092 0000 		sts (DebugOut+16)+1,r5
2217
 2232 14fe 4092 0000 		sts DebugOut+16,r4
2218
 2233 1502 2B85      		ldd r18,Y+11
2219
 2234 1504 3C85      		ldd r19,Y+12
2220
 2235 1506 220F      		lsl r18
2221
 2236 1508 331F      		rol r19
2222
 2237 150a B901      		movw r22,r18
2223
 2238 150c 8827      		clr r24
2224
 2239 150e 77FD      		sbrc r23,7
2225
 2240 1510 8095      		com r24
2226
 2241 1512 982F      		mov r25,r24
2227
 2242 1514 EA85      		ldd r30,Y+10
2228
 2243 1516 2E2F      		mov r18,r30
2229
 2244 1518 30E0      		ldi r19,lo8(0)
2230
 2245 151a 40E0      		ldi r20,lo8(0)
2231
 2246 151c 50E0      		ldi r21,hi8(0)
2232
 2247 151e 0E94 0000 		call __mulsi3
2233
 2248 1522 20E4      		ldi r18,lo8(64)
2234
 2249 1524 30E0      		ldi r19,hi8(64)
2235
 2250 1526 40E0      		ldi r20,hlo8(64)
2236
 2251 1528 50E0      		ldi r21,hhi8(64)
2237
 2252 152a 0E94 0000 		call __divmodsi4
2238
 2253 152e 7901      		movw r14,r18
2239
 2254 1530 8A01      		movw r16,r20
2240
 2255 1532 F985      		ldd r31,Y+9
2241
 2256 1534 6F2F      		mov r22,r31
2242
 2257 1536 70E0      		ldi r23,lo8(0)
2243
 2258 1538 80E0      		ldi r24,lo8(0)
2244
 2259 153a 90E0      		ldi r25,hi8(0)
2245
 2260 153c A401      		movw r20,r8
2246
 2261 153e 9301      		movw r18,r6
2247
 2262 1540 0E94 0000 		call __mulsi3
2248
 2263 1544 20EF      		ldi r18,lo8(22000)
2249
 2264 1546 35E5      		ldi r19,hi8(22000)
2250
 2265 1548 40E0      		ldi r20,hlo8(22000)
2251
 2266 154a 50E0      		ldi r21,hhi8(22000)
2252
 2267 154c 0E94 0000 		call __divmodsi4
2253
 2268 1550 C701      		movw r24,r14
2254
 2269 1552 820F      		add r24,r18
2255
 2270 1554 931F      		adc r25,r19
2256
 2271 1556 20E4      		ldi r18,hi8(16385)
2257
 2272 1558 8130      		cpi r24,lo8(16385)
2258
 2273 155a 9207      		cpc r25,r18
2259
 2274 155c 04F0      		brlt .L435
2260
 2275 155e 80E0      		ldi r24,lo8(16384)
2261
 2276 1560 90E4      		ldi r25,hi8(16384)
2262
 2277               	.L435:
2263
 2278 1562 8C01      		movw r16,r24
2264
 2279 1564 30EC      		ldi r19,hi8(-16384)
2265
 2280 1566 8030      		cpi r24,lo8(-16384)
2266
 2281 1568 9307      		cpc r25,r19
2267
 2282 156a 04F4      		brge .L436
2268
 2283 156c 00E0      		ldi r16,lo8(-16384)
2269
 2284 156e 10EC      		ldi r17,hi8(-16384)
2270
 2285               	.L436:
2271
 2286 1570 6091 0000 		lds r22,SetPointYaw.1980
2272
 2287 1574 7091 0000 		lds r23,(SetPointYaw.1980)+1
2273
 2288 1578 8091 0000 		lds r24,(SetPointYaw.1980)+2
2274
 2289 157c 9091 0000 		lds r25,(SetPointYaw.1980)+3
2275
 2290 1580 2CEF      		ldi r18,lo8(-4)
2276
 2291 1582 3FEF      		ldi r19,hi8(-4)
2277
 2292 1584 4FEF      		ldi r20,hlo8(-4)
2278
 2293 1586 5FEF      		ldi r21,hhi8(-4)
2279
 2294 1588 0E94 0000 		call __mulsi3
2280
 2295 158c 7801      		movw r14,r16
2281
 2296 158e E60E      		add r14,r22
2282
 2297 1590 F71E      		adc r15,r23
2283
 2298 1592 41EA      		ldi r20,lo8(161)
2284
 2299 1594 4416      		cp r4,r20
2285
 2300 1596 5104      		cpc r5,__zero_reg__
2286
 2301 1598 04F4      		brge .+2
2287
 2302 159a 00C0      		rjmp .L437
2288
 2303 159c C201      		movw r24,r4
2289
 2304 159e 57FE      		sbrs r5,7
2290
 2305 15a0 00C0      		rjmp .+4
2291
 2306 15a2 0C94 0000 		jmp .L490
2292
 2307               	.L438:
2293
 2308 15a6 9595      		asr r25
2294
 2309 15a8 8795      		ror r24
2295
 2310 15aa 2227      		clr r18
2296
 2311 15ac 3327      		clr r19
2297
 2312 15ae 281B      		sub r18,r24
2298
 2313 15b0 390B      		sbc r19,r25
2299
 2314 15b2 E216      		cp r14,r18
2300
 2315 15b4 F306      		cpc r15,r19
2301
 2316 15b6 04F0      		brlt .+4
2302
 2317 15b8 0C94 0000 		jmp .L491
2303
 2318               	.L439:
2304
 2319 15bc 8091 0000 		lds r24,ParamSet+19
2305
 2320 15c0 90E0      		ldi r25,lo8(0)
2306
 2321 15c2 880F      		lsl r24
2307
 2322 15c4 991F      		rol r25
2308
 2323 15c6 880F      		lsl r24
2309
 2324 15c8 991F      		rol r25
2310
 2325 15ca 3201      		movw r6,r4
2311
 2326 15cc 681A      		sub r6,r24
2312
 2327 15ce 790A      		sbc r7,r25
2313
 2328 15d0 2615      		cp r18,r6
2314
 2329 15d2 3705      		cpc r19,r7
2315
 2330 15d4 04F0      		brlt .L443
2316
 2331 15d6 8419      		sub r24,r4
2317
 2332 15d8 9509      		sbc r25,r5
2318
 2333 15da 3901      		movw r6,r18
2319
 2334 15dc 8217      		cp r24,r18
2320
 2335 15de 9307      		cpc r25,r19
2321
 2336 15e0 04F4      		brge .+4
2322
 2337 15e2 0C94 0000 		jmp .L492
2323
 2338               	.L443:
2324
 2339 15e6 6D85      		ldd r22,Y+13
2325
 2340 15e8 6623      		tst r22
2326
 2341 15ea 01F4      		brne .+2
2327
 2342 15ec 00C0      		rjmp .L445
2328
 2343 15ee 8D81      		ldd r24,Y+5
2329
 2344 15f0 9E81      		ldd r25,Y+6
2330
 2345 15f2 8A19      		sub r24,r10
2331
 2346 15f4 9B09      		sbc r25,r11
2332
 2347 15f6 FC01      		movw r30,r24
2333
 2348 15f8 CF01      		movw r24,r30
2334
 2349 15fa AA27      		clr r26
2335
 2350 15fc 97FD      		sbrc r25,7
2336
 2351 15fe A095      		com r26
2337
 2352 1600 BA2F      		mov r27,r26
2338
 2353 1602 E090 0000 		lds r14,IPartNick.1972
2339
 2354 1606 F090 0000 		lds r15,(IPartNick.1972)+1
2340
 2355 160a 0091 0000 		lds r16,(IPartNick.1972)+2
2341
 2356 160e 1091 0000 		lds r17,(IPartNick.1972)+3
2342
 2357 1612 E80E      		add r14,r24
2343
 2358 1614 F91E      		adc r15,r25
2344
 2359 1616 0A1F      		adc r16,r26
2345
 2360 1618 1B1F      		adc r17,r27
2346
 2361 161a E092 0000 		sts IPartNick.1972,r14
2347
 2362 161e F092 0000 		sts (IPartNick.1972)+1,r15
2348
 2363 1622 0093 0000 		sts (IPartNick.1972)+2,r16
2349
 2364 1626 1093 0000 		sts (IPartNick.1972)+3,r17
2350
 2365               	.L446:
2351
 2366 162a F0E0      		ldi r31,lo8(-64000)
2352
 2367 162c EF16      		cp r14,r31
2353
 2368 162e F6E0      		ldi r31,hi8(-64000)
2354
 2369 1630 FF06      		cpc r15,r31
2355
 2370 1632 FFEF      		ldi r31,hlo8(-64000)
2356
 2371 1634 0F07      		cpc r16,r31
2357
 2372 1636 FFEF      		ldi r31,hhi8(-64000)
2358
 2373 1638 1F07      		cpc r17,r31
2359
 2374 163a 04F0      		brlt .+2
2360
 2375 163c 00C0      		rjmp .L447
2361
 2376 163e 80E0      		ldi r24,lo8(-64000)
2362
 2377 1640 96E0      		ldi r25,hi8(-64000)
2363
 2378 1642 AFEF      		ldi r26,hlo8(-64000)
2364
 2379 1644 BFEF      		ldi r27,hhi8(-64000)
2365
 2380 1646 8093 0000 		sts IPartNick.1972,r24
2366
 2381 164a 9093 0000 		sts (IPartNick.1972)+1,r25
2367
 2382 164e A093 0000 		sts (IPartNick.1972)+2,r26
2368
 2383 1652 B093 0000 		sts (IPartNick.1972)+3,r27
2369
 2384 1656 E12C      		mov r14,__zero_reg__
2370
 2385 1658 26E0      		ldi r18,hi8(-64000)
2371
 2386 165a F22E      		mov r15,r18
2372
 2387 165c 2FEF      		ldi r18,hlo8(-64000)
2373
 2388 165e 022F      		mov r16,r18
2374
 2389 1660 2FEF      		ldi r18,hhi8(-64000)
2375
 2390 1662 122F      		mov r17,r18
2376
 2391               	.L448:
2377
 2392 1664 A101      		movw r20,r2
2378
 2393 1666 4A19      		sub r20,r10
2379
 2394 1668 5B09      		sbc r21,r11
2380
 2395 166a 5A01      		movw r10,r20
2381
 2396 166c 8090 0000 		lds r8,Ki
2382
 2397 1670 9090 0000 		lds r9,(Ki)+1
2383
 2398 1674 9401      		movw r18,r8
2384
 2399 1676 4427      		clr r20
2385
 2400 1678 37FD      		sbrc r19,7
2386
 2401 167a 4095      		com r20
2387
 2402 167c 542F      		mov r21,r20
2388
 2403 167e C801      		movw r24,r16
2389
 2404 1680 B701      		movw r22,r14
2390
 2405 1682 0E94 0000 		call __divmodsi4
2391
 2406 1686 A20E      		add r10,r18
2392
 2407 1688 B31E      		adc r11,r19
2393
 2408 168a 5D85      		ldd r21,Y+13
2394
 2409 168c 5523      		tst r21
2395
 2410 168e 01F4      		brne .+2
2396
 2411 1690 00C0      		rjmp .L449
2397
 2412 1692 6B81      		ldd r22,Y+3
2398
 2413 1694 7C81      		ldd r23,Y+4
2399
 2414 1696 6C19      		sub r22,r12
2400
 2415 1698 7D09      		sbc r23,r13
2401
 2416 169a CB01      		movw r24,r22
2402
 2417 169c AA27      		clr r26
2403
 2418 169e 97FD      		sbrc r25,7
2404
 2419 16a0 A095      		com r26
2405
 2420 16a2 BA2F      		mov r27,r26
2406
 2421 16a4 E090 0000 		lds r14,IPartRoll.1973
2407
 2422 16a8 F090 0000 		lds r15,(IPartRoll.1973)+1
2408
 2423 16ac 0091 0000 		lds r16,(IPartRoll.1973)+2
2409
 2424 16b0 1091 0000 		lds r17,(IPartRoll.1973)+3
2410
 2425 16b4 E80E      		add r14,r24
2411
 2426 16b6 F91E      		adc r15,r25
2412
 2427 16b8 0A1F      		adc r16,r26
2413
 2428 16ba 1B1F      		adc r17,r27
2414
 2429 16bc E092 0000 		sts IPartRoll.1973,r14
2415
 2430 16c0 F092 0000 		sts (IPartRoll.1973)+1,r15
2416
 2431 16c4 0093 0000 		sts (IPartRoll.1973)+2,r16
2417
 2432 16c8 1093 0000 		sts (IPartRoll.1973)+3,r17
2418
 2433               	.L450:
2419
 2434 16cc 70E0      		ldi r23,lo8(-64000)
2420
 2435 16ce E716      		cp r14,r23
2421
 2436 16d0 76E0      		ldi r23,hi8(-64000)
2422
 2437 16d2 F706      		cpc r15,r23
2423
 2438 16d4 7FEF      		ldi r23,hlo8(-64000)
2424
 2439 16d6 0707      		cpc r16,r23
2425
 2440 16d8 7FEF      		ldi r23,hhi8(-64000)
2426
 2441 16da 1707      		cpc r17,r23
2427
 2442 16dc 04F0      		brlt .+2
2428
 2443 16de 00C0      		rjmp .L451
2429
 2444 16e0 80E0      		ldi r24,lo8(-64000)
2430
 2445 16e2 96E0      		ldi r25,hi8(-64000)
2431
 2446 16e4 AFEF      		ldi r26,hlo8(-64000)
2432
 2447 16e6 BFEF      		ldi r27,hhi8(-64000)
2433
 2448 16e8 8093 0000 		sts IPartRoll.1973,r24
2434
 2449 16ec 9093 0000 		sts (IPartRoll.1973)+1,r25
2435
 2450 16f0 A093 0000 		sts (IPartRoll.1973)+2,r26
2436
 2451 16f4 B093 0000 		sts (IPartRoll.1973)+3,r27
2437
 2452 16f8 E12C      		mov r14,__zero_reg__
2438
 2453 16fa 86E0      		ldi r24,hi8(-64000)
2439
 2454 16fc F82E      		mov r15,r24
2440
 2455 16fe 8FEF      		ldi r24,hlo8(-64000)
2441
 2456 1700 082F      		mov r16,r24
2442
 2457 1702 8FEF      		ldi r24,hhi8(-64000)
2443
 2458 1704 182F      		mov r17,r24
2444
 2459               	.L452:
2445
 2460 1706 E981      		ldd r30,Y+1
2446
 2461 1708 FA81      		ldd r31,Y+2
2447
 2462 170a EC19      		sub r30,r12
2448
 2463 170c FD09      		sbc r31,r13
2449
 2464 170e 6F01      		movw r12,r30
2450
 2465 1710 9401      		movw r18,r8
2451
 2466 1712 4427      		clr r20
2452
 2467 1714 37FD      		sbrc r19,7
2453
 2468 1716 4095      		com r20
2454
 2469 1718 542F      		mov r21,r20
2455
 2470 171a C801      		movw r24,r16
2456
 2471 171c B701      		movw r22,r14
2457
 2472 171e 0E94 0000 		call __divmodsi4
2458
 2473 1722 C20E      		add r12,r18
2459
 2474 1724 D31E      		adc r13,r19
2460
 2475 1726 9301      		movw r18,r6
2461
 2476 1728 77FE      		sbrs r7,7
2462
 2477 172a 00C0      		rjmp .+4
2463
 2478 172c 0C94 0000 		jmp .L493
2464
 2479               	.L453:
2465
 2480 1730 3595      		asr r19
2466
 2481 1732 2795      		ror r18
2467
 2482 1734 240D      		add r18,r4
2468
 2483 1736 351D      		adc r19,r5
2469
 2484 1738 B901      		movw r22,r18
2470
 2485 173a 8827      		clr r24
2471
 2486 173c 77FD      		sbrc r23,7
2472
 2487 173e 8095      		com r24
2473
 2488 1740 982F      		mov r25,r24
2474
 2489 1742 2091 0000 		lds r18,FCParam+23
2475
 2490 1746 30E0      		ldi r19,lo8(0)
2476
 2491 1748 40E0      		ldi r20,lo8(0)
2477
 2492 174a 50E0      		ldi r21,hi8(0)
2478
 2493 174c 0E94 0000 		call __mulsi3
2479
 2494 1750 20E4      		ldi r18,lo8(64)
2480
 2495 1752 30E0      		ldi r19,hi8(64)
2481
 2496 1754 40E0      		ldi r20,hlo8(64)
2482
 2497 1756 50E0      		ldi r21,hhi8(64)
2483
 2498 1758 0E94 0000 		call __divmodsi4
2484
 2499 175c B901      		movw r22,r18
2485
 2500 175e 8827      		clr r24
2486
 2501 1760 9927      		clr r25
2487
 2502 1762 821B      		sub r24,r18
2488
 2503 1764 930B      		sbc r25,r19
2489
 2504 1766 A816      		cp r10,r24
2490
 2505 1768 B906      		cpc r11,r25
2491
 2506 176a 04F0      		brlt .+2
2492
 2507 176c 00C0      		rjmp .L454
2493
 2508 176e 9C01      		movw r18,r24
2494
 2509               	.L455:
2495
 2510 1770 C816      		cp r12,r24
2496
 2511 1772 D906      		cpc r13,r25
2497
 2512 1774 04F0      		brlt .L458
2498
 2513 1776 CB01      		movw r24,r22
2499
 2514 1778 C616      		cp r12,r22
2500
 2515 177a D706      		cpc r13,r23
2501
 2516 177c 04F4      		brge .+4
2502
 2517 177e 0C94 0000 		jmp .L494
2503
 2518               	.L458:
2504
 2519 1782 B0E0      		ldi r27,lo8(Mixer+13)
2505
 2520 1784 2B2E      		mov r2,r27
2506
 2521 1786 B0E0      		ldi r27,hi8(Mixer+13)
2507
 2522 1788 3B2E      		mov r3,r27
2508
 2523 178a A0E0      		ldi r26,lo8(Motor)
2509
 2524 178c 8A2E      		mov r8,r26
2510
 2525 178e A0E0      		ldi r26,hi8(Motor)
2511
 2526 1790 9A2E      		mov r9,r26
2512
 2527 1792 F0E0      		ldi r31,lo8(MotorValue.1987)
2513
 2528 1794 AF2E      		mov r10,r31
2514
 2529 1796 F0E0      		ldi r31,hi8(MotorValue.1987)
2515
 2530 1798 BF2E      		mov r11,r31
2516
 2531 179a A301      		movw r20,r6
2517
 2532 179c 6627      		clr r22
2518
 2533 179e 57FD      		sbrc r21,7
2519
 2534 17a0 6095      		com r22
2520
 2535 17a2 762F      		mov r23,r22
2521
 2536 17a4 4E87      		std Y+14,r20
2522
 2537 17a6 5F87      		std Y+15,r21
2523
 2538 17a8 688B      		std Y+16,r22
2524
 2539 17aa 798B      		std Y+17,r23
2525
 2540 17ac A201      		movw r20,r4
2526
 2541 17ae 6627      		clr r22
2527
 2542 17b0 57FD      		sbrc r21,7
2528
 2543 17b2 6095      		com r22
2529
 2544 17b4 762F      		mov r23,r22
2530
 2545 17b6 4A8B      		std Y+18,r20
2531
 2546 17b8 5B8B      		std Y+19,r21
2532
 2547 17ba 6C8B      		std Y+20,r22
2533
 2548 17bc 7D8B      		std Y+21,r23
2534
 2549 17be A901      		movw r20,r18
2535
 2550 17c0 6627      		clr r22
2536
 2551 17c2 57FD      		sbrc r21,7
2537
 2552 17c4 6095      		com r22
2538
 2553 17c6 762F      		mov r23,r22
2539
 2554 17c8 4E8B      		std Y+22,r20
2540
 2555 17ca 5F8B      		std Y+23,r21
2541
 2556 17cc 688F      		std Y+24,r22
2542
 2557 17ce 798F      		std Y+25,r23
2543
 2558 17d0 2C01      		movw r4,r24
2544
 2559 17d2 6624      		clr r6
2545
 2560 17d4 57FC      		sbrc r5,7
2546
 2561 17d6 6094      		com r6
2547
 2562 17d8 762C      		mov r7,r6
2548
 2563 17da 00C0      		rjmp .L466
2549
 2564               	.L498:
2550
 2565 17dc 2381      		ldd r18,Z+3
2551
 2566 17de 3327      		clr r19
2552
 2567 17e0 27FD      		sbrc r18,7
2553
 2568 17e2 3095      		com r19
2554
 2569 17e4 432F      		mov r20,r19
2555
 2570 17e6 532F      		mov r21,r19
2556
 2571 17e8 6E85      		ldd r22,Y+14
2557
 2572 17ea 7F85      		ldd r23,Y+15
2558
 2573 17ec 8889      		ldd r24,Y+16
2559
 2574 17ee 9989      		ldd r25,Y+17
2560
 2575 17f0 0E94 0000 		call __mulsi3
2561
 2576 17f4 20E4      		ldi r18,lo8(64)
2562
 2577 17f6 30E0      		ldi r19,hi8(64)
2563
 2578 17f8 40E0      		ldi r20,hlo8(64)
2564
 2579 17fa 50E0      		ldi r21,hhi8(64)
2565
 2580 17fc 0E94 0000 		call __divmodsi4
2566
 2581 1800 7901      		movw r14,r18
2567
 2582 1802 8A01      		movw r16,r20
2568
 2583 1804 2D2D      		mov r18,r13
2569
 2584 1806 3327      		clr r19
2570
 2585 1808 27FD      		sbrc r18,7
2571
 2586 180a 3095      		com r19
2572
 2587 180c 432F      		mov r20,r19
2573
 2588 180e 532F      		mov r21,r19
2574
 2589 1810 6A89      		ldd r22,Y+18
2575
 2590 1812 7B89      		ldd r23,Y+19
2576
 2591 1814 8C89      		ldd r24,Y+20
2577
 2592 1816 9D89      		ldd r25,Y+21
2578
 2593 1818 0E94 0000 		call __mulsi3
2579
 2594 181c 20E4      		ldi r18,lo8(64)
2580
 2595 181e 30E0      		ldi r19,hi8(64)
2581
 2596 1820 40E0      		ldi r20,hlo8(64)
2582
 2597 1822 50E0      		ldi r21,hhi8(64)
2583
 2598 1824 0E94 0000 		call __divmodsi4
2584
 2599 1828 E20E      		add r14,r18
2585
 2600 182a F31E      		adc r15,r19
2586
 2601 182c F101      		movw r30,r2
2587
 2602 182e 2181      		ldd r18,Z+1
2588
 2603 1830 3327      		clr r19
2589
 2604 1832 27FD      		sbrc r18,7
2590
 2605 1834 3095      		com r19
2591
 2606 1836 432F      		mov r20,r19
2592
 2607 1838 532F      		mov r21,r19
2593
 2608 183a 6E89      		ldd r22,Y+22
2594
 2609 183c 7F89      		ldd r23,Y+23
2595
 2610 183e 888D      		ldd r24,Y+24
2596
 2611 1840 998D      		ldd r25,Y+25
2597
 2612 1842 0E94 0000 		call __mulsi3
2598
 2613 1846 20E4      		ldi r18,lo8(64)
2599
 2614 1848 30E0      		ldi r19,hi8(64)
2600
 2615 184a 40E0      		ldi r20,hlo8(64)
2601
 2616 184c 50E0      		ldi r21,hhi8(64)
2602
 2617 184e 0E94 0000 		call __divmodsi4
2603
 2618 1852 E20E      		add r14,r18
2604
 2619 1854 F31E      		adc r15,r19
2605
 2620 1856 F101      		movw r30,r2
2606
 2621 1858 2281      		ldd r18,Z+2
2607
 2622 185a 3327      		clr r19
2608
 2623 185c 27FD      		sbrc r18,7
2609
 2624 185e 3095      		com r19
2610
 2625 1860 432F      		mov r20,r19
2611
 2626 1862 532F      		mov r21,r19
2612
 2627 1864 C301      		movw r24,r6
2613
 2628 1866 B201      		movw r22,r4
2614
 2629 1868 0E94 0000 		call __mulsi3
2615
 2630 186c 20E4      		ldi r18,lo8(64)
2616
 2631 186e 30E0      		ldi r19,hi8(64)
2617
 2632 1870 40E0      		ldi r20,hlo8(64)
2618
 2633 1872 50E0      		ldi r21,hhi8(64)
2619
 2634 1874 0E94 0000 		call __divmodsi4
2620
 2635 1878 E20E      		add r14,r18
2621
 2636 187a F31E      		adc r15,r19
2622
 2637 187c F501      		movw r30,r10
2623
 2638 187e 8081      		ld r24,Z
2624
 2639 1880 9181      		ldd r25,Z+1
2625
 2640 1882 E80E      		add r14,r24
2626
 2641 1884 F91E      		adc r15,r25
2627
 2642 1886 F7FC      		sbrc r15,7
2628
 2643 1888 00C0      		rjmp .L495
2629
 2644               	.L461:
2630
 2645 188a C701      		movw r24,r14
2631
 2646 188c 9595      		asr r25
2632
 2647 188e 8795      		ror r24
2633
 2648 1890 F501      		movw r30,r10
2634
 2649 1892 8083      		st Z,r24
2635
 2650 1894 9183      		std Z+1,r25
2636
 2651 1896 97FD      		sbrc r25,7
2637
 2652 1898 00C0      		rjmp .L496
2638
 2653               	.L462:
2639
 2654 189a AC01      		movw r20,r24
2640
 2655 189c 5595      		asr r21
2641
 2656 189e 4795      		ror r20
2642
 2657 18a0 5595      		asr r21
2643
 2658 18a2 4795      		ror r20
2644
 2659 18a4 8091 0000 		lds r24,ParamSet+18
2645
 2660 18a8 282F      		mov r18,r24
2646
 2661 18aa 30E0      		ldi r19,lo8(0)
2647
 2662 18ac 4217      		cp r20,r18
2648
 2663 18ae 5307      		cpc r21,r19
2649
 2664 18b0 04F0      		brlt .L463
2650
 2665 18b2 8091 0000 		lds r24,ParamSet+19
2651
 2666 18b6 90E0      		ldi r25,lo8(0)
2652
 2667 18b8 9A01      		movw r18,r20
2653
 2668 18ba 8417      		cp r24,r20
2654
 2669 18bc 9507      		cpc r25,r21
2655
 2670 18be 04F4      		brge .L463
2656
 2671 18c0 9C01      		movw r18,r24
2657
 2672               	.L463:
2658
 2673 18c2 F401      		movw r30,r8
2659
 2674 18c4 2083      		st Z,r18
2660
 2675               	.L465:
2661
 2676 18c6 24E0      		ldi r18,lo8(4)
2662
 2677 18c8 30E0      		ldi r19,hi8(4)
2663
 2678 18ca 220E      		add r2,r18
2664
 2679 18cc 331E      		adc r3,r19
2665
 2680 18ce 45E0      		ldi r20,lo8(5)
2666
 2681 18d0 50E0      		ldi r21,hi8(5)
2667
 2682 18d2 840E      		add r8,r20
2668
 2683 18d4 951E      		adc r9,r21
2669
 2684 18d6 62E0      		ldi r22,lo8(2)
2670
 2685 18d8 70E0      		ldi r23,hi8(2)
2671
 2686 18da A60E      		add r10,r22
2672
 2687 18dc B71E      		adc r11,r23
2673
 2688 18de 70E0      		ldi r23,lo8(Mixer+61)
2674
 2689 18e0 2716      		cp r2,r23
2675
 2690 18e2 70E0      		ldi r23,hi8(Mixer+61)
2676
 2691 18e4 3706      		cpc r3,r23
2677
 2692 18e6 01F4      		brne .+2
2678
 2693 18e8 00C0      		rjmp .L497
2679
 2694               	.L466:
2680
 2695 18ea F101      		movw r30,r2
2681
 2696 18ec D080      		ld r13,Z
2682
 2697 18ee 1D14      		cp __zero_reg__,r13
2683
 2698 18f0 04F4      		brge .+2
2684
 2699 18f2 00C0      		rjmp .L498
2685
 2700 18f4 F401      		movw r30,r8
2686
 2701 18f6 1082      		st Z,__zero_reg__
2687
 2702 18f8 00C0      		rjmp .L465
2688
 2703               	.L282:
2689
 2704 18fa 8091 0000 		lds r24,RC_Quality
2690
 2705 18fe 9091 0000 		lds r25,(RC_Quality)+1
2691
 2706 1902 8D38      		cpi r24,141
2692
 2707 1904 9105      		cpc r25,__zero_reg__
2693
 2708 1906 04F4      		brge .+2
2694
 2709 1908 00C0      		rjmp .L290
2695
 2710 190a 8091 0000 		lds r24,MKFlags
2696
 2711 190e 8F7E      		andi r24,lo8(-17)
2697
 2712 1910 8093 0000 		sts MKFlags,r24
2698
 2713 1914 8091 0000 		lds r24,ParamSet+27
2699
 2714 1918 22E3      		ldi r18,lo8(50)
2700
 2715 191a 829F      		mul r24,r18
2701
 2716 191c C001      		movw r24,r0
2702
 2717 191e 1124      		clr r1
2703
 2718 1920 9093 0000 		sts (RcLostTimer.1981)+1,r25
2704
 2719 1924 8093 0000 		sts RcLostTimer.1981,r24
2705
 2720 1928 2F81      		ldd r18,Y+7
2706
 2721 192a 3885      		ldd r19,Y+8
2707
 2722 192c 2932      		cpi r18,41
2708
 2723 192e 3105      		cpc r19,__zero_reg__
2709
 2724 1930 04F0      		brlt .L291
2710
 2725 1932 8091 0000 		lds r24,MKFlags
2711
 2726 1936 80FF      		sbrs r24,0
2712
 2727 1938 00C0      		rjmp .L291
2713
 2728 193a 8091 0000 		lds r24,ModelIsFlying
2714
 2729 193e 9091 0000 		lds r25,(ModelIsFlying)+1
2715
 2730 1942 3FEF      		ldi r19,hi8(-1)
2716
 2731 1944 8F3F      		cpi r24,lo8(-1)
2717
 2732 1946 9307      		cpc r25,r19
2718
 2733 1948 01F4      		brne .+4
2719
 2734 194a 0C94 0000 		jmp .L292
2720
 2735 194e 0196      		adiw r24,1
2721
 2736 1950 9093 0000 		sts (ModelIsFlying)+1,r25
2722
 2737 1954 8093 0000 		sts ModelIsFlying,r24
2723
 2738               	.L291:
2724
 2739 1958 8091 0000 		lds r24,ModelIsFlying
2725
 2740 195c 9091 0000 		lds r25,(ModelIsFlying)+1
2726
 2741 1960 8F3F      		cpi r24,255
2727
 2742 1962 9105      		cpc r25,__zero_reg__
2728
 2743 1964 01F0      		breq .+6
2729
 2744 1966 00F0      		brlo .+4
2730
 2745 1968 0C94 0000 		jmp .L292
2731
 2746 196c 1092 0000 		sts IPartNick.1972,__zero_reg__
2732
 2747 1970 1092 0000 		sts (IPartNick.1972)+1,__zero_reg__
2733
 2748 1974 1092 0000 		sts (IPartNick.1972)+2,__zero_reg__
2734
 2749 1978 1092 0000 		sts (IPartNick.1972)+3,__zero_reg__
2735
 2750 197c 1092 0000 		sts IPartRoll.1973,__zero_reg__
2736
 2751 1980 1092 0000 		sts (IPartRoll.1973)+1,__zero_reg__
2737
 2752 1984 1092 0000 		sts (IPartRoll.1973)+2,__zero_reg__
2738
 2753 1988 1092 0000 		sts (IPartRoll.1973)+3,__zero_reg__
2739
 2754 198c 1092 0000 		sts (StickYaw)+1,__zero_reg__
2740
 2755 1990 1092 0000 		sts StickYaw,__zero_reg__
2741
 2756 1994 8A3F      		cpi r24,250
2742
 2757 1996 9105      		cpc r25,__zero_reg__
2743
 2758 1998 01F4      		brne .+4
2744
 2759 199a 0C94 0000 		jmp .L499
2745
 2760               	.L293:
2746
 2761 199e 8091 0000 		lds r24,ParamSet+4
2747
 2762 19a2 E82F      		mov r30,r24
2748
 2763 19a4 F0E0      		ldi r31,lo8(0)
2749
 2764 19a6 EE0F      		lsl r30
2750
 2765 19a8 FF1F      		rol r31
2751
 2766 19aa E050      		subi r30,lo8(-(PPM_in))
2752
 2767 19ac F040      		sbci r31,hi8(-(PPM_in))
2753
 2768 19ae 8081      		ld r24,Z
2754
 2769 19b0 9181      		ldd r25,Z+1
2755
 2770 19b2 E090 0000 		lds r14,Poti1
2756
 2771 19b6 F090 0000 		lds r15,(Poti1)+1
2757
 2772 19ba 8359      		subi r24,lo8(-(109))
2758
 2773 19bc 9F4F      		sbci r25,hi8(-(109))
2759
 2774 19be 8E15      		cp r24,r14
2760
 2775 19c0 9F05      		cpc r25,r15
2761
 2776 19c2 04F4      		brge .+4
2762
 2777 19c4 0C94 0000 		jmp .L294
2763
 2778 19c8 C701      		movw r24,r14
2764
 2779 19ca 0196      		adiw r24,1
2765
 2780 19cc 9093 0000 		sts (Poti1)+1,r25
2766
 2781 19d0 8093 0000 		sts Poti1,r24
2767
 2782 19d4 7C01      		movw r14,r24
2768
 2783               	.L295:
2769
 2784 19d6 8091 0000 		lds r24,ParamSet+5
2770
 2785 19da E82F      		mov r30,r24
2771
 2786 19dc F0E0      		ldi r31,lo8(0)
2772
 2787 19de EE0F      		lsl r30
2773
 2788 19e0 FF1F      		rol r31
2774
 2789 19e2 E050      		subi r30,lo8(-(PPM_in))
2775
 2790 19e4 F040      		sbci r31,hi8(-(PPM_in))
2776
 2791 19e6 8081      		ld r24,Z
2777
 2792 19e8 9181      		ldd r25,Z+1
2778
 2793 19ea 0091 0000 		lds r16,Poti2
2779
 2794 19ee 1091 0000 		lds r17,(Poti2)+1
2780
 2795 19f2 8359      		subi r24,lo8(-(109))
2781
 2796 19f4 9F4F      		sbci r25,hi8(-(109))
2782
 2797 19f6 8017      		cp r24,r16
2783
 2798 19f8 9107      		cpc r25,r17
2784
 2799 19fa 04F4      		brge .+4
2785
 2800 19fc 0C94 0000 		jmp .L296
2786
 2801 1a00 C801      		movw r24,r16
2787
 2802 1a02 0196      		adiw r24,1
2788
 2803 1a04 9093 0000 		sts (Poti2)+1,r25
2789
 2804 1a08 8093 0000 		sts Poti2,r24
2790
 2805 1a0c 8C01      		movw r16,r24
2791
 2806               	.L297:
2792
 2807 1a0e 8091 0000 		lds r24,ParamSet+6
2793
 2808 1a12 E82F      		mov r30,r24
2794
 2809 1a14 F0E0      		ldi r31,lo8(0)
2795
 2810 1a16 EE0F      		lsl r30
2796
 2811 1a18 FF1F      		rol r31
2797
 2812 1a1a E050      		subi r30,lo8(-(PPM_in))
2798
 2813 1a1c F040      		sbci r31,hi8(-(PPM_in))
2799
 2814 1a1e 8081      		ld r24,Z
2800
 2815 1a20 9181      		ldd r25,Z+1
2801
 2816 1a22 A090 0000 		lds r10,Poti3
2802
 2817 1a26 B090 0000 		lds r11,(Poti3)+1
2803
 2818 1a2a 8359      		subi r24,lo8(-(109))
2804
 2819 1a2c 9F4F      		sbci r25,hi8(-(109))
2805
 2820 1a2e 8A15      		cp r24,r10
2806
 2821 1a30 9B05      		cpc r25,r11
2807
 2822 1a32 04F4      		brge .+4
2808
 2823 1a34 0C94 0000 		jmp .L298
2809
 2824 1a38 C501      		movw r24,r10
2810
 2825 1a3a 0196      		adiw r24,1
2811
 2826 1a3c 9093 0000 		sts (Poti3)+1,r25
2812
 2827 1a40 8093 0000 		sts Poti3,r24
2813
 2828 1a44 5C01      		movw r10,r24
2814
 2829               	.L299:
2815
 2830 1a46 8091 0000 		lds r24,ParamSet+7
2816
 2831 1a4a E82F      		mov r30,r24
2817
 2832 1a4c F0E0      		ldi r31,lo8(0)
2818
 2833 1a4e EE0F      		lsl r30
2819
 2834 1a50 FF1F      		rol r31
2820
 2835 1a52 E050      		subi r30,lo8(-(PPM_in))
2821
 2836 1a54 F040      		sbci r31,hi8(-(PPM_in))
2822
 2837 1a56 8081      		ld r24,Z
2823
 2838 1a58 9181      		ldd r25,Z+1
2824
 2839 1a5a A091 0000 		lds r26,Poti4
2825
 2840 1a5e B091 0000 		lds r27,(Poti4)+1
2826
 2841 1a62 8359      		subi r24,lo8(-(109))
2827
 2842 1a64 9F4F      		sbci r25,hi8(-(109))
2828
 2843 1a66 8A17      		cp r24,r26
2829
 2844 1a68 9B07      		cpc r25,r27
2830
 2845 1a6a 04F4      		brge .+4
2831
 2846 1a6c 0C94 0000 		jmp .L300
2832
 2847 1a70 CD01      		movw r24,r26
2833
 2848 1a72 0196      		adiw r24,1
2834
 2849 1a74 9093 0000 		sts (Poti4)+1,r25
2835
 2850 1a78 8093 0000 		sts Poti4,r24
2836
 2851 1a7c DC01      		movw r26,r24
2837
 2852               	.L301:
2838
 2853 1a7e 8091 0000 		lds r24,PPM_in+18
2839
 2854 1a82 9091 0000 		lds r25,(PPM_in+18)+1
2840
 2855 1a86 E091 0000 		lds r30,Poti5
2841
 2856 1a8a F091 0000 		lds r31,(Poti5)+1
2842
 2857 1a8e 8359      		subi r24,lo8(-(109))
2843
 2858 1a90 9F4F      		sbci r25,hi8(-(109))
2844
 2859 1a92 8E17      		cp r24,r30
2845
 2860 1a94 9F07      		cpc r25,r31
2846
 2861 1a96 04F4      		brge .+4
2847
 2862 1a98 0C94 0000 		jmp .L302
2848
 2863 1a9c CF01      		movw r24,r30
2849
 2864 1a9e 0196      		adiw r24,1
2850
 2865 1aa0 9093 0000 		sts (Poti5)+1,r25
2851
 2866 1aa4 8093 0000 		sts Poti5,r24
2852
 2867 1aa8 FC01      		movw r30,r24
2853
 2868               	.L303:
2854
 2869 1aaa 8091 0000 		lds r24,PPM_in+20
2855
 2870 1aae 9091 0000 		lds r25,(PPM_in+20)+1
2856
 2871 1ab2 6091 0000 		lds r22,Poti6
2857
 2872 1ab6 7091 0000 		lds r23,(Poti6)+1
2858
 2873 1aba 8359      		subi r24,lo8(-(109))
2859
 2874 1abc 9F4F      		sbci r25,hi8(-(109))
2860
 2875 1abe 8617      		cp r24,r22
2861
 2876 1ac0 9707      		cpc r25,r23
2862
 2877 1ac2 04F4      		brge .+4
2863
 2878 1ac4 0C94 0000 		jmp .L304
2864
 2879 1ac8 CB01      		movw r24,r22
2865
 2880 1aca 0196      		adiw r24,1
2866
 2881 1acc 9093 0000 		sts (Poti6)+1,r25
2867
 2882 1ad0 8093 0000 		sts Poti6,r24
2868
 2883 1ad4 BC01      		movw r22,r24
2869
 2884               	.L305:
2870
 2885 1ad6 8091 0000 		lds r24,PPM_in+22
2871
 2886 1ada 9091 0000 		lds r25,(PPM_in+22)+1
2872
 2887 1ade 4091 0000 		lds r20,Poti7
2873
 2888 1ae2 5091 0000 		lds r21,(Poti7)+1
2874
 2889 1ae6 8359      		subi r24,lo8(-(109))
2875
 2890 1ae8 9F4F      		sbci r25,hi8(-(109))
2876
 2891 1aea 8417      		cp r24,r20
2877
 2892 1aec 9507      		cpc r25,r21
2878
 2893 1aee 04F4      		brge .+4
2879
 2894 1af0 0C94 0000 		jmp .L306
2880
 2895 1af4 CA01      		movw r24,r20
2881
 2896 1af6 0196      		adiw r24,1
2882
 2897 1af8 9093 0000 		sts (Poti7)+1,r25
2883
 2898 1afc 8093 0000 		sts Poti7,r24
2884
 2899 1b00 AC01      		movw r20,r24
2885
 2900               	.L307:
2886
 2901 1b02 8091 0000 		lds r24,PPM_in+24
2887
 2902 1b06 9091 0000 		lds r25,(PPM_in+24)+1
2888
 2903 1b0a 2091 0000 		lds r18,Poti8
2889
 2904 1b0e 3091 0000 		lds r19,(Poti8)+1
2890
 2905 1b12 8359      		subi r24,lo8(-(109))
2891
 2906 1b14 9F4F      		sbci r25,hi8(-(109))
2892
 2907 1b16 8217      		cp r24,r18
2893
 2908 1b18 9307      		cpc r25,r19
2894
 2909 1b1a 04F4      		brge .+4
2895
 2910 1b1c 0C94 0000 		jmp .L308
2896
 2911 1b20 C901      		movw r24,r18
2897
 2912 1b22 0196      		adiw r24,1
2898
 2913 1b24 9093 0000 		sts (Poti8)+1,r25
2899
 2914 1b28 8093 0000 		sts Poti8,r24
2900
 2915 1b2c 9C01      		movw r18,r24
2901
 2916               	.L309:
2902
 2917 1b2e F7FE      		sbrs r15,7
2903
 2918 1b30 00C0      		rjmp .+4
2904
 2919 1b32 0C94 0000 		jmp .L500
2905
 2920 1b36 8FEF      		ldi r24,lo8(255)
2906
 2921 1b38 E816      		cp r14,r24
2907
 2922 1b3a F104      		cpc r15,__zero_reg__
2908
 2923 1b3c 01F0      		breq .L311
2909
 2924 1b3e 04F0      		brlt .L311
2910
 2925 1b40 8FEF      		ldi r24,lo8(255)
2911
 2926 1b42 90E0      		ldi r25,hi8(255)
2912
 2927 1b44 9093 0000 		sts (Poti1)+1,r25
2913
 2928 1b48 8093 0000 		sts Poti1,r24
2914
 2929               	.L311:
2915
 2930 1b4c 17FF      		sbrs r17,7
2916
 2931 1b4e 00C0      		rjmp .+4
2917
 2932 1b50 0C94 0000 		jmp .L501
2918
 2933 1b54 0F3F      		cpi r16,255
2919
 2934 1b56 1105      		cpc r17,__zero_reg__
2920
 2935 1b58 01F0      		breq .L313
2921
 2936 1b5a 04F0      		brlt .L313
2922
 2937 1b5c 8FEF      		ldi r24,lo8(255)
2923
 2938 1b5e 90E0      		ldi r25,hi8(255)
2924
 2939 1b60 9093 0000 		sts (Poti2)+1,r25
2925
 2940 1b64 8093 0000 		sts Poti2,r24
2926
 2941               	.L313:
2927
 2942 1b68 B7FE      		sbrs r11,7
2928
 2943 1b6a 00C0      		rjmp .+4
2929
 2944 1b6c 0C94 0000 		jmp .L502
2930
 2945 1b70 9FEF      		ldi r25,lo8(255)
2931
 2946 1b72 A916      		cp r10,r25
2932
 2947 1b74 B104      		cpc r11,__zero_reg__
2933
 2948 1b76 01F0      		breq .L315
2934
 2949 1b78 04F0      		brlt .L315
2935
 2950 1b7a 8FEF      		ldi r24,lo8(255)
2936
 2951 1b7c 90E0      		ldi r25,hi8(255)
2937
 2952 1b7e 9093 0000 		sts (Poti3)+1,r25
2938
 2953 1b82 8093 0000 		sts Poti3,r24
2939
 2954               	.L315:
2940
 2955 1b86 B7FF      		sbrs r27,7
2941
 2956 1b88 00C0      		rjmp .+4
2942
 2957 1b8a 0C94 0000 		jmp .L503
2943
 2958 1b8e AF3F      		cpi r26,255
2944
 2959 1b90 B105      		cpc r27,__zero_reg__
2945
 2960 1b92 01F0      		breq .L317
2946
 2961 1b94 04F0      		brlt .L317
2947
 2962 1b96 8FEF      		ldi r24,lo8(255)
2948
 2963 1b98 90E0      		ldi r25,hi8(255)
2949
 2964 1b9a 9093 0000 		sts (Poti4)+1,r25
2950
 2965 1b9e 8093 0000 		sts Poti4,r24
2951
 2966               	.L317:
2952
 2967 1ba2 F7FF      		sbrs r31,7
2953
 2968 1ba4 00C0      		rjmp .+4
2954
 2969 1ba6 0C94 0000 		jmp .L504
2955
 2970 1baa EF3F      		cpi r30,255
2956
 2971 1bac F105      		cpc r31,__zero_reg__
2957
 2972 1bae 01F0      		breq .L319
2958
 2973 1bb0 04F0      		brlt .L319
2959
 2974 1bb2 8FEF      		ldi r24,lo8(255)
2960
 2975 1bb4 90E0      		ldi r25,hi8(255)
2961
 2976 1bb6 9093 0000 		sts (Poti5)+1,r25
2962
 2977 1bba 8093 0000 		sts Poti5,r24
2963
 2978               	.L319:
2964
 2979 1bbe 77FF      		sbrs r23,7
2965
 2980 1bc0 00C0      		rjmp .+4
2966
 2981 1bc2 0C94 0000 		jmp .L505
2967
 2982 1bc6 6F3F      		cpi r22,255
2968
 2983 1bc8 7105      		cpc r23,__zero_reg__
2969
 2984 1bca 01F0      		breq .L321
2970
 2985 1bcc 04F0      		brlt .L321
2971
 2986 1bce 8FEF      		ldi r24,lo8(255)
2972
 2987 1bd0 90E0      		ldi r25,hi8(255)
2973
 2988 1bd2 9093 0000 		sts (Poti6)+1,r25
2974
 2989 1bd6 8093 0000 		sts Poti6,r24
2975
 2990               	.L321:
2976
 2991 1bda 57FF      		sbrs r21,7
2977
 2992 1bdc 00C0      		rjmp .+4
2978
 2993 1bde 0C94 0000 		jmp .L506
2979
 2994 1be2 4F3F      		cpi r20,255
2980
 2995 1be4 5105      		cpc r21,__zero_reg__
2981
 2996 1be6 01F0      		breq .L323
2982
 2997 1be8 04F0      		brlt .L323
2983
 2998 1bea 8FEF      		ldi r24,lo8(255)
2984
 2999 1bec 90E0      		ldi r25,hi8(255)
2985
 3000 1bee 9093 0000 		sts (Poti7)+1,r25
2986
 3001 1bf2 8093 0000 		sts Poti7,r24
2987
 3002               	.L323:
2988
 3003 1bf6 37FF      		sbrs r19,7
2989
 3004 1bf8 00C0      		rjmp .+4
2990
 3005 1bfa 0C94 0000 		jmp .L507
2991
 3006 1bfe 2F3F      		cpi r18,255
2992
 3007 1c00 3105      		cpc r19,__zero_reg__
2993
 3008 1c02 01F0      		breq .L325
2994
 3009 1c04 04F0      		brlt .L325
2995
 3010 1c06 8FEF      		ldi r24,lo8(255)
2996
 3011 1c08 90E0      		ldi r25,hi8(255)
2997
 3012 1c0a 9093 0000 		sts (Poti8)+1,r25
2998
 3013 1c0e 8093 0000 		sts Poti8,r24
2999
 3014               	.L325:
3000
 3015 1c12 8091 0000 		lds r24,ParamSet+2
3001
 3016 1c16 A82F      		mov r26,r24
3002
 3017 1c18 B0E0      		ldi r27,lo8(0)
3003
 3018 1c1a AA0F      		lsl r26
3004
 3019 1c1c BB1F      		rol r27
3005
 3020 1c1e FD01      		movw r30,r26
3006
 3021 1c20 E050      		subi r30,lo8(-(PPM_in))
3007
 3022 1c22 F040      		sbci r31,hi8(-(PPM_in))
3008
 3023 1c24 8081      		ld r24,Z
3009
 3024 1c26 9181      		ldd r25,Z+1
3010
 3025 1c28 8135      		cpi r24,81
3011
 3026 1c2a 9105      		cpc r25,__zero_reg__
3012
 3027 1c2c 04F4      		brge .+2
3013
 3028 1c2e 00C0      		rjmp .L326
3014
 3029 1c30 8091 0000 		lds r24,MKFlags
3015
 3030 1c34 80FD      		sbrc r24,0
3016
 3031 1c36 00C0      		rjmp .L326
3017
 3032 1c38 8091 0000 		lds r24,ParamSet+3
3018
 3033 1c3c E82F      		mov r30,r24
3019
 3034 1c3e F0E0      		ldi r31,lo8(0)
3020
 3035 1c40 EE0F      		lsl r30
3021
 3036 1c42 FF1F      		rol r31
3022
 3037 1c44 E050      		subi r30,lo8(-(PPM_in))
3023
 3038 1c46 F040      		sbci r31,hi8(-(PPM_in))
3024
 3039 1c48 8081      		ld r24,Z
3025
 3040 1c4a 9181      		ldd r25,Z+1
3026
 3041 1c4c 8C34      		cpi r24,76
3027
 3042 1c4e 9105      		cpc r25,__zero_reg__
3028
 3043 1c50 04F4      		brge .+4
3029
 3044 1c52 0C94 0000 		jmp .L327
3030
 3045 1c56 8091 0000 		lds r24,delay_neutral.1982
3031
 3046 1c5a 8F5F      		subi r24,lo8(-(1))
3032
 3047 1c5c 8093 0000 		sts delay_neutral.1982,r24
3033
 3048 1c60 893C      		cpi r24,lo8(-55)
3034
 3049 1c62 00F4      		brsh .+2
3035
 3050 1c64 00C0      		rjmp .L326
3036
 3051 1c66 1092 0000 		sts delay_neutral.1982,__zero_reg__
3037
 3052 1c6a EBE0      		ldi r30,lo8(11)
3038
 3053 1c6c ED15      		cp r30,r13
3039
 3054 1c6e 00F4      		brsh .+4
3040
 3055 1c70 0C94 0000 		jmp .L329
3041
 3056 1c74 2998      		cbi 37-0x20,1
3042
 3057               	.L330:
3043
 3058 1c76 1092 0000 		sts (ModelIsFlying)+1,__zero_reg__
3044
 3059 1c7a 1092 0000 		sts ModelIsFlying,__zero_reg__
3045
 3060 1c7e 8091 0000 		lds r24,ParamSet
3046
 3061 1c82 482F      		mov r20,r24
3047
 3062 1c84 50E0      		ldi r21,lo8(0)
3048
 3063 1c86 440F      		lsl r20
3049
 3064 1c88 551F      		rol r21
3050
 3065 1c8a FA01      		movw r30,r20
3051
 3066 1c8c E050      		subi r30,lo8(-(PPM_in))
3052
 3067 1c8e F040      		sbci r31,hi8(-(PPM_in))
3053
 3068 1c90 8081      		ld r24,Z
3054
 3069 1c92 9181      		ldd r25,Z+1
3055
 3070 1c94 8734      		cpi r24,71
3056
 3071 1c96 9105      		cpc r25,__zero_reg__
3057
 3072 1c98 04F4      		brge .+4
3058
 3073 1c9a 0C94 0000 		jmp .L331
3059
 3074 1c9e 8091 0000 		lds r24,ParamSet+1
3060
 3075 1ca2 A82F      		mov r26,r24
3061
 3076 1ca4 B0E0      		ldi r27,lo8(0)
3062
 3077 1ca6 AA0F      		lsl r26
3063
 3078 1ca8 BB1F      		rol r27
3064
 3079               	.L332:
3065
 3080 1caa FD01      		movw r30,r26
3066
 3081 1cac E050      		subi r30,lo8(-(PPM_in))
3067
 3082 1cae F040      		sbci r31,hi8(-(PPM_in))
3068
 3083 1cb0 8081      		ld r24,Z
3069
 3084 1cb2 9181      		ldd r25,Z+1
3070
 3085 1cb4 8734      		cpi r24,71
3071
 3086 1cb6 9105      		cpc r25,__zero_reg__
3072
 3087 1cb8 04F0      		brlt .L335
3073
 3088 1cba FA01      		movw r30,r20
3074
 3089 1cbc E050      		subi r30,lo8(-(PPM_in))
3075
 3090 1cbe F040      		sbci r31,hi8(-(PPM_in))
3076
 3091 1cc0 0190      		ld __tmp_reg__,Z+
3077
 3092 1cc2 F081      		ld r31,Z
3078
 3093 1cc4 E02D      		mov r30,__tmp_reg__
3079
 3094               	.L335:
3080
 3095 1cc6 FD01      		movw r30,r26
3081
 3096 1cc8 E050      		subi r30,lo8(-(PPM_in))
3082
 3097 1cca F040      		sbci r31,hi8(-(PPM_in))
3083
 3098 1ccc 8081      		ld r24,Z
3084
 3099 1cce 9181      		ldd r25,Z+1
3085
 3100 1cd0 8734      		cpi r24,71
3086
 3101 1cd2 9105      		cpc r25,__zero_reg__
3087
 3102 1cd4 04F4      		brge .+4
3088
 3103 1cd6 0C94 0000 		jmp .L336
3089
 3104 1cda FA01      		movw r30,r20
3090
 3105 1cdc E050      		subi r30,lo8(-(PPM_in))
3091
 3106 1cde F040      		sbci r31,hi8(-(PPM_in))
3092
 3107 1ce0 8081      		ld r24,Z
3093
 3108 1ce2 9181      		ldd r25,Z+1
3094
 3109 1ce4 8734      		cpi r24,71
3095
 3110 1ce6 9105      		cpc r25,__zero_reg__
3096
 3111 1ce8 04F4      		brge .+4
3097
 3112 1cea 0C94 0000 		jmp .L336
3098
 3113 1cee 22E0      		ldi r18,lo8(2)
3099
 3114               	.L337:
3100
 3115 1cf0 FD01      		movw r30,r26
3101
 3116 1cf2 E050      		subi r30,lo8(-(PPM_in))
3102
 3117 1cf4 F040      		sbci r31,hi8(-(PPM_in))
3103
 3118 1cf6 8081      		ld r24,Z
3104
 3119 1cf8 9181      		ldd r25,Z+1
3105
 3120 1cfa 8634      		cpi r24,70
3106
 3121 1cfc 9105      		cpc r25,__zero_reg__
3107
 3122 1cfe 04F4      		brge .L338
3108
 3123 1d00 FA01      		movw r30,r20
3109
 3124 1d02 E050      		subi r30,lo8(-(PPM_in))
3110
 3125 1d04 F040      		sbci r31,hi8(-(PPM_in))
3111
 3126 1d06 8081      		ld r24,Z
3112
 3127 1d08 9181      		ldd r25,Z+1
3113
 3128 1d0a 8734      		cpi r24,71
3114
 3129 1d0c 9105      		cpc r25,__zero_reg__
3115
 3130 1d0e 04F0      		brlt .L338
3116
 3131 1d10 23E0      		ldi r18,lo8(3)
3117
 3132               	.L338:
3118
 3133 1d12 FD01      		movw r30,r26
3119
 3134 1d14 E050      		subi r30,lo8(-(PPM_in))
3120
 3135 1d16 F040      		sbci r31,hi8(-(PPM_in))
3121
 3136 1d18 8081      		ld r24,Z
3122
 3137 1d1a 9181      		ldd r25,Z+1
3123
 3138 1d1c 8A5B      		subi r24,lo8(-70)
3124
 3139 1d1e 9F4F      		sbci r25,hi8(-70)
3125
 3140 1d20 04F4      		brge .L339
3126
 3141 1d22 FA01      		movw r30,r20
3127
 3142 1d24 E050      		subi r30,lo8(-(PPM_in))
3128
 3143 1d26 F040      		sbci r31,hi8(-(PPM_in))
3129
 3144 1d28 8081      		ld r24,Z
3130
 3145 1d2a 9181      		ldd r25,Z+1
3131
 3146 1d2c 8734      		cpi r24,71
3132
 3147 1d2e 9105      		cpc r25,__zero_reg__
3133
 3148 1d30 04F0      		brlt .L339
3134
 3149 1d32 24E0      		ldi r18,lo8(4)
3135
 3150               	.L339:
3136
 3151 1d34 A050      		subi r26,lo8(-(PPM_in))
3137
 3152 1d36 B040      		sbci r27,hi8(-(PPM_in))
3138
 3153 1d38 8D91      		ld r24,X+
3139
 3154 1d3a 9C91      		ld r25,X
3140
 3155 1d3c 8A5B      		subi r24,lo8(-70)
3141
 3156 1d3e 9F4F      		sbci r25,hi8(-70)
3142
 3157 1d40 04F4      		brge .L340
3143
 3158 1d42 4050      		subi r20,lo8(-(PPM_in))
3144
 3159 1d44 5040      		sbci r21,hi8(-(PPM_in))
3145
 3160 1d46 FA01      		movw r30,r20
3146
 3161 1d48 8081      		ld r24,Z
3147
 3162 1d4a 9181      		ldd r25,Z+1
3148
 3163 1d4c 8634      		cpi r24,70
3149
 3164 1d4e 9105      		cpc r25,__zero_reg__
3150
 3165 1d50 04F4      		brge .L340
3151
 3166 1d52 25E0      		ldi r18,lo8(5)
3152
 3167               	.L340:
3153
 3168 1d54 822F      		mov r24,r18
3154
 3169 1d56 0E94 0000 		call SetActiveParamSet
3155
 3170 1d5a 0E94 0000 		call GetActiveParamSet
3156
 3171 1d5e 0E94 0000 		call ParamSet_ReadFromEEProm
3157
 3172               	.L476:
3158
 3173 1d62 80E0      		ldi r24,lo8(0)
3159
 3174               	.L477:
3160
 3175 1d64 0E94 0000 		call SetNeutral
3161
 3176 1d68 0E94 0000 		call GetActiveParamSet
3162
 3177 1d6c 0E94 0000 		call Beep
3163
 3178 1d70 8091 0000 		lds r24,ParamSet+2
3164
 3179 1d74 A82F      		mov r26,r24
3165
 3180 1d76 B0E0      		ldi r27,lo8(0)
3166
 3181 1d78 AA0F      		lsl r26
3167
 3182 1d7a BB1F      		rol r27
3168
 3183               	.L326:
3169
 3184 1d7c A050      		subi r26,lo8(-(PPM_in))
3170
 3185 1d7e B040      		sbci r27,hi8(-(PPM_in))
3171
 3186 1d80 8D91      		ld r24,X+
3172
 3187 1d82 9C91      		ld r25,X
3173
 3188 1d84 8B5A      		subi r24,lo8(-85)
3174
 3189 1d86 9F4F      		sbci r25,hi8(-85)
3175
 3190 1d88 04F0      		brlt .+2
3176
 3191 1d8a 00C0      		rjmp .L290
3177
 3192 1d8c E091 0000 		lds r30,ParamSet+3
3178
 3193 1d90 F0E0      		ldi r31,lo8(0)
3179
 3194 1d92 EE0F      		lsl r30
3180
 3195 1d94 FF1F      		rol r31
3181
 3196 1d96 E050      		subi r30,lo8(-(PPM_in))
3182
 3197 1d98 F040      		sbci r31,hi8(-(PPM_in))
3183
 3198 1d9a 8081      		ld r24,Z
3184
 3199 1d9c 9181      		ldd r25,Z+1
3185
 3200 1d9e 855B      		subi r24,lo8(-75)
3186
 3201 1da0 9F4F      		sbci r25,hi8(-75)
3187
 3202 1da2 04F0      		brlt .+2
3188
 3203 1da4 00C0      		rjmp .L348
3189
 3204 1da6 8091 0000 		lds r24,delay_startmotors.1983
3190
 3205 1daa 9091 0000 		lds r25,(delay_startmotors.1983)+1
3191
 3206 1dae 883C      		cpi r24,200
3192
 3207 1db0 9105      		cpc r25,__zero_reg__
3193
 3208 1db2 00F4      		brsh .+4
3194
 3209 1db4 0C94 0000 		jmp .L508
3195
 3210 1db8 883C      		cpi r24,200
3196
 3211 1dba 9105      		cpc r25,__zero_reg__
3197
 3212 1dbc 01F4      		brne .+4
3198
 3213 1dbe 0C94 0000 		jmp .L509
3199
 3214 1dc2 8091 0000 		lds r24,hiResPitchGyro
3200
 3215 1dc6 9091 0000 		lds r25,(hiResPitchGyro)+1
3201
 3216 1dca AA27      		clr r26
3202
 3217 1dcc 97FD      		sbrc r25,7
3203
 3218 1dce A095      		com r26
3204
 3219 1dd0 BA2F      		mov r27,r26
3205
 3220 1dd2 4091 0000 		lds r20,vibrationCalNick.1974
3206
 3221 1dd6 5091 0000 		lds r21,(vibrationCalNick.1974)+1
3207
 3222 1dda 6091 0000 		lds r22,(vibrationCalNick.1974)+2
3208
 3223 1dde 7091 0000 		lds r23,(vibrationCalNick.1974)+3
3209
 3224 1de2 480F      		add r20,r24
3210
 3225 1de4 591F      		adc r21,r25
3211
 3226 1de6 6A1F      		adc r22,r26
3212
 3227 1de8 7B1F      		adc r23,r27
3213
 3228 1dea 4093 0000 		sts vibrationCalNick.1974,r20
3214
 3229 1dee 5093 0000 		sts (vibrationCalNick.1974)+1,r21
3215
 3230 1df2 6093 0000 		sts (vibrationCalNick.1974)+2,r22
3216
 3231 1df6 7093 0000 		sts (vibrationCalNick.1974)+3,r23
3217
 3232 1dfa 8091 0000 		lds r24,hiResRollGyro
3218
 3233 1dfe 9091 0000 		lds r25,(hiResRollGyro)+1
3219
 3234 1e02 AA27      		clr r26
3220
 3235 1e04 97FD      		sbrc r25,7
3221
 3236 1e06 A095      		com r26
3222
 3237 1e08 BA2F      		mov r27,r26
3223
 3238 1e0a A090 0000 		lds r10,vibrationCalRoll.1975
3224
 3239 1e0e B090 0000 		lds r11,(vibrationCalRoll.1975)+1
3225
 3240 1e12 C090 0000 		lds r12,(vibrationCalRoll.1975)+2
3226
 3241 1e16 D090 0000 		lds r13,(vibrationCalRoll.1975)+3
3227
 3242 1e1a A80E      		add r10,r24
3228
 3243 1e1c B91E      		adc r11,r25
3229
 3244 1e1e CA1E      		adc r12,r26
3230
 3245 1e20 DB1E      		adc r13,r27
3231
 3246 1e22 A092 0000 		sts vibrationCalRoll.1975,r10
3232
 3247 1e26 B092 0000 		sts (vibrationCalRoll.1975)+1,r11
3233
 3248 1e2a C092 0000 		sts (vibrationCalRoll.1975)+2,r12
3234
 3249 1e2e D092 0000 		sts (vibrationCalRoll.1975)+3,r13
3235
 3250 1e32 8091 0000 		lds r24,rawYawGyroSum
3236
 3251 1e36 9091 0000 		lds r25,(rawYawGyroSum)+1
3237
 3252 1e3a AA27      		clr r26
3238
 3253 1e3c 97FD      		sbrc r25,7
3239
 3254 1e3e A095      		com r26
3240
 3255 1e40 BA2F      		mov r27,r26
3241
 3256 1e42 6090 0000 		lds r6,vibrationCalYaw.1976
3242
 3257 1e46 7090 0000 		lds r7,(vibrationCalYaw.1976)+1
3243
 3258 1e4a 8090 0000 		lds r8,(vibrationCalYaw.1976)+2
3244
 3259 1e4e 9090 0000 		lds r9,(vibrationCalYaw.1976)+3
3245
 3260 1e52 680E      		add r6,r24
3246
 3261 1e54 791E      		adc r7,r25
3247
 3262 1e56 8A1E      		adc r8,r26
3248
 3263 1e58 9B1E      		adc r9,r27
3249
 3264 1e5a 6092 0000 		sts vibrationCalYaw.1976,r6
3250
 3265 1e5e 7092 0000 		sts (vibrationCalYaw.1976)+1,r7
3251
 3266 1e62 8092 0000 		sts (vibrationCalYaw.1976)+2,r8
3252
 3267 1e66 9092 0000 		sts (vibrationCalYaw.1976)+3,r9
3253
 3268 1e6a 2091 0000 		lds r18,vibrationCalCount.1977
3254
 3269 1e6e 3091 0000 		lds r19,(vibrationCalCount.1977)+1
3255
 3270 1e72 2F5F      		subi r18,lo8(-(1))
3256
 3271 1e74 3F4F      		sbci r19,hi8(-(1))
3257
 3272 1e76 3093 0000 		sts (vibrationCalCount.1977)+1,r19
3258
 3273 1e7a 2093 0000 		sts vibrationCalCount.1977,r18
3259
 3274 1e7e 8091 0000 		lds r24,FCParam+15
3260
 3275 1e82 8823      		tst r24
3261
 3276 1e84 01F4      		brne .+4
3262
 3277 1e86 0C94 0000 		jmp .L352
3263
 3278 1e8a 8091 0000 		lds r24,FCParam+16
3264
 3279 1e8e 90E0      		ldi r25,lo8(0)
3265
 3280 1e90 8058      		subi r24,lo8(-(-128))
3266
 3281 1e92 9040      		sbci r25,hi8(-(-128))
3267
 3282 1e94 AA27      		clr r26
3268
 3283 1e96 97FD      		sbrc r25,7
3269
 3284 1e98 A095      		com r26
3270
 3285 1e9a BA2F      		mov r27,r26
3271
 3286 1e9c 8093 0000 		sts vibrationOffsetNick,r24
3272
 3287 1ea0 9093 0000 		sts (vibrationOffsetNick)+1,r25
3273
 3288 1ea4 A093 0000 		sts (vibrationOffsetNick)+2,r26
3274
 3289 1ea8 B093 0000 		sts (vibrationOffsetNick)+3,r27
3275
 3290 1eac 8091 0000 		lds r24,FCParam+17
3276
 3291 1eb0 90E0      		ldi r25,lo8(0)
3277
 3292 1eb2 8058      		subi r24,lo8(-(-128))
3278
 3293 1eb4 9040      		sbci r25,hi8(-(-128))
3279
 3294 1eb6 AA27      		clr r26
3280
 3295 1eb8 97FD      		sbrc r25,7
3281
 3296 1eba A095      		com r26
3282
 3297 1ebc BA2F      		mov r27,r26
3283
 3298 1ebe 8093 0000 		sts vibrationOffsetRoll,r24
3284
 3299 1ec2 9093 0000 		sts (vibrationOffsetRoll)+1,r25
3285
 3300 1ec6 A093 0000 		sts (vibrationOffsetRoll)+2,r26
3286
 3301 1eca B093 0000 		sts (vibrationOffsetRoll)+3,r27
3287
 3302               	.L353:
3288
 3303 1ece 1092 0000 		sts SetPointYaw.1980,__zero_reg__
3289
 3304 1ed2 1092 0000 		sts (SetPointYaw.1980)+1,__zero_reg__
3290
 3305 1ed6 1092 0000 		sts (SetPointYaw.1980)+2,__zero_reg__
3291
 3306 1eda 1092 0000 		sts (SetPointYaw.1980)+3,__zero_reg__
3292
 3307 1ede 1092 0000 		sts ReadingIntegralGyroYaw,__zero_reg__
3293
 3308 1ee2 1092 0000 		sts (ReadingIntegralGyroYaw)+1,__zero_reg__
3294
 3309 1ee6 1092 0000 		sts (ReadingIntegralGyroYaw)+2,__zero_reg__
3295
 3310 1eea 1092 0000 		sts (ReadingIntegralGyroYaw)+3,__zero_reg__
3296
 3311 1eee 1092 0000 		sts ReadingIntegralGyroNick,__zero_reg__
3297
 3312 1ef2 1092 0000 		sts (ReadingIntegralGyroNick)+1,__zero_reg__
3298
 3313 1ef6 1092 0000 		sts (ReadingIntegralGyroNick)+2,__zero_reg__
3299
 3314 1efa 1092 0000 		sts (ReadingIntegralGyroNick)+3,__zero_reg__
3300
 3315 1efe 1092 0000 		sts ReadingIntegralGyroRoll,__zero_reg__
3301
 3316 1f02 1092 0000 		sts (ReadingIntegralGyroRoll)+1,__zero_reg__
3302
 3317 1f06 1092 0000 		sts (ReadingIntegralGyroRoll)+2,__zero_reg__
3303
 3318 1f0a 1092 0000 		sts (ReadingIntegralGyroRoll)+3,__zero_reg__
3304
 3319 1f0e 1092 0000 		sts IPartNick.1972,__zero_reg__
3305
 3320 1f12 1092 0000 		sts (IPartNick.1972)+1,__zero_reg__
3306
 3321 1f16 1092 0000 		sts (IPartNick.1972)+2,__zero_reg__
3307
 3322 1f1a 1092 0000 		sts (IPartNick.1972)+3,__zero_reg__
3308
 3323 1f1e 1092 0000 		sts IPartRoll.1973,__zero_reg__
3309
 3324 1f22 1092 0000 		sts (IPartRoll.1973)+1,__zero_reg__
3310
 3325 1f26 1092 0000 		sts (IPartRoll.1973)+2,__zero_reg__
3311
 3326 1f2a 1092 0000 		sts (IPartRoll.1973)+3,__zero_reg__
3312
 3327 1f2e 00C0      		rjmp .L350
3313
 3328               	.L355:
3314
 3329 1f30 0E94 0000 		call ParameterMapping
3315
 3330 1f34 E091 0000 		lds r30,ParamSet
3316
 3331 1f38 F0E0      		ldi r31,lo8(0)
3317
 3332 1f3a EE0F      		lsl r30
3318
 3333 1f3c FF1F      		rol r31
3319
 3334 1f3e DF01      		movw r26,r30
3320
 3335 1f40 A050      		subi r26,lo8(-(PPM_in))
3321
 3336 1f42 B040      		sbci r27,hi8(-(PPM_in))
3322
 3337 1f44 8D91      		ld r24,X+
3323
 3338 1f46 9C91      		ld r25,X
3324
 3339 1f48 6091 0000 		lds r22,ParamSet+15
3325
 3340 1f4c 70E0      		ldi r23,lo8(0)
3326
 3341 1f4e 869F      		mul r24,r22
3327
 3342 1f50 9001      		movw r18,r0
3328
 3343 1f52 879F      		mul r24,r23
3329
 3344 1f54 300D      		add r19,r0
3330
 3345 1f56 969F      		mul r25,r22
3331
 3346 1f58 300D      		add r19,r0
3332
 3347 1f5a 1124      		clr r1
3333
 3348 1f5c 3093 0000 		sts (stick_nick.1990)+1,r19
3334
 3349 1f60 2093 0000 		sts stick_nick.1990,r18
3335
 3350 1f64 E050      		subi r30,lo8(-(PPM_diff))
3336
 3351 1f66 F040      		sbci r31,hi8(-(PPM_diff))
3337
 3352 1f68 8081      		ld r24,Z
3338
 3353 1f6a 9181      		ldd r25,Z+1
3339
 3354 1f6c 4091 0000 		lds r20,ParamSet+16
3340
 3355 1f70 50E0      		ldi r21,lo8(0)
3341
 3356 1f72 FC01      		movw r30,r24
3342
 3357 1f74 E49F      		mul r30,r20
3343
 3358 1f76 C001      		movw r24,r0
3344
 3359 1f78 E59F      		mul r30,r21
3345
 3360 1f7a 900D      		add r25,r0
3346
 3361 1f7c F49F      		mul r31,r20
3347
 3362 1f7e 900D      		add r25,r0
3348
 3363 1f80 1124      		clr r1
3349
 3364 1f82 820F      		add r24,r18
3350
 3365 1f84 931F      		adc r25,r19
3351
 3366 1f86 9093 0000 		sts (stick_nick.1990)+1,r25
3352
 3367 1f8a 8093 0000 		sts stick_nick.1990,r24
3353
 3368 1f8e 2091 0000 		lds r18,stickOffsetNick
3354
 3369 1f92 3091 0000 		lds r19,(stickOffsetNick)+1
3355
 3370 1f96 821B      		sub r24,r18
3356
 3371 1f98 930B      		sbc r25,r19
3357
 3372 1f9a 2091 0000 		lds r18,GPSStickNick
3358
 3373 1f9e 3091 0000 		lds r19,(GPSStickNick)+1
3359
 3374 1fa2 821B      		sub r24,r18
3360
 3375 1fa4 930B      		sbc r25,r19
3361
 3376 1fa6 9093 0000 		sts (StickNick)+1,r25
3362
 3377 1faa 8093 0000 		sts StickNick,r24
3363
 3378 1fae E091 0000 		lds r30,ParamSet+1
3364
 3379 1fb2 F0E0      		ldi r31,lo8(0)
3365
 3380 1fb4 EE0F      		lsl r30
3366
 3381 1fb6 FF1F      		rol r31
3367
 3382 1fb8 DF01      		movw r26,r30
3368
 3383 1fba A050      		subi r26,lo8(-(PPM_in))
3369
 3384 1fbc B040      		sbci r27,hi8(-(PPM_in))
3370
 3385 1fbe 8D91      		ld r24,X+
3371
 3386 1fc0 9C91      		ld r25,X
3372
 3387 1fc2 869F      		mul r24,r22
3373
 3388 1fc4 9001      		movw r18,r0
3374
 3389 1fc6 879F      		mul r24,r23
3375
 3390 1fc8 300D      		add r19,r0
3376
 3391 1fca 969F      		mul r25,r22
3377
 3392 1fcc 300D      		add r19,r0
3378
 3393 1fce 1124      		clr r1
3379
 3394 1fd0 3093 0000 		sts (stick_roll.1991)+1,r19
3380
 3395 1fd4 2093 0000 		sts stick_roll.1991,r18
3381
 3396 1fd8 E050      		subi r30,lo8(-(PPM_diff))
3382
 3397 1fda F040      		sbci r31,hi8(-(PPM_diff))
3383
 3398 1fdc 8081      		ld r24,Z
3384
 3399 1fde 9181      		ldd r25,Z+1
3385
 3400 1fe0 BC01      		movw r22,r24
3386
 3401 1fe2 649F      		mul r22,r20
3387
 3402 1fe4 C001      		movw r24,r0
3388
 3403 1fe6 659F      		mul r22,r21
3389
 3404 1fe8 900D      		add r25,r0
3390
 3405 1fea 749F      		mul r23,r20
3391
 3406 1fec 900D      		add r25,r0
3392
 3407 1fee 1124      		clr r1
3393
 3408 1ff0 820F      		add r24,r18
3394
 3409 1ff2 931F      		adc r25,r19
3395
 3410 1ff4 9093 0000 		sts (stick_roll.1991)+1,r25
3396
 3411 1ff8 8093 0000 		sts stick_roll.1991,r24
3397
 3412 1ffc 2091 0000 		lds r18,stickOffsetRoll
3398
 3413 2000 3091 0000 		lds r19,(stickOffsetRoll)+1
3399
 3414 2004 821B      		sub r24,r18
3400
 3415 2006 930B      		sbc r25,r19
3401
 3416 2008 2091 0000 		lds r18,GPSStickRoll
3402
 3417 200c 3091 0000 		lds r19,(GPSStickRoll)+1
3403
 3418 2010 821B      		sub r24,r18
3404
 3419 2012 930B      		sbc r25,r19
3405
 3420 2014 9093 0000 		sts (StickRoll)+1,r25
3406
 3421 2018 8093 0000 		sts StickRoll,r24
3407
 3422 201c E091 0000 		lds r30,ParamSet+3
3408
 3423 2020 F0E0      		ldi r31,lo8(0)
3409
 3424 2022 EE0F      		lsl r30
3410
 3425 2024 FF1F      		rol r31
3411
 3426 2026 E050      		subi r30,lo8(-(PPM_in))
3412
 3427 2028 F040      		sbci r31,hi8(-(PPM_in))
3413
 3428 202a 8081      		ld r24,Z
3414
 3429 202c 9181      		ldd r25,Z+1
3415
 3430 202e 2227      		clr r18
3416
 3431 2030 3327      		clr r19
3417
 3432 2032 281B      		sub r18,r24
3418
 3433 2034 390B      		sbc r19,r25
3419
 3434 2036 3093 0000 		sts (StickYaw)+1,r19
3420
 3435 203a 2093 0000 		sts StickYaw,r18
3421
 3436 203e 8091 0000 		lds r24,ParamSet+8
3422
 3437 2042 8872      		andi r24,lo8(40)
3423
 3438 2044 01F0      		breq .L357
3424
 3439 2046 2330      		cpi r18,3
3425
 3440 2048 3105      		cpc r19,__zero_reg__
3426
 3441 204a 04F0      		brlt .+2
3427
 3442 204c 00C0      		rjmp .L510
3428
 3443 204e 7FEF      		ldi r23,hi8(-2)
3429
 3444 2050 2E3F      		cpi r18,lo8(-2)
3430
 3445 2052 3707      		cpc r19,r23
3431
 3446 2054 04F0      		brlt .+2
3432
 3447 2056 00C0      		rjmp .L359
3433
 3448 2058 2E5F      		subi r18,lo8(-(2))
3434
 3449 205a 3F4F      		sbci r19,hi8(-(2))
3435
 3450 205c 3093 0000 		sts (StickYaw)+1,r19
3436
 3451 2060 2093 0000 		sts StickYaw,r18
3437
 3452               	.L357:
3438
 3453 2064 E091 0000 		lds r30,ParamSet+2
3439
 3454 2068 F0E0      		ldi r31,lo8(0)
3440
 3455 206a EE0F      		lsl r30
3441
 3456 206c FF1F      		rol r31
3442
 3457 206e E050      		subi r30,lo8(-(PPM_in))
3443
 3458 2070 F040      		sbci r31,hi8(-(PPM_in))
3444
 3459 2072 0190      		ld __tmp_reg__,Z+
3445
 3460 2074 F081      		ld r31,Z
3446
 3461 2076 E02D      		mov r30,__tmp_reg__
3447
 3462 2078 E858      		subi r30,lo8(-(120))
3448
 3463 207a FF4F      		sbci r31,hi8(-(120))
3449
 3464 207c F093 0000 		sts (StickGas)+1,r31
3450
 3465 2080 E093 0000 		sts StickGas,r30
3451
 3466 2084 8091 0000 		lds r24,FCParam+6
3452
 3467 2088 865F      		subi r24,lo8(-(10))
3453
 3468 208a 8093 0000 		sts GyroPFactor,r24
3454
 3469 208e 9091 0000 		lds r25,FCParam+7
3455
 3470 2092 9093 0000 		sts GyroIFactor,r25
3456
 3471 2096 8093 0000 		sts GyroYawPFactor,r24
3457
 3472 209a 9093 0000 		sts GyroYawIFactor,r25
3458
 3473 209e 8091 0000 		lds r24,ExternControl+10
3459
 3474 20a2 80FF      		sbrs r24,0
3460
 3475 20a4 00C0      		rjmp .L360
3461
 3476 20a6 8091 0000 		lds r24,FCParam+24
3462
 3477 20aa 8138      		cpi r24,lo8(-127)
3463
 3478 20ac 00F4      		brsh .+2
3464
 3479 20ae 00C0      		rjmp .L360
3465
 3480 20b0 2091 0000 		lds r18,ParamSet+15
3466
 3481 20b4 30E0      		ldi r19,lo8(0)
3467
 3482 20b6 8091 0000 		lds r24,ExternControl+3
3468
 3483 20ba 9927      		clr r25
3469
 3484 20bc 87FD      		sbrc r24,7
3470
 3485 20be 9095      		com r25
3471
 3486 20c0 AC01      		movw r20,r24
3472
 3487 20c2 249F      		mul r18,r20
3473
 3488 20c4 C001      		movw r24,r0
3474
 3489 20c6 259F      		mul r18,r21
3475
 3490 20c8 900D      		add r25,r0
3476
 3491 20ca 349F      		mul r19,r20
3477
 3492 20cc 900D      		add r25,r0
3478
 3493 20ce 1124      		clr r1
3479
 3494 20d0 A090 0000 		lds r10,StickNick
3480
 3495 20d4 B090 0000 		lds r11,(StickNick)+1
3481
 3496 20d8 A80E      		add r10,r24
3482
 3497 20da B91E      		adc r11,r25
3483
 3498 20dc B092 0000 		sts (StickNick)+1,r11
3484
 3499 20e0 A092 0000 		sts StickNick,r10
3485
 3500 20e4 8091 0000 		lds r24,ExternControl+4
3486
 3501 20e8 9927      		clr r25
3487
 3502 20ea 87FD      		sbrc r24,7
3488
 3503 20ec 9095      		com r25
3489
 3504 20ee BC01      		movw r22,r24
3490
 3505 20f0 269F      		mul r18,r22
3491
 3506 20f2 C001      		movw r24,r0
3492
 3507 20f4 279F      		mul r18,r23
3493
 3508 20f6 900D      		add r25,r0
3494
 3509 20f8 369F      		mul r19,r22
3495
 3510 20fa 900D      		add r25,r0
3496
 3511 20fc 1124      		clr r1
3497
 3512 20fe C090 0000 		lds r12,StickRoll
3498
 3513 2102 D090 0000 		lds r13,(StickRoll)+1
3499
 3514 2106 C80E      		add r12,r24
3500
 3515 2108 D91E      		adc r13,r25
3501
 3516 210a D092 0000 		sts (StickRoll)+1,r13
3502
 3517 210e C092 0000 		sts StickRoll,r12
3503
 3518 2112 2091 0000 		lds r18,ExternControl+5
3504
 3519 2116 3327      		clr r19
3505
 3520 2118 27FD      		sbrc r18,7
3506
 3521 211a 3095      		com r19
3507
 3522 211c 8091 0000 		lds r24,StickYaw
3508
 3523 2120 9091 0000 		lds r25,(StickYaw)+1
3509
 3524 2124 820F      		add r24,r18
3510
 3525 2126 931F      		adc r25,r19
3511
 3526 2128 9093 0000 		sts (StickYaw)+1,r25
3512
 3527 212c 8093 0000 		sts StickYaw,r24
3513
 3528 2130 2091 0000 		lds r18,ParamSet+13
3514
 3529 2134 30E0      		ldi r19,lo8(0)
3515
 3530 2136 8091 0000 		lds r24,ExternControl+7
3516
 3531 213a 9927      		clr r25
3517
 3532 213c 87FD      		sbrc r24,7
3518
 3533 213e 9095      		com r25
3519
 3534 2140 AC01      		movw r20,r24
3520
 3535 2142 249F      		mul r18,r20
3521
 3536 2144 C001      		movw r24,r0
3522
 3537 2146 259F      		mul r18,r21
3523
 3538 2148 900D      		add r25,r0
3524
 3539 214a 349F      		mul r19,r20
3525
 3540 214c 900D      		add r25,r0
3526
 3541 214e 1124      		clr r1
3527
 3542 2150 9093 0000 		sts (ExternHeightValue)+1,r25
3528
 3543 2154 8093 0000 		sts ExternHeightValue,r24
3529
 3544 2158 8091 0000 		lds r24,ExternControl+6
3530
 3545 215c 90E0      		ldi r25,lo8(0)
3531
 3546 215e 8E17      		cp r24,r30
3532
 3547 2160 9F07      		cpc r25,r31
3533
 3548 2162 04F4      		brge .L360
3534
 3549 2164 9093 0000 		sts (StickGas)+1,r25
3535
 3550 2168 8093 0000 		sts StickGas,r24
3536
 3551               	.L360:
3537
 3552 216c 8091 0000 		lds r24,StickGas
3538
 3553 2170 9091 0000 		lds r25,(StickGas)+1
3539
 3554 2174 97FD      		sbrc r25,7
3540
 3555 2176 00C0      		rjmp .L511
3541
 3556 2178 8091 0000 		lds r24,ParamSet+8
3542
 3557 217c 82FD      		sbrc r24,2
3543
 3558 217e 00C0      		rjmp .L512
3544
 3559               	.L362:
3545
 3560 2180 6091 0000 		lds r22,StickNick
3546
 3561 2184 7091 0000 		lds r23,StickNick+1
3547
 3562 2188 4091 0000 		lds r20,MaxStickNick
3548
 3563 218c 5091 0000 		lds r21,(MaxStickNick)+1
3549
 3564 2190 CB01      		movw r24,r22
3550
 3565 2192 9C01      		movw r18,r24
3551
 3566 2194 97FD      		sbrc r25,7
3552
 3567 2196 00C0      		rjmp .L513
3553
 3568 2198 3595      		asr r19
3554
 3569 219a 2795      		ror r18
3555
 3570 219c 3595      		asr r19
3556
 3571 219e 2795      		ror r18
3557
 3572 21a0 37FD      		sbrc r19,7
3558
 3573 21a2 00C0      		rjmp .L514
3559
 3574               	.L365:
3560
 3575 21a4 4217      		cp r20,r18
3561
 3576 21a6 5307      		cpc r21,r19
3562
 3577 21a8 04F4      		brge .+2
3563
 3578 21aa 00C0      		rjmp .L515
3564
 3579 21ac 4150      		subi r20,lo8(-(-1))
3565
 3580 21ae 5040      		sbci r21,hi8(-(-1))
3566
 3581 21b0 5093 0000 		sts (MaxStickNick)+1,r21
3567
 3582 21b4 4093 0000 		sts MaxStickNick,r20
3568
 3583               	.L367:
3569
 3584 21b8 6091 0000 		lds r22,StickRoll
3570
 3585 21bc 7091 0000 		lds r23,StickRoll+1
3571
 3586 21c0 4091 0000 		lds r20,MaxStickRoll
3572
 3587 21c4 5091 0000 		lds r21,(MaxStickRoll)+1
3573
 3588 21c8 CB01      		movw r24,r22
3574
 3589 21ca 9C01      		movw r18,r24
3575
 3590 21cc 97FD      		sbrc r25,7
3576
 3591 21ce 00C0      		rjmp .L516
3577
 3592               	.L369:
3578
 3593 21d0 3595      		asr r19
3579
 3594 21d2 2795      		ror r18
3580
 3595 21d4 3595      		asr r19
3581
 3596 21d6 2795      		ror r18
3582
 3597 21d8 37FD      		sbrc r19,7
3583
 3598 21da 00C0      		rjmp .L517
3584
 3599               	.L370:
3585
 3600 21dc 4217      		cp r20,r18
3586
 3601 21de 5307      		cpc r21,r19
3587
 3602 21e0 04F0      		brlt .+2
3588
 3603 21e2 00C0      		rjmp .L368
3589
 3604 21e4 9B01      		movw r18,r22
3590
 3605 21e6 77FD      		sbrc r23,7
3591
 3606 21e8 00C0      		rjmp .L518
3592
 3607               	.L371:
3593
 3608 21ea C901      		movw r24,r18
3594
 3609 21ec 9595      		asr r25
3595
 3610 21ee 8795      		ror r24
3596
 3611 21f0 9595      		asr r25
3597
 3612 21f2 8795      		ror r24
3598
 3613 21f4 9093 0000 		sts (MaxStickRoll)+1,r25
3599
 3614 21f8 8093 0000 		sts MaxStickRoll,r24
3600
 3615 21fc 8536      		cpi r24,101
3601
 3616 21fe 9105      		cpc r25,__zero_reg__
3602
 3617 2200 04F0      		brlt .+2
3603
 3618 2202 00C0      		rjmp .L519
3604
 3619               	.L372:
3605
 3620 2204 8091 0000 		lds r24,ParamSet+1
3606
 3621 2208 A82F      		mov r26,r24
3607
 3622 220a B0E0      		ldi r27,lo8(0)
3608
 3623 220c AA0F      		lsl r26
3609
 3624 220e BB1F      		rol r27
3610
 3625 2210 FD01      		movw r30,r26
3611
 3626 2212 E050      		subi r30,lo8(-(PPM_in))
3612
 3627 2214 F040      		sbci r31,hi8(-(PPM_in))
3613
 3628 2216 2081      		ld r18,Z
3614
 3629 2218 3181      		ldd r19,Z+1
3615
 3630 221a 8091 0000 		lds r24,ParamSet+40
3616
 3631 221e 482F      		mov r20,r24
3617
 3632 2220 50E0      		ldi r21,lo8(0)
3618
 3633 2222 4217      		cp r20,r18
3619
 3634 2224 5307      		cpc r21,r19
3620
 3635 2226 04F4      		brge .L373
3621
 3636 2228 8091 0000 		lds r24,ParamSet+75
3622
 3637 222c 82FD      		sbrc r24,2
3623
 3638 222e 00C0      		rjmp .L520
3624
 3639               	.L373:
3625
 3640 2230 7091 0000 		lds r23,LoopingLeft
3626
 3641 2234 7723      		tst r23
3627
 3642 2236 01F0      		breq .L374
3628
 3643 2238 FD01      		movw r30,r26
3629
 3644 223a E050      		subi r30,lo8(-(PPM_in))
3630
 3645 223c F040      		sbci r31,hi8(-(PPM_in))
3631
 3646 223e 2081      		ld r18,Z
3632
 3647 2240 3181      		ldd r19,Z+1
3633
 3648 2242 8091 0000 		lds r24,ParamSet+41
3634
 3649 2246 FA01      		movw r30,r20
3635
 3650 2248 E81B      		sub r30,r24
3636
 3651 224a F109      		sbc r31,__zero_reg__
3637
 3652 224c 2E17      		cp r18,r30
3638
 3653 224e 3F07      		cpc r19,r31
3639
 3654 2250 04F4      		brge .+2
3640
 3655 2252 00C0      		rjmp .L521
3641
 3656               	.L374:
3642
 3657 2254 FD01      		movw r30,r26
3643
 3658 2256 E050      		subi r30,lo8(-(PPM_in))
3644
 3659 2258 F040      		sbci r31,hi8(-(PPM_in))
3645
 3660 225a 2081      		ld r18,Z
3646
 3661 225c 3181      		ldd r19,Z+1
3647
 3662 225e 8827      		clr r24
3648
 3663 2260 9927      		clr r25
3649
 3664 2262 841B      		sub r24,r20
3650
 3665 2264 950B      		sbc r25,r21
3651
 3666 2266 2817      		cp r18,r24
3652
 3667 2268 3907      		cpc r19,r25
3653
 3668 226a 04F4      		brge .L375
3654
 3669 226c 8091 0000 		lds r24,ParamSet+75
3655
 3670 2270 83FD      		sbrc r24,3
3656
 3671 2272 00C0      		rjmp .L522
3657
 3672               	.L375:
3658
 3673 2274 8091 0000 		lds r24,LoopingRight
3659
 3674 2278 8823      		tst r24
3660
 3675 227a 01F0      		breq .L376
3661
 3676 227c A050      		subi r26,lo8(-(PPM_in))
3662
 3677 227e B040      		sbci r27,hi8(-(PPM_in))
3663
 3678 2280 2D91      		ld r18,X+
3664
 3679 2282 3C91      		ld r19,X
3665
 3680 2284 8091 0000 		lds r24,ParamSet+41
3666
 3681 2288 90E0      		ldi r25,lo8(0)
3667
 3682 228a 841B      		sub r24,r20
3668
 3683 228c 950B      		sbc r25,r21
3669
 3684 228e 8217      		cp r24,r18
3670
 3685 2290 9307      		cpc r25,r19
3671
 3686 2292 04F4      		brge .+2
3672
 3687 2294 00C0      		rjmp .L523
3673
 3688               	.L376:
3674
 3689 2296 8091 0000 		lds r24,ParamSet
3675
 3690 229a A82F      		mov r26,r24
3676
 3691 229c B0E0      		ldi r27,lo8(0)
3677
 3692 229e AA0F      		lsl r26
3678
 3693 22a0 BB1F      		rol r27
3679
 3694 22a2 FD01      		movw r30,r26
3680
 3695 22a4 E050      		subi r30,lo8(-(PPM_in))
3681
 3696 22a6 F040      		sbci r31,hi8(-(PPM_in))
3682
 3697 22a8 8081      		ld r24,Z
3683
 3698 22aa 9181      		ldd r25,Z+1
3684
 3699 22ac 4817      		cp r20,r24
3685
 3700 22ae 5907      		cpc r21,r25
3686
 3701 22b0 04F4      		brge .L377
3687
 3702 22b2 8091 0000 		lds r24,ParamSet+75
3688
 3703 22b6 80FD      		sbrc r24,0
3689
 3704 22b8 00C0      		rjmp .L524
3690
 3705               	.L377:
3691
 3706 22ba 6091 0000 		lds r22,LoopingTop
3692
 3707 22be 6623      		tst r22
3693
 3708 22c0 01F0      		breq .L378
3694
 3709 22c2 FD01      		movw r30,r26
3695
 3710 22c4 E050      		subi r30,lo8(-(PPM_in))
3696
 3711 22c6 F040      		sbci r31,hi8(-(PPM_in))
3697
 3712 22c8 2081      		ld r18,Z
3698
 3713 22ca 3181      		ldd r19,Z+1
3699
 3714 22cc 8091 0000 		lds r24,ParamSet+41
3700
 3715 22d0 FA01      		movw r30,r20
3701
 3716 22d2 E81B      		sub r30,r24
3702
 3717 22d4 F109      		sbc r31,__zero_reg__
3703
 3718 22d6 2E17      		cp r18,r30
3704
 3719 22d8 3F07      		cpc r19,r31
3705
 3720 22da 04F4      		brge .+2
3706
 3721 22dc 00C0      		rjmp .L525
3707
 3722               	.L378:
3708
 3723 22de FD01      		movw r30,r26
3709
 3724 22e0 E050      		subi r30,lo8(-(PPM_in))
3710
 3725 22e2 F040      		sbci r31,hi8(-(PPM_in))
3711
 3726 22e4 2081      		ld r18,Z
3712
 3727 22e6 3181      		ldd r19,Z+1
3713
 3728 22e8 8827      		clr r24
3714
 3729 22ea 9927      		clr r25
3715
 3730 22ec 841B      		sub r24,r20
3716
 3731 22ee 950B      		sbc r25,r21
3717
 3732 22f0 2817      		cp r18,r24
3718
 3733 22f2 3907      		cpc r19,r25
3719
 3734 22f4 04F4      		brge .L379
3720
 3735 22f6 8091 0000 		lds r24,ParamSet+75
3721
 3736 22fa 81FD      		sbrc r24,1
3722
 3737 22fc 00C0      		rjmp .L526
3723
 3738               	.L379:
3724
 3739 22fe 8091 0000 		lds r24,LoopingDown
3725
 3740 2302 8823      		tst r24
3726
 3741 2304 01F0      		breq .L380
3727
 3742 2306 A050      		subi r26,lo8(-(PPM_in))
3728
 3743 2308 B040      		sbci r27,hi8(-(PPM_in))
3729
 3744 230a 2D91      		ld r18,X+
3730
 3745 230c 3C91      		ld r19,X
3731
 3746 230e 8091 0000 		lds r24,ParamSet+41
3732
 3747 2312 90E0      		ldi r25,lo8(0)
3733
 3748 2314 841B      		sub r24,r20
3734
 3749 2316 950B      		sbc r25,r21
3735
 3750 2318 8217      		cp r24,r18
3736
 3751 231a 9307      		cpc r25,r19
3737
 3752 231c 04F4      		brge .+2
3738
 3753 231e 00C0      		rjmp .L527
3739
 3754               	.L380:
3740
 3755 2320 7723      		tst r23
3741
 3756 2322 01F4      		brne .L381
3742
 3757 2324 8091 0000 		lds r24,LoopingRight
3743
 3758 2328 8823      		tst r24
3744
 3759 232a 01F4      		brne .+2
3745
 3760 232c 00C0      		rjmp .L382
3746
 3761               	.L381:
3747
 3762 232e 81E0      		ldi r24,lo8(1)
3748
 3763 2330 8093 0000 		sts LoopingRoll,r24
3749
 3764               	.L383:
3750
 3765 2334 6623      		tst r22
3751
 3766 2336 01F4      		brne .L384
3752
 3767 2338 8091 0000 		lds r24,LoopingDown
3753
 3768 233c 8823      		tst r24
3754
 3769 233e 01F4      		brne .+2
3755
 3770 2340 00C0      		rjmp .L385
3756
 3771               	.L384:
3757
 3772 2342 81E0      		ldi r24,lo8(1)
3758
 3773 2344 8093 0000 		sts LoopingNick,r24
3759
 3774 2348 1092 0000 		sts LoopingRoll,__zero_reg__
3760
 3775 234c 1092 0000 		sts LoopingLeft,__zero_reg__
3761
 3776 2350 1092 0000 		sts LoopingRight,__zero_reg__
3762
 3777 2354 8091 0000 		lds r24,LoopingRoll
3763
 3778 2358 8823      		tst r24
3764
 3779 235a 01F4      		brne .+4
3765
 3780 235c 0C94 0000 		jmp .L528
3766
 3781               	.L386:
3767
 3782 2360 8091 0000 		lds r24,ParamSet+39
3768
 3783 2364 90E0      		ldi r25,lo8(0)
3769
 3784 2366 2F81      		ldd r18,Y+7
3770
 3785 2368 3885      		ldd r19,Y+8
3771
 3786 236a 8217      		cp r24,r18
3772
 3787 236c 9307      		cpc r25,r19
3773
 3788 236e 04F4      		brge .+2
3774
 3789 2370 00C0      		rjmp .L529
3775
 3790 2372 81E0      		ldi r24,lo8(1)
3776
 3791 2374 8093 0000 		sts FunnelCourse,r24
3777
 3792 2378 0C94 0000 		jmp .L387
3778
 3793               	.L390:
3779
 3794 237c 1092 0000 		sts (ADCycleCount)+1,__zero_reg__
3780
 3795 2380 1092 0000 		sts ADCycleCount,__zero_reg__
3781
 3796 2384 0C94 0000 		jmp .L391
3782
 3797               	.L496:
3783
 3798 2388 0396      		adiw r24,3
3784
 3799 238a 00C0      		rjmp .L462
3785
 3800               	.L495:
3786
 3801 238c 0894      		sec
3787
 3802 238e E11C      		adc r14,__zero_reg__
3788
 3803 2390 F11C      		adc r15,__zero_reg__
3789
 3804 2392 00C0      		rjmp .L461
3790
 3805               	.L497:
3791
 3806               	/* epilogue start */
3792
 3807 2394 6B96      		adiw r28,27
3793
 3808 2396 0FB6      		in __tmp_reg__,__SREG__
3794
 3809 2398 F894      		cli
3795
 3810 239a DEBF      		out __SP_H__,r29
3796
 3811 239c 0FBE      		out __SREG__,__tmp_reg__
3797
 3812 239e CDBF      		out __SP_L__,r28
3798
 3813 23a0 CF91      		pop r28
3799
 3814 23a2 DF91      		pop r29
3800
 3815 23a4 1F91      		pop r17
3801
 3816 23a6 0F91      		pop r16
3802
 3817 23a8 FF90      		pop r15
3803
 3818 23aa EF90      		pop r14
3804
 3819 23ac DF90      		pop r13
3805
 3820 23ae CF90      		pop r12
3806
 3821 23b0 BF90      		pop r11
3807
 3822 23b2 AF90      		pop r10
3808
 3823 23b4 9F90      		pop r9
3809
 3824 23b6 8F90      		pop r8
3810
 3825 23b8 7F90      		pop r7
3811
 3826 23ba 6F90      		pop r6
3812
 3827 23bc 5F90      		pop r5
3813
 3828 23be 4F90      		pop r4
3814
 3829 23c0 3F90      		pop r3
3815
 3830 23c2 2F90      		pop r2
3816
 3831 23c4 0895      		ret
3817
 3832               	.L454:
3818
 3833 23c6 A216      		cp r10,r18
3819
 3834 23c8 B306      		cpc r11,r19
3820
 3835 23ca 04F0      		brlt .+2
3821
 3836 23cc 00C0      		rjmp .L455
3822
 3837 23ce 9501      		movw r18,r10
3823
 3838 23d0 00C0      		rjmp .L455
3824
 3839               	.L451:
3825
 3840 23d2 81E0      		ldi r24,lo8(64001)
3826
 3841 23d4 E816      		cp r14,r24
3827
 3842 23d6 8AEF      		ldi r24,hi8(64001)
3828
 3843 23d8 F806      		cpc r15,r24
3829
 3844 23da 80E0      		ldi r24,hlo8(64001)
3830
 3845 23dc 0807      		cpc r16,r24
3831
 3846 23de 80E0      		ldi r24,hhi8(64001)
3832
 3847 23e0 1807      		cpc r17,r24
3833
 3848 23e2 04F4      		brge .+2
3834
 3849 23e4 00C0      		rjmp .L452
3835
 3850 23e6 80E0      		ldi r24,lo8(64000)
3836
 3851 23e8 9AEF      		ldi r25,hi8(64000)
3837
 3852 23ea A0E0      		ldi r26,hlo8(64000)
3838
 3853 23ec B0E0      		ldi r27,hhi8(64000)
3839
 3854 23ee 8093 0000 		sts IPartRoll.1973,r24
3840
 3855 23f2 9093 0000 		sts (IPartRoll.1973)+1,r25
3841
 3856 23f6 A093 0000 		sts (IPartRoll.1973)+2,r26
3842
 3857 23fa B093 0000 		sts (IPartRoll.1973)+3,r27
3843
 3858 23fe E12C      		mov r14,__zero_reg__
3844
 3859 2400 0AEF      		ldi r16,hi8(64000)
3845
 3860 2402 F02E      		mov r15,r16
3846
 3861 2404 012D      		mov r16,__zero_reg__
3847
 3862 2406 112D      		mov r17,__zero_reg__
3848
 3863 2408 00C0      		rjmp .L452
3849
 3864               	.L449:
3850
 3865 240a 8981      		ldd r24,Y+1
3851
 3866 240c 9A81      		ldd r25,Y+2
3852
 3867 240e 8C19      		sub r24,r12
3853
 3868 2410 9D09      		sbc r25,r13
3854
 3869 2412 AA27      		clr r26
3855
 3870 2414 97FD      		sbrc r25,7
3856
 3871 2416 A095      		com r26
3857
 3872 2418 BA2F      		mov r27,r26
3858
 3873 241a E090 0000 		lds r14,IPartRoll.1973
3859
 3874 241e F090 0000 		lds r15,(IPartRoll.1973)+1
3860
 3875 2422 0091 0000 		lds r16,(IPartRoll.1973)+2
3861
 3876 2426 1091 0000 		lds r17,(IPartRoll.1973)+3
3862
 3877 242a E80E      		add r14,r24
3863
 3878 242c F91E      		adc r15,r25
3864
 3879 242e 0A1F      		adc r16,r26
3865
 3880 2430 1B1F      		adc r17,r27
3866
 3881 2432 E092 0000 		sts IPartRoll.1973,r14
3867
 3882 2436 F092 0000 		sts (IPartRoll.1973)+1,r15
3868
 3883 243a 0093 0000 		sts (IPartRoll.1973)+2,r16
3869
 3884 243e 1093 0000 		sts (IPartRoll.1973)+3,r17
3870
 3885 2442 00C0      		rjmp .L450
3871
 3886               	.L447:
3872
 3887 2444 21E0      		ldi r18,lo8(64001)
3873
 3888 2446 E216      		cp r14,r18
3874
 3889 2448 2AEF      		ldi r18,hi8(64001)
3875
 3890 244a F206      		cpc r15,r18
3876
 3891 244c 20E0      		ldi r18,hlo8(64001)
3877
 3892 244e 0207      		cpc r16,r18
3878
 3893 2450 20E0      		ldi r18,hhi8(64001)
3879
 3894 2452 1207      		cpc r17,r18
3880
 3895 2454 04F4      		brge .+2
3881
 3896 2456 00C0      		rjmp .L448
3882
 3897 2458 80E0      		ldi r24,lo8(64000)
3883
 3898 245a 9AEF      		ldi r25,hi8(64000)
3884
 3899 245c A0E0      		ldi r26,hlo8(64000)
3885
 3900 245e B0E0      		ldi r27,hhi8(64000)
3886
 3901 2460 8093 0000 		sts IPartNick.1972,r24
3887
 3902 2464 9093 0000 		sts (IPartNick.1972)+1,r25
3888
 3903 2468 A093 0000 		sts (IPartNick.1972)+2,r26
3889
 3904 246c B093 0000 		sts (IPartNick.1972)+3,r27
3890
 3905 2470 E12C      		mov r14,__zero_reg__
3891
 3906 2472 9AEF      		ldi r25,hi8(64000)
3892
 3907 2474 F92E      		mov r15,r25
3893
 3908 2476 012D      		mov r16,__zero_reg__
3894
 3909 2478 112D      		mov r17,__zero_reg__
3895
 3910 247a 00C0      		rjmp .L448
3896
 3911               	.L445:
3897
 3912 247c C101      		movw r24,r2
3898
 3913 247e 8A19      		sub r24,r10
3899
 3914 2480 9B09      		sbc r25,r11
3900
 3915 2482 AA27      		clr r26
3901
 3916 2484 97FD      		sbrc r25,7
3902
 3917 2486 A095      		com r26
3903
 3918 2488 BA2F      		mov r27,r26
3904
 3919 248a E090 0000 		lds r14,IPartNick.1972
3905
 3920 248e F090 0000 		lds r15,(IPartNick.1972)+1
3906
 3921 2492 0091 0000 		lds r16,(IPartNick.1972)+2
3907
 3922 2496 1091 0000 		lds r17,(IPartNick.1972)+3
3908
 3923 249a E80E      		add r14,r24
3909
 3924 249c F91E      		adc r15,r25
3910
 3925 249e 0A1F      		adc r16,r26
3911
 3926 24a0 1B1F      		adc r17,r27
3912
 3927 24a2 E092 0000 		sts IPartNick.1972,r14
3913
 3928 24a6 F092 0000 		sts (IPartNick.1972)+1,r15
3914
 3929 24aa 0093 0000 		sts (IPartNick.1972)+2,r16
3915
 3930 24ae 1093 0000 		sts (IPartNick.1972)+3,r17
3916
 3931 24b2 00C0      		rjmp .L446
3917
 3932               	.L437:
3918
 3933 24b4 C701      		movw r24,r14
3919
 3934 24b6 8135      		cpi r24,81
3920
 3935 24b8 9105      		cpc r25,__zero_reg__
3921
 3936 24ba 04F0      		brlt .+2
3922
 3937 24bc 00C0      		rjmp .L530
3923
 3938 24be 9C01      		movw r18,r24
3924
 3939 24c0 5FEF      		ldi r21,hi8(-80)
3925
 3940 24c2 803B      		cpi r24,lo8(-80)
3926
 3941 24c4 9507      		cpc r25,r21
3927
 3942 24c6 04F0      		brlt .+2
3928
 3943 24c8 00C0      		rjmp .L439
3929
 3944               	.L540:
3930
 3945 24ca 20EB      		ldi r18,lo8(-80)
3931
 3946 24cc 3FEF      		ldi r19,hi8(-80)
3932
 3947 24ce 00C0      		rjmp .L439
3933
 3948               	.L426:
3934
 3949 24d0 ED85      		ldd r30,Y+13
3935
 3950 24d2 6E2F      		mov r22,r30
3936
 3951 24d4 70E0      		ldi r23,lo8(0)
3937
 3952 24d6 80E0      		ldi r24,lo8(0)
3938
 3953 24d8 90E0      		ldi r25,hi8(0)
3939
 3954 24da 2091 0000 		lds r18,IntegralGyroRoll
3940
 3955 24de 3091 0000 		lds r19,(IntegralGyroRoll)+1
3941
 3956 24e2 4091 0000 		lds r20,(IntegralGyroRoll)+2
3942
 3957 24e6 5091 0000 		lds r21,(IntegralGyroRoll)+3
3943
 3958 24ea 0E94 0000 		call __mulsi3
3944
 3959 24ee 28EF      		ldi r18,lo8(11000)
3945
 3960 24f0 3AE2      		ldi r19,hi8(11000)
3946
 3961 24f2 40E0      		ldi r20,hlo8(11000)
3947
 3962 24f4 50E0      		ldi r21,hhi8(11000)
3948
 3963 24f6 0E94 0000 		call __divmodsi4
3949
 3964 24fa 3C83      		std Y+4,r19
3950
 3965 24fc 2B83      		std Y+3,r18
3951
 3966 24fe 3901      		movw r6,r18
3952
 3967 2500 0C94 0000 		jmp .L427
3953
 3968               	.L424:
3954
 3969 2504 8091 0000 		lds r24,GyroIFactor
3955
 3970 2508 8D87      		std Y+13,r24
3956
 3971 250a 682F      		mov r22,r24
3957
 3972 250c 70E0      		ldi r23,lo8(0)
3958
 3973 250e 80E0      		ldi r24,lo8(0)
3959
 3974 2510 90E0      		ldi r25,hi8(0)
3960
 3975 2512 2091 0000 		lds r18,IntegralGyroNick
3961
 3976 2516 3091 0000 		lds r19,(IntegralGyroNick)+1
3962
 3977 251a 4091 0000 		lds r20,(IntegralGyroNick)+2
3963
 3978 251e 5091 0000 		lds r21,(IntegralGyroNick)+3
3964
 3979 2522 0E94 0000 		call __mulsi3
3965
 3980 2526 28EF      		ldi r18,lo8(11000)
3966
 3981 2528 3AE2      		ldi r19,hi8(11000)
3967
 3982 252a 40E0      		ldi r20,hlo8(11000)
3968
 3983 252c 50E0      		ldi r21,hhi8(11000)
3969
 3984 252e 0E94 0000 		call __divmodsi4
3970
 3985 2532 3E83      		std Y+6,r19
3971
 3986 2534 2D83      		std Y+5,r18
3972
 3987 2536 1901      		movw r2,r18
3973
 3988 2538 0C94 0000 		jmp .L425
3974
 3989               	.L475:
3975
 3990 253c 88E1      		ldi r24,lo8(24)
3976
 3991 253e 8093 0000 		sts TimerDebugOut.1985,r24
3977
 3992 2542 6091 0000 		lds r22,IntegralGyroNick
3978
 3993 2546 7091 0000 		lds r23,(IntegralGyroNick)+1
3979
 3994 254a 8091 0000 		lds r24,(IntegralGyroNick)+2
3980
 3995 254e 9091 0000 		lds r25,(IntegralGyroNick)+3
3981
 3996 2552 2AE0      		ldi r18,lo8(10)
3982
 3997 2554 30E0      		ldi r19,hi8(10)
3983
 3998 2556 40E0      		ldi r20,hlo8(10)
3984
 3999 2558 50E0      		ldi r21,hhi8(10)
3985
 4000 255a 0E94 0000 		call __mulsi3
3986
 4001 255e 2FEB      		ldi r18,lo8(1215)
3987
 4002 2560 34E0      		ldi r19,hi8(1215)
3988
 4003 2562 40E0      		ldi r20,hlo8(1215)
3989
 4004 2564 50E0      		ldi r21,hhi8(1215)
3990
 4005 2566 0E94 0000 		call __divmodsi4
3991
 4006 256a 3093 0000 		sts (DebugOut+2)+1,r19
3992
 4007 256e 2093 0000 		sts DebugOut+2,r18
3993
 4008 2572 6091 0000 		lds r22,IntegralGyroRoll
3994
 4009 2576 7091 0000 		lds r23,(IntegralGyroRoll)+1
3995
 4010 257a 8091 0000 		lds r24,(IntegralGyroRoll)+2
3996
 4011 257e 9091 0000 		lds r25,(IntegralGyroRoll)+3
3997
 4012 2582 2AE0      		ldi r18,lo8(10)
3998
 4013 2584 30E0      		ldi r19,hi8(10)
3999
 4014 2586 40E0      		ldi r20,hlo8(10)
4000
 4015 2588 50E0      		ldi r21,hhi8(10)
4001
 4016 258a 0E94 0000 		call __mulsi3
4002
 4017 258e 2FEB      		ldi r18,lo8(1215)
4003
 4018 2590 34E0      		ldi r19,hi8(1215)
4004
 4019 2592 40E0      		ldi r20,hlo8(1215)
4005
 4020 2594 50E0      		ldi r21,hhi8(1215)
4006
 4021 2596 0E94 0000 		call __divmodsi4
4007
 4022 259a 3093 0000 		sts (DebugOut+4)+1,r19
4008
 4023 259e 2093 0000 		sts DebugOut+4,r18
4009
 4024 25a2 4090 0000 		lds r4,GyroNick
4010
 4025 25a6 5090 0000 		lds r5,(GyroNick)+1
4011
 4026 25aa 5092 0000 		sts (DebugOut+6)+1,r5
4012
 4027 25ae 4092 0000 		sts DebugOut+6,r4
4013
 4028 25b2 8090 0000 		lds r8,GyroRoll
4014
 4029 25b6 9090 0000 		lds r9,(GyroRoll)+1
4015
 4030 25ba 9092 0000 		sts (DebugOut+8)+1,r9
4016
 4031 25be 8092 0000 		sts DebugOut+8,r8
4017
 4032 25c2 8B85      		ldd r24,Y+11
4018
 4033 25c4 9C85      		ldd r25,Y+12
4019
 4034 25c6 9093 0000 		sts (DebugOut+10)+1,r25
4020
 4035 25ca 8093 0000 		sts DebugOut+10,r24
4021
 4036 25ce 8091 0000 		lds r24,ReadingHeight
4022
 4037 25d2 9091 0000 		lds r25,(ReadingHeight)+1
4023
 4038 25d6 9093 0000 		sts (DebugOut+12)+1,r25
4024
 4039 25da 8093 0000 		sts DebugOut+12,r24
4025
 4040 25de 8091 0000 		lds r24,CompassHeading
4026
 4041 25e2 9091 0000 		lds r25,(CompassHeading)+1
4027
 4042 25e6 9093 0000 		sts (DebugOut+18)+1,r25
4028
 4043 25ea 8093 0000 		sts DebugOut+18,r24
4029
 4044 25ee 8091 0000 		lds r24,UBat
4030
 4045 25f2 9091 0000 		lds r25,(UBat)+1
4031
 4046 25f6 9093 0000 		sts (DebugOut+20)+1,r25
4032
 4047 25fa 8093 0000 		sts DebugOut+20,r24
4033
 4048 25fe 8091 0000 		lds r24,RC_Quality
4034
 4049 2602 9091 0000 		lds r25,(RC_Quality)+1
4035
 4050 2606 9093 0000 		sts (DebugOut+22)+1,r25
4036
 4051 260a 8093 0000 		sts DebugOut+22,r24
4037
 4052 260e 6091 0000 		lds r22,YawGyroHeading
4038
 4053 2612 7091 0000 		lds r23,(YawGyroHeading)+1
4039
 4054 2616 8091 0000 		lds r24,(YawGyroHeading)+2
4040
 4055 261a 9091 0000 		lds r25,(YawGyroHeading)+3
4041
 4056 261e 20E0      		ldi r18,lo8(512)
4042
 4057 2620 32E0      		ldi r19,hi8(512)
4043
 4058 2622 40E0      		ldi r20,hlo8(512)
4044
 4059 2624 50E0      		ldi r21,hhi8(512)
4045
 4060 2626 0E94 0000 		call __divmodsi4
4046
 4061 262a 3093 0000 		sts (DebugOut+24)+1,r19
4047
 4062 262e 2093 0000 		sts DebugOut+24,r18
4048
 4063 2632 80E1      		ldi r24,lo8(16)
4049
 4064 2634 90E0      		ldi r25,hi8(16)
4050
 4065 2636 9093 0000 		sts (DebugOut+34)+1,r25
4051
 4066 263a 8093 0000 		sts DebugOut+34,r24
4052
 4067 263e 81E1      		ldi r24,lo8(17)
4053
 4068 2640 90E0      		ldi r25,hi8(17)
4054
 4069 2642 9093 0000 		sts (DebugOut+36)+1,r25
4055
 4070 2646 8093 0000 		sts DebugOut+36,r24
4056
 4071 264a 82E1      		ldi r24,lo8(18)
4057
 4072 264c 90E0      		ldi r25,hi8(18)
4058
 4073 264e 9093 0000 		sts (DebugOut+38)+1,r25
4059
 4074 2652 8093 0000 		sts DebugOut+38,r24
4060
 4075 2656 83E1      		ldi r24,lo8(19)
4061
 4076 2658 90E0      		ldi r25,hi8(19)
4062
 4077 265a 9093 0000 		sts (DebugOut+40)+1,r25
4063
 4078 265e 8093 0000 		sts DebugOut+40,r24
4064
 4079 2662 4091 0000 		lds r20,vibrationOffsetNick
4065
 4080 2666 5091 0000 		lds r21,(vibrationOffsetNick)+1
4066
 4081 266a 8091 0000 		lds r24,savedVibrationOffsetNick
4067
 4082 266e 9091 0000 		lds r25,(savedVibrationOffsetNick)+1
4068
 4083 2672 FA01      		movw r30,r20
4069
 4084 2674 E81B      		sub r30,r24
4070
 4085 2676 F90B      		sbc r31,r25
4071
 4086 2678 F093 0000 		sts (DebugOut+42)+1,r31
4072
 4087 267c E093 0000 		sts DebugOut+42,r30
4073
 4088 2680 2091 0000 		lds r18,vibrationOffsetRoll
4074
 4089 2684 3091 0000 		lds r19,(vibrationOffsetRoll)+1
4075
 4090 2688 8091 0000 		lds r24,savedVibrationOffsetRoll
4076
 4091 268c 9091 0000 		lds r25,(savedVibrationOffsetRoll)+1
4077
 4092 2690 B901      		movw r22,r18
4078
 4093 2692 681B      		sub r22,r24
4079
 4094 2694 790B      		sbc r23,r25
4080
 4095 2696 7093 0000 		sts (DebugOut+44)+1,r23
4081
 4096 269a 6093 0000 		sts DebugOut+44,r22
4082
 4097 269e 86E1      		ldi r24,lo8(22)
4083
 4098 26a0 90E0      		ldi r25,hi8(22)
4084
 4099 26a2 9093 0000 		sts (DebugOut+46)+1,r25
4085
 4100 26a6 8093 0000 		sts DebugOut+46,r24
4086
 4101 26aa 5092 0000 		sts (DebugOut+48)+1,r5
4087
 4102 26ae 4092 0000 		sts DebugOut+48,r4
4088
 4103 26b2 9092 0000 		sts (DebugOut+50)+1,r9
4089
 4104 26b6 8092 0000 		sts DebugOut+50,r8
4090
 4105 26ba 5093 0000 		sts (DebugOut+52)+1,r21
4091
 4106 26be 4093 0000 		sts DebugOut+52,r20
4092
 4107 26c2 3093 0000 		sts (DebugOut+54)+1,r19
4093
 4108 26c6 2093 0000 		sts DebugOut+54,r18
4094
 4109 26ca 8BE1      		ldi r24,lo8(27)
4095
 4110 26cc 90E0      		ldi r25,hi8(27)
4096
 4111 26ce 9093 0000 		sts (DebugOut+56)+1,r25
4097
 4112 26d2 8093 0000 		sts DebugOut+56,r24
4098
 4113 26d6 A090 0000 		lds r10,StickNick
4099
 4114 26da B090 0000 		lds r11,(StickNick)+1
4100
 4115 26de B092 0000 		sts (DebugOut+58)+1,r11
4101
 4116 26e2 A092 0000 		sts DebugOut+58,r10
4102
 4117 26e6 C090 0000 		lds r12,StickRoll
4103
 4118 26ea D090 0000 		lds r13,(StickRoll)+1
4104
 4119 26ee D092 0000 		sts (DebugOut+60)+1,r13
4105
 4120 26f2 C092 0000 		sts DebugOut+60,r12
4106
 4121 26f6 8091 0000 		lds r24,debugNickNoisePeak
4107
 4122 26fa 9091 0000 		lds r25,(debugNickNoisePeak)+1
4108
 4123 26fe 9093 0000 		sts (DebugOut+62)+1,r25
4109
 4124 2702 8093 0000 		sts DebugOut+62,r24
4110
 4125 2706 8091 0000 		lds r24,debugRollNoisePeak
4111
 4126 270a 9091 0000 		lds r25,(debugRollNoisePeak)+1
4112
 4127 270e 9093 0000 		sts (DebugOut+64)+1,r25
4113
 4128 2712 8093 0000 		sts DebugOut+64,r24
4114
 4129 2716 0C94 0000 		jmp .L422
4115
 4130               	.L474:
4116
 4131 271a 8091 0000 		lds r24,CompassCalState
4117
 4132 271e 8823      		tst r24
4118
 4133 2720 01F0      		breq .+2
4119
 4134 2722 00C0      		rjmp .L531
4120
 4135               	.L405:
4121
 4136 2724 6091 0000 		lds r22,IntegralGyroNick
4122
 4137 2728 7091 0000 		lds r23,(IntegralGyroNick)+1
4123
 4138 272c 8091 0000 		lds r24,(IntegralGyroNick)+2
4124
 4139 2730 9091 0000 		lds r25,(IntegralGyroNick)+3
4125
 4140 2734 20E0      		ldi r18,lo8(512)
4126
 4141 2736 32E0      		ldi r19,hi8(512)
4127
 4142 2738 40E0      		ldi r20,hlo8(512)
4128
 4143 273a 50E0      		ldi r21,hhi8(512)
4129
 4144 273c 0E94 0000 		call __divmodsi4
4130
 4145 2740 8901      		movw r16,r18
4131
 4146 2742 37FD      		sbrc r19,7
4132
 4147 2744 00C0      		rjmp .L532
4133
 4148               	.L406:
4134
 4149 2746 6091 0000 		lds r22,IntegralGyroRoll
4135
 4150 274a 7091 0000 		lds r23,(IntegralGyroRoll)+1
4136
 4151 274e 8091 0000 		lds r24,(IntegralGyroRoll)+2
4137
 4152 2752 9091 0000 		lds r25,(IntegralGyroRoll)+3
4138
 4153 2756 20E0      		ldi r18,lo8(512)
4139
 4154 2758 32E0      		ldi r19,hi8(512)
4140
 4155 275a 40E0      		ldi r20,hlo8(512)
4141
 4156 275c 50E0      		ldi r21,hhi8(512)
4142
 4157 275e 0E94 0000 		call __divmodsi4
4143
 4158 2762 5901      		movw r10,r18
4144
 4159 2764 37FD      		sbrc r19,7
4145
 4160 2766 00C0      		rjmp .L533
4146
 4161               	.L407:
4147
 4162 2768 A016      		cp r10,r16
4148
 4163 276a B106      		cpc r11,r17
4149
 4164 276c 04F4      		brge .L408
4150
 4165 276e 5801      		movw r10,r16
4151
 4166               	.L408:
4152
 4167 2770 C090 0000 		lds r12,CompassHeading
4153
 4168 2774 D090 0000 		lds r13,(CompassHeading)+1
4154
 4169 2778 D7FC      		sbrc r13,7
4155
 4170 277a 00C0      		rjmp .L534
4156
 4171 277c 4CE1      		ldi r20,lo8(540)
4157
 4172 277e 52E0      		ldi r21,hi8(540)
4158
 4173 2780 C40E      		add r12,r20
4159
 4174 2782 D51E      		adc r13,r21
4160
 4175 2784 7601      		movw r14,r12
4161
 4176 2786 0027      		clr r16
4162
 4177 2788 F7FC      		sbrc r15,7
4163
 4178 278a 0095      		com r16
4164
 4179 278c 102F      		mov r17,r16
4165
 4180 278e 64EE      		ldi r22,lo8(-540)
4166
 4181 2790 7DEF      		ldi r23,hi8(-540)
4167
 4182 2792 C60E      		add r12,r22
4168
 4183 2794 D71E      		adc r13,r23
4169
 4184 2796 6091 0000 		lds r22,YawGyroHeading
4170
 4185 279a 7091 0000 		lds r23,(YawGyroHeading)+1
4171
 4186 279e 8091 0000 		lds r24,(YawGyroHeading)+2
4172
 4187 27a2 9091 0000 		lds r25,(YawGyroHeading)+3
4173
 4188 27a6 20E0      		ldi r18,lo8(512)
4174
 4189 27a8 32E0      		ldi r19,hi8(512)
4175
 4190 27aa 40E0      		ldi r20,hlo8(512)
4176
 4191 27ac 50E0      		ldi r21,hhi8(512)
4177
 4192 27ae 0E94 0000 		call __divmodsi4
4178
 4193 27b2 E21A      		sub r14,r18
4179
 4194 27b4 F30A      		sbc r15,r19
4180
 4195 27b6 040B      		sbc r16,r20
4181
 4196 27b8 150B      		sbc r17,r21
4182
 4197 27ba C801      		movw r24,r16
4183
 4198 27bc B701      		movw r22,r14
4184
 4199 27be 28E6      		ldi r18,lo8(360)
4185
 4200 27c0 31E0      		ldi r19,hi8(360)
4186
 4201 27c2 40E0      		ldi r20,hlo8(360)
4187
 4202 27c4 50E0      		ldi r21,hhi8(360)
4188
 4203 27c6 0E94 0000 		call __divmodsi4
4189
 4204 27ca 645B      		subi r22,lo8(-(-180))
4190
 4205 27cc 7040      		sbci r23,hi8(-(-180))
4191
 4206               	.L410:
4192
 4207 27ce 8091 0000 		lds r24,GyroYaw
4193
 4208 27d2 9091 0000 		lds r25,(GyroYaw)+1
4194
 4209 27d6 9C87      		std Y+12,r25
4195
 4210 27d8 8B87      		std Y+11,r24
4196
 4211 27da 9C01      		movw r18,r24
4197
 4212 27dc 97FD      		sbrc r25,7
4198
 4213 27de 00C0      		rjmp .L535
4199
 4214               	.L412:
4200
 4215 27e0 2138      		cpi r18,129
4201
 4216 27e2 3105      		cpc r19,__zero_reg__
4202
 4217 27e4 04F4      		brge .+2
4203
 4218 27e6 00C0      		rjmp .L411
4204
 4219 27e8 EE24      		clr r14
4205
 4220 27ea FF24      		clr r15
4206
 4221               	.L413:
4207
 4222 27ec 0091 0000 		lds r16,BadCompassHeading
4208
 4223 27f0 1091 0000 		lds r17,(BadCompassHeading)+1
4209
 4224 27f4 0115      		cp r16,__zero_reg__
4210
 4225 27f6 1105      		cpc r17,__zero_reg__
4211
 4226 27f8 01F4      		brne .L414
4212
 4227 27fa 99E1      		ldi r25,lo8(25)
4213
 4228 27fc A916      		cp r10,r25
4214
 4229 27fe B104      		cpc r11,__zero_reg__
4215
 4230 2800 04F4      		brge .+2
4216
 4231 2802 00C0      		rjmp .L536
4217
 4232               	.L414:
4218
 4233 2804 B501      		movw r22,r10
4219
 4234 2806 7595      		asr r23
4220
 4235 2808 6795      		ror r22
4221
 4236 280a 7595      		asr r23
4222
 4237 280c 6795      		ror r22
4223
 4238 280e 7595      		asr r23
4224
 4239 2810 6795      		ror r22
4225
 4240 2812 6F5F      		subi r22,lo8(-(1))
4226
 4241 2814 7F4F      		sbci r23,hi8(-(1))
4227
 4242 2816 C701      		movw r24,r14
4228
 4243 2818 0E94 0000 		call __divmodhi4
4229
 4244 281c 9B01      		movw r18,r22
4230
 4245 281e 4427      		clr r20
4231
 4246 2820 37FD      		sbrc r19,7
4232
 4247 2822 4095      		com r20
4233
 4248 2824 542F      		mov r21,r20
4234
 4249 2826 8091 0000 		lds r24,YawGyroHeading
4235
 4250 282a 9091 0000 		lds r25,(YawGyroHeading)+1
4236
 4251 282e A091 0000 		lds r26,(YawGyroHeading)+2
4237
 4252 2832 B091 0000 		lds r27,(YawGyroHeading)+3
4238
 4253 2836 280F      		add r18,r24
4239
 4254 2838 391F      		adc r19,r25
4240
 4255 283a 4A1F      		adc r20,r26
4241
 4256 283c 5B1F      		adc r21,r27
4242
 4257 283e 2093 0000 		sts YawGyroHeading,r18
4243
 4258 2842 3093 0000 		sts (YawGyroHeading)+1,r19
4244
 4259 2846 4093 0000 		sts (YawGyroHeading)+2,r20
4245
 4260 284a 5093 0000 		sts (YawGyroHeading)+3,r21
4246
 4261 284e 8091 0000 		lds r24,FCParam+4
4247
 4262 2852 882E      		mov r8,r24
4248
 4263 2854 9924      		clr r9
4249
 4264 2856 A89C      		mul r10,r8
4250
 4265 2858 C001      		movw r24,r0
4251
 4266 285a A99C      		mul r10,r9
4252
 4267 285c 900D      		add r25,r0
4253
 4268 285e B89C      		mul r11,r8
4254
 4269 2860 900D      		add r25,r0
4255
 4270 2862 1124      		clr r1
4256
 4271 2864 97FD      		sbrc r25,7
4257
 4272 2866 00C0      		rjmp .L537
4258
 4273               	.L415:
4259
 4274 2868 9595      		asr r25
4260
 4275 286a 8795      		ror r24
4261
 4276 286c 9595      		asr r25
4262
 4277 286e 8795      		ror r24
4263
 4278 2870 9595      		asr r25
4264
 4279 2872 8795      		ror r24
4265
 4280 2874 9595      		asr r25
4266
 4281 2876 8795      		ror r24
4267
 4282 2878 9595      		asr r25
4268
 4283 287a 8795      		ror r24
4269
 4284 287c 6401      		movw r12,r8
4270
 4285 287e C81A      		sub r12,r24
4271
 4286 2880 D90A      		sbc r13,r25
4272
 4287 2882 D7FC      		sbrc r13,7
4273
 4288 2884 00C0      		rjmp .L416
4274
 4289 2886 0115      		cp r16,__zero_reg__
4275
 4290 2888 1105      		cpc r17,__zero_reg__
4276
 4291 288a 01F0      		breq .+2
4277
 4292 288c 00C0      		rjmp .L417
4278
 4293 288e A090 0000 		lds r10,MaxStickRoll
4279
 4294 2892 B090 0000 		lds r11,(MaxStickRoll)+1
4280
 4295 2896 8091 0000 		lds r24,MaxStickNick
4281
 4296 289a 9091 0000 		lds r25,(MaxStickNick)+1
4282
 4297 289e A80E      		add r10,r24
4283
 4298 28a0 B91E      		adc r11,r25
4284
 4299 28a2 B7FC      		sbrc r11,7
4285
 4300 28a4 00C0      		rjmp .L538
4286
 4301               	.L418:
4287
 4302 28a6 B594      		asr r11
4288
 4303 28a8 A794      		ror r10
4289
 4304 28aa B594      		asr r11
4290
 4305 28ac A794      		ror r10
4291
 4306 28ae B594      		asr r11
4292
 4307 28b0 A794      		ror r10
4293
 4308 28b2 60E4      		ldi r22,lo8(64)
4294
 4309 28b4 70E0      		ldi r23,hi8(64)
4295
 4310 28b6 A60E      		add r10,r22
4296
 4311 28b8 B71E      		adc r11,r23
4297
 4312 28ba 8091 0000 		lds r24,CompassCourse
4298
 4313 28be 9091 0000 		lds r25,(CompassCourse)+1
4299
 4314 28c2 AA27      		clr r26
4300
 4315 28c4 97FD      		sbrc r25,7
4301
 4316 28c6 A095      		com r26
4302
 4317 28c8 BA2F      		mov r27,r26
4303
 4318 28ca 1CE1      		ldi r17,lo8(540)
4304
 4319 28cc E12E      		mov r14,r17
4305
 4320 28ce 12E0      		ldi r17,hi8(540)
4306
 4321 28d0 F12E      		mov r15,r17
4307
 4322 28d2 012D      		mov r16,__zero_reg__
4308
 4323 28d4 112D      		mov r17,__zero_reg__
4309
 4324 28d6 E81A      		sub r14,r24
4310
 4325 28d8 F90A      		sbc r15,r25
4311
 4326 28da 0A0B      		sbc r16,r26
4312
 4327 28dc 1B0B      		sbc r17,r27
4313
 4328 28de CA01      		movw r24,r20
4314
 4329 28e0 B901      		movw r22,r18
4315
 4330 28e2 20E0      		ldi r18,lo8(512)
4316
 4331 28e4 32E0      		ldi r19,hi8(512)
4317
 4332 28e6 40E0      		ldi r20,hlo8(512)
4318
 4333 28e8 50E0      		ldi r21,hhi8(512)
4319
 4334 28ea 0E94 0000 		call __divmodsi4
4320
 4335 28ee E20E      		add r14,r18
4321
 4336 28f0 F31E      		adc r15,r19
4322
 4337 28f2 041F      		adc r16,r20
4323
 4338 28f4 151F      		adc r17,r21
4324
 4339 28f6 C801      		movw r24,r16
4325
 4340 28f8 B701      		movw r22,r14
4326
 4341 28fa 28E6      		ldi r18,lo8(360)
4327
 4342 28fc 31E0      		ldi r19,hi8(360)
4328
 4343 28fe 40E0      		ldi r20,hlo8(360)
4329
 4344 2900 50E0      		ldi r21,hhi8(360)
4330
 4345 2902 0E94 0000 		call __divmodsi4
4331
 4346 2906 645B      		subi r22,lo8(-(-180))
4332
 4347 2908 7040      		sbci r23,hi8(-(-180))
4333
 4348 290a 6C9D      		mul r22,r12
4334
 4349 290c C001      		movw r24,r0
4335
 4350 290e 6D9D      		mul r22,r13
4336
 4351 2910 900D      		add r25,r0
4337
 4352 2912 7C9D      		mul r23,r12
4338
 4353 2914 900D      		add r25,r0
4339
 4354 2916 1124      		clr r1
4340
 4355 2918 B501      		movw r22,r10
4341
 4356 291a 0E94 0000 		call __divmodhi4
4342
 4357 291e C401      		movw r24,r8
4343
 4358 2920 880F      		lsl r24
4344
 4359 2922 991F      		rol r25
4345
 4360 2924 880D      		add r24,r8
4346
 4361 2926 991D      		adc r25,r9
4347
 4362 2928 8617      		cp r24,r22
4348
 4363 292a 9707      		cpc r25,r23
4349
 4364 292c 04F0      		brlt .+2
4350
 4365 292e 00C0      		rjmp .L419
4351
 4366 2930 BC01      		movw r22,r24
4352
 4367               	.L420:
4353
 4368 2932 9B01      		movw r18,r22
4354
 4369 2934 4427      		clr r20
4355
 4370 2936 37FD      		sbrc r19,7
4356
 4371 2938 4095      		com r20
4357
 4372 293a 542F      		mov r21,r20
4358
 4373 293c 8091 0000 		lds r24,ReadingIntegralGyroYaw
4359
 4374 2940 9091 0000 		lds r25,(ReadingIntegralGyroYaw)+1
4360
 4375 2944 A091 0000 		lds r26,(ReadingIntegralGyroYaw)+2
4361
 4376 2948 B091 0000 		lds r27,(ReadingIntegralGyroYaw)+3
4362
 4377 294c 820F      		add r24,r18
4363
 4378 294e 931F      		adc r25,r19
4364
 4379 2950 A41F      		adc r26,r20
4365
 4380 2952 B51F      		adc r27,r21
4366
 4381 2954 8093 0000 		sts ReadingIntegralGyroYaw,r24
4367
 4382 2958 9093 0000 		sts (ReadingIntegralGyroYaw)+1,r25
4368
 4383 295c A093 0000 		sts (ReadingIntegralGyroYaw)+2,r26
4369
 4384 2960 B093 0000 		sts (ReadingIntegralGyroYaw)+3,r27
4370
 4385 2964 0C94 0000 		jmp .L404
4371
 4386               	.L402:
4372
 4387 2968 2155      		subi r18,lo8(50001)
4373
 4388 296a 334C      		sbci r19,hi8(50001)
4374
 4389 296c 4040      		sbci r20,hlo8(50001)
4375
 4390 296e 5040      		sbci r21,hhi8(50001)
4376
 4391 2970 04F4      		brge .+4
4377
 4392 2972 0C94 0000 		jmp .L403
4378
 4393 2976 80E5      		ldi r24,lo8(50000)
4379
 4394 2978 93EC      		ldi r25,hi8(50000)
4380
 4395 297a A0E0      		ldi r26,hlo8(50000)
4381
 4396 297c B0E0      		ldi r27,hhi8(50000)
4382
 4397 297e 8093 0000 		sts ReadingIntegralGyroYaw,r24
4383
 4398 2982 9093 0000 		sts (ReadingIntegralGyroYaw)+1,r25
4384
 4399 2986 A093 0000 		sts (ReadingIntegralGyroYaw)+2,r26
4385
 4400 298a B093 0000 		sts (ReadingIntegralGyroYaw)+3,r27
4386
 4401 298e 0C94 0000 		jmp .L403
4387
 4402               	.L279:
4388
 4403 2992 2998      		cbi 37-0x20,1
4389
 4404 2994 0C94 0000 		jmp .L280
4390
 4405               	.L529:
4391
 4406 2998 9887      		std Y+8,r25
4392
 4407 299a 8F83      		std Y+7,r24
4393
 4408 299c 81E0      		ldi r24,lo8(1)
4394
 4409 299e 8093 0000 		sts FunnelCourse,r24
4395
 4410 29a2 0C94 0000 		jmp .L387
4396
 4411               	.L515:
4397
 4412 29a6 9B01      		movw r18,r22
4398
 4413 29a8 77FD      		sbrc r23,7
4399
 4414 29aa 00C0      		rjmp .L539
4400
 4415               	.L366:
4401
 4416 29ac C901      		movw r24,r18
4402
 4417 29ae 9595      		asr r25
4403
 4418 29b0 8795      		ror r24
4404
 4419 29b2 9595      		asr r25
4405
 4420 29b4 8795      		ror r24
4406
 4421 29b6 9093 0000 		sts (MaxStickNick)+1,r25
4407
 4422 29ba 8093 0000 		sts MaxStickNick,r24
4408
 4423 29be 8536      		cpi r24,101
4409
 4424 29c0 9105      		cpc r25,__zero_reg__
4410
 4425 29c2 04F4      		brge .+2
4411
 4426 29c4 00C0      		rjmp .L367
4412
 4427 29c6 84E6      		ldi r24,lo8(100)
4413
 4428 29c8 90E0      		ldi r25,hi8(100)
4414
 4429 29ca 9093 0000 		sts (MaxStickNick)+1,r25
4415
 4430 29ce 8093 0000 		sts MaxStickNick,r24
4416
 4431 29d2 00C0      		rjmp .L367
4417
 4432               	.L512:
4418
 4433 29d4 1092 0000 		sts GyroIFactor,__zero_reg__
4419
 4434 29d8 00C0      		rjmp .L362
4420
 4435               	.L530:
4421
 4436 29da 80E5      		ldi r24,lo8(80)
4422
 4437 29dc 90E0      		ldi r25,hi8(80)
4423
 4438 29de 9C01      		movw r18,r24
4424
 4439 29e0 5FEF      		ldi r21,hi8(-80)
4425
 4440 29e2 803B      		cpi r24,lo8(-80)
4426
 4441 29e4 9507      		cpc r25,r21
4427
 4442 29e6 04F0      		brlt .+4
4428
 4443 29e8 0C94 0000 		jmp .L439
4429
 4444 29ec 00C0      		rjmp .L540
4430
 4445               	.L494:
4431
 4446 29ee C601      		movw r24,r12
4432
 4447 29f0 0C94 0000 		jmp .L458
4433
 4448               	.L492:
4434
 4449 29f4 3C01      		movw r6,r24
4435
 4450 29f6 0C94 0000 		jmp .L443
4436
 4451               	.L531:
4437
 4452 29fa 8091 0000 		lds r24,MKFlags
4438
 4453 29fe 80FD      		sbrc r24,0
4439
 4454 2a00 00C0      		rjmp .L405
4440
 4455 2a02 0E94 0000 		call SetCompassCalState
4441
 4456 2a06 3090 0000 		lds r3,LoopingNick
4442
 4457 2a0a 2091 0000 		lds r18,GyroYaw
4443
 4458 2a0e 3091 0000 		lds r19,(GyroYaw)+1
4444
 4459 2a12 3C87      		std Y+12,r19
4445
 4460 2a14 2B87      		std Y+11,r18
4446
 4461 2a16 0C94 0000 		jmp .L404
4447
 4462               	.L482:
4448
 4463 2a1a 0197      		sbiw r24,1
4449
 4464 2a1c 9093 0000 		sts (RcLostTimer.1981)+1,r25
4450
 4465 2a20 8093 0000 		sts RcLostTimer.1981,r24
4451
 4466 2a24 8AE0      		ldi r24,lo8(10)
4452
 4467 2a26 D816      		cp r13,r24
4453
 4468 2a28 01F0      		breq .+4
4454
 4469 2a2a 0C94 0000 		jmp .L541
4455
 4470               	.L286:
4456
 4471 2a2e 289A      		sbi 37-0x20,0
4457
 4472 2a30 0C94 0000 		jmp .L288
4458
 4473               	.L491:
4459
 4474 2a34 9201      		movw r18,r4
4460
 4475 2a36 3595      		asr r19
4461
 4476 2a38 2795      		ror r18
4462
 4477 2a3a E216      		cp r14,r18
4463
 4478 2a3c F306      		cpc r15,r19
4464
 4479 2a3e 04F0      		brlt .+4
4465
 4480 2a40 0C94 0000 		jmp .L439
4466
 4481 2a44 9701      		movw r18,r14
4467
 4482 2a46 0C94 0000 		jmp .L439
4468
 4483               	.L489:
4469
 4484 2a4a 8F81      		ldd r24,Y+7
4470
 4485 2a4c 9885      		ldd r25,Y+8
4471
 4486 2a4e 892B      		or r24,r25
4472
 4487 2a50 01F4      		brne .+4
4473
 4488 2a52 0C94 0000 		jmp .L433
4474
 4489 2a56 81E0      		ldi r24,lo8(1)
4475
 4490 2a58 90E0      		ldi r25,hi8(1)
4476
 4491 2a5a 9093 0000 		sts (ModelIsFlying)+1,r25
4477
 4492 2a5e 8093 0000 		sts ModelIsFlying,r24
4478
 4493 2a62 0C94 0000 		jmp .L433
4479
 4494               	.L487:
4480
 4495 2a66 81E0      		ldi r24,lo8(1)
4481
 4496 2a68 90E0      		ldi r25,hi8(1)
4482
 4497 2a6a 9093 0000 		sts (UpdateCompassCourse.1986)+1,r25
4483
 4498 2a6e 8093 0000 		sts UpdateCompassCourse.1986,r24
4484
 4499 2a72 0C94 0000 		jmp .L399
4485
 4500               	.L485:
4486
 4501 2a76 8091 0000 		lds r24,FCParam+15
4487
 4502 2a7a 8823      		tst r24
4488
 4503 2a7c 01F0      		breq .+4
4489
 4504 2a7e 0C94 0000 		jmp .L396
4490
 4505 2a82 8091 0000 		lds r24,filteredHiResRollGyro
4491
 4506 2a86 9091 0000 		lds r25,(filteredHiResRollGyro)+1
4492
 4507 2a8a AA27      		clr r26
4493
 4508 2a8c 97FD      		sbrc r25,7
4494
 4509 2a8e A095      		com r26
4495
 4510 2a90 BA2F      		mov r27,r26
4496
 4511 2a92 E816      		cp r14,r24
4497
 4512 2a94 F906      		cpc r15,r25
4498
 4513 2a96 0A07      		cpc r16,r26
4499
 4514 2a98 1B07      		cpc r17,r27
4500
 4515 2a9a 04F0      		brlt .+2
4501
 4516 2a9c 00C0      		rjmp .L398
4502
 4517 2a9e 2091 0000 		lds r18,IntegralGyroRoll
4503
 4518 2aa2 3091 0000 		lds r19,(IntegralGyroRoll)+1
4504
 4519 2aa6 4091 0000 		lds r20,(IntegralGyroRoll)+2
4505
 4520 2aaa 5091 0000 		lds r21,(IntegralGyroRoll)+3
4506
 4521 2aae 1216      		cp __zero_reg__,r18
4507
 4522 2ab0 1306      		cpc __zero_reg__,r19
4508
 4523 2ab2 1406      		cpc __zero_reg__,r20
4509
 4524 2ab4 1506      		cpc __zero_reg__,r21
4510
 4525 2ab6 04F0      		brlt .+2
4511
 4526 2ab8 00C0      		rjmp .L398
4512
 4527 2aba C090 0000 		lds r12,StickRoll
4513
 4528 2abe D090 0000 		lds r13,(StickRoll)+1
4514
 4529 2ac2 C814      		cp r12,r8
4515
 4530 2ac4 D904      		cpc r13,r9
4516
 4531 2ac6 04F4      		brge .+2
4517
 4532 2ac8 00C0      		rjmp .L398
4518
 4533 2aca 6C14      		cp r6,r12
4519
 4534 2acc 7D04      		cpc r7,r13
4520
 4535 2ace 04F4      		brge .+2
4521
 4536 2ad0 00C0      		rjmp .L398
4522
 4537 2ad2 8091 0000 		lds r24,FCParam+17
4523
 4538 2ad6 8058      		subi r24,lo8(-(-128))
4524
 4539 2ad8 9927      		clr r25
4525
 4540 2ada 87FD      		sbrc r24,7
4526
 4541 2adc 9095      		com r25
4527
 4542 2ade A92F      		mov r26,r25
4528
 4543 2ae0 B92F      		mov r27,r25
4529
 4544 2ae2 8E0D      		add r24,r14
4530
 4545 2ae4 9F1D      		adc r25,r15
4531
 4546 2ae6 A01F      		adc r26,r16
4532
 4547 2ae8 B11F      		adc r27,r17
4533
 4548 2aea 8093 0000 		sts vibrationOffsetRoll,r24
4534
 4549 2aee 9093 0000 		sts (vibrationOffsetRoll)+1,r25
4535
 4550 2af2 A093 0000 		sts (vibrationOffsetRoll)+2,r26
4536
 4551 2af6 B093 0000 		sts (vibrationOffsetRoll)+3,r27
4537
 4552               	.L480:
4538
 4553 2afa 6091 0000 		lds r22,FCParam+14
4539
 4554 2afe 70E0      		ldi r23,lo8(0)
4540
 4555 2b00 80E0      		ldi r24,lo8(0)
4541
 4556 2b02 90E0      		ldi r25,hi8(0)
4542
 4557 2b04 0E94 0000 		call __mulsi3
4543
 4558 2b08 24E6      		ldi r18,lo8(100)
4544
 4559 2b0a 30E0      		ldi r19,hi8(100)
4545
 4560 2b0c 40E0      		ldi r20,hlo8(100)
4546
 4561 2b0e 50E0      		ldi r21,hhi8(100)
4547
 4562 2b10 0E94 0000 		call __divmodsi4
4548
 4563 2b14 2093 0000 		sts IntegralGyroRoll,r18
4549
 4564 2b18 3093 0000 		sts (IntegralGyroRoll)+1,r19
4550
 4565 2b1c 4093 0000 		sts (IntegralGyroRoll)+2,r20
4551
 4566 2b20 5093 0000 		sts (IntegralGyroRoll)+3,r21
4552
 4567 2b24 0C94 0000 		jmp .L396
4553
 4568               	.L368:
4554
 4569 2b28 4150      		subi r20,lo8(-(-1))
4555
 4570 2b2a 5040      		sbci r21,hi8(-(-1))
4556
 4571 2b2c 5093 0000 		sts (MaxStickRoll)+1,r21
4557
 4572 2b30 4093 0000 		sts MaxStickRoll,r20
4558
 4573 2b34 00C0      		rjmp .L372
4559
 4574               	.L348:
4560
 4575 2b36 1092 0000 		sts (delay_startmotors.1983)+1,__zero_reg__
4561
 4576 2b3a 1092 0000 		sts delay_startmotors.1983,__zero_reg__
4562
 4577               	.L350:
4563
 4578 2b3e E091 0000 		lds r30,ParamSet+3
4564
 4579 2b42 F0E0      		ldi r31,lo8(0)
4565
 4580 2b44 EE0F      		lsl r30
4566
 4581 2b46 FF1F      		rol r31
4567
 4582 2b48 E050      		subi r30,lo8(-(PPM_in))
4568
 4583 2b4a F040      		sbci r31,hi8(-(PPM_in))
4569
 4584 2b4c 8081      		ld r24,Z
4570
 4585 2b4e 9181      		ldd r25,Z+1
4571
 4586 2b50 8C34      		cpi r24,76
4572
 4587 2b52 9105      		cpc r25,__zero_reg__
4573
 4588 2b54 04F4      		brge .+2
4574
 4589 2b56 00C0      		rjmp .L354
4575
 4590 2b58 8091 0000 		lds r24,delay_stopmotors.1984
4576
 4591 2b5c 9091 0000 		lds r25,(delay_stopmotors.1984)+1
4577
 4592 2b60 0196      		adiw r24,1
4578
 4593 2b62 9093 0000 		sts (delay_stopmotors.1984)+1,r25
4579
 4594 2b66 8093 0000 		sts delay_stopmotors.1984,r24
4580
 4595 2b6a 893C      		cpi r24,201
4581
 4596 2b6c 9105      		cpc r25,__zero_reg__
4582
 4597 2b6e 00F4      		brsh .+4
4583
 4598 2b70 0C94 0000 		jmp .L290
4584
 4599 2b74 88EC      		ldi r24,lo8(200)
4585
 4600 2b76 90E0      		ldi r25,hi8(200)
4586
 4601 2b78 9093 0000 		sts (delay_stopmotors.1984)+1,r25
4587
 4602 2b7c 8093 0000 		sts delay_stopmotors.1984,r24
4588
 4603 2b80 1092 0000 		sts (ModelIsFlying)+1,__zero_reg__
4589
 4604 2b84 1092 0000 		sts ModelIsFlying,__zero_reg__
4590
 4605               	.L478:
4591
 4606 2b88 8091 0000 		lds r24,MKFlags
4592
 4607 2b8c 8E7F      		andi r24,lo8(-2)
4593
 4608 2b8e 8093 0000 		sts MKFlags,r24
4594
 4609 2b92 0C94 0000 		jmp .L290
4595
 4610               	.L411:
4596
 4611 2b96 7B01      		movw r14,r22
4597
 4612 2b98 EE0C      		lsl r14
4598
 4613 2b9a FF1C      		rol r15
4599
 4614 2b9c EE0C      		lsl r14
4600
 4615 2b9e FF1C      		rol r15
4601
 4616 2ba0 EE0C      		lsl r14
4602
 4617 2ba2 FF1C      		rol r15
4603
 4618 2ba4 00C0      		rjmp .L413
4604
 4619               	.L486:
4605
 4620 2ba6 8827      		clr r24
4606
 4621 2ba8 9927      		clr r25
4607
 4622 2baa 841B      		sub r24,r20
4608
 4623 2bac 950B      		sbc r25,r21
4609
 4624 2bae 0C94 0000 		jmp .L400
4610
 4625               	.L493:
4611
 4626 2bb2 2227      		clr r18
4612
 4627 2bb4 3327      		clr r19
4613
 4628 2bb6 2619      		sub r18,r6
4614
 4629 2bb8 3709      		sbc r19,r7
4615
 4630 2bba 0C94 0000 		jmp .L453
4616
 4631               	.L488:
4617
 4632 2bbe 2D5F      		subi r18,lo8(-(3))
4618
 4633 2bc0 3F4F      		sbci r19,hi8(-(3))
4619
 4634 2bc2 0C94 0000 		jmp .L401
4620
 4635               	.L511:
4621
 4636 2bc6 1092 0000 		sts (StickGas)+1,__zero_reg__
4622
 4637 2bca 1092 0000 		sts StickGas,__zero_reg__
4623
 4638 2bce 8091 0000 		lds r24,ParamSet+8
4624
 4639 2bd2 82FF      		sbrs r24,2
4625
 4640 2bd4 00C0      		rjmp .L362
4626
 4641 2bd6 00C0      		rjmp .L512
4627
 4642               	.L510:
4628
 4643 2bd8 2250      		subi r18,lo8(-(-2))
4629
 4644 2bda 3040      		sbci r19,hi8(-(-2))
4630
 4645 2bdc 3093 0000 		sts (StickYaw)+1,r19
4631
 4646 2be0 2093 0000 		sts StickYaw,r18
4632
 4647 2be4 00C0      		rjmp .L357
4633
 4648               	.L519:
4634
 4649 2be6 84E6      		ldi r24,lo8(100)
4635
 4650 2be8 90E0      		ldi r25,hi8(100)
4636
 4651 2bea 9093 0000 		sts (MaxStickRoll)+1,r25
4637
 4652 2bee 8093 0000 		sts MaxStickRoll,r24
4638
 4653 2bf2 00C0      		rjmp .L372
4639
 4654               	.L385:
4640
 4655 2bf4 1092 0000 		sts LoopingNick,__zero_reg__
4641
 4656 2bf8 0C94 0000 		jmp .L356
4642
 4657               	.L382:
4643
 4658 2bfc 1092 0000 		sts LoopingRoll,__zero_reg__
4644
 4659 2c00 00C0      		rjmp .L383
4645
 4660               	.L526:
4646
 4661 2c02 81E0      		ldi r24,lo8(1)
4647
 4662 2c04 8093 0000 		sts LoopingDown,r24
4648
 4663 2c08 00C0      		rjmp .L380
4649
 4664               	.L524:
4650
 4665 2c0a 81E0      		ldi r24,lo8(1)
4651
 4666 2c0c 8093 0000 		sts LoopingTop,r24
4652
 4667 2c10 8091 0000 		lds r24,ParamSet+40
4653
 4668 2c14 482F      		mov r20,r24
4654
 4669 2c16 50E0      		ldi r21,lo8(0)
4655
 4670 2c18 61E0      		ldi r22,lo8(1)
4656
 4671 2c1a 00C0      		rjmp .L378
4657
 4672               	.L522:
4658
 4673 2c1c 81E0      		ldi r24,lo8(1)
4659
 4674 2c1e 8093 0000 		sts LoopingRight,r24
4660
 4675 2c22 8091 0000 		lds r24,ParamSet+40
4661
 4676 2c26 482F      		mov r20,r24
4662
 4677 2c28 50E0      		ldi r21,lo8(0)
4663
 4678 2c2a 00C0      		rjmp .L376
4664
 4679               	.L520:
4665
 4680 2c2c 81E0      		ldi r24,lo8(1)
4666
 4681 2c2e 8093 0000 		sts LoopingLeft,r24
4667
 4682 2c32 71E0      		ldi r23,lo8(1)
4668
 4683 2c34 00C0      		rjmp .L374
4669
 4684               	.L417:
4670
 4685 2c36 0150      		subi r16,lo8(-(-1))
4671
 4686 2c38 1040      		sbci r17,hi8(-(-1))
4672
 4687 2c3a 1093 0000 		sts (BadCompassHeading)+1,r17
4673
 4688 2c3e 0093 0000 		sts BadCompassHeading,r16
4674
 4689 2c42 0C94 0000 		jmp .L404
4675
 4690               	.L521:
4676
 4691 2c46 1092 0000 		sts LoopingLeft,__zero_reg__
4677
 4692 2c4a 8091 0000 		lds r24,ParamSet+1
4678
 4693 2c4e A82F      		mov r26,r24
4679
 4694 2c50 B0E0      		ldi r27,lo8(0)
4680
 4695 2c52 8091 0000 		lds r24,ParamSet+40
4681
 4696 2c56 482F      		mov r20,r24
4682
 4697 2c58 50E0      		ldi r21,lo8(0)
4683
 4698 2c5a AA0F      		lsl r26
4684
 4699 2c5c BB1F      		rol r27
4685
 4700 2c5e 70E0      		ldi r23,lo8(0)
4686
 4701 2c60 00C0      		rjmp .L374
4687
 4702               	.L525:
4688
 4703 2c62 1092 0000 		sts LoopingTop,__zero_reg__
4689
 4704 2c66 8091 0000 		lds r24,ParamSet
4690
 4705 2c6a A82F      		mov r26,r24
4691
 4706 2c6c B0E0      		ldi r27,lo8(0)
4692
 4707 2c6e 8091 0000 		lds r24,ParamSet+40
4693
 4708 2c72 482F      		mov r20,r24
4694
 4709 2c74 50E0      		ldi r21,lo8(0)
4695
 4710 2c76 AA0F      		lsl r26
4696
 4711 2c78 BB1F      		rol r27
4697
 4712 2c7a 60E0      		ldi r22,lo8(0)
4698
 4713 2c7c 00C0      		rjmp .L378
4699
 4714               	.L523:
4700
 4715 2c7e 1092 0000 		sts LoopingRight,__zero_reg__
4701
 4716 2c82 8091 0000 		lds r24,ParamSet+40
4702
 4717 2c86 482F      		mov r20,r24
4703
 4718 2c88 50E0      		ldi r21,lo8(0)
4704
 4719 2c8a 00C0      		rjmp .L376
4705
 4720               	.L527:
4706
 4721 2c8c 1092 0000 		sts LoopingDown,__zero_reg__
4707
 4722 2c90 00C0      		rjmp .L380
4708
 4723               	.L292:
4709
 4724 2c92 8091 0000 		lds r24,MKFlags
4710
 4725 2c96 8260      		ori r24,lo8(2)
4711
 4726 2c98 8093 0000 		sts MKFlags,r24
4712
 4727 2c9c 0C94 0000 		jmp .L293
4713
 4728               	.L536:
4714
 4729 2ca0 8091 0000 		lds r24,UpdateCompassCourse.1986
4715
 4730 2ca4 9091 0000 		lds r25,(UpdateCompassCourse.1986)+1
4716
 4731 2ca8 892B      		or r24,r25
4717
 4732 2caa 01F4      		brne .+2
4718
 4733 2cac 00C0      		rjmp .L414
4719
 4734 2cae 88EC      		ldi r24,lo8(200)
4720
 4735 2cb0 90E0      		ldi r25,hi8(200)
4721
 4736 2cb2 9093 0000 		sts (BeepTime)+1,r25
4722
 4737 2cb6 8093 0000 		sts BeepTime,r24
4723
 4738 2cba B601      		movw r22,r12
4724
 4739 2cbc 8827      		clr r24
4725
 4740 2cbe 77FD      		sbrc r23,7
4726
 4741 2cc0 8095      		com r24
4727
 4742 2cc2 982F      		mov r25,r24
4728
 4743 2cc4 F9E0      		ldi r31,9
4729
 4744 2cc6 660F      	1:	lsl r22
4730
 4745 2cc8 771F      		rol r23
4731
 4746 2cca 881F      		rol r24
4732
 4747 2ccc 991F      		rol r25
4733
 4748 2cce FA95      		dec r31
4734
 4749 2cd0 01F4      		brne 1b
4735
 4750 2cd2 6093 0000 		sts YawGyroHeading,r22
4736
 4751 2cd6 7093 0000 		sts (YawGyroHeading)+1,r23
4737
 4752 2cda 8093 0000 		sts (YawGyroHeading)+2,r24
4738
 4753 2cde 9093 0000 		sts (YawGyroHeading)+3,r25
4739
 4754 2ce2 20E0      		ldi r18,lo8(512)
4740
 4755 2ce4 32E0      		ldi r19,hi8(512)
4741
 4756 2ce6 40E0      		ldi r20,hlo8(512)
4742
 4757 2ce8 50E0      		ldi r21,hhi8(512)
4743
 4758 2cea 0E94 0000 		call __divmodsi4
4744
 4759 2cee 3093 0000 		sts (CompassCourse)+1,r19
4745
 4760 2cf2 2093 0000 		sts CompassCourse,r18
4746
 4761 2cf6 1092 0000 		sts (UpdateCompassCourse.1986)+1,__zero_reg__
4747
 4762 2cfa 1092 0000 		sts UpdateCompassCourse.1986,__zero_reg__
4748
 4763 2cfe 00C0      		rjmp .L414
4749
 4764               	.L490:
4750
 4765 2d00 0196      		adiw r24,1
4751
 4766 2d02 0C94 0000 		jmp .L438
4752
 4767               	.L484:
4753
 4768 2d06 9095      		com r25
4754
 4769 2d08 8195      		neg r24
4755
 4770 2d0a 9F4F      		sbci r25,lo8(-1)
4756
 4771 2d0c C816      		cp r12,r24
4757
 4772 2d0e D906      		cpc r13,r25
4758
 4773 2d10 04F4      		brge .+4
4759
 4774 2d12 0C94 0000 		jmp .L396
4760
 4775 2d16 00C0      		rjmp .L485
4761
 4776               	.L483:
4762
 4777 2d18 9095      		com r25
4763
 4778 2d1a 8195      		neg r24
4764
 4779 2d1c 9F4F      		sbci r25,lo8(-1)
4765
 4780 2d1e 8C15      		cp r24,r12
4766
 4781 2d20 9D05      		cpc r25,r13
4767
 4782 2d22 04F0      		brlt .+4
4768
 4783 2d24 0C94 0000 		jmp .L393
4769
 4784 2d28 0C94 0000 		jmp .L542
4770
 4785               	.L481:
4771
 4786 2d2c 88E9      		ldi r24,lo8(15000)
4772
 4787 2d2e 9AE3      		ldi r25,hi8(15000)
4773
 4788 2d30 9093 0000 		sts (BeepTime)+1,r25
4774
 4789 2d34 8093 0000 		sts BeepTime,r24
4775
 4790 2d38 80E0      		ldi r24,lo8(3072)
4776
 4791 2d3a 9CE0      		ldi r25,hi8(3072)
4777
 4792 2d3c 9093 0000 		sts (BeepModulation)+1,r25
4778
 4793 2d40 8093 0000 		sts BeepModulation,r24
4779
 4794 2d44 0C94 0000 		jmp .L283
4780
 4795               	.L398:
4781
 4796 2d48 8091 0000 		lds r24,filteredHiResRollGyro
4782
 4797 2d4c 9091 0000 		lds r25,(filteredHiResRollGyro)+1
4783
 4798 2d50 AA27      		clr r26
4784
 4799 2d52 97FD      		sbrc r25,7
4785
 4800 2d54 A095      		com r26
4786
 4801 2d56 BA2F      		mov r27,r26
4787
 4802 2d58 8E15      		cp r24,r14
4788
 4803 2d5a 9F05      		cpc r25,r15
4789
 4804 2d5c A007      		cpc r26,r16
4790
 4805 2d5e B107      		cpc r27,r17
4791
 4806 2d60 04F0      		brlt .+4
4792
 4807 2d62 0C94 0000 		jmp .L396
4793
 4808 2d66 2091 0000 		lds r18,IntegralGyroRoll
4794
 4809 2d6a 3091 0000 		lds r19,(IntegralGyroRoll)+1
4795
 4810 2d6e 4091 0000 		lds r20,(IntegralGyroRoll)+2
4796
 4811 2d72 5091 0000 		lds r21,(IntegralGyroRoll)+3
4797
 4812 2d76 57FD      		sbrc r21,7
4798
 4813 2d78 00C0      		rjmp .+4
4799
 4814 2d7a 0C94 0000 		jmp .L396
4800
 4815 2d7e C090 0000 		lds r12,StickRoll
4801
 4816 2d82 D090 0000 		lds r13,(StickRoll)+1
4802
 4817 2d86 8827      		clr r24
4803
 4818 2d88 9927      		clr r25
4804
 4819 2d8a 8819      		sub r24,r8
4805
 4820 2d8c 9909      		sbc r25,r9
4806
 4821 2d8e 8C15      		cp r24,r12
4807
 4822 2d90 9D05      		cpc r25,r13
4808
 4823 2d92 04F4      		brge .+4
4809
 4824 2d94 0C94 0000 		jmp .L396
4810
 4825 2d98 8827      		clr r24
4811
 4826 2d9a 9927      		clr r25
4812
 4827 2d9c 8619      		sub r24,r6
4813
 4828 2d9e 9709      		sbc r25,r7
4814
 4829 2da0 C816      		cp r12,r24
4815
 4830 2da2 D906      		cpc r13,r25
4816
 4831 2da4 04F4      		brge .+4
4817
 4832 2da6 0C94 0000 		jmp .L396
4818
 4833 2daa 8091 0000 		lds r24,FCParam+17
4819
 4834 2dae 8058      		subi r24,lo8(-(-128))
4820
 4835 2db0 9927      		clr r25
4821
 4836 2db2 87FD      		sbrc r24,7
4822
 4837 2db4 9095      		com r25
4823
 4838 2db6 A92F      		mov r26,r25
4824
 4839 2db8 B92F      		mov r27,r25
4825
 4840 2dba E81A      		sub r14,r24
4826
 4841 2dbc F90A      		sbc r15,r25
4827
 4842 2dbe 0A0B      		sbc r16,r26
4828
 4843 2dc0 1B0B      		sbc r17,r27
4829
 4844 2dc2 E092 0000 		sts vibrationOffsetRoll,r14
4830
 4845 2dc6 F092 0000 		sts (vibrationOffsetRoll)+1,r15
4831
 4846 2dca 0093 0000 		sts (vibrationOffsetRoll)+2,r16
4832
 4847 2dce 1093 0000 		sts (vibrationOffsetRoll)+3,r17
4833
 4848 2dd2 00C0      		rjmp .L480
4834
 4849               	.L395:
4835
 4850 2dd4 8091 0000 		lds r24,filteredHiResPitchGyro
4836
 4851 2dd8 9091 0000 		lds r25,(filteredHiResPitchGyro)+1
4837
 4852 2ddc AA27      		clr r26
4838
 4853 2dde 97FD      		sbrc r25,7
4839
 4854 2de0 A095      		com r26
4840
 4855 2de2 BA2F      		mov r27,r26
4841
 4856 2de4 8E15      		cp r24,r14
4842
 4857 2de6 9F05      		cpc r25,r15
4843
 4858 2de8 A007      		cpc r26,r16
4844
 4859 2dea B107      		cpc r27,r17
4845
 4860 2dec 04F0      		brlt .+4
4846
 4861 2dee 0C94 0000 		jmp .L393
4847
 4862 2df2 2091 0000 		lds r18,IntegralGyroNick
4848
 4863 2df6 3091 0000 		lds r19,(IntegralGyroNick)+1
4849
 4864 2dfa 4091 0000 		lds r20,(IntegralGyroNick)+2
4850
 4865 2dfe 5091 0000 		lds r21,(IntegralGyroNick)+3
4851
 4866 2e02 57FD      		sbrc r21,7
4852
 4867 2e04 00C0      		rjmp .+4
4853
 4868 2e06 0C94 0000 		jmp .L393
4854
 4869 2e0a A090 0000 		lds r10,StickNick
4855
 4870 2e0e B090 0000 		lds r11,(StickNick)+1
4856
 4871 2e12 8827      		clr r24
4857
 4872 2e14 9927      		clr r25
4858
 4873 2e16 8819      		sub r24,r8
4859
 4874 2e18 9909      		sbc r25,r9
4860
 4875 2e1a 8A15      		cp r24,r10
4861
 4876 2e1c 9B05      		cpc r25,r11
4862
 4877 2e1e 04F4      		brge .+4
4863
 4878 2e20 0C94 0000 		jmp .L393
4864
 4879 2e24 8827      		clr r24
4865
 4880 2e26 9927      		clr r25
4866
 4881 2e28 8619      		sub r24,r6
4867
 4882 2e2a 9709      		sbc r25,r7
4868
 4883 2e2c A816      		cp r10,r24
4869
 4884 2e2e B906      		cpc r11,r25
4870
 4885 2e30 04F4      		brge .+4
4871
 4886 2e32 0C94 0000 		jmp .L393
4872
 4887 2e36 8091 0000 		lds r24,FCParam+16
4873
 4888 2e3a 8058      		subi r24,lo8(-(-128))
4874
 4889 2e3c 9927      		clr r25
4875
 4890 2e3e 87FD      		sbrc r24,7
4876
 4891 2e40 9095      		com r25
4877
 4892 2e42 A92F      		mov r26,r25
4878
 4893 2e44 B92F      		mov r27,r25
4879
 4894 2e46 E81A      		sub r14,r24
4880
 4895 2e48 F90A      		sbc r15,r25
4881
 4896 2e4a 0A0B      		sbc r16,r26
4882
 4897 2e4c 1B0B      		sbc r17,r27
4883
 4898 2e4e E092 0000 		sts vibrationOffsetNick,r14
4884
 4899 2e52 F092 0000 		sts (vibrationOffsetNick)+1,r15
4885
 4900 2e56 0093 0000 		sts (vibrationOffsetNick)+2,r16
4886
 4901 2e5a 1093 0000 		sts (vibrationOffsetNick)+3,r17
4887
 4902 2e5e 0C94 0000 		jmp .L479
4888
 4903               	.L517:
4889
 4904 2e62 3095      		com r19
4890
 4905 2e64 2195      		neg r18
4891
 4906 2e66 3F4F      		sbci r19,lo8(-1)
4892
 4907 2e68 00C0      		rjmp .L370
4893
 4908               	.L516:
4894
 4909 2e6a 2D5F      		subi r18,lo8(-(3))
4895
 4910 2e6c 3F4F      		sbci r19,hi8(-(3))
4896
 4911 2e6e 00C0      		rjmp .L369
4897
 4912               	.L513:
4898
 4913 2e70 2D5F      		subi r18,lo8(-(3))
4899
 4914 2e72 3F4F      		sbci r19,hi8(-(3))
4900
 4915 2e74 3595      		asr r19
4901
 4916 2e76 2795      		ror r18
4902
 4917 2e78 3595      		asr r19
4903
 4918 2e7a 2795      		ror r18
4904
 4919 2e7c 37FF      		sbrs r19,7
4905
 4920 2e7e 00C0      		rjmp .L365
4906
 4921               	.L514:
4907
 4922 2e80 3095      		com r19
4908
 4923 2e82 2195      		neg r18
4909
 4924 2e84 3F4F      		sbci r19,lo8(-1)
4910
 4925 2e86 00C0      		rjmp .L365
4911
 4926               	.L534:
4912
 4927 2e88 60E0      		ldi r22,lo8(0)
4913
 4928 2e8a 70E0      		ldi r23,hi8(0)
4914
 4929 2e8c 00C0      		rjmp .L410
4915
 4930               	.L416:
4916
 4931 2e8e 84EF      		ldi r24,lo8(500)
4917
 4932 2e90 91E0      		ldi r25,hi8(500)
4918
 4933 2e92 9093 0000 		sts (BadCompassHeading)+1,r25
4919
 4934 2e96 8093 0000 		sts BadCompassHeading,r24
4920
 4935 2e9a 0C94 0000 		jmp .L404
4921
 4936               	.L298:
4922
 4937 2e9e 8081      		ld r24,Z
4923
 4938 2ea0 9181      		ldd r25,Z+1
4924
 4939 2ea2 8259      		subi r24,lo8(-(110))
4925
 4940 2ea4 9F4F      		sbci r25,hi8(-(110))
4926
 4941 2ea6 8A15      		cp r24,r10
4927
 4942 2ea8 9B05      		cpc r25,r11
4928
 4943 2eaa 04F0      		brlt .+4
4929
 4944 2eac 0C94 0000 		jmp .L299
4930
 4945 2eb0 A114      		cp r10,__zero_reg__
4931
 4946 2eb2 B104      		cpc r11,__zero_reg__
4932
 4947 2eb4 01F4      		brne .+4
4933
 4948 2eb6 0C94 0000 		jmp .L299
4934
 4949 2eba C501      		movw r24,r10
4935
 4950 2ebc 0197      		sbiw r24,1
4936
 4951 2ebe 9093 0000 		sts (Poti3)+1,r25
4937
 4952 2ec2 8093 0000 		sts Poti3,r24
4938
 4953 2ec6 5C01      		movw r10,r24
4939
 4954 2ec8 0C94 0000 		jmp .L299
4940
 4955               	.L296:
4941
 4956 2ecc 8081      		ld r24,Z
4942
 4957 2ece 9181      		ldd r25,Z+1
4943
 4958 2ed0 8259      		subi r24,lo8(-(110))
4944
 4959 2ed2 9F4F      		sbci r25,hi8(-(110))
4945
 4960 2ed4 8017      		cp r24,r16
4946
 4961 2ed6 9107      		cpc r25,r17
4947
 4962 2ed8 04F0      		brlt .+4
4948
 4963 2eda 0C94 0000 		jmp .L297
4949
 4964 2ede 0115      		cp r16,__zero_reg__
4950
 4965 2ee0 1105      		cpc r17,__zero_reg__
4951
 4966 2ee2 01F4      		brne .+4
4952
 4967 2ee4 0C94 0000 		jmp .L297
4953
 4968 2ee8 C801      		movw r24,r16
4954
 4969 2eea 0197      		sbiw r24,1
4955
 4970 2eec 9093 0000 		sts (Poti2)+1,r25
4956
 4971 2ef0 8093 0000 		sts Poti2,r24
4957
 4972 2ef4 8C01      		movw r16,r24
4958
 4973 2ef6 0C94 0000 		jmp .L297
4959
 4974               	.L294:
4960
 4975 2efa 8081      		ld r24,Z
4961
 4976 2efc 9181      		ldd r25,Z+1
4962
 4977 2efe 8259      		subi r24,lo8(-(110))
4963
 4978 2f00 9F4F      		sbci r25,hi8(-(110))
4964
 4979 2f02 8E15      		cp r24,r14
4965
 4980 2f04 9F05      		cpc r25,r15
4966
 4981 2f06 04F0      		brlt .+4
4967
 4982 2f08 0C94 0000 		jmp .L295
4968
 4983 2f0c E114      		cp r14,__zero_reg__
4969
 4984 2f0e F104      		cpc r15,__zero_reg__
4970
 4985 2f10 01F4      		brne .+4
4971
 4986 2f12 0C94 0000 		jmp .L295
4972
 4987 2f16 C701      		movw r24,r14
4973
 4988 2f18 0197      		sbiw r24,1
4974
 4989 2f1a 9093 0000 		sts (Poti1)+1,r25
4975
 4990 2f1e 8093 0000 		sts Poti1,r24
4976
 4991 2f22 7C01      		movw r14,r24
4977
 4992 2f24 0C94 0000 		jmp .L295
4978
 4993               	.L308:
4979
 4994 2f28 8091 0000 		lds r24,PPM_in+24
4980
 4995 2f2c 9091 0000 		lds r25,(PPM_in+24)+1
4981
 4996 2f30 8259      		subi r24,lo8(-(110))
4982
 4997 2f32 9F4F      		sbci r25,hi8(-(110))
4983
 4998 2f34 8217      		cp r24,r18
4984
 4999 2f36 9307      		cpc r25,r19
4985
 5000 2f38 04F0      		brlt .+4
4986
 5001 2f3a 0C94 0000 		jmp .L309
4987
 5002 2f3e 2115      		cp r18,__zero_reg__
4988
 5003 2f40 3105      		cpc r19,__zero_reg__
4989
 5004 2f42 01F4      		brne .+4
4990
 5005 2f44 0C94 0000 		jmp .L309
4991
 5006 2f48 C901      		movw r24,r18
4992
 5007 2f4a 0197      		sbiw r24,1
4993
 5008 2f4c 9093 0000 		sts (Poti8)+1,r25
4994
 5009 2f50 8093 0000 		sts Poti8,r24
4995
 5010 2f54 9C01      		movw r18,r24
4996
 5011 2f56 0C94 0000 		jmp .L309
4997
 5012               	.L306:
4998
 5013 2f5a 8091 0000 		lds r24,PPM_in+22
4999
 5014 2f5e 9091 0000 		lds r25,(PPM_in+22)+1
5000
 5015 2f62 8259      		subi r24,lo8(-(110))
5001
 5016 2f64 9F4F      		sbci r25,hi8(-(110))
5002
 5017 2f66 8417      		cp r24,r20
5003
 5018 2f68 9507      		cpc r25,r21
5004
 5019 2f6a 04F0      		brlt .+4
5005
 5020 2f6c 0C94 0000 		jmp .L307
5006
 5021 2f70 4115      		cp r20,__zero_reg__
5007
 5022 2f72 5105      		cpc r21,__zero_reg__
5008
 5023 2f74 01F4      		brne .+4
5009
 5024 2f76 0C94 0000 		jmp .L307
5010
 5025 2f7a CA01      		movw r24,r20
5011
 5026 2f7c 0197      		sbiw r24,1
5012
 5027 2f7e 9093 0000 		sts (Poti7)+1,r25
5013
 5028 2f82 8093 0000 		sts Poti7,r24
5014
 5029 2f86 AC01      		movw r20,r24
5015
 5030 2f88 0C94 0000 		jmp .L307
5016
 5031               	.L304:
5017
 5032 2f8c 8091 0000 		lds r24,PPM_in+20
5018
 5033 2f90 9091 0000 		lds r25,(PPM_in+20)+1
5019
 5034 2f94 8259      		subi r24,lo8(-(110))
5020
 5035 2f96 9F4F      		sbci r25,hi8(-(110))
5021
 5036 2f98 8617      		cp r24,r22
5022
 5037 2f9a 9707      		cpc r25,r23
5023
 5038 2f9c 04F0      		brlt .+4
5024
 5039 2f9e 0C94 0000 		jmp .L305
5025
 5040 2fa2 6115      		cp r22,__zero_reg__
5026
 5041 2fa4 7105      		cpc r23,__zero_reg__
5027
 5042 2fa6 01F4      		brne .+4
5028
 5043 2fa8 0C94 0000 		jmp .L305
5029
 5044 2fac CB01      		movw r24,r22
5030
 5045 2fae 0197      		sbiw r24,1
5031
 5046 2fb0 9093 0000 		sts (Poti6)+1,r25
5032
 5047 2fb4 8093 0000 		sts Poti6,r24
5033
 5048 2fb8 BC01      		movw r22,r24
5034
 5049 2fba 0C94 0000 		jmp .L305
5035
 5050               	.L302:
5036
 5051 2fbe 8091 0000 		lds r24,PPM_in+18
5037
 5052 2fc2 9091 0000 		lds r25,(PPM_in+18)+1
5038
 5053 2fc6 8259      		subi r24,lo8(-(110))
5039
 5054 2fc8 9F4F      		sbci r25,hi8(-(110))
5040
 5055 2fca 8E17      		cp r24,r30
5041
 5056 2fcc 9F07      		cpc r25,r31
5042
 5057 2fce 04F0      		brlt .+4
5043
 5058 2fd0 0C94 0000 		jmp .L303
5044
 5059 2fd4 3097      		sbiw r30,0
5045
 5060 2fd6 01F4      		brne .+4
5046
 5061 2fd8 0C94 0000 		jmp .L303
5047
 5062 2fdc CF01      		movw r24,r30
5048
 5063 2fde 0197      		sbiw r24,1
5049
 5064 2fe0 9093 0000 		sts (Poti5)+1,r25
5050
 5065 2fe4 8093 0000 		sts Poti5,r24
5051
 5066 2fe8 FC01      		movw r30,r24
5052
 5067 2fea 0C94 0000 		jmp .L303
5053
 5068               	.L300:
5054
 5069 2fee 8081      		ld r24,Z
5055
 5070 2ff0 9181      		ldd r25,Z+1
5056
 5071 2ff2 8259      		subi r24,lo8(-(110))
5057
 5072 2ff4 9F4F      		sbci r25,hi8(-(110))
5058
 5073 2ff6 8A17      		cp r24,r26
5059
 5074 2ff8 9B07      		cpc r25,r27
5060
 5075 2ffa 04F0      		brlt .+4
5061
 5076 2ffc 0C94 0000 		jmp .L301
5062
 5077 3000 1097      		sbiw r26,0
5063
 5078 3002 01F4      		brne .+4
5064
 5079 3004 0C94 0000 		jmp .L301
5065
 5080 3008 CD01      		movw r24,r26
5066
 5081 300a 0197      		sbiw r24,1
5067
 5082 300c 9093 0000 		sts (Poti4)+1,r25
5068
 5083 3010 8093 0000 		sts Poti4,r24
5069
 5084 3014 DC01      		movw r26,r24
5070
 5085 3016 0C94 0000 		jmp .L301
5071
 5086               	.L537:
5072
 5087 301a 4F96      		adiw r24,31
5073
 5088 301c 00C0      		rjmp .L415
5074
 5089               	.L533:
5075
 5090 301e B094      		com r11
5076
 5091 3020 A194      		neg r10
5077
 5092 3022 B108      		sbc r11,__zero_reg__
5078
 5093 3024 B394      		inc r11
5079
 5094 3026 00C0      		rjmp .L407
5080
 5095               	.L532:
5081
 5096 3028 1095      		com r17
5082
 5097 302a 0195      		neg r16
5083
 5098 302c 1F4F      		sbci r17,lo8(-1)
5084
 5099 302e 00C0      		rjmp .L406
5085
 5100               	.L535:
5086
 5101 3030 3095      		com r19
5087
 5102 3032 2195      		neg r18
5088
 5103 3034 3F4F      		sbci r19,lo8(-1)
5089
 5104 3036 00C0      		rjmp .L412
5090
 5105               	.L359:
5091
 5106 3038 1092 0000 		sts (StickYaw)+1,__zero_reg__
5092
 5107 303c 1092 0000 		sts StickYaw,__zero_reg__
5093
 5108 3040 00C0      		rjmp .L357
5094
 5109               	.L507:
5095
 5110 3042 1092 0000 		sts (Poti8)+1,__zero_reg__
5096
 5111 3046 1092 0000 		sts Poti8,__zero_reg__
5097
 5112 304a 0C94 0000 		jmp .L325
5098
 5113               	.L500:
5099
 5114 304e 1092 0000 		sts (Poti1)+1,__zero_reg__
5100
 5115 3052 1092 0000 		sts Poti1,__zero_reg__
5101
 5116 3056 0C94 0000 		jmp .L311
5102
 5117               	.L506:
5103
 5118 305a 1092 0000 		sts (Poti7)+1,__zero_reg__
5104
 5119 305e 1092 0000 		sts Poti7,__zero_reg__
5105
 5120 3062 0C94 0000 		jmp .L323
5106
 5121               	.L505:
5107
 5122 3066 1092 0000 		sts (Poti6)+1,__zero_reg__
5108
 5123 306a 1092 0000 		sts Poti6,__zero_reg__
5109
 5124 306e 0C94 0000 		jmp .L321
5110
 5125               	.L504:
5111
 5126 3072 1092 0000 		sts (Poti5)+1,__zero_reg__
5112
 5127 3076 1092 0000 		sts Poti5,__zero_reg__
5113
 5128 307a 0C94 0000 		jmp .L319
5114
 5129               	.L503:
5115
 5130 307e 1092 0000 		sts (Poti4)+1,__zero_reg__
5116
 5131 3082 1092 0000 		sts Poti4,__zero_reg__
5117
 5132 3086 0C94 0000 		jmp .L317
5118
 5133               	.L502:
5119
 5134 308a 1092 0000 		sts (Poti3)+1,__zero_reg__
5120
 5135 308e 1092 0000 		sts Poti3,__zero_reg__
5121
 5136 3092 0C94 0000 		jmp .L315
5122
 5137               	.L501:
5123
 5138 3096 1092 0000 		sts (Poti2)+1,__zero_reg__
5124
 5139 309a 1092 0000 		sts Poti2,__zero_reg__
5125
 5140 309e 0C94 0000 		jmp .L313
5126
 5141               	.L419:
5127
 5142 30a2 4427      		clr r20
5128
 5143 30a4 5527      		clr r21
5129
 5144 30a6 481B      		sub r20,r24
5130
 5145 30a8 590B      		sbc r21,r25
5131
 5146 30aa 6417      		cp r22,r20
5132
 5147 30ac 7507      		cpc r23,r21
5133
 5148 30ae 04F0      		brlt .+2
5134
 5149 30b0 00C0      		rjmp .L420
5135
 5150 30b2 BA01      		movw r22,r20
5136
 5151 30b4 00C0      		rjmp .L420
5137
 5152               	.L539:
5138
 5153 30b6 3095      		com r19
5139
 5154 30b8 2195      		neg r18
5140
 5155 30ba 3F4F      		sbci r19,lo8(-1)
5141
 5156 30bc 00C0      		rjmp .L366
5142
 5157               	.L518:
5143
 5158 30be 3095      		com r19
5144
 5159 30c0 2195      		neg r18
5145
 5160 30c2 3F4F      		sbci r19,lo8(-1)
5146
 5161 30c4 00C0      		rjmp .L371
5147
 5162               	.L354:
5148
 5163 30c6 1092 0000 		sts (delay_stopmotors.1984)+1,__zero_reg__
5149
 5164 30ca 1092 0000 		sts delay_stopmotors.1984,__zero_reg__
5150
 5165 30ce 0C94 0000 		jmp .L290
5151
 5166               	.L327:
5152
 5167 30d2 8081      		ld r24,Z
5153
 5168 30d4 9181      		ldd r25,Z+1
5154
 5169 30d6 855B      		subi r24,lo8(-75)
5155
 5170 30d8 9F4F      		sbci r25,hi8(-75)
5156
 5171 30da 04F4      		brge .L344
5157
 5172 30dc 8091 0000 		lds r24,delay_neutral.1982
5158
 5173 30e0 8F5F      		subi r24,lo8(-(1))
5159
 5174 30e2 8093 0000 		sts delay_neutral.1982,r24
5160
 5175 30e6 893C      		cpi r24,lo8(-55)
5161
 5176 30e8 00F4      		brsh .+4
5162
 5177 30ea 0C94 0000 		jmp .L326
5163
 5178 30ee 1092 0000 		sts delay_neutral.1982,__zero_reg__
5164
 5179 30f2 3BE0      		ldi r19,lo8(11)
5165
 5180 30f4 3D15      		cp r19,r13
5166
 5181 30f6 00F4      		brsh .+2
5167
 5182 30f8 00C0      		rjmp .L346
5168
 5183 30fa 2998      		cbi 37-0x20,1
5169
 5184               	.L347:
5170
 5185 30fc 1092 0000 		sts (ModelIsFlying)+1,__zero_reg__
5171
 5186 3100 1092 0000 		sts ModelIsFlying,__zero_reg__
5172
 5187 3104 0C94 0000 		jmp .L476
5173
 5188               	.L508:
5174
 5189 3108 0196      		adiw r24,1
5175
 5190 310a 9093 0000 		sts (delay_startmotors.1983)+1,r25
5176
 5191 310e 8093 0000 		sts delay_startmotors.1983,r24
5177
 5192 3112 00C0      		rjmp .L350
5178
 5193               	.L499:
5179
 5194 3114 81E0      		ldi r24,lo8(1)
5180
 5195 3116 90E0      		ldi r25,hi8(1)
5181
 5196 3118 9093 0000 		sts (UpdateCompassCourse.1986)+1,r25
5182
 5197 311c 8093 0000 		sts UpdateCompassCourse.1986,r24
5183
 5198 3120 1092 0000 		sts ReadingIntegralGyroYaw,__zero_reg__
5184
 5199 3124 1092 0000 		sts (ReadingIntegralGyroYaw)+1,__zero_reg__
5185
 5200 3128 1092 0000 		sts (ReadingIntegralGyroYaw)+2,__zero_reg__
5186
 5201 312c 1092 0000 		sts (ReadingIntegralGyroYaw)+3,__zero_reg__
5187
 5202 3130 1092 0000 		sts SetPointYaw.1980,__zero_reg__
5188
 5203 3134 1092 0000 		sts (SetPointYaw.1980)+1,__zero_reg__
5189
 5204 3138 1092 0000 		sts (SetPointYaw.1980)+2,__zero_reg__
5190
 5205 313c 1092 0000 		sts (SetPointYaw.1980)+3,__zero_reg__
5191
 5206 3140 0C94 0000 		jmp .L293
5192
 5207               	.L538:
5193
 5208 3144 E7E0      		ldi r30,lo8(7)
5194
 5209 3146 F0E0      		ldi r31,hi8(7)
5195
 5210 3148 AE0E      		add r10,r30
5196
 5211 314a BF1E      		adc r11,r31
5197
 5212 314c 00C0      		rjmp .L418
5198
 5213               	.L344:
5199
 5214 314e 1092 0000 		sts delay_neutral.1982,__zero_reg__
5200
 5215 3152 0C94 0000 		jmp .L326
5201
 5216               	.L352:
5202
 5217 3156 7901      		movw r14,r18
5203
 5218 3158 0027      		clr r16
5204
 5219 315a F7FC      		sbrc r15,7
5205
 5220 315c 0095      		com r16
5206
 5221 315e 102F      		mov r17,r16
5207
 5222 3160 CB01      		movw r24,r22
5208
 5223 3162 BA01      		movw r22,r20
5209
 5224 3164 A801      		movw r20,r16
5210
 5225 3166 9701      		movw r18,r14
5211
 5226 3168 0E94 0000 		call __divmodsi4
5212
 5227 316c 2093 0000 		sts savedVibrationOffsetNick,r18
5213
 5228 3170 3093 0000 		sts savedVibrationOffsetNick+1,r19
5214
 5229 3174 4093 0000 		sts savedVibrationOffsetNick+2,r20
5215
 5230 3178 5093 0000 		sts savedVibrationOffsetNick+3,r21
5216
 5231 317c 2093 0000 		sts vibrationOffsetNick,r18
5217
 5232 3180 3093 0000 		sts vibrationOffsetNick+1,r19
5218
 5233 3184 4093 0000 		sts vibrationOffsetNick+2,r20
5219
 5234 3188 5093 0000 		sts vibrationOffsetNick+3,r21
5220
 5235 318c C601      		movw r24,r12
5221
 5236 318e B501      		movw r22,r10
5222
 5237 3190 A801      		movw r20,r16
5223
 5238 3192 9701      		movw r18,r14
5224
 5239 3194 0E94 0000 		call __divmodsi4
5225
 5240 3198 2093 0000 		sts savedVibrationOffsetRoll,r18
5226
 5241 319c 3093 0000 		sts savedVibrationOffsetRoll+1,r19
5227
 5242 31a0 4093 0000 		sts savedVibrationOffsetRoll+2,r20
5228
 5243 31a4 5093 0000 		sts savedVibrationOffsetRoll+3,r21
5229
 5244 31a8 2093 0000 		sts vibrationOffsetRoll,r18
5230
 5245 31ac 3093 0000 		sts vibrationOffsetRoll+1,r19
5231
 5246 31b0 4093 0000 		sts vibrationOffsetRoll+2,r20
5232
 5247 31b4 5093 0000 		sts vibrationOffsetRoll+3,r21
5233
 5248 31b8 C401      		movw r24,r8
5234
 5249 31ba B301      		movw r22,r6
5235
 5250 31bc A801      		movw r20,r16
5236
 5251 31be 9701      		movw r18,r14
5237
 5252 31c0 0E94 0000 		call __divmodsi4
5238
 5253 31c4 2093 0000 		sts vibrationOffsetYaw,r18
5239
 5254 31c8 3093 0000 		sts (vibrationOffsetYaw)+1,r19
5240
 5255 31cc 4093 0000 		sts (vibrationOffsetYaw)+2,r20
5241
 5256 31d0 5093 0000 		sts (vibrationOffsetYaw)+3,r21
5242
 5257 31d4 0C94 0000 		jmp .L353
5243
 5258               	.L509:
5244
 5259 31d8 89EC      		ldi r24,lo8(201)
5245
 5260 31da 90E0      		ldi r25,hi8(201)
5246
 5261 31dc 9093 0000 		sts (delay_startmotors.1983)+1,r25
5247
 5262 31e0 8093 0000 		sts delay_startmotors.1983,r24
5248
 5263 31e4 81E0      		ldi r24,lo8(1)
5249
 5264 31e6 90E0      		ldi r25,hi8(1)
5250
 5265 31e8 9093 0000 		sts (ModelIsFlying)+1,r25
5251
 5266 31ec 8093 0000 		sts ModelIsFlying,r24
5252
 5267 31f0 1092 0000 		sts (vibrationCalCount.1977)+1,__zero_reg__
5253
 5268 31f4 1092 0000 		sts vibrationCalCount.1977,__zero_reg__
5254
 5269 31f8 1092 0000 		sts vibrationCalYaw.1976,__zero_reg__
5255
 5270 31fc 1092 0000 		sts (vibrationCalYaw.1976)+1,__zero_reg__
5256
 5271 3200 1092 0000 		sts (vibrationCalYaw.1976)+2,__zero_reg__
5257
 5272 3204 1092 0000 		sts (vibrationCalYaw.1976)+3,__zero_reg__
5258
 5273 3208 1092 0000 		sts vibrationCalRoll.1975,__zero_reg__
5259
 5274 320c 1092 0000 		sts (vibrationCalRoll.1975)+1,__zero_reg__
5260
 5275 3210 1092 0000 		sts (vibrationCalRoll.1975)+2,__zero_reg__
5261
 5276 3214 1092 0000 		sts (vibrationCalRoll.1975)+3,__zero_reg__
5262
 5277 3218 1092 0000 		sts vibrationCalNick.1974,__zero_reg__
5263
 5278 321c 1092 0000 		sts (vibrationCalNick.1974)+1,__zero_reg__
5264
 5279 3220 1092 0000 		sts (vibrationCalNick.1974)+2,__zero_reg__
5265
 5280 3224 1092 0000 		sts (vibrationCalNick.1974)+3,__zero_reg__
5266
 5281 3228 88EE      		ldi r24,lo8(1000)
5267
 5282 322a 93E0      		ldi r25,hi8(1000)
5268
 5283 322c A0E0      		ldi r26,hlo8(1000)
5269
 5284 322e B0E0      		ldi r27,hhi8(1000)
5270
 5285 3230 8093 0000 		sts savedVibrationOffsetRoll,r24
5271
 5286 3234 9093 0000 		sts (savedVibrationOffsetRoll)+1,r25
5272
 5287 3238 A093 0000 		sts (savedVibrationOffsetRoll)+2,r26
5273
 5288 323c B093 0000 		sts (savedVibrationOffsetRoll)+3,r27
5274
 5289 3240 8093 0000 		sts savedVibrationOffsetNick,r24
5275
 5290 3244 9093 0000 		sts (savedVibrationOffsetNick)+1,r25
5276
 5291 3248 A093 0000 		sts (savedVibrationOffsetNick)+2,r26
5277
 5292 324c B093 0000 		sts (savedVibrationOffsetNick)+3,r27
5278
 5293 3250 8091 0000 		lds r24,MKFlags
5279
 5294 3254 8960      		ori r24,lo8(9)
5280
 5295 3256 8093 0000 		sts MKFlags,r24
5281
 5296 325a 00C0      		rjmp .L350
5282
 5297               	.L329:
5283
 5298 325c 299A      		sbi 37-0x20,1
5284
 5299 325e 0C94 0000 		jmp .L330
5285
 5300               	.L336:
5286
 5301 3262 21E0      		ldi r18,lo8(1)
5287
 5302 3264 0C94 0000 		jmp .L337
5288
 5303               	.L331:
5289
 5304 3268 8091 0000 		lds r24,ParamSet+1
5290
 5305 326c A82F      		mov r26,r24
5291
 5306 326e B0E0      		ldi r27,lo8(0)
5292
 5307 3270 AA0F      		lsl r26
5293
 5308 3272 BB1F      		rol r27
5294
 5309 3274 FD01      		movw r30,r26
5295
 5310 3276 E050      		subi r30,lo8(-(PPM_in))
5296
 5311 3278 F040      		sbci r31,hi8(-(PPM_in))
5297
 5312 327a 0190      		ld __tmp_reg__,Z+
5298
 5313 327c F081      		ld r31,Z
5299
 5314 327e E02D      		mov r30,__tmp_reg__
5300
 5315 3280 F7FD      		sbrc r31,7
5301
 5316 3282 00C0      		rjmp .L543
5302
 5317               	.L334:
5303
 5318 3284 E734      		cpi r30,71
5304
 5319 3286 F105      		cpc r31,__zero_reg__
5305
 5320 3288 04F0      		brlt .+4
5306
 5321 328a 0C94 0000 		jmp .L332
5307
 5322 328e 8091 0000 		lds r24,ParamSet+8
5308
 5323 3292 8872      		andi r24,lo8(40)
5309
 5324 3294 01F0      		breq .L341
5310
 5325 3296 A050      		subi r26,lo8(-(PPM_in))
5311
 5326 3298 B040      		sbci r27,hi8(-(PPM_in))
5312
 5327 329a 8D91      		ld r24,X+
5313
 5328 329c 9C91      		ld r25,X
5314
 5329 329e 97FD      		sbrc r25,7
5315
 5330 32a0 00C0      		rjmp .L544
5316
 5331               	.L343:
5317
 5332 32a2 4E97      		sbiw r24,30
5318
 5333 32a4 04F4      		brge .L342
5319
 5334 32a6 4050      		subi r20,lo8(-(PPM_in))
5320
 5335 32a8 5040      		sbci r21,hi8(-(PPM_in))
5321
 5336 32aa FA01      		movw r30,r20
5322
 5337 32ac 8081      		ld r24,Z
5323
 5338 32ae 9181      		ldd r25,Z+1
5324
 5339 32b0 8A5B      		subi r24,lo8(-70)
5325
 5340 32b2 9F4F      		sbci r25,hi8(-70)
5326
 5341 32b4 04F4      		brge .L342
5327
 5342 32b6 81E0      		ldi r24,lo8(1)
5328
 5343 32b8 8093 0000 		sts CompassCalState,r24
5329
 5344 32bc 88EE      		ldi r24,lo8(1000)
5330
 5345 32be 93E0      		ldi r25,hi8(1000)
5331
 5346 32c0 9093 0000 		sts (BeepTime)+1,r25
5332
 5347 32c4 8093 0000 		sts BeepTime,r24
5333
 5348 32c8 8091 0000 		lds r24,ParamSet+2
5334
 5349 32cc A82F      		mov r26,r24
5335
 5350 32ce B0E0      		ldi r27,lo8(0)
5336
 5351 32d0 AA0F      		lsl r26
5337
 5352 32d2 BB1F      		rol r27
5338
 5353 32d4 0C94 0000 		jmp .L326
5339
 5354               	.L346:
5340
 5355 32d8 299A      		sbi 37-0x20,1
5341
 5356 32da 00C0      		rjmp .L347
5342
 5357               	.L342:
5343
 5358 32dc 0E94 0000 		call GetActiveParamSet
5344
 5359 32e0 0E94 0000 		call ParamSet_ReadFromEEProm
5345
 5360 32e4 81E0      		ldi r24,lo8(1)
5346
 5361 32e6 0C94 0000 		jmp .L477
5347
 5362               	.L341:
5348
 5363 32ea 0E94 0000 		call GetActiveParamSet
5349
 5364 32ee 0E94 0000 		call ParamSet_ReadFromEEProm
5350
 5365 32f2 0C94 0000 		jmp .L476
5351
 5366               	.L543:
5352
 5367 32f6 F095      		com r31
5353
 5368 32f8 E195      		neg r30
5354
 5369 32fa FF4F      		sbci r31,lo8(-1)
5355
 5370 32fc 00C0      		rjmp .L334
5356
 5371               	.L544:
5357
 5372 32fe 9095      		com r25
5358
 5373 3300 8195      		neg r24
5359
 5374 3302 9F4F      		sbci r25,lo8(-1)
5360
 5375 3304 00C0      		rjmp .L343
5361
 5377               	.global	IntegralGyroNick
5362
 5378               	.global	IntegralGyroNick
5363
 5379               		.section .bss
5364
 5382               	IntegralGyroNick:
5365
 5383 0000 0000 0000 		.skip 4,0
5366
 5384               	.global	IntegralGyroRoll
5367
 5385               	.global	IntegralGyroRoll
5368
 5388               	IntegralGyroRoll:
5369
 5389 0004 0000 0000 		.skip 4,0
5370
 5390               	.global	IntegralGyroYaw
5371
 5391               	.global	IntegralGyroYaw
5372
 5394               	IntegralGyroYaw:
5373
 5395 0008 0000 0000 		.skip 4,0
5374
 5396               	.global	ReadingIntegralGyroNick
5375
 5397               	.global	ReadingIntegralGyroNick
5376
 5400               	ReadingIntegralGyroNick:
5377
 5401 000c 0000 0000 		.skip 4,0
5378
 5402               	.global	ReadingIntegralGyroRoll
5379
 5403               	.global	ReadingIntegralGyroRoll
5380
 5406               	ReadingIntegralGyroRoll:
5381
 5407 0010 0000 0000 		.skip 4,0
5382
 5408               	.global	ReadingIntegralGyroYaw
5383
 5409               	.global	ReadingIntegralGyroYaw
5384
 5412               	ReadingIntegralGyroYaw:
5385
 5413 0014 0000 0000 		.skip 4,0
5386
 5414               	.global	CompassHeading
5387
 5415               		.data
5388
 5418               	CompassHeading:
5389
 5419 0000 FFFF      		.word	-1
5390
 5420               	.global	CompassCourse
5391
 5423               	CompassCourse:
5392
 5424 0002 FFFF      		.word	-1
5393
 5425               	.global	CompassOffCourse
5394
 5426               	.global	CompassOffCourse
5395
 5427               		.section .bss
5396
 5430               	CompassOffCourse:
5397
 5431 0018 0000      		.skip 2,0
5398
 5432               	.global	CompassCalState
5399
 5433               	.global	CompassCalState
5400
 5436               	CompassCalState:
5401
 5437 001a 00        		.skip 1,0
5402
 5438               	.global	FunnelCourse
5403
 5439               	.global	FunnelCourse
5404
 5442               	FunnelCourse:
5405
 5443 001b 00        		.skip 1,0
5406
 5444               	.global	BadCompassHeading
5407
 5445               		.data
5408
 5448               	BadCompassHeading:
5409
 5449 0004 F401      		.word	500
5410
 5450               	.global	NaviAccNick
5411
 5451               	.global	NaviAccNick
5412
 5452               		.section .bss
5413
 5455               	NaviAccNick:
5414
 5456 001c 0000      		.skip 2,0
5415
 5457               	.global	NaviAccRoll
5416
 5458               	.global	NaviAccRoll
5417
 5461               	NaviAccRoll:
5418
 5462 001e 0000      		.skip 2,0
5419
 5463               	.global	NaviCntAcc
5420
 5464               	.global	NaviCntAcc
5421
 5467               	NaviCntAcc:
5422
 5468 0020 0000      		.skip 2,0
5423
 5469               	.global	ModelIsFlying
5424
 5470               	.global	ModelIsFlying
5425
 5473               	ModelIsFlying:
5426
 5474 0022 0000      		.skip 2,0
5427
 5475               	.global	MKFlags
5428
 5476               	.global	MKFlags
5429
 5479               	MKFlags:
5430
 5480 0024 00        		.skip 1,0
5431
 5481               	.global	TurnOver180Nick
5432
 5482               		.data
5433
 5485               	TurnOver180Nick:
5434
 5486 0006 4C        		.byte	76
5435
 5487 0007 56        		.byte	86
5436
 5488 0008 03        		.byte	3
5437
 5489 0009 00        		.byte	0
5438
 5490               	.global	TurnOver180Roll
5439
 5493               	TurnOver180Roll:
5440
 5494 000a 4C        		.byte	76
5441
 5495 000b 56        		.byte	86
5442
 5496 000c 03        		.byte	3
5443
 5497 000d 00        		.byte	0
5444
 5498               	.global	Ki
5445
 5501               	Ki:
5446
 5502 000e 3801      		.word	312
5447
 5503               	.global	Poti1
5448
 5504               	.global	Poti1
5449
 5505               		.section .bss
5450
 5508               	Poti1:
5451
 5509 0025 0000      		.skip 2,0
5452
 5510               	.global	Poti2
5453
 5511               	.global	Poti2
5454
 5514               	Poti2:
5455
 5515 0027 0000      		.skip 2,0
5456
 5516               	.global	Poti3
5457
 5517               	.global	Poti3
5458
 5520               	Poti3:
5459
 5521 0029 0000      		.skip 2,0
5460
 5522               	.global	Poti4
5461
 5523               	.global	Poti4
5462
 5526               	Poti4:
5463
 5527 002b 0000      		.skip 2,0
5464
 5528               	.global	Poti5
5465
 5529               	.global	Poti5
5466
 5532               	Poti5:
5467
 5533 002d 0000      		.skip 2,0
5468
 5534               	.global	Poti6
5469
 5535               	.global	Poti6
5470
 5538               	Poti6:
5471
 5539 002f 0000      		.skip 2,0
5472
 5540               	.global	Poti7
5473
 5541               	.global	Poti7
5474
 5544               	Poti7:
5475
 5545 0031 0000      		.skip 2,0
5476
 5546               	.global	Poti8
5477
 5547               	.global	Poti8
5478
 5550               	Poti8:
5479
 5551 0033 0000      		.skip 2,0
5480
 5552               	.global	RequiredMotors
5481
 5553               	.global	RequiredMotors
5482
 5556               	RequiredMotors:
5483
 5557 0035 00        		.skip 1,0
5484
 5558               	.global	StickNick
5485
 5559               	.global	StickNick
5486
 5562               	StickNick:
5487
 5563 0036 0000      		.skip 2,0
5488
 5564               	.global	StickRoll
5489
 5565               	.global	StickRoll
5490
 5568               	StickRoll:
5491
 5569 0038 0000      		.skip 2,0
5492
 5570               	.global	StickYaw
5493
 5571               	.global	StickYaw
5494
 5574               	StickYaw:
5495
 5575 003a 0000      		.skip 2,0
5496
 5576               	.global	StickGas
5497
 5577               	.global	StickGas
5498
 5580               	StickGas:
5499
 5581 003c 0000      		.skip 2,0
5500
 5582               	.global	stickOffsetNick
5501
 5583               	.global	stickOffsetNick
5502
 5586               	stickOffsetNick:
5503
 5587 003e 0000      		.skip 2,0
5504
 5588               	.global	stickOffsetRoll
5505
 5589               	.global	stickOffsetRoll
5506
 5592               	stickOffsetRoll:
5507
 5593 0040 0000      		.skip 2,0
5508
 5594               	.global	vibrationOffsetNick
5509
 5595               	.global	vibrationOffsetNick
5510
 5598               	vibrationOffsetNick:
5511
 5599 0042 0000 0000 		.skip 4,0
5512
 5600               	.global	vibrationOffsetRoll
5513
 5601               	.global	vibrationOffsetRoll
5514
 5604               	vibrationOffsetRoll:
5515
 5605 0046 0000 0000 		.skip 4,0
5516
 5606               	.global	vibrationOffsetYaw
5517
 5607               	.global	vibrationOffsetYaw
5518
 5610               	vibrationOffsetYaw:
5519
 5611 004a 0000 0000 		.skip 4,0
5520
 5612               	.global	savedVibrationOffsetNick
5521
 5613               	.global	savedVibrationOffsetNick
5522
 5616               	savedVibrationOffsetNick:
5523
 5617 004e 0000 0000 		.skip 4,0
5524
 5618               	.global	savedVibrationOffsetRoll
5525
 5619               	.global	savedVibrationOffsetRoll
5526
 5622               	savedVibrationOffsetRoll:
5527
 5623 0052 0000 0000 		.skip 4,0
5528
 5624               	.global	GPSStickNick
5529
 5625               	.global	GPSStickNick
5530
 5628               	GPSStickNick:
5531
 5629 0056 0000      		.skip 2,0
5532
 5630               	.global	GPSStickRoll
5533
 5631               	.global	GPSStickRoll
5534
 5634               	GPSStickRoll:
5535
 5635 0058 0000      		.skip 2,0
5536
 5636               	.global	MaxStickNick
5537
 5637               	.global	MaxStickNick
5538
 5640               	MaxStickNick:
5539
 5641 005a 0000      		.skip 2,0
5540
 5642               	.global	MaxStickRoll
5541
 5643               	.global	MaxStickRoll
5542
 5646               	MaxStickRoll:
5543
 5647 005c 0000      		.skip 2,0
5544
 5648               	.global	ExternStickNick
5545
 5649               	.global	ExternStickNick
5546
 5652               	ExternStickNick:
5547
 5653 005e 0000      		.skip 2,0
5548
 5654               	.global	ExternStickRoll
5549
 5655               	.global	ExternStickRoll
5550
 5658               	ExternStickRoll:
5551
 5659 0060 0000      		.skip 2,0
5552
 5660               	.global	ExternStickYaw
5553
 5661               	.global	ExternStickYaw
5554
 5664               	ExternStickYaw:
5555
 5665 0062 0000      		.skip 2,0
5556
 5666               	.global	ExternHeightValue
5557
 5667               		.data
5558
 5670               	ExternHeightValue:
5559
 5671 0010 ECFF      		.word	-20
5560
 5672               	.global	ReadingHeight
5561
 5673               	.global	ReadingHeight
5562
 5674               		.section .bss
5563
 5677               	ReadingHeight:
5564
 5678 0064 0000      		.skip 2,0
5565
 5679               	.global	SetPointHeight
5566
 5680               	.global	SetPointHeight
5567
 5683               	SetPointHeight:
5568
 5684 0066 0000      		.skip 2,0
5569
 5685               	.global	AttitudeCorrectionRoll
5570
 5686               	.global	AttitudeCorrectionRoll
5571
 5689               	AttitudeCorrectionRoll:
5572
 5690 0068 0000      		.skip 2,0
5573
 5691               	.global	AttitudeCorrectionNick
5574
 5692               	.global	AttitudeCorrectionNick
5575
 5695               	AttitudeCorrectionNick:
5576
 5696 006a 0000      		.skip 2,0
5577
 5697               	.global	LoopingNick
5578
 5698               	.global	LoopingNick
5579
 5701               	LoopingNick:
5580
 5702 006c 00        		.skip 1,0
5581
 5703               	.global	LoopingRoll
5582
 5704               	.global	LoopingRoll
5583
 5707               	LoopingRoll:
5584
 5708 006d 00        		.skip 1,0
5585
 5709               	.global	LoopingLeft
5586
 5710               	.global	LoopingLeft
5587
 5713               	LoopingLeft:
5588
 5714 006e 00        		.skip 1,0
5589
 5715               	.global	LoopingRight
5590
 5716               	.global	LoopingRight
5591
 5719               	LoopingRight:
5592
 5720 006f 00        		.skip 1,0
5593
 5721               	.global	LoopingDown
5594
 5722               	.global	LoopingDown
5595
 5725               	LoopingDown:
5596
 5726 0070 00        		.skip 1,0
5597
 5727               	.global	LoopingTop
5598
 5728               	.global	LoopingTop
5599
 5731               	LoopingTop:
5600
 5732 0071 00        		.skip 1,0
5601
 5733               	.global	FCParam
5602
 5734               		.data
5603
 5737               	FCParam:
5604
 5738 0012 30        		.byte	48
5605
 5739 0013 FB        		.byte	-5
5606
 5740 0014 10        		.byte	16
5607
 5741 0015 3A        		.byte	58
5608
 5742 0016 40        		.byte	64
5609
 5743 0017 08        		.byte	8
5610
 5744 0018 96        		.byte	-106
5611
 5745 0019 96        		.byte	-106
5612
 5746 001a 02        		.byte	2
5613
 5747 001b 0A        		.byte	10
5614
 5748 001c 00        		.byte	0
5615
 5749 001d 00        		.byte	0
5616
 5750 001e 00        		.byte	0
5617
 5751 001f 00        		.byte	0
5618
 5752 0020 00        		.byte	0
5619
 5753 0021 00        		.byte	0
5620
 5754 0022 00        		.byte	0
5621
 5755 0023 00        		.byte	0
5622
 5756 0024 64        		.byte	100
5623
 5757 0025 46        		.byte	70
5624
 5758 0026 5A        		.byte	90
5625
 5759 0027 41        		.byte	65
5626
 5760 0028 40        		.byte	64
5627
 5761 0029 64        		.byte	100
5628
 5762 002a 00        		.byte	0
5629
 5763 002b 00        		.byte	0
5630
 5764 002c 00        		.byte	0
5631
 5765 002d 0000 00   		.skip 3,0
5632
 5766               		.lcomm stick_roll.1991,2
5633
 5767               		.lcomm stick_nick.1990,2
5634
 5768               		.lcomm MotorValue.1987,24
5635
 5769               		.lcomm UpdateCompassCourse.1986,2
5636
 5770               		.lcomm TimerDebugOut.1985,1
5637
 5771               		.lcomm delay_stopmotors.1984,2
5638
 5772               		.lcomm delay_startmotors.1983,2
5639
 5773               		.lcomm delay_neutral.1982,1
5640
 5774               		.lcomm RcLostTimer.1981,2
5641
 5775               		.lcomm SetPointYaw.1980,4
5642
 5776               		.lcomm vibrationCalCount.1977,2
5643
 5777               		.lcomm vibrationCalYaw.1976,4
5644
 5778               		.lcomm vibrationCalRoll.1975,4
5645
 5779               		.lcomm vibrationCalNick.1974,4
5646
 5780               		.lcomm IPartRoll.1973,4
5647
 5781               		.lcomm IPartNick.1972,4
5648
 5784               	stick.1951:
5649
 5785 0030 01        		.byte	1
5650
 5786               		.comm GyroNick,2,1
5651
 5787               		.comm GyroRoll,2,1
5652
 5788               		.comm GyroYaw,2,1
5653
 5789               		.comm YawGyroHeading,4,1
5654
 5790               		.comm GyroPFactor,1,1
5655
 5791               		.comm GyroIFactor,1,1
5656
 5792               		.comm GyroYawPFactor,1,1
5657
 5793               		.comm GyroYawIFactor,1,1
5658
 5794               		.comm NickNoisePeak,2,1
5659
 5795               		.comm RollNoisePeak,2,1
5660
 5796               		.comm debugNickNoisePeak,2,1
5661
 5797               		.comm debugRollNoisePeak,2,1
5662
DEFINED SYMBOLS
5663
                            *ABS*:00000000 fc.c
5664
     /tmp/ccDP7nnW.s:2      *ABS*:0000003f __SREG__
5665
     /tmp/ccDP7nnW.s:3      *ABS*:0000003e __SP_H__
5666
     /tmp/ccDP7nnW.s:4      *ABS*:0000003d __SP_L__
5667
     /tmp/ccDP7nnW.s:5      *ABS*:00000000 __tmp_reg__
5668
     /tmp/ccDP7nnW.s:6      *ABS*:00000001 __zero_reg__
5669
     /tmp/ccDP7nnW.s:12     .text:00000000 MotorSmoothing
5670
     /tmp/ccDP7nnW.s:36     .text:00000020 Mean
5671
     /tmp/ccDP7nnW.s:5598   .bss:00000042 vibrationOffsetNick
5672
                            *COM*:00000002 GyroNick
5673
     /tmp/ccDP7nnW.s:5604   .bss:00000046 vibrationOffsetRoll
5674
                            *COM*:00000002 GyroRoll
5675
                            *COM*:00000002 NickNoisePeak
5676
                            *COM*:00000002 RollNoisePeak
5677
     /tmp/ccDP7nnW.s:5610   .bss:0000004a vibrationOffsetYaw
5678
                            *COM*:00000002 GyroYaw
5679
                            *COM*:00000004 YawGyroHeading
5680
     /tmp/ccDP7nnW.s:5412   .bss:00000014 ReadingIntegralGyroYaw
5681
     /tmp/ccDP7nnW.s:5400   .bss:0000000c ReadingIntegralGyroNick
5682
     /tmp/ccDP7nnW.s:5485   .data:00000006 TurnOver180Nick
5683
     /tmp/ccDP7nnW.s:5406   .bss:00000010 ReadingIntegralGyroRoll
5684
     /tmp/ccDP7nnW.s:5493   .data:0000000a TurnOver180Roll
5685
     /tmp/ccDP7nnW.s:5382   .bss:00000000 IntegralGyroNick
5686
     /tmp/ccDP7nnW.s:5388   .bss:00000004 IntegralGyroRoll
5687
     /tmp/ccDP7nnW.s:5394   .bss:00000008 IntegralGyroYaw
5688
     /tmp/ccDP7nnW.s:423    .text:00000414 ParameterMapping
5689
     /tmp/ccDP7nnW.s:5737   .data:00000012 FCParam
5690
     /tmp/ccDP7nnW.s:5526   .bss:0000002b Poti4
5691
     /tmp/ccDP7nnW.s:5501   .data:0000000e Ki
5692
     /tmp/ccDP7nnW.s:5508   .bss:00000025 Poti1
5693
     /tmp/ccDP7nnW.s:5514   .bss:00000027 Poti2
5694
     /tmp/ccDP7nnW.s:5520   .bss:00000029 Poti3
5695
     /tmp/ccDP7nnW.s:1347   .text:00000c54 SendMotorData
5696
     /tmp/ccDP7nnW.s:5479   .bss:00000024 MKFlags
5697
     /tmp/ccDP7nnW.s:1408   .text:00000cd6 SetNeutral
5698
     /tmp/ccDP7nnW.s:5418   .data:00000000 CompassHeading
5699
     /tmp/ccDP7nnW.s:5423   .data:00000002 CompassCourse
5700
     /tmp/ccDP7nnW.s:5628   .bss:00000056 GPSStickNick
5701
     /tmp/ccDP7nnW.s:5634   .bss:00000058 GPSStickRoll
5702
     /tmp/ccDP7nnW.s:5586   .bss:0000003e stickOffsetNick
5703
     /tmp/ccDP7nnW.s:5562   .bss:00000036 StickNick
5704
     /tmp/ccDP7nnW.s:5592   .bss:00000040 stickOffsetRoll
5705
     /tmp/ccDP7nnW.s:5568   .bss:00000038 StickRoll
5706
     /tmp/ccDP7nnW.s:1560   .text:00000e96 Beep
5707
     /tmp/ccDP7nnW.s:1599   .text:00000eda SetCompassCalState
5708
     /tmp/ccDP7nnW.s:5784   .data:00000030 stick.1951
5709
     /tmp/ccDP7nnW.s:5436   .bss:0000001a CompassCalState
5710
     /tmp/ccDP7nnW.s:1646   .text:00000f38 MotorControl
5711
     /tmp/ccDP7nnW.s:5580   .bss:0000003c StickGas
5712
     /tmp/ccDP7nnW.s:5773   .bss:00000096 RcLostTimer.1981
5713
     /tmp/ccDP7nnW.s:5473   .bss:00000022 ModelIsFlying
5714
     /tmp/ccDP7nnW.s:5707   .bss:0000006d LoopingRoll
5715
     /tmp/ccDP7nnW.s:5701   .bss:0000006c LoopingNick
5716
     /tmp/ccDP7nnW.s:5574   .bss:0000003a StickYaw
5717
                            *COM*:00000001 GyroPFactor
5718
                            *COM*:00000001 GyroIFactor
5719
                            *COM*:00000001 GyroYawPFactor
5720
                            *COM*:00000001 GyroYawIFactor
5721
     /tmp/ccDP7nnW.s:5640   .bss:0000005a MaxStickNick
5722
     /tmp/ccDP7nnW.s:5646   .bss:0000005c MaxStickRoll
5723
     /tmp/ccDP7nnW.s:5616   .bss:0000004e savedVibrationOffsetNick
5724
     /tmp/ccDP7nnW.s:5622   .bss:00000052 savedVibrationOffsetRoll
5725
                            *COM*:00000002 debugNickNoisePeak
5726
                            *COM*:00000002 debugRollNoisePeak
5727
     /tmp/ccDP7nnW.s:5448   .data:00000004 BadCompassHeading
5728
     /tmp/ccDP7nnW.s:5774   .bss:00000098 SetPointYaw.1980
5729
     /tmp/ccDP7nnW.s:5769   .bss:00000090 TimerDebugOut.1985
5730
     /tmp/ccDP7nnW.s:5442   .bss:0000001b FunnelCourse
5731
     /tmp/ccDP7nnW.s:5780   .bss:000000ae IPartNick.1972
5732
     /tmp/ccDP7nnW.s:5779   .bss:000000aa IPartRoll.1973
5733
     /tmp/ccDP7nnW.s:5767   .bss:00000076 MotorValue.1987
5734
     /tmp/ccDP7nnW.s:5532   .bss:0000002d Poti5
5735
     /tmp/ccDP7nnW.s:5538   .bss:0000002f Poti6
5736
     /tmp/ccDP7nnW.s:5544   .bss:00000031 Poti7
5737
     /tmp/ccDP7nnW.s:5550   .bss:00000033 Poti8
5738
     /tmp/ccDP7nnW.s:5772   .bss:00000095 delay_neutral.1982
5739
     /tmp/ccDP7nnW.s:5771   .bss:00000093 delay_startmotors.1983
5740
     /tmp/ccDP7nnW.s:5778   .bss:000000a6 vibrationCalNick.1974
5741
     /tmp/ccDP7nnW.s:5777   .bss:000000a2 vibrationCalRoll.1975
5742
     /tmp/ccDP7nnW.s:5776   .bss:0000009e vibrationCalYaw.1976
5743
     /tmp/ccDP7nnW.s:5775   .bss:0000009c vibrationCalCount.1977
5744
     /tmp/ccDP7nnW.s:5766   .bss:00000074 stick_nick.1990
5745
                             .bss:00000072 stick_roll.1991
5746
     /tmp/ccDP7nnW.s:5670   .data:00000010 ExternHeightValue
5747
     /tmp/ccDP7nnW.s:5713   .bss:0000006e LoopingLeft
5748
     /tmp/ccDP7nnW.s:5719   .bss:0000006f LoopingRight
5749
     /tmp/ccDP7nnW.s:5731   .bss:00000071 LoopingTop
5750
     /tmp/ccDP7nnW.s:5725   .bss:00000070 LoopingDown
5751
     /tmp/ccDP7nnW.s:5677   .bss:00000064 ReadingHeight
5752
     /tmp/ccDP7nnW.s:5768   .bss:0000008e UpdateCompassCourse.1986
5753
     /tmp/ccDP7nnW.s:5770   .bss:00000091 delay_stopmotors.1984
5754
     /tmp/ccDP7nnW.s:5430   .bss:00000018 CompassOffCourse
5755
     /tmp/ccDP7nnW.s:5455   .bss:0000001c NaviAccNick
5756
     /tmp/ccDP7nnW.s:5461   .bss:0000001e NaviAccRoll
5757
     /tmp/ccDP7nnW.s:5467   .bss:00000020 NaviCntAcc
5758
     /tmp/ccDP7nnW.s:5556   .bss:00000035 RequiredMotors
5759
     /tmp/ccDP7nnW.s:5652   .bss:0000005e ExternStickNick
5760
     /tmp/ccDP7nnW.s:5658   .bss:00000060 ExternStickRoll
5761
     /tmp/ccDP7nnW.s:5664   .bss:00000062 ExternStickYaw
5762
     /tmp/ccDP7nnW.s:5683   .bss:00000066 SetPointHeight
5763
     /tmp/ccDP7nnW.s:5689   .bss:00000068 AttitudeCorrectionRoll
5764
     /tmp/ccDP7nnW.s:5695   .bss:0000006a AttitudeCorrectionNick
5765
 
5766
UNDEFINED SYMBOLS
5767
__do_copy_data
5768
__do_clear_bss
5769
hiResPitchGyro
5770
__divmodsi4
5771
filteredHiResPitchGyro
5772
hiResRollGyro
5773
filteredHiResRollGyro
5774
rawYawGyroSum
5775
ADReady
5776
RC_Quality
5777
ParamSet
5778
__divmodhi4
5779
MotorTest_Active
5780
Motor
5781
MotorTest
5782
DebugOut
5783
I2C_Start
5784
Servo_Off
5785
analog_calibrate
5786
BeepTime
5787
PPM_in
5788
Servo_On
5789
Delay_ms
5790
BoardRelease
5791
PcAccess
5792
BeepModulation
5793
PPM_diff
5794
NewPpmData
5795
ADCycleCount
5796
__mulsi3
5797
MissingMotor
5798
Mixer
5799
SetActiveParamSet
5800
GetActiveParamSet
5801
ParamSet_ReadFromEEProm
5802
ExternControl
5803
UBat