mirror of
https://gitlab.com/ryandwyer/perfect-dark
synced 2026-09-07 19:00:41 -04:00
Decompile quaternion0f096ca0
This commit is contained in:
+12
-16
@@ -1565,15 +1565,11 @@ void bbikeTick(void)
|
||||
Mtxf sp164;
|
||||
Mtxf sp124;
|
||||
Mtxf spe4;
|
||||
u32 stack3;
|
||||
struct coord spd4;
|
||||
u32 stack4;
|
||||
struct coord spc4;
|
||||
f32 spd4[4];
|
||||
f32 spc4[4];
|
||||
f32 spb4[4];
|
||||
u32 stack5;
|
||||
struct coord spa4;
|
||||
u32 stack6;
|
||||
struct coord sp94;
|
||||
f32 spa4[4];
|
||||
f32 sp94[4];
|
||||
f32 sp84[4];
|
||||
struct coord pos;
|
||||
f32 breathing;
|
||||
@@ -1700,10 +1696,10 @@ void bbikeTick(void)
|
||||
mtx3ToMtx4(obj->realrot, &sp124);
|
||||
mtx00015f04(1.0f / obj->model->scale, &sp124);
|
||||
mtx4LoadYRotation(hoverpropGetTurnAngle(obj), &spe4);
|
||||
func0f097044(&spe4, &spd4);
|
||||
func0f097044(&sp124, &spc4);
|
||||
func0f0976c0(&spc4, &spd4);
|
||||
func0f0972b8(&spd4, &spc4, 0.8f, spb4);
|
||||
func0f097044(&spe4, spd4);
|
||||
func0f097044(&sp124, spc4);
|
||||
func0f0976c0(spc4, spd4);
|
||||
func0f0972b8(spd4, spc4, 0.8f, spb4);
|
||||
func0f096ed4(spb4, &sp124);
|
||||
mtx4MultMtx4InPlace(&sp124, &sp164);
|
||||
|
||||
@@ -1731,10 +1727,10 @@ void bbikeTick(void)
|
||||
-1, 0, 0, 0, NULL, -1, NULL, -1, -1, -1, -1);
|
||||
}
|
||||
|
||||
func0f097044(&g_Vars.currentplayer->bondentermtx, &spa4);
|
||||
func0f097044(&sp164, &sp94);
|
||||
func0f0976c0(&sp94, &spa4);
|
||||
func0f0972b8(&spa4, &sp94, 1.0f - g_Vars.currentplayer->bondentert2, sp84);
|
||||
func0f097044(&g_Vars.currentplayer->bondentermtx, spa4);
|
||||
func0f097044(&sp164, sp94);
|
||||
func0f0976c0(sp94, spa4);
|
||||
func0f0972b8(spa4, sp94, 1.0f - g_Vars.currentplayer->bondentert2, sp84);
|
||||
func0f096ed4(sp84, &sp164);
|
||||
}
|
||||
|
||||
|
||||
+6
-8
@@ -2067,10 +2067,8 @@ void bmoveUpdateHead(f32 arg0, f32 arg1, f32 arg2, Mtxf *arg3, f32 arg4)
|
||||
f32 sp244 = 0;
|
||||
Mtxf sp180;
|
||||
Mtxf sp116;
|
||||
u32 stack;
|
||||
struct coord sp100;
|
||||
u32 stack2;
|
||||
struct coord sp84;
|
||||
f32 sp100[4];
|
||||
f32 sp84[4];
|
||||
f32 sp68[4];
|
||||
|
||||
if (g_Vars.currentplayer->isdead == false) {
|
||||
@@ -2106,10 +2104,10 @@ void bmoveUpdateHead(f32 arg0, f32 arg1, f32 arg2, Mtxf *arg3, f32 arg4)
|
||||
mtx4MultMtx4InPlace(&sp116, &sp180);
|
||||
|
||||
if (arg3) {
|
||||
func0f097044(&sp180, &sp100);
|
||||
func0f097044(arg3, &sp84);
|
||||
func0f0976c0(&sp100, &sp84);
|
||||
func0f0972b8(&sp100, &sp84, arg4, sp68);
|
||||
func0f097044(&sp180, sp100);
|
||||
func0f097044(arg3, sp84);
|
||||
func0f0976c0(sp100, sp84);
|
||||
func0f0972b8(sp100, sp84, arg4, sp68);
|
||||
func0f096ed4(sp68, &sp180);
|
||||
}
|
||||
|
||||
|
||||
+21
-78
@@ -19,85 +19,28 @@ const u32 var7f1ab88c[] = {0x00000000};
|
||||
u32 var8006afa0 = 0x00000001;
|
||||
u32 var8006afa4 = 0x00000002;
|
||||
|
||||
void quaternion0f096ca0(struct coord *angle, f32 quat[4])
|
||||
{
|
||||
f32 cosx = cosf(angle->f[0] * 0.5f);
|
||||
f32 sinx = sinf(angle->f[0] * 0.5f);
|
||||
f32 cosy = cosf(angle->f[1] * 0.5f);
|
||||
f32 siny = sinf(angle->f[1] * 0.5f);
|
||||
f32 cosz = cosf(angle->f[2] * 0.5f);
|
||||
f32 sinz = sinf(angle->f[2] * 0.5f);
|
||||
|
||||
f32 cosx_cosy = cosx * cosy;
|
||||
f32 cosx_siny = cosx * siny;
|
||||
f32 sinx_cosy = sinx * cosy;
|
||||
f32 sinx_siny = sinx * siny;
|
||||
|
||||
quat[0] = cosx_cosy * cosz + sinx_siny * sinz;
|
||||
quat[1] = sinx_cosy * cosz - cosx_siny * sinz;
|
||||
quat[2] = cosx_siny * cosz + sinx_cosy * sinz;
|
||||
quat[3] = cosx_cosy * sinz - sinx_siny * cosz;
|
||||
}
|
||||
|
||||
GLOBAL_ASM(
|
||||
glabel func0f096ca0
|
||||
/* f096ca0: 27bdffc0 */ addiu $sp,$sp,-64
|
||||
/* f096ca4: f7b40018 */ sdc1 $f20,0x18($sp)
|
||||
/* f096ca8: afbf0024 */ sw $ra,0x24($sp)
|
||||
/* f096cac: afb00020 */ sw $s0,0x20($sp)
|
||||
/* f096cb0: afa50044 */ sw $a1,0x44($sp)
|
||||
/* f096cb4: 3c013f00 */ lui $at,0x3f00
|
||||
/* f096cb8: 4481a000 */ mtc1 $at,$f20
|
||||
/* f096cbc: c4840000 */ lwc1 $f4,0x0($a0)
|
||||
/* f096cc0: 00808025 */ or $s0,$a0,$zero
|
||||
/* f096cc4: 46142302 */ mul.s $f12,$f4,$f20
|
||||
/* f096cc8: 0c0068f4 */ jal cosf
|
||||
/* f096ccc: 00000000 */ nop
|
||||
/* f096cd0: e7a0003c */ swc1 $f0,0x3c($sp)
|
||||
/* f096cd4: c6060000 */ lwc1 $f6,0x0($s0)
|
||||
/* f096cd8: 46143302 */ mul.s $f12,$f6,$f20
|
||||
/* f096cdc: 0c0068f7 */ jal sinf
|
||||
/* f096ce0: 00000000 */ nop
|
||||
/* f096ce4: e7a00038 */ swc1 $f0,0x38($sp)
|
||||
/* f096ce8: c6080004 */ lwc1 $f8,0x4($s0)
|
||||
/* f096cec: 46144302 */ mul.s $f12,$f8,$f20
|
||||
/* f096cf0: 0c0068f4 */ jal cosf
|
||||
/* f096cf4: 00000000 */ nop
|
||||
/* f096cf8: e7a00034 */ swc1 $f0,0x34($sp)
|
||||
/* f096cfc: c60a0004 */ lwc1 $f10,0x4($s0)
|
||||
/* f096d00: 46145302 */ mul.s $f12,$f10,$f20
|
||||
/* f096d04: 0c0068f7 */ jal sinf
|
||||
/* f096d08: 00000000 */ nop
|
||||
/* f096d0c: e7a00030 */ swc1 $f0,0x30($sp)
|
||||
/* f096d10: c6040008 */ lwc1 $f4,0x8($s0)
|
||||
/* f096d14: 46142302 */ mul.s $f12,$f4,$f20
|
||||
/* f096d18: 0c0068f4 */ jal cosf
|
||||
/* f096d1c: 00000000 */ nop
|
||||
/* f096d20: c6060008 */ lwc1 $f6,0x8($s0)
|
||||
/* f096d24: e7a0002c */ swc1 $f0,0x2c($sp)
|
||||
/* f096d28: 46143302 */ mul.s $f12,$f6,$f20
|
||||
/* f096d2c: 0c0068f7 */ jal sinf
|
||||
/* f096d30: 00000000 */ nop
|
||||
/* f096d34: c7a8003c */ lwc1 $f8,0x3c($sp)
|
||||
/* f096d38: c7aa0034 */ lwc1 $f10,0x34($sp)
|
||||
/* f096d3c: c7b40038 */ lwc1 $f20,0x38($sp)
|
||||
/* f096d40: c7a40030 */ lwc1 $f4,0x30($sp)
|
||||
/* f096d44: 460a4082 */ mul.s $f2,$f8,$f10
|
||||
/* f096d48: c7b2002c */ lwc1 $f18,0x2c($sp)
|
||||
/* f096d4c: 8fa20044 */ lw $v0,0x44($sp)
|
||||
/* f096d50: 4604a402 */ mul.s $f16,$f20,$f4
|
||||
/* f096d54: 00000000 */ nop
|
||||
/* f096d58: 46121182 */ mul.s $f6,$f2,$f18
|
||||
/* f096d5c: 00000000 */ nop
|
||||
/* f096d60: 46008202 */ mul.s $f8,$f16,$f0
|
||||
/* f096d64: 46083280 */ add.s $f10,$f6,$f8
|
||||
/* f096d68: e44a0000 */ swc1 $f10,0x0($v0)
|
||||
/* f096d6c: c7a40034 */ lwc1 $f4,0x34($sp)
|
||||
/* f096d70: c7a80030 */ lwc1 $f8,0x30($sp)
|
||||
/* f096d74: c7a6003c */ lwc1 $f6,0x3c($sp)
|
||||
/* f096d78: 4604a382 */ mul.s $f14,$f20,$f4
|
||||
/* f096d7c: 00000000 */ nop
|
||||
/* f096d80: 46083302 */ mul.s $f12,$f6,$f8
|
||||
/* f096d84: 00000000 */ nop
|
||||
/* f096d88: 46127282 */ mul.s $f10,$f14,$f18
|
||||
/* f096d8c: 00000000 */ nop
|
||||
/* f096d90: 46006102 */ mul.s $f4,$f12,$f0
|
||||
/* f096d94: 46045181 */ sub.s $f6,$f10,$f4
|
||||
/* f096d98: 46126202 */ mul.s $f8,$f12,$f18
|
||||
/* f096d9c: 00000000 */ nop
|
||||
/* f096da0: 46007282 */ mul.s $f10,$f14,$f0
|
||||
/* f096da4: e4460004 */ swc1 $f6,0x4($v0)
|
||||
/* f096da8: 46001182 */ mul.s $f6,$f2,$f0
|
||||
/* f096dac: 460a4100 */ add.s $f4,$f8,$f10
|
||||
/* f096db0: 46128202 */ mul.s $f8,$f16,$f18
|
||||
/* f096db4: e4440008 */ swc1 $f4,0x8($v0)
|
||||
/* f096db8: 46083281 */ sub.s $f10,$f6,$f8
|
||||
/* f096dbc: e44a000c */ swc1 $f10,0xc($v0)
|
||||
/* f096dc0: 8fbf0024 */ lw $ra,0x24($sp)
|
||||
/* f096dc4: 8fb00020 */ lw $s0,0x20($sp)
|
||||
/* f096dc8: d7b40018 */ ldc1 $f20,0x18($sp)
|
||||
/* f096dcc: 03e00008 */ jr $ra
|
||||
/* f096dd0: 27bd0040 */ addiu $sp,$sp,0x40
|
||||
glabel func0f096dd4
|
||||
/* f096dd4: 3c013f00 */ lui $at,0x3f00
|
||||
/* f096dd8: 44812000 */ mtc1 $at,$f4
|
||||
/* f096ddc: 27bdffe0 */ addiu $sp,$sp,-32
|
||||
|
||||
+10
-10
@@ -3866,7 +3866,7 @@ glabel var7f1b3c40pf
|
||||
/* f0f4a80: e7b00294 */ swc1 $f16,0x294($sp)
|
||||
/* f0f4a84: c6060528 */ lwc1 $f6,0x528($s0)
|
||||
/* f0f4a88: e7ae02d0 */ swc1 $f14,0x2d0($sp)
|
||||
/* f0f4a8c: 0fc25af0 */ jal func0f096ca0
|
||||
/* f0f4a8c: 0fc25af0 */ jal quaternion0f096ca0
|
||||
/* f0f4a90: e7a60298 */ swc1 $f6,0x298($sp)
|
||||
/* f0f4a94: c6040548 */ lwc1 $f4,0x548($s0)
|
||||
/* f0f4a98: 02202025 */ move $a0,$s1
|
||||
@@ -3875,7 +3875,7 @@ glabel var7f1b3c40pf
|
||||
/* f0f4aa4: c612054c */ lwc1 $f18,0x54c($s0)
|
||||
/* f0f4aa8: e7b20294 */ swc1 $f18,0x294($sp)
|
||||
/* f0f4aac: c6080550 */ lwc1 $f8,0x550($s0)
|
||||
/* f0f4ab0: 0fc25af0 */ jal func0f096ca0
|
||||
/* f0f4ab0: 0fc25af0 */ jal quaternion0f096ca0
|
||||
/* f0f4ab4: e7a80298 */ swc1 $f8,0x298($sp)
|
||||
/* f0f4ab8: c7ae02d0 */ lwc1 $f14,0x2d0($sp)
|
||||
/* f0f4abc: 27b1029c */ addiu $s1,$sp,0x29c
|
||||
@@ -5475,7 +5475,7 @@ glabel var7f1b2948
|
||||
/* f0f4344: e7aa0294 */ swc1 $f10,0x294($sp)
|
||||
/* f0f4348: c6060528 */ lwc1 $f6,0x528($s0)
|
||||
/* f0f434c: e7ae02d0 */ swc1 $f14,0x2d0($sp)
|
||||
/* f0f4350: 0fc25b28 */ jal func0f096ca0
|
||||
/* f0f4350: 0fc25b28 */ jal quaternion0f096ca0
|
||||
/* f0f4354: e7a60298 */ swc1 $f6,0x298($sp)
|
||||
/* f0f4358: c6080548 */ lwc1 $f8,0x548($s0)
|
||||
/* f0f435c: 02202025 */ or $a0,$s1,$zero
|
||||
@@ -5484,7 +5484,7 @@ glabel var7f1b2948
|
||||
/* f0f4368: c604054c */ lwc1 $f4,0x54c($s0)
|
||||
/* f0f436c: e7a40294 */ swc1 $f4,0x294($sp)
|
||||
/* f0f4370: c60a0550 */ lwc1 $f10,0x550($s0)
|
||||
/* f0f4374: 0fc25b28 */ jal func0f096ca0
|
||||
/* f0f4374: 0fc25b28 */ jal quaternion0f096ca0
|
||||
/* f0f4378: e7aa0298 */ swc1 $f10,0x298($sp)
|
||||
/* f0f437c: c7ae02d0 */ lwc1 $f14,0x2d0($sp)
|
||||
/* f0f4380: 27b1029c */ addiu $s1,$sp,0x29c
|
||||
@@ -7084,7 +7084,7 @@ glabel var7f1b2948
|
||||
/* f0f0e88: e7aa02bc */ swc1 $f10,0x2bc($sp)
|
||||
/* f0f0e8c: c6260528 */ lwc1 $f6,0x528($s1)
|
||||
/* f0f0e90: e7ae02f8 */ swc1 $f14,0x2f8($sp)
|
||||
/* f0f0e94: 0fc2530c */ jal func0f096ca0
|
||||
/* f0f0e94: 0fc2530c */ jal quaternion0f096ca0
|
||||
/* f0f0e98: e7a602c0 */ swc1 $f6,0x2c0($sp)
|
||||
/* f0f0e9c: c6280548 */ lwc1 $f8,0x548($s1)
|
||||
/* f0f0ea0: 02002025 */ or $a0,$s0,$zero
|
||||
@@ -7093,7 +7093,7 @@ glabel var7f1b2948
|
||||
/* f0f0eac: c624054c */ lwc1 $f4,0x54c($s1)
|
||||
/* f0f0eb0: e7a402bc */ swc1 $f4,0x2bc($sp)
|
||||
/* f0f0eb4: c62a0550 */ lwc1 $f10,0x550($s1)
|
||||
/* f0f0eb8: 0fc2530c */ jal func0f096ca0
|
||||
/* f0f0eb8: 0fc2530c */ jal quaternion0f096ca0
|
||||
/* f0f0ebc: e7aa02c0 */ swc1 $f10,0x2c0($sp)
|
||||
/* f0f0ec0: c7ae02f8 */ lwc1 $f14,0x2f8($sp)
|
||||
/* f0f0ec4: 27b002c4 */ addiu $s0,$sp,0x2c4
|
||||
@@ -8005,7 +8005,7 @@ glabel var7f1b2948
|
||||
// f32 sp2f8;
|
||||
// s32 sp2f4;
|
||||
// f32 sp2d0;
|
||||
// struct coord sp2bc;
|
||||
// f32 sp2bc[4];
|
||||
// struct coord sp2ac;
|
||||
// f32 sp29c;
|
||||
// struct coord sp290;
|
||||
@@ -8280,14 +8280,14 @@ glabel var7f1b2948
|
||||
// sp290.y = thing->unk524;
|
||||
// sp290.z = thing->unk528;
|
||||
//
|
||||
// func0f096ca0(&sp290, &sp2bc);
|
||||
// quaternion0f096ca0(&sp290, sp2bc);
|
||||
//
|
||||
// sp290.x = thing->unk548;
|
||||
// sp290.y = thing->unk54c;
|
||||
// sp290.z = thing->unk550;
|
||||
//
|
||||
// func0f096ca0(&sp290, &sp2ac);
|
||||
// func0f0972b8(&sp2bc, &sp2ac, sp2d0, &sp29c);
|
||||
// quaternion0f096ca0(&sp290, &sp2ac);
|
||||
// func0f0972b8(sp2bc, &sp2ac, sp2d0, &sp29c);
|
||||
// func0f096ed4(&sp29c, &sp350);
|
||||
// } else {
|
||||
// sp398.x = thing->unk520 = thing->unk548;
|
||||
|
||||
+14
-17
@@ -2114,10 +2114,8 @@ void playerTickCutscene(bool arg0)
|
||||
f32 sp104;
|
||||
Mtxf spc4;
|
||||
Mtxf sp84;
|
||||
u32 stack1;
|
||||
struct coord sp74;
|
||||
u32 stack2;
|
||||
struct coord sp64;
|
||||
f32 sp74[4];
|
||||
f32 sp64[4];
|
||||
f32 sp54[4];
|
||||
|
||||
if (arg0) {
|
||||
@@ -2209,10 +2207,10 @@ void playerTickCutscene(bool arg0)
|
||||
mtx00016d58(&sp84, 0, 0, 0,
|
||||
-g_Vars.bond->bond2.unk1c.x, -g_Vars.bond->bond2.unk1c.y, -g_Vars.bond->bond2.unk1c.z,
|
||||
g_Vars.bond->bond2.unk28.x, g_Vars.bond->bond2.unk28.y, g_Vars.bond->bond2.unk28.z);
|
||||
func0f097044(&spc4, &sp74);
|
||||
func0f097044(&sp84, &sp64);
|
||||
func0f0976c0(&sp64, &sp74);
|
||||
func0f0972b8(&sp74, &sp64, sp104, sp54);
|
||||
func0f097044(&spc4, sp74);
|
||||
func0f097044(&sp84, sp64);
|
||||
func0f0976c0(sp64, sp74);
|
||||
func0f0972b8(sp74, sp64, sp104, sp54);
|
||||
func0f096ed4(sp54, &sp11c);
|
||||
|
||||
up.x = sp11c.m[1][0];
|
||||
@@ -3977,13 +3975,12 @@ void playerTick(bool arg0)
|
||||
Mtxf sp1fc;
|
||||
Mtxf sp1bc;
|
||||
Mtxf sp17c;
|
||||
f32 fVar20;
|
||||
f32 targetspeed;
|
||||
f32 sp174;
|
||||
f32 sp15c[6];
|
||||
f32 sp14c[4];
|
||||
f32 sp13c[4];
|
||||
f32 targetspeed;
|
||||
struct coord sp12c;
|
||||
f32 sp12c[4];
|
||||
f32 prevspeed;
|
||||
f32 sp11c[3];
|
||||
bool explode = false;
|
||||
@@ -4078,10 +4075,10 @@ void playerTick(bool arg0)
|
||||
sp174 = -stickx * g_Vars.lvupdate240f * 0.00025f;
|
||||
#endif
|
||||
|
||||
fVar20 = sqrtf(sp2ac.f[0] * sp2ac.f[0] + sp2ac.f[2] * sp2ac.f[2]);
|
||||
f20 = sqrtf(sp2ac.f[0] * sp2ac.f[0] + sp2ac.f[2] * sp2ac.f[2]);
|
||||
|
||||
sp2ac.x /= fVar20;
|
||||
sp2ac.z /= fVar20;
|
||||
sp2ac.x /= f20;
|
||||
sp2ac.z /= f20;
|
||||
|
||||
f20 = sinf(fVar22);
|
||||
|
||||
@@ -4155,8 +4152,8 @@ void playerTick(bool arg0)
|
||||
projectile->speed.z = (projectile->speed.z * newspeed) / prevspeed;
|
||||
|
||||
mtx3ToMtx4(sp2b8, &sp1bc);
|
||||
func0f097044(&sp1bc, &sp12c);
|
||||
func0f097738(sp13c, sp12c.f, sp11c);
|
||||
func0f097044(&sp1bc, sp12c);
|
||||
func0f097738(sp13c, sp12c, sp11c);
|
||||
func0f096ed4(sp11c, &sp17c);
|
||||
mtx4ToMtx3(&sp17c, sp2b8);
|
||||
|
||||
@@ -4617,7 +4614,7 @@ void playerTick(bool arg0)
|
||||
if (var8007074c) {
|
||||
s8 contpad1 = optionsGetContpadNum1(g_Vars.currentplayerstats->mpindex);
|
||||
|
||||
if (lvIsPaused() == false
|
||||
if (!lvIsPaused()
|
||||
&& arg0
|
||||
&& joyGetButtonsPressedThisFrame(contpad1, A_BUTTON | B_BUTTON | Z_TRIG | START_BUTTON | L_TRIG | R_TRIG)) {
|
||||
var8007074c = 2;
|
||||
|
||||
+2
-2
@@ -10691,7 +10691,7 @@ glabel var7f1aa298
|
||||
/* f06dc78: 8fa50068 */ lw $a1,0x68($sp)
|
||||
/* f06dc7c: 27a40188 */ addiu $a0,$sp,0x188
|
||||
/* f06dc80: 24a50068 */ addiu $a1,$a1,0x68
|
||||
/* f06dc84: 0fc25b28 */ jal func0f096ca0
|
||||
/* f06dc84: 0fc25b28 */ jal quaternion0f096ca0
|
||||
/* f06dc88: afa50038 */ sw $a1,0x38($sp)
|
||||
/* f06dc8c: 27a40108 */ addiu $a0,$sp,0x108
|
||||
/* f06dc90: 0c005c1c */ jal mtx4LoadRotationFrom
|
||||
@@ -11391,7 +11391,7 @@ glabel var7f1aa298
|
||||
/* f06e648: 8fa50068 */ lw $a1,0x68($sp)
|
||||
/* f06e64c: 27a40188 */ addiu $a0,$sp,0x188
|
||||
/* f06e650: 24a50078 */ addiu $a1,$a1,0x78
|
||||
/* f06e654: 0fc25b28 */ jal func0f096ca0
|
||||
/* f06e654: 0fc25b28 */ jal quaternion0f096ca0
|
||||
/* f06e658: afa50024 */ sw $a1,0x24($sp)
|
||||
/* f06e65c: 8fa50024 */ lw $a1,0x24($sp)
|
||||
/* f06e660: 0fc25db0 */ jal func0f0976c0
|
||||
|
||||
@@ -4,13 +4,13 @@
|
||||
#include "data.h"
|
||||
#include "types.h"
|
||||
|
||||
void func0f096ca0(struct coord *arg0, struct coord *arg1);
|
||||
void quaternion0f096ca0(struct coord *arg0, f32 quat[4]);
|
||||
void func0f096ed4(f32 *arg0, Mtxf *arg1);
|
||||
void func0f097044(Mtxf *matrix, struct coord *arg1);
|
||||
void func0f097044(Mtxf *matrix, f32 arg1[4]);
|
||||
u32 func0f097264(void);
|
||||
void func0f0972b8(struct coord *arg0, struct coord *arg1, f32 arg2, f32 *arg3);
|
||||
void func0f0972b8(f32 arg0[4], f32 arg1[4], f32 arg2, f32 *arg3);
|
||||
u32 func0f097518(void);
|
||||
void func0f0976c0(struct coord *arg0, struct coord *arg1);
|
||||
void func0f0976c0(f32 arg0[4], f32 arg1[4]);
|
||||
void func0f097738(f32 *arg0, f32 *arg1, f32 *arg2);
|
||||
|
||||
#endif
|
||||
|
||||
+12
-14
@@ -681,10 +681,8 @@ void model0001b400(struct modelrenderdata *arg0, struct model *model, struct mod
|
||||
struct coord sp124;
|
||||
struct coord sp118;
|
||||
struct coord sp10c;
|
||||
u8 stack2[0x4];
|
||||
struct coord spfc;
|
||||
u8 stack3[0x4];
|
||||
struct coord spec;
|
||||
f32 spfc[4];
|
||||
f32 spec[4];
|
||||
u8 stack4[0xc];
|
||||
f32 spdc;
|
||||
struct coord spd0;
|
||||
@@ -730,14 +728,14 @@ void model0001b400(struct modelrenderdata *arg0, struct model *model, struct mod
|
||||
mtx4LoadYRotation(rwdata->chrinfo.unk14, &sp78);
|
||||
mtx4LoadRotation(&sp124, &sp38);
|
||||
mtx00015be0(&sp78, &sp38);
|
||||
func0f097044(&sp38, &spec);
|
||||
func0f097044(&sp38, spec);
|
||||
} else {
|
||||
func0f096ca0(&sp124, &spec);
|
||||
quaternion0f096ca0(&sp124, spec);
|
||||
}
|
||||
|
||||
func0f096ca0(&sp230, &spfc);
|
||||
func0f0976c0(&spfc, &spec);
|
||||
func0f0972b8(&spfc, &spec, anim->fracmerge, &spdc);
|
||||
quaternion0f096ca0(&sp230, spfc);
|
||||
func0f0976c0(spfc, spec);
|
||||
func0f0972b8(spfc, spec, anim->fracmerge, &spdc);
|
||||
func0f096ed4(&spdc, &sp1d8);
|
||||
} else {
|
||||
mtx4LoadRotation(&sp230, &sp1d8);
|
||||
@@ -943,7 +941,7 @@ glabel var70054308
|
||||
/* 1ba58: 310b0100 */ andi $t3,$t0,0x100
|
||||
/* 1ba5c: 5160001d */ beqzl $t3,.L0001bad4
|
||||
/* 1ba60: 8faa00b4 */ lw $t2,0xb4($sp)
|
||||
/* 1ba64: 0fc25b28 */ jal func0f096ca0
|
||||
/* 1ba64: 0fc25b28 */ jal quaternion0f096ca0
|
||||
/* 1ba68: 27a5003c */ addiu $a1,$sp,0x3c
|
||||
/* 1ba6c: 27a4003c */ addiu $a0,$sp,0x3c
|
||||
/* 1ba70: 3c053f00 */ lui $a1,0x3f00
|
||||
@@ -1507,10 +1505,10 @@ glabel var70053fc0pf
|
||||
/* 1bfc8: 8e060034 */ lw $a2,0x34($s0)
|
||||
/* 1bfcc: 27a40144 */ addiu $a0,$sp,0x144
|
||||
.PF0001bfd0:
|
||||
/* 1bfd0: 0fc25af0 */ jal func0f096ca0
|
||||
/* 1bfd0: 0fc25af0 */ jal quaternion0f096ca0
|
||||
/* 1bfd4: 27a50088 */ addiu $a1,$sp,0x88
|
||||
/* 1bfd8: 27a400b0 */ addiu $a0,$sp,0xb0
|
||||
/* 1bfdc: 0fc25af0 */ jal func0f096ca0
|
||||
/* 1bfdc: 0fc25af0 */ jal quaternion0f096ca0
|
||||
/* 1bfe0: 27a50078 */ addiu $a1,$sp,0x78
|
||||
/* 1bfe4: 27a40088 */ addiu $a0,$sp,0x88
|
||||
/* 1bfe8: 0fc25d78 */ jal func0f0976c0
|
||||
@@ -1922,10 +1920,10 @@ glabel model0001bfa8
|
||||
/* 1c20c: 8e060034 */ lw $a2,0x34($s0)
|
||||
/* 1c210: 27a40144 */ addiu $a0,$sp,0x144
|
||||
.L0001c214:
|
||||
/* 1c214: 0fc25b28 */ jal func0f096ca0
|
||||
/* 1c214: 0fc25b28 */ jal quaternion0f096ca0
|
||||
/* 1c218: 27a50088 */ addiu $a1,$sp,0x88
|
||||
/* 1c21c: 27a400b0 */ addiu $a0,$sp,0xb0
|
||||
/* 1c220: 0fc25b28 */ jal func0f096ca0
|
||||
/* 1c220: 0fc25b28 */ jal quaternion0f096ca0
|
||||
/* 1c224: 27a50078 */ addiu $a1,$sp,0x78
|
||||
/* 1c228: 27a40088 */ addiu $a0,$sp,0x88
|
||||
/* 1c22c: 0fc25db0 */ jal func0f0976c0
|
||||
|
||||
Reference in New Issue
Block a user