Subversion Repositories FlightCtrl

Rev

Rev 1755 | Blame | Compare with Previous | Last modification | View Log | RSS feed

   1                            .file   "timer0.c"
   2                    __SREG__ = 0x3f
   3                    __SP_H__ = 0x3e
   4                    __SP_L__ = 0x3d
   5                    __CCP__  = 0x34
   6                    __tmp_reg__ = 0
   7                    __zero_reg__ = 1
   8                            .text
   9                    .global __vector_18
  11                    __vector_18:
  12 0000 1F92                  push __zero_reg__
  13 0002 0F92                  push r0
  14 0004 0FB6                  in r0,__SREG__
  15 0006 0F92                  push r0
  16 0008 1124                  clr __zero_reg__
  17 000a 2F93                  push r18
  18 000c 3F93                  push r19
  19 000e 5F93                  push r21
  20 0010 6F93                  push r22
  21 0012 7F93                  push r23
  22 0014 8F93                  push r24
  23 0016 9F93                  push r25
  24 0018 AF93                  push r26
  25 001a BF93                  push r27
  26                    /* prologue: Signal */
  27                    /* frame size = 0 */
  28 001c 8091 0000             lds r24,SendSPI
  29 0020 8823                  tst r24
  30 0022 01F0                  breq .L2
  31 0024 8091 0000             lds r24,SendSPI
  32 0028 8150                  subi r24,lo8(-(-1))
  33 002a 8093 0000             sts SendSPI,r24
  34                    .L2:
  35 002e 8091 0000             lds r24,SpektrumTimer
  36 0032 8823                  tst r24
  37 0034 01F0                  breq .L3
  38 0036 8150                  subi r24,lo8(-(-1))
  39 0038 8093 0000             sts SpektrumTimer,r24
  40                    .L3:
  41 003c 8091 0000             lds r24,cnt.2239
  42 0040 8150                  subi r24,lo8(-(-1))
  43 0042 8093 0000             sts cnt.2239,r24
  44 0046 8F5F                  subi r24,lo8(-(1))
  45 0048 01F0                  breq .+2
  46 004a 00C0                  rjmp .L4
  47 004c 89E0                  ldi r24,lo8(9)
  48 004e 8093 0000             sts cnt.2239,r24
  49 0052 8091 0000             lds r24,CountMilliseconds
  50 0056 9091 0000             lds r25,(CountMilliseconds)+1
  51 005a 0196                  adiw r24,1
  52 005c 9093 0000             sts (CountMilliseconds)+1,r25
  53 0060 8093 0000             sts CountMilliseconds,r24
  54 0064 8091 0000             lds r24,cnt_1ms.2238
  55 0068 8F5F                  subi r24,lo8(-(1))
  56 006a 8170                  andi r24,lo8(1)
  57 006c 8093 0000             sts cnt_1ms.2238,r24
  58 0070 8823                  tst r24
  59 0072 01F4                  brne .L5
  60 0074 81E0                  ldi r24,lo8(1)
  61 0076 8093 0000             sts UpdateMotor,r24
  62                    .L5:
  63 007a 3499                  sbic 38-32,4
  64 007c 00C0                  rjmp .L6
  65 007e 81E0                  ldi r24,lo8(1)
  66 0080 8093 0000             sts compass_active.2240,r24
  67                    .L6:
  68 0084 8091 0000             lds r24,beeptime
  69 0088 9091 0000             lds r25,(beeptime)+1
  70 008c 892B                  or r24,r25
  71 008e 01F0                  breq .L7
  72 0090 8091 0000             lds r24,beeptime
  73 0094 9091 0000             lds r25,(beeptime)+1
  74 0098 0B97                  sbiw r24,11
  75 009a 00F0                  brlo .L8
  76 009c 8091 0000             lds r24,beeptime
  77 00a0 9091 0000             lds r25,(beeptime)+1
  78 00a4 0A97                  sbiw r24,10
  79 00a6 9093 0000             sts (beeptime)+1,r25
  80 00aa 8093 0000             sts beeptime,r24
  81 00ae 00C0                  rjmp .L9
  82                    .L8:
  83 00b0 1092 0000             sts (beeptime)+1,__zero_reg__
  84 00b4 1092 0000             sts beeptime,__zero_reg__
  85                    .L9:
  86 00b8 8091 0000             lds r24,beeptime
  87 00bc 9091 0000             lds r25,(beeptime)+1
  88 00c0 2091 0000             lds r18,BeepMuster
  89 00c4 3091 0000             lds r19,(BeepMuster)+1
  90 00c8 8223                  and r24,r18
  91 00ca 9323                  and r25,r19
  92 00cc 892B                  or r24,r25
  93 00ce 01F0                  breq .+2
  94 00d0 00C0                  rjmp .L10
  95 00d2 00C0                  rjmp .L11
  96                    .L7:
  97 00d4 8FEF                  ldi r24,lo8(-1)
  98 00d6 9FEF                  ldi r25,hi8(-1)
  99 00d8 9093 0000             sts (BeepMuster)+1,r25
 100 00dc 8093 0000             sts BeepMuster,r24
 101                    .L11:
 102 00e0 8091 0000             lds r24,PlatinenVersion
 103 00e4 8A30                  cpi r24,lo8(10)
 104 00e6 01F4                  brne .L22
 105 00e8 00C0                  rjmp .L24
 106                    .L25:
 107 00ea 5A9A                  sbi 43-32,2
 108 00ec 00C0                  rjmp .L4
 109                    .L23:
 110 00ee 479A                  sbi 40-32,7
 111 00f0 00C0                  rjmp .L4
 112                    .L24:
 113 00f2 5A98                  cbi 43-32,2
 114 00f4 00C0                  rjmp .L4
 115                    .L22:
 116 00f6 4798                  cbi 40-32,7
 117                    .L4:
 118 00f8 8091 0000             lds r24,compass_active.2240
 119 00fc 8823                  tst r24
 120 00fe 01F4                  brne .+2
 121 0100 00C0                  rjmp .L21
 122 0102 8091 0000             lds r24,NaviDataOkay
 123 0106 8823                  tst r24
 124 0108 01F0                  breq .+2
 125 010a 00C0                  rjmp .L21
 126 010c 8091 0000             lds r24,EE_Parameter+13
 127 0110 83FF                  sbrs r24,3
 128 0112 00C0                  rjmp .L21
 129 0114 349B                  sbis 38-32,4
 130 0116 00C0                  rjmp .L15
 131 0118 8091 0000             lds r24,cntKompass
 132 011c 9091 0000             lds r25,(cntKompass)+1
 133 0120 0196                  adiw r24,1
 134 0122 9093 0000             sts (cntKompass)+1,r25
 135 0126 8093 0000             sts cntKompass,r24
 136 012a 8091 0000             lds r24,cntKompass
 137 012e 9091 0000             lds r25,(cntKompass)+1
 138 0132 895E                  subi r24,lo8(1001)
 139 0134 9340                  sbci r25,hi8(1001)
 140 0136 00F4                  brsh .+2
 141 0138 00C0                  rjmp .L21
 142 013a 1092 0000             sts compass_active.2240,__zero_reg__
 143 013e 00C0                  rjmp .L21
 144                    .L15:
 145 0140 8091 0000             lds r24,cntKompass
 146 0144 9091 0000             lds r25,(cntKompass)+1
 147 0148 892B                  or r24,r25
 148 014a 01F4                  brne .+2
 149 014c 00C0                  rjmp .L16
 150 014e 8091 0000             lds r24,cntKompass
 151 0152 9091 0000             lds r25,(cntKompass)+1
 152 0156 8A56                  subi r24,lo8(362)
 153 0158 9140                  sbci r25,hi8(362)
 154 015a 00F4                  brsh .L16
 155 015c 2091 0000             lds r18,cntKompass
 156 0160 3091 0000             lds r19,(cntKompass)+1
 157 0164 8091 0000             lds r24,cntKompass
 158 0168 9091 0000             lds r25,(cntKompass)+1
 159 016c 69E2                  ldi r22,lo8(41)
 160 016e 70E0                  ldi r23,hi8(41)
 161 0170 0E94 0000             call __udivmodhi4
 162 0174 260F                  add r18,r22
 163 0176 371F                  adc r19,r23
 164 0178 3093 0000             sts (cntKompass)+1,r19
 165 017c 2093 0000             sts cntKompass,r18
 166 0180 8091 0000             lds r24,cntKompass
 167 0184 9091 0000             lds r25,(cntKompass)+1
 168 0188 0B97                  sbiw r24,11
 169 018a 00F0                  brlo .L17
 170 018c 8091 0000             lds r24,cntKompass
 171 0190 9091 0000             lds r25,(cntKompass)+1
 172 0194 0A97                  sbiw r24,10
 173 0196 9093 0000             sts (KompassValue)+1,r25
 174 019a 8093 0000             sts KompassValue,r24
 175 019e 00C0                  rjmp .L18
 176                    .L17:
 177 01a0 1092 0000             sts (KompassValue)+1,__zero_reg__
 178 01a4 1092 0000             sts KompassValue,__zero_reg__
 179                    .L18:
 180 01a8 8091 0000             lds r24,KompassValue
 181 01ac 9091 0000             lds r25,(KompassValue)+1
 182 01b0 845E                  subi r24,lo8(-(540))
 183 01b2 9D4F                  sbci r25,hi8(-(540))
 184 01b4 2091 0000             lds r18,KompassStartwert
 185 01b8 3091 0000             lds r19,(KompassStartwert)+1
 186 01bc 821B                  sub r24,r18
 187 01be 930B                  sbc r25,r19
 188 01c0 68E6                  ldi r22,lo8(360)
 189 01c2 71E0                  ldi r23,hi8(360)
 190 01c4 0E94 0000             call __divmodhi4
 191 01c8 845B                  subi r24,lo8(-(-180))
 192 01ca 9040                  sbci r25,hi8(-(-180))
 193 01cc 9093 0000             sts (KompassRichtung)+1,r25
 194 01d0 8093 0000             sts KompassRichtung,r24
 195                    .L16:
 196 01d4 1092 0000             sts (cntKompass)+1,__zero_reg__
 197 01d8 1092 0000             sts cntKompass,__zero_reg__
 198 01dc 00C0                  rjmp .L21
 199                    .L10:
 200 01de 8091 0000             lds r24,PlatinenVersion
 201 01e2 8A30                  cpi r24,lo8(10)
 202 01e4 01F0                  breq .+2
 203 01e6 00C0                  rjmp .L23
 204 01e8 00C0                  rjmp .L25
 205                    .L21:
 206                    /* epilogue start */
 207 01ea BF91                  pop r27
 208 01ec AF91                  pop r26
 209 01ee 9F91                  pop r25
 210 01f0 8F91                  pop r24
 211 01f2 7F91                  pop r23
 212 01f4 6F91                  pop r22
 213 01f6 5F91                  pop r21
 214 01f8 3F91                  pop r19
 215 01fa 2F91                  pop r18
 216 01fc 0F90                  pop r0
 217 01fe 0FBE                  out __SREG__,r0
 218 0200 0F90                  pop r0
 219 0202 1F90                  pop __zero_reg__
 220 0204 1895                  reti
 222                    .global SetDelay
 224                    SetDelay:
 225                    /* prologue: function */
 226                    /* frame size = 0 */
 227 0206 2091 0000             lds r18,CountMilliseconds
 228 020a 3091 0000             lds r19,(CountMilliseconds)+1
 229 020e 2F5F                  subi r18,lo8(-(1))
 230 0210 3F4F                  sbci r19,hi8(-(1))
 231 0212 280F                  add r18,r24
 232 0214 391F                  adc r19,r25
 233 0216 C901                  movw r24,r18
 234                    /* epilogue start */
 235 0218 0895                  ret
 237                    .global CheckDelay
 239                    CheckDelay:
 240                    /* prologue: function */
 241                    /* frame size = 0 */
 242 021a 2091 0000             lds r18,CountMilliseconds
 243 021e 3091 0000             lds r19,(CountMilliseconds)+1
 244 0222 821B                  sub r24,r18
 245 0224 930B                  sbc r25,r19
 246 0226 8070                  andi r24,lo8(-32768)
 247 0228 9078                  andi r25,hi8(-32768)
 248 022a 892F                  mov r24,r25
 249 022c 8695                  lsr r24
 250                    /* epilogue start */
 251 022e 0895                  ret
 253                    .global Delay_ms
 255                    Delay_ms:
 256                    /* prologue: function */
 257                    /* frame size = 0 */
 258 0230 2091 0000             lds r18,CountMilliseconds
 259 0234 3091 0000             lds r19,(CountMilliseconds)+1
 260 0238 2F5F                  subi r18,lo8(-(1))
 261 023a 3F4F                  sbci r19,hi8(-(1))
 262 023c 280F                  add r18,r24
 263 023e 391F                  adc r19,r25
 264                    .L31:
 265 0240 8091 0000             lds r24,CountMilliseconds
 266 0244 9091 0000             lds r25,(CountMilliseconds)+1
 267 0248 A901                  movw r20,r18
 268 024a 481B                  sub r20,r24
 269 024c 590B                  sbc r21,r25
 270 024e CA01                  movw r24,r20
 271 0250 8070                  andi r24,lo8(-32768)
 272 0252 9078                  andi r25,hi8(-32768)
 273 0254 892F                  mov r24,r25
 274 0256 8695                  lsr r24
 275 0258 01F0                  breq .L31
 276                    /* epilogue start */
 277 025a 0895                  ret
 279                    .global Delay_ms_Mess
 281                    Delay_ms_Mess:
 282                    /* prologue: function */
 283                    /* frame size = 0 */
 284 025c 2091 0000             lds r18,CountMilliseconds
 285 0260 3091 0000             lds r19,(CountMilliseconds)+1
 286 0264 2F5F                  subi r18,lo8(-(1))
 287 0266 3F4F                  sbci r19,hi8(-(1))
 288 0268 280F                  add r18,r24
 289 026a 391F                  adc r19,r25
 290 026c 4FEC                  ldi r20,lo8(-49)
 291 026e 00C0                  rjmp .L40
 292                    .L36:
 293 0270 8091 0000             lds r24,AdReady
 294 0274 8823                  tst r24
 295 0276 01F0                  breq .L40
 296 0278 1092 0000             sts AdReady,__zero_reg__
 297 027c 4093 7A00             sts 122,r20
 298                    .L40:
 299 0280 8091 0000             lds r24,CountMilliseconds
 300 0284 9091 0000             lds r25,(CountMilliseconds)+1
 301 0288 B901                  movw r22,r18
 302 028a 681B                  sub r22,r24
 303 028c 790B                  sbc r23,r25
 304 028e CB01                  movw r24,r22
 305 0290 8070                  andi r24,lo8(-32768)
 306 0292 9078                  andi r25,hi8(-32768)
 307 0294 892F                  mov r24,r25
 308 0296 8695                  lsr r24
 309 0298 01F0                  breq .L36
 310                    /* epilogue start */
 311 029a 0895                  ret
 313                    .global TIMER2_Init
 315                    TIMER2_Init:
 316                    /* prologue: function */
 317                    /* frame size = 0 */
 318 029c 4FB7                  in r20,__SREG__
 319 029e 2091 0000             lds r18,Parameter_UserParam8
 320 02a2 30E0                  ldi r19,lo8(0)
 321 02a4 2F77                  andi r18,lo8(127)
 322 02a6 3070                  andi r19,hi8(127)
 323 02a8 C901                  movw r24,r18
 324 02aa 880F                  lsl r24
 325 02ac 991F                  rol r25
 326 02ae 880F                  lsl r24
 327 02b0 991F                  rol r25
 328 02b2 820F                  add r24,r18
 329 02b4 931F                  adc r25,r19
 330 02b6 9093 0000             sts (CameraShutterCycle)+1,r25
 331 02ba 8093 0000             sts CameraShutterCycle,r24
 332                    /* #APP */
 333                     ;  176 "timer0.c" 1
 334 02be F894                  cli
 335                     ;  0 "" 2
 336                    /* #NOAPP */
 337 02c0 5F98                  cbi 43-32,7
 338 02c2 3E9A                  sbi 39-32,6
 339 02c4 469A                  sbi 40-32,6
 340 02c6 A0EB                  ldi r26,lo8(176)
 341 02c8 B0E0                  ldi r27,hi8(176)
 342 02ca 8C91                  ld r24,X
 343 02cc 8F70                  andi r24,lo8(15)
 344 02ce 8C93                  st X,r24
 345 02d0 8C91                  ld r24,X
 346 02d2 8360                  ori r24,lo8(3)
 347 02d4 8C93                  st X,r24
 348 02d6 E1EB                  ldi r30,lo8(177)
 349 02d8 F0E0                  ldi r31,hi8(177)
 350 02da 8081                  ld r24,Z
 351 02dc 8B73                  andi r24,lo8(59)
 352 02de 8083                  st Z,r24
 353 02e0 8081                  ld r24,Z
 354 02e2 8B60                  ori r24,lo8(11)
 355 02e4 8083                  st Z,r24
 356 02e6 1092 B200             sts 178,__zero_reg__
 357 02ea 8FEF                  ldi r24,lo8(-1)
 358 02ec 8093 B300             sts 179,r24
 359 02f0 8C91                  ld r24,X
 360 02f2 8068                  ori r24,lo8(-128)
 361 02f4 8C93                  st X,r24
 362 02f6 E0E7                  ldi r30,lo8(112)
 363 02f8 F0E0                  ldi r31,hi8(112)
 364 02fa 8081                  ld r24,Z
 365 02fc 8A7F                  andi r24,lo8(-6)
 366 02fe 8083                  st Z,r24
 367 0300 8081                  ld r24,Z
 368 0302 8260                  ori r24,lo8(2)
 369 0304 8083                  st Z,r24
 370 0306 4FBF                  out __SREG__,r20
 371                    /* epilogue start */
 372 0308 0895                  ret
 374                    .global Timer_Init
 376                    Timer_Init:
 377                    /* prologue: function */
 378                    /* frame size = 0 */
 379 030a 8091 0000             lds r24,CountMilliseconds
 380 030e 9091 0000             lds r25,(CountMilliseconds)+1
 381 0312 0B96                  adiw r24,11
 382 0314 9093 0000             sts (tim_main)+1,r25
 383 0318 8093 0000             sts tim_main,r24
 384 031c 82E0                  ldi r24,lo8(2)
 385 031e 85BD                  out 69-32,r24
 386 0320 83EA                  ldi r24,lo8(-93)
 387 0322 84BD                  out 68-32,r24
 388 0324 17BC                  out 71-32,__zero_reg__
 389 0326 84EB                  ldi r24,lo8(-76)
 390 0328 88BD                  out 72-32,r24
 391 032a 86E0                  ldi r24,lo8(6)
 392 032c 86BD                  out 70-32,r24
 393 032e EEE6                  ldi r30,lo8(110)
 394 0330 F0E0                  ldi r31,hi8(110)
 395 0332 8081                  ld r24,Z
 396 0334 8160                  ori r24,lo8(1)
 397 0336 8083                  st Z,r24
 398                    /* epilogue start */
 399 0338 0895                  ret
 401                    .global __vector_9
 403                    __vector_9:
 404 033a 1F92                  push __zero_reg__
 405 033c 0F92                  push r0
 406 033e 0FB6                  in r0,__SREG__
 407 0340 0F92                  push r0
 408 0342 1124                  clr __zero_reg__
 409 0344 CF92                  push r12
 410 0346 DF92                  push r13
 411 0348 EF92                  push r14
 412 034a FF92                  push r15
 413 034c 0F93                  push r16
 414 034e 1F93                  push r17
 415 0350 2F93                  push r18
 416 0352 3F93                  push r19
 417 0354 4F93                  push r20
 418 0356 5F93                  push r21
 419 0358 6F93                  push r22
 420 035a 7F93                  push r23
 421 035c 8F93                  push r24
 422 035e 9F93                  push r25
 423 0360 AF93                  push r26
 424 0362 BF93                  push r27
 425 0364 EF93                  push r30
 426 0366 FF93                  push r31
 427                    /* prologue: Signal */
 428                    /* frame size = 0 */
 429 0368 8091 0000             lds r24,PlatinenVersion
 430 036c 8431                  cpi r24,lo8(20)
 431 036e 00F0                  brlo .+2
 432 0370 00C0                  rjmp .L46
 433 0372 8091 0000             lds r24,Parameter_UserParam8
 434 0376 87FD                  sbrc r24,7
 435 0378 00C0                  rjmp .L46
 436 037a 8091 0000             lds r24,PulseOutput.2393
 437 037e 8823                  tst r24
 438 0380 01F0                  breq .+2
 439 0382 00C0                  rjmp .L47
 440 0384 8091 B000             lds r24,176
 441 0388 86FF                  sbrs r24,6
 442 038a 00C0                  rjmp .L48
 443 038c 8091 B000             lds r24,176
 444 0390 8F7B                  andi r24,lo8(-65)
 445 0392 8093 B000             sts 176,r24
 446 0396 8091 0000             lds r24,Parameter_ServoNickControl
 447 039a 90E0                  ldi r25,lo8(0)
 448 039c 880F                  lsl r24
 449 039e 991F                  rol r25
 450 03a0 880F                  lsl r24
 451 03a2 991F                  rol r25
 452 03a4 4091 0000             lds r20,ServoNickOffset.2397
 453 03a8 5091 0000             lds r21,(ServoNickOffset.2397)+1
 454 03ac 9A01                  movw r18,r20
 455 03ae 220F                  lsl r18
 456 03b0 331F                  rol r19
 457 03b2 240F                  add r18,r20
 458 03b4 351F                  adc r19,r21
 459 03b6 820F                  add r24,r18
 460 03b8 931F                  adc r25,r19
 461 03ba 64E0                  ldi r22,lo8(4)
 462 03bc 70E0                  ldi r23,hi8(4)
 463 03be 0E94 0000             call __divmodhi4
 464 03c2 7093 0000             sts (ServoNickOffset.2397)+1,r23
 465 03c6 6093 0000             sts ServoNickOffset.2397,r22
 466 03ca 7093 0000             sts (ServoNickValue)+1,r23
 467 03ce 6093 0000             sts ServoNickValue,r22
 468 03d2 8091 0000             lds r24,EE_Parameter+98
 469 03d6 2091 0000             lds r18,IntegralNick
 470 03da 3091 0000             lds r19,(IntegralNick)+1
 471 03de 4091 0000             lds r20,(IntegralNick)+2
 472 03e2 5091 0000             lds r21,(IntegralNick)+3
 473 03e6 80FF                  sbrs r24,0
 474 03e8 00C0                  rjmp .L49
 475 03ea C090 0000             lds r12,ServoNickValue
 476 03ee D090 0000             lds r13,(ServoNickValue)+1
 477 03f2 E090 0000             lds r14,EE_Parameter+46
 478 03f6 FF24                  clr r15
 479 03f8 00E0                  ldi r16,lo8(0)
 480 03fa 10E0                  ldi r17,hi8(0)
 481 03fc CA01                  movw r24,r20
 482 03fe B901                  movw r22,r18
 483 0400 20E8                  ldi r18,lo8(128)
 484 0402 30E0                  ldi r19,hi8(128)
 485 0404 40E0                  ldi r20,hlo8(128)
 486 0406 50E0                  ldi r21,hhi8(128)
 487 0408 0E94 0000             call __divmodsi4
 488 040c C801                  movw r24,r16
 489 040e B701                  movw r22,r14
 490 0410 0E94 0000             call __mulsi3
 491 0414 F2E0                  ldi r31,2
 492 0416 660F          1:      lsl r22
 493 0418 771F                  rol r23
 494 041a 881F                  rol r24
 495 041c 991F                  rol r25
 496 041e FA95                  dec r31
 497 0420 01F4                  brne 1b
 498 0422 20E0                  ldi r18,lo8(256)
 499 0424 31E0                  ldi r19,hi8(256)
 500 0426 40E0                  ldi r20,hlo8(256)
 501 0428 50E0                  ldi r21,hhi8(256)
 502 042a 0E94 0000             call __divmodsi4
 503 042e C20E                  add r12,r18
 504 0430 D31E                  adc r13,r19
 505 0432 00C0                  rjmp .L90
 506                    .L49:
 507 0434 C090 0000             lds r12,ServoNickValue
 508 0438 D090 0000             lds r13,(ServoNickValue)+1
 509 043c E090 0000             lds r14,EE_Parameter+46
 510 0440 FF24                  clr r15
 511 0442 00E0                  ldi r16,lo8(0)
 512 0444 10E0                  ldi r17,hi8(0)
 513 0446 CA01                  movw r24,r20
 514 0448 B901                  movw r22,r18
 515 044a 20E8                  ldi r18,lo8(128)
 516 044c 30E0                  ldi r19,hi8(128)
 517 044e 40E0                  ldi r20,hlo8(128)
 518 0450 50E0                  ldi r21,hhi8(128)
 519 0452 0E94 0000             call __divmodsi4
 520 0456 C801                  movw r24,r16
 521 0458 B701                  movw r22,r14
 522 045a 0E94 0000             call __mulsi3
 523 045e E2E0                  ldi r30,2
 524 0460 660F          1:      lsl r22
 525 0462 771F                  rol r23
 526 0464 881F                  rol r24
 527 0466 991F                  rol r25
 528 0468 EA95                  dec r30
 529 046a 01F4                  brne 1b
 530 046c 20E0                  ldi r18,lo8(256)
 531 046e 31E0                  ldi r19,hi8(256)
 532 0470 40E0                  ldi r20,hlo8(256)
 533 0472 50E0                  ldi r21,hhi8(256)
 534 0474 0E94 0000             call __divmodsi4
 535 0478 C21A                  sub r12,r18
 536 047a D30A                  sbc r13,r19
 537                    .L90:
 538 047c D092 0000             sts (ServoNickValue)+1,r13
 539 0480 C092 0000             sts ServoNickValue,r12
 540 0484 2091 0000             lds r18,ServoNickValue
 541 0488 3091 0000             lds r19,(ServoNickValue)+1
 542 048c 8091 0000             lds r24,EE_Parameter+47
 543 0490 90E0                  ldi r25,lo8(0)
 544 0492 880F                  lsl r24
 545 0494 991F                  rol r25
 546 0496 880F                  lsl r24
 547 0498 991F                  rol r25
 548 049a 2817                  cp r18,r24
 549 049c 3907                  cpc r19,r25
 550 049e 04F0                  brlt .L91
 551                    .L51:
 552 04a0 2091 0000             lds r18,ServoNickValue
 553 04a4 3091 0000             lds r19,(ServoNickValue)+1
 554 04a8 8091 0000             lds r24,EE_Parameter+48
 555 04ac 90E0                  ldi r25,lo8(0)
 556 04ae 880F                  lsl r24
 557 04b0 991F                  rol r25
 558 04b2 880F                  lsl r24
 559 04b4 991F                  rol r25
 560 04b6 8217                  cp r24,r18
 561 04b8 9307                  cpc r25,r19
 562 04ba 04F4                  brge .L52
 563                    .L91:
 564 04bc 9093 0000             sts (ServoNickValue)+1,r25
 565 04c0 8093 0000             sts ServoNickValue,r24
 566                    .L52:
 567 04c4 2091 0000             lds r18,ServoNickValue
 568 04c8 3091 0000             lds r19,(ServoNickValue)+1
 569 04cc 2755                  subi r18,lo8(-(425))
 570 04ce 3E4F                  sbci r19,hi8(-(425))
 571 04d0 3093 0000             sts (RemainingPulse.2394)+1,r19
 572 04d4 2093 0000             sts RemainingPulse.2394,r18
 573 04d8 8091 0000             lds r24,ServoNickValue
 574 04dc 9091 0000             lds r25,(ServoNickValue)+1
 575 04e0 64E0                  ldi r22,lo8(4)
 576 04e2 70E0                  ldi r23,hi8(4)
 577 04e4 0E94 0000             call __divmodhi4
 578 04e8 7093 0000             sts (ServoNickValue)+1,r23
 579 04ec 6093 0000             sts ServoNickValue,r22
 580 04f0 45E0                  ldi r20,hi8(1501)
 581 04f2 2D3D                  cpi r18,lo8(1501)
 582 04f4 3407                  cpc r19,r20
 583 04f6 00F0                  brlo .L53
 584 04f8 8CED                  ldi r24,lo8(1500)
 585 04fa 95E0                  ldi r25,hi8(1500)
 586 04fc 00C0                  rjmp .L92
 587                    .L53:
 588 04fe 2757                  subi r18,lo8(375)
 589 0500 3140                  sbci r19,hi8(375)
 590 0502 00F4                  brsh .L54
 591 0504 87E7                  ldi r24,lo8(375)
 592 0506 91E0                  ldi r25,hi8(375)
 593                    .L92:
 594 0508 9093 0000             sts (RemainingPulse.2394)+1,r25
 595 050c 8093 0000             sts RemainingPulse.2394,r24
 596                    .L54:
 597 0510 8091 0000             lds r24,RemainingPulse.2394
 598 0514 9091 0000             lds r25,(RemainingPulse.2394)+1
 599 0518 00C0                  rjmp .L103
 600                    .L48:
 601 051a 8091 B000             lds r24,176
 602 051e 8064                  ori r24,lo8(64)
 603 0520 8093 B000             sts 176,r24
 604 0524 8091 0000             lds r24,EE_Parameter+53
 605 0528 90E0                  ldi r25,lo8(0)
 606 052a 2DED                  ldi r18,lo8(1757)
 607 052c 36E0                  ldi r19,hi8(1757)
 608 052e AC01                  movw r20,r24
 609 0530 429F                  mul r20,r18
 610 0532 C001                  movw r24,r0
 611 0534 439F                  mul r20,r19
 612 0536 900D                  add r25,r0
 613 0538 529F                  mul r21,r18
 614 053a 900D                  add r25,r0
 615 053c 1124                  clr r1
 616 053e 2091 0000             lds r18,ServoFrameTime.2395
 617 0542 3091 0000             lds r19,(ServoFrameTime.2395)+1
 618 0546 821B                  sub r24,r18
 619 0548 930B                  sbc r25,r19
 620 054a 9093 0000             sts (RemainingPulse.2394)+1,r25
 621 054e 8093 0000             sts RemainingPulse.2394,r24
 622 0552 00C0                  rjmp .L58
 623                    .L46:
 624 0554 8091 0000             lds r24,PulseOutput.2393
 625 0558 8823                  tst r24
 626 055a 01F0                  breq .+2
 627 055c 00C0                  rjmp .L47
 628 055e 8091 B000             lds r24,176
 629 0562 86FF                  sbrs r24,6
 630 0564 00C0                  rjmp .L56
 631 0566 8091 B000             lds r24,176
 632 056a 8F7B                  andi r24,lo8(-65)
 633 056c 8093 B000             sts 176,r24
 634 0570 E091 0000             lds r30,ServoIndex.2396
 635 0574 EE23                  tst r30
 636 0576 01F4                  brne .L57
 637 0578 8091 0000             lds r24,EE_Parameter+53
 638 057c 90E0                  ldi r25,lo8(0)
 639 057e 2DED                  ldi r18,lo8(1757)
 640 0580 36E0                  ldi r19,hi8(1757)
 641 0582 AC01                  movw r20,r24
 642 0584 429F                  mul r20,r18
 643 0586 C001                  movw r24,r0
 644 0588 439F                  mul r20,r19
 645 058a 900D                  add r25,r0
 646 058c 529F                  mul r21,r18
 647 058e 900D                  add r25,r0
 648 0590 1124                  clr r1
 649 0592 2091 0000             lds r18,ServoFrameTime.2395
 650 0596 3091 0000             lds r19,(ServoFrameTime.2395)+1
 651 059a 821B                  sub r24,r18
 652 059c 930B                  sbc r25,r19
 653 059e 9093 0000             sts (RemainingPulse.2394)+1,r25
 654 05a2 8093 0000             sts RemainingPulse.2394,r24
 655 05a6 1092 0000             sts (ServoFrameTime.2395)+1,__zero_reg__
 656 05aa 1092 0000             sts ServoFrameTime.2395,__zero_reg__
 657 05ae 469A                  sbi 40-32,6
 658 05b0 00C0                  rjmp .L58
 659                    .L57:
 660 05b2 49EA                  ldi r20,lo8(937)
 661 05b4 53E0                  ldi r21,hi8(937)
 662 05b6 5093 0000             sts (RemainingPulse.2394)+1,r21
 663 05ba 4093 0000             sts RemainingPulse.2394,r20
 664 05be E330                  cpi r30,lo8(3)
 665 05c0 01F4                  brne .+2
 666 05c2 00C0                  rjmp .L62
 667 05c4 E430                  cpi r30,lo8(4)
 668 05c6 00F4                  brsh .L65
 669 05c8 E130                  cpi r30,lo8(1)
 670 05ca 01F0                  breq .L60
 671 05cc E230                  cpi r30,lo8(2)
 672 05ce 01F0                  breq .+2
 673 05d0 00C0                  rjmp .L59
 674 05d2 00C0                  rjmp .L104
 675                    .L65:
 676 05d4 E430                  cpi r30,lo8(4)
 677 05d6 01F4                  brne .+2
 678 05d8 00C0                  rjmp .L63
 679 05da E530                  cpi r30,lo8(5)
 680 05dc 01F0                  breq .+2
 681 05de 00C0                  rjmp .L59
 682 05e0 00C0                  rjmp .L105
 683                    .L60:
 684 05e2 8091 0000             lds r24,Parameter_ServoNickControl
 685 05e6 90E0                  ldi r25,lo8(0)
 686 05e8 880F                  lsl r24
 687 05ea 991F                  rol r25
 688 05ec 880F                  lsl r24
 689 05ee 991F                  rol r25
 690 05f0 4091 0000             lds r20,ServoNickOffset.2397
 691 05f4 5091 0000             lds r21,(ServoNickOffset.2397)+1
 692 05f8 9A01                  movw r18,r20
 693 05fa 220F                  lsl r18
 694 05fc 331F                  rol r19
 695 05fe 240F                  add r18,r20
 696 0600 351F                  adc r19,r21
 697 0602 820F                  add r24,r18
 698 0604 931F                  adc r25,r19
 699 0606 64E0                  ldi r22,lo8(4)
 700 0608 70E0                  ldi r23,hi8(4)
 701 060a 0E94 0000             call __divmodhi4
 702 060e 7093 0000             sts (ServoNickOffset.2397)+1,r23
 703 0612 6093 0000             sts ServoNickOffset.2397,r22
 704 0616 7093 0000             sts (ServoNickValue)+1,r23
 705 061a 6093 0000             sts ServoNickValue,r22
 706 061e 8091 0000             lds r24,EE_Parameter+98
 707 0622 2091 0000             lds r18,IntegralNick
 708 0626 3091 0000             lds r19,(IntegralNick)+1
 709 062a 4091 0000             lds r20,(IntegralNick)+2
 710 062e 5091 0000             lds r21,(IntegralNick)+3
 711 0632 80FF                  sbrs r24,0
 712 0634 00C0                  rjmp .L66
 713 0636 C090 0000             lds r12,ServoNickValue
 714 063a D090 0000             lds r13,(ServoNickValue)+1
 715 063e E090 0000             lds r14,EE_Parameter+46
 716 0642 FF24                  clr r15
 717 0644 00E0                  ldi r16,lo8(0)
 718 0646 10E0                  ldi r17,hi8(0)
 719 0648 CA01                  movw r24,r20
 720 064a B901                  movw r22,r18
 721 064c 20E8                  ldi r18,lo8(128)
 722 064e 30E0                  ldi r19,hi8(128)
 723 0650 40E0                  ldi r20,hlo8(128)
 724 0652 50E0                  ldi r21,hhi8(128)
 725 0654 0E94 0000             call __divmodsi4
 726 0658 C801                  movw r24,r16
 727 065a B701                  movw r22,r14
 728 065c 0E94 0000             call __mulsi3
 729 0660 B2E0                  ldi r27,2
 730 0662 660F          1:      lsl r22
 731 0664 771F                  rol r23
 732 0666 881F                  rol r24
 733 0668 991F                  rol r25
 734 066a BA95                  dec r27
 735 066c 01F4                  brne 1b
 736 066e 20E0                  ldi r18,lo8(256)
 737 0670 31E0                  ldi r19,hi8(256)
 738 0672 40E0                  ldi r20,hlo8(256)
 739 0674 50E0                  ldi r21,hhi8(256)
 740 0676 0E94 0000             call __divmodsi4
 741 067a C20E                  add r12,r18
 742 067c D31E                  adc r13,r19
 743 067e 00C0                  rjmp .L93
 744                    .L66:
 745 0680 C090 0000             lds r12,ServoNickValue
 746 0684 D090 0000             lds r13,(ServoNickValue)+1
 747 0688 E090 0000             lds r14,EE_Parameter+46
 748 068c FF24                  clr r15
 749 068e 00E0                  ldi r16,lo8(0)
 750 0690 10E0                  ldi r17,hi8(0)
 751 0692 CA01                  movw r24,r20
 752 0694 B901                  movw r22,r18
 753 0696 20E8                  ldi r18,lo8(128)
 754 0698 30E0                  ldi r19,hi8(128)
 755 069a 40E0                  ldi r20,hlo8(128)
 756 069c 50E0                  ldi r21,hhi8(128)
 757 069e 0E94 0000             call __divmodsi4
 758 06a2 C801                  movw r24,r16
 759 06a4 B701                  movw r22,r14
 760 06a6 0E94 0000             call __mulsi3
 761 06aa A2E0                  ldi r26,2
 762 06ac 660F          1:      lsl r22
 763 06ae 771F                  rol r23
 764 06b0 881F                  rol r24
 765 06b2 991F                  rol r25
 766 06b4 AA95                  dec r26
 767 06b6 01F4                  brne 1b
 768 06b8 20E0                  ldi r18,lo8(256)
 769 06ba 31E0                  ldi r19,hi8(256)
 770 06bc 40E0                  ldi r20,hlo8(256)
 771 06be 50E0                  ldi r21,hhi8(256)
 772 06c0 0E94 0000             call __divmodsi4
 773 06c4 C21A                  sub r12,r18
 774 06c6 D30A                  sbc r13,r19
 775                    .L93:
 776 06c8 D092 0000             sts (ServoNickValue)+1,r13
 777 06cc C092 0000             sts ServoNickValue,r12
 778 06d0 2091 0000             lds r18,ServoNickValue
 779 06d4 3091 0000             lds r19,(ServoNickValue)+1
 780 06d8 8091 0000             lds r24,EE_Parameter+47
 781 06dc 90E0                  ldi r25,lo8(0)
 782 06de 880F                  lsl r24
 783 06e0 991F                  rol r25
 784 06e2 880F                  lsl r24
 785 06e4 991F                  rol r25
 786 06e6 2817                  cp r18,r24
 787 06e8 3907                  cpc r19,r25
 788 06ea 04F0                  brlt .L94
 789                    .L68:
 790 06ec 2091 0000             lds r18,ServoNickValue
 791 06f0 3091 0000             lds r19,(ServoNickValue)+1
 792 06f4 8091 0000             lds r24,EE_Parameter+48
 793 06f8 90E0                  ldi r25,lo8(0)
 794 06fa 880F                  lsl r24
 795 06fc 991F                  rol r25
 796 06fe 880F                  lsl r24
 797 0700 991F                  rol r25
 798 0702 8217                  cp r24,r18
 799 0704 9307                  cpc r25,r19
 800 0706 04F4                  brge .L69
 801                    .L94:
 802 0708 9093 0000             sts (ServoNickValue)+1,r25
 803 070c 8093 0000             sts ServoNickValue,r24
 804                    .L69:
 805 0710 8091 0000             lds r24,ServoNickValue
 806 0714 9091 0000             lds r25,(ServoNickValue)+1
 807 0718 8755                  subi r24,lo8(-(425))
 808 071a 9E4F                  sbci r25,hi8(-(425))
 809 071c 9093 0000             sts (RemainingPulse.2394)+1,r25
 810 0720 8093 0000             sts RemainingPulse.2394,r24
 811 0724 8091 0000             lds r24,ServoNickValue
 812 0728 9091 0000             lds r25,(ServoNickValue)+1
 813 072c 64E0                  ldi r22,lo8(4)
 814 072e 70E0                  ldi r23,hi8(4)
 815 0730 0E94 0000             call __divmodhi4
 816 0734 7093 0000             sts (ServoNickValue)+1,r23
 817 0738 6093 0000             sts ServoNickValue,r22
 818 073c 00C0                  rjmp .L70
 819                    .L104:
 820 073e 8091 0000             lds r24,Parameter_ServoRollControl
 821 0742 90E0                  ldi r25,lo8(0)
 822 0744 880F                  lsl r24
 823 0746 991F                  rol r25
 824 0748 880F                  lsl r24
 825 074a 991F                  rol r25
 826 074c 4091 0000             lds r20,ServoRollOffset.2398
 827 0750 5091 0000             lds r21,(ServoRollOffset.2398)+1
 828 0754 9A01                  movw r18,r20
 829 0756 220F                  lsl r18
 830 0758 331F                  rol r19
 831 075a 240F                  add r18,r20
 832 075c 351F                  adc r19,r21
 833 075e 820F                  add r24,r18
 834 0760 931F                  adc r25,r19
 835 0762 64E0                  ldi r22,lo8(4)
 836 0764 70E0                  ldi r23,hi8(4)
 837 0766 0E94 0000             call __divmodhi4
 838 076a 7093 0000             sts (ServoRollOffset.2398)+1,r23
 839 076e 6093 0000             sts ServoRollOffset.2398,r22
 840 0772 7093 0000             sts (ServoRollValue)+1,r23
 841 0776 6093 0000             sts ServoRollValue,r22
 842 077a 8091 0000             lds r24,EE_Parameter+98
 843 077e 2091 0000             lds r18,IntegralRoll
 844 0782 3091 0000             lds r19,(IntegralRoll)+1
 845 0786 4091 0000             lds r20,(IntegralRoll)+2
 846 078a 5091 0000             lds r21,(IntegralRoll)+3
 847 078e 81FF                  sbrs r24,1
 848 0790 00C0                  rjmp .L71
 849 0792 C090 0000             lds r12,ServoRollValue
 850 0796 D090 0000             lds r13,(ServoRollValue)+1
 851 079a E090 0000             lds r14,EE_Parameter+50
 852 079e FF24                  clr r15
 853 07a0 00E0                  ldi r16,lo8(0)
 854 07a2 10E0                  ldi r17,hi8(0)
 855 07a4 CA01                  movw r24,r20
 856 07a6 B901                  movw r22,r18
 857 07a8 20E8                  ldi r18,lo8(128)
 858 07aa 30E0                  ldi r19,hi8(128)
 859 07ac 40E0                  ldi r20,hlo8(128)
 860 07ae 50E0                  ldi r21,hhi8(128)
 861 07b0 0E94 0000             call __divmodsi4
 862 07b4 C801                  movw r24,r16
 863 07b6 B701                  movw r22,r14
 864 07b8 0E94 0000             call __mulsi3
 865 07bc 22E0                  ldi r18,2
 866 07be 660F          1:      lsl r22
 867 07c0 771F                  rol r23
 868 07c2 881F                  rol r24
 869 07c4 991F                  rol r25
 870 07c6 2A95                  dec r18
 871 07c8 01F4                  brne 1b
 872 07ca 20E0                  ldi r18,lo8(256)
 873 07cc 31E0                  ldi r19,hi8(256)
 874 07ce 40E0                  ldi r20,hlo8(256)
 875 07d0 50E0                  ldi r21,hhi8(256)
 876 07d2 0E94 0000             call __divmodsi4
 877 07d6 C20E                  add r12,r18
 878 07d8 D31E                  adc r13,r19
 879 07da 00C0                  rjmp .L95
 880                    .L71:
 881 07dc C090 0000             lds r12,ServoRollValue
 882 07e0 D090 0000             lds r13,(ServoRollValue)+1
 883 07e4 E090 0000             lds r14,EE_Parameter+50
 884 07e8 FF24                  clr r15
 885 07ea 00E0                  ldi r16,lo8(0)
 886 07ec 10E0                  ldi r17,hi8(0)
 887 07ee CA01                  movw r24,r20
 888 07f0 B901                  movw r22,r18
 889 07f2 20E8                  ldi r18,lo8(128)
 890 07f4 30E0                  ldi r19,hi8(128)
 891 07f6 40E0                  ldi r20,hlo8(128)
 892 07f8 50E0                  ldi r21,hhi8(128)
 893 07fa 0E94 0000             call __divmodsi4
 894 07fe C801                  movw r24,r16
 895 0800 B701                  movw r22,r14
 896 0802 0E94 0000             call __mulsi3
 897 0806 02E0                  ldi r16,2
 898 0808 660F          1:      lsl r22
 899 080a 771F                  rol r23
 900 080c 881F                  rol r24
 901 080e 991F                  rol r25
 902 0810 0A95                  dec r16
 903 0812 01F4                  brne 1b
 904 0814 20E0                  ldi r18,lo8(256)
 905 0816 31E0                  ldi r19,hi8(256)
 906 0818 40E0                  ldi r20,hlo8(256)
 907 081a 50E0                  ldi r21,hhi8(256)
 908 081c 0E94 0000             call __divmodsi4
 909 0820 C21A                  sub r12,r18
 910 0822 D30A                  sbc r13,r19
 911                    .L95:
 912 0824 D092 0000             sts (ServoRollValue)+1,r13
 913 0828 C092 0000             sts ServoRollValue,r12
 914 082c 2091 0000             lds r18,ServoRollValue
 915 0830 3091 0000             lds r19,(ServoRollValue)+1
 916 0834 8091 0000             lds r24,EE_Parameter+51
 917 0838 90E0                  ldi r25,lo8(0)
 918 083a 880F                  lsl r24
 919 083c 991F                  rol r25
 920 083e 880F                  lsl r24
 921 0840 991F                  rol r25
 922 0842 2817                  cp r18,r24
 923 0844 3907                  cpc r19,r25
 924 0846 04F0                  brlt .L96
 925                    .L73:
 926 0848 2091 0000             lds r18,ServoRollValue
 927 084c 3091 0000             lds r19,(ServoRollValue)+1
 928 0850 8091 0000             lds r24,EE_Parameter+52
 929 0854 90E0                  ldi r25,lo8(0)
 930 0856 880F                  lsl r24
 931 0858 991F                  rol r25
 932 085a 880F                  lsl r24
 933 085c 991F                  rol r25
 934 085e 8217                  cp r24,r18
 935 0860 9307                  cpc r25,r19
 936 0862 04F4                  brge .L74
 937                    .L96:
 938 0864 9093 0000             sts (ServoRollValue)+1,r25
 939 0868 8093 0000             sts ServoRollValue,r24
 940                    .L74:
 941 086c 8091 0000             lds r24,ServoRollValue
 942 0870 9091 0000             lds r25,(ServoRollValue)+1
 943 0874 8755                  subi r24,lo8(-(425))
 944 0876 9E4F                  sbci r25,hi8(-(425))
 945 0878 9093 0000             sts (RemainingPulse.2394)+1,r25
 946 087c 8093 0000             sts RemainingPulse.2394,r24
 947 0880 8091 0000             lds r24,ServoRollValue
 948 0884 9091 0000             lds r25,(ServoRollValue)+1
 949 0888 64E0                  ldi r22,lo8(4)
 950 088a 70E0                  ldi r23,hi8(4)
 951 088c 0E94 0000             call __divmodhi4
 952 0890 7093 0000             sts (ServoRollValue)+1,r23
 953 0894 6093 0000             sts ServoRollValue,r22
 954 0898 00C0                  rjmp .L70
 955                    .L62:
 956 089a 8091 0000             lds r24,EE_Parameter+7
 957 089e E82F                  mov r30,r24
 958 08a0 F0E0                  ldi r31,lo8(0)
 959 08a2 EE0F                  lsl r30
 960 08a4 FF1F                  rol r31
 961 08a6 E050                  subi r30,lo8(-(PPM_in))
 962 08a8 F040                  sbci r31,hi8(-(PPM_in))
 963 08aa 8081                  ld r24,Z
 964 08ac 9181                  ldd r25,Z+1
 965 08ae 805E                  subi r24,lo8(-32)
 966 08b0 9F4F                  sbci r25,hi8(-32)
 967 08b2 04F0                  brlt .L101
 968                    .L75:
 969 08b4 8081                  ld r24,Z
 970 08b6 9181                  ldd r25,Z+1
 971 08b8 8197                  sbiw r24,33
 972 08ba 04F0                  brlt .L76
 973 08bc 8CED                  ldi r24,lo8(1500)
 974 08be 95E0                  ldi r25,hi8(1500)
 975 08c0 00C0                  rjmp .L97
 976                    .L76:
 977 08c2 8091 0000             lds r24,CameraShutterCycle
 978 08c6 9091 0000             lds r25,(CameraShutterCycle)+1
 979 08ca C297                  sbiw r24,50
 980 08cc 00F0                  brlo .L98
 981                    .L77:
 982 08ce 2091 0000             lds r18,CameraShutterCycleCounter
 983 08d2 3091 0000             lds r19,(CameraShutterCycleCounter)+1
 984 08d6 8091 0000             lds r24,CameraShutterCycle
 985 08da 9091 0000             lds r25,(CameraShutterCycle)+1
 986 08de 2817                  cp r18,r24
 987 08e0 3907                  cpc r19,r25
 988 08e2 01F4                  brne .L78
 989 08e4 1092 0000             sts (CameraShutterCycleCounter)+1,__zero_reg__
 990 08e8 1092 0000             sts CameraShutterCycleCounter,__zero_reg__
 991                    .L98:
 992 08ec 5093 0000             sts (RemainingPulse.2394)+1,r21
 993 08f0 4093 0000             sts RemainingPulse.2394,r20
 994 08f4 00C0                  rjmp .L70
 995                    .L78:
 996 08f6 8091 0000             lds r24,CameraShutterCycleCounter
 997 08fa 9091 0000             lds r25,(CameraShutterCycleCounter)+1
 998 08fe 0196                  adiw r24,1
 999 0900 9093 0000             sts (CameraShutterCycleCounter)+1,r25
 1000 0904 8093 0000            sts CameraShutterCycleCounter,r24
 1001 0908 2091 0000            lds r18,CameraShutterCycleCounter
 1002 090c 3091 0000            lds r19,(CameraShutterCycleCounter)+1
 1003 0910 8091 0000            lds r24,CameraShutterCycleOnCount
 1004 0914 9091 0000            lds r25,(CameraShutterCycleOnCount)+1
 1005 0918 2817                 cp r18,r24
 1006 091a 3907                 cpc r19,r25
 1007 091c 01F4                 brne .L70
 1008                   .L101:
 1009 091e 87E7                 ldi r24,lo8(375)
 1010 0920 91E0                 ldi r25,hi8(375)
 1011 0922 00C0                 rjmp .L97
 1012                   .L63:
 1013 0924 8091 0000            lds r24,Parameter_Servo4
 1014 0928 00C0                 rjmp .L102
 1015                   .L105:
 1016 092a 8091 0000            lds r24,Parameter_Servo5
 1017                   .L102:
 1018 092e 90E0                 ldi r25,lo8(0)
 1019 0930 880F                 lsl r24
 1020 0932 991F                 rol r25
 1021 0934 880F                 lsl r24
 1022 0936 991F                 rol r25
 1023 0938 8755                 subi r24,lo8(-(425))
 1024 093a 9E4F                 sbci r25,hi8(-(425))
 1025 093c 00C0                 rjmp .L97
 1026                   .L59:
 1027 093e F0E0                 ldi r31,lo8(0)
 1028 0940 EE0F                 lsl r30
 1029 0942 FF1F                 rol r31
 1030 0944 E050                 subi r30,lo8(-(PPM_in))
 1031 0946 F040                 sbci r31,hi8(-(PPM_in))
 1032 0948 8081                 ld r24,Z
 1033 094a 9181                 ldd r25,Z+1
 1034 094c 880F                 lsl r24
 1035 094e 991F                 rol r25
 1036 0950 8755                 subi r24,lo8(-(937))
 1037 0952 9C4F                 sbci r25,hi8(-(937))
 1038                   .L97:
 1039 0954 9093 0000            sts (RemainingPulse.2394)+1,r25
 1040 0958 8093 0000            sts RemainingPulse.2394,r24
 1041                   .L70:
 1042 095c 8091 0000            lds r24,RemainingPulse.2394
 1043 0960 9091 0000            lds r25,(RemainingPulse.2394)+1
 1044 0964 45E0                 ldi r20,hi8(1501)
 1045 0966 8D3D                 cpi r24,lo8(1501)
 1046 0968 9407                 cpc r25,r20
 1047 096a 00F0                 brlo .L79
 1048 096c 8CED                 ldi r24,lo8(1500)
 1049 096e 95E0                 ldi r25,hi8(1500)
 1050 0970 00C0                 rjmp .L99
 1051                   .L79:
 1052 0972 8757                 subi r24,lo8(375)
 1053 0974 9140                 sbci r25,hi8(375)
 1054 0976 00F4                 brsh .L80
 1055 0978 87E7                 ldi r24,lo8(375)
 1056 097a 91E0                 ldi r25,hi8(375)
 1057                   .L99:
 1058 097c 9093 0000            sts (RemainingPulse.2394)+1,r25
 1059 0980 8093 0000            sts RemainingPulse.2394,r24
 1060                   .L80:
 1061 0984 2091 0000            lds r18,RemainingPulse.2394
 1062 0988 3091 0000            lds r19,(RemainingPulse.2394)+1
 1063 098c 2C5B                 subi r18,lo8(-(-188))
 1064 098e 3040                 sbci r19,hi8(-(-188))
 1065 0990 3093 0000            sts (RemainingPulse.2394)+1,r19
 1066 0994 2093 0000            sts RemainingPulse.2394,r18
 1067 0998 8091 0000            lds r24,ServoFrameTime.2395
 1068 099c 9091 0000            lds r25,(ServoFrameTime.2395)+1
 1069 09a0 820F                 add r24,r18
 1070 09a2 931F                 adc r25,r19
 1071                   .L103:
 1072 09a4 9093 0000            sts (ServoFrameTime.2395)+1,r25
 1073 09a8 8093 0000            sts ServoFrameTime.2395,r24
 1074 09ac 00C0                 rjmp .L58
 1075                   .L56:
 1076 09ae 8091 B000            lds r24,176
 1077 09b2 8064                 ori r24,lo8(64)
 1078 09b4 8093 B000            sts 176,r24
 1079 09b8 8CEB                 ldi r24,lo8(188)
 1080 09ba 90E0                 ldi r25,hi8(188)
 1081 09bc 9093 0000            sts (RemainingPulse.2394)+1,r25
 1082 09c0 8093 0000            sts RemainingPulse.2394,r24
 1083 09c4 8091 0000            lds r24,ServoFrameTime.2395
 1084 09c8 9091 0000            lds r25,(ServoFrameTime.2395)+1
 1085 09cc 8454                 subi r24,lo8(-(188))
 1086 09ce 9F4F                 sbci r25,hi8(-(188))
 1087 09d0 9093 0000            sts (ServoFrameTime.2395)+1,r25
 1088 09d4 8093 0000            sts ServoFrameTime.2395,r24
 1089 09d8 8091 0000            lds r24,ServoActive
 1090 09dc 8823                 tst r24
 1091 09de 01F0                 breq .L81
 1092 09e0 8091 0000            lds r24,SenderOkay
 1093 09e4 853B                 cpi r24,lo8(-75)
 1094 09e6 00F4                 brsh .L82
 1095                   .L81:
 1096 09e8 8091 0000            lds r24,ServoActive
 1097 09ec 8230                 cpi r24,lo8(2)
 1098 09ee 01F4                 brne .L83
 1099                   .L82:
 1100 09f0 4698                 cbi 40-32,6
 1101 09f2 00C0                 rjmp .L84
 1102                   .L83:
 1103 09f4 469A                 sbi 40-32,6
 1104                   .L84:
 1105 09f6 8091 0000            lds r24,ServoIndex.2396
 1106 09fa 8F5F                 subi r24,lo8(-(1))
 1107 09fc 8093 0000            sts ServoIndex.2396,r24
 1108 0a00 9091 0000            lds r25,EE_Parameter+53
 1109 0a04 9817                 cp r25,r24
 1110 0a06 00F4                 brsh .L58
 1111 0a08 1092 0000            sts ServoIndex.2396,__zero_reg__
 1112                   .L58:
 1113 0a0c 81E0                 ldi r24,lo8(1)
 1114 0a0e 8093 0000            sts PulseOutput.2393,r24
 1115                   .L47:
 1116 0a12 2091 0000            lds r18,RemainingPulse.2394
 1117 0a16 3091 0000            lds r19,(RemainingPulse.2394)+1
 1118 0a1a 81E0                 ldi r24,hi8(383)
 1119 0a1c 2F37                 cpi r18,lo8(383)
 1120 0a1e 3807                 cpc r19,r24
 1121 0a20 00F0                 brlo .L85
 1122 0a22 8FEF                 ldi r24,lo8(-1)
 1123 0a24 8093 B300            sts 179,r24
 1124 0a28 2F5F                 subi r18,lo8(-(-255))
 1125 0a2a 3040                 sbci r19,hi8(-(-255))
 1126 0a2c 00C0                 rjmp .L100
 1127                   .L85:
 1128 0a2e 2F3F                 cpi r18,255
 1129 0a30 3105                 cpc r19,__zero_reg__
 1130 0a32 01F0                 breq .L87
 1131 0a34 00F0                 brlo .L87
 1132 0a36 A901                 movw r20,r18
 1133 0a38 4F5F                 subi r20,lo8(-(-255))
 1134 0a3a 5040                 sbci r21,hi8(-(-255))
 1135 0a3c 4F37                 cpi r20,127
 1136 0a3e 5105                 cpc r21,__zero_reg__
 1137 0a40 00F4                 brsh .L88
 1138 0a42 80E8                 ldi r24,lo8(-128)
 1139 0a44 8093 B300            sts 179,r24
 1140 0a48 2058                 subi r18,lo8(-(-128))
 1141 0a4a 3040                 sbci r19,hi8(-(-128))
 1142                   .L100:
 1143 0a4c 3093 0000            sts (RemainingPulse.2394)+1,r19
 1144 0a50 2093 0000            sts RemainingPulse.2394,r18
 1145 0a54 00C0                 rjmp .L89
 1146                   .L88:
 1147 0a56 8FEF                 ldi r24,lo8(-1)
 1148 0a58 8093 B300            sts 179,r24
 1149 0a5c 5093 0000            sts (RemainingPulse.2394)+1,r21
 1150 0a60 4093 0000            sts RemainingPulse.2394,r20
 1151 0a64 00C0                 rjmp .L89
 1152                   .L87:
 1153 0a66 2093 B300            sts 179,r18
 1154 0a6a 1092 0000            sts (RemainingPulse.2394)+1,__zero_reg__
 1155 0a6e 1092 0000            sts RemainingPulse.2394,__zero_reg__
 1156 0a72 1092 0000            sts PulseOutput.2393,__zero_reg__
 1157                   .L89:
 1158                   /* epilogue start */
 1159 0a76 FF91                 pop r31
 1160 0a78 EF91                 pop r30
 1161 0a7a BF91                 pop r27
 1162 0a7c AF91                 pop r26
 1163 0a7e 9F91                 pop r25
 1164 0a80 8F91                 pop r24
 1165 0a82 7F91                 pop r23
 1166 0a84 6F91                 pop r22
 1167 0a86 5F91                 pop r21
 1168 0a88 4F91                 pop r20
 1169 0a8a 3F91                 pop r19
 1170 0a8c 2F91                 pop r18
 1171 0a8e 1F91                 pop r17
 1172 0a90 0F91                 pop r16
 1173 0a92 FF90                 pop r15
 1174 0a94 EF90                 pop r14
 1175 0a96 DF90                 pop r13
 1176 0a98 CF90                 pop r12
 1177 0a9a 0F90                 pop r0
 1178 0a9c 0FBE                 out __SREG__,r0
 1179 0a9e 0F90                 pop r0
 1180 0aa0 1F90                 pop __zero_reg__
 1181 0aa2 1895                 reti
 1183                   .global CountMilliseconds
 1184                   .global CountMilliseconds
 1185                           .section .bss
 1188                   CountMilliseconds:
 1189 0000 0000                 .skip 2,0
 1190                   .global UpdateMotor
 1191                   .global UpdateMotor
 1194                   UpdateMotor:
 1195 0002 00                   .skip 1,0
 1196                   .global cntKompass
 1197                   .global cntKompass
 1200                   cntKompass:
 1201 0003 0000                 .skip 2,0
 1202                   .global beeptime
 1203                   .global beeptime
 1206                   beeptime:
 1207 0005 0000                 .skip 2,0
 1208                   .global SendSPI
 1209                   .global SendSPI
 1212                   SendSPI:
 1213 0007 00                   .skip 1,0
 1214                   .global ServoActive
 1215                   .global ServoActive
 1218                   ServoActive:
 1219 0008 00                   .skip 1,0
 1220                   .global BeepMuster
 1221                           .data
 1224                   BeepMuster:
 1225 0000 FFFF                 .word   -1
 1226                   .global ServoNickValue
 1227                   .global ServoNickValue
 1228                           .section .bss
 1231                   ServoNickValue:
 1232 0009 0000                 .skip 2,0
 1233                   .global ServoRollValue
 1234                   .global ServoRollValue
 1237                   ServoRollValue:
 1238 000b 0000                 .skip 2,0
 1239                           .lcomm CameraShutterCycle,2
 1240                           .lcomm CameraShutterCycleCounter,2
 1241                           .data
 1244                   CameraShutterCycleOnCount:
 1245 0002 1400                 .word   20
 1248                   ServoRollOffset.2398:
 1249 0004 FC01                 .word   508
 1252                   ServoNickOffset.2397:
 1253 0006 FC01                 .word   508
 1254                           .lcomm ServoIndex.2396,1
 1255                           .lcomm ServoFrameTime.2395,2
 1256                           .lcomm RemainingPulse.2394,2
 1257                           .lcomm PulseOutput.2393,1
 1258                           .lcomm compass_active.2240,1
 1259                           .lcomm cnt.2239,1
 1262                   cnt_1ms.2238:
 1263 0008 01                   .byte   1
 1264                           .lcomm tim_main,2
 1265                   .global __do_copy_data
 1266                   .global __do_clear_bss
DEFINED SYMBOLS
                            *ABS*:00000000 timer0.c
C:\DOCUME~1\ADMINI~1\LOCALS~1\Temp/ccT5cFTS.s:2      *ABS*:0000003f __SREG__
C:\DOCUME~1\ADMINI~1\LOCALS~1\Temp/ccT5cFTS.s:3      *ABS*:0000003e __SP_H__
C:\DOCUME~1\ADMINI~1\LOCALS~1\Temp/ccT5cFTS.s:4      *ABS*:0000003d __SP_L__
C:\DOCUME~1\ADMINI~1\LOCALS~1\Temp/ccT5cFTS.s:5      *ABS*:00000034 __CCP__
C:\DOCUME~1\ADMINI~1\LOCALS~1\Temp/ccT5cFTS.s:6      *ABS*:00000000 __tmp_reg__
C:\DOCUME~1\ADMINI~1\LOCALS~1\Temp/ccT5cFTS.s:7      *ABS*:00000001 __zero_reg__
C:\DOCUME~1\ADMINI~1\LOCALS~1\Temp/ccT5cFTS.s:11     .text:00000000 __vector_18
C:\DOCUME~1\ADMINI~1\LOCALS~1\Temp/ccT5cFTS.s:1212   .bss:00000007 SendSPI
C:\DOCUME~1\ADMINI~1\LOCALS~1\Temp/ccT5cFTS.s:1258   .bss:00000018 cnt.2239
C:\DOCUME~1\ADMINI~1\LOCALS~1\Temp/ccT5cFTS.s:1188   .bss:00000000 CountMilliseconds
C:\DOCUME~1\ADMINI~1\LOCALS~1\Temp/ccT5cFTS.s:1262   .data:00000008 cnt_1ms.2238
C:\DOCUME~1\ADMINI~1\LOCALS~1\Temp/ccT5cFTS.s:1194   .bss:00000002 UpdateMotor
C:\DOCUME~1\ADMINI~1\LOCALS~1\Temp/ccT5cFTS.s:1257   .bss:00000017 compass_active.2240
C:\DOCUME~1\ADMINI~1\LOCALS~1\Temp/ccT5cFTS.s:1206   .bss:00000005 beeptime
C:\DOCUME~1\ADMINI~1\LOCALS~1\Temp/ccT5cFTS.s:1224   .data:00000000 BeepMuster
C:\DOCUME~1\ADMINI~1\LOCALS~1\Temp/ccT5cFTS.s:1200   .bss:00000003 cntKompass
C:\DOCUME~1\ADMINI~1\LOCALS~1\Temp/ccT5cFTS.s:224    .text:00000206 SetDelay
C:\DOCUME~1\ADMINI~1\LOCALS~1\Temp/ccT5cFTS.s:239    .text:0000021a CheckDelay
C:\DOCUME~1\ADMINI~1\LOCALS~1\Temp/ccT5cFTS.s:255    .text:00000230 Delay_ms
C:\DOCUME~1\ADMINI~1\LOCALS~1\Temp/ccT5cFTS.s:281    .text:0000025c Delay_ms_Mess
C:\DOCUME~1\ADMINI~1\LOCALS~1\Temp/ccT5cFTS.s:315    .text:0000029c TIMER2_Init
                             .bss:0000000d CameraShutterCycle
C:\DOCUME~1\ADMINI~1\LOCALS~1\Temp/ccT5cFTS.s:376    .text:0000030a Timer_Init
C:\DOCUME~1\ADMINI~1\LOCALS~1\Temp/ccT5cFTS.s:1259   .bss:00000019 tim_main
C:\DOCUME~1\ADMINI~1\LOCALS~1\Temp/ccT5cFTS.s:403    .text:0000033a __vector_9
C:\DOCUME~1\ADMINI~1\LOCALS~1\Temp/ccT5cFTS.s:1256   .bss:00000016 PulseOutput.2393
C:\DOCUME~1\ADMINI~1\LOCALS~1\Temp/ccT5cFTS.s:1252   .data:00000006 ServoNickOffset.2397
C:\DOCUME~1\ADMINI~1\LOCALS~1\Temp/ccT5cFTS.s:1231   .bss:00000009 ServoNickValue
C:\DOCUME~1\ADMINI~1\LOCALS~1\Temp/ccT5cFTS.s:1255   .bss:00000014 RemainingPulse.2394
C:\DOCUME~1\ADMINI~1\LOCALS~1\Temp/ccT5cFTS.s:1254   .bss:00000012 ServoFrameTime.2395
C:\DOCUME~1\ADMINI~1\LOCALS~1\Temp/ccT5cFTS.s:1240   .bss:00000011 ServoIndex.2396
C:\DOCUME~1\ADMINI~1\LOCALS~1\Temp/ccT5cFTS.s:1248   .data:00000004 ServoRollOffset.2398
C:\DOCUME~1\ADMINI~1\LOCALS~1\Temp/ccT5cFTS.s:1237   .bss:0000000b ServoRollValue
C:\DOCUME~1\ADMINI~1\LOCALS~1\Temp/ccT5cFTS.s:1239   .bss:0000000f CameraShutterCycleCounter
C:\DOCUME~1\ADMINI~1\LOCALS~1\Temp/ccT5cFTS.s:1244   .data:00000002 CameraShutterCycleOnCount
C:\DOCUME~1\ADMINI~1\LOCALS~1\Temp/ccT5cFTS.s:1218   .bss:00000008 ServoActive

UNDEFINED SYMBOLS
SpektrumTimer
PlatinenVersion
NaviDataOkay
EE_Parameter
__udivmodhi4
KompassValue
KompassStartwert
__divmodhi4
KompassRichtung
AdReady
Parameter_UserParam8
Parameter_ServoNickControl
IntegralNick
__divmodsi4
__mulsi3
Parameter_ServoRollControl
IntegralRoll
PPM_in
Parameter_Servo4
Parameter_Servo5
SenderOkay
__do_copy_data
__do_clear_bss