|
SSBM Decomp
|
#include "synth.h"#include "synth.static.h"#include <math_ppc.h>#include <dolphin/ai.h>#include <dolphin/ar.h>#include <dolphin/os.h>#include <sysdolphin/baselib/debug.h>#include <sysdolphin/baselib/devcom.h>Functions | |
| static int | HSD_Synth_80389334 (int sfx_id, u8 vol, u8 vol2, u8 pan, int priority, u8 itd_flag, float pitch1, float pitch2, float mix_main, float mix_auxA, float mix_auxB) |
| void * | HSD_AudioMalloc (size_t size) |
| void | HSD_AudioFree (void *ptr) |
| static void | HSD_SynthSFXHeaderLoadCallback (int result, int length, void *addr, int cancelflag) |
| void | HSD_SynthSFXLoadNewProc (void) |
| int | HSD_SynthSFXLoad (const char *filename, int bankID, int flags, int mode) |
| void | HSD_SynthSFXWaitForLoadCompletion (void(*callback)(void)) |
| int | HSD_SynthSFXGetPendingLoadCount (void) |
| int | HSD_SynthSFXCancelLoad (int entrynum) |
| void | HSD_SynthSFXAllocateBank (int size) |
| static void | HSD_SynthSFXUnloadBank_inline (AXVPB *vpb) |
| void | HSD_SynthSFXUnloadBank (int bank_id) |
| void | HSD_Synth_80388DC8 (int sfx_id) |
| void | HSD_Synth_80388E08 (int sfx_id) |
| static void | HSD_SynthSFXGroupDataReaddressCallback (void *result, int length, void *addr, int cancelflag) |
| void | HSD_SynthSFXBankDeflag (int bank_id) |
| HSD_SynthSFXGroupDataReaddress | |
| void | HSD_SynthSFXBankDeflagSync (void) |
| u32 | HSD_SynthGetSoundMode (void) |
| void | HSD_SynthSetSoundMode (int mode) |
| void | HSD_SynthSFXStopNode (struct HSD_SynthSFXNode *node) |
| void | dropcallback (void *dropped) |
| static struct HSD_SynthSFXNode * | getNode (int sfx_id) |
| bool | HSD_SynthSFXPlayWithGroup (int sfx_id, u8 vol, u8 vol2, u8 pan, int priority, u8 itd_flag, int group, f32 pitch1, f32 pitch2, f32 mix_main, f32 mix_auxA, f32 mix_auxB) |
| static void | freeVoices (struct HSD_SynthSFXNode *node) |
| void | HSD_SynthSFXKeyOff (int id) |
| static void | stopRange (size_t lo, size_t hi) |
| void | HSD_SynthSFXStopRange (int bank_id) |
| void | HSD_SynthSFXPause (int sfx_id) |
| void | HSD_SynthSFXResume (int sfx_id) |
| int | HSD_SynthSFXCheck (int sfx_id) |
| void | HSD_SynthSFXSetVolumeFade (int sfx_id, u8 vol, int flag) |
| void | HSD_SynthSFXSetUserVol (int sfx_id, u8 vol) |
| void | HSD_SynthSFXSetMix (int sfx_id, float mix_main, float mix_auxA, float mix_auxB) |
| void | HSD_SynthSFXUpdatePitch (struct HSD_SynthSFXNode *node) |
| void | HSD_SynthSFXSetPitchRatio (int sfx_id, int flag, float ratio) |
| void | HSD_SynthSFXSetPriority (int id, int prio) |
| void | HSD_SynthSFXUpdateVolume (struct HSD_SynthSFXNode *node) |
| HSD_Synth_8038A000 | |
| static void | my_memzero (void *dst_raw, size_t size) |
| void | HSD_SynthSFXUpdateMix (struct HSD_SynthSFXNode *node, int interpolate) |
| static void | updateAllVolume (u32 mask) |
| void | HSD_SynthSFXUpdateAllVolume (int vol, u16 fade_frames, int channel) |
| void | HSD_SynthSFXSetDriverInactivatedCallback (UNK_T callback) |
| void | HSD_SynthSFXSetDriverMasterClockCallback (UNK_T callback) |
| void | HSD_SynthSFXSetDriverPauseCallback (UNK_T callback) |
| void | HSD_SynthCallback (void) |
| void | HSD_SynthResetStreamCounters (int result, int length, void *buf, bool b) |
| void | HSD_Synth_8038AD74 (u32 offset, uintptr_t src) |
| void | HSD_SynthPStreamFirstHakoHeaderCallback (void) |
| #HSD_Synth_8038ADD0(void) | |
| static void | HSD_Synth_8038B5AC_inline (void) |
| HSD_SynthPStreamHeaderCallback | |
| int | HSD_Synth_8038B5AC (int entrynum, u8 vol, u8 vol2, int channel) |
| void | HSD_SynthStreamSetVolume (f32 volume) |
| void | HSD_SynthInit (int dsp_size, int voices, int stream_size, int bank_size) |
Variables | |
| void * | HSD_Synth_804D7730 |
| HSD_SynthSFXSampleLoadCallback | |
| u8 | data_pad [0x2C] = { 0 } |
| u8 | data_pad_2 [0x84] = { 0 } |
| static AXPBMIX | lbl_80407FB4 = { 0 } |
| static AXPBSRC | HSD_Synth_80407FD8 = { 1, 0, 0, { 0, 0, 0, 0 } } |
| static u8 | lbl_8040806C [] |
| s32 | HSD_Synth_804D7764 |
| void * HSD_AudioMalloc | ( | size_t | size | ) |
| void HSD_AudioFree | ( | void * | ptr | ) |
|
static |
| void HSD_SynthSFXLoadNewProc | ( | void | ) |
| int HSD_SynthSFXLoad | ( | const char * | filename, |
| int | bankID, | ||
| int | flags, | ||
| int | mode | ||
| ) |
| void HSD_SynthSFXWaitForLoadCompletion | ( | void(*)(void) | callback | ) |
| int HSD_SynthSFXGetPendingLoadCount | ( | void | ) |
| int HSD_SynthSFXCancelLoad | ( | int | entrynum | ) |
| void HSD_SynthSFXAllocateBank | ( | int | size | ) |
|
inlinestatic |
| void HSD_SynthSFXUnloadBank | ( | int | bank_id | ) |
| void HSD_Synth_80388DC8 | ( | int | sfx_id | ) |
| void HSD_Synth_80388E08 | ( | int | sfx_id | ) |
|
static |
| void HSD_SynthSFXBankDeflag | ( | int | bank_id | ) |
| void HSD_SynthSFXBankDeflagSync | ( | void | ) |
| u32 HSD_SynthGetSoundMode | ( | void | ) |
| void HSD_SynthSetSoundMode | ( | int | mode | ) |
| void HSD_SynthSFXStopNode | ( | struct HSD_SynthSFXNode * | node | ) |
| void dropcallback | ( | void * | dropped | ) |
Search HSD_Synth_804C28E0 queue for this voice and remove it
Secondary voice - follow to primary node
|
inlinestatic |
| bool HSD_SynthSFXPlayWithGroup | ( | int | sfx_id, |
| u8 | vol, | ||
| u8 | vol2, | ||
| u8 | pan, | ||
| int | priority, | ||
| u8 | itd_flag, | ||
| int | group, | ||
| f32 | pitch1, | ||
| f32 | pitch2, | ||
| f32 | mix_main, | ||
| f32 | mix_auxA, | ||
| f32 | mix_auxB | ||
| ) |
|
inlinestatic |
| void HSD_SynthSFXKeyOff | ( | int | id | ) |
| void HSD_SynthSFXStopRange | ( | int | bank_id | ) |
| void HSD_SynthSFXPause | ( | int | sfx_id | ) |
| void HSD_SynthSFXResume | ( | int | sfx_id | ) |
| int HSD_SynthSFXCheck | ( | int | sfx_id | ) |
| void HSD_SynthSFXSetVolumeFade | ( | int | sfx_id, |
| u8 | vol, | ||
| int | flag | ||
| ) |
| void HSD_SynthSFXSetUserVol | ( | int | sfx_id, |
| u8 | vol | ||
| ) |
| void HSD_SynthSFXSetMix | ( | int | sfx_id, |
| float | mix_main, | ||
| float | mix_auxA, | ||
| float | mix_auxB | ||
| ) |
| void HSD_SynthSFXUpdatePitch | ( | struct HSD_SynthSFXNode * | node | ) |
| void HSD_SynthSFXSetPitchRatio | ( | int | sfx_id, |
| int | flag, | ||
| float | ratio | ||
| ) |
| void HSD_SynthSFXSetPriority | ( | int | id, |
| int | prio | ||
| ) |
| void HSD_SynthSFXUpdateVolume | ( | struct HSD_SynthSFXNode * | node | ) |
|
inlinestatic |
| void HSD_SynthSFXUpdateMix | ( | struct HSD_SynthSFXNode * | node, |
| int | interpolate | ||
| ) |
|
inlinestatic |
| void HSD_SynthSFXUpdateAllVolume | ( | int | vol, |
| u16 | fade_frames, | ||
| int | channel | ||
| ) |
| void HSD_SynthSFXSetDriverInactivatedCallback | ( | UNK_T | callback | ) |
| void HSD_SynthSFXSetDriverMasterClockCallback | ( | UNK_T | callback | ) |
| void HSD_SynthSFXSetDriverPauseCallback | ( | UNK_T | callback | ) |
| void HSD_SynthCallback | ( | void | ) |
| void HSD_SynthResetStreamCounters | ( | int | result, |
| int | length, | ||
| void * | buf, | ||
| bool | b | ||
| ) |
| void HSD_Synth_8038AD74 | ( | u32 | offset, |
| uintptr_t | src | ||
| ) |
| void HSD_SynthPStreamFirstHakoHeaderCallback | ( | void | ) |
#HSD_Synth_8038ADD0(void)
|
inlinestatic |
| void HSD_SynthStreamSetVolume | ( | f32 | volume | ) |
| void HSD_SynthInit | ( | int | dsp_size, |
| int | voices, | ||
| int | stream_size, | ||
| int | bank_size | ||
| ) |
Loop unrolled to match original binary (loop version adds 8 bytes to stack frame due to compiler allocating space for the counter)
|
extern |
| u8 data_pad[0x2C] = { 0 } |
| u8 data_pad_2[0x84] = { 0 } |
|
static |
|
static |
|
static |
|
extern |