Decompile mtx0001719c

This commit is contained in:
Ryan Dwyer
2021-11-06 13:45:26 +10:00
parent 87dc56469e
commit 54add2b574
2 changed files with 23 additions and 89 deletions
+1 -1
View File
@@ -56,7 +56,7 @@ u32 mtx00016e98(void);
void mtx4Align(f32 mtx[4][4], f32 radians, f32 x, f32 y, f32 z);
void mtx4LoadRotationFrom(f32 src[4][4], f32 dst[4][4]);
u32 mtx000170e4(void);
u32 mtx0001719c(void);
void mtx0001719c(f32 arg0[4][4], f32 arg1[4][4]);
u32 mtx000172f0(void);
void mtx00017588(f32 arg0[4][4], f32 arg1[4][4]);
void mtx00017614(f32 arg0[4][4], f32 arg1[4][4]);
+22 -88
View File
@@ -913,94 +913,28 @@ glabel mtx000170e4
/* 17198: e4a40028 */ swc1 $f4,0x28($a1)
);
GLOBAL_ASM(
glabel mtx0001719c
/* 1719c: c48c0000 */ lwc1 $f12,0x0($a0)
/* 171a0: c48e0010 */ lwc1 $f14,0x10($a0)
/* 171a4: c4820020 */ lwc1 $f2,0x20($a0)
/* 171a8: 460c6102 */ mul.s $f4,$f12,$f12
/* 171ac: 3c013f80 */ lui $at,0x3f80
/* 171b0: 44818000 */ mtc1 $at,$f16
/* 171b4: 460e7182 */ mul.s $f6,$f14,$f14
/* 171b8: 46062200 */ add.s $f8,$f4,$f6
/* 171bc: 46021282 */ mul.s $f10,$f2,$f2
/* 171c0: 46085000 */ add.s $f0,$f10,$f8
/* 171c4: 46008003 */ div.s $f0,$f16,$f0
/* 171c8: 46006482 */ mul.s $f18,$f12,$f0
/* 171cc: e4b20000 */ swc1 $f18,0x0($a1)
/* 171d0: c4840010 */ lwc1 $f4,0x10($a0)
/* 171d4: 46002182 */ mul.s $f6,$f4,$f0
/* 171d8: e4a60004 */ swc1 $f6,0x4($a1)
/* 171dc: c48a0020 */ lwc1 $f10,0x20($a0)
/* 171e0: 46005202 */ mul.s $f8,$f10,$f0
/* 171e4: e4a80008 */ swc1 $f8,0x8($a1)
/* 171e8: c4920004 */ lwc1 $f18,0x4($a0)
/* 171ec: 46009102 */ mul.s $f4,$f18,$f0
/* 171f0: e4a40010 */ swc1 $f4,0x10($a1)
/* 171f4: c4860014 */ lwc1 $f6,0x14($a0)
/* 171f8: 46003282 */ mul.s $f10,$f6,$f0
/* 171fc: e4aa0014 */ swc1 $f10,0x14($a1)
/* 17200: c4880024 */ lwc1 $f8,0x24($a0)
/* 17204: 46004482 */ mul.s $f18,$f8,$f0
/* 17208: e4b20018 */ swc1 $f18,0x18($a1)
/* 1720c: c4840008 */ lwc1 $f4,0x8($a0)
/* 17210: 46002182 */ mul.s $f6,$f4,$f0
/* 17214: e4a60020 */ swc1 $f6,0x20($a1)
/* 17218: c48a0018 */ lwc1 $f10,0x18($a0)
/* 1721c: c4a60000 */ lwc1 $f6,0x0($a1)
/* 17220: 46005202 */ mul.s $f8,$f10,$f0
/* 17224: e4a80024 */ swc1 $f8,0x24($a1)
/* 17228: c4920028 */ lwc1 $f18,0x28($a0)
/* 1722c: 46009102 */ mul.s $f4,$f18,$f0
/* 17230: c4b20010 */ lwc1 $f18,0x10($a1)
/* 17234: 44800000 */ mtc1 $zero,$f0
/* 17238: e4a40028 */ swc1 $f4,0x28($a1)
/* 1723c: c48a0030 */ lwc1 $f10,0x30($a0)
/* 17240: c4840034 */ lwc1 $f4,0x34($a0)
/* 17244: 460a3202 */ mul.s $f8,$f6,$f10
/* 17248: 00000000 */ nop
/* 1724c: 46049182 */ mul.s $f6,$f18,$f4
/* 17250: c4a40020 */ lwc1 $f4,0x20($a1)
/* 17254: c4920038 */ lwc1 $f18,0x38($a0)
/* 17258: 46064280 */ add.s $f10,$f8,$f6
/* 1725c: 46049202 */ mul.s $f8,$f18,$f4
/* 17260: c4a40004 */ lwc1 $f4,0x4($a1)
/* 17264: 460a4180 */ add.s $f6,$f8,$f10
/* 17268: 46003487 */ neg.s $f18,$f6
/* 1726c: c4a60014 */ lwc1 $f6,0x14($a1)
/* 17270: e4b20030 */ swc1 $f18,0x30($a1)
/* 17274: c4880030 */ lwc1 $f8,0x30($a0)
/* 17278: c4920034 */ lwc1 $f18,0x34($a0)
/* 1727c: 46082282 */ mul.s $f10,$f4,$f8
/* 17280: 00000000 */ nop
/* 17284: 46123102 */ mul.s $f4,$f6,$f18
/* 17288: c4b20024 */ lwc1 $f18,0x24($a1)
/* 1728c: c4860038 */ lwc1 $f6,0x38($a0)
/* 17290: 46045200 */ add.s $f8,$f10,$f4
/* 17294: 46123282 */ mul.s $f10,$f6,$f18
/* 17298: c4b20008 */ lwc1 $f18,0x8($a1)
/* 1729c: 46085100 */ add.s $f4,$f10,$f8
/* 172a0: 46002187 */ neg.s $f6,$f4
/* 172a4: c4a40018 */ lwc1 $f4,0x18($a1)
/* 172a8: e4a60034 */ swc1 $f6,0x34($a1)
/* 172ac: c48a0030 */ lwc1 $f10,0x30($a0)
/* 172b0: c4860034 */ lwc1 $f6,0x34($a0)
/* 172b4: 460a9202 */ mul.s $f8,$f18,$f10
/* 172b8: 00000000 */ nop
/* 172bc: 46062482 */ mul.s $f18,$f4,$f6
/* 172c0: c4a60028 */ lwc1 $f6,0x28($a1)
/* 172c4: c4840038 */ lwc1 $f4,0x38($a0)
/* 172c8: e4b0003c */ swc1 $f16,0x3c($a1)
/* 172cc: e4a0000c */ swc1 $f0,0xc($a1)
/* 172d0: e4a0001c */ swc1 $f0,0x1c($a1)
/* 172d4: e4a0002c */ swc1 $f0,0x2c($a1)
/* 172d8: 46124280 */ add.s $f10,$f8,$f18
/* 172dc: 46062202 */ mul.s $f8,$f4,$f6
/* 172e0: 460a4480 */ add.s $f18,$f8,$f10
/* 172e4: 46009107 */ neg.s $f4,$f18
/* 172e8: 03e00008 */ jr $ra
/* 172ec: e4a40038 */ swc1 $f4,0x38($a1)
);
void mtx0001719c(f32 arg0[4][4], f32 arg1[4][4])
{
f32 tmp = arg0[0][0] * arg0[0][0] + arg0[1][0] * arg0[1][0] + arg0[2][0] * arg0[2][0];
tmp = 1 / tmp;
arg1[0][0] = arg0[0][0] * tmp;
arg1[0][1] = arg0[1][0] * tmp;
arg1[0][2] = arg0[2][0] * tmp;
arg1[1][0] = arg0[0][1] * tmp;
arg1[1][1] = arg0[1][1] * tmp;
arg1[1][2] = arg0[2][1] * tmp;
arg1[2][0] = arg0[0][2] * tmp;
arg1[2][1] = arg0[1][2] * tmp;
arg1[2][2] = arg0[2][2] * tmp;
arg1[3][0] = -(arg1[0][0] * arg0[3][0] + arg1[1][0] * arg0[3][1] + arg1[2][0] * arg0[3][2]);
arg1[3][1] = -(arg1[0][1] * arg0[3][0] + arg1[1][1] * arg0[3][1] + arg1[2][1] * arg0[3][2]);
arg1[3][2] = -(arg1[0][2] * arg0[3][0] + arg1[1][2] * arg0[3][1] + arg1[2][2] * arg0[3][2]);
arg1[0][3] = 0;
arg1[1][3] = 0;
arg1[2][3] = 0;
arg1[3][3] = 1;
}
GLOBAL_ASM(
glabel mtx000172f0