tp/asm/d/d_camera/forwardCheckAngle__9dCamera...

474 lines
20 KiB
ArmAsm

lbl_8016608C:
/* 8016608C 94 21 FD F0 */ stwu r1, -0x210(r1)
/* 80166090 7C 08 02 A6 */ mflr r0
/* 80166094 90 01 02 14 */ stw r0, 0x214(r1)
/* 80166098 DB E1 02 00 */ stfd f31, 0x200(r1)
/* 8016609C F3 E1 02 08 */ psq_st f31, 520(r1), 0, 0 /* qr0 */
/* 801660A0 DB C1 01 F0 */ stfd f30, 0x1f0(r1)
/* 801660A4 F3 C1 01 F8 */ psq_st f30, 504(r1), 0, 0 /* qr0 */
/* 801660A8 39 61 01 F0 */ addi r11, r1, 0x1f0
/* 801660AC 48 1F C1 2D */ bl _savegpr_28
/* 801660B0 7C 7D 1B 78 */ mr r29, r3
/* 801660B4 7C 9E 23 78 */ mr r30, r4
/* 801660B8 38 61 01 64 */ addi r3, r1, 0x164
/* 801660BC 4B F1 1C E9 */ bl __ct__14dBgS_CamLinChkFv
/* 801660C0 38 61 00 3C */ addi r3, r1, 0x3c
/* 801660C4 38 8D 8C 08 */ la r4, _0__7cSAngle(r13) /* 80451188-_SDA_BASE_ */
/* 801660C8 48 10 AE A1 */ bl __ct__7cSAngleFRC7cSAngle
/* 801660CC 38 61 01 10 */ addi r3, r1, 0x110
/* 801660D0 7F C4 F3 78 */ mr r4, r30
/* 801660D4 80 BE 01 80 */ lwz r5, 0x180(r30)
/* 801660D8 4B F3 16 85 */ bl positionOf__9dCamera_cFP10fopAc_ac_c
/* 801660DC C0 01 01 10 */ lfs f0, 0x110(r1)
/* 801660E0 D0 01 01 58 */ stfs f0, 0x158(r1)
/* 801660E4 C0 01 01 14 */ lfs f0, 0x114(r1)
/* 801660E8 D0 01 01 5C */ stfs f0, 0x15c(r1)
/* 801660EC C0 01 01 18 */ lfs f0, 0x118(r1)
/* 801660F0 D0 01 01 60 */ stfs f0, 0x160(r1)
/* 801660F4 7F C3 F3 78 */ mr r3, r30
/* 801660F8 80 9E 01 80 */ lwz r4, 0x180(r30)
/* 801660FC 4B FF EC 31 */ bl heightOf__9dCamera_cFP10fopAc_ac_c
/* 80166100 FF E0 08 90 */ fmr f31, f1
/* 80166104 C0 01 01 5C */ lfs f0, 0x15c(r1)
/* 80166108 EC 00 F8 2A */ fadds f0, f0, f31
/* 8016610C D0 01 01 5C */ stfs f0, 0x15c(r1)
/* 80166110 C0 22 9D 20 */ lfs f1, lit_8529(r2)
/* 80166114 C0 1E 0A 8C */ lfs f0, 0xa8c(r30)
/* 80166118 EC 01 00 32 */ fmuls f0, f1, f0
/* 8016611C FC 00 00 1E */ fctiwz f0, f0
/* 80166120 D8 01 01 D8 */ stfd f0, 0x1d8(r1)
/* 80166124 80 81 01 DC */ lwz r4, 0x1dc(r1)
/* 80166128 38 61 00 30 */ addi r3, r1, 0x30
/* 8016612C 48 10 AE 6D */ bl __ct__7cSAngleFs
/* 80166130 AB 81 00 30 */ lha r28, 0x30(r1)
/* 80166134 C3 DE 0A 88 */ lfs f30, 0xa88(r30)
/* 80166138 3B FE 00 2E */ addi r31, r30, 0x2e
/* 8016613C 7F E3 FB 78 */ mr r3, r31
/* 80166140 48 10 AF A9 */ bl Inv__7cSAngleCFv
/* 80166144 7C 65 1B 78 */ mr r5, r3
/* 80166148 38 61 00 60 */ addi r3, r1, 0x60
/* 8016614C EC 3F 07 B2 */ fmuls f1, f31, f30
/* 80166150 7F 84 E3 78 */ mr r4, r28
/* 80166154 48 10 B6 CD */ bl __ct__7cSGlobeFfss
/* 80166158 38 61 01 04 */ addi r3, r1, 0x104
/* 8016615C 38 81 00 60 */ addi r4, r1, 0x60
/* 80166160 48 10 B9 55 */ bl Xyz__7cSGlobeCFv
/* 80166164 38 61 00 F8 */ addi r3, r1, 0xf8
/* 80166168 38 81 01 58 */ addi r4, r1, 0x158
/* 8016616C 38 A1 01 04 */ addi r5, r1, 0x104
/* 80166170 48 10 09 75 */ bl __pl__4cXyzCFRC3Vec
/* 80166174 C0 01 00 F8 */ lfs f0, 0xf8(r1)
/* 80166178 D0 01 01 40 */ stfs f0, 0x140(r1)
/* 8016617C C0 01 00 FC */ lfs f0, 0xfc(r1)
/* 80166180 D0 01 01 44 */ stfs f0, 0x144(r1)
/* 80166184 C0 01 01 00 */ lfs f0, 0x100(r1)
/* 80166188 D0 01 01 48 */ stfs f0, 0x148(r1)
/* 8016618C 7F C3 F3 78 */ mr r3, r30
/* 80166190 38 81 01 58 */ addi r4, r1, 0x158
/* 80166194 38 A1 01 40 */ addi r5, r1, 0x140
/* 80166198 38 C1 01 4C */ addi r6, r1, 0x14c
/* 8016619C 38 E0 40 B7 */ li r7, 0x40b7
/* 801661A0 4B FF F8 55 */ bl lineBGCheck__9dCamera_cFP4cXyzP4cXyzP4cXyzUl
/* 801661A4 54 60 06 3F */ clrlwi. r0, r3, 0x18
/* 801661A8 41 82 01 84 */ beq lbl_8016632C
/* 801661AC 38 61 00 EC */ addi r3, r1, 0xec
/* 801661B0 38 81 01 40 */ addi r4, r1, 0x140
/* 801661B4 38 A1 01 58 */ addi r5, r1, 0x158
/* 801661B8 48 10 09 7D */ bl __mi__4cXyzCFRC3Vec
/* 801661BC C0 01 00 EC */ lfs f0, 0xec(r1)
/* 801661C0 D0 01 01 34 */ stfs f0, 0x134(r1)
/* 801661C4 C0 01 00 F0 */ lfs f0, 0xf0(r1)
/* 801661C8 D0 01 01 38 */ stfs f0, 0x138(r1)
/* 801661CC C0 01 00 F4 */ lfs f0, 0xf4(r1)
/* 801661D0 D0 01 01 3C */ stfs f0, 0x13c(r1)
/* 801661D4 38 61 01 34 */ addi r3, r1, 0x134
/* 801661D8 48 1E 0F 61 */ bl PSVECSquareMag
/* 801661DC C0 02 9C A0 */ lfs f0, lit_5656(r2)
/* 801661E0 FC 01 00 40 */ fcmpo cr0, f1, f0
/* 801661E4 40 81 00 58 */ ble lbl_8016623C
/* 801661E8 FC 00 08 34 */ frsqrte f0, f1
/* 801661EC C8 82 9C C8 */ lfd f4, lit_6177(r2)
/* 801661F0 FC 44 00 32 */ fmul f2, f4, f0
/* 801661F4 C8 62 9C D0 */ lfd f3, lit_6178(r2)
/* 801661F8 FC 00 00 32 */ fmul f0, f0, f0
/* 801661FC FC 01 00 32 */ fmul f0, f1, f0
/* 80166200 FC 03 00 28 */ fsub f0, f3, f0
/* 80166204 FC 02 00 32 */ fmul f0, f2, f0
/* 80166208 FC 44 00 32 */ fmul f2, f4, f0
/* 8016620C FC 00 00 32 */ fmul f0, f0, f0
/* 80166210 FC 01 00 32 */ fmul f0, f1, f0
/* 80166214 FC 03 00 28 */ fsub f0, f3, f0
/* 80166218 FC 02 00 32 */ fmul f0, f2, f0
/* 8016621C FC 44 00 32 */ fmul f2, f4, f0
/* 80166220 FC 00 00 32 */ fmul f0, f0, f0
/* 80166224 FC 01 00 32 */ fmul f0, f1, f0
/* 80166228 FC 03 00 28 */ fsub f0, f3, f0
/* 8016622C FC 02 00 32 */ fmul f0, f2, f0
/* 80166230 FC 21 00 32 */ fmul f1, f1, f0
/* 80166234 FC 20 08 18 */ frsp f1, f1
/* 80166238 48 00 00 88 */ b lbl_801662C0
lbl_8016623C:
/* 8016623C C8 02 9C D8 */ lfd f0, lit_6179(r2)
/* 80166240 FC 01 00 40 */ fcmpo cr0, f1, f0
/* 80166244 40 80 00 10 */ bge lbl_80166254
/* 80166248 3C 60 80 45 */ lis r3, __float_nan@ha /* 0x80450AE0@ha */
/* 8016624C C0 23 0A E0 */ lfs f1, __float_nan@l(r3) /* 0x80450AE0@l */
/* 80166250 48 00 00 70 */ b lbl_801662C0
lbl_80166254:
/* 80166254 D0 21 00 44 */ stfs f1, 0x44(r1)
/* 80166258 80 81 00 44 */ lwz r4, 0x44(r1)
/* 8016625C 54 83 00 50 */ rlwinm r3, r4, 0, 1, 8
/* 80166260 3C 00 7F 80 */ lis r0, 0x7f80
/* 80166264 7C 03 00 00 */ cmpw r3, r0
/* 80166268 41 82 00 14 */ beq lbl_8016627C
/* 8016626C 40 80 00 40 */ bge lbl_801662AC
/* 80166270 2C 03 00 00 */ cmpwi r3, 0
/* 80166274 41 82 00 20 */ beq lbl_80166294
/* 80166278 48 00 00 34 */ b lbl_801662AC
lbl_8016627C:
/* 8016627C 54 80 02 7F */ clrlwi. r0, r4, 9
/* 80166280 41 82 00 0C */ beq lbl_8016628C
/* 80166284 38 00 00 01 */ li r0, 1
/* 80166288 48 00 00 28 */ b lbl_801662B0
lbl_8016628C:
/* 8016628C 38 00 00 02 */ li r0, 2
/* 80166290 48 00 00 20 */ b lbl_801662B0
lbl_80166294:
/* 80166294 54 80 02 7F */ clrlwi. r0, r4, 9
/* 80166298 41 82 00 0C */ beq lbl_801662A4
/* 8016629C 38 00 00 05 */ li r0, 5
/* 801662A0 48 00 00 10 */ b lbl_801662B0
lbl_801662A4:
/* 801662A4 38 00 00 03 */ li r0, 3
/* 801662A8 48 00 00 08 */ b lbl_801662B0
lbl_801662AC:
/* 801662AC 38 00 00 04 */ li r0, 4
lbl_801662B0:
/* 801662B0 2C 00 00 01 */ cmpwi r0, 1
/* 801662B4 40 82 00 0C */ bne lbl_801662C0
/* 801662B8 3C 60 80 45 */ lis r3, __float_nan@ha /* 0x80450AE0@ha */
/* 801662BC C0 23 0A E0 */ lfs f1, __float_nan@l(r3) /* 0x80450AE0@l */
lbl_801662C0:
/* 801662C0 C0 02 9C A8 */ lfs f0, lit_5658(r2)
/* 801662C4 FC 01 00 40 */ fcmpo cr0, f1, f0
/* 801662C8 40 80 00 20 */ bge lbl_801662E8
/* 801662CC C0 01 01 4C */ lfs f0, 0x14c(r1)
/* 801662D0 D0 01 01 40 */ stfs f0, 0x140(r1)
/* 801662D4 C0 01 01 50 */ lfs f0, 0x150(r1)
/* 801662D8 D0 01 01 44 */ stfs f0, 0x144(r1)
/* 801662DC C0 01 01 54 */ lfs f0, 0x154(r1)
/* 801662E0 D0 01 01 48 */ stfs f0, 0x148(r1)
/* 801662E4 48 00 00 48 */ b lbl_8016632C
lbl_801662E8:
/* 801662E8 38 61 00 E0 */ addi r3, r1, 0xe0
/* 801662EC 38 81 01 34 */ addi r4, r1, 0x134
/* 801662F0 48 10 09 F5 */ bl norm__4cXyzCFv
/* 801662F4 38 61 00 D4 */ addi r3, r1, 0xd4
/* 801662F8 38 81 00 E0 */ addi r4, r1, 0xe0
/* 801662FC C0 3E 0A A8 */ lfs f1, 0xaa8(r30)
/* 80166300 48 10 08 85 */ bl __ml__4cXyzCFf
/* 80166304 38 61 00 C8 */ addi r3, r1, 0xc8
/* 80166308 38 81 01 4C */ addi r4, r1, 0x14c
/* 8016630C 38 A1 00 D4 */ addi r5, r1, 0xd4
/* 80166310 48 10 08 25 */ bl __mi__4cXyzCFRC3Vec
/* 80166314 C0 01 00 C8 */ lfs f0, 0xc8(r1)
/* 80166318 D0 01 01 40 */ stfs f0, 0x140(r1)
/* 8016631C C0 01 00 CC */ lfs f0, 0xcc(r1)
/* 80166320 D0 01 01 44 */ stfs f0, 0x144(r1)
/* 80166324 C0 01 00 D0 */ lfs f0, 0xd0(r1)
/* 80166328 D0 01 01 48 */ stfs f0, 0x148(r1)
lbl_8016632C:
/* 8016632C C0 01 01 40 */ lfs f0, 0x140(r1)
/* 80166330 D0 01 01 4C */ stfs f0, 0x14c(r1)
/* 80166334 C0 01 01 44 */ lfs f0, 0x144(r1)
/* 80166338 D0 01 01 50 */ stfs f0, 0x150(r1)
/* 8016633C C0 01 01 48 */ lfs f0, 0x148(r1)
/* 80166340 D0 01 01 54 */ stfs f0, 0x154(r1)
/* 80166344 7F C3 F3 78 */ mr r3, r30
/* 80166348 38 81 01 40 */ addi r4, r1, 0x140
/* 8016634C 4B FF F4 A1 */ bl groundHeight__9dCamera_cFP4cXyz
/* 80166350 EC 1F 08 2A */ fadds f0, f31, f1
/* 80166354 D0 01 01 50 */ stfs f0, 0x150(r1)
/* 80166358 38 61 00 BC */ addi r3, r1, 0xbc
/* 8016635C 38 81 01 4C */ addi r4, r1, 0x14c
/* 80166360 38 A1 01 58 */ addi r5, r1, 0x158
/* 80166364 48 10 07 D1 */ bl __mi__4cXyzCFRC3Vec
/* 80166368 38 61 00 58 */ addi r3, r1, 0x58
/* 8016636C 38 81 00 BC */ addi r4, r1, 0xbc
/* 80166370 48 10 B5 11 */ bl __ct__7cSGlobeFRC4cXyz
/* 80166374 38 81 00 5C */ addi r4, r1, 0x5c
/* 80166378 A8 61 00 5C */ lha r3, 0x5c(r1)
/* 8016637C A8 0D 8C 08 */ lha r0, _0__7cSAngle(r13)
/* 80166380 7C 03 00 00 */ cmpw r3, r0
/* 80166384 41 80 00 1C */ blt lbl_801663A0
/* 80166388 38 61 00 28 */ addi r3, r1, 0x28
/* 8016638C C0 3E 0A 90 */ lfs f1, 0xa90(r30)
/* 80166390 48 10 AE D5 */ bl __ml__7cSAngleCFf
/* 80166394 A8 01 00 28 */ lha r0, 0x28(r1)
/* 80166398 B0 01 00 38 */ sth r0, 0x38(r1)
/* 8016639C 48 00 00 18 */ b lbl_801663B4
lbl_801663A0:
/* 801663A0 38 61 00 24 */ addi r3, r1, 0x24
/* 801663A4 C0 3E 0A 94 */ lfs f1, 0xa94(r30)
/* 801663A8 48 10 AE BD */ bl __ml__7cSAngleCFf
/* 801663AC A8 01 00 24 */ lha r0, 0x24(r1)
/* 801663B0 B0 01 00 38 */ sth r0, 0x38(r1)
lbl_801663B4:
/* 801663B4 C0 22 9D 20 */ lfs f1, lit_8529(r2)
/* 801663B8 C0 1E 0A 9C */ lfs f0, 0xa9c(r30)
/* 801663BC EC 01 00 32 */ fmuls f0, f1, f0
/* 801663C0 FC 00 00 1E */ fctiwz f0, f0
/* 801663C4 D8 01 01 D8 */ stfd f0, 0x1d8(r1)
/* 801663C8 80 81 01 DC */ lwz r4, 0x1dc(r1)
/* 801663CC 38 61 00 2C */ addi r3, r1, 0x2c
/* 801663D0 48 10 AB C9 */ bl __ct__7cSAngleFs
/* 801663D4 AB 81 00 2C */ lha r28, 0x2c(r1)
/* 801663D8 C3 DE 0A 98 */ lfs f30, 0xa98(r30)
/* 801663DC 7F E3 FB 78 */ mr r3, r31
/* 801663E0 48 10 AD 09 */ bl Inv__7cSAngleCFv
/* 801663E4 7C 65 1B 78 */ mr r5, r3
/* 801663E8 38 61 00 50 */ addi r3, r1, 0x50
/* 801663EC EC 3F 07 B2 */ fmuls f1, f31, f30
/* 801663F0 7F 84 E3 78 */ mr r4, r28
/* 801663F4 48 10 B4 2D */ bl __ct__7cSGlobeFfss
/* 801663F8 38 61 00 B0 */ addi r3, r1, 0xb0
/* 801663FC 38 81 00 50 */ addi r4, r1, 0x50
/* 80166400 48 10 B6 B5 */ bl Xyz__7cSGlobeCFv
/* 80166404 38 61 00 A4 */ addi r3, r1, 0xa4
/* 80166408 38 81 01 58 */ addi r4, r1, 0x158
/* 8016640C 38 A1 00 B0 */ addi r5, r1, 0xb0
/* 80166410 48 10 06 D5 */ bl __pl__4cXyzCFRC3Vec
/* 80166414 C0 01 00 A4 */ lfs f0, 0xa4(r1)
/* 80166418 D0 01 01 28 */ stfs f0, 0x128(r1)
/* 8016641C C0 01 00 A8 */ lfs f0, 0xa8(r1)
/* 80166420 D0 01 01 2C */ stfs f0, 0x12c(r1)
/* 80166424 C0 01 00 AC */ lfs f0, 0xac(r1)
/* 80166428 D0 01 01 30 */ stfs f0, 0x130(r1)
/* 8016642C 7F C3 F3 78 */ mr r3, r30
/* 80166430 38 81 01 58 */ addi r4, r1, 0x158
/* 80166434 38 A1 01 28 */ addi r5, r1, 0x128
/* 80166438 38 C1 01 4C */ addi r6, r1, 0x14c
/* 8016643C 38 E0 40 B7 */ li r7, 0x40b7
/* 80166440 4B FF F5 B5 */ bl lineBGCheck__9dCamera_cFP4cXyzP4cXyzP4cXyzUl
/* 80166444 54 60 06 3F */ clrlwi. r0, r3, 0x18
/* 80166448 41 82 01 84 */ beq lbl_801665CC
/* 8016644C 38 61 00 98 */ addi r3, r1, 0x98
/* 80166450 38 81 01 28 */ addi r4, r1, 0x128
/* 80166454 38 A1 01 58 */ addi r5, r1, 0x158
/* 80166458 48 10 06 DD */ bl __mi__4cXyzCFRC3Vec
/* 8016645C C0 01 00 98 */ lfs f0, 0x98(r1)
/* 80166460 D0 01 01 1C */ stfs f0, 0x11c(r1)
/* 80166464 C0 01 00 9C */ lfs f0, 0x9c(r1)
/* 80166468 D0 01 01 20 */ stfs f0, 0x120(r1)
/* 8016646C C0 01 00 A0 */ lfs f0, 0xa0(r1)
/* 80166470 D0 01 01 24 */ stfs f0, 0x124(r1)
/* 80166474 38 61 01 1C */ addi r3, r1, 0x11c
/* 80166478 48 1E 0C C1 */ bl PSVECSquareMag
/* 8016647C C0 02 9C A0 */ lfs f0, lit_5656(r2)
/* 80166480 FC 01 00 40 */ fcmpo cr0, f1, f0
/* 80166484 40 81 00 58 */ ble lbl_801664DC
/* 80166488 FC 00 08 34 */ frsqrte f0, f1
/* 8016648C C8 82 9C C8 */ lfd f4, lit_6177(r2)
/* 80166490 FC 44 00 32 */ fmul f2, f4, f0
/* 80166494 C8 62 9C D0 */ lfd f3, lit_6178(r2)
/* 80166498 FC 00 00 32 */ fmul f0, f0, f0
/* 8016649C FC 01 00 32 */ fmul f0, f1, f0
/* 801664A0 FC 03 00 28 */ fsub f0, f3, f0
/* 801664A4 FC 02 00 32 */ fmul f0, f2, f0
/* 801664A8 FC 44 00 32 */ fmul f2, f4, f0
/* 801664AC FC 00 00 32 */ fmul f0, f0, f0
/* 801664B0 FC 01 00 32 */ fmul f0, f1, f0
/* 801664B4 FC 03 00 28 */ fsub f0, f3, f0
/* 801664B8 FC 02 00 32 */ fmul f0, f2, f0
/* 801664BC FC 44 00 32 */ fmul f2, f4, f0
/* 801664C0 FC 00 00 32 */ fmul f0, f0, f0
/* 801664C4 FC 01 00 32 */ fmul f0, f1, f0
/* 801664C8 FC 03 00 28 */ fsub f0, f3, f0
/* 801664CC FC 02 00 32 */ fmul f0, f2, f0
/* 801664D0 FC 21 00 32 */ fmul f1, f1, f0
/* 801664D4 FC 20 08 18 */ frsp f1, f1
/* 801664D8 48 00 00 88 */ b lbl_80166560
lbl_801664DC:
/* 801664DC C8 02 9C D8 */ lfd f0, lit_6179(r2)
/* 801664E0 FC 01 00 40 */ fcmpo cr0, f1, f0
/* 801664E4 40 80 00 10 */ bge lbl_801664F4
/* 801664E8 3C 60 80 45 */ lis r3, __float_nan@ha /* 0x80450AE0@ha */
/* 801664EC C0 23 0A E0 */ lfs f1, __float_nan@l(r3) /* 0x80450AE0@l */
/* 801664F0 48 00 00 70 */ b lbl_80166560
lbl_801664F4:
/* 801664F4 D0 21 00 40 */ stfs f1, 0x40(r1)
/* 801664F8 80 81 00 40 */ lwz r4, 0x40(r1)
/* 801664FC 54 83 00 50 */ rlwinm r3, r4, 0, 1, 8
/* 80166500 3C 00 7F 80 */ lis r0, 0x7f80
/* 80166504 7C 03 00 00 */ cmpw r3, r0
/* 80166508 41 82 00 14 */ beq lbl_8016651C
/* 8016650C 40 80 00 40 */ bge lbl_8016654C
/* 80166510 2C 03 00 00 */ cmpwi r3, 0
/* 80166514 41 82 00 20 */ beq lbl_80166534
/* 80166518 48 00 00 34 */ b lbl_8016654C
lbl_8016651C:
/* 8016651C 54 80 02 7F */ clrlwi. r0, r4, 9
/* 80166520 41 82 00 0C */ beq lbl_8016652C
/* 80166524 38 00 00 01 */ li r0, 1
/* 80166528 48 00 00 28 */ b lbl_80166550
lbl_8016652C:
/* 8016652C 38 00 00 02 */ li r0, 2
/* 80166530 48 00 00 20 */ b lbl_80166550
lbl_80166534:
/* 80166534 54 80 02 7F */ clrlwi. r0, r4, 9
/* 80166538 41 82 00 0C */ beq lbl_80166544
/* 8016653C 38 00 00 05 */ li r0, 5
/* 80166540 48 00 00 10 */ b lbl_80166550
lbl_80166544:
/* 80166544 38 00 00 03 */ li r0, 3
/* 80166548 48 00 00 08 */ b lbl_80166550
lbl_8016654C:
/* 8016654C 38 00 00 04 */ li r0, 4
lbl_80166550:
/* 80166550 2C 00 00 01 */ cmpwi r0, 1
/* 80166554 40 82 00 0C */ bne lbl_80166560
/* 80166558 3C 60 80 45 */ lis r3, __float_nan@ha /* 0x80450AE0@ha */
/* 8016655C C0 23 0A E0 */ lfs f1, __float_nan@l(r3) /* 0x80450AE0@l */
lbl_80166560:
/* 80166560 C0 02 9C A8 */ lfs f0, lit_5658(r2)
/* 80166564 FC 01 00 40 */ fcmpo cr0, f1, f0
/* 80166568 40 80 00 20 */ bge lbl_80166588
/* 8016656C C0 01 01 4C */ lfs f0, 0x14c(r1)
/* 80166570 D0 01 01 28 */ stfs f0, 0x128(r1)
/* 80166574 C0 01 01 50 */ lfs f0, 0x150(r1)
/* 80166578 D0 01 01 2C */ stfs f0, 0x12c(r1)
/* 8016657C C0 01 01 54 */ lfs f0, 0x154(r1)
/* 80166580 D0 01 01 30 */ stfs f0, 0x130(r1)
/* 80166584 48 00 00 48 */ b lbl_801665CC
lbl_80166588:
/* 80166588 38 61 00 8C */ addi r3, r1, 0x8c
/* 8016658C 38 81 01 1C */ addi r4, r1, 0x11c
/* 80166590 48 10 07 55 */ bl norm__4cXyzCFv
/* 80166594 38 61 00 80 */ addi r3, r1, 0x80
/* 80166598 38 81 00 8C */ addi r4, r1, 0x8c
/* 8016659C C0 3E 0A A8 */ lfs f1, 0xaa8(r30)
/* 801665A0 48 10 05 E5 */ bl __ml__4cXyzCFf
/* 801665A4 38 61 00 74 */ addi r3, r1, 0x74
/* 801665A8 38 81 01 4C */ addi r4, r1, 0x14c
/* 801665AC 38 A1 00 80 */ addi r5, r1, 0x80
/* 801665B0 48 10 05 85 */ bl __mi__4cXyzCFRC3Vec
/* 801665B4 C0 01 00 74 */ lfs f0, 0x74(r1)
/* 801665B8 D0 01 01 28 */ stfs f0, 0x128(r1)
/* 801665BC C0 01 00 78 */ lfs f0, 0x78(r1)
/* 801665C0 D0 01 01 2C */ stfs f0, 0x12c(r1)
/* 801665C4 C0 01 00 7C */ lfs f0, 0x7c(r1)
/* 801665C8 D0 01 01 30 */ stfs f0, 0x130(r1)
lbl_801665CC:
/* 801665CC C0 01 01 28 */ lfs f0, 0x128(r1)
/* 801665D0 D0 01 01 4C */ stfs f0, 0x14c(r1)
/* 801665D4 C0 01 01 2C */ lfs f0, 0x12c(r1)
/* 801665D8 D0 01 01 50 */ stfs f0, 0x150(r1)
/* 801665DC C0 01 01 30 */ lfs f0, 0x130(r1)
/* 801665E0 D0 01 01 54 */ stfs f0, 0x154(r1)
/* 801665E4 7F C3 F3 78 */ mr r3, r30
/* 801665E8 38 81 01 28 */ addi r4, r1, 0x128
/* 801665EC 4B FF F2 01 */ bl groundHeight__9dCamera_cFP4cXyz
/* 801665F0 EC 1F 08 2A */ fadds f0, f31, f1
/* 801665F4 D0 01 01 50 */ stfs f0, 0x150(r1)
/* 801665F8 38 61 00 68 */ addi r3, r1, 0x68
/* 801665FC 38 81 01 4C */ addi r4, r1, 0x14c
/* 80166600 38 A1 01 58 */ addi r5, r1, 0x158
/* 80166604 48 10 05 31 */ bl __mi__4cXyzCFRC3Vec
/* 80166608 38 61 00 48 */ addi r3, r1, 0x48
/* 8016660C 38 81 00 68 */ addi r4, r1, 0x68
/* 80166610 48 10 B2 71 */ bl __ct__7cSGlobeFRC4cXyz
/* 80166614 38 81 00 4C */ addi r4, r1, 0x4c
/* 80166618 A8 61 00 4C */ lha r3, 0x4c(r1)
/* 8016661C A8 0D 8C 08 */ lha r0, _0__7cSAngle(r13)
/* 80166620 7C 03 00 00 */ cmpw r3, r0
/* 80166624 41 80 00 1C */ blt lbl_80166640
/* 80166628 38 61 00 20 */ addi r3, r1, 0x20
/* 8016662C C0 3E 0A A0 */ lfs f1, 0xaa0(r30)
/* 80166630 48 10 AC 35 */ bl __ml__7cSAngleCFf
/* 80166634 A8 01 00 20 */ lha r0, 0x20(r1)
/* 80166638 B0 01 00 34 */ sth r0, 0x34(r1)
/* 8016663C 48 00 00 18 */ b lbl_80166654
lbl_80166640:
/* 80166640 38 61 00 1C */ addi r3, r1, 0x1c
/* 80166644 C0 3E 0A A4 */ lfs f1, 0xaa4(r30)
/* 80166648 48 10 AC 1D */ bl __ml__7cSAngleCFf
/* 8016664C A8 01 00 1C */ lha r0, 0x1c(r1)
/* 80166650 B0 01 00 34 */ sth r0, 0x34(r1)
lbl_80166654:
/* 80166654 A8 81 00 38 */ lha r4, 0x38(r1)
/* 80166658 A8 0D 8C 08 */ lha r0, _0__7cSAngle(r13)
/* 8016665C 7C 04 00 00 */ cmpw r4, r0
/* 80166660 41 80 00 48 */ blt lbl_801666A8
/* 80166664 A8 61 00 34 */ lha r3, 0x34(r1)
/* 80166668 7C 03 00 00 */ cmpw r3, r0
/* 8016666C 41 80 00 3C */ blt lbl_801666A8
/* 80166670 7C 04 18 00 */ cmpw r4, r3
/* 80166674 41 80 00 18 */ blt lbl_8016668C
/* 80166678 38 61 00 18 */ addi r3, r1, 0x18
/* 8016667C 38 81 00 38 */ addi r4, r1, 0x38
/* 80166680 48 10 AA C9 */ bl __mi__7cSAngleCFv
/* 80166684 38 61 00 18 */ addi r3, r1, 0x18
/* 80166688 48 00 00 14 */ b lbl_8016669C
lbl_8016668C:
/* 8016668C 38 61 00 14 */ addi r3, r1, 0x14
/* 80166690 38 81 00 34 */ addi r4, r1, 0x34
/* 80166694 48 10 AA B5 */ bl __mi__7cSAngleCFv
/* 80166698 38 61 00 14 */ addi r3, r1, 0x14
lbl_8016669C:
/* 8016669C A8 03 00 00 */ lha r0, 0(r3)
/* 801666A0 B0 01 00 3C */ sth r0, 0x3c(r1)
/* 801666A4 48 00 00 64 */ b lbl_80166708
lbl_801666A8:
/* 801666A8 7C 04 00 00 */ cmpw r4, r0
/* 801666AC 41 81 00 48 */ bgt lbl_801666F4
/* 801666B0 A8 61 00 34 */ lha r3, 0x34(r1)
/* 801666B4 7C 03 00 00 */ cmpw r3, r0
/* 801666B8 41 81 00 3C */ bgt lbl_801666F4
/* 801666BC 7C 04 18 00 */ cmpw r4, r3
/* 801666C0 41 81 00 18 */ bgt lbl_801666D8
/* 801666C4 38 61 00 10 */ addi r3, r1, 0x10
/* 801666C8 38 81 00 38 */ addi r4, r1, 0x38
/* 801666CC 48 10 AA 7D */ bl __mi__7cSAngleCFv
/* 801666D0 38 61 00 10 */ addi r3, r1, 0x10
/* 801666D4 48 00 00 14 */ b lbl_801666E8
lbl_801666D8:
/* 801666D8 38 61 00 0C */ addi r3, r1, 0xc
/* 801666DC 38 81 00 34 */ addi r4, r1, 0x34
/* 801666E0 48 10 AA 69 */ bl __mi__7cSAngleCFv
/* 801666E4 38 61 00 0C */ addi r3, r1, 0xc
lbl_801666E8:
/* 801666E8 A8 03 00 00 */ lha r0, 0(r3)
/* 801666EC B0 01 00 3C */ sth r0, 0x3c(r1)
/* 801666F0 48 00 00 18 */ b lbl_80166708
lbl_801666F4:
/* 801666F4 38 61 00 08 */ addi r3, r1, 8
/* 801666F8 38 81 00 38 */ addi r4, r1, 0x38
/* 801666FC 48 10 AA 4D */ bl __mi__7cSAngleCFv
/* 80166700 A8 01 00 08 */ lha r0, 8(r1)
/* 80166704 B0 01 00 3C */ sth r0, 0x3c(r1)
lbl_80166708:
/* 80166708 A8 61 00 3C */ lha r3, 0x3c(r1)
/* 8016670C A8 0D 8C 08 */ lha r0, _0__7cSAngle(r13)
/* 80166710 7C 03 00 00 */ cmpw r3, r0
/* 80166714 41 81 00 10 */ bgt lbl_80166724
/* 80166718 38 61 00 3C */ addi r3, r1, 0x3c
/* 8016671C C0 22 9D 24 */ lfs f1, lit_8530(r2)
/* 80166720 48 10 AB 95 */ bl __amu__7cSAngleFf
lbl_80166724:
/* 80166724 7F A3 EB 78 */ mr r3, r29
/* 80166728 38 81 00 3C */ addi r4, r1, 0x3c
/* 8016672C 48 10 A8 3D */ bl __ct__7cSAngleFRC7cSAngle
/* 80166730 38 61 01 64 */ addi r3, r1, 0x164
/* 80166734 38 80 FF FF */ li r4, -1
/* 80166738 4B F1 16 C9 */ bl __dt__14dBgS_CamLinChkFv
/* 8016673C E3 E1 02 08 */ psq_l f31, 520(r1), 0, 0 /* qr0 */
/* 80166740 CB E1 02 00 */ lfd f31, 0x200(r1)
/* 80166744 E3 C1 01 F8 */ psq_l f30, 504(r1), 0, 0 /* qr0 */
/* 80166748 CB C1 01 F0 */ lfd f30, 0x1f0(r1)
/* 8016674C 39 61 01 F0 */ addi r11, r1, 0x1f0
/* 80166750 48 1F BA D5 */ bl _restgpr_28
/* 80166754 80 01 02 14 */ lwz r0, 0x214(r1)
/* 80166758 7C 08 03 A6 */ mtlr r0
/* 8016675C 38 21 02 10 */ addi r1, r1, 0x210
/* 80166760 4E 80 00 20 */ blr