Subversion Repositories FlightCtrl

Rev

Blame | Last modification | View Log | RSS feed

   1                            .file   "timer0.c"
   2                            .arch atmega644p
   3                    __SREG__ = 0x3f
   4                    __SP_H__ = 0x3e
   5                    __SP_L__ = 0x3d
   6                    __tmp_reg__ = 0
   7                    __zero_reg__ = 1
   8                            .global __do_copy_data
   9                            .global __do_clear_bss
  10                    .global ServoRollValue
  11                    .global ServoRollValue
  12                            .section .bss
  15                    ServoRollValue:
  16 0000 0000                  .skip 2,0
  17                    .global ServoNickValue
  18                    .global ServoNickValue
  21                    ServoNickValue:
  22 0002 0000                  .skip 2,0
  23                    .global BeepMuster
  24                            .data
  27                    BeepMuster:
  28 0000 FFFF                  .word   -1
  29                    .global ServoActive
  30                    .global ServoActive
  31                            .section .bss
  34                    ServoActive:
  35 0004 00                    .skip 1,0
  36                    .global SendSPI
  37                    .global SendSPI
  40                    SendSPI:
  41 0005 00                    .skip 1,0
  42                    .global beeptime
  43                    .global beeptime
  46                    beeptime:
  47 0006 0000                  .skip 2,0
  48                    .global cntKompass
  49                    .global cntKompass
  52                    cntKompass:
  53 0008 0000                  .skip 2,0
  54                    .global UpdateMotor
  55                    .global UpdateMotor
  58                    UpdateMotor:
  59 000a 00                    .skip 1,0
  60                    .global CountMilliseconds
  61                    .global CountMilliseconds
  64                    CountMilliseconds:
  65 000b 0000                  .skip 2,0
  66                            .data
  69                    CameraShutterCycleOnCount:
  70 0002 1400                  .word   20
  71                            .lcomm CameraShutterCycleCounter,2
  72                            .lcomm CameraShutterCycle,2
  75                    cnt_1ms.6:
  76 0004 01                    .byte   1
  77                            .lcomm cnt.7,1
  78                            .lcomm compass_active.8,1
  79                            .text
  80                    .global __vector_18
  82                    __vector_18:
  83                    /* prologue: frame size=0 */
  84 0000 1F92                  push __zero_reg__
  85 0002 0F92                  push __tmp_reg__
  86 0004 0FB6                  in __tmp_reg__,__SREG__
  87 0006 0F92                  push __tmp_reg__
  88 0008 1124                  clr __zero_reg__
  89 000a 2F93                  push r18
  90 000c 3F93                  push r19
  91 000e 5F93                  push r21
  92 0010 6F93                  push r22
  93 0012 7F93                  push r23
  94 0014 8F93                  push r24
  95 0016 9F93                  push r25
  96 0018 AF93                  push r26
  97 001a BF93                  push r27
  98 001c EF93                  push r30
  99 001e FF93                  push r31
 100                    /* prologue end (size=16) */
 101 0020 20E0                  ldi r18,lo8(0)
 102 0022 8091 0000             lds r24,SendSPI
 103 0026 8823                  tst r24
 104 0028 29F0                  breq .L2
 105 002a 8091 0000             lds r24,SendSPI
 106 002e 8150                  subi r24,lo8(-(-1))
 107 0030 8093 0000             sts SendSPI,r24
 108                    .L2:
 109 0034 8091 0000             lds r24,SpektrumTimer
 110 0038 8823                  tst r24
 111 003a 19F0                  breq .L3
 112 003c 8150                  subi r24,lo8(-(-1))
 113 003e 8093 0000             sts SpektrumTimer,r24
 114                    .L3:
 115 0042 8091 0000             lds r24,cnt.7
 116 0046 8150                  subi r24,lo8(-(-1))
 117 0048 8093 0000             sts cnt.7,r24
 118 004c 8F3F                  cpi r24,lo8(-1)
 119 004e 09F0                  breq .+2
 120 0050 57C0                  rjmp .L4
 121 0052 89E0                  ldi r24,lo8(9)
 122 0054 8093 0000             sts cnt.7,r24
 123 0058 8091 0000             lds r24,CountMilliseconds
 124 005c 9091 0000             lds r25,(CountMilliseconds)+1
 125 0060 0196                  adiw r24,1
 126 0062 9093 0000             sts (CountMilliseconds)+1,r25
 127 0066 8093 0000             sts CountMilliseconds,r24
 128 006a 8091 0000             lds r24,cnt_1ms.6
 129 006e 8F5F                  subi r24,lo8(-(1))
 130 0070 8170                  andi r24,lo8(1)
 131 0072 8093 0000             sts cnt_1ms.6,r24
 132 0076 8823                  tst r24
 133 0078 19F4                  brne .L5
 134 007a 81E0                  ldi r24,lo8(1)
 135 007c 8093 0000             sts UpdateMotor,r24
 136                    .L5:
 137 0080 86B1                  in r24,38-0x20
 138 0082 8091 0000             lds r24,beeptime
 139 0086 9091 0000             lds r25,(beeptime)+1
 140 008a 892B                  or r24,r25
 141 008c 21F1                  breq .L7
 142 008e 8091 0000             lds r24,beeptime
 143 0092 9091 0000             lds r25,(beeptime)+1
 144 0096 0B97                  sbiw r24,11
 145 0098 50F0                  brlo .L8
 146 009a 8091 0000             lds r24,beeptime
 147 009e 9091 0000             lds r25,(beeptime)+1
 148 00a2 0A97                  sbiw r24,10
 149 00a4 9093 0000             sts (beeptime)+1,r25
 150 00a8 8093 0000             sts beeptime,r24
 151 00ac 04C0                  rjmp .L9
 152                    .L8:
 153 00ae 1092 0000             sts (beeptime)+1,__zero_reg__
 154 00b2 1092 0000             sts beeptime,__zero_reg__
 155                    .L9:
 156 00b6 8091 0000             lds r24,beeptime
 157 00ba 9091 0000             lds r25,(beeptime)+1
 158 00be 2091 0000             lds r18,BeepMuster
 159 00c2 3091 0000             lds r19,(BeepMuster)+1
 160 00c6 8223                  and r24,r18
 161 00c8 9323                  and r25,r19
 162 00ca 892B                  or r24,r25
 163 00cc 11F0                  breq .L10
 164 00ce 21E0                  ldi r18,lo8(1)
 165 00d0 08C0                  rjmp .L12
 166                    .L10:
 167 00d2 20E0                  ldi r18,lo8(0)
 168 00d4 06C0                  rjmp .L12
 169                    .L7:
 170 00d6 8FEF                  ldi r24,lo8(-1)
 171 00d8 9FEF                  ldi r25,hi8(-1)
 172 00da 9093 0000             sts (BeepMuster)+1,r25
 173 00de 8093 0000             sts BeepMuster,r24
 174                    .L12:
 175 00e2 8091 0000             lds r24,PlatinenVersion
 176 00e6 2223                  tst r18
 177 00e8 31F0                  breq .L13
 178 00ea 8A30                  cpi r24,lo8(10)
 179 00ec 11F4                  brne .L14
 180 00ee 5A9A                  sbi 43-0x20,2
 181 00f0 07C0                  rjmp .L4
 182                    .L14:
 183 00f2 479A                  sbi 40-0x20,7
 184 00f4 05C0                  rjmp .L4
 185                    .L13:
 186 00f6 8A30                  cpi r24,lo8(10)
 187 00f8 11F4                  brne .L17
 188 00fa 5A98                  cbi 43-0x20,2
 189 00fc 01C0                  rjmp .L4
 190                    .L17:
 191 00fe 4798                  cbi 40-0x20,7
 192                    .L4:
 193 0100 8091 0000             lds r24,compass_active.8
 194 0104 8823                  tst r24
 195 0106 09F4                  brne .+2
 196 0108 72C0                  rjmp .L1
 197 010a 2091 0000             lds r18,NaviDataOkay
 198 010e 2223                  tst r18
 199 0110 09F0                  breq .+2
 200 0112 6DC0                  rjmp .L1
 201 0114 8091 0000             lds r24,EE_Parameter+13
 202 0118 83FF                  sbrs r24,3
 203 011a 69C0                  rjmp .L1
 204 011c 86B1                  in r24,38-0x20
 205 011e 9927                  clr r25
 206 0120 FC01                  movw r30,r24
 207 0122 E071                  andi r30,lo8(16)
 208 0124 F070                  andi r31,hi8(16)
 209 0126 84FF                  sbrs r24,4
 210 0128 14C0                  rjmp .L20
 211 012a 8091 0000             lds r24,cntKompass
 212 012e 9091 0000             lds r25,(cntKompass)+1
 213 0132 0196                  adiw r24,1
 214 0134 9093 0000             sts (cntKompass)+1,r25
 215 0138 8093 0000             sts cntKompass,r24
 216 013c 8091 0000             lds r24,cntKompass
 217 0140 9091 0000             lds r25,(cntKompass)+1
 218 0144 895E                  subi r24,lo8(1001)
 219 0146 9340                  sbci r25,hi8(1001)
 220 0148 08F4                  brsh .+2
 221 014a 51C0                  rjmp .L1
 222 014c 2093 0000             sts compass_active.8,r18
 223 0150 4EC0                  rjmp .L1
 224                    .L20:
 225 0152 8091 0000             lds r24,cntKompass
 226 0156 9091 0000             lds r25,(cntKompass)+1
 227 015a 892B                  or r24,r25
 228 015c 09F4                  brne .+2
 229 015e 43C0                  rjmp .L23
 230 0160 8091 0000             lds r24,cntKompass
 231 0164 9091 0000             lds r25,(cntKompass)+1
 232 0168 8A56                  subi r24,lo8(362)
 233 016a 9140                  sbci r25,hi8(362)
 234 016c E0F5                  brsh .L23
 235 016e 8091 0000             lds r24,cntKompass
 236 0172 9091 0000             lds r25,(cntKompass)+1
 237 0176 69E2                  ldi r22,lo8(41)
 238 0178 70E0                  ldi r23,hi8(41)
 239 017a 0E94 0000             call __udivmodhi4
 240 017e 8091 0000             lds r24,cntKompass
 241 0182 9091 0000             lds r25,(cntKompass)+1
 242 0186 860F                  add r24,r22
 243 0188 971F                  adc r25,r23
 244 018a 9093 0000             sts (cntKompass)+1,r25
 245 018e 8093 0000             sts cntKompass,r24
 246 0192 8091 0000             lds r24,cntKompass
 247 0196 9091 0000             lds r25,(cntKompass)+1
 248 019a 0B97                  sbiw r24,11
 249 019c 50F0                  brlo .L24
 250 019e 8091 0000             lds r24,cntKompass
 251 01a2 9091 0000             lds r25,(cntKompass)+1
 252 01a6 0A97                  sbiw r24,10
 253 01a8 9093 0000             sts (KompassValue)+1,r25
 254 01ac 8093 0000             sts KompassValue,r24
 255 01b0 04C0                  rjmp .L25
 256                    .L24:
 257 01b2 F093 0000             sts (KompassValue)+1,r31
 258 01b6 E093 0000             sts KompassValue,r30
 259                    .L25:
 260 01ba 8091 0000             lds r24,KompassValue
 261 01be 9091 0000             lds r25,(KompassValue)+1
 262 01c2 2091 0000             lds r18,KompassStartwert
 263 01c6 3091 0000             lds r19,(KompassStartwert)+1
 264 01ca 821B                  sub r24,r18
 265 01cc 930B                  sbc r25,r19
 266 01ce 845E                  subi r24,lo8(-(540))
 267 01d0 9D4F                  sbci r25,hi8(-(540))
 268 01d2 68E6                  ldi r22,lo8(360)
 269 01d4 71E0                  ldi r23,hi8(360)
 270 01d6 0E94 0000             call __divmodhi4
 271 01da 845B                  subi r24,lo8(-(-180))
 272 01dc 9040                  sbci r25,hi8(-(-180))
 273 01de 9093 0000             sts (KompassRichtung)+1,r25
 274 01e2 8093 0000             sts KompassRichtung,r24
 275                    .L23:
 276 01e6 1092 0000             sts (cntKompass)+1,__zero_reg__
 277 01ea 1092 0000             sts cntKompass,__zero_reg__
 278                    .L1:
 279                    /* epilogue: frame size=0 */
 280 01ee FF91                  pop r31
 281 01f0 EF91                  pop r30
 282 01f2 BF91                  pop r27
 283 01f4 AF91                  pop r26
 284 01f6 9F91                  pop r25
 285 01f8 8F91                  pop r24
 286 01fa 7F91                  pop r23
 287 01fc 6F91                  pop r22
 288 01fe 5F91                  pop r21
 289 0200 3F91                  pop r19
 290 0202 2F91                  pop r18
 291 0204 0F90                  pop __tmp_reg__
 292 0206 0FBE                  out __SREG__,__tmp_reg__
 293 0208 0F90                  pop __tmp_reg__
 294 020a 1F90                  pop __zero_reg__
 295 020c 1895                  reti
 296                    /* epilogue end (size=16) */
 297                    /* function __vector_18 size 267 (235) */
 299                    .global SetDelay
 301                    SetDelay:
 302                    /* prologue: frame size=0 */
 303                    /* prologue end (size=0) */
 304 020e 2091 0000             lds r18,CountMilliseconds
 305 0212 3091 0000             lds r19,(CountMilliseconds)+1
 306 0216 280F                  add r18,r24
 307 0218 391F                  adc r19,r25
 308 021a C901                  movw r24,r18
 309 021c 0196                  adiw r24,1
 310                    /* epilogue: frame size=0 */
 311 021e 0895                  ret
 312                    /* epilogue end (size=1) */
 313                    /* function SetDelay size 9 (8) */
 315                    .global CheckDelay
 317                    CheckDelay:
 318                    /* prologue: frame size=0 */
 319                    /* prologue end (size=0) */
 320 0220 2091 0000             lds r18,CountMilliseconds
 321 0224 3091 0000             lds r19,(CountMilliseconds)+1
 322 0228 821B                  sub r24,r18
 323 022a 930B                  sbc r25,r19
 324 022c 892F                  mov r24,r25
 325 022e 9927                  clr r25
 326 0230 8695                  lsr r24
 327 0232 8074                  andi r24,lo8(64)
 328 0234 9070                  andi r25,hi8(64)
 329                    /* epilogue: frame size=0 */
 330 0236 0895                  ret
 331                    /* epilogue end (size=1) */
 332                    /* function CheckDelay size 12 (11) */
 334                    .global Delay_ms
 336                    Delay_ms:
 337                    /* prologue: frame size=0 */
 338 0238 CF93                  push r28
 339 023a DF93                  push r29
 340                    /* prologue end (size=2) */
 341 023c 0E94 0000             call SetDelay
 342 0240 EC01                  movw r28,r24
 343                    .L29:
 344 0242 CE01                  movw r24,r28
 345 0244 0E94 0000             call CheckDelay
 346 0248 8823                  tst r24
 347 024a D9F3                  breq .L29
 348                    /* epilogue: frame size=0 */
 349 024c DF91                  pop r29
 350 024e CF91                  pop r28
 351 0250 0895                  ret
 352                    /* epilogue end (size=3) */
 353                    /* function Delay_ms size 13 (8) */
 355                    .global Delay_ms_Mess
 357                    Delay_ms_Mess:
 358                    /* prologue: frame size=0 */
 359 0252 CF93                  push r28
 360 0254 DF93                  push r29
 361                    /* prologue end (size=2) */
 362 0256 0E94 0000             call SetDelay
 363 025a EC01                  movw r28,r24
 364 025c 09C0                  rjmp .L40
 365                    .L36:
 366 025e 8091 0000             lds r24,AdReady
 367 0262 8823                  tst r24
 368 0264 29F0                  breq .L40
 369 0266 9093 0000             sts AdReady,r25
 370 026a 8FEC                  ldi r24,lo8(-49)
 371 026c 8093 7A00             sts 122,r24
 372                    .L40:
 373 0270 CE01                  movw r24,r28
 374 0272 0E94 0000             call CheckDelay
 375 0276 982F                  mov r25,r24
 376 0278 8823                  tst r24
 377 027a 89F3                  breq .L36
 378                    /* epilogue: frame size=0 */
 379 027c DF91                  pop r29
 380 027e CF91                  pop r28
 381 0280 0895                  ret
 382                    /* epilogue end (size=3) */
 383                    /* function Delay_ms_Mess size 24 (19) */
 385                    .global TIMER2_Init
 387                    TIMER2_Init:
 388                    /* prologue: frame size=0 */
 389                    /* prologue end (size=0) */
 390 0282 4FB7                  in r20,95-0x20
 391 0284 8091 0000             lds r24,Parameter_UserParam8
 392 0288 282F                  mov r18,r24
 393 028a 3327                  clr r19
 394 028c 2F77                  andi r18,lo8(127)
 395 028e 3070                  andi r19,hi8(127)
 396 0290 C901                  movw r24,r18
 397 0292 880F                  lsl r24
 398 0294 991F                  rol r25
 399 0296 880F                  lsl r24
 400 0298 991F                  rol r25
 401 029a 820F                  add r24,r18
 402 029c 931F                  adc r25,r19
 403 029e 9093 0000             sts (CameraShutterCycle)+1,r25
 404 02a2 8093 0000             sts CameraShutterCycle,r24
 405                    /* #APP */
 406 02a6 F894                  cli
 407                    /* #NOAPP */
 408 02a8 5F98                  cbi 43-0x20,7
 409 02aa 3E9A                  sbi 39-0x20,6
 410 02ac 469A                  sbi 40-0x20,6
 411 02ae 8091 B000             lds r24,176
 412 02b2 8F70                  andi r24,lo8(15)
 413 02b4 8093 B000             sts 176,r24
 414 02b8 8091 B000             lds r24,176
 415 02bc 8360                  ori r24,lo8(3)
 416 02be 8093 B000             sts 176,r24
 417 02c2 8091 B100             lds r24,177
 418 02c6 8B73                  andi r24,lo8(59)
 419 02c8 8093 B100             sts 177,r24
 420 02cc 8091 B100             lds r24,177
 421 02d0 8B60                  ori r24,lo8(11)
 422 02d2 8093 B100             sts 177,r24
 423 02d6 1092 B200             sts 178,__zero_reg__
 424 02da 8FEF                  ldi r24,lo8(-1)
 425 02dc 8093 B300             sts 179,r24
 426 02e0 8091 B000             lds r24,176
 427 02e4 8068                  ori r24,lo8(-128)
 428 02e6 8093 B000             sts 176,r24
 429 02ea 8091 7000             lds r24,112
 430 02ee 8A7F                  andi r24,lo8(-6)
 431 02f0 8093 7000             sts 112,r24
 432 02f4 8091 7000             lds r24,112
 433 02f8 8260                  ori r24,lo8(2)
 434 02fa 8093 7000             sts 112,r24
 435 02fe 4FBF                  out 95-0x20,r20
 436                    /* epilogue: frame size=0 */
 437 0300 0895                  ret
 438                    /* epilogue end (size=1) */
 439                    /* function TIMER2_Init size 65 (64) */
 441                    .global Timer_Init
 443                    Timer_Init:
 444                    /* prologue: frame size=0 */
 445                    /* prologue end (size=0) */
 446 0302 8AE0                  ldi r24,lo8(10)
 447 0304 90E0                  ldi r25,hi8(10)
 448 0306 0E94 0000             call SetDelay
 449 030a 9093 0000             sts (tim_main)+1,r25
 450 030e 8093 0000             sts tim_main,r24
 451 0312 82E0                  ldi r24,lo8(2)
 452 0314 85BD                  out 69-0x20,r24
 453 0316 83EA                  ldi r24,lo8(-93)
 454 0318 84BD                  out 68-0x20,r24
 455 031a 17BC                  out 71-0x20,__zero_reg__
 456 031c 84EB                  ldi r24,lo8(-76)
 457 031e 88BD                  out 72-0x20,r24
 458 0320 86E0                  ldi r24,lo8(6)
 459 0322 86BD                  out 70-0x20,r24
 460 0324 8091 6E00             lds r24,110
 461 0328 8160                  ori r24,lo8(1)
 462 032a 8093 6E00             sts 110,r24
 463                    /* epilogue: frame size=0 */
 464 032e 0895                  ret
 465                    /* epilogue end (size=1) */
 466                    /* function Timer_Init size 23 (22) */
 468                            .lcomm PulseOutput.0,1
 469                            .lcomm RemainingPulse.1,2
 470                            .lcomm ServoFrameTime.2,2
 471                            .lcomm ServoIndex.3,1
 472                            .data
 475                    ServoNickOffset.4:
 476 0005 FC01                  .word   508
 479                    ServoRollOffset.5:
 480 0007 FC01                  .word   508
 481                            .text
 482                    .global __vector_9
 484                    __vector_9:
 485                    /* prologue: frame size=0 */
 486 0330 1F92                  push __zero_reg__
 487 0332 0F92                  push __tmp_reg__
 488 0334 0FB6                  in __tmp_reg__,__SREG__
 489 0336 0F92                  push __tmp_reg__
 490 0338 1124                  clr __zero_reg__
 491 033a 2F93                  push r18
 492 033c 3F93                  push r19
 493 033e 4F93                  push r20
 494 0340 5F93                  push r21
 495 0342 6F93                  push r22
 496 0344 7F93                  push r23
 497 0346 8F93                  push r24
 498 0348 9F93                  push r25
 499 034a AF93                  push r26
 500 034c BF93                  push r27
 501 034e CF93                  push r28
 502 0350 DF93                  push r29
 503 0352 EF93                  push r30
 504 0354 FF93                  push r31
 505                    /* prologue end (size=19) */
 506 0356 8091 0000             lds r24,PlatinenVersion
 507 035a 8431                  cpi r24,lo8(20)
 508 035c 08F0                  brlo .+2
 509 035e 17C1                  rjmp .L44
 510 0360 8091 0000             lds r24,Parameter_UserParam8
 511 0364 87FD                  sbrc r24,7
 512 0366 13C1                  rjmp .L44
 513 0368 8091 0000             lds r24,PulseOutput.0
 514 036c 8823                  tst r24
 515 036e 09F0                  breq .+2
 516 0370 AEC3                  rjmp .L62
 517 0372 8091 B000             lds r24,176
 518 0376 86FF                  sbrs r24,6
 519 0378 ECC0                  rjmp .L46
 520 037a 8091 B000             lds r24,176
 521 037e 8F7B                  andi r24,lo8(-65)
 522 0380 8093 B000             sts 176,r24
 523 0384 89EA                  ldi r24,lo8(937)
 524 0386 93E0                  ldi r25,hi8(937)
 525 0388 9093 0000             sts (RemainingPulse.1)+1,r25
 526 038c 8093 0000             sts RemainingPulse.1,r24
 527 0390 8091 0000             lds r24,ServoNickOffset.4
 528 0394 9091 0000             lds r25,(ServoNickOffset.4)+1
 529 0398 9C01                  movw r18,r24
 530 039a 220F                  lsl r18
 531 039c 331F                  rol r19
 532 039e 280F                  add r18,r24
 533 03a0 391F                  adc r19,r25
 534 03a2 8091 0000             lds r24,Parameter_ServoNickControl
 535 03a6 9927                  clr r25
 536 03a8 880F                  lsl r24
 537 03aa 991F                  rol r25
 538 03ac 880F                  lsl r24
 539 03ae 991F                  rol r25
 540 03b0 280F                  add r18,r24
 541 03b2 391F                  adc r19,r25
 542 03b4 37FF                  sbrs r19,7
 543 03b6 02C0                  rjmp .L47
 544 03b8 2D5F                  subi r18,lo8(-(3))
 545 03ba 3F4F                  sbci r19,hi8(-(3))
 546                    .L47:
 547 03bc C901                  movw r24,r18
 548 03be 9595                  asr r25
 549 03c0 8795                  ror r24
 550 03c2 9595                  asr r25
 551 03c4 8795                  ror r24
 552 03c6 9093 0000             sts (ServoNickOffset.4)+1,r25
 553 03ca 8093 0000             sts ServoNickOffset.4,r24
 554 03ce 9093 0000             sts (ServoNickValue)+1,r25
 555 03d2 8093 0000             sts ServoNickValue,r24
 556 03d6 8091 0000             lds r24,EE_Parameter+98
 557 03da 6091 0000             lds r22,EE_Parameter+46
 558 03de 2091 0000             lds r18,IntegralNick
 559 03e2 3091 0000             lds r19,(IntegralNick)+1
 560 03e6 4091 0000             lds r20,(IntegralNick)+2
 561 03ea 5091 0000             lds r21,(IntegralNick)+3
 562 03ee 80FF                  sbrs r24,0
 563 03f0 2CC0                  rjmp .L48
 564 03f2 7727                  clr r23
 565 03f4 8827                  clr r24
 566 03f6 9927                  clr r25
 567 03f8 EA01                  movw r28,r20
 568 03fa D901                  movw r26,r18
 569 03fc 57FF                  sbrs r21,7
 570 03fe 04C0                  rjmp .L49
 571 0400 A158                  subi r26,lo8(-(127))
 572 0402 BF4F                  sbci r27,hi8(-(127))
 573 0404 CF4F                  sbci r28,hlo8(-(127))
 574 0406 DF4F                  sbci r29,hhi8(-(127))
 575                    .L49:
 576 0408 E7E0                  ldi r30,7
 577 040a D595          1:      asr r29
 578 040c C795                  ror r28
 579 040e B795                  ror r27
 580 0410 A795                  ror r26
 581 0412 EA95                  dec r30
 582 0414 D1F7                  brne 1b
 583 0416 9D01                  movw r18,r26
 584 0418 AE01                  movw r20,r28
 585 041a 0E94 0000             call __mulsi3
 586 041e 9B01                  movw r18,r22
 587 0420 AC01                  movw r20,r24
 588 0422 97FF                  sbrs r25,7
 589 0424 04C0                  rjmp .L50
 590 0426 215C                  subi r18,lo8(-(63))
 591 0428 3F4F                  sbci r19,hi8(-(63))
 592 042a 4F4F                  sbci r20,hlo8(-(63))
 593 042c 5F4F                  sbci r21,hhi8(-(63))
 594                    .L50:
 595 042e 66E0                  ldi r22,6
 596 0430 5595          1:      asr r21
 597 0432 4795                  ror r20
 598 0434 3795                  ror r19
 599 0436 2795                  ror r18
 600 0438 6A95                  dec r22
 601 043a D1F7                  brne 1b
 602 043c 8091 0000             lds r24,ServoNickValue
 603 0440 9091 0000             lds r25,(ServoNickValue)+1
 604 0444 820F                  add r24,r18
 605 0446 931F                  adc r25,r19
 606 0448 2BC0                  rjmp .L121
 607                    .L48:
 608 044a 7727                  clr r23
 609 044c 8827                  clr r24
 610 044e 9927                  clr r25
 611 0450 EA01                  movw r28,r20
 612 0452 D901                  movw r26,r18
 613 0454 57FF                  sbrs r21,7
 614 0456 04C0                  rjmp .L52
 615 0458 A158                  subi r26,lo8(-(127))
 616 045a BF4F                  sbci r27,hi8(-(127))
 617 045c CF4F                  sbci r28,hlo8(-(127))
 618 045e DF4F                  sbci r29,hhi8(-(127))
 619                    .L52:
 620 0460 27E0                  ldi r18,7
 621 0462 D595          1:      asr r29
 622 0464 C795                  ror r28
 623 0466 B795                  ror r27
 624 0468 A795                  ror r26
 625 046a 2A95                  dec r18
 626 046c D1F7                  brne 1b
 627 046e 9D01                  movw r18,r26
 628 0470 AE01                  movw r20,r28
 629 0472 0E94 0000             call __mulsi3
 630 0476 9B01                  movw r18,r22
 631 0478 AC01                  movw r20,r24
 632 047a 97FF                  sbrs r25,7
 633 047c 04C0                  rjmp .L53
 634 047e 215C                  subi r18,lo8(-(63))
 635 0480 3F4F                  sbci r19,hi8(-(63))
 636 0482 4F4F                  sbci r20,hlo8(-(63))
 637 0484 5F4F                  sbci r21,hhi8(-(63))
 638                    .L53:
 639 0486 F6E0                  ldi r31,6
 640 0488 5595          1:      asr r21
 641 048a 4795                  ror r20
 642 048c 3795                  ror r19
 643 048e 2795                  ror r18
 644 0490 FA95                  dec r31
 645 0492 D1F7                  brne 1b
 646 0494 8091 0000             lds r24,ServoNickValue
 647 0498 9091 0000             lds r25,(ServoNickValue)+1
 648 049c 821B                  sub r24,r18
 649 049e 930B                  sbc r25,r19
 650                    .L121:
 651 04a0 9093 0000             sts (ServoNickValue)+1,r25
 652 04a4 8093 0000             sts ServoNickValue,r24
 653 04a8 8091 0000             lds r24,EE_Parameter+47
 654 04ac 282F                  mov r18,r24
 655 04ae 3327                  clr r19
 656 04b0 220F                  lsl r18
 657 04b2 331F                  rol r19
 658 04b4 220F                  lsl r18
 659 04b6 331F                  rol r19
 660 04b8 8091 0000             lds r24,ServoNickValue
 661 04bc 9091 0000             lds r25,(ServoNickValue)+1
 662 04c0 8217                  cp r24,r18
 663 04c2 9307                  cpc r25,r19
 664 04c4 7CF0                  brlt .L122
 665 04c6 8091 0000             lds r24,EE_Parameter+48
 666 04ca 282F                  mov r18,r24
 667 04cc 3327                  clr r19
 668 04ce 220F                  lsl r18
 669 04d0 331F                  rol r19
 670 04d2 220F                  lsl r18
 671 04d4 331F                  rol r19
 672 04d6 8091 0000             lds r24,ServoNickValue
 673 04da 9091 0000             lds r25,(ServoNickValue)+1
 674 04de 2817                  cp r18,r24
 675 04e0 3907                  cpc r19,r25
 676 04e2 24F4                  brge .L55
 677                    .L122:
 678 04e4 3093 0000             sts (ServoNickValue)+1,r19
 679 04e8 2093 0000             sts ServoNickValue,r18
 680                    .L55:
 681 04ec 2091 0000             lds r18,RemainingPulse.1
 682 04f0 3091 0000             lds r19,(RemainingPulse.1)+1
 683 04f4 8091 0000             lds r24,ServoNickValue
 684 04f8 9091 0000             lds r25,(ServoNickValue)+1
 685 04fc 280F                  add r18,r24
 686 04fe 391F                  adc r19,r25
 687 0500 2050                  subi r18,lo8(-(-512))
 688 0502 3240                  sbci r19,hi8(-(-512))
 689 0504 3093 0000             sts (RemainingPulse.1)+1,r19
 690 0508 2093 0000             sts RemainingPulse.1,r18
 691 050c 8091 0000             lds r24,ServoNickValue
 692 0510 9091 0000             lds r25,(ServoNickValue)+1
 693 0514 97FD                  sbrc r25,7
 694 0516 0396                  adiw r24,3
 695                    .L57:
 696 0518 9595                  asr r25
 697 051a 8795                  ror r24
 698 051c 9595                  asr r25
 699 051e 8795                  ror r24
 700 0520 9093 0000             sts (ServoNickValue)+1,r25
 701 0524 8093 0000             sts ServoNickValue,r24
 702 0528 45E0                  ldi r20,hi8(1501)
 703 052a 2D3D                  cpi r18,lo8(1501)
 704 052c 3407                  cpc r19,r20
 705 052e 18F0                  brlo .L58
 706 0530 8CED                  ldi r24,lo8(1500)
 707 0532 95E0                  ldi r25,hi8(1500)
 708 0534 05C0                  rjmp .L123
 709                    .L58:
 710 0536 2757                  subi r18,lo8(375)
 711 0538 3140                  sbci r19,hi8(375)
 712 053a 30F4                  brsh .L59
 713 053c 87E7                  ldi r24,lo8(375)
 714 053e 91E0                  ldi r25,hi8(375)
 715                    .L123:
 716 0540 9093 0000             sts (RemainingPulse.1)+1,r25
 717 0544 8093 0000             sts RemainingPulse.1,r24
 718                    .L59:
 719 0548 8091 0000             lds r24,RemainingPulse.1
 720 054c 9091 0000             lds r25,(RemainingPulse.1)+1
 721 0550 87C2                  rjmp .L134
 722                    .L46:
 723 0552 8091 B000             lds r24,176
 724 0556 8064                  ori r24,lo8(64)
 725 0558 8093 B000             sts 176,r24
 726 055c 8091 0000             lds r24,EE_Parameter+53
 727 0560 282F                  mov r18,r24
 728 0562 3327                  clr r19
 729 0564 8DED                  ldi r24,lo8(1757)
 730 0566 96E0                  ldi r25,hi8(1757)
 731 0568 289F                  mul r18,r24
 732 056a A001                  movw r20,r0
 733 056c 299F                  mul r18,r25
 734 056e 500D                  add r21,r0
 735 0570 389F                  mul r19,r24
 736 0572 500D                  add r21,r0
 737 0574 1124                  clr r1
 738 0576 CA01                  movw r24,r20
 739 0578 2091 0000             lds r18,ServoFrameTime.2
 740 057c 3091 0000             lds r19,(ServoFrameTime.2)+1
 741 0580 821B                  sub r24,r18
 742 0582 930B                  sbc r25,r19
 743 0584 9093 0000             sts (RemainingPulse.1)+1,r25
 744 0588 8093 0000             sts RemainingPulse.1,r24
 745 058c 9DC2                  rjmp .L109
 746                    .L44:
 747 058e 8091 0000             lds r24,PulseOutput.0
 748 0592 8823                  tst r24
 749 0594 09F0                  breq .+2
 750 0596 9BC2                  rjmp .L62
 751 0598 8091 B000             lds r24,176
 752 059c 86FF                  sbrs r24,6
 753 059e 65C2                  rjmp .L64
 754 05a0 8091 B000             lds r24,176
 755 05a4 8F7B                  andi r24,lo8(-65)
 756 05a6 8093 B000             sts 176,r24
 757 05aa E091 0000             lds r30,ServoIndex.3
 758 05ae EE23                  tst r30
 759 05b0 F1F4                  brne .L65
 760 05b2 8091 0000             lds r24,EE_Parameter+53
 761 05b6 282F                  mov r18,r24
 762 05b8 3327                  clr r19
 763 05ba 8DED                  ldi r24,lo8(1757)
 764 05bc 96E0                  ldi r25,hi8(1757)
 765 05be 289F                  mul r18,r24
 766 05c0 A001                  movw r20,r0
 767 05c2 299F                  mul r18,r25
 768 05c4 500D                  add r21,r0
 769 05c6 389F                  mul r19,r24
 770 05c8 500D                  add r21,r0
 771 05ca 1124                  clr r1
 772 05cc CA01                  movw r24,r20
 773 05ce 2091 0000             lds r18,ServoFrameTime.2
 774 05d2 3091 0000             lds r19,(ServoFrameTime.2)+1
 775 05d6 821B                  sub r24,r18
 776 05d8 930B                  sbc r25,r19
 777 05da 9093 0000             sts (RemainingPulse.1)+1,r25
 778 05de 8093 0000             sts RemainingPulse.1,r24
 779 05e2 1092 0000             sts (ServoFrameTime.2)+1,__zero_reg__
 780 05e6 1092 0000             sts ServoFrameTime.2,__zero_reg__
 781 05ea 469A                  sbi 40-0x20,6
 782 05ec 6DC2                  rjmp .L109
 783                    .L65:
 784 05ee 49EA                  ldi r20,lo8(937)
 785 05f0 53E0                  ldi r21,hi8(937)
 786 05f2 5093 0000             sts (RemainingPulse.1)+1,r21
 787 05f6 4093 0000             sts RemainingPulse.1,r20
 788 05fa 8E2F                  mov r24,r30
 789 05fc 9927                  clr r25
 790 05fe 8330                  cpi r24,3
 791 0600 9105                  cpc r25,__zero_reg__
 792 0602 09F4                  brne .+2
 793 0604 A4C1                  rjmp .L92
 794 0606 8430                  cpi r24,4
 795 0608 9105                  cpc r25,__zero_reg__
 796 060a 3CF4                  brge .L105
 797 060c 8130                  cpi r24,1
 798 060e 9105                  cpc r25,__zero_reg__
 799 0610 61F0                  breq .L68
 800 0612 0297                  sbiw r24,2
 801 0614 09F4                  brne .+2
 802 0616 D2C0                  rjmp .L80
 803 0618 ECC1                  rjmp .L104
 804                    .L105:
 805 061a 8430                  cpi r24,4
 806 061c 9105                  cpc r25,__zero_reg__
 807 061e 09F4                  brne .+2
 808 0620 DBC1                  rjmp .L102
 809 0622 0597                  sbiw r24,5
 810 0624 09F4                  brne .+2
 811 0626 DBC1                  rjmp .L103
 812 0628 E4C1                  rjmp .L104
 813                    .L68:
 814 062a 8091 0000             lds r24,ServoNickOffset.4
 815 062e 9091 0000             lds r25,(ServoNickOffset.4)+1
 816 0632 9C01                  movw r18,r24
 817 0634 220F                  lsl r18
 818 0636 331F                  rol r19
 819 0638 280F                  add r18,r24
 820 063a 391F                  adc r19,r25
 821 063c 8091 0000             lds r24,Parameter_ServoNickControl
 822 0640 9927                  clr r25
 823 0642 880F                  lsl r24
 824 0644 991F                  rol r25
 825 0646 880F                  lsl r24
 826 0648 991F                  rol r25
 827 064a 280F                  add r18,r24
 828 064c 391F                  adc r19,r25
 829 064e 37FF                  sbrs r19,7
 830 0650 02C0                  rjmp .L69
 831 0652 2D5F                  subi r18,lo8(-(3))
 832 0654 3F4F                  sbci r19,hi8(-(3))
 833                    .L69:
 834 0656 C901                  movw r24,r18
 835 0658 9595                  asr r25
 836 065a 8795                  ror r24
 837 065c 9595                  asr r25
 838 065e 8795                  ror r24
 839 0660 9093 0000             sts (ServoNickOffset.4)+1,r25
 840 0664 8093 0000             sts ServoNickOffset.4,r24
 841 0668 9093 0000             sts (ServoNickValue)+1,r25
 842 066c 8093 0000             sts ServoNickValue,r24
 843 0670 8091 0000             lds r24,EE_Parameter+98
 844 0674 6091 0000             lds r22,EE_Parameter+46
 845 0678 2091 0000             lds r18,IntegralNick
 846 067c 3091 0000             lds r19,(IntegralNick)+1
 847 0680 4091 0000             lds r20,(IntegralNick)+2
 848 0684 5091 0000             lds r21,(IntegralNick)+3
 849 0688 80FF                  sbrs r24,0
 850 068a 2CC0                  rjmp .L70
 851 068c 7727                  clr r23
 852 068e 8827                  clr r24
 853 0690 9927                  clr r25
 854 0692 EA01                  movw r28,r20
 855 0694 D901                  movw r26,r18
 856 0696 57FF                  sbrs r21,7
 857 0698 04C0                  rjmp .L71
 858 069a A158                  subi r26,lo8(-(127))
 859 069c BF4F                  sbci r27,hi8(-(127))
 860 069e CF4F                  sbci r28,hlo8(-(127))
 861 06a0 DF4F                  sbci r29,hhi8(-(127))
 862                    .L71:
 863 06a2 27E0                  ldi r18,7
 864 06a4 D595          1:      asr r29
 865 06a6 C795                  ror r28
 866 06a8 B795                  ror r27
 867 06aa A795                  ror r26
 868 06ac 2A95                  dec r18
 869 06ae D1F7                  brne 1b
 870 06b0 9D01                  movw r18,r26
 871 06b2 AE01                  movw r20,r28
 872 06b4 0E94 0000             call __mulsi3
 873 06b8 9B01                  movw r18,r22
 874 06ba AC01                  movw r20,r24
 875 06bc 97FF                  sbrs r25,7
 876 06be 04C0                  rjmp .L72
 877 06c0 215C                  subi r18,lo8(-(63))
 878 06c2 3F4F                  sbci r19,hi8(-(63))
 879 06c4 4F4F                  sbci r20,hlo8(-(63))
 880 06c6 5F4F                  sbci r21,hhi8(-(63))
 881                    .L72:
 882 06c8 F6E0                  ldi r31,6
 883 06ca 5595          1:      asr r21
 884 06cc 4795                  ror r20
 885 06ce 3795                  ror r19
 886 06d0 2795                  ror r18
 887 06d2 FA95                  dec r31
 888 06d4 D1F7                  brne 1b
 889 06d6 8091 0000             lds r24,ServoNickValue
 890 06da 9091 0000             lds r25,(ServoNickValue)+1
 891 06de 820F                  add r24,r18
 892 06e0 931F                  adc r25,r19
 893 06e2 27C0                  rjmp .L124
 894                    .L70:
 895 06e4 7727                  clr r23
 896 06e6 8827                  clr r24
 897 06e8 9927                  clr r25
 898 06ea 57FF                  sbrs r21,7
 899 06ec 04C0                  rjmp .L74
 900 06ee 2158                  subi r18,lo8(-(127))
 901 06f0 3F4F                  sbci r19,hi8(-(127))
 902 06f2 4F4F                  sbci r20,hlo8(-(127))
 903 06f4 5F4F                  sbci r21,hhi8(-(127))
 904                    .L74:
 905 06f6 E7E0                  ldi r30,7
 906 06f8 5595          1:      asr r21
 907 06fa 4795                  ror r20
 908 06fc 3795                  ror r19
 909 06fe 2795                  ror r18
 910 0700 EA95                  dec r30
 911 0702 D1F7                  brne 1b
 912 0704 0E94 0000             call __mulsi3
 913 0708 9B01                  movw r18,r22
 914 070a AC01                  movw r20,r24
 915 070c 97FF                  sbrs r25,7
 916 070e 04C0                  rjmp .L75
 917 0710 215C                  subi r18,lo8(-(63))
 918 0712 3F4F                  sbci r19,hi8(-(63))
 919 0714 4F4F                  sbci r20,hlo8(-(63))
 920 0716 5F4F                  sbci r21,hhi8(-(63))
 921                    .L75:
 922 0718 66E0                  ldi r22,6
 923 071a 5595          1:      asr r21
 924 071c 4795                  ror r20
 925 071e 3795                  ror r19
 926 0720 2795                  ror r18
 927 0722 6A95                  dec r22
 928 0724 D1F7                  brne 1b
 929 0726 8091 0000             lds r24,ServoNickValue
 930 072a 9091 0000             lds r25,(ServoNickValue)+1
 931 072e 821B                  sub r24,r18
 932 0730 930B                  sbc r25,r19
 933                    .L124:
 934 0732 9093 0000             sts (ServoNickValue)+1,r25
 935 0736 8093 0000             sts ServoNickValue,r24
 936 073a 8091 0000             lds r24,EE_Parameter+47
 937 073e 282F                  mov r18,r24
 938 0740 3327                  clr r19
 939 0742 220F                  lsl r18
 940 0744 331F                  rol r19
 941 0746 220F                  lsl r18
 942 0748 331F                  rol r19
 943 074a 8091 0000             lds r24,ServoNickValue
 944 074e 9091 0000             lds r25,(ServoNickValue)+1
 945 0752 8217                  cp r24,r18
 946 0754 9307                  cpc r25,r19
 947 0756 7CF0                  brlt .L125
 948 0758 8091 0000             lds r24,EE_Parameter+48
 949 075c 282F                  mov r18,r24
 950 075e 3327                  clr r19
 951 0760 220F                  lsl r18
 952 0762 331F                  rol r19
 953 0764 220F                  lsl r18
 954 0766 331F                  rol r19
 955 0768 8091 0000             lds r24,ServoNickValue
 956 076c 9091 0000             lds r25,(ServoNickValue)+1
 957 0770 2817                  cp r18,r24
 958 0772 3907                  cpc r19,r25
 959 0774 24F4                  brge .L77
 960                    .L125:
 961 0776 3093 0000             sts (ServoNickValue)+1,r19
 962 077a 2093 0000             sts ServoNickValue,r18
 963                    .L77:
 964 077e 8091 0000             lds r24,RemainingPulse.1
 965 0782 9091 0000             lds r25,(RemainingPulse.1)+1
 966 0786 2091 0000             lds r18,ServoNickValue
 967 078a 3091 0000             lds r19,(ServoNickValue)+1
 968 078e 820F                  add r24,r18
 969 0790 931F                  adc r25,r19
 970 0792 8050                  subi r24,lo8(-(-512))
 971 0794 9240                  sbci r25,hi8(-(-512))
 972 0796 9093 0000             sts (RemainingPulse.1)+1,r25
 973 079a 8093 0000             sts RemainingPulse.1,r24
 974 079e 8091 0000             lds r24,ServoNickValue
 975 07a2 9091 0000             lds r25,(ServoNickValue)+1
 976 07a6 97FD                  sbrc r25,7
 977 07a8 0396                  adiw r24,3
 978                    .L79:
 979 07aa 9595                  asr r25
 980 07ac 8795                  ror r24
 981 07ae 9595                  asr r25
 982 07b0 8795                  ror r24
 983 07b2 9093 0000             sts (ServoNickValue)+1,r25
 984 07b6 8093 0000             sts ServoNickValue,r24
 985 07ba 2EC1                  rjmp .L67
 986                    .L80:
 987 07bc 8091 0000             lds r24,ServoRollOffset.5
 988 07c0 9091 0000             lds r25,(ServoRollOffset.5)+1
 989 07c4 9C01                  movw r18,r24
 990 07c6 220F                  lsl r18
 991 07c8 331F                  rol r19
 992 07ca 280F                  add r18,r24
 993 07cc 391F                  adc r19,r25
 994 07ce 8091 0000             lds r24,Parameter_ServoRollControl
 995 07d2 9927                  clr r25
 996 07d4 880F                  lsl r24
 997 07d6 991F                  rol r25
 998 07d8 880F                  lsl r24
 999 07da 991F                  rol r25
 1000 07dc 280F                 add r18,r24
 1001 07de 391F                 adc r19,r25
 1002 07e0 37FF                 sbrs r19,7
 1003 07e2 02C0                 rjmp .L81
 1004 07e4 2D5F                 subi r18,lo8(-(3))
 1005 07e6 3F4F                 sbci r19,hi8(-(3))
 1006                   .L81:
 1007 07e8 C901                 movw r24,r18
 1008 07ea 9595                 asr r25
 1009 07ec 8795                 ror r24
 1010 07ee 9595                 asr r25
 1011 07f0 8795                 ror r24
 1012 07f2 9093 0000            sts (ServoRollOffset.5)+1,r25
 1013 07f6 8093 0000            sts ServoRollOffset.5,r24
 1014 07fa 9093 0000            sts (ServoRollValue)+1,r25
 1015 07fe 8093 0000            sts ServoRollValue,r24
 1016 0802 8091 0000            lds r24,EE_Parameter+98
 1017 0806 6091 0000            lds r22,EE_Parameter+50
 1018 080a A091 0000            lds r26,IntegralRoll
 1019 080e B091 0000            lds r27,(IntegralRoll)+1
 1020 0812 C091 0000            lds r28,(IntegralRoll)+2
 1021 0816 D091 0000            lds r29,(IntegralRoll)+3
 1022 081a 81FF                 sbrs r24,1
 1023 081c 2AC0                 rjmp .L82
 1024 081e 7727                 clr r23
 1025 0820 8827                 clr r24
 1026 0822 9927                 clr r25
 1027 0824 9D01                 movw r18,r26
 1028 0826 AE01                 movw r20,r28
 1029 0828 D7FF                 sbrs r29,7
 1030 082a 04C0                 rjmp .L83
 1031 082c 2158                 subi r18,lo8(-(127))
 1032 082e 3F4F                 sbci r19,hi8(-(127))
 1033 0830 4F4F                 sbci r20,hlo8(-(127))
 1034 0832 5F4F                 sbci r21,hhi8(-(127))
 1035                   .L83:
 1036 0834 E7E0                 ldi r30,7
 1037 0836 5595         1:      asr r21
 1038 0838 4795                 ror r20
 1039 083a 3795                 ror r19
 1040 083c 2795                 ror r18
 1041 083e EA95                 dec r30
 1042 0840 D1F7                 brne 1b
 1043 0842 0E94 0000            call __mulsi3
 1044 0846 9B01                 movw r18,r22
 1045 0848 AC01                 movw r20,r24
 1046 084a 97FF                 sbrs r25,7
 1047 084c 04C0                 rjmp .L84
 1048 084e 215C                 subi r18,lo8(-(63))
 1049 0850 3F4F                 sbci r19,hi8(-(63))
 1050 0852 4F4F                 sbci r20,hlo8(-(63))
 1051 0854 5F4F                 sbci r21,hhi8(-(63))
 1052                   .L84:
 1053 0856 C6E0                 ldi r28,6
 1054 0858 5595         1:      asr r21
 1055 085a 4795                 ror r20
 1056 085c 3795                 ror r19
 1057 085e 2795                 ror r18
 1058 0860 CA95                 dec r28
 1059 0862 D1F7                 brne 1b
 1060 0864 8091 0000            lds r24,ServoRollValue
 1061 0868 9091 0000            lds r25,(ServoRollValue)+1
 1062 086c 820F                 add r24,r18
 1063 086e 931F                 adc r25,r19
 1064 0870 29C0                 rjmp .L126
 1065                   .L82:
 1066 0872 7727                 clr r23
 1067 0874 8827                 clr r24
 1068 0876 9927                 clr r25
 1069 0878 9D01                 movw r18,r26
 1070 087a AE01                 movw r20,r28
 1071 087c D7FF                 sbrs r29,7
 1072 087e 04C0                 rjmp .L86
 1073 0880 2158                 subi r18,lo8(-(127))
 1074 0882 3F4F                 sbci r19,hi8(-(127))
 1075 0884 4F4F                 sbci r20,hlo8(-(127))
 1076 0886 5F4F                 sbci r21,hhi8(-(127))
 1077                   .L86:
 1078 0888 B7E0                 ldi r27,7
 1079 088a 5595         1:      asr r21
 1080 088c 4795                 ror r20
 1081 088e 3795                 ror r19
 1082 0890 2795                 ror r18
 1083 0892 BA95                 dec r27
 1084 0894 D1F7                 brne 1b
 1085 0896 0E94 0000            call __mulsi3
 1086 089a 9B01                 movw r18,r22
 1087 089c AC01                 movw r20,r24
 1088 089e 97FF                 sbrs r25,7
 1089 08a0 04C0                 rjmp .L87
 1090 08a2 215C                 subi r18,lo8(-(63))
 1091 08a4 3F4F                 sbci r19,hi8(-(63))
 1092 08a6 4F4F                 sbci r20,hlo8(-(63))
 1093 08a8 5F4F                 sbci r21,hhi8(-(63))
 1094                   .L87:
 1095 08aa A6E0                 ldi r26,6
 1096 08ac 5595         1:      asr r21
 1097 08ae 4795                 ror r20
 1098 08b0 3795                 ror r19
 1099 08b2 2795                 ror r18
 1100 08b4 AA95                 dec r26
 1101 08b6 D1F7                 brne 1b
 1102 08b8 8091 0000            lds r24,ServoRollValue
 1103 08bc 9091 0000            lds r25,(ServoRollValue)+1
 1104 08c0 821B                 sub r24,r18
 1105 08c2 930B                 sbc r25,r19
 1106                   .L126:
 1107 08c4 9093 0000            sts (ServoRollValue)+1,r25
 1108 08c8 8093 0000            sts ServoRollValue,r24
 1109 08cc 8091 0000            lds r24,EE_Parameter+51
 1110 08d0 282F                 mov r18,r24
 1111 08d2 3327                 clr r19
 1112 08d4 220F                 lsl r18
 1113 08d6 331F                 rol r19
 1114 08d8 220F                 lsl r18
 1115 08da 331F                 rol r19
 1116 08dc 8091 0000            lds r24,ServoRollValue
 1117 08e0 9091 0000            lds r25,(ServoRollValue)+1
 1118 08e4 8217                 cp r24,r18
 1119 08e6 9307                 cpc r25,r19
 1120 08e8 7CF0                 brlt .L127
 1121 08ea 8091 0000            lds r24,EE_Parameter+52
 1122 08ee 282F                 mov r18,r24
 1123 08f0 3327                 clr r19
 1124 08f2 220F                 lsl r18
 1125 08f4 331F                 rol r19
 1126 08f6 220F                 lsl r18
 1127 08f8 331F                 rol r19
 1128 08fa 8091 0000            lds r24,ServoRollValue
 1129 08fe 9091 0000            lds r25,(ServoRollValue)+1
 1130 0902 2817                 cp r18,r24
 1131 0904 3907                 cpc r19,r25
 1132 0906 24F4                 brge .L89
 1133                   .L127:
 1134 0908 3093 0000            sts (ServoRollValue)+1,r19
 1135 090c 2093 0000            sts ServoRollValue,r18
 1136                   .L89:
 1137 0910 8091 0000            lds r24,RemainingPulse.1
 1138 0914 9091 0000            lds r25,(RemainingPulse.1)+1
 1139 0918 2091 0000            lds r18,ServoRollValue
 1140 091c 3091 0000            lds r19,(ServoRollValue)+1
 1141 0920 820F                 add r24,r18
 1142 0922 931F                 adc r25,r19
 1143 0924 8050                 subi r24,lo8(-(-512))
 1144 0926 9240                 sbci r25,hi8(-(-512))
 1145 0928 9093 0000            sts (RemainingPulse.1)+1,r25
 1146 092c 8093 0000            sts RemainingPulse.1,r24
 1147 0930 8091 0000            lds r24,ServoRollValue
 1148 0934 9091 0000            lds r25,(ServoRollValue)+1
 1149 0938 97FD                 sbrc r25,7
 1150 093a 0396                 adiw r24,3
 1151                   .L91:
 1152 093c 9595                 asr r25
 1153 093e 8795                 ror r24
 1154 0940 9595                 asr r25
 1155 0942 8795                 ror r24
 1156 0944 9093 0000            sts (ServoRollValue)+1,r25
 1157 0948 8093 0000            sts ServoRollValue,r24
 1158 094c 65C0                 rjmp .L67
 1159                   .L92:
 1160 094e 8091 0000            lds r24,EE_Parameter+7
 1161 0952 E82F                 mov r30,r24
 1162 0954 FF27                 clr r31
 1163 0956 EE0F                 add r30,r30
 1164 0958 FF1F                 adc r31,r31
 1165 095a E050                 subi r30,lo8(-(PPM_in))
 1166 095c F040                 sbci r31,hi8(-(PPM_in))
 1167 095e 8081                 ld r24,Z
 1168 0960 9181                 ldd r25,Z+1
 1169 0962 805E                 subi r24,lo8(-32)
 1170 0964 9F4F                 sbci r25,hi8(-32)
 1171 0966 ACF1                 brlt .L132
 1172 0968 8081                 ld r24,Z
 1173 096a 9181                 ldd r25,Z+1
 1174 096c 8197                 sbiw r24,33
 1175 096e 1CF0                 brlt .L95
 1176 0970 8CED                 ldi r24,lo8(1500)
 1177 0972 95E0                 ldi r25,hi8(1500)
 1178 0974 4DC0                 rjmp .L128
 1179                   .L95:
 1180 0976 8091 0000            lds r24,CameraShutterCycle
 1181 097a 9091 0000            lds r25,(CameraShutterCycle)+1
 1182 097e C297                 sbiw r24,50
 1183 0980 78F0                 brlo .L129
 1184 0982 2091 0000            lds r18,CameraShutterCycleCounter
 1185 0986 3091 0000            lds r19,(CameraShutterCycleCounter)+1
 1186 098a 8091 0000            lds r24,CameraShutterCycle
 1187 098e 9091 0000            lds r25,(CameraShutterCycle)+1
 1188 0992 2817                 cp r18,r24
 1189 0994 3907                 cpc r19,r25
 1190 0996 49F4                 brne .L99
 1191 0998 1092 0000            sts (CameraShutterCycleCounter)+1,__zero_reg__
 1192 099c 1092 0000            sts CameraShutterCycleCounter,__zero_reg__
 1193                   .L129:
 1194 09a0 5093 0000            sts (RemainingPulse.1)+1,r21
 1195 09a4 4093 0000            sts RemainingPulse.1,r20
 1196 09a8 37C0                 rjmp .L67
 1197                   .L99:
 1198 09aa 8091 0000            lds r24,CameraShutterCycleCounter
 1199 09ae 9091 0000            lds r25,(CameraShutterCycleCounter)+1
 1200 09b2 0196                 adiw r24,1
 1201 09b4 9093 0000            sts (CameraShutterCycleCounter)+1,r25
 1202 09b8 8093 0000            sts CameraShutterCycleCounter,r24
 1203 09bc 2091 0000            lds r18,CameraShutterCycleCounter
 1204 09c0 3091 0000            lds r19,(CameraShutterCycleCounter)+1
 1205 09c4 8091 0000            lds r24,CameraShutterCycleOnCount
 1206 09c8 9091 0000            lds r25,(CameraShutterCycleOnCount)+1
 1207 09cc 2817                 cp r18,r24
 1208 09ce 3907                 cpc r19,r25
 1209 09d0 19F5                 brne .L67
 1210                   .L132:
 1211 09d2 87E7                 ldi r24,lo8(375)
 1212 09d4 91E0                 ldi r25,hi8(375)
 1213 09d6 1CC0                 rjmp .L128
 1214                   .L102:
 1215 09d8 8091 0000            lds r24,Parameter_Servo4
 1216 09dc 02C0                 rjmp .L133
 1217                   .L103:
 1218 09de 8091 0000            lds r24,Parameter_Servo5
 1219                   .L133:
 1220 09e2 9927                 clr r25
 1221 09e4 880F                 lsl r24
 1222 09e6 991F                 rol r25
 1223 09e8 880F                 lsl r24
 1224 09ea 991F                 rol r25
 1225 09ec 8755                 subi r24,lo8(-(425))
 1226 09ee 9E4F                 sbci r25,hi8(-(425))
 1227 09f0 0FC0                 rjmp .L128
 1228                   .L104:
 1229 09f2 FF27                 clr r31
 1230 09f4 EE0F                 add r30,r30
 1231 09f6 FF1F                 adc r31,r31
 1232 09f8 E050                 subi r30,lo8(-(PPM_in))
 1233 09fa F040                 sbci r31,hi8(-(PPM_in))
 1234 09fc 2081                 ld r18,Z
 1235 09fe 3181                 ldd r19,Z+1
 1236 0a00 220F                 add r18,r18
 1237 0a02 331F                 adc r19,r19
 1238 0a04 8091 0000            lds r24,RemainingPulse.1
 1239 0a08 9091 0000            lds r25,(RemainingPulse.1)+1
 1240 0a0c 820F                 add r24,r18
 1241 0a0e 931F                 adc r25,r19
 1242                   .L128:
 1243 0a10 9093 0000            sts (RemainingPulse.1)+1,r25
 1244 0a14 8093 0000            sts RemainingPulse.1,r24
 1245                   .L67:
 1246 0a18 8091 0000            lds r24,RemainingPulse.1
 1247 0a1c 9091 0000            lds r25,(RemainingPulse.1)+1
 1248 0a20 45E0                 ldi r20,hi8(1501)
 1249 0a22 8D3D                 cpi r24,lo8(1501)
 1250 0a24 9407                 cpc r25,r20
 1251 0a26 18F0                 brlo .L106
 1252 0a28 8CED                 ldi r24,lo8(1500)
 1253 0a2a 95E0                 ldi r25,hi8(1500)
 1254 0a2c 05C0                 rjmp .L130
 1255                   .L106:
 1256 0a2e 8757                 subi r24,lo8(375)
 1257 0a30 9140                 sbci r25,hi8(375)
 1258 0a32 30F4                 brsh .L107
 1259 0a34 87E7                 ldi r24,lo8(375)
 1260 0a36 91E0                 ldi r25,hi8(375)
 1261                   .L130:
 1262 0a38 9093 0000            sts (RemainingPulse.1)+1,r25
 1263 0a3c 8093 0000            sts RemainingPulse.1,r24
 1264                   .L107:
 1265 0a40 2091 0000            lds r18,RemainingPulse.1
 1266 0a44 3091 0000            lds r19,(RemainingPulse.1)+1
 1267 0a48 2C5B                 subi r18,lo8(-(-188))
 1268 0a4a 3040                 sbci r19,hi8(-(-188))
 1269 0a4c 3093 0000            sts (RemainingPulse.1)+1,r19
 1270 0a50 2093 0000            sts RemainingPulse.1,r18
 1271 0a54 8091 0000            lds r24,ServoFrameTime.2
 1272 0a58 9091 0000            lds r25,(ServoFrameTime.2)+1
 1273 0a5c 820F                 add r24,r18
 1274 0a5e 931F                 adc r25,r19
 1275                   .L134:
 1276 0a60 9093 0000            sts (ServoFrameTime.2)+1,r25
 1277 0a64 8093 0000            sts ServoFrameTime.2,r24
 1278 0a68 2FC0                 rjmp .L109
 1279                   .L64:
 1280 0a6a 8091 B000            lds r24,176
 1281 0a6e 8064                 ori r24,lo8(64)
 1282 0a70 8093 B000            sts 176,r24
 1283 0a74 8CEB                 ldi r24,lo8(188)
 1284 0a76 90E0                 ldi r25,hi8(188)
 1285 0a78 9093 0000            sts (RemainingPulse.1)+1,r25
 1286 0a7c 8093 0000            sts RemainingPulse.1,r24
 1287 0a80 8091 0000            lds r24,ServoFrameTime.2
 1288 0a84 9091 0000            lds r25,(ServoFrameTime.2)+1
 1289 0a88 8454                 subi r24,lo8(-(188))
 1290 0a8a 9F4F                 sbci r25,hi8(-(188))
 1291 0a8c 9093 0000            sts (ServoFrameTime.2)+1,r25
 1292 0a90 8093 0000            sts ServoFrameTime.2,r24
 1293 0a94 8091 0000            lds r24,ServoActive
 1294 0a98 8823                 tst r24
 1295 0a9a 21F0                 breq .L112
 1296 0a9c 8091 0000            lds r24,SenderOkay
 1297 0aa0 853B                 cpi r24,lo8(-75)
 1298 0aa2 20F4                 brsh .L111
 1299                   .L112:
 1300 0aa4 8091 0000            lds r24,ServoActive
 1301 0aa8 8230                 cpi r24,lo8(2)
 1302 0aaa 11F4                 brne .L110
 1303                   .L111:
 1304 0aac 4698                 cbi 40-0x20,6
 1305 0aae 01C0                 rjmp .L113
 1306                   .L110:
 1307 0ab0 469A                 sbi 40-0x20,6
 1308                   .L113:
 1309 0ab2 8091 0000            lds r24,ServoIndex.3
 1310 0ab6 8F5F                 subi r24,lo8(-(1))
 1311 0ab8 8093 0000            sts ServoIndex.3,r24
 1312 0abc 9091 0000            lds r25,EE_Parameter+53
 1313 0ac0 9817                 cp r25,r24
 1314 0ac2 10F4                 brsh .L109
 1315 0ac4 1092 0000            sts ServoIndex.3,__zero_reg__
 1316                   .L109:
 1317 0ac8 81E0                 ldi r24,lo8(1)
 1318 0aca 8093 0000            sts PulseOutput.0,r24
 1319                   .L62:
 1320 0ace 2091 0000            lds r18,RemainingPulse.1
 1321 0ad2 3091 0000            lds r19,(RemainingPulse.1)+1
 1322 0ad6 81E0                 ldi r24,hi8(383)
 1323 0ad8 2F37                 cpi r18,lo8(383)
 1324 0ada 3807                 cpc r19,r24
 1325 0adc 30F0                 brlo .L115
 1326 0ade 8FEF                 ldi r24,lo8(-1)
 1327 0ae0 8093 B300            sts 179,r24
 1328 0ae4 2F5F                 subi r18,lo8(-(-255))
 1329 0ae6 3040                 sbci r19,hi8(-(-255))
 1330 0ae8 0FC0                 rjmp .L131
 1331                   .L115:
 1332 0aea 2F3F                 cpi r18,255
 1333 0aec 3105                 cpc r19,__zero_reg__
 1334 0aee C9F0                 breq .L117
 1335 0af0 C0F0                 brlo .L117
 1336 0af2 A901                 movw r20,r18
 1337 0af4 4F5F                 subi r20,lo8(-(-255))
 1338 0af6 5040                 sbci r21,hi8(-(-255))
 1339 0af8 4F37                 cpi r20,127
 1340 0afa 5105                 cpc r21,__zero_reg__
 1341 0afc 50F4                 brsh .L118
 1342 0afe 80E8                 ldi r24,lo8(-128)
 1343 0b00 8093 B300            sts 179,r24
 1344 0b04 2058                 subi r18,lo8(-(-128))
 1345 0b06 3040                 sbci r19,hi8(-(-128))
 1346                   .L131:
 1347 0b08 3093 0000            sts (RemainingPulse.1)+1,r19
 1348 0b0c 2093 0000            sts RemainingPulse.1,r18
 1349 0b10 12C0                 rjmp .L43
 1350                   .L118:
 1351 0b12 8FEF                 ldi r24,lo8(-1)
 1352 0b14 8093 B300            sts 179,r24
 1353 0b18 5093 0000            sts (RemainingPulse.1)+1,r21
 1354 0b1c 4093 0000            sts RemainingPulse.1,r20
 1355 0b20 0AC0                 rjmp .L43
 1356                   .L117:
 1357 0b22 8091 0000            lds r24,RemainingPulse.1
 1358 0b26 8093 B300            sts 179,r24
 1359 0b2a 1092 0000            sts (RemainingPulse.1)+1,__zero_reg__
 1360 0b2e 1092 0000            sts RemainingPulse.1,__zero_reg__
 1361 0b32 1092 0000            sts PulseOutput.0,__zero_reg__
 1362                   .L43:
 1363                   /* epilogue: frame size=0 */
 1364 0b36 FF91                 pop r31
 1365 0b38 EF91                 pop r30
 1366 0b3a DF91                 pop r29
 1367 0b3c CF91                 pop r28
 1368 0b3e BF91                 pop r27
 1369 0b40 AF91                 pop r26
 1370 0b42 9F91                 pop r25
 1371 0b44 8F91                 pop r24
 1372 0b46 7F91                 pop r23
 1373 0b48 6F91                 pop r22
 1374 0b4a 5F91                 pop r21
 1375 0b4c 4F91                 pop r20
 1376 0b4e 3F91                 pop r19
 1377 0b50 2F91                 pop r18
 1378 0b52 0F90                 pop __tmp_reg__
 1379 0b54 0FBE                 out __SREG__,__tmp_reg__
 1380 0b56 0F90                 pop __tmp_reg__
 1381 0b58 1F90                 pop __zero_reg__
 1382 0b5a 1895                 reti
 1383                   /* epilogue end (size=19) */
 1384                   /* function __vector_9 size 1056 (1018) */
 1386                           .lcomm tim_main,2
 1387                   /* File "timer0.c": code 1469 = 0x05bd (1385), prologues  39, epilogues  45 */
DEFINED SYMBOLS
                            *ABS*:00000000 timer0.c
C:\Users\Arthur-P\AppData\Local\Temp/ccIhcaaa.s:3      *ABS*:0000003f __SREG__
C:\Users\Arthur-P\AppData\Local\Temp/ccIhcaaa.s:4      *ABS*:0000003e __SP_H__
C:\Users\Arthur-P\AppData\Local\Temp/ccIhcaaa.s:5      *ABS*:0000003d __SP_L__
C:\Users\Arthur-P\AppData\Local\Temp/ccIhcaaa.s:6      *ABS*:00000000 __tmp_reg__
C:\Users\Arthur-P\AppData\Local\Temp/ccIhcaaa.s:7      *ABS*:00000001 __zero_reg__
C:\Users\Arthur-P\AppData\Local\Temp/ccIhcaaa.s:15     .bss:00000000 ServoRollValue
C:\Users\Arthur-P\AppData\Local\Temp/ccIhcaaa.s:21     .bss:00000002 ServoNickValue
C:\Users\Arthur-P\AppData\Local\Temp/ccIhcaaa.s:27     .data:00000000 BeepMuster
C:\Users\Arthur-P\AppData\Local\Temp/ccIhcaaa.s:34     .bss:00000004 ServoActive
C:\Users\Arthur-P\AppData\Local\Temp/ccIhcaaa.s:40     .bss:00000005 SendSPI
C:\Users\Arthur-P\AppData\Local\Temp/ccIhcaaa.s:46     .bss:00000006 beeptime
C:\Users\Arthur-P\AppData\Local\Temp/ccIhcaaa.s:52     .bss:00000008 cntKompass
C:\Users\Arthur-P\AppData\Local\Temp/ccIhcaaa.s:58     .bss:0000000a UpdateMotor
C:\Users\Arthur-P\AppData\Local\Temp/ccIhcaaa.s:64     .bss:0000000b CountMilliseconds
C:\Users\Arthur-P\AppData\Local\Temp/ccIhcaaa.s:69     .data:00000002 CameraShutterCycleOnCount
                             .bss:0000000d CameraShutterCycleCounter
C:\Users\Arthur-P\AppData\Local\Temp/ccIhcaaa.s:71     .bss:0000000f CameraShutterCycle
C:\Users\Arthur-P\AppData\Local\Temp/ccIhcaaa.s:75     .data:00000004 cnt_1ms.6
C:\Users\Arthur-P\AppData\Local\Temp/ccIhcaaa.s:72     .bss:00000011 cnt.7
C:\Users\Arthur-P\AppData\Local\Temp/ccIhcaaa.s:77     .bss:00000012 compass_active.8
C:\Users\Arthur-P\AppData\Local\Temp/ccIhcaaa.s:82     .text:00000000 __vector_18
C:\Users\Arthur-P\AppData\Local\Temp/ccIhcaaa.s:301    .text:0000020e SetDelay
C:\Users\Arthur-P\AppData\Local\Temp/ccIhcaaa.s:317    .text:00000220 CheckDelay
C:\Users\Arthur-P\AppData\Local\Temp/ccIhcaaa.s:336    .text:00000238 Delay_ms
C:\Users\Arthur-P\AppData\Local\Temp/ccIhcaaa.s:357    .text:00000252 Delay_ms_Mess
C:\Users\Arthur-P\AppData\Local\Temp/ccIhcaaa.s:387    .text:00000282 TIMER2_Init
C:\Users\Arthur-P\AppData\Local\Temp/ccIhcaaa.s:443    .text:00000302 Timer_Init
C:\Users\Arthur-P\AppData\Local\Temp/ccIhcaaa.s:471    .bss:00000019 tim_main
C:\Users\Arthur-P\AppData\Local\Temp/ccIhcaaa.s:78     .bss:00000013 PulseOutput.0
C:\Users\Arthur-P\AppData\Local\Temp/ccIhcaaa.s:468    .bss:00000014 RemainingPulse.1
C:\Users\Arthur-P\AppData\Local\Temp/ccIhcaaa.s:469    .bss:00000016 ServoFrameTime.2
C:\Users\Arthur-P\AppData\Local\Temp/ccIhcaaa.s:470    .bss:00000018 ServoIndex.3
C:\Users\Arthur-P\AppData\Local\Temp/ccIhcaaa.s:475    .data:00000005 ServoNickOffset.4
C:\Users\Arthur-P\AppData\Local\Temp/ccIhcaaa.s:479    .data:00000007 ServoRollOffset.5
C:\Users\Arthur-P\AppData\Local\Temp/ccIhcaaa.s:484    .text:00000330 __vector_9

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