Subversion Repositories FlightCtrl

Rev

Rev 36 | 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.1969
  63 0060 9091 0000             lds r25,(AltICR.1969)+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.1969)+1,r25
  69 0074 8093 0000             sts AltICR.1969,r24
  70 0078 C901                  movw r24,r18
  71 007a 8D5D                  subi r24,lo8(-(-1501))
  72 007c 9540                  sbci r25,hi8(-(-1501))
  73 007e 8356                  subi r24,lo8(6499)
  74 0080 9941                  sbci r25,hi8(6499)
  75 0082 00F4                  brsh .L4
  76 0084 81E0                  ldi r24,lo8(1)
  77 0086 90E0                  ldi r25,hi8(1)
  78 0088 9093 0000             sts (index.1971)+1,r25
  79 008c 8093 0000             sts index.1971,r24
  80 0090 1092 0000             sts NewPpmData,__zero_reg__
  81 0094 00C0                  rjmp .L14
  82                    .L4:
  83 0096 C091 0000             lds r28,index.1971
  84 009a D091 0000             lds r29,(index.1971)+1
  85 009e CA30                  cpi r28,10
  86 00a0 D105                  cpc r29,__zero_reg__
  87 00a2 04F0                  brlt .+2
  88 00a4 00C0                  rjmp .L14
  89 00a6 C901                  movw r24,r18
  90 00a8 8B5F                  subi r24,lo8(-(-251))
  91 00aa 9040                  sbci r25,hi8(-(-251))
  92 00ac 845B                  subi r24,lo8(436)
  93 00ae 9140                  sbci r25,hi8(436)
  94 00b0 00F0                  brlo .+2
  95 00b2 00C0                  rjmp .L8
  96 00b4 A901                  movw r20,r18
  97 00b6 425D                  subi r20,lo8(-(-466))
  98 00b8 5140                  sbci r21,hi8(-(-466))
  99 00ba FE01                  movw r30,r28
 100 00bc EE0F                  lsl r30
 101 00be FF1F                  rol r31
 102 00c0 E050                  subi r30,lo8(-(PPM_in))
 103 00c2 F040                  sbci r31,hi8(-(PPM_in))
 104 00c4 8081                  ld r24,Z
 105 00c6 9181                  ldd r25,Z+1
 106 00c8 FA01                  movw r30,r20
 107 00ca E81B                  sub r30,r24
 108 00cc F90B                  sbc r31,r25
 109 00ce CF01                  movw r24,r30
 110 00d0 F7FF                  sbrs r31,7
 111 00d2 00C0                  rjmp .L11
 112 00d4 9095                  com r25
 113 00d6 8195                  neg r24
 114 00d8 9F4F                  sbci r25,lo8(-1)
 115                    .L11:
 116 00da 0697                  sbiw r24,6
 117 00dc 04F4                  brge .L10
 118 00de 8091 0000             lds r24,SenderOkay
 119 00e2 883C                  cpi r24,lo8(-56)
 120 00e4 00F4                  brsh .L10
 121 00e6 8091 0000             lds r24,SenderOkay
 122 00ea 865F                  subi r24,lo8(-(10))
 123 00ec 8093 0000             sts SenderOkay,r24
 124                    .L10:
 125 00f0 FE01                  movw r30,r28
 126 00f2 EE0F                  lsl r30
 127 00f4 FF1F                  rol r31
 128 00f6 8F01                  movw r16,r30
 129 00f8 0050                  subi r16,lo8(-(PPM_in))
 130 00fa 1040                  sbci r17,hi8(-(PPM_in))
 131 00fc D801                  movw r26,r16
 132 00fe 2D91                  ld r18,X+
 133 0100 3C91                  ld r19,X
 134 0102 C901                  movw r24,r18
 135 0104 880F                  lsl r24
 136 0106 991F                  rol r25
 137 0108 820F                  add r24,r18
 138 010a 931F                  adc r25,r19
 139 010c 840F                  add r24,r20
 140 010e 951F                  adc r25,r21
 141 0110 64E0                  ldi r22,lo8(4)
 142 0112 70E0                  ldi r23,hi8(4)
 143 0114 0E94 0000             call __divmodhi4
 144 0118 D801                  movw r26,r16
 145 011a 8D91                  ld r24,X+
 146 011c 9C91                  ld r25,X
 147 011e 1197                  sbiw r26,1
 148 0120 9B01                  movw r18,r22
 149 0122 281B                  sub r18,r24
 150 0124 390B                  sbc r19,r25
 151 0126 E050                  subi r30,lo8(-(PPM_diff))
 152 0128 F040                  sbci r31,hi8(-(PPM_diff))
 153 012a 3183                  std Z+1,r19
 154 012c 2083                  st Z,r18
 155 012e 1196                  adiw r26,1
 156 0130 7C93                  st X,r23
 157 0132 6E93                  st -X,r22
 158                    .L8:
 159 0134 2196                  adiw r28,1
 160 0136 D093 0000             sts (index.1971)+1,r29
 161 013a C093 0000             sts index.1971,r28
 162                    .L14:
 163                    /* epilogue: frame size=0 */
 164 013e FF91                  pop r31
 165 0140 EF91                  pop r30
 166 0142 DF91                  pop r29
 167 0144 CF91                  pop r28
 168 0146 BF91                  pop r27
 169 0148 AF91                  pop r26
 170 014a 9F91                  pop r25
 171 014c 8F91                  pop r24
 172 014e 7F91                  pop r23
 173 0150 6F91                  pop r22
 174 0152 5F91                  pop r21
 175 0154 4F91                  pop r20
 176 0156 3F91                  pop r19
 177 0158 2F91                  pop r18
 178 015a 1F91                  pop r17
 179 015c 0F91                  pop r16
 180 015e 0F90                  pop __tmp_reg__
 181 0160 0FBE                  out __SREG__,__tmp_reg__
 182 0162 0F90                  pop __tmp_reg__
 183 0164 1F90                  pop __zero_reg__
 184 0166 1895                  reti
 185                    /* epilogue end (size=21) */
 186                    /* function __vector_12 size 162 (120) */
 188                    .global NewPpmData
 189                            .data
 192                    NewPpmData:
 193 0000 01                    .byte   1
 194                            .lcomm index.1971,2
 195                            .lcomm AltICR.1969,2
 196                            .comm PPM_in,22,1
 197                            .comm PPM_diff,22,1
 198                            .comm DiffNick,2,1
 199                            .comm DiffRoll,2,1
 200                            .comm SenderOkay,1,1
 201                            .comm CosinusNickWinkel,1,1
 202                            .comm CosinusRollWinkel,1,1
 203                            .comm durchschnitt_northing,4,1
 204                            .comm durchschnitt_easting,4,1
 205                            .comm gps_p,2,1
 206                            .comm gps_d,2,1
 207                            .comm skal,2,1
 208                            .comm gps_gethome,2,1
 209                            .comm RemoteTasten,1,1
 210                            .comm Timeout,1,1
 211                            .comm IntegralNick,4,1
 212                            .comm IntegralNick2,4,1
 213                            .comm IntegralRoll,4,1
 214                            .comm IntegralRoll2,4,1
 215                            .comm Mess_IntegralNick,4,1
 216                            .comm Mess_IntegralNick2,4,1
 217                            .comm Mess_IntegralRoll,4,1
 218                            .comm Mess_IntegralRoll2,4,1
 219                            .comm Integral_Gier,4,1
 220                            .comm Mess_Integral_Gier,4,1
 221                            .comm h,1,1
 222                            .comm m,1,1
 223                            .comm s,1,1
 224                            .comm Motor_Vorne,1,1
 225                            .comm Motor_Hinten,1,1
 226                            .comm Motor_Rechts,1,1
 227                            .comm Motor_Links,1,1
 228                            .comm Count,1,1
 229                            .comm MotorWert,5,1
 230                            .comm StickNick,2,1
 231                            .comm StickRoll,2,1
 232                            .comm StickGier,2,1
 233                            .comm MotorenEin,1,1
 234                    /* File "rc.c": code  183 = 0x00b7 ( 140), prologues  21, epilogues  22 */
DEFINED SYMBOLS
                            *ABS*:00000000 rc.c
C:\DOKUME~1\CHRIST~1\LOKALE~1\Temp/ccqyyvXd.s:3      *ABS*:0000003f __SREG__
C:\DOKUME~1\CHRIST~1\LOKALE~1\Temp/ccqyyvXd.s:4      *ABS*:0000003e __SP_H__
C:\DOKUME~1\CHRIST~1\LOKALE~1\Temp/ccqyyvXd.s:5      *ABS*:0000003d __SP_L__
C:\DOKUME~1\CHRIST~1\LOKALE~1\Temp/ccqyyvXd.s:6      *ABS*:00000000 __tmp_reg__
C:\DOKUME~1\CHRIST~1\LOKALE~1\Temp/ccqyyvXd.s:7      *ABS*:00000001 __zero_reg__
C:\DOKUME~1\CHRIST~1\LOKALE~1\Temp/ccqyyvXd.s:13     .text:00000000 rc_sum_init
C:\DOKUME~1\CHRIST~1\LOKALE~1\Temp/ccqyyvXd.s:36     .text:0000002a __vector_12
C:\DOKUME~1\CHRIST~1\LOKALE~1\Temp/ccqyyvXd.s:194    .bss:00000002 AltICR.1969
                             .bss:00000000 index.1971
C:\DOKUME~1\CHRIST~1\LOKALE~1\Temp/ccqyyvXd.s:192    .data:00000000 NewPpmData
                            *COM*:00000016 PPM_in
                            *COM*:00000001 SenderOkay
                            *COM*:00000016 PPM_diff
                            *COM*:00000002 DiffNick
                            *COM*:00000002 DiffRoll
                            *COM*:00000001 CosinusNickWinkel
                            *COM*:00000001 CosinusRollWinkel
                            *COM*:00000004 durchschnitt_northing
                            *COM*:00000004 durchschnitt_easting
                            *COM*:00000002 gps_p
                            *COM*:00000002 gps_d
                            *COM*:00000002 skal
                            *COM*:00000002 gps_gethome
                            *COM*:00000001 RemoteTasten
                            *COM*:00000001 Timeout
                            *COM*:00000004 IntegralNick
                            *COM*:00000004 IntegralNick2
                            *COM*:00000004 IntegralRoll
                            *COM*:00000004 IntegralRoll2
                            *COM*:00000004 Mess_IntegralNick
                            *COM*:00000004 Mess_IntegralNick2
                            *COM*:00000004 Mess_IntegralRoll
                            *COM*:00000004 Mess_IntegralRoll2
                            *COM*:00000004 Integral_Gier
                            *COM*:00000004 Mess_Integral_Gier
                            *COM*:00000001 h
                            *COM*:00000001 m
                            *COM*:00000001 s
                            *COM*:00000001 Motor_Vorne
                            *COM*:00000001 Motor_Hinten
                            *COM*:00000001 Motor_Rechts
                            *COM*:00000001 Motor_Links
                            *COM*:00000001 Count
                            *COM*:00000005 MotorWert
                            *COM*:00000002 StickNick
                            *COM*:00000002 StickRoll
                            *COM*:00000002 StickGier
                            *COM*:00000001 MotorenEin

UNDEFINED SYMBOLS
__do_copy_data
__do_clear_bss
AdNeutralGier
AdNeutralRoll
AdNeutralNick
__divmodhi4