FreeCalypso > hg > freecalypso-reveng
comparison dsample-fw-disasm @ 264:e4a596bbb2bf
dsample-fw-disasm: ARMIO functions located
| author | Mychaela Falconia <falcon@freecalypso.org> |
|---|---|
| date | Thu, 18 Jan 2018 05:39:53 +0000 |
| parents | 7b679943b57d |
| children | d15f701b1434 |
comparison
equal
deleted
inserted
replaced
| 263:7b679943b57d | 264:e4a596bbb2bf |
|---|---|
| 354 245982: 8001 strh r1, [r0, #0] | 354 245982: 8001 strh r1, [r0, #0] |
| 355 245984: 241f mov r4, #31 ; 0x1f | 355 245984: 241f mov r4, #31 ; 0x1f |
| 356 245986: 8044 strh r4, [r0, #2] | 356 245986: 8044 strh r4, [r0, #2] |
| 357 245988: 2103 mov r1, #3 | 357 245988: 2103 mov r1, #3 |
| 358 24598a: 8181 strh r1, [r0, #12] ; 0xc | 358 24598a: 8181 strh r1, [r0, #12] ; 0xc |
| 359 24598c: f005 fc28 bl 0x24b1e0 | 359 24598c: f005 fc28 bl 0x24b1e0 ; $IQ_SetupInterrupts |
| 360 245990: 4846 ldr r0, =0xfffffc00 ; via 0x245aac | 360 245990: 4846 ldr r0, =0xfffffc00 ; via 0x245aac |
| 361 245992: 2124 mov r1, #36 ; 0x24 | 361 245992: 2124 mov r1, #36 ; 0x24 |
| 362 245994: 8001 strh r1, [r0, #0] | 362 245994: 8001 strh r1, [r0, #0] |
| 363 245996: 210d mov r1, #13 ; 0xd | 363 245996: 210d mov r1, #13 ; 0xd |
| 364 245998: 8041 strh r1, [r0, #2] | 364 245998: 8041 strh r1, [r0, #2] |
| 418 245a04: 2832 cmp r0, #50 ; 0x32 | 418 245a04: 2832 cmp r0, #50 ; 0x32 |
| 419 245a06: d3f9 bcc 0x2459fc | 419 245a06: d3f9 bcc 0x2459fc |
| 420 245a08: 8a48 ldrh r0, [r1, #18] ; 0x12 | 420 245a08: 8a48 ldrh r0, [r1, #18] ; 0x12 |
| 421 245a0a: 2800 cmp r0, #0 | 421 245a0a: 2800 cmp r0, #0 |
| 422 245a0c: d0fc beq 0x245a08 | 422 245a0c: d0fc beq 0x245a08 |
| 423 245a0e: f006 fdbf bl 0x24c590 | 423 245a0e: f006 fdbf bl 0x24c590 ; $AI_ClockEnable |
| 424 245a12: f006 fdc3 bl 0x24c59c | 424 245a12: f006 fdc3 bl 0x24c59c ; $AI_InitIOConfig |
| 425 245a16: 2027 mov r0, #39 ; 0x27 | 425 245a16: 2027 mov r0, #39 ; 0x27 |
| 426 245a18: 0500 lsl r0, r0, #20 | 426 245a18: 0500 lsl r0, r0, #20 |
| 427 245a1a: 8004 strh r4, [r0, #0] | 427 245a1a: 8004 strh r4, [r0, #0] |
| 428 245a1c: 2001 mov r0, #1 | 428 245a1c: 2001 mov r0, #1 |
| 429 245a1e: f006 fc80 bl 0x24c322 | 429 245a1e: f006 fc80 bl 0x24c322 ; $TM_EnableTimer |
| 430 245a22: 2002 mov r0, #2 | 430 245a22: 2002 mov r0, #2 |
| 431 245a24: f006 fc7d bl 0x24c322 | 431 245a24: f006 fc7d bl 0x24c322 ; $TM_EnableTimer |
| 432 245a28: b001 add sp, #4 | 432 245a28: b001 add sp, #4 |
| 433 245a2a: bd70 pop {r4, r5, r6, pc} | 433 245a2a: bd70 pop {r4, r5, r6, pc} |
| 434 | 434 |
| 435 $Init_Drivers: | 435 $Init_Drivers: |
| 436 245a2c: b500 push {lr} | 436 245a2c: b500 push {lr} |
| 470 245a76: 4770 bx lr | 470 245a76: 4770 bx lr |
| 471 245a78: 4770 bx lr | 471 245a78: 4770 bx lr |
| 472 245a7a: 4770 bx lr | 472 245a7a: 4770 bx lr |
| 473 245a7c: 4770 bx lr | 473 245a7c: 4770 bx lr |
| 474 245a7e: 4770 bx lr | 474 245a7e: 4770 bx lr |
| 475 | |
| 476 $AI_EnableBit: | |
| 477 24c4f4: 4a4e ldr r2, =0xfffef00a ; via 0x24c630 | |
| 478 24c4f6: 2101 mov r1, #1 | |
| 479 24c4f8: 4081 lsl r1, r0 | |
| 480 24c4fa: 8810 ldrh r0, [r2, #0] | |
| 481 24c4fc: 4301 orr r1, r0 | |
| 482 24c4fe: 8011 strh r1, [r2, #0] | |
| 483 24c500: 4770 bx lr | |
| 484 | |
| 485 $AI_DisableBit: | |
| 486 24c502: 4a4b ldr r2, =0xfffef00a ; via 0x24c630 | |
| 487 24c504: 2101 mov r1, #1 | |
| 488 24c506: 4081 lsl r1, r0 | |
| 489 24c508: 8810 ldrh r0, [r2, #0] | |
| 490 24c50a: 4388 bic r0, r1 | |
| 491 24c50c: 8010 strh r0, [r2, #0] | |
| 492 24c50e: 4770 bx lr | |
| 493 | |
| 494 $AI_SetBit: | |
| 495 24c510: 4a48 ldr r2, =0xfffe4802 ; via 0x24c634 | |
| 496 24c512: 2101 mov r1, #1 | |
| 497 24c514: 4081 lsl r1, r0 | |
| 498 24c516: 8810 ldrh r0, [r2, #0] | |
| 499 24c518: 4301 orr r1, r0 | |
| 500 24c51a: 8011 strh r1, [r2, #0] | |
| 501 24c51c: 4770 bx lr | |
| 502 | |
| 503 $AI_ResetBit: | |
| 504 24c51e: 4a45 ldr r2, =0xfffe4802 ; via 0x24c634 | |
| 505 24c520: 2101 mov r1, #1 | |
| 506 24c522: 4081 lsl r1, r0 | |
| 507 24c524: 8810 ldrh r0, [r2, #0] | |
| 508 24c526: 4388 bic r0, r1 | |
| 509 24c528: 8010 strh r0, [r2, #0] | |
| 510 24c52a: 4770 bx lr | |
| 511 | |
| 512 $AI_ConfigBitAsOutput: | |
| 513 24c52c: 4a42 ldr r2, =0xfffe4804 ; via 0x24c638 | |
| 514 24c52e: 2101 mov r1, #1 | |
| 515 24c530: 4081 lsl r1, r0 | |
| 516 24c532: 8810 ldrh r0, [r2, #0] | |
| 517 24c534: 4388 bic r0, r1 | |
| 518 24c536: 8010 strh r0, [r2, #0] | |
| 519 24c538: 4770 bx lr | |
| 520 | |
| 521 $AI_ConfigBitAsInput: | |
| 522 24c53a: 4a3f ldr r2, =0xfffe4804 ; via 0x24c638 | |
| 523 24c53c: 2101 mov r1, #1 | |
| 524 24c53e: 4081 lsl r1, r0 | |
| 525 24c540: 8810 ldrh r0, [r2, #0] | |
| 526 24c542: 4301 orr r1, r0 | |
| 527 24c544: 8011 strh r1, [r2, #0] | |
| 528 24c546: 4770 bx lr | |
| 529 | |
| 530 $AI_ReadBit: | |
| 531 24c548: 493c ldr r1, =0xfffe4800 ; via 0x24c63c | |
| 532 24c54a: 8809 ldrh r1, [r1, #0] | |
| 533 24c54c: 4101 asr r1, r0 | |
| 534 24c54e: 07c8 lsl r0, r1, #31 | |
| 535 24c550: 0fc0 lsr r0, r0, #31 | |
| 536 24c552: 0600 lsl r0, r0, #24 | |
| 537 24c554: 0e00 lsr r0, r0, #24 | |
| 538 24c556: 4770 bx lr | |
| 539 | |
| 540 $AI_Power: | |
| 541 24c558: b500 push {lr} | |
| 542 24c55a: 2800 cmp r0, #0 | |
| 543 24c55c: d110 bne 0x24c580 | |
| 544 24c55e: f772 fcbf bl 0x1beee0 | |
| 545 24c562: 0940 lsr r0, r0, #5 | |
| 546 24c564: d2fb bcs 0x24c55e | |
| 547 24c566: f004 fc89 bl 0x250e7c | |
| 548 24c56a: 4835 ldr r0, =0xfffe3000 ; via 0x24c640 | |
| 549 24c56c: 217c mov r1, #124 ; 0x7c | |
| 550 24c56e: 8141 strh r1, [r0, #10] ; 0xa | |
| 551 24c570: 2131 mov r1, #49 ; 0x31 | |
| 552 24c572: 8802 ldrh r2, [r0, #0] | |
| 553 24c574: 4311 orr r1, r2 | |
| 554 24c576: 8001 strh r1, [r0, #0] | |
| 555 24c578: 2102 mov r1, #2 | |
| 556 24c57a: 8882 ldrh r2, [r0, #4] | |
| 557 24c57c: 4311 orr r1, r2 | |
| 558 24c57e: 8081 strh r1, [r0, #4] | |
| 559 24c580: bd00 pop {pc} | |
| 560 | |
| 561 $AI_ResetIoConfig: | |
| 562 24c582: 492d ldr r1, =0xfffe4804 ; via 0x24c638 | |
| 563 24c584: 482f ldr r0, =0xffff ; via 0x24c644 | |
| 564 24c586: 8008 strh r0, [r1, #0] | |
| 565 24c588: 4829 ldr r0, =0xfffef00a ; via 0x24c630 | |
| 566 24c58a: 2100 mov r1, #0 | |
| 567 24c58c: 8001 strh r1, [r0, #0] | |
| 568 24c58e: 4770 bx lr | |
| 569 | |
| 570 $AI_ClockEnable: | |
| 571 24c590: 492d ldr r1, =0xfffe4806 ; via 0x24c648 | |
| 572 24c592: 2020 mov r0, #32 ; 0x20 | |
| 573 24c594: 880a ldrh r2, [r1, #0] | |
| 574 24c596: 4310 orr r0, r2 | |
| 575 24c598: 8008 strh r0, [r1, #0] | |
| 576 24c59a: 4770 bx lr | |
| 577 | |
| 578 $AI_InitIOConfig: | |
| 579 24c59c: b500 push {lr} | |
| 580 24c59e: f7ff fff0 bl 0x24c582 ; $AI_ResetIoConfig | |
| 581 24c5a2: 2002 mov r0, #2 | |
| 582 24c5a4: f7ff ffa6 bl 0x24c4f4 ; $AI_EnableBit | |
| 583 24c5a8: 2004 mov r0, #4 | |
| 584 24c5aa: f7ff ffa3 bl 0x24c4f4 ; $AI_EnableBit | |
| 585 24c5ae: 2005 mov r0, #5 | |
| 586 24c5b0: f7ff ffa0 bl 0x24c4f4 ; $AI_EnableBit | |
| 587 24c5b4: 2006 mov r0, #6 | |
| 588 24c5b6: f7ff ff9d bl 0x24c4f4 ; $AI_EnableBit | |
| 589 24c5ba: 2007 mov r0, #7 | |
| 590 24c5bc: f7ff ff9a bl 0x24c4f4 ; $AI_EnableBit | |
| 591 24c5c0: 2008 mov r0, #8 | |
| 592 24c5c2: f7ff ff97 bl 0x24c4f4 ; $AI_EnableBit | |
| 593 24c5c6: 2009 mov r0, #9 | |
| 594 24c5c8: f7ff ff94 bl 0x24c4f4 ; $AI_EnableBit | |
| 595 24c5cc: 4919 ldr r1, =0xfffe4802 ; via 0x24c634 | |
| 596 24c5ce: 481f ldr r0, =0x3f02 ; via 0x24c64c | |
| 597 24c5d0: 8008 strh r0, [r1, #0] | |
| 598 24c5d2: 2001 mov r0, #1 | |
| 599 24c5d4: f7ff ffaa bl 0x24c52c ; $AI_ConfigBitAsOutput | |
| 600 24c5d8: 2002 mov r0, #2 | |
| 601 24c5da: f7ff ffa7 bl 0x24c52c ; $AI_ConfigBitAsOutput | |
| 602 24c5de: 2005 mov r0, #5 | |
| 603 24c5e0: f7ff ffa4 bl 0x24c52c ; $AI_ConfigBitAsOutput | |
| 604 24c5e4: 2007 mov r0, #7 | |
| 605 24c5e6: f7ff ffa1 bl 0x24c52c ; $AI_ConfigBitAsOutput | |
| 606 24c5ea: 2009 mov r0, #9 | |
| 607 24c5ec: f7ff ff9e bl 0x24c52c ; $AI_ConfigBitAsOutput | |
| 608 24c5f0: 200e mov r0, #14 ; 0xe | |
| 609 24c5f2: f7ff ff9b bl 0x24c52c ; $AI_ConfigBitAsOutput | |
| 610 24c5f6: 200f mov r0, #15 ; 0xf | |
| 611 24c5f8: f7ff ff98 bl 0x24c52c ; $AI_ConfigBitAsOutput | |
| 612 24c5fc: bd00 pop {pc} | |
| 613 | |
| 614 $AI_SelectIOForIT: | |
| 615 24c5fe: 0109 lsl r1, r1, #4 | |
| 616 24c600: 1840 add r0, r0, r1 | |
| 617 24c602: 0040 lsl r0, r0, #1 | |
| 618 24c604: 3001 add r0, #1 | |
| 619 24c606: 4912 ldr r1, =0xfffe4814 ; via 0x24c650 | |
| 620 24c608: 8008 strh r0, [r1, #0] | |
| 621 24c60a: 4770 bx lr | |
| 622 | |
| 623 $AI_CheckITSource: | |
| 624 24c60c: 2100 mov r1, #0 | |
| 625 24c60e: 4a11 ldr r2, =0xfffe4816 ; via 0x24c654 | |
| 626 24c610: 8812 ldrh r2, [r2, #0] | |
| 627 24c612: 4210 tst r0, r2 | |
| 628 24c614: d000 beq 0x24c618 | |
| 629 24c616: 2101 mov r1, #1 | |
| 630 24c618: 1c08 add r0, r1, #0 | |
| 631 24c61a: 4770 bx lr | |
| 632 | |
| 633 $AI_UnmaskIT: | |
| 634 24c61c: 4a0e ldr r2, =0xfffe4818 ; via 0x24c658 | |
| 635 24c61e: 8811 ldrh r1, [r2, #0] | |
| 636 24c620: 4381 bic r1, r0 | |
| 637 24c622: 8011 strh r1, [r2, #0] | |
| 638 24c624: 4770 bx lr | |
| 639 | |
| 640 $AI_MaskIT: | |
| 641 24c626: 4a0c ldr r2, =0xfffe4818 ; via 0x24c658 | |
| 642 24c628: 8811 ldrh r1, [r2, #0] | |
| 643 24c62a: 4301 orr r1, r0 | |
| 644 24c62c: 8011 strh r1, [r2, #0] | |
| 645 24c62e: 4770 bx lr | |
| 475 | 646 |
| 476 ; Appears to the old Thumb implementation of f_load_int_mem(), | 647 ; Appears to the old Thumb implementation of f_load_int_mem(), |
| 477 ; differs from TCS211 version which is ARM and appears to be assembly | 648 ; differs from TCS211 version which is ARM and appears to be assembly |
| 478 250408: b5f0 push {r4, r5, r6, r7, lr} | 649 250408: b5f0 push {r4, r5, r6, r7, lr} |
| 479 25040a: 4640 mov r0, r8 | 650 25040a: 4640 mov r0, r8 |
