This commit is contained in:
Donkey Kong 2024-09-23 11:16:51 -05:00
parent 2cf7d9d3ee
commit 7cb6c40f7d
4 changed files with 67 additions and 1 deletions

View File

@ -366,7 +366,8 @@ segments:
- [0x2144A90, c, audio/code_144A90]
- [0x2144E00, c, audio/code_144E00]
- [0x2145950, c, audio/code_145950]
- [0x2145D70, bin, code_145D70] #mips3
- [0x2145D70, c, audio/code_145D70]
- [0x2146010, bin, code_146010]
- [0x2149160, data, data_149160]
- [0x215B290, .rodata, code_0]
- [0x215B2E0, .rodata, code_3C10]

View File

@ -1062,6 +1062,7 @@ us,asm,func_global_asm_80689710,224,yes
us,asm,func_global_asm_80625320,944,no
us,asm,playActorAnimation,108,no
us,asm,func_global_asm_8060DEC8,608,yes
us,asm,func_global_asm_807412B4,92,yes
us,asm,func_global_asm_80612800,64,yes
us,asm,func_global_asm_80622334,408,no
us,asm,func_global_asm_806A6094,40,yes
@ -2638,6 +2639,7 @@ us,asm,func_global_asm_80641874,116,yes
us,asm,func_global_asm_806ECF9C,180,yes
us,asm,func_global_asm_806E521C,96,yes
us,asm,func_global_asm_80692640,768,yes
us,asm,func_global_asm_80741070,580,yes
us,asm,func_global_asm_80709344,248,yes
us,asm,func_global_asm_80652F24,120,yes
us,asm,func_global_asm_8067E348,136,yes

1 version section function length matching
1062 us asm func_global_asm_80625320 944 no
1063 us asm playActorAnimation 108 no
1064 us asm func_global_asm_8060DEC8 608 yes
1065 us asm func_global_asm_807412B4 92 yes
1066 us asm func_global_asm_80612800 64 yes
1067 us asm func_global_asm_80622334 408 no
1068 us asm func_global_asm_806A6094 40 yes
2639 us asm func_global_asm_806ECF9C 180 yes
2640 us asm func_global_asm_806E521C 96 yes
2641 us asm func_global_asm_80692640 768 yes
2642 us asm func_global_asm_80741070 580 yes
2643 us asm func_global_asm_80709344 248 yes
2644 us asm func_global_asm_80652F24 120 yes
2645 us asm func_global_asm_8067E348 136 yes

View File

@ -1062,6 +1062,7 @@ us,asm,func_global_asm_80689710,224,yes
us,asm,func_global_asm_80625320,944,no
us,asm,playActorAnimation,108,no
us,asm,func_global_asm_8060DEC8,608,yes
us,asm,func_global_asm_807412B4,92,yes
us,asm,func_global_asm_80612800,64,yes
us,asm,func_global_asm_80622334,408,no
us,asm,func_global_asm_806A6094,40,yes
@ -2638,6 +2639,7 @@ us,asm,func_global_asm_80641874,116,yes
us,asm,func_global_asm_806ECF9C,180,yes
us,asm,func_global_asm_806E521C,96,yes
us,asm,func_global_asm_80692640,768,yes
us,asm,func_global_asm_80741070,580,yes
us,asm,func_global_asm_80709344,248,yes
us,asm,func_global_asm_80652F24,120,yes
us,asm,func_global_asm_8067E348,136,yes

1 version section function length matching
1062 us asm func_global_asm_80625320 944 no
1063 us asm playActorAnimation 108 no
1064 us asm func_global_asm_8060DEC8 608 yes
1065 us asm func_global_asm_807412B4 92 yes
1066 us asm func_global_asm_80612800 64 yes
1067 us asm func_global_asm_80622334 408 no
1068 us asm func_global_asm_806A6094 40 yes
2639 us asm func_global_asm_806ECF9C 180 yes
2640 us asm func_global_asm_806E521C 96 yes
2641 us asm func_global_asm_80692640 768 yes
2642 us asm func_global_asm_80741070 580 yes
2643 us asm func_global_asm_80709344 248 yes
2644 us asm func_global_asm_80652F24 120 yes
2645 us asm func_global_asm_8067E348 136 yes

View File

@ -0,0 +1,61 @@
#include <ultra64.h>
#include "functions.h"
#include "synthinternal.h"
typedef struct CustomPVoice {
ALLink node;
u8 pad8[0x2C - 0x8];
ALResampler resampler;
} CustomPVoice;
Acmd *func_global_asm_80740100(CustomPVoice *, s16 *, s32, Acmd *);
extern f64 D_global_asm_80760580;
extern f32 D_global_asm_80760588;
void *func_global_asm_80741070(CustomPVoice *arg0, s16 *arg1, Acmd *arg2) {
Acmd *sp34;
s16 sp32;
s32 sp2C;
s32 sp28;
f32 sp24;
Acmd *sp20;
Acmd *sp1C;
sp34 = arg2;
sp32 = 0x170;
if (arg0->resampler.upitch != 0) {
sp34 = func_global_asm_80740100(arg0, &sp32, 0xB8, arg2);
sp20 = sp34++;
sp20->words.w0 = (sp32 & 0xFFFFFF) | 0x0A000000;
sp20->words.w1 = ((*arg1 & 0xFFFF) << 0x10) | 0x170;
if (1) {}
} else {
if (arg0->resampler.ratio > D_global_asm_80760580) {
arg0->resampler.ratio = D_global_asm_80760588;
}
arg0->resampler.ratio = (s32) (arg0->resampler.ratio * 32768.0f);
arg0->resampler.ratio /= 32768.0f;
sp24 = arg0->resampler.delta + (arg0->resampler.ratio * 184.0f);
sp2C = (s32) sp24;
arg0->resampler.delta = sp24 - sp2C;
sp34 = func_global_asm_80740100(arg0, &sp32, sp2C, arg2);
sp28 = arg0->resampler.ratio * 32768.0f;
sp1C = sp34++;
sp1C->words.w0 = (osVirtualToPhysical(arg0->resampler.state) & 0xFFFFFF) | 0x05000000;
sp1C->words.w1 = ((arg0->resampler.first & 3) << 0x1E) | ((sp28 & 0xFFFF) << 0xE) | ((sp32 & 0xFFF) * 4);
arg0->resampler.first = 0;
}
return sp34;
}
void func_global_asm_807407A8(void*, s32, void*);
s32 func_global_asm_807412B4(void* arg0, s32 arg1, void* arg2) {
void* sp1C;
sp1C = arg0;
if (1) {} else {}
func_global_asm_807407A8(arg0, arg1, arg2);
if (1) {} else {}
return 0;
}