mirror of https://github.com/zeldaret/tp.git
391 lines
20 KiB
ArmAsm
391 lines
20 KiB
ArmAsm
/* 80165238 00162178 94 21 FE B0 */ stwu r1, -0x150(r1)
|
|
/* 8016523C 0016217C 7C 08 02 A6 */ mflr r0
|
|
/* 80165240 00162180 90 01 01 54 */ stw r0, 0x154(r1)
|
|
/* 80165244 00162184 DB E1 01 40 */ stfd f31, 0x140(r1)
|
|
/* 80165248 00162188 F3 E1 01 48 */ psq_st f31, 328(r1), 0, 0
|
|
/* 8016524C 0016218C DB C1 01 30 */ stfd f30, 0x130(r1)
|
|
/* 80165250 00162190 F3 C1 01 38 */ psq_st f30, 312(r1), 0, 0
|
|
/* 80165254 00162194 DB A1 01 20 */ stfd f29, 0x120(r1)
|
|
/* 80165258 00162198 F3 A1 01 28 */ psq_st f29, 296(r1), 0, 0
|
|
/* 8016525C 0016219C DB 81 01 10 */ stfd f28, 0x110(r1)
|
|
/* 80165260 001621A0 F3 81 01 18 */ psq_st f28, 280(r1), 0, 0
|
|
/* 80165264 001621A4 DB 61 01 00 */ stfd f27, 0x100(r1)
|
|
/* 80165268 001621A8 F3 61 01 08 */ psq_st f27, 264(r1), 0, 0
|
|
/* 8016526C 001621AC 39 61 01 00 */ addi r11, r1, 0x100
|
|
/* 80165270 001621B0 48 1F CF 61 */ bl _savegpr_26
|
|
/* 80165274 001621B4 7C 7A 1B 78 */ mr r26, r3
|
|
/* 80165278 001621B8 7C 9B 23 78 */ mr r27, r4
|
|
/* 8016527C 001621BC 7C BC 2B 78 */ mr r28, r5
|
|
/* 80165280 001621C0 7C DD 33 78 */ mr r29, r6
|
|
/* 80165284 001621C4 7C FE 3B 78 */ mr r30, r7
|
|
/* 80165288 001621C8 FF 80 08 90 */ fmr f28, f1
|
|
/* 8016528C 001621CC 7D 1F 43 78 */ mr r31, r8
|
|
/* 80165290 001621D0 FF 60 10 90 */ fmr f27, f2
|
|
/* 80165294 001621D4 80 63 00 00 */ lwz r3, 0(r3)
|
|
/* 80165298 001621D8 4B EB 90 71 */ bl fopCamM_GetParam
|
|
/* 8016529C 001621DC 3C 80 80 40 */ lis r4, g_dComIfG_gameInfo@ha
|
|
/* 801652A0 001621E0 38 84 61 C0 */ addi r4, r4, g_dComIfG_gameInfo@l
|
|
/* 801652A4 001621E4 1C 03 00 38 */ mulli r0, r3, 0x38
|
|
/* 801652A8 001621E8 7C 64 02 14 */ add r3, r4, r0
|
|
/* 801652AC 001621EC 88 03 5D 78 */ lbz r0, 0x5d78(r3)
|
|
/* 801652B0 001621F0 7C 00 07 74 */ extsb r0, r0
|
|
/* 801652B4 001621F4 1C 00 00 2C */ mulli r0, r0, 0x2c
|
|
/* 801652B8 001621F8 7C 64 02 14 */ add r3, r4, r0
|
|
/* 801652BC 001621FC 38 63 5D 60 */ addi r3, r3, 0x5d60
|
|
/* 801652C0 00162200 C0 22 9C 90 */ lfs f1, lbl_80453690-_SDA2_BASE_(r2)
|
|
/* 801652C4 00162204 C0 02 9C F4 */ lfs f0, lbl_804536F4-_SDA2_BASE_(r2)
|
|
/* 801652C8 00162208 EC 00 07 32 */ fmuls f0, f0, f28
|
|
/* 801652CC 0016220C EC 61 00 32 */ fmuls f3, f1, f0
|
|
/* 801652D0 00162210 C0 23 00 0C */ lfs f1, 0xc(r3)
|
|
/* 801652D4 00162214 C0 02 9C F8 */ lfs f0, lbl_804536F8-_SDA2_BASE_(r2)
|
|
/* 801652D8 00162218 C0 5A 09 20 */ lfs f2, 0x920(r26)
|
|
/* 801652DC 0016221C EC 00 00 B2 */ fmuls f0, f0, f2
|
|
/* 801652E0 00162220 EC 21 00 28 */ fsubs f1, f1, f0
|
|
/* 801652E4 00162224 C0 02 9C FC */ lfs f0, lbl_804536FC-_SDA2_BASE_(r2)
|
|
/* 801652E8 00162228 EC 01 00 24 */ fdivs f0, f1, f0
|
|
/* 801652EC 0016222C EC 23 00 32 */ fmuls f1, f3, f0
|
|
/* 801652F0 00162230 C0 02 9C E0 */ lfs f0, lbl_804536E0-_SDA2_BASE_(r2)
|
|
/* 801652F4 00162234 FC 02 00 40 */ fcmpo cr0, f2, f0
|
|
/* 801652F8 00162238 40 80 00 0C */ bge lbl_80165304
|
|
/* 801652FC 0016223C C0 02 9D 00 */ lfs f0, lbl_80453700-_SDA2_BASE_(r2)
|
|
/* 80165300 00162240 48 00 00 08 */ b lbl_80165308
|
|
lbl_80165304:
|
|
/* 80165304 00162244 C0 02 9C A8 */ lfs f0, lbl_804536A8-_SDA2_BASE_(r2)
|
|
lbl_80165308:
|
|
/* 80165308 00162248 EF E1 00 32 */ fmuls f31, f1, f0
|
|
/* 8016530C 0016224C C0 1A 09 2C */ lfs f0, 0x92c(r26)
|
|
/* 80165310 00162250 EC 63 00 32 */ fmuls f3, f3, f0
|
|
/* 80165314 00162254 C0 42 9D 04 */ lfs f2, lbl_80453704-_SDA2_BASE_(r2)
|
|
/* 80165318 00162258 C0 23 00 08 */ lfs f1, 8(r3)
|
|
/* 8016531C 0016225C C0 02 9D 08 */ lfs f0, lbl_80453708-_SDA2_BASE_(r2)
|
|
/* 80165320 00162260 EC 01 00 24 */ fdivs f0, f1, f0
|
|
/* 80165324 00162264 EC 03 00 32 */ fmuls f0, f3, f0
|
|
/* 80165328 00162268 EF C2 00 32 */ fmuls f30, f2, f0
|
|
/* 8016532C 0016226C 38 61 00 78 */ addi r3, r1, 0x78
|
|
/* 80165330 00162270 7F 44 D3 78 */ mr r4, r26
|
|
/* 80165334 00162274 7F 65 DB 78 */ mr r5, r27
|
|
/* 80165338 00162278 4B F3 23 E5 */ bl dCamera_c_NS_attentionPos
|
|
/* 8016533C 0016227C C0 01 00 78 */ lfs f0, 0x78(r1)
|
|
/* 80165340 00162280 D0 01 00 9C */ stfs f0, 0x9c(r1)
|
|
/* 80165344 00162284 C0 01 00 7C */ lfs f0, 0x7c(r1)
|
|
/* 80165348 00162288 D0 01 00 A0 */ stfs f0, 0xa0(r1)
|
|
/* 8016534C 0016228C C0 01 00 80 */ lfs f0, 0x80(r1)
|
|
/* 80165350 00162290 D0 01 00 A4 */ stfs f0, 0xa4(r1)
|
|
/* 80165354 00162294 38 61 00 6C */ addi r3, r1, 0x6c
|
|
/* 80165358 00162298 7F 44 D3 78 */ mr r4, r26
|
|
/* 8016535C 0016229C 7F 65 DB 78 */ mr r5, r27
|
|
/* 80165360 001622A0 4B F3 23 FD */ bl dCamera_c_NS_positionOf
|
|
/* 80165364 001622A4 38 61 00 60 */ addi r3, r1, 0x60
|
|
/* 80165368 001622A8 7F 44 D3 78 */ mr r4, r26
|
|
/* 8016536C 001622AC 7F 65 DB 78 */ mr r5, r27
|
|
/* 80165370 001622B0 4B F3 23 AD */ bl dCamera_c_NS_attentionPos
|
|
/* 80165374 001622B4 C0 61 00 A0 */ lfs f3, 0xa0(r1)
|
|
/* 80165378 001622B8 C0 42 9C 90 */ lfs f2, lbl_80453690-_SDA2_BASE_(r2)
|
|
/* 8016537C 001622BC C0 21 00 70 */ lfs f1, 0x70(r1)
|
|
/* 80165380 001622C0 C0 01 00 64 */ lfs f0, 0x64(r1)
|
|
/* 80165384 001622C4 EC 01 00 28 */ fsubs f0, f1, f0
|
|
/* 80165388 001622C8 EC 02 00 32 */ fmuls f0, f2, f0
|
|
/* 8016538C 001622CC EC 03 00 2A */ fadds f0, f3, f0
|
|
/* 80165390 001622D0 D0 01 00 A0 */ stfs f0, 0xa0(r1)
|
|
/* 80165394 001622D4 38 61 00 54 */ addi r3, r1, 0x54
|
|
/* 80165398 001622D8 7F 44 D3 78 */ mr r4, r26
|
|
/* 8016539C 001622DC 7F 85 E3 78 */ mr r5, r28
|
|
/* 801653A0 001622E0 4B F3 23 7D */ bl dCamera_c_NS_attentionPos
|
|
/* 801653A4 001622E4 C0 01 00 54 */ lfs f0, 0x54(r1)
|
|
/* 801653A8 001622E8 D0 01 00 90 */ stfs f0, 0x90(r1)
|
|
/* 801653AC 001622EC C0 01 00 58 */ lfs f0, 0x58(r1)
|
|
/* 801653B0 001622F0 D0 01 00 94 */ stfs f0, 0x94(r1)
|
|
/* 801653B4 001622F4 C0 01 00 5C */ lfs f0, 0x5c(r1)
|
|
/* 801653B8 001622F8 D0 01 00 98 */ stfs f0, 0x98(r1)
|
|
/* 801653BC 001622FC 38 61 00 48 */ addi r3, r1, 0x48
|
|
/* 801653C0 00162300 7F 44 D3 78 */ mr r4, r26
|
|
/* 801653C4 00162304 7F 85 E3 78 */ mr r5, r28
|
|
/* 801653C8 00162308 4B F3 23 95 */ bl dCamera_c_NS_positionOf
|
|
/* 801653CC 0016230C 38 61 00 3C */ addi r3, r1, 0x3c
|
|
/* 801653D0 00162310 7F 44 D3 78 */ mr r4, r26
|
|
/* 801653D4 00162314 7F 85 E3 78 */ mr r5, r28
|
|
/* 801653D8 00162318 4B F3 23 45 */ bl dCamera_c_NS_attentionPos
|
|
/* 801653DC 0016231C C0 61 00 94 */ lfs f3, 0x94(r1)
|
|
/* 801653E0 00162320 C0 42 9C 90 */ lfs f2, lbl_80453690-_SDA2_BASE_(r2)
|
|
/* 801653E4 00162324 C0 21 00 4C */ lfs f1, 0x4c(r1)
|
|
/* 801653E8 00162328 C0 01 00 40 */ lfs f0, 0x40(r1)
|
|
/* 801653EC 0016232C EC 01 00 28 */ fsubs f0, f1, f0
|
|
/* 801653F0 00162330 EC 02 00 32 */ fmuls f0, f2, f0
|
|
/* 801653F4 00162334 EC 03 00 2A */ fadds f0, f3, f0
|
|
/* 801653F8 00162338 D0 01 00 94 */ stfs f0, 0x94(r1)
|
|
/* 801653FC 0016233C 38 61 00 30 */ addi r3, r1, 0x30
|
|
/* 80165400 00162340 38 81 00 9C */ addi r4, r1, 0x9c
|
|
/* 80165404 00162344 38 A1 00 90 */ addi r5, r1, 0x90
|
|
/* 80165408 00162348 48 10 17 2D */ bl __mi__4cXyzCFRC3Vec
|
|
/* 8016540C 0016234C C0 01 00 30 */ lfs f0, 0x30(r1)
|
|
/* 80165410 00162350 D0 01 00 84 */ stfs f0, 0x84(r1)
|
|
/* 80165414 00162354 C0 01 00 34 */ lfs f0, 0x34(r1)
|
|
/* 80165418 00162358 D0 01 00 88 */ stfs f0, 0x88(r1)
|
|
/* 8016541C 0016235C C0 01 00 38 */ lfs f0, 0x38(r1)
|
|
/* 80165420 00162360 D0 01 00 8C */ stfs f0, 0x8c(r1)
|
|
/* 80165424 00162364 38 61 00 84 */ addi r3, r1, 0x84
|
|
/* 80165428 00162368 48 1E 1D 11 */ bl PSVECSquareMag
|
|
/* 8016542C 0016236C C0 02 9C A0 */ lfs f0, lbl_804536A0-_SDA2_BASE_(r2)
|
|
/* 80165430 00162370 FC 01 00 40 */ fcmpo cr0, f1, f0
|
|
/* 80165434 00162374 40 81 00 58 */ ble lbl_8016548C
|
|
/* 80165438 00162378 FC 00 08 34 */ frsqrte f0, f1
|
|
/* 8016543C 0016237C C8 82 9C C8 */ lfd f4, lbl_804536C8-_SDA2_BASE_(r2)
|
|
/* 80165440 00162380 FC 44 00 32 */ fmul f2, f4, f0
|
|
/* 80165444 00162384 C8 62 9C D0 */ lfd f3, lbl_804536D0-_SDA2_BASE_(r2)
|
|
/* 80165448 00162388 FC 00 00 32 */ fmul f0, f0, f0
|
|
/* 8016544C 0016238C FC 01 00 32 */ fmul f0, f1, f0
|
|
/* 80165450 00162390 FC 03 00 28 */ fsub f0, f3, f0
|
|
/* 80165454 00162394 FC 02 00 32 */ fmul f0, f2, f0
|
|
/* 80165458 00162398 FC 44 00 32 */ fmul f2, f4, f0
|
|
/* 8016545C 0016239C FC 00 00 32 */ fmul f0, f0, f0
|
|
/* 80165460 001623A0 FC 01 00 32 */ fmul f0, f1, f0
|
|
/* 80165464 001623A4 FC 03 00 28 */ fsub f0, f3, f0
|
|
/* 80165468 001623A8 FC 02 00 32 */ fmul f0, f2, f0
|
|
/* 8016546C 001623AC FC 44 00 32 */ fmul f2, f4, f0
|
|
/* 80165470 001623B0 FC 00 00 32 */ fmul f0, f0, f0
|
|
/* 80165474 001623B4 FC 01 00 32 */ fmul f0, f1, f0
|
|
/* 80165478 001623B8 FC 03 00 28 */ fsub f0, f3, f0
|
|
/* 8016547C 001623BC FC 02 00 32 */ fmul f0, f2, f0
|
|
/* 80165480 001623C0 FC 21 00 32 */ fmul f1, f1, f0
|
|
/* 80165484 001623C4 FC 20 08 18 */ frsp f1, f1
|
|
/* 80165488 001623C8 48 00 00 88 */ b lbl_80165510
|
|
lbl_8016548C:
|
|
/* 8016548C 001623CC C8 02 9C D8 */ lfd f0, lbl_804536D8-_SDA2_BASE_(r2)
|
|
/* 80165490 001623D0 FC 01 00 40 */ fcmpo cr0, f1, f0
|
|
/* 80165494 001623D4 40 80 00 10 */ bge lbl_801654A4
|
|
/* 80165498 001623D8 3C 60 80 45 */ lis r3, lbl_80450AE0@ha
|
|
/* 8016549C 001623DC C0 23 0A E0 */ lfs f1, lbl_80450AE0@l(r3)
|
|
/* 801654A0 001623E0 48 00 00 70 */ b lbl_80165510
|
|
lbl_801654A4:
|
|
/* 801654A4 001623E4 D0 21 00 08 */ stfs f1, 8(r1)
|
|
/* 801654A8 001623E8 80 81 00 08 */ lwz r4, 8(r1)
|
|
/* 801654AC 001623EC 54 83 00 50 */ rlwinm r3, r4, 0, 1, 8
|
|
/* 801654B0 001623F0 3C 00 7F 80 */ lis r0, 0x7f80
|
|
/* 801654B4 001623F4 7C 03 00 00 */ cmpw r3, r0
|
|
/* 801654B8 001623F8 41 82 00 14 */ beq lbl_801654CC
|
|
/* 801654BC 001623FC 40 80 00 40 */ bge lbl_801654FC
|
|
/* 801654C0 00162400 2C 03 00 00 */ cmpwi r3, 0
|
|
/* 801654C4 00162404 41 82 00 20 */ beq lbl_801654E4
|
|
/* 801654C8 00162408 48 00 00 34 */ b lbl_801654FC
|
|
lbl_801654CC:
|
|
/* 801654CC 0016240C 54 80 02 7F */ clrlwi. r0, r4, 9
|
|
/* 801654D0 00162410 41 82 00 0C */ beq lbl_801654DC
|
|
/* 801654D4 00162414 38 00 00 01 */ li r0, 1
|
|
/* 801654D8 00162418 48 00 00 28 */ b lbl_80165500
|
|
lbl_801654DC:
|
|
/* 801654DC 0016241C 38 00 00 02 */ li r0, 2
|
|
/* 801654E0 00162420 48 00 00 20 */ b lbl_80165500
|
|
lbl_801654E4:
|
|
/* 801654E4 00162424 54 80 02 7F */ clrlwi. r0, r4, 9
|
|
/* 801654E8 00162428 41 82 00 0C */ beq lbl_801654F4
|
|
/* 801654EC 0016242C 38 00 00 05 */ li r0, 5
|
|
/* 801654F0 00162430 48 00 00 10 */ b lbl_80165500
|
|
lbl_801654F4:
|
|
/* 801654F4 00162434 38 00 00 03 */ li r0, 3
|
|
/* 801654F8 00162438 48 00 00 08 */ b lbl_80165500
|
|
lbl_801654FC:
|
|
/* 801654FC 0016243C 38 00 00 04 */ li r0, 4
|
|
lbl_80165500:
|
|
/* 80165500 00162440 2C 00 00 01 */ cmpwi r0, 1
|
|
/* 80165504 00162444 40 82 00 0C */ bne lbl_80165510
|
|
/* 80165508 00162448 3C 60 80 45 */ lis r3, lbl_80450AE0@ha
|
|
/* 8016550C 0016244C C0 23 0A E0 */ lfs f1, lbl_80450AE0@l(r3)
|
|
lbl_80165510:
|
|
/* 80165510 00162450 C0 62 9C A8 */ lfs f3, lbl_804536A8-_SDA2_BASE_(r2)
|
|
/* 80165514 00162454 C0 02 9D 0C */ lfs f0, lbl_8045370C-_SDA2_BASE_(r2)
|
|
/* 80165518 00162458 EC 41 00 28 */ fsubs f2, f1, f0
|
|
/* 8016551C 0016245C C0 02 9D 10 */ lfs f0, lbl_80453710-_SDA2_BASE_(r2)
|
|
/* 80165520 00162460 EC 02 00 28 */ fsubs f0, f2, f0
|
|
/* 80165524 00162464 EC 43 00 28 */ fsubs f2, f3, f0
|
|
/* 80165528 00162468 C0 02 9D 14 */ lfs f0, lbl_80453714-_SDA2_BASE_(r2)
|
|
/* 8016552C 0016246C FC 02 00 40 */ fcmpo cr0, f2, f0
|
|
/* 80165530 00162470 40 80 00 08 */ bge lbl_80165538
|
|
/* 80165534 00162474 FC 40 00 90 */ fmr f2, f0
|
|
lbl_80165538:
|
|
/* 80165538 00162478 C0 02 9C A8 */ lfs f0, lbl_804536A8-_SDA2_BASE_(r2)
|
|
/* 8016553C 0016247C FC 02 00 40 */ fcmpo cr0, f2, f0
|
|
/* 80165540 00162480 40 81 00 08 */ ble lbl_80165548
|
|
/* 80165544 00162484 FC 40 00 90 */ fmr f2, f0
|
|
lbl_80165548:
|
|
/* 80165548 00162488 EC 1B 00 B2 */ fmuls f0, f27, f2
|
|
/* 8016554C 0016248C EF 61 00 32 */ fmuls f27, f1, f0
|
|
/* 80165550 00162490 38 61 00 24 */ addi r3, r1, 0x24
|
|
/* 80165554 00162494 38 81 00 84 */ addi r4, r1, 0x84
|
|
/* 80165558 00162498 48 10 19 9D */ bl normalize__4cXyzFv
|
|
/* 8016555C 0016249C 38 61 00 18 */ addi r3, r1, 0x18
|
|
/* 80165560 001624A0 38 81 00 84 */ addi r4, r1, 0x84
|
|
/* 80165564 001624A4 A8 1B 05 4E */ lha r0, 0x54e(r27)
|
|
/* 80165568 001624A8 C8 22 9C 98 */ lfd f1, lbl_80453698-_SDA2_BASE_(r2)
|
|
/* 8016556C 001624AC 6C 00 80 00 */ xoris r0, r0, 0x8000
|
|
/* 80165570 001624B0 90 01 00 DC */ stw r0, 0xdc(r1)
|
|
/* 80165574 001624B4 3C 00 43 30 */ lis r0, 0x4330
|
|
/* 80165578 001624B8 90 01 00 D8 */ stw r0, 0xd8(r1)
|
|
/* 8016557C 001624BC C8 01 00 D8 */ lfd f0, 0xd8(r1)
|
|
/* 80165580 001624C0 EC 00 08 28 */ fsubs f0, f0, f1
|
|
/* 80165584 001624C4 EC 20 D8 2A */ fadds f1, f0, f27
|
|
/* 80165588 001624C8 48 10 15 FD */ bl __ml__4cXyzCFf
|
|
/* 8016558C 001624CC 38 61 00 9C */ addi r3, r1, 0x9c
|
|
/* 80165590 001624D0 38 81 00 18 */ addi r4, r1, 0x18
|
|
/* 80165594 001624D4 7C 65 1B 78 */ mr r5, r3
|
|
/* 80165598 001624D8 48 1E 1A F9 */ bl PSVECAdd
|
|
/* 8016559C 001624DC 38 61 00 0C */ addi r3, r1, 0xc
|
|
/* 801655A0 001624E0 38 81 00 84 */ addi r4, r1, 0x84
|
|
/* 801655A4 001624E4 A8 1C 05 4E */ lha r0, 0x54e(r28)
|
|
/* 801655A8 001624E8 C8 22 9C 98 */ lfd f1, lbl_80453698-_SDA2_BASE_(r2)
|
|
/* 801655AC 001624EC 6C 00 80 00 */ xoris r0, r0, 0x8000
|
|
/* 801655B0 001624F0 90 01 00 E4 */ stw r0, 0xe4(r1)
|
|
/* 801655B4 001624F4 3C 00 43 30 */ lis r0, 0x4330
|
|
/* 801655B8 001624F8 90 01 00 E0 */ stw r0, 0xe0(r1)
|
|
/* 801655BC 001624FC C8 01 00 E0 */ lfd f0, 0xe0(r1)
|
|
/* 801655C0 00162500 EC 00 08 28 */ fsubs f0, f0, f1
|
|
/* 801655C4 00162504 EC 20 D8 2A */ fadds f1, f0, f27
|
|
/* 801655C8 00162508 48 10 15 BD */ bl __ml__4cXyzCFf
|
|
/* 801655CC 0016250C 38 61 00 90 */ addi r3, r1, 0x90
|
|
/* 801655D0 00162510 38 81 00 0C */ addi r4, r1, 0xc
|
|
/* 801655D4 00162514 7C 65 1B 78 */ mr r5, r3
|
|
/* 801655D8 00162518 48 1E 1A DD */ bl PSVECSubtract
|
|
/* 801655DC 0016251C 38 61 00 A8 */ addi r3, r1, 0xa8
|
|
/* 801655E0 00162520 7F C4 F3 78 */ mr r4, r30
|
|
/* 801655E4 00162524 7F A5 EB 78 */ mr r5, r29
|
|
/* 801655E8 00162528 38 DA 00 48 */ addi r6, r26, 0x48
|
|
/* 801655EC 0016252C 7F E7 FB 78 */ mr r7, r31
|
|
/* 801655F0 00162530 4B EA 71 21 */ bl mDoMtx_lookAt_X1_
|
|
/* 801655F4 00162534 38 61 00 A8 */ addi r3, r1, 0xa8
|
|
/* 801655F8 00162538 38 81 00 9C */ addi r4, r1, 0x9c
|
|
/* 801655FC 0016253C 7C 85 23 78 */ mr r5, r4
|
|
/* 80165600 00162540 48 1E 17 6D */ bl PSMTXMultVec
|
|
/* 80165604 00162544 38 61 00 A8 */ addi r3, r1, 0xa8
|
|
/* 80165608 00162548 38 81 00 90 */ addi r4, r1, 0x90
|
|
/* 8016560C 0016254C 7C 85 23 78 */ mr r5, r4
|
|
/* 80165610 00162550 48 1E 17 5D */ bl PSMTXMultVec
|
|
/* 80165614 00162554 3B 40 00 00 */ li r26, 0
|
|
/* 80165618 00162558 C0 21 00 9C */ lfs f1, 0x9c(r1)
|
|
/* 8016561C 0016255C C0 01 00 A4 */ lfs f0, 0xa4(r1)
|
|
/* 80165620 00162560 FC 40 00 50 */ fneg f2, f0
|
|
/* 80165624 00162564 48 10 21 F1 */ bl cM_atan2f
|
|
/* 80165628 00162568 FC 00 0A 10 */ fabs f0, f1
|
|
/* 8016562C 0016256C FF 60 00 18 */ frsp f27, f0
|
|
/* 80165630 00162570 C0 21 00 A0 */ lfs f1, 0xa0(r1)
|
|
/* 80165634 00162574 C0 01 00 A4 */ lfs f0, 0xa4(r1)
|
|
/* 80165638 00162578 FC 40 00 50 */ fneg f2, f0
|
|
/* 8016563C 0016257C 48 10 21 D9 */ bl cM_atan2f
|
|
/* 80165640 00162580 FC 00 0A 10 */ fabs f0, f1
|
|
/* 80165644 00162584 FC 00 00 18 */ frsp f0, f0
|
|
/* 80165648 00162588 FC 1B F0 40 */ fcmpo cr0, f27, f30
|
|
/* 8016564C 0016258C 40 81 00 08 */ ble lbl_80165654
|
|
/* 80165650 00162590 63 5A 00 01 */ ori r26, r26, 1
|
|
lbl_80165654:
|
|
/* 80165654 00162594 FC 00 F8 40 */ fcmpo cr0, f0, f31
|
|
/* 80165658 00162598 40 81 00 08 */ ble lbl_80165660
|
|
/* 8016565C 0016259C 63 5A 00 02 */ ori r26, r26, 2
|
|
lbl_80165660:
|
|
/* 80165660 001625A0 C0 21 00 90 */ lfs f1, 0x90(r1)
|
|
/* 80165664 001625A4 C0 01 00 98 */ lfs f0, 0x98(r1)
|
|
/* 80165668 001625A8 FC 40 00 50 */ fneg f2, f0
|
|
/* 8016566C 001625AC 48 10 21 A9 */ bl cM_atan2f
|
|
/* 80165670 001625B0 FC 00 0A 10 */ fabs f0, f1
|
|
/* 80165674 001625B4 FF 60 00 18 */ frsp f27, f0
|
|
/* 80165678 001625B8 C0 21 00 94 */ lfs f1, 0x94(r1)
|
|
/* 8016567C 001625BC C0 01 00 98 */ lfs f0, 0x98(r1)
|
|
/* 80165680 001625C0 FC 40 00 50 */ fneg f2, f0
|
|
/* 80165684 001625C4 48 10 21 91 */ bl cM_atan2f
|
|
/* 80165688 001625C8 FC 00 0A 10 */ fabs f0, f1
|
|
/* 8016568C 001625CC FC 00 00 18 */ frsp f0, f0
|
|
/* 80165690 001625D0 FC 1B F0 40 */ fcmpo cr0, f27, f30
|
|
/* 80165694 001625D4 40 81 00 08 */ ble lbl_8016569C
|
|
/* 80165698 001625D8 63 5A 00 04 */ ori r26, r26, 4
|
|
lbl_8016569C:
|
|
/* 8016569C 001625DC FC 00 F8 40 */ fcmpo cr0, f0, f31
|
|
/* 801656A0 001625E0 40 81 00 08 */ ble lbl_801656A8
|
|
/* 801656A4 001625E4 63 5A 00 08 */ ori r26, r26, 8
|
|
lbl_801656A8:
|
|
/* 801656A8 001625E8 2C 1A 00 00 */ cmpwi r26, 0
|
|
/* 801656AC 001625EC 40 82 00 0C */ bne lbl_801656B8
|
|
/* 801656B0 001625F0 C0 22 9C A0 */ lfs f1, lbl_804536A0-_SDA2_BASE_(r2)
|
|
/* 801656B4 001625F4 48 00 00 F8 */ b lbl_801657AC
|
|
lbl_801656B8:
|
|
/* 801656B8 001625F8 C3 A2 9C A0 */ lfs f29, lbl_804536A0-_SDA2_BASE_(r2)
|
|
/* 801656BC 001625FC C3 82 9C A8 */ lfs f28, lbl_804536A8-_SDA2_BASE_(r2)
|
|
/* 801656C0 00162600 FF 60 E0 90 */ fmr f27, f28
|
|
/* 801656C4 00162604 73 40 00 05 */ andi. r0, r26, 5
|
|
/* 801656C8 00162608 41 82 00 14 */ beq lbl_801656DC
|
|
/* 801656CC 0016260C FC 20 F0 90 */ fmr f1, f30
|
|
/* 801656D0 00162610 48 20 6F 99 */ bl func_8036C668
|
|
/* 801656D4 00162614 FC 00 08 18 */ frsp f0, f1
|
|
/* 801656D8 00162618 FF 80 00 90 */ fmr f28, f0
|
|
lbl_801656DC:
|
|
/* 801656DC 0016261C 73 40 00 0A */ andi. r0, r26, 0xa
|
|
/* 801656E0 00162620 41 82 00 14 */ beq lbl_801656F4
|
|
/* 801656E4 00162624 FC 20 F8 90 */ fmr f1, f31
|
|
/* 801656E8 00162628 48 20 6F 81 */ bl func_8036C668
|
|
/* 801656EC 0016262C FC 00 08 18 */ frsp f0, f1
|
|
/* 801656F0 00162630 FF 60 00 90 */ fmr f27, f0
|
|
lbl_801656F4:
|
|
/* 801656F4 00162634 57 40 07 FF */ clrlwi. r0, r26, 0x1f
|
|
/* 801656F8 00162638 41 82 00 2C */ beq lbl_80165724
|
|
/* 801656FC 0016263C C0 01 00 9C */ lfs f0, 0x9c(r1)
|
|
/* 80165700 00162640 FC 00 02 10 */ fabs f0, f0
|
|
/* 80165704 00162644 FC 00 00 18 */ frsp f0, f0
|
|
/* 80165708 00162648 C0 21 00 A4 */ lfs f1, 0xa4(r1)
|
|
/* 8016570C 0016264C EC 00 E0 24 */ fdivs f0, f0, f28
|
|
/* 80165710 00162650 EC 21 00 2A */ fadds f1, f1, f0
|
|
/* 80165714 00162654 C0 02 9C A0 */ lfs f0, lbl_804536A0-_SDA2_BASE_(r2)
|
|
/* 80165718 00162658 FC 01 00 40 */ fcmpo cr0, f1, f0
|
|
/* 8016571C 0016265C 40 81 00 08 */ ble lbl_80165724
|
|
/* 80165720 00162660 FF A0 08 90 */ fmr f29, f1
|
|
lbl_80165724:
|
|
/* 80165724 00162664 57 40 07 BD */ rlwinm. r0, r26, 0, 0x1e, 0x1e
|
|
/* 80165728 00162668 41 82 00 28 */ beq lbl_80165750
|
|
/* 8016572C 0016266C C0 01 00 A0 */ lfs f0, 0xa0(r1)
|
|
/* 80165730 00162670 FC 00 02 10 */ fabs f0, f0
|
|
/* 80165734 00162674 FC 00 00 18 */ frsp f0, f0
|
|
/* 80165738 00162678 C0 21 00 A4 */ lfs f1, 0xa4(r1)
|
|
/* 8016573C 0016267C EC 00 D8 24 */ fdivs f0, f0, f27
|
|
/* 80165740 00162680 EC 01 00 2A */ fadds f0, f1, f0
|
|
/* 80165744 00162684 FC 00 E8 40 */ fcmpo cr0, f0, f29
|
|
/* 80165748 00162688 40 81 00 08 */ ble lbl_80165750
|
|
/* 8016574C 0016268C FF A0 00 90 */ fmr f29, f0
|
|
lbl_80165750:
|
|
/* 80165750 00162690 57 40 07 7B */ rlwinm. r0, r26, 0, 0x1d, 0x1d
|
|
/* 80165754 00162694 41 82 00 28 */ beq lbl_8016577C
|
|
/* 80165758 00162698 C0 01 00 90 */ lfs f0, 0x90(r1)
|
|
/* 8016575C 0016269C FC 00 02 10 */ fabs f0, f0
|
|
/* 80165760 001626A0 FC 00 00 18 */ frsp f0, f0
|
|
/* 80165764 001626A4 C0 21 00 98 */ lfs f1, 0x98(r1)
|
|
/* 80165768 001626A8 EC 00 E0 24 */ fdivs f0, f0, f28
|
|
/* 8016576C 001626AC EC 01 00 2A */ fadds f0, f1, f0
|
|
/* 80165770 001626B0 FC 00 E8 40 */ fcmpo cr0, f0, f29
|
|
/* 80165774 001626B4 40 81 00 08 */ ble lbl_8016577C
|
|
/* 80165778 001626B8 FF A0 00 90 */ fmr f29, f0
|
|
lbl_8016577C:
|
|
/* 8016577C 001626BC 57 40 07 39 */ rlwinm. r0, r26, 0, 0x1c, 0x1c
|
|
/* 80165780 001626C0 41 82 00 28 */ beq lbl_801657A8
|
|
/* 80165784 001626C4 C0 01 00 94 */ lfs f0, 0x94(r1)
|
|
/* 80165788 001626C8 FC 00 02 10 */ fabs f0, f0
|
|
/* 8016578C 001626CC FC 00 00 18 */ frsp f0, f0
|
|
/* 80165790 001626D0 C0 21 00 98 */ lfs f1, 0x98(r1)
|
|
/* 80165794 001626D4 EC 00 D8 24 */ fdivs f0, f0, f27
|
|
/* 80165798 001626D8 EC 01 00 2A */ fadds f0, f1, f0
|
|
/* 8016579C 001626DC FC 00 E8 40 */ fcmpo cr0, f0, f29
|
|
/* 801657A0 001626E0 40 81 00 08 */ ble lbl_801657A8
|
|
/* 801657A4 001626E4 FF A0 00 90 */ fmr f29, f0
|
|
lbl_801657A8:
|
|
/* 801657A8 001626E8 FC 20 E8 90 */ fmr f1, f29
|
|
lbl_801657AC:
|
|
/* 801657AC 001626EC E3 E1 01 48 */ psq_l f31, 328(r1), 0, 0
|
|
/* 801657B0 001626F0 CB E1 01 40 */ lfd f31, 0x140(r1)
|
|
/* 801657B4 001626F4 E3 C1 01 38 */ psq_l f30, 312(r1), 0, 0
|
|
/* 801657B8 001626F8 CB C1 01 30 */ lfd f30, 0x130(r1)
|
|
/* 801657BC 001626FC E3 A1 01 28 */ psq_l f29, 296(r1), 0, 0
|
|
/* 801657C0 00162700 CB A1 01 20 */ lfd f29, 0x120(r1)
|
|
/* 801657C4 00162704 E3 81 01 18 */ psq_l f28, 280(r1), 0, 0
|
|
/* 801657C8 00162708 CB 81 01 10 */ lfd f28, 0x110(r1)
|
|
/* 801657CC 0016270C E3 61 01 08 */ psq_l f27, 264(r1), 0, 0
|
|
/* 801657D0 00162710 CB 61 01 00 */ lfd f27, 0x100(r1)
|
|
/* 801657D4 00162714 39 61 01 00 */ addi r11, r1, 0x100
|
|
/* 801657D8 00162718 48 1F CA 45 */ bl _restgpr_26
|
|
/* 801657DC 0016271C 80 01 01 54 */ lwz r0, 0x154(r1)
|
|
/* 801657E0 00162720 7C 08 03 A6 */ mtlr r0
|
|
/* 801657E4 00162724 38 21 01 50 */ addi r1, r1, 0x150
|
|
/* 801657E8 00162728 4E 80 00 20 */ blr
|