donut-decomp/asm/libnw4r_g3d/g3d_resanmfog_800d2570.s

115 lines
5.4 KiB
ArmAsm

.include "macros.inc"
.section .text, "ax" # 0x80006A00 - 0x80406260 ; 0x003FF860
.global GetAnmResult__Q34nw4r3g3d9ResAnmFogCFPQ34nw4r3g3d12FogAnmResultf
GetAnmResult__Q34nw4r3g3d9ResAnmFogCFPQ34nw4r3g3d12FogAnmResultf:
/* 800D2570 000CE3B0 94 21 FF B0 */ stwu r1, -0x50(r1)
/* 800D2574 000CE3B4 7C 08 02 A6 */ mflr r0
/* 800D2578 000CE3B8 90 01 00 54 */ stw r0, 0x54(r1)
/* 800D257C 000CE3BC DB E1 00 40 */ stfd f31, 0x40(r1)
/* 800D2580 000CE3C0 F3 E1 00 48 */ psq_st f31, 0x48(r1), 0, qr0
/* 800D2584 000CE3C4 DB C1 00 30 */ stfd f30, 0x30(r1)
/* 800D2588 000CE3C8 F3 C1 00 38 */ psq_st f30, 0x38(r1), 0, qr0
/* 800D258C 000CE3CC FF C0 08 90 */ fmr f30, f1
/* 800D2590 000CE3D0 93 E1 00 2C */ stw r31, 0x2c(r1)
/* 800D2594 000CE3D4 83 E3 00 00 */ lwz r31, 0x0(r3)
/* 800D2598 000CE3D8 93 C1 00 28 */ stw r30, 0x28(r1)
/* 800D259C 000CE3DC 93 A1 00 24 */ stw r29, 0x24(r1)
/* 800D25A0 000CE3E0 93 81 00 20 */ stw r28, 0x20(r1)
/* 800D25A4 000CE3E4 7C 9C 23 78 */ mr r28, r4
/* 800D25A8 000CE3E8 80 1F 00 04 */ lwz r0, 0x4(r31)
/* 800D25AC 000CE3EC 80 BF 00 14 */ lwz r5, 0x14(r31)
/* 800D25B0 000CE3F0 2C 00 00 00 */ cmpwi r0, 0x0
/* 800D25B4 000CE3F4 41 82 00 0C */ beq lbl_800D25C0
/* 800D25B8 000CE3F8 7C 7F 02 14 */ add r3, r31, r0
/* 800D25BC 000CE3FC 48 00 00 08 */ b lbl_800D25C4
.global lbl_800D25C0
lbl_800D25C0:
/* 800D25C0 000CE400 38 60 00 00 */ li r3, 0x0
.global lbl_800D25C4
lbl_800D25C4:
/* 800D25C4 000CE404 C3 E2 8F 70 */ lfs f31, "@10922"@sda21(r2)
/* 800D25C8 000CE408 FC 01 F8 40 */ fcmpo cr0, f1, f31
/* 800D25CC 000CE40C 4C 40 13 82 */ cror eq, lt, eq
/* 800D25D0 000CE410 40 82 00 08 */ bne lbl_800D25D8
/* 800D25D4 000CE414 48 00 00 44 */ b lbl_800D2618
.global lbl_800D25D8
lbl_800D25D8:
/* 800D25D8 000CE418 A0 63 00 34 */ lhz r3, 0x34(r3)
/* 800D25DC 000CE41C 3C 00 43 30 */ lis r0, 0x4330
/* 800D25E0 000CE420 90 61 00 0C */ stw r3, 0xc(r1)
/* 800D25E4 000CE424 C8 42 8F 78 */ lfd f2, "@10926"@sda21(r2)
/* 800D25E8 000CE428 90 01 00 08 */ stw r0, 0x8(r1)
/* 800D25EC 000CE42C C8 01 00 08 */ lfd f0, 0x8(r1)
/* 800D25F0 000CE430 EC 00 10 28 */ fsubs f0, f0, f2
/* 800D25F4 000CE434 FC 00 08 40 */ fcmpo cr0, f0, f1
/* 800D25F8 000CE438 4C 40 13 82 */ cror eq, lt, eq
/* 800D25FC 000CE43C 40 82 00 18 */ bne lbl_800D2614
/* 800D2600 000CE440 90 61 00 14 */ stw r3, 0x14(r1)
/* 800D2604 000CE444 90 01 00 10 */ stw r0, 0x10(r1)
/* 800D2608 000CE448 C8 01 00 10 */ lfd f0, 0x10(r1)
/* 800D260C 000CE44C EF E0 10 28 */ fsubs f31, f0, f2
/* 800D2610 000CE450 48 00 00 08 */ b lbl_800D2618
.global lbl_800D2614
lbl_800D2614:
/* 800D2614 000CE454 FF E0 F0 90 */ fmr f31, f30
.global lbl_800D2618
lbl_800D2618:
/* 800D2618 000CE458 54 A0 00 85 */ rlwinm. r0, r5, 0, 2, 2
/* 800D261C 000CE45C 80 1F 00 18 */ lwz r0, 0x18(r31)
/* 800D2620 000CE460 54 BE 17 FE */ extrwi r30, r5, 1, 1
/* 800D2624 000CE464 54 BD 0F FE */ srwi r29, r5, 31
/* 800D2628 000CE468 90 04 00 00 */ stw r0, 0x0(r4)
/* 800D262C 000CE46C 41 82 00 0C */ beq lbl_800D2638
/* 800D2630 000CE470 C0 3F 00 1C */ lfs f1, 0x1c(r31)
/* 800D2634 000CE474 48 00 00 18 */ b lbl_800D264C
.global lbl_800D2638
lbl_800D2638:
/* 800D2638 000CE478 80 1F 00 1C */ lwz r0, 0x1c(r31)
/* 800D263C 000CE47C FC 20 F0 90 */ fmr f1, f30
/* 800D2640 000CE480 7C 7F 02 14 */ add r3, r31, r0
/* 800D2644 000CE484 38 63 00 1C */ addi r3, r3, 0x1c
/* 800D2648 000CE488 4B FF CD F9 */ bl GetResKeyFrameAnmResult__Q34nw4r3g3d6detailFPCQ34nw4r3g3d18ResKeyFrameAnmDataf
.global lbl_800D264C
lbl_800D264C:
/* 800D264C 000CE48C 2C 1E 00 00 */ cmpwi r30, 0x0
/* 800D2650 000CE490 D0 3C 00 04 */ stfs f1, 0x4(r28)
/* 800D2654 000CE494 41 82 00 0C */ beq lbl_800D2660
/* 800D2658 000CE498 C0 3F 00 20 */ lfs f1, 0x20(r31)
/* 800D265C 000CE49C 48 00 00 18 */ b lbl_800D2674
.global lbl_800D2660
lbl_800D2660:
/* 800D2660 000CE4A0 80 1F 00 20 */ lwz r0, 0x20(r31)
/* 800D2664 000CE4A4 FC 20 F0 90 */ fmr f1, f30
/* 800D2668 000CE4A8 7C 7F 02 14 */ add r3, r31, r0
/* 800D266C 000CE4AC 38 63 00 20 */ addi r3, r3, 0x20
/* 800D2670 000CE4B0 4B FF CD D1 */ bl GetResKeyFrameAnmResult__Q34nw4r3g3d6detailFPCQ34nw4r3g3d18ResKeyFrameAnmDataf
.global lbl_800D2674
lbl_800D2674:
/* 800D2674 000CE4B4 2C 1D 00 00 */ cmpwi r29, 0x0
/* 800D2678 000CE4B8 D0 3C 00 08 */ stfs f1, 0x8(r28)
/* 800D267C 000CE4BC 41 82 00 0C */ beq lbl_800D2688
/* 800D2680 000CE4C0 80 7F 00 24 */ lwz r3, 0x24(r31)
/* 800D2684 000CE4C4 48 00 00 18 */ b lbl_800D269C
.global lbl_800D2688
lbl_800D2688:
/* 800D2688 000CE4C8 80 1F 00 24 */ lwz r0, 0x24(r31)
/* 800D268C 000CE4CC FC 20 F8 90 */ fmr f1, f31
/* 800D2690 000CE4D0 7C 7F 02 14 */ add r3, r31, r0
/* 800D2694 000CE4D4 38 63 00 24 */ addi r3, r3, 0x24
/* 800D2698 000CE4D8 4B FF CF 09 */ bl GetResColorAnmResult__Q34nw4r3g3d6detailFPCQ34nw4r3g3d21ResColorAnmFramesDataf
.global lbl_800D269C
lbl_800D269C:
/* 800D269C 000CE4DC 90 7C 00 0C */ stw r3, 0xc(r28)
/* 800D26A0 000CE4E0 E3 E1 00 48 */ psq_l f31, 0x48(r1), 0, qr0
/* 800D26A4 000CE4E4 CB E1 00 40 */ lfd f31, 0x40(r1)
/* 800D26A8 000CE4E8 E3 C1 00 38 */ psq_l f30, 0x38(r1), 0, qr0
/* 800D26AC 000CE4EC CB C1 00 30 */ lfd f30, 0x30(r1)
/* 800D26B0 000CE4F0 83 E1 00 2C */ lwz r31, 0x2c(r1)
/* 800D26B4 000CE4F4 83 C1 00 28 */ lwz r30, 0x28(r1)
/* 800D26B8 000CE4F8 83 A1 00 24 */ lwz r29, 0x24(r1)
/* 800D26BC 000CE4FC 83 81 00 20 */ lwz r28, 0x20(r1)
/* 800D26C0 000CE500 80 01 00 54 */ lwz r0, 0x54(r1)
/* 800D26C4 000CE504 7C 08 03 A6 */ mtlr r0
/* 800D26C8 000CE508 38 21 00 50 */ addi r1, r1, 0x50
/* 800D26CC 000CE50C 4E 80 00 20 */ blr