mirror of https://github.com/zeldaret/tp.git
c_m3d, c_request OK. Work on Z2Audience (#1900)
This commit is contained in:
parent
6a4e50e74b
commit
4c5c3a8964
|
|
@ -1,10 +0,0 @@
|
|||
lbl_802A0A6C:
|
||||
/* 802A0A6C 88 03 02 15 */ lbz r0, 0x215(r3)
|
||||
/* 802A0A70 54 00 06 3F */ clrlwi. r0, r0, 0x18
|
||||
/* 802A0A74 38 60 00 00 */ li r3, 0
|
||||
/* 802A0A78 41 82 00 0C */ beq lbl_802A0A84
|
||||
/* 802A0A7C 28 00 00 02 */ cmplwi r0, 2
|
||||
/* 802A0A80 4C 82 00 20 */ bnelr
|
||||
lbl_802A0A84:
|
||||
/* 802A0A84 38 60 00 01 */ li r3, 1
|
||||
/* 802A0A88 4E 80 00 20 */ blr
|
||||
|
|
@ -1,219 +0,0 @@
|
|||
lbl_80268260:
|
||||
/* 80268260 94 21 FF F0 */ stwu r1, -0x10(r1)
|
||||
/* 80268264 C0 03 00 00 */ lfs f0, 0(r3)
|
||||
/* 80268268 EC E1 00 28 */ fsubs f7, f1, f0
|
||||
/* 8026826C C0 03 00 04 */ lfs f0, 4(r3)
|
||||
/* 80268270 ED 02 00 28 */ fsubs f8, f2, f0
|
||||
/* 80268274 EC C3 00 F2 */ fmuls f6, f3, f3
|
||||
/* 80268278 EC 04 01 32 */ fmuls f0, f4, f4
|
||||
/* 8026827C ED 46 00 2A */ fadds f10, f6, f0
|
||||
/* 80268280 C1 22 B6 F0 */ lfs f9, lit_2266(r2)
|
||||
/* 80268284 EC C3 01 F2 */ fmuls f6, f3, f7
|
||||
/* 80268288 EC 04 02 32 */ fmuls f0, f4, f8
|
||||
/* 8026828C EC 06 00 2A */ fadds f0, f6, f0
|
||||
/* 80268290 EC 09 00 32 */ fmuls f0, f9, f0
|
||||
/* 80268294 EC E7 01 F2 */ fmuls f7, f7, f7
|
||||
/* 80268298 EC C8 02 32 */ fmuls f6, f8, f8
|
||||
/* 8026829C EC E7 30 2A */ fadds f7, f7, f6
|
||||
/* 802682A0 C0 C3 00 08 */ lfs f6, 8(r3)
|
||||
/* 802682A4 EC C6 01 B2 */ fmuls f6, f6, f6
|
||||
/* 802682A8 ED 67 30 28 */ fsubs f11, f7, f6
|
||||
/* 802682AC FC C0 52 10 */ fabs f6, f10
|
||||
/* 802682B0 FC C0 30 18 */ frsp f6, f6
|
||||
/* 802682B4 C1 0D 8C 00 */ lfs f8, G_CM3D_F_ABS_MIN(r13)
|
||||
/* 802682B8 FC 06 40 40 */ fcmpo cr0, f6, f8
|
||||
/* 802682BC 40 80 00 20 */ bge lbl_802682DC
|
||||
/* 802682C0 FC C0 02 10 */ fabs f6, f0
|
||||
/* 802682C4 FC C0 30 18 */ frsp f6, f6
|
||||
/* 802682C8 FC 06 40 40 */ fcmpo cr0, f6, f8
|
||||
/* 802682CC 41 80 02 54 */ blt lbl_80268520
|
||||
/* 802682D0 FC A0 58 50 */ fneg f5, f11
|
||||
/* 802682D4 EC A5 00 24 */ fdivs f5, f5, f0
|
||||
/* 802682D8 48 00 02 48 */ b lbl_80268520
|
||||
lbl_802682DC:
|
||||
/* 802682DC EC E0 00 32 */ fmuls f7, f0, f0
|
||||
/* 802682E0 C0 C2 B6 F4 */ lfs f6, lit_2267(r2)
|
||||
/* 802682E4 EC C6 02 B2 */ fmuls f6, f6, f10
|
||||
/* 802682E8 EC C6 02 F2 */ fmuls f6, f6, f11
|
||||
/* 802682EC EC C7 30 28 */ fsubs f6, f7, f6
|
||||
/* 802682F0 FC E0 32 10 */ fabs f7, f6
|
||||
/* 802682F4 FC E0 38 18 */ frsp f7, f7
|
||||
/* 802682F8 FC 07 40 40 */ fcmpo cr0, f7, f8
|
||||
/* 802682FC 40 80 00 14 */ bge lbl_80268310
|
||||
/* 80268300 FC A0 00 50 */ fneg f5, f0
|
||||
/* 80268304 EC 09 02 B2 */ fmuls f0, f9, f10
|
||||
/* 80268308 EC A5 00 24 */ fdivs f5, f5, f0
|
||||
/* 8026830C 48 00 02 14 */ b lbl_80268520
|
||||
lbl_80268310:
|
||||
/* 80268310 C0 E2 B6 F8 */ lfs f7, lit_2268(r2)
|
||||
/* 80268314 FC 06 38 40 */ fcmpo cr0, f6, f7
|
||||
/* 80268318 41 80 02 08 */ blt lbl_80268520
|
||||
/* 8026831C C0 E2 B6 FC */ lfs f7, lit_2269(r2)
|
||||
/* 80268320 EC A9 02 B2 */ fmuls f5, f9, f10
|
||||
/* 80268324 EC A7 28 24 */ fdivs f5, f7, f5
|
||||
/* 80268328 40 81 00 58 */ ble lbl_80268380
|
||||
/* 8026832C FC E0 30 34 */ frsqrte f7, f6
|
||||
/* 80268330 C9 42 B7 00 */ lfd f10, lit_2270(r2)
|
||||
/* 80268334 FD 0A 01 F2 */ fmul f8, f10, f7
|
||||
/* 80268338 C9 22 B7 08 */ lfd f9, lit_2271(r2)
|
||||
/* 8026833C FC E7 01 F2 */ fmul f7, f7, f7
|
||||
/* 80268340 FC E6 01 F2 */ fmul f7, f6, f7
|
||||
/* 80268344 FC E9 38 28 */ fsub f7, f9, f7
|
||||
/* 80268348 FC E8 01 F2 */ fmul f7, f8, f7
|
||||
/* 8026834C FD 0A 01 F2 */ fmul f8, f10, f7
|
||||
/* 80268350 FC E7 01 F2 */ fmul f7, f7, f7
|
||||
/* 80268354 FC E6 01 F2 */ fmul f7, f6, f7
|
||||
/* 80268358 FC E9 38 28 */ fsub f7, f9, f7
|
||||
/* 8026835C FC E8 01 F2 */ fmul f7, f8, f7
|
||||
/* 80268360 FD 0A 01 F2 */ fmul f8, f10, f7
|
||||
/* 80268364 FC E7 01 F2 */ fmul f7, f7, f7
|
||||
/* 80268368 FC E6 01 F2 */ fmul f7, f6, f7
|
||||
/* 8026836C FC E9 38 28 */ fsub f7, f9, f7
|
||||
/* 80268370 FC E8 01 F2 */ fmul f7, f8, f7
|
||||
/* 80268374 FC E6 01 F2 */ fmul f7, f6, f7
|
||||
/* 80268378 FC E0 38 18 */ frsp f7, f7
|
||||
/* 8026837C 48 00 00 90 */ b lbl_8026840C
|
||||
lbl_80268380:
|
||||
/* 80268380 C8 E2 B7 10 */ lfd f7, lit_2272(r2)
|
||||
/* 80268384 FC 06 38 40 */ fcmpo cr0, f6, f7
|
||||
/* 80268388 40 80 00 10 */ bge lbl_80268398
|
||||
/* 8026838C 3C 60 80 45 */ lis r3, __float_nan@ha /* 0x80450AE0@ha */
|
||||
/* 80268390 C0 E3 0A E0 */ lfs f7, __float_nan@l(r3) /* 0x80450AE0@l */
|
||||
/* 80268394 48 00 00 78 */ b lbl_8026840C
|
||||
lbl_80268398:
|
||||
/* 80268398 D0 C1 00 0C */ stfs f6, 0xc(r1)
|
||||
/* 8026839C 80 C1 00 0C */ lwz r6, 0xc(r1)
|
||||
/* 802683A0 54 C3 00 50 */ rlwinm r3, r6, 0, 1, 8
|
||||
/* 802683A4 3C 00 7F 80 */ lis r0, 0x7f80
|
||||
/* 802683A8 7C 03 00 00 */ cmpw r3, r0
|
||||
/* 802683AC 41 82 00 14 */ beq lbl_802683C0
|
||||
/* 802683B0 40 80 00 40 */ bge lbl_802683F0
|
||||
/* 802683B4 2C 03 00 00 */ cmpwi r3, 0
|
||||
/* 802683B8 41 82 00 20 */ beq lbl_802683D8
|
||||
/* 802683BC 48 00 00 34 */ b lbl_802683F0
|
||||
lbl_802683C0:
|
||||
/* 802683C0 54 C0 02 7F */ clrlwi. r0, r6, 9
|
||||
/* 802683C4 41 82 00 0C */ beq lbl_802683D0
|
||||
/* 802683C8 38 00 00 01 */ li r0, 1
|
||||
/* 802683CC 48 00 00 28 */ b lbl_802683F4
|
||||
lbl_802683D0:
|
||||
/* 802683D0 38 00 00 02 */ li r0, 2
|
||||
/* 802683D4 48 00 00 20 */ b lbl_802683F4
|
||||
lbl_802683D8:
|
||||
/* 802683D8 54 C0 02 7F */ clrlwi. r0, r6, 9
|
||||
/* 802683DC 41 82 00 0C */ beq lbl_802683E8
|
||||
/* 802683E0 38 00 00 05 */ li r0, 5
|
||||
/* 802683E4 48 00 00 10 */ b lbl_802683F4
|
||||
lbl_802683E8:
|
||||
/* 802683E8 38 00 00 03 */ li r0, 3
|
||||
/* 802683EC 48 00 00 08 */ b lbl_802683F4
|
||||
lbl_802683F0:
|
||||
/* 802683F0 38 00 00 04 */ li r0, 4
|
||||
lbl_802683F4:
|
||||
/* 802683F4 2C 00 00 01 */ cmpwi r0, 1
|
||||
/* 802683F8 40 82 00 10 */ bne lbl_80268408
|
||||
/* 802683FC 3C 60 80 45 */ lis r3, __float_nan@ha /* 0x80450AE0@ha */
|
||||
/* 80268400 C0 E3 0A E0 */ lfs f7, __float_nan@l(r3) /* 0x80450AE0@l */
|
||||
/* 80268404 48 00 00 08 */ b lbl_8026840C
|
||||
lbl_80268408:
|
||||
/* 80268408 FC E0 30 90 */ fmr f7, f6
|
||||
lbl_8026840C:
|
||||
/* 8026840C FD 40 00 50 */ fneg f10, f0
|
||||
/* 80268410 EC 0A 38 2A */ fadds f0, f10, f7
|
||||
/* 80268414 ED 65 00 32 */ fmuls f11, f5, f0
|
||||
/* 80268418 C0 02 B6 F8 */ lfs f0, lit_2268(r2)
|
||||
/* 8026841C FC 06 00 40 */ fcmpo cr0, f6, f0
|
||||
/* 80268420 40 81 00 58 */ ble lbl_80268478
|
||||
/* 80268424 FC 00 30 34 */ frsqrte f0, f6
|
||||
/* 80268428 C9 22 B7 00 */ lfd f9, lit_2270(r2)
|
||||
/* 8026842C FC E9 00 32 */ fmul f7, f9, f0
|
||||
/* 80268430 C9 02 B7 08 */ lfd f8, lit_2271(r2)
|
||||
/* 80268434 FC 00 00 32 */ fmul f0, f0, f0
|
||||
/* 80268438 FC 06 00 32 */ fmul f0, f6, f0
|
||||
/* 8026843C FC 08 00 28 */ fsub f0, f8, f0
|
||||
/* 80268440 FC 07 00 32 */ fmul f0, f7, f0
|
||||
/* 80268444 FC E9 00 32 */ fmul f7, f9, f0
|
||||
/* 80268448 FC 00 00 32 */ fmul f0, f0, f0
|
||||
/* 8026844C FC 06 00 32 */ fmul f0, f6, f0
|
||||
/* 80268450 FC 08 00 28 */ fsub f0, f8, f0
|
||||
/* 80268454 FC 07 00 32 */ fmul f0, f7, f0
|
||||
/* 80268458 FC E9 00 32 */ fmul f7, f9, f0
|
||||
/* 8026845C FC 00 00 32 */ fmul f0, f0, f0
|
||||
/* 80268460 FC 06 00 32 */ fmul f0, f6, f0
|
||||
/* 80268464 FC 08 00 28 */ fsub f0, f8, f0
|
||||
/* 80268468 FC 07 00 32 */ fmul f0, f7, f0
|
||||
/* 8026846C FC 06 00 32 */ fmul f0, f6, f0
|
||||
/* 80268470 FC 00 00 18 */ frsp f0, f0
|
||||
/* 80268474 48 00 00 90 */ b lbl_80268504
|
||||
lbl_80268478:
|
||||
/* 80268478 C8 02 B7 10 */ lfd f0, lit_2272(r2)
|
||||
/* 8026847C FC 06 00 40 */ fcmpo cr0, f6, f0
|
||||
/* 80268480 40 80 00 10 */ bge lbl_80268490
|
||||
/* 80268484 3C 60 80 45 */ lis r3, __float_nan@ha /* 0x80450AE0@ha */
|
||||
/* 80268488 C0 03 0A E0 */ lfs f0, __float_nan@l(r3) /* 0x80450AE0@l */
|
||||
/* 8026848C 48 00 00 78 */ b lbl_80268504
|
||||
lbl_80268490:
|
||||
/* 80268490 D0 C1 00 08 */ stfs f6, 8(r1)
|
||||
/* 80268494 80 C1 00 08 */ lwz r6, 8(r1)
|
||||
/* 80268498 54 C3 00 50 */ rlwinm r3, r6, 0, 1, 8
|
||||
/* 8026849C 3C 00 7F 80 */ lis r0, 0x7f80
|
||||
/* 802684A0 7C 03 00 00 */ cmpw r3, r0
|
||||
/* 802684A4 41 82 00 14 */ beq lbl_802684B8
|
||||
/* 802684A8 40 80 00 40 */ bge lbl_802684E8
|
||||
/* 802684AC 2C 03 00 00 */ cmpwi r3, 0
|
||||
/* 802684B0 41 82 00 20 */ beq lbl_802684D0
|
||||
/* 802684B4 48 00 00 34 */ b lbl_802684E8
|
||||
lbl_802684B8:
|
||||
/* 802684B8 54 C0 02 7F */ clrlwi. r0, r6, 9
|
||||
/* 802684BC 41 82 00 0C */ beq lbl_802684C8
|
||||
/* 802684C0 38 00 00 01 */ li r0, 1
|
||||
/* 802684C4 48 00 00 28 */ b lbl_802684EC
|
||||
lbl_802684C8:
|
||||
/* 802684C8 38 00 00 02 */ li r0, 2
|
||||
/* 802684CC 48 00 00 20 */ b lbl_802684EC
|
||||
lbl_802684D0:
|
||||
/* 802684D0 54 C0 02 7F */ clrlwi. r0, r6, 9
|
||||
/* 802684D4 41 82 00 0C */ beq lbl_802684E0
|
||||
/* 802684D8 38 00 00 05 */ li r0, 5
|
||||
/* 802684DC 48 00 00 10 */ b lbl_802684EC
|
||||
lbl_802684E0:
|
||||
/* 802684E0 38 00 00 03 */ li r0, 3
|
||||
/* 802684E4 48 00 00 08 */ b lbl_802684EC
|
||||
lbl_802684E8:
|
||||
/* 802684E8 38 00 00 04 */ li r0, 4
|
||||
lbl_802684EC:
|
||||
/* 802684EC 2C 00 00 01 */ cmpwi r0, 1
|
||||
/* 802684F0 40 82 00 10 */ bne lbl_80268500
|
||||
/* 802684F4 3C 60 80 45 */ lis r3, __float_nan@ha /* 0x80450AE0@ha */
|
||||
/* 802684F8 C0 03 0A E0 */ lfs f0, __float_nan@l(r3) /* 0x80450AE0@l */
|
||||
/* 802684FC 48 00 00 08 */ b lbl_80268504
|
||||
lbl_80268500:
|
||||
/* 80268500 FC 00 30 90 */ fmr f0, f6
|
||||
lbl_80268504:
|
||||
/* 80268504 EC 0A 00 28 */ fsubs f0, f10, f0
|
||||
/* 80268508 EC 05 00 32 */ fmuls f0, f5, f0
|
||||
/* 8026850C FC 0B 00 40 */ fcmpo cr0, f11, f0
|
||||
/* 80268510 40 81 00 0C */ ble lbl_8026851C
|
||||
/* 80268514 FC A0 58 90 */ fmr f5, f11
|
||||
/* 80268518 48 00 00 08 */ b lbl_80268520
|
||||
lbl_8026851C:
|
||||
/* 8026851C FC A0 00 90 */ fmr f5, f0
|
||||
lbl_80268520:
|
||||
/* 80268520 FC 00 2A 10 */ fabs f0, f5
|
||||
/* 80268524 FC C0 00 18 */ frsp f6, f0
|
||||
/* 80268528 C0 0D 8C 00 */ lfs f0, G_CM3D_F_ABS_MIN(r13)
|
||||
/* 8026852C FC 06 00 40 */ fcmpo cr0, f6, f0
|
||||
/* 80268530 40 80 00 10 */ bge lbl_80268540
|
||||
/* 80268534 D0 24 00 00 */ stfs f1, 0(r4)
|
||||
/* 80268538 D0 45 00 00 */ stfs f2, 0(r5)
|
||||
/* 8026853C 48 00 00 1C */ b lbl_80268558
|
||||
lbl_80268540:
|
||||
/* 80268540 EC 05 00 F2 */ fmuls f0, f5, f3
|
||||
/* 80268544 EC 01 00 2A */ fadds f0, f1, f0
|
||||
/* 80268548 D0 04 00 00 */ stfs f0, 0(r4)
|
||||
/* 8026854C EC 05 01 32 */ fmuls f0, f5, f4
|
||||
/* 80268550 EC 02 00 2A */ fadds f0, f2, f0
|
||||
/* 80268554 D0 05 00 00 */ stfs f0, 0(r5)
|
||||
lbl_80268558:
|
||||
/* 80268558 38 21 00 10 */ addi r1, r1, 0x10
|
||||
/* 8026855C 4E 80 00 20 */ blr
|
||||
|
|
@ -1,9 +0,0 @@
|
|||
lbl_80266830:
|
||||
/* 80266830 94 21 FF F0 */ stwu r1, -0x10(r1)
|
||||
/* 80266834 7C 08 02 A6 */ mflr r0
|
||||
/* 80266838 90 01 00 14 */ stw r0, 0x14(r1)
|
||||
/* 8026683C 48 00 00 15 */ bl cReq_Create__FP18request_base_classUc
|
||||
/* 80266840 80 01 00 14 */ lwz r0, 0x14(r1)
|
||||
/* 80266844 7C 08 03 A6 */ mtlr r0
|
||||
/* 80266848 38 21 00 10 */ addi r1, r1, 0x10
|
||||
/* 8026684C 4E 80 00 20 */ blr
|
||||
|
|
@ -1,13 +0,0 @@
|
|||
lbl_80266850:
|
||||
/* 80266850 38 A0 00 01 */ li r5, 1
|
||||
/* 80266854 88 03 00 00 */ lbz r0, 0(r3)
|
||||
/* 80266858 50 A0 3E 30 */ rlwimi r0, r5, 7, 0x18, 0x18
|
||||
/* 8026685C 98 03 00 00 */ stb r0, 0(r3)
|
||||
/* 80266860 38 A0 00 00 */ li r5, 0
|
||||
/* 80266864 88 03 00 00 */ lbz r0, 0(r3)
|
||||
/* 80266868 50 A0 36 72 */ rlwimi r0, r5, 6, 0x19, 0x19
|
||||
/* 8026686C 98 03 00 00 */ stb r0, 0(r3)
|
||||
/* 80266870 88 03 00 00 */ lbz r0, 0(r3)
|
||||
/* 80266874 50 80 06 BE */ rlwimi r0, r4, 0, 0x1a, 0x1f
|
||||
/* 80266878 98 03 00 00 */ stb r0, 0(r3)
|
||||
/* 8026687C 4E 80 00 20 */ blr
|
||||
|
|
@ -1,13 +0,0 @@
|
|||
lbl_80266800:
|
||||
/* 80266800 38 A0 00 00 */ li r5, 0
|
||||
/* 80266804 88 03 00 00 */ lbz r0, 0(r3)
|
||||
/* 80266808 50 A0 3E 30 */ rlwimi r0, r5, 7, 0x18, 0x18
|
||||
/* 8026680C 98 03 00 00 */ stb r0, 0(r3)
|
||||
/* 80266810 38 80 00 01 */ li r4, 1
|
||||
/* 80266814 88 03 00 00 */ lbz r0, 0(r3)
|
||||
/* 80266818 50 80 36 72 */ rlwimi r0, r4, 6, 0x19, 0x19
|
||||
/* 8026681C 98 03 00 00 */ stb r0, 0(r3)
|
||||
/* 80266820 88 03 00 00 */ lbz r0, 0(r3)
|
||||
/* 80266824 50 A0 06 BE */ rlwimi r0, r5, 0, 0x1a, 0x1f
|
||||
/* 80266828 98 03 00 00 */ stb r0, 0(r3)
|
||||
/* 8026682C 4E 80 00 20 */ blr
|
||||
|
|
@ -1,13 +0,0 @@
|
|||
lbl_802667D4:
|
||||
/* 802667D4 88 83 00 00 */ lbz r4, 0(r3)
|
||||
/* 802667D8 54 80 D7 FE */ rlwinm r0, r4, 0x1a, 0x1f, 0x1f
|
||||
/* 802667DC 28 00 00 01 */ cmplwi r0, 1
|
||||
/* 802667E0 40 82 00 18 */ bne lbl_802667F8
|
||||
/* 802667E4 38 00 00 00 */ li r0, 0
|
||||
/* 802667E8 50 04 36 72 */ rlwimi r4, r0, 6, 0x19, 0x19
|
||||
/* 802667EC 98 83 00 00 */ stb r4, 0(r3)
|
||||
/* 802667F0 38 60 00 01 */ li r3, 1
|
||||
/* 802667F4 4E 80 00 20 */ blr
|
||||
lbl_802667F8:
|
||||
/* 802667F8 38 60 00 00 */ li r3, 0
|
||||
/* 802667FC 4E 80 00 20 */ blr
|
||||
|
|
@ -1,16 +0,0 @@
|
|||
lbl_802BC248:
|
||||
/* 802BC248 94 21 FF F0 */ stwu r1, -0x10(r1)
|
||||
/* 802BC24C 7C 08 02 A6 */ mflr r0
|
||||
/* 802BC250 90 01 00 14 */ stw r0, 0x14(r1)
|
||||
/* 802BC254 93 E1 00 0C */ stw r31, 0xc(r1)
|
||||
/* 802BC258 7C 7F 1B 78 */ mr r31, r3
|
||||
/* 802BC25C 38 00 00 00 */ li r0, 0
|
||||
/* 802BC260 98 03 01 24 */ stb r0, 0x124(r3)
|
||||
/* 802BC264 98 03 01 25 */ stb r0, 0x125(r3)
|
||||
/* 802BC268 48 00 00 1D */ bl init__19Z2Audience3DSettingFv
|
||||
/* 802BC26C 7F E3 FB 78 */ mr r3, r31
|
||||
/* 802BC270 83 E1 00 0C */ lwz r31, 0xc(r1)
|
||||
/* 802BC274 80 01 00 14 */ lwz r0, 0x14(r1)
|
||||
/* 802BC278 7C 08 03 A6 */ mtlr r0
|
||||
/* 802BC27C 38 21 00 10 */ addi r1, r1, 0x10
|
||||
/* 802BC280 4E 80 00 20 */ blr
|
||||
|
|
@ -1,32 +0,0 @@
|
|||
lbl_802BDC44:
|
||||
/* 802BDC44 94 21 FF F0 */ stwu r1, -0x10(r1)
|
||||
/* 802BDC48 7C 08 02 A6 */ mflr r0
|
||||
/* 802BDC4C 90 01 00 14 */ stw r0, 0x14(r1)
|
||||
/* 802BDC50 54 80 10 3A */ slwi r0, r4, 2
|
||||
/* 802BDC54 7C 83 02 14 */ add r4, r3, r0
|
||||
/* 802BDC58 C0 04 00 0C */ lfs f0, 0xc(r4)
|
||||
/* 802BDC5C FC 01 00 40 */ fcmpo cr0, f1, f0
|
||||
/* 802BDC60 40 81 00 1C */ ble lbl_802BDC7C
|
||||
/* 802BDC64 54 A0 06 3F */ clrlwi. r0, r5, 0x18
|
||||
/* 802BDC68 41 82 00 0C */ beq lbl_802BDC74
|
||||
/* 802BDC6C 38 60 FF FF */ li r3, -1
|
||||
/* 802BDC70 48 00 00 30 */ b lbl_802BDCA0
|
||||
lbl_802BDC74:
|
||||
/* 802BDC74 80 63 00 70 */ lwz r3, 0x70(r3)
|
||||
/* 802BDC78 48 00 00 28 */ b lbl_802BDCA0
|
||||
lbl_802BDC7C:
|
||||
/* 802BDC7C C0 03 00 48 */ lfs f0, 0x48(r3)
|
||||
/* 802BDC80 FC 01 00 40 */ fcmpo cr0, f1, f0
|
||||
/* 802BDC84 40 80 00 0C */ bge lbl_802BDC90
|
||||
/* 802BDC88 38 60 00 00 */ li r3, 0
|
||||
/* 802BDC8C 48 00 00 14 */ b lbl_802BDCA0
|
||||
lbl_802BDC90:
|
||||
/* 802BDC90 C0 44 00 B8 */ lfs f2, 0xb8(r4)
|
||||
/* 802BDC94 EC 01 00 28 */ fsubs f0, f1, f0
|
||||
/* 802BDC98 EC 22 00 32 */ fmuls f1, f2, f0
|
||||
/* 802BDC9C 48 0A 44 11 */ bl __cvt_fp2unsigned
|
||||
lbl_802BDCA0:
|
||||
/* 802BDCA0 80 01 00 14 */ lwz r0, 0x14(r1)
|
||||
/* 802BDCA4 7C 08 03 A6 */ mtlr r0
|
||||
/* 802BDCA8 38 21 00 10 */ addi r1, r1, 0x10
|
||||
/* 802BDCAC 4E 80 00 20 */ blr
|
||||
|
|
@ -1,21 +0,0 @@
|
|||
lbl_802BDD00:
|
||||
/* 802BDD00 54 80 10 3A */ slwi r0, r4, 2
|
||||
/* 802BDD04 7C 83 02 14 */ add r4, r3, r0
|
||||
/* 802BDD08 C0 04 00 0C */ lfs f0, 0xc(r4)
|
||||
/* 802BDD0C FC 01 00 40 */ fcmpo cr0, f1, f0
|
||||
/* 802BDD10 40 81 00 0C */ ble lbl_802BDD1C
|
||||
/* 802BDD14 C0 23 00 60 */ lfs f1, 0x60(r3)
|
||||
/* 802BDD18 4E 80 00 20 */ blr
|
||||
lbl_802BDD1C:
|
||||
/* 802BDD1C C0 03 00 48 */ lfs f0, 0x48(r3)
|
||||
/* 802BDD20 FC 01 00 40 */ fcmpo cr0, f1, f0
|
||||
/* 802BDD24 40 80 00 0C */ bge lbl_802BDD30
|
||||
/* 802BDD28 C0 23 00 5C */ lfs f1, 0x5c(r3)
|
||||
/* 802BDD2C 4E 80 00 20 */ blr
|
||||
lbl_802BDD30:
|
||||
/* 802BDD30 C0 63 00 5C */ lfs f3, 0x5c(r3)
|
||||
/* 802BDD34 C0 44 00 F4 */ lfs f2, 0xf4(r4)
|
||||
/* 802BDD38 EC 01 00 28 */ fsubs f0, f1, f0
|
||||
/* 802BDD3C EC 02 00 32 */ fmuls f0, f2, f0
|
||||
/* 802BDD40 EC 23 00 2A */ fadds f1, f3, f0
|
||||
/* 802BDD44 4E 80 00 20 */ blr
|
||||
|
|
@ -1,26 +0,0 @@
|
|||
lbl_802BCFE4:
|
||||
/* 802BCFE4 94 21 FF F0 */ stwu r1, -0x10(r1)
|
||||
/* 802BCFE8 7C 08 02 A6 */ mflr r0
|
||||
/* 802BCFEC 90 01 00 14 */ stw r0, 0x14(r1)
|
||||
/* 802BCFF0 C0 03 00 04 */ lfs f0, 4(r3)
|
||||
/* 802BCFF4 FC 01 00 40 */ fcmpo cr0, f1, f0
|
||||
/* 802BCFF8 40 81 00 10 */ ble lbl_802BD008
|
||||
/* 802BCFFC 80 6D 85 C4 */ lwz r3, __OSReport_disable-0x54(r13)
|
||||
/* 802BD000 80 63 00 70 */ lwz r3, 0x70(r3)
|
||||
/* 802BD004 48 00 00 28 */ b lbl_802BD02C
|
||||
lbl_802BD008:
|
||||
/* 802BD008 C0 03 00 00 */ lfs f0, 0(r3)
|
||||
/* 802BD00C FC 01 00 40 */ fcmpo cr0, f1, f0
|
||||
/* 802BD010 40 80 00 0C */ bge lbl_802BD01C
|
||||
/* 802BD014 38 60 00 00 */ li r3, 0
|
||||
/* 802BD018 48 00 00 14 */ b lbl_802BD02C
|
||||
lbl_802BD01C:
|
||||
/* 802BD01C C0 43 00 1C */ lfs f2, 0x1c(r3)
|
||||
/* 802BD020 EC 01 00 28 */ fsubs f0, f1, f0
|
||||
/* 802BD024 EC 22 00 32 */ fmuls f1, f2, f0
|
||||
/* 802BD028 48 0A 50 85 */ bl __cvt_fp2unsigned
|
||||
lbl_802BD02C:
|
||||
/* 802BD02C 80 01 00 14 */ lwz r0, 0x14(r1)
|
||||
/* 802BD030 7C 08 03 A6 */ mtlr r0
|
||||
/* 802BD034 38 21 00 10 */ addi r1, r1, 0x10
|
||||
/* 802BD038 4E 80 00 20 */ blr
|
||||
|
|
@ -1,7 +0,0 @@
|
|||
lbl_802BD704:
|
||||
/* 802BD704 88 03 01 DC */ lbz r0, 0x1dc(r3)
|
||||
/* 802BD708 28 00 00 00 */ cmplwi r0, 0
|
||||
/* 802BD70C 4D 82 00 20 */ beqlr
|
||||
/* 802BD710 C0 03 00 04 */ lfs f0, 4(r3)
|
||||
/* 802BD714 EC 21 00 32 */ fmuls f1, f1, f0
|
||||
/* 802BD718 4E 80 00 20 */ blr
|
||||
|
|
@ -1,92 +0,0 @@
|
|||
lbl_802BD5B8:
|
||||
/* 802BD5B8 94 21 FF D0 */ stwu r1, -0x30(r1)
|
||||
/* 802BD5BC 7C 08 02 A6 */ mflr r0
|
||||
/* 802BD5C0 90 01 00 34 */ stw r0, 0x34(r1)
|
||||
/* 802BD5C4 39 61 00 30 */ addi r11, r1, 0x30
|
||||
/* 802BD5C8 48 0A 4C 05 */ bl _savegpr_25
|
||||
/* 802BD5CC 7C 7C 1B 78 */ mr r28, r3
|
||||
/* 802BD5D0 7C 9F 23 78 */ mr r31, r4
|
||||
/* 802BD5D4 88 04 00 10 */ lbz r0, 0x10(r4)
|
||||
/* 802BD5D8 54 00 EF FF */ rlwinm. r0, r0, 0x1d, 0x1f, 0x1f
|
||||
/* 802BD5DC 40 82 00 40 */ bne lbl_802BD61C
|
||||
/* 802BD5E0 3B 20 00 00 */ li r25, 0
|
||||
/* 802BD5E4 3B 40 00 00 */ li r26, 0
|
||||
/* 802BD5E8 48 00 00 20 */ b lbl_802BD608
|
||||
lbl_802BD5EC:
|
||||
/* 802BD5EC 38 7A 01 34 */ addi r3, r26, 0x134
|
||||
/* 802BD5F0 7C 7C 1A 14 */ add r3, r28, r3
|
||||
/* 802BD5F4 7F E4 FB 78 */ mr r4, r31
|
||||
/* 802BD5F8 7F 25 CB 78 */ mr r5, r25
|
||||
/* 802BD5FC 4B FF F5 F1 */ bl convertAbsToRel__13Z2AudioCameraFP9Z2Audiblei
|
||||
/* 802BD600 3B 39 00 01 */ addi r25, r25, 1
|
||||
/* 802BD604 3B 5A 00 74 */ addi r26, r26, 0x74
|
||||
lbl_802BD608:
|
||||
/* 802BD608 80 1C 01 D4 */ lwz r0, 0x1d4(r28)
|
||||
/* 802BD60C 7C 19 00 00 */ cmpw r25, r0
|
||||
/* 802BD610 41 80 FF DC */ blt lbl_802BD5EC
|
||||
/* 802BD614 38 60 00 00 */ li r3, 0
|
||||
/* 802BD618 48 00 00 D4 */ b lbl_802BD6EC
|
||||
lbl_802BD61C:
|
||||
/* 802BD61C 3B C0 FF FF */ li r30, -1
|
||||
/* 802BD620 3B A0 00 00 */ li r29, 0
|
||||
/* 802BD624 3B 60 00 00 */ li r27, 0
|
||||
/* 802BD628 3B 40 00 00 */ li r26, 0
|
||||
/* 802BD62C 48 00 00 78 */ b lbl_802BD6A4
|
||||
lbl_802BD630:
|
||||
/* 802BD630 7F E3 FB 78 */ mr r3, r31
|
||||
/* 802BD634 7F A4 EB 78 */ mr r4, r29
|
||||
/* 802BD638 4B FF EB CD */ bl getChannel__9Z2AudibleFi
|
||||
/* 802BD63C 7C 79 1B 79 */ or. r25, r3, r3
|
||||
/* 802BD640 41 82 00 58 */ beq lbl_802BD698
|
||||
/* 802BD644 38 7A 01 34 */ addi r3, r26, 0x134
|
||||
/* 802BD648 7C 7C 1A 14 */ add r3, r28, r3
|
||||
/* 802BD64C 7F E4 FB 78 */ mr r4, r31
|
||||
/* 802BD650 7F A5 EB 78 */ mr r5, r29
|
||||
/* 802BD654 4B FF F5 99 */ bl convertAbsToRel__13Z2AudioCameraFP9Z2Audiblei
|
||||
/* 802BD658 7F E3 FB 78 */ mr r3, r31
|
||||
/* 802BD65C 4B FF EB BD */ bl getDistVolBit__9Z2AudibleFv
|
||||
/* 802BD660 7C 64 1B 78 */ mr r4, r3
|
||||
/* 802BD664 7F 83 E3 78 */ mr r3, r28
|
||||
/* 802BD668 C0 39 00 24 */ lfs f1, 0x24(r25)
|
||||
/* 802BD66C 88 1F 00 10 */ lbz r0, 0x10(r31)
|
||||
/* 802BD670 54 05 07 FE */ clrlwi r5, r0, 0x1f
|
||||
/* 802BD674 30 05 FF FF */ addic r0, r5, -1
|
||||
/* 802BD678 7C 00 29 10 */ subfe r0, r0, r5
|
||||
/* 802BD67C 54 05 06 3E */ clrlwi r5, r0, 0x18
|
||||
/* 802BD680 48 00 05 C5 */ bl calcDeltaPriority___10Z2AudienceCFfib
|
||||
/* 802BD684 38 81 00 08 */ addi r4, r1, 8
|
||||
/* 802BD688 7C 64 D9 2E */ stwx r3, r4, r27
|
||||
/* 802BD68C 7C 03 F0 40 */ cmplw r3, r30
|
||||
/* 802BD690 40 80 00 08 */ bge lbl_802BD698
|
||||
/* 802BD694 7C 7E 1B 78 */ mr r30, r3
|
||||
lbl_802BD698:
|
||||
/* 802BD698 3B BD 00 01 */ addi r29, r29, 1
|
||||
/* 802BD69C 3B 7B 00 04 */ addi r27, r27, 4
|
||||
/* 802BD6A0 3B 5A 00 74 */ addi r26, r26, 0x74
|
||||
lbl_802BD6A4:
|
||||
/* 802BD6A4 80 1C 01 D4 */ lwz r0, 0x1d4(r28)
|
||||
/* 802BD6A8 7C 1D 00 00 */ cmpw r29, r0
|
||||
/* 802BD6AC 41 80 FF 84 */ blt lbl_802BD630
|
||||
/* 802BD6B0 88 1C 01 CD */ lbz r0, 0x1cd(r28)
|
||||
/* 802BD6B4 28 00 00 00 */ cmplwi r0, 0
|
||||
/* 802BD6B8 41 82 00 30 */ beq lbl_802BD6E8
|
||||
/* 802BD6BC 3B 3C 01 A8 */ addi r25, r28, 0x1a8
|
||||
/* 802BD6C0 7F 23 CB 78 */ mr r3, r25
|
||||
/* 802BD6C4 7F E4 FB 78 */ mr r4, r31
|
||||
/* 802BD6C8 4B FF F8 95 */ bl calcMicDist__9Z2SpotMicFP9Z2Audible
|
||||
/* 802BD6CC D0 3F 00 64 */ stfs f1, 0x64(r31)
|
||||
/* 802BD6D0 7F 23 CB 78 */ mr r3, r25
|
||||
/* 802BD6D4 C0 3F 00 64 */ lfs f1, 0x64(r31)
|
||||
/* 802BD6D8 4B FF F9 0D */ bl calcMicPriority__9Z2SpotMicFf
|
||||
/* 802BD6DC 7C 03 F0 40 */ cmplw r3, r30
|
||||
/* 802BD6E0 40 80 00 08 */ bge lbl_802BD6E8
|
||||
/* 802BD6E4 7C 7E 1B 78 */ mr r30, r3
|
||||
lbl_802BD6E8:
|
||||
/* 802BD6E8 7F C3 F3 78 */ mr r3, r30
|
||||
lbl_802BD6EC:
|
||||
/* 802BD6EC 39 61 00 30 */ addi r11, r1, 0x30
|
||||
/* 802BD6F0 48 0A 4B 29 */ bl _restgpr_25
|
||||
/* 802BD6F4 80 01 00 34 */ lwz r0, 0x34(r1)
|
||||
/* 802BD6F8 7C 08 03 A6 */ mtlr r0
|
||||
/* 802BD6FC 38 21 00 30 */ addi r1, r1, 0x30
|
||||
/* 802BD700 4E 80 00 20 */ blr
|
||||
|
|
@ -1,12 +0,0 @@
|
|||
lbl_802BCDE8:
|
||||
/* 802BCDE8 54 80 10 3A */ slwi r0, r4, 2
|
||||
/* 802BCDEC C0 23 00 08 */ lfs f1, 8(r3)
|
||||
/* 802BCDF0 7C 83 02 14 */ add r4, r3, r0
|
||||
/* 802BCDF4 C0 04 00 18 */ lfs f0, 0x18(r4)
|
||||
/* 802BCDF8 EC 41 00 28 */ fsubs f2, f1, f0
|
||||
/* 802BCDFC C0 23 00 04 */ lfs f1, 4(r3)
|
||||
/* 802BCE00 C0 03 00 00 */ lfs f0, 0(r3)
|
||||
/* 802BCE04 EC 01 00 28 */ fsubs f0, f1, f0
|
||||
/* 802BCE08 EC 02 00 24 */ fdivs f0, f2, f0
|
||||
/* 802BCE0C D0 04 00 20 */ stfs f0, 0x20(r4)
|
||||
/* 802BCE10 4E 80 00 20 */ blr
|
||||
|
|
@ -1,16 +0,0 @@
|
|||
lbl_802BBE98:
|
||||
/* 802BBE98 94 21 FF F0 */ stwu r1, -0x10(r1)
|
||||
/* 802BBE9C 7C 08 02 A6 */ mflr r0
|
||||
/* 802BBEA0 90 01 00 14 */ stw r0, 0x14(r1)
|
||||
/* 802BBEA4 7C 64 1B 78 */ mr r4, r3
|
||||
/* 802BBEA8 88 03 00 10 */ lbz r0, 0x10(r3)
|
||||
/* 802BBEAC 54 00 E7 3F */ rlwinm. r0, r0, 0x1c, 0x1c, 0x1f
|
||||
/* 802BBEB0 41 82 00 10 */ beq lbl_802BBEC0
|
||||
/* 802BBEB4 38 64 00 14 */ addi r3, r4, 0x14
|
||||
/* 802BBEB8 38 84 00 04 */ addi r4, r4, 4
|
||||
/* 802BBEBC 4B FF FE 21 */ bl func_802BBCDC
|
||||
lbl_802BBEC0:
|
||||
/* 802BBEC0 80 01 00 14 */ lwz r0, 0x14(r1)
|
||||
/* 802BBEC4 7C 08 03 A6 */ mtlr r0
|
||||
/* 802BBEC8 38 21 00 10 */ addi r1, r1, 0x10
|
||||
/* 802BBECC 4E 80 00 20 */ blr
|
||||
|
|
@ -1,17 +0,0 @@
|
|||
lbl_802BCDA8:
|
||||
/* 802BCDA8 94 21 FF F0 */ stwu r1, -0x10(r1)
|
||||
/* 802BCDAC 7C 08 02 A6 */ mflr r0
|
||||
/* 802BCDB0 90 01 00 14 */ stw r0, 0x14(r1)
|
||||
/* 802BCDB4 38 00 00 00 */ li r0, 0
|
||||
/* 802BCDB8 54 85 10 3A */ slwi r5, r4, 2
|
||||
/* 802BCDBC 7C A3 2A 14 */ add r5, r3, r5
|
||||
/* 802BCDC0 90 05 00 10 */ stw r0, 0x10(r5)
|
||||
/* 802BCDC4 C0 03 00 0C */ lfs f0, 0xc(r3)
|
||||
/* 802BCDC8 D0 05 00 18 */ stfs f0, 0x18(r5)
|
||||
/* 802BCDCC 7C A3 22 14 */ add r5, r3, r4
|
||||
/* 802BCDD0 98 05 00 26 */ stb r0, 0x26(r5)
|
||||
/* 802BCDD4 48 00 00 15 */ bl calcVolumeFactor__9Z2SpotMicFi
|
||||
/* 802BCDD8 80 01 00 14 */ lwz r0, 0x14(r1)
|
||||
/* 802BCDDC 7C 08 03 A6 */ mtlr r0
|
||||
/* 802BCDE0 38 21 00 10 */ addi r1, r1, 0x10
|
||||
/* 802BCDE4 4E 80 00 20 */ blr
|
||||
|
|
@ -1,13 +0,0 @@
|
|||
lbl_802BD92C:
|
||||
/* 802BD92C 94 21 FF F0 */ stwu r1, -0x10(r1)
|
||||
/* 802BD930 7C 08 02 A6 */ mflr r0
|
||||
/* 802BD934 90 01 00 14 */ stw r0, 0x14(r1)
|
||||
/* 802BD938 7C 60 1B 78 */ mr r0, r3
|
||||
/* 802BD93C 1C 66 00 74 */ mulli r3, r6, 0x74
|
||||
/* 802BD940 38 63 01 34 */ addi r3, r3, 0x134
|
||||
/* 802BD944 7C 60 1A 14 */ add r3, r0, r3
|
||||
/* 802BD948 4B FF F3 35 */ bl convertAbsToRel__13Z2AudioCameraCFR3VecP3Vec
|
||||
/* 802BD94C 80 01 00 14 */ lwz r0, 0x14(r1)
|
||||
/* 802BD950 7C 08 03 A6 */ mtlr r0
|
||||
/* 802BD954 38 21 00 10 */ addi r1, r1, 0x10
|
||||
/* 802BD958 4E 80 00 20 */ blr
|
||||
|
|
@ -1,18 +0,0 @@
|
|||
lbl_802BCC7C:
|
||||
/* 802BCC7C 94 21 FF F0 */ stwu r1, -0x10(r1)
|
||||
/* 802BCC80 7C 08 02 A6 */ mflr r0
|
||||
/* 802BCC84 90 01 00 14 */ stw r0, 0x14(r1)
|
||||
/* 802BCC88 93 E1 00 0C */ stw r31, 0xc(r1)
|
||||
/* 802BCC8C 93 C1 00 08 */ stw r30, 8(r1)
|
||||
/* 802BCC90 7C 7E 1B 78 */ mr r30, r3
|
||||
/* 802BCC94 7C BF 2B 78 */ mr r31, r5
|
||||
/* 802BCC98 48 08 A0 D5 */ bl PSMTXMultVec
|
||||
/* 802BCC9C 7F C3 F3 78 */ mr r3, r30
|
||||
/* 802BCCA0 7F E4 FB 78 */ mr r4, r31
|
||||
/* 802BCCA4 48 00 00 1D */ bl isInSight__13Z2AudioCameraCFR3Vec
|
||||
/* 802BCCA8 83 E1 00 0C */ lwz r31, 0xc(r1)
|
||||
/* 802BCCAC 83 C1 00 08 */ lwz r30, 8(r1)
|
||||
/* 802BCCB0 80 01 00 14 */ lwz r0, 0x14(r1)
|
||||
/* 802BCCB4 7C 08 03 A6 */ mtlr r0
|
||||
/* 802BCCB8 38 21 00 10 */ addi r1, r1, 0x10
|
||||
/* 802BCCBC 4E 80 00 20 */ blr
|
||||
|
|
@ -1,38 +0,0 @@
|
|||
lbl_802BCBEC:
|
||||
/* 802BCBEC 94 21 FF D0 */ stwu r1, -0x30(r1)
|
||||
/* 802BCBF0 7C 08 02 A6 */ mflr r0
|
||||
/* 802BCBF4 90 01 00 34 */ stw r0, 0x34(r1)
|
||||
/* 802BCBF8 39 61 00 30 */ addi r11, r1, 0x30
|
||||
/* 802BCBFC 48 0A 55 E1 */ bl _savegpr_29
|
||||
/* 802BCC00 7C 7D 1B 78 */ mr r29, r3
|
||||
/* 802BCC04 7C 9E 23 78 */ mr r30, r4
|
||||
/* 802BCC08 7F C3 F3 78 */ mr r3, r30
|
||||
/* 802BCC0C 7C A4 2B 78 */ mr r4, r5
|
||||
/* 802BCC10 4B FF F5 F5 */ bl getChannel__9Z2AudibleFi
|
||||
/* 802BCC14 28 03 00 00 */ cmplwi r3, 0
|
||||
/* 802BCC18 41 82 00 4C */ beq lbl_802BCC64
|
||||
/* 802BCC1C 3B E3 00 14 */ addi r31, r3, 0x14
|
||||
/* 802BCC20 7F A3 EB 78 */ mr r3, r29
|
||||
/* 802BCC24 38 9E 00 04 */ addi r4, r30, 4
|
||||
/* 802BCC28 7F E5 FB 78 */ mr r5, r31
|
||||
/* 802BCC2C 48 08 A1 41 */ bl PSMTXMultVec
|
||||
/* 802BCC30 7F E3 FB 78 */ mr r3, r31
|
||||
/* 802BCC34 48 08 A5 1D */ bl PSVECMag
|
||||
/* 802BCC38 D0 3F 00 0C */ stfs f1, 0xc(r31)
|
||||
/* 802BCC3C 38 61 00 08 */ addi r3, r1, 8
|
||||
/* 802BCC40 E0 1F 00 00 */ psq_l f0, 0(r31), 0, 0 /* qr0 */
|
||||
/* 802BCC44 C0 3F 00 08 */ lfs f1, 8(r31)
|
||||
/* 802BCC48 F0 03 00 00 */ psq_st f0, 0(r3), 0, 0 /* qr0 */
|
||||
/* 802BCC4C D0 21 00 10 */ stfs f1, 0x10(r1)
|
||||
/* 802BCC50 C0 1D 00 58 */ lfs f0, 0x58(r29)
|
||||
/* 802BCC54 EC 01 00 2A */ fadds f0, f1, f0
|
||||
/* 802BCC58 D0 01 00 10 */ stfs f0, 0x10(r1)
|
||||
/* 802BCC5C 48 08 A4 F5 */ bl PSVECMag
|
||||
/* 802BCC60 D0 3F 00 10 */ stfs f1, 0x10(r31)
|
||||
lbl_802BCC64:
|
||||
/* 802BCC64 39 61 00 30 */ addi r11, r1, 0x30
|
||||
/* 802BCC68 48 0A 55 C1 */ bl _restgpr_29
|
||||
/* 802BCC6C 80 01 00 34 */ lwz r0, 0x34(r1)
|
||||
/* 802BCC70 7C 08 03 A6 */ mtlr r0
|
||||
/* 802BCC74 38 21 00 30 */ addi r1, r1, 0x30
|
||||
/* 802BCC78 4E 80 00 20 */ blr
|
||||
|
|
@ -1,17 +0,0 @@
|
|||
lbl_802BD4D4:
|
||||
/* 802BD4D4 94 21 FF F0 */ stwu r1, -0x10(r1)
|
||||
/* 802BD4D8 7C 08 02 A6 */ mflr r0
|
||||
/* 802BD4DC 90 01 00 14 */ stw r0, 0x14(r1)
|
||||
/* 802BD4E0 28 04 00 00 */ cmplwi r4, 0
|
||||
/* 802BD4E4 41 82 00 1C */ beq lbl_802BD500
|
||||
/* 802BD4E8 7C 83 23 78 */ mr r3, r4
|
||||
/* 802BD4EC 38 80 00 01 */ li r4, 1
|
||||
/* 802BD4F0 81 83 00 00 */ lwz r12, 0(r3)
|
||||
/* 802BD4F4 81 8C 00 08 */ lwz r12, 8(r12)
|
||||
/* 802BD4F8 7D 89 03 A6 */ mtctr r12
|
||||
/* 802BD4FC 4E 80 04 21 */ bctrl
|
||||
lbl_802BD500:
|
||||
/* 802BD500 80 01 00 14 */ lwz r0, 0x14(r1)
|
||||
/* 802BD504 7C 08 03 A6 */ mtlr r0
|
||||
/* 802BD508 38 21 00 10 */ addi r1, r1, 0x10
|
||||
/* 802BD50C 4E 80 00 20 */ blr
|
||||
|
|
@ -1,16 +0,0 @@
|
|||
lbl_802BBCDC:
|
||||
/* 802BBCDC E0 24 00 00 */ psq_l f1, 0(r4), 0, 0 /* qr0 */
|
||||
/* 802BBCE0 E0 03 00 00 */ psq_l f0, 0(r3), 0, 0 /* qr0 */
|
||||
/* 802BBCE4 10 01 00 28 */ ps_sub f0, f1, f0
|
||||
/* 802BBCE8 F0 03 00 0C */ psq_st f0, 12(r3), 0, 0 /* qr0 */
|
||||
/* 802BBCEC E0 24 80 08 */ psq_l f1, 8(r4), 1, 0 /* qr0 */
|
||||
/* 802BBCF0 E0 03 80 08 */ psq_l f0, 8(r3), 1, 0 /* qr0 */
|
||||
/* 802BBCF4 10 01 00 28 */ ps_sub f0, f1, f0
|
||||
/* 802BBCF8 F0 03 80 14 */ psq_st f0, 20(r3), 1, 0 /* qr0 */
|
||||
/* 802BBCFC C0 04 00 00 */ lfs f0, 0(r4)
|
||||
/* 802BBD00 D0 03 00 00 */ stfs f0, 0(r3)
|
||||
/* 802BBD04 C0 04 00 04 */ lfs f0, 4(r4)
|
||||
/* 802BBD08 D0 03 00 04 */ stfs f0, 4(r3)
|
||||
/* 802BBD0C C0 04 00 08 */ lfs f0, 8(r4)
|
||||
/* 802BBD10 D0 03 00 08 */ stfs f0, 8(r3)
|
||||
/* 802BBD14 4E 80 00 20 */ blr
|
||||
|
|
@ -1,21 +0,0 @@
|
|||
lbl_802BDCB0:
|
||||
/* 802BDCB0 E0 64 00 04 */ psq_l f3, 4(r4), 0, 0 /* qr0 */
|
||||
/* 802BDCB4 E0 45 00 04 */ psq_l f2, 4(r5), 0, 0 /* qr0 */
|
||||
/* 802BDCB8 10 63 00 B2 */ ps_mul f3, f3, f2
|
||||
/* 802BDCBC E0 04 00 00 */ psq_l f0, 0(r4), 0, 0 /* qr0 */
|
||||
/* 802BDCC0 E0 45 00 00 */ psq_l f2, 0(r5), 0, 0 /* qr0 */
|
||||
/* 802BDCC4 10 40 18 BA */ ps_madd f2, f0, f2, f3
|
||||
/* 802BDCC8 10 42 18 D4 */ ps_sum0 f2, f2, f3, f3
|
||||
/* 802BDCCC E0 84 00 04 */ psq_l f4, 4(r4), 0, 0 /* qr0 */
|
||||
/* 802BDCD0 E0 66 00 04 */ psq_l f3, 4(r6), 0, 0 /* qr0 */
|
||||
/* 802BDCD4 10 84 00 F2 */ ps_mul f4, f4, f3
|
||||
/* 802BDCD8 E0 66 00 00 */ psq_l f3, 0(r6), 0, 0 /* qr0 */
|
||||
/* 802BDCDC 10 60 20 FA */ ps_madd f3, f0, f3, f4
|
||||
/* 802BDCE0 10 63 21 14 */ ps_sum0 f3, f3, f4, f4
|
||||
/* 802BDCE4 C0 83 00 68 */ lfs f4, 0x68(r3)
|
||||
/* 802BDCE8 EC 01 00 B2 */ fmuls f0, f1, f2
|
||||
/* 802BDCEC EC 44 00 2A */ fadds f2, f4, f0
|
||||
/* 802BDCF0 EC 01 00 F2 */ fmuls f0, f1, f3
|
||||
/* 802BDCF4 EC 04 00 2A */ fadds f0, f4, f0
|
||||
/* 802BDCF8 EC 22 00 24 */ fdivs f1, f2, f0
|
||||
/* 802BDCFC 4E 80 00 20 */ blr
|
||||
|
|
@ -1,6 +0,0 @@
|
|||
lbl_802BC204:
|
||||
/* 802BC204 7C 60 1B 78 */ mr r0, r3
|
||||
/* 802BC208 1C 64 00 38 */ mulli r3, r4, 0x38
|
||||
/* 802BC20C 38 63 00 2C */ addi r3, r3, 0x2c
|
||||
/* 802BC210 7C 60 1A 14 */ add r3, r0, r3
|
||||
/* 802BC214 4E 80 00 20 */ blr
|
||||
|
|
@ -1,14 +0,0 @@
|
|||
lbl_802BC218:
|
||||
/* 802BC218 A0 03 00 12 */ lhz r0, 0x12(r3)
|
||||
/* 802BC21C 28 00 00 00 */ cmplwi r0, 0
|
||||
/* 802BC220 41 82 00 20 */ beq lbl_802BC240
|
||||
/* 802BC224 54 03 07 7F */ clrlwi. r3, r0, 0x1d
|
||||
/* 802BC228 4C 82 00 20 */ bnelr
|
||||
/* 802BC22C 54 00 06 77 */ rlwinm. r0, r0, 0, 0x19, 0x1b
|
||||
/* 802BC230 41 82 00 10 */ beq lbl_802BC240
|
||||
/* 802BC234 7C 03 26 70 */ srawi r3, r0, 4
|
||||
/* 802BC238 38 63 00 07 */ addi r3, r3, 7
|
||||
/* 802BC23C 4E 80 00 20 */ blr
|
||||
lbl_802BC240:
|
||||
/* 802BC240 38 60 00 00 */ li r3, 0
|
||||
/* 802BC244 4E 80 00 20 */ blr
|
||||
|
|
@ -1,3 +0,0 @@
|
|||
lbl_802BDED4:
|
||||
/* 802BDED4 80 63 01 D4 */ lwz r3, 0x1d4(r3)
|
||||
/* 802BDED8 4E 80 00 20 */ blr
|
||||
|
|
@ -1,6 +0,0 @@
|
|||
lbl_802BBED0:
|
||||
/* 802BBED0 7C 60 1B 78 */ mr r0, r3
|
||||
/* 802BBED4 1C 64 00 38 */ mulli r3, r4, 0x38
|
||||
/* 802BBED8 38 63 00 2C */ addi r3, r3, 0x2c
|
||||
/* 802BBEDC 7C 60 1A 14 */ add r3, r0, r3
|
||||
/* 802BBEE0 4E 80 00 20 */ blr
|
||||
|
|
@ -1,22 +0,0 @@
|
|||
lbl_802BC788:
|
||||
/* 802BC788 94 21 FF B0 */ stwu r1, -0x50(r1)
|
||||
/* 802BC78C 7C 08 02 A6 */ mflr r0
|
||||
/* 802BC790 90 01 00 54 */ stw r0, 0x54(r1)
|
||||
/* 802BC794 93 E1 00 4C */ stw r31, 0x4c(r1)
|
||||
/* 802BC798 7C 7F 1B 78 */ mr r31, r3
|
||||
/* 802BC79C 38 61 00 14 */ addi r3, r1, 0x14
|
||||
/* 802BC7A0 48 08 9C E5 */ bl PSMTXIdentity
|
||||
/* 802BC7A4 C0 02 C1 04 */ lfs f0, lit_1135(r2)
|
||||
/* 802BC7A8 D0 01 00 08 */ stfs f0, 8(r1)
|
||||
/* 802BC7AC D0 01 00 0C */ stfs f0, 0xc(r1)
|
||||
/* 802BC7B0 D0 01 00 10 */ stfs f0, 0x10(r1)
|
||||
/* 802BC7B4 7F E3 FB 78 */ mr r3, r31
|
||||
/* 802BC7B8 38 81 00 14 */ addi r4, r1, 0x14
|
||||
/* 802BC7BC 38 A1 00 08 */ addi r5, r1, 8
|
||||
/* 802BC7C0 38 C0 00 01 */ li r6, 1
|
||||
/* 802BC7C4 48 00 00 19 */ bl setCameraState__13Z2AudioCameraFPA4_CfR3Vecb
|
||||
/* 802BC7C8 83 E1 00 4C */ lwz r31, 0x4c(r1)
|
||||
/* 802BC7CC 80 01 00 54 */ lwz r0, 0x54(r1)
|
||||
/* 802BC7D0 7C 08 03 A6 */ mtlr r0
|
||||
/* 802BC7D4 38 21 00 50 */ addi r1, r1, 0x50
|
||||
/* 802BC7D8 4E 80 00 20 */ blr
|
||||
|
|
@ -1,24 +0,0 @@
|
|||
lbl_802BD2DC:
|
||||
/* 802BD2DC 94 21 FF E0 */ stwu r1, -0x20(r1)
|
||||
/* 802BD2E0 7C 08 02 A6 */ mflr r0
|
||||
/* 802BD2E4 90 01 00 24 */ stw r0, 0x24(r1)
|
||||
/* 802BD2E8 39 61 00 20 */ addi r11, r1, 0x20
|
||||
/* 802BD2EC 48 0A 4E F1 */ bl _savegpr_29
|
||||
/* 802BD2F0 7C 7D 1B 78 */ mr r29, r3
|
||||
/* 802BD2F4 7D 1E 43 78 */ mr r30, r8
|
||||
/* 802BD2F8 1C 7E 00 74 */ mulli r3, r30, 0x74
|
||||
/* 802BD2FC 3B E3 01 34 */ addi r31, r3, 0x134
|
||||
/* 802BD300 7F FD FA 14 */ add r31, r29, r31
|
||||
/* 802BD304 7F E3 FB 78 */ mr r3, r31
|
||||
/* 802BD308 7D 28 4B 78 */ mr r8, r9
|
||||
/* 802BD30C 4B FF F5 A1 */ bl setCameraState__13Z2AudioCameraFPA4_fR3VecR3Vecffbb
|
||||
/* 802BD310 80 7D 01 D0 */ lwz r3, 0x1d0(r29)
|
||||
/* 802BD314 7F E4 FB 78 */ mr r4, r31
|
||||
/* 802BD318 7F C5 F3 78 */ mr r5, r30
|
||||
/* 802BD31C 4B FF FA F9 */ bl setMicState__9Z2SpotMicFP13Z2AudioCamerai
|
||||
/* 802BD320 39 61 00 20 */ addi r11, r1, 0x20
|
||||
/* 802BD324 48 0A 4F 05 */ bl _restgpr_29
|
||||
/* 802BD328 80 01 00 24 */ lwz r0, 0x24(r1)
|
||||
/* 802BD32C 7C 08 03 A6 */ mtlr r0
|
||||
/* 802BD330 38 21 00 20 */ addi r1, r1, 0x20
|
||||
/* 802BD334 4E 80 00 20 */ blr
|
||||
|
|
@ -0,0 +1,13 @@
|
|||
#ifndef J3DUD_H
|
||||
#define J3DUD_H
|
||||
|
||||
#include "MSL_C/math.h"
|
||||
#include "dolphin/types.h"
|
||||
|
||||
namespace J3DUD {
|
||||
inline f32 JMAAbs(f32 x) {
|
||||
return __fabsf(x);
|
||||
}
|
||||
}
|
||||
|
||||
#endif /* J3DUD_H */
|
||||
|
|
@ -16,7 +16,7 @@ public:
|
|||
TInner() : mSeqData(NULL, 0) {}
|
||||
|
||||
/* 0x000 */ JASTrack outputTrack;
|
||||
/* 0x248 */ JASPoolAllocObject<JAISoundChild>* mSoundChild[32];
|
||||
/* 0x248 */ JAISoundChild* mSoundChild[32];
|
||||
/* 0x2C8 */ JAITempoMgr mTempoMgr;
|
||||
/* 0x2D8 */ JASSoundParams mSoundParams;
|
||||
/* 0x2EC */ JAISeqData mSeqData;
|
||||
|
|
|
|||
|
|
@ -61,15 +61,15 @@ public:
|
|||
};
|
||||
|
||||
template <typename T>
|
||||
class JASPoolAllocObject : public T {
|
||||
class JASPoolAllocObject {
|
||||
public:
|
||||
static void* operator new(size_t n) {
|
||||
JASMemPool<T>* memPool = getMemPool();
|
||||
return memPool->alloc(n);
|
||||
return memPool->alloc(sizeof(T));
|
||||
}
|
||||
static void operator delete(void* ptr, size_t n) {
|
||||
JASMemPool<T>* memPool_ = getMemPool();
|
||||
memPool_->free(ptr, n);
|
||||
memPool_->free(ptr, sizeof(T));
|
||||
}
|
||||
static void newMemPool(int param_0) {
|
||||
JASMemPool<T>* memPool_ = getMemPool();
|
||||
|
|
@ -103,15 +103,15 @@ public:
|
|||
};
|
||||
|
||||
template <typename T>
|
||||
class JASPoolAllocObject_MultiThreaded : public T {
|
||||
class JASPoolAllocObject_MultiThreaded {
|
||||
public:
|
||||
static void* operator new(size_t n) {
|
||||
JASMemPool_MultiThreaded<T>* memPool_ = getMemPool();
|
||||
return memPool_->alloc(n);
|
||||
return memPool_->alloc(sizeof(T));
|
||||
}
|
||||
static void operator delete(void* ptr, size_t n) {
|
||||
JASMemPool_MultiThreaded<T>* memPool_ = getMemPool();
|
||||
memPool_->free(ptr, n);
|
||||
memPool_->free(ptr, sizeof(T));
|
||||
}
|
||||
|
||||
static void newMemPool(int n) {
|
||||
|
|
|
|||
|
|
@ -46,9 +46,9 @@ inline void setTVec3f(const f32* vec_a, f32* vec_b) {
|
|||
register f32 b_x;
|
||||
|
||||
asm {
|
||||
psq_l a_x, 0(v_a), 0, 0 /* qr0 */
|
||||
psq_l a_x, 0(v_a), 0, 0
|
||||
lfs b_x, 8(v_a)
|
||||
psq_st a_x, 0(v_b), 0, 0 /* qr0 */
|
||||
psq_st a_x, 0(v_b), 0, 0
|
||||
stfs b_x, 8(v_b)
|
||||
};
|
||||
}
|
||||
|
|
@ -165,6 +165,21 @@ struct TVec3<f32> {
|
|||
scale(norm);
|
||||
}
|
||||
|
||||
void normalize(const TVec3<f32>& other) {
|
||||
f32 sq = other.squared();
|
||||
if (sq <= FLT_EPSILON * 32.0f) {
|
||||
zero();
|
||||
return;
|
||||
}
|
||||
f32 norm;
|
||||
if (sq <= 0.0f) {
|
||||
norm = sq;
|
||||
} else {
|
||||
norm = fsqrt_step(sq);
|
||||
}
|
||||
scale(norm, other);
|
||||
}
|
||||
|
||||
f32 length() const {
|
||||
return PSVECMag((Vec*)this);
|
||||
}
|
||||
|
|
@ -184,6 +199,22 @@ struct TVec3<f32> {
|
|||
};
|
||||
}
|
||||
|
||||
void scale(register f32 sc, const TVec3<f32>& other) {
|
||||
register const f32* src = &other.x;
|
||||
register f32 z;
|
||||
register f32 x_y;
|
||||
register f32* dst = &x;
|
||||
register f32 zres;
|
||||
asm {
|
||||
psq_l x_y, 0(src), 0, 0
|
||||
psq_l z, 8(src), 1, 0
|
||||
ps_muls0 x_y, x_y, sc
|
||||
psq_st x_y, 0(dst), 0, 0
|
||||
ps_muls0 zres, z, sc
|
||||
psq_st zres, 8(dst), 1, 0
|
||||
};
|
||||
}
|
||||
|
||||
void negateInternal(TVec3<f32>* dst) {
|
||||
register f32* rdst = &dst->x;
|
||||
const register f32* src = &x;
|
||||
|
|
@ -232,6 +263,25 @@ struct TVec3<f32> {
|
|||
}
|
||||
scale(norm * len);
|
||||
}
|
||||
|
||||
f32 dot(const TVec3<f32>& other) const {
|
||||
register const f32* pThis = &x;
|
||||
register const f32* pOther = &other.x;
|
||||
register f32 otherReg;
|
||||
register f32 thisyz;
|
||||
register f32 res;
|
||||
register f32 thisxy;
|
||||
asm {
|
||||
psq_l thisyz, 4(pThis), 0, 0
|
||||
psq_l otherReg, 4(pOther), 0, 0
|
||||
ps_mul thisyz, thisyz, otherReg
|
||||
psq_l thisxy, 0(pThis), 0, 0
|
||||
psq_l otherReg, 0(pOther), 0, 0
|
||||
ps_madd res, thisxy, otherReg, thisyz
|
||||
ps_sum0 res, res, thisyz, thisyz
|
||||
};
|
||||
return res;
|
||||
}
|
||||
};
|
||||
|
||||
template <typename T>
|
||||
|
|
@ -272,6 +322,23 @@ struct TVec2 {
|
|||
return (x >= other.x) && (y >= other.y) ? true : false;
|
||||
}
|
||||
|
||||
f32 dot(const TVec2<T>& other) {
|
||||
return x * other.x + y * other.y;
|
||||
}
|
||||
|
||||
f32 squared() {
|
||||
return dot(*this);
|
||||
}
|
||||
|
||||
f32 length() {
|
||||
f32 sqr = squared();
|
||||
if (sqr <= 0.0f) {
|
||||
return sqr;
|
||||
}
|
||||
sqr *= fsqrt_step(sqr);
|
||||
return sqr;
|
||||
}
|
||||
|
||||
T x;
|
||||
T y;
|
||||
};
|
||||
|
|
@ -330,6 +397,19 @@ struct TBox2 : TBox<TVec2<T> > {
|
|||
void set(f32 x0, f32 y0, f32 x1, f32 y1) { i.set(x0, y0); f.set(x1, y1); }
|
||||
};
|
||||
|
||||
template<typename T>
|
||||
struct TUtil {
|
||||
static inline T clamp(T v, T min, T max) {
|
||||
if (v < min) {
|
||||
return min;
|
||||
}
|
||||
if (v > max) {
|
||||
return max;
|
||||
}
|
||||
return v;
|
||||
}
|
||||
};
|
||||
|
||||
// clang-format on
|
||||
|
||||
} // namespace JGeometry
|
||||
|
|
|
|||
|
|
@ -16,6 +16,20 @@ struct TSinCosTable {
|
|||
}
|
||||
return table[(u16)(8192.0f * v) & 0x1fff].first;
|
||||
}
|
||||
|
||||
inline f32 sinDegree(f32 degree) {
|
||||
if (degree < 0.0f) {
|
||||
return -table[(u16)(-22.755556106567383f * degree) & 0x1fffU].first;
|
||||
}
|
||||
return table[(u16)(22.755556106567383f * degree) & 0x1fffU].first;
|
||||
}
|
||||
|
||||
inline f32 cosDegree(f32 degree) {
|
||||
if (degree < 0.0f) {
|
||||
degree = -degree;
|
||||
}
|
||||
return table[(u16)(22.755556106567383f * degree) & 0x1fffU].second;
|
||||
}
|
||||
};
|
||||
|
||||
struct TAtanTable {
|
||||
|
|
@ -52,4 +66,12 @@ inline f32 JMASinLap(f32 v) {
|
|||
return JMath::sincosTable_.sinLap(v);
|
||||
}
|
||||
|
||||
inline f32 JMASinDegree(f32 degree) {
|
||||
return JMath::sincosTable_.sinDegree(degree);
|
||||
}
|
||||
|
||||
inline f32 JMACosDegree(f32 degree) {
|
||||
return JMath::sincosTable_.cosDegree(degree);
|
||||
}
|
||||
|
||||
#endif /* JMATRIGONOMETRIC_H */
|
||||
|
|
|
|||
|
|
@ -38,6 +38,29 @@ inline f32 fastReciprocal(f32 value) {
|
|||
return JMAFastReciprocal(value);
|
||||
}
|
||||
|
||||
inline void gekko_ps_copy12(register f32* dst, register const f32* src) {
|
||||
register f32 src0;
|
||||
register f32 src1;
|
||||
register f32 src2;
|
||||
register f32 src3;
|
||||
register f32 src4;
|
||||
register f32 src5;
|
||||
asm {
|
||||
psq_l src0, 0(src), 0, 0
|
||||
psq_l src1, 8(src), 0, 0
|
||||
psq_l src2, 16(src), 0, 0
|
||||
psq_l src3, 24(src), 0, 0
|
||||
psq_l src4, 32(src), 0, 0
|
||||
psq_l src5, 40(src), 0, 0
|
||||
psq_st src0, 0(dst), 0, 0
|
||||
psq_st src1, 8(dst), 0, 0
|
||||
psq_st src2, 16(dst), 0, 0
|
||||
psq_st src3, 24(dst), 0, 0
|
||||
psq_st src4, 32(dst), 0, 0
|
||||
psq_st src5, 40(dst), 0, 0
|
||||
};
|
||||
}
|
||||
|
||||
}; // namespace JMath
|
||||
|
||||
#endif /* JMATH_H */
|
||||
|
|
|
|||
|
|
@ -0,0 +1,40 @@
|
|||
#ifndef TPOSITION3_H
|
||||
#define TPOSITION3_H
|
||||
|
||||
#include "dolphin/mtx/mtx.h"
|
||||
#include "JSystem/JMath/JMath.h"
|
||||
|
||||
namespace JGeometry {
|
||||
|
||||
template <typename T>
|
||||
struct SMatrix34C {
|
||||
T data[3][4];
|
||||
};
|
||||
|
||||
template <>
|
||||
struct SMatrix34C<f32> {
|
||||
f32 data[3][4];
|
||||
|
||||
void identity() { PSMTXIdentity(data); }
|
||||
|
||||
typedef f32 ArrType[4];
|
||||
void set(const ArrType* src) { JMath::gekko_ps_copy12((f32*)data, (f32*)src); }
|
||||
|
||||
operator ArrType*() { return data; }
|
||||
operator const ArrType*() const { return data; }
|
||||
};
|
||||
|
||||
template <typename T>
|
||||
struct TMatrix34 : public T {};
|
||||
|
||||
template <typename T>
|
||||
struct TRotation3 : public T {};
|
||||
|
||||
template <typename T>
|
||||
struct TPosition3 : public T {};
|
||||
|
||||
typedef TPosition3<TRotation3<TMatrix34<SMatrix34C<f32> > > > TPosition3f32;
|
||||
|
||||
} // namespace JGeometry
|
||||
|
||||
#endif
|
||||
|
|
@ -8,6 +8,11 @@ public:
|
|||
f32 mPosX;
|
||||
f32 mPosY;
|
||||
f32 mRadius;
|
||||
|
||||
f32 GetCx() const { return mPosX; }
|
||||
f32 GetCy() const { return mPosY; }
|
||||
f32 GetR() const { return mRadius; }
|
||||
|
||||
cM2dGCir() {}
|
||||
virtual ~cM2dGCir() {}
|
||||
};
|
||||
|
|
|
|||
|
|
@ -4,7 +4,11 @@
|
|||
#include "dolphin/types.h"
|
||||
|
||||
struct request_base_class {
|
||||
u8 field_0x0;
|
||||
struct {
|
||||
u8 flag0 : 1;
|
||||
u8 flag1 : 1;
|
||||
u8 flag2 : 6;
|
||||
} field_0x0;
|
||||
u8 field_0x1;
|
||||
u8 field_0x2;
|
||||
u8 field_0x3;
|
||||
|
|
@ -201,8 +205,8 @@ struct request_base_class {
|
|||
};
|
||||
|
||||
int cReq_Is_Done(request_base_class*);
|
||||
int cReq_Done(request_base_class*);
|
||||
int cReq_Command(request_base_class*, u8);
|
||||
int cReq_Create(request_base_class*, u8);
|
||||
void cReq_Done(request_base_class*);
|
||||
void cReq_Command(request_base_class*, u8);
|
||||
void cReq_Create(request_base_class*, u8);
|
||||
|
||||
#endif /* C_REQUEST_H */
|
||||
|
|
|
|||
|
|
@ -3,22 +3,72 @@
|
|||
|
||||
#include "JSystem/JAudio2/JAIAudience.h"
|
||||
#include "JSystem/JAudio2/JASGadget.h"
|
||||
#include "JSystem/JAudio2/JAIAudible.h"
|
||||
#include "JSystem/JAudio2/JASSoundParams.h"
|
||||
#include "JSystem/JAudio2/JASHeapCtrl.h"
|
||||
#include "JSystem/TPosition3.hh"
|
||||
#include "dolphin/mtx/mtxvec.h"
|
||||
|
||||
struct Z2Audible;
|
||||
|
||||
struct JAUAudibleParam {
|
||||
f32 getDopplerPower() const {
|
||||
return (u32)((*(u8*)&field_0x0.raw >> 4) & 0xf) * (1.0f / 15.0f);
|
||||
}
|
||||
union {
|
||||
struct {
|
||||
u16 f0;
|
||||
u16 f1;
|
||||
} half;
|
||||
struct {
|
||||
u8 b0_0 : 1;
|
||||
u8 b0_1 : 1;
|
||||
u8 b0_2 : 1;
|
||||
u8 b0_3 : 1;
|
||||
u8 b0_4 : 1;
|
||||
u8 b0_5 : 1;
|
||||
u8 b0_6 : 1;
|
||||
u8 b0_7 : 1;
|
||||
u8 b1;
|
||||
u8 b2;
|
||||
u8 b3;
|
||||
} bytes;
|
||||
u32 raw;
|
||||
} field_0x0;
|
||||
};
|
||||
|
||||
struct Z2AudibleAbsPos {
|
||||
/* 802BBCDC */ void calc(JGeometry::TVec3<f32> const&);
|
||||
/* 802BBD18 */ void init(JGeometry::TVec3<f32>*, JGeometry::TVec3<f32> const&,
|
||||
JGeometry::TVec3<f32> const*);
|
||||
|
||||
/* 0x00 */ JGeometry::TVec3<f32> field_0x0;
|
||||
/* 0x0C */ JGeometry::TVec3<f32> field_0xc;
|
||||
};
|
||||
|
||||
struct Z2AudioCamera {
|
||||
/* 802BC758 */ Z2AudioCamera();
|
||||
/* 802BC788 */ void init();
|
||||
/* 802BC8AC */ void setCameraState(f32 (*)[4], Vec&, Vec&, f32, f32, bool, bool);
|
||||
/* 802BC7DC */ void setCameraState(f32 const (*)[4], Vec&, bool);
|
||||
/* 802BCBEC */ void convertAbsToRel(Z2Audible*, int);
|
||||
/* 802BCC7C */ void convertAbsToRel(Vec&, Vec*) const;
|
||||
/* 802BCCC0 */ void isInSight(Vec&) const;
|
||||
/* 802BCC7C */ bool convertAbsToRel(Vec&, Vec*) const;
|
||||
/* 802BCCC0 */ bool isInSight(Vec&) const;
|
||||
JGeometry::TVec3<f32>* getPos() { return &mPos; }
|
||||
f32 getVolCenterZ() const { return mVolCenterZ; }
|
||||
void setMainCamera() { mSetMainCamera = true; }
|
||||
void setTargetVolume(f32 volume) {
|
||||
if (volume < 0.0f) {
|
||||
volume = 0.0f;
|
||||
}
|
||||
mTargetVolume = volume;
|
||||
}
|
||||
f32 getDolbyCenterZ() const { return mDolbyCenterZ; }
|
||||
f32 getFovySin() const { return mFovySin; }
|
||||
const JGeometry::TVec3<f32>* getVel() const { return &mVel; }
|
||||
|
||||
|
||||
/* 0x00 */ u8 field_0x0[0x30]; // set up JGeometry::TPosition3
|
||||
/* 0x00 */ JGeometry::TPosition3f32 field_0x0;
|
||||
/* 0x30 */ JGeometry::TVec3<f32> mVel;
|
||||
/* 0x3C */ JGeometry::TVec3<f32> mPos;
|
||||
/* 0x48 */ JGeometry::TVec3<f32> field_0x48;
|
||||
|
|
@ -37,17 +87,18 @@ struct Z2SpotMic {
|
|||
/* 802BCDA8 */ void clearMicState(int);
|
||||
/* 802BCDE8 */ void calcVolumeFactor(int);
|
||||
/* 802BCE14 */ void setMicState(Z2AudioCamera*, int);
|
||||
/* 802BCF5C */ void calcMicDist(Z2Audible*);
|
||||
/* 802BCFE4 */ void calcMicPriority(f32);
|
||||
/* 802BD03C */ void calcMicVolume(f32, int, f32);
|
||||
/* 802BCF5C */ f32 calcMicDist(Z2Audible*);
|
||||
/* 802BCFE4 */ u32 calcMicPriority(f32);
|
||||
/* 802BD03C */ f32 calcMicVolume(f32, int, f32);
|
||||
|
||||
void setPosPtr(Vec* i_posPtr) { mPosPtr = i_posPtr; }
|
||||
bool isOn() const { return mMicOn; }
|
||||
|
||||
/* 0x00 */ f32 field_0x0;
|
||||
/* 0x04 */ f32 field_0x4;
|
||||
/* 0x08 */ f32 field_0x8;
|
||||
/* 0x0C */ f32 field_0xc;
|
||||
/* 0x10 */ int field_0x10[1];
|
||||
/* 0x10 */ Z2AudioCamera* field_0x10[1];
|
||||
/* 0x14 */ Vec* mPosPtr;
|
||||
/* 0x18 */ f32 field_0x18[1];
|
||||
/* 0x1C */ f32 field_0x1c;
|
||||
|
|
@ -65,21 +116,39 @@ struct Z2Audience3DSetting {
|
|||
/* 802BC6A4 */ void initDolbyDist();
|
||||
/* 802BC6F8 */ void updateDolbyDist(f32, f32);
|
||||
|
||||
/* 0x000 */ f32 field_0x0;
|
||||
/* 0x004 */ f32 field_0x4;
|
||||
/* 0x008 */ f32 field_0x8;
|
||||
/* 0x00C */ f32 field_0xc;
|
||||
/* 0x010 */ f32 field_0x10;
|
||||
/* 0x014 */ f32 field_0x14;
|
||||
/* 0x018 */ f32 field_0x18;
|
||||
/* 0x01C */ f32 field_0x1c;
|
||||
/* 0x020 */ f32 field_0x20;
|
||||
/* 0x024 */ f32 field_0x24;
|
||||
/* 0x028 */ f32 field_0x28;
|
||||
/* 0x02C */ f32 field_0x2c;
|
||||
/* 0x030 */ f32 field_0x30;
|
||||
/* 0x034 */ f32 field_0x34;
|
||||
/* 0x038 */ f32 field_0x38;
|
||||
void calcVolumeFactorAll() {
|
||||
field_0x0[1] = 1.25f * field_0x0[0];
|
||||
field_0x0[2] = 1.5f * field_0x0[0];
|
||||
field_0x0[3] = 2.0f * field_0x0[0];
|
||||
field_0x0[4] = 3.0f * field_0x0[0];
|
||||
field_0x0[5] = 4.0f * field_0x0[0];
|
||||
field_0x0[6] = 6.0f * field_0x0[0];
|
||||
field_0x0[7] = 8.0f * field_0x0[0];
|
||||
field_0x0[8] = 0.9f * field_0x0[0];
|
||||
field_0x0[9] = 0.8f * field_0x0[0];
|
||||
field_0x0[10] = 0.7f * field_0x0[0];
|
||||
field_0x0[11] = 0.6f * field_0x0[0];
|
||||
field_0x0[12] = 0.5f * field_0x0[0];
|
||||
field_0x0[13] = 0.4f * field_0x0[0];
|
||||
field_0x0[14] = 0.3f * field_0x0[0];
|
||||
for (int i = 0; i < 15; i++) {
|
||||
field_0x70[i] = (field_0x40 - 1.0f) / (field_0x0[i] - field_0x3c);
|
||||
}
|
||||
}
|
||||
|
||||
void calcPriorityFactorAll() {
|
||||
for (int i = 0; i < 15; i++) {
|
||||
field_0xac[i] = field_0x64 / (field_0x0[i] - field_0x3c);
|
||||
}
|
||||
}
|
||||
|
||||
void calcFxMixFactorAll() {
|
||||
for (int i = 0; i < 15; i++) {
|
||||
field_0xe8[i] = (field_0x54 - field_0x50) / (field_0x0[i] - field_0x3c);
|
||||
}
|
||||
}
|
||||
|
||||
/* 0x000 */ f32 field_0x0[15];
|
||||
/* 0x03C */ f32 field_0x3c;
|
||||
/* 0x040 */ f32 field_0x40;
|
||||
/* 0x044 */ f32 field_0x44;
|
||||
|
|
@ -90,7 +159,7 @@ struct Z2Audience3DSetting {
|
|||
/* 0x058 */ f32 field_0x58;
|
||||
/* 0x05C */ f32 field_0x5c;
|
||||
/* 0x060 */ f32 field_0x60;
|
||||
/* 0x064 */ int field_0x64;
|
||||
/* 0x064 */ u32 field_0x64;
|
||||
/* 0x068 */ f32 field_0x68;
|
||||
/* 0x06C */ f32 field_0x6c;
|
||||
/* 0x070 */ f32 field_0x70[15];
|
||||
|
|
@ -100,26 +169,68 @@ struct Z2Audience3DSetting {
|
|||
/* 0x125 */ bool mDolbyDistInit;
|
||||
}; // Size: 0x128
|
||||
|
||||
struct Z2AudibleRelPos {
|
||||
/* 0x00 */ JGeometry::TVec3<f32> field_0x00;
|
||||
/* 0x0C */ f32 field_0xC;
|
||||
/* 0x10 */ f32 field_0x10;
|
||||
};
|
||||
|
||||
struct Z2AudibleChannel {
|
||||
/* 802BBE74 */ Z2AudibleChannel();
|
||||
void init() {
|
||||
field_0x0.init();
|
||||
field_0x28 = -1.0f;
|
||||
mPan = 0.5f;
|
||||
mDolby = 0.0f;
|
||||
field_0x34 = 1.0f;
|
||||
}
|
||||
|
||||
/* 0x00 */ JASSoundParams field_0x0;
|
||||
/* 0x14 */ Z2AudibleRelPos field_0x14;
|
||||
/* 0x28 */ f32 field_0x28;
|
||||
/* 0x2c */ f32 mPan;
|
||||
/* 0x30 */ f32 mDolby;
|
||||
/* 0x34 */ f32 field_0x34;
|
||||
};
|
||||
|
||||
struct Z2Audible : public JAIAudible, public JASPoolAllocObject<Z2Audible> {
|
||||
/* 802BBD94 */ Z2Audible(JGeometry::TVec3<f32> const&, JGeometry::TVec3<f32> const*, u32, bool);
|
||||
/* 802BBE98 */ void calc();
|
||||
/* 802BBED0 */ JASSoundParams* getOuterParams(int);
|
||||
/* 802BBEE4 */ void setOuterParams(JASSoundParams const&, JASSoundParams const&, int);
|
||||
/* 802BC204 */ Z2AudibleChannel* getChannel(int);
|
||||
/* 802BC218 */ u32 getDistVolBit();
|
||||
/* 802BD510 */ ~Z2Audible();
|
||||
bool isDoppler() {
|
||||
return ((*(u8*)&field_0x10.field_0x0) >> 4) & 0xf;
|
||||
}
|
||||
JAUAudibleParam* getAudibleParam() { return &field_0x10; }
|
||||
const JAUAudibleParam* getAudibleParam() const { return &field_0x10; }
|
||||
void setAudibleParam(JAUAudibleParam param) { field_0x10 = param; }
|
||||
const JGeometry::TVec3<f32>* getVel() const { return &field_0x14.field_0xc; }
|
||||
|
||||
/* 0x10 */ JAUAudibleParam field_0x10;
|
||||
/* 0x14 */ Z2AudibleAbsPos field_0x14;
|
||||
/* 0x2C */ Z2AudibleChannel field_0x2c[1];
|
||||
/* 0x64 */ f32 field_0x64[1];
|
||||
};
|
||||
|
||||
struct Z2Audience : public JAIAudience, public JASGlobalInstance<Z2Audience> {
|
||||
/* 802BD130 */ Z2Audience();
|
||||
/* 802BD2DC */ void setAudioCamera(f32 (*)[4], Vec&, Vec&, f32, f32, bool, int, bool);
|
||||
/* 802BD704 */ void calcOffMicSound(f32);
|
||||
/* 802BD704 */ f32 calcOffMicSound(f32);
|
||||
/* 802BD90C */ void setTargetVolume(f32, int);
|
||||
/* 802BD92C */ void convertAbsToRel(Vec&, Vec*, int);
|
||||
/* 802BD95C */ void calcRelPosVolume(Vec const&, f32, int);
|
||||
/* 802BDA44 */ void calcRelPosPan(Vec const&, int);
|
||||
/* 802BDB44 */ void calcRelPosDolby(Vec const&, int);
|
||||
/* 802BDBDC */ void calcVolume_(f32, int) const;
|
||||
/* 802BDC44 */ void calcDeltaPriority_(f32, int, bool) const;
|
||||
/* 802BDCB0 */ void calcPitchDoppler_(JGeometry::TVec3<f32> const&,
|
||||
/* 802BD92C */ bool convertAbsToRel(Vec&, Vec*, int);
|
||||
/* 802BD95C */ f32 calcRelPosVolume(Vec const&, f32, int);
|
||||
/* 802BDA44 */ f32 calcRelPosPan(Vec const&, int);
|
||||
/* 802BDB44 */ f32 calcRelPosDolby(Vec const&, int);
|
||||
/* 802BDBDC */ f32 calcVolume_(f32, int) const;
|
||||
/* 802BDC44 */ u32 calcDeltaPriority_(f32, int, bool) const;
|
||||
/* 802BDCB0 */ f32 calcPitchDoppler_(JGeometry::TVec3<f32> const&,
|
||||
JGeometry::TVec3<f32> const&,
|
||||
JGeometry::TVec3<f32> const&, f32) const;
|
||||
/* 802BDD00 */ void calcFxMix_(f32, int) const;
|
||||
/* 802BDD48 */ void calcPitch_(Z2AudibleChannel*, Z2Audible const*, Z2AudioCamera const*) const;
|
||||
/* 802BDD00 */ f32 calcFxMix_(f32, int) const;
|
||||
/* 802BDD48 */ f32 calcPitch_(Z2AudibleChannel*, Z2Audible const*, Z2AudioCamera const*) const;
|
||||
|
||||
/* 802BD1FC */ virtual ~Z2Audience();
|
||||
/* 802BD338 */ virtual JAIAudible* newAudible(JGeometry::TVec3<f32> const&, JAISoundID,
|
||||
|
|
@ -135,6 +246,7 @@ struct Z2Audience : public JAIAudience, public JASGlobalInstance<Z2Audience> {
|
|||
JGeometry::setTVec3f(*(Vec*)mAudioCamera[0].getPos(), *(Vec*)pos);
|
||||
return pos;
|
||||
}
|
||||
Z2Audience3DSetting* getSetting() { return &mSetting; }
|
||||
|
||||
/* 0x004 */ f32 field_0x4;
|
||||
/* 0x008 */ u8 field_0x8;
|
||||
|
|
|
|||
|
|
@ -23,7 +23,7 @@ struct JAIStreamDataMgr {
|
|||
|
||||
struct Z2SoundInfo /* : public JAISoundInfo, public JAUSoundInfo, public JAIStreamDataMgr */ : public JASGlobalInstance<Z2SoundInfo> {
|
||||
/* 802BB00C */ void getBgmSeqResourceID(JAISoundID) const;
|
||||
/* 802BB158 */ void getAudibleSwFull(JAISoundID);
|
||||
/* 802BB158 */ u32 getAudibleSwFull(JAISoundID);
|
||||
/* 802BB448 */ void getAudibleSw(JAISoundID) const;
|
||||
/* 802BBA10 */ void getStreamFilePath(JAISoundID);
|
||||
/* 802BBA88 */ void getStreamFileEntry(JAISoundID);
|
||||
|
|
@ -39,4 +39,8 @@ struct Z2SoundInfo /* : public JAISoundInfo, public JAUSoundInfo, public JAIStre
|
|||
/* 802BBBE0 */ virtual ~Z2SoundInfo();
|
||||
};
|
||||
|
||||
inline Z2SoundInfo* Z2GetSoundInfo() {
|
||||
return JASGlobalInstance<Z2SoundInfo>::getInstance();
|
||||
}
|
||||
|
||||
#endif /* Z2SOUNDINFO_H */
|
||||
|
|
|
|||
|
|
@ -7,6 +7,8 @@
|
|||
#include "JSystem/JAudio2/JAISeqMgr.h"
|
||||
#include "JSystem/JAudio2/JASAudioReseter.h" // JASCriticalSection
|
||||
#include "JSystem/JAudio2/JAISoundChild.h"
|
||||
#include "JSystem/JAudio2/JAIAudience.h"
|
||||
#include "JSystem/JKernel/JKRHeap.h"
|
||||
#include "dol2asm.h"
|
||||
|
||||
//
|
||||
|
|
@ -90,22 +92,10 @@ extern "C" extern u8 data_80451318[8];
|
|||
|
||||
/* 802A0A6C-802A0A8C 29B3AC 0020+00 1/1 0/0 0/0 .text
|
||||
* JASTrack_isFreeOrStopped__20@unnamed@JAISeq_cpp@FP8JASTrack */
|
||||
// instruction order
|
||||
#ifdef NONMATCHING
|
||||
static bool func_802A0A6C(JASTrack* track) {
|
||||
u8 status = track->getStatus();
|
||||
return status == 0 || status == 2;
|
||||
}
|
||||
#else
|
||||
#pragma push
|
||||
#pragma optimization_level 0
|
||||
#pragma optimizewithasm off
|
||||
static asm bool func_802A0A6C(JASTrack*) {
|
||||
nofralloc
|
||||
#include "asm/JSystem/JAudio2/JAISeq/func_802A0A6C.s"
|
||||
}
|
||||
#pragma pop
|
||||
#endif
|
||||
|
||||
/* 803C98F4-803C9928 026A14 0030+04 1/1 2/2 0/0 .data __vt__6JAISeq */
|
||||
SECTION_DATA extern void* __vt__6JAISeq[12 + 1 /* padding */] = {
|
||||
|
|
@ -196,11 +186,12 @@ void JAISeq::playSeqData_(JASSoundParams const& param_0, JAISoundActivity param_
|
|||
static u8 lit_716[12];
|
||||
|
||||
/* 802A0CA4-802A0E48 29B5E4 01A4+00 1/1 0/0 0/0 .text reserveChildTracks___6JAISeqFi */
|
||||
// operator new?
|
||||
// Matches with literals
|
||||
#ifdef NONMATCHING
|
||||
void JAISeq::reserveChildTracks_(int param_0) {
|
||||
for (int i = 0; i < 2; i++) {
|
||||
JASTrack* track = new JASPoolAllocObject_MultiThreaded<JASTrack>();
|
||||
JASPoolAllocObject_MultiThreaded<JASTrack>* allocobj = new JASPoolAllocObject_MultiThreaded<JASTrack>();
|
||||
JASTrack* track = new (allocobj) JASTrack();
|
||||
if (track) {
|
||||
track->setAutoDelete(true);
|
||||
inner_.outputTrack.connectChild(i, track);
|
||||
|
|
@ -208,7 +199,8 @@ void JAISeq::reserveChildTracks_(int param_0) {
|
|||
if (i * 16 + j >= param_0) {
|
||||
continue;
|
||||
}
|
||||
JASTrack* track2 = new JASPoolAllocObject_MultiThreaded<JASTrack>();
|
||||
JASPoolAllocObject_MultiThreaded<JASTrack>* allocobj2 = new JASPoolAllocObject_MultiThreaded<JASTrack>();
|
||||
JASTrack* track2 = new (allocobj2) JASTrack();
|
||||
if (track2) {
|
||||
track2->setAutoDelete(true);
|
||||
track->connectChild(j, track2);
|
||||
|
|
@ -329,7 +321,7 @@ u8 data_804340B0[16];
|
|||
void JAISeq::die_() {
|
||||
for (int i = 0; i < 32; i++) {
|
||||
if (inner_.mSoundChild[i]) {
|
||||
delete inner_.mSoundChild[i];
|
||||
delete (JASPoolAllocObject<JAISoundChild>*)inner_.mSoundChild[i];
|
||||
inner_.mSoundChild[i] = NULL;
|
||||
}
|
||||
}
|
||||
|
|
@ -447,7 +439,8 @@ JAISoundChild* JAISeq::getChild(int index) {
|
|||
if (inner_.mSoundChild[index]) {
|
||||
return inner_.mSoundChild[index];
|
||||
}
|
||||
inner_.mSoundChild[index] = new JASPoolAllocObject<JAISoundChild>();
|
||||
JASPoolAllocObject<JAISoundChild>* allocobj = new JASPoolAllocObject<JAISoundChild>();
|
||||
inner_.mSoundChild[index] = new (allocobj) JAISoundChild();
|
||||
if (!inner_.mSoundChild[index]) {
|
||||
return NULL;
|
||||
}
|
||||
|
|
@ -473,7 +466,7 @@ void JAISeq::releaseChild(int param_0) {
|
|||
if (track) {
|
||||
track->assignExtBuffer(0, NULL);
|
||||
}
|
||||
delete inner_.mSoundChild[param_0];
|
||||
delete (JASPoolAllocObject<JAISoundChild>*)inner_.mSoundChild[param_0];
|
||||
inner_.mSoundChild[param_0] = NULL;
|
||||
}
|
||||
}
|
||||
|
|
|
|||
|
|
@ -6,7 +6,6 @@
|
|||
#include "SSystem/SComponent/c_lib.h"
|
||||
#include "MSL_C/string.h"
|
||||
#include "SSystem/SComponent/c_math.h"
|
||||
#include "dol2asm.h"
|
||||
#include "dolphin/mtx/mtxvec.h"
|
||||
#include "dolphin/types.h"
|
||||
|
||||
|
|
|
|||
|
|
@ -4,67 +4,65 @@
|
|||
//
|
||||
|
||||
#include "SSystem/SComponent/c_m2d.h"
|
||||
#include "dol2asm.h"
|
||||
#include "SSystem/SComponent/c_m3d.h"
|
||||
#include "SSystem/SComponent/c_m3d_g_cir.h"
|
||||
|
||||
//
|
||||
// Types:
|
||||
//
|
||||
|
||||
struct cM2dGCir {};
|
||||
|
||||
//
|
||||
// Forward References:
|
||||
//
|
||||
|
||||
extern "C" void cM2d_CrossCirLin__FR8cM2dGCirffffPfPf();
|
||||
|
||||
//
|
||||
// External References:
|
||||
//
|
||||
|
||||
extern "C" extern u32 __float_nan;
|
||||
extern "C" extern f32 G_CM3D_F_ABS_MIN[1 + 1 /* padding */];
|
||||
|
||||
//
|
||||
// Declarations:
|
||||
//
|
||||
|
||||
/* ############################################################################################## */
|
||||
/* 804550F0-804550F4 0036F0 0004+00 1/1 0/0 0/0 .sdata2 @2266 */
|
||||
SECTION_SDATA2 static f32 lit_2266 = 2.0f;
|
||||
|
||||
/* 804550F4-804550F8 0036F4 0004+00 1/1 0/0 0/0 .sdata2 @2267 */
|
||||
SECTION_SDATA2 static f32 lit_2267 = 4.0f;
|
||||
|
||||
/* 804550F8-804550FC 0036F8 0004+00 1/1 0/0 0/0 .sdata2 @2268 */
|
||||
SECTION_SDATA2 static u8 lit_2268[4] = {
|
||||
0x00,
|
||||
0x00,
|
||||
0x00,
|
||||
0x00,
|
||||
};
|
||||
|
||||
/* 804550FC-80455100 0036FC 0004+00 1/1 0/0 0/0 .sdata2 @2269 */
|
||||
SECTION_SDATA2 static f32 lit_2269 = 1.0f;
|
||||
|
||||
/* 80455100-80455108 003700 0008+00 1/1 0/0 0/0 .sdata2 @2270 */
|
||||
SECTION_SDATA2 static f64 lit_2270 = 0.5;
|
||||
|
||||
/* 80455108-80455110 003708 0008+00 1/1 0/0 0/0 .sdata2 @2271 */
|
||||
SECTION_SDATA2 static f64 lit_2271 = 3.0;
|
||||
|
||||
/* 80455110-80455118 003710 0008+00 1/1 0/0 0/0 .sdata2 @2272 */
|
||||
SECTION_SDATA2 static u8 lit_2272[8] = {
|
||||
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
|
||||
};
|
||||
|
||||
/* 80268260-80268560 262BA0 0300+00 0/0 4/4 0/0 .text cM2d_CrossCirLin__FR8cM2dGCirffffPfPf */
|
||||
#pragma push
|
||||
#pragma optimization_level 0
|
||||
#pragma optimizewithasm off
|
||||
asm void cM2d_CrossCirLin(cM2dGCir& param_0, f32 param_1, f32 param_2, f32 param_3, f32 param_4,
|
||||
void cM2d_CrossCirLin(cM2dGCir& param_0, f32 param_1, f32 param_2, f32 param_3, f32 param_4,
|
||||
f32* param_5, f32* param_6) {
|
||||
nofralloc
|
||||
#include "asm/SSystem/SComponent/c_m2d/cM2d_CrossCirLin__FR8cM2dGCirffffPfPf.s"
|
||||
f32 fVar1 = param_1 - param_0.GetCx();
|
||||
f32 fVar15 = param_2 - param_0.GetCy();
|
||||
f32 dVar13 = param_3 * param_3 + param_4 * param_4;
|
||||
f32 dVar14 = 2.0f * ((param_3 * fVar1) + (param_4 * fVar15));
|
||||
f32 fVar3 = (fVar1 * fVar1 + fVar15 * fVar15) - (param_0.GetR() * param_0.GetR());
|
||||
f32 in_f31;
|
||||
|
||||
if (cM3d_IsZero(dVar13)) {
|
||||
if (!cM3d_IsZero(dVar14)) {
|
||||
in_f31 = -fVar3 / dVar14;
|
||||
}
|
||||
} else {
|
||||
f32 dVar10 = ((dVar14 * dVar14) - (4.0f * dVar13) * fVar3);
|
||||
if (cM3d_IsZero(dVar10)) {
|
||||
in_f31 =(-dVar14 / (2.0f * dVar13));
|
||||
} else {
|
||||
if (dVar10 < 0.0f) {
|
||||
} else {
|
||||
f32 fVar2 = 1.0f / (2.0f * dVar13);
|
||||
f32 fVar15 = sqrtf(dVar10);
|
||||
fVar15 = fVar2 * (-dVar14 + fVar15);
|
||||
f32 fVar16 = sqrtf(dVar10);
|
||||
f32 fVar4 = fVar2 * (-dVar14 - fVar16);
|
||||
if (fVar15 > fVar4) {
|
||||
in_f31 = fVar15;
|
||||
} else {
|
||||
in_f31 = fVar4;
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
if (cM3d_IsZero(in_f31)) {
|
||||
*param_5 = param_1;
|
||||
*param_6 = param_2;
|
||||
} else {
|
||||
*param_5 = param_1 + (in_f31 * param_3);
|
||||
*param_6 = param_2 + (in_f31 * param_4);
|
||||
}
|
||||
}
|
||||
#pragma pop
|
||||
|
|
|
|||
|
|
@ -6,10 +6,6 @@
|
|||
#include "SSystem/SComponent/c_phase.h"
|
||||
#include "dolphin/types.h"
|
||||
|
||||
extern "C" static void cPhs_UnCompleate__FP30request_of_phase_process_class();
|
||||
extern "C" static void cPhs_Compleate__FP30request_of_phase_process_class();
|
||||
extern "C" static void cPhs_Next__FP30request_of_phase_process_class();
|
||||
|
||||
//
|
||||
// Declarations:
|
||||
//
|
||||
|
|
|
|||
|
|
@ -10,11 +10,6 @@
|
|||
// Forward References:
|
||||
//
|
||||
|
||||
extern "C" void cReq_Is_Done__FP18request_base_class();
|
||||
extern "C" void cReq_Done__FP18request_base_class();
|
||||
extern "C" void cReq_Command__FP18request_base_classUc();
|
||||
extern "C" void cReq_Create__FP18request_base_classUc();
|
||||
|
||||
//
|
||||
// External References:
|
||||
//
|
||||
|
|
@ -24,42 +19,30 @@ extern "C" void cReq_Create__FP18request_base_classUc();
|
|||
//
|
||||
|
||||
/* 802667D4-80266800 261114 002C+00 0/0 3/3 0/0 .text cReq_Is_Done__FP18request_base_class */
|
||||
#pragma push
|
||||
#pragma optimization_level 0
|
||||
#pragma optimizewithasm off
|
||||
asm int cReq_Is_Done(request_base_class* param_0) {
|
||||
nofralloc
|
||||
#include "asm/SSystem/SComponent/c_request/cReq_Is_Done__FP18request_base_class.s"
|
||||
int cReq_Is_Done(request_base_class* param_0) {
|
||||
if (param_0->field_0x0.flag1 == 1) {
|
||||
param_0->field_0x0.flag1 = 0;
|
||||
return 1;
|
||||
}
|
||||
return 0;
|
||||
}
|
||||
#pragma pop
|
||||
|
||||
/* 80266800-80266830 261140 0030+00 0/0 3/3 0/0 .text cReq_Done__FP18request_base_class
|
||||
*/
|
||||
#pragma push
|
||||
#pragma optimization_level 0
|
||||
#pragma optimizewithasm off
|
||||
asm int cReq_Done(request_base_class* param_0) {
|
||||
nofralloc
|
||||
#include "asm/SSystem/SComponent/c_request/cReq_Done__FP18request_base_class.s"
|
||||
void cReq_Done(request_base_class* param_0) {
|
||||
param_0->field_0x0.flag0 = 0;
|
||||
param_0->field_0x0.flag1 = 1;
|
||||
param_0->field_0x0.flag2 = 0;
|
||||
}
|
||||
#pragma pop
|
||||
|
||||
/* 80266830-80266850 261170 0020+00 0/0 2/2 0/0 .text cReq_Command__FP18request_base_classUc */
|
||||
#pragma push
|
||||
#pragma optimization_level 0
|
||||
#pragma optimizewithasm off
|
||||
asm int cReq_Command(request_base_class* param_0, u8 param_1) {
|
||||
nofralloc
|
||||
#include "asm/SSystem/SComponent/c_request/cReq_Command__FP18request_base_classUc.s"
|
||||
void cReq_Command(request_base_class* param_0, u8 param_1) {
|
||||
cReq_Create(param_0, param_1);
|
||||
}
|
||||
#pragma pop
|
||||
|
||||
/* 80266850-80266880 261190 0030+00 1/1 2/2 0/0 .text cReq_Create__FP18request_base_classUc */
|
||||
#pragma push
|
||||
#pragma optimization_level 0
|
||||
#pragma optimizewithasm off
|
||||
asm int cReq_Create(request_base_class* param_0, u8 param_1) {
|
||||
nofralloc
|
||||
#include "asm/SSystem/SComponent/c_request/cReq_Create__FP18request_base_classUc.s"
|
||||
void cReq_Create(request_base_class* param_0, u8 param_1) {
|
||||
param_0->field_0x0.flag0 = 1;
|
||||
param_0->field_0x0.flag1 = 0;
|
||||
param_0->field_0x0.flag2 = param_1;
|
||||
}
|
||||
#pragma pop
|
||||
|
|
|
|||
File diff suppressed because it is too large
Load Diff
|
|
@ -122,7 +122,7 @@ asm void Z2SoundInfo::getPriority(JAISoundID param_0) const {
|
|||
#pragma push
|
||||
#pragma optimization_level 0
|
||||
#pragma optimizewithasm off
|
||||
asm void Z2SoundInfo::getAudibleSwFull(JAISoundID param_0) {
|
||||
asm u32 Z2SoundInfo::getAudibleSwFull(JAISoundID param_0) {
|
||||
nofralloc
|
||||
#include "asm/Z2AudioLib/Z2SoundInfo/getAudibleSwFull__11Z2SoundInfoF10JAISoundID.s"
|
||||
}
|
||||
|
|
|
|||
|
|
@ -1881,7 +1881,8 @@ static asm void cM_scos(s16 param_0) {
|
|||
#pragma push
|
||||
#pragma optimization_level 0
|
||||
#pragma optimizewithasm off
|
||||
static asm void JMAFastSqrt(f32 param_0) {
|
||||
//static asm void JMAFastSqrt(f32 param_0) {
|
||||
static asm void JMAFastSqrt__Ff() {
|
||||
nofralloc
|
||||
#include "asm/rel/d/a/b/d_a_b_ob/d_a_b_ob/JMAFastSqrt__Ff.s"
|
||||
}
|
||||
|
|
|
|||
|
|
@ -4833,7 +4833,8 @@ extern "C" asm void cMtx_XrotM__FPA4_fs() {
|
|||
#pragma push
|
||||
#pragma optimization_level 0
|
||||
#pragma optimizewithasm off
|
||||
static asm void JMAFastSqrt(f32 param_0) {
|
||||
//static asm void JMAFastSqrt(f32 param_0) {
|
||||
static asm void JMAFastSqrt__Ff() {
|
||||
nofralloc
|
||||
#include "asm/rel/d/a/e/d_a_e_wb/d_a_e_wb/JMAFastSqrt__Ff.s"
|
||||
}
|
||||
|
|
|
|||
|
|
@ -4040,7 +4040,8 @@ asm void daPy_py_c::checkGoronSideMove() const {
|
|||
#pragma push
|
||||
#pragma optimization_level 0
|
||||
#pragma optimizewithasm off
|
||||
static asm void JMAFastSqrt(f32 param_0) {
|
||||
//static asm void JMAFastSqrt(f32 param_0) {
|
||||
static asm void JMAFastSqrt__Ff() {
|
||||
nofralloc
|
||||
#include "asm/d/d_camera/JMAFastSqrt__Ff.s"
|
||||
}
|
||||
|
|
|
|||
Loading…
Reference in New Issue