Subversion Repositories FlightCtrl

Rev

Go to most recent revision | 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                            .text
  11                    .global rc_sum_init
  13                    rc_sum_init:
  14                    /* prologue: frame size=0 */
  15                    /* prologue end (size=0) */
  16 0000 83EC                  ldi r24,lo8(-61)
  17 0002 8093 8100             sts 129,r24
  18 0006 EFE6                  ldi r30,lo8(111)
  19 0008 F0E0                  ldi r31,hi8(111)
  20 000a 8081                  ld r24,Z
  21 000c 8062                  ori r24,lo8(32)
  22 000e 8083                  st Z,r24
  23 0010 1092 0000             sts (AdNeutralGier)+1,__zero_reg__
  24 0014 1092 0000             sts AdNeutralGier,__zero_reg__
  25 0018 1092 0000             sts (AdNeutralRoll)+1,__zero_reg__
  26 001c 1092 0000             sts AdNeutralRoll,__zero_reg__
  27 0020 1092 0000             sts (AdNeutralNick)+1,__zero_reg__
  28 0024 1092 0000             sts AdNeutralNick,__zero_reg__
  29                    /* epilogue: frame size=0 */
  30 0028 0895                  ret
  31                    /* epilogue end (size=1) */
  32                    /* function rc_sum_init size 21 (20) */
  34                    .global __vector_12
  36                    __vector_12:
  37                    /* prologue: frame size=0 */
  38 002a 1F92                  push __zero_reg__
  39 002c 0F92                  push __tmp_reg__
  40 002e 0FB6                  in __tmp_reg__,__SREG__
  41 0030 0F92                  push __tmp_reg__
  42 0032 1124                  clr __zero_reg__
  43 0034 0F93                  push r16
  44 0036 1F93                  push r17
  45 0038 2F93                  push r18
  46 003a 3F93                  push r19
  47 003c 4F93                  push r20
  48 003e 5F93                  push r21
  49 0040 6F93                  push r22
  50 0042 7F93                  push r23
  51 0044 8F93                  push r24
  52 0046 9F93                  push r25
  53 0048 AF93                  push r26
  54 004a BF93                  push r27
  55 004c CF93                  push r28
  56 004e DF93                  push r29
  57 0050 EF93                  push r30
  58 0052 FF93                  push r31
  59                    /* prologue end (size=21) */
  60 0054 2091 8600             lds r18,134
  61 0058 3091 8700             lds r19,(134)+1
  62 005c 8091 0000             lds r24,AltICR.2025
  63 0060 9091 0000             lds r25,(AltICR.2025)+1
  64 0064 281B                  sub r18,r24
  65 0066 390B                  sbc r19,r25
  66 0068 8091 8600             lds r24,134
  67 006c 9091 8700             lds r25,(134)+1
  68 0070 9093 0000             sts (AltICR.2025)+1,r25
  69 0074 8093 0000             sts AltICR.2025,r24
  70 0078 C901                  movw r24,r18
  71 007a 8D54                  subi r24,lo8(-(-1101))
  72 007c 9440                  sbci r25,hi8(-(-1101))
  73 007e 0091 0000             lds r16,index.2028
  74 0082 1091 0000             lds r17,(index.2028)+1
  75 0086 835F                  subi r24,lo8(6899)
  76 0088 9A41                  sbci r25,hi8(6899)
  77 008a 00F4                  brsh .L4
  78 008c 0430                  cpi r16,4
  79 008e 1105                  cpc r17,__zero_reg__
  80 0090 04F0                  brlt .L6
  81 0092 1092 0000             sts NewPpmData,__zero_reg__
  82                    .L6:
  83 0096 81E0                  ldi r24,lo8(1)
  84 0098 90E0                  ldi r25,hi8(1)
  85 009a 9093 0000             sts (index.2028)+1,r25
  86 009e 8093 0000             sts index.2028,r24
  87 00a2 00C0                  rjmp .L29
  88                    .L4:
  89 00a4 0A30                  cpi r16,10
  90 00a6 1105                  cpc r17,__zero_reg__
  91 00a8 04F0                  brlt .+2
  92 00aa 00C0                  rjmp .L29
  93 00ac C901                  movw r24,r18
  94 00ae 8B5F                  subi r24,lo8(-(-251))
  95 00b0 9040                  sbci r25,hi8(-(-251))
  96 00b2 845B                  subi r24,lo8(436)
  97 00b4 9140                  sbci r25,hi8(436)
  98 00b6 00F0                  brlo .+2
  99 00b8 00C0                  rjmp .L10
 100 00ba E901                  movw r28,r18
 101 00bc C25D                  subi r28,lo8(-(-466))
 102 00be D140                  sbci r29,hi8(-(-466))
 103 00c0 F801                  movw r30,r16
 104 00c2 EE0F                  lsl r30
 105 00c4 FF1F                  rol r31
 106 00c6 E050                  subi r30,lo8(-(PPM_in))
 107 00c8 F040                  sbci r31,hi8(-(PPM_in))
 108 00ca 8081                  ld r24,Z
 109 00cc 9181                  ldd r25,Z+1
 110 00ce 9E01                  movw r18,r28
 111 00d0 281B                  sub r18,r24
 112 00d2 390B                  sbc r19,r25
 113 00d4 C901                  movw r24,r18
 114 00d6 37FF                  sbrs r19,7
 115 00d8 00C0                  rjmp .L13
 116 00da 9095                  com r25
 117 00dc 8195                  neg r24
 118 00de 9F4F                  sbci r25,lo8(-1)
 119                    .L13:
 120 00e0 0697                  sbiw r24,6
 121 00e2 04F4                  brge .L12
 122 00e4 8091 0000             lds r24,SenderOkay
 123 00e8 883C                  cpi r24,lo8(-56)
 124 00ea 00F4                  brsh .L12
 125 00ec 8091 0000             lds r24,SenderOkay
 126 00f0 865F                  subi r24,lo8(-(10))
 127 00f2 8093 0000             sts SenderOkay,r24
 128                    .L12:
 129 00f6 F801                  movw r30,r16
 130 00f8 EE0F                  lsl r30
 131 00fa FF1F                  rol r31
 132 00fc E050                  subi r30,lo8(-(PPM_in))
 133 00fe F040                  sbci r31,hi8(-(PPM_in))
 134 0100 2081                  ld r18,Z
 135 0102 3181                  ldd r19,Z+1
 136 0104 C901                  movw r24,r18
 137 0106 880F                  lsl r24
 138 0108 991F                  rol r25
 139 010a 820F                  add r24,r18
 140 010c 931F                  adc r25,r19
 141 010e 8C0F                  add r24,r28
 142 0110 9D1F                  adc r25,r29
 143 0112 64E0                  ldi r22,lo8(4)
 144 0114 70E0                  ldi r23,hi8(4)
 145 0116 0E94 0000             call __divmodhi4
 146 011a 9B01                  movw r18,r22
 147 011c CE01                  movw r24,r28
 148 011e 0196                  adiw r24,1
 149 0120 8617                  cp r24,r22
 150 0122 9707                  cpc r25,r23
 151 0124 04F4                  brge .L16
 152 0126 2150                  subi r18,lo8(-(-1))
 153 0128 3040                  sbci r19,hi8(-(-1))
 154 012a 00C0                  rjmp .L18
 155                    .L16:
 156 012c 2197                  sbiw r28,1
 157 012e 6C17                  cp r22,r28
 158 0130 7D07                  cpc r23,r29
 159 0132 04F4                  brge .L18
 160 0134 2F5F                  subi r18,lo8(-(1))
 161 0136 3F4F                  sbci r19,hi8(-(1))
 162                    .L18:
 163 0138 8091 0000             lds r24,SenderOkay
 164 013c E801                  movw r28,r16
 165 013e CC0F                  lsl r28
 166 0140 DD1F                  rol r29
 167 0142 833C                  cpi r24,lo8(-61)
 168 0144 00F0                  brlo .L20
 169 0146 FE01                  movw r30,r28
 170 0148 E050                  subi r30,lo8(-(PPM_in))
 171 014a F040                  sbci r31,hi8(-(PPM_in))
 172 014c 8081                  ld r24,Z
 173 014e 9181                  ldd r25,Z+1
 174 0150 A901                  movw r20,r18
 175 0152 481B                  sub r20,r24
 176 0154 590B                  sbc r21,r25
 177 0156 CA01                  movw r24,r20
 178 0158 63E0                  ldi r22,lo8(3)
 179 015a 70E0                  ldi r23,hi8(3)
 180 015c 0E94 0000             call __divmodhi4
 181 0160 CB01                  movw r24,r22
 182 0162 880F                  lsl r24
 183 0164 991F                  rol r25
 184 0166 860F                  add r24,r22
 185 0168 971F                  adc r25,r23
 186 016a C050                  subi r28,lo8(-(PPM_diff))
 187 016c D040                  sbci r29,hi8(-(PPM_diff))
 188 016e 9983                  std Y+1,r25
 189 0170 8883                  st Y,r24
 190 0172 00C0                  rjmp .L22
 191                    .L20:
 192 0174 C050                  subi r28,lo8(-(PPM_diff))
 193 0176 D040                  sbci r29,hi8(-(PPM_diff))
 194 0178 1982                  std Y+1,__zero_reg__
 195 017a 1882                  st Y,__zero_reg__
 196                    .L22:
 197 017c F801                  movw r30,r16
 198 017e EE0F                  lsl r30
 199 0180 FF1F                  rol r31
 200 0182 E050                  subi r30,lo8(-(PPM_in))
 201 0184 F040                  sbci r31,hi8(-(PPM_in))
 202 0186 3183                  std Z+1,r19
 203 0188 2083                  st Z,r18
 204                    .L10:
 205 018a F801                  movw r30,r16
 206 018c 3196                  adiw r30,1
 207 018e F093 0000             sts (index.2028)+1,r31
 208 0192 E093 0000             sts index.2028,r30
 209 0196 E530                  cpi r30,5
 210 0198 F105                  cpc r31,__zero_reg__
 211 019a 01F4                  brne .L23
 212 019c 5D9A                  sbi 43-0x20,5
 213 019e 5C98                  cbi 43-0x20,4
 214 01a0 00C0                  rjmp .L25
 215                    .L23:
 216 01a2 5D98                  cbi 43-0x20,5
 217 01a4 E630                  cpi r30,6
 218 01a6 F105                  cpc r31,__zero_reg__
 219 01a8 01F4                  brne .L26
 220 01aa 5C9A                  sbi 43-0x20,4
 221 01ac 00C0                  rjmp .L25
 222                    .L26:
 223 01ae 5C98                  cbi 43-0x20,4
 224 01b0 3797                  sbiw r30,7
 225 01b2 01F4                  brne .L25
 226 01b4 5B9A                  sbi 43-0x20,3
 227 01b6 00C0                  rjmp .L29
 228                    .L25:
 229 01b8 5B98                  cbi 43-0x20,3
 230                    .L29:
 231                    /* epilogue: frame size=0 */
 232 01ba FF91                  pop r31
 233 01bc EF91                  pop r30
 234 01be DF91                  pop r29
 235 01c0 CF91                  pop r28
 236 01c2 BF91                  pop r27
 237 01c4 AF91                  pop r26
 238 01c6 9F91                  pop r25
 239 01c8 8F91                  pop r24
 240 01ca 7F91                  pop r23
 241 01cc 6F91                  pop r22
 242 01ce 5F91                  pop r21
 243 01d0 4F91                  pop r20
 244 01d2 3F91                  pop r19
 245 01d4 2F91                  pop r18
 246 01d6 1F91                  pop r17
 247 01d8 0F91                  pop r16
 248 01da 0F90                  pop __tmp_reg__
 249 01dc 0FBE                  out __SREG__,__tmp_reg__
 250 01de 0F90                  pop __tmp_reg__
 251 01e0 1F90                  pop __zero_reg__
 252 01e2 1895                  reti
 253                    /* epilogue end (size=21) */
 254                    /* function __vector_12 size 225 (183) */
 256                    .global NewPpmData
 257                            .data
 260                    NewPpmData:
 261 0000 01                    .byte   1
 262                            .lcomm index.2028,2
 263                            .lcomm AltICR.2025,2
 264                            .comm PPM_in,22,1
 265                            .comm PPM_diff,22,1
 266                    /* File "rc.c": code  246 = 0x00f6 ( 203), prologues  21, epilogues  22 */
DEFINED SYMBOLS
                            *ABS*:00000000 rc.c
C:\DOKUME~1\PIMMEL~1\LOKALE~1\Temp/ccgwZabc.s:3      *ABS*:0000003f __SREG__
C:\DOKUME~1\PIMMEL~1\LOKALE~1\Temp/ccgwZabc.s:4      *ABS*:0000003e __SP_H__
C:\DOKUME~1\PIMMEL~1\LOKALE~1\Temp/ccgwZabc.s:5      *ABS*:0000003d __SP_L__
C:\DOKUME~1\PIMMEL~1\LOKALE~1\Temp/ccgwZabc.s:6      *ABS*:00000000 __tmp_reg__
C:\DOKUME~1\PIMMEL~1\LOKALE~1\Temp/ccgwZabc.s:7      *ABS*:00000001 __zero_reg__
C:\DOKUME~1\PIMMEL~1\LOKALE~1\Temp/ccgwZabc.s:13     .text:00000000 rc_sum_init
C:\DOKUME~1\PIMMEL~1\LOKALE~1\Temp/ccgwZabc.s:36     .text:0000002a __vector_12
C:\DOKUME~1\PIMMEL~1\LOKALE~1\Temp/ccgwZabc.s:262    .bss:00000002 AltICR.2025
                             .bss:00000000 index.2028
C:\DOKUME~1\PIMMEL~1\LOKALE~1\Temp/ccgwZabc.s:260    .data:00000000 NewPpmData
                            *COM*:00000016 PPM_in
                            *COM*:00000016 PPM_diff

UNDEFINED SYMBOLS
__do_copy_data
__do_clear_bss
AdNeutralGier
AdNeutralRoll
AdNeutralNick
SenderOkay
__divmodhi4