mirror of https://github.com/n64decomp/mk64.git
code_80086E70: Match 8008ACE0 (#382)
Co-authored-by: MegaMech <MegaMech@users.noreply.github.com>
This commit is contained in:
parent
0d9396b631
commit
965d1e85b4
|
|
@ -1,67 +0,0 @@
|
|||
.section .late_rodata
|
||||
|
||||
glabel D_800EF4F8
|
||||
.double 0.6666666666666666
|
||||
|
||||
glabel D_800EF500
|
||||
.double 0.16666666666666666
|
||||
|
||||
.section .text
|
||||
|
||||
glabel func_8008ACE0
|
||||
/* 08B8E0 8008ACE0 44856000 */ mtc1 $a1, $f12
|
||||
/* 08B8E4 8008ACE4 3C013FF0 */ li $at, 0x3FF00000 # 1.875000
|
||||
/* 08B8E8 8008ACE8 44812800 */ mtc1 $at, $f5
|
||||
/* 08B8EC 8008ACEC 44802000 */ mtc1 $zero, $f4
|
||||
/* 08B8F0 8008ACF0 46006021 */ cvt.d.s $f0, $f12
|
||||
/* 08B8F4 8008ACF4 3C014018 */ li $at, 0x40180000 # 2.375000
|
||||
/* 08B8F8 8008ACF8 46202181 */ sub.d $f6, $f4, $f0
|
||||
/* 08B8FC 8008ACFC 462030A0 */ cvt.s.d $f2, $f6
|
||||
/* 08B900 8008AD00 44803000 */ mtc1 $zero, $f6
|
||||
/* 08B904 8008AD04 44813800 */ mtc1 $at, $f7
|
||||
/* 08B908 8008AD08 3C013FE0 */ li $at, 0x3FE00000 # 1.750000
|
||||
/* 08B90C 8008AD0C 46021202 */ mul.s $f8, $f2, $f2
|
||||
/* 08B910 8008AD10 00000000 */ nop
|
||||
/* 08B914 8008AD14 46024282 */ mul.s $f10, $f8, $f2
|
||||
/* 08B918 8008AD18 46005121 */ cvt.d.s $f4, $f10
|
||||
/* 08B91C 8008AD1C 460C6382 */ mul.s $f14, $f12, $f12
|
||||
/* 08B920 8008AD20 46262203 */ div.d $f8, $f4, $f6
|
||||
/* 08B924 8008AD24 44803000 */ mtc1 $zero, $f6
|
||||
/* 08B928 8008AD28 44813800 */ mtc1 $at, $f7
|
||||
/* 08B92C 8008AD2C 3C01800F */ lui $at, %hi(D_800EF4F8)
|
||||
/* 08B930 8008AD30 460C7102 */ mul.s $f4, $f14, $f12
|
||||
/* 08B934 8008AD34 460074A1 */ cvt.d.s $f18, $f14
|
||||
/* 08B938 8008AD38 46002421 */ cvt.d.s $f16, $f4
|
||||
/* 08B93C 8008AD3C 462042A0 */ cvt.s.d $f10, $f8
|
||||
/* 08B940 8008AD40 46268202 */ mul.d $f8, $f16, $f6
|
||||
/* 08B944 8008AD44 E48A0000 */ swc1 $f10, ($a0)
|
||||
/* 08B948 8008AD48 D424F4F8 */ ldc1 $f4, %lo(D_800EF4F8)($at)
|
||||
/* 08B94C 8008AD4C 3C01BFE0 */ li $at, 0xBFE00000 # -1.750000
|
||||
/* 08B950 8008AD50 46324281 */ sub.d $f10, $f8, $f18
|
||||
/* 08B954 8008AD54 46245180 */ add.d $f6, $f10, $f4
|
||||
/* 08B958 8008AD58 44805000 */ mtc1 $zero, $f10
|
||||
/* 08B95C 8008AD5C 44815800 */ mtc1 $at, $f11
|
||||
/* 08B960 8008AD60 3C013FE0 */ li $at, 0x3FE00000 # 1.750000
|
||||
/* 08B964 8008AD64 46203220 */ cvt.s.d $f8, $f6
|
||||
/* 08B968 8008AD68 462A8102 */ mul.d $f4, $f16, $f10
|
||||
/* 08B96C 8008AD6C 44803000 */ mtc1 $zero, $f6
|
||||
/* 08B970 8008AD70 44813800 */ mtc1 $at, $f7
|
||||
/* 08B974 8008AD74 E4880004 */ swc1 $f8, 4($a0)
|
||||
/* 08B978 8008AD78 46323202 */ mul.d $f8, $f6, $f18
|
||||
/* 08B97C 8008AD7C 44803000 */ mtc1 $zero, $f6
|
||||
/* 08B980 8008AD80 44813800 */ mtc1 $at, $f7
|
||||
/* 08B984 8008AD84 3C01800F */ lui $at, %hi(D_800EF500)
|
||||
/* 08B988 8008AD88 46282280 */ add.d $f10, $f4, $f8
|
||||
/* 08B98C 8008AD8C 46203102 */ mul.d $f4, $f6, $f0
|
||||
/* 08B990 8008AD90 D426F500 */ ldc1 $f6, %lo(D_800EF500)($at)
|
||||
/* 08B994 8008AD94 3C014018 */ li $at, 0x40180000 # 2.375000
|
||||
/* 08B998 8008AD98 46245200 */ add.d $f8, $f10, $f4
|
||||
/* 08B99C 8008AD9C 46264280 */ add.d $f10, $f8, $f6
|
||||
/* 08B9A0 8008ADA0 44804000 */ mtc1 $zero, $f8
|
||||
/* 08B9A4 8008ADA4 44814800 */ mtc1 $at, $f9
|
||||
/* 08B9A8 8008ADA8 46205120 */ cvt.s.d $f4, $f10
|
||||
/* 08B9AC 8008ADAC 46288183 */ div.d $f6, $f16, $f8
|
||||
/* 08B9B0 8008ADB0 E4840008 */ swc1 $f4, 8($a0)
|
||||
/* 08B9B4 8008ADB4 462032A0 */ cvt.s.d $f10, $f6
|
||||
/* 08B9B8 8008ADB8 03E00008 */ jr $ra
|
||||
/* 08B9BC 8008ADBC E48A000C */ swc1 $f10, 0xc($a0)
|
||||
|
|
@ -1411,28 +1411,12 @@ UNUSED void func_8008ACD8(void) {
|
|||
|
||||
}
|
||||
|
||||
#ifdef MIPS_TO_C
|
||||
//generated by m2c commit eefca95b040d7ee0c617bc58f9ac6cd1cf7bce87 on Aug-09-2023
|
||||
void func_8008ACE0(f32 *arg0, f32 arg1) {
|
||||
f32 temp_f14;
|
||||
f32 temp_f2;
|
||||
f64 temp_f0;
|
||||
f64 temp_f16;
|
||||
f64 temp_f18;
|
||||
|
||||
temp_f0 = (f64) arg1;
|
||||
temp_f2 = (f32) (1.0 - temp_f0);
|
||||
temp_f14 = arg1 * arg1;
|
||||
temp_f18 = (f64) temp_f14;
|
||||
temp_f16 = (f64) (temp_f14 * arg1);
|
||||
arg0->unk0 = (f32) ((f64) (temp_f2 * temp_f2 * temp_f2) / 6.0);
|
||||
arg0->unk4 = (f32) (((temp_f16 * 0.5) - temp_f18) + 0.6666666666666666);
|
||||
arg0->unk8 = (f32) ((temp_f16 * -0.5) + (0.5 * temp_f18) + (0.5 * temp_f0) + 0.16666666666666666);
|
||||
arg0->unkC = (f32) (temp_f16 / 6.0);
|
||||
void func_8008ACE0(f32 arg0[], f32 arg1) {
|
||||
arg0[0] = (f32) ((f64) ((f32) (1.0 - arg1) * (f32) (1.0 - arg1) * (f32) (1.0 - arg1)) / 6.0);
|
||||
arg0[1] = (f32) ((((f64) (arg1 * arg1 * arg1) * 0.5) - arg1 * arg1) + 0.6666666666666666);
|
||||
arg0[2] = (f32) (((f64) (arg1 * arg1 * arg1) * -0.5) + (0.5 * (arg1 * arg1)) + (0.5 * arg1) + 0.16666666666666666);
|
||||
arg0[3] = (f32) ((f64) (arg1 * arg1 * arg1) / 6.0);
|
||||
}
|
||||
#else
|
||||
GLOBAL_ASM("asm/non_matchings/code_80086E70/func_8008ACE0.s")
|
||||
#endif
|
||||
|
||||
UNUSED void func_8008ADC0(void) {
|
||||
|
||||
|
|
|
|||
Loading…
Reference in New Issue