Subversion Repositories BL-Ctrl

Rev

Blame | Last modification | View Log | RSS feed

   1                            .file   "uart.c"
   2                    __SREG__ = 0x3f
   3                    __SP_H__ = 0x3e
   4                    __SP_L__ = 0x3d
   5                    __CCP__  = 0x34
   6                    __tmp_reg__ = 0
   7                    __zero_reg__ = 1
  15                    .Ltext0:
  16                    .global __vector_13
  18                    __vector_13:
  19                    .LFB3:
  20                    .LM1:
  21 0000 1F92                  push __zero_reg__
  22 0002 0F92                  push r0
  23 0004 0FB6                  in r0,__SREG__
  24 0006 0F92                  push r0
  25 0008 1124                  clr __zero_reg__
  26                    /* prologue: Signal */
  27                    /* frame size = 0 */
  28                    /* epilogue start */
  29                    .LM2:
  30 000a 0F90                  pop r0
  31 000c 0FBE                  out __SREG__,r0
  32 000e 0F90                  pop r0
  33 0010 1F90                  pop __zero_reg__
  34 0012 1895                  reti
  35                    .LFE3:
  37                    .global SendUart
  39                    SendUart:
  40                    .LFB4:
  41                    .LM3:
  42                    /* prologue: function */
  43                    /* frame size = 0 */
  44                    .LM4:
  45 0014 5E9B                  sbis 43-32,6
  46 0016 00C0                  rjmp .L8
  47                    .LM5:
  48 0018 8091 0000             lds r24,UebertragungAbgeschlossen
  49 001c 8823                  tst r24
  50 001e 01F4                  brne .L5
  51                    .LM6:
  52 0020 8091 0000             lds r24,ptr.1846
  53 0024 9091 0000             lds r25,(ptr.1846)+1
  54 0028 0196                  adiw r24,1
  55 002a 9093 0000             sts (ptr.1846)+1,r25
  56 002e 8093 0000             sts ptr.1846,r24
  57                    .LM7:
  58 0032 FC01                  movw r30,r24
  59 0034 E050                  subi r30,lo8(-(SendeBuffer))
  60 0036 F040                  sbci r31,hi8(-(SendeBuffer))
  61 0038 E081                  ld r30,Z
  62                    .LVL0:
  63                    .LM8:
  64 003a ED30                  cpi r30,lo8(13)
  65 003c 01F0                  breq .L6
  66 003e 8436                  cpi r24,100
  67 0040 9105                  cpc r25,__zero_reg__
  68 0042 01F4                  brne .L7
  69                    .L6:
  70                    .LM9:
  71 0044 1092 0000             sts (ptr.1846)+1,__zero_reg__
  72 0048 1092 0000             sts ptr.1846,__zero_reg__
  73                    .LM10:
  74 004c 81E0                  ldi r24,lo8(1)
  75 004e 8093 0000             sts UebertragungAbgeschlossen,r24
  76                    .L7:
  77                    .LM11:
  78 0052 589A                  sbi 43-32,0
  79                    .LM12:
  80 0054 ECB9                  out 44-32,r30
  81 0056 0895                  ret
  82                    .LVL1:
  83                    .L5:
  84                    .LM13:
  85 0058 1092 0000             sts (ptr.1846)+1,__zero_reg__
  86 005c 1092 0000             sts ptr.1846,__zero_reg__
  87                    .L8:
  88 0060 0895                  ret
  89                    .LFE4:
  91                    .global Decode64
  93                    Decode64:
  94                    .LFB5:
  95                    .LM14:
  96                    .LVL2:
  97 0062 1F93                  push r17
  98 0064 CF93                  push r28
  99 0066 DF93                  push r29
 100                    /* prologue: function */
 101                    /* frame size = 0 */
 102 0068 EC01                  movw r28,r24
 103                    .LM15:
 104 006a 70E0                  ldi r23,lo8(0)
 105                    .LVL3:
 106                    .LM16:
 107 006c A22F                  mov r26,r18
 108 006e B0E0                  ldi r27,lo8(0)
 109 0070 1197                  sbiw r26,1
 110 0072 00C0                  rjmp .L10
 111                    .LVL4:
 112                    .L12:
 113                    .LM17:
 114 0074 E42F                  mov r30,r20
 115 0076 F0E0                  ldi r31,lo8(0)
 116 0078 E050                  subi r30,lo8(-(RxdBuffer))
 117 007a F040                  sbci r31,hi8(-(RxdBuffer))
 118 007c 3081                  ld r19,Z
 119                    .LM18:
 120 007e 4F5F                  subi r20,lo8(-(1))
 121 0080 E42F                  mov r30,r20
 122 0082 F0E0                  ldi r31,lo8(0)
 123 0084 E050                  subi r30,lo8(-(RxdBuffer))
 124 0086 F040                  sbci r31,hi8(-(RxdBuffer))
 125 0088 5081                  ld r21,Z
 126                    .LVL5:
 127                    .LM19:
 128 008a 4F5F                  subi r20,lo8(-(1))
 129 008c E42F                  mov r30,r20
 130 008e F0E0                  ldi r31,lo8(0)
 131 0090 E050                  subi r30,lo8(-(RxdBuffer))
 132 0092 F040                  sbci r31,hi8(-(RxdBuffer))
 133 0094 1081                  ld r17,Z
 134                    .LM20:
 135 0096 4F5F                  subi r20,lo8(-(1))
 136 0098 E42F                  mov r30,r20
 137 009a F0E0                  ldi r31,lo8(0)
 138 009c E050                  subi r30,lo8(-(RxdBuffer))
 139 009e F040                  sbci r31,hi8(-(RxdBuffer))
 140 00a0 2081                  ld r18,Z
 141                    .LVL6:
 142 00a2 4F5F                  subi r20,lo8(-(1))
 143                    .LM21:
 144 00a4 842F                  mov r24,r20
 145 00a6 90E0                  ldi r25,lo8(0)
 146                    .LVL7:
 147 00a8 8A17                  cp r24,r26
 148 00aa 9B07                  cpc r25,r27
 149 00ac 04F4                  brge .L13
 150                    .LVL8:
 151                    .LM22:
 152 00ae 5D53                  subi r21,lo8(-(-61))
 153                    .LVL9:
 154                    .LM23:
 155 00b0 FE01                  movw r30,r28
 156 00b2 E70F                  add r30,r23
 157 00b4 F11D                  adc r31,__zero_reg__
 158 00b6 852F                  mov r24,r21
 159                    .LVL10:
 160 00b8 8295                  swap r24
 161 00ba 8F70                  andi r24,lo8(15)
 162 00bc 3D53                  subi r19,lo8(-(-61))
 163 00be 330F                  lsl r19
 164 00c0 330F                  lsl r19
 165 00c2 382B                  or r19,r24
 166 00c4 3083                  st Z,r19
 167                    .LM24:
 168 00c6 6130                  cpi r22,lo8(1)
 169 00c8 01F0                  breq .L13
 170                    .LM25:
 171 00ca 912F                  mov r25,r17
 172                    .LVL11:
 173 00cc 9D53                  subi r25,lo8(-(-61))
 174                    .LM26:
 175 00ce 7F5F                  subi r23,lo8(-(1))
 176 00d0 FE01                  movw r30,r28
 177 00d2 E70F                  add r30,r23
 178 00d4 F11D                  adc r31,__zero_reg__
 179 00d6 7150                  subi r23,lo8(-(-1))
 180 00d8 5295                  swap r21
 181 00da 507F                  andi r21,lo8(-16)
 182 00dc 892F                  mov r24,r25
 183 00de 8695                  lsr r24
 184 00e0 8695                  lsr r24
 185 00e2 582B                  or r21,r24
 186 00e4 5083                  st Z,r21
 187                    .LM27:
 188 00e6 6230                  cpi r22,lo8(2)
 189 00e8 01F0                  breq .L13
 190 00ea 6350                  subi r22,lo8(-(-3))
 191                    .LVL12:
 192 00ec 7E5F                  subi r23,lo8(-(2))
 193 00ee FE01                  movw r30,r28
 194 00f0 E70F                  add r30,r23
 195 00f2 F11D                  adc r31,__zero_reg__
 196 00f4 9295                  swap r25
 197 00f6 990F                  lsl r25
 198 00f8 990F                  lsl r25
 199 00fa 907C                  andi r25,lo8(-64)
 200 00fc 2D53                  subi r18,lo8(-(-61))
 201 00fe 922B                  or r25,r18
 202 0100 9083                  st Z,r25
 203 0102 7F5F                  subi r23,lo8(-(1))
 204                    .LVL13:
 205                    .L10:
 206                    .LM28:
 207 0104 6623                  tst r22
 208 0106 01F0                  breq .+2
 209 0108 00C0                  rjmp .L12
 210                    .LVL14:
 211                    .L13:
 212                    /* epilogue start */
 213                    .LM29:
 214 010a DF91                  pop r29
 215 010c CF91                  pop r28
 216                    .LVL15:
 217 010e 1F91                  pop r17
 218 0110 0895                  ret
 219                    .LFE5:
 221                    .global AddCRC
 223                    AddCRC:
 224                    .LFB7:
 225                    .LM30:
 226                    .LVL16:
 227                    /* prologue: function */
 228                    /* frame size = 0 */
 229 0112 DC01                  movw r26,r24
 230                    .LM31:
 231 0114 20E0                  ldi r18,lo8(0)
 232 0116 30E0                  ldi r19,hi8(0)
 233                    .LVL17:
 234 0118 40E0                  ldi r20,lo8(0)
 235 011a 50E0                  ldi r21,hi8(0)
 236                    .LVL18:
 237 011c 00C0                  rjmp .L15
 238                    .LVL19:
 239                    .L16:
 240                    .LM32:
 241 011e FA01                  movw r30,r20
 242 0120 E050                  subi r30,lo8(-(SendeBuffer))
 243 0122 F040                  sbci r31,hi8(-(SendeBuffer))
 244 0124 8081                  ld r24,Z
 245 0126 280F                  add r18,r24
 246 0128 311D                  adc r19,__zero_reg__
 247                    .LM33:
 248 012a 4F5F                  subi r20,lo8(-(1))
 249 012c 5F4F                  sbci r21,hi8(-(1))
 250                    .LVL20:
 251                    .L15:
 252 012e 4A17                  cp r20,r26
 253 0130 5B07                  cpc r21,r27
 254 0132 00F0                  brlo .L16
 255                    .LM34:
 256 0134 3F70                  andi r19,hi8(4095)
 257                    .LVL21:
 258                    .LM35:
 259 0136 C901                  movw r24,r18
 260 0138 36E0                  ldi r19,6
 261 013a 9695          1:      lsr r25
 262 013c 8795                  ror r24
 263 013e 3A95                  dec r19
 264 0140 01F4                  brne 1b
 265 0142 835C                  subi r24,lo8(-(61))
 266 0144 FD01                  movw r30,r26
 267 0146 E050                  subi r30,lo8(-(SendeBuffer))
 268 0148 F040                  sbci r31,hi8(-(SendeBuffer))
 269 014a 8083                  st Z,r24
 270 014c 1196                  adiw r26,1
 271                    .LVL22:
 272                    .LM36:
 273 014e 2F73                  andi r18,lo8(63)
 274                    .LVL23:
 275 0150 235C                  subi r18,lo8(-(61))
 276 0152 FD01                  movw r30,r26
 277 0154 E050                  subi r30,lo8(-(SendeBuffer))
 278 0156 F040                  sbci r31,hi8(-(SendeBuffer))
 279 0158 2083                  st Z,r18
 280                    .LM37:
 281 015a A050                  subi r26,lo8(-(SendeBuffer+1))
 282 015c B040                  sbci r27,hi8(-(SendeBuffer+1))
 283 015e 8DE0                  ldi r24,lo8(13)
 284 0160 8C93                  st X,r24
 285                    .LM38:
 286 0162 1092 0000             sts UebertragungAbgeschlossen,__zero_reg__
 287                    .LM39:
 288 0166 8091 0000             lds r24,SendeBuffer
 289 016a 8CB9                  out 44-32,r24
 290                    /* epilogue start */
 291                    .LM40:
 292 016c 0895                  ret
 293                    .LFE7:
 295                    .global SendOutData
 297                    SendOutData:
 298                    .LFB8:
 299                    .LM41:
 300                    .LVL24:
 301 016e CF93                  push r28
 302 0170 DF93                  push r29
 303                    /* prologue: function */
 304                    /* frame size = 0 */
 305 0172 EA01                  movw r28,r20
 306 0174 B22F                  mov r27,r18
 307                    .LM42:
 308 0176 93E2                  ldi r25,lo8(35)
 309 0178 9093 0000             sts SendeBuffer,r25
 310                    .LM43:
 311 017c 6093 0000             sts SendeBuffer+1,r22
 312                    .LM44:
 313 0180 8093 0000             sts SendeBuffer+2,r24
 314 0184 63E0                  ldi r22,lo8(3)
 315 0186 70E0                  ldi r23,hi8(3)
 316                    .LVL25:
 317 0188 A0E0                  ldi r26,lo8(0)
 318                    .LVL26:
 319 018a 00C0                  rjmp .L19
 320                    .LVL27:
 321                    .L23:
 322                    .LM45:
 323 018c FE01                  movw r30,r28
 324 018e EA0F                  add r30,r26
 325 0190 F11D                  adc r31,__zero_reg__
 326 0192 9081                  ld r25,Z
 327                    .LVL28:
 328 0194 AF5F                  subi r26,lo8(-(1))
 329 0196 B150                  subi r27,lo8(-(-1))
 330                    .LM46:
 331 0198 01F4                  brne .L20
 332 019a 30E0                  ldi r19,lo8(0)
 333 019c 40E0                  ldi r20,lo8(0)
 334                    .LVL29:
 335 019e 00C0                  rjmp .L21
 336                    .LVL30:
 337                    .L20:
 338 01a0 FE01                  movw r30,r28
 339 01a2 EA0F                  add r30,r26
 340 01a4 F11D                  adc r31,__zero_reg__
 341 01a6 4081                  ld r20,Z
 342                    .LVL31:
 343 01a8 AF5F                  subi r26,lo8(-(1))
 344 01aa B150                  subi r27,lo8(-(-1))
 345                    .LM47:
 346 01ac 01F4                  brne .L22
 347 01ae 30E0                  ldi r19,lo8(0)
 348 01b0 00C0                  rjmp .L21
 349                    .L22:
 350 01b2 FE01                  movw r30,r28
 351 01b4 EA0F                  add r30,r26
 352 01b6 F11D                  adc r31,__zero_reg__
 353 01b8 3081                  ld r19,Z
 354 01ba AF5F                  subi r26,lo8(-(1))
 355 01bc B150                  subi r27,lo8(-(-1))
 356                    .L21:
 357                    .LM48:
 358 01be 892F                  mov r24,r25
 359                    .LVL32:
 360 01c0 8695                  lsr r24
 361 01c2 8695                  lsr r24
 362 01c4 835C                  subi r24,lo8(-(61))
 363 01c6 FB01                  movw r30,r22
 364 01c8 E050                  subi r30,lo8(-(SendeBuffer))
 365 01ca F040                  sbci r31,hi8(-(SendeBuffer))
 366 01cc 8083                  st Z,r24
 367                    .LM49:
 368 01ce 242F                  mov r18,r20
 369 01d0 2295                  swap r18
 370 01d2 2F70                  andi r18,lo8(15)
 371 01d4 892F                  mov r24,r25
 372 01d6 90E0                  ldi r25,lo8(0)
 373                    .LVL33:
 374 01d8 8370                  andi r24,lo8(3)
 375 01da 9070                  andi r25,hi8(3)
 376                    .LVL34:
 377 01dc 54E0                  ldi r21,4
 378 01de 880F          1:      lsl r24
 379 01e0 991F                  rol r25
 380 01e2 5A95                  dec r21
 381 01e4 01F4                  brne 1b
 382                    .LVL35:
 383 01e6 282B                  or r18,r24
 384 01e8 235C                  subi r18,lo8(-(61))
 385 01ea FB01                  movw r30,r22
 386 01ec E050                  subi r30,lo8(-(SendeBuffer+1))
 387 01ee F040                  sbci r31,hi8(-(SendeBuffer+1))
 388 01f0 2083                  st Z,r18
 389                    .LM50:
 390 01f2 842F                  mov r24,r20
 391                    .LVL36:
 392 01f4 90E0                  ldi r25,lo8(0)
 393                    .LVL37:
 394 01f6 8F70                  andi r24,lo8(15)
 395 01f8 9070                  andi r25,hi8(15)
 396                    .LVL38:
 397 01fa 880F                  lsl r24
 398 01fc 991F                  rol r25
 399 01fe 880F                  lsl r24
 400 0200 991F                  rol r25
 401                    .LVL39:
 402 0202 232F                  mov r18,r19
 403 0204 2295                  swap r18
 404 0206 2695                  lsr r18
 405 0208 2695                  lsr r18
 406 020a 2370                  andi r18,lo8(3)
 407 020c 282B                  or r18,r24
 408 020e 235C                  subi r18,lo8(-(61))
 409 0210 FB01                  movw r30,r22
 410 0212 E050                  subi r30,lo8(-(SendeBuffer+2))
 411 0214 F040                  sbci r31,hi8(-(SendeBuffer+2))
 412 0216 2083                  st Z,r18
 413                    .LM51:
 414 0218 3F73                  andi r19,lo8(63)
 415 021a 335C                  subi r19,lo8(-(61))
 416 021c FB01                  movw r30,r22
 417 021e E050                  subi r30,lo8(-(SendeBuffer+3))
 418 0220 F040                  sbci r31,hi8(-(SendeBuffer+3))
 419 0222 3083                  st Z,r19
 420 0224 6C5F                  subi r22,lo8(-(4))
 421 0226 7F4F                  sbci r23,hi8(-(4))
 422                    .LVL40:
 423                    .L19:
 424                    .LM52:
 425 0228 BB23                  tst r27
 426 022a 01F0                  breq .+2
 427 022c 00C0                  rjmp .L23
 428                    .LM53:
 429 022e CB01                  movw r24,r22
 430                    .LVL41:
 431 0230 00D0                  rcall AddCRC
 432                    .LVL42:
 433                    /* epilogue start */
 434                    .LM54:
 435 0232 DF91                  pop r29
 436 0234 CF91                  pop r28
 437                    .LVL43:
 438 0236 0895                  ret
 439                    .LFE8:
 441                    .global uart_putchar
 443                    uart_putchar:
 444                    .LFB9:
 445                    .LM55:
 446                    .LVL44:
 447 0238 1F93                  push r17
 448                    /* prologue: function */
 449                    /* frame size = 0 */
 450 023a 182F                  mov r17,r24
 451                    .LM56:
 452 023c 8A30                  cpi r24,lo8(10)
 453 023e 01F4                  brne .L28
 454                    .LM57:
 455 0240 8DE0                  ldi r24,lo8(13)
 456                    .LVL45:
 457 0242 00D0                  rcall uart_putchar
 458                    .LVL46:
 459                    .L28:
 460                    .LM58:
 461 0244 5D9B                  sbis 43-32,5
 462 0246 00C0                  rjmp .L28
 463                    .LM59:
 464 0248 1CB9                  out 44-32,r17
 465                    .LM60:
 466 024a 80E0                  ldi r24,lo8(0)
 467 024c 90E0                  ldi r25,hi8(0)
 468                    /* epilogue start */
 469 024e 1F91                  pop r17
 470                    .LVL47:
 471 0250 0895                  ret
 472                    .LFE9:
 474                    .global __vector_11
 476                    __vector_11:
 477                    .LFB6:
 478                    .LM61:
 479 0252 1F92                  push __zero_reg__
 480 0254 0F92                  push r0
 481 0256 0FB6                  in r0,__SREG__
 482 0258 0F92                  push r0
 483 025a 1124                  clr __zero_reg__
 484 025c 2F93                  push r18
 485 025e 3F93                  push r19
 486 0260 4F93                  push r20
 487 0262 5F93                  push r21
 488 0264 6F93                  push r22
 489 0266 7F93                  push r23
 490 0268 8F93                  push r24
 491 026a 9F93                  push r25
 492 026c AF93                  push r26
 493 026e BF93                  push r27
 494 0270 CF93                  push r28
 495 0272 DF93                  push r29
 496 0274 EF93                  push r30
 497 0276 FF93                  push r31
 498                    /* prologue: Signal */
 499                    /* frame size = 0 */
 500                    .LM62:
 501 0278 8CB1                  in r24,44-32
 502 027a 8093 0000             sts SioTmp,r24
 503                    .LM63:
 504 027e 4091 0000             lds r20,buf_ptr.1914
 505 0282 4436                  cpi r20,lo8(100)
 506 0284 00F0                  brlo .L31
 507 0286 1092 0000             sts UartState.1915,__zero_reg__
 508                    .L31:
 509                    .LM64:
 510 028a 5091 0000             lds r21,SioTmp
 511 028e 5D30                  cpi r21,lo8(13)
 512 0290 01F0                  breq .+2
 513 0292 00C0                  rjmp .L32
 514 0294 8091 0000             lds r24,UartState.1915
 515 0298 8230                  cpi r24,lo8(2)
 516 029a 01F0                  breq .+2
 517 029c 00C0                  rjmp .L32
 518                    .LM65:
 519 029e 1092 0000             sts UartState.1915,__zero_reg__
 520                    .LM66:
 521 02a2 A42F                  mov r26,r20
 522 02a4 B0E0                  ldi r27,lo8(0)
 523 02a6 FD01                  movw r30,r26
 524 02a8 E050                  subi r30,lo8(-(RxdBuffer-2))
 525 02aa F040                  sbci r31,hi8(-(RxdBuffer-2))
 526 02ac 3081                  ld r19,Z
 527                    .LM67:
 528 02ae ED01                  movw r28,r26
 529 02b0 C050                  subi r28,lo8(-(RxdBuffer-1))
 530 02b2 D040                  sbci r29,hi8(-(RxdBuffer-1))
 531 02b4 2881                  ld r18,Y
 532                    .LM68:
 533 02b6 8091 0000             lds r24,crc.1911
 534 02ba 9091 0000             lds r25,(crc.1911)+1
 535 02be 831B                  sub r24,r19
 536 02c0 9109                  sbc r25,__zero_reg__
 537 02c2 821B                  sub r24,r18
 538 02c4 9109                  sbc r25,__zero_reg__
 539 02c6 9F70                  andi r25,hi8(4095)
 540 02c8 9093 0000             sts (crc.1911)+1,r25
 541 02cc 8093 0000             sts crc.1911,r24
 542                    .LM69:
 543 02d0 9C01                  movw r18,r24
 544 02d2 66E0                  ldi r22,6
 545 02d4 3695          1:      lsr r19
 546 02d6 2795                  ror r18
 547 02d8 6A95                  dec r22
 548 02da 01F4                  brne 1b
 549 02dc 235C                  subi r18,lo8(-(61))
 550 02de 2093 0000             sts crc1.1912,r18
 551                    .LM70:
 552 02e2 982F                  mov r25,r24
 553 02e4 9F73                  andi r25,lo8(63)
 554 02e6 935C                  subi r25,lo8(-(61))
 555 02e8 9093 0000             sts crc2.1913,r25
 556                    .LM71:
 557 02ec 8081                  ld r24,Z
 558 02ee 2817                  cp r18,r24
 559 02f0 01F0                  breq .+2
 560 02f2 00C0                  rjmp .L42
 561 02f4 8881                  ld r24,Y
 562 02f6 9817                  cp r25,r24
 563 02f8 01F0                  breq .+2
 564 02fa 00C0                  rjmp .L42
 565                    .LM72:
 566 02fc 4093 0000             sts AnzahlEmpfangsBytes,r20
 567                    .LM73:
 568 0300 A050                  subi r26,lo8(-(RxdBuffer))
 569 0302 B040                  sbci r27,hi8(-(RxdBuffer))
 570 0304 5C93                  st X,r21
 571                    .LM74:
 572 0306 8091 0000             lds r24,RxdBuffer+2
 573 030a 8235                  cpi r24,lo8(82)
 574 030c 01F4                  brne .L34
 575 030e 2CE0                  ldi r18,lo8(12)
 576 0310 88E1                  ldi r24,lo8(24)
 577 0312 90E0                  ldi r25,hi8(24)
 578                    /* #APP */
 579                     ;  133 "uart.c" 1
 580 0314 0FB6                  in __tmp_reg__,__SREG__
 581 0316 F894                  cli
 582 0318 A895                  wdr
 583 031a 81BD                  out 33,r24
 584 031c 0FBE                  out __SREG__,__tmp_reg__
 585 031e 21BD                  out 33,r18
 586                     ;  0 "" 2
 587                    /* #NOAPP */
 588                    .L34:
 589                    .LM75:
 590 0320 8091 0000             lds r24,RxdBuffer+2
 591 0324 00D0                  rcall uart_putchar
 592                    .LM76:
 593 0326 8091 0000             lds r24,RxdBuffer+2
 594 032a 8437                  cpi r24,lo8(116)
 595 032c 01F0                  breq .+2
 596 032e 00C0                  rjmp .L42
 597                    .LM77:
 598 0330 2091 0000             lds r18,AnzahlEmpfangsBytes
 599 0334 80E0                  ldi r24,lo8(MotorTest)
 600 0336 90E0                  ldi r25,hi8(MotorTest)
 601 0338 66E0                  ldi r22,lo8(6)
 602 033a 43E0                  ldi r20,lo8(3)
 603 033c 00D0                  rcall Decode64
 604                    .LM78:
 605 033e E091 0000             lds r30,MotorAdresse
 606 0342 F0E0                  ldi r31,lo8(0)
 607 0344 E050                  subi r30,lo8(-(MotorTest-1))
 608 0346 F040                  sbci r31,hi8(-(MotorTest-1))
 609 0348 8081                  ld r24,Z
 610 034a 8093 0000             sts SIO_Sollwert,r24
 611                    .LM79:
 612 034e 84EF                  ldi r24,lo8(500)
 613 0350 91E0                  ldi r25,hi8(500)
 614 0352 9093 0000             sts (SIO_Timeout)+1,r25
 615 0356 8093 0000             sts SIO_Timeout,r24
 616 035a 00C0                  rjmp .L42
 617                    .L32:
 618                    .LM80:
 619 035c 8091 0000             lds r24,UartState.1915
 620 0360 8130                  cpi r24,lo8(1)
 621 0362 01F0                  breq .L37
 622 0364 8130                  cpi r24,lo8(1)
 623 0366 00F0                  brlo .L36
 624 0368 8230                  cpi r24,lo8(2)
 625 036a 01F0                  breq .+2
 626 036c 00C0                  rjmp .L43
 627 036e 00C0                  rjmp .L45
 628                    .L36:
 629                    .LM81:
 630 0370 8091 0000             lds r24,SioTmp
 631 0374 8332                  cpi r24,lo8(35)
 632 0376 01F4                  brne .L39
 633 0378 8091 0000             lds r24,NeuerDatensatzEmpfangen
 634 037c 8823                  tst r24
 635 037e 01F4                  brne .L39
 636 0380 81E0                  ldi r24,lo8(1)
 637 0382 8093 0000             sts UartState.1915,r24
 638                    .L39:
 639                    .LM82:
 640 0386 8091 0000             lds r24,SioTmp
 641 038a 8093 0000             sts RxdBuffer,r24
 642 038e 81E0                  ldi r24,lo8(1)
 643 0390 8093 0000             sts buf_ptr.1914,r24
 644                    .LM83:
 645 0394 8091 0000             lds r24,SioTmp
 646 0398 8093 0000             sts crc.1911,r24
 647 039c 1092 0000             sts crc.1911+1,__zero_reg__
 648 03a0 00C0                  rjmp .L42
 649                    .L37:
 650                    .LM84:
 651 03a2 82E0                  ldi r24,lo8(2)
 652 03a4 8093 0000             sts UartState.1915,r24
 653                    .LM85:
 654 03a8 E42F                  mov r30,r20
 655 03aa F0E0                  ldi r31,lo8(0)
 656 03ac 8091 0000             lds r24,SioTmp
 657 03b0 E050                  subi r30,lo8(-(RxdBuffer))
 658 03b2 F040                  sbci r31,hi8(-(RxdBuffer))
 659 03b4 8083                  st Z,r24
 660 03b6 00C0                  rjmp .L44
 661                    .L45:
 662                    .LM86:
 663 03b8 E42F                  mov r30,r20
 664 03ba F0E0                  ldi r31,lo8(0)
 665 03bc 8091 0000             lds r24,SioTmp
 666 03c0 E050                  subi r30,lo8(-(RxdBuffer))
 667 03c2 F040                  sbci r31,hi8(-(RxdBuffer))
 668 03c4 8083                  st Z,r24
 669                    .LM87:
 670 03c6 4436                  cpi r20,lo8(100)
 671 03c8 00F4                  brsh .L40
 672                    .L44:
 673 03ca 4F5F                  subi r20,lo8(-(1))
 674 03cc 4093 0000             sts buf_ptr.1914,r20
 675 03d0 00C0                  rjmp .L41
 676                    .L40:
 677                    .LM88:
 678 03d2 1092 0000             sts UartState.1915,__zero_reg__
 679                    .L41:
 680                    .LM89:
 681 03d6 2091 0000             lds r18,SioTmp
 682 03da 8091 0000             lds r24,crc.1911
 683 03de 9091 0000             lds r25,(crc.1911)+1
 684 03e2 820F                  add r24,r18
 685 03e4 911D                  adc r25,__zero_reg__
 686 03e6 9093 0000             sts (crc.1911)+1,r25
 687 03ea 8093 0000             sts crc.1911,r24
 688 03ee 00C0                  rjmp .L42
 689                    .L43:
 690                    .LM90:
 691 03f0 1092 0000             sts UartState.1915,__zero_reg__
 692                    .L42:
 693                    /* epilogue start */
 694                    .LM91:
 695 03f4 FF91                  pop r31
 696 03f6 EF91                  pop r30
 697 03f8 DF91                  pop r29
 698 03fa CF91                  pop r28
 699 03fc BF91                  pop r27
 700 03fe AF91                  pop r26
 701 0400 9F91                  pop r25
 702 0402 8F91                  pop r24
 703 0404 7F91                  pop r23
 704 0406 6F91                  pop r22
 705 0408 5F91                  pop r21
 706 040a 4F91                  pop r20
 707 040c 3F91                  pop r19
 708 040e 2F91                  pop r18
 709 0410 0F90                  pop r0
 710 0412 0FBE                  out __SREG__,r0
 711 0414 0F90                  pop r0
 712 0416 1F90                  pop __zero_reg__
 713 0418 1895                  reti
 714                    .LFE6:
 716                    .global WriteProgramData
 718                    WriteProgramData:
 719                    .LFB10:
 720                    .LM92:
 721                    .LVL48:
 722                    /* prologue: function */
 723                    /* frame size = 0 */
 724                    /* epilogue start */
 725                    .LM93:
 726 041a 0895                  ret
 727                    .LFE10:
 729                    .global DatenUebertragung
 731                    DatenUebertragung:
 732                    .LFB12:
 733                    .LM94:
 734                    /* prologue: function */
 735                    /* frame size = 0 */
 736                    .LM95:
 737 041c 8091 0000             lds r24,Debug_Timer
 738 0420 9091 0000             lds r25,(Debug_Timer)+1
 739 0424 00D0                  rcall CheckDelay
 740 0426 8823                  tst r24
 741 0428 01F0                  breq .L50
 742 042a 8091 0000             lds r24,UebertragungAbgeschlossen
 743 042e 8823                  tst r24
 744 0430 01F0                  breq .L50
 745                    .LM96:
 746 0432 84E4                  ldi r24,lo8(68)
 747 0434 6091 0000             lds r22,MeineSlaveAdresse
 748 0438 40E0                  ldi r20,lo8(DebugOut)
 749 043a 50E0                  ldi r21,hi8(DebugOut)
 750 043c 22E1                  ldi r18,lo8(18)
 751 043e 00D0                  rcall SendOutData
 752                    .LM97:
 753 0440 82E3                  ldi r24,lo8(50)
 754 0442 90E0                  ldi r25,hi8(50)
 755 0444 00D0                  rcall SetDelay
 756 0446 9093 0000             sts (Debug_Timer)+1,r25
 757 044a 8093 0000             sts Debug_Timer,r24
 758                    .L50:
 759 044e 0895                  ret
 760                    .LFE12:
 762                    .global UART_Init
 764                    UART_Init:
 765                    .LFB11:
 766                    .LM98:
 767                    /* prologue: function */
 768                    /* frame size = 0 */
 769                    .LM99:
 770 0450 88E1                  ldi r24,lo8(24)
 771 0452 8AB9                  out 42-32,r24
 772                    .LM100:
 773 0454 599A                  sbi 43-32,1
 774                    .LM101:
 775 0456 579A                  sbi 42-32,7
 776                    .LM102:
 777 0458 80E1                  ldi r24,lo8(16)
 778 045a 89B9                  out 41-32,r24
 779                    .LM103:
 780 045c 80E0                  ldi r24,lo8(gs(uart_putchar))
 781 045e 90E0                  ldi r25,hi8(gs(uart_putchar))
 782 0460 60E0                  ldi r22,lo8(0)
 783 0462 70E0                  ldi r23,hi8(0)
 784 0464 00D0                  rcall fdevopen
 785                    .LM104:
 786 0466 88EC                  ldi r24,lo8(200)
 787 0468 90E0                  ldi r25,hi8(200)
 788 046a 00D0                  rcall SetDelay
 789 046c 9093 0000             sts (Debug_Timer)+1,r25
 790 0470 8093 0000             sts Debug_Timer,r24
 791                    .LM105:
 792 0474 8AE0                  ldi r24,lo8(10)
 793 0476 00D0                  rcall uart_putchar
 794 0478 82E4                  ldi r24,lo8(66)
 795 047a 00D0                  rcall uart_putchar
 796 047c 8CE4                  ldi r24,lo8(76)
 797 047e 00D0                  rcall uart_putchar
 798 0480 8AE3                  ldi r24,lo8(58)
 799 0482 00D0                  rcall uart_putchar
 800                    .LM106:
 801 0484 86E5                  ldi r24,lo8(86)
 802 0486 00D0                  rcall uart_putchar
 803 0488 80E3                  ldi r24,lo8(48)
 804 048a 00D0                  rcall uart_putchar
 805 048c 8EE2                  ldi r24,lo8(46)
 806 048e 00D0                  rcall uart_putchar
 807 0490 84E3                  ldi r24,lo8(52)
 808 0492 00D0                  rcall uart_putchar
 809 0494 81E3                  ldi r24,lo8(49)
 810 0496 00D0                  rcall uart_putchar
 811                    .LM107:
 812 0498 8AE0                  ldi r24,lo8(10)
 813 049a 00D0                  rcall uart_putchar
 814 049c 88E4                  ldi r24,lo8(72)
 815 049e 00D0                  rcall uart_putchar
 816 04a0 87E5                  ldi r24,lo8(87)
 817 04a2 00D0                  rcall uart_putchar
 818 04a4 8AE3                  ldi r24,lo8(58)
 819 04a6 00D0                  rcall uart_putchar
 820 04a8 81E3                  ldi r24,lo8(49)
 821 04aa 00D0                  rcall uart_putchar
 822 04ac 8EE2                  ldi r24,lo8(46)
 823 04ae 00D0                  rcall uart_putchar
 824 04b0 8091 0000             lds r24,HwVersion
 825 04b4 8A5D                  subi r24,lo8(-(38))
 826 04b6 00D0                  rcall uart_putchar
 827                    .LM108:
 828 04b8 8AE0                  ldi r24,lo8(10)
 829 04ba 00D0                  rcall uart_putchar
 830 04bc 81E4                  ldi r24,lo8(65)
 831 04be 00D0                  rcall uart_putchar
 832 04c0 84E4                  ldi r24,lo8(68)
 833 04c2 00D0                  rcall uart_putchar
 834 04c4 82E5                  ldi r24,lo8(82)
 835 04c6 00D0                  rcall uart_putchar
 836 04c8 8AE3                  ldi r24,lo8(58)
 837 04ca 00D0                  rcall uart_putchar
 838 04cc 8091 0000             lds r24,MotorAdresse
 839 04d0 805D                  subi r24,lo8(-(48))
 840 04d2 00D0                  rcall uart_putchar
 841                    /* epilogue start */
 842                    .LM109:
 843 04d4 0895                  ret
 844                    .LFE11:
 846                    .global SIO_Sollwert
 847                    .global SIO_Sollwert
 848                            .section .bss
 851                    SIO_Sollwert:
 852 0000 00                    .skip 1,0
 853                    .global SioTmp
 854                    .global SioTmp
 857                    SioTmp:
 858 0001 00                    .skip 1,0
 859                    .global NeuerDatensatzEmpfangen
 860                    .global NeuerDatensatzEmpfangen
 863                    NeuerDatensatzEmpfangen:
 864 0002 00                    .skip 1,0
 865                    .global UebertragungAbgeschlossen
 866                            .data
 869                    UebertragungAbgeschlossen:
 870 0000 01                    .byte   1
 871                    .global MotorTest
 872                    .global MotorTest
 873                            .section .bss
 876                    MotorTest:
 877 0003 0000 0000             .skip 6,0
 877      0000 
 878                    .global AnzahlEmpfangsBytes
 879                    .global AnzahlEmpfangsBytes
 882                    AnzahlEmpfangsBytes:
 883 0009 00                    .skip 1,0
 884                            .lcomm UartState.1915,1
 885                            .lcomm buf_ptr.1914,1
 886                            .lcomm crc2.1913,1
 887                            .lcomm crc1.1912,1
 888                            .lcomm crc.1911,2
 889                            .lcomm ptr.1846,2
 890                            .comm MeineSlaveAdresse,1,1
 891                            .comm Debug_Timer,2,1
 892                            .comm DebugOut,18,1
 893                            .comm SendeBuffer,100,1
 894                            .comm RxdBuffer,100,1
 991                    .Letext0:
DEFINED SYMBOLS
                            *ABS*:00000000 uart.c
C:\DOCUME~1\ADMINI~1\LOCALS~1\Temp/ccND1o1s.s:2      *ABS*:0000003f __SREG__
C:\DOCUME~1\ADMINI~1\LOCALS~1\Temp/ccND1o1s.s:3      *ABS*:0000003e __SP_H__
C:\DOCUME~1\ADMINI~1\LOCALS~1\Temp/ccND1o1s.s:4      *ABS*:0000003d __SP_L__
C:\DOCUME~1\ADMINI~1\LOCALS~1\Temp/ccND1o1s.s:5      *ABS*:00000034 __CCP__
C:\DOCUME~1\ADMINI~1\LOCALS~1\Temp/ccND1o1s.s:6      *ABS*:00000000 __tmp_reg__
C:\DOCUME~1\ADMINI~1\LOCALS~1\Temp/ccND1o1s.s:7      *ABS*:00000001 __zero_reg__
C:\DOCUME~1\ADMINI~1\LOCALS~1\Temp/ccND1o1s.s:18     .text:00000000 __vector_13
C:\DOCUME~1\ADMINI~1\LOCALS~1\Temp/ccND1o1s.s:39     .text:00000014 SendUart
C:\DOCUME~1\ADMINI~1\LOCALS~1\Temp/ccND1o1s.s:869    .data:00000000 UebertragungAbgeschlossen
C:\DOCUME~1\ADMINI~1\LOCALS~1\Temp/ccND1o1s.s:888    .bss:00000010 ptr.1846
                            *COM*:00000064 SendeBuffer
C:\DOCUME~1\ADMINI~1\LOCALS~1\Temp/ccND1o1s.s:93     .text:00000062 Decode64
                            *COM*:00000064 RxdBuffer
C:\DOCUME~1\ADMINI~1\LOCALS~1\Temp/ccND1o1s.s:223    .text:00000112 AddCRC
C:\DOCUME~1\ADMINI~1\LOCALS~1\Temp/ccND1o1s.s:297    .text:0000016e SendOutData
C:\DOCUME~1\ADMINI~1\LOCALS~1\Temp/ccND1o1s.s:443    .text:00000238 uart_putchar
C:\DOCUME~1\ADMINI~1\LOCALS~1\Temp/ccND1o1s.s:476    .text:00000252 __vector_11
C:\DOCUME~1\ADMINI~1\LOCALS~1\Temp/ccND1o1s.s:857    .bss:00000001 SioTmp
C:\DOCUME~1\ADMINI~1\LOCALS~1\Temp/ccND1o1s.s:884    .bss:0000000b buf_ptr.1914
                             .bss:0000000a UartState.1915
C:\DOCUME~1\ADMINI~1\LOCALS~1\Temp/ccND1o1s.s:887    .bss:0000000e crc.1911
C:\DOCUME~1\ADMINI~1\LOCALS~1\Temp/ccND1o1s.s:886    .bss:0000000d crc1.1912
C:\DOCUME~1\ADMINI~1\LOCALS~1\Temp/ccND1o1s.s:885    .bss:0000000c crc2.1913
C:\DOCUME~1\ADMINI~1\LOCALS~1\Temp/ccND1o1s.s:882    .bss:00000009 AnzahlEmpfangsBytes
C:\DOCUME~1\ADMINI~1\LOCALS~1\Temp/ccND1o1s.s:876    .bss:00000003 MotorTest
C:\DOCUME~1\ADMINI~1\LOCALS~1\Temp/ccND1o1s.s:851    .bss:00000000 SIO_Sollwert
C:\DOCUME~1\ADMINI~1\LOCALS~1\Temp/ccND1o1s.s:863    .bss:00000002 NeuerDatensatzEmpfangen
C:\DOCUME~1\ADMINI~1\LOCALS~1\Temp/ccND1o1s.s:718    .text:0000041a WriteProgramData
C:\DOCUME~1\ADMINI~1\LOCALS~1\Temp/ccND1o1s.s:731    .text:0000041c DatenUebertragung
                            *COM*:00000002 Debug_Timer
                            *COM*:00000001 MeineSlaveAdresse
                            *COM*:00000012 DebugOut
C:\DOCUME~1\ADMINI~1\LOCALS~1\Temp/ccND1o1s.s:764    .text:00000450 UART_Init

UNDEFINED SYMBOLS
MotorAdresse
SIO_Timeout
CheckDelay
SetDelay
fdevopen
HwVersion
__do_copy_data
__do_clear_bss