Decompile n_alSynStopVoice

This commit is contained in:
Ryan Dwyer 2021-10-16 11:11:38 +10:00
parent 407057db08
commit 4a900ea079
5 changed files with 23 additions and 47 deletions

View File

@ -93,6 +93,7 @@
build/ROMID/lib/naudio/n_synsetvol.o (section); \
build/ROMID/lib/lib_3cdc0.o (section); \
build/ROMID/lib/lib_3cef0.o (section); \
build/ROMID/lib/naudio/n_synstopvoice.o (section); \
build/ROMID/lib/naudio/n_synfreevoice.o (section); \
build/ROMID/lib/naudio/n_seqplayer.o (section); \
build/ROMID/lib/lib_3e3e0.o (section); \

View File

@ -90,6 +90,7 @@
build/ROMID/lib/naudio/n_synsetvol.o (section); \
build/ROMID/lib/lib_3cdc0.o (section); \
build/ROMID/lib/lib_3cef0.o (section); \
build/ROMID/lib/naudio/n_synstopvoice.o (section); \
build/ROMID/lib/naudio/n_synfreevoice.o (section); \
build/ROMID/lib/naudio/n_seqplayer.o (section); \
build/ROMID/lib/lib_3e3e0.o (section); \

View File

@ -90,6 +90,7 @@
build/ROMID/lib/naudio/n_synsetvol.o (section); \
build/ROMID/lib/lib_3cdc0.o (section); \
build/ROMID/lib/lib_3cef0.o (section); \
build/ROMID/lib/naudio/n_synstopvoice.o (section); \
build/ROMID/lib/naudio/n_synfreevoice.o (section); \
build/ROMID/lib/naudio/n_seqplayer.o (section); \
build/ROMID/lib/lib_3e3e0.o (section); \

View File

@ -157,50 +157,3 @@ glabel func0003d050
/* 3d0f8: 03e00008 */ jr $ra
/* 3d0fc: 00000000 */ nop
);
GLOBAL_ASM(
glabel n_alSynStopVoice
/* 3d100: 27bdffe0 */ addiu $sp,$sp,-32
/* 3d104: afbf0014 */ sw $ra,0x14($sp)
/* 3d108: afa40020 */ sw $a0,0x20($sp)
/* 3d10c: 8fae0020 */ lw $t6,0x20($sp)
/* 3d110: 8dcf0008 */ lw $t7,0x8($t6)
/* 3d114: 11e0001c */ beqz $t7,.L0003d188
/* 3d118: 00000000 */ nop
/* 3d11c: 0c00c541 */ jal __n_allocParam
/* 3d120: 00000000 */ nop
/* 3d124: afa2001c */ sw $v0,0x1c($sp)
/* 3d128: 8fb8001c */ lw $t8,0x1c($sp)
/* 3d12c: 17000003 */ bnez $t8,.L0003d13c
/* 3d130: 00000000 */ nop
/* 3d134: 10000016 */ b .L0003d190
/* 3d138: 00000000 */ nop
.L0003d13c:
/* 3d13c: 8fa90020 */ lw $t1,0x20($sp)
/* 3d140: 3c198006 */ lui $t9,%hi(n_syn)
/* 3d144: 8f39f114 */ lw $t9,%lo(n_syn)($t9)
/* 3d148: 8d2a0008 */ lw $t2,0x8($t1)
/* 3d14c: 8fad001c */ lw $t5,0x1c($sp)
/* 3d150: 8f28001c */ lw $t0,0x1c($t9)
/* 3d154: 8d4b0088 */ lw $t3,0x88($t2)
/* 3d158: 010b6021 */ addu $t4,$t0,$t3
/* 3d15c: adac0004 */ sw $t4,0x4($t5)
/* 3d160: 8faf001c */ lw $t7,0x1c($sp)
/* 3d164: 240e000f */ addiu $t6,$zero,0xf
/* 3d168: a5ee0008 */ sh $t6,0x8($t7)
/* 3d16c: 8fb8001c */ lw $t8,0x1c($sp)
/* 3d170: af000000 */ sw $zero,0x0($t8)
/* 3d174: 8fb90020 */ lw $t9,0x20($sp)
/* 3d178: 24050003 */ addiu $a1,$zero,0x3
/* 3d17c: 8fa6001c */ lw $a2,0x1c($sp)
/* 3d180: 0c00fc79 */ jal n_alEnvmixerParam
/* 3d184: 8f240008 */ lw $a0,0x8($t9)
.L0003d188:
/* 3d188: 10000001 */ b .L0003d190
/* 3d18c: 00000000 */ nop
.L0003d190:
/* 3d190: 8fbf0014 */ lw $ra,0x14($sp)
/* 3d194: 27bd0020 */ addiu $sp,$sp,0x20
/* 3d198: 03e00008 */ jr $ra
/* 3d19c: 00000000 */ nop
);

View File

@ -0,0 +1,20 @@
#include <os_internal.h>
#include <ultraerror.h>
#include "n_synthInternals.h"
void n_alSynStopVoice(N_ALVoice *v)
{
ALParam *update;
ALFilter *f;
if (v->pvoice) {
update = __n_allocParam();
ALFailIf(update == 0, ERR_ALSYN_NO_UPDATE);
update->delta = n_syn->paramSamples + v->pvoice->offset;
update->type = AL_FILTER_STOP_VOICE;
update->next = 0;
n_alEnvmixerParam(v->pvoice, AL_FILTER_ADD_UPDATE, update);
}
}