Subversion Repositories FlightCtrl

Rev

Blame | Last modification | View Log | RSS feed

   1                            .file   "rc.c"
   2                            .arch atmega644
   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 NewPpmData
  11                            .data
  14                    NewPpmData:
  15 0000 01                    .byte   1
  16                    .global tmpChannels
  17                    .global tmpChannels
  18                            .section .bss
  21                    tmpChannels:
  22 0000 00                    .skip 1,0
  23                            .text
  24                    .global rc_sum_init
  26                    rc_sum_init:
  27                    /* prologue: frame size=0 */
  28                    /* prologue end (size=0) */
  29 0000 83EC                  ldi r24,lo8(-61)
  30 0002 8093 8100             sts 129,r24
  31 0006 8091 6F00             lds r24,111
  32 000a 8062                  ori r24,lo8(32)
  33 000c 8093 6F00             sts 111,r24
  34 0010 1092 0000             sts (AdNeutralGier)+1,__zero_reg__
  35 0014 1092 0000             sts AdNeutralGier,__zero_reg__
  36 0018 1092 0000             sts (AdNeutralRoll)+1,__zero_reg__
  37 001c 1092 0000             sts AdNeutralRoll,__zero_reg__
  38 0020 1092 0000             sts (AdNeutralNick)+1,__zero_reg__
  39 0024 1092 0000             sts AdNeutralNick,__zero_reg__
  40                    /* epilogue: frame size=0 */
  41 0028 0895                  ret
  42                    /* epilogue end (size=1) */
  43                    /* function rc_sum_init size 21 (20) */
  45                            .lcomm AltICR.0,2
  46                            .lcomm index.1,2
  47                    .global __vector_12
  49                    __vector_12:
  50                    /* prologue: frame size=0 */
  51 002a 1F92                  push __zero_reg__
  52 002c 0F92                  push __tmp_reg__
  53 002e 0FB6                  in __tmp_reg__,__SREG__
  54 0030 0F92                  push __tmp_reg__
  55 0032 1124                  clr __zero_reg__
  56 0034 EF92                  push r14
  57 0036 FF92                  push r15
  58 0038 0F93                  push r16
  59 003a 1F93                  push r17
  60 003c 2F93                  push r18
  61 003e 3F93                  push r19
  62 0040 4F93                  push r20
  63 0042 5F93                  push r21
  64 0044 6F93                  push r22
  65 0046 7F93                  push r23
  66 0048 8F93                  push r24
  67 004a 9F93                  push r25
  68 004c AF93                  push r26
  69 004e BF93                  push r27
  70 0050 CF93                  push r28
  71 0052 DF93                  push r29
  72 0054 EF93                  push r30
  73 0056 FF93                  push r31
  74                    /* prologue end (size=23) */
  75 0058 2091 8600             lds r18,134
  76 005c 3091 8700             lds r19,(134)+1
  77 0060 8091 0000             lds r24,AltICR.0
  78 0064 9091 0000             lds r25,(AltICR.0)+1
  79 0068 281B                  sub r18,r24
  80 006a 390B                  sbc r19,r25
  81 006c 8091 8600             lds r24,134
  82 0070 9091 8700             lds r25,(134)+1
  83 0074 9093 0000             sts (AltICR.0)+1,r25
  84 0078 8093 0000             sts AltICR.0,r24
  85 007c C901                  movw r24,r18
  86 007e 8D54                  subi r24,lo8(-(-1101))
  87 0080 9440                  sbci r25,hi8(-(-1101))
  88 0082 835F                  subi r24,lo8(6899)
  89 0084 9A41                  sbci r25,hi8(6899)
  90 0086 00F4                  brsh .L3
  91 0088 8091 0000             lds r24,index.1
  92 008c 8093 0000             sts Channels,r24
  93 0090 8091 0000             lds r24,index.1
  94 0094 9091 0000             lds r25,(index.1)+1
  95 0098 0497                  sbiw r24,4
  96 009a 04F0                  brlt .L4
  97 009c 1092 0000             sts NewPpmData,__zero_reg__
  98                    .L4:
  99 00a0 C1E0                  ldi r28,lo8(1)
 100 00a2 D0E0                  ldi r29,hi8(1)
 101 00a4 D093 0000             sts (index.1)+1,r29
 102 00a8 C093 0000             sts index.1,r28
 103 00ac 00C0                  rjmp .L2
 104                    .L3:
 105 00ae C091 0000             lds r28,index.1
 106 00b2 D091 0000             lds r29,(index.1)+1
 107 00b6 CA30                  cpi r28,10
 108 00b8 D105                  cpc r29,__zero_reg__
 109 00ba 04F0                  brlt .+2
 110 00bc 00C0                  rjmp .L2
 111 00be C901                  movw r24,r18
 112 00c0 8B5F                  subi r24,lo8(-(-251))
 113 00c2 9040                  sbci r25,hi8(-(-251))
 114 00c4 845B                  subi r24,lo8(436)
 115 00c6 9140                  sbci r25,hi8(436)
 116 00c8 00F0                  brlo .L26
 117                    .L7:
 118 00ca FE01                  movw r30,r28
 119 00cc 3196                  adiw r30,1
 120 00ce F093 0000             sts (index.1)+1,r31
 121 00d2 E093 0000             sts index.1,r30
 122 00d6 E530                  cpi r30,5
 123 00d8 F105                  cpc r31,__zero_reg__
 124 00da 01F4                  brne .+2
 125 00dc 00C0                  rjmp .L27
 126 00de 5D98                  cbi 43-0x20,5
 127                    .L19:
 128 00e0 E630                  cpi r30,6
 129 00e2 F105                  cpc r31,__zero_reg__
 130 00e4 01F4                  brne .+2
 131 00e6 00C0                  rjmp .L28
 132 00e8 5C98                  cbi 43-0x20,4
 133                    .L21:
 134 00ea 3797                  sbiw r30,7
 135 00ec 01F4                  brne .+2
 136 00ee 00C0                  rjmp .L29
 137 00f0 5B98                  cbi 43-0x20,3
 138 00f2 00C0                  rjmp .L2
 139                    .L26:
 140 00f4 225D                  subi r18,lo8(-(-466))
 141 00f6 3140                  sbci r19,hi8(-(-466))
 142 00f8 FE01                  movw r30,r28
 143 00fa EC0F                  add r30,r28
 144 00fc FD1F                  adc r31,r29
 145 00fe E050                  subi r30,lo8(-(PPM_in))
 146 0100 F040                  sbci r31,hi8(-(PPM_in))
 147 0102 8081                  ld r24,Z
 148 0104 9181                  ldd r25,Z+1
 149 0106 F901                  movw r30,r18
 150 0108 E81B                  sub r30,r24
 151 010a F90B                  sbc r31,r25
 152 010c CF01                  movw r24,r30
 153 010e F7FD                  sbrc r31,7
 154 0110 00C0                  rjmp .L30
 155                    .L9:
 156 0112 0697                  sbiw r24,6
 157 0114 04F4                  brge .L8
 158 0116 8091 0000             lds r24,SenderOkay
 159 011a 883C                  cpi r24,lo8(-56)
 160 011c 00F0                  brlo .+2
 161 011e 00C0                  rjmp .L10
 162 0120 8091 0000             lds r24,SenderOkay
 163 0124 865F                  subi r24,lo8(-(10))
 164 0126 8093 0000             sts SenderOkay,r24
 165                    .L8:
 166 012a FE01                  movw r30,r28
 167 012c EC0F                  add r30,r28
 168 012e FD1F                  adc r31,r29
 169 0130 E050                  subi r30,lo8(-(PPM_in))
 170 0132 F040                  sbci r31,hi8(-(PPM_in))
 171 0134 8081                  ld r24,Z
 172 0136 9181                  ldd r25,Z+1
 173 0138 AC01                  movw r20,r24
 174 013a 440F                  lsl r20
 175 013c 551F                  rol r21
 176 013e 480F                  add r20,r24
 177 0140 591F                  adc r21,r25
 178 0142 420F                  add r20,r18
 179 0144 531F                  adc r21,r19
 180 0146 57FD                  sbrc r21,7
 181 0148 00C0                  rjmp .L31
 182                    .L12:
 183 014a 7A01                  movw r14,r20
 184 014c F594                  asr r15
 185 014e E794                  ror r14
 186 0150 F594                  asr r15
 187 0152 E794                  ror r14
 188 0154 C901                  movw r24,r18
 189 0156 0196                  adiw r24,1
 190 0158 8E15                  cp r24,r14
 191 015a 9F05                  cpc r25,r15
 192 015c 04F4                  brge .L13
 193 015e 0894                  sec
 194 0160 E108                  sbc r14,__zero_reg__
 195 0162 F108                  sbc r15,__zero_reg__
 196                    .L14:
 197 0164 8091 0000             lds r24,SenderOkay
 198 0168 833C                  cpi r24,lo8(-61)
 199 016a 00F0                  brlo .L16
 200 016c 8E01                  movw r16,r28
 201 016e 0C0F                  add r16,r28
 202 0170 1D1F                  adc r17,r29
 203 0172 F801                  movw r30,r16
 204 0174 E050                  subi r30,lo8(-(PPM_in))
 205 0176 F040                  sbci r31,hi8(-(PPM_in))
 206 0178 8081                  ld r24,Z
 207 017a 9181                  ldd r25,Z+1
 208 017c 9701                  movw r18,r14
 209 017e 281B                  sub r18,r24
 210 0180 390B                  sbc r19,r25
 211 0182 C901                  movw r24,r18
 212 0184 63E0                  ldi r22,lo8(3)
 213 0186 70E0                  ldi r23,hi8(3)
 214 0188 0E94 0000             call __divmodhi4
 215 018c CB01                  movw r24,r22
 216 018e 880F                  lsl r24
 217 0190 991F                  rol r25
 218 0192 860F                  add r24,r22
 219 0194 971F                  adc r25,r23
 220 0196 0050                  subi r16,lo8(-(PPM_diff))
 221 0198 1040                  sbci r17,hi8(-(PPM_diff))
 222 019a F801                  movw r30,r16
 223 019c 9183                  std Z+1,r25
 224 019e 8083                  st Z,r24
 225                    .L17:
 226 01a0 FE01                  movw r30,r28
 227 01a2 EC0F                  add r30,r28
 228 01a4 FD1F                  adc r31,r29
 229 01a6 E050                  subi r30,lo8(-(PPM_in))
 230 01a8 F040                  sbci r31,hi8(-(PPM_in))
 231 01aa F182                  std Z+1,r15
 232 01ac E082                  st Z,r14
 233 01ae 00C0                  rjmp .L7
 234                    .L29:
 235 01b0 5B9A                  sbi 43-0x20,3
 236 01b2 00C0                  rjmp .L2
 237                    .L28:
 238 01b4 5C9A                  sbi 43-0x20,4
 239 01b6 00C0                  rjmp .L21
 240                    .L27:
 241 01b8 5D9A                  sbi 43-0x20,5
 242 01ba 00C0                  rjmp .L19
 243                    .L16:
 244 01bc FE01                  movw r30,r28
 245 01be EC0F                  add r30,r28
 246 01c0 FD1F                  adc r31,r29
 247 01c2 E050                  subi r30,lo8(-(PPM_diff))
 248 01c4 F040                  sbci r31,hi8(-(PPM_diff))
 249 01c6 1182                  std Z+1,__zero_reg__
 250 01c8 1082                  st Z,__zero_reg__
 251 01ca 00C0                  rjmp .L17
 252                    .L13:
 253 01cc 2150                  subi r18,lo8(-(-1))
 254 01ce 3040                  sbci r19,hi8(-(-1))
 255 01d0 E216                  cp r14,r18
 256 01d2 F306                  cpc r15,r19
 257 01d4 04F4                  brge .L14
 258 01d6 0894                  sec
 259 01d8 E11C                  adc r14,__zero_reg__
 260 01da F11C                  adc r15,__zero_reg__
 261 01dc 00C0                  rjmp .L14
 262                    .L10:
 263 01de 88EC                  ldi r24,lo8(-56)
 264 01e0 8093 0000             sts SenderOkay,r24
 265 01e4 00C0                  rjmp .L8
 266                    .L31:
 267 01e6 4D5F                  subi r20,lo8(-(3))
 268 01e8 5F4F                  sbci r21,hi8(-(3))
 269 01ea 00C0                  rjmp .L12
 270                    .L30:
 271 01ec 9095                  com r25
 272 01ee 8195                  neg r24
 273 01f0 9F4F                  sbci r25,lo8(-1)
 274 01f2 00C0                  rjmp .L9
 275                    .L2:
 276                    /* epilogue: frame size=0 */
 277 01f4 FF91                  pop r31
 278 01f6 EF91                  pop r30
 279 01f8 DF91                  pop r29
 280 01fa CF91                  pop r28
 281 01fc BF91                  pop r27
 282 01fe AF91                  pop r26
 283 0200 9F91                  pop r25
 284 0202 8F91                  pop r24
 285 0204 7F91                  pop r23
 286 0206 6F91                  pop r22
 287 0208 5F91                  pop r21
 288 020a 4F91                  pop r20
 289 020c 3F91                  pop r19
 290 020e 2F91                  pop r18
 291 0210 1F91                  pop r17
 292 0212 0F91                  pop r16
 293 0214 FF90                  pop r15
 294 0216 EF90                  pop r14
 295 0218 0F90                  pop __tmp_reg__
 296 021a 0FBE                  out __SREG__,__tmp_reg__
 297 021c 0F90                  pop __tmp_reg__
 298 021e 1F90                  pop __zero_reg__
 299 0220 1895                  reti
 300                    /* epilogue end (size=23) */
 301                    /* function __vector_12 size 257 (211) */
 303                            .comm PPM_in,22,1
 304                            .comm PPM_diff,22,1
 305                            .comm Channels,1,1
 306                            .comm Mixer,77,1
 307                    /* File "rc.c": code  278 = 0x0116 ( 231), prologues  23, epilogues  24 */
DEFINED SYMBOLS
                            *ABS*:00000000 rc.c
C:\Users\Bernd\AppData\Local\Temp/ccgzl0K0.s:3      *ABS*:0000003f __SREG__
C:\Users\Bernd\AppData\Local\Temp/ccgzl0K0.s:4      *ABS*:0000003e __SP_H__
C:\Users\Bernd\AppData\Local\Temp/ccgzl0K0.s:5      *ABS*:0000003d __SP_L__
C:\Users\Bernd\AppData\Local\Temp/ccgzl0K0.s:6      *ABS*:00000000 __tmp_reg__
C:\Users\Bernd\AppData\Local\Temp/ccgzl0K0.s:7      *ABS*:00000001 __zero_reg__
C:\Users\Bernd\AppData\Local\Temp/ccgzl0K0.s:14     .data:00000000 NewPpmData
C:\Users\Bernd\AppData\Local\Temp/ccgzl0K0.s:21     .bss:00000000 tmpChannels
C:\Users\Bernd\AppData\Local\Temp/ccgzl0K0.s:26     .text:00000000 rc_sum_init
                             .bss:00000001 AltICR.0
C:\Users\Bernd\AppData\Local\Temp/ccgzl0K0.s:45     .bss:00000003 index.1
C:\Users\Bernd\AppData\Local\Temp/ccgzl0K0.s:49     .text:0000002a __vector_12
                            *COM*:00000001 Channels
                            *COM*:00000016 PPM_in
                            *COM*:00000016 PPM_diff
                            *COM*:0000004d Mixer

UNDEFINED SYMBOLS
__do_copy_data
__do_clear_bss
AdNeutralGier
AdNeutralRoll
AdNeutralNick
SenderOkay
__divmodhi4