Subversion Repositories group.electronics

Rev

Blame | Last modification | View Log | RSS feed

   1                            .file   "main.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 usbFunctionSetup
  18                    usbFunctionSetup:
  19                    .LFB6:
  20                    .LM1:
  21                    .LVL0:
  22                    /* prologue: function */
  23                    /* frame size = 0 */
  24                    /* stack size = 0 */
  25                    .L__stack_usage = 0
  26                    .LM2:
  27 0000 80E0                  ldi r24,lo8(0)
  28                    .LVL1:
  29                    /* epilogue start */
  30 0002 0895                  ret
  31                    .LFE6:
  33                    .global hadUsbReset
  35                    hadUsbReset:
  36                    .LFB8:
  37                    .LM3:
  38 0004 AF92                  push r10
  39 0006 BF92                  push r11
  40 0008 DF92                  push r13
  41 000a EF92                  push r14
  42 000c FF92                  push r15
  43 000e 0F93                  push r16
  44 0010 1F93                  push r17
  45 0012 CF93                  push r28
  46 0014 DF93                  push r29
  47                    /* prologue: function */
  48                    /* frame size = 0 */
  49                    /* stack size = 9 */
  50                    .L__stack_usage = 9
  51                    .LVL2:
  52                    .LM4:
  53 0016 08E0                  ldi r16,lo8(8)
  54 0018 10E0                  ldi r17,hi8(8)
  55                    .LM5:
  56 001a EE24                  clr r14
  57                    .LM6:
  58 001c 80E8                  ldi r24,lo8(-128)
  59 001e F82E                  mov r15,r24
  60                    .LVL3:
  61                    .L4:
  62                    .LBB40:
  63                    .LBB41:
  64                    .LM7:
  65 0020 DF2C                  mov r13,r15
  66 0022 DE0C                  add r13,r14
  67 0024 D1BE                  out 81-32,r13
  68                    .LM8:
  69 0026 00D0                  rcall usbMeasureFrameLength
  70 0028 A82E                  mov r10,r24
  71 002a E501                  movw r28,r10
  72 002c 5E01                  movw r10,r28
  73 002e B92E                  mov r11,r25
  74 0030 E501                  movw r28,r10
  75                    .LVL4:
  76                    .LM9:
  77 0032 99E0                  ldi r25,hi8(2356)
  78 0034 C433                  cpi r28,lo8(2356)
  79 0036 D907                  cpc r29,r25
  80 0038 04F4                  brge .L3
  81                    .LM10:
  82 003a ED2C                  mov r14,r13
  83                    .LVL5:
  84                    .L3:
  85                    .LM11:
  86 003c F694                  lsr r15
  87                    .LVL6:
  88 003e 0150                  subi r16,lo8(-(-1))
  89 0040 1040                  sbci r17,hi8(-(-1))
  90                    .LM12:
  91 0042 01F4                  brne .L4
  92                    .LVL7:
  93                    .LM13:
  94 0044 8E2D                  mov r24,r14
  95 0046 8150                  subi r24,lo8(-(-1))
  96 0048 81BF                  out 81-32,r24
  97 004a 81B7                  in r24,81-32
  98 004c 0E2D                  mov r16,r14
  99 004e 10E0                  ldi r17,lo8(0)
 100 0050 0F5F                  subi r16,lo8(-(1))
 101 0052 1F4F                  sbci r17,hi8(-(1))
 102 0054 90E0                  ldi r25,lo8(0)
 103 0056 0817                  cp r16,r24
 104 0058 1907                  cpc r17,r25
 105 005a 04F4                  brge .L9
 106 005c 00C0                  rjmp .L5
 107                    .LVL8:
 108                    .L6:
 109                    .LM14:
 110 005e 8C17                  cp r24,r28
 111 0060 9D07                  cpc r25,r29
 112 0062 04F4                  brge .L7
 113                    .LVL9:
 114                    .LM15:
 115 0064 E1B6                  in r14,81-32
 116                    .LVL10:
 117 0066 EC01                  movw r28,r24
 118                    .LVL11:
 119                    .L7:
 120                    .LM16:
 121 0068 81B7                  in r24,81-32
 122                    .LVL12:
 123 006a 8F5F                  subi r24,lo8(-(1))
 124 006c 81BF                  out 81-32,r24
 125 006e 81B7                  in r24,81-32
 126 0070 90E0                  ldi r25,lo8(0)
 127 0072 0817                  cp r16,r24
 128 0074 1907                  cpc r17,r25
 129 0076 04F0                  brlt .L5
 130                    .LVL13:
 131                    .L9:
 132                    .LM17:
 133 0078 00D0                  rcall usbMeasureFrameLength
 134 007a 8453                  subi r24,lo8(-(-2356))
 135 007c 9940                  sbci r25,hi8(-(-2356))
 136 007e 97FF                  sbrs r25,7
 137 0080 00C0                  rjmp .L6
 138 0082 9095                  com r25
 139 0084 8195                  neg r24
 140 0086 9F4F                  sbci r25,lo8(-1)
 141 0088 00C0                  rjmp .L6
 142                    .L5:
 143                    .LM18:
 144 008a E1BE                  out 81-32,r14
 145                    .LBE41:
 146                    .LBE40:
 147                    .LM19:
 148 008c 61B7                  in r22,81-32
 149 008e 80E0                  ldi r24,lo8(0)
 150 0090 90E0                  ldi r25,hi8(0)
 151 0092 00D0                  rcall __eewr_byte_tn85
 152                    /* epilogue start */
 153                    .LM20:
 154 0094 DF91                  pop r29
 155 0096 CF91                  pop r28
 156 0098 1F91                  pop r17
 157 009a 0F91                  pop r16
 158 009c FF90                  pop r15
 159                    .LVL14:
 160 009e EF90                  pop r14
 161                    .LVL15:
 162 00a0 DF90                  pop r13
 163 00a2 BF90                  pop r11
 164 00a4 AF90                  pop r10
 165 00a6 0895                  ret
 166                    .LFE8:
 168                    .global main
 170                    main:
 171                    .LFB9:
 172                    .LM21:
 173 00a8 0F93                  push r16
 174 00aa 1F93                  push r17
 175                    /* prologue: function */
 176                    /* frame size = 0 */
 177                    /* stack size = 2 */
 178                    .L__stack_usage = 2
 179                    .L14:
 180                    .LM22:
 181 00ac E199                  sbic 60-32,1
 182 00ae 00C0                  rjmp .L14
 183                    .LM23:
 184 00b0 80E0                  ldi r24,lo8(0)
 185 00b2 90E0                  ldi r25,hi8(0)
 186 00b4 00D0                  rcall __eerd_byte_tn85
 187                    .LVL16:
 188                    .LM24:
 189 00b6 8F3F                  cpi r24,lo8(-1)
 190 00b8 01F0                  breq .L15
 191                    .LM25:
 192 00ba 81BF                  out 81-32,r24
 193                    .L15:
 194                    .LVL17:
 195                    .LBB42:
 196                    .LBB43:
 197                    .LM26:
 198 00bc 81E2                   ldi r24,lo8(-24287)
 199 00be 91EA              ldi r25,hi8(-24287)
 200 00c0 0197              1:sbiw r24,1
 201 00c2 01F4              brne 1b
 202                    .LVL18:
 203 00c4 00C0                  rjmp .
 204 00c6 0000                  nop
 205                    .LBE43:
 206                    .LBE42:
 207                    .LM27:
 208 00c8 479A                  sbi 40-32,7
 209                    .LM28:
 210 00ca B89A                  sbi 55-32,0
 211                    .LVL19:
 212                    .LBB44:
 213                    .LBB45:
 214                    .LM29:
 215 00cc 8FE4                   ldi r24,lo8(1649999)
 216 00ce 9DE2              ldi r25,hi8(1649999)
 217 00d0 A9E1              ldi r26,hlo8(1649999)
 218 00d2 8150              1:subi r24,1
 219 00d4 9040              sbci r25,0
 220 00d6 A040              sbci r26,0
 221 00d8 01F4              brne 1b
 222 00da 00C0                  rjmp .
 223 00dc 0000                  nop
 224                    .LBE45:
 225                    .LBE44:
 226                    .LM30:
 227 00de B898                  cbi 55-32,0
 228                    .LM31:
 229 00e0 2EE0                  ldi r18,lo8(14)
 230 00e2 88E1                  ldi r24,lo8(24)
 231 00e4 90E0                  ldi r25,hi8(24)
 232                    /* #APP */
 233                     ;  124 "main.c" 1
 234 00e6 0FB6                  in __tmp_reg__,__SREG__
 235 00e8 F894                  cli
 236 00ea A895                  wdr
 237 00ec 81BD                  out 33,r24
 238 00ee 0FBE                  out __SREG__,__tmp_reg__
 239 00f0 21BD                  out 33,r18
 240                     ;  0 "" 2
 241                    .LM32:
 242                    /* #NOAPP */
 243 00f2 00D0                  rcall usbInit
 244                    .LM33:
 245                    /* #APP */
 246                     ;  126 "main.c" 1
 247 00f4 7894                  sei
 248                     ;  0 "" 2
 249                    .LM34:
 250                    /* #NOAPP */
 251 00f6 BB9A                  sbi 55-32,3
 252                    .LM35:
 253 00f8 B998                  cbi 55-32,1
 254                    .LM36:
 255 00fa BC9A                  sbi 55-32,4
 256                    .LM37:
 257 00fc C398                  cbi 56-32,3
 258                    .LM38:
 259 00fe C498                  cbi 56-32,4
 260                    .LM39:
 261 0100 15E0                  ldi r17,lo8(5)
 262                    .LM40:
 263 0102 05E2                  ldi r16,lo8(37)
 264                    .L29:
 265                    .LM41:
 266                    /* #APP */
 267                     ;  136 "main.c" 1
 268 0104 A895                  wdr
 269                     ;  0 "" 2
 270                    .LM42:
 271                    /* #NOAPP */
 272 0106 00D0                  rcall usbPoll
 273                    .LM43:
 274 0108 8091 0000             lds r24,usbTxStatus1
 275 010c 84FF                  sbrs r24,4
 276 010e 00C0                  rjmp .L29
 277                    .LM44:
 278 0110 1093 0000             sts reportBuffer,r17
 279                    .LM45:
 280 0114 C49A                  sbi 56-32,4
 281                    .LVL20:
 282                    .LBB46:
 283                    .LBB47:
 284                    .LM46:
 285 0116 95E0                   ldi r25,lo8(5)
 286 0118 9A95              1:dec r25
 287 011a 01F4              brne 1b
 288 011c 00C0                  rjmp .
 289                    .LBE47:
 290                    .LBE46:
 291                    .LM47:
 292 011e C498                  cbi 56-32,4
 293                    .LVL21:
 294                    .LBB48:
 295                    .LBB49:
 296                    .LM48:
 297 0120 A5E0                   ldi r26,lo8(5)
 298 0122 AA95              1:dec r26
 299 0124 01F4              brne 1b
 300 0126 00C0                  rjmp .
 301                    .LBE49:
 302                    .LBE48:
 303                    .LM49:
 304 0128 B199                  sbic 54-32,1
 305 012a 00C0                  rjmp .L17
 306                    .LM50:
 307 012c 0093 0000             sts reportBuffer,r16
 308                    .L17:
 309                    .LM51:
 310 0130 C39A                  sbi 56-32,3
 311                    .LVL22:
 312                    .LBB50:
 313                    .LBB51:
 314                    .LM52:
 315 0132 B5E0                   ldi r27,lo8(5)
 316 0134 BA95              1:dec r27
 317 0136 01F4              brne 1b
 318 0138 00C0                  rjmp .
 319                    .LBE51:
 320                    .LBE50:
 321                    .LM53:
 322 013a C398                  cbi 56-32,3
 323                    .LVL23:
 324                    .LBB52:
 325                    .LBB53:
 326                    .LM54:
 327 013c 85E0                   ldi r24,lo8(5)
 328 013e 8A95              1:dec r24
 329 0140 01F4              brne 1b
 330 0142 00C0                  rjmp .
 331                    .LBE53:
 332                    .LBE52:
 333                    .LM55:
 334 0144 B199                  sbic 54-32,1
 335 0146 00C0                  rjmp .L18
 336                    .LM56:
 337 0148 8091 0000             lds r24,reportBuffer
 338 014c 8061                  ori r24,lo8(16)
 339 014e 8093 0000             sts reportBuffer,r24
 340                    .L18:
 341                    .LM57:
 342 0152 C39A                  sbi 56-32,3
 343                    .LVL24:
 344                    .LBB54:
 345                    .LBB55:
 346                    .LM58:
 347 0154 95E0                   ldi r25,lo8(5)
 348 0156 9A95              1:dec r25
 349 0158 01F4              brne 1b
 350 015a 00C0                  rjmp .
 351                    .LBE55:
 352                    .LBE54:
 353                    .LM59:
 354 015c C398                  cbi 56-32,3
 355                    .LVL25:
 356                    .LBB56:
 357                    .LBB57:
 358                    .LM60:
 359 015e A5E0                   ldi r26,lo8(5)
 360 0160 AA95              1:dec r26
 361 0162 01F4              brne 1b
 362 0164 00C0                  rjmp .
 363                    .LBE57:
 364                    .LBE56:
 365                    .LM61:
 366 0166 B199                  sbic 54-32,1
 367 0168 00C0                  rjmp .L19
 368                    .LM62:
 369 016a 8091 0000             lds r24,reportBuffer
 370 016e 8064                  ori r24,lo8(64)
 371 0170 8093 0000             sts reportBuffer,r24
 372                    .L19:
 373                    .LM63:
 374 0174 C39A                  sbi 56-32,3
 375                    .LVL26:
 376                    .LBB58:
 377                    .LBB59:
 378                    .LM64:
 379 0176 B5E0                   ldi r27,lo8(5)
 380 0178 BA95              1:dec r27
 381 017a 01F4              brne 1b
 382 017c 00C0                  rjmp .
 383                    .LBE59:
 384                    .LBE58:
 385                    .LM65:
 386 017e C398                  cbi 56-32,3
 387                    .LVL27:
 388                    .LBB60:
 389                    .LBB61:
 390                    .LM66:
 391 0180 85E0                   ldi r24,lo8(5)
 392 0182 8A95              1:dec r24
 393 0184 01F4              brne 1b
 394 0186 00C0                  rjmp .
 395                    .LBE61:
 396                    .LBE60:
 397                    .LM67:
 398 0188 B199                  sbic 54-32,1
 399 018a 00C0                  rjmp .L20
 400                    .LM68:
 401 018c 8091 0000             lds r24,reportBuffer
 402 0190 8068                  ori r24,lo8(-128)
 403 0192 8093 0000             sts reportBuffer,r24
 404                    .L20:
 405                    .LM69:
 406 0196 C39A                  sbi 56-32,3
 407                    .LVL28:
 408                    .LBB62:
 409                    .LBB63:
 410                    .LM70:
 411 0198 95E0                   ldi r25,lo8(5)
 412 019a 9A95              1:dec r25
 413 019c 01F4              brne 1b
 414 019e 00C0                  rjmp .
 415                    .LBE63:
 416                    .LBE62:
 417                    .LM71:
 418 01a0 C398                  cbi 56-32,3
 419                    .LVL29:
 420                    .LBB64:
 421                    .LBB65:
 422                    .LM72:
 423 01a2 A5E0                   ldi r26,lo8(5)
 424 01a4 AA95              1:dec r26
 425 01a6 01F4              brne 1b
 426 01a8 00C0                  rjmp .
 427                    .LBE65:
 428                    .LBE64:
 429                    .LM73:
 430 01aa B199                  sbic 54-32,1
 431 01ac 00C0                  rjmp .L21
 432                    .LM74:
 433 01ae 9091 0000             lds r25,reportBuffer
 434 01b2 892F                  mov r24,r25
 435 01b4 8695                  lsr r24
 436 01b6 8695                  lsr r24
 437 01b8 8D5F                  subi r24,lo8(-(3))
 438 01ba 8370                  andi r24,lo8(3)
 439 01bc 880F                  lsl r24
 440 01be 880F                  lsl r24
 441 01c0 937F                  andi r25,lo8(-13)
 442 01c2 982B                  or r25,r24
 443 01c4 9093 0000             sts reportBuffer,r25
 444                    .L21:
 445                    .LM75:
 446 01c8 C39A                  sbi 56-32,3
 447                    .LVL30:
 448                    .LBB66:
 449                    .LBB67:
 450                    .LM76:
 451 01ca B5E0                   ldi r27,lo8(5)
 452 01cc BA95              1:dec r27
 453 01ce 01F4              brne 1b
 454 01d0 00C0                  rjmp .
 455                    .LBE67:
 456                    .LBE66:
 457                    .LM77:
 458 01d2 C398                  cbi 56-32,3
 459                    .LVL31:
 460                    .LBB68:
 461                    .LBB69:
 462                    .LM78:
 463 01d4 85E0                   ldi r24,lo8(5)
 464 01d6 8A95              1:dec r24
 465 01d8 01F4              brne 1b
 466 01da 00C0                  rjmp .
 467                    .LBE69:
 468                    .LBE68:
 469                    .LM79:
 470 01dc B199                  sbic 54-32,1
 471 01de 00C0                  rjmp .L22
 472                    .LM80:
 473 01e0 9091 0000             lds r25,reportBuffer
 474 01e4 892F                  mov r24,r25
 475 01e6 8695                  lsr r24
 476 01e8 8695                  lsr r24
 477 01ea 8F5F                  subi r24,lo8(-(1))
 478 01ec 8370                  andi r24,lo8(3)
 479 01ee 880F                  lsl r24
 480 01f0 880F                  lsl r24
 481 01f2 937F                  andi r25,lo8(-13)
 482 01f4 982B                  or r25,r24
 483 01f6 9093 0000             sts reportBuffer,r25
 484                    .L22:
 485                    .LM81:
 486 01fa C39A                  sbi 56-32,3
 487                    .LVL32:
 488                    .LBB70:
 489                    .LBB71:
 490                    .LM82:
 491 01fc 95E0                   ldi r25,lo8(5)
 492 01fe 9A95              1:dec r25
 493 0200 01F4              brne 1b
 494 0202 00C0                  rjmp .
 495                    .LBE71:
 496                    .LBE70:
 497                    .LM83:
 498 0204 C398                  cbi 56-32,3
 499                    .LVL33:
 500                    .LBB72:
 501                    .LBB73:
 502                    .LM84:
 503 0206 A5E0                   ldi r26,lo8(5)
 504 0208 AA95              1:dec r26
 505 020a 01F4              brne 1b
 506 020c 00C0                  rjmp .
 507                    .LBE73:
 508                    .LBE72:
 509                    .LM85:
 510 020e B199                  sbic 54-32,1
 511 0210 00C0                  rjmp .L23
 512                    .LM86:
 513 0212 8091 0000             lds r24,reportBuffer
 514 0216 982F                  mov r25,r24
 515 0218 9D5F                  subi r25,lo8(-(3))
 516 021a 9370                  andi r25,lo8(3)
 517 021c 8C7F                  andi r24,lo8(-4)
 518 021e 892B                  or r24,r25
 519 0220 8093 0000             sts reportBuffer,r24
 520                    .L23:
 521                    .LM87:
 522 0224 C39A                  sbi 56-32,3
 523                    .LVL34:
 524                    .LBB74:
 525                    .LBB75:
 526                    .LM88:
 527 0226 B5E0                   ldi r27,lo8(5)
 528 0228 BA95              1:dec r27
 529 022a 01F4              brne 1b
 530 022c 00C0                  rjmp .
 531                    .LBE75:
 532                    .LBE74:
 533                    .LM89:
 534 022e C398                  cbi 56-32,3
 535                    .LVL35:
 536                    .LBB76:
 537                    .LBB77:
 538                    .LM90:
 539 0230 85E0                   ldi r24,lo8(5)
 540 0232 8A95              1:dec r24
 541 0234 01F4              brne 1b
 542 0236 00C0                  rjmp .
 543                    .LBE77:
 544                    .LBE76:
 545                    .LM91:
 546 0238 B199                  sbic 54-32,1
 547 023a 00C0                  rjmp .L24
 548                    .LM92:
 549 023c 8091 0000             lds r24,reportBuffer
 550 0240 982F                  mov r25,r24
 551 0242 9F5F                  subi r25,lo8(-(1))
 552 0244 9370                  andi r25,lo8(3)
 553 0246 8C7F                  andi r24,lo8(-4)
 554 0248 892B                  or r24,r25
 555 024a 8093 0000             sts reportBuffer,r24
 556                    .L24:
 557                    .LM93:
 558 024e 80E0                  ldi r24,lo8(reportBuffer)
 559 0250 90E0                  ldi r25,hi8(reportBuffer)
 560 0252 61E0                  ldi r22,lo8(1)
 561 0254 00D0                  rcall usbSetInterrupt
 562 0256 00C0                  rjmp .L29
 563                    .LFE9:
 565                    .global usbDescriptorHidReport
 566                            .section        .progmem.data,"a",@progbits
 569                    usbDescriptorHidReport:
 570 0000 05                    .byte   5
 571 0001 01                    .byte   1
 572 0002 09                    .byte   9
 573 0003 05                    .byte   5
 574 0004 A1                    .byte   -95
 575 0005 01                    .byte   1
 576 0006 09                    .byte   9
 577 0007 01                    .byte   1
 578 0008 A1                    .byte   -95
 579 0009 00                    .byte   0
 580 000a 09                    .byte   9
 581 000b 30                    .byte   48
 582 000c 09                    .byte   9
 583 000d 31                    .byte   49
 584 000e 15                    .byte   21
 585 000f 00                    .byte   0
 586 0010 25                    .byte   37
 587 0011 02                    .byte   2
 588 0012 75                    .byte   117
 589 0013 02                    .byte   2
 590 0014 95                    .byte   -107
 591 0015 02                    .byte   2
 592 0016 81                    .byte   -127
 593 0017 02                    .byte   2
 594 0018 C0                    .byte   -64
 595 0019 05                    .byte   5
 596 001a 09                    .byte   9
 597 001b 19                    .byte   25
 598 001c 01                    .byte   1
 599 001d 29                    .byte   41
 600 001e 04                    .byte   4
 601 001f 15                    .byte   21
 602 0020 00                    .byte   0
 603 0021 25                    .byte   37
 604 0022 01                    .byte   1
 605 0023 75                    .byte   117
 606 0024 01                    .byte   1
 607 0025 95                    .byte   -107
 608 0026 04                    .byte   4
 609 0027 81                    .byte   -127
 610 0028 02                    .byte   2
 611 0029 C0                    .byte   -64
 612                    .global __fuse
 613                            .section        .fuse,"aw",@progbits
 616                    __fuse:
 617 0000 E1                    .byte   -31
 618 0001 DD                    .byte   -35
 619 0002 FF                    .byte   -1
 620                            .comm reportBuffer,1,1
 661                    .Letext0:
DEFINED SYMBOLS
                            *ABS*:00000000 main.c
     /tmp/ccamLJh6.s:2      *ABS*:0000003f __SREG__
     /tmp/ccamLJh6.s:3      *ABS*:0000003e __SP_H__
     /tmp/ccamLJh6.s:4      *ABS*:0000003d __SP_L__
     /tmp/ccamLJh6.s:5      *ABS*:00000034 __CCP__
     /tmp/ccamLJh6.s:6      *ABS*:00000000 __tmp_reg__
     /tmp/ccamLJh6.s:7      *ABS*:00000001 __zero_reg__
     /tmp/ccamLJh6.s:18     .text:00000000 usbFunctionSetup
     /tmp/ccamLJh6.s:35     .text:00000004 hadUsbReset
     /tmp/ccamLJh6.s:170    .text:000000a8 main
                            *COM*:00000001 reportBuffer
     /tmp/ccamLJh6.s:569    .progmem.data:00000000 usbDescriptorHidReport
     /tmp/ccamLJh6.s:616    .fuse:00000000 __fuse

UNDEFINED SYMBOLS
usbMeasureFrameLength
__eewr_byte_tn85
__eerd_byte_tn85
usbInit
usbPoll
usbTxStatus1
usbSetInterrupt
__do_clear_bss