.include "macros.inc" .section .text, "ax" # 0x80006980 - 0x803E1E60 .global KPADSetFSStickClamp KPADSetFSStickClamp: /* 8029F390 0029AFF0 7C 63 07 74 */ extsb r3, r3 /* 8029F394 0029AFF4 7C 80 07 74 */ extsb r0, r4 /* 8029F398 0029AFF8 90 6D 89 64 */ stw r3, lbl_8063DC24-_SDA_BASE_(r13) /* 8029F39C 0029AFFC 90 0D 89 68 */ stw r0, lbl_8063DC28-_SDA_BASE_(r13) /* 8029F3A0 0029B000 4E 80 00 20 */ blr # KPADSetPosParam, KPADSetHoriParam, KPADSetDistParam, or KPADSetAccParam .global func_8029F3A4 func_8029F3A4: /* 8029F3A4 0029B004 1C 03 05 24 */ mulli r0, r3, 0x524 /* 8029F3A8 0029B008 3C 60 80 53 */ lis r3, lbl_805356D0@ha /* 8029F3AC 0029B00C 38 63 56 D0 */ addi r3, r3, lbl_805356D0@l /* 8029F3B0 0029B010 7C 63 02 14 */ add r3, r3, r0 /* 8029F3B4 0029B014 D0 23 00 84 */ stfs f1, 0x84(r3) /* 8029F3B8 0029B018 D0 43 00 88 */ stfs f2, 0x88(r3) /* 8029F3BC 0029B01C 4E 80 00 20 */ blr .global reset_kpad reset_kpad: /* 8029F3C0 0029B020 94 21 FF E0 */ stwu r1, -0x20(r1) /* 8029F3C4 0029B024 38 03 00 C4 */ addi r0, r3, 0xc4 /* 8029F3C8 0029B028 C0 C2 A3 AC */ lfs f6, lbl_806429AC-_SDA2_BASE_(r2) /* 8029F3CC 0029B02C 38 80 FF FF */ li r4, -1 /* 8029F3D0 0029B030 93 E1 00 1C */ stw r31, 0x1c(r1) /* 8029F3D4 0029B034 C0 A2 A3 B0 */ lfs f5, lbl_806429B0-_SDA2_BASE_(r2) /* 8029F3D8 0029B038 93 C1 00 18 */ stw r30, 0x18(r1) /* 8029F3DC 0029B03C 3B C0 00 00 */ li r30, 0 /* 8029F3E0 0029B040 C0 82 A3 B4 */ lfs f4, lbl_806429B4-_SDA2_BASE_(r2) /* 8029F3E4 0029B044 93 A1 00 14 */ stw r29, 0x14(r1) /* 8029F3E8 0029B048 3B A3 00 E8 */ addi r29, r3, 0xe8 /* 8029F3EC 0029B04C C0 62 A3 B8 */ lfs f3, lbl_806429B8-_SDA2_BASE_(r2) /* 8029F3F0 0029B050 9B C3 05 1D */ stb r30, 0x51d(r3) /* 8029F3F4 0029B054 C0 23 00 A4 */ lfs f1, 0xa4(r3) /* 8029F3F8 0029B058 C0 0D 89 44 */ lfs f0, lbl_8063DC04-_SDA_BASE_(r13) /* 8029F3FC 0029B05C A0 A3 04 D0 */ lhz r5, 0x4d0(r3) /* 8029F400 0029B060 EC 06 00 2A */ fadds f0, f6, f0 /* 8029F404 0029B064 C0 42 A3 A0 */ lfs f2, lbl_806429A0-_SDA2_BASE_(r2) /* 8029F408 0029B068 81 63 00 B0 */ lwz r11, 0xb0(r3) /* 8029F40C 0029B06C 81 43 00 B4 */ lwz r10, 0xb4(r3) /* 8029F410 0029B070 D0 03 04 F4 */ stfs f0, 0x4f4(r3) /* 8029F414 0029B074 C0 0D 89 44 */ lfs f0, lbl_8063DC04-_SDA_BASE_(r13) /* 8029F418 0029B078 EC 05 00 28 */ fsubs f0, f5, f0 /* 8029F41C 0029B07C D0 03 04 FC */ stfs f0, 0x4fc(r3) /* 8029F420 0029B080 C0 0D 89 44 */ lfs f0, lbl_8063DC04-_SDA_BASE_(r13) /* 8029F424 0029B084 EC 04 00 2A */ fadds f0, f4, f0 /* 8029F428 0029B088 D0 03 04 F8 */ stfs f0, 0x4f8(r3) /* 8029F42C 0029B08C C0 0D 89 44 */ lfs f0, lbl_8063DC04-_SDA_BASE_(r13) /* 8029F430 0029B090 EC 03 00 28 */ fsubs f0, f3, f0 /* 8029F434 0029B094 D0 03 05 00 */ stfs f0, 0x500(r3) /* 8029F438 0029B098 C0 0D 89 4C */ lfs f0, lbl_8063DC0C-_SDA_BASE_(r13) /* 8029F43C 0029B09C EC 05 00 24 */ fdivs f0, f5, f0 /* 8029F440 0029B0A0 D0 03 05 04 */ stfs f0, 0x504(r3) /* 8029F444 0029B0A4 C0 0D 89 4C */ lfs f0, lbl_8063DC0C-_SDA_BASE_(r13) /* 8029F448 0029B0A8 EC 06 00 24 */ fdivs f0, f6, f0 /* 8029F44C 0029B0AC D0 03 05 08 */ stfs f0, 0x508(r3) /* 8029F450 0029B0B0 C0 0D 89 38 */ lfs f0, lbl_8063DBF8-_SDA_BASE_(r13) /* 8029F454 0029B0B4 EC 00 00 32 */ fmuls f0, f0, f0 /* 8029F458 0029B0B8 D0 03 05 0C */ stfs f0, 0x50c(r3) /* 8029F45C 0029B0BC C0 0D AD E4 */ lfs f0, lbl_806400A4-_SDA_BASE_(r13) /* 8029F460 0029B0C0 D0 03 05 14 */ stfs f0, 0x514(r3) /* 8029F464 0029B0C4 C0 6D AD E0 */ lfs f3, lbl_806400A0-_SDA_BASE_(r13) /* 8029F468 0029B0C8 EC 03 08 24 */ fdivs f0, f3, f1 /* 8029F46C 0029B0CC D0 63 05 10 */ stfs f3, 0x510(r3) /* 8029F470 0029B0D0 93 C3 00 08 */ stw r30, 8(r3) /* 8029F474 0029B0D4 93 C3 00 04 */ stw r30, 4(r3) /* 8029F478 0029B0D8 93 C3 00 00 */ stw r30, 0(r3) /* 8029F47C 0029B0DC B3 C3 04 CC */ sth r30, 0x4cc(r3) /* 8029F480 0029B0E0 B0 A3 04 CE */ sth r5, 0x4ce(r3) /* 8029F484 0029B0E4 9B C3 00 5E */ stb r30, 0x5e(r3) /* 8029F488 0029B0E8 9B C3 04 CA */ stb r30, 0x4ca(r3) /* 8029F48C 0029B0EC 81 0D AD D8 */ lwz r8, lbl_80640098-_SDA_BASE_(r13) /* 8029F490 0029B0F0 80 ED AD DC */ lwz r7, lbl_8064009C-_SDA_BASE_(r13) /* 8029F494 0029B0F4 D0 A3 04 B8 */ stfs f5, 0x4b8(r3) /* 8029F498 0029B0F8 D0 43 04 BC */ stfs f2, 0x4bc(r3) /* 8029F49C 0029B0FC 80 C3 04 B8 */ lwz r6, 0x4b8(r3) /* 8029F4A0 0029B100 91 03 00 28 */ stw r8, 0x28(r3) /* 8029F4A4 0029B104 80 A3 04 BC */ lwz r5, 0x4bc(r3) /* 8029F4A8 0029B108 90 E3 00 2C */ stw r7, 0x2c(r3) /* 8029F4AC 0029B10C 91 03 00 20 */ stw r8, 0x20(r3) /* 8029F4B0 0029B110 90 E3 00 24 */ stw r7, 0x24(r3) /* 8029F4B4 0029B114 D0 43 00 30 */ stfs f2, 0x30(r3) /* 8029F4B8 0029B118 D0 A3 04 B0 */ stfs f5, 0x4b0(r3) /* 8029F4BC 0029B11C D0 A3 00 34 */ stfs f5, 0x34(r3) /* 8029F4C0 0029B120 D0 43 04 B4 */ stfs f2, 0x4b4(r3) /* 8029F4C4 0029B124 D0 43 00 38 */ stfs f2, 0x38(r3) /* 8029F4C8 0029B128 83 ED AD D8 */ lwz r31, lbl_80640098-_SDA_BASE_(r13) /* 8029F4CC 0029B12C 81 8D AD DC */ lwz r12, lbl_8064009C-_SDA_BASE_(r13) /* 8029F4D0 0029B130 D0 43 00 14 */ stfs f2, 0x14(r3) /* 8029F4D4 0029B134 D0 43 00 0C */ stfs f2, 0xc(r3) /* 8029F4D8 0029B138 80 E3 00 14 */ lwz r7, 0x14(r3) /* 8029F4DC 0029B13C D0 C3 00 10 */ stfs f6, 0x10(r3) /* 8029F4E0 0029B140 81 23 00 0C */ lwz r9, 0xc(r3) /* 8029F4E4 0029B144 81 03 00 10 */ lwz r8, 0x10(r3) /* 8029F4E8 0029B148 93 E3 00 3C */ stw r31, 0x3c(r3) /* 8029F4EC 0029B14C 91 83 00 40 */ stw r12, 0x40(r3) /* 8029F4F0 0029B150 D0 43 00 44 */ stfs f2, 0x44(r3) /* 8029F4F4 0029B154 D0 A3 00 54 */ stfs f5, 0x54(r3) /* 8029F4F8 0029B158 D0 43 00 58 */ stfs f2, 0x58(r3) /* 8029F4FC 0029B15C D0 23 00 48 */ stfs f1, 0x48(r3) /* 8029F500 0029B160 D0 43 00 50 */ stfs f2, 0x50(r3) /* 8029F504 0029B164 D0 43 00 4C */ stfs f2, 0x4c(r3) /* 8029F508 0029B168 D0 23 04 9C */ stfs f1, 0x49c(r3) /* 8029F50C 0029B16C D0 03 04 A0 */ stfs f0, 0x4a0(r3) /* 8029F510 0029B170 D0 03 04 90 */ stfs f0, 0x490(r3) /* 8029F514 0029B174 91 63 04 94 */ stw r11, 0x494(r3) /* 8029F518 0029B178 91 43 04 98 */ stw r10, 0x498(r3) /* 8029F51C 0029B17C D0 A3 00 18 */ stfs f5, 0x18(r3) /* 8029F520 0029B180 D0 43 00 1C */ stfs f2, 0x1c(r3) /* 8029F524 0029B184 91 23 04 A4 */ stw r9, 0x4a4(r3) /* 8029F528 0029B188 91 03 04 A8 */ stw r8, 0x4a8(r3) /* 8029F52C 0029B18C 90 E3 04 AC */ stw r7, 0x4ac(r3) /* 8029F530 0029B190 90 C3 04 C0 */ stw r6, 0x4c0(r3) /* 8029F534 0029B194 90 A3 04 C4 */ stw r5, 0x4c4(r3) /* 8029F538 0029B198 A0 AD 89 40 */ lhz r5, lbl_8063DC00-_SDA_BASE_(r13) /* 8029F53C 0029B19C B0 A3 04 C8 */ sth r5, 0x4c8(r3) /* 8029F540 0029B1A0 B3 C3 01 0C */ sth r30, 0x10c(r3) lbl_8029F544: /* 8029F544 0029B1A4 98 9D 00 08 */ stb r4, 8(r29) /* 8029F548 0029B1A8 3B BD FF F4 */ addi r29, r29, -12 /* 8029F54C 0029B1AC 7C 1D 00 40 */ cmplw r29, r0 /* 8029F550 0029B1B0 40 80 FF F4 */ bge lbl_8029F544 /* 8029F554 0029B1B4 38 A3 01 00 */ addi r5, r3, 0x100 /* 8029F558 0029B1B8 38 03 00 F4 */ addi r0, r3, 0xf4 /* 8029F55C 0029B1BC 38 80 FF FF */ li r4, -1 lbl_8029F560: /* 8029F560 0029B1C0 98 85 00 08 */ stb r4, 8(r5) /* 8029F564 0029B1C4 38 A5 FF F4 */ addi r5, r5, -12 /* 8029F568 0029B1C8 7C 05 00 40 */ cmplw r5, r0 /* 8029F56C 0029B1CC 40 80 FF F4 */ bge lbl_8029F560 /* 8029F570 0029B1D0 38 80 00 00 */ li r4, 0 /* 8029F574 0029B1D4 38 00 00 01 */ li r0, 1 /* 8029F578 0029B1D8 98 83 01 0F */ stb r4, 0x10f(r3) /* 8029F57C 0029B1DC 98 03 05 1E */ stb r0, 0x51e(r3) /* 8029F580 0029B1E0 83 E1 00 1C */ lwz r31, 0x1c(r1) /* 8029F584 0029B1E4 83 C1 00 18 */ lwz r30, 0x18(r1) /* 8029F588 0029B1E8 83 A1 00 14 */ lwz r29, 0x14(r1) /* 8029F58C 0029B1EC 38 21 00 20 */ addi r1, r1, 0x20 /* 8029F590 0029B1F0 4E 80 00 20 */ blr .global calc_button_repeat calc_button_repeat: /* 8029F594 0029B1F4 80 03 00 04 */ lwz r0, 4(r3) /* 8029F598 0029B1F8 2C 00 00 00 */ cmpwi r0, 0 /* 8029F59C 0029B1FC 40 82 00 10 */ bne lbl_8029F5AC /* 8029F5A0 0029B200 80 03 00 08 */ lwz r0, 8(r3) /* 8029F5A4 0029B204 2C 00 00 00 */ cmpwi r0, 0 /* 8029F5A8 0029B208 41 82 00 3C */ beq lbl_8029F5E4 lbl_8029F5AC: /* 8029F5AC 0029B20C 80 03 00 04 */ lwz r0, 4(r3) /* 8029F5B0 0029B210 38 E0 00 00 */ li r7, 0 /* 8029F5B4 0029B214 A0 C3 04 D0 */ lhz r6, 0x4d0(r3) /* 8029F5B8 0029B218 2C 00 00 00 */ cmpwi r0, 0 /* 8029F5BC 0029B21C B0 E3 04 CC */ sth r7, 0x4cc(r3) /* 8029F5C0 0029B220 B0 C3 04 CE */ sth r6, 0x4ce(r3) /* 8029F5C4 0029B224 41 82 00 94 */ beq lbl_8029F658 /* 8029F5C8 0029B228 A0 03 04 D2 */ lhz r0, 0x4d2(r3) /* 8029F5CC 0029B22C 2C 00 00 00 */ cmpwi r0, 0 /* 8029F5D0 0029B230 41 82 00 88 */ beq lbl_8029F658 /* 8029F5D4 0029B234 80 03 00 00 */ lwz r0, 0(r3) /* 8029F5D8 0029B238 64 00 80 00 */ oris r0, r0, 0x8000 /* 8029F5DC 0029B23C 90 03 00 00 */ stw r0, 0(r3) /* 8029F5E0 0029B240 48 00 00 78 */ b lbl_8029F658 lbl_8029F5E4: /* 8029F5E4 0029B244 80 03 00 00 */ lwz r0, 0(r3) /* 8029F5E8 0029B248 2C 00 00 00 */ cmpwi r0, 0 /* 8029F5EC 0029B24C 41 82 00 6C */ beq lbl_8029F658 /* 8029F5F0 0029B250 A0 03 04 CC */ lhz r0, 0x4cc(r3) /* 8029F5F4 0029B254 7C 00 2A 14 */ add r0, r0, r5 /* 8029F5F8 0029B258 54 06 04 3E */ clrlwi r6, r0, 0x10 /* 8029F5FC 0029B25C B0 03 04 CC */ sth r0, 0x4cc(r3) /* 8029F600 0029B260 28 06 9C 40 */ cmplwi r6, 0x9c40 /* 8029F604 0029B264 41 80 00 10 */ blt lbl_8029F614 /* 8029F608 0029B268 3C C6 FF FF */ addis r6, r6, 0xffff /* 8029F60C 0029B26C 38 06 63 C0 */ addi r0, r6, 0x63c0 /* 8029F610 0029B270 B0 03 04 CC */ sth r0, 0x4cc(r3) lbl_8029F614: /* 8029F614 0029B274 A1 03 04 CC */ lhz r8, 0x4cc(r3) /* 8029F618 0029B278 A0 E3 04 CE */ lhz r7, 0x4ce(r3) /* 8029F61C 0029B27C 7C 08 38 40 */ cmplw r8, r7 /* 8029F620 0029B280 41 80 00 38 */ blt lbl_8029F658 /* 8029F624 0029B284 80 C3 00 00 */ lwz r6, 0(r3) /* 8029F628 0029B288 28 08 4E 20 */ cmplwi r8, 0x4e20 /* 8029F62C 0029B28C A0 03 04 D2 */ lhz r0, 0x4d2(r3) /* 8029F630 0029B290 64 C6 80 00 */ oris r6, r6, 0x8000 /* 8029F634 0029B294 7C 07 02 14 */ add r0, r7, r0 /* 8029F638 0029B298 90 C3 00 00 */ stw r6, 0(r3) /* 8029F63C 0029B29C B0 03 04 CE */ sth r0, 0x4ce(r3) /* 8029F640 0029B2A0 41 80 00 18 */ blt lbl_8029F658 /* 8029F644 0029B2A4 54 06 04 3E */ clrlwi r6, r0, 0x10 /* 8029F648 0029B2A8 38 E8 B1 E0 */ addi r7, r8, -20000 /* 8029F64C 0029B2AC 38 06 B1 E0 */ addi r0, r6, -20000 /* 8029F650 0029B2B0 B0 E3 04 CC */ sth r7, 0x4cc(r3) /* 8029F654 0029B2B4 B0 03 04 CE */ sth r0, 0x4ce(r3) lbl_8029F658: /* 8029F658 0029B2B8 28 04 00 02 */ cmplwi r4, 2 /* 8029F65C 0029B2BC 4C 82 00 20 */ bnelr /* 8029F660 0029B2C0 80 03 00 64 */ lwz r0, 0x64(r3) /* 8029F664 0029B2C4 2C 00 00 00 */ cmpwi r0, 0 /* 8029F668 0029B2C8 40 82 00 10 */ bne lbl_8029F678 /* 8029F66C 0029B2CC 80 03 00 68 */ lwz r0, 0x68(r3) /* 8029F670 0029B2D0 2C 00 00 00 */ cmpwi r0, 0 /* 8029F674 0029B2D4 41 82 00 3C */ beq lbl_8029F6B0 lbl_8029F678: /* 8029F678 0029B2D8 80 03 00 64 */ lwz r0, 0x64(r3) /* 8029F67C 0029B2DC 38 A0 00 00 */ li r5, 0 /* 8029F680 0029B2E0 A0 83 04 D0 */ lhz r4, 0x4d0(r3) /* 8029F684 0029B2E4 2C 00 00 00 */ cmpwi r0, 0 /* 8029F688 0029B2E8 B0 A3 04 D4 */ sth r5, 0x4d4(r3) /* 8029F68C 0029B2EC B0 83 04 D6 */ sth r4, 0x4d6(r3) /* 8029F690 0029B2F0 4D 82 00 20 */ beqlr /* 8029F694 0029B2F4 A0 03 04 D2 */ lhz r0, 0x4d2(r3) /* 8029F698 0029B2F8 2C 00 00 00 */ cmpwi r0, 0 /* 8029F69C 0029B2FC 4D 82 00 20 */ beqlr /* 8029F6A0 0029B300 80 03 00 60 */ lwz r0, 0x60(r3) /* 8029F6A4 0029B304 64 00 80 00 */ oris r0, r0, 0x8000 /* 8029F6A8 0029B308 90 03 00 60 */ stw r0, 0x60(r3) /* 8029F6AC 0029B30C 4E 80 00 20 */ blr lbl_8029F6B0: /* 8029F6B0 0029B310 80 03 00 60 */ lwz r0, 0x60(r3) /* 8029F6B4 0029B314 2C 00 00 00 */ cmpwi r0, 0 /* 8029F6B8 0029B318 4D 82 00 20 */ beqlr /* 8029F6BC 0029B31C A0 03 04 D4 */ lhz r0, 0x4d4(r3) /* 8029F6C0 0029B320 7C 00 2A 14 */ add r0, r0, r5 /* 8029F6C4 0029B324 54 04 04 3E */ clrlwi r4, r0, 0x10 /* 8029F6C8 0029B328 B0 03 04 D4 */ sth r0, 0x4d4(r3) /* 8029F6CC 0029B32C 28 04 9C 40 */ cmplwi r4, 0x9c40 /* 8029F6D0 0029B330 41 80 00 10 */ blt lbl_8029F6E0 /* 8029F6D4 0029B334 3C 84 FF FF */ addis r4, r4, 0xffff /* 8029F6D8 0029B338 38 04 63 C0 */ addi r0, r4, 0x63c0 /* 8029F6DC 0029B33C B0 03 04 D4 */ sth r0, 0x4d4(r3) lbl_8029F6E0: /* 8029F6E0 0029B340 A0 C3 04 D4 */ lhz r6, 0x4d4(r3) /* 8029F6E4 0029B344 A0 A3 04 D6 */ lhz r5, 0x4d6(r3) /* 8029F6E8 0029B348 7C 06 28 40 */ cmplw r6, r5 /* 8029F6EC 0029B34C 4D 80 00 20 */ bltlr /* 8029F6F0 0029B350 80 83 00 60 */ lwz r4, 0x60(r3) /* 8029F6F4 0029B354 28 06 4E 20 */ cmplwi r6, 0x4e20 /* 8029F6F8 0029B358 A0 03 04 D2 */ lhz r0, 0x4d2(r3) /* 8029F6FC 0029B35C 64 84 80 00 */ oris r4, r4, 0x8000 /* 8029F700 0029B360 7C 05 02 14 */ add r0, r5, r0 /* 8029F704 0029B364 90 83 00 60 */ stw r4, 0x60(r3) /* 8029F708 0029B368 B0 03 04 D6 */ sth r0, 0x4d6(r3) /* 8029F70C 0029B36C 4D 80 00 20 */ bltlr /* 8029F710 0029B370 54 04 04 3E */ clrlwi r4, r0, 0x10 /* 8029F714 0029B374 38 A6 B1 E0 */ addi r5, r6, -20000 /* 8029F718 0029B378 38 04 B1 E0 */ addi r0, r4, -20000 /* 8029F71C 0029B37C B0 A3 04 D4 */ sth r5, 0x4d4(r3) /* 8029F720 0029B380 B0 03 04 D6 */ sth r0, 0x4d6(r3) /* 8029F724 0029B384 4E 80 00 20 */ blr .global calc_acc_horizon calc_acc_horizon: /* 8029F728 0029B388 94 21 FF D0 */ stwu r1, -0x30(r1) /* 8029F72C 0029B38C 7C 08 02 A6 */ mflr r0 /* 8029F730 0029B390 90 01 00 34 */ stw r0, 0x34(r1) /* 8029F734 0029B394 DB E1 00 20 */ stfd f31, 0x20(r1) /* 8029F738 0029B398 F3 E1 00 28 */ psq_st f31, 40(r1), 0, qr0 /* 8029F73C 0029B39C DB C1 00 10 */ stfd f30, 0x10(r1) /* 8029F740 0029B3A0 F3 C1 00 18 */ psq_st f30, 24(r1), 0, qr0 /* 8029F744 0029B3A4 93 E1 00 0C */ stw r31, 0xc(r1) /* 8029F748 0029B3A8 7C 7F 1B 78 */ mr r31, r3 /* 8029F74C 0029B3AC C0 23 04 A4 */ lfs f1, 0x4a4(r3) /* 8029F750 0029B3B0 C0 03 04 A8 */ lfs f0, 0x4a8(r3) /* 8029F754 0029B3B4 EC 21 00 72 */ fmuls f1, f1, f1 /* 8029F758 0029B3B8 EC 00 00 32 */ fmuls f0, f0, f0 /* 8029F75C 0029B3BC EC 21 00 2A */ fadds f1, f1, f0 /* 8029F760 0029B3C0 4B F3 50 D5 */ bl sqrt /* 8029F764 0029B3C4 FD 00 08 18 */ frsp f8, f1 /* 8029F768 0029B3C8 C0 02 A3 A0 */ lfs f0, lbl_806429A0-_SDA2_BASE_(r2) /* 8029F76C 0029B3CC FC 00 40 00 */ fcmpu cr0, f0, f8 /* 8029F770 0029B3D0 41 82 01 28 */ beq lbl_8029F898 /* 8029F774 0029B3D4 C0 42 A3 C4 */ lfs f2, lbl_806429C4-_SDA2_BASE_(r2) /* 8029F778 0029B3D8 FC 08 10 40 */ fcmpo cr0, f8, f2 /* 8029F77C 0029B3DC 4C 41 13 82 */ cror 2, 1, 2 /* 8029F780 0029B3E0 40 82 00 08 */ bne lbl_8029F788 /* 8029F784 0029B3E4 48 00 01 14 */ b lbl_8029F898 lbl_8029F788: /* 8029F788 0029B3E8 C0 1F 04 A4 */ lfs f0, 0x4a4(r31) /* 8029F78C 0029B3EC C0 3F 04 A8 */ lfs f1, 0x4a8(r31) /* 8029F790 0029B3F0 ED 20 40 24 */ fdivs f9, f0, f8 /* 8029F794 0029B3F4 C0 02 A3 B0 */ lfs f0, lbl_806429B0-_SDA2_BASE_(r2) /* 8029F798 0029B3F8 ED 41 40 24 */ fdivs f10, f1, f8 /* 8029F79C 0029B3FC FC 08 00 40 */ fcmpo cr0, f8, f0 /* 8029F7A0 0029B400 40 81 00 08 */ ble lbl_8029F7A8 /* 8029F7A4 0029B404 ED 02 40 28 */ fsubs f8, f2, f8 lbl_8029F7A8: /* 8029F7A8 0029B408 C0 1F 00 AC */ lfs f0, 0xac(r31) /* 8029F7AC 0029B40C C0 DF 00 A8 */ lfs f6, 0xa8(r31) /* 8029F7B0 0029B410 EC 80 02 B2 */ fmuls f4, f0, f10 /* 8029F7B4 0029B414 C0 ED 89 34 */ lfs f7, lbl_8063DBF4-_SDA_BASE_(r13) /* 8029F7B8 0029B418 EC A6 02 72 */ fmuls f5, f6, f9 /* 8029F7BC 0029B41C C0 7F 04 B8 */ lfs f3, 0x4b8(r31) /* 8029F7C0 0029B420 EC 40 02 72 */ fmuls f2, f0, f9 /* 8029F7C4 0029B424 C0 3F 04 BC */ lfs f1, 0x4bc(r31) /* 8029F7C8 0029B428 EC 06 02 B2 */ fmuls f0, f6, f10 /* 8029F7CC 0029B42C EC C8 01 F2 */ fmuls f6, f8, f7 /* 8029F7D0 0029B430 EC 85 20 2A */ fadds f4, f5, f4 /* 8029F7D4 0029B434 EC 02 00 28 */ fsubs f0, f2, f0 /* 8029F7D8 0029B438 ED 08 01 B2 */ fmuls f8, f8, f6 /* 8029F7DC 0029B43C EC 44 18 28 */ fsubs f2, f4, f3 /* 8029F7E0 0029B440 EC 00 08 28 */ fsubs f0, f0, f1 /* 8029F7E4 0029B444 EC 48 00 B2 */ fmuls f2, f8, f2 /* 8029F7E8 0029B448 EC 08 00 32 */ fmuls f0, f8, f0 /* 8029F7EC 0029B44C EF E3 10 2A */ fadds f31, f3, f2 /* 8029F7F0 0029B450 EF C1 00 2A */ fadds f30, f1, f0 /* 8029F7F4 0029B454 EC 3F 07 F2 */ fmuls f1, f31, f31 /* 8029F7F8 0029B458 EC 1E 07 B2 */ fmuls f0, f30, f30 /* 8029F7FC 0029B45C EC 21 00 2A */ fadds f1, f1, f0 /* 8029F800 0029B460 4B F3 50 35 */ bl sqrt /* 8029F804 0029B464 FC 20 08 18 */ frsp f1, f1 /* 8029F808 0029B468 C0 02 A3 A0 */ lfs f0, lbl_806429A0-_SDA2_BASE_(r2) /* 8029F80C 0029B46C FC 00 08 00 */ fcmpu cr0, f0, f1 /* 8029F810 0029B470 41 82 00 88 */ beq lbl_8029F898 /* 8029F814 0029B474 EC FF 08 24 */ fdivs f7, f31, f1 /* 8029F818 0029B478 C0 BF 04 C0 */ lfs f5, 0x4c0(r31) /* 8029F81C 0029B47C C0 9F 04 C4 */ lfs f4, 0x4c4(r31) /* 8029F820 0029B480 C0 1F 05 0C */ lfs f0, 0x50c(r31) /* 8029F824 0029B484 EC DE 08 24 */ fdivs f6, f30, f1 /* 8029F828 0029B488 D0 FF 04 B8 */ stfs f7, 0x4b8(r31) /* 8029F82C 0029B48C D0 DF 04 BC */ stfs f6, 0x4bc(r31) /* 8029F830 0029B490 EC 47 28 28 */ fsubs f2, f7, f5 /* 8029F834 0029B494 EC 66 20 28 */ fsubs f3, f6, f4 /* 8029F838 0029B498 C0 2D 89 3C */ lfs f1, lbl_8063DBFC-_SDA_BASE_(r13) /* 8029F83C 0029B49C EC 21 00 B2 */ fmuls f1, f1, f2 /* 8029F840 0029B4A0 EC 25 08 2A */ fadds f1, f5, f1 /* 8029F844 0029B4A4 EC 47 08 28 */ fsubs f2, f7, f1 /* 8029F848 0029B4A8 D0 3F 04 C0 */ stfs f1, 0x4c0(r31) /* 8029F84C 0029B4AC C0 2D 89 3C */ lfs f1, lbl_8063DBFC-_SDA_BASE_(r13) /* 8029F850 0029B4B0 EC 42 00 B2 */ fmuls f2, f2, f2 /* 8029F854 0029B4B4 EC 21 00 F2 */ fmuls f1, f1, f3 /* 8029F858 0029B4B8 EC 24 08 2A */ fadds f1, f4, f1 /* 8029F85C 0029B4BC EC 66 08 28 */ fsubs f3, f6, f1 /* 8029F860 0029B4C0 D0 3F 04 C4 */ stfs f1, 0x4c4(r31) /* 8029F864 0029B4C4 EC 23 00 F2 */ fmuls f1, f3, f3 /* 8029F868 0029B4C8 EC 22 08 2A */ fadds f1, f2, f1 /* 8029F86C 0029B4CC FC 01 00 40 */ fcmpo cr0, f1, f0 /* 8029F870 0029B4D0 4C 40 13 82 */ cror 2, 0, 2 /* 8029F874 0029B4D4 40 82 00 1C */ bne lbl_8029F890 /* 8029F878 0029B4D8 A0 7F 04 C8 */ lhz r3, 0x4c8(r31) /* 8029F87C 0029B4DC 2C 03 00 00 */ cmpwi r3, 0 /* 8029F880 0029B4E0 41 82 00 18 */ beq lbl_8029F898 /* 8029F884 0029B4E4 38 03 FF FF */ addi r0, r3, -1 /* 8029F888 0029B4E8 B0 1F 04 C8 */ sth r0, 0x4c8(r31) /* 8029F88C 0029B4EC 48 00 00 0C */ b lbl_8029F898 lbl_8029F890: /* 8029F890 0029B4F0 A0 0D 89 40 */ lhz r0, lbl_8063DC00-_SDA_BASE_(r13) /* 8029F894 0029B4F4 B0 1F 04 C8 */ sth r0, 0x4c8(r31) lbl_8029F898: /* 8029F898 0029B4F8 E3 E1 00 28 */ psq_l f31, 40(r1), 0, qr0 /* 8029F89C 0029B4FC CB E1 00 20 */ lfd f31, 0x20(r1) /* 8029F8A0 0029B500 E3 C1 00 18 */ psq_l f30, 24(r1), 0, qr0 /* 8029F8A4 0029B504 CB C1 00 10 */ lfd f30, 0x10(r1) /* 8029F8A8 0029B508 80 01 00 34 */ lwz r0, 0x34(r1) /* 8029F8AC 0029B50C 83 E1 00 0C */ lwz r31, 0xc(r1) /* 8029F8B0 0029B510 7C 08 03 A6 */ mtlr r0 /* 8029F8B4 0029B514 38 21 00 30 */ addi r1, r1, 0x30 /* 8029F8B8 0029B518 4E 80 00 20 */ blr .global calc_acc_vertical calc_acc_vertical: /* 8029F8BC 0029B51C 94 21 FF C0 */ stwu r1, -0x40(r1) /* 8029F8C0 0029B520 7C 08 02 A6 */ mflr r0 /* 8029F8C4 0029B524 90 01 00 44 */ stw r0, 0x44(r1) /* 8029F8C8 0029B528 DB E1 00 30 */ stfd f31, 0x30(r1) /* 8029F8CC 0029B52C F3 E1 00 38 */ psq_st f31, 56(r1), 0, qr0 /* 8029F8D0 0029B530 DB C1 00 20 */ stfd f30, 0x20(r1) /* 8029F8D4 0029B534 F3 C1 00 28 */ psq_st f30, 40(r1), 0, qr0 /* 8029F8D8 0029B538 DB A1 00 10 */ stfd f29, 0x10(r1) /* 8029F8DC 0029B53C F3 A1 00 18 */ psq_st f29, 24(r1), 0, qr0 /* 8029F8E0 0029B540 93 E1 00 0C */ stw r31, 0xc(r1) /* 8029F8E4 0029B544 7C 7F 1B 78 */ mr r31, r3 /* 8029F8E8 0029B548 C0 23 04 A4 */ lfs f1, 0x4a4(r3) /* 8029F8EC 0029B54C C0 03 04 A8 */ lfs f0, 0x4a8(r3) /* 8029F8F0 0029B550 EC 21 00 72 */ fmuls f1, f1, f1 /* 8029F8F4 0029B554 EC 00 00 32 */ fmuls f0, f0, f0 /* 8029F8F8 0029B558 EF C1 00 2A */ fadds f30, f1, f0 /* 8029F8FC 0029B55C FC 20 F0 90 */ fmr f1, f30 /* 8029F900 0029B560 4B F3 4F 35 */ bl sqrt /* 8029F904 0029B564 C0 1F 04 AC */ lfs f0, 0x4ac(r31) /* 8029F908 0029B568 FF E0 08 18 */ frsp f31, f1 /* 8029F90C 0029B56C FF A0 00 50 */ fneg f29, f0 /* 8029F910 0029B570 EC 1D 07 72 */ fmuls f0, f29, f29 /* 8029F914 0029B574 EC 3E 00 2A */ fadds f1, f30, f0 /* 8029F918 0029B578 4B F3 4F 1D */ bl sqrt /* 8029F91C 0029B57C FC A0 08 18 */ frsp f5, f1 /* 8029F920 0029B580 C0 02 A3 A0 */ lfs f0, lbl_806429A0-_SDA2_BASE_(r2) /* 8029F924 0029B584 FC 00 28 00 */ fcmpu cr0, f0, f5 /* 8029F928 0029B588 41 82 00 8C */ beq lbl_8029F9B4 /* 8029F92C 0029B58C C0 22 A3 C4 */ lfs f1, lbl_806429C4-_SDA2_BASE_(r2) /* 8029F930 0029B590 FC 05 08 40 */ fcmpo cr0, f5, f1 /* 8029F934 0029B594 4C 41 13 82 */ cror 2, 1, 2 /* 8029F938 0029B598 40 82 00 08 */ bne lbl_8029F940 /* 8029F93C 0029B59C 48 00 00 78 */ b lbl_8029F9B4 lbl_8029F940: /* 8029F940 0029B5A0 EC 5F 28 24 */ fdivs f2, f31, f5 /* 8029F944 0029B5A4 C0 02 A3 B0 */ lfs f0, lbl_806429B0-_SDA2_BASE_(r2) /* 8029F948 0029B5A8 EF BD 28 24 */ fdivs f29, f29, f5 /* 8029F94C 0029B5AC FC 05 00 40 */ fcmpo cr0, f5, f0 /* 8029F950 0029B5B0 40 81 00 08 */ ble lbl_8029F958 /* 8029F954 0029B5B4 EC A1 28 28 */ fsubs f5, f1, f5 lbl_8029F958: /* 8029F958 0029B5B8 C0 0D 89 34 */ lfs f0, lbl_8063DBF4-_SDA_BASE_(r13) /* 8029F95C 0029B5BC C0 7F 00 54 */ lfs f3, 0x54(r31) /* 8029F960 0029B5C0 EC 85 00 32 */ fmuls f4, f5, f0 /* 8029F964 0029B5C4 C0 3F 00 58 */ lfs f1, 0x58(r31) /* 8029F968 0029B5C8 EC 42 18 28 */ fsubs f2, f2, f3 /* 8029F96C 0029B5CC EC 1D 08 28 */ fsubs f0, f29, f1 /* 8029F970 0029B5D0 EC A5 01 32 */ fmuls f5, f5, f4 /* 8029F974 0029B5D4 EC 45 00 B2 */ fmuls f2, f5, f2 /* 8029F978 0029B5D8 EC 05 00 32 */ fmuls f0, f5, f0 /* 8029F97C 0029B5DC EF E3 10 2A */ fadds f31, f3, f2 /* 8029F980 0029B5E0 EF C1 00 2A */ fadds f30, f1, f0 /* 8029F984 0029B5E4 EC 3F 07 F2 */ fmuls f1, f31, f31 /* 8029F988 0029B5E8 EC 1E 07 B2 */ fmuls f0, f30, f30 /* 8029F98C 0029B5EC EC 21 00 2A */ fadds f1, f1, f0 /* 8029F990 0029B5F0 4B F3 4E A5 */ bl sqrt /* 8029F994 0029B5F4 FC 40 08 18 */ frsp f2, f1 /* 8029F998 0029B5F8 C0 02 A3 A0 */ lfs f0, lbl_806429A0-_SDA2_BASE_(r2) /* 8029F99C 0029B5FC FC 00 10 00 */ fcmpu cr0, f0, f2 /* 8029F9A0 0029B600 41 82 00 14 */ beq lbl_8029F9B4 /* 8029F9A4 0029B604 EC 3F 10 24 */ fdivs f1, f31, f2 /* 8029F9A8 0029B608 EC 1E 10 24 */ fdivs f0, f30, f2 /* 8029F9AC 0029B60C D0 3F 00 54 */ stfs f1, 0x54(r31) /* 8029F9B0 0029B610 D0 1F 00 58 */ stfs f0, 0x58(r31) lbl_8029F9B4: /* 8029F9B4 0029B614 E3 E1 00 38 */ psq_l f31, 56(r1), 0, qr0 /* 8029F9B8 0029B618 CB E1 00 30 */ lfd f31, 0x30(r1) /* 8029F9BC 0029B61C E3 C1 00 28 */ psq_l f30, 40(r1), 0, qr0 /* 8029F9C0 0029B620 CB C1 00 20 */ lfd f30, 0x20(r1) /* 8029F9C4 0029B624 E3 A1 00 18 */ psq_l f29, 24(r1), 0, qr0 /* 8029F9C8 0029B628 CB A1 00 10 */ lfd f29, 0x10(r1) /* 8029F9CC 0029B62C 80 01 00 44 */ lwz r0, 0x44(r1) /* 8029F9D0 0029B630 83 E1 00 0C */ lwz r31, 0xc(r1) /* 8029F9D4 0029B634 7C 08 03 A6 */ mtlr r0 /* 8029F9D8 0029B638 38 21 00 40 */ addi r1, r1, 0x40 /* 8029F9DC 0029B63C 4E 80 00 20 */ blr .global read_kpad_acc read_kpad_acc: /* 8029F9E0 0029B640 94 21 FF C0 */ stwu r1, -0x40(r1) /* 8029F9E4 0029B644 7C 08 02 A6 */ mflr r0 /* 8029F9E8 0029B648 3C A0 43 30 */ lis r5, 0x4330 /* 8029F9EC 0029B64C 90 01 00 44 */ stw r0, 0x44(r1) /* 8029F9F0 0029B650 93 E1 00 3C */ stw r31, 0x3c(r1) /* 8029F9F4 0029B654 7C 9F 23 78 */ mr r31, r4 /* 8029F9F8 0029B658 93 C1 00 38 */ stw r30, 0x38(r1) /* 8029F9FC 0029B65C 7C 7E 1B 78 */ mr r30, r3 /* 8029FA00 0029B660 88 04 00 36 */ lbz r0, 0x36(r4) /* 8029FA04 0029B664 90 A1 00 20 */ stw r5, 0x20(r1) /* 8029FA08 0029B668 2C 00 00 06 */ cmpwi r0, 6 /* 8029FA0C 0029B66C 90 A1 00 28 */ stw r5, 0x28(r1) /* 8029FA10 0029B670 41 82 05 C0 */ beq lbl_8029FFD0 /* 8029FA14 0029B674 40 80 00 1C */ bge lbl_8029FA30 /* 8029FA18 0029B678 2C 00 00 03 */ cmpwi r0, 3 /* 8029FA1C 0029B67C 41 82 05 B4 */ beq lbl_8029FFD0 /* 8029FA20 0029B680 40 80 00 20 */ bge lbl_8029FA40 /* 8029FA24 0029B684 2C 00 00 01 */ cmpwi r0, 1 /* 8029FA28 0029B688 40 80 00 18 */ bge lbl_8029FA40 /* 8029FA2C 0029B68C 48 00 05 A4 */ b lbl_8029FFD0 lbl_8029FA30: /* 8029FA30 0029B690 2C 00 00 09 */ cmpwi r0, 9 /* 8029FA34 0029B694 40 80 05 9C */ bge lbl_8029FFD0 /* 8029FA38 0029B698 48 00 00 08 */ b lbl_8029FA40 /* 8029FA3C 0029B69C 48 00 05 94 */ b lbl_8029FFD0 lbl_8029FA40: /* 8029FA40 0029B6A0 A8 04 00 02 */ lha r0, 2(r4) /* 8029FA44 0029B6A4 C8 62 A3 C8 */ lfd f3, lbl_806429C8-_SDA2_BASE_(r2) /* 8029FA48 0029B6A8 7C 00 00 D0 */ neg r0, r0 /* 8029FA4C 0029B6AC C0 23 04 DC */ lfs f1, 0x4dc(r3) /* 8029FA50 0029B6B0 6C 00 80 00 */ xoris r0, r0, 0x8000 /* 8029FA54 0029B6B4 C0 02 A3 A0 */ lfs f0, lbl_806429A0-_SDA2_BASE_(r2) /* 8029FA58 0029B6B8 90 01 00 24 */ stw r0, 0x24(r1) /* 8029FA5C 0029B6BC C0 8D 89 7C */ lfs f4, lbl_8063DC3C-_SDA_BASE_(r13) /* 8029FA60 0029B6C0 C8 41 00 20 */ lfd f2, 0x20(r1) /* 8029FA64 0029B6C4 EC 42 18 28 */ fsubs f2, f2, f3 /* 8029FA68 0029B6C8 EC 22 00 72 */ fmuls f1, f2, f1 /* 8029FA6C 0029B6CC FC 01 00 40 */ fcmpo cr0, f1, f0 /* 8029FA70 0029B6D0 40 80 00 14 */ bge lbl_8029FA84 /* 8029FA74 0029B6D4 FC 80 20 50 */ fneg f4, f4 /* 8029FA78 0029B6D8 FC 01 20 40 */ fcmpo cr0, f1, f4 /* 8029FA7C 0029B6DC 40 80 00 14 */ bge lbl_8029FA90 /* 8029FA80 0029B6E0 48 00 00 14 */ b lbl_8029FA94 lbl_8029FA84: /* 8029FA84 0029B6E4 FC 01 20 40 */ fcmpo cr0, f1, f4 /* 8029FA88 0029B6E8 40 81 00 08 */ ble lbl_8029FA90 /* 8029FA8C 0029B6EC 48 00 00 08 */ b lbl_8029FA94 lbl_8029FA90: /* 8029FA90 0029B6F0 FC 80 08 90 */ fmr f4, f1 lbl_8029FA94: /* 8029FA94 0029B6F4 D0 83 04 A4 */ stfs f4, 0x4a4(r3) /* 8029FA98 0029B6F8 C8 62 A3 C8 */ lfd f3, lbl_806429C8-_SDA2_BASE_(r2) /* 8029FA9C 0029B6FC A8 04 00 06 */ lha r0, 6(r4) /* 8029FAA0 0029B700 C0 23 04 E4 */ lfs f1, 0x4e4(r3) /* 8029FAA4 0029B704 7C 00 00 D0 */ neg r0, r0 /* 8029FAA8 0029B708 C0 02 A3 A0 */ lfs f0, lbl_806429A0-_SDA2_BASE_(r2) /* 8029FAAC 0029B70C 6C 00 80 00 */ xoris r0, r0, 0x8000 /* 8029FAB0 0029B710 C0 8D 89 7C */ lfs f4, lbl_8063DC3C-_SDA_BASE_(r13) /* 8029FAB4 0029B714 90 01 00 2C */ stw r0, 0x2c(r1) /* 8029FAB8 0029B718 C8 41 00 28 */ lfd f2, 0x28(r1) /* 8029FABC 0029B71C EC 42 18 28 */ fsubs f2, f2, f3 /* 8029FAC0 0029B720 EC 22 00 72 */ fmuls f1, f2, f1 /* 8029FAC4 0029B724 FC 01 00 40 */ fcmpo cr0, f1, f0 /* 8029FAC8 0029B728 40 80 00 14 */ bge lbl_8029FADC /* 8029FACC 0029B72C FC 80 20 50 */ fneg f4, f4 /* 8029FAD0 0029B730 FC 01 20 40 */ fcmpo cr0, f1, f4 /* 8029FAD4 0029B734 40 80 00 14 */ bge lbl_8029FAE8 /* 8029FAD8 0029B738 48 00 00 14 */ b lbl_8029FAEC lbl_8029FADC: /* 8029FADC 0029B73C FC 01 20 40 */ fcmpo cr0, f1, f4 /* 8029FAE0 0029B740 40 81 00 08 */ ble lbl_8029FAE8 /* 8029FAE4 0029B744 48 00 00 08 */ b lbl_8029FAEC lbl_8029FAE8: /* 8029FAE8 0029B748 FC 80 08 90 */ fmr f4, f1 lbl_8029FAEC: /* 8029FAEC 0029B74C D0 83 04 A8 */ stfs f4, 0x4a8(r3) /* 8029FAF0 0029B750 C8 62 A3 C8 */ lfd f3, lbl_806429C8-_SDA2_BASE_(r2) /* 8029FAF4 0029B754 A8 04 00 04 */ lha r0, 4(r4) /* 8029FAF8 0029B758 C0 23 04 E0 */ lfs f1, 0x4e0(r3) /* 8029FAFC 0029B75C 6C 00 80 00 */ xoris r0, r0, 0x8000 /* 8029FB00 0029B760 C0 02 A3 A0 */ lfs f0, lbl_806429A0-_SDA2_BASE_(r2) /* 8029FB04 0029B764 90 01 00 24 */ stw r0, 0x24(r1) /* 8029FB08 0029B768 C0 8D 89 7C */ lfs f4, lbl_8063DC3C-_SDA_BASE_(r13) /* 8029FB0C 0029B76C C8 41 00 20 */ lfd f2, 0x20(r1) /* 8029FB10 0029B770 EC 42 18 28 */ fsubs f2, f2, f3 /* 8029FB14 0029B774 EC 22 00 72 */ fmuls f1, f2, f1 /* 8029FB18 0029B778 FC 01 00 40 */ fcmpo cr0, f1, f0 /* 8029FB1C 0029B77C 40 80 00 14 */ bge lbl_8029FB30 /* 8029FB20 0029B780 FC 80 20 50 */ fneg f4, f4 /* 8029FB24 0029B784 FC 01 20 40 */ fcmpo cr0, f1, f4 /* 8029FB28 0029B788 40 80 00 14 */ bge lbl_8029FB3C /* 8029FB2C 0029B78C 48 00 00 14 */ b lbl_8029FB40 lbl_8029FB30: /* 8029FB30 0029B790 FC 01 20 40 */ fcmpo cr0, f1, f4 /* 8029FB34 0029B794 40 81 00 08 */ ble lbl_8029FB3C /* 8029FB38 0029B798 48 00 00 08 */ b lbl_8029FB40 lbl_8029FB3C: /* 8029FB3C 0029B79C FC 80 08 90 */ fmr f4, f1 lbl_8029FB40: /* 8029FB40 0029B7A0 C0 23 04 A4 */ lfs f1, 0x4a4(r3) /* 8029FB44 0029B7A4 C0 03 00 0C */ lfs f0, 0xc(r3) /* 8029FB48 0029B7A8 80 A3 00 0C */ lwz r5, 0xc(r3) /* 8029FB4C 0029B7AC EC 41 00 28 */ fsubs f2, f1, f0 /* 8029FB50 0029B7B0 C0 02 A3 A0 */ lfs f0, lbl_806429A0-_SDA2_BASE_(r2) /* 8029FB54 0029B7B4 80 83 00 10 */ lwz r4, 0x10(r3) /* 8029FB58 0029B7B8 80 03 00 14 */ lwz r0, 0x14(r3) /* 8029FB5C 0029B7BC FC 02 00 40 */ fcmpo cr0, f2, f0 /* 8029FB60 0029B7C0 D0 83 04 AC */ stfs f4, 0x4ac(r3) /* 8029FB64 0029B7C4 90 A1 00 14 */ stw r5, 0x14(r1) /* 8029FB68 0029B7C8 90 81 00 18 */ stw r4, 0x18(r1) /* 8029FB6C 0029B7CC 90 01 00 1C */ stw r0, 0x1c(r1) /* 8029FB70 0029B7D0 40 80 00 0C */ bge lbl_8029FB7C /* 8029FB74 0029B7D4 FC 60 10 50 */ fneg f3, f2 /* 8029FB78 0029B7D8 48 00 00 08 */ b lbl_8029FB80 lbl_8029FB7C: /* 8029FB7C 0029B7DC FC 60 10 90 */ fmr f3, f2 lbl_8029FB80: /* 8029FB80 0029B7E0 C0 03 00 9C */ lfs f0, 0x9c(r3) /* 8029FB84 0029B7E4 FC 03 00 40 */ fcmpo cr0, f3, f0 /* 8029FB88 0029B7E8 4C 41 13 82 */ cror 2, 1, 2 /* 8029FB8C 0029B7EC 40 82 00 0C */ bne lbl_8029FB98 /* 8029FB90 0029B7F0 C0 62 A3 B0 */ lfs f3, lbl_806429B0-_SDA2_BASE_(r2) /* 8029FB94 0029B7F4 48 00 00 10 */ b lbl_8029FBA4 lbl_8029FB98: /* 8029FB98 0029B7F8 EC 63 00 24 */ fdivs f3, f3, f0 /* 8029FB9C 0029B7FC EC 63 00 F2 */ fmuls f3, f3, f3 /* 8029FBA0 0029B800 EC 63 00 F2 */ fmuls f3, f3, f3 lbl_8029FBA4: /* 8029FBA4 0029B804 C0 03 00 A0 */ lfs f0, 0xa0(r3) /* 8029FBA8 0029B808 C0 83 04 A8 */ lfs f4, 0x4a8(r3) /* 8029FBAC 0029B80C EC 63 00 32 */ fmuls f3, f3, f0 /* 8029FBB0 0029B810 C0 03 00 10 */ lfs f0, 0x10(r3) /* 8029FBB4 0029B814 C0 23 00 0C */ lfs f1, 0xc(r3) /* 8029FBB8 0029B818 EC 84 00 28 */ fsubs f4, f4, f0 /* 8029FBBC 0029B81C C0 02 A3 A0 */ lfs f0, lbl_806429A0-_SDA2_BASE_(r2) /* 8029FBC0 0029B820 EC 43 00 B2 */ fmuls f2, f3, f2 /* 8029FBC4 0029B824 FC 04 00 40 */ fcmpo cr0, f4, f0 /* 8029FBC8 0029B828 EC 01 10 2A */ fadds f0, f1, f2 /* 8029FBCC 0029B82C D0 03 00 0C */ stfs f0, 0xc(r3) /* 8029FBD0 0029B830 40 80 00 0C */ bge lbl_8029FBDC /* 8029FBD4 0029B834 FC 40 20 50 */ fneg f2, f4 /* 8029FBD8 0029B838 48 00 00 08 */ b lbl_8029FBE0 lbl_8029FBDC: /* 8029FBDC 0029B83C FC 40 20 90 */ fmr f2, f4 lbl_8029FBE0: /* 8029FBE0 0029B840 C0 03 00 9C */ lfs f0, 0x9c(r3) /* 8029FBE4 0029B844 FC 02 00 40 */ fcmpo cr0, f2, f0 /* 8029FBE8 0029B848 4C 41 13 82 */ cror 2, 1, 2 /* 8029FBEC 0029B84C 40 82 00 0C */ bne lbl_8029FBF8 /* 8029FBF0 0029B850 C0 42 A3 B0 */ lfs f2, lbl_806429B0-_SDA2_BASE_(r2) /* 8029FBF4 0029B854 48 00 00 10 */ b lbl_8029FC04 lbl_8029FBF8: /* 8029FBF8 0029B858 EC 42 00 24 */ fdivs f2, f2, f0 /* 8029FBFC 0029B85C EC 42 00 B2 */ fmuls f2, f2, f2 /* 8029FC00 0029B860 EC 42 00 B2 */ fmuls f2, f2, f2 lbl_8029FC04: /* 8029FC04 0029B864 C0 03 00 A0 */ lfs f0, 0xa0(r3) /* 8029FC08 0029B868 C0 63 04 AC */ lfs f3, 0x4ac(r3) /* 8029FC0C 0029B86C EC 42 00 32 */ fmuls f2, f2, f0 /* 8029FC10 0029B870 C0 03 00 14 */ lfs f0, 0x14(r3) /* 8029FC14 0029B874 C0 23 00 10 */ lfs f1, 0x10(r3) /* 8029FC18 0029B878 EC 63 00 28 */ fsubs f3, f3, f0 /* 8029FC1C 0029B87C C0 02 A3 A0 */ lfs f0, lbl_806429A0-_SDA2_BASE_(r2) /* 8029FC20 0029B880 EC 42 01 32 */ fmuls f2, f2, f4 /* 8029FC24 0029B884 FC 03 00 40 */ fcmpo cr0, f3, f0 /* 8029FC28 0029B888 EC 01 10 2A */ fadds f0, f1, f2 /* 8029FC2C 0029B88C D0 03 00 10 */ stfs f0, 0x10(r3) /* 8029FC30 0029B890 40 80 00 0C */ bge lbl_8029FC3C /* 8029FC34 0029B894 FC 80 18 50 */ fneg f4, f3 /* 8029FC38 0029B898 48 00 00 08 */ b lbl_8029FC40 lbl_8029FC3C: /* 8029FC3C 0029B89C FC 80 18 90 */ fmr f4, f3 lbl_8029FC40: /* 8029FC40 0029B8A0 C0 03 00 9C */ lfs f0, 0x9c(r3) /* 8029FC44 0029B8A4 FC 04 00 40 */ fcmpo cr0, f4, f0 /* 8029FC48 0029B8A8 4C 41 13 82 */ cror 2, 1, 2 /* 8029FC4C 0029B8AC 40 82 00 0C */ bne lbl_8029FC58 /* 8029FC50 0029B8B0 C0 82 A3 B0 */ lfs f4, lbl_806429B0-_SDA2_BASE_(r2) /* 8029FC54 0029B8B4 48 00 00 10 */ b lbl_8029FC64 lbl_8029FC58: /* 8029FC58 0029B8B8 EC 84 00 24 */ fdivs f4, f4, f0 /* 8029FC5C 0029B8BC EC 84 01 32 */ fmuls f4, f4, f4 /* 8029FC60 0029B8C0 EC 84 01 32 */ fmuls f4, f4, f4 lbl_8029FC64: /* 8029FC64 0029B8C4 C0 03 00 A0 */ lfs f0, 0xa0(r3) /* 8029FC68 0029B8C8 C0 23 00 0C */ lfs f1, 0xc(r3) /* 8029FC6C 0029B8CC EC 84 00 32 */ fmuls f4, f4, f0 /* 8029FC70 0029B8D0 C0 03 00 10 */ lfs f0, 0x10(r3) /* 8029FC74 0029B8D4 C0 43 00 14 */ lfs f2, 0x14(r3) /* 8029FC78 0029B8D8 EC 21 00 72 */ fmuls f1, f1, f1 /* 8029FC7C 0029B8DC EC 00 00 32 */ fmuls f0, f0, f0 /* 8029FC80 0029B8E0 EC 64 00 F2 */ fmuls f3, f4, f3 /* 8029FC84 0029B8E4 EC 01 00 2A */ fadds f0, f1, f0 /* 8029FC88 0029B8E8 EC 42 18 2A */ fadds f2, f2, f3 /* 8029FC8C 0029B8EC EC 22 00 B2 */ fmuls f1, f2, f2 /* 8029FC90 0029B8F0 D0 43 00 14 */ stfs f2, 0x14(r3) /* 8029FC94 0029B8F4 EC 21 00 2A */ fadds f1, f1, f0 /* 8029FC98 0029B8F8 4B F3 4B 9D */ bl sqrt /* 8029FC9C 0029B8FC C0 41 00 14 */ lfs f2, 0x14(r1) /* 8029FCA0 0029B900 FC C0 08 18 */ frsp f6, f1 /* 8029FCA4 0029B904 C0 1E 00 0C */ lfs f0, 0xc(r30) /* 8029FCA8 0029B908 C0 21 00 18 */ lfs f1, 0x18(r1) /* 8029FCAC 0029B90C EC A2 00 28 */ fsubs f5, f2, f0 /* 8029FCB0 0029B910 C0 1E 00 10 */ lfs f0, 0x10(r30) /* 8029FCB4 0029B914 C0 41 00 1C */ lfs f2, 0x1c(r1) /* 8029FCB8 0029B918 EC 81 00 28 */ fsubs f4, f1, f0 /* 8029FCBC 0029B91C C0 1E 00 14 */ lfs f0, 0x14(r30) /* 8029FCC0 0029B920 EC 25 01 72 */ fmuls f1, f5, f5 /* 8029FCC4 0029B924 EC 62 00 28 */ fsubs f3, f2, f0 /* 8029FCC8 0029B928 D0 DE 00 18 */ stfs f6, 0x18(r30) /* 8029FCCC 0029B92C EC 04 01 32 */ fmuls f0, f4, f4 /* 8029FCD0 0029B930 D0 A1 00 14 */ stfs f5, 0x14(r1) /* 8029FCD4 0029B934 EC 43 00 F2 */ fmuls f2, f3, f3 /* 8029FCD8 0029B938 EC 01 00 2A */ fadds f0, f1, f0 /* 8029FCDC 0029B93C D0 81 00 18 */ stfs f4, 0x18(r1) /* 8029FCE0 0029B940 D0 61 00 1C */ stfs f3, 0x1c(r1) /* 8029FCE4 0029B944 EC 22 00 2A */ fadds f1, f2, f0 /* 8029FCE8 0029B948 4B F3 4B 4D */ bl sqrt /* 8029FCEC 0029B94C FC 00 08 18 */ frsp f0, f1 /* 8029FCF0 0029B950 7F C3 F3 78 */ mr r3, r30 /* 8029FCF4 0029B954 D0 1E 00 1C */ stfs f0, 0x1c(r30) /* 8029FCF8 0029B958 4B FF FA 31 */ bl calc_acc_horizon /* 8029FCFC 0029B95C 7F C3 F3 78 */ mr r3, r30 /* 8029FD00 0029B960 4B FF FB BD */ bl calc_acc_vertical /* 8029FD04 0029B964 88 1F 00 29 */ lbz r0, 0x29(r31) /* 8029FD08 0029B968 7C 00 07 75 */ extsb. r0, r0 /* 8029FD0C 0029B96C 40 82 02 C4 */ bne lbl_8029FFD0 /* 8029FD10 0029B970 88 1F 00 28 */ lbz r0, 0x28(r31) /* 8029FD14 0029B974 28 00 00 01 */ cmplwi r0, 1 /* 8029FD18 0029B978 40 82 02 B8 */ bne lbl_8029FFD0 /* 8029FD1C 0029B97C 88 1F 00 36 */ lbz r0, 0x36(r31) /* 8029FD20 0029B980 28 00 00 04 */ cmplwi r0, 4 /* 8029FD24 0029B984 41 82 00 10 */ beq lbl_8029FD34 /* 8029FD28 0029B988 28 00 00 05 */ cmplwi r0, 5 /* 8029FD2C 0029B98C 41 82 00 08 */ beq lbl_8029FD34 /* 8029FD30 0029B990 48 00 02 A0 */ b lbl_8029FFD0 lbl_8029FD34: /* 8029FD34 0029B994 A8 1F 00 2A */ lha r0, 0x2a(r31) /* 8029FD38 0029B998 80 BE 00 68 */ lwz r5, 0x68(r30) /* 8029FD3C 0029B99C 7C 00 00 D0 */ neg r0, r0 /* 8029FD40 0029B9A0 80 9E 00 6C */ lwz r4, 0x6c(r30) /* 8029FD44 0029B9A4 6C 00 80 00 */ xoris r0, r0, 0x8000 /* 8029FD48 0029B9A8 80 7E 00 70 */ lwz r3, 0x70(r30) /* 8029FD4C 0029B9AC 90 01 00 2C */ stw r0, 0x2c(r1) /* 8029FD50 0029B9B0 C8 42 A3 C8 */ lfd f2, lbl_806429C8-_SDA2_BASE_(r2) /* 8029FD54 0029B9B4 C8 01 00 28 */ lfd f0, 0x28(r1) /* 8029FD58 0029B9B8 C0 3E 04 E8 */ lfs f1, 0x4e8(r30) /* 8029FD5C 0029B9BC EC 40 10 28 */ fsubs f2, f0, f2 /* 8029FD60 0029B9C0 C0 02 A3 A0 */ lfs f0, lbl_806429A0-_SDA2_BASE_(r2) /* 8029FD64 0029B9C4 90 A1 00 08 */ stw r5, 8(r1) /* 8029FD68 0029B9C8 C0 6D 89 80 */ lfs f3, lbl_8063DC40-_SDA_BASE_(r13) /* 8029FD6C 0029B9CC EC 22 00 72 */ fmuls f1, f2, f1 /* 8029FD70 0029B9D0 90 81 00 0C */ stw r4, 0xc(r1) /* 8029FD74 0029B9D4 90 61 00 10 */ stw r3, 0x10(r1) /* 8029FD78 0029B9D8 FC 01 00 40 */ fcmpo cr0, f1, f0 /* 8029FD7C 0029B9DC 40 80 00 14 */ bge lbl_8029FD90 /* 8029FD80 0029B9E0 FC 60 18 50 */ fneg f3, f3 /* 8029FD84 0029B9E4 FC 01 18 40 */ fcmpo cr0, f1, f3 /* 8029FD88 0029B9E8 40 80 00 14 */ bge lbl_8029FD9C /* 8029FD8C 0029B9EC 48 00 00 14 */ b lbl_8029FDA0 lbl_8029FD90: /* 8029FD90 0029B9F0 FC 01 18 40 */ fcmpo cr0, f1, f3 /* 8029FD94 0029B9F4 40 81 00 08 */ ble lbl_8029FD9C /* 8029FD98 0029B9F8 48 00 00 08 */ b lbl_8029FDA0 lbl_8029FD9C: /* 8029FD9C 0029B9FC FC 60 08 90 */ fmr f3, f1 lbl_8029FDA0: /* 8029FDA0 0029BA00 C0 3E 00 68 */ lfs f1, 0x68(r30) /* 8029FDA4 0029BA04 C0 02 A3 A0 */ lfs f0, lbl_806429A0-_SDA2_BASE_(r2) /* 8029FDA8 0029BA08 EC 83 08 28 */ fsubs f4, f3, f1 /* 8029FDAC 0029BA0C FC 04 00 40 */ fcmpo cr0, f4, f0 /* 8029FDB0 0029BA10 40 80 00 0C */ bge lbl_8029FDBC /* 8029FDB4 0029BA14 FC A0 20 50 */ fneg f5, f4 /* 8029FDB8 0029BA18 48 00 00 08 */ b lbl_8029FDC0 lbl_8029FDBC: /* 8029FDBC 0029BA1C FC A0 20 90 */ fmr f5, f4 lbl_8029FDC0: /* 8029FDC0 0029BA20 C0 1E 00 9C */ lfs f0, 0x9c(r30) /* 8029FDC4 0029BA24 FC 05 00 40 */ fcmpo cr0, f5, f0 /* 8029FDC8 0029BA28 4C 41 13 82 */ cror 2, 1, 2 /* 8029FDCC 0029BA2C 40 82 00 0C */ bne lbl_8029FDD8 /* 8029FDD0 0029BA30 C0 A2 A3 B0 */ lfs f5, lbl_806429B0-_SDA2_BASE_(r2) /* 8029FDD4 0029BA34 48 00 00 10 */ b lbl_8029FDE4 lbl_8029FDD8: /* 8029FDD8 0029BA38 EC A5 00 24 */ fdivs f5, f5, f0 /* 8029FDDC 0029BA3C EC A5 01 72 */ fmuls f5, f5, f5 /* 8029FDE0 0029BA40 EC A5 01 72 */ fmuls f5, f5, f5 lbl_8029FDE4: /* 8029FDE4 0029BA44 C0 1E 00 A0 */ lfs f0, 0xa0(r30) /* 8029FDE8 0029BA48 C0 5E 00 68 */ lfs f2, 0x68(r30) /* 8029FDEC 0029BA4C EC A5 00 32 */ fmuls f5, f5, f0 /* 8029FDF0 0029BA50 C8 62 A3 C8 */ lfd f3, lbl_806429C8-_SDA2_BASE_(r2) /* 8029FDF4 0029BA54 C0 3E 04 F0 */ lfs f1, 0x4f0(r30) /* 8029FDF8 0029BA58 C0 02 A3 A0 */ lfs f0, lbl_806429A0-_SDA2_BASE_(r2) /* 8029FDFC 0029BA5C EC 85 01 32 */ fmuls f4, f5, f4 /* 8029FE00 0029BA60 EC 42 20 2A */ fadds f2, f2, f4 /* 8029FE04 0029BA64 D0 5E 00 68 */ stfs f2, 0x68(r30) /* 8029FE08 0029BA68 A8 1F 00 2E */ lha r0, 0x2e(r31) /* 8029FE0C 0029BA6C C0 8D 89 80 */ lfs f4, lbl_8063DC40-_SDA_BASE_(r13) /* 8029FE10 0029BA70 7C 00 00 D0 */ neg r0, r0 /* 8029FE14 0029BA74 6C 00 80 00 */ xoris r0, r0, 0x8000 /* 8029FE18 0029BA78 90 01 00 24 */ stw r0, 0x24(r1) /* 8029FE1C 0029BA7C C8 41 00 20 */ lfd f2, 0x20(r1) /* 8029FE20 0029BA80 EC 42 18 28 */ fsubs f2, f2, f3 /* 8029FE24 0029BA84 EC 22 00 72 */ fmuls f1, f2, f1 /* 8029FE28 0029BA88 FC 01 00 40 */ fcmpo cr0, f1, f0 /* 8029FE2C 0029BA8C 40 80 00 14 */ bge lbl_8029FE40 /* 8029FE30 0029BA90 FC 80 20 50 */ fneg f4, f4 /* 8029FE34 0029BA94 FC 01 20 40 */ fcmpo cr0, f1, f4 /* 8029FE38 0029BA98 40 80 00 14 */ bge lbl_8029FE4C /* 8029FE3C 0029BA9C 48 00 00 14 */ b lbl_8029FE50 lbl_8029FE40: /* 8029FE40 0029BAA0 FC 01 20 40 */ fcmpo cr0, f1, f4 /* 8029FE44 0029BAA4 40 81 00 08 */ ble lbl_8029FE4C /* 8029FE48 0029BAA8 48 00 00 08 */ b lbl_8029FE50 lbl_8029FE4C: /* 8029FE4C 0029BAAC FC 80 08 90 */ fmr f4, f1 lbl_8029FE50: /* 8029FE50 0029BAB0 C0 3E 00 6C */ lfs f1, 0x6c(r30) /* 8029FE54 0029BAB4 C0 02 A3 A0 */ lfs f0, lbl_806429A0-_SDA2_BASE_(r2) /* 8029FE58 0029BAB8 EC 84 08 28 */ fsubs f4, f4, f1 /* 8029FE5C 0029BABC FC 04 00 40 */ fcmpo cr0, f4, f0 /* 8029FE60 0029BAC0 40 80 00 0C */ bge lbl_8029FE6C /* 8029FE64 0029BAC4 FC A0 20 50 */ fneg f5, f4 /* 8029FE68 0029BAC8 48 00 00 08 */ b lbl_8029FE70 lbl_8029FE6C: /* 8029FE6C 0029BACC FC A0 20 90 */ fmr f5, f4 lbl_8029FE70: /* 8029FE70 0029BAD0 C0 1E 00 9C */ lfs f0, 0x9c(r30) /* 8029FE74 0029BAD4 FC 05 00 40 */ fcmpo cr0, f5, f0 /* 8029FE78 0029BAD8 4C 41 13 82 */ cror 2, 1, 2 /* 8029FE7C 0029BADC 40 82 00 0C */ bne lbl_8029FE88 /* 8029FE80 0029BAE0 C0 A2 A3 B0 */ lfs f5, lbl_806429B0-_SDA2_BASE_(r2) /* 8029FE84 0029BAE4 48 00 00 10 */ b lbl_8029FE94 lbl_8029FE88: /* 8029FE88 0029BAE8 EC A5 00 24 */ fdivs f5, f5, f0 /* 8029FE8C 0029BAEC EC A5 01 72 */ fmuls f5, f5, f5 /* 8029FE90 0029BAF0 EC A5 01 72 */ fmuls f5, f5, f5 lbl_8029FE94: /* 8029FE94 0029BAF4 C0 1E 00 A0 */ lfs f0, 0xa0(r30) /* 8029FE98 0029BAF8 C0 5E 00 6C */ lfs f2, 0x6c(r30) /* 8029FE9C 0029BAFC EC A5 00 32 */ fmuls f5, f5, f0 /* 8029FEA0 0029BB00 C8 62 A3 C8 */ lfd f3, lbl_806429C8-_SDA2_BASE_(r2) /* 8029FEA4 0029BB04 C0 3E 04 EC */ lfs f1, 0x4ec(r30) /* 8029FEA8 0029BB08 C0 02 A3 A0 */ lfs f0, lbl_806429A0-_SDA2_BASE_(r2) /* 8029FEAC 0029BB0C EC 85 01 32 */ fmuls f4, f5, f4 /* 8029FEB0 0029BB10 EC 42 20 2A */ fadds f2, f2, f4 /* 8029FEB4 0029BB14 D0 5E 00 6C */ stfs f2, 0x6c(r30) /* 8029FEB8 0029BB18 A8 1F 00 2C */ lha r0, 0x2c(r31) /* 8029FEBC 0029BB1C C0 8D 89 80 */ lfs f4, lbl_8063DC40-_SDA_BASE_(r13) /* 8029FEC0 0029BB20 6C 00 80 00 */ xoris r0, r0, 0x8000 /* 8029FEC4 0029BB24 90 01 00 2C */ stw r0, 0x2c(r1) /* 8029FEC8 0029BB28 C8 41 00 28 */ lfd f2, 0x28(r1) /* 8029FECC 0029BB2C EC 42 18 28 */ fsubs f2, f2, f3 /* 8029FED0 0029BB30 EC 22 00 72 */ fmuls f1, f2, f1 /* 8029FED4 0029BB34 FC 01 00 40 */ fcmpo cr0, f1, f0 /* 8029FED8 0029BB38 40 80 00 14 */ bge lbl_8029FEEC /* 8029FEDC 0029BB3C FC 80 20 50 */ fneg f4, f4 /* 8029FEE0 0029BB40 FC 01 20 40 */ fcmpo cr0, f1, f4 /* 8029FEE4 0029BB44 40 80 00 14 */ bge lbl_8029FEF8 /* 8029FEE8 0029BB48 48 00 00 14 */ b lbl_8029FEFC lbl_8029FEEC: /* 8029FEEC 0029BB4C FC 01 20 40 */ fcmpo cr0, f1, f4 /* 8029FEF0 0029BB50 40 81 00 08 */ ble lbl_8029FEF8 /* 8029FEF4 0029BB54 48 00 00 08 */ b lbl_8029FEFC lbl_8029FEF8: /* 8029FEF8 0029BB58 FC 80 08 90 */ fmr f4, f1 lbl_8029FEFC: /* 8029FEFC 0029BB5C C0 3E 00 70 */ lfs f1, 0x70(r30) /* 8029FF00 0029BB60 C0 02 A3 A0 */ lfs f0, lbl_806429A0-_SDA2_BASE_(r2) /* 8029FF04 0029BB64 EC 64 08 28 */ fsubs f3, f4, f1 /* 8029FF08 0029BB68 FC 03 00 40 */ fcmpo cr0, f3, f0 /* 8029FF0C 0029BB6C 40 80 00 0C */ bge lbl_8029FF18 /* 8029FF10 0029BB70 FC 80 18 50 */ fneg f4, f3 /* 8029FF14 0029BB74 48 00 00 08 */ b lbl_8029FF1C lbl_8029FF18: /* 8029FF18 0029BB78 FC 80 18 90 */ fmr f4, f3 lbl_8029FF1C: /* 8029FF1C 0029BB7C C0 1E 00 9C */ lfs f0, 0x9c(r30) /* 8029FF20 0029BB80 FC 04 00 40 */ fcmpo cr0, f4, f0 /* 8029FF24 0029BB84 4C 41 13 82 */ cror 2, 1, 2 /* 8029FF28 0029BB88 40 82 00 0C */ bne lbl_8029FF34 /* 8029FF2C 0029BB8C C0 82 A3 B0 */ lfs f4, lbl_806429B0-_SDA2_BASE_(r2) /* 8029FF30 0029BB90 48 00 00 10 */ b lbl_8029FF40 lbl_8029FF34: /* 8029FF34 0029BB94 EC 84 00 24 */ fdivs f4, f4, f0 /* 8029FF38 0029BB98 EC 84 01 32 */ fmuls f4, f4, f4 /* 8029FF3C 0029BB9C EC 84 01 32 */ fmuls f4, f4, f4 lbl_8029FF40: /* 8029FF40 0029BBA0 C0 1E 00 A0 */ lfs f0, 0xa0(r30) /* 8029FF44 0029BBA4 C0 3E 00 68 */ lfs f1, 0x68(r30) /* 8029FF48 0029BBA8 EC 84 00 32 */ fmuls f4, f4, f0 /* 8029FF4C 0029BBAC C0 1E 00 6C */ lfs f0, 0x6c(r30) /* 8029FF50 0029BBB0 C0 5E 00 70 */ lfs f2, 0x70(r30) /* 8029FF54 0029BBB4 EC 21 00 72 */ fmuls f1, f1, f1 /* 8029FF58 0029BBB8 EC 00 00 32 */ fmuls f0, f0, f0 /* 8029FF5C 0029BBBC EC 64 00 F2 */ fmuls f3, f4, f3 /* 8029FF60 0029BBC0 EC 01 00 2A */ fadds f0, f1, f0 /* 8029FF64 0029BBC4 EC 42 18 2A */ fadds f2, f2, f3 /* 8029FF68 0029BBC8 EC 22 00 B2 */ fmuls f1, f2, f2 /* 8029FF6C 0029BBCC D0 5E 00 70 */ stfs f2, 0x70(r30) /* 8029FF70 0029BBD0 EC 21 00 2A */ fadds f1, f1, f0 /* 8029FF74 0029BBD4 4B F3 48 C1 */ bl sqrt /* 8029FF78 0029BBD8 C0 41 00 08 */ lfs f2, 8(r1) /* 8029FF7C 0029BBDC FC C0 08 18 */ frsp f6, f1 /* 8029FF80 0029BBE0 C0 1E 00 68 */ lfs f0, 0x68(r30) /* 8029FF84 0029BBE4 C0 21 00 0C */ lfs f1, 0xc(r1) /* 8029FF88 0029BBE8 EC A2 00 28 */ fsubs f5, f2, f0 /* 8029FF8C 0029BBEC C0 1E 00 6C */ lfs f0, 0x6c(r30) /* 8029FF90 0029BBF0 C0 41 00 10 */ lfs f2, 0x10(r1) /* 8029FF94 0029BBF4 EC 81 00 28 */ fsubs f4, f1, f0 /* 8029FF98 0029BBF8 C0 1E 00 70 */ lfs f0, 0x70(r30) /* 8029FF9C 0029BBFC EC 25 01 72 */ fmuls f1, f5, f5 /* 8029FFA0 0029BC00 EC 62 00 28 */ fsubs f3, f2, f0 /* 8029FFA4 0029BC04 D0 DE 00 74 */ stfs f6, 0x74(r30) /* 8029FFA8 0029BC08 EC 04 01 32 */ fmuls f0, f4, f4 /* 8029FFAC 0029BC0C D0 A1 00 08 */ stfs f5, 8(r1) /* 8029FFB0 0029BC10 EC 43 00 F2 */ fmuls f2, f3, f3 /* 8029FFB4 0029BC14 EC 01 00 2A */ fadds f0, f1, f0 /* 8029FFB8 0029BC18 D0 81 00 0C */ stfs f4, 0xc(r1) /* 8029FFBC 0029BC1C D0 61 00 10 */ stfs f3, 0x10(r1) /* 8029FFC0 0029BC20 EC 22 00 2A */ fadds f1, f2, f0 /* 8029FFC4 0029BC24 4B F3 48 71 */ bl sqrt /* 8029FFC8 0029BC28 FC 00 08 18 */ frsp f0, f1 /* 8029FFCC 0029BC2C D0 1E 00 78 */ stfs f0, 0x78(r30) lbl_8029FFD0: /* 8029FFD0 0029BC30 80 01 00 44 */ lwz r0, 0x44(r1) /* 8029FFD4 0029BC34 83 E1 00 3C */ lwz r31, 0x3c(r1) /* 8029FFD8 0029BC38 83 C1 00 38 */ lwz r30, 0x38(r1) /* 8029FFDC 0029BC3C 7C 08 03 A6 */ mtlr r0 /* 8029FFE0 0029BC40 38 21 00 40 */ addi r1, r1, 0x40 /* 8029FFE4 0029BC44 4E 80 00 20 */ blr .global select_2obj_first select_2obj_first: /* 8029FFE8 0029BC48 94 21 FF 80 */ stwu r1, -0x80(r1) /* 8029FFEC 0029BC4C 7C 08 02 A6 */ mflr r0 /* 8029FFF0 0029BC50 90 01 00 84 */ stw r0, 0x84(r1) /* 8029FFF4 0029BC54 DB E1 00 70 */ stfd f31, 0x70(r1) /* 8029FFF8 0029BC58 F3 E1 00 78 */ psq_st f31, 120(r1), 0, qr0 /* 8029FFFC 0029BC5C DB C1 00 60 */ stfd f30, 0x60(r1) /* 802A0000 0029BC60 F3 C1 00 68 */ psq_st f30, 104(r1), 0, qr0 /* 802A0004 0029BC64 DB A1 00 50 */ stfd f29, 0x50(r1) /* 802A0008 0029BC68 F3 A1 00 58 */ psq_st f29, 88(r1), 0, qr0 /* 802A000C 0029BC6C DB 81 00 40 */ stfd f28, 0x40(r1) /* 802A0010 0029BC70 F3 81 00 48 */ psq_st f28, 72(r1), 0, qr0 /* 802A0014 0029BC74 DB 61 00 30 */ stfd f27, 0x30(r1) /* 802A0018 0029BC78 F3 61 00 38 */ psq_st f27, 56(r1), 0, qr0 /* 802A001C 0029BC7C 39 61 00 30 */ addi r11, r1, 0x30 /* 802A0020 0029BC80 4B F2 71 01 */ bl _savegpr_25 /* 802A0024 0029BC84 C3 CD 89 50 */ lfs f30, lbl_8063DC10-_SDA_BASE_(r13) /* 802A0028 0029BC88 7C 79 1B 78 */ mr r25, r3 /* 802A002C 0029BC8C C3 A2 A3 A0 */ lfs f29, lbl_806429A0-_SDA2_BASE_(r2) /* 802A0030 0029BC90 3B A3 00 C4 */ addi r29, r3, 0xc4 /* 802A0034 0029BC94 C3 E2 A3 B0 */ lfs f31, lbl_806429B0-_SDA2_BASE_(r2) /* 802A0038 0029BC98 3B E3 00 E8 */ addi r31, r3, 0xe8 lbl_802A003C: /* 802A003C 0029BC9C 88 1D 00 08 */ lbz r0, 8(r29) /* 802A0040 0029BCA0 7C 00 07 75 */ extsb. r0, r0 /* 802A0044 0029BCA4 40 82 00 F8 */ bne lbl_802A013C /* 802A0048 0029BCA8 3B 9D 00 0C */ addi r28, r29, 0xc /* 802A004C 0029BCAC 3B D9 00 E8 */ addi r30, r25, 0xe8 lbl_802A0050: /* 802A0050 0029BCB0 88 1C 00 08 */ lbz r0, 8(r28) /* 802A0054 0029BCB4 7C 00 07 75 */ extsb. r0, r0 /* 802A0058 0029BCB8 40 82 00 D8 */ bne lbl_802A0130 /* 802A005C 0029BCBC C0 7C 00 00 */ lfs f3, 0(r28) /* 802A0060 0029BCC0 C0 5D 00 00 */ lfs f2, 0(r29) /* 802A0064 0029BCC4 C0 3C 00 04 */ lfs f1, 4(r28) /* 802A0068 0029BCC8 C0 1D 00 04 */ lfs f0, 4(r29) /* 802A006C 0029BCCC EF 63 10 28 */ fsubs f27, f3, f2 /* 802A0070 0029BCD0 EF 81 00 28 */ fsubs f28, f1, f0 /* 802A0074 0029BCD4 EC 3B 06 F2 */ fmuls f1, f27, f27 /* 802A0078 0029BCD8 EC 1C 07 32 */ fmuls f0, f28, f28 /* 802A007C 0029BCDC EC 21 00 2A */ fadds f1, f1, f0 /* 802A0080 0029BCE0 4B F3 47 B5 */ bl sqrt /* 802A0084 0029BCE4 FC 00 08 18 */ frsp f0, f1 /* 802A0088 0029BCE8 C0 B9 00 B0 */ lfs f5, 0xb0(r25) /* 802A008C 0029BCEC C0 59 00 B4 */ lfs f2, 0xb4(r25) /* 802A0090 0029BCF0 C0 39 05 10 */ lfs f1, 0x510(r25) /* 802A0094 0029BCF4 EC 7F 00 24 */ fdivs f3, f31, f0 /* 802A0098 0029BCF8 C0 19 05 14 */ lfs f0, 0x514(r25) /* 802A009C 0029BCFC EF 7B 00 F2 */ fmuls f27, f27, f3 /* 802A00A0 0029BD00 EF 9C 00 F2 */ fmuls f28, f28, f3 /* 802A00A4 0029BD04 EC C1 00 F2 */ fmuls f6, f1, f3 /* 802A00A8 0029BD08 EC 85 06 F2 */ fmuls f4, f5, f27 /* 802A00AC 0029BD0C EC 62 07 32 */ fmuls f3, f2, f28 /* 802A00B0 0029BD10 EC 42 06 F2 */ fmuls f2, f2, f27 /* 802A00B4 0029BD14 EC 25 07 32 */ fmuls f1, f5, f28 /* 802A00B8 0029BD18 EC 64 18 2A */ fadds f3, f4, f3 /* 802A00BC 0029BD1C FC 06 00 40 */ fcmpo cr0, f6, f0 /* 802A00C0 0029BD20 EC 42 08 28 */ fsubs f2, f2, f1 /* 802A00C4 0029BD24 D0 61 00 08 */ stfs f3, 8(r1) /* 802A00C8 0029BD28 D0 41 00 0C */ stfs f2, 0xc(r1) /* 802A00CC 0029BD2C 4C 40 13 82 */ cror 2, 0, 2 /* 802A00D0 0029BD30 41 82 00 60 */ beq lbl_802A0130 /* 802A00D4 0029BD34 C0 0D 89 48 */ lfs f0, lbl_8063DC08-_SDA_BASE_(r13) /* 802A00D8 0029BD38 FC 06 00 40 */ fcmpo cr0, f6, f0 /* 802A00DC 0029BD3C 4C 41 13 82 */ cror 2, 1, 2 /* 802A00E0 0029BD40 41 82 00 50 */ beq lbl_802A0130 /* 802A00E4 0029BD44 C0 39 04 B8 */ lfs f1, 0x4b8(r25) /* 802A00E8 0029BD48 C0 19 04 BC */ lfs f0, 0x4bc(r25) /* 802A00EC 0029BD4C EC 21 00 F2 */ fmuls f1, f1, f3 /* 802A00F0 0029BD50 EC 00 00 B2 */ fmuls f0, f0, f2 /* 802A00F4 0029BD54 EC 01 00 2A */ fadds f0, f1, f0 /* 802A00F8 0029BD58 FC 00 E8 40 */ fcmpo cr0, f0, f29 /* 802A00FC 0029BD5C 40 80 00 20 */ bge lbl_802A011C /* 802A0100 0029BD60 FC 00 00 50 */ fneg f0, f0 /* 802A0104 0029BD64 FC 00 F0 40 */ fcmpo cr0, f0, f30 /* 802A0108 0029BD68 40 81 00 28 */ ble lbl_802A0130 /* 802A010C 0029BD6C FF C0 00 90 */ fmr f30, f0 /* 802A0110 0029BD70 7F 9B E3 78 */ mr r27, r28 /* 802A0114 0029BD74 7F BA EB 78 */ mr r26, r29 /* 802A0118 0029BD78 48 00 00 18 */ b lbl_802A0130 lbl_802A011C: /* 802A011C 0029BD7C FC 00 F0 40 */ fcmpo cr0, f0, f30 /* 802A0120 0029BD80 40 81 00 10 */ ble lbl_802A0130 /* 802A0124 0029BD84 FF C0 00 90 */ fmr f30, f0 /* 802A0128 0029BD88 7F BB EB 78 */ mr r27, r29 /* 802A012C 0029BD8C 7F 9A E3 78 */ mr r26, r28 lbl_802A0130: /* 802A0130 0029BD90 3B 9C 00 0C */ addi r28, r28, 0xc /* 802A0134 0029BD94 7C 1C F0 40 */ cmplw r28, r30 /* 802A0138 0029BD98 40 81 FF 18 */ ble lbl_802A0050 lbl_802A013C: /* 802A013C 0029BD9C 3B BD 00 0C */ addi r29, r29, 0xc /* 802A0140 0029BDA0 7C 1D F8 40 */ cmplw r29, r31 /* 802A0144 0029BDA4 41 80 FE F8 */ blt lbl_802A003C /* 802A0148 0029BDA8 C0 0D 89 50 */ lfs f0, lbl_8063DC10-_SDA_BASE_(r13) /* 802A014C 0029BDAC FC 1E 00 00 */ fcmpu cr0, f30, f0 /* 802A0150 0029BDB0 40 82 00 0C */ bne lbl_802A015C /* 802A0154 0029BDB4 38 60 00 00 */ li r3, 0 /* 802A0158 0029BDB8 48 00 00 38 */ b lbl_802A0190 lbl_802A015C: /* 802A015C 0029BDBC 80 9B 00 00 */ lwz r4, 0(r27) /* 802A0160 0029BDC0 38 60 00 02 */ li r3, 2 /* 802A0164 0029BDC4 80 1B 00 04 */ lwz r0, 4(r27) /* 802A0168 0029BDC8 90 99 00 F4 */ stw r4, 0xf4(r25) /* 802A016C 0029BDCC 90 19 00 F8 */ stw r0, 0xf8(r25) /* 802A0170 0029BDD0 80 1B 00 08 */ lwz r0, 8(r27) /* 802A0174 0029BDD4 90 19 00 FC */ stw r0, 0xfc(r25) /* 802A0178 0029BDD8 80 9A 00 00 */ lwz r4, 0(r26) /* 802A017C 0029BDDC 80 1A 00 04 */ lwz r0, 4(r26) /* 802A0180 0029BDE0 90 99 01 00 */ stw r4, 0x100(r25) /* 802A0184 0029BDE4 90 19 01 04 */ stw r0, 0x104(r25) /* 802A0188 0029BDE8 80 1A 00 08 */ lwz r0, 8(r26) /* 802A018C 0029BDEC 90 19 01 08 */ stw r0, 0x108(r25) lbl_802A0190: /* 802A0190 0029BDF0 E3 E1 00 78 */ psq_l f31, 120(r1), 0, qr0 /* 802A0194 0029BDF4 CB E1 00 70 */ lfd f31, 0x70(r1) /* 802A0198 0029BDF8 E3 C1 00 68 */ psq_l f30, 104(r1), 0, qr0 /* 802A019C 0029BDFC CB C1 00 60 */ lfd f30, 0x60(r1) /* 802A01A0 0029BE00 E3 A1 00 58 */ psq_l f29, 88(r1), 0, qr0 /* 802A01A4 0029BE04 CB A1 00 50 */ lfd f29, 0x50(r1) /* 802A01A8 0029BE08 E3 81 00 48 */ psq_l f28, 72(r1), 0, qr0 /* 802A01AC 0029BE0C CB 81 00 40 */ lfd f28, 0x40(r1) /* 802A01B0 0029BE10 E3 61 00 38 */ psq_l f27, 56(r1), 0, qr0 /* 802A01B4 0029BE14 39 61 00 30 */ addi r11, r1, 0x30 /* 802A01B8 0029BE18 CB 61 00 30 */ lfd f27, 0x30(r1) /* 802A01BC 0029BE1C 4B F2 6F B1 */ bl _restgpr_25 /* 802A01C0 0029BE20 80 01 00 84 */ lwz r0, 0x84(r1) /* 802A01C4 0029BE24 7C 08 03 A6 */ mtlr r0 /* 802A01C8 0029BE28 38 21 00 80 */ addi r1, r1, 0x80 /* 802A01CC 0029BE2C 4E 80 00 20 */ blr .global select_2obj_continue select_2obj_continue: /* 802A01D0 0029BE30 94 21 FF 80 */ stwu r1, -0x80(r1) /* 802A01D4 0029BE34 7C 08 02 A6 */ mflr r0 /* 802A01D8 0029BE38 90 01 00 84 */ stw r0, 0x84(r1) /* 802A01DC 0029BE3C DB E1 00 70 */ stfd f31, 0x70(r1) /* 802A01E0 0029BE40 F3 E1 00 78 */ psq_st f31, 120(r1), 0, qr0 /* 802A01E4 0029BE44 DB C1 00 60 */ stfd f30, 0x60(r1) /* 802A01E8 0029BE48 F3 C1 00 68 */ psq_st f30, 104(r1), 0, qr0 /* 802A01EC 0029BE4C DB A1 00 50 */ stfd f29, 0x50(r1) /* 802A01F0 0029BE50 F3 A1 00 58 */ psq_st f29, 88(r1), 0, qr0 /* 802A01F4 0029BE54 DB 81 00 40 */ stfd f28, 0x40(r1) /* 802A01F8 0029BE58 F3 81 00 48 */ psq_st f28, 72(r1), 0, qr0 /* 802A01FC 0029BE5C DB 61 00 30 */ stfd f27, 0x30(r1) /* 802A0200 0029BE60 F3 61 00 38 */ psq_st f27, 56(r1), 0, qr0 /* 802A0204 0029BE64 39 61 00 30 */ addi r11, r1, 0x30 /* 802A0208 0029BE68 4B F2 6F 19 */ bl _savegpr_25 /* 802A020C 0029BE6C C3 E2 A3 C4 */ lfs f31, lbl_806429C4-_SDA2_BASE_(r2) /* 802A0210 0029BE70 7C 7F 1B 78 */ mr r31, r3 /* 802A0214 0029BE74 C3 A2 A3 A0 */ lfs f29, lbl_806429A0-_SDA2_BASE_(r2) /* 802A0218 0029BE78 3B 83 00 C4 */ addi r28, r3, 0xc4 /* 802A021C 0029BE7C C3 C2 A3 B0 */ lfs f30, lbl_806429B0-_SDA2_BASE_(r2) /* 802A0220 0029BE80 3B C3 00 E8 */ addi r30, r3, 0xe8 lbl_802A0224: /* 802A0224 0029BE84 88 1C 00 08 */ lbz r0, 8(r28) /* 802A0228 0029BE88 7C 00 07 75 */ extsb. r0, r0 /* 802A022C 0029BE8C 40 82 01 38 */ bne lbl_802A0364 /* 802A0230 0029BE90 3B 7C 00 0C */ addi r27, r28, 0xc /* 802A0234 0029BE94 3B BF 00 E8 */ addi r29, r31, 0xe8 lbl_802A0238: /* 802A0238 0029BE98 88 1B 00 08 */ lbz r0, 8(r27) /* 802A023C 0029BE9C 7C 00 07 75 */ extsb. r0, r0 /* 802A0240 0029BEA0 40 82 01 18 */ bne lbl_802A0358 /* 802A0244 0029BEA4 C0 7B 00 00 */ lfs f3, 0(r27) /* 802A0248 0029BEA8 C0 5C 00 00 */ lfs f2, 0(r28) /* 802A024C 0029BEAC C0 3B 00 04 */ lfs f1, 4(r27) /* 802A0250 0029BEB0 C0 1C 00 04 */ lfs f0, 4(r28) /* 802A0254 0029BEB4 EF 83 10 28 */ fsubs f28, f3, f2 /* 802A0258 0029BEB8 EF 61 00 28 */ fsubs f27, f1, f0 /* 802A025C 0029BEBC EC 3C 07 32 */ fmuls f1, f28, f28 /* 802A0260 0029BEC0 EC 1B 06 F2 */ fmuls f0, f27, f27 /* 802A0264 0029BEC4 EC 21 00 2A */ fadds f1, f1, f0 /* 802A0268 0029BEC8 4B F3 45 CD */ bl sqrt /* 802A026C 0029BECC FC 40 08 18 */ frsp f2, f1 /* 802A0270 0029BED0 C0 3F 05 10 */ lfs f1, 0x510(r31) /* 802A0274 0029BED4 C0 1F 05 14 */ lfs f0, 0x514(r31) /* 802A0278 0029BED8 EC 9E 10 24 */ fdivs f4, f30, f2 /* 802A027C 0029BEDC EC 7C 01 32 */ fmuls f3, f28, f4 /* 802A0280 0029BEE0 EC 5B 01 32 */ fmuls f2, f27, f4 /* 802A0284 0029BEE4 EC 84 00 72 */ fmuls f4, f4, f1 /* 802A0288 0029BEE8 D0 61 00 08 */ stfs f3, 8(r1) /* 802A028C 0029BEEC FC 04 00 40 */ fcmpo cr0, f4, f0 /* 802A0290 0029BEF0 D0 41 00 0C */ stfs f2, 0xc(r1) /* 802A0294 0029BEF4 4C 40 13 82 */ cror 2, 0, 2 /* 802A0298 0029BEF8 41 82 00 C0 */ beq lbl_802A0358 /* 802A029C 0029BEFC C0 0D 89 48 */ lfs f0, lbl_8063DC08-_SDA_BASE_(r13) /* 802A02A0 0029BF00 FC 04 00 40 */ fcmpo cr0, f4, f0 /* 802A02A4 0029BF04 4C 41 13 82 */ cror 2, 1, 2 /* 802A02A8 0029BF08 41 82 00 B0 */ beq lbl_802A0358 /* 802A02AC 0029BF0C C0 1F 04 9C */ lfs f0, 0x49c(r31) /* 802A02B0 0029BF10 EC 84 00 28 */ fsubs f4, f4, f0 /* 802A02B4 0029BF14 FC 04 E8 40 */ fcmpo cr0, f4, f29 /* 802A02B8 0029BF18 40 80 00 10 */ bge lbl_802A02C8 /* 802A02BC 0029BF1C C0 1F 05 08 */ lfs f0, 0x508(r31) /* 802A02C0 0029BF20 EC 84 00 32 */ fmuls f4, f4, f0 /* 802A02C4 0029BF24 48 00 00 0C */ b lbl_802A02D0 lbl_802A02C8: /* 802A02C8 0029BF28 C0 1F 05 04 */ lfs f0, 0x504(r31) /* 802A02CC 0029BF2C EC 84 00 32 */ fmuls f4, f4, f0 lbl_802A02D0: /* 802A02D0 0029BF30 FC 04 F0 40 */ fcmpo cr0, f4, f30 /* 802A02D4 0029BF34 4C 41 13 82 */ cror 2, 1, 2 /* 802A02D8 0029BF38 41 82 00 80 */ beq lbl_802A0358 /* 802A02DC 0029BF3C C0 7F 04 94 */ lfs f3, 0x494(r31) /* 802A02E0 0029BF40 C0 41 00 08 */ lfs f2, 8(r1) /* 802A02E4 0029BF44 C0 3F 04 98 */ lfs f1, 0x498(r31) /* 802A02E8 0029BF48 C0 01 00 0C */ lfs f0, 0xc(r1) /* 802A02EC 0029BF4C EC 43 00 B2 */ fmuls f2, f3, f2 /* 802A02F0 0029BF50 EC 01 00 32 */ fmuls f0, f1, f0 /* 802A02F4 0029BF54 EC 22 00 2A */ fadds f1, f2, f0 /* 802A02F8 0029BF58 FC 01 E8 40 */ fcmpo cr0, f1, f29 /* 802A02FC 0029BF5C 40 80 00 10 */ bge lbl_802A030C /* 802A0300 0029BF60 FC 20 08 50 */ fneg f1, f1 /* 802A0304 0029BF64 38 00 00 01 */ li r0, 1 /* 802A0308 0029BF68 48 00 00 08 */ b lbl_802A0310 lbl_802A030C: /* 802A030C 0029BF6C 38 00 00 00 */ li r0, 0 lbl_802A0310: /* 802A0310 0029BF70 C0 0D 89 54 */ lfs f0, lbl_8063DC14-_SDA_BASE_(r13) /* 802A0314 0029BF74 FC 01 00 40 */ fcmpo cr0, f1, f0 /* 802A0318 0029BF78 4C 40 13 82 */ cror 2, 0, 2 /* 802A031C 0029BF7C 41 82 00 3C */ beq lbl_802A0358 /* 802A0320 0029BF80 EC 3E 08 28 */ fsubs f1, f30, f1 /* 802A0324 0029BF84 EC 1E 00 28 */ fsubs f0, f30, f0 /* 802A0328 0029BF88 EC 01 00 24 */ fdivs f0, f1, f0 /* 802A032C 0029BF8C EC 84 00 2A */ fadds f4, f4, f0 /* 802A0330 0029BF90 FC 04 F8 40 */ fcmpo cr0, f4, f31 /* 802A0334 0029BF94 40 80 00 24 */ bge lbl_802A0358 /* 802A0338 0029BF98 FF E0 20 90 */ fmr f31, f4 /* 802A033C 0029BF9C 2C 00 00 00 */ cmpwi r0, 0 /* 802A0340 0029BFA0 41 82 00 10 */ beq lbl_802A0350 /* 802A0344 0029BFA4 7F 7A DB 78 */ mr r26, r27 /* 802A0348 0029BFA8 7F 99 E3 78 */ mr r25, r28 /* 802A034C 0029BFAC 48 00 00 0C */ b lbl_802A0358 lbl_802A0350: /* 802A0350 0029BFB0 7F 9A E3 78 */ mr r26, r28 /* 802A0354 0029BFB4 7F 79 DB 78 */ mr r25, r27 lbl_802A0358: /* 802A0358 0029BFB8 3B 7B 00 0C */ addi r27, r27, 0xc /* 802A035C 0029BFBC 7C 1B E8 40 */ cmplw r27, r29 /* 802A0360 0029BFC0 40 81 FE D8 */ ble lbl_802A0238 lbl_802A0364: /* 802A0364 0029BFC4 3B 9C 00 0C */ addi r28, r28, 0xc /* 802A0368 0029BFC8 7C 1C F0 40 */ cmplw r28, r30 /* 802A036C 0029BFCC 41 80 FE B8 */ blt lbl_802A0224 /* 802A0370 0029BFD0 C0 02 A3 C4 */ lfs f0, lbl_806429C4-_SDA2_BASE_(r2) /* 802A0374 0029BFD4 FC 00 F8 00 */ fcmpu cr0, f0, f31 /* 802A0378 0029BFD8 40 82 00 0C */ bne lbl_802A0384 /* 802A037C 0029BFDC 38 60 00 00 */ li r3, 0 /* 802A0380 0029BFE0 48 00 00 38 */ b lbl_802A03B8 lbl_802A0384: /* 802A0384 0029BFE4 80 9A 00 00 */ lwz r4, 0(r26) /* 802A0388 0029BFE8 38 60 00 02 */ li r3, 2 /* 802A038C 0029BFEC 80 1A 00 04 */ lwz r0, 4(r26) /* 802A0390 0029BFF0 90 9F 00 F4 */ stw r4, 0xf4(r31) /* 802A0394 0029BFF4 90 1F 00 F8 */ stw r0, 0xf8(r31) /* 802A0398 0029BFF8 80 1A 00 08 */ lwz r0, 8(r26) /* 802A039C 0029BFFC 90 1F 00 FC */ stw r0, 0xfc(r31) /* 802A03A0 0029C000 80 99 00 00 */ lwz r4, 0(r25) /* 802A03A4 0029C004 80 19 00 04 */ lwz r0, 4(r25) /* 802A03A8 0029C008 90 9F 01 00 */ stw r4, 0x100(r31) /* 802A03AC 0029C00C 90 1F 01 04 */ stw r0, 0x104(r31) /* 802A03B0 0029C010 80 19 00 08 */ lwz r0, 8(r25) /* 802A03B4 0029C014 90 1F 01 08 */ stw r0, 0x108(r31) lbl_802A03B8: /* 802A03B8 0029C018 E3 E1 00 78 */ psq_l f31, 120(r1), 0, qr0 /* 802A03BC 0029C01C CB E1 00 70 */ lfd f31, 0x70(r1) /* 802A03C0 0029C020 E3 C1 00 68 */ psq_l f30, 104(r1), 0, qr0 /* 802A03C4 0029C024 CB C1 00 60 */ lfd f30, 0x60(r1) /* 802A03C8 0029C028 E3 A1 00 58 */ psq_l f29, 88(r1), 0, qr0 /* 802A03CC 0029C02C CB A1 00 50 */ lfd f29, 0x50(r1) /* 802A03D0 0029C030 E3 81 00 48 */ psq_l f28, 72(r1), 0, qr0 /* 802A03D4 0029C034 CB 81 00 40 */ lfd f28, 0x40(r1) /* 802A03D8 0029C038 E3 61 00 38 */ psq_l f27, 56(r1), 0, qr0 /* 802A03DC 0029C03C 39 61 00 30 */ addi r11, r1, 0x30 /* 802A03E0 0029C040 CB 61 00 30 */ lfd f27, 0x30(r1) /* 802A03E4 0029C044 4B F2 6D 89 */ bl _restgpr_25 /* 802A03E8 0029C048 80 01 00 84 */ lwz r0, 0x84(r1) /* 802A03EC 0029C04C 7C 08 03 A6 */ mtlr r0 /* 802A03F0 0029C050 38 21 00 80 */ addi r1, r1, 0x80 /* 802A03F4 0029C054 4E 80 00 20 */ blr .global select_1obj_first select_1obj_first: /* 802A03F8 0029C058 94 21 FF E0 */ stwu r1, -0x20(r1) /* 802A03FC 0029C05C 39 03 00 C4 */ addi r8, r3, 0xc4 /* 802A0400 0029C060 38 03 00 F4 */ addi r0, r3, 0xf4 /* 802A0404 0029C064 C0 A3 00 B0 */ lfs f5, 0xb0(r3) /* 802A0408 0029C068 C0 03 04 B8 */ lfs f0, 0x4b8(r3) /* 802A040C 0029C06C C0 63 00 B4 */ lfs f3, 0xb4(r3) /* 802A0410 0029C070 C0 23 04 BC */ lfs f1, 0x4bc(r3) /* 802A0414 0029C074 EC 85 00 32 */ fmuls f4, f5, f0 /* 802A0418 0029C078 EC 43 00 32 */ fmuls f2, f3, f0 /* 802A041C 0029C07C C0 03 04 A0 */ lfs f0, 0x4a0(r3) /* 802A0420 0029C080 EC 63 00 72 */ fmuls f3, f3, f1 /* 802A0424 0029C084 EC 25 00 72 */ fmuls f1, f5, f1 /* 802A0428 0029C088 EC E4 18 2A */ fadds f7, f4, f3 /* 802A042C 0029C08C ED 02 08 28 */ fsubs f8, f2, f1 /* 802A0430 0029C090 EC E7 00 32 */ fmuls f7, f7, f0 /* 802A0434 0029C094 ED 08 00 32 */ fmuls f8, f8, f0 lbl_802A0438: /* 802A0438 0029C098 88 88 00 08 */ lbz r4, 8(r8) /* 802A043C 0029C09C 7C 84 07 75 */ extsb. r4, r4 /* 802A0440 0029C0A0 40 82 01 54 */ bne lbl_802A0594 /* 802A0444 0029C0A4 C0 48 00 00 */ lfs f2, 0(r8) /* 802A0448 0029C0A8 C0 08 00 04 */ lfs f0, 4(r8) /* 802A044C 0029C0AC EC 22 38 28 */ fsubs f1, f2, f7 /* 802A0450 0029C0B0 C0 63 04 F4 */ lfs f3, 0x4f4(r3) /* 802A0454 0029C0B4 EC C0 40 28 */ fsubs f6, f0, f8 /* 802A0458 0029C0B8 EC A2 38 2A */ fadds f5, f2, f7 /* 802A045C 0029C0BC EC 80 40 2A */ fadds f4, f0, f8 /* 802A0460 0029C0C0 D0 21 00 10 */ stfs f1, 0x10(r1) /* 802A0464 0029C0C4 FC 01 18 40 */ fcmpo cr0, f1, f3 /* 802A0468 0029C0C8 D0 C1 00 14 */ stfs f6, 0x14(r1) /* 802A046C 0029C0CC D0 A1 00 08 */ stfs f5, 8(r1) /* 802A0470 0029C0D0 D0 81 00 0C */ stfs f4, 0xc(r1) /* 802A0474 0029C0D4 4C 40 13 82 */ cror 2, 0, 2 /* 802A0478 0029C0D8 41 82 00 34 */ beq lbl_802A04AC /* 802A047C 0029C0DC C0 43 04 FC */ lfs f2, 0x4fc(r3) /* 802A0480 0029C0E0 FC 01 10 40 */ fcmpo cr0, f1, f2 /* 802A0484 0029C0E4 4C 41 13 82 */ cror 2, 1, 2 /* 802A0488 0029C0E8 41 82 00 24 */ beq lbl_802A04AC /* 802A048C 0029C0EC C0 23 04 F8 */ lfs f1, 0x4f8(r3) /* 802A0490 0029C0F0 FC 06 08 40 */ fcmpo cr0, f6, f1 /* 802A0494 0029C0F4 4C 40 13 82 */ cror 2, 0, 2 /* 802A0498 0029C0F8 41 82 00 14 */ beq lbl_802A04AC /* 802A049C 0029C0FC C0 03 05 00 */ lfs f0, 0x500(r3) /* 802A04A0 0029C100 FC 06 00 40 */ fcmpo cr0, f6, f0 /* 802A04A4 0029C104 4C 41 13 82 */ cror 2, 1, 2 /* 802A04A8 0029C108 40 82 00 7C */ bne lbl_802A0524 lbl_802A04AC: /* 802A04AC 0029C10C C0 21 00 08 */ lfs f1, 8(r1) /* 802A04B0 0029C110 C0 03 04 F4 */ lfs f0, 0x4f4(r3) /* 802A04B4 0029C114 FC 01 00 40 */ fcmpo cr0, f1, f0 /* 802A04B8 0029C118 40 81 00 DC */ ble lbl_802A0594 /* 802A04BC 0029C11C C0 03 04 FC */ lfs f0, 0x4fc(r3) /* 802A04C0 0029C120 FC 01 00 40 */ fcmpo cr0, f1, f0 /* 802A04C4 0029C124 40 80 00 D0 */ bge lbl_802A0594 /* 802A04C8 0029C128 C0 21 00 0C */ lfs f1, 0xc(r1) /* 802A04CC 0029C12C C0 03 04 F8 */ lfs f0, 0x4f8(r3) /* 802A04D0 0029C130 FC 01 00 40 */ fcmpo cr0, f1, f0 /* 802A04D4 0029C134 40 81 00 C0 */ ble lbl_802A0594 /* 802A04D8 0029C138 C0 03 05 00 */ lfs f0, 0x500(r3) /* 802A04DC 0029C13C FC 01 00 40 */ fcmpo cr0, f1, f0 /* 802A04E0 0029C140 40 80 00 B4 */ bge lbl_802A0594 /* 802A04E4 0029C144 80 A8 00 00 */ lwz r5, 0(r8) /* 802A04E8 0029C148 38 80 00 00 */ li r4, 0 /* 802A04EC 0029C14C 80 E8 00 04 */ lwz r7, 4(r8) /* 802A04F0 0029C150 38 00 FF FF */ li r0, -1 /* 802A04F4 0029C154 80 C1 00 10 */ lwz r6, 0x10(r1) /* 802A04F8 0029C158 90 A3 01 00 */ stw r5, 0x100(r3) /* 802A04FC 0029C15C 80 A1 00 14 */ lwz r5, 0x14(r1) /* 802A0500 0029C160 90 E3 01 04 */ stw r7, 0x104(r3) /* 802A0504 0029C164 80 E8 00 08 */ lwz r7, 8(r8) /* 802A0508 0029C168 90 E3 01 08 */ stw r7, 0x108(r3) /* 802A050C 0029C16C 90 C3 00 F4 */ stw r6, 0xf4(r3) /* 802A0510 0029C170 90 A3 00 F8 */ stw r5, 0xf8(r3) /* 802A0514 0029C174 98 83 00 FC */ stb r4, 0xfc(r3) /* 802A0518 0029C178 98 03 00 FD */ stb r0, 0xfd(r3) /* 802A051C 0029C17C 38 60 FF FF */ li r3, -1 /* 802A0520 0029C180 48 00 00 84 */ b lbl_802A05A4 lbl_802A0524: /* 802A0524 0029C184 FC 05 18 40 */ fcmpo cr0, f5, f3 /* 802A0528 0029C188 4C 40 13 82 */ cror 2, 0, 2 /* 802A052C 0029C18C 41 82 00 28 */ beq lbl_802A0554 /* 802A0530 0029C190 FC 05 10 40 */ fcmpo cr0, f5, f2 /* 802A0534 0029C194 4C 41 13 82 */ cror 2, 1, 2 /* 802A0538 0029C198 41 82 00 1C */ beq lbl_802A0554 /* 802A053C 0029C19C FC 04 08 40 */ fcmpo cr0, f4, f1 /* 802A0540 0029C1A0 4C 40 13 82 */ cror 2, 0, 2 /* 802A0544 0029C1A4 41 82 00 10 */ beq lbl_802A0554 /* 802A0548 0029C1A8 FC 04 00 40 */ fcmpo cr0, f4, f0 /* 802A054C 0029C1AC 4C 41 13 82 */ cror 2, 1, 2 /* 802A0550 0029C1B0 40 82 00 44 */ bne lbl_802A0594 lbl_802A0554: /* 802A0554 0029C1B4 80 A8 00 00 */ lwz r5, 0(r8) /* 802A0558 0029C1B8 38 80 00 00 */ li r4, 0 /* 802A055C 0029C1BC 80 E8 00 04 */ lwz r7, 4(r8) /* 802A0560 0029C1C0 38 00 FF FF */ li r0, -1 /* 802A0564 0029C1C4 80 C1 00 08 */ lwz r6, 8(r1) /* 802A0568 0029C1C8 90 A3 00 F4 */ stw r5, 0xf4(r3) /* 802A056C 0029C1CC 80 A1 00 0C */ lwz r5, 0xc(r1) /* 802A0570 0029C1D0 90 E3 00 F8 */ stw r7, 0xf8(r3) /* 802A0574 0029C1D4 80 E8 00 08 */ lwz r7, 8(r8) /* 802A0578 0029C1D8 90 E3 00 FC */ stw r7, 0xfc(r3) /* 802A057C 0029C1DC 90 C3 01 00 */ stw r6, 0x100(r3) /* 802A0580 0029C1E0 90 A3 01 04 */ stw r5, 0x104(r3) /* 802A0584 0029C1E4 98 83 01 08 */ stb r4, 0x108(r3) /* 802A0588 0029C1E8 98 03 01 09 */ stb r0, 0x109(r3) /* 802A058C 0029C1EC 38 60 FF FF */ li r3, -1 /* 802A0590 0029C1F0 48 00 00 14 */ b lbl_802A05A4 lbl_802A0594: /* 802A0594 0029C1F4 39 08 00 0C */ addi r8, r8, 0xc /* 802A0598 0029C1F8 7C 08 00 40 */ cmplw r8, r0 /* 802A059C 0029C1FC 41 80 FE 9C */ blt lbl_802A0438 /* 802A05A0 0029C200 38 60 00 00 */ li r3, 0 lbl_802A05A4: /* 802A05A4 0029C204 38 21 00 20 */ addi r1, r1, 0x20 /* 802A05A8 0029C208 4E 80 00 20 */ blr .global select_1obj_continue select_1obj_continue: /* 802A05AC 0029C20C C0 0D 89 60 */ lfs f0, lbl_8063DC20-_SDA_BASE_(r13) /* 802A05B0 0029C210 38 C3 00 F4 */ addi r6, r3, 0xf4 /* 802A05B4 0029C214 38 03 01 0C */ addi r0, r3, 0x10c /* 802A05B8 0029C218 EC 80 00 32 */ fmuls f4, f0, f0 lbl_802A05BC: /* 802A05BC 0029C21C 88 86 00 08 */ lbz r4, 8(r6) /* 802A05C0 0029C220 7C 84 07 75 */ extsb. r4, r4 /* 802A05C4 0029C224 40 82 00 68 */ bne lbl_802A062C /* 802A05C8 0029C228 88 86 00 09 */ lbz r4, 9(r6) /* 802A05CC 0029C22C 7C 84 07 75 */ extsb. r4, r4 /* 802A05D0 0029C230 40 82 00 5C */ bne lbl_802A062C /* 802A05D4 0029C234 38 E3 00 C4 */ addi r7, r3, 0xc4 /* 802A05D8 0029C238 38 83 00 F4 */ addi r4, r3, 0xf4 lbl_802A05DC: /* 802A05DC 0029C23C 88 A7 00 08 */ lbz r5, 8(r7) /* 802A05E0 0029C240 7C A5 07 75 */ extsb. r5, r5 /* 802A05E4 0029C244 40 82 00 3C */ bne lbl_802A0620 /* 802A05E8 0029C248 C0 66 00 00 */ lfs f3, 0(r6) /* 802A05EC 0029C24C C0 47 00 00 */ lfs f2, 0(r7) /* 802A05F0 0029C250 C0 26 00 04 */ lfs f1, 4(r6) /* 802A05F4 0029C254 C0 07 00 04 */ lfs f0, 4(r7) /* 802A05F8 0029C258 EC 43 10 28 */ fsubs f2, f3, f2 /* 802A05FC 0029C25C EC 01 00 28 */ fsubs f0, f1, f0 /* 802A0600 0029C260 EC 22 00 B2 */ fmuls f1, f2, f2 /* 802A0604 0029C264 EC 00 00 32 */ fmuls f0, f0, f0 /* 802A0608 0029C268 EC 01 00 2A */ fadds f0, f1, f0 /* 802A060C 0029C26C FC 00 20 40 */ fcmpo cr0, f0, f4 /* 802A0610 0029C270 40 80 00 10 */ bge lbl_802A0620 /* 802A0614 0029C274 FC 80 00 90 */ fmr f4, f0 /* 802A0618 0029C278 7C C8 33 78 */ mr r8, r6 /* 802A061C 0029C27C 7C E9 3B 78 */ mr r9, r7 lbl_802A0620: /* 802A0620 0029C280 38 E7 00 0C */ addi r7, r7, 0xc /* 802A0624 0029C284 7C 07 20 40 */ cmplw r7, r4 /* 802A0628 0029C288 41 80 FF B4 */ blt lbl_802A05DC lbl_802A062C: /* 802A062C 0029C28C 38 C6 00 0C */ addi r6, r6, 0xc /* 802A0630 0029C290 7C 06 00 40 */ cmplw r6, r0 /* 802A0634 0029C294 41 80 FF 88 */ blt lbl_802A05BC /* 802A0638 0029C298 C0 0D 89 60 */ lfs f0, lbl_8063DC20-_SDA_BASE_(r13) /* 802A063C 0029C29C EC 00 00 32 */ fmuls f0, f0, f0 /* 802A0640 0029C2A0 FC 04 00 00 */ fcmpu cr0, f4, f0 /* 802A0644 0029C2A4 40 82 00 0C */ bne lbl_802A0650 /* 802A0648 0029C2A8 38 60 00 00 */ li r3, 0 /* 802A064C 0029C2AC 4E 80 00 20 */ blr lbl_802A0650: /* 802A0650 0029C2B0 80 A9 00 00 */ lwz r5, 0(r9) /* 802A0654 0029C2B4 38 03 00 F4 */ addi r0, r3, 0xf4 /* 802A0658 0029C2B8 80 89 00 04 */ lwz r4, 4(r9) /* 802A065C 0029C2BC 7C 08 00 40 */ cmplw r8, r0 /* 802A0660 0029C2C0 90 A8 00 00 */ stw r5, 0(r8) /* 802A0664 0029C2C4 90 88 00 04 */ stw r4, 4(r8) /* 802A0668 0029C2C8 80 09 00 08 */ lwz r0, 8(r9) /* 802A066C 0029C2CC 90 08 00 08 */ stw r0, 8(r8) /* 802A0670 0029C2D0 C0 A3 00 B0 */ lfs f5, 0xb0(r3) /* 802A0674 0029C2D4 C0 03 04 B8 */ lfs f0, 0x4b8(r3) /* 802A0678 0029C2D8 C0 63 00 B4 */ lfs f3, 0xb4(r3) /* 802A067C 0029C2DC C0 23 04 BC */ lfs f1, 0x4bc(r3) /* 802A0680 0029C2E0 EC 85 00 32 */ fmuls f4, f5, f0 /* 802A0684 0029C2E4 EC 43 00 32 */ fmuls f2, f3, f0 /* 802A0688 0029C2E8 C0 03 04 90 */ lfs f0, 0x490(r3) /* 802A068C 0029C2EC EC 63 00 72 */ fmuls f3, f3, f1 /* 802A0690 0029C2F0 EC 25 00 72 */ fmuls f1, f5, f1 /* 802A0694 0029C2F4 EC 64 18 2A */ fadds f3, f4, f3 /* 802A0698 0029C2F8 EC 22 08 28 */ fsubs f1, f2, f1 /* 802A069C 0029C2FC EC 40 00 F2 */ fmuls f2, f0, f3 /* 802A06A0 0029C300 D0 63 04 94 */ stfs f3, 0x494(r3) /* 802A06A4 0029C304 EC 60 00 72 */ fmuls f3, f0, f1 /* 802A06A8 0029C308 D0 23 04 98 */ stfs f1, 0x498(r3) /* 802A06AC 0029C30C 40 82 00 30 */ bne lbl_802A06DC /* 802A06B0 0029C310 C0 08 00 00 */ lfs f0, 0(r8) /* 802A06B4 0029C314 38 80 00 00 */ li r4, 0 /* 802A06B8 0029C318 38 00 FF FF */ li r0, -1 /* 802A06BC 0029C31C EC 00 10 2A */ fadds f0, f0, f2 /* 802A06C0 0029C320 D0 03 01 00 */ stfs f0, 0x100(r3) /* 802A06C4 0029C324 C0 08 00 04 */ lfs f0, 4(r8) /* 802A06C8 0029C328 EC 00 18 2A */ fadds f0, f0, f3 /* 802A06CC 0029C32C 98 83 01 08 */ stb r4, 0x108(r3) /* 802A06D0 0029C330 98 03 01 09 */ stb r0, 0x109(r3) /* 802A06D4 0029C334 D0 03 01 04 */ stfs f0, 0x104(r3) /* 802A06D8 0029C338 48 00 00 2C */ b lbl_802A0704 lbl_802A06DC: /* 802A06DC 0029C33C C0 08 00 00 */ lfs f0, 0(r8) /* 802A06E0 0029C340 38 80 00 00 */ li r4, 0 /* 802A06E4 0029C344 38 00 FF FF */ li r0, -1 /* 802A06E8 0029C348 EC 00 10 28 */ fsubs f0, f0, f2 /* 802A06EC 0029C34C D0 03 00 F4 */ stfs f0, 0xf4(r3) /* 802A06F0 0029C350 C0 08 00 04 */ lfs f0, 4(r8) /* 802A06F4 0029C354 EC 00 18 28 */ fsubs f0, f0, f3 /* 802A06F8 0029C358 98 83 00 FC */ stb r4, 0xfc(r3) /* 802A06FC 0029C35C 98 03 00 FD */ stb r0, 0xfd(r3) /* 802A0700 0029C360 D0 03 00 F8 */ stfs f0, 0xf8(r3) lbl_802A0704: /* 802A0704 0029C364 88 03 00 5E */ lbz r0, 0x5e(r3) /* 802A0708 0029C368 7C 00 07 75 */ extsb. r0, r0 /* 802A070C 0029C36C 40 80 00 0C */ bge lbl_802A0718 /* 802A0710 0029C370 38 60 FF FF */ li r3, -1 /* 802A0714 0029C374 4E 80 00 20 */ blr lbl_802A0718: /* 802A0718 0029C378 38 60 00 01 */ li r3, 1 /* 802A071C 0029C37C 4E 80 00 20 */ blr .global calc_dpd_variable calc_dpd_variable: /* 802A0720 0029C380 94 21 FF E0 */ stwu r1, -0x20(r1) /* 802A0724 0029C384 7C 08 02 A6 */ mflr r0 /* 802A0728 0029C388 90 01 00 24 */ stw r0, 0x24(r1) /* 802A072C 0029C38C 7C 80 07 75 */ extsb. r0, r4 /* 802A0730 0029C390 93 E1 00 1C */ stw r31, 0x1c(r1) /* 802A0734 0029C394 7C 9F 23 78 */ mr r31, r4 /* 802A0738 0029C398 93 C1 00 18 */ stw r30, 0x18(r1) /* 802A073C 0029C39C 7C 7E 1B 78 */ mr r30, r3 /* 802A0740 0029C3A0 40 82 00 10 */ bne lbl_802A0750 /* 802A0744 0029C3A4 38 00 00 00 */ li r0, 0 /* 802A0748 0029C3A8 98 03 00 5E */ stb r0, 0x5e(r3) /* 802A074C 0029C3AC 48 00 03 A4 */ b lbl_802A0AF0 lbl_802A0750: /* 802A0750 0029C3B0 C0 83 00 B0 */ lfs f4, 0xb0(r3) /* 802A0754 0029C3B4 C0 23 04 94 */ lfs f1, 0x494(r3) /* 802A0758 0029C3B8 C0 43 00 B4 */ lfs f2, 0xb4(r3) /* 802A075C 0029C3BC EC 64 00 72 */ fmuls f3, f4, f1 /* 802A0760 0029C3C0 C0 03 04 98 */ lfs f0, 0x498(r3) /* 802A0764 0029C3C4 EC 22 00 72 */ fmuls f1, f2, f1 /* 802A0768 0029C3C8 88 03 00 5E */ lbz r0, 0x5e(r3) /* 802A076C 0029C3CC EC 42 00 32 */ fmuls f2, f2, f0 /* 802A0770 0029C3D0 EC 04 00 32 */ fmuls f0, f4, f0 /* 802A0774 0029C3D4 7C 00 07 75 */ extsb. r0, r0 /* 802A0778 0029C3D8 EC 63 10 2A */ fadds f3, f3, f2 /* 802A077C 0029C3DC EC 41 00 28 */ fsubs f2, f1, f0 /* 802A0780 0029C3E0 D0 61 00 10 */ stfs f3, 0x10(r1) /* 802A0784 0029C3E4 D0 41 00 14 */ stfs f2, 0x14(r1) /* 802A0788 0029C3E8 40 82 00 30 */ bne lbl_802A07B8 /* 802A078C 0029C3EC 80 81 00 10 */ lwz r4, 0x10(r1) /* 802A0790 0029C3F0 80 01 00 14 */ lwz r0, 0x14(r1) /* 802A0794 0029C3F4 90 83 00 34 */ stw r4, 0x34(r3) /* 802A0798 0029C3F8 C0 02 A3 A0 */ lfs f0, lbl_806429A0-_SDA2_BASE_(r2) /* 802A079C 0029C3FC 90 03 00 38 */ stw r0, 0x38(r3) /* 802A07A0 0029C400 80 8D AD D8 */ lwz r4, lbl_80640098-_SDA_BASE_(r13) /* 802A07A4 0029C404 80 0D AD DC */ lwz r0, lbl_8064009C-_SDA_BASE_(r13) /* 802A07A8 0029C408 90 83 00 3C */ stw r4, 0x3c(r3) /* 802A07AC 0029C40C 90 03 00 40 */ stw r0, 0x40(r3) /* 802A07B0 0029C410 D0 03 00 44 */ stfs f0, 0x44(r3) /* 802A07B4 0029C414 48 00 00 F0 */ b lbl_802A08A4 lbl_802A07B8: /* 802A07B8 0029C418 C0 23 00 34 */ lfs f1, 0x34(r3) /* 802A07BC 0029C41C C0 03 00 38 */ lfs f0, 0x38(r3) /* 802A07C0 0029C420 EC 63 08 28 */ fsubs f3, f3, f1 /* 802A07C4 0029C424 EC 42 00 28 */ fsubs f2, f2, f0 /* 802A07C8 0029C428 EC 23 00 F2 */ fmuls f1, f3, f3 /* 802A07CC 0029C42C D0 61 00 08 */ stfs f3, 8(r1) /* 802A07D0 0029C430 EC 02 00 B2 */ fmuls f0, f2, f2 /* 802A07D4 0029C434 D0 41 00 0C */ stfs f2, 0xc(r1) /* 802A07D8 0029C438 EC 21 00 2A */ fadds f1, f1, f0 /* 802A07DC 0029C43C 4B F3 40 59 */ bl sqrt /* 802A07E0 0029C440 FC 20 08 18 */ frsp f1, f1 /* 802A07E4 0029C444 C0 1E 00 8C */ lfs f0, 0x8c(r30) /* 802A07E8 0029C448 FC 01 00 40 */ fcmpo cr0, f1, f0 /* 802A07EC 0029C44C 4C 41 13 82 */ cror 2, 1, 2 /* 802A07F0 0029C450 40 82 00 0C */ bne lbl_802A07FC /* 802A07F4 0029C454 C0 82 A3 B0 */ lfs f4, lbl_806429B0-_SDA2_BASE_(r2) /* 802A07F8 0029C458 48 00 00 10 */ b lbl_802A0808 lbl_802A07FC: /* 802A07FC 0029C45C EC 81 00 24 */ fdivs f4, f1, f0 /* 802A0800 0029C460 EC 84 01 32 */ fmuls f4, f4, f4 /* 802A0804 0029C464 EC 84 01 32 */ fmuls f4, f4, f4 lbl_802A0808: /* 802A0808 0029C468 C0 1E 00 90 */ lfs f0, 0x90(r30) /* 802A080C 0029C46C C0 61 00 08 */ lfs f3, 8(r1) /* 802A0810 0029C470 EC 84 00 32 */ fmuls f4, f4, f0 /* 802A0814 0029C474 C0 21 00 0C */ lfs f1, 0xc(r1) /* 802A0818 0029C478 C0 5E 00 34 */ lfs f2, 0x34(r30) /* 802A081C 0029C47C C0 1E 00 38 */ lfs f0, 0x38(r30) /* 802A0820 0029C480 EC 64 00 F2 */ fmuls f3, f4, f3 /* 802A0824 0029C484 EC 24 00 72 */ fmuls f1, f4, f1 /* 802A0828 0029C488 EC 62 18 2A */ fadds f3, f2, f3 /* 802A082C 0029C48C EC 40 08 2A */ fadds f2, f0, f1 /* 802A0830 0029C490 EC 23 00 F2 */ fmuls f1, f3, f3 /* 802A0834 0029C494 D0 61 00 08 */ stfs f3, 8(r1) /* 802A0838 0029C498 EC 02 00 B2 */ fmuls f0, f2, f2 /* 802A083C 0029C49C D0 41 00 0C */ stfs f2, 0xc(r1) /* 802A0840 0029C4A0 EC 21 00 2A */ fadds f1, f1, f0 /* 802A0844 0029C4A4 4B F3 3F F1 */ bl sqrt /* 802A0848 0029C4A8 FC 80 08 18 */ frsp f4, f1 /* 802A084C 0029C4AC C0 01 00 08 */ lfs f0, 8(r1) /* 802A0850 0029C4B0 C0 41 00 0C */ lfs f2, 0xc(r1) /* 802A0854 0029C4B4 C0 3E 00 34 */ lfs f1, 0x34(r30) /* 802A0858 0029C4B8 EC 60 20 24 */ fdivs f3, f0, f4 /* 802A085C 0029C4BC C0 1E 00 38 */ lfs f0, 0x38(r30) /* 802A0860 0029C4C0 EC 42 20 24 */ fdivs f2, f2, f4 /* 802A0864 0029C4C4 D0 61 00 08 */ stfs f3, 8(r1) /* 802A0868 0029C4C8 EC 63 08 28 */ fsubs f3, f3, f1 /* 802A086C 0029C4CC D0 41 00 0C */ stfs f2, 0xc(r1) /* 802A0870 0029C4D0 EC 42 00 28 */ fsubs f2, f2, f0 /* 802A0874 0029C4D4 EC 23 00 F2 */ fmuls f1, f3, f3 /* 802A0878 0029C4D8 D0 7E 00 3C */ stfs f3, 0x3c(r30) /* 802A087C 0029C4DC EC 02 00 B2 */ fmuls f0, f2, f2 /* 802A0880 0029C4E0 D0 5E 00 40 */ stfs f2, 0x40(r30) /* 802A0884 0029C4E4 EC 21 00 2A */ fadds f1, f1, f0 /* 802A0888 0029C4E8 4B F3 3F AD */ bl sqrt /* 802A088C 0029C4EC FC 00 08 18 */ frsp f0, f1 /* 802A0890 0029C4F0 80 61 00 08 */ lwz r3, 8(r1) /* 802A0894 0029C4F4 80 01 00 0C */ lwz r0, 0xc(r1) /* 802A0898 0029C4F8 90 7E 00 34 */ stw r3, 0x34(r30) /* 802A089C 0029C4FC D0 1E 00 44 */ stfs f0, 0x44(r30) /* 802A08A0 0029C500 90 1E 00 38 */ stw r0, 0x38(r30) lbl_802A08A4: /* 802A08A4 0029C504 C0 3E 05 10 */ lfs f1, 0x510(r30) /* 802A08A8 0029C508 C0 1E 04 90 */ lfs f0, 0x490(r30) /* 802A08AC 0029C50C 88 1E 00 5E */ lbz r0, 0x5e(r30) /* 802A08B0 0029C510 EC 41 00 24 */ fdivs f2, f1, f0 /* 802A08B4 0029C514 7C 00 07 75 */ extsb. r0, r0 /* 802A08B8 0029C518 40 82 00 18 */ bne lbl_802A08D0 /* 802A08BC 0029C51C C0 02 A3 A0 */ lfs f0, lbl_806429A0-_SDA2_BASE_(r2) /* 802A08C0 0029C520 D0 5E 00 48 */ stfs f2, 0x48(r30) /* 802A08C4 0029C524 D0 1E 00 4C */ stfs f0, 0x4c(r30) /* 802A08C8 0029C528 D0 1E 00 50 */ stfs f0, 0x50(r30) /* 802A08CC 0029C52C 48 00 00 84 */ b lbl_802A0950 lbl_802A08D0: /* 802A08D0 0029C530 C0 3E 00 48 */ lfs f1, 0x48(r30) /* 802A08D4 0029C534 C0 02 A3 A0 */ lfs f0, lbl_806429A0-_SDA2_BASE_(r2) /* 802A08D8 0029C538 EC 62 08 28 */ fsubs f3, f2, f1 /* 802A08DC 0029C53C FC 03 00 40 */ fcmpo cr0, f3, f0 /* 802A08E0 0029C540 40 80 00 0C */ bge lbl_802A08EC /* 802A08E4 0029C544 FC 40 18 50 */ fneg f2, f3 /* 802A08E8 0029C548 48 00 00 08 */ b lbl_802A08F0 lbl_802A08EC: /* 802A08EC 0029C54C FC 40 18 90 */ fmr f2, f3 lbl_802A08F0: /* 802A08F0 0029C550 C0 1E 00 94 */ lfs f0, 0x94(r30) /* 802A08F4 0029C554 FC 02 00 40 */ fcmpo cr0, f2, f0 /* 802A08F8 0029C558 4C 41 13 82 */ cror 2, 1, 2 /* 802A08FC 0029C55C 40 82 00 0C */ bne lbl_802A0908 /* 802A0900 0029C560 C0 42 A3 B0 */ lfs f2, lbl_806429B0-_SDA2_BASE_(r2) /* 802A0904 0029C564 48 00 00 10 */ b lbl_802A0914 lbl_802A0908: /* 802A0908 0029C568 EC 42 00 24 */ fdivs f2, f2, f0 /* 802A090C 0029C56C EC 42 00 B2 */ fmuls f2, f2, f2 /* 802A0910 0029C570 EC 42 00 B2 */ fmuls f2, f2, f2 lbl_802A0914: /* 802A0914 0029C574 C0 3E 00 98 */ lfs f1, 0x98(r30) /* 802A0918 0029C578 C0 02 A3 A0 */ lfs f0, lbl_806429A0-_SDA2_BASE_(r2) /* 802A091C 0029C57C EC 42 00 72 */ fmuls f2, f2, f1 /* 802A0920 0029C580 EC 22 00 F2 */ fmuls f1, f2, f3 /* 802A0924 0029C584 FC 01 00 40 */ fcmpo cr0, f1, f0 /* 802A0928 0029C588 D0 3E 00 4C */ stfs f1, 0x4c(r30) /* 802A092C 0029C58C 40 80 00 10 */ bge lbl_802A093C /* 802A0930 0029C590 FC 00 08 50 */ fneg f0, f1 /* 802A0934 0029C594 D0 1E 00 50 */ stfs f0, 0x50(r30) /* 802A0938 0029C598 48 00 00 08 */ b lbl_802A0940 lbl_802A093C: /* 802A093C 0029C59C D0 3E 00 50 */ stfs f1, 0x50(r30) lbl_802A0940: /* 802A0940 0029C5A0 C0 3E 00 48 */ lfs f1, 0x48(r30) /* 802A0944 0029C5A4 C0 1E 00 4C */ lfs f0, 0x4c(r30) /* 802A0948 0029C5A8 EC 01 00 2A */ fadds f0, f1, f0 /* 802A094C 0029C5AC D0 1E 00 48 */ stfs f0, 0x48(r30) lbl_802A0950: /* 802A0950 0029C5B0 C0 5E 04 98 */ lfs f2, 0x498(r30) /* 802A0954 0029C5B4 C0 1E 00 B4 */ lfs f0, 0xb4(r30) /* 802A0958 0029C5B8 FC 20 10 50 */ fneg f1, f2 /* 802A095C 0029C5BC 88 1E 00 5E */ lbz r0, 0x5e(r30) /* 802A0960 0029C5C0 C0 BE 04 94 */ lfs f5, 0x494(r30) /* 802A0964 0029C5C4 EC 62 00 32 */ fmuls f3, f2, f0 /* 802A0968 0029C5C8 C0 9E 00 B0 */ lfs f4, 0xb0(r30) /* 802A096C 0029C5CC 7C 00 07 75 */ extsb. r0, r0 /* 802A0970 0029C5D0 EC 05 00 32 */ fmuls f0, f5, f0 /* 802A0974 0029C5D4 C0 FE 00 F4 */ lfs f7, 0xf4(r30) /* 802A0978 0029C5D8 EC 41 01 32 */ fmuls f2, f1, f4 /* 802A097C 0029C5DC C0 DE 01 00 */ lfs f6, 0x100(r30) /* 802A0980 0029C5E0 EC A5 01 32 */ fmuls f5, f5, f4 /* 802A0984 0029C5E4 C0 9E 00 F8 */ lfs f4, 0xf8(r30) /* 802A0988 0029C5E8 C0 3E 01 04 */ lfs f1, 0x104(r30) /* 802A098C 0029C5EC EC E7 30 2A */ fadds f7, f7, f6 /* 802A0990 0029C5F0 C1 02 A3 A4 */ lfs f8, lbl_806429A4-_SDA2_BASE_(r2) /* 802A0994 0029C5F4 EC 65 18 2A */ fadds f3, f5, f3 /* 802A0998 0029C5F8 EC C4 08 2A */ fadds f6, f4, f1 /* 802A099C 0029C5FC C0 9E 00 AC */ lfs f4, 0xac(r30) /* 802A09A0 0029C600 EC E8 01 F2 */ fmuls f7, f8, f7 /* 802A09A4 0029C604 EC 42 00 2A */ fadds f2, f2, f0 /* 802A09A8 0029C608 C0 3E 00 A8 */ lfs f1, 0xa8(r30) /* 802A09AC 0029C60C EC A8 01 B2 */ fmuls f5, f8, f6 /* 802A09B0 0029C610 ED 23 01 F2 */ fmuls f9, f3, f7 /* 802A09B4 0029C614 C0 DE 00 B8 */ lfs f6, 0xb8(r30) /* 802A09B8 0029C618 EC E2 01 F2 */ fmuls f7, f2, f7 /* 802A09BC 0029C61C EC 03 01 72 */ fmuls f0, f3, f5 /* 802A09C0 0029C620 C0 7E 00 BC */ lfs f3, 0xbc(r30) /* 802A09C4 0029C624 ED 02 01 72 */ fmuls f8, f2, f5 /* 802A09C8 0029C628 C0 BE 00 C0 */ lfs f5, 0xc0(r30) /* 802A09CC 0029C62C FC 40 20 50 */ fneg f2, f4 /* 802A09D0 0029C630 EC E7 00 2A */ fadds f7, f7, f0 /* 802A09D4 0029C634 ED 09 40 28 */ fsubs f8, f9, f8 /* 802A09D8 0029C638 FC 00 08 50 */ fneg f0, f1 /* 802A09DC 0029C63C EC 63 38 28 */ fsubs f3, f3, f7 /* 802A09E0 0029C640 EC C6 40 28 */ fsubs f6, f6, f8 /* 802A09E4 0029C644 EC C5 01 B2 */ fmuls f6, f5, f6 /* 802A09E8 0029C648 EC A5 00 F2 */ fmuls f5, f5, f3 /* 802A09EC 0029C64C EC 62 01 B2 */ fmuls f3, f2, f6 /* 802A09F0 0029C650 D0 C1 00 08 */ stfs f6, 8(r1) /* 802A09F4 0029C654 EC 41 01 72 */ fmuls f2, f1, f5 /* 802A09F8 0029C658 EC 20 01 B2 */ fmuls f1, f0, f6 /* 802A09FC 0029C65C D0 A1 00 0C */ stfs f5, 0xc(r1) /* 802A0A00 0029C660 EC 04 01 72 */ fmuls f0, f4, f5 /* 802A0A04 0029C664 EC 63 10 2A */ fadds f3, f3, f2 /* 802A0A08 0029C668 EC 41 00 28 */ fsubs f2, f1, f0 /* 802A0A0C 0029C66C D0 61 00 10 */ stfs f3, 0x10(r1) /* 802A0A10 0029C670 D0 41 00 14 */ stfs f2, 0x14(r1) /* 802A0A14 0029C674 40 82 00 30 */ bne lbl_802A0A44 /* 802A0A18 0029C678 80 61 00 10 */ lwz r3, 0x10(r1) /* 802A0A1C 0029C67C 80 01 00 14 */ lwz r0, 0x14(r1) /* 802A0A20 0029C680 90 7E 00 20 */ stw r3, 0x20(r30) /* 802A0A24 0029C684 C0 02 A3 A0 */ lfs f0, lbl_806429A0-_SDA2_BASE_(r2) /* 802A0A28 0029C688 90 1E 00 24 */ stw r0, 0x24(r30) /* 802A0A2C 0029C68C 80 6D AD D8 */ lwz r3, lbl_80640098-_SDA_BASE_(r13) /* 802A0A30 0029C690 80 0D AD DC */ lwz r0, lbl_8064009C-_SDA_BASE_(r13) /* 802A0A34 0029C694 90 7E 00 28 */ stw r3, 0x28(r30) /* 802A0A38 0029C698 90 1E 00 2C */ stw r0, 0x2c(r30) /* 802A0A3C 0029C69C D0 1E 00 30 */ stfs f0, 0x30(r30) /* 802A0A40 0029C6A0 48 00 00 AC */ b lbl_802A0AEC lbl_802A0A44: /* 802A0A44 0029C6A4 C0 3E 00 20 */ lfs f1, 0x20(r30) /* 802A0A48 0029C6A8 C0 1E 00 24 */ lfs f0, 0x24(r30) /* 802A0A4C 0029C6AC EC 63 08 28 */ fsubs f3, f3, f1 /* 802A0A50 0029C6B0 EC 42 00 28 */ fsubs f2, f2, f0 /* 802A0A54 0029C6B4 EC 23 00 F2 */ fmuls f1, f3, f3 /* 802A0A58 0029C6B8 D0 61 00 08 */ stfs f3, 8(r1) /* 802A0A5C 0029C6BC EC 02 00 B2 */ fmuls f0, f2, f2 /* 802A0A60 0029C6C0 D0 41 00 0C */ stfs f2, 0xc(r1) /* 802A0A64 0029C6C4 EC 21 00 2A */ fadds f1, f1, f0 /* 802A0A68 0029C6C8 4B F3 3D CD */ bl sqrt /* 802A0A6C 0029C6CC FC 20 08 18 */ frsp f1, f1 /* 802A0A70 0029C6D0 C0 1E 00 84 */ lfs f0, 0x84(r30) /* 802A0A74 0029C6D4 FC 01 00 40 */ fcmpo cr0, f1, f0 /* 802A0A78 0029C6D8 4C 41 13 82 */ cror 2, 1, 2 /* 802A0A7C 0029C6DC 40 82 00 0C */ bne lbl_802A0A88 /* 802A0A80 0029C6E0 C0 42 A3 B0 */ lfs f2, lbl_806429B0-_SDA2_BASE_(r2) /* 802A0A84 0029C6E4 48 00 00 10 */ b lbl_802A0A94 lbl_802A0A88: /* 802A0A88 0029C6E8 EC 41 00 24 */ fdivs f2, f1, f0 /* 802A0A8C 0029C6EC EC 42 00 B2 */ fmuls f2, f2, f2 /* 802A0A90 0029C6F0 EC 42 00 B2 */ fmuls f2, f2, f2 lbl_802A0A94: /* 802A0A94 0029C6F4 C0 1E 00 88 */ lfs f0, 0x88(r30) /* 802A0A98 0029C6F8 C0 21 00 08 */ lfs f1, 8(r1) /* 802A0A9C 0029C6FC EC 42 00 32 */ fmuls f2, f2, f0 /* 802A0AA0 0029C700 C0 01 00 0C */ lfs f0, 0xc(r1) /* 802A0AA4 0029C704 EC 62 00 72 */ fmuls f3, f2, f1 /* 802A0AA8 0029C708 EC 42 00 32 */ fmuls f2, f2, f0 /* 802A0AAC 0029C70C EC 23 00 F2 */ fmuls f1, f3, f3 /* 802A0AB0 0029C710 D0 7E 00 28 */ stfs f3, 0x28(r30) /* 802A0AB4 0029C714 EC 02 00 B2 */ fmuls f0, f2, f2 /* 802A0AB8 0029C718 D0 5E 00 2C */ stfs f2, 0x2c(r30) /* 802A0ABC 0029C71C EC 21 00 2A */ fadds f1, f1, f0 /* 802A0AC0 0029C720 4B F3 3D 75 */ bl sqrt /* 802A0AC4 0029C724 FC 80 08 18 */ frsp f4, f1 /* 802A0AC8 0029C728 C0 7E 00 20 */ lfs f3, 0x20(r30) /* 802A0ACC 0029C72C C0 5E 00 28 */ lfs f2, 0x28(r30) /* 802A0AD0 0029C730 C0 3E 00 24 */ lfs f1, 0x24(r30) /* 802A0AD4 0029C734 C0 1E 00 2C */ lfs f0, 0x2c(r30) /* 802A0AD8 0029C738 EC 43 10 2A */ fadds f2, f3, f2 /* 802A0ADC 0029C73C D0 9E 00 30 */ stfs f4, 0x30(r30) /* 802A0AE0 0029C740 EC 01 00 2A */ fadds f0, f1, f0 /* 802A0AE4 0029C744 D0 5E 00 20 */ stfs f2, 0x20(r30) /* 802A0AE8 0029C748 D0 1E 00 24 */ stfs f0, 0x24(r30) lbl_802A0AEC: /* 802A0AEC 0029C74C 9B FE 00 5E */ stb r31, 0x5e(r30) lbl_802A0AF0: /* 802A0AF0 0029C750 80 01 00 24 */ lwz r0, 0x24(r1) /* 802A0AF4 0029C754 83 E1 00 1C */ lwz r31, 0x1c(r1) /* 802A0AF8 0029C758 83 C1 00 18 */ lwz r30, 0x18(r1) /* 802A0AFC 0029C75C 7C 08 03 A6 */ mtlr r0 /* 802A0B00 0029C760 38 21 00 20 */ addi r1, r1, 0x20 /* 802A0B04 0029C764 4E 80 00 20 */ blr .global read_kpad_dpd read_kpad_dpd: /* 802A0B08 0029C768 94 21 FF C0 */ stwu r1, -0x40(r1) /* 802A0B0C 0029C76C 7C 08 02 A6 */ mflr r0 /* 802A0B10 0029C770 90 01 00 44 */ stw r0, 0x44(r1) /* 802A0B14 0029C774 DB E1 00 30 */ stfd f31, 0x30(r1) /* 802A0B18 0029C778 F3 E1 00 38 */ psq_st f31, 56(r1), 0, qr0 /* 802A0B1C 0029C77C DB C1 00 20 */ stfd f30, 0x20(r1) /* 802A0B20 0029C780 F3 C1 00 28 */ psq_st f30, 40(r1), 0, qr0 /* 802A0B24 0029C784 93 E1 00 1C */ stw r31, 0x1c(r1) /* 802A0B28 0029C788 7C 7F 1B 78 */ mr r31, r3 /* 802A0B2C 0029C78C 93 C1 00 18 */ stw r30, 0x18(r1) /* 802A0B30 0029C790 88 04 00 36 */ lbz r0, 0x36(r4) /* 802A0B34 0029C794 28 00 00 02 */ cmplwi r0, 2 /* 802A0B38 0029C798 41 82 00 14 */ beq lbl_802A0B4C /* 802A0B3C 0029C79C 28 00 00 05 */ cmplwi r0, 5 /* 802A0B40 0029C7A0 41 82 00 0C */ beq lbl_802A0B4C /* 802A0B44 0029C7A4 28 00 00 08 */ cmplwi r0, 8 /* 802A0B48 0029C7A8 40 82 00 A4 */ bne lbl_802A0BEC lbl_802A0B4C: /* 802A0B4C 0029C7AC C8 82 A3 C8 */ lfd f4, lbl_806429C8-_SDA2_BASE_(r2) /* 802A0B50 0029C7B0 39 04 00 20 */ addi r8, r4, 0x20 /* 802A0B54 0029C7B4 C0 62 A3 D0 */ lfs f3, lbl_806429D0-_SDA2_BASE_(r2) /* 802A0B58 0029C7B8 39 23 00 E8 */ addi r9, r3, 0xe8 /* 802A0B5C 0029C7BC C0 42 A3 D4 */ lfs f2, lbl_806429D4-_SDA2_BASE_(r2) /* 802A0B60 0029C7C0 38 03 00 C4 */ addi r0, r3, 0xc4 /* 802A0B64 0029C7C4 C0 22 A3 D8 */ lfs f1, lbl_806429D8-_SDA2_BASE_(r2) /* 802A0B68 0029C7C8 38 80 FF FF */ li r4, -1 /* 802A0B6C 0029C7CC 3C E0 43 30 */ lis r7, 0x4330 /* 802A0B70 0029C7D0 38 A0 00 00 */ li r5, 0 lbl_802A0B74: /* 802A0B74 0029C7D4 A0 C8 00 04 */ lhz r6, 4(r8) /* 802A0B78 0029C7D8 2C 06 00 00 */ cmpwi r6, 0 /* 802A0B7C 0029C7DC 41 82 00 58 */ beq lbl_802A0BD4 /* 802A0B80 0029C7E0 A8 C8 00 00 */ lha r6, 0(r8) /* 802A0B84 0029C7E4 90 E1 00 08 */ stw r7, 8(r1) /* 802A0B88 0029C7E8 6C C6 80 00 */ xoris r6, r6, 0x8000 /* 802A0B8C 0029C7EC 90 C1 00 0C */ stw r6, 0xc(r1) /* 802A0B90 0029C7F0 C8 01 00 08 */ lfd f0, 8(r1) /* 802A0B94 0029C7F4 90 E1 00 10 */ stw r7, 0x10(r1) /* 802A0B98 0029C7F8 EC 00 20 28 */ fsubs f0, f0, f4 /* 802A0B9C 0029C7FC EC 03 00 32 */ fmuls f0, f3, f0 /* 802A0BA0 0029C800 EC 00 10 28 */ fsubs f0, f0, f2 /* 802A0BA4 0029C804 D0 09 00 00 */ stfs f0, 0(r9) /* 802A0BA8 0029C808 A8 C8 00 02 */ lha r6, 2(r8) /* 802A0BAC 0029C80C 6C C6 80 00 */ xoris r6, r6, 0x8000 /* 802A0BB0 0029C810 90 C1 00 14 */ stw r6, 0x14(r1) /* 802A0BB4 0029C814 C8 01 00 10 */ lfd f0, 0x10(r1) /* 802A0BB8 0029C818 EC 00 20 28 */ fsubs f0, f0, f4 /* 802A0BBC 0029C81C EC 03 00 32 */ fmuls f0, f3, f0 /* 802A0BC0 0029C820 EC 00 08 28 */ fsubs f0, f0, f1 /* 802A0BC4 0029C824 D0 09 00 04 */ stfs f0, 4(r9) /* 802A0BC8 0029C828 98 A9 00 08 */ stb r5, 8(r9) /* 802A0BCC 0029C82C 98 A9 00 09 */ stb r5, 9(r9) /* 802A0BD0 0029C830 48 00 00 08 */ b lbl_802A0BD8 lbl_802A0BD4: /* 802A0BD4 0029C834 98 89 00 08 */ stb r4, 8(r9) lbl_802A0BD8: /* 802A0BD8 0029C838 39 29 FF F4 */ addi r9, r9, -12 /* 802A0BDC 0029C83C 39 08 FF F8 */ addi r8, r8, -8 /* 802A0BE0 0029C840 7C 09 00 40 */ cmplw r9, r0 /* 802A0BE4 0029C844 40 80 FF 90 */ bge lbl_802A0B74 /* 802A0BE8 0029C848 48 00 00 20 */ b lbl_802A0C08 lbl_802A0BEC: /* 802A0BEC 0029C84C 38 A3 00 E8 */ addi r5, r3, 0xe8 /* 802A0BF0 0029C850 38 03 00 C4 */ addi r0, r3, 0xc4 /* 802A0BF4 0029C854 38 80 FF FF */ li r4, -1 lbl_802A0BF8: /* 802A0BF8 0029C858 98 85 00 08 */ stb r4, 8(r5) /* 802A0BFC 0029C85C 38 A5 FF F4 */ addi r5, r5, -12 /* 802A0C00 0029C860 7C 05 00 40 */ cmplw r5, r0 /* 802A0C04 0029C864 40 80 FF F4 */ bge lbl_802A0BF8 lbl_802A0C08: /* 802A0C08 0029C868 38 E3 00 E8 */ addi r7, r3, 0xe8 /* 802A0C0C 0029C86C 38 C3 00 C4 */ addi r6, r3, 0xc4 /* 802A0C10 0029C870 7C E4 3B 78 */ mr r4, r7 lbl_802A0C14: /* 802A0C14 0029C874 88 04 00 08 */ lbz r0, 8(r4) /* 802A0C18 0029C878 7C 00 07 75 */ extsb. r0, r0 /* 802A0C1C 0029C87C 41 80 00 58 */ blt lbl_802A0C74 /* 802A0C20 0029C880 C0 24 00 00 */ lfs f1, 0(r4) /* 802A0C24 0029C884 C0 03 04 F4 */ lfs f0, 0x4f4(r3) /* 802A0C28 0029C888 FC 01 00 40 */ fcmpo cr0, f1, f0 /* 802A0C2C 0029C88C 4C 40 13 82 */ cror 2, 0, 2 /* 802A0C30 0029C890 41 82 00 38 */ beq lbl_802A0C68 /* 802A0C34 0029C894 C0 03 04 FC */ lfs f0, 0x4fc(r3) /* 802A0C38 0029C898 FC 01 00 40 */ fcmpo cr0, f1, f0 /* 802A0C3C 0029C89C 4C 41 13 82 */ cror 2, 1, 2 /* 802A0C40 0029C8A0 41 82 00 28 */ beq lbl_802A0C68 /* 802A0C44 0029C8A4 C0 24 00 04 */ lfs f1, 4(r4) /* 802A0C48 0029C8A8 C0 03 04 F8 */ lfs f0, 0x4f8(r3) /* 802A0C4C 0029C8AC FC 01 00 40 */ fcmpo cr0, f1, f0 /* 802A0C50 0029C8B0 4C 40 13 82 */ cror 2, 0, 2 /* 802A0C54 0029C8B4 41 82 00 14 */ beq lbl_802A0C68 /* 802A0C58 0029C8B8 C0 03 05 00 */ lfs f0, 0x500(r3) /* 802A0C5C 0029C8BC FC 01 00 40 */ fcmpo cr0, f1, f0 /* 802A0C60 0029C8C0 4C 41 13 82 */ cror 2, 1, 2 /* 802A0C64 0029C8C4 40 82 00 10 */ bne lbl_802A0C74 lbl_802A0C68: /* 802A0C68 0029C8C8 88 04 00 08 */ lbz r0, 8(r4) /* 802A0C6C 0029C8CC 60 00 00 01 */ ori r0, r0, 1 /* 802A0C70 0029C8D0 98 04 00 08 */ stb r0, 8(r4) lbl_802A0C74: /* 802A0C74 0029C8D4 38 84 FF F4 */ addi r4, r4, -12 /* 802A0C78 0029C8D8 7C 04 30 40 */ cmplw r4, r6 /* 802A0C7C 0029C8DC 40 80 FF 98 */ bge lbl_802A0C14 lbl_802A0C80: /* 802A0C80 0029C8E0 88 06 00 08 */ lbz r0, 8(r6) /* 802A0C84 0029C8E4 7C 00 07 75 */ extsb. r0, r0 /* 802A0C88 0029C8E8 40 82 00 48 */ bne lbl_802A0CD0 /* 802A0C8C 0029C8EC 38 A6 00 0C */ addi r5, r6, 0xc lbl_802A0C90: /* 802A0C90 0029C8F0 88 85 00 08 */ lbz r4, 8(r5) /* 802A0C94 0029C8F4 7C 80 07 75 */ extsb. r0, r4 /* 802A0C98 0029C8F8 40 82 00 2C */ bne lbl_802A0CC4 /* 802A0C9C 0029C8FC C0 26 00 00 */ lfs f1, 0(r6) /* 802A0CA0 0029C900 C0 05 00 00 */ lfs f0, 0(r5) /* 802A0CA4 0029C904 FC 01 00 00 */ fcmpu cr0, f1, f0 /* 802A0CA8 0029C908 40 82 00 1C */ bne lbl_802A0CC4 /* 802A0CAC 0029C90C C0 26 00 04 */ lfs f1, 4(r6) /* 802A0CB0 0029C910 C0 05 00 04 */ lfs f0, 4(r5) /* 802A0CB4 0029C914 FC 01 00 00 */ fcmpu cr0, f1, f0 /* 802A0CB8 0029C918 40 82 00 0C */ bne lbl_802A0CC4 /* 802A0CBC 0029C91C 60 80 00 02 */ ori r0, r4, 2 /* 802A0CC0 0029C920 98 05 00 08 */ stb r0, 8(r5) lbl_802A0CC4: /* 802A0CC4 0029C924 38 A5 00 0C */ addi r5, r5, 0xc /* 802A0CC8 0029C928 7C 05 38 40 */ cmplw r5, r7 /* 802A0CCC 0029C92C 40 81 FF C4 */ ble lbl_802A0C90 lbl_802A0CD0: /* 802A0CD0 0029C930 38 C6 00 0C */ addi r6, r6, 0xc /* 802A0CD4 0029C934 7C 06 38 40 */ cmplw r6, r7 /* 802A0CD8 0029C938 41 80 FF A8 */ blt lbl_802A0C80 /* 802A0CDC 0029C93C 38 00 00 00 */ li r0, 0 /* 802A0CE0 0029C940 38 A3 00 E8 */ addi r5, r3, 0xe8 /* 802A0CE4 0029C944 B0 03 01 0C */ sth r0, 0x10c(r3) /* 802A0CE8 0029C948 38 03 00 C4 */ addi r0, r3, 0xc4 lbl_802A0CEC: /* 802A0CEC 0029C94C 88 85 00 08 */ lbz r4, 8(r5) /* 802A0CF0 0029C950 7C 84 07 75 */ extsb. r4, r4 /* 802A0CF4 0029C954 40 82 00 10 */ bne lbl_802A0D04 /* 802A0CF8 0029C958 A8 83 01 0C */ lha r4, 0x10c(r3) /* 802A0CFC 0029C95C 38 84 00 01 */ addi r4, r4, 1 /* 802A0D00 0029C960 B0 83 01 0C */ sth r4, 0x10c(r3) lbl_802A0D04: /* 802A0D04 0029C964 38 A5 FF F4 */ addi r5, r5, -12 /* 802A0D08 0029C968 7C 05 00 40 */ cmplw r5, r0 /* 802A0D0C 0029C96C 40 80 FF E0 */ bge lbl_802A0CEC /* 802A0D10 0029C970 C0 23 00 54 */ lfs f1, 0x54(r3) /* 802A0D14 0029C974 C0 0D 89 5C */ lfs f0, lbl_8063DC1C-_SDA_BASE_(r13) /* 802A0D18 0029C978 FC 01 00 40 */ fcmpo cr0, f1, f0 /* 802A0D1C 0029C97C 4C 40 13 82 */ cror 2, 0, 2 /* 802A0D20 0029C980 41 82 00 F4 */ beq lbl_802A0E14 /* 802A0D24 0029C984 88 03 00 5E */ lbz r0, 0x5e(r3) /* 802A0D28 0029C988 7C 00 07 74 */ extsb r0, r0 /* 802A0D2C 0029C98C 2C 00 00 02 */ cmpwi r0, 2 /* 802A0D30 0029C990 41 82 00 0C */ beq lbl_802A0D3C /* 802A0D34 0029C994 2C 00 FF FE */ cmpwi r0, -2 /* 802A0D38 0029C998 40 82 00 48 */ bne lbl_802A0D80 lbl_802A0D3C: /* 802A0D3C 0029C99C A8 03 01 0C */ lha r0, 0x10c(r3) /* 802A0D40 0029C9A0 2C 00 00 02 */ cmpwi r0, 2 /* 802A0D44 0029C9A4 41 80 00 18 */ blt lbl_802A0D5C /* 802A0D48 0029C9A8 7F E3 FB 78 */ mr r3, r31 /* 802A0D4C 0029C9AC 4B FF F4 85 */ bl select_2obj_continue /* 802A0D50 0029C9B0 7C 60 07 75 */ extsb. r0, r3 /* 802A0D54 0029C9B4 7C 7E 1B 78 */ mr r30, r3 /* 802A0D58 0029C9B8 40 82 00 C0 */ bne lbl_802A0E18 lbl_802A0D5C: /* 802A0D5C 0029C9BC A8 1F 01 0C */ lha r0, 0x10c(r31) /* 802A0D60 0029C9C0 2C 00 00 01 */ cmpwi r0, 1 /* 802A0D64 0029C9C4 41 80 00 B0 */ blt lbl_802A0E14 /* 802A0D68 0029C9C8 7F E3 FB 78 */ mr r3, r31 /* 802A0D6C 0029C9CC 4B FF F8 41 */ bl select_1obj_continue /* 802A0D70 0029C9D0 7C 60 07 75 */ extsb. r0, r3 /* 802A0D74 0029C9D4 7C 7E 1B 78 */ mr r30, r3 /* 802A0D78 0029C9D8 40 82 00 A0 */ bne lbl_802A0E18 /* 802A0D7C 0029C9DC 48 00 00 98 */ b lbl_802A0E14 lbl_802A0D80: /* 802A0D80 0029C9E0 2C 00 00 01 */ cmpwi r0, 1 /* 802A0D84 0029C9E4 41 82 00 0C */ beq lbl_802A0D90 /* 802A0D88 0029C9E8 2C 00 FF FF */ cmpwi r0, -1 /* 802A0D8C 0029C9EC 40 82 00 48 */ bne lbl_802A0DD4 lbl_802A0D90: /* 802A0D90 0029C9F0 A8 03 01 0C */ lha r0, 0x10c(r3) /* 802A0D94 0029C9F4 2C 00 00 02 */ cmpwi r0, 2 /* 802A0D98 0029C9F8 41 80 00 18 */ blt lbl_802A0DB0 /* 802A0D9C 0029C9FC 7F E3 FB 78 */ mr r3, r31 /* 802A0DA0 0029CA00 4B FF F2 49 */ bl select_2obj_first /* 802A0DA4 0029CA04 7C 60 07 75 */ extsb. r0, r3 /* 802A0DA8 0029CA08 7C 7E 1B 78 */ mr r30, r3 /* 802A0DAC 0029CA0C 40 82 00 6C */ bne lbl_802A0E18 lbl_802A0DB0: /* 802A0DB0 0029CA10 A8 1F 01 0C */ lha r0, 0x10c(r31) /* 802A0DB4 0029CA14 2C 00 00 01 */ cmpwi r0, 1 /* 802A0DB8 0029CA18 41 80 00 5C */ blt lbl_802A0E14 /* 802A0DBC 0029CA1C 7F E3 FB 78 */ mr r3, r31 /* 802A0DC0 0029CA20 4B FF F7 ED */ bl select_1obj_continue /* 802A0DC4 0029CA24 7C 60 07 75 */ extsb. r0, r3 /* 802A0DC8 0029CA28 7C 7E 1B 78 */ mr r30, r3 /* 802A0DCC 0029CA2C 40 82 00 4C */ bne lbl_802A0E18 /* 802A0DD0 0029CA30 48 00 00 44 */ b lbl_802A0E14 lbl_802A0DD4: /* 802A0DD4 0029CA34 A8 03 01 0C */ lha r0, 0x10c(r3) /* 802A0DD8 0029CA38 2C 00 00 02 */ cmpwi r0, 2 /* 802A0DDC 0029CA3C 41 80 00 18 */ blt lbl_802A0DF4 /* 802A0DE0 0029CA40 7F E3 FB 78 */ mr r3, r31 /* 802A0DE4 0029CA44 4B FF F2 05 */ bl select_2obj_first /* 802A0DE8 0029CA48 7C 60 07 75 */ extsb. r0, r3 /* 802A0DEC 0029CA4C 7C 7E 1B 78 */ mr r30, r3 /* 802A0DF0 0029CA50 40 82 00 28 */ bne lbl_802A0E18 lbl_802A0DF4: /* 802A0DF4 0029CA54 A8 1F 01 0C */ lha r0, 0x10c(r31) /* 802A0DF8 0029CA58 2C 00 00 01 */ cmpwi r0, 1 /* 802A0DFC 0029CA5C 40 82 00 18 */ bne lbl_802A0E14 /* 802A0E00 0029CA60 7F E3 FB 78 */ mr r3, r31 /* 802A0E04 0029CA64 4B FF F5 F5 */ bl select_1obj_first /* 802A0E08 0029CA68 7C 60 07 75 */ extsb. r0, r3 /* 802A0E0C 0029CA6C 7C 7E 1B 78 */ mr r30, r3 /* 802A0E10 0029CA70 40 82 00 08 */ bne lbl_802A0E18 lbl_802A0E14: /* 802A0E14 0029CA74 3B C0 00 00 */ li r30, 0 lbl_802A0E18: /* 802A0E18 0029CA78 7F C0 07 75 */ extsb. r0, r30 /* 802A0E1C 0029CA7C 41 82 01 08 */ beq lbl_802A0F24 /* 802A0E20 0029CA80 C0 7F 01 00 */ lfs f3, 0x100(r31) /* 802A0E24 0029CA84 C0 5F 00 F4 */ lfs f2, 0xf4(r31) /* 802A0E28 0029CA88 C0 3F 01 04 */ lfs f1, 0x104(r31) /* 802A0E2C 0029CA8C C0 1F 00 F8 */ lfs f0, 0xf8(r31) /* 802A0E30 0029CA90 EF C3 10 28 */ fsubs f30, f3, f2 /* 802A0E34 0029CA94 EF E1 00 28 */ fsubs f31, f1, f0 /* 802A0E38 0029CA98 EC 3E 07 B2 */ fmuls f1, f30, f30 /* 802A0E3C 0029CA9C EC 1F 07 F2 */ fmuls f0, f31, f31 /* 802A0E40 0029CAA0 EC 21 00 2A */ fadds f1, f1, f0 /* 802A0E44 0029CAA4 4B F3 39 F1 */ bl sqrt /* 802A0E48 0029CAA8 FC 60 08 18 */ frsp f3, f1 /* 802A0E4C 0029CAAC C0 02 A3 B0 */ lfs f0, lbl_806429B0-_SDA2_BASE_(r2) /* 802A0E50 0029CAB0 A0 1F 04 C8 */ lhz r0, 0x4c8(r31) /* 802A0E54 0029CAB4 C0 9F 00 B0 */ lfs f4, 0xb0(r31) /* 802A0E58 0029CAB8 EC 40 18 24 */ fdivs f2, f0, f3 /* 802A0E5C 0029CABC C0 3F 05 10 */ lfs f1, 0x510(r31) /* 802A0E60 0029CAC0 C0 1F 00 B4 */ lfs f0, 0xb4(r31) /* 802A0E64 0029CAC4 2C 00 00 00 */ cmpwi r0, 0 /* 802A0E68 0029CAC8 D0 7F 04 90 */ stfs f3, 0x490(r31) /* 802A0E6C 0029CACC EF DE 00 B2 */ fmuls f30, f30, f2 /* 802A0E70 0029CAD0 EF FF 00 B2 */ fmuls f31, f31, f2 /* 802A0E74 0029CAD4 EC A1 00 B2 */ fmuls f5, f1, f2 /* 802A0E78 0029CAD8 EC 64 07 B2 */ fmuls f3, f4, f30 /* 802A0E7C 0029CADC D3 DF 04 94 */ stfs f30, 0x494(r31) /* 802A0E80 0029CAE0 EC 40 07 F2 */ fmuls f2, f0, f31 /* 802A0E84 0029CAE4 EC 20 07 B2 */ fmuls f1, f0, f30 /* 802A0E88 0029CAE8 D0 BF 04 9C */ stfs f5, 0x49c(r31) /* 802A0E8C 0029CAEC EC 04 07 F2 */ fmuls f0, f4, f31 /* 802A0E90 0029CAF0 EC 43 10 2A */ fadds f2, f3, f2 /* 802A0E94 0029CAF4 D3 FF 04 98 */ stfs f31, 0x498(r31) /* 802A0E98 0029CAF8 EC 61 00 28 */ fsubs f3, f1, f0 /* 802A0E9C 0029CAFC D0 5F 04 B0 */ stfs f2, 0x4b0(r31) /* 802A0EA0 0029CB00 D0 7F 04 B4 */ stfs f3, 0x4b4(r31) /* 802A0EA4 0029CB04 40 82 00 38 */ bne lbl_802A0EDC /* 802A0EA8 0029CB08 C0 1F 04 B8 */ lfs f0, 0x4b8(r31) /* 802A0EAC 0029CB0C C0 3F 04 BC */ lfs f1, 0x4bc(r31) /* 802A0EB0 0029CB10 EC 42 00 32 */ fmuls f2, f2, f0 /* 802A0EB4 0029CB14 C0 0D 89 58 */ lfs f0, lbl_8063DC18-_SDA_BASE_(r13) /* 802A0EB8 0029CB18 EC 23 00 72 */ fmuls f1, f3, f1 /* 802A0EBC 0029CB1C EC 22 08 2A */ fadds f1, f2, f1 /* 802A0EC0 0029CB20 FC 01 00 40 */ fcmpo cr0, f1, f0 /* 802A0EC4 0029CB24 4C 40 13 82 */ cror 2, 0, 2 /* 802A0EC8 0029CB28 40 82 00 14 */ bne lbl_802A0EDC /* 802A0ECC 0029CB2C 38 00 00 01 */ li r0, 1 /* 802A0ED0 0029CB30 3B C0 00 00 */ li r30, 0 /* 802A0ED4 0029CB34 98 1F 01 08 */ stb r0, 0x108(r31) /* 802A0ED8 0029CB38 98 1F 00 FC */ stb r0, 0xfc(r31) lbl_802A0EDC: /* 802A0EDC 0029CB3C 88 1F 00 5E */ lbz r0, 0x5e(r31) /* 802A0EE0 0029CB40 2C 00 00 02 */ cmpwi r0, 2 /* 802A0EE4 0029CB44 40 82 00 34 */ bne lbl_802A0F18 /* 802A0EE8 0029CB48 7F C0 07 74 */ extsb r0, r30 /* 802A0EEC 0029CB4C 2C 00 00 02 */ cmpwi r0, 2 /* 802A0EF0 0029CB50 40 82 00 28 */ bne lbl_802A0F18 /* 802A0EF4 0029CB54 88 7F 04 CA */ lbz r3, 0x4ca(r31) /* 802A0EF8 0029CB58 28 03 00 C8 */ cmplwi r3, 0xc8 /* 802A0EFC 0029CB5C 40 82 00 10 */ bne lbl_802A0F0C /* 802A0F00 0029CB60 C0 1F 04 90 */ lfs f0, 0x490(r31) /* 802A0F04 0029CB64 D0 1F 04 A0 */ stfs f0, 0x4a0(r31) /* 802A0F08 0029CB68 48 00 00 24 */ b lbl_802A0F2C lbl_802A0F0C: /* 802A0F0C 0029CB6C 38 03 00 01 */ addi r0, r3, 1 /* 802A0F10 0029CB70 98 1F 04 CA */ stb r0, 0x4ca(r31) /* 802A0F14 0029CB74 48 00 00 18 */ b lbl_802A0F2C lbl_802A0F18: /* 802A0F18 0029CB78 38 00 00 00 */ li r0, 0 /* 802A0F1C 0029CB7C 98 1F 04 CA */ stb r0, 0x4ca(r31) /* 802A0F20 0029CB80 48 00 00 0C */ b lbl_802A0F2C lbl_802A0F24: /* 802A0F24 0029CB84 38 00 00 00 */ li r0, 0 /* 802A0F28 0029CB88 98 1F 04 CA */ stb r0, 0x4ca(r31) lbl_802A0F2C: /* 802A0F2C 0029CB8C 7F E3 FB 78 */ mr r3, r31 /* 802A0F30 0029CB90 7F C4 07 74 */ extsb r4, r30 /* 802A0F34 0029CB94 4B FF F7 ED */ bl calc_dpd_variable /* 802A0F38 0029CB98 E3 E1 00 38 */ psq_l f31, 56(r1), 0, qr0 /* 802A0F3C 0029CB9C CB E1 00 30 */ lfd f31, 0x30(r1) /* 802A0F40 0029CBA0 E3 C1 00 28 */ psq_l f30, 40(r1), 0, qr0 /* 802A0F44 0029CBA4 CB C1 00 20 */ lfd f30, 0x20(r1) /* 802A0F48 0029CBA8 83 E1 00 1C */ lwz r31, 0x1c(r1) /* 802A0F4C 0029CBAC 80 01 00 44 */ lwz r0, 0x44(r1) /* 802A0F50 0029CBB0 83 C1 00 18 */ lwz r30, 0x18(r1) /* 802A0F54 0029CBB4 7C 08 03 A6 */ mtlr r0 /* 802A0F58 0029CBB8 38 21 00 40 */ addi r1, r1, 0x40 /* 802A0F5C 0029CBBC 4E 80 00 20 */ blr clamp_stick_circle: /* 802A0F60 0029CBC0 94 21 FF A0 */ stwu r1, -0x60(r1) /* 802A0F64 0029CBC4 7C 08 02 A6 */ mflr r0 /* 802A0F68 0029CBC8 90 01 00 64 */ stw r0, 0x64(r1) /* 802A0F6C 0029CBCC DB E1 00 50 */ stfd f31, 0x50(r1) /* 802A0F70 0029CBD0 F3 E1 00 58 */ psq_st f31, 88(r1), 0, qr0 /* 802A0F74 0029CBD4 DB C1 00 40 */ stfd f30, 0x40(r1) /* 802A0F78 0029CBD8 F3 C1 00 48 */ psq_st f30, 72(r1), 0, qr0 /* 802A0F7C 0029CBDC DB A1 00 30 */ stfd f29, 0x30(r1) /* 802A0F80 0029CBE0 F3 A1 00 38 */ psq_st f29, 56(r1), 0, qr0 /* 802A0F84 0029CBE4 DB 81 00 20 */ stfd f28, 0x20(r1) /* 802A0F88 0029CBE8 F3 81 00 28 */ psq_st f28, 40(r1), 0, qr0 /* 802A0F8C 0029CBEC 3D 00 43 30 */ lis r8, 0x4330 /* 802A0F90 0029CBF0 6C 80 80 00 */ xoris r0, r4, 0x8000 /* 802A0F94 0029CBF4 6C A5 80 00 */ xoris r5, r5, 0x8000 /* 802A0F98 0029CBF8 90 01 00 0C */ stw r0, 0xc(r1) /* 802A0F9C 0029CBFC 6C C4 80 00 */ xoris r4, r6, 0x8000 /* 802A0FA0 0029CC00 C8 82 A3 C8 */ lfd f4, lbl_806429C8-_SDA2_BASE_(r2) /* 802A0FA4 0029CC04 6C E0 80 00 */ xoris r0, r7, 0x8000 /* 802A0FA8 0029CC08 91 01 00 08 */ stw r8, 8(r1) /* 802A0FAC 0029CC0C C8 01 00 08 */ lfd f0, 8(r1) /* 802A0FB0 0029CC10 91 01 00 10 */ stw r8, 0x10(r1) /* 802A0FB4 0029CC14 EF E0 20 28 */ fsubs f31, f0, f4 /* 802A0FB8 0029CC18 90 A1 00 14 */ stw r5, 0x14(r1) /* 802A0FBC 0029CC1C C8 01 00 10 */ lfd f0, 0x10(r1) /* 802A0FC0 0029CC20 EC 3F 07 F2 */ fmuls f1, f31, f31 /* 802A0FC4 0029CC24 90 81 00 0C */ stw r4, 0xc(r1) /* 802A0FC8 0029CC28 EF C0 20 28 */ fsubs f30, f0, f4 /* 802A0FCC 0029CC2C 90 01 00 14 */ stw r0, 0x14(r1) /* 802A0FD0 0029CC30 C8 61 00 08 */ lfd f3, 8(r1) /* 802A0FD4 0029CC34 EC 1E 07 B2 */ fmuls f0, f30, f30 /* 802A0FD8 0029CC38 C8 41 00 10 */ lfd f2, 0x10(r1) /* 802A0FDC 0029CC3C 93 E1 00 1C */ stw r31, 0x1c(r1) /* 802A0FE0 0029CC40 EF A3 20 28 */ fsubs f29, f3, f4 /* 802A0FE4 0029CC44 EF 82 20 28 */ fsubs f28, f2, f4 /* 802A0FE8 0029CC48 7C 7F 1B 78 */ mr r31, r3 /* 802A0FEC 0029CC4C EC 21 00 2A */ fadds f1, f1, f0 /* 802A0FF0 0029CC50 4B F3 38 45 */ bl sqrt /* 802A0FF4 0029CC54 FC 40 08 18 */ frsp f2, f1 /* 802A0FF8 0029CC58 FC 02 E8 40 */ fcmpo cr0, f2, f29 /* 802A0FFC 0029CC5C 4C 40 13 82 */ cror 2, 0, 2 /* 802A1000 0029CC60 40 82 00 14 */ bne lbl_802A1014 /* 802A1004 0029CC64 C0 02 A3 A0 */ lfs f0, lbl_806429A0-_SDA2_BASE_(r2) /* 802A1008 0029CC68 D0 1F 00 04 */ stfs f0, 4(r31) /* 802A100C 0029CC6C D0 1F 00 00 */ stfs f0, 0(r31) /* 802A1010 0029CC70 48 00 00 44 */ b lbl_802A1054 lbl_802A1014: /* 802A1014 0029CC74 FC 02 E0 40 */ fcmpo cr0, f2, f28 /* 802A1018 0029CC78 4C 41 13 82 */ cror 2, 1, 2 /* 802A101C 0029CC7C 40 82 00 18 */ bne lbl_802A1034 /* 802A1020 0029CC80 EC 3F 10 24 */ fdivs f1, f31, f2 /* 802A1024 0029CC84 EC 1E 10 24 */ fdivs f0, f30, f2 /* 802A1028 0029CC88 D0 3F 00 00 */ stfs f1, 0(r31) /* 802A102C 0029CC8C D0 1F 00 04 */ stfs f0, 4(r31) /* 802A1030 0029CC90 48 00 00 24 */ b lbl_802A1054 lbl_802A1034: /* 802A1034 0029CC94 EC 22 E8 28 */ fsubs f1, f2, f29 /* 802A1038 0029CC98 EC 1C E8 28 */ fsubs f0, f28, f29 /* 802A103C 0029CC9C EC 01 00 24 */ fdivs f0, f1, f0 /* 802A1040 0029CCA0 EC 00 10 24 */ fdivs f0, f0, f2 /* 802A1044 0029CCA4 EC 3F 00 32 */ fmuls f1, f31, f0 /* 802A1048 0029CCA8 EC 1E 00 32 */ fmuls f0, f30, f0 /* 802A104C 0029CCAC D0 3F 00 00 */ stfs f1, 0(r31) /* 802A1050 0029CCB0 D0 1F 00 04 */ stfs f0, 4(r31) lbl_802A1054: /* 802A1054 0029CCB4 E3 E1 00 58 */ psq_l f31, 88(r1), 0, qr0 /* 802A1058 0029CCB8 CB E1 00 50 */ lfd f31, 0x50(r1) /* 802A105C 0029CCBC E3 C1 00 48 */ psq_l f30, 72(r1), 0, qr0 /* 802A1060 0029CCC0 CB C1 00 40 */ lfd f30, 0x40(r1) /* 802A1064 0029CCC4 E3 A1 00 38 */ psq_l f29, 56(r1), 0, qr0 /* 802A1068 0029CCC8 CB A1 00 30 */ lfd f29, 0x30(r1) /* 802A106C 0029CCCC E3 81 00 28 */ psq_l f28, 40(r1), 0, qr0 /* 802A1070 0029CCD0 CB 81 00 20 */ lfd f28, 0x20(r1) /* 802A1074 0029CCD4 80 01 00 64 */ lwz r0, 0x64(r1) /* 802A1078 0029CCD8 83 E1 00 1C */ lwz r31, 0x1c(r1) /* 802A107C 0029CCDC 7C 08 03 A6 */ mtlr r0 /* 802A1080 0029CCE0 38 21 00 60 */ addi r1, r1, 0x60 /* 802A1084 0029CCE4 4E 80 00 20 */ blr clamp_stick_cross: /* 802A1088 0029CCE8 94 21 FF E0 */ stwu r1, -0x20(r1) /* 802A108C 0029CCEC 7C 08 02 A6 */ mflr r0 /* 802A1090 0029CCF0 2C 04 00 00 */ cmpwi r4, 0 /* 802A1094 0029CCF4 90 01 00 24 */ stw r0, 0x24(r1) /* 802A1098 0029CCF8 3C 00 43 30 */ lis r0, 0x4330 /* 802A109C 0029CCFC 93 E1 00 1C */ stw r31, 0x1c(r1) /* 802A10A0 0029CD00 7C 7F 1B 78 */ mr r31, r3 /* 802A10A4 0029CD04 90 01 00 08 */ stw r0, 8(r1) /* 802A10A8 0029CD08 90 01 00 10 */ stw r0, 0x10(r1) /* 802A10AC 0029CD0C 40 80 00 78 */ bge lbl_802A1124 /* 802A10B0 0029CD10 7C 04 00 D0 */ neg r0, r4 /* 802A10B4 0029CD14 7C 00 30 00 */ cmpw r0, r6 /* 802A10B8 0029CD18 41 81 00 10 */ bgt lbl_802A10C8 /* 802A10BC 0029CD1C C0 02 A3 A0 */ lfs f0, lbl_806429A0-_SDA2_BASE_(r2) /* 802A10C0 0029CD20 D0 03 00 00 */ stfs f0, 0(r3) /* 802A10C4 0029CD24 48 00 00 50 */ b lbl_802A1114 lbl_802A10C8: /* 802A10C8 0029CD28 7C 00 38 00 */ cmpw r0, r7 /* 802A10CC 0029CD2C 41 80 00 10 */ blt lbl_802A10DC /* 802A10D0 0029CD30 C0 02 A3 B0 */ lfs f0, lbl_806429B0-_SDA2_BASE_(r2) /* 802A10D4 0029CD34 D0 03 00 00 */ stfs f0, 0(r3) /* 802A10D8 0029CD38 48 00 00 3C */ b lbl_802A1114 lbl_802A10DC: /* 802A10DC 0029CD3C 7C 84 32 14 */ add r4, r4, r6 /* 802A10E0 0029CD40 7C 06 38 50 */ subf r0, r6, r7 /* 802A10E4 0029CD44 7C 84 00 D0 */ neg r4, r4 /* 802A10E8 0029CD48 C8 42 A3 C8 */ lfd f2, lbl_806429C8-_SDA2_BASE_(r2) /* 802A10EC 0029CD4C 6C 84 80 00 */ xoris r4, r4, 0x8000 /* 802A10F0 0029CD50 6C 00 80 00 */ xoris r0, r0, 0x8000 /* 802A10F4 0029CD54 90 81 00 0C */ stw r4, 0xc(r1) /* 802A10F8 0029CD58 90 01 00 14 */ stw r0, 0x14(r1) /* 802A10FC 0029CD5C C8 21 00 08 */ lfd f1, 8(r1) /* 802A1100 0029CD60 C8 01 00 10 */ lfd f0, 0x10(r1) /* 802A1104 0029CD64 EC 21 10 28 */ fsubs f1, f1, f2 /* 802A1108 0029CD68 EC 00 10 28 */ fsubs f0, f0, f2 /* 802A110C 0029CD6C EC 01 00 24 */ fdivs f0, f1, f0 /* 802A1110 0029CD70 D0 03 00 00 */ stfs f0, 0(r3) lbl_802A1114: /* 802A1114 0029CD74 C0 03 00 00 */ lfs f0, 0(r3) /* 802A1118 0029CD78 FC 00 00 50 */ fneg f0, f0 /* 802A111C 0029CD7C D0 03 00 00 */ stfs f0, 0(r3) /* 802A1120 0029CD80 48 00 00 60 */ b lbl_802A1180 lbl_802A1124: /* 802A1124 0029CD84 7C 04 30 00 */ cmpw r4, r6 /* 802A1128 0029CD88 41 81 00 10 */ bgt lbl_802A1138 /* 802A112C 0029CD8C C0 02 A3 A0 */ lfs f0, lbl_806429A0-_SDA2_BASE_(r2) /* 802A1130 0029CD90 D0 03 00 00 */ stfs f0, 0(r3) /* 802A1134 0029CD94 48 00 00 4C */ b lbl_802A1180 lbl_802A1138: /* 802A1138 0029CD98 7C 04 38 00 */ cmpw r4, r7 /* 802A113C 0029CD9C 41 80 00 10 */ blt lbl_802A114C /* 802A1140 0029CDA0 C0 02 A3 B0 */ lfs f0, lbl_806429B0-_SDA2_BASE_(r2) /* 802A1144 0029CDA4 D0 03 00 00 */ stfs f0, 0(r3) /* 802A1148 0029CDA8 48 00 00 38 */ b lbl_802A1180 lbl_802A114C: /* 802A114C 0029CDAC 7C 86 20 50 */ subf r4, r6, r4 /* 802A1150 0029CDB0 7C 06 38 50 */ subf r0, r6, r7 /* 802A1154 0029CDB4 6C 84 80 00 */ xoris r4, r4, 0x8000 /* 802A1158 0029CDB8 C8 42 A3 C8 */ lfd f2, lbl_806429C8-_SDA2_BASE_(r2) /* 802A115C 0029CDBC 6C 00 80 00 */ xoris r0, r0, 0x8000 /* 802A1160 0029CDC0 90 81 00 0C */ stw r4, 0xc(r1) /* 802A1164 0029CDC4 90 01 00 14 */ stw r0, 0x14(r1) /* 802A1168 0029CDC8 C8 21 00 08 */ lfd f1, 8(r1) /* 802A116C 0029CDCC C8 01 00 10 */ lfd f0, 0x10(r1) /* 802A1170 0029CDD0 EC 21 10 28 */ fsubs f1, f1, f2 /* 802A1174 0029CDD4 EC 00 10 28 */ fsubs f0, f0, f2 /* 802A1178 0029CDD8 EC 01 00 24 */ fdivs f0, f1, f0 /* 802A117C 0029CDDC D0 03 00 00 */ stfs f0, 0(r3) lbl_802A1180: /* 802A1180 0029CDE0 2C 05 00 00 */ cmpwi r5, 0 /* 802A1184 0029CDE4 40 80 00 78 */ bge lbl_802A11FC /* 802A1188 0029CDE8 7C 05 00 D0 */ neg r0, r5 /* 802A118C 0029CDEC 7C 00 30 00 */ cmpw r0, r6 /* 802A1190 0029CDF0 41 81 00 10 */ bgt lbl_802A11A0 /* 802A1194 0029CDF4 C0 02 A3 A0 */ lfs f0, lbl_806429A0-_SDA2_BASE_(r2) /* 802A1198 0029CDF8 D0 03 00 04 */ stfs f0, 4(r3) /* 802A119C 0029CDFC 48 00 00 50 */ b lbl_802A11EC lbl_802A11A0: /* 802A11A0 0029CE00 7C 00 38 00 */ cmpw r0, r7 /* 802A11A4 0029CE04 41 80 00 10 */ blt lbl_802A11B4 /* 802A11A8 0029CE08 C0 02 A3 B0 */ lfs f0, lbl_806429B0-_SDA2_BASE_(r2) /* 802A11AC 0029CE0C D0 03 00 04 */ stfs f0, 4(r3) /* 802A11B0 0029CE10 48 00 00 3C */ b lbl_802A11EC lbl_802A11B4: /* 802A11B4 0029CE14 7C 85 32 14 */ add r4, r5, r6 /* 802A11B8 0029CE18 7C 06 38 50 */ subf r0, r6, r7 /* 802A11BC 0029CE1C 7C 84 00 D0 */ neg r4, r4 /* 802A11C0 0029CE20 C8 42 A3 C8 */ lfd f2, lbl_806429C8-_SDA2_BASE_(r2) /* 802A11C4 0029CE24 6C 84 80 00 */ xoris r4, r4, 0x8000 /* 802A11C8 0029CE28 6C 00 80 00 */ xoris r0, r0, 0x8000 /* 802A11CC 0029CE2C 90 81 00 0C */ stw r4, 0xc(r1) /* 802A11D0 0029CE30 90 01 00 14 */ stw r0, 0x14(r1) /* 802A11D4 0029CE34 C8 21 00 08 */ lfd f1, 8(r1) /* 802A11D8 0029CE38 C8 01 00 10 */ lfd f0, 0x10(r1) /* 802A11DC 0029CE3C EC 21 10 28 */ fsubs f1, f1, f2 /* 802A11E0 0029CE40 EC 00 10 28 */ fsubs f0, f0, f2 /* 802A11E4 0029CE44 EC 01 00 24 */ fdivs f0, f1, f0 /* 802A11E8 0029CE48 D0 03 00 04 */ stfs f0, 4(r3) lbl_802A11EC: /* 802A11EC 0029CE4C C0 03 00 04 */ lfs f0, 4(r3) /* 802A11F0 0029CE50 FC 00 00 50 */ fneg f0, f0 /* 802A11F4 0029CE54 D0 03 00 04 */ stfs f0, 4(r3) /* 802A11F8 0029CE58 48 00 00 60 */ b lbl_802A1258 lbl_802A11FC: /* 802A11FC 0029CE5C 7C 05 30 00 */ cmpw r5, r6 /* 802A1200 0029CE60 41 81 00 10 */ bgt lbl_802A1210 /* 802A1204 0029CE64 C0 02 A3 A0 */ lfs f0, lbl_806429A0-_SDA2_BASE_(r2) /* 802A1208 0029CE68 D0 03 00 04 */ stfs f0, 4(r3) /* 802A120C 0029CE6C 48 00 00 4C */ b lbl_802A1258 lbl_802A1210: /* 802A1210 0029CE70 7C 05 38 00 */ cmpw r5, r7 /* 802A1214 0029CE74 41 80 00 10 */ blt lbl_802A1224 /* 802A1218 0029CE78 C0 02 A3 B0 */ lfs f0, lbl_806429B0-_SDA2_BASE_(r2) /* 802A121C 0029CE7C D0 03 00 04 */ stfs f0, 4(r3) /* 802A1220 0029CE80 48 00 00 38 */ b lbl_802A1258 lbl_802A1224: /* 802A1224 0029CE84 7C 86 28 50 */ subf r4, r6, r5 /* 802A1228 0029CE88 7C 06 38 50 */ subf r0, r6, r7 /* 802A122C 0029CE8C 6C 84 80 00 */ xoris r4, r4, 0x8000 /* 802A1230 0029CE90 C8 42 A3 C8 */ lfd f2, lbl_806429C8-_SDA2_BASE_(r2) /* 802A1234 0029CE94 6C 00 80 00 */ xoris r0, r0, 0x8000 /* 802A1238 0029CE98 90 81 00 0C */ stw r4, 0xc(r1) /* 802A123C 0029CE9C 90 01 00 14 */ stw r0, 0x14(r1) /* 802A1240 0029CEA0 C8 21 00 08 */ lfd f1, 8(r1) /* 802A1244 0029CEA4 C8 01 00 10 */ lfd f0, 0x10(r1) /* 802A1248 0029CEA8 EC 21 10 28 */ fsubs f1, f1, f2 /* 802A124C 0029CEAC EC 00 10 28 */ fsubs f0, f0, f2 /* 802A1250 0029CEB0 EC 01 00 24 */ fdivs f0, f1, f0 /* 802A1254 0029CEB4 D0 03 00 04 */ stfs f0, 4(r3) lbl_802A1258: /* 802A1258 0029CEB8 C0 03 00 00 */ lfs f0, 0(r3) /* 802A125C 0029CEBC C0 23 00 04 */ lfs f1, 4(r3) /* 802A1260 0029CEC0 EC 40 00 32 */ fmuls f2, f0, f0 /* 802A1264 0029CEC4 C0 02 A3 B0 */ lfs f0, lbl_806429B0-_SDA2_BASE_(r2) /* 802A1268 0029CEC8 EC 21 00 72 */ fmuls f1, f1, f1 /* 802A126C 0029CECC EC 22 08 2A */ fadds f1, f2, f1 /* 802A1270 0029CED0 FC 01 00 40 */ fcmpo cr0, f1, f0 /* 802A1274 0029CED4 40 81 00 24 */ ble lbl_802A1298 /* 802A1278 0029CED8 4B F3 35 BD */ bl sqrt /* 802A127C 0029CEDC FC 40 08 18 */ frsp f2, f1 /* 802A1280 0029CEE0 C0 3F 00 00 */ lfs f1, 0(r31) /* 802A1284 0029CEE4 C0 1F 00 04 */ lfs f0, 4(r31) /* 802A1288 0029CEE8 EC 21 10 24 */ fdivs f1, f1, f2 /* 802A128C 0029CEEC EC 00 10 24 */ fdivs f0, f0, f2 /* 802A1290 0029CEF0 D0 3F 00 00 */ stfs f1, 0(r31) /* 802A1294 0029CEF4 D0 1F 00 04 */ stfs f0, 4(r31) lbl_802A1298: /* 802A1298 0029CEF8 80 01 00 24 */ lwz r0, 0x24(r1) /* 802A129C 0029CEFC 83 E1 00 1C */ lwz r31, 0x1c(r1) /* 802A12A0 0029CF00 7C 08 03 A6 */ mtlr r0 /* 802A12A4 0029CF04 38 21 00 20 */ addi r1, r1, 0x20 /* 802A12A8 0029CF08 4E 80 00 20 */ blr .global read_kpad_stick read_kpad_stick: /* 802A12AC 0029CF0C 94 21 FF D0 */ stwu r1, -0x30(r1) /* 802A12B0 0029CF10 7C 08 02 A6 */ mflr r0 /* 802A12B4 0029CF14 3C A0 43 30 */ lis r5, 0x4330 /* 802A12B8 0029CF18 90 01 00 34 */ stw r0, 0x34(r1) /* 802A12BC 0029CF1C 93 E1 00 2C */ stw r31, 0x2c(r1) /* 802A12C0 0029CF20 3F E0 80 2A */ lis r31, clamp_stick_cross@ha /* 802A12C4 0029CF24 3B FF 10 88 */ addi r31, r31, clamp_stick_cross@l /* 802A12C8 0029CF28 93 C1 00 28 */ stw r30, 0x28(r1) /* 802A12CC 0029CF2C 3B C3 00 60 */ addi r30, r3, 0x60 /* 802A12D0 0029CF30 93 A1 00 24 */ stw r29, 0x24(r1) /* 802A12D4 0029CF34 7C 9D 23 78 */ mr r29, r4 /* 802A12D8 0029CF38 80 0D AD D0 */ lwz r0, lbl_80640090-_SDA_BASE_(r13) /* 802A12DC 0029CF3C 90 A1 00 08 */ stw r5, 8(r1) /* 802A12E0 0029CF40 2C 00 00 00 */ cmpwi r0, 0 /* 802A12E4 0029CF44 90 A1 00 10 */ stw r5, 0x10(r1) /* 802A12E8 0029CF48 41 82 00 0C */ beq lbl_802A12F4 /* 802A12EC 0029CF4C 3F E0 80 2A */ lis r31, clamp_stick_circle@ha /* 802A12F0 0029CF50 3B FF 0F 60 */ addi r31, r31, clamp_stick_circle@l lbl_802A12F4: /* 802A12F4 0029CF54 88 C4 00 28 */ lbz r6, 0x28(r4) /* 802A12F8 0029CF58 28 06 00 01 */ cmplwi r6, 1 /* 802A12FC 0029CF5C 40 82 00 88 */ bne lbl_802A1384 /* 802A1300 0029CF60 88 A4 00 36 */ lbz r5, 0x36(r4) /* 802A1304 0029CF64 38 05 00 FD */ addi r0, r5, 0xfd /* 802A1308 0029CF68 54 00 06 3E */ clrlwi r0, r0, 0x18 /* 802A130C 0029CF6C 28 00 00 02 */ cmplwi r0, 2 /* 802A1310 0029CF70 41 81 00 74 */ bgt lbl_802A1384 /* 802A1314 0029CF74 88 03 05 1E */ lbz r0, 0x51e(r3) /* 802A1318 0029CF78 2C 00 00 00 */ cmpwi r0, 0 /* 802A131C 0029CF7C 41 82 00 3C */ beq lbl_802A1358 /* 802A1320 0029CF80 38 00 00 00 */ li r0, 0 /* 802A1324 0029CF84 C0 42 A3 A0 */ lfs f2, lbl_806429A0-_SDA2_BASE_(r2) /* 802A1328 0029CF88 98 03 05 1E */ stb r0, 0x51e(r3) /* 802A132C 0029CF8C C0 22 A3 AC */ lfs f1, lbl_806429AC-_SDA2_BASE_(r2) /* 802A1330 0029CF90 80 6D AD D8 */ lwz r3, lbl_80640098-_SDA_BASE_(r13) /* 802A1334 0029CF94 80 0D AD DC */ lwz r0, lbl_8064009C-_SDA_BASE_(r13) /* 802A1338 0029CF98 C0 02 A3 B0 */ lfs f0, lbl_806429B0-_SDA2_BASE_(r2) /* 802A133C 0029CF9C 90 7E 00 00 */ stw r3, 0(r30) /* 802A1340 0029CFA0 90 1E 00 04 */ stw r0, 4(r30) /* 802A1344 0029CFA4 D0 5E 00 10 */ stfs f2, 0x10(r30) /* 802A1348 0029CFA8 D0 5E 00 08 */ stfs f2, 8(r30) /* 802A134C 0029CFAC D0 3E 00 0C */ stfs f1, 0xc(r30) /* 802A1350 0029CFB0 D0 1E 00 14 */ stfs f0, 0x14(r30) /* 802A1354 0029CFB4 D0 5E 00 18 */ stfs f2, 0x18(r30) lbl_802A1358: /* 802A1358 0029CFB8 88 84 00 30 */ lbz r4, 0x30(r4) /* 802A135C 0029CFBC 7F EC FB 78 */ mr r12, r31 /* 802A1360 0029CFC0 88 BD 00 31 */ lbz r5, 0x31(r29) /* 802A1364 0029CFC4 7F C3 F3 78 */ mr r3, r30 /* 802A1368 0029CFC8 7C 84 07 74 */ extsb r4, r4 /* 802A136C 0029CFCC 80 CD 89 64 */ lwz r6, lbl_8063DC24-_SDA_BASE_(r13) /* 802A1370 0029CFD0 7C A5 07 74 */ extsb r5, r5 /* 802A1374 0029CFD4 80 ED 89 68 */ lwz r7, lbl_8063DC28-_SDA_BASE_(r13) /* 802A1378 0029CFD8 7D 89 03 A6 */ mtctr r12 /* 802A137C 0029CFDC 4E 80 04 21 */ bctrl /* 802A1380 0029CFE0 48 00 01 88 */ b lbl_802A1508 lbl_802A1384: /* 802A1384 0029CFE4 28 06 00 02 */ cmplwi r6, 2 /* 802A1388 0029CFE8 40 82 01 80 */ bne lbl_802A1508 /* 802A138C 0029CFEC 88 A4 00 36 */ lbz r5, 0x36(r4) /* 802A1390 0029CFF0 38 05 00 FA */ addi r0, r5, 0xfa /* 802A1394 0029CFF4 54 00 06 3E */ clrlwi r0, r0, 0x18 /* 802A1398 0029CFF8 28 00 00 02 */ cmplwi r0, 2 /* 802A139C 0029CFFC 41 81 01 6C */ bgt lbl_802A1508 /* 802A13A0 0029D000 88 03 05 1E */ lbz r0, 0x51e(r3) /* 802A13A4 0029D004 2C 00 00 00 */ cmpwi r0, 0 /* 802A13A8 0029D008 41 82 00 50 */ beq lbl_802A13F8 /* 802A13AC 0029D00C 38 E0 00 00 */ li r7, 0 /* 802A13B0 0029D010 C0 02 A3 A0 */ lfs f0, lbl_806429A0-_SDA2_BASE_(r2) /* 802A13B4 0029D014 98 E3 05 1E */ stb r7, 0x51e(r3) /* 802A13B8 0029D018 A0 03 04 D0 */ lhz r0, 0x4d0(r3) /* 802A13BC 0029D01C 80 CD AD D8 */ lwz r6, lbl_80640098-_SDA_BASE_(r13) /* 802A13C0 0029D020 80 AD AD DC */ lwz r5, lbl_8064009C-_SDA_BASE_(r13) /* 802A13C4 0029D024 90 DE 00 0C */ stw r6, 0xc(r30) /* 802A13C8 0029D028 90 BE 00 10 */ stw r5, 0x10(r30) /* 802A13CC 0029D02C 80 CD AD D8 */ lwz r6, lbl_80640098-_SDA_BASE_(r13) /* 802A13D0 0029D030 80 AD AD DC */ lwz r5, lbl_8064009C-_SDA_BASE_(r13) /* 802A13D4 0029D034 90 DE 00 14 */ stw r6, 0x14(r30) /* 802A13D8 0029D038 90 BE 00 18 */ stw r5, 0x18(r30) /* 802A13DC 0029D03C D0 1E 00 20 */ stfs f0, 0x20(r30) /* 802A13E0 0029D040 D0 1E 00 1C */ stfs f0, 0x1c(r30) /* 802A13E4 0029D044 90 FE 00 08 */ stw r7, 8(r30) /* 802A13E8 0029D048 90 FE 00 04 */ stw r7, 4(r30) /* 802A13EC 0029D04C 90 FE 00 00 */ stw r7, 0(r30) /* 802A13F0 0029D050 B0 E3 04 D4 */ sth r7, 0x4d4(r3) /* 802A13F4 0029D054 B0 03 04 D6 */ sth r0, 0x4d6(r3) lbl_802A13F8: /* 802A13F8 0029D058 7F EC FB 78 */ mr r12, r31 /* 802A13FC 0029D05C 38 7E 00 0C */ addi r3, r30, 0xc /* 802A1400 0029D060 A8 84 00 2C */ lha r4, 0x2c(r4) /* 802A1404 0029D064 A8 BD 00 2E */ lha r5, 0x2e(r29) /* 802A1408 0029D068 80 CD 89 6C */ lwz r6, lbl_8063DC2C-_SDA_BASE_(r13) /* 802A140C 0029D06C 80 ED 89 70 */ lwz r7, lbl_8063DC30-_SDA_BASE_(r13) /* 802A1410 0029D070 7D 89 03 A6 */ mtctr r12 /* 802A1414 0029D074 4E 80 04 21 */ bctrl /* 802A1418 0029D078 7F EC FB 78 */ mr r12, r31 /* 802A141C 0029D07C 38 7E 00 14 */ addi r3, r30, 0x14 /* 802A1420 0029D080 A8 9D 00 30 */ lha r4, 0x30(r29) /* 802A1424 0029D084 A8 BD 00 32 */ lha r5, 0x32(r29) /* 802A1428 0029D088 80 CD 89 6C */ lwz r6, lbl_8063DC2C-_SDA_BASE_(r13) /* 802A142C 0029D08C 80 ED 89 70 */ lwz r7, lbl_8063DC30-_SDA_BASE_(r13) /* 802A1430 0029D090 7D 89 03 A6 */ mtctr r12 /* 802A1434 0029D094 4E 80 04 21 */ bctrl /* 802A1438 0029D098 80 AD 89 74 */ lwz r5, lbl_8063DC34-_SDA_BASE_(r13) /* 802A143C 0029D09C 88 1D 00 34 */ lbz r0, 0x34(r29) /* 802A1440 0029D0A0 80 8D 89 78 */ lwz r4, lbl_8063DC38-_SDA_BASE_(r13) /* 802A1444 0029D0A4 7C 00 28 00 */ cmpw r0, r5 /* 802A1448 0029D0A8 41 81 00 10 */ bgt lbl_802A1458 /* 802A144C 0029D0AC C0 02 A3 A0 */ lfs f0, lbl_806429A0-_SDA2_BASE_(r2) /* 802A1450 0029D0B0 D0 1E 00 1C */ stfs f0, 0x1c(r30) /* 802A1454 0029D0B4 48 00 00 4C */ b lbl_802A14A0 lbl_802A1458: /* 802A1458 0029D0B8 7C 00 20 00 */ cmpw r0, r4 /* 802A145C 0029D0BC 41 80 00 10 */ blt lbl_802A146C /* 802A1460 0029D0C0 C0 02 A3 B0 */ lfs f0, lbl_806429B0-_SDA2_BASE_(r2) /* 802A1464 0029D0C4 D0 1E 00 1C */ stfs f0, 0x1c(r30) /* 802A1468 0029D0C8 48 00 00 38 */ b lbl_802A14A0 lbl_802A146C: /* 802A146C 0029D0CC 7C 65 00 50 */ subf r3, r5, r0 /* 802A1470 0029D0D0 7C 05 20 50 */ subf r0, r5, r4 /* 802A1474 0029D0D4 6C 63 80 00 */ xoris r3, r3, 0x8000 /* 802A1478 0029D0D8 C8 42 A3 C8 */ lfd f2, lbl_806429C8-_SDA2_BASE_(r2) /* 802A147C 0029D0DC 6C 00 80 00 */ xoris r0, r0, 0x8000 /* 802A1480 0029D0E0 90 61 00 0C */ stw r3, 0xc(r1) /* 802A1484 0029D0E4 90 01 00 14 */ stw r0, 0x14(r1) /* 802A1488 0029D0E8 C8 21 00 08 */ lfd f1, 8(r1) /* 802A148C 0029D0EC C8 01 00 10 */ lfd f0, 0x10(r1) /* 802A1490 0029D0F0 EC 21 10 28 */ fsubs f1, f1, f2 /* 802A1494 0029D0F4 EC 00 10 28 */ fsubs f0, f0, f2 /* 802A1498 0029D0F8 EC 01 00 24 */ fdivs f0, f1, f0 /* 802A149C 0029D0FC D0 1E 00 1C */ stfs f0, 0x1c(r30) lbl_802A14A0: /* 802A14A0 0029D100 80 AD 89 74 */ lwz r5, lbl_8063DC34-_SDA_BASE_(r13) /* 802A14A4 0029D104 88 1D 00 35 */ lbz r0, 0x35(r29) /* 802A14A8 0029D108 80 8D 89 78 */ lwz r4, lbl_8063DC38-_SDA_BASE_(r13) /* 802A14AC 0029D10C 7C 00 28 00 */ cmpw r0, r5 /* 802A14B0 0029D110 41 81 00 10 */ bgt lbl_802A14C0 /* 802A14B4 0029D114 C0 02 A3 A0 */ lfs f0, lbl_806429A0-_SDA2_BASE_(r2) /* 802A14B8 0029D118 D0 1E 00 20 */ stfs f0, 0x20(r30) /* 802A14BC 0029D11C 48 00 00 4C */ b lbl_802A1508 lbl_802A14C0: /* 802A14C0 0029D120 7C 00 20 00 */ cmpw r0, r4 /* 802A14C4 0029D124 41 80 00 10 */ blt lbl_802A14D4 /* 802A14C8 0029D128 C0 02 A3 B0 */ lfs f0, lbl_806429B0-_SDA2_BASE_(r2) /* 802A14CC 0029D12C D0 1E 00 20 */ stfs f0, 0x20(r30) /* 802A14D0 0029D130 48 00 00 38 */ b lbl_802A1508 lbl_802A14D4: /* 802A14D4 0029D134 7C 65 00 50 */ subf r3, r5, r0 /* 802A14D8 0029D138 7C 05 20 50 */ subf r0, r5, r4 /* 802A14DC 0029D13C 6C 63 80 00 */ xoris r3, r3, 0x8000 /* 802A14E0 0029D140 C8 42 A3 C8 */ lfd f2, lbl_806429C8-_SDA2_BASE_(r2) /* 802A14E4 0029D144 6C 00 80 00 */ xoris r0, r0, 0x8000 /* 802A14E8 0029D148 90 61 00 0C */ stw r3, 0xc(r1) /* 802A14EC 0029D14C 90 01 00 14 */ stw r0, 0x14(r1) /* 802A14F0 0029D150 C8 21 00 08 */ lfd f1, 8(r1) /* 802A14F4 0029D154 C8 01 00 10 */ lfd f0, 0x10(r1) /* 802A14F8 0029D158 EC 21 10 28 */ fsubs f1, f1, f2 /* 802A14FC 0029D15C EC 00 10 28 */ fsubs f0, f0, f2 /* 802A1500 0029D160 EC 01 00 24 */ fdivs f0, f1, f0 /* 802A1504 0029D164 D0 1E 00 20 */ stfs f0, 0x20(r30) lbl_802A1508: /* 802A1508 0029D168 80 01 00 34 */ lwz r0, 0x34(r1) /* 802A150C 0029D16C 83 E1 00 2C */ lwz r31, 0x2c(r1) /* 802A1510 0029D170 83 C1 00 28 */ lwz r30, 0x28(r1) /* 802A1514 0029D174 83 A1 00 24 */ lwz r29, 0x24(r1) /* 802A1518 0029D178 7C 08 03 A6 */ mtlr r0 /* 802A151C 0029D17C 38 21 00 30 */ addi r1, r1, 0x30 /* 802A1520 0029D180 4E 80 00 20 */ blr .global KPADRead KPADRead: /* 802A1524 0029D184 94 21 FF 40 */ stwu r1, -0xc0(r1) /* 802A1528 0029D188 7C 08 02 A6 */ mflr r0 /* 802A152C 0029D18C 90 01 00 C4 */ stw r0, 0xc4(r1) /* 802A1530 0029D190 39 61 00 C0 */ addi r11, r1, 0xc0 /* 802A1534 0029D194 4B F2 5B C1 */ bl __save_gpr /* 802A1538 0029D198 1C 03 05 24 */ mulli r0, r3, 0x524 /* 802A153C 0029D19C 3C E0 43 30 */ lis r7, 0x4330 /* 802A1540 0029D1A0 3C C0 80 53 */ lis r6, lbl_805356D0@ha /* 802A1544 0029D1A4 90 E1 00 50 */ stw r7, 0x50(r1) /* 802A1548 0029D1A8 7C 7B 1B 78 */ mr r27, r3 /* 802A154C 0029D1AC 38 C6 56 D0 */ addi r6, r6, lbl_805356D0@l /* 802A1550 0029D1B0 90 E1 00 58 */ stw r7, 0x58(r1) /* 802A1554 0029D1B4 7C 9C 23 78 */ mr r28, r4 /* 802A1558 0029D1B8 7C AE 2B 78 */ mr r14, r5 /* 802A155C 0029D1BC 7F E6 02 14 */ add r31, r6, r0 /* 802A1560 0029D1C0 3B C0 00 00 */ li r30, 0 /* 802A1564 0029D1C4 4B FC D1 F9 */ bl OSDisableInterrupts /* 802A1568 0029D1C8 88 1F 05 1C */ lbz r0, 0x51c(r31) /* 802A156C 0029D1CC 7C 71 1B 78 */ mr r17, r3 /* 802A1570 0029D1D0 2C 00 00 00 */ cmpwi r0, 0 /* 802A1574 0029D1D4 41 82 00 10 */ beq lbl_802A1584 /* 802A1578 0029D1D8 4B FC D2 0D */ bl OSRestoreInterrupts /* 802A157C 0029D1DC 38 60 00 00 */ li r3, 0 /* 802A1580 0029D1E0 48 00 06 A4 */ b lbl_802A1C24 lbl_802A1584: /* 802A1584 0029D1E4 3A 00 00 01 */ li r16, 1 /* 802A1588 0029D1E8 7F 63 DB 78 */ mr r3, r27 /* 802A158C 0029D1EC 9A 1F 05 1C */ stb r16, 0x51c(r31) /* 802A1590 0029D1F0 38 80 00 00 */ li r4, 0 /* 802A1594 0029D1F4 48 00 77 E5 */ bl WPADProbe /* 802A1598 0029D1F8 2C 03 FF FF */ cmpwi r3, -1 /* 802A159C 0029D1FC 7C 6F 1B 78 */ mr r15, r3 /* 802A15A0 0029D200 40 82 00 58 */ bne lbl_802A15F8 /* 802A15A4 0029D204 80 1F 04 D8 */ lwz r0, 0x4d8(r31) /* 802A15A8 0029D208 2C 80 00 00 */ cmpwi cr1, r0, 0 /* 802A15AC 0029D20C 41 86 00 4C */ beq cr1, lbl_802A15F8 /* 802A15B0 0029D210 88 1F 05 22 */ lbz r0, 0x522(r31) /* 802A15B4 0029D214 2C 00 00 00 */ cmpwi r0, 0 /* 802A15B8 0029D218 41 82 00 40 */ beq lbl_802A15F8 /* 802A15BC 0029D21C 88 1F 05 23 */ lbz r0, 0x523(r31) /* 802A15C0 0029D220 2C 00 00 00 */ cmpwi r0, 0 /* 802A15C4 0029D224 40 82 00 34 */ bne lbl_802A15F8 /* 802A15C8 0029D228 41 86 00 28 */ beq cr1, lbl_802A15F0 /* 802A15CC 0029D22C 40 82 00 24 */ bne lbl_802A15F0 /* 802A15D0 0029D230 9A 1F 05 23 */ stb r16, 0x523(r31) /* 802A15D4 0029D234 7F 63 DB 78 */ mr r3, r27 /* 802A15D8 0029D238 38 80 00 01 */ li r4, 1 /* 802A15DC 0029D23C 81 9F 04 D8 */ lwz r12, 0x4d8(r31) /* 802A15E0 0029D240 7D 89 03 A6 */ mtctr r12 /* 802A15E4 0029D244 4E 80 04 21 */ bctrl /* 802A15E8 0029D248 38 00 00 00 */ li r0, 0 /* 802A15EC 0029D24C 98 1F 05 22 */ stb r0, 0x522(r31) lbl_802A15F0: /* 802A15F0 0029D250 38 00 00 00 */ li r0, 0 /* 802A15F4 0029D254 98 1F 05 1F */ stb r0, 0x51f(r31) lbl_802A15F8: /* 802A15F8 0029D258 7E 23 8B 78 */ mr r3, r17 /* 802A15FC 0029D25C 4B FC D1 89 */ bl OSRestoreInterrupts /* 802A1600 0029D260 88 1F 05 1D */ lbz r0, 0x51d(r31) /* 802A1604 0029D264 2C 00 00 00 */ cmpwi r0, 0 /* 802A1608 0029D268 41 82 00 10 */ beq lbl_802A1618 /* 802A160C 0029D26C 99 FF 00 5D */ stb r15, 0x5d(r31) /* 802A1610 0029D270 7F E3 FB 78 */ mr r3, r31 /* 802A1614 0029D274 4B FF DD AD */ bl reset_kpad lbl_802A1618: /* 802A1618 0029D278 3C 80 80 2A */ lis r4, KPADiSamplingCallback@ha /* 802A161C 0029D27C 7F 63 DB 78 */ mr r3, r27 /* 802A1620 0029D280 38 84 1F D0 */ addi r4, r4, KPADiSamplingCallback@l /* 802A1624 0029D284 48 00 77 E1 */ bl WPADSetSamplingCallback /* 802A1628 0029D288 88 1F 01 0F */ lbz r0, 0x10f(r31) /* 802A162C 0029D28C 2C 00 00 00 */ cmpwi r0, 0 /* 802A1630 0029D290 41 82 05 E8 */ beq lbl_802A1C18 /* 802A1634 0029D294 2C 1C 00 00 */ cmpwi r28, 0 /* 802A1638 0029D298 41 82 05 E0 */ beq lbl_802A1C18 /* 802A163C 0029D29C 2C 0E 00 00 */ cmpwi r14, 0 /* 802A1640 0029D2A0 41 82 05 D8 */ beq lbl_802A1C18 /* 802A1644 0029D2A4 4B FC D1 19 */ bl OSDisableInterrupts /* 802A1648 0029D2A8 8B BF 01 0F */ lbz r29, 0x10f(r31) /* 802A164C 0029D2AC 7C 1D 70 40 */ cmplw r29, r14 /* 802A1650 0029D2B0 7F BE EB 78 */ mr r30, r29 /* 802A1654 0029D2B4 40 81 00 08 */ ble lbl_802A165C /* 802A1658 0029D2B8 7D DE 73 78 */ mr r30, r14 lbl_802A165C: /* 802A165C 0029D2BC 38 80 00 00 */ li r4, 0 /* 802A1660 0029D2C0 7F C0 F3 78 */ mr r0, r30 /* 802A1664 0029D2C4 98 9F 01 0F */ stb r4, 0x10f(r31) /* 802A1668 0029D2C8 1C BE 00 84 */ mulli r5, r30, 0x84 /* 802A166C 0029D2CC 88 9F 01 0E */ lbz r4, 0x10e(r31) /* 802A1670 0029D2D0 7C BC 2A 14 */ add r5, r28, r5 /* 802A1674 0029D2D4 7C DE 20 51 */ subf. r6, r30, r4 /* 802A1678 0029D2D8 40 80 00 08 */ bge lbl_802A1680 /* 802A167C 0029D2DC 38 C6 00 10 */ addi r6, r6, 0x10 lbl_802A1680: /* 802A1680 0029D2E0 38 A5 FF 7C */ addi r5, r5, -132 /* 802A1684 0029D2E4 48 00 01 00 */ b lbl_802A1784 lbl_802A1688: /* 802A1688 0029D2E8 1C 86 00 38 */ mulli r4, r6, 0x38 /* 802A168C 0029D2EC 38 C6 00 01 */ addi r6, r6, 1 /* 802A1690 0029D2F0 2C 06 00 10 */ cmpwi r6, 0x10 /* 802A1694 0029D2F4 7C 9F 22 14 */ add r4, r31, r4 /* 802A1698 0029D2F8 A1 04 01 10 */ lhz r8, 0x110(r4) /* 802A169C 0029D2FC A0 E4 01 12 */ lhz r7, 0x112(r4) /* 802A16A0 0029D300 B1 05 FF 7C */ sth r8, -0x84(r5) /* 802A16A4 0029D304 B0 E5 FF 7E */ sth r7, -0x82(r5) /* 802A16A8 0029D308 A1 04 01 14 */ lhz r8, 0x114(r4) /* 802A16AC 0029D30C A0 E4 01 16 */ lhz r7, 0x116(r4) /* 802A16B0 0029D310 B1 05 FF 80 */ sth r8, -0x80(r5) /* 802A16B4 0029D314 B0 E5 FF 82 */ sth r7, -0x7e(r5) /* 802A16B8 0029D318 A1 04 01 18 */ lhz r8, 0x118(r4) /* 802A16BC 0029D31C A0 E4 01 1A */ lhz r7, 0x11a(r4) /* 802A16C0 0029D320 B1 05 FF 84 */ sth r8, -0x7c(r5) /* 802A16C4 0029D324 B0 E5 FF 86 */ sth r7, -0x7a(r5) /* 802A16C8 0029D328 A1 04 01 1C */ lhz r8, 0x11c(r4) /* 802A16CC 0029D32C A0 E4 01 1E */ lhz r7, 0x11e(r4) /* 802A16D0 0029D330 B1 05 FF 88 */ sth r8, -0x78(r5) /* 802A16D4 0029D334 B0 E5 FF 8A */ sth r7, -0x76(r5) /* 802A16D8 0029D338 A1 04 01 20 */ lhz r8, 0x120(r4) /* 802A16DC 0029D33C A0 E4 01 22 */ lhz r7, 0x122(r4) /* 802A16E0 0029D340 B1 05 FF 8C */ sth r8, -0x74(r5) /* 802A16E4 0029D344 B0 E5 FF 8E */ sth r7, -0x72(r5) /* 802A16E8 0029D348 A1 04 01 24 */ lhz r8, 0x124(r4) /* 802A16EC 0029D34C A0 E4 01 26 */ lhz r7, 0x126(r4) /* 802A16F0 0029D350 B1 05 FF 90 */ sth r8, -0x70(r5) /* 802A16F4 0029D354 B0 E5 FF 92 */ sth r7, -0x6e(r5) /* 802A16F8 0029D358 A1 04 01 28 */ lhz r8, 0x128(r4) /* 802A16FC 0029D35C A0 E4 01 2A */ lhz r7, 0x12a(r4) /* 802A1700 0029D360 B1 05 FF 94 */ sth r8, -0x6c(r5) /* 802A1704 0029D364 B0 E5 FF 96 */ sth r7, -0x6a(r5) /* 802A1708 0029D368 A1 04 01 2C */ lhz r8, 0x12c(r4) /* 802A170C 0029D36C A0 E4 01 2E */ lhz r7, 0x12e(r4) /* 802A1710 0029D370 B1 05 FF 98 */ sth r8, -0x68(r5) /* 802A1714 0029D374 B0 E5 FF 9A */ sth r7, -0x66(r5) /* 802A1718 0029D378 A1 04 01 30 */ lhz r8, 0x130(r4) /* 802A171C 0029D37C A0 E4 01 32 */ lhz r7, 0x132(r4) /* 802A1720 0029D380 B1 05 FF 9C */ sth r8, -0x64(r5) /* 802A1724 0029D384 B0 E5 FF 9E */ sth r7, -0x62(r5) /* 802A1728 0029D388 A1 04 01 34 */ lhz r8, 0x134(r4) /* 802A172C 0029D38C A0 E4 01 36 */ lhz r7, 0x136(r4) /* 802A1730 0029D390 B1 05 FF A0 */ sth r8, -0x60(r5) /* 802A1734 0029D394 B0 E5 FF A2 */ sth r7, -0x5e(r5) /* 802A1738 0029D398 A1 04 01 38 */ lhz r8, 0x138(r4) /* 802A173C 0029D39C A0 E4 01 3A */ lhz r7, 0x13a(r4) /* 802A1740 0029D3A0 B1 05 FF A4 */ sth r8, -0x5c(r5) /* 802A1744 0029D3A4 B0 E5 FF A6 */ sth r7, -0x5a(r5) /* 802A1748 0029D3A8 A1 04 01 3C */ lhz r8, 0x13c(r4) /* 802A174C 0029D3AC A0 E4 01 3E */ lhz r7, 0x13e(r4) /* 802A1750 0029D3B0 B1 05 FF A8 */ sth r8, -0x58(r5) /* 802A1754 0029D3B4 B0 E5 FF AA */ sth r7, -0x56(r5) /* 802A1758 0029D3B8 A1 04 01 40 */ lhz r8, 0x140(r4) /* 802A175C 0029D3BC A0 E4 01 42 */ lhz r7, 0x142(r4) /* 802A1760 0029D3C0 B1 05 FF AC */ sth r8, -0x54(r5) /* 802A1764 0029D3C4 B0 E5 FF AE */ sth r7, -0x52(r5) /* 802A1768 0029D3C8 A0 E4 01 44 */ lhz r7, 0x144(r4) /* 802A176C 0029D3CC A0 84 01 46 */ lhz r4, 0x146(r4) /* 802A1770 0029D3D0 B0 E5 FF B0 */ sth r7, -0x50(r5) /* 802A1774 0029D3D4 B0 85 FF B2 */ sth r4, -0x4e(r5) /* 802A1778 0029D3D8 38 A5 FF 7C */ addi r5, r5, -132 /* 802A177C 0029D3DC 41 80 00 08 */ blt lbl_802A1784 /* 802A1780 0029D3E0 38 C0 00 00 */ li r6, 0 lbl_802A1784: /* 802A1784 0029D3E4 34 00 FF FF */ addic. r0, r0, -1 /* 802A1788 0029D3E8 40 82 FF 00 */ bne lbl_802A1688 /* 802A178C 0029D3EC 1C 06 00 38 */ mulli r0, r6, 0x38 /* 802A1790 0029D3F0 7E 1F 02 14 */ add r16, r31, r0 /* 802A1794 0029D3F4 A1 F0 01 3A */ lhz r15, 0x13a(r16) /* 802A1798 0029D3F8 A0 10 01 36 */ lhz r0, 0x136(r16) /* 802A179C 0029D3FC 91 E1 00 74 */ stw r15, 0x74(r1) /* 802A17A0 0029D400 A1 F0 01 3C */ lhz r15, 0x13c(r16) /* 802A17A4 0029D404 B0 01 00 3E */ sth r0, 0x3e(r1) /* 802A17A8 0029D408 80 01 00 74 */ lwz r0, 0x74(r1) /* 802A17AC 0029D40C 91 E1 00 60 */ stw r15, 0x60(r1) /* 802A17B0 0029D410 A1 F0 01 3E */ lhz r15, 0x13e(r16) /* 802A17B4 0029D414 B0 01 00 42 */ sth r0, 0x42(r1) /* 802A17B8 0029D418 80 01 00 60 */ lwz r0, 0x60(r1) /* 802A17BC 0029D41C 91 E1 00 64 */ stw r15, 0x64(r1) /* 802A17C0 0029D420 A1 F0 01 40 */ lhz r15, 0x140(r16) /* 802A17C4 0029D424 B0 01 00 44 */ sth r0, 0x44(r1) /* 802A17C8 0029D428 80 01 00 64 */ lwz r0, 0x64(r1) /* 802A17CC 0029D42C 91 E1 00 68 */ stw r15, 0x68(r1) /* 802A17D0 0029D430 A1 F0 01 42 */ lhz r15, 0x142(r16) /* 802A17D4 0029D434 B0 01 00 46 */ sth r0, 0x46(r1) /* 802A17D8 0029D438 80 01 00 68 */ lwz r0, 0x68(r1) /* 802A17DC 0029D43C 91 E1 00 6C */ stw r15, 0x6c(r1) /* 802A17E0 0029D440 A1 F0 01 44 */ lhz r15, 0x144(r16) /* 802A17E4 0029D444 B0 01 00 48 */ sth r0, 0x48(r1) /* 802A17E8 0029D448 80 01 00 6C */ lwz r0, 0x6c(r1) /* 802A17EC 0029D44C 91 E1 00 70 */ stw r15, 0x70(r1) /* 802A17F0 0029D450 A2 30 01 10 */ lhz r17, 0x110(r16) /* 802A17F4 0029D454 A2 50 01 12 */ lhz r18, 0x112(r16) /* 802A17F8 0029D458 A2 70 01 14 */ lhz r19, 0x114(r16) /* 802A17FC 0029D45C A2 90 01 16 */ lhz r20, 0x116(r16) /* 802A1800 0029D460 A2 B0 01 18 */ lhz r21, 0x118(r16) /* 802A1804 0029D464 A2 D0 01 1A */ lhz r22, 0x11a(r16) /* 802A1808 0029D468 A2 F0 01 1C */ lhz r23, 0x11c(r16) /* 802A180C 0029D46C A3 10 01 1E */ lhz r24, 0x11e(r16) /* 802A1810 0029D470 A3 30 01 20 */ lhz r25, 0x120(r16) /* 802A1814 0029D474 A3 50 01 22 */ lhz r26, 0x122(r16) /* 802A1818 0029D478 A1 90 01 24 */ lhz r12, 0x124(r16) /* 802A181C 0029D47C A1 70 01 26 */ lhz r11, 0x126(r16) /* 802A1820 0029D480 A1 50 01 28 */ lhz r10, 0x128(r16) /* 802A1824 0029D484 A1 30 01 2A */ lhz r9, 0x12a(r16) /* 802A1828 0029D488 A1 10 01 2C */ lhz r8, 0x12c(r16) /* 802A182C 0029D48C A0 F0 01 2E */ lhz r7, 0x12e(r16) /* 802A1830 0029D490 A0 D0 01 30 */ lhz r6, 0x130(r16) /* 802A1834 0029D494 A0 B0 01 32 */ lhz r5, 0x132(r16) /* 802A1838 0029D498 A0 90 01 34 */ lhz r4, 0x134(r16) /* 802A183C 0029D49C A1 D0 01 38 */ lhz r14, 0x138(r16) /* 802A1840 0029D4A0 A1 F0 01 46 */ lhz r15, 0x146(r16) /* 802A1844 0029D4A4 B0 01 00 4A */ sth r0, 0x4a(r1) /* 802A1848 0029D4A8 80 01 00 70 */ lwz r0, 0x70(r1) /* 802A184C 0029D4AC B2 21 00 18 */ sth r17, 0x18(r1) /* 802A1850 0029D4B0 B2 41 00 1A */ sth r18, 0x1a(r1) /* 802A1854 0029D4B4 B2 61 00 1C */ sth r19, 0x1c(r1) /* 802A1858 0029D4B8 B2 81 00 1E */ sth r20, 0x1e(r1) /* 802A185C 0029D4BC B2 A1 00 20 */ sth r21, 0x20(r1) /* 802A1860 0029D4C0 B2 C1 00 22 */ sth r22, 0x22(r1) /* 802A1864 0029D4C4 B2 E1 00 24 */ sth r23, 0x24(r1) /* 802A1868 0029D4C8 B3 01 00 26 */ sth r24, 0x26(r1) /* 802A186C 0029D4CC B3 21 00 28 */ sth r25, 0x28(r1) /* 802A1870 0029D4D0 B3 41 00 2A */ sth r26, 0x2a(r1) /* 802A1874 0029D4D4 B1 81 00 2C */ sth r12, 0x2c(r1) /* 802A1878 0029D4D8 B1 61 00 2E */ sth r11, 0x2e(r1) /* 802A187C 0029D4DC B1 41 00 30 */ sth r10, 0x30(r1) /* 802A1880 0029D4E0 B1 21 00 32 */ sth r9, 0x32(r1) /* 802A1884 0029D4E4 B1 01 00 34 */ sth r8, 0x34(r1) /* 802A1888 0029D4E8 B0 E1 00 36 */ sth r7, 0x36(r1) /* 802A188C 0029D4EC B0 C1 00 38 */ sth r6, 0x38(r1) /* 802A1890 0029D4F0 B0 A1 00 3A */ sth r5, 0x3a(r1) /* 802A1894 0029D4F4 B0 81 00 3C */ sth r4, 0x3c(r1) /* 802A1898 0029D4F8 B1 C1 00 40 */ sth r14, 0x40(r1) /* 802A189C 0029D4FC B0 01 00 4C */ sth r0, 0x4c(r1) /* 802A18A0 0029D500 B1 E1 00 4E */ sth r15, 0x4e(r1) /* 802A18A4 0029D504 4B FC CE E1 */ bl OSRestoreInterrupts /* 802A18A8 0029D508 A1 42 A3 DC */ lhz r10, lbl_806429DC-_SDA2_BASE_(r2) /* 802A18AC 0029D50C 7F 63 DB 78 */ mr r3, r27 /* 802A18B0 0029D510 A1 22 A3 DE */ lhz r9, lbl_806429DE-_SDA2_BASE_(r2) /* 802A18B4 0029D514 38 A1 00 10 */ addi r5, r1, 0x10 /* 802A18B8 0029D518 A1 02 A3 E0 */ lhz r8, lbl_806429E0-_SDA2_BASE_(r2) /* 802A18BC 0029D51C 38 80 00 00 */ li r4, 0 /* 802A18C0 0029D520 A0 E2 A3 E4 */ lhz r7, lbl_806429E4-_SDA2_BASE_(r2) /* 802A18C4 0029D524 A0 C2 A3 E6 */ lhz r6, lbl_806429E6-_SDA2_BASE_(r2) /* 802A18C8 0029D528 A0 02 A3 E8 */ lhz r0, lbl_806429E8-_SDA2_BASE_(r2) /* 802A18CC 0029D52C B1 41 00 10 */ sth r10, 0x10(r1) /* 802A18D0 0029D530 B1 21 00 12 */ sth r9, 0x12(r1) /* 802A18D4 0029D534 B1 01 00 14 */ sth r8, 0x14(r1) /* 802A18D8 0029D538 B0 E1 00 08 */ sth r7, 8(r1) /* 802A18DC 0029D53C B0 C1 00 0A */ sth r6, 0xa(r1) /* 802A18E0 0029D540 B0 01 00 0C */ sth r0, 0xc(r1) /* 802A18E4 0029D544 48 00 72 D5 */ bl WPADGetAccGravityUnit /* 802A18E8 0029D548 A8 A1 00 10 */ lha r5, 0x10(r1) /* 802A18EC 0029D54C A8 81 00 14 */ lha r4, 0x14(r1) /* 802A18F0 0029D550 A8 61 00 12 */ lha r3, 0x12(r1) /* 802A18F4 0029D554 7C 04 29 D6 */ mullw r0, r4, r5 /* 802A18F8 0029D558 7C 00 19 D7 */ mullw. r0, r0, r3 /* 802A18FC 0029D55C 41 82 00 58 */ beq lbl_802A1954 /* 802A1900 0029D560 6C A0 80 00 */ xoris r0, r5, 0x8000 /* 802A1904 0029D564 6C 63 80 00 */ xoris r3, r3, 0x8000 /* 802A1908 0029D568 90 01 00 54 */ stw r0, 0x54(r1) /* 802A190C 0029D56C 6C 80 80 00 */ xoris r0, r4, 0x8000 /* 802A1910 0029D570 C8 82 A3 C8 */ lfd f4, lbl_806429C8-_SDA2_BASE_(r2) /* 802A1914 0029D574 C8 01 00 50 */ lfd f0, 0x50(r1) /* 802A1918 0029D578 90 61 00 5C */ stw r3, 0x5c(r1) /* 802A191C 0029D57C EC 40 20 28 */ fsubs f2, f0, f4 /* 802A1920 0029D580 C0 62 A3 B0 */ lfs f3, lbl_806429B0-_SDA2_BASE_(r2) /* 802A1924 0029D584 90 01 00 54 */ stw r0, 0x54(r1) /* 802A1928 0029D588 C8 21 00 58 */ lfd f1, 0x58(r1) /* 802A192C 0029D58C C8 01 00 50 */ lfd f0, 0x50(r1) /* 802A1930 0029D590 EC 43 10 24 */ fdivs f2, f3, f2 /* 802A1934 0029D594 EC 21 20 28 */ fsubs f1, f1, f4 /* 802A1938 0029D598 D0 5F 04 DC */ stfs f2, 0x4dc(r31) /* 802A193C 0029D59C EC 00 20 28 */ fsubs f0, f0, f4 /* 802A1940 0029D5A0 EC 23 08 24 */ fdivs f1, f3, f1 /* 802A1944 0029D5A4 EC 03 00 24 */ fdivs f0, f3, f0 /* 802A1948 0029D5A8 D0 3F 04 E0 */ stfs f1, 0x4e0(r31) /* 802A194C 0029D5AC D0 1F 04 E4 */ stfs f0, 0x4e4(r31) /* 802A1950 0029D5B0 48 00 00 14 */ b lbl_802A1964 lbl_802A1954: /* 802A1954 0029D5B4 C0 02 A3 EC */ lfs f0, lbl_806429EC-_SDA2_BASE_(r2) /* 802A1958 0029D5B8 D0 1F 04 DC */ stfs f0, 0x4dc(r31) /* 802A195C 0029D5BC D0 1F 04 E0 */ stfs f0, 0x4e0(r31) /* 802A1960 0029D5C0 D0 1F 04 E4 */ stfs f0, 0x4e4(r31) lbl_802A1964: /* 802A1964 0029D5C4 7F 63 DB 78 */ mr r3, r27 /* 802A1968 0029D5C8 38 A1 00 08 */ addi r5, r1, 8 /* 802A196C 0029D5CC 38 80 00 01 */ li r4, 1 /* 802A1970 0029D5D0 48 00 72 49 */ bl WPADGetAccGravityUnit /* 802A1974 0029D5D4 A8 A1 00 08 */ lha r5, 8(r1) /* 802A1978 0029D5D8 A8 81 00 0C */ lha r4, 0xc(r1) /* 802A197C 0029D5DC A8 61 00 0A */ lha r3, 0xa(r1) /* 802A1980 0029D5E0 7C 04 29 D6 */ mullw r0, r4, r5 /* 802A1984 0029D5E4 7C 00 19 D7 */ mullw. r0, r0, r3 /* 802A1988 0029D5E8 41 82 00 58 */ beq lbl_802A19E0 /* 802A198C 0029D5EC 6C A0 80 00 */ xoris r0, r5, 0x8000 /* 802A1990 0029D5F0 6C 63 80 00 */ xoris r3, r3, 0x8000 /* 802A1994 0029D5F4 90 01 00 5C */ stw r0, 0x5c(r1) /* 802A1998 0029D5F8 6C 80 80 00 */ xoris r0, r4, 0x8000 /* 802A199C 0029D5FC C8 82 A3 C8 */ lfd f4, lbl_806429C8-_SDA2_BASE_(r2) /* 802A19A0 0029D600 C8 01 00 58 */ lfd f0, 0x58(r1) /* 802A19A4 0029D604 90 61 00 54 */ stw r3, 0x54(r1) /* 802A19A8 0029D608 EC 40 20 28 */ fsubs f2, f0, f4 /* 802A19AC 0029D60C C0 62 A3 B0 */ lfs f3, lbl_806429B0-_SDA2_BASE_(r2) /* 802A19B0 0029D610 90 01 00 5C */ stw r0, 0x5c(r1) /* 802A19B4 0029D614 C8 21 00 50 */ lfd f1, 0x50(r1) /* 802A19B8 0029D618 C8 01 00 58 */ lfd f0, 0x58(r1) /* 802A19BC 0029D61C EC 43 10 24 */ fdivs f2, f3, f2 /* 802A19C0 0029D620 EC 21 20 28 */ fsubs f1, f1, f4 /* 802A19C4 0029D624 D0 5F 04 E8 */ stfs f2, 0x4e8(r31) /* 802A19C8 0029D628 EC 00 20 28 */ fsubs f0, f0, f4 /* 802A19CC 0029D62C EC 23 08 24 */ fdivs f1, f3, f1 /* 802A19D0 0029D630 EC 03 00 24 */ fdivs f0, f3, f0 /* 802A19D4 0029D634 D0 3F 04 EC */ stfs f1, 0x4ec(r31) /* 802A19D8 0029D638 D0 1F 04 F0 */ stfs f0, 0x4f0(r31) /* 802A19DC 0029D63C 48 00 00 14 */ b lbl_802A19F0 lbl_802A19E0: /* 802A19E0 0029D640 C0 02 A3 F0 */ lfs f0, lbl_806429F0-_SDA2_BASE_(r2) /* 802A19E4 0029D644 D0 1F 04 E8 */ stfs f0, 0x4e8(r31) /* 802A19E8 0029D648 D0 1F 04 EC */ stfs f0, 0x4ec(r31) /* 802A19EC 0029D64C D0 1F 04 F0 */ stfs f0, 0x4f0(r31) lbl_802A19F0: /* 802A19F0 0029D650 1C 1E 00 84 */ mulli r0, r30, 0x84 /* 802A19F4 0029D654 3C 60 00 01 */ lis r3, 0x0000FFFF@ha /* 802A19F8 0029D658 7F C6 F3 78 */ mr r6, r30 /* 802A19FC 0029D65C 39 23 FF FF */ addi r9, r3, 0x0000FFFF@l /* 802A1A00 0029D660 7D DC 02 14 */ add r14, r28, r0 /* 802A1A04 0029D664 38 80 00 FD */ li r4, 0xfd /* 802A1A08 0029D668 7D 28 4B 78 */ mr r8, r9 /* 802A1A0C 0029D66C 7D 27 4B 78 */ mr r7, r9 /* 802A1A10 0029D670 38 AE FF 7C */ addi r5, r14, -132 lbl_802A1A14: /* 802A1A14 0029D674 28 06 00 01 */ cmplwi r6, 1 /* 802A1A18 0029D678 38 A5 FF 7C */ addi r5, r5, -132 /* 802A1A1C 0029D67C 40 81 00 0C */ ble lbl_802A1A28 /* 802A1A20 0029D680 7C A3 2B 78 */ mr r3, r5 /* 802A1A24 0029D684 48 00 00 08 */ b lbl_802A1A2C lbl_802A1A28: /* 802A1A28 0029D688 38 61 00 18 */ addi r3, r1, 0x18 lbl_802A1A2C: /* 802A1A2C 0029D68C 88 03 00 29 */ lbz r0, 0x29(r3) /* 802A1A30 0029D690 7C 00 07 74 */ extsb r0, r0 /* 802A1A34 0029D694 2C 00 FF FE */ cmpwi r0, -2 /* 802A1A38 0029D698 41 82 00 54 */ beq lbl_802A1A8C /* 802A1A3C 0029D69C 40 80 00 10 */ bge lbl_802A1A4C /* 802A1A40 0029D6A0 2C 00 FF F9 */ cmpwi r0, -7 /* 802A1A44 0029D6A4 41 82 00 48 */ beq lbl_802A1A8C /* 802A1A48 0029D6A8 48 00 00 48 */ b lbl_802A1A90 lbl_802A1A4C: /* 802A1A4C 0029D6AC 2C 00 00 00 */ cmpwi r0, 0 /* 802A1A50 0029D6B0 41 82 00 08 */ beq lbl_802A1A58 /* 802A1A54 0029D6B4 48 00 00 3C */ b lbl_802A1A90 lbl_802A1A58: /* 802A1A58 0029D6B8 88 83 00 28 */ lbz r4, 0x28(r3) /* 802A1A5C 0029D6BC 28 04 00 01 */ cmplwi r4, 1 /* 802A1A60 0029D6C0 40 82 00 10 */ bne lbl_802A1A70 /* 802A1A64 0029D6C4 A1 03 00 00 */ lhz r8, 0(r3) /* 802A1A68 0029D6C8 39 20 00 00 */ li r9, 0 /* 802A1A6C 0029D6CC 48 00 00 20 */ b lbl_802A1A8C lbl_802A1A70: /* 802A1A70 0029D6D0 28 04 00 02 */ cmplwi r4, 2 /* 802A1A74 0029D6D4 40 82 00 10 */ bne lbl_802A1A84 /* 802A1A78 0029D6D8 A1 23 00 2A */ lhz r9, 0x2a(r3) /* 802A1A7C 0029D6DC 39 00 00 00 */ li r8, 0 /* 802A1A80 0029D6E0 48 00 00 0C */ b lbl_802A1A8C lbl_802A1A84: /* 802A1A84 0029D6E4 39 20 00 00 */ li r9, 0 /* 802A1A88 0029D6E8 39 00 00 00 */ li r8, 0 lbl_802A1A8C: /* 802A1A8C 0029D6EC A0 E3 00 00 */ lhz r7, 0(r3) lbl_802A1A90: /* 802A1A90 0029D6F0 34 C6 FF FF */ addic. r6, r6, -1 /* 802A1A94 0029D6F4 40 82 FF 80 */ bne lbl_802A1A14 /* 802A1A98 0029D6F8 28 07 FF FF */ cmplwi r7, 0xffff /* 802A1A9C 0029D6FC 40 82 00 24 */ bne lbl_802A1AC0 lbl_802A1AA0: /* 802A1AA0 0029D700 7F 83 E3 78 */ mr r3, r28 /* 802A1AA4 0029D704 7F E4 FB 78 */ mr r4, r31 /* 802A1AA8 0029D708 38 A0 00 84 */ li r5, 0x84 /* 802A1AAC 0029D70C 4B D6 25 55 */ bl memcpy /* 802A1AB0 0029D710 37 DE FF FF */ addic. r30, r30, -1 /* 802A1AB4 0029D714 3B 9C 00 84 */ addi r28, r28, 0x84 /* 802A1AB8 0029D718 40 82 FF E8 */ bne lbl_802A1AA0 /* 802A1ABC 0029D71C 48 00 01 5C */ b lbl_802A1C18 lbl_802A1AC0: /* 802A1AC0 0029D720 28 08 FF FF */ cmplwi r8, 0xffff /* 802A1AC4 0029D724 40 82 00 08 */ bne lbl_802A1ACC /* 802A1AC8 0029D728 81 1F 00 00 */ lwz r8, 0(r31) lbl_802A1ACC: /* 802A1ACC 0029D72C 28 09 FF FF */ cmplwi r9, 0xffff /* 802A1AD0 0029D730 40 82 00 08 */ bne lbl_802A1AD8 /* 802A1AD4 0029D734 81 3F 00 60 */ lwz r9, 0x60(r31) lbl_802A1AD8: /* 802A1AD8 0029D738 70 E0 9F FF */ andi. r0, r7, 0x9fff /* 802A1ADC 0029D73C 80 7F 00 00 */ lwz r3, 0(r31) /* 802A1AE0 0029D740 51 00 04 64 */ rlwimi r0, r8, 0, 0x11, 0x12 /* 802A1AE4 0029D744 28 04 00 02 */ cmplwi r4, 2 /* 802A1AE8 0029D748 54 65 04 3E */ clrlwi r5, r3, 0x10 /* 802A1AEC 0029D74C 7C 03 2A 78 */ xor r3, r0, r5 /* 802A1AF0 0029D750 90 1F 00 00 */ stw r0, 0(r31) /* 802A1AF4 0029D754 7C 60 00 38 */ and r0, r3, r0 /* 802A1AF8 0029D758 90 1F 00 04 */ stw r0, 4(r31) /* 802A1AFC 0029D75C 7C 60 28 38 */ and r0, r3, r5 /* 802A1B00 0029D760 90 1F 00 08 */ stw r0, 8(r31) /* 802A1B04 0029D764 40 82 00 28 */ bne lbl_802A1B2C /* 802A1B08 0029D768 80 7F 00 60 */ lwz r3, 0x60(r31) /* 802A1B0C 0029D76C 55 20 04 3E */ clrlwi r0, r9, 0x10 /* 802A1B10 0029D770 54 65 04 3E */ clrlwi r5, r3, 0x10 /* 802A1B14 0029D774 90 1F 00 60 */ stw r0, 0x60(r31) /* 802A1B18 0029D778 7C 03 2A 78 */ xor r3, r0, r5 /* 802A1B1C 0029D77C 7C 60 00 38 */ and r0, r3, r0 /* 802A1B20 0029D780 90 1F 00 64 */ stw r0, 0x64(r31) /* 802A1B24 0029D784 7C 60 28 38 */ and r0, r3, r5 /* 802A1B28 0029D788 90 1F 00 68 */ stw r0, 0x68(r31) lbl_802A1B2C: /* 802A1B2C 0029D78C 7F E3 FB 78 */ mr r3, r31 /* 802A1B30 0029D790 7F A5 EB 78 */ mr r5, r29 /* 802A1B34 0029D794 4B FF DA 61 */ bl calc_button_repeat /* 802A1B38 0029D798 7F CF F3 78 */ mr r15, r30 /* 802A1B3C 0029D79C 39 CE FF 7C */ addi r14, r14, -132 /* 802A1B40 0029D7A0 3A 40 00 01 */ li r18, 1 /* 802A1B44 0029D7A4 3A 20 00 00 */ li r17, 0 /* 802A1B48 0029D7A8 3A 00 00 10 */ li r16, 0x10 lbl_802A1B4C: /* 802A1B4C 0029D7AC 28 0F 00 01 */ cmplwi r15, 1 /* 802A1B50 0029D7B0 39 CE FF 7C */ addi r14, r14, -132 /* 802A1B54 0029D7B4 40 81 00 0C */ ble lbl_802A1B60 /* 802A1B58 0029D7B8 7D D3 73 78 */ mr r19, r14 /* 802A1B5C 0029D7BC 48 00 00 08 */ b lbl_802A1B64 lbl_802A1B60: /* 802A1B60 0029D7C0 3A 61 00 18 */ addi r19, r1, 0x18 lbl_802A1B64: /* 802A1B64 0029D7C4 88 13 00 29 */ lbz r0, 0x29(r19) /* 802A1B68 0029D7C8 98 1F 00 5D */ stb r0, 0x5d(r31) /* 802A1B6C 0029D7CC 88 93 00 28 */ lbz r4, 0x28(r19) /* 802A1B70 0029D7D0 88 1F 00 5C */ lbz r0, 0x5c(r31) /* 802A1B74 0029D7D4 7C 00 20 40 */ cmplw r0, r4 /* 802A1B78 0029D7D8 41 82 00 20 */ beq lbl_802A1B98 /* 802A1B7C 0029D7DC 88 73 00 29 */ lbz r3, 0x29(r19) /* 802A1B80 0029D7E0 38 03 00 02 */ addi r0, r3, 2 /* 802A1B84 0029D7E4 54 00 06 3E */ clrlwi r0, r0, 0x18 /* 802A1B88 0029D7E8 28 00 00 02 */ cmplwi r0, 2 /* 802A1B8C 0029D7EC 41 81 00 0C */ bgt lbl_802A1B98 /* 802A1B90 0029D7F0 98 9F 00 5C */ stb r4, 0x5c(r31) /* 802A1B94 0029D7F4 9A 5F 05 1E */ stb r18, 0x51e(r31) lbl_802A1B98: /* 802A1B98 0029D7F8 88 13 00 36 */ lbz r0, 0x36(r19) /* 802A1B9C 0029D7FC 98 1F 00 5F */ stb r0, 0x5f(r31) /* 802A1BA0 0029D800 88 13 00 29 */ lbz r0, 0x29(r19) /* 802A1BA4 0029D804 7C 00 07 75 */ extsb. r0, r0 /* 802A1BA8 0029D808 41 82 00 14 */ beq lbl_802A1BBC /* 802A1BAC 0029D80C 40 80 00 38 */ bge lbl_802A1BE4 /* 802A1BB0 0029D810 2C 00 FF F9 */ cmpwi r0, -7 /* 802A1BB4 0029D814 41 82 00 14 */ beq lbl_802A1BC8 /* 802A1BB8 0029D818 48 00 00 2C */ b lbl_802A1BE4 lbl_802A1BBC: /* 802A1BBC 0029D81C 7F E3 FB 78 */ mr r3, r31 /* 802A1BC0 0029D820 7E 64 9B 78 */ mr r4, r19 /* 802A1BC4 0029D824 4B FF F6 E9 */ bl read_kpad_stick lbl_802A1BC8: /* 802A1BC8 0029D828 7F E3 FB 78 */ mr r3, r31 /* 802A1BCC 0029D82C 7E 64 9B 78 */ mr r4, r19 /* 802A1BD0 0029D830 4B FF DE 11 */ bl read_kpad_acc /* 802A1BD4 0029D834 7F E3 FB 78 */ mr r3, r31 /* 802A1BD8 0029D838 7E 64 9B 78 */ mr r4, r19 /* 802A1BDC 0029D83C 4B FF EF 2D */ bl read_kpad_dpd /* 802A1BE0 0029D840 48 00 00 08 */ b lbl_802A1BE8 lbl_802A1BE4: /* 802A1BE4 0029D844 9A 3F 00 5E */ stb r17, 0x5e(r31) lbl_802A1BE8: /* 802A1BE8 0029D848 38 AE 00 80 */ addi r5, r14, 0x80 /* 802A1BEC 0029D84C 38 9F FF FC */ addi r4, r31, -4 /* 802A1BF0 0029D850 7E 09 03 A6 */ mtctr r16 lbl_802A1BF4: /* 802A1BF4 0029D854 80 64 00 04 */ lwz r3, 4(r4) /* 802A1BF8 0029D858 84 04 00 08 */ lwzu r0, 8(r4) /* 802A1BFC 0029D85C 90 65 00 04 */ stw r3, 4(r5) /* 802A1C00 0029D860 94 05 00 08 */ stwu r0, 8(r5) /* 802A1C04 0029D864 42 00 FF F0 */ bdnz lbl_802A1BF4 /* 802A1C08 0029D868 80 04 00 04 */ lwz r0, 4(r4) /* 802A1C0C 0029D86C 35 EF FF FF */ addic. r15, r15, -1 /* 802A1C10 0029D870 90 05 00 04 */ stw r0, 4(r5) /* 802A1C14 0029D874 40 82 FF 38 */ bne lbl_802A1B4C lbl_802A1C18: /* 802A1C18 0029D878 38 00 00 00 */ li r0, 0 /* 802A1C1C 0029D87C 7F C3 F3 78 */ mr r3, r30 /* 802A1C20 0029D880 98 1F 05 1C */ stb r0, 0x51c(r31) lbl_802A1C24: /* 802A1C24 0029D884 39 61 00 C0 */ addi r11, r1, 0xc0 /* 802A1C28 0029D888 4B F2 55 19 */ bl __restore_gpr /* 802A1C2C 0029D88C 80 01 00 C4 */ lwz r0, 0xc4(r1) /* 802A1C30 0029D890 7C 08 03 A6 */ mtlr r0 /* 802A1C34 0029D894 38 21 00 C0 */ addi r1, r1, 0xc0 /* 802A1C38 0029D898 4E 80 00 20 */ blr .global KPADInit KPADInit: /* 802A1C3C 0029D89C 94 21 FF 70 */ stwu r1, -0x90(r1) /* 802A1C40 0029D8A0 7C 08 02 A6 */ mflr r0 /* 802A1C44 0029D8A4 90 01 00 94 */ stw r0, 0x94(r1) /* 802A1C48 0029D8A8 DB E1 00 80 */ stfd f31, 0x80(r1) /* 802A1C4C 0029D8AC F3 E1 00 88 */ psq_st f31, 136(r1), 0, qr0 /* 802A1C50 0029D8B0 DB C1 00 70 */ stfd f30, 0x70(r1) /* 802A1C54 0029D8B4 F3 C1 00 78 */ psq_st f30, 120(r1), 0, qr0 /* 802A1C58 0029D8B8 DB A1 00 60 */ stfd f29, 0x60(r1) /* 802A1C5C 0029D8BC F3 A1 00 68 */ psq_st f29, 104(r1), 0, qr0 /* 802A1C60 0029D8C0 DB 81 00 50 */ stfd f28, 0x50(r1) /* 802A1C64 0029D8C4 F3 81 00 58 */ psq_st f28, 88(r1), 0, qr0 /* 802A1C68 0029D8C8 DB 61 00 40 */ stfd f27, 0x40(r1) /* 802A1C6C 0029D8CC F3 61 00 48 */ psq_st f27, 72(r1), 0, qr0 /* 802A1C70 0029D8D0 DB 41 00 30 */ stfd f26, 0x30(r1) /* 802A1C74 0029D8D4 F3 41 00 38 */ psq_st f26, 56(r1), 0, qr0 /* 802A1C78 0029D8D8 39 61 00 30 */ addi r11, r1, 0x30 /* 802A1C7C 0029D8DC 4B F2 54 A5 */ bl _savegpr_25 /* 802A1C80 0029D8E0 48 00 5E 0D */ bl WPADInit lbl_802A1C84: /* 802A1C84 0029D8E4 48 00 5E 75 */ bl WPADGetStatus /* 802A1C88 0029D8E8 2C 03 00 03 */ cmpwi r3, 3 /* 802A1C8C 0029D8EC 40 82 FF F8 */ bne lbl_802A1C84 /* 802A1C90 0029D8F0 3F 60 80 53 */ lis r27, lbl_805356D0@ha /* 802A1C94 0029D8F4 38 80 00 00 */ li r4, 0 /* 802A1C98 0029D8F8 38 7B 56 D0 */ addi r3, r27, lbl_805356D0@l /* 802A1C9C 0029D8FC 38 A0 14 90 */ li r5, 0x1490 /* 802A1CA0 0029D900 4B D6 24 65 */ bl memset /* 802A1CA4 0029D904 48 00 99 DD */ bl WPADGetDpdSensitivity /* 802A1CA8 0029D908 54 63 06 3E */ clrlwi r3, r3, 0x18 /* 802A1CAC 0029D90C 3C 00 43 30 */ lis r0, 0x4330 /* 802A1CB0 0029D910 90 61 00 0C */ stw r3, 0xc(r1) /* 802A1CB4 0029D914 3C 60 00 01 */ lis r3, 0x00009C40@ha /* 802A1CB8 0029D918 3B 5B 56 D0 */ addi r26, r27, 0x56d0 /* 802A1CBC 0029D91C C8 22 A3 F8 */ lfd f1, lbl_806429F8-_SDA2_BASE_(r2) /* 802A1CC0 0029D920 90 01 00 08 */ stw r0, 8(r1) /* 802A1CC4 0029D924 3B A3 9C 40 */ addi r29, r3, 0x00009C40@l /* 802A1CC8 0029D928 C3 E2 A3 B0 */ lfs f31, lbl_806429B0-_SDA2_BASE_(r2) /* 802A1CCC 0029D92C 3B 20 00 00 */ li r25, 0 /* 802A1CD0 0029D930 C8 01 00 08 */ lfd f0, 8(r1) /* 802A1CD4 0029D934 3B E0 FF FF */ li r31, -1 /* 802A1CD8 0029D938 C3 82 A3 A0 */ lfs f28, lbl_806429A0-_SDA2_BASE_(r2) /* 802A1CDC 0029D93C 3B C0 00 00 */ li r30, 0 /* 802A1CE0 0029D940 EC 00 08 28 */ fsubs f0, f0, f1 /* 802A1CE4 0029D944 C3 A2 A3 BC */ lfs f29, lbl_806429BC-_SDA2_BASE_(r2) /* 802A1CE8 0029D948 C3 C2 A3 C0 */ lfs f30, lbl_806429C0-_SDA2_BASE_(r2) /* 802A1CEC 0029D94C 3B 60 00 01 */ li r27, 1 /* 802A1CF0 0029D950 3B 80 00 FD */ li r28, 0xfd /* 802A1CF4 0029D954 EC 1F 00 2A */ fadds f0, f31, f0 /* 802A1CF8 0029D958 D0 0D 89 48 */ stfs f0, lbl_8063DC08-_SDA_BASE_(r13) lbl_802A1CFC: /* 802A1CFC 0029D95C 9B 7A 05 20 */ stb r27, 0x520(r26) /* 802A1D00 0029D960 C3 42 A3 B0 */ lfs f26, lbl_806429B0-_SDA2_BASE_(r2) /* 802A1D04 0029D964 9B DA 05 21 */ stb r30, 0x521(r26) /* 802A1D08 0029D968 C3 62 A3 B8 */ lfs f27, lbl_806429B8-_SDA2_BASE_(r2) /* 802A1D0C 0029D96C EC 3A 06 B2 */ fmuls f1, f26, f26 /* 802A1D10 0029D970 9B 9A 00 5C */ stb r28, 0x5c(r26) /* 802A1D14 0029D974 EC 1B 06 F2 */ fmuls f0, f27, f27 /* 802A1D18 0029D978 C0 4D 89 1C */ lfs f2, lbl_8063DBDC-_SDA_BASE_(r13) /* 802A1D1C 0029D97C 9B DA 00 5F */ stb r30, 0x5f(r26) /* 802A1D20 0029D980 80 6D 89 20 */ lwz r3, lbl_8063DBE0-_SDA_BASE_(r13) /* 802A1D24 0029D984 D0 5A 00 A4 */ stfs f2, 0xa4(r26) /* 802A1D28 0029D988 EC 21 00 2A */ fadds f1, f1, f0 /* 802A1D2C 0029D98C 80 0D 89 24 */ lwz r0, lbl_8063DBE4-_SDA_BASE_(r13) /* 802A1D30 0029D990 90 7A 00 A8 */ stw r3, 0xa8(r26) /* 802A1D34 0029D994 80 6D 89 28 */ lwz r3, lbl_8063DBE8-_SDA_BASE_(r13) /* 802A1D38 0029D998 90 1A 00 AC */ stw r0, 0xac(r26) /* 802A1D3C 0029D99C 80 0D 89 2C */ lwz r0, lbl_8063DBEC-_SDA_BASE_(r13) /* 802A1D40 0029D9A0 90 7A 00 B0 */ stw r3, 0xb0(r26) /* 802A1D44 0029D9A4 80 6D AD C8 */ lwz r3, lbl_80640088-_SDA_BASE_(r13) /* 802A1D48 0029D9A8 90 1A 00 B4 */ stw r0, 0xb4(r26) /* 802A1D4C 0029D9AC 80 0D AD CC */ lwz r0, lbl_8064008C-_SDA_BASE_(r13) /* 802A1D50 0029D9B0 90 7A 00 B8 */ stw r3, 0xb8(r26) /* 802A1D54 0029D9B4 90 1A 00 BC */ stw r0, 0xbc(r26) /* 802A1D58 0029D9B8 4B F3 2A DD */ bl sqrt /* 802A1D5C 0029D9BC C0 1A 00 B8 */ lfs f0, 0xb8(r26) /* 802A1D60 0029D9C0 FC 20 08 18 */ frsp f1, f1 /* 802A1D64 0029D9C4 FC 00 E0 40 */ fcmpo cr0, f0, f28 /* 802A1D68 0029D9C8 40 80 00 0C */ bge lbl_802A1D74 /* 802A1D6C 0029D9CC EF 5A 00 2A */ fadds f26, f26, f0 /* 802A1D70 0029D9D0 48 00 00 08 */ b lbl_802A1D78 lbl_802A1D74: /* 802A1D74 0029D9D4 EF 5A 00 28 */ fsubs f26, f26, f0 lbl_802A1D78: /* 802A1D78 0029D9D8 C0 1A 00 BC */ lfs f0, 0xbc(r26) /* 802A1D7C 0029D9DC FC 00 E0 40 */ fcmpo cr0, f0, f28 /* 802A1D80 0029D9E0 40 80 00 0C */ bge lbl_802A1D8C /* 802A1D84 0029D9E4 EF 7B 00 2A */ fadds f27, f27, f0 /* 802A1D88 0029D9E8 48 00 00 08 */ b lbl_802A1D90 lbl_802A1D8C: /* 802A1D8C 0029D9EC EF 7B 00 28 */ fsubs f27, f27, f0 lbl_802A1D90: /* 802A1D90 0029D9F0 FC 1A D8 40 */ fcmpo cr0, f26, f27 /* 802A1D94 0029D9F4 40 80 00 08 */ bge lbl_802A1D9C /* 802A1D98 0029D9F8 48 00 00 08 */ b lbl_802A1DA0 lbl_802A1D9C: /* 802A1D9C 0029D9FC FF 40 D8 90 */ fmr f26, f27 lbl_802A1DA0: /* 802A1DA0 0029DA00 EC 01 D0 24 */ fdivs f0, f1, f26 /* 802A1DA4 0029DA04 D0 1A 00 C0 */ stfs f0, 0xc0(r26) /* 802A1DA8 0029DA08 D3 9A 00 9C */ stfs f28, 0x9c(r26) /* 802A1DAC 0029DA0C D3 9A 00 94 */ stfs f28, 0x94(r26) /* 802A1DB0 0029DA10 D3 9A 00 8C */ stfs f28, 0x8c(r26) /* 802A1DB4 0029DA14 D3 9A 00 84 */ stfs f28, 0x84(r26) /* 802A1DB8 0029DA18 D3 FA 00 A0 */ stfs f31, 0xa0(r26) /* 802A1DBC 0029DA1C D3 FA 00 98 */ stfs f31, 0x98(r26) /* 802A1DC0 0029DA20 D3 FA 00 90 */ stfs f31, 0x90(r26) /* 802A1DC4 0029DA24 D3 FA 00 88 */ stfs f31, 0x88(r26) /* 802A1DC8 0029DA28 B3 BA 04 D0 */ sth r29, 0x4d0(r26) /* 802A1DCC 0029DA2C B3 DA 04 D2 */ sth r30, 0x4d2(r26) /* 802A1DD0 0029DA30 B3 DA 04 CC */ sth r30, 0x4cc(r26) /* 802A1DD4 0029DA34 B3 BA 04 CE */ sth r29, 0x4ce(r26) /* 802A1DD8 0029DA38 B3 DA 04 D4 */ sth r30, 0x4d4(r26) /* 802A1DDC 0029DA3C B3 BA 04 D6 */ sth r29, 0x4d6(r26) /* 802A1DE0 0029DA40 48 00 5D 61 */ bl WPADGetSensorBarPosition /* 802A1DE4 0029DA44 54 60 06 3E */ clrlwi r0, r3, 0x18 /* 802A1DE8 0029DA48 28 00 00 01 */ cmplwi r0, 1 /* 802A1DEC 0029DA4C 40 82 00 74 */ bne lbl_802A1E60 /* 802A1DF0 0029DA50 C3 42 A3 B0 */ lfs f26, lbl_806429B0-_SDA2_BASE_(r2) /* 802A1DF4 0029DA54 C3 62 A3 B8 */ lfs f27, lbl_806429B8-_SDA2_BASE_(r2) /* 802A1DF8 0029DA58 EC 3A 06 B2 */ fmuls f1, f26, f26 /* 802A1DFC 0029DA5C D3 9A 00 B8 */ stfs f28, 0xb8(r26) /* 802A1E00 0029DA60 EC 1B 06 F2 */ fmuls f0, f27, f27 /* 802A1E04 0029DA64 D3 BA 00 BC */ stfs f29, 0xbc(r26) /* 802A1E08 0029DA68 EC 21 00 2A */ fadds f1, f1, f0 /* 802A1E0C 0029DA6C 4B F3 2A 29 */ bl sqrt /* 802A1E10 0029DA70 C0 1A 00 B8 */ lfs f0, 0xb8(r26) /* 802A1E14 0029DA74 FC 20 08 18 */ frsp f1, f1 /* 802A1E18 0029DA78 FC 00 E0 40 */ fcmpo cr0, f0, f28 /* 802A1E1C 0029DA7C 40 80 00 0C */ bge lbl_802A1E28 /* 802A1E20 0029DA80 EF 5A 00 2A */ fadds f26, f26, f0 /* 802A1E24 0029DA84 48 00 00 08 */ b lbl_802A1E2C lbl_802A1E28: /* 802A1E28 0029DA88 EF 5A 00 28 */ fsubs f26, f26, f0 lbl_802A1E2C: /* 802A1E2C 0029DA8C C0 1A 00 BC */ lfs f0, 0xbc(r26) /* 802A1E30 0029DA90 FC 00 E0 40 */ fcmpo cr0, f0, f28 /* 802A1E34 0029DA94 40 80 00 0C */ bge lbl_802A1E40 /* 802A1E38 0029DA98 EF 7B 00 2A */ fadds f27, f27, f0 /* 802A1E3C 0029DA9C 48 00 00 08 */ b lbl_802A1E44 lbl_802A1E40: /* 802A1E40 0029DAA0 EF 7B 00 28 */ fsubs f27, f27, f0 lbl_802A1E44: /* 802A1E44 0029DAA4 FC 1A D8 40 */ fcmpo cr0, f26, f27 /* 802A1E48 0029DAA8 40 80 00 08 */ bge lbl_802A1E50 /* 802A1E4C 0029DAAC 48 00 00 08 */ b lbl_802A1E54 lbl_802A1E50: /* 802A1E50 0029DAB0 FF 40 D8 90 */ fmr f26, f27 lbl_802A1E54: /* 802A1E54 0029DAB4 EC 01 D0 24 */ fdivs f0, f1, f26 /* 802A1E58 0029DAB8 D0 1A 00 C0 */ stfs f0, 0xc0(r26) /* 802A1E5C 0029DABC 48 00 00 70 */ b lbl_802A1ECC lbl_802A1E60: /* 802A1E60 0029DAC0 C3 42 A3 B0 */ lfs f26, lbl_806429B0-_SDA2_BASE_(r2) /* 802A1E64 0029DAC4 C3 62 A3 B8 */ lfs f27, lbl_806429B8-_SDA2_BASE_(r2) /* 802A1E68 0029DAC8 EC 3A 06 B2 */ fmuls f1, f26, f26 /* 802A1E6C 0029DACC D3 9A 00 B8 */ stfs f28, 0xb8(r26) /* 802A1E70 0029DAD0 EC 1B 06 F2 */ fmuls f0, f27, f27 /* 802A1E74 0029DAD4 D3 DA 00 BC */ stfs f30, 0xbc(r26) /* 802A1E78 0029DAD8 EC 21 00 2A */ fadds f1, f1, f0 /* 802A1E7C 0029DADC 4B F3 29 B9 */ bl sqrt /* 802A1E80 0029DAE0 C0 1A 00 B8 */ lfs f0, 0xb8(r26) /* 802A1E84 0029DAE4 FC 20 08 18 */ frsp f1, f1 /* 802A1E88 0029DAE8 FC 00 E0 40 */ fcmpo cr0, f0, f28 /* 802A1E8C 0029DAEC 40 80 00 0C */ bge lbl_802A1E98 /* 802A1E90 0029DAF0 EF 5A 00 2A */ fadds f26, f26, f0 /* 802A1E94 0029DAF4 48 00 00 08 */ b lbl_802A1E9C lbl_802A1E98: /* 802A1E98 0029DAF8 EF 5A 00 28 */ fsubs f26, f26, f0 lbl_802A1E9C: /* 802A1E9C 0029DAFC C0 1A 00 BC */ lfs f0, 0xbc(r26) /* 802A1EA0 0029DB00 FC 00 E0 40 */ fcmpo cr0, f0, f28 /* 802A1EA4 0029DB04 40 80 00 0C */ bge lbl_802A1EB0 /* 802A1EA8 0029DB08 EF 7B 00 2A */ fadds f27, f27, f0 /* 802A1EAC 0029DB0C 48 00 00 08 */ b lbl_802A1EB4 lbl_802A1EB0: /* 802A1EB0 0029DB10 EF 7B 00 28 */ fsubs f27, f27, f0 lbl_802A1EB4: /* 802A1EB4 0029DB14 FC 1A D8 40 */ fcmpo cr0, f26, f27 /* 802A1EB8 0029DB18 40 80 00 08 */ bge lbl_802A1EC0 /* 802A1EBC 0029DB1C 48 00 00 08 */ b lbl_802A1EC4 lbl_802A1EC0: /* 802A1EC0 0029DB20 FF 40 D8 90 */ fmr f26, f27 lbl_802A1EC4: /* 802A1EC4 0029DB24 EC 01 D0 24 */ fdivs f0, f1, f26 /* 802A1EC8 0029DB28 D0 1A 00 C0 */ stfs f0, 0xc0(r26) lbl_802A1ECC: /* 802A1ECC 0029DB2C 7F 43 D3 78 */ mr r3, r26 /* 802A1ED0 0029DB30 38 80 00 00 */ li r4, 0 lbl_802A1ED4: /* 802A1ED4 0029DB34 38 84 00 01 */ addi r4, r4, 1 /* 802A1ED8 0029DB38 9B E3 01 39 */ stb r31, 0x139(r3) /* 802A1EDC 0029DB3C 28 04 00 10 */ cmplwi r4, 0x10 /* 802A1EE0 0029DB40 38 63 00 38 */ addi r3, r3, 0x38 /* 802A1EE4 0029DB44 41 80 FF F0 */ blt lbl_802A1ED4 /* 802A1EE8 0029DB48 3B 39 00 01 */ addi r25, r25, 1 /* 802A1EEC 0029DB4C 3B 5A 05 24 */ addi r26, r26, 0x524 /* 802A1EF0 0029DB50 2C 19 00 04 */ cmpwi r25, 4 /* 802A1EF4 0029DB54 41 80 FE 08 */ blt lbl_802A1CFC /* 802A1EF8 0029DB58 C3 6D 89 30 */ lfs f27, lbl_8063DBF0-_SDA_BASE_(r13) /* 802A1EFC 0029DB5C 4B FC C8 61 */ bl OSDisableInterrupts /* 802A1F00 0029DB60 C0 02 A3 A8 */ lfs f0, lbl_806429A8-_SDA2_BASE_(r2) /* 802A1F04 0029DB64 D3 6D 89 30 */ stfs f27, lbl_8063DBF0-_SDA_BASE_(r13) /* 802A1F08 0029DB68 EC 1B 00 24 */ fdivs f0, f27, f0 /* 802A1F0C 0029DB6C D0 0D AD E4 */ stfs f0, lbl_806400A4-_SDA_BASE_(r13) /* 802A1F10 0029DB70 D0 0D AD E0 */ stfs f0, lbl_806400A0-_SDA_BASE_(r13) /* 802A1F14 0029DB74 4B FC C8 71 */ bl OSRestoreInterrupts /* 802A1F18 0029DB78 3C 60 80 53 */ lis r3, lbl_805356D0@ha /* 802A1F1C 0029DB7C 3B 60 00 03 */ li r27, 3 /* 802A1F20 0029DB80 38 63 56 D0 */ addi r3, r3, lbl_805356D0@l /* 802A1F24 0029DB84 3B E0 00 01 */ li r31, 1 /* 802A1F28 0029DB88 3B 83 0F 6C */ addi r28, r3, 0xf6c lbl_802A1F2C: /* 802A1F2C 0029DB8C 7F 63 DB 78 */ mr r3, r27 /* 802A1F30 0029DB90 38 80 00 00 */ li r4, 0 /* 802A1F34 0029DB94 48 00 73 75 */ bl WPADControlMotor /* 802A1F38 0029DB98 37 7B FF FF */ addic. r27, r27, -1 /* 802A1F3C 0029DB9C 9B FC 05 1D */ stb r31, 0x51d(r28) /* 802A1F40 0029DBA0 3B 9C FA DC */ addi r28, r28, -1316 /* 802A1F44 0029DBA4 40 80 FF E8 */ bge lbl_802A1F2C /* 802A1F48 0029DBA8 80 6D 89 18 */ lwz r3, lbl_8063DBD8-_SDA_BASE_(r13) /* 802A1F4C 0029DBAC 4B FC 77 05 */ bl OSRegisterVersion /* 802A1F50 0029DBB0 E3 E1 00 88 */ psq_l f31, 136(r1), 0, qr0 /* 802A1F54 0029DBB4 CB E1 00 80 */ lfd f31, 0x80(r1) /* 802A1F58 0029DBB8 E3 C1 00 78 */ psq_l f30, 120(r1), 0, qr0 /* 802A1F5C 0029DBBC CB C1 00 70 */ lfd f30, 0x70(r1) /* 802A1F60 0029DBC0 E3 A1 00 68 */ psq_l f29, 104(r1), 0, qr0 /* 802A1F64 0029DBC4 CB A1 00 60 */ lfd f29, 0x60(r1) /* 802A1F68 0029DBC8 E3 81 00 58 */ psq_l f28, 88(r1), 0, qr0 /* 802A1F6C 0029DBCC CB 81 00 50 */ lfd f28, 0x50(r1) /* 802A1F70 0029DBD0 E3 61 00 48 */ psq_l f27, 72(r1), 0, qr0 /* 802A1F74 0029DBD4 CB 61 00 40 */ lfd f27, 0x40(r1) /* 802A1F78 0029DBD8 E3 41 00 38 */ psq_l f26, 56(r1), 0, qr0 /* 802A1F7C 0029DBDC 39 61 00 30 */ addi r11, r1, 0x30 /* 802A1F80 0029DBE0 CB 41 00 30 */ lfd f26, 0x30(r1) /* 802A1F84 0029DBE4 4B F2 51 E9 */ bl _restgpr_25 /* 802A1F88 0029DBE8 80 01 00 94 */ lwz r0, 0x94(r1) /* 802A1F8C 0029DBEC 7C 08 03 A6 */ mtlr r0 /* 802A1F90 0029DBF0 38 21 00 90 */ addi r1, r1, 0x90 /* 802A1F94 0029DBF4 4E 80 00 20 */ blr .global KPADDisableDPD KPADDisableDPD: /* 802A1F98 0029DBF8 1C 03 05 24 */ mulli r0, r3, 0x524 /* 802A1F9C 0029DBFC 3C 60 80 53 */ lis r3, lbl_805356D0@ha /* 802A1FA0 0029DC00 38 80 00 00 */ li r4, 0 /* 802A1FA4 0029DC04 38 63 56 D0 */ addi r3, r3, lbl_805356D0@l /* 802A1FA8 0029DC08 7C 63 02 14 */ add r3, r3, r0 /* 802A1FAC 0029DC0C 98 83 05 20 */ stb r4, 0x520(r3) /* 802A1FB0 0029DC10 4E 80 00 20 */ blr .global KPADEnableDPD KPADEnableDPD: /* 802A1FB4 0029DC14 1C 03 05 24 */ mulli r0, r3, 0x524 /* 802A1FB8 0029DC18 3C 60 80 53 */ lis r3, lbl_805356D0@ha /* 802A1FBC 0029DC1C 38 80 00 01 */ li r4, 1 /* 802A1FC0 0029DC20 38 63 56 D0 */ addi r3, r3, lbl_805356D0@l /* 802A1FC4 0029DC24 7C 63 02 14 */ add r3, r3, r0 /* 802A1FC8 0029DC28 98 83 05 20 */ stb r4, 0x520(r3) /* 802A1FCC 0029DC2C 4E 80 00 20 */ blr KPADiSamplingCallback: /* 802A1FD0 0029DC30 94 21 FF E0 */ stwu r1, -0x20(r1) /* 802A1FD4 0029DC34 7C 08 02 A6 */ mflr r0 /* 802A1FD8 0029DC38 3C 80 80 53 */ lis r4, lbl_805356D0@ha /* 802A1FDC 0029DC3C 90 01 00 24 */ stw r0, 0x24(r1) /* 802A1FE0 0029DC40 1C 03 05 24 */ mulli r0, r3, 0x524 /* 802A1FE4 0029DC44 38 84 56 D0 */ addi r4, r4, lbl_805356D0@l /* 802A1FE8 0029DC48 93 E1 00 1C */ stw r31, 0x1c(r1) /* 802A1FEC 0029DC4C 7F E4 02 14 */ add r31, r4, r0 /* 802A1FF0 0029DC50 38 81 00 08 */ addi r4, r1, 8 /* 802A1FF4 0029DC54 93 C1 00 18 */ stw r30, 0x18(r1) /* 802A1FF8 0029DC58 7C 7E 1B 78 */ mr r30, r3 /* 802A1FFC 0029DC5C 93 A1 00 14 */ stw r29, 0x14(r1) /* 802A2000 0029DC60 93 81 00 10 */ stw r28, 0x10(r1) /* 802A2004 0029DC64 48 00 6D 75 */ bl WPADProbe /* 802A2008 0029DC68 2C 03 FF FF */ cmpwi r3, -1 /* 802A200C 0029DC6C 41 82 01 84 */ beq lbl_802A2190 /* 802A2010 0029DC70 8B BF 01 0E */ lbz r29, 0x10e(r31) /* 802A2014 0029DC74 28 1D 00 10 */ cmplwi r29, 0x10 /* 802A2018 0029DC78 41 80 00 08 */ blt lbl_802A2020 /* 802A201C 0029DC7C 3B A0 00 00 */ li r29, 0 lbl_802A2020: /* 802A2020 0029DC80 1C 1D 00 38 */ mulli r0, r29, 0x38 /* 802A2024 0029DC84 7F C3 F3 78 */ mr r3, r30 /* 802A2028 0029DC88 7C 9F 02 14 */ add r4, r31, r0 /* 802A202C 0029DC8C 3B 84 01 10 */ addi r28, r4, 0x110 /* 802A2030 0029DC90 7F 84 E3 78 */ mr r4, r28 /* 802A2034 0029DC94 48 00 76 3D */ bl WPADRead /* 802A2038 0029DC98 7F C3 F3 78 */ mr r3, r30 /* 802A203C 0029DC9C 48 00 6F 01 */ bl WPADGetDataFormat /* 802A2040 0029DCA0 98 7C 00 36 */ stb r3, 0x36(r28) /* 802A2044 0029DCA4 38 1D 00 01 */ addi r0, r29, 1 /* 802A2048 0029DCA8 98 1F 01 0E */ stb r0, 0x10e(r31) /* 802A204C 0029DCAC 88 7F 01 0F */ lbz r3, 0x10f(r31) /* 802A2050 0029DCB0 28 03 00 10 */ cmplwi r3, 0x10 /* 802A2054 0029DCB4 40 80 00 0C */ bge lbl_802A2060 /* 802A2058 0029DCB8 38 03 00 01 */ addi r0, r3, 1 /* 802A205C 0029DCBC 98 1F 01 0F */ stb r0, 0x10f(r31) lbl_802A2060: /* 802A2060 0029DCC0 80 01 00 08 */ lwz r0, 8(r1) /* 802A2064 0029DCC4 2C 00 00 FB */ cmpwi r0, 0xfb /* 802A2068 0029DCC8 40 80 00 28 */ bge lbl_802A2090 /* 802A206C 0029DCCC 2C 00 00 01 */ cmpwi r0, 1 /* 802A2070 0029DCD0 41 82 00 3C */ beq lbl_802A20AC /* 802A2074 0029DCD4 40 80 00 10 */ bge lbl_802A2084 /* 802A2078 0029DCD8 2C 00 00 00 */ cmpwi r0, 0 /* 802A207C 0029DCDC 40 80 00 28 */ bge lbl_802A20A4 /* 802A2080 0029DCE0 48 00 01 10 */ b lbl_802A2190 lbl_802A2084: /* 802A2084 0029DCE4 2C 00 00 03 */ cmpwi r0, 3 /* 802A2088 0029DCE8 40 80 01 08 */ bge lbl_802A2190 /* 802A208C 0029DCEC 48 00 00 28 */ b lbl_802A20B4 lbl_802A2090: /* 802A2090 0029DCF0 2C 00 00 FF */ cmpwi r0, 0xff /* 802A2094 0029DCF4 41 82 00 10 */ beq lbl_802A20A4 /* 802A2098 0029DCF8 40 80 00 F8 */ bge lbl_802A2190 /* 802A209C 0029DCFC 2C 00 00 FD */ cmpwi r0, 0xfd /* 802A20A0 0029DD00 40 80 00 F0 */ bge lbl_802A2190 lbl_802A20A4: /* 802A20A4 0029DD04 3B A0 00 00 */ li r29, 0 /* 802A20A8 0029DD08 48 00 00 10 */ b lbl_802A20B8 lbl_802A20AC: /* 802A20AC 0029DD0C 3B A0 00 02 */ li r29, 2 /* 802A20B0 0029DD10 48 00 00 08 */ b lbl_802A20B8 lbl_802A20B4: /* 802A20B4 0029DD14 3B A0 00 04 */ li r29, 4 lbl_802A20B8: /* 802A20B8 0029DD18 88 1F 05 20 */ lbz r0, 0x520(r31) /* 802A20BC 0029DD1C 2C 00 00 00 */ cmpwi r0, 0 /* 802A20C0 0029DD20 41 82 00 08 */ beq lbl_802A20C8 /* 802A20C4 0029DD24 3B BD 00 01 */ addi r29, r29, 1 lbl_802A20C8: /* 802A20C8 0029DD28 7F C3 F3 78 */ mr r3, r30 /* 802A20CC 0029DD2C 48 00 95 BD */ bl WPADIsDpdEnabled /* 802A20D0 0029DD30 2C 03 00 00 */ cmpwi r3, 0 /* 802A20D4 0029DD34 41 82 00 0C */ beq lbl_802A20E0 /* 802A20D8 0029DD38 88 9F 05 21 */ lbz r4, 0x521(r31) /* 802A20DC 0029DD3C 48 00 00 08 */ b lbl_802A20E4 lbl_802A20E0: /* 802A20E0 0029DD40 38 80 00 00 */ li r4, 0 lbl_802A20E4: /* 802A20E4 0029DD44 3C 60 80 44 */ lis r3, lbl_8043BF84@ha /* 802A20E8 0029DD48 57 A0 08 3C */ slwi r0, r29, 1 /* 802A20EC 0029DD4C 38 63 BF 84 */ addi r3, r3, lbl_8043BF84@l /* 802A20F0 0029DD50 7F A3 02 14 */ add r29, r3, r0 /* 802A20F4 0029DD54 7C 03 00 AE */ lbzx r0, r3, r0 /* 802A20F8 0029DD58 7C 04 00 40 */ cmplw r4, r0 /* 802A20FC 0029DD5C 41 82 00 7C */ beq lbl_802A2178 /* 802A2100 0029DD60 80 1F 04 D8 */ lwz r0, 0x4d8(r31) /* 802A2104 0029DD64 2C 00 00 00 */ cmpwi r0, 0 /* 802A2108 0029DD68 41 82 00 34 */ beq lbl_802A213C /* 802A210C 0029DD6C 88 1F 05 22 */ lbz r0, 0x522(r31) /* 802A2110 0029DD70 2C 00 00 00 */ cmpwi r0, 0 /* 802A2114 0029DD74 40 82 00 28 */ bne lbl_802A213C /* 802A2118 0029DD78 38 00 00 01 */ li r0, 1 /* 802A211C 0029DD7C 7F C3 F3 78 */ mr r3, r30 /* 802A2120 0029DD80 98 1F 05 22 */ stb r0, 0x522(r31) /* 802A2124 0029DD84 38 80 00 00 */ li r4, 0 /* 802A2128 0029DD88 81 9F 04 D8 */ lwz r12, 0x4d8(r31) /* 802A212C 0029DD8C 7D 89 03 A6 */ mtctr r12 /* 802A2130 0029DD90 4E 80 04 21 */ bctrl /* 802A2134 0029DD94 38 00 00 00 */ li r0, 0 /* 802A2138 0029DD98 98 1F 05 23 */ stb r0, 0x523(r31) lbl_802A213C: /* 802A213C 0029DD9C 88 1F 05 1F */ lbz r0, 0x51f(r31) /* 802A2140 0029DDA0 2C 00 00 00 */ cmpwi r0, 0 /* 802A2144 0029DDA4 40 82 00 4C */ bne lbl_802A2190 /* 802A2148 0029DDA8 38 00 00 01 */ li r0, 1 /* 802A214C 0029DDAC 3C A0 80 2A */ lis r5, KPADiControlDpdCallback@ha /* 802A2150 0029DDB0 98 1F 05 1F */ stb r0, 0x51f(r31) /* 802A2154 0029DDB4 7F C3 F3 78 */ mr r3, r30 /* 802A2158 0029DDB8 88 9D 00 00 */ lbz r4, 0(r29) /* 802A215C 0029DDBC 38 A5 21 C8 */ addi r5, r5, KPADiControlDpdCallback@l /* 802A2160 0029DDC0 48 00 95 9D */ bl WPADControlDpd /* 802A2164 0029DDC4 2C 03 00 00 */ cmpwi r3, 0 /* 802A2168 0029DDC8 40 82 00 28 */ bne lbl_802A2190 /* 802A216C 0029DDCC 88 1D 00 00 */ lbz r0, 0(r29) /* 802A2170 0029DDD0 98 1F 05 21 */ stb r0, 0x521(r31) /* 802A2174 0029DDD4 48 00 00 1C */ b lbl_802A2190 lbl_802A2178: /* 802A2178 0029DDD8 88 9D 00 01 */ lbz r4, 1(r29) /* 802A217C 0029DDDC 88 1C 00 36 */ lbz r0, 0x36(r28) /* 802A2180 0029DDE0 7C 00 20 40 */ cmplw r0, r4 /* 802A2184 0029DDE4 41 82 00 0C */ beq lbl_802A2190 /* 802A2188 0029DDE8 7F C3 F3 78 */ mr r3, r30 /* 802A218C 0029DDEC 48 00 6D F9 */ bl WPADSetDataFormat lbl_802A2190: /* 802A2190 0029DDF0 81 9F 05 18 */ lwz r12, 0x518(r31) /* 802A2194 0029DDF4 2C 0C 00 00 */ cmpwi r12, 0 /* 802A2198 0029DDF8 41 82 00 10 */ beq lbl_802A21A8 /* 802A219C 0029DDFC 7F C3 F3 78 */ mr r3, r30 /* 802A21A0 0029DE00 7D 89 03 A6 */ mtctr r12 /* 802A21A4 0029DE04 4E 80 04 21 */ bctrl lbl_802A21A8: /* 802A21A8 0029DE08 80 01 00 24 */ lwz r0, 0x24(r1) /* 802A21AC 0029DE0C 83 E1 00 1C */ lwz r31, 0x1c(r1) /* 802A21B0 0029DE10 83 C1 00 18 */ lwz r30, 0x18(r1) /* 802A21B4 0029DE14 83 A1 00 14 */ lwz r29, 0x14(r1) /* 802A21B8 0029DE18 83 81 00 10 */ lwz r28, 0x10(r1) /* 802A21BC 0029DE1C 7C 08 03 A6 */ mtlr r0 /* 802A21C0 0029DE20 38 21 00 20 */ addi r1, r1, 0x20 /* 802A21C4 0029DE24 4E 80 00 20 */ blr KPADiControlDpdCallback: /* 802A21C8 0029DE28 94 21 FF F0 */ stwu r1, -0x10(r1) /* 802A21CC 0029DE2C 7C 08 02 A6 */ mflr r0 /* 802A21D0 0029DE30 3C A0 80 53 */ lis r5, lbl_805356D0@ha /* 802A21D4 0029DE34 2C 04 00 00 */ cmpwi r4, 0 /* 802A21D8 0029DE38 90 01 00 14 */ stw r0, 0x14(r1) /* 802A21DC 0029DE3C 1C 03 05 24 */ mulli r0, r3, 0x524 /* 802A21E0 0029DE40 38 A5 56 D0 */ addi r5, r5, lbl_805356D0@l /* 802A21E4 0029DE44 93 E1 00 0C */ stw r31, 0xc(r1) /* 802A21E8 0029DE48 7F E5 02 14 */ add r31, r5, r0 /* 802A21EC 0029DE4C 40 82 00 3C */ bne lbl_802A2228 /* 802A21F0 0029DE50 80 1F 04 D8 */ lwz r0, 0x4d8(r31) /* 802A21F4 0029DE54 2C 00 00 00 */ cmpwi r0, 0 /* 802A21F8 0029DE58 41 82 00 30 */ beq lbl_802A2228 /* 802A21FC 0029DE5C 88 1F 05 23 */ lbz r0, 0x523(r31) /* 802A2200 0029DE60 2C 00 00 00 */ cmpwi r0, 0 /* 802A2204 0029DE64 40 82 00 24 */ bne lbl_802A2228 /* 802A2208 0029DE68 38 00 00 01 */ li r0, 1 /* 802A220C 0029DE6C 38 80 00 01 */ li r4, 1 /* 802A2210 0029DE70 98 1F 05 23 */ stb r0, 0x523(r31) /* 802A2214 0029DE74 81 9F 04 D8 */ lwz r12, 0x4d8(r31) /* 802A2218 0029DE78 7D 89 03 A6 */ mtctr r12 /* 802A221C 0029DE7C 4E 80 04 21 */ bctrl /* 802A2220 0029DE80 38 00 00 00 */ li r0, 0 /* 802A2224 0029DE84 98 1F 05 22 */ stb r0, 0x522(r31) lbl_802A2228: /* 802A2228 0029DE88 38 00 00 00 */ li r0, 0 /* 802A222C 0029DE8C 98 1F 05 1F */ stb r0, 0x51f(r31) /* 802A2230 0029DE90 83 E1 00 0C */ lwz r31, 0xc(r1) /* 802A2234 0029DE94 80 01 00 14 */ lwz r0, 0x14(r1) /* 802A2238 0029DE98 7C 08 03 A6 */ mtlr r0 /* 802A223C 0029DE9C 38 21 00 10 */ addi r1, r1, 0x10 /* 802A2240 0029DEA0 4E 80 00 20 */ blr