.include "macros.inc" .section .text, "ax" # 0x80006980 - 0x803E1E60 .global func_802238A0 func_802238A0: /* 802238A0 0021F500 94 21 FF B0 */ stwu r1, -0x50(r1) /* 802238A4 0021F504 7C 08 02 A6 */ mflr r0 /* 802238A8 0021F508 90 01 00 54 */ stw r0, 0x54(r1) /* 802238AC 0021F50C DB E1 00 40 */ stfd f31, 0x40(r1) /* 802238B0 0021F510 F3 E1 00 48 */ psq_st f31, 72(r1), 0, qr0 /* 802238B4 0021F514 DB C1 00 30 */ stfd f30, 0x30(r1) /* 802238B8 0021F518 F3 C1 00 38 */ psq_st f30, 56(r1), 0, qr0 /* 802238BC 0021F51C DB A1 00 20 */ stfd f29, 0x20(r1) /* 802238C0 0021F520 F3 A1 00 28 */ psq_st f29, 40(r1), 0, qr0 /* 802238C4 0021F524 CB A2 9C 40 */ lfd f29, lbl_80642240-_SDA2_BASE_(r2) /* 802238C8 0021F528 93 E1 00 1C */ stw r31, 0x1c(r1) /* 802238CC 0021F52C 3F E0 43 30 */ lis r31, 0x4330 /* 802238D0 0021F530 C3 C2 9C 3C */ lfs f30, lbl_8064223C-_SDA2_BASE_(r2) /* 802238D4 0021F534 93 C1 00 18 */ stw r30, 0x18(r1) /* 802238D8 0021F538 3F C0 80 49 */ lis r30, lbl_80493330@ha /* 802238DC 0021F53C C3 E2 9C 38 */ lfs f31, lbl_80642238-_SDA2_BASE_(r2) /* 802238E0 0021F540 3B DE 33 30 */ addi r30, r30, lbl_80493330@l /* 802238E4 0021F544 93 A1 00 14 */ stw r29, 0x14(r1) /* 802238E8 0021F548 3B A0 00 00 */ li r29, 0 lbl_802238EC: /* 802238EC 0021F54C 6F A0 80 00 */ xoris r0, r29, 0x8000 /* 802238F0 0021F550 93 E1 00 08 */ stw r31, 8(r1) /* 802238F4 0021F554 90 01 00 0C */ stw r0, 0xc(r1) /* 802238F8 0021F558 C8 01 00 08 */ lfd f0, 8(r1) /* 802238FC 0021F55C EC 00 E8 28 */ fsubs f0, f0, f29 /* 80223900 0021F560 EC 1E 00 32 */ fmuls f0, f30, f0 /* 80223904 0021F564 EC 3F 00 32 */ fmuls f1, f31, f0 /* 80223908 0021F568 4B FB 07 71 */ bl cos /* 8022390C 0021F56C FC 00 08 18 */ frsp f0, f1 /* 80223910 0021F570 3B BD 00 01 */ addi r29, r29, 1 /* 80223914 0021F574 2C 1D 00 B5 */ cmpwi r29, 0xb5 /* 80223918 0021F578 D0 1E 00 00 */ stfs f0, 0(r30) /* 8022391C 0021F57C 3B DE 00 04 */ addi r30, r30, 4 /* 80223920 0021F580 41 80 FF CC */ blt lbl_802238EC /* 80223924 0021F584 E3 E1 00 48 */ psq_l f31, 72(r1), 0, qr0 /* 80223928 0021F588 CB E1 00 40 */ lfd f31, 0x40(r1) /* 8022392C 0021F58C E3 C1 00 38 */ psq_l f30, 56(r1), 0, qr0 /* 80223930 0021F590 CB C1 00 30 */ lfd f30, 0x30(r1) /* 80223934 0021F594 E3 A1 00 28 */ psq_l f29, 40(r1), 0, qr0 /* 80223938 0021F598 CB A1 00 20 */ lfd f29, 0x20(r1) /* 8022393C 0021F59C 83 E1 00 1C */ lwz r31, 0x1c(r1) /* 80223940 0021F5A0 83 C1 00 18 */ lwz r30, 0x18(r1) /* 80223944 0021F5A4 80 01 00 54 */ lwz r0, 0x54(r1) /* 80223948 0021F5A8 83 A1 00 14 */ lwz r29, 0x14(r1) /* 8022394C 0021F5AC 7C 08 03 A6 */ mtlr r0 /* 80223950 0021F5B0 38 21 00 50 */ addi r1, r1, 0x50 /* 80223954 0021F5B4 4E 80 00 20 */ blr lbl_80223958: /* 80223958 0021F5B8 94 21 FF E0 */ stwu r1, -0x20(r1) /* 8022395C 0021F5BC 7C 08 02 A6 */ mflr r0 /* 80223960 0021F5C0 90 01 00 24 */ stw r0, 0x24(r1) /* 80223964 0021F5C4 DB E1 00 10 */ stfd f31, 0x10(r1) /* 80223968 0021F5C8 F3 E1 00 18 */ psq_st f31, 24(r1), 0, qr0 /* 8022396C 0021F5CC C0 02 9C 4C */ lfs f0, lbl_8064224C-_SDA2_BASE_(r2) /* 80223970 0021F5D0 C3 E2 9C 48 */ lfs f31, lbl_80642248-_SDA2_BASE_(r2) /* 80223974 0021F5D4 FC 01 00 40 */ fcmpo cr0, f1, f0 /* 80223978 0021F5D8 40 81 00 14 */ ble lbl_8022398C /* 8022397C 0021F5DC C3 E2 9C 50 */ lfs f31, lbl_80642250-_SDA2_BASE_(r2) /* 80223980 0021F5E0 C8 42 9C 58 */ lfd f2, lbl_80642258-_SDA2_BASE_(r2) /* 80223984 0021F5E4 4B FB 0C 5D */ bl fmod /* 80223988 0021F5E8 FC 20 08 18 */ frsp f1, f1 lbl_8022398C: /* 8022398C 0021F5EC C0 02 9C 60 */ lfs f0, lbl_80642260-_SDA2_BASE_(r2) /* 80223990 0021F5F0 FC 01 00 40 */ fcmpo cr0, f1, f0 /* 80223994 0021F5F4 40 81 00 0C */ ble lbl_802239A0 /* 80223998 0021F5F8 C0 02 9C 4C */ lfs f0, lbl_8064224C-_SDA2_BASE_(r2) /* 8022399C 0021F5FC EC 20 08 28 */ fsubs f1, f0, f1 lbl_802239A0: /* 802239A0 0021F600 C0 42 9C 64 */ lfs f2, lbl_80642264-_SDA2_BASE_(r2) /* 802239A4 0021F604 C0 02 9C 3C */ lfs f0, lbl_8064223C-_SDA2_BASE_(r2) /* 802239A8 0021F608 EC 22 00 72 */ fmuls f1, f2, f1 /* 802239AC 0021F60C EC 20 08 2A */ fadds f1, f0, f1 /* 802239B0 0021F610 4B FA 36 51 */ bl __cvt_fp2unsigned /* 802239B4 0021F614 3C 80 80 49 */ lis r4, lbl_80493330@ha /* 802239B8 0021F618 54 60 10 3A */ slwi r0, r3, 2 /* 802239BC 0021F61C 38 84 33 30 */ addi r4, r4, lbl_80493330@l /* 802239C0 0021F620 7C 04 04 2E */ lfsx f0, r4, r0 /* 802239C4 0021F624 EC 3F 00 32 */ fmuls f1, f31, f0 /* 802239C8 0021F628 E3 E1 00 18 */ psq_l f31, 24(r1), 0, qr0 /* 802239CC 0021F62C CB E1 00 10 */ lfd f31, 0x10(r1) /* 802239D0 0021F630 80 01 00 24 */ lwz r0, 0x24(r1) /* 802239D4 0021F634 7C 08 03 A6 */ mtlr r0 /* 802239D8 0021F638 38 21 00 20 */ addi r1, r1, 0x20 /* 802239DC 0021F63C 4E 80 00 20 */ blr .global func_802239E0 func_802239E0: /* 802239E0 0021F640 C0 02 9C 60 */ lfs f0, lbl_80642260-_SDA2_BASE_(r2) /* 802239E4 0021F644 EC 20 08 28 */ fsubs f1, f0, f1 /* 802239E8 0021F648 4B FF FF 70 */ b lbl_80223958 .global func_802239EC func_802239EC: /* 802239EC 0021F64C 38 A0 00 01 */ li r5, 1 /* 802239F0 0021F650 38 6D A2 E0 */ addi r3, r13, lbl_8063F5A0-_SDA_BASE_ /* 802239F4 0021F654 38 80 00 04 */ li r4, 4 /* 802239F8 0021F658 38 00 00 00 */ li r0, 0 /* 802239FC 0021F65C 98 AD A2 E0 */ stb r5, lbl_8063F5A0-_SDA_BASE_(r13) /* 80223A00 0021F660 B0 83 00 02 */ sth r4, 2(r3) /* 80223A04 0021F664 98 03 00 04 */ stb r0, 4(r3) /* 80223A08 0021F668 4E 80 00 20 */ blr