mirror of https://github.com/PrimeDecomp/prime.git
Start splitting system libraries
This commit is contained in:
parent
3f08af6e2f
commit
e1ad16dcc8
5
Makefile
5
Makefile
|
@ -55,7 +55,10 @@ endif
|
|||
O_FILES := $(INIT_O_FILES) $(EXTAB_O_FILES) $(EXTABINDEX_O_FILES) $(KYOTO_CWD) \
|
||||
$(CTORS_O_FILES) $(DTORS_O_FILES) $(RODATA_O_FILES) $(DATA_O_FILES) \
|
||||
$(BSS_O_FILES) $(SDATA_O_FILES) $(SBSS_O_FILES) $(SDATA2_O_FILES) \
|
||||
$(SBSS2_O_FILES) $(TEXT_O_FILES)
|
||||
$(SBSS2_O_FILES) $(TEXT_O_FILES) $(MSL_PPCEABI_BARE_H) $(MUSYX_FILES) \
|
||||
$(DTK_FILES) $(CARD_FILES) $(SI_FILES) $(EXI_FILES) $(THP_FILES) \
|
||||
$(GBA_FILES)
|
||||
|
||||
ifeq ($(EPILOGUE_PROCESS),1)
|
||||
E_FILES := $(EPILOGUE_UNSCHEDULED)
|
||||
endif
|
||||
|
|
File diff suppressed because it is too large
Load Diff
|
@ -0,0 +1,299 @@
|
|||
.include "macros.inc"
|
||||
|
||||
.section .text, "ax"
|
||||
|
||||
.global __CARDGetFatBlock
|
||||
__CARDGetFatBlock:
|
||||
/* 803BA56C 003B74CC 80 63 00 88 */ lwz r3, 0x88(r3)
|
||||
/* 803BA570 003B74D0 4E 80 00 20 */ blr
|
||||
|
||||
WriteCallback:
|
||||
/* 803BA574 003B74D4 7C 08 02 A6 */ mflr r0
|
||||
/* 803BA578 003B74D8 90 01 00 04 */ stw r0, 4(r1)
|
||||
/* 803BA57C 003B74DC 94 21 FF E0 */ stwu r1, -0x20(r1)
|
||||
/* 803BA580 003B74E0 93 E1 00 1C */ stw r31, 0x1c(r1)
|
||||
/* 803BA584 003B74E4 93 C1 00 18 */ stw r30, 0x18(r1)
|
||||
/* 803BA588 003B74E8 7C 9E 23 79 */ or. r30, r4, r4
|
||||
/* 803BA58C 003B74EC 93 A1 00 14 */ stw r29, 0x14(r1)
|
||||
/* 803BA590 003B74F0 3B A3 00 00 */ addi r29, r3, 0
|
||||
/* 803BA594 003B74F4 1C BD 01 10 */ mulli r5, r29, 0x110
|
||||
/* 803BA598 003B74F8 3C 60 80 57 */ lis r3, lbl_80569A58@ha
|
||||
/* 803BA59C 003B74FC 38 03 9A 58 */ addi r0, r3, lbl_80569A58@l
|
||||
/* 803BA5A0 003B7500 7F E0 2A 14 */ add r31, r0, r5
|
||||
/* 803BA5A4 003B7504 41 80 00 48 */ blt lbl_803BA5EC
|
||||
/* 803BA5A8 003B7508 80 7F 00 80 */ lwz r3, 0x80(r31)
|
||||
/* 803BA5AC 003B750C 80 1F 00 88 */ lwz r0, 0x88(r31)
|
||||
/* 803BA5B0 003B7510 38 83 60 00 */ addi r4, r3, 0x6000
|
||||
/* 803BA5B4 003B7514 7C 00 20 40 */ cmplw r0, r4
|
||||
/* 803BA5B8 003B7518 3C A3 00 01 */ addis r5, r3, 1
|
||||
/* 803BA5BC 003B751C 38 A5 80 00 */ addi r5, r5, -32768
|
||||
/* 803BA5C0 003B7520 40 82 00 18 */ bne lbl_803BA5D8
|
||||
/* 803BA5C4 003B7524 90 BF 00 88 */ stw r5, 0x88(r31)
|
||||
/* 803BA5C8 003B7528 38 65 00 00 */ addi r3, r5, 0
|
||||
/* 803BA5CC 003B752C 38 A0 20 00 */ li r5, 0x2000
|
||||
/* 803BA5D0 003B7530 4B C4 8E C1 */ bl memcpy
|
||||
/* 803BA5D4 003B7534 48 00 00 18 */ b lbl_803BA5EC
|
||||
lbl_803BA5D8:
|
||||
/* 803BA5D8 003B7538 90 9F 00 88 */ stw r4, 0x88(r31)
|
||||
/* 803BA5DC 003B753C 38 64 00 00 */ addi r3, r4, 0
|
||||
/* 803BA5E0 003B7540 38 85 00 00 */ addi r4, r5, 0
|
||||
/* 803BA5E4 003B7544 38 A0 20 00 */ li r5, 0x2000
|
||||
/* 803BA5E8 003B7548 4B C4 8E A9 */ bl memcpy
|
||||
lbl_803BA5EC:
|
||||
/* 803BA5EC 003B754C 80 1F 00 D0 */ lwz r0, 0xd0(r31)
|
||||
/* 803BA5F0 003B7550 28 00 00 00 */ cmplwi r0, 0
|
||||
/* 803BA5F4 003B7554 40 82 00 10 */ bne lbl_803BA604
|
||||
/* 803BA5F8 003B7558 38 7F 00 00 */ addi r3, r31, 0
|
||||
/* 803BA5FC 003B755C 38 9E 00 00 */ addi r4, r30, 0
|
||||
/* 803BA600 003B7560 4B FF E8 59 */ bl __CARDPutControlBlock
|
||||
lbl_803BA604:
|
||||
/* 803BA604 003B7564 80 1F 00 D8 */ lwz r0, 0xd8(r31)
|
||||
/* 803BA608 003B7568 28 00 00 00 */ cmplwi r0, 0
|
||||
/* 803BA60C 003B756C 7C 0C 03 78 */ mr r12, r0
|
||||
/* 803BA610 003B7570 41 82 00 1C */ beq lbl_803BA62C
|
||||
/* 803BA614 003B7574 38 00 00 00 */ li r0, 0
|
||||
/* 803BA618 003B7578 7D 88 03 A6 */ mtlr r12
|
||||
/* 803BA61C 003B757C 90 1F 00 D8 */ stw r0, 0xd8(r31)
|
||||
/* 803BA620 003B7580 38 7D 00 00 */ addi r3, r29, 0
|
||||
/* 803BA624 003B7584 38 9E 00 00 */ addi r4, r30, 0
|
||||
/* 803BA628 003B7588 4E 80 00 21 */ blrl
|
||||
lbl_803BA62C:
|
||||
/* 803BA62C 003B758C 80 01 00 24 */ lwz r0, 0x24(r1)
|
||||
/* 803BA630 003B7590 83 E1 00 1C */ lwz r31, 0x1c(r1)
|
||||
/* 803BA634 003B7594 83 C1 00 18 */ lwz r30, 0x18(r1)
|
||||
/* 803BA638 003B7598 83 A1 00 14 */ lwz r29, 0x14(r1)
|
||||
/* 803BA63C 003B759C 38 21 00 20 */ addi r1, r1, 0x20
|
||||
/* 803BA640 003B75A0 7C 08 03 A6 */ mtlr r0
|
||||
/* 803BA644 003B75A4 4E 80 00 20 */ blr
|
||||
|
||||
EraseCallback:
|
||||
/* 803BA648 003B75A8 7C 08 02 A6 */ mflr r0
|
||||
/* 803BA64C 003B75AC 90 01 00 04 */ stw r0, 4(r1)
|
||||
/* 803BA650 003B75B0 94 21 FF D8 */ stwu r1, -0x28(r1)
|
||||
/* 803BA654 003B75B4 93 E1 00 24 */ stw r31, 0x24(r1)
|
||||
/* 803BA658 003B75B8 3B E3 00 00 */ addi r31, r3, 0
|
||||
/* 803BA65C 003B75BC 3C 60 80 57 */ lis r3, lbl_80569A58@ha
|
||||
/* 803BA660 003B75C0 93 C1 00 20 */ stw r30, 0x20(r1)
|
||||
/* 803BA664 003B75C4 1C BF 01 10 */ mulli r5, r31, 0x110
|
||||
/* 803BA668 003B75C8 93 A1 00 1C */ stw r29, 0x1c(r1)
|
||||
/* 803BA66C 003B75CC 38 03 9A 58 */ addi r0, r3, lbl_80569A58@l
|
||||
/* 803BA670 003B75D0 7C 9D 23 79 */ or. r29, r4, r4
|
||||
/* 803BA674 003B75D4 7F C0 2A 14 */ add r30, r0, r5
|
||||
/* 803BA678 003B75D8 41 80 00 3C */ blt lbl_803BA6B4
|
||||
/* 803BA67C 003B75DC 80 BE 00 88 */ lwz r5, 0x88(r30)
|
||||
/* 803BA680 003B75E0 3C 60 80 3C */ lis r3, WriteCallback@ha
|
||||
/* 803BA684 003B75E4 80 1E 00 80 */ lwz r0, 0x80(r30)
|
||||
/* 803BA688 003B75E8 38 E3 A5 74 */ addi r7, r3, WriteCallback@l
|
||||
/* 803BA68C 003B75EC 80 7E 00 0C */ lwz r3, 0xc(r30)
|
||||
/* 803BA690 003B75F0 7C 00 28 50 */ subf r0, r0, r5
|
||||
/* 803BA694 003B75F4 54 00 9B 7E */ srwi r0, r0, 0xd
|
||||
/* 803BA698 003B75F8 7C 83 01 D6 */ mullw r4, r3, r0
|
||||
/* 803BA69C 003B75FC 38 C5 00 00 */ addi r6, r5, 0
|
||||
/* 803BA6A0 003B7600 38 7F 00 00 */ addi r3, r31, 0
|
||||
/* 803BA6A4 003B7604 38 A0 20 00 */ li r5, 0x2000
|
||||
/* 803BA6A8 003B7608 4B FF FE 61 */ bl __CARDWrite
|
||||
/* 803BA6AC 003B760C 7C 7D 1B 79 */ or. r29, r3, r3
|
||||
/* 803BA6B0 003B7610 40 80 00 44 */ bge lbl_803BA6F4
|
||||
lbl_803BA6B4:
|
||||
/* 803BA6B4 003B7614 80 1E 00 D0 */ lwz r0, 0xd0(r30)
|
||||
/* 803BA6B8 003B7618 28 00 00 00 */ cmplwi r0, 0
|
||||
/* 803BA6BC 003B761C 40 82 00 10 */ bne lbl_803BA6CC
|
||||
/* 803BA6C0 003B7620 38 7E 00 00 */ addi r3, r30, 0
|
||||
/* 803BA6C4 003B7624 38 9D 00 00 */ addi r4, r29, 0
|
||||
/* 803BA6C8 003B7628 4B FF E7 91 */ bl __CARDPutControlBlock
|
||||
lbl_803BA6CC:
|
||||
/* 803BA6CC 003B762C 80 1E 00 D8 */ lwz r0, 0xd8(r30)
|
||||
/* 803BA6D0 003B7630 28 00 00 00 */ cmplwi r0, 0
|
||||
/* 803BA6D4 003B7634 7C 0C 03 78 */ mr r12, r0
|
||||
/* 803BA6D8 003B7638 41 82 00 1C */ beq lbl_803BA6F4
|
||||
/* 803BA6DC 003B763C 38 00 00 00 */ li r0, 0
|
||||
/* 803BA6E0 003B7640 7D 88 03 A6 */ mtlr r12
|
||||
/* 803BA6E4 003B7644 90 1E 00 D8 */ stw r0, 0xd8(r30)
|
||||
/* 803BA6E8 003B7648 38 7F 00 00 */ addi r3, r31, 0
|
||||
/* 803BA6EC 003B764C 38 9D 00 00 */ addi r4, r29, 0
|
||||
/* 803BA6F0 003B7650 4E 80 00 21 */ blrl
|
||||
lbl_803BA6F4:
|
||||
/* 803BA6F4 003B7654 80 01 00 2C */ lwz r0, 0x2c(r1)
|
||||
/* 803BA6F8 003B7658 83 E1 00 24 */ lwz r31, 0x24(r1)
|
||||
/* 803BA6FC 003B765C 83 C1 00 20 */ lwz r30, 0x20(r1)
|
||||
/* 803BA700 003B7660 83 A1 00 1C */ lwz r29, 0x1c(r1)
|
||||
/* 803BA704 003B7664 38 21 00 28 */ addi r1, r1, 0x28
|
||||
/* 803BA708 003B7668 7C 08 03 A6 */ mtlr r0
|
||||
/* 803BA70C 003B766C 4E 80 00 20 */ blr
|
||||
|
||||
.global __CARDAllocBlock
|
||||
__CARDAllocBlock:
|
||||
/* 803BA710 003B7670 7C 08 02 A6 */ mflr r0
|
||||
/* 803BA714 003B7674 1C E3 01 10 */ mulli r7, r3, 0x110
|
||||
/* 803BA718 003B7678 90 01 00 04 */ stw r0, 4(r1)
|
||||
/* 803BA71C 003B767C 94 21 FF E0 */ stwu r1, -0x20(r1)
|
||||
/* 803BA720 003B7680 3C C0 80 57 */ lis r6, lbl_80569A58@ha
|
||||
/* 803BA724 003B7684 38 06 9A 58 */ addi r0, r6, lbl_80569A58@l
|
||||
/* 803BA728 003B7688 93 E1 00 1C */ stw r31, 0x1c(r1)
|
||||
/* 803BA72C 003B768C 7D 20 3A 14 */ add r9, r0, r7
|
||||
/* 803BA730 003B7690 93 C1 00 18 */ stw r30, 0x18(r1)
|
||||
/* 803BA734 003B7694 80 09 00 00 */ lwz r0, 0(r9)
|
||||
/* 803BA738 003B7698 2C 00 00 00 */ cmpwi r0, 0
|
||||
/* 803BA73C 003B769C 40 82 00 0C */ bne lbl_803BA748
|
||||
/* 803BA740 003B76A0 38 60 FF FD */ li r3, -3
|
||||
/* 803BA744 003B76A4 48 00 00 CC */ b lbl_803BA810
|
||||
lbl_803BA748:
|
||||
/* 803BA748 003B76A8 81 09 00 88 */ lwz r8, 0x88(r9)
|
||||
/* 803BA74C 003B76AC A0 08 00 06 */ lhz r0, 6(r8)
|
||||
/* 803BA750 003B76B0 7C 00 20 40 */ cmplw r0, r4
|
||||
/* 803BA754 003B76B4 40 80 00 0C */ bge lbl_803BA760
|
||||
/* 803BA758 003B76B8 38 60 FF F7 */ li r3, -9
|
||||
/* 803BA75C 003B76BC 48 00 00 B4 */ b lbl_803BA810
|
||||
lbl_803BA760:
|
||||
/* 803BA760 003B76C0 7C 04 00 50 */ subf r0, r4, r0
|
||||
/* 803BA764 003B76C4 B0 08 00 06 */ sth r0, 6(r8)
|
||||
/* 803BA768 003B76C8 3C C0 00 01 */ lis r6, 0x0000FFFF@ha
|
||||
/* 803BA76C 003B76CC 39 86 FF FF */ addi r12, r6, 0x0000FFFF@l
|
||||
/* 803BA770 003B76D0 A1 68 00 08 */ lhz r11, 8(r8)
|
||||
/* 803BA774 003B76D4 38 0C 00 00 */ addi r0, r12, 0
|
||||
/* 803BA778 003B76D8 3B C0 00 00 */ li r30, 0
|
||||
/* 803BA77C 003B76DC 48 00 00 7C */ b lbl_803BA7F8
|
||||
lbl_803BA780:
|
||||
/* 803BA780 003B76E0 A1 49 00 10 */ lhz r10, 0x10(r9)
|
||||
/* 803BA784 003B76E4 3B DE 00 01 */ addi r30, r30, 1
|
||||
/* 803BA788 003B76E8 57 C6 04 3E */ clrlwi r6, r30, 0x10
|
||||
/* 803BA78C 003B76EC 38 EA FF FB */ addi r7, r10, -5
|
||||
/* 803BA790 003B76F0 7C 07 30 00 */ cmpw r7, r6
|
||||
/* 803BA794 003B76F4 40 80 00 0C */ bge lbl_803BA7A0
|
||||
/* 803BA798 003B76F8 38 60 FF FA */ li r3, -6
|
||||
/* 803BA79C 003B76FC 48 00 00 74 */ b lbl_803BA810
|
||||
lbl_803BA7A0:
|
||||
/* 803BA7A0 003B7700 39 6B 00 01 */ addi r11, r11, 1
|
||||
/* 803BA7A4 003B7704 55 66 04 3E */ clrlwi r6, r11, 0x10
|
||||
/* 803BA7A8 003B7708 28 06 00 05 */ cmplwi r6, 5
|
||||
/* 803BA7AC 003B770C 41 80 00 0C */ blt lbl_803BA7B8
|
||||
/* 803BA7B0 003B7710 7C 06 50 40 */ cmplw r6, r10
|
||||
/* 803BA7B4 003B7714 41 80 00 08 */ blt lbl_803BA7BC
|
||||
lbl_803BA7B8:
|
||||
/* 803BA7B8 003B7718 39 60 00 05 */ li r11, 5
|
||||
lbl_803BA7BC:
|
||||
/* 803BA7BC 003B771C 55 66 0B FC */ rlwinm r6, r11, 1, 0xf, 0x1e
|
||||
/* 803BA7C0 003B7720 7C E8 32 14 */ add r7, r8, r6
|
||||
/* 803BA7C4 003B7724 A0 C7 00 00 */ lhz r6, 0(r7)
|
||||
/* 803BA7C8 003B7728 28 06 00 00 */ cmplwi r6, 0
|
||||
/* 803BA7CC 003B772C 40 82 00 2C */ bne lbl_803BA7F8
|
||||
/* 803BA7D0 003B7730 55 86 04 3E */ clrlwi r6, r12, 0x10
|
||||
/* 803BA7D4 003B7734 28 06 FF FF */ cmplwi r6, 0xffff
|
||||
/* 803BA7D8 003B7738 40 82 00 0C */ bne lbl_803BA7E4
|
||||
/* 803BA7DC 003B773C 7D 6C 5B 78 */ mr r12, r11
|
||||
/* 803BA7E0 003B7740 48 00 00 0C */ b lbl_803BA7EC
|
||||
lbl_803BA7E4:
|
||||
/* 803BA7E4 003B7744 57 E6 0B FC */ rlwinm r6, r31, 1, 0xf, 0x1e
|
||||
/* 803BA7E8 003B7748 7D 68 33 2E */ sthx r11, r8, r6
|
||||
lbl_803BA7EC:
|
||||
/* 803BA7EC 003B774C B0 07 00 00 */ sth r0, 0(r7)
|
||||
/* 803BA7F0 003B7750 3B EB 00 00 */ addi r31, r11, 0
|
||||
/* 803BA7F4 003B7754 38 84 FF FF */ addi r4, r4, -1
|
||||
lbl_803BA7F8:
|
||||
/* 803BA7F8 003B7758 28 04 00 00 */ cmplwi r4, 0
|
||||
/* 803BA7FC 003B775C 40 82 FF 84 */ bne lbl_803BA780
|
||||
/* 803BA800 003B7760 B1 68 00 08 */ sth r11, 8(r8)
|
||||
/* 803BA804 003B7764 7D 04 43 78 */ mr r4, r8
|
||||
/* 803BA808 003B7768 B1 89 00 BE */ sth r12, 0xbe(r9)
|
||||
/* 803BA80C 003B776C 48 00 00 B9 */ bl __CARDUpdateFatBlock
|
||||
lbl_803BA810:
|
||||
/* 803BA810 003B7770 80 01 00 24 */ lwz r0, 0x24(r1)
|
||||
/* 803BA814 003B7774 83 E1 00 1C */ lwz r31, 0x1c(r1)
|
||||
/* 803BA818 003B7778 83 C1 00 18 */ lwz r30, 0x18(r1)
|
||||
/* 803BA81C 003B777C 38 21 00 20 */ addi r1, r1, 0x20
|
||||
/* 803BA820 003B7780 7C 08 03 A6 */ mtlr r0
|
||||
/* 803BA824 003B7784 4E 80 00 20 */ blr
|
||||
|
||||
.global __CARDFreeBlock
|
||||
__CARDFreeBlock:
|
||||
/* 803BA828 003B7788 7C 08 02 A6 */ mflr r0
|
||||
/* 803BA82C 003B778C 1C E3 01 10 */ mulli r7, r3, 0x110
|
||||
/* 803BA830 003B7790 90 01 00 04 */ stw r0, 4(r1)
|
||||
/* 803BA834 003B7794 3C C0 80 57 */ lis r6, lbl_80569A58@ha
|
||||
/* 803BA838 003B7798 94 21 FF F8 */ stwu r1, -8(r1)
|
||||
/* 803BA83C 003B779C 38 06 9A 58 */ addi r0, r6, lbl_80569A58@l
|
||||
/* 803BA840 003B77A0 7D 20 3A 14 */ add r9, r0, r7
|
||||
/* 803BA844 003B77A4 80 09 00 00 */ lwz r0, 0(r9)
|
||||
/* 803BA848 003B77A8 2C 00 00 00 */ cmpwi r0, 0
|
||||
/* 803BA84C 003B77AC 40 82 00 0C */ bne lbl_803BA858
|
||||
/* 803BA850 003B77B0 38 60 FF FD */ li r3, -3
|
||||
/* 803BA854 003B77B4 48 00 00 60 */ b lbl_803BA8B4
|
||||
lbl_803BA858:
|
||||
/* 803BA858 003B77B8 81 09 00 88 */ lwz r8, 0x88(r9)
|
||||
/* 803BA85C 003B77BC 38 E0 00 00 */ li r7, 0
|
||||
/* 803BA860 003B77C0 48 00 00 40 */ b lbl_803BA8A0
|
||||
lbl_803BA864:
|
||||
/* 803BA864 003B77C4 54 84 04 3E */ clrlwi r4, r4, 0x10
|
||||
/* 803BA868 003B77C8 28 04 00 05 */ cmplwi r4, 5
|
||||
/* 803BA86C 003B77CC 41 80 00 10 */ blt lbl_803BA87C
|
||||
/* 803BA870 003B77D0 A0 09 00 10 */ lhz r0, 0x10(r9)
|
||||
/* 803BA874 003B77D4 7C 04 00 40 */ cmplw r4, r0
|
||||
/* 803BA878 003B77D8 41 80 00 0C */ blt lbl_803BA884
|
||||
lbl_803BA87C:
|
||||
/* 803BA87C 003B77DC 38 60 FF FA */ li r3, -6
|
||||
/* 803BA880 003B77E0 48 00 00 34 */ b lbl_803BA8B4
|
||||
lbl_803BA884:
|
||||
/* 803BA884 003B77E4 54 80 08 3C */ slwi r0, r4, 1
|
||||
/* 803BA888 003B77E8 7C C8 02 14 */ add r6, r8, r0
|
||||
/* 803BA88C 003B77EC A0 86 00 00 */ lhz r4, 0(r6)
|
||||
/* 803BA890 003B77F0 B0 E6 00 00 */ sth r7, 0(r6)
|
||||
/* 803BA894 003B77F4 A0 C8 00 06 */ lhz r6, 6(r8)
|
||||
/* 803BA898 003B77F8 38 06 00 01 */ addi r0, r6, 1
|
||||
/* 803BA89C 003B77FC B0 08 00 06 */ sth r0, 6(r8)
|
||||
lbl_803BA8A0:
|
||||
/* 803BA8A0 003B7800 54 80 04 3E */ clrlwi r0, r4, 0x10
|
||||
/* 803BA8A4 003B7804 28 00 FF FF */ cmplwi r0, 0xffff
|
||||
/* 803BA8A8 003B7808 40 82 FF BC */ bne lbl_803BA864
|
||||
/* 803BA8AC 003B780C 7D 04 43 78 */ mr r4, r8
|
||||
/* 803BA8B0 003B7810 48 00 00 15 */ bl __CARDUpdateFatBlock
|
||||
lbl_803BA8B4:
|
||||
/* 803BA8B4 003B7814 80 01 00 0C */ lwz r0, 0xc(r1)
|
||||
/* 803BA8B8 003B7818 38 21 00 08 */ addi r1, r1, 8
|
||||
/* 803BA8BC 003B781C 7C 08 03 A6 */ mtlr r0
|
||||
/* 803BA8C0 003B7820 4E 80 00 20 */ blr
|
||||
|
||||
.global __CARDUpdateFatBlock
|
||||
__CARDUpdateFatBlock:
|
||||
/* 803BA8C4 003B7824 7C 08 02 A6 */ mflr r0
|
||||
/* 803BA8C8 003B7828 90 01 00 04 */ stw r0, 4(r1)
|
||||
/* 803BA8CC 003B782C 94 21 FF D8 */ stwu r1, -0x28(r1)
|
||||
/* 803BA8D0 003B7830 93 E1 00 24 */ stw r31, 0x24(r1)
|
||||
/* 803BA8D4 003B7834 93 C1 00 20 */ stw r30, 0x20(r1)
|
||||
/* 803BA8D8 003B7838 3B C5 00 00 */ addi r30, r5, 0
|
||||
/* 803BA8DC 003B783C 93 A1 00 1C */ stw r29, 0x1c(r1)
|
||||
/* 803BA8E0 003B7840 3B A4 00 00 */ addi r29, r4, 0
|
||||
/* 803BA8E4 003B7844 38 BD 00 00 */ addi r5, r29, 0
|
||||
/* 803BA8E8 003B7848 93 81 00 18 */ stw r28, 0x18(r1)
|
||||
/* 803BA8EC 003B784C 3B 83 00 00 */ addi r28, r3, 0
|
||||
/* 803BA8F0 003B7850 38 DD 00 02 */ addi r6, r29, 2
|
||||
/* 803BA8F4 003B7854 A0 64 00 04 */ lhz r3, 4(r4)
|
||||
/* 803BA8F8 003B7858 1C 9C 01 10 */ mulli r4, r28, 0x110
|
||||
/* 803BA8FC 003B785C 38 03 00 01 */ addi r0, r3, 1
|
||||
/* 803BA900 003B7860 3C 60 80 57 */ lis r3, lbl_80569A58@ha
|
||||
/* 803BA904 003B7864 B0 1D 00 04 */ sth r0, 4(r29)
|
||||
/* 803BA908 003B7868 38 03 9A 58 */ addi r0, r3, lbl_80569A58@l
|
||||
/* 803BA90C 003B786C 7F E0 22 14 */ add r31, r0, r4
|
||||
/* 803BA910 003B7870 38 7D 00 04 */ addi r3, r29, 4
|
||||
/* 803BA914 003B7874 38 80 1F FC */ li r4, 0x1ffc
|
||||
/* 803BA918 003B7878 48 00 02 BD */ bl __CARDCheckSum
|
||||
/* 803BA91C 003B787C 38 7D 00 00 */ addi r3, r29, 0
|
||||
/* 803BA920 003B7880 38 80 20 00 */ li r4, 0x2000
|
||||
/* 803BA924 003B7884 4B FC 41 BD */ bl DCStoreRange
|
||||
/* 803BA928 003B7888 93 DF 00 D8 */ stw r30, 0xd8(r31)
|
||||
/* 803BA92C 003B788C 3C 60 80 3C */ lis r3, EraseCallback@ha
|
||||
/* 803BA930 003B7890 38 A3 A6 48 */ addi r5, r3, EraseCallback@l
|
||||
/* 803BA934 003B7894 80 1F 00 80 */ lwz r0, 0x80(r31)
|
||||
/* 803BA938 003B7898 7F 83 E3 78 */ mr r3, r28
|
||||
/* 803BA93C 003B789C 80 9F 00 0C */ lwz r4, 0xc(r31)
|
||||
/* 803BA940 003B78A0 7C 00 E8 50 */ subf r0, r0, r29
|
||||
/* 803BA944 003B78A4 54 00 9B 7E */ srwi r0, r0, 0xd
|
||||
/* 803BA948 003B78A8 7C 84 01 D6 */ mullw r4, r4, r0
|
||||
/* 803BA94C 003B78AC 4B FF E2 89 */ bl __CARDEraseSector
|
||||
/* 803BA950 003B78B0 80 01 00 2C */ lwz r0, 0x2c(r1)
|
||||
/* 803BA954 003B78B4 83 E1 00 24 */ lwz r31, 0x24(r1)
|
||||
/* 803BA958 003B78B8 83 C1 00 20 */ lwz r30, 0x20(r1)
|
||||
/* 803BA95C 003B78BC 83 A1 00 1C */ lwz r29, 0x1c(r1)
|
||||
/* 803BA960 003B78C0 83 81 00 18 */ lwz r28, 0x18(r1)
|
||||
/* 803BA964 003B78C4 38 21 00 28 */ addi r1, r1, 0x28
|
||||
/* 803BA968 003B78C8 7C 08 03 A6 */ mtlr r0
|
||||
/* 803BA96C 003B78CC 4E 80 00 20 */ blr
|
File diff suppressed because it is too large
Load Diff
|
@ -0,0 +1,236 @@
|
|||
.include "macros.inc"
|
||||
|
||||
.section .text, "ax"
|
||||
|
||||
CreateCallbackFat:
|
||||
/* 803BD1C0 003BA120 7C 08 02 A6 */ mflr r0
|
||||
/* 803BD1C4 003BA124 90 01 00 04 */ stw r0, 4(r1)
|
||||
/* 803BD1C8 003BA128 94 21 FF D8 */ stwu r1, -0x28(r1)
|
||||
/* 803BD1CC 003BA12C BF 61 00 14 */ stmw r27, 0x14(r1)
|
||||
/* 803BD1D0 003BA130 3B 83 00 00 */ addi r28, r3, 0
|
||||
/* 803BD1D4 003BA134 3C 60 80 57 */ lis r3, lbl_80569A58@ha
|
||||
/* 803BD1D8 003BA138 1C BC 01 10 */ mulli r5, r28, 0x110
|
||||
/* 803BD1DC 003BA13C 38 03 9A 58 */ addi r0, r3, lbl_80569A58@l
|
||||
/* 803BD1E0 003BA140 7F E0 2A 14 */ add r31, r0, r5
|
||||
/* 803BD1E4 003BA144 83 BF 00 D0 */ lwz r29, 0xd0(r31)
|
||||
/* 803BD1E8 003BA148 3B 60 00 00 */ li r27, 0
|
||||
/* 803BD1EC 003BA14C 7C 9E 23 79 */ or. r30, r4, r4
|
||||
/* 803BD1F0 003BA150 93 7F 00 D0 */ stw r27, 0xd0(r31)
|
||||
/* 803BD1F4 003BA154 41 80 00 C0 */ blt lbl_803BD2B4
|
||||
/* 803BD1F8 003BA158 7F E3 FB 78 */ mr r3, r31
|
||||
/* 803BD1FC 003BA15C 4B FF D7 75 */ bl __CARDGetDirBlock
|
||||
/* 803BD200 003BA160 A0 1F 00 BC */ lhz r0, 0xbc(r31)
|
||||
/* 803BD204 003BA164 38 A0 00 04 */ li r5, 4
|
||||
/* 803BD208 003BA168 80 9F 01 0C */ lwz r4, 0x10c(r31)
|
||||
/* 803BD20C 003BA16C 54 00 30 32 */ slwi r0, r0, 6
|
||||
/* 803BD210 003BA170 7F C3 02 14 */ add r30, r3, r0
|
||||
/* 803BD214 003BA174 38 7E 00 00 */ addi r3, r30, 0
|
||||
/* 803BD218 003BA178 4B C4 62 79 */ bl memcpy
|
||||
/* 803BD21C 003BA17C 80 9F 01 0C */ lwz r4, 0x10c(r31)
|
||||
/* 803BD220 003BA180 38 7E 00 04 */ addi r3, r30, 4
|
||||
/* 803BD224 003BA184 38 A0 00 02 */ li r5, 2
|
||||
/* 803BD228 003BA188 38 84 00 04 */ addi r4, r4, 4
|
||||
/* 803BD22C 003BA18C 4B C4 62 65 */ bl memcpy
|
||||
/* 803BD230 003BA190 38 00 00 04 */ li r0, 4
|
||||
/* 803BD234 003BA194 98 1E 00 34 */ stb r0, 0x34(r30)
|
||||
/* 803BD238 003BA198 38 00 FF FF */ li r0, -1
|
||||
/* 803BD23C 003BA19C 3C 60 80 00 */ lis r3, 0x800000F8@ha
|
||||
/* 803BD240 003BA1A0 9B 7E 00 35 */ stb r27, 0x35(r30)
|
||||
/* 803BD244 003BA1A4 A0 9F 00 BE */ lhz r4, 0xbe(r31)
|
||||
/* 803BD248 003BA1A8 B0 9E 00 36 */ sth r4, 0x36(r30)
|
||||
/* 803BD24C 003BA1AC 9B 7E 00 07 */ stb r27, 7(r30)
|
||||
/* 803BD250 003BA1B0 90 1E 00 2C */ stw r0, 0x2c(r30)
|
||||
/* 803BD254 003BA1B4 B3 7E 00 30 */ sth r27, 0x30(r30)
|
||||
/* 803BD258 003BA1B8 B3 7E 00 32 */ sth r27, 0x32(r30)
|
||||
/* 803BD25C 003BA1BC 90 1E 00 3C */ stw r0, 0x3c(r30)
|
||||
/* 803BD260 003BA1C0 A0 1E 00 32 */ lhz r0, 0x32(r30)
|
||||
/* 803BD264 003BA1C4 54 00 00 3A */ rlwinm r0, r0, 0, 0, 0x1d
|
||||
/* 803BD268 003BA1C8 60 00 00 01 */ ori r0, r0, 1
|
||||
/* 803BD26C 003BA1CC B0 1E 00 32 */ sth r0, 0x32(r30)
|
||||
/* 803BD270 003BA1D0 80 9F 00 C0 */ lwz r4, 0xc0(r31)
|
||||
/* 803BD274 003BA1D4 93 64 00 08 */ stw r27, 8(r4)
|
||||
/* 803BD278 003BA1D8 A0 1E 00 36 */ lhz r0, 0x36(r30)
|
||||
/* 803BD27C 003BA1DC 80 9F 00 C0 */ lwz r4, 0xc0(r31)
|
||||
/* 803BD280 003BA1E0 B0 04 00 10 */ sth r0, 0x10(r4)
|
||||
/* 803BD284 003BA1E4 80 03 00 F8 */ lwz r0, 0x800000F8@l(r3)
|
||||
/* 803BD288 003BA1E8 54 1B F0 BE */ srwi r27, r0, 2
|
||||
/* 803BD28C 003BA1EC 4B FC 81 1D */ bl OSGetTime
|
||||
/* 803BD290 003BA1F0 38 DB 00 00 */ addi r6, r27, 0
|
||||
/* 803BD294 003BA1F4 38 A0 00 00 */ li r5, 0
|
||||
/* 803BD298 003BA1F8 4B FC C9 35 */ bl __div2i
|
||||
/* 803BD29C 003BA1FC 90 9E 00 28 */ stw r4, 0x28(r30)
|
||||
/* 803BD2A0 003BA200 38 7C 00 00 */ addi r3, r28, 0
|
||||
/* 803BD2A4 003BA204 38 9D 00 00 */ addi r4, r29, 0
|
||||
/* 803BD2A8 003BA208 4B FF D8 69 */ bl __CARDUpdateDir
|
||||
/* 803BD2AC 003BA20C 7C 7E 1B 79 */ or. r30, r3, r3
|
||||
/* 803BD2B0 003BA210 40 80 00 2C */ bge lbl_803BD2DC
|
||||
lbl_803BD2B4:
|
||||
/* 803BD2B4 003BA214 38 7F 00 00 */ addi r3, r31, 0
|
||||
/* 803BD2B8 003BA218 38 9E 00 00 */ addi r4, r30, 0
|
||||
/* 803BD2BC 003BA21C 4B FF BB 9D */ bl __CARDPutControlBlock
|
||||
/* 803BD2C0 003BA220 28 1D 00 00 */ cmplwi r29, 0
|
||||
/* 803BD2C4 003BA224 41 82 00 18 */ beq lbl_803BD2DC
|
||||
/* 803BD2C8 003BA228 39 9D 00 00 */ addi r12, r29, 0
|
||||
/* 803BD2CC 003BA22C 7D 88 03 A6 */ mtlr r12
|
||||
/* 803BD2D0 003BA230 38 7C 00 00 */ addi r3, r28, 0
|
||||
/* 803BD2D4 003BA234 38 9E 00 00 */ addi r4, r30, 0
|
||||
/* 803BD2D8 003BA238 4E 80 00 21 */ blrl
|
||||
lbl_803BD2DC:
|
||||
/* 803BD2DC 003BA23C BB 61 00 14 */ lmw r27, 0x14(r1)
|
||||
/* 803BD2E0 003BA240 80 01 00 2C */ lwz r0, 0x2c(r1)
|
||||
/* 803BD2E4 003BA244 38 21 00 28 */ addi r1, r1, 0x28
|
||||
/* 803BD2E8 003BA248 7C 08 03 A6 */ mtlr r0
|
||||
/* 803BD2EC 003BA24C 4E 80 00 20 */ blr
|
||||
|
||||
.global CARDCreateAsync
|
||||
CARDCreateAsync:
|
||||
/* 803BD2F0 003BA250 7C 08 02 A6 */ mflr r0
|
||||
/* 803BD2F4 003BA254 90 01 00 04 */ stw r0, 4(r1)
|
||||
/* 803BD2F8 003BA258 94 21 FF B8 */ stwu r1, -0x48(r1)
|
||||
/* 803BD2FC 003BA25C BE E1 00 24 */ stmw r23, 0x24(r1)
|
||||
/* 803BD300 003BA260 3B 44 00 00 */ addi r26, r4, 0
|
||||
/* 803BD304 003BA264 3B 23 00 00 */ addi r25, r3, 0
|
||||
/* 803BD308 003BA268 3B 65 00 00 */ addi r27, r5, 0
|
||||
/* 803BD30C 003BA26C 3B 86 00 00 */ addi r28, r6, 0
|
||||
/* 803BD310 003BA270 3B A7 00 00 */ addi r29, r7, 0
|
||||
/* 803BD314 003BA274 38 7A 00 00 */ addi r3, r26, 0
|
||||
/* 803BD318 003BA278 4B FD 2E A9 */ bl strlen
|
||||
/* 803BD31C 003BA27C 28 03 00 20 */ cmplwi r3, 0x20
|
||||
/* 803BD320 003BA280 40 81 00 0C */ ble lbl_803BD32C
|
||||
/* 803BD324 003BA284 38 60 FF F4 */ li r3, -12
|
||||
/* 803BD328 003BA288 48 00 01 D4 */ b lbl_803BD4FC
|
||||
lbl_803BD32C:
|
||||
/* 803BD32C 003BA28C 38 79 00 00 */ addi r3, r25, 0
|
||||
/* 803BD330 003BA290 38 81 00 1C */ addi r4, r1, 0x1c
|
||||
/* 803BD334 003BA294 4B FF BA 6D */ bl __CARDGetControlBlock
|
||||
/* 803BD338 003BA298 2C 03 00 00 */ cmpwi r3, 0
|
||||
/* 803BD33C 003BA29C 40 80 00 08 */ bge lbl_803BD344
|
||||
/* 803BD340 003BA2A0 48 00 01 BC */ b lbl_803BD4FC
|
||||
lbl_803BD344:
|
||||
/* 803BD344 003BA2A4 28 1B 00 00 */ cmplwi r27, 0
|
||||
/* 803BD348 003BA2A8 41 82 00 1C */ beq lbl_803BD364
|
||||
/* 803BD34C 003BA2AC 80 61 00 1C */ lwz r3, 0x1c(r1)
|
||||
/* 803BD350 003BA2B0 80 83 00 0C */ lwz r4, 0xc(r3)
|
||||
/* 803BD354 003BA2B4 7C 1B 23 96 */ divwu r0, r27, r4
|
||||
/* 803BD358 003BA2B8 7C 00 21 D6 */ mullw r0, r0, r4
|
||||
/* 803BD35C 003BA2BC 7C 00 D8 51 */ subf. r0, r0, r27
|
||||
/* 803BD360 003BA2C0 41 82 00 0C */ beq lbl_803BD36C
|
||||
lbl_803BD364:
|
||||
/* 803BD364 003BA2C4 38 60 FF 80 */ li r3, -128
|
||||
/* 803BD368 003BA2C8 48 00 01 94 */ b lbl_803BD4FC
|
||||
lbl_803BD36C:
|
||||
/* 803BD36C 003BA2CC 3C 80 00 01 */ lis r4, 0x0000FFFF@ha
|
||||
/* 803BD370 003BA2D0 3B C4 FF FF */ addi r30, r4, 0x0000FFFF@l
|
||||
/* 803BD374 003BA2D4 4B FF D5 FD */ bl __CARDGetDirBlock
|
||||
/* 803BD378 003BA2D8 3B E3 00 00 */ addi r31, r3, 0
|
||||
/* 803BD37C 003BA2DC 3B 1F 00 00 */ addi r24, r31, 0
|
||||
/* 803BD380 003BA2E0 3A E0 00 00 */ li r23, 0
|
||||
/* 803BD384 003BA2E4 48 00 00 8C */ b lbl_803BD410
|
||||
lbl_803BD388:
|
||||
/* 803BD388 003BA2E8 88 18 00 00 */ lbz r0, 0(r24)
|
||||
/* 803BD38C 003BA2EC 28 00 00 FF */ cmplwi r0, 0xff
|
||||
/* 803BD390 003BA2F0 40 82 00 18 */ bne lbl_803BD3A8
|
||||
/* 803BD394 003BA2F4 57 C0 04 3E */ clrlwi r0, r30, 0x10
|
||||
/* 803BD398 003BA2F8 28 00 FF FF */ cmplwi r0, 0xffff
|
||||
/* 803BD39C 003BA2FC 40 82 00 6C */ bne lbl_803BD408
|
||||
/* 803BD3A0 003BA300 7E FE BB 78 */ mr r30, r23
|
||||
/* 803BD3A4 003BA304 48 00 00 64 */ b lbl_803BD408
|
||||
lbl_803BD3A8:
|
||||
/* 803BD3A8 003BA308 80 81 00 1C */ lwz r4, 0x1c(r1)
|
||||
/* 803BD3AC 003BA30C 38 78 00 00 */ addi r3, r24, 0
|
||||
/* 803BD3B0 003BA310 38 A0 00 04 */ li r5, 4
|
||||
/* 803BD3B4 003BA314 80 84 01 0C */ lwz r4, 0x10c(r4)
|
||||
/* 803BD3B8 003BA318 4B FD 04 C5 */ bl memcmp
|
||||
/* 803BD3BC 003BA31C 2C 03 00 00 */ cmpwi r3, 0
|
||||
/* 803BD3C0 003BA320 40 82 00 48 */ bne lbl_803BD408
|
||||
/* 803BD3C4 003BA324 80 81 00 1C */ lwz r4, 0x1c(r1)
|
||||
/* 803BD3C8 003BA328 38 78 00 04 */ addi r3, r24, 4
|
||||
/* 803BD3CC 003BA32C 38 A0 00 02 */ li r5, 2
|
||||
/* 803BD3D0 003BA330 80 84 01 0C */ lwz r4, 0x10c(r4)
|
||||
/* 803BD3D4 003BA334 38 84 00 04 */ addi r4, r4, 4
|
||||
/* 803BD3D8 003BA338 4B FD 04 A5 */ bl memcmp
|
||||
/* 803BD3DC 003BA33C 2C 03 00 00 */ cmpwi r3, 0
|
||||
/* 803BD3E0 003BA340 40 82 00 28 */ bne lbl_803BD408
|
||||
/* 803BD3E4 003BA344 38 78 00 00 */ addi r3, r24, 0
|
||||
/* 803BD3E8 003BA348 38 9A 00 00 */ addi r4, r26, 0
|
||||
/* 803BD3EC 003BA34C 4B FF F9 81 */ bl __CARDCompareFileName
|
||||
/* 803BD3F0 003BA350 2C 03 00 00 */ cmpwi r3, 0
|
||||
/* 803BD3F4 003BA354 41 82 00 14 */ beq lbl_803BD408
|
||||
/* 803BD3F8 003BA358 80 61 00 1C */ lwz r3, 0x1c(r1)
|
||||
/* 803BD3FC 003BA35C 38 80 FF F9 */ li r4, -7
|
||||
/* 803BD400 003BA360 4B FF BA 59 */ bl __CARDPutControlBlock
|
||||
/* 803BD404 003BA364 48 00 00 F8 */ b lbl_803BD4FC
|
||||
lbl_803BD408:
|
||||
/* 803BD408 003BA368 3B 18 00 40 */ addi r24, r24, 0x40
|
||||
/* 803BD40C 003BA36C 3A F7 00 01 */ addi r23, r23, 1
|
||||
lbl_803BD410:
|
||||
/* 803BD410 003BA370 56 E0 04 3E */ clrlwi r0, r23, 0x10
|
||||
/* 803BD414 003BA374 28 00 00 7F */ cmplwi r0, 0x7f
|
||||
/* 803BD418 003BA378 41 80 FF 70 */ blt lbl_803BD388
|
||||
/* 803BD41C 003BA37C 57 C0 04 3E */ clrlwi r0, r30, 0x10
|
||||
/* 803BD420 003BA380 28 00 FF FF */ cmplwi r0, 0xffff
|
||||
/* 803BD424 003BA384 40 82 00 14 */ bne lbl_803BD438
|
||||
/* 803BD428 003BA388 80 61 00 1C */ lwz r3, 0x1c(r1)
|
||||
/* 803BD42C 003BA38C 38 80 FF F8 */ li r4, -8
|
||||
/* 803BD430 003BA390 4B FF BA 29 */ bl __CARDPutControlBlock
|
||||
/* 803BD434 003BA394 48 00 00 C8 */ b lbl_803BD4FC
|
||||
lbl_803BD438:
|
||||
/* 803BD438 003BA398 80 61 00 1C */ lwz r3, 0x1c(r1)
|
||||
/* 803BD43C 003BA39C 4B FF D1 31 */ bl __CARDGetFatBlock
|
||||
/* 803BD440 003BA3A0 80 81 00 1C */ lwz r4, 0x1c(r1)
|
||||
/* 803BD444 003BA3A4 A0 03 00 06 */ lhz r0, 6(r3)
|
||||
/* 803BD448 003BA3A8 80 64 00 0C */ lwz r3, 0xc(r4)
|
||||
/* 803BD44C 003BA3AC 7C 03 01 D6 */ mullw r0, r3, r0
|
||||
/* 803BD450 003BA3B0 7C 00 D8 40 */ cmplw r0, r27
|
||||
/* 803BD454 003BA3B4 40 80 00 14 */ bge lbl_803BD468
|
||||
/* 803BD458 003BA3B8 38 64 00 00 */ addi r3, r4, 0
|
||||
/* 803BD45C 003BA3BC 38 80 FF F7 */ li r4, -9
|
||||
/* 803BD460 003BA3C0 4B FF B9 F9 */ bl __CARDPutControlBlock
|
||||
/* 803BD464 003BA3C4 48 00 00 98 */ b lbl_803BD4FC
|
||||
lbl_803BD468:
|
||||
/* 803BD468 003BA3C8 28 1D 00 00 */ cmplwi r29, 0
|
||||
/* 803BD46C 003BA3CC 41 82 00 0C */ beq lbl_803BD478
|
||||
/* 803BD470 003BA3D0 7F A0 EB 78 */ mr r0, r29
|
||||
/* 803BD474 003BA3D4 48 00 00 0C */ b lbl_803BD480
|
||||
lbl_803BD478:
|
||||
/* 803BD478 003BA3D8 3C 60 80 3B */ lis r3, __CARDDefaultApiCallback@ha
|
||||
/* 803BD47C 003BA3DC 38 03 7E 74 */ addi r0, r3, __CARDDefaultApiCallback@l
|
||||
lbl_803BD480:
|
||||
/* 803BD480 003BA3E0 90 04 00 D0 */ stw r0, 0xd0(r4)
|
||||
/* 803BD484 003BA3E4 57 C0 32 B2 */ rlwinm r0, r30, 6, 0xa, 0x19
|
||||
/* 803BD488 003BA3E8 7C FF 02 14 */ add r7, r31, r0
|
||||
/* 803BD48C 003BA3EC 80 61 00 1C */ lwz r3, 0x1c(r1)
|
||||
/* 803BD490 003BA3F0 57 DD 04 3E */ clrlwi r29, r30, 0x10
|
||||
/* 803BD494 003BA3F4 38 9A 00 00 */ addi r4, r26, 0
|
||||
/* 803BD498 003BA3F8 B3 C3 00 BC */ sth r30, 0xbc(r3)
|
||||
/* 803BD49C 003BA3FC 38 67 00 08 */ addi r3, r7, 8
|
||||
/* 803BD4A0 003BA400 38 A0 00 20 */ li r5, 0x20
|
||||
/* 803BD4A4 003BA404 80 C1 00 1C */ lwz r6, 0x1c(r1)
|
||||
/* 803BD4A8 003BA408 80 06 00 0C */ lwz r0, 0xc(r6)
|
||||
/* 803BD4AC 003BA40C 7C 1B 03 96 */ divwu r0, r27, r0
|
||||
/* 803BD4B0 003BA410 B0 07 00 38 */ sth r0, 0x38(r7)
|
||||
/* 803BD4B4 003BA414 4B FD 2C 11 */ bl strncpy
|
||||
/* 803BD4B8 003BA418 80 81 00 1C */ lwz r4, 0x1c(r1)
|
||||
/* 803BD4BC 003BA41C 3C 60 80 3C */ lis r3, CreateCallbackFat@ha
|
||||
/* 803BD4C0 003BA420 38 A3 D1 C0 */ addi r5, r3, CreateCallbackFat@l
|
||||
/* 803BD4C4 003BA424 93 84 00 C0 */ stw r28, 0xc0(r4)
|
||||
/* 803BD4C8 003BA428 7F 23 CB 78 */ mr r3, r25
|
||||
/* 803BD4CC 003BA42C 93 3C 00 00 */ stw r25, 0(r28)
|
||||
/* 803BD4D0 003BA430 93 BC 00 04 */ stw r29, 4(r28)
|
||||
/* 803BD4D4 003BA434 80 81 00 1C */ lwz r4, 0x1c(r1)
|
||||
/* 803BD4D8 003BA438 80 04 00 0C */ lwz r0, 0xc(r4)
|
||||
/* 803BD4DC 003BA43C 7C 9B 03 96 */ divwu r4, r27, r0
|
||||
/* 803BD4E0 003BA440 4B FF D2 31 */ bl __CARDAllocBlock
|
||||
/* 803BD4E4 003BA444 7C 64 1B 79 */ or. r4, r3, r3
|
||||
/* 803BD4E8 003BA448 40 80 00 10 */ bge lbl_803BD4F8
|
||||
/* 803BD4EC 003BA44C 80 61 00 1C */ lwz r3, 0x1c(r1)
|
||||
/* 803BD4F0 003BA450 4B FF B9 69 */ bl __CARDPutControlBlock
|
||||
/* 803BD4F4 003BA454 48 00 00 08 */ b lbl_803BD4FC
|
||||
lbl_803BD4F8:
|
||||
/* 803BD4F8 003BA458 7C 83 23 78 */ mr r3, r4
|
||||
lbl_803BD4FC:
|
||||
/* 803BD4FC 003BA45C BA E1 00 24 */ lmw r23, 0x24(r1)
|
||||
/* 803BD500 003BA460 80 01 00 4C */ lwz r0, 0x4c(r1)
|
||||
/* 803BD504 003BA464 38 21 00 48 */ addi r1, r1, 0x48
|
||||
/* 803BD508 003BA468 7C 08 03 A6 */ mtlr r0
|
||||
/* 803BD50C 003BA46C 4E 80 00 20 */ blr
|
|
@ -0,0 +1,214 @@
|
|||
.include "macros.inc"
|
||||
|
||||
.section .text, "ax"
|
||||
|
||||
.global DeleteCallback
|
||||
DeleteCallback:
|
||||
/* 803BDC74 003BABD4 7C 08 02 A6 */ mflr r0
|
||||
/* 803BDC78 003BABD8 90 01 00 04 */ stw r0, 4(r1)
|
||||
/* 803BDC7C 003BABDC 94 21 FF E0 */ stwu r1, -0x20(r1)
|
||||
/* 803BDC80 003BABE0 93 E1 00 1C */ stw r31, 0x1c(r1)
|
||||
/* 803BDC84 003BABE4 93 C1 00 18 */ stw r30, 0x18(r1)
|
||||
/* 803BDC88 003BABE8 93 A1 00 14 */ stw r29, 0x14(r1)
|
||||
/* 803BDC8C 003BABEC 7C 9D 23 79 */ or. r29, r4, r4
|
||||
/* 803BDC90 003BABF0 93 81 00 10 */ stw r28, 0x10(r1)
|
||||
/* 803BDC94 003BABF4 3B 83 00 00 */ addi r28, r3, 0
|
||||
/* 803BDC98 003BABF8 1C BC 01 10 */ mulli r5, r28, 0x110
|
||||
/* 803BDC9C 003BABFC 3C 60 80 57 */ lis r3, lbl_80569A58@ha
|
||||
/* 803BDCA0 003BAC00 38 03 9A 58 */ addi r0, r3, lbl_80569A58@l
|
||||
/* 803BDCA4 003BAC04 7F E0 2A 14 */ add r31, r0, r5
|
||||
/* 803BDCA8 003BAC08 83 DF 00 D0 */ lwz r30, 0xd0(r31)
|
||||
/* 803BDCAC 003BAC0C 38 00 00 00 */ li r0, 0
|
||||
/* 803BDCB0 003BAC10 90 1F 00 D0 */ stw r0, 0xd0(r31)
|
||||
/* 803BDCB4 003BAC14 41 80 00 1C */ blt lbl_803BDCD0
|
||||
/* 803BDCB8 003BAC18 A0 9F 00 BE */ lhz r4, 0xbe(r31)
|
||||
/* 803BDCBC 003BAC1C 38 7C 00 00 */ addi r3, r28, 0
|
||||
/* 803BDCC0 003BAC20 38 BE 00 00 */ addi r5, r30, 0
|
||||
/* 803BDCC4 003BAC24 4B FF CB 65 */ bl __CARDFreeBlock
|
||||
/* 803BDCC8 003BAC28 7C 7D 1B 79 */ or. r29, r3, r3
|
||||
/* 803BDCCC 003BAC2C 40 80 00 2C */ bge lbl_803BDCF8
|
||||
lbl_803BDCD0:
|
||||
/* 803BDCD0 003BAC30 38 7F 00 00 */ addi r3, r31, 0
|
||||
/* 803BDCD4 003BAC34 38 9D 00 00 */ addi r4, r29, 0
|
||||
/* 803BDCD8 003BAC38 4B FF B1 81 */ bl __CARDPutControlBlock
|
||||
/* 803BDCDC 003BAC3C 28 1E 00 00 */ cmplwi r30, 0
|
||||
/* 803BDCE0 003BAC40 41 82 00 18 */ beq lbl_803BDCF8
|
||||
/* 803BDCE4 003BAC44 39 9E 00 00 */ addi r12, r30, 0
|
||||
/* 803BDCE8 003BAC48 7D 88 03 A6 */ mtlr r12
|
||||
/* 803BDCEC 003BAC4C 38 7C 00 00 */ addi r3, r28, 0
|
||||
/* 803BDCF0 003BAC50 38 9D 00 00 */ addi r4, r29, 0
|
||||
/* 803BDCF4 003BAC54 4E 80 00 21 */ blrl
|
||||
lbl_803BDCF8:
|
||||
/* 803BDCF8 003BAC58 80 01 00 24 */ lwz r0, 0x24(r1)
|
||||
/* 803BDCFC 003BAC5C 83 E1 00 1C */ lwz r31, 0x1c(r1)
|
||||
/* 803BDD00 003BAC60 83 C1 00 18 */ lwz r30, 0x18(r1)
|
||||
/* 803BDD04 003BAC64 83 A1 00 14 */ lwz r29, 0x14(r1)
|
||||
/* 803BDD08 003BAC68 83 81 00 10 */ lwz r28, 0x10(r1)
|
||||
/* 803BDD0C 003BAC6C 38 21 00 20 */ addi r1, r1, 0x20
|
||||
/* 803BDD10 003BAC70 7C 08 03 A6 */ mtlr r0
|
||||
/* 803BDD14 003BAC74 4E 80 00 20 */ blr
|
||||
|
||||
.global CARDFastDeleteAsync
|
||||
CARDFastDeleteAsync:
|
||||
/* 803BDD18 003BAC78 7C 08 02 A6 */ mflr r0
|
||||
/* 803BDD1C 003BAC7C 90 01 00 04 */ stw r0, 4(r1)
|
||||
/* 803BDD20 003BAC80 94 21 FF D8 */ stwu r1, -0x28(r1)
|
||||
/* 803BDD24 003BAC84 93 E1 00 24 */ stw r31, 0x24(r1)
|
||||
/* 803BDD28 003BAC88 93 C1 00 20 */ stw r30, 0x20(r1)
|
||||
/* 803BDD2C 003BAC8C 3B C5 00 00 */ addi r30, r5, 0
|
||||
/* 803BDD30 003BAC90 93 A1 00 1C */ stw r29, 0x1c(r1)
|
||||
/* 803BDD34 003BAC94 7C 9D 23 79 */ or. r29, r4, r4
|
||||
/* 803BDD38 003BAC98 93 81 00 18 */ stw r28, 0x18(r1)
|
||||
/* 803BDD3C 003BAC9C 3B 83 00 00 */ addi r28, r3, 0
|
||||
/* 803BDD40 003BACA0 41 80 00 0C */ blt lbl_803BDD4C
|
||||
/* 803BDD44 003BACA4 2C 1D 00 7F */ cmpwi r29, 0x7f
|
||||
/* 803BDD48 003BACA8 41 80 00 0C */ blt lbl_803BDD54
|
||||
lbl_803BDD4C:
|
||||
/* 803BDD4C 003BACAC 38 60 FF 80 */ li r3, -128
|
||||
/* 803BDD50 003BACB0 48 00 00 D4 */ b lbl_803BDE24
|
||||
lbl_803BDD54:
|
||||
/* 803BDD54 003BACB4 38 7C 00 00 */ addi r3, r28, 0
|
||||
/* 803BDD58 003BACB8 38 81 00 14 */ addi r4, r1, 0x14
|
||||
/* 803BDD5C 003BACBC 4B FF B0 45 */ bl __CARDGetControlBlock
|
||||
/* 803BDD60 003BACC0 2C 03 00 00 */ cmpwi r3, 0
|
||||
/* 803BDD64 003BACC4 40 80 00 08 */ bge lbl_803BDD6C
|
||||
/* 803BDD68 003BACC8 48 00 00 BC */ b lbl_803BDE24
|
||||
lbl_803BDD6C:
|
||||
/* 803BDD6C 003BACCC 80 61 00 14 */ lwz r3, 0x14(r1)
|
||||
/* 803BDD70 003BACD0 4B FF CC 01 */ bl __CARDGetDirBlock
|
||||
/* 803BDD74 003BACD4 57 A0 30 32 */ slwi r0, r29, 6
|
||||
/* 803BDD78 003BACD8 7F E3 02 14 */ add r31, r3, r0
|
||||
/* 803BDD7C 003BACDC 80 61 00 14 */ lwz r3, 0x14(r1)
|
||||
/* 803BDD80 003BACE0 7F E4 FB 78 */ mr r4, r31
|
||||
/* 803BDD84 003BACE4 4B FF F0 51 */ bl __CARDAccess
|
||||
/* 803BDD88 003BACE8 7C 64 1B 79 */ or. r4, r3, r3
|
||||
/* 803BDD8C 003BACEC 40 80 00 10 */ bge lbl_803BDD9C
|
||||
/* 803BDD90 003BACF0 80 61 00 14 */ lwz r3, 0x14(r1)
|
||||
/* 803BDD94 003BACF4 4B FF B0 C5 */ bl __CARDPutControlBlock
|
||||
/* 803BDD98 003BACF8 48 00 00 8C */ b lbl_803BDE24
|
||||
lbl_803BDD9C:
|
||||
/* 803BDD9C 003BACFC 80 61 00 14 */ lwz r3, 0x14(r1)
|
||||
/* 803BDDA0 003BAD00 7F A4 EB 78 */ mr r4, r29
|
||||
/* 803BDDA4 003BAD04 4B FF F4 15 */ bl __CARDIsOpened
|
||||
/* 803BDDA8 003BAD08 2C 03 00 00 */ cmpwi r3, 0
|
||||
/* 803BDDAC 003BAD0C 41 82 00 14 */ beq lbl_803BDDC0
|
||||
/* 803BDDB0 003BAD10 80 61 00 14 */ lwz r3, 0x14(r1)
|
||||
/* 803BDDB4 003BAD14 38 80 FF FF */ li r4, -1
|
||||
/* 803BDDB8 003BAD18 4B FF B0 A1 */ bl __CARDPutControlBlock
|
||||
/* 803BDDBC 003BAD1C 48 00 00 68 */ b lbl_803BDE24
|
||||
lbl_803BDDC0:
|
||||
/* 803BDDC0 003BAD20 A0 1F 00 36 */ lhz r0, 0x36(r31)
|
||||
/* 803BDDC4 003BAD24 7F E3 FB 78 */ mr r3, r31
|
||||
/* 803BDDC8 003BAD28 80 C1 00 14 */ lwz r6, 0x14(r1)
|
||||
/* 803BDDCC 003BAD2C 38 80 00 FF */ li r4, 0xff
|
||||
/* 803BDDD0 003BAD30 38 A0 00 40 */ li r5, 0x40
|
||||
/* 803BDDD4 003BAD34 B0 06 00 BE */ sth r0, 0xbe(r6)
|
||||
/* 803BDDD8 003BAD38 4B C4 55 D1 */ bl memset
|
||||
/* 803BDDDC 003BAD3C 28 1E 00 00 */ cmplwi r30, 0
|
||||
/* 803BDDE0 003BAD40 41 82 00 0C */ beq lbl_803BDDEC
|
||||
/* 803BDDE4 003BAD44 7F C0 F3 78 */ mr r0, r30
|
||||
/* 803BDDE8 003BAD48 48 00 00 0C */ b lbl_803BDDF4
|
||||
lbl_803BDDEC:
|
||||
/* 803BDDEC 003BAD4C 3C 60 80 3B */ lis r3, __CARDDefaultApiCallback@ha
|
||||
/* 803BDDF0 003BAD50 38 03 7E 74 */ addi r0, r3, __CARDDefaultApiCallback@l
|
||||
lbl_803BDDF4:
|
||||
/* 803BDDF4 003BAD54 80 A1 00 14 */ lwz r5, 0x14(r1)
|
||||
/* 803BDDF8 003BAD58 3C 60 80 3C */ lis r3, DeleteCallback@ha
|
||||
/* 803BDDFC 003BAD5C 38 83 DC 74 */ addi r4, r3, DeleteCallback@l
|
||||
/* 803BDE00 003BAD60 90 05 00 D0 */ stw r0, 0xd0(r5)
|
||||
/* 803BDE04 003BAD64 7F 83 E3 78 */ mr r3, r28
|
||||
/* 803BDE08 003BAD68 4B FF CD 09 */ bl __CARDUpdateDir
|
||||
/* 803BDE0C 003BAD6C 7C 7F 1B 79 */ or. r31, r3, r3
|
||||
/* 803BDE10 003BAD70 40 80 00 10 */ bge lbl_803BDE20
|
||||
/* 803BDE14 003BAD74 80 61 00 14 */ lwz r3, 0x14(r1)
|
||||
/* 803BDE18 003BAD78 7F E4 FB 78 */ mr r4, r31
|
||||
/* 803BDE1C 003BAD7C 4B FF B0 3D */ bl __CARDPutControlBlock
|
||||
lbl_803BDE20:
|
||||
/* 803BDE20 003BAD80 7F E3 FB 78 */ mr r3, r31
|
||||
lbl_803BDE24:
|
||||
/* 803BDE24 003BAD84 80 01 00 2C */ lwz r0, 0x2c(r1)
|
||||
/* 803BDE28 003BAD88 83 E1 00 24 */ lwz r31, 0x24(r1)
|
||||
/* 803BDE2C 003BAD8C 83 C1 00 20 */ lwz r30, 0x20(r1)
|
||||
/* 803BDE30 003BAD90 83 A1 00 1C */ lwz r29, 0x1c(r1)
|
||||
/* 803BDE34 003BAD94 83 81 00 18 */ lwz r28, 0x18(r1)
|
||||
/* 803BDE38 003BAD98 38 21 00 28 */ addi r1, r1, 0x28
|
||||
/* 803BDE3C 003BAD9C 7C 08 03 A6 */ mtlr r0
|
||||
/* 803BDE40 003BADA0 4E 80 00 20 */ blr
|
||||
|
||||
.global CARDDeleteAsync
|
||||
CARDDeleteAsync:
|
||||
/* 803BDE44 003BADA4 7C 08 02 A6 */ mflr r0
|
||||
/* 803BDE48 003BADA8 90 01 00 04 */ stw r0, 4(r1)
|
||||
/* 803BDE4C 003BADAC 94 21 FF D0 */ stwu r1, -0x30(r1)
|
||||
/* 803BDE50 003BADB0 93 E1 00 2C */ stw r31, 0x2c(r1)
|
||||
/* 803BDE54 003BADB4 3B E3 00 00 */ addi r31, r3, 0
|
||||
/* 803BDE58 003BADB8 93 C1 00 28 */ stw r30, 0x28(r1)
|
||||
/* 803BDE5C 003BADBC 3B C5 00 00 */ addi r30, r5, 0
|
||||
/* 803BDE60 003BADC0 93 A1 00 24 */ stw r29, 0x24(r1)
|
||||
/* 803BDE64 003BADC4 3B A4 00 00 */ addi r29, r4, 0
|
||||
/* 803BDE68 003BADC8 38 81 00 18 */ addi r4, r1, 0x18
|
||||
/* 803BDE6C 003BADCC 4B FF AF 35 */ bl __CARDGetControlBlock
|
||||
/* 803BDE70 003BADD0 2C 03 00 00 */ cmpwi r3, 0
|
||||
/* 803BDE74 003BADD4 40 80 00 08 */ bge lbl_803BDE7C
|
||||
/* 803BDE78 003BADD8 48 00 00 C0 */ b lbl_803BDF38
|
||||
lbl_803BDE7C:
|
||||
/* 803BDE7C 003BADDC 80 61 00 18 */ lwz r3, 0x18(r1)
|
||||
/* 803BDE80 003BADE0 38 9D 00 00 */ addi r4, r29, 0
|
||||
/* 803BDE84 003BADE4 38 A1 00 14 */ addi r5, r1, 0x14
|
||||
/* 803BDE88 003BADE8 4B FF F0 15 */ bl sub_803bce9c
|
||||
/* 803BDE8C 003BADEC 7C 64 1B 79 */ or. r4, r3, r3
|
||||
/* 803BDE90 003BADF0 40 80 00 10 */ bge lbl_803BDEA0
|
||||
/* 803BDE94 003BADF4 80 61 00 18 */ lwz r3, 0x18(r1)
|
||||
/* 803BDE98 003BADF8 4B FF AF C1 */ bl __CARDPutControlBlock
|
||||
/* 803BDE9C 003BADFC 48 00 00 9C */ b lbl_803BDF38
|
||||
lbl_803BDEA0:
|
||||
/* 803BDEA0 003BAE00 80 61 00 18 */ lwz r3, 0x18(r1)
|
||||
/* 803BDEA4 003BAE04 80 81 00 14 */ lwz r4, 0x14(r1)
|
||||
/* 803BDEA8 003BAE08 4B FF F3 11 */ bl __CARDIsOpened
|
||||
/* 803BDEAC 003BAE0C 2C 03 00 00 */ cmpwi r3, 0
|
||||
/* 803BDEB0 003BAE10 41 82 00 14 */ beq lbl_803BDEC4
|
||||
/* 803BDEB4 003BAE14 80 61 00 18 */ lwz r3, 0x18(r1)
|
||||
/* 803BDEB8 003BAE18 38 80 FF FF */ li r4, -1
|
||||
/* 803BDEBC 003BAE1C 4B FF AF 9D */ bl __CARDPutControlBlock
|
||||
/* 803BDEC0 003BAE20 48 00 00 78 */ b lbl_803BDF38
|
||||
lbl_803BDEC4:
|
||||
/* 803BDEC4 003BAE24 80 61 00 18 */ lwz r3, 0x18(r1)
|
||||
/* 803BDEC8 003BAE28 4B FF CA A9 */ bl __CARDGetDirBlock
|
||||
/* 803BDECC 003BAE2C 80 01 00 14 */ lwz r0, 0x14(r1)
|
||||
/* 803BDED0 003BAE30 38 80 00 FF */ li r4, 0xff
|
||||
/* 803BDED4 003BAE34 80 C1 00 18 */ lwz r6, 0x18(r1)
|
||||
/* 803BDED8 003BAE38 38 A0 00 40 */ li r5, 0x40
|
||||
/* 803BDEDC 003BAE3C 54 00 30 32 */ slwi r0, r0, 6
|
||||
/* 803BDEE0 003BAE40 7C 63 02 14 */ add r3, r3, r0
|
||||
/* 803BDEE4 003BAE44 A0 03 00 36 */ lhz r0, 0x36(r3)
|
||||
/* 803BDEE8 003BAE48 B0 06 00 BE */ sth r0, 0xbe(r6)
|
||||
/* 803BDEEC 003BAE4C 4B C4 54 BD */ bl memset
|
||||
/* 803BDEF0 003BAE50 28 1E 00 00 */ cmplwi r30, 0
|
||||
/* 803BDEF4 003BAE54 41 82 00 0C */ beq lbl_803BDF00
|
||||
/* 803BDEF8 003BAE58 7F C0 F3 78 */ mr r0, r30
|
||||
/* 803BDEFC 003BAE5C 48 00 00 0C */ b lbl_803BDF08
|
||||
lbl_803BDF00:
|
||||
/* 803BDF00 003BAE60 3C 60 80 3B */ lis r3, __CARDDefaultApiCallback@ha
|
||||
/* 803BDF04 003BAE64 38 03 7E 74 */ addi r0, r3, __CARDDefaultApiCallback@l
|
||||
lbl_803BDF08:
|
||||
/* 803BDF08 003BAE68 80 A1 00 18 */ lwz r5, 0x18(r1)
|
||||
/* 803BDF0C 003BAE6C 3C 60 80 3C */ lis r3, DeleteCallback@ha
|
||||
/* 803BDF10 003BAE70 38 83 DC 74 */ addi r4, r3, DeleteCallback@l
|
||||
/* 803BDF14 003BAE74 90 05 00 D0 */ stw r0, 0xd0(r5)
|
||||
/* 803BDF18 003BAE78 7F E3 FB 78 */ mr r3, r31
|
||||
/* 803BDF1C 003BAE7C 4B FF CB F5 */ bl __CARDUpdateDir
|
||||
/* 803BDF20 003BAE80 7C 7F 1B 79 */ or. r31, r3, r3
|
||||
/* 803BDF24 003BAE84 40 80 00 10 */ bge lbl_803BDF34
|
||||
/* 803BDF28 003BAE88 80 61 00 18 */ lwz r3, 0x18(r1)
|
||||
/* 803BDF2C 003BAE8C 7F E4 FB 78 */ mr r4, r31
|
||||
/* 803BDF30 003BAE90 4B FF AF 29 */ bl __CARDPutControlBlock
|
||||
lbl_803BDF34:
|
||||
/* 803BDF34 003BAE94 7F E3 FB 78 */ mr r3, r31
|
||||
lbl_803BDF38:
|
||||
/* 803BDF38 003BAE98 80 01 00 34 */ lwz r0, 0x34(r1)
|
||||
/* 803BDF3C 003BAE9C 83 E1 00 2C */ lwz r31, 0x2c(r1)
|
||||
/* 803BDF40 003BAEA0 83 C1 00 28 */ lwz r30, 0x28(r1)
|
||||
/* 803BDF44 003BAEA4 83 A1 00 24 */ lwz r29, 0x24(r1)
|
||||
/* 803BDF48 003BAEA8 38 21 00 30 */ addi r1, r1, 0x30
|
||||
/* 803BDF4C 003BAEAC 7C 08 03 A6 */ mtlr r0
|
||||
/* 803BDF50 003BAEB0 4E 80 00 20 */ blr
|
|
@ -0,0 +1,176 @@
|
|||
.include "macros.inc"
|
||||
|
||||
.section .text, "ax"
|
||||
|
||||
.global __CARDGetDirBlock
|
||||
__CARDGetDirBlock:
|
||||
/* 803BA970 003B78D0 80 63 00 84 */ lwz r3, 0x84(r3)
|
||||
/* 803BA974 003B78D4 4E 80 00 20 */ blr
|
||||
|
||||
WriteCallback:
|
||||
/* 803BA978 003B78D8 7C 08 02 A6 */ mflr r0
|
||||
/* 803BA97C 003B78DC 90 01 00 04 */ stw r0, 4(r1)
|
||||
/* 803BA980 003B78E0 94 21 FF E0 */ stwu r1, -0x20(r1)
|
||||
/* 803BA984 003B78E4 93 E1 00 1C */ stw r31, 0x1c(r1)
|
||||
/* 803BA988 003B78E8 93 C1 00 18 */ stw r30, 0x18(r1)
|
||||
/* 803BA98C 003B78EC 7C 9E 23 79 */ or. r30, r4, r4
|
||||
/* 803BA990 003B78F0 93 A1 00 14 */ stw r29, 0x14(r1)
|
||||
/* 803BA994 003B78F4 3B A3 00 00 */ addi r29, r3, 0
|
||||
/* 803BA998 003B78F8 1C BD 01 10 */ mulli r5, r29, 0x110
|
||||
/* 803BA99C 003B78FC 3C 60 80 57 */ lis r3, lbl_80569A58@ha
|
||||
/* 803BA9A0 003B7900 38 03 9A 58 */ addi r0, r3, lbl_80569A58@l
|
||||
/* 803BA9A4 003B7904 7F E0 2A 14 */ add r31, r0, r5
|
||||
/* 803BA9A8 003B7908 41 80 00 44 */ blt lbl_803BA9EC
|
||||
/* 803BA9AC 003B790C 80 7F 00 80 */ lwz r3, 0x80(r31)
|
||||
/* 803BA9B0 003B7910 80 1F 00 84 */ lwz r0, 0x84(r31)
|
||||
/* 803BA9B4 003B7914 38 83 20 00 */ addi r4, r3, 0x2000
|
||||
/* 803BA9B8 003B7918 7C 00 20 40 */ cmplw r0, r4
|
||||
/* 803BA9BC 003B791C 38 03 40 00 */ addi r0, r3, 0x4000
|
||||
/* 803BA9C0 003B7920 40 82 00 18 */ bne lbl_803BA9D8
|
||||
/* 803BA9C4 003B7924 90 1F 00 84 */ stw r0, 0x84(r31)
|
||||
/* 803BA9C8 003B7928 7C 03 03 78 */ mr r3, r0
|
||||
/* 803BA9CC 003B792C 38 A0 20 00 */ li r5, 0x2000
|
||||
/* 803BA9D0 003B7930 4B C4 8A C1 */ bl memcpy
|
||||
/* 803BA9D4 003B7934 48 00 00 18 */ b lbl_803BA9EC
|
||||
lbl_803BA9D8:
|
||||
/* 803BA9D8 003B7938 90 9F 00 84 */ stw r4, 0x84(r31)
|
||||
/* 803BA9DC 003B793C 38 64 00 00 */ addi r3, r4, 0
|
||||
/* 803BA9E0 003B7940 7C 04 03 78 */ mr r4, r0
|
||||
/* 803BA9E4 003B7944 38 A0 20 00 */ li r5, 0x2000
|
||||
/* 803BA9E8 003B7948 4B C4 8A A9 */ bl memcpy
|
||||
lbl_803BA9EC:
|
||||
/* 803BA9EC 003B794C 80 1F 00 D0 */ lwz r0, 0xd0(r31)
|
||||
/* 803BA9F0 003B7950 28 00 00 00 */ cmplwi r0, 0
|
||||
/* 803BA9F4 003B7954 40 82 00 10 */ bne lbl_803BAA04
|
||||
/* 803BA9F8 003B7958 38 7F 00 00 */ addi r3, r31, 0
|
||||
/* 803BA9FC 003B795C 38 9E 00 00 */ addi r4, r30, 0
|
||||
/* 803BAA00 003B7960 4B FF E4 59 */ bl __CARDPutControlBlock
|
||||
lbl_803BAA04:
|
||||
/* 803BAA04 003B7964 80 1F 00 D8 */ lwz r0, 0xd8(r31)
|
||||
/* 803BAA08 003B7968 28 00 00 00 */ cmplwi r0, 0
|
||||
/* 803BAA0C 003B796C 7C 0C 03 78 */ mr r12, r0
|
||||
/* 803BAA10 003B7970 41 82 00 1C */ beq lbl_803BAA2C
|
||||
/* 803BAA14 003B7974 38 00 00 00 */ li r0, 0
|
||||
/* 803BAA18 003B7978 7D 88 03 A6 */ mtlr r12
|
||||
/* 803BAA1C 003B797C 90 1F 00 D8 */ stw r0, 0xd8(r31)
|
||||
/* 803BAA20 003B7980 38 7D 00 00 */ addi r3, r29, 0
|
||||
/* 803BAA24 003B7984 38 9E 00 00 */ addi r4, r30, 0
|
||||
/* 803BAA28 003B7988 4E 80 00 21 */ blrl
|
||||
lbl_803BAA2C:
|
||||
/* 803BAA2C 003B798C 80 01 00 24 */ lwz r0, 0x24(r1)
|
||||
/* 803BAA30 003B7990 83 E1 00 1C */ lwz r31, 0x1c(r1)
|
||||
/* 803BAA34 003B7994 83 C1 00 18 */ lwz r30, 0x18(r1)
|
||||
/* 803BAA38 003B7998 83 A1 00 14 */ lwz r29, 0x14(r1)
|
||||
/* 803BAA3C 003B799C 38 21 00 20 */ addi r1, r1, 0x20
|
||||
/* 803BAA40 003B79A0 7C 08 03 A6 */ mtlr r0
|
||||
/* 803BAA44 003B79A4 4E 80 00 20 */ blr
|
||||
|
||||
.global EraseCallback
|
||||
EraseCallback:
|
||||
/* 803BAA48 003B79A8 7C 08 02 A6 */ mflr r0
|
||||
/* 803BAA4C 003B79AC 90 01 00 04 */ stw r0, 4(r1)
|
||||
/* 803BAA50 003B79B0 94 21 FF D8 */ stwu r1, -0x28(r1)
|
||||
/* 803BAA54 003B79B4 93 E1 00 24 */ stw r31, 0x24(r1)
|
||||
/* 803BAA58 003B79B8 3B E3 00 00 */ addi r31, r3, 0
|
||||
/* 803BAA5C 003B79BC 3C 60 80 57 */ lis r3, lbl_80569A58@ha
|
||||
/* 803BAA60 003B79C0 93 C1 00 20 */ stw r30, 0x20(r1)
|
||||
/* 803BAA64 003B79C4 1C BF 01 10 */ mulli r5, r31, 0x110
|
||||
/* 803BAA68 003B79C8 93 A1 00 1C */ stw r29, 0x1c(r1)
|
||||
/* 803BAA6C 003B79CC 38 03 9A 58 */ addi r0, r3, lbl_80569A58@l
|
||||
/* 803BAA70 003B79D0 7C 9D 23 79 */ or. r29, r4, r4
|
||||
/* 803BAA74 003B79D4 7F C0 2A 14 */ add r30, r0, r5
|
||||
/* 803BAA78 003B79D8 41 80 00 3C */ blt lbl_803BAAB4
|
||||
/* 803BAA7C 003B79DC 80 BE 00 84 */ lwz r5, 0x84(r30)
|
||||
/* 803BAA80 003B79E0 3C 60 80 3C */ lis r3, WriteCallback@ha
|
||||
/* 803BAA84 003B79E4 80 1E 00 80 */ lwz r0, 0x80(r30)
|
||||
/* 803BAA88 003B79E8 38 E3 A9 78 */ addi r7, r3, WriteCallback@l
|
||||
/* 803BAA8C 003B79EC 80 7E 00 0C */ lwz r3, 0xc(r30)
|
||||
/* 803BAA90 003B79F0 7C 00 28 50 */ subf r0, r0, r5
|
||||
/* 803BAA94 003B79F4 54 00 9B 7E */ srwi r0, r0, 0xd
|
||||
/* 803BAA98 003B79F8 7C 83 01 D6 */ mullw r4, r3, r0
|
||||
/* 803BAA9C 003B79FC 38 C5 00 00 */ addi r6, r5, 0
|
||||
/* 803BAAA0 003B7A00 38 7F 00 00 */ addi r3, r31, 0
|
||||
/* 803BAAA4 003B7A04 38 A0 20 00 */ li r5, 0x2000
|
||||
/* 803BAAA8 003B7A08 4B FF FA 61 */ bl __CARDWrite
|
||||
/* 803BAAAC 003B7A0C 7C 7D 1B 79 */ or. r29, r3, r3
|
||||
/* 803BAAB0 003B7A10 40 80 00 44 */ bge lbl_803BAAF4
|
||||
lbl_803BAAB4:
|
||||
/* 803BAAB4 003B7A14 80 1E 00 D0 */ lwz r0, 0xd0(r30)
|
||||
/* 803BAAB8 003B7A18 28 00 00 00 */ cmplwi r0, 0
|
||||
/* 803BAABC 003B7A1C 40 82 00 10 */ bne lbl_803BAACC
|
||||
/* 803BAAC0 003B7A20 38 7E 00 00 */ addi r3, r30, 0
|
||||
/* 803BAAC4 003B7A24 38 9D 00 00 */ addi r4, r29, 0
|
||||
/* 803BAAC8 003B7A28 4B FF E3 91 */ bl __CARDPutControlBlock
|
||||
lbl_803BAACC:
|
||||
/* 803BAACC 003B7A2C 80 1E 00 D8 */ lwz r0, 0xd8(r30)
|
||||
/* 803BAAD0 003B7A30 28 00 00 00 */ cmplwi r0, 0
|
||||
/* 803BAAD4 003B7A34 7C 0C 03 78 */ mr r12, r0
|
||||
/* 803BAAD8 003B7A38 41 82 00 1C */ beq lbl_803BAAF4
|
||||
/* 803BAADC 003B7A3C 38 00 00 00 */ li r0, 0
|
||||
/* 803BAAE0 003B7A40 7D 88 03 A6 */ mtlr r12
|
||||
/* 803BAAE4 003B7A44 90 1E 00 D8 */ stw r0, 0xd8(r30)
|
||||
/* 803BAAE8 003B7A48 38 7F 00 00 */ addi r3, r31, 0
|
||||
/* 803BAAEC 003B7A4C 38 9D 00 00 */ addi r4, r29, 0
|
||||
/* 803BAAF0 003B7A50 4E 80 00 21 */ blrl
|
||||
lbl_803BAAF4:
|
||||
/* 803BAAF4 003B7A54 80 01 00 2C */ lwz r0, 0x2c(r1)
|
||||
/* 803BAAF8 003B7A58 83 E1 00 24 */ lwz r31, 0x24(r1)
|
||||
/* 803BAAFC 003B7A5C 83 C1 00 20 */ lwz r30, 0x20(r1)
|
||||
/* 803BAB00 003B7A60 83 A1 00 1C */ lwz r29, 0x1c(r1)
|
||||
/* 803BAB04 003B7A64 38 21 00 28 */ addi r1, r1, 0x28
|
||||
/* 803BAB08 003B7A68 7C 08 03 A6 */ mtlr r0
|
||||
/* 803BAB0C 003B7A6C 4E 80 00 20 */ blr
|
||||
|
||||
.global __CARDUpdateDir
|
||||
__CARDUpdateDir:
|
||||
/* 803BAB10 003B7A70 7C 08 02 A6 */ mflr r0
|
||||
/* 803BAB14 003B7A74 90 01 00 04 */ stw r0, 4(r1)
|
||||
/* 803BAB18 003B7A78 94 21 FF D8 */ stwu r1, -0x28(r1)
|
||||
/* 803BAB1C 003B7A7C 93 E1 00 24 */ stw r31, 0x24(r1)
|
||||
/* 803BAB20 003B7A80 93 C1 00 20 */ stw r30, 0x20(r1)
|
||||
/* 803BAB24 003B7A84 93 A1 00 1C */ stw r29, 0x1c(r1)
|
||||
/* 803BAB28 003B7A88 3B A4 00 00 */ addi r29, r4, 0
|
||||
/* 803BAB2C 003B7A8C 93 81 00 18 */ stw r28, 0x18(r1)
|
||||
/* 803BAB30 003B7A90 3B 83 00 00 */ addi r28, r3, 0
|
||||
/* 803BAB34 003B7A94 1C BC 01 10 */ mulli r5, r28, 0x110
|
||||
/* 803BAB38 003B7A98 3C 60 80 57 */ lis r3, lbl_80569A58@ha
|
||||
/* 803BAB3C 003B7A9C 38 03 9A 58 */ addi r0, r3, lbl_80569A58@l
|
||||
/* 803BAB40 003B7AA0 7F C0 2A 14 */ add r30, r0, r5
|
||||
/* 803BAB44 003B7AA4 80 1E 00 00 */ lwz r0, 0(r30)
|
||||
/* 803BAB48 003B7AA8 2C 00 00 00 */ cmpwi r0, 0
|
||||
/* 803BAB4C 003B7AAC 40 82 00 0C */ bne lbl_803BAB58
|
||||
/* 803BAB50 003B7AB0 38 60 FF FD */ li r3, -3
|
||||
/* 803BAB54 003B7AB4 48 00 00 60 */ b lbl_803BABB4
|
||||
lbl_803BAB58:
|
||||
/* 803BAB58 003B7AB8 83 FE 00 84 */ lwz r31, 0x84(r30)
|
||||
/* 803BAB5C 003B7ABC 38 80 1F FC */ li r4, 0x1ffc
|
||||
/* 803BAB60 003B7AC0 A8 BF 1F FA */ lha r5, 0x1ffa(r31)
|
||||
/* 803BAB64 003B7AC4 38 DF 1F C0 */ addi r6, r31, 0x1fc0
|
||||
/* 803BAB68 003B7AC8 38 7F 00 00 */ addi r3, r31, 0
|
||||
/* 803BAB6C 003B7ACC 38 05 00 01 */ addi r0, r5, 1
|
||||
/* 803BAB70 003B7AD0 B0 1F 1F FA */ sth r0, 0x1ffa(r31)
|
||||
/* 803BAB74 003B7AD4 38 A6 00 3C */ addi r5, r6, 0x3c
|
||||
/* 803BAB78 003B7AD8 38 C6 00 3E */ addi r6, r6, 0x3e
|
||||
/* 803BAB7C 003B7ADC 48 00 00 59 */ bl __CARDCheckSum
|
||||
/* 803BAB80 003B7AE0 38 7F 00 00 */ addi r3, r31, 0
|
||||
/* 803BAB84 003B7AE4 38 80 20 00 */ li r4, 0x2000
|
||||
/* 803BAB88 003B7AE8 4B FC 3F 59 */ bl DCStoreRange
|
||||
/* 803BAB8C 003B7AEC 93 BE 00 D8 */ stw r29, 0xd8(r30)
|
||||
/* 803BAB90 003B7AF0 3C 60 80 3C */ lis r3, EraseCallback@ha
|
||||
/* 803BAB94 003B7AF4 38 A3 AA 48 */ addi r5, r3, EraseCallback@l
|
||||
/* 803BAB98 003B7AF8 80 1E 00 80 */ lwz r0, 0x80(r30)
|
||||
/* 803BAB9C 003B7AFC 7F 83 E3 78 */ mr r3, r28
|
||||
/* 803BABA0 003B7B00 80 9E 00 0C */ lwz r4, 0xc(r30)
|
||||
/* 803BABA4 003B7B04 7C 00 F8 50 */ subf r0, r0, r31
|
||||
/* 803BABA8 003B7B08 54 00 9B 7E */ srwi r0, r0, 0xd
|
||||
/* 803BABAC 003B7B0C 7C 84 01 D6 */ mullw r4, r4, r0
|
||||
/* 803BABB0 003B7B10 4B FF E0 25 */ bl __CARDEraseSector
|
||||
lbl_803BABB4:
|
||||
/* 803BABB4 003B7B14 80 01 00 2C */ lwz r0, 0x2c(r1)
|
||||
/* 803BABB8 003B7B18 83 E1 00 24 */ lwz r31, 0x24(r1)
|
||||
/* 803BABBC 003B7B1C 83 C1 00 20 */ lwz r30, 0x20(r1)
|
||||
/* 803BABC0 003B7B20 83 A1 00 1C */ lwz r29, 0x1c(r1)
|
||||
/* 803BABC4 003B7B24 83 81 00 18 */ lwz r28, 0x18(r1)
|
||||
/* 803BABC8 003B7B28 38 21 00 28 */ addi r1, r1, 0x28
|
||||
/* 803BABCC 003B7B2C 7C 08 03 A6 */ mtlr r0
|
||||
/* 803BABD0 003B7B30 4E 80 00 20 */ blr
|
|
@ -0,0 +1,535 @@
|
|||
.include "macros.inc"
|
||||
|
||||
.section .text, "ax"
|
||||
|
||||
FormatCallback:
|
||||
/* 803BC588 003B94E8 7C 08 02 A6 */ mflr r0
|
||||
/* 803BC58C 003B94EC 90 01 00 04 */ stw r0, 4(r1)
|
||||
/* 803BC590 003B94F0 94 21 FF E0 */ stwu r1, -0x20(r1)
|
||||
/* 803BC594 003B94F4 93 E1 00 1C */ stw r31, 0x1c(r1)
|
||||
/* 803BC598 003B94F8 93 C1 00 18 */ stw r30, 0x18(r1)
|
||||
/* 803BC59C 003B94FC 3B C3 00 00 */ addi r30, r3, 0
|
||||
/* 803BC5A0 003B9500 3C 60 80 57 */ lis r3, lbl_80569A58@ha
|
||||
/* 803BC5A4 003B9504 93 A1 00 14 */ stw r29, 0x14(r1)
|
||||
/* 803BC5A8 003B9508 1C BE 01 10 */ mulli r5, r30, 0x110
|
||||
/* 803BC5AC 003B950C 93 81 00 10 */ stw r28, 0x10(r1)
|
||||
/* 803BC5B0 003B9510 38 03 9A 58 */ addi r0, r3, lbl_80569A58@l
|
||||
/* 803BC5B4 003B9514 7C 9C 23 79 */ or. r28, r4, r4
|
||||
/* 803BC5B8 003B9518 7F E0 2A 14 */ add r31, r0, r5
|
||||
/* 803BC5BC 003B951C 41 80 00 C4 */ blt lbl_803BC680
|
||||
/* 803BC5C0 003B9520 80 7F 00 28 */ lwz r3, 0x28(r31)
|
||||
/* 803BC5C4 003B9524 38 03 00 01 */ addi r0, r3, 1
|
||||
/* 803BC5C8 003B9528 90 1F 00 28 */ stw r0, 0x28(r31)
|
||||
/* 803BC5CC 003B952C 80 9F 00 28 */ lwz r4, 0x28(r31)
|
||||
/* 803BC5D0 003B9530 2C 04 00 05 */ cmpwi r4, 5
|
||||
/* 803BC5D4 003B9534 40 80 00 28 */ bge lbl_803BC5FC
|
||||
/* 803BC5D8 003B9538 80 1F 00 0C */ lwz r0, 0xc(r31)
|
||||
/* 803BC5DC 003B953C 3C 60 80 3C */ lis r3, FormatCallback@ha
|
||||
/* 803BC5E0 003B9540 38 A3 C5 88 */ addi r5, r3, FormatCallback@l
|
||||
/* 803BC5E4 003B9544 7C 80 21 D6 */ mullw r4, r0, r4
|
||||
/* 803BC5E8 003B9548 38 7E 00 00 */ addi r3, r30, 0
|
||||
/* 803BC5EC 003B954C 4B FF C5 E9 */ bl __CARDEraseSector
|
||||
/* 803BC5F0 003B9550 7C 7C 1B 79 */ or. r28, r3, r3
|
||||
/* 803BC5F4 003B9554 41 80 00 8C */ blt lbl_803BC680
|
||||
/* 803BC5F8 003B9558 48 00 00 B4 */ b lbl_803BC6AC
|
||||
lbl_803BC5FC:
|
||||
/* 803BC5FC 003B955C 2C 04 00 0A */ cmpwi r4, 0xa
|
||||
/* 803BC600 003B9560 40 80 00 3C */ bge lbl_803BC63C
|
||||
/* 803BC604 003B9564 80 1F 00 0C */ lwz r0, 0xc(r31)
|
||||
/* 803BC608 003B9568 38 C4 FF FB */ addi r6, r4, -5
|
||||
/* 803BC60C 003B956C 3C 60 80 3C */ lis r3, FormatCallback@ha
|
||||
/* 803BC610 003B9570 80 BF 00 80 */ lwz r5, 0x80(r31)
|
||||
/* 803BC614 003B9574 7C 80 31 D6 */ mullw r4, r0, r6
|
||||
/* 803BC618 003B9578 54 C0 68 24 */ slwi r0, r6, 0xd
|
||||
/* 803BC61C 003B957C 38 E3 C5 88 */ addi r7, r3, FormatCallback@l
|
||||
/* 803BC620 003B9580 7C C5 02 14 */ add r6, r5, r0
|
||||
/* 803BC624 003B9584 38 7E 00 00 */ addi r3, r30, 0
|
||||
/* 803BC628 003B9588 38 A0 20 00 */ li r5, 0x2000
|
||||
/* 803BC62C 003B958C 4B FF DE DD */ bl __CARDWrite
|
||||
/* 803BC630 003B9590 7C 7C 1B 79 */ or. r28, r3, r3
|
||||
/* 803BC634 003B9594 41 80 00 4C */ blt lbl_803BC680
|
||||
/* 803BC638 003B9598 48 00 00 74 */ b lbl_803BC6AC
|
||||
lbl_803BC63C:
|
||||
/* 803BC63C 003B959C 80 7F 00 80 */ lwz r3, 0x80(r31)
|
||||
/* 803BC640 003B95A0 38 A0 20 00 */ li r5, 0x2000
|
||||
/* 803BC644 003B95A4 38 03 20 00 */ addi r0, r3, 0x2000
|
||||
/* 803BC648 003B95A8 90 1F 00 84 */ stw r0, 0x84(r31)
|
||||
/* 803BC64C 003B95AC 80 9F 00 80 */ lwz r4, 0x80(r31)
|
||||
/* 803BC650 003B95B0 80 7F 00 84 */ lwz r3, 0x84(r31)
|
||||
/* 803BC654 003B95B4 38 84 40 00 */ addi r4, r4, 0x4000
|
||||
/* 803BC658 003B95B8 4B C4 6E 39 */ bl memcpy
|
||||
/* 803BC65C 003B95BC 80 7F 00 80 */ lwz r3, 0x80(r31)
|
||||
/* 803BC660 003B95C0 38 A0 20 00 */ li r5, 0x2000
|
||||
/* 803BC664 003B95C4 38 03 60 00 */ addi r0, r3, 0x6000
|
||||
/* 803BC668 003B95C8 90 1F 00 88 */ stw r0, 0x88(r31)
|
||||
/* 803BC66C 003B95CC 80 9F 00 80 */ lwz r4, 0x80(r31)
|
||||
/* 803BC670 003B95D0 80 7F 00 88 */ lwz r3, 0x88(r31)
|
||||
/* 803BC674 003B95D4 3C 84 00 01 */ addis r4, r4, 1
|
||||
/* 803BC678 003B95D8 38 84 80 00 */ addi r4, r4, -32768
|
||||
/* 803BC67C 003B95DC 4B C4 6E 15 */ bl memcpy
|
||||
lbl_803BC680:
|
||||
/* 803BC680 003B95E0 83 BF 00 D0 */ lwz r29, 0xd0(r31)
|
||||
/* 803BC684 003B95E4 38 00 00 00 */ li r0, 0
|
||||
/* 803BC688 003B95E8 38 7F 00 00 */ addi r3, r31, 0
|
||||
/* 803BC68C 003B95EC 90 1F 00 D0 */ stw r0, 0xd0(r31)
|
||||
/* 803BC690 003B95F0 7F 84 E3 78 */ mr r4, r28
|
||||
/* 803BC694 003B95F4 4B FF C7 C5 */ bl __CARDPutControlBlock
|
||||
/* 803BC698 003B95F8 39 9D 00 00 */ addi r12, r29, 0
|
||||
/* 803BC69C 003B95FC 7D 88 03 A6 */ mtlr r12
|
||||
/* 803BC6A0 003B9600 38 7E 00 00 */ addi r3, r30, 0
|
||||
/* 803BC6A4 003B9604 38 9C 00 00 */ addi r4, r28, 0
|
||||
/* 803BC6A8 003B9608 4E 80 00 21 */ blrl
|
||||
lbl_803BC6AC:
|
||||
/* 803BC6AC 003B960C 80 01 00 24 */ lwz r0, 0x24(r1)
|
||||
/* 803BC6B0 003B9610 83 E1 00 1C */ lwz r31, 0x1c(r1)
|
||||
/* 803BC6B4 003B9614 83 C1 00 18 */ lwz r30, 0x18(r1)
|
||||
/* 803BC6B8 003B9618 83 A1 00 14 */ lwz r29, 0x14(r1)
|
||||
/* 803BC6BC 003B961C 83 81 00 10 */ lwz r28, 0x10(r1)
|
||||
/* 803BC6C0 003B9620 38 21 00 20 */ addi r1, r1, 0x20
|
||||
/* 803BC6C4 003B9624 7C 08 03 A6 */ mtlr r0
|
||||
/* 803BC6C8 003B9628 4E 80 00 20 */ blr
|
||||
|
||||
.global __CARDFormatRegionAsync
|
||||
__CARDFormatRegionAsync:
|
||||
/* 803BC6CC 003B962C 7C 08 02 A6 */ mflr r0
|
||||
/* 803BC6D0 003B9630 90 01 00 04 */ stw r0, 4(r1)
|
||||
/* 803BC6D4 003B9634 94 21 FF A8 */ stwu r1, -0x58(r1)
|
||||
/* 803BC6D8 003B9638 BE 41 00 20 */ stmw r18, 0x20(r1)
|
||||
/* 803BC6DC 003B963C 3A 84 00 00 */ addi r20, r4, 0
|
||||
/* 803BC6E0 003B9640 3A C3 00 00 */ addi r22, r3, 0
|
||||
/* 803BC6E4 003B9644 3A 65 00 00 */ addi r19, r5, 0
|
||||
/* 803BC6E8 003B9648 38 81 00 18 */ addi r4, r1, 0x18
|
||||
/* 803BC6EC 003B964C 4B FF C6 B5 */ bl __CARDGetControlBlock
|
||||
/* 803BC6F0 003B9650 2C 03 00 00 */ cmpwi r3, 0
|
||||
/* 803BC6F4 003B9654 40 80 00 08 */ bge lbl_803BC6FC
|
||||
/* 803BC6F8 003B9658 48 00 06 18 */ b lbl_803BCD10
|
||||
lbl_803BC6FC:
|
||||
/* 803BC6FC 003B965C 80 61 00 18 */ lwz r3, 0x18(r1)
|
||||
/* 803BC700 003B9660 38 80 00 FF */ li r4, 0xff
|
||||
/* 803BC704 003B9664 38 A0 20 00 */ li r5, 0x2000
|
||||
/* 803BC708 003B9668 83 63 00 80 */ lwz r27, 0x80(r3)
|
||||
/* 803BC70C 003B966C 7F 63 DB 78 */ mr r3, r27
|
||||
/* 803BC710 003B9670 4B C4 6C 99 */ bl memset
|
||||
/* 803BC714 003B9674 3C 60 CC 00 */ lis r3, 0xCC00206E@ha
|
||||
/* 803BC718 003B9678 A2 43 20 6E */ lhz r18, 0xCC00206E@l(r3)
|
||||
/* 803BC71C 003B967C B2 9B 00 24 */ sth r20, 0x24(r27)
|
||||
/* 803BC720 003B9680 4B FC 73 B5 */ bl __OSLockSram
|
||||
/* 803BC724 003B9684 80 03 00 0C */ lwz r0, 0xc(r3)
|
||||
/* 803BC728 003B9688 90 1B 00 14 */ stw r0, 0x14(r27)
|
||||
/* 803BC72C 003B968C 88 03 00 12 */ lbz r0, 0x12(r3)
|
||||
/* 803BC730 003B9690 38 60 00 00 */ li r3, 0
|
||||
/* 803BC734 003B9694 90 1B 00 18 */ stw r0, 0x18(r27)
|
||||
/* 803BC738 003B9698 4B FC 77 5D */ bl __OSUnlockSram
|
||||
/* 803BC73C 003B969C 4B FC 8C 6D */ bl OSGetTime
|
||||
/* 803BC740 003B96A0 3A A4 00 00 */ addi r21, r4, 0
|
||||
/* 803BC744 003B96A4 3A 83 00 00 */ addi r20, r3, 0
|
||||
/* 803BC748 003B96A8 3B 55 00 00 */ addi r26, r21, 0
|
||||
/* 803BC74C 003B96AC 3B D4 00 00 */ addi r30, r20, 0
|
||||
/* 803BC750 003B96B0 4B FC 73 E1 */ bl __OSLockSramEx
|
||||
/* 803BC754 003B96B4 1C 16 00 0C */ mulli r0, r22, 0xc
|
||||
/* 803BC758 003B96B8 7F 23 02 14 */ add r25, r3, r0
|
||||
/* 803BC75C 003B96BC 3C 60 41 C6 */ lis r3, 0x41C64E6D@ha
|
||||
/* 803BC760 003B96C0 3B 19 00 00 */ addi r24, r25, 0
|
||||
/* 803BC764 003B96C4 3B E3 4E 6D */ addi r31, r3, 0x41C64E6D@l
|
||||
/* 803BC768 003B96C8 3B 80 00 00 */ li r28, 0
|
||||
/* 803BC76C 003B96CC 3A E0 00 04 */ li r23, 4
|
||||
/* 803BC770 003B96D0 48 00 03 74 */ b lbl_803BCAE4
|
||||
lbl_803BC774:
|
||||
/* 803BC774 003B96D4 7C BE F9 D6 */ mullw r5, r30, r31
|
||||
/* 803BC778 003B96D8 7C 7A F8 16 */ mulhwu r3, r26, r31
|
||||
/* 803BC77C 003B96DC 3B C0 00 00 */ li r30, 0
|
||||
/* 803BC780 003B96E0 7C A5 1A 14 */ add r5, r5, r3
|
||||
/* 803BC784 003B96E4 7C 7A F1 D6 */ mullw r3, r26, r30
|
||||
/* 803BC788 003B96E8 7C 1A F9 D6 */ mullw r0, r26, r31
|
||||
/* 803BC78C 003B96EC 3B A0 30 39 */ li r29, 0x3039
|
||||
/* 803BC790 003B96F0 7C 80 E8 14 */ addc r4, r0, r29
|
||||
/* 803BC794 003B96F4 7C 05 1A 14 */ add r0, r5, r3
|
||||
/* 803BC798 003B96F8 7C 60 F1 14 */ adde r3, r0, r30
|
||||
/* 803BC79C 003B96FC 38 A0 00 10 */ li r5, 0x10
|
||||
/* 803BC7A0 003B9700 4B FC D7 9D */ bl __shr2i
|
||||
/* 803BC7A4 003B9704 7C C3 F9 D6 */ mullw r6, r3, r31
|
||||
/* 803BC7A8 003B9708 88 18 00 00 */ lbz r0, 0(r24)
|
||||
/* 803BC7AC 003B970C 7C A4 F8 16 */ mulhwu r5, r4, r31
|
||||
/* 803BC7B0 003B9710 7C C6 2A 14 */ add r6, r6, r5
|
||||
/* 803BC7B4 003B9714 7D 04 00 14 */ addc r8, r4, r0
|
||||
/* 803BC7B8 003B9718 7F 87 07 34 */ extsh r7, r28
|
||||
/* 803BC7BC 003B971C 7C A4 F1 D6 */ mullw r5, r4, r30
|
||||
/* 803BC7C0 003B9720 7D 1B 39 AE */ stbx r8, r27, r7
|
||||
/* 803BC7C4 003B9724 7C 04 F9 D6 */ mullw r0, r4, r31
|
||||
/* 803BC7C8 003B9728 7C 80 E8 14 */ addc r4, r0, r29
|
||||
/* 803BC7CC 003B972C 7C 06 2A 14 */ add r0, r6, r5
|
||||
/* 803BC7D0 003B9730 7C 60 F1 14 */ adde r3, r0, r30
|
||||
/* 803BC7D4 003B9734 38 A0 00 10 */ li r5, 0x10
|
||||
/* 803BC7D8 003B9738 4B FC D7 65 */ bl __shr2i
|
||||
/* 803BC7DC 003B973C 3B 40 7F FF */ li r26, 0x7fff
|
||||
/* 803BC7E0 003B9740 7C 60 F0 38 */ and r0, r3, r30
|
||||
/* 803BC7E4 003B9744 7C 84 D0 38 */ and r4, r4, r26
|
||||
/* 803BC7E8 003B9748 7C A0 F9 D6 */ mullw r5, r0, r31
|
||||
/* 803BC7EC 003B974C 7C 64 F8 16 */ mulhwu r3, r4, r31
|
||||
/* 803BC7F0 003B9750 7C A5 1A 14 */ add r5, r5, r3
|
||||
/* 803BC7F4 003B9754 7C 64 F1 D6 */ mullw r3, r4, r30
|
||||
/* 803BC7F8 003B9758 7C 04 F9 D6 */ mullw r0, r4, r31
|
||||
/* 803BC7FC 003B975C 7C 80 E8 14 */ addc r4, r0, r29
|
||||
/* 803BC800 003B9760 7C 05 1A 14 */ add r0, r5, r3
|
||||
/* 803BC804 003B9764 7C 60 F1 14 */ adde r3, r0, r30
|
||||
/* 803BC808 003B9768 38 A0 00 10 */ li r5, 0x10
|
||||
/* 803BC80C 003B976C 4B FC D7 31 */ bl __shr2i
|
||||
/* 803BC810 003B9770 7C C3 F9 D6 */ mullw r6, r3, r31
|
||||
/* 803BC814 003B9774 7C A4 F8 16 */ mulhwu r5, r4, r31
|
||||
/* 803BC818 003B9778 39 3C 00 01 */ addi r9, r28, 1
|
||||
/* 803BC81C 003B977C 7D 29 07 34 */ extsh r9, r9
|
||||
/* 803BC820 003B9780 7C 19 48 AE */ lbzx r0, r25, r9
|
||||
/* 803BC824 003B9784 7C C6 2A 14 */ add r6, r6, r5
|
||||
/* 803BC828 003B9788 7C A4 F1 D6 */ mullw r5, r4, r30
|
||||
/* 803BC82C 003B978C 7C E4 00 14 */ addc r7, r4, r0
|
||||
/* 803BC830 003B9790 7C 04 F9 D6 */ mullw r0, r4, r31
|
||||
/* 803BC834 003B9794 7C FB 49 AE */ stbx r7, r27, r9
|
||||
/* 803BC838 003B9798 7C 80 E8 14 */ addc r4, r0, r29
|
||||
/* 803BC83C 003B979C 7C 06 2A 14 */ add r0, r6, r5
|
||||
/* 803BC840 003B97A0 7C 60 F1 14 */ adde r3, r0, r30
|
||||
/* 803BC844 003B97A4 38 A0 00 10 */ li r5, 0x10
|
||||
/* 803BC848 003B97A8 4B FC D6 F5 */ bl __shr2i
|
||||
/* 803BC84C 003B97AC 7C 60 F0 38 */ and r0, r3, r30
|
||||
/* 803BC850 003B97B0 7C 84 D0 38 */ and r4, r4, r26
|
||||
/* 803BC854 003B97B4 7C A0 F9 D6 */ mullw r5, r0, r31
|
||||
/* 803BC858 003B97B8 7C 64 F8 16 */ mulhwu r3, r4, r31
|
||||
/* 803BC85C 003B97BC 7C A5 1A 14 */ add r5, r5, r3
|
||||
/* 803BC860 003B97C0 7C 64 F1 D6 */ mullw r3, r4, r30
|
||||
/* 803BC864 003B97C4 7C 04 F9 D6 */ mullw r0, r4, r31
|
||||
/* 803BC868 003B97C8 7C 80 E8 14 */ addc r4, r0, r29
|
||||
/* 803BC86C 003B97CC 7C 05 1A 14 */ add r0, r5, r3
|
||||
/* 803BC870 003B97D0 7C 60 F1 14 */ adde r3, r0, r30
|
||||
/* 803BC874 003B97D4 38 A0 00 10 */ li r5, 0x10
|
||||
/* 803BC878 003B97D8 4B FC D6 C5 */ bl __shr2i
|
||||
/* 803BC87C 003B97DC 7C C3 F9 D6 */ mullw r6, r3, r31
|
||||
/* 803BC880 003B97E0 7C A4 F8 16 */ mulhwu r5, r4, r31
|
||||
/* 803BC884 003B97E4 39 3C 00 02 */ addi r9, r28, 2
|
||||
/* 803BC888 003B97E8 7D 29 07 34 */ extsh r9, r9
|
||||
/* 803BC88C 003B97EC 7C 19 48 AE */ lbzx r0, r25, r9
|
||||
/* 803BC890 003B97F0 7C C6 2A 14 */ add r6, r6, r5
|
||||
/* 803BC894 003B97F4 7C A4 F1 D6 */ mullw r5, r4, r30
|
||||
/* 803BC898 003B97F8 7C E4 00 14 */ addc r7, r4, r0
|
||||
/* 803BC89C 003B97FC 7C 04 F9 D6 */ mullw r0, r4, r31
|
||||
/* 803BC8A0 003B9800 7C FB 49 AE */ stbx r7, r27, r9
|
||||
/* 803BC8A4 003B9804 7C 80 E8 14 */ addc r4, r0, r29
|
||||
/* 803BC8A8 003B9808 7C 06 2A 14 */ add r0, r6, r5
|
||||
/* 803BC8AC 003B980C 7C 60 F1 14 */ adde r3, r0, r30
|
||||
/* 803BC8B0 003B9810 38 A0 00 10 */ li r5, 0x10
|
||||
/* 803BC8B4 003B9814 4B FC D6 89 */ bl __shr2i
|
||||
/* 803BC8B8 003B9818 7C 60 F0 38 */ and r0, r3, r30
|
||||
/* 803BC8BC 003B981C 7C 84 D0 38 */ and r4, r4, r26
|
||||
/* 803BC8C0 003B9820 7C A0 F9 D6 */ mullw r5, r0, r31
|
||||
/* 803BC8C4 003B9824 7C 64 F8 16 */ mulhwu r3, r4, r31
|
||||
/* 803BC8C8 003B9828 7C A5 1A 14 */ add r5, r5, r3
|
||||
/* 803BC8CC 003B982C 7C 64 F1 D6 */ mullw r3, r4, r30
|
||||
/* 803BC8D0 003B9830 7C 04 F9 D6 */ mullw r0, r4, r31
|
||||
/* 803BC8D4 003B9834 7C 80 E8 14 */ addc r4, r0, r29
|
||||
/* 803BC8D8 003B9838 7C 05 1A 14 */ add r0, r5, r3
|
||||
/* 803BC8DC 003B983C 7C 60 F1 14 */ adde r3, r0, r30
|
||||
/* 803BC8E0 003B9840 38 A0 00 10 */ li r5, 0x10
|
||||
/* 803BC8E4 003B9844 4B FC D6 59 */ bl __shr2i
|
||||
/* 803BC8E8 003B9848 7C C3 F9 D6 */ mullw r6, r3, r31
|
||||
/* 803BC8EC 003B984C 7C A4 F8 16 */ mulhwu r5, r4, r31
|
||||
/* 803BC8F0 003B9850 39 3C 00 03 */ addi r9, r28, 3
|
||||
/* 803BC8F4 003B9854 7D 29 07 34 */ extsh r9, r9
|
||||
/* 803BC8F8 003B9858 7C 19 48 AE */ lbzx r0, r25, r9
|
||||
/* 803BC8FC 003B985C 7C C6 2A 14 */ add r6, r6, r5
|
||||
/* 803BC900 003B9860 7C A4 F1 D6 */ mullw r5, r4, r30
|
||||
/* 803BC904 003B9864 7C E4 00 14 */ addc r7, r4, r0
|
||||
/* 803BC908 003B9868 7C 04 F9 D6 */ mullw r0, r4, r31
|
||||
/* 803BC90C 003B986C 7C FB 49 AE */ stbx r7, r27, r9
|
||||
/* 803BC910 003B9870 7C 80 E8 14 */ addc r4, r0, r29
|
||||
/* 803BC914 003B9874 7C 06 2A 14 */ add r0, r6, r5
|
||||
/* 803BC918 003B9878 7C 60 F1 14 */ adde r3, r0, r30
|
||||
/* 803BC91C 003B987C 38 A0 00 10 */ li r5, 0x10
|
||||
/* 803BC920 003B9880 4B FC D6 1D */ bl __shr2i
|
||||
/* 803BC924 003B9884 7C 60 F0 38 */ and r0, r3, r30
|
||||
/* 803BC928 003B9888 7C 84 D0 38 */ and r4, r4, r26
|
||||
/* 803BC92C 003B988C 7C A0 F9 D6 */ mullw r5, r0, r31
|
||||
/* 803BC930 003B9890 7C 64 F8 16 */ mulhwu r3, r4, r31
|
||||
/* 803BC934 003B9894 7C A5 1A 14 */ add r5, r5, r3
|
||||
/* 803BC938 003B9898 7C 64 F1 D6 */ mullw r3, r4, r30
|
||||
/* 803BC93C 003B989C 7C 04 F9 D6 */ mullw r0, r4, r31
|
||||
/* 803BC940 003B98A0 7C 80 E8 14 */ addc r4, r0, r29
|
||||
/* 803BC944 003B98A4 7C 05 1A 14 */ add r0, r5, r3
|
||||
/* 803BC948 003B98A8 7C 60 F1 14 */ adde r3, r0, r30
|
||||
/* 803BC94C 003B98AC 38 A0 00 10 */ li r5, 0x10
|
||||
/* 803BC950 003B98B0 4B FC D5 ED */ bl __shr2i
|
||||
/* 803BC954 003B98B4 7C C3 F9 D6 */ mullw r6, r3, r31
|
||||
/* 803BC958 003B98B8 7C A4 F8 16 */ mulhwu r5, r4, r31
|
||||
/* 803BC95C 003B98BC 39 3C 00 04 */ addi r9, r28, 4
|
||||
/* 803BC960 003B98C0 7D 29 07 34 */ extsh r9, r9
|
||||
/* 803BC964 003B98C4 7C 19 48 AE */ lbzx r0, r25, r9
|
||||
/* 803BC968 003B98C8 7C C6 2A 14 */ add r6, r6, r5
|
||||
/* 803BC96C 003B98CC 7C A4 F1 D6 */ mullw r5, r4, r30
|
||||
/* 803BC970 003B98D0 7C E4 00 14 */ addc r7, r4, r0
|
||||
/* 803BC974 003B98D4 7C 04 F9 D6 */ mullw r0, r4, r31
|
||||
/* 803BC978 003B98D8 7C FB 49 AE */ stbx r7, r27, r9
|
||||
/* 803BC97C 003B98DC 7C 80 E8 14 */ addc r4, r0, r29
|
||||
/* 803BC980 003B98E0 7C 06 2A 14 */ add r0, r6, r5
|
||||
/* 803BC984 003B98E4 7C 60 F1 14 */ adde r3, r0, r30
|
||||
/* 803BC988 003B98E8 38 A0 00 10 */ li r5, 0x10
|
||||
/* 803BC98C 003B98EC 4B FC D5 B1 */ bl __shr2i
|
||||
/* 803BC990 003B98F0 7C 60 F0 38 */ and r0, r3, r30
|
||||
/* 803BC994 003B98F4 7C 84 D0 38 */ and r4, r4, r26
|
||||
/* 803BC998 003B98F8 7C A0 F9 D6 */ mullw r5, r0, r31
|
||||
/* 803BC99C 003B98FC 7C 64 F8 16 */ mulhwu r3, r4, r31
|
||||
/* 803BC9A0 003B9900 7C A5 1A 14 */ add r5, r5, r3
|
||||
/* 803BC9A4 003B9904 7C 64 F1 D6 */ mullw r3, r4, r30
|
||||
/* 803BC9A8 003B9908 7C 04 F9 D6 */ mullw r0, r4, r31
|
||||
/* 803BC9AC 003B990C 7C 80 E8 14 */ addc r4, r0, r29
|
||||
/* 803BC9B0 003B9910 7C 05 1A 14 */ add r0, r5, r3
|
||||
/* 803BC9B4 003B9914 7C 60 F1 14 */ adde r3, r0, r30
|
||||
/* 803BC9B8 003B9918 38 A0 00 10 */ li r5, 0x10
|
||||
/* 803BC9BC 003B991C 4B FC D5 81 */ bl __shr2i
|
||||
/* 803BC9C0 003B9920 7C C3 F9 D6 */ mullw r6, r3, r31
|
||||
/* 803BC9C4 003B9924 7C A4 F8 16 */ mulhwu r5, r4, r31
|
||||
/* 803BC9C8 003B9928 39 3C 00 05 */ addi r9, r28, 5
|
||||
/* 803BC9CC 003B992C 7D 29 07 34 */ extsh r9, r9
|
||||
/* 803BC9D0 003B9930 7C 19 48 AE */ lbzx r0, r25, r9
|
||||
/* 803BC9D4 003B9934 7C C6 2A 14 */ add r6, r6, r5
|
||||
/* 803BC9D8 003B9938 7C A4 F1 D6 */ mullw r5, r4, r30
|
||||
/* 803BC9DC 003B993C 7C E4 00 14 */ addc r7, r4, r0
|
||||
/* 803BC9E0 003B9940 7C 04 F9 D6 */ mullw r0, r4, r31
|
||||
/* 803BC9E4 003B9944 7C FB 49 AE */ stbx r7, r27, r9
|
||||
/* 803BC9E8 003B9948 7C 80 E8 14 */ addc r4, r0, r29
|
||||
/* 803BC9EC 003B994C 7C 06 2A 14 */ add r0, r6, r5
|
||||
/* 803BC9F0 003B9950 7C 60 F1 14 */ adde r3, r0, r30
|
||||
/* 803BC9F4 003B9954 38 A0 00 10 */ li r5, 0x10
|
||||
/* 803BC9F8 003B9958 4B FC D5 45 */ bl __shr2i
|
||||
/* 803BC9FC 003B995C 7C 60 F0 38 */ and r0, r3, r30
|
||||
/* 803BCA00 003B9960 7C 84 D0 38 */ and r4, r4, r26
|
||||
/* 803BCA04 003B9964 7C A0 F9 D6 */ mullw r5, r0, r31
|
||||
/* 803BCA08 003B9968 7C 64 F8 16 */ mulhwu r3, r4, r31
|
||||
/* 803BCA0C 003B996C 7C A5 1A 14 */ add r5, r5, r3
|
||||
/* 803BCA10 003B9970 7C 64 F1 D6 */ mullw r3, r4, r30
|
||||
/* 803BCA14 003B9974 7C 04 F9 D6 */ mullw r0, r4, r31
|
||||
/* 803BCA18 003B9978 7C 80 E8 14 */ addc r4, r0, r29
|
||||
/* 803BCA1C 003B997C 7C 05 1A 14 */ add r0, r5, r3
|
||||
/* 803BCA20 003B9980 7C 60 F1 14 */ adde r3, r0, r30
|
||||
/* 803BCA24 003B9984 38 A0 00 10 */ li r5, 0x10
|
||||
/* 803BCA28 003B9988 4B FC D5 15 */ bl __shr2i
|
||||
/* 803BCA2C 003B998C 7C C3 F9 D6 */ mullw r6, r3, r31
|
||||
/* 803BCA30 003B9990 7C A4 F8 16 */ mulhwu r5, r4, r31
|
||||
/* 803BCA34 003B9994 39 3C 00 06 */ addi r9, r28, 6
|
||||
/* 803BCA38 003B9998 7D 29 07 34 */ extsh r9, r9
|
||||
/* 803BCA3C 003B999C 7C 19 48 AE */ lbzx r0, r25, r9
|
||||
/* 803BCA40 003B99A0 7C C6 2A 14 */ add r6, r6, r5
|
||||
/* 803BCA44 003B99A4 7C A4 F1 D6 */ mullw r5, r4, r30
|
||||
/* 803BCA48 003B99A8 7C E4 00 14 */ addc r7, r4, r0
|
||||
/* 803BCA4C 003B99AC 7C 04 F9 D6 */ mullw r0, r4, r31
|
||||
/* 803BCA50 003B99B0 7C FB 49 AE */ stbx r7, r27, r9
|
||||
/* 803BCA54 003B99B4 7C 80 E8 14 */ addc r4, r0, r29
|
||||
/* 803BCA58 003B99B8 7C 06 2A 14 */ add r0, r6, r5
|
||||
/* 803BCA5C 003B99BC 7C 60 F1 14 */ adde r3, r0, r30
|
||||
/* 803BCA60 003B99C0 38 A0 00 10 */ li r5, 0x10
|
||||
/* 803BCA64 003B99C4 4B FC D4 D9 */ bl __shr2i
|
||||
/* 803BCA68 003B99C8 7C 60 F0 38 */ and r0, r3, r30
|
||||
/* 803BCA6C 003B99CC 7C 84 D0 38 */ and r4, r4, r26
|
||||
/* 803BCA70 003B99D0 7C A0 F9 D6 */ mullw r5, r0, r31
|
||||
/* 803BCA74 003B99D4 7C 64 F8 16 */ mulhwu r3, r4, r31
|
||||
/* 803BCA78 003B99D8 7C A5 1A 14 */ add r5, r5, r3
|
||||
/* 803BCA7C 003B99DC 7C 64 F1 D6 */ mullw r3, r4, r30
|
||||
/* 803BCA80 003B99E0 7C 04 F9 D6 */ mullw r0, r4, r31
|
||||
/* 803BCA84 003B99E4 7C 80 E8 14 */ addc r4, r0, r29
|
||||
/* 803BCA88 003B99E8 7C 05 1A 14 */ add r0, r5, r3
|
||||
/* 803BCA8C 003B99EC 7C 60 F1 14 */ adde r3, r0, r30
|
||||
/* 803BCA90 003B99F0 38 A0 00 10 */ li r5, 0x10
|
||||
/* 803BCA94 003B99F4 4B FC D4 A9 */ bl __shr2i
|
||||
/* 803BCA98 003B99F8 7C C3 F9 D6 */ mullw r6, r3, r31
|
||||
/* 803BCA9C 003B99FC 7C A4 F8 16 */ mulhwu r5, r4, r31
|
||||
/* 803BCAA0 003B9A00 39 3C 00 07 */ addi r9, r28, 7
|
||||
/* 803BCAA4 003B9A04 7D 29 07 34 */ extsh r9, r9
|
||||
/* 803BCAA8 003B9A08 7C 19 48 AE */ lbzx r0, r25, r9
|
||||
/* 803BCAAC 003B9A0C 7C C6 2A 14 */ add r6, r6, r5
|
||||
/* 803BCAB0 003B9A10 7C A4 F1 D6 */ mullw r5, r4, r30
|
||||
/* 803BCAB4 003B9A14 7C E4 00 14 */ addc r7, r4, r0
|
||||
/* 803BCAB8 003B9A18 7C 04 F9 D6 */ mullw r0, r4, r31
|
||||
/* 803BCABC 003B9A1C 7C FB 49 AE */ stbx r7, r27, r9
|
||||
/* 803BCAC0 003B9A20 7C 80 E8 14 */ addc r4, r0, r29
|
||||
/* 803BCAC4 003B9A24 7C 06 2A 14 */ add r0, r6, r5
|
||||
/* 803BCAC8 003B9A28 7C 60 F1 14 */ adde r3, r0, r30
|
||||
/* 803BCACC 003B9A2C 38 A0 00 10 */ li r5, 0x10
|
||||
/* 803BCAD0 003B9A30 4B FC D4 6D */ bl __shr2i
|
||||
/* 803BCAD4 003B9A34 7C 9A D0 38 */ and r26, r4, r26
|
||||
/* 803BCAD8 003B9A38 7C 7E F0 38 */ and r30, r3, r30
|
||||
/* 803BCADC 003B9A3C 3B 18 00 08 */ addi r24, r24, 8
|
||||
/* 803BCAE0 003B9A40 3B 9C 00 08 */ addi r28, r28, 8
|
||||
lbl_803BCAE4:
|
||||
/* 803BCAE4 003B9A44 7F 80 07 34 */ extsh r0, r28
|
||||
/* 803BCAE8 003B9A48 7C 00 B8 00 */ cmpw r0, r23
|
||||
/* 803BCAEC 003B9A4C 41 80 FC 88 */ blt lbl_803BC774
|
||||
/* 803BCAF0 003B9A50 48 00 02 18 */ b lbl_803BCD08
|
||||
lbl_803BCAF4:
|
||||
/* 803BCAF4 003B9A54 3C 60 41 C6 */ lis r3, 0x41C64E6D@ha
|
||||
/* 803BCAF8 003B9A58 3B 23 4E 6D */ addi r25, r3, 0x41C64E6D@l
|
||||
/* 803BCAFC 003B9A5C 48 00 00 80 */ b lbl_803BCB7C
|
||||
lbl_803BCB00:
|
||||
/* 803BCB00 003B9A60 7C BE C9 D6 */ mullw r5, r30, r25
|
||||
/* 803BCB04 003B9A64 7C 7A C8 16 */ mulhwu r3, r26, r25
|
||||
/* 803BCB08 003B9A68 3B 00 00 00 */ li r24, 0
|
||||
/* 803BCB0C 003B9A6C 7C A5 1A 14 */ add r5, r5, r3
|
||||
/* 803BCB10 003B9A70 7C 7A C1 D6 */ mullw r3, r26, r24
|
||||
/* 803BCB14 003B9A74 7C 1A C9 D6 */ mullw r0, r26, r25
|
||||
/* 803BCB18 003B9A78 3A E0 30 39 */ li r23, 0x3039
|
||||
/* 803BCB1C 003B9A7C 7C 80 B8 14 */ addc r4, r0, r23
|
||||
/* 803BCB20 003B9A80 7C 05 1A 14 */ add r0, r5, r3
|
||||
/* 803BCB24 003B9A84 7C 60 C1 14 */ adde r3, r0, r24
|
||||
/* 803BCB28 003B9A88 38 A0 00 10 */ li r5, 0x10
|
||||
/* 803BCB2C 003B9A8C 4B FC D4 11 */ bl __shr2i
|
||||
/* 803BCB30 003B9A90 7C C3 C9 D6 */ mullw r6, r3, r25
|
||||
/* 803BCB34 003B9A94 88 1D 00 00 */ lbz r0, 0(r29)
|
||||
/* 803BCB38 003B9A98 7C A4 C8 16 */ mulhwu r5, r4, r25
|
||||
/* 803BCB3C 003B9A9C 7C C6 2A 14 */ add r6, r6, r5
|
||||
/* 803BCB40 003B9AA0 7D 04 00 14 */ addc r8, r4, r0
|
||||
/* 803BCB44 003B9AA4 7F 87 07 34 */ extsh r7, r28
|
||||
/* 803BCB48 003B9AA8 7C A4 C1 D6 */ mullw r5, r4, r24
|
||||
/* 803BCB4C 003B9AAC 7D 1B 39 AE */ stbx r8, r27, r7
|
||||
/* 803BCB50 003B9AB0 7C 04 C9 D6 */ mullw r0, r4, r25
|
||||
/* 803BCB54 003B9AB4 7C 80 B8 14 */ addc r4, r0, r23
|
||||
/* 803BCB58 003B9AB8 7C 06 2A 14 */ add r0, r6, r5
|
||||
/* 803BCB5C 003B9ABC 7C 60 C1 14 */ adde r3, r0, r24
|
||||
/* 803BCB60 003B9AC0 38 A0 00 10 */ li r5, 0x10
|
||||
/* 803BCB64 003B9AC4 4B FC D3 D9 */ bl __shr2i
|
||||
/* 803BCB68 003B9AC8 38 00 7F FF */ li r0, 0x7fff
|
||||
/* 803BCB6C 003B9ACC 7C 9A 00 38 */ and r26, r4, r0
|
||||
/* 803BCB70 003B9AD0 7C 7E C0 38 */ and r30, r3, r24
|
||||
/* 803BCB74 003B9AD4 3B BD 00 01 */ addi r29, r29, 1
|
||||
/* 803BCB78 003B9AD8 3B 9C 00 01 */ addi r28, r28, 1
|
||||
lbl_803BCB7C:
|
||||
/* 803BCB7C 003B9ADC 7F 80 07 34 */ extsh r0, r28
|
||||
/* 803BCB80 003B9AE0 2C 00 00 0C */ cmpwi r0, 0xc
|
||||
/* 803BCB84 003B9AE4 41 80 FF 7C */ blt lbl_803BCB00
|
||||
/* 803BCB88 003B9AE8 38 60 00 00 */ li r3, 0
|
||||
/* 803BCB8C 003B9AEC 4B FC 73 2D */ bl __OSUnlockSramEx
|
||||
/* 803BCB90 003B9AF0 92 5B 00 1C */ stw r18, 0x1c(r27)
|
||||
/* 803BCB94 003B9AF4 3A 40 00 00 */ li r18, 0
|
||||
/* 803BCB98 003B9AF8 38 7B 00 00 */ addi r3, r27, 0
|
||||
/* 803BCB9C 003B9AFC 92 BB 00 10 */ stw r21, 0x10(r27)
|
||||
/* 803BCBA0 003B9B00 38 BB 01 FC */ addi r5, r27, 0x1fc
|
||||
/* 803BCBA4 003B9B04 38 DB 01 FE */ addi r6, r27, 0x1fe
|
||||
/* 803BCBA8 003B9B08 92 9B 00 0C */ stw r20, 0xc(r27)
|
||||
/* 803BCBAC 003B9B0C 38 80 01 FC */ li r4, 0x1fc
|
||||
/* 803BCBB0 003B9B10 B2 5B 00 20 */ sth r18, 0x20(r27)
|
||||
/* 803BCBB4 003B9B14 80 E1 00 18 */ lwz r7, 0x18(r1)
|
||||
/* 803BCBB8 003B9B18 A0 07 00 08 */ lhz r0, 8(r7)
|
||||
/* 803BCBBC 003B9B1C B0 1B 00 22 */ sth r0, 0x22(r27)
|
||||
/* 803BCBC0 003B9B20 4B FF E0 15 */ bl __CARDCheckSum
|
||||
/* 803BCBC4 003B9B24 48 00 00 4C */ b lbl_803BCC10
|
||||
lbl_803BCBC8:
|
||||
/* 803BCBC8 003B9B28 80 81 00 18 */ lwz r4, 0x18(r1)
|
||||
/* 803BCBCC 003B9B2C 7E 43 07 34 */ extsh r3, r18
|
||||
/* 803BCBD0 003B9B30 38 03 00 01 */ addi r0, r3, 1
|
||||
/* 803BCBD4 003B9B34 80 64 00 80 */ lwz r3, 0x80(r4)
|
||||
/* 803BCBD8 003B9B38 54 00 68 24 */ slwi r0, r0, 0xd
|
||||
/* 803BCBDC 003B9B3C 38 80 00 FF */ li r4, 0xff
|
||||
/* 803BCBE0 003B9B40 7E 83 02 14 */ add r20, r3, r0
|
||||
/* 803BCBE4 003B9B44 38 74 00 00 */ addi r3, r20, 0
|
||||
/* 803BCBE8 003B9B48 38 A0 20 00 */ li r5, 0x2000
|
||||
/* 803BCBEC 003B9B4C 4B C4 67 BD */ bl memset
|
||||
/* 803BCBF0 003B9B50 38 94 1F C0 */ addi r4, r20, 0x1fc0
|
||||
/* 803BCBF4 003B9B54 B2 54 1F FA */ sth r18, 0x1ffa(r20)
|
||||
/* 803BCBF8 003B9B58 38 74 00 00 */ addi r3, r20, 0
|
||||
/* 803BCBFC 003B9B5C 38 A4 00 3C */ addi r5, r4, 0x3c
|
||||
/* 803BCC00 003B9B60 38 C4 00 3E */ addi r6, r4, 0x3e
|
||||
/* 803BCC04 003B9B64 38 80 1F FC */ li r4, 0x1ffc
|
||||
/* 803BCC08 003B9B68 4B FF DF CD */ bl __CARDCheckSum
|
||||
/* 803BCC0C 003B9B6C 3A 52 00 01 */ addi r18, r18, 1
|
||||
lbl_803BCC10:
|
||||
/* 803BCC10 003B9B70 7E 40 07 34 */ extsh r0, r18
|
||||
/* 803BCC14 003B9B74 2C 00 00 02 */ cmpwi r0, 2
|
||||
/* 803BCC18 003B9B78 41 80 FF B0 */ blt lbl_803BCBC8
|
||||
/* 803BCC1C 003B9B7C 3A 40 00 00 */ li r18, 0
|
||||
/* 803BCC20 003B9B80 48 00 00 60 */ b lbl_803BCC80
|
||||
lbl_803BCC24:
|
||||
/* 803BCC24 003B9B84 80 81 00 18 */ lwz r4, 0x18(r1)
|
||||
/* 803BCC28 003B9B88 7E 43 07 34 */ extsh r3, r18
|
||||
/* 803BCC2C 003B9B8C 38 03 00 03 */ addi r0, r3, 3
|
||||
/* 803BCC30 003B9B90 80 64 00 80 */ lwz r3, 0x80(r4)
|
||||
/* 803BCC34 003B9B94 54 00 68 24 */ slwi r0, r0, 0xd
|
||||
/* 803BCC38 003B9B98 38 80 00 00 */ li r4, 0
|
||||
/* 803BCC3C 003B9B9C 7E 83 02 14 */ add r20, r3, r0
|
||||
/* 803BCC40 003B9BA0 38 74 00 00 */ addi r3, r20, 0
|
||||
/* 803BCC44 003B9BA4 38 A0 20 00 */ li r5, 0x2000
|
||||
/* 803BCC48 003B9BA8 4B C4 67 61 */ bl memset
|
||||
/* 803BCC4C 003B9BAC B2 54 00 04 */ sth r18, 4(r20)
|
||||
/* 803BCC50 003B9BB0 38 00 00 04 */ li r0, 4
|
||||
/* 803BCC54 003B9BB4 38 B4 00 00 */ addi r5, r20, 0
|
||||
/* 803BCC58 003B9BB8 80 81 00 18 */ lwz r4, 0x18(r1)
|
||||
/* 803BCC5C 003B9BBC 38 74 00 04 */ addi r3, r20, 4
|
||||
/* 803BCC60 003B9BC0 38 D4 00 02 */ addi r6, r20, 2
|
||||
/* 803BCC64 003B9BC4 A0 E4 00 10 */ lhz r7, 0x10(r4)
|
||||
/* 803BCC68 003B9BC8 38 80 1F FC */ li r4, 0x1ffc
|
||||
/* 803BCC6C 003B9BCC 38 E7 FF FB */ addi r7, r7, -5
|
||||
/* 803BCC70 003B9BD0 B0 F4 00 06 */ sth r7, 6(r20)
|
||||
/* 803BCC74 003B9BD4 B0 14 00 08 */ sth r0, 8(r20)
|
||||
/* 803BCC78 003B9BD8 4B FF DF 5D */ bl __CARDCheckSum
|
||||
/* 803BCC7C 003B9BDC 3A 52 00 01 */ addi r18, r18, 1
|
||||
lbl_803BCC80:
|
||||
/* 803BCC80 003B9BE0 7E 40 07 34 */ extsh r0, r18
|
||||
/* 803BCC84 003B9BE4 2C 00 00 02 */ cmpwi r0, 2
|
||||
/* 803BCC88 003B9BE8 41 80 FF 9C */ blt lbl_803BCC24
|
||||
/* 803BCC8C 003B9BEC 28 13 00 00 */ cmplwi r19, 0
|
||||
/* 803BCC90 003B9BF0 41 82 00 0C */ beq lbl_803BCC9C
|
||||
/* 803BCC94 003B9BF4 7E 60 9B 78 */ mr r0, r19
|
||||
/* 803BCC98 003B9BF8 48 00 00 0C */ b lbl_803BCCA4
|
||||
lbl_803BCC9C:
|
||||
/* 803BCC9C 003B9BFC 3C 60 80 3B */ lis r3, __CARDDefaultApiCallback@ha
|
||||
/* 803BCCA0 003B9C00 38 03 7E 74 */ addi r0, r3, __CARDDefaultApiCallback@l
|
||||
lbl_803BCCA4:
|
||||
/* 803BCCA4 003B9C04 80 A1 00 18 */ lwz r5, 0x18(r1)
|
||||
/* 803BCCA8 003B9C08 3C 60 00 01 */ lis r3, 0x0000A000@ha
|
||||
/* 803BCCAC 003B9C0C 38 83 A0 00 */ addi r4, r3, 0x0000A000@l
|
||||
/* 803BCCB0 003B9C10 90 05 00 D0 */ stw r0, 0xd0(r5)
|
||||
/* 803BCCB4 003B9C14 80 61 00 18 */ lwz r3, 0x18(r1)
|
||||
/* 803BCCB8 003B9C18 80 63 00 80 */ lwz r3, 0x80(r3)
|
||||
/* 803BCCBC 003B9C1C 4B FC 1E 25 */ bl DCStoreRange
|
||||
/* 803BCCC0 003B9C20 80 81 00 18 */ lwz r4, 0x18(r1)
|
||||
/* 803BCCC4 003B9C24 38 00 00 00 */ li r0, 0
|
||||
/* 803BCCC8 003B9C28 3C 60 80 3C */ lis r3, FormatCallback@ha
|
||||
/* 803BCCCC 003B9C2C 90 04 00 28 */ stw r0, 0x28(r4)
|
||||
/* 803BCCD0 003B9C30 38 A3 C5 88 */ addi r5, r3, FormatCallback@l
|
||||
/* 803BCCD4 003B9C34 38 76 00 00 */ addi r3, r22, 0
|
||||
/* 803BCCD8 003B9C38 80 C1 00 18 */ lwz r6, 0x18(r1)
|
||||
/* 803BCCDC 003B9C3C 80 86 00 0C */ lwz r4, 0xc(r6)
|
||||
/* 803BCCE0 003B9C40 80 06 00 28 */ lwz r0, 0x28(r6)
|
||||
/* 803BCCE4 003B9C44 7C 84 01 D6 */ mullw r4, r4, r0
|
||||
/* 803BCCE8 003B9C48 4B FF BE ED */ bl __CARDEraseSector
|
||||
/* 803BCCEC 003B9C4C 7C 72 1B 79 */ or. r18, r3, r3
|
||||
/* 803BCCF0 003B9C50 40 80 00 10 */ bge lbl_803BCD00
|
||||
/* 803BCCF4 003B9C54 80 61 00 18 */ lwz r3, 0x18(r1)
|
||||
/* 803BCCF8 003B9C58 7E 44 93 78 */ mr r4, r18
|
||||
/* 803BCCFC 003B9C5C 4B FF C1 5D */ bl __CARDPutControlBlock
|
||||
lbl_803BCD00:
|
||||
/* 803BCD00 003B9C60 7E 43 93 78 */ mr r3, r18
|
||||
/* 803BCD04 003B9C64 48 00 00 0C */ b lbl_803BCD10
|
||||
lbl_803BCD08:
|
||||
/* 803BCD08 003B9C68 7F B9 02 14 */ add r29, r25, r0
|
||||
/* 803BCD0C 003B9C6C 4B FF FD E8 */ b lbl_803BCAF4
|
||||
lbl_803BCD10:
|
||||
/* 803BCD10 003B9C70 BA 41 00 20 */ lmw r18, 0x20(r1)
|
||||
/* 803BCD14 003B9C74 80 01 00 5C */ lwz r0, 0x5c(r1)
|
||||
/* 803BCD18 003B9C78 38 21 00 58 */ addi r1, r1, 0x58
|
||||
/* 803BCD1C 003B9C7C 7C 08 03 A6 */ mtlr r0
|
||||
/* 803BCD20 003B9C80 4E 80 00 20 */ blr
|
||||
|
||||
.global CARDFormatAsync
|
||||
CARDFormatAsync:
|
||||
/* 803BCD24 003B9C84 7C 08 02 A6 */ mflr r0
|
||||
/* 803BCD28 003B9C88 90 01 00 04 */ stw r0, 4(r1)
|
||||
/* 803BCD2C 003B9C8C 94 21 FF E8 */ stwu r1, -0x18(r1)
|
||||
/* 803BCD30 003B9C90 93 E1 00 14 */ stw r31, 0x14(r1)
|
||||
/* 803BCD34 003B9C94 3B E4 00 00 */ addi r31, r4, 0
|
||||
/* 803BCD38 003B9C98 93 C1 00 10 */ stw r30, 0x10(r1)
|
||||
/* 803BCD3C 003B9C9C 3B C3 00 00 */ addi r30, r3, 0
|
||||
/* 803BCD40 003B9CA0 4B FF C0 21 */ bl __CARDGetFontEncode
|
||||
/* 803BCD44 003B9CA4 38 83 00 00 */ addi r4, r3, 0
|
||||
/* 803BCD48 003B9CA8 38 7E 00 00 */ addi r3, r30, 0
|
||||
/* 803BCD4C 003B9CAC 38 BF 00 00 */ addi r5, r31, 0
|
||||
/* 803BCD50 003B9CB0 4B FF F9 7D */ bl __CARDFormatRegionAsync
|
||||
/* 803BCD54 003B9CB4 80 01 00 1C */ lwz r0, 0x1c(r1)
|
||||
/* 803BCD58 003B9CB8 83 E1 00 14 */ lwz r31, 0x14(r1)
|
||||
/* 803BCD5C 003B9CBC 83 C1 00 10 */ lwz r30, 0x10(r1)
|
||||
/* 803BCD60 003B9CC0 38 21 00 18 */ addi r1, r1, 0x18
|
||||
/* 803BCD64 003B9CC4 7C 08 03 A6 */ mtlr r0
|
||||
/* 803BCD68 003B9CC8 4E 80 00 20 */ blr
|
|
@ -0,0 +1,760 @@
|
|||
.include "macros.inc"
|
||||
|
||||
.section .text, "ax"
|
||||
|
||||
.global IsCard
|
||||
IsCard:
|
||||
/* 803BBB10 003B8A70 54 60 00 1F */ rlwinm. r0, r3, 0, 0, 0xf
|
||||
/* 803BBB14 003B8A74 41 82 00 24 */ beq lbl_803BBB38
|
||||
/* 803BBB18 003B8A78 3C 03 80 00 */ addis r0, r3, 0x8000
|
||||
/* 803BBB1C 003B8A7C 28 00 00 04 */ cmplwi r0, 4
|
||||
/* 803BBB20 003B8A80 40 82 00 10 */ bne lbl_803BBB30
|
||||
/* 803BBB24 003B8A84 A0 0D A0 40 */ lhz r0, lbl_805A8C00@sda21(r13)
|
||||
/* 803BBB28 003B8A88 28 00 FF FF */ cmplwi r0, 0xffff
|
||||
/* 803BBB2C 003B8A8C 40 82 00 0C */ bne lbl_803BBB38
|
||||
lbl_803BBB30:
|
||||
/* 803BBB30 003B8A90 38 60 00 00 */ li r3, 0
|
||||
/* 803BBB34 003B8A94 4E 80 00 20 */ blr
|
||||
lbl_803BBB38:
|
||||
/* 803BBB38 003B8A98 54 60 07 BF */ clrlwi. r0, r3, 0x1e
|
||||
/* 803BBB3C 003B8A9C 41 82 00 0C */ beq lbl_803BBB48
|
||||
/* 803BBB40 003B8AA0 38 60 00 00 */ li r3, 0
|
||||
/* 803BBB44 003B8AA4 4E 80 00 20 */ blr
|
||||
lbl_803BBB48:
|
||||
/* 803BBB48 003B8AA8 54 65 06 3A */ rlwinm r5, r3, 0, 0x18, 0x1d
|
||||
/* 803BBB4C 003B8AAC 2C 05 00 20 */ cmpwi r5, 0x20
|
||||
/* 803BBB50 003B8AB0 41 82 00 48 */ beq lbl_803BBB98
|
||||
/* 803BBB54 003B8AB4 40 80 00 28 */ bge lbl_803BBB7C
|
||||
/* 803BBB58 003B8AB8 2C 05 00 08 */ cmpwi r5, 8
|
||||
/* 803BBB5C 003B8ABC 41 82 00 3C */ beq lbl_803BBB98
|
||||
/* 803BBB60 003B8AC0 40 80 00 10 */ bge lbl_803BBB70
|
||||
/* 803BBB64 003B8AC4 2C 05 00 04 */ cmpwi r5, 4
|
||||
/* 803BBB68 003B8AC8 41 82 00 30 */ beq lbl_803BBB98
|
||||
/* 803BBB6C 003B8ACC 48 00 00 24 */ b lbl_803BBB90
|
||||
lbl_803BBB70:
|
||||
/* 803BBB70 003B8AD0 2C 05 00 10 */ cmpwi r5, 0x10
|
||||
/* 803BBB74 003B8AD4 41 82 00 24 */ beq lbl_803BBB98
|
||||
/* 803BBB78 003B8AD8 48 00 00 18 */ b lbl_803BBB90
|
||||
lbl_803BBB7C:
|
||||
/* 803BBB7C 003B8ADC 2C 05 00 80 */ cmpwi r5, 0x80
|
||||
/* 803BBB80 003B8AE0 41 82 00 18 */ beq lbl_803BBB98
|
||||
/* 803BBB84 003B8AE4 40 80 00 0C */ bge lbl_803BBB90
|
||||
/* 803BBB88 003B8AE8 2C 05 00 40 */ cmpwi r5, 0x40
|
||||
/* 803BBB8C 003B8AEC 41 82 00 0C */ beq lbl_803BBB98
|
||||
lbl_803BBB90:
|
||||
/* 803BBB90 003B8AF0 38 60 00 00 */ li r3, 0
|
||||
/* 803BBB94 003B8AF4 4E 80 00 20 */ blr
|
||||
lbl_803BBB98:
|
||||
/* 803BBB98 003B8AF8 3C 80 80 3F */ lis r4, lbl_803F6E60@ha
|
||||
/* 803BBB9C 003B8AFC 54 63 BE FA */ rlwinm r3, r3, 0x17, 0x1b, 0x1d
|
||||
/* 803BBBA0 003B8B00 38 04 6E 60 */ addi r0, r4, lbl_803F6E60@l
|
||||
/* 803BBBA4 003B8B04 7C 60 1A 14 */ add r3, r0, r3
|
||||
/* 803BBBA8 003B8B08 80 63 00 00 */ lwz r3, 0(r3)
|
||||
/* 803BBBAC 003B8B0C 2C 03 00 00 */ cmpwi r3, 0
|
||||
/* 803BBBB0 003B8B10 40 82 00 0C */ bne lbl_803BBBBC
|
||||
/* 803BBBB4 003B8B14 38 60 00 00 */ li r3, 0
|
||||
/* 803BBBB8 003B8B18 4E 80 00 20 */ blr
|
||||
lbl_803BBBBC:
|
||||
/* 803BBBBC 003B8B1C 54 A0 88 DC */ rlwinm r0, r5, 0x11, 3, 0xe
|
||||
/* 803BBBC0 003B8B20 7C 00 1B 96 */ divwu r0, r0, r3
|
||||
/* 803BBBC4 003B8B24 28 00 00 08 */ cmplwi r0, 8
|
||||
/* 803BBBC8 003B8B28 40 80 00 0C */ bge lbl_803BBBD4
|
||||
/* 803BBBCC 003B8B2C 38 60 00 00 */ li r3, 0
|
||||
/* 803BBBD0 003B8B30 4E 80 00 20 */ blr
|
||||
lbl_803BBBD4:
|
||||
/* 803BBBD4 003B8B34 38 60 00 01 */ li r3, 1
|
||||
/* 803BBBD8 003B8B38 4E 80 00 20 */ blr
|
||||
|
||||
.global CARDProbeEx
|
||||
CARDProbeEx:
|
||||
/* 803BBBDC 003B8B3C 7C 08 02 A6 */ mflr r0
|
||||
/* 803BBBE0 003B8B40 90 01 00 04 */ stw r0, 4(r1)
|
||||
/* 803BBBE4 003B8B44 94 21 FF D0 */ stwu r1, -0x30(r1)
|
||||
/* 803BBBE8 003B8B48 BF 61 00 1C */ stmw r27, 0x1c(r1)
|
||||
/* 803BBBEC 003B8B4C 7C 7B 1B 79 */ or. r27, r3, r3
|
||||
/* 803BBBF0 003B8B50 3B 84 00 00 */ addi r28, r4, 0
|
||||
/* 803BBBF4 003B8B54 3B E5 00 00 */ addi r31, r5, 0
|
||||
/* 803BBBF8 003B8B58 41 80 00 0C */ blt lbl_803BBC04
|
||||
/* 803BBBFC 003B8B5C 2C 1B 00 02 */ cmpwi r27, 2
|
||||
/* 803BBC00 003B8B60 41 80 00 0C */ blt lbl_803BBC0C
|
||||
lbl_803BBC04:
|
||||
/* 803BBC04 003B8B64 38 60 FF 80 */ li r3, -128
|
||||
/* 803BBC08 003B8B68 48 00 01 3C */ b lbl_803BBD44
|
||||
lbl_803BBC0C:
|
||||
/* 803BBC0C 003B8B6C 3C 60 80 00 */ lis r3, 0x800030E3@ha
|
||||
/* 803BBC10 003B8B70 88 03 30 E3 */ lbz r0, 0x800030E3@l(r3)
|
||||
/* 803BBC14 003B8B74 54 00 06 31 */ rlwinm. r0, r0, 0, 0x18, 0x18
|
||||
/* 803BBC18 003B8B78 41 82 00 0C */ beq lbl_803BBC24
|
||||
/* 803BBC1C 003B8B7C 38 60 FF FD */ li r3, -3
|
||||
/* 803BBC20 003B8B80 48 00 01 24 */ b lbl_803BBD44
|
||||
lbl_803BBC24:
|
||||
/* 803BBC24 003B8B84 1C 9B 01 10 */ mulli r4, r27, 0x110
|
||||
/* 803BBC28 003B8B88 3C 60 80 57 */ lis r3, lbl_80569A58@ha
|
||||
/* 803BBC2C 003B8B8C 38 03 9A 58 */ addi r0, r3, lbl_80569A58@l
|
||||
/* 803BBC30 003B8B90 7F C0 22 14 */ add r30, r0, r4
|
||||
/* 803BBC34 003B8B94 4B FC 5A 2D */ bl OSDisableInterrupts
|
||||
/* 803BBC38 003B8B98 3B A3 00 00 */ addi r29, r3, 0
|
||||
/* 803BBC3C 003B8B9C 38 7B 00 00 */ addi r3, r27, 0
|
||||
/* 803BBC40 003B8BA0 48 00 4D A1 */ bl EXIProbeEx
|
||||
/* 803BBC44 003B8BA4 2C 03 FF FF */ cmpwi r3, -1
|
||||
/* 803BBC48 003B8BA8 40 82 00 0C */ bne lbl_803BBC54
|
||||
/* 803BBC4C 003B8BAC 3B C0 FF FD */ li r30, -3
|
||||
/* 803BBC50 003B8BB0 48 00 00 E8 */ b lbl_803BBD38
|
||||
lbl_803BBC54:
|
||||
/* 803BBC54 003B8BB4 2C 03 00 00 */ cmpwi r3, 0
|
||||
/* 803BBC58 003B8BB8 40 82 00 0C */ bne lbl_803BBC64
|
||||
/* 803BBC5C 003B8BBC 3B C0 FF FF */ li r30, -1
|
||||
/* 803BBC60 003B8BC0 48 00 00 D8 */ b lbl_803BBD38
|
||||
lbl_803BBC64:
|
||||
/* 803BBC64 003B8BC4 80 1E 00 00 */ lwz r0, 0(r30)
|
||||
/* 803BBC68 003B8BC8 2C 00 00 00 */ cmpwi r0, 0
|
||||
/* 803BBC6C 003B8BCC 41 82 00 40 */ beq lbl_803BBCAC
|
||||
/* 803BBC70 003B8BD0 80 1E 00 24 */ lwz r0, 0x24(r30)
|
||||
/* 803BBC74 003B8BD4 2C 00 00 01 */ cmpwi r0, 1
|
||||
/* 803BBC78 003B8BD8 40 80 00 0C */ bge lbl_803BBC84
|
||||
/* 803BBC7C 003B8BDC 3B C0 FF FF */ li r30, -1
|
||||
/* 803BBC80 003B8BE0 48 00 00 B8 */ b lbl_803BBD38
|
||||
lbl_803BBC84:
|
||||
/* 803BBC84 003B8BE4 28 1C 00 00 */ cmplwi r28, 0
|
||||
/* 803BBC88 003B8BE8 41 82 00 0C */ beq lbl_803BBC94
|
||||
/* 803BBC8C 003B8BEC A0 1E 00 08 */ lhz r0, 8(r30)
|
||||
/* 803BBC90 003B8BF0 90 1C 00 00 */ stw r0, 0(r28)
|
||||
lbl_803BBC94:
|
||||
/* 803BBC94 003B8BF4 28 1F 00 00 */ cmplwi r31, 0
|
||||
/* 803BBC98 003B8BF8 41 82 00 0C */ beq lbl_803BBCA4
|
||||
/* 803BBC9C 003B8BFC 80 1E 00 0C */ lwz r0, 0xc(r30)
|
||||
/* 803BBCA0 003B8C00 90 1F 00 00 */ stw r0, 0(r31)
|
||||
lbl_803BBCA4:
|
||||
/* 803BBCA4 003B8C04 3B C0 00 00 */ li r30, 0
|
||||
/* 803BBCA8 003B8C08 48 00 00 90 */ b lbl_803BBD38
|
||||
lbl_803BBCAC:
|
||||
/* 803BBCAC 003B8C0C 7F 63 DB 78 */ mr r3, r27
|
||||
/* 803BBCB0 003B8C10 48 00 58 85 */ bl EXIGetState
|
||||
/* 803BBCB4 003B8C14 54 60 07 39 */ rlwinm. r0, r3, 0, 0x1c, 0x1c
|
||||
/* 803BBCB8 003B8C18 41 82 00 0C */ beq lbl_803BBCC4
|
||||
/* 803BBCBC 003B8C1C 3B C0 FF FE */ li r30, -2
|
||||
/* 803BBCC0 003B8C20 48 00 00 78 */ b lbl_803BBD38
|
||||
lbl_803BBCC4:
|
||||
/* 803BBCC4 003B8C24 38 7B 00 00 */ addi r3, r27, 0
|
||||
/* 803BBCC8 003B8C28 38 A1 00 14 */ addi r5, r1, 0x14
|
||||
/* 803BBCCC 003B8C2C 38 80 00 00 */ li r4, 0
|
||||
/* 803BBCD0 003B8C30 48 00 58 A5 */ bl EXIGetID
|
||||
/* 803BBCD4 003B8C34 2C 03 00 00 */ cmpwi r3, 0
|
||||
/* 803BBCD8 003B8C38 40 82 00 0C */ bne lbl_803BBCE4
|
||||
/* 803BBCDC 003B8C3C 3B C0 FF FF */ li r30, -1
|
||||
/* 803BBCE0 003B8C40 48 00 00 58 */ b lbl_803BBD38
|
||||
lbl_803BBCE4:
|
||||
/* 803BBCE4 003B8C44 80 61 00 14 */ lwz r3, 0x14(r1)
|
||||
/* 803BBCE8 003B8C48 4B FF FE 29 */ bl IsCard
|
||||
/* 803BBCEC 003B8C4C 2C 03 00 00 */ cmpwi r3, 0
|
||||
/* 803BBCF0 003B8C50 41 82 00 44 */ beq lbl_803BBD34
|
||||
/* 803BBCF4 003B8C54 28 1C 00 00 */ cmplwi r28, 0
|
||||
/* 803BBCF8 003B8C58 41 82 00 10 */ beq lbl_803BBD08
|
||||
/* 803BBCFC 003B8C5C 80 01 00 14 */ lwz r0, 0x14(r1)
|
||||
/* 803BBD00 003B8C60 54 00 06 3A */ rlwinm r0, r0, 0, 0x18, 0x1d
|
||||
/* 803BBD04 003B8C64 90 1C 00 00 */ stw r0, 0(r28)
|
||||
lbl_803BBD08:
|
||||
/* 803BBD08 003B8C68 28 1F 00 00 */ cmplwi r31, 0
|
||||
/* 803BBD0C 003B8C6C 41 82 00 20 */ beq lbl_803BBD2C
|
||||
/* 803BBD10 003B8C70 80 81 00 14 */ lwz r4, 0x14(r1)
|
||||
/* 803BBD14 003B8C74 3C 60 80 3F */ lis r3, lbl_803F6E60@ha
|
||||
/* 803BBD18 003B8C78 38 03 6E 60 */ addi r0, r3, lbl_803F6E60@l
|
||||
/* 803BBD1C 003B8C7C 54 83 BE FA */ rlwinm r3, r4, 0x17, 0x1b, 0x1d
|
||||
/* 803BBD20 003B8C80 7C 60 1A 14 */ add r3, r0, r3
|
||||
/* 803BBD24 003B8C84 80 03 00 00 */ lwz r0, 0(r3)
|
||||
/* 803BBD28 003B8C88 90 1F 00 00 */ stw r0, 0(r31)
|
||||
lbl_803BBD2C:
|
||||
/* 803BBD2C 003B8C8C 3B C0 00 00 */ li r30, 0
|
||||
/* 803BBD30 003B8C90 48 00 00 08 */ b lbl_803BBD38
|
||||
lbl_803BBD34:
|
||||
/* 803BBD34 003B8C94 3B C0 FF FE */ li r30, -2
|
||||
lbl_803BBD38:
|
||||
/* 803BBD38 003B8C98 7F A3 EB 78 */ mr r3, r29
|
||||
/* 803BBD3C 003B8C9C 4B FC 59 4D */ bl OSRestoreInterrupts
|
||||
/* 803BBD40 003B8CA0 7F C3 F3 78 */ mr r3, r30
|
||||
lbl_803BBD44:
|
||||
/* 803BBD44 003B8CA4 BB 61 00 1C */ lmw r27, 0x1c(r1)
|
||||
/* 803BBD48 003B8CA8 80 01 00 34 */ lwz r0, 0x34(r1)
|
||||
/* 803BBD4C 003B8CAC 38 21 00 30 */ addi r1, r1, 0x30
|
||||
/* 803BBD50 003B8CB0 7C 08 03 A6 */ mtlr r0
|
||||
/* 803BBD54 003B8CB4 4E 80 00 20 */ blr
|
||||
|
||||
.global DoMount
|
||||
DoMount:
|
||||
/* 803BBD58 003B8CB8 7C 08 02 A6 */ mflr r0
|
||||
/* 803BBD5C 003B8CBC 90 01 00 04 */ stw r0, 4(r1)
|
||||
/* 803BBD60 003B8CC0 94 21 FF D0 */ stwu r1, -0x30(r1)
|
||||
/* 803BBD64 003B8CC4 93 E1 00 2C */ stw r31, 0x2c(r1)
|
||||
/* 803BBD68 003B8CC8 93 C1 00 28 */ stw r30, 0x28(r1)
|
||||
/* 803BBD6C 003B8CCC 93 A1 00 24 */ stw r29, 0x24(r1)
|
||||
/* 803BBD70 003B8CD0 3B A3 00 00 */ addi r29, r3, 0
|
||||
/* 803BBD74 003B8CD4 1C 9D 01 10 */ mulli r4, r29, 0x110
|
||||
/* 803BBD78 003B8CD8 93 81 00 20 */ stw r28, 0x20(r1)
|
||||
/* 803BBD7C 003B8CDC 3C 60 80 57 */ lis r3, lbl_80569A58@ha
|
||||
/* 803BBD80 003B8CE0 38 03 9A 58 */ addi r0, r3, lbl_80569A58@l
|
||||
/* 803BBD84 003B8CE4 7C 60 22 14 */ add r3, r0, r4
|
||||
/* 803BBD88 003B8CE8 80 03 00 24 */ lwz r0, 0x24(r3)
|
||||
/* 803BBD8C 003B8CEC 3B E3 00 00 */ addi r31, r3, 0
|
||||
/* 803BBD90 003B8CF0 2C 00 00 00 */ cmpwi r0, 0
|
||||
/* 803BBD94 003B8CF4 40 82 02 AC */ bne lbl_803BC040
|
||||
/* 803BBD98 003B8CF8 38 7D 00 00 */ addi r3, r29, 0
|
||||
/* 803BBD9C 003B8CFC 38 A1 00 18 */ addi r5, r1, 0x18
|
||||
/* 803BBDA0 003B8D00 38 80 00 00 */ li r4, 0
|
||||
/* 803BBDA4 003B8D04 48 00 57 D1 */ bl EXIGetID
|
||||
/* 803BBDA8 003B8D08 2C 03 00 00 */ cmpwi r3, 0
|
||||
/* 803BBDAC 003B8D0C 40 82 00 0C */ bne lbl_803BBDB8
|
||||
/* 803BBDB0 003B8D10 3B C0 FF FD */ li r30, -3
|
||||
/* 803BBDB4 003B8D14 48 00 00 20 */ b lbl_803BBDD4
|
||||
lbl_803BBDB8:
|
||||
/* 803BBDB8 003B8D18 80 61 00 18 */ lwz r3, 0x18(r1)
|
||||
/* 803BBDBC 003B8D1C 4B FF FD 55 */ bl IsCard
|
||||
/* 803BBDC0 003B8D20 2C 03 00 00 */ cmpwi r3, 0
|
||||
/* 803BBDC4 003B8D24 41 82 00 0C */ beq lbl_803BBDD0
|
||||
/* 803BBDC8 003B8D28 3B C0 00 00 */ li r30, 0
|
||||
/* 803BBDCC 003B8D2C 48 00 00 08 */ b lbl_803BBDD4
|
||||
lbl_803BBDD0:
|
||||
/* 803BBDD0 003B8D30 3B C0 FF FE */ li r30, -2
|
||||
lbl_803BBDD4:
|
||||
/* 803BBDD4 003B8D34 2C 1E 00 00 */ cmpwi r30, 0
|
||||
/* 803BBDD8 003B8D38 41 80 03 44 */ blt lbl_803BC11C
|
||||
/* 803BBDDC 003B8D3C 80 01 00 18 */ lwz r0, 0x18(r1)
|
||||
/* 803BBDE0 003B8D40 3C 80 80 3F */ lis r4, lbl_803F6E60@ha
|
||||
/* 803BBDE4 003B8D44 38 84 6E 60 */ addi r4, r4, lbl_803F6E60@l
|
||||
/* 803BBDE8 003B8D48 90 1F 01 08 */ stw r0, 0x108(r31)
|
||||
/* 803BBDEC 003B8D4C 3C 60 80 3F */ lis r3, lbl_803F6E80@ha
|
||||
/* 803BBDF0 003B8D50 38 03 6E 80 */ addi r0, r3, lbl_803F6E80@l
|
||||
/* 803BBDF4 003B8D54 80 A1 00 18 */ lwz r5, 0x18(r1)
|
||||
/* 803BBDF8 003B8D58 38 7D 00 00 */ addi r3, r29, 0
|
||||
/* 803BBDFC 003B8D5C 54 A5 06 3A */ rlwinm r5, r5, 0, 0x18, 0x1d
|
||||
/* 803BBE00 003B8D60 B0 BF 00 08 */ sth r5, 8(r31)
|
||||
/* 803BBE04 003B8D64 80 A1 00 18 */ lwz r5, 0x18(r1)
|
||||
/* 803BBE08 003B8D68 54 A5 BE FA */ rlwinm r5, r5, 0x17, 0x1b, 0x1d
|
||||
/* 803BBE0C 003B8D6C 7C 84 2A 14 */ add r4, r4, r5
|
||||
/* 803BBE10 003B8D70 80 84 00 00 */ lwz r4, 0(r4)
|
||||
/* 803BBE14 003B8D74 90 9F 00 0C */ stw r4, 0xc(r31)
|
||||
/* 803BBE18 003B8D78 A0 BF 00 08 */ lhz r5, 8(r31)
|
||||
/* 803BBE1C 003B8D7C 80 9F 00 0C */ lwz r4, 0xc(r31)
|
||||
/* 803BBE20 003B8D80 54 A5 A0 16 */ slwi r5, r5, 0x14
|
||||
/* 803BBE24 003B8D84 7C A5 1E 70 */ srawi r5, r5, 3
|
||||
/* 803BBE28 003B8D88 7C A5 01 94 */ addze r5, r5
|
||||
/* 803BBE2C 003B8D8C 7C 85 23 D6 */ divw r4, r5, r4
|
||||
/* 803BBE30 003B8D90 B0 9F 00 10 */ sth r4, 0x10(r31)
|
||||
/* 803BBE34 003B8D94 80 81 00 18 */ lwz r4, 0x18(r1)
|
||||
/* 803BBE38 003B8D98 54 84 D6 FA */ rlwinm r4, r4, 0x1a, 0x1b, 0x1d
|
||||
/* 803BBE3C 003B8D9C 7C 80 22 14 */ add r4, r0, r4
|
||||
/* 803BBE40 003B8DA0 80 04 00 00 */ lwz r0, 0(r4)
|
||||
/* 803BBE44 003B8DA4 90 1F 00 14 */ stw r0, 0x14(r31)
|
||||
/* 803BBE48 003B8DA8 4B FF C4 FD */ bl __CARDClearStatus
|
||||
/* 803BBE4C 003B8DAC 7C 7E 1B 79 */ or. r30, r3, r3
|
||||
/* 803BBE50 003B8DB0 41 80 02 CC */ blt lbl_803BC11C
|
||||
/* 803BBE54 003B8DB4 38 7D 00 00 */ addi r3, r29, 0
|
||||
/* 803BBE58 003B8DB8 38 81 00 14 */ addi r4, r1, 0x14
|
||||
/* 803BBE5C 003B8DBC 4B FF C3 F9 */ bl __CARDReadStatus
|
||||
/* 803BBE60 003B8DC0 7C 7E 1B 79 */ or. r30, r3, r3
|
||||
/* 803BBE64 003B8DC4 41 80 02 B8 */ blt lbl_803BC11C
|
||||
/* 803BBE68 003B8DC8 7F A3 EB 78 */ mr r3, r29
|
||||
/* 803BBE6C 003B8DCC 48 00 4A F5 */ bl EXIProbe
|
||||
/* 803BBE70 003B8DD0 2C 03 00 00 */ cmpwi r3, 0
|
||||
/* 803BBE74 003B8DD4 40 82 00 0C */ bne lbl_803BBE80
|
||||
/* 803BBE78 003B8DD8 3B C0 FF FD */ li r30, -3
|
||||
/* 803BBE7C 003B8DDC 48 00 02 A0 */ b lbl_803BC11C
|
||||
lbl_803BBE80:
|
||||
/* 803BBE80 003B8DE0 88 01 00 14 */ lbz r0, 0x14(r1)
|
||||
/* 803BBE84 003B8DE4 54 00 06 73 */ rlwinm. r0, r0, 0, 0x19, 0x19
|
||||
/* 803BBE88 003B8DE8 40 82 01 14 */ bne lbl_803BBF9C
|
||||
/* 803BBE8C 003B8DEC 38 7D 00 00 */ addi r3, r29, 0
|
||||
/* 803BBE90 003B8DF0 38 9F 00 18 */ addi r4, r31, 0x18
|
||||
/* 803BBE94 003B8DF4 4B FF D5 6D */ bl __CARDUnlock
|
||||
/* 803BBE98 003B8DF8 7C 7E 1B 79 */ or. r30, r3, r3
|
||||
/* 803BBE9C 003B8DFC 41 80 02 80 */ blt lbl_803BC11C
|
||||
/* 803BBEA0 003B8E00 4B FC 7C 91 */ bl __OSLockSramEx
|
||||
/* 803BBEA4 003B8E04 1C 1D 00 0C */ mulli r0, r29, 0xc
|
||||
/* 803BBEA8 003B8E08 7C 83 02 14 */ add r4, r3, r0
|
||||
/* 803BBEAC 003B8E0C 88 1F 00 18 */ lbz r0, 0x18(r31)
|
||||
/* 803BBEB0 003B8E10 38 BF 00 18 */ addi r5, r31, 0x18
|
||||
/* 803BBEB4 003B8E14 98 04 00 00 */ stb r0, 0(r4)
|
||||
/* 803BBEB8 003B8E18 39 05 00 02 */ addi r8, r5, 2
|
||||
/* 803BBEBC 003B8E1C 39 25 00 03 */ addi r9, r5, 3
|
||||
/* 803BBEC0 003B8E20 88 FF 00 18 */ lbz r7, 0x18(r31)
|
||||
/* 803BBEC4 003B8E24 39 45 00 04 */ addi r10, r5, 4
|
||||
/* 803BBEC8 003B8E28 88 1F 00 19 */ lbz r0, 0x19(r31)
|
||||
/* 803BBECC 003B8E2C 39 65 00 05 */ addi r11, r5, 5
|
||||
/* 803BBED0 003B8E30 39 85 00 06 */ addi r12, r5, 6
|
||||
/* 803BBED4 003B8E34 98 04 00 01 */ stb r0, 1(r4)
|
||||
/* 803BBED8 003B8E38 3B 85 00 07 */ addi r28, r5, 7
|
||||
/* 803BBEDC 003B8E3C 38 A0 00 08 */ li r5, 8
|
||||
/* 803BBEE0 003B8E40 88 1F 00 19 */ lbz r0, 0x19(r31)
|
||||
/* 803BBEE4 003B8E44 88 C8 00 00 */ lbz r6, 0(r8)
|
||||
/* 803BBEE8 003B8E48 7C 07 02 14 */ add r0, r7, r0
|
||||
/* 803BBEEC 003B8E4C 98 C4 00 02 */ stb r6, 2(r4)
|
||||
/* 803BBEF0 003B8E50 88 E8 00 00 */ lbz r7, 0(r8)
|
||||
/* 803BBEF4 003B8E54 88 C9 00 00 */ lbz r6, 0(r9)
|
||||
/* 803BBEF8 003B8E58 7C 00 3A 14 */ add r0, r0, r7
|
||||
/* 803BBEFC 003B8E5C 98 C4 00 03 */ stb r6, 3(r4)
|
||||
/* 803BBF00 003B8E60 88 E9 00 00 */ lbz r7, 0(r9)
|
||||
/* 803BBF04 003B8E64 88 CA 00 00 */ lbz r6, 0(r10)
|
||||
/* 803BBF08 003B8E68 7C 00 3A 14 */ add r0, r0, r7
|
||||
/* 803BBF0C 003B8E6C 98 C4 00 04 */ stb r6, 4(r4)
|
||||
/* 803BBF10 003B8E70 88 EA 00 00 */ lbz r7, 0(r10)
|
||||
/* 803BBF14 003B8E74 88 CB 00 00 */ lbz r6, 0(r11)
|
||||
/* 803BBF18 003B8E78 7C 00 3A 14 */ add r0, r0, r7
|
||||
/* 803BBF1C 003B8E7C 98 C4 00 05 */ stb r6, 5(r4)
|
||||
/* 803BBF20 003B8E80 88 EB 00 00 */ lbz r7, 0(r11)
|
||||
/* 803BBF24 003B8E84 88 CC 00 00 */ lbz r6, 0(r12)
|
||||
/* 803BBF28 003B8E88 7C 00 3A 14 */ add r0, r0, r7
|
||||
/* 803BBF2C 003B8E8C 98 C4 00 06 */ stb r6, 6(r4)
|
||||
/* 803BBF30 003B8E90 88 EC 00 00 */ lbz r7, 0(r12)
|
||||
/* 803BBF34 003B8E94 88 DC 00 00 */ lbz r6, 0(r28)
|
||||
/* 803BBF38 003B8E98 7C 00 3A 14 */ add r0, r0, r7
|
||||
/* 803BBF3C 003B8E9C 98 C4 00 07 */ stb r6, 7(r4)
|
||||
/* 803BBF40 003B8EA0 88 DC 00 00 */ lbz r6, 0(r28)
|
||||
/* 803BBF44 003B8EA4 7C 00 32 14 */ add r0, r0, r6
|
||||
/* 803BBF48 003B8EA8 48 00 01 F0 */ b lbl_803BC138
|
||||
lbl_803BBF4C:
|
||||
/* 803BBF4C 003B8EAC 20 85 00 0C */ subfic r4, r5, 0xc
|
||||
/* 803BBF50 003B8EB0 2C 05 00 0C */ cmpwi r5, 0xc
|
||||
/* 803BBF54 003B8EB4 7C 89 03 A6 */ mtctr r4
|
||||
/* 803BBF58 003B8EB8 40 80 00 28 */ bge lbl_803BBF80
|
||||
lbl_803BBF5C:
|
||||
/* 803BBF5C 003B8EBC 38 E5 00 18 */ addi r7, r5, 0x18
|
||||
/* 803BBF60 003B8EC0 7C FF 3A 14 */ add r7, r31, r7
|
||||
/* 803BBF64 003B8EC4 88 87 00 00 */ lbz r4, 0(r7)
|
||||
/* 803BBF68 003B8EC8 38 A5 00 01 */ addi r5, r5, 1
|
||||
/* 803BBF6C 003B8ECC 98 86 00 00 */ stb r4, 0(r6)
|
||||
/* 803BBF70 003B8ED0 38 C6 00 01 */ addi r6, r6, 1
|
||||
/* 803BBF74 003B8ED4 88 87 00 00 */ lbz r4, 0(r7)
|
||||
/* 803BBF78 003B8ED8 7C 00 22 14 */ add r0, r0, r4
|
||||
/* 803BBF7C 003B8EDC 42 00 FF E0 */ bdnz lbl_803BBF5C
|
||||
lbl_803BBF80:
|
||||
/* 803BBF80 003B8EE0 7C 63 EA 14 */ add r3, r3, r29
|
||||
/* 803BBF84 003B8EE4 7C 00 00 F8 */ nor r0, r0, r0
|
||||
/* 803BBF88 003B8EE8 98 03 00 26 */ stb r0, 0x26(r3)
|
||||
/* 803BBF8C 003B8EEC 38 60 00 01 */ li r3, 1
|
||||
/* 803BBF90 003B8EF0 4B FC 7F 29 */ bl __OSUnlockSramEx
|
||||
/* 803BBF94 003B8EF4 7F C3 F3 78 */ mr r3, r30
|
||||
/* 803BBF98 003B8EF8 48 00 01 B0 */ b lbl_803BC148
|
||||
lbl_803BBF9C:
|
||||
/* 803BBF9C 003B8EFC 38 00 00 01 */ li r0, 1
|
||||
/* 803BBFA0 003B8F00 90 1F 00 24 */ stw r0, 0x24(r31)
|
||||
/* 803BBFA4 003B8F04 4B FC 7B 8D */ bl __OSLockSramEx
|
||||
/* 803BBFA8 003B8F08 1C 1D 00 0C */ mulli r0, r29, 0xc
|
||||
/* 803BBFAC 003B8F0C 3B C3 00 00 */ addi r30, r3, 0
|
||||
/* 803BBFB0 003B8F10 7C BE 02 14 */ add r5, r30, r0
|
||||
/* 803BBFB4 003B8F14 88 85 00 00 */ lbz r4, 0(r5)
|
||||
/* 803BBFB8 003B8F18 38 C0 00 08 */ li r6, 8
|
||||
/* 803BBFBC 003B8F1C 88 05 00 01 */ lbz r0, 1(r5)
|
||||
/* 803BBFC0 003B8F20 88 65 00 02 */ lbz r3, 2(r5)
|
||||
/* 803BBFC4 003B8F24 7F 84 02 14 */ add r28, r4, r0
|
||||
/* 803BBFC8 003B8F28 88 05 00 03 */ lbz r0, 3(r5)
|
||||
/* 803BBFCC 003B8F2C 7F 9C 1A 14 */ add r28, r28, r3
|
||||
/* 803BBFD0 003B8F30 88 65 00 04 */ lbz r3, 4(r5)
|
||||
/* 803BBFD4 003B8F34 7F 9C 02 14 */ add r28, r28, r0
|
||||
/* 803BBFD8 003B8F38 88 05 00 05 */ lbz r0, 5(r5)
|
||||
/* 803BBFDC 003B8F3C 7F 9C 1A 14 */ add r28, r28, r3
|
||||
/* 803BBFE0 003B8F40 88 65 00 06 */ lbz r3, 6(r5)
|
||||
/* 803BBFE4 003B8F44 7F 9C 02 14 */ add r28, r28, r0
|
||||
/* 803BBFE8 003B8F48 88 05 00 07 */ lbz r0, 7(r5)
|
||||
/* 803BBFEC 003B8F4C 7F 9C 1A 14 */ add r28, r28, r3
|
||||
/* 803BBFF0 003B8F50 7F 9C 02 14 */ add r28, r28, r0
|
||||
/* 803BBFF4 003B8F54 48 00 01 4C */ b lbl_803BC140
|
||||
lbl_803BBFF8:
|
||||
/* 803BBFF8 003B8F58 20 06 00 0C */ subfic r0, r6, 0xc
|
||||
/* 803BBFFC 003B8F5C 2C 06 00 0C */ cmpwi r6, 0xc
|
||||
/* 803BC000 003B8F60 7C 09 03 A6 */ mtctr r0
|
||||
/* 803BC004 003B8F64 40 80 00 14 */ bge lbl_803BC018
|
||||
lbl_803BC008:
|
||||
/* 803BC008 003B8F68 88 03 00 00 */ lbz r0, 0(r3)
|
||||
/* 803BC00C 003B8F6C 38 63 00 01 */ addi r3, r3, 1
|
||||
/* 803BC010 003B8F70 7F 9C 02 14 */ add r28, r28, r0
|
||||
/* 803BC014 003B8F74 42 00 FF F4 */ bdnz lbl_803BC008
|
||||
lbl_803BC018:
|
||||
/* 803BC018 003B8F78 38 60 00 00 */ li r3, 0
|
||||
/* 803BC01C 003B8F7C 4B FC 7E 9D */ bl __OSUnlockSramEx
|
||||
/* 803BC020 003B8F80 7C 7E EA 14 */ add r3, r30, r29
|
||||
/* 803BC024 003B8F84 7F 80 E0 F8 */ nor r0, r28, r28
|
||||
/* 803BC028 003B8F88 88 63 00 26 */ lbz r3, 0x26(r3)
|
||||
/* 803BC02C 003B8F8C 54 00 06 3E */ clrlwi r0, r0, 0x18
|
||||
/* 803BC030 003B8F90 7C 03 00 40 */ cmplw r3, r0
|
||||
/* 803BC034 003B8F94 41 82 00 0C */ beq lbl_803BC040
|
||||
/* 803BC038 003B8F98 3B C0 FF FB */ li r30, -5
|
||||
/* 803BC03C 003B8F9C 48 00 00 E0 */ b lbl_803BC11C
|
||||
lbl_803BC040:
|
||||
/* 803BC040 003B8FA0 80 1F 00 24 */ lwz r0, 0x24(r31)
|
||||
/* 803BC044 003B8FA4 2C 00 00 01 */ cmpwi r0, 1
|
||||
/* 803BC048 003B8FA8 40 82 00 88 */ bne lbl_803BC0D0
|
||||
/* 803BC04C 003B8FAC 80 7F 01 08 */ lwz r3, 0x108(r31)
|
||||
/* 803BC050 003B8FB0 3C 03 80 00 */ addis r0, r3, 0x8000
|
||||
/* 803BC054 003B8FB4 28 00 00 04 */ cmplwi r0, 4
|
||||
/* 803BC058 003B8FB8 40 82 00 34 */ bne lbl_803BC08C
|
||||
/* 803BC05C 003B8FBC 4B FC 7A D5 */ bl __OSLockSramEx
|
||||
/* 803BC060 003B8FC0 1C 1D 00 0C */ mulli r0, r29, 0xc
|
||||
/* 803BC064 003B8FC4 7F 83 02 2E */ lhzx r28, r3, r0
|
||||
/* 803BC068 003B8FC8 38 60 00 00 */ li r3, 0
|
||||
/* 803BC06C 003B8FCC 4B FC 7E 4D */ bl __OSUnlockSramEx
|
||||
/* 803BC070 003B8FD0 A0 0D A0 40 */ lhz r0, lbl_805A8C00@sda21(r13)
|
||||
/* 803BC074 003B8FD4 28 00 FF FF */ cmplwi r0, 0xffff
|
||||
/* 803BC078 003B8FD8 41 82 00 0C */ beq lbl_803BC084
|
||||
/* 803BC07C 003B8FDC 7C 1C 00 40 */ cmplw r28, r0
|
||||
/* 803BC080 003B8FE0 41 82 00 0C */ beq lbl_803BC08C
|
||||
lbl_803BC084:
|
||||
/* 803BC084 003B8FE4 3B C0 FF FE */ li r30, -2
|
||||
/* 803BC088 003B8FE8 48 00 00 94 */ b lbl_803BC11C
|
||||
lbl_803BC08C:
|
||||
/* 803BC08C 003B8FEC 38 00 00 02 */ li r0, 2
|
||||
/* 803BC090 003B8FF0 90 1F 00 24 */ stw r0, 0x24(r31)
|
||||
/* 803BC094 003B8FF4 38 7D 00 00 */ addi r3, r29, 0
|
||||
/* 803BC098 003B8FF8 38 80 00 01 */ li r4, 1
|
||||
/* 803BC09C 003B8FFC 4B FF C0 F9 */ bl __CARDEnableInterrupt
|
||||
/* 803BC0A0 003B9000 7C 7E 1B 79 */ or. r30, r3, r3
|
||||
/* 803BC0A4 003B9004 41 80 00 78 */ blt lbl_803BC11C
|
||||
/* 803BC0A8 003B9008 3C 60 80 3B */ lis r3, __CARDExiHandler@ha
|
||||
/* 803BC0AC 003B900C 38 83 7F 50 */ addi r4, r3, __CARDExiHandler@l
|
||||
/* 803BC0B0 003B9010 38 7D 00 00 */ addi r3, r29, 0
|
||||
/* 803BC0B4 003B9014 48 00 46 BD */ bl EXISetExiCallback
|
||||
/* 803BC0B8 003B9018 7F A3 EB 78 */ mr r3, r29
|
||||
/* 803BC0BC 003B901C 48 00 53 9D */ bl EXIUnlock
|
||||
/* 803BC0C0 003B9020 3C 80 00 01 */ lis r4, 0x0000A000@ha
|
||||
/* 803BC0C4 003B9024 80 7F 00 80 */ lwz r3, 0x80(r31)
|
||||
/* 803BC0C8 003B9028 38 84 A0 00 */ addi r4, r4, 0x0000A000@l
|
||||
/* 803BC0CC 003B902C 4B FC 29 B9 */ bl DCInvalidateRange
|
||||
lbl_803BC0D0:
|
||||
/* 803BC0D0 003B9030 80 9F 00 24 */ lwz r4, 0x24(r31)
|
||||
/* 803BC0D4 003B9034 3C 60 80 3C */ lis r3, __CARDMountCallback@ha
|
||||
/* 803BC0D8 003B9038 80 1F 00 0C */ lwz r0, 0xc(r31)
|
||||
/* 803BC0DC 003B903C 38 E3 C1 68 */ addi r7, r3, __CARDMountCallback@l
|
||||
/* 803BC0E0 003B9040 38 64 FF FE */ addi r3, r4, -2
|
||||
/* 803BC0E4 003B9044 7C 80 19 D6 */ mullw r4, r0, r3
|
||||
/* 803BC0E8 003B9048 80 BF 00 80 */ lwz r5, 0x80(r31)
|
||||
/* 803BC0EC 003B904C 54 60 68 24 */ slwi r0, r3, 0xd
|
||||
/* 803BC0F0 003B9050 7C C5 02 14 */ add r6, r5, r0
|
||||
/* 803BC0F4 003B9054 38 7D 00 00 */ addi r3, r29, 0
|
||||
/* 803BC0F8 003B9058 38 A0 20 00 */ li r5, 0x2000
|
||||
/* 803BC0FC 003B905C 4B FF E2 CD */ bl __CARDRead
|
||||
/* 803BC100 003B9060 7C 7C 1B 79 */ or. r28, r3, r3
|
||||
/* 803BC104 003B9064 40 80 00 10 */ bge lbl_803BC114
|
||||
/* 803BC108 003B9068 38 7F 00 00 */ addi r3, r31, 0
|
||||
/* 803BC10C 003B906C 38 9C 00 00 */ addi r4, r28, 0
|
||||
/* 803BC110 003B9070 4B FF CD 49 */ bl __CARDPutControlBlock
|
||||
lbl_803BC114:
|
||||
/* 803BC114 003B9074 7F 83 E3 78 */ mr r3, r28
|
||||
/* 803BC118 003B9078 48 00 00 30 */ b lbl_803BC148
|
||||
lbl_803BC11C:
|
||||
/* 803BC11C 003B907C 7F A3 EB 78 */ mr r3, r29
|
||||
/* 803BC120 003B9080 48 00 53 39 */ bl EXIUnlock
|
||||
/* 803BC124 003B9084 38 7D 00 00 */ addi r3, r29, 0
|
||||
/* 803BC128 003B9088 38 9E 00 00 */ addi r4, r30, 0
|
||||
/* 803BC12C 003B908C 48 00 03 15 */ bl DoUnmount
|
||||
/* 803BC130 003B9090 7F C3 F3 78 */ mr r3, r30
|
||||
/* 803BC134 003B9094 48 00 00 14 */ b lbl_803BC148
|
||||
lbl_803BC138:
|
||||
/* 803BC138 003B9098 38 C4 00 08 */ addi r6, r4, 8
|
||||
/* 803BC13C 003B909C 4B FF FE 10 */ b lbl_803BBF4C
|
||||
lbl_803BC140:
|
||||
/* 803BC140 003B90A0 38 65 00 08 */ addi r3, r5, 8
|
||||
/* 803BC144 003B90A4 4B FF FE B4 */ b lbl_803BBFF8
|
||||
lbl_803BC148:
|
||||
/* 803BC148 003B90A8 80 01 00 34 */ lwz r0, 0x34(r1)
|
||||
/* 803BC14C 003B90AC 83 E1 00 2C */ lwz r31, 0x2c(r1)
|
||||
/* 803BC150 003B90B0 83 C1 00 28 */ lwz r30, 0x28(r1)
|
||||
/* 803BC154 003B90B4 83 A1 00 24 */ lwz r29, 0x24(r1)
|
||||
/* 803BC158 003B90B8 83 81 00 20 */ lwz r28, 0x20(r1)
|
||||
/* 803BC15C 003B90BC 38 21 00 30 */ addi r1, r1, 0x30
|
||||
/* 803BC160 003B90C0 7C 08 03 A6 */ mtlr r0
|
||||
/* 803BC164 003B90C4 4E 80 00 20 */ blr
|
||||
|
||||
.global __CARDMountCallback
|
||||
__CARDMountCallback:
|
||||
/* 803BC168 003B90C8 7C 08 02 A6 */ mflr r0
|
||||
/* 803BC16C 003B90CC 90 01 00 04 */ stw r0, 4(r1)
|
||||
/* 803BC170 003B90D0 94 21 FF E0 */ stwu r1, -0x20(r1)
|
||||
/* 803BC174 003B90D4 93 E1 00 1C */ stw r31, 0x1c(r1)
|
||||
/* 803BC178 003B90D8 93 C1 00 18 */ stw r30, 0x18(r1)
|
||||
/* 803BC17C 003B90DC 93 A1 00 14 */ stw r29, 0x14(r1)
|
||||
/* 803BC180 003B90E0 3B A4 00 00 */ addi r29, r4, 0
|
||||
/* 803BC184 003B90E4 2C 1D FF FD */ cmpwi r29, -3
|
||||
/* 803BC188 003B90E8 93 81 00 10 */ stw r28, 0x10(r1)
|
||||
/* 803BC18C 003B90EC 3B 83 00 00 */ addi r28, r3, 0
|
||||
/* 803BC190 003B90F0 1C BC 01 10 */ mulli r5, r28, 0x110
|
||||
/* 803BC194 003B90F4 3C 60 80 57 */ lis r3, lbl_80569A58@ha
|
||||
/* 803BC198 003B90F8 38 03 9A 58 */ addi r0, r3, lbl_80569A58@l
|
||||
/* 803BC19C 003B90FC 7F E0 2A 14 */ add r31, r0, r5
|
||||
/* 803BC1A0 003B9100 41 82 00 A8 */ beq lbl_803BC248
|
||||
/* 803BC1A4 003B9104 40 80 00 10 */ bge lbl_803BC1B4
|
||||
/* 803BC1A8 003B9108 2C 1D FF FB */ cmpwi r29, -5
|
||||
/* 803BC1AC 003B910C 41 82 00 9C */ beq lbl_803BC248
|
||||
/* 803BC1B0 003B9110 48 00 00 A4 */ b lbl_803BC254
|
||||
lbl_803BC1B4:
|
||||
/* 803BC1B4 003B9114 2C 1D 00 01 */ cmpwi r29, 1
|
||||
/* 803BC1B8 003B9118 41 82 00 4C */ beq lbl_803BC204
|
||||
/* 803BC1BC 003B911C 40 80 00 98 */ bge lbl_803BC254
|
||||
/* 803BC1C0 003B9120 2C 1D 00 00 */ cmpwi r29, 0
|
||||
/* 803BC1C4 003B9124 40 80 00 08 */ bge lbl_803BC1CC
|
||||
/* 803BC1C8 003B9128 48 00 00 8C */ b lbl_803BC254
|
||||
lbl_803BC1CC:
|
||||
/* 803BC1CC 003B912C 80 7F 00 24 */ lwz r3, 0x24(r31)
|
||||
/* 803BC1D0 003B9130 38 03 00 01 */ addi r0, r3, 1
|
||||
/* 803BC1D4 003B9134 2C 00 00 07 */ cmpwi r0, 7
|
||||
/* 803BC1D8 003B9138 90 1F 00 24 */ stw r0, 0x24(r31)
|
||||
/* 803BC1DC 003B913C 40 80 00 18 */ bge lbl_803BC1F4
|
||||
/* 803BC1E0 003B9140 7F 83 E3 78 */ mr r3, r28
|
||||
/* 803BC1E4 003B9144 4B FF FB 75 */ bl DoMount
|
||||
/* 803BC1E8 003B9148 7C 7D 1B 79 */ or. r29, r3, r3
|
||||
/* 803BC1EC 003B914C 41 80 00 68 */ blt lbl_803BC254
|
||||
/* 803BC1F0 003B9150 48 00 00 90 */ b lbl_803BC280
|
||||
lbl_803BC1F4:
|
||||
/* 803BC1F4 003B9154 7F E3 FB 78 */ mr r3, r31
|
||||
/* 803BC1F8 003B9158 4B FF F2 D5 */ bl __CARDVerify
|
||||
/* 803BC1FC 003B915C 7C 7D 1B 78 */ mr r29, r3
|
||||
/* 803BC200 003B9160 48 00 00 54 */ b lbl_803BC254
|
||||
lbl_803BC204:
|
||||
/* 803BC204 003B9164 3C 60 80 3C */ lis r3, __CARDMountCallback@ha
|
||||
/* 803BC208 003B9168 38 03 C1 68 */ addi r0, r3, __CARDMountCallback@l
|
||||
/* 803BC20C 003B916C 3C 60 80 3C */ lis r3, __CARDUnlockedHandler@ha
|
||||
/* 803BC210 003B9170 90 1F 00 DC */ stw r0, 0xdc(r31)
|
||||
/* 803BC214 003B9174 38 A3 81 10 */ addi r5, r3, __CARDUnlockedHandler@l
|
||||
/* 803BC218 003B9178 38 7C 00 00 */ addi r3, r28, 0
|
||||
/* 803BC21C 003B917C 38 80 00 00 */ li r4, 0
|
||||
/* 803BC220 003B9180 48 00 51 45 */ bl EXILock
|
||||
/* 803BC224 003B9184 2C 03 00 00 */ cmpwi r3, 0
|
||||
/* 803BC228 003B9188 41 82 00 58 */ beq lbl_803BC280
|
||||
/* 803BC22C 003B918C 38 00 00 00 */ li r0, 0
|
||||
/* 803BC230 003B9190 90 1F 00 DC */ stw r0, 0xdc(r31)
|
||||
/* 803BC234 003B9194 7F 83 E3 78 */ mr r3, r28
|
||||
/* 803BC238 003B9198 4B FF FB 21 */ bl DoMount
|
||||
/* 803BC23C 003B919C 7C 7D 1B 79 */ or. r29, r3, r3
|
||||
/* 803BC240 003B91A0 41 80 00 14 */ blt lbl_803BC254
|
||||
/* 803BC244 003B91A4 48 00 00 3C */ b lbl_803BC280
|
||||
lbl_803BC248:
|
||||
/* 803BC248 003B91A8 38 7C 00 00 */ addi r3, r28, 0
|
||||
/* 803BC24C 003B91AC 38 9D 00 00 */ addi r4, r29, 0
|
||||
/* 803BC250 003B91B0 48 00 01 F1 */ bl DoUnmount
|
||||
lbl_803BC254:
|
||||
/* 803BC254 003B91B4 83 DF 00 D0 */ lwz r30, 0xd0(r31)
|
||||
/* 803BC258 003B91B8 38 00 00 00 */ li r0, 0
|
||||
/* 803BC25C 003B91BC 38 7F 00 00 */ addi r3, r31, 0
|
||||
/* 803BC260 003B91C0 90 1F 00 D0 */ stw r0, 0xd0(r31)
|
||||
/* 803BC264 003B91C4 7F A4 EB 78 */ mr r4, r29
|
||||
/* 803BC268 003B91C8 4B FF CB F1 */ bl __CARDPutControlBlock
|
||||
/* 803BC26C 003B91CC 39 9E 00 00 */ addi r12, r30, 0
|
||||
/* 803BC270 003B91D0 7D 88 03 A6 */ mtlr r12
|
||||
/* 803BC274 003B91D4 38 7C 00 00 */ addi r3, r28, 0
|
||||
/* 803BC278 003B91D8 38 9D 00 00 */ addi r4, r29, 0
|
||||
/* 803BC27C 003B91DC 4E 80 00 21 */ blrl
|
||||
lbl_803BC280:
|
||||
/* 803BC280 003B91E0 80 01 00 24 */ lwz r0, 0x24(r1)
|
||||
/* 803BC284 003B91E4 83 E1 00 1C */ lwz r31, 0x1c(r1)
|
||||
/* 803BC288 003B91E8 83 C1 00 18 */ lwz r30, 0x18(r1)
|
||||
/* 803BC28C 003B91EC 83 A1 00 14 */ lwz r29, 0x14(r1)
|
||||
/* 803BC290 003B91F0 83 81 00 10 */ lwz r28, 0x10(r1)
|
||||
/* 803BC294 003B91F4 38 21 00 20 */ addi r1, r1, 0x20
|
||||
/* 803BC298 003B91F8 7C 08 03 A6 */ mtlr r0
|
||||
/* 803BC29C 003B91FC 4E 80 00 20 */ blr
|
||||
|
||||
.global CARDMountAsync
|
||||
CARDMountAsync:
|
||||
/* 803BC2A0 003B9200 7C 08 02 A6 */ mflr r0
|
||||
/* 803BC2A4 003B9204 90 01 00 04 */ stw r0, 4(r1)
|
||||
/* 803BC2A8 003B9208 94 21 FF D0 */ stwu r1, -0x30(r1)
|
||||
/* 803BC2AC 003B920C BF 41 00 18 */ stmw r26, 0x18(r1)
|
||||
/* 803BC2B0 003B9210 7C 7E 1B 79 */ or. r30, r3, r3
|
||||
/* 803BC2B4 003B9214 3B 44 00 00 */ addi r26, r4, 0
|
||||
/* 803BC2B8 003B9218 3B 65 00 00 */ addi r27, r5, 0
|
||||
/* 803BC2BC 003B921C 3B A6 00 00 */ addi r29, r6, 0
|
||||
/* 803BC2C0 003B9220 41 80 00 0C */ blt lbl_803BC2CC
|
||||
/* 803BC2C4 003B9224 2C 1E 00 02 */ cmpwi r30, 2
|
||||
/* 803BC2C8 003B9228 41 80 00 0C */ blt lbl_803BC2D4
|
||||
lbl_803BC2CC:
|
||||
/* 803BC2CC 003B922C 38 60 FF 80 */ li r3, -128
|
||||
/* 803BC2D0 003B9230 48 00 01 5C */ b lbl_803BC42C
|
||||
lbl_803BC2D4:
|
||||
/* 803BC2D4 003B9234 3C 60 80 00 */ lis r3, 0x800030E3@ha
|
||||
/* 803BC2D8 003B9238 88 03 30 E3 */ lbz r0, 0x800030E3@l(r3)
|
||||
/* 803BC2DC 003B923C 54 00 06 31 */ rlwinm. r0, r0, 0, 0x18, 0x18
|
||||
/* 803BC2E0 003B9240 41 82 00 0C */ beq lbl_803BC2EC
|
||||
/* 803BC2E4 003B9244 38 60 FF FD */ li r3, -3
|
||||
/* 803BC2E8 003B9248 48 00 01 44 */ b lbl_803BC42C
|
||||
lbl_803BC2EC:
|
||||
/* 803BC2EC 003B924C 1C 9E 01 10 */ mulli r4, r30, 0x110
|
||||
/* 803BC2F0 003B9250 3C 60 80 57 */ lis r3, lbl_80569A58@ha
|
||||
/* 803BC2F4 003B9254 38 03 9A 58 */ addi r0, r3, lbl_80569A58@l
|
||||
/* 803BC2F8 003B9258 7F E0 22 14 */ add r31, r0, r4
|
||||
/* 803BC2FC 003B925C 4B FC 53 65 */ bl OSDisableInterrupts
|
||||
/* 803BC300 003B9260 80 1F 00 04 */ lwz r0, 4(r31)
|
||||
/* 803BC304 003B9264 3B 83 00 00 */ addi r28, r3, 0
|
||||
/* 803BC308 003B9268 2C 00 FF FF */ cmpwi r0, -1
|
||||
/* 803BC30C 003B926C 40 82 00 14 */ bne lbl_803BC320
|
||||
/* 803BC310 003B9270 7F 83 E3 78 */ mr r3, r28
|
||||
/* 803BC314 003B9274 4B FC 53 75 */ bl OSRestoreInterrupts
|
||||
/* 803BC318 003B9278 38 60 FF FF */ li r3, -1
|
||||
/* 803BC31C 003B927C 48 00 01 10 */ b lbl_803BC42C
|
||||
lbl_803BC320:
|
||||
/* 803BC320 003B9280 80 1F 00 00 */ lwz r0, 0(r31)
|
||||
/* 803BC324 003B9284 2C 00 00 00 */ cmpwi r0, 0
|
||||
/* 803BC328 003B9288 40 82 00 24 */ bne lbl_803BC34C
|
||||
/* 803BC32C 003B928C 7F C3 F3 78 */ mr r3, r30
|
||||
/* 803BC330 003B9290 48 00 52 05 */ bl EXIGetState
|
||||
/* 803BC334 003B9294 54 60 07 39 */ rlwinm. r0, r3, 0, 0x1c, 0x1c
|
||||
/* 803BC338 003B9298 41 82 00 14 */ beq lbl_803BC34C
|
||||
/* 803BC33C 003B929C 7F 83 E3 78 */ mr r3, r28
|
||||
/* 803BC340 003B92A0 4B FC 53 49 */ bl OSRestoreInterrupts
|
||||
/* 803BC344 003B92A4 38 60 FF FE */ li r3, -2
|
||||
/* 803BC348 003B92A8 48 00 00 E4 */ b lbl_803BC42C
|
||||
lbl_803BC34C:
|
||||
/* 803BC34C 003B92AC 38 00 FF FF */ li r0, -1
|
||||
/* 803BC350 003B92B0 90 1F 00 04 */ stw r0, 4(r31)
|
||||
/* 803BC354 003B92B4 28 1D 00 00 */ cmplwi r29, 0
|
||||
/* 803BC358 003B92B8 93 5F 00 80 */ stw r26, 0x80(r31)
|
||||
/* 803BC35C 003B92BC 93 7F 00 C4 */ stw r27, 0xc4(r31)
|
||||
/* 803BC360 003B92C0 41 82 00 0C */ beq lbl_803BC36C
|
||||
/* 803BC364 003B92C4 7F A0 EB 78 */ mr r0, r29
|
||||
/* 803BC368 003B92C8 48 00 00 0C */ b lbl_803BC374
|
||||
lbl_803BC36C:
|
||||
/* 803BC36C 003B92CC 3C 60 80 3B */ lis r3, __CARDDefaultApiCallback@ha
|
||||
/* 803BC370 003B92D0 38 03 7E 74 */ addi r0, r3, __CARDDefaultApiCallback@l
|
||||
lbl_803BC374:
|
||||
/* 803BC374 003B92D4 90 1F 00 D0 */ stw r0, 0xd0(r31)
|
||||
/* 803BC378 003B92D8 38 00 00 00 */ li r0, 0
|
||||
/* 803BC37C 003B92DC 90 1F 00 CC */ stw r0, 0xcc(r31)
|
||||
/* 803BC380 003B92E0 80 1F 00 00 */ lwz r0, 0(r31)
|
||||
/* 803BC384 003B92E4 2C 00 00 00 */ cmpwi r0, 0
|
||||
/* 803BC388 003B92E8 40 82 00 34 */ bne lbl_803BC3BC
|
||||
/* 803BC38C 003B92EC 3C 60 80 3B */ lis r3, __CARDExtHandler@ha
|
||||
/* 803BC390 003B92F0 38 83 7E 78 */ addi r4, r3, __CARDExtHandler@l
|
||||
/* 803BC394 003B92F4 38 7E 00 00 */ addi r3, r30, 0
|
||||
/* 803BC398 003B92F8 48 00 46 FD */ bl EXIAttach
|
||||
/* 803BC39C 003B92FC 2C 03 00 00 */ cmpwi r3, 0
|
||||
/* 803BC3A0 003B9300 40 82 00 1C */ bne lbl_803BC3BC
|
||||
/* 803BC3A4 003B9304 38 00 FF FD */ li r0, -3
|
||||
/* 803BC3A8 003B9308 90 1F 00 04 */ stw r0, 4(r31)
|
||||
/* 803BC3AC 003B930C 7F 83 E3 78 */ mr r3, r28
|
||||
/* 803BC3B0 003B9310 4B FC 52 D9 */ bl OSRestoreInterrupts
|
||||
/* 803BC3B4 003B9314 38 60 FF FD */ li r3, -3
|
||||
/* 803BC3B8 003B9318 48 00 00 74 */ b lbl_803BC42C
|
||||
lbl_803BC3BC:
|
||||
/* 803BC3BC 003B931C 3B A0 00 00 */ li r29, 0
|
||||
/* 803BC3C0 003B9320 93 BF 00 24 */ stw r29, 0x24(r31)
|
||||
/* 803BC3C4 003B9324 38 00 00 01 */ li r0, 1
|
||||
/* 803BC3C8 003B9328 38 7E 00 00 */ addi r3, r30, 0
|
||||
/* 803BC3CC 003B932C 90 1F 00 00 */ stw r0, 0(r31)
|
||||
/* 803BC3D0 003B9330 38 80 00 00 */ li r4, 0
|
||||
/* 803BC3D4 003B9334 48 00 43 9D */ bl EXISetExiCallback
|
||||
/* 803BC3D8 003B9338 38 7F 00 E0 */ addi r3, r31, 0xe0
|
||||
/* 803BC3DC 003B933C 4B FC 20 19 */ bl OSCancelAlarm
|
||||
/* 803BC3E0 003B9340 93 BF 00 84 */ stw r29, 0x84(r31)
|
||||
/* 803BC3E4 003B9344 7F 83 E3 78 */ mr r3, r28
|
||||
/* 803BC3E8 003B9348 93 BF 00 88 */ stw r29, 0x88(r31)
|
||||
/* 803BC3EC 003B934C 4B FC 52 9D */ bl OSRestoreInterrupts
|
||||
/* 803BC3F0 003B9350 3C 60 80 3C */ lis r3, __CARDMountCallback@ha
|
||||
/* 803BC3F4 003B9354 38 03 C1 68 */ addi r0, r3, __CARDMountCallback@l
|
||||
/* 803BC3F8 003B9358 3C 60 80 3C */ lis r3, __CARDUnlockedHandler@ha
|
||||
/* 803BC3FC 003B935C 90 1F 00 DC */ stw r0, 0xdc(r31)
|
||||
/* 803BC400 003B9360 38 A3 81 10 */ addi r5, r3, __CARDUnlockedHandler@l
|
||||
/* 803BC404 003B9364 38 7E 00 00 */ addi r3, r30, 0
|
||||
/* 803BC408 003B9368 38 80 00 00 */ li r4, 0
|
||||
/* 803BC40C 003B936C 48 00 4F 59 */ bl EXILock
|
||||
/* 803BC410 003B9370 2C 03 00 00 */ cmpwi r3, 0
|
||||
/* 803BC414 003B9374 40 82 00 0C */ bne lbl_803BC420
|
||||
/* 803BC418 003B9378 38 60 00 00 */ li r3, 0
|
||||
/* 803BC41C 003B937C 48 00 00 10 */ b lbl_803BC42C
|
||||
lbl_803BC420:
|
||||
/* 803BC420 003B9380 93 BF 00 DC */ stw r29, 0xdc(r31)
|
||||
/* 803BC424 003B9384 7F C3 F3 78 */ mr r3, r30
|
||||
/* 803BC428 003B9388 4B FF F9 31 */ bl DoMount
|
||||
lbl_803BC42C:
|
||||
/* 803BC42C 003B938C BB 41 00 18 */ lmw r26, 0x18(r1)
|
||||
/* 803BC430 003B9390 80 01 00 34 */ lwz r0, 0x34(r1)
|
||||
/* 803BC434 003B9394 38 21 00 30 */ addi r1, r1, 0x30
|
||||
/* 803BC438 003B9398 7C 08 03 A6 */ mtlr r0
|
||||
/* 803BC43C 003B939C 4E 80 00 20 */ blr
|
||||
|
||||
.global DoUnmount
|
||||
DoUnmount:
|
||||
/* 803BC440 003B93A0 7C 08 02 A6 */ mflr r0
|
||||
/* 803BC444 003B93A4 90 01 00 04 */ stw r0, 4(r1)
|
||||
/* 803BC448 003B93A8 94 21 FF E0 */ stwu r1, -0x20(r1)
|
||||
/* 803BC44C 003B93AC 93 E1 00 1C */ stw r31, 0x1c(r1)
|
||||
/* 803BC450 003B93B0 93 C1 00 18 */ stw r30, 0x18(r1)
|
||||
/* 803BC454 003B93B4 93 A1 00 14 */ stw r29, 0x14(r1)
|
||||
/* 803BC458 003B93B8 3B A4 00 00 */ addi r29, r4, 0
|
||||
/* 803BC45C 003B93BC 93 81 00 10 */ stw r28, 0x10(r1)
|
||||
/* 803BC460 003B93C0 3B 83 00 00 */ addi r28, r3, 0
|
||||
/* 803BC464 003B93C4 1C BC 01 10 */ mulli r5, r28, 0x110
|
||||
/* 803BC468 003B93C8 3C 60 80 57 */ lis r3, lbl_80569A58@ha
|
||||
/* 803BC46C 003B93CC 38 03 9A 58 */ addi r0, r3, lbl_80569A58@l
|
||||
/* 803BC470 003B93D0 7F E0 2A 14 */ add r31, r0, r5
|
||||
/* 803BC474 003B93D4 4B FC 51 ED */ bl OSDisableInterrupts
|
||||
/* 803BC478 003B93D8 80 1F 00 00 */ lwz r0, 0(r31)
|
||||
/* 803BC47C 003B93DC 3B C3 00 00 */ addi r30, r3, 0
|
||||
/* 803BC480 003B93E0 2C 00 00 00 */ cmpwi r0, 0
|
||||
/* 803BC484 003B93E4 41 82 00 30 */ beq lbl_803BC4B4
|
||||
/* 803BC488 003B93E8 38 7C 00 00 */ addi r3, r28, 0
|
||||
/* 803BC48C 003B93EC 38 80 00 00 */ li r4, 0
|
||||
/* 803BC490 003B93F0 48 00 42 E1 */ bl EXISetExiCallback
|
||||
/* 803BC494 003B93F4 7F 83 E3 78 */ mr r3, r28
|
||||
/* 803BC498 003B93F8 48 00 47 09 */ bl EXIDetach
|
||||
/* 803BC49C 003B93FC 38 7F 00 E0 */ addi r3, r31, 0xe0
|
||||
/* 803BC4A0 003B9400 4B FC 1F 55 */ bl OSCancelAlarm
|
||||
/* 803BC4A4 003B9404 38 00 00 00 */ li r0, 0
|
||||
/* 803BC4A8 003B9408 90 1F 00 00 */ stw r0, 0(r31)
|
||||
/* 803BC4AC 003B940C 93 BF 00 04 */ stw r29, 4(r31)
|
||||
/* 803BC4B0 003B9410 90 1F 00 24 */ stw r0, 0x24(r31)
|
||||
lbl_803BC4B4:
|
||||
/* 803BC4B4 003B9414 7F C3 F3 78 */ mr r3, r30
|
||||
/* 803BC4B8 003B9418 4B FC 51 D1 */ bl OSRestoreInterrupts
|
||||
/* 803BC4BC 003B941C 80 01 00 24 */ lwz r0, 0x24(r1)
|
||||
/* 803BC4C0 003B9420 83 E1 00 1C */ lwz r31, 0x1c(r1)
|
||||
/* 803BC4C4 003B9424 83 C1 00 18 */ lwz r30, 0x18(r1)
|
||||
/* 803BC4C8 003B9428 83 A1 00 14 */ lwz r29, 0x14(r1)
|
||||
/* 803BC4CC 003B942C 83 81 00 10 */ lwz r28, 0x10(r1)
|
||||
/* 803BC4D0 003B9430 38 21 00 20 */ addi r1, r1, 0x20
|
||||
/* 803BC4D4 003B9434 7C 08 03 A6 */ mtlr r0
|
||||
/* 803BC4D8 003B9438 4E 80 00 20 */ blr
|
||||
|
||||
.global CARDUnmount
|
||||
CARDUnmount:
|
||||
/* 803BC4DC 003B943C 7C 08 02 A6 */ mflr r0
|
||||
/* 803BC4E0 003B9440 90 01 00 04 */ stw r0, 4(r1)
|
||||
/* 803BC4E4 003B9444 94 21 FF E0 */ stwu r1, -0x20(r1)
|
||||
/* 803BC4E8 003B9448 93 E1 00 1C */ stw r31, 0x1c(r1)
|
||||
/* 803BC4EC 003B944C 38 81 00 0C */ addi r4, r1, 0xc
|
||||
/* 803BC4F0 003B9450 93 C1 00 18 */ stw r30, 0x18(r1)
|
||||
/* 803BC4F4 003B9454 93 A1 00 14 */ stw r29, 0x14(r1)
|
||||
/* 803BC4F8 003B9458 3B A3 00 00 */ addi r29, r3, 0
|
||||
/* 803BC4FC 003B945C 4B FF C8 A5 */ bl __CARDGetControlBlock
|
||||
/* 803BC500 003B9460 2C 03 00 00 */ cmpwi r3, 0
|
||||
/* 803BC504 003B9464 40 80 00 08 */ bge lbl_803BC50C
|
||||
/* 803BC508 003B9468 48 00 00 64 */ b lbl_803BC56C
|
||||
lbl_803BC50C:
|
||||
/* 803BC50C 003B946C 1C 9D 01 10 */ mulli r4, r29, 0x110
|
||||
/* 803BC510 003B9470 3C 60 80 57 */ lis r3, lbl_80569A58@ha
|
||||
/* 803BC514 003B9474 38 03 9A 58 */ addi r0, r3, lbl_80569A58@l
|
||||
/* 803BC518 003B9478 7F C0 22 14 */ add r30, r0, r4
|
||||
/* 803BC51C 003B947C 4B FC 51 45 */ bl OSDisableInterrupts
|
||||
/* 803BC520 003B9480 80 1E 00 00 */ lwz r0, 0(r30)
|
||||
/* 803BC524 003B9484 3B E3 00 00 */ addi r31, r3, 0
|
||||
/* 803BC528 003B9488 2C 00 00 00 */ cmpwi r0, 0
|
||||
/* 803BC52C 003B948C 41 82 00 34 */ beq lbl_803BC560
|
||||
/* 803BC530 003B9490 38 7D 00 00 */ addi r3, r29, 0
|
||||
/* 803BC534 003B9494 38 80 00 00 */ li r4, 0
|
||||
/* 803BC538 003B9498 48 00 42 39 */ bl EXISetExiCallback
|
||||
/* 803BC53C 003B949C 7F A3 EB 78 */ mr r3, r29
|
||||
/* 803BC540 003B94A0 48 00 46 61 */ bl EXIDetach
|
||||
/* 803BC544 003B94A4 38 7E 00 E0 */ addi r3, r30, 0xe0
|
||||
/* 803BC548 003B94A8 4B FC 1E AD */ bl OSCancelAlarm
|
||||
/* 803BC54C 003B94AC 38 60 00 00 */ li r3, 0
|
||||
/* 803BC550 003B94B0 90 7E 00 00 */ stw r3, 0(r30)
|
||||
/* 803BC554 003B94B4 38 00 FF FD */ li r0, -3
|
||||
/* 803BC558 003B94B8 90 1E 00 04 */ stw r0, 4(r30)
|
||||
/* 803BC55C 003B94BC 90 7E 00 24 */ stw r3, 0x24(r30)
|
||||
lbl_803BC560:
|
||||
/* 803BC560 003B94C0 7F E3 FB 78 */ mr r3, r31
|
||||
/* 803BC564 003B94C4 4B FC 51 25 */ bl OSRestoreInterrupts
|
||||
/* 803BC568 003B94C8 38 60 00 00 */ li r3, 0
|
||||
lbl_803BC56C:
|
||||
/* 803BC56C 003B94CC 80 01 00 24 */ lwz r0, 0x24(r1)
|
||||
/* 803BC570 003B94D0 83 E1 00 1C */ lwz r31, 0x1c(r1)
|
||||
/* 803BC574 003B94D4 83 C1 00 18 */ lwz r30, 0x18(r1)
|
||||
/* 803BC578 003B94D8 83 A1 00 14 */ lwz r29, 0x14(r1)
|
||||
/* 803BC57C 003B94DC 38 21 00 20 */ addi r1, r1, 0x20
|
||||
/* 803BC580 003B94E0 7C 08 03 A6 */ mtlr r0
|
||||
/* 803BC584 003B94E4 4E 80 00 20 */ blr
|
|
@ -0,0 +1,59 @@
|
|||
.include "macros.inc"
|
||||
|
||||
.section .text, "ax"
|
||||
|
||||
.global CARDGetSerialNo
|
||||
CARDGetSerialNo:
|
||||
/* 803BE5E8 003BB548 7C 08 02 A6 */ mflr r0
|
||||
/* 803BE5EC 003BB54C 2C 03 00 00 */ cmpwi r3, 0
|
||||
/* 803BE5F0 003BB550 90 01 00 04 */ stw r0, 4(r1)
|
||||
/* 803BE5F4 003BB554 94 21 FF E0 */ stwu r1, -0x20(r1)
|
||||
/* 803BE5F8 003BB558 93 E1 00 1C */ stw r31, 0x1c(r1)
|
||||
/* 803BE5FC 003BB55C 3B E4 00 00 */ addi r31, r4, 0
|
||||
/* 803BE600 003BB560 41 80 00 0C */ blt lbl_803BE60C
|
||||
/* 803BE604 003BB564 2C 03 00 02 */ cmpwi r3, 2
|
||||
/* 803BE608 003BB568 41 80 00 0C */ blt lbl_803BE614
|
||||
lbl_803BE60C:
|
||||
/* 803BE60C 003BB56C 38 60 FF 80 */ li r3, -128
|
||||
/* 803BE610 003BB570 48 00 00 88 */ b lbl_803BE698
|
||||
lbl_803BE614:
|
||||
/* 803BE614 003BB574 38 81 00 10 */ addi r4, r1, 0x10
|
||||
/* 803BE618 003BB578 4B FF A7 89 */ bl __CARDGetControlBlock
|
||||
/* 803BE61C 003BB57C 2C 03 00 00 */ cmpwi r3, 0
|
||||
/* 803BE620 003BB580 40 80 00 08 */ bge lbl_803BE628
|
||||
/* 803BE624 003BB584 48 00 00 74 */ b lbl_803BE698
|
||||
lbl_803BE628:
|
||||
/* 803BE628 003BB588 80 61 00 10 */ lwz r3, 0x10(r1)
|
||||
/* 803BE62C 003BB58C 38 E0 00 00 */ li r7, 0
|
||||
/* 803BE630 003BB590 38 C0 00 00 */ li r6, 0
|
||||
/* 803BE634 003BB594 80 A3 00 80 */ lwz r5, 0x80(r3)
|
||||
/* 803BE638 003BB598 38 80 00 00 */ li r4, 0
|
||||
/* 803BE63C 003BB59C 80 65 00 04 */ lwz r3, 4(r5)
|
||||
/* 803BE640 003BB5A0 80 05 00 00 */ lwz r0, 0(r5)
|
||||
/* 803BE644 003BB5A4 7C E7 1A 78 */ xor r7, r7, r3
|
||||
/* 803BE648 003BB5A8 38 65 00 08 */ addi r3, r5, 8
|
||||
/* 803BE64C 003BB5AC 7C C6 02 78 */ xor r6, r6, r0
|
||||
/* 803BE650 003BB5B0 80 05 00 08 */ lwz r0, 8(r5)
|
||||
/* 803BE654 003BB5B4 80 63 00 04 */ lwz r3, 4(r3)
|
||||
/* 803BE658 003BB5B8 7C C6 02 78 */ xor r6, r6, r0
|
||||
/* 803BE65C 003BB5BC 7C E7 1A 78 */ xor r7, r7, r3
|
||||
/* 803BE660 003BB5C0 38 65 00 10 */ addi r3, r5, 0x10
|
||||
/* 803BE664 003BB5C4 80 05 00 10 */ lwz r0, 0x10(r5)
|
||||
/* 803BE668 003BB5C8 80 63 00 04 */ lwz r3, 4(r3)
|
||||
/* 803BE66C 003BB5CC 7C C6 02 78 */ xor r6, r6, r0
|
||||
/* 803BE670 003BB5D0 7C E7 1A 78 */ xor r7, r7, r3
|
||||
/* 803BE674 003BB5D4 38 65 00 18 */ addi r3, r5, 0x18
|
||||
/* 803BE678 003BB5D8 80 05 00 18 */ lwz r0, 0x18(r5)
|
||||
/* 803BE67C 003BB5DC 80 63 00 04 */ lwz r3, 4(r3)
|
||||
/* 803BE680 003BB5E0 7C C6 02 78 */ xor r6, r6, r0
|
||||
/* 803BE684 003BB5E4 7C E7 1A 78 */ xor r7, r7, r3
|
||||
/* 803BE688 003BB5E8 90 FF 00 04 */ stw r7, 4(r31)
|
||||
/* 803BE68C 003BB5EC 90 DF 00 00 */ stw r6, 0(r31)
|
||||
/* 803BE690 003BB5F0 80 61 00 10 */ lwz r3, 0x10(r1)
|
||||
/* 803BE694 003BB5F4 4B FF A7 C5 */ bl __CARDPutControlBlock
|
||||
lbl_803BE698:
|
||||
/* 803BE698 003BB5F8 80 01 00 24 */ lwz r0, 0x24(r1)
|
||||
/* 803BE69C 003BB5FC 83 E1 00 1C */ lwz r31, 0x1c(r1)
|
||||
/* 803BE6A0 003BB600 38 21 00 20 */ addi r1, r1, 0x20
|
||||
/* 803BE6A4 003BB604 7C 08 03 A6 */ mtlr r0
|
||||
/* 803BE6A8 003BB608 4E 80 00 20 */ blr
|
|
@ -0,0 +1,339 @@
|
|||
.include "macros.inc"
|
||||
|
||||
.section .text, "ax"
|
||||
|
||||
.global __CARDCompareFileName
|
||||
__CARDCompareFileName:
|
||||
/* 803BCD6C 003B9CCC 38 A3 00 08 */ addi r5, r3, 8
|
||||
/* 803BCD70 003B9CD0 38 E0 00 20 */ li r7, 0x20
|
||||
/* 803BCD74 003B9CD4 48 00 00 3C */ b lbl_803BCDB0
|
||||
lbl_803BCD78:
|
||||
/* 803BCD78 003B9CD8 88 05 00 00 */ lbz r0, 0(r5)
|
||||
/* 803BCD7C 003B9CDC 38 A5 00 01 */ addi r5, r5, 1
|
||||
/* 803BCD80 003B9CE0 88 C4 00 00 */ lbz r6, 0(r4)
|
||||
/* 803BCD84 003B9CE4 38 84 00 01 */ addi r4, r4, 1
|
||||
/* 803BCD88 003B9CE8 7C 03 07 74 */ extsb r3, r0
|
||||
/* 803BCD8C 003B9CEC 7C C0 07 74 */ extsb r0, r6
|
||||
/* 803BCD90 003B9CF0 7C 03 00 00 */ cmpw r3, r0
|
||||
/* 803BCD94 003B9CF4 41 82 00 0C */ beq lbl_803BCDA0
|
||||
/* 803BCD98 003B9CF8 38 60 00 00 */ li r3, 0
|
||||
/* 803BCD9C 003B9CFC 4E 80 00 20 */ blr
|
||||
lbl_803BCDA0:
|
||||
/* 803BCDA0 003B9D00 7C C0 07 75 */ extsb. r0, r6
|
||||
/* 803BCDA4 003B9D04 40 82 00 0C */ bne lbl_803BCDB0
|
||||
/* 803BCDA8 003B9D08 38 60 00 01 */ li r3, 1
|
||||
/* 803BCDAC 003B9D0C 4E 80 00 20 */ blr
|
||||
lbl_803BCDB0:
|
||||
/* 803BCDB0 003B9D10 34 E7 FF FF */ addic. r7, r7, -1
|
||||
/* 803BCDB4 003B9D14 40 80 FF C4 */ bge lbl_803BCD78
|
||||
/* 803BCDB8 003B9D18 88 04 00 00 */ lbz r0, 0(r4)
|
||||
/* 803BCDBC 003B9D1C 7C 00 07 75 */ extsb. r0, r0
|
||||
/* 803BCDC0 003B9D20 40 82 00 0C */ bne lbl_803BCDCC
|
||||
/* 803BCDC4 003B9D24 38 60 00 01 */ li r3, 1
|
||||
/* 803BCDC8 003B9D28 4E 80 00 20 */ blr
|
||||
lbl_803BCDCC:
|
||||
/* 803BCDCC 003B9D2C 38 60 00 00 */ li r3, 0
|
||||
/* 803BCDD0 003B9D30 4E 80 00 20 */ blr
|
||||
|
||||
.global __CARDAccess
|
||||
__CARDAccess:
|
||||
/* 803BCDD4 003B9D34 7C 08 02 A6 */ mflr r0
|
||||
/* 803BCDD8 003B9D38 90 01 00 04 */ stw r0, 4(r1)
|
||||
/* 803BCDDC 003B9D3C 94 21 FF E8 */ stwu r1, -0x18(r1)
|
||||
/* 803BCDE0 003B9D40 93 E1 00 14 */ stw r31, 0x14(r1)
|
||||
/* 803BCDE4 003B9D44 7C 9F 23 78 */ mr r31, r4
|
||||
/* 803BCDE8 003B9D48 93 C1 00 10 */ stw r30, 0x10(r1)
|
||||
/* 803BCDEC 003B9D4C 3B C3 00 00 */ addi r30, r3, 0
|
||||
/* 803BCDF0 003B9D50 88 04 00 00 */ lbz r0, 0(r4)
|
||||
/* 803BCDF4 003B9D54 28 00 00 FF */ cmplwi r0, 0xff
|
||||
/* 803BCDF8 003B9D58 40 82 00 0C */ bne lbl_803BCE04
|
||||
/* 803BCDFC 003B9D5C 38 60 FF FC */ li r3, -4
|
||||
/* 803BCE00 003B9D60 48 00 00 54 */ b lbl_803BCE54
|
||||
lbl_803BCE04:
|
||||
/* 803BCE04 003B9D64 3C 60 80 57 */ lis r3, lbl_80569C78@ha
|
||||
/* 803BCE08 003B9D68 80 9E 01 0C */ lwz r4, 0x10c(r30)
|
||||
/* 803BCE0C 003B9D6C 38 03 9C 78 */ addi r0, r3, lbl_80569C78@l
|
||||
/* 803BCE10 003B9D70 7C 04 00 40 */ cmplw r4, r0
|
||||
/* 803BCE14 003B9D74 41 82 00 34 */ beq lbl_803BCE48
|
||||
/* 803BCE18 003B9D78 38 7F 00 00 */ addi r3, r31, 0
|
||||
/* 803BCE1C 003B9D7C 38 A0 00 04 */ li r5, 4
|
||||
/* 803BCE20 003B9D80 4B FD 0A 5D */ bl memcmp
|
||||
/* 803BCE24 003B9D84 2C 03 00 00 */ cmpwi r3, 0
|
||||
/* 803BCE28 003B9D88 40 82 00 28 */ bne lbl_803BCE50
|
||||
/* 803BCE2C 003B9D8C 80 9E 01 0C */ lwz r4, 0x10c(r30)
|
||||
/* 803BCE30 003B9D90 38 7F 00 04 */ addi r3, r31, 4
|
||||
/* 803BCE34 003B9D94 38 A0 00 02 */ li r5, 2
|
||||
/* 803BCE38 003B9D98 38 84 00 04 */ addi r4, r4, 4
|
||||
/* 803BCE3C 003B9D9C 4B FD 0A 41 */ bl memcmp
|
||||
/* 803BCE40 003B9DA0 2C 03 00 00 */ cmpwi r3, 0
|
||||
/* 803BCE44 003B9DA4 40 82 00 0C */ bne lbl_803BCE50
|
||||
lbl_803BCE48:
|
||||
/* 803BCE48 003B9DA8 38 60 00 00 */ li r3, 0
|
||||
/* 803BCE4C 003B9DAC 48 00 00 08 */ b lbl_803BCE54
|
||||
lbl_803BCE50:
|
||||
/* 803BCE50 003B9DB0 38 60 FF F6 */ li r3, -10
|
||||
lbl_803BCE54:
|
||||
/* 803BCE54 003B9DB4 80 01 00 1C */ lwz r0, 0x1c(r1)
|
||||
/* 803BCE58 003B9DB8 83 E1 00 14 */ lwz r31, 0x14(r1)
|
||||
/* 803BCE5C 003B9DBC 83 C1 00 10 */ lwz r30, 0x10(r1)
|
||||
/* 803BCE60 003B9DC0 38 21 00 18 */ addi r1, r1, 0x18
|
||||
/* 803BCE64 003B9DC4 7C 08 03 A6 */ mtlr r0
|
||||
/* 803BCE68 003B9DC8 4E 80 00 20 */ blr
|
||||
|
||||
.global sub_803bce6c
|
||||
sub_803bce6c:
|
||||
/* 803BCE6C 003B9DCC 88 03 00 00 */ lbz r0, 0(r3)
|
||||
/* 803BCE70 003B9DD0 28 00 00 FF */ cmplwi r0, 0xff
|
||||
/* 803BCE74 003B9DD4 40 82 00 0C */ bne lbl_803BCE80
|
||||
/* 803BCE78 003B9DD8 38 60 FF FC */ li r3, -4
|
||||
/* 803BCE7C 003B9DDC 4E 80 00 20 */ blr
|
||||
lbl_803BCE80:
|
||||
/* 803BCE80 003B9DE0 88 03 00 34 */ lbz r0, 0x34(r3)
|
||||
/* 803BCE84 003B9DE4 54 00 07 7B */ rlwinm. r0, r0, 0, 0x1d, 0x1d
|
||||
/* 803BCE88 003B9DE8 41 82 00 0C */ beq lbl_803BCE94
|
||||
/* 803BCE8C 003B9DEC 38 60 00 00 */ li r3, 0
|
||||
/* 803BCE90 003B9DF0 4E 80 00 20 */ blr
|
||||
lbl_803BCE94:
|
||||
/* 803BCE94 003B9DF4 38 60 FF F6 */ li r3, -10
|
||||
/* 803BCE98 003B9DF8 4E 80 00 20 */ blr
|
||||
|
||||
.global sub_803bce9c
|
||||
sub_803bce9c:
|
||||
/* 803BCE9C 003B9DFC 7C 08 02 A6 */ mflr r0
|
||||
/* 803BCEA0 003B9E00 90 01 00 04 */ stw r0, 4(r1)
|
||||
/* 803BCEA4 003B9E04 94 21 FF D0 */ stwu r1, -0x30(r1)
|
||||
/* 803BCEA8 003B9E08 BF 41 00 18 */ stmw r26, 0x18(r1)
|
||||
/* 803BCEAC 003B9E0C 7C 7B 1B 78 */ mr r27, r3
|
||||
/* 803BCEB0 003B9E10 3B 84 00 00 */ addi r28, r4, 0
|
||||
/* 803BCEB4 003B9E14 3B A5 00 00 */ addi r29, r5, 0
|
||||
/* 803BCEB8 003B9E18 80 03 00 00 */ lwz r0, 0(r3)
|
||||
/* 803BCEBC 003B9E1C 2C 00 00 00 */ cmpwi r0, 0
|
||||
/* 803BCEC0 003B9E20 40 82 00 0C */ bne lbl_803BCECC
|
||||
/* 803BCEC4 003B9E24 38 60 FF FD */ li r3, -3
|
||||
/* 803BCEC8 003B9E28 48 00 01 10 */ b lbl_803BCFD8
|
||||
lbl_803BCECC:
|
||||
/* 803BCECC 003B9E2C 7F 63 DB 78 */ mr r3, r27
|
||||
/* 803BCED0 003B9E30 4B FF DA A1 */ bl __CARDGetDirBlock
|
||||
/* 803BCED4 003B9E34 3C 80 80 57 */ lis r4, lbl_80569C78@ha
|
||||
/* 803BCED8 003B9E38 3B E3 00 00 */ addi r31, r3, 0
|
||||
/* 803BCEDC 003B9E3C 3B 44 9C 78 */ addi r26, r4, lbl_80569C78@l
|
||||
/* 803BCEE0 003B9E40 3B C0 00 00 */ li r30, 0
|
||||
lbl_803BCEE4:
|
||||
/* 803BCEE4 003B9E44 88 1F 00 00 */ lbz r0, 0(r31)
|
||||
/* 803BCEE8 003B9E48 28 00 00 FF */ cmplwi r0, 0xff
|
||||
/* 803BCEEC 003B9E4C 40 82 00 0C */ bne lbl_803BCEF8
|
||||
/* 803BCEF0 003B9E50 38 00 FF FC */ li r0, -4
|
||||
/* 803BCEF4 003B9E54 48 00 00 4C */ b lbl_803BCF40
|
||||
lbl_803BCEF8:
|
||||
/* 803BCEF8 003B9E58 80 9B 01 0C */ lwz r4, 0x10c(r27)
|
||||
/* 803BCEFC 003B9E5C 7C 04 D0 40 */ cmplw r4, r26
|
||||
/* 803BCF00 003B9E60 41 82 00 34 */ beq lbl_803BCF34
|
||||
/* 803BCF04 003B9E64 38 7F 00 00 */ addi r3, r31, 0
|
||||
/* 803BCF08 003B9E68 38 A0 00 04 */ li r5, 4
|
||||
/* 803BCF0C 003B9E6C 4B FD 09 71 */ bl memcmp
|
||||
/* 803BCF10 003B9E70 2C 03 00 00 */ cmpwi r3, 0
|
||||
/* 803BCF14 003B9E74 40 82 00 28 */ bne lbl_803BCF3C
|
||||
/* 803BCF18 003B9E78 80 9B 01 0C */ lwz r4, 0x10c(r27)
|
||||
/* 803BCF1C 003B9E7C 38 7F 00 04 */ addi r3, r31, 4
|
||||
/* 803BCF20 003B9E80 38 A0 00 02 */ li r5, 2
|
||||
/* 803BCF24 003B9E84 38 84 00 04 */ addi r4, r4, 4
|
||||
/* 803BCF28 003B9E88 4B FD 09 55 */ bl memcmp
|
||||
/* 803BCF2C 003B9E8C 2C 03 00 00 */ cmpwi r3, 0
|
||||
/* 803BCF30 003B9E90 40 82 00 0C */ bne lbl_803BCF3C
|
||||
lbl_803BCF34:
|
||||
/* 803BCF34 003B9E94 38 00 00 00 */ li r0, 0
|
||||
/* 803BCF38 003B9E98 48 00 00 08 */ b lbl_803BCF40
|
||||
lbl_803BCF3C:
|
||||
/* 803BCF3C 003B9E9C 38 00 FF F6 */ li r0, -10
|
||||
lbl_803BCF40:
|
||||
/* 803BCF40 003B9EA0 2C 00 00 00 */ cmpwi r0, 0
|
||||
/* 803BCF44 003B9EA4 41 80 00 80 */ blt lbl_803BCFC4
|
||||
/* 803BCF48 003B9EA8 38 FC 00 00 */ addi r7, r28, 0
|
||||
/* 803BCF4C 003B9EAC 38 DF 00 08 */ addi r6, r31, 8
|
||||
/* 803BCF50 003B9EB0 38 80 00 20 */ li r4, 0x20
|
||||
/* 803BCF54 003B9EB4 48 00 00 3C */ b lbl_803BCF90
|
||||
lbl_803BCF58:
|
||||
/* 803BCF58 003B9EB8 88 06 00 00 */ lbz r0, 0(r6)
|
||||
/* 803BCF5C 003B9EBC 38 C6 00 01 */ addi r6, r6, 1
|
||||
/* 803BCF60 003B9EC0 88 A7 00 00 */ lbz r5, 0(r7)
|
||||
/* 803BCF64 003B9EC4 38 E7 00 01 */ addi r7, r7, 1
|
||||
/* 803BCF68 003B9EC8 7C 03 07 74 */ extsb r3, r0
|
||||
/* 803BCF6C 003B9ECC 7C A0 07 74 */ extsb r0, r5
|
||||
/* 803BCF70 003B9ED0 7C 03 00 00 */ cmpw r3, r0
|
||||
/* 803BCF74 003B9ED4 41 82 00 0C */ beq lbl_803BCF80
|
||||
/* 803BCF78 003B9ED8 38 00 00 00 */ li r0, 0
|
||||
/* 803BCF7C 003B9EDC 48 00 00 34 */ b lbl_803BCFB0
|
||||
lbl_803BCF80:
|
||||
/* 803BCF80 003B9EE0 7C A0 07 75 */ extsb. r0, r5
|
||||
/* 803BCF84 003B9EE4 40 82 00 0C */ bne lbl_803BCF90
|
||||
/* 803BCF88 003B9EE8 38 00 00 01 */ li r0, 1
|
||||
/* 803BCF8C 003B9EEC 48 00 00 24 */ b lbl_803BCFB0
|
||||
lbl_803BCF90:
|
||||
/* 803BCF90 003B9EF0 34 84 FF FF */ addic. r4, r4, -1
|
||||
/* 803BCF94 003B9EF4 40 80 FF C4 */ bge lbl_803BCF58
|
||||
/* 803BCF98 003B9EF8 88 07 00 00 */ lbz r0, 0(r7)
|
||||
/* 803BCF9C 003B9EFC 7C 00 07 75 */ extsb. r0, r0
|
||||
/* 803BCFA0 003B9F00 40 82 00 0C */ bne lbl_803BCFAC
|
||||
/* 803BCFA4 003B9F04 38 00 00 01 */ li r0, 1
|
||||
/* 803BCFA8 003B9F08 48 00 00 08 */ b lbl_803BCFB0
|
||||
lbl_803BCFAC:
|
||||
/* 803BCFAC 003B9F0C 38 00 00 00 */ li r0, 0
|
||||
lbl_803BCFB0:
|
||||
/* 803BCFB0 003B9F10 2C 00 00 00 */ cmpwi r0, 0
|
||||
/* 803BCFB4 003B9F14 41 82 00 10 */ beq lbl_803BCFC4
|
||||
/* 803BCFB8 003B9F18 93 DD 00 00 */ stw r30, 0(r29)
|
||||
/* 803BCFBC 003B9F1C 38 60 00 00 */ li r3, 0
|
||||
/* 803BCFC0 003B9F20 48 00 00 18 */ b lbl_803BCFD8
|
||||
lbl_803BCFC4:
|
||||
/* 803BCFC4 003B9F24 3B DE 00 01 */ addi r30, r30, 1
|
||||
/* 803BCFC8 003B9F28 2C 1E 00 7F */ cmpwi r30, 0x7f
|
||||
/* 803BCFCC 003B9F2C 3B FF 00 40 */ addi r31, r31, 0x40
|
||||
/* 803BCFD0 003B9F30 41 80 FF 14 */ blt lbl_803BCEE4
|
||||
/* 803BCFD4 003B9F34 38 60 FF FC */ li r3, -4
|
||||
lbl_803BCFD8:
|
||||
/* 803BCFD8 003B9F38 BB 41 00 18 */ lmw r26, 0x18(r1)
|
||||
/* 803BCFDC 003B9F3C 80 01 00 34 */ lwz r0, 0x34(r1)
|
||||
/* 803BCFE0 003B9F40 38 21 00 30 */ addi r1, r1, 0x30
|
||||
/* 803BCFE4 003B9F44 7C 08 03 A6 */ mtlr r0
|
||||
/* 803BCFE8 003B9F48 4E 80 00 20 */ blr
|
||||
|
||||
.global CARDOpen
|
||||
CARDOpen:
|
||||
/* 803BCFEC 003B9F4C 7C 08 02 A6 */ mflr r0
|
||||
/* 803BCFF0 003B9F50 90 01 00 04 */ stw r0, 4(r1)
|
||||
/* 803BCFF4 003B9F54 38 00 FF FF */ li r0, -1
|
||||
/* 803BCFF8 003B9F58 94 21 FF C0 */ stwu r1, -0x40(r1)
|
||||
/* 803BCFFC 003B9F5C BE E1 00 1C */ stmw r23, 0x1c(r1)
|
||||
/* 803BD000 003B9F60 3B 84 00 00 */ addi r28, r4, 0
|
||||
/* 803BD004 003B9F64 3B A5 00 00 */ addi r29, r5, 0
|
||||
/* 803BD008 003B9F68 3B 63 00 00 */ addi r27, r3, 0
|
||||
/* 803BD00C 003B9F6C 38 81 00 14 */ addi r4, r1, 0x14
|
||||
/* 803BD010 003B9F70 90 05 00 00 */ stw r0, 0(r5)
|
||||
/* 803BD014 003B9F74 4B FF BD 8D */ bl __CARDGetControlBlock
|
||||
/* 803BD018 003B9F78 2C 03 00 00 */ cmpwi r3, 0
|
||||
/* 803BD01C 003B9F7C 40 80 00 08 */ bge lbl_803BD024
|
||||
/* 803BD020 003B9F80 48 00 01 30 */ b lbl_803BD150
|
||||
lbl_803BD024:
|
||||
/* 803BD024 003B9F84 83 E1 00 14 */ lwz r31, 0x14(r1)
|
||||
/* 803BD028 003B9F88 80 1F 00 00 */ lwz r0, 0(r31)
|
||||
/* 803BD02C 003B9F8C 2C 00 00 00 */ cmpwi r0, 0
|
||||
/* 803BD030 003B9F90 40 82 00 0C */ bne lbl_803BD03C
|
||||
/* 803BD034 003B9F94 3A E0 FF FD */ li r23, -3
|
||||
/* 803BD038 003B9F98 48 00 00 B8 */ b lbl_803BD0F0
|
||||
lbl_803BD03C:
|
||||
/* 803BD03C 003B9F9C 7F E3 FB 78 */ mr r3, r31
|
||||
/* 803BD040 003B9FA0 4B FF D9 31 */ bl __CARDGetDirBlock
|
||||
/* 803BD044 003B9FA4 3C 80 80 57 */ lis r4, lbl_80569C78@ha
|
||||
/* 803BD048 003B9FA8 3A E3 00 00 */ addi r23, r3, 0
|
||||
/* 803BD04C 003B9FAC 3B 44 9C 78 */ addi r26, r4, lbl_80569C78@l
|
||||
/* 803BD050 003B9FB0 3B 20 00 00 */ li r25, 0
|
||||
lbl_803BD054:
|
||||
/* 803BD054 003B9FB4 88 17 00 00 */ lbz r0, 0(r23)
|
||||
/* 803BD058 003B9FB8 3B 17 00 00 */ addi r24, r23, 0
|
||||
/* 803BD05C 003B9FBC 28 00 00 FF */ cmplwi r0, 0xff
|
||||
/* 803BD060 003B9FC0 40 82 00 0C */ bne lbl_803BD06C
|
||||
/* 803BD064 003B9FC4 38 00 FF FC */ li r0, -4
|
||||
/* 803BD068 003B9FC8 48 00 00 4C */ b lbl_803BD0B4
|
||||
lbl_803BD06C:
|
||||
/* 803BD06C 003B9FCC 80 9F 01 0C */ lwz r4, 0x10c(r31)
|
||||
/* 803BD070 003B9FD0 7C 04 D0 40 */ cmplw r4, r26
|
||||
/* 803BD074 003B9FD4 41 82 00 34 */ beq lbl_803BD0A8
|
||||
/* 803BD078 003B9FD8 38 78 00 00 */ addi r3, r24, 0
|
||||
/* 803BD07C 003B9FDC 38 A0 00 04 */ li r5, 4
|
||||
/* 803BD080 003B9FE0 4B FD 07 FD */ bl memcmp
|
||||
/* 803BD084 003B9FE4 2C 03 00 00 */ cmpwi r3, 0
|
||||
/* 803BD088 003B9FE8 40 82 00 28 */ bne lbl_803BD0B0
|
||||
/* 803BD08C 003B9FEC 80 9F 01 0C */ lwz r4, 0x10c(r31)
|
||||
/* 803BD090 003B9FF0 38 78 00 04 */ addi r3, r24, 4
|
||||
/* 803BD094 003B9FF4 38 A0 00 02 */ li r5, 2
|
||||
/* 803BD098 003B9FF8 38 84 00 04 */ addi r4, r4, 4
|
||||
/* 803BD09C 003B9FFC 4B FD 07 E1 */ bl memcmp
|
||||
/* 803BD0A0 003BA000 2C 03 00 00 */ cmpwi r3, 0
|
||||
/* 803BD0A4 003BA004 40 82 00 0C */ bne lbl_803BD0B0
|
||||
lbl_803BD0A8:
|
||||
/* 803BD0A8 003BA008 38 00 00 00 */ li r0, 0
|
||||
/* 803BD0AC 003BA00C 48 00 00 08 */ b lbl_803BD0B4
|
||||
lbl_803BD0B0:
|
||||
/* 803BD0B0 003BA010 38 00 FF F6 */ li r0, -10
|
||||
lbl_803BD0B4:
|
||||
/* 803BD0B4 003BA014 2C 00 00 00 */ cmpwi r0, 0
|
||||
/* 803BD0B8 003BA018 41 80 00 24 */ blt lbl_803BD0DC
|
||||
/* 803BD0BC 003BA01C 38 77 00 00 */ addi r3, r23, 0
|
||||
/* 803BD0C0 003BA020 38 9C 00 00 */ addi r4, r28, 0
|
||||
/* 803BD0C4 003BA024 4B FF FC A9 */ bl __CARDCompareFileName
|
||||
/* 803BD0C8 003BA028 2C 03 00 00 */ cmpwi r3, 0
|
||||
/* 803BD0CC 003BA02C 41 82 00 10 */ beq lbl_803BD0DC
|
||||
/* 803BD0D0 003BA030 3B D9 00 00 */ addi r30, r25, 0
|
||||
/* 803BD0D4 003BA034 3A E0 00 00 */ li r23, 0
|
||||
/* 803BD0D8 003BA038 48 00 00 18 */ b lbl_803BD0F0
|
||||
lbl_803BD0DC:
|
||||
/* 803BD0DC 003BA03C 3B 39 00 01 */ addi r25, r25, 1
|
||||
/* 803BD0E0 003BA040 2C 19 00 7F */ cmpwi r25, 0x7f
|
||||
/* 803BD0E4 003BA044 3A F7 00 40 */ addi r23, r23, 0x40
|
||||
/* 803BD0E8 003BA048 41 80 FF 6C */ blt lbl_803BD054
|
||||
/* 803BD0EC 003BA04C 3A E0 FF FC */ li r23, -4
|
||||
lbl_803BD0F0:
|
||||
/* 803BD0F0 003BA050 2C 17 00 00 */ cmpwi r23, 0
|
||||
/* 803BD0F4 003BA054 41 80 00 50 */ blt lbl_803BD144
|
||||
/* 803BD0F8 003BA058 80 61 00 14 */ lwz r3, 0x14(r1)
|
||||
/* 803BD0FC 003BA05C 4B FF D8 75 */ bl __CARDGetDirBlock
|
||||
/* 803BD100 003BA060 57 C0 30 32 */ slwi r0, r30, 6
|
||||
/* 803BD104 003BA064 7C A3 02 14 */ add r5, r3, r0
|
||||
/* 803BD108 003BA068 A0 85 00 36 */ lhz r4, 0x36(r5)
|
||||
/* 803BD10C 003BA06C 28 04 00 05 */ cmplwi r4, 5
|
||||
/* 803BD110 003BA070 41 80 00 14 */ blt lbl_803BD124
|
||||
/* 803BD114 003BA074 80 61 00 14 */ lwz r3, 0x14(r1)
|
||||
/* 803BD118 003BA078 A0 03 00 10 */ lhz r0, 0x10(r3)
|
||||
/* 803BD11C 003BA07C 7C 04 00 40 */ cmplw r4, r0
|
||||
/* 803BD120 003BA080 41 80 00 0C */ blt lbl_803BD12C
|
||||
lbl_803BD124:
|
||||
/* 803BD124 003BA084 3A E0 FF FA */ li r23, -6
|
||||
/* 803BD128 003BA088 48 00 00 1C */ b lbl_803BD144
|
||||
lbl_803BD12C:
|
||||
/* 803BD12C 003BA08C 93 7D 00 00 */ stw r27, 0(r29)
|
||||
/* 803BD130 003BA090 38 00 00 00 */ li r0, 0
|
||||
/* 803BD134 003BA094 93 DD 00 04 */ stw r30, 4(r29)
|
||||
/* 803BD138 003BA098 90 1D 00 08 */ stw r0, 8(r29)
|
||||
/* 803BD13C 003BA09C A0 05 00 36 */ lhz r0, 0x36(r5)
|
||||
/* 803BD140 003BA0A0 B0 1D 00 10 */ sth r0, 0x10(r29)
|
||||
lbl_803BD144:
|
||||
/* 803BD144 003BA0A4 80 61 00 14 */ lwz r3, 0x14(r1)
|
||||
/* 803BD148 003BA0A8 7E E4 BB 78 */ mr r4, r23
|
||||
/* 803BD14C 003BA0AC 4B FF BD 0D */ bl __CARDPutControlBlock
|
||||
lbl_803BD150:
|
||||
/* 803BD150 003BA0B0 BA E1 00 1C */ lmw r23, 0x1c(r1)
|
||||
/* 803BD154 003BA0B4 80 01 00 44 */ lwz r0, 0x44(r1)
|
||||
/* 803BD158 003BA0B8 38 21 00 40 */ addi r1, r1, 0x40
|
||||
/* 803BD15C 003BA0BC 7C 08 03 A6 */ mtlr r0
|
||||
/* 803BD160 003BA0C0 4E 80 00 20 */ blr
|
||||
|
||||
.global CARDClose
|
||||
CARDClose:
|
||||
/* 803BD164 003BA0C4 7C 08 02 A6 */ mflr r0
|
||||
/* 803BD168 003BA0C8 90 01 00 04 */ stw r0, 4(r1)
|
||||
/* 803BD16C 003BA0CC 94 21 FF E8 */ stwu r1, -0x18(r1)
|
||||
/* 803BD170 003BA0D0 93 E1 00 14 */ stw r31, 0x14(r1)
|
||||
/* 803BD174 003BA0D4 7C 7F 1B 78 */ mr r31, r3
|
||||
/* 803BD178 003BA0D8 38 81 00 0C */ addi r4, r1, 0xc
|
||||
/* 803BD17C 003BA0DC 80 63 00 00 */ lwz r3, 0(r3)
|
||||
/* 803BD180 003BA0E0 4B FF BC 21 */ bl __CARDGetControlBlock
|
||||
/* 803BD184 003BA0E4 2C 03 00 00 */ cmpwi r3, 0
|
||||
/* 803BD188 003BA0E8 40 80 00 08 */ bge lbl_803BD190
|
||||
/* 803BD18C 003BA0EC 48 00 00 18 */ b lbl_803BD1A4
|
||||
lbl_803BD190:
|
||||
/* 803BD190 003BA0F0 38 00 FF FF */ li r0, -1
|
||||
/* 803BD194 003BA0F4 90 1F 00 00 */ stw r0, 0(r31)
|
||||
/* 803BD198 003BA0F8 38 80 00 00 */ li r4, 0
|
||||
/* 803BD19C 003BA0FC 80 61 00 0C */ lwz r3, 0xc(r1)
|
||||
/* 803BD1A0 003BA100 4B FF BC B9 */ bl __CARDPutControlBlock
|
||||
lbl_803BD1A4:
|
||||
/* 803BD1A4 003BA104 80 01 00 1C */ lwz r0, 0x1c(r1)
|
||||
/* 803BD1A8 003BA108 83 E1 00 14 */ lwz r31, 0x14(r1)
|
||||
/* 803BD1AC 003BA10C 38 21 00 18 */ addi r1, r1, 0x18
|
||||
/* 803BD1B0 003BA110 7C 08 03 A6 */ mtlr r0
|
||||
/* 803BD1B4 003BA114 4E 80 00 20 */ blr
|
||||
|
||||
.global __CARDIsOpened
|
||||
__CARDIsOpened:
|
||||
/* 803BD1B8 003BA118 38 60 00 00 */ li r3, 0
|
||||
/* 803BD1BC 003BA11C 4E 80 00 20 */ blr
|
|
@ -0,0 +1,185 @@
|
|||
.include "macros.inc"
|
||||
|
||||
.section .text, "ax"
|
||||
|
||||
.global BlockReadCallback
|
||||
BlockReadCallback:
|
||||
/* 803BA2EC 003B724C 7C 08 02 A6 */ mflr r0
|
||||
/* 803BA2F0 003B7250 90 01 00 04 */ stw r0, 4(r1)
|
||||
/* 803BA2F4 003B7254 94 21 FF E0 */ stwu r1, -0x20(r1)
|
||||
/* 803BA2F8 003B7258 93 E1 00 1C */ stw r31, 0x1c(r1)
|
||||
/* 803BA2FC 003B725C 3B E3 00 00 */ addi r31, r3, 0
|
||||
/* 803BA300 003B7260 3C 60 80 57 */ lis r3, lbl_80569A58@ha
|
||||
/* 803BA304 003B7264 93 C1 00 18 */ stw r30, 0x18(r1)
|
||||
/* 803BA308 003B7268 1C BF 01 10 */ mulli r5, r31, 0x110
|
||||
/* 803BA30C 003B726C 93 A1 00 14 */ stw r29, 0x14(r1)
|
||||
/* 803BA310 003B7270 38 03 9A 58 */ addi r0, r3, lbl_80569A58@l
|
||||
/* 803BA314 003B7274 7C 9D 23 79 */ or. r29, r4, r4
|
||||
/* 803BA318 003B7278 7F C0 2A 14 */ add r30, r0, r5
|
||||
/* 803BA31C 003B727C 41 80 00 50 */ blt lbl_803BA36C
|
||||
/* 803BA320 003B7280 80 7E 00 B8 */ lwz r3, 0xb8(r30)
|
||||
/* 803BA324 003B7284 38 03 02 00 */ addi r0, r3, 0x200
|
||||
/* 803BA328 003B7288 90 1E 00 B8 */ stw r0, 0xb8(r30)
|
||||
/* 803BA32C 003B728C 80 7E 00 B0 */ lwz r3, 0xb0(r30)
|
||||
/* 803BA330 003B7290 38 03 02 00 */ addi r0, r3, 0x200
|
||||
/* 803BA334 003B7294 90 1E 00 B0 */ stw r0, 0xb0(r30)
|
||||
/* 803BA338 003B7298 80 7E 00 B4 */ lwz r3, 0xb4(r30)
|
||||
/* 803BA33C 003B729C 38 03 02 00 */ addi r0, r3, 0x200
|
||||
/* 803BA340 003B72A0 90 1E 00 B4 */ stw r0, 0xb4(r30)
|
||||
/* 803BA344 003B72A4 80 7E 00 AC */ lwz r3, 0xac(r30)
|
||||
/* 803BA348 003B72A8 34 03 FF FF */ addic. r0, r3, -1
|
||||
/* 803BA34C 003B72AC 90 1E 00 AC */ stw r0, 0xac(r30)
|
||||
/* 803BA350 003B72B0 40 81 00 1C */ ble lbl_803BA36C
|
||||
/* 803BA354 003B72B4 3C 60 80 3C */ lis r3, BlockReadCallback@ha
|
||||
/* 803BA358 003B72B8 38 83 A2 EC */ addi r4, r3, BlockReadCallback@l
|
||||
/* 803BA35C 003B72BC 38 7F 00 00 */ addi r3, r31, 0
|
||||
/* 803BA360 003B72C0 4B FF E6 25 */ bl __CARDReadSegment
|
||||
/* 803BA364 003B72C4 7C 7D 1B 79 */ or. r29, r3, r3
|
||||
/* 803BA368 003B72C8 40 80 00 44 */ bge lbl_803BA3AC
|
||||
lbl_803BA36C:
|
||||
/* 803BA36C 003B72CC 80 1E 00 D0 */ lwz r0, 0xd0(r30)
|
||||
/* 803BA370 003B72D0 28 00 00 00 */ cmplwi r0, 0
|
||||
/* 803BA374 003B72D4 40 82 00 10 */ bne lbl_803BA384
|
||||
/* 803BA378 003B72D8 38 7E 00 00 */ addi r3, r30, 0
|
||||
/* 803BA37C 003B72DC 38 9D 00 00 */ addi r4, r29, 0
|
||||
/* 803BA380 003B72E0 4B FF EA D9 */ bl __CARDPutControlBlock
|
||||
lbl_803BA384:
|
||||
/* 803BA384 003B72E4 80 1E 00 D4 */ lwz r0, 0xd4(r30)
|
||||
/* 803BA388 003B72E8 28 00 00 00 */ cmplwi r0, 0
|
||||
/* 803BA38C 003B72EC 7C 0C 03 78 */ mr r12, r0
|
||||
/* 803BA390 003B72F0 41 82 00 1C */ beq lbl_803BA3AC
|
||||
/* 803BA394 003B72F4 38 00 00 00 */ li r0, 0
|
||||
/* 803BA398 003B72F8 7D 88 03 A6 */ mtlr r12
|
||||
/* 803BA39C 003B72FC 90 1E 00 D4 */ stw r0, 0xd4(r30)
|
||||
/* 803BA3A0 003B7300 38 7F 00 00 */ addi r3, r31, 0
|
||||
/* 803BA3A4 003B7304 38 9D 00 00 */ addi r4, r29, 0
|
||||
/* 803BA3A8 003B7308 4E 80 00 21 */ blrl
|
||||
lbl_803BA3AC:
|
||||
/* 803BA3AC 003B730C 80 01 00 24 */ lwz r0, 0x24(r1)
|
||||
/* 803BA3B0 003B7310 83 E1 00 1C */ lwz r31, 0x1c(r1)
|
||||
/* 803BA3B4 003B7314 83 C1 00 18 */ lwz r30, 0x18(r1)
|
||||
/* 803BA3B8 003B7318 83 A1 00 14 */ lwz r29, 0x14(r1)
|
||||
/* 803BA3BC 003B731C 38 21 00 20 */ addi r1, r1, 0x20
|
||||
/* 803BA3C0 003B7320 7C 08 03 A6 */ mtlr r0
|
||||
/* 803BA3C4 003B7324 4E 80 00 20 */ blr
|
||||
|
||||
.global __CARDRead
|
||||
__CARDRead:
|
||||
/* 803BA3C8 003B7328 7C 08 02 A6 */ mflr r0
|
||||
/* 803BA3CC 003B732C 1D 23 01 10 */ mulli r9, r3, 0x110
|
||||
/* 803BA3D0 003B7330 90 01 00 04 */ stw r0, 4(r1)
|
||||
/* 803BA3D4 003B7334 3D 00 80 57 */ lis r8, lbl_80569A58@ha
|
||||
/* 803BA3D8 003B7338 94 21 FF F8 */ stwu r1, -8(r1)
|
||||
/* 803BA3DC 003B733C 38 08 9A 58 */ addi r0, r8, lbl_80569A58@l
|
||||
/* 803BA3E0 003B7340 7D 00 4A 14 */ add r8, r0, r9
|
||||
/* 803BA3E4 003B7344 80 08 00 00 */ lwz r0, 0(r8)
|
||||
/* 803BA3E8 003B7348 2C 00 00 00 */ cmpwi r0, 0
|
||||
/* 803BA3EC 003B734C 40 82 00 0C */ bne lbl_803BA3F8
|
||||
/* 803BA3F0 003B7350 38 60 FF FD */ li r3, -3
|
||||
/* 803BA3F4 003B7354 48 00 00 28 */ b lbl_803BA41C
|
||||
lbl_803BA3F8:
|
||||
/* 803BA3F8 003B7358 90 E8 00 D4 */ stw r7, 0xd4(r8)
|
||||
/* 803BA3FC 003B735C 54 A0 BA 7E */ srwi r0, r5, 9
|
||||
/* 803BA400 003B7360 3C A0 80 3C */ lis r5, BlockReadCallback@ha
|
||||
/* 803BA404 003B7364 90 08 00 AC */ stw r0, 0xac(r8)
|
||||
/* 803BA408 003B7368 38 05 A2 EC */ addi r0, r5, BlockReadCallback@l
|
||||
/* 803BA40C 003B736C 90 88 00 B0 */ stw r4, 0xb0(r8)
|
||||
/* 803BA410 003B7370 7C 04 03 78 */ mr r4, r0
|
||||
/* 803BA414 003B7374 90 C8 00 B4 */ stw r6, 0xb4(r8)
|
||||
/* 803BA418 003B7378 4B FF E5 6D */ bl __CARDReadSegment
|
||||
lbl_803BA41C:
|
||||
/* 803BA41C 003B737C 80 01 00 0C */ lwz r0, 0xc(r1)
|
||||
/* 803BA420 003B7380 38 21 00 08 */ addi r1, r1, 8
|
||||
/* 803BA424 003B7384 7C 08 03 A6 */ mtlr r0
|
||||
/* 803BA428 003B7388 4E 80 00 20 */ blr
|
||||
|
||||
.global BlockWriteCallback
|
||||
BlockWriteCallback:
|
||||
/* 803BA42C 003B738C 7C 08 02 A6 */ mflr r0
|
||||
/* 803BA430 003B7390 90 01 00 04 */ stw r0, 4(r1)
|
||||
/* 803BA434 003B7394 94 21 FF E0 */ stwu r1, -0x20(r1)
|
||||
/* 803BA438 003B7398 93 E1 00 1C */ stw r31, 0x1c(r1)
|
||||
/* 803BA43C 003B739C 3B E3 00 00 */ addi r31, r3, 0
|
||||
/* 803BA440 003B73A0 3C 60 80 57 */ lis r3, lbl_80569A58@ha
|
||||
/* 803BA444 003B73A4 93 C1 00 18 */ stw r30, 0x18(r1)
|
||||
/* 803BA448 003B73A8 1C BF 01 10 */ mulli r5, r31, 0x110
|
||||
/* 803BA44C 003B73AC 93 A1 00 14 */ stw r29, 0x14(r1)
|
||||
/* 803BA450 003B73B0 38 03 9A 58 */ addi r0, r3, lbl_80569A58@l
|
||||
/* 803BA454 003B73B4 7C 9D 23 79 */ or. r29, r4, r4
|
||||
/* 803BA458 003B73B8 7F C0 2A 14 */ add r30, r0, r5
|
||||
/* 803BA45C 003B73BC 41 80 00 50 */ blt lbl_803BA4AC
|
||||
/* 803BA460 003B73C0 80 7E 00 B8 */ lwz r3, 0xb8(r30)
|
||||
/* 803BA464 003B73C4 38 03 00 80 */ addi r0, r3, 0x80
|
||||
/* 803BA468 003B73C8 90 1E 00 B8 */ stw r0, 0xb8(r30)
|
||||
/* 803BA46C 003B73CC 80 7E 00 B0 */ lwz r3, 0xb0(r30)
|
||||
/* 803BA470 003B73D0 38 03 00 80 */ addi r0, r3, 0x80
|
||||
/* 803BA474 003B73D4 90 1E 00 B0 */ stw r0, 0xb0(r30)
|
||||
/* 803BA478 003B73D8 80 7E 00 B4 */ lwz r3, 0xb4(r30)
|
||||
/* 803BA47C 003B73DC 38 03 00 80 */ addi r0, r3, 0x80
|
||||
/* 803BA480 003B73E0 90 1E 00 B4 */ stw r0, 0xb4(r30)
|
||||
/* 803BA484 003B73E4 80 7E 00 AC */ lwz r3, 0xac(r30)
|
||||
/* 803BA488 003B73E8 34 03 FF FF */ addic. r0, r3, -1
|
||||
/* 803BA48C 003B73EC 90 1E 00 AC */ stw r0, 0xac(r30)
|
||||
/* 803BA490 003B73F0 40 81 00 1C */ ble lbl_803BA4AC
|
||||
/* 803BA494 003B73F4 3C 60 80 3C */ lis r3, BlockWriteCallback@ha
|
||||
/* 803BA498 003B73F8 38 83 A4 2C */ addi r4, r3, BlockWriteCallback@l
|
||||
/* 803BA49C 003B73FC 38 7F 00 00 */ addi r3, r31, 0
|
||||
/* 803BA4A0 003B7400 4B FF E6 19 */ bl __CARDWritePage
|
||||
/* 803BA4A4 003B7404 7C 7D 1B 79 */ or. r29, r3, r3
|
||||
/* 803BA4A8 003B7408 40 80 00 44 */ bge lbl_803BA4EC
|
||||
lbl_803BA4AC:
|
||||
/* 803BA4AC 003B740C 80 1E 00 D0 */ lwz r0, 0xd0(r30)
|
||||
/* 803BA4B0 003B7410 28 00 00 00 */ cmplwi r0, 0
|
||||
/* 803BA4B4 003B7414 40 82 00 10 */ bne lbl_803BA4C4
|
||||
/* 803BA4B8 003B7418 38 7E 00 00 */ addi r3, r30, 0
|
||||
/* 803BA4BC 003B741C 38 9D 00 00 */ addi r4, r29, 0
|
||||
/* 803BA4C0 003B7420 4B FF E9 99 */ bl __CARDPutControlBlock
|
||||
lbl_803BA4C4:
|
||||
/* 803BA4C4 003B7424 80 1E 00 D4 */ lwz r0, 0xd4(r30)
|
||||
/* 803BA4C8 003B7428 28 00 00 00 */ cmplwi r0, 0
|
||||
/* 803BA4CC 003B742C 7C 0C 03 78 */ mr r12, r0
|
||||
/* 803BA4D0 003B7430 41 82 00 1C */ beq lbl_803BA4EC
|
||||
/* 803BA4D4 003B7434 38 00 00 00 */ li r0, 0
|
||||
/* 803BA4D8 003B7438 7D 88 03 A6 */ mtlr r12
|
||||
/* 803BA4DC 003B743C 90 1E 00 D4 */ stw r0, 0xd4(r30)
|
||||
/* 803BA4E0 003B7440 38 7F 00 00 */ addi r3, r31, 0
|
||||
/* 803BA4E4 003B7444 38 9D 00 00 */ addi r4, r29, 0
|
||||
/* 803BA4E8 003B7448 4E 80 00 21 */ blrl
|
||||
lbl_803BA4EC:
|
||||
/* 803BA4EC 003B744C 80 01 00 24 */ lwz r0, 0x24(r1)
|
||||
/* 803BA4F0 003B7450 83 E1 00 1C */ lwz r31, 0x1c(r1)
|
||||
/* 803BA4F4 003B7454 83 C1 00 18 */ lwz r30, 0x18(r1)
|
||||
/* 803BA4F8 003B7458 83 A1 00 14 */ lwz r29, 0x14(r1)
|
||||
/* 803BA4FC 003B745C 38 21 00 20 */ addi r1, r1, 0x20
|
||||
/* 803BA500 003B7460 7C 08 03 A6 */ mtlr r0
|
||||
/* 803BA504 003B7464 4E 80 00 20 */ blr
|
||||
|
||||
.global __CARDWrite
|
||||
__CARDWrite:
|
||||
/* 803BA508 003B7468 7C 08 02 A6 */ mflr r0
|
||||
/* 803BA50C 003B746C 1D 23 01 10 */ mulli r9, r3, 0x110
|
||||
/* 803BA510 003B7470 90 01 00 04 */ stw r0, 4(r1)
|
||||
/* 803BA514 003B7474 3D 00 80 57 */ lis r8, lbl_80569A58@ha
|
||||
/* 803BA518 003B7478 94 21 FF F8 */ stwu r1, -8(r1)
|
||||
/* 803BA51C 003B747C 38 08 9A 58 */ addi r0, r8, lbl_80569A58@l
|
||||
/* 803BA520 003B7480 7D 00 4A 14 */ add r8, r0, r9
|
||||
/* 803BA524 003B7484 80 08 00 00 */ lwz r0, 0(r8)
|
||||
/* 803BA528 003B7488 2C 00 00 00 */ cmpwi r0, 0
|
||||
/* 803BA52C 003B748C 40 82 00 0C */ bne lbl_803BA538
|
||||
/* 803BA530 003B7490 38 60 FF FD */ li r3, -3
|
||||
/* 803BA534 003B7494 48 00 00 28 */ b lbl_803BA55C
|
||||
lbl_803BA538:
|
||||
/* 803BA538 003B7498 90 E8 00 D4 */ stw r7, 0xd4(r8)
|
||||
/* 803BA53C 003B749C 54 A0 C9 FE */ srwi r0, r5, 7
|
||||
/* 803BA540 003B74A0 3C A0 80 3C */ lis r5, BlockWriteCallback@ha
|
||||
/* 803BA544 003B74A4 90 08 00 AC */ stw r0, 0xac(r8)
|
||||
/* 803BA548 003B74A8 38 05 A4 2C */ addi r0, r5, BlockWriteCallback@l
|
||||
/* 803BA54C 003B74AC 90 88 00 B0 */ stw r4, 0xb0(r8)
|
||||
/* 803BA550 003B74B0 7C 04 03 78 */ mr r4, r0
|
||||
/* 803BA554 003B74B4 90 C8 00 B4 */ stw r6, 0xb4(r8)
|
||||
/* 803BA558 003B74B8 4B FF E5 61 */ bl __CARDWritePage
|
||||
lbl_803BA55C:
|
||||
/* 803BA55C 003B74BC 80 01 00 0C */ lwz r0, 0xc(r1)
|
||||
/* 803BA560 003B74C0 38 21 00 08 */ addi r1, r1, 8
|
||||
/* 803BA564 003B74C4 7C 08 03 A6 */ mtlr r0
|
||||
/* 803BA568 003B74C8 4E 80 00 20 */ blr
|
|
@ -0,0 +1,307 @@
|
|||
.include "macros.inc"
|
||||
|
||||
.section .text, "ax"
|
||||
|
||||
.global __CARDSeek
|
||||
__CARDSeek:
|
||||
/* 803BD510 003BA470 7C 08 02 A6 */ mflr r0
|
||||
/* 803BD514 003BA474 90 01 00 04 */ stw r0, 4(r1)
|
||||
/* 803BD518 003BA478 94 21 FF D0 */ stwu r1, -0x30(r1)
|
||||
/* 803BD51C 003BA47C 93 E1 00 2C */ stw r31, 0x2c(r1)
|
||||
/* 803BD520 003BA480 3B E6 00 00 */ addi r31, r6, 0
|
||||
/* 803BD524 003BA484 93 C1 00 28 */ stw r30, 0x28(r1)
|
||||
/* 803BD528 003BA488 3B C5 00 00 */ addi r30, r5, 0
|
||||
/* 803BD52C 003BA48C 93 A1 00 24 */ stw r29, 0x24(r1)
|
||||
/* 803BD530 003BA490 3B A4 00 00 */ addi r29, r4, 0
|
||||
/* 803BD534 003BA494 38 81 00 18 */ addi r4, r1, 0x18
|
||||
/* 803BD538 003BA498 93 81 00 20 */ stw r28, 0x20(r1)
|
||||
/* 803BD53C 003BA49C 7C 7C 1B 78 */ mr r28, r3
|
||||
/* 803BD540 003BA4A0 80 63 00 00 */ lwz r3, 0(r3)
|
||||
/* 803BD544 003BA4A4 4B FF B8 5D */ bl __CARDGetControlBlock
|
||||
/* 803BD548 003BA4A8 2C 03 00 00 */ cmpwi r3, 0
|
||||
/* 803BD54C 003BA4AC 40 80 00 08 */ bge lbl_803BD554
|
||||
/* 803BD550 003BA4B0 48 00 01 58 */ b lbl_803BD6A8
|
||||
lbl_803BD554:
|
||||
/* 803BD554 003BA4B4 A0 1C 00 10 */ lhz r0, 0x10(r28)
|
||||
/* 803BD558 003BA4B8 28 00 00 05 */ cmplwi r0, 5
|
||||
/* 803BD55C 003BA4BC 41 80 00 28 */ blt lbl_803BD584
|
||||
/* 803BD560 003BA4C0 80 61 00 18 */ lwz r3, 0x18(r1)
|
||||
/* 803BD564 003BA4C4 A0 A3 00 10 */ lhz r5, 0x10(r3)
|
||||
/* 803BD568 003BA4C8 7C 00 28 40 */ cmplw r0, r5
|
||||
/* 803BD56C 003BA4CC 40 80 00 18 */ bge lbl_803BD584
|
||||
/* 803BD570 003BA4D0 80 83 00 0C */ lwz r4, 0xc(r3)
|
||||
/* 803BD574 003BA4D4 80 1C 00 08 */ lwz r0, 8(r28)
|
||||
/* 803BD578 003BA4D8 7C 85 21 D6 */ mullw r4, r5, r4
|
||||
/* 803BD57C 003BA4DC 7C 04 00 00 */ cmpw r4, r0
|
||||
/* 803BD580 003BA4E0 41 81 00 14 */ bgt lbl_803BD594
|
||||
lbl_803BD584:
|
||||
/* 803BD584 003BA4E4 80 61 00 18 */ lwz r3, 0x18(r1)
|
||||
/* 803BD588 003BA4E8 38 80 FF 80 */ li r4, -128
|
||||
/* 803BD58C 003BA4EC 4B FF B8 CD */ bl __CARDPutControlBlock
|
||||
/* 803BD590 003BA4F0 48 00 01 18 */ b lbl_803BD6A8
|
||||
lbl_803BD594:
|
||||
/* 803BD594 003BA4F4 4B FF D3 DD */ bl __CARDGetDirBlock
|
||||
/* 803BD598 003BA4F8 80 1C 00 04 */ lwz r0, 4(r28)
|
||||
/* 803BD59C 003BA4FC 80 A1 00 18 */ lwz r5, 0x18(r1)
|
||||
/* 803BD5A0 003BA500 54 00 30 32 */ slwi r0, r0, 6
|
||||
/* 803BD5A4 003BA504 7C 83 02 14 */ add r4, r3, r0
|
||||
/* 803BD5A8 003BA508 80 65 00 0C */ lwz r3, 0xc(r5)
|
||||
/* 803BD5AC 003BA50C A0 04 00 38 */ lhz r0, 0x38(r4)
|
||||
/* 803BD5B0 003BA510 7C 60 19 D6 */ mullw r3, r0, r3
|
||||
/* 803BD5B4 003BA514 7C 03 F0 00 */ cmpw r3, r30
|
||||
/* 803BD5B8 003BA518 40 81 00 10 */ ble lbl_803BD5C8
|
||||
/* 803BD5BC 003BA51C 7C 1E EA 14 */ add r0, r30, r29
|
||||
/* 803BD5C0 003BA520 7C 03 00 00 */ cmpw r3, r0
|
||||
/* 803BD5C4 003BA524 40 80 00 14 */ bge lbl_803BD5D8
|
||||
lbl_803BD5C8:
|
||||
/* 803BD5C8 003BA528 38 65 00 00 */ addi r3, r5, 0
|
||||
/* 803BD5CC 003BA52C 38 80 FF F5 */ li r4, -11
|
||||
/* 803BD5D0 003BA530 4B FF B8 89 */ bl __CARDPutControlBlock
|
||||
/* 803BD5D4 003BA534 48 00 00 D4 */ b lbl_803BD6A8
|
||||
lbl_803BD5D8:
|
||||
/* 803BD5D8 003BA538 93 85 00 C0 */ stw r28, 0xc0(r5)
|
||||
/* 803BD5DC 003BA53C 93 BC 00 0C */ stw r29, 0xc(r28)
|
||||
/* 803BD5E0 003BA540 80 1C 00 08 */ lwz r0, 8(r28)
|
||||
/* 803BD5E4 003BA544 7C 1E 00 00 */ cmpw r30, r0
|
||||
/* 803BD5E8 003BA548 40 80 00 40 */ bge lbl_803BD628
|
||||
/* 803BD5EC 003BA54C 38 00 00 00 */ li r0, 0
|
||||
/* 803BD5F0 003BA550 90 1C 00 08 */ stw r0, 8(r28)
|
||||
/* 803BD5F4 003BA554 A0 04 00 36 */ lhz r0, 0x36(r4)
|
||||
/* 803BD5F8 003BA558 B0 1C 00 10 */ sth r0, 0x10(r28)
|
||||
/* 803BD5FC 003BA55C A0 9C 00 10 */ lhz r4, 0x10(r28)
|
||||
/* 803BD600 003BA560 28 04 00 05 */ cmplwi r4, 5
|
||||
/* 803BD604 003BA564 41 80 00 14 */ blt lbl_803BD618
|
||||
/* 803BD608 003BA568 80 61 00 18 */ lwz r3, 0x18(r1)
|
||||
/* 803BD60C 003BA56C A0 03 00 10 */ lhz r0, 0x10(r3)
|
||||
/* 803BD610 003BA570 7C 04 00 40 */ cmplw r4, r0
|
||||
/* 803BD614 003BA574 41 80 00 14 */ blt lbl_803BD628
|
||||
lbl_803BD618:
|
||||
/* 803BD618 003BA578 80 61 00 18 */ lwz r3, 0x18(r1)
|
||||
/* 803BD61C 003BA57C 38 80 FF FA */ li r4, -6
|
||||
/* 803BD620 003BA580 4B FF B8 39 */ bl __CARDPutControlBlock
|
||||
/* 803BD624 003BA584 48 00 00 84 */ b lbl_803BD6A8
|
||||
lbl_803BD628:
|
||||
/* 803BD628 003BA588 80 61 00 18 */ lwz r3, 0x18(r1)
|
||||
/* 803BD62C 003BA58C 4B FF CF 41 */ bl __CARDGetFatBlock
|
||||
/* 803BD630 003BA590 48 00 00 4C */ b lbl_803BD67C
|
||||
lbl_803BD634:
|
||||
/* 803BD634 003BA594 80 1C 00 08 */ lwz r0, 8(r28)
|
||||
/* 803BD638 003BA598 7C 00 22 14 */ add r0, r0, r4
|
||||
/* 803BD63C 003BA59C 90 1C 00 08 */ stw r0, 8(r28)
|
||||
/* 803BD640 003BA5A0 A0 1C 00 10 */ lhz r0, 0x10(r28)
|
||||
/* 803BD644 003BA5A4 54 00 08 3C */ slwi r0, r0, 1
|
||||
/* 803BD648 003BA5A8 7C 03 02 2E */ lhzx r0, r3, r0
|
||||
/* 803BD64C 003BA5AC B0 1C 00 10 */ sth r0, 0x10(r28)
|
||||
/* 803BD650 003BA5B0 A0 BC 00 10 */ lhz r5, 0x10(r28)
|
||||
/* 803BD654 003BA5B4 28 05 00 05 */ cmplwi r5, 5
|
||||
/* 803BD658 003BA5B8 41 80 00 14 */ blt lbl_803BD66C
|
||||
/* 803BD65C 003BA5BC 80 81 00 18 */ lwz r4, 0x18(r1)
|
||||
/* 803BD660 003BA5C0 A0 04 00 10 */ lhz r0, 0x10(r4)
|
||||
/* 803BD664 003BA5C4 7C 05 00 40 */ cmplw r5, r0
|
||||
/* 803BD668 003BA5C8 41 80 00 14 */ blt lbl_803BD67C
|
||||
lbl_803BD66C:
|
||||
/* 803BD66C 003BA5CC 80 61 00 18 */ lwz r3, 0x18(r1)
|
||||
/* 803BD670 003BA5D0 38 80 FF FA */ li r4, -6
|
||||
/* 803BD674 003BA5D4 4B FF B7 E5 */ bl __CARDPutControlBlock
|
||||
/* 803BD678 003BA5D8 48 00 00 30 */ b lbl_803BD6A8
|
||||
lbl_803BD67C:
|
||||
/* 803BD67C 003BA5DC 80 81 00 18 */ lwz r4, 0x18(r1)
|
||||
/* 803BD680 003BA5E0 80 BC 00 08 */ lwz r5, 8(r28)
|
||||
/* 803BD684 003BA5E4 80 84 00 0C */ lwz r4, 0xc(r4)
|
||||
/* 803BD688 003BA5E8 38 04 FF FF */ addi r0, r4, -1
|
||||
/* 803BD68C 003BA5EC 7F C0 00 78 */ andc r0, r30, r0
|
||||
/* 803BD690 003BA5F0 7C 05 00 40 */ cmplw r5, r0
|
||||
/* 803BD694 003BA5F4 41 80 FF A0 */ blt lbl_803BD634
|
||||
/* 803BD698 003BA5F8 93 DC 00 08 */ stw r30, 8(r28)
|
||||
/* 803BD69C 003BA5FC 38 60 00 00 */ li r3, 0
|
||||
/* 803BD6A0 003BA600 80 01 00 18 */ lwz r0, 0x18(r1)
|
||||
/* 803BD6A4 003BA604 90 1F 00 00 */ stw r0, 0(r31)
|
||||
lbl_803BD6A8:
|
||||
/* 803BD6A8 003BA608 80 01 00 34 */ lwz r0, 0x34(r1)
|
||||
/* 803BD6AC 003BA60C 83 E1 00 2C */ lwz r31, 0x2c(r1)
|
||||
/* 803BD6B0 003BA610 83 C1 00 28 */ lwz r30, 0x28(r1)
|
||||
/* 803BD6B4 003BA614 83 A1 00 24 */ lwz r29, 0x24(r1)
|
||||
/* 803BD6B8 003BA618 83 81 00 20 */ lwz r28, 0x20(r1)
|
||||
/* 803BD6BC 003BA61C 38 21 00 30 */ addi r1, r1, 0x30
|
||||
/* 803BD6C0 003BA620 7C 08 03 A6 */ mtlr r0
|
||||
/* 803BD6C4 003BA624 4E 80 00 20 */ blr
|
||||
|
||||
ReadCallback:
|
||||
/* 803BD6C8 003BA628 7C 08 02 A6 */ mflr r0
|
||||
/* 803BD6CC 003BA62C 90 01 00 04 */ stw r0, 4(r1)
|
||||
/* 803BD6D0 003BA630 94 21 FF D8 */ stwu r1, -0x28(r1)
|
||||
/* 803BD6D4 003BA634 BF 61 00 14 */ stmw r27, 0x14(r1)
|
||||
/* 803BD6D8 003BA638 3B A3 00 00 */ addi r29, r3, 0
|
||||
/* 803BD6DC 003BA63C 3C 60 80 57 */ lis r3, lbl_80569A58@ha
|
||||
/* 803BD6E0 003BA640 1C BD 01 10 */ mulli r5, r29, 0x110
|
||||
/* 803BD6E4 003BA644 38 03 9A 58 */ addi r0, r3, lbl_80569A58@l
|
||||
/* 803BD6E8 003BA648 7C 9E 23 79 */ or. r30, r4, r4
|
||||
/* 803BD6EC 003BA64C 7F E0 2A 14 */ add r31, r0, r5
|
||||
/* 803BD6F0 003BA650 41 80 00 C8 */ blt lbl_803BD7B8
|
||||
/* 803BD6F4 003BA654 83 9F 00 C0 */ lwz r28, 0xc0(r31)
|
||||
/* 803BD6F8 003BA658 80 9C 00 0C */ lwz r4, 0xc(r28)
|
||||
/* 803BD6FC 003BA65C 2C 04 00 00 */ cmpwi r4, 0
|
||||
/* 803BD700 003BA660 40 80 00 0C */ bge lbl_803BD70C
|
||||
/* 803BD704 003BA664 3B C0 FF F2 */ li r30, -14
|
||||
/* 803BD708 003BA668 48 00 00 B0 */ b lbl_803BD7B8
|
||||
lbl_803BD70C:
|
||||
/* 803BD70C 003BA66C 80 BF 00 0C */ lwz r5, 0xc(r31)
|
||||
/* 803BD710 003BA670 80 DC 00 08 */ lwz r6, 8(r28)
|
||||
/* 803BD714 003BA674 38 05 FF FF */ addi r0, r5, -1
|
||||
/* 803BD718 003BA678 7C 03 00 F8 */ nor r3, r0, r0
|
||||
/* 803BD71C 003BA67C 7C 06 2A 14 */ add r0, r6, r5
|
||||
/* 803BD720 003BA680 7C 60 00 38 */ and r0, r3, r0
|
||||
/* 803BD724 003BA684 7F 66 00 50 */ subf r27, r6, r0
|
||||
/* 803BD728 003BA688 7C 1B 20 50 */ subf r0, r27, r4
|
||||
/* 803BD72C 003BA68C 90 1C 00 0C */ stw r0, 0xc(r28)
|
||||
/* 803BD730 003BA690 80 1C 00 0C */ lwz r0, 0xc(r28)
|
||||
/* 803BD734 003BA694 2C 00 00 00 */ cmpwi r0, 0
|
||||
/* 803BD738 003BA698 40 81 00 80 */ ble lbl_803BD7B8
|
||||
/* 803BD73C 003BA69C 7F E3 FB 78 */ mr r3, r31
|
||||
/* 803BD740 003BA6A0 4B FF CE 2D */ bl __CARDGetFatBlock
|
||||
/* 803BD744 003BA6A4 80 1C 00 08 */ lwz r0, 8(r28)
|
||||
/* 803BD748 003BA6A8 7C 00 DA 14 */ add r0, r0, r27
|
||||
/* 803BD74C 003BA6AC 90 1C 00 08 */ stw r0, 8(r28)
|
||||
/* 803BD750 003BA6B0 A0 1C 00 10 */ lhz r0, 0x10(r28)
|
||||
/* 803BD754 003BA6B4 54 00 08 3C */ slwi r0, r0, 1
|
||||
/* 803BD758 003BA6B8 7C 03 02 2E */ lhzx r0, r3, r0
|
||||
/* 803BD75C 003BA6BC B0 1C 00 10 */ sth r0, 0x10(r28)
|
||||
/* 803BD760 003BA6C0 A0 7C 00 10 */ lhz r3, 0x10(r28)
|
||||
/* 803BD764 003BA6C4 28 03 00 05 */ cmplwi r3, 5
|
||||
/* 803BD768 003BA6C8 41 80 00 10 */ blt lbl_803BD778
|
||||
/* 803BD76C 003BA6CC A0 1F 00 10 */ lhz r0, 0x10(r31)
|
||||
/* 803BD770 003BA6D0 7C 03 00 40 */ cmplw r3, r0
|
||||
/* 803BD774 003BA6D4 41 80 00 0C */ blt lbl_803BD780
|
||||
lbl_803BD778:
|
||||
/* 803BD778 003BA6D8 3B C0 FF FA */ li r30, -6
|
||||
/* 803BD77C 003BA6DC 48 00 00 3C */ b lbl_803BD7B8
|
||||
lbl_803BD780:
|
||||
/* 803BD780 003BA6E0 80 BC 00 0C */ lwz r5, 0xc(r28)
|
||||
/* 803BD784 003BA6E4 80 1F 00 0C */ lwz r0, 0xc(r31)
|
||||
/* 803BD788 003BA6E8 7C 05 00 00 */ cmpw r5, r0
|
||||
/* 803BD78C 003BA6EC 40 80 00 08 */ bge lbl_803BD794
|
||||
/* 803BD790 003BA6F0 48 00 00 08 */ b lbl_803BD798
|
||||
lbl_803BD794:
|
||||
/* 803BD794 003BA6F4 7C 05 03 78 */ mr r5, r0
|
||||
lbl_803BD798:
|
||||
/* 803BD798 003BA6F8 7C 80 19 D6 */ mullw r4, r0, r3
|
||||
/* 803BD79C 003BA6FC 80 DF 00 B4 */ lwz r6, 0xb4(r31)
|
||||
/* 803BD7A0 003BA700 3C 60 80 3C */ lis r3, ReadCallback@ha
|
||||
/* 803BD7A4 003BA704 38 E3 D6 C8 */ addi r7, r3, ReadCallback@l
|
||||
/* 803BD7A8 003BA708 38 7D 00 00 */ addi r3, r29, 0
|
||||
/* 803BD7AC 003BA70C 4B FF CC 1D */ bl __CARDRead
|
||||
/* 803BD7B0 003BA710 7C 7E 1B 79 */ or. r30, r3, r3
|
||||
/* 803BD7B4 003BA714 40 80 00 30 */ bge lbl_803BD7E4
|
||||
lbl_803BD7B8:
|
||||
/* 803BD7B8 003BA718 83 7F 00 D0 */ lwz r27, 0xd0(r31)
|
||||
/* 803BD7BC 003BA71C 38 00 00 00 */ li r0, 0
|
||||
/* 803BD7C0 003BA720 38 7F 00 00 */ addi r3, r31, 0
|
||||
/* 803BD7C4 003BA724 90 1F 00 D0 */ stw r0, 0xd0(r31)
|
||||
/* 803BD7C8 003BA728 7F C4 F3 78 */ mr r4, r30
|
||||
/* 803BD7CC 003BA72C 4B FF B6 8D */ bl __CARDPutControlBlock
|
||||
/* 803BD7D0 003BA730 39 9B 00 00 */ addi r12, r27, 0
|
||||
/* 803BD7D4 003BA734 7D 88 03 A6 */ mtlr r12
|
||||
/* 803BD7D8 003BA738 38 7D 00 00 */ addi r3, r29, 0
|
||||
/* 803BD7DC 003BA73C 38 9E 00 00 */ addi r4, r30, 0
|
||||
/* 803BD7E0 003BA740 4E 80 00 21 */ blrl
|
||||
lbl_803BD7E4:
|
||||
/* 803BD7E4 003BA744 BB 61 00 14 */ lmw r27, 0x14(r1)
|
||||
/* 803BD7E8 003BA748 80 01 00 2C */ lwz r0, 0x2c(r1)
|
||||
/* 803BD7EC 003BA74C 38 21 00 28 */ addi r1, r1, 0x28
|
||||
/* 803BD7F0 003BA750 7C 08 03 A6 */ mtlr r0
|
||||
/* 803BD7F4 003BA754 4E 80 00 20 */ blr
|
||||
|
||||
.global CARDReadAsync
|
||||
CARDReadAsync:
|
||||
/* 803BD7F8 003BA758 7C 08 02 A6 */ mflr r0
|
||||
/* 803BD7FC 003BA75C 90 01 00 04 */ stw r0, 4(r1)
|
||||
/* 803BD800 003BA760 54 C0 05 FF */ clrlwi. r0, r6, 0x17
|
||||
/* 803BD804 003BA764 94 21 FF C8 */ stwu r1, -0x38(r1)
|
||||
/* 803BD808 003BA768 BF 61 00 24 */ stmw r27, 0x24(r1)
|
||||
/* 803BD80C 003BA76C 3B A3 00 00 */ addi r29, r3, 0
|
||||
/* 803BD810 003BA770 3B C4 00 00 */ addi r30, r4, 0
|
||||
/* 803BD814 003BA774 3B E5 00 00 */ addi r31, r5, 0
|
||||
/* 803BD818 003BA778 3B 67 00 00 */ addi r27, r7, 0
|
||||
/* 803BD81C 003BA77C 40 82 00 0C */ bne lbl_803BD828
|
||||
/* 803BD820 003BA780 57 E0 05 FF */ clrlwi. r0, r31, 0x17
|
||||
/* 803BD824 003BA784 41 82 00 0C */ beq lbl_803BD830
|
||||
lbl_803BD828:
|
||||
/* 803BD828 003BA788 38 60 FF 80 */ li r3, -128
|
||||
/* 803BD82C 003BA78C 48 00 01 00 */ b lbl_803BD92C
|
||||
lbl_803BD830:
|
||||
/* 803BD830 003BA790 38 7D 00 00 */ addi r3, r29, 0
|
||||
/* 803BD834 003BA794 38 9F 00 00 */ addi r4, r31, 0
|
||||
/* 803BD838 003BA798 38 A6 00 00 */ addi r5, r6, 0
|
||||
/* 803BD83C 003BA79C 38 C1 00 1C */ addi r6, r1, 0x1c
|
||||
/* 803BD840 003BA7A0 4B FF FC D1 */ bl __CARDSeek
|
||||
/* 803BD844 003BA7A4 2C 03 00 00 */ cmpwi r3, 0
|
||||
/* 803BD848 003BA7A8 40 80 00 08 */ bge lbl_803BD850
|
||||
/* 803BD84C 003BA7AC 48 00 00 E0 */ b lbl_803BD92C
|
||||
lbl_803BD850:
|
||||
/* 803BD850 003BA7B0 80 61 00 1C */ lwz r3, 0x1c(r1)
|
||||
/* 803BD854 003BA7B4 4B FF D1 1D */ bl __CARDGetDirBlock
|
||||
/* 803BD858 003BA7B8 80 1D 00 04 */ lwz r0, 4(r29)
|
||||
/* 803BD85C 003BA7BC 54 00 30 32 */ slwi r0, r0, 6
|
||||
/* 803BD860 003BA7C0 7F 83 02 14 */ add r28, r3, r0
|
||||
/* 803BD864 003BA7C4 80 61 00 1C */ lwz r3, 0x1c(r1)
|
||||
/* 803BD868 003BA7C8 7F 84 E3 78 */ mr r4, r28
|
||||
/* 803BD86C 003BA7CC 4B FF F5 69 */ bl __CARDAccess
|
||||
/* 803BD870 003BA7D0 38 83 00 00 */ addi r4, r3, 0
|
||||
/* 803BD874 003BA7D4 2C 04 FF F6 */ cmpwi r4, -10
|
||||
/* 803BD878 003BA7D8 40 82 00 10 */ bne lbl_803BD888
|
||||
/* 803BD87C 003BA7DC 7F 83 E3 78 */ mr r3, r28
|
||||
/* 803BD880 003BA7E0 4B FF F5 ED */ bl sub_803bce6c
|
||||
/* 803BD884 003BA7E4 7C 64 1B 78 */ mr r4, r3
|
||||
lbl_803BD888:
|
||||
/* 803BD888 003BA7E8 2C 04 00 00 */ cmpwi r4, 0
|
||||
/* 803BD88C 003BA7EC 40 80 00 10 */ bge lbl_803BD89C
|
||||
/* 803BD890 003BA7F0 80 61 00 1C */ lwz r3, 0x1c(r1)
|
||||
/* 803BD894 003BA7F4 4B FF B5 C5 */ bl __CARDPutControlBlock
|
||||
/* 803BD898 003BA7F8 48 00 00 94 */ b lbl_803BD92C
|
||||
lbl_803BD89C:
|
||||
/* 803BD89C 003BA7FC 38 7E 00 00 */ addi r3, r30, 0
|
||||
/* 803BD8A0 003BA800 38 9F 00 00 */ addi r4, r31, 0
|
||||
/* 803BD8A4 003BA804 4B FC 11 E1 */ bl DCInvalidateRange
|
||||
/* 803BD8A8 003BA808 28 1B 00 00 */ cmplwi r27, 0
|
||||
/* 803BD8AC 003BA80C 41 82 00 0C */ beq lbl_803BD8B8
|
||||
/* 803BD8B0 003BA810 7F 60 DB 78 */ mr r0, r27
|
||||
/* 803BD8B4 003BA814 48 00 00 0C */ b lbl_803BD8C0
|
||||
lbl_803BD8B8:
|
||||
/* 803BD8B8 003BA818 3C 60 80 3B */ lis r3, __CARDDefaultApiCallback@ha
|
||||
/* 803BD8BC 003BA81C 38 03 7E 74 */ addi r0, r3, __CARDDefaultApiCallback@l
|
||||
lbl_803BD8C0:
|
||||
/* 803BD8C0 003BA820 80 61 00 1C */ lwz r3, 0x1c(r1)
|
||||
/* 803BD8C4 003BA824 90 03 00 D0 */ stw r0, 0xd0(r3)
|
||||
/* 803BD8C8 003BA828 80 61 00 1C */ lwz r3, 0x1c(r1)
|
||||
/* 803BD8CC 003BA82C 80 9D 00 08 */ lwz r4, 8(r29)
|
||||
/* 803BD8D0 003BA830 80 A3 00 0C */ lwz r5, 0xc(r3)
|
||||
/* 803BD8D4 003BA834 38 05 FF FF */ addi r0, r5, -1
|
||||
/* 803BD8D8 003BA838 7C 88 00 38 */ and r8, r4, r0
|
||||
/* 803BD8DC 003BA83C 7C 68 28 50 */ subf r3, r8, r5
|
||||
/* 803BD8E0 003BA840 7C 1F 18 00 */ cmpw r31, r3
|
||||
/* 803BD8E4 003BA844 40 80 00 08 */ bge lbl_803BD8EC
|
||||
/* 803BD8E8 003BA848 7F E3 FB 78 */ mr r3, r31
|
||||
lbl_803BD8EC:
|
||||
/* 803BD8EC 003BA84C A0 1D 00 10 */ lhz r0, 0x10(r29)
|
||||
/* 803BD8F0 003BA850 3C 80 80 3C */ lis r4, ReadCallback@ha
|
||||
/* 803BD8F4 003BA854 3B E3 00 00 */ addi r31, r3, 0
|
||||
/* 803BD8F8 003BA858 80 7D 00 00 */ lwz r3, 0(r29)
|
||||
/* 803BD8FC 003BA85C 7C 05 01 D6 */ mullw r0, r5, r0
|
||||
/* 803BD900 003BA860 38 E4 D6 C8 */ addi r7, r4, ReadCallback@l
|
||||
/* 803BD904 003BA864 38 BF 00 00 */ addi r5, r31, 0
|
||||
/* 803BD908 003BA868 38 DE 00 00 */ addi r6, r30, 0
|
||||
/* 803BD90C 003BA86C 7C 88 02 14 */ add r4, r8, r0
|
||||
/* 803BD910 003BA870 4B FF CA B9 */ bl __CARDRead
|
||||
/* 803BD914 003BA874 7C 7D 1B 79 */ or. r29, r3, r3
|
||||
/* 803BD918 003BA878 40 80 00 10 */ bge lbl_803BD928
|
||||
/* 803BD91C 003BA87C 80 61 00 1C */ lwz r3, 0x1c(r1)
|
||||
/* 803BD920 003BA880 7F A4 EB 78 */ mr r4, r29
|
||||
/* 803BD924 003BA884 4B FF B5 35 */ bl __CARDPutControlBlock
|
||||
lbl_803BD928:
|
||||
/* 803BD928 003BA888 7F A3 EB 78 */ mr r3, r29
|
||||
lbl_803BD92C:
|
||||
/* 803BD92C 003BA88C BB 61 00 24 */ lmw r27, 0x24(r1)
|
||||
/* 803BD930 003BA890 80 01 00 3C */ lwz r0, 0x3c(r1)
|
||||
/* 803BD934 003BA894 38 21 00 38 */ addi r1, r1, 0x38
|
||||
/* 803BD938 003BA898 7C 08 03 A6 */ mtlr r0
|
||||
/* 803BD93C 003BA89C 4E 80 00 20 */ blr
|
|
@ -0,0 +1,146 @@
|
|||
.include "macros.inc"
|
||||
|
||||
.section .text, "ax"
|
||||
|
||||
.global CARDRenameAsync
|
||||
CARDRenameAsync:
|
||||
/* 803BE3EC 003BB34C 7C 08 02 A6 */ mflr r0
|
||||
/* 803BE3F0 003BB350 90 01 00 04 */ stw r0, 4(r1)
|
||||
/* 803BE3F4 003BB354 94 21 FF B8 */ stwu r1, -0x48(r1)
|
||||
/* 803BE3F8 003BB358 BE E1 00 24 */ stmw r23, 0x24(r1)
|
||||
/* 803BE3FC 003BB35C 7C 9D 23 78 */ mr r29, r4
|
||||
/* 803BE400 003BB360 3B 83 00 00 */ addi r28, r3, 0
|
||||
/* 803BE404 003BB364 3B C5 00 00 */ addi r30, r5, 0
|
||||
/* 803BE408 003BB368 3B E6 00 00 */ addi r31, r6, 0
|
||||
/* 803BE40C 003BB36C 88 84 00 00 */ lbz r4, 0(r4)
|
||||
/* 803BE410 003BB370 7C 80 07 74 */ extsb r0, r4
|
||||
/* 803BE414 003BB374 2C 00 00 FF */ cmpwi r0, 0xff
|
||||
/* 803BE418 003BB378 41 82 00 24 */ beq lbl_803BE43C
|
||||
/* 803BE41C 003BB37C 88 7E 00 00 */ lbz r3, 0(r30)
|
||||
/* 803BE420 003BB380 7C 60 07 74 */ extsb r0, r3
|
||||
/* 803BE424 003BB384 2C 00 00 FF */ cmpwi r0, 0xff
|
||||
/* 803BE428 003BB388 41 82 00 14 */ beq lbl_803BE43C
|
||||
/* 803BE42C 003BB38C 7C 80 07 75 */ extsb. r0, r4
|
||||
/* 803BE430 003BB390 41 82 00 0C */ beq lbl_803BE43C
|
||||
/* 803BE434 003BB394 7C 60 07 75 */ extsb. r0, r3
|
||||
/* 803BE438 003BB398 40 82 00 0C */ bne lbl_803BE444
|
||||
lbl_803BE43C:
|
||||
/* 803BE43C 003BB39C 38 60 FF 80 */ li r3, -128
|
||||
/* 803BE440 003BB3A0 48 00 01 94 */ b lbl_803BE5D4
|
||||
lbl_803BE444:
|
||||
/* 803BE444 003BB3A4 7F A3 EB 78 */ mr r3, r29
|
||||
/* 803BE448 003BB3A8 4B FD 1D 79 */ bl strlen
|
||||
/* 803BE44C 003BB3AC 28 03 00 20 */ cmplwi r3, 0x20
|
||||
/* 803BE450 003BB3B0 41 81 00 14 */ bgt lbl_803BE464
|
||||
/* 803BE454 003BB3B4 7F C3 F3 78 */ mr r3, r30
|
||||
/* 803BE458 003BB3B8 4B FD 1D 69 */ bl strlen
|
||||
/* 803BE45C 003BB3BC 28 03 00 20 */ cmplwi r3, 0x20
|
||||
/* 803BE460 003BB3C0 40 81 00 0C */ ble lbl_803BE46C
|
||||
lbl_803BE464:
|
||||
/* 803BE464 003BB3C4 38 60 FF F4 */ li r3, -12
|
||||
/* 803BE468 003BB3C8 48 00 01 6C */ b lbl_803BE5D4
|
||||
lbl_803BE46C:
|
||||
/* 803BE46C 003BB3CC 38 7C 00 00 */ addi r3, r28, 0
|
||||
/* 803BE470 003BB3D0 38 81 00 18 */ addi r4, r1, 0x18
|
||||
/* 803BE474 003BB3D4 4B FF A9 2D */ bl __CARDGetControlBlock
|
||||
/* 803BE478 003BB3D8 2C 03 00 00 */ cmpwi r3, 0
|
||||
/* 803BE47C 003BB3DC 40 80 00 08 */ bge lbl_803BE484
|
||||
/* 803BE480 003BB3E0 48 00 01 54 */ b lbl_803BE5D4
|
||||
lbl_803BE484:
|
||||
/* 803BE484 003BB3E4 80 61 00 18 */ lwz r3, 0x18(r1)
|
||||
/* 803BE488 003BB3E8 3A E0 FF FF */ li r23, -1
|
||||
/* 803BE48C 003BB3EC 3B 00 FF FF */ li r24, -1
|
||||
/* 803BE490 003BB3F0 4B FF C4 E1 */ bl __CARDGetDirBlock
|
||||
/* 803BE494 003BB3F4 3B 43 00 00 */ addi r26, r3, 0
|
||||
/* 803BE498 003BB3F8 3B 7A 00 00 */ addi r27, r26, 0
|
||||
/* 803BE49C 003BB3FC 3B 20 00 00 */ li r25, 0
|
||||
lbl_803BE4A0:
|
||||
/* 803BE4A0 003BB400 88 1B 00 00 */ lbz r0, 0(r27)
|
||||
/* 803BE4A4 003BB404 28 00 00 FF */ cmplwi r0, 0xff
|
||||
/* 803BE4A8 003BB408 41 82 00 70 */ beq lbl_803BE518
|
||||
/* 803BE4AC 003BB40C 80 81 00 18 */ lwz r4, 0x18(r1)
|
||||
/* 803BE4B0 003BB410 38 7B 00 00 */ addi r3, r27, 0
|
||||
/* 803BE4B4 003BB414 38 A0 00 04 */ li r5, 4
|
||||
/* 803BE4B8 003BB418 80 84 01 0C */ lwz r4, 0x10c(r4)
|
||||
/* 803BE4BC 003BB41C 4B FC F3 C1 */ bl memcmp
|
||||
/* 803BE4C0 003BB420 2C 03 00 00 */ cmpwi r3, 0
|
||||
/* 803BE4C4 003BB424 40 82 00 54 */ bne lbl_803BE518
|
||||
/* 803BE4C8 003BB428 80 81 00 18 */ lwz r4, 0x18(r1)
|
||||
/* 803BE4CC 003BB42C 38 7B 00 04 */ addi r3, r27, 4
|
||||
/* 803BE4D0 003BB430 38 A0 00 02 */ li r5, 2
|
||||
/* 803BE4D4 003BB434 80 84 01 0C */ lwz r4, 0x10c(r4)
|
||||
/* 803BE4D8 003BB438 38 84 00 04 */ addi r4, r4, 4
|
||||
/* 803BE4DC 003BB43C 4B FC F3 A1 */ bl memcmp
|
||||
/* 803BE4E0 003BB440 2C 03 00 00 */ cmpwi r3, 0
|
||||
/* 803BE4E4 003BB444 40 82 00 34 */ bne lbl_803BE518
|
||||
/* 803BE4E8 003BB448 38 7B 00 00 */ addi r3, r27, 0
|
||||
/* 803BE4EC 003BB44C 38 9D 00 00 */ addi r4, r29, 0
|
||||
/* 803BE4F0 003BB450 4B FF E8 7D */ bl __CARDCompareFileName
|
||||
/* 803BE4F4 003BB454 2C 03 00 00 */ cmpwi r3, 0
|
||||
/* 803BE4F8 003BB458 41 82 00 08 */ beq lbl_803BE500
|
||||
/* 803BE4FC 003BB45C 7F 37 CB 78 */ mr r23, r25
|
||||
lbl_803BE500:
|
||||
/* 803BE500 003BB460 38 7B 00 00 */ addi r3, r27, 0
|
||||
/* 803BE504 003BB464 38 9E 00 00 */ addi r4, r30, 0
|
||||
/* 803BE508 003BB468 4B FF E8 65 */ bl __CARDCompareFileName
|
||||
/* 803BE50C 003BB46C 2C 03 00 00 */ cmpwi r3, 0
|
||||
/* 803BE510 003BB470 41 82 00 08 */ beq lbl_803BE518
|
||||
/* 803BE514 003BB474 7F 38 CB 78 */ mr r24, r25
|
||||
lbl_803BE518:
|
||||
/* 803BE518 003BB478 3B 39 00 01 */ addi r25, r25, 1
|
||||
/* 803BE51C 003BB47C 2C 19 00 7F */ cmpwi r25, 0x7f
|
||||
/* 803BE520 003BB480 3B 7B 00 40 */ addi r27, r27, 0x40
|
||||
/* 803BE524 003BB484 41 80 FF 7C */ blt lbl_803BE4A0
|
||||
/* 803BE528 003BB488 2C 17 FF FF */ cmpwi r23, -1
|
||||
/* 803BE52C 003BB48C 40 82 00 14 */ bne lbl_803BE540
|
||||
/* 803BE530 003BB490 80 61 00 18 */ lwz r3, 0x18(r1)
|
||||
/* 803BE534 003BB494 38 80 FF FC */ li r4, -4
|
||||
/* 803BE538 003BB498 4B FF A9 21 */ bl __CARDPutControlBlock
|
||||
/* 803BE53C 003BB49C 48 00 00 98 */ b lbl_803BE5D4
|
||||
lbl_803BE540:
|
||||
/* 803BE540 003BB4A0 2C 18 FF FF */ cmpwi r24, -1
|
||||
/* 803BE544 003BB4A4 41 82 00 14 */ beq lbl_803BE558
|
||||
/* 803BE548 003BB4A8 80 61 00 18 */ lwz r3, 0x18(r1)
|
||||
/* 803BE54C 003BB4AC 38 80 FF F9 */ li r4, -7
|
||||
/* 803BE550 003BB4B0 4B FF A9 09 */ bl __CARDPutControlBlock
|
||||
/* 803BE554 003BB4B4 48 00 00 80 */ b lbl_803BE5D4
|
||||
lbl_803BE558:
|
||||
/* 803BE558 003BB4B8 56 E0 30 32 */ slwi r0, r23, 6
|
||||
/* 803BE55C 003BB4BC 80 61 00 18 */ lwz r3, 0x18(r1)
|
||||
/* 803BE560 003BB4C0 7F 7A 02 14 */ add r27, r26, r0
|
||||
/* 803BE564 003BB4C4 38 9B 00 00 */ addi r4, r27, 0
|
||||
/* 803BE568 003BB4C8 4B FF E8 6D */ bl __CARDAccess
|
||||
/* 803BE56C 003BB4CC 7C 64 1B 79 */ or. r4, r3, r3
|
||||
/* 803BE570 003BB4D0 40 80 00 10 */ bge lbl_803BE580
|
||||
/* 803BE574 003BB4D4 80 61 00 18 */ lwz r3, 0x18(r1)
|
||||
/* 803BE578 003BB4D8 4B FF A8 E1 */ bl __CARDPutControlBlock
|
||||
/* 803BE57C 003BB4DC 48 00 00 58 */ b lbl_803BE5D4
|
||||
lbl_803BE580:
|
||||
/* 803BE580 003BB4E0 38 9E 00 00 */ addi r4, r30, 0
|
||||
/* 803BE584 003BB4E4 38 7B 00 08 */ addi r3, r27, 8
|
||||
/* 803BE588 003BB4E8 38 A0 00 20 */ li r5, 0x20
|
||||
/* 803BE58C 003BB4EC 4B FD 1B 39 */ bl strncpy
|
||||
/* 803BE590 003BB4F0 3C 60 80 00 */ lis r3, 0x800000F8@ha
|
||||
/* 803BE594 003BB4F4 80 03 00 F8 */ lwz r0, 0x800000F8@l(r3)
|
||||
/* 803BE598 003BB4F8 54 1D F0 BE */ srwi r29, r0, 2
|
||||
/* 803BE59C 003BB4FC 4B FC 6E 0D */ bl OSGetTime
|
||||
/* 803BE5A0 003BB500 38 DD 00 00 */ addi r6, r29, 0
|
||||
/* 803BE5A4 003BB504 38 A0 00 00 */ li r5, 0
|
||||
/* 803BE5A8 003BB508 4B FC B6 25 */ bl __div2i
|
||||
/* 803BE5AC 003BB50C 90 9B 00 28 */ stw r4, 0x28(r27)
|
||||
/* 803BE5B0 003BB510 38 7C 00 00 */ addi r3, r28, 0
|
||||
/* 803BE5B4 003BB514 38 9F 00 00 */ addi r4, r31, 0
|
||||
/* 803BE5B8 003BB518 4B FF C5 59 */ bl __CARDUpdateDir
|
||||
/* 803BE5BC 003BB51C 7C 7B 1B 79 */ or. r27, r3, r3
|
||||
/* 803BE5C0 003BB520 40 80 00 10 */ bge lbl_803BE5D0
|
||||
/* 803BE5C4 003BB524 80 61 00 18 */ lwz r3, 0x18(r1)
|
||||
/* 803BE5C8 003BB528 7F 64 DB 78 */ mr r4, r27
|
||||
/* 803BE5CC 003BB52C 4B FF A8 8D */ bl __CARDPutControlBlock
|
||||
lbl_803BE5D0:
|
||||
/* 803BE5D0 003BB530 7F 63 DB 78 */ mr r3, r27
|
||||
lbl_803BE5D4:
|
||||
/* 803BE5D4 003BB534 BA E1 00 24 */ lmw r23, 0x24(r1)
|
||||
/* 803BE5D8 003BB538 80 01 00 4C */ lwz r0, 0x4c(r1)
|
||||
/* 803BE5DC 003BB53C 38 21 00 48 */ addi r1, r1, 0x48
|
||||
/* 803BE5E0 003BB540 7C 08 03 A6 */ mtlr r0
|
||||
/* 803BE5E4 003BB544 4E 80 00 20 */ blr
|
|
@ -0,0 +1,345 @@
|
|||
.include "macros.inc"
|
||||
|
||||
.section .text, "ax"
|
||||
|
||||
.global UpdateIconOffsets
|
||||
UpdateIconOffsets:
|
||||
/* 803BDF54 003BAEB4 81 03 00 2C */ lwz r8, 0x2c(r3)
|
||||
/* 803BDF58 003BAEB8 3C 08 00 01 */ addis r0, r8, 1
|
||||
/* 803BDF5C 003BAEBC 28 00 FF FF */ cmplwi r0, 0xffff
|
||||
/* 803BDF60 003BAEC0 40 82 00 18 */ bne lbl_803BDF78
|
||||
/* 803BDF64 003BAEC4 38 00 00 00 */ li r0, 0
|
||||
/* 803BDF68 003BAEC8 98 04 00 2E */ stb r0, 0x2e(r4)
|
||||
/* 803BDF6C 003BAECC 39 00 00 00 */ li r8, 0
|
||||
/* 803BDF70 003BAED0 B0 04 00 34 */ sth r0, 0x34(r4)
|
||||
/* 803BDF74 003BAED4 B0 04 00 36 */ sth r0, 0x36(r4)
|
||||
lbl_803BDF78:
|
||||
/* 803BDF78 003BAED8 88 03 00 07 */ lbz r0, 7(r3)
|
||||
/* 803BDF7C 003BAEDC 39 20 00 00 */ li r9, 0
|
||||
/* 803BDF80 003BAEE0 54 00 07 BE */ clrlwi r0, r0, 0x1e
|
||||
/* 803BDF84 003BAEE4 2C 00 00 02 */ cmpwi r0, 2
|
||||
/* 803BDF88 003BAEE8 41 82 00 28 */ beq lbl_803BDFB0
|
||||
/* 803BDF8C 003BAEEC 40 80 00 38 */ bge lbl_803BDFC4
|
||||
/* 803BDF90 003BAEF0 2C 00 00 01 */ cmpwi r0, 1
|
||||
/* 803BDF94 003BAEF4 40 80 00 08 */ bge lbl_803BDF9C
|
||||
/* 803BDF98 003BAEF8 48 00 00 2C */ b lbl_803BDFC4
|
||||
lbl_803BDF9C:
|
||||
/* 803BDF9C 003BAEFC 91 04 00 3C */ stw r8, 0x3c(r4)
|
||||
/* 803BDFA0 003BAF00 38 08 0C 00 */ addi r0, r8, 0xc00
|
||||
/* 803BDFA4 003BAF04 39 08 0E 00 */ addi r8, r8, 0xe00
|
||||
/* 803BDFA8 003BAF08 90 04 00 40 */ stw r0, 0x40(r4)
|
||||
/* 803BDFAC 003BAF0C 48 00 00 24 */ b lbl_803BDFD0
|
||||
lbl_803BDFB0:
|
||||
/* 803BDFB0 003BAF10 91 04 00 3C */ stw r8, 0x3c(r4)
|
||||
/* 803BDFB4 003BAF14 38 00 FF FF */ li r0, -1
|
||||
/* 803BDFB8 003BAF18 39 08 18 00 */ addi r8, r8, 0x1800
|
||||
/* 803BDFBC 003BAF1C 90 04 00 40 */ stw r0, 0x40(r4)
|
||||
/* 803BDFC0 003BAF20 48 00 00 10 */ b lbl_803BDFD0
|
||||
lbl_803BDFC4:
|
||||
/* 803BDFC4 003BAF24 38 00 FF FF */ li r0, -1
|
||||
/* 803BDFC8 003BAF28 90 04 00 3C */ stw r0, 0x3c(r4)
|
||||
/* 803BDFCC 003BAF2C 90 04 00 40 */ stw r0, 0x40(r4)
|
||||
lbl_803BDFD0:
|
||||
/* 803BDFD0 003BAF30 38 00 00 02 */ li r0, 2
|
||||
/* 803BDFD4 003BAF34 7C 09 03 A6 */ mtctr r0
|
||||
/* 803BDFD8 003BAF38 38 E4 00 00 */ addi r7, r4, 0
|
||||
/* 803BDFDC 003BAF3C 39 40 00 00 */ li r10, 0
|
||||
/* 803BDFE0 003BAF40 38 C0 00 00 */ li r6, 0
|
||||
/* 803BDFE4 003BAF44 38 00 FF FF */ li r0, -1
|
||||
lbl_803BDFE8:
|
||||
/* 803BDFE8 003BAF48 A0 A3 00 30 */ lhz r5, 0x30(r3)
|
||||
/* 803BDFEC 003BAF4C 7C A5 36 30 */ sraw r5, r5, r6
|
||||
/* 803BDFF0 003BAF50 54 A5 07 BE */ clrlwi r5, r5, 0x1e
|
||||
/* 803BDFF4 003BAF54 2C 05 00 02 */ cmpwi r5, 2
|
||||
/* 803BDFF8 003BAF58 41 82 00 24 */ beq lbl_803BE01C
|
||||
/* 803BDFFC 003BAF5C 40 80 00 2C */ bge lbl_803BE028
|
||||
/* 803BE000 003BAF60 2C 05 00 01 */ cmpwi r5, 1
|
||||
/* 803BE004 003BAF64 40 80 00 08 */ bge lbl_803BE00C
|
||||
/* 803BE008 003BAF68 48 00 00 20 */ b lbl_803BE028
|
||||
lbl_803BE00C:
|
||||
/* 803BE00C 003BAF6C 91 07 00 44 */ stw r8, 0x44(r7)
|
||||
/* 803BE010 003BAF70 39 20 00 01 */ li r9, 1
|
||||
/* 803BE014 003BAF74 39 08 04 00 */ addi r8, r8, 0x400
|
||||
/* 803BE018 003BAF78 48 00 00 14 */ b lbl_803BE02C
|
||||
lbl_803BE01C:
|
||||
/* 803BE01C 003BAF7C 91 07 00 44 */ stw r8, 0x44(r7)
|
||||
/* 803BE020 003BAF80 39 08 08 00 */ addi r8, r8, 0x800
|
||||
/* 803BE024 003BAF84 48 00 00 08 */ b lbl_803BE02C
|
||||
lbl_803BE028:
|
||||
/* 803BE028 003BAF88 90 07 00 44 */ stw r0, 0x44(r7)
|
||||
lbl_803BE02C:
|
||||
/* 803BE02C 003BAF8C A0 A3 00 30 */ lhz r5, 0x30(r3)
|
||||
/* 803BE030 003BAF90 38 C6 00 02 */ addi r6, r6, 2
|
||||
/* 803BE034 003BAF94 38 E7 00 04 */ addi r7, r7, 4
|
||||
/* 803BE038 003BAF98 7C A5 36 30 */ sraw r5, r5, r6
|
||||
/* 803BE03C 003BAF9C 54 A5 07 BE */ clrlwi r5, r5, 0x1e
|
||||
/* 803BE040 003BAFA0 2C 05 00 02 */ cmpwi r5, 2
|
||||
/* 803BE044 003BAFA4 41 82 00 24 */ beq lbl_803BE068
|
||||
/* 803BE048 003BAFA8 40 80 00 2C */ bge lbl_803BE074
|
||||
/* 803BE04C 003BAFAC 2C 05 00 01 */ cmpwi r5, 1
|
||||
/* 803BE050 003BAFB0 40 80 00 08 */ bge lbl_803BE058
|
||||
/* 803BE054 003BAFB4 48 00 00 20 */ b lbl_803BE074
|
||||
lbl_803BE058:
|
||||
/* 803BE058 003BAFB8 91 07 00 44 */ stw r8, 0x44(r7)
|
||||
/* 803BE05C 003BAFBC 39 20 00 01 */ li r9, 1
|
||||
/* 803BE060 003BAFC0 39 08 04 00 */ addi r8, r8, 0x400
|
||||
/* 803BE064 003BAFC4 48 00 00 14 */ b lbl_803BE078
|
||||
lbl_803BE068:
|
||||
/* 803BE068 003BAFC8 91 07 00 44 */ stw r8, 0x44(r7)
|
||||
/* 803BE06C 003BAFCC 39 08 08 00 */ addi r8, r8, 0x800
|
||||
/* 803BE070 003BAFD0 48 00 00 08 */ b lbl_803BE078
|
||||
lbl_803BE074:
|
||||
/* 803BE074 003BAFD4 90 07 00 44 */ stw r0, 0x44(r7)
|
||||
lbl_803BE078:
|
||||
/* 803BE078 003BAFD8 A0 A3 00 30 */ lhz r5, 0x30(r3)
|
||||
/* 803BE07C 003BAFDC 38 C6 00 02 */ addi r6, r6, 2
|
||||
/* 803BE080 003BAFE0 39 4A 00 01 */ addi r10, r10, 1
|
||||
/* 803BE084 003BAFE4 7C A5 36 30 */ sraw r5, r5, r6
|
||||
/* 803BE088 003BAFE8 54 A5 07 BE */ clrlwi r5, r5, 0x1e
|
||||
/* 803BE08C 003BAFEC 2C 05 00 02 */ cmpwi r5, 2
|
||||
/* 803BE090 003BAFF0 38 E7 00 04 */ addi r7, r7, 4
|
||||
/* 803BE094 003BAFF4 41 82 00 24 */ beq lbl_803BE0B8
|
||||
/* 803BE098 003BAFF8 40 80 00 2C */ bge lbl_803BE0C4
|
||||
/* 803BE09C 003BAFFC 2C 05 00 01 */ cmpwi r5, 1
|
||||
/* 803BE0A0 003BB000 40 80 00 08 */ bge lbl_803BE0A8
|
||||
/* 803BE0A4 003BB004 48 00 00 20 */ b lbl_803BE0C4
|
||||
lbl_803BE0A8:
|
||||
/* 803BE0A8 003BB008 91 07 00 44 */ stw r8, 0x44(r7)
|
||||
/* 803BE0AC 003BB00C 39 20 00 01 */ li r9, 1
|
||||
/* 803BE0B0 003BB010 39 08 04 00 */ addi r8, r8, 0x400
|
||||
/* 803BE0B4 003BB014 48 00 00 14 */ b lbl_803BE0C8
|
||||
lbl_803BE0B8:
|
||||
/* 803BE0B8 003BB018 91 07 00 44 */ stw r8, 0x44(r7)
|
||||
/* 803BE0BC 003BB01C 39 08 08 00 */ addi r8, r8, 0x800
|
||||
/* 803BE0C0 003BB020 48 00 00 08 */ b lbl_803BE0C8
|
||||
lbl_803BE0C4:
|
||||
/* 803BE0C4 003BB024 90 07 00 44 */ stw r0, 0x44(r7)
|
||||
lbl_803BE0C8:
|
||||
/* 803BE0C8 003BB028 A0 A3 00 30 */ lhz r5, 0x30(r3)
|
||||
/* 803BE0CC 003BB02C 38 C6 00 02 */ addi r6, r6, 2
|
||||
/* 803BE0D0 003BB030 39 4A 00 01 */ addi r10, r10, 1
|
||||
/* 803BE0D4 003BB034 7C A5 36 30 */ sraw r5, r5, r6
|
||||
/* 803BE0D8 003BB038 54 A5 07 BE */ clrlwi r5, r5, 0x1e
|
||||
/* 803BE0DC 003BB03C 2C 05 00 02 */ cmpwi r5, 2
|
||||
/* 803BE0E0 003BB040 38 E7 00 04 */ addi r7, r7, 4
|
||||
/* 803BE0E4 003BB044 41 82 00 24 */ beq lbl_803BE108
|
||||
/* 803BE0E8 003BB048 40 80 00 2C */ bge lbl_803BE114
|
||||
/* 803BE0EC 003BB04C 2C 05 00 01 */ cmpwi r5, 1
|
||||
/* 803BE0F0 003BB050 40 80 00 08 */ bge lbl_803BE0F8
|
||||
/* 803BE0F4 003BB054 48 00 00 20 */ b lbl_803BE114
|
||||
lbl_803BE0F8:
|
||||
/* 803BE0F8 003BB058 91 07 00 44 */ stw r8, 0x44(r7)
|
||||
/* 803BE0FC 003BB05C 39 20 00 01 */ li r9, 1
|
||||
/* 803BE100 003BB060 39 08 04 00 */ addi r8, r8, 0x400
|
||||
/* 803BE104 003BB064 48 00 00 14 */ b lbl_803BE118
|
||||
lbl_803BE108:
|
||||
/* 803BE108 003BB068 91 07 00 44 */ stw r8, 0x44(r7)
|
||||
/* 803BE10C 003BB06C 39 08 08 00 */ addi r8, r8, 0x800
|
||||
/* 803BE110 003BB070 48 00 00 08 */ b lbl_803BE118
|
||||
lbl_803BE114:
|
||||
/* 803BE114 003BB074 90 07 00 44 */ stw r0, 0x44(r7)
|
||||
lbl_803BE118:
|
||||
/* 803BE118 003BB078 38 C6 00 02 */ addi r6, r6, 2
|
||||
/* 803BE11C 003BB07C 38 E7 00 04 */ addi r7, r7, 4
|
||||
/* 803BE120 003BB080 39 4A 00 01 */ addi r10, r10, 1
|
||||
/* 803BE124 003BB084 42 00 FE C4 */ bdnz lbl_803BDFE8
|
||||
/* 803BE128 003BB088 2C 09 00 00 */ cmpwi r9, 0
|
||||
/* 803BE12C 003BB08C 41 82 00 10 */ beq lbl_803BE13C
|
||||
/* 803BE130 003BB090 91 04 00 64 */ stw r8, 0x64(r4)
|
||||
/* 803BE134 003BB094 39 08 02 00 */ addi r8, r8, 0x200
|
||||
/* 803BE138 003BB098 48 00 00 0C */ b lbl_803BE144
|
||||
lbl_803BE13C:
|
||||
/* 803BE13C 003BB09C 38 00 FF FF */ li r0, -1
|
||||
/* 803BE140 003BB0A0 90 04 00 64 */ stw r0, 0x64(r4)
|
||||
lbl_803BE144:
|
||||
/* 803BE144 003BB0A4 91 04 00 68 */ stw r8, 0x68(r4)
|
||||
/* 803BE148 003BB0A8 4E 80 00 20 */ blr
|
||||
|
||||
.global CARDGetStatus
|
||||
CARDGetStatus:
|
||||
/* 803BE14C 003BB0AC 7C 08 02 A6 */ mflr r0
|
||||
/* 803BE150 003BB0B0 90 01 00 04 */ stw r0, 4(r1)
|
||||
/* 803BE154 003BB0B4 94 21 FF D8 */ stwu r1, -0x28(r1)
|
||||
/* 803BE158 003BB0B8 93 E1 00 24 */ stw r31, 0x24(r1)
|
||||
/* 803BE15C 003BB0BC 3B E5 00 00 */ addi r31, r5, 0
|
||||
/* 803BE160 003BB0C0 93 C1 00 20 */ stw r30, 0x20(r1)
|
||||
/* 803BE164 003BB0C4 93 A1 00 1C */ stw r29, 0x1c(r1)
|
||||
/* 803BE168 003BB0C8 7C 9D 23 79 */ or. r29, r4, r4
|
||||
/* 803BE16C 003BB0CC 41 80 00 0C */ blt lbl_803BE178
|
||||
/* 803BE170 003BB0D0 2C 1D 00 7F */ cmpwi r29, 0x7f
|
||||
/* 803BE174 003BB0D4 41 80 00 0C */ blt lbl_803BE180
|
||||
lbl_803BE178:
|
||||
/* 803BE178 003BB0D8 38 60 FF 80 */ li r3, -128
|
||||
/* 803BE17C 003BB0DC 48 00 00 E0 */ b lbl_803BE25C
|
||||
lbl_803BE180:
|
||||
/* 803BE180 003BB0E0 38 81 00 14 */ addi r4, r1, 0x14
|
||||
/* 803BE184 003BB0E4 4B FF AC 1D */ bl __CARDGetControlBlock
|
||||
/* 803BE188 003BB0E8 2C 03 00 00 */ cmpwi r3, 0
|
||||
/* 803BE18C 003BB0EC 40 80 00 08 */ bge lbl_803BE194
|
||||
/* 803BE190 003BB0F0 48 00 00 CC */ b lbl_803BE25C
|
||||
lbl_803BE194:
|
||||
/* 803BE194 003BB0F4 80 61 00 14 */ lwz r3, 0x14(r1)
|
||||
/* 803BE198 003BB0F8 4B FF C7 D9 */ bl __CARDGetDirBlock
|
||||
/* 803BE19C 003BB0FC 57 A0 30 32 */ slwi r0, r29, 6
|
||||
/* 803BE1A0 003BB100 7F A3 02 14 */ add r29, r3, r0
|
||||
/* 803BE1A4 003BB104 80 61 00 14 */ lwz r3, 0x14(r1)
|
||||
/* 803BE1A8 003BB108 7F A4 EB 78 */ mr r4, r29
|
||||
/* 803BE1AC 003BB10C 4B FF EC 29 */ bl __CARDAccess
|
||||
/* 803BE1B0 003BB110 3B C3 00 00 */ addi r30, r3, 0
|
||||
/* 803BE1B4 003BB114 2C 1E FF F6 */ cmpwi r30, -10
|
||||
/* 803BE1B8 003BB118 40 82 00 10 */ bne lbl_803BE1C8
|
||||
/* 803BE1BC 003BB11C 7F A3 EB 78 */ mr r3, r29
|
||||
/* 803BE1C0 003BB120 4B FF EC AD */ bl sub_803bce6c
|
||||
/* 803BE1C4 003BB124 7C 7E 1B 78 */ mr r30, r3
|
||||
lbl_803BE1C8:
|
||||
/* 803BE1C8 003BB128 2C 1E 00 00 */ cmpwi r30, 0
|
||||
/* 803BE1CC 003BB12C 41 80 00 84 */ blt lbl_803BE250
|
||||
/* 803BE1D0 003BB130 38 9D 00 00 */ addi r4, r29, 0
|
||||
/* 803BE1D4 003BB134 38 7F 00 28 */ addi r3, r31, 0x28
|
||||
/* 803BE1D8 003BB138 38 A0 00 04 */ li r5, 4
|
||||
/* 803BE1DC 003BB13C 4B C4 52 B5 */ bl memcpy
|
||||
/* 803BE1E0 003BB140 38 7F 00 2C */ addi r3, r31, 0x2c
|
||||
/* 803BE1E4 003BB144 38 9D 00 04 */ addi r4, r29, 4
|
||||
/* 803BE1E8 003BB148 38 A0 00 02 */ li r5, 2
|
||||
/* 803BE1EC 003BB14C 4B C4 52 A5 */ bl memcpy
|
||||
/* 803BE1F0 003BB150 80 A1 00 14 */ lwz r5, 0x14(r1)
|
||||
/* 803BE1F4 003BB154 7F E3 FB 78 */ mr r3, r31
|
||||
/* 803BE1F8 003BB158 A0 DD 00 38 */ lhz r6, 0x38(r29)
|
||||
/* 803BE1FC 003BB15C 38 9D 00 08 */ addi r4, r29, 8
|
||||
/* 803BE200 003BB160 80 05 00 0C */ lwz r0, 0xc(r5)
|
||||
/* 803BE204 003BB164 38 A0 00 20 */ li r5, 0x20
|
||||
/* 803BE208 003BB168 7C 06 01 D6 */ mullw r0, r6, r0
|
||||
/* 803BE20C 003BB16C 90 1F 00 20 */ stw r0, 0x20(r31)
|
||||
/* 803BE210 003BB170 4B C4 52 81 */ bl memcpy
|
||||
/* 803BE214 003BB174 80 1D 00 28 */ lwz r0, 0x28(r29)
|
||||
/* 803BE218 003BB178 38 7D 00 00 */ addi r3, r29, 0
|
||||
/* 803BE21C 003BB17C 38 9F 00 00 */ addi r4, r31, 0
|
||||
/* 803BE220 003BB180 90 1F 00 24 */ stw r0, 0x24(r31)
|
||||
/* 803BE224 003BB184 88 1D 00 07 */ lbz r0, 7(r29)
|
||||
/* 803BE228 003BB188 98 1F 00 2E */ stb r0, 0x2e(r31)
|
||||
/* 803BE22C 003BB18C 80 1D 00 2C */ lwz r0, 0x2c(r29)
|
||||
/* 803BE230 003BB190 90 1F 00 30 */ stw r0, 0x30(r31)
|
||||
/* 803BE234 003BB194 A0 1D 00 30 */ lhz r0, 0x30(r29)
|
||||
/* 803BE238 003BB198 B0 1F 00 34 */ sth r0, 0x34(r31)
|
||||
/* 803BE23C 003BB19C A0 1D 00 32 */ lhz r0, 0x32(r29)
|
||||
/* 803BE240 003BB1A0 B0 1F 00 36 */ sth r0, 0x36(r31)
|
||||
/* 803BE244 003BB1A4 80 1D 00 3C */ lwz r0, 0x3c(r29)
|
||||
/* 803BE248 003BB1A8 90 1F 00 38 */ stw r0, 0x38(r31)
|
||||
/* 803BE24C 003BB1AC 4B FF FD 09 */ bl UpdateIconOffsets
|
||||
lbl_803BE250:
|
||||
/* 803BE250 003BB1B0 80 61 00 14 */ lwz r3, 0x14(r1)
|
||||
/* 803BE254 003BB1B4 7F C4 F3 78 */ mr r4, r30
|
||||
/* 803BE258 003BB1B8 4B FF AC 01 */ bl __CARDPutControlBlock
|
||||
lbl_803BE25C:
|
||||
/* 803BE25C 003BB1BC 80 01 00 2C */ lwz r0, 0x2c(r1)
|
||||
/* 803BE260 003BB1C0 83 E1 00 24 */ lwz r31, 0x24(r1)
|
||||
/* 803BE264 003BB1C4 83 C1 00 20 */ lwz r30, 0x20(r1)
|
||||
/* 803BE268 003BB1C8 83 A1 00 1C */ lwz r29, 0x1c(r1)
|
||||
/* 803BE26C 003BB1CC 38 21 00 28 */ addi r1, r1, 0x28
|
||||
/* 803BE270 003BB1D0 7C 08 03 A6 */ mtlr r0
|
||||
/* 803BE274 003BB1D4 4E 80 00 20 */ blr
|
||||
|
||||
.global CARDSetStatusAsync
|
||||
CARDSetStatusAsync:
|
||||
/* 803BE278 003BB1D8 7C 08 02 A6 */ mflr r0
|
||||
/* 803BE27C 003BB1DC 90 01 00 04 */ stw r0, 4(r1)
|
||||
/* 803BE280 003BB1E0 94 21 FF D0 */ stwu r1, -0x30(r1)
|
||||
/* 803BE284 003BB1E4 93 E1 00 2C */ stw r31, 0x2c(r1)
|
||||
/* 803BE288 003BB1E8 7C 9F 23 79 */ or. r31, r4, r4
|
||||
/* 803BE28C 003BB1EC 93 C1 00 28 */ stw r30, 0x28(r1)
|
||||
/* 803BE290 003BB1F0 3B C6 00 00 */ addi r30, r6, 0
|
||||
/* 803BE294 003BB1F4 93 A1 00 24 */ stw r29, 0x24(r1)
|
||||
/* 803BE298 003BB1F8 3B A5 00 00 */ addi r29, r5, 0
|
||||
/* 803BE29C 003BB1FC 93 81 00 20 */ stw r28, 0x20(r1)
|
||||
/* 803BE2A0 003BB200 3B 83 00 00 */ addi r28, r3, 0
|
||||
/* 803BE2A4 003BB204 41 80 00 40 */ blt lbl_803BE2E4
|
||||
/* 803BE2A8 003BB208 2C 1F 00 7F */ cmpwi r31, 0x7f
|
||||
/* 803BE2AC 003BB20C 40 80 00 38 */ bge lbl_803BE2E4
|
||||
/* 803BE2B0 003BB210 80 7D 00 30 */ lwz r3, 0x30(r29)
|
||||
/* 803BE2B4 003BB214 3C 03 00 01 */ addis r0, r3, 1
|
||||
/* 803BE2B8 003BB218 28 00 FF FF */ cmplwi r0, 0xffff
|
||||
/* 803BE2BC 003BB21C 41 82 00 0C */ beq lbl_803BE2C8
|
||||
/* 803BE2C0 003BB220 28 03 02 00 */ cmplwi r3, 0x200
|
||||
/* 803BE2C4 003BB224 40 80 00 20 */ bge lbl_803BE2E4
|
||||
lbl_803BE2C8:
|
||||
/* 803BE2C8 003BB228 80 7D 00 38 */ lwz r3, 0x38(r29)
|
||||
/* 803BE2CC 003BB22C 3C 03 00 01 */ addis r0, r3, 1
|
||||
/* 803BE2D0 003BB230 28 00 FF FF */ cmplwi r0, 0xffff
|
||||
/* 803BE2D4 003BB234 41 82 00 18 */ beq lbl_803BE2EC
|
||||
/* 803BE2D8 003BB238 54 60 04 FE */ clrlwi r0, r3, 0x13
|
||||
/* 803BE2DC 003BB23C 28 00 1F C0 */ cmplwi r0, 0x1fc0
|
||||
/* 803BE2E0 003BB240 40 81 00 0C */ ble lbl_803BE2EC
|
||||
lbl_803BE2E4:
|
||||
/* 803BE2E4 003BB244 38 60 FF 80 */ li r3, -128
|
||||
/* 803BE2E8 003BB248 48 00 00 E4 */ b lbl_803BE3CC
|
||||
lbl_803BE2EC:
|
||||
/* 803BE2EC 003BB24C 38 7C 00 00 */ addi r3, r28, 0
|
||||
/* 803BE2F0 003BB250 38 81 00 18 */ addi r4, r1, 0x18
|
||||
/* 803BE2F4 003BB254 4B FF AA AD */ bl __CARDGetControlBlock
|
||||
/* 803BE2F8 003BB258 2C 03 00 00 */ cmpwi r3, 0
|
||||
/* 803BE2FC 003BB25C 40 80 00 08 */ bge lbl_803BE304
|
||||
/* 803BE300 003BB260 48 00 00 CC */ b lbl_803BE3CC
|
||||
lbl_803BE304:
|
||||
/* 803BE304 003BB264 80 61 00 18 */ lwz r3, 0x18(r1)
|
||||
/* 803BE308 003BB268 4B FF C6 69 */ bl __CARDGetDirBlock
|
||||
/* 803BE30C 003BB26C 57 E0 30 32 */ slwi r0, r31, 6
|
||||
/* 803BE310 003BB270 7F E3 02 14 */ add r31, r3, r0
|
||||
/* 803BE314 003BB274 80 61 00 18 */ lwz r3, 0x18(r1)
|
||||
/* 803BE318 003BB278 7F E4 FB 78 */ mr r4, r31
|
||||
/* 803BE31C 003BB27C 4B FF EA B9 */ bl __CARDAccess
|
||||
/* 803BE320 003BB280 7C 64 1B 79 */ or. r4, r3, r3
|
||||
/* 803BE324 003BB284 40 80 00 10 */ bge lbl_803BE334
|
||||
/* 803BE328 003BB288 80 61 00 18 */ lwz r3, 0x18(r1)
|
||||
/* 803BE32C 003BB28C 4B FF AB 2D */ bl __CARDPutControlBlock
|
||||
/* 803BE330 003BB290 48 00 00 9C */ b lbl_803BE3CC
|
||||
lbl_803BE334:
|
||||
/* 803BE334 003BB294 88 1D 00 2E */ lbz r0, 0x2e(r29)
|
||||
/* 803BE338 003BB298 38 7F 00 00 */ addi r3, r31, 0
|
||||
/* 803BE33C 003BB29C 38 9D 00 00 */ addi r4, r29, 0
|
||||
/* 803BE340 003BB2A0 98 1F 00 07 */ stb r0, 7(r31)
|
||||
/* 803BE344 003BB2A4 80 1D 00 30 */ lwz r0, 0x30(r29)
|
||||
/* 803BE348 003BB2A8 90 1F 00 2C */ stw r0, 0x2c(r31)
|
||||
/* 803BE34C 003BB2AC A0 1D 00 34 */ lhz r0, 0x34(r29)
|
||||
/* 803BE350 003BB2B0 B0 1F 00 30 */ sth r0, 0x30(r31)
|
||||
/* 803BE354 003BB2B4 A0 1D 00 36 */ lhz r0, 0x36(r29)
|
||||
/* 803BE358 003BB2B8 B0 1F 00 32 */ sth r0, 0x32(r31)
|
||||
/* 803BE35C 003BB2BC 80 1D 00 38 */ lwz r0, 0x38(r29)
|
||||
/* 803BE360 003BB2C0 90 1F 00 3C */ stw r0, 0x3c(r31)
|
||||
/* 803BE364 003BB2C4 4B FF FB F1 */ bl UpdateIconOffsets
|
||||
/* 803BE368 003BB2C8 80 7F 00 2C */ lwz r3, 0x2c(r31)
|
||||
/* 803BE36C 003BB2CC 3C 03 00 01 */ addis r0, r3, 1
|
||||
/* 803BE370 003BB2D0 28 00 FF FF */ cmplwi r0, 0xffff
|
||||
/* 803BE374 003BB2D4 40 82 00 14 */ bne lbl_803BE388
|
||||
/* 803BE378 003BB2D8 A0 1F 00 32 */ lhz r0, 0x32(r31)
|
||||
/* 803BE37C 003BB2DC 54 00 00 3A */ rlwinm r0, r0, 0, 0, 0x1d
|
||||
/* 803BE380 003BB2E0 60 00 00 01 */ ori r0, r0, 1
|
||||
/* 803BE384 003BB2E4 B0 1F 00 32 */ sth r0, 0x32(r31)
|
||||
lbl_803BE388:
|
||||
/* 803BE388 003BB2E8 3C 60 80 00 */ lis r3, 0x800000F8@ha
|
||||
/* 803BE38C 003BB2EC 80 03 00 F8 */ lwz r0, 0x800000F8@l(r3)
|
||||
/* 803BE390 003BB2F0 54 1D F0 BE */ srwi r29, r0, 2
|
||||
/* 803BE394 003BB2F4 4B FC 70 15 */ bl OSGetTime
|
||||
/* 803BE398 003BB2F8 38 DD 00 00 */ addi r6, r29, 0
|
||||
/* 803BE39C 003BB2FC 38 A0 00 00 */ li r5, 0
|
||||
/* 803BE3A0 003BB300 4B FC B8 2D */ bl __div2i
|
||||
/* 803BE3A4 003BB304 90 9F 00 28 */ stw r4, 0x28(r31)
|
||||
/* 803BE3A8 003BB308 38 7C 00 00 */ addi r3, r28, 0
|
||||
/* 803BE3AC 003BB30C 38 9E 00 00 */ addi r4, r30, 0
|
||||
/* 803BE3B0 003BB310 4B FF C7 61 */ bl __CARDUpdateDir
|
||||
/* 803BE3B4 003BB314 7C 7C 1B 79 */ or. r28, r3, r3
|
||||
/* 803BE3B8 003BB318 40 80 00 10 */ bge lbl_803BE3C8
|
||||
/* 803BE3BC 003BB31C 80 61 00 18 */ lwz r3, 0x18(r1)
|
||||
/* 803BE3C0 003BB320 7F 84 E3 78 */ mr r4, r28
|
||||
/* 803BE3C4 003BB324 4B FF AA 95 */ bl __CARDPutControlBlock
|
||||
lbl_803BE3C8:
|
||||
/* 803BE3C8 003BB328 7F 83 E3 78 */ mr r3, r28
|
||||
lbl_803BE3CC:
|
||||
/* 803BE3CC 003BB32C 80 01 00 34 */ lwz r0, 0x34(r1)
|
||||
/* 803BE3D0 003BB330 83 E1 00 2C */ lwz r31, 0x2c(r1)
|
||||
/* 803BE3D4 003BB334 83 C1 00 28 */ lwz r30, 0x28(r1)
|
||||
/* 803BE3D8 003BB338 83 A1 00 24 */ lwz r29, 0x24(r1)
|
||||
/* 803BE3DC 003BB33C 83 81 00 20 */ lwz r28, 0x20(r1)
|
||||
/* 803BE3E0 003BB340 38 21 00 30 */ addi r1, r1, 0x30
|
||||
/* 803BE3E4 003BB344 7C 08 03 A6 */ mtlr r0
|
||||
/* 803BE3E8 003BB348 4E 80 00 20 */ blr
|
||||
|
File diff suppressed because it is too large
Load Diff
|
@ -0,0 +1,232 @@
|
|||
.include "macros.inc"
|
||||
|
||||
.section .text, "ax"
|
||||
|
||||
WriteCallback:
|
||||
/* 803BD940 003BA8A0 7C 08 02 A6 */ mflr r0
|
||||
/* 803BD944 003BA8A4 90 01 00 04 */ stw r0, 4(r1)
|
||||
/* 803BD948 003BA8A8 94 21 FF E0 */ stwu r1, -0x20(r1)
|
||||
/* 803BD94C 003BA8AC 93 E1 00 1C */ stw r31, 0x1c(r1)
|
||||
/* 803BD950 003BA8B0 93 C1 00 18 */ stw r30, 0x18(r1)
|
||||
/* 803BD954 003BA8B4 3B C3 00 00 */ addi r30, r3, 0
|
||||
/* 803BD958 003BA8B8 3C 60 80 57 */ lis r3, lbl_80569A58@ha
|
||||
/* 803BD95C 003BA8BC 93 A1 00 14 */ stw r29, 0x14(r1)
|
||||
/* 803BD960 003BA8C0 1C BE 01 10 */ mulli r5, r30, 0x110
|
||||
/* 803BD964 003BA8C4 93 81 00 10 */ stw r28, 0x10(r1)
|
||||
/* 803BD968 003BA8C8 38 03 9A 58 */ addi r0, r3, lbl_80569A58@l
|
||||
/* 803BD96C 003BA8CC 7C 9C 23 79 */ or. r28, r4, r4
|
||||
/* 803BD970 003BA8D0 7F E0 2A 14 */ add r31, r0, r5
|
||||
/* 803BD974 003BA8D4 41 80 00 F0 */ blt lbl_803BDA64
|
||||
/* 803BD978 003BA8D8 83 BF 00 C0 */ lwz r29, 0xc0(r31)
|
||||
/* 803BD97C 003BA8DC 80 7D 00 0C */ lwz r3, 0xc(r29)
|
||||
/* 803BD980 003BA8E0 2C 03 00 00 */ cmpwi r3, 0
|
||||
/* 803BD984 003BA8E4 40 80 00 0C */ bge lbl_803BD990
|
||||
/* 803BD988 003BA8E8 3B 80 FF F2 */ li r28, -14
|
||||
/* 803BD98C 003BA8EC 48 00 00 D8 */ b lbl_803BDA64
|
||||
lbl_803BD990:
|
||||
/* 803BD990 003BA8F0 80 1F 00 0C */ lwz r0, 0xc(r31)
|
||||
/* 803BD994 003BA8F4 7C 00 18 50 */ subf r0, r0, r3
|
||||
/* 803BD998 003BA8F8 90 1D 00 0C */ stw r0, 0xc(r29)
|
||||
/* 803BD99C 003BA8FC 80 1D 00 0C */ lwz r0, 0xc(r29)
|
||||
/* 803BD9A0 003BA900 2C 00 00 00 */ cmpwi r0, 0
|
||||
/* 803BD9A4 003BA904 41 81 00 54 */ bgt lbl_803BD9F8
|
||||
/* 803BD9A8 003BA908 7F E3 FB 78 */ mr r3, r31
|
||||
/* 803BD9AC 003BA90C 4B FF CF C5 */ bl __CARDGetDirBlock
|
||||
/* 803BD9B0 003BA910 80 BD 00 04 */ lwz r5, 4(r29)
|
||||
/* 803BD9B4 003BA914 3C 80 80 00 */ lis r4, 0x800000F8@ha
|
||||
/* 803BD9B8 003BA918 80 04 00 F8 */ lwz r0, 0x800000F8@l(r4)
|
||||
/* 803BD9BC 003BA91C 54 A4 30 32 */ slwi r4, r5, 6
|
||||
/* 803BD9C0 003BA920 7F 83 22 14 */ add r28, r3, r4
|
||||
/* 803BD9C4 003BA924 54 1D F0 BE */ srwi r29, r0, 2
|
||||
/* 803BD9C8 003BA928 4B FC 79 E1 */ bl OSGetTime
|
||||
/* 803BD9CC 003BA92C 38 DD 00 00 */ addi r6, r29, 0
|
||||
/* 803BD9D0 003BA930 38 A0 00 00 */ li r5, 0
|
||||
/* 803BD9D4 003BA934 4B FC C1 F9 */ bl __div2i
|
||||
/* 803BD9D8 003BA938 90 9C 00 28 */ stw r4, 0x28(r28)
|
||||
/* 803BD9DC 003BA93C 38 00 00 00 */ li r0, 0
|
||||
/* 803BD9E0 003BA940 38 7E 00 00 */ addi r3, r30, 0
|
||||
/* 803BD9E4 003BA944 80 9F 00 D0 */ lwz r4, 0xd0(r31)
|
||||
/* 803BD9E8 003BA948 90 1F 00 D0 */ stw r0, 0xd0(r31)
|
||||
/* 803BD9EC 003BA94C 4B FF D1 25 */ bl __CARDUpdateDir
|
||||
/* 803BD9F0 003BA950 7C 7C 1B 78 */ mr r28, r3
|
||||
/* 803BD9F4 003BA954 48 00 00 68 */ b lbl_803BDA5C
|
||||
lbl_803BD9F8:
|
||||
/* 803BD9F8 003BA958 7F E3 FB 78 */ mr r3, r31
|
||||
/* 803BD9FC 003BA95C 4B FF CB 71 */ bl __CARDGetFatBlock
|
||||
/* 803BDA00 003BA960 80 9D 00 08 */ lwz r4, 8(r29)
|
||||
/* 803BDA04 003BA964 80 1F 00 0C */ lwz r0, 0xc(r31)
|
||||
/* 803BDA08 003BA968 7C 04 02 14 */ add r0, r4, r0
|
||||
/* 803BDA0C 003BA96C 90 1D 00 08 */ stw r0, 8(r29)
|
||||
/* 803BDA10 003BA970 A0 1D 00 10 */ lhz r0, 0x10(r29)
|
||||
/* 803BDA14 003BA974 54 00 08 3C */ slwi r0, r0, 1
|
||||
/* 803BDA18 003BA978 7C 03 02 2E */ lhzx r0, r3, r0
|
||||
/* 803BDA1C 003BA97C B0 1D 00 10 */ sth r0, 0x10(r29)
|
||||
/* 803BDA20 003BA980 A0 9D 00 10 */ lhz r4, 0x10(r29)
|
||||
/* 803BDA24 003BA984 28 04 00 05 */ cmplwi r4, 5
|
||||
/* 803BDA28 003BA988 41 80 00 10 */ blt lbl_803BDA38
|
||||
/* 803BDA2C 003BA98C A0 1F 00 10 */ lhz r0, 0x10(r31)
|
||||
/* 803BDA30 003BA990 7C 04 00 40 */ cmplw r4, r0
|
||||
/* 803BDA34 003BA994 41 80 00 0C */ blt lbl_803BDA40
|
||||
lbl_803BDA38:
|
||||
/* 803BDA38 003BA998 3B 80 FF FA */ li r28, -6
|
||||
/* 803BDA3C 003BA99C 48 00 00 28 */ b lbl_803BDA64
|
||||
lbl_803BDA40:
|
||||
/* 803BDA40 003BA9A0 80 1F 00 0C */ lwz r0, 0xc(r31)
|
||||
/* 803BDA44 003BA9A4 3C 60 80 3C */ lis r3, EraseCallback@ha
|
||||
/* 803BDA48 003BA9A8 38 A3 DA B0 */ addi r5, r3, EraseCallback@l
|
||||
/* 803BDA4C 003BA9AC 7C 80 21 D6 */ mullw r4, r0, r4
|
||||
/* 803BDA50 003BA9B0 38 7E 00 00 */ addi r3, r30, 0
|
||||
/* 803BDA54 003BA9B4 4B FF B1 81 */ bl __CARDEraseSector
|
||||
/* 803BDA58 003BA9B8 7C 7C 1B 78 */ mr r28, r3
|
||||
lbl_803BDA5C:
|
||||
/* 803BDA5C 003BA9BC 2C 1C 00 00 */ cmpwi r28, 0
|
||||
/* 803BDA60 003BA9C0 40 80 00 30 */ bge lbl_803BDA90
|
||||
lbl_803BDA64:
|
||||
/* 803BDA64 003BA9C4 83 BF 00 D0 */ lwz r29, 0xd0(r31)
|
||||
/* 803BDA68 003BA9C8 38 00 00 00 */ li r0, 0
|
||||
/* 803BDA6C 003BA9CC 38 7F 00 00 */ addi r3, r31, 0
|
||||
/* 803BDA70 003BA9D0 90 1F 00 D0 */ stw r0, 0xd0(r31)
|
||||
/* 803BDA74 003BA9D4 7F 84 E3 78 */ mr r4, r28
|
||||
/* 803BDA78 003BA9D8 4B FF B3 E1 */ bl __CARDPutControlBlock
|
||||
/* 803BDA7C 003BA9DC 39 9D 00 00 */ addi r12, r29, 0
|
||||
/* 803BDA80 003BA9E0 7D 88 03 A6 */ mtlr r12
|
||||
/* 803BDA84 003BA9E4 38 7E 00 00 */ addi r3, r30, 0
|
||||
/* 803BDA88 003BA9E8 38 9C 00 00 */ addi r4, r28, 0
|
||||
/* 803BDA8C 003BA9EC 4E 80 00 21 */ blrl
|
||||
lbl_803BDA90:
|
||||
/* 803BDA90 003BA9F0 80 01 00 24 */ lwz r0, 0x24(r1)
|
||||
/* 803BDA94 003BA9F4 83 E1 00 1C */ lwz r31, 0x1c(r1)
|
||||
/* 803BDA98 003BA9F8 83 C1 00 18 */ lwz r30, 0x18(r1)
|
||||
/* 803BDA9C 003BA9FC 83 A1 00 14 */ lwz r29, 0x14(r1)
|
||||
/* 803BDAA0 003BAA00 83 81 00 10 */ lwz r28, 0x10(r1)
|
||||
/* 803BDAA4 003BAA04 38 21 00 20 */ addi r1, r1, 0x20
|
||||
/* 803BDAA8 003BAA08 7C 08 03 A6 */ mtlr r0
|
||||
/* 803BDAAC 003BAA0C 4E 80 00 20 */ blr
|
||||
|
||||
EraseCallback:
|
||||
/* 803BDAB0 003BAA10 7C 08 02 A6 */ mflr r0
|
||||
/* 803BDAB4 003BAA14 90 01 00 04 */ stw r0, 4(r1)
|
||||
/* 803BDAB8 003BAA18 94 21 FF E0 */ stwu r1, -0x20(r1)
|
||||
/* 803BDABC 003BAA1C 93 E1 00 1C */ stw r31, 0x1c(r1)
|
||||
/* 803BDAC0 003BAA20 93 C1 00 18 */ stw r30, 0x18(r1)
|
||||
/* 803BDAC4 003BAA24 93 A1 00 14 */ stw r29, 0x14(r1)
|
||||
/* 803BDAC8 003BAA28 7C 9D 23 79 */ or. r29, r4, r4
|
||||
/* 803BDACC 003BAA2C 93 81 00 10 */ stw r28, 0x10(r1)
|
||||
/* 803BDAD0 003BAA30 3B 83 00 00 */ addi r28, r3, 0
|
||||
/* 803BDAD4 003BAA34 1C BC 01 10 */ mulli r5, r28, 0x110
|
||||
/* 803BDAD8 003BAA38 3C 60 80 57 */ lis r3, lbl_80569A58@ha
|
||||
/* 803BDADC 003BAA3C 38 03 9A 58 */ addi r0, r3, lbl_80569A58@l
|
||||
/* 803BDAE0 003BAA40 7F E0 2A 14 */ add r31, r0, r5
|
||||
/* 803BDAE4 003BAA44 41 80 00 30 */ blt lbl_803BDB14
|
||||
/* 803BDAE8 003BAA48 80 9F 00 C0 */ lwz r4, 0xc0(r31)
|
||||
/* 803BDAEC 003BAA4C 3C 60 80 3C */ lis r3, WriteCallback@ha
|
||||
/* 803BDAF0 003BAA50 38 E3 D9 40 */ addi r7, r3, WriteCallback@l
|
||||
/* 803BDAF4 003BAA54 80 BF 00 0C */ lwz r5, 0xc(r31)
|
||||
/* 803BDAF8 003BAA58 A0 04 00 10 */ lhz r0, 0x10(r4)
|
||||
/* 803BDAFC 003BAA5C 80 DF 00 B4 */ lwz r6, 0xb4(r31)
|
||||
/* 803BDB00 003BAA60 38 7C 00 00 */ addi r3, r28, 0
|
||||
/* 803BDB04 003BAA64 7C 85 01 D6 */ mullw r4, r5, r0
|
||||
/* 803BDB08 003BAA68 4B FF CA 01 */ bl __CARDWrite
|
||||
/* 803BDB0C 003BAA6C 7C 7D 1B 79 */ or. r29, r3, r3
|
||||
/* 803BDB10 003BAA70 40 80 00 30 */ bge lbl_803BDB40
|
||||
lbl_803BDB14:
|
||||
/* 803BDB14 003BAA74 83 DF 00 D0 */ lwz r30, 0xd0(r31)
|
||||
/* 803BDB18 003BAA78 38 00 00 00 */ li r0, 0
|
||||
/* 803BDB1C 003BAA7C 38 7F 00 00 */ addi r3, r31, 0
|
||||
/* 803BDB20 003BAA80 90 1F 00 D0 */ stw r0, 0xd0(r31)
|
||||
/* 803BDB24 003BAA84 7F A4 EB 78 */ mr r4, r29
|
||||
/* 803BDB28 003BAA88 4B FF B3 31 */ bl __CARDPutControlBlock
|
||||
/* 803BDB2C 003BAA8C 39 9E 00 00 */ addi r12, r30, 0
|
||||
/* 803BDB30 003BAA90 7D 88 03 A6 */ mtlr r12
|
||||
/* 803BDB34 003BAA94 38 7C 00 00 */ addi r3, r28, 0
|
||||
/* 803BDB38 003BAA98 38 9D 00 00 */ addi r4, r29, 0
|
||||
/* 803BDB3C 003BAA9C 4E 80 00 21 */ blrl
|
||||
lbl_803BDB40:
|
||||
/* 803BDB40 003BAAA0 80 01 00 24 */ lwz r0, 0x24(r1)
|
||||
/* 803BDB44 003BAAA4 83 E1 00 1C */ lwz r31, 0x1c(r1)
|
||||
/* 803BDB48 003BAAA8 83 C1 00 18 */ lwz r30, 0x18(r1)
|
||||
/* 803BDB4C 003BAAAC 83 A1 00 14 */ lwz r29, 0x14(r1)
|
||||
/* 803BDB50 003BAAB0 83 81 00 10 */ lwz r28, 0x10(r1)
|
||||
/* 803BDB54 003BAAB4 38 21 00 20 */ addi r1, r1, 0x20
|
||||
/* 803BDB58 003BAAB8 7C 08 03 A6 */ mtlr r0
|
||||
/* 803BDB5C 003BAABC 4E 80 00 20 */ blr
|
||||
|
||||
.global CARDWriteAsync
|
||||
CARDWriteAsync:
|
||||
/* 803BDB60 003BAAC0 7C 08 02 A6 */ mflr r0
|
||||
/* 803BDB64 003BAAC4 90 01 00 04 */ stw r0, 4(r1)
|
||||
/* 803BDB68 003BAAC8 94 21 FF C8 */ stwu r1, -0x38(r1)
|
||||
/* 803BDB6C 003BAACC BF 61 00 24 */ stmw r27, 0x24(r1)
|
||||
/* 803BDB70 003BAAD0 3B 86 00 00 */ addi r28, r6, 0
|
||||
/* 803BDB74 003BAAD4 3B 65 00 00 */ addi r27, r5, 0
|
||||
/* 803BDB78 003BAAD8 3B E4 00 00 */ addi r31, r4, 0
|
||||
/* 803BDB7C 003BAADC 3B C3 00 00 */ addi r30, r3, 0
|
||||
/* 803BDB80 003BAAE0 3B A7 00 00 */ addi r29, r7, 0
|
||||
/* 803BDB84 003BAAE4 38 9B 00 00 */ addi r4, r27, 0
|
||||
/* 803BDB88 003BAAE8 38 BC 00 00 */ addi r5, r28, 0
|
||||
/* 803BDB8C 003BAAEC 38 C1 00 1C */ addi r6, r1, 0x1c
|
||||
/* 803BDB90 003BAAF0 4B FF F9 81 */ bl __CARDSeek
|
||||
/* 803BDB94 003BAAF4 2C 03 00 00 */ cmpwi r3, 0
|
||||
/* 803BDB98 003BAAF8 40 80 00 08 */ bge lbl_803BDBA0
|
||||
/* 803BDB9C 003BAAFC 48 00 00 C4 */ b lbl_803BDC60
|
||||
lbl_803BDBA0:
|
||||
/* 803BDBA0 003BAB00 80 61 00 1C */ lwz r3, 0x1c(r1)
|
||||
/* 803BDBA4 003BAB04 80 83 00 0C */ lwz r4, 0xc(r3)
|
||||
/* 803BDBA8 003BAB08 38 84 FF FF */ addi r4, r4, -1
|
||||
/* 803BDBAC 003BAB0C 7F 80 20 39 */ and. r0, r28, r4
|
||||
/* 803BDBB0 003BAB10 40 82 00 0C */ bne lbl_803BDBBC
|
||||
/* 803BDBB4 003BAB14 7F 60 20 39 */ and. r0, r27, r4
|
||||
/* 803BDBB8 003BAB18 41 82 00 10 */ beq lbl_803BDBC8
|
||||
lbl_803BDBBC:
|
||||
/* 803BDBBC 003BAB1C 38 80 FF 80 */ li r4, -128
|
||||
/* 803BDBC0 003BAB20 4B FF B2 99 */ bl __CARDPutControlBlock
|
||||
/* 803BDBC4 003BAB24 48 00 00 9C */ b lbl_803BDC60
|
||||
lbl_803BDBC8:
|
||||
/* 803BDBC8 003BAB28 4B FF CD A9 */ bl __CARDGetDirBlock
|
||||
/* 803BDBCC 003BAB2C 80 1E 00 04 */ lwz r0, 4(r30)
|
||||
/* 803BDBD0 003BAB30 54 00 30 32 */ slwi r0, r0, 6
|
||||
/* 803BDBD4 003BAB34 7C 83 02 14 */ add r4, r3, r0
|
||||
/* 803BDBD8 003BAB38 80 61 00 1C */ lwz r3, 0x1c(r1)
|
||||
/* 803BDBDC 003BAB3C 4B FF F1 F9 */ bl __CARDAccess
|
||||
/* 803BDBE0 003BAB40 7C 64 1B 79 */ or. r4, r3, r3
|
||||
/* 803BDBE4 003BAB44 40 80 00 10 */ bge lbl_803BDBF4
|
||||
/* 803BDBE8 003BAB48 80 61 00 1C */ lwz r3, 0x1c(r1)
|
||||
/* 803BDBEC 003BAB4C 4B FF B2 6D */ bl __CARDPutControlBlock
|
||||
/* 803BDBF0 003BAB50 48 00 00 70 */ b lbl_803BDC60
|
||||
lbl_803BDBF4:
|
||||
/* 803BDBF4 003BAB54 38 7F 00 00 */ addi r3, r31, 0
|
||||
/* 803BDBF8 003BAB58 38 9B 00 00 */ addi r4, r27, 0
|
||||
/* 803BDBFC 003BAB5C 4B FC 0E E5 */ bl DCStoreRange
|
||||
/* 803BDC00 003BAB60 28 1D 00 00 */ cmplwi r29, 0
|
||||
/* 803BDC04 003BAB64 41 82 00 0C */ beq lbl_803BDC10
|
||||
/* 803BDC08 003BAB68 7F A0 EB 78 */ mr r0, r29
|
||||
/* 803BDC0C 003BAB6C 48 00 00 0C */ b lbl_803BDC18
|
||||
lbl_803BDC10:
|
||||
/* 803BDC10 003BAB70 3C 60 80 3B */ lis r3, __CARDDefaultApiCallback@ha
|
||||
/* 803BDC14 003BAB74 38 03 7E 74 */ addi r0, r3, __CARDDefaultApiCallback@l
|
||||
lbl_803BDC18:
|
||||
/* 803BDC18 003BAB78 80 81 00 1C */ lwz r4, 0x1c(r1)
|
||||
/* 803BDC1C 003BAB7C 3C 60 80 3C */ lis r3, EraseCallback@ha
|
||||
/* 803BDC20 003BAB80 38 A3 DA B0 */ addi r5, r3, EraseCallback@l
|
||||
/* 803BDC24 003BAB84 90 04 00 D0 */ stw r0, 0xd0(r4)
|
||||
/* 803BDC28 003BAB88 80 61 00 1C */ lwz r3, 0x1c(r1)
|
||||
/* 803BDC2C 003BAB8C 93 E3 00 B4 */ stw r31, 0xb4(r3)
|
||||
/* 803BDC30 003BAB90 80 61 00 1C */ lwz r3, 0x1c(r1)
|
||||
/* 803BDC34 003BAB94 A0 1E 00 10 */ lhz r0, 0x10(r30)
|
||||
/* 803BDC38 003BAB98 80 83 00 0C */ lwz r4, 0xc(r3)
|
||||
/* 803BDC3C 003BAB9C 80 7E 00 00 */ lwz r3, 0(r30)
|
||||
/* 803BDC40 003BABA0 7C 84 01 D6 */ mullw r4, r4, r0
|
||||
/* 803BDC44 003BABA4 4B FF AF 91 */ bl __CARDEraseSector
|
||||
/* 803BDC48 003BABA8 7C 7E 1B 79 */ or. r30, r3, r3
|
||||
/* 803BDC4C 003BABAC 40 80 00 10 */ bge lbl_803BDC5C
|
||||
/* 803BDC50 003BABB0 80 61 00 1C */ lwz r3, 0x1c(r1)
|
||||
/* 803BDC54 003BABB4 7F C4 F3 78 */ mr r4, r30
|
||||
/* 803BDC58 003BABB8 4B FF B2 01 */ bl __CARDPutControlBlock
|
||||
lbl_803BDC5C:
|
||||
/* 803BDC5C 003BABBC 7F C3 F3 78 */ mr r3, r30
|
||||
lbl_803BDC60:
|
||||
/* 803BDC60 003BABC0 BB 61 00 24 */ lmw r27, 0x24(r1)
|
||||
/* 803BDC64 003BABC4 80 01 00 3C */ lwz r0, 0x3c(r1)
|
||||
/* 803BDC68 003BABC8 38 21 00 38 */ addi r1, r1, 0x38
|
||||
/* 803BDC6C 003BABCC 7C 08 03 A6 */ mtlr r0
|
||||
/* 803BDC70 003BABD0 4E 80 00 20 */ blr
|
File diff suppressed because it is too large
Load Diff
|
@ -0,0 +1,189 @@
|
|||
.include "macros.inc"
|
||||
|
||||
.section .text, "ax"
|
||||
|
||||
.global InitializeUART
|
||||
InitializeUART:
|
||||
/* 803C18F0 003BE850 7C 08 02 A6 */ mflr r0
|
||||
/* 803C18F4 003BE854 90 01 00 04 */ stw r0, 4(r1)
|
||||
/* 803C18F8 003BE858 94 21 FF F8 */ stwu r1, -8(r1)
|
||||
/* 803C18FC 003BE85C 80 6D B0 34 */ lwz r3, lbl_805A9BF4@sda21(r13)
|
||||
/* 803C1900 003BE860 3C 03 5A 01 */ addis r0, r3, 0x5a01
|
||||
/* 803C1904 003BE864 28 00 00 5A */ cmplwi r0, 0x5a
|
||||
/* 803C1908 003BE868 40 82 00 0C */ bne lbl_803C1914
|
||||
/* 803C190C 003BE86C 38 60 00 00 */ li r3, 0
|
||||
/* 803C1910 003BE870 48 00 00 40 */ b lbl_803C1950
|
||||
lbl_803C1914:
|
||||
/* 803C1914 003BE874 4B FB BE 09 */ bl OSGetConsoleType
|
||||
/* 803C1918 003BE878 54 60 00 C7 */ rlwinm. r0, r3, 0, 3, 3
|
||||
/* 803C191C 003BE87C 40 82 00 14 */ bne lbl_803C1930
|
||||
/* 803C1920 003BE880 38 00 00 00 */ li r0, 0
|
||||
/* 803C1924 003BE884 90 0D B0 30 */ stw r0, lbl_805A9BF0@sda21(r13)
|
||||
/* 803C1928 003BE888 38 60 00 02 */ li r3, 2
|
||||
/* 803C192C 003BE88C 48 00 00 24 */ b lbl_803C1950
|
||||
lbl_803C1930:
|
||||
/* 803C1930 003BE890 3C 60 A5 FF */ lis r3, 0xA5FF005A@ha
|
||||
/* 803C1934 003BE894 38 03 00 5A */ addi r0, r3, 0xA5FF005A@l
|
||||
/* 803C1938 003BE898 38 60 00 00 */ li r3, 0
|
||||
/* 803C193C 003BE89C 90 0D B0 30 */ stw r0, lbl_805A9BF0@sda21(r13)
|
||||
/* 803C1940 003BE8A0 38 00 00 01 */ li r0, 1
|
||||
/* 803C1944 003BE8A4 90 6D B0 28 */ stw r3, lbl_805A9BE8@sda21(r13)
|
||||
/* 803C1948 003BE8A8 38 60 00 00 */ li r3, 0
|
||||
/* 803C194C 003BE8AC 90 0D B0 2C */ stw r0, lbl_805A9BEC@sda21(r13)
|
||||
lbl_803C1950:
|
||||
/* 803C1950 003BE8B0 80 01 00 0C */ lwz r0, 0xc(r1)
|
||||
/* 803C1954 003BE8B4 38 21 00 08 */ addi r1, r1, 8
|
||||
/* 803C1958 003BE8B8 7C 08 03 A6 */ mtlr r0
|
||||
/* 803C195C 003BE8BC 4E 80 00 20 */ blr
|
||||
|
||||
.global WriteUARTN
|
||||
WriteUARTN:
|
||||
/* 803C1960 003BE8C0 7C 08 02 A6 */ mflr r0
|
||||
/* 803C1964 003BE8C4 90 01 00 04 */ stw r0, 4(r1)
|
||||
/* 803C1968 003BE8C8 94 21 FF D0 */ stwu r1, -0x30(r1)
|
||||
/* 803C196C 003BE8CC BF 41 00 18 */ stmw r26, 0x18(r1)
|
||||
/* 803C1970 003BE8D0 3B C3 00 00 */ addi r30, r3, 0
|
||||
/* 803C1974 003BE8D4 3B E4 00 00 */ addi r31, r4, 0
|
||||
/* 803C1978 003BE8D8 80 AD B0 30 */ lwz r5, lbl_805A9BF0@sda21(r13)
|
||||
/* 803C197C 003BE8DC 3C 05 5A 01 */ addis r0, r5, 0x5a01
|
||||
/* 803C1980 003BE8E0 28 00 00 5A */ cmplwi r0, 0x5a
|
||||
/* 803C1984 003BE8E4 41 82 00 0C */ beq lbl_803C1990
|
||||
/* 803C1988 003BE8E8 38 60 00 02 */ li r3, 2
|
||||
/* 803C198C 003BE8EC 48 00 01 C0 */ b lbl_803C1B4C
|
||||
lbl_803C1990:
|
||||
/* 803C1990 003BE8F0 80 6D B0 28 */ lwz r3, lbl_805A9BE8@sda21(r13)
|
||||
/* 803C1994 003BE8F4 38 A0 00 00 */ li r5, 0
|
||||
/* 803C1998 003BE8F8 80 8D B0 2C */ lwz r4, lbl_805A9BEC@sda21(r13)
|
||||
/* 803C199C 003BE8FC 4B FF F9 C9 */ bl EXILock
|
||||
/* 803C19A0 003BE900 2C 03 00 00 */ cmpwi r3, 0
|
||||
/* 803C19A4 003BE904 40 82 00 0C */ bne lbl_803C19B0
|
||||
/* 803C19A8 003BE908 38 60 00 00 */ li r3, 0
|
||||
/* 803C19AC 003BE90C 48 00 01 A0 */ b lbl_803C1B4C
|
||||
lbl_803C19B0:
|
||||
/* 803C19B0 003BE910 38 9E 00 00 */ addi r4, r30, 0
|
||||
/* 803C19B4 003BE914 38 60 00 0D */ li r3, 0xd
|
||||
/* 803C19B8 003BE918 48 00 00 18 */ b lbl_803C19D0
|
||||
lbl_803C19BC:
|
||||
/* 803C19BC 003BE91C 88 04 00 00 */ lbz r0, 0(r4)
|
||||
/* 803C19C0 003BE920 2C 00 00 0A */ cmpwi r0, 0xa
|
||||
/* 803C19C4 003BE924 40 82 00 08 */ bne lbl_803C19CC
|
||||
/* 803C19C8 003BE928 98 64 00 00 */ stb r3, 0(r4)
|
||||
lbl_803C19CC:
|
||||
/* 803C19CC 003BE92C 38 84 00 01 */ addi r4, r4, 1
|
||||
lbl_803C19D0:
|
||||
/* 803C19D0 003BE930 7C 1E 20 50 */ subf r0, r30, r4
|
||||
/* 803C19D4 003BE934 7C 00 F8 40 */ cmplw r0, r31
|
||||
/* 803C19D8 003BE938 41 80 FF E4 */ blt lbl_803C19BC
|
||||
/* 803C19DC 003BE93C 3C 00 A0 01 */ lis r0, 0xa001
|
||||
/* 803C19E0 003BE940 90 01 00 14 */ stw r0, 0x14(r1)
|
||||
/* 803C19E4 003BE944 3B 40 00 00 */ li r26, 0
|
||||
/* 803C19E8 003BE948 3F A0 20 01 */ lis r29, 0x2001
|
||||
/* 803C19EC 003BE94C 48 00 01 4C */ b lbl_803C1B38
|
||||
lbl_803C19F0:
|
||||
/* 803C19F0 003BE950 80 6D B0 28 */ lwz r3, lbl_805A9BE8@sda21(r13)
|
||||
/* 803C19F4 003BE954 38 A0 00 03 */ li r5, 3
|
||||
/* 803C19F8 003BE958 80 8D B0 2C */ lwz r4, lbl_805A9BEC@sda21(r13)
|
||||
/* 803C19FC 003BE95C 4B FF F2 61 */ bl EXISelect
|
||||
/* 803C1A00 003BE960 2C 03 00 00 */ cmpwi r3, 0
|
||||
/* 803C1A04 003BE964 40 82 00 0C */ bne lbl_803C1A10
|
||||
/* 803C1A08 003BE968 38 00 FF FF */ li r0, -1
|
||||
/* 803C1A0C 003BE96C 48 00 00 5C */ b lbl_803C1A68
|
||||
lbl_803C1A10:
|
||||
/* 803C1A10 003BE970 93 A1 00 10 */ stw r29, 0x10(r1)
|
||||
/* 803C1A14 003BE974 38 81 00 10 */ addi r4, r1, 0x10
|
||||
/* 803C1A18 003BE978 80 6D B0 28 */ lwz r3, lbl_805A9BE8@sda21(r13)
|
||||
/* 803C1A1C 003BE97C 38 A0 00 04 */ li r5, 4
|
||||
/* 803C1A20 003BE980 38 C0 00 01 */ li r6, 1
|
||||
/* 803C1A24 003BE984 38 E0 00 00 */ li r7, 0
|
||||
/* 803C1A28 003BE988 4B FF E6 E1 */ bl EXIImm
|
||||
/* 803C1A2C 003BE98C 80 6D B0 28 */ lwz r3, lbl_805A9BE8@sda21(r13)
|
||||
/* 803C1A30 003BE990 4B FF EA C1 */ bl sub_803c04f0
|
||||
/* 803C1A34 003BE994 80 6D B0 28 */ lwz r3, lbl_805A9BE8@sda21(r13)
|
||||
/* 803C1A38 003BE998 38 81 00 10 */ addi r4, r1, 0x10
|
||||
/* 803C1A3C 003BE99C 38 A0 00 01 */ li r5, 1
|
||||
/* 803C1A40 003BE9A0 38 C0 00 00 */ li r6, 0
|
||||
/* 803C1A44 003BE9A4 38 E0 00 00 */ li r7, 0
|
||||
/* 803C1A48 003BE9A8 4B FF E6 C1 */ bl EXIImm
|
||||
/* 803C1A4C 003BE9AC 80 6D B0 28 */ lwz r3, lbl_805A9BE8@sda21(r13)
|
||||
/* 803C1A50 003BE9B0 4B FF EA A1 */ bl sub_803c04f0
|
||||
/* 803C1A54 003BE9B4 80 6D B0 28 */ lwz r3, lbl_805A9BE8@sda21(r13)
|
||||
/* 803C1A58 003BE9B8 4B FF F3 31 */ bl EXIDeselect
|
||||
/* 803C1A5C 003BE9BC 80 01 00 10 */ lwz r0, 0x10(r1)
|
||||
/* 803C1A60 003BE9C0 54 00 46 3E */ srwi r0, r0, 0x18
|
||||
/* 803C1A64 003BE9C4 20 00 00 10 */ subfic r0, r0, 0x10
|
||||
lbl_803C1A68:
|
||||
/* 803C1A68 003BE9C8 2C 00 00 00 */ cmpwi r0, 0
|
||||
/* 803C1A6C 003BE9CC 7C 1B 03 78 */ mr r27, r0
|
||||
/* 803C1A70 003BE9D0 40 80 00 0C */ bge lbl_803C1A7C
|
||||
/* 803C1A74 003BE9D4 3B 40 00 03 */ li r26, 3
|
||||
/* 803C1A78 003BE9D8 48 00 00 C8 */ b lbl_803C1B40
|
||||
lbl_803C1A7C:
|
||||
/* 803C1A7C 003BE9DC 2C 00 00 0C */ cmpwi r0, 0xc
|
||||
/* 803C1A80 003BE9E0 40 80 00 0C */ bge lbl_803C1A8C
|
||||
/* 803C1A84 003BE9E4 7C 00 F8 40 */ cmplw r0, r31
|
||||
/* 803C1A88 003BE9E8 41 80 00 B0 */ blt lbl_803C1B38
|
||||
lbl_803C1A8C:
|
||||
/* 803C1A8C 003BE9EC 80 6D B0 28 */ lwz r3, lbl_805A9BE8@sda21(r13)
|
||||
/* 803C1A90 003BE9F0 38 A0 00 03 */ li r5, 3
|
||||
/* 803C1A94 003BE9F4 80 8D B0 2C */ lwz r4, lbl_805A9BEC@sda21(r13)
|
||||
/* 803C1A98 003BE9F8 4B FF F1 C5 */ bl EXISelect
|
||||
/* 803C1A9C 003BE9FC 2C 03 00 00 */ cmpwi r3, 0
|
||||
/* 803C1AA0 003BEA00 40 82 00 0C */ bne lbl_803C1AAC
|
||||
/* 803C1AA4 003BEA04 3B 40 00 03 */ li r26, 3
|
||||
/* 803C1AA8 003BEA08 48 00 00 98 */ b lbl_803C1B40
|
||||
lbl_803C1AAC:
|
||||
/* 803C1AAC 003BEA0C 80 6D B0 28 */ lwz r3, lbl_805A9BE8@sda21(r13)
|
||||
/* 803C1AB0 003BEA10 38 81 00 14 */ addi r4, r1, 0x14
|
||||
/* 803C1AB4 003BEA14 38 A0 00 04 */ li r5, 4
|
||||
/* 803C1AB8 003BEA18 38 C0 00 01 */ li r6, 1
|
||||
/* 803C1ABC 003BEA1C 38 E0 00 00 */ li r7, 0
|
||||
/* 803C1AC0 003BEA20 4B FF E6 49 */ bl EXIImm
|
||||
/* 803C1AC4 003BEA24 80 6D B0 28 */ lwz r3, lbl_805A9BE8@sda21(r13)
|
||||
/* 803C1AC8 003BEA28 4B FF EA 29 */ bl sub_803c04f0
|
||||
/* 803C1ACC 003BEA2C 48 00 00 54 */ b lbl_803C1B20
|
||||
lbl_803C1AD0:
|
||||
/* 803C1AD0 003BEA30 2C 1B 00 04 */ cmpwi r27, 4
|
||||
/* 803C1AD4 003BEA34 40 80 00 0C */ bge lbl_803C1AE0
|
||||
/* 803C1AD8 003BEA38 7C 1B F8 40 */ cmplw r27, r31
|
||||
/* 803C1ADC 003BEA3C 41 80 00 54 */ blt lbl_803C1B30
|
||||
lbl_803C1AE0:
|
||||
/* 803C1AE0 003BEA40 28 1F 00 04 */ cmplwi r31, 4
|
||||
/* 803C1AE4 003BEA44 40 80 00 0C */ bge lbl_803C1AF0
|
||||
/* 803C1AE8 003BEA48 7F FC FB 78 */ mr r28, r31
|
||||
/* 803C1AEC 003BEA4C 48 00 00 08 */ b lbl_803C1AF4
|
||||
lbl_803C1AF0:
|
||||
/* 803C1AF0 003BEA50 3B 80 00 04 */ li r28, 4
|
||||
lbl_803C1AF4:
|
||||
/* 803C1AF4 003BEA54 80 6D B0 28 */ lwz r3, lbl_805A9BE8@sda21(r13)
|
||||
/* 803C1AF8 003BEA58 7F 85 E3 78 */ mr r5, r28
|
||||
/* 803C1AFC 003BEA5C 38 9E 00 00 */ addi r4, r30, 0
|
||||
/* 803C1B00 003BEA60 38 C0 00 01 */ li r6, 1
|
||||
/* 803C1B04 003BEA64 38 E0 00 00 */ li r7, 0
|
||||
/* 803C1B08 003BEA68 4B FF E6 01 */ bl EXIImm
|
||||
/* 803C1B0C 003BEA6C 80 6D B0 28 */ lwz r3, lbl_805A9BE8@sda21(r13)
|
||||
/* 803C1B10 003BEA70 7F DE E2 14 */ add r30, r30, r28
|
||||
/* 803C1B14 003BEA74 7F FC F8 50 */ subf r31, r28, r31
|
||||
/* 803C1B18 003BEA78 7F 7C D8 50 */ subf r27, r28, r27
|
||||
/* 803C1B1C 003BEA7C 4B FF E9 D5 */ bl sub_803c04f0
|
||||
lbl_803C1B20:
|
||||
/* 803C1B20 003BEA80 2C 1B 00 00 */ cmpwi r27, 0
|
||||
/* 803C1B24 003BEA84 41 82 00 0C */ beq lbl_803C1B30
|
||||
/* 803C1B28 003BEA88 28 1F 00 00 */ cmplwi r31, 0
|
||||
/* 803C1B2C 003BEA8C 40 82 FF A4 */ bne lbl_803C1AD0
|
||||
lbl_803C1B30:
|
||||
/* 803C1B30 003BEA90 80 6D B0 28 */ lwz r3, lbl_805A9BE8@sda21(r13)
|
||||
/* 803C1B34 003BEA94 4B FF F2 55 */ bl EXIDeselect
|
||||
lbl_803C1B38:
|
||||
/* 803C1B38 003BEA98 28 1F 00 00 */ cmplwi r31, 0
|
||||
/* 803C1B3C 003BEA9C 40 82 FE B4 */ bne lbl_803C19F0
|
||||
lbl_803C1B40:
|
||||
/* 803C1B40 003BEAA0 80 6D B0 28 */ lwz r3, lbl_805A9BE8@sda21(r13)
|
||||
/* 803C1B44 003BEAA4 4B FF F9 15 */ bl EXIUnlock
|
||||
/* 803C1B48 003BEAA8 7F 43 D3 78 */ mr r3, r26
|
||||
lbl_803C1B4C:
|
||||
/* 803C1B4C 003BEAAC BB 41 00 18 */ lmw r26, 0x18(r1)
|
||||
/* 803C1B50 003BEAB0 80 01 00 34 */ lwz r0, 0x34(r1)
|
||||
/* 803C1B54 003BEAB4 38 21 00 30 */ addi r1, r1, 0x30
|
||||
/* 803C1B58 003BEAB8 7C 08 03 A6 */ mtlr r0
|
||||
/* 803C1B5C 003BEABC 4E 80 00 20 */ blr
|
||||
|
File diff suppressed because it is too large
Load Diff
|
@ -0,0 +1,83 @@
|
|||
.include "macros.inc"
|
||||
|
||||
.section .text, "ax"
|
||||
|
||||
.global SISetSamplingRate
|
||||
SISetSamplingRate:
|
||||
/* 803BFF0C 003BCE6C 7C 08 02 A6 */ mflr r0
|
||||
/* 803BFF10 003BCE70 90 01 00 04 */ stw r0, 4(r1)
|
||||
/* 803BFF14 003BCE74 94 21 FF E0 */ stwu r1, -0x20(r1)
|
||||
/* 803BFF18 003BCE78 93 E1 00 1C */ stw r31, 0x1c(r1)
|
||||
/* 803BFF1C 003BCE7C 93 C1 00 18 */ stw r30, 0x18(r1)
|
||||
/* 803BFF20 003BCE80 93 A1 00 14 */ stw r29, 0x14(r1)
|
||||
/* 803BFF24 003BCE84 3B A3 00 00 */ addi r29, r3, 0
|
||||
/* 803BFF28 003BCE88 28 1D 00 0B */ cmplwi r29, 0xb
|
||||
/* 803BFF2C 003BCE8C 3C 60 80 3F */ lis r3, lbl_803F6FB8@ha
|
||||
/* 803BFF30 003BCE90 3B E3 6F B8 */ addi r31, r3, lbl_803F6FB8@l
|
||||
/* 803BFF34 003BCE94 40 81 00 08 */ ble lbl_803BFF3C
|
||||
/* 803BFF38 003BCE98 3B A0 00 0B */ li r29, 0xb
|
||||
lbl_803BFF3C:
|
||||
/* 803BFF3C 003BCE9C 4B FC 17 25 */ bl OSDisableInterrupts
|
||||
/* 803BFF40 003BCEA0 93 AD B0 20 */ stw r29, lbl_805A9BE0@sda21(r13)
|
||||
/* 803BFF44 003BCEA4 7C 7E 1B 78 */ mr r30, r3
|
||||
/* 803BFF48 003BCEA8 4B FC 95 91 */ bl VIGetTvFormat
|
||||
/* 803BFF4C 003BCEAC 2C 03 00 02 */ cmpwi r3, 2
|
||||
/* 803BFF50 003BCEB0 41 82 00 24 */ beq lbl_803BFF74
|
||||
/* 803BFF54 003BCEB4 40 80 00 14 */ bge lbl_803BFF68
|
||||
/* 803BFF58 003BCEB8 2C 03 00 00 */ cmpwi r3, 0
|
||||
/* 803BFF5C 003BCEBC 41 82 00 18 */ beq lbl_803BFF74
|
||||
/* 803BFF60 003BCEC0 40 80 00 1C */ bge lbl_803BFF7C
|
||||
/* 803BFF64 003BCEC4 48 00 00 20 */ b lbl_803BFF84
|
||||
lbl_803BFF68:
|
||||
/* 803BFF68 003BCEC8 2C 03 00 05 */ cmpwi r3, 5
|
||||
/* 803BFF6C 003BCECC 41 82 00 08 */ beq lbl_803BFF74
|
||||
/* 803BFF70 003BCED0 48 00 00 14 */ b lbl_803BFF84
|
||||
lbl_803BFF74:
|
||||
/* 803BFF74 003BCED4 7F E4 FB 78 */ mr r4, r31
|
||||
/* 803BFF78 003BCED8 48 00 00 20 */ b lbl_803BFF98
|
||||
lbl_803BFF7C:
|
||||
/* 803BFF7C 003BCEDC 38 9F 00 30 */ addi r4, r31, 0x30
|
||||
/* 803BFF80 003BCEE0 48 00 00 18 */ b lbl_803BFF98
|
||||
lbl_803BFF84:
|
||||
/* 803BFF84 003BCEE4 38 7F 00 60 */ addi r3, r31, 0x60
|
||||
/* 803BFF88 003BCEE8 4C C6 31 82 */ crclr 6
|
||||
/* 803BFF8C 003BCEEC 4B FB FA 21 */ bl OSReport
|
||||
/* 803BFF90 003BCEF0 3B A0 00 00 */ li r29, 0
|
||||
/* 803BFF94 003BCEF4 38 9F 00 00 */ addi r4, r31, 0
|
||||
lbl_803BFF98:
|
||||
/* 803BFF98 003BCEF8 3C 60 CC 00 */ lis r3, 0xCC00206C@ha
|
||||
/* 803BFF9C 003BCEFC A0 03 20 6C */ lhz r0, 0xCC00206C@l(r3)
|
||||
/* 803BFFA0 003BCF00 54 00 07 FF */ clrlwi. r0, r0, 0x1f
|
||||
/* 803BFFA4 003BCF04 41 82 00 0C */ beq lbl_803BFFB0
|
||||
/* 803BFFA8 003BCF08 38 A0 00 02 */ li r5, 2
|
||||
/* 803BFFAC 003BCF0C 48 00 00 08 */ b lbl_803BFFB4
|
||||
lbl_803BFFB0:
|
||||
/* 803BFFB0 003BCF10 38 A0 00 01 */ li r5, 1
|
||||
lbl_803BFFB4:
|
||||
/* 803BFFB4 003BCF14 57 A3 10 3A */ slwi r3, r29, 2
|
||||
/* 803BFFB8 003BCF18 7C 04 1A 2E */ lhzx r0, r4, r3
|
||||
/* 803BFFBC 003BCF1C 7C 64 1A 14 */ add r3, r4, r3
|
||||
/* 803BFFC0 003BCF20 88 83 00 02 */ lbz r4, 2(r3)
|
||||
/* 803BFFC4 003BCF24 7C 65 01 D6 */ mullw r3, r5, r0
|
||||
/* 803BFFC8 003BCF28 4B FF F3 39 */ bl SISetXY
|
||||
/* 803BFFCC 003BCF2C 7F C3 F3 78 */ mr r3, r30
|
||||
/* 803BFFD0 003BCF30 4B FC 16 B9 */ bl OSRestoreInterrupts
|
||||
/* 803BFFD4 003BCF34 80 01 00 24 */ lwz r0, 0x24(r1)
|
||||
/* 803BFFD8 003BCF38 83 E1 00 1C */ lwz r31, 0x1c(r1)
|
||||
/* 803BFFDC 003BCF3C 83 C1 00 18 */ lwz r30, 0x18(r1)
|
||||
/* 803BFFE0 003BCF40 83 A1 00 14 */ lwz r29, 0x14(r1)
|
||||
/* 803BFFE4 003BCF44 38 21 00 20 */ addi r1, r1, 0x20
|
||||
/* 803BFFE8 003BCF48 7C 08 03 A6 */ mtlr r0
|
||||
/* 803BFFEC 003BCF4C 4E 80 00 20 */ blr
|
||||
|
||||
.global SIRefreshSamplingRate
|
||||
SIRefreshSamplingRate:
|
||||
/* 803BFFF0 003BCF50 7C 08 02 A6 */ mflr r0
|
||||
/* 803BFFF4 003BCF54 90 01 00 04 */ stw r0, 4(r1)
|
||||
/* 803BFFF8 003BCF58 94 21 FF F8 */ stwu r1, -8(r1)
|
||||
/* 803BFFFC 003BCF5C 80 6D B0 20 */ lwz r3, lbl_805A9BE0@sda21(r13)
|
||||
/* 803C0000 003BCF60 4B FF FF 0D */ bl SISetSamplingRate
|
||||
/* 803C0004 003BCF64 80 01 00 0C */ lwz r0, 0xc(r1)
|
||||
/* 803C0008 003BCF68 38 21 00 08 */ addi r1, r1, 8
|
||||
/* 803C000C 003BCF6C 7C 08 03 A6 */ mtlr r0
|
||||
/* 803C0010 003BCF70 4E 80 00 20 */ blr
|
|
@ -0,0 +1,695 @@
|
|||
.include "macros.inc"
|
||||
|
||||
.section .text, "ax"
|
||||
|
||||
.global sub_803b7518
|
||||
sub_803b7518:
|
||||
/* 803B7518 003B4478 54 60 06 3F */ clrlwi. r0, r3, 0x18
|
||||
/* 803B751C 003B447C 4C 82 00 20 */ bnelr
|
||||
/* 803B7520 003B4480 38 00 00 01 */ li r0, 1
|
||||
/* 803B7524 003B4484 90 0D B0 00 */ stw r0, lbl_805A9BC0@sda21(r13)
|
||||
/* 803B7528 003B4488 38 00 00 00 */ li r0, 0
|
||||
/* 803B752C 003B448C 90 0D AF F0 */ stw r0, lbl_805A9BB0@sda21(r13)
|
||||
/* 803B7530 003B4490 4E 80 00 20 */ blr
|
||||
|
||||
.global sub_803b7534
|
||||
sub_803b7534:
|
||||
/* 803B7534 003B4494 7C 08 02 A6 */ mflr r0
|
||||
/* 803B7538 003B4498 90 01 00 04 */ stw r0, 4(r1)
|
||||
/* 803B753C 003B449C 94 21 FF F8 */ stwu r1, -8(r1)
|
||||
/* 803B7540 003B44A0 88 6D AF F8 */ lbz r3, lbl_805A9BB8@sda21(r13)
|
||||
/* 803B7544 003B44A4 4B FB 5E 39 */ bl AISetStreamVolLeft
|
||||
/* 803B7548 003B44A8 88 6D AF F9 */ lbz r3, lbl_805A9BB9@sda21(r13)
|
||||
/* 803B754C 003B44AC 4B FB 5E 5D */ bl AISetStreamVolRight
|
||||
/* 803B7550 003B44B0 4B FB 5B 49 */ bl sub_8036d098
|
||||
/* 803B7554 003B44B4 80 6D AF F4 */ lwz r3, lbl_805A9BB4@sda21(r13)
|
||||
/* 803B7558 003B44B8 4B FB 5B 59 */ bl SetTRKConnected
|
||||
/* 803B755C 003B44BC 38 60 00 01 */ li r3, 1
|
||||
/* 803B7560 003B44C0 4B FB 5B 5D */ bl AISetStreamPlayState
|
||||
/* 803B7564 003B44C4 3C 60 80 57 */ lis r3, lbl_80569908@ha
|
||||
/* 803B7568 003B44C8 38 63 99 08 */ addi r3, r3, lbl_80569908@l
|
||||
/* 803B756C 003B44CC 38 80 00 00 */ li r4, 0
|
||||
/* 803B7570 003B44D0 4B FB C8 4D */ bl sub_80373dbc
|
||||
/* 803B7574 003B44D4 80 6D AF D8 */ lwz r3, lbl_805A9B98@sda21(r13)
|
||||
/* 803B7578 003B44D8 38 00 00 01 */ li r0, 1
|
||||
/* 803B757C 003B44DC 90 0D AF E4 */ stw r0, lbl_805A9BA4@sda21(r13)
|
||||
/* 803B7580 003B44E0 28 03 00 00 */ cmplwi r3, 0
|
||||
/* 803B7584 003B44E4 41 82 00 24 */ beq lbl_803B75A8
|
||||
/* 803B7588 003B44E8 81 83 00 10 */ lwz r12, 0x10(r3)
|
||||
/* 803B758C 003B44EC 28 0C 00 00 */ cmplwi r12, 0
|
||||
/* 803B7590 003B44F0 41 82 00 18 */ beq lbl_803B75A8
|
||||
/* 803B7594 003B44F4 80 03 00 0C */ lwz r0, 0xc(r3)
|
||||
/* 803B7598 003B44F8 54 03 07 FF */ clrlwi. r3, r0, 0x1f
|
||||
/* 803B759C 003B44FC 41 82 00 0C */ beq lbl_803B75A8
|
||||
/* 803B75A0 003B4500 7D 88 03 A6 */ mtlr r12
|
||||
/* 803B75A4 003B4504 4E 80 00 21 */ blrl
|
||||
lbl_803B75A8:
|
||||
/* 803B75A8 003B4508 80 01 00 0C */ lwz r0, 0xc(r1)
|
||||
/* 803B75AC 003B450C 38 21 00 08 */ addi r1, r1, 8
|
||||
/* 803B75B0 003B4510 7C 08 03 A6 */ mtlr r0
|
||||
/* 803B75B4 003B4514 4E 80 00 20 */ blr
|
||||
|
||||
.global sub_803b75b8
|
||||
sub_803b75b8:
|
||||
/* 803B75B8 003B4518 7C 08 02 A6 */ mflr r0
|
||||
/* 803B75BC 003B451C 38 60 00 00 */ li r3, 0
|
||||
/* 803B75C0 003B4520 90 01 00 04 */ stw r0, 4(r1)
|
||||
/* 803B75C4 003B4524 94 21 FF F8 */ stwu r1, -8(r1)
|
||||
/* 803B75C8 003B4528 4B FB 5D B5 */ bl AISetStreamVolLeft
|
||||
/* 803B75CC 003B452C 38 60 00 00 */ li r3, 0
|
||||
/* 803B75D0 003B4530 4B FB 5D D9 */ bl AISetStreamVolRight
|
||||
/* 803B75D4 003B4534 38 60 00 00 */ li r3, 0
|
||||
/* 803B75D8 003B4538 4B FB 5A E5 */ bl AISetStreamPlayState
|
||||
/* 803B75DC 003B453C 3C 60 80 57 */ lis r3, lbl_80569938@ha
|
||||
/* 803B75E0 003B4540 38 63 99 38 */ addi r3, r3, lbl_80569938@l
|
||||
/* 803B75E4 003B4544 38 80 00 00 */ li r4, 0
|
||||
/* 803B75E8 003B4548 4B FB C7 D5 */ bl sub_80373dbc
|
||||
/* 803B75EC 003B454C 80 6D AF D8 */ lwz r3, lbl_805A9B98@sda21(r13)
|
||||
/* 803B75F0 003B4550 38 00 00 02 */ li r0, 2
|
||||
/* 803B75F4 003B4554 90 0D AF E4 */ stw r0, lbl_805A9BA4@sda21(r13)
|
||||
/* 803B75F8 003B4558 28 03 00 00 */ cmplwi r3, 0
|
||||
/* 803B75FC 003B455C 41 82 00 24 */ beq lbl_803B7620
|
||||
/* 803B7600 003B4560 81 83 00 10 */ lwz r12, 0x10(r3)
|
||||
/* 803B7604 003B4564 28 0C 00 00 */ cmplwi r12, 0
|
||||
/* 803B7608 003B4568 41 82 00 18 */ beq lbl_803B7620
|
||||
/* 803B760C 003B456C 80 03 00 0C */ lwz r0, 0xc(r3)
|
||||
/* 803B7610 003B4570 54 03 06 B5 */ rlwinm. r3, r0, 0, 0x1a, 0x1a
|
||||
/* 803B7614 003B4574 41 82 00 0C */ beq lbl_803B7620
|
||||
/* 803B7618 003B4578 7D 88 03 A6 */ mtlr r12
|
||||
/* 803B761C 003B457C 4E 80 00 21 */ blrl
|
||||
lbl_803B7620:
|
||||
/* 803B7620 003B4580 80 01 00 0C */ lwz r0, 0xc(r1)
|
||||
/* 803B7624 003B4584 38 21 00 08 */ addi r1, r1, 8
|
||||
/* 803B7628 003B4588 7C 08 03 A6 */ mtlr r0
|
||||
/* 803B762C 003B458C 4E 80 00 20 */ blr
|
||||
|
||||
.global sub_803b7630
|
||||
sub_803b7630:
|
||||
/* 803B7630 003B4590 7C 08 02 A6 */ mflr r0
|
||||
/* 803B7634 003B4594 90 01 00 04 */ stw r0, 4(r1)
|
||||
/* 803B7638 003B4598 94 21 FF F8 */ stwu r1, -8(r1)
|
||||
/* 803B763C 003B459C 90 6D AF F0 */ stw r3, lbl_805A9BB0@sda21(r13)
|
||||
/* 803B7640 003B45A0 80 0D B0 00 */ lwz r0, lbl_805A9BC0@sda21(r13)
|
||||
/* 803B7644 003B45A4 28 00 00 00 */ cmplwi r0, 0
|
||||
/* 803B7648 003B45A8 41 82 01 C0 */ beq lbl_803B7808
|
||||
/* 803B764C 003B45AC 80 6D AF D8 */ lwz r3, lbl_805A9B98@sda21(r13)
|
||||
/* 803B7650 003B45B0 38 00 00 00 */ li r0, 0
|
||||
/* 803B7654 003B45B4 90 0D B0 00 */ stw r0, lbl_805A9BC0@sda21(r13)
|
||||
/* 803B7658 003B45B8 28 03 00 00 */ cmplwi r3, 0
|
||||
/* 803B765C 003B45BC 41 82 00 24 */ beq lbl_803B7680
|
||||
/* 803B7660 003B45C0 81 83 00 10 */ lwz r12, 0x10(r3)
|
||||
/* 803B7664 003B45C4 28 0C 00 00 */ cmplwi r12, 0
|
||||
/* 803B7668 003B45C8 41 82 00 18 */ beq lbl_803B7680
|
||||
/* 803B766C 003B45CC 80 03 00 0C */ lwz r0, 0xc(r3)
|
||||
/* 803B7670 003B45D0 54 03 06 F7 */ rlwinm. r3, r0, 0, 0x1b, 0x1b
|
||||
/* 803B7674 003B45D4 41 82 00 0C */ beq lbl_803B7680
|
||||
/* 803B7678 003B45D8 7D 88 03 A6 */ mtlr r12
|
||||
/* 803B767C 003B45DC 4E 80 00 21 */ blrl
|
||||
lbl_803B7680:
|
||||
/* 803B7680 003B45E0 38 00 00 03 */ li r0, 3
|
||||
/* 803B7684 003B45E4 90 0D AF E4 */ stw r0, lbl_805A9BA4@sda21(r13)
|
||||
/* 803B7688 003B45E8 80 0D AF EC */ lwz r0, lbl_805A9BAC@sda21(r13)
|
||||
/* 803B768C 003B45EC 2C 00 00 01 */ cmpwi r0, 1
|
||||
/* 803B7690 003B45F0 41 82 00 A0 */ beq lbl_803B7730
|
||||
/* 803B7694 003B45F4 40 80 00 10 */ bge lbl_803B76A4
|
||||
/* 803B7698 003B45F8 2C 00 00 00 */ cmpwi r0, 0
|
||||
/* 803B769C 003B45FC 40 80 00 14 */ bge lbl_803B76B0
|
||||
/* 803B76A0 003B4600 48 00 01 7C */ b lbl_803B781C
|
||||
lbl_803B76A4:
|
||||
/* 803B76A4 003B4604 2C 00 00 03 */ cmpwi r0, 3
|
||||
/* 803B76A8 003B4608 40 80 01 74 */ bge lbl_803B781C
|
||||
/* 803B76AC 003B460C 48 00 01 18 */ b lbl_803B77C4
|
||||
lbl_803B76B0:
|
||||
/* 803B76B0 003B4610 80 6D AF D8 */ lwz r3, lbl_805A9B98@sda21(r13)
|
||||
/* 803B76B4 003B4614 28 03 00 00 */ cmplwi r3, 0
|
||||
/* 803B76B8 003B4618 41 82 01 64 */ beq lbl_803B781C
|
||||
/* 803B76BC 003B461C 80 03 00 04 */ lwz r0, 4(r3)
|
||||
/* 803B76C0 003B4620 28 00 00 00 */ cmplwi r0, 0
|
||||
/* 803B76C4 003B4624 41 82 00 40 */ beq lbl_803B7704
|
||||
/* 803B76C8 003B4628 90 0D AF D8 */ stw r0, lbl_805A9B98@sda21(r13)
|
||||
/* 803B76CC 003B462C 38 60 00 00 */ li r3, 0
|
||||
/* 803B76D0 003B4630 4B FB 5C AD */ bl AISetStreamVolLeft
|
||||
/* 803B76D4 003B4634 38 60 00 00 */ li r3, 0
|
||||
/* 803B76D8 003B4638 4B FB 5C D1 */ bl AISetStreamVolRight
|
||||
/* 803B76DC 003B463C 38 60 00 00 */ li r3, 0
|
||||
/* 803B76E0 003B4640 4B FB 59 DD */ bl AISetStreamPlayState
|
||||
/* 803B76E4 003B4644 80 8D AF D8 */ lwz r4, lbl_805A9B98@sda21(r13)
|
||||
/* 803B76E8 003B4648 3C 60 80 3B */ lis r3, sub_803b7534@ha
|
||||
/* 803B76EC 003B464C 38 C3 75 34 */ addi r6, r3, sub_803b7534@l
|
||||
/* 803B76F0 003B4650 38 64 00 14 */ addi r3, r4, 0x14
|
||||
/* 803B76F4 003B4654 38 80 00 00 */ li r4, 0
|
||||
/* 803B76F8 003B4658 38 A0 00 00 */ li r5, 0
|
||||
/* 803B76FC 003B465C 4B FB A3 89 */ bl DVDPrepareStreamAsync
|
||||
/* 803B7700 003B4660 48 00 01 1C */ b lbl_803B781C
|
||||
lbl_803B7704:
|
||||
/* 803B7704 003B4664 80 0D AF DC */ lwz r0, lbl_805A9B9C@sda21(r13)
|
||||
/* 803B7708 003B4668 38 60 00 00 */ li r3, 0
|
||||
/* 803B770C 003B466C 90 0D AF D8 */ stw r0, lbl_805A9B98@sda21(r13)
|
||||
/* 803B7710 003B4670 4B FB 5C 6D */ bl AISetStreamVolLeft
|
||||
/* 803B7714 003B4674 38 60 00 00 */ li r3, 0
|
||||
/* 803B7718 003B4678 4B FB 5C 91 */ bl AISetStreamVolRight
|
||||
/* 803B771C 003B467C 38 60 00 00 */ li r3, 0
|
||||
/* 803B7720 003B4680 4B FB 59 9D */ bl AISetStreamPlayState
|
||||
/* 803B7724 003B4684 38 00 00 00 */ li r0, 0
|
||||
/* 803B7728 003B4688 90 0D AF E4 */ stw r0, lbl_805A9BA4@sda21(r13)
|
||||
/* 803B772C 003B468C 48 00 00 F0 */ b lbl_803B781C
|
||||
lbl_803B7730:
|
||||
/* 803B7730 003B4690 80 6D AF D8 */ lwz r3, lbl_805A9B98@sda21(r13)
|
||||
/* 803B7734 003B4694 28 03 00 00 */ cmplwi r3, 0
|
||||
/* 803B7738 003B4698 41 82 00 E4 */ beq lbl_803B781C
|
||||
/* 803B773C 003B469C 80 03 00 04 */ lwz r0, 4(r3)
|
||||
/* 803B7740 003B46A0 28 00 00 00 */ cmplwi r0, 0
|
||||
/* 803B7744 003B46A4 41 82 00 40 */ beq lbl_803B7784
|
||||
/* 803B7748 003B46A8 90 0D AF D8 */ stw r0, lbl_805A9B98@sda21(r13)
|
||||
/* 803B774C 003B46AC 38 60 00 00 */ li r3, 0
|
||||
/* 803B7750 003B46B0 4B FB 5C 2D */ bl AISetStreamVolLeft
|
||||
/* 803B7754 003B46B4 38 60 00 00 */ li r3, 0
|
||||
/* 803B7758 003B46B8 4B FB 5C 51 */ bl AISetStreamVolRight
|
||||
/* 803B775C 003B46BC 38 60 00 00 */ li r3, 0
|
||||
/* 803B7760 003B46C0 4B FB 59 5D */ bl AISetStreamPlayState
|
||||
/* 803B7764 003B46C4 80 8D AF D8 */ lwz r4, lbl_805A9B98@sda21(r13)
|
||||
/* 803B7768 003B46C8 3C 60 80 3B */ lis r3, sub_803b7534@ha
|
||||
/* 803B776C 003B46CC 38 C3 75 34 */ addi r6, r3, sub_803b7534@l
|
||||
/* 803B7770 003B46D0 38 64 00 14 */ addi r3, r4, 0x14
|
||||
/* 803B7774 003B46D4 38 80 00 00 */ li r4, 0
|
||||
/* 803B7778 003B46D8 38 A0 00 00 */ li r5, 0
|
||||
/* 803B777C 003B46DC 4B FB A3 09 */ bl DVDPrepareStreamAsync
|
||||
/* 803B7780 003B46E0 48 00 00 9C */ b lbl_803B781C
|
||||
lbl_803B7784:
|
||||
/* 803B7784 003B46E4 80 0D AF DC */ lwz r0, lbl_805A9B9C@sda21(r13)
|
||||
/* 803B7788 003B46E8 38 60 00 00 */ li r3, 0
|
||||
/* 803B778C 003B46EC 90 0D AF D8 */ stw r0, lbl_805A9B98@sda21(r13)
|
||||
/* 803B7790 003B46F0 4B FB 5B ED */ bl AISetStreamVolLeft
|
||||
/* 803B7794 003B46F4 38 60 00 00 */ li r3, 0
|
||||
/* 803B7798 003B46F8 4B FB 5C 11 */ bl AISetStreamVolRight
|
||||
/* 803B779C 003B46FC 38 60 00 00 */ li r3, 0
|
||||
/* 803B77A0 003B4700 4B FB 59 1D */ bl AISetStreamPlayState
|
||||
/* 803B77A4 003B4704 80 8D AF D8 */ lwz r4, lbl_805A9B98@sda21(r13)
|
||||
/* 803B77A8 003B4708 3C 60 80 3B */ lis r3, sub_803b7534@ha
|
||||
/* 803B77AC 003B470C 38 C3 75 34 */ addi r6, r3, sub_803b7534@l
|
||||
/* 803B77B0 003B4710 38 64 00 14 */ addi r3, r4, 0x14
|
||||
/* 803B77B4 003B4714 38 80 00 00 */ li r4, 0
|
||||
/* 803B77B8 003B4718 38 A0 00 00 */ li r5, 0
|
||||
/* 803B77BC 003B471C 4B FB A2 C9 */ bl DVDPrepareStreamAsync
|
||||
/* 803B77C0 003B4720 48 00 00 5C */ b lbl_803B781C
|
||||
lbl_803B77C4:
|
||||
/* 803B77C4 003B4724 80 0D AF D8 */ lwz r0, lbl_805A9B98@sda21(r13)
|
||||
/* 803B77C8 003B4728 28 00 00 00 */ cmplwi r0, 0
|
||||
/* 803B77CC 003B472C 41 82 00 50 */ beq lbl_803B781C
|
||||
/* 803B77D0 003B4730 38 60 00 00 */ li r3, 0
|
||||
/* 803B77D4 003B4734 4B FB 5B A9 */ bl AISetStreamVolLeft
|
||||
/* 803B77D8 003B4738 38 60 00 00 */ li r3, 0
|
||||
/* 803B77DC 003B473C 4B FB 5B CD */ bl AISetStreamVolRight
|
||||
/* 803B77E0 003B4740 38 60 00 00 */ li r3, 0
|
||||
/* 803B77E4 003B4744 4B FB 58 D9 */ bl AISetStreamPlayState
|
||||
/* 803B77E8 003B4748 80 8D AF D8 */ lwz r4, lbl_805A9B98@sda21(r13)
|
||||
/* 803B77EC 003B474C 3C 60 80 3B */ lis r3, sub_803b7534@ha
|
||||
/* 803B77F0 003B4750 38 C3 75 34 */ addi r6, r3, sub_803b7534@l
|
||||
/* 803B77F4 003B4754 38 64 00 14 */ addi r3, r4, 0x14
|
||||
/* 803B77F8 003B4758 38 80 00 00 */ li r4, 0
|
||||
/* 803B77FC 003B475C 38 A0 00 00 */ li r5, 0
|
||||
/* 803B7800 003B4760 4B FB A2 85 */ bl DVDPrepareStreamAsync
|
||||
/* 803B7804 003B4764 48 00 00 18 */ b lbl_803B781C
|
||||
lbl_803B7808:
|
||||
/* 803B7808 003B4768 3C 60 80 57 */ lis r3, lbl_80569968@ha
|
||||
/* 803B780C 003B476C 3C 80 80 3B */ lis r4, sub_803b7518@ha
|
||||
/* 803B7810 003B4770 38 63 99 68 */ addi r3, r3, lbl_80569968@l
|
||||
/* 803B7814 003B4774 38 84 75 18 */ addi r4, r4, sub_803b7518@l
|
||||
/* 803B7818 003B4778 4B FB C6 61 */ bl sub_80373e78
|
||||
lbl_803B781C:
|
||||
/* 803B781C 003B477C 80 01 00 0C */ lwz r0, 0xc(r1)
|
||||
/* 803B7820 003B4780 38 21 00 08 */ addi r1, r1, 8
|
||||
/* 803B7824 003B4784 7C 08 03 A6 */ mtlr r0
|
||||
/* 803B7828 003B4788 4E 80 00 20 */ blr
|
||||
|
||||
.global sub_803b782c
|
||||
sub_803b782c:
|
||||
/* 803B782C 003B478C 7C 08 02 A6 */ mflr r0
|
||||
/* 803B7830 003B4790 90 01 00 04 */ stw r0, 4(r1)
|
||||
/* 803B7834 003B4794 94 21 FF F8 */ stwu r1, -8(r1)
|
||||
/* 803B7838 003B4798 80 0D AF F4 */ lwz r0, lbl_805A9BB4@sda21(r13)
|
||||
/* 803B783C 003B479C 7C 63 02 14 */ add r3, r3, r0
|
||||
/* 803B7840 003B47A0 4B FB 58 71 */ bl SetTRKConnected
|
||||
/* 803B7844 003B47A4 80 0D AF D8 */ lwz r0, lbl_805A9B98@sda21(r13)
|
||||
/* 803B7848 003B47A8 28 00 00 00 */ cmplwi r0, 0
|
||||
/* 803B784C 003B47AC 41 82 00 18 */ beq lbl_803B7864
|
||||
/* 803B7850 003B47B0 3C 60 80 57 */ lis r3, lbl_80569998@ha
|
||||
/* 803B7854 003B47B4 3C 80 80 3B */ lis r4, sub_803b7630@ha
|
||||
/* 803B7858 003B47B8 38 63 99 98 */ addi r3, r3, lbl_80569998@l
|
||||
/* 803B785C 003B47BC 38 84 76 30 */ addi r4, r4, sub_803b7630@l
|
||||
/* 803B7860 003B47C0 4B FB C6 D5 */ bl sub_80373f34
|
||||
lbl_803B7864:
|
||||
/* 803B7864 003B47C4 80 01 00 0C */ lwz r0, 0xc(r1)
|
||||
/* 803B7868 003B47C8 38 21 00 08 */ addi r1, r1, 8
|
||||
/* 803B786C 003B47CC 7C 08 03 A6 */ mtlr r0
|
||||
/* 803B7870 003B47D0 4E 80 00 20 */ blr
|
||||
|
||||
.global sub_803b7874
|
||||
sub_803b7874:
|
||||
/* 803B7874 003B47D4 7C 08 02 A6 */ mflr r0
|
||||
/* 803B7878 003B47D8 38 60 00 00 */ li r3, 0
|
||||
/* 803B787C 003B47DC 90 01 00 04 */ stw r0, 4(r1)
|
||||
/* 803B7880 003B47E0 94 21 FF E8 */ stwu r1, -0x18(r1)
|
||||
/* 803B7884 003B47E4 93 E1 00 14 */ stw r31, 0x14(r1)
|
||||
/* 803B7888 003B47E8 4B FB 58 35 */ bl AISetStreamPlayState
|
||||
/* 803B788C 003B47EC 83 ED AF DC */ lwz r31, lbl_805A9B9C@sda21(r13)
|
||||
/* 803B7890 003B47F0 48 00 00 10 */ b lbl_803B78A0
|
||||
lbl_803B7894:
|
||||
/* 803B7894 003B47F4 38 7F 00 14 */ addi r3, r31, 0x14
|
||||
/* 803B7898 003B47F8 4B FB 9E B5 */ bl DVDClose
|
||||
/* 803B789C 003B47FC 83 FF 00 04 */ lwz r31, 4(r31)
|
||||
lbl_803B78A0:
|
||||
/* 803B78A0 003B4800 28 1F 00 00 */ cmplwi r31, 0
|
||||
/* 803B78A4 003B4804 40 82 FF F0 */ bne lbl_803B7894
|
||||
/* 803B78A8 003B4808 81 8D B0 04 */ lwz r12, lbl_805A9BC4@sda21(r13)
|
||||
/* 803B78AC 003B480C 3B E0 00 00 */ li r31, 0
|
||||
/* 803B78B0 003B4810 93 ED AF DC */ stw r31, lbl_805A9B9C@sda21(r13)
|
||||
/* 803B78B4 003B4814 28 0C 00 00 */ cmplwi r12, 0
|
||||
/* 803B78B8 003B4818 93 ED AF E0 */ stw r31, lbl_805A9BA0@sda21(r13)
|
||||
/* 803B78BC 003B481C 93 ED AF D8 */ stw r31, lbl_805A9B98@sda21(r13)
|
||||
/* 803B78C0 003B4820 93 ED AF E4 */ stw r31, lbl_805A9BA4@sda21(r13)
|
||||
/* 803B78C4 003B4824 41 82 00 10 */ beq lbl_803B78D4
|
||||
/* 803B78C8 003B4828 7D 88 03 A6 */ mtlr r12
|
||||
/* 803B78CC 003B482C 4E 80 00 21 */ blrl
|
||||
/* 803B78D0 003B4830 93 ED B0 04 */ stw r31, lbl_805A9BC4@sda21(r13)
|
||||
lbl_803B78D4:
|
||||
/* 803B78D4 003B4834 38 00 00 00 */ li r0, 0
|
||||
/* 803B78D8 003B4838 90 0D AF E4 */ stw r0, lbl_805A9BA4@sda21(r13)
|
||||
/* 803B78DC 003B483C 90 0D AF FC */ stw r0, lbl_805A9BBC@sda21(r13)
|
||||
/* 803B78E0 003B4840 80 01 00 1C */ lwz r0, 0x1c(r1)
|
||||
/* 803B78E4 003B4844 83 E1 00 14 */ lwz r31, 0x14(r1)
|
||||
/* 803B78E8 003B4848 38 21 00 18 */ addi r1, r1, 0x18
|
||||
/* 803B78EC 003B484C 7C 08 03 A6 */ mtlr r0
|
||||
/* 803B78F0 003B4850 4E 80 00 20 */ blr
|
||||
|
||||
.global sub_803b78f4
|
||||
sub_803b78f4:
|
||||
/* 803B78F4 003B4854 7C 08 02 A6 */ mflr r0
|
||||
/* 803B78F8 003B4858 90 01 00 04 */ stw r0, 4(r1)
|
||||
/* 803B78FC 003B485C 94 21 FF F8 */ stwu r1, -8(r1)
|
||||
/* 803B7900 003B4860 80 6D AF D8 */ lwz r3, lbl_805A9B98@sda21(r13)
|
||||
/* 803B7904 003B4864 28 03 00 00 */ cmplwi r3, 0
|
||||
/* 803B7908 003B4868 41 82 00 24 */ beq lbl_803B792C
|
||||
/* 803B790C 003B486C 81 83 00 10 */ lwz r12, 0x10(r3)
|
||||
/* 803B7910 003B4870 28 0C 00 00 */ cmplwi r12, 0
|
||||
/* 803B7914 003B4874 41 82 00 18 */ beq lbl_803B792C
|
||||
/* 803B7918 003B4878 80 03 00 0C */ lwz r0, 0xc(r3)
|
||||
/* 803B791C 003B487C 54 03 07 BD */ rlwinm. r3, r0, 0, 0x1e, 0x1e
|
||||
/* 803B7920 003B4880 41 82 00 0C */ beq lbl_803B792C
|
||||
/* 803B7924 003B4884 7D 88 03 A6 */ mtlr r12
|
||||
/* 803B7928 003B4888 4E 80 00 21 */ blrl
|
||||
lbl_803B792C:
|
||||
/* 803B792C 003B488C 38 00 00 00 */ li r0, 0
|
||||
/* 803B7930 003B4890 90 0D AF E4 */ stw r0, lbl_805A9BA4@sda21(r13)
|
||||
/* 803B7934 003B4894 80 01 00 0C */ lwz r0, 0xc(r1)
|
||||
/* 803B7938 003B4898 38 21 00 08 */ addi r1, r1, 8
|
||||
/* 803B793C 003B489C 7C 08 03 A6 */ mtlr r0
|
||||
/* 803B7940 003B48A0 4E 80 00 20 */ blr
|
||||
|
||||
.global sub_803b7944
|
||||
sub_803b7944:
|
||||
/* 803B7944 003B48A4 7C 08 02 A6 */ mflr r0
|
||||
/* 803B7948 003B48A8 38 60 00 00 */ li r3, 0
|
||||
/* 803B794C 003B48AC 90 01 00 04 */ stw r0, 4(r1)
|
||||
/* 803B7950 003B48B0 94 21 FF F8 */ stwu r1, -8(r1)
|
||||
/* 803B7954 003B48B4 4B FB 57 69 */ bl AISetStreamPlayState
|
||||
/* 803B7958 003B48B8 4B FC 9D 09 */ bl OSDisableInterrupts
|
||||
/* 803B795C 003B48BC 80 8D AF D8 */ lwz r4, lbl_805A9B98@sda21(r13)
|
||||
/* 803B7960 003B48C0 28 04 00 00 */ cmplwi r4, 0
|
||||
/* 803B7964 003B48C4 41 82 00 14 */ beq lbl_803B7978
|
||||
/* 803B7968 003B48C8 80 04 00 04 */ lwz r0, 4(r4)
|
||||
/* 803B796C 003B48CC 28 00 00 00 */ cmplwi r0, 0
|
||||
/* 803B7970 003B48D0 41 82 00 08 */ beq lbl_803B7978
|
||||
/* 803B7974 003B48D4 90 0D AF D8 */ stw r0, lbl_805A9B98@sda21(r13)
|
||||
lbl_803B7978:
|
||||
/* 803B7978 003B48D8 4B FC 9D 11 */ bl OSRestoreInterrupts
|
||||
/* 803B797C 003B48DC 38 00 00 00 */ li r0, 0
|
||||
/* 803B7980 003B48E0 90 0D AF E4 */ stw r0, lbl_805A9BA4@sda21(r13)
|
||||
/* 803B7984 003B48E4 80 6D AF E8 */ lwz r3, lbl_805A9BA8@sda21(r13)
|
||||
/* 803B7988 003B48E8 48 00 02 19 */ bl DTKSetState
|
||||
/* 803B798C 003B48EC 80 01 00 0C */ lwz r0, 0xc(r1)
|
||||
/* 803B7990 003B48F0 38 21 00 08 */ addi r1, r1, 8
|
||||
/* 803B7994 003B48F4 7C 08 03 A6 */ mtlr r0
|
||||
/* 803B7998 003B48F8 4E 80 00 20 */ blr
|
||||
|
||||
.global DTKInit
|
||||
DTKInit:
|
||||
/* 803B799C 003B48FC 7C 08 02 A6 */ mflr r0
|
||||
/* 803B79A0 003B4900 3C 60 00 01 */ lis r3, 0x0000BB80@ha
|
||||
/* 803B79A4 003B4904 90 01 00 04 */ stw r0, 4(r1)
|
||||
/* 803B79A8 003B4908 38 83 BB 80 */ addi r4, r3, 0x0000BB80@l
|
||||
/* 803B79AC 003B490C 38 A0 00 00 */ li r5, 0
|
||||
/* 803B79B0 003B4910 94 21 FF F8 */ stwu r1, -8(r1)
|
||||
/* 803B79B4 003B4914 38 00 00 FF */ li r0, 0xff
|
||||
/* 803B79B8 003B4918 38 60 00 00 */ li r3, 0
|
||||
/* 803B79BC 003B491C 90 AD AF E4 */ stw r5, lbl_805A9BA4@sda21(r13)
|
||||
/* 803B79C0 003B4920 90 AD AF EC */ stw r5, lbl_805A9BAC@sda21(r13)
|
||||
/* 803B79C4 003B4924 90 AD AF F0 */ stw r5, lbl_805A9BB0@sda21(r13)
|
||||
/* 803B79C8 003B4928 90 8D AF F4 */ stw r4, lbl_805A9BB4@sda21(r13)
|
||||
/* 803B79CC 003B492C 98 0D AF F8 */ stb r0, lbl_805A9BB8@sda21(r13)
|
||||
/* 803B79D0 003B4930 90 AD AF D8 */ stw r5, lbl_805A9B98@sda21(r13)
|
||||
/* 803B79D4 003B4934 90 AD AF DC */ stw r5, lbl_805A9B9C@sda21(r13)
|
||||
/* 803B79D8 003B4938 90 AD AF E0 */ stw r5, lbl_805A9BA0@sda21(r13)
|
||||
/* 803B79DC 003B493C 98 0D AF F9 */ stb r0, lbl_805A9BB9@sda21(r13)
|
||||
/* 803B79E0 003B4940 4B FB 59 9D */ bl AISetStreamVolLeft
|
||||
/* 803B79E4 003B4944 38 60 00 00 */ li r3, 0
|
||||
/* 803B79E8 003B4948 4B FB 59 C1 */ bl AISetStreamVolRight
|
||||
/* 803B79EC 003B494C 3C 60 80 3B */ lis r3, sub_803b782c@ha
|
||||
/* 803B79F0 003B4950 38 63 78 2C */ addi r3, r3, sub_803b782c@l
|
||||
/* 803B79F4 003B4954 4B FB 56 61 */ bl AIRegisterDMACallback
|
||||
/* 803B79F8 003B4958 4B FB 56 A1 */ bl sub_8036d098
|
||||
/* 803B79FC 003B495C 38 60 00 00 */ li r3, 0
|
||||
/* 803B7A00 003B4960 4B FB 56 BD */ bl AISetStreamPlayState
|
||||
/* 803B7A04 003B4964 80 01 00 0C */ lwz r0, 0xc(r1)
|
||||
/* 803B7A08 003B4968 38 21 00 08 */ addi r1, r1, 8
|
||||
/* 803B7A0C 003B496C 7C 08 03 A6 */ mtlr r0
|
||||
/* 803B7A10 003B4970 4E 80 00 20 */ blr
|
||||
|
||||
.global sub_803b7a14
|
||||
sub_803b7a14:
|
||||
/* 803B7A14 003B4974 7C 08 02 A6 */ mflr r0
|
||||
/* 803B7A18 003B4978 90 01 00 04 */ stw r0, 4(r1)
|
||||
/* 803B7A1C 003B497C 94 21 FF D0 */ stwu r1, -0x30(r1)
|
||||
/* 803B7A20 003B4980 BF 61 00 1C */ stmw r27, 0x1c(r1)
|
||||
/* 803B7A24 003B4984 3B 84 00 00 */ addi r28, r4, 0
|
||||
/* 803B7A28 003B4988 3B 63 00 00 */ addi r27, r3, 0
|
||||
/* 803B7A2C 003B498C 3B A5 00 00 */ addi r29, r5, 0
|
||||
/* 803B7A30 003B4990 3B C6 00 00 */ addi r30, r6, 0
|
||||
/* 803B7A34 003B4994 38 9C 00 14 */ addi r4, r28, 0x14
|
||||
/* 803B7A38 003B4998 3B E0 00 00 */ li r31, 0
|
||||
/* 803B7A3C 003B499C 4B FB 9C 49 */ bl DVDOpen
|
||||
/* 803B7A40 003B49A0 2C 03 00 00 */ cmpwi r3, 0
|
||||
/* 803B7A44 003B49A4 40 82 00 0C */ bne lbl_803B7A50
|
||||
/* 803B7A48 003B49A8 38 60 00 01 */ li r3, 1
|
||||
/* 803B7A4C 003B49AC 48 00 00 D0 */ b lbl_803B7B1C
|
||||
lbl_803B7A50:
|
||||
/* 803B7A50 003B49B0 4B FC 9C 11 */ bl OSDisableInterrupts
|
||||
/* 803B7A54 003B49B4 93 7C 00 08 */ stw r27, 8(r28)
|
||||
/* 803B7A58 003B49B8 93 BC 00 0C */ stw r29, 0xc(r28)
|
||||
/* 803B7A5C 003B49BC 93 DC 00 10 */ stw r30, 0x10(r28)
|
||||
/* 803B7A60 003B49C0 80 0D AF DC */ lwz r0, lbl_805A9B9C@sda21(r13)
|
||||
/* 803B7A64 003B49C4 28 00 00 00 */ cmplwi r0, 0
|
||||
/* 803B7A68 003B49C8 40 82 00 2C */ bne lbl_803B7A94
|
||||
/* 803B7A6C 003B49CC 93 8D AF DC */ stw r28, lbl_805A9B9C@sda21(r13)
|
||||
/* 803B7A70 003B49D0 38 00 00 00 */ li r0, 0
|
||||
/* 803B7A74 003B49D4 93 8D AF E0 */ stw r28, lbl_805A9BA0@sda21(r13)
|
||||
/* 803B7A78 003B49D8 90 1C 00 00 */ stw r0, 0(r28)
|
||||
/* 803B7A7C 003B49DC 90 1C 00 04 */ stw r0, 4(r28)
|
||||
/* 803B7A80 003B49E0 80 0D AF E4 */ lwz r0, lbl_805A9BA4@sda21(r13)
|
||||
/* 803B7A84 003B49E4 28 00 00 01 */ cmplwi r0, 1
|
||||
/* 803B7A88 003B49E8 40 82 00 28 */ bne lbl_803B7AB0
|
||||
/* 803B7A8C 003B49EC 3B E0 00 01 */ li r31, 1
|
||||
/* 803B7A90 003B49F0 48 00 00 20 */ b lbl_803B7AB0
|
||||
lbl_803B7A94:
|
||||
/* 803B7A94 003B49F4 80 8D AF E0 */ lwz r4, lbl_805A9BA0@sda21(r13)
|
||||
/* 803B7A98 003B49F8 38 00 00 00 */ li r0, 0
|
||||
/* 803B7A9C 003B49FC 93 84 00 04 */ stw r28, 4(r4)
|
||||
/* 803B7AA0 003B4A00 80 8D AF E0 */ lwz r4, lbl_805A9BA0@sda21(r13)
|
||||
/* 803B7AA4 003B4A04 90 9C 00 00 */ stw r4, 0(r28)
|
||||
/* 803B7AA8 003B4A08 93 8D AF E0 */ stw r28, lbl_805A9BA0@sda21(r13)
|
||||
/* 803B7AAC 003B4A0C 90 1C 00 04 */ stw r0, 4(r28)
|
||||
lbl_803B7AB0:
|
||||
/* 803B7AB0 003B4A10 80 0D AF D8 */ lwz r0, lbl_805A9B98@sda21(r13)
|
||||
/* 803B7AB4 003B4A14 28 00 00 00 */ cmplwi r0, 0
|
||||
/* 803B7AB8 003B4A18 40 82 00 08 */ bne lbl_803B7AC0
|
||||
/* 803B7ABC 003B4A1C 93 8D AF D8 */ stw r28, lbl_805A9B98@sda21(r13)
|
||||
lbl_803B7AC0:
|
||||
/* 803B7AC0 003B4A20 4B FC 9B C9 */ bl OSRestoreInterrupts
|
||||
/* 803B7AC4 003B4A24 28 1C 00 00 */ cmplwi r28, 0
|
||||
/* 803B7AC8 003B4A28 41 82 00 24 */ beq lbl_803B7AEC
|
||||
/* 803B7ACC 003B4A2C 81 9C 00 10 */ lwz r12, 0x10(r28)
|
||||
/* 803B7AD0 003B4A30 28 0C 00 00 */ cmplwi r12, 0
|
||||
/* 803B7AD4 003B4A34 41 82 00 18 */ beq lbl_803B7AEC
|
||||
/* 803B7AD8 003B4A38 80 1C 00 0C */ lwz r0, 0xc(r28)
|
||||
/* 803B7ADC 003B4A3C 54 03 07 39 */ rlwinm. r3, r0, 0, 0x1c, 0x1c
|
||||
/* 803B7AE0 003B4A40 41 82 00 0C */ beq lbl_803B7AEC
|
||||
/* 803B7AE4 003B4A44 7D 88 03 A6 */ mtlr r12
|
||||
/* 803B7AE8 003B4A48 4E 80 00 21 */ blrl
|
||||
lbl_803B7AEC:
|
||||
/* 803B7AEC 003B4A4C 28 1F 00 00 */ cmplwi r31, 0
|
||||
/* 803B7AF0 003B4A50 41 82 00 28 */ beq lbl_803B7B18
|
||||
/* 803B7AF4 003B4A54 38 00 00 03 */ li r0, 3
|
||||
/* 803B7AF8 003B4A58 80 8D AF D8 */ lwz r4, lbl_805A9B98@sda21(r13)
|
||||
/* 803B7AFC 003B4A5C 3C 60 80 3B */ lis r3, sub_803b7534@ha
|
||||
/* 803B7B00 003B4A60 90 0D AF E4 */ stw r0, lbl_805A9BA4@sda21(r13)
|
||||
/* 803B7B04 003B4A64 38 C3 75 34 */ addi r6, r3, sub_803b7534@l
|
||||
/* 803B7B08 003B4A68 38 64 00 14 */ addi r3, r4, 0x14
|
||||
/* 803B7B0C 003B4A6C 38 80 00 00 */ li r4, 0
|
||||
/* 803B7B10 003B4A70 38 A0 00 00 */ li r5, 0
|
||||
/* 803B7B14 003B4A74 4B FB 9F 71 */ bl DVDPrepareStreamAsync
|
||||
lbl_803B7B18:
|
||||
/* 803B7B18 003B4A78 38 60 00 00 */ li r3, 0
|
||||
lbl_803B7B1C:
|
||||
/* 803B7B1C 003B4A7C BB 61 00 1C */ lmw r27, 0x1c(r1)
|
||||
/* 803B7B20 003B4A80 80 01 00 34 */ lwz r0, 0x34(r1)
|
||||
/* 803B7B24 003B4A84 38 21 00 30 */ addi r1, r1, 0x30
|
||||
/* 803B7B28 003B4A88 7C 08 03 A6 */ mtlr r0
|
||||
/* 803B7B2C 003B4A8C 4E 80 00 20 */ blr
|
||||
|
||||
.global DTKFlushTracks
|
||||
DTKFlushTracks:
|
||||
/* 803B7B30 003B4A90 7C 08 02 A6 */ mflr r0
|
||||
/* 803B7B34 003B4A94 90 01 00 04 */ stw r0, 4(r1)
|
||||
/* 803B7B38 003B4A98 94 21 FF F8 */ stwu r1, -8(r1)
|
||||
/* 803B7B3C 003B4A9C 80 0D AF E4 */ lwz r0, lbl_805A9BA4@sda21(r13)
|
||||
/* 803B7B40 003B4AA0 28 00 00 03 */ cmplwi r0, 3
|
||||
/* 803B7B44 003B4AA4 41 82 00 40 */ beq lbl_803B7B84
|
||||
/* 803B7B48 003B4AA8 80 8D AF E4 */ lwz r4, lbl_805A9BA4@sda21(r13)
|
||||
/* 803B7B4C 003B4AAC 38 00 00 03 */ li r0, 3
|
||||
/* 803B7B50 003B4AB0 90 6D B0 04 */ stw r3, lbl_805A9BC4@sda21(r13)
|
||||
/* 803B7B54 003B4AB4 28 04 00 01 */ cmplwi r4, 1
|
||||
/* 803B7B58 003B4AB8 90 0D AF E4 */ stw r0, lbl_805A9BA4@sda21(r13)
|
||||
/* 803B7B5C 003B4ABC 40 82 00 1C */ bne lbl_803B7B78
|
||||
/* 803B7B60 003B4AC0 3C 60 80 57 */ lis r3, lbl_805699C8@ha
|
||||
/* 803B7B64 003B4AC4 3C 80 80 3B */ lis r4, sub_803b7874@ha
|
||||
/* 803B7B68 003B4AC8 38 63 99 C8 */ addi r3, r3, lbl_805699C8@l
|
||||
/* 803B7B6C 003B4ACC 38 84 78 74 */ addi r4, r4, sub_803b7874@l
|
||||
/* 803B7B70 003B4AD0 4B FB C0 C9 */ bl DVDCancelStreamAsync
|
||||
/* 803B7B74 003B4AD4 48 00 00 10 */ b lbl_803B7B84
|
||||
lbl_803B7B78:
|
||||
/* 803B7B78 003B4AD8 38 60 00 00 */ li r3, 0
|
||||
/* 803B7B7C 003B4ADC 38 80 00 00 */ li r4, 0
|
||||
/* 803B7B80 003B4AE0 4B FF FC F5 */ bl sub_803b7874
|
||||
lbl_803B7B84:
|
||||
/* 803B7B84 003B4AE4 80 01 00 0C */ lwz r0, 0xc(r1)
|
||||
/* 803B7B88 003B4AE8 38 21 00 08 */ addi r1, r1, 8
|
||||
/* 803B7B8C 003B4AEC 7C 08 03 A6 */ mtlr r0
|
||||
/* 803B7B90 003B4AF0 4E 80 00 20 */ blr
|
||||
|
||||
.global DTKSetSampleRate
|
||||
DTKSetSampleRate:
|
||||
/* 803B7B94 003B4AF4 4E 80 00 20 */ blr
|
||||
|
||||
.global DTKSetRepeatMode
|
||||
DTKSetRepeatMode:
|
||||
/* 803B7B98 003B4AF8 90 6D AF EC */ stw r3, lbl_805A9BAC@sda21(r13)
|
||||
/* 803B7B9C 003B4AFC 4E 80 00 20 */ blr
|
||||
|
||||
.global DTKSetState
|
||||
DTKSetState:
|
||||
/* 803B7BA0 003B4B00 7C 08 02 A6 */ mflr r0
|
||||
/* 803B7BA4 003B4B04 90 01 00 04 */ stw r0, 4(r1)
|
||||
/* 803B7BA8 003B4B08 94 21 FF F8 */ stwu r1, -8(r1)
|
||||
/* 803B7BAC 003B4B0C 80 0D AF E4 */ lwz r0, lbl_805A9BA4@sda21(r13)
|
||||
/* 803B7BB0 003B4B10 7C 00 18 40 */ cmplw r0, r3
|
||||
/* 803B7BB4 003B4B14 41 82 01 BC */ beq lbl_803B7D70
|
||||
/* 803B7BB8 003B4B18 80 0D AF E4 */ lwz r0, lbl_805A9BA4@sda21(r13)
|
||||
/* 803B7BBC 003B4B1C 28 00 00 03 */ cmplwi r0, 3
|
||||
/* 803B7BC0 003B4B20 40 82 00 08 */ bne lbl_803B7BC8
|
||||
/* 803B7BC4 003B4B24 48 00 01 AC */ b lbl_803B7D70
|
||||
lbl_803B7BC8:
|
||||
/* 803B7BC8 003B4B28 2C 03 00 02 */ cmpwi r3, 2
|
||||
/* 803B7BCC 003B4B2C 41 82 01 5C */ beq lbl_803B7D28
|
||||
/* 803B7BD0 003B4B30 40 80 00 14 */ bge lbl_803B7BE4
|
||||
/* 803B7BD4 003B4B34 2C 03 00 00 */ cmpwi r3, 0
|
||||
/* 803B7BD8 003B4B38 41 82 00 18 */ beq lbl_803B7BF0
|
||||
/* 803B7BDC 003B4B3C 40 80 00 58 */ bge lbl_803B7C34
|
||||
/* 803B7BE0 003B4B40 48 00 01 90 */ b lbl_803B7D70
|
||||
lbl_803B7BE4:
|
||||
/* 803B7BE4 003B4B44 2C 03 00 04 */ cmpwi r3, 4
|
||||
/* 803B7BE8 003B4B48 41 82 00 FC */ beq lbl_803B7CE4
|
||||
/* 803B7BEC 003B4B4C 48 00 01 84 */ b lbl_803B7D70
|
||||
lbl_803B7BF0:
|
||||
/* 803B7BF0 003B4B50 80 0D AF D8 */ lwz r0, lbl_805A9B98@sda21(r13)
|
||||
/* 803B7BF4 003B4B54 28 00 00 00 */ cmplwi r0, 0
|
||||
/* 803B7BF8 003B4B58 41 82 01 78 */ beq lbl_803B7D70
|
||||
/* 803B7BFC 003B4B5C 38 00 00 03 */ li r0, 3
|
||||
/* 803B7C00 003B4B60 90 0D AF E4 */ stw r0, lbl_805A9BA4@sda21(r13)
|
||||
/* 803B7C04 003B4B64 38 60 00 00 */ li r3, 0
|
||||
/* 803B7C08 003B4B68 4B FB 57 75 */ bl AISetStreamVolLeft
|
||||
/* 803B7C0C 003B4B6C 38 60 00 00 */ li r3, 0
|
||||
/* 803B7C10 003B4B70 4B FB 57 99 */ bl AISetStreamVolRight
|
||||
/* 803B7C14 003B4B74 38 60 00 00 */ li r3, 0
|
||||
/* 803B7C18 003B4B78 4B FB 54 A5 */ bl AISetStreamPlayState
|
||||
/* 803B7C1C 003B4B7C 3C 60 80 57 */ lis r3, lbl_805699F8@ha
|
||||
/* 803B7C20 003B4B80 3C 80 80 3B */ lis r4, sub_803b78f4@ha
|
||||
/* 803B7C24 003B4B84 38 63 99 F8 */ addi r3, r3, lbl_805699F8@l
|
||||
/* 803B7C28 003B4B88 38 84 78 F4 */ addi r4, r4, sub_803b78f4@l
|
||||
/* 803B7C2C 003B4B8C 4B FB C0 0D */ bl DVDCancelStreamAsync
|
||||
/* 803B7C30 003B4B90 48 00 01 40 */ b lbl_803B7D70
|
||||
lbl_803B7C34:
|
||||
/* 803B7C34 003B4B94 80 0D AF E4 */ lwz r0, lbl_805A9BA4@sda21(r13)
|
||||
/* 803B7C38 003B4B98 28 00 00 02 */ cmplwi r0, 2
|
||||
/* 803B7C3C 003B4B9C 40 82 00 64 */ bne lbl_803B7CA0
|
||||
/* 803B7C40 003B4BA0 88 6D AF F8 */ lbz r3, lbl_805A9BB8@sda21(r13)
|
||||
/* 803B7C44 003B4BA4 4B FB 57 39 */ bl AISetStreamVolLeft
|
||||
/* 803B7C48 003B4BA8 88 6D AF F9 */ lbz r3, lbl_805A9BB9@sda21(r13)
|
||||
/* 803B7C4C 003B4BAC 4B FB 57 5D */ bl AISetStreamVolRight
|
||||
/* 803B7C50 003B4BB0 4B FB 54 49 */ bl sub_8036d098
|
||||
/* 803B7C54 003B4BB4 80 6D AF F4 */ lwz r3, lbl_805A9BB4@sda21(r13)
|
||||
/* 803B7C58 003B4BB8 4B FB 54 59 */ bl SetTRKConnected
|
||||
/* 803B7C5C 003B4BBC 38 60 00 01 */ li r3, 1
|
||||
/* 803B7C60 003B4BC0 4B FB 54 5D */ bl AISetStreamPlayState
|
||||
/* 803B7C64 003B4BC4 80 6D AF D8 */ lwz r3, lbl_805A9B98@sda21(r13)
|
||||
/* 803B7C68 003B4BC8 38 00 00 01 */ li r0, 1
|
||||
/* 803B7C6C 003B4BCC 90 0D AF E4 */ stw r0, lbl_805A9BA4@sda21(r13)
|
||||
/* 803B7C70 003B4BD0 28 03 00 00 */ cmplwi r3, 0
|
||||
/* 803B7C74 003B4BD4 41 82 00 64 */ beq lbl_803B7CD8
|
||||
/* 803B7C78 003B4BD8 41 82 00 60 */ beq lbl_803B7CD8
|
||||
/* 803B7C7C 003B4BDC 81 83 00 10 */ lwz r12, 0x10(r3)
|
||||
/* 803B7C80 003B4BE0 28 0C 00 00 */ cmplwi r12, 0
|
||||
/* 803B7C84 003B4BE4 41 82 00 54 */ beq lbl_803B7CD8
|
||||
/* 803B7C88 003B4BE8 80 03 00 0C */ lwz r0, 0xc(r3)
|
||||
/* 803B7C8C 003B4BEC 54 03 07 FF */ clrlwi. r3, r0, 0x1f
|
||||
/* 803B7C90 003B4BF0 41 82 00 48 */ beq lbl_803B7CD8
|
||||
/* 803B7C94 003B4BF4 7D 88 03 A6 */ mtlr r12
|
||||
/* 803B7C98 003B4BF8 4E 80 00 21 */ blrl
|
||||
/* 803B7C9C 003B4BFC 48 00 00 3C */ b lbl_803B7CD8
|
||||
lbl_803B7CA0:
|
||||
/* 803B7CA0 003B4C00 80 8D AF D8 */ lwz r4, lbl_805A9B98@sda21(r13)
|
||||
/* 803B7CA4 003B4C04 28 04 00 00 */ cmplwi r4, 0
|
||||
/* 803B7CA8 003B4C08 41 82 00 28 */ beq lbl_803B7CD0
|
||||
/* 803B7CAC 003B4C0C 38 00 00 03 */ li r0, 3
|
||||
/* 803B7CB0 003B4C10 3C 60 80 3B */ lis r3, sub_803b7534@ha
|
||||
/* 803B7CB4 003B4C14 90 0D AF E4 */ stw r0, lbl_805A9BA4@sda21(r13)
|
||||
/* 803B7CB8 003B4C18 38 C3 75 34 */ addi r6, r3, sub_803b7534@l
|
||||
/* 803B7CBC 003B4C1C 38 64 00 14 */ addi r3, r4, 0x14
|
||||
/* 803B7CC0 003B4C20 38 80 00 00 */ li r4, 0
|
||||
/* 803B7CC4 003B4C24 38 A0 00 00 */ li r5, 0
|
||||
/* 803B7CC8 003B4C28 4B FB 9D BD */ bl DVDPrepareStreamAsync
|
||||
/* 803B7CCC 003B4C2C 48 00 00 0C */ b lbl_803B7CD8
|
||||
lbl_803B7CD0:
|
||||
/* 803B7CD0 003B4C30 38 00 00 01 */ li r0, 1
|
||||
/* 803B7CD4 003B4C34 90 0D AF E4 */ stw r0, lbl_805A9BA4@sda21(r13)
|
||||
lbl_803B7CD8:
|
||||
/* 803B7CD8 003B4C38 38 00 00 00 */ li r0, 0
|
||||
/* 803B7CDC 003B4C3C 90 0D B0 00 */ stw r0, lbl_805A9BC0@sda21(r13)
|
||||
/* 803B7CE0 003B4C40 48 00 00 90 */ b lbl_803B7D70
|
||||
lbl_803B7CE4:
|
||||
/* 803B7CE4 003B4C44 80 0D AF E4 */ lwz r0, lbl_805A9BA4@sda21(r13)
|
||||
/* 803B7CE8 003B4C48 28 00 00 00 */ cmplwi r0, 0
|
||||
/* 803B7CEC 003B4C4C 40 82 00 84 */ bne lbl_803B7D70
|
||||
/* 803B7CF0 003B4C50 80 8D AF D8 */ lwz r4, lbl_805A9B98@sda21(r13)
|
||||
/* 803B7CF4 003B4C54 28 04 00 00 */ cmplwi r4, 0
|
||||
/* 803B7CF8 003B4C58 41 82 00 24 */ beq lbl_803B7D1C
|
||||
/* 803B7CFC 003B4C5C 38 00 00 03 */ li r0, 3
|
||||
/* 803B7D00 003B4C60 3C 60 80 3B */ lis r3, sub_803b75b8@ha
|
||||
/* 803B7D04 003B4C64 90 0D AF E4 */ stw r0, lbl_805A9BA4@sda21(r13)
|
||||
/* 803B7D08 003B4C68 38 C3 75 B8 */ addi r6, r3, sub_803b75b8@l
|
||||
/* 803B7D0C 003B4C6C 38 64 00 14 */ addi r3, r4, 0x14
|
||||
/* 803B7D10 003B4C70 38 80 00 00 */ li r4, 0
|
||||
/* 803B7D14 003B4C74 38 A0 00 00 */ li r5, 0
|
||||
/* 803B7D18 003B4C78 4B FB 9D 6D */ bl DVDPrepareStreamAsync
|
||||
lbl_803B7D1C:
|
||||
/* 803B7D1C 003B4C7C 38 00 00 00 */ li r0, 0
|
||||
/* 803B7D20 003B4C80 90 0D B0 00 */ stw r0, lbl_805A9BC0@sda21(r13)
|
||||
/* 803B7D24 003B4C84 48 00 00 4C */ b lbl_803B7D70
|
||||
lbl_803B7D28:
|
||||
/* 803B7D28 003B4C88 38 60 00 00 */ li r3, 0
|
||||
/* 803B7D2C 003B4C8C 4B FB 53 91 */ bl AISetStreamPlayState
|
||||
/* 803B7D30 003B4C90 80 0D AF E4 */ lwz r0, lbl_805A9BA4@sda21(r13)
|
||||
/* 803B7D34 003B4C94 28 00 00 01 */ cmplwi r0, 1
|
||||
/* 803B7D38 003B4C98 40 82 00 0C */ bne lbl_803B7D44
|
||||
/* 803B7D3C 003B4C9C 38 00 00 02 */ li r0, 2
|
||||
/* 803B7D40 003B4CA0 90 0D AF E4 */ stw r0, lbl_805A9BA4@sda21(r13)
|
||||
lbl_803B7D44:
|
||||
/* 803B7D44 003B4CA4 80 6D AF D8 */ lwz r3, lbl_805A9B98@sda21(r13)
|
||||
/* 803B7D48 003B4CA8 28 03 00 00 */ cmplwi r3, 0
|
||||
/* 803B7D4C 003B4CAC 41 82 00 24 */ beq lbl_803B7D70
|
||||
/* 803B7D50 003B4CB0 81 83 00 10 */ lwz r12, 0x10(r3)
|
||||
/* 803B7D54 003B4CB4 28 0C 00 00 */ cmplwi r12, 0
|
||||
/* 803B7D58 003B4CB8 41 82 00 18 */ beq lbl_803B7D70
|
||||
/* 803B7D5C 003B4CBC 80 03 00 0C */ lwz r0, 0xc(r3)
|
||||
/* 803B7D60 003B4CC0 54 03 07 7B */ rlwinm. r3, r0, 0, 0x1d, 0x1d
|
||||
/* 803B7D64 003B4CC4 41 82 00 0C */ beq lbl_803B7D70
|
||||
/* 803B7D68 003B4CC8 7D 88 03 A6 */ mtlr r12
|
||||
/* 803B7D6C 003B4CCC 4E 80 00 21 */ blrl
|
||||
lbl_803B7D70:
|
||||
/* 803B7D70 003B4CD0 80 01 00 0C */ lwz r0, 0xc(r1)
|
||||
/* 803B7D74 003B4CD4 38 21 00 08 */ addi r1, r1, 8
|
||||
/* 803B7D78 003B4CD8 7C 08 03 A6 */ mtlr r0
|
||||
/* 803B7D7C 003B4CDC 4E 80 00 20 */ blr
|
||||
|
||||
.global DTKNextTrack
|
||||
DTKNextTrack:
|
||||
/* 803B7D80 003B4CE0 7C 08 02 A6 */ mflr r0
|
||||
/* 803B7D84 003B4CE4 90 01 00 04 */ stw r0, 4(r1)
|
||||
/* 803B7D88 003B4CE8 94 21 FF F8 */ stwu r1, -8(r1)
|
||||
/* 803B7D8C 003B4CEC 80 0D AF E4 */ lwz r0, lbl_805A9BA4@sda21(r13)
|
||||
/* 803B7D90 003B4CF0 28 00 00 03 */ cmplwi r0, 3
|
||||
/* 803B7D94 003B4CF4 41 82 00 80 */ beq lbl_803B7E14
|
||||
/* 803B7D98 003B4CF8 80 0D AF D8 */ lwz r0, lbl_805A9B98@sda21(r13)
|
||||
/* 803B7D9C 003B4CFC 28 00 00 00 */ cmplwi r0, 0
|
||||
/* 803B7DA0 003B4D00 41 82 00 74 */ beq lbl_803B7E14
|
||||
/* 803B7DA4 003B4D04 80 6D AF E4 */ lwz r3, lbl_805A9BA4@sda21(r13)
|
||||
/* 803B7DA8 003B4D08 38 00 00 03 */ li r0, 3
|
||||
/* 803B7DAC 003B4D0C 90 6D AF E8 */ stw r3, lbl_805A9BA8@sda21(r13)
|
||||
/* 803B7DB0 003B4D10 90 0D AF E4 */ stw r0, lbl_805A9BA4@sda21(r13)
|
||||
/* 803B7DB4 003B4D14 80 0D AF E8 */ lwz r0, lbl_805A9BA8@sda21(r13)
|
||||
/* 803B7DB8 003B4D18 28 00 00 01 */ cmplwi r0, 1
|
||||
/* 803B7DBC 003B4D1C 40 82 00 2C */ bne lbl_803B7DE8
|
||||
/* 803B7DC0 003B4D20 38 60 00 00 */ li r3, 0
|
||||
/* 803B7DC4 003B4D24 4B FB 55 B9 */ bl AISetStreamVolLeft
|
||||
/* 803B7DC8 003B4D28 38 60 00 00 */ li r3, 0
|
||||
/* 803B7DCC 003B4D2C 4B FB 55 DD */ bl AISetStreamVolRight
|
||||
/* 803B7DD0 003B4D30 3C 60 80 57 */ lis r3, lbl_80569A28@ha
|
||||
/* 803B7DD4 003B4D34 3C 80 80 3B */ lis r4, sub_803b7944@ha
|
||||
/* 803B7DD8 003B4D38 38 63 9A 28 */ addi r3, r3, lbl_80569A28@l
|
||||
/* 803B7DDC 003B4D3C 38 84 79 44 */ addi r4, r4, sub_803b7944@l
|
||||
/* 803B7DE0 003B4D40 4B FB BE 59 */ bl DVDCancelStreamAsync
|
||||
/* 803B7DE4 003B4D44 48 00 00 30 */ b lbl_803B7E14
|
||||
lbl_803B7DE8:
|
||||
/* 803B7DE8 003B4D48 4B FC 98 79 */ bl OSDisableInterrupts
|
||||
/* 803B7DEC 003B4D4C 80 8D AF D8 */ lwz r4, lbl_805A9B98@sda21(r13)
|
||||
/* 803B7DF0 003B4D50 28 04 00 00 */ cmplwi r4, 0
|
||||
/* 803B7DF4 003B4D54 41 82 00 14 */ beq lbl_803B7E08
|
||||
/* 803B7DF8 003B4D58 80 04 00 04 */ lwz r0, 4(r4)
|
||||
/* 803B7DFC 003B4D5C 28 00 00 00 */ cmplwi r0, 0
|
||||
/* 803B7E00 003B4D60 41 82 00 08 */ beq lbl_803B7E08
|
||||
/* 803B7E04 003B4D64 90 0D AF D8 */ stw r0, lbl_805A9B98@sda21(r13)
|
||||
lbl_803B7E08:
|
||||
/* 803B7E08 003B4D68 4B FC 98 81 */ bl OSRestoreInterrupts
|
||||
/* 803B7E0C 003B4D6C 80 0D AF E8 */ lwz r0, lbl_805A9BA8@sda21(r13)
|
||||
/* 803B7E10 003B4D70 90 0D AF E4 */ stw r0, lbl_805A9BA4@sda21(r13)
|
||||
lbl_803B7E14:
|
||||
/* 803B7E14 003B4D74 80 01 00 0C */ lwz r0, 0xc(r1)
|
||||
/* 803B7E18 003B4D78 38 21 00 08 */ addi r1, r1, 8
|
||||
/* 803B7E1C 003B4D7C 7C 08 03 A6 */ mtlr r0
|
||||
/* 803B7E20 003B4D80 4E 80 00 20 */ blr
|
||||
|
||||
.global DTKGetState
|
||||
DTKGetState:
|
||||
/* 803B7E24 003B4D84 80 6D AF E4 */ lwz r3, lbl_805A9BA4@sda21(r13)
|
||||
/* 803B7E28 003B4D88 4E 80 00 20 */ blr
|
||||
|
||||
.global DTKSetVolume
|
||||
DTKSetVolume:
|
||||
/* 803B7E2C 003B4D8C 7C 08 02 A6 */ mflr r0
|
||||
/* 803B7E30 003B4D90 90 01 00 04 */ stw r0, 4(r1)
|
||||
/* 803B7E34 003B4D94 94 21 FF E8 */ stwu r1, -0x18(r1)
|
||||
/* 803B7E38 003B4D98 93 E1 00 14 */ stw r31, 0x14(r1)
|
||||
/* 803B7E3C 003B4D9C 7C 9F 23 78 */ mr r31, r4
|
||||
/* 803B7E40 003B4DA0 98 6D AF F8 */ stb r3, lbl_805A9BB8@sda21(r13)
|
||||
/* 803B7E44 003B4DA4 9B ED AF F9 */ stb r31, lbl_805A9BB9@sda21(r13)
|
||||
/* 803B7E48 003B4DA8 80 0D AF E4 */ lwz r0, lbl_805A9BA4@sda21(r13)
|
||||
/* 803B7E4C 003B4DAC 28 00 00 01 */ cmplwi r0, 1
|
||||
/* 803B7E50 003B4DB0 40 82 00 10 */ bne lbl_803B7E60
|
||||
/* 803B7E54 003B4DB4 4B FB 55 29 */ bl AISetStreamVolLeft
|
||||
/* 803B7E58 003B4DB8 7F E3 FB 78 */ mr r3, r31
|
||||
/* 803B7E5C 003B4DBC 4B FB 55 4D */ bl AISetStreamVolRight
|
||||
lbl_803B7E60:
|
||||
/* 803B7E60 003B4DC0 80 01 00 1C */ lwz r0, 0x1c(r1)
|
||||
/* 803B7E64 003B4DC4 83 E1 00 14 */ lwz r31, 0x14(r1)
|
||||
/* 803B7E68 003B4DC8 38 21 00 18 */ addi r1, r1, 0x18
|
||||
/* 803B7E6C 003B4DCC 7C 08 03 A6 */ mtlr r0
|
||||
/* 803B7E70 003B4DD0 4E 80 00 20 */ blr
|
|
@ -0,0 +1,90 @@
|
|||
.include "macros.inc"
|
||||
|
||||
.section .sdata2, "a"
|
||||
|
||||
.global lbl_805AE290
|
||||
lbl_805AE290:
|
||||
# ROM: 0x3FAB30
|
||||
.float 1.0
|
||||
.4byte 0
|
||||
|
||||
.global lbl_805AE298
|
||||
lbl_805AE298:
|
||||
# ROM: 0x3FAB38
|
||||
.double 4.503599627370496E15
|
||||
|
||||
.section .text, "ax"
|
||||
.global Initialize__Q210CStopwatch7CSWDataFv
|
||||
Initialize__Q210CStopwatch7CSWDataFv:
|
||||
/* 802D671C 002D367C 94 21 FF F0 */ stwu r1, -0x10(r1)
|
||||
/* 802D6720 002D3680 7C 08 02 A6 */ mflr r0
|
||||
/* 802D6724 002D3684 3C 80 00 0F */ lis r4, 0x000F4240@ha
|
||||
/* 802D6728 002D3688 3C A0 80 00 */ lis r5, 0x800000F8@ha
|
||||
/* 802D672C 002D368C 90 01 00 14 */ stw r0, 0x14(r1)
|
||||
/* 802D6730 002D3690 38 00 00 00 */ li r0, 0
|
||||
/* 802D6734 002D3694 38 C4 42 40 */ addi r6, r4, 0x000F4240@l
|
||||
/* 802D6738 002D3698 93 E1 00 0C */ stw r31, 0xc(r1)
|
||||
/* 802D673C 002D369C 7C 7F 1B 78 */ mr r31, r3
|
||||
/* 802D6740 002D36A0 80 A5 00 F8 */ lwz r5, 0x800000F8@l(r5)
|
||||
/* 802D6744 002D36A4 54 A3 F0 BE */ srwi r3, r5, 2
|
||||
/* 802D6748 002D36A8 38 A0 00 00 */ li r5, 0
|
||||
/* 802D674C 002D36AC 90 7F 00 04 */ stw r3, 4(r31)
|
||||
/* 802D6750 002D36B0 90 1F 00 00 */ stw r0, 0(r31)
|
||||
/* 802D6754 002D36B4 80 7F 00 00 */ lwz r3, 0(r31)
|
||||
/* 802D6758 002D36B8 80 9F 00 04 */ lwz r4, 4(r31)
|
||||
/* 802D675C 002D36BC 48 0B 34 71 */ bl __div2i
|
||||
/* 802D6760 002D36C0 90 9F 00 0C */ stw r4, 0xc(r31)
|
||||
/* 802D6764 002D36C4 90 7F 00 08 */ stw r3, 8(r31)
|
||||
/* 802D6768 002D36C8 80 7F 00 00 */ lwz r3, 0(r31)
|
||||
/* 802D676C 002D36CC 80 9F 00 04 */ lwz r4, 4(r31)
|
||||
/* 802D6770 002D36D0 48 0B 37 F5 */ bl __cvt_sll_flt
|
||||
/* 802D6774 002D36D4 C0 02 C5 70 */ lfs f0, lbl_805AE290@sda21(r2)
|
||||
/* 802D6778 002D36D8 38 60 00 01 */ li r3, 1
|
||||
/* 802D677C 002D36DC EC 00 08 24 */ fdivs f0, f0, f1
|
||||
/* 802D6780 002D36E0 D0 1F 00 10 */ stfs f0, 0x10(r31)
|
||||
/* 802D6784 002D36E4 83 E1 00 0C */ lwz r31, 0xc(r1)
|
||||
/* 802D6788 002D36E8 80 01 00 14 */ lwz r0, 0x14(r1)
|
||||
/* 802D678C 002D36EC 7C 08 03 A6 */ mtlr r0
|
||||
/* 802D6790 002D36F0 38 21 00 10 */ addi r1, r1, 0x10
|
||||
/* 802D6794 002D36F4 4E 80 00 20 */ blr
|
||||
|
||||
.global Wait__Q210CStopwatch7CSWDataCFf
|
||||
Wait__Q210CStopwatch7CSWDataCFf:
|
||||
/* 802D6798 002D36F8 94 21 FF D0 */ stwu r1, -0x30(r1)
|
||||
/* 802D679C 002D36FC 7C 08 02 A6 */ mflr r0
|
||||
/* 802D67A0 002D3700 3C 60 80 00 */ lis r3, 0x800000F8@ha
|
||||
/* 802D67A4 002D3704 C8 42 C5 78 */ lfd f2, lbl_805AE298@sda21(r2)
|
||||
/* 802D67A8 002D3708 90 01 00 34 */ stw r0, 0x34(r1)
|
||||
/* 802D67AC 002D370C 3C 00 43 30 */ lis r0, 0x4330
|
||||
/* 802D67B0 002D3710 93 E1 00 2C */ stw r31, 0x2c(r1)
|
||||
/* 802D67B4 002D3714 93 C1 00 28 */ stw r30, 0x28(r1)
|
||||
/* 802D67B8 002D3718 80 63 00 F8 */ lwz r3, 0x800000F8@l(r3)
|
||||
/* 802D67BC 002D371C 90 01 00 18 */ stw r0, 0x18(r1)
|
||||
/* 802D67C0 002D3720 54 60 F0 BE */ srwi r0, r3, 2
|
||||
/* 802D67C4 002D3724 90 01 00 1C */ stw r0, 0x1c(r1)
|
||||
/* 802D67C8 002D3728 C8 01 00 18 */ lfd f0, 0x18(r1)
|
||||
/* 802D67CC 002D372C EC 00 10 28 */ fsubs f0, f0, f2
|
||||
/* 802D67D0 002D3730 EC 21 00 32 */ fmuls f1, f1, f0
|
||||
/* 802D67D4 002D3734 48 0B 38 45 */ bl __cvt_dbl_usll
|
||||
/* 802D67D8 002D3738 7C 9E 23 78 */ mr r30, r4
|
||||
/* 802D67DC 002D373C 7C 7F 1B 78 */ mr r31, r3
|
||||
/* 802D67E0 002D3740 48 0A EB C9 */ bl OSGetTime
|
||||
/* 802D67E4 002D3744 7F DE 20 14 */ addc r30, r30, r4
|
||||
/* 802D67E8 002D3748 7F FF 19 14 */ adde r31, r31, r3
|
||||
lbl_802D67EC:
|
||||
/* 802D67EC 002D374C 48 0A EB BD */ bl OSGetTime
|
||||
/* 802D67F0 002D3750 90 81 00 14 */ stw r4, 0x14(r1)
|
||||
/* 802D67F4 002D3754 90 61 00 10 */ stw r3, 0x10(r1)
|
||||
/* 802D67F8 002D3758 80 61 00 10 */ lwz r3, 0x10(r1)
|
||||
/* 802D67FC 002D375C 80 01 00 14 */ lwz r0, 0x14(r1)
|
||||
/* 802D6800 002D3760 7C 1E 00 10 */ subfc r0, r30, r0
|
||||
/* 802D6804 002D3764 90 01 00 08 */ stw r0, 8(r1)
|
||||
/* 802D6808 002D3768 80 01 00 08 */ lwz r0, 8(r1)
|
||||
/* 802D680C 002D376C 2C 00 00 00 */ cmpwi r0, 0
|
||||
/* 802D6810 002D3770 41 80 FF DC */ blt lbl_802D67EC
|
||||
/* 802D6814 002D3774 80 01 00 34 */ lwz r0, 0x34(r1)
|
||||
/* 802D6818 002D3778 83 E1 00 2C */ lwz r31, 0x2c(r1)
|
||||
/* 802D681C 002D377C 83 C1 00 28 */ lwz r30, 0x28(r1)
|
||||
/* 802D6820 002D3780 7C 08 03 A6 */ mtlr r0
|
||||
/* 802D6824 002D3784 38 21 00 30 */ addi r1, r1, 0x30
|
||||
/* 802D6828 002D3788 4E 80 00 20 */ blr
|
|
@ -0,0 +1,217 @@
|
|||
.include "macros.inc"
|
||||
|
||||
.section .text, "ax"
|
||||
|
||||
.global __ieee754_acos
|
||||
__ieee754_acos:
|
||||
/* 803913C8 0038E328 94 21 FF E0 */ stwu r1, -0x20(r1)
|
||||
/* 803913CC 0038E32C 3C 00 3F F0 */ lis r0, 0x3ff0
|
||||
/* 803913D0 0038E330 D8 21 00 08 */ stfd f1, 8(r1)
|
||||
/* 803913D4 0038E334 80 81 00 08 */ lwz r4, 8(r1)
|
||||
/* 803913D8 0038E338 54 83 00 7E */ clrlwi r3, r4, 1
|
||||
/* 803913DC 0038E33C 7C 03 00 00 */ cmpw r3, r0
|
||||
/* 803913E0 0038E340 41 80 00 38 */ blt lbl_80391418
|
||||
/* 803913E4 0038E344 80 01 00 0C */ lwz r0, 0xc(r1)
|
||||
/* 803913E8 0038E348 3C 63 C0 10 */ addis r3, r3, 0xc010
|
||||
/* 803913EC 0038E34C 7C 60 03 79 */ or. r0, r3, r0
|
||||
/* 803913F0 0038E350 40 82 00 1C */ bne lbl_8039140C
|
||||
/* 803913F4 0038E354 2C 04 00 00 */ cmpwi r4, 0
|
||||
/* 803913F8 0038E358 40 81 00 0C */ ble lbl_80391404
|
||||
/* 803913FC 0038E35C C8 22 CF 98 */ lfd f1, lbl_805AECB8@sda21(r2)
|
||||
/* 80391400 0038E360 48 00 02 D0 */ b lbl_803916D0
|
||||
lbl_80391404:
|
||||
/* 80391404 0038E364 C8 22 CF A0 */ lfd f1, lbl_805AECC0@sda21(r2)
|
||||
/* 80391408 0038E368 48 00 02 C8 */ b lbl_803916D0
|
||||
lbl_8039140C:
|
||||
/* 8039140C 0038E36C 3C 60 80 5B */ lis r3, lbl_805A8BA0@ha
|
||||
/* 80391410 0038E370 C0 23 8B A0 */ lfs f1, lbl_805A8BA0@l(r3)
|
||||
/* 80391414 0038E374 48 00 02 BC */ b lbl_803916D0
|
||||
lbl_80391418:
|
||||
/* 80391418 0038E378 3C 00 3F E0 */ lis r0, 0x3fe0
|
||||
/* 8039141C 0038E37C 7C 03 00 00 */ cmpw r3, r0
|
||||
/* 80391420 0038E380 40 80 00 8C */ bge lbl_803914AC
|
||||
/* 80391424 0038E384 3C 00 3C 60 */ lis r0, 0x3c60
|
||||
/* 80391428 0038E388 7C 03 00 00 */ cmpw r3, r0
|
||||
/* 8039142C 0038E38C 41 81 00 0C */ bgt lbl_80391438
|
||||
/* 80391430 0038E390 C8 22 CF A8 */ lfd f1, lbl_805AECC8@sda21(r2)
|
||||
/* 80391434 0038E394 48 00 02 9C */ b lbl_803916D0
|
||||
lbl_80391438:
|
||||
/* 80391438 0038E398 FD 41 00 72 */ fmul f10, f1, f1
|
||||
/* 8039143C 0038E39C C8 42 CF E0 */ lfd f2, lbl_805AED00@sda21(r2)
|
||||
/* 80391440 0038E3A0 C8 02 CF D8 */ lfd f0, lbl_805AECF8@sda21(r2)
|
||||
/* 80391444 0038E3A4 C8 62 CF D0 */ lfd f3, lbl_805AECF0@sda21(r2)
|
||||
/* 80391448 0038E3A8 C9 02 CF C8 */ lfd f8, lbl_805AECE8@sda21(r2)
|
||||
/* 8039144C 0038E3AC FC 82 02 BA */ fmadd f4, f2, f10, f0
|
||||
/* 80391450 0038E3B0 C8 42 D0 08 */ lfd f2, lbl_805AED28@sda21(r2)
|
||||
/* 80391454 0038E3B4 C8 02 D0 00 */ lfd f0, lbl_805AED20@sda21(r2)
|
||||
/* 80391458 0038E3B8 C8 E2 CF C0 */ lfd f7, lbl_805AECE0@sda21(r2)
|
||||
/* 8039145C 0038E3BC FD 2A 19 3A */ fmadd f9, f10, f4, f3
|
||||
/* 80391460 0038E3C0 C8 82 CF F8 */ lfd f4, lbl_805AED18@sda21(r2)
|
||||
/* 80391464 0038E3C4 C8 C2 CF B8 */ lfd f6, lbl_805AECD8@sda21(r2)
|
||||
/* 80391468 0038E3C8 FC A2 02 BA */ fmadd f5, f2, f10, f0
|
||||
/* 8039146C 0038E3CC C8 62 CF F0 */ lfd f3, lbl_805AED10@sda21(r2)
|
||||
/* 80391470 0038E3D0 C8 42 CF E8 */ lfd f2, lbl_805AED08@sda21(r2)
|
||||
/* 80391474 0038E3D4 FD 0A 42 7A */ fmadd f8, f10, f9, f8
|
||||
/* 80391478 0038E3D8 C8 02 CF B0 */ lfd f0, lbl_805AECD0@sda21(r2)
|
||||
/* 8039147C 0038E3DC C9 22 CF A8 */ lfd f9, lbl_805AECC8@sda21(r2)
|
||||
/* 80391480 0038E3E0 FC 8A 21 7A */ fmadd f4, f10, f5, f4
|
||||
/* 80391484 0038E3E4 FC AA 3A 3A */ fmadd f5, f10, f8, f7
|
||||
/* 80391488 0038E3E8 FC 6A 19 3A */ fmadd f3, f10, f4, f3
|
||||
/* 8039148C 0038E3EC FC 8A 31 7A */ fmadd f4, f10, f5, f6
|
||||
/* 80391490 0038E3F0 FC 4A 10 FA */ fmadd f2, f10, f3, f2
|
||||
/* 80391494 0038E3F4 FC 6A 01 32 */ fmul f3, f10, f4
|
||||
/* 80391498 0038E3F8 FC 43 10 24 */ fdiv f2, f3, f2
|
||||
/* 8039149C 0038E3FC FC 01 00 BC */ fnmsub f0, f1, f2, f0
|
||||
/* 803914A0 0038E400 FC 01 00 28 */ fsub f0, f1, f0
|
||||
/* 803914A4 0038E404 FC 29 00 28 */ fsub f1, f9, f0
|
||||
/* 803914A8 0038E408 48 00 02 28 */ b lbl_803916D0
|
||||
lbl_803914AC:
|
||||
/* 803914AC 0038E40C 2C 04 00 00 */ cmpwi r4, 0
|
||||
/* 803914B0 0038E410 40 80 01 08 */ bge lbl_803915B8
|
||||
/* 803914B4 0038E414 C9 42 CF E8 */ lfd f10, lbl_805AED08@sda21(r2)
|
||||
/* 803914B8 0038E418 C8 02 D0 10 */ lfd f0, lbl_805AED30@sda21(r2)
|
||||
/* 803914BC 0038E41C FC 2A 08 2A */ fadd f1, f10, f1
|
||||
/* 803914C0 0038E420 C8 A2 CF E0 */ lfd f5, lbl_805AED00@sda21(r2)
|
||||
/* 803914C4 0038E424 C8 82 CF D8 */ lfd f4, lbl_805AECF8@sda21(r2)
|
||||
/* 803914C8 0038E428 C9 02 CF D0 */ lfd f8, lbl_805AECF0@sda21(r2)
|
||||
/* 803914CC 0038E42C FC 20 00 72 */ fmul f1, f0, f1
|
||||
/* 803914D0 0038E430 C9 62 CF 98 */ lfd f11, lbl_805AECB8@sda21(r2)
|
||||
/* 803914D4 0038E434 C8 E2 CF C8 */ lfd f7, lbl_805AECE8@sda21(r2)
|
||||
/* 803914D8 0038E438 C8 62 D0 08 */ lfd f3, lbl_805AED28@sda21(r2)
|
||||
/* 803914DC 0038E43C C8 42 D0 00 */ lfd f2, lbl_805AED20@sda21(r2)
|
||||
/* 803914E0 0038E440 FD 25 20 7A */ fmadd f9, f5, f1, f4
|
||||
/* 803914E4 0038E444 C8 C2 CF C0 */ lfd f6, lbl_805AECE0@sda21(r2)
|
||||
/* 803914E8 0038E448 FC 83 10 7A */ fmadd f4, f3, f1, f2
|
||||
/* 803914EC 0038E44C C8 62 CF F8 */ lfd f3, lbl_805AED18@sda21(r2)
|
||||
/* 803914F0 0038E450 C8 A2 CF B8 */ lfd f5, lbl_805AECD8@sda21(r2)
|
||||
/* 803914F4 0038E454 FD 01 42 7A */ fmadd f8, f1, f9, f8
|
||||
/* 803914F8 0038E458 C8 42 CF F0 */ lfd f2, lbl_805AED10@sda21(r2)
|
||||
/* 803914FC 0038E45C FC 61 19 3A */ fmadd f3, f1, f4, f3
|
||||
/* 80391500 0038E460 FC 81 3A 3A */ fmadd f4, f1, f8, f7
|
||||
/* 80391504 0038E464 FC 41 10 FA */ fmadd f2, f1, f3, f2
|
||||
/* 80391508 0038E468 FC 61 31 3A */ fmadd f3, f1, f4, f6
|
||||
/* 8039150C 0038E46C FC C1 50 BA */ fmadd f6, f1, f2, f10
|
||||
/* 80391510 0038E470 FC 41 28 FA */ fmadd f2, f1, f3, f5
|
||||
/* 80391514 0038E474 FC 01 58 40 */ fcmpo cr0, f1, f11
|
||||
/* 80391518 0038E478 FC A1 00 B2 */ fmul f5, f1, f2
|
||||
/* 8039151C 0038E47C 40 81 00 54 */ ble lbl_80391570
|
||||
/* 80391520 0038E480 FC 60 08 34 */ frsqrte f3, f1
|
||||
/* 80391524 0038E484 C8 82 D0 18 */ lfd f4, lbl_805AED38@sda21(r2)
|
||||
/* 80391528 0038E488 FC 43 00 F2 */ fmul f2, f3, f3
|
||||
/* 8039152C 0038E48C FC 60 00 F2 */ fmul f3, f0, f3
|
||||
/* 80391530 0038E490 FC 41 20 BC */ fnmsub f2, f1, f2, f4
|
||||
/* 80391534 0038E494 FC 63 00 B2 */ fmul f3, f3, f2
|
||||
/* 80391538 0038E498 FC 43 00 F2 */ fmul f2, f3, f3
|
||||
/* 8039153C 0038E49C FC 60 00 F2 */ fmul f3, f0, f3
|
||||
/* 80391540 0038E4A0 FC 41 20 BC */ fnmsub f2, f1, f2, f4
|
||||
/* 80391544 0038E4A4 FC 63 00 B2 */ fmul f3, f3, f2
|
||||
/* 80391548 0038E4A8 FC 43 00 F2 */ fmul f2, f3, f3
|
||||
/* 8039154C 0038E4AC FC 60 00 F2 */ fmul f3, f0, f3
|
||||
/* 80391550 0038E4B0 FC 41 20 BC */ fnmsub f2, f1, f2, f4
|
||||
/* 80391554 0038E4B4 FC 63 00 B2 */ fmul f3, f3, f2
|
||||
/* 80391558 0038E4B8 FC 43 00 F2 */ fmul f2, f3, f3
|
||||
/* 8039155C 0038E4BC FC 60 00 F2 */ fmul f3, f0, f3
|
||||
/* 80391560 0038E4C0 FC 01 20 BC */ fnmsub f0, f1, f2, f4
|
||||
/* 80391564 0038E4C4 FC 03 00 32 */ fmul f0, f3, f0
|
||||
/* 80391568 0038E4C8 FD 61 00 32 */ fmul f11, f1, f0
|
||||
/* 8039156C 0038E4CC 48 00 00 2C */ b lbl_80391598
|
||||
lbl_80391570:
|
||||
/* 80391570 0038E4D0 FC 0B 08 00 */ fcmpu cr0, f11, f1
|
||||
/* 80391574 0038E4D4 40 82 00 08 */ bne lbl_8039157C
|
||||
/* 80391578 0038E4D8 48 00 00 20 */ b lbl_80391598
|
||||
lbl_8039157C:
|
||||
/* 8039157C 0038E4DC FC 01 58 00 */ fcmpu cr0, f1, f11
|
||||
/* 80391580 0038E4E0 41 82 00 10 */ beq lbl_80391590
|
||||
/* 80391584 0038E4E4 3C 60 80 5B */ lis r3, lbl_805A8BA0@ha
|
||||
/* 80391588 0038E4E8 C1 63 8B A0 */ lfs f11, lbl_805A8BA0@l(r3)
|
||||
/* 8039158C 0038E4EC 48 00 00 0C */ b lbl_80391598
|
||||
lbl_80391590:
|
||||
/* 80391590 0038E4F0 3C 60 80 5B */ lis r3, lbl_805A8BA4@ha
|
||||
/* 80391594 0038E4F4 C1 63 8B A4 */ lfs f11, lbl_805A8BA4@l(r3)
|
||||
lbl_80391598:
|
||||
/* 80391598 0038E4F8 FC 45 30 24 */ fdiv f2, f5, f6
|
||||
/* 8039159C 0038E4FC C8 22 CF B0 */ lfd f1, lbl_805AECD0@sda21(r2)
|
||||
/* 803915A0 0038E500 C8 62 D0 20 */ lfd f3, lbl_805AED40@sda21(r2)
|
||||
/* 803915A4 0038E504 C8 02 CF A0 */ lfd f0, lbl_805AECC0@sda21(r2)
|
||||
/* 803915A8 0038E508 FC 22 0A F8 */ fmsub f1, f2, f11, f1
|
||||
/* 803915AC 0038E50C FC 2B 08 2A */ fadd f1, f11, f1
|
||||
/* 803915B0 0038E510 FC 23 00 7C */ fnmsub f1, f3, f1, f0
|
||||
/* 803915B4 0038E514 48 00 01 1C */ b lbl_803916D0
|
||||
lbl_803915B8:
|
||||
/* 803915B8 0038E518 C8 02 CF E8 */ lfd f0, lbl_805AED08@sda21(r2)
|
||||
/* 803915BC 0038E51C C8 82 D0 10 */ lfd f4, lbl_805AED30@sda21(r2)
|
||||
/* 803915C0 0038E520 FC 00 08 28 */ fsub f0, f0, f1
|
||||
/* 803915C4 0038E524 C9 22 CF 98 */ lfd f9, lbl_805AECB8@sda21(r2)
|
||||
/* 803915C8 0038E528 FC 04 00 32 */ fmul f0, f4, f0
|
||||
/* 803915CC 0038E52C FC 00 48 40 */ fcmpo cr0, f0, f9
|
||||
/* 803915D0 0038E530 40 81 00 54 */ ble lbl_80391624
|
||||
/* 803915D4 0038E534 FC 40 00 34 */ frsqrte f2, f0
|
||||
/* 803915D8 0038E538 C8 62 D0 18 */ lfd f3, lbl_805AED38@sda21(r2)
|
||||
/* 803915DC 0038E53C FC 22 00 B2 */ fmul f1, f2, f2
|
||||
/* 803915E0 0038E540 FC 44 00 B2 */ fmul f2, f4, f2
|
||||
/* 803915E4 0038E544 FC 20 18 7C */ fnmsub f1, f0, f1, f3
|
||||
/* 803915E8 0038E548 FC 42 00 72 */ fmul f2, f2, f1
|
||||
/* 803915EC 0038E54C FC 22 00 B2 */ fmul f1, f2, f2
|
||||
/* 803915F0 0038E550 FC 44 00 B2 */ fmul f2, f4, f2
|
||||
/* 803915F4 0038E554 FC 20 18 7C */ fnmsub f1, f0, f1, f3
|
||||
/* 803915F8 0038E558 FC 42 00 72 */ fmul f2, f2, f1
|
||||
/* 803915FC 0038E55C FC 22 00 B2 */ fmul f1, f2, f2
|
||||
/* 80391600 0038E560 FC 44 00 B2 */ fmul f2, f4, f2
|
||||
/* 80391604 0038E564 FC 20 18 7C */ fnmsub f1, f0, f1, f3
|
||||
/* 80391608 0038E568 FC 42 00 72 */ fmul f2, f2, f1
|
||||
/* 8039160C 0038E56C FC 22 00 B2 */ fmul f1, f2, f2
|
||||
/* 80391610 0038E570 FC 44 00 B2 */ fmul f2, f4, f2
|
||||
/* 80391614 0038E574 FC 20 18 7C */ fnmsub f1, f0, f1, f3
|
||||
/* 80391618 0038E578 FC 22 00 72 */ fmul f1, f2, f1
|
||||
/* 8039161C 0038E57C FD 20 00 72 */ fmul f9, f0, f1
|
||||
/* 80391620 0038E580 48 00 00 2C */ b lbl_8039164C
|
||||
lbl_80391624:
|
||||
/* 80391624 0038E584 FC 09 00 00 */ fcmpu cr0, f9, f0
|
||||
/* 80391628 0038E588 40 82 00 08 */ bne lbl_80391630
|
||||
/* 8039162C 0038E58C 48 00 00 20 */ b lbl_8039164C
|
||||
lbl_80391630:
|
||||
/* 80391630 0038E590 FC 00 48 00 */ fcmpu cr0, f0, f9
|
||||
/* 80391634 0038E594 41 82 00 10 */ beq lbl_80391644
|
||||
/* 80391638 0038E598 3C 60 80 5B */ lis r3, lbl_805A8BA0@ha
|
||||
/* 8039163C 0038E59C C1 23 8B A0 */ lfs f9, lbl_805A8BA0@l(r3)
|
||||
/* 80391640 0038E5A0 48 00 00 0C */ b lbl_8039164C
|
||||
lbl_80391644:
|
||||
/* 80391644 0038E5A4 3C 60 80 5B */ lis r3, lbl_805A8BA4@ha
|
||||
/* 80391648 0038E5A8 C1 23 8B A4 */ lfs f9, lbl_805A8BA4@l(r3)
|
||||
lbl_8039164C:
|
||||
/* 8039164C 0038E5AC C8 42 CF E0 */ lfd f2, lbl_805AED00@sda21(r2)
|
||||
/* 80391650 0038E5B0 38 00 00 00 */ li r0, 0
|
||||
/* 80391654 0038E5B4 C8 22 CF D8 */ lfd f1, lbl_805AECF8@sda21(r2)
|
||||
/* 80391658 0038E5B8 D9 21 00 10 */ stfd f9, 0x10(r1)
|
||||
/* 8039165C 0038E5BC FC 62 08 3A */ fmadd f3, f2, f0, f1
|
||||
/* 80391660 0038E5C0 C8 42 CF D0 */ lfd f2, lbl_805AECF0@sda21(r2)
|
||||
/* 80391664 0038E5C4 90 01 00 14 */ stw r0, 0x14(r1)
|
||||
/* 80391668 0038E5C8 C8 22 CF C8 */ lfd f1, lbl_805AECE8@sda21(r2)
|
||||
/* 8039166C 0038E5CC C9 41 00 10 */ lfd f10, 0x10(r1)
|
||||
/* 80391670 0038E5D0 FC A0 10 FA */ fmadd f5, f0, f3, f2
|
||||
/* 80391674 0038E5D4 C8 82 D0 08 */ lfd f4, lbl_805AED28@sda21(r2)
|
||||
/* 80391678 0038E5D8 C8 42 D0 00 */ lfd f2, lbl_805AED20@sda21(r2)
|
||||
/* 8039167C 0038E5DC FC 6A 02 BC */ fnmsub f3, f10, f10, f0
|
||||
/* 80391680 0038E5E0 C8 E2 CF C0 */ lfd f7, lbl_805AECE0@sda21(r2)
|
||||
/* 80391684 0038E5E4 FD 00 09 7A */ fmadd f8, f0, f5, f1
|
||||
/* 80391688 0038E5E8 C8 22 CF F8 */ lfd f1, lbl_805AED18@sda21(r2)
|
||||
/* 8039168C 0038E5EC FC A4 10 3A */ fmadd f5, f4, f0, f2
|
||||
/* 80391690 0038E5F0 C8 C2 CF B8 */ lfd f6, lbl_805AECD8@sda21(r2)
|
||||
/* 80391694 0038E5F4 C8 42 CF F0 */ lfd f2, lbl_805AED10@sda21(r2)
|
||||
/* 80391698 0038E5F8 FC E0 3A 3A */ fmadd f7, f0, f8, f7
|
||||
/* 8039169C 0038E5FC C8 82 CF E8 */ lfd f4, lbl_805AED08@sda21(r2)
|
||||
/* 803916A0 0038E600 FC A0 09 7A */ fmadd f5, f0, f5, f1
|
||||
/* 803916A4 0038E604 C8 22 D0 20 */ lfd f1, lbl_805AED40@sda21(r2)
|
||||
/* 803916A8 0038E608 FC C0 31 FA */ fmadd f6, f0, f7, f6
|
||||
/* 803916AC 0038E60C FC A0 11 7A */ fmadd f5, f0, f5, f2
|
||||
/* 803916B0 0038E610 FC 49 50 2A */ fadd f2, f9, f10
|
||||
/* 803916B4 0038E614 FC C0 01 B2 */ fmul f6, f0, f6
|
||||
/* 803916B8 0038E618 FC 80 21 7A */ fmadd f4, f0, f5, f4
|
||||
/* 803916BC 0038E61C FC 03 10 24 */ fdiv f0, f3, f2
|
||||
/* 803916C0 0038E620 FC 46 20 24 */ fdiv f2, f6, f4
|
||||
/* 803916C4 0038E624 FC 02 02 7A */ fmadd f0, f2, f9, f0
|
||||
/* 803916C8 0038E628 FC 0A 00 2A */ fadd f0, f10, f0
|
||||
/* 803916CC 0038E62C FC 21 00 32 */ fmul f1, f1, f0
|
||||
lbl_803916D0:
|
||||
/* 803916D0 0038E630 38 21 00 20 */ addi r1, r1, 0x20
|
||||
/* 803916D4 0038E634 4E 80 00 20 */ blr
|
|
@ -0,0 +1,172 @@
|
|||
.include "macros.inc"
|
||||
|
||||
.section .text, "ax"
|
||||
|
||||
.global __ieee754_asin
|
||||
__ieee754_asin:
|
||||
/* 803916D8 0038E638 94 21 FF E0 */ stwu r1, -0x20(r1)
|
||||
/* 803916DC 0038E63C 3C 00 3F F0 */ lis r0, 0x3ff0
|
||||
/* 803916E0 0038E640 D8 21 00 08 */ stfd f1, 8(r1)
|
||||
/* 803916E4 0038E644 80 81 00 08 */ lwz r4, 8(r1)
|
||||
/* 803916E8 0038E648 54 85 00 7E */ clrlwi r5, r4, 1
|
||||
/* 803916EC 0038E64C 7C 05 00 00 */ cmpw r5, r0
|
||||
/* 803916F0 0038E650 41 80 00 34 */ blt lbl_80391724
|
||||
/* 803916F4 0038E654 80 01 00 0C */ lwz r0, 0xc(r1)
|
||||
/* 803916F8 0038E658 3C 65 C0 10 */ addis r3, r5, 0xc010
|
||||
/* 803916FC 0038E65C 7C 60 03 79 */ or. r0, r3, r0
|
||||
/* 80391700 0038E660 40 82 00 18 */ bne lbl_80391718
|
||||
/* 80391704 0038E664 C8 02 D0 30 */ lfd f0, lbl_805AED50@sda21(r2)
|
||||
/* 80391708 0038E668 C8 42 D0 28 */ lfd f2, lbl_805AED48@sda21(r2)
|
||||
/* 8039170C 0038E66C FC 00 00 72 */ fmul f0, f0, f1
|
||||
/* 80391710 0038E670 FC 22 00 7A */ fmadd f1, f2, f1, f0
|
||||
/* 80391714 0038E674 48 00 02 20 */ b lbl_80391934
|
||||
lbl_80391718:
|
||||
/* 80391718 0038E678 3C 60 80 5B */ lis r3, lbl_805A8BA0@ha
|
||||
/* 8039171C 0038E67C C0 23 8B A0 */ lfs f1, lbl_805A8BA0@l(r3)
|
||||
/* 80391720 0038E680 48 00 02 14 */ b lbl_80391934
|
||||
lbl_80391724:
|
||||
/* 80391724 0038E684 3C 00 3F E0 */ lis r0, 0x3fe0
|
||||
/* 80391728 0038E688 7C 05 00 00 */ cmpw r5, r0
|
||||
/* 8039172C 0038E68C 40 80 00 94 */ bge lbl_803917C0
|
||||
/* 80391730 0038E690 3C 00 3E 40 */ lis r0, 0x3e40
|
||||
/* 80391734 0038E694 7C 05 00 00 */ cmpw r5, r0
|
||||
/* 80391738 0038E698 40 80 00 1C */ bge lbl_80391754
|
||||
/* 8039173C 0038E69C C8 62 D0 38 */ lfd f3, lbl_805AED58@sda21(r2)
|
||||
/* 80391740 0038E6A0 C8 02 D0 40 */ lfd f0, lbl_805AED60@sda21(r2)
|
||||
/* 80391744 0038E6A4 FC 63 08 2A */ fadd f3, f3, f1
|
||||
/* 80391748 0038E6A8 FC 03 00 40 */ fcmpo cr0, f3, f0
|
||||
/* 8039174C 0038E6AC 40 81 00 0C */ ble lbl_80391758
|
||||
/* 80391750 0038E6B0 48 00 01 E4 */ b lbl_80391934
|
||||
lbl_80391754:
|
||||
/* 80391754 0038E6B4 FC 41 00 72 */ fmul f2, f1, f1
|
||||
lbl_80391758:
|
||||
/* 80391758 0038E6B8 C8 22 D0 70 */ lfd f1, lbl_805AED90@sda21(r2)
|
||||
/* 8039175C 0038E6BC C8 02 D0 68 */ lfd f0, lbl_805AED88@sda21(r2)
|
||||
/* 80391760 0038E6C0 C8 62 D0 60 */ lfd f3, lbl_805AED80@sda21(r2)
|
||||
/* 80391764 0038E6C4 FC 81 00 BA */ fmadd f4, f1, f2, f0
|
||||
/* 80391768 0038E6C8 C8 E2 D0 58 */ lfd f7, lbl_805AED78@sda21(r2)
|
||||
/* 8039176C 0038E6CC C8 22 D0 90 */ lfd f1, lbl_805AEDB0@sda21(r2)
|
||||
/* 80391770 0038E6D0 C8 02 D0 88 */ lfd f0, lbl_805AEDA8@sda21(r2)
|
||||
/* 80391774 0038E6D4 C8 C2 D0 50 */ lfd f6, lbl_805AED70@sda21(r2)
|
||||
/* 80391778 0038E6D8 FD 02 19 3A */ fmadd f8, f2, f4, f3
|
||||
/* 8039177C 0038E6DC C8 62 D0 80 */ lfd f3, lbl_805AEDA0@sda21(r2)
|
||||
/* 80391780 0038E6E0 FC 81 00 BA */ fmadd f4, f1, f2, f0
|
||||
/* 80391784 0038E6E4 C8 A2 D0 48 */ lfd f5, lbl_805AED68@sda21(r2)
|
||||
/* 80391788 0038E6E8 C8 22 D0 78 */ lfd f1, lbl_805AED98@sda21(r2)
|
||||
/* 8039178C 0038E6EC FC E2 3A 3A */ fmadd f7, f2, f8, f7
|
||||
/* 80391790 0038E6F0 C8 02 D0 40 */ lfd f0, lbl_805AED60@sda21(r2)
|
||||
/* 80391794 0038E6F4 FC 62 19 3A */ fmadd f3, f2, f4, f3
|
||||
/* 80391798 0038E6F8 C9 01 00 08 */ lfd f8, 8(r1)
|
||||
/* 8039179C 0038E6FC FC 82 31 FA */ fmadd f4, f2, f7, f6
|
||||
/* 803917A0 0038E700 FC 22 08 FA */ fmadd f1, f2, f3, f1
|
||||
/* 803917A4 0038E704 FC 62 29 3A */ fmadd f3, f2, f4, f5
|
||||
/* 803917A8 0038E708 FC 02 00 7A */ fmadd f0, f2, f1, f0
|
||||
/* 803917AC 0038E70C FC 22 00 F2 */ fmul f1, f2, f3
|
||||
/* 803917B0 0038E710 FC 01 00 24 */ fdiv f0, f1, f0
|
||||
/* 803917B4 0038E714 FC 28 40 3A */ fmadd f1, f8, f0, f8
|
||||
/* 803917B8 0038E718 D8 01 00 10 */ stfd f0, 0x10(r1)
|
||||
/* 803917BC 0038E71C 48 00 01 78 */ b lbl_80391934
|
||||
lbl_803917C0:
|
||||
/* 803917C0 0038E720 FC 20 0A 10 */ fabs f1, f1
|
||||
/* 803917C4 0038E724 C9 82 D0 40 */ lfd f12, lbl_805AED60@sda21(r2)
|
||||
/* 803917C8 0038E728 C8 02 D0 98 */ lfd f0, lbl_805AEDB8@sda21(r2)
|
||||
/* 803917CC 0038E72C C8 C2 D0 70 */ lfd f6, lbl_805AED90@sda21(r2)
|
||||
/* 803917D0 0038E730 FD 6C 08 28 */ fsub f11, f12, f1
|
||||
/* 803917D4 0038E734 C8 82 D0 68 */ lfd f4, lbl_805AED88@sda21(r2)
|
||||
/* 803917D8 0038E738 C9 22 D0 60 */ lfd f9, lbl_805AED80@sda21(r2)
|
||||
/* 803917DC 0038E73C C9 02 D0 58 */ lfd f8, lbl_805AED78@sda21(r2)
|
||||
/* 803917E0 0038E740 FC 40 02 F2 */ fmul f2, f0, f11
|
||||
/* 803917E4 0038E744 C8 22 D0 A0 */ lfd f1, lbl_805AEDC0@sda21(r2)
|
||||
/* 803917E8 0038E748 C8 A2 D0 90 */ lfd f5, lbl_805AEDB0@sda21(r2)
|
||||
/* 803917EC 0038E74C C8 62 D0 88 */ lfd f3, lbl_805AEDA8@sda21(r2)
|
||||
/* 803917F0 0038E750 C8 E2 D0 50 */ lfd f7, lbl_805AED70@sda21(r2)
|
||||
/* 803917F4 0038E754 FD 46 20 BA */ fmadd f10, f6, f2, f4
|
||||
/* 803917F8 0038E758 C8 82 D0 80 */ lfd f4, lbl_805AEDA0@sda21(r2)
|
||||
/* 803917FC 0038E75C FC A5 18 BA */ fmadd f5, f5, f2, f3
|
||||
/* 80391800 0038E760 C8 C2 D0 48 */ lfd f6, lbl_805AED68@sda21(r2)
|
||||
/* 80391804 0038E764 C8 62 D0 78 */ lfd f3, lbl_805AED98@sda21(r2)
|
||||
/* 80391808 0038E768 FD 22 4A BA */ fmadd f9, f2, f10, f9
|
||||
/* 8039180C 0038E76C D9 61 00 10 */ stfd f11, 0x10(r1)
|
||||
/* 80391810 0038E770 FC 82 21 7A */ fmadd f4, f2, f5, f4
|
||||
/* 80391814 0038E774 FC A2 42 7A */ fmadd f5, f2, f9, f8
|
||||
/* 80391818 0038E778 FC 62 19 3A */ fmadd f3, f2, f4, f3
|
||||
/* 8039181C 0038E77C FC 82 39 7A */ fmadd f4, f2, f5, f7
|
||||
/* 80391820 0038E780 FD 02 60 FA */ fmadd f8, f2, f3, f12
|
||||
/* 80391824 0038E784 FC 62 31 3A */ fmadd f3, f2, f4, f6
|
||||
/* 80391828 0038E788 FC 02 08 40 */ fcmpo cr0, f2, f1
|
||||
/* 8039182C 0038E78C FC A2 00 F2 */ fmul f5, f2, f3
|
||||
/* 80391830 0038E790 40 81 00 54 */ ble lbl_80391884
|
||||
/* 80391834 0038E794 FC 60 10 34 */ frsqrte f3, f2
|
||||
/* 80391838 0038E798 C8 82 D0 A8 */ lfd f4, lbl_805AEDC8@sda21(r2)
|
||||
/* 8039183C 0038E79C FC 23 00 F2 */ fmul f1, f3, f3
|
||||
/* 80391840 0038E7A0 FC 60 00 F2 */ fmul f3, f0, f3
|
||||
/* 80391844 0038E7A4 FC 22 20 7C */ fnmsub f1, f2, f1, f4
|
||||
/* 80391848 0038E7A8 FC 63 00 72 */ fmul f3, f3, f1
|
||||
/* 8039184C 0038E7AC FC 23 00 F2 */ fmul f1, f3, f3
|
||||
/* 80391850 0038E7B0 FC 60 00 F2 */ fmul f3, f0, f3
|
||||
/* 80391854 0038E7B4 FC 22 20 7C */ fnmsub f1, f2, f1, f4
|
||||
/* 80391858 0038E7B8 FC 63 00 72 */ fmul f3, f3, f1
|
||||
/* 8039185C 0038E7BC FC 23 00 F2 */ fmul f1, f3, f3
|
||||
/* 80391860 0038E7C0 FC 60 00 F2 */ fmul f3, f0, f3
|
||||
/* 80391864 0038E7C4 FC 22 20 7C */ fnmsub f1, f2, f1, f4
|
||||
/* 80391868 0038E7C8 FC 63 00 72 */ fmul f3, f3, f1
|
||||
/* 8039186C 0038E7CC FC 23 00 F2 */ fmul f1, f3, f3
|
||||
/* 80391870 0038E7D0 FC 60 00 F2 */ fmul f3, f0, f3
|
||||
/* 80391874 0038E7D4 FC 02 20 7C */ fnmsub f0, f2, f1, f4
|
||||
/* 80391878 0038E7D8 FC 03 00 32 */ fmul f0, f3, f0
|
||||
/* 8039187C 0038E7DC FC 22 00 32 */ fmul f1, f2, f0
|
||||
/* 80391880 0038E7E0 48 00 00 2C */ b lbl_803918AC
|
||||
lbl_80391884:
|
||||
/* 80391884 0038E7E4 FC 01 10 00 */ fcmpu cr0, f1, f2
|
||||
/* 80391888 0038E7E8 40 82 00 08 */ bne lbl_80391890
|
||||
/* 8039188C 0038E7EC 48 00 00 20 */ b lbl_803918AC
|
||||
lbl_80391890:
|
||||
/* 80391890 0038E7F0 FC 02 08 00 */ fcmpu cr0, f2, f1
|
||||
/* 80391894 0038E7F4 41 82 00 10 */ beq lbl_803918A4
|
||||
/* 80391898 0038E7F8 3C 60 80 5B */ lis r3, lbl_805A8BA0@ha
|
||||
/* 8039189C 0038E7FC C0 23 8B A0 */ lfs f1, lbl_805A8BA0@l(r3)
|
||||
/* 803918A0 0038E800 48 00 00 0C */ b lbl_803918AC
|
||||
lbl_803918A4:
|
||||
/* 803918A4 0038E804 3C 60 80 5B */ lis r3, lbl_805A8BA4@ha
|
||||
/* 803918A8 0038E808 C0 23 8B A4 */ lfs f1, lbl_805A8BA4@l(r3)
|
||||
lbl_803918AC:
|
||||
/* 803918AC 0038E80C 3C 60 3F EF */ lis r3, 0x3FEF3333@ha
|
||||
/* 803918B0 0038E810 38 03 33 33 */ addi r0, r3, 0x3FEF3333@l
|
||||
/* 803918B4 0038E814 7C 05 00 00 */ cmpw r5, r0
|
||||
/* 803918B8 0038E818 41 80 00 28 */ blt lbl_803918E0
|
||||
/* 803918BC 0038E81C FC 85 40 24 */ fdiv f4, f5, f8
|
||||
/* 803918C0 0038E820 C8 42 D0 B0 */ lfd f2, lbl_805AEDD0@sda21(r2)
|
||||
/* 803918C4 0038E824 C8 02 D0 30 */ lfd f0, lbl_805AED50@sda21(r2)
|
||||
/* 803918C8 0038E828 C8 62 D0 28 */ lfd f3, lbl_805AED48@sda21(r2)
|
||||
/* 803918CC 0038E82C FC 21 09 3A */ fmadd f1, f1, f4, f1
|
||||
/* 803918D0 0038E830 D8 81 00 10 */ stfd f4, 0x10(r1)
|
||||
/* 803918D4 0038E834 FC 02 00 78 */ fmsub f0, f2, f1, f0
|
||||
/* 803918D8 0038E838 FC 23 00 28 */ fsub f1, f3, f0
|
||||
/* 803918DC 0038E83C 48 00 00 48 */ b lbl_80391924
|
||||
lbl_803918E0:
|
||||
/* 803918E0 0038E840 D8 21 00 10 */ stfd f1, 0x10(r1)
|
||||
/* 803918E4 0038E844 38 00 00 00 */ li r0, 0
|
||||
/* 803918E8 0038E848 C8 E2 D0 B0 */ lfd f7, lbl_805AEDD0@sda21(r2)
|
||||
/* 803918EC 0038E84C FC A5 40 24 */ fdiv f5, f5, f8
|
||||
/* 803918F0 0038E850 90 01 00 14 */ stw r0, 0x14(r1)
|
||||
/* 803918F4 0038E854 C8 02 D0 30 */ lfd f0, lbl_805AED50@sda21(r2)
|
||||
/* 803918F8 0038E858 C9 01 00 10 */ lfd f8, 0x10(r1)
|
||||
/* 803918FC 0038E85C C8 62 D0 B8 */ lfd f3, lbl_805AEDD8@sda21(r2)
|
||||
/* 80391900 0038E860 FC 88 12 3C */ fnmsub f4, f8, f8, f2
|
||||
/* 80391904 0038E864 FC 41 40 2A */ fadd f2, f1, f8
|
||||
/* 80391908 0038E868 FC C7 00 72 */ fmul f6, f7, f1
|
||||
/* 8039190C 0038E86C FC 24 10 24 */ fdiv f1, f4, f2
|
||||
/* 80391910 0038E870 FC 27 00 7C */ fnmsub f1, f7, f1, f0
|
||||
/* 80391914 0038E874 FC 07 1A 3C */ fnmsub f0, f7, f8, f3
|
||||
/* 80391918 0038E878 FC 26 09 78 */ fmsub f1, f6, f5, f1
|
||||
/* 8039191C 0038E87C FC 01 00 28 */ fsub f0, f1, f0
|
||||
/* 80391920 0038E880 FC 23 00 28 */ fsub f1, f3, f0
|
||||
lbl_80391924:
|
||||
/* 80391924 0038E884 2C 04 00 00 */ cmpwi r4, 0
|
||||
/* 80391928 0038E888 40 81 00 08 */ ble lbl_80391930
|
||||
/* 8039192C 0038E88C 48 00 00 08 */ b lbl_80391934
|
||||
lbl_80391930:
|
||||
/* 80391930 0038E890 FC 20 08 50 */ fneg f1, f1
|
||||
lbl_80391934:
|
||||
/* 80391934 0038E894 38 21 00 20 */ addi r1, r1, 0x20
|
||||
/* 80391938 0038E898 4E 80 00 20 */ blr
|
|
@ -0,0 +1,202 @@
|
|||
.include "macros.inc"
|
||||
|
||||
.section .text, "ax"
|
||||
|
||||
.global __ieee754_atan2
|
||||
__ieee754_atan2:
|
||||
/* 8039193C 0038E89C 94 21 FF D0 */ stwu r1, -0x30(r1)
|
||||
/* 80391940 0038E8A0 7C 08 02 A6 */ mflr r0
|
||||
/* 80391944 0038E8A4 3C 60 7F F0 */ lis r3, 0x7ff0
|
||||
/* 80391948 0038E8A8 D8 41 00 10 */ stfd f2, 0x10(r1)
|
||||
/* 8039194C 0038E8AC 81 01 00 14 */ lwz r8, 0x14(r1)
|
||||
/* 80391950 0038E8B0 90 01 00 34 */ stw r0, 0x34(r1)
|
||||
/* 80391954 0038E8B4 7C 08 00 D0 */ neg r0, r8
|
||||
/* 80391958 0038E8B8 80 81 00 10 */ lwz r4, 0x10(r1)
|
||||
/* 8039195C 0038E8BC 7D 00 03 78 */ or r0, r8, r0
|
||||
/* 80391960 0038E8C0 D8 21 00 08 */ stfd f1, 8(r1)
|
||||
/* 80391964 0038E8C4 54 86 00 7E */ clrlwi r6, r4, 1
|
||||
/* 80391968 0038E8C8 54 00 0F FE */ srwi r0, r0, 0x1f
|
||||
/* 8039196C 0038E8CC 80 A1 00 08 */ lwz r5, 8(r1)
|
||||
/* 80391970 0038E8D0 7C C0 03 78 */ or r0, r6, r0
|
||||
/* 80391974 0038E8D4 93 E1 00 2C */ stw r31, 0x2c(r1)
|
||||
/* 80391978 0038E8D8 7C 00 18 40 */ cmplw r0, r3
|
||||
/* 8039197C 0038E8DC 81 21 00 0C */ lwz r9, 0xc(r1)
|
||||
/* 80391980 0038E8E0 54 A7 00 7E */ clrlwi r7, r5, 1
|
||||
/* 80391984 0038E8E4 41 81 00 1C */ bgt lbl_803919A0
|
||||
/* 80391988 0038E8E8 7C 09 00 D0 */ neg r0, r9
|
||||
/* 8039198C 0038E8EC 7D 20 03 78 */ or r0, r9, r0
|
||||
/* 80391990 0038E8F0 54 00 0F FE */ srwi r0, r0, 0x1f
|
||||
/* 80391994 0038E8F4 7C E0 03 78 */ or r0, r7, r0
|
||||
/* 80391998 0038E8F8 7C 00 18 40 */ cmplw r0, r3
|
||||
/* 8039199C 0038E8FC 40 81 00 14 */ ble lbl_803919B0
|
||||
lbl_803919A0:
|
||||
/* 803919A0 0038E900 C8 21 00 10 */ lfd f1, 0x10(r1)
|
||||
/* 803919A4 0038E904 C8 01 00 08 */ lfd f0, 8(r1)
|
||||
/* 803919A8 0038E908 FC 21 00 2A */ fadd f1, f1, f0
|
||||
/* 803919AC 0038E90C 48 00 02 0C */ b lbl_80391BB8
|
||||
lbl_803919B0:
|
||||
/* 803919B0 0038E910 3C 04 C0 10 */ addis r0, r4, 0xc010
|
||||
/* 803919B4 0038E914 7C 00 43 79 */ or. r0, r0, r8
|
||||
/* 803919B8 0038E918 40 82 00 0C */ bne lbl_803919C4
|
||||
/* 803919BC 0038E91C 48 00 28 0D */ bl atan
|
||||
/* 803919C0 0038E920 48 00 01 F8 */ b lbl_80391BB8
|
||||
lbl_803919C4:
|
||||
/* 803919C4 0038E924 7C E0 4B 79 */ or. r0, r7, r9
|
||||
/* 803919C8 0038E928 54 80 17 BC */ rlwinm r0, r4, 2, 0x1e, 0x1e
|
||||
/* 803919CC 0038E92C 7C 1F 03 78 */ mr r31, r0
|
||||
/* 803919D0 0038E930 50 BF 0F FE */ rlwimi r31, r5, 1, 0x1f, 0x1f
|
||||
/* 803919D4 0038E934 40 82 00 3C */ bne lbl_80391A10
|
||||
/* 803919D8 0038E938 2C 1F 00 02 */ cmpwi r31, 2
|
||||
/* 803919DC 0038E93C 41 82 00 24 */ beq lbl_80391A00
|
||||
/* 803919E0 0038E940 40 80 00 10 */ bge lbl_803919F0
|
||||
/* 803919E4 0038E944 2C 1F 00 00 */ cmpwi r31, 0
|
||||
/* 803919E8 0038E948 40 80 01 D0 */ bge lbl_80391BB8
|
||||
/* 803919EC 0038E94C 48 00 00 24 */ b lbl_80391A10
|
||||
lbl_803919F0:
|
||||
/* 803919F0 0038E950 2C 1F 00 04 */ cmpwi r31, 4
|
||||
/* 803919F4 0038E954 40 80 00 1C */ bge lbl_80391A10
|
||||
/* 803919F8 0038E958 48 00 00 10 */ b lbl_80391A08
|
||||
/* 803919FC 0038E95C 48 00 01 BC */ b lbl_80391BB8
|
||||
lbl_80391A00:
|
||||
/* 80391A00 0038E960 C8 22 D0 C0 */ lfd f1, lbl_805AEDE0@sda21(r2)
|
||||
/* 80391A04 0038E964 48 00 01 B4 */ b lbl_80391BB8
|
||||
lbl_80391A08:
|
||||
/* 80391A08 0038E968 C8 22 D0 C8 */ lfd f1, lbl_805AEDE8@sda21(r2)
|
||||
/* 80391A0C 0038E96C 48 00 01 AC */ b lbl_80391BB8
|
||||
lbl_80391A10:
|
||||
/* 80391A10 0038E970 7C C0 43 79 */ or. r0, r6, r8
|
||||
/* 80391A14 0038E974 40 82 00 1C */ bne lbl_80391A30
|
||||
/* 80391A18 0038E978 2C 05 00 00 */ cmpwi r5, 0
|
||||
/* 80391A1C 0038E97C 40 80 00 0C */ bge lbl_80391A28
|
||||
/* 80391A20 0038E980 C8 22 D0 D0 */ lfd f1, lbl_805AEDF0@sda21(r2)
|
||||
/* 80391A24 0038E984 48 00 01 94 */ b lbl_80391BB8
|
||||
lbl_80391A28:
|
||||
/* 80391A28 0038E988 C8 22 D0 D8 */ lfd f1, lbl_805AEDF8@sda21(r2)
|
||||
/* 80391A2C 0038E98C 48 00 01 8C */ b lbl_80391BB8
|
||||
lbl_80391A30:
|
||||
/* 80391A30 0038E990 3C 06 80 10 */ addis r0, r6, 0x8010
|
||||
/* 80391A34 0038E994 28 00 00 00 */ cmplwi r0, 0
|
||||
/* 80391A38 0038E998 40 82 00 A0 */ bne lbl_80391AD8
|
||||
/* 80391A3C 0038E99C 3C 07 80 10 */ addis r0, r7, 0x8010
|
||||
/* 80391A40 0038E9A0 28 00 00 00 */ cmplwi r0, 0
|
||||
/* 80391A44 0038E9A4 40 82 00 4C */ bne lbl_80391A90
|
||||
/* 80391A48 0038E9A8 2C 1F 00 02 */ cmpwi r31, 2
|
||||
/* 80391A4C 0038E9AC 41 82 00 34 */ beq lbl_80391A80
|
||||
/* 80391A50 0038E9B0 40 80 00 14 */ bge lbl_80391A64
|
||||
/* 80391A54 0038E9B4 2C 1F 00 00 */ cmpwi r31, 0
|
||||
/* 80391A58 0038E9B8 41 82 00 18 */ beq lbl_80391A70
|
||||
/* 80391A5C 0038E9BC 40 80 00 1C */ bge lbl_80391A78
|
||||
/* 80391A60 0038E9C0 48 00 00 78 */ b lbl_80391AD8
|
||||
lbl_80391A64:
|
||||
/* 80391A64 0038E9C4 2C 1F 00 04 */ cmpwi r31, 4
|
||||
/* 80391A68 0038E9C8 40 80 00 70 */ bge lbl_80391AD8
|
||||
/* 80391A6C 0038E9CC 48 00 00 1C */ b lbl_80391A88
|
||||
lbl_80391A70:
|
||||
/* 80391A70 0038E9D0 C8 22 D0 E0 */ lfd f1, lbl_805AEE00@sda21(r2)
|
||||
/* 80391A74 0038E9D4 48 00 01 44 */ b lbl_80391BB8
|
||||
lbl_80391A78:
|
||||
/* 80391A78 0038E9D8 C8 22 D0 E8 */ lfd f1, lbl_805AEE08@sda21(r2)
|
||||
/* 80391A7C 0038E9DC 48 00 01 3C */ b lbl_80391BB8
|
||||
lbl_80391A80:
|
||||
/* 80391A80 0038E9E0 C8 22 D0 F0 */ lfd f1, lbl_805AEE10@sda21(r2)
|
||||
/* 80391A84 0038E9E4 48 00 01 34 */ b lbl_80391BB8
|
||||
lbl_80391A88:
|
||||
/* 80391A88 0038E9E8 C8 22 D0 F8 */ lfd f1, lbl_805AEE18@sda21(r2)
|
||||
/* 80391A8C 0038E9EC 48 00 01 2C */ b lbl_80391BB8
|
||||
lbl_80391A90:
|
||||
/* 80391A90 0038E9F0 2C 1F 00 02 */ cmpwi r31, 2
|
||||
/* 80391A94 0038E9F4 41 82 00 34 */ beq lbl_80391AC8
|
||||
/* 80391A98 0038E9F8 40 80 00 14 */ bge lbl_80391AAC
|
||||
/* 80391A9C 0038E9FC 2C 1F 00 00 */ cmpwi r31, 0
|
||||
/* 80391AA0 0038EA00 41 82 00 18 */ beq lbl_80391AB8
|
||||
/* 80391AA4 0038EA04 40 80 00 1C */ bge lbl_80391AC0
|
||||
/* 80391AA8 0038EA08 48 00 00 30 */ b lbl_80391AD8
|
||||
lbl_80391AAC:
|
||||
/* 80391AAC 0038EA0C 2C 1F 00 04 */ cmpwi r31, 4
|
||||
/* 80391AB0 0038EA10 40 80 00 28 */ bge lbl_80391AD8
|
||||
/* 80391AB4 0038EA14 48 00 00 1C */ b lbl_80391AD0
|
||||
lbl_80391AB8:
|
||||
/* 80391AB8 0038EA18 C8 22 D1 00 */ lfd f1, lbl_805AEE20@sda21(r2)
|
||||
/* 80391ABC 0038EA1C 48 00 00 FC */ b lbl_80391BB8
|
||||
lbl_80391AC0:
|
||||
/* 80391AC0 0038EA20 C8 22 D1 08 */ lfd f1, lbl_805AEE28@sda21(r2)
|
||||
/* 80391AC4 0038EA24 48 00 00 F4 */ b lbl_80391BB8
|
||||
lbl_80391AC8:
|
||||
/* 80391AC8 0038EA28 C8 22 D0 C0 */ lfd f1, lbl_805AEDE0@sda21(r2)
|
||||
/* 80391ACC 0038EA2C 48 00 00 EC */ b lbl_80391BB8
|
||||
lbl_80391AD0:
|
||||
/* 80391AD0 0038EA30 C8 22 D0 C8 */ lfd f1, lbl_805AEDE8@sda21(r2)
|
||||
/* 80391AD4 0038EA34 48 00 00 E4 */ b lbl_80391BB8
|
||||
lbl_80391AD8:
|
||||
/* 80391AD8 0038EA38 3C 07 80 10 */ addis r0, r7, 0x8010
|
||||
/* 80391ADC 0038EA3C 28 00 00 00 */ cmplwi r0, 0
|
||||
/* 80391AE0 0038EA40 40 82 00 1C */ bne lbl_80391AFC
|
||||
/* 80391AE4 0038EA44 2C 05 00 00 */ cmpwi r5, 0
|
||||
/* 80391AE8 0038EA48 40 80 00 0C */ bge lbl_80391AF4
|
||||
/* 80391AEC 0038EA4C C8 22 D0 D0 */ lfd f1, lbl_805AEDF0@sda21(r2)
|
||||
/* 80391AF0 0038EA50 48 00 00 C8 */ b lbl_80391BB8
|
||||
lbl_80391AF4:
|
||||
/* 80391AF4 0038EA54 C8 22 D0 D8 */ lfd f1, lbl_805AEDF8@sda21(r2)
|
||||
/* 80391AF8 0038EA58 48 00 00 C0 */ b lbl_80391BB8
|
||||
lbl_80391AFC:
|
||||
/* 80391AFC 0038EA5C 7C 06 38 50 */ subf r0, r6, r7
|
||||
/* 80391B00 0038EA60 7C 00 A6 70 */ srawi r0, r0, 0x14
|
||||
/* 80391B04 0038EA64 2C 00 00 3C */ cmpwi r0, 0x3c
|
||||
/* 80391B08 0038EA68 40 81 00 10 */ ble lbl_80391B18
|
||||
/* 80391B0C 0038EA6C C8 02 D0 D8 */ lfd f0, lbl_805AEDF8@sda21(r2)
|
||||
/* 80391B10 0038EA70 D8 01 00 18 */ stfd f0, 0x18(r1)
|
||||
/* 80391B14 0038EA74 48 00 00 38 */ b lbl_80391B4C
|
||||
lbl_80391B18:
|
||||
/* 80391B18 0038EA78 2C 04 00 00 */ cmpwi r4, 0
|
||||
/* 80391B1C 0038EA7C 40 80 00 18 */ bge lbl_80391B34
|
||||
/* 80391B20 0038EA80 2C 00 FF C4 */ cmpwi r0, -60
|
||||
/* 80391B24 0038EA84 40 80 00 10 */ bge lbl_80391B34
|
||||
/* 80391B28 0038EA88 C8 02 D1 00 */ lfd f0, lbl_805AEE20@sda21(r2)
|
||||
/* 80391B2C 0038EA8C D8 01 00 18 */ stfd f0, 0x18(r1)
|
||||
/* 80391B30 0038EA90 48 00 00 1C */ b lbl_80391B4C
|
||||
lbl_80391B34:
|
||||
/* 80391B34 0038EA94 C8 21 00 08 */ lfd f1, 8(r1)
|
||||
/* 80391B38 0038EA98 C8 01 00 10 */ lfd f0, 0x10(r1)
|
||||
/* 80391B3C 0038EA9C FC 01 00 24 */ fdiv f0, f1, f0
|
||||
/* 80391B40 0038EAA0 FC 20 02 10 */ fabs f1, f0
|
||||
/* 80391B44 0038EAA4 48 00 26 85 */ bl atan
|
||||
/* 80391B48 0038EAA8 D8 21 00 18 */ stfd f1, 0x18(r1)
|
||||
lbl_80391B4C:
|
||||
/* 80391B4C 0038EAAC 2C 1F 00 01 */ cmpwi r31, 1
|
||||
/* 80391B50 0038EAB0 41 82 00 28 */ beq lbl_80391B78
|
||||
/* 80391B54 0038EAB4 40 80 00 10 */ bge lbl_80391B64
|
||||
/* 80391B58 0038EAB8 2C 1F 00 00 */ cmpwi r31, 0
|
||||
/* 80391B5C 0038EABC 40 80 00 14 */ bge lbl_80391B70
|
||||
/* 80391B60 0038EAC0 48 00 00 44 */ b lbl_80391BA4
|
||||
lbl_80391B64:
|
||||
/* 80391B64 0038EAC4 2C 1F 00 03 */ cmpwi r31, 3
|
||||
/* 80391B68 0038EAC8 40 80 00 3C */ bge lbl_80391BA4
|
||||
/* 80391B6C 0038EACC 48 00 00 20 */ b lbl_80391B8C
|
||||
lbl_80391B70:
|
||||
/* 80391B70 0038EAD0 C8 21 00 18 */ lfd f1, 0x18(r1)
|
||||
/* 80391B74 0038EAD4 48 00 00 44 */ b lbl_80391BB8
|
||||
lbl_80391B78:
|
||||
/* 80391B78 0038EAD8 80 01 00 18 */ lwz r0, 0x18(r1)
|
||||
/* 80391B7C 0038EADC 6C 00 80 00 */ xoris r0, r0, 0x8000
|
||||
/* 80391B80 0038EAE0 90 01 00 18 */ stw r0, 0x18(r1)
|
||||
/* 80391B84 0038EAE4 C8 21 00 18 */ lfd f1, 0x18(r1)
|
||||
/* 80391B88 0038EAE8 48 00 00 30 */ b lbl_80391BB8
|
||||
lbl_80391B8C:
|
||||
/* 80391B8C 0038EAEC C8 21 00 18 */ lfd f1, 0x18(r1)
|
||||
/* 80391B90 0038EAF0 C8 02 D1 10 */ lfd f0, lbl_805AEE30@sda21(r2)
|
||||
/* 80391B94 0038EAF4 C8 42 D0 C0 */ lfd f2, lbl_805AEDE0@sda21(r2)
|
||||
/* 80391B98 0038EAF8 FC 01 00 28 */ fsub f0, f1, f0
|
||||
/* 80391B9C 0038EAFC FC 22 00 28 */ fsub f1, f2, f0
|
||||
/* 80391BA0 0038EB00 48 00 00 18 */ b lbl_80391BB8
|
||||
lbl_80391BA4:
|
||||
/* 80391BA4 0038EB04 C8 41 00 18 */ lfd f2, 0x18(r1)
|
||||
/* 80391BA8 0038EB08 C8 22 D1 10 */ lfd f1, lbl_805AEE30@sda21(r2)
|
||||
/* 80391BAC 0038EB0C C8 02 D0 C0 */ lfd f0, lbl_805AEDE0@sda21(r2)
|
||||
/* 80391BB0 0038EB10 FC 22 08 28 */ fsub f1, f2, f1
|
||||
/* 80391BB4 0038EB14 FC 21 00 28 */ fsub f1, f1, f0
|
||||
lbl_80391BB8:
|
||||
/* 80391BB8 0038EB18 80 01 00 34 */ lwz r0, 0x34(r1)
|
||||
/* 80391BBC 0038EB1C 83 E1 00 2C */ lwz r31, 0x2c(r1)
|
||||
/* 80391BC0 0038EB20 7C 08 03 A6 */ mtlr r0
|
||||
/* 80391BC4 0038EB24 38 21 00 30 */ addi r1, r1, 0x30
|
||||
/* 80391BC8 0038EB28 4E 80 00 20 */ blr
|
|
@ -0,0 +1,154 @@
|
|||
.include "macros.inc"
|
||||
|
||||
.section .text, "ax"
|
||||
|
||||
.global __ieee754_exp
|
||||
__ieee754_exp:
|
||||
/* 80391BCC 0038EB2C 94 21 FF D0 */ stwu r1, -0x30(r1)
|
||||
/* 80391BD0 0038EB30 3C 60 40 86 */ lis r3, 0x40862E42@ha
|
||||
/* 80391BD4 0038EB34 3C 80 80 3E */ lis r4, lbl_803D8720@ha
|
||||
/* 80391BD8 0038EB38 D8 21 00 08 */ stfd f1, 8(r1)
|
||||
/* 80391BDC 0038EB3C 38 03 2E 42 */ addi r0, r3, 0x40862E42@l
|
||||
/* 80391BE0 0038EB40 38 84 87 20 */ addi r4, r4, lbl_803D8720@l
|
||||
/* 80391BE4 0038EB44 81 01 00 08 */ lwz r8, 8(r1)
|
||||
/* 80391BE8 0038EB48 55 05 00 7E */ clrlwi r5, r8, 1
|
||||
/* 80391BEC 0038EB4C 55 07 0F FE */ srwi r7, r8, 0x1f
|
||||
/* 80391BF0 0038EB50 7C 05 00 40 */ cmplw r5, r0
|
||||
/* 80391BF4 0038EB54 41 80 00 64 */ blt lbl_80391C58
|
||||
/* 80391BF8 0038EB58 3C 00 7F F0 */ lis r0, 0x7ff0
|
||||
/* 80391BFC 0038EB5C 7C 05 00 40 */ cmplw r5, r0
|
||||
/* 80391C00 0038EB60 41 80 00 30 */ blt lbl_80391C30
|
||||
/* 80391C04 0038EB64 80 01 00 0C */ lwz r0, 0xc(r1)
|
||||
/* 80391C08 0038EB68 55 03 03 3E */ clrlwi r3, r8, 0xc
|
||||
/* 80391C0C 0038EB6C 7C 60 03 79 */ or. r0, r3, r0
|
||||
/* 80391C10 0038EB70 41 82 00 0C */ beq lbl_80391C1C
|
||||
/* 80391C14 0038EB74 FC 21 08 2A */ fadd f1, f1, f1
|
||||
/* 80391C18 0038EB78 48 00 01 C8 */ b lbl_80391DE0
|
||||
lbl_80391C1C:
|
||||
/* 80391C1C 0038EB7C 2C 07 00 00 */ cmpwi r7, 0
|
||||
/* 80391C20 0038EB80 40 82 00 08 */ bne lbl_80391C28
|
||||
/* 80391C24 0038EB84 48 00 01 BC */ b lbl_80391DE0
|
||||
lbl_80391C28:
|
||||
/* 80391C28 0038EB88 C8 22 D1 18 */ lfd f1, lbl_805AEE38@sda21(r2)
|
||||
/* 80391C2C 0038EB8C 48 00 01 B4 */ b lbl_80391DE0
|
||||
lbl_80391C30:
|
||||
/* 80391C30 0038EB90 C8 02 D1 20 */ lfd f0, lbl_805AEE40@sda21(r2)
|
||||
/* 80391C34 0038EB94 FC 01 00 40 */ fcmpo cr0, f1, f0
|
||||
/* 80391C38 0038EB98 40 81 00 0C */ ble lbl_80391C44
|
||||
/* 80391C3C 0038EB9C C8 22 D1 28 */ lfd f1, lbl_805AEE48@sda21(r2)
|
||||
/* 80391C40 0038EBA0 48 00 01 A0 */ b lbl_80391DE0
|
||||
lbl_80391C44:
|
||||
/* 80391C44 0038EBA4 C8 02 D1 30 */ lfd f0, lbl_805AEE50@sda21(r2)
|
||||
/* 80391C48 0038EBA8 FC 01 00 40 */ fcmpo cr0, f1, f0
|
||||
/* 80391C4C 0038EBAC 40 80 00 0C */ bge lbl_80391C58
|
||||
/* 80391C50 0038EBB0 C8 22 D1 18 */ lfd f1, lbl_805AEE38@sda21(r2)
|
||||
/* 80391C54 0038EBB4 48 00 01 8C */ b lbl_80391DE0
|
||||
lbl_80391C58:
|
||||
/* 80391C58 0038EBB8 3C 60 3F D6 */ lis r3, 0x3FD62E42@ha
|
||||
/* 80391C5C 0038EBBC 38 03 2E 42 */ addi r0, r3, 0x3FD62E42@l
|
||||
/* 80391C60 0038EBC0 7C 05 00 40 */ cmplw r5, r0
|
||||
/* 80391C64 0038EBC4 40 81 00 90 */ ble lbl_80391CF4
|
||||
/* 80391C68 0038EBC8 3C 60 3F F1 */ lis r3, 0x3FF0A2B2@ha
|
||||
/* 80391C6C 0038EBCC 38 03 A2 B2 */ addi r0, r3, 0x3FF0A2B2@l
|
||||
/* 80391C70 0038EBD0 7C 05 00 40 */ cmplw r5, r0
|
||||
/* 80391C74 0038EBD4 40 80 00 28 */ bge lbl_80391C9C
|
||||
/* 80391C78 0038EBD8 54 E3 18 38 */ slwi r3, r7, 3
|
||||
/* 80391C7C 0038EBDC 20 07 00 01 */ subfic r0, r7, 1
|
||||
/* 80391C80 0038EBE0 7C 64 1A 14 */ add r3, r4, r3
|
||||
/* 80391C84 0038EBE4 C8 21 00 08 */ lfd f1, 8(r1)
|
||||
/* 80391C88 0038EBE8 C8 03 00 10 */ lfd f0, 0x10(r3)
|
||||
/* 80391C8C 0038EBEC 7C C7 00 50 */ subf r6, r7, r0
|
||||
/* 80391C90 0038EBF0 C9 03 00 20 */ lfd f8, 0x20(r3)
|
||||
/* 80391C94 0038EBF4 FC E1 00 28 */ fsub f7, f1, f0
|
||||
/* 80391C98 0038EBF8 48 00 00 50 */ b lbl_80391CE8
|
||||
lbl_80391C9C:
|
||||
/* 80391C9C 0038EBFC 54 E3 18 38 */ slwi r3, r7, 3
|
||||
/* 80391CA0 0038EC00 3C 00 43 30 */ lis r0, 0x4330
|
||||
/* 80391CA4 0038EC04 C8 22 D1 38 */ lfd f1, lbl_805AEE58@sda21(r2)
|
||||
/* 80391CA8 0038EC08 C8 81 00 08 */ lfd f4, 8(r1)
|
||||
/* 80391CAC 0038EC0C 7C 04 1C AE */ lfdx f0, r4, r3
|
||||
/* 80391CB0 0038EC10 90 01 00 20 */ stw r0, 0x20(r1)
|
||||
/* 80391CB4 0038EC14 FC 41 01 3A */ fmadd f2, f1, f4, f0
|
||||
/* 80391CB8 0038EC18 C8 62 D1 88 */ lfd f3, lbl_805AEEA8@sda21(r2)
|
||||
/* 80391CBC 0038EC1C C8 24 00 10 */ lfd f1, 0x10(r4)
|
||||
/* 80391CC0 0038EC20 C8 04 00 20 */ lfd f0, 0x20(r4)
|
||||
/* 80391CC4 0038EC24 FC 40 10 1E */ fctiwz f2, f2
|
||||
/* 80391CC8 0038EC28 D8 41 00 18 */ stfd f2, 0x18(r1)
|
||||
/* 80391CCC 0038EC2C 80 C1 00 1C */ lwz r6, 0x1c(r1)
|
||||
/* 80391CD0 0038EC30 6C C0 80 00 */ xoris r0, r6, 0x8000
|
||||
/* 80391CD4 0038EC34 90 01 00 24 */ stw r0, 0x24(r1)
|
||||
/* 80391CD8 0038EC38 C8 41 00 20 */ lfd f2, 0x20(r1)
|
||||
/* 80391CDC 0038EC3C FC 42 18 28 */ fsub f2, f2, f3
|
||||
/* 80391CE0 0038EC40 FC E2 20 7C */ fnmsub f7, f2, f1, f4
|
||||
/* 80391CE4 0038EC44 FD 02 00 32 */ fmul f8, f2, f0
|
||||
lbl_80391CE8:
|
||||
/* 80391CE8 0038EC48 FC 07 40 28 */ fsub f0, f7, f8
|
||||
/* 80391CEC 0038EC4C D8 01 00 08 */ stfd f0, 8(r1)
|
||||
/* 80391CF0 0038EC50 48 00 00 34 */ b lbl_80391D24
|
||||
lbl_80391CF4:
|
||||
/* 80391CF4 0038EC54 3C 00 3E 30 */ lis r0, 0x3e30
|
||||
/* 80391CF8 0038EC58 7C 05 00 40 */ cmplw r5, r0
|
||||
/* 80391CFC 0038EC5C 40 80 00 24 */ bge lbl_80391D20
|
||||
/* 80391D00 0038EC60 C8 22 D1 40 */ lfd f1, lbl_805AEE60@sda21(r2)
|
||||
/* 80391D04 0038EC64 C8 41 00 08 */ lfd f2, 8(r1)
|
||||
/* 80391D08 0038EC68 C8 02 D1 48 */ lfd f0, lbl_805AEE68@sda21(r2)
|
||||
/* 80391D0C 0038EC6C FC 21 10 2A */ fadd f1, f1, f2
|
||||
/* 80391D10 0038EC70 FC 01 00 40 */ fcmpo cr0, f1, f0
|
||||
/* 80391D14 0038EC74 40 81 00 10 */ ble lbl_80391D24
|
||||
/* 80391D18 0038EC78 FC 20 10 2A */ fadd f1, f0, f2
|
||||
/* 80391D1C 0038EC7C 48 00 00 C4 */ b lbl_80391DE0
|
||||
lbl_80391D20:
|
||||
/* 80391D20 0038EC80 38 C0 00 00 */ li r6, 0
|
||||
lbl_80391D24:
|
||||
/* 80391D24 0038EC84 C8 A1 00 08 */ lfd f5, 8(r1)
|
||||
/* 80391D28 0038EC88 2C 06 00 00 */ cmpwi r6, 0
|
||||
/* 80391D2C 0038EC8C C8 82 D1 70 */ lfd f4, lbl_805AEE90@sda21(r2)
|
||||
/* 80391D30 0038EC90 FC C5 01 72 */ fmul f6, f5, f5
|
||||
/* 80391D34 0038EC94 C8 62 D1 68 */ lfd f3, lbl_805AEE88@sda21(r2)
|
||||
/* 80391D38 0038EC98 C8 42 D1 60 */ lfd f2, lbl_805AEE80@sda21(r2)
|
||||
/* 80391D3C 0038EC9C C8 22 D1 58 */ lfd f1, lbl_805AEE78@sda21(r2)
|
||||
/* 80391D40 0038ECA0 C8 02 D1 50 */ lfd f0, lbl_805AEE70@sda21(r2)
|
||||
/* 80391D44 0038ECA4 FC 64 19 BA */ fmadd f3, f4, f6, f3
|
||||
/* 80391D48 0038ECA8 FC 46 10 FA */ fmadd f2, f6, f3, f2
|
||||
/* 80391D4C 0038ECAC FC 26 08 BA */ fmadd f1, f6, f2, f1
|
||||
/* 80391D50 0038ECB0 FC 06 00 7A */ fmadd f0, f6, f1, f0
|
||||
/* 80391D54 0038ECB4 FC 66 28 3C */ fnmsub f3, f6, f0, f5
|
||||
/* 80391D58 0038ECB8 40 82 00 24 */ bne lbl_80391D7C
|
||||
/* 80391D5C 0038ECBC C8 02 D1 78 */ lfd f0, lbl_805AEE98@sda21(r2)
|
||||
/* 80391D60 0038ECC0 FC 25 00 F2 */ fmul f1, f5, f3
|
||||
/* 80391D64 0038ECC4 C8 42 D1 48 */ lfd f2, lbl_805AEE68@sda21(r2)
|
||||
/* 80391D68 0038ECC8 FC 03 00 28 */ fsub f0, f3, f0
|
||||
/* 80391D6C 0038ECCC FC 01 00 24 */ fdiv f0, f1, f0
|
||||
/* 80391D70 0038ECD0 FC 00 28 28 */ fsub f0, f0, f5
|
||||
/* 80391D74 0038ECD4 FC 22 00 28 */ fsub f1, f2, f0
|
||||
/* 80391D78 0038ECD8 48 00 00 68 */ b lbl_80391DE0
|
||||
lbl_80391D7C:
|
||||
/* 80391D7C 0038ECDC C8 02 D1 78 */ lfd f0, lbl_805AEE98@sda21(r2)
|
||||
/* 80391D80 0038ECE0 FC 25 00 F2 */ fmul f1, f5, f3
|
||||
/* 80391D84 0038ECE4 C8 42 D1 48 */ lfd f2, lbl_805AEE68@sda21(r2)
|
||||
/* 80391D88 0038ECE8 2C 06 FC 03 */ cmpwi r6, -1021
|
||||
/* 80391D8C 0038ECEC FC 00 18 28 */ fsub f0, f0, f3
|
||||
/* 80391D90 0038ECF0 FC 01 00 24 */ fdiv f0, f1, f0
|
||||
/* 80391D94 0038ECF4 FC 08 00 28 */ fsub f0, f8, f0
|
||||
/* 80391D98 0038ECF8 FC 00 38 28 */ fsub f0, f0, f7
|
||||
/* 80391D9C 0038ECFC FC 02 00 28 */ fsub f0, f2, f0
|
||||
/* 80391DA0 0038ED00 D8 01 00 10 */ stfd f0, 0x10(r1)
|
||||
/* 80391DA4 0038ED04 41 80 00 1C */ blt lbl_80391DC0
|
||||
/* 80391DA8 0038ED08 80 61 00 10 */ lwz r3, 0x10(r1)
|
||||
/* 80391DAC 0038ED0C 54 C0 A0 16 */ slwi r0, r6, 0x14
|
||||
/* 80391DB0 0038ED10 7C 03 02 14 */ add r0, r3, r0
|
||||
/* 80391DB4 0038ED14 90 01 00 10 */ stw r0, 0x10(r1)
|
||||
/* 80391DB8 0038ED18 C8 21 00 10 */ lfd f1, 0x10(r1)
|
||||
/* 80391DBC 0038ED1C 48 00 00 24 */ b lbl_80391DE0
|
||||
lbl_80391DC0:
|
||||
/* 80391DC0 0038ED20 38 06 03 E8 */ addi r0, r6, 0x3e8
|
||||
/* 80391DC4 0038ED24 80 61 00 10 */ lwz r3, 0x10(r1)
|
||||
/* 80391DC8 0038ED28 54 00 A0 16 */ slwi r0, r0, 0x14
|
||||
/* 80391DCC 0038ED2C C8 22 D1 80 */ lfd f1, lbl_805AEEA0@sda21(r2)
|
||||
/* 80391DD0 0038ED30 7C 03 02 14 */ add r0, r3, r0
|
||||
/* 80391DD4 0038ED34 90 01 00 10 */ stw r0, 0x10(r1)
|
||||
/* 80391DD8 0038ED38 C8 01 00 10 */ lfd f0, 0x10(r1)
|
||||
/* 80391DDC 0038ED3C FC 21 00 32 */ fmul f1, f1, f0
|
||||
lbl_80391DE0:
|
||||
/* 80391DE0 0038ED40 38 21 00 30 */ addi r1, r1, 0x30
|
||||
/* 80391DE4 0038ED44 4E 80 00 20 */ blr
|
|
@ -0,0 +1,255 @@
|
|||
.include "macros.inc"
|
||||
|
||||
.section .text, "ax"
|
||||
|
||||
.global __ieee754_fmod
|
||||
__ieee754_fmod:
|
||||
/* 80391DE8 0038ED48 94 21 FF E0 */ stwu r1, -0x20(r1)
|
||||
/* 80391DEC 0038ED4C D8 41 00 10 */ stfd f2, 0x10(r1)
|
||||
/* 80391DF0 0038ED50 D8 21 00 08 */ stfd f1, 8(r1)
|
||||
/* 80391DF4 0038ED54 81 41 00 10 */ lwz r10, 0x10(r1)
|
||||
/* 80391DF8 0038ED58 80 C1 00 08 */ lwz r6, 8(r1)
|
||||
/* 80391DFC 0038ED5C 80 A1 00 14 */ lwz r5, 0x14(r1)
|
||||
/* 80391E00 0038ED60 55 48 00 7E */ clrlwi r8, r10, 1
|
||||
/* 80391E04 0038ED64 54 C0 00 00 */ rlwinm r0, r6, 0, 0, 0
|
||||
/* 80391E08 0038ED68 80 81 00 0C */ lwz r4, 0xc(r1)
|
||||
/* 80391E0C 0038ED6C 7D 03 2B 79 */ or. r3, r8, r5
|
||||
/* 80391E10 0038ED70 7C C7 02 78 */ xor r7, r6, r0
|
||||
/* 80391E14 0038ED74 41 82 00 28 */ beq lbl_80391E3C
|
||||
/* 80391E18 0038ED78 3C C0 7F F0 */ lis r6, 0x7ff0
|
||||
/* 80391E1C 0038ED7C 7C 07 30 00 */ cmpw r7, r6
|
||||
/* 80391E20 0038ED80 40 80 00 1C */ bge lbl_80391E3C
|
||||
/* 80391E24 0038ED84 7C 65 00 D0 */ neg r3, r5
|
||||
/* 80391E28 0038ED88 7C A3 1B 78 */ or r3, r5, r3
|
||||
/* 80391E2C 0038ED8C 54 63 0F FE */ srwi r3, r3, 0x1f
|
||||
/* 80391E30 0038ED90 7D 03 1B 78 */ or r3, r8, r3
|
||||
/* 80391E34 0038ED94 7C 03 30 40 */ cmplw r3, r6
|
||||
/* 80391E38 0038ED98 40 81 00 18 */ ble lbl_80391E50
|
||||
lbl_80391E3C:
|
||||
/* 80391E3C 0038ED9C C8 21 00 08 */ lfd f1, 8(r1)
|
||||
/* 80391E40 0038EDA0 C8 01 00 10 */ lfd f0, 0x10(r1)
|
||||
/* 80391E44 0038EDA4 FC 01 00 32 */ fmul f0, f1, f0
|
||||
/* 80391E48 0038EDA8 FC 20 00 24 */ fdiv f1, f0, f0
|
||||
/* 80391E4C 0038EDAC 48 00 02 D0 */ b lbl_8039211C
|
||||
lbl_80391E50:
|
||||
/* 80391E50 0038EDB0 7C 07 40 00 */ cmpw r7, r8
|
||||
/* 80391E54 0038EDB4 41 81 00 30 */ bgt lbl_80391E84
|
||||
/* 80391E58 0038EDB8 41 80 00 0C */ blt lbl_80391E64
|
||||
/* 80391E5C 0038EDBC 7C 04 28 40 */ cmplw r4, r5
|
||||
/* 80391E60 0038EDC0 40 80 00 0C */ bge lbl_80391E6C
|
||||
lbl_80391E64:
|
||||
/* 80391E64 0038EDC4 C8 21 00 08 */ lfd f1, 8(r1)
|
||||
/* 80391E68 0038EDC8 48 00 02 B4 */ b lbl_8039211C
|
||||
lbl_80391E6C:
|
||||
/* 80391E6C 0038EDCC 40 82 00 18 */ bne lbl_80391E84
|
||||
/* 80391E70 0038EDD0 3C 60 80 3E */ lis r3, lbl_803D8750@ha
|
||||
/* 80391E74 0038EDD4 54 00 27 38 */ rlwinm r0, r0, 4, 0x1c, 0x1c
|
||||
/* 80391E78 0038EDD8 38 63 87 50 */ addi r3, r3, lbl_803D8750@l
|
||||
/* 80391E7C 0038EDDC 7C 23 04 AE */ lfdx f1, r3, r0
|
||||
/* 80391E80 0038EDE0 48 00 02 9C */ b lbl_8039211C
|
||||
lbl_80391E84:
|
||||
/* 80391E84 0038EDE4 3C 60 00 10 */ lis r3, 0x10
|
||||
/* 80391E88 0038EDE8 7C 07 18 00 */ cmpw r7, r3
|
||||
/* 80391E8C 0038EDEC 40 80 00 4C */ bge lbl_80391ED8
|
||||
/* 80391E90 0038EDF0 2C 07 00 00 */ cmpwi r7, 0
|
||||
/* 80391E94 0038EDF4 40 82 00 24 */ bne lbl_80391EB8
|
||||
/* 80391E98 0038EDF8 7C 83 23 78 */ mr r3, r4
|
||||
/* 80391E9C 0038EDFC 39 60 FB ED */ li r11, -1043
|
||||
/* 80391EA0 0038EE00 48 00 00 0C */ b lbl_80391EAC
|
||||
lbl_80391EA4:
|
||||
/* 80391EA4 0038EE04 54 63 08 3C */ slwi r3, r3, 1
|
||||
/* 80391EA8 0038EE08 39 6B FF FF */ addi r11, r11, -1
|
||||
lbl_80391EAC:
|
||||
/* 80391EAC 0038EE0C 2C 03 00 00 */ cmpwi r3, 0
|
||||
/* 80391EB0 0038EE10 41 81 FF F4 */ bgt lbl_80391EA4
|
||||
/* 80391EB4 0038EE14 48 00 00 2C */ b lbl_80391EE0
|
||||
lbl_80391EB8:
|
||||
/* 80391EB8 0038EE18 54 E3 58 28 */ slwi r3, r7, 0xb
|
||||
/* 80391EBC 0038EE1C 39 60 FC 02 */ li r11, -1022
|
||||
/* 80391EC0 0038EE20 48 00 00 0C */ b lbl_80391ECC
|
||||
lbl_80391EC4:
|
||||
/* 80391EC4 0038EE24 54 63 08 3C */ slwi r3, r3, 1
|
||||
/* 80391EC8 0038EE28 39 6B FF FF */ addi r11, r11, -1
|
||||
lbl_80391ECC:
|
||||
/* 80391ECC 0038EE2C 2C 03 00 00 */ cmpwi r3, 0
|
||||
/* 80391ED0 0038EE30 41 81 FF F4 */ bgt lbl_80391EC4
|
||||
/* 80391ED4 0038EE34 48 00 00 0C */ b lbl_80391EE0
|
||||
lbl_80391ED8:
|
||||
/* 80391ED8 0038EE38 7C E3 A6 70 */ srawi r3, r7, 0x14
|
||||
/* 80391EDC 0038EE3C 39 63 FC 01 */ addi r11, r3, -1023
|
||||
lbl_80391EE0:
|
||||
/* 80391EE0 0038EE40 3C 60 00 10 */ lis r3, 0x10
|
||||
/* 80391EE4 0038EE44 7C 08 18 00 */ cmpw r8, r3
|
||||
/* 80391EE8 0038EE48 40 80 00 4C */ bge lbl_80391F34
|
||||
/* 80391EEC 0038EE4C 2C 08 00 00 */ cmpwi r8, 0
|
||||
/* 80391EF0 0038EE50 40 82 00 24 */ bne lbl_80391F14
|
||||
/* 80391EF4 0038EE54 7C A6 2B 78 */ mr r6, r5
|
||||
/* 80391EF8 0038EE58 38 60 FB ED */ li r3, -1043
|
||||
/* 80391EFC 0038EE5C 48 00 00 0C */ b lbl_80391F08
|
||||
lbl_80391F00:
|
||||
/* 80391F00 0038EE60 54 C6 08 3C */ slwi r6, r6, 1
|
||||
/* 80391F04 0038EE64 38 63 FF FF */ addi r3, r3, -1
|
||||
lbl_80391F08:
|
||||
/* 80391F08 0038EE68 2C 06 00 00 */ cmpwi r6, 0
|
||||
/* 80391F0C 0038EE6C 41 81 FF F4 */ bgt lbl_80391F00
|
||||
/* 80391F10 0038EE70 48 00 00 2C */ b lbl_80391F3C
|
||||
lbl_80391F14:
|
||||
/* 80391F14 0038EE74 55 06 58 28 */ slwi r6, r8, 0xb
|
||||
/* 80391F18 0038EE78 38 60 FC 02 */ li r3, -1022
|
||||
/* 80391F1C 0038EE7C 48 00 00 0C */ b lbl_80391F28
|
||||
lbl_80391F20:
|
||||
/* 80391F20 0038EE80 54 C6 08 3C */ slwi r6, r6, 1
|
||||
/* 80391F24 0038EE84 38 63 FF FF */ addi r3, r3, -1
|
||||
lbl_80391F28:
|
||||
/* 80391F28 0038EE88 2C 06 00 00 */ cmpwi r6, 0
|
||||
/* 80391F2C 0038EE8C 41 81 FF F4 */ bgt lbl_80391F20
|
||||
/* 80391F30 0038EE90 48 00 00 0C */ b lbl_80391F3C
|
||||
lbl_80391F34:
|
||||
/* 80391F34 0038EE94 7D 03 A6 70 */ srawi r3, r8, 0x14
|
||||
/* 80391F38 0038EE98 38 63 FC 01 */ addi r3, r3, -1023
|
||||
lbl_80391F3C:
|
||||
/* 80391F3C 0038EE9C 2C 0B FC 02 */ cmpwi r11, -1022
|
||||
/* 80391F40 0038EEA0 41 80 00 10 */ blt lbl_80391F50
|
||||
/* 80391F44 0038EEA4 54 E6 03 3E */ clrlwi r6, r7, 0xc
|
||||
/* 80391F48 0038EEA8 64 C9 00 10 */ oris r9, r6, 0x10
|
||||
/* 80391F4C 0038EEAC 48 00 00 34 */ b lbl_80391F80
|
||||
lbl_80391F50:
|
||||
/* 80391F50 0038EEB0 21 2B FC 02 */ subfic r9, r11, -1022
|
||||
/* 80391F54 0038EEB4 2C 09 00 1F */ cmpwi r9, 0x1f
|
||||
/* 80391F58 0038EEB8 41 81 00 1C */ bgt lbl_80391F74
|
||||
/* 80391F5C 0038EEBC 20 C9 00 20 */ subfic r6, r9, 0x20
|
||||
/* 80391F60 0038EEC0 7C E7 48 30 */ slw r7, r7, r9
|
||||
/* 80391F64 0038EEC4 7C 86 34 30 */ srw r6, r4, r6
|
||||
/* 80391F68 0038EEC8 7C 84 48 30 */ slw r4, r4, r9
|
||||
/* 80391F6C 0038EECC 7C E9 33 78 */ or r9, r7, r6
|
||||
/* 80391F70 0038EED0 48 00 00 10 */ b lbl_80391F80
|
||||
lbl_80391F74:
|
||||
/* 80391F74 0038EED4 38 C9 FF E0 */ addi r6, r9, -32
|
||||
/* 80391F78 0038EED8 7C 89 30 30 */ slw r9, r4, r6
|
||||
/* 80391F7C 0038EEDC 38 80 00 00 */ li r4, 0
|
||||
lbl_80391F80:
|
||||
/* 80391F80 0038EEE0 2C 03 FC 02 */ cmpwi r3, -1022
|
||||
/* 80391F84 0038EEE4 41 80 00 10 */ blt lbl_80391F94
|
||||
/* 80391F88 0038EEE8 55 46 03 3E */ clrlwi r6, r10, 0xc
|
||||
/* 80391F8C 0038EEEC 64 C7 00 10 */ oris r7, r6, 0x10
|
||||
/* 80391F90 0038EEF0 48 00 00 34 */ b lbl_80391FC4
|
||||
lbl_80391F94:
|
||||
/* 80391F94 0038EEF4 21 43 FC 02 */ subfic r10, r3, -1022
|
||||
/* 80391F98 0038EEF8 2C 0A 00 1F */ cmpwi r10, 0x1f
|
||||
/* 80391F9C 0038EEFC 41 81 00 1C */ bgt lbl_80391FB8
|
||||
/* 80391FA0 0038EF00 20 CA 00 20 */ subfic r6, r10, 0x20
|
||||
/* 80391FA4 0038EF04 7D 07 50 30 */ slw r7, r8, r10
|
||||
/* 80391FA8 0038EF08 7C A6 34 30 */ srw r6, r5, r6
|
||||
/* 80391FAC 0038EF0C 7C A5 50 30 */ slw r5, r5, r10
|
||||
/* 80391FB0 0038EF10 7C E7 33 78 */ or r7, r7, r6
|
||||
/* 80391FB4 0038EF14 48 00 00 10 */ b lbl_80391FC4
|
||||
lbl_80391FB8:
|
||||
/* 80391FB8 0038EF18 38 CA FF E0 */ addi r6, r10, -32
|
||||
/* 80391FBC 0038EF1C 7C A7 30 30 */ slw r7, r5, r6
|
||||
/* 80391FC0 0038EF20 38 A0 00 00 */ li r5, 0
|
||||
lbl_80391FC4:
|
||||
/* 80391FC4 0038EF24 7C C3 58 51 */ subf. r6, r3, r11
|
||||
/* 80391FC8 0038EF28 7C C9 03 A6 */ mtctr r6
|
||||
/* 80391FCC 0038EF2C 41 82 00 64 */ beq lbl_80392030
|
||||
lbl_80391FD0:
|
||||
/* 80391FD0 0038EF30 7C 04 28 40 */ cmplw r4, r5
|
||||
/* 80391FD4 0038EF34 7D 07 48 50 */ subf r8, r7, r9
|
||||
/* 80391FD8 0038EF38 7D 45 20 50 */ subf r10, r5, r4
|
||||
/* 80391FDC 0038EF3C 40 80 00 08 */ bge lbl_80391FE4
|
||||
/* 80391FE0 0038EF40 39 08 FF FF */ addi r8, r8, -1
|
||||
lbl_80391FE4:
|
||||
/* 80391FE4 0038EF44 2C 08 00 00 */ cmpwi r8, 0
|
||||
/* 80391FE8 0038EF48 40 80 00 18 */ bge lbl_80392000
|
||||
/* 80391FEC 0038EF4C 54 86 0F FE */ srwi r6, r4, 0x1f
|
||||
/* 80391FF0 0038EF50 7C 84 22 14 */ add r4, r4, r4
|
||||
/* 80391FF4 0038EF54 7C C9 32 14 */ add r6, r9, r6
|
||||
/* 80391FF8 0038EF58 7D 29 32 14 */ add r9, r9, r6
|
||||
/* 80391FFC 0038EF5C 48 00 00 30 */ b lbl_8039202C
|
||||
lbl_80392000:
|
||||
/* 80392000 0038EF60 7D 04 53 79 */ or. r4, r8, r10
|
||||
/* 80392004 0038EF64 40 82 00 18 */ bne lbl_8039201C
|
||||
/* 80392008 0038EF68 3C 60 80 3E */ lis r3, lbl_803D8750@ha
|
||||
/* 8039200C 0038EF6C 54 00 27 38 */ rlwinm r0, r0, 4, 0x1c, 0x1c
|
||||
/* 80392010 0038EF70 38 63 87 50 */ addi r3, r3, lbl_803D8750@l
|
||||
/* 80392014 0038EF74 7C 23 04 AE */ lfdx f1, r3, r0
|
||||
/* 80392018 0038EF78 48 00 01 04 */ b lbl_8039211C
|
||||
lbl_8039201C:
|
||||
/* 8039201C 0038EF7C 55 46 0F FE */ srwi r6, r10, 0x1f
|
||||
/* 80392020 0038EF80 7C 8A 52 14 */ add r4, r10, r10
|
||||
/* 80392024 0038EF84 7D 28 32 14 */ add r9, r8, r6
|
||||
/* 80392028 0038EF88 7D 28 4A 14 */ add r9, r8, r9
|
||||
lbl_8039202C:
|
||||
/* 8039202C 0038EF8C 42 00 FF A4 */ bdnz lbl_80391FD0
|
||||
lbl_80392030:
|
||||
/* 80392030 0038EF90 7C 04 28 40 */ cmplw r4, r5
|
||||
/* 80392034 0038EF94 7C C7 48 50 */ subf r6, r7, r9
|
||||
/* 80392038 0038EF98 7C A5 20 50 */ subf r5, r5, r4
|
||||
/* 8039203C 0038EF9C 40 80 00 08 */ bge lbl_80392044
|
||||
/* 80392040 0038EFA0 38 C6 FF FF */ addi r6, r6, -1
|
||||
lbl_80392044:
|
||||
/* 80392044 0038EFA4 2C 06 00 00 */ cmpwi r6, 0
|
||||
/* 80392048 0038EFA8 41 80 00 0C */ blt lbl_80392054
|
||||
/* 8039204C 0038EFAC 7C C9 33 78 */ mr r9, r6
|
||||
/* 80392050 0038EFB0 7C A4 2B 78 */ mr r4, r5
|
||||
lbl_80392054:
|
||||
/* 80392054 0038EFB4 7D 25 23 79 */ or. r5, r9, r4
|
||||
/* 80392058 0038EFB8 40 82 00 18 */ bne lbl_80392070
|
||||
/* 8039205C 0038EFBC 3C 60 80 3E */ lis r3, lbl_803D8750@ha
|
||||
/* 80392060 0038EFC0 54 00 27 38 */ rlwinm r0, r0, 4, 0x1c, 0x1c
|
||||
/* 80392064 0038EFC4 38 63 87 50 */ addi r3, r3, lbl_803D8750@l
|
||||
/* 80392068 0038EFC8 7C 23 04 AE */ lfdx f1, r3, r0
|
||||
/* 8039206C 0038EFCC 48 00 00 B0 */ b lbl_8039211C
|
||||
lbl_80392070:
|
||||
/* 80392070 0038EFD0 3C A0 00 10 */ lis r5, 0x10
|
||||
/* 80392074 0038EFD4 48 00 00 18 */ b lbl_8039208C
|
||||
lbl_80392078:
|
||||
/* 80392078 0038EFD8 54 86 0F FE */ srwi r6, r4, 0x1f
|
||||
/* 8039207C 0038EFDC 7C 84 22 14 */ add r4, r4, r4
|
||||
/* 80392080 0038EFE0 7C C9 32 14 */ add r6, r9, r6
|
||||
/* 80392084 0038EFE4 38 63 FF FF */ addi r3, r3, -1
|
||||
/* 80392088 0038EFE8 7D 29 32 14 */ add r9, r9, r6
|
||||
lbl_8039208C:
|
||||
/* 8039208C 0038EFEC 7C 09 28 00 */ cmpw r9, r5
|
||||
/* 80392090 0038EFF0 41 80 FF E8 */ blt lbl_80392078
|
||||
/* 80392094 0038EFF4 2C 03 FC 02 */ cmpwi r3, -1022
|
||||
/* 80392098 0038EFF8 41 80 00 24 */ blt lbl_803920BC
|
||||
/* 8039209C 0038EFFC 38 63 03 FF */ addi r3, r3, 0x3ff
|
||||
/* 803920A0 0038F000 3C A9 FF F0 */ addis r5, r9, 0xfff0
|
||||
/* 803920A4 0038F004 54 63 A0 16 */ slwi r3, r3, 0x14
|
||||
/* 803920A8 0038F008 90 81 00 0C */ stw r4, 0xc(r1)
|
||||
/* 803920AC 0038F00C 7C A3 1B 78 */ or r3, r5, r3
|
||||
/* 803920B0 0038F010 7C 60 03 78 */ or r0, r3, r0
|
||||
/* 803920B4 0038F014 90 01 00 08 */ stw r0, 8(r1)
|
||||
/* 803920B8 0038F018 48 00 00 60 */ b lbl_80392118
|
||||
lbl_803920BC:
|
||||
/* 803920BC 0038F01C 20 C3 FC 02 */ subfic r6, r3, -1022
|
||||
/* 803920C0 0038F020 2C 06 00 14 */ cmpwi r6, 0x14
|
||||
/* 803920C4 0038F024 41 81 00 1C */ bgt lbl_803920E0
|
||||
/* 803920C8 0038F028 20 66 00 20 */ subfic r3, r6, 0x20
|
||||
/* 803920CC 0038F02C 7C 84 34 30 */ srw r4, r4, r6
|
||||
/* 803920D0 0038F030 7D 23 18 30 */ slw r3, r9, r3
|
||||
/* 803920D4 0038F034 7D 29 36 30 */ sraw r9, r9, r6
|
||||
/* 803920D8 0038F038 7C 83 1B 78 */ or r3, r4, r3
|
||||
/* 803920DC 0038F03C 48 00 00 30 */ b lbl_8039210C
|
||||
lbl_803920E0:
|
||||
/* 803920E0 0038F040 2C 06 00 1F */ cmpwi r6, 0x1f
|
||||
/* 803920E4 0038F044 41 81 00 1C */ bgt lbl_80392100
|
||||
/* 803920E8 0038F048 20 A6 00 20 */ subfic r5, r6, 0x20
|
||||
/* 803920EC 0038F04C 7C 83 34 30 */ srw r3, r4, r6
|
||||
/* 803920F0 0038F050 7D 24 28 30 */ slw r4, r9, r5
|
||||
/* 803920F4 0038F054 7C 09 03 78 */ mr r9, r0
|
||||
/* 803920F8 0038F058 7C 83 1B 78 */ or r3, r4, r3
|
||||
/* 803920FC 0038F05C 48 00 00 10 */ b lbl_8039210C
|
||||
lbl_80392100:
|
||||
/* 80392100 0038F060 38 66 FF E0 */ addi r3, r6, -32
|
||||
/* 80392104 0038F064 7D 23 1E 30 */ sraw r3, r9, r3
|
||||
/* 80392108 0038F068 7C 09 03 78 */ mr r9, r0
|
||||
lbl_8039210C:
|
||||
/* 8039210C 0038F06C 7D 20 03 78 */ or r0, r9, r0
|
||||
/* 80392110 0038F070 90 61 00 0C */ stw r3, 0xc(r1)
|
||||
/* 80392114 0038F074 90 01 00 08 */ stw r0, 8(r1)
|
||||
lbl_80392118:
|
||||
/* 80392118 0038F078 C8 21 00 08 */ lfd f1, 8(r1)
|
||||
lbl_8039211C:
|
||||
/* 8039211C 0038F07C 38 21 00 20 */ addi r1, r1, 0x20
|
||||
/* 80392120 0038F080 4E 80 00 20 */ blr
|
|
@ -0,0 +1,177 @@
|
|||
.include "macros.inc"
|
||||
|
||||
.section .text, "ax"
|
||||
|
||||
.global __ieee754_log
|
||||
__ieee754_log:
|
||||
/* 80392124 0038F084 94 21 FF E0 */ stwu r1, -0x20(r1)
|
||||
/* 80392128 0038F088 3C 00 00 10 */ lis r0, 0x10
|
||||
/* 8039212C 0038F08C 39 00 00 00 */ li r8, 0
|
||||
/* 80392130 0038F090 D8 21 00 08 */ stfd f1, 8(r1)
|
||||
/* 80392134 0038F094 80 61 00 08 */ lwz r3, 8(r1)
|
||||
/* 80392138 0038F098 80 81 00 0C */ lwz r4, 0xc(r1)
|
||||
/* 8039213C 0038F09C 7C 03 00 00 */ cmpw r3, r0
|
||||
/* 80392140 0038F0A0 40 80 00 54 */ bge lbl_80392194
|
||||
/* 80392144 0038F0A4 54 60 00 7E */ clrlwi r0, r3, 1
|
||||
/* 80392148 0038F0A8 7C 00 23 79 */ or. r0, r0, r4
|
||||
/* 8039214C 0038F0AC 40 82 00 14 */ bne lbl_80392160
|
||||
/* 80392150 0038F0B0 C8 22 D1 90 */ lfd f1, lbl_805AEEB0@sda21(r2)
|
||||
/* 80392154 0038F0B4 C8 0D AE 20 */ lfd f0, lbl_805A99E0@sda21(r13)
|
||||
/* 80392158 0038F0B8 FC 21 00 24 */ fdiv f1, f1, f0
|
||||
/* 8039215C 0038F0BC 48 00 02 3C */ b lbl_80392398
|
||||
lbl_80392160:
|
||||
/* 80392160 0038F0C0 2C 03 00 00 */ cmpwi r3, 0
|
||||
/* 80392164 0038F0C4 40 80 00 1C */ bge lbl_80392180
|
||||
/* 80392168 0038F0C8 FC 21 08 28 */ fsub f1, f1, f1
|
||||
/* 8039216C 0038F0CC C8 0D AE 20 */ lfd f0, lbl_805A99E0@sda21(r13)
|
||||
/* 80392170 0038F0D0 38 00 00 21 */ li r0, 0x21
|
||||
/* 80392174 0038F0D4 90 0D AE 10 */ stw r0, lbl_805A99D0@sda21(r13)
|
||||
/* 80392178 0038F0D8 FC 21 00 24 */ fdiv f1, f1, f0
|
||||
/* 8039217C 0038F0DC 48 00 02 1C */ b lbl_80392398
|
||||
lbl_80392180:
|
||||
/* 80392180 0038F0E0 C8 02 D1 98 */ lfd f0, lbl_805AEEB8@sda21(r2)
|
||||
/* 80392184 0038F0E4 39 00 FF CA */ li r8, -54
|
||||
/* 80392188 0038F0E8 FC 01 00 32 */ fmul f0, f1, f0
|
||||
/* 8039218C 0038F0EC D8 01 00 08 */ stfd f0, 8(r1)
|
||||
/* 80392190 0038F0F0 80 61 00 08 */ lwz r3, 8(r1)
|
||||
lbl_80392194:
|
||||
/* 80392194 0038F0F4 3C 00 7F F0 */ lis r0, 0x7ff0
|
||||
/* 80392198 0038F0F8 7C 03 00 00 */ cmpw r3, r0
|
||||
/* 8039219C 0038F0FC 41 80 00 10 */ blt lbl_803921AC
|
||||
/* 803921A0 0038F100 C8 01 00 08 */ lfd f0, 8(r1)
|
||||
/* 803921A4 0038F104 FC 20 00 2A */ fadd f1, f0, f0
|
||||
/* 803921A8 0038F108 48 00 01 F0 */ b lbl_80392398
|
||||
lbl_803921AC:
|
||||
/* 803921AC 0038F10C 54 66 03 3E */ clrlwi r6, r3, 0xc
|
||||
/* 803921B0 0038F110 7C 64 A6 70 */ srawi r4, r3, 0x14
|
||||
/* 803921B4 0038F114 3C 66 00 09 */ addis r3, r6, 9
|
||||
/* 803921B8 0038F118 C8 02 D1 A0 */ lfd f0, lbl_805AEEC0@sda21(r2)
|
||||
/* 803921BC 0038F11C 38 A3 5F 64 */ addi r5, r3, 0x5f64
|
||||
/* 803921C0 0038F120 7D 04 42 14 */ add r8, r4, r8
|
||||
/* 803921C4 0038F124 54 A3 02 D6 */ rlwinm r3, r5, 0, 0xb, 0xb
|
||||
/* 803921C8 0038F128 38 06 00 02 */ addi r0, r6, 2
|
||||
/* 803921CC 0038F12C 6C 63 3F F0 */ xoris r3, r3, 0x3ff0
|
||||
/* 803921D0 0038F130 39 08 FC 01 */ addi r8, r8, -1023
|
||||
/* 803921D4 0038F134 7C C4 1B 78 */ or r4, r6, r3
|
||||
/* 803921D8 0038F138 54 00 03 3E */ clrlwi r0, r0, 0xc
|
||||
/* 803921DC 0038F13C 90 81 00 08 */ stw r4, 8(r1)
|
||||
/* 803921E0 0038F140 54 A3 67 FE */ rlwinm r3, r5, 0xc, 0x1f, 0x1f
|
||||
/* 803921E4 0038F144 2C 00 00 03 */ cmpwi r0, 3
|
||||
/* 803921E8 0038F148 C8 21 00 08 */ lfd f1, 8(r1)
|
||||
/* 803921EC 0038F14C 7D 08 1A 14 */ add r8, r8, r3
|
||||
/* 803921F0 0038F150 FC 01 00 28 */ fsub f0, f1, f0
|
||||
/* 803921F4 0038F154 40 80 00 A4 */ bge lbl_80392298
|
||||
/* 803921F8 0038F158 C8 2D AE 20 */ lfd f1, lbl_805A99E0@sda21(r13)
|
||||
/* 803921FC 0038F15C FC 00 08 00 */ fcmpu cr0, f0, f1
|
||||
/* 80392200 0038F160 40 82 00 40 */ bne lbl_80392240
|
||||
/* 80392204 0038F164 2C 08 00 00 */ cmpwi r8, 0
|
||||
/* 80392208 0038F168 40 82 00 08 */ bne lbl_80392210
|
||||
/* 8039220C 0038F16C 48 00 01 8C */ b lbl_80392398
|
||||
lbl_80392210:
|
||||
/* 80392210 0038F170 6D 03 80 00 */ xoris r3, r8, 0x8000
|
||||
/* 80392214 0038F174 3C 00 43 30 */ lis r0, 0x4330
|
||||
/* 80392218 0038F178 90 61 00 14 */ stw r3, 0x14(r1)
|
||||
/* 8039221C 0038F17C C8 62 D2 08 */ lfd f3, lbl_805AEF28@sda21(r2)
|
||||
/* 80392220 0038F180 90 01 00 10 */ stw r0, 0x10(r1)
|
||||
/* 80392224 0038F184 C8 02 D1 B0 */ lfd f0, lbl_805AEED0@sda21(r2)
|
||||
/* 80392228 0038F188 C8 41 00 10 */ lfd f2, 0x10(r1)
|
||||
/* 8039222C 0038F18C C8 22 D1 A8 */ lfd f1, lbl_805AEEC8@sda21(r2)
|
||||
/* 80392230 0038F190 FC 42 18 28 */ fsub f2, f2, f3
|
||||
/* 80392234 0038F194 FC 00 00 B2 */ fmul f0, f0, f2
|
||||
/* 80392238 0038F198 FC 21 00 BA */ fmadd f1, f1, f2, f0
|
||||
/* 8039223C 0038F19C 48 00 01 5C */ b lbl_80392398
|
||||
lbl_80392240:
|
||||
/* 80392240 0038F1A0 C8 62 D1 C0 */ lfd f3, lbl_805AEEE0@sda21(r2)
|
||||
/* 80392244 0038F1A4 FC 20 00 32 */ fmul f1, f0, f0
|
||||
/* 80392248 0038F1A8 C8 42 D1 B8 */ lfd f2, lbl_805AEED8@sda21(r2)
|
||||
/* 8039224C 0038F1AC 2C 08 00 00 */ cmpwi r8, 0
|
||||
/* 80392250 0038F1B0 FC 43 10 3C */ fnmsub f2, f3, f0, f2
|
||||
/* 80392254 0038F1B4 FC A2 00 72 */ fmul f5, f2, f1
|
||||
/* 80392258 0038F1B8 40 82 00 0C */ bne lbl_80392264
|
||||
/* 8039225C 0038F1BC FC 20 28 28 */ fsub f1, f0, f5
|
||||
/* 80392260 0038F1C0 48 00 01 38 */ b lbl_80392398
|
||||
lbl_80392264:
|
||||
/* 80392264 0038F1C4 6D 03 80 00 */ xoris r3, r8, 0x8000
|
||||
/* 80392268 0038F1C8 3C 00 43 30 */ lis r0, 0x4330
|
||||
/* 8039226C 0038F1CC 90 61 00 14 */ stw r3, 0x14(r1)
|
||||
/* 80392270 0038F1D0 C8 82 D2 08 */ lfd f4, lbl_805AEF28@sda21(r2)
|
||||
/* 80392274 0038F1D4 90 01 00 10 */ stw r0, 0x10(r1)
|
||||
/* 80392278 0038F1D8 C8 22 D1 B0 */ lfd f1, lbl_805AEED0@sda21(r2)
|
||||
/* 8039227C 0038F1DC C8 61 00 10 */ lfd f3, 0x10(r1)
|
||||
/* 80392280 0038F1E0 C8 42 D1 A8 */ lfd f2, lbl_805AEEC8@sda21(r2)
|
||||
/* 80392284 0038F1E4 FC 63 20 28 */ fsub f3, f3, f4
|
||||
/* 80392288 0038F1E8 FC 21 28 FC */ fnmsub f1, f1, f3, f5
|
||||
/* 8039228C 0038F1EC FC 01 00 28 */ fsub f0, f1, f0
|
||||
/* 80392290 0038F1F0 FC 22 00 F8 */ fmsub f1, f2, f3, f0
|
||||
/* 80392294 0038F1F4 48 00 01 04 */ b lbl_80392398
|
||||
lbl_80392298:
|
||||
/* 80392298 0038F1F8 C8 22 D1 C8 */ lfd f1, lbl_805AEEE8@sda21(r2)
|
||||
/* 8039229C 0038F1FC 6D 05 80 00 */ xoris r5, r8, 0x8000
|
||||
/* 803922A0 0038F200 3C 80 43 30 */ lis r4, 0x4330
|
||||
/* 803922A4 0038F204 3C 60 00 07 */ lis r3, 0x0006B851@ha
|
||||
/* 803922A8 0038F208 FC 21 00 2A */ fadd f1, f1, f0
|
||||
/* 803922AC 0038F20C 3C E6 FF FA */ addis r7, r6, 0xfffa
|
||||
/* 803922B0 0038F210 38 03 B8 51 */ addi r0, r3, 0x0006B851@l
|
||||
/* 803922B4 0038F214 C9 02 D1 E8 */ lfd f8, lbl_805AEF08@sda21(r2)
|
||||
/* 803922B8 0038F218 C8 E2 D1 E0 */ lfd f7, lbl_805AEF00@sda21(r2)
|
||||
/* 803922BC 0038F21C 7C 06 00 50 */ subf r0, r6, r0
|
||||
/* 803922C0 0038F220 FC 20 08 24 */ fdiv f1, f0, f1
|
||||
/* 803922C4 0038F224 38 E7 EB 86 */ addi r7, r7, -5242
|
||||
/* 803922C8 0038F228 C8 C2 D1 D8 */ lfd f6, lbl_805AEEF8@sda21(r2)
|
||||
/* 803922CC 0038F22C 7C E7 03 79 */ or. r7, r7, r0
|
||||
/* 803922D0 0038F230 C8 82 D2 00 */ lfd f4, lbl_805AEF20@sda21(r2)
|
||||
/* 803922D4 0038F234 C8 62 D1 F8 */ lfd f3, lbl_805AEF18@sda21(r2)
|
||||
/* 803922D8 0038F238 FD 61 00 72 */ fmul f11, f1, f1
|
||||
/* 803922DC 0038F23C C8 A2 D1 D0 */ lfd f5, lbl_805AEEF0@sda21(r2)
|
||||
/* 803922E0 0038F240 C8 42 D1 F0 */ lfd f2, lbl_805AEF10@sda21(r2)
|
||||
/* 803922E4 0038F244 90 A1 00 14 */ stw r5, 0x14(r1)
|
||||
/* 803922E8 0038F248 C9 42 D2 08 */ lfd f10, lbl_805AEF28@sda21(r2)
|
||||
/* 803922EC 0038F24C FD 8B 02 F2 */ fmul f12, f11, f11
|
||||
/* 803922F0 0038F250 90 81 00 10 */ stw r4, 0x10(r1)
|
||||
/* 803922F4 0038F254 C9 21 00 10 */ lfd f9, 0x10(r1)
|
||||
/* 803922F8 0038F258 FC E8 3B 3A */ fmadd f7, f8, f12, f7
|
||||
/* 803922FC 0038F25C FC 64 1B 3A */ fmadd f3, f4, f12, f3
|
||||
/* 80392300 0038F260 FC 8C 31 FA */ fmadd f4, f12, f7, f6
|
||||
/* 80392304 0038F264 FC 4C 10 FA */ fmadd f2, f12, f3, f2
|
||||
/* 80392308 0038F268 FC 6C 29 3A */ fmadd f3, f12, f4, f5
|
||||
/* 8039230C 0038F26C FC 4C 00 B2 */ fmul f2, f12, f2
|
||||
/* 80392310 0038F270 FC 6B 00 F2 */ fmul f3, f11, f3
|
||||
/* 80392314 0038F274 FC A9 50 28 */ fsub f5, f9, f10
|
||||
/* 80392318 0038F278 FC 63 10 2A */ fadd f3, f3, f2
|
||||
/* 8039231C 0038F27C 40 81 00 4C */ ble lbl_80392368
|
||||
/* 80392320 0038F280 C8 42 D1 B8 */ lfd f2, lbl_805AEED8@sda21(r2)
|
||||
/* 80392324 0038F284 2C 08 00 00 */ cmpwi r8, 0
|
||||
/* 80392328 0038F288 FC 42 00 32 */ fmul f2, f2, f0
|
||||
/* 8039232C 0038F28C FC C2 00 32 */ fmul f6, f2, f0
|
||||
/* 80392330 0038F290 40 82 00 14 */ bne lbl_80392344
|
||||
/* 80392334 0038F294 FC 46 18 2A */ fadd f2, f6, f3
|
||||
/* 80392338 0038F298 FC 21 30 BC */ fnmsub f1, f1, f2, f6
|
||||
/* 8039233C 0038F29C FC 20 08 28 */ fsub f1, f0, f1
|
||||
/* 80392340 0038F2A0 48 00 00 58 */ b lbl_80392398
|
||||
lbl_80392344:
|
||||
/* 80392344 0038F2A4 C8 42 D1 B0 */ lfd f2, lbl_805AEED0@sda21(r2)
|
||||
/* 80392348 0038F2A8 FC 66 18 2A */ fadd f3, f6, f3
|
||||
/* 8039234C 0038F2AC C8 82 D1 A8 */ lfd f4, lbl_805AEEC8@sda21(r2)
|
||||
/* 80392350 0038F2B0 FC 42 01 72 */ fmul f2, f2, f5
|
||||
/* 80392354 0038F2B4 FC 21 10 FA */ fmadd f1, f1, f3, f2
|
||||
/* 80392358 0038F2B8 FC 26 08 28 */ fsub f1, f6, f1
|
||||
/* 8039235C 0038F2BC FC 01 00 28 */ fsub f0, f1, f0
|
||||
/* 80392360 0038F2C0 FC 24 01 78 */ fmsub f1, f4, f5, f0
|
||||
/* 80392364 0038F2C4 48 00 00 34 */ b lbl_80392398
|
||||
lbl_80392368:
|
||||
/* 80392368 0038F2C8 2C 08 00 00 */ cmpwi r8, 0
|
||||
/* 8039236C 0038F2CC 40 82 00 10 */ bne lbl_8039237C
|
||||
/* 80392370 0038F2D0 FC 40 18 28 */ fsub f2, f0, f3
|
||||
/* 80392374 0038F2D4 FC 21 00 BC */ fnmsub f1, f1, f2, f0
|
||||
/* 80392378 0038F2D8 48 00 00 20 */ b lbl_80392398
|
||||
lbl_8039237C:
|
||||
/* 8039237C 0038F2DC C8 42 D1 B0 */ lfd f2, lbl_805AEED0@sda21(r2)
|
||||
/* 80392380 0038F2E0 FC 60 18 28 */ fsub f3, f0, f3
|
||||
/* 80392384 0038F2E4 C8 82 D1 A8 */ lfd f4, lbl_805AEEC8@sda21(r2)
|
||||
/* 80392388 0038F2E8 FC 42 01 72 */ fmul f2, f2, f5
|
||||
/* 8039238C 0038F2EC FC 21 10 F8 */ fmsub f1, f1, f3, f2
|
||||
/* 80392390 0038F2F0 FC 01 00 28 */ fsub f0, f1, f0
|
||||
/* 80392394 0038F2F4 FC 24 01 78 */ fmsub f1, f4, f5, f0
|
||||
lbl_80392398:
|
||||
/* 80392398 0038F2F8 38 21 00 20 */ addi r1, r1, 0x20
|
||||
/* 8039239C 0038F2FC 4E 80 00 20 */ blr
|
|
@ -0,0 +1,602 @@
|
|||
.include "macros.inc"
|
||||
|
||||
.section .text, "ax"
|
||||
|
||||
.global __ieee754_pow
|
||||
__ieee754_pow:
|
||||
/* 803923A0 0038F300 94 21 FF 70 */ stwu r1, -0x90(r1)
|
||||
/* 803923A4 0038F304 7C 08 02 A6 */ mflr r0
|
||||
/* 803923A8 0038F308 90 01 00 94 */ stw r0, 0x94(r1)
|
||||
/* 803923AC 0038F30C DB E1 00 80 */ stfd f31, 0x80(r1)
|
||||
/* 803923B0 0038F310 F3 E1 00 88 */ psq_st f31, 136(r1), 0, qr0
|
||||
/* 803923B4 0038F314 DB C1 00 70 */ stfd f30, 0x70(r1)
|
||||
/* 803923B8 0038F318 F3 C1 00 78 */ psq_st f30, 120(r1), 0, qr0
|
||||
/* 803923BC 0038F31C DB A1 00 60 */ stfd f29, 0x60(r1)
|
||||
/* 803923C0 0038F320 F3 A1 00 68 */ psq_st f29, 104(r1), 0, qr0
|
||||
/* 803923C4 0038F324 D8 41 00 10 */ stfd f2, 0x10(r1)
|
||||
/* 803923C8 0038F328 3C 60 80 3E */ lis r3, lbl_803D8760@ha
|
||||
/* 803923CC 0038F32C 38 03 87 60 */ addi r0, r3, lbl_803D8760@l
|
||||
/* 803923D0 0038F330 80 A1 00 10 */ lwz r5, 0x10(r1)
|
||||
/* 803923D4 0038F334 D8 21 00 08 */ stfd f1, 8(r1)
|
||||
/* 803923D8 0038F338 81 61 00 14 */ lwz r11, 0x14(r1)
|
||||
/* 803923DC 0038F33C 54 A7 00 7E */ clrlwi r7, r5, 1
|
||||
/* 803923E0 0038F340 80 61 00 08 */ lwz r3, 8(r1)
|
||||
/* 803923E4 0038F344 7C E4 5B 79 */ or. r4, r7, r11
|
||||
/* 803923E8 0038F348 81 41 00 0C */ lwz r10, 0xc(r1)
|
||||
/* 803923EC 0038F34C 54 66 00 7E */ clrlwi r6, r3, 1
|
||||
/* 803923F0 0038F350 40 82 00 0C */ bne lbl_803923FC
|
||||
/* 803923F4 0038F354 C8 22 D2 10 */ lfd f1, lbl_805AEF30@sda21(r2)
|
||||
/* 803923F8 0038F358 48 00 08 0C */ b lbl_80392C04
|
||||
lbl_803923FC:
|
||||
/* 803923FC 0038F35C 3C 80 7F F0 */ lis r4, 0x7ff0
|
||||
/* 80392400 0038F360 7C 06 20 00 */ cmpw r6, r4
|
||||
/* 80392404 0038F364 41 81 00 38 */ bgt lbl_8039243C
|
||||
/* 80392408 0038F368 3C 86 80 10 */ addis r4, r6, 0x8010
|
||||
/* 8039240C 0038F36C 28 04 00 00 */ cmplwi r4, 0
|
||||
/* 80392410 0038F370 40 82 00 0C */ bne lbl_8039241C
|
||||
/* 80392414 0038F374 28 0A 00 00 */ cmplwi r10, 0
|
||||
/* 80392418 0038F378 40 82 00 24 */ bne lbl_8039243C
|
||||
lbl_8039241C:
|
||||
/* 8039241C 0038F37C 3C 80 7F F0 */ lis r4, 0x7ff0
|
||||
/* 80392420 0038F380 7C 07 20 00 */ cmpw r7, r4
|
||||
/* 80392424 0038F384 41 81 00 18 */ bgt lbl_8039243C
|
||||
/* 80392428 0038F388 3C 87 80 10 */ addis r4, r7, 0x8010
|
||||
/* 8039242C 0038F38C 28 04 00 00 */ cmplwi r4, 0
|
||||
/* 80392430 0038F390 40 82 00 1C */ bne lbl_8039244C
|
||||
/* 80392434 0038F394 28 0B 00 00 */ cmplwi r11, 0
|
||||
/* 80392438 0038F398 41 82 00 14 */ beq lbl_8039244C
|
||||
lbl_8039243C:
|
||||
/* 8039243C 0038F39C C8 21 00 08 */ lfd f1, 8(r1)
|
||||
/* 80392440 0038F3A0 C8 01 00 10 */ lfd f0, 0x10(r1)
|
||||
/* 80392444 0038F3A4 FC 21 00 2A */ fadd f1, f1, f0
|
||||
/* 80392448 0038F3A8 48 00 07 BC */ b lbl_80392C04
|
||||
lbl_8039244C:
|
||||
/* 8039244C 0038F3AC 2C 03 00 00 */ cmpwi r3, 0
|
||||
/* 80392450 0038F3B0 38 80 00 00 */ li r4, 0
|
||||
/* 80392454 0038F3B4 40 80 00 78 */ bge lbl_803924CC
|
||||
/* 80392458 0038F3B8 3D 00 43 40 */ lis r8, 0x4340
|
||||
/* 8039245C 0038F3BC 7C 07 40 00 */ cmpw r7, r8
|
||||
/* 80392460 0038F3C0 41 80 00 0C */ blt lbl_8039246C
|
||||
/* 80392464 0038F3C4 38 80 00 02 */ li r4, 2
|
||||
/* 80392468 0038F3C8 48 00 00 64 */ b lbl_803924CC
|
||||
lbl_8039246C:
|
||||
/* 8039246C 0038F3CC 3D 00 3F F0 */ lis r8, 0x3ff0
|
||||
/* 80392470 0038F3D0 7C 07 40 00 */ cmpw r7, r8
|
||||
/* 80392474 0038F3D4 41 80 00 58 */ blt lbl_803924CC
|
||||
/* 80392478 0038F3D8 7C E8 A6 70 */ srawi r8, r7, 0x14
|
||||
/* 8039247C 0038F3DC 39 08 FC 01 */ addi r8, r8, -1023
|
||||
/* 80392480 0038F3E0 2C 08 00 14 */ cmpwi r8, 0x14
|
||||
/* 80392484 0038F3E4 40 81 00 24 */ ble lbl_803924A8
|
||||
/* 80392488 0038F3E8 21 08 00 34 */ subfic r8, r8, 0x34
|
||||
/* 8039248C 0038F3EC 7D 69 44 30 */ srw r9, r11, r8
|
||||
/* 80392490 0038F3F0 7D 28 40 30 */ slw r8, r9, r8
|
||||
/* 80392494 0038F3F4 7C 0B 40 40 */ cmplw r11, r8
|
||||
/* 80392498 0038F3F8 40 82 00 34 */ bne lbl_803924CC
|
||||
/* 8039249C 0038F3FC 55 24 07 FE */ clrlwi r4, r9, 0x1f
|
||||
/* 803924A0 0038F400 20 84 00 02 */ subfic r4, r4, 2
|
||||
/* 803924A4 0038F404 48 00 00 28 */ b lbl_803924CC
|
||||
lbl_803924A8:
|
||||
/* 803924A8 0038F408 28 0B 00 00 */ cmplwi r11, 0
|
||||
/* 803924AC 0038F40C 40 82 00 20 */ bne lbl_803924CC
|
||||
/* 803924B0 0038F410 21 08 00 14 */ subfic r8, r8, 0x14
|
||||
/* 803924B4 0038F414 7C E9 46 30 */ sraw r9, r7, r8
|
||||
/* 803924B8 0038F418 7D 28 40 30 */ slw r8, r9, r8
|
||||
/* 803924BC 0038F41C 7C 07 40 00 */ cmpw r7, r8
|
||||
/* 803924C0 0038F420 40 82 00 0C */ bne lbl_803924CC
|
||||
/* 803924C4 0038F424 55 24 07 FE */ clrlwi r4, r9, 0x1f
|
||||
/* 803924C8 0038F428 20 84 00 02 */ subfic r4, r4, 2
|
||||
lbl_803924CC:
|
||||
/* 803924CC 0038F42C 28 0B 00 00 */ cmplwi r11, 0
|
||||
/* 803924D0 0038F430 40 82 01 50 */ bne lbl_80392620
|
||||
/* 803924D4 0038F434 3D 07 80 10 */ addis r8, r7, 0x8010
|
||||
/* 803924D8 0038F438 28 08 00 00 */ cmplwi r8, 0
|
||||
/* 803924DC 0038F43C 40 82 00 5C */ bne lbl_80392538
|
||||
/* 803924E0 0038F440 3C 06 C0 10 */ addis r0, r6, 0xc010
|
||||
/* 803924E4 0038F444 7C 00 53 79 */ or. r0, r0, r10
|
||||
/* 803924E8 0038F448 40 82 00 10 */ bne lbl_803924F8
|
||||
/* 803924EC 0038F44C C8 01 00 10 */ lfd f0, 0x10(r1)
|
||||
/* 803924F0 0038F450 FC 20 00 28 */ fsub f1, f0, f0
|
||||
/* 803924F4 0038F454 48 00 07 10 */ b lbl_80392C04
|
||||
lbl_803924F8:
|
||||
/* 803924F8 0038F458 3C 00 3F F0 */ lis r0, 0x3ff0
|
||||
/* 803924FC 0038F45C 7C 06 00 00 */ cmpw r6, r0
|
||||
/* 80392500 0038F460 41 80 00 1C */ blt lbl_8039251C
|
||||
/* 80392504 0038F464 2C 05 00 00 */ cmpwi r5, 0
|
||||
/* 80392508 0038F468 41 80 00 0C */ blt lbl_80392514
|
||||
/* 8039250C 0038F46C C8 21 00 10 */ lfd f1, 0x10(r1)
|
||||
/* 80392510 0038F470 48 00 06 F4 */ b lbl_80392C04
|
||||
lbl_80392514:
|
||||
/* 80392514 0038F474 C8 22 D2 18 */ lfd f1, lbl_805AEF38@sda21(r2)
|
||||
/* 80392518 0038F478 48 00 06 EC */ b lbl_80392C04
|
||||
lbl_8039251C:
|
||||
/* 8039251C 0038F47C 2C 05 00 00 */ cmpwi r5, 0
|
||||
/* 80392520 0038F480 40 80 00 10 */ bge lbl_80392530
|
||||
/* 80392524 0038F484 C8 01 00 10 */ lfd f0, 0x10(r1)
|
||||
/* 80392528 0038F488 FC 20 00 50 */ fneg f1, f0
|
||||
/* 8039252C 0038F48C 48 00 06 D8 */ b lbl_80392C04
|
||||
lbl_80392530:
|
||||
/* 80392530 0038F490 C8 22 D2 18 */ lfd f1, lbl_805AEF38@sda21(r2)
|
||||
/* 80392534 0038F494 48 00 06 D0 */ b lbl_80392C04
|
||||
lbl_80392538:
|
||||
/* 80392538 0038F498 3D 07 C0 10 */ addis r8, r7, 0xc010
|
||||
/* 8039253C 0038F49C 28 08 00 00 */ cmplwi r8, 0
|
||||
/* 80392540 0038F4A0 40 82 00 24 */ bne lbl_80392564
|
||||
/* 80392544 0038F4A4 2C 05 00 00 */ cmpwi r5, 0
|
||||
/* 80392548 0038F4A8 40 80 00 14 */ bge lbl_8039255C
|
||||
/* 8039254C 0038F4AC C8 22 D2 10 */ lfd f1, lbl_805AEF30@sda21(r2)
|
||||
/* 80392550 0038F4B0 C8 01 00 08 */ lfd f0, 8(r1)
|
||||
/* 80392554 0038F4B4 FC 21 00 24 */ fdiv f1, f1, f0
|
||||
/* 80392558 0038F4B8 48 00 06 AC */ b lbl_80392C04
|
||||
lbl_8039255C:
|
||||
/* 8039255C 0038F4BC C8 21 00 08 */ lfd f1, 8(r1)
|
||||
/* 80392560 0038F4C0 48 00 06 A4 */ b lbl_80392C04
|
||||
lbl_80392564:
|
||||
/* 80392564 0038F4C4 3D 05 C0 00 */ addis r8, r5, 0xc000
|
||||
/* 80392568 0038F4C8 28 08 00 00 */ cmplwi r8, 0
|
||||
/* 8039256C 0038F4CC 40 82 00 10 */ bne lbl_8039257C
|
||||
/* 80392570 0038F4D0 C8 01 00 08 */ lfd f0, 8(r1)
|
||||
/* 80392574 0038F4D4 FC 20 00 32 */ fmul f1, f0, f0
|
||||
/* 80392578 0038F4D8 48 00 06 8C */ b lbl_80392C04
|
||||
lbl_8039257C:
|
||||
/* 8039257C 0038F4DC 3D 05 C0 20 */ addis r8, r5, 0xc020
|
||||
/* 80392580 0038F4E0 28 08 00 00 */ cmplwi r8, 0
|
||||
/* 80392584 0038F4E4 40 82 00 9C */ bne lbl_80392620
|
||||
/* 80392588 0038F4E8 2C 03 00 00 */ cmpwi r3, 0
|
||||
/* 8039258C 0038F4EC 41 80 00 94 */ blt lbl_80392620
|
||||
/* 80392590 0038F4F0 C8 81 00 08 */ lfd f4, 8(r1)
|
||||
/* 80392594 0038F4F4 C8 22 D2 18 */ lfd f1, lbl_805AEF38@sda21(r2)
|
||||
/* 80392598 0038F4F8 FC 04 08 40 */ fcmpo cr0, f4, f1
|
||||
/* 8039259C 0038F4FC 40 81 00 58 */ ble lbl_803925F4
|
||||
/* 803925A0 0038F500 FC 20 20 34 */ frsqrte f1, f4
|
||||
/* 803925A4 0038F504 C8 62 D2 20 */ lfd f3, lbl_805AEF40@sda21(r2)
|
||||
/* 803925A8 0038F508 C8 42 D2 28 */ lfd f2, lbl_805AEF48@sda21(r2)
|
||||
/* 803925AC 0038F50C FC 01 00 72 */ fmul f0, f1, f1
|
||||
/* 803925B0 0038F510 FC 23 00 72 */ fmul f1, f3, f1
|
||||
/* 803925B4 0038F514 FC 04 10 3C */ fnmsub f0, f4, f0, f2
|
||||
/* 803925B8 0038F518 FC 21 00 32 */ fmul f1, f1, f0
|
||||
/* 803925BC 0038F51C FC 01 00 72 */ fmul f0, f1, f1
|
||||
/* 803925C0 0038F520 FC 23 00 72 */ fmul f1, f3, f1
|
||||
/* 803925C4 0038F524 FC 04 10 3C */ fnmsub f0, f4, f0, f2
|
||||
/* 803925C8 0038F528 FC 21 00 32 */ fmul f1, f1, f0
|
||||
/* 803925CC 0038F52C FC 01 00 72 */ fmul f0, f1, f1
|
||||
/* 803925D0 0038F530 FC 23 00 72 */ fmul f1, f3, f1
|
||||
/* 803925D4 0038F534 FC 04 10 3C */ fnmsub f0, f4, f0, f2
|
||||
/* 803925D8 0038F538 FC 21 00 32 */ fmul f1, f1, f0
|
||||
/* 803925DC 0038F53C FC 01 00 72 */ fmul f0, f1, f1
|
||||
/* 803925E0 0038F540 FC 23 00 72 */ fmul f1, f3, f1
|
||||
/* 803925E4 0038F544 FC 04 10 3C */ fnmsub f0, f4, f0, f2
|
||||
/* 803925E8 0038F548 FC 01 00 32 */ fmul f0, f1, f0
|
||||
/* 803925EC 0038F54C FC 24 00 32 */ fmul f1, f4, f0
|
||||
/* 803925F0 0038F550 48 00 06 14 */ b lbl_80392C04
|
||||
lbl_803925F4:
|
||||
/* 803925F4 0038F554 FC 01 20 00 */ fcmpu cr0, f1, f4
|
||||
/* 803925F8 0038F558 40 82 00 08 */ bne lbl_80392600
|
||||
/* 803925FC 0038F55C 48 00 06 08 */ b lbl_80392C04
|
||||
lbl_80392600:
|
||||
/* 80392600 0038F560 FC 04 08 00 */ fcmpu cr0, f4, f1
|
||||
/* 80392604 0038F564 41 82 00 10 */ beq lbl_80392614
|
||||
/* 80392608 0038F568 3C 60 80 5B */ lis r3, lbl_805A8BA0@ha
|
||||
/* 8039260C 0038F56C C0 23 8B A0 */ lfs f1, lbl_805A8BA0@l(r3)
|
||||
/* 80392610 0038F570 48 00 05 F4 */ b lbl_80392C04
|
||||
lbl_80392614:
|
||||
/* 80392614 0038F574 3C 60 80 5B */ lis r3, lbl_805A8BA4@ha
|
||||
/* 80392618 0038F578 C0 23 8B A4 */ lfs f1, lbl_805A8BA4@l(r3)
|
||||
/* 8039261C 0038F57C 48 00 05 E8 */ b lbl_80392C04
|
||||
lbl_80392620:
|
||||
/* 80392620 0038F580 C8 01 00 08 */ lfd f0, 8(r1)
|
||||
/* 80392624 0038F584 28 0A 00 00 */ cmplwi r10, 0
|
||||
/* 80392628 0038F588 FC 20 02 10 */ fabs f1, f0
|
||||
/* 8039262C 0038F58C D8 21 00 48 */ stfd f1, 0x48(r1)
|
||||
/* 80392630 0038F590 40 82 00 80 */ bne lbl_803926B0
|
||||
/* 80392634 0038F594 3D 06 80 10 */ addis r8, r6, 0x8010
|
||||
/* 80392638 0038F598 28 08 00 00 */ cmplwi r8, 0
|
||||
/* 8039263C 0038F59C 41 82 00 18 */ beq lbl_80392654
|
||||
/* 80392640 0038F5A0 2C 06 00 00 */ cmpwi r6, 0
|
||||
/* 80392644 0038F5A4 41 82 00 10 */ beq lbl_80392654
|
||||
/* 80392648 0038F5A8 3D 06 C0 10 */ addis r8, r6, 0xc010
|
||||
/* 8039264C 0038F5AC 28 08 00 00 */ cmplwi r8, 0
|
||||
/* 80392650 0038F5B0 40 82 00 60 */ bne lbl_803926B0
|
||||
lbl_80392654:
|
||||
/* 80392654 0038F5B4 2C 05 00 00 */ cmpwi r5, 0
|
||||
/* 80392658 0038F5B8 D8 21 00 50 */ stfd f1, 0x50(r1)
|
||||
/* 8039265C 0038F5BC 40 80 00 10 */ bge lbl_8039266C
|
||||
/* 80392660 0038F5C0 C8 02 D2 10 */ lfd f0, lbl_805AEF30@sda21(r2)
|
||||
/* 80392664 0038F5C4 FC 00 08 24 */ fdiv f0, f0, f1
|
||||
/* 80392668 0038F5C8 D8 01 00 50 */ stfd f0, 0x50(r1)
|
||||
lbl_8039266C:
|
||||
/* 8039266C 0038F5CC 2C 03 00 00 */ cmpwi r3, 0
|
||||
/* 80392670 0038F5D0 40 80 00 38 */ bge lbl_803926A8
|
||||
/* 80392674 0038F5D4 3C 06 C0 10 */ addis r0, r6, 0xc010
|
||||
/* 80392678 0038F5D8 7C 00 23 79 */ or. r0, r0, r4
|
||||
/* 8039267C 0038F5DC 40 82 00 18 */ bne lbl_80392694
|
||||
/* 80392680 0038F5E0 C8 01 00 50 */ lfd f0, 0x50(r1)
|
||||
/* 80392684 0038F5E4 FC 00 00 28 */ fsub f0, f0, f0
|
||||
/* 80392688 0038F5E8 FC 00 00 24 */ fdiv f0, f0, f0
|
||||
/* 8039268C 0038F5EC D8 01 00 50 */ stfd f0, 0x50(r1)
|
||||
/* 80392690 0038F5F0 48 00 00 18 */ b lbl_803926A8
|
||||
lbl_80392694:
|
||||
/* 80392694 0038F5F4 2C 04 00 01 */ cmpwi r4, 1
|
||||
/* 80392698 0038F5F8 40 82 00 10 */ bne lbl_803926A8
|
||||
/* 8039269C 0038F5FC C8 01 00 50 */ lfd f0, 0x50(r1)
|
||||
/* 803926A0 0038F600 FC 00 00 50 */ fneg f0, f0
|
||||
/* 803926A4 0038F604 D8 01 00 50 */ stfd f0, 0x50(r1)
|
||||
lbl_803926A8:
|
||||
/* 803926A8 0038F608 C8 21 00 50 */ lfd f1, 0x50(r1)
|
||||
/* 803926AC 0038F60C 48 00 05 58 */ b lbl_80392C04
|
||||
lbl_803926B0:
|
||||
/* 803926B0 0038F610 7C 63 FE 70 */ srawi r3, r3, 0x1f
|
||||
/* 803926B4 0038F614 38 63 00 01 */ addi r3, r3, 1
|
||||
/* 803926B8 0038F618 7C 68 23 79 */ or. r8, r3, r4
|
||||
/* 803926BC 0038F61C 40 82 00 18 */ bne lbl_803926D4
|
||||
/* 803926C0 0038F620 3C 60 80 5B */ lis r3, lbl_805A8BA0@ha
|
||||
/* 803926C4 0038F624 38 00 00 21 */ li r0, 0x21
|
||||
/* 803926C8 0038F628 90 0D AE 10 */ stw r0, lbl_805A99D0@sda21(r13)
|
||||
/* 803926CC 0038F62C C0 23 8B A0 */ lfs f1, lbl_805A8BA0@l(r3)
|
||||
/* 803926D0 0038F630 48 00 05 34 */ b lbl_80392C04
|
||||
lbl_803926D4:
|
||||
/* 803926D4 0038F634 3D 00 41 E0 */ lis r8, 0x41e0
|
||||
/* 803926D8 0038F638 7C 07 40 00 */ cmpw r7, r8
|
||||
/* 803926DC 0038F63C 40 81 01 04 */ ble lbl_803927E0
|
||||
/* 803926E0 0038F640 3C 00 43 F0 */ lis r0, 0x43f0
|
||||
/* 803926E4 0038F644 7C 07 00 00 */ cmpw r7, r0
|
||||
/* 803926E8 0038F648 40 81 00 4C */ ble lbl_80392734
|
||||
/* 803926EC 0038F64C 3C E0 3F F0 */ lis r7, 0x3FEFFFFF@ha
|
||||
/* 803926F0 0038F650 38 07 FF FF */ addi r0, r7, 0x3FEFFFFF@l
|
||||
/* 803926F4 0038F654 7C 06 00 00 */ cmpw r6, r0
|
||||
/* 803926F8 0038F658 41 81 00 1C */ bgt lbl_80392714
|
||||
/* 803926FC 0038F65C 2C 05 00 00 */ cmpwi r5, 0
|
||||
/* 80392700 0038F660 40 80 00 0C */ bge lbl_8039270C
|
||||
/* 80392704 0038F664 C8 22 D2 30 */ lfd f1, lbl_805AEF50@sda21(r2)
|
||||
/* 80392708 0038F668 48 00 04 FC */ b lbl_80392C04
|
||||
lbl_8039270C:
|
||||
/* 8039270C 0038F66C C8 22 D2 18 */ lfd f1, lbl_805AEF38@sda21(r2)
|
||||
/* 80392710 0038F670 48 00 04 F4 */ b lbl_80392C04
|
||||
lbl_80392714:
|
||||
/* 80392714 0038F674 7C 06 38 00 */ cmpw r6, r7
|
||||
/* 80392718 0038F678 41 80 00 1C */ blt lbl_80392734
|
||||
/* 8039271C 0038F67C 2C 05 00 00 */ cmpwi r5, 0
|
||||
/* 80392720 0038F680 40 81 00 0C */ ble lbl_8039272C
|
||||
/* 80392724 0038F684 C8 22 D2 30 */ lfd f1, lbl_805AEF50@sda21(r2)
|
||||
/* 80392728 0038F688 48 00 04 DC */ b lbl_80392C04
|
||||
lbl_8039272C:
|
||||
/* 8039272C 0038F68C C8 22 D2 18 */ lfd f1, lbl_805AEF38@sda21(r2)
|
||||
/* 80392730 0038F690 48 00 04 D4 */ b lbl_80392C04
|
||||
lbl_80392734:
|
||||
/* 80392734 0038F694 3C E0 3F F0 */ lis r7, 0x3FEFFFFF@ha
|
||||
/* 80392738 0038F698 38 07 FF FF */ addi r0, r7, 0x3FEFFFFF@l
|
||||
/* 8039273C 0038F69C 7C 06 00 00 */ cmpw r6, r0
|
||||
/* 80392740 0038F6A0 40 80 00 1C */ bge lbl_8039275C
|
||||
/* 80392744 0038F6A4 2C 05 00 00 */ cmpwi r5, 0
|
||||
/* 80392748 0038F6A8 40 80 00 0C */ bge lbl_80392754
|
||||
/* 8039274C 0038F6AC C8 22 D2 30 */ lfd f1, lbl_805AEF50@sda21(r2)
|
||||
/* 80392750 0038F6B0 48 00 04 B4 */ b lbl_80392C04
|
||||
lbl_80392754:
|
||||
/* 80392754 0038F6B4 C8 22 D2 18 */ lfd f1, lbl_805AEF38@sda21(r2)
|
||||
/* 80392758 0038F6B8 48 00 04 AC */ b lbl_80392C04
|
||||
lbl_8039275C:
|
||||
/* 8039275C 0038F6BC 7C 06 38 00 */ cmpw r6, r7
|
||||
/* 80392760 0038F6C0 40 81 00 1C */ ble lbl_8039277C
|
||||
/* 80392764 0038F6C4 2C 05 00 00 */ cmpwi r5, 0
|
||||
/* 80392768 0038F6C8 40 81 00 0C */ ble lbl_80392774
|
||||
/* 8039276C 0038F6CC C8 22 D2 30 */ lfd f1, lbl_805AEF50@sda21(r2)
|
||||
/* 80392770 0038F6D0 48 00 04 94 */ b lbl_80392C04
|
||||
lbl_80392774:
|
||||
/* 80392774 0038F6D4 C8 22 D2 18 */ lfd f1, lbl_805AEF38@sda21(r2)
|
||||
/* 80392778 0038F6D8 48 00 04 8C */ b lbl_80392C04
|
||||
lbl_8039277C:
|
||||
/* 8039277C 0038F6DC C8 41 00 08 */ lfd f2, 8(r1)
|
||||
/* 80392780 0038F6E0 38 00 00 00 */ li r0, 0
|
||||
/* 80392784 0038F6E4 C8 02 D2 10 */ lfd f0, lbl_805AEF30@sda21(r2)
|
||||
/* 80392788 0038F6E8 C8 22 D2 40 */ lfd f1, lbl_805AEF60@sda21(r2)
|
||||
/* 8039278C 0038F6EC FC C2 00 28 */ fsub f6, f2, f0
|
||||
/* 80392790 0038F6F0 C8 02 D2 38 */ lfd f0, lbl_805AEF58@sda21(r2)
|
||||
/* 80392794 0038F6F4 C8 42 D2 48 */ lfd f2, lbl_805AEF68@sda21(r2)
|
||||
/* 80392798 0038F6F8 C8 62 D2 20 */ lfd f3, lbl_805AEF40@sda21(r2)
|
||||
/* 8039279C 0038F6FC FC 81 01 BC */ fnmsub f4, f1, f6, f0
|
||||
/* 803927A0 0038F700 C8 02 D2 58 */ lfd f0, lbl_805AEF78@sda21(r2)
|
||||
/* 803927A4 0038F704 C8 22 D2 50 */ lfd f1, lbl_805AEF70@sda21(r2)
|
||||
/* 803927A8 0038F708 FC A6 01 B2 */ fmul f5, f6, f6
|
||||
/* 803927AC 0038F70C D8 C1 00 28 */ stfd f6, 0x28(r1)
|
||||
/* 803927B0 0038F710 FC 66 19 3C */ fnmsub f3, f6, f4, f3
|
||||
/* 803927B4 0038F714 FC 42 01 B2 */ fmul f2, f2, f6
|
||||
/* 803927B8 0038F718 FC 65 00 F2 */ fmul f3, f5, f3
|
||||
/* 803927BC 0038F71C FC 00 00 F2 */ fmul f0, f0, f3
|
||||
/* 803927C0 0038F720 FC 21 01 B8 */ fmsub f1, f1, f6, f0
|
||||
/* 803927C4 0038F724 FC 02 08 2A */ fadd f0, f2, f1
|
||||
/* 803927C8 0038F728 D8 01 00 30 */ stfd f0, 0x30(r1)
|
||||
/* 803927CC 0038F72C 90 01 00 34 */ stw r0, 0x34(r1)
|
||||
/* 803927D0 0038F730 C8 01 00 30 */ lfd f0, 0x30(r1)
|
||||
/* 803927D4 0038F734 FC 00 10 28 */ fsub f0, f0, f2
|
||||
/* 803927D8 0038F738 FC 01 00 28 */ fsub f0, f1, f0
|
||||
/* 803927DC 0038F73C 48 00 01 E4 */ b lbl_803929C0
|
||||
lbl_803927E0:
|
||||
/* 803927E0 0038F740 3C A0 00 10 */ lis r5, 0x10
|
||||
/* 803927E4 0038F744 39 40 00 00 */ li r10, 0
|
||||
/* 803927E8 0038F748 7C 06 28 00 */ cmpw r6, r5
|
||||
/* 803927EC 0038F74C 40 80 00 1C */ bge lbl_80392808
|
||||
/* 803927F0 0038F750 C8 21 00 48 */ lfd f1, 0x48(r1)
|
||||
/* 803927F4 0038F754 39 40 FF CB */ li r10, -53
|
||||
/* 803927F8 0038F758 C8 02 D2 60 */ lfd f0, lbl_805AEF80@sda21(r2)
|
||||
/* 803927FC 0038F75C FC 01 00 32 */ fmul f0, f1, f0
|
||||
/* 80392800 0038F760 D8 01 00 48 */ stfd f0, 0x48(r1)
|
||||
/* 80392804 0038F764 80 C1 00 48 */ lwz r6, 0x48(r1)
|
||||
lbl_80392808:
|
||||
/* 80392808 0038F768 3C A0 00 04 */ lis r5, 0x0003988E@ha
|
||||
/* 8039280C 0038F76C 54 C8 03 3E */ clrlwi r8, r6, 0xc
|
||||
/* 80392810 0038F770 38 A5 98 8E */ addi r5, r5, 0x0003988E@l
|
||||
/* 80392814 0038F774 7C C6 A6 70 */ srawi r6, r6, 0x14
|
||||
/* 80392818 0038F778 7C 08 28 00 */ cmpw r8, r5
|
||||
/* 8039281C 0038F77C 65 07 3F F0 */ oris r7, r8, 0x3ff0
|
||||
/* 80392820 0038F780 7D 46 52 14 */ add r10, r6, r10
|
||||
/* 80392824 0038F784 39 4A FC 01 */ addi r10, r10, -1023
|
||||
/* 80392828 0038F788 41 81 00 0C */ bgt lbl_80392834
|
||||
/* 8039282C 0038F78C 39 20 00 00 */ li r9, 0
|
||||
/* 80392830 0038F790 48 00 00 28 */ b lbl_80392858
|
||||
lbl_80392834:
|
||||
/* 80392834 0038F794 3C A0 00 0C */ lis r5, 0x000BB67A@ha
|
||||
/* 80392838 0038F798 38 A5 B6 7A */ addi r5, r5, 0x000BB67A@l
|
||||
/* 8039283C 0038F79C 7C 08 28 00 */ cmpw r8, r5
|
||||
/* 80392840 0038F7A0 40 80 00 0C */ bge lbl_8039284C
|
||||
/* 80392844 0038F7A4 39 20 00 01 */ li r9, 1
|
||||
/* 80392848 0038F7A8 48 00 00 10 */ b lbl_80392858
|
||||
lbl_8039284C:
|
||||
/* 8039284C 0038F7AC 3C E7 FF F0 */ addis r7, r7, 0xfff0
|
||||
/* 80392850 0038F7B0 39 20 00 00 */ li r9, 0
|
||||
/* 80392854 0038F7B4 39 4A 00 01 */ addi r10, r10, 1
|
||||
lbl_80392858:
|
||||
/* 80392858 0038F7B8 90 E1 00 48 */ stw r7, 0x48(r1)
|
||||
/* 8039285C 0038F7BC 55 25 18 38 */ slwi r5, r9, 3
|
||||
/* 80392860 0038F7C0 7D 00 2A 14 */ add r8, r0, r5
|
||||
/* 80392864 0038F7C4 7C E0 0E 70 */ srawi r0, r7, 1
|
||||
/* 80392868 0038F7C8 C8 E1 00 48 */ lfd f7, 0x48(r1)
|
||||
/* 8039286C 0038F7CC 64 06 20 00 */ oris r6, r0, 0x2000
|
||||
/* 80392870 0038F7D0 C8 C8 00 00 */ lfd f6, 0(r8)
|
||||
/* 80392874 0038F7D4 6D 45 80 00 */ xoris r5, r10, 0x8000
|
||||
/* 80392878 0038F7D8 C8 02 D2 18 */ lfd f0, lbl_805AEF38@sda21(r2)
|
||||
/* 8039287C 0038F7DC 3C 00 43 30 */ lis r0, 0x4330
|
||||
/* 80392880 0038F7E0 FC 27 30 2A */ fadd f1, f7, f6
|
||||
/* 80392884 0038F7E4 C8 42 D2 10 */ lfd f2, lbl_805AEF30@sda21(r2)
|
||||
/* 80392888 0038F7E8 FD 67 30 28 */ fsub f11, f7, f6
|
||||
/* 8039288C 0038F7EC C8 A2 D2 90 */ lfd f5, lbl_805AEFB0@sda21(r2)
|
||||
/* 80392890 0038F7F0 C8 82 D2 88 */ lfd f4, lbl_805AEFA8@sda21(r2)
|
||||
/* 80392894 0038F7F4 3C E6 00 08 */ addis r7, r6, 8
|
||||
/* 80392898 0038F7F8 FF E2 08 24 */ fdiv f31, f2, f1
|
||||
/* 8039289C 0038F7FC 55 26 90 1A */ slwi r6, r9, 0x12
|
||||
/* 803928A0 0038F800 C8 62 D2 80 */ lfd f3, lbl_805AEFA0@sda21(r2)
|
||||
/* 803928A4 0038F804 7C C7 32 14 */ add r6, r7, r6
|
||||
/* 803928A8 0038F808 D8 01 00 18 */ stfd f0, 0x18(r1)
|
||||
/* 803928AC 0038F80C 38 E0 00 00 */ li r7, 0
|
||||
/* 803928B0 0038F810 FC 0B 07 F2 */ fmul f0, f11, f31
|
||||
/* 803928B4 0038F814 90 C1 00 18 */ stw r6, 0x18(r1)
|
||||
/* 803928B8 0038F818 C8 42 D2 78 */ lfd f2, lbl_805AEF98@sda21(r2)
|
||||
/* 803928BC 0038F81C C9 41 00 18 */ lfd f10, 0x18(r1)
|
||||
/* 803928C0 0038F820 C8 22 D2 70 */ lfd f1, lbl_805AEF90@sda21(r2)
|
||||
/* 803928C4 0038F824 FF A0 00 32 */ fmul f29, f0, f0
|
||||
/* 803928C8 0038F828 D8 01 00 20 */ stfd f0, 0x20(r1)
|
||||
/* 803928CC 0038F82C FC CA 30 28 */ fsub f6, f10, f6
|
||||
/* 803928D0 0038F830 C9 02 D2 68 */ lfd f8, lbl_805AEF88@sda21(r2)
|
||||
/* 803928D4 0038F834 90 E1 00 24 */ stw r7, 0x24(r1)
|
||||
/* 803928D8 0038F838 FC A5 27 7A */ fmadd f5, f5, f29, f4
|
||||
/* 803928DC 0038F83C C9 A1 00 20 */ lfd f13, 0x20(r1)
|
||||
/* 803928E0 0038F840 FD 87 30 28 */ fsub f12, f7, f6
|
||||
/* 803928E4 0038F844 C9 22 D2 28 */ lfd f9, lbl_805AEF48@sda21(r2)
|
||||
/* 803928E8 0038F848 FC CD 5A BC */ fnmsub f6, f13, f10, f11
|
||||
/* 803928EC 0038F84C C8 82 D2 A8 */ lfd f4, lbl_805AEFC8@sda21(r2)
|
||||
/* 803928F0 0038F850 FC 7D 19 7A */ fmadd f3, f29, f5, f3
|
||||
/* 803928F4 0038F854 C8 A2 D2 A0 */ lfd f5, lbl_805AEFC0@sda21(r2)
|
||||
/* 803928F8 0038F858 C8 E2 D2 98 */ lfd f7, lbl_805AEFB8@sda21(r2)
|
||||
/* 803928FC 0038F85C FD 8D 33 3C */ fnmsub f12, f13, f12, f6
|
||||
/* 80392900 0038F860 C8 C8 00 20 */ lfd f6, 0x20(r8)
|
||||
/* 80392904 0038F864 FC 5D 10 FA */ fmadd f2, f29, f3, f2
|
||||
/* 80392908 0038F868 90 A1 00 5C */ stw r5, 0x5c(r1)
|
||||
/* 8039290C 0038F86C FF CD 03 72 */ fmul f30, f13, f13
|
||||
/* 80392910 0038F870 C8 62 D3 18 */ lfd f3, lbl_805AF038@sda21(r2)
|
||||
/* 80392914 0038F874 90 01 00 58 */ stw r0, 0x58(r1)
|
||||
/* 80392918 0038F878 FD 5D 08 BA */ fmadd f10, f29, f2, f1
|
||||
/* 8039291C 0038F87C C8 41 00 58 */ lfd f2, 0x58(r1)
|
||||
/* 80392920 0038F880 FD 7D 07 72 */ fmul f11, f29, f29
|
||||
/* 80392924 0038F884 C8 28 00 10 */ lfd f1, 0x10(r8)
|
||||
/* 80392928 0038F888 FD 1D 42 BA */ fmadd f8, f29, f10, f8
|
||||
/* 8039292C 0038F88C FD 9F 03 32 */ fmul f12, f31, f12
|
||||
/* 80392930 0038F890 FD 6B 02 32 */ fmul f11, f11, f8
|
||||
/* 80392934 0038F894 FD 4D 00 2A */ fadd f10, f13, f0
|
||||
/* 80392938 0038F898 FD 09 F0 2A */ fadd f8, f9, f30
|
||||
/* 8039293C 0038F89C FC 42 18 28 */ fsub f2, f2, f3
|
||||
/* 80392940 0038F8A0 FD 6C 5A BA */ fmadd f11, f12, f10, f11
|
||||
/* 80392944 0038F8A4 D8 41 00 28 */ stfd f2, 0x28(r1)
|
||||
/* 80392948 0038F8A8 FC 68 58 2A */ fadd f3, f8, f11
|
||||
/* 8039294C 0038F8AC D8 61 00 18 */ stfd f3, 0x18(r1)
|
||||
/* 80392950 0038F8B0 90 E1 00 1C */ stw r7, 0x1c(r1)
|
||||
/* 80392954 0038F8B4 C9 01 00 18 */ lfd f8, 0x18(r1)
|
||||
/* 80392958 0038F8B8 FC 68 48 28 */ fsub f3, f8, f9
|
||||
/* 8039295C 0038F8BC FD 2D 02 32 */ fmul f9, f13, f8
|
||||
/* 80392960 0038F8C0 FC 63 F0 28 */ fsub f3, f3, f30
|
||||
/* 80392964 0038F8C4 FC 6B 18 28 */ fsub f3, f11, f3
|
||||
/* 80392968 0038F8C8 FC 03 00 32 */ fmul f0, f3, f0
|
||||
/* 8039296C 0038F8CC FD 0C 02 3A */ fmadd f8, f12, f8, f0
|
||||
/* 80392970 0038F8D0 FC 09 40 2A */ fadd f0, f9, f8
|
||||
/* 80392974 0038F8D4 D8 01 00 40 */ stfd f0, 0x40(r1)
|
||||
/* 80392978 0038F8D8 90 E1 00 44 */ stw r7, 0x44(r1)
|
||||
/* 8039297C 0038F8DC C8 61 00 40 */ lfd f3, 0x40(r1)
|
||||
/* 80392980 0038F8E0 FC 03 48 28 */ fsub f0, f3, f9
|
||||
/* 80392984 0038F8E4 FC E7 00 F2 */ fmul f7, f7, f3
|
||||
/* 80392988 0038F8E8 FC 08 00 28 */ fsub f0, f8, f0
|
||||
/* 8039298C 0038F8EC FC 04 00 32 */ fmul f0, f4, f0
|
||||
/* 80392990 0038F8F0 FC 05 00 FA */ fmadd f0, f5, f3, f0
|
||||
/* 80392994 0038F8F4 FC 66 00 2A */ fadd f3, f6, f0
|
||||
/* 80392998 0038F8F8 FC 07 18 2A */ fadd f0, f7, f3
|
||||
/* 8039299C 0038F8FC FC 00 08 2A */ fadd f0, f0, f1
|
||||
/* 803929A0 0038F900 FC 02 00 2A */ fadd f0, f2, f0
|
||||
/* 803929A4 0038F904 D8 01 00 30 */ stfd f0, 0x30(r1)
|
||||
/* 803929A8 0038F908 90 E1 00 34 */ stw r7, 0x34(r1)
|
||||
/* 803929AC 0038F90C C8 01 00 30 */ lfd f0, 0x30(r1)
|
||||
/* 803929B0 0038F910 FC 00 10 28 */ fsub f0, f0, f2
|
||||
/* 803929B4 0038F914 FC 00 08 28 */ fsub f0, f0, f1
|
||||
/* 803929B8 0038F918 FC 00 38 28 */ fsub f0, f0, f7
|
||||
/* 803929BC 0038F91C FC 03 00 28 */ fsub f0, f3, f0
|
||||
lbl_803929C0:
|
||||
/* 803929C0 0038F920 38 04 FF FF */ addi r0, r4, -1
|
||||
/* 803929C4 0038F924 CB E2 D2 10 */ lfd f31, lbl_805AEF30@sda21(r2)
|
||||
/* 803929C8 0038F928 7C 60 03 79 */ or. r0, r3, r0
|
||||
/* 803929CC 0038F92C 40 82 00 08 */ bne lbl_803929D4
|
||||
/* 803929D0 0038F930 CB E2 D2 B0 */ lfd f31, lbl_805AEFD0@sda21(r2)
|
||||
lbl_803929D4:
|
||||
/* 803929D4 0038F934 C8 21 00 10 */ lfd f1, 0x10(r1)
|
||||
/* 803929D8 0038F938 38 60 00 00 */ li r3, 0
|
||||
/* 803929DC 0038F93C C8 61 00 30 */ lfd f3, 0x30(r1)
|
||||
/* 803929E0 0038F940 3C 00 40 90 */ lis r0, 0x4090
|
||||
/* 803929E4 0038F944 D8 21 00 38 */ stfd f1, 0x38(r1)
|
||||
/* 803929E8 0038F948 FC 01 00 32 */ fmul f0, f1, f0
|
||||
/* 803929EC 0038F94C 90 61 00 3C */ stw r3, 0x3c(r1)
|
||||
/* 803929F0 0038F950 C8 41 00 38 */ lfd f2, 0x38(r1)
|
||||
/* 803929F4 0038F954 FC 21 10 28 */ fsub f1, f1, f2
|
||||
/* 803929F8 0038F958 FC 42 00 F2 */ fmul f2, f2, f3
|
||||
/* 803929FC 0038F95C FD 83 00 7A */ fmadd f12, f3, f1, f0
|
||||
/* 80392A00 0038F960 D8 41 00 40 */ stfd f2, 0x40(r1)
|
||||
/* 80392A04 0038F964 FC 0C 10 2A */ fadd f0, f12, f2
|
||||
/* 80392A08 0038F968 D8 01 00 50 */ stfd f0, 0x50(r1)
|
||||
/* 80392A0C 0038F96C 80 C1 00 50 */ lwz r6, 0x50(r1)
|
||||
/* 80392A10 0038F970 80 A1 00 54 */ lwz r5, 0x54(r1)
|
||||
/* 80392A14 0038F974 7C 06 00 00 */ cmpw r6, r0
|
||||
/* 80392A18 0038F978 41 80 00 44 */ blt lbl_80392A5C
|
||||
/* 80392A1C 0038F97C 3C 06 BF 70 */ addis r0, r6, 0xbf70
|
||||
/* 80392A20 0038F980 7C 00 2B 79 */ or. r0, r0, r5
|
||||
/* 80392A24 0038F984 41 82 00 14 */ beq lbl_80392A38
|
||||
/* 80392A28 0038F988 C8 22 D2 B8 */ lfd f1, lbl_805AEFD8@sda21(r2)
|
||||
/* 80392A2C 0038F98C FC 01 07 F2 */ fmul f0, f1, f31
|
||||
/* 80392A30 0038F990 FC 21 00 32 */ fmul f1, f1, f0
|
||||
/* 80392A34 0038F994 48 00 01 D0 */ b lbl_80392C04
|
||||
lbl_80392A38:
|
||||
/* 80392A38 0038F998 C8 22 D2 C0 */ lfd f1, lbl_805AEFE0@sda21(r2)
|
||||
/* 80392A3C 0038F99C FC 00 10 28 */ fsub f0, f0, f2
|
||||
/* 80392A40 0038F9A0 FC 21 60 2A */ fadd f1, f1, f12
|
||||
/* 80392A44 0038F9A4 FC 01 00 40 */ fcmpo cr0, f1, f0
|
||||
/* 80392A48 0038F9A8 40 81 00 68 */ ble lbl_80392AB0
|
||||
/* 80392A4C 0038F9AC C8 22 D2 B8 */ lfd f1, lbl_805AEFD8@sda21(r2)
|
||||
/* 80392A50 0038F9B0 FC 01 07 F2 */ fmul f0, f1, f31
|
||||
/* 80392A54 0038F9B4 FC 21 00 32 */ fmul f1, f1, f0
|
||||
/* 80392A58 0038F9B8 48 00 01 AC */ b lbl_80392C04
|
||||
lbl_80392A5C:
|
||||
/* 80392A5C 0038F9BC 3C 60 40 91 */ lis r3, 0x4090CC00@ha
|
||||
/* 80392A60 0038F9C0 54 C4 00 7E */ clrlwi r4, r6, 1
|
||||
/* 80392A64 0038F9C4 38 03 CC 00 */ addi r0, r3, 0x4090CC00@l
|
||||
/* 80392A68 0038F9C8 7C 04 00 00 */ cmpw r4, r0
|
||||
/* 80392A6C 0038F9CC 41 80 00 44 */ blt lbl_80392AB0
|
||||
/* 80392A70 0038F9D0 3C 66 3F 6F */ addis r3, r6, 0x3f6f
|
||||
/* 80392A74 0038F9D4 38 03 34 00 */ addi r0, r3, 0x3400
|
||||
/* 80392A78 0038F9D8 7C 00 2B 79 */ or. r0, r0, r5
|
||||
/* 80392A7C 0038F9DC 41 82 00 14 */ beq lbl_80392A90
|
||||
/* 80392A80 0038F9E0 C8 22 D2 C8 */ lfd f1, lbl_805AEFE8@sda21(r2)
|
||||
/* 80392A84 0038F9E4 FC 01 07 F2 */ fmul f0, f1, f31
|
||||
/* 80392A88 0038F9E8 FC 21 00 32 */ fmul f1, f1, f0
|
||||
/* 80392A8C 0038F9EC 48 00 01 78 */ b lbl_80392C04
|
||||
lbl_80392A90:
|
||||
/* 80392A90 0038F9F0 FC 00 10 28 */ fsub f0, f0, f2
|
||||
/* 80392A94 0038F9F4 FC 0C 00 40 */ fcmpo cr0, f12, f0
|
||||
/* 80392A98 0038F9F8 4C 40 13 82 */ cror 2, 0, 2
|
||||
/* 80392A9C 0038F9FC 40 82 00 14 */ bne lbl_80392AB0
|
||||
/* 80392AA0 0038FA00 C8 22 D2 C8 */ lfd f1, lbl_805AEFE8@sda21(r2)
|
||||
/* 80392AA4 0038FA04 FC 01 07 F2 */ fmul f0, f1, f31
|
||||
/* 80392AA8 0038FA08 FC 21 00 32 */ fmul f1, f1, f0
|
||||
/* 80392AAC 0038FA0C 48 00 01 58 */ b lbl_80392C04
|
||||
lbl_80392AB0:
|
||||
/* 80392AB0 0038FA10 54 C3 00 7E */ clrlwi r3, r6, 1
|
||||
/* 80392AB4 0038FA14 3C 00 3F E0 */ lis r0, 0x3fe0
|
||||
/* 80392AB8 0038FA18 7C 03 00 00 */ cmpw r3, r0
|
||||
/* 80392ABC 0038FA1C 54 C4 65 7E */ rlwinm r4, r6, 0xc, 0x15, 0x1f
|
||||
/* 80392AC0 0038FA20 38 60 00 00 */ li r3, 0
|
||||
/* 80392AC4 0038FA24 40 81 00 64 */ ble lbl_80392B28
|
||||
/* 80392AC8 0038FA28 3C 60 00 10 */ lis r3, 0x000FFFFF@ha
|
||||
/* 80392ACC 0038FA2C 38 04 FC 02 */ addi r0, r4, -1022
|
||||
/* 80392AD0 0038FA30 7C 60 06 30 */ sraw r0, r3, r0
|
||||
/* 80392AD4 0038FA34 C8 02 D2 18 */ lfd f0, lbl_805AEF38@sda21(r2)
|
||||
/* 80392AD8 0038FA38 7C E6 02 14 */ add r7, r6, r0
|
||||
/* 80392ADC 0038FA3C 38 63 FF FF */ addi r3, r3, 0x000FFFFF@l
|
||||
/* 80392AE0 0038FA40 54 E0 00 7E */ clrlwi r0, r7, 1
|
||||
/* 80392AE4 0038FA44 D8 01 00 28 */ stfd f0, 0x28(r1)
|
||||
/* 80392AE8 0038FA48 7C 04 A6 70 */ srawi r4, r0, 0x14
|
||||
/* 80392AEC 0038FA4C 54 E0 03 3E */ clrlwi r0, r7, 0xc
|
||||
/* 80392AF0 0038FA50 38 A4 FC 01 */ addi r5, r4, -1023
|
||||
/* 80392AF4 0038FA54 2C 06 00 00 */ cmpwi r6, 0
|
||||
/* 80392AF8 0038FA58 7C 64 2E 30 */ sraw r4, r3, r5
|
||||
/* 80392AFC 0038FA5C 64 03 00 10 */ oris r3, r0, 0x10
|
||||
/* 80392B00 0038FA60 7C E4 20 78 */ andc r4, r7, r4
|
||||
/* 80392B04 0038FA64 20 05 00 14 */ subfic r0, r5, 0x14
|
||||
/* 80392B08 0038FA68 90 81 00 28 */ stw r4, 0x28(r1)
|
||||
/* 80392B0C 0038FA6C 7C 63 06 30 */ sraw r3, r3, r0
|
||||
/* 80392B10 0038FA70 40 80 00 08 */ bge lbl_80392B18
|
||||
/* 80392B14 0038FA74 7C 63 00 D0 */ neg r3, r3
|
||||
lbl_80392B18:
|
||||
/* 80392B18 0038FA78 C8 21 00 40 */ lfd f1, 0x40(r1)
|
||||
/* 80392B1C 0038FA7C C8 01 00 28 */ lfd f0, 0x28(r1)
|
||||
/* 80392B20 0038FA80 FC 01 00 28 */ fsub f0, f1, f0
|
||||
/* 80392B24 0038FA84 D8 01 00 40 */ stfd f0, 0x40(r1)
|
||||
lbl_80392B28:
|
||||
/* 80392B28 0038FA88 C8 41 00 40 */ lfd f2, 0x40(r1)
|
||||
/* 80392B2C 0038FA8C 38 00 00 00 */ li r0, 0
|
||||
/* 80392B30 0038FA90 C8 22 D2 E0 */ lfd f1, lbl_805AF000@sda21(r2)
|
||||
/* 80392B34 0038FA94 54 64 A0 16 */ slwi r4, r3, 0x14
|
||||
/* 80392B38 0038FA98 FC 0C 10 2A */ fadd f0, f12, f2
|
||||
/* 80392B3C 0038FA9C C9 42 D2 D0 */ lfd f10, lbl_805AEFF0@sda21(r2)
|
||||
/* 80392B40 0038FAA0 C9 22 D2 D8 */ lfd f9, lbl_805AEFF8@sda21(r2)
|
||||
/* 80392B44 0038FAA4 C8 C2 D3 08 */ lfd f6, lbl_805AF028@sda21(r2)
|
||||
/* 80392B48 0038FAA8 D8 01 00 28 */ stfd f0, 0x28(r1)
|
||||
/* 80392B4C 0038FAAC C8 A2 D3 00 */ lfd f5, lbl_805AF020@sda21(r2)
|
||||
/* 80392B50 0038FAB0 90 01 00 2C */ stw r0, 0x2c(r1)
|
||||
/* 80392B54 0038FAB4 C8 02 D2 F8 */ lfd f0, lbl_805AF018@sda21(r2)
|
||||
/* 80392B58 0038FAB8 C9 61 00 28 */ lfd f11, 0x28(r1)
|
||||
/* 80392B5C 0038FABC C8 82 D2 F0 */ lfd f4, lbl_805AF010@sda21(r2)
|
||||
/* 80392B60 0038FAC0 FD 0B 10 28 */ fsub f8, f11, f2
|
||||
/* 80392B64 0038FAC4 C8 62 D2 E8 */ lfd f3, lbl_805AF008@sda21(r2)
|
||||
/* 80392B68 0038FAC8 FC E1 02 F2 */ fmul f7, f1, f11
|
||||
/* 80392B6C 0038FACC C8 42 D3 10 */ lfd f2, lbl_805AF030@sda21(r2)
|
||||
/* 80392B70 0038FAD0 C8 22 D2 10 */ lfd f1, lbl_805AEF30@sda21(r2)
|
||||
/* 80392B74 0038FAD4 FD 0C 40 28 */ fsub f8, f12, f8
|
||||
/* 80392B78 0038FAD8 FD 4A 02 F2 */ fmul f10, f10, f11
|
||||
/* 80392B7C 0038FADC FD 69 3A 3A */ fmadd f11, f9, f8, f7
|
||||
/* 80392B80 0038FAE0 FD 2A 58 2A */ fadd f9, f10, f11
|
||||
/* 80392B84 0038FAE4 FC E9 02 72 */ fmul f7, f9, f9
|
||||
/* 80392B88 0038FAE8 D9 21 00 50 */ stfd f9, 0x50(r1)
|
||||
/* 80392B8C 0038FAEC FD 09 50 28 */ fsub f8, f9, f10
|
||||
/* 80392B90 0038FAF0 FC A6 29 FA */ fmadd f5, f6, f7, f5
|
||||
/* 80392B94 0038FAF4 D8 E1 00 28 */ stfd f7, 0x28(r1)
|
||||
/* 80392B98 0038FAF8 FC CB 40 28 */ fsub f6, f11, f8
|
||||
/* 80392B9C 0038FAFC FC A7 01 7A */ fmadd f5, f7, f5, f0
|
||||
/* 80392BA0 0038FB00 FC 09 31 BA */ fmadd f0, f9, f6, f6
|
||||
/* 80392BA4 0038FB04 FC 87 21 7A */ fmadd f4, f7, f5, f4
|
||||
/* 80392BA8 0038FB08 FC 67 19 3A */ fmadd f3, f7, f4, f3
|
||||
/* 80392BAC 0038FB0C FC 67 00 F2 */ fmul f3, f7, f3
|
||||
/* 80392BB0 0038FB10 FC 89 18 28 */ fsub f4, f9, f3
|
||||
/* 80392BB4 0038FB14 FC 69 01 32 */ fmul f3, f9, f4
|
||||
/* 80392BB8 0038FB18 D8 81 00 30 */ stfd f4, 0x30(r1)
|
||||
/* 80392BBC 0038FB1C FC 44 10 28 */ fsub f2, f4, f2
|
||||
/* 80392BC0 0038FB20 FC 43 10 24 */ fdiv f2, f3, f2
|
||||
/* 80392BC4 0038FB24 FC 02 00 28 */ fsub f0, f2, f0
|
||||
/* 80392BC8 0038FB28 FC 00 48 28 */ fsub f0, f0, f9
|
||||
/* 80392BCC 0038FB2C FC 21 00 28 */ fsub f1, f1, f0
|
||||
/* 80392BD0 0038FB30 D8 21 00 50 */ stfd f1, 0x50(r1)
|
||||
/* 80392BD4 0038FB34 80 01 00 50 */ lwz r0, 0x50(r1)
|
||||
/* 80392BD8 0038FB38 7C 00 22 14 */ add r0, r0, r4
|
||||
/* 80392BDC 0038FB3C 7C 00 A6 71 */ srawi. r0, r0, 0x14
|
||||
/* 80392BE0 0038FB40 41 81 00 10 */ bgt lbl_80392BF0
|
||||
/* 80392BE4 0038FB44 48 00 1A B5 */ bl ldexp
|
||||
/* 80392BE8 0038FB48 D8 21 00 50 */ stfd f1, 0x50(r1)
|
||||
/* 80392BEC 0038FB4C 48 00 00 10 */ b lbl_80392BFC
|
||||
lbl_80392BF0:
|
||||
/* 80392BF0 0038FB50 80 01 00 50 */ lwz r0, 0x50(r1)
|
||||
/* 80392BF4 0038FB54 7C 00 22 14 */ add r0, r0, r4
|
||||
/* 80392BF8 0038FB58 90 01 00 50 */ stw r0, 0x50(r1)
|
||||
lbl_80392BFC:
|
||||
/* 80392BFC 0038FB5C C8 01 00 50 */ lfd f0, 0x50(r1)
|
||||
/* 80392C00 0038FB60 FC 3F 00 32 */ fmul f1, f31, f0
|
||||
lbl_80392C04:
|
||||
/* 80392C04 0038FB64 E3 E1 00 88 */ psq_l f31, 136(r1), 0, qr0
|
||||
/* 80392C08 0038FB68 CB E1 00 80 */ lfd f31, 0x80(r1)
|
||||
/* 80392C0C 0038FB6C E3 C1 00 78 */ psq_l f30, 120(r1), 0, qr0
|
||||
/* 80392C10 0038FB70 CB C1 00 70 */ lfd f30, 0x70(r1)
|
||||
/* 80392C14 0038FB74 E3 A1 00 68 */ psq_l f29, 104(r1), 0, qr0
|
||||
/* 80392C18 0038FB78 80 01 00 94 */ lwz r0, 0x94(r1)
|
||||
/* 80392C1C 0038FB7C CB A1 00 60 */ lfd f29, 0x60(r1)
|
||||
/* 80392C20 0038FB80 7C 08 03 A6 */ mtlr r0
|
||||
/* 80392C24 0038FB84 38 21 00 90 */ addi r1, r1, 0x90
|
||||
/* 80392C28 0038FB88 4E 80 00 20 */ blr
|
|
@ -0,0 +1,252 @@
|
|||
.include "macros.inc"
|
||||
|
||||
.section .text, "ax"
|
||||
|
||||
.global __ieee754_rem_pio2
|
||||
__ieee754_rem_pio2:
|
||||
/* 80392C2C 0038FB8C 94 21 FF A0 */ stwu r1, -0x60(r1)
|
||||
/* 80392C30 0038FB90 7C 08 02 A6 */ mflr r0
|
||||
/* 80392C34 0038FB94 3C 80 3F E9 */ lis r4, 0x3FE921FB@ha
|
||||
/* 80392C38 0038FB98 90 01 00 64 */ stw r0, 0x64(r1)
|
||||
/* 80392C3C 0038FB9C 38 04 21 FB */ addi r0, r4, 0x3FE921FB@l
|
||||
/* 80392C40 0038FBA0 93 E1 00 5C */ stw r31, 0x5c(r1)
|
||||
/* 80392C44 0038FBA4 D8 21 00 08 */ stfd f1, 8(r1)
|
||||
/* 80392C48 0038FBA8 83 E1 00 08 */ lwz r31, 8(r1)
|
||||
/* 80392C4C 0038FBAC 93 C1 00 58 */ stw r30, 0x58(r1)
|
||||
/* 80392C50 0038FBB0 7C 7E 1B 78 */ mr r30, r3
|
||||
/* 80392C54 0038FBB4 57 E6 00 7E */ clrlwi r6, r31, 1
|
||||
/* 80392C58 0038FBB8 7C 06 00 00 */ cmpw r6, r0
|
||||
/* 80392C5C 0038FBBC 41 81 00 18 */ bgt lbl_80392C74
|
||||
/* 80392C60 0038FBC0 D8 3E 00 00 */ stfd f1, 0(r30)
|
||||
/* 80392C64 0038FBC4 38 60 00 00 */ li r3, 0
|
||||
/* 80392C68 0038FBC8 C8 02 D3 20 */ lfd f0, lbl_805AF040@sda21(r2)
|
||||
/* 80392C6C 0038FBCC D8 1E 00 08 */ stfd f0, 8(r30)
|
||||
/* 80392C70 0038FBD0 48 00 03 44 */ b lbl_80392FB4
|
||||
lbl_80392C74:
|
||||
/* 80392C74 0038FBD4 3C 60 40 03 */ lis r3, 0x4002D97C@ha
|
||||
/* 80392C78 0038FBD8 38 03 D9 7C */ addi r0, r3, 0x4002D97C@l
|
||||
/* 80392C7C 0038FBDC 7C 06 00 00 */ cmpw r6, r0
|
||||
/* 80392C80 0038FBE0 40 80 00 DC */ bge lbl_80392D5C
|
||||
/* 80392C84 0038FBE4 2C 1F 00 00 */ cmpwi r31, 0
|
||||
/* 80392C88 0038FBE8 40 81 00 6C */ ble lbl_80392CF4
|
||||
/* 80392C8C 0038FBEC C8 02 D3 28 */ lfd f0, lbl_805AF048@sda21(r2)
|
||||
/* 80392C90 0038FBF0 3C 06 C0 07 */ addis r0, r6, 0xc007
|
||||
/* 80392C94 0038FBF4 28 00 21 FB */ cmplwi r0, 0x21fb
|
||||
/* 80392C98 0038FBF8 FC 41 00 28 */ fsub f2, f1, f0
|
||||
/* 80392C9C 0038FBFC D8 41 00 10 */ stfd f2, 0x10(r1)
|
||||
/* 80392CA0 0038FC00 41 82 00 24 */ beq lbl_80392CC4
|
||||
/* 80392CA4 0038FC04 C8 22 D3 30 */ lfd f1, lbl_805AF050@sda21(r2)
|
||||
/* 80392CA8 0038FC08 FC 02 08 28 */ fsub f0, f2, f1
|
||||
/* 80392CAC 0038FC0C D8 1E 00 00 */ stfd f0, 0(r30)
|
||||
/* 80392CB0 0038FC10 C8 1E 00 00 */ lfd f0, 0(r30)
|
||||
/* 80392CB4 0038FC14 FC 02 00 28 */ fsub f0, f2, f0
|
||||
/* 80392CB8 0038FC18 FC 00 08 28 */ fsub f0, f0, f1
|
||||
/* 80392CBC 0038FC1C D8 1E 00 08 */ stfd f0, 8(r30)
|
||||
/* 80392CC0 0038FC20 48 00 00 2C */ b lbl_80392CEC
|
||||
lbl_80392CC4:
|
||||
/* 80392CC4 0038FC24 C8 02 D3 38 */ lfd f0, lbl_805AF058@sda21(r2)
|
||||
/* 80392CC8 0038FC28 C8 22 D3 40 */ lfd f1, lbl_805AF060@sda21(r2)
|
||||
/* 80392CCC 0038FC2C FC 42 00 28 */ fsub f2, f2, f0
|
||||
/* 80392CD0 0038FC30 FC 02 08 28 */ fsub f0, f2, f1
|
||||
/* 80392CD4 0038FC34 D8 41 00 10 */ stfd f2, 0x10(r1)
|
||||
/* 80392CD8 0038FC38 D8 1E 00 00 */ stfd f0, 0(r30)
|
||||
/* 80392CDC 0038FC3C C8 1E 00 00 */ lfd f0, 0(r30)
|
||||
/* 80392CE0 0038FC40 FC 02 00 28 */ fsub f0, f2, f0
|
||||
/* 80392CE4 0038FC44 FC 00 08 28 */ fsub f0, f0, f1
|
||||
/* 80392CE8 0038FC48 D8 1E 00 08 */ stfd f0, 8(r30)
|
||||
lbl_80392CEC:
|
||||
/* 80392CEC 0038FC4C 38 60 00 01 */ li r3, 1
|
||||
/* 80392CF0 0038FC50 48 00 02 C4 */ b lbl_80392FB4
|
||||
lbl_80392CF4:
|
||||
/* 80392CF4 0038FC54 C8 02 D3 28 */ lfd f0, lbl_805AF048@sda21(r2)
|
||||
/* 80392CF8 0038FC58 3C 06 C0 07 */ addis r0, r6, 0xc007
|
||||
/* 80392CFC 0038FC5C 28 00 21 FB */ cmplwi r0, 0x21fb
|
||||
/* 80392D00 0038FC60 FC 40 08 2A */ fadd f2, f0, f1
|
||||
/* 80392D04 0038FC64 D8 41 00 10 */ stfd f2, 0x10(r1)
|
||||
/* 80392D08 0038FC68 41 82 00 24 */ beq lbl_80392D2C
|
||||
/* 80392D0C 0038FC6C C8 22 D3 30 */ lfd f1, lbl_805AF050@sda21(r2)
|
||||
/* 80392D10 0038FC70 FC 01 10 2A */ fadd f0, f1, f2
|
||||
/* 80392D14 0038FC74 D8 1E 00 00 */ stfd f0, 0(r30)
|
||||
/* 80392D18 0038FC78 C8 1E 00 00 */ lfd f0, 0(r30)
|
||||
/* 80392D1C 0038FC7C FC 02 00 28 */ fsub f0, f2, f0
|
||||
/* 80392D20 0038FC80 FC 01 00 2A */ fadd f0, f1, f0
|
||||
/* 80392D24 0038FC84 D8 1E 00 08 */ stfd f0, 8(r30)
|
||||
/* 80392D28 0038FC88 48 00 00 2C */ b lbl_80392D54
|
||||
lbl_80392D2C:
|
||||
/* 80392D2C 0038FC8C C8 02 D3 38 */ lfd f0, lbl_805AF058@sda21(r2)
|
||||
/* 80392D30 0038FC90 C8 22 D3 40 */ lfd f1, lbl_805AF060@sda21(r2)
|
||||
/* 80392D34 0038FC94 FC 42 00 2A */ fadd f2, f2, f0
|
||||
/* 80392D38 0038FC98 FC 01 10 2A */ fadd f0, f1, f2
|
||||
/* 80392D3C 0038FC9C D8 41 00 10 */ stfd f2, 0x10(r1)
|
||||
/* 80392D40 0038FCA0 D8 1E 00 00 */ stfd f0, 0(r30)
|
||||
/* 80392D44 0038FCA4 C8 1E 00 00 */ lfd f0, 0(r30)
|
||||
/* 80392D48 0038FCA8 FC 02 00 28 */ fsub f0, f2, f0
|
||||
/* 80392D4C 0038FCAC FC 01 00 2A */ fadd f0, f1, f0
|
||||
/* 80392D50 0038FCB0 D8 1E 00 08 */ stfd f0, 8(r30)
|
||||
lbl_80392D54:
|
||||
/* 80392D54 0038FCB4 38 60 FF FF */ li r3, -1
|
||||
/* 80392D58 0038FCB8 48 00 02 5C */ b lbl_80392FB4
|
||||
lbl_80392D5C:
|
||||
/* 80392D5C 0038FCBC 3C 60 41 39 */ lis r3, 0x413921FB@ha
|
||||
/* 80392D60 0038FCC0 38 03 21 FB */ addi r0, r3, 0x413921FB@l
|
||||
/* 80392D64 0038FCC4 7C 06 00 00 */ cmpw r6, r0
|
||||
/* 80392D68 0038FCC8 41 81 01 3C */ bgt lbl_80392EA4
|
||||
/* 80392D6C 0038FCCC FC 80 0A 10 */ fabs f4, f1
|
||||
/* 80392D70 0038FCD0 3C 00 43 30 */ lis r0, 0x4330
|
||||
/* 80392D74 0038FCD4 C8 22 D3 50 */ lfd f1, lbl_805AF070@sda21(r2)
|
||||
/* 80392D78 0038FCD8 C8 02 D3 48 */ lfd f0, lbl_805AF068@sda21(r2)
|
||||
/* 80392D7C 0038FCDC 90 01 00 38 */ stw r0, 0x38(r1)
|
||||
/* 80392D80 0038FCE0 FC 41 01 3A */ fmadd f2, f1, f4, f0
|
||||
/* 80392D84 0038FCE4 C8 62 D3 70 */ lfd f3, lbl_805AF090@sda21(r2)
|
||||
/* 80392D88 0038FCE8 C8 22 D3 28 */ lfd f1, lbl_805AF048@sda21(r2)
|
||||
/* 80392D8C 0038FCEC C8 02 D3 30 */ lfd f0, lbl_805AF050@sda21(r2)
|
||||
/* 80392D90 0038FCF0 FC 40 10 1E */ fctiwz f2, f2
|
||||
/* 80392D94 0038FCF4 D8 41 00 30 */ stfd f2, 0x30(r1)
|
||||
/* 80392D98 0038FCF8 80 61 00 34 */ lwz r3, 0x34(r1)
|
||||
/* 80392D9C 0038FCFC 6C 60 80 00 */ xoris r0, r3, 0x8000
|
||||
/* 80392DA0 0038FD00 2C 03 00 20 */ cmpwi r3, 0x20
|
||||
/* 80392DA4 0038FD04 90 01 00 3C */ stw r0, 0x3c(r1)
|
||||
/* 80392DA8 0038FD08 C8 41 00 38 */ lfd f2, 0x38(r1)
|
||||
/* 80392DAC 0038FD0C FC A2 18 28 */ fsub f5, f2, f3
|
||||
/* 80392DB0 0038FD10 FC 81 21 7C */ fnmsub f4, f1, f5, f4
|
||||
/* 80392DB4 0038FD14 FC 20 01 72 */ fmul f1, f0, f5
|
||||
/* 80392DB8 0038FD18 40 80 00 2C */ bge lbl_80392DE4
|
||||
/* 80392DBC 0038FD1C 3C 80 80 3E */ lis r4, lbl_803D8898@ha
|
||||
/* 80392DC0 0038FD20 54 60 10 3A */ slwi r0, r3, 2
|
||||
/* 80392DC4 0038FD24 38 84 88 98 */ addi r4, r4, lbl_803D8898@l
|
||||
/* 80392DC8 0038FD28 7C 84 02 14 */ add r4, r4, r0
|
||||
/* 80392DCC 0038FD2C 80 04 FF FC */ lwz r0, -4(r4)
|
||||
/* 80392DD0 0038FD30 7C 06 00 00 */ cmpw r6, r0
|
||||
/* 80392DD4 0038FD34 41 82 00 10 */ beq lbl_80392DE4
|
||||
/* 80392DD8 0038FD38 FC 04 08 28 */ fsub f0, f4, f1
|
||||
/* 80392DDC 0038FD3C D8 1E 00 00 */ stfd f0, 0(r30)
|
||||
/* 80392DE0 0038FD40 48 00 00 88 */ b lbl_80392E68
|
||||
lbl_80392DE4:
|
||||
/* 80392DE4 0038FD44 FC 04 08 28 */ fsub f0, f4, f1
|
||||
/* 80392DE8 0038FD48 7C C4 A6 70 */ srawi r4, r6, 0x14
|
||||
/* 80392DEC 0038FD4C D8 1E 00 00 */ stfd f0, 0(r30)
|
||||
/* 80392DF0 0038FD50 80 1E 00 00 */ lwz r0, 0(r30)
|
||||
/* 80392DF4 0038FD54 54 00 65 7E */ rlwinm r0, r0, 0xc, 0x15, 0x1f
|
||||
/* 80392DF8 0038FD58 7C 00 20 50 */ subf r0, r0, r4
|
||||
/* 80392DFC 0038FD5C 2C 00 00 10 */ cmpwi r0, 0x10
|
||||
/* 80392E00 0038FD60 40 81 00 68 */ ble lbl_80392E68
|
||||
/* 80392E04 0038FD64 C8 02 D3 38 */ lfd f0, lbl_805AF058@sda21(r2)
|
||||
/* 80392E08 0038FD68 FC 60 20 90 */ fmr f3, f4
|
||||
/* 80392E0C 0038FD6C C8 22 D3 40 */ lfd f1, lbl_805AF060@sda21(r2)
|
||||
/* 80392E10 0038FD70 FC 40 01 72 */ fmul f2, f0, f5
|
||||
/* 80392E14 0038FD74 FC 84 10 28 */ fsub f4, f4, f2
|
||||
/* 80392E18 0038FD78 FC 03 20 28 */ fsub f0, f3, f4
|
||||
/* 80392E1C 0038FD7C FC 00 10 28 */ fsub f0, f0, f2
|
||||
/* 80392E20 0038FD80 FC 21 01 78 */ fmsub f1, f1, f5, f0
|
||||
/* 80392E24 0038FD84 FC 04 08 28 */ fsub f0, f4, f1
|
||||
/* 80392E28 0038FD88 D8 1E 00 00 */ stfd f0, 0(r30)
|
||||
/* 80392E2C 0038FD8C 80 1E 00 00 */ lwz r0, 0(r30)
|
||||
/* 80392E30 0038FD90 54 00 65 7E */ rlwinm r0, r0, 0xc, 0x15, 0x1f
|
||||
/* 80392E34 0038FD94 7C 00 20 50 */ subf r0, r0, r4
|
||||
/* 80392E38 0038FD98 2C 00 00 31 */ cmpwi r0, 0x31
|
||||
/* 80392E3C 0038FD9C 40 81 00 2C */ ble lbl_80392E68
|
||||
/* 80392E40 0038FDA0 C8 02 D3 58 */ lfd f0, lbl_805AF078@sda21(r2)
|
||||
/* 80392E44 0038FDA4 FC 40 20 90 */ fmr f2, f4
|
||||
/* 80392E48 0038FDA8 C8 22 D3 60 */ lfd f1, lbl_805AF080@sda21(r2)
|
||||
/* 80392E4C 0038FDAC FC 60 01 72 */ fmul f3, f0, f5
|
||||
/* 80392E50 0038FDB0 FC 84 18 28 */ fsub f4, f4, f3
|
||||
/* 80392E54 0038FDB4 FC 02 20 28 */ fsub f0, f2, f4
|
||||
/* 80392E58 0038FDB8 FC 00 18 28 */ fsub f0, f0, f3
|
||||
/* 80392E5C 0038FDBC FC 21 01 78 */ fmsub f1, f1, f5, f0
|
||||
/* 80392E60 0038FDC0 FC 04 08 28 */ fsub f0, f4, f1
|
||||
/* 80392E64 0038FDC4 D8 1E 00 00 */ stfd f0, 0(r30)
|
||||
lbl_80392E68:
|
||||
/* 80392E68 0038FDC8 C8 1E 00 00 */ lfd f0, 0(r30)
|
||||
/* 80392E6C 0038FDCC 2C 1F 00 00 */ cmpwi r31, 0
|
||||
/* 80392E70 0038FDD0 FC 04 00 28 */ fsub f0, f4, f0
|
||||
/* 80392E74 0038FDD4 FC 00 08 28 */ fsub f0, f0, f1
|
||||
/* 80392E78 0038FDD8 D8 1E 00 08 */ stfd f0, 8(r30)
|
||||
/* 80392E7C 0038FDDC 40 80 01 38 */ bge lbl_80392FB4
|
||||
/* 80392E80 0038FDE0 C8 1E 00 00 */ lfd f0, 0(r30)
|
||||
/* 80392E84 0038FDE4 7C 63 00 D0 */ neg r3, r3
|
||||
/* 80392E88 0038FDE8 FC 00 00 50 */ fneg f0, f0
|
||||
/* 80392E8C 0038FDEC D8 1E 00 00 */ stfd f0, 0(r30)
|
||||
/* 80392E90 0038FDF0 C8 1E 00 08 */ lfd f0, 8(r30)
|
||||
/* 80392E94 0038FDF4 FC 00 00 50 */ fneg f0, f0
|
||||
/* 80392E98 0038FDF8 D8 1E 00 08 */ stfd f0, 8(r30)
|
||||
/* 80392E9C 0038FDFC 48 00 01 18 */ b lbl_80392FB4
|
||||
/* 80392EA0 0038FE00 48 00 01 14 */ b lbl_80392FB4
|
||||
lbl_80392EA4:
|
||||
/* 80392EA4 0038FE04 3C 00 7F F0 */ lis r0, 0x7ff0
|
||||
/* 80392EA8 0038FE08 7C 06 00 00 */ cmpw r6, r0
|
||||
/* 80392EAC 0038FE0C 41 80 00 18 */ blt lbl_80392EC4
|
||||
/* 80392EB0 0038FE10 FC 01 08 28 */ fsub f0, f1, f1
|
||||
/* 80392EB4 0038FE14 38 60 00 00 */ li r3, 0
|
||||
/* 80392EB8 0038FE18 D8 1E 00 08 */ stfd f0, 8(r30)
|
||||
/* 80392EBC 0038FE1C D8 1E 00 00 */ stfd f0, 0(r30)
|
||||
/* 80392EC0 0038FE20 48 00 00 F4 */ b lbl_80392FB4
|
||||
lbl_80392EC4:
|
||||
/* 80392EC4 0038FE24 7C C3 A6 70 */ srawi r3, r6, 0x14
|
||||
/* 80392EC8 0038FE28 3C 00 43 30 */ lis r0, 0x4330
|
||||
/* 80392ECC 0038FE2C 38 A3 FB EA */ addi r5, r3, -1046
|
||||
/* 80392ED0 0038FE30 80 81 00 0C */ lwz r4, 0xc(r1)
|
||||
/* 80392ED4 0038FE34 54 A3 A0 16 */ slwi r3, r5, 0x14
|
||||
/* 80392ED8 0038FE38 90 01 00 30 */ stw r0, 0x30(r1)
|
||||
/* 80392EDC 0038FE3C 7C 63 30 50 */ subf r3, r3, r6
|
||||
/* 80392EE0 0038FE40 C8 A2 D3 70 */ lfd f5, lbl_805AF090@sda21(r2)
|
||||
/* 80392EE4 0038FE44 90 81 00 14 */ stw r4, 0x14(r1)
|
||||
/* 80392EE8 0038FE48 38 81 00 30 */ addi r4, r1, 0x30
|
||||
/* 80392EEC 0038FE4C C8 82 D3 68 */ lfd f4, lbl_805AF088@sda21(r2)
|
||||
/* 80392EF0 0038FE50 38 C0 00 03 */ li r6, 3
|
||||
/* 80392EF4 0038FE54 90 61 00 10 */ stw r3, 0x10(r1)
|
||||
/* 80392EF8 0038FE58 C8 22 D3 20 */ lfd f1, lbl_805AF040@sda21(r2)
|
||||
/* 80392EFC 0038FE5C C8 61 00 10 */ lfd f3, 0x10(r1)
|
||||
/* 80392F00 0038FE60 90 01 00 48 */ stw r0, 0x48(r1)
|
||||
/* 80392F04 0038FE64 FC 00 18 1E */ fctiwz f0, f3
|
||||
/* 80392F08 0038FE68 D8 01 00 38 */ stfd f0, 0x38(r1)
|
||||
/* 80392F0C 0038FE6C 80 01 00 3C */ lwz r0, 0x3c(r1)
|
||||
/* 80392F10 0038FE70 6C 00 80 00 */ xoris r0, r0, 0x8000
|
||||
/* 80392F14 0038FE74 90 01 00 34 */ stw r0, 0x34(r1)
|
||||
/* 80392F18 0038FE78 C8 01 00 30 */ lfd f0, 0x30(r1)
|
||||
/* 80392F1C 0038FE7C FC 40 28 28 */ fsub f2, f0, f5
|
||||
/* 80392F20 0038FE80 FC 03 10 28 */ fsub f0, f3, f2
|
||||
/* 80392F24 0038FE84 D8 41 00 18 */ stfd f2, 0x18(r1)
|
||||
/* 80392F28 0038FE88 FC 64 00 32 */ fmul f3, f4, f0
|
||||
/* 80392F2C 0038FE8C FC 00 18 1E */ fctiwz f0, f3
|
||||
/* 80392F30 0038FE90 D8 61 00 10 */ stfd f3, 0x10(r1)
|
||||
/* 80392F34 0038FE94 D8 01 00 40 */ stfd f0, 0x40(r1)
|
||||
/* 80392F38 0038FE98 80 01 00 44 */ lwz r0, 0x44(r1)
|
||||
/* 80392F3C 0038FE9C 6C 00 80 00 */ xoris r0, r0, 0x8000
|
||||
/* 80392F40 0038FEA0 90 01 00 4C */ stw r0, 0x4c(r1)
|
||||
/* 80392F44 0038FEA4 C8 01 00 48 */ lfd f0, 0x48(r1)
|
||||
/* 80392F48 0038FEA8 FC 40 28 28 */ fsub f2, f0, f5
|
||||
/* 80392F4C 0038FEAC FC 03 10 28 */ fsub f0, f3, f2
|
||||
/* 80392F50 0038FEB0 D8 41 00 20 */ stfd f2, 0x20(r1)
|
||||
/* 80392F54 0038FEB4 FC 04 00 32 */ fmul f0, f4, f0
|
||||
/* 80392F58 0038FEB8 D8 01 00 10 */ stfd f0, 0x10(r1)
|
||||
/* 80392F5C 0038FEBC D8 01 00 28 */ stfd f0, 0x28(r1)
|
||||
/* 80392F60 0038FEC0 48 00 00 0C */ b lbl_80392F6C
|
||||
lbl_80392F64:
|
||||
/* 80392F64 0038FEC4 38 84 FF F8 */ addi r4, r4, -8
|
||||
/* 80392F68 0038FEC8 38 C6 FF FF */ addi r6, r6, -1
|
||||
lbl_80392F6C:
|
||||
/* 80392F6C 0038FECC C8 04 FF F8 */ lfd f0, -8(r4)
|
||||
/* 80392F70 0038FED0 FC 01 00 00 */ fcmpu cr0, f1, f0
|
||||
/* 80392F74 0038FED4 41 82 FF F0 */ beq lbl_80392F64
|
||||
/* 80392F78 0038FED8 3C 60 80 3E */ lis r3, lbl_803D8790@ha
|
||||
/* 80392F7C 0038FEDC 7F C4 F3 78 */ mr r4, r30
|
||||
/* 80392F80 0038FEE0 39 03 87 90 */ addi r8, r3, lbl_803D8790@l
|
||||
/* 80392F84 0038FEE4 38 E0 00 02 */ li r7, 2
|
||||
/* 80392F88 0038FEE8 38 61 00 18 */ addi r3, r1, 0x18
|
||||
/* 80392F8C 0038FEEC 48 00 01 35 */ bl __kernel_rem_pio2
|
||||
/* 80392F90 0038FEF0 2C 1F 00 00 */ cmpwi r31, 0
|
||||
/* 80392F94 0038FEF4 40 80 00 20 */ bge lbl_80392FB4
|
||||
/* 80392F98 0038FEF8 C8 1E 00 00 */ lfd f0, 0(r30)
|
||||
/* 80392F9C 0038FEFC 7C 63 00 D0 */ neg r3, r3
|
||||
/* 80392FA0 0038FF00 FC 00 00 50 */ fneg f0, f0
|
||||
/* 80392FA4 0038FF04 D8 1E 00 00 */ stfd f0, 0(r30)
|
||||
/* 80392FA8 0038FF08 C8 1E 00 08 */ lfd f0, 8(r30)
|
||||
/* 80392FAC 0038FF0C FC 00 00 50 */ fneg f0, f0
|
||||
/* 80392FB0 0038FF10 D8 1E 00 08 */ stfd f0, 8(r30)
|
||||
lbl_80392FB4:
|
||||
/* 80392FB4 0038FF14 80 01 00 64 */ lwz r0, 0x64(r1)
|
||||
/* 80392FB8 0038FF18 83 E1 00 5C */ lwz r31, 0x5c(r1)
|
||||
/* 80392FBC 0038FF1C 83 C1 00 58 */ lwz r30, 0x58(r1)
|
||||
/* 80392FC0 0038FF20 7C 08 03 A6 */ mtlr r0
|
||||
/* 80392FC4 0038FF24 38 21 00 60 */ addi r1, r1, 0x60
|
||||
/* 80392FC8 0038FF28 4E 80 00 20 */ blr
|
|
@ -0,0 +1,72 @@
|
|||
.include "macros.inc"
|
||||
|
||||
.section .text, "ax"
|
||||
|
||||
.global __kernel_cos
|
||||
__kernel_cos:
|
||||
/* 80392FCC 0038FF2C 94 21 FF E0 */ stwu r1, -0x20(r1)
|
||||
/* 80392FD0 0038FF30 3C 00 3E 40 */ lis r0, 0x3e40
|
||||
/* 80392FD4 0038FF34 D8 21 00 08 */ stfd f1, 8(r1)
|
||||
/* 80392FD8 0038FF38 80 61 00 08 */ lwz r3, 8(r1)
|
||||
/* 80392FDC 0038FF3C 54 64 00 7E */ clrlwi r4, r3, 1
|
||||
/* 80392FE0 0038FF40 7C 04 00 00 */ cmpw r4, r0
|
||||
/* 80392FE4 0038FF44 40 80 00 20 */ bge lbl_80393004
|
||||
/* 80392FE8 0038FF48 FC 00 08 1E */ fctiwz f0, f1
|
||||
/* 80392FEC 0038FF4C D8 01 00 18 */ stfd f0, 0x18(r1)
|
||||
/* 80392FF0 0038FF50 80 01 00 1C */ lwz r0, 0x1c(r1)
|
||||
/* 80392FF4 0038FF54 2C 00 00 00 */ cmpwi r0, 0
|
||||
/* 80392FF8 0038FF58 40 82 00 0C */ bne lbl_80393004
|
||||
/* 80392FFC 0038FF5C C8 22 D3 78 */ lfd f1, lbl_805AF098@sda21(r2)
|
||||
/* 80393000 0038FF60 48 00 00 B8 */ b lbl_803930B8
|
||||
lbl_80393004:
|
||||
/* 80393004 0038FF64 C8 C1 00 08 */ lfd f6, 8(r1)
|
||||
/* 80393008 0038FF68 3C 60 3F D3 */ lis r3, 0x3FD33333@ha
|
||||
/* 8039300C 0038FF6C 38 03 33 33 */ addi r0, r3, 0x3FD33333@l
|
||||
/* 80393010 0038FF70 C8 A2 D3 A8 */ lfd f5, lbl_805AF0C8@sda21(r2)
|
||||
/* 80393014 0038FF74 FC E6 01 B2 */ fmul f7, f6, f6
|
||||
/* 80393018 0038FF78 C8 02 D3 A0 */ lfd f0, lbl_805AF0C0@sda21(r2)
|
||||
/* 8039301C 0038FF7C C8 82 D3 98 */ lfd f4, lbl_805AF0B8@sda21(r2)
|
||||
/* 80393020 0038FF80 7C 04 00 00 */ cmpw r4, r0
|
||||
/* 80393024 0038FF84 C8 62 D3 90 */ lfd f3, lbl_805AF0B0@sda21(r2)
|
||||
/* 80393028 0038FF88 C8 22 D3 88 */ lfd f1, lbl_805AF0A8@sda21(r2)
|
||||
/* 8039302C 0038FF8C FC A5 01 FA */ fmadd f5, f5, f7, f0
|
||||
/* 80393030 0038FF90 C8 02 D3 80 */ lfd f0, lbl_805AF0A0@sda21(r2)
|
||||
/* 80393034 0038FF94 FC 87 21 7A */ fmadd f4, f7, f5, f4
|
||||
/* 80393038 0038FF98 FC 67 19 3A */ fmadd f3, f7, f4, f3
|
||||
/* 8039303C 0038FF9C FC 27 08 FA */ fmadd f1, f7, f3, f1
|
||||
/* 80393040 0038FFA0 FC 07 00 7A */ fmadd f0, f7, f1, f0
|
||||
/* 80393044 0038FFA4 FC 87 00 32 */ fmul f4, f7, f0
|
||||
/* 80393048 0038FFA8 40 80 00 20 */ bge lbl_80393068
|
||||
/* 8039304C 0038FFAC FC 06 00 B2 */ fmul f0, f6, f2
|
||||
/* 80393050 0038FFB0 C8 22 D3 B0 */ lfd f1, lbl_805AF0D0@sda21(r2)
|
||||
/* 80393054 0038FFB4 C8 42 D3 78 */ lfd f2, lbl_805AF098@sda21(r2)
|
||||
/* 80393058 0038FFB8 FC 07 01 38 */ fmsub f0, f7, f4, f0
|
||||
/* 8039305C 0038FFBC FC 01 01 F8 */ fmsub f0, f1, f7, f0
|
||||
/* 80393060 0038FFC0 FC 22 00 28 */ fsub f1, f2, f0
|
||||
/* 80393064 0038FFC4 48 00 00 54 */ b lbl_803930B8
|
||||
lbl_80393068:
|
||||
/* 80393068 0038FFC8 3C 00 3F E9 */ lis r0, 0x3fe9
|
||||
/* 8039306C 0038FFCC 7C 04 00 00 */ cmpw r4, r0
|
||||
/* 80393070 0038FFD0 40 81 00 10 */ ble lbl_80393080
|
||||
/* 80393074 0038FFD4 C8 02 D3 B8 */ lfd f0, lbl_805AF0D8@sda21(r2)
|
||||
/* 80393078 0038FFD8 D8 01 00 10 */ stfd f0, 0x10(r1)
|
||||
/* 8039307C 0038FFDC 48 00 00 14 */ b lbl_80393090
|
||||
lbl_80393080:
|
||||
/* 80393080 0038FFE0 3C 64 FF E0 */ addis r3, r4, 0xffe0
|
||||
/* 80393084 0038FFE4 38 00 00 00 */ li r0, 0
|
||||
/* 80393088 0038FFE8 90 61 00 10 */ stw r3, 0x10(r1)
|
||||
/* 8039308C 0038FFEC 90 01 00 14 */ stw r0, 0x14(r1)
|
||||
lbl_80393090:
|
||||
/* 80393090 0038FFF0 C8 01 00 08 */ lfd f0, 8(r1)
|
||||
/* 80393094 0038FFF4 C8 61 00 10 */ lfd f3, 0x10(r1)
|
||||
/* 80393098 0038FFF8 FC 00 00 B2 */ fmul f0, f0, f2
|
||||
/* 8039309C 0038FFFC C8 22 D3 B0 */ lfd f1, lbl_805AF0D0@sda21(r2)
|
||||
/* 803930A0 00390000 C8 42 D3 78 */ lfd f2, lbl_805AF098@sda21(r2)
|
||||
/* 803930A4 00390004 FC 21 19 F8 */ fmsub f1, f1, f7, f3
|
||||
/* 803930A8 00390008 FC 07 01 38 */ fmsub f0, f7, f4, f0
|
||||
/* 803930AC 0039000C FC 42 18 28 */ fsub f2, f2, f3
|
||||
/* 803930B0 00390010 FC 01 00 28 */ fsub f0, f1, f0
|
||||
/* 803930B4 00390014 FC 22 00 28 */ fsub f1, f2, f0
|
||||
lbl_803930B8:
|
||||
/* 803930B8 00390018 38 21 00 20 */ addi r1, r1, 0x20
|
||||
/* 803930BC 0039001C 4E 80 00 20 */ blr
|
File diff suppressed because it is too large
Load Diff
|
@ -0,0 +1,49 @@
|
|||
.include "macros.inc"
|
||||
|
||||
.section .text, "ax"
|
||||
|
||||
.global __kernel_sin
|
||||
__kernel_sin:
|
||||
/* 80393F14 00390E74 94 21 FF E0 */ stwu r1, -0x20(r1)
|
||||
/* 80393F18 00390E78 3C 00 3E 40 */ lis r0, 0x3e40
|
||||
/* 80393F1C 00390E7C D8 21 00 08 */ stfd f1, 8(r1)
|
||||
/* 80393F20 00390E80 80 81 00 08 */ lwz r4, 8(r1)
|
||||
/* 80393F24 00390E84 54 84 00 7E */ clrlwi r4, r4, 1
|
||||
/* 80393F28 00390E88 7C 04 00 00 */ cmpw r4, r0
|
||||
/* 80393F2C 00390E8C 40 80 00 1C */ bge lbl_80393F48
|
||||
/* 80393F30 00390E90 FC 00 08 1E */ fctiwz f0, f1
|
||||
/* 80393F34 00390E94 D8 01 00 10 */ stfd f0, 0x10(r1)
|
||||
/* 80393F38 00390E98 80 01 00 14 */ lwz r0, 0x14(r1)
|
||||
/* 80393F3C 00390E9C 2C 00 00 00 */ cmpwi r0, 0
|
||||
/* 80393F40 00390EA0 40 82 00 08 */ bne lbl_80393F48
|
||||
/* 80393F44 00390EA4 48 00 00 68 */ b lbl_80393FAC
|
||||
lbl_80393F48:
|
||||
/* 80393F48 00390EA8 C8 C1 00 08 */ lfd f6, 8(r1)
|
||||
/* 80393F4C 00390EAC 2C 03 00 00 */ cmpwi r3, 0
|
||||
/* 80393F50 00390EB0 C8 A2 D4 20 */ lfd f5, lbl_805AF140@sda21(r2)
|
||||
/* 80393F54 00390EB4 FC E6 01 B2 */ fmul f7, f6, f6
|
||||
/* 80393F58 00390EB8 C8 82 D4 18 */ lfd f4, lbl_805AF138@sda21(r2)
|
||||
/* 80393F5C 00390EBC C8 62 D4 10 */ lfd f3, lbl_805AF130@sda21(r2)
|
||||
/* 80393F60 00390EC0 C8 22 D4 08 */ lfd f1, lbl_805AF128@sda21(r2)
|
||||
/* 80393F64 00390EC4 C8 02 D4 00 */ lfd f0, lbl_805AF120@sda21(r2)
|
||||
/* 80393F68 00390EC8 FC 85 21 FA */ fmadd f4, f5, f7, f4
|
||||
/* 80393F6C 00390ECC FC A7 01 B2 */ fmul f5, f7, f6
|
||||
/* 80393F70 00390ED0 FC 67 19 3A */ fmadd f3, f7, f4, f3
|
||||
/* 80393F74 00390ED4 FC 27 08 FA */ fmadd f1, f7, f3, f1
|
||||
/* 80393F78 00390ED8 FC 27 00 7A */ fmadd f1, f7, f1, f0
|
||||
/* 80393F7C 00390EDC 40 82 00 14 */ bne lbl_80393F90
|
||||
/* 80393F80 00390EE0 C8 02 D4 28 */ lfd f0, lbl_805AF148@sda21(r2)
|
||||
/* 80393F84 00390EE4 FC 07 00 7A */ fmadd f0, f7, f1, f0
|
||||
/* 80393F88 00390EE8 FC 25 30 3A */ fmadd f1, f5, f0, f6
|
||||
/* 80393F8C 00390EEC 48 00 00 20 */ b lbl_80393FAC
|
||||
lbl_80393F90:
|
||||
/* 80393F90 00390EF0 FC 05 00 72 */ fmul f0, f5, f1
|
||||
/* 80393F94 00390EF4 C8 22 D4 30 */ lfd f1, lbl_805AF150@sda21(r2)
|
||||
/* 80393F98 00390EF8 C8 62 D4 28 */ lfd f3, lbl_805AF148@sda21(r2)
|
||||
/* 80393F9C 00390EFC FC 01 00 B8 */ fmsub f0, f1, f2, f0
|
||||
/* 80393FA0 00390F00 FC 07 10 38 */ fmsub f0, f7, f0, f2
|
||||
/* 80393FA4 00390F04 FC 03 01 7C */ fnmsub f0, f3, f5, f0
|
||||
/* 80393FA8 00390F08 FC 26 00 28 */ fsub f1, f6, f0
|
||||
lbl_80393FAC:
|
||||
/* 80393FAC 00390F0C 38 21 00 20 */ addi r1, r1, 0x20
|
||||
/* 80393FB0 00390F10 4E 80 00 20 */ blr
|
|
@ -0,0 +1,147 @@
|
|||
.include "macros.inc"
|
||||
|
||||
.section .text, "ax"
|
||||
|
||||
.global __kernel_tan
|
||||
__kernel_tan:
|
||||
/* 80393FB4 00390F14 94 21 FF C0 */ stwu r1, -0x40(r1)
|
||||
/* 80393FB8 00390F18 DB E1 00 30 */ stfd f31, 0x30(r1)
|
||||
/* 80393FBC 00390F1C F3 E1 00 38 */ psq_st f31, 56(r1), 0, qr0
|
||||
/* 80393FC0 00390F20 D8 21 00 08 */ stfd f1, 8(r1)
|
||||
/* 80393FC4 00390F24 3C 00 3E 30 */ lis r0, 0x3e30
|
||||
/* 80393FC8 00390F28 80 E1 00 08 */ lwz r7, 8(r1)
|
||||
/* 80393FCC 00390F2C 54 E6 00 7E */ clrlwi r6, r7, 1
|
||||
/* 80393FD0 00390F30 7C 06 00 00 */ cmpw r6, r0
|
||||
/* 80393FD4 00390F34 40 80 00 54 */ bge lbl_80394028
|
||||
/* 80393FD8 00390F38 FC 00 08 1E */ fctiwz f0, f1
|
||||
/* 80393FDC 00390F3C D8 01 00 20 */ stfd f0, 0x20(r1)
|
||||
/* 80393FE0 00390F40 80 01 00 24 */ lwz r0, 0x24(r1)
|
||||
/* 80393FE4 00390F44 2C 00 00 00 */ cmpwi r0, 0
|
||||
/* 80393FE8 00390F48 40 82 00 40 */ bne lbl_80394028
|
||||
/* 80393FEC 00390F4C 80 01 00 0C */ lwz r0, 0xc(r1)
|
||||
/* 80393FF0 00390F50 38 83 00 01 */ addi r4, r3, 1
|
||||
/* 80393FF4 00390F54 7C C0 03 78 */ or r0, r6, r0
|
||||
/* 80393FF8 00390F58 7C 80 03 79 */ or. r0, r4, r0
|
||||
/* 80393FFC 00390F5C 40 82 00 14 */ bne lbl_80394010
|
||||
/* 80394000 00390F60 FC 20 0A 10 */ fabs f1, f1
|
||||
/* 80394004 00390F64 C8 02 D4 38 */ lfd f0, lbl_805AF158@sda21(r2)
|
||||
/* 80394008 00390F68 FC 20 08 24 */ fdiv f1, f0, f1
|
||||
/* 8039400C 00390F6C 48 00 01 AC */ b lbl_803941B8
|
||||
lbl_80394010:
|
||||
/* 80394010 00390F70 2C 03 00 01 */ cmpwi r3, 1
|
||||
/* 80394014 00390F74 40 82 00 08 */ bne lbl_8039401C
|
||||
/* 80394018 00390F78 48 00 01 A0 */ b lbl_803941B8
|
||||
lbl_8039401C:
|
||||
/* 8039401C 00390F7C C8 02 D4 40 */ lfd f0, lbl_805AF160@sda21(r2)
|
||||
/* 80394020 00390F80 FC 20 08 24 */ fdiv f1, f0, f1
|
||||
/* 80394024 00390F84 48 00 01 94 */ b lbl_803941B8
|
||||
lbl_80394028:
|
||||
/* 80394028 00390F88 3C 80 3F E6 */ lis r4, 0x3FE59428@ha
|
||||
/* 8039402C 00390F8C 38 04 94 28 */ addi r0, r4, 0x3FE59428@l
|
||||
/* 80394030 00390F90 7C 06 00 00 */ cmpw r6, r0
|
||||
/* 80394034 00390F94 41 80 00 40 */ blt lbl_80394074
|
||||
/* 80394038 00390F98 2C 07 00 00 */ cmpwi r7, 0
|
||||
/* 8039403C 00390F9C 40 80 00 14 */ bge lbl_80394050
|
||||
/* 80394040 00390FA0 C8 01 00 08 */ lfd f0, 8(r1)
|
||||
/* 80394044 00390FA4 FC 40 10 50 */ fneg f2, f2
|
||||
/* 80394048 00390FA8 FC 00 00 50 */ fneg f0, f0
|
||||
/* 8039404C 00390FAC D8 01 00 08 */ stfd f0, 8(r1)
|
||||
lbl_80394050:
|
||||
/* 80394050 00390FB0 C8 02 D4 50 */ lfd f0, lbl_805AF170@sda21(r2)
|
||||
/* 80394054 00390FB4 C8 62 D4 48 */ lfd f3, lbl_805AF168@sda21(r2)
|
||||
/* 80394058 00390FB8 C8 21 00 08 */ lfd f1, 8(r1)
|
||||
/* 8039405C 00390FBC FC 00 10 28 */ fsub f0, f0, f2
|
||||
/* 80394060 00390FC0 C8 42 D4 58 */ lfd f2, lbl_805AF178@sda21(r2)
|
||||
/* 80394064 00390FC4 FC 23 08 28 */ fsub f1, f3, f1
|
||||
/* 80394068 00390FC8 FC 01 00 2A */ fadd f0, f1, f0
|
||||
/* 8039406C 00390FCC D8 21 00 18 */ stfd f1, 0x18(r1)
|
||||
/* 80394070 00390FD0 D8 01 00 08 */ stfd f0, 8(r1)
|
||||
lbl_80394074:
|
||||
/* 80394074 00390FD4 C8 01 00 08 */ lfd f0, 8(r1)
|
||||
/* 80394078 00390FD8 3C 80 80 3E */ lis r4, lbl_803D8968@ha
|
||||
/* 8039407C 00390FDC 38 A4 89 68 */ addi r5, r4, lbl_803D8968@l
|
||||
/* 80394080 00390FE0 3C 80 3F E6 */ lis r4, 0x3FE59428@ha
|
||||
/* 80394084 00390FE4 FD A0 00 32 */ fmul f13, f0, f0
|
||||
/* 80394088 00390FE8 38 04 94 28 */ addi r0, r4, 0x3FE59428@l
|
||||
/* 8039408C 00390FEC C8 A5 00 60 */ lfd f5, 0x60(r5)
|
||||
/* 80394090 00390FF0 7C 06 00 00 */ cmpw r6, r0
|
||||
/* 80394094 00390FF4 C8 85 00 50 */ lfd f4, 0x50(r5)
|
||||
/* 80394098 00390FF8 C9 25 00 58 */ lfd f9, 0x58(r5)
|
||||
/* 8039409C 00390FFC FF ED 03 72 */ fmul f31, f13, f13
|
||||
/* 803940A0 00391000 C9 05 00 48 */ lfd f8, 0x48(r5)
|
||||
/* 803940A4 00391004 C8 65 00 40 */ lfd f3, 0x40(r5)
|
||||
/* 803940A8 00391008 C9 65 00 38 */ lfd f11, 0x38(r5)
|
||||
/* 803940AC 0039100C FC 2D 00 32 */ fmul f1, f13, f0
|
||||
/* 803940B0 00391010 C8 C5 00 30 */ lfd f6, 0x30(r5)
|
||||
/* 803940B4 00391014 FC FF 21 7A */ fmadd f7, f31, f5, f4
|
||||
/* 803940B8 00391018 C9 45 00 28 */ lfd f10, 0x28(r5)
|
||||
/* 803940BC 0039101C C8 A5 00 20 */ lfd f5, 0x20(r5)
|
||||
/* 803940C0 00391020 FD 9F 42 7A */ fmadd f12, f31, f9, f8
|
||||
/* 803940C4 00391024 C9 25 00 18 */ lfd f9, 0x18(r5)
|
||||
/* 803940C8 00391028 C8 85 00 10 */ lfd f4, 0x10(r5)
|
||||
/* 803940CC 0039102C FC FF 19 FA */ fmadd f7, f31, f7, f3
|
||||
/* 803940D0 00391030 C9 05 00 08 */ lfd f8, 8(r5)
|
||||
/* 803940D4 00391034 C8 65 00 00 */ lfd f3, 0(r5)
|
||||
/* 803940D8 00391038 FD 7F 5B 3A */ fmadd f11, f31, f12, f11
|
||||
/* 803940DC 0039103C D9 A1 00 18 */ stfd f13, 0x18(r1)
|
||||
/* 803940E0 00391040 FC DF 31 FA */ fmadd f6, f31, f7, f6
|
||||
/* 803940E4 00391044 FC FF 52 FA */ fmadd f7, f31, f11, f10
|
||||
/* 803940E8 00391048 FC BF 29 BA */ fmadd f5, f31, f6, f5
|
||||
/* 803940EC 0039104C FC DF 49 FA */ fmadd f6, f31, f7, f9
|
||||
/* 803940F0 00391050 FC 9F 21 7A */ fmadd f4, f31, f5, f4
|
||||
/* 803940F4 00391054 FC BF 41 BA */ fmadd f5, f31, f6, f8
|
||||
/* 803940F8 00391058 FC 8D 01 32 */ fmul f4, f13, f4
|
||||
/* 803940FC 0039105C FC 85 20 2A */ fadd f4, f5, f4
|
||||
/* 80394100 00391060 FC 81 11 3A */ fmadd f4, f1, f4, f2
|
||||
/* 80394104 00391064 FC CD 11 3A */ fmadd f6, f13, f4, f2
|
||||
/* 80394108 00391068 FC C3 30 7A */ fmadd f6, f3, f1, f6
|
||||
/* 8039410C 0039106C FC 20 30 2A */ fadd f1, f0, f6
|
||||
/* 80394110 00391070 41 80 00 60 */ blt lbl_80394170
|
||||
/* 80394114 00391074 3C 80 43 30 */ lis r4, 0x4330
|
||||
/* 80394118 00391078 6C 60 80 00 */ xoris r0, r3, 0x8000
|
||||
/* 8039411C 0039107C 90 01 00 24 */ stw r0, 0x24(r1)
|
||||
/* 80394120 00391080 54 E0 17 BC */ rlwinm r0, r7, 2, 0x1e, 0x1e
|
||||
/* 80394124 00391084 20 00 00 01 */ subfic r0, r0, 1
|
||||
/* 80394128 00391088 C8 A2 D4 68 */ lfd f5, lbl_805AF188@sda21(r2)
|
||||
/* 8039412C 0039108C 90 81 00 20 */ stw r4, 0x20(r1)
|
||||
/* 80394130 00391090 6C 00 80 00 */ xoris r0, r0, 0x8000
|
||||
/* 80394134 00391094 FC 41 00 72 */ fmul f2, f1, f1
|
||||
/* 80394138 00391098 C8 62 D4 60 */ lfd f3, lbl_805AF180@sda21(r2)
|
||||
/* 8039413C 0039109C C8 81 00 20 */ lfd f4, 0x20(r1)
|
||||
/* 80394140 003910A0 90 01 00 2C */ stw r0, 0x2c(r1)
|
||||
/* 80394144 003910A4 FC E4 28 28 */ fsub f7, f4, f5
|
||||
/* 80394148 003910A8 90 81 00 28 */ stw r4, 0x28(r1)
|
||||
/* 8039414C 003910AC FC 21 38 2A */ fadd f1, f1, f7
|
||||
/* 80394150 003910B0 C8 81 00 28 */ lfd f4, 0x28(r1)
|
||||
/* 80394154 003910B4 FC 84 28 28 */ fsub f4, f4, f5
|
||||
/* 80394158 003910B8 FC 22 08 24 */ fdiv f1, f2, f1
|
||||
/* 8039415C 003910BC FC 21 30 28 */ fsub f1, f1, f6
|
||||
/* 80394160 003910C0 FC 00 08 28 */ fsub f0, f0, f1
|
||||
/* 80394164 003910C4 FC 03 38 3C */ fnmsub f0, f3, f0, f7
|
||||
/* 80394168 003910C8 FC 24 00 32 */ fmul f1, f4, f0
|
||||
/* 8039416C 003910CC 48 00 00 4C */ b lbl_803941B8
|
||||
lbl_80394170:
|
||||
/* 80394170 003910D0 2C 03 00 01 */ cmpwi r3, 1
|
||||
/* 80394174 003910D4 40 82 00 08 */ bne lbl_8039417C
|
||||
/* 80394178 003910D8 48 00 00 40 */ b lbl_803941B8
|
||||
lbl_8039417C:
|
||||
/* 8039417C 003910DC C8 42 D4 40 */ lfd f2, lbl_805AF160@sda21(r2)
|
||||
/* 80394180 003910E0 38 00 00 00 */ li r0, 0
|
||||
/* 80394184 003910E4 D8 21 00 18 */ stfd f1, 0x18(r1)
|
||||
/* 80394188 003910E8 FC 82 08 24 */ fdiv f4, f2, f1
|
||||
/* 8039418C 003910EC C8 22 D4 38 */ lfd f1, lbl_805AF158@sda21(r2)
|
||||
/* 80394190 003910F0 90 01 00 1C */ stw r0, 0x1c(r1)
|
||||
/* 80394194 003910F4 C8 41 00 18 */ lfd f2, 0x18(r1)
|
||||
/* 80394198 003910F8 D8 81 00 10 */ stfd f4, 0x10(r1)
|
||||
/* 8039419C 003910FC FC 02 00 28 */ fsub f0, f2, f0
|
||||
/* 803941A0 00391100 90 01 00 14 */ stw r0, 0x14(r1)
|
||||
/* 803941A4 00391104 FC 06 00 28 */ fsub f0, f6, f0
|
||||
/* 803941A8 00391108 C8 61 00 10 */ lfd f3, 0x10(r1)
|
||||
/* 803941AC 0039110C FC 23 08 BA */ fmadd f1, f3, f2, f1
|
||||
/* 803941B0 00391110 FC 03 08 3A */ fmadd f0, f3, f0, f1
|
||||
/* 803941B4 00391114 FC 24 18 3A */ fmadd f1, f4, f0, f3
|
||||
lbl_803941B8:
|
||||
/* 803941B8 00391118 E3 E1 00 38 */ psq_l f31, 56(r1), 0, qr0
|
||||
/* 803941BC 0039111C CB E1 00 30 */ lfd f31, 0x30(r1)
|
||||
/* 803941C0 00391120 38 21 00 40 */ addi r1, r1, 0x40
|
||||
/* 803941C4 00391124 4E 80 00 20 */ blr
|
|
@ -0,0 +1,125 @@
|
|||
.include "macros.inc"
|
||||
|
||||
.section .text, "ax"
|
||||
|
||||
.global memcmp
|
||||
memcmp:
|
||||
/* 8038D87C 0038A7DC 38 C3 FF FF */ addi r6, r3, -1
|
||||
/* 8038D880 0038A7E0 38 E4 FF FF */ addi r7, r4, -1
|
||||
/* 8038D884 0038A7E4 38 85 00 01 */ addi r4, r5, 1
|
||||
/* 8038D888 0038A7E8 48 00 00 30 */ b lbl_8038D8B8
|
||||
lbl_8038D88C:
|
||||
/* 8038D88C 0038A7EC 8C 66 00 01 */ lbzu r3, 1(r6)
|
||||
/* 8038D890 0038A7F0 8C 07 00 01 */ lbzu r0, 1(r7)
|
||||
/* 8038D894 0038A7F4 7C 03 00 40 */ cmplw r3, r0
|
||||
/* 8038D898 0038A7F8 41 82 00 20 */ beq lbl_8038D8B8
|
||||
/* 8038D89C 0038A7FC 88 86 00 00 */ lbz r4, 0(r6)
|
||||
/* 8038D8A0 0038A800 38 60 00 01 */ li r3, 1
|
||||
/* 8038D8A4 0038A804 88 07 00 00 */ lbz r0, 0(r7)
|
||||
/* 8038D8A8 0038A808 7C 04 00 40 */ cmplw r4, r0
|
||||
/* 8038D8AC 0038A80C 4C 80 00 20 */ bgelr
|
||||
/* 8038D8B0 0038A810 38 60 FF FF */ li r3, -1
|
||||
/* 8038D8B4 0038A814 4E 80 00 20 */ blr
|
||||
lbl_8038D8B8:
|
||||
/* 8038D8B8 0038A818 34 84 FF FF */ addic. r4, r4, -1
|
||||
/* 8038D8BC 0038A81C 40 82 FF D0 */ bne lbl_8038D88C
|
||||
/* 8038D8C0 0038A820 38 60 00 00 */ li r3, 0
|
||||
/* 8038D8C4 0038A824 4E 80 00 20 */ blr
|
||||
|
||||
.global __memrchr
|
||||
__memrchr:
|
||||
/* 8038D8C8 0038A828 54 84 06 3E */ clrlwi r4, r4, 0x18
|
||||
/* 8038D8CC 0038A82C 7C 63 2A 14 */ add r3, r3, r5
|
||||
/* 8038D8D0 0038A830 38 A5 00 01 */ addi r5, r5, 1
|
||||
/* 8038D8D4 0038A834 48 00 00 10 */ b lbl_8038D8E4
|
||||
lbl_8038D8D8:
|
||||
/* 8038D8D8 0038A838 8C 03 FF FF */ lbzu r0, -1(r3)
|
||||
/* 8038D8DC 0038A83C 7C 00 20 40 */ cmplw r0, r4
|
||||
/* 8038D8E0 0038A840 4D 82 00 20 */ beqlr
|
||||
lbl_8038D8E4:
|
||||
/* 8038D8E4 0038A844 34 A5 FF FF */ addic. r5, r5, -1
|
||||
/* 8038D8E8 0038A848 40 82 FF F0 */ bne lbl_8038D8D8
|
||||
/* 8038D8EC 0038A84C 38 60 00 00 */ li r3, 0
|
||||
/* 8038D8F0 0038A850 4E 80 00 20 */ blr
|
||||
|
||||
.global memchr
|
||||
memchr:
|
||||
/* 8038D8F4 0038A854 54 84 06 3E */ clrlwi r4, r4, 0x18
|
||||
/* 8038D8F8 0038A858 38 63 FF FF */ addi r3, r3, -1
|
||||
/* 8038D8FC 0038A85C 38 A5 00 01 */ addi r5, r5, 1
|
||||
/* 8038D900 0038A860 48 00 00 10 */ b lbl_8038D910
|
||||
lbl_8038D904:
|
||||
/* 8038D904 0038A864 8C 03 00 01 */ lbzu r0, 1(r3)
|
||||
/* 8038D908 0038A868 7C 00 20 40 */ cmplw r0, r4
|
||||
/* 8038D90C 0038A86C 4D 82 00 20 */ beqlr
|
||||
lbl_8038D910:
|
||||
/* 8038D910 0038A870 34 A5 FF FF */ addic. r5, r5, -1
|
||||
/* 8038D914 0038A874 40 82 FF F0 */ bne lbl_8038D904
|
||||
/* 8038D918 0038A878 38 60 00 00 */ li r3, 0
|
||||
/* 8038D91C 0038A87C 4E 80 00 20 */ blr
|
||||
|
||||
.global memmove
|
||||
memmove:
|
||||
/* 8038D920 0038A880 94 21 FF F0 */ stwu r1, -0x10(r1)
|
||||
/* 8038D924 0038A884 7C 08 02 A6 */ mflr r0
|
||||
/* 8038D928 0038A888 28 05 00 20 */ cmplwi r5, 0x20
|
||||
/* 8038D92C 0038A88C 90 01 00 14 */ stw r0, 0x14(r1)
|
||||
/* 8038D930 0038A890 93 E1 00 0C */ stw r31, 0xc(r1)
|
||||
/* 8038D934 0038A894 7C 7F 1B 78 */ mr r31, r3
|
||||
/* 8038D938 0038A898 7F E6 22 78 */ xor r6, r31, r4
|
||||
/* 8038D93C 0038A89C 7C C0 00 34 */ cntlzw r0, r6
|
||||
/* 8038D940 0038A8A0 7F E0 00 30 */ slw r0, r31, r0
|
||||
/* 8038D944 0038A8A4 54 07 0F FE */ srwi r7, r0, 0x1f
|
||||
/* 8038D948 0038A8A8 41 80 00 40 */ blt lbl_8038D988
|
||||
/* 8038D94C 0038A8AC 54 C0 07 BF */ clrlwi. r0, r6, 0x1e
|
||||
/* 8038D950 0038A8B0 41 82 00 1C */ beq lbl_8038D96C
|
||||
/* 8038D954 0038A8B4 2C 07 00 00 */ cmpwi r7, 0
|
||||
/* 8038D958 0038A8B8 40 82 00 0C */ bne lbl_8038D964
|
||||
/* 8038D95C 0038A8BC 48 00 01 41 */ bl __copy_longs_unaligned
|
||||
/* 8038D960 0038A8C0 48 00 00 20 */ b lbl_8038D980
|
||||
lbl_8038D964:
|
||||
/* 8038D964 0038A8C4 48 00 00 89 */ bl __copy_longs_rev_unaligned
|
||||
/* 8038D968 0038A8C8 48 00 00 18 */ b lbl_8038D980
|
||||
lbl_8038D96C:
|
||||
/* 8038D96C 0038A8CC 2C 07 00 00 */ cmpwi r7, 0
|
||||
/* 8038D970 0038A8D0 40 82 00 0C */ bne lbl_8038D97C
|
||||
/* 8038D974 0038A8D4 48 00 02 99 */ bl __copy_longs_aligned
|
||||
/* 8038D978 0038A8D8 48 00 00 08 */ b lbl_8038D980
|
||||
lbl_8038D97C:
|
||||
/* 8038D97C 0038A8DC 48 00 01 E5 */ bl __copy_longs_rev_aligned
|
||||
lbl_8038D980:
|
||||
/* 8038D980 0038A8E0 7F E3 FB 78 */ mr r3, r31
|
||||
/* 8038D984 0038A8E4 48 00 00 54 */ b lbl_8038D9D8
|
||||
lbl_8038D988:
|
||||
/* 8038D988 0038A8E8 2C 07 00 00 */ cmpwi r7, 0
|
||||
/* 8038D98C 0038A8EC 40 82 00 28 */ bne lbl_8038D9B4
|
||||
/* 8038D990 0038A8F0 38 64 FF FF */ addi r3, r4, -1
|
||||
/* 8038D994 0038A8F4 38 9F FF FF */ addi r4, r31, -1
|
||||
/* 8038D998 0038A8F8 38 A5 00 01 */ addi r5, r5, 1
|
||||
/* 8038D99C 0038A8FC 48 00 00 0C */ b lbl_8038D9A8
|
||||
lbl_8038D9A0:
|
||||
/* 8038D9A0 0038A900 8C 03 00 01 */ lbzu r0, 1(r3)
|
||||
/* 8038D9A4 0038A904 9C 04 00 01 */ stbu r0, 1(r4)
|
||||
lbl_8038D9A8:
|
||||
/* 8038D9A8 0038A908 34 A5 FF FF */ addic. r5, r5, -1
|
||||
/* 8038D9AC 0038A90C 40 82 FF F4 */ bne lbl_8038D9A0
|
||||
/* 8038D9B0 0038A910 48 00 00 24 */ b lbl_8038D9D4
|
||||
lbl_8038D9B4:
|
||||
/* 8038D9B4 0038A914 7C 64 2A 14 */ add r3, r4, r5
|
||||
/* 8038D9B8 0038A918 7C 9F 2A 14 */ add r4, r31, r5
|
||||
/* 8038D9BC 0038A91C 38 A5 00 01 */ addi r5, r5, 1
|
||||
/* 8038D9C0 0038A920 48 00 00 0C */ b lbl_8038D9CC
|
||||
lbl_8038D9C4:
|
||||
/* 8038D9C4 0038A924 8C 03 FF FF */ lbzu r0, -1(r3)
|
||||
/* 8038D9C8 0038A928 9C 04 FF FF */ stbu r0, -1(r4)
|
||||
lbl_8038D9CC:
|
||||
/* 8038D9CC 0038A92C 34 A5 FF FF */ addic. r5, r5, -1
|
||||
/* 8038D9D0 0038A930 40 82 FF F4 */ bne lbl_8038D9C4
|
||||
lbl_8038D9D4:
|
||||
/* 8038D9D4 0038A934 7F E3 FB 78 */ mr r3, r31
|
||||
lbl_8038D9D8:
|
||||
/* 8038D9D8 0038A938 80 01 00 14 */ lwz r0, 0x14(r1)
|
||||
/* 8038D9DC 0038A93C 83 E1 00 0C */ lwz r31, 0xc(r1)
|
||||
/* 8038D9E0 0038A940 7C 08 03 A6 */ mtlr r0
|
||||
/* 8038D9E4 0038A944 38 21 00 10 */ addi r1, r1, 0x10
|
||||
/* 8038D9E8 0038A948 4E 80 00 20 */ blr
|
|
@ -0,0 +1,223 @@
|
|||
.include "macros.inc"
|
||||
|
||||
.section .text, "ax"
|
||||
|
||||
.global __copy_longs_rev_unaligned
|
||||
__copy_longs_rev_unaligned:
|
||||
/* 8038D9EC 0038A94C 7D 63 2A 14 */ add r11, r3, r5
|
||||
/* 8038D9F0 0038A950 7D 44 2A 14 */ add r10, r4, r5
|
||||
/* 8038D9F4 0038A954 55 63 07 BF */ clrlwi. r3, r11, 0x1e
|
||||
/* 8038D9F8 0038A958 41 82 00 18 */ beq lbl_8038DA10
|
||||
/* 8038D9FC 0038A95C 7C A3 28 50 */ subf r5, r3, r5
|
||||
lbl_8038DA00:
|
||||
/* 8038DA00 0038A960 8C 0A FF FF */ lbzu r0, -1(r10)
|
||||
/* 8038DA04 0038A964 34 63 FF FF */ addic. r3, r3, -1
|
||||
/* 8038DA08 0038A968 9C 0B FF FF */ stbu r0, -1(r11)
|
||||
/* 8038DA0C 0038A96C 40 82 FF F4 */ bne lbl_8038DA00
|
||||
lbl_8038DA10:
|
||||
/* 8038DA10 0038A970 55 48 1E F8 */ rlwinm r8, r10, 3, 0x1b, 0x1c
|
||||
/* 8038DA14 0038A974 55 47 07 BE */ clrlwi r7, r10, 0x1e
|
||||
/* 8038DA18 0038A978 21 28 00 20 */ subfic r9, r8, 0x20
|
||||
/* 8038DA1C 0038A97C 54 A6 E8 FE */ srwi r6, r5, 3
|
||||
/* 8038DA20 0038A980 20 07 00 04 */ subfic r0, r7, 4
|
||||
/* 8038DA24 0038A984 7D 4A 02 14 */ add r10, r10, r0
|
||||
/* 8038DA28 0038A988 84 8A FF FC */ lwzu r4, -4(r10)
|
||||
lbl_8038DA2C:
|
||||
/* 8038DA2C 0038A98C 80 0A FF FC */ lwz r0, -4(r10)
|
||||
/* 8038DA30 0038A990 7C 83 4C 30 */ srw r3, r4, r9
|
||||
/* 8038DA34 0038A994 34 C6 FF FF */ addic. r6, r6, -1
|
||||
/* 8038DA38 0038A998 7C 04 40 30 */ slw r4, r0, r8
|
||||
/* 8038DA3C 0038A99C 7C 00 4C 30 */ srw r0, r0, r9
|
||||
/* 8038DA40 0038A9A0 7C 83 1B 78 */ or r3, r4, r3
|
||||
/* 8038DA44 0038A9A4 90 6B FF FC */ stw r3, -4(r11)
|
||||
/* 8038DA48 0038A9A8 84 8A FF F8 */ lwzu r4, -8(r10)
|
||||
/* 8038DA4C 0038A9AC 7C 83 40 30 */ slw r3, r4, r8
|
||||
/* 8038DA50 0038A9B0 7C 60 03 78 */ or r0, r3, r0
|
||||
/* 8038DA54 0038A9B4 94 0B FF F8 */ stwu r0, -8(r11)
|
||||
/* 8038DA58 0038A9B8 40 82 FF D4 */ bne lbl_8038DA2C
|
||||
/* 8038DA5C 0038A9BC 54 A0 07 7B */ rlwinm. r0, r5, 0, 0x1d, 0x1d
|
||||
/* 8038DA60 0038A9C0 41 82 00 18 */ beq lbl_8038DA78
|
||||
/* 8038DA64 0038A9C4 84 6A FF FC */ lwzu r3, -4(r10)
|
||||
/* 8038DA68 0038A9C8 7C 80 4C 30 */ srw r0, r4, r9
|
||||
/* 8038DA6C 0038A9CC 7C 63 40 30 */ slw r3, r3, r8
|
||||
/* 8038DA70 0038A9D0 7C 60 03 78 */ or r0, r3, r0
|
||||
/* 8038DA74 0038A9D4 94 0B FF FC */ stwu r0, -4(r11)
|
||||
lbl_8038DA78:
|
||||
/* 8038DA78 0038A9D8 38 00 00 03 */ li r0, 3
|
||||
/* 8038DA7C 0038A9DC 7C A5 00 39 */ and. r5, r5, r0
|
||||
/* 8038DA80 0038A9E0 4D 82 00 20 */ beqlr
|
||||
/* 8038DA84 0038A9E4 7D 4A 3A 14 */ add r10, r10, r7
|
||||
lbl_8038DA88:
|
||||
/* 8038DA88 0038A9E8 8C 0A FF FF */ lbzu r0, -1(r10)
|
||||
/* 8038DA8C 0038A9EC 34 A5 FF FF */ addic. r5, r5, -1
|
||||
/* 8038DA90 0038A9F0 9C 0B FF FF */ stbu r0, -1(r11)
|
||||
/* 8038DA94 0038A9F4 40 82 FF F4 */ bne lbl_8038DA88
|
||||
/* 8038DA98 0038A9F8 4E 80 00 20 */ blr
|
||||
|
||||
.global __copy_longs_unaligned
|
||||
__copy_longs_unaligned:
|
||||
/* 8038DA9C 0038A9FC 7C 03 00 D0 */ neg r0, r3
|
||||
/* 8038DAA0 0038AA00 39 04 FF FF */ addi r8, r4, -1
|
||||
/* 8038DAA4 0038AA04 54 06 07 BF */ clrlwi. r6, r0, 0x1e
|
||||
/* 8038DAA8 0038AA08 38 63 FF FF */ addi r3, r3, -1
|
||||
/* 8038DAAC 0038AA0C 41 82 00 18 */ beq lbl_8038DAC4
|
||||
/* 8038DAB0 0038AA10 7C A6 28 50 */ subf r5, r6, r5
|
||||
lbl_8038DAB4:
|
||||
/* 8038DAB4 0038AA14 8C 08 00 01 */ lbzu r0, 1(r8)
|
||||
/* 8038DAB8 0038AA18 34 C6 FF FF */ addic. r6, r6, -1
|
||||
/* 8038DABC 0038AA1C 9C 03 00 01 */ stbu r0, 1(r3)
|
||||
/* 8038DAC0 0038AA20 40 82 FF F4 */ bne lbl_8038DAB4
|
||||
lbl_8038DAC4:
|
||||
/* 8038DAC4 0038AA24 38 08 00 01 */ addi r0, r8, 1
|
||||
/* 8038DAC8 0038AA28 38 C3 FF FD */ addi r6, r3, -3
|
||||
/* 8038DACC 0038AA2C 54 09 07 BE */ clrlwi r9, r0, 0x1e
|
||||
/* 8038DAD0 0038AA30 54 A7 E8 FE */ srwi r7, r5, 3
|
||||
/* 8038DAD4 0038AA34 7D 09 40 50 */ subf r8, r9, r8
|
||||
/* 8038DAD8 0038AA38 54 0A 1E F8 */ rlwinm r10, r0, 3, 0x1b, 0x1c
|
||||
/* 8038DADC 0038AA3C 84 88 00 01 */ lwzu r4, 1(r8)
|
||||
/* 8038DAE0 0038AA40 21 6A 00 20 */ subfic r11, r10, 0x20
|
||||
lbl_8038DAE4:
|
||||
/* 8038DAE4 0038AA44 80 68 00 04 */ lwz r3, 4(r8)
|
||||
/* 8038DAE8 0038AA48 7C 84 50 30 */ slw r4, r4, r10
|
||||
/* 8038DAEC 0038AA4C 34 E7 FF FF */ addic. r7, r7, -1
|
||||
/* 8038DAF0 0038AA50 7C 60 5C 30 */ srw r0, r3, r11
|
||||
/* 8038DAF4 0038AA54 7C 63 50 30 */ slw r3, r3, r10
|
||||
/* 8038DAF8 0038AA58 7C 80 03 78 */ or r0, r4, r0
|
||||
/* 8038DAFC 0038AA5C 90 06 00 04 */ stw r0, 4(r6)
|
||||
/* 8038DB00 0038AA60 84 88 00 08 */ lwzu r4, 8(r8)
|
||||
/* 8038DB04 0038AA64 7C 80 5C 30 */ srw r0, r4, r11
|
||||
/* 8038DB08 0038AA68 7C 60 03 78 */ or r0, r3, r0
|
||||
/* 8038DB0C 0038AA6C 94 06 00 08 */ stwu r0, 8(r6)
|
||||
/* 8038DB10 0038AA70 40 82 FF D4 */ bne lbl_8038DAE4
|
||||
/* 8038DB14 0038AA74 54 A0 07 7B */ rlwinm. r0, r5, 0, 0x1d, 0x1d
|
||||
/* 8038DB18 0038AA78 41 82 00 18 */ beq lbl_8038DB30
|
||||
/* 8038DB1C 0038AA7C 84 08 00 04 */ lwzu r0, 4(r8)
|
||||
/* 8038DB20 0038AA80 7C 83 50 30 */ slw r3, r4, r10
|
||||
/* 8038DB24 0038AA84 7C 00 5C 30 */ srw r0, r0, r11
|
||||
/* 8038DB28 0038AA88 7C 60 03 78 */ or r0, r3, r0
|
||||
/* 8038DB2C 0038AA8C 94 06 00 04 */ stwu r0, 4(r6)
|
||||
lbl_8038DB30:
|
||||
/* 8038DB30 0038AA90 38 00 00 03 */ li r0, 3
|
||||
/* 8038DB34 0038AA94 38 88 00 03 */ addi r4, r8, 3
|
||||
/* 8038DB38 0038AA98 7C A5 00 39 */ and. r5, r5, r0
|
||||
/* 8038DB3C 0038AA9C 38 66 00 03 */ addi r3, r6, 3
|
||||
/* 8038DB40 0038AAA0 4D 82 00 20 */ beqlr
|
||||
/* 8038DB44 0038AAA4 20 09 00 04 */ subfic r0, r9, 4
|
||||
/* 8038DB48 0038AAA8 7C 80 20 50 */ subf r4, r0, r4
|
||||
lbl_8038DB4C:
|
||||
/* 8038DB4C 0038AAAC 8C 04 00 01 */ lbzu r0, 1(r4)
|
||||
/* 8038DB50 0038AAB0 34 A5 FF FF */ addic. r5, r5, -1
|
||||
/* 8038DB54 0038AAB4 9C 03 00 01 */ stbu r0, 1(r3)
|
||||
/* 8038DB58 0038AAB8 40 82 FF F4 */ bne lbl_8038DB4C
|
||||
/* 8038DB5C 0038AABC 4E 80 00 20 */ blr
|
||||
|
||||
.global __copy_longs_rev_aligned
|
||||
__copy_longs_rev_aligned:
|
||||
/* 8038DB60 0038AAC0 7C C3 2A 14 */ add r6, r3, r5
|
||||
/* 8038DB64 0038AAC4 7C 84 2A 14 */ add r4, r4, r5
|
||||
/* 8038DB68 0038AAC8 54 C3 07 BF */ clrlwi. r3, r6, 0x1e
|
||||
/* 8038DB6C 0038AACC 41 82 00 18 */ beq lbl_8038DB84
|
||||
/* 8038DB70 0038AAD0 7C A3 28 50 */ subf r5, r3, r5
|
||||
lbl_8038DB74:
|
||||
/* 8038DB74 0038AAD4 8C 04 FF FF */ lbzu r0, -1(r4)
|
||||
/* 8038DB78 0038AAD8 34 63 FF FF */ addic. r3, r3, -1
|
||||
/* 8038DB7C 0038AADC 9C 06 FF FF */ stbu r0, -1(r6)
|
||||
/* 8038DB80 0038AAE0 40 82 FF F4 */ bne lbl_8038DB74
|
||||
lbl_8038DB84:
|
||||
/* 8038DB84 0038AAE4 54 A3 D9 7F */ rlwinm. r3, r5, 0x1b, 5, 0x1f
|
||||
/* 8038DB88 0038AAE8 41 82 00 4C */ beq lbl_8038DBD4
|
||||
lbl_8038DB8C:
|
||||
/* 8038DB8C 0038AAEC 80 04 FF FC */ lwz r0, -4(r4)
|
||||
/* 8038DB90 0038AAF0 34 63 FF FF */ addic. r3, r3, -1
|
||||
/* 8038DB94 0038AAF4 90 06 FF FC */ stw r0, -4(r6)
|
||||
/* 8038DB98 0038AAF8 80 04 FF F8 */ lwz r0, -8(r4)
|
||||
/* 8038DB9C 0038AAFC 90 06 FF F8 */ stw r0, -8(r6)
|
||||
/* 8038DBA0 0038AB00 80 04 FF F4 */ lwz r0, -0xc(r4)
|
||||
/* 8038DBA4 0038AB04 90 06 FF F4 */ stw r0, -0xc(r6)
|
||||
/* 8038DBA8 0038AB08 80 04 FF F0 */ lwz r0, -0x10(r4)
|
||||
/* 8038DBAC 0038AB0C 90 06 FF F0 */ stw r0, -0x10(r6)
|
||||
/* 8038DBB0 0038AB10 80 04 FF EC */ lwz r0, -0x14(r4)
|
||||
/* 8038DBB4 0038AB14 90 06 FF EC */ stw r0, -0x14(r6)
|
||||
/* 8038DBB8 0038AB18 80 04 FF E8 */ lwz r0, -0x18(r4)
|
||||
/* 8038DBBC 0038AB1C 90 06 FF E8 */ stw r0, -0x18(r6)
|
||||
/* 8038DBC0 0038AB20 80 04 FF E4 */ lwz r0, -0x1c(r4)
|
||||
/* 8038DBC4 0038AB24 90 06 FF E4 */ stw r0, -0x1c(r6)
|
||||
/* 8038DBC8 0038AB28 84 04 FF E0 */ lwzu r0, -0x20(r4)
|
||||
/* 8038DBCC 0038AB2C 94 06 FF E0 */ stwu r0, -0x20(r6)
|
||||
/* 8038DBD0 0038AB30 40 82 FF BC */ bne lbl_8038DB8C
|
||||
lbl_8038DBD4:
|
||||
/* 8038DBD4 0038AB34 54 A3 F7 7F */ rlwinm. r3, r5, 0x1e, 0x1d, 0x1f
|
||||
/* 8038DBD8 0038AB38 41 82 00 14 */ beq lbl_8038DBEC
|
||||
lbl_8038DBDC:
|
||||
/* 8038DBDC 0038AB3C 84 04 FF FC */ lwzu r0, -4(r4)
|
||||
/* 8038DBE0 0038AB40 34 63 FF FF */ addic. r3, r3, -1
|
||||
/* 8038DBE4 0038AB44 94 06 FF FC */ stwu r0, -4(r6)
|
||||
/* 8038DBE8 0038AB48 40 82 FF F4 */ bne lbl_8038DBDC
|
||||
lbl_8038DBEC:
|
||||
/* 8038DBEC 0038AB4C 38 00 00 03 */ li r0, 3
|
||||
/* 8038DBF0 0038AB50 7C A5 00 39 */ and. r5, r5, r0
|
||||
/* 8038DBF4 0038AB54 4D 82 00 20 */ beqlr
|
||||
lbl_8038DBF8:
|
||||
/* 8038DBF8 0038AB58 8C 04 FF FF */ lbzu r0, -1(r4)
|
||||
/* 8038DBFC 0038AB5C 34 A5 FF FF */ addic. r5, r5, -1
|
||||
/* 8038DC00 0038AB60 9C 06 FF FF */ stbu r0, -1(r6)
|
||||
/* 8038DC04 0038AB64 40 82 FF F4 */ bne lbl_8038DBF8
|
||||
/* 8038DC08 0038AB68 4E 80 00 20 */ blr
|
||||
|
||||
.global __copy_longs_aligned
|
||||
__copy_longs_aligned:
|
||||
/* 8038DC0C 0038AB6C 7C 03 00 D0 */ neg r0, r3
|
||||
/* 8038DC10 0038AB70 38 E4 FF FF */ addi r7, r4, -1
|
||||
/* 8038DC14 0038AB74 54 06 07 BF */ clrlwi. r6, r0, 0x1e
|
||||
/* 8038DC18 0038AB78 38 63 FF FF */ addi r3, r3, -1
|
||||
/* 8038DC1C 0038AB7C 41 82 00 18 */ beq lbl_8038DC34
|
||||
/* 8038DC20 0038AB80 7C A6 28 50 */ subf r5, r6, r5
|
||||
lbl_8038DC24:
|
||||
/* 8038DC24 0038AB84 8C 07 00 01 */ lbzu r0, 1(r7)
|
||||
/* 8038DC28 0038AB88 34 C6 FF FF */ addic. r6, r6, -1
|
||||
/* 8038DC2C 0038AB8C 9C 03 00 01 */ stbu r0, 1(r3)
|
||||
/* 8038DC30 0038AB90 40 82 FF F4 */ bne lbl_8038DC24
|
||||
lbl_8038DC34:
|
||||
/* 8038DC34 0038AB94 54 A4 D9 7F */ rlwinm. r4, r5, 0x1b, 5, 0x1f
|
||||
/* 8038DC38 0038AB98 38 C7 FF FD */ addi r6, r7, -3
|
||||
/* 8038DC3C 0038AB9C 38 63 FF FD */ addi r3, r3, -3
|
||||
/* 8038DC40 0038ABA0 41 82 00 4C */ beq lbl_8038DC8C
|
||||
lbl_8038DC44:
|
||||
/* 8038DC44 0038ABA4 80 06 00 04 */ lwz r0, 4(r6)
|
||||
/* 8038DC48 0038ABA8 34 84 FF FF */ addic. r4, r4, -1
|
||||
/* 8038DC4C 0038ABAC 90 03 00 04 */ stw r0, 4(r3)
|
||||
/* 8038DC50 0038ABB0 80 06 00 08 */ lwz r0, 8(r6)
|
||||
/* 8038DC54 0038ABB4 90 03 00 08 */ stw r0, 8(r3)
|
||||
/* 8038DC58 0038ABB8 80 06 00 0C */ lwz r0, 0xc(r6)
|
||||
/* 8038DC5C 0038ABBC 90 03 00 0C */ stw r0, 0xc(r3)
|
||||
/* 8038DC60 0038ABC0 80 06 00 10 */ lwz r0, 0x10(r6)
|
||||
/* 8038DC64 0038ABC4 90 03 00 10 */ stw r0, 0x10(r3)
|
||||
/* 8038DC68 0038ABC8 80 06 00 14 */ lwz r0, 0x14(r6)
|
||||
/* 8038DC6C 0038ABCC 90 03 00 14 */ stw r0, 0x14(r3)
|
||||
/* 8038DC70 0038ABD0 80 06 00 18 */ lwz r0, 0x18(r6)
|
||||
/* 8038DC74 0038ABD4 90 03 00 18 */ stw r0, 0x18(r3)
|
||||
/* 8038DC78 0038ABD8 80 06 00 1C */ lwz r0, 0x1c(r6)
|
||||
/* 8038DC7C 0038ABDC 90 03 00 1C */ stw r0, 0x1c(r3)
|
||||
/* 8038DC80 0038ABE0 84 06 00 20 */ lwzu r0, 0x20(r6)
|
||||
/* 8038DC84 0038ABE4 94 03 00 20 */ stwu r0, 0x20(r3)
|
||||
/* 8038DC88 0038ABE8 40 82 FF BC */ bne lbl_8038DC44
|
||||
lbl_8038DC8C:
|
||||
/* 8038DC8C 0038ABEC 54 A4 F7 7F */ rlwinm. r4, r5, 0x1e, 0x1d, 0x1f
|
||||
/* 8038DC90 0038ABF0 41 82 00 14 */ beq lbl_8038DCA4
|
||||
lbl_8038DC94:
|
||||
/* 8038DC94 0038ABF4 84 06 00 04 */ lwzu r0, 4(r6)
|
||||
/* 8038DC98 0038ABF8 34 84 FF FF */ addic. r4, r4, -1
|
||||
/* 8038DC9C 0038ABFC 94 03 00 04 */ stwu r0, 4(r3)
|
||||
/* 8038DCA0 0038AC00 40 82 FF F4 */ bne lbl_8038DC94
|
||||
lbl_8038DCA4:
|
||||
/* 8038DCA4 0038AC04 38 00 00 03 */ li r0, 3
|
||||
/* 8038DCA8 0038AC08 38 86 00 03 */ addi r4, r6, 3
|
||||
/* 8038DCAC 0038AC0C 7C A5 00 39 */ and. r5, r5, r0
|
||||
/* 8038DCB0 0038AC10 38 63 00 03 */ addi r3, r3, 3
|
||||
/* 8038DCB4 0038AC14 4D 82 00 20 */ beqlr
|
||||
lbl_8038DCB8:
|
||||
/* 8038DCB8 0038AC18 8C 04 00 01 */ lbzu r0, 1(r4)
|
||||
/* 8038DCBC 0038AC1C 34 A5 FF FF */ addic. r5, r5, -1
|
||||
/* 8038DCC0 0038AC20 9C 03 00 01 */ stbu r0, 1(r3)
|
||||
/* 8038DCC4 0038AC24 40 82 FF F4 */ bne lbl_8038DCB8
|
||||
/* 8038DCC8 0038AC28 4E 80 00 20 */ blr
|
|
@ -0,0 +1,12 @@
|
|||
.include "macros.inc"
|
||||
|
||||
.section .text, "ax"
|
||||
.if 0
|
||||
/* THIS DOESN'T WORK???? */
|
||||
.global __stdio_atexit
|
||||
__stdio_atexit:
|
||||
/* 8038DCCC 0038AC2C 3C 60 80 39 */ lis r3, __close_all@ha
|
||||
/* 8038DCD0 0038AC30 38 03 B1 18 */ addi r0, r3, __close_all@l
|
||||
/* 8038DCD4 0038AC34 90 0D AE 00 */ stw r0, lbl_805A99C0@sda21(r13)
|
||||
/* 8038DCD8 0038AC38 4E 80 00 20 */ blr
|
||||
.endif
|
File diff suppressed because it is too large
Load Diff
|
@ -0,0 +1,109 @@
|
|||
.include "macros.inc"
|
||||
|
||||
.section .text, "ax"
|
||||
|
||||
.global qsort
|
||||
qsort:
|
||||
/* 8038FD04 0038CC64 94 21 FF C0 */ stwu r1, -0x40(r1)
|
||||
/* 8038FD08 0038CC68 7C 08 02 A6 */ mflr r0
|
||||
/* 8038FD0C 0038CC6C 28 04 00 02 */ cmplwi r4, 2
|
||||
/* 8038FD10 0038CC70 90 01 00 44 */ stw r0, 0x44(r1)
|
||||
/* 8038FD14 0038CC74 BE A1 00 14 */ stmw r21, 0x14(r1)
|
||||
/* 8038FD18 0038CC78 7C 7D 1B 78 */ mr r29, r3
|
||||
/* 8038FD1C 0038CC7C 7C BE 2B 78 */ mr r30, r5
|
||||
/* 8038FD20 0038CC80 7C DF 33 78 */ mr r31, r6
|
||||
/* 8038FD24 0038CC84 41 80 01 3C */ blt lbl_8038FE60
|
||||
/* 8038FD28 0038CC88 54 83 F8 7E */ srwi r3, r4, 1
|
||||
/* 8038FD2C 0038CC8C 38 04 FF FF */ addi r0, r4, -1
|
||||
/* 8038FD30 0038CC90 3B 83 00 01 */ addi r28, r3, 1
|
||||
/* 8038FD34 0038CC94 7C 9B 23 78 */ mr r27, r4
|
||||
/* 8038FD38 0038CC98 38 7C FF FF */ addi r3, r28, -1
|
||||
/* 8038FD3C 0038CC9C 7C 7E 19 D6 */ mullw r3, r30, r3
|
||||
/* 8038FD40 0038CCA0 7C 1E 01 D6 */ mullw r0, r30, r0
|
||||
/* 8038FD44 0038CCA4 7F 3D 1A 14 */ add r25, r29, r3
|
||||
/* 8038FD48 0038CCA8 7F 1D 02 14 */ add r24, r29, r0
|
||||
lbl_8038FD4C:
|
||||
/* 8038FD4C 0038CCAC 28 1C 00 01 */ cmplwi r28, 1
|
||||
/* 8038FD50 0038CCB0 40 81 00 10 */ ble lbl_8038FD60
|
||||
/* 8038FD54 0038CCB4 7F 3E C8 50 */ subf r25, r30, r25
|
||||
/* 8038FD58 0038CCB8 3B 9C FF FF */ addi r28, r28, -1
|
||||
/* 8038FD5C 0038CCBC 48 00 00 48 */ b lbl_8038FDA4
|
||||
lbl_8038FD60:
|
||||
/* 8038FD60 0038CCC0 38 78 FF FF */ addi r3, r24, -1
|
||||
/* 8038FD64 0038CCC4 38 99 FF FF */ addi r4, r25, -1
|
||||
/* 8038FD68 0038CCC8 38 BE 00 01 */ addi r5, r30, 1
|
||||
/* 8038FD6C 0038CCCC 48 00 00 20 */ b lbl_8038FD8C
|
||||
lbl_8038FD70:
|
||||
/* 8038FD70 0038CCD0 88 C4 00 01 */ lbz r6, 1(r4)
|
||||
/* 8038FD74 0038CCD4 88 03 00 01 */ lbz r0, 1(r3)
|
||||
/* 8038FD78 0038CCD8 7C C6 07 74 */ extsb r6, r6
|
||||
/* 8038FD7C 0038CCDC 98 04 00 01 */ stb r0, 1(r4)
|
||||
/* 8038FD80 0038CCE0 38 84 00 01 */ addi r4, r4, 1
|
||||
/* 8038FD84 0038CCE4 98 C3 00 01 */ stb r6, 1(r3)
|
||||
/* 8038FD88 0038CCE8 38 63 00 01 */ addi r3, r3, 1
|
||||
lbl_8038FD8C:
|
||||
/* 8038FD8C 0038CCEC 34 A5 FF FF */ addic. r5, r5, -1
|
||||
/* 8038FD90 0038CCF0 40 82 FF E0 */ bne lbl_8038FD70
|
||||
/* 8038FD94 0038CCF4 3B 7B FF FF */ addi r27, r27, -1
|
||||
/* 8038FD98 0038CCF8 28 1B 00 01 */ cmplwi r27, 1
|
||||
/* 8038FD9C 0038CCFC 41 82 00 C4 */ beq lbl_8038FE60
|
||||
/* 8038FDA0 0038CD00 7F 1E C0 50 */ subf r24, r30, r24
|
||||
lbl_8038FDA4:
|
||||
/* 8038FDA4 0038CD04 38 1C FF FF */ addi r0, r28, -1
|
||||
/* 8038FDA8 0038CD08 7F 9A E3 78 */ mr r26, r28
|
||||
/* 8038FDAC 0038CD0C 7C 1E 01 D6 */ mullw r0, r30, r0
|
||||
/* 8038FDB0 0038CD10 7E DD 02 14 */ add r22, r29, r0
|
||||
/* 8038FDB4 0038CD14 48 00 00 9C */ b lbl_8038FE50
|
||||
lbl_8038FDB8:
|
||||
/* 8038FDB8 0038CD18 38 00 00 02 */ li r0, 2
|
||||
/* 8038FDBC 0038CD1C 7E D7 B3 78 */ mr r23, r22
|
||||
/* 8038FDC0 0038CD20 7F 5A 01 D6 */ mullw r26, r26, r0
|
||||
/* 8038FDC4 0038CD24 38 1A FF FF */ addi r0, r26, -1
|
||||
/* 8038FDC8 0038CD28 7C 1E 01 D6 */ mullw r0, r30, r0
|
||||
/* 8038FDCC 0038CD2C 7C 1A D8 40 */ cmplw r26, r27
|
||||
/* 8038FDD0 0038CD30 7E DD 02 14 */ add r22, r29, r0
|
||||
/* 8038FDD4 0038CD34 40 80 00 2C */ bge lbl_8038FE00
|
||||
/* 8038FDD8 0038CD38 7E B6 F2 14 */ add r21, r22, r30
|
||||
/* 8038FDDC 0038CD3C 7F EC FB 78 */ mr r12, r31
|
||||
/* 8038FDE0 0038CD40 7E C3 B3 78 */ mr r3, r22
|
||||
/* 8038FDE4 0038CD44 7E A4 AB 78 */ mr r4, r21
|
||||
/* 8038FDE8 0038CD48 7D 89 03 A6 */ mtctr r12
|
||||
/* 8038FDEC 0038CD4C 4E 80 04 21 */ bctrl
|
||||
/* 8038FDF0 0038CD50 2C 03 00 00 */ cmpwi r3, 0
|
||||
/* 8038FDF4 0038CD54 40 80 00 0C */ bge lbl_8038FE00
|
||||
/* 8038FDF8 0038CD58 7E B6 AB 78 */ mr r22, r21
|
||||
/* 8038FDFC 0038CD5C 3B 5A 00 01 */ addi r26, r26, 1
|
||||
lbl_8038FE00:
|
||||
/* 8038FE00 0038CD60 7F EC FB 78 */ mr r12, r31
|
||||
/* 8038FE04 0038CD64 7E E3 BB 78 */ mr r3, r23
|
||||
/* 8038FE08 0038CD68 7E C4 B3 78 */ mr r4, r22
|
||||
/* 8038FE0C 0038CD6C 7D 89 03 A6 */ mtctr r12
|
||||
/* 8038FE10 0038CD70 4E 80 04 21 */ bctrl
|
||||
/* 8038FE14 0038CD74 2C 03 00 00 */ cmpwi r3, 0
|
||||
/* 8038FE18 0038CD78 40 80 FF 34 */ bge lbl_8038FD4C
|
||||
/* 8038FE1C 0038CD7C 38 76 FF FF */ addi r3, r22, -1
|
||||
/* 8038FE20 0038CD80 38 97 FF FF */ addi r4, r23, -1
|
||||
/* 8038FE24 0038CD84 38 BE 00 01 */ addi r5, r30, 1
|
||||
/* 8038FE28 0038CD88 48 00 00 20 */ b lbl_8038FE48
|
||||
lbl_8038FE2C:
|
||||
/* 8038FE2C 0038CD8C 88 C4 00 01 */ lbz r6, 1(r4)
|
||||
/* 8038FE30 0038CD90 88 03 00 01 */ lbz r0, 1(r3)
|
||||
/* 8038FE34 0038CD94 7C C6 07 74 */ extsb r6, r6
|
||||
/* 8038FE38 0038CD98 98 04 00 01 */ stb r0, 1(r4)
|
||||
/* 8038FE3C 0038CD9C 38 84 00 01 */ addi r4, r4, 1
|
||||
/* 8038FE40 0038CDA0 98 C3 00 01 */ stb r6, 1(r3)
|
||||
/* 8038FE44 0038CDA4 38 63 00 01 */ addi r3, r3, 1
|
||||
lbl_8038FE48:
|
||||
/* 8038FE48 0038CDA8 34 A5 FF FF */ addic. r5, r5, -1
|
||||
/* 8038FE4C 0038CDAC 40 82 FF E0 */ bne lbl_8038FE2C
|
||||
lbl_8038FE50:
|
||||
/* 8038FE50 0038CDB0 57 40 08 3C */ slwi r0, r26, 1
|
||||
/* 8038FE54 0038CDB4 7C 00 D8 40 */ cmplw r0, r27
|
||||
/* 8038FE58 0038CDB8 40 81 FF 60 */ ble lbl_8038FDB8
|
||||
/* 8038FE5C 0038CDBC 4B FF FE F0 */ b lbl_8038FD4C
|
||||
lbl_8038FE60:
|
||||
/* 8038FE60 0038CDC0 BA A1 00 14 */ lmw r21, 0x14(r1)
|
||||
/* 8038FE64 0038CDC4 80 01 00 44 */ lwz r0, 0x44(r1)
|
||||
/* 8038FE68 0038CDC8 7C 08 03 A6 */ mtlr r0
|
||||
/* 8038FE6C 0038CDCC 38 21 00 40 */ addi r1, r1, 0x40
|
||||
/* 8038FE70 0038CDD0 4E 80 00 20 */ blr
|
|
@ -0,0 +1,19 @@
|
|||
.include "macros.inc"
|
||||
|
||||
.section .text, "ax"
|
||||
|
||||
.global srand
|
||||
srand:
|
||||
/* 8038FE74 0038CDD4 90 6D 9F D8 */ stw r3, lbl_805A8B98@sda21(r13)
|
||||
/* 8038FE78 0038CDD8 4E 80 00 20 */ blr
|
||||
|
||||
.global rand
|
||||
rand:
|
||||
/* 8038FE7C 0038CDDC 3C 60 41 C6 */ lis r3, 0x41C64E6D@ha
|
||||
/* 8038FE80 0038CDE0 80 8D 9F D8 */ lwz r4, lbl_805A8B98@sda21(r13)
|
||||
/* 8038FE84 0038CDE4 38 03 4E 6D */ addi r0, r3, 0x41C64E6D@l
|
||||
/* 8038FE88 0038CDE8 7C 64 01 D6 */ mullw r3, r4, r0
|
||||
/* 8038FE8C 0038CDEC 38 03 30 39 */ addi r0, r3, 0x3039
|
||||
/* 8038FE90 0038CDF0 90 0D 9F D8 */ stw r0, lbl_805A8B98@sda21(r13)
|
||||
/* 8038FE94 0038CDF4 54 03 84 7E */ rlwinm r3, r0, 0x10, 0x11, 0x1f
|
||||
/* 8038FE98 0038CDF8 4E 80 00 20 */ blr
|
|
@ -0,0 +1,14 @@
|
|||
.include "macros.inc"
|
||||
|
||||
.section .text, "ax"
|
||||
|
||||
.global acos
|
||||
acos:
|
||||
/* 80394C2C 00391B8C 94 21 FF F0 */ stwu r1, -0x10(r1)
|
||||
/* 80394C30 00391B90 7C 08 02 A6 */ mflr r0
|
||||
/* 80394C34 00391B94 90 01 00 14 */ stw r0, 0x14(r1)
|
||||
/* 80394C38 00391B98 4B FF C7 91 */ bl __ieee754_acos
|
||||
/* 80394C3C 00391B9C 80 01 00 14 */ lwz r0, 0x14(r1)
|
||||
/* 80394C40 00391BA0 7C 08 03 A6 */ mtlr r0
|
||||
/* 80394C44 00391BA4 38 21 00 10 */ addi r1, r1, 0x10
|
||||
/* 80394C48 00391BA8 4E 80 00 20 */ blr
|
|
@ -0,0 +1,14 @@
|
|||
.include "macros.inc"
|
||||
|
||||
.section .text, "ax"
|
||||
|
||||
.global asin
|
||||
asin:
|
||||
/* 80394C4C 00391BAC 94 21 FF F0 */ stwu r1, -0x10(r1)
|
||||
/* 80394C50 00391BB0 7C 08 02 A6 */ mflr r0
|
||||
/* 80394C54 00391BB4 90 01 00 14 */ stw r0, 0x14(r1)
|
||||
/* 80394C58 00391BB8 4B FF CA 81 */ bl __ieee754_asin
|
||||
/* 80394C5C 00391BBC 80 01 00 14 */ lwz r0, 0x14(r1)
|
||||
/* 80394C60 00391BC0 7C 08 03 A6 */ mtlr r0
|
||||
/* 80394C64 00391BC4 38 21 00 10 */ addi r1, r1, 0x10
|
||||
/* 80394C68 00391BC8 4E 80 00 20 */ blr
|
|
@ -0,0 +1,146 @@
|
|||
.include "macros.inc"
|
||||
|
||||
.section .text, "ax"
|
||||
|
||||
.global atan
|
||||
atan:
|
||||
/* 803941C8 00391128 94 21 FF F0 */ stwu r1, -0x10(r1)
|
||||
/* 803941CC 0039112C 3C 60 80 3E */ lis r3, lbl_803D89D0@ha
|
||||
/* 803941D0 00391130 3C 00 44 10 */ lis r0, 0x4410
|
||||
/* 803941D4 00391134 D8 21 00 08 */ stfd f1, 8(r1)
|
||||
/* 803941D8 00391138 38 83 89 D0 */ addi r4, r3, lbl_803D89D0@l
|
||||
/* 803941DC 0039113C 80 C1 00 08 */ lwz r6, 8(r1)
|
||||
/* 803941E0 00391140 54 C5 00 7E */ clrlwi r5, r6, 1
|
||||
/* 803941E4 00391144 7C 05 00 00 */ cmpw r5, r0
|
||||
/* 803941E8 00391148 41 80 00 60 */ blt lbl_80394248
|
||||
/* 803941EC 0039114C 3C 00 7F F0 */ lis r0, 0x7ff0
|
||||
/* 803941F0 00391150 7C 05 00 00 */ cmpw r5, r0
|
||||
/* 803941F4 00391154 41 81 00 1C */ bgt lbl_80394210
|
||||
/* 803941F8 00391158 3C 05 80 10 */ addis r0, r5, 0x8010
|
||||
/* 803941FC 0039115C 28 00 00 00 */ cmplwi r0, 0
|
||||
/* 80394200 00391160 40 82 00 1C */ bne lbl_8039421C
|
||||
/* 80394204 00391164 80 01 00 0C */ lwz r0, 0xc(r1)
|
||||
/* 80394208 00391168 2C 00 00 00 */ cmpwi r0, 0
|
||||
/* 8039420C 0039116C 41 82 00 10 */ beq lbl_8039421C
|
||||
lbl_80394210:
|
||||
/* 80394210 00391170 C8 01 00 08 */ lfd f0, 8(r1)
|
||||
/* 80394214 00391174 FC 20 00 2A */ fadd f1, f0, f0
|
||||
/* 80394218 00391178 48 00 01 A8 */ b lbl_803943C0
|
||||
lbl_8039421C:
|
||||
/* 8039421C 0039117C 2C 06 00 00 */ cmpwi r6, 0
|
||||
/* 80394220 00391180 40 81 00 14 */ ble lbl_80394234
|
||||
/* 80394224 00391184 C8 24 00 18 */ lfd f1, 0x18(r4)
|
||||
/* 80394228 00391188 C8 04 00 38 */ lfd f0, 0x38(r4)
|
||||
/* 8039422C 0039118C FC 21 00 2A */ fadd f1, f1, f0
|
||||
/* 80394230 00391190 48 00 01 90 */ b lbl_803943C0
|
||||
lbl_80394234:
|
||||
/* 80394234 00391194 C8 24 00 18 */ lfd f1, 0x18(r4)
|
||||
/* 80394238 00391198 C8 04 00 38 */ lfd f0, 0x38(r4)
|
||||
/* 8039423C 0039119C FC 20 08 50 */ fneg f1, f1
|
||||
/* 80394240 003911A0 FC 21 00 28 */ fsub f1, f1, f0
|
||||
/* 80394244 003911A4 48 00 01 7C */ b lbl_803943C0
|
||||
lbl_80394248:
|
||||
/* 80394248 003911A8 3C 00 3F DC */ lis r0, 0x3fdc
|
||||
/* 8039424C 003911AC 7C 05 00 00 */ cmpw r5, r0
|
||||
/* 80394250 003911B0 40 80 00 30 */ bge lbl_80394280
|
||||
/* 80394254 003911B4 3C 00 3E 20 */ lis r0, 0x3e20
|
||||
/* 80394258 003911B8 7C 05 00 00 */ cmpw r5, r0
|
||||
/* 8039425C 003911BC 40 80 00 1C */ bge lbl_80394278
|
||||
/* 80394260 003911C0 C8 42 D4 70 */ lfd f2, lbl_805AF190@sda21(r2)
|
||||
/* 80394264 003911C4 C8 02 D4 78 */ lfd f0, lbl_805AF198@sda21(r2)
|
||||
/* 80394268 003911C8 FC 42 08 2A */ fadd f2, f2, f1
|
||||
/* 8039426C 003911CC FC 02 00 40 */ fcmpo cr0, f2, f0
|
||||
/* 80394270 003911D0 40 81 00 08 */ ble lbl_80394278
|
||||
/* 80394274 003911D4 48 00 01 4C */ b lbl_803943C0
|
||||
lbl_80394278:
|
||||
/* 80394278 003911D8 38 00 FF FF */ li r0, -1
|
||||
/* 8039427C 003911DC 48 00 00 A0 */ b lbl_8039431C
|
||||
lbl_80394280:
|
||||
/* 80394280 003911E0 FC 60 0A 10 */ fabs f3, f1
|
||||
/* 80394284 003911E4 3C 00 3F F3 */ lis r0, 0x3ff3
|
||||
/* 80394288 003911E8 7C 05 00 00 */ cmpw r5, r0
|
||||
/* 8039428C 003911EC D8 61 00 08 */ stfd f3, 8(r1)
|
||||
/* 80394290 003911F0 40 80 00 4C */ bge lbl_803942DC
|
||||
/* 80394294 003911F4 3C 00 3F E6 */ lis r0, 0x3fe6
|
||||
/* 80394298 003911F8 7C 05 00 00 */ cmpw r5, r0
|
||||
/* 8039429C 003911FC 40 80 00 24 */ bge lbl_803942C0
|
||||
/* 803942A0 00391200 C8 42 D4 80 */ lfd f2, lbl_805AF1A0@sda21(r2)
|
||||
/* 803942A4 00391204 38 00 00 00 */ li r0, 0
|
||||
/* 803942A8 00391208 C8 22 D4 78 */ lfd f1, lbl_805AF198@sda21(r2)
|
||||
/* 803942AC 0039120C FC 02 18 2A */ fadd f0, f2, f3
|
||||
/* 803942B0 00391210 FC 22 08 F8 */ fmsub f1, f2, f3, f1
|
||||
/* 803942B4 00391214 FC 01 00 24 */ fdiv f0, f1, f0
|
||||
/* 803942B8 00391218 D8 01 00 08 */ stfd f0, 8(r1)
|
||||
/* 803942BC 0039121C 48 00 00 60 */ b lbl_8039431C
|
||||
lbl_803942C0:
|
||||
/* 803942C0 00391220 C8 02 D4 78 */ lfd f0, lbl_805AF198@sda21(r2)
|
||||
/* 803942C4 00391224 38 00 00 01 */ li r0, 1
|
||||
/* 803942C8 00391228 FC 23 00 28 */ fsub f1, f3, f0
|
||||
/* 803942CC 0039122C FC 00 18 2A */ fadd f0, f0, f3
|
||||
/* 803942D0 00391230 FC 01 00 24 */ fdiv f0, f1, f0
|
||||
/* 803942D4 00391234 D8 01 00 08 */ stfd f0, 8(r1)
|
||||
/* 803942D8 00391238 48 00 00 44 */ b lbl_8039431C
|
||||
lbl_803942DC:
|
||||
/* 803942DC 0039123C 3C 60 40 04 */ lis r3, 0x40038000@ha
|
||||
/* 803942E0 00391240 38 03 80 00 */ addi r0, r3, 0x40038000@l
|
||||
/* 803942E4 00391244 7C 05 00 00 */ cmpw r5, r0
|
||||
/* 803942E8 00391248 40 80 00 24 */ bge lbl_8039430C
|
||||
/* 803942EC 0039124C C8 42 D4 88 */ lfd f2, lbl_805AF1A8@sda21(r2)
|
||||
/* 803942F0 00391250 38 00 00 02 */ li r0, 2
|
||||
/* 803942F4 00391254 C8 02 D4 78 */ lfd f0, lbl_805AF198@sda21(r2)
|
||||
/* 803942F8 00391258 FC 23 10 28 */ fsub f1, f3, f2
|
||||
/* 803942FC 0039125C FC 02 00 FA */ fmadd f0, f2, f3, f0
|
||||
/* 80394300 00391260 FC 01 00 24 */ fdiv f0, f1, f0
|
||||
/* 80394304 00391264 D8 01 00 08 */ stfd f0, 8(r1)
|
||||
/* 80394308 00391268 48 00 00 14 */ b lbl_8039431C
|
||||
lbl_8039430C:
|
||||
/* 8039430C 0039126C C8 02 D4 90 */ lfd f0, lbl_805AF1B0@sda21(r2)
|
||||
/* 80394310 00391270 38 00 00 03 */ li r0, 3
|
||||
/* 80394314 00391274 FC 00 18 24 */ fdiv f0, f0, f3
|
||||
/* 80394318 00391278 D8 01 00 08 */ stfd f0, 8(r1)
|
||||
lbl_8039431C:
|
||||
/* 8039431C 0039127C C9 21 00 08 */ lfd f9, 8(r1)
|
||||
/* 80394320 00391280 2C 00 00 00 */ cmpwi r0, 0
|
||||
/* 80394324 00391284 C8 84 00 90 */ lfd f4, 0x90(r4)
|
||||
/* 80394328 00391288 FD 69 02 72 */ fmul f11, f9, f9
|
||||
/* 8039432C 0039128C C8 24 00 80 */ lfd f1, 0x80(r4)
|
||||
/* 80394330 00391290 C8 E4 00 70 */ lfd f7, 0x70(r4)
|
||||
/* 80394334 00391294 C8 64 00 88 */ lfd f3, 0x88(r4)
|
||||
/* 80394338 00391298 C8 04 00 78 */ lfd f0, 0x78(r4)
|
||||
/* 8039433C 0039129C FD 4B 02 F2 */ fmul f10, f11, f11
|
||||
/* 80394340 003912A0 C8 C4 00 60 */ lfd f6, 0x60(r4)
|
||||
/* 80394344 003912A4 C8 44 00 68 */ lfd f2, 0x68(r4)
|
||||
/* 80394348 003912A8 C8 A4 00 50 */ lfd f5, 0x50(r4)
|
||||
/* 8039434C 003912AC FD 0A 09 3A */ fmadd f8, f10, f4, f1
|
||||
/* 80394350 003912B0 C8 24 00 58 */ lfd f1, 0x58(r4)
|
||||
/* 80394354 003912B4 C8 84 00 40 */ lfd f4, 0x40(r4)
|
||||
/* 80394358 003912B8 FC 6A 00 FA */ fmadd f3, f10, f3, f0
|
||||
/* 8039435C 003912BC C8 04 00 48 */ lfd f0, 0x48(r4)
|
||||
/* 80394360 003912C0 FC EA 3A 3A */ fmadd f7, f10, f8, f7
|
||||
/* 80394364 003912C4 FC 4A 10 FA */ fmadd f2, f10, f3, f2
|
||||
/* 80394368 003912C8 FC 6A 31 FA */ fmadd f3, f10, f7, f6
|
||||
/* 8039436C 003912CC FC 2A 08 BA */ fmadd f1, f10, f2, f1
|
||||
/* 80394370 003912D0 FC 4A 28 FA */ fmadd f2, f10, f3, f5
|
||||
/* 80394374 003912D4 FC 0A 00 7A */ fmadd f0, f10, f1, f0
|
||||
/* 80394378 003912D8 FC 2A 20 BA */ fmadd f1, f10, f2, f4
|
||||
/* 8039437C 003912DC FC 4A 00 32 */ fmul f2, f10, f0
|
||||
/* 80394380 003912E0 FC 0B 00 72 */ fmul f0, f11, f1
|
||||
/* 80394384 003912E4 40 80 00 10 */ bge lbl_80394394
|
||||
/* 80394388 003912E8 FC 00 10 2A */ fadd f0, f0, f2
|
||||
/* 8039438C 003912EC FC 29 48 3C */ fnmsub f1, f9, f0, f9
|
||||
/* 80394390 003912F0 48 00 00 30 */ b lbl_803943C0
|
||||
lbl_80394394:
|
||||
/* 80394394 003912F4 54 00 18 38 */ slwi r0, r0, 3
|
||||
/* 80394398 003912F8 FC 20 10 2A */ fadd f1, f0, f2
|
||||
/* 8039439C 003912FC 7C 64 02 14 */ add r3, r4, r0
|
||||
/* 803943A0 00391300 2C 06 00 00 */ cmpwi r6, 0
|
||||
/* 803943A4 00391304 C8 03 00 20 */ lfd f0, 0x20(r3)
|
||||
/* 803943A8 00391308 C8 43 00 00 */ lfd f2, 0(r3)
|
||||
/* 803943AC 0039130C FC 09 00 78 */ fmsub f0, f9, f1, f0
|
||||
/* 803943B0 00391310 FC 00 48 28 */ fsub f0, f0, f9
|
||||
/* 803943B4 00391314 FC 22 00 28 */ fsub f1, f2, f0
|
||||
/* 803943B8 00391318 40 80 00 08 */ bge lbl_803943C0
|
||||
/* 803943BC 0039131C FC 20 08 50 */ fneg f1, f1
|
||||
lbl_803943C0:
|
||||
/* 803943C0 00391320 38 21 00 10 */ addi r1, r1, 0x10
|
||||
/* 803943C4 00391324 4E 80 00 20 */ blr
|
|
@ -0,0 +1,14 @@
|
|||
.include "macros.inc"
|
||||
|
||||
.section .text, "ax"
|
||||
|
||||
.global atan2
|
||||
atan2:
|
||||
/* 80394C6C 00391BCC 94 21 FF F0 */ stwu r1, -0x10(r1)
|
||||
/* 80394C70 00391BD0 7C 08 02 A6 */ mflr r0
|
||||
/* 80394C74 00391BD4 90 01 00 14 */ stw r0, 0x14(r1)
|
||||
/* 80394C78 00391BD8 4B FF CC C5 */ bl __ieee754_atan2
|
||||
/* 80394C7C 00391BDC 80 01 00 14 */ lwz r0, 0x14(r1)
|
||||
/* 80394C80 00391BE0 7C 08 03 A6 */ mtlr r0
|
||||
/* 80394C84 00391BE4 38 21 00 10 */ addi r1, r1, 0x10
|
||||
/* 80394C88 00391BE8 4E 80 00 20 */ blr
|
|
@ -0,0 +1,16 @@
|
|||
.include "macros.inc"
|
||||
|
||||
.section .text, "ax"
|
||||
|
||||
.global copysign
|
||||
copysign:
|
||||
/* 803943C8 00391328 94 21 FF E0 */ stwu r1, -0x20(r1)
|
||||
/* 803943CC 0039132C D8 21 00 08 */ stfd f1, 8(r1)
|
||||
/* 803943D0 00391330 D8 41 00 10 */ stfd f2, 0x10(r1)
|
||||
/* 803943D4 00391334 80 61 00 08 */ lwz r3, 8(r1)
|
||||
/* 803943D8 00391338 80 01 00 10 */ lwz r0, 0x10(r1)
|
||||
/* 803943DC 0039133C 50 60 00 7E */ rlwimi r0, r3, 0, 1, 0x1f
|
||||
/* 803943E0 00391340 90 01 00 08 */ stw r0, 8(r1)
|
||||
/* 803943E4 00391344 C8 21 00 08 */ lfd f1, 8(r1)
|
||||
/* 803943E8 00391348 38 21 00 20 */ addi r1, r1, 0x20
|
||||
/* 803943EC 0039134C 4E 80 00 20 */ blr
|
|
@ -0,0 +1,67 @@
|
|||
.include "macros.inc"
|
||||
|
||||
.section .text, "ax"
|
||||
|
||||
.global cos
|
||||
cos:
|
||||
/* 803943F0 00391350 94 21 FF E0 */ stwu r1, -0x20(r1)
|
||||
/* 803943F4 00391354 7C 08 02 A6 */ mflr r0
|
||||
/* 803943F8 00391358 3C 60 3F E9 */ lis r3, 0x3FE921FB@ha
|
||||
/* 803943FC 0039135C D8 21 00 08 */ stfd f1, 8(r1)
|
||||
/* 80394400 00391360 90 01 00 24 */ stw r0, 0x24(r1)
|
||||
/* 80394404 00391364 38 03 21 FB */ addi r0, r3, 0x3FE921FB@l
|
||||
/* 80394408 00391368 80 61 00 08 */ lwz r3, 8(r1)
|
||||
/* 8039440C 0039136C 54 63 00 7E */ clrlwi r3, r3, 1
|
||||
/* 80394410 00391370 7C 03 00 00 */ cmpw r3, r0
|
||||
/* 80394414 00391374 41 81 00 10 */ bgt lbl_80394424
|
||||
/* 80394418 00391378 C8 42 D4 98 */ lfd f2, lbl_805AF1B8@sda21(r2)
|
||||
/* 8039441C 0039137C 4B FF EB B1 */ bl __kernel_cos
|
||||
/* 80394420 00391380 48 00 00 94 */ b lbl_803944B4
|
||||
lbl_80394424:
|
||||
/* 80394424 00391384 3C 00 7F F0 */ lis r0, 0x7ff0
|
||||
/* 80394428 00391388 7C 03 00 00 */ cmpw r3, r0
|
||||
/* 8039442C 0039138C 41 80 00 0C */ blt lbl_80394438
|
||||
/* 80394430 00391390 FC 21 08 28 */ fsub f1, f1, f1
|
||||
/* 80394434 00391394 48 00 00 80 */ b lbl_803944B4
|
||||
lbl_80394438:
|
||||
/* 80394438 00391398 38 61 00 10 */ addi r3, r1, 0x10
|
||||
/* 8039443C 0039139C 4B FF E7 F1 */ bl __ieee754_rem_pio2
|
||||
/* 80394440 003913A0 54 60 07 BE */ clrlwi r0, r3, 0x1e
|
||||
/* 80394444 003913A4 2C 00 00 01 */ cmpwi r0, 1
|
||||
/* 80394448 003913A8 41 82 00 30 */ beq lbl_80394478
|
||||
/* 8039444C 003913AC 40 80 00 10 */ bge lbl_8039445C
|
||||
/* 80394450 003913B0 2C 00 00 00 */ cmpwi r0, 0
|
||||
/* 80394454 003913B4 40 80 00 14 */ bge lbl_80394468
|
||||
/* 80394458 003913B8 48 00 00 4C */ b lbl_803944A4
|
||||
lbl_8039445C:
|
||||
/* 8039445C 003913BC 2C 00 00 03 */ cmpwi r0, 3
|
||||
/* 80394460 003913C0 40 80 00 44 */ bge lbl_803944A4
|
||||
/* 80394464 003913C4 48 00 00 2C */ b lbl_80394490
|
||||
lbl_80394468:
|
||||
/* 80394468 003913C8 C8 21 00 10 */ lfd f1, 0x10(r1)
|
||||
/* 8039446C 003913CC C8 41 00 18 */ lfd f2, 0x18(r1)
|
||||
/* 80394470 003913D0 4B FF EB 5D */ bl __kernel_cos
|
||||
/* 80394474 003913D4 48 00 00 40 */ b lbl_803944B4
|
||||
lbl_80394478:
|
||||
/* 80394478 003913D8 C8 21 00 10 */ lfd f1, 0x10(r1)
|
||||
/* 8039447C 003913DC 38 60 00 01 */ li r3, 1
|
||||
/* 80394480 003913E0 C8 41 00 18 */ lfd f2, 0x18(r1)
|
||||
/* 80394484 003913E4 4B FF FA 91 */ bl __kernel_sin
|
||||
/* 80394488 003913E8 FC 20 08 50 */ fneg f1, f1
|
||||
/* 8039448C 003913EC 48 00 00 28 */ b lbl_803944B4
|
||||
lbl_80394490:
|
||||
/* 80394490 003913F0 C8 21 00 10 */ lfd f1, 0x10(r1)
|
||||
/* 80394494 003913F4 C8 41 00 18 */ lfd f2, 0x18(r1)
|
||||
/* 80394498 003913F8 4B FF EB 35 */ bl __kernel_cos
|
||||
/* 8039449C 003913FC FC 20 08 50 */ fneg f1, f1
|
||||
/* 803944A0 00391400 48 00 00 14 */ b lbl_803944B4
|
||||
lbl_803944A4:
|
||||
/* 803944A4 00391404 C8 21 00 10 */ lfd f1, 0x10(r1)
|
||||
/* 803944A8 00391408 38 60 00 01 */ li r3, 1
|
||||
/* 803944AC 0039140C C8 41 00 18 */ lfd f2, 0x18(r1)
|
||||
/* 803944B0 00391410 4B FF FA 65 */ bl __kernel_sin
|
||||
lbl_803944B4:
|
||||
/* 803944B4 00391414 80 01 00 24 */ lwz r0, 0x24(r1)
|
||||
/* 803944B8 00391418 7C 08 03 A6 */ mtlr r0
|
||||
/* 803944BC 0039141C 38 21 00 20 */ addi r1, r1, 0x20
|
||||
/* 803944C0 00391420 4E 80 00 20 */ blr
|
|
@ -0,0 +1,15 @@
|
|||
.include "macros.inc"
|
||||
|
||||
.section .text, "ax"
|
||||
|
||||
.global cosf
|
||||
cosf:
|
||||
/* 80394D0C 00391C6C 94 21 FF F0 */ stwu r1, -0x10(r1)
|
||||
/* 80394D10 00391C70 7C 08 02 A6 */ mflr r0
|
||||
/* 80394D14 00391C74 90 01 00 14 */ stw r0, 0x14(r1)
|
||||
/* 80394D18 00391C78 4B FF F6 D9 */ bl cos
|
||||
/* 80394D1C 00391C7C 80 01 00 14 */ lwz r0, 0x14(r1)
|
||||
/* 80394D20 00391C80 FC 20 08 18 */ frsp f1, f1
|
||||
/* 80394D24 00391C84 7C 08 03 A6 */ mtlr r0
|
||||
/* 80394D28 00391C88 38 21 00 10 */ addi r1, r1, 0x10
|
||||
/* 80394D2C 00391C8C 4E 80 00 20 */ blr
|
|
@ -0,0 +1,14 @@
|
|||
.include "macros.inc"
|
||||
|
||||
.section .text, "ax"
|
||||
|
||||
.global exp
|
||||
exp:
|
||||
/* 80394C8C 00391BEC 94 21 FF F0 */ stwu r1, -0x10(r1)
|
||||
/* 80394C90 00391BF0 7C 08 02 A6 */ mflr r0
|
||||
/* 80394C94 00391BF4 90 01 00 14 */ stw r0, 0x14(r1)
|
||||
/* 80394C98 00391BF8 4B FF CF 35 */ bl __ieee754_exp
|
||||
/* 80394C9C 00391BFC 80 01 00 14 */ lwz r0, 0x14(r1)
|
||||
/* 80394CA0 00391C00 7C 08 03 A6 */ mtlr r0
|
||||
/* 80394CA4 00391C04 38 21 00 10 */ addi r1, r1, 0x10
|
||||
/* 80394CA8 00391C08 4E 80 00 20 */ blr
|
|
@ -0,0 +1,100 @@
|
|||
.include "macros.inc"
|
||||
|
||||
.section .text, "ax"
|
||||
|
||||
.global floor
|
||||
floor:
|
||||
/* 803944C4 00391424 94 21 FF F0 */ stwu r1, -0x10(r1)
|
||||
/* 803944C8 00391428 D8 21 00 08 */ stfd f1, 8(r1)
|
||||
/* 803944CC 0039142C 80 A1 00 08 */ lwz r5, 8(r1)
|
||||
/* 803944D0 00391430 80 C1 00 0C */ lwz r6, 0xc(r1)
|
||||
/* 803944D4 00391434 54 A3 65 7E */ rlwinm r3, r5, 0xc, 0x15, 0x1f
|
||||
/* 803944D8 00391438 38 E3 FC 01 */ addi r7, r3, -1023
|
||||
/* 803944DC 0039143C 2C 07 00 14 */ cmpwi r7, 0x14
|
||||
/* 803944E0 00391440 40 80 00 98 */ bge lbl_80394578
|
||||
/* 803944E4 00391444 2C 07 00 00 */ cmpwi r7, 0
|
||||
/* 803944E8 00391448 40 80 00 44 */ bge lbl_8039452C
|
||||
/* 803944EC 0039144C C8 42 D4 A0 */ lfd f2, lbl_805AF1C0@sda21(r2)
|
||||
/* 803944F0 00391450 C8 02 D4 A8 */ lfd f0, lbl_805AF1C8@sda21(r2)
|
||||
/* 803944F4 00391454 FC 22 08 2A */ fadd f1, f2, f1
|
||||
/* 803944F8 00391458 FC 01 00 40 */ fcmpo cr0, f1, f0
|
||||
/* 803944FC 0039145C 40 81 00 FC */ ble lbl_803945F8
|
||||
/* 80394500 00391460 2C 05 00 00 */ cmpwi r5, 0
|
||||
/* 80394504 00391464 41 80 00 10 */ blt lbl_80394514
|
||||
/* 80394508 00391468 38 C0 00 00 */ li r6, 0
|
||||
/* 8039450C 0039146C 38 A0 00 00 */ li r5, 0
|
||||
/* 80394510 00391470 48 00 00 E8 */ b lbl_803945F8
|
||||
lbl_80394514:
|
||||
/* 80394514 00391474 54 A0 00 7E */ clrlwi r0, r5, 1
|
||||
/* 80394518 00391478 7C 00 33 79 */ or. r0, r0, r6
|
||||
/* 8039451C 0039147C 41 82 00 DC */ beq lbl_803945F8
|
||||
/* 80394520 00391480 3C A0 BF F0 */ lis r5, 0xbff0
|
||||
/* 80394524 00391484 38 C0 00 00 */ li r6, 0
|
||||
/* 80394528 00391488 48 00 00 D0 */ b lbl_803945F8
|
||||
lbl_8039452C:
|
||||
/* 8039452C 0039148C 3C 60 00 10 */ lis r3, 0x000FFFFF@ha
|
||||
/* 80394530 00391490 38 03 FF FF */ addi r0, r3, 0x000FFFFF@l
|
||||
/* 80394534 00391494 7C 04 3E 30 */ sraw r4, r0, r7
|
||||
/* 80394538 00391498 7C A0 20 38 */ and r0, r5, r4
|
||||
/* 8039453C 0039149C 7C C0 03 79 */ or. r0, r6, r0
|
||||
/* 80394540 003914A0 40 82 00 08 */ bne lbl_80394548
|
||||
/* 80394544 003914A4 48 00 00 C0 */ b lbl_80394604
|
||||
lbl_80394548:
|
||||
/* 80394548 003914A8 C8 42 D4 A0 */ lfd f2, lbl_805AF1C0@sda21(r2)
|
||||
/* 8039454C 003914AC C8 02 D4 A8 */ lfd f0, lbl_805AF1C8@sda21(r2)
|
||||
/* 80394550 003914B0 FC 22 08 2A */ fadd f1, f2, f1
|
||||
/* 80394554 003914B4 FC 01 00 40 */ fcmpo cr0, f1, f0
|
||||
/* 80394558 003914B8 40 81 00 A0 */ ble lbl_803945F8
|
||||
/* 8039455C 003914BC 2C 05 00 00 */ cmpwi r5, 0
|
||||
/* 80394560 003914C0 40 80 00 0C */ bge lbl_8039456C
|
||||
/* 80394564 003914C4 7C 60 3E 30 */ sraw r0, r3, r7
|
||||
/* 80394568 003914C8 7C A5 02 14 */ add r5, r5, r0
|
||||
lbl_8039456C:
|
||||
/* 8039456C 003914CC 7C A5 20 78 */ andc r5, r5, r4
|
||||
/* 80394570 003914D0 38 C0 00 00 */ li r6, 0
|
||||
/* 80394574 003914D4 48 00 00 84 */ b lbl_803945F8
|
||||
lbl_80394578:
|
||||
/* 80394578 003914D8 2C 07 00 33 */ cmpwi r7, 0x33
|
||||
/* 8039457C 003914DC 40 81 00 14 */ ble lbl_80394590
|
||||
/* 80394580 003914E0 2C 07 04 00 */ cmpwi r7, 0x400
|
||||
/* 80394584 003914E4 40 82 00 80 */ bne lbl_80394604
|
||||
/* 80394588 003914E8 FC 21 08 2A */ fadd f1, f1, f1
|
||||
/* 8039458C 003914EC 48 00 00 78 */ b lbl_80394604
|
||||
lbl_80394590:
|
||||
/* 80394590 003914F0 38 07 FF EC */ addi r0, r7, -20
|
||||
/* 80394594 003914F4 38 60 FF FF */ li r3, -1
|
||||
/* 80394598 003914F8 7C 64 04 30 */ srw r4, r3, r0
|
||||
/* 8039459C 003914FC 7C C0 20 39 */ and. r0, r6, r4
|
||||
/* 803945A0 00391500 40 82 00 08 */ bne lbl_803945A8
|
||||
/* 803945A4 00391504 48 00 00 60 */ b lbl_80394604
|
||||
lbl_803945A8:
|
||||
/* 803945A8 00391508 C8 42 D4 A0 */ lfd f2, lbl_805AF1C0@sda21(r2)
|
||||
/* 803945AC 0039150C C8 02 D4 A8 */ lfd f0, lbl_805AF1C8@sda21(r2)
|
||||
/* 803945B0 00391510 FC 22 08 2A */ fadd f1, f2, f1
|
||||
/* 803945B4 00391514 FC 01 00 40 */ fcmpo cr0, f1, f0
|
||||
/* 803945B8 00391518 40 81 00 40 */ ble lbl_803945F8
|
||||
/* 803945BC 0039151C 2C 05 00 00 */ cmpwi r5, 0
|
||||
/* 803945C0 00391520 40 80 00 34 */ bge lbl_803945F4
|
||||
/* 803945C4 00391524 2C 07 00 14 */ cmpwi r7, 0x14
|
||||
/* 803945C8 00391528 40 82 00 0C */ bne lbl_803945D4
|
||||
/* 803945CC 0039152C 38 A5 00 01 */ addi r5, r5, 1
|
||||
/* 803945D0 00391530 48 00 00 24 */ b lbl_803945F4
|
||||
lbl_803945D4:
|
||||
/* 803945D4 00391534 20 07 00 34 */ subfic r0, r7, 0x34
|
||||
/* 803945D8 00391538 38 60 00 01 */ li r3, 1
|
||||
/* 803945DC 0039153C 7C 60 00 30 */ slw r0, r3, r0
|
||||
/* 803945E0 00391540 7C 06 02 14 */ add r0, r6, r0
|
||||
/* 803945E4 00391544 7C 00 30 40 */ cmplw r0, r6
|
||||
/* 803945E8 00391548 40 80 00 08 */ bge lbl_803945F0
|
||||
/* 803945EC 0039154C 38 A5 00 01 */ addi r5, r5, 1
|
||||
lbl_803945F0:
|
||||
/* 803945F0 00391550 7C 06 03 78 */ mr r6, r0
|
||||
lbl_803945F4:
|
||||
/* 803945F4 00391554 7C C6 20 78 */ andc r6, r6, r4
|
||||
lbl_803945F8:
|
||||
/* 803945F8 00391558 90 A1 00 08 */ stw r5, 8(r1)
|
||||
/* 803945FC 0039155C 90 C1 00 0C */ stw r6, 0xc(r1)
|
||||
/* 80394600 00391560 C8 21 00 08 */ lfd f1, 8(r1)
|
||||
lbl_80394604:
|
||||
/* 80394604 00391564 38 21 00 10 */ addi r1, r1, 0x10
|
||||
/* 80394608 00391568 4E 80 00 20 */ blr
|
|
@ -0,0 +1,14 @@
|
|||
.include "macros.inc"
|
||||
|
||||
.section .text, "ax"
|
||||
|
||||
.global fmod
|
||||
fmod:
|
||||
/* 80394CAC 00391C0C 94 21 FF F0 */ stwu r1, -0x10(r1)
|
||||
/* 80394CB0 00391C10 7C 08 02 A6 */ mflr r0
|
||||
/* 80394CB4 00391C14 90 01 00 14 */ stw r0, 0x14(r1)
|
||||
/* 80394CB8 00391C18 4B FF D1 31 */ bl __ieee754_fmod
|
||||
/* 80394CBC 00391C1C 80 01 00 14 */ lwz r0, 0x14(r1)
|
||||
/* 80394CC0 00391C20 7C 08 03 A6 */ mtlr r0
|
||||
/* 80394CC4 00391C24 38 21 00 10 */ addi r1, r1, 0x10
|
||||
/* 80394CC8 00391C28 4E 80 00 20 */ blr
|
|
@ -0,0 +1,45 @@
|
|||
.include "macros.inc"
|
||||
|
||||
.section .text, "ax"
|
||||
|
||||
.global frexp
|
||||
frexp:
|
||||
/* 8039460C 0039156C 94 21 FF F0 */ stwu r1, -0x10(r1)
|
||||
/* 80394610 00391570 38 80 00 00 */ li r4, 0
|
||||
/* 80394614 00391574 3C 00 7F F0 */ lis r0, 0x7ff0
|
||||
/* 80394618 00391578 D8 21 00 08 */ stfd f1, 8(r1)
|
||||
/* 8039461C 0039157C 80 A1 00 08 */ lwz r5, 8(r1)
|
||||
/* 80394620 00391580 90 83 00 00 */ stw r4, 0(r3)
|
||||
/* 80394624 00391584 54 A4 00 7E */ clrlwi r4, r5, 1
|
||||
/* 80394628 00391588 80 C1 00 0C */ lwz r6, 0xc(r1)
|
||||
/* 8039462C 0039158C 7C 04 00 00 */ cmpw r4, r0
|
||||
/* 80394630 00391590 40 80 00 0C */ bge lbl_8039463C
|
||||
/* 80394634 00391594 7C 80 33 79 */ or. r0, r4, r6
|
||||
/* 80394638 00391598 40 82 00 0C */ bne lbl_80394644
|
||||
lbl_8039463C:
|
||||
/* 8039463C 0039159C C8 21 00 08 */ lfd f1, 8(r1)
|
||||
/* 80394640 003915A0 48 00 00 50 */ b lbl_80394690
|
||||
lbl_80394644:
|
||||
/* 80394644 003915A4 3C 00 00 10 */ lis r0, 0x10
|
||||
/* 80394648 003915A8 7C 04 00 00 */ cmpw r4, r0
|
||||
/* 8039464C 003915AC 40 80 00 20 */ bge lbl_8039466C
|
||||
/* 80394650 003915B0 C8 02 D4 B0 */ lfd f0, lbl_805AF1D0@sda21(r2)
|
||||
/* 80394654 003915B4 38 00 FF CA */ li r0, -54
|
||||
/* 80394658 003915B8 90 03 00 00 */ stw r0, 0(r3)
|
||||
/* 8039465C 003915BC FC 01 00 32 */ fmul f0, f1, f0
|
||||
/* 80394660 003915C0 D8 01 00 08 */ stfd f0, 8(r1)
|
||||
/* 80394664 003915C4 80 A1 00 08 */ lwz r5, 8(r1)
|
||||
/* 80394668 003915C8 54 A4 00 7E */ clrlwi r4, r5, 1
|
||||
lbl_8039466C:
|
||||
/* 8039466C 003915CC 54 A0 03 00 */ rlwinm r0, r5, 0, 0xc, 0
|
||||
/* 80394670 003915D0 80 A3 00 00 */ lwz r5, 0(r3)
|
||||
/* 80394674 003915D4 7C 84 A6 70 */ srawi r4, r4, 0x14
|
||||
/* 80394678 003915D8 64 00 3F E0 */ oris r0, r0, 0x3fe0
|
||||
/* 8039467C 003915DC 90 01 00 08 */ stw r0, 8(r1)
|
||||
/* 80394680 003915E0 7C 84 2A 14 */ add r4, r4, r5
|
||||
/* 80394684 003915E4 38 04 FC 02 */ addi r0, r4, -1022
|
||||
/* 80394688 003915E8 90 03 00 00 */ stw r0, 0(r3)
|
||||
/* 8039468C 003915EC C8 21 00 08 */ lfd f1, 8(r1)
|
||||
lbl_80394690:
|
||||
/* 80394690 003915F0 38 21 00 10 */ addi r1, r1, 0x10
|
||||
/* 80394694 003915F4 4E 80 00 20 */ blr
|
|
@ -0,0 +1,136 @@
|
|||
.include "macros.inc"
|
||||
|
||||
.section .text, "ax"
|
||||
|
||||
.global ldexp
|
||||
ldexp:
|
||||
/* 80394698 003915F8 94 21 FF E0 */ stwu r1, -0x20(r1)
|
||||
/* 8039469C 003915FC 7C 08 02 A6 */ mflr r0
|
||||
/* 803946A0 00391600 D8 21 00 10 */ stfd f1, 0x10(r1)
|
||||
/* 803946A4 00391604 80 A1 00 10 */ lwz r5, 0x10(r1)
|
||||
/* 803946A8 00391608 90 01 00 24 */ stw r0, 0x24(r1)
|
||||
/* 803946AC 0039160C 3C 00 7F F0 */ lis r0, 0x7ff0
|
||||
/* 803946B0 00391610 54 A4 00 56 */ rlwinm r4, r5, 0, 1, 0xb
|
||||
/* 803946B4 00391614 7C 04 00 00 */ cmpw r4, r0
|
||||
/* 803946B8 00391618 D8 21 00 08 */ stfd f1, 8(r1)
|
||||
/* 803946BC 0039161C 41 82 00 14 */ beq lbl_803946D0
|
||||
/* 803946C0 00391620 40 80 00 58 */ bge lbl_80394718
|
||||
/* 803946C4 00391624 2C 04 00 00 */ cmpwi r4, 0
|
||||
/* 803946C8 00391628 41 82 00 2C */ beq lbl_803946F4
|
||||
/* 803946CC 0039162C 48 00 00 4C */ b lbl_80394718
|
||||
lbl_803946D0:
|
||||
/* 803946D0 00391630 54 A0 03 3F */ clrlwi. r0, r5, 0xc
|
||||
/* 803946D4 00391634 40 82 00 10 */ bne lbl_803946E4
|
||||
/* 803946D8 00391638 80 01 00 14 */ lwz r0, 0x14(r1)
|
||||
/* 803946DC 0039163C 2C 00 00 00 */ cmpwi r0, 0
|
||||
/* 803946E0 00391640 41 82 00 0C */ beq lbl_803946EC
|
||||
lbl_803946E4:
|
||||
/* 803946E4 00391644 38 00 00 01 */ li r0, 1
|
||||
/* 803946E8 00391648 48 00 00 34 */ b lbl_8039471C
|
||||
lbl_803946EC:
|
||||
/* 803946EC 0039164C 38 00 00 02 */ li r0, 2
|
||||
/* 803946F0 00391650 48 00 00 2C */ b lbl_8039471C
|
||||
lbl_803946F4:
|
||||
/* 803946F4 00391654 54 A0 03 3F */ clrlwi. r0, r5, 0xc
|
||||
/* 803946F8 00391658 40 82 00 10 */ bne lbl_80394708
|
||||
/* 803946FC 0039165C 80 01 00 14 */ lwz r0, 0x14(r1)
|
||||
/* 80394700 00391660 2C 00 00 00 */ cmpwi r0, 0
|
||||
/* 80394704 00391664 41 82 00 0C */ beq lbl_80394710
|
||||
lbl_80394708:
|
||||
/* 80394708 00391668 38 00 00 05 */ li r0, 5
|
||||
/* 8039470C 0039166C 48 00 00 10 */ b lbl_8039471C
|
||||
lbl_80394710:
|
||||
/* 80394710 00391670 38 00 00 03 */ li r0, 3
|
||||
/* 80394714 00391674 48 00 00 08 */ b lbl_8039471C
|
||||
lbl_80394718:
|
||||
/* 80394718 00391678 38 00 00 04 */ li r0, 4
|
||||
lbl_8039471C:
|
||||
/* 8039471C 0039167C 2C 00 00 02 */ cmpwi r0, 2
|
||||
/* 80394720 00391680 40 81 01 2C */ ble lbl_8039484C
|
||||
/* 80394724 00391684 C8 02 D4 B8 */ lfd f0, lbl_805AF1D8@sda21(r2)
|
||||
/* 80394728 00391688 FC 00 08 00 */ fcmpu cr0, f0, f1
|
||||
/* 8039472C 0039168C 40 82 00 08 */ bne lbl_80394734
|
||||
/* 80394730 00391690 48 00 01 1C */ b lbl_8039484C
|
||||
lbl_80394734:
|
||||
/* 80394734 00391694 80 A1 00 08 */ lwz r5, 8(r1)
|
||||
/* 80394738 00391698 80 C1 00 0C */ lwz r6, 0xc(r1)
|
||||
/* 8039473C 0039169C 54 A4 65 7F */ rlwinm. r4, r5, 0xc, 0x15, 0x1f
|
||||
/* 80394740 003916A0 40 82 00 4C */ bne lbl_8039478C
|
||||
/* 80394744 003916A4 54 A0 00 7E */ clrlwi r0, r5, 1
|
||||
/* 80394748 003916A8 7C C0 03 79 */ or. r0, r6, r0
|
||||
/* 8039474C 003916AC 40 82 00 08 */ bne lbl_80394754
|
||||
/* 80394750 003916B0 48 00 00 FC */ b lbl_8039484C
|
||||
lbl_80394754:
|
||||
/* 80394754 003916B4 C8 21 00 08 */ lfd f1, 8(r1)
|
||||
/* 80394758 003916B8 3C 80 FF FF */ lis r4, 0xFFFF3CB0@ha
|
||||
/* 8039475C 003916BC C8 02 D4 C0 */ lfd f0, lbl_805AF1E0@sda21(r2)
|
||||
/* 80394760 003916C0 38 04 3C B0 */ addi r0, r4, 0xFFFF3CB0@l
|
||||
/* 80394764 003916C4 7C 03 00 00 */ cmpw r3, r0
|
||||
/* 80394768 003916C8 FC 21 00 32 */ fmul f1, f1, f0
|
||||
/* 8039476C 003916CC D8 21 00 08 */ stfd f1, 8(r1)
|
||||
/* 80394770 003916D0 80 A1 00 08 */ lwz r5, 8(r1)
|
||||
/* 80394774 003916D4 54 A4 65 7E */ rlwinm r4, r5, 0xc, 0x15, 0x1f
|
||||
/* 80394778 003916D8 38 84 FF CA */ addi r4, r4, -54
|
||||
/* 8039477C 003916DC 40 80 00 10 */ bge lbl_8039478C
|
||||
/* 80394780 003916E0 C8 02 D4 C8 */ lfd f0, lbl_805AF1E8@sda21(r2)
|
||||
/* 80394784 003916E4 FC 20 00 72 */ fmul f1, f0, f1
|
||||
/* 80394788 003916E8 48 00 00 C4 */ b lbl_8039484C
|
||||
lbl_8039478C:
|
||||
/* 8039478C 003916EC 2C 04 07 FF */ cmpwi r4, 0x7ff
|
||||
/* 80394790 003916F0 40 82 00 10 */ bne lbl_803947A0
|
||||
/* 80394794 003916F4 C8 01 00 08 */ lfd f0, 8(r1)
|
||||
/* 80394798 003916F8 FC 20 00 2A */ fadd f1, f0, f0
|
||||
/* 8039479C 003916FC 48 00 00 B0 */ b lbl_8039484C
|
||||
lbl_803947A0:
|
||||
/* 803947A0 00391700 7C 84 1A 14 */ add r4, r4, r3
|
||||
/* 803947A4 00391704 2C 04 07 FE */ cmpwi r4, 0x7fe
|
||||
/* 803947A8 00391708 40 81 00 1C */ ble lbl_803947C4
|
||||
/* 803947AC 0039170C C8 22 D4 D0 */ lfd f1, lbl_805AF1F0@sda21(r2)
|
||||
/* 803947B0 00391710 C8 41 00 08 */ lfd f2, 8(r1)
|
||||
/* 803947B4 00391714 4B FF FC 15 */ bl copysign
|
||||
/* 803947B8 00391718 C8 02 D4 D0 */ lfd f0, lbl_805AF1F0@sda21(r2)
|
||||
/* 803947BC 0039171C FC 20 00 72 */ fmul f1, f0, f1
|
||||
/* 803947C0 00391720 48 00 00 8C */ b lbl_8039484C
|
||||
lbl_803947C4:
|
||||
/* 803947C4 00391724 2C 04 00 00 */ cmpwi r4, 0
|
||||
/* 803947C8 00391728 40 81 00 1C */ ble lbl_803947E4
|
||||
/* 803947CC 0039172C 54 A3 03 00 */ rlwinm r3, r5, 0, 0xc, 0
|
||||
/* 803947D0 00391730 54 80 A0 16 */ slwi r0, r4, 0x14
|
||||
/* 803947D4 00391734 7C 60 03 78 */ or r0, r3, r0
|
||||
/* 803947D8 00391738 90 01 00 08 */ stw r0, 8(r1)
|
||||
/* 803947DC 0039173C C8 21 00 08 */ lfd f1, 8(r1)
|
||||
/* 803947E0 00391740 48 00 00 6C */ b lbl_8039484C
|
||||
lbl_803947E4:
|
||||
/* 803947E4 00391744 2C 04 FF CA */ cmpwi r4, -54
|
||||
/* 803947E8 00391748 41 81 00 44 */ bgt lbl_8039482C
|
||||
/* 803947EC 0039174C 3C 80 00 01 */ lis r4, 0x0000C350@ha
|
||||
/* 803947F0 00391750 38 04 C3 50 */ addi r0, r4, 0x0000C350@l
|
||||
/* 803947F4 00391754 7C 03 00 00 */ cmpw r3, r0
|
||||
/* 803947F8 00391758 40 81 00 1C */ ble lbl_80394814
|
||||
/* 803947FC 0039175C C8 22 D4 D0 */ lfd f1, lbl_805AF1F0@sda21(r2)
|
||||
/* 80394800 00391760 C8 41 00 08 */ lfd f2, 8(r1)
|
||||
/* 80394804 00391764 4B FF FB C5 */ bl copysign
|
||||
/* 80394808 00391768 C8 02 D4 D0 */ lfd f0, lbl_805AF1F0@sda21(r2)
|
||||
/* 8039480C 0039176C FC 20 00 72 */ fmul f1, f0, f1
|
||||
/* 80394810 00391770 48 00 00 3C */ b lbl_8039484C
|
||||
lbl_80394814:
|
||||
/* 80394814 00391774 C8 22 D4 C8 */ lfd f1, lbl_805AF1E8@sda21(r2)
|
||||
/* 80394818 00391778 C8 41 00 08 */ lfd f2, 8(r1)
|
||||
/* 8039481C 0039177C 4B FF FB AD */ bl copysign
|
||||
/* 80394820 00391780 C8 02 D4 C8 */ lfd f0, lbl_805AF1E8@sda21(r2)
|
||||
/* 80394824 00391784 FC 20 00 72 */ fmul f1, f0, f1
|
||||
/* 80394828 00391788 48 00 00 24 */ b lbl_8039484C
|
||||
lbl_8039482C:
|
||||
/* 8039482C 0039178C 38 04 00 36 */ addi r0, r4, 0x36
|
||||
/* 80394830 00391790 54 A3 03 00 */ rlwinm r3, r5, 0, 0xc, 0
|
||||
/* 80394834 00391794 54 00 A0 16 */ slwi r0, r0, 0x14
|
||||
/* 80394838 00391798 C8 22 D4 D8 */ lfd f1, lbl_805AF1F8@sda21(r2)
|
||||
/* 8039483C 0039179C 7C 60 03 78 */ or r0, r3, r0
|
||||
/* 80394840 003917A0 90 01 00 08 */ stw r0, 8(r1)
|
||||
/* 80394844 003917A4 C8 01 00 08 */ lfd f0, 8(r1)
|
||||
/* 80394848 003917A8 FC 21 00 32 */ fmul f1, f1, f0
|
||||
lbl_8039484C:
|
||||
/* 8039484C 003917AC 80 01 00 24 */ lwz r0, 0x24(r1)
|
||||
/* 80394850 003917B0 7C 08 03 A6 */ mtlr r0
|
||||
/* 80394854 003917B4 38 21 00 20 */ addi r1, r1, 0x20
|
||||
/* 80394858 003917B8 4E 80 00 20 */ blr
|
|
@ -0,0 +1,14 @@
|
|||
.include "macros.inc"
|
||||
|
||||
.section .text, "ax"
|
||||
|
||||
.global log
|
||||
log:
|
||||
/* 80394CCC 00391C2C 94 21 FF F0 */ stwu r1, -0x10(r1)
|
||||
/* 80394CD0 00391C30 7C 08 02 A6 */ mflr r0
|
||||
/* 80394CD4 00391C34 90 01 00 14 */ stw r0, 0x14(r1)
|
||||
/* 80394CD8 00391C38 4B FF D4 4D */ bl __ieee754_log
|
||||
/* 80394CDC 00391C3C 80 01 00 14 */ lwz r0, 0x14(r1)
|
||||
/* 80394CE0 00391C40 7C 08 03 A6 */ mtlr r0
|
||||
/* 80394CE4 00391C44 38 21 00 10 */ addi r1, r1, 0x10
|
||||
/* 80394CE8 00391C48 4E 80 00 20 */ blr
|
|
@ -0,0 +1,75 @@
|
|||
.include "macros.inc"
|
||||
|
||||
.section .text, "ax"
|
||||
|
||||
.global modf
|
||||
modf:
|
||||
/* 8039485C 003917BC 94 21 FF F0 */ stwu r1, -0x10(r1)
|
||||
/* 80394860 003917C0 D8 21 00 08 */ stfd f1, 8(r1)
|
||||
/* 80394864 003917C4 80 A1 00 08 */ lwz r5, 8(r1)
|
||||
/* 80394868 003917C8 80 C1 00 0C */ lwz r6, 0xc(r1)
|
||||
/* 8039486C 003917CC 54 A4 65 7E */ rlwinm r4, r5, 0xc, 0x15, 0x1f
|
||||
/* 80394870 003917D0 38 E4 FC 01 */ addi r7, r4, -1023
|
||||
/* 80394874 003917D4 2C 07 00 14 */ cmpwi r7, 0x14
|
||||
/* 80394878 003917D8 40 80 00 70 */ bge lbl_803948E8
|
||||
/* 8039487C 003917DC 2C 07 00 00 */ cmpwi r7, 0
|
||||
/* 80394880 003917E0 40 80 00 18 */ bge lbl_80394898
|
||||
/* 80394884 003917E4 54 A4 00 00 */ rlwinm r4, r5, 0, 0, 0
|
||||
/* 80394888 003917E8 38 00 00 00 */ li r0, 0
|
||||
/* 8039488C 003917EC 90 83 00 00 */ stw r4, 0(r3)
|
||||
/* 80394890 003917F0 90 03 00 04 */ stw r0, 4(r3)
|
||||
/* 80394894 003917F4 48 00 00 BC */ b lbl_80394950
|
||||
lbl_80394898:
|
||||
/* 80394898 003917F8 3C 80 00 10 */ lis r4, 0x000FFFFF@ha
|
||||
/* 8039489C 003917FC 38 04 FF FF */ addi r0, r4, 0x000FFFFF@l
|
||||
/* 803948A0 00391800 7C 04 3E 30 */ sraw r4, r0, r7
|
||||
/* 803948A4 00391804 7C A0 20 38 */ and r0, r5, r4
|
||||
/* 803948A8 00391808 7C C0 03 79 */ or. r0, r6, r0
|
||||
/* 803948AC 0039180C 40 82 00 20 */ bne lbl_803948CC
|
||||
/* 803948B0 00391810 54 A4 00 00 */ rlwinm r4, r5, 0, 0, 0
|
||||
/* 803948B4 00391814 38 00 00 00 */ li r0, 0
|
||||
/* 803948B8 00391818 90 81 00 08 */ stw r4, 8(r1)
|
||||
/* 803948BC 0039181C 90 01 00 0C */ stw r0, 0xc(r1)
|
||||
/* 803948C0 00391820 D8 23 00 00 */ stfd f1, 0(r3)
|
||||
/* 803948C4 00391824 C8 21 00 08 */ lfd f1, 8(r1)
|
||||
/* 803948C8 00391828 48 00 00 88 */ b lbl_80394950
|
||||
lbl_803948CC:
|
||||
/* 803948CC 0039182C 7C A4 20 78 */ andc r4, r5, r4
|
||||
/* 803948D0 00391830 38 00 00 00 */ li r0, 0
|
||||
/* 803948D4 00391834 90 83 00 00 */ stw r4, 0(r3)
|
||||
/* 803948D8 00391838 90 03 00 04 */ stw r0, 4(r3)
|
||||
/* 803948DC 0039183C C8 03 00 00 */ lfd f0, 0(r3)
|
||||
/* 803948E0 00391840 FC 21 00 28 */ fsub f1, f1, f0
|
||||
/* 803948E4 00391844 48 00 00 6C */ b lbl_80394950
|
||||
lbl_803948E8:
|
||||
/* 803948E8 00391848 2C 07 00 33 */ cmpwi r7, 0x33
|
||||
/* 803948EC 0039184C 40 81 00 20 */ ble lbl_8039490C
|
||||
/* 803948F0 00391850 54 A4 00 00 */ rlwinm r4, r5, 0, 0, 0
|
||||
/* 803948F4 00391854 38 00 00 00 */ li r0, 0
|
||||
/* 803948F8 00391858 90 81 00 08 */ stw r4, 8(r1)
|
||||
/* 803948FC 0039185C 90 01 00 0C */ stw r0, 0xc(r1)
|
||||
/* 80394900 00391860 D8 23 00 00 */ stfd f1, 0(r3)
|
||||
/* 80394904 00391864 C8 21 00 08 */ lfd f1, 8(r1)
|
||||
/* 80394908 00391868 48 00 00 48 */ b lbl_80394950
|
||||
lbl_8039490C:
|
||||
/* 8039490C 0039186C 38 07 FF EC */ addi r0, r7, -20
|
||||
/* 80394910 00391870 38 80 FF FF */ li r4, -1
|
||||
/* 80394914 00391874 7C 84 04 30 */ srw r4, r4, r0
|
||||
/* 80394918 00391878 7C C0 20 39 */ and. r0, r6, r4
|
||||
/* 8039491C 0039187C 40 82 00 20 */ bne lbl_8039493C
|
||||
/* 80394920 00391880 54 A4 00 00 */ rlwinm r4, r5, 0, 0, 0
|
||||
/* 80394924 00391884 38 00 00 00 */ li r0, 0
|
||||
/* 80394928 00391888 90 81 00 08 */ stw r4, 8(r1)
|
||||
/* 8039492C 0039188C 90 01 00 0C */ stw r0, 0xc(r1)
|
||||
/* 80394930 00391890 D8 23 00 00 */ stfd f1, 0(r3)
|
||||
/* 80394934 00391894 C8 21 00 08 */ lfd f1, 8(r1)
|
||||
/* 80394938 00391898 48 00 00 18 */ b lbl_80394950
|
||||
lbl_8039493C:
|
||||
/* 8039493C 0039189C 90 A3 00 00 */ stw r5, 0(r3)
|
||||
/* 80394940 003918A0 7C C0 20 78 */ andc r0, r6, r4
|
||||
/* 80394944 003918A4 90 03 00 04 */ stw r0, 4(r3)
|
||||
/* 80394948 003918A8 C8 03 00 00 */ lfd f0, 0(r3)
|
||||
/* 8039494C 003918AC FC 21 00 28 */ fsub f1, f1, f0
|
||||
lbl_80394950:
|
||||
/* 80394950 003918B0 38 21 00 10 */ addi r1, r1, 0x10
|
||||
/* 80394954 003918B4 4E 80 00 20 */ blr
|
|
@ -0,0 +1,120 @@
|
|||
.include "macros.inc"
|
||||
|
||||
.section .text, "ax"
|
||||
|
||||
.global nextafter
|
||||
nextafter:
|
||||
/* 80394958 003918B8 94 21 FF E0 */ stwu r1, -0x20(r1)
|
||||
/* 8039495C 003918BC 3C 00 7F F0 */ lis r0, 0x7ff0
|
||||
/* 80394960 003918C0 D8 21 00 08 */ stfd f1, 8(r1)
|
||||
/* 80394964 003918C4 80 81 00 08 */ lwz r4, 8(r1)
|
||||
/* 80394968 003918C8 D8 41 00 10 */ stfd f2, 0x10(r1)
|
||||
/* 8039496C 003918CC 54 85 00 7E */ clrlwi r5, r4, 1
|
||||
/* 80394970 003918D0 80 E1 00 0C */ lwz r7, 0xc(r1)
|
||||
/* 80394974 003918D4 80 61 00 10 */ lwz r3, 0x10(r1)
|
||||
/* 80394978 003918D8 7C 05 00 00 */ cmpw r5, r0
|
||||
/* 8039497C 003918DC 81 01 00 14 */ lwz r8, 0x14(r1)
|
||||
/* 80394980 003918E0 54 66 00 7E */ clrlwi r6, r3, 1
|
||||
/* 80394984 003918E4 41 80 00 10 */ blt lbl_80394994
|
||||
/* 80394988 003918E8 3C 05 80 10 */ addis r0, r5, 0x8010
|
||||
/* 8039498C 003918EC 7C 00 3B 79 */ or. r0, r0, r7
|
||||
/* 80394990 003918F0 40 82 00 1C */ bne lbl_803949AC
|
||||
lbl_80394994:
|
||||
/* 80394994 003918F4 3C 00 7F F0 */ lis r0, 0x7ff0
|
||||
/* 80394998 003918F8 7C 06 00 00 */ cmpw r6, r0
|
||||
/* 8039499C 003918FC 41 80 00 20 */ blt lbl_803949BC
|
||||
/* 803949A0 00391900 3C 06 80 10 */ addis r0, r6, 0x8010
|
||||
/* 803949A4 00391904 7C 00 43 79 */ or. r0, r0, r8
|
||||
/* 803949A8 00391908 41 82 00 14 */ beq lbl_803949BC
|
||||
lbl_803949AC:
|
||||
/* 803949AC 0039190C C8 21 00 08 */ lfd f1, 8(r1)
|
||||
/* 803949B0 00391910 C8 01 00 10 */ lfd f0, 0x10(r1)
|
||||
/* 803949B4 00391914 FC 21 00 2A */ fadd f1, f1, f0
|
||||
/* 803949B8 00391918 48 00 01 1C */ b lbl_80394AD4
|
||||
lbl_803949BC:
|
||||
/* 803949BC 0039191C C8 21 00 08 */ lfd f1, 8(r1)
|
||||
/* 803949C0 00391920 C8 01 00 10 */ lfd f0, 0x10(r1)
|
||||
/* 803949C4 00391924 FC 01 00 00 */ fcmpu cr0, f1, f0
|
||||
/* 803949C8 00391928 40 82 00 08 */ bne lbl_803949D0
|
||||
/* 803949CC 0039192C 48 00 01 08 */ b lbl_80394AD4
|
||||
lbl_803949D0:
|
||||
/* 803949D0 00391930 7C A0 3B 79 */ or. r0, r5, r7
|
||||
/* 803949D4 00391934 40 82 00 34 */ bne lbl_80394A08
|
||||
/* 803949D8 00391938 54 63 00 00 */ rlwinm r3, r3, 0, 0, 0
|
||||
/* 803949DC 0039193C 38 00 00 01 */ li r0, 1
|
||||
/* 803949E0 00391940 90 61 00 08 */ stw r3, 8(r1)
|
||||
/* 803949E4 00391944 90 01 00 0C */ stw r0, 0xc(r1)
|
||||
/* 803949E8 00391948 C8 01 00 08 */ lfd f0, 8(r1)
|
||||
/* 803949EC 0039194C FC 20 00 32 */ fmul f1, f0, f0
|
||||
/* 803949F0 00391950 FC 01 00 00 */ fcmpu cr0, f1, f0
|
||||
/* 803949F4 00391954 D8 21 00 10 */ stfd f1, 0x10(r1)
|
||||
/* 803949F8 00391958 40 82 00 08 */ bne lbl_80394A00
|
||||
/* 803949FC 0039195C 48 00 00 D8 */ b lbl_80394AD4
|
||||
lbl_80394A00:
|
||||
/* 80394A00 00391960 FC 20 00 90 */ fmr f1, f0
|
||||
/* 80394A04 00391964 48 00 00 D0 */ b lbl_80394AD4
|
||||
lbl_80394A08:
|
||||
/* 80394A08 00391968 2C 04 00 00 */ cmpwi r4, 0
|
||||
/* 80394A0C 0039196C 41 80 00 3C */ blt lbl_80394A48
|
||||
/* 80394A10 00391970 7C 04 18 00 */ cmpw r4, r3
|
||||
/* 80394A14 00391974 41 81 00 10 */ bgt lbl_80394A24
|
||||
/* 80394A18 00391978 40 82 00 20 */ bne lbl_80394A38
|
||||
/* 80394A1C 0039197C 7C 07 40 40 */ cmplw r7, r8
|
||||
/* 80394A20 00391980 40 81 00 18 */ ble lbl_80394A38
|
||||
lbl_80394A24:
|
||||
/* 80394A24 00391984 28 07 00 00 */ cmplwi r7, 0
|
||||
/* 80394A28 00391988 40 82 00 08 */ bne lbl_80394A30
|
||||
/* 80394A2C 0039198C 38 84 FF FF */ addi r4, r4, -1
|
||||
lbl_80394A30:
|
||||
/* 80394A30 00391990 38 E7 FF FF */ addi r7, r7, -1
|
||||
/* 80394A34 00391994 48 00 00 50 */ b lbl_80394A84
|
||||
lbl_80394A38:
|
||||
/* 80394A38 00391998 34 E7 00 01 */ addic. r7, r7, 1
|
||||
/* 80394A3C 0039199C 40 82 00 48 */ bne lbl_80394A84
|
||||
/* 80394A40 003919A0 38 84 00 01 */ addi r4, r4, 1
|
||||
/* 80394A44 003919A4 48 00 00 40 */ b lbl_80394A84
|
||||
lbl_80394A48:
|
||||
/* 80394A48 003919A8 2C 03 00 00 */ cmpwi r3, 0
|
||||
/* 80394A4C 003919AC 40 80 00 18 */ bge lbl_80394A64
|
||||
/* 80394A50 003919B0 7C 04 18 00 */ cmpw r4, r3
|
||||
/* 80394A54 003919B4 41 81 00 10 */ bgt lbl_80394A64
|
||||
/* 80394A58 003919B8 40 82 00 20 */ bne lbl_80394A78
|
||||
/* 80394A5C 003919BC 7C 07 40 40 */ cmplw r7, r8
|
||||
/* 80394A60 003919C0 40 81 00 18 */ ble lbl_80394A78
|
||||
lbl_80394A64:
|
||||
/* 80394A64 003919C4 28 07 00 00 */ cmplwi r7, 0
|
||||
/* 80394A68 003919C8 40 82 00 08 */ bne lbl_80394A70
|
||||
/* 80394A6C 003919CC 38 84 FF FF */ addi r4, r4, -1
|
||||
lbl_80394A70:
|
||||
/* 80394A70 003919D0 38 E7 FF FF */ addi r7, r7, -1
|
||||
/* 80394A74 003919D4 48 00 00 10 */ b lbl_80394A84
|
||||
lbl_80394A78:
|
||||
/* 80394A78 003919D8 34 E7 00 01 */ addic. r7, r7, 1
|
||||
/* 80394A7C 003919DC 40 82 00 08 */ bne lbl_80394A84
|
||||
/* 80394A80 003919E0 38 84 00 01 */ addi r4, r4, 1
|
||||
lbl_80394A84:
|
||||
/* 80394A84 003919E4 54 83 00 56 */ rlwinm r3, r4, 0, 1, 0xb
|
||||
/* 80394A88 003919E8 3C 00 7F F0 */ lis r0, 0x7ff0
|
||||
/* 80394A8C 003919EC 7C 03 00 00 */ cmpw r3, r0
|
||||
/* 80394A90 003919F0 41 80 00 0C */ blt lbl_80394A9C
|
||||
/* 80394A94 003919F4 FC 21 08 2A */ fadd f1, f1, f1
|
||||
/* 80394A98 003919F8 48 00 00 3C */ b lbl_80394AD4
|
||||
lbl_80394A9C:
|
||||
/* 80394A9C 003919FC 3C 00 00 10 */ lis r0, 0x10
|
||||
/* 80394AA0 00391A00 7C 03 00 00 */ cmpw r3, r0
|
||||
/* 80394AA4 00391A04 40 80 00 24 */ bge lbl_80394AC8
|
||||
/* 80394AA8 00391A08 FC 01 00 72 */ fmul f0, f1, f1
|
||||
/* 80394AAC 00391A0C FC 00 08 00 */ fcmpu cr0, f0, f1
|
||||
/* 80394AB0 00391A10 D8 01 00 10 */ stfd f0, 0x10(r1)
|
||||
/* 80394AB4 00391A14 41 82 00 14 */ beq lbl_80394AC8
|
||||
/* 80394AB8 00391A18 90 81 00 10 */ stw r4, 0x10(r1)
|
||||
/* 80394ABC 00391A1C 90 E1 00 14 */ stw r7, 0x14(r1)
|
||||
/* 80394AC0 00391A20 C8 21 00 10 */ lfd f1, 0x10(r1)
|
||||
/* 80394AC4 00391A24 48 00 00 10 */ b lbl_80394AD4
|
||||
lbl_80394AC8:
|
||||
/* 80394AC8 00391A28 90 81 00 08 */ stw r4, 8(r1)
|
||||
/* 80394ACC 00391A2C 90 E1 00 0C */ stw r7, 0xc(r1)
|
||||
/* 80394AD0 00391A30 C8 21 00 08 */ lfd f1, 8(r1)
|
||||
lbl_80394AD4:
|
||||
/* 80394AD4 00391A34 38 21 00 20 */ addi r1, r1, 0x20
|
||||
/* 80394AD8 00391A38 4E 80 00 20 */ blr
|
|
@ -0,0 +1,14 @@
|
|||
.include "macros.inc"
|
||||
|
||||
.section .text, "ax"
|
||||
|
||||
.global pow
|
||||
pow:
|
||||
/* 80394CEC 00391C4C 94 21 FF F0 */ stwu r1, -0x10(r1)
|
||||
/* 80394CF0 00391C50 7C 08 02 A6 */ mflr r0
|
||||
/* 80394CF4 00391C54 90 01 00 14 */ stw r0, 0x14(r1)
|
||||
/* 80394CF8 00391C58 4B FF D6 A9 */ bl __ieee754_pow
|
||||
/* 80394CFC 00391C5C 80 01 00 14 */ lwz r0, 0x14(r1)
|
||||
/* 80394D00 00391C60 7C 08 03 A6 */ mtlr r0
|
||||
/* 80394D04 00391C64 38 21 00 10 */ addi r1, r1, 0x10
|
||||
/* 80394D08 00391C68 4E 80 00 20 */ blr
|
|
@ -0,0 +1,68 @@
|
|||
.include "macros.inc"
|
||||
|
||||
.section .text, "ax"
|
||||
|
||||
.global sin
|
||||
sin:
|
||||
/* 80394ADC 00391A3C 94 21 FF E0 */ stwu r1, -0x20(r1)
|
||||
/* 80394AE0 00391A40 7C 08 02 A6 */ mflr r0
|
||||
/* 80394AE4 00391A44 3C 60 3F E9 */ lis r3, 0x3FE921FB@ha
|
||||
/* 80394AE8 00391A48 D8 21 00 08 */ stfd f1, 8(r1)
|
||||
/* 80394AEC 00391A4C 90 01 00 24 */ stw r0, 0x24(r1)
|
||||
/* 80394AF0 00391A50 38 03 21 FB */ addi r0, r3, 0x3FE921FB@l
|
||||
/* 80394AF4 00391A54 80 61 00 08 */ lwz r3, 8(r1)
|
||||
/* 80394AF8 00391A58 54 63 00 7E */ clrlwi r3, r3, 1
|
||||
/* 80394AFC 00391A5C 7C 03 00 00 */ cmpw r3, r0
|
||||
/* 80394B00 00391A60 41 81 00 14 */ bgt lbl_80394B14
|
||||
/* 80394B04 00391A64 C8 42 D4 E0 */ lfd f2, lbl_805AF200@sda21(r2)
|
||||
/* 80394B08 00391A68 38 60 00 00 */ li r3, 0
|
||||
/* 80394B0C 00391A6C 4B FF F4 09 */ bl __kernel_sin
|
||||
/* 80394B10 00391A70 48 00 00 94 */ b lbl_80394BA4
|
||||
lbl_80394B14:
|
||||
/* 80394B14 00391A74 3C 00 7F F0 */ lis r0, 0x7ff0
|
||||
/* 80394B18 00391A78 7C 03 00 00 */ cmpw r3, r0
|
||||
/* 80394B1C 00391A7C 41 80 00 0C */ blt lbl_80394B28
|
||||
/* 80394B20 00391A80 FC 21 08 28 */ fsub f1, f1, f1
|
||||
/* 80394B24 00391A84 48 00 00 80 */ b lbl_80394BA4
|
||||
lbl_80394B28:
|
||||
/* 80394B28 00391A88 38 61 00 10 */ addi r3, r1, 0x10
|
||||
/* 80394B2C 00391A8C 4B FF E1 01 */ bl __ieee754_rem_pio2
|
||||
/* 80394B30 00391A90 54 60 07 BE */ clrlwi r0, r3, 0x1e
|
||||
/* 80394B34 00391A94 2C 00 00 01 */ cmpwi r0, 1
|
||||
/* 80394B38 00391A98 41 82 00 34 */ beq lbl_80394B6C
|
||||
/* 80394B3C 00391A9C 40 80 00 10 */ bge lbl_80394B4C
|
||||
/* 80394B40 00391AA0 2C 00 00 00 */ cmpwi r0, 0
|
||||
/* 80394B44 00391AA4 40 80 00 14 */ bge lbl_80394B58
|
||||
/* 80394B48 00391AA8 48 00 00 4C */ b lbl_80394B94
|
||||
lbl_80394B4C:
|
||||
/* 80394B4C 00391AAC 2C 00 00 03 */ cmpwi r0, 3
|
||||
/* 80394B50 00391AB0 40 80 00 44 */ bge lbl_80394B94
|
||||
/* 80394B54 00391AB4 48 00 00 28 */ b lbl_80394B7C
|
||||
lbl_80394B58:
|
||||
/* 80394B58 00391AB8 C8 21 00 10 */ lfd f1, 0x10(r1)
|
||||
/* 80394B5C 00391ABC 38 60 00 01 */ li r3, 1
|
||||
/* 80394B60 00391AC0 C8 41 00 18 */ lfd f2, 0x18(r1)
|
||||
/* 80394B64 00391AC4 4B FF F3 B1 */ bl __kernel_sin
|
||||
/* 80394B68 00391AC8 48 00 00 3C */ b lbl_80394BA4
|
||||
lbl_80394B6C:
|
||||
/* 80394B6C 00391ACC C8 21 00 10 */ lfd f1, 0x10(r1)
|
||||
/* 80394B70 00391AD0 C8 41 00 18 */ lfd f2, 0x18(r1)
|
||||
/* 80394B74 00391AD4 4B FF E4 59 */ bl __kernel_cos
|
||||
/* 80394B78 00391AD8 48 00 00 2C */ b lbl_80394BA4
|
||||
lbl_80394B7C:
|
||||
/* 80394B7C 00391ADC C8 21 00 10 */ lfd f1, 0x10(r1)
|
||||
/* 80394B80 00391AE0 38 60 00 01 */ li r3, 1
|
||||
/* 80394B84 00391AE4 C8 41 00 18 */ lfd f2, 0x18(r1)
|
||||
/* 80394B88 00391AE8 4B FF F3 8D */ bl __kernel_sin
|
||||
/* 80394B8C 00391AEC FC 20 08 50 */ fneg f1, f1
|
||||
/* 80394B90 00391AF0 48 00 00 14 */ b lbl_80394BA4
|
||||
lbl_80394B94:
|
||||
/* 80394B94 00391AF4 C8 21 00 10 */ lfd f1, 0x10(r1)
|
||||
/* 80394B98 00391AF8 C8 41 00 18 */ lfd f2, 0x18(r1)
|
||||
/* 80394B9C 00391AFC 4B FF E4 31 */ bl __kernel_cos
|
||||
/* 80394BA0 00391B00 FC 20 08 50 */ fneg f1, f1
|
||||
lbl_80394BA4:
|
||||
/* 80394BA4 00391B04 80 01 00 24 */ lwz r0, 0x24(r1)
|
||||
/* 80394BA8 00391B08 7C 08 03 A6 */ mtlr r0
|
||||
/* 80394BAC 00391B0C 38 21 00 20 */ addi r1, r1, 0x20
|
||||
/* 80394BB0 00391B10 4E 80 00 20 */ blr
|
|
@ -0,0 +1,39 @@
|
|||
.include "macros.inc"
|
||||
|
||||
.section .text, "ax"
|
||||
|
||||
.global tan
|
||||
tan:
|
||||
/* 80394BB4 00391B14 94 21 FF E0 */ stwu r1, -0x20(r1)
|
||||
/* 80394BB8 00391B18 7C 08 02 A6 */ mflr r0
|
||||
/* 80394BBC 00391B1C 3C 60 3F E9 */ lis r3, 0x3FE921FB@ha
|
||||
/* 80394BC0 00391B20 D8 21 00 08 */ stfd f1, 8(r1)
|
||||
/* 80394BC4 00391B24 90 01 00 24 */ stw r0, 0x24(r1)
|
||||
/* 80394BC8 00391B28 38 03 21 FB */ addi r0, r3, 0x3FE921FB@l
|
||||
/* 80394BCC 00391B2C 80 61 00 08 */ lwz r3, 8(r1)
|
||||
/* 80394BD0 00391B30 54 63 00 7E */ clrlwi r3, r3, 1
|
||||
/* 80394BD4 00391B34 7C 03 00 00 */ cmpw r3, r0
|
||||
/* 80394BD8 00391B38 41 81 00 14 */ bgt lbl_80394BEC
|
||||
/* 80394BDC 00391B3C C8 42 D4 E8 */ lfd f2, lbl_805AF208@sda21(r2)
|
||||
/* 80394BE0 00391B40 38 60 00 01 */ li r3, 1
|
||||
/* 80394BE4 00391B44 4B FF F3 D1 */ bl __kernel_tan
|
||||
/* 80394BE8 00391B48 48 00 00 34 */ b lbl_80394C1C
|
||||
lbl_80394BEC:
|
||||
/* 80394BEC 00391B4C 3C 00 7F F0 */ lis r0, 0x7ff0
|
||||
/* 80394BF0 00391B50 7C 03 00 00 */ cmpw r3, r0
|
||||
/* 80394BF4 00391B54 41 80 00 0C */ blt lbl_80394C00
|
||||
/* 80394BF8 00391B58 FC 21 08 28 */ fsub f1, f1, f1
|
||||
/* 80394BFC 00391B5C 48 00 00 20 */ b lbl_80394C1C
|
||||
lbl_80394C00:
|
||||
/* 80394C00 00391B60 38 61 00 10 */ addi r3, r1, 0x10
|
||||
/* 80394C04 00391B64 4B FF E0 29 */ bl __ieee754_rem_pio2
|
||||
/* 80394C08 00391B68 54 60 0F BC */ rlwinm r0, r3, 1, 0x1e, 0x1e
|
||||
/* 80394C0C 00391B6C C8 21 00 10 */ lfd f1, 0x10(r1)
|
||||
/* 80394C10 00391B70 C8 41 00 18 */ lfd f2, 0x18(r1)
|
||||
/* 80394C14 00391B74 20 60 00 01 */ subfic r3, r0, 1
|
||||
/* 80394C18 00391B78 4B FF F3 9D */ bl __kernel_tan
|
||||
lbl_80394C1C:
|
||||
/* 80394C1C 00391B7C 80 01 00 24 */ lwz r0, 0x24(r1)
|
||||
/* 80394C20 00391B80 7C 08 03 A6 */ mtlr r0
|
||||
/* 80394C24 00391B84 38 21 00 20 */ addi r1, r1, 0x20
|
||||
/* 80394C28 00391B88 4E 80 00 20 */ blr
|
|
@ -0,0 +1,50 @@
|
|||
.include "macros.inc"
|
||||
|
||||
.section .text, "ax"
|
||||
|
||||
.global __StringRead
|
||||
__StringRead:
|
||||
/* 8038FE9C 0038CDFC 2C 05 00 01 */ cmpwi r5, 1
|
||||
/* 8038FEA0 0038CE00 7C 66 1B 78 */ mr r6, r3
|
||||
/* 8038FEA4 0038CE04 41 82 00 4C */ beq lbl_8038FEF0
|
||||
/* 8038FEA8 0038CE08 40 80 00 10 */ bge lbl_8038FEB8
|
||||
/* 8038FEAC 0038CE0C 2C 05 00 00 */ cmpwi r5, 0
|
||||
/* 8038FEB0 0038CE10 40 80 00 14 */ bge lbl_8038FEC4
|
||||
/* 8038FEB4 0038CE14 48 00 00 70 */ b lbl_8038FF24
|
||||
lbl_8038FEB8:
|
||||
/* 8038FEB8 0038CE18 2C 05 00 03 */ cmpwi r5, 3
|
||||
/* 8038FEBC 0038CE1C 40 80 00 68 */ bge lbl_8038FF24
|
||||
/* 8038FEC0 0038CE20 48 00 00 5C */ b lbl_8038FF1C
|
||||
lbl_8038FEC4:
|
||||
/* 8038FEC4 0038CE24 80 86 00 00 */ lwz r4, 0(r6)
|
||||
/* 8038FEC8 0038CE28 88 64 00 00 */ lbz r3, 0(r4)
|
||||
/* 8038FECC 0038CE2C 7C 60 07 75 */ extsb. r0, r3
|
||||
/* 8038FED0 0038CE30 40 82 00 14 */ bne lbl_8038FEE4
|
||||
/* 8038FED4 0038CE34 38 00 00 01 */ li r0, 1
|
||||
/* 8038FED8 0038CE38 38 60 FF FF */ li r3, -1
|
||||
/* 8038FEDC 0038CE3C 90 06 00 04 */ stw r0, 4(r6)
|
||||
/* 8038FEE0 0038CE40 4E 80 00 20 */ blr
|
||||
lbl_8038FEE4:
|
||||
/* 8038FEE4 0038CE44 38 04 00 01 */ addi r0, r4, 1
|
||||
/* 8038FEE8 0038CE48 90 06 00 00 */ stw r0, 0(r6)
|
||||
/* 8038FEEC 0038CE4C 4E 80 00 20 */ blr
|
||||
lbl_8038FEF0:
|
||||
/* 8038FEF0 0038CE50 80 06 00 04 */ lwz r0, 4(r6)
|
||||
/* 8038FEF4 0038CE54 2C 00 00 00 */ cmpwi r0, 0
|
||||
/* 8038FEF8 0038CE58 40 82 00 14 */ bne lbl_8038FF0C
|
||||
/* 8038FEFC 0038CE5C 80 66 00 00 */ lwz r3, 0(r6)
|
||||
/* 8038FF00 0038CE60 38 03 FF FF */ addi r0, r3, -1
|
||||
/* 8038FF04 0038CE64 90 06 00 00 */ stw r0, 0(r6)
|
||||
/* 8038FF08 0038CE68 48 00 00 0C */ b lbl_8038FF14
|
||||
lbl_8038FF0C:
|
||||
/* 8038FF0C 0038CE6C 38 00 00 00 */ li r0, 0
|
||||
/* 8038FF10 0038CE70 90 06 00 04 */ stw r0, 4(r6)
|
||||
lbl_8038FF14:
|
||||
/* 8038FF14 0038CE74 7C 83 23 78 */ mr r3, r4
|
||||
/* 8038FF18 0038CE78 4E 80 00 20 */ blr
|
||||
lbl_8038FF1C:
|
||||
/* 8038FF1C 0038CE7C 80 66 00 04 */ lwz r3, 4(r6)
|
||||
/* 8038FF20 0038CE80 4E 80 00 20 */ blr
|
||||
lbl_8038FF24:
|
||||
/* 8038FF24 0038CE84 38 60 00 00 */ li r3, 0
|
||||
/* 8038FF28 0038CE88 4E 80 00 20 */ blr
|
|
@ -0,0 +1,223 @@
|
|||
.include "macros.inc"
|
||||
|
||||
.section .text, "ax"
|
||||
|
||||
.global strchr
|
||||
strchr:
|
||||
/* 8038FF2C 0038CE8C 38 63 FF FF */ addi r3, r3, -1
|
||||
/* 8038FF30 0038CE90 54 80 06 3E */ clrlwi r0, r4, 0x18
|
||||
/* 8038FF34 0038CE94 48 00 00 0C */ b lbl_8038FF40
|
||||
lbl_8038FF38:
|
||||
/* 8038FF38 0038CE98 7C 04 00 40 */ cmplw r4, r0
|
||||
/* 8038FF3C 0038CE9C 4D 82 00 20 */ beqlr
|
||||
lbl_8038FF40:
|
||||
/* 8038FF40 0038CEA0 8C 83 00 01 */ lbzu r4, 1(r3)
|
||||
/* 8038FF44 0038CEA4 28 04 00 00 */ cmplwi r4, 0
|
||||
/* 8038FF48 0038CEA8 40 82 FF F0 */ bne lbl_8038FF38
|
||||
/* 8038FF4C 0038CEAC 28 00 00 00 */ cmplwi r0, 0
|
||||
/* 8038FF50 0038CEB0 4D 82 00 20 */ beqlr
|
||||
/* 8038FF54 0038CEB4 38 60 00 00 */ li r3, 0
|
||||
/* 8038FF58 0038CEB8 4E 80 00 20 */ blr
|
||||
|
||||
.global strncmp
|
||||
strncmp:
|
||||
/* 8038FF5C 0038CEBC 38 63 FF FF */ addi r3, r3, -1
|
||||
/* 8038FF60 0038CEC0 38 84 FF FF */ addi r4, r4, -1
|
||||
/* 8038FF64 0038CEC4 38 C5 00 01 */ addi r6, r5, 1
|
||||
/* 8038FF68 0038CEC8 48 00 00 24 */ b lbl_8038FF8C
|
||||
lbl_8038FF6C:
|
||||
/* 8038FF6C 0038CECC 8C 03 00 01 */ lbzu r0, 1(r3)
|
||||
/* 8038FF70 0038CED0 8C A4 00 01 */ lbzu r5, 1(r4)
|
||||
/* 8038FF74 0038CED4 7C 00 28 40 */ cmplw r0, r5
|
||||
/* 8038FF78 0038CED8 41 82 00 0C */ beq lbl_8038FF84
|
||||
/* 8038FF7C 0038CEDC 7C 65 00 50 */ subf r3, r5, r0
|
||||
/* 8038FF80 0038CEE0 4E 80 00 20 */ blr
|
||||
lbl_8038FF84:
|
||||
/* 8038FF84 0038CEE4 28 00 00 00 */ cmplwi r0, 0
|
||||
/* 8038FF88 0038CEE8 41 82 00 0C */ beq lbl_8038FF94
|
||||
lbl_8038FF8C:
|
||||
/* 8038FF8C 0038CEEC 34 C6 FF FF */ addic. r6, r6, -1
|
||||
/* 8038FF90 0038CEF0 40 82 FF DC */ bne lbl_8038FF6C
|
||||
lbl_8038FF94:
|
||||
/* 8038FF94 0038CEF4 38 60 00 00 */ li r3, 0
|
||||
/* 8038FF98 0038CEF8 4E 80 00 20 */ blr
|
||||
|
||||
.global strcmp
|
||||
strcmp:
|
||||
/* 8038FF9C 0038CEFC 88 A3 00 00 */ lbz r5, 0(r3)
|
||||
/* 8038FFA0 0038CF00 88 04 00 00 */ lbz r0, 0(r4)
|
||||
/* 8038FFA4 0038CF04 7C 00 28 51 */ subf. r0, r0, r5
|
||||
/* 8038FFA8 0038CF08 41 82 00 0C */ beq lbl_8038FFB4
|
||||
/* 8038FFAC 0038CF0C 7C 03 03 78 */ mr r3, r0
|
||||
/* 8038FFB0 0038CF10 4E 80 00 20 */ blr
|
||||
lbl_8038FFB4:
|
||||
/* 8038FFB4 0038CF14 54 80 07 BE */ clrlwi r0, r4, 0x1e
|
||||
/* 8038FFB8 0038CF18 54 66 07 BE */ clrlwi r6, r3, 0x1e
|
||||
/* 8038FFBC 0038CF1C 7C 00 30 40 */ cmplw r0, r6
|
||||
/* 8038FFC0 0038CF20 40 82 00 CC */ bne lbl_8039008C
|
||||
/* 8038FFC4 0038CF24 28 06 00 00 */ cmplwi r6, 0
|
||||
/* 8038FFC8 0038CF28 41 82 00 58 */ beq lbl_80390020
|
||||
/* 8038FFCC 0038CF2C 28 05 00 00 */ cmplwi r5, 0
|
||||
/* 8038FFD0 0038CF30 40 82 00 0C */ bne lbl_8038FFDC
|
||||
/* 8038FFD4 0038CF34 38 60 00 00 */ li r3, 0
|
||||
/* 8038FFD8 0038CF38 4E 80 00 20 */ blr
|
||||
lbl_8038FFDC:
|
||||
/* 8038FFDC 0038CF3C 20 06 00 03 */ subfic r0, r6, 3
|
||||
/* 8038FFE0 0038CF40 7C 09 03 A6 */ mtctr r0
|
||||
/* 8038FFE4 0038CF44 28 00 00 00 */ cmplwi r0, 0
|
||||
/* 8038FFE8 0038CF48 41 82 00 30 */ beq lbl_80390018
|
||||
lbl_8038FFEC:
|
||||
/* 8038FFEC 0038CF4C 8C A3 00 01 */ lbzu r5, 1(r3)
|
||||
/* 8038FFF0 0038CF50 8C 04 00 01 */ lbzu r0, 1(r4)
|
||||
/* 8038FFF4 0038CF54 7C 00 28 51 */ subf. r0, r0, r5
|
||||
/* 8038FFF8 0038CF58 41 82 00 0C */ beq lbl_80390004
|
||||
/* 8038FFFC 0038CF5C 7C 03 03 78 */ mr r3, r0
|
||||
/* 80390000 0038CF60 4E 80 00 20 */ blr
|
||||
lbl_80390004:
|
||||
/* 80390004 0038CF64 28 05 00 00 */ cmplwi r5, 0
|
||||
/* 80390008 0038CF68 40 82 00 0C */ bne lbl_80390014
|
||||
/* 8039000C 0038CF6C 38 60 00 00 */ li r3, 0
|
||||
/* 80390010 0038CF70 4E 80 00 20 */ blr
|
||||
lbl_80390014:
|
||||
/* 80390014 0038CF74 42 00 FF D8 */ bdnz lbl_8038FFEC
|
||||
lbl_80390018:
|
||||
/* 80390018 0038CF78 38 63 00 01 */ addi r3, r3, 1
|
||||
/* 8039001C 0038CF7C 38 84 00 01 */ addi r4, r4, 1
|
||||
lbl_80390020:
|
||||
/* 80390020 0038CF80 80 E3 00 00 */ lwz r7, 0(r3)
|
||||
/* 80390024 0038CF84 3C A0 80 81 */ lis r5, 0x80808080@ha
|
||||
/* 80390028 0038CF88 38 C5 80 80 */ addi r6, r5, 0x80808080@l
|
||||
/* 8039002C 0038CF8C 81 04 00 00 */ lwz r8, 0(r4)
|
||||
/* 80390030 0038CF90 3C A7 FE FF */ addis r5, r7, 0xfeff
|
||||
/* 80390034 0038CF94 38 05 FE FF */ addi r0, r5, -257
|
||||
/* 80390038 0038CF98 7C 00 30 39 */ and. r0, r0, r6
|
||||
/* 8039003C 0038CF9C 40 82 00 38 */ bne lbl_80390074
|
||||
/* 80390040 0038CFA0 48 00 00 1C */ b lbl_8039005C
|
||||
lbl_80390044:
|
||||
/* 80390044 0038CFA4 84 E3 00 04 */ lwzu r7, 4(r3)
|
||||
/* 80390048 0038CFA8 85 04 00 04 */ lwzu r8, 4(r4)
|
||||
/* 8039004C 0038CFAC 3C A7 FE FF */ addis r5, r7, 0xfeff
|
||||
/* 80390050 0038CFB0 38 05 FE FF */ addi r0, r5, -257
|
||||
/* 80390054 0038CFB4 7C 00 30 39 */ and. r0, r0, r6
|
||||
/* 80390058 0038CFB8 40 82 00 1C */ bne lbl_80390074
|
||||
lbl_8039005C:
|
||||
/* 8039005C 0038CFBC 7C 07 40 40 */ cmplw r7, r8
|
||||
/* 80390060 0038CFC0 41 82 FF E4 */ beq lbl_80390044
|
||||
/* 80390064 0038CFC4 38 60 FF FF */ li r3, -1
|
||||
/* 80390068 0038CFC8 4C 81 00 20 */ blelr
|
||||
/* 8039006C 0038CFCC 38 60 00 01 */ li r3, 1
|
||||
/* 80390070 0038CFD0 4E 80 00 20 */ blr
|
||||
lbl_80390074:
|
||||
/* 80390074 0038CFD4 88 A3 00 00 */ lbz r5, 0(r3)
|
||||
/* 80390078 0038CFD8 88 04 00 00 */ lbz r0, 0(r4)
|
||||
/* 8039007C 0038CFDC 7C 00 28 51 */ subf. r0, r0, r5
|
||||
/* 80390080 0038CFE0 41 82 00 0C */ beq lbl_8039008C
|
||||
/* 80390084 0038CFE4 7C 03 03 78 */ mr r3, r0
|
||||
/* 80390088 0038CFE8 4E 80 00 20 */ blr
|
||||
lbl_8039008C:
|
||||
/* 8039008C 0038CFEC 28 05 00 00 */ cmplwi r5, 0
|
||||
/* 80390090 0038CFF0 40 82 00 0C */ bne lbl_8039009C
|
||||
/* 80390094 0038CFF4 38 60 00 00 */ li r3, 0
|
||||
/* 80390098 0038CFF8 4E 80 00 20 */ blr
|
||||
lbl_8039009C:
|
||||
/* 8039009C 0038CFFC 8C A3 00 01 */ lbzu r5, 1(r3)
|
||||
/* 803900A0 0038D000 8C 04 00 01 */ lbzu r0, 1(r4)
|
||||
/* 803900A4 0038D004 7C 00 28 51 */ subf. r0, r0, r5
|
||||
/* 803900A8 0038D008 41 82 00 0C */ beq lbl_803900B4
|
||||
/* 803900AC 0038D00C 7C 03 03 78 */ mr r3, r0
|
||||
/* 803900B0 0038D010 4E 80 00 20 */ blr
|
||||
lbl_803900B4:
|
||||
/* 803900B4 0038D014 28 05 00 00 */ cmplwi r5, 0
|
||||
/* 803900B8 0038D018 40 82 FF E4 */ bne lbl_8039009C
|
||||
/* 803900BC 0038D01C 38 60 00 00 */ li r3, 0
|
||||
/* 803900C0 0038D020 4E 80 00 20 */ blr
|
||||
|
||||
.global strncpy
|
||||
strncpy:
|
||||
/* 803900C4 0038D024 38 84 FF FF */ addi r4, r4, -1
|
||||
/* 803900C8 0038D028 38 C3 FF FF */ addi r6, r3, -1
|
||||
/* 803900CC 0038D02C 38 A5 00 01 */ addi r5, r5, 1
|
||||
/* 803900D0 0038D030 48 00 00 2C */ b lbl_803900FC
|
||||
lbl_803900D4:
|
||||
/* 803900D4 0038D034 8C 04 00 01 */ lbzu r0, 1(r4)
|
||||
/* 803900D8 0038D038 28 00 00 00 */ cmplwi r0, 0
|
||||
/* 803900DC 0038D03C 9C 06 00 01 */ stbu r0, 1(r6)
|
||||
/* 803900E0 0038D040 40 82 00 1C */ bne lbl_803900FC
|
||||
/* 803900E4 0038D044 38 00 00 00 */ li r0, 0
|
||||
/* 803900E8 0038D048 48 00 00 08 */ b lbl_803900F0
|
||||
lbl_803900EC:
|
||||
/* 803900EC 0038D04C 9C 06 00 01 */ stbu r0, 1(r6)
|
||||
lbl_803900F0:
|
||||
/* 803900F0 0038D050 34 A5 FF FF */ addic. r5, r5, -1
|
||||
/* 803900F4 0038D054 40 82 FF F8 */ bne lbl_803900EC
|
||||
/* 803900F8 0038D058 4E 80 00 20 */ blr
|
||||
lbl_803900FC:
|
||||
/* 803900FC 0038D05C 34 A5 FF FF */ addic. r5, r5, -1
|
||||
/* 80390100 0038D060 40 82 FF D4 */ bne lbl_803900D4
|
||||
/* 80390104 0038D064 4E 80 00 20 */ blr
|
||||
|
||||
.global strcpy
|
||||
strcpy:
|
||||
/* 80390108 0038D068 54 60 07 BE */ clrlwi r0, r3, 0x1e
|
||||
/* 8039010C 0038D06C 54 85 07 BE */ clrlwi r5, r4, 0x1e
|
||||
/* 80390110 0038D070 7C 00 28 40 */ cmplw r0, r5
|
||||
/* 80390114 0038D074 7C 67 1B 78 */ mr r7, r3
|
||||
/* 80390118 0038D078 40 82 00 84 */ bne lbl_8039019C
|
||||
/* 8039011C 0038D07C 28 05 00 00 */ cmplwi r5, 0
|
||||
/* 80390120 0038D080 41 82 00 40 */ beq lbl_80390160
|
||||
/* 80390124 0038D084 88 04 00 00 */ lbz r0, 0(r4)
|
||||
/* 80390128 0038D088 28 00 00 00 */ cmplwi r0, 0
|
||||
/* 8039012C 0038D08C 98 07 00 00 */ stb r0, 0(r7)
|
||||
/* 80390130 0038D090 4D 82 00 20 */ beqlr
|
||||
/* 80390134 0038D094 20 05 00 03 */ subfic r0, r5, 3
|
||||
/* 80390138 0038D098 7C 09 03 A6 */ mtctr r0
|
||||
/* 8039013C 0038D09C 28 00 00 00 */ cmplwi r0, 0
|
||||
/* 80390140 0038D0A0 41 82 00 18 */ beq lbl_80390158
|
||||
lbl_80390144:
|
||||
/* 80390144 0038D0A4 8C 04 00 01 */ lbzu r0, 1(r4)
|
||||
/* 80390148 0038D0A8 28 00 00 00 */ cmplwi r0, 0
|
||||
/* 8039014C 0038D0AC 9C 07 00 01 */ stbu r0, 1(r7)
|
||||
/* 80390150 0038D0B0 4D 82 00 20 */ beqlr
|
||||
/* 80390154 0038D0B4 42 00 FF F0 */ bdnz lbl_80390144
|
||||
lbl_80390158:
|
||||
/* 80390158 0038D0B8 38 E7 00 01 */ addi r7, r7, 1
|
||||
/* 8039015C 0038D0BC 38 84 00 01 */ addi r4, r4, 1
|
||||
lbl_80390160:
|
||||
/* 80390160 0038D0C0 81 04 00 00 */ lwz r8, 0(r4)
|
||||
/* 80390164 0038D0C4 3C A0 80 81 */ lis r5, 0x80808080@ha
|
||||
/* 80390168 0038D0C8 38 C5 80 80 */ addi r6, r5, 0x80808080@l
|
||||
/* 8039016C 0038D0CC 3C A8 FE FF */ addis r5, r8, 0xfeff
|
||||
/* 80390170 0038D0D0 38 05 FE FF */ addi r0, r5, -257
|
||||
/* 80390174 0038D0D4 7C 00 30 39 */ and. r0, r0, r6
|
||||
/* 80390178 0038D0D8 40 82 00 24 */ bne lbl_8039019C
|
||||
/* 8039017C 0038D0DC 38 E7 FF FC */ addi r7, r7, -4
|
||||
lbl_80390180:
|
||||
/* 80390180 0038D0E0 95 07 00 04 */ stwu r8, 4(r7)
|
||||
/* 80390184 0038D0E4 85 04 00 04 */ lwzu r8, 4(r4)
|
||||
/* 80390188 0038D0E8 3C A8 FE FF */ addis r5, r8, 0xfeff
|
||||
/* 8039018C 0038D0EC 38 05 FE FF */ addi r0, r5, -257
|
||||
/* 80390190 0038D0F0 7C 00 30 39 */ and. r0, r0, r6
|
||||
/* 80390194 0038D0F4 41 82 FF EC */ beq lbl_80390180
|
||||
/* 80390198 0038D0F8 38 E7 00 04 */ addi r7, r7, 4
|
||||
lbl_8039019C:
|
||||
/* 8039019C 0038D0FC 88 04 00 00 */ lbz r0, 0(r4)
|
||||
/* 803901A0 0038D100 28 00 00 00 */ cmplwi r0, 0
|
||||
/* 803901A4 0038D104 98 07 00 00 */ stb r0, 0(r7)
|
||||
/* 803901A8 0038D108 4D 82 00 20 */ beqlr
|
||||
lbl_803901AC:
|
||||
/* 803901AC 0038D10C 8C 04 00 01 */ lbzu r0, 1(r4)
|
||||
/* 803901B0 0038D110 28 00 00 00 */ cmplwi r0, 0
|
||||
/* 803901B4 0038D114 9C 07 00 01 */ stbu r0, 1(r7)
|
||||
/* 803901B8 0038D118 40 82 FF F4 */ bne lbl_803901AC
|
||||
/* 803901BC 0038D11C 4E 80 00 20 */ blr
|
||||
|
||||
.global strlen
|
||||
strlen:
|
||||
/* 803901C0 0038D120 38 83 FF FF */ addi r4, r3, -1
|
||||
/* 803901C4 0038D124 38 60 FF FF */ li r3, -1
|
||||
lbl_803901C8:
|
||||
/* 803901C8 0038D128 8C 04 00 01 */ lbzu r0, 1(r4)
|
||||
/* 803901CC 0038D12C 38 63 00 01 */ addi r3, r3, 1
|
||||
/* 803901D0 0038D130 28 00 00 00 */ cmplwi r0, 0
|
||||
/* 803901D4 0038D134 40 82 FF F4 */ bne lbl_803901C8
|
||||
/* 803901D8 0038D138 4E 80 00 20 */ blr
|
File diff suppressed because it is too large
Load Diff
|
@ -0,0 +1,68 @@
|
|||
.include "macros.inc"
|
||||
|
||||
.section .text, "ax"
|
||||
|
||||
.if 0
|
||||
/* THIS DOESN'T WORK???? */
|
||||
|
||||
.global __close_console
|
||||
__close_console:
|
||||
/* 80391274 0038E1D4 38 60 00 00 */ li r3, 0
|
||||
/* 80391278 0038E1D8 4E 80 00 20 */ blr
|
||||
|
||||
.global __write_console
|
||||
__write_console:
|
||||
/* 8039127C 0038E1DC 94 21 FF E0 */ stwu r1, -0x20(r1)
|
||||
/* 80391280 0038E1E0 7C 08 02 A6 */ mflr r0
|
||||
/* 80391284 0038E1E4 90 01 00 24 */ stw r0, 0x24(r1)
|
||||
/* 80391288 0038E1E8 93 E1 00 1C */ stw r31, 0x1c(r1)
|
||||
/* 8039128C 0038E1EC 7C DF 33 78 */ mr r31, r6
|
||||
/* 80391290 0038E1F0 93 C1 00 18 */ stw r30, 0x18(r1)
|
||||
/* 80391294 0038E1F4 7C BE 2B 78 */ mr r30, r5
|
||||
/* 80391298 0038E1F8 93 A1 00 14 */ stw r29, 0x14(r1)
|
||||
/* 8039129C 0038E1FC 7C 9D 23 78 */ mr r29, r4
|
||||
/* 803912A0 0038E200 93 81 00 10 */ stw r28, 0x10(r1)
|
||||
/* 803912A4 0038E204 7C 7C 1B 78 */ mr r28, r3
|
||||
/* 803912A8 0038E208 38 60 00 00 */ li r3, 0
|
||||
/* 803912AC 0038E20C 80 0D AE 18 */ lwz r0, lbl_805A99D8@sda21(r13)
|
||||
/* 803912B0 0038E210 2C 00 00 00 */ cmpwi r0, 0
|
||||
/* 803912B4 0038E214 40 82 00 20 */ bne lbl_803912D4
|
||||
/* 803912B8 0038E218 3C 60 00 01 */ lis r3, 0x0000E100@ha
|
||||
/* 803912BC 0038E21C 38 63 E1 00 */ addi r3, r3, 0x0000E100@l
|
||||
/* 803912C0 0038E220 48 03 06 31 */ bl InitializeUART
|
||||
/* 803912C4 0038E224 2C 03 00 00 */ cmpwi r3, 0
|
||||
/* 803912C8 0038E228 40 82 00 0C */ bne lbl_803912D4
|
||||
/* 803912CC 0038E22C 38 00 00 01 */ li r0, 1
|
||||
/* 803912D0 0038E230 90 0D AE 18 */ stw r0, lbl_805A99D8@sda21(r13)
|
||||
lbl_803912D4:
|
||||
/* 803912D4 0038E234 2C 03 00 00 */ cmpwi r3, 0
|
||||
/* 803912D8 0038E238 41 82 00 0C */ beq lbl_803912E4
|
||||
/* 803912DC 0038E23C 38 60 00 01 */ li r3, 1
|
||||
/* 803912E0 0038E240 48 00 00 40 */ b lbl_80391320
|
||||
lbl_803912E4:
|
||||
/* 803912E4 0038E244 80 9E 00 00 */ lwz r4, 0(r30)
|
||||
/* 803912E8 0038E248 7F A3 EB 78 */ mr r3, r29
|
||||
/* 803912EC 0038E24C 48 03 06 75 */ bl WriteUARTN
|
||||
/* 803912F0 0038E250 2C 03 00 00 */ cmpwi r3, 0
|
||||
/* 803912F4 0038E254 41 82 00 14 */ beq lbl_80391308
|
||||
/* 803912F8 0038E258 38 00 00 00 */ li r0, 0
|
||||
/* 803912FC 0038E25C 38 60 00 01 */ li r3, 1
|
||||
/* 80391300 0038E260 90 1E 00 00 */ stw r0, 0(r30)
|
||||
/* 80391304 0038E264 48 00 00 1C */ b lbl_80391320
|
||||
lbl_80391308:
|
||||
/* 80391308 0038E268 7F 83 E3 78 */ mr r3, r28
|
||||
/* 8039130C 0038E26C 7F A4 EB 78 */ mr r4, r29
|
||||
/* 80391310 0038E270 7F C5 F3 78 */ mr r5, r30
|
||||
/* 80391314 0038E274 7F E6 FB 78 */ mr r6, r31
|
||||
/* 80391318 0038E278 4B C7 23 39 */ bl sub_80003650
|
||||
/* 8039131C 0038E27C 38 60 00 00 */ li r3, 0
|
||||
lbl_80391320:
|
||||
/* 80391320 0038E280 80 01 00 24 */ lwz r0, 0x24(r1)
|
||||
/* 80391324 0038E284 83 E1 00 1C */ lwz r31, 0x1c(r1)
|
||||
/* 80391328 0038E288 83 C1 00 18 */ lwz r30, 0x18(r1)
|
||||
/* 8039132C 0038E28C 83 A1 00 14 */ lwz r29, 0x14(r1)
|
||||
/* 80391330 0038E290 83 81 00 10 */ lwz r28, 0x10(r1)
|
||||
/* 80391334 0038E294 7C 08 03 A6 */ mtlr r0
|
||||
/* 80391338 0038E298 38 21 00 20 */ addi r1, r1, 0x20
|
||||
/* 8039133C 0038E29C 4E 80 00 20 */ blr
|
||||
.endif
|
|
@ -0,0 +1,113 @@
|
|||
.include "macros.inc"
|
||||
|
||||
.section .text, "ax"
|
||||
.if 1
|
||||
/* TODO: Move __close_console and __write_console to their own file (uart_console_io),
|
||||
* they're here to work around a bug with CW
|
||||
*/
|
||||
|
||||
.global __close_console
|
||||
__close_console:
|
||||
/* 80391274 0038E1D4 38 60 00 00 */ li r3, 0
|
||||
/* 80391278 0038E1D8 4E 80 00 20 */ blr
|
||||
|
||||
.global __write_console
|
||||
__write_console:
|
||||
/* 8039127C 0038E1DC 94 21 FF E0 */ stwu r1, -0x20(r1)
|
||||
/* 80391280 0038E1E0 7C 08 02 A6 */ mflr r0
|
||||
/* 80391284 0038E1E4 90 01 00 24 */ stw r0, 0x24(r1)
|
||||
/* 80391288 0038E1E8 93 E1 00 1C */ stw r31, 0x1c(r1)
|
||||
/* 8039128C 0038E1EC 7C DF 33 78 */ mr r31, r6
|
||||
/* 80391290 0038E1F0 93 C1 00 18 */ stw r30, 0x18(r1)
|
||||
/* 80391294 0038E1F4 7C BE 2B 78 */ mr r30, r5
|
||||
/* 80391298 0038E1F8 93 A1 00 14 */ stw r29, 0x14(r1)
|
||||
/* 8039129C 0038E1FC 7C 9D 23 78 */ mr r29, r4
|
||||
/* 803912A0 0038E200 93 81 00 10 */ stw r28, 0x10(r1)
|
||||
/* 803912A4 0038E204 7C 7C 1B 78 */ mr r28, r3
|
||||
/* 803912A8 0038E208 38 60 00 00 */ li r3, 0
|
||||
/* 803912AC 0038E20C 80 0D AE 18 */ lwz r0, lbl_805A99D8@sda21(r13)
|
||||
/* 803912B0 0038E210 2C 00 00 00 */ cmpwi r0, 0
|
||||
/* 803912B4 0038E214 40 82 00 20 */ bne lbl_803912D4
|
||||
/* 803912B8 0038E218 3C 60 00 01 */ lis r3, 0x0000E100@ha
|
||||
/* 803912BC 0038E21C 38 63 E1 00 */ addi r3, r3, 0x0000E100@l
|
||||
/* 803912C0 0038E220 48 03 06 31 */ bl InitializeUART
|
||||
/* 803912C4 0038E224 2C 03 00 00 */ cmpwi r3, 0
|
||||
/* 803912C8 0038E228 40 82 00 0C */ bne lbl_803912D4
|
||||
/* 803912CC 0038E22C 38 00 00 01 */ li r0, 1
|
||||
/* 803912D0 0038E230 90 0D AE 18 */ stw r0, lbl_805A99D8@sda21(r13)
|
||||
lbl_803912D4:
|
||||
/* 803912D4 0038E234 2C 03 00 00 */ cmpwi r3, 0
|
||||
/* 803912D8 0038E238 41 82 00 0C */ beq lbl_803912E4
|
||||
/* 803912DC 0038E23C 38 60 00 01 */ li r3, 1
|
||||
/* 803912E0 0038E240 48 00 00 40 */ b lbl_80391320
|
||||
lbl_803912E4:
|
||||
/* 803912E4 0038E244 80 9E 00 00 */ lwz r4, 0(r30)
|
||||
/* 803912E8 0038E248 7F A3 EB 78 */ mr r3, r29
|
||||
/* 803912EC 0038E24C 48 03 06 75 */ bl WriteUARTN
|
||||
/* 803912F0 0038E250 2C 03 00 00 */ cmpwi r3, 0
|
||||
/* 803912F4 0038E254 41 82 00 14 */ beq lbl_80391308
|
||||
/* 803912F8 0038E258 38 00 00 00 */ li r0, 0
|
||||
/* 803912FC 0038E25C 38 60 00 01 */ li r3, 1
|
||||
/* 80391300 0038E260 90 1E 00 00 */ stw r0, 0(r30)
|
||||
/* 80391304 0038E264 48 00 00 1C */ b lbl_80391320
|
||||
lbl_80391308:
|
||||
/* 80391308 0038E268 7F 83 E3 78 */ mr r3, r28
|
||||
/* 8039130C 0038E26C 7F A4 EB 78 */ mr r4, r29
|
||||
/* 80391310 0038E270 7F C5 F3 78 */ mr r5, r30
|
||||
/* 80391314 0038E274 7F E6 FB 78 */ mr r6, r31
|
||||
/* 80391318 0038E278 4B C7 23 39 */ bl sub_80003650
|
||||
/* 8039131C 0038E27C 38 60 00 00 */ li r3, 0
|
||||
lbl_80391320:
|
||||
/* 80391320 0038E280 80 01 00 24 */ lwz r0, 0x24(r1)
|
||||
/* 80391324 0038E284 83 E1 00 1C */ lwz r31, 0x1c(r1)
|
||||
/* 80391328 0038E288 83 C1 00 18 */ lwz r30, 0x18(r1)
|
||||
/* 8039132C 0038E28C 83 A1 00 14 */ lwz r29, 0x14(r1)
|
||||
/* 80391330 0038E290 83 81 00 10 */ lwz r28, 0x10(r1)
|
||||
/* 80391334 0038E294 7C 08 03 A6 */ mtlr r0
|
||||
/* 80391338 0038E298 38 21 00 20 */ addi r1, r1, 0x20
|
||||
/* 8039133C 0038E29C 4E 80 00 20 */ blr
|
||||
.endif
|
||||
.global fwide
|
||||
fwide:
|
||||
/* 80391340 0038E2A0 28 03 00 00 */ cmplwi r3, 0
|
||||
/* 80391344 0038E2A4 41 82 00 10 */ beq lbl_80391354
|
||||
/* 80391348 0038E2A8 A0 03 00 04 */ lhz r0, 4(r3)
|
||||
/* 8039134C 0038E2AC 54 00 D7 7F */ rlwinm. r0, r0, 0x1a, 0x1d, 0x1f
|
||||
/* 80391350 0038E2B0 40 82 00 0C */ bne lbl_8039135C
|
||||
lbl_80391354:
|
||||
/* 80391354 0038E2B4 38 60 00 00 */ li r3, 0
|
||||
/* 80391358 0038E2B8 4E 80 00 20 */ blr
|
||||
lbl_8039135C:
|
||||
/* 8039135C 0038E2BC 88 A3 00 05 */ lbz r5, 5(r3)
|
||||
/* 80391360 0038E2C0 54 A0 E7 BE */ rlwinm r0, r5, 0x1c, 0x1e, 0x1f
|
||||
/* 80391364 0038E2C4 2C 00 00 01 */ cmpwi r0, 1
|
||||
/* 80391368 0038E2C8 41 82 00 58 */ beq lbl_803913C0
|
||||
/* 8039136C 0038E2CC 40 80 00 10 */ bge lbl_8039137C
|
||||
/* 80391370 0038E2D0 2C 00 00 00 */ cmpwi r0, 0
|
||||
/* 80391374 0038E2D4 40 80 00 14 */ bge lbl_80391388
|
||||
/* 80391378 0038E2D8 4E 80 00 20 */ blr
|
||||
lbl_8039137C:
|
||||
/* 8039137C 0038E2DC 2C 00 00 03 */ cmpwi r0, 3
|
||||
/* 80391380 0038E2E0 4C 80 00 20 */ bgelr
|
||||
/* 80391384 0038E2E4 48 00 00 34 */ b lbl_803913B8
|
||||
lbl_80391388:
|
||||
/* 80391388 0038E2E8 2C 04 00 00 */ cmpwi r4, 0
|
||||
/* 8039138C 0038E2EC 40 81 00 14 */ ble lbl_803913A0
|
||||
/* 80391390 0038E2F0 38 00 00 02 */ li r0, 2
|
||||
/* 80391394 0038E2F4 50 05 26 B6 */ rlwimi r5, r0, 4, 0x1a, 0x1b
|
||||
/* 80391398 0038E2F8 98 A3 00 05 */ stb r5, 5(r3)
|
||||
/* 8039139C 0038E2FC 48 00 00 14 */ b lbl_803913B0
|
||||
lbl_803913A0:
|
||||
/* 803913A0 0038E300 40 80 00 10 */ bge lbl_803913B0
|
||||
/* 803913A4 0038E304 38 00 00 01 */ li r0, 1
|
||||
/* 803913A8 0038E308 50 05 26 B6 */ rlwimi r5, r0, 4, 0x1a, 0x1b
|
||||
/* 803913AC 0038E30C 98 A3 00 05 */ stb r5, 5(r3)
|
||||
lbl_803913B0:
|
||||
/* 803913B0 0038E310 7C 83 23 78 */ mr r3, r4
|
||||
/* 803913B4 0038E314 4E 80 00 20 */ blr
|
||||
lbl_803913B8:
|
||||
/* 803913B8 0038E318 38 60 00 01 */ li r3, 1
|
||||
/* 803913BC 0038E31C 4E 80 00 20 */ blr
|
||||
lbl_803913C0:
|
||||
/* 803913C0 0038E320 38 60 FF FF */ li r3, -1
|
||||
/* 803913C4 0038E324 4E 80 00 20 */ blr
|
|
@ -0,0 +1,583 @@
|
|||
.include "macros.inc"
|
||||
|
||||
.section .text, "ax"
|
||||
|
||||
.global do_src1
|
||||
do_src1:
|
||||
/* 803B6CB0 003B3C10 94 21 FF C0 */ stwu r1, -0x40(r1)
|
||||
/* 803B6CB4 003B3C14 BF 41 00 28 */ stmw r26, 0x28(r1)
|
||||
/* 803B6CB8 003B3C18 80 83 00 0C */ lwz r4, 0xc(r3)
|
||||
/* 803B6CBC 003B3C1C 80 A3 00 10 */ lwz r5, 0x10(r3)
|
||||
/* 803B6CC0 003B3C20 80 C3 00 14 */ lwz r6, 0x14(r3)
|
||||
/* 803B6CC4 003B3C24 81 03 00 1C */ lwz r8, 0x1c(r3)
|
||||
/* 803B6CC8 003B3C28 80 E3 00 20 */ lwz r7, 0x20(r3)
|
||||
/* 803B6CCC 003B3C2C 83 E3 00 04 */ lwz r31, 4(r3)
|
||||
/* 803B6CD0 003B3C30 83 C3 00 00 */ lwz r30, 0(r3)
|
||||
/* 803B6CD4 003B3C34 81 23 00 08 */ lwz r9, 8(r3)
|
||||
/* 803B6CD8 003B3C38 3D 40 43 30 */ lis r10, 0x4330
|
||||
/* 803B6CDC 003B3C3C 91 41 00 08 */ stw r10, 8(r1)
|
||||
/* 803B6CE0 003B3C40 91 41 00 10 */ stw r10, 0x10(r1)
|
||||
/* 803B6CE4 003B3C44 91 41 00 18 */ stw r10, 0x18(r1)
|
||||
/* 803B6CE8 003B3C48 91 41 00 20 */ stw r10, 0x20(r1)
|
||||
/* 803B6CEC 003B3C4C 3D 40 80 5B */ lis r10, lbl_805AF438@ha
|
||||
/* 803B6CF0 003B3C50 C9 2A F4 38 */ lfd f9, lbl_805AF438@l(r10)
|
||||
/* 803B6CF4 003B3C54 54 AA 10 3A */ slwi r10, r5, 2
|
||||
/* 803B6CF8 003B3C58 81 69 00 00 */ lwz r11, 0(r9)
|
||||
/* 803B6CFC 003B3C5C 83 A9 00 04 */ lwz r29, 4(r9)
|
||||
/* 803B6D00 003B3C60 83 89 00 08 */ lwz r28, 8(r9)
|
||||
/* 803B6D04 003B3C64 7F 7F 50 2E */ lwzx r27, r31, r10
|
||||
/* 803B6D08 003B3C68 6D 6B 80 00 */ xoris r11, r11, 0x8000
|
||||
/* 803B6D0C 003B3C6C 6F BD 80 00 */ xoris r29, r29, 0x8000
|
||||
/* 803B6D10 003B3C70 91 61 00 0C */ stw r11, 0xc(r1)
|
||||
/* 803B6D14 003B3C74 6F 9C 80 00 */ xoris r28, r28, 0x8000
|
||||
/* 803B6D18 003B3C78 93 A1 00 14 */ stw r29, 0x14(r1)
|
||||
/* 803B6D1C 003B3C7C 6F 7B 80 00 */ xoris r27, r27, 0x8000
|
||||
/* 803B6D20 003B3C80 93 81 00 1C */ stw r28, 0x1c(r1)
|
||||
/* 803B6D24 003B3C84 C8 21 00 08 */ lfd f1, 8(r1)
|
||||
/* 803B6D28 003B3C88 93 61 00 24 */ stw r27, 0x24(r1)
|
||||
/* 803B6D2C 003B3C8C C8 41 00 10 */ lfd f2, 0x10(r1)
|
||||
/* 803B6D30 003B3C90 EC 21 48 28 */ fsubs f1, f1, f9
|
||||
/* 803B6D34 003B3C94 C8 61 00 18 */ lfd f3, 0x18(r1)
|
||||
/* 803B6D38 003B3C98 EC 42 48 28 */ fsubs f2, f2, f9
|
||||
/* 803B6D3C 003B3C9C C8 81 00 20 */ lfd f4, 0x20(r1)
|
||||
/* 803B6D40 003B3CA0 EC 63 48 28 */ fsubs f3, f3, f9
|
||||
/* 803B6D44 003B3CA4 EC 84 48 28 */ fsubs f4, f4, f9
|
||||
/* 803B6D48 003B3CA8 3B 40 FF FC */ li r26, -4
|
||||
/* 803B6D4C 003B3CAC 3D 80 80 3F */ lis r12, lbl_803F6490@ha
|
||||
/* 803B6D50 003B3CB0 39 8C 64 90 */ addi r12, r12, lbl_803F6490@l
|
||||
/* 803B6D54 003B3CB4 39 20 00 A0 */ li r9, 0xa0
|
||||
/* 803B6D58 003B3CB8 7D 29 03 A6 */ mtctr r9
|
||||
lbl_803B6D5C:
|
||||
/* 803B6D5C 003B3CBC 54 8A 3D 76 */ rlwinm r10, r4, 7, 0x15, 0x1b
|
||||
/* 803B6D60 003B3CC0 7C 84 30 14 */ addc r4, r4, r6
|
||||
/* 803B6D64 003B3CC4 7D 4A 62 14 */ add r10, r10, r12
|
||||
/* 803B6D68 003B3CC8 7C 00 04 00 */ mcrxr cr0
|
||||
/* 803B6D6C 003B3CCC C0 AA 00 00 */ lfs f5, 0(r10)
|
||||
/* 803B6D70 003B3CD0 41 82 00 34 */ beq lbl_803B6DA4
|
||||
/* 803B6D74 003B3CD4 C0 CA 00 04 */ lfs f6, 4(r10)
|
||||
/* 803B6D78 003B3CD8 ED 41 01 72 */ fmuls f10, f1, f5
|
||||
/* 803B6D7C 003B3CDC C0 EA 00 08 */ lfs f7, 8(r10)
|
||||
/* 803B6D80 003B3CE0 ED 42 51 BA */ fmadds f10, f2, f6, f10
|
||||
/* 803B6D84 003B3CE4 C1 0A 00 0C */ lfs f8, 0xc(r10)
|
||||
/* 803B6D88 003B3CE8 ED 43 51 FA */ fmadds f10, f3, f7, f10
|
||||
/* 803B6D8C 003B3CEC 3B DE 00 04 */ addi r30, r30, 4
|
||||
/* 803B6D90 003B3CF0 ED 44 52 3A */ fmadds f10, f4, f8, f10
|
||||
/* 803B6D94 003B3CF4 FD 40 50 1E */ fctiwz f10, f10
|
||||
/* 803B6D98 003B3CF8 7D 5A F7 AE */ stfiwx f10, r26, r30
|
||||
/* 803B6D9C 003B3CFC 42 00 FF C0 */ bdnz lbl_803B6D5C
|
||||
/* 803B6DA0 003B3D00 48 00 00 70 */ b lbl_803B6E10
|
||||
lbl_803B6DA4:
|
||||
/* 803B6DA4 003B3D04 38 A5 00 01 */ addi r5, r5, 1
|
||||
/* 803B6DA8 003B3D08 C0 CA 00 04 */ lfs f6, 4(r10)
|
||||
/* 803B6DAC 003B3D0C ED 41 01 72 */ fmuls f10, f1, f5
|
||||
/* 803B6DB0 003B3D10 7C 05 40 00 */ cmpw r5, r8
|
||||
/* 803B6DB4 003B3D14 FC 20 10 90 */ fmr f1, f2
|
||||
/* 803B6DB8 003B3D18 C0 EA 00 08 */ lfs f7, 8(r10)
|
||||
/* 803B6DBC 003B3D1C ED 42 51 BA */ fmadds f10, f2, f6, f10
|
||||
/* 803B6DC0 003B3D20 FC 40 18 90 */ fmr f2, f3
|
||||
/* 803B6DC4 003B3D24 C1 0A 00 0C */ lfs f8, 0xc(r10)
|
||||
/* 803B6DC8 003B3D28 ED 43 51 FA */ fmadds f10, f3, f7, f10
|
||||
/* 803B6DCC 003B3D2C 3B DE 00 04 */ addi r30, r30, 4
|
||||
/* 803B6DD0 003B3D30 FC 60 20 90 */ fmr f3, f4
|
||||
/* 803B6DD4 003B3D34 40 A2 00 08 */ bne+ lbl_803B6DDC
|
||||
/* 803B6DD8 003B3D38 7C E5 3B 78 */ mr r5, r7
|
||||
lbl_803B6DDC:
|
||||
/* 803B6DDC 003B3D3C ED 44 52 3A */ fmadds f10, f4, f8, f10
|
||||
/* 803B6DE0 003B3D40 54 A9 10 3A */ slwi r9, r5, 2
|
||||
/* 803B6DE4 003B3D44 42 40 00 24 */ bdz lbl_803B6E08
|
||||
/* 803B6DE8 003B3D48 7D 49 F8 2E */ lwzx r10, r9, r31
|
||||
/* 803B6DEC 003B3D4C FD 40 50 1E */ fctiwz f10, f10
|
||||
/* 803B6DF0 003B3D50 6D 4A 80 00 */ xoris r10, r10, 0x8000
|
||||
/* 803B6DF4 003B3D54 91 41 00 0C */ stw r10, 0xc(r1)
|
||||
/* 803B6DF8 003B3D58 7D 5A F7 AE */ stfiwx f10, r26, r30
|
||||
/* 803B6DFC 003B3D5C C8 81 00 08 */ lfd f4, 8(r1)
|
||||
/* 803B6E00 003B3D60 EC 84 48 28 */ fsubs f4, f4, f9
|
||||
/* 803B6E04 003B3D64 4B FF FF 58 */ b lbl_803B6D5C
|
||||
lbl_803B6E08:
|
||||
/* 803B6E08 003B3D68 FD 40 50 1E */ fctiwz f10, f10
|
||||
/* 803B6E0C 003B3D6C 7D 5A F7 AE */ stfiwx f10, r26, r30
|
||||
lbl_803B6E10:
|
||||
/* 803B6E10 003B3D70 81 23 00 08 */ lwz r9, 8(r3)
|
||||
/* 803B6E14 003B3D74 FC 20 08 1E */ fctiwz f1, f1
|
||||
/* 803B6E18 003B3D78 FC 40 10 1E */ fctiwz f2, f2
|
||||
/* 803B6E1C 003B3D7C FC 60 18 1E */ fctiwz f3, f3
|
||||
/* 803B6E20 003B3D80 7C 20 4F AE */ stfiwx f1, 0, r9
|
||||
/* 803B6E24 003B3D84 39 49 00 04 */ addi r10, r9, 4
|
||||
/* 803B6E28 003B3D88 7C 40 57 AE */ stfiwx f2, 0, r10
|
||||
/* 803B6E2C 003B3D8C 39 49 00 08 */ addi r10, r9, 8
|
||||
/* 803B6E30 003B3D90 7C 60 57 AE */ stfiwx f3, 0, r10
|
||||
/* 803B6E34 003B3D94 90 83 00 0C */ stw r4, 0xc(r3)
|
||||
/* 803B6E38 003B3D98 90 A3 00 10 */ stw r5, 0x10(r3)
|
||||
/* 803B6E3C 003B3D9C BB 41 00 28 */ lmw r26, 0x28(r1)
|
||||
/* 803B6E40 003B3DA0 38 21 00 40 */ addi r1, r1, 0x40
|
||||
/* 803B6E44 003B3DA4 4E 80 00 20 */ blr
|
||||
|
||||
.global do_src2
|
||||
do_src2:
|
||||
/* 803B6E48 003B3DA8 94 21 FF C0 */ stwu r1, -0x40(r1)
|
||||
/* 803B6E4C 003B3DAC BF 41 00 28 */ stmw r26, 0x28(r1)
|
||||
/* 803B6E50 003B3DB0 80 83 00 0C */ lwz r4, 0xc(r3)
|
||||
/* 803B6E54 003B3DB4 80 A3 00 10 */ lwz r5, 0x10(r3)
|
||||
/* 803B6E58 003B3DB8 80 C3 00 14 */ lwz r6, 0x14(r3)
|
||||
/* 803B6E5C 003B3DBC 81 03 00 1C */ lwz r8, 0x1c(r3)
|
||||
/* 803B6E60 003B3DC0 80 E3 00 20 */ lwz r7, 0x20(r3)
|
||||
/* 803B6E64 003B3DC4 83 E3 00 04 */ lwz r31, 4(r3)
|
||||
/* 803B6E68 003B3DC8 83 C3 00 00 */ lwz r30, 0(r3)
|
||||
/* 803B6E6C 003B3DCC 81 23 00 08 */ lwz r9, 8(r3)
|
||||
/* 803B6E70 003B3DD0 3D 40 43 30 */ lis r10, 0x4330
|
||||
/* 803B6E74 003B3DD4 91 41 00 08 */ stw r10, 8(r1)
|
||||
/* 803B6E78 003B3DD8 91 41 00 10 */ stw r10, 0x10(r1)
|
||||
/* 803B6E7C 003B3DDC 91 41 00 18 */ stw r10, 0x18(r1)
|
||||
/* 803B6E80 003B3DE0 91 41 00 20 */ stw r10, 0x20(r1)
|
||||
/* 803B6E84 003B3DE4 3D 40 80 5B */ lis r10, lbl_805AF438@ha
|
||||
/* 803B6E88 003B3DE8 C9 2A F4 38 */ lfd f9, lbl_805AF438@l(r10)
|
||||
/* 803B6E8C 003B3DEC 54 AA 10 3A */ slwi r10, r5, 2
|
||||
/* 803B6E90 003B3DF0 81 69 00 00 */ lwz r11, 0(r9)
|
||||
/* 803B6E94 003B3DF4 83 A9 00 04 */ lwz r29, 4(r9)
|
||||
/* 803B6E98 003B3DF8 83 89 00 08 */ lwz r28, 8(r9)
|
||||
/* 803B6E9C 003B3DFC 7F 7F 50 2E */ lwzx r27, r31, r10
|
||||
/* 803B6EA0 003B3E00 6D 6B 80 00 */ xoris r11, r11, 0x8000
|
||||
/* 803B6EA4 003B3E04 6F BD 80 00 */ xoris r29, r29, 0x8000
|
||||
/* 803B6EA8 003B3E08 91 61 00 0C */ stw r11, 0xc(r1)
|
||||
/* 803B6EAC 003B3E0C 6F 9C 80 00 */ xoris r28, r28, 0x8000
|
||||
/* 803B6EB0 003B3E10 93 A1 00 14 */ stw r29, 0x14(r1)
|
||||
/* 803B6EB4 003B3E14 6F 7B 80 00 */ xoris r27, r27, 0x8000
|
||||
/* 803B6EB8 003B3E18 93 81 00 1C */ stw r28, 0x1c(r1)
|
||||
/* 803B6EBC 003B3E1C C8 21 00 08 */ lfd f1, 8(r1)
|
||||
/* 803B6EC0 003B3E20 93 61 00 24 */ stw r27, 0x24(r1)
|
||||
/* 803B6EC4 003B3E24 C8 41 00 10 */ lfd f2, 0x10(r1)
|
||||
/* 803B6EC8 003B3E28 EC 21 48 28 */ fsubs f1, f1, f9
|
||||
/* 803B6ECC 003B3E2C C8 61 00 18 */ lfd f3, 0x18(r1)
|
||||
/* 803B6ED0 003B3E30 EC 42 48 28 */ fsubs f2, f2, f9
|
||||
/* 803B6ED4 003B3E34 C8 81 00 20 */ lfd f4, 0x20(r1)
|
||||
/* 803B6ED8 003B3E38 EC 63 48 28 */ fsubs f3, f3, f9
|
||||
/* 803B6EDC 003B3E3C EC 84 48 28 */ fsubs f4, f4, f9
|
||||
/* 803B6EE0 003B3E40 3B 40 FF FC */ li r26, -4
|
||||
/* 803B6EE4 003B3E44 3D 80 80 3F */ lis r12, lbl_803F6490@ha
|
||||
/* 803B6EE8 003B3E48 39 8C 64 90 */ addi r12, r12, lbl_803F6490@l
|
||||
/* 803B6EEC 003B3E4C 39 20 00 A0 */ li r9, 0xa0
|
||||
/* 803B6EF0 003B3E50 7D 29 03 A6 */ mtctr r9
|
||||
lbl_803B6EF4:
|
||||
/* 803B6EF4 003B3E54 54 8A 3D 76 */ rlwinm r10, r4, 7, 0x15, 0x1b
|
||||
/* 803B6EF8 003B3E58 7C 84 30 14 */ addc r4, r4, r6
|
||||
/* 803B6EFC 003B3E5C 7D 4A 62 14 */ add r10, r10, r12
|
||||
/* 803B6F00 003B3E60 7C 00 04 00 */ mcrxr cr0
|
||||
/* 803B6F04 003B3E64 38 A5 00 01 */ addi r5, r5, 1
|
||||
/* 803B6F08 003B3E68 C0 AA 00 00 */ lfs f5, 0(r10)
|
||||
/* 803B6F0C 003B3E6C 41 82 00 64 */ beq lbl_803B6F70
|
||||
/* 803B6F10 003B3E70 C0 CA 00 04 */ lfs f6, 4(r10)
|
||||
/* 803B6F14 003B3E74 ED 41 01 72 */ fmuls f10, f1, f5
|
||||
/* 803B6F18 003B3E78 7C 05 40 00 */ cmpw r5, r8
|
||||
/* 803B6F1C 003B3E7C FC 20 10 90 */ fmr f1, f2
|
||||
/* 803B6F20 003B3E80 C0 EA 00 08 */ lfs f7, 8(r10)
|
||||
/* 803B6F24 003B3E84 ED 42 51 BA */ fmadds f10, f2, f6, f10
|
||||
/* 803B6F28 003B3E88 FC 40 18 90 */ fmr f2, f3
|
||||
/* 803B6F2C 003B3E8C C1 0A 00 0C */ lfs f8, 0xc(r10)
|
||||
/* 803B6F30 003B3E90 ED 43 51 FA */ fmadds f10, f3, f7, f10
|
||||
/* 803B6F34 003B3E94 3B DE 00 04 */ addi r30, r30, 4
|
||||
/* 803B6F38 003B3E98 FC 60 20 90 */ fmr f3, f4
|
||||
/* 803B6F3C 003B3E9C 40 A2 00 08 */ bne+ lbl_803B6F44
|
||||
/* 803B6F40 003B3EA0 7C E5 3B 78 */ mr r5, r7
|
||||
lbl_803B6F44:
|
||||
/* 803B6F44 003B3EA4 ED 44 52 3A */ fmadds f10, f4, f8, f10
|
||||
/* 803B6F48 003B3EA8 54 A9 10 3A */ slwi r9, r5, 2
|
||||
/* 803B6F4C 003B3EAC 42 40 00 A8 */ bdz lbl_803B6FF4
|
||||
/* 803B6F50 003B3EB0 7D 49 F8 2E */ lwzx r10, r9, r31
|
||||
/* 803B6F54 003B3EB4 FD 40 50 1E */ fctiwz f10, f10
|
||||
/* 803B6F58 003B3EB8 6D 4A 80 00 */ xoris r10, r10, 0x8000
|
||||
/* 803B6F5C 003B3EBC 91 41 00 0C */ stw r10, 0xc(r1)
|
||||
/* 803B6F60 003B3EC0 7D 5A F7 AE */ stfiwx f10, r26, r30
|
||||
/* 803B6F64 003B3EC4 C8 81 00 08 */ lfd f4, 8(r1)
|
||||
/* 803B6F68 003B3EC8 EC 84 48 28 */ fsubs f4, f4, f9
|
||||
/* 803B6F6C 003B3ECC 4B FF FF 88 */ b lbl_803B6EF4
|
||||
lbl_803B6F70:
|
||||
/* 803B6F70 003B3ED0 7C 05 40 00 */ cmpw r5, r8
|
||||
/* 803B6F74 003B3ED4 C0 CA 00 04 */ lfs f6, 4(r10)
|
||||
/* 803B6F78 003B3ED8 40 A2 00 08 */ bne+ lbl_803B6F80
|
||||
/* 803B6F7C 003B3EDC 7C E5 3B 78 */ mr r5, r7
|
||||
lbl_803B6F80:
|
||||
/* 803B6F80 003B3EE0 54 AB 10 3A */ slwi r11, r5, 2
|
||||
/* 803B6F84 003B3EE4 38 A5 00 01 */ addi r5, r5, 1
|
||||
/* 803B6F88 003B3EE8 7F AB F8 2E */ lwzx r29, r11, r31
|
||||
/* 803B6F8C 003B3EEC ED 41 01 72 */ fmuls f10, f1, f5
|
||||
/* 803B6F90 003B3EF0 7C 05 40 00 */ cmpw r5, r8
|
||||
/* 803B6F94 003B3EF4 6F BD 80 00 */ xoris r29, r29, 0x8000
|
||||
/* 803B6F98 003B3EF8 FC 20 18 90 */ fmr f1, f3
|
||||
/* 803B6F9C 003B3EFC C0 EA 00 08 */ lfs f7, 8(r10)
|
||||
/* 803B6FA0 003B3F00 93 A1 00 0C */ stw r29, 0xc(r1)
|
||||
/* 803B6FA4 003B3F04 ED 42 51 BA */ fmadds f10, f2, f6, f10
|
||||
/* 803B6FA8 003B3F08 C1 0A 00 0C */ lfs f8, 0xc(r10)
|
||||
/* 803B6FAC 003B3F0C ED 43 51 FA */ fmadds f10, f3, f7, f10
|
||||
/* 803B6FB0 003B3F10 C8 61 00 08 */ lfd f3, 8(r1)
|
||||
/* 803B6FB4 003B3F14 FC 40 20 90 */ fmr f2, f4
|
||||
/* 803B6FB8 003B3F18 3B DE 00 04 */ addi r30, r30, 4
|
||||
/* 803B6FBC 003B3F1C EC 63 48 28 */ fsubs f3, f3, f9
|
||||
/* 803B6FC0 003B3F20 40 A2 00 08 */ bne+ lbl_803B6FC8
|
||||
/* 803B6FC4 003B3F24 7C E5 3B 78 */ mr r5, r7
|
||||
lbl_803B6FC8:
|
||||
/* 803B6FC8 003B3F28 ED 44 52 3A */ fmadds f10, f4, f8, f10
|
||||
/* 803B6FCC 003B3F2C 54 A9 10 3A */ slwi r9, r5, 2
|
||||
/* 803B6FD0 003B3F30 42 40 00 24 */ bdz lbl_803B6FF4
|
||||
/* 803B6FD4 003B3F34 7D 49 F8 2E */ lwzx r10, r9, r31
|
||||
/* 803B6FD8 003B3F38 FD 40 50 1E */ fctiwz f10, f10
|
||||
/* 803B6FDC 003B3F3C 6D 4A 80 00 */ xoris r10, r10, 0x8000
|
||||
/* 803B6FE0 003B3F40 91 41 00 0C */ stw r10, 0xc(r1)
|
||||
/* 803B6FE4 003B3F44 7D 5A F7 AE */ stfiwx f10, r26, r30
|
||||
/* 803B6FE8 003B3F48 C8 81 00 08 */ lfd f4, 8(r1)
|
||||
/* 803B6FEC 003B3F4C EC 84 48 28 */ fsubs f4, f4, f9
|
||||
/* 803B6FF0 003B3F50 4B FF FF 04 */ b lbl_803B6EF4
|
||||
lbl_803B6FF4:
|
||||
/* 803B6FF4 003B3F54 FD 40 50 1E */ fctiwz f10, f10
|
||||
/* 803B6FF8 003B3F58 7D 5A F7 AE */ stfiwx f10, r26, r30
|
||||
/* 803B6FFC 003B3F5C 81 23 00 08 */ lwz r9, 8(r3)
|
||||
/* 803B7000 003B3F60 FC 20 08 1E */ fctiwz f1, f1
|
||||
/* 803B7004 003B3F64 FC 40 10 1E */ fctiwz f2, f2
|
||||
/* 803B7008 003B3F68 FC 60 18 1E */ fctiwz f3, f3
|
||||
/* 803B700C 003B3F6C 7C 20 4F AE */ stfiwx f1, 0, r9
|
||||
/* 803B7010 003B3F70 39 49 00 04 */ addi r10, r9, 4
|
||||
/* 803B7014 003B3F74 7C 40 57 AE */ stfiwx f2, 0, r10
|
||||
/* 803B7018 003B3F78 39 49 00 08 */ addi r10, r9, 8
|
||||
/* 803B701C 003B3F7C 7C 60 57 AE */ stfiwx f3, 0, r10
|
||||
/* 803B7020 003B3F80 90 83 00 0C */ stw r4, 0xc(r3)
|
||||
/* 803B7024 003B3F84 90 A3 00 10 */ stw r5, 0x10(r3)
|
||||
/* 803B7028 003B3F88 BB 41 00 28 */ lmw r26, 0x28(r1)
|
||||
/* 803B702C 003B3F8C 38 21 00 40 */ addi r1, r1, 0x40
|
||||
/* 803B7030 003B3F90 4E 80 00 20 */ blr
|
||||
|
||||
.global sndAuxCallbackChorus
|
||||
sndAuxCallbackChorus:
|
||||
/* 803B7034 003B3F94 94 21 FF E0 */ stwu r1, -0x20(r1)
|
||||
/* 803B7038 003B3F98 7C 08 02 A6 */ mflr r0
|
||||
/* 803B703C 003B3F9C 90 01 00 24 */ stw r0, 0x24(r1)
|
||||
/* 803B7040 003B3FA0 54 60 06 3E */ clrlwi r0, r3, 0x18
|
||||
/* 803B7044 003B3FA4 2C 00 00 01 */ cmpwi r0, 1
|
||||
/* 803B7048 003B3FA8 93 E1 00 1C */ stw r31, 0x1c(r1)
|
||||
/* 803B704C 003B3FAC 93 C1 00 18 */ stw r30, 0x18(r1)
|
||||
/* 803B7050 003B3FB0 7C BE 2B 78 */ mr r30, r5
|
||||
/* 803B7054 003B3FB4 93 A1 00 14 */ stw r29, 0x14(r1)
|
||||
/* 803B7058 003B3FB8 7C 9D 23 78 */ mr r29, r4
|
||||
/* 803B705C 003B3FBC 93 81 00 10 */ stw r28, 0x10(r1)
|
||||
/* 803B7060 003B3FC0 41 82 02 70 */ beq lbl_803B72D0
|
||||
/* 803B7064 003B3FC4 40 80 02 6C */ bge lbl_803B72D0
|
||||
/* 803B7068 003B3FC8 2C 00 00 00 */ cmpwi r0, 0
|
||||
/* 803B706C 003B3FCC 40 80 00 08 */ bge lbl_803B7074
|
||||
/* 803B7070 003B3FD0 48 00 02 60 */ b lbl_803B72D0
|
||||
lbl_803B7074:
|
||||
/* 803B7074 003B3FD4 88 9E 00 24 */ lbz r4, 0x24(r30)
|
||||
/* 803B7078 003B3FD8 3C 60 55 55 */ lis r3, 0x55555556@ha
|
||||
/* 803B707C 003B3FDC 38 63 55 56 */ addi r3, r3, 0x55555556@l
|
||||
/* 803B7080 003B3FE0 38 00 00 14 */ li r0, 0x14
|
||||
/* 803B7084 003B3FE4 38 A4 00 01 */ addi r5, r4, 1
|
||||
/* 803B7088 003B3FE8 80 DD 00 00 */ lwz r6, 0(r29)
|
||||
/* 803B708C 003B3FEC 7C 83 28 96 */ mulhw r4, r3, r5
|
||||
/* 803B7090 003B3FF0 80 FD 00 04 */ lwz r7, 4(r29)
|
||||
/* 803B7094 003B3FF4 81 1D 00 08 */ lwz r8, 8(r29)
|
||||
/* 803B7098 003B3FF8 54 83 0F FE */ srwi r3, r4, 0x1f
|
||||
/* 803B709C 003B3FFC 7C 64 1A 14 */ add r3, r4, r3
|
||||
/* 803B70A0 003B4000 1C 63 00 03 */ mulli r3, r3, 3
|
||||
/* 803B70A4 003B4004 7C 63 28 50 */ subf r3, r3, r5
|
||||
/* 803B70A8 003B4008 54 64 15 BA */ rlwinm r4, r3, 2, 0x16, 0x1d
|
||||
/* 803B70AC 003B400C 7C BE 22 14 */ add r5, r30, r4
|
||||
/* 803B70B0 003B4010 54 7F 06 3E */ clrlwi r31, r3, 0x18
|
||||
/* 803B70B4 003B4014 7C 7E 20 2E */ lwzx r3, r30, r4
|
||||
/* 803B70B8 003B4018 80 85 00 0C */ lwz r4, 0xc(r5)
|
||||
/* 803B70BC 003B401C 80 A5 00 18 */ lwz r5, 0x18(r5)
|
||||
/* 803B70C0 003B4020 7C 09 03 A6 */ mtctr r0
|
||||
lbl_803B70C4:
|
||||
/* 803B70C4 003B4024 80 06 00 00 */ lwz r0, 0(r6)
|
||||
/* 803B70C8 003B4028 90 03 00 00 */ stw r0, 0(r3)
|
||||
/* 803B70CC 003B402C 80 07 00 00 */ lwz r0, 0(r7)
|
||||
/* 803B70D0 003B4030 90 04 00 00 */ stw r0, 0(r4)
|
||||
/* 803B70D4 003B4034 80 08 00 00 */ lwz r0, 0(r8)
|
||||
/* 803B70D8 003B4038 90 05 00 00 */ stw r0, 0(r5)
|
||||
/* 803B70DC 003B403C 80 06 00 04 */ lwz r0, 4(r6)
|
||||
/* 803B70E0 003B4040 90 03 00 04 */ stw r0, 4(r3)
|
||||
/* 803B70E4 003B4044 80 07 00 04 */ lwz r0, 4(r7)
|
||||
/* 803B70E8 003B4048 90 04 00 04 */ stw r0, 4(r4)
|
||||
/* 803B70EC 003B404C 80 08 00 04 */ lwz r0, 4(r8)
|
||||
/* 803B70F0 003B4050 90 05 00 04 */ stw r0, 4(r5)
|
||||
/* 803B70F4 003B4054 80 06 00 08 */ lwz r0, 8(r6)
|
||||
/* 803B70F8 003B4058 90 03 00 08 */ stw r0, 8(r3)
|
||||
/* 803B70FC 003B405C 80 07 00 08 */ lwz r0, 8(r7)
|
||||
/* 803B7100 003B4060 90 04 00 08 */ stw r0, 8(r4)
|
||||
/* 803B7104 003B4064 80 08 00 08 */ lwz r0, 8(r8)
|
||||
/* 803B7108 003B4068 90 05 00 08 */ stw r0, 8(r5)
|
||||
/* 803B710C 003B406C 80 06 00 0C */ lwz r0, 0xc(r6)
|
||||
/* 803B7110 003B4070 90 03 00 0C */ stw r0, 0xc(r3)
|
||||
/* 803B7114 003B4074 80 07 00 0C */ lwz r0, 0xc(r7)
|
||||
/* 803B7118 003B4078 90 04 00 0C */ stw r0, 0xc(r4)
|
||||
/* 803B711C 003B407C 80 08 00 0C */ lwz r0, 0xc(r8)
|
||||
/* 803B7120 003B4080 90 05 00 0C */ stw r0, 0xc(r5)
|
||||
/* 803B7124 003B4084 80 06 00 10 */ lwz r0, 0x10(r6)
|
||||
/* 803B7128 003B4088 90 03 00 10 */ stw r0, 0x10(r3)
|
||||
/* 803B712C 003B408C 80 07 00 10 */ lwz r0, 0x10(r7)
|
||||
/* 803B7130 003B4090 90 04 00 10 */ stw r0, 0x10(r4)
|
||||
/* 803B7134 003B4094 80 08 00 10 */ lwz r0, 0x10(r8)
|
||||
/* 803B7138 003B4098 90 05 00 10 */ stw r0, 0x10(r5)
|
||||
/* 803B713C 003B409C 80 06 00 14 */ lwz r0, 0x14(r6)
|
||||
/* 803B7140 003B40A0 90 03 00 14 */ stw r0, 0x14(r3)
|
||||
/* 803B7144 003B40A4 80 07 00 14 */ lwz r0, 0x14(r7)
|
||||
/* 803B7148 003B40A8 90 04 00 14 */ stw r0, 0x14(r4)
|
||||
/* 803B714C 003B40AC 80 08 00 14 */ lwz r0, 0x14(r8)
|
||||
/* 803B7150 003B40B0 90 05 00 14 */ stw r0, 0x14(r5)
|
||||
/* 803B7154 003B40B4 80 06 00 18 */ lwz r0, 0x18(r6)
|
||||
/* 803B7158 003B40B8 90 03 00 18 */ stw r0, 0x18(r3)
|
||||
/* 803B715C 003B40BC 80 07 00 18 */ lwz r0, 0x18(r7)
|
||||
/* 803B7160 003B40C0 90 04 00 18 */ stw r0, 0x18(r4)
|
||||
/* 803B7164 003B40C4 80 08 00 18 */ lwz r0, 0x18(r8)
|
||||
/* 803B7168 003B40C8 90 05 00 18 */ stw r0, 0x18(r5)
|
||||
/* 803B716C 003B40CC 80 06 00 1C */ lwz r0, 0x1c(r6)
|
||||
/* 803B7170 003B40D0 38 C6 00 20 */ addi r6, r6, 0x20
|
||||
/* 803B7174 003B40D4 90 03 00 1C */ stw r0, 0x1c(r3)
|
||||
/* 803B7178 003B40D8 38 63 00 20 */ addi r3, r3, 0x20
|
||||
/* 803B717C 003B40DC 80 07 00 1C */ lwz r0, 0x1c(r7)
|
||||
/* 803B7180 003B40E0 38 E7 00 20 */ addi r7, r7, 0x20
|
||||
/* 803B7184 003B40E4 90 04 00 1C */ stw r0, 0x1c(r4)
|
||||
/* 803B7188 003B40E8 38 84 00 20 */ addi r4, r4, 0x20
|
||||
/* 803B718C 003B40EC 80 08 00 1C */ lwz r0, 0x1c(r8)
|
||||
/* 803B7190 003B40F0 39 08 00 20 */ addi r8, r8, 0x20
|
||||
/* 803B7194 003B40F4 90 05 00 1C */ stw r0, 0x1c(r5)
|
||||
/* 803B7198 003B40F8 38 A5 00 20 */ addi r5, r5, 0x20
|
||||
/* 803B719C 003B40FC 42 00 FF 28 */ bdnz lbl_803B70C4
|
||||
/* 803B71A0 003B4100 80 1E 00 60 */ lwz r0, 0x60(r30)
|
||||
/* 803B71A4 003B4104 7C 03 86 70 */ srawi r3, r0, 0x10
|
||||
/* 803B71A8 003B4108 38 03 00 01 */ addi r0, r3, 1
|
||||
/* 803B71AC 003B410C 90 1E 00 84 */ stw r0, 0x84(r30)
|
||||
/* 803B71B0 003B4110 80 1E 00 60 */ lwz r0, 0x60(r30)
|
||||
/* 803B71B4 003B4114 54 00 80 1E */ slwi r0, r0, 0x10
|
||||
/* 803B71B8 003B4118 90 1E 00 80 */ stw r0, 0x80(r30)
|
||||
/* 803B71BC 003B411C 80 7E 00 64 */ lwz r3, 0x64(r30)
|
||||
/* 803B71C0 003B4120 34 03 FF FF */ addic. r0, r3, -1
|
||||
/* 803B71C4 003B4124 90 1E 00 64 */ stw r0, 0x64(r30)
|
||||
/* 803B71C8 003B4128 40 82 00 18 */ bne lbl_803B71E0
|
||||
/* 803B71CC 003B412C 80 1E 00 68 */ lwz r0, 0x68(r30)
|
||||
/* 803B71D0 003B4130 90 1E 00 64 */ stw r0, 0x64(r30)
|
||||
/* 803B71D4 003B4134 80 1E 00 60 */ lwz r0, 0x60(r30)
|
||||
/* 803B71D8 003B4138 7C 00 00 D0 */ neg r0, r0
|
||||
/* 803B71DC 003B413C 90 1E 00 60 */ stw r0, 0x60(r30)
|
||||
lbl_803B71E0:
|
||||
/* 803B71E0 003B4140 3B 80 00 00 */ li r28, 0
|
||||
lbl_803B71E4:
|
||||
/* 803B71E4 003B4144 80 1E 00 5C */ lwz r0, 0x5c(r30)
|
||||
/* 803B71E8 003B4148 2C 1C 00 01 */ cmpwi r28, 1
|
||||
/* 803B71EC 003B414C 90 1E 00 7C */ stw r0, 0x7c(r30)
|
||||
/* 803B71F0 003B4150 80 1E 00 58 */ lwz r0, 0x58(r30)
|
||||
/* 803B71F4 003B4154 90 1E 00 78 */ stw r0, 0x78(r30)
|
||||
/* 803B71F8 003B4158 41 82 00 3C */ beq lbl_803B7234
|
||||
/* 803B71FC 003B415C 40 80 00 10 */ bge lbl_803B720C
|
||||
/* 803B7200 003B4160 2C 1C 00 00 */ cmpwi r28, 0
|
||||
/* 803B7204 003B4164 40 80 00 14 */ bge lbl_803B7218
|
||||
/* 803B7208 003B4168 48 00 00 60 */ b lbl_803B7268
|
||||
lbl_803B720C:
|
||||
/* 803B720C 003B416C 2C 1C 00 03 */ cmpwi r28, 3
|
||||
/* 803B7210 003B4170 40 80 00 58 */ bge lbl_803B7268
|
||||
/* 803B7214 003B4174 48 00 00 3C */ b lbl_803B7250
|
||||
lbl_803B7218:
|
||||
/* 803B7218 003B4178 80 7E 00 00 */ lwz r3, 0(r30)
|
||||
/* 803B721C 003B417C 38 1E 00 28 */ addi r0, r30, 0x28
|
||||
/* 803B7220 003B4180 90 7E 00 70 */ stw r3, 0x70(r30)
|
||||
/* 803B7224 003B4184 80 7D 00 00 */ lwz r3, 0(r29)
|
||||
/* 803B7228 003B4188 90 7E 00 6C */ stw r3, 0x6c(r30)
|
||||
/* 803B722C 003B418C 90 1E 00 74 */ stw r0, 0x74(r30)
|
||||
/* 803B7230 003B4190 48 00 00 38 */ b lbl_803B7268
|
||||
lbl_803B7234:
|
||||
/* 803B7234 003B4194 80 7E 00 0C */ lwz r3, 0xc(r30)
|
||||
/* 803B7238 003B4198 38 1E 00 38 */ addi r0, r30, 0x38
|
||||
/* 803B723C 003B419C 90 7E 00 70 */ stw r3, 0x70(r30)
|
||||
/* 803B7240 003B41A0 80 7D 00 04 */ lwz r3, 4(r29)
|
||||
/* 803B7244 003B41A4 90 7E 00 6C */ stw r3, 0x6c(r30)
|
||||
/* 803B7248 003B41A8 90 1E 00 74 */ stw r0, 0x74(r30)
|
||||
/* 803B724C 003B41AC 48 00 00 1C */ b lbl_803B7268
|
||||
lbl_803B7250:
|
||||
/* 803B7250 003B41B0 80 7E 00 18 */ lwz r3, 0x18(r30)
|
||||
/* 803B7254 003B41B4 38 1E 00 48 */ addi r0, r30, 0x48
|
||||
/* 803B7258 003B41B8 90 7E 00 70 */ stw r3, 0x70(r30)
|
||||
/* 803B725C 003B41BC 80 7D 00 08 */ lwz r3, 8(r29)
|
||||
/* 803B7260 003B41C0 90 7E 00 6C */ stw r3, 0x6c(r30)
|
||||
/* 803B7264 003B41C4 90 1E 00 74 */ stw r0, 0x74(r30)
|
||||
lbl_803B7268:
|
||||
/* 803B7268 003B41C8 80 1E 00 84 */ lwz r0, 0x84(r30)
|
||||
/* 803B726C 003B41CC 2C 00 00 01 */ cmpwi r0, 1
|
||||
/* 803B7270 003B41D0 41 82 00 20 */ beq lbl_803B7290
|
||||
/* 803B7274 003B41D4 40 80 00 24 */ bge lbl_803B7298
|
||||
/* 803B7278 003B41D8 2C 00 00 00 */ cmpwi r0, 0
|
||||
/* 803B727C 003B41DC 40 80 00 08 */ bge lbl_803B7284
|
||||
/* 803B7280 003B41E0 48 00 00 18 */ b lbl_803B7298
|
||||
lbl_803B7284:
|
||||
/* 803B7284 003B41E4 38 7E 00 6C */ addi r3, r30, 0x6c
|
||||
/* 803B7288 003B41E8 4B FF FA 29 */ bl do_src1
|
||||
/* 803B728C 003B41EC 48 00 00 0C */ b lbl_803B7298
|
||||
lbl_803B7290:
|
||||
/* 803B7290 003B41F0 38 7E 00 6C */ addi r3, r30, 0x6c
|
||||
/* 803B7294 003B41F4 4B FF FB B5 */ bl do_src2
|
||||
lbl_803B7298:
|
||||
/* 803B7298 003B41F8 3B 9C 00 01 */ addi r28, r28, 1
|
||||
/* 803B729C 003B41FC 28 1C 00 03 */ cmplwi r28, 3
|
||||
/* 803B72A0 003B4200 41 80 FF 44 */ blt lbl_803B71E4
|
||||
/* 803B72A4 003B4204 3C 60 88 89 */ lis r3, 0x88888889@ha
|
||||
/* 803B72A8 003B4208 80 9E 00 7C */ lwz r4, 0x7c(r30)
|
||||
/* 803B72AC 003B420C 38 03 88 89 */ addi r0, r3, 0x88888889@l
|
||||
/* 803B72B0 003B4210 7C 00 20 16 */ mulhwu r0, r0, r4
|
||||
/* 803B72B4 003B4214 54 00 C2 3E */ srwi r0, r0, 8
|
||||
/* 803B72B8 003B4218 1C 00 01 E0 */ mulli r0, r0, 0x1e0
|
||||
/* 803B72BC 003B421C 7C 00 20 50 */ subf r0, r0, r4
|
||||
/* 803B72C0 003B4220 90 1E 00 5C */ stw r0, 0x5c(r30)
|
||||
/* 803B72C4 003B4224 80 1E 00 78 */ lwz r0, 0x78(r30)
|
||||
/* 803B72C8 003B4228 90 1E 00 58 */ stw r0, 0x58(r30)
|
||||
/* 803B72CC 003B422C 9B FE 00 24 */ stb r31, 0x24(r30)
|
||||
lbl_803B72D0:
|
||||
/* 803B72D0 003B4230 80 01 00 24 */ lwz r0, 0x24(r1)
|
||||
/* 803B72D4 003B4234 83 E1 00 1C */ lwz r31, 0x1c(r1)
|
||||
/* 803B72D8 003B4238 83 C1 00 18 */ lwz r30, 0x18(r1)
|
||||
/* 803B72DC 003B423C 83 A1 00 14 */ lwz r29, 0x14(r1)
|
||||
/* 803B72E0 003B4240 83 81 00 10 */ lwz r28, 0x10(r1)
|
||||
/* 803B72E4 003B4244 7C 08 03 A6 */ mtlr r0
|
||||
/* 803B72E8 003B4248 38 21 00 20 */ addi r1, r1, 0x20
|
||||
/* 803B72EC 003B424C 4E 80 00 20 */ blr
|
||||
|
||||
.global sndAuxCallbackPrepareChorus
|
||||
sndAuxCallbackPrepareChorus:
|
||||
/* 803B72F0 003B4250 94 21 FF F0 */ stwu r1, -0x10(r1)
|
||||
/* 803B72F4 003B4254 7C 08 02 A6 */ mflr r0
|
||||
/* 803B72F8 003B4258 90 01 00 14 */ stw r0, 0x14(r1)
|
||||
/* 803B72FC 003B425C 93 E1 00 0C */ stw r31, 0xc(r1)
|
||||
/* 803B7300 003B4260 7C 7F 1B 78 */ mr r31, r3
|
||||
/* 803B7304 003B4264 38 60 16 80 */ li r3, 0x1680
|
||||
/* 803B7308 003B4268 4B FF DE 2D */ bl salMalloc
|
||||
/* 803B730C 003B426C 90 7F 00 00 */ stw r3, 0(r31)
|
||||
/* 803B7310 003B4270 80 7F 00 00 */ lwz r3, 0(r31)
|
||||
/* 803B7314 003B4274 28 03 00 00 */ cmplwi r3, 0
|
||||
/* 803B7318 003B4278 41 82 01 C0 */ beq lbl_803B74D8
|
||||
/* 803B731C 003B427C 38 63 07 80 */ addi r3, r3, 0x780
|
||||
/* 803B7320 003B4280 38 00 00 28 */ li r0, 0x28
|
||||
/* 803B7324 003B4284 90 7F 00 0C */ stw r3, 0xc(r31)
|
||||
/* 803B7328 003B4288 80 7F 00 0C */ lwz r3, 0xc(r31)
|
||||
/* 803B732C 003B428C 38 63 07 80 */ addi r3, r3, 0x780
|
||||
/* 803B7330 003B4290 90 7F 00 18 */ stw r3, 0x18(r31)
|
||||
/* 803B7334 003B4294 80 7F 00 00 */ lwz r3, 0(r31)
|
||||
/* 803B7338 003B4298 38 63 02 80 */ addi r3, r3, 0x280
|
||||
/* 803B733C 003B429C 90 7F 00 04 */ stw r3, 4(r31)
|
||||
/* 803B7340 003B42A0 80 7F 00 0C */ lwz r3, 0xc(r31)
|
||||
/* 803B7344 003B42A4 38 63 02 80 */ addi r3, r3, 0x280
|
||||
/* 803B7348 003B42A8 90 7F 00 10 */ stw r3, 0x10(r31)
|
||||
/* 803B734C 003B42AC 80 7F 00 18 */ lwz r3, 0x18(r31)
|
||||
/* 803B7350 003B42B0 38 63 02 80 */ addi r3, r3, 0x280
|
||||
/* 803B7354 003B42B4 90 7F 00 1C */ stw r3, 0x1c(r31)
|
||||
/* 803B7358 003B42B8 80 7F 00 00 */ lwz r3, 0(r31)
|
||||
/* 803B735C 003B42BC 38 63 05 00 */ addi r3, r3, 0x500
|
||||
/* 803B7360 003B42C0 90 7F 00 08 */ stw r3, 8(r31)
|
||||
/* 803B7364 003B42C4 80 7F 00 0C */ lwz r3, 0xc(r31)
|
||||
/* 803B7368 003B42C8 38 63 05 00 */ addi r3, r3, 0x500
|
||||
/* 803B736C 003B42CC 90 7F 00 14 */ stw r3, 0x14(r31)
|
||||
/* 803B7370 003B42D0 80 7F 00 18 */ lwz r3, 0x18(r31)
|
||||
/* 803B7374 003B42D4 38 63 05 00 */ addi r3, r3, 0x500
|
||||
/* 803B7378 003B42D8 90 7F 00 20 */ stw r3, 0x20(r31)
|
||||
/* 803B737C 003B42DC 80 7F 00 00 */ lwz r3, 0(r31)
|
||||
/* 803B7380 003B42E0 80 9F 00 0C */ lwz r4, 0xc(r31)
|
||||
/* 803B7384 003B42E4 80 BF 00 18 */ lwz r5, 0x18(r31)
|
||||
/* 803B7388 003B42E8 7C 09 03 A6 */ mtctr r0
|
||||
lbl_803B738C:
|
||||
/* 803B738C 003B42EC 38 C0 00 00 */ li r6, 0
|
||||
/* 803B7390 003B42F0 90 C3 00 00 */ stw r6, 0(r3)
|
||||
/* 803B7394 003B42F4 90 C4 00 00 */ stw r6, 0(r4)
|
||||
/* 803B7398 003B42F8 90 C5 00 00 */ stw r6, 0(r5)
|
||||
/* 803B739C 003B42FC 90 C3 00 04 */ stw r6, 4(r3)
|
||||
/* 803B73A0 003B4300 90 C4 00 04 */ stw r6, 4(r4)
|
||||
/* 803B73A4 003B4304 90 C5 00 04 */ stw r6, 4(r5)
|
||||
/* 803B73A8 003B4308 90 C3 00 08 */ stw r6, 8(r3)
|
||||
/* 803B73AC 003B430C 90 C4 00 08 */ stw r6, 8(r4)
|
||||
/* 803B73B0 003B4310 90 C5 00 08 */ stw r6, 8(r5)
|
||||
/* 803B73B4 003B4314 90 C3 00 0C */ stw r6, 0xc(r3)
|
||||
/* 803B73B8 003B4318 90 C4 00 0C */ stw r6, 0xc(r4)
|
||||
/* 803B73BC 003B431C 90 C5 00 0C */ stw r6, 0xc(r5)
|
||||
/* 803B73C0 003B4320 90 C3 00 10 */ stw r6, 0x10(r3)
|
||||
/* 803B73C4 003B4324 90 C4 00 10 */ stw r6, 0x10(r4)
|
||||
/* 803B73C8 003B4328 90 C5 00 10 */ stw r6, 0x10(r5)
|
||||
/* 803B73CC 003B432C 90 C3 00 14 */ stw r6, 0x14(r3)
|
||||
/* 803B73D0 003B4330 90 C4 00 14 */ stw r6, 0x14(r4)
|
||||
/* 803B73D4 003B4334 90 C5 00 14 */ stw r6, 0x14(r5)
|
||||
/* 803B73D8 003B4338 90 C3 00 18 */ stw r6, 0x18(r3)
|
||||
/* 803B73DC 003B433C 90 C4 00 18 */ stw r6, 0x18(r4)
|
||||
/* 803B73E0 003B4340 90 C5 00 18 */ stw r6, 0x18(r5)
|
||||
/* 803B73E4 003B4344 90 C3 00 1C */ stw r6, 0x1c(r3)
|
||||
/* 803B73E8 003B4348 38 63 00 20 */ addi r3, r3, 0x20
|
||||
/* 803B73EC 003B434C 90 C4 00 1C */ stw r6, 0x1c(r4)
|
||||
/* 803B73F0 003B4350 38 84 00 20 */ addi r4, r4, 0x20
|
||||
/* 803B73F4 003B4354 90 C5 00 1C */ stw r6, 0x1c(r5)
|
||||
/* 803B73F8 003B4358 38 A5 00 20 */ addi r5, r5, 0x20
|
||||
/* 803B73FC 003B435C 42 00 FF 90 */ bdnz lbl_803B738C
|
||||
/* 803B7400 003B4360 38 00 00 01 */ li r0, 1
|
||||
/* 803B7404 003B4364 3C 80 88 89 */ lis r4, 0x88888889@ha
|
||||
/* 803B7408 003B4368 98 1F 00 24 */ stb r0, 0x24(r31)
|
||||
/* 803B740C 003B436C 3C 60 CC CD */ lis r3, 0xCCCCCCCD@ha
|
||||
/* 803B7410 003B4370 38 A0 01 E0 */ li r5, 0x1e0
|
||||
/* 803B7414 003B4374 38 04 88 89 */ addi r0, r4, 0x88888889@l
|
||||
/* 803B7418 003B4378 90 DF 00 34 */ stw r6, 0x34(r31)
|
||||
/* 803B741C 003B437C 38 83 CC CD */ addi r4, r3, 0xCCCCCCCD@l
|
||||
/* 803B7420 003B4380 38 60 00 01 */ li r3, 1
|
||||
/* 803B7424 003B4384 90 DF 00 30 */ stw r6, 0x30(r31)
|
||||
/* 803B7428 003B4388 90 DF 00 2C */ stw r6, 0x2c(r31)
|
||||
/* 803B742C 003B438C 90 DF 00 28 */ stw r6, 0x28(r31)
|
||||
/* 803B7430 003B4390 90 DF 00 44 */ stw r6, 0x44(r31)
|
||||
/* 803B7434 003B4394 90 DF 00 40 */ stw r6, 0x40(r31)
|
||||
/* 803B7438 003B4398 90 DF 00 3C */ stw r6, 0x3c(r31)
|
||||
/* 803B743C 003B439C 90 DF 00 38 */ stw r6, 0x38(r31)
|
||||
/* 803B7440 003B43A0 90 DF 00 54 */ stw r6, 0x54(r31)
|
||||
/* 803B7444 003B43A4 90 DF 00 50 */ stw r6, 0x50(r31)
|
||||
/* 803B7448 003B43A8 90 DF 00 4C */ stw r6, 0x4c(r31)
|
||||
/* 803B744C 003B43AC 90 DF 00 48 */ stw r6, 0x48(r31)
|
||||
/* 803B7450 003B43B0 90 BF 00 88 */ stw r5, 0x88(r31)
|
||||
/* 803B7454 003B43B4 90 DF 00 8C */ stw r6, 0x8c(r31)
|
||||
/* 803B7458 003B43B8 80 BF 00 90 */ lwz r5, 0x90(r31)
|
||||
/* 803B745C 003B43BC 38 A5 FF FB */ addi r5, r5, -5
|
||||
/* 803B7460 003B43C0 54 A5 28 34 */ slwi r5, r5, 5
|
||||
/* 803B7464 003B43C4 20 A5 01 40 */ subfic r5, r5, 0x140
|
||||
/* 803B7468 003B43C8 90 BF 00 5C */ stw r5, 0x5c(r31)
|
||||
/* 803B746C 003B43CC 90 DF 00 58 */ stw r6, 0x58(r31)
|
||||
/* 803B7470 003B43D0 88 BF 00 24 */ lbz r5, 0x24(r31)
|
||||
/* 803B7474 003B43D4 80 DF 00 5C */ lwz r6, 0x5c(r31)
|
||||
/* 803B7478 003B43D8 38 A5 FF FF */ addi r5, r5, -1
|
||||
/* 803B747C 003B43DC 1C A5 00 A0 */ mulli r5, r5, 0xa0
|
||||
/* 803B7480 003B43E0 7C A6 2A 14 */ add r5, r6, r5
|
||||
/* 803B7484 003B43E4 7C 00 28 16 */ mulhwu r0, r0, r5
|
||||
/* 803B7488 003B43E8 54 00 C2 3E */ srwi r0, r0, 8
|
||||
/* 803B748C 003B43EC 1C 00 01 E0 */ mulli r0, r0, 0x1e0
|
||||
/* 803B7490 003B43F0 7C 00 28 50 */ subf r0, r0, r5
|
||||
/* 803B7494 003B43F4 90 1F 00 5C */ stw r0, 0x5c(r31)
|
||||
/* 803B7498 003B43F8 80 1F 00 98 */ lwz r0, 0x98(r31)
|
||||
/* 803B749C 003B43FC 7C 04 00 16 */ mulhwu r0, r4, r0
|
||||
/* 803B74A0 003B4400 54 04 F0 BE */ srwi r4, r0, 2
|
||||
/* 803B74A4 003B4404 38 04 00 01 */ addi r0, r4, 1
|
||||
/* 803B74A8 003B4408 54 00 00 3C */ rlwinm r0, r0, 0, 0, 0x1e
|
||||
/* 803B74AC 003B440C 90 1F 00 68 */ stw r0, 0x68(r31)
|
||||
/* 803B74B0 003B4410 80 1F 00 68 */ lwz r0, 0x68(r31)
|
||||
/* 803B74B4 003B4414 54 00 F8 7E */ srwi r0, r0, 1
|
||||
/* 803B74B8 003B4418 90 1F 00 64 */ stw r0, 0x64(r31)
|
||||
/* 803B74BC 003B441C 80 1F 00 68 */ lwz r0, 0x68(r31)
|
||||
/* 803B74C0 003B4420 80 9F 00 94 */ lwz r4, 0x94(r31)
|
||||
/* 803B74C4 003B4424 1C 00 00 05 */ mulli r0, r0, 5
|
||||
/* 803B74C8 003B4428 54 84 80 1E */ slwi r4, r4, 0x10
|
||||
/* 803B74CC 003B442C 7C 04 03 96 */ divwu r0, r4, r0
|
||||
/* 803B74D0 003B4430 90 1F 00 60 */ stw r0, 0x60(r31)
|
||||
/* 803B74D4 003B4434 48 00 00 08 */ b lbl_803B74DC
|
||||
lbl_803B74D8:
|
||||
/* 803B74D8 003B4438 38 60 00 00 */ li r3, 0
|
||||
lbl_803B74DC:
|
||||
/* 803B74DC 003B443C 80 01 00 14 */ lwz r0, 0x14(r1)
|
||||
/* 803B74E0 003B4440 83 E1 00 0C */ lwz r31, 0xc(r1)
|
||||
/* 803B74E4 003B4444 7C 08 03 A6 */ mtlr r0
|
||||
/* 803B74E8 003B4448 38 21 00 10 */ addi r1, r1, 0x10
|
||||
/* 803B74EC 003B444C 4E 80 00 20 */ blr
|
||||
|
||||
.global sndAuxCallbackShutdownChorus
|
||||
sndAuxCallbackShutdownChorus:
|
||||
/* 803B74F0 003B4450 94 21 FF F0 */ stwu r1, -0x10(r1)
|
||||
/* 803B74F4 003B4454 7C 08 02 A6 */ mflr r0
|
||||
/* 803B74F8 003B4458 90 01 00 14 */ stw r0, 0x14(r1)
|
||||
/* 803B74FC 003B445C 80 63 00 00 */ lwz r3, 0(r3)
|
||||
/* 803B7500 003B4460 4B FF DC 5D */ bl salFree
|
||||
/* 803B7504 003B4464 80 01 00 14 */ lwz r0, 0x14(r1)
|
||||
/* 803B7508 003B4468 38 60 00 01 */ li r3, 1
|
||||
/* 803B750C 003B446C 7C 08 03 A6 */ mtlr r0
|
||||
/* 803B7510 003B4470 38 21 00 10 */ addi r1, r1, 0x10
|
||||
/* 803B7514 003B4474 4E 80 00 20 */ blr
|
|
@ -0,0 +1,623 @@
|
|||
.include "macros.inc"
|
||||
|
||||
.section .text, "ax"
|
||||
|
||||
.global ReverbSTDCreate
|
||||
ReverbSTDCreate:
|
||||
/* 803B5244 003B21A4 94 21 FF 50 */ stwu r1, -0xb0(r1)
|
||||
/* 803B5248 003B21A8 7C 08 02 A6 */ mflr r0
|
||||
/* 803B524C 003B21AC 90 01 00 B4 */ stw r0, 0xb4(r1)
|
||||
/* 803B5250 003B21B0 DB E1 00 A0 */ stfd f31, 0xa0(r1)
|
||||
/* 803B5254 003B21B4 F3 E1 00 A8 */ psq_st f31, 168(r1), 0, qr0
|
||||
/* 803B5258 003B21B8 DB C1 00 90 */ stfd f30, 0x90(r1)
|
||||
/* 803B525C 003B21BC F3 C1 00 98 */ psq_st f30, 152(r1), 0, qr0
|
||||
/* 803B5260 003B21C0 DB A1 00 80 */ stfd f29, 0x80(r1)
|
||||
/* 803B5264 003B21C4 F3 A1 00 88 */ psq_st f29, 136(r1), 0, qr0
|
||||
/* 803B5268 003B21C8 DB 81 00 70 */ stfd f28, 0x70(r1)
|
||||
/* 803B526C 003B21CC F3 81 00 78 */ psq_st f28, 120(r1), 0, qr0
|
||||
/* 803B5270 003B21D0 DB 61 00 60 */ stfd f27, 0x60(r1)
|
||||
/* 803B5274 003B21D4 F3 61 00 68 */ psq_st f27, 104(r1), 0, qr0
|
||||
/* 803B5278 003B21D8 DB 41 00 50 */ stfd f26, 0x50(r1)
|
||||
/* 803B527C 003B21DC F3 41 00 58 */ psq_st f26, 88(r1), 0, qr0
|
||||
/* 803B5280 003B21E0 DB 21 00 40 */ stfd f25, 0x40(r1)
|
||||
/* 803B5284 003B21E4 F3 21 00 48 */ psq_st f25, 72(r1), 0, qr0
|
||||
/* 803B5288 003B21E8 39 61 00 40 */ addi r11, r1, 0x40
|
||||
/* 803B528C 003B21EC 4B FD 47 D9 */ bl func_80389A64
|
||||
/* 803B5290 003B21F0 FF 20 08 90 */ fmr f25, f1
|
||||
/* 803B5294 003B21F4 C0 C2 D6 90 */ lfs f6, lbl_805AF3B0@sda21(r2)
|
||||
/* 803B5298 003B21F8 FF 80 10 90 */ fmr f28, f2
|
||||
/* 803B529C 003B21FC 7C 77 1B 78 */ mr r23, r3
|
||||
/* 803B52A0 003B2200 FF 40 18 90 */ fmr f26, f3
|
||||
/* 803B52A4 003B2204 FF 60 20 90 */ fmr f27, f4
|
||||
/* 803B52A8 003B2208 FF E0 28 90 */ fmr f31, f5
|
||||
/* 803B52AC 003B220C FC 19 30 40 */ fcmpo cr0, f25, f6
|
||||
/* 803B52B0 003B2210 41 80 00 5C */ blt lbl_803B530C
|
||||
/* 803B52B4 003B2214 C0 22 D6 94 */ lfs f1, lbl_805AF3B4@sda21(r2)
|
||||
/* 803B52B8 003B2218 FC 19 08 40 */ fcmpo cr0, f25, f1
|
||||
/* 803B52BC 003B221C 41 81 00 50 */ bgt lbl_803B530C
|
||||
/* 803B52C0 003B2220 C0 02 D6 98 */ lfs f0, lbl_805AF3B8@sda21(r2)
|
||||
/* 803B52C4 003B2224 FC 1C 00 40 */ fcmpo cr0, f28, f0
|
||||
/* 803B52C8 003B2228 41 80 00 44 */ blt lbl_803B530C
|
||||
/* 803B52CC 003B222C C0 02 D6 9C */ lfs f0, lbl_805AF3BC@sda21(r2)
|
||||
/* 803B52D0 003B2230 FC 1C 00 40 */ fcmpo cr0, f28, f0
|
||||
/* 803B52D4 003B2234 41 81 00 38 */ bgt lbl_803B530C
|
||||
/* 803B52D8 003B2238 FC 1A 30 40 */ fcmpo cr0, f26, f6
|
||||
/* 803B52DC 003B223C 41 80 00 30 */ blt lbl_803B530C
|
||||
/* 803B52E0 003B2240 FC 1A 08 40 */ fcmpo cr0, f26, f1
|
||||
/* 803B52E4 003B2244 41 81 00 28 */ bgt lbl_803B530C
|
||||
/* 803B52E8 003B2248 FC 1B 30 40 */ fcmpo cr0, f27, f6
|
||||
/* 803B52EC 003B224C 41 80 00 20 */ blt lbl_803B530C
|
||||
/* 803B52F0 003B2250 FC 1B 08 40 */ fcmpo cr0, f27, f1
|
||||
/* 803B52F4 003B2254 41 81 00 18 */ bgt lbl_803B530C
|
||||
/* 803B52F8 003B2258 FC 1F 30 40 */ fcmpo cr0, f31, f6
|
||||
/* 803B52FC 003B225C 41 80 00 10 */ blt lbl_803B530C
|
||||
/* 803B5300 003B2260 C0 02 D6 A0 */ lfs f0, lbl_805AF3C0@sda21(r2)
|
||||
/* 803B5304 003B2264 FC 1F 00 40 */ fcmpo cr0, f31, f0
|
||||
/* 803B5308 003B2268 40 81 00 0C */ ble lbl_803B5314
|
||||
lbl_803B530C:
|
||||
/* 803B530C 003B226C 38 60 00 00 */ li r3, 0
|
||||
/* 803B5310 003B2270 48 00 03 0C */ b lbl_803B561C
|
||||
lbl_803B5314:
|
||||
/* 803B5314 003B2274 38 80 00 00 */ li r4, 0
|
||||
/* 803B5318 003B2278 38 A0 01 3C */ li r5, 0x13c
|
||||
/* 803B531C 003B227C 4B C4 E0 8D */ bl memset
|
||||
/* 803B5320 003B2280 C0 02 D6 A4 */ lfs f0, lbl_805AF3C4@sda21(r2)
|
||||
/* 803B5324 003B2284 3C 60 80 3F */ lis r3, lbl_803F6460@ha
|
||||
/* 803B5328 003B2288 C3 C2 D6 90 */ lfs f30, lbl_805AF3B0@sda21(r2)
|
||||
/* 803B532C 003B228C 3B E3 64 60 */ addi r31, r3, lbl_803F6460@l
|
||||
/* 803B5330 003B2290 EF 80 07 32 */ fmuls f28, f0, f28
|
||||
/* 803B5334 003B2294 CB A2 D6 B8 */ lfd f29, lbl_805AF3D8@sda21(r2)
|
||||
/* 803B5338 003B2298 3B 00 00 00 */ li r24, 0
|
||||
/* 803B533C 003B229C 3F C0 43 30 */ lis r30, 0x4330
|
||||
/* 803B5340 003B22A0 48 00 01 F8 */ b lbl_803B5538
|
||||
lbl_803B5344:
|
||||
/* 803B5344 003B22A4 57 1A 0D FC */ rlwinm r26, r24, 1, 0x17, 0x1e
|
||||
/* 803B5348 003B22A8 3B 20 00 00 */ li r25, 0
|
||||
/* 803B534C 003B22AC 48 00 00 F8 */ b lbl_803B5444
|
||||
lbl_803B5350:
|
||||
/* 803B5350 003B22B0 57 20 06 3E */ clrlwi r0, r25, 0x18
|
||||
/* 803B5354 003B22B4 57 3D 15 BA */ rlwinm r29, r25, 2, 0x16, 0x1d
|
||||
/* 803B5358 003B22B8 7F 60 D2 14 */ add r27, r0, r26
|
||||
/* 803B535C 003B22BC 7C 7F E8 2E */ lwzx r3, r31, r29
|
||||
/* 803B5360 003B22C0 1C 1B 00 14 */ mulli r0, r27, 0x14
|
||||
/* 803B5364 003B22C4 3A C3 00 02 */ addi r22, r3, 2
|
||||
/* 803B5368 003B22C8 56 D5 10 3A */ slwi r21, r22, 2
|
||||
/* 803B536C 003B22CC 7F 97 02 14 */ add r28, r23, r0
|
||||
/* 803B5370 003B22D0 92 BC 00 80 */ stw r21, 0x80(r28)
|
||||
/* 803B5374 003B22D4 7E A3 AB 78 */ mr r3, r21
|
||||
/* 803B5378 003B22D8 4B FF FD BD */ bl salMalloc
|
||||
/* 803B537C 003B22DC 90 7C 00 84 */ stw r3, 0x84(r28)
|
||||
/* 803B5380 003B22E0 7E A5 AB 78 */ mr r5, r21
|
||||
/* 803B5384 003B22E4 38 80 00 00 */ li r4, 0
|
||||
/* 803B5388 003B22E8 80 7C 00 84 */ lwz r3, 0x84(r28)
|
||||
/* 803B538C 003B22EC 4B C4 E0 1D */ bl memset
|
||||
/* 803B5390 003B22F0 D3 DC 00 88 */ stfs f30, 0x88(r28)
|
||||
/* 803B5394 003B22F4 7E C0 0E 70 */ srawi r0, r22, 1
|
||||
/* 803B5398 003B22F8 54 03 10 3A */ slwi r3, r0, 2
|
||||
/* 803B539C 003B22FC 80 1C 00 78 */ lwz r0, 0x78(r28)
|
||||
/* 803B53A0 003B2300 7C 03 00 50 */ subf r0, r3, r0
|
||||
/* 803B53A4 003B2304 90 1C 00 7C */ stw r0, 0x7c(r28)
|
||||
/* 803B53A8 003B2308 48 00 00 14 */ b lbl_803B53BC
|
||||
lbl_803B53AC:
|
||||
/* 803B53AC 003B230C 80 7C 00 7C */ lwz r3, 0x7c(r28)
|
||||
/* 803B53B0 003B2310 80 1C 00 80 */ lwz r0, 0x80(r28)
|
||||
/* 803B53B4 003B2314 7C 03 02 14 */ add r0, r3, r0
|
||||
/* 803B53B8 003B2318 90 1C 00 7C */ stw r0, 0x7c(r28)
|
||||
lbl_803B53BC:
|
||||
/* 803B53BC 003B231C 80 1C 00 7C */ lwz r0, 0x7c(r28)
|
||||
/* 803B53C0 003B2320 2C 00 00 00 */ cmpwi r0, 0
|
||||
/* 803B53C4 003B2324 41 80 FF E8 */ blt lbl_803B53AC
|
||||
/* 803B53C8 003B2328 38 00 00 00 */ li r0, 0
|
||||
/* 803B53CC 003B232C 90 1C 00 78 */ stw r0, 0x78(r28)
|
||||
/* 803B53D0 003B2330 90 1C 00 7C */ stw r0, 0x7c(r28)
|
||||
/* 803B53D4 003B2334 7C 7F E8 2E */ lwzx r3, r31, r29
|
||||
/* 803B53D8 003B2338 80 1C 00 78 */ lwz r0, 0x78(r28)
|
||||
/* 803B53DC 003B233C 54 63 10 3A */ slwi r3, r3, 2
|
||||
/* 803B53E0 003B2340 7C 03 00 50 */ subf r0, r3, r0
|
||||
/* 803B53E4 003B2344 90 1C 00 7C */ stw r0, 0x7c(r28)
|
||||
/* 803B53E8 003B2348 48 00 00 14 */ b lbl_803B53FC
|
||||
lbl_803B53EC:
|
||||
/* 803B53EC 003B234C 80 7C 00 7C */ lwz r3, 0x7c(r28)
|
||||
/* 803B53F0 003B2350 80 1C 00 80 */ lwz r0, 0x80(r28)
|
||||
/* 803B53F4 003B2354 7C 03 02 14 */ add r0, r3, r0
|
||||
/* 803B53F8 003B2358 90 1C 00 7C */ stw r0, 0x7c(r28)
|
||||
lbl_803B53FC:
|
||||
/* 803B53FC 003B235C 80 1C 00 7C */ lwz r0, 0x7c(r28)
|
||||
/* 803B5400 003B2360 2C 00 00 00 */ cmpwi r0, 0
|
||||
/* 803B5404 003B2364 41 80 FF E8 */ blt lbl_803B53EC
|
||||
/* 803B5408 003B2368 7C 1F E8 2E */ lwzx r0, r31, r29
|
||||
/* 803B540C 003B236C 93 C1 00 08 */ stw r30, 8(r1)
|
||||
/* 803B5410 003B2370 1C 00 FF FD */ mulli r0, r0, -3
|
||||
/* 803B5414 003B2374 C8 22 D6 A8 */ lfd f1, lbl_805AF3C8@sda21(r2)
|
||||
/* 803B5418 003B2378 6C 00 80 00 */ xoris r0, r0, 0x8000
|
||||
/* 803B541C 003B237C 90 01 00 0C */ stw r0, 0xc(r1)
|
||||
/* 803B5420 003B2380 C8 01 00 08 */ lfd f0, 8(r1)
|
||||
/* 803B5424 003B2384 EC 00 E8 28 */ fsubs f0, f0, f29
|
||||
/* 803B5428 003B2388 EC 40 E0 24 */ fdivs f2, f0, f28
|
||||
/* 803B542C 003B238C 4B FD F8 C1 */ bl pow
|
||||
/* 803B5430 003B2390 FC 00 08 18 */ frsp f0, f1
|
||||
/* 803B5434 003B2394 57 63 10 3A */ slwi r3, r27, 2
|
||||
/* 803B5438 003B2398 38 03 00 F4 */ addi r0, r3, 0xf4
|
||||
/* 803B543C 003B239C 3B 39 00 01 */ addi r25, r25, 1
|
||||
/* 803B5440 003B23A0 7C 17 05 2E */ stfsx f0, r23, r0
|
||||
lbl_803B5444:
|
||||
/* 803B5444 003B23A4 57 20 06 3E */ clrlwi r0, r25, 0x18
|
||||
/* 803B5448 003B23A8 28 00 00 02 */ cmplwi r0, 2
|
||||
/* 803B544C 003B23AC 41 80 FF 04 */ blt lbl_803B5350
|
||||
/* 803B5450 003B23B0 3B A0 00 00 */ li r29, 0
|
||||
/* 803B5454 003B23B4 48 00 00 C8 */ b lbl_803B551C
|
||||
lbl_803B5458:
|
||||
/* 803B5458 003B23B8 57 A0 15 BA */ rlwinm r0, r29, 2, 0x16, 0x1d
|
||||
/* 803B545C 003B23BC 57 A4 06 3E */ clrlwi r4, r29, 0x18
|
||||
/* 803B5460 003B23C0 7C 7F 02 14 */ add r3, r31, r0
|
||||
/* 803B5464 003B23C4 7C 04 D2 14 */ add r0, r4, r26
|
||||
/* 803B5468 003B23C8 3B 83 00 08 */ addi r28, r3, 8
|
||||
/* 803B546C 003B23CC 80 63 00 08 */ lwz r3, 8(r3)
|
||||
/* 803B5470 003B23D0 1C 00 00 14 */ mulli r0, r0, 0x14
|
||||
/* 803B5474 003B23D4 3A C3 00 02 */ addi r22, r3, 2
|
||||
/* 803B5478 003B23D8 56 D5 10 3A */ slwi r21, r22, 2
|
||||
/* 803B547C 003B23DC 7F 77 02 14 */ add r27, r23, r0
|
||||
/* 803B5480 003B23E0 92 BB 00 08 */ stw r21, 8(r27)
|
||||
/* 803B5484 003B23E4 7E A3 AB 78 */ mr r3, r21
|
||||
/* 803B5488 003B23E8 4B FF FC AD */ bl salMalloc
|
||||
/* 803B548C 003B23EC 90 7B 00 0C */ stw r3, 0xc(r27)
|
||||
/* 803B5490 003B23F0 7E A5 AB 78 */ mr r5, r21
|
||||
/* 803B5494 003B23F4 38 80 00 00 */ li r4, 0
|
||||
/* 803B5498 003B23F8 80 7B 00 0C */ lwz r3, 0xc(r27)
|
||||
/* 803B549C 003B23FC 4B C4 DF 0D */ bl memset
|
||||
/* 803B54A0 003B2400 D3 DB 00 10 */ stfs f30, 0x10(r27)
|
||||
/* 803B54A4 003B2404 7E C0 0E 70 */ srawi r0, r22, 1
|
||||
/* 803B54A8 003B2408 54 03 10 3A */ slwi r3, r0, 2
|
||||
/* 803B54AC 003B240C 80 1B 00 00 */ lwz r0, 0(r27)
|
||||
/* 803B54B0 003B2410 7C 03 00 50 */ subf r0, r3, r0
|
||||
/* 803B54B4 003B2414 90 1B 00 04 */ stw r0, 4(r27)
|
||||
/* 803B54B8 003B2418 48 00 00 14 */ b lbl_803B54CC
|
||||
lbl_803B54BC:
|
||||
/* 803B54BC 003B241C 80 7B 00 04 */ lwz r3, 4(r27)
|
||||
/* 803B54C0 003B2420 80 1B 00 08 */ lwz r0, 8(r27)
|
||||
/* 803B54C4 003B2424 7C 03 02 14 */ add r0, r3, r0
|
||||
/* 803B54C8 003B2428 90 1B 00 04 */ stw r0, 4(r27)
|
||||
lbl_803B54CC:
|
||||
/* 803B54CC 003B242C 80 1B 00 04 */ lwz r0, 4(r27)
|
||||
/* 803B54D0 003B2430 2C 00 00 00 */ cmpwi r0, 0
|
||||
/* 803B54D4 003B2434 41 80 FF E8 */ blt lbl_803B54BC
|
||||
/* 803B54D8 003B2438 38 00 00 00 */ li r0, 0
|
||||
/* 803B54DC 003B243C 90 1B 00 00 */ stw r0, 0(r27)
|
||||
/* 803B54E0 003B2440 90 1B 00 04 */ stw r0, 4(r27)
|
||||
/* 803B54E4 003B2444 80 7C 00 00 */ lwz r3, 0(r28)
|
||||
/* 803B54E8 003B2448 80 1B 00 00 */ lwz r0, 0(r27)
|
||||
/* 803B54EC 003B244C 54 63 10 3A */ slwi r3, r3, 2
|
||||
/* 803B54F0 003B2450 7C 03 00 50 */ subf r0, r3, r0
|
||||
/* 803B54F4 003B2454 90 1B 00 04 */ stw r0, 4(r27)
|
||||
/* 803B54F8 003B2458 48 00 00 14 */ b lbl_803B550C
|
||||
lbl_803B54FC:
|
||||
/* 803B54FC 003B245C 80 7B 00 04 */ lwz r3, 4(r27)
|
||||
/* 803B5500 003B2460 80 1B 00 08 */ lwz r0, 8(r27)
|
||||
/* 803B5504 003B2464 7C 03 02 14 */ add r0, r3, r0
|
||||
/* 803B5508 003B2468 90 1B 00 04 */ stw r0, 4(r27)
|
||||
lbl_803B550C:
|
||||
/* 803B550C 003B246C 80 1B 00 04 */ lwz r0, 4(r27)
|
||||
/* 803B5510 003B2470 2C 00 00 00 */ cmpwi r0, 0
|
||||
/* 803B5514 003B2474 41 80 FF E8 */ blt lbl_803B54FC
|
||||
/* 803B5518 003B2478 3B BD 00 01 */ addi r29, r29, 1
|
||||
lbl_803B551C:
|
||||
/* 803B551C 003B247C 57 A0 06 3E */ clrlwi r0, r29, 0x18
|
||||
/* 803B5520 003B2480 28 00 00 02 */ cmplwi r0, 2
|
||||
/* 803B5524 003B2484 41 80 FF 34 */ blt lbl_803B5458
|
||||
/* 803B5528 003B2488 57 03 15 BA */ rlwinm r3, r24, 2, 0x16, 0x1d
|
||||
/* 803B552C 003B248C 3B 18 00 01 */ addi r24, r24, 1
|
||||
/* 803B5530 003B2490 38 03 01 0C */ addi r0, r3, 0x10c
|
||||
/* 803B5534 003B2494 7F D7 05 2E */ stfsx f30, r23, r0
|
||||
lbl_803B5538:
|
||||
/* 803B5538 003B2498 57 00 06 3E */ clrlwi r0, r24, 0x18
|
||||
/* 803B553C 003B249C 28 00 00 03 */ cmplwi r0, 3
|
||||
/* 803B5540 003B24A0 41 80 FE 04 */ blt lbl_803B5344
|
||||
/* 803B5544 003B24A4 D3 37 00 F0 */ stfs f25, 0xf0(r23)
|
||||
/* 803B5548 003B24A8 C0 02 D6 B0 */ lfs f0, lbl_805AF3D0@sda21(r2)
|
||||
/* 803B554C 003B24AC D3 57 01 18 */ stfs f26, 0x118(r23)
|
||||
/* 803B5550 003B24B0 D3 77 01 1C */ stfs f27, 0x11c(r23)
|
||||
/* 803B5554 003B24B4 C0 37 01 1C */ lfs f1, 0x11c(r23)
|
||||
/* 803B5558 003B24B8 FC 01 00 40 */ fcmpo cr0, f1, f0
|
||||
/* 803B555C 003B24BC 40 80 00 08 */ bge lbl_803B5564
|
||||
/* 803B5560 003B24C0 D0 17 01 1C */ stfs f0, 0x11c(r23)
|
||||
lbl_803B5564:
|
||||
/* 803B5564 003B24C4 C0 42 D6 B4 */ lfs f2, lbl_805AF3D4@sda21(r2)
|
||||
/* 803B5568 003B24C8 C0 37 01 1C */ lfs f1, 0x11c(r23)
|
||||
/* 803B556C 003B24CC C0 02 D6 90 */ lfs f0, lbl_805AF3B0@sda21(r2)
|
||||
/* 803B5570 003B24D0 EC 22 00 72 */ fmuls f1, f2, f1
|
||||
/* 803B5574 003B24D4 C0 42 D6 B0 */ lfs f2, lbl_805AF3D0@sda21(r2)
|
||||
/* 803B5578 003B24D8 C0 62 D6 94 */ lfs f3, lbl_805AF3B4@sda21(r2)
|
||||
/* 803B557C 003B24DC FC 00 F8 00 */ fcmpu cr0, f0, f31
|
||||
/* 803B5580 003B24E0 EC 02 08 2A */ fadds f0, f2, f1
|
||||
/* 803B5584 003B24E4 EC 03 00 28 */ fsubs f0, f3, f0
|
||||
/* 803B5588 003B24E8 D0 17 01 1C */ stfs f0, 0x11c(r23)
|
||||
/* 803B558C 003B24EC 41 82 00 6C */ beq lbl_803B55F8
|
||||
/* 803B5590 003B24F0 C0 02 D6 A4 */ lfs f0, lbl_805AF3C4@sda21(r2)
|
||||
/* 803B5594 003B24F4 3A C0 00 00 */ li r22, 0
|
||||
/* 803B5598 003B24F8 EC 00 07 F2 */ fmuls f0, f0, f31
|
||||
/* 803B559C 003B24FC FC 00 00 1E */ fctiwz f0, f0
|
||||
/* 803B55A0 003B2500 D8 01 00 08 */ stfd f0, 8(r1)
|
||||
/* 803B55A4 003B2504 80 01 00 0C */ lwz r0, 0xc(r1)
|
||||
/* 803B55A8 003B2508 90 17 01 20 */ stw r0, 0x120(r23)
|
||||
/* 803B55AC 003B250C 48 00 00 3C */ b lbl_803B55E8
|
||||
lbl_803B55B0:
|
||||
/* 803B55B0 003B2510 80 17 01 20 */ lwz r0, 0x120(r23)
|
||||
/* 803B55B4 003B2514 54 03 10 3A */ slwi r3, r0, 2
|
||||
/* 803B55B8 003B2518 4B FF FB 7D */ bl salMalloc
|
||||
/* 803B55BC 003B251C 56 C0 15 BA */ rlwinm r0, r22, 2, 0x16, 0x1d
|
||||
/* 803B55C0 003B2520 38 80 00 00 */ li r4, 0
|
||||
/* 803B55C4 003B2524 7E B7 02 14 */ add r21, r23, r0
|
||||
/* 803B55C8 003B2528 90 75 01 24 */ stw r3, 0x124(r21)
|
||||
/* 803B55CC 003B252C 80 17 01 20 */ lwz r0, 0x120(r23)
|
||||
/* 803B55D0 003B2530 80 75 01 24 */ lwz r3, 0x124(r21)
|
||||
/* 803B55D4 003B2534 54 05 10 3A */ slwi r5, r0, 2
|
||||
/* 803B55D8 003B2538 4B C4 DD D1 */ bl memset
|
||||
/* 803B55DC 003B253C 80 15 01 24 */ lwz r0, 0x124(r21)
|
||||
/* 803B55E0 003B2540 3A D6 00 01 */ addi r22, r22, 1
|
||||
/* 803B55E4 003B2544 90 15 01 30 */ stw r0, 0x130(r21)
|
||||
lbl_803B55E8:
|
||||
/* 803B55E8 003B2548 56 C0 06 3E */ clrlwi r0, r22, 0x18
|
||||
/* 803B55EC 003B254C 28 00 00 03 */ cmplwi r0, 3
|
||||
/* 803B55F0 003B2550 41 80 FF C0 */ blt lbl_803B55B0
|
||||
/* 803B55F4 003B2554 48 00 00 24 */ b lbl_803B5618
|
||||
lbl_803B55F8:
|
||||
/* 803B55F8 003B2558 38 00 00 00 */ li r0, 0
|
||||
/* 803B55FC 003B255C 90 17 01 20 */ stw r0, 0x120(r23)
|
||||
/* 803B5600 003B2560 90 17 01 30 */ stw r0, 0x130(r23)
|
||||
/* 803B5604 003B2564 90 17 01 24 */ stw r0, 0x124(r23)
|
||||
/* 803B5608 003B2568 90 17 01 34 */ stw r0, 0x134(r23)
|
||||
/* 803B560C 003B256C 90 17 01 28 */ stw r0, 0x128(r23)
|
||||
/* 803B5610 003B2570 90 17 01 38 */ stw r0, 0x138(r23)
|
||||
/* 803B5614 003B2574 90 17 01 2C */ stw r0, 0x12c(r23)
|
||||
lbl_803B5618:
|
||||
/* 803B5618 003B2578 38 60 00 01 */ li r3, 1
|
||||
lbl_803B561C:
|
||||
/* 803B561C 003B257C E3 E1 00 A8 */ psq_l f31, 168(r1), 0, qr0
|
||||
/* 803B5620 003B2580 CB E1 00 A0 */ lfd f31, 0xa0(r1)
|
||||
/* 803B5624 003B2584 E3 C1 00 98 */ psq_l f30, 152(r1), 0, qr0
|
||||
/* 803B5628 003B2588 CB C1 00 90 */ lfd f30, 0x90(r1)
|
||||
/* 803B562C 003B258C E3 A1 00 88 */ psq_l f29, 136(r1), 0, qr0
|
||||
/* 803B5630 003B2590 CB A1 00 80 */ lfd f29, 0x80(r1)
|
||||
/* 803B5634 003B2594 E3 81 00 78 */ psq_l f28, 120(r1), 0, qr0
|
||||
/* 803B5638 003B2598 CB 81 00 70 */ lfd f28, 0x70(r1)
|
||||
/* 803B563C 003B259C E3 61 00 68 */ psq_l f27, 104(r1), 0, qr0
|
||||
/* 803B5640 003B25A0 CB 61 00 60 */ lfd f27, 0x60(r1)
|
||||
/* 803B5644 003B25A4 E3 41 00 58 */ psq_l f26, 88(r1), 0, qr0
|
||||
/* 803B5648 003B25A8 CB 41 00 50 */ lfd f26, 0x50(r1)
|
||||
/* 803B564C 003B25AC E3 21 00 48 */ psq_l f25, 72(r1), 0, qr0
|
||||
/* 803B5650 003B25B0 39 61 00 40 */ addi r11, r1, 0x40
|
||||
/* 803B5654 003B25B4 CB 21 00 40 */ lfd f25, 0x40(r1)
|
||||
/* 803B5658 003B25B8 4B FD 44 59 */ bl _restgpr_21
|
||||
/* 803B565C 003B25BC 80 01 00 B4 */ lwz r0, 0xb4(r1)
|
||||
/* 803B5660 003B25C0 7C 08 03 A6 */ mtlr r0
|
||||
/* 803B5664 003B25C4 38 21 00 B0 */ addi r1, r1, 0xb0
|
||||
/* 803B5668 003B25C8 4E 80 00 20 */ blr
|
||||
|
||||
.global HandleReverb
|
||||
HandleReverb:
|
||||
/* 803B566C 003B25CC 94 21 FF 70 */ stwu r1, -0x90(r1)
|
||||
/* 803B5670 003B25D0 BE 21 00 08 */ stmw r17, 8(r1)
|
||||
/* 803B5674 003B25D4 D9 C1 00 58 */ stfd f14, 0x58(r1)
|
||||
/* 803B5678 003B25D8 D9 E1 00 60 */ stfd f15, 0x60(r1)
|
||||
/* 803B567C 003B25DC DA 01 00 68 */ stfd f16, 0x68(r1)
|
||||
/* 803B5680 003B25E0 DA 21 00 70 */ stfd f17, 0x70(r1)
|
||||
/* 803B5684 003B25E4 DA 41 00 78 */ stfd f18, 0x78(r1)
|
||||
/* 803B5688 003B25E8 DA 61 00 80 */ stfd f19, 0x80(r1)
|
||||
/* 803B568C 003B25EC DA 81 00 88 */ stfd f20, 0x88(r1)
|
||||
/* 803B5690 003B25F0 3F E0 80 5B */ lis r31, lbl_805AF3E0@ha
|
||||
/* 803B5694 003B25F4 C0 DF F3 E0 */ lfs f6, lbl_805AF3E0@l(r31)
|
||||
/* 803B5698 003B25F8 3F E0 80 5B */ lis r31, lbl_805AF3E4@ha
|
||||
/* 803B569C 003B25FC C1 3F F3 E4 */ lfs f9, lbl_805AF3E4@l(r31)
|
||||
/* 803B56A0 003B2600 3F E0 80 5B */ lis r31, lbl_805AF3E8@ha
|
||||
/* 803B56A4 003B2604 C8 BF F3 E8 */ lfd f5, lbl_805AF3E8@l(r31)
|
||||
/* 803B56A8 003B2608 C0 44 00 F0 */ lfs f2, 0xf0(r4)
|
||||
/* 803B56AC 003B260C C1 64 01 1C */ lfs f11, 0x11c(r4)
|
||||
/* 803B56B0 003B2610 C1 04 01 18 */ lfs f8, 0x118(r4)
|
||||
/* 803B56B4 003B2614 EC 68 02 72 */ fmuls f3, f8, f9
|
||||
/* 803B56B8 003B2618 EC 89 18 28 */ fsubs f4, f9, f3
|
||||
/* 803B56BC 003B261C 3F C0 43 30 */ lis r30, 0x4330
|
||||
/* 803B56C0 003B2620 93 C1 00 50 */ stw r30, 0x50(r1)
|
||||
/* 803B56C4 003B2624 38 A0 00 00 */ li r5, 0
|
||||
lbl_803B56C8:
|
||||
/* 803B56C8 003B2628 54 BF 18 38 */ slwi r31, r5, 3
|
||||
/* 803B56CC 003B262C 7F FF 22 14 */ add r31, r31, r4
|
||||
/* 803B56D0 003B2630 C2 7F 00 F4 */ lfs f19, 0xf4(r31)
|
||||
/* 803B56D4 003B2634 C2 9F 00 F8 */ lfs f20, 0xf8(r31)
|
||||
/* 803B56D8 003B2638 54 BF 10 3A */ slwi r31, r5, 2
|
||||
/* 803B56DC 003B263C 7F FF 22 14 */ add r31, r31, r4
|
||||
/* 803B56E0 003B2640 C0 FF 01 0C */ lfs f7, 0x10c(r31)
|
||||
/* 803B56E4 003B2644 83 7F 01 24 */ lwz r27, 0x124(r31)
|
||||
/* 803B56E8 003B2648 83 9F 01 30 */ lwz r28, 0x130(r31)
|
||||
/* 803B56EC 003B264C 83 E4 01 20 */ lwz r31, 0x120(r4)
|
||||
/* 803B56F0 003B2650 3A DF FF FF */ addi r22, r31, -1
|
||||
/* 803B56F4 003B2654 56 D6 10 3A */ slwi r22, r22, 2
|
||||
/* 803B56F8 003B2658 7E D6 DA 14 */ add r22, r22, r27
|
||||
/* 803B56FC 003B265C 2F 9F 00 00 */ cmpwi cr7, r31, 0
|
||||
/* 803B5700 003B2660 1F E5 00 28 */ mulli r31, r5, 0x28
|
||||
/* 803B5704 003B2664 3B A4 00 78 */ addi r29, r4, 0x78
|
||||
/* 803B5708 003B2668 7F BD FA 14 */ add r29, r29, r31
|
||||
/* 803B570C 003B266C 3B C4 00 00 */ addi r30, r4, 0
|
||||
/* 803B5710 003B2670 7F DE FA 14 */ add r30, r30, r31
|
||||
/* 803B5714 003B2674 82 BD 00 00 */ lwz r21, 0(r29)
|
||||
/* 803B5718 003B2678 82 9D 00 04 */ lwz r20, 4(r29)
|
||||
/* 803B571C 003B267C 82 7D 00 14 */ lwz r19, 0x14(r29)
|
||||
/* 803B5720 003B2680 82 5D 00 18 */ lwz r18, 0x18(r29)
|
||||
/* 803B5724 003B2684 C1 FD 00 10 */ lfs f15, 0x10(r29)
|
||||
/* 803B5728 003B2688 C2 1D 00 24 */ lfs f16, 0x24(r29)
|
||||
/* 803B572C 003B268C 83 5D 00 08 */ lwz r26, 8(r29)
|
||||
/* 803B5730 003B2690 83 3D 00 1C */ lwz r25, 0x1c(r29)
|
||||
/* 803B5734 003B2694 80 FD 00 0C */ lwz r7, 0xc(r29)
|
||||
/* 803B5738 003B2698 81 1D 00 20 */ lwz r8, 0x20(r29)
|
||||
/* 803B573C 003B269C 81 9E 00 00 */ lwz r12, 0(r30)
|
||||
/* 803B5740 003B26A0 81 7E 00 04 */ lwz r11, 4(r30)
|
||||
/* 803B5744 003B26A4 81 5E 00 14 */ lwz r10, 0x14(r30)
|
||||
/* 803B5748 003B26A8 81 3E 00 18 */ lwz r9, 0x18(r30)
|
||||
/* 803B574C 003B26AC C2 3E 00 10 */ lfs f17, 0x10(r30)
|
||||
/* 803B5750 003B26B0 C2 5E 00 24 */ lfs f18, 0x24(r30)
|
||||
/* 803B5754 003B26B4 83 1E 00 08 */ lwz r24, 8(r30)
|
||||
/* 803B5758 003B26B8 82 FE 00 1C */ lwz r23, 0x1c(r30)
|
||||
/* 803B575C 003B26BC 82 3E 00 0C */ lwz r17, 0xc(r30)
|
||||
/* 803B5760 003B26C0 80 DE 00 20 */ lwz r6, 0x20(r30)
|
||||
/* 803B5764 003B26C4 83 C3 00 00 */ lwz r30, 0(r3)
|
||||
/* 803B5768 003B26C8 6F DE 80 00 */ xoris r30, r30, 0x8000
|
||||
/* 803B576C 003B26CC 93 C1 00 54 */ stw r30, 0x54(r1)
|
||||
/* 803B5770 003B26D0 C9 81 00 50 */ lfd f12, 0x50(r1)
|
||||
/* 803B5774 003B26D4 ED 8C 28 28 */ fsubs f12, f12, f5
|
||||
/* 803B5778 003B26D8 3B E0 00 9F */ li r31, 0x9f
|
||||
/* 803B577C 003B26DC 7F E9 03 A6 */ mtctr r31
|
||||
lbl_803B5780:
|
||||
/* 803B5780 003B26E0 FD A0 60 90 */ fmr f13, f12
|
||||
/* 803B5784 003B26E4 41 9E 00 1C */ beq cr7, lbl_803B57A0
|
||||
/* 803B5788 003B26E8 C1 BC 00 00 */ lfs f13, 0(r28)
|
||||
/* 803B578C 003B26EC 3B 9C 00 04 */ addi r28, r28, 4
|
||||
/* 803B5790 003B26F0 7C 1C B0 00 */ cmpw r28, r22
|
||||
/* 803B5794 003B26F4 D1 9C FF FC */ stfs f12, -4(r28)
|
||||
/* 803B5798 003B26F8 40 A2 00 08 */ bne+ lbl_803B57A0
|
||||
/* 803B579C 003B26FC 7F 7C DB 78 */ mr r28, r27
|
||||
lbl_803B57A0:
|
||||
/* 803B57A0 003B2700 ED 13 6B FA */ fmadds f8, f19, f15, f13
|
||||
/* 803B57A4 003B2704 87 A3 00 04 */ lwzu r29, 4(r3)
|
||||
/* 803B57A8 003B2708 ED 34 6C 3A */ fmadds f9, f20, f16, f13
|
||||
/* 803B57AC 003B270C 7D 07 AD 2E */ stfsx f8, r7, r21
|
||||
/* 803B57B0 003B2710 3A B5 00 04 */ addi r21, r21, 4
|
||||
/* 803B57B4 003B2714 7D 28 9D 2E */ stfsx f9, r8, r19
|
||||
/* 803B57B8 003B2718 7D C7 A4 2E */ lfsx f14, r7, r20
|
||||
/* 803B57BC 003B271C 3A 94 00 04 */ addi r20, r20, 4
|
||||
/* 803B57C0 003B2720 7E 08 94 2E */ lfsx f16, r8, r18
|
||||
/* 803B57C4 003B2724 7C 15 D0 00 */ cmpw r21, r26
|
||||
/* 803B57C8 003B2728 7C 94 D0 00 */ cmpw cr1, r20, r26
|
||||
/* 803B57CC 003B272C 3A 73 00 04 */ addi r19, r19, 4
|
||||
/* 803B57D0 003B2730 3A 52 00 04 */ addi r18, r18, 4
|
||||
/* 803B57D4 003B2734 FD E0 70 90 */ fmr f15, f14
|
||||
/* 803B57D8 003B2738 7E 93 C8 00 */ cmpw cr5, r19, r25
|
||||
/* 803B57DC 003B273C ED CE 80 2A */ fadds f14, f14, f16
|
||||
/* 803B57E0 003B2740 7F 12 C8 00 */ cmpw cr6, r18, r25
|
||||
/* 803B57E4 003B2744 40 A2 00 08 */ bne+ lbl_803B57EC
|
||||
/* 803B57E8 003B2748 3A A0 00 00 */ li r21, 0
|
||||
lbl_803B57EC:
|
||||
/* 803B57EC 003B274C 6F BD 80 00 */ xoris r29, r29, 0x8000
|
||||
/* 803B57F0 003B2750 ED 22 74 7A */ fmadds f9, f2, f17, f14
|
||||
/* 803B57F4 003B2754 40 A6 00 08 */ bne+ cr1, lbl_803B57FC
|
||||
/* 803B57F8 003B2758 3A 80 00 00 */ li r20, 0
|
||||
lbl_803B57FC:
|
||||
/* 803B57FC 003B275C 93 A1 00 54 */ stw r29, 0x54(r1)
|
||||
/* 803B5800 003B2760 40 B6 00 08 */ bne+ cr5, lbl_803B5808
|
||||
/* 803B5804 003B2764 3A 60 00 00 */ li r19, 0
|
||||
lbl_803B5808:
|
||||
/* 803B5808 003B2768 7D 31 65 2E */ stfsx f9, r17, r12
|
||||
/* 803B580C 003B276C ED C2 8A 7C */ fnmsubs f14, f2, f9, f17
|
||||
/* 803B5810 003B2770 39 8C 00 04 */ addi r12, r12, 4
|
||||
/* 803B5814 003B2774 40 BA 00 08 */ bne+ cr6, lbl_803B581C
|
||||
/* 803B5818 003B2778 3A 40 00 00 */ li r18, 0
|
||||
lbl_803B581C:
|
||||
/* 803B581C 003B277C 7E 31 5C 2E */ lfsx f17, r17, r11
|
||||
/* 803B5820 003B2780 7E 8C C0 00 */ cmpw cr5, r12, r24
|
||||
/* 803B5824 003B2784 39 6B 00 04 */ addi r11, r11, 4
|
||||
/* 803B5828 003B2788 7F 0B C0 00 */ cmpw cr6, r11, r24
|
||||
/* 803B582C 003B278C 40 B6 00 08 */ bne+ cr5, lbl_803B5834
|
||||
/* 803B5830 003B2790 39 80 00 00 */ li r12, 0
|
||||
lbl_803B5834:
|
||||
/* 803B5834 003B2794 40 BA 00 08 */ bne+ cr6, lbl_803B583C
|
||||
/* 803B5838 003B2798 39 60 00 00 */ li r11, 0
|
||||
lbl_803B583C:
|
||||
/* 803B583C 003B279C ED CE 01 B2 */ fmuls f14, f14, f6
|
||||
/* 803B5840 003B27A0 C9 41 00 50 */ lfd f10, 0x50(r1)
|
||||
/* 803B5844 003B27A4 ED CB 71 FA */ fmadds f14, f11, f7, f14
|
||||
/* 803B5848 003B27A8 ED 22 74 BA */ fmadds f9, f2, f18, f14
|
||||
/* 803B584C 003B27AC FC E0 70 90 */ fmr f7, f14
|
||||
/* 803B5850 003B27B0 7D 26 55 2E */ stfsx f9, r6, r10
|
||||
/* 803B5854 003B27B4 ED C2 92 7C */ fnmsubs f14, f2, f9, f18
|
||||
/* 803B5858 003B27B8 ED 04 03 32 */ fmuls f8, f4, f12
|
||||
/* 803B585C 003B27BC 7E 46 4C 2E */ lfsx f18, r6, r9
|
||||
/* 803B5860 003B27C0 39 4A 00 04 */ addi r10, r10, 4
|
||||
/* 803B5864 003B27C4 39 29 00 04 */ addi r9, r9, 4
|
||||
/* 803B5868 003B27C8 ED C3 43 BA */ fmadds f14, f3, f14, f8
|
||||
/* 803B586C 003B27CC 7E 8A B8 00 */ cmpw cr5, r10, r23
|
||||
/* 803B5870 003B27D0 7F 09 B8 00 */ cmpw cr6, r9, r23
|
||||
/* 803B5874 003B27D4 FD C0 70 1E */ fctiwz f14, f14
|
||||
/* 803B5878 003B27D8 40 B6 00 08 */ bne+ cr5, lbl_803B5880
|
||||
/* 803B587C 003B27DC 39 40 00 00 */ li r10, 0
|
||||
lbl_803B5880:
|
||||
/* 803B5880 003B27E0 40 BA 00 08 */ bne+ cr6, lbl_803B5888
|
||||
/* 803B5884 003B27E4 39 20 00 00 */ li r9, 0
|
||||
lbl_803B5888:
|
||||
/* 803B5888 003B27E8 3B E0 FF FC */ li r31, -4
|
||||
/* 803B588C 003B27EC ED 8A 28 28 */ fsubs f12, f10, f5
|
||||
/* 803B5890 003B27F0 7D C3 FF AE */ stfiwx f14, r3, r31
|
||||
/* 803B5894 003B27F4 42 00 FE EC */ bdnz lbl_803B5780
|
||||
/* 803B5898 003B27F8 FD A0 60 90 */ fmr f13, f12
|
||||
/* 803B589C 003B27FC 41 9E 00 1C */ beq cr7, lbl_803B58B8
|
||||
/* 803B58A0 003B2800 C1 BC 00 00 */ lfs f13, 0(r28)
|
||||
/* 803B58A4 003B2804 3B 9C 00 04 */ addi r28, r28, 4
|
||||
/* 803B58A8 003B2808 7C 1C B0 00 */ cmpw r28, r22
|
||||
/* 803B58AC 003B280C D1 9C FF FC */ stfs f12, -4(r28)
|
||||
/* 803B58B0 003B2810 40 A2 00 08 */ bne+ lbl_803B58B8
|
||||
/* 803B58B4 003B2814 7F 7C DB 78 */ mr r28, r27
|
||||
lbl_803B58B8:
|
||||
/* 803B58B8 003B2818 ED 13 6B FA */ fmadds f8, f19, f15, f13
|
||||
/* 803B58BC 003B281C ED 34 6C 3A */ fmadds f9, f20, f16, f13
|
||||
/* 803B58C0 003B2820 7D 07 AD 2E */ stfsx f8, r7, r21
|
||||
/* 803B58C4 003B2824 3A B5 00 04 */ addi r21, r21, 4
|
||||
/* 803B58C8 003B2828 7D 28 9D 2E */ stfsx f9, r8, r19
|
||||
/* 803B58CC 003B282C 7D C7 A4 2E */ lfsx f14, r7, r20
|
||||
/* 803B58D0 003B2830 3A 94 00 04 */ addi r20, r20, 4
|
||||
/* 803B58D4 003B2834 7E 08 94 2E */ lfsx f16, r8, r18
|
||||
/* 803B58D8 003B2838 7C 15 D0 00 */ cmpw r21, r26
|
||||
/* 803B58DC 003B283C 7C 94 D0 00 */ cmpw cr1, r20, r26
|
||||
/* 803B58E0 003B2840 3A 73 00 04 */ addi r19, r19, 4
|
||||
/* 803B58E4 003B2844 3A 52 00 04 */ addi r18, r18, 4
|
||||
/* 803B58E8 003B2848 FD E0 70 90 */ fmr f15, f14
|
||||
/* 803B58EC 003B284C 7E 93 C8 00 */ cmpw cr5, r19, r25
|
||||
/* 803B58F0 003B2850 ED CE 80 2A */ fadds f14, f14, f16
|
||||
/* 803B58F4 003B2854 7F 12 C8 00 */ cmpw cr6, r18, r25
|
||||
/* 803B58F8 003B2858 40 A2 00 08 */ bne+ lbl_803B5900
|
||||
/* 803B58FC 003B285C 3A A0 00 00 */ li r21, 0
|
||||
lbl_803B5900:
|
||||
/* 803B5900 003B2860 ED 22 74 7A */ fmadds f9, f2, f17, f14
|
||||
/* 803B5904 003B2864 40 A6 00 08 */ bne+ cr1, lbl_803B590C
|
||||
/* 803B5908 003B2868 3A 80 00 00 */ li r20, 0
|
||||
lbl_803B590C:
|
||||
/* 803B590C 003B286C 40 B6 00 08 */ bne+ cr5, lbl_803B5914
|
||||
/* 803B5910 003B2870 3A 60 00 00 */ li r19, 0
|
||||
lbl_803B5914:
|
||||
/* 803B5914 003B2874 7D 31 65 2E */ stfsx f9, r17, r12
|
||||
/* 803B5918 003B2878 ED C2 8A 7C */ fnmsubs f14, f2, f9, f17
|
||||
/* 803B591C 003B287C 39 8C 00 04 */ addi r12, r12, 4
|
||||
/* 803B5920 003B2880 40 BA 00 08 */ bne+ cr6, lbl_803B5928
|
||||
/* 803B5924 003B2884 3A 40 00 00 */ li r18, 0
|
||||
lbl_803B5928:
|
||||
/* 803B5928 003B2888 7E 31 5C 2E */ lfsx f17, r17, r11
|
||||
/* 803B592C 003B288C 7E 8C C0 00 */ cmpw cr5, r12, r24
|
||||
/* 803B5930 003B2890 39 6B 00 04 */ addi r11, r11, 4
|
||||
/* 803B5934 003B2894 7F 0B C0 00 */ cmpw cr6, r11, r24
|
||||
/* 803B5938 003B2898 40 B6 00 08 */ bne+ cr5, lbl_803B5940
|
||||
/* 803B593C 003B289C 39 80 00 00 */ li r12, 0
|
||||
lbl_803B5940:
|
||||
/* 803B5940 003B28A0 40 BA 00 08 */ bne+ cr6, lbl_803B5948
|
||||
/* 803B5944 003B28A4 39 60 00 00 */ li r11, 0
|
||||
lbl_803B5948:
|
||||
/* 803B5948 003B28A8 ED CE 01 B2 */ fmuls f14, f14, f6
|
||||
/* 803B594C 003B28AC ED CB 71 FA */ fmadds f14, f11, f7, f14
|
||||
/* 803B5950 003B28B0 1F E5 00 28 */ mulli r31, r5, 0x28
|
||||
/* 803B5954 003B28B4 ED 22 74 BA */ fmadds f9, f2, f18, f14
|
||||
/* 803B5958 003B28B8 FC E0 70 90 */ fmr f7, f14
|
||||
/* 803B595C 003B28BC 3B A4 00 78 */ addi r29, r4, 0x78
|
||||
/* 803B5960 003B28C0 7F BD FA 14 */ add r29, r29, r31
|
||||
/* 803B5964 003B28C4 7D 26 55 2E */ stfsx f9, r6, r10
|
||||
/* 803B5968 003B28C8 ED C2 92 7C */ fnmsubs f14, f2, f9, f18
|
||||
/* 803B596C 003B28CC ED 04 03 32 */ fmuls f8, f4, f12
|
||||
/* 803B5970 003B28D0 7E 46 4C 2E */ lfsx f18, r6, r9
|
||||
/* 803B5974 003B28D4 39 4A 00 04 */ addi r10, r10, 4
|
||||
/* 803B5978 003B28D8 39 29 00 04 */ addi r9, r9, 4
|
||||
/* 803B597C 003B28DC ED C3 43 BA */ fmadds f14, f3, f14, f8
|
||||
/* 803B5980 003B28E0 7E 8A B8 00 */ cmpw cr5, r10, r23
|
||||
/* 803B5984 003B28E4 7F 09 B8 00 */ cmpw cr6, r9, r23
|
||||
/* 803B5988 003B28E8 FD C0 70 1E */ fctiwz f14, f14
|
||||
/* 803B598C 003B28EC 40 B6 00 08 */ bne+ cr5, lbl_803B5994
|
||||
/* 803B5990 003B28F0 39 40 00 00 */ li r10, 0
|
||||
lbl_803B5994:
|
||||
/* 803B5994 003B28F4 40 BA 00 08 */ bne+ cr6, lbl_803B599C
|
||||
/* 803B5998 003B28F8 39 20 00 00 */ li r9, 0
|
||||
lbl_803B599C:
|
||||
/* 803B599C 003B28FC 3B C4 00 00 */ addi r30, r4, 0
|
||||
/* 803B59A0 003B2900 7F DE FA 14 */ add r30, r30, r31
|
||||
/* 803B59A4 003B2904 7D C0 1F AE */ stfiwx f14, 0, r3
|
||||
/* 803B59A8 003B2908 92 BD 00 00 */ stw r21, 0(r29)
|
||||
/* 803B59AC 003B290C 92 9D 00 04 */ stw r20, 4(r29)
|
||||
/* 803B59B0 003B2910 92 7D 00 14 */ stw r19, 0x14(r29)
|
||||
/* 803B59B4 003B2914 92 5D 00 18 */ stw r18, 0x18(r29)
|
||||
/* 803B59B8 003B2918 38 63 00 04 */ addi r3, r3, 4
|
||||
/* 803B59BC 003B291C D1 FD 00 10 */ stfs f15, 0x10(r29)
|
||||
/* 803B59C0 003B2920 D2 1D 00 24 */ stfs f16, 0x24(r29)
|
||||
/* 803B59C4 003B2924 54 BF 10 3A */ slwi r31, r5, 2
|
||||
/* 803B59C8 003B2928 7F FF 22 14 */ add r31, r31, r4
|
||||
/* 803B59CC 003B292C 38 A5 00 01 */ addi r5, r5, 1
|
||||
/* 803B59D0 003B2930 91 9E 00 00 */ stw r12, 0(r30)
|
||||
/* 803B59D4 003B2934 91 7E 00 04 */ stw r11, 4(r30)
|
||||
/* 803B59D8 003B2938 91 5E 00 14 */ stw r10, 0x14(r30)
|
||||
/* 803B59DC 003B293C 91 3E 00 18 */ stw r9, 0x18(r30)
|
||||
/* 803B59E0 003B2940 2C 05 00 03 */ cmpwi r5, 3
|
||||
/* 803B59E4 003B2944 D2 3E 00 10 */ stfs f17, 0x10(r30)
|
||||
/* 803B59E8 003B2948 D2 5E 00 24 */ stfs f18, 0x24(r30)
|
||||
/* 803B59EC 003B294C D0 FF 01 0C */ stfs f7, 0x10c(r31)
|
||||
/* 803B59F0 003B2950 93 9F 01 30 */ stw r28, 0x130(r31)
|
||||
/* 803B59F4 003B2954 40 82 FC D4 */ bne lbl_803B56C8
|
||||
/* 803B59F8 003B2958 C9 C1 00 58 */ lfd f14, 0x58(r1)
|
||||
/* 803B59FC 003B295C C9 E1 00 60 */ lfd f15, 0x60(r1)
|
||||
/* 803B5A00 003B2960 CA 01 00 68 */ lfd f16, 0x68(r1)
|
||||
/* 803B5A04 003B2964 CA 21 00 70 */ lfd f17, 0x70(r1)
|
||||
/* 803B5A08 003B2968 CA 41 00 78 */ lfd f18, 0x78(r1)
|
||||
/* 803B5A0C 003B296C CA 61 00 80 */ lfd f19, 0x80(r1)
|
||||
/* 803B5A10 003B2970 CA 81 00 88 */ lfd f20, 0x88(r1)
|
||||
/* 803B5A14 003B2974 BA 21 00 08 */ lmw r17, 8(r1)
|
||||
/* 803B5A18 003B2978 38 21 00 90 */ addi r1, r1, 0x90
|
||||
/* 803B5A1C 003B297C 4E 80 00 20 */ blr
|
||||
|
||||
.global ReverbSTDCallback
|
||||
ReverbSTDCallback:
|
||||
/* 803B5A20 003B2980 94 21 FF F0 */ stwu r1, -0x10(r1)
|
||||
/* 803B5A24 003B2984 7C 08 02 A6 */ mflr r0
|
||||
/* 803B5A28 003B2988 7C C4 33 78 */ mr r4, r6
|
||||
/* 803B5A2C 003B298C 90 01 00 14 */ stw r0, 0x14(r1)
|
||||
/* 803B5A30 003B2990 4B FF FC 3D */ bl HandleReverb
|
||||
/* 803B5A34 003B2994 80 01 00 14 */ lwz r0, 0x14(r1)
|
||||
/* 803B5A38 003B2998 7C 08 03 A6 */ mtlr r0
|
||||
/* 803B5A3C 003B299C 38 21 00 10 */ addi r1, r1, 0x10
|
||||
/* 803B5A40 003B29A0 4E 80 00 20 */ blr
|
||||
|
||||
.global ReverbSTDFree
|
||||
ReverbSTDFree:
|
||||
/* 803B5A44 003B29A4 94 21 FF F0 */ stwu r1, -0x10(r1)
|
||||
/* 803B5A48 003B29A8 7C 08 02 A6 */ mflr r0
|
||||
/* 803B5A4C 003B29AC 90 01 00 14 */ stw r0, 0x14(r1)
|
||||
/* 803B5A50 003B29B0 93 E1 00 0C */ stw r31, 0xc(r1)
|
||||
/* 803B5A54 003B29B4 3B E0 00 00 */ li r31, 0
|
||||
/* 803B5A58 003B29B8 93 C1 00 08 */ stw r30, 8(r1)
|
||||
/* 803B5A5C 003B29BC 7C 7E 1B 78 */ mr r30, r3
|
||||
/* 803B5A60 003B29C0 48 00 00 1C */ b lbl_803B5A7C
|
||||
lbl_803B5A64:
|
||||
/* 803B5A64 003B29C4 57 E0 06 3E */ clrlwi r0, r31, 0x18
|
||||
/* 803B5A68 003B29C8 1C 60 00 14 */ mulli r3, r0, 0x14
|
||||
/* 803B5A6C 003B29CC 38 03 00 0C */ addi r0, r3, 0xc
|
||||
/* 803B5A70 003B29D0 7C 7E 00 2E */ lwzx r3, r30, r0
|
||||
/* 803B5A74 003B29D4 4B FF F6 E9 */ bl salFree
|
||||
/* 803B5A78 003B29D8 3B FF 00 01 */ addi r31, r31, 1
|
||||
lbl_803B5A7C:
|
||||
/* 803B5A7C 003B29DC 57 E0 06 3E */ clrlwi r0, r31, 0x18
|
||||
/* 803B5A80 003B29E0 28 00 00 06 */ cmplwi r0, 6
|
||||
/* 803B5A84 003B29E4 41 80 FF E0 */ blt lbl_803B5A64
|
||||
/* 803B5A88 003B29E8 3B E0 00 00 */ li r31, 0
|
||||
/* 803B5A8C 003B29EC 48 00 00 1C */ b lbl_803B5AA8
|
||||
lbl_803B5A90:
|
||||
/* 803B5A90 003B29F0 57 E0 06 3E */ clrlwi r0, r31, 0x18
|
||||
/* 803B5A94 003B29F4 1C 60 00 14 */ mulli r3, r0, 0x14
|
||||
/* 803B5A98 003B29F8 38 03 00 84 */ addi r0, r3, 0x84
|
||||
/* 803B5A9C 003B29FC 7C 7E 00 2E */ lwzx r3, r30, r0
|
||||
/* 803B5AA0 003B2A00 4B FF F6 BD */ bl salFree
|
||||
/* 803B5AA4 003B2A04 3B FF 00 01 */ addi r31, r31, 1
|
||||
lbl_803B5AA8:
|
||||
/* 803B5AA8 003B2A08 57 E0 06 3E */ clrlwi r0, r31, 0x18
|
||||
/* 803B5AAC 003B2A0C 28 00 00 06 */ cmplwi r0, 6
|
||||
/* 803B5AB0 003B2A10 41 80 FF E0 */ blt lbl_803B5A90
|
||||
/* 803B5AB4 003B2A14 80 1E 01 20 */ lwz r0, 0x120(r30)
|
||||
/* 803B5AB8 003B2A18 2C 00 00 00 */ cmpwi r0, 0
|
||||
/* 803B5ABC 003B2A1C 41 82 00 2C */ beq lbl_803B5AE8
|
||||
/* 803B5AC0 003B2A20 3B E0 00 00 */ li r31, 0
|
||||
/* 803B5AC4 003B2A24 48 00 00 18 */ b lbl_803B5ADC
|
||||
lbl_803B5AC8:
|
||||
/* 803B5AC8 003B2A28 57 E3 15 BA */ rlwinm r3, r31, 2, 0x16, 0x1d
|
||||
/* 803B5ACC 003B2A2C 38 03 01 24 */ addi r0, r3, 0x124
|
||||
/* 803B5AD0 003B2A30 7C 7E 00 2E */ lwzx r3, r30, r0
|
||||
/* 803B5AD4 003B2A34 4B FF F6 89 */ bl salFree
|
||||
/* 803B5AD8 003B2A38 3B FF 00 01 */ addi r31, r31, 1
|
||||
lbl_803B5ADC:
|
||||
/* 803B5ADC 003B2A3C 57 E0 06 3E */ clrlwi r0, r31, 0x18
|
||||
/* 803B5AE0 003B2A40 28 00 00 03 */ cmplwi r0, 3
|
||||
/* 803B5AE4 003B2A44 41 80 FF E4 */ blt lbl_803B5AC8
|
||||
lbl_803B5AE8:
|
||||
/* 803B5AE8 003B2A48 80 01 00 14 */ lwz r0, 0x14(r1)
|
||||
/* 803B5AEC 003B2A4C 83 E1 00 0C */ lwz r31, 0xc(r1)
|
||||
/* 803B5AF0 003B2A50 83 C1 00 08 */ lwz r30, 8(r1)
|
||||
/* 803B5AF4 003B2A54 7C 08 03 A6 */ mtlr r0
|
||||
/* 803B5AF8 003B2A58 38 21 00 10 */ addi r1, r1, 0x10
|
||||
/* 803B5AFC 003B2A5C 4E 80 00 20 */ blr
|
|
@ -0,0 +1,61 @@
|
|||
.include "macros.inc"
|
||||
|
||||
.section .text, "ax"
|
||||
|
||||
.global sub_803b5188
|
||||
sub_803b5188:
|
||||
/* 803B5188 003B20E8 94 21 FF F0 */ stwu r1, -0x10(r1)
|
||||
/* 803B518C 003B20EC 7C 08 02 A6 */ mflr r0
|
||||
/* 803B5190 003B20F0 7C 87 23 78 */ mr r7, r4
|
||||
/* 803B5194 003B20F4 90 01 00 14 */ stw r0, 0x14(r1)
|
||||
/* 803B5198 003B20F8 54 60 06 3E */ clrlwi r0, r3, 0x18
|
||||
/* 803B519C 003B20FC 2C 00 00 01 */ cmpwi r0, 1
|
||||
/* 803B51A0 003B2100 41 82 00 34 */ beq lbl_803B51D4
|
||||
/* 803B51A4 003B2104 40 80 00 30 */ bge lbl_803B51D4
|
||||
/* 803B51A8 003B2108 2C 00 00 00 */ cmpwi r0, 0
|
||||
/* 803B51AC 003B210C 40 80 00 08 */ bge lbl_803B51B4
|
||||
/* 803B51B0 003B2110 48 00 00 24 */ b lbl_803B51D4
|
||||
lbl_803B51B4:
|
||||
/* 803B51B4 003B2114 88 05 01 3C */ lbz r0, 0x13c(r5)
|
||||
/* 803B51B8 003B2118 28 00 00 00 */ cmplwi r0, 0
|
||||
/* 803B51BC 003B211C 40 82 00 18 */ bne lbl_803B51D4
|
||||
/* 803B51C0 003B2120 80 67 00 00 */ lwz r3, 0(r7)
|
||||
/* 803B51C4 003B2124 7C A6 2B 78 */ mr r6, r5
|
||||
/* 803B51C8 003B2128 80 87 00 04 */ lwz r4, 4(r7)
|
||||
/* 803B51CC 003B212C 80 A7 00 08 */ lwz r5, 8(r7)
|
||||
/* 803B51D0 003B2130 48 00 08 51 */ bl ReverbSTDCallback
|
||||
lbl_803B51D4:
|
||||
/* 803B51D4 003B2134 80 01 00 14 */ lwz r0, 0x14(r1)
|
||||
/* 803B51D8 003B2138 7C 08 03 A6 */ mtlr r0
|
||||
/* 803B51DC 003B213C 38 21 00 10 */ addi r1, r1, 0x10
|
||||
/* 803B51E0 003B2140 4E 80 00 20 */ blr
|
||||
|
||||
.global sndAuxCallbackPrepareReverbSTD
|
||||
sndAuxCallbackPrepareReverbSTD:
|
||||
/* 803B51E4 003B2144 94 21 FF F0 */ stwu r1, -0x10(r1)
|
||||
/* 803B51E8 003B2148 7C 08 02 A6 */ mflr r0
|
||||
/* 803B51EC 003B214C 90 01 00 14 */ stw r0, 0x14(r1)
|
||||
/* 803B51F0 003B2150 38 00 00 00 */ li r0, 0
|
||||
/* 803B51F4 003B2154 98 03 01 3C */ stb r0, 0x13c(r3)
|
||||
/* 803B51F8 003B2158 C0 23 01 40 */ lfs f1, 0x140(r3)
|
||||
/* 803B51FC 003B215C C0 43 01 48 */ lfs f2, 0x148(r3)
|
||||
/* 803B5200 003B2160 C0 63 01 44 */ lfs f3, 0x144(r3)
|
||||
/* 803B5204 003B2164 C0 83 01 4C */ lfs f4, 0x14c(r3)
|
||||
/* 803B5208 003B2168 C0 A3 01 50 */ lfs f5, 0x150(r3)
|
||||
/* 803B520C 003B216C 48 00 00 39 */ bl ReverbSTDCreate
|
||||
/* 803B5210 003B2170 80 01 00 14 */ lwz r0, 0x14(r1)
|
||||
/* 803B5214 003B2174 7C 08 03 A6 */ mtlr r0
|
||||
/* 803B5218 003B2178 38 21 00 10 */ addi r1, r1, 0x10
|
||||
/* 803B521C 003B217C 4E 80 00 20 */ blr
|
||||
|
||||
.global sndAuxCallbackShutdownReverbSTD
|
||||
sndAuxCallbackShutdownReverbSTD:
|
||||
/* 803B5220 003B2180 94 21 FF F0 */ stwu r1, -0x10(r1)
|
||||
/* 803B5224 003B2184 7C 08 02 A6 */ mflr r0
|
||||
/* 803B5228 003B2188 90 01 00 14 */ stw r0, 0x14(r1)
|
||||
/* 803B522C 003B218C 48 00 08 19 */ bl ReverbSTDFree
|
||||
/* 803B5230 003B2190 80 01 00 14 */ lwz r0, 0x14(r1)
|
||||
/* 803B5234 003B2194 38 60 00 01 */ li r3, 1
|
||||
/* 803B5238 003B2198 7C 08 03 A6 */ mtlr r0
|
||||
/* 803B523C 003B219C 38 21 00 10 */ addi r1, r1, 0x10
|
||||
/* 803B5240 003B21A0 4E 80 00 20 */ blr
|
|
@ -0,0 +1,260 @@
|
|||
.include "macros.inc"
|
||||
|
||||
.section .text, "ax"
|
||||
|
||||
.global sndAuxCallbackDelay
|
||||
sndAuxCallbackDelay:
|
||||
/* 803B6904 003B3864 94 21 FF F0 */ stwu r1, -0x10(r1)
|
||||
/* 803B6908 003B3868 54 60 06 3E */ clrlwi r0, r3, 0x18
|
||||
/* 803B690C 003B386C 2C 00 00 01 */ cmpwi r0, 1
|
||||
/* 803B6910 003B3870 93 E1 00 0C */ stw r31, 0xc(r1)
|
||||
/* 803B6914 003B3874 41 82 01 4C */ beq lbl_803B6A60
|
||||
/* 803B6918 003B3878 40 80 01 48 */ bge lbl_803B6A60
|
||||
/* 803B691C 003B387C 2C 00 00 00 */ cmpwi r0, 0
|
||||
/* 803B6920 003B3880 40 80 00 08 */ bge lbl_803B6928
|
||||
/* 803B6924 003B3884 48 00 01 3C */ b lbl_803B6A60
|
||||
lbl_803B6928:
|
||||
/* 803B6928 003B3888 80 E5 00 0C */ lwz r7, 0xc(r5)
|
||||
/* 803B692C 003B388C 38 00 00 A0 */ li r0, 0xa0
|
||||
/* 803B6930 003B3890 80 65 00 10 */ lwz r3, 0x10(r5)
|
||||
/* 803B6934 003B3894 80 C5 00 14 */ lwz r6, 0x14(r5)
|
||||
/* 803B6938 003B3898 1C E7 02 80 */ mulli r7, r7, 0x280
|
||||
/* 803B693C 003B389C 81 05 00 30 */ lwz r8, 0x30(r5)
|
||||
/* 803B6940 003B38A0 81 85 00 34 */ lwz r12, 0x34(r5)
|
||||
/* 803B6944 003B38A4 1D 23 02 80 */ mulli r9, r3, 0x280
|
||||
/* 803B6948 003B38A8 81 65 00 38 */ lwz r11, 0x38(r5)
|
||||
/* 803B694C 003B38AC 7C 68 3A 14 */ add r3, r8, r7
|
||||
/* 803B6950 003B38B0 80 E4 00 00 */ lwz r7, 0(r4)
|
||||
/* 803B6954 003B38B4 81 04 00 04 */ lwz r8, 4(r4)
|
||||
/* 803B6958 003B38B8 1D 46 02 80 */ mulli r10, r6, 0x280
|
||||
/* 803B695C 003B38BC 7C CC 4A 14 */ add r6, r12, r9
|
||||
/* 803B6960 003B38C0 81 24 00 08 */ lwz r9, 8(r4)
|
||||
/* 803B6964 003B38C4 7C 8B 52 14 */ add r4, r11, r10
|
||||
/* 803B6968 003B38C8 7C 09 03 A6 */ mtctr r0
|
||||
lbl_803B696C:
|
||||
/* 803B696C 003B38CC 81 83 00 00 */ lwz r12, 0(r3)
|
||||
/* 803B6970 003B38D0 80 05 00 18 */ lwz r0, 0x18(r5)
|
||||
/* 803B6974 003B38D4 81 67 00 00 */ lwz r11, 0(r7)
|
||||
/* 803B6978 003B38D8 7D 4C 01 D6 */ mullw r10, r12, r0
|
||||
/* 803B697C 003B38DC 83 E6 00 00 */ lwz r31, 0(r6)
|
||||
/* 803B6980 003B38E0 80 04 00 00 */ lwz r0, 0(r4)
|
||||
/* 803B6984 003B38E4 7D 4A 3E 70 */ srawi r10, r10, 7
|
||||
/* 803B6988 003B38E8 7D 4B 52 14 */ add r10, r11, r10
|
||||
/* 803B698C 003B38EC 91 43 00 00 */ stw r10, 0(r3)
|
||||
/* 803B6990 003B38F0 38 63 00 04 */ addi r3, r3, 4
|
||||
/* 803B6994 003B38F4 81 45 00 1C */ lwz r10, 0x1c(r5)
|
||||
/* 803B6998 003B38F8 81 68 00 00 */ lwz r11, 0(r8)
|
||||
/* 803B699C 003B38FC 7D 5F 51 D6 */ mullw r10, r31, r10
|
||||
/* 803B69A0 003B3900 7D 4A 3E 70 */ srawi r10, r10, 7
|
||||
/* 803B69A4 003B3904 7D 4B 52 14 */ add r10, r11, r10
|
||||
/* 803B69A8 003B3908 91 46 00 00 */ stw r10, 0(r6)
|
||||
/* 803B69AC 003B390C 38 C6 00 04 */ addi r6, r6, 4
|
||||
/* 803B69B0 003B3910 81 45 00 20 */ lwz r10, 0x20(r5)
|
||||
/* 803B69B4 003B3914 81 69 00 00 */ lwz r11, 0(r9)
|
||||
/* 803B69B8 003B3918 7D 40 51 D6 */ mullw r10, r0, r10
|
||||
/* 803B69BC 003B391C 7D 4A 3E 70 */ srawi r10, r10, 7
|
||||
/* 803B69C0 003B3920 7D 4B 52 14 */ add r10, r11, r10
|
||||
/* 803B69C4 003B3924 91 44 00 00 */ stw r10, 0(r4)
|
||||
/* 803B69C8 003B3928 38 84 00 04 */ addi r4, r4, 4
|
||||
/* 803B69CC 003B392C 81 45 00 24 */ lwz r10, 0x24(r5)
|
||||
/* 803B69D0 003B3930 7D 4C 51 D6 */ mullw r10, r12, r10
|
||||
/* 803B69D4 003B3934 7D 4A 3E 70 */ srawi r10, r10, 7
|
||||
/* 803B69D8 003B3938 91 47 00 00 */ stw r10, 0(r7)
|
||||
/* 803B69DC 003B393C 38 E7 00 04 */ addi r7, r7, 4
|
||||
/* 803B69E0 003B3940 81 45 00 28 */ lwz r10, 0x28(r5)
|
||||
/* 803B69E4 003B3944 7D 5F 51 D6 */ mullw r10, r31, r10
|
||||
/* 803B69E8 003B3948 7D 4A 3E 70 */ srawi r10, r10, 7
|
||||
/* 803B69EC 003B394C 91 48 00 00 */ stw r10, 0(r8)
|
||||
/* 803B69F0 003B3950 39 08 00 04 */ addi r8, r8, 4
|
||||
/* 803B69F4 003B3954 81 45 00 2C */ lwz r10, 0x2c(r5)
|
||||
/* 803B69F8 003B3958 7C 00 51 D6 */ mullw r0, r0, r10
|
||||
/* 803B69FC 003B395C 7C 00 3E 70 */ srawi r0, r0, 7
|
||||
/* 803B6A00 003B3960 90 09 00 00 */ stw r0, 0(r9)
|
||||
/* 803B6A04 003B3964 39 29 00 04 */ addi r9, r9, 4
|
||||
/* 803B6A08 003B3968 42 00 FF 64 */ bdnz lbl_803B696C
|
||||
/* 803B6A0C 003B396C 80 85 00 0C */ lwz r4, 0xc(r5)
|
||||
/* 803B6A10 003B3970 80 65 00 00 */ lwz r3, 0(r5)
|
||||
/* 803B6A14 003B3974 38 84 00 01 */ addi r4, r4, 1
|
||||
/* 803B6A18 003B3978 7C 04 1B 96 */ divwu r0, r4, r3
|
||||
/* 803B6A1C 003B397C 7C 00 19 D6 */ mullw r0, r0, r3
|
||||
/* 803B6A20 003B3980 7C 00 20 50 */ subf r0, r0, r4
|
||||
/* 803B6A24 003B3984 90 05 00 0C */ stw r0, 0xc(r5)
|
||||
/* 803B6A28 003B3988 80 85 00 10 */ lwz r4, 0x10(r5)
|
||||
/* 803B6A2C 003B398C 80 65 00 04 */ lwz r3, 4(r5)
|
||||
/* 803B6A30 003B3990 38 84 00 01 */ addi r4, r4, 1
|
||||
/* 803B6A34 003B3994 7C 04 1B 96 */ divwu r0, r4, r3
|
||||
/* 803B6A38 003B3998 7C 00 19 D6 */ mullw r0, r0, r3
|
||||
/* 803B6A3C 003B399C 7C 00 20 50 */ subf r0, r0, r4
|
||||
/* 803B6A40 003B39A0 90 05 00 10 */ stw r0, 0x10(r5)
|
||||
/* 803B6A44 003B39A4 80 85 00 14 */ lwz r4, 0x14(r5)
|
||||
/* 803B6A48 003B39A8 80 65 00 08 */ lwz r3, 8(r5)
|
||||
/* 803B6A4C 003B39AC 38 84 00 01 */ addi r4, r4, 1
|
||||
/* 803B6A50 003B39B0 7C 04 1B 96 */ divwu r0, r4, r3
|
||||
/* 803B6A54 003B39B4 7C 00 19 D6 */ mullw r0, r0, r3
|
||||
/* 803B6A58 003B39B8 7C 00 20 50 */ subf r0, r0, r4
|
||||
/* 803B6A5C 003B39BC 90 05 00 14 */ stw r0, 0x14(r5)
|
||||
lbl_803B6A60:
|
||||
/* 803B6A60 003B39C0 83 E1 00 0C */ lwz r31, 0xc(r1)
|
||||
/* 803B6A64 003B39C4 38 21 00 10 */ addi r1, r1, 0x10
|
||||
/* 803B6A68 003B39C8 4E 80 00 20 */ blr
|
||||
|
||||
.global sndAuxCallbackUpdateSettingsDelay
|
||||
sndAuxCallbackUpdateSettingsDelay:
|
||||
/* 803B6A6C 003B39CC 94 21 FF F0 */ stwu r1, -0x10(r1)
|
||||
/* 803B6A70 003B39D0 7C 08 02 A6 */ mflr r0
|
||||
/* 803B6A74 003B39D4 90 01 00 14 */ stw r0, 0x14(r1)
|
||||
/* 803B6A78 003B39D8 93 E1 00 0C */ stw r31, 0xc(r1)
|
||||
/* 803B6A7C 003B39DC 7C 7F 1B 78 */ mr r31, r3
|
||||
/* 803B6A80 003B39E0 48 00 01 E5 */ bl sndAuxCallbackShutdownDelay
|
||||
/* 803B6A84 003B39E4 80 DF 00 3C */ lwz r6, 0x3c(r31)
|
||||
/* 803B6A88 003B39E8 3C 80 CC CD */ lis r4, 0xCCCCCCCD@ha
|
||||
/* 803B6A8C 003B39EC 3C A0 51 EC */ lis r5, 0x51EB851F@ha
|
||||
/* 803B6A90 003B39F0 38 60 00 00 */ li r3, 0
|
||||
/* 803B6A94 003B39F4 38 06 FF FB */ addi r0, r6, -5
|
||||
/* 803B6A98 003B39F8 38 84 CC CD */ addi r4, r4, 0xCCCCCCCD@l
|
||||
/* 803B6A9C 003B39FC 54 06 28 34 */ slwi r6, r0, 5
|
||||
/* 803B6AA0 003B3A00 38 05 85 1F */ addi r0, r5, 0x51EB851F@l
|
||||
/* 803B6AA4 003B3A04 38 A6 00 9F */ addi r5, r6, 0x9f
|
||||
/* 803B6AA8 003B3A08 7C A4 28 16 */ mulhwu r5, r4, r5
|
||||
/* 803B6AAC 003B3A0C 54 A5 C9 FE */ srwi r5, r5, 7
|
||||
/* 803B6AB0 003B3A10 90 BF 00 00 */ stw r5, 0(r31)
|
||||
/* 803B6AB4 003B3A14 90 7F 00 0C */ stw r3, 0xc(r31)
|
||||
/* 803B6AB8 003B3A18 80 BF 00 48 */ lwz r5, 0x48(r31)
|
||||
/* 803B6ABC 003B3A1C 54 A5 38 30 */ slwi r5, r5, 7
|
||||
/* 803B6AC0 003B3A20 7C A0 28 16 */ mulhwu r5, r0, r5
|
||||
/* 803B6AC4 003B3A24 54 A5 D9 7E */ srwi r5, r5, 5
|
||||
/* 803B6AC8 003B3A28 90 BF 00 18 */ stw r5, 0x18(r31)
|
||||
/* 803B6ACC 003B3A2C 80 BF 00 54 */ lwz r5, 0x54(r31)
|
||||
/* 803B6AD0 003B3A30 54 A5 38 30 */ slwi r5, r5, 7
|
||||
/* 803B6AD4 003B3A34 7C A0 28 16 */ mulhwu r5, r0, r5
|
||||
/* 803B6AD8 003B3A38 54 A5 D9 7E */ srwi r5, r5, 5
|
||||
/* 803B6ADC 003B3A3C 90 BF 00 24 */ stw r5, 0x24(r31)
|
||||
/* 803B6AE0 003B3A40 80 BF 00 40 */ lwz r5, 0x40(r31)
|
||||
/* 803B6AE4 003B3A44 38 A5 FF FB */ addi r5, r5, -5
|
||||
/* 803B6AE8 003B3A48 54 A5 28 34 */ slwi r5, r5, 5
|
||||
/* 803B6AEC 003B3A4C 38 A5 00 9F */ addi r5, r5, 0x9f
|
||||
/* 803B6AF0 003B3A50 7C A4 28 16 */ mulhwu r5, r4, r5
|
||||
/* 803B6AF4 003B3A54 54 A5 C9 FE */ srwi r5, r5, 7
|
||||
/* 803B6AF8 003B3A58 90 BF 00 04 */ stw r5, 4(r31)
|
||||
/* 803B6AFC 003B3A5C 90 7F 00 10 */ stw r3, 0x10(r31)
|
||||
/* 803B6B00 003B3A60 80 BF 00 4C */ lwz r5, 0x4c(r31)
|
||||
/* 803B6B04 003B3A64 54 A5 38 30 */ slwi r5, r5, 7
|
||||
/* 803B6B08 003B3A68 7C A0 28 16 */ mulhwu r5, r0, r5
|
||||
/* 803B6B0C 003B3A6C 54 A5 D9 7E */ srwi r5, r5, 5
|
||||
/* 803B6B10 003B3A70 90 BF 00 1C */ stw r5, 0x1c(r31)
|
||||
/* 803B6B14 003B3A74 80 BF 00 58 */ lwz r5, 0x58(r31)
|
||||
/* 803B6B18 003B3A78 54 A5 38 30 */ slwi r5, r5, 7
|
||||
/* 803B6B1C 003B3A7C 7C A0 28 16 */ mulhwu r5, r0, r5
|
||||
/* 803B6B20 003B3A80 54 A5 D9 7E */ srwi r5, r5, 5
|
||||
/* 803B6B24 003B3A84 90 BF 00 28 */ stw r5, 0x28(r31)
|
||||
/* 803B6B28 003B3A88 80 BF 00 44 */ lwz r5, 0x44(r31)
|
||||
/* 803B6B2C 003B3A8C 38 A5 FF FB */ addi r5, r5, -5
|
||||
/* 803B6B30 003B3A90 54 A5 28 34 */ slwi r5, r5, 5
|
||||
/* 803B6B34 003B3A94 38 A5 00 9F */ addi r5, r5, 0x9f
|
||||
/* 803B6B38 003B3A98 7C 84 28 16 */ mulhwu r4, r4, r5
|
||||
/* 803B6B3C 003B3A9C 54 84 C9 FE */ srwi r4, r4, 7
|
||||
/* 803B6B40 003B3AA0 90 9F 00 08 */ stw r4, 8(r31)
|
||||
/* 803B6B44 003B3AA4 90 7F 00 14 */ stw r3, 0x14(r31)
|
||||
/* 803B6B48 003B3AA8 80 7F 00 50 */ lwz r3, 0x50(r31)
|
||||
/* 803B6B4C 003B3AAC 54 63 38 30 */ slwi r3, r3, 7
|
||||
/* 803B6B50 003B3AB0 7C 60 18 16 */ mulhwu r3, r0, r3
|
||||
/* 803B6B54 003B3AB4 54 63 D9 7E */ srwi r3, r3, 5
|
||||
/* 803B6B58 003B3AB8 90 7F 00 20 */ stw r3, 0x20(r31)
|
||||
/* 803B6B5C 003B3ABC 80 7F 00 5C */ lwz r3, 0x5c(r31)
|
||||
/* 803B6B60 003B3AC0 54 63 38 30 */ slwi r3, r3, 7
|
||||
/* 803B6B64 003B3AC4 7C 00 18 16 */ mulhwu r0, r0, r3
|
||||
/* 803B6B68 003B3AC8 54 00 D9 7E */ srwi r0, r0, 5
|
||||
/* 803B6B6C 003B3ACC 90 1F 00 2C */ stw r0, 0x2c(r31)
|
||||
/* 803B6B70 003B3AD0 80 1F 00 00 */ lwz r0, 0(r31)
|
||||
/* 803B6B74 003B3AD4 1C 60 02 80 */ mulli r3, r0, 0x280
|
||||
/* 803B6B78 003B3AD8 4B FF E5 BD */ bl salMalloc
|
||||
/* 803B6B7C 003B3ADC 90 7F 00 30 */ stw r3, 0x30(r31)
|
||||
/* 803B6B80 003B3AE0 80 1F 00 04 */ lwz r0, 4(r31)
|
||||
/* 803B6B84 003B3AE4 1C 60 02 80 */ mulli r3, r0, 0x280
|
||||
/* 803B6B88 003B3AE8 4B FF E5 AD */ bl salMalloc
|
||||
/* 803B6B8C 003B3AEC 90 7F 00 34 */ stw r3, 0x34(r31)
|
||||
/* 803B6B90 003B3AF0 80 1F 00 08 */ lwz r0, 8(r31)
|
||||
/* 803B6B94 003B3AF4 1C 60 02 80 */ mulli r3, r0, 0x280
|
||||
/* 803B6B98 003B3AF8 4B FF E5 9D */ bl salMalloc
|
||||
/* 803B6B9C 003B3AFC 90 7F 00 38 */ stw r3, 0x38(r31)
|
||||
/* 803B6BA0 003B3B00 38 80 00 00 */ li r4, 0
|
||||
/* 803B6BA4 003B3B04 38 60 00 00 */ li r3, 0
|
||||
/* 803B6BA8 003B3B08 80 BF 00 30 */ lwz r5, 0x30(r31)
|
||||
/* 803B6BAC 003B3B0C 80 DF 00 34 */ lwz r6, 0x34(r31)
|
||||
/* 803B6BB0 003B3B10 80 FF 00 38 */ lwz r7, 0x38(r31)
|
||||
/* 803B6BB4 003B3B14 48 00 00 10 */ b lbl_803B6BC4
|
||||
lbl_803B6BB8:
|
||||
/* 803B6BB8 003B3B18 90 65 00 00 */ stw r3, 0(r5)
|
||||
/* 803B6BBC 003B3B1C 38 A5 00 04 */ addi r5, r5, 4
|
||||
/* 803B6BC0 003B3B20 38 84 00 01 */ addi r4, r4, 1
|
||||
lbl_803B6BC4:
|
||||
/* 803B6BC4 003B3B24 80 1F 00 00 */ lwz r0, 0(r31)
|
||||
/* 803B6BC8 003B3B28 1C 00 00 A0 */ mulli r0, r0, 0xa0
|
||||
/* 803B6BCC 003B3B2C 7C 04 00 40 */ cmplw r4, r0
|
||||
/* 803B6BD0 003B3B30 41 80 FF E8 */ blt lbl_803B6BB8
|
||||
/* 803B6BD4 003B3B34 38 80 00 00 */ li r4, 0
|
||||
/* 803B6BD8 003B3B38 7C 83 23 78 */ mr r3, r4
|
||||
/* 803B6BDC 003B3B3C 48 00 00 10 */ b lbl_803B6BEC
|
||||
lbl_803B6BE0:
|
||||
/* 803B6BE0 003B3B40 90 66 00 00 */ stw r3, 0(r6)
|
||||
/* 803B6BE4 003B3B44 38 C6 00 04 */ addi r6, r6, 4
|
||||
/* 803B6BE8 003B3B48 38 84 00 01 */ addi r4, r4, 1
|
||||
lbl_803B6BEC:
|
||||
/* 803B6BEC 003B3B4C 80 1F 00 04 */ lwz r0, 4(r31)
|
||||
/* 803B6BF0 003B3B50 1C 00 00 A0 */ mulli r0, r0, 0xa0
|
||||
/* 803B6BF4 003B3B54 7C 04 00 40 */ cmplw r4, r0
|
||||
/* 803B6BF8 003B3B58 41 80 FF E8 */ blt lbl_803B6BE0
|
||||
/* 803B6BFC 003B3B5C 38 80 00 00 */ li r4, 0
|
||||
/* 803B6C00 003B3B60 7C 83 23 78 */ mr r3, r4
|
||||
/* 803B6C04 003B3B64 48 00 00 10 */ b lbl_803B6C14
|
||||
lbl_803B6C08:
|
||||
/* 803B6C08 003B3B68 90 67 00 00 */ stw r3, 0(r7)
|
||||
/* 803B6C0C 003B3B6C 38 E7 00 04 */ addi r7, r7, 4
|
||||
/* 803B6C10 003B3B70 38 84 00 01 */ addi r4, r4, 1
|
||||
lbl_803B6C14:
|
||||
/* 803B6C14 003B3B74 80 1F 00 08 */ lwz r0, 8(r31)
|
||||
/* 803B6C18 003B3B78 1C 00 00 A0 */ mulli r0, r0, 0xa0
|
||||
/* 803B6C1C 003B3B7C 7C 04 00 40 */ cmplw r4, r0
|
||||
/* 803B6C20 003B3B80 41 80 FF E8 */ blt lbl_803B6C08
|
||||
/* 803B6C24 003B3B84 80 01 00 14 */ lwz r0, 0x14(r1)
|
||||
/* 803B6C28 003B3B88 38 60 00 01 */ li r3, 1
|
||||
/* 803B6C2C 003B3B8C 83 E1 00 0C */ lwz r31, 0xc(r1)
|
||||
/* 803B6C30 003B3B90 7C 08 03 A6 */ mtlr r0
|
||||
/* 803B6C34 003B3B94 38 21 00 10 */ addi r1, r1, 0x10
|
||||
/* 803B6C38 003B3B98 4E 80 00 20 */ blr
|
||||
|
||||
.global sndAuxCallbackPrepareDelay
|
||||
sndAuxCallbackPrepareDelay:
|
||||
/* 803B6C3C 003B3B9C 94 21 FF F0 */ stwu r1, -0x10(r1)
|
||||
/* 803B6C40 003B3BA0 7C 08 02 A6 */ mflr r0
|
||||
/* 803B6C44 003B3BA4 90 01 00 14 */ stw r0, 0x14(r1)
|
||||
/* 803B6C48 003B3BA8 38 00 00 00 */ li r0, 0
|
||||
/* 803B6C4C 003B3BAC 90 03 00 30 */ stw r0, 0x30(r3)
|
||||
/* 803B6C50 003B3BB0 4B FF FE 1D */ bl sndAuxCallbackUpdateSettingsDelay
|
||||
/* 803B6C54 003B3BB4 80 01 00 14 */ lwz r0, 0x14(r1)
|
||||
/* 803B6C58 003B3BB8 7C 08 03 A6 */ mtlr r0
|
||||
/* 803B6C5C 003B3BBC 38 21 00 10 */ addi r1, r1, 0x10
|
||||
/* 803B6C60 003B3BC0 4E 80 00 20 */ blr
|
||||
|
||||
.global sndAuxCallbackShutdownDelay
|
||||
sndAuxCallbackShutdownDelay:
|
||||
/* 803B6C64 003B3BC4 94 21 FF F0 */ stwu r1, -0x10(r1)
|
||||
/* 803B6C68 003B3BC8 7C 08 02 A6 */ mflr r0
|
||||
/* 803B6C6C 003B3BCC 90 01 00 14 */ stw r0, 0x14(r1)
|
||||
/* 803B6C70 003B3BD0 93 E1 00 0C */ stw r31, 0xc(r1)
|
||||
/* 803B6C74 003B3BD4 7C 7F 1B 78 */ mr r31, r3
|
||||
/* 803B6C78 003B3BD8 80 63 00 30 */ lwz r3, 0x30(r3)
|
||||
/* 803B6C7C 003B3BDC 28 03 00 00 */ cmplwi r3, 0
|
||||
/* 803B6C80 003B3BE0 41 82 00 18 */ beq lbl_803B6C98
|
||||
/* 803B6C84 003B3BE4 4B FF E4 D9 */ bl salFree
|
||||
/* 803B6C88 003B3BE8 80 7F 00 34 */ lwz r3, 0x34(r31)
|
||||
/* 803B6C8C 003B3BEC 4B FF E4 D1 */ bl salFree
|
||||
/* 803B6C90 003B3BF0 80 7F 00 38 */ lwz r3, 0x38(r31)
|
||||
/* 803B6C94 003B3BF4 4B FF E4 C9 */ bl salFree
|
||||
lbl_803B6C98:
|
||||
/* 803B6C98 003B3BF8 80 01 00 14 */ lwz r0, 0x14(r1)
|
||||
/* 803B6C9C 003B3BFC 38 60 00 01 */ li r3, 1
|
||||
/* 803B6CA0 003B3C00 83 E1 00 0C */ lwz r31, 0xc(r1)
|
||||
/* 803B6CA4 003B3C04 7C 08 03 A6 */ mtlr r0
|
||||
/* 803B6CA8 003B3C08 38 21 00 10 */ addi r1, r1, 0x10
|
||||
/* 803B6CAC 003B3C0C 4E 80 00 20 */ blr
|
File diff suppressed because it is too large
Load Diff
|
@ -0,0 +1,917 @@
|
|||
.include "macros.inc"
|
||||
|
||||
.section .text, "ax"
|
||||
|
||||
.global aramQueueCallback
|
||||
aramQueueCallback:
|
||||
/* 803B3F70 003B0ED0 94 21 FF E0 */ stwu r1, -0x20(r1)
|
||||
/* 803B3F74 003B0ED4 7C 08 02 A6 */ mflr r0
|
||||
/* 803B3F78 003B0ED8 90 01 00 24 */ stw r0, 0x24(r1)
|
||||
/* 803B3F7C 003B0EDC 93 E1 00 1C */ stw r31, 0x1c(r1)
|
||||
/* 803B3F80 003B0EE0 93 C1 00 18 */ stw r30, 0x18(r1)
|
||||
/* 803B3F84 003B0EE4 93 A1 00 14 */ stw r29, 0x14(r1)
|
||||
/* 803B3F88 003B0EE8 93 81 00 10 */ stw r28, 0x10(r1)
|
||||
/* 803B3F8C 003B0EEC 7C 7C 1B 78 */ mr r28, r3
|
||||
/* 803B3F90 003B0EF0 3C 60 80 56 */ lis r3, lbl_80566F90@ha
|
||||
/* 803B3F94 003B0EF4 80 1C 00 0C */ lwz r0, 0xc(r28)
|
||||
/* 803B3F98 003B0EF8 3B E3 6F 90 */ addi r31, r3, lbl_80566F90@l
|
||||
/* 803B3F9C 003B0EFC 28 00 00 01 */ cmplwi r0, 1
|
||||
/* 803B3FA0 003B0F00 40 82 00 0C */ bne lbl_803B3FAC
|
||||
/* 803B3FA4 003B0F04 3C 60 80 56 */ lis r3, lbl_80567214@ha
|
||||
/* 803B3FA8 003B0F08 3B E3 72 14 */ addi r31, r3, lbl_80567214@l
|
||||
lbl_803B3FAC:
|
||||
/* 803B3FAC 003B0F0C 3B A0 00 00 */ li r29, 0
|
||||
/* 803B3FB0 003B0F10 7F FE FB 78 */ mr r30, r31
|
||||
lbl_803B3FB4:
|
||||
/* 803B3FB4 003B0F14 7C 1C F0 40 */ cmplw r28, r30
|
||||
/* 803B3FB8 003B0F18 40 82 00 1C */ bne lbl_803B3FD4
|
||||
/* 803B3FBC 003B0F1C 81 9E 00 20 */ lwz r12, 0x20(r30)
|
||||
/* 803B3FC0 003B0F20 28 0C 00 00 */ cmplwi r12, 0
|
||||
/* 803B3FC4 003B0F24 41 82 00 10 */ beq lbl_803B3FD4
|
||||
/* 803B3FC8 003B0F28 80 7E 00 24 */ lwz r3, 0x24(r30)
|
||||
/* 803B3FCC 003B0F2C 7D 89 03 A6 */ mtctr r12
|
||||
/* 803B3FD0 003B0F30 4E 80 04 21 */ bctrl
|
||||
lbl_803B3FD4:
|
||||
/* 803B3FD4 003B0F34 3B BD 00 01 */ addi r29, r29, 1
|
||||
/* 803B3FD8 003B0F38 3B DE 00 28 */ addi r30, r30, 0x28
|
||||
/* 803B3FDC 003B0F3C 28 1D 00 10 */ cmplwi r29, 0x10
|
||||
/* 803B3FE0 003B0F40 41 80 FF D4 */ blt lbl_803B3FB4
|
||||
/* 803B3FE4 003B0F44 88 7F 02 81 */ lbz r3, 0x281(r31)
|
||||
/* 803B3FE8 003B0F48 38 03 FF FF */ addi r0, r3, -1
|
||||
/* 803B3FEC 003B0F4C 98 1F 02 81 */ stb r0, 0x281(r31)
|
||||
/* 803B3FF0 003B0F50 83 E1 00 1C */ lwz r31, 0x1c(r1)
|
||||
/* 803B3FF4 003B0F54 83 C1 00 18 */ lwz r30, 0x18(r1)
|
||||
/* 803B3FF8 003B0F58 83 A1 00 14 */ lwz r29, 0x14(r1)
|
||||
/* 803B3FFC 003B0F5C 83 81 00 10 */ lwz r28, 0x10(r1)
|
||||
/* 803B4000 003B0F60 80 01 00 24 */ lwz r0, 0x24(r1)
|
||||
/* 803B4004 003B0F64 7C 08 03 A6 */ mtlr r0
|
||||
/* 803B4008 003B0F68 38 21 00 20 */ addi r1, r1, 0x20
|
||||
/* 803B400C 003B0F6C 4E 80 00 20 */ blr
|
||||
|
||||
.global aramUploadData
|
||||
aramUploadData:
|
||||
/* 803B4010 003B0F70 94 21 FF D0 */ stwu r1, -0x30(r1)
|
||||
/* 803B4014 003B0F74 7C 08 02 A6 */ mflr r0
|
||||
/* 803B4018 003B0F78 90 01 00 34 */ stw r0, 0x34(r1)
|
||||
/* 803B401C 003B0F7C 39 61 00 30 */ addi r11, r1, 0x30
|
||||
/* 803B4020 003B0F80 4B FD 5A 51 */ bl func_80389A70
|
||||
/* 803B4024 003B0F84 7C D8 33 79 */ or. r24, r6, r6
|
||||
/* 803B4028 003B0F88 7C 79 1B 78 */ mr r25, r3
|
||||
/* 803B402C 003B0F8C 7C 9A 23 78 */ mr r26, r4
|
||||
/* 803B4030 003B0F90 7C BB 2B 78 */ mr r27, r5
|
||||
/* 803B4034 003B0F94 7C FC 3B 78 */ mr r28, r7
|
||||
/* 803B4038 003B0F98 7D 1D 43 78 */ mr r29, r8
|
||||
/* 803B403C 003B0F9C 41 82 00 10 */ beq lbl_803B404C
|
||||
/* 803B4040 003B0FA0 3C 60 80 56 */ lis r3, lbl_80567214@ha
|
||||
/* 803B4044 003B0FA4 3B E3 72 14 */ addi r31, r3, lbl_80567214@l
|
||||
/* 803B4048 003B0FA8 48 00 00 0C */ b lbl_803B4054
|
||||
lbl_803B404C:
|
||||
/* 803B404C 003B0FAC 3C 60 80 56 */ lis r3, lbl_80566F90@ha
|
||||
/* 803B4050 003B0FB0 3B E3 6F 90 */ addi r31, r3, lbl_80566F90@l
|
||||
lbl_803B4054:
|
||||
/* 803B4054 003B0FB4 4B FC D6 0D */ bl OSDisableInterrupts
|
||||
/* 803B4058 003B0FB8 88 1F 02 81 */ lbz r0, 0x281(r31)
|
||||
/* 803B405C 003B0FBC 7C 7E 1B 78 */ mr r30, r3
|
||||
/* 803B4060 003B0FC0 28 00 00 10 */ cmplwi r0, 0x10
|
||||
/* 803B4064 003B0FC4 40 80 01 68 */ bge lbl_803B41CC
|
||||
/* 803B4068 003B0FC8 88 9F 02 80 */ lbz r4, 0x280(r31)
|
||||
/* 803B406C 003B0FCC 7C 18 00 D0 */ neg r0, r24
|
||||
/* 803B4070 003B0FD0 7C 00 C3 78 */ or r0, r0, r24
|
||||
/* 803B4074 003B0FD4 3C 60 80 3B */ lis r3, aramQueueCallback@ha
|
||||
/* 803B4078 003B0FD8 1C 84 00 28 */ mulli r4, r4, 0x28
|
||||
/* 803B407C 003B0FDC 38 E0 00 2A */ li r7, 0x2a
|
||||
/* 803B4080 003B0FE0 38 A0 00 00 */ li r5, 0
|
||||
/* 803B4084 003B0FE4 54 08 0F FE */ srwi r8, r0, 0x1f
|
||||
/* 803B4088 003B0FE8 7C DF 22 14 */ add r6, r31, r4
|
||||
/* 803B408C 003B0FEC 38 83 3F 70 */ addi r4, r3, aramQueueCallback@l
|
||||
/* 803B4090 003B0FF0 90 E6 00 04 */ stw r7, 4(r6)
|
||||
/* 803B4094 003B0FF4 88 1F 02 80 */ lbz r0, 0x280(r31)
|
||||
/* 803B4098 003B0FF8 1C 00 00 28 */ mulli r0, r0, 0x28
|
||||
/* 803B409C 003B0FFC 7C 7F 02 14 */ add r3, r31, r0
|
||||
/* 803B40A0 003B1000 90 A3 00 08 */ stw r5, 8(r3)
|
||||
/* 803B40A4 003B1004 88 1F 02 80 */ lbz r0, 0x280(r31)
|
||||
/* 803B40A8 003B1008 1C 00 00 28 */ mulli r0, r0, 0x28
|
||||
/* 803B40AC 003B100C 7C 7F 02 14 */ add r3, r31, r0
|
||||
/* 803B40B0 003B1010 91 03 00 0C */ stw r8, 0xc(r3)
|
||||
/* 803B40B4 003B1014 88 1F 02 80 */ lbz r0, 0x280(r31)
|
||||
/* 803B40B8 003B1018 1C 00 00 28 */ mulli r0, r0, 0x28
|
||||
/* 803B40BC 003B101C 7C 7F 02 14 */ add r3, r31, r0
|
||||
/* 803B40C0 003B1020 93 23 00 10 */ stw r25, 0x10(r3)
|
||||
/* 803B40C4 003B1024 88 1F 02 80 */ lbz r0, 0x280(r31)
|
||||
/* 803B40C8 003B1028 1C 00 00 28 */ mulli r0, r0, 0x28
|
||||
/* 803B40CC 003B102C 7C 7F 02 14 */ add r3, r31, r0
|
||||
/* 803B40D0 003B1030 93 43 00 14 */ stw r26, 0x14(r3)
|
||||
/* 803B40D4 003B1034 88 1F 02 80 */ lbz r0, 0x280(r31)
|
||||
/* 803B40D8 003B1038 1C 00 00 28 */ mulli r0, r0, 0x28
|
||||
/* 803B40DC 003B103C 7C 7F 02 14 */ add r3, r31, r0
|
||||
/* 803B40E0 003B1040 93 63 00 18 */ stw r27, 0x18(r3)
|
||||
/* 803B40E4 003B1044 88 1F 02 80 */ lbz r0, 0x280(r31)
|
||||
/* 803B40E8 003B1048 1C 00 00 28 */ mulli r0, r0, 0x28
|
||||
/* 803B40EC 003B104C 7C 7F 02 14 */ add r3, r31, r0
|
||||
/* 803B40F0 003B1050 90 83 00 1C */ stw r4, 0x1c(r3)
|
||||
/* 803B40F4 003B1054 88 1F 02 80 */ lbz r0, 0x280(r31)
|
||||
/* 803B40F8 003B1058 1C 00 00 28 */ mulli r0, r0, 0x28
|
||||
/* 803B40FC 003B105C 7C 7F 02 14 */ add r3, r31, r0
|
||||
/* 803B4100 003B1060 93 83 00 20 */ stw r28, 0x20(r3)
|
||||
/* 803B4104 003B1064 88 1F 02 80 */ lbz r0, 0x280(r31)
|
||||
/* 803B4108 003B1068 1C 00 00 28 */ mulli r0, r0, 0x28
|
||||
/* 803B410C 003B106C 7C 7F 02 14 */ add r3, r31, r0
|
||||
/* 803B4110 003B1070 93 A3 00 24 */ stw r29, 0x24(r3)
|
||||
/* 803B4114 003B1074 88 7F 02 80 */ lbz r3, 0x280(r31)
|
||||
/* 803B4118 003B1078 88 1F 02 80 */ lbz r0, 0x280(r31)
|
||||
/* 803B411C 003B107C 88 9F 02 80 */ lbz r4, 0x280(r31)
|
||||
/* 803B4120 003B1080 1C 63 00 28 */ mulli r3, r3, 0x28
|
||||
/* 803B4124 003B1084 88 BF 02 80 */ lbz r5, 0x280(r31)
|
||||
/* 803B4128 003B1088 88 DF 02 80 */ lbz r6, 0x280(r31)
|
||||
/* 803B412C 003B108C 88 FF 02 80 */ lbz r7, 0x280(r31)
|
||||
/* 803B4130 003B1090 1D 40 00 28 */ mulli r10, r0, 0x28
|
||||
/* 803B4134 003B1094 89 1F 02 80 */ lbz r8, 0x280(r31)
|
||||
/* 803B4138 003B1098 7C 7F 1A 14 */ add r3, r31, r3
|
||||
/* 803B413C 003B109C 88 1F 02 80 */ lbz r0, 0x280(r31)
|
||||
/* 803B4140 003B10A0 1D 24 00 28 */ mulli r9, r4, 0x28
|
||||
/* 803B4144 003B10A4 7C 9F 52 14 */ add r4, r31, r10
|
||||
/* 803B4148 003B10A8 80 84 00 04 */ lwz r4, 4(r4)
|
||||
/* 803B414C 003B10AC 1D 45 00 28 */ mulli r10, r5, 0x28
|
||||
/* 803B4150 003B10B0 7C BF 4A 14 */ add r5, r31, r9
|
||||
/* 803B4154 003B10B4 80 A5 00 08 */ lwz r5, 8(r5)
|
||||
/* 803B4158 003B10B8 1D 26 00 28 */ mulli r9, r6, 0x28
|
||||
/* 803B415C 003B10BC 7C DF 52 14 */ add r6, r31, r10
|
||||
/* 803B4160 003B10C0 80 C6 00 0C */ lwz r6, 0xc(r6)
|
||||
/* 803B4164 003B10C4 1D 47 00 28 */ mulli r10, r7, 0x28
|
||||
/* 803B4168 003B10C8 7C FF 4A 14 */ add r7, r31, r9
|
||||
/* 803B416C 003B10CC 80 E7 00 10 */ lwz r7, 0x10(r7)
|
||||
/* 803B4170 003B10D0 1D 28 00 28 */ mulli r9, r8, 0x28
|
||||
/* 803B4174 003B10D4 7D 1F 52 14 */ add r8, r31, r10
|
||||
/* 803B4178 003B10D8 81 08 00 14 */ lwz r8, 0x14(r8)
|
||||
/* 803B417C 003B10DC 1C 00 00 28 */ mulli r0, r0, 0x28
|
||||
/* 803B4180 003B10E0 7D 3F 4A 14 */ add r9, r31, r9
|
||||
/* 803B4184 003B10E4 81 29 00 18 */ lwz r9, 0x18(r9)
|
||||
/* 803B4188 003B10E8 7D 5F 02 14 */ add r10, r31, r0
|
||||
/* 803B418C 003B10EC 81 4A 00 1C */ lwz r10, 0x1c(r10)
|
||||
/* 803B4190 003B10F0 4B FB B4 E1 */ bl ARQPostRequest
|
||||
/* 803B4194 003B10F4 88 9F 02 81 */ lbz r4, 0x281(r31)
|
||||
/* 803B4198 003B10F8 7F C3 F3 78 */ mr r3, r30
|
||||
/* 803B419C 003B10FC 38 04 00 01 */ addi r0, r4, 1
|
||||
/* 803B41A0 003B1100 98 1F 02 81 */ stb r0, 0x281(r31)
|
||||
/* 803B41A4 003B1104 88 9F 02 80 */ lbz r4, 0x280(r31)
|
||||
/* 803B41A8 003B1108 38 84 00 01 */ addi r4, r4, 1
|
||||
/* 803B41AC 003B110C 54 80 E0 06 */ slwi r0, r4, 0x1c
|
||||
/* 803B41B0 003B1110 54 84 0F FE */ srwi r4, r4, 0x1f
|
||||
/* 803B41B4 003B1114 7C 04 00 50 */ subf r0, r4, r0
|
||||
/* 803B41B8 003B1118 54 00 20 3E */ rotlwi r0, r0, 4
|
||||
/* 803B41BC 003B111C 7C 00 22 14 */ add r0, r0, r4
|
||||
/* 803B41C0 003B1120 98 1F 02 80 */ stb r0, 0x280(r31)
|
||||
/* 803B41C4 003B1124 4B FC D4 C5 */ bl OSRestoreInterrupts
|
||||
/* 803B41C8 003B1128 48 00 00 0C */ b lbl_803B41D4
|
||||
lbl_803B41CC:
|
||||
/* 803B41CC 003B112C 4B FC D4 BD */ bl OSRestoreInterrupts
|
||||
/* 803B41D0 003B1130 4B FF FE 84 */ b lbl_803B4054
|
||||
lbl_803B41D4:
|
||||
/* 803B41D4 003B1134 39 61 00 30 */ addi r11, r1, 0x30
|
||||
/* 803B41D8 003B1138 4B FD 58 E5 */ bl _restgpr_24
|
||||
/* 803B41DC 003B113C 80 01 00 34 */ lwz r0, 0x34(r1)
|
||||
/* 803B41E0 003B1140 7C 08 03 A6 */ mtlr r0
|
||||
/* 803B41E4 003B1144 38 21 00 30 */ addi r1, r1, 0x30
|
||||
/* 803B41E8 003B1148 4E 80 00 20 */ blr
|
||||
|
||||
.global aramSyncTransferQueue
|
||||
aramSyncTransferQueue:
|
||||
/* 803B41EC 003B114C 3C 60 80 56 */ lis r3, lbl_80566F90@ha
|
||||
/* 803B41F0 003B1150 38 63 6F 90 */ addi r3, r3, lbl_80566F90@l
|
||||
lbl_803B41F4:
|
||||
/* 803B41F4 003B1154 88 03 02 81 */ lbz r0, 0x281(r3)
|
||||
/* 803B41F8 003B1158 28 00 00 00 */ cmplwi r0, 0
|
||||
/* 803B41FC 003B115C 40 82 FF F8 */ bne lbl_803B41F4
|
||||
|
||||
.global sub_803b4200
|
||||
sub_803b4200:
|
||||
/* 803B4200 003B1160 4E 80 00 20 */ blr
|
||||
|
||||
.global aramInit
|
||||
aramInit:
|
||||
/* 803B4204 003B1164 94 21 FF E0 */ stwu r1, -0x20(r1)
|
||||
/* 803B4208 003B1168 7C 08 02 A6 */ mflr r0
|
||||
/* 803B420C 003B116C 90 01 00 24 */ stw r0, 0x24(r1)
|
||||
/* 803B4210 003B1170 39 61 00 20 */ addi r11, r1, 0x20
|
||||
/* 803B4214 003B1174 4B FD 58 69 */ bl sub_80389a7c
|
||||
/* 803B4218 003B1178 7C 7B 1B 78 */ mr r27, r3
|
||||
/* 803B421C 003B117C 4B FB 99 99 */ bl ARGetBaseAddress
|
||||
/* 803B4220 003B1180 7C 7E 1B 78 */ mr r30, r3
|
||||
/* 803B4224 003B1184 38 60 05 00 */ li r3, 0x500
|
||||
/* 803B4228 003B1188 48 00 0F 0D */ bl salMalloc
|
||||
/* 803B422C 003B118C 7C 7C 1B 78 */ mr r28, r3
|
||||
/* 803B4230 003B1190 38 00 00 10 */ li r0, 0x10
|
||||
/* 803B4234 003B1194 7F 84 E3 78 */ mr r4, r28
|
||||
/* 803B4238 003B1198 38 60 00 00 */ li r3, 0
|
||||
/* 803B423C 003B119C 7C 09 03 A6 */ mtctr r0
|
||||
lbl_803B4240:
|
||||
/* 803B4240 003B11A0 B0 64 00 00 */ sth r3, 0(r4)
|
||||
/* 803B4244 003B11A4 B0 64 00 02 */ sth r3, 2(r4)
|
||||
/* 803B4248 003B11A8 B0 64 00 04 */ sth r3, 4(r4)
|
||||
/* 803B424C 003B11AC B0 64 00 06 */ sth r3, 6(r4)
|
||||
/* 803B4250 003B11B0 B0 64 00 08 */ sth r3, 8(r4)
|
||||
/* 803B4254 003B11B4 B0 64 00 0A */ sth r3, 0xa(r4)
|
||||
/* 803B4258 003B11B8 B0 64 00 0C */ sth r3, 0xc(r4)
|
||||
/* 803B425C 003B11BC B0 64 00 0E */ sth r3, 0xe(r4)
|
||||
/* 803B4260 003B11C0 B0 64 00 10 */ sth r3, 0x10(r4)
|
||||
/* 803B4264 003B11C4 B0 64 00 12 */ sth r3, 0x12(r4)
|
||||
/* 803B4268 003B11C8 B0 64 00 14 */ sth r3, 0x14(r4)
|
||||
/* 803B426C 003B11CC B0 64 00 16 */ sth r3, 0x16(r4)
|
||||
/* 803B4270 003B11D0 B0 64 00 18 */ sth r3, 0x18(r4)
|
||||
/* 803B4274 003B11D4 B0 64 00 1A */ sth r3, 0x1a(r4)
|
||||
/* 803B4278 003B11D8 B0 64 00 1C */ sth r3, 0x1c(r4)
|
||||
/* 803B427C 003B11DC B0 64 00 1E */ sth r3, 0x1e(r4)
|
||||
/* 803B4280 003B11E0 B0 64 00 20 */ sth r3, 0x20(r4)
|
||||
/* 803B4284 003B11E4 B0 64 00 22 */ sth r3, 0x22(r4)
|
||||
/* 803B4288 003B11E8 B0 64 00 24 */ sth r3, 0x24(r4)
|
||||
/* 803B428C 003B11EC B0 64 00 26 */ sth r3, 0x26(r4)
|
||||
/* 803B4290 003B11F0 B0 64 00 28 */ sth r3, 0x28(r4)
|
||||
/* 803B4294 003B11F4 B0 64 00 2A */ sth r3, 0x2a(r4)
|
||||
/* 803B4298 003B11F8 B0 64 00 2C */ sth r3, 0x2c(r4)
|
||||
/* 803B429C 003B11FC B0 64 00 2E */ sth r3, 0x2e(r4)
|
||||
/* 803B42A0 003B1200 B0 64 00 30 */ sth r3, 0x30(r4)
|
||||
/* 803B42A4 003B1204 B0 64 00 32 */ sth r3, 0x32(r4)
|
||||
/* 803B42A8 003B1208 B0 64 00 34 */ sth r3, 0x34(r4)
|
||||
/* 803B42AC 003B120C B0 64 00 36 */ sth r3, 0x36(r4)
|
||||
/* 803B42B0 003B1210 B0 64 00 38 */ sth r3, 0x38(r4)
|
||||
/* 803B42B4 003B1214 B0 64 00 3A */ sth r3, 0x3a(r4)
|
||||
/* 803B42B8 003B1218 B0 64 00 3C */ sth r3, 0x3c(r4)
|
||||
/* 803B42BC 003B121C B0 64 00 3E */ sth r3, 0x3e(r4)
|
||||
/* 803B42C0 003B1220 B0 64 00 40 */ sth r3, 0x40(r4)
|
||||
/* 803B42C4 003B1224 B0 64 00 42 */ sth r3, 0x42(r4)
|
||||
/* 803B42C8 003B1228 B0 64 00 44 */ sth r3, 0x44(r4)
|
||||
/* 803B42CC 003B122C B0 64 00 46 */ sth r3, 0x46(r4)
|
||||
/* 803B42D0 003B1230 B0 64 00 48 */ sth r3, 0x48(r4)
|
||||
/* 803B42D4 003B1234 B0 64 00 4A */ sth r3, 0x4a(r4)
|
||||
/* 803B42D8 003B1238 B0 64 00 4C */ sth r3, 0x4c(r4)
|
||||
/* 803B42DC 003B123C B0 64 00 4E */ sth r3, 0x4e(r4)
|
||||
/* 803B42E0 003B1240 38 84 00 50 */ addi r4, r4, 0x50
|
||||
/* 803B42E4 003B1244 42 00 FF 5C */ bdnz lbl_803B4240
|
||||
/* 803B42E8 003B1248 7F 83 E3 78 */ mr r3, r28
|
||||
/* 803B42EC 003B124C 38 80 05 00 */ li r4, 0x500
|
||||
/* 803B42F0 003B1250 4B FC A7 C1 */ bl DCFlushRange
|
||||
/* 803B42F4 003B1254 3C 80 80 56 */ lis r4, lbl_80566F90@ha
|
||||
/* 803B42F8 003B1258 3C 60 80 56 */ lis r3, lbl_80567214@ha
|
||||
/* 803B42FC 003B125C 3B E4 6F 90 */ addi r31, r4, lbl_80566F90@l
|
||||
/* 803B4300 003B1260 38 00 00 00 */ li r0, 0
|
||||
/* 803B4304 003B1264 98 1F 02 81 */ stb r0, 0x281(r31)
|
||||
/* 803B4308 003B1268 38 63 72 14 */ addi r3, r3, lbl_80567214@l
|
||||
/* 803B430C 003B126C 98 1F 02 80 */ stb r0, 0x280(r31)
|
||||
/* 803B4310 003B1270 98 03 02 81 */ stb r0, 0x281(r3)
|
||||
/* 803B4314 003B1274 98 03 02 80 */ stb r0, 0x280(r3)
|
||||
lbl_803B4318:
|
||||
/* 803B4318 003B1278 4B FC D3 49 */ bl OSDisableInterrupts
|
||||
/* 803B431C 003B127C 88 1F 02 81 */ lbz r0, 0x281(r31)
|
||||
/* 803B4320 003B1280 7C 7D 1B 78 */ mr r29, r3
|
||||
/* 803B4324 003B1284 28 00 00 10 */ cmplwi r0, 0x10
|
||||
/* 803B4328 003B1288 40 80 01 60 */ bge lbl_803B4488
|
||||
/* 803B432C 003B128C 88 9F 02 80 */ lbz r4, 0x280(r31)
|
||||
/* 803B4330 003B1290 3C 60 80 3B */ lis r3, aramQueueCallback@ha
|
||||
/* 803B4334 003B1294 38 E0 00 2A */ li r7, 0x2a
|
||||
/* 803B4338 003B1298 38 00 00 00 */ li r0, 0
|
||||
/* 803B433C 003B129C 1C C4 00 28 */ mulli r6, r4, 0x28
|
||||
/* 803B4340 003B12A0 38 A0 05 00 */ li r5, 0x500
|
||||
/* 803B4344 003B12A4 38 83 3F 70 */ addi r4, r3, aramQueueCallback@l
|
||||
/* 803B4348 003B12A8 7C 7F 32 14 */ add r3, r31, r6
|
||||
/* 803B434C 003B12AC 90 E3 00 04 */ stw r7, 4(r3)
|
||||
/* 803B4350 003B12B0 88 7F 02 80 */ lbz r3, 0x280(r31)
|
||||
/* 803B4354 003B12B4 1C 63 00 28 */ mulli r3, r3, 0x28
|
||||
/* 803B4358 003B12B8 7C 7F 1A 14 */ add r3, r31, r3
|
||||
/* 803B435C 003B12BC 90 03 00 08 */ stw r0, 8(r3)
|
||||
/* 803B4360 003B12C0 88 7F 02 80 */ lbz r3, 0x280(r31)
|
||||
/* 803B4364 003B12C4 1C 63 00 28 */ mulli r3, r3, 0x28
|
||||
/* 803B4368 003B12C8 7C 7F 1A 14 */ add r3, r31, r3
|
||||
/* 803B436C 003B12CC 90 03 00 0C */ stw r0, 0xc(r3)
|
||||
/* 803B4370 003B12D0 88 7F 02 80 */ lbz r3, 0x280(r31)
|
||||
/* 803B4374 003B12D4 1C 63 00 28 */ mulli r3, r3, 0x28
|
||||
/* 803B4378 003B12D8 7C 7F 1A 14 */ add r3, r31, r3
|
||||
/* 803B437C 003B12DC 93 83 00 10 */ stw r28, 0x10(r3)
|
||||
/* 803B4380 003B12E0 88 7F 02 80 */ lbz r3, 0x280(r31)
|
||||
/* 803B4384 003B12E4 1C 63 00 28 */ mulli r3, r3, 0x28
|
||||
/* 803B4388 003B12E8 7C 7F 1A 14 */ add r3, r31, r3
|
||||
/* 803B438C 003B12EC 93 C3 00 14 */ stw r30, 0x14(r3)
|
||||
/* 803B4390 003B12F0 88 7F 02 80 */ lbz r3, 0x280(r31)
|
||||
/* 803B4394 003B12F4 1C 63 00 28 */ mulli r3, r3, 0x28
|
||||
/* 803B4398 003B12F8 7C 7F 1A 14 */ add r3, r31, r3
|
||||
/* 803B439C 003B12FC 90 A3 00 18 */ stw r5, 0x18(r3)
|
||||
/* 803B43A0 003B1300 88 7F 02 80 */ lbz r3, 0x280(r31)
|
||||
/* 803B43A4 003B1304 1C 63 00 28 */ mulli r3, r3, 0x28
|
||||
/* 803B43A8 003B1308 7C 7F 1A 14 */ add r3, r31, r3
|
||||
/* 803B43AC 003B130C 90 83 00 1C */ stw r4, 0x1c(r3)
|
||||
/* 803B43B0 003B1310 88 7F 02 80 */ lbz r3, 0x280(r31)
|
||||
/* 803B43B4 003B1314 1C 63 00 28 */ mulli r3, r3, 0x28
|
||||
/* 803B43B8 003B1318 7C 7F 1A 14 */ add r3, r31, r3
|
||||
/* 803B43BC 003B131C 90 03 00 20 */ stw r0, 0x20(r3)
|
||||
/* 803B43C0 003B1320 88 7F 02 80 */ lbz r3, 0x280(r31)
|
||||
/* 803B43C4 003B1324 1C 63 00 28 */ mulli r3, r3, 0x28
|
||||
/* 803B43C8 003B1328 7C 7F 1A 14 */ add r3, r31, r3
|
||||
/* 803B43CC 003B132C 90 03 00 24 */ stw r0, 0x24(r3)
|
||||
/* 803B43D0 003B1330 88 7F 02 80 */ lbz r3, 0x280(r31)
|
||||
/* 803B43D4 003B1334 88 1F 02 80 */ lbz r0, 0x280(r31)
|
||||
/* 803B43D8 003B1338 88 9F 02 80 */ lbz r4, 0x280(r31)
|
||||
/* 803B43DC 003B133C 1C 63 00 28 */ mulli r3, r3, 0x28
|
||||
/* 803B43E0 003B1340 88 BF 02 80 */ lbz r5, 0x280(r31)
|
||||
/* 803B43E4 003B1344 88 DF 02 80 */ lbz r6, 0x280(r31)
|
||||
/* 803B43E8 003B1348 88 FF 02 80 */ lbz r7, 0x280(r31)
|
||||
/* 803B43EC 003B134C 1D 40 00 28 */ mulli r10, r0, 0x28
|
||||
/* 803B43F0 003B1350 89 1F 02 80 */ lbz r8, 0x280(r31)
|
||||
/* 803B43F4 003B1354 7C 7F 1A 14 */ add r3, r31, r3
|
||||
/* 803B43F8 003B1358 88 1F 02 80 */ lbz r0, 0x280(r31)
|
||||
/* 803B43FC 003B135C 1D 24 00 28 */ mulli r9, r4, 0x28
|
||||
/* 803B4400 003B1360 7C 9F 52 14 */ add r4, r31, r10
|
||||
/* 803B4404 003B1364 80 84 00 04 */ lwz r4, 4(r4)
|
||||
/* 803B4408 003B1368 1D 45 00 28 */ mulli r10, r5, 0x28
|
||||
/* 803B440C 003B136C 7C BF 4A 14 */ add r5, r31, r9
|
||||
/* 803B4410 003B1370 80 A5 00 08 */ lwz r5, 8(r5)
|
||||
/* 803B4414 003B1374 1D 26 00 28 */ mulli r9, r6, 0x28
|
||||
/* 803B4418 003B1378 7C DF 52 14 */ add r6, r31, r10
|
||||
/* 803B441C 003B137C 80 C6 00 0C */ lwz r6, 0xc(r6)
|
||||
/* 803B4420 003B1380 1D 47 00 28 */ mulli r10, r7, 0x28
|
||||
/* 803B4424 003B1384 7C FF 4A 14 */ add r7, r31, r9
|
||||
/* 803B4428 003B1388 80 E7 00 10 */ lwz r7, 0x10(r7)
|
||||
/* 803B442C 003B138C 1D 28 00 28 */ mulli r9, r8, 0x28
|
||||
/* 803B4430 003B1390 7D 1F 52 14 */ add r8, r31, r10
|
||||
/* 803B4434 003B1394 81 08 00 14 */ lwz r8, 0x14(r8)
|
||||
/* 803B4438 003B1398 1C 00 00 28 */ mulli r0, r0, 0x28
|
||||
/* 803B443C 003B139C 7D 3F 4A 14 */ add r9, r31, r9
|
||||
/* 803B4440 003B13A0 81 29 00 18 */ lwz r9, 0x18(r9)
|
||||
/* 803B4444 003B13A4 7D 5F 02 14 */ add r10, r31, r0
|
||||
/* 803B4448 003B13A8 81 4A 00 1C */ lwz r10, 0x1c(r10)
|
||||
/* 803B444C 003B13AC 4B FB B2 25 */ bl ARQPostRequest
|
||||
/* 803B4450 003B13B0 88 9F 02 81 */ lbz r4, 0x281(r31)
|
||||
/* 803B4454 003B13B4 7F A3 EB 78 */ mr r3, r29
|
||||
/* 803B4458 003B13B8 38 04 00 01 */ addi r0, r4, 1
|
||||
/* 803B445C 003B13BC 98 1F 02 81 */ stb r0, 0x281(r31)
|
||||
/* 803B4460 003B13C0 88 9F 02 80 */ lbz r4, 0x280(r31)
|
||||
/* 803B4464 003B13C4 38 84 00 01 */ addi r4, r4, 1
|
||||
/* 803B4468 003B13C8 54 80 E0 06 */ slwi r0, r4, 0x1c
|
||||
/* 803B446C 003B13CC 54 84 0F FE */ srwi r4, r4, 0x1f
|
||||
/* 803B4470 003B13D0 7C 04 00 50 */ subf r0, r4, r0
|
||||
/* 803B4474 003B13D4 54 00 20 3E */ rotlwi r0, r0, 4
|
||||
/* 803B4478 003B13D8 7C 00 22 14 */ add r0, r0, r4
|
||||
/* 803B447C 003B13DC 98 1F 02 80 */ stb r0, 0x280(r31)
|
||||
/* 803B4480 003B13E0 4B FC D2 09 */ bl OSRestoreInterrupts
|
||||
/* 803B4484 003B13E4 48 00 00 0C */ b lbl_803B4490
|
||||
lbl_803B4488:
|
||||
/* 803B4488 003B13E8 4B FC D2 01 */ bl OSRestoreInterrupts
|
||||
/* 803B448C 003B13EC 4B FF FE 8C */ b lbl_803B4318
|
||||
lbl_803B4490:
|
||||
/* 803B4490 003B13F0 88 1F 02 81 */ lbz r0, 0x281(r31)
|
||||
/* 803B4494 003B13F4 28 00 00 00 */ cmplwi r0, 0
|
||||
/* 803B4498 003B13F8 40 82 FF F8 */ bne lbl_803B4490
|
||||
/* 803B449C 003B13FC 7F 83 E3 78 */ mr r3, r28
|
||||
/* 803B44A0 003B1400 48 00 0C BD */ bl salFree
|
||||
/* 803B44A4 003B1404 7C 1E DA 14 */ add r0, r30, r27
|
||||
/* 803B44A8 003B1408 90 0D AF AC */ stw r0, lbl_805A9B6C@sda21(r13)
|
||||
/* 803B44AC 003B140C 4B FB 97 11 */ bl ARGetSize
|
||||
/* 803B44B0 003B1410 80 0D AF AC */ lwz r0, lbl_805A9B6C@sda21(r13)
|
||||
/* 803B44B4 003B1414 7C 00 18 40 */ cmplw r0, r3
|
||||
/* 803B44B8 003B1418 40 81 00 0C */ ble lbl_803B44C4
|
||||
/* 803B44BC 003B141C 4B FB 97 01 */ bl ARGetSize
|
||||
/* 803B44C0 003B1420 90 6D AF AC */ stw r3, lbl_805A9B6C@sda21(r13)
|
||||
lbl_803B44C4:
|
||||
/* 803B44C4 003B1424 38 7E 05 00 */ addi r3, r30, 0x500
|
||||
/* 803B44C8 003B1428 38 00 00 00 */ li r0, 0
|
||||
/* 803B44CC 003B142C 90 6D AF A8 */ stw r3, lbl_805A9B68@sda21(r13)
|
||||
/* 803B44D0 003B1430 90 0D AF A0 */ stw r0, lbl_805A9B60@sda21(r13)
|
||||
/* 803B44D4 003B1434 48 00 04 6D */ bl InitStreamBuffers
|
||||
/* 803B44D8 003B1438 39 61 00 20 */ addi r11, r1, 0x20
|
||||
/* 803B44DC 003B143C 4B FD 55 ED */ bl _restgpr_27
|
||||
/* 803B44E0 003B1440 80 01 00 24 */ lwz r0, 0x24(r1)
|
||||
/* 803B44E4 003B1444 7C 08 03 A6 */ mtlr r0
|
||||
/* 803B44E8 003B1448 38 21 00 20 */ addi r1, r1, 0x20
|
||||
/* 803B44EC 003B144C 4E 80 00 20 */ blr
|
||||
|
||||
.global aramExit
|
||||
aramExit:
|
||||
/* 803B44F0 003B1450 4E 80 00 20 */ blr
|
||||
|
||||
.global aramGetZeroBuffer
|
||||
aramGetZeroBuffer:
|
||||
/* 803B44F4 003B1454 94 21 FF F0 */ stwu r1, -0x10(r1)
|
||||
/* 803B44F8 003B1458 7C 08 02 A6 */ mflr r0
|
||||
/* 803B44FC 003B145C 90 01 00 14 */ stw r0, 0x14(r1)
|
||||
/* 803B4500 003B1460 4B FB 96 B5 */ bl ARGetBaseAddress
|
||||
/* 803B4504 003B1464 80 01 00 14 */ lwz r0, 0x14(r1)
|
||||
/* 803B4508 003B1468 7C 08 03 A6 */ mtlr r0
|
||||
/* 803B450C 003B146C 38 21 00 10 */ addi r1, r1, 0x10
|
||||
/* 803B4510 003B1470 4E 80 00 20 */ blr
|
||||
|
||||
.global aramSetUploadCallback
|
||||
aramSetUploadCallback:
|
||||
/* 803B4514 003B1474 94 21 FF F0 */ stwu r1, -0x10(r1)
|
||||
/* 803B4518 003B1478 7C 08 02 A6 */ mflr r0
|
||||
/* 803B451C 003B147C 90 01 00 14 */ stw r0, 0x14(r1)
|
||||
/* 803B4520 003B1480 93 E1 00 0C */ stw r31, 0xc(r1)
|
||||
/* 803B4524 003B1484 93 C1 00 08 */ stw r30, 8(r1)
|
||||
/* 803B4528 003B1488 7C 7E 1B 79 */ or. r30, r3, r3
|
||||
/* 803B452C 003B148C 41 82 00 24 */ beq lbl_803B4550
|
||||
/* 803B4530 003B1490 38 04 00 1F */ addi r0, r4, 0x1f
|
||||
/* 803B4534 003B1494 54 1F 00 34 */ rlwinm r31, r0, 0, 0, 0x1a
|
||||
/* 803B4538 003B1498 4B FB B2 95 */ bl sub_8036f7cc
|
||||
/* 803B453C 003B149C 7C 1F 18 40 */ cmplw r31, r3
|
||||
/* 803B4540 003B14A0 7F E0 FB 78 */ mr r0, r31
|
||||
/* 803B4544 003B14A4 40 80 00 08 */ bge lbl_803B454C
|
||||
/* 803B4548 003B14A8 7C 60 1B 78 */ mr r0, r3
|
||||
lbl_803B454C:
|
||||
/* 803B454C 003B14AC 90 0D AF 9C */ stw r0, lbl_805A9B5C@sda21(r13)
|
||||
lbl_803B4550:
|
||||
/* 803B4550 003B14B0 93 CD AF A0 */ stw r30, lbl_805A9B60@sda21(r13)
|
||||
/* 803B4554 003B14B4 80 01 00 14 */ lwz r0, 0x14(r1)
|
||||
/* 803B4558 003B14B8 83 E1 00 0C */ lwz r31, 0xc(r1)
|
||||
/* 803B455C 003B14BC 83 C1 00 08 */ lwz r30, 8(r1)
|
||||
/* 803B4560 003B14C0 7C 08 03 A6 */ mtlr r0
|
||||
/* 803B4564 003B14C4 38 21 00 10 */ addi r1, r1, 0x10
|
||||
/* 803B4568 003B14C8 4E 80 00 20 */ blr
|
||||
|
||||
.global sub_803b456c
|
||||
sub_803b456c:
|
||||
/* 803B456C 003B14CC 94 21 FF D0 */ stwu r1, -0x30(r1)
|
||||
/* 803B4570 003B14D0 7C 08 02 A6 */ mflr r0
|
||||
/* 803B4574 003B14D4 90 01 00 34 */ stw r0, 0x34(r1)
|
||||
/* 803B4578 003B14D8 39 61 00 30 */ addi r11, r1, 0x30
|
||||
/* 803B457C 003B14DC 4B FD 54 F1 */ bl func_80389A6C
|
||||
/* 803B4580 003B14E0 80 0D AF A0 */ lwz r0, lbl_805A9B60@sda21(r13)
|
||||
/* 803B4584 003B14E4 38 84 00 1F */ addi r4, r4, 0x1f
|
||||
/* 803B4588 003B14E8 83 0D AF A8 */ lwz r24, lbl_805A9B68@sda21(r13)
|
||||
/* 803B458C 003B14EC 7C 79 1B 78 */ mr r25, r3
|
||||
/* 803B4590 003B14F0 28 00 00 00 */ cmplwi r0, 0
|
||||
/* 803B4594 003B14F4 54 97 00 34 */ rlwinm r23, r4, 0, 0, 0x1a
|
||||
/* 803B4598 003B14F8 40 82 01 A0 */ bne lbl_803B4738
|
||||
/* 803B459C 003B14FC 7E E4 BB 78 */ mr r4, r23
|
||||
/* 803B45A0 003B1500 4B FC A5 11 */ bl DCFlushRange
|
||||
/* 803B45A4 003B1504 3C 60 80 56 */ lis r3, lbl_80566F90@ha
|
||||
/* 803B45A8 003B1508 83 CD AF A8 */ lwz r30, lbl_805A9B68@sda21(r13)
|
||||
/* 803B45AC 003B150C 3B 83 6F 90 */ addi r28, r3, lbl_80566F90@l
|
||||
lbl_803B45B0:
|
||||
/* 803B45B0 003B1510 4B FC D0 B1 */ bl OSDisableInterrupts
|
||||
/* 803B45B4 003B1514 88 1C 02 81 */ lbz r0, 0x281(r28)
|
||||
/* 803B45B8 003B1518 7C 7D 1B 78 */ mr r29, r3
|
||||
/* 803B45BC 003B151C 28 00 00 10 */ cmplwi r0, 0x10
|
||||
/* 803B45C0 003B1520 40 80 01 5C */ bge lbl_803B471C
|
||||
/* 803B45C4 003B1524 88 9C 02 80 */ lbz r4, 0x280(r28)
|
||||
/* 803B45C8 003B1528 3C 60 80 3B */ lis r3, aramQueueCallback@ha
|
||||
/* 803B45CC 003B152C 38 C0 00 2A */ li r6, 0x2a
|
||||
/* 803B45D0 003B1530 38 00 00 00 */ li r0, 0
|
||||
/* 803B45D4 003B1534 1C A4 00 28 */ mulli r5, r4, 0x28
|
||||
/* 803B45D8 003B1538 38 83 3F 70 */ addi r4, r3, aramQueueCallback@l
|
||||
/* 803B45DC 003B153C 7C 7C 2A 14 */ add r3, r28, r5
|
||||
/* 803B45E0 003B1540 90 C3 00 04 */ stw r6, 4(r3)
|
||||
/* 803B45E4 003B1544 88 7C 02 80 */ lbz r3, 0x280(r28)
|
||||
/* 803B45E8 003B1548 1C 63 00 28 */ mulli r3, r3, 0x28
|
||||
/* 803B45EC 003B154C 7C 7C 1A 14 */ add r3, r28, r3
|
||||
/* 803B45F0 003B1550 90 03 00 08 */ stw r0, 8(r3)
|
||||
/* 803B45F4 003B1554 88 7C 02 80 */ lbz r3, 0x280(r28)
|
||||
/* 803B45F8 003B1558 1C 63 00 28 */ mulli r3, r3, 0x28
|
||||
/* 803B45FC 003B155C 7C 7C 1A 14 */ add r3, r28, r3
|
||||
/* 803B4600 003B1560 90 03 00 0C */ stw r0, 0xc(r3)
|
||||
/* 803B4604 003B1564 88 7C 02 80 */ lbz r3, 0x280(r28)
|
||||
/* 803B4608 003B1568 1C 63 00 28 */ mulli r3, r3, 0x28
|
||||
/* 803B460C 003B156C 7C 7C 1A 14 */ add r3, r28, r3
|
||||
/* 803B4610 003B1570 93 23 00 10 */ stw r25, 0x10(r3)
|
||||
/* 803B4614 003B1574 88 7C 02 80 */ lbz r3, 0x280(r28)
|
||||
/* 803B4618 003B1578 1C 63 00 28 */ mulli r3, r3, 0x28
|
||||
/* 803B461C 003B157C 7C 7C 1A 14 */ add r3, r28, r3
|
||||
/* 803B4620 003B1580 93 C3 00 14 */ stw r30, 0x14(r3)
|
||||
/* 803B4624 003B1584 88 7C 02 80 */ lbz r3, 0x280(r28)
|
||||
/* 803B4628 003B1588 1C 63 00 28 */ mulli r3, r3, 0x28
|
||||
/* 803B462C 003B158C 7C 7C 1A 14 */ add r3, r28, r3
|
||||
/* 803B4630 003B1590 92 E3 00 18 */ stw r23, 0x18(r3)
|
||||
/* 803B4634 003B1594 88 7C 02 80 */ lbz r3, 0x280(r28)
|
||||
/* 803B4638 003B1598 1C 63 00 28 */ mulli r3, r3, 0x28
|
||||
/* 803B463C 003B159C 7C 7C 1A 14 */ add r3, r28, r3
|
||||
/* 803B4640 003B15A0 90 83 00 1C */ stw r4, 0x1c(r3)
|
||||
/* 803B4644 003B15A4 88 7C 02 80 */ lbz r3, 0x280(r28)
|
||||
/* 803B4648 003B15A8 1C 63 00 28 */ mulli r3, r3, 0x28
|
||||
/* 803B464C 003B15AC 7C 7C 1A 14 */ add r3, r28, r3
|
||||
/* 803B4650 003B15B0 90 03 00 20 */ stw r0, 0x20(r3)
|
||||
/* 803B4654 003B15B4 88 7C 02 80 */ lbz r3, 0x280(r28)
|
||||
/* 803B4658 003B15B8 1C 63 00 28 */ mulli r3, r3, 0x28
|
||||
/* 803B465C 003B15BC 7C 7C 1A 14 */ add r3, r28, r3
|
||||
/* 803B4660 003B15C0 90 03 00 24 */ stw r0, 0x24(r3)
|
||||
/* 803B4664 003B15C4 88 7C 02 80 */ lbz r3, 0x280(r28)
|
||||
/* 803B4668 003B15C8 88 1C 02 80 */ lbz r0, 0x280(r28)
|
||||
/* 803B466C 003B15CC 88 9C 02 80 */ lbz r4, 0x280(r28)
|
||||
/* 803B4670 003B15D0 1C 63 00 28 */ mulli r3, r3, 0x28
|
||||
/* 803B4674 003B15D4 88 BC 02 80 */ lbz r5, 0x280(r28)
|
||||
/* 803B4678 003B15D8 88 DC 02 80 */ lbz r6, 0x280(r28)
|
||||
/* 803B467C 003B15DC 88 FC 02 80 */ lbz r7, 0x280(r28)
|
||||
/* 803B4680 003B15E0 1D 40 00 28 */ mulli r10, r0, 0x28
|
||||
/* 803B4684 003B15E4 89 1C 02 80 */ lbz r8, 0x280(r28)
|
||||
/* 803B4688 003B15E8 7C 7C 1A 14 */ add r3, r28, r3
|
||||
/* 803B468C 003B15EC 88 1C 02 80 */ lbz r0, 0x280(r28)
|
||||
/* 803B4690 003B15F0 1D 24 00 28 */ mulli r9, r4, 0x28
|
||||
/* 803B4694 003B15F4 7C 9C 52 14 */ add r4, r28, r10
|
||||
/* 803B4698 003B15F8 80 84 00 04 */ lwz r4, 4(r4)
|
||||
/* 803B469C 003B15FC 1D 45 00 28 */ mulli r10, r5, 0x28
|
||||
/* 803B46A0 003B1600 7C BC 4A 14 */ add r5, r28, r9
|
||||
/* 803B46A4 003B1604 80 A5 00 08 */ lwz r5, 8(r5)
|
||||
/* 803B46A8 003B1608 1D 26 00 28 */ mulli r9, r6, 0x28
|
||||
/* 803B46AC 003B160C 7C DC 52 14 */ add r6, r28, r10
|
||||
/* 803B46B0 003B1610 80 C6 00 0C */ lwz r6, 0xc(r6)
|
||||
/* 803B46B4 003B1614 1D 47 00 28 */ mulli r10, r7, 0x28
|
||||
/* 803B46B8 003B1618 7C FC 4A 14 */ add r7, r28, r9
|
||||
/* 803B46BC 003B161C 80 E7 00 10 */ lwz r7, 0x10(r7)
|
||||
/* 803B46C0 003B1620 1D 28 00 28 */ mulli r9, r8, 0x28
|
||||
/* 803B46C4 003B1624 7D 1C 52 14 */ add r8, r28, r10
|
||||
/* 803B46C8 003B1628 81 08 00 14 */ lwz r8, 0x14(r8)
|
||||
/* 803B46CC 003B162C 1C 00 00 28 */ mulli r0, r0, 0x28
|
||||
/* 803B46D0 003B1630 7D 3C 4A 14 */ add r9, r28, r9
|
||||
/* 803B46D4 003B1634 81 29 00 18 */ lwz r9, 0x18(r9)
|
||||
/* 803B46D8 003B1638 7D 5C 02 14 */ add r10, r28, r0
|
||||
/* 803B46DC 003B163C 81 4A 00 1C */ lwz r10, 0x1c(r10)
|
||||
/* 803B46E0 003B1640 4B FB AF 91 */ bl ARQPostRequest
|
||||
/* 803B46E4 003B1644 88 9C 02 81 */ lbz r4, 0x281(r28)
|
||||
/* 803B46E8 003B1648 7F A3 EB 78 */ mr r3, r29
|
||||
/* 803B46EC 003B164C 38 04 00 01 */ addi r0, r4, 1
|
||||
/* 803B46F0 003B1650 98 1C 02 81 */ stb r0, 0x281(r28)
|
||||
/* 803B46F4 003B1654 88 9C 02 80 */ lbz r4, 0x280(r28)
|
||||
/* 803B46F8 003B1658 38 84 00 01 */ addi r4, r4, 1
|
||||
/* 803B46FC 003B165C 54 80 E0 06 */ slwi r0, r4, 0x1c
|
||||
/* 803B4700 003B1660 54 84 0F FE */ srwi r4, r4, 0x1f
|
||||
/* 803B4704 003B1664 7C 04 00 50 */ subf r0, r4, r0
|
||||
/* 803B4708 003B1668 54 00 20 3E */ rotlwi r0, r0, 4
|
||||
/* 803B470C 003B166C 7C 00 22 14 */ add r0, r0, r4
|
||||
/* 803B4710 003B1670 98 1C 02 80 */ stb r0, 0x280(r28)
|
||||
/* 803B4714 003B1674 4B FC CF 75 */ bl OSRestoreInterrupts
|
||||
/* 803B4718 003B1678 48 00 00 0C */ b lbl_803B4724
|
||||
lbl_803B471C:
|
||||
/* 803B471C 003B167C 4B FC CF 6D */ bl OSRestoreInterrupts
|
||||
/* 803B4720 003B1680 4B FF FE 90 */ b lbl_803B45B0
|
||||
lbl_803B4724:
|
||||
/* 803B4724 003B1684 80 0D AF A8 */ lwz r0, lbl_805A9B68@sda21(r13)
|
||||
/* 803B4728 003B1688 7F 03 C3 78 */ mr r3, r24
|
||||
/* 803B472C 003B168C 7C 00 BA 14 */ add r0, r0, r23
|
||||
/* 803B4730 003B1690 90 0D AF A8 */ stw r0, lbl_805A9B68@sda21(r13)
|
||||
/* 803B4734 003B1694 48 00 01 DC */ b lbl_803B4910
|
||||
lbl_803B4738:
|
||||
/* 803B4738 003B1698 3C 80 80 56 */ lis r4, lbl_80566F90@ha
|
||||
/* 803B473C 003B169C 3C 60 80 3B */ lis r3, aramQueueCallback@ha
|
||||
/* 803B4740 003B16A0 3B C4 6F 90 */ addi r30, r4, lbl_80566F90@l
|
||||
/* 803B4744 003B16A4 3B E3 3F 70 */ addi r31, r3, aramQueueCallback@l
|
||||
/* 803B4748 003B16A8 48 00 01 BC */ b lbl_803B4904
|
||||
lbl_803B474C:
|
||||
/* 803B474C 003B16AC 80 0D AF 9C */ lwz r0, lbl_805A9B5C@sda21(r13)
|
||||
/* 803B4750 003B16B0 7E FC BB 78 */ mr r28, r23
|
||||
/* 803B4754 003B16B4 7C 17 00 40 */ cmplw r23, r0
|
||||
/* 803B4758 003B16B8 41 80 00 08 */ blt lbl_803B4760
|
||||
/* 803B475C 003B16BC 7C 1C 03 78 */ mr r28, r0
|
||||
lbl_803B4760:
|
||||
/* 803B4760 003B16C0 81 8D AF A0 */ lwz r12, lbl_805A9B60@sda21(r13)
|
||||
/* 803B4764 003B16C4 7F 23 CB 78 */ mr r3, r25
|
||||
/* 803B4768 003B16C8 7F 84 E3 78 */ mr r4, r28
|
||||
/* 803B476C 003B16CC 7D 89 03 A6 */ mtctr r12
|
||||
/* 803B4770 003B16D0 4E 80 04 21 */ bctrl
|
||||
/* 803B4774 003B16D4 7C 7D 1B 78 */ mr r29, r3
|
||||
/* 803B4778 003B16D8 7F 84 E3 78 */ mr r4, r28
|
||||
/* 803B477C 003B16DC 4B FC A3 35 */ bl DCFlushRange
|
||||
/* 803B4780 003B16E0 83 4D AF A8 */ lwz r26, lbl_805A9B68@sda21(r13)
|
||||
lbl_803B4784:
|
||||
/* 803B4784 003B16E4 4B FC CE DD */ bl OSDisableInterrupts
|
||||
/* 803B4788 003B16E8 88 1E 02 81 */ lbz r0, 0x281(r30)
|
||||
/* 803B478C 003B16EC 7C 7B 1B 78 */ mr r27, r3
|
||||
/* 803B4790 003B16F0 28 00 00 10 */ cmplwi r0, 0x10
|
||||
/* 803B4794 003B16F4 40 80 01 54 */ bge lbl_803B48E8
|
||||
/* 803B4798 003B16F8 88 7E 02 80 */ lbz r3, 0x280(r30)
|
||||
/* 803B479C 003B16FC 38 80 00 2A */ li r4, 0x2a
|
||||
/* 803B47A0 003B1700 38 00 00 00 */ li r0, 0
|
||||
/* 803B47A4 003B1704 1C 63 00 28 */ mulli r3, r3, 0x28
|
||||
/* 803B47A8 003B1708 38 63 00 04 */ addi r3, r3, 4
|
||||
/* 803B47AC 003B170C 7C 9E 19 2E */ stwx r4, r30, r3
|
||||
/* 803B47B0 003B1710 88 7E 02 80 */ lbz r3, 0x280(r30)
|
||||
/* 803B47B4 003B1714 1C 63 00 28 */ mulli r3, r3, 0x28
|
||||
/* 803B47B8 003B1718 38 63 00 08 */ addi r3, r3, 8
|
||||
/* 803B47BC 003B171C 7C 1E 19 2E */ stwx r0, r30, r3
|
||||
/* 803B47C0 003B1720 88 7E 02 80 */ lbz r3, 0x280(r30)
|
||||
/* 803B47C4 003B1724 1C 63 00 28 */ mulli r3, r3, 0x28
|
||||
/* 803B47C8 003B1728 38 63 00 0C */ addi r3, r3, 0xc
|
||||
/* 803B47CC 003B172C 7C 1E 19 2E */ stwx r0, r30, r3
|
||||
/* 803B47D0 003B1730 88 7E 02 80 */ lbz r3, 0x280(r30)
|
||||
/* 803B47D4 003B1734 1C 63 00 28 */ mulli r3, r3, 0x28
|
||||
/* 803B47D8 003B1738 38 63 00 10 */ addi r3, r3, 0x10
|
||||
/* 803B47DC 003B173C 7F BE 19 2E */ stwx r29, r30, r3
|
||||
/* 803B47E0 003B1740 88 7E 02 80 */ lbz r3, 0x280(r30)
|
||||
/* 803B47E4 003B1744 1C 63 00 28 */ mulli r3, r3, 0x28
|
||||
/* 803B47E8 003B1748 38 63 00 14 */ addi r3, r3, 0x14
|
||||
/* 803B47EC 003B174C 7F 5E 19 2E */ stwx r26, r30, r3
|
||||
/* 803B47F0 003B1750 88 7E 02 80 */ lbz r3, 0x280(r30)
|
||||
/* 803B47F4 003B1754 1C 63 00 28 */ mulli r3, r3, 0x28
|
||||
/* 803B47F8 003B1758 38 63 00 18 */ addi r3, r3, 0x18
|
||||
/* 803B47FC 003B175C 7F 9E 19 2E */ stwx r28, r30, r3
|
||||
/* 803B4800 003B1760 88 7E 02 80 */ lbz r3, 0x280(r30)
|
||||
/* 803B4804 003B1764 1C 63 00 28 */ mulli r3, r3, 0x28
|
||||
/* 803B4808 003B1768 38 63 00 1C */ addi r3, r3, 0x1c
|
||||
/* 803B480C 003B176C 7F FE 19 2E */ stwx r31, r30, r3
|
||||
/* 803B4810 003B1770 88 7E 02 80 */ lbz r3, 0x280(r30)
|
||||
/* 803B4814 003B1774 1C 63 00 28 */ mulli r3, r3, 0x28
|
||||
/* 803B4818 003B1778 38 63 00 20 */ addi r3, r3, 0x20
|
||||
/* 803B481C 003B177C 7C 1E 19 2E */ stwx r0, r30, r3
|
||||
/* 803B4820 003B1780 88 7E 02 80 */ lbz r3, 0x280(r30)
|
||||
/* 803B4824 003B1784 1C 63 00 28 */ mulli r3, r3, 0x28
|
||||
/* 803B4828 003B1788 38 63 00 24 */ addi r3, r3, 0x24
|
||||
/* 803B482C 003B178C 7C 1E 19 2E */ stwx r0, r30, r3
|
||||
/* 803B4830 003B1790 88 7E 02 80 */ lbz r3, 0x280(r30)
|
||||
/* 803B4834 003B1794 88 1E 02 80 */ lbz r0, 0x280(r30)
|
||||
/* 803B4838 003B1798 88 9E 02 80 */ lbz r4, 0x280(r30)
|
||||
/* 803B483C 003B179C 1C 63 00 28 */ mulli r3, r3, 0x28
|
||||
/* 803B4840 003B17A0 88 BE 02 80 */ lbz r5, 0x280(r30)
|
||||
/* 803B4844 003B17A4 88 DE 02 80 */ lbz r6, 0x280(r30)
|
||||
/* 803B4848 003B17A8 88 FE 02 80 */ lbz r7, 0x280(r30)
|
||||
/* 803B484C 003B17AC 1D 40 00 28 */ mulli r10, r0, 0x28
|
||||
/* 803B4850 003B17B0 89 1E 02 80 */ lbz r8, 0x280(r30)
|
||||
/* 803B4854 003B17B4 7C 7E 1A 14 */ add r3, r30, r3
|
||||
/* 803B4858 003B17B8 88 1E 02 80 */ lbz r0, 0x280(r30)
|
||||
/* 803B485C 003B17BC 1D 24 00 28 */ mulli r9, r4, 0x28
|
||||
/* 803B4860 003B17C0 38 8A 00 04 */ addi r4, r10, 4
|
||||
/* 803B4864 003B17C4 7C 9E 20 2E */ lwzx r4, r30, r4
|
||||
/* 803B4868 003B17C8 1D 45 00 28 */ mulli r10, r5, 0x28
|
||||
/* 803B486C 003B17CC 38 A9 00 08 */ addi r5, r9, 8
|
||||
/* 803B4870 003B17D0 7C BE 28 2E */ lwzx r5, r30, r5
|
||||
/* 803B4874 003B17D4 1D 26 00 28 */ mulli r9, r6, 0x28
|
||||
/* 803B4878 003B17D8 38 CA 00 0C */ addi r6, r10, 0xc
|
||||
/* 803B487C 003B17DC 7C DE 30 2E */ lwzx r6, r30, r6
|
||||
/* 803B4880 003B17E0 1D 47 00 28 */ mulli r10, r7, 0x28
|
||||
/* 803B4884 003B17E4 38 E9 00 10 */ addi r7, r9, 0x10
|
||||
/* 803B4888 003B17E8 7C FE 38 2E */ lwzx r7, r30, r7
|
||||
/* 803B488C 003B17EC 1D 28 00 28 */ mulli r9, r8, 0x28
|
||||
/* 803B4890 003B17F0 39 0A 00 14 */ addi r8, r10, 0x14
|
||||
/* 803B4894 003B17F4 7D 1E 40 2E */ lwzx r8, r30, r8
|
||||
/* 803B4898 003B17F8 1D 40 00 28 */ mulli r10, r0, 0x28
|
||||
/* 803B489C 003B17FC 38 09 00 18 */ addi r0, r9, 0x18
|
||||
/* 803B48A0 003B1800 7D 3E 00 2E */ lwzx r9, r30, r0
|
||||
/* 803B48A4 003B1804 38 0A 00 1C */ addi r0, r10, 0x1c
|
||||
/* 803B48A8 003B1808 7D 5E 00 2E */ lwzx r10, r30, r0
|
||||
/* 803B48AC 003B180C 4B FB AD C5 */ bl ARQPostRequest
|
||||
/* 803B48B0 003B1810 88 9E 02 81 */ lbz r4, 0x281(r30)
|
||||
/* 803B48B4 003B1814 7F 63 DB 78 */ mr r3, r27
|
||||
/* 803B48B8 003B1818 38 04 00 01 */ addi r0, r4, 1
|
||||
/* 803B48BC 003B181C 98 1E 02 81 */ stb r0, 0x281(r30)
|
||||
/* 803B48C0 003B1820 88 9E 02 80 */ lbz r4, 0x280(r30)
|
||||
/* 803B48C4 003B1824 38 84 00 01 */ addi r4, r4, 1
|
||||
/* 803B48C8 003B1828 54 80 E0 06 */ slwi r0, r4, 0x1c
|
||||
/* 803B48CC 003B182C 54 84 0F FE */ srwi r4, r4, 0x1f
|
||||
/* 803B48D0 003B1830 7C 04 00 50 */ subf r0, r4, r0
|
||||
/* 803B48D4 003B1834 54 00 20 3E */ rotlwi r0, r0, 4
|
||||
/* 803B48D8 003B1838 7C 00 22 14 */ add r0, r0, r4
|
||||
/* 803B48DC 003B183C 98 1E 02 80 */ stb r0, 0x280(r30)
|
||||
/* 803B48E0 003B1840 4B FC CD A9 */ bl OSRestoreInterrupts
|
||||
/* 803B48E4 003B1844 48 00 00 0C */ b lbl_803B48F0
|
||||
lbl_803B48E8:
|
||||
/* 803B48E8 003B1848 4B FC CD A1 */ bl OSRestoreInterrupts
|
||||
/* 803B48EC 003B184C 4B FF FE 98 */ b lbl_803B4784
|
||||
lbl_803B48F0:
|
||||
/* 803B48F0 003B1850 80 0D AF A8 */ lwz r0, lbl_805A9B68@sda21(r13)
|
||||
/* 803B48F4 003B1854 7E FC B8 50 */ subf r23, r28, r23
|
||||
/* 803B48F8 003B1858 7F 39 E2 14 */ add r25, r25, r28
|
||||
/* 803B48FC 003B185C 7C 00 E2 14 */ add r0, r0, r28
|
||||
/* 803B4900 003B1860 90 0D AF A8 */ stw r0, lbl_805A9B68@sda21(r13)
|
||||
lbl_803B4904:
|
||||
/* 803B4904 003B1864 28 17 00 00 */ cmplwi r23, 0
|
||||
/* 803B4908 003B1868 40 82 FE 44 */ bne lbl_803B474C
|
||||
/* 803B490C 003B186C 7F 03 C3 78 */ mr r3, r24
|
||||
lbl_803B4910:
|
||||
/* 803B4910 003B1870 39 61 00 30 */ addi r11, r1, 0x30
|
||||
/* 803B4914 003B1874 4B FD 51 A5 */ bl _restgpr_23
|
||||
/* 803B4918 003B1878 80 01 00 34 */ lwz r0, 0x34(r1)
|
||||
/* 803B491C 003B187C 7C 08 03 A6 */ mtlr r0
|
||||
/* 803B4920 003B1880 38 21 00 30 */ addi r1, r1, 0x30
|
||||
/* 803B4924 003B1884 4E 80 00 20 */ blr
|
||||
|
||||
.global sub_803b4928
|
||||
sub_803b4928:
|
||||
/* 803B4928 003B1888 38 64 00 1F */ addi r3, r4, 0x1f
|
||||
/* 803B492C 003B188C 80 0D AF A8 */ lwz r0, lbl_805A9B68@sda21(r13)
|
||||
/* 803B4930 003B1890 54 63 00 34 */ rlwinm r3, r3, 0, 0, 0x1a
|
||||
/* 803B4934 003B1894 7C 03 00 50 */ subf r0, r3, r0
|
||||
/* 803B4938 003B1898 90 0D AF A8 */ stw r0, lbl_805A9B68@sda21(r13)
|
||||
/* 803B493C 003B189C 4E 80 00 20 */ blr
|
||||
|
||||
.global InitStreamBuffers
|
||||
InitStreamBuffers:
|
||||
/* 803B4940 003B18A0 3C 60 80 56 */ lis r3, lbl_80567498@ha
|
||||
/* 803B4944 003B18A4 38 80 00 00 */ li r4, 0
|
||||
/* 803B4948 003B18A8 38 63 74 98 */ addi r3, r3, lbl_80567498@l
|
||||
/* 803B494C 003B18AC 38 00 00 07 */ li r0, 7
|
||||
/* 803B4950 003B18B0 90 8D AF 98 */ stw r4, lbl_805A9B58@sda21(r13)
|
||||
/* 803B4954 003B18B4 38 E3 00 10 */ addi r7, r3, 0x10
|
||||
/* 803B4958 003B18B8 39 00 00 01 */ li r8, 1
|
||||
/* 803B495C 003B18BC 90 8D AF 94 */ stw r4, lbl_805A9B54@sda21(r13)
|
||||
/* 803B4960 003B18C0 90 6D AF 90 */ stw r3, lbl_805A9B50@sda21(r13)
|
||||
/* 803B4964 003B18C4 7C 09 03 A6 */ mtctr r0
|
||||
lbl_803B4968:
|
||||
/* 803B4968 003B18C8 90 E7 FF F0 */ stw r7, -0x10(r7)
|
||||
/* 803B496C 003B18CC 38 67 00 10 */ addi r3, r7, 0x10
|
||||
/* 803B4970 003B18D0 38 07 00 20 */ addi r0, r7, 0x20
|
||||
/* 803B4974 003B18D4 38 C7 00 30 */ addi r6, r7, 0x30
|
||||
/* 803B4978 003B18D8 90 67 00 00 */ stw r3, 0(r7)
|
||||
/* 803B497C 003B18DC 38 A7 00 40 */ addi r5, r7, 0x40
|
||||
/* 803B4980 003B18E0 38 87 00 50 */ addi r4, r7, 0x50
|
||||
/* 803B4984 003B18E4 38 67 00 60 */ addi r3, r7, 0x60
|
||||
/* 803B4988 003B18E8 90 07 00 10 */ stw r0, 0x10(r7)
|
||||
/* 803B498C 003B18EC 38 07 00 70 */ addi r0, r7, 0x70
|
||||
/* 803B4990 003B18F0 39 08 00 08 */ addi r8, r8, 8
|
||||
/* 803B4994 003B18F4 90 C7 00 20 */ stw r6, 0x20(r7)
|
||||
/* 803B4998 003B18F8 90 A7 00 30 */ stw r5, 0x30(r7)
|
||||
/* 803B499C 003B18FC 90 87 00 40 */ stw r4, 0x40(r7)
|
||||
/* 803B49A0 003B1900 90 67 00 50 */ stw r3, 0x50(r7)
|
||||
/* 803B49A4 003B1904 90 07 00 60 */ stw r0, 0x60(r7)
|
||||
/* 803B49A8 003B1908 38 E7 00 80 */ addi r7, r7, 0x80
|
||||
/* 803B49AC 003B190C 42 00 FF BC */ bdnz lbl_803B4968
|
||||
/* 803B49B0 003B1910 3C 60 80 56 */ lis r3, lbl_80567498@ha
|
||||
/* 803B49B4 003B1914 55 04 20 36 */ slwi r4, r8, 4
|
||||
/* 803B49B8 003B1918 38 63 74 98 */ addi r3, r3, lbl_80567498@l
|
||||
/* 803B49BC 003B191C 20 08 00 40 */ subfic r0, r8, 0x40
|
||||
/* 803B49C0 003B1920 7C 63 22 14 */ add r3, r3, r4
|
||||
/* 803B49C4 003B1924 7C 09 03 A6 */ mtctr r0
|
||||
/* 803B49C8 003B1928 28 08 00 40 */ cmplwi r8, 0x40
|
||||
/* 803B49CC 003B192C 40 80 00 14 */ bge lbl_803B49E0
|
||||
lbl_803B49D0:
|
||||
/* 803B49D0 003B1930 90 63 FF F0 */ stw r3, -0x10(r3)
|
||||
/* 803B49D4 003B1934 38 63 00 10 */ addi r3, r3, 0x10
|
||||
/* 803B49D8 003B1938 39 08 00 01 */ addi r8, r8, 1
|
||||
/* 803B49DC 003B193C 42 00 FF F4 */ bdnz lbl_803B49D0
|
||||
lbl_803B49E0:
|
||||
/* 803B49E0 003B1940 3C 60 80 56 */ lis r3, lbl_80567498@ha
|
||||
/* 803B49E4 003B1944 80 0D AF AC */ lwz r0, lbl_805A9B6C@sda21(r13)
|
||||
/* 803B49E8 003B1948 38 83 74 98 */ addi r4, r3, lbl_80567498@l
|
||||
/* 803B49EC 003B194C 55 03 20 36 */ slwi r3, r8, 4
|
||||
/* 803B49F0 003B1950 7C 64 1A 14 */ add r3, r4, r3
|
||||
/* 803B49F4 003B1954 38 80 00 00 */ li r4, 0
|
||||
/* 803B49F8 003B1958 90 83 FF F0 */ stw r4, -0x10(r3)
|
||||
/* 803B49FC 003B195C 90 0D AF A4 */ stw r0, lbl_805A9B64@sda21(r13)
|
||||
/* 803B4A00 003B1960 4E 80 00 20 */ blr
|
||||
|
||||
.global sub_803b4a04
|
||||
sub_803b4a04:
|
||||
/* 803B4A04 003B1964 38 03 00 1F */ addi r0, r3, 0x1f
|
||||
/* 803B4A08 003B1968 80 6D AF 94 */ lwz r3, lbl_805A9B54@sda21(r13)
|
||||
/* 803B4A0C 003B196C 54 07 00 34 */ rlwinm r7, r0, 0, 0, 0x1a
|
||||
/* 803B4A10 003B1970 38 A0 00 00 */ li r5, 0
|
||||
/* 803B4A14 003B1974 38 80 00 00 */ li r4, 0
|
||||
/* 803B4A18 003B1978 38 C0 FF FF */ li r6, -1
|
||||
/* 803B4A1C 003B197C 48 00 00 34 */ b lbl_803B4A50
|
||||
lbl_803B4A20:
|
||||
/* 803B4A20 003B1980 80 03 00 0C */ lwz r0, 0xc(r3)
|
||||
/* 803B4A24 003B1984 7C 00 38 40 */ cmplw r0, r7
|
||||
/* 803B4A28 003B1988 40 82 00 0C */ bne lbl_803B4A34
|
||||
/* 803B4A2C 003B198C 7C 65 1B 78 */ mr r5, r3
|
||||
/* 803B4A30 003B1990 48 00 00 28 */ b lbl_803B4A58
|
||||
lbl_803B4A34:
|
||||
/* 803B4A34 003B1994 40 81 00 14 */ ble lbl_803B4A48
|
||||
/* 803B4A38 003B1998 7C 06 00 40 */ cmplw r6, r0
|
||||
/* 803B4A3C 003B199C 40 81 00 0C */ ble lbl_803B4A48
|
||||
/* 803B4A40 003B19A0 7C 65 1B 78 */ mr r5, r3
|
||||
/* 803B4A44 003B19A4 7C 06 03 78 */ mr r6, r0
|
||||
lbl_803B4A48:
|
||||
/* 803B4A48 003B19A8 7C 64 1B 78 */ mr r4, r3
|
||||
/* 803B4A4C 003B19AC 80 63 00 00 */ lwz r3, 0(r3)
|
||||
lbl_803B4A50:
|
||||
/* 803B4A50 003B19B0 28 03 00 00 */ cmplwi r3, 0
|
||||
/* 803B4A54 003B19B4 40 82 FF CC */ bne lbl_803B4A20
|
||||
lbl_803B4A58:
|
||||
/* 803B4A58 003B19B8 28 05 00 00 */ cmplwi r5, 0
|
||||
/* 803B4A5C 003B19BC 40 82 00 58 */ bne lbl_803B4AB4
|
||||
/* 803B4A60 003B19C0 80 8D AF 90 */ lwz r4, lbl_805A9B50@sda21(r13)
|
||||
/* 803B4A64 003B19C4 28 04 00 00 */ cmplwi r4, 0
|
||||
/* 803B4A68 003B19C8 41 82 00 78 */ beq lbl_803B4AE0
|
||||
/* 803B4A6C 003B19CC 80 6D AF A4 */ lwz r3, lbl_805A9B64@sda21(r13)
|
||||
/* 803B4A70 003B19D0 80 0D AF A8 */ lwz r0, lbl_805A9B68@sda21(r13)
|
||||
/* 803B4A74 003B19D4 7C 67 18 50 */ subf r3, r7, r3
|
||||
/* 803B4A78 003B19D8 7C 03 00 40 */ cmplw r3, r0
|
||||
/* 803B4A7C 003B19DC 41 80 00 64 */ blt lbl_803B4AE0
|
||||
/* 803B4A80 003B19E0 80 04 00 00 */ lwz r0, 0(r4)
|
||||
/* 803B4A84 003B19E4 7C 85 23 78 */ mr r5, r4
|
||||
/* 803B4A88 003B19E8 90 0D AF 90 */ stw r0, lbl_805A9B50@sda21(r13)
|
||||
/* 803B4A8C 003B19EC 90 E4 00 0C */ stw r7, 0xc(r4)
|
||||
/* 803B4A90 003B19F0 90 E4 00 08 */ stw r7, 8(r4)
|
||||
/* 803B4A94 003B19F4 80 0D AF A4 */ lwz r0, lbl_805A9B64@sda21(r13)
|
||||
/* 803B4A98 003B19F8 7C 07 00 50 */ subf r0, r7, r0
|
||||
/* 803B4A9C 003B19FC 90 0D AF A4 */ stw r0, lbl_805A9B64@sda21(r13)
|
||||
/* 803B4AA0 003B1A00 90 04 00 04 */ stw r0, 4(r4)
|
||||
/* 803B4AA4 003B1A04 80 0D AF 98 */ lwz r0, lbl_805A9B58@sda21(r13)
|
||||
/* 803B4AA8 003B1A08 90 04 00 00 */ stw r0, 0(r4)
|
||||
/* 803B4AAC 003B1A0C 90 8D AF 98 */ stw r4, lbl_805A9B58@sda21(r13)
|
||||
/* 803B4AB0 003B1A10 48 00 00 30 */ b lbl_803B4AE0
|
||||
lbl_803B4AB4:
|
||||
/* 803B4AB4 003B1A14 28 04 00 00 */ cmplwi r4, 0
|
||||
/* 803B4AB8 003B1A18 41 82 00 10 */ beq lbl_803B4AC8
|
||||
/* 803B4ABC 003B1A1C 80 05 00 00 */ lwz r0, 0(r5)
|
||||
/* 803B4AC0 003B1A20 90 04 00 00 */ stw r0, 0(r4)
|
||||
/* 803B4AC4 003B1A24 48 00 00 0C */ b lbl_803B4AD0
|
||||
lbl_803B4AC8:
|
||||
/* 803B4AC8 003B1A28 80 05 00 00 */ lwz r0, 0(r5)
|
||||
/* 803B4ACC 003B1A2C 90 0D AF 94 */ stw r0, lbl_805A9B54@sda21(r13)
|
||||
lbl_803B4AD0:
|
||||
/* 803B4AD0 003B1A30 90 E5 00 08 */ stw r7, 8(r5)
|
||||
/* 803B4AD4 003B1A34 80 0D AF 98 */ lwz r0, lbl_805A9B58@sda21(r13)
|
||||
/* 803B4AD8 003B1A38 90 05 00 00 */ stw r0, 0(r5)
|
||||
/* 803B4ADC 003B1A3C 90 AD AF 98 */ stw r5, lbl_805A9B58@sda21(r13)
|
||||
lbl_803B4AE0:
|
||||
/* 803B4AE0 003B1A40 28 05 00 00 */ cmplwi r5, 0
|
||||
/* 803B4AE4 003B1A44 40 82 00 0C */ bne lbl_803B4AF0
|
||||
/* 803B4AE8 003B1A48 38 60 00 FF */ li r3, 0xff
|
||||
/* 803B4AEC 003B1A4C 4E 80 00 20 */ blr
|
||||
lbl_803B4AF0:
|
||||
/* 803B4AF0 003B1A50 3C 60 80 56 */ lis r3, lbl_80567498@ha
|
||||
/* 803B4AF4 003B1A54 38 03 74 98 */ addi r0, r3, lbl_80567498@l
|
||||
/* 803B4AF8 003B1A58 7C 00 28 50 */ subf r0, r0, r5
|
||||
/* 803B4AFC 003B1A5C 7C 00 26 70 */ srawi r0, r0, 4
|
||||
/* 803B4B00 003B1A60 7C 00 01 94 */ addze r0, r0
|
||||
/* 803B4B04 003B1A64 54 03 06 3E */ clrlwi r3, r0, 0x18
|
||||
/* 803B4B08 003B1A68 4E 80 00 20 */ blr
|
||||
|
||||
.global aramGetStreamBufferAddress
|
||||
aramGetStreamBufferAddress:
|
||||
/* 803B4B0C 003B1A6C 28 04 00 00 */ cmplwi r4, 0
|
||||
/* 803B4B10 003B1A70 41 82 00 1C */ beq lbl_803B4B2C
|
||||
/* 803B4B14 003B1A74 3C A0 80 56 */ lis r5, lbl_80567498@ha
|
||||
/* 803B4B18 003B1A78 54 60 25 36 */ rlwinm r0, r3, 4, 0x14, 0x1b
|
||||
/* 803B4B1C 003B1A7C 38 A5 74 98 */ addi r5, r5, lbl_80567498@l
|
||||
/* 803B4B20 003B1A80 7C A5 02 14 */ add r5, r5, r0
|
||||
/* 803B4B24 003B1A84 80 05 00 08 */ lwz r0, 8(r5)
|
||||
/* 803B4B28 003B1A88 90 04 00 00 */ stw r0, 0(r4)
|
||||
lbl_803B4B2C:
|
||||
/* 803B4B2C 003B1A8C 3C 80 80 56 */ lis r4, lbl_80567498@ha
|
||||
/* 803B4B30 003B1A90 54 60 25 36 */ rlwinm r0, r3, 4, 0x14, 0x1b
|
||||
/* 803B4B34 003B1A94 38 64 74 98 */ addi r3, r4, lbl_80567498@l
|
||||
/* 803B4B38 003B1A98 7C 63 02 14 */ add r3, r3, r0
|
||||
/* 803B4B3C 003B1A9C 80 63 00 04 */ lwz r3, 4(r3)
|
||||
/* 803B4B40 003B1AA0 4E 80 00 20 */ blr
|
||||
|
||||
.global aramFreeStreamBuffer
|
||||
aramFreeStreamBuffer:
|
||||
/* 803B4B44 003B1AA4 3C 80 80 56 */ lis r4, lbl_80567498@ha
|
||||
/* 803B4B48 003B1AA8 54 63 25 36 */ rlwinm r3, r3, 4, 0x14, 0x1b
|
||||
/* 803B4B4C 003B1AAC 38 04 74 98 */ addi r0, r4, lbl_80567498@l
|
||||
/* 803B4B50 003B1AB0 80 AD AF 98 */ lwz r5, lbl_805A9B58@sda21(r13)
|
||||
/* 803B4B54 003B1AB4 38 C0 00 00 */ li r6, 0
|
||||
/* 803B4B58 003B1AB8 7C 80 1A 14 */ add r4, r0, r3
|
||||
/* 803B4B5C 003B1ABC 48 00 00 34 */ b lbl_803B4B90
|
||||
lbl_803B4B60:
|
||||
/* 803B4B60 003B1AC0 7C 05 20 40 */ cmplw r5, r4
|
||||
/* 803B4B64 003B1AC4 40 82 00 24 */ bne lbl_803B4B88
|
||||
/* 803B4B68 003B1AC8 28 06 00 00 */ cmplwi r6, 0
|
||||
/* 803B4B6C 003B1ACC 41 82 00 10 */ beq lbl_803B4B7C
|
||||
/* 803B4B70 003B1AD0 80 04 00 00 */ lwz r0, 0(r4)
|
||||
/* 803B4B74 003B1AD4 90 06 00 00 */ stw r0, 0(r6)
|
||||
/* 803B4B78 003B1AD8 48 00 00 20 */ b lbl_803B4B98
|
||||
lbl_803B4B7C:
|
||||
/* 803B4B7C 003B1ADC 80 04 00 00 */ lwz r0, 0(r4)
|
||||
/* 803B4B80 003B1AE0 90 0D AF 98 */ stw r0, lbl_805A9B58@sda21(r13)
|
||||
/* 803B4B84 003B1AE4 48 00 00 14 */ b lbl_803B4B98
|
||||
lbl_803B4B88:
|
||||
/* 803B4B88 003B1AE8 7C A6 2B 78 */ mr r6, r5
|
||||
/* 803B4B8C 003B1AEC 80 A5 00 00 */ lwz r5, 0(r5)
|
||||
lbl_803B4B90:
|
||||
/* 803B4B90 003B1AF0 28 05 00 00 */ cmplwi r5, 0
|
||||
/* 803B4B94 003B1AF4 40 82 FF CC */ bne lbl_803B4B60
|
||||
lbl_803B4B98:
|
||||
/* 803B4B98 003B1AF8 80 64 00 04 */ lwz r3, 4(r4)
|
||||
/* 803B4B9C 003B1AFC 80 0D AF A4 */ lwz r0, lbl_805A9B64@sda21(r13)
|
||||
/* 803B4BA0 003B1B00 7C 03 00 40 */ cmplw r3, r0
|
||||
/* 803B4BA4 003B1B04 40 82 00 88 */ bne lbl_803B4C2C
|
||||
/* 803B4BA8 003B1B08 80 0D AF 90 */ lwz r0, lbl_805A9B50@sda21(r13)
|
||||
/* 803B4BAC 003B1B0C 38 A0 FF FF */ li r5, -1
|
||||
/* 803B4BB0 003B1B10 80 6D AF 98 */ lwz r3, lbl_805A9B58@sda21(r13)
|
||||
/* 803B4BB4 003B1B14 90 04 00 00 */ stw r0, 0(r4)
|
||||
/* 803B4BB8 003B1B18 90 8D AF 90 */ stw r4, lbl_805A9B50@sda21(r13)
|
||||
/* 803B4BBC 003B1B1C 48 00 00 18 */ b lbl_803B4BD4
|
||||
lbl_803B4BC0:
|
||||
/* 803B4BC0 003B1B20 80 03 00 04 */ lwz r0, 4(r3)
|
||||
/* 803B4BC4 003B1B24 7C 00 28 40 */ cmplw r0, r5
|
||||
/* 803B4BC8 003B1B28 41 81 00 08 */ bgt lbl_803B4BD0
|
||||
/* 803B4BCC 003B1B2C 7C 05 03 78 */ mr r5, r0
|
||||
lbl_803B4BD0:
|
||||
/* 803B4BD0 003B1B30 80 63 00 00 */ lwz r3, 0(r3)
|
||||
lbl_803B4BD4:
|
||||
/* 803B4BD4 003B1B34 28 03 00 00 */ cmplwi r3, 0
|
||||
/* 803B4BD8 003B1B38 40 82 FF E8 */ bne lbl_803B4BC0
|
||||
/* 803B4BDC 003B1B3C 80 8D AF 94 */ lwz r4, lbl_805A9B54@sda21(r13)
|
||||
/* 803B4BE0 003B1B40 48 00 00 28 */ b lbl_803B4C08
|
||||
lbl_803B4BE4:
|
||||
/* 803B4BE4 003B1B44 80 04 00 04 */ lwz r0, 4(r4)
|
||||
/* 803B4BE8 003B1B48 80 64 00 00 */ lwz r3, 0(r4)
|
||||
/* 803B4BEC 003B1B4C 7C 00 28 40 */ cmplw r0, r5
|
||||
/* 803B4BF0 003B1B50 40 80 00 14 */ bge lbl_803B4C04
|
||||
/* 803B4BF4 003B1B54 90 6D AF 94 */ stw r3, lbl_805A9B54@sda21(r13)
|
||||
/* 803B4BF8 003B1B58 80 0D AF 90 */ lwz r0, lbl_805A9B50@sda21(r13)
|
||||
/* 803B4BFC 003B1B5C 90 04 00 00 */ stw r0, 0(r4)
|
||||
/* 803B4C00 003B1B60 90 8D AF 90 */ stw r4, lbl_805A9B50@sda21(r13)
|
||||
lbl_803B4C04:
|
||||
/* 803B4C04 003B1B64 7C 64 1B 78 */ mr r4, r3
|
||||
lbl_803B4C08:
|
||||
/* 803B4C08 003B1B68 28 04 00 00 */ cmplwi r4, 0
|
||||
/* 803B4C0C 003B1B6C 40 82 FF D8 */ bne lbl_803B4BE4
|
||||
/* 803B4C10 003B1B70 3C 05 00 01 */ addis r0, r5, 1
|
||||
/* 803B4C14 003B1B74 80 6D AF AC */ lwz r3, lbl_805A9B6C@sda21(r13)
|
||||
/* 803B4C18 003B1B78 28 00 FF FF */ cmplwi r0, 0xffff
|
||||
/* 803B4C1C 003B1B7C 41 82 00 08 */ beq lbl_803B4C24
|
||||
/* 803B4C20 003B1B80 7C A3 2B 78 */ mr r3, r5
|
||||
lbl_803B4C24:
|
||||
/* 803B4C24 003B1B84 90 6D AF A4 */ stw r3, lbl_805A9B64@sda21(r13)
|
||||
/* 803B4C28 003B1B88 4E 80 00 20 */ blr
|
||||
lbl_803B4C2C:
|
||||
/* 803B4C2C 003B1B8C 80 0D AF 94 */ lwz r0, lbl_805A9B54@sda21(r13)
|
||||
/* 803B4C30 003B1B90 90 04 00 00 */ stw r0, 0(r4)
|
||||
/* 803B4C34 003B1B94 90 8D AF 94 */ stw r4, lbl_805A9B54@sda21(r13)
|
||||
/* 803B4C38 003B1B98 4E 80 00 20 */ blr
|
|
@ -0,0 +1,383 @@
|
|||
.include "macros.inc"
|
||||
|
||||
.section .text, "ax"
|
||||
|
||||
.global salCallback
|
||||
salCallback:
|
||||
/* 803B4C3C 003B1B9C 94 21 FF F0 */ stwu r1, -0x10(r1)
|
||||
/* 803B4C40 003B1BA0 7C 08 02 A6 */ mflr r0
|
||||
/* 803B4C44 003B1BA4 38 80 02 80 */ li r4, 0x280
|
||||
/* 803B4C48 003B1BA8 90 01 00 14 */ stw r0, 0x14(r1)
|
||||
/* 803B4C4C 003B1BAC 88 AD AF D0 */ lbz r5, lbl_805A9B90@sda21(r13)
|
||||
/* 803B4C50 003B1BB0 80 6D AF CC */ lwz r3, lbl_805A9B8C@sda21(r13)
|
||||
/* 803B4C54 003B1BB4 38 A5 00 01 */ addi r5, r5, 1
|
||||
/* 803B4C58 003B1BB8 54 A0 F0 02 */ slwi r0, r5, 0x1e
|
||||
/* 803B4C5C 003B1BBC 3C 63 80 00 */ addis r3, r3, 0x8000
|
||||
/* 803B4C60 003B1BC0 54 A5 0F FE */ srwi r5, r5, 0x1f
|
||||
/* 803B4C64 003B1BC4 7C 05 00 50 */ subf r0, r5, r0
|
||||
/* 803B4C68 003B1BC8 54 00 10 3E */ rotlwi r0, r0, 2
|
||||
/* 803B4C6C 003B1BCC 7C A0 2A 14 */ add r5, r0, r5
|
||||
/* 803B4C70 003B1BD0 54 A0 06 3E */ clrlwi r0, r5, 0x18
|
||||
/* 803B4C74 003B1BD4 98 AD AF D0 */ stb r5, lbl_805A9B90@sda21(r13)
|
||||
/* 803B4C78 003B1BD8 1C 00 02 80 */ mulli r0, r0, 0x280
|
||||
/* 803B4C7C 003B1BDC 7C 63 02 14 */ add r3, r3, r0
|
||||
/* 803B4C80 003B1BE0 4B FB 83 01 */ bl AIInitDMA
|
||||
/* 803B4C84 003B1BE4 4B FD 07 3D */ bl OSGetTick
|
||||
/* 803B4C88 003B1BE8 90 6D AF BC */ stw r3, lbl_805A9B7C@sda21(r13)
|
||||
/* 803B4C8C 003B1BEC 80 0D AF C8 */ lwz r0, lbl_805A9B88@sda21(r13)
|
||||
/* 803B4C90 003B1BF0 28 00 00 00 */ cmplwi r0, 0
|
||||
/* 803B4C94 003B1BF4 41 82 00 38 */ beq lbl_803B4CCC
|
||||
/* 803B4C98 003B1BF8 80 0D AF C0 */ lwz r0, lbl_805A9B80@sda21(r13)
|
||||
/* 803B4C9C 003B1BFC 28 00 00 00 */ cmplwi r0, 0
|
||||
/* 803B4CA0 003B1C00 40 82 00 34 */ bne lbl_803B4CD4
|
||||
/* 803B4CA4 003B1C04 38 00 00 01 */ li r0, 1
|
||||
/* 803B4CA8 003B1C08 90 0D AF C0 */ stw r0, lbl_805A9B80@sda21(r13)
|
||||
/* 803B4CAC 003B1C0C 4B FC C9 C9 */ bl OSEnableInterrupts
|
||||
/* 803B4CB0 003B1C10 81 8D AF D4 */ lwz r12, lbl_805A9B94@sda21(r13)
|
||||
/* 803B4CB4 003B1C14 7D 89 03 A6 */ mtctr r12
|
||||
/* 803B4CB8 003B1C18 4E 80 04 21 */ bctrl
|
||||
/* 803B4CBC 003B1C1C 4B FC C9 A5 */ bl OSDisableInterrupts
|
||||
/* 803B4CC0 003B1C20 38 00 00 00 */ li r0, 0
|
||||
/* 803B4CC4 003B1C24 90 0D AF C0 */ stw r0, lbl_805A9B80@sda21(r13)
|
||||
/* 803B4CC8 003B1C28 48 00 00 0C */ b lbl_803B4CD4
|
||||
lbl_803B4CCC:
|
||||
/* 803B4CCC 003B1C2C 38 00 00 01 */ li r0, 1
|
||||
/* 803B4CD0 003B1C30 90 0D AF C4 */ stw r0, lbl_805A9B84@sda21(r13)
|
||||
lbl_803B4CD4:
|
||||
/* 803B4CD4 003B1C34 80 01 00 14 */ lwz r0, 0x14(r1)
|
||||
/* 803B4CD8 003B1C38 7C 08 03 A6 */ mtlr r0
|
||||
/* 803B4CDC 003B1C3C 38 21 00 10 */ addi r1, r1, 0x10
|
||||
/* 803B4CE0 003B1C40 4E 80 00 20 */ blr
|
||||
|
||||
.global sub_803b4ce4
|
||||
sub_803b4ce4:
|
||||
/* 803B4CE4 003B1C44 38 00 00 01 */ li r0, 1
|
||||
/* 803B4CE8 003B1C48 90 0D AF C8 */ stw r0, lbl_805A9B88@sda21(r13)
|
||||
/* 803B4CEC 003B1C4C 90 0D AF B8 */ stw r0, lbl_805A9B78@sda21(r13)
|
||||
/* 803B4CF0 003B1C50 4E 80 00 20 */ blr
|
||||
|
||||
.global dspResumeCallback
|
||||
dspResumeCallback:
|
||||
/* 803B4CF4 003B1C54 94 21 FF F0 */ stwu r1, -0x10(r1)
|
||||
/* 803B4CF8 003B1C58 7C 08 02 A6 */ mflr r0
|
||||
/* 803B4CFC 003B1C5C 38 60 00 01 */ li r3, 1
|
||||
/* 803B4D00 003B1C60 90 01 00 14 */ stw r0, 0x14(r1)
|
||||
/* 803B4D04 003B1C64 90 6D AF C8 */ stw r3, lbl_805A9B88@sda21(r13)
|
||||
/* 803B4D08 003B1C68 80 0D AF C4 */ lwz r0, lbl_805A9B84@sda21(r13)
|
||||
/* 803B4D0C 003B1C6C 28 00 00 00 */ cmplwi r0, 0
|
||||
/* 803B4D10 003B1C70 41 82 00 38 */ beq lbl_803B4D48
|
||||
/* 803B4D14 003B1C74 38 00 00 00 */ li r0, 0
|
||||
/* 803B4D18 003B1C78 90 0D AF C4 */ stw r0, lbl_805A9B84@sda21(r13)
|
||||
/* 803B4D1C 003B1C7C 80 0D AF C0 */ lwz r0, lbl_805A9B80@sda21(r13)
|
||||
/* 803B4D20 003B1C80 28 00 00 00 */ cmplwi r0, 0
|
||||
/* 803B4D24 003B1C84 40 82 00 24 */ bne lbl_803B4D48
|
||||
/* 803B4D28 003B1C88 90 6D AF C0 */ stw r3, lbl_805A9B80@sda21(r13)
|
||||
/* 803B4D2C 003B1C8C 4B FC C9 49 */ bl OSEnableInterrupts
|
||||
/* 803B4D30 003B1C90 81 8D AF D4 */ lwz r12, lbl_805A9B94@sda21(r13)
|
||||
/* 803B4D34 003B1C94 7D 89 03 A6 */ mtctr r12
|
||||
/* 803B4D38 003B1C98 4E 80 04 21 */ bctrl
|
||||
/* 803B4D3C 003B1C9C 4B FC C9 25 */ bl OSDisableInterrupts
|
||||
/* 803B4D40 003B1CA0 38 00 00 00 */ li r0, 0
|
||||
/* 803B4D44 003B1CA4 90 0D AF C0 */ stw r0, lbl_805A9B80@sda21(r13)
|
||||
lbl_803B4D48:
|
||||
/* 803B4D48 003B1CA8 80 01 00 14 */ lwz r0, 0x14(r1)
|
||||
/* 803B4D4C 003B1CAC 7C 08 03 A6 */ mtlr r0
|
||||
/* 803B4D50 003B1CB0 38 21 00 10 */ addi r1, r1, 0x10
|
||||
/* 803B4D54 003B1CB4 4E 80 00 20 */ blr
|
||||
|
||||
.global salInitAi
|
||||
salInitAi:
|
||||
/* 803B4D58 003B1CB8 94 21 FF F0 */ stwu r1, -0x10(r1)
|
||||
/* 803B4D5C 003B1CBC 7C 08 02 A6 */ mflr r0
|
||||
/* 803B4D60 003B1CC0 90 01 00 14 */ stw r0, 0x14(r1)
|
||||
/* 803B4D64 003B1CC4 93 E1 00 0C */ stw r31, 0xc(r1)
|
||||
/* 803B4D68 003B1CC8 7C BF 2B 78 */ mr r31, r5
|
||||
/* 803B4D6C 003B1CCC 93 C1 00 08 */ stw r30, 8(r1)
|
||||
/* 803B4D70 003B1CD0 7C 7E 1B 78 */ mr r30, r3
|
||||
/* 803B4D74 003B1CD4 38 60 0A 00 */ li r3, 0xa00
|
||||
/* 803B4D78 003B1CD8 48 00 03 BD */ bl salMalloc
|
||||
/* 803B4D7C 003B1CDC 28 03 00 00 */ cmplwi r3, 0
|
||||
/* 803B4D80 003B1CE0 90 6D AF CC */ stw r3, lbl_805A9B8C@sda21(r13)
|
||||
/* 803B4D84 003B1CE4 41 82 00 80 */ beq lbl_803B4E04
|
||||
/* 803B4D88 003B1CE8 38 80 00 00 */ li r4, 0
|
||||
/* 803B4D8C 003B1CEC 38 A0 0A 00 */ li r5, 0xa00
|
||||
/* 803B4D90 003B1CF0 4B C4 E6 19 */ bl memset
|
||||
/* 803B4D94 003B1CF4 80 6D AF CC */ lwz r3, lbl_805A9B8C@sda21(r13)
|
||||
/* 803B4D98 003B1CF8 38 80 0A 00 */ li r4, 0xa00
|
||||
/* 803B4D9C 003B1CFC 4B FC 9D 15 */ bl DCFlushRange
|
||||
/* 803B4DA0 003B1D00 38 80 00 01 */ li r4, 1
|
||||
/* 803B4DA4 003B1D04 38 00 00 00 */ li r0, 0
|
||||
/* 803B4DA8 003B1D08 3C 60 80 3B */ lis r3, salCallback@ha
|
||||
/* 803B4DAC 003B1D0C 90 0D AF C4 */ stw r0, lbl_805A9B84@sda21(r13)
|
||||
/* 803B4DB0 003B1D10 38 63 4C 3C */ addi r3, r3, salCallback@l
|
||||
/* 803B4DB4 003B1D14 90 8D AF C8 */ stw r4, lbl_805A9B88@sda21(r13)
|
||||
/* 803B4DB8 003B1D18 98 8D AF D0 */ stb r4, lbl_805A9B90@sda21(r13)
|
||||
/* 803B4DBC 003B1D1C 90 0D AF C0 */ stw r0, lbl_805A9B80@sda21(r13)
|
||||
/* 803B4DC0 003B1D20 93 CD AF D4 */ stw r30, lbl_805A9B94@sda21(r13)
|
||||
/* 803B4DC4 003B1D24 4B FB 81 79 */ bl sub_8036cf3c
|
||||
/* 803B4DC8 003B1D28 88 0D AF D0 */ lbz r0, lbl_805A9B90@sda21(r13)
|
||||
/* 803B4DCC 003B1D2C 38 80 02 80 */ li r4, 0x280
|
||||
/* 803B4DD0 003B1D30 80 6D AF CC */ lwz r3, lbl_805A9B8C@sda21(r13)
|
||||
/* 803B4DD4 003B1D34 1C 00 02 80 */ mulli r0, r0, 0x280
|
||||
/* 803B4DD8 003B1D38 3C 63 80 00 */ addis r3, r3, 0x8000
|
||||
/* 803B4DDC 003B1D3C 7C 63 02 14 */ add r3, r3, r0
|
||||
/* 803B4DE0 003B1D40 4B FB 81 A1 */ bl AIInitDMA
|
||||
/* 803B4DE4 003B1D44 3C 60 80 55 */ lis r3, lbl_80550050@ha
|
||||
/* 803B4DE8 003B1D48 38 80 00 20 */ li r4, 0x20
|
||||
/* 803B4DEC 003B1D4C 38 63 00 50 */ addi r3, r3, lbl_80550050@l
|
||||
/* 803B4DF0 003B1D50 38 00 7D 00 */ li r0, 0x7d00
|
||||
/* 803B4DF4 003B1D54 90 83 00 04 */ stw r4, 4(r3)
|
||||
/* 803B4DF8 003B1D58 38 60 00 01 */ li r3, 1
|
||||
/* 803B4DFC 003B1D5C 90 1F 00 00 */ stw r0, 0(r31)
|
||||
/* 803B4E00 003B1D60 48 00 00 08 */ b lbl_803B4E08
|
||||
lbl_803B4E04:
|
||||
/* 803B4E04 003B1D64 38 60 00 00 */ li r3, 0
|
||||
lbl_803B4E08:
|
||||
/* 803B4E08 003B1D68 80 01 00 14 */ lwz r0, 0x14(r1)
|
||||
/* 803B4E0C 003B1D6C 83 E1 00 0C */ lwz r31, 0xc(r1)
|
||||
/* 803B4E10 003B1D70 83 C1 00 08 */ lwz r30, 8(r1)
|
||||
/* 803B4E14 003B1D74 7C 08 03 A6 */ mtlr r0
|
||||
/* 803B4E18 003B1D78 38 21 00 10 */ addi r1, r1, 0x10
|
||||
/* 803B4E1C 003B1D7C 4E 80 00 20 */ blr
|
||||
|
||||
.global sub_803b4e20
|
||||
sub_803b4e20:
|
||||
/* 803B4E20 003B1D80 94 21 FF F0 */ stwu r1, -0x10(r1)
|
||||
/* 803B4E24 003B1D84 7C 08 02 A6 */ mflr r0
|
||||
/* 803B4E28 003B1D88 90 01 00 14 */ stw r0, 0x14(r1)
|
||||
/* 803B4E2C 003B1D8C 4B FB 81 DD */ bl AIStartDMA
|
||||
/* 803B4E30 003B1D90 80 01 00 14 */ lwz r0, 0x14(r1)
|
||||
/* 803B4E34 003B1D94 7C 08 03 A6 */ mtlr r0
|
||||
/* 803B4E38 003B1D98 38 21 00 10 */ addi r1, r1, 0x10
|
||||
/* 803B4E3C 003B1D9C 4E 80 00 20 */ blr
|
||||
|
||||
.global salExitAi
|
||||
salExitAi:
|
||||
/* 803B4E40 003B1DA0 94 21 FF F0 */ stwu r1, -0x10(r1)
|
||||
/* 803B4E44 003B1DA4 7C 08 02 A6 */ mflr r0
|
||||
/* 803B4E48 003B1DA8 38 60 00 00 */ li r3, 0
|
||||
/* 803B4E4C 003B1DAC 90 01 00 14 */ stw r0, 0x14(r1)
|
||||
/* 803B4E50 003B1DB0 4B FB 80 ED */ bl sub_8036cf3c
|
||||
/* 803B4E54 003B1DB4 4B FB 81 CD */ bl AIStopDMA
|
||||
/* 803B4E58 003B1DB8 80 6D AF CC */ lwz r3, lbl_805A9B8C@sda21(r13)
|
||||
/* 803B4E5C 003B1DBC 48 00 03 01 */ bl salFree
|
||||
/* 803B4E60 003B1DC0 80 01 00 14 */ lwz r0, 0x14(r1)
|
||||
/* 803B4E64 003B1DC4 38 60 00 01 */ li r3, 1
|
||||
/* 803B4E68 003B1DC8 7C 08 03 A6 */ mtlr r0
|
||||
/* 803B4E6C 003B1DCC 38 21 00 10 */ addi r1, r1, 0x10
|
||||
/* 803B4E70 003B1DD0 4E 80 00 20 */ blr
|
||||
|
||||
.global salAiGetDest
|
||||
salAiGetDest:
|
||||
/* 803B4E74 003B1DD4 88 6D AF D0 */ lbz r3, lbl_805A9B90@sda21(r13)
|
||||
/* 803B4E78 003B1DD8 80 8D AF CC */ lwz r4, lbl_805A9B8C@sda21(r13)
|
||||
/* 803B4E7C 003B1DDC 38 63 00 02 */ addi r3, r3, 2
|
||||
/* 803B4E80 003B1DE0 54 60 F0 02 */ slwi r0, r3, 0x1e
|
||||
/* 803B4E84 003B1DE4 54 63 0F FE */ srwi r3, r3, 0x1f
|
||||
/* 803B4E88 003B1DE8 7C 03 00 50 */ subf r0, r3, r0
|
||||
/* 803B4E8C 003B1DEC 54 00 10 3E */ rotlwi r0, r0, 2
|
||||
/* 803B4E90 003B1DF0 7C 00 1A 14 */ add r0, r0, r3
|
||||
/* 803B4E94 003B1DF4 54 00 06 3E */ clrlwi r0, r0, 0x18
|
||||
/* 803B4E98 003B1DF8 1C 00 02 80 */ mulli r0, r0, 0x280
|
||||
/* 803B4E9C 003B1DFC 7C 64 02 14 */ add r3, r4, r0
|
||||
/* 803B4EA0 003B1E00 4E 80 00 20 */ blr
|
||||
|
||||
.global sub_803b4ea4
|
||||
sub_803b4ea4:
|
||||
/* 803B4EA4 003B1E04 94 21 FF F0 */ stwu r1, -0x10(r1)
|
||||
/* 803B4EA8 003B1E08 7C 08 02 A6 */ mflr r0
|
||||
/* 803B4EAC 003B1E0C 3C E0 80 3F */ lis r7, lbl_803F4A80@ha
|
||||
/* 803B4EB0 003B1E10 3C C0 80 56 */ lis r6, lbl_805678A0@ha
|
||||
/* 803B4EB4 003B1E14 90 01 00 14 */ stw r0, 0x14(r1)
|
||||
/* 803B4EB8 003B1E18 3C 80 80 3B */ lis r4, sub_803b4ce4@ha
|
||||
/* 803B4EBC 003B1E1C 3C 60 80 3B */ lis r3, dspResumeCallback@ha
|
||||
/* 803B4EC0 003B1E20 39 46 78 A0 */ addi r10, r6, lbl_805678A0@l
|
||||
/* 803B4EC4 003B1E24 A1 2D A0 28 */ lhz r9, lbl_805A8BE8@sda21(r13)
|
||||
/* 803B4EC8 003B1E28 3C A0 80 56 */ lis r5, lbl_80567900@ha
|
||||
/* 803B4ECC 003B1E2C 39 00 00 00 */ li r8, 0
|
||||
/* 803B4ED0 003B1E30 39 67 4A 80 */ addi r11, r7, lbl_803F4A80@l
|
||||
/* 803B4ED4 003B1E34 38 E5 79 00 */ addi r7, r5, lbl_80567900@l
|
||||
/* 803B4ED8 003B1E38 38 03 4C F4 */ addi r0, r3, dspResumeCallback@l
|
||||
/* 803B4EDC 003B1E3C 38 84 4C E4 */ addi r4, r4, sub_803b4ce4@l
|
||||
/* 803B4EE0 003B1E40 38 C0 20 00 */ li r6, 0x2000
|
||||
/* 803B4EE4 003B1E44 38 A0 00 10 */ li r5, 0x10
|
||||
/* 803B4EE8 003B1E48 38 60 00 30 */ li r3, 0x30
|
||||
/* 803B4EEC 003B1E4C 91 6A 00 0C */ stw r11, 0xc(r10)
|
||||
/* 803B4EF0 003B1E50 91 2A 00 10 */ stw r9, 0x10(r10)
|
||||
/* 803B4EF4 003B1E54 91 0A 00 14 */ stw r8, 0x14(r10)
|
||||
/* 803B4EF8 003B1E58 90 EA 00 18 */ stw r7, 0x18(r10)
|
||||
/* 803B4EFC 003B1E5C 90 CA 00 1C */ stw r6, 0x1c(r10)
|
||||
/* 803B4F00 003B1E60 91 0A 00 20 */ stw r8, 0x20(r10)
|
||||
/* 803B4F04 003B1E64 B0 AA 00 24 */ sth r5, 0x24(r10)
|
||||
/* 803B4F08 003B1E68 B0 6A 00 26 */ sth r3, 0x26(r10)
|
||||
/* 803B4F0C 003B1E6C 90 8A 00 28 */ stw r4, 0x28(r10)
|
||||
/* 803B4F10 003B1E70 90 0A 00 2C */ stw r0, 0x2c(r10)
|
||||
/* 803B4F14 003B1E74 91 0A 00 30 */ stw r8, 0x30(r10)
|
||||
/* 803B4F18 003B1E78 91 0A 00 34 */ stw r8, 0x34(r10)
|
||||
/* 803B4F1C 003B1E7C 91 0A 00 04 */ stw r8, 4(r10)
|
||||
/* 803B4F20 003B1E80 4B FB AA E5 */ bl DSPInit
|
||||
/* 803B4F24 003B1E84 3C 60 80 56 */ lis r3, lbl_805678A0@ha
|
||||
/* 803B4F28 003B1E88 38 63 78 A0 */ addi r3, r3, lbl_805678A0@l
|
||||
/* 803B4F2C 003B1E8C 4B FB AC 35 */ bl DSPAddTask
|
||||
/* 803B4F30 003B1E90 38 00 00 00 */ li r0, 0
|
||||
/* 803B4F34 003B1E94 90 0D AF B8 */ stw r0, lbl_805A9B78@sda21(r13)
|
||||
/* 803B4F38 003B1E98 48 00 01 4D */ bl hwEnableIrq
|
||||
lbl_803B4F3C:
|
||||
/* 803B4F3C 003B1E9C 80 0D AF B8 */ lwz r0, lbl_805A9B78@sda21(r13)
|
||||
/* 803B4F40 003B1EA0 28 00 00 00 */ cmplwi r0, 0
|
||||
/* 803B4F44 003B1EA4 41 82 FF F8 */ beq lbl_803B4F3C
|
||||
/* 803B4F48 003B1EA8 48 00 01 75 */ bl hwDisableIrq
|
||||
/* 803B4F4C 003B1EAC 80 01 00 14 */ lwz r0, 0x14(r1)
|
||||
/* 803B4F50 003B1EB0 38 60 00 01 */ li r3, 1
|
||||
/* 803B4F54 003B1EB4 7C 08 03 A6 */ mtlr r0
|
||||
/* 803B4F58 003B1EB8 38 21 00 10 */ addi r1, r1, 0x10
|
||||
/* 803B4F5C 003B1EBC 4E 80 00 20 */ blr
|
||||
|
||||
.global sub_803b4f60
|
||||
sub_803b4f60:
|
||||
/* 803B4F60 003B1EC0 94 21 FF F0 */ stwu r1, -0x10(r1)
|
||||
/* 803B4F64 003B1EC4 7C 08 02 A6 */ mflr r0
|
||||
/* 803B4F68 003B1EC8 90 01 00 14 */ stw r0, 0x14(r1)
|
||||
/* 803B4F6C 003B1ECC 4B FB AB A5 */ bl DSPHalt
|
||||
lbl_803B4F70:
|
||||
/* 803B4F70 003B1ED0 4B FB AB E1 */ bl DSPGetDMAStatus
|
||||
/* 803B4F74 003B1ED4 28 03 00 00 */ cmplwi r3, 0
|
||||
/* 803B4F78 003B1ED8 40 82 FF F8 */ bne lbl_803B4F70
|
||||
/* 803B4F7C 003B1EDC 4B FB AB 4D */ bl DSPReset
|
||||
/* 803B4F80 003B1EE0 80 01 00 14 */ lwz r0, 0x14(r1)
|
||||
/* 803B4F84 003B1EE4 38 60 00 01 */ li r3, 1
|
||||
/* 803B4F88 003B1EE8 7C 08 03 A6 */ mtlr r0
|
||||
/* 803B4F8C 003B1EEC 38 21 00 10 */ addi r1, r1, 0x10
|
||||
/* 803B4F90 003B1EF0 4E 80 00 20 */ blr
|
||||
|
||||
.global salCtrlDsp
|
||||
salCtrlDsp:
|
||||
/* 803B4F94 003B1EF4 94 21 FF F0 */ stwu r1, -0x10(r1)
|
||||
/* 803B4F98 003B1EF8 7C 08 02 A6 */ mflr r0
|
||||
/* 803B4F9C 003B1EFC 90 01 00 14 */ stw r0, 0x14(r1)
|
||||
/* 803B4FA0 003B1F00 93 E1 00 0C */ stw r31, 0xc(r1)
|
||||
/* 803B4FA4 003B1F04 7C 7F 1B 78 */ mr r31, r3
|
||||
/* 803B4FA8 003B1F08 48 00 00 61 */ bl salGetStartDelay
|
||||
/* 803B4FAC 003B1F0C 7C 64 1B 78 */ mr r4, r3
|
||||
/* 803B4FB0 003B1F10 7F E3 FB 78 */ mr r3, r31
|
||||
/* 803B4FB4 003B1F14 4B FF 6B 15 */ bl sub_803abac8
|
||||
/* 803B4FB8 003B1F18 38 00 00 00 */ li r0, 0
|
||||
/* 803B4FBC 003B1F1C 83 ED AF 40 */ lwz r31, lbl_805A9B00@sda21(r13)
|
||||
/* 803B4FC0 003B1F20 90 0D AF C8 */ stw r0, lbl_805A9B88@sda21(r13)
|
||||
/* 803B4FC4 003B1F24 4B FB A8 49 */ bl PPCSync
|
||||
/* 803B4FC8 003B1F28 A0 0D AF 3C */ lhz r0, lbl_805A9AFC@sda21(r13)
|
||||
/* 803B4FCC 003B1F2C 64 03 BA BE */ oris r3, r0, 0xbabe
|
||||
/* 803B4FD0 003B1F30 4B FB AA 21 */ bl DSPSendMailToDSP
|
||||
lbl_803B4FD4:
|
||||
/* 803B4FD4 003B1F34 4B FB A9 E5 */ bl DSPCheckMailToDSP
|
||||
/* 803B4FD8 003B1F38 28 03 00 00 */ cmplwi r3, 0
|
||||
/* 803B4FDC 003B1F3C 40 82 FF F8 */ bne lbl_803B4FD4
|
||||
/* 803B4FE0 003B1F40 7F E3 FB 78 */ mr r3, r31
|
||||
/* 803B4FE4 003B1F44 4B FB AA 0D */ bl DSPSendMailToDSP
|
||||
lbl_803B4FE8:
|
||||
/* 803B4FE8 003B1F48 4B FB A9 D1 */ bl DSPCheckMailToDSP
|
||||
/* 803B4FEC 003B1F4C 28 03 00 00 */ cmplwi r3, 0
|
||||
/* 803B4FF0 003B1F50 40 82 FF F8 */ bne lbl_803B4FE8
|
||||
/* 803B4FF4 003B1F54 80 01 00 14 */ lwz r0, 0x14(r1)
|
||||
/* 803B4FF8 003B1F58 83 E1 00 0C */ lwz r31, 0xc(r1)
|
||||
/* 803B4FFC 003B1F5C 7C 08 03 A6 */ mtlr r0
|
||||
/* 803B5000 003B1F60 38 21 00 10 */ addi r1, r1, 0x10
|
||||
/* 803B5004 003B1F64 4E 80 00 20 */ blr
|
||||
|
||||
.global salGetStartDelay
|
||||
salGetStartDelay:
|
||||
/* 803B5008 003B1F68 94 21 FF F0 */ stwu r1, -0x10(r1)
|
||||
/* 803B500C 003B1F6C 7C 08 02 A6 */ mflr r0
|
||||
/* 803B5010 003B1F70 90 01 00 14 */ stw r0, 0x14(r1)
|
||||
/* 803B5014 003B1F74 4B FD 03 AD */ bl OSGetTick
|
||||
/* 803B5018 003B1F78 3C A0 80 00 */ lis r5, 0x800000F8@ha
|
||||
/* 803B501C 003B1F7C 3C 80 43 1C */ lis r4, 0x431BDE83@ha
|
||||
/* 803B5020 003B1F80 80 05 00 F8 */ lwz r0, 0x800000F8@l(r5)
|
||||
/* 803B5024 003B1F84 38 84 DE 83 */ addi r4, r4, 0x431BDE83@l
|
||||
/* 803B5028 003B1F88 80 AD AF BC */ lwz r5, lbl_805A9B7C@sda21(r13)
|
||||
/* 803B502C 003B1F8C 54 00 F0 BE */ srwi r0, r0, 2
|
||||
/* 803B5030 003B1F90 7C 04 00 16 */ mulhwu r0, r4, r0
|
||||
/* 803B5034 003B1F94 7C 65 18 50 */ subf r3, r5, r3
|
||||
/* 803B5038 003B1F98 54 63 18 38 */ slwi r3, r3, 3
|
||||
/* 803B503C 003B1F9C 54 00 8B FE */ srwi r0, r0, 0xf
|
||||
/* 803B5040 003B1FA0 7C 63 03 96 */ divwu r3, r3, r0
|
||||
/* 803B5044 003B1FA4 80 01 00 14 */ lwz r0, 0x14(r1)
|
||||
/* 803B5048 003B1FA8 7C 08 03 A6 */ mtlr r0
|
||||
/* 803B504C 003B1FAC 38 21 00 10 */ addi r1, r1, 0x10
|
||||
/* 803B5050 003B1FB0 4E 80 00 20 */ blr
|
||||
|
||||
.global hwInitIrq
|
||||
hwInitIrq:
|
||||
/* 803B5054 003B1FB4 94 21 FF F0 */ stwu r1, -0x10(r1)
|
||||
/* 803B5058 003B1FB8 7C 08 02 A6 */ mflr r0
|
||||
/* 803B505C 003B1FBC 90 01 00 14 */ stw r0, 0x14(r1)
|
||||
/* 803B5060 003B1FC0 4B FC C6 01 */ bl OSDisableInterrupts
|
||||
/* 803B5064 003B1FC4 38 00 00 01 */ li r0, 1
|
||||
/* 803B5068 003B1FC8 90 6D AF B0 */ stw r3, lbl_805A9B70@sda21(r13)
|
||||
/* 803B506C 003B1FCC B0 0D AF B4 */ sth r0, lbl_805A9B74@sda21(r13)
|
||||
/* 803B5070 003B1FD0 80 01 00 14 */ lwz r0, 0x14(r1)
|
||||
/* 803B5074 003B1FD4 7C 08 03 A6 */ mtlr r0
|
||||
/* 803B5078 003B1FD8 38 21 00 10 */ addi r1, r1, 0x10
|
||||
/* 803B507C 003B1FDC 4E 80 00 20 */ blr
|
||||
|
||||
.global nullsub_13
|
||||
nullsub_13:
|
||||
/* 803B5080 003B1FE0 4E 80 00 20 */ blr
|
||||
|
||||
.global hwEnableIrq
|
||||
hwEnableIrq:
|
||||
/* 803B5084 003B1FE4 94 21 FF F0 */ stwu r1, -0x10(r1)
|
||||
/* 803B5088 003B1FE8 7C 08 02 A6 */ mflr r0
|
||||
/* 803B508C 003B1FEC 90 01 00 14 */ stw r0, 0x14(r1)
|
||||
/* 803B5090 003B1FF0 A0 6D AF B4 */ lhz r3, lbl_805A9B74@sda21(r13)
|
||||
/* 803B5094 003B1FF4 38 63 FF FF */ addi r3, r3, -1
|
||||
/* 803B5098 003B1FF8 54 60 04 3F */ clrlwi. r0, r3, 0x10
|
||||
/* 803B509C 003B1FFC B0 6D AF B4 */ sth r3, lbl_805A9B74@sda21(r13)
|
||||
/* 803B50A0 003B2000 40 82 00 0C */ bne lbl_803B50AC
|
||||
/* 803B50A4 003B2004 80 6D AF B0 */ lwz r3, lbl_805A9B70@sda21(r13)
|
||||
/* 803B50A8 003B2008 4B FC C5 E1 */ bl OSRestoreInterrupts
|
||||
lbl_803B50AC:
|
||||
/* 803B50AC 003B200C 80 01 00 14 */ lwz r0, 0x14(r1)
|
||||
/* 803B50B0 003B2010 7C 08 03 A6 */ mtlr r0
|
||||
/* 803B50B4 003B2014 38 21 00 10 */ addi r1, r1, 0x10
|
||||
/* 803B50B8 003B2018 4E 80 00 20 */ blr
|
||||
|
||||
.global hwDisableIrq
|
||||
hwDisableIrq:
|
||||
/* 803B50BC 003B201C 94 21 FF F0 */ stwu r1, -0x10(r1)
|
||||
/* 803B50C0 003B2020 7C 08 02 A6 */ mflr r0
|
||||
/* 803B50C4 003B2024 90 01 00 14 */ stw r0, 0x14(r1)
|
||||
/* 803B50C8 003B2028 A0 6D AF B4 */ lhz r3, lbl_805A9B74@sda21(r13)
|
||||
/* 803B50CC 003B202C 54 60 04 3F */ clrlwi. r0, r3, 0x10
|
||||
/* 803B50D0 003B2030 38 63 00 01 */ addi r3, r3, 1
|
||||
/* 803B50D4 003B2034 B0 6D AF B4 */ sth r3, lbl_805A9B74@sda21(r13)
|
||||
/* 803B50D8 003B2038 40 82 00 0C */ bne lbl_803B50E4
|
||||
/* 803B50DC 003B203C 4B FC C5 85 */ bl OSDisableInterrupts
|
||||
/* 803B50E0 003B2040 90 6D AF B0 */ stw r3, lbl_805A9B70@sda21(r13)
|
||||
lbl_803B50E4:
|
||||
/* 803B50E4 003B2044 80 01 00 14 */ lwz r0, 0x14(r1)
|
||||
/* 803B50E8 003B2048 7C 08 03 A6 */ mtlr r0
|
||||
/* 803B50EC 003B204C 38 21 00 10 */ addi r1, r1, 0x10
|
||||
/* 803B50F0 003B2050 4E 80 00 20 */ blr
|
||||
|
||||
.global sub_803b50f4
|
||||
sub_803b50f4:
|
||||
/* 803B50F4 003B2054 94 21 FF F0 */ stwu r1, -0x10(r1)
|
||||
/* 803B50F8 003B2058 7C 08 02 A6 */ mflr r0
|
||||
/* 803B50FC 003B205C 90 01 00 14 */ stw r0, 0x14(r1)
|
||||
/* 803B5100 003B2060 4B FC C5 61 */ bl OSDisableInterrupts
|
||||
/* 803B5104 003B2064 80 01 00 14 */ lwz r0, 0x14(r1)
|
||||
/* 803B5108 003B2068 7C 08 03 A6 */ mtlr r0
|
||||
/* 803B510C 003B206C 38 21 00 10 */ addi r1, r1, 0x10
|
||||
/* 803B5110 003B2070 4E 80 00 20 */ blr
|
||||
|
||||
.global sub_803b5114
|
||||
sub_803b5114:
|
||||
/* 803B5114 003B2074 94 21 FF F0 */ stwu r1, -0x10(r1)
|
||||
/* 803B5118 003B2078 7C 08 02 A6 */ mflr r0
|
||||
/* 803B511C 003B207C 90 01 00 14 */ stw r0, 0x14(r1)
|
||||
/* 803B5120 003B2080 4B FC C5 55 */ bl OSEnableInterrupts
|
||||
/* 803B5124 003B2084 80 01 00 14 */ lwz r0, 0x14(r1)
|
||||
/* 803B5128 003B2088 7C 08 03 A6 */ mtlr r0
|
||||
/* 803B512C 003B208C 38 21 00 10 */ addi r1, r1, 0x10
|
||||
/* 803B5130 003B2090 4E 80 00 20 */ blr
|
File diff suppressed because it is too large
Load Diff
|
@ -0,0 +1,30 @@
|
|||
.include "macros.inc"
|
||||
|
||||
.section .text, "ax"
|
||||
|
||||
.global salMalloc
|
||||
salMalloc:
|
||||
/* 803B5134 003B2094 94 21 FF F0 */ stwu r1, -0x10(r1)
|
||||
/* 803B5138 003B2098 7C 08 02 A6 */ mflr r0
|
||||
/* 803B513C 003B209C 90 01 00 14 */ stw r0, 0x14(r1)
|
||||
/* 803B5140 003B20A0 81 8D AF 84 */ lwz r12, lbl_805A9B44@sda21(r13)
|
||||
/* 803B5144 003B20A4 7D 89 03 A6 */ mtctr r12
|
||||
/* 803B5148 003B20A8 4E 80 04 21 */ bctrl
|
||||
/* 803B514C 003B20AC 80 01 00 14 */ lwz r0, 0x14(r1)
|
||||
/* 803B5150 003B20B0 7C 08 03 A6 */ mtlr r0
|
||||
/* 803B5154 003B20B4 38 21 00 10 */ addi r1, r1, 0x10
|
||||
/* 803B5158 003B20B8 4E 80 00 20 */ blr
|
||||
|
||||
.global salFree
|
||||
salFree:
|
||||
/* 803B515C 003B20BC 94 21 FF F0 */ stwu r1, -0x10(r1)
|
||||
/* 803B5160 003B20C0 7C 08 02 A6 */ mflr r0
|
||||
/* 803B5164 003B20C4 38 8D AF 84 */ addi r4, r13, lbl_805A9B44@sda21
|
||||
/* 803B5168 003B20C8 90 01 00 14 */ stw r0, 0x14(r1)
|
||||
/* 803B516C 003B20CC 81 84 00 04 */ lwz r12, 4(r4)
|
||||
/* 803B5170 003B20D0 7D 89 03 A6 */ mtctr r12
|
||||
/* 803B5174 003B20D4 4E 80 04 21 */ bctrl
|
||||
/* 803B5178 003B20D8 80 01 00 14 */ lwz r0, 0x14(r1)
|
||||
/* 803B517C 003B20DC 7C 08 03 A6 */ mtlr r0
|
||||
/* 803B5180 003B20E0 38 21 00 10 */ addi r1, r1, 0x10
|
||||
/* 803B5184 003B20E4 4E 80 00 20 */ blr
|
|
@ -0,0 +1,456 @@
|
|||
.include "macros.inc"
|
||||
|
||||
.section .text, "ax"
|
||||
|
||||
.global salCalcVolume
|
||||
salCalcVolume:
|
||||
/* 803AE110 003AB070 94 21 FE F0 */ stwu r1, -0x110(r1)
|
||||
/* 803AE114 003AB074 7C 08 02 A6 */ mflr r0
|
||||
/* 803AE118 003AB078 90 01 01 14 */ stw r0, 0x114(r1)
|
||||
/* 803AE11C 003AB07C DB E1 01 00 */ stfd f31, 0x100(r1)
|
||||
/* 803AE120 003AB080 F3 E1 01 08 */ psq_st f31, 264(r1), 0, qr0
|
||||
/* 803AE124 003AB084 DB C1 00 F0 */ stfd f30, 0xf0(r1)
|
||||
/* 803AE128 003AB088 F3 C1 00 F8 */ psq_st f30, 248(r1), 0, qr0
|
||||
/* 803AE12C 003AB08C DB A1 00 E0 */ stfd f29, 0xe0(r1)
|
||||
/* 803AE130 003AB090 F3 A1 00 E8 */ psq_st f29, 232(r1), 0, qr0
|
||||
/* 803AE134 003AB094 DB 81 00 D0 */ stfd f28, 0xd0(r1)
|
||||
/* 803AE138 003AB098 F3 81 00 D8 */ psq_st f28, 216(r1), 0, qr0
|
||||
/* 803AE13C 003AB09C DB 61 00 C0 */ stfd f27, 0xc0(r1)
|
||||
/* 803AE140 003AB0A0 F3 61 00 C8 */ psq_st f27, 200(r1), 0, qr0
|
||||
/* 803AE144 003AB0A4 DB 41 00 B0 */ stfd f26, 0xb0(r1)
|
||||
/* 803AE148 003AB0A8 F3 41 00 B8 */ psq_st f26, 184(r1), 0, qr0
|
||||
/* 803AE14C 003AB0AC DB 21 00 A0 */ stfd f25, 0xa0(r1)
|
||||
/* 803AE150 003AB0B0 F3 21 00 A8 */ psq_st f25, 168(r1), 0, qr0
|
||||
/* 803AE154 003AB0B4 DB 01 00 90 */ stfd f24, 0x90(r1)
|
||||
/* 803AE158 003AB0B8 F3 01 00 98 */ psq_st f24, 152(r1), 0, qr0
|
||||
/* 803AE15C 003AB0BC DA E1 00 80 */ stfd f23, 0x80(r1)
|
||||
/* 803AE160 003AB0C0 F2 E1 00 88 */ psq_st f23, 136(r1), 0, qr0
|
||||
/* 803AE164 003AB0C4 DA C1 00 70 */ stfd f22, 0x70(r1)
|
||||
/* 803AE168 003AB0C8 F2 C1 00 78 */ psq_st f22, 120(r1), 0, qr0
|
||||
/* 803AE16C 003AB0CC DA A1 00 60 */ stfd f21, 0x60(r1)
|
||||
/* 803AE170 003AB0D0 F2 A1 00 68 */ psq_st f21, 104(r1), 0, qr0
|
||||
/* 803AE174 003AB0D4 DA 81 00 50 */ stfd f20, 0x50(r1)
|
||||
/* 803AE178 003AB0D8 F2 81 00 58 */ psq_st f20, 88(r1), 0, qr0
|
||||
/* 803AE17C 003AB0DC 39 61 00 50 */ addi r11, r1, 0x50
|
||||
/* 803AE180 003AB0E0 4B FD B8 E5 */ bl func_80389A64
|
||||
/* 803AE184 003AB0E4 54 60 06 3F */ clrlwi. r0, r3, 0x18
|
||||
/* 803AE188 003AB0E8 3C 60 80 3F */ lis r3, lbl_803F3DA4@ha
|
||||
/* 803AE18C 003AB0EC 3B E3 3D A4 */ addi r31, r3, lbl_803F3DA4@l
|
||||
/* 803AE190 003AB0F0 FE C0 08 90 */ fmr f22, f1
|
||||
/* 803AE194 003AB0F4 3C 60 80 3F */ lis r3, lbl_803F3FC0@ha
|
||||
/* 803AE198 003AB0F8 FF E0 10 90 */ fmr f31, f2
|
||||
/* 803AE19C 003AB0FC FE A0 18 90 */ fmr f21, f3
|
||||
/* 803AE1A0 003AB100 7C 99 23 78 */ mr r25, r4
|
||||
/* 803AE1A4 003AB104 7C FA 3B 78 */ mr r26, r7
|
||||
/* 803AE1A8 003AB108 7D 1B 43 78 */ mr r27, r8
|
||||
/* 803AE1AC 003AB10C 3B C3 3F C0 */ addi r30, r3, lbl_803F3FC0@l
|
||||
/* 803AE1B0 003AB110 40 82 00 08 */ bne lbl_803AE1B8
|
||||
/* 803AE1B4 003AB114 3B FE 00 00 */ addi r31, r30, 0
|
||||
lbl_803AE1B8:
|
||||
/* 803AE1B8 003AB118 3C 05 FF 80 */ addis r0, r5, 0xff80
|
||||
/* 803AE1BC 003AB11C 28 00 00 00 */ cmplwi r0, 0
|
||||
/* 803AE1C0 003AB120 40 82 00 0C */ bne lbl_803AE1CC
|
||||
/* 803AE1C4 003AB124 38 A0 00 00 */ li r5, 0
|
||||
/* 803AE1C8 003AB128 3C C0 00 7F */ lis r6, 0x7f
|
||||
lbl_803AE1CC:
|
||||
/* 803AE1CC 003AB12C 3C 80 00 01 */ lis r4, 1
|
||||
/* 803AE1D0 003AB130 3C 00 43 30 */ lis r0, 0x4330
|
||||
/* 803AE1D4 003AB134 7C 65 20 10 */ subfc r3, r5, r4
|
||||
/* 803AE1D8 003AB138 3C E5 FF FF */ addis r7, r5, 0xffff
|
||||
/* 803AE1DC 003AB13C 7D 05 01 94 */ addze r8, r5
|
||||
/* 803AE1E0 003AB140 3C 66 FF FF */ addis r3, r6, 0xffff
|
||||
/* 803AE1E4 003AB144 7C 86 20 10 */ subfc r4, r6, r4
|
||||
/* 803AE1E8 003AB148 90 01 00 08 */ stw r0, 8(r1)
|
||||
/* 803AE1EC 003AB14C 7C 86 01 94 */ addze r4, r6
|
||||
/* 803AE1F0 003AB150 7C A8 28 50 */ subf r5, r8, r5
|
||||
/* 803AE1F4 003AB154 7C 84 30 50 */ subf r4, r4, r6
|
||||
/* 803AE1F8 003AB158 90 01 00 10 */ stw r0, 0x10(r1)
|
||||
/* 803AE1FC 003AB15C 7C E0 28 78 */ andc r0, r7, r5
|
||||
/* 803AE200 003AB160 C8 42 D5 E0 */ lfd f2, lbl_805AF300@sda21(r2)
|
||||
/* 803AE204 003AB164 7C 63 20 78 */ andc r3, r3, r4
|
||||
/* 803AE208 003AB168 90 01 00 0C */ stw r0, 0xc(r1)
|
||||
/* 803AE20C 003AB16C C0 62 D5 E8 */ lfs f3, lbl_805AF308@sda21(r2)
|
||||
/* 803AE210 003AB170 28 1B 00 00 */ cmplwi r27, 0
|
||||
/* 803AE214 003AB174 90 61 00 14 */ stw r3, 0x14(r1)
|
||||
/* 803AE218 003AB178 C8 21 00 08 */ lfd f1, 8(r1)
|
||||
/* 803AE21C 003AB17C C8 01 00 10 */ lfd f0, 0x10(r1)
|
||||
/* 803AE220 003AB180 EC 21 10 28 */ fsubs f1, f1, f2
|
||||
/* 803AE224 003AB184 EC 00 10 28 */ fsubs f0, f0, f2
|
||||
/* 803AE228 003AB188 EF 03 00 72 */ fmuls f24, f3, f1
|
||||
/* 803AE22C 003AB18C EE 83 00 32 */ fmuls f20, f3, f0
|
||||
/* 803AE230 003AB190 41 82 00 44 */ beq lbl_803AE274
|
||||
/* 803AE234 003AB194 FC 20 C0 90 */ fmr f1, f24
|
||||
/* 803AE238 003AB198 C8 42 D5 F0 */ lfd f2, lbl_805AF310@sda21(r2)
|
||||
/* 803AE23C 003AB19C 4B FE 6A 71 */ bl fmod
|
||||
/* 803AE240 003AB1A0 FF 40 08 18 */ frsp f26, f1
|
||||
/* 803AE244 003AB1A4 FC 20 C0 90 */ fmr f1, f24
|
||||
/* 803AE248 003AB1A8 4B FD B7 0D */ bl __cvt_fp2unsigned
|
||||
/* 803AE24C 003AB1AC C0 02 D5 F8 */ lfs f0, lbl_805AF318@sda21(r2)
|
||||
/* 803AE250 003AB1B0 7C 7D 1B 78 */ mr r29, r3
|
||||
/* 803AE254 003AB1B4 C8 42 D5 F0 */ lfd f2, lbl_805AF310@sda21(r2)
|
||||
/* 803AE258 003AB1B8 EE E0 C0 28 */ fsubs f23, f0, f24
|
||||
/* 803AE25C 003AB1BC FC 20 B8 90 */ fmr f1, f23
|
||||
/* 803AE260 003AB1C0 4B FE 6A 4D */ bl fmod
|
||||
/* 803AE264 003AB1C4 FF 20 08 18 */ frsp f25, f1
|
||||
/* 803AE268 003AB1C8 FC 20 B8 90 */ fmr f1, f23
|
||||
/* 803AE26C 003AB1CC 4B FD B6 E9 */ bl __cvt_fp2unsigned
|
||||
/* 803AE270 003AB1D0 7C 7C 1B 78 */ mr r28, r3
|
||||
lbl_803AE274:
|
||||
/* 803AE274 003AB1D4 28 1A 00 00 */ cmplwi r26, 0
|
||||
/* 803AE278 003AB1D8 41 82 00 18 */ beq lbl_803AE290
|
||||
/* 803AE27C 003AB1DC C0 42 D5 D4 */ lfs f2, lbl_805AF2F4@sda21(r2)
|
||||
/* 803AE280 003AB1E0 C0 22 D5 FC */ lfs f1, lbl_805AF31C@sda21(r2)
|
||||
/* 803AE284 003AB1E4 EC 18 10 28 */ fsubs f0, f24, f2
|
||||
/* 803AE288 003AB1E8 EC 01 00 32 */ fmuls f0, f1, f0
|
||||
/* 803AE28C 003AB1EC EF 02 00 2A */ fadds f24, f2, f0
|
||||
lbl_803AE290:
|
||||
/* 803AE290 003AB1F0 FC 20 C0 90 */ fmr f1, f24
|
||||
/* 803AE294 003AB1F4 C8 42 D5 F0 */ lfd f2, lbl_805AF310@sda21(r2)
|
||||
/* 803AE298 003AB1F8 4B FE 6A 15 */ bl fmod
|
||||
/* 803AE29C 003AB1FC FF C0 08 18 */ frsp f30, f1
|
||||
/* 803AE2A0 003AB200 FC 20 C0 90 */ fmr f1, f24
|
||||
/* 803AE2A4 003AB204 4B FD B6 B1 */ bl __cvt_fp2unsigned
|
||||
/* 803AE2A8 003AB208 FC 20 A0 90 */ fmr f1, f20
|
||||
/* 803AE2AC 003AB20C C8 42 D5 F0 */ lfd f2, lbl_805AF310@sda21(r2)
|
||||
/* 803AE2B0 003AB210 7C 76 1B 78 */ mr r22, r3
|
||||
/* 803AE2B4 003AB214 4B FE 69 F9 */ bl fmod
|
||||
/* 803AE2B8 003AB218 FF A0 08 18 */ frsp f29, f1
|
||||
/* 803AE2BC 003AB21C FC 20 A0 90 */ fmr f1, f20
|
||||
/* 803AE2C0 003AB220 4B FD B6 95 */ bl __cvt_fp2unsigned
|
||||
/* 803AE2C4 003AB224 C0 02 D5 F8 */ lfs f0, lbl_805AF318@sda21(r2)
|
||||
/* 803AE2C8 003AB228 7C 77 1B 78 */ mr r23, r3
|
||||
/* 803AE2CC 003AB22C C8 42 D5 F0 */ lfd f2, lbl_805AF310@sda21(r2)
|
||||
/* 803AE2D0 003AB230 EE E0 C0 28 */ fsubs f23, f0, f24
|
||||
/* 803AE2D4 003AB234 EE 80 A0 28 */ fsubs f20, f0, f20
|
||||
/* 803AE2D8 003AB238 FC 20 B8 90 */ fmr f1, f23
|
||||
/* 803AE2DC 003AB23C 4B FE 69 D1 */ bl fmod
|
||||
/* 803AE2E0 003AB240 FF 80 08 18 */ frsp f28, f1
|
||||
/* 803AE2E4 003AB244 FC 20 B8 90 */ fmr f1, f23
|
||||
/* 803AE2E8 003AB248 4B FD B6 6D */ bl __cvt_fp2unsigned
|
||||
/* 803AE2EC 003AB24C FC 20 A0 90 */ fmr f1, f20
|
||||
/* 803AE2F0 003AB250 C8 42 D5 F0 */ lfd f2, lbl_805AF310@sda21(r2)
|
||||
/* 803AE2F4 003AB254 7C 78 1B 78 */ mr r24, r3
|
||||
/* 803AE2F8 003AB258 4B FE 69 B5 */ bl fmod
|
||||
/* 803AE2FC 003AB25C FF 60 08 18 */ frsp f27, f1
|
||||
/* 803AE300 003AB260 FC 20 A0 90 */ fmr f1, f20
|
||||
/* 803AE304 003AB264 4B FD B6 51 */ bl __cvt_fp2unsigned
|
||||
/* 803AE308 003AB268 28 1B 00 00 */ cmplwi r27, 0
|
||||
/* 803AE30C 003AB26C 7C 7A 1B 78 */ mr r26, r3
|
||||
/* 803AE310 003AB270 40 82 02 7C */ bne lbl_803AE58C
|
||||
/* 803AE314 003AB274 C0 02 D5 D0 */ lfs f0, lbl_805AF2F0@sda21(r2)
|
||||
/* 803AE318 003AB278 EE 80 05 B2 */ fmuls f20, f0, f22
|
||||
/* 803AE31C 003AB27C FC 20 A0 90 */ fmr f1, f20
|
||||
/* 803AE320 003AB280 4B FD B6 35 */ bl __cvt_fp2unsigned
|
||||
/* 803AE324 003AB284 3C 00 43 30 */ lis r0, 0x4330
|
||||
/* 803AE328 003AB288 C0 E2 D5 D4 */ lfs f7, lbl_805AF2F4@sda21(r2)
|
||||
/* 803AE32C 003AB28C 90 61 00 14 */ stw r3, 0x14(r1)
|
||||
/* 803AE330 003AB290 54 64 10 3A */ slwi r4, r3, 2
|
||||
/* 803AE334 003AB294 3B 9E 02 04 */ addi r28, r30, 0x204
|
||||
/* 803AE338 003AB298 56 F7 10 3A */ slwi r23, r23, 2
|
||||
/* 803AE33C 003AB29C 90 01 00 10 */ stw r0, 0x10(r1)
|
||||
/* 803AE340 003AB2A0 7C 7F 22 14 */ add r3, r31, r4
|
||||
/* 803AE344 003AB2A4 C8 22 D5 E0 */ lfd f1, lbl_805AF300@sda21(r2)
|
||||
/* 803AE348 003AB2A8 3B 7C 00 04 */ addi r27, r28, 4
|
||||
/* 803AE34C 003AB2AC C8 01 00 10 */ lfd f0, 0x10(r1)
|
||||
/* 803AE350 003AB2B0 EF 47 E8 28 */ fsubs f26, f7, f29
|
||||
/* 803AE354 003AB2B4 7C 5C BC 2E */ lfsx f2, r28, r23
|
||||
/* 803AE358 003AB2B8 57 5A 10 3A */ slwi r26, r26, 2
|
||||
/* 803AE35C 003AB2BC EC 60 08 28 */ fsubs f3, f0, f1
|
||||
/* 803AE360 003AB2C0 7C 3B BC 2E */ lfsx f1, r27, r23
|
||||
/* 803AE364 003AB2C4 C0 02 D5 D0 */ lfs f0, lbl_805AF2F0@sda21(r2)
|
||||
/* 803AE368 003AB2C8 7C BF 24 2E */ lfsx f5, r31, r4
|
||||
/* 803AE36C 003AB2CC EC 5A 00 B2 */ fmuls f2, f26, f2
|
||||
/* 803AE370 003AB2D0 ED 14 18 28 */ fsubs f8, f20, f3
|
||||
/* 803AE374 003AB2D4 C0 83 00 04 */ lfs f4, 4(r3)
|
||||
/* 803AE378 003AB2D8 EC 3D 00 72 */ fmuls f1, f29, f1
|
||||
/* 803AE37C 003AB2DC EF 20 07 F2 */ fmuls f25, f0, f31
|
||||
/* 803AE380 003AB2E0 C0 62 D5 D8 */ lfs f3, lbl_805AF2F8@sda21(r2)
|
||||
/* 803AE384 003AB2E4 EC C7 40 28 */ fsubs f6, f7, f8
|
||||
/* 803AE388 003AB2E8 EC 08 01 32 */ fmuls f0, f8, f4
|
||||
/* 803AE38C 003AB2EC 56 D6 10 3A */ slwi r22, r22, 2
|
||||
/* 803AE390 003AB2F0 EC 42 08 2A */ fadds f2, f2, f1
|
||||
/* 803AE394 003AB2F4 EC 26 01 72 */ fmuls f1, f6, f5
|
||||
/* 803AE398 003AB2F8 57 18 10 3A */ slwi r24, r24, 2
|
||||
/* 803AE39C 003AB2FC EF E7 D8 28 */ fsubs f31, f7, f27
|
||||
/* 803AE3A0 003AB300 EF 07 F0 28 */ fsubs f24, f7, f30
|
||||
/* 803AE3A4 003AB304 EC 01 00 2A */ fadds f0, f1, f0
|
||||
/* 803AE3A8 003AB308 EE E7 E0 28 */ fsubs f23, f7, f28
|
||||
/* 803AE3AC 003AB30C FC 20 C8 90 */ fmr f1, f25
|
||||
/* 803AE3B0 003AB310 EC 40 00 B2 */ fmuls f2, f0, f2
|
||||
/* 803AE3B4 003AB314 EC 43 00 B2 */ fmuls f2, f3, f2
|
||||
/* 803AE3B8 003AB318 D0 59 00 08 */ stfs f2, 8(r25)
|
||||
/* 803AE3BC 003AB31C 7C 9C D4 2E */ lfsx f4, r28, r26
|
||||
/* 803AE3C0 003AB320 7C 5B D4 2E */ lfsx f2, r27, r26
|
||||
/* 803AE3C4 003AB324 7C 7C B4 2E */ lfsx f3, r28, r22
|
||||
/* 803AE3C8 003AB328 EC BF 01 32 */ fmuls f5, f31, f4
|
||||
/* 803AE3CC 003AB32C EC 9B 00 B2 */ fmuls f4, f27, f2
|
||||
/* 803AE3D0 003AB330 7C 5B B4 2E */ lfsx f2, r27, r22
|
||||
/* 803AE3D4 003AB334 EC 78 00 F2 */ fmuls f3, f24, f3
|
||||
/* 803AE3D8 003AB338 EC 5E 00 B2 */ fmuls f2, f30, f2
|
||||
/* 803AE3DC 003AB33C EC 85 20 2A */ fadds f4, f5, f4
|
||||
/* 803AE3E0 003AB340 EC 43 10 2A */ fadds f2, f3, f2
|
||||
/* 803AE3E4 003AB344 EC 00 01 32 */ fmuls f0, f0, f4
|
||||
/* 803AE3E8 003AB348 EC 40 00 B2 */ fmuls f2, f0, f2
|
||||
/* 803AE3EC 003AB34C D0 59 00 04 */ stfs f2, 4(r25)
|
||||
/* 803AE3F0 003AB350 7C 7C C4 2E */ lfsx f3, r28, r24
|
||||
/* 803AE3F4 003AB354 7C 5B C4 2E */ lfsx f2, r27, r24
|
||||
/* 803AE3F8 003AB358 EC 77 00 F2 */ fmuls f3, f23, f3
|
||||
/* 803AE3FC 003AB35C EC 5C 00 B2 */ fmuls f2, f28, f2
|
||||
/* 803AE400 003AB360 EC 43 10 2A */ fadds f2, f3, f2
|
||||
/* 803AE404 003AB364 EC 00 00 B2 */ fmuls f0, f0, f2
|
||||
/* 803AE408 003AB368 D0 19 00 00 */ stfs f0, 0(r25)
|
||||
/* 803AE40C 003AB36C 4B FD B5 49 */ bl __cvt_fp2unsigned
|
||||
/* 803AE410 003AB370 3C 00 43 30 */ lis r0, 0x4330
|
||||
/* 803AE414 003AB374 54 64 10 3A */ slwi r4, r3, 2
|
||||
/* 803AE418 003AB378 90 61 00 0C */ stw r3, 0xc(r1)
|
||||
/* 803AE41C 003AB37C 7C 7F 22 14 */ add r3, r31, r4
|
||||
/* 803AE420 003AB380 7C 1C BC 2E */ lfsx f0, r28, r23
|
||||
/* 803AE424 003AB384 90 01 00 08 */ stw r0, 8(r1)
|
||||
/* 803AE428 003AB388 C8 62 D5 E0 */ lfd f3, lbl_805AF300@sda21(r2)
|
||||
/* 803AE42C 003AB38C EC 5A 00 32 */ fmuls f2, f26, f0
|
||||
/* 803AE430 003AB390 C8 01 00 08 */ lfd f0, 8(r1)
|
||||
/* 803AE434 003AB394 7C 3B BC 2E */ lfsx f1, r27, r23
|
||||
/* 803AE438 003AB398 EC 60 18 28 */ fsubs f3, f0, f3
|
||||
/* 803AE43C 003AB39C C0 02 D5 D0 */ lfs f0, lbl_805AF2F0@sda21(r2)
|
||||
/* 803AE440 003AB3A0 EC 3D 00 72 */ fmuls f1, f29, f1
|
||||
/* 803AE444 003AB3A4 C0 A2 D5 D4 */ lfs f5, lbl_805AF2F4@sda21(r2)
|
||||
/* 803AE448 003AB3A8 EE C0 05 72 */ fmuls f22, f0, f21
|
||||
/* 803AE44C 003AB3AC 7C 9F 24 2E */ lfsx f4, r31, r4
|
||||
/* 803AE450 003AB3B0 EC D9 18 28 */ fsubs f6, f25, f3
|
||||
/* 803AE454 003AB3B4 C0 63 00 04 */ lfs f3, 4(r3)
|
||||
/* 803AE458 003AB3B8 EC 02 08 2A */ fadds f0, f2, f1
|
||||
/* 803AE45C 003AB3BC C0 42 D5 D8 */ lfs f2, lbl_805AF2F8@sda21(r2)
|
||||
/* 803AE460 003AB3C0 FC 20 B0 90 */ fmr f1, f22
|
||||
/* 803AE464 003AB3C4 EC A5 30 28 */ fsubs f5, f5, f6
|
||||
/* 803AE468 003AB3C8 EC 66 00 F2 */ fmuls f3, f6, f3
|
||||
/* 803AE46C 003AB3CC EC 85 01 32 */ fmuls f4, f5, f4
|
||||
/* 803AE470 003AB3D0 EC A4 18 2A */ fadds f5, f4, f3
|
||||
/* 803AE474 003AB3D4 EC 05 00 32 */ fmuls f0, f5, f0
|
||||
/* 803AE478 003AB3D8 EC 02 00 32 */ fmuls f0, f2, f0
|
||||
/* 803AE47C 003AB3DC D0 19 00 14 */ stfs f0, 0x14(r25)
|
||||
/* 803AE480 003AB3E0 7C 7C D4 2E */ lfsx f3, r28, r26
|
||||
/* 803AE484 003AB3E4 7C 1B D4 2E */ lfsx f0, r27, r26
|
||||
/* 803AE488 003AB3E8 7C 5C B4 2E */ lfsx f2, r28, r22
|
||||
/* 803AE48C 003AB3EC EC 9F 00 F2 */ fmuls f4, f31, f3
|
||||
/* 803AE490 003AB3F0 EC 7B 00 32 */ fmuls f3, f27, f0
|
||||
/* 803AE494 003AB3F4 7C 1B B4 2E */ lfsx f0, r27, r22
|
||||
/* 803AE498 003AB3F8 EC 58 00 B2 */ fmuls f2, f24, f2
|
||||
/* 803AE49C 003AB3FC EC 1E 00 32 */ fmuls f0, f30, f0
|
||||
/* 803AE4A0 003AB400 EC 64 18 2A */ fadds f3, f4, f3
|
||||
/* 803AE4A4 003AB404 EC 02 00 2A */ fadds f0, f2, f0
|
||||
/* 803AE4A8 003AB408 EC A5 00 F2 */ fmuls f5, f5, f3
|
||||
/* 803AE4AC 003AB40C EC 05 00 32 */ fmuls f0, f5, f0
|
||||
/* 803AE4B0 003AB410 D0 19 00 10 */ stfs f0, 0x10(r25)
|
||||
/* 803AE4B4 003AB414 7C 5C C4 2E */ lfsx f2, r28, r24
|
||||
/* 803AE4B8 003AB418 7C 1B C4 2E */ lfsx f0, r27, r24
|
||||
/* 803AE4BC 003AB41C EC 57 00 B2 */ fmuls f2, f23, f2
|
||||
/* 803AE4C0 003AB420 EC 1C 00 32 */ fmuls f0, f28, f0
|
||||
/* 803AE4C4 003AB424 EC 02 00 2A */ fadds f0, f2, f0
|
||||
/* 803AE4C8 003AB428 EC 05 00 32 */ fmuls f0, f5, f0
|
||||
/* 803AE4CC 003AB42C D0 19 00 0C */ stfs f0, 0xc(r25)
|
||||
/* 803AE4D0 003AB430 4B FD B4 85 */ bl __cvt_fp2unsigned
|
||||
/* 803AE4D4 003AB434 3C 00 43 30 */ lis r0, 0x4330
|
||||
/* 803AE4D8 003AB438 54 64 10 3A */ slwi r4, r3, 2
|
||||
/* 803AE4DC 003AB43C 90 61 00 1C */ stw r3, 0x1c(r1)
|
||||
/* 803AE4E0 003AB440 7C 7F 22 14 */ add r3, r31, r4
|
||||
/* 803AE4E4 003AB444 7C 1C BC 2E */ lfsx f0, r28, r23
|
||||
/* 803AE4E8 003AB448 90 01 00 18 */ stw r0, 0x18(r1)
|
||||
/* 803AE4EC 003AB44C C8 62 D5 E0 */ lfd f3, lbl_805AF300@sda21(r2)
|
||||
/* 803AE4F0 003AB450 EC 3A 00 32 */ fmuls f1, f26, f0
|
||||
/* 803AE4F4 003AB454 C8 41 00 18 */ lfd f2, 0x18(r1)
|
||||
/* 803AE4F8 003AB458 7C 1B BC 2E */ lfsx f0, r27, r23
|
||||
/* 803AE4FC 003AB45C EC A2 18 28 */ fsubs f5, f2, f3
|
||||
/* 803AE500 003AB460 C0 82 D5 D4 */ lfs f4, lbl_805AF2F4@sda21(r2)
|
||||
/* 803AE504 003AB464 EC 1D 00 32 */ fmuls f0, f29, f0
|
||||
/* 803AE508 003AB468 7C 7F 24 2E */ lfsx f3, r31, r4
|
||||
/* 803AE50C 003AB46C C0 43 00 04 */ lfs f2, 4(r3)
|
||||
/* 803AE510 003AB470 EC B6 28 28 */ fsubs f5, f22, f5
|
||||
/* 803AE514 003AB474 EC 01 00 2A */ fadds f0, f1, f0
|
||||
/* 803AE518 003AB478 C0 22 D5 D8 */ lfs f1, lbl_805AF2F8@sda21(r2)
|
||||
/* 803AE51C 003AB47C EC 84 28 28 */ fsubs f4, f4, f5
|
||||
/* 803AE520 003AB480 EC 45 00 B2 */ fmuls f2, f5, f2
|
||||
/* 803AE524 003AB484 EC 64 00 F2 */ fmuls f3, f4, f3
|
||||
/* 803AE528 003AB488 EC 83 10 2A */ fadds f4, f3, f2
|
||||
/* 803AE52C 003AB48C EC 04 00 32 */ fmuls f0, f4, f0
|
||||
/* 803AE530 003AB490 EC 01 00 32 */ fmuls f0, f1, f0
|
||||
/* 803AE534 003AB494 D0 19 00 20 */ stfs f0, 0x20(r25)
|
||||
/* 803AE538 003AB498 7C 5C D4 2E */ lfsx f2, r28, r26
|
||||
/* 803AE53C 003AB49C 7C 1B D4 2E */ lfsx f0, r27, r26
|
||||
/* 803AE540 003AB4A0 7C 3C B4 2E */ lfsx f1, r28, r22
|
||||
/* 803AE544 003AB4A4 EC 7F 00 B2 */ fmuls f3, f31, f2
|
||||
/* 803AE548 003AB4A8 EC 5B 00 32 */ fmuls f2, f27, f0
|
||||
/* 803AE54C 003AB4AC 7C 1B B4 2E */ lfsx f0, r27, r22
|
||||
/* 803AE550 003AB4B0 EC 38 00 72 */ fmuls f1, f24, f1
|
||||
/* 803AE554 003AB4B4 EC 1E 00 32 */ fmuls f0, f30, f0
|
||||
/* 803AE558 003AB4B8 EC 43 10 2A */ fadds f2, f3, f2
|
||||
/* 803AE55C 003AB4BC EC 01 00 2A */ fadds f0, f1, f0
|
||||
/* 803AE560 003AB4C0 EC 84 00 B2 */ fmuls f4, f4, f2
|
||||
/* 803AE564 003AB4C4 EC 04 00 32 */ fmuls f0, f4, f0
|
||||
/* 803AE568 003AB4C8 D0 19 00 1C */ stfs f0, 0x1c(r25)
|
||||
/* 803AE56C 003AB4CC 7C 3C C4 2E */ lfsx f1, r28, r24
|
||||
/* 803AE570 003AB4D0 7C 1B C4 2E */ lfsx f0, r27, r24
|
||||
/* 803AE574 003AB4D4 EC 37 00 72 */ fmuls f1, f23, f1
|
||||
/* 803AE578 003AB4D8 EC 1C 00 32 */ fmuls f0, f28, f0
|
||||
/* 803AE57C 003AB4DC EC 01 00 2A */ fadds f0, f1, f0
|
||||
/* 803AE580 003AB4E0 EC 04 00 32 */ fmuls f0, f4, f0
|
||||
/* 803AE584 003AB4E4 D0 19 00 18 */ stfs f0, 0x18(r25)
|
||||
/* 803AE588 003AB4E8 48 00 02 00 */ b lbl_803AE788
|
||||
lbl_803AE58C:
|
||||
/* 803AE58C 003AB4EC C0 02 D5 D0 */ lfs f0, lbl_805AF2F0@sda21(r2)
|
||||
/* 803AE590 003AB4F0 EE 80 05 B2 */ fmuls f20, f0, f22
|
||||
/* 803AE594 003AB4F4 FC 20 A0 90 */ fmr f1, f20
|
||||
/* 803AE598 003AB4F8 4B FD B3 BD */ bl __cvt_fp2unsigned
|
||||
/* 803AE59C 003AB4FC 3C 00 43 30 */ lis r0, 0x4330
|
||||
/* 803AE5A0 003AB500 C0 02 D5 D4 */ lfs f0, lbl_805AF2F4@sda21(r2)
|
||||
/* 803AE5A4 003AB504 90 61 00 1C */ stw r3, 0x1c(r1)
|
||||
/* 803AE5A8 003AB508 54 64 10 3A */ slwi r4, r3, 2
|
||||
/* 803AE5AC 003AB50C 3B 7E 02 04 */ addi r27, r30, 0x204
|
||||
/* 803AE5B0 003AB510 56 F7 10 3A */ slwi r23, r23, 2
|
||||
/* 803AE5B4 003AB514 90 01 00 18 */ stw r0, 0x18(r1)
|
||||
/* 803AE5B8 003AB518 7C 7F 22 14 */ add r3, r31, r4
|
||||
/* 803AE5BC 003AB51C C8 62 D5 E0 */ lfd f3, lbl_805AF300@sda21(r2)
|
||||
/* 803AE5C0 003AB520 3A BB 00 04 */ addi r21, r27, 4
|
||||
/* 803AE5C4 003AB524 C8 41 00 18 */ lfd f2, 0x18(r1)
|
||||
/* 803AE5C8 003AB528 57 5A 10 3A */ slwi r26, r26, 2
|
||||
/* 803AE5CC 003AB52C 56 D6 10 3A */ slwi r22, r22, 2
|
||||
/* 803AE5D0 003AB530 7C 35 BC 2E */ lfsx f1, r21, r23
|
||||
/* 803AE5D4 003AB534 EC A2 18 28 */ fsubs f5, f2, f3
|
||||
/* 803AE5D8 003AB538 7C 75 D4 2E */ lfsx f3, r21, r26
|
||||
/* 803AE5DC 003AB53C 7C 55 B4 2E */ lfsx f2, r21, r22
|
||||
/* 803AE5E0 003AB540 EE E0 E8 28 */ fsubs f23, f0, f29
|
||||
/* 803AE5E4 003AB544 7C 9B BC 2E */ lfsx f4, r27, r23
|
||||
/* 803AE5E8 003AB548 EF 00 D8 28 */ fsubs f24, f0, f27
|
||||
/* 803AE5EC 003AB54C ED 34 28 28 */ fsubs f9, f20, f5
|
||||
/* 803AE5F0 003AB550 C0 C3 00 04 */ lfs f6, 4(r3)
|
||||
/* 803AE5F4 003AB554 7C BB D4 2E */ lfsx f5, r27, r26
|
||||
/* 803AE5F8 003AB558 ED 17 01 32 */ fmuls f8, f23, f4
|
||||
/* 803AE5FC 003AB55C 7D 5F 24 2E */ lfsx f10, r31, r4
|
||||
/* 803AE600 003AB560 EC FD 00 72 */ fmuls f7, f29, f1
|
||||
/* 803AE604 003AB564 ED 60 48 28 */ fsubs f11, f0, f9
|
||||
/* 803AE608 003AB568 7C 9B B4 2E */ lfsx f4, r27, r22
|
||||
/* 803AE60C 003AB56C EE A0 F0 28 */ fsubs f21, f0, f30
|
||||
/* 803AE610 003AB570 C0 22 D5 D0 */ lfs f1, lbl_805AF2F0@sda21(r2)
|
||||
/* 803AE614 003AB574 ED 29 01 B2 */ fmuls f9, f9, f6
|
||||
/* 803AE618 003AB578 57 18 10 3A */ slwi r24, r24, 2
|
||||
/* 803AE61C 003AB57C ED 4B 02 B2 */ fmuls f10, f11, f10
|
||||
/* 803AE620 003AB580 57 A0 10 3A */ slwi r0, r29, 2
|
||||
/* 803AE624 003AB584 EC D8 01 72 */ fmuls f6, f24, f5
|
||||
/* 803AE628 003AB588 38 7E 02 14 */ addi r3, r30, 0x214
|
||||
/* 803AE62C 003AB58C EC BB 00 F2 */ fmuls f5, f27, f3
|
||||
/* 803AE630 003AB590 57 84 10 3A */ slwi r4, r28, 2
|
||||
/* 803AE634 003AB594 EC 6A 48 2A */ fadds f3, f10, f9
|
||||
/* 803AE638 003AB598 EC E8 38 2A */ fadds f7, f8, f7
|
||||
/* 803AE63C 003AB59C EC C6 28 2A */ fadds f6, f6, f5
|
||||
/* 803AE640 003AB5A0 EC B5 01 32 */ fmuls f5, f21, f4
|
||||
/* 803AE644 003AB5A4 EC 9E 00 B2 */ fmuls f4, f30, f2
|
||||
/* 803AE648 003AB5A8 EC 43 01 F2 */ fmuls f2, f3, f7
|
||||
/* 803AE64C 003AB5AC EC 63 01 B2 */ fmuls f3, f3, f6
|
||||
/* 803AE650 003AB5B0 EC 85 20 2A */ fadds f4, f5, f4
|
||||
/* 803AE654 003AB5B4 EE 80 E0 28 */ fsubs f20, f0, f28
|
||||
/* 803AE658 003AB5B8 EE C1 07 F2 */ fmuls f22, f1, f31
|
||||
/* 803AE65C 003AB5BC EC 23 01 32 */ fmuls f1, f3, f4
|
||||
/* 803AE660 003AB5C0 EC A0 D0 28 */ fsubs f5, f0, f26
|
||||
/* 803AE664 003AB5C4 EC 80 C8 28 */ fsubs f4, f0, f25
|
||||
/* 803AE668 003AB5C8 D0 39 00 04 */ stfs f1, 4(r25)
|
||||
/* 803AE66C 003AB5CC FC 20 B0 90 */ fmr f1, f22
|
||||
/* 803AE670 003AB5D0 7C DB C4 2E */ lfsx f6, r27, r24
|
||||
/* 803AE674 003AB5D4 7C 15 C4 2E */ lfsx f0, r21, r24
|
||||
/* 803AE678 003AB5D8 EC D4 01 B2 */ fmuls f6, f20, f6
|
||||
/* 803AE67C 003AB5DC EC 1C 00 32 */ fmuls f0, f28, f0
|
||||
/* 803AE680 003AB5E0 EC 06 00 2A */ fadds f0, f6, f0
|
||||
/* 803AE684 003AB5E4 EC 03 00 32 */ fmuls f0, f3, f0
|
||||
/* 803AE688 003AB5E8 D0 19 00 00 */ stfs f0, 0(r25)
|
||||
/* 803AE68C 003AB5EC 7C 63 04 2E */ lfsx f3, r3, r0
|
||||
/* 803AE690 003AB5F0 7C 15 04 2E */ lfsx f0, r21, r0
|
||||
/* 803AE694 003AB5F4 EC 65 00 F2 */ fmuls f3, f5, f3
|
||||
/* 803AE698 003AB5F8 EC 1A 00 32 */ fmuls f0, f26, f0
|
||||
/* 803AE69C 003AB5FC EC 03 00 2A */ fadds f0, f3, f0
|
||||
/* 803AE6A0 003AB600 EC 02 00 32 */ fmuls f0, f2, f0
|
||||
/* 803AE6A4 003AB604 D0 19 00 1C */ stfs f0, 0x1c(r25)
|
||||
/* 803AE6A8 003AB608 7C 63 24 2E */ lfsx f3, r3, r4
|
||||
/* 803AE6AC 003AB60C 7C 15 24 2E */ lfsx f0, r21, r4
|
||||
/* 803AE6B0 003AB610 EC 64 00 F2 */ fmuls f3, f4, f3
|
||||
/* 803AE6B4 003AB614 EC 19 00 32 */ fmuls f0, f25, f0
|
||||
/* 803AE6B8 003AB618 EC 03 00 2A */ fadds f0, f3, f0
|
||||
/* 803AE6BC 003AB61C EC 02 00 32 */ fmuls f0, f2, f0
|
||||
/* 803AE6C0 003AB620 D0 19 00 18 */ stfs f0, 0x18(r25)
|
||||
/* 803AE6C4 003AB624 4B FD B2 91 */ bl __cvt_fp2unsigned
|
||||
/* 803AE6C8 003AB628 3C 00 43 30 */ lis r0, 0x4330
|
||||
/* 803AE6CC 003AB62C 54 64 10 3A */ slwi r4, r3, 2
|
||||
/* 803AE6D0 003AB630 90 61 00 14 */ stw r3, 0x14(r1)
|
||||
/* 803AE6D4 003AB634 7C 7F 22 14 */ add r3, r31, r4
|
||||
/* 803AE6D8 003AB638 7C 1B BC 2E */ lfsx f0, r27, r23
|
||||
/* 803AE6DC 003AB63C 90 01 00 10 */ stw r0, 0x10(r1)
|
||||
/* 803AE6E0 003AB640 C8 62 D5 E0 */ lfd f3, lbl_805AF300@sda21(r2)
|
||||
/* 803AE6E4 003AB644 EC 37 00 32 */ fmuls f1, f23, f0
|
||||
/* 803AE6E8 003AB648 C8 41 00 10 */ lfd f2, 0x10(r1)
|
||||
/* 803AE6EC 003AB64C 7C 15 BC 2E */ lfsx f0, r21, r23
|
||||
/* 803AE6F0 003AB650 EC 42 18 28 */ fsubs f2, f2, f3
|
||||
/* 803AE6F4 003AB654 C0 A2 D5 D4 */ lfs f5, lbl_805AF2F4@sda21(r2)
|
||||
/* 803AE6F8 003AB658 EC 1D 00 32 */ fmuls f0, f29, f0
|
||||
/* 803AE6FC 003AB65C 7C 9F 24 2E */ lfsx f4, r31, r4
|
||||
/* 803AE700 003AB660 C0 63 00 04 */ lfs f3, 4(r3)
|
||||
/* 803AE704 003AB664 EC D6 10 28 */ fsubs f6, f22, f2
|
||||
/* 803AE708 003AB668 EC 21 00 2A */ fadds f1, f1, f0
|
||||
/* 803AE70C 003AB66C C0 42 D5 D8 */ lfs f2, lbl_805AF2F8@sda21(r2)
|
||||
/* 803AE710 003AB670 C0 02 D6 00 */ lfs f0, lbl_805AF320@sda21(r2)
|
||||
/* 803AE714 003AB674 EC A5 30 28 */ fsubs f5, f5, f6
|
||||
/* 803AE718 003AB678 EC 66 00 F2 */ fmuls f3, f6, f3
|
||||
/* 803AE71C 003AB67C EC 85 01 32 */ fmuls f4, f5, f4
|
||||
/* 803AE720 003AB680 EC A4 18 2A */ fadds f5, f4, f3
|
||||
/* 803AE724 003AB684 EC 25 00 72 */ fmuls f1, f5, f1
|
||||
/* 803AE728 003AB688 EC 22 00 72 */ fmuls f1, f2, f1
|
||||
/* 803AE72C 003AB68C D0 39 00 14 */ stfs f1, 0x14(r25)
|
||||
/* 803AE730 003AB690 7C 7B D4 2E */ lfsx f3, r27, r26
|
||||
/* 803AE734 003AB694 7C 35 D4 2E */ lfsx f1, r21, r26
|
||||
/* 803AE738 003AB698 7C 5B B4 2E */ lfsx f2, r27, r22
|
||||
/* 803AE73C 003AB69C EC 98 00 F2 */ fmuls f4, f24, f3
|
||||
/* 803AE740 003AB6A0 EC 7B 00 72 */ fmuls f3, f27, f1
|
||||
/* 803AE744 003AB6A4 7C 35 B4 2E */ lfsx f1, r21, r22
|
||||
/* 803AE748 003AB6A8 EC 55 00 B2 */ fmuls f2, f21, f2
|
||||
/* 803AE74C 003AB6AC EC 3E 00 72 */ fmuls f1, f30, f1
|
||||
/* 803AE750 003AB6B0 EC 64 18 2A */ fadds f3, f4, f3
|
||||
/* 803AE754 003AB6B4 EC 22 08 2A */ fadds f1, f2, f1
|
||||
/* 803AE758 003AB6B8 EC A5 00 F2 */ fmuls f5, f5, f3
|
||||
/* 803AE75C 003AB6BC EC 25 00 72 */ fmuls f1, f5, f1
|
||||
/* 803AE760 003AB6C0 D0 39 00 10 */ stfs f1, 0x10(r25)
|
||||
/* 803AE764 003AB6C4 7C 5B C4 2E */ lfsx f2, r27, r24
|
||||
/* 803AE768 003AB6C8 7C 35 C4 2E */ lfsx f1, r21, r24
|
||||
/* 803AE76C 003AB6CC EC 54 00 B2 */ fmuls f2, f20, f2
|
||||
/* 803AE770 003AB6D0 EC 3C 00 72 */ fmuls f1, f28, f1
|
||||
/* 803AE774 003AB6D4 EC 22 08 2A */ fadds f1, f2, f1
|
||||
/* 803AE778 003AB6D8 EC 25 00 72 */ fmuls f1, f5, f1
|
||||
/* 803AE77C 003AB6DC D0 39 00 0C */ stfs f1, 0xc(r25)
|
||||
/* 803AE780 003AB6E0 D0 19 00 08 */ stfs f0, 8(r25)
|
||||
/* 803AE784 003AB6E4 D0 19 00 20 */ stfs f0, 0x20(r25)
|
||||
lbl_803AE788:
|
||||
/* 803AE788 003AB6E8 E3 E1 01 08 */ psq_l f31, 264(r1), 0, qr0
|
||||
/* 803AE78C 003AB6EC CB E1 01 00 */ lfd f31, 0x100(r1)
|
||||
/* 803AE790 003AB6F0 E3 C1 00 F8 */ psq_l f30, 248(r1), 0, qr0
|
||||
/* 803AE794 003AB6F4 CB C1 00 F0 */ lfd f30, 0xf0(r1)
|
||||
/* 803AE798 003AB6F8 E3 A1 00 E8 */ psq_l f29, 232(r1), 0, qr0
|
||||
/* 803AE79C 003AB6FC CB A1 00 E0 */ lfd f29, 0xe0(r1)
|
||||
/* 803AE7A0 003AB700 E3 81 00 D8 */ psq_l f28, 216(r1), 0, qr0
|
||||
/* 803AE7A4 003AB704 CB 81 00 D0 */ lfd f28, 0xd0(r1)
|
||||
/* 803AE7A8 003AB708 E3 61 00 C8 */ psq_l f27, 200(r1), 0, qr0
|
||||
/* 803AE7AC 003AB70C CB 61 00 C0 */ lfd f27, 0xc0(r1)
|
||||
/* 803AE7B0 003AB710 E3 41 00 B8 */ psq_l f26, 184(r1), 0, qr0
|
||||
/* 803AE7B4 003AB714 CB 41 00 B0 */ lfd f26, 0xb0(r1)
|
||||
/* 803AE7B8 003AB718 E3 21 00 A8 */ psq_l f25, 168(r1), 0, qr0
|
||||
/* 803AE7BC 003AB71C CB 21 00 A0 */ lfd f25, 0xa0(r1)
|
||||
/* 803AE7C0 003AB720 E3 01 00 98 */ psq_l f24, 152(r1), 0, qr0
|
||||
/* 803AE7C4 003AB724 CB 01 00 90 */ lfd f24, 0x90(r1)
|
||||
/* 803AE7C8 003AB728 E2 E1 00 88 */ psq_l f23, 136(r1), 0, qr0
|
||||
/* 803AE7CC 003AB72C CA E1 00 80 */ lfd f23, 0x80(r1)
|
||||
/* 803AE7D0 003AB730 E2 C1 00 78 */ psq_l f22, 120(r1), 0, qr0
|
||||
/* 803AE7D4 003AB734 CA C1 00 70 */ lfd f22, 0x70(r1)
|
||||
/* 803AE7D8 003AB738 E2 A1 00 68 */ psq_l f21, 104(r1), 0, qr0
|
||||
/* 803AE7DC 003AB73C CA A1 00 60 */ lfd f21, 0x60(r1)
|
||||
/* 803AE7E0 003AB740 E2 81 00 58 */ psq_l f20, 88(r1), 0, qr0
|
||||
/* 803AE7E4 003AB744 39 61 00 50 */ addi r11, r1, 0x50
|
||||
/* 803AE7E8 003AB748 CA 81 00 50 */ lfd f20, 0x50(r1)
|
||||
/* 803AE7EC 003AB74C 4B FD B2 C5 */ bl _restgpr_21
|
||||
/* 803AE7F0 003AB750 80 01 01 14 */ lwz r0, 0x114(r1)
|
||||
/* 803AE7F4 003AB754 7C 08 03 A6 */ mtlr r0
|
||||
/* 803AE7F8 003AB758 38 21 01 10 */ addi r1, r1, 0x110
|
||||
/* 803AE7FC 003AB75C 4E 80 00 20 */ blr
|
|
@ -0,0 +1,938 @@
|
|||
.include "macros.inc"
|
||||
|
||||
.section .text, "ax"
|
||||
|
||||
.global ReverbHICreate
|
||||
ReverbHICreate:
|
||||
/* 803B5BC0 003B2B20 94 21 FF 40 */ stwu r1, -0xc0(r1)
|
||||
/* 803B5BC4 003B2B24 7C 08 02 A6 */ mflr r0
|
||||
/* 803B5BC8 003B2B28 90 01 00 C4 */ stw r0, 0xc4(r1)
|
||||
/* 803B5BCC 003B2B2C DB E1 00 B0 */ stfd f31, 0xb0(r1)
|
||||
/* 803B5BD0 003B2B30 F3 E1 00 B8 */ psq_st f31, 184(r1), 0, qr0
|
||||
/* 803B5BD4 003B2B34 DB C1 00 A0 */ stfd f30, 0xa0(r1)
|
||||
/* 803B5BD8 003B2B38 F3 C1 00 A8 */ psq_st f30, 168(r1), 0, qr0
|
||||
/* 803B5BDC 003B2B3C DB A1 00 90 */ stfd f29, 0x90(r1)
|
||||
/* 803B5BE0 003B2B40 F3 A1 00 98 */ psq_st f29, 152(r1), 0, qr0
|
||||
/* 803B5BE4 003B2B44 DB 81 00 80 */ stfd f28, 0x80(r1)
|
||||
/* 803B5BE8 003B2B48 F3 81 00 88 */ psq_st f28, 136(r1), 0, qr0
|
||||
/* 803B5BEC 003B2B4C DB 61 00 70 */ stfd f27, 0x70(r1)
|
||||
/* 803B5BF0 003B2B50 F3 61 00 78 */ psq_st f27, 120(r1), 0, qr0
|
||||
/* 803B5BF4 003B2B54 DB 41 00 60 */ stfd f26, 0x60(r1)
|
||||
/* 803B5BF8 003B2B58 F3 41 00 68 */ psq_st f26, 104(r1), 0, qr0
|
||||
/* 803B5BFC 003B2B5C DB 21 00 50 */ stfd f25, 0x50(r1)
|
||||
/* 803B5C00 003B2B60 F3 21 00 58 */ psq_st f25, 88(r1), 0, qr0
|
||||
/* 803B5C04 003B2B64 DB 01 00 40 */ stfd f24, 0x40(r1)
|
||||
/* 803B5C08 003B2B68 F3 01 00 48 */ psq_st f24, 72(r1), 0, qr0
|
||||
/* 803B5C0C 003B2B6C 39 61 00 40 */ addi r11, r1, 0x40
|
||||
/* 803B5C10 003B2B70 4B FD 3E 51 */ bl func_80389A60
|
||||
/* 803B5C14 003B2B74 FF 00 08 90 */ fmr f24, f1
|
||||
/* 803B5C18 003B2B78 C0 E2 D6 D0 */ lfs f7, lbl_805AF3F0@sda21(r2)
|
||||
/* 803B5C1C 003B2B7C FF 80 10 90 */ fmr f28, f2
|
||||
/* 803B5C20 003B2B80 7C 7E 1B 78 */ mr r30, r3
|
||||
/* 803B5C24 003B2B84 FF 20 18 90 */ fmr f25, f3
|
||||
/* 803B5C28 003B2B88 FF 40 20 90 */ fmr f26, f4
|
||||
/* 803B5C2C 003B2B8C FF E0 28 90 */ fmr f31, f5
|
||||
/* 803B5C30 003B2B90 FF 60 30 90 */ fmr f27, f6
|
||||
/* 803B5C34 003B2B94 FC 18 38 40 */ fcmpo cr0, f24, f7
|
||||
/* 803B5C38 003B2B98 41 80 00 6C */ blt lbl_803B5CA4
|
||||
/* 803B5C3C 003B2B9C C0 22 D6 D4 */ lfs f1, lbl_805AF3F4@sda21(r2)
|
||||
/* 803B5C40 003B2BA0 FC 18 08 40 */ fcmpo cr0, f24, f1
|
||||
/* 803B5C44 003B2BA4 41 81 00 60 */ bgt lbl_803B5CA4
|
||||
/* 803B5C48 003B2BA8 C0 02 D6 D8 */ lfs f0, lbl_805AF3F8@sda21(r2)
|
||||
/* 803B5C4C 003B2BAC FC 1C 00 40 */ fcmpo cr0, f28, f0
|
||||
/* 803B5C50 003B2BB0 41 80 00 54 */ blt lbl_803B5CA4
|
||||
/* 803B5C54 003B2BB4 C0 02 D6 DC */ lfs f0, lbl_805AF3FC@sda21(r2)
|
||||
/* 803B5C58 003B2BB8 FC 1C 00 40 */ fcmpo cr0, f28, f0
|
||||
/* 803B5C5C 003B2BBC 41 81 00 48 */ bgt lbl_803B5CA4
|
||||
/* 803B5C60 003B2BC0 FC 19 38 40 */ fcmpo cr0, f25, f7
|
||||
/* 803B5C64 003B2BC4 41 80 00 40 */ blt lbl_803B5CA4
|
||||
/* 803B5C68 003B2BC8 FC 19 08 40 */ fcmpo cr0, f25, f1
|
||||
/* 803B5C6C 003B2BCC 41 81 00 38 */ bgt lbl_803B5CA4
|
||||
/* 803B5C70 003B2BD0 FC 1B 38 40 */ fcmpo cr0, f27, f7
|
||||
/* 803B5C74 003B2BD4 41 80 00 30 */ blt lbl_803B5CA4
|
||||
/* 803B5C78 003B2BD8 FC 1B 08 40 */ fcmpo cr0, f27, f1
|
||||
/* 803B5C7C 003B2BDC 41 81 00 28 */ bgt lbl_803B5CA4
|
||||
/* 803B5C80 003B2BE0 FC 1A 38 40 */ fcmpo cr0, f26, f7
|
||||
/* 803B5C84 003B2BE4 41 80 00 20 */ blt lbl_803B5CA4
|
||||
/* 803B5C88 003B2BE8 FC 1A 08 40 */ fcmpo cr0, f26, f1
|
||||
/* 803B5C8C 003B2BEC 41 81 00 18 */ bgt lbl_803B5CA4
|
||||
/* 803B5C90 003B2BF0 FC 1F 38 40 */ fcmpo cr0, f31, f7
|
||||
/* 803B5C94 003B2BF4 41 80 00 10 */ blt lbl_803B5CA4
|
||||
/* 803B5C98 003B2BF8 C0 02 D6 E0 */ lfs f0, lbl_805AF400@sda21(r2)
|
||||
/* 803B5C9C 003B2BFC FC 1F 00 40 */ fcmpo cr0, f31, f0
|
||||
/* 803B5CA0 003B2C00 40 81 00 0C */ ble lbl_803B5CAC
|
||||
lbl_803B5CA4:
|
||||
/* 803B5CA4 003B2C04 38 60 00 00 */ li r3, 0
|
||||
/* 803B5CA8 003B2C08 48 00 03 CC */ b lbl_803B6074
|
||||
lbl_803B5CAC:
|
||||
/* 803B5CAC 003B2C0C 38 80 00 00 */ li r4, 0
|
||||
/* 803B5CB0 003B2C10 38 A0 01 C4 */ li r5, 0x1c4
|
||||
/* 803B5CB4 003B2C14 4B C4 D6 F5 */ bl memset
|
||||
/* 803B5CB8 003B2C18 C0 02 D6 E4 */ lfs f0, lbl_805AF404@sda21(r2)
|
||||
/* 803B5CBC 003B2C1C 3C 60 80 3F */ lis r3, lbl_803F6470@ha
|
||||
/* 803B5CC0 003B2C20 C3 C2 D6 D0 */ lfs f30, lbl_805AF3F0@sda21(r2)
|
||||
/* 803B5CC4 003B2C24 3B A3 64 70 */ addi r29, r3, lbl_803F6470@l
|
||||
/* 803B5CC8 003B2C28 EF 80 07 32 */ fmuls f28, f0, f28
|
||||
/* 803B5CCC 003B2C2C CB A2 D6 F8 */ lfd f29, lbl_805AF418@sda21(r2)
|
||||
/* 803B5CD0 003B2C30 3B E0 00 00 */ li r31, 0
|
||||
/* 803B5CD4 003B2C34 3F 80 43 30 */ lis r28, 0x4330
|
||||
/* 803B5CD8 003B2C38 48 00 02 B4 */ b lbl_803B5F8C
|
||||
lbl_803B5CDC:
|
||||
/* 803B5CDC 003B2C3C 57 F7 06 3E */ clrlwi r23, r31, 0x18
|
||||
/* 803B5CE0 003B2C40 3A C0 00 00 */ li r22, 0
|
||||
/* 803B5CE4 003B2C44 1F 17 00 03 */ mulli r24, r23, 3
|
||||
/* 803B5CE8 003B2C48 48 00 00 F8 */ b lbl_803B5DE0
|
||||
lbl_803B5CEC:
|
||||
/* 803B5CEC 003B2C4C 56 C0 06 3E */ clrlwi r0, r22, 0x18
|
||||
/* 803B5CF0 003B2C50 56 DB 15 BA */ rlwinm r27, r22, 2, 0x16, 0x1d
|
||||
/* 803B5CF4 003B2C54 7F 20 C2 14 */ add r25, r0, r24
|
||||
/* 803B5CF8 003B2C58 7C 7D D8 2E */ lwzx r3, r29, r27
|
||||
/* 803B5CFC 003B2C5C 1C 19 00 14 */ mulli r0, r25, 0x14
|
||||
/* 803B5D00 003B2C60 3A A3 00 02 */ addi r21, r3, 2
|
||||
/* 803B5D04 003B2C64 56 B4 10 3A */ slwi r20, r21, 2
|
||||
/* 803B5D08 003B2C68 7F 5E 02 14 */ add r26, r30, r0
|
||||
/* 803B5D0C 003B2C6C 92 9A 00 BC */ stw r20, 0xbc(r26)
|
||||
/* 803B5D10 003B2C70 7E 83 A3 78 */ mr r3, r20
|
||||
/* 803B5D14 003B2C74 4B FF F4 21 */ bl salMalloc
|
||||
/* 803B5D18 003B2C78 90 7A 00 C0 */ stw r3, 0xc0(r26)
|
||||
/* 803B5D1C 003B2C7C 7E 85 A3 78 */ mr r5, r20
|
||||
/* 803B5D20 003B2C80 38 80 00 00 */ li r4, 0
|
||||
/* 803B5D24 003B2C84 80 7A 00 C0 */ lwz r3, 0xc0(r26)
|
||||
/* 803B5D28 003B2C88 4B C4 D6 81 */ bl memset
|
||||
/* 803B5D2C 003B2C8C D3 DA 00 C4 */ stfs f30, 0xc4(r26)
|
||||
/* 803B5D30 003B2C90 7E A0 0E 70 */ srawi r0, r21, 1
|
||||
/* 803B5D34 003B2C94 54 03 10 3A */ slwi r3, r0, 2
|
||||
/* 803B5D38 003B2C98 80 1A 00 B4 */ lwz r0, 0xb4(r26)
|
||||
/* 803B5D3C 003B2C9C 7C 03 00 50 */ subf r0, r3, r0
|
||||
/* 803B5D40 003B2CA0 90 1A 00 B8 */ stw r0, 0xb8(r26)
|
||||
/* 803B5D44 003B2CA4 48 00 00 14 */ b lbl_803B5D58
|
||||
lbl_803B5D48:
|
||||
/* 803B5D48 003B2CA8 80 7A 00 B8 */ lwz r3, 0xb8(r26)
|
||||
/* 803B5D4C 003B2CAC 80 1A 00 BC */ lwz r0, 0xbc(r26)
|
||||
/* 803B5D50 003B2CB0 7C 03 02 14 */ add r0, r3, r0
|
||||
/* 803B5D54 003B2CB4 90 1A 00 B8 */ stw r0, 0xb8(r26)
|
||||
lbl_803B5D58:
|
||||
/* 803B5D58 003B2CB8 80 1A 00 B8 */ lwz r0, 0xb8(r26)
|
||||
/* 803B5D5C 003B2CBC 2C 00 00 00 */ cmpwi r0, 0
|
||||
/* 803B5D60 003B2CC0 41 80 FF E8 */ blt lbl_803B5D48
|
||||
/* 803B5D64 003B2CC4 38 00 00 00 */ li r0, 0
|
||||
/* 803B5D68 003B2CC8 90 1A 00 B4 */ stw r0, 0xb4(r26)
|
||||
/* 803B5D6C 003B2CCC 90 1A 00 B8 */ stw r0, 0xb8(r26)
|
||||
/* 803B5D70 003B2CD0 7C 7D D8 2E */ lwzx r3, r29, r27
|
||||
/* 803B5D74 003B2CD4 80 1A 00 B4 */ lwz r0, 0xb4(r26)
|
||||
/* 803B5D78 003B2CD8 54 63 10 3A */ slwi r3, r3, 2
|
||||
/* 803B5D7C 003B2CDC 7C 03 00 50 */ subf r0, r3, r0
|
||||
/* 803B5D80 003B2CE0 90 1A 00 B8 */ stw r0, 0xb8(r26)
|
||||
/* 803B5D84 003B2CE4 48 00 00 14 */ b lbl_803B5D98
|
||||
lbl_803B5D88:
|
||||
/* 803B5D88 003B2CE8 80 7A 00 B8 */ lwz r3, 0xb8(r26)
|
||||
/* 803B5D8C 003B2CEC 80 1A 00 BC */ lwz r0, 0xbc(r26)
|
||||
/* 803B5D90 003B2CF0 7C 03 02 14 */ add r0, r3, r0
|
||||
/* 803B5D94 003B2CF4 90 1A 00 B8 */ stw r0, 0xb8(r26)
|
||||
lbl_803B5D98:
|
||||
/* 803B5D98 003B2CF8 80 1A 00 B8 */ lwz r0, 0xb8(r26)
|
||||
/* 803B5D9C 003B2CFC 2C 00 00 00 */ cmpwi r0, 0
|
||||
/* 803B5DA0 003B2D00 41 80 FF E8 */ blt lbl_803B5D88
|
||||
/* 803B5DA4 003B2D04 7C 1D D8 2E */ lwzx r0, r29, r27
|
||||
/* 803B5DA8 003B2D08 93 81 00 08 */ stw r28, 8(r1)
|
||||
/* 803B5DAC 003B2D0C 1C 00 FF FD */ mulli r0, r0, -3
|
||||
/* 803B5DB0 003B2D10 C8 22 D6 E8 */ lfd f1, lbl_805AF408@sda21(r2)
|
||||
/* 803B5DB4 003B2D14 6C 00 80 00 */ xoris r0, r0, 0x8000
|
||||
/* 803B5DB8 003B2D18 90 01 00 0C */ stw r0, 0xc(r1)
|
||||
/* 803B5DBC 003B2D1C C8 01 00 08 */ lfd f0, 8(r1)
|
||||
/* 803B5DC0 003B2D20 EC 00 E8 28 */ fsubs f0, f0, f29
|
||||
/* 803B5DC4 003B2D24 EC 40 E0 24 */ fdivs f2, f0, f28
|
||||
/* 803B5DC8 003B2D28 4B FD EF 25 */ bl pow
|
||||
/* 803B5DCC 003B2D2C FC 00 08 18 */ frsp f0, f1
|
||||
/* 803B5DD0 003B2D30 57 23 10 3A */ slwi r3, r25, 2
|
||||
/* 803B5DD4 003B2D34 38 03 01 6C */ addi r0, r3, 0x16c
|
||||
/* 803B5DD8 003B2D38 3A D6 00 01 */ addi r22, r22, 1
|
||||
/* 803B5DDC 003B2D3C 7C 1E 05 2E */ stfsx f0, r30, r0
|
||||
lbl_803B5DE0:
|
||||
/* 803B5DE0 003B2D40 56 C0 06 3E */ clrlwi r0, r22, 0x18
|
||||
/* 803B5DE4 003B2D44 28 00 00 03 */ cmplwi r0, 3
|
||||
/* 803B5DE8 003B2D48 41 80 FF 04 */ blt lbl_803B5CEC
|
||||
/* 803B5DEC 003B2D4C 3B 60 00 00 */ li r27, 0
|
||||
/* 803B5DF0 003B2D50 48 00 00 C8 */ b lbl_803B5EB8
|
||||
lbl_803B5DF4:
|
||||
/* 803B5DF4 003B2D54 57 60 15 BA */ rlwinm r0, r27, 2, 0x16, 0x1d
|
||||
/* 803B5DF8 003B2D58 57 64 06 3E */ clrlwi r4, r27, 0x18
|
||||
/* 803B5DFC 003B2D5C 7C 7D 02 14 */ add r3, r29, r0
|
||||
/* 803B5E00 003B2D60 7C 04 C2 14 */ add r0, r4, r24
|
||||
/* 803B5E04 003B2D64 3B 43 00 0C */ addi r26, r3, 0xc
|
||||
/* 803B5E08 003B2D68 80 63 00 0C */ lwz r3, 0xc(r3)
|
||||
/* 803B5E0C 003B2D6C 1C 00 00 14 */ mulli r0, r0, 0x14
|
||||
/* 803B5E10 003B2D70 3A A3 00 02 */ addi r21, r3, 2
|
||||
/* 803B5E14 003B2D74 56 B4 10 3A */ slwi r20, r21, 2
|
||||
/* 803B5E18 003B2D78 7F 3E 02 14 */ add r25, r30, r0
|
||||
/* 803B5E1C 003B2D7C 92 99 00 08 */ stw r20, 8(r25)
|
||||
/* 803B5E20 003B2D80 7E 83 A3 78 */ mr r3, r20
|
||||
/* 803B5E24 003B2D84 4B FF F3 11 */ bl salMalloc
|
||||
/* 803B5E28 003B2D88 90 79 00 0C */ stw r3, 0xc(r25)
|
||||
/* 803B5E2C 003B2D8C 7E 85 A3 78 */ mr r5, r20
|
||||
/* 803B5E30 003B2D90 38 80 00 00 */ li r4, 0
|
||||
/* 803B5E34 003B2D94 80 79 00 0C */ lwz r3, 0xc(r25)
|
||||
/* 803B5E38 003B2D98 4B C4 D5 71 */ bl memset
|
||||
/* 803B5E3C 003B2D9C D3 D9 00 10 */ stfs f30, 0x10(r25)
|
||||
/* 803B5E40 003B2DA0 7E A0 0E 70 */ srawi r0, r21, 1
|
||||
/* 803B5E44 003B2DA4 54 03 10 3A */ slwi r3, r0, 2
|
||||
/* 803B5E48 003B2DA8 80 19 00 00 */ lwz r0, 0(r25)
|
||||
/* 803B5E4C 003B2DAC 7C 03 00 50 */ subf r0, r3, r0
|
||||
/* 803B5E50 003B2DB0 90 19 00 04 */ stw r0, 4(r25)
|
||||
/* 803B5E54 003B2DB4 48 00 00 14 */ b lbl_803B5E68
|
||||
lbl_803B5E58:
|
||||
/* 803B5E58 003B2DB8 80 79 00 04 */ lwz r3, 4(r25)
|
||||
/* 803B5E5C 003B2DBC 80 19 00 08 */ lwz r0, 8(r25)
|
||||
/* 803B5E60 003B2DC0 7C 03 02 14 */ add r0, r3, r0
|
||||
/* 803B5E64 003B2DC4 90 19 00 04 */ stw r0, 4(r25)
|
||||
lbl_803B5E68:
|
||||
/* 803B5E68 003B2DC8 80 19 00 04 */ lwz r0, 4(r25)
|
||||
/* 803B5E6C 003B2DCC 2C 00 00 00 */ cmpwi r0, 0
|
||||
/* 803B5E70 003B2DD0 41 80 FF E8 */ blt lbl_803B5E58
|
||||
/* 803B5E74 003B2DD4 38 00 00 00 */ li r0, 0
|
||||
/* 803B5E78 003B2DD8 90 19 00 00 */ stw r0, 0(r25)
|
||||
/* 803B5E7C 003B2DDC 90 19 00 04 */ stw r0, 4(r25)
|
||||
/* 803B5E80 003B2DE0 80 7A 00 00 */ lwz r3, 0(r26)
|
||||
/* 803B5E84 003B2DE4 80 19 00 00 */ lwz r0, 0(r25)
|
||||
/* 803B5E88 003B2DE8 54 63 10 3A */ slwi r3, r3, 2
|
||||
/* 803B5E8C 003B2DEC 7C 03 00 50 */ subf r0, r3, r0
|
||||
/* 803B5E90 003B2DF0 90 19 00 04 */ stw r0, 4(r25)
|
||||
/* 803B5E94 003B2DF4 48 00 00 14 */ b lbl_803B5EA8
|
||||
lbl_803B5E98:
|
||||
/* 803B5E98 003B2DF8 80 79 00 04 */ lwz r3, 4(r25)
|
||||
/* 803B5E9C 003B2DFC 80 19 00 08 */ lwz r0, 8(r25)
|
||||
/* 803B5EA0 003B2E00 7C 03 02 14 */ add r0, r3, r0
|
||||
/* 803B5EA4 003B2E04 90 19 00 04 */ stw r0, 4(r25)
|
||||
lbl_803B5EA8:
|
||||
/* 803B5EA8 003B2E08 80 19 00 04 */ lwz r0, 4(r25)
|
||||
/* 803B5EAC 003B2E0C 2C 00 00 00 */ cmpwi r0, 0
|
||||
/* 803B5EB0 003B2E10 41 80 FF E8 */ blt lbl_803B5E98
|
||||
/* 803B5EB4 003B2E14 3B 7B 00 01 */ addi r27, r27, 1
|
||||
lbl_803B5EB8:
|
||||
/* 803B5EB8 003B2E18 57 60 06 3E */ clrlwi r0, r27, 0x18
|
||||
/* 803B5EBC 003B2E1C 28 00 00 02 */ cmplwi r0, 2
|
||||
/* 803B5EC0 003B2E20 41 80 FF 34 */ blt lbl_803B5DF4
|
||||
/* 803B5EC4 003B2E24 56 E0 10 3A */ slwi r0, r23, 2
|
||||
/* 803B5EC8 003B2E28 7C 7D 02 14 */ add r3, r29, r0
|
||||
/* 803B5ECC 003B2E2C 3B 03 00 14 */ addi r24, r3, 0x14
|
||||
/* 803B5ED0 003B2E30 80 63 00 14 */ lwz r3, 0x14(r3)
|
||||
/* 803B5ED4 003B2E34 1C 17 00 3C */ mulli r0, r23, 0x3c
|
||||
/* 803B5ED8 003B2E38 3A A3 00 02 */ addi r21, r3, 2
|
||||
/* 803B5EDC 003B2E3C 56 B4 10 3A */ slwi r20, r21, 2
|
||||
/* 803B5EE0 003B2E40 7E FE 02 14 */ add r23, r30, r0
|
||||
/* 803B5EE4 003B2E44 92 97 00 30 */ stw r20, 0x30(r23)
|
||||
/* 803B5EE8 003B2E48 7E 83 A3 78 */ mr r3, r20
|
||||
/* 803B5EEC 003B2E4C 4B FF F2 49 */ bl salMalloc
|
||||
/* 803B5EF0 003B2E50 90 77 00 34 */ stw r3, 0x34(r23)
|
||||
/* 803B5EF4 003B2E54 7E 85 A3 78 */ mr r5, r20
|
||||
/* 803B5EF8 003B2E58 38 80 00 00 */ li r4, 0
|
||||
/* 803B5EFC 003B2E5C 80 77 00 34 */ lwz r3, 0x34(r23)
|
||||
/* 803B5F00 003B2E60 4B C4 D4 A9 */ bl memset
|
||||
/* 803B5F04 003B2E64 D3 D7 00 38 */ stfs f30, 0x38(r23)
|
||||
/* 803B5F08 003B2E68 7E A0 0E 70 */ srawi r0, r21, 1
|
||||
/* 803B5F0C 003B2E6C 54 03 10 3A */ slwi r3, r0, 2
|
||||
/* 803B5F10 003B2E70 80 17 00 28 */ lwz r0, 0x28(r23)
|
||||
/* 803B5F14 003B2E74 7C 03 00 50 */ subf r0, r3, r0
|
||||
/* 803B5F18 003B2E78 90 17 00 2C */ stw r0, 0x2c(r23)
|
||||
/* 803B5F1C 003B2E7C 48 00 00 14 */ b lbl_803B5F30
|
||||
lbl_803B5F20:
|
||||
/* 803B5F20 003B2E80 80 77 00 2C */ lwz r3, 0x2c(r23)
|
||||
/* 803B5F24 003B2E84 80 17 00 30 */ lwz r0, 0x30(r23)
|
||||
/* 803B5F28 003B2E88 7C 03 02 14 */ add r0, r3, r0
|
||||
/* 803B5F2C 003B2E8C 90 17 00 2C */ stw r0, 0x2c(r23)
|
||||
lbl_803B5F30:
|
||||
/* 803B5F30 003B2E90 80 17 00 2C */ lwz r0, 0x2c(r23)
|
||||
/* 803B5F34 003B2E94 2C 00 00 00 */ cmpwi r0, 0
|
||||
/* 803B5F38 003B2E98 41 80 FF E8 */ blt lbl_803B5F20
|
||||
/* 803B5F3C 003B2E9C 38 00 00 00 */ li r0, 0
|
||||
/* 803B5F40 003B2EA0 90 17 00 28 */ stw r0, 0x28(r23)
|
||||
/* 803B5F44 003B2EA4 90 17 00 2C */ stw r0, 0x2c(r23)
|
||||
/* 803B5F48 003B2EA8 80 78 00 00 */ lwz r3, 0(r24)
|
||||
/* 803B5F4C 003B2EAC 80 17 00 28 */ lwz r0, 0x28(r23)
|
||||
/* 803B5F50 003B2EB0 54 63 10 3A */ slwi r3, r3, 2
|
||||
/* 803B5F54 003B2EB4 7C 03 00 50 */ subf r0, r3, r0
|
||||
/* 803B5F58 003B2EB8 90 17 00 2C */ stw r0, 0x2c(r23)
|
||||
/* 803B5F5C 003B2EBC 48 00 00 14 */ b lbl_803B5F70
|
||||
lbl_803B5F60:
|
||||
/* 803B5F60 003B2EC0 80 77 00 2C */ lwz r3, 0x2c(r23)
|
||||
/* 803B5F64 003B2EC4 80 17 00 30 */ lwz r0, 0x30(r23)
|
||||
/* 803B5F68 003B2EC8 7C 03 02 14 */ add r0, r3, r0
|
||||
/* 803B5F6C 003B2ECC 90 17 00 2C */ stw r0, 0x2c(r23)
|
||||
lbl_803B5F70:
|
||||
/* 803B5F70 003B2ED0 80 17 00 2C */ lwz r0, 0x2c(r23)
|
||||
/* 803B5F74 003B2ED4 2C 00 00 00 */ cmpwi r0, 0
|
||||
/* 803B5F78 003B2ED8 41 80 FF E8 */ blt lbl_803B5F60
|
||||
/* 803B5F7C 003B2EDC 57 E3 15 BA */ rlwinm r3, r31, 2, 0x16, 0x1d
|
||||
/* 803B5F80 003B2EE0 3B FF 00 01 */ addi r31, r31, 1
|
||||
/* 803B5F84 003B2EE4 38 03 01 90 */ addi r0, r3, 0x190
|
||||
/* 803B5F88 003B2EE8 7F DE 05 2E */ stfsx f30, r30, r0
|
||||
lbl_803B5F8C:
|
||||
/* 803B5F8C 003B2EEC 57 E0 06 3E */ clrlwi r0, r31, 0x18
|
||||
/* 803B5F90 003B2EF0 28 00 00 03 */ cmplwi r0, 3
|
||||
/* 803B5F94 003B2EF4 41 80 FD 48 */ blt lbl_803B5CDC
|
||||
/* 803B5F98 003B2EF8 D3 1E 01 68 */ stfs f24, 0x168(r30)
|
||||
/* 803B5F9C 003B2EFC C0 02 D6 F0 */ lfs f0, lbl_805AF410@sda21(r2)
|
||||
/* 803B5FA0 003B2F00 D3 3E 01 9C */ stfs f25, 0x19c(r30)
|
||||
/* 803B5FA4 003B2F04 D3 7E 01 A8 */ stfs f27, 0x1a8(r30)
|
||||
/* 803B5FA8 003B2F08 D3 5E 01 A0 */ stfs f26, 0x1a0(r30)
|
||||
/* 803B5FAC 003B2F0C C0 3E 01 A0 */ lfs f1, 0x1a0(r30)
|
||||
/* 803B5FB0 003B2F10 FC 01 00 40 */ fcmpo cr0, f1, f0
|
||||
/* 803B5FB4 003B2F14 40 80 00 08 */ bge lbl_803B5FBC
|
||||
/* 803B5FB8 003B2F18 D0 1E 01 A0 */ stfs f0, 0x1a0(r30)
|
||||
lbl_803B5FBC:
|
||||
/* 803B5FBC 003B2F1C C0 42 D6 F4 */ lfs f2, lbl_805AF414@sda21(r2)
|
||||
/* 803B5FC0 003B2F20 C0 3E 01 A0 */ lfs f1, 0x1a0(r30)
|
||||
/* 803B5FC4 003B2F24 C0 02 D6 D0 */ lfs f0, lbl_805AF3F0@sda21(r2)
|
||||
/* 803B5FC8 003B2F28 EC 22 00 72 */ fmuls f1, f2, f1
|
||||
/* 803B5FCC 003B2F2C C0 42 D6 F0 */ lfs f2, lbl_805AF410@sda21(r2)
|
||||
/* 803B5FD0 003B2F30 C0 62 D6 D4 */ lfs f3, lbl_805AF3F4@sda21(r2)
|
||||
/* 803B5FD4 003B2F34 FC 00 F8 00 */ fcmpu cr0, f0, f31
|
||||
/* 803B5FD8 003B2F38 EC 02 08 2A */ fadds f0, f2, f1
|
||||
/* 803B5FDC 003B2F3C EC 03 00 28 */ fsubs f0, f3, f0
|
||||
/* 803B5FE0 003B2F40 D0 1E 01 A0 */ stfs f0, 0x1a0(r30)
|
||||
/* 803B5FE4 003B2F44 41 82 00 6C */ beq lbl_803B6050
|
||||
/* 803B5FE8 003B2F48 C0 02 D6 E4 */ lfs f0, lbl_805AF404@sda21(r2)
|
||||
/* 803B5FEC 003B2F4C 3A A0 00 00 */ li r21, 0
|
||||
/* 803B5FF0 003B2F50 EC 00 07 F2 */ fmuls f0, f0, f31
|
||||
/* 803B5FF4 003B2F54 FC 00 00 1E */ fctiwz f0, f0
|
||||
/* 803B5FF8 003B2F58 D8 01 00 08 */ stfd f0, 8(r1)
|
||||
/* 803B5FFC 003B2F5C 80 01 00 0C */ lwz r0, 0xc(r1)
|
||||
/* 803B6000 003B2F60 90 1E 01 A4 */ stw r0, 0x1a4(r30)
|
||||
/* 803B6004 003B2F64 48 00 00 3C */ b lbl_803B6040
|
||||
lbl_803B6008:
|
||||
/* 803B6008 003B2F68 80 1E 01 A4 */ lwz r0, 0x1a4(r30)
|
||||
/* 803B600C 003B2F6C 54 03 10 3A */ slwi r3, r0, 2
|
||||
/* 803B6010 003B2F70 4B FF F1 25 */ bl salMalloc
|
||||
/* 803B6014 003B2F74 56 A0 15 BA */ rlwinm r0, r21, 2, 0x16, 0x1d
|
||||
/* 803B6018 003B2F78 38 80 00 00 */ li r4, 0
|
||||
/* 803B601C 003B2F7C 7E 9E 02 14 */ add r20, r30, r0
|
||||
/* 803B6020 003B2F80 90 74 01 AC */ stw r3, 0x1ac(r20)
|
||||
/* 803B6024 003B2F84 80 1E 01 A4 */ lwz r0, 0x1a4(r30)
|
||||
/* 803B6028 003B2F88 80 74 01 AC */ lwz r3, 0x1ac(r20)
|
||||
/* 803B602C 003B2F8C 54 05 10 3A */ slwi r5, r0, 2
|
||||
/* 803B6030 003B2F90 4B C4 D3 79 */ bl memset
|
||||
/* 803B6034 003B2F94 80 14 01 AC */ lwz r0, 0x1ac(r20)
|
||||
/* 803B6038 003B2F98 3A B5 00 01 */ addi r21, r21, 1
|
||||
/* 803B603C 003B2F9C 90 14 01 B8 */ stw r0, 0x1b8(r20)
|
||||
lbl_803B6040:
|
||||
/* 803B6040 003B2FA0 56 A0 06 3E */ clrlwi r0, r21, 0x18
|
||||
/* 803B6044 003B2FA4 28 00 00 03 */ cmplwi r0, 3
|
||||
/* 803B6048 003B2FA8 41 80 FF C0 */ blt lbl_803B6008
|
||||
/* 803B604C 003B2FAC 48 00 00 24 */ b lbl_803B6070
|
||||
lbl_803B6050:
|
||||
/* 803B6050 003B2FB0 38 00 00 00 */ li r0, 0
|
||||
/* 803B6054 003B2FB4 90 1E 01 A4 */ stw r0, 0x1a4(r30)
|
||||
/* 803B6058 003B2FB8 90 1E 01 B8 */ stw r0, 0x1b8(r30)
|
||||
/* 803B605C 003B2FBC 90 1E 01 AC */ stw r0, 0x1ac(r30)
|
||||
/* 803B6060 003B2FC0 90 1E 01 BC */ stw r0, 0x1bc(r30)
|
||||
/* 803B6064 003B2FC4 90 1E 01 B0 */ stw r0, 0x1b0(r30)
|
||||
/* 803B6068 003B2FC8 90 1E 01 C0 */ stw r0, 0x1c0(r30)
|
||||
/* 803B606C 003B2FCC 90 1E 01 B4 */ stw r0, 0x1b4(r30)
|
||||
lbl_803B6070:
|
||||
/* 803B6070 003B2FD0 38 60 00 01 */ li r3, 1
|
||||
lbl_803B6074:
|
||||
/* 803B6074 003B2FD4 E3 E1 00 B8 */ psq_l f31, 184(r1), 0, qr0
|
||||
/* 803B6078 003B2FD8 CB E1 00 B0 */ lfd f31, 0xb0(r1)
|
||||
/* 803B607C 003B2FDC E3 C1 00 A8 */ psq_l f30, 168(r1), 0, qr0
|
||||
/* 803B6080 003B2FE0 CB C1 00 A0 */ lfd f30, 0xa0(r1)
|
||||
/* 803B6084 003B2FE4 E3 A1 00 98 */ psq_l f29, 152(r1), 0, qr0
|
||||
/* 803B6088 003B2FE8 CB A1 00 90 */ lfd f29, 0x90(r1)
|
||||
/* 803B608C 003B2FEC E3 81 00 88 */ psq_l f28, 136(r1), 0, qr0
|
||||
/* 803B6090 003B2FF0 CB 81 00 80 */ lfd f28, 0x80(r1)
|
||||
/* 803B6094 003B2FF4 E3 61 00 78 */ psq_l f27, 120(r1), 0, qr0
|
||||
/* 803B6098 003B2FF8 CB 61 00 70 */ lfd f27, 0x70(r1)
|
||||
/* 803B609C 003B2FFC E3 41 00 68 */ psq_l f26, 104(r1), 0, qr0
|
||||
/* 803B60A0 003B3000 CB 41 00 60 */ lfd f26, 0x60(r1)
|
||||
/* 803B60A4 003B3004 E3 21 00 58 */ psq_l f25, 88(r1), 0, qr0
|
||||
/* 803B60A8 003B3008 CB 21 00 50 */ lfd f25, 0x50(r1)
|
||||
/* 803B60AC 003B300C E3 01 00 48 */ psq_l f24, 72(r1), 0, qr0
|
||||
/* 803B60B0 003B3010 39 61 00 40 */ addi r11, r1, 0x40
|
||||
/* 803B60B4 003B3014 CB 01 00 40 */ lfd f24, 0x40(r1)
|
||||
/* 803B60B8 003B3018 4B FD 39 F5 */ bl _restgpr_20
|
||||
/* 803B60BC 003B301C 80 01 00 C4 */ lwz r0, 0xc4(r1)
|
||||
/* 803B60C0 003B3020 7C 08 03 A6 */ mtlr r0
|
||||
/* 803B60C4 003B3024 38 21 00 C0 */ addi r1, r1, 0xc0
|
||||
/* 803B60C8 003B3028 4E 80 00 20 */ blr
|
||||
|
||||
.global DoCrossTalk
|
||||
DoCrossTalk:
|
||||
/* 803B60CC 003B302C 94 21 FF D0 */ stwu r1, -0x30(r1)
|
||||
/* 803B60D0 003B3030 D9 C1 00 28 */ stfd f14, 0x28(r1)
|
||||
/* 803B60D4 003B3034 3C A0 80 5B */ lis r5, lbl_805AF420@ha
|
||||
/* 803B60D8 003B3038 C8 05 F4 20 */ lfd f0, lbl_805AF420@l(r5)
|
||||
/* 803B60DC 003B303C 3C A0 43 30 */ lis r5, 0x4330
|
||||
/* 803B60E0 003B3040 90 A1 00 08 */ stw r5, 8(r1)
|
||||
/* 803B60E4 003B3044 90 A1 00 10 */ stw r5, 0x10(r1)
|
||||
/* 803B60E8 003B3048 90 A1 00 18 */ stw r5, 0x18(r1)
|
||||
/* 803B60EC 003B304C 90 A1 00 20 */ stw r5, 0x20(r1)
|
||||
/* 803B60F0 003B3050 10 62 0C 20 */ ps_merge00 f3, f2, f1
|
||||
/* 803B60F4 003B3054 10 81 14 20 */ ps_merge00 f4, f1, f2
|
||||
/* 803B60F8 003B3058 3C A0 80 5B */ lis r5, lbl_805AF428@ha
|
||||
/* 803B60FC 003B305C C0 A5 F4 28 */ lfs f5, lbl_805AF428@l(r5)
|
||||
/* 803B6100 003B3060 38 A0 00 4F */ li r5, 0x4f
|
||||
/* 803B6104 003B3064 7C A9 03 A6 */ mtctr r5
|
||||
/* 803B6108 003B3068 39 40 FF F8 */ li r10, -8
|
||||
/* 803B610C 003B306C 39 60 FF FC */ li r11, -4
|
||||
/* 803B6110 003B3070 10 84 01 58 */ ps_muls0 f4, f4, f5
|
||||
/* 803B6114 003B3074 80 C3 00 00 */ lwz r6, 0(r3)
|
||||
/* 803B6118 003B3078 80 E4 00 00 */ lwz r7, 0(r4)
|
||||
/* 803B611C 003B307C 6C C6 80 00 */ xoris r6, r6, 0x8000
|
||||
/* 803B6120 003B3080 81 03 00 04 */ lwz r8, 4(r3)
|
||||
/* 803B6124 003B3084 6C E7 80 00 */ xoris r7, r7, 0x8000
|
||||
/* 803B6128 003B3088 81 24 00 04 */ lwz r9, 4(r4)
|
||||
/* 803B612C 003B308C 6D 08 80 00 */ xoris r8, r8, 0x8000
|
||||
/* 803B6130 003B3090 90 C1 00 0C */ stw r6, 0xc(r1)
|
||||
/* 803B6134 003B3094 6D 29 80 00 */ xoris r9, r9, 0x8000
|
||||
/* 803B6138 003B3098 90 E1 00 14 */ stw r7, 0x14(r1)
|
||||
/* 803B613C 003B309C 91 01 00 1C */ stw r8, 0x1c(r1)
|
||||
/* 803B6140 003B30A0 91 21 00 24 */ stw r9, 0x24(r1)
|
||||
/* 803B6144 003B30A4 C8 A1 00 08 */ lfd f5, 8(r1)
|
||||
/* 803B6148 003B30A8 C8 C1 00 10 */ lfd f6, 0x10(r1)
|
||||
/* 803B614C 003B30AC EC A5 00 28 */ fsubs f5, f5, f0
|
||||
/* 803B6150 003B30B0 C8 E1 00 18 */ lfd f7, 0x18(r1)
|
||||
/* 803B6154 003B30B4 EC C6 00 28 */ fsubs f6, f6, f0
|
||||
/* 803B6158 003B30B8 C9 01 00 20 */ lfd f8, 0x20(r1)
|
||||
/* 803B615C 003B30BC EC E7 00 28 */ fsubs f7, f7, f0
|
||||
/* 803B6160 003B30C0 ED 08 00 28 */ fsubs f8, f8, f0
|
||||
lbl_803B6164:
|
||||
/* 803B6164 003B30C4 11 25 34 20 */ ps_merge00 f9, f5, f6
|
||||
/* 803B6168 003B30C8 84 C3 00 08 */ lwzu r6, 8(r3)
|
||||
/* 803B616C 003B30CC 11 47 44 20 */ ps_merge00 f10, f7, f8
|
||||
/* 803B6170 003B30D0 84 E4 00 08 */ lwzu r7, 8(r4)
|
||||
/* 803B6174 003B30D4 6C C6 80 00 */ xoris r6, r6, 0x8000
|
||||
/* 803B6178 003B30D8 81 03 00 04 */ lwz r8, 4(r3)
|
||||
/* 803B617C 003B30DC 11 69 00 F2 */ ps_mul f11, f9, f3
|
||||
/* 803B6180 003B30E0 6C E7 80 00 */ xoris r7, r7, 0x8000
|
||||
/* 803B6184 003B30E4 11 89 01 32 */ ps_mul f12, f9, f4
|
||||
/* 803B6188 003B30E8 81 24 00 04 */ lwz r9, 4(r4)
|
||||
/* 803B618C 003B30EC 11 AA 00 F2 */ ps_mul f13, f10, f3
|
||||
/* 803B6190 003B30F0 6D 08 80 00 */ xoris r8, r8, 0x8000
|
||||
/* 803B6194 003B30F4 11 CA 01 32 */ ps_mul f14, f10, f4
|
||||
/* 803B6198 003B30F8 90 C1 00 0C */ stw r6, 0xc(r1)
|
||||
/* 803B619C 003B30FC 11 6B 5A D4 */ ps_sum0 f11, f11, f11, f11
|
||||
/* 803B61A0 003B3100 6D 29 80 00 */ xoris r9, r9, 0x8000
|
||||
/* 803B61A4 003B3104 11 8C 63 14 */ ps_sum0 f12, f12, f12, f12
|
||||
/* 803B61A8 003B3108 90 E1 00 14 */ stw r7, 0x14(r1)
|
||||
/* 803B61AC 003B310C 11 AD 6B 54 */ ps_sum0 f13, f13, f13, f13
|
||||
/* 803B61B0 003B3110 91 01 00 1C */ stw r8, 0x1c(r1)
|
||||
/* 803B61B4 003B3114 11 CE 73 94 */ ps_sum0 f14, f14, f14, f14
|
||||
/* 803B61B8 003B3118 91 21 00 24 */ stw r9, 0x24(r1)
|
||||
/* 803B61BC 003B311C FD 60 58 1C */ fctiw f11, f11
|
||||
/* 803B61C0 003B3120 C8 A1 00 08 */ lfd f5, 8(r1)
|
||||
/* 803B61C4 003B3124 FD 80 60 1C */ fctiw f12, f12
|
||||
/* 803B61C8 003B3128 C8 C1 00 10 */ lfd f6, 0x10(r1)
|
||||
/* 803B61CC 003B312C FD A0 68 1C */ fctiw f13, f13
|
||||
/* 803B61D0 003B3130 EC A5 00 28 */ fsubs f5, f5, f0
|
||||
/* 803B61D4 003B3134 FD C0 70 1C */ fctiw f14, f14
|
||||
/* 803B61D8 003B3138 C8 E1 00 18 */ lfd f7, 0x18(r1)
|
||||
/* 803B61DC 003B313C 7D 6A 1F AE */ stfiwx f11, r10, r3
|
||||
/* 803B61E0 003B3140 EC C6 00 28 */ fsubs f6, f6, f0
|
||||
/* 803B61E4 003B3144 7D 8A 27 AE */ stfiwx f12, r10, r4
|
||||
/* 803B61E8 003B3148 C9 01 00 20 */ lfd f8, 0x20(r1)
|
||||
/* 803B61EC 003B314C 7D AB 1F AE */ stfiwx f13, r11, r3
|
||||
/* 803B61F0 003B3150 EC E7 00 28 */ fsubs f7, f7, f0
|
||||
/* 803B61F4 003B3154 7D CB 27 AE */ stfiwx f14, r11, r4
|
||||
/* 803B61F8 003B3158 ED 08 00 28 */ fsubs f8, f8, f0
|
||||
/* 803B61FC 003B315C 42 00 FF 68 */ bdnz lbl_803B6164
|
||||
/* 803B6200 003B3160 11 25 34 20 */ ps_merge00 f9, f5, f6
|
||||
/* 803B6204 003B3164 38 63 00 08 */ addi r3, r3, 8
|
||||
/* 803B6208 003B3168 11 47 44 20 */ ps_merge00 f10, f7, f8
|
||||
/* 803B620C 003B316C 38 84 00 08 */ addi r4, r4, 8
|
||||
/* 803B6210 003B3170 11 69 00 F2 */ ps_mul f11, f9, f3
|
||||
/* 803B6214 003B3174 11 89 01 32 */ ps_mul f12, f9, f4
|
||||
/* 803B6218 003B3178 11 AA 00 F2 */ ps_mul f13, f10, f3
|
||||
/* 803B621C 003B317C 11 CA 01 32 */ ps_mul f14, f10, f4
|
||||
/* 803B6220 003B3180 11 6B 5A D4 */ ps_sum0 f11, f11, f11, f11
|
||||
/* 803B6224 003B3184 11 8C 63 14 */ ps_sum0 f12, f12, f12, f12
|
||||
/* 803B6228 003B3188 11 AD 6B 54 */ ps_sum0 f13, f13, f13, f13
|
||||
/* 803B622C 003B318C 11 CE 73 94 */ ps_sum0 f14, f14, f14, f14
|
||||
/* 803B6230 003B3190 FD 60 58 1C */ fctiw f11, f11
|
||||
/* 803B6234 003B3194 FD 80 60 1C */ fctiw f12, f12
|
||||
/* 803B6238 003B3198 FD A0 68 1C */ fctiw f13, f13
|
||||
/* 803B623C 003B319C FD C0 70 1C */ fctiw f14, f14
|
||||
/* 803B6240 003B31A0 7D 6A 1F AE */ stfiwx f11, r10, r3
|
||||
/* 803B6244 003B31A4 7D 8A 27 AE */ stfiwx f12, r10, r4
|
||||
/* 803B6248 003B31A8 7D AB 1F AE */ stfiwx f13, r11, r3
|
||||
/* 803B624C 003B31AC 7D CB 27 AE */ stfiwx f14, r11, r4
|
||||
/* 803B6250 003B31B0 C9 C1 00 28 */ lfd f14, 0x28(r1)
|
||||
/* 803B6254 003B31B4 38 21 00 30 */ addi r1, r1, 0x30
|
||||
/* 803B6258 003B31B8 4E 80 00 20 */ blr
|
||||
|
||||
.global HandleReverb_0
|
||||
HandleReverb_0:
|
||||
/* 803B625C 003B31BC 94 21 FF 40 */ stwu r1, -0xc0(r1)
|
||||
/* 803B6260 003B31C0 BD C1 00 08 */ stmw r14, 8(r1)
|
||||
/* 803B6264 003B31C4 D9 C1 00 60 */ stfd f14, 0x60(r1)
|
||||
/* 803B6268 003B31C8 D9 E1 00 68 */ stfd f15, 0x68(r1)
|
||||
/* 803B626C 003B31CC DA 01 00 70 */ stfd f16, 0x70(r1)
|
||||
/* 803B6270 003B31D0 DA 21 00 78 */ stfd f17, 0x78(r1)
|
||||
/* 803B6274 003B31D4 DA 41 00 80 */ stfd f18, 0x80(r1)
|
||||
/* 803B6278 003B31D8 DA 61 00 88 */ stfd f19, 0x88(r1)
|
||||
/* 803B627C 003B31DC DA 81 00 90 */ stfd f20, 0x90(r1)
|
||||
/* 803B6280 003B31E0 DA A1 00 98 */ stfd f21, 0x98(r1)
|
||||
/* 803B6284 003B31E4 DA C1 00 A0 */ stfd f22, 0xa0(r1)
|
||||
/* 803B6288 003B31E8 DA E1 00 A8 */ stfd f23, 0xa8(r1)
|
||||
/* 803B628C 003B31EC DB 01 00 B0 */ stfd f24, 0xb0(r1)
|
||||
/* 803B6290 003B31F0 DB 21 00 B8 */ stfd f25, 0xb8(r1)
|
||||
/* 803B6294 003B31F4 90 A1 00 50 */ stw r5, 0x50(r1)
|
||||
/* 803B6298 003B31F8 90 81 00 54 */ stw r4, 0x54(r1)
|
||||
/* 803B629C 003B31FC 3F E0 80 5B */ lis r31, lbl_805AF42C@ha
|
||||
/* 803B62A0 003B3200 C0 DF F4 2C */ lfs f6, lbl_805AF42C@l(r31)
|
||||
/* 803B62A4 003B3204 3F E0 80 5B */ lis r31, lbl_805AF428@ha
|
||||
/* 803B62A8 003B3208 C1 3F F4 28 */ lfs f9, lbl_805AF428@l(r31)
|
||||
/* 803B62AC 003B320C 3F E0 80 5B */ lis r31, lbl_805AF420@ha
|
||||
/* 803B62B0 003B3210 C8 BF F4 20 */ lfd f5, lbl_805AF420@l(r31)
|
||||
/* 803B62B4 003B3214 C0 44 01 68 */ lfs f2, 0x168(r4)
|
||||
/* 803B62B8 003B3218 C1 E4 01 A0 */ lfs f15, 0x1a0(r4)
|
||||
/* 803B62BC 003B321C C1 04 01 9C */ lfs f8, 0x19c(r4)
|
||||
/* 803B62C0 003B3220 EC 68 02 72 */ fmuls f3, f8, f9
|
||||
/* 803B62C4 003B3224 EC 89 18 28 */ fsubs f4, f9, f3
|
||||
/* 803B62C8 003B3228 54 BE 08 3C */ slwi r30, r5, 1
|
||||
/* 803B62CC 003B322C 7F DE 2A 14 */ add r30, r30, r5
|
||||
/* 803B62D0 003B3230 1F FE 00 14 */ mulli r31, r30, 0x14
|
||||
/* 803B62D4 003B3234 3B A4 00 B4 */ addi r29, r4, 0xb4
|
||||
/* 803B62D8 003B3238 7F BD FA 14 */ add r29, r29, r31
|
||||
/* 803B62DC 003B323C 3B 64 00 00 */ addi r27, r4, 0
|
||||
/* 803B62E0 003B3240 7F 7B FA 14 */ add r27, r27, r31
|
||||
/* 803B62E4 003B3244 57 DF 10 3A */ slwi r31, r30, 2
|
||||
/* 803B62E8 003B3248 7F FF 22 14 */ add r31, r31, r4
|
||||
/* 803B62EC 003B324C C2 DF 01 6C */ lfs f22, 0x16c(r31)
|
||||
/* 803B62F0 003B3250 C2 FF 01 70 */ lfs f23, 0x170(r31)
|
||||
/* 803B62F4 003B3254 C3 1F 01 74 */ lfs f24, 0x174(r31)
|
||||
/* 803B62F8 003B3258 54 BF 10 3A */ slwi r31, r5, 2
|
||||
/* 803B62FC 003B325C 7F FF 22 14 */ add r31, r31, r4
|
||||
/* 803B6300 003B3260 C3 3F 01 90 */ lfs f25, 0x190(r31)
|
||||
/* 803B6304 003B3264 83 E4 01 A4 */ lwz r31, 0x1a4(r4)
|
||||
/* 803B6308 003B3268 3F C0 43 30 */ lis r30, 0x4330
|
||||
/* 803B630C 003B326C 93 C1 00 58 */ stw r30, 0x58(r1)
|
||||
/* 803B6310 003B3270 3A DF FF FF */ addi r22, r31, -1
|
||||
/* 803B6314 003B3274 56 D6 10 3A */ slwi r22, r22, 2
|
||||
/* 803B6318 003B3278 54 BC 10 3A */ slwi r28, r5, 2
|
||||
/* 803B631C 003B327C 7F 9C 22 14 */ add r28, r28, r4
|
||||
/* 803B6320 003B3280 2F 9F 00 00 */ cmpwi cr7, r31, 0
|
||||
/* 803B6324 003B3284 82 BD 00 00 */ lwz r21, 0(r29)
|
||||
/* 803B6328 003B3288 82 9D 00 04 */ lwz r20, 4(r29)
|
||||
/* 803B632C 003B328C 82 7D 00 14 */ lwz r19, 0x14(r29)
|
||||
/* 803B6330 003B3290 82 5D 00 18 */ lwz r18, 0x18(r29)
|
||||
/* 803B6334 003B3294 82 3D 00 28 */ lwz r17, 0x28(r29)
|
||||
/* 803B6338 003B3298 82 1D 00 2C */ lwz r16, 0x2c(r29)
|
||||
/* 803B633C 003B329C C2 1D 00 10 */ lfs f16, 0x10(r29)
|
||||
/* 803B6340 003B32A0 C2 3D 00 24 */ lfs f17, 0x24(r29)
|
||||
/* 803B6344 003B32A4 C2 5D 00 38 */ lfs f18, 0x38(r29)
|
||||
/* 803B6348 003B32A8 83 3D 00 08 */ lwz r25, 8(r29)
|
||||
/* 803B634C 003B32AC 83 1D 00 1C */ lwz r24, 0x1c(r29)
|
||||
/* 803B6350 003B32B0 82 FD 00 30 */ lwz r23, 0x30(r29)
|
||||
/* 803B6354 003B32B4 80 9D 00 0C */ lwz r4, 0xc(r29)
|
||||
/* 803B6358 003B32B8 80 BD 00 20 */ lwz r5, 0x20(r29)
|
||||
/* 803B635C 003B32BC 80 DD 00 34 */ lwz r6, 0x34(r29)
|
||||
/* 803B6360 003B32C0 81 9B 00 00 */ lwz r12, 0(r27)
|
||||
/* 803B6364 003B32C4 81 7B 00 04 */ lwz r11, 4(r27)
|
||||
/* 803B6368 003B32C8 81 5B 00 14 */ lwz r10, 0x14(r27)
|
||||
/* 803B636C 003B32CC 81 3B 00 18 */ lwz r9, 0x18(r27)
|
||||
/* 803B6370 003B32D0 81 1B 00 28 */ lwz r8, 0x28(r27)
|
||||
/* 803B6374 003B32D4 80 FB 00 2C */ lwz r7, 0x2c(r27)
|
||||
/* 803B6378 003B32D8 C2 7B 00 10 */ lfs f19, 0x10(r27)
|
||||
/* 803B637C 003B32DC C2 9B 00 24 */ lfs f20, 0x24(r27)
|
||||
/* 803B6380 003B32E0 C2 BB 00 38 */ lfs f21, 0x38(r27)
|
||||
/* 803B6384 003B32E4 81 FB 00 08 */ lwz r15, 8(r27)
|
||||
/* 803B6388 003B32E8 81 DB 00 1C */ lwz r14, 0x1c(r27)
|
||||
/* 803B638C 003B32EC 83 C3 00 00 */ lwz r30, 0(r3)
|
||||
/* 803B6390 003B32F0 6F DE 80 00 */ xoris r30, r30, 0x8000
|
||||
/* 803B6394 003B32F4 93 C1 00 5C */ stw r30, 0x5c(r1)
|
||||
/* 803B6398 003B32F8 C9 81 00 58 */ lfd f12, 0x58(r1)
|
||||
/* 803B639C 003B32FC ED 8C 28 28 */ fsubs f12, f12, f5
|
||||
/* 803B63A0 003B3300 3B E0 00 9F */ li r31, 0x9f
|
||||
/* 803B63A4 003B3304 7F E9 03 A6 */ mtctr r31
|
||||
lbl_803B63A8:
|
||||
/* 803B63A8 003B3308 FD A0 60 90 */ fmr f13, f12
|
||||
/* 803B63AC 003B330C 41 9E 00 2C */ beq cr7, lbl_803B63D8
|
||||
/* 803B63B0 003B3310 83 DC 01 AC */ lwz r30, 0x1ac(r28)
|
||||
/* 803B63B4 003B3314 83 BC 01 B8 */ lwz r29, 0x1b8(r28)
|
||||
/* 803B63B8 003B3318 7F F6 F2 14 */ add r31, r22, r30
|
||||
/* 803B63BC 003B331C 3B BD 00 04 */ addi r29, r29, 4
|
||||
/* 803B63C0 003B3320 C1 BD FF FC */ lfs f13, -4(r29)
|
||||
/* 803B63C4 003B3324 7C 1D F8 00 */ cmpw r29, r31
|
||||
/* 803B63C8 003B3328 D1 9D FF FC */ stfs f12, -4(r29)
|
||||
/* 803B63CC 003B332C 40 A2 00 08 */ bne+ lbl_803B63D4
|
||||
/* 803B63D0 003B3330 7F DD F3 78 */ mr r29, r30
|
||||
lbl_803B63D4:
|
||||
/* 803B63D4 003B3334 93 BE 01 B8 */ stw r29, 0x1b8(r30)
|
||||
lbl_803B63D8:
|
||||
/* 803B63D8 003B3338 ED 16 6C 3A */ fmadds f8, f22, f16, f13
|
||||
/* 803B63DC 003B333C 87 A3 00 04 */ lwzu r29, 4(r3)
|
||||
/* 803B63E0 003B3340 ED 37 6C 7A */ fmadds f9, f23, f17, f13
|
||||
/* 803B63E4 003B3344 7D 04 AD 2E */ stfsx f8, r4, r21
|
||||
/* 803B63E8 003B3348 3A B5 00 04 */ addi r21, r21, 4
|
||||
/* 803B63EC 003B334C 7D 25 9D 2E */ stfsx f9, r5, r19
|
||||
/* 803B63F0 003B3350 7D C4 A4 2E */ lfsx f14, r4, r20
|
||||
/* 803B63F4 003B3354 3A 94 00 04 */ addi r20, r20, 4
|
||||
/* 803B63F8 003B3358 7E 25 94 2E */ lfsx f17, r5, r18
|
||||
/* 803B63FC 003B335C 7C 15 C8 00 */ cmpw r21, r25
|
||||
/* 803B6400 003B3360 7C 94 C8 00 */ cmpw cr1, r20, r25
|
||||
/* 803B6404 003B3364 3A 73 00 04 */ addi r19, r19, 4
|
||||
/* 803B6408 003B3368 3A 52 00 04 */ addi r18, r18, 4
|
||||
/* 803B640C 003B336C FE 00 70 90 */ fmr f16, f14
|
||||
/* 803B6410 003B3370 7E 93 C0 00 */ cmpw cr5, r19, r24
|
||||
/* 803B6414 003B3374 ED CE 88 2A */ fadds f14, f14, f17
|
||||
/* 803B6418 003B3378 7F 12 C0 00 */ cmpw cr6, r18, r24
|
||||
/* 803B641C 003B337C 40 A2 00 08 */ bne+ lbl_803B6424
|
||||
/* 803B6420 003B3380 3A A0 00 00 */ li r21, 0
|
||||
lbl_803B6424:
|
||||
/* 803B6424 003B3384 ED 18 6C BA */ fmadds f8, f24, f18, f13
|
||||
/* 803B6428 003B3388 40 A6 00 08 */ bne+ cr1, lbl_803B6430
|
||||
/* 803B642C 003B338C 3A 80 00 00 */ li r20, 0
|
||||
lbl_803B6430:
|
||||
/* 803B6430 003B3390 7D 06 8D 2E */ stfsx f8, r6, r17
|
||||
/* 803B6434 003B3394 3A 31 00 04 */ addi r17, r17, 4
|
||||
/* 803B6438 003B3398 40 B6 00 08 */ bne+ cr5, lbl_803B6440
|
||||
/* 803B643C 003B339C 3A 60 00 00 */ li r19, 0
|
||||
lbl_803B6440:
|
||||
/* 803B6440 003B33A0 7E 46 84 2E */ lfsx f18, r6, r16
|
||||
/* 803B6444 003B33A4 3A 10 00 04 */ addi r16, r16, 4
|
||||
/* 803B6448 003B33A8 7C 11 B8 00 */ cmpw r17, r23
|
||||
/* 803B644C 003B33AC 40 BA 00 08 */ bne+ cr6, lbl_803B6454
|
||||
/* 803B6450 003B33B0 3A 40 00 00 */ li r18, 0
|
||||
lbl_803B6454:
|
||||
/* 803B6454 003B33B4 ED CE 90 2A */ fadds f14, f14, f18
|
||||
/* 803B6458 003B33B8 7C 90 B8 00 */ cmpw cr1, r16, r23
|
||||
/* 803B645C 003B33BC 83 5B 00 0C */ lwz r26, 0xc(r27)
|
||||
/* 803B6460 003B33C0 ED 22 74 FA */ fmadds f9, f2, f19, f14
|
||||
/* 803B6464 003B33C4 40 A2 00 08 */ bne+ lbl_803B646C
|
||||
/* 803B6468 003B33C8 3A 20 00 00 */ li r17, 0
|
||||
lbl_803B646C:
|
||||
/* 803B646C 003B33CC 40 A6 00 08 */ bne+ cr1, lbl_803B6474
|
||||
/* 803B6470 003B33D0 3A 00 00 00 */ li r16, 0
|
||||
lbl_803B6474:
|
||||
/* 803B6474 003B33D4 6F BD 80 00 */ xoris r29, r29, 0x8000
|
||||
/* 803B6478 003B33D8 7D 3A 65 2E */ stfsx f9, r26, r12
|
||||
/* 803B647C 003B33DC ED C2 9A 7C */ fnmsubs f14, f2, f9, f19
|
||||
/* 803B6480 003B33E0 39 8C 00 04 */ addi r12, r12, 4
|
||||
/* 803B6484 003B33E4 7E 7A 5C 2E */ lfsx f19, r26, r11
|
||||
/* 803B6488 003B33E8 7E 8C 78 00 */ cmpw cr5, r12, r15
|
||||
/* 803B648C 003B33EC 39 6B 00 04 */ addi r11, r11, 4
|
||||
/* 803B6490 003B33F0 83 5B 00 20 */ lwz r26, 0x20(r27)
|
||||
/* 803B6494 003B33F4 7F 0B 78 00 */ cmpw cr6, r11, r15
|
||||
/* 803B6498 003B33F8 ED 02 75 3A */ fmadds f8, f2, f20, f14
|
||||
/* 803B649C 003B33FC 40 B6 00 08 */ bne+ cr5, lbl_803B64A4
|
||||
/* 803B64A0 003B3400 39 80 00 00 */ li r12, 0
|
||||
lbl_803B64A4:
|
||||
/* 803B64A4 003B3404 93 A1 00 5C */ stw r29, 0x5c(r1)
|
||||
/* 803B64A8 003B3408 7D 1A 55 2E */ stfsx f8, r26, r10
|
||||
/* 803B64AC 003B340C ED C2 A2 3C */ fnmsubs f14, f2, f8, f20
|
||||
/* 803B64B0 003B3410 39 4A 00 04 */ addi r10, r10, 4
|
||||
/* 803B64B4 003B3414 40 BA 00 08 */ bne+ cr6, lbl_803B64BC
|
||||
/* 803B64B8 003B3418 39 60 00 00 */ li r11, 0
|
||||
lbl_803B64BC:
|
||||
/* 803B64BC 003B341C 7E 9A 4C 2E */ lfsx f20, r26, r9
|
||||
/* 803B64C0 003B3420 7C 0A 70 00 */ cmpw r10, r14
|
||||
/* 803B64C4 003B3424 ED CE 01 B2 */ fmuls f14, f14, f6
|
||||
/* 803B64C8 003B3428 39 29 00 04 */ addi r9, r9, 4
|
||||
/* 803B64CC 003B342C 7C 89 70 00 */ cmpw cr1, r9, r14
|
||||
/* 803B64D0 003B3430 C9 41 00 58 */ lfd f10, 0x58(r1)
|
||||
/* 803B64D4 003B3434 ED CF 76 7A */ fmadds f14, f15, f25, f14
|
||||
/* 803B64D8 003B3438 40 A2 00 08 */ bne+ lbl_803B64E0
|
||||
/* 803B64DC 003B343C 39 40 00 00 */ li r10, 0
|
||||
lbl_803B64E0:
|
||||
/* 803B64E0 003B3440 83 5B 00 34 */ lwz r26, 0x34(r27)
|
||||
/* 803B64E4 003B3444 ED 22 75 7A */ fmadds f9, f2, f21, f14
|
||||
/* 803B64E8 003B3448 FF 20 70 90 */ fmr f25, f14
|
||||
/* 803B64EC 003B344C 40 A6 00 08 */ bne+ cr1, lbl_803B64F4
|
||||
/* 803B64F0 003B3450 39 20 00 00 */ li r9, 0
|
||||
lbl_803B64F4:
|
||||
/* 803B64F4 003B3454 7D 3A 45 2E */ stfsx f9, r26, r8
|
||||
/* 803B64F8 003B3458 ED C2 AA 7C */ fnmsubs f14, f2, f9, f21
|
||||
/* 803B64FC 003B345C 83 FB 00 30 */ lwz r31, 0x30(r27)
|
||||
/* 803B6500 003B3460 ED 04 03 32 */ fmuls f8, f4, f12
|
||||
/* 803B6504 003B3464 7E BA 3C 2E */ lfsx f21, r26, r7
|
||||
/* 803B6508 003B3468 39 08 00 04 */ addi r8, r8, 4
|
||||
/* 803B650C 003B346C 38 E7 00 04 */ addi r7, r7, 4
|
||||
/* 803B6510 003B3470 ED C3 43 BA */ fmadds f14, f3, f14, f8
|
||||
/* 803B6514 003B3474 7E 88 F8 00 */ cmpw cr5, r8, r31
|
||||
/* 803B6518 003B3478 7F 07 F8 00 */ cmpw cr6, r7, r31
|
||||
/* 803B651C 003B347C FD C0 70 1E */ fctiwz f14, f14
|
||||
/* 803B6520 003B3480 40 B6 00 08 */ bne+ cr5, lbl_803B6528
|
||||
/* 803B6524 003B3484 39 00 00 00 */ li r8, 0
|
||||
lbl_803B6528:
|
||||
/* 803B6528 003B3488 40 BA 00 08 */ bne+ cr6, lbl_803B6530
|
||||
/* 803B652C 003B348C 38 E0 00 00 */ li r7, 0
|
||||
lbl_803B6530:
|
||||
/* 803B6530 003B3490 3B E0 FF FC */ li r31, -4
|
||||
/* 803B6534 003B3494 ED 8A 28 28 */ fsubs f12, f10, f5
|
||||
/* 803B6538 003B3498 7D C3 FF AE */ stfiwx f14, r3, r31
|
||||
/* 803B653C 003B349C 42 00 FE 6C */ bdnz lbl_803B63A8
|
||||
/* 803B6540 003B34A0 FD A0 60 90 */ fmr f13, f12
|
||||
/* 803B6544 003B34A4 41 9E 00 2C */ beq cr7, lbl_803B6570
|
||||
/* 803B6548 003B34A8 83 DC 01 AC */ lwz r30, 0x1ac(r28)
|
||||
/* 803B654C 003B34AC 83 BC 01 B8 */ lwz r29, 0x1b8(r28)
|
||||
/* 803B6550 003B34B0 7F F6 F2 14 */ add r31, r22, r30
|
||||
/* 803B6554 003B34B4 3B BD 00 04 */ addi r29, r29, 4
|
||||
/* 803B6558 003B34B8 C1 BD FF FC */ lfs f13, -4(r29)
|
||||
/* 803B655C 003B34BC 7C 1D F8 00 */ cmpw r29, r31
|
||||
/* 803B6560 003B34C0 D1 9D FF FC */ stfs f12, -4(r29)
|
||||
/* 803B6564 003B34C4 40 A2 00 08 */ bne+ lbl_803B656C
|
||||
/* 803B6568 003B34C8 7F DD F3 78 */ mr r29, r30
|
||||
lbl_803B656C:
|
||||
/* 803B656C 003B34CC 93 BE 01 B8 */ stw r29, 0x1b8(r30)
|
||||
lbl_803B6570:
|
||||
/* 803B6570 003B34D0 ED 16 6C 3A */ fmadds f8, f22, f16, f13
|
||||
/* 803B6574 003B34D4 ED 37 6C 7A */ fmadds f9, f23, f17, f13
|
||||
/* 803B6578 003B34D8 7D 04 AD 2E */ stfsx f8, r4, r21
|
||||
/* 803B657C 003B34DC 3A B5 00 04 */ addi r21, r21, 4
|
||||
/* 803B6580 003B34E0 7D 25 9D 2E */ stfsx f9, r5, r19
|
||||
/* 803B6584 003B34E4 7D C4 A4 2E */ lfsx f14, r4, r20
|
||||
/* 803B6588 003B34E8 3A 94 00 04 */ addi r20, r20, 4
|
||||
/* 803B658C 003B34EC 7E 25 94 2E */ lfsx f17, r5, r18
|
||||
/* 803B6590 003B34F0 7C 15 C8 00 */ cmpw r21, r25
|
||||
/* 803B6594 003B34F4 7C 94 C8 00 */ cmpw cr1, r20, r25
|
||||
/* 803B6598 003B34F8 3A 73 00 04 */ addi r19, r19, 4
|
||||
/* 803B659C 003B34FC 3A 52 00 04 */ addi r18, r18, 4
|
||||
/* 803B65A0 003B3500 FE 00 70 90 */ fmr f16, f14
|
||||
/* 803B65A4 003B3504 7E 93 C0 00 */ cmpw cr5, r19, r24
|
||||
/* 803B65A8 003B3508 ED CE 88 2A */ fadds f14, f14, f17
|
||||
/* 803B65AC 003B350C 7F 12 C0 00 */ cmpw cr6, r18, r24
|
||||
/* 803B65B0 003B3510 40 A2 00 08 */ bne+ lbl_803B65B8
|
||||
/* 803B65B4 003B3514 3A A0 00 00 */ li r21, 0
|
||||
lbl_803B65B8:
|
||||
/* 803B65B8 003B3518 ED 18 6C BA */ fmadds f8, f24, f18, f13
|
||||
/* 803B65BC 003B351C 40 A6 00 08 */ bne+ cr1, lbl_803B65C4
|
||||
/* 803B65C0 003B3520 3A 80 00 00 */ li r20, 0
|
||||
lbl_803B65C4:
|
||||
/* 803B65C4 003B3524 7D 06 8D 2E */ stfsx f8, r6, r17
|
||||
/* 803B65C8 003B3528 3A 31 00 04 */ addi r17, r17, 4
|
||||
/* 803B65CC 003B352C 40 B6 00 08 */ bne+ cr5, lbl_803B65D4
|
||||
/* 803B65D0 003B3530 3A 60 00 00 */ li r19, 0
|
||||
lbl_803B65D4:
|
||||
/* 803B65D4 003B3534 7E 46 84 2E */ lfsx f18, r6, r16
|
||||
/* 803B65D8 003B3538 3A 10 00 04 */ addi r16, r16, 4
|
||||
/* 803B65DC 003B353C 7C 11 B8 00 */ cmpw r17, r23
|
||||
/* 803B65E0 003B3540 40 BA 00 08 */ bne+ cr6, lbl_803B65E8
|
||||
/* 803B65E4 003B3544 3A 40 00 00 */ li r18, 0
|
||||
lbl_803B65E8:
|
||||
/* 803B65E8 003B3548 ED CE 90 2A */ fadds f14, f14, f18
|
||||
/* 803B65EC 003B354C 7C 90 B8 00 */ cmpw cr1, r16, r23
|
||||
/* 803B65F0 003B3550 83 5B 00 0C */ lwz r26, 0xc(r27)
|
||||
/* 803B65F4 003B3554 ED 22 74 FA */ fmadds f9, f2, f19, f14
|
||||
/* 803B65F8 003B3558 40 A2 00 08 */ bne+ lbl_803B6600
|
||||
/* 803B65FC 003B355C 3A 20 00 00 */ li r17, 0
|
||||
lbl_803B6600:
|
||||
/* 803B6600 003B3560 40 A6 00 08 */ bne+ cr1, lbl_803B6608
|
||||
/* 803B6604 003B3564 3A 00 00 00 */ li r16, 0
|
||||
lbl_803B6608:
|
||||
/* 803B6608 003B3568 7D 3A 65 2E */ stfsx f9, r26, r12
|
||||
/* 803B660C 003B356C ED C2 9A 7C */ fnmsubs f14, f2, f9, f19
|
||||
/* 803B6610 003B3570 39 8C 00 04 */ addi r12, r12, 4
|
||||
/* 803B6614 003B3574 7E 7A 5C 2E */ lfsx f19, r26, r11
|
||||
/* 803B6618 003B3578 7E 8C 78 00 */ cmpw cr5, r12, r15
|
||||
/* 803B661C 003B357C 39 6B 00 04 */ addi r11, r11, 4
|
||||
/* 803B6620 003B3580 83 5B 00 20 */ lwz r26, 0x20(r27)
|
||||
/* 803B6624 003B3584 7F 0B 78 00 */ cmpw cr6, r11, r15
|
||||
/* 803B6628 003B3588 ED 02 75 3A */ fmadds f8, f2, f20, f14
|
||||
/* 803B662C 003B358C 40 B6 00 08 */ bne+ cr5, lbl_803B6634
|
||||
/* 803B6630 003B3590 39 80 00 00 */ li r12, 0
|
||||
lbl_803B6634:
|
||||
/* 803B6634 003B3594 7D 1A 55 2E */ stfsx f8, r26, r10
|
||||
/* 803B6638 003B3598 ED C2 A2 3C */ fnmsubs f14, f2, f8, f20
|
||||
/* 803B663C 003B359C 39 4A 00 04 */ addi r10, r10, 4
|
||||
/* 803B6640 003B35A0 40 BA 00 08 */ bne+ cr6, lbl_803B6648
|
||||
/* 803B6644 003B35A4 39 60 00 00 */ li r11, 0
|
||||
lbl_803B6648:
|
||||
/* 803B6648 003B35A8 7E 9A 4C 2E */ lfsx f20, r26, r9
|
||||
/* 803B664C 003B35AC 7C 0A 70 00 */ cmpw r10, r14
|
||||
/* 803B6650 003B35B0 ED CE 01 B2 */ fmuls f14, f14, f6
|
||||
/* 803B6654 003B35B4 39 29 00 04 */ addi r9, r9, 4
|
||||
/* 803B6658 003B35B8 7C 89 70 00 */ cmpw cr1, r9, r14
|
||||
/* 803B665C 003B35BC ED CF 76 7A */ fmadds f14, f15, f25, f14
|
||||
/* 803B6660 003B35C0 40 A2 00 08 */ bne+ lbl_803B6668
|
||||
/* 803B6664 003B35C4 39 40 00 00 */ li r10, 0
|
||||
lbl_803B6668:
|
||||
/* 803B6668 003B35C8 83 5B 00 34 */ lwz r26, 0x34(r27)
|
||||
/* 803B666C 003B35CC 80 A1 00 50 */ lwz r5, 0x50(r1)
|
||||
/* 803B6670 003B35D0 80 81 00 54 */ lwz r4, 0x54(r1)
|
||||
/* 803B6674 003B35D4 ED 22 75 7A */ fmadds f9, f2, f21, f14
|
||||
/* 803B6678 003B35D8 FF 20 70 90 */ fmr f25, f14
|
||||
/* 803B667C 003B35DC 40 A6 00 08 */ bne+ cr1, lbl_803B6684
|
||||
/* 803B6680 003B35E0 39 20 00 00 */ li r9, 0
|
||||
lbl_803B6684:
|
||||
/* 803B6684 003B35E4 7D 3A 45 2E */ stfsx f9, r26, r8
|
||||
/* 803B6688 003B35E8 ED C2 AA 7C */ fnmsubs f14, f2, f9, f21
|
||||
/* 803B668C 003B35EC 83 BB 00 30 */ lwz r29, 0x30(r27)
|
||||
/* 803B6690 003B35F0 ED 04 03 32 */ fmuls f8, f4, f12
|
||||
/* 803B6694 003B35F4 7E BA 3C 2E */ lfsx f21, r26, r7
|
||||
/* 803B6698 003B35F8 39 08 00 04 */ addi r8, r8, 4
|
||||
/* 803B669C 003B35FC 38 E7 00 04 */ addi r7, r7, 4
|
||||
/* 803B66A0 003B3600 ED C3 43 BA */ fmadds f14, f3, f14, f8
|
||||
/* 803B66A4 003B3604 7E 88 E8 00 */ cmpw cr5, r8, r29
|
||||
/* 803B66A8 003B3608 7F 07 E8 00 */ cmpw cr6, r7, r29
|
||||
/* 803B66AC 003B360C FD C0 70 1E */ fctiwz f14, f14
|
||||
/* 803B66B0 003B3610 40 B6 00 08 */ bne+ cr5, lbl_803B66B8
|
||||
/* 803B66B4 003B3614 39 00 00 00 */ li r8, 0
|
||||
lbl_803B66B8:
|
||||
/* 803B66B8 003B3618 40 BA 00 08 */ bne+ cr6, lbl_803B66C0
|
||||
/* 803B66BC 003B361C 38 E0 00 00 */ li r7, 0
|
||||
lbl_803B66C0:
|
||||
/* 803B66C0 003B3620 54 BE 08 3C */ slwi r30, r5, 1
|
||||
/* 803B66C4 003B3624 7F DE 2A 14 */ add r30, r30, r5
|
||||
/* 803B66C8 003B3628 1F FE 00 14 */ mulli r31, r30, 0x14
|
||||
/* 803B66CC 003B362C 7D C0 1F AE */ stfiwx f14, 0, r3
|
||||
/* 803B66D0 003B3630 3B A4 00 B4 */ addi r29, r4, 0xb4
|
||||
/* 803B66D4 003B3634 7F BD FA 14 */ add r29, r29, r31
|
||||
/* 803B66D8 003B3638 92 BD 00 00 */ stw r21, 0(r29)
|
||||
/* 803B66DC 003B363C 92 9D 00 04 */ stw r20, 4(r29)
|
||||
/* 803B66E0 003B3640 92 7D 00 14 */ stw r19, 0x14(r29)
|
||||
/* 803B66E4 003B3644 92 5D 00 18 */ stw r18, 0x18(r29)
|
||||
/* 803B66E8 003B3648 92 3D 00 28 */ stw r17, 0x28(r29)
|
||||
/* 803B66EC 003B364C 92 1D 00 2C */ stw r16, 0x2c(r29)
|
||||
/* 803B66F0 003B3650 D2 1D 00 10 */ stfs f16, 0x10(r29)
|
||||
/* 803B66F4 003B3654 D2 3D 00 24 */ stfs f17, 0x24(r29)
|
||||
/* 803B66F8 003B3658 D2 5D 00 38 */ stfs f18, 0x38(r29)
|
||||
/* 803B66FC 003B365C 91 9B 00 00 */ stw r12, 0(r27)
|
||||
/* 803B6700 003B3660 91 7B 00 04 */ stw r11, 4(r27)
|
||||
/* 803B6704 003B3664 91 5B 00 14 */ stw r10, 0x14(r27)
|
||||
/* 803B6708 003B3668 91 3B 00 18 */ stw r9, 0x18(r27)
|
||||
/* 803B670C 003B366C 91 1B 00 28 */ stw r8, 0x28(r27)
|
||||
/* 803B6710 003B3670 90 FB 00 2C */ stw r7, 0x2c(r27)
|
||||
/* 803B6714 003B3674 D2 7B 00 10 */ stfs f19, 0x10(r27)
|
||||
/* 803B6718 003B3678 D2 9B 00 24 */ stfs f20, 0x24(r27)
|
||||
/* 803B671C 003B367C D2 BB 00 38 */ stfs f21, 0x38(r27)
|
||||
/* 803B6720 003B3680 54 BF 10 3A */ slwi r31, r5, 2
|
||||
/* 803B6724 003B3684 7F FF 22 14 */ add r31, r31, r4
|
||||
/* 803B6728 003B3688 D3 3F 01 90 */ stfs f25, 0x190(r31)
|
||||
/* 803B672C 003B368C C9 C1 00 60 */ lfd f14, 0x60(r1)
|
||||
/* 803B6730 003B3690 C9 E1 00 68 */ lfd f15, 0x68(r1)
|
||||
/* 803B6734 003B3694 CA 01 00 70 */ lfd f16, 0x70(r1)
|
||||
/* 803B6738 003B3698 CA 21 00 78 */ lfd f17, 0x78(r1)
|
||||
/* 803B673C 003B369C CA 41 00 80 */ lfd f18, 0x80(r1)
|
||||
/* 803B6740 003B36A0 CA 61 00 88 */ lfd f19, 0x88(r1)
|
||||
/* 803B6744 003B36A4 CA 81 00 90 */ lfd f20, 0x90(r1)
|
||||
/* 803B6748 003B36A8 CA A1 00 98 */ lfd f21, 0x98(r1)
|
||||
/* 803B674C 003B36AC CA C1 00 A0 */ lfd f22, 0xa0(r1)
|
||||
/* 803B6750 003B36B0 CA E1 00 A8 */ lfd f23, 0xa8(r1)
|
||||
/* 803B6754 003B36B4 CB 01 00 B0 */ lfd f24, 0xb0(r1)
|
||||
/* 803B6758 003B36B8 CB 21 00 B8 */ lfd f25, 0xb8(r1)
|
||||
/* 803B675C 003B36BC B9 C1 00 08 */ lmw r14, 8(r1)
|
||||
/* 803B6760 003B36C0 38 21 00 C0 */ addi r1, r1, 0xc0
|
||||
/* 803B6764 003B36C4 4E 80 00 20 */ blr
|
||||
|
||||
.global ReverbHICallback
|
||||
ReverbHICallback:
|
||||
/* 803B6768 003B36C8 94 21 FF E0 */ stwu r1, -0x20(r1)
|
||||
/* 803B676C 003B36CC 7C 08 02 A6 */ mflr r0
|
||||
/* 803B6770 003B36D0 90 01 00 24 */ stw r0, 0x24(r1)
|
||||
/* 803B6774 003B36D4 39 61 00 20 */ addi r11, r1, 0x20
|
||||
/* 803B6778 003B36D8 4B FD 33 05 */ bl sub_80389a7c
|
||||
/* 803B677C 003B36DC 7C 7B 1B 78 */ mr r27, r3
|
||||
/* 803B6780 003B36E0 7C 9C 23 78 */ mr r28, r4
|
||||
/* 803B6784 003B36E4 7C BD 2B 78 */ mr r29, r5
|
||||
/* 803B6788 003B36E8 7C DE 33 78 */ mr r30, r6
|
||||
/* 803B678C 003B36EC 3B E0 00 00 */ li r31, 0
|
||||
/* 803B6790 003B36F0 48 00 00 94 */ b lbl_803B6824
|
||||
lbl_803B6794:
|
||||
/* 803B6794 003B36F4 57 E0 06 3E */ clrlwi r0, r31, 0x18
|
||||
/* 803B6798 003B36F8 2C 00 00 01 */ cmpwi r0, 1
|
||||
/* 803B679C 003B36FC 41 82 00 60 */ beq lbl_803B67FC
|
||||
/* 803B67A0 003B3700 40 80 00 10 */ bge lbl_803B67B0
|
||||
/* 803B67A4 003B3704 2C 00 00 00 */ cmpwi r0, 0
|
||||
/* 803B67A8 003B3708 40 80 00 14 */ bge lbl_803B67BC
|
||||
/* 803B67AC 003B370C 48 00 00 74 */ b lbl_803B6820
|
||||
lbl_803B67B0:
|
||||
/* 803B67B0 003B3710 2C 00 00 03 */ cmpwi r0, 3
|
||||
/* 803B67B4 003B3714 40 80 00 6C */ bge lbl_803B6820
|
||||
/* 803B67B8 003B3718 48 00 00 58 */ b lbl_803B6810
|
||||
lbl_803B67BC:
|
||||
/* 803B67BC 003B371C C0 02 D6 D0 */ lfs f0, lbl_805AF3F0@sda21(r2)
|
||||
/* 803B67C0 003B3720 C0 5E 01 A8 */ lfs f2, 0x1a8(r30)
|
||||
/* 803B67C4 003B3724 FC 00 10 00 */ fcmpu cr0, f0, f2
|
||||
/* 803B67C8 003B3728 41 82 00 20 */ beq lbl_803B67E8
|
||||
/* 803B67CC 003B372C C0 22 D7 10 */ lfs f1, lbl_805AF430@sda21(r2)
|
||||
/* 803B67D0 003B3730 7F 63 DB 78 */ mr r3, r27
|
||||
/* 803B67D4 003B3734 C0 02 D6 D4 */ lfs f0, lbl_805AF3F4@sda21(r2)
|
||||
/* 803B67D8 003B3738 7F 84 E3 78 */ mr r4, r28
|
||||
/* 803B67DC 003B373C EC 21 00 B2 */ fmuls f1, f1, f2
|
||||
/* 803B67E0 003B3740 EC 40 08 28 */ fsubs f2, f0, f1
|
||||
/* 803B67E4 003B3744 4B FF F8 E9 */ bl DoCrossTalk
|
||||
lbl_803B67E8:
|
||||
/* 803B67E8 003B3748 7F 63 DB 78 */ mr r3, r27
|
||||
/* 803B67EC 003B374C 7F C4 F3 78 */ mr r4, r30
|
||||
/* 803B67F0 003B3750 38 A0 00 00 */ li r5, 0
|
||||
/* 803B67F4 003B3754 4B FF FA 69 */ bl HandleReverb_0
|
||||
/* 803B67F8 003B3758 48 00 00 28 */ b lbl_803B6820
|
||||
lbl_803B67FC:
|
||||
/* 803B67FC 003B375C 7F 83 E3 78 */ mr r3, r28
|
||||
/* 803B6800 003B3760 7F C4 F3 78 */ mr r4, r30
|
||||
/* 803B6804 003B3764 38 A0 00 01 */ li r5, 1
|
||||
/* 803B6808 003B3768 4B FF FA 55 */ bl HandleReverb_0
|
||||
/* 803B680C 003B376C 48 00 00 14 */ b lbl_803B6820
|
||||
lbl_803B6810:
|
||||
/* 803B6810 003B3770 7F A3 EB 78 */ mr r3, r29
|
||||
/* 803B6814 003B3774 7F C4 F3 78 */ mr r4, r30
|
||||
/* 803B6818 003B3778 38 A0 00 02 */ li r5, 2
|
||||
/* 803B681C 003B377C 4B FF FA 41 */ bl HandleReverb_0
|
||||
lbl_803B6820:
|
||||
/* 803B6820 003B3780 3B FF 00 01 */ addi r31, r31, 1
|
||||
lbl_803B6824:
|
||||
/* 803B6824 003B3784 57 E0 06 3E */ clrlwi r0, r31, 0x18
|
||||
/* 803B6828 003B3788 28 00 00 03 */ cmplwi r0, 3
|
||||
/* 803B682C 003B378C 41 80 FF 68 */ blt lbl_803B6794
|
||||
/* 803B6830 003B3790 39 61 00 20 */ addi r11, r1, 0x20
|
||||
/* 803B6834 003B3794 4B FD 32 95 */ bl _restgpr_27
|
||||
/* 803B6838 003B3798 80 01 00 24 */ lwz r0, 0x24(r1)
|
||||
/* 803B683C 003B379C 7C 08 03 A6 */ mtlr r0
|
||||
/* 803B6840 003B37A0 38 21 00 20 */ addi r1, r1, 0x20
|
||||
/* 803B6844 003B37A4 4E 80 00 20 */ blr
|
||||
|
||||
.global ReverbHIFree
|
||||
ReverbHIFree:
|
||||
/* 803B6848 003B37A8 94 21 FF F0 */ stwu r1, -0x10(r1)
|
||||
/* 803B684C 003B37AC 7C 08 02 A6 */ mflr r0
|
||||
/* 803B6850 003B37B0 90 01 00 14 */ stw r0, 0x14(r1)
|
||||
/* 803B6854 003B37B4 93 E1 00 0C */ stw r31, 0xc(r1)
|
||||
/* 803B6858 003B37B8 3B E0 00 00 */ li r31, 0
|
||||
/* 803B685C 003B37BC 93 C1 00 08 */ stw r30, 8(r1)
|
||||
/* 803B6860 003B37C0 7C 7E 1B 78 */ mr r30, r3
|
||||
/* 803B6864 003B37C4 48 00 00 1C */ b lbl_803B6880
|
||||
lbl_803B6868:
|
||||
/* 803B6868 003B37C8 57 E0 06 3E */ clrlwi r0, r31, 0x18
|
||||
/* 803B686C 003B37CC 1C 60 00 14 */ mulli r3, r0, 0x14
|
||||
/* 803B6870 003B37D0 38 03 00 0C */ addi r0, r3, 0xc
|
||||
/* 803B6874 003B37D4 7C 7E 00 2E */ lwzx r3, r30, r0
|
||||
/* 803B6878 003B37D8 4B FF E8 E5 */ bl salFree
|
||||
/* 803B687C 003B37DC 3B FF 00 01 */ addi r31, r31, 1
|
||||
lbl_803B6880:
|
||||
/* 803B6880 003B37E0 57 E0 06 3E */ clrlwi r0, r31, 0x18
|
||||
/* 803B6884 003B37E4 28 00 00 09 */ cmplwi r0, 9
|
||||
/* 803B6888 003B37E8 41 80 FF E0 */ blt lbl_803B6868
|
||||
/* 803B688C 003B37EC 3B E0 00 00 */ li r31, 0
|
||||
/* 803B6890 003B37F0 48 00 00 1C */ b lbl_803B68AC
|
||||
lbl_803B6894:
|
||||
/* 803B6894 003B37F4 57 E0 06 3E */ clrlwi r0, r31, 0x18
|
||||
/* 803B6898 003B37F8 1C 60 00 14 */ mulli r3, r0, 0x14
|
||||
/* 803B689C 003B37FC 38 03 00 C0 */ addi r0, r3, 0xc0
|
||||
/* 803B68A0 003B3800 7C 7E 00 2E */ lwzx r3, r30, r0
|
||||
/* 803B68A4 003B3804 4B FF E8 B9 */ bl salFree
|
||||
/* 803B68A8 003B3808 3B FF 00 01 */ addi r31, r31, 1
|
||||
lbl_803B68AC:
|
||||
/* 803B68AC 003B380C 57 E0 06 3E */ clrlwi r0, r31, 0x18
|
||||
/* 803B68B0 003B3810 28 00 00 09 */ cmplwi r0, 9
|
||||
/* 803B68B4 003B3814 41 80 FF E0 */ blt lbl_803B6894
|
||||
/* 803B68B8 003B3818 80 1E 01 A4 */ lwz r0, 0x1a4(r30)
|
||||
/* 803B68BC 003B381C 2C 00 00 00 */ cmpwi r0, 0
|
||||
/* 803B68C0 003B3820 41 82 00 2C */ beq lbl_803B68EC
|
||||
/* 803B68C4 003B3824 3B E0 00 00 */ li r31, 0
|
||||
/* 803B68C8 003B3828 48 00 00 18 */ b lbl_803B68E0
|
||||
lbl_803B68CC:
|
||||
/* 803B68CC 003B382C 57 E3 15 BA */ rlwinm r3, r31, 2, 0x16, 0x1d
|
||||
/* 803B68D0 003B3830 38 03 01 AC */ addi r0, r3, 0x1ac
|
||||
/* 803B68D4 003B3834 7C 7E 00 2E */ lwzx r3, r30, r0
|
||||
/* 803B68D8 003B3838 4B FF E8 85 */ bl salFree
|
||||
/* 803B68DC 003B383C 3B FF 00 01 */ addi r31, r31, 1
|
||||
lbl_803B68E0:
|
||||
/* 803B68E0 003B3840 57 E0 06 3E */ clrlwi r0, r31, 0x18
|
||||
/* 803B68E4 003B3844 28 00 00 03 */ cmplwi r0, 3
|
||||
/* 803B68E8 003B3848 41 80 FF E4 */ blt lbl_803B68CC
|
||||
lbl_803B68EC:
|
||||
/* 803B68EC 003B384C 80 01 00 14 */ lwz r0, 0x14(r1)
|
||||
/* 803B68F0 003B3850 83 E1 00 0C */ lwz r31, 0xc(r1)
|
||||
/* 803B68F4 003B3854 83 C1 00 08 */ lwz r30, 8(r1)
|
||||
/* 803B68F8 003B3858 7C 08 03 A6 */ mtlr r0
|
||||
/* 803B68FC 003B385C 38 21 00 10 */ addi r1, r1, 0x10
|
||||
/* 803B6900 003B3860 4E 80 00 20 */ blr
|
|
@ -0,0 +1,62 @@
|
|||
.include "macros.inc"
|
||||
|
||||
.section .text, "ax"
|
||||
|
||||
.global sndAuxCallbackReverbSTD
|
||||
sndAuxCallbackReverbSTD:
|
||||
/* 803B5B00 003B2A60 94 21 FF F0 */ stwu r1, -0x10(r1)
|
||||
/* 803B5B04 003B2A64 7C 08 02 A6 */ mflr r0
|
||||
/* 803B5B08 003B2A68 7C 87 23 78 */ mr r7, r4
|
||||
/* 803B5B0C 003B2A6C 90 01 00 14 */ stw r0, 0x14(r1)
|
||||
/* 803B5B10 003B2A70 54 60 06 3E */ clrlwi r0, r3, 0x18
|
||||
/* 803B5B14 003B2A74 2C 00 00 01 */ cmpwi r0, 1
|
||||
/* 803B5B18 003B2A78 41 82 00 34 */ beq lbl_803B5B4C
|
||||
/* 803B5B1C 003B2A7C 40 80 00 30 */ bge lbl_803B5B4C
|
||||
/* 803B5B20 003B2A80 2C 00 00 00 */ cmpwi r0, 0
|
||||
/* 803B5B24 003B2A84 40 80 00 08 */ bge lbl_803B5B2C
|
||||
/* 803B5B28 003B2A88 48 00 00 24 */ b lbl_803B5B4C
|
||||
lbl_803B5B2C:
|
||||
/* 803B5B2C 003B2A8C 88 05 01 C4 */ lbz r0, 0x1c4(r5)
|
||||
/* 803B5B30 003B2A90 28 00 00 00 */ cmplwi r0, 0
|
||||
/* 803B5B34 003B2A94 40 82 00 18 */ bne lbl_803B5B4C
|
||||
/* 803B5B38 003B2A98 80 67 00 00 */ lwz r3, 0(r7)
|
||||
/* 803B5B3C 003B2A9C 7C A6 2B 78 */ mr r6, r5
|
||||
/* 803B5B40 003B2AA0 80 87 00 04 */ lwz r4, 4(r7)
|
||||
/* 803B5B44 003B2AA4 80 A7 00 08 */ lwz r5, 8(r7)
|
||||
/* 803B5B48 003B2AA8 48 00 0C 21 */ bl ReverbHICallback
|
||||
lbl_803B5B4C:
|
||||
/* 803B5B4C 003B2AAC 80 01 00 14 */ lwz r0, 0x14(r1)
|
||||
/* 803B5B50 003B2AB0 7C 08 03 A6 */ mtlr r0
|
||||
/* 803B5B54 003B2AB4 38 21 00 10 */ addi r1, r1, 0x10
|
||||
/* 803B5B58 003B2AB8 4E 80 00 20 */ blr
|
||||
|
||||
.global sndAuxCallbackPrepareReverbHI
|
||||
sndAuxCallbackPrepareReverbHI:
|
||||
/* 803B5B5C 003B2ABC 94 21 FF F0 */ stwu r1, -0x10(r1)
|
||||
/* 803B5B60 003B2AC0 7C 08 02 A6 */ mflr r0
|
||||
/* 803B5B64 003B2AC4 90 01 00 14 */ stw r0, 0x14(r1)
|
||||
/* 803B5B68 003B2AC8 38 00 00 00 */ li r0, 0
|
||||
/* 803B5B6C 003B2ACC 98 03 01 C4 */ stb r0, 0x1c4(r3)
|
||||
/* 803B5B70 003B2AD0 C0 23 01 C8 */ lfs f1, 0x1c8(r3)
|
||||
/* 803B5B74 003B2AD4 C0 43 01 D0 */ lfs f2, 0x1d0(r3)
|
||||
/* 803B5B78 003B2AD8 C0 63 01 CC */ lfs f3, 0x1cc(r3)
|
||||
/* 803B5B7C 003B2ADC C0 83 01 D4 */ lfs f4, 0x1d4(r3)
|
||||
/* 803B5B80 003B2AE0 C0 A3 01 D8 */ lfs f5, 0x1d8(r3)
|
||||
/* 803B5B84 003B2AE4 C0 C3 01 DC */ lfs f6, 0x1dc(r3)
|
||||
/* 803B5B88 003B2AE8 48 00 00 39 */ bl ReverbHICreate
|
||||
/* 803B5B8C 003B2AEC 80 01 00 14 */ lwz r0, 0x14(r1)
|
||||
/* 803B5B90 003B2AF0 7C 08 03 A6 */ mtlr r0
|
||||
/* 803B5B94 003B2AF4 38 21 00 10 */ addi r1, r1, 0x10
|
||||
/* 803B5B98 003B2AF8 4E 80 00 20 */ blr
|
||||
|
||||
.global sndAuxCallbackShutdownReverbHI
|
||||
sndAuxCallbackShutdownReverbHI:
|
||||
/* 803B5B9C 003B2AFC 94 21 FF F0 */ stwu r1, -0x10(r1)
|
||||
/* 803B5BA0 003B2B00 7C 08 02 A6 */ mflr r0
|
||||
/* 803B5BA4 003B2B04 90 01 00 14 */ stw r0, 0x14(r1)
|
||||
/* 803B5BA8 003B2B08 48 00 0C A1 */ bl ReverbHIFree
|
||||
/* 803B5BAC 003B2B0C 80 01 00 14 */ lwz r0, 0x14(r1)
|
||||
/* 803B5BB0 003B2B10 38 60 00 01 */ li r3, 1
|
||||
/* 803B5BB4 003B2B14 7C 08 03 A6 */ mtlr r0
|
||||
/* 803B5BB8 003B2B18 38 21 00 10 */ addi r1, r1, 0x10
|
||||
/* 803B5BBC 003B2B1C 4E 80 00 20 */ blr
|
File diff suppressed because it is too large
Load Diff
File diff suppressed because it is too large
Load Diff
|
@ -0,0 +1,122 @@
|
|||
.include "macros.inc"
|
||||
|
||||
.section .text, "ax"
|
||||
|
||||
.global sndSeqStop
|
||||
sndSeqStop:
|
||||
/* 8039BFFC 00398F5C 94 21 FF F0 */ stwu r1, -0x10(r1)
|
||||
/* 8039C000 00398F60 7C 08 02 A6 */ mflr r0
|
||||
/* 8039C004 00398F64 90 01 00 14 */ stw r0, 0x14(r1)
|
||||
/* 8039C008 00398F68 93 E1 00 0C */ stw r31, 0xc(r1)
|
||||
/* 8039C00C 00398F6C 7C 7F 1B 78 */ mr r31, r3
|
||||
/* 8039C010 00398F70 48 01 90 AD */ bl hwDisableIrq
|
||||
/* 8039C014 00398F74 7F E3 FB 78 */ mr r3, r31
|
||||
/* 8039C018 00398F78 4B FF 9B 25 */ bl seqStop
|
||||
/* 8039C01C 00398F7C 48 01 90 69 */ bl hwEnableIrq
|
||||
/* 8039C020 00398F80 80 01 00 14 */ lwz r0, 0x14(r1)
|
||||
/* 8039C024 00398F84 83 E1 00 0C */ lwz r31, 0xc(r1)
|
||||
/* 8039C028 00398F88 7C 08 03 A6 */ mtlr r0
|
||||
/* 8039C02C 00398F8C 38 21 00 10 */ addi r1, r1, 0x10
|
||||
/* 8039C030 00398F90 4E 80 00 20 */ blr
|
||||
|
||||
.global sndSeqSpeed
|
||||
sndSeqSpeed:
|
||||
/* 8039C034 00398F94 94 21 FF F0 */ stwu r1, -0x10(r1)
|
||||
/* 8039C038 00398F98 7C 08 02 A6 */ mflr r0
|
||||
/* 8039C03C 00398F9C 90 01 00 14 */ stw r0, 0x14(r1)
|
||||
/* 8039C040 00398FA0 93 E1 00 0C */ stw r31, 0xc(r1)
|
||||
/* 8039C044 00398FA4 7C 9F 23 78 */ mr r31, r4
|
||||
/* 8039C048 00398FA8 93 C1 00 08 */ stw r30, 8(r1)
|
||||
/* 8039C04C 00398FAC 7C 7E 1B 78 */ mr r30, r3
|
||||
/* 8039C050 00398FB0 48 01 90 6D */ bl hwDisableIrq
|
||||
/* 8039C054 00398FB4 7F C3 F3 78 */ mr r3, r30
|
||||
/* 8039C058 00398FB8 7F E4 FB 78 */ mr r4, r31
|
||||
/* 8039C05C 00398FBC 4B FF 9E 21 */ bl seqSpeed
|
||||
/* 8039C060 00398FC0 48 01 90 25 */ bl hwEnableIrq
|
||||
/* 8039C064 00398FC4 80 01 00 14 */ lwz r0, 0x14(r1)
|
||||
/* 8039C068 00398FC8 83 E1 00 0C */ lwz r31, 0xc(r1)
|
||||
/* 8039C06C 00398FCC 83 C1 00 08 */ lwz r30, 8(r1)
|
||||
/* 8039C070 00398FD0 7C 08 03 A6 */ mtlr r0
|
||||
/* 8039C074 00398FD4 38 21 00 10 */ addi r1, r1, 0x10
|
||||
/* 8039C078 00398FD8 4E 80 00 20 */ blr
|
||||
|
||||
.global sndSeqContinue
|
||||
sndSeqContinue:
|
||||
/* 8039C07C 00398FDC 94 21 FF F0 */ stwu r1, -0x10(r1)
|
||||
/* 8039C080 00398FE0 7C 08 02 A6 */ mflr r0
|
||||
/* 8039C084 00398FE4 90 01 00 14 */ stw r0, 0x14(r1)
|
||||
/* 8039C088 00398FE8 93 E1 00 0C */ stw r31, 0xc(r1)
|
||||
/* 8039C08C 00398FEC 7C 7F 1B 78 */ mr r31, r3
|
||||
/* 8039C090 00398FF0 48 01 90 2D */ bl hwDisableIrq
|
||||
/* 8039C094 00398FF4 7F E3 FB 78 */ mr r3, r31
|
||||
/* 8039C098 00398FF8 4B FF 9E C9 */ bl seqContinue
|
||||
/* 8039C09C 00398FFC 48 01 8F E9 */ bl hwEnableIrq
|
||||
/* 8039C0A0 00399000 80 01 00 14 */ lwz r0, 0x14(r1)
|
||||
/* 8039C0A4 00399004 83 E1 00 0C */ lwz r31, 0xc(r1)
|
||||
/* 8039C0A8 00399008 7C 08 03 A6 */ mtlr r0
|
||||
/* 8039C0AC 0039900C 38 21 00 10 */ addi r1, r1, 0x10
|
||||
/* 8039C0B0 00399010 4E 80 00 20 */ blr
|
||||
|
||||
.global sndSeqMute
|
||||
sndSeqMute:
|
||||
/* 8039C0B4 00399014 94 21 FF E0 */ stwu r1, -0x20(r1)
|
||||
/* 8039C0B8 00399018 7C 08 02 A6 */ mflr r0
|
||||
/* 8039C0BC 0039901C 90 01 00 24 */ stw r0, 0x24(r1)
|
||||
/* 8039C0C0 00399020 93 E1 00 1C */ stw r31, 0x1c(r1)
|
||||
/* 8039C0C4 00399024 7C BF 2B 78 */ mr r31, r5
|
||||
/* 8039C0C8 00399028 93 C1 00 18 */ stw r30, 0x18(r1)
|
||||
/* 8039C0CC 0039902C 7C 9E 23 78 */ mr r30, r4
|
||||
/* 8039C0D0 00399030 93 A1 00 14 */ stw r29, 0x14(r1)
|
||||
/* 8039C0D4 00399034 7C 7D 1B 78 */ mr r29, r3
|
||||
/* 8039C0D8 00399038 48 01 8F E5 */ bl hwDisableIrq
|
||||
/* 8039C0DC 0039903C 7F A3 EB 78 */ mr r3, r29
|
||||
/* 8039C0E0 00399040 7F C4 F3 78 */ mr r4, r30
|
||||
/* 8039C0E4 00399044 7F E5 FB 78 */ mr r5, r31
|
||||
/* 8039C0E8 00399048 4B FF 9F 81 */ bl seqMute
|
||||
/* 8039C0EC 0039904C 48 01 8F 99 */ bl hwEnableIrq
|
||||
/* 8039C0F0 00399050 80 01 00 24 */ lwz r0, 0x24(r1)
|
||||
/* 8039C0F4 00399054 83 E1 00 1C */ lwz r31, 0x1c(r1)
|
||||
/* 8039C0F8 00399058 83 C1 00 18 */ lwz r30, 0x18(r1)
|
||||
/* 8039C0FC 0039905C 83 A1 00 14 */ lwz r29, 0x14(r1)
|
||||
/* 8039C100 00399060 7C 08 03 A6 */ mtlr r0
|
||||
/* 8039C104 00399064 38 21 00 20 */ addi r1, r1, 0x20
|
||||
/* 8039C108 00399068 4E 80 00 20 */ blr
|
||||
|
||||
.global sndSeqVolume
|
||||
sndSeqVolume:
|
||||
/* 8039C10C 0039906C 94 21 FF E0 */ stwu r1, -0x20(r1)
|
||||
/* 8039C110 00399070 7C 08 02 A6 */ mflr r0
|
||||
/* 8039C114 00399074 90 01 00 24 */ stw r0, 0x24(r1)
|
||||
/* 8039C118 00399078 93 E1 00 1C */ stw r31, 0x1c(r1)
|
||||
/* 8039C11C 0039907C 7C DF 33 78 */ mr r31, r6
|
||||
/* 8039C120 00399080 93 C1 00 18 */ stw r30, 0x18(r1)
|
||||
/* 8039C124 00399084 7C BE 2B 78 */ mr r30, r5
|
||||
/* 8039C128 00399088 93 A1 00 14 */ stw r29, 0x14(r1)
|
||||
/* 8039C12C 0039908C 7C 9D 23 78 */ mr r29, r4
|
||||
/* 8039C130 00399090 93 81 00 10 */ stw r28, 0x10(r1)
|
||||
/* 8039C134 00399094 7C 7C 1B 78 */ mr r28, r3
|
||||
/* 8039C138 00399098 48 01 8F 85 */ bl hwDisableIrq
|
||||
/* 8039C13C 0039909C 7F 83 E3 78 */ mr r3, r28
|
||||
/* 8039C140 003990A0 7F A4 EB 78 */ mr r4, r29
|
||||
/* 8039C144 003990A4 7F C5 F3 78 */ mr r5, r30
|
||||
/* 8039C148 003990A8 7F E6 FB 78 */ mr r6, r31
|
||||
/* 8039C14C 003990AC 4B FF 9F D9 */ bl seqVolume
|
||||
/* 8039C150 003990B0 48 01 8F 35 */ bl hwEnableIrq
|
||||
/* 8039C154 003990B4 80 01 00 24 */ lwz r0, 0x24(r1)
|
||||
/* 8039C158 003990B8 83 E1 00 1C */ lwz r31, 0x1c(r1)
|
||||
/* 8039C15C 003990BC 83 C1 00 18 */ lwz r30, 0x18(r1)
|
||||
/* 8039C160 003990C0 83 A1 00 14 */ lwz r29, 0x14(r1)
|
||||
/* 8039C164 003990C4 83 81 00 10 */ lwz r28, 0x10(r1)
|
||||
/* 8039C168 003990C8 7C 08 03 A6 */ mtlr r0
|
||||
/* 8039C16C 003990CC 38 21 00 20 */ addi r1, r1, 0x20
|
||||
/* 8039C170 003990D0 4E 80 00 20 */ blr
|
||||
|
||||
.global seqGetMIDIPriority
|
||||
seqGetMIDIPriority:
|
||||
/* 8039C174 003990D4 3C A0 80 55 */ lis r5, lbl_8054FD10@ha
|
||||
/* 8039C178 003990D8 54 66 2C F4 */ rlwinm r6, r3, 5, 0x13, 0x1a
|
||||
/* 8039C17C 003990DC 38 65 FD 10 */ addi r3, r5, lbl_8054FD10@l
|
||||
/* 8039C180 003990E0 54 80 0D FC */ rlwinm r0, r4, 1, 0x17, 0x1e
|
||||
/* 8039C184 003990E4 7C 63 32 14 */ add r3, r3, r6
|
||||
/* 8039C188 003990E8 7C 63 02 2E */ lhzx r3, r3, r0
|
||||
/* 8039C18C 003990EC 4E 80 00 20 */ blr
|
File diff suppressed because it is too large
Load Diff
|
@ -0,0 +1,97 @@
|
|||
.include "macros.inc"
|
||||
|
||||
.section .text, "ax"
|
||||
|
||||
.global sndInit
|
||||
sndInit:
|
||||
/* 803B0BC0 003ADB20 94 21 FF E0 */ stwu r1, -0x20(r1)
|
||||
/* 803B0BC4 003ADB24 7C 08 02 A6 */ mflr r0
|
||||
/* 803B0BC8 003ADB28 39 20 00 00 */ li r9, 0
|
||||
/* 803B0BCC 003ADB2C 90 01 00 24 */ stw r0, 0x24(r1)
|
||||
/* 803B0BD0 003ADB30 54 60 06 3E */ clrlwi r0, r3, 0x18
|
||||
/* 803B0BD4 003ADB34 28 00 00 40 */ cmplwi r0, 0x40
|
||||
/* 803B0BD8 003ADB38 93 E1 00 1C */ stw r31, 0x1c(r1)
|
||||
/* 803B0BDC 003ADB3C 7D 1F 43 78 */ mr r31, r8
|
||||
/* 803B0BE0 003ADB40 93 C1 00 18 */ stw r30, 0x18(r1)
|
||||
/* 803B0BE4 003ADB44 7C FE 3B 78 */ mr r30, r7
|
||||
/* 803B0BE8 003ADB48 93 A1 00 14 */ stw r29, 0x14(r1)
|
||||
/* 803B0BEC 003ADB4C 99 2D AE 48 */ stb r9, lbl_805A9A08@sda21(r13)
|
||||
/* 803B0BF0 003ADB50 41 81 00 14 */ bgt lbl_803B0C04
|
||||
/* 803B0BF4 003ADB54 3C E0 80 55 */ lis r7, lbl_80550050@ha
|
||||
/* 803B0BF8 003ADB58 38 E7 00 50 */ addi r7, r7, lbl_80550050@l
|
||||
/* 803B0BFC 003ADB5C 98 67 02 10 */ stb r3, 0x210(r7)
|
||||
/* 803B0C00 003ADB60 48 00 00 14 */ b lbl_803B0C14
|
||||
lbl_803B0C04:
|
||||
/* 803B0C04 003ADB64 3C 60 80 55 */ lis r3, lbl_80550050@ha
|
||||
/* 803B0C08 003ADB68 38 00 00 40 */ li r0, 0x40
|
||||
/* 803B0C0C 003ADB6C 38 63 00 50 */ addi r3, r3, lbl_80550050@l
|
||||
/* 803B0C10 003ADB70 98 03 02 10 */ stb r0, 0x210(r3)
|
||||
lbl_803B0C14:
|
||||
/* 803B0C14 003ADB74 54 C0 06 3E */ clrlwi r0, r6, 0x18
|
||||
/* 803B0C18 003ADB78 28 00 00 08 */ cmplwi r0, 8
|
||||
/* 803B0C1C 003ADB7C 41 81 00 14 */ bgt lbl_803B0C30
|
||||
/* 803B0C20 003ADB80 3C 60 80 55 */ lis r3, lbl_80550050@ha
|
||||
/* 803B0C24 003ADB84 38 63 00 50 */ addi r3, r3, lbl_80550050@l
|
||||
/* 803B0C28 003ADB88 98 C3 02 13 */ stb r6, 0x213(r3)
|
||||
/* 803B0C2C 003ADB8C 48 00 00 14 */ b lbl_803B0C40
|
||||
lbl_803B0C30:
|
||||
/* 803B0C30 003ADB90 3C 60 80 55 */ lis r3, lbl_80550050@ha
|
||||
/* 803B0C34 003ADB94 38 00 00 08 */ li r0, 8
|
||||
/* 803B0C38 003ADB98 38 63 00 50 */ addi r3, r3, lbl_80550050@l
|
||||
/* 803B0C3C 003ADB9C 98 03 02 13 */ stb r0, 0x213(r3)
|
||||
lbl_803B0C40:
|
||||
/* 803B0C40 003ADBA0 3C 60 80 55 */ lis r3, lbl_80550050@ha
|
||||
/* 803B0C44 003ADBA4 38 00 7D 00 */ li r0, 0x7d00
|
||||
/* 803B0C48 003ADBA8 3B A3 00 50 */ addi r29, r3, lbl_80550050@l
|
||||
/* 803B0C4C 003ADBAC 90 01 00 08 */ stw r0, 8(r1)
|
||||
/* 803B0C50 003ADBB0 7F C6 F3 78 */ mr r6, r30
|
||||
/* 803B0C54 003ADBB4 38 61 00 08 */ addi r3, r1, 8
|
||||
/* 803B0C58 003ADBB8 98 9D 02 11 */ stb r4, 0x211(r29)
|
||||
/* 803B0C5C 003ADBBC 88 9D 02 10 */ lbz r4, 0x210(r29)
|
||||
/* 803B0C60 003ADBC0 98 BD 02 12 */ stb r5, 0x212(r29)
|
||||
/* 803B0C64 003ADBC4 88 BD 02 13 */ lbz r5, 0x213(r29)
|
||||
/* 803B0C68 003ADBC8 48 00 24 39 */ bl sub_803b30a0
|
||||
/* 803B0C6C 003ADBCC 2C 03 00 00 */ cmpwi r3, 0
|
||||
/* 803B0C70 003ADBD0 40 82 00 4C */ bne lbl_803B0CBC
|
||||
/* 803B0C74 003ADBD4 8B BD 02 10 */ lbz r29, 0x210(r29)
|
||||
/* 803B0C78 003ADBD8 4B FF 95 0D */ bl sub_803aa184
|
||||
/* 803B0C7C 003ADBDC 7F E4 FB 78 */ mr r4, r31
|
||||
/* 803B0C80 003ADBE0 38 60 00 00 */ li r3, 0
|
||||
/* 803B0C84 003ADBE4 4B FF 1C 3D */ bl dataInit
|
||||
/* 803B0C88 003ADBE8 4B FE 7E 71 */ bl seqInit
|
||||
/* 803B0C8C 003ADBEC 38 00 00 00 */ li r0, 0
|
||||
/* 803B0C90 003ADBF0 7F A4 EB 78 */ mr r4, r29
|
||||
/* 803B0C94 003ADBF4 98 0D AE 80 */ stb r0, lbl_805A9A40@sda21(r13)
|
||||
/* 803B0C98 003ADBF8 38 60 7D 00 */ li r3, 0x7d00
|
||||
/* 803B0C9C 003ADBFC 4B FE AD C9 */ bl synthInit
|
||||
/* 803B0CA0 003ADC00 4B FE BB C5 */ bl streamInit
|
||||
/* 803B0CA4 003ADC04 4B FF 8D 2D */ bl vsInit
|
||||
/* 803B0CA8 003ADC08 7F C3 F3 78 */ mr r3, r30
|
||||
/* 803B0CAC 003ADC0C 4B FF FE D9 */ bl sub_803b0b84
|
||||
/* 803B0CB0 003ADC10 38 00 00 01 */ li r0, 1
|
||||
/* 803B0CB4 003ADC14 38 60 00 00 */ li r3, 0
|
||||
/* 803B0CB8 003ADC18 98 0D AE 48 */ stb r0, lbl_805A9A08@sda21(r13)
|
||||
lbl_803B0CBC:
|
||||
/* 803B0CBC 003ADC1C 80 01 00 24 */ lwz r0, 0x24(r1)
|
||||
/* 803B0CC0 003ADC20 83 E1 00 1C */ lwz r31, 0x1c(r1)
|
||||
/* 803B0CC4 003ADC24 83 C1 00 18 */ lwz r30, 0x18(r1)
|
||||
/* 803B0CC8 003ADC28 83 A1 00 14 */ lwz r29, 0x14(r1)
|
||||
/* 803B0CCC 003ADC2C 7C 08 03 A6 */ mtlr r0
|
||||
/* 803B0CD0 003ADC30 38 21 00 20 */ addi r1, r1, 0x20
|
||||
/* 803B0CD4 003ADC34 4E 80 00 20 */ blr
|
||||
|
||||
.global sndQuit
|
||||
sndQuit:
|
||||
/* 803B0CD8 003ADC38 94 21 FF F0 */ stwu r1, -0x10(r1)
|
||||
/* 803B0CDC 003ADC3C 7C 08 02 A6 */ mflr r0
|
||||
/* 803B0CE0 003ADC40 90 01 00 14 */ stw r0, 0x14(r1)
|
||||
/* 803B0CE4 003ADC44 48 00 24 75 */ bl hwExit
|
||||
/* 803B0CE8 003ADC48 4B FF 1C BD */ bl dataExit
|
||||
/* 803B0CEC 003ADC4C 4B FF FE D1 */ bl s3dExit
|
||||
/* 803B0CF0 003ADC50 4B FE B2 E9 */ bl synthExit
|
||||
/* 803B0CF4 003ADC54 38 00 00 00 */ li r0, 0
|
||||
/* 803B0CF8 003ADC58 98 0D AE 48 */ stb r0, lbl_805A9A08@sda21(r13)
|
||||
/* 803B0CFC 003ADC5C 80 01 00 14 */ lwz r0, 0x14(r1)
|
||||
/* 803B0D00 003ADC60 7C 08 03 A6 */ mtlr r0
|
||||
/* 803B0D04 003ADC64 38 21 00 10 */ addi r1, r1, 0x10
|
||||
/* 803B0D08 003ADC68 4E 80 00 20 */ blr
|
|
@ -0,0 +1,256 @@
|
|||
.include "macros.inc"
|
||||
|
||||
.section .text, "ax"
|
||||
|
||||
.global salApplyMatrix
|
||||
salApplyMatrix:
|
||||
/* 803B0D0C 003ADC6C C0 63 00 00 */ lfs f3, 0(r3)
|
||||
/* 803B0D10 003ADC70 C0 44 00 00 */ lfs f2, 0(r4)
|
||||
/* 803B0D14 003ADC74 C0 23 00 04 */ lfs f1, 4(r3)
|
||||
/* 803B0D18 003ADC78 C0 04 00 04 */ lfs f0, 4(r4)
|
||||
/* 803B0D1C 003ADC7C EC 43 00 B2 */ fmuls f2, f3, f2
|
||||
/* 803B0D20 003ADC80 C0 63 00 08 */ lfs f3, 8(r3)
|
||||
/* 803B0D24 003ADC84 EC 01 00 32 */ fmuls f0, f1, f0
|
||||
/* 803B0D28 003ADC88 C0 24 00 08 */ lfs f1, 8(r4)
|
||||
/* 803B0D2C 003ADC8C C0 83 00 24 */ lfs f4, 0x24(r3)
|
||||
/* 803B0D30 003ADC90 EC 23 00 72 */ fmuls f1, f3, f1
|
||||
/* 803B0D34 003ADC94 EC 02 00 2A */ fadds f0, f2, f0
|
||||
/* 803B0D38 003ADC98 EC 01 00 2A */ fadds f0, f1, f0
|
||||
/* 803B0D3C 003ADC9C EC 04 00 2A */ fadds f0, f4, f0
|
||||
/* 803B0D40 003ADCA0 D0 05 00 00 */ stfs f0, 0(r5)
|
||||
/* 803B0D44 003ADCA4 C0 63 00 0C */ lfs f3, 0xc(r3)
|
||||
/* 803B0D48 003ADCA8 C0 44 00 00 */ lfs f2, 0(r4)
|
||||
/* 803B0D4C 003ADCAC C0 23 00 10 */ lfs f1, 0x10(r3)
|
||||
/* 803B0D50 003ADCB0 C0 04 00 04 */ lfs f0, 4(r4)
|
||||
/* 803B0D54 003ADCB4 EC 43 00 B2 */ fmuls f2, f3, f2
|
||||
/* 803B0D58 003ADCB8 C0 63 00 14 */ lfs f3, 0x14(r3)
|
||||
/* 803B0D5C 003ADCBC EC 01 00 32 */ fmuls f0, f1, f0
|
||||
/* 803B0D60 003ADCC0 C0 24 00 08 */ lfs f1, 8(r4)
|
||||
/* 803B0D64 003ADCC4 C0 83 00 28 */ lfs f4, 0x28(r3)
|
||||
/* 803B0D68 003ADCC8 EC 23 00 72 */ fmuls f1, f3, f1
|
||||
/* 803B0D6C 003ADCCC EC 02 00 2A */ fadds f0, f2, f0
|
||||
/* 803B0D70 003ADCD0 EC 01 00 2A */ fadds f0, f1, f0
|
||||
/* 803B0D74 003ADCD4 EC 04 00 2A */ fadds f0, f4, f0
|
||||
/* 803B0D78 003ADCD8 D0 05 00 04 */ stfs f0, 4(r5)
|
||||
/* 803B0D7C 003ADCDC C0 63 00 18 */ lfs f3, 0x18(r3)
|
||||
/* 803B0D80 003ADCE0 C0 44 00 00 */ lfs f2, 0(r4)
|
||||
/* 803B0D84 003ADCE4 C0 23 00 1C */ lfs f1, 0x1c(r3)
|
||||
/* 803B0D88 003ADCE8 C0 04 00 04 */ lfs f0, 4(r4)
|
||||
/* 803B0D8C 003ADCEC EC 43 00 B2 */ fmuls f2, f3, f2
|
||||
/* 803B0D90 003ADCF0 C0 63 00 20 */ lfs f3, 0x20(r3)
|
||||
/* 803B0D94 003ADCF4 EC 01 00 32 */ fmuls f0, f1, f0
|
||||
/* 803B0D98 003ADCF8 C0 24 00 08 */ lfs f1, 8(r4)
|
||||
/* 803B0D9C 003ADCFC C0 83 00 2C */ lfs f4, 0x2c(r3)
|
||||
/* 803B0DA0 003ADD00 EC 23 00 72 */ fmuls f1, f3, f1
|
||||
/* 803B0DA4 003ADD04 EC 02 00 2A */ fadds f0, f2, f0
|
||||
/* 803B0DA8 003ADD08 EC 01 00 2A */ fadds f0, f1, f0
|
||||
/* 803B0DAC 003ADD0C EC 04 00 2A */ fadds f0, f4, f0
|
||||
/* 803B0DB0 003ADD10 D0 05 00 08 */ stfs f0, 8(r5)
|
||||
/* 803B0DB4 003ADD14 4E 80 00 20 */ blr
|
||||
|
||||
.global salNormalizeVector
|
||||
salNormalizeVector:
|
||||
/* 803B0DB8 003ADD18 94 21 FF F0 */ stwu r1, -0x10(r1)
|
||||
/* 803B0DBC 003ADD1C C0 23 00 00 */ lfs f1, 0(r3)
|
||||
/* 803B0DC0 003ADD20 C0 03 00 04 */ lfs f0, 4(r3)
|
||||
/* 803B0DC4 003ADD24 EC 41 00 72 */ fmuls f2, f1, f1
|
||||
/* 803B0DC8 003ADD28 C0 63 00 08 */ lfs f3, 8(r3)
|
||||
/* 803B0DCC 003ADD2C EC 20 00 32 */ fmuls f1, f0, f0
|
||||
/* 803B0DD0 003ADD30 C0 02 D6 58 */ lfs f0, lbl_805AF378@sda21(r2)
|
||||
/* 803B0DD4 003ADD34 EC 63 00 F2 */ fmuls f3, f3, f3
|
||||
/* 803B0DD8 003ADD38 EC 22 08 2A */ fadds f1, f2, f1
|
||||
/* 803B0DDC 003ADD3C EC 23 08 2A */ fadds f1, f3, f1
|
||||
/* 803B0DE0 003ADD40 FC 01 00 40 */ fcmpo cr0, f1, f0
|
||||
/* 803B0DE4 003ADD44 40 81 00 5C */ ble lbl_803B0E40
|
||||
/* 803B0DE8 003ADD48 FC 40 08 34 */ frsqrte f2, f1
|
||||
/* 803B0DEC 003ADD4C C8 82 D6 60 */ lfd f4, lbl_805AF380@sda21(r2)
|
||||
/* 803B0DF0 003ADD50 C8 62 D6 68 */ lfd f3, lbl_805AF388@sda21(r2)
|
||||
/* 803B0DF4 003ADD54 FC 02 00 B2 */ fmul f0, f2, f2
|
||||
/* 803B0DF8 003ADD58 FC 44 00 B2 */ fmul f2, f4, f2
|
||||
/* 803B0DFC 003ADD5C FC 01 00 32 */ fmul f0, f1, f0
|
||||
/* 803B0E00 003ADD60 FC 03 00 28 */ fsub f0, f3, f0
|
||||
/* 803B0E04 003ADD64 FC 42 00 32 */ fmul f2, f2, f0
|
||||
/* 803B0E08 003ADD68 FC 02 00 B2 */ fmul f0, f2, f2
|
||||
/* 803B0E0C 003ADD6C FC 44 00 B2 */ fmul f2, f4, f2
|
||||
/* 803B0E10 003ADD70 FC 01 00 32 */ fmul f0, f1, f0
|
||||
/* 803B0E14 003ADD74 FC 03 00 28 */ fsub f0, f3, f0
|
||||
/* 803B0E18 003ADD78 FC 42 00 32 */ fmul f2, f2, f0
|
||||
/* 803B0E1C 003ADD7C FC 02 00 B2 */ fmul f0, f2, f2
|
||||
/* 803B0E20 003ADD80 FC 44 00 B2 */ fmul f2, f4, f2
|
||||
/* 803B0E24 003ADD84 FC 01 00 32 */ fmul f0, f1, f0
|
||||
/* 803B0E28 003ADD88 FC 03 00 28 */ fsub f0, f3, f0
|
||||
/* 803B0E2C 003ADD8C FC 02 00 32 */ fmul f0, f2, f0
|
||||
/* 803B0E30 003ADD90 FC 01 00 32 */ fmul f0, f1, f0
|
||||
/* 803B0E34 003ADD94 FC 00 00 18 */ frsp f0, f0
|
||||
/* 803B0E38 003ADD98 D0 01 00 08 */ stfs f0, 8(r1)
|
||||
/* 803B0E3C 003ADD9C C0 21 00 08 */ lfs f1, 8(r1)
|
||||
lbl_803B0E40:
|
||||
/* 803B0E40 003ADDA0 C0 03 00 00 */ lfs f0, 0(r3)
|
||||
/* 803B0E44 003ADDA4 EC 00 08 24 */ fdivs f0, f0, f1
|
||||
/* 803B0E48 003ADDA8 D0 03 00 00 */ stfs f0, 0(r3)
|
||||
/* 803B0E4C 003ADDAC C0 03 00 04 */ lfs f0, 4(r3)
|
||||
/* 803B0E50 003ADDB0 EC 00 08 24 */ fdivs f0, f0, f1
|
||||
/* 803B0E54 003ADDB4 D0 03 00 04 */ stfs f0, 4(r3)
|
||||
/* 803B0E58 003ADDB8 C0 03 00 08 */ lfs f0, 8(r3)
|
||||
/* 803B0E5C 003ADDBC EC 00 08 24 */ fdivs f0, f0, f1
|
||||
/* 803B0E60 003ADDC0 D0 03 00 08 */ stfs f0, 8(r3)
|
||||
/* 803B0E64 003ADDC4 38 21 00 10 */ addi r1, r1, 0x10
|
||||
/* 803B0E68 003ADDC8 4E 80 00 20 */ blr
|
||||
|
||||
.global salCrossProduct
|
||||
salCrossProduct:
|
||||
/* 803B0E6C 003ADDCC C0 64 00 04 */ lfs f3, 4(r4)
|
||||
/* 803B0E70 003ADDD0 C0 45 00 08 */ lfs f2, 8(r5)
|
||||
/* 803B0E74 003ADDD4 C0 24 00 08 */ lfs f1, 8(r4)
|
||||
/* 803B0E78 003ADDD8 C0 05 00 04 */ lfs f0, 4(r5)
|
||||
/* 803B0E7C 003ADDDC EC 43 00 B2 */ fmuls f2, f3, f2
|
||||
/* 803B0E80 003ADDE0 EC 01 00 32 */ fmuls f0, f1, f0
|
||||
/* 803B0E84 003ADDE4 EC 02 00 28 */ fsubs f0, f2, f0
|
||||
/* 803B0E88 003ADDE8 D0 03 00 00 */ stfs f0, 0(r3)
|
||||
/* 803B0E8C 003ADDEC C0 64 00 08 */ lfs f3, 8(r4)
|
||||
/* 803B0E90 003ADDF0 C0 45 00 00 */ lfs f2, 0(r5)
|
||||
/* 803B0E94 003ADDF4 C0 24 00 00 */ lfs f1, 0(r4)
|
||||
/* 803B0E98 003ADDF8 C0 05 00 08 */ lfs f0, 8(r5)
|
||||
/* 803B0E9C 003ADDFC EC 43 00 B2 */ fmuls f2, f3, f2
|
||||
/* 803B0EA0 003ADE00 EC 01 00 32 */ fmuls f0, f1, f0
|
||||
/* 803B0EA4 003ADE04 EC 02 00 28 */ fsubs f0, f2, f0
|
||||
/* 803B0EA8 003ADE08 D0 03 00 04 */ stfs f0, 4(r3)
|
||||
/* 803B0EAC 003ADE0C C0 64 00 00 */ lfs f3, 0(r4)
|
||||
/* 803B0EB0 003ADE10 C0 45 00 04 */ lfs f2, 4(r5)
|
||||
/* 803B0EB4 003ADE14 C0 24 00 04 */ lfs f1, 4(r4)
|
||||
/* 803B0EB8 003ADE18 C0 05 00 00 */ lfs f0, 0(r5)
|
||||
/* 803B0EBC 003ADE1C EC 43 00 B2 */ fmuls f2, f3, f2
|
||||
/* 803B0EC0 003ADE20 EC 01 00 32 */ fmuls f0, f1, f0
|
||||
/* 803B0EC4 003ADE24 EC 02 00 28 */ fsubs f0, f2, f0
|
||||
/* 803B0EC8 003ADE28 D0 03 00 08 */ stfs f0, 8(r3)
|
||||
/* 803B0ECC 003ADE2C 4E 80 00 20 */ blr
|
||||
|
||||
.global salInvertMatrix
|
||||
salInvertMatrix:
|
||||
/* 803B0ED0 003ADE30 C0 A4 00 20 */ lfs f5, 0x20(r4)
|
||||
/* 803B0ED4 003ADE34 C1 44 00 0C */ lfs f10, 0xc(r4)
|
||||
/* 803B0ED8 003ADE38 C0 04 00 14 */ lfs f0, 0x14(r4)
|
||||
/* 803B0EDC 003ADE3C C0 C4 00 1C */ lfs f6, 0x1c(r4)
|
||||
/* 803B0EE0 003ADE40 EC 6A 01 72 */ fmuls f3, f10, f5
|
||||
/* 803B0EE4 003ADE44 C1 24 00 18 */ lfs f9, 0x18(r4)
|
||||
/* 803B0EE8 003ADE48 C1 04 00 10 */ lfs f8, 0x10(r4)
|
||||
/* 803B0EEC 003ADE4C EC 86 00 32 */ fmuls f4, f6, f0
|
||||
/* 803B0EF0 003ADE50 EC 49 00 32 */ fmuls f2, f9, f0
|
||||
/* 803B0EF4 003ADE54 C0 24 00 00 */ lfs f1, 0(r4)
|
||||
/* 803B0EF8 003ADE58 EC E8 01 72 */ fmuls f7, f8, f5
|
||||
/* 803B0EFC 003ADE5C C0 04 00 04 */ lfs f0, 4(r4)
|
||||
/* 803B0F00 003ADE60 EC AA 01 B2 */ fmuls f5, f10, f6
|
||||
/* 803B0F04 003ADE64 EC C3 10 28 */ fsubs f6, f3, f2
|
||||
/* 803B0F08 003ADE68 EC E7 20 28 */ fsubs f7, f7, f4
|
||||
/* 803B0F0C 003ADE6C C0 44 00 08 */ lfs f2, 8(r4)
|
||||
/* 803B0F10 003ADE70 EC 89 02 32 */ fmuls f4, f9, f8
|
||||
/* 803B0F14 003ADE74 C0 62 D6 70 */ lfs f3, lbl_805AF390@sda21(r2)
|
||||
/* 803B0F18 003ADE78 FC C0 30 50 */ fneg f6, f6
|
||||
/* 803B0F1C 003ADE7C EC 21 01 F2 */ fmuls f1, f1, f7
|
||||
/* 803B0F20 003ADE80 EC 85 20 28 */ fsubs f4, f5, f4
|
||||
/* 803B0F24 003ADE84 EC 00 01 B2 */ fmuls f0, f0, f6
|
||||
/* 803B0F28 003ADE88 EC 42 01 32 */ fmuls f2, f2, f4
|
||||
/* 803B0F2C 003ADE8C EC 01 00 2A */ fadds f0, f1, f0
|
||||
/* 803B0F30 003ADE90 EC 02 00 2A */ fadds f0, f2, f0
|
||||
/* 803B0F34 003ADE94 EC 23 00 24 */ fdivs f1, f3, f0
|
||||
/* 803B0F38 003ADE98 EC 01 01 F2 */ fmuls f0, f1, f7
|
||||
/* 803B0F3C 003ADE9C EC 61 01 B2 */ fmuls f3, f1, f6
|
||||
/* 803B0F40 003ADEA0 EC 41 01 32 */ fmuls f2, f1, f4
|
||||
/* 803B0F44 003ADEA4 D0 03 00 00 */ stfs f0, 0(r3)
|
||||
/* 803B0F48 003ADEA8 FC 00 08 50 */ fneg f0, f1
|
||||
/* 803B0F4C 003ADEAC D0 63 00 0C */ stfs f3, 0xc(r3)
|
||||
/* 803B0F50 003ADEB0 D0 43 00 18 */ stfs f2, 0x18(r3)
|
||||
/* 803B0F54 003ADEB4 C0 A4 00 04 */ lfs f5, 4(r4)
|
||||
/* 803B0F58 003ADEB8 C0 84 00 20 */ lfs f4, 0x20(r4)
|
||||
/* 803B0F5C 003ADEBC C0 64 00 1C */ lfs f3, 0x1c(r4)
|
||||
/* 803B0F60 003ADEC0 C0 44 00 08 */ lfs f2, 8(r4)
|
||||
/* 803B0F64 003ADEC4 EC 85 01 32 */ fmuls f4, f5, f4
|
||||
/* 803B0F68 003ADEC8 EC 43 00 B2 */ fmuls f2, f3, f2
|
||||
/* 803B0F6C 003ADECC EC 44 10 28 */ fsubs f2, f4, f2
|
||||
/* 803B0F70 003ADED0 EC 40 00 B2 */ fmuls f2, f0, f2
|
||||
/* 803B0F74 003ADED4 D0 43 00 04 */ stfs f2, 4(r3)
|
||||
/* 803B0F78 003ADED8 C0 A4 00 00 */ lfs f5, 0(r4)
|
||||
/* 803B0F7C 003ADEDC C0 84 00 20 */ lfs f4, 0x20(r4)
|
||||
/* 803B0F80 003ADEE0 C0 64 00 18 */ lfs f3, 0x18(r4)
|
||||
/* 803B0F84 003ADEE4 C0 44 00 08 */ lfs f2, 8(r4)
|
||||
/* 803B0F88 003ADEE8 EC 85 01 32 */ fmuls f4, f5, f4
|
||||
/* 803B0F8C 003ADEEC EC 43 00 B2 */ fmuls f2, f3, f2
|
||||
/* 803B0F90 003ADEF0 EC 44 10 28 */ fsubs f2, f4, f2
|
||||
/* 803B0F94 003ADEF4 EC 41 00 B2 */ fmuls f2, f1, f2
|
||||
/* 803B0F98 003ADEF8 D0 43 00 10 */ stfs f2, 0x10(r3)
|
||||
/* 803B0F9C 003ADEFC C0 A4 00 00 */ lfs f5, 0(r4)
|
||||
/* 803B0FA0 003ADF00 C0 84 00 1C */ lfs f4, 0x1c(r4)
|
||||
/* 803B0FA4 003ADF04 C0 64 00 18 */ lfs f3, 0x18(r4)
|
||||
/* 803B0FA8 003ADF08 C0 44 00 04 */ lfs f2, 4(r4)
|
||||
/* 803B0FAC 003ADF0C EC 85 01 32 */ fmuls f4, f5, f4
|
||||
/* 803B0FB0 003ADF10 EC 43 00 B2 */ fmuls f2, f3, f2
|
||||
/* 803B0FB4 003ADF14 EC 44 10 28 */ fsubs f2, f4, f2
|
||||
/* 803B0FB8 003ADF18 EC 40 00 B2 */ fmuls f2, f0, f2
|
||||
/* 803B0FBC 003ADF1C D0 43 00 1C */ stfs f2, 0x1c(r3)
|
||||
/* 803B0FC0 003ADF20 C0 A4 00 04 */ lfs f5, 4(r4)
|
||||
/* 803B0FC4 003ADF24 C0 84 00 14 */ lfs f4, 0x14(r4)
|
||||
/* 803B0FC8 003ADF28 C0 64 00 10 */ lfs f3, 0x10(r4)
|
||||
/* 803B0FCC 003ADF2C C0 44 00 08 */ lfs f2, 8(r4)
|
||||
/* 803B0FD0 003ADF30 EC 85 01 32 */ fmuls f4, f5, f4
|
||||
/* 803B0FD4 003ADF34 EC 43 00 B2 */ fmuls f2, f3, f2
|
||||
/* 803B0FD8 003ADF38 EC 44 10 28 */ fsubs f2, f4, f2
|
||||
/* 803B0FDC 003ADF3C EC 41 00 B2 */ fmuls f2, f1, f2
|
||||
/* 803B0FE0 003ADF40 D0 43 00 08 */ stfs f2, 8(r3)
|
||||
/* 803B0FE4 003ADF44 C0 A4 00 00 */ lfs f5, 0(r4)
|
||||
/* 803B0FE8 003ADF48 C0 84 00 14 */ lfs f4, 0x14(r4)
|
||||
/* 803B0FEC 003ADF4C C0 64 00 0C */ lfs f3, 0xc(r4)
|
||||
/* 803B0FF0 003ADF50 C0 44 00 08 */ lfs f2, 8(r4)
|
||||
/* 803B0FF4 003ADF54 EC 85 01 32 */ fmuls f4, f5, f4
|
||||
/* 803B0FF8 003ADF58 EC 43 00 B2 */ fmuls f2, f3, f2
|
||||
/* 803B0FFC 003ADF5C EC 44 10 28 */ fsubs f2, f4, f2
|
||||
/* 803B1000 003ADF60 EC 00 00 B2 */ fmuls f0, f0, f2
|
||||
/* 803B1004 003ADF64 D0 03 00 14 */ stfs f0, 0x14(r3)
|
||||
/* 803B1008 003ADF68 C0 84 00 00 */ lfs f4, 0(r4)
|
||||
/* 803B100C 003ADF6C C0 64 00 10 */ lfs f3, 0x10(r4)
|
||||
/* 803B1010 003ADF70 C0 44 00 0C */ lfs f2, 0xc(r4)
|
||||
/* 803B1014 003ADF74 C0 04 00 04 */ lfs f0, 4(r4)
|
||||
/* 803B1018 003ADF78 EC 64 00 F2 */ fmuls f3, f4, f3
|
||||
/* 803B101C 003ADF7C EC 02 00 32 */ fmuls f0, f2, f0
|
||||
/* 803B1020 003ADF80 EC 03 00 28 */ fsubs f0, f3, f0
|
||||
/* 803B1024 003ADF84 EC 01 00 32 */ fmuls f0, f1, f0
|
||||
/* 803B1028 003ADF88 D0 03 00 20 */ stfs f0, 0x20(r3)
|
||||
/* 803B102C 003ADF8C C0 04 00 24 */ lfs f0, 0x24(r4)
|
||||
/* 803B1030 003ADF90 C0 83 00 00 */ lfs f4, 0(r3)
|
||||
/* 803B1034 003ADF94 FC A0 00 50 */ fneg f5, f0
|
||||
/* 803B1038 003ADF98 C0 64 00 28 */ lfs f3, 0x28(r4)
|
||||
/* 803B103C 003ADF9C C0 43 00 04 */ lfs f2, 4(r3)
|
||||
/* 803B1040 003ADFA0 C0 24 00 2C */ lfs f1, 0x2c(r4)
|
||||
/* 803B1044 003ADFA4 C0 03 00 08 */ lfs f0, 8(r3)
|
||||
/* 803B1048 003ADFA8 EC 85 01 32 */ fmuls f4, f5, f4
|
||||
/* 803B104C 003ADFAC EC 43 00 B2 */ fmuls f2, f3, f2
|
||||
/* 803B1050 003ADFB0 EC 01 00 32 */ fmuls f0, f1, f0
|
||||
/* 803B1054 003ADFB4 EC 24 10 28 */ fsubs f1, f4, f2
|
||||
/* 803B1058 003ADFB8 EC 01 00 28 */ fsubs f0, f1, f0
|
||||
/* 803B105C 003ADFBC D0 03 00 24 */ stfs f0, 0x24(r3)
|
||||
/* 803B1060 003ADFC0 C0 04 00 24 */ lfs f0, 0x24(r4)
|
||||
/* 803B1064 003ADFC4 C0 83 00 0C */ lfs f4, 0xc(r3)
|
||||
/* 803B1068 003ADFC8 FC A0 00 50 */ fneg f5, f0
|
||||
/* 803B106C 003ADFCC C0 64 00 28 */ lfs f3, 0x28(r4)
|
||||
/* 803B1070 003ADFD0 C0 43 00 10 */ lfs f2, 0x10(r3)
|
||||
/* 803B1074 003ADFD4 C0 24 00 2C */ lfs f1, 0x2c(r4)
|
||||
/* 803B1078 003ADFD8 C0 03 00 14 */ lfs f0, 0x14(r3)
|
||||
/* 803B107C 003ADFDC EC 85 01 32 */ fmuls f4, f5, f4
|
||||
/* 803B1080 003ADFE0 EC 43 00 B2 */ fmuls f2, f3, f2
|
||||
/* 803B1084 003ADFE4 EC 01 00 32 */ fmuls f0, f1, f0
|
||||
/* 803B1088 003ADFE8 EC 24 10 28 */ fsubs f1, f4, f2
|
||||
/* 803B108C 003ADFEC EC 01 00 28 */ fsubs f0, f1, f0
|
||||
/* 803B1090 003ADFF0 D0 03 00 28 */ stfs f0, 0x28(r3)
|
||||
/* 803B1094 003ADFF4 C0 24 00 24 */ lfs f1, 0x24(r4)
|
||||
/* 803B1098 003ADFF8 C0 03 00 18 */ lfs f0, 0x18(r3)
|
||||
/* 803B109C 003ADFFC FC 80 08 50 */ fneg f4, f1
|
||||
/* 803B10A0 003AE000 C0 64 00 28 */ lfs f3, 0x28(r4)
|
||||
/* 803B10A4 003AE004 C0 43 00 1C */ lfs f2, 0x1c(r3)
|
||||
/* 803B10A8 003AE008 C0 24 00 2C */ lfs f1, 0x2c(r4)
|
||||
/* 803B10AC 003AE00C EC 84 00 32 */ fmuls f4, f4, f0
|
||||
/* 803B10B0 003AE010 C0 03 00 20 */ lfs f0, 0x20(r3)
|
||||
/* 803B10B4 003AE014 EC 43 00 B2 */ fmuls f2, f3, f2
|
||||
/* 803B10B8 003AE018 EC 01 00 32 */ fmuls f0, f1, f0
|
||||
/* 803B10BC 003AE01C EC 24 10 28 */ fsubs f1, f4, f2
|
||||
/* 803B10C0 003AE020 EC 01 00 28 */ fsubs f0, f1, f0
|
||||
/* 803B10C4 003AE024 D0 03 00 2C */ stfs f0, 0x2c(r3)
|
||||
/* 803B10C8 003AE028 4E 80 00 20 */ blr
|
File diff suppressed because it is too large
Load Diff
|
@ -0,0 +1,137 @@
|
|||
.include "macros.inc"
|
||||
|
||||
.section .text, "ax"
|
||||
|
||||
.global sndRand
|
||||
sndRand:
|
||||
/* 803B2DA0 003AFD00 3C 60 A8 35 */ lis r3, 0xA8351D63@ha
|
||||
/* 803B2DA4 003AFD04 80 8D A0 10 */ lwz r4, lbl_805A8BD0@sda21(r13)
|
||||
/* 803B2DA8 003AFD08 38 03 1D 63 */ addi r0, r3, 0xA8351D63@l
|
||||
/* 803B2DAC 003AFD0C 7C 04 01 D6 */ mullw r0, r4, r0
|
||||
/* 803B2DB0 003AFD10 90 0D A0 10 */ stw r0, lbl_805A8BD0@sda21(r13)
|
||||
/* 803B2DB4 003AFD14 54 03 D4 3E */ rlwinm r3, r0, 0x1a, 0x10, 0x1f
|
||||
/* 803B2DB8 003AFD18 4E 80 00 20 */ blr
|
||||
|
||||
.global sndSin
|
||||
sndSin:
|
||||
/* 803B2DBC 003AFD1C 54 60 05 3E */ clrlwi r0, r3, 0x14
|
||||
/* 803B2DC0 003AFD20 28 00 04 00 */ cmplwi r0, 0x400
|
||||
/* 803B2DC4 003AFD24 40 80 00 18 */ bge lbl_803B2DDC
|
||||
/* 803B2DC8 003AFD28 3C 60 80 3F */ lis r3, lbl_803F4278@ha
|
||||
/* 803B2DCC 003AFD2C 54 00 0B FC */ rlwinm r0, r0, 1, 0xf, 0x1e
|
||||
/* 803B2DD0 003AFD30 38 63 42 78 */ addi r3, r3, lbl_803F4278@l
|
||||
/* 803B2DD4 003AFD34 7C 63 02 AE */ lhax r3, r3, r0
|
||||
/* 803B2DD8 003AFD38 4E 80 00 20 */ blr
|
||||
lbl_803B2DDC:
|
||||
/* 803B2DDC 003AFD3C 28 00 08 00 */ cmplwi r0, 0x800
|
||||
/* 803B2DE0 003AFD40 40 80 00 20 */ bge lbl_803B2E00
|
||||
/* 803B2DE4 003AFD44 54 00 05 BE */ clrlwi r0, r0, 0x16
|
||||
/* 803B2DE8 003AFD48 3C 60 80 3F */ lis r3, lbl_803F4278@ha
|
||||
/* 803B2DEC 003AFD4C 20 00 03 FF */ subfic r0, r0, 0x3ff
|
||||
/* 803B2DF0 003AFD50 54 00 08 3C */ slwi r0, r0, 1
|
||||
/* 803B2DF4 003AFD54 38 63 42 78 */ addi r3, r3, lbl_803F4278@l
|
||||
/* 803B2DF8 003AFD58 7C 63 02 AE */ lhax r3, r3, r0
|
||||
/* 803B2DFC 003AFD5C 4E 80 00 20 */ blr
|
||||
lbl_803B2E00:
|
||||
/* 803B2E00 003AFD60 28 00 0C 00 */ cmplwi r0, 0xc00
|
||||
/* 803B2E04 003AFD64 40 80 00 20 */ bge lbl_803B2E24
|
||||
/* 803B2E08 003AFD68 3C 60 80 3F */ lis r3, lbl_803F4278@ha
|
||||
/* 803B2E0C 003AFD6C 54 00 0D 7C */ rlwinm r0, r0, 1, 0x15, 0x1e
|
||||
/* 803B2E10 003AFD70 38 63 42 78 */ addi r3, r3, lbl_803F4278@l
|
||||
/* 803B2E14 003AFD74 7C 03 02 AE */ lhax r0, r3, r0
|
||||
/* 803B2E18 003AFD78 7C 00 00 D0 */ neg r0, r0
|
||||
/* 803B2E1C 003AFD7C 7C 03 07 34 */ extsh r3, r0
|
||||
/* 803B2E20 003AFD80 4E 80 00 20 */ blr
|
||||
lbl_803B2E24:
|
||||
/* 803B2E24 003AFD84 54 00 05 BE */ clrlwi r0, r0, 0x16
|
||||
/* 803B2E28 003AFD88 3C 60 80 3F */ lis r3, lbl_803F4278@ha
|
||||
/* 803B2E2C 003AFD8C 20 00 03 FF */ subfic r0, r0, 0x3ff
|
||||
/* 803B2E30 003AFD90 54 00 08 3C */ slwi r0, r0, 1
|
||||
/* 803B2E34 003AFD94 38 63 42 78 */ addi r3, r3, lbl_803F4278@l
|
||||
/* 803B2E38 003AFD98 7C 03 02 AE */ lhax r0, r3, r0
|
||||
/* 803B2E3C 003AFD9C 7C 00 00 D0 */ neg r0, r0
|
||||
/* 803B2E40 003AFDA0 7C 03 07 34 */ extsh r3, r0
|
||||
/* 803B2E44 003AFDA4 4E 80 00 20 */ blr
|
||||
|
||||
.global sndBSearch
|
||||
sndBSearch:
|
||||
/* 803B2E48 003AFDA8 94 21 FF D0 */ stwu r1, -0x30(r1)
|
||||
/* 803B2E4C 003AFDAC 7C 08 02 A6 */ mflr r0
|
||||
/* 803B2E50 003AFDB0 90 01 00 34 */ stw r0, 0x34(r1)
|
||||
/* 803B2E54 003AFDB4 39 61 00 30 */ addi r11, r1, 0x30
|
||||
/* 803B2E58 003AFDB8 4B FD 6C 19 */ bl func_80389A70
|
||||
/* 803B2E5C 003AFDBC 2C 05 00 00 */ cmpwi r5, 0
|
||||
/* 803B2E60 003AFDC0 7C 78 1B 78 */ mr r24, r3
|
||||
/* 803B2E64 003AFDC4 7C 99 23 78 */ mr r25, r4
|
||||
/* 803B2E68 003AFDC8 7C DA 33 78 */ mr r26, r6
|
||||
/* 803B2E6C 003AFDCC 7C FB 3B 78 */ mr r27, r7
|
||||
/* 803B2E70 003AFDD0 41 82 00 60 */ beq lbl_803B2ED0
|
||||
/* 803B2E74 003AFDD4 3B E0 00 01 */ li r31, 1
|
||||
/* 803B2E78 003AFDD8 7C BE 2B 78 */ mr r30, r5
|
||||
lbl_803B2E7C:
|
||||
/* 803B2E7C 003AFDDC 7C 1F F2 14 */ add r0, r31, r30
|
||||
/* 803B2E80 003AFDE0 7F 6C DB 78 */ mr r12, r27
|
||||
/* 803B2E84 003AFDE4 7C 1D 0E 70 */ srawi r29, r0, 1
|
||||
/* 803B2E88 003AFDE8 7F 03 C3 78 */ mr r3, r24
|
||||
/* 803B2E8C 003AFDEC 38 1D FF FF */ addi r0, r29, -1
|
||||
/* 803B2E90 003AFDF0 7C 1A 01 D6 */ mullw r0, r26, r0
|
||||
/* 803B2E94 003AFDF4 7F 99 02 14 */ add r28, r25, r0
|
||||
/* 803B2E98 003AFDF8 7F 84 E3 78 */ mr r4, r28
|
||||
/* 803B2E9C 003AFDFC 7D 89 03 A6 */ mtctr r12
|
||||
/* 803B2EA0 003AFE00 4E 80 04 21 */ bctrl
|
||||
/* 803B2EA4 003AFE04 2C 03 00 00 */ cmpwi r3, 0
|
||||
/* 803B2EA8 003AFE08 40 82 00 0C */ bne lbl_803B2EB4
|
||||
/* 803B2EAC 003AFE0C 7F 83 E3 78 */ mr r3, r28
|
||||
/* 803B2EB0 003AFE10 48 00 00 24 */ b lbl_803B2ED4
|
||||
lbl_803B2EB4:
|
||||
/* 803B2EB4 003AFE14 40 80 00 08 */ bge lbl_803B2EBC
|
||||
/* 803B2EB8 003AFE18 3B DD FF FF */ addi r30, r29, -1
|
||||
lbl_803B2EBC:
|
||||
/* 803B2EBC 003AFE1C 54 60 0F FF */ rlwinm. r0, r3, 1, 0x1f, 0x1f
|
||||
/* 803B2EC0 003AFE20 40 82 00 08 */ bne lbl_803B2EC8
|
||||
/* 803B2EC4 003AFE24 3B FD 00 01 */ addi r31, r29, 1
|
||||
lbl_803B2EC8:
|
||||
/* 803B2EC8 003AFE28 7C 1F F0 00 */ cmpw r31, r30
|
||||
/* 803B2ECC 003AFE2C 40 81 FF B0 */ ble lbl_803B2E7C
|
||||
lbl_803B2ED0:
|
||||
/* 803B2ED0 003AFE30 38 60 00 00 */ li r3, 0
|
||||
lbl_803B2ED4:
|
||||
/* 803B2ED4 003AFE34 39 61 00 30 */ addi r11, r1, 0x30
|
||||
/* 803B2ED8 003AFE38 4B FD 6B E5 */ bl _restgpr_24
|
||||
/* 803B2EDC 003AFE3C 80 01 00 34 */ lwz r0, 0x34(r1)
|
||||
/* 803B2EE0 003AFE40 7C 08 03 A6 */ mtlr r0
|
||||
/* 803B2EE4 003AFE44 38 21 00 30 */ addi r1, r1, 0x30
|
||||
/* 803B2EE8 003AFE48 4E 80 00 20 */ blr
|
||||
|
||||
.global dGeomDisable
|
||||
dGeomDisable:
|
||||
/* 803B2EEC 003AFE4C 80 03 00 00 */ lwz r0, 0(r3)
|
||||
/* 803B2EF0 003AFE50 54 00 40 2E */ slwi r0, r0, 8
|
||||
/* 803B2EF4 003AFE54 90 03 00 00 */ stw r0, 0(r3)
|
||||
/* 803B2EF8 003AFE58 4E 80 00 20 */ blr
|
||||
|
||||
.global sndConvertTicks
|
||||
sndConvertTicks:
|
||||
/* 803B2EFC 003AFE5C 94 21 FF F0 */ stwu r1, -0x10(r1)
|
||||
/* 803B2F00 003AFE60 7C 08 02 A6 */ mflr r0
|
||||
/* 803B2F04 003AFE64 90 01 00 14 */ stw r0, 0x14(r1)
|
||||
/* 803B2F08 003AFE68 93 E1 00 0C */ stw r31, 0xc(r1)
|
||||
/* 803B2F0C 003AFE6C 7C 7F 1B 78 */ mr r31, r3
|
||||
/* 803B2F10 003AFE70 7C 83 23 78 */ mr r3, r4
|
||||
/* 803B2F14 003AFE74 4B FE 5D D1 */ bl synthGetTicksPerSecond
|
||||
/* 803B2F18 003AFE78 80 1F 00 00 */ lwz r0, 0(r31)
|
||||
/* 803B2F1C 003AFE7C 54 00 80 1E */ slwi r0, r0, 0x10
|
||||
/* 803B2F20 003AFE80 7C 00 1B 96 */ divwu r0, r0, r3
|
||||
/* 803B2F24 003AFE84 1C 00 03 E8 */ mulli r0, r0, 0x3e8
|
||||
/* 803B2F28 003AFE88 54 00 D9 7E */ srwi r0, r0, 5
|
||||
/* 803B2F2C 003AFE8C 90 1F 00 00 */ stw r0, 0(r31)
|
||||
/* 803B2F30 003AFE90 83 E1 00 0C */ lwz r31, 0xc(r1)
|
||||
/* 803B2F34 003AFE94 80 01 00 14 */ lwz r0, 0x14(r1)
|
||||
/* 803B2F38 003AFE98 7C 08 03 A6 */ mtlr r0
|
||||
/* 803B2F3C 003AFE9C 38 21 00 10 */ addi r1, r1, 0x10
|
||||
/* 803B2F40 003AFEA0 4E 80 00 20 */ blr
|
||||
|
||||
.global sub_803b2f44
|
||||
sub_803b2f44:
|
||||
/* 803B2F44 003AFEA4 54 63 C2 3E */ srwi r3, r3, 8
|
||||
/* 803B2F48 003AFEA8 4E 80 00 20 */ blr
|
|
@ -0,0 +1,498 @@
|
|||
.include "macros.inc"
|
||||
|
||||
.section .text, "ax"
|
||||
|
||||
.global sndFXCtrl
|
||||
sndFXCtrl:
|
||||
/* 8039C190 003990F0 94 21 FF E0 */ stwu r1, -0x20(r1)
|
||||
/* 8039C194 003990F4 7C 08 02 A6 */ mflr r0
|
||||
/* 8039C198 003990F8 90 01 00 24 */ stw r0, 0x24(r1)
|
||||
/* 8039C19C 003990FC 93 E1 00 1C */ stw r31, 0x1c(r1)
|
||||
/* 8039C1A0 00399100 7C BF 2B 78 */ mr r31, r5
|
||||
/* 8039C1A4 00399104 93 C1 00 18 */ stw r30, 0x18(r1)
|
||||
/* 8039C1A8 00399108 7C 9E 23 78 */ mr r30, r4
|
||||
/* 8039C1AC 0039910C 93 A1 00 14 */ stw r29, 0x14(r1)
|
||||
/* 8039C1B0 00399110 7C 7D 1B 78 */ mr r29, r3
|
||||
/* 8039C1B4 00399114 48 01 8F 09 */ bl hwDisableIrq
|
||||
/* 8039C1B8 00399118 7F A3 EB 78 */ mr r3, r29
|
||||
/* 8039C1BC 0039911C 7F C4 F3 78 */ mr r4, r30
|
||||
/* 8039C1C0 00399120 7F E5 FB 78 */ mr r5, r31
|
||||
/* 8039C1C4 00399124 4B FF EF 51 */ bl synthFXSetCtrl
|
||||
/* 8039C1C8 00399128 7C 7F 1B 78 */ mr r31, r3
|
||||
/* 8039C1CC 0039912C 48 01 8E B9 */ bl hwEnableIrq
|
||||
/* 8039C1D0 00399130 80 01 00 24 */ lwz r0, 0x24(r1)
|
||||
/* 8039C1D4 00399134 7F E3 FB 78 */ mr r3, r31
|
||||
/* 8039C1D8 00399138 83 E1 00 1C */ lwz r31, 0x1c(r1)
|
||||
/* 8039C1DC 0039913C 83 C1 00 18 */ lwz r30, 0x18(r1)
|
||||
/* 8039C1E0 00399140 83 A1 00 14 */ lwz r29, 0x14(r1)
|
||||
/* 8039C1E4 00399144 7C 08 03 A6 */ mtlr r0
|
||||
/* 8039C1E8 00399148 38 21 00 20 */ addi r1, r1, 0x20
|
||||
/* 8039C1EC 0039914C 4E 80 00 20 */ blr
|
||||
|
||||
.global sndFXCtrl14
|
||||
sndFXCtrl14:
|
||||
/* 8039C1F0 00399150 94 21 FF E0 */ stwu r1, -0x20(r1)
|
||||
/* 8039C1F4 00399154 7C 08 02 A6 */ mflr r0
|
||||
/* 8039C1F8 00399158 90 01 00 24 */ stw r0, 0x24(r1)
|
||||
/* 8039C1FC 0039915C 93 E1 00 1C */ stw r31, 0x1c(r1)
|
||||
/* 8039C200 00399160 7C BF 2B 78 */ mr r31, r5
|
||||
/* 8039C204 00399164 93 C1 00 18 */ stw r30, 0x18(r1)
|
||||
/* 8039C208 00399168 7C 9E 23 78 */ mr r30, r4
|
||||
/* 8039C20C 0039916C 93 A1 00 14 */ stw r29, 0x14(r1)
|
||||
/* 8039C210 00399170 7C 7D 1B 78 */ mr r29, r3
|
||||
/* 8039C214 00399174 48 01 8E A9 */ bl hwDisableIrq
|
||||
/* 8039C218 00399178 7F A3 EB 78 */ mr r3, r29
|
||||
/* 8039C21C 0039917C 7F C4 F3 78 */ mr r4, r30
|
||||
/* 8039C220 00399180 7F E5 FB 78 */ mr r5, r31
|
||||
/* 8039C224 00399184 4B FF EF D5 */ bl synthFXSetCtrl14
|
||||
/* 8039C228 00399188 7C 7F 1B 78 */ mr r31, r3
|
||||
/* 8039C22C 0039918C 48 01 8E 59 */ bl hwEnableIrq
|
||||
/* 8039C230 00399190 80 01 00 24 */ lwz r0, 0x24(r1)
|
||||
/* 8039C234 00399194 7F E3 FB 78 */ mr r3, r31
|
||||
/* 8039C238 00399198 83 E1 00 1C */ lwz r31, 0x1c(r1)
|
||||
/* 8039C23C 0039919C 83 C1 00 18 */ lwz r30, 0x18(r1)
|
||||
/* 8039C240 003991A0 83 A1 00 14 */ lwz r29, 0x14(r1)
|
||||
/* 8039C244 003991A4 7C 08 03 A6 */ mtlr r0
|
||||
/* 8039C248 003991A8 38 21 00 20 */ addi r1, r1, 0x20
|
||||
/* 8039C24C 003991AC 4E 80 00 20 */ blr
|
||||
|
||||
.global sndFXKeyOff
|
||||
sndFXKeyOff:
|
||||
/* 8039C250 003991B0 94 21 FF F0 */ stwu r1, -0x10(r1)
|
||||
/* 8039C254 003991B4 7C 08 02 A6 */ mflr r0
|
||||
/* 8039C258 003991B8 90 01 00 14 */ stw r0, 0x14(r1)
|
||||
/* 8039C25C 003991BC 93 E1 00 0C */ stw r31, 0xc(r1)
|
||||
/* 8039C260 003991C0 7C 7F 1B 78 */ mr r31, r3
|
||||
/* 8039C264 003991C4 48 01 8E 59 */ bl hwDisableIrq
|
||||
/* 8039C268 003991C8 7F E3 FB 78 */ mr r3, r31
|
||||
/* 8039C26C 003991CC 4B FF F0 F5 */ bl synthSendKeyOff
|
||||
/* 8039C270 003991D0 7C 7F 1B 78 */ mr r31, r3
|
||||
/* 8039C274 003991D4 48 01 8E 11 */ bl hwEnableIrq
|
||||
/* 8039C278 003991D8 80 01 00 14 */ lwz r0, 0x14(r1)
|
||||
/* 8039C27C 003991DC 7F E3 FB 78 */ mr r3, r31
|
||||
/* 8039C280 003991E0 83 E1 00 0C */ lwz r31, 0xc(r1)
|
||||
/* 8039C284 003991E4 7C 08 03 A6 */ mtlr r0
|
||||
/* 8039C288 003991E8 38 21 00 10 */ addi r1, r1, 0x10
|
||||
/* 8039C28C 003991EC 4E 80 00 20 */ blr
|
||||
|
||||
.global sndFXStartEx
|
||||
sndFXStartEx:
|
||||
/* 8039C290 003991F0 94 21 FF E0 */ stwu r1, -0x20(r1)
|
||||
/* 8039C294 003991F4 7C 08 02 A6 */ mflr r0
|
||||
/* 8039C298 003991F8 90 01 00 24 */ stw r0, 0x24(r1)
|
||||
/* 8039C29C 003991FC 93 E1 00 1C */ stw r31, 0x1c(r1)
|
||||
/* 8039C2A0 00399200 7C DF 33 78 */ mr r31, r6
|
||||
/* 8039C2A4 00399204 93 C1 00 18 */ stw r30, 0x18(r1)
|
||||
/* 8039C2A8 00399208 7C BE 2B 78 */ mr r30, r5
|
||||
/* 8039C2AC 0039920C 93 A1 00 14 */ stw r29, 0x14(r1)
|
||||
/* 8039C2B0 00399210 7C 9D 23 78 */ mr r29, r4
|
||||
/* 8039C2B4 00399214 93 81 00 10 */ stw r28, 0x10(r1)
|
||||
/* 8039C2B8 00399218 7C 7C 1B 78 */ mr r28, r3
|
||||
/* 8039C2BC 0039921C 48 01 8E 01 */ bl hwDisableIrq
|
||||
/* 8039C2C0 00399220 3C 60 80 55 */ lis r3, lbl_80550AA4@ha
|
||||
/* 8039C2C4 00399224 57 E0 0D FC */ rlwinm r0, r31, 1, 0x17, 0x1e
|
||||
/* 8039C2C8 00399228 38 83 0A A4 */ addi r4, r3, lbl_80550AA4@l
|
||||
/* 8039C2CC 0039922C 7F E6 FB 78 */ mr r6, r31
|
||||
/* 8039C2D0 00399230 7C A4 02 14 */ add r5, r4, r0
|
||||
/* 8039C2D4 00399234 7F 83 E3 78 */ mr r3, r28
|
||||
/* 8039C2D8 00399238 88 E5 00 01 */ lbz r7, 1(r5)
|
||||
/* 8039C2DC 0039923C 7F A4 EB 78 */ mr r4, r29
|
||||
/* 8039C2E0 00399240 7F C5 F3 78 */ mr r5, r30
|
||||
/* 8039C2E4 00399244 4B FF ED 69 */ bl synthFXStart
|
||||
/* 8039C2E8 00399248 7C 7F 1B 78 */ mr r31, r3
|
||||
/* 8039C2EC 0039924C 48 01 8D 99 */ bl hwEnableIrq
|
||||
/* 8039C2F0 00399250 80 01 00 24 */ lwz r0, 0x24(r1)
|
||||
/* 8039C2F4 00399254 7F E3 FB 78 */ mr r3, r31
|
||||
/* 8039C2F8 00399258 83 E1 00 1C */ lwz r31, 0x1c(r1)
|
||||
/* 8039C2FC 0039925C 83 C1 00 18 */ lwz r30, 0x18(r1)
|
||||
/* 8039C300 00399260 83 A1 00 14 */ lwz r29, 0x14(r1)
|
||||
/* 8039C304 00399264 83 81 00 10 */ lwz r28, 0x10(r1)
|
||||
/* 8039C308 00399268 7C 08 03 A6 */ mtlr r0
|
||||
/* 8039C30C 0039926C 38 21 00 20 */ addi r1, r1, 0x20
|
||||
/* 8039C310 00399270 4E 80 00 20 */ blr
|
||||
|
||||
.global sndFXCheck
|
||||
sndFXCheck:
|
||||
/* 8039C314 00399274 94 21 FF F0 */ stwu r1, -0x10(r1)
|
||||
/* 8039C318 00399278 7C 08 02 A6 */ mflr r0
|
||||
/* 8039C31C 0039927C 90 01 00 14 */ stw r0, 0x14(r1)
|
||||
/* 8039C320 00399280 93 E1 00 0C */ stw r31, 0xc(r1)
|
||||
/* 8039C324 00399284 7C 7F 1B 78 */ mr r31, r3
|
||||
/* 8039C328 00399288 48 00 B8 81 */ bl vidGetInternalId
|
||||
/* 8039C32C 0039928C 3C 03 00 01 */ addis r0, r3, 1
|
||||
/* 8039C330 00399290 38 60 FF FF */ li r3, -1
|
||||
/* 8039C334 00399294 28 00 FF FF */ cmplwi r0, 0xffff
|
||||
/* 8039C338 00399298 41 82 00 08 */ beq lbl_8039C340
|
||||
/* 8039C33C 0039929C 7F E3 FB 78 */ mr r3, r31
|
||||
lbl_8039C340:
|
||||
/* 8039C340 003992A0 80 01 00 14 */ lwz r0, 0x14(r1)
|
||||
/* 8039C344 003992A4 83 E1 00 0C */ lwz r31, 0xc(r1)
|
||||
/* 8039C348 003992A8 7C 08 03 A6 */ mtlr r0
|
||||
/* 8039C34C 003992AC 38 21 00 10 */ addi r1, r1, 0x10
|
||||
/* 8039C350 003992B0 4E 80 00 20 */ blr
|
||||
|
||||
.global sndVolume
|
||||
sndVolume:
|
||||
/* 8039C354 003992B4 94 21 FF E0 */ stwu r1, -0x20(r1)
|
||||
/* 8039C358 003992B8 7C 08 02 A6 */ mflr r0
|
||||
/* 8039C35C 003992BC 90 01 00 24 */ stw r0, 0x24(r1)
|
||||
/* 8039C360 003992C0 93 E1 00 1C */ stw r31, 0x1c(r1)
|
||||
/* 8039C364 003992C4 7C BF 2B 78 */ mr r31, r5
|
||||
/* 8039C368 003992C8 93 C1 00 18 */ stw r30, 0x18(r1)
|
||||
/* 8039C36C 003992CC 7C 9E 23 78 */ mr r30, r4
|
||||
/* 8039C370 003992D0 93 A1 00 14 */ stw r29, 0x14(r1)
|
||||
/* 8039C374 003992D4 7C 7D 1B 78 */ mr r29, r3
|
||||
/* 8039C378 003992D8 48 01 8D 45 */ bl hwDisableIrq
|
||||
/* 8039C37C 003992DC 7F A3 EB 78 */ mr r3, r29
|
||||
/* 8039C380 003992E0 7F C4 F3 78 */ mr r4, r30
|
||||
/* 8039C384 003992E4 7F E5 FB 78 */ mr r5, r31
|
||||
/* 8039C388 003992E8 38 C0 00 00 */ li r6, 0
|
||||
/* 8039C38C 003992EC 38 E0 FF FF */ li r7, -1
|
||||
/* 8039C390 003992F0 4B FF F0 59 */ bl synthVolume
|
||||
/* 8039C394 003992F4 48 01 8C F1 */ bl hwEnableIrq
|
||||
/* 8039C398 003992F8 80 01 00 24 */ lwz r0, 0x24(r1)
|
||||
/* 8039C39C 003992FC 83 E1 00 1C */ lwz r31, 0x1c(r1)
|
||||
/* 8039C3A0 00399300 83 C1 00 18 */ lwz r30, 0x18(r1)
|
||||
/* 8039C3A4 00399304 83 A1 00 14 */ lwz r29, 0x14(r1)
|
||||
/* 8039C3A8 00399308 7C 08 03 A6 */ mtlr r0
|
||||
/* 8039C3AC 0039930C 38 21 00 20 */ addi r1, r1, 0x20
|
||||
/* 8039C3B0 00399310 4E 80 00 20 */ blr
|
||||
|
||||
.global sndMasterVolume
|
||||
sndMasterVolume:
|
||||
/* 8039C3B4 00399314 94 21 FF E0 */ stwu r1, -0x20(r1)
|
||||
/* 8039C3B8 00399318 7C 08 02 A6 */ mflr r0
|
||||
/* 8039C3BC 0039931C 90 01 00 24 */ stw r0, 0x24(r1)
|
||||
/* 8039C3C0 00399320 93 E1 00 1C */ stw r31, 0x1c(r1)
|
||||
/* 8039C3C4 00399324 7C DF 33 78 */ mr r31, r6
|
||||
/* 8039C3C8 00399328 93 C1 00 18 */ stw r30, 0x18(r1)
|
||||
/* 8039C3CC 0039932C 7C BE 2B 78 */ mr r30, r5
|
||||
/* 8039C3D0 00399330 93 A1 00 14 */ stw r29, 0x14(r1)
|
||||
/* 8039C3D4 00399334 7C 9D 23 78 */ mr r29, r4
|
||||
/* 8039C3D8 00399338 93 81 00 10 */ stw r28, 0x10(r1)
|
||||
/* 8039C3DC 0039933C 7C 7C 1B 78 */ mr r28, r3
|
||||
/* 8039C3E0 00399340 48 01 8C DD */ bl hwDisableIrq
|
||||
/* 8039C3E4 00399344 57 C0 06 3F */ clrlwi. r0, r30, 0x18
|
||||
/* 8039C3E8 00399348 41 82 00 1C */ beq lbl_8039C404
|
||||
/* 8039C3EC 0039934C 7F 83 E3 78 */ mr r3, r28
|
||||
/* 8039C3F0 00399350 7F A4 EB 78 */ mr r4, r29
|
||||
/* 8039C3F4 00399354 38 A0 00 15 */ li r5, 0x15
|
||||
/* 8039C3F8 00399358 38 C0 00 00 */ li r6, 0
|
||||
/* 8039C3FC 0039935C 38 E0 FF FF */ li r7, -1
|
||||
/* 8039C400 00399360 4B FF EF E9 */ bl synthVolume
|
||||
lbl_8039C404:
|
||||
/* 8039C404 00399364 57 E0 06 3F */ clrlwi. r0, r31, 0x18
|
||||
/* 8039C408 00399368 41 82 00 1C */ beq lbl_8039C424
|
||||
/* 8039C40C 0039936C 7F 83 E3 78 */ mr r3, r28
|
||||
/* 8039C410 00399370 7F A4 EB 78 */ mr r4, r29
|
||||
/* 8039C414 00399374 38 A0 00 16 */ li r5, 0x16
|
||||
/* 8039C418 00399378 38 C0 00 00 */ li r6, 0
|
||||
/* 8039C41C 0039937C 38 E0 FF FF */ li r7, -1
|
||||
/* 8039C420 00399380 4B FF EF C9 */ bl synthVolume
|
||||
lbl_8039C424:
|
||||
/* 8039C424 00399384 48 01 8C 61 */ bl hwEnableIrq
|
||||
/* 8039C428 00399388 80 01 00 24 */ lwz r0, 0x24(r1)
|
||||
/* 8039C42C 0039938C 83 E1 00 1C */ lwz r31, 0x1c(r1)
|
||||
/* 8039C430 00399390 83 C1 00 18 */ lwz r30, 0x18(r1)
|
||||
/* 8039C434 00399394 83 A1 00 14 */ lwz r29, 0x14(r1)
|
||||
/* 8039C438 00399398 83 81 00 10 */ lwz r28, 0x10(r1)
|
||||
/* 8039C43C 0039939C 7C 08 03 A6 */ mtlr r0
|
||||
/* 8039C440 003993A0 38 21 00 20 */ addi r1, r1, 0x20
|
||||
/* 8039C444 003993A4 4E 80 00 20 */ blr
|
||||
|
||||
.global sndOutputMode
|
||||
sndOutputMode:
|
||||
/* 8039C448 003993A8 94 21 FF F0 */ stwu r1, -0x10(r1)
|
||||
/* 8039C44C 003993AC 7C 08 02 A6 */ mflr r0
|
||||
/* 8039C450 003993B0 2C 03 00 01 */ cmpwi r3, 1
|
||||
/* 8039C454 003993B4 90 01 00 14 */ stw r0, 0x14(r1)
|
||||
/* 8039C458 003993B8 93 E1 00 0C */ stw r31, 0xc(r1)
|
||||
/* 8039C45C 003993BC 83 ED AE 74 */ lwz r31, lbl_805A9A34@sda21(r13)
|
||||
/* 8039C460 003993C0 41 82 00 38 */ beq lbl_8039C498
|
||||
/* 8039C464 003993C4 40 80 00 10 */ bge lbl_8039C474
|
||||
/* 8039C468 003993C8 2C 03 00 00 */ cmpwi r3, 0
|
||||
/* 8039C46C 003993CC 40 80 00 14 */ bge lbl_8039C480
|
||||
/* 8039C470 003993D0 48 00 00 54 */ b lbl_8039C4C4
|
||||
lbl_8039C474:
|
||||
/* 8039C474 003993D4 2C 03 00 03 */ cmpwi r3, 3
|
||||
/* 8039C478 003993D8 40 80 00 4C */ bge lbl_8039C4C4
|
||||
/* 8039C47C 003993DC 48 00 00 34 */ b lbl_8039C4B0
|
||||
lbl_8039C480:
|
||||
/* 8039C480 003993E0 63 E0 00 01 */ ori r0, r31, 1
|
||||
/* 8039C484 003993E4 90 0D AE 74 */ stw r0, lbl_805A9A34@sda21(r13)
|
||||
/* 8039C488 003993E8 54 00 07 FA */ rlwinm r0, r0, 0, 0x1f, 0x1d
|
||||
/* 8039C48C 003993EC 90 0D AE 74 */ stw r0, lbl_805A9A34@sda21(r13)
|
||||
/* 8039C490 003993F0 48 01 7A 8D */ bl sub_803b3f1c
|
||||
/* 8039C494 003993F4 48 00 00 30 */ b lbl_8039C4C4
|
||||
lbl_8039C498:
|
||||
/* 8039C498 003993F8 57 E3 00 3C */ rlwinm r3, r31, 0, 0, 0x1e
|
||||
/* 8039C49C 003993FC 57 E0 00 3A */ rlwinm r0, r31, 0, 0, 0x1d
|
||||
/* 8039C4A0 00399400 90 6D AE 74 */ stw r3, lbl_805A9A34@sda21(r13)
|
||||
/* 8039C4A4 00399404 90 0D AE 74 */ stw r0, lbl_805A9A34@sda21(r13)
|
||||
/* 8039C4A8 00399408 48 01 7A 75 */ bl sub_803b3f1c
|
||||
/* 8039C4AC 0039940C 48 00 00 18 */ b lbl_8039C4C4
|
||||
lbl_8039C4B0:
|
||||
/* 8039C4B0 00399410 57 E0 00 3C */ rlwinm r0, r31, 0, 0, 0x1e
|
||||
/* 8039C4B4 00399414 90 0D AE 74 */ stw r0, lbl_805A9A34@sda21(r13)
|
||||
/* 8039C4B8 00399418 60 00 00 02 */ ori r0, r0, 2
|
||||
/* 8039C4BC 0039941C 90 0D AE 74 */ stw r0, lbl_805A9A34@sda21(r13)
|
||||
/* 8039C4C0 00399420 48 01 7A 5D */ bl sub_803b3f1c
|
||||
lbl_8039C4C4:
|
||||
/* 8039C4C4 00399424 80 0D AE 74 */ lwz r0, lbl_805A9A34@sda21(r13)
|
||||
/* 8039C4C8 00399428 7C 1F 00 40 */ cmplw r31, r0
|
||||
/* 8039C4CC 0039942C 41 82 00 54 */ beq lbl_8039C520
|
||||
/* 8039C4D0 00399430 3C 60 80 55 */ lis r3, lbl_80550050@ha
|
||||
/* 8039C4D4 00399434 38 E0 00 00 */ li r7, 0
|
||||
/* 8039C4D8 00399438 38 A3 00 50 */ addi r5, r3, lbl_80550050@l
|
||||
/* 8039C4DC 0039943C 38 C0 00 00 */ li r6, 0
|
||||
/* 8039C4E0 00399440 48 00 00 30 */ b lbl_8039C510
|
||||
lbl_8039C4E4:
|
||||
/* 8039C4E4 00399444 80 6D AE 78 */ lwz r3, lbl_805A9A38@sda21(r13)
|
||||
/* 8039C4E8 00399448 38 06 01 14 */ addi r0, r6, 0x114
|
||||
/* 8039C4EC 0039944C 38 C6 04 04 */ addi r6, r6, 0x404
|
||||
/* 8039C4F0 00399450 38 E7 00 01 */ addi r7, r7, 1
|
||||
/* 8039C4F4 00399454 7C 83 02 14 */ add r4, r3, r0
|
||||
/* 8039C4F8 00399458 7C 63 02 14 */ add r3, r3, r0
|
||||
/* 8039C4FC 0039945C 80 04 00 00 */ lwz r0, 0(r4)
|
||||
/* 8039C500 00399460 80 84 00 04 */ lwz r4, 4(r4)
|
||||
/* 8039C504 00399464 60 00 20 00 */ ori r0, r0, 0x2000
|
||||
/* 8039C508 00399468 90 83 00 04 */ stw r4, 4(r3)
|
||||
/* 8039C50C 0039946C 90 03 00 00 */ stw r0, 0(r3)
|
||||
lbl_8039C510:
|
||||
/* 8039C510 00399470 88 05 02 10 */ lbz r0, 0x210(r5)
|
||||
/* 8039C514 00399474 7C 07 00 40 */ cmplw r7, r0
|
||||
/* 8039C518 00399478 41 80 FF CC */ blt lbl_8039C4E4
|
||||
/* 8039C51C 0039947C 48 00 12 81 */ bl streamOutputModeChanged
|
||||
lbl_8039C520:
|
||||
/* 8039C520 00399480 80 01 00 14 */ lwz r0, 0x14(r1)
|
||||
/* 8039C524 00399484 83 E1 00 0C */ lwz r31, 0xc(r1)
|
||||
/* 8039C528 00399488 7C 08 03 A6 */ mtlr r0
|
||||
/* 8039C52C 0039948C 38 21 00 10 */ addi r1, r1, 0x10
|
||||
/* 8039C530 00399490 4E 80 00 20 */ blr
|
||||
|
||||
.global sndSetAuxProcessingCallbacks
|
||||
sndSetAuxProcessingCallbacks:
|
||||
/* 8039C534 00399494 94 21 FF D0 */ stwu r1, -0x30(r1)
|
||||
/* 8039C538 00399498 7C 08 02 A6 */ mflr r0
|
||||
/* 8039C53C 0039949C 90 01 00 34 */ stw r0, 0x34(r1)
|
||||
/* 8039C540 003994A0 39 61 00 30 */ addi r11, r1, 0x30
|
||||
/* 8039C544 003994A4 4B FE D5 25 */ bl sub_80389a68
|
||||
/* 8039C548 003994A8 83 E1 00 38 */ lwz r31, 0x38(r1)
|
||||
/* 8039C54C 003994AC 7C 79 1B 78 */ mr r25, r3
|
||||
/* 8039C550 003994B0 7C 9A 23 78 */ mr r26, r4
|
||||
/* 8039C554 003994B4 7C BB 2B 78 */ mr r27, r5
|
||||
/* 8039C558 003994B8 7C D6 33 78 */ mr r22, r6
|
||||
/* 8039C55C 003994BC 7C F7 3B 78 */ mr r23, r7
|
||||
/* 8039C560 003994C0 7D 1C 43 78 */ mr r28, r8
|
||||
/* 8039C564 003994C4 7D 3D 4B 78 */ mr r29, r9
|
||||
/* 8039C568 003994C8 7D 5E 53 78 */ mr r30, r10
|
||||
/* 8039C56C 003994CC 48 01 8B 51 */ bl hwDisableIrq
|
||||
/* 8039C570 003994D0 28 1A 00 00 */ cmplwi r26, 0
|
||||
/* 8039C574 003994D4 41 82 00 4C */ beq lbl_8039C5C0
|
||||
/* 8039C578 003994D8 56 C0 06 3E */ clrlwi r0, r22, 0x18
|
||||
/* 8039C57C 003994DC 57 38 06 3E */ clrlwi r24, r25, 0x18
|
||||
/* 8039C580 003994E0 38 6D AE 64 */ addi r3, r13, lbl_805A9A24@sda21
|
||||
/* 8039C584 003994E4 28 00 00 FF */ cmplwi r0, 0xff
|
||||
/* 8039C588 003994E8 7E C3 C1 AE */ stbx r22, r3, r24
|
||||
/* 8039C58C 003994EC 41 82 00 58 */ beq lbl_8039C5E4
|
||||
/* 8039C590 003994F0 7E E3 BB 78 */ mr r3, r23
|
||||
/* 8039C594 003994F4 4B FF 87 9D */ bl seqGetPrivateId
|
||||
/* 8039C598 003994F8 3C A0 80 55 */ lis r5, lbl_80550A44@ha
|
||||
/* 8039C59C 003994FC 3C 80 80 55 */ lis r4, lbl_80550A24@ha
|
||||
/* 8039C5A0 00399500 38 CD AE 5C */ addi r6, r13, lbl_805A9A1C@sda21
|
||||
/* 8039C5A4 00399504 57 00 10 3A */ slwi r0, r24, 2
|
||||
/* 8039C5A8 00399508 38 A5 0A 44 */ addi r5, r5, lbl_80550A44@l
|
||||
/* 8039C5AC 0039950C 38 84 0A 24 */ addi r4, r4, lbl_80550A24@l
|
||||
/* 8039C5B0 00399510 7C 66 C1 AE */ stbx r3, r6, r24
|
||||
/* 8039C5B4 00399514 7F 45 01 2E */ stwx r26, r5, r0
|
||||
/* 8039C5B8 00399518 7F 64 01 2E */ stwx r27, r4, r0
|
||||
/* 8039C5BC 0039951C 48 00 00 28 */ b lbl_8039C5E4
|
||||
lbl_8039C5C0:
|
||||
/* 8039C5C0 00399520 3C 60 80 55 */ lis r3, lbl_80550A44@ha
|
||||
/* 8039C5C4 00399524 57 27 06 3E */ clrlwi r7, r25, 0x18
|
||||
/* 8039C5C8 00399528 57 25 15 BA */ rlwinm r5, r25, 2, 0x16, 0x1d
|
||||
/* 8039C5CC 0039952C 38 C0 00 00 */ li r6, 0
|
||||
/* 8039C5D0 00399530 38 83 0A 44 */ addi r4, r3, lbl_80550A44@l
|
||||
/* 8039C5D4 00399534 38 00 00 FF */ li r0, 0xff
|
||||
/* 8039C5D8 00399538 38 6D AE 64 */ addi r3, r13, lbl_805A9A24@sda21
|
||||
/* 8039C5DC 0039953C 7C C4 29 2E */ stwx r6, r4, r5
|
||||
/* 8039C5E0 00399540 7C 03 39 AE */ stbx r0, r3, r7
|
||||
lbl_8039C5E4:
|
||||
/* 8039C5E4 00399544 28 1C 00 00 */ cmplwi r28, 0
|
||||
/* 8039C5E8 00399548 41 82 00 4C */ beq lbl_8039C634
|
||||
/* 8039C5EC 0039954C 57 C0 06 3E */ clrlwi r0, r30, 0x18
|
||||
/* 8039C5F0 00399550 57 38 06 3E */ clrlwi r24, r25, 0x18
|
||||
/* 8039C5F4 00399554 38 6D AE 54 */ addi r3, r13, lbl_805A9A14@sda21
|
||||
/* 8039C5F8 00399558 28 00 00 FF */ cmplwi r0, 0xff
|
||||
/* 8039C5FC 0039955C 7F C3 C1 AE */ stbx r30, r3, r24
|
||||
/* 8039C600 00399560 41 82 00 58 */ beq lbl_8039C658
|
||||
/* 8039C604 00399564 7F E3 FB 78 */ mr r3, r31
|
||||
/* 8039C608 00399568 4B FF 87 29 */ bl seqGetPrivateId
|
||||
/* 8039C60C 0039956C 3C A0 80 55 */ lis r5, lbl_80550A84@ha
|
||||
/* 8039C610 00399570 3C 80 80 55 */ lis r4, lbl_80550A64@ha
|
||||
/* 8039C614 00399574 38 CD AE 4C */ addi r6, r13, lbl_805A9A0C@sda21
|
||||
/* 8039C618 00399578 57 00 10 3A */ slwi r0, r24, 2
|
||||
/* 8039C61C 0039957C 38 A5 0A 84 */ addi r5, r5, lbl_80550A84@l
|
||||
/* 8039C620 00399580 38 84 0A 64 */ addi r4, r4, lbl_80550A64@l
|
||||
/* 8039C624 00399584 7C 66 C1 AE */ stbx r3, r6, r24
|
||||
/* 8039C628 00399588 7F 85 01 2E */ stwx r28, r5, r0
|
||||
/* 8039C62C 0039958C 7F A4 01 2E */ stwx r29, r4, r0
|
||||
/* 8039C630 00399590 48 00 00 28 */ b lbl_8039C658
|
||||
lbl_8039C634:
|
||||
/* 8039C634 00399594 3C 60 80 55 */ lis r3, lbl_80550A84@ha
|
||||
/* 8039C638 00399598 57 27 06 3E */ clrlwi r7, r25, 0x18
|
||||
/* 8039C63C 0039959C 57 25 15 BA */ rlwinm r5, r25, 2, 0x16, 0x1d
|
||||
/* 8039C640 003995A0 38 C0 00 00 */ li r6, 0
|
||||
/* 8039C644 003995A4 38 83 0A 84 */ addi r4, r3, lbl_80550A84@l
|
||||
/* 8039C648 003995A8 38 00 00 FF */ li r0, 0xff
|
||||
/* 8039C64C 003995AC 38 6D AE 54 */ addi r3, r13, lbl_805A9A14@sda21
|
||||
/* 8039C650 003995B0 7C C4 29 2E */ stwx r6, r4, r5
|
||||
/* 8039C654 003995B4 7C 03 39 AE */ stbx r0, r3, r7
|
||||
lbl_8039C658:
|
||||
/* 8039C658 003995B8 7F 23 CB 78 */ mr r3, r25
|
||||
/* 8039C65C 003995BC 7F 44 D3 78 */ mr r4, r26
|
||||
/* 8039C660 003995C0 7F 65 DB 78 */ mr r5, r27
|
||||
/* 8039C664 003995C4 7F 86 E3 78 */ mr r6, r28
|
||||
/* 8039C668 003995C8 7F A7 EB 78 */ mr r7, r29
|
||||
/* 8039C66C 003995CC 48 01 74 09 */ bl hwSetAUXProcessingCallbacks
|
||||
/* 8039C670 003995D0 48 01 8A 15 */ bl hwEnableIrq
|
||||
/* 8039C674 003995D4 39 61 00 30 */ addi r11, r1, 0x30
|
||||
/* 8039C678 003995D8 4B FE D4 3D */ bl _restgpr_22
|
||||
/* 8039C67C 003995DC 80 01 00 34 */ lwz r0, 0x34(r1)
|
||||
/* 8039C680 003995E0 7C 08 03 A6 */ mtlr r0
|
||||
/* 8039C684 003995E4 38 21 00 30 */ addi r1, r1, 0x30
|
||||
/* 8039C688 003995E8 4E 80 00 20 */ blr
|
||||
|
||||
.global sub_8039c68c
|
||||
sub_8039c68c:
|
||||
/* 8039C68C 003995EC 94 21 FF E0 */ stwu r1, -0x20(r1)
|
||||
/* 8039C690 003995F0 7C 08 02 A6 */ mflr r0
|
||||
/* 8039C694 003995F4 90 01 00 24 */ stw r0, 0x24(r1)
|
||||
/* 8039C698 003995F8 93 E1 00 1C */ stw r31, 0x1c(r1)
|
||||
/* 8039C69C 003995FC 7C BF 2B 78 */ mr r31, r5
|
||||
/* 8039C6A0 00399600 93 C1 00 18 */ stw r30, 0x18(r1)
|
||||
/* 8039C6A4 00399604 7C 9E 23 78 */ mr r30, r4
|
||||
/* 8039C6A8 00399608 93 A1 00 14 */ stw r29, 0x14(r1)
|
||||
/* 8039C6AC 0039960C 7C 7D 1B 78 */ mr r29, r3
|
||||
/* 8039C6B0 00399610 48 01 8A 0D */ bl hwDisableIrq
|
||||
/* 8039C6B4 00399614 3C 60 80 55 */ lis r3, lbl_80550AA4@ha
|
||||
/* 8039C6B8 00399618 3C 80 80 55 */ lis r4, lbl_80550A44@ha
|
||||
/* 8039C6BC 0039961C 38 C3 0A A4 */ addi r6, r3, lbl_80550AA4@l
|
||||
/* 8039C6C0 00399620 57 AC 0D FC */ rlwinm r12, r29, 1, 0x17, 0x1e
|
||||
/* 8039C6C4 00399624 7C 66 62 14 */ add r3, r6, r12
|
||||
/* 8039C6C8 00399628 39 20 00 00 */ li r9, 0
|
||||
/* 8039C6CC 0039962C 99 23 00 01 */ stb r9, 1(r3)
|
||||
/* 8039C6D0 00399630 3C 60 80 55 */ lis r3, lbl_80550A84@ha
|
||||
/* 8039C6D4 00399634 57 AB 06 3E */ clrlwi r11, r29, 0x18
|
||||
/* 8039C6D8 00399638 57 AA 15 BA */ rlwinm r10, r29, 2, 0x16, 0x1d
|
||||
/* 8039C6DC 0039963C 38 84 0A 44 */ addi r4, r4, lbl_80550A44@l
|
||||
/* 8039C6E0 00399640 38 A3 0A 84 */ addi r5, r3, lbl_80550A84@l
|
||||
/* 8039C6E4 00399644 38 00 00 FF */ li r0, 0xff
|
||||
/* 8039C6E8 00399648 39 0D AE 64 */ addi r8, r13, lbl_805A9A24@sda21
|
||||
/* 8039C6EC 0039964C 38 ED AE 54 */ addi r7, r13, lbl_805A9A14@sda21
|
||||
/* 8039C6F0 00399650 7D 24 51 2E */ stwx r9, r4, r10
|
||||
/* 8039C6F4 00399654 7F A3 EB 78 */ mr r3, r29
|
||||
/* 8039C6F8 00399658 7F C4 F3 78 */ mr r4, r30
|
||||
/* 8039C6FC 0039965C 7D 25 51 2E */ stwx r9, r5, r10
|
||||
/* 8039C700 00399660 7F E5 FB 78 */ mr r5, r31
|
||||
/* 8039C704 00399664 7C 08 59 AE */ stbx r0, r8, r11
|
||||
/* 8039C708 00399668 7C 07 59 AE */ stbx r0, r7, r11
|
||||
/* 8039C70C 0039966C 7D 26 61 AE */ stbx r9, r6, r12
|
||||
/* 8039C710 00399670 48 01 73 8D */ bl sub_803b3a9c
|
||||
/* 8039C714 00399674 48 01 89 71 */ bl hwEnableIrq
|
||||
/* 8039C718 00399678 80 01 00 24 */ lwz r0, 0x24(r1)
|
||||
/* 8039C71C 0039967C 83 E1 00 1C */ lwz r31, 0x1c(r1)
|
||||
/* 8039C720 00399680 83 C1 00 18 */ lwz r30, 0x18(r1)
|
||||
/* 8039C724 00399684 83 A1 00 14 */ lwz r29, 0x14(r1)
|
||||
/* 8039C728 00399688 7C 08 03 A6 */ mtlr r0
|
||||
/* 8039C72C 0039968C 38 21 00 20 */ addi r1, r1, 0x20
|
||||
/* 8039C730 00399690 4E 80 00 20 */ blr
|
||||
|
||||
.global sub_8039c734
|
||||
sub_8039c734:
|
||||
/* 8039C734 00399694 94 21 FF E0 */ stwu r1, -0x20(r1)
|
||||
/* 8039C738 00399698 7C 08 02 A6 */ mflr r0
|
||||
/* 8039C73C 0039969C 90 01 00 24 */ stw r0, 0x24(r1)
|
||||
/* 8039C740 003996A0 39 61 00 20 */ addi r11, r1, 0x20
|
||||
/* 8039C744 003996A4 4B FE D3 39 */ bl sub_80389a7c
|
||||
/* 8039C748 003996A8 7C 7F 1B 78 */ mr r31, r3
|
||||
/* 8039C74C 003996AC 3C 60 80 55 */ lis r3, lbl_80550050@ha
|
||||
/* 8039C750 003996B0 3B A3 00 50 */ addi r29, r3, lbl_80550050@l
|
||||
/* 8039C754 003996B4 3B 60 00 00 */ li r27, 0
|
||||
/* 8039C758 003996B8 57 FE 06 3E */ clrlwi r30, r31, 0x18
|
||||
/* 8039C75C 003996BC 3B 80 00 00 */ li r28, 0
|
||||
/* 8039C760 003996C0 48 00 00 58 */ b lbl_8039C7B8
|
||||
lbl_8039C764:
|
||||
/* 8039C764 003996C4 80 0D AE 78 */ lwz r0, lbl_805A9A38@sda21(r13)
|
||||
/* 8039C768 003996C8 7C 80 E2 14 */ add r4, r0, r28
|
||||
/* 8039C76C 003996CC 88 04 01 1F */ lbz r0, 0x11f(r4)
|
||||
/* 8039C770 003996D0 7C 1E 00 40 */ cmplw r30, r0
|
||||
/* 8039C774 003996D4 40 82 00 3C */ bne lbl_8039C7B0
|
||||
/* 8039C778 003996D8 80 64 00 F4 */ lwz r3, 0xf4(r4)
|
||||
/* 8039C77C 003996DC 3C 03 00 01 */ addis r0, r3, 1
|
||||
/* 8039C780 003996E0 28 00 FF FF */ cmplwi r0, 0xffff
|
||||
/* 8039C784 003996E4 41 82 00 14 */ beq lbl_8039C798
|
||||
/* 8039C788 003996E8 80 64 00 F8 */ lwz r3, 0xf8(r4)
|
||||
/* 8039C78C 003996EC 80 63 00 08 */ lwz r3, 8(r3)
|
||||
/* 8039C790 003996F0 48 00 C4 C1 */ bl voiceKillSound
|
||||
/* 8039C794 003996F4 48 00 00 1C */ b lbl_8039C7B0
|
||||
lbl_8039C798:
|
||||
/* 8039C798 003996F8 7F 63 DB 78 */ mr r3, r27
|
||||
/* 8039C79C 003996FC 48 01 6A 01 */ bl hwIsActive
|
||||
/* 8039C7A0 00399700 28 03 00 00 */ cmplwi r3, 0
|
||||
/* 8039C7A4 00399704 41 82 00 0C */ beq lbl_8039C7B0
|
||||
/* 8039C7A8 00399708 7F 63 DB 78 */ mr r3, r27
|
||||
/* 8039C7AC 0039970C 48 01 72 9D */ bl sub_803b3a48
|
||||
lbl_8039C7B0:
|
||||
/* 8039C7B0 00399710 3B 9C 04 04 */ addi r28, r28, 0x404
|
||||
/* 8039C7B4 00399714 3B 7B 00 01 */ addi r27, r27, 1
|
||||
lbl_8039C7B8:
|
||||
/* 8039C7B8 00399718 88 1D 02 10 */ lbz r0, 0x210(r29)
|
||||
/* 8039C7BC 0039971C 7C 1B 00 40 */ cmplw r27, r0
|
||||
/* 8039C7C0 00399720 41 80 FF A4 */ blt lbl_8039C764
|
||||
/* 8039C7C4 00399724 48 01 88 F9 */ bl hwDisableIrq
|
||||
/* 8039C7C8 00399728 3C 80 80 55 */ lis r4, lbl_80550A44@ha
|
||||
/* 8039C7CC 0039972C 3C 60 80 55 */ lis r3, lbl_80550A84@ha
|
||||
/* 8039C7D0 00399730 57 E9 06 3E */ clrlwi r9, r31, 0x18
|
||||
/* 8039C7D4 00399734 57 E8 15 BA */ rlwinm r8, r31, 2, 0x16, 0x1d
|
||||
/* 8039C7D8 00399738 38 C4 0A 44 */ addi r6, r4, lbl_80550A44@l
|
||||
/* 8039C7DC 0039973C 38 E0 00 00 */ li r7, 0
|
||||
/* 8039C7E0 00399740 38 A3 0A 84 */ addi r5, r3, lbl_80550A84@l
|
||||
/* 8039C7E4 00399744 38 00 00 FF */ li r0, 0xff
|
||||
/* 8039C7E8 00399748 38 8D AE 64 */ addi r4, r13, lbl_805A9A24@sda21
|
||||
/* 8039C7EC 0039974C 38 6D AE 54 */ addi r3, r13, lbl_805A9A14@sda21
|
||||
/* 8039C7F0 00399750 7C E6 41 2E */ stwx r7, r6, r8
|
||||
/* 8039C7F4 00399754 7C E5 41 2E */ stwx r7, r5, r8
|
||||
/* 8039C7F8 00399758 7C 04 49 AE */ stbx r0, r4, r9
|
||||
/* 8039C7FC 0039975C 7C 03 49 AE */ stbx r0, r3, r9
|
||||
/* 8039C800 00399760 48 01 88 85 */ bl hwEnableIrq
|
||||
/* 8039C804 00399764 7F E3 FB 78 */ mr r3, r31
|
||||
/* 8039C808 00399768 48 01 72 B5 */ bl sub_803b3abc
|
||||
/* 8039C80C 0039976C 39 61 00 20 */ addi r11, r1, 0x20
|
||||
/* 8039C810 00399770 4B FE D2 B9 */ bl _restgpr_27
|
||||
/* 8039C814 00399774 80 01 00 24 */ lwz r0, 0x24(r1)
|
||||
/* 8039C818 00399778 7C 08 03 A6 */ mtlr r0
|
||||
/* 8039C81C 0039977C 38 21 00 20 */ addi r1, r1, 0x20
|
||||
/* 8039C820 00399780 4E 80 00 20 */ blr
|
||||
|
||||
.global sub_8039c824
|
||||
sub_8039c824:
|
||||
/* 8039C824 00399784 94 21 FF F0 */ stwu r1, -0x10(r1)
|
||||
/* 8039C828 00399788 7C 08 02 A6 */ mflr r0
|
||||
/* 8039C82C 0039978C 90 01 00 14 */ stw r0, 0x14(r1)
|
||||
/* 8039C830 00399790 48 01 72 AD */ bl sub_803b3adc
|
||||
/* 8039C834 00399794 80 01 00 14 */ lwz r0, 0x14(r1)
|
||||
/* 8039C838 00399798 7C 08 03 A6 */ mtlr r0
|
||||
/* 8039C83C 0039979C 38 21 00 10 */ addi r1, r1, 0x10
|
||||
/* 8039C840 003997A0 4E 80 00 20 */ blr
|
||||
|
||||
.global sub_8039c844
|
||||
sub_8039c844:
|
||||
/* 8039C844 003997A4 94 21 FF F0 */ stwu r1, -0x10(r1)
|
||||
/* 8039C848 003997A8 7C 08 02 A6 */ mflr r0
|
||||
/* 8039C84C 003997AC 90 01 00 14 */ stw r0, 0x14(r1)
|
||||
/* 8039C850 003997B0 48 01 72 C1 */ bl sub_803b3b10
|
||||
/* 8039C854 003997B4 80 01 00 14 */ lwz r0, 0x14(r1)
|
||||
/* 8039C858 003997B8 7C 08 03 A6 */ mtlr r0
|
||||
/* 8039C85C 003997BC 38 21 00 10 */ addi r1, r1, 0x10
|
||||
/* 8039C860 003997C0 4E 80 00 20 */ blr
|
File diff suppressed because it is too large
Load Diff
File diff suppressed because it is too large
Load Diff
|
@ -0,0 +1,86 @@
|
|||
.include "macros.inc"
|
||||
|
||||
.section .text, "ax"
|
||||
|
||||
.global sndPitchUpOne
|
||||
sndPitchUpOne:
|
||||
/* 803A90F0 003A6050 94 21 FF E0 */ stwu r1, -0x20(r1)
|
||||
/* 803A90F4 003A6054 54 63 04 3E */ clrlwi r3, r3, 0x10
|
||||
/* 803A90F8 003A6058 3C 00 43 30 */ lis r0, 0x4330
|
||||
/* 803A90FC 003A605C C8 22 D5 98 */ lfd f1, lbl_805AF2B8@sda21(r2)
|
||||
/* 803A9100 003A6060 90 61 00 0C */ stw r3, 0xc(r1)
|
||||
/* 803A9104 003A6064 C0 42 D5 90 */ lfs f2, lbl_805AF2B0@sda21(r2)
|
||||
/* 803A9108 003A6068 90 01 00 08 */ stw r0, 8(r1)
|
||||
/* 803A910C 003A606C C8 01 00 08 */ lfd f0, 8(r1)
|
||||
/* 803A9110 003A6070 EC 00 08 28 */ fsubs f0, f0, f1
|
||||
/* 803A9114 003A6074 EC 02 00 32 */ fmuls f0, f2, f0
|
||||
/* 803A9118 003A6078 FC 00 00 1E */ fctiwz f0, f0
|
||||
/* 803A911C 003A607C D8 01 00 10 */ stfd f0, 0x10(r1)
|
||||
/* 803A9120 003A6080 80 61 00 14 */ lwz r3, 0x14(r1)
|
||||
/* 803A9124 003A6084 38 21 00 20 */ addi r1, r1, 0x20
|
||||
/* 803A9128 003A6088 4E 80 00 20 */ blr
|
||||
|
||||
.global sndGetPitch
|
||||
sndGetPitch:
|
||||
/* 803A912C 003A608C 94 21 FF E0 */ stwu r1, -0x20(r1)
|
||||
/* 803A9130 003A6090 7C 08 02 A6 */ mflr r0
|
||||
/* 803A9134 003A6094 90 01 00 24 */ stw r0, 0x24(r1)
|
||||
/* 803A9138 003A6098 3C 04 00 01 */ addis r0, r4, 1
|
||||
/* 803A913C 003A609C 28 00 FF FF */ cmplwi r0, 0xffff
|
||||
/* 803A9140 003A60A0 40 82 00 0C */ bne lbl_803A914C
|
||||
/* 803A9144 003A60A4 3C 80 40 00 */ lis r4, 0x40005622@ha
|
||||
/* 803A9148 003A60A8 38 84 56 22 */ addi r4, r4, 0x40005622@l
|
||||
lbl_803A914C:
|
||||
/* 803A914C 003A60AC 54 86 46 3E */ srwi r6, r4, 0x18
|
||||
/* 803A9150 003A60B0 54 65 06 3E */ clrlwi r5, r3, 0x18
|
||||
/* 803A9154 003A60B4 7C 05 30 40 */ cmplw r5, r6
|
||||
/* 803A9158 003A60B8 C0 42 D5 A0 */ lfs f2, lbl_805AF2C0@sda21(r2)
|
||||
/* 803A915C 003A60BC 41 82 00 5C */ beq lbl_803A91B8
|
||||
/* 803A9160 003A60C0 54 83 02 3E */ clrlwi r3, r4, 8
|
||||
/* 803A9164 003A60C4 3C 00 43 30 */ lis r0, 0x4330
|
||||
/* 803A9168 003A60C8 90 61 00 0C */ stw r3, 0xc(r1)
|
||||
/* 803A916C 003A60CC 7C 06 28 40 */ cmplw r6, r5
|
||||
/* 803A9170 003A60D0 C8 22 D5 98 */ lfd f1, lbl_805AF2B8@sda21(r2)
|
||||
/* 803A9174 003A60D4 90 01 00 08 */ stw r0, 8(r1)
|
||||
/* 803A9178 003A60D8 C8 01 00 08 */ lfd f0, 8(r1)
|
||||
/* 803A917C 003A60DC EC 20 08 28 */ fsubs f1, f0, f1
|
||||
/* 803A9180 003A60E0 40 80 00 1C */ bge lbl_803A919C
|
||||
/* 803A9184 003A60E4 7C 06 28 50 */ subf r0, r6, r5
|
||||
/* 803A9188 003A60E8 3C 60 80 3F */ lis r3, lbl_803F3420@ha
|
||||
/* 803A918C 003A60EC 54 00 10 3A */ slwi r0, r0, 2
|
||||
/* 803A9190 003A60F0 38 63 34 20 */ addi r3, r3, lbl_803F3420@l
|
||||
/* 803A9194 003A60F4 7C 03 04 2E */ lfsx f0, r3, r0
|
||||
/* 803A9198 003A60F8 48 00 00 18 */ b lbl_803A91B0
|
||||
lbl_803A919C:
|
||||
/* 803A919C 003A60FC 7C 05 30 50 */ subf r0, r5, r6
|
||||
/* 803A91A0 003A6100 3C 60 80 3F */ lis r3, lbl_803F3620@ha
|
||||
/* 803A91A4 003A6104 54 00 10 3A */ slwi r0, r0, 2
|
||||
/* 803A91A8 003A6108 38 63 36 20 */ addi r3, r3, lbl_803F3620@l
|
||||
/* 803A91AC 003A610C 7C 03 04 2E */ lfsx f0, r3, r0
|
||||
lbl_803A91B0:
|
||||
/* 803A91B0 003A6110 EC 01 00 32 */ fmuls f0, f1, f0
|
||||
/* 803A91B4 003A6114 48 00 00 20 */ b lbl_803A91D4
|
||||
lbl_803A91B8:
|
||||
/* 803A91B8 003A6118 54 83 02 3E */ clrlwi r3, r4, 8
|
||||
/* 803A91BC 003A611C 3C 00 43 30 */ lis r0, 0x4330
|
||||
/* 803A91C0 003A6120 90 61 00 14 */ stw r3, 0x14(r1)
|
||||
/* 803A91C4 003A6124 C8 22 D5 98 */ lfd f1, lbl_805AF2B8@sda21(r2)
|
||||
/* 803A91C8 003A6128 90 01 00 10 */ stw r0, 0x10(r1)
|
||||
/* 803A91CC 003A612C C8 01 00 10 */ lfd f0, 0x10(r1)
|
||||
/* 803A91D0 003A6130 EC 00 08 28 */ fsubs f0, f0, f1
|
||||
lbl_803A91D4:
|
||||
/* 803A91D4 003A6134 3C 00 43 30 */ lis r0, 0x4330
|
||||
/* 803A91D8 003A6138 3C 60 80 55 */ lis r3, lbl_80550050@ha
|
||||
/* 803A91DC 003A613C 90 01 00 18 */ stw r0, 0x18(r1)
|
||||
/* 803A91E0 003A6140 EC 42 00 32 */ fmuls f2, f2, f0
|
||||
/* 803A91E4 003A6144 80 03 00 50 */ lwz r0, lbl_80550050@l(r3)
|
||||
/* 803A91E8 003A6148 C8 22 D5 98 */ lfd f1, lbl_805AF2B8@sda21(r2)
|
||||
/* 803A91EC 003A614C 90 01 00 1C */ stw r0, 0x1c(r1)
|
||||
/* 803A91F0 003A6150 C8 01 00 18 */ lfd f0, 0x18(r1)
|
||||
/* 803A91F4 003A6154 EC 00 08 28 */ fsubs f0, f0, f1
|
||||
/* 803A91F8 003A6158 EC 22 00 24 */ fdivs f1, f2, f0
|
||||
/* 803A91FC 003A615C 4B FE 07 59 */ bl __cvt_fp2unsigned
|
||||
/* 803A9200 003A6160 80 01 00 24 */ lwz r0, 0x24(r1)
|
||||
/* 803A9204 003A6164 7C 08 03 A6 */ mtlr r0
|
||||
/* 803A9208 003A6168 38 21 00 20 */ addi r1, r1, 0x20
|
||||
/* 803A920C 003A616C 4E 80 00 20 */ blr
|
|
@ -0,0 +1,565 @@
|
|||
.include "macros.inc"
|
||||
|
||||
.section .text, "ax"
|
||||
|
||||
.global adsrConvertTimeCents
|
||||
adsrConvertTimeCents:
|
||||
/* 803A9210 003A6170 94 21 FF F0 */ stwu r1, -0x10(r1)
|
||||
/* 803A9214 003A6174 7C 08 02 A6 */ mflr r0
|
||||
/* 803A9218 003A6178 6C 63 80 00 */ xoris r3, r3, 0x8000
|
||||
/* 803A921C 003A617C C8 42 D5 B8 */ lfd f2, lbl_805AF2D8@sda21(r2)
|
||||
/* 803A9220 003A6180 90 01 00 14 */ stw r0, 0x14(r1)
|
||||
/* 803A9224 003A6184 3C 00 43 30 */ lis r0, 0x4330
|
||||
/* 803A9228 003A6188 C0 62 D5 B0 */ lfs f3, lbl_805AF2D0@sda21(r2)
|
||||
/* 803A922C 003A618C 90 61 00 0C */ stw r3, 0xc(r1)
|
||||
/* 803A9230 003A6190 C8 22 D5 A8 */ lfd f1, lbl_805AF2C8@sda21(r2)
|
||||
/* 803A9234 003A6194 90 01 00 08 */ stw r0, 8(r1)
|
||||
/* 803A9238 003A6198 C8 01 00 08 */ lfd f0, 8(r1)
|
||||
/* 803A923C 003A619C EC 00 10 28 */ fsubs f0, f0, f2
|
||||
/* 803A9240 003A61A0 EC 43 00 32 */ fmuls f2, f3, f0
|
||||
/* 803A9244 003A61A4 4B FE BA A9 */ bl pow
|
||||
/* 803A9248 003A61A8 FC 20 08 18 */ frsp f1, f1
|
||||
/* 803A924C 003A61AC C0 02 D5 B4 */ lfs f0, lbl_805AF2D4@sda21(r2)
|
||||
/* 803A9250 003A61B0 EC 20 00 72 */ fmuls f1, f0, f1
|
||||
/* 803A9254 003A61B4 4B FE 07 01 */ bl __cvt_fp2unsigned
|
||||
/* 803A9258 003A61B8 80 01 00 14 */ lwz r0, 0x14(r1)
|
||||
/* 803A925C 003A61BC 7C 08 03 A6 */ mtlr r0
|
||||
/* 803A9260 003A61C0 38 21 00 10 */ addi r1, r1, 0x10
|
||||
/* 803A9264 003A61C4 4E 80 00 20 */ blr
|
||||
|
||||
.global salChangeADSRState
|
||||
salChangeADSRState:
|
||||
/* 803A9268 003A61C8 88 83 00 00 */ lbz r4, 0(r3)
|
||||
/* 803A926C 003A61CC 38 00 00 00 */ li r0, 0
|
||||
/* 803A9270 003A61D0 2C 04 00 01 */ cmpwi r4, 1
|
||||
/* 803A9274 003A61D4 41 82 00 F0 */ beq lbl_803A9364
|
||||
/* 803A9278 003A61D8 40 80 02 54 */ bge lbl_803A94CC
|
||||
/* 803A927C 003A61DC 2C 04 00 00 */ cmpwi r4, 0
|
||||
/* 803A9280 003A61E0 40 80 00 08 */ bge lbl_803A9288
|
||||
/* 803A9284 003A61E4 48 00 02 48 */ b lbl_803A94CC
|
||||
lbl_803A9288:
|
||||
/* 803A9288 003A61E8 88 83 00 01 */ lbz r4, 1(r3)
|
||||
/* 803A928C 003A61EC 2C 04 00 02 */ cmpwi r4, 2
|
||||
/* 803A9290 003A61F0 41 82 00 98 */ beq lbl_803A9328
|
||||
/* 803A9294 003A61F4 40 80 00 14 */ bge lbl_803A92A8
|
||||
/* 803A9298 003A61F8 2C 04 00 00 */ cmpwi r4, 0
|
||||
/* 803A929C 003A61FC 41 82 00 18 */ beq lbl_803A92B4
|
||||
/* 803A92A0 003A6200 40 80 00 48 */ bge lbl_803A92E8
|
||||
/* 803A92A4 003A6204 48 00 02 28 */ b lbl_803A94CC
|
||||
lbl_803A92A8:
|
||||
/* 803A92A8 003A6208 2C 04 00 04 */ cmpwi r4, 4
|
||||
/* 803A92AC 003A620C 41 82 00 A8 */ beq lbl_803A9354
|
||||
/* 803A92B0 003A6210 48 00 02 1C */ b lbl_803A94CC
|
||||
lbl_803A92B4:
|
||||
/* 803A92B4 003A6214 80 83 00 14 */ lwz r4, 0x14(r3)
|
||||
/* 803A92B8 003A6218 28 04 00 00 */ cmplwi r4, 0
|
||||
/* 803A92BC 003A621C 90 83 00 04 */ stw r4, 4(r3)
|
||||
/* 803A92C0 003A6220 41 82 00 28 */ beq lbl_803A92E8
|
||||
/* 803A92C4 003A6224 38 A0 00 01 */ li r5, 1
|
||||
/* 803A92C8 003A6228 38 80 00 00 */ li r4, 0
|
||||
/* 803A92CC 003A622C 98 A3 00 01 */ stb r5, 1(r3)
|
||||
/* 803A92D0 003A6230 3C A0 7F FF */ lis r5, 0x7fff
|
||||
/* 803A92D4 003A6234 90 83 00 08 */ stw r4, 8(r3)
|
||||
/* 803A92D8 003A6238 80 83 00 14 */ lwz r4, 0x14(r3)
|
||||
/* 803A92DC 003A623C 7C 85 23 96 */ divwu r4, r5, r4
|
||||
/* 803A92E0 003A6240 90 83 00 10 */ stw r4, 0x10(r3)
|
||||
/* 803A92E4 003A6244 48 00 01 E8 */ b lbl_803A94CC
|
||||
lbl_803A92E8:
|
||||
/* 803A92E8 003A6248 80 83 00 18 */ lwz r4, 0x18(r3)
|
||||
/* 803A92EC 003A624C 28 04 00 00 */ cmplwi r4, 0
|
||||
/* 803A92F0 003A6250 90 83 00 04 */ stw r4, 4(r3)
|
||||
/* 803A92F4 003A6254 41 82 00 34 */ beq lbl_803A9328
|
||||
/* 803A92F8 003A6258 38 80 00 02 */ li r4, 2
|
||||
/* 803A92FC 003A625C 3C C0 7F FF */ lis r6, 0x7fff
|
||||
/* 803A9300 003A6260 98 83 00 01 */ stb r4, 1(r3)
|
||||
/* 803A9304 003A6264 90 C3 00 08 */ stw r6, 8(r3)
|
||||
/* 803A9308 003A6268 A0 A3 00 1C */ lhz r5, 0x1c(r3)
|
||||
/* 803A930C 003A626C 80 83 00 18 */ lwz r4, 0x18(r3)
|
||||
/* 803A9310 003A6270 54 A5 80 1E */ slwi r5, r5, 0x10
|
||||
/* 803A9314 003A6274 7C A5 30 50 */ subf r5, r5, r6
|
||||
/* 803A9318 003A6278 7C 85 23 96 */ divwu r4, r5, r4
|
||||
/* 803A931C 003A627C 7C 84 00 D0 */ neg r4, r4
|
||||
/* 803A9320 003A6280 90 83 00 10 */ stw r4, 0x10(r3)
|
||||
/* 803A9324 003A6284 48 00 01 A8 */ b lbl_803A94CC
|
||||
lbl_803A9328:
|
||||
/* 803A9328 003A6288 A0 83 00 1C */ lhz r4, 0x1c(r3)
|
||||
/* 803A932C 003A628C 28 04 00 00 */ cmplwi r4, 0
|
||||
/* 803A9330 003A6290 41 82 00 24 */ beq lbl_803A9354
|
||||
/* 803A9334 003A6294 38 A0 00 03 */ li r5, 3
|
||||
/* 803A9338 003A6298 38 80 00 00 */ li r4, 0
|
||||
/* 803A933C 003A629C 98 A3 00 01 */ stb r5, 1(r3)
|
||||
/* 803A9340 003A62A0 A0 A3 00 1C */ lhz r5, 0x1c(r3)
|
||||
/* 803A9344 003A62A4 54 A5 80 1E */ slwi r5, r5, 0x10
|
||||
/* 803A9348 003A62A8 90 A3 00 08 */ stw r5, 8(r3)
|
||||
/* 803A934C 003A62AC 90 83 00 10 */ stw r4, 0x10(r3)
|
||||
/* 803A9350 003A62B0 48 00 01 7C */ b lbl_803A94CC
|
||||
lbl_803A9354:
|
||||
/* 803A9354 003A62B4 38 80 00 00 */ li r4, 0
|
||||
/* 803A9358 003A62B8 38 00 00 01 */ li r0, 1
|
||||
/* 803A935C 003A62BC 90 83 00 08 */ stw r4, 8(r3)
|
||||
/* 803A9360 003A62C0 48 00 01 6C */ b lbl_803A94CC
|
||||
lbl_803A9364:
|
||||
/* 803A9364 003A62C4 88 83 00 01 */ lbz r4, 1(r3)
|
||||
/* 803A9368 003A62C8 2C 04 00 02 */ cmpwi r4, 2
|
||||
/* 803A936C 003A62CC 41 82 00 F4 */ beq lbl_803A9460
|
||||
/* 803A9370 003A62D0 40 80 00 14 */ bge lbl_803A9384
|
||||
/* 803A9374 003A62D4 2C 04 00 00 */ cmpwi r4, 0
|
||||
/* 803A9378 003A62D8 41 82 00 18 */ beq lbl_803A9390
|
||||
/* 803A937C 003A62DC 40 80 00 74 */ bge lbl_803A93F0
|
||||
/* 803A9380 003A62E0 48 00 01 4C */ b lbl_803A94CC
|
||||
lbl_803A9384:
|
||||
/* 803A9384 003A62E4 2C 04 00 04 */ cmpwi r4, 4
|
||||
/* 803A9388 003A62E8 41 82 01 38 */ beq lbl_803A94C0
|
||||
/* 803A938C 003A62EC 48 00 01 40 */ b lbl_803A94CC
|
||||
lbl_803A9390:
|
||||
/* 803A9390 003A62F0 80 83 00 14 */ lwz r4, 0x14(r3)
|
||||
/* 803A9394 003A62F4 28 04 00 00 */ cmplwi r4, 0
|
||||
/* 803A9398 003A62F8 90 83 00 04 */ stw r4, 4(r3)
|
||||
/* 803A939C 003A62FC 41 82 00 54 */ beq lbl_803A93F0
|
||||
/* 803A93A0 003A6300 38 80 00 01 */ li r4, 1
|
||||
/* 803A93A4 003A6304 98 83 00 01 */ stb r4, 1(r3)
|
||||
/* 803A93A8 003A6308 88 83 00 26 */ lbz r4, 0x26(r3)
|
||||
/* 803A93AC 003A630C 28 04 00 00 */ cmplwi r4, 0
|
||||
/* 803A93B0 003A6310 40 82 00 20 */ bne lbl_803A93D0
|
||||
/* 803A93B4 003A6314 38 80 00 00 */ li r4, 0
|
||||
/* 803A93B8 003A6318 3C A0 7F FF */ lis r5, 0x7fff
|
||||
/* 803A93BC 003A631C 90 83 00 08 */ stw r4, 8(r3)
|
||||
/* 803A93C0 003A6320 80 83 00 04 */ lwz r4, 4(r3)
|
||||
/* 803A93C4 003A6324 7C 85 23 96 */ divwu r4, r5, r4
|
||||
/* 803A93C8 003A6328 90 83 00 10 */ stw r4, 0x10(r3)
|
||||
/* 803A93CC 003A632C 48 00 01 00 */ b lbl_803A94CC
|
||||
lbl_803A93D0:
|
||||
/* 803A93D0 003A6330 38 80 00 00 */ li r4, 0
|
||||
/* 803A93D4 003A6334 3C A0 00 C1 */ lis r5, 0xc1
|
||||
/* 803A93D8 003A6338 90 83 00 0C */ stw r4, 0xc(r3)
|
||||
/* 803A93DC 003A633C 90 83 00 08 */ stw r4, 8(r3)
|
||||
/* 803A93E0 003A6340 80 83 00 04 */ lwz r4, 4(r3)
|
||||
/* 803A93E4 003A6344 7C 85 23 96 */ divwu r4, r5, r4
|
||||
/* 803A93E8 003A6348 90 83 00 10 */ stw r4, 0x10(r3)
|
||||
/* 803A93EC 003A634C 48 00 00 E0 */ b lbl_803A94CC
|
||||
lbl_803A93F0:
|
||||
/* 803A93F0 003A6350 A0 A3 00 1C */ lhz r5, 0x1c(r3)
|
||||
/* 803A93F4 003A6354 3C 80 15 39 */ lis r4, 0x15390949@ha
|
||||
/* 803A93F8 003A6358 38 C4 09 49 */ addi r6, r4, 0x15390949@l
|
||||
/* 803A93FC 003A635C 80 E3 00 18 */ lwz r7, 0x18(r3)
|
||||
/* 803A9400 003A6360 20 85 00 C1 */ subfic r4, r5, 0xc1
|
||||
/* 803A9404 003A6364 54 84 80 1E */ slwi r4, r4, 0x10
|
||||
/* 803A9408 003A6368 7C 86 20 16 */ mulhwu r4, r6, r4
|
||||
/* 803A940C 003A636C 54 84 E1 3E */ srwi r4, r4, 4
|
||||
/* 803A9410 003A6370 7C 87 21 D6 */ mullw r4, r7, r4
|
||||
/* 803A9414 003A6374 54 84 84 3E */ srwi r4, r4, 0x10
|
||||
/* 803A9418 003A6378 90 83 00 04 */ stw r4, 4(r3)
|
||||
/* 803A941C 003A637C 80 83 00 04 */ lwz r4, 4(r3)
|
||||
/* 803A9420 003A6380 28 04 00 00 */ cmplwi r4, 0
|
||||
/* 803A9424 003A6384 41 82 00 3C */ beq lbl_803A9460
|
||||
/* 803A9428 003A6388 38 80 00 02 */ li r4, 2
|
||||
/* 803A942C 003A638C 3C A0 7F FF */ lis r5, 0x7fff
|
||||
/* 803A9430 003A6390 98 83 00 01 */ stb r4, 1(r3)
|
||||
/* 803A9434 003A6394 3C 80 00 C1 */ lis r4, 0xc1
|
||||
/* 803A9438 003A6398 90 A3 00 08 */ stw r5, 8(r3)
|
||||
/* 803A943C 003A639C 90 83 00 0C */ stw r4, 0xc(r3)
|
||||
/* 803A9440 003A63A0 A0 A3 00 1C */ lhz r5, 0x1c(r3)
|
||||
/* 803A9444 003A63A4 80 83 00 04 */ lwz r4, 4(r3)
|
||||
/* 803A9448 003A63A8 20 A5 00 C1 */ subfic r5, r5, 0xc1
|
||||
/* 803A944C 003A63AC 54 A5 80 1E */ slwi r5, r5, 0x10
|
||||
/* 803A9450 003A63B0 7C 85 23 96 */ divwu r4, r5, r4
|
||||
/* 803A9454 003A63B4 7C 84 00 D0 */ neg r4, r4
|
||||
/* 803A9458 003A63B8 90 83 00 10 */ stw r4, 0x10(r3)
|
||||
/* 803A945C 003A63BC 48 00 00 70 */ b lbl_803A94CC
|
||||
lbl_803A9460:
|
||||
/* 803A9460 003A63C0 A0 83 00 1C */ lhz r4, 0x1c(r3)
|
||||
/* 803A9464 003A63C4 28 04 00 00 */ cmplwi r4, 0
|
||||
/* 803A9468 003A63C8 41 82 00 58 */ beq lbl_803A94C0
|
||||
/* 803A946C 003A63CC 38 A0 00 03 */ li r5, 3
|
||||
/* 803A9470 003A63D0 3C 80 80 3F */ lis r4, lbl_803F3820@ha
|
||||
/* 803A9474 003A63D4 98 A3 00 01 */ stb r5, 1(r3)
|
||||
/* 803A9478 003A63D8 38 A4 38 20 */ addi r5, r4, lbl_803F3820@l
|
||||
/* 803A947C 003A63DC 38 80 00 00 */ li r4, 0
|
||||
/* 803A9480 003A63E0 A0 C3 00 1C */ lhz r6, 0x1c(r3)
|
||||
/* 803A9484 003A63E4 54 C6 80 1E */ slwi r6, r6, 0x10
|
||||
/* 803A9488 003A63E8 90 C3 00 0C */ stw r6, 0xc(r3)
|
||||
/* 803A948C 003A63EC 80 C3 00 0C */ lwz r6, 0xc(r3)
|
||||
/* 803A9490 003A63F0 3C C6 00 01 */ addis r6, r6, 1
|
||||
/* 803A9494 003A63F4 38 C6 80 00 */ addi r6, r6, -32768
|
||||
/* 803A9498 003A63F8 7C C6 86 70 */ srawi r6, r6, 0x10
|
||||
/* 803A949C 003A63FC 20 E6 00 C1 */ subfic r7, r6, 0xc1
|
||||
/* 803A94A0 003A6400 7C E6 FE 70 */ srawi r6, r7, 0x1f
|
||||
/* 803A94A4 003A6404 7C E6 30 78 */ andc r6, r7, r6
|
||||
/* 803A94A8 003A6408 54 C6 08 3C */ slwi r6, r6, 1
|
||||
/* 803A94AC 003A640C 7C A5 32 2E */ lhzx r5, r5, r6
|
||||
/* 803A94B0 003A6410 54 A5 80 1E */ slwi r5, r5, 0x10
|
||||
/* 803A94B4 003A6414 90 A3 00 08 */ stw r5, 8(r3)
|
||||
/* 803A94B8 003A6418 90 83 00 10 */ stw r4, 0x10(r3)
|
||||
/* 803A94BC 003A641C 48 00 00 10 */ b lbl_803A94CC
|
||||
lbl_803A94C0:
|
||||
/* 803A94C0 003A6420 38 80 00 00 */ li r4, 0
|
||||
/* 803A94C4 003A6424 38 00 00 01 */ li r0, 1
|
||||
/* 803A94C8 003A6428 90 83 00 08 */ stw r4, 8(r3)
|
||||
lbl_803A94CC:
|
||||
/* 803A94CC 003A642C 7C 03 03 78 */ mr r3, r0
|
||||
/* 803A94D0 003A6430 4E 80 00 20 */ blr
|
||||
|
||||
.global adsrSetup
|
||||
adsrSetup:
|
||||
/* 803A94D4 003A6434 94 21 FF F0 */ stwu r1, -0x10(r1)
|
||||
/* 803A94D8 003A6438 7C 08 02 A6 */ mflr r0
|
||||
/* 803A94DC 003A643C 90 01 00 14 */ stw r0, 0x14(r1)
|
||||
/* 803A94E0 003A6440 38 00 00 00 */ li r0, 0
|
||||
/* 803A94E4 003A6444 98 03 00 01 */ stb r0, 1(r3)
|
||||
/* 803A94E8 003A6448 4B FF FD 81 */ bl salChangeADSRState
|
||||
/* 803A94EC 003A644C 80 01 00 14 */ lwz r0, 0x14(r1)
|
||||
/* 803A94F0 003A6450 7C 08 03 A6 */ mtlr r0
|
||||
/* 803A94F4 003A6454 38 21 00 10 */ addi r1, r1, 0x10
|
||||
/* 803A94F8 003A6458 4E 80 00 20 */ blr
|
||||
|
||||
.global adsrStartRelease
|
||||
adsrStartRelease:
|
||||
/* 803A94FC 003A645C 94 21 FF E0 */ stwu r1, -0x20(r1)
|
||||
/* 803A9500 003A6460 7C 08 02 A6 */ mflr r0
|
||||
/* 803A9504 003A6464 90 01 00 24 */ stw r0, 0x24(r1)
|
||||
/* 803A9508 003A6468 93 E1 00 1C */ stw r31, 0x1c(r1)
|
||||
/* 803A950C 003A646C 7C 7F 1B 78 */ mr r31, r3
|
||||
/* 803A9510 003A6470 88 03 00 00 */ lbz r0, 0(r3)
|
||||
/* 803A9514 003A6474 2C 00 00 01 */ cmpwi r0, 1
|
||||
/* 803A9518 003A6478 41 82 00 54 */ beq lbl_803A956C
|
||||
/* 803A951C 003A647C 40 80 01 18 */ bge lbl_803A9634
|
||||
/* 803A9520 003A6480 2C 00 00 00 */ cmpwi r0, 0
|
||||
/* 803A9524 003A6484 40 80 00 08 */ bge lbl_803A952C
|
||||
/* 803A9528 003A6488 48 00 01 0C */ b lbl_803A9634
|
||||
lbl_803A952C:
|
||||
/* 803A952C 003A648C 38 00 00 04 */ li r0, 4
|
||||
/* 803A9530 003A6490 28 04 00 00 */ cmplwi r4, 0
|
||||
/* 803A9534 003A6494 98 1F 00 01 */ stb r0, 1(r31)
|
||||
/* 803A9538 003A6498 90 9F 00 04 */ stw r4, 4(r31)
|
||||
/* 803A953C 003A649C 40 82 00 1C */ bne lbl_803A9558
|
||||
/* 803A9540 003A64A0 38 60 00 01 */ li r3, 1
|
||||
/* 803A9544 003A64A4 38 00 00 00 */ li r0, 0
|
||||
/* 803A9548 003A64A8 90 7F 00 04 */ stw r3, 4(r31)
|
||||
/* 803A954C 003A64AC 38 60 00 01 */ li r3, 1
|
||||
/* 803A9550 003A64B0 90 1F 00 10 */ stw r0, 0x10(r31)
|
||||
/* 803A9554 003A64B4 48 00 00 E4 */ b lbl_803A9638
|
||||
lbl_803A9558:
|
||||
/* 803A9558 003A64B8 80 1F 00 08 */ lwz r0, 8(r31)
|
||||
/* 803A955C 003A64BC 7C 00 23 96 */ divwu r0, r0, r4
|
||||
/* 803A9560 003A64C0 7C 00 00 D0 */ neg r0, r0
|
||||
/* 803A9564 003A64C4 90 1F 00 10 */ stw r0, 0x10(r31)
|
||||
/* 803A9568 003A64C8 48 00 00 CC */ b lbl_803A9634
|
||||
lbl_803A956C:
|
||||
/* 803A956C 003A64CC 88 1F 00 26 */ lbz r0, 0x26(r31)
|
||||
/* 803A9570 003A64D0 28 00 00 00 */ cmplwi r0, 0
|
||||
/* 803A9574 003A64D4 40 82 00 30 */ bne lbl_803A95A4
|
||||
/* 803A9578 003A64D8 88 1F 00 01 */ lbz r0, 1(r31)
|
||||
/* 803A957C 003A64DC 28 00 00 01 */ cmplwi r0, 1
|
||||
/* 803A9580 003A64E0 40 82 00 24 */ bne lbl_803A95A4
|
||||
/* 803A9584 003A64E4 80 1F 00 08 */ lwz r0, 8(r31)
|
||||
/* 803A9588 003A64E8 3C 60 80 3F */ lis r3, lbl_803F39A4@ha
|
||||
/* 803A958C 003A64EC 38 63 39 A4 */ addi r3, r3, lbl_803F39A4@l
|
||||
/* 803A9590 003A64F0 7C 00 AE 70 */ srawi r0, r0, 0x15
|
||||
/* 803A9594 003A64F4 7C 03 00 AE */ lbzx r0, r3, r0
|
||||
/* 803A9598 003A64F8 20 00 00 C1 */ subfic r0, r0, 0xc1
|
||||
/* 803A959C 003A64FC 54 00 80 1E */ slwi r0, r0, 0x10
|
||||
/* 803A95A0 003A6500 90 1F 00 0C */ stw r0, 0xc(r31)
|
||||
lbl_803A95A4:
|
||||
/* 803A95A4 003A6504 80 7F 00 0C */ lwz r3, 0xc(r31)
|
||||
/* 803A95A8 003A6508 3C 00 43 30 */ lis r0, 0x4330
|
||||
/* 803A95AC 003A650C 90 01 00 08 */ stw r0, 8(r1)
|
||||
/* 803A95B0 003A6510 6C 63 80 00 */ xoris r3, r3, 0x8000
|
||||
/* 803A95B4 003A6514 C8 22 D5 B8 */ lfd f1, lbl_805AF2D8@sda21(r2)
|
||||
/* 803A95B8 003A6518 90 61 00 0C */ stw r3, 0xc(r1)
|
||||
/* 803A95BC 003A651C C0 62 D5 C0 */ lfs f3, lbl_805AF2E0@sda21(r2)
|
||||
/* 803A95C0 003A6520 C8 01 00 08 */ lfd f0, 8(r1)
|
||||
/* 803A95C4 003A6524 90 81 00 14 */ stw r4, 0x14(r1)
|
||||
/* 803A95C8 003A6528 EC 40 08 28 */ fsubs f2, f0, f1
|
||||
/* 803A95CC 003A652C C8 22 D5 C8 */ lfd f1, lbl_805AF2E8@sda21(r2)
|
||||
/* 803A95D0 003A6530 90 01 00 10 */ stw r0, 0x10(r1)
|
||||
/* 803A95D4 003A6534 C8 01 00 10 */ lfd f0, 0x10(r1)
|
||||
/* 803A95D8 003A6538 EC 43 00 B2 */ fmuls f2, f3, f2
|
||||
/* 803A95DC 003A653C EC 00 08 28 */ fsubs f0, f0, f1
|
||||
/* 803A95E0 003A6540 EC 22 00 32 */ fmuls f1, f2, f0
|
||||
/* 803A95E4 003A6544 4B FE 03 71 */ bl __cvt_fp2unsigned
|
||||
/* 803A95E8 003A6548 54 63 A3 3E */ srwi r3, r3, 0xc
|
||||
/* 803A95EC 003A654C 38 00 00 04 */ li r0, 4
|
||||
/* 803A95F0 003A6550 90 7F 00 04 */ stw r3, 4(r31)
|
||||
/* 803A95F4 003A6554 98 1F 00 01 */ stb r0, 1(r31)
|
||||
/* 803A95F8 003A6558 80 7F 00 04 */ lwz r3, 4(r31)
|
||||
/* 803A95FC 003A655C 28 03 00 00 */ cmplwi r3, 0
|
||||
/* 803A9600 003A6560 40 82 00 24 */ bne lbl_803A9624
|
||||
/* 803A9604 003A6564 38 60 00 01 */ li r3, 1
|
||||
/* 803A9608 003A6568 38 00 00 00 */ li r0, 0
|
||||
/* 803A960C 003A656C 90 7F 00 04 */ stw r3, 4(r31)
|
||||
/* 803A9610 003A6570 38 60 00 01 */ li r3, 1
|
||||
/* 803A9614 003A6574 90 1F 00 08 */ stw r0, 8(r31)
|
||||
/* 803A9618 003A6578 90 1F 00 0C */ stw r0, 0xc(r31)
|
||||
/* 803A961C 003A657C 90 1F 00 10 */ stw r0, 0x10(r31)
|
||||
/* 803A9620 003A6580 48 00 00 18 */ b lbl_803A9638
|
||||
lbl_803A9624:
|
||||
/* 803A9624 003A6584 80 1F 00 0C */ lwz r0, 0xc(r31)
|
||||
/* 803A9628 003A6588 7C 00 1B 96 */ divwu r0, r0, r3
|
||||
/* 803A962C 003A658C 7C 00 00 D0 */ neg r0, r0
|
||||
/* 803A9630 003A6590 90 1F 00 10 */ stw r0, 0x10(r31)
|
||||
lbl_803A9634:
|
||||
/* 803A9634 003A6594 38 60 00 00 */ li r3, 0
|
||||
lbl_803A9638:
|
||||
/* 803A9638 003A6598 80 01 00 24 */ lwz r0, 0x24(r1)
|
||||
/* 803A963C 003A659C 83 E1 00 1C */ lwz r31, 0x1c(r1)
|
||||
/* 803A9640 003A65A0 7C 08 03 A6 */ mtlr r0
|
||||
/* 803A9644 003A65A4 38 21 00 20 */ addi r1, r1, 0x20
|
||||
/* 803A9648 003A65A8 4E 80 00 20 */ blr
|
||||
|
||||
.global adsrRelease
|
||||
adsrRelease:
|
||||
/* 803A964C 003A65AC 94 21 FF E0 */ stwu r1, -0x20(r1)
|
||||
/* 803A9650 003A65B0 7C 08 02 A6 */ mflr r0
|
||||
/* 803A9654 003A65B4 90 01 00 24 */ stw r0, 0x24(r1)
|
||||
/* 803A9658 003A65B8 93 E1 00 1C */ stw r31, 0x1c(r1)
|
||||
/* 803A965C 003A65BC 7C 7F 1B 78 */ mr r31, r3
|
||||
/* 803A9660 003A65C0 88 03 00 00 */ lbz r0, 0(r3)
|
||||
/* 803A9664 003A65C4 2C 00 00 02 */ cmpwi r0, 2
|
||||
/* 803A9668 003A65C8 40 80 01 34 */ bge lbl_803A979C
|
||||
/* 803A966C 003A65CC 2C 00 00 00 */ cmpwi r0, 0
|
||||
/* 803A9670 003A65D0 40 80 00 08 */ bge lbl_803A9678
|
||||
/* 803A9674 003A65D4 48 00 01 28 */ b lbl_803A979C
|
||||
lbl_803A9678:
|
||||
/* 803A9678 003A65D8 2C 00 00 01 */ cmpwi r0, 1
|
||||
/* 803A967C 003A65DC 80 9F 00 20 */ lwz r4, 0x20(r31)
|
||||
/* 803A9680 003A65E0 41 82 00 50 */ beq lbl_803A96D0
|
||||
/* 803A9684 003A65E4 40 80 01 10 */ bge lbl_803A9794
|
||||
/* 803A9688 003A65E8 2C 00 00 00 */ cmpwi r0, 0
|
||||
/* 803A968C 003A65EC 40 80 00 08 */ bge lbl_803A9694
|
||||
/* 803A9690 003A65F0 48 00 01 04 */ b lbl_803A9794
|
||||
lbl_803A9694:
|
||||
/* 803A9694 003A65F4 38 00 00 04 */ li r0, 4
|
||||
/* 803A9698 003A65F8 28 04 00 00 */ cmplwi r4, 0
|
||||
/* 803A969C 003A65FC 98 1F 00 01 */ stb r0, 1(r31)
|
||||
/* 803A96A0 003A6600 90 9F 00 04 */ stw r4, 4(r31)
|
||||
/* 803A96A4 003A6604 40 82 00 18 */ bne lbl_803A96BC
|
||||
/* 803A96A8 003A6608 38 60 00 01 */ li r3, 1
|
||||
/* 803A96AC 003A660C 38 00 00 00 */ li r0, 0
|
||||
/* 803A96B0 003A6610 90 7F 00 04 */ stw r3, 4(r31)
|
||||
/* 803A96B4 003A6614 90 1F 00 10 */ stw r0, 0x10(r31)
|
||||
/* 803A96B8 003A6618 48 00 00 E8 */ b lbl_803A97A0
|
||||
lbl_803A96BC:
|
||||
/* 803A96BC 003A661C 80 1F 00 08 */ lwz r0, 8(r31)
|
||||
/* 803A96C0 003A6620 7C 00 23 96 */ divwu r0, r0, r4
|
||||
/* 803A96C4 003A6624 7C 00 00 D0 */ neg r0, r0
|
||||
/* 803A96C8 003A6628 90 1F 00 10 */ stw r0, 0x10(r31)
|
||||
/* 803A96CC 003A662C 48 00 00 C8 */ b lbl_803A9794
|
||||
lbl_803A96D0:
|
||||
/* 803A96D0 003A6630 88 1F 00 26 */ lbz r0, 0x26(r31)
|
||||
/* 803A96D4 003A6634 28 00 00 00 */ cmplwi r0, 0
|
||||
/* 803A96D8 003A6638 40 82 00 30 */ bne lbl_803A9708
|
||||
/* 803A96DC 003A663C 88 1F 00 01 */ lbz r0, 1(r31)
|
||||
/* 803A96E0 003A6640 28 00 00 01 */ cmplwi r0, 1
|
||||
/* 803A96E4 003A6644 40 82 00 24 */ bne lbl_803A9708
|
||||
/* 803A96E8 003A6648 80 1F 00 08 */ lwz r0, 8(r31)
|
||||
/* 803A96EC 003A664C 3C 60 80 3F */ lis r3, lbl_803F39A4@ha
|
||||
/* 803A96F0 003A6650 38 63 39 A4 */ addi r3, r3, lbl_803F39A4@l
|
||||
/* 803A96F4 003A6654 7C 00 AE 70 */ srawi r0, r0, 0x15
|
||||
/* 803A96F8 003A6658 7C 03 00 AE */ lbzx r0, r3, r0
|
||||
/* 803A96FC 003A665C 20 00 00 C1 */ subfic r0, r0, 0xc1
|
||||
/* 803A9700 003A6660 54 00 80 1E */ slwi r0, r0, 0x10
|
||||
/* 803A9704 003A6664 90 1F 00 0C */ stw r0, 0xc(r31)
|
||||
lbl_803A9708:
|
||||
/* 803A9708 003A6668 80 7F 00 0C */ lwz r3, 0xc(r31)
|
||||
/* 803A970C 003A666C 3C 00 43 30 */ lis r0, 0x4330
|
||||
/* 803A9710 003A6670 90 01 00 08 */ stw r0, 8(r1)
|
||||
/* 803A9714 003A6674 6C 63 80 00 */ xoris r3, r3, 0x8000
|
||||
/* 803A9718 003A6678 C8 22 D5 B8 */ lfd f1, lbl_805AF2D8@sda21(r2)
|
||||
/* 803A971C 003A667C 90 61 00 0C */ stw r3, 0xc(r1)
|
||||
/* 803A9720 003A6680 C0 62 D5 C0 */ lfs f3, lbl_805AF2E0@sda21(r2)
|
||||
/* 803A9724 003A6684 C8 01 00 08 */ lfd f0, 8(r1)
|
||||
/* 803A9728 003A6688 90 81 00 14 */ stw r4, 0x14(r1)
|
||||
/* 803A972C 003A668C EC 40 08 28 */ fsubs f2, f0, f1
|
||||
/* 803A9730 003A6690 C8 22 D5 C8 */ lfd f1, lbl_805AF2E8@sda21(r2)
|
||||
/* 803A9734 003A6694 90 01 00 10 */ stw r0, 0x10(r1)
|
||||
/* 803A9738 003A6698 C8 01 00 10 */ lfd f0, 0x10(r1)
|
||||
/* 803A973C 003A669C EC 43 00 B2 */ fmuls f2, f3, f2
|
||||
/* 803A9740 003A66A0 EC 00 08 28 */ fsubs f0, f0, f1
|
||||
/* 803A9744 003A66A4 EC 22 00 32 */ fmuls f1, f2, f0
|
||||
/* 803A9748 003A66A8 4B FE 02 0D */ bl __cvt_fp2unsigned
|
||||
/* 803A974C 003A66AC 54 63 A3 3E */ srwi r3, r3, 0xc
|
||||
/* 803A9750 003A66B0 38 00 00 04 */ li r0, 4
|
||||
/* 803A9754 003A66B4 90 7F 00 04 */ stw r3, 4(r31)
|
||||
/* 803A9758 003A66B8 98 1F 00 01 */ stb r0, 1(r31)
|
||||
/* 803A975C 003A66BC 80 7F 00 04 */ lwz r3, 4(r31)
|
||||
/* 803A9760 003A66C0 28 03 00 00 */ cmplwi r3, 0
|
||||
/* 803A9764 003A66C4 40 82 00 20 */ bne lbl_803A9784
|
||||
/* 803A9768 003A66C8 38 60 00 01 */ li r3, 1
|
||||
/* 803A976C 003A66CC 38 00 00 00 */ li r0, 0
|
||||
/* 803A9770 003A66D0 90 7F 00 04 */ stw r3, 4(r31)
|
||||
/* 803A9774 003A66D4 90 1F 00 08 */ stw r0, 8(r31)
|
||||
/* 803A9778 003A66D8 90 1F 00 0C */ stw r0, 0xc(r31)
|
||||
/* 803A977C 003A66DC 90 1F 00 10 */ stw r0, 0x10(r31)
|
||||
/* 803A9780 003A66E0 48 00 00 20 */ b lbl_803A97A0
|
||||
lbl_803A9784:
|
||||
/* 803A9784 003A66E4 80 1F 00 0C */ lwz r0, 0xc(r31)
|
||||
/* 803A9788 003A66E8 7C 00 1B 96 */ divwu r0, r0, r3
|
||||
/* 803A978C 003A66EC 7C 00 00 D0 */ neg r0, r0
|
||||
/* 803A9790 003A66F0 90 1F 00 10 */ stw r0, 0x10(r31)
|
||||
lbl_803A9794:
|
||||
/* 803A9794 003A66F4 38 60 00 00 */ li r3, 0
|
||||
/* 803A9798 003A66F8 48 00 00 08 */ b lbl_803A97A0
|
||||
lbl_803A979C:
|
||||
/* 803A979C 003A66FC 38 60 00 00 */ li r3, 0
|
||||
lbl_803A97A0:
|
||||
/* 803A97A0 003A6700 80 01 00 24 */ lwz r0, 0x24(r1)
|
||||
/* 803A97A4 003A6704 83 E1 00 1C */ lwz r31, 0x1c(r1)
|
||||
/* 803A97A8 003A6708 7C 08 03 A6 */ mtlr r0
|
||||
/* 803A97AC 003A670C 38 21 00 20 */ addi r1, r1, 0x20
|
||||
/* 803A97B0 003A6710 4E 80 00 20 */ blr
|
||||
|
||||
.global adsrHandle
|
||||
adsrHandle:
|
||||
/* 803A97B4 003A6714 94 21 FF F0 */ stwu r1, -0x10(r1)
|
||||
/* 803A97B8 003A6718 7C 08 02 A6 */ mflr r0
|
||||
/* 803A97BC 003A671C 90 01 00 14 */ stw r0, 0x14(r1)
|
||||
/* 803A97C0 003A6720 38 00 00 00 */ li r0, 0
|
||||
/* 803A97C4 003A6724 88 C3 00 00 */ lbz r6, 0(r3)
|
||||
/* 803A97C8 003A6728 2C 06 00 01 */ cmpwi r6, 1
|
||||
/* 803A97CC 003A672C 41 82 00 94 */ beq lbl_803A9860
|
||||
/* 803A97D0 003A6730 40 80 01 68 */ bge lbl_803A9938
|
||||
/* 803A97D4 003A6734 2C 06 00 00 */ cmpwi r6, 0
|
||||
/* 803A97D8 003A6738 40 80 00 08 */ bge lbl_803A97E0
|
||||
/* 803A97DC 003A673C 48 00 01 5C */ b lbl_803A9938
|
||||
lbl_803A97E0:
|
||||
/* 803A97E0 003A6740 88 C3 00 01 */ lbz r6, 1(r3)
|
||||
/* 803A97E4 003A6744 28 06 00 03 */ cmplwi r6, 3
|
||||
/* 803A97E8 003A6748 41 82 00 60 */ beq lbl_803A9848
|
||||
/* 803A97EC 003A674C 81 03 00 08 */ lwz r8, 8(r3)
|
||||
/* 803A97F0 003A6750 80 E3 00 10 */ lwz r7, 0x10(r3)
|
||||
/* 803A97F4 003A6754 7D 06 86 70 */ srawi r6, r8, 0x10
|
||||
/* 803A97F8 003A6758 7C E8 3A 14 */ add r7, r8, r7
|
||||
/* 803A97FC 003A675C 90 E3 00 08 */ stw r7, 8(r3)
|
||||
/* 803A9800 003A6760 B0 C4 00 00 */ sth r6, 0(r4)
|
||||
/* 803A9804 003A6764 80 83 00 10 */ lwz r4, 0x10(r3)
|
||||
/* 803A9808 003A6768 2C 04 00 00 */ cmpwi r4, 0
|
||||
/* 803A980C 003A676C 41 80 00 10 */ blt lbl_803A981C
|
||||
/* 803A9810 003A6770 7C 84 AE 70 */ srawi r4, r4, 0x15
|
||||
/* 803A9814 003A6774 B0 85 00 00 */ sth r4, 0(r5)
|
||||
/* 803A9818 003A6778 48 00 00 14 */ b lbl_803A982C
|
||||
lbl_803A981C:
|
||||
/* 803A981C 003A677C 7C 84 00 D0 */ neg r4, r4
|
||||
/* 803A9820 003A6780 7C 84 AE 70 */ srawi r4, r4, 0x15
|
||||
/* 803A9824 003A6784 7C 84 00 D0 */ neg r4, r4
|
||||
/* 803A9828 003A6788 B0 85 00 00 */ sth r4, 0(r5)
|
||||
lbl_803A982C:
|
||||
/* 803A982C 003A678C 80 83 00 04 */ lwz r4, 4(r3)
|
||||
/* 803A9830 003A6790 34 84 FF FF */ addic. r4, r4, -1
|
||||
/* 803A9834 003A6794 90 83 00 04 */ stw r4, 4(r3)
|
||||
/* 803A9838 003A6798 40 82 01 00 */ bne lbl_803A9938
|
||||
/* 803A983C 003A679C 4B FF FA 2D */ bl salChangeADSRState
|
||||
/* 803A9840 003A67A0 7C 60 1B 78 */ mr r0, r3
|
||||
/* 803A9844 003A67A4 48 00 00 F4 */ b lbl_803A9938
|
||||
lbl_803A9848:
|
||||
/* 803A9848 003A67A8 80 C3 00 08 */ lwz r6, 8(r3)
|
||||
/* 803A984C 003A67AC 38 60 00 00 */ li r3, 0
|
||||
/* 803A9850 003A67B0 7C C6 86 70 */ srawi r6, r6, 0x10
|
||||
/* 803A9854 003A67B4 B0 C4 00 00 */ sth r6, 0(r4)
|
||||
/* 803A9858 003A67B8 B0 65 00 00 */ sth r3, 0(r5)
|
||||
/* 803A985C 003A67BC 48 00 00 DC */ b lbl_803A9938
|
||||
lbl_803A9860:
|
||||
/* 803A9860 003A67C0 88 E3 00 01 */ lbz r7, 1(r3)
|
||||
/* 803A9864 003A67C4 28 07 00 03 */ cmplwi r7, 3
|
||||
/* 803A9868 003A67C8 41 82 00 BC */ beq lbl_803A9924
|
||||
/* 803A986C 003A67CC 88 C3 00 26 */ lbz r6, 0x26(r3)
|
||||
/* 803A9870 003A67D0 81 23 00 08 */ lwz r9, 8(r3)
|
||||
/* 803A9874 003A67D4 28 06 00 00 */ cmplwi r6, 0
|
||||
/* 803A9878 003A67D8 40 82 00 1C */ bne lbl_803A9894
|
||||
/* 803A987C 003A67DC 28 07 00 01 */ cmplwi r7, 1
|
||||
/* 803A9880 003A67E0 40 82 00 14 */ bne lbl_803A9894
|
||||
/* 803A9884 003A67E4 80 C3 00 10 */ lwz r6, 0x10(r3)
|
||||
/* 803A9888 003A67E8 7C C9 32 14 */ add r6, r9, r6
|
||||
/* 803A988C 003A67EC 90 C3 00 08 */ stw r6, 8(r3)
|
||||
/* 803A9890 003A67F0 48 00 00 48 */ b lbl_803A98D8
|
||||
lbl_803A9894:
|
||||
/* 803A9894 003A67F4 81 03 00 0C */ lwz r8, 0xc(r3)
|
||||
/* 803A9898 003A67F8 3C C0 80 3F */ lis r6, lbl_803F3820@ha
|
||||
/* 803A989C 003A67FC 80 E3 00 10 */ lwz r7, 0x10(r3)
|
||||
/* 803A98A0 003A6800 38 C6 38 20 */ addi r6, r6, lbl_803F3820@l
|
||||
/* 803A98A4 003A6804 7C E8 3A 14 */ add r7, r8, r7
|
||||
/* 803A98A8 003A6808 90 E3 00 0C */ stw r7, 0xc(r3)
|
||||
/* 803A98AC 003A680C 80 E3 00 0C */ lwz r7, 0xc(r3)
|
||||
/* 803A98B0 003A6810 3C E7 00 01 */ addis r7, r7, 1
|
||||
/* 803A98B4 003A6814 38 E7 80 00 */ addi r7, r7, -32768
|
||||
/* 803A98B8 003A6818 7C E7 86 70 */ srawi r7, r7, 0x10
|
||||
/* 803A98BC 003A681C 21 07 00 C1 */ subfic r8, r7, 0xc1
|
||||
/* 803A98C0 003A6820 7D 07 FE 70 */ srawi r7, r8, 0x1f
|
||||
/* 803A98C4 003A6824 7D 07 38 78 */ andc r7, r8, r7
|
||||
/* 803A98C8 003A6828 54 E7 08 3C */ slwi r7, r7, 1
|
||||
/* 803A98CC 003A682C 7C C6 3A 2E */ lhzx r6, r6, r7
|
||||
/* 803A98D0 003A6830 54 C6 80 1E */ slwi r6, r6, 0x10
|
||||
/* 803A98D4 003A6834 90 C3 00 08 */ stw r6, 8(r3)
|
||||
lbl_803A98D8:
|
||||
/* 803A98D8 003A6838 7D 26 86 70 */ srawi r6, r9, 0x10
|
||||
/* 803A98DC 003A683C B0 C4 00 00 */ sth r6, 0(r4)
|
||||
/* 803A98E0 003A6840 80 83 00 08 */ lwz r4, 8(r3)
|
||||
/* 803A98E4 003A6844 7C 89 20 51 */ subf. r4, r9, r4
|
||||
/* 803A98E8 003A6848 41 80 00 10 */ blt lbl_803A98F8
|
||||
/* 803A98EC 003A684C 7C 84 AE 70 */ srawi r4, r4, 0x15
|
||||
/* 803A98F0 003A6850 B0 85 00 00 */ sth r4, 0(r5)
|
||||
/* 803A98F4 003A6854 48 00 00 14 */ b lbl_803A9908
|
||||
lbl_803A98F8:
|
||||
/* 803A98F8 003A6858 7C 84 00 D0 */ neg r4, r4
|
||||
/* 803A98FC 003A685C 7C 84 AE 70 */ srawi r4, r4, 0x15
|
||||
/* 803A9900 003A6860 7C 84 00 D0 */ neg r4, r4
|
||||
/* 803A9904 003A6864 B0 85 00 00 */ sth r4, 0(r5)
|
||||
lbl_803A9908:
|
||||
/* 803A9908 003A6868 80 83 00 04 */ lwz r4, 4(r3)
|
||||
/* 803A990C 003A686C 34 84 FF FF */ addic. r4, r4, -1
|
||||
/* 803A9910 003A6870 90 83 00 04 */ stw r4, 4(r3)
|
||||
/* 803A9914 003A6874 40 82 00 24 */ bne lbl_803A9938
|
||||
/* 803A9918 003A6878 4B FF F9 51 */ bl salChangeADSRState
|
||||
/* 803A991C 003A687C 7C 60 1B 78 */ mr r0, r3
|
||||
/* 803A9920 003A6880 48 00 00 18 */ b lbl_803A9938
|
||||
lbl_803A9924:
|
||||
/* 803A9924 003A6884 80 C3 00 08 */ lwz r6, 8(r3)
|
||||
/* 803A9928 003A6888 38 60 00 00 */ li r3, 0
|
||||
/* 803A992C 003A688C 7C C6 86 70 */ srawi r6, r6, 0x10
|
||||
/* 803A9930 003A6890 B0 C4 00 00 */ sth r6, 0(r4)
|
||||
/* 803A9934 003A6894 B0 65 00 00 */ sth r3, 0(r5)
|
||||
lbl_803A9938:
|
||||
/* 803A9938 003A6898 7C 03 03 78 */ mr r3, r0
|
||||
/* 803A993C 003A689C 80 01 00 14 */ lwz r0, 0x14(r1)
|
||||
/* 803A9940 003A68A0 7C 08 03 A6 */ mtlr r0
|
||||
/* 803A9944 003A68A4 38 21 00 10 */ addi r1, r1, 0x10
|
||||
/* 803A9948 003A68A8 4E 80 00 20 */ blr
|
||||
|
||||
.global adsrHandleLowPrecision
|
||||
adsrHandleLowPrecision:
|
||||
/* 803A994C 003A68AC 94 21 FF E0 */ stwu r1, -0x20(r1)
|
||||
/* 803A9950 003A68B0 7C 08 02 A6 */ mflr r0
|
||||
/* 803A9954 003A68B4 90 01 00 24 */ stw r0, 0x24(r1)
|
||||
/* 803A9958 003A68B8 93 E1 00 1C */ stw r31, 0x1c(r1)
|
||||
/* 803A995C 003A68BC 3B E0 00 00 */ li r31, 0
|
||||
/* 803A9960 003A68C0 93 C1 00 18 */ stw r30, 0x18(r1)
|
||||
/* 803A9964 003A68C4 7C BE 2B 78 */ mr r30, r5
|
||||
/* 803A9968 003A68C8 93 A1 00 14 */ stw r29, 0x14(r1)
|
||||
/* 803A996C 003A68CC 7C 9D 23 78 */ mr r29, r4
|
||||
/* 803A9970 003A68D0 93 81 00 10 */ stw r28, 0x10(r1)
|
||||
/* 803A9974 003A68D4 7C 7C 1B 78 */ mr r28, r3
|
||||
/* 803A9978 003A68D8 48 00 00 28 */ b lbl_803A99A0
|
||||
lbl_803A997C:
|
||||
/* 803A997C 003A68DC 7F 83 E3 78 */ mr r3, r28
|
||||
/* 803A9980 003A68E0 7F A4 EB 78 */ mr r4, r29
|
||||
/* 803A9984 003A68E4 7F C5 F3 78 */ mr r5, r30
|
||||
/* 803A9988 003A68E8 4B FF FE 2D */ bl adsrHandle
|
||||
/* 803A998C 003A68EC 28 03 00 00 */ cmplwi r3, 0
|
||||
/* 803A9990 003A68F0 41 82 00 0C */ beq lbl_803A999C
|
||||
/* 803A9994 003A68F4 38 60 00 01 */ li r3, 1
|
||||
/* 803A9998 003A68F8 48 00 00 18 */ b lbl_803A99B0
|
||||
lbl_803A999C:
|
||||
/* 803A999C 003A68FC 3B FF 00 01 */ addi r31, r31, 1
|
||||
lbl_803A99A0:
|
||||
/* 803A99A0 003A6900 57 E0 06 3E */ clrlwi r0, r31, 0x18
|
||||
/* 803A99A4 003A6904 28 00 00 0F */ cmplwi r0, 0xf
|
||||
/* 803A99A8 003A6908 41 80 FF D4 */ blt lbl_803A997C
|
||||
/* 803A99AC 003A690C 38 60 00 00 */ li r3, 0
|
||||
lbl_803A99B0:
|
||||
/* 803A99B0 003A6910 80 01 00 24 */ lwz r0, 0x24(r1)
|
||||
/* 803A99B4 003A6914 83 E1 00 1C */ lwz r31, 0x1c(r1)
|
||||
/* 803A99B8 003A6918 83 C1 00 18 */ lwz r30, 0x18(r1)
|
||||
/* 803A99BC 003A691C 83 A1 00 14 */ lwz r29, 0x14(r1)
|
||||
/* 803A99C0 003A6920 83 81 00 10 */ lwz r28, 0x10(r1)
|
||||
/* 803A99C4 003A6924 7C 08 03 A6 */ mtlr r0
|
||||
/* 803A99C8 003A6928 38 21 00 20 */ addi r1, r1, 0x20
|
||||
/* 803A99CC 003A692C 4E 80 00 20 */ blr
|
|
@ -0,0 +1,266 @@
|
|||
.include "macros.inc"
|
||||
|
||||
.section .text, "ax"
|
||||
|
||||
.global vsInit
|
||||
vsInit:
|
||||
/* 803A99D0 003A6930 3C 60 80 56 */ lis r3, lbl_8055E310@ha
|
||||
/* 803A99D4 003A6934 38 80 00 00 */ li r4, 0
|
||||
/* 803A99D8 003A6938 38 A3 E3 10 */ addi r5, r3, lbl_8055E310@l
|
||||
/* 803A99DC 003A693C 38 00 00 02 */ li r0, 2
|
||||
/* 803A99E0 003A6940 98 85 00 00 */ stb r4, 0(r5)
|
||||
/* 803A99E4 003A6944 38 60 00 FF */ li r3, 0xff
|
||||
/* 803A99E8 003A6948 7C 09 03 A6 */ mtctr r0
|
||||
lbl_803A99EC:
|
||||
/* 803A99EC 003A694C 98 65 09 08 */ stb r3, 0x908(r5)
|
||||
/* 803A99F0 003A6950 98 65 09 09 */ stb r3, 0x909(r5)
|
||||
/* 803A99F4 003A6954 98 65 09 0A */ stb r3, 0x90a(r5)
|
||||
/* 803A99F8 003A6958 98 65 09 0B */ stb r3, 0x90b(r5)
|
||||
/* 803A99FC 003A695C 98 65 09 0C */ stb r3, 0x90c(r5)
|
||||
/* 803A9A00 003A6960 98 65 09 0D */ stb r3, 0x90d(r5)
|
||||
/* 803A9A04 003A6964 98 65 09 0E */ stb r3, 0x90e(r5)
|
||||
/* 803A9A08 003A6968 98 65 09 0F */ stb r3, 0x90f(r5)
|
||||
/* 803A9A0C 003A696C 98 65 09 10 */ stb r3, 0x910(r5)
|
||||
/* 803A9A10 003A6970 98 65 09 11 */ stb r3, 0x911(r5)
|
||||
/* 803A9A14 003A6974 98 65 09 12 */ stb r3, 0x912(r5)
|
||||
/* 803A9A18 003A6978 98 65 09 13 */ stb r3, 0x913(r5)
|
||||
/* 803A9A1C 003A697C 98 65 09 14 */ stb r3, 0x914(r5)
|
||||
/* 803A9A20 003A6980 98 65 09 15 */ stb r3, 0x915(r5)
|
||||
/* 803A9A24 003A6984 98 65 09 16 */ stb r3, 0x916(r5)
|
||||
/* 803A9A28 003A6988 98 65 09 17 */ stb r3, 0x917(r5)
|
||||
/* 803A9A2C 003A698C 98 65 09 18 */ stb r3, 0x918(r5)
|
||||
/* 803A9A30 003A6990 98 65 09 19 */ stb r3, 0x919(r5)
|
||||
/* 803A9A34 003A6994 98 65 09 1A */ stb r3, 0x91a(r5)
|
||||
/* 803A9A38 003A6998 98 65 09 1B */ stb r3, 0x91b(r5)
|
||||
/* 803A9A3C 003A699C 98 65 09 1C */ stb r3, 0x91c(r5)
|
||||
/* 803A9A40 003A69A0 98 65 09 1D */ stb r3, 0x91d(r5)
|
||||
/* 803A9A44 003A69A4 98 65 09 1E */ stb r3, 0x91e(r5)
|
||||
/* 803A9A48 003A69A8 98 65 09 1F */ stb r3, 0x91f(r5)
|
||||
/* 803A9A4C 003A69AC 98 65 09 20 */ stb r3, 0x920(r5)
|
||||
/* 803A9A50 003A69B0 98 65 09 21 */ stb r3, 0x921(r5)
|
||||
/* 803A9A54 003A69B4 98 65 09 22 */ stb r3, 0x922(r5)
|
||||
/* 803A9A58 003A69B8 98 65 09 23 */ stb r3, 0x923(r5)
|
||||
/* 803A9A5C 003A69BC 98 65 09 24 */ stb r3, 0x924(r5)
|
||||
/* 803A9A60 003A69C0 98 65 09 25 */ stb r3, 0x925(r5)
|
||||
/* 803A9A64 003A69C4 98 65 09 26 */ stb r3, 0x926(r5)
|
||||
/* 803A9A68 003A69C8 98 65 09 27 */ stb r3, 0x927(r5)
|
||||
/* 803A9A6C 003A69CC 38 A5 00 20 */ addi r5, r5, 0x20
|
||||
/* 803A9A70 003A69D0 42 00 FF 7C */ bdnz lbl_803A99EC
|
||||
/* 803A9A74 003A69D4 3C 60 80 56 */ lis r3, lbl_8055E310@ha
|
||||
/* 803A9A78 003A69D8 38 00 00 00 */ li r0, 0
|
||||
/* 803A9A7C 003A69DC 38 63 E3 10 */ addi r3, r3, lbl_8055E310@l
|
||||
/* 803A9A80 003A69E0 B0 03 09 48 */ sth r0, 0x948(r3)
|
||||
/* 803A9A84 003A69E4 90 03 09 4C */ stw r0, 0x94c(r3)
|
||||
/* 803A9A88 003A69E8 4E 80 00 20 */ blr
|
||||
|
||||
.global sub_803a9a8c
|
||||
sub_803a9a8c:
|
||||
/* 803A9A8C 003A69EC 94 21 FF E0 */ stwu r1, -0x20(r1)
|
||||
/* 803A9A90 003A69F0 7C 08 02 A6 */ mflr r0
|
||||
/* 803A9A94 003A69F4 39 20 00 00 */ li r9, 0
|
||||
/* 803A9A98 003A69F8 38 A0 00 00 */ li r5, 0
|
||||
/* 803A9A9C 003A69FC 90 01 00 24 */ stw r0, 0x24(r1)
|
||||
/* 803A9AA0 003A6A00 38 80 00 FF */ li r4, 0xff
|
||||
/* 803A9AA4 003A6A04 93 E1 00 1C */ stw r31, 0x1c(r1)
|
||||
/* 803A9AA8 003A6A08 93 C1 00 18 */ stw r30, 0x18(r1)
|
||||
/* 803A9AAC 003A6A0C 93 A1 00 14 */ stw r29, 0x14(r1)
|
||||
/* 803A9AB0 003A6A10 7C 7D 1B 78 */ mr r29, r3
|
||||
/* 803A9AB4 003A6A14 3C 60 80 56 */ lis r3, lbl_8055E310@ha
|
||||
/* 803A9AB8 003A6A18 93 81 00 10 */ stw r28, 0x10(r1)
|
||||
/* 803A9ABC 003A6A1C 38 E3 E3 10 */ addi r7, r3, lbl_8055E310@l
|
||||
/* 803A9AC0 003A6A20 57 A6 06 3E */ clrlwi r6, r29, 0x18
|
||||
/* 803A9AC4 003A6A24 48 00 00 44 */ b lbl_803A9B08
|
||||
lbl_803A9AC8:
|
||||
/* 803A9AC8 003A6A28 55 20 06 3E */ clrlwi r0, r9, 0x18
|
||||
/* 803A9ACC 003A6A2C 1C 00 00 24 */ mulli r0, r0, 0x24
|
||||
/* 803A9AD0 003A6A30 7C 67 02 14 */ add r3, r7, r0
|
||||
/* 803A9AD4 003A6A34 39 03 00 08 */ addi r8, r3, 8
|
||||
/* 803A9AD8 003A6A38 88 03 00 08 */ lbz r0, 8(r3)
|
||||
/* 803A9ADC 003A6A3C 28 00 00 00 */ cmplwi r0, 0
|
||||
/* 803A9AE0 003A6A40 41 82 00 24 */ beq lbl_803A9B04
|
||||
/* 803A9AE4 003A6A44 38 63 00 0B */ addi r3, r3, 0xb
|
||||
/* 803A9AE8 003A6A48 88 03 00 00 */ lbz r0, 0(r3)
|
||||
/* 803A9AEC 003A6A4C 7C 00 30 40 */ cmplw r0, r6
|
||||
/* 803A9AF0 003A6A50 40 82 00 14 */ bne lbl_803A9B04
|
||||
/* 803A9AF4 003A6A54 98 A8 00 00 */ stb r5, 0(r8)
|
||||
/* 803A9AF8 003A6A58 88 03 00 00 */ lbz r0, 0(r3)
|
||||
/* 803A9AFC 003A6A5C 7C 67 02 14 */ add r3, r7, r0
|
||||
/* 803A9B00 003A6A60 98 83 09 08 */ stb r4, 0x908(r3)
|
||||
lbl_803A9B04:
|
||||
/* 803A9B04 003A6A64 39 29 00 01 */ addi r9, r9, 1
|
||||
lbl_803A9B08:
|
||||
/* 803A9B08 003A6A68 89 07 00 00 */ lbz r8, 0(r7)
|
||||
/* 803A9B0C 003A6A6C 55 20 06 3E */ clrlwi r0, r9, 0x18
|
||||
/* 803A9B10 003A6A70 7C 00 40 40 */ cmplw r0, r8
|
||||
/* 803A9B14 003A6A74 41 80 FF B4 */ blt lbl_803A9AC8
|
||||
/* 803A9B18 003A6A78 3C 60 80 56 */ lis r3, lbl_8055E310@ha
|
||||
/* 803A9B1C 003A6A7C 3B E0 00 00 */ li r31, 0
|
||||
/* 803A9B20 003A6A80 38 83 E3 10 */ addi r4, r3, lbl_8055E310@l
|
||||
/* 803A9B24 003A6A84 48 00 00 40 */ b lbl_803A9B64
|
||||
lbl_803A9B28:
|
||||
/* 803A9B28 003A6A88 57 E0 06 3E */ clrlwi r0, r31, 0x18
|
||||
/* 803A9B2C 003A6A8C 1C A0 00 24 */ mulli r5, r0, 0x24
|
||||
/* 803A9B30 003A6A90 7C 64 2A 14 */ add r3, r4, r5
|
||||
/* 803A9B34 003A6A94 88 03 00 08 */ lbz r0, 8(r3)
|
||||
/* 803A9B38 003A6A98 28 00 00 00 */ cmplwi r0, 0
|
||||
/* 803A9B3C 003A6A9C 40 82 00 24 */ bne lbl_803A9B60
|
||||
/* 803A9B40 003A6AA0 3C 60 80 56 */ lis r3, lbl_8055E310@ha
|
||||
/* 803A9B44 003A6AA4 38 80 00 01 */ li r4, 1
|
||||
/* 803A9B48 003A6AA8 38 63 E3 10 */ addi r3, r3, lbl_8055E310@l
|
||||
/* 803A9B4C 003A6AAC 38 00 00 00 */ li r0, 0
|
||||
/* 803A9B50 003A6AB0 7C 63 2A 14 */ add r3, r3, r5
|
||||
/* 803A9B54 003A6AB4 98 83 00 08 */ stb r4, 8(r3)
|
||||
/* 803A9B58 003A6AB8 90 03 00 0C */ stw r0, 0xc(r3)
|
||||
/* 803A9B5C 003A6ABC 48 00 00 18 */ b lbl_803A9B74
|
||||
lbl_803A9B60:
|
||||
/* 803A9B60 003A6AC0 3B FF 00 01 */ addi r31, r31, 1
|
||||
lbl_803A9B64:
|
||||
/* 803A9B64 003A6AC4 57 E0 06 3E */ clrlwi r0, r31, 0x18
|
||||
/* 803A9B68 003A6AC8 7C 00 40 40 */ cmplw r0, r8
|
||||
/* 803A9B6C 003A6ACC 41 80 FF BC */ blt lbl_803A9B28
|
||||
/* 803A9B70 003A6AD0 3B E0 00 FF */ li r31, 0xff
|
||||
lbl_803A9B74:
|
||||
/* 803A9B74 003A6AD4 3C 60 80 56 */ lis r3, lbl_8055E310@ha
|
||||
/* 803A9B78 003A6AD8 57 E0 06 3E */ clrlwi r0, r31, 0x18
|
||||
/* 803A9B7C 003A6ADC 38 63 E3 10 */ addi r3, r3, lbl_8055E310@l
|
||||
/* 803A9B80 003A6AE0 57 BE 06 3E */ clrlwi r30, r29, 0x18
|
||||
/* 803A9B84 003A6AE4 7C 63 F2 14 */ add r3, r3, r30
|
||||
/* 803A9B88 003A6AE8 28 00 00 FF */ cmplwi r0, 0xff
|
||||
/* 803A9B8C 003A6AEC 9F E3 09 08 */ stbu r31, 0x908(r3)
|
||||
/* 803A9B90 003A6AF0 41 82 01 10 */ beq lbl_803A9CA0
|
||||
/* 803A9B94 003A6AF4 88 63 00 00 */ lbz r3, 0(r3)
|
||||
/* 803A9B98 003A6AF8 38 80 00 00 */ li r4, 0
|
||||
/* 803A9B9C 003A6AFC 48 00 AF 71 */ bl aramGetStreamBufferAddress
|
||||
/* 803A9BA0 003A6B00 3C 80 80 56 */ lis r4, lbl_8055E310@ha
|
||||
/* 803A9BA4 003A6B04 7C 60 1B 78 */ mr r0, r3
|
||||
/* 803A9BA8 003A6B08 38 A4 E3 10 */ addi r5, r4, lbl_8055E310@l
|
||||
/* 803A9BAC 003A6B0C 7F C3 F3 78 */ mr r3, r30
|
||||
/* 803A9BB0 003A6B10 80 A5 00 04 */ lwz r5, 4(r5)
|
||||
/* 803A9BB4 003A6B14 7C 04 03 78 */ mr r4, r0
|
||||
/* 803A9BB8 003A6B18 48 00 99 D1 */ bl hwSetVirtualSampleLoopBuffer
|
||||
/* 803A9BBC 003A6B1C 7F C3 F3 78 */ mr r3, r30
|
||||
/* 803A9BC0 003A6B20 48 00 9A 11 */ bl hwGetSampleID
|
||||
/* 803A9BC4 003A6B24 57 E0 06 3E */ clrlwi r0, r31, 0x18
|
||||
/* 803A9BC8 003A6B28 3C 80 80 56 */ lis r4, lbl_8055E310@ha
|
||||
/* 803A9BCC 003A6B2C 1F E0 00 24 */ mulli r31, r0, 0x24
|
||||
/* 803A9BD0 003A6B30 38 C4 E3 10 */ addi r6, r4, lbl_8055E310@l
|
||||
/* 803A9BD4 003A6B34 7C 86 FA 14 */ add r4, r6, r31
|
||||
/* 803A9BD8 003A6B38 B0 64 00 18 */ sth r3, 0x18(r4)
|
||||
/* 803A9BDC 003A6B3C 88 E6 00 00 */ lbz r7, 0(r6)
|
||||
lbl_803A9BE0:
|
||||
/* 803A9BE0 003A6B40 A0 A6 09 48 */ lhz r5, 0x948(r6)
|
||||
/* 803A9BE4 003A6B44 38 60 00 00 */ li r3, 0
|
||||
/* 803A9BE8 003A6B48 38 05 00 01 */ addi r0, r5, 1
|
||||
/* 803A9BEC 003A6B4C B0 06 09 48 */ sth r0, 0x948(r6)
|
||||
/* 803A9BF0 003A6B50 48 00 00 2C */ b lbl_803A9C1C
|
||||
lbl_803A9BF4:
|
||||
/* 803A9BF4 003A6B54 54 60 06 3E */ clrlwi r0, r3, 0x18
|
||||
/* 803A9BF8 003A6B58 1C 00 00 24 */ mulli r0, r0, 0x24
|
||||
/* 803A9BFC 003A6B5C 7C 86 02 14 */ add r4, r6, r0
|
||||
/* 803A9C00 003A6B60 88 04 00 08 */ lbz r0, 8(r4)
|
||||
/* 803A9C04 003A6B64 28 00 00 00 */ cmplwi r0, 0
|
||||
/* 803A9C08 003A6B68 41 82 00 10 */ beq lbl_803A9C18
|
||||
/* 803A9C0C 003A6B6C A0 04 00 1A */ lhz r0, 0x1a(r4)
|
||||
/* 803A9C10 003A6B70 7C 00 28 40 */ cmplw r0, r5
|
||||
/* 803A9C14 003A6B74 41 82 00 14 */ beq lbl_803A9C28
|
||||
lbl_803A9C18:
|
||||
/* 803A9C18 003A6B78 38 63 00 01 */ addi r3, r3, 1
|
||||
lbl_803A9C1C:
|
||||
/* 803A9C1C 003A6B7C 54 60 06 3E */ clrlwi r0, r3, 0x18
|
||||
/* 803A9C20 003A6B80 7C 00 38 40 */ cmplw r0, r7
|
||||
/* 803A9C24 003A6B84 41 80 FF D0 */ blt lbl_803A9BF4
|
||||
lbl_803A9C28:
|
||||
/* 803A9C28 003A6B88 54 60 06 3E */ clrlwi r0, r3, 0x18
|
||||
/* 803A9C2C 003A6B8C 7C 00 38 40 */ cmplw r0, r7
|
||||
/* 803A9C30 003A6B90 40 82 FF B0 */ bne lbl_803A9BE0
|
||||
/* 803A9C34 003A6B94 3C 80 80 56 */ lis r4, lbl_8055E310@ha
|
||||
/* 803A9C38 003A6B98 7F C3 F3 78 */ mr r3, r30
|
||||
/* 803A9C3C 003A6B9C 38 04 E3 10 */ addi r0, r4, lbl_8055E310@l
|
||||
/* 803A9C40 003A6BA0 7F 80 FA 14 */ add r28, r0, r31
|
||||
/* 803A9C44 003A6BA4 B4 BC 00 1A */ sthu r5, 0x1a(r28)
|
||||
/* 803A9C48 003A6BA8 48 00 99 75 */ bl sub_803b35bc
|
||||
/* 803A9C4C 003A6BAC 3C 80 80 56 */ lis r4, lbl_8055E310@ha
|
||||
/* 803A9C50 003A6BB0 38 A4 E3 10 */ addi r5, r4, lbl_8055E310@l
|
||||
/* 803A9C54 003A6BB4 7C 85 FA 14 */ add r4, r5, r31
|
||||
/* 803A9C58 003A6BB8 98 64 00 0A */ stb r3, 0xa(r4)
|
||||
/* 803A9C5C 003A6BBC 9B A4 00 0B */ stb r29, 0xb(r4)
|
||||
/* 803A9C60 003A6BC0 81 85 09 4C */ lwz r12, 0x94c(r5)
|
||||
/* 803A9C64 003A6BC4 28 0C 00 00 */ cmplwi r12, 0
|
||||
/* 803A9C68 003A6BC8 41 82 00 24 */ beq lbl_803A9C8C
|
||||
/* 803A9C6C 003A6BCC 38 84 00 18 */ addi r4, r4, 0x18
|
||||
/* 803A9C70 003A6BD0 38 60 00 00 */ li r3, 0
|
||||
/* 803A9C74 003A6BD4 7D 89 03 A6 */ mtctr r12
|
||||
/* 803A9C78 003A6BD8 4E 80 04 21 */ bctrl
|
||||
/* 803A9C7C 003A6BDC A0 1C 00 00 */ lhz r0, 0(r28)
|
||||
/* 803A9C80 003A6BE0 7F A3 EB 78 */ mr r3, r29
|
||||
/* 803A9C84 003A6BE4 50 03 42 2E */ rlwimi r3, r0, 8, 8, 0x17
|
||||
/* 803A9C88 003A6BE8 48 00 00 2C */ b lbl_803A9CB4
|
||||
lbl_803A9C8C:
|
||||
/* 803A9C8C 003A6BEC 7F C3 F3 78 */ mr r3, r30
|
||||
/* 803A9C90 003A6BF0 38 80 00 00 */ li r4, 0
|
||||
/* 803A9C94 003A6BF4 38 A0 00 00 */ li r5, 0
|
||||
/* 803A9C98 003A6BF8 48 00 98 F1 */ bl hwSetVirtualSampleLoopBuffer
|
||||
/* 803A9C9C 003A6BFC 48 00 00 14 */ b lbl_803A9CB0
|
||||
lbl_803A9CA0:
|
||||
/* 803A9CA0 003A6C00 7F C3 F3 78 */ mr r3, r30
|
||||
/* 803A9CA4 003A6C04 38 80 00 00 */ li r4, 0
|
||||
/* 803A9CA8 003A6C08 38 A0 00 00 */ li r5, 0
|
||||
/* 803A9CAC 003A6C0C 48 00 98 DD */ bl hwSetVirtualSampleLoopBuffer
|
||||
lbl_803A9CB0:
|
||||
/* 803A9CB0 003A6C10 38 60 FF FF */ li r3, -1
|
||||
lbl_803A9CB4:
|
||||
/* 803A9CB4 003A6C14 80 01 00 24 */ lwz r0, 0x24(r1)
|
||||
/* 803A9CB8 003A6C18 83 E1 00 1C */ lwz r31, 0x1c(r1)
|
||||
/* 803A9CBC 003A6C1C 83 C1 00 18 */ lwz r30, 0x18(r1)
|
||||
/* 803A9CC0 003A6C20 83 A1 00 14 */ lwz r29, 0x14(r1)
|
||||
/* 803A9CC4 003A6C24 83 81 00 10 */ lwz r28, 0x10(r1)
|
||||
/* 803A9CC8 003A6C28 7C 08 03 A6 */ mtlr r0
|
||||
/* 803A9CCC 003A6C2C 38 21 00 20 */ addi r1, r1, 0x20
|
||||
/* 803A9CD0 003A6C30 4E 80 00 20 */ blr
|
||||
|
||||
.global vsSampleEndNotify
|
||||
vsSampleEndNotify:
|
||||
/* 803A9CD4 003A6C34 94 21 FF F0 */ stwu r1, -0x10(r1)
|
||||
/* 803A9CD8 003A6C38 7C 08 02 A6 */ mflr r0
|
||||
/* 803A9CDC 003A6C3C 90 01 00 14 */ stw r0, 0x14(r1)
|
||||
/* 803A9CE0 003A6C40 3C 03 00 01 */ addis r0, r3, 1
|
||||
/* 803A9CE4 003A6C44 28 00 FF FF */ cmplwi r0, 0xffff
|
||||
/* 803A9CE8 003A6C48 93 E1 00 0C */ stw r31, 0xc(r1)
|
||||
/* 803A9CEC 003A6C4C 93 C1 00 08 */ stw r30, 8(r1)
|
||||
/* 803A9CF0 003A6C50 41 82 00 74 */ beq lbl_803A9D64
|
||||
/* 803A9CF4 003A6C54 3C 80 80 56 */ lis r4, lbl_8055E310@ha
|
||||
/* 803A9CF8 003A6C58 54 60 06 3E */ clrlwi r0, r3, 0x18
|
||||
/* 803A9CFC 003A6C5C 38 A4 E3 10 */ addi r5, r4, lbl_8055E310@l
|
||||
/* 803A9D00 003A6C60 3B C5 09 08 */ addi r30, r5, 0x908
|
||||
/* 803A9D04 003A6C64 7C 1E 00 AE */ lbzx r0, r30, r0
|
||||
/* 803A9D08 003A6C68 28 00 00 FF */ cmplwi r0, 0xff
|
||||
/* 803A9D0C 003A6C6C 41 82 00 58 */ beq lbl_803A9D64
|
||||
/* 803A9D10 003A6C70 1F E0 00 24 */ mulli r31, r0, 0x24
|
||||
/* 803A9D14 003A6C74 54 60 C4 3E */ rlwinm r0, r3, 0x18, 0x10, 0x1f
|
||||
/* 803A9D18 003A6C78 7C 85 FA 14 */ add r4, r5, r31
|
||||
/* 803A9D1C 003A6C7C A0 64 00 1A */ lhz r3, 0x1a(r4)
|
||||
/* 803A9D20 003A6C80 7C 03 00 40 */ cmplw r3, r0
|
||||
/* 803A9D24 003A6C84 40 82 00 40 */ bne lbl_803A9D64
|
||||
/* 803A9D28 003A6C88 81 85 09 4C */ lwz r12, 0x94c(r5)
|
||||
/* 803A9D2C 003A6C8C 28 0C 00 00 */ cmplwi r12, 0
|
||||
/* 803A9D30 003A6C90 41 82 00 14 */ beq lbl_803A9D44
|
||||
/* 803A9D34 003A6C94 38 84 00 18 */ addi r4, r4, 0x18
|
||||
/* 803A9D38 003A6C98 38 60 00 02 */ li r3, 2
|
||||
/* 803A9D3C 003A6C9C 7D 89 03 A6 */ mtctr r12
|
||||
/* 803A9D40 003A6CA0 4E 80 04 21 */ bctrl
|
||||
lbl_803A9D44:
|
||||
/* 803A9D44 003A6CA4 3C 60 80 56 */ lis r3, lbl_8055E310@ha
|
||||
/* 803A9D48 003A6CA8 38 A0 00 00 */ li r5, 0
|
||||
/* 803A9D4C 003A6CAC 38 03 E3 10 */ addi r0, r3, lbl_8055E310@l
|
||||
/* 803A9D50 003A6CB0 38 60 00 FF */ li r3, 0xff
|
||||
/* 803A9D54 003A6CB4 7C 80 FA 14 */ add r4, r0, r31
|
||||
/* 803A9D58 003A6CB8 98 A4 00 08 */ stb r5, 8(r4)
|
||||
/* 803A9D5C 003A6CBC 88 04 00 0B */ lbz r0, 0xb(r4)
|
||||
/* 803A9D60 003A6CC0 7C 7E 01 AE */ stbx r3, r30, r0
|
||||
lbl_803A9D64:
|
||||
/* 803A9D64 003A6CC4 80 01 00 14 */ lwz r0, 0x14(r1)
|
||||
/* 803A9D68 003A6CC8 83 E1 00 0C */ lwz r31, 0xc(r1)
|
||||
/* 803A9D6C 003A6CCC 83 C1 00 08 */ lwz r30, 8(r1)
|
||||
/* 803A9D70 003A6CD0 7C 08 03 A6 */ mtlr r0
|
||||
/* 803A9D74 003A6CD4 38 21 00 10 */ addi r1, r1, 0x10
|
||||
/* 803A9D78 003A6CD8 4E 80 00 20 */ blr
|
File diff suppressed because it is too large
Load Diff
File diff suppressed because it is too large
Load Diff
File diff suppressed because it is too large
Load Diff
66081
asm/text.s
66081
asm/text.s
File diff suppressed because it is too large
Load Diff
113
obj_files.mk
113
obj_files.mk
|
@ -6,15 +6,122 @@ INIT_O_FILES :=\
|
|||
KYOTO_CWD :=\
|
||||
$(BUILD_DIR)/asm/Kyoto_CWD/main.o
|
||||
|
||||
TEXT_O_FILES :=\
|
||||
$(BUILD_DIR)/asm/text.o\
|
||||
MSL_PPCEABI_BARE_H :=\
|
||||
$(BUILD_DIR)/asm/Runtime/PPCEABI/H/mem.o\
|
||||
$(BUILD_DIR)/asm/Runtime/PPCEABI/H/mem_funcs.o\
|
||||
$(BUILD_DIR)/asm/Runtime/PPCEABI/H/misc_io.o\
|
||||
$(BUILD_DIR)/asm/Runtime/PPCEABI/H/printf.o\
|
||||
$(BUILD_DIR)/asm/Runtime/PPCEABI/H/qsort.o\
|
||||
$(BUILD_DIR)/asm/Runtime/PPCEABI/H/rand.o\
|
||||
$(BUILD_DIR)/asm/Runtime/PPCEABI/H/sscanf.o\
|
||||
$(BUILD_DIR)/asm/Runtime/PPCEABI/H/string.o\
|
||||
$(BUILD_DIR)/asm/Runtime/PPCEABI/H/strtold.o\
|
||||
$(BUILD_DIR)/asm/Runtime/PPCEABI/H/uart_console_io.o\
|
||||
$(BUILD_DIR)/asm/Runtime/PPCEABI/H/widechar_io.o\
|
||||
$(BUILD_DIR)/asm/Runtime/PPCEABI/H/e_acos.o\
|
||||
$(BUILD_DIR)/asm/Runtime/PPCEABI/H/e_asin.o\
|
||||
$(BUILD_DIR)/asm/Runtime/PPCEABI/H/e_atan2.o\
|
||||
$(BUILD_DIR)/asm/Runtime/PPCEABI/H/e_exp.o\
|
||||
$(BUILD_DIR)/asm/Runtime/PPCEABI/H/e_fmod.o\
|
||||
$(BUILD_DIR)/asm/Runtime/PPCEABI/H/e_log.o\
|
||||
$(BUILD_DIR)/asm/Runtime/PPCEABI/H/e_pow.o\
|
||||
$(BUILD_DIR)/asm/Runtime/PPCEABI/H/e_rem_pio2.o\
|
||||
$(BUILD_DIR)/asm/Runtime/PPCEABI/H/k_cos.o\
|
||||
$(BUILD_DIR)/asm/Runtime/PPCEABI/H/k_rem_pio2.o\
|
||||
$(BUILD_DIR)/asm/Runtime/PPCEABI/H/k_sin.o\
|
||||
$(BUILD_DIR)/asm/Runtime/PPCEABI/H/k_tan.o\
|
||||
$(BUILD_DIR)/asm/Runtime/PPCEABI/H/s_atan.o\
|
||||
$(BUILD_DIR)/asm/Runtime/PPCEABI/H/s_copysign.o\
|
||||
$(BUILD_DIR)/asm/Runtime/PPCEABI/H/s_cos.o\
|
||||
$(BUILD_DIR)/asm/Runtime/PPCEABI/H/s_floor.o\
|
||||
$(BUILD_DIR)/asm/Runtime/PPCEABI/H/s_frexp.o\
|
||||
$(BUILD_DIR)/asm/Runtime/PPCEABI/H/s_ldexp.o\
|
||||
$(BUILD_DIR)/asm/Runtime/PPCEABI/H/s_modf.o\
|
||||
$(BUILD_DIR)/asm/Runtime/PPCEABI/H/s_nextafter.o\
|
||||
$(BUILD_DIR)/asm/Runtime/PPCEABI/H/s_sin.o\
|
||||
$(BUILD_DIR)/asm/Runtime/PPCEABI/H/s_tan.o\
|
||||
$(BUILD_DIR)/asm/Runtime/PPCEABI/H/s_acos.o\
|
||||
$(BUILD_DIR)/asm/Runtime/PPCEABI/H/s_asin.o\
|
||||
$(BUILD_DIR)/asm/Runtime/PPCEABI/H/s_atan2.o\
|
||||
$(BUILD_DIR)/asm/Runtime/PPCEABI/H/s_exp.o\
|
||||
$(BUILD_DIR)/asm/Runtime/PPCEABI/H/s_fmod.o\
|
||||
$(BUILD_DIR)/asm/Runtime/PPCEABI/H/s_log.o\
|
||||
$(BUILD_DIR)/asm/Runtime/PPCEABI/H/s_pow.o\
|
||||
$(BUILD_DIR)/asm/Runtime/PPCEABI/H/s_cosf.o\
|
||||
|
||||
MUSYX_FILES :=\
|
||||
$(BUILD_DIR)/asm/musyx/seq.o\
|
||||
$(BUILD_DIR)/asm/musyx/synth.o\
|
||||
$(BUILD_DIR)/asm/musyx/seq_api.o\
|
||||
$(BUILD_DIR)/asm/musyx/snd_synthapi.o\
|
||||
$(BUILD_DIR)/asm/musyx/stream.o\
|
||||
$(BUILD_DIR)/asm/musyx/synthdata.o\
|
||||
$(BUILD_DIR)/asm/musyx/synthmacros.o\
|
||||
$(BUILD_DIR)/asm/musyx/synthvoice.o\
|
||||
$(BUILD_DIR)/asm/musyx/synth_ac.o\
|
||||
$(BUILD_DIR)/asm/musyx/synth_adsr.o\
|
||||
$(BUILD_DIR)/asm/musyx/synth_vsamples.o\
|
||||
$(BUILD_DIR)/asm/musyx/s_data.o\
|
||||
$(BUILD_DIR)/asm/musyx/hw_dspctrl.o\
|
||||
$(BUILD_DIR)/asm/musyx/hw_volconv.o\
|
||||
$(BUILD_DIR)/asm/musyx/snd3d.o\
|
||||
$(BUILD_DIR)/asm/musyx/snd_init.o\
|
||||
$(BUILD_DIR)/asm/musyx/snd_math.o\
|
||||
$(BUILD_DIR)/asm/musyx/snd_midictrl.o\
|
||||
$(BUILD_DIR)/asm/musyx/snd_service.o\
|
||||
$(BUILD_DIR)/asm/musyx/hardware.o\
|
||||
$(BUILD_DIR)/asm/musyx/hw_aramdma.o\
|
||||
$(BUILD_DIR)/asm/musyx/hw_dolphin.o\
|
||||
$(BUILD_DIR)/asm/musyx/hw_memory.o\
|
||||
$(BUILD_DIR)/asm/musyx/creverb_fx.o\
|
||||
$(BUILD_DIR)/asm/musyx/creverb.o\
|
||||
$(BUILD_DIR)/asm/musyx/reverb_fx.o\
|
||||
$(BUILD_DIR)/asm/musyx/reverb.o\
|
||||
$(BUILD_DIR)/asm/musyx/delay_fx.o\
|
||||
$(BUILD_DIR)/asm/musyx/chorus_fx.o
|
||||
|
||||
DTK_FILES :=\
|
||||
$(BUILD_DIR)/asm/Dolphin/dtk.o
|
||||
|
||||
CARD_FILES :=\
|
||||
$(BUILD_DIR)/asm/Dolphin/CARD/CARDBios.o\
|
||||
$(BUILD_DIR)/asm/Dolphin/CARD/CARDUnlock.o\
|
||||
$(BUILD_DIR)/asm/Dolphin/CARD/CARDRdwr.o\
|
||||
$(BUILD_DIR)/asm/Dolphin/CARD/CARDBlock.o\
|
||||
$(BUILD_DIR)/asm/Dolphin/CARD/CARDDir.o\
|
||||
$(BUILD_DIR)/asm/Dolphin/CARD/CARDCheck.o\
|
||||
$(BUILD_DIR)/asm/Dolphin/CARD/CARDMount.o\
|
||||
$(BUILD_DIR)/asm/Dolphin/CARD/CARDFormat.o\
|
||||
$(BUILD_DIR)/asm/Dolphin/CARD/CARDOpen.o\
|
||||
$(BUILD_DIR)/asm/Dolphin/CARD/CARDCreate.o\
|
||||
$(BUILD_DIR)/asm/Dolphin/CARD/CARDRead.o\
|
||||
$(BUILD_DIR)/asm/Dolphin/CARD/CARDWrite.o\
|
||||
$(BUILD_DIR)/asm/Dolphin/CARD/CARDDelete.o\
|
||||
$(BUILD_DIR)/asm/Dolphin/CARD/CARDStat.o\
|
||||
$(BUILD_DIR)/asm/Dolphin/CARD/CARDRename.o\
|
||||
$(BUILD_DIR)/asm/Dolphin/CARD/CARDNet.o
|
||||
|
||||
SI_FILES :=\
|
||||
$(BUILD_DIR)/asm/Dolphin/SIBios.o\
|
||||
$(BUILD_DIR)/asm/Dolphin/SISamplingRate.o
|
||||
|
||||
EXI_FILES :=\
|
||||
$(BUILD_DIR)/asm/Dolphin/EXIBios.o\
|
||||
$(BUILD_DIR)/asm/Dolphin/EXIUart.o
|
||||
|
||||
THP_FILES :=\
|
||||
$(BUILD_DIR)/asm/Dolphin/THPDec.o\
|
||||
$(BUILD_DIR)/asm/Dolphin/THPAudio.o\
|
||||
$(BUILD_DIR)/asm/Dolphin/THPAudio.o
|
||||
|
||||
GBA_FILES :=\
|
||||
$(BUILD_DIR)/asm/Dolphin/GBA.o\
|
||||
$(BUILD_DIR)/asm/Dolphin/GBARead.o\
|
||||
$(BUILD_DIR)/asm/Dolphin/GBAWrite.o\
|
||||
$(BUILD_DIR)/asm/Dolphin/GBAXfer.o
|
||||
|
||||
TEXT_O_FILES :=\
|
||||
$(BUILD_DIR)/asm/text.o
|
||||
|
||||
EXTAB_O_FILES :=\
|
||||
$(BUILD_DIR)/asm/extab.o
|
||||
|
||||
|
|
Loading…
Reference in New Issue