summaryrefslogtreecommitdiff
path: root/arm9/lib/include/SND_interface.h
diff options
context:
space:
mode:
authorred031000 <rubenru09@aol.com>2020-05-29 18:45:08 +0100
committerred031000 <rubenru09@aol.com>2020-05-29 18:45:08 +0100
commit0d8876b37adebcda571659089dcff343fccdfc8b (patch)
tree0fc796c2d9a711cd8ba6f1919391a57174aa5b3f /arm9/lib/include/SND_interface.h
parent83d33f36fcf46dec8ea99b86563a19885be4bd8e (diff)
parentd6fd8d1ed926feebffab4154a84eb70a84083bfc (diff)
Merge branch 'master' of https://github.com/martmists/pokediamond
Diffstat (limited to 'arm9/lib/include/SND_interface.h')
-rw-r--r--arm9/lib/include/SND_interface.h62
1 files changed, 62 insertions, 0 deletions
diff --git a/arm9/lib/include/SND_interface.h b/arm9/lib/include/SND_interface.h
new file mode 100644
index 00000000..bd2c3869
--- /dev/null
+++ b/arm9/lib/include/SND_interface.h
@@ -0,0 +1,62 @@
+#ifndef GUARD_SND_INTERFACE_H
+#define GUARD_SND_INTERFACE_H
+
+#include "global.h"
+#include "SND_bank.h"
+#include "SND_work.h"
+
+void SND_StartSeq(s32 player, const void *seqBasePtr, u32 seqOffset, struct SNDBankData *bankData);
+void SND_StopSeq(s32 player);
+void SND_PrepareSeq(s32 player, const void *seqBasePtr, u32 seqOffset, struct SNDBankData *bankData);
+void SND_StartPreparedSeq(s32 player);
+void SND_PauseSeq(s32 player, BOOL flag);
+
+void SND_SetPlayerTempoRatio(s32 player, s32 ratio);
+void SND_SetPlayerVolume(s32 player, s32 volume);
+void SND_SetPlayerChannelPriority(s32 player, s32 prio);
+void SND_SetPlayerLocalVariable(s32 player, s32 varNo, s16 var);
+void SND_SetPlayerGlobalVariable(s32 varNo, s16 var);
+
+void SND_SetTrackVolume(s32 player, u32 trackBitMask, s32 volume);
+void SND_SetTrackPitch(s32 player, u32 trackBitMask, s32 pitch);
+void SND_SetTrackPan(s32 player, u32 trackBitMask, s32 pan);
+void SND_SetTrackPanRange(s32 player, u32 trackBitMask, s32 panRange);
+void SND_SetTrackModDepth(s32 player, u32 trackBitMask, s32 depth);
+void SND_SetTrackModSpeed(s32 player, u32 trackBitMask, s32 speed);
+void SND_SetTrackAllocatableChannel(s32 player, u32 trackBitMask, u32 chnBitMask);
+void SND_SetTrackMute(s32 player, u32 trackBitMask, BOOL flag);
+
+void SND_StartTimer(u32 chnBitMask, u32 capBitMask, u32 alarmBitMask, u32 flags);
+void SND_StopTimer(u32 chnBitMask, u32 capBitMask, u32 alarmBitMask, u32 flags);
+
+void SND_SetupCapture(s32 capture, s32 format, void *bufferPtr, u32 length, BOOL loopFlag, s32 in, s32 out);
+void SND_SetupAlarm(s32 alarm, u32 tick, u32 period, SNDAlarmCallback cb, void *userData);
+
+void SND_StopUnlockedChannel(u32 chnBitMask, u32 flags);
+void SND_LockChannel(u32 chnBitMask, u32 flags);
+void SND_UnlockChannel(u32 chnBitMask, u32 flags);
+
+void SND_SetChannelTimer(u32 chnBitMask, s32 timer);
+void SND_SetChannelVolume(u32 chnBitMask, s32 volume, s32 chnDataShift);
+void SND_SetChannelPan(u32 chnBitMask, s32 pan);
+void SND_SetupChannelPcm(s32 chn, s32 waveFormat, const void *dataAddr, s32 loopMode, s32 loopStart, s32 dataLen, s32 volume, s32 chnDataShift, s32 timer, s32 pan);
+void SND_SetupChannelPsg(s32 chn, s32 sndDuty, s32 volume, s32 chnDataShift, s32 timer, s32 pan);
+void SND_SetupChannelNoise(s32 chn, s32 volume, s32 chnDataShift, s32 timer, s32 pan);
+
+void SND_InvalidateSeqData(const void *start, const void *end);
+void SND_InvalidateBankData(const void *start, const void *end);
+void SND_InvalidateWaveData(const void *start, const void *end);
+
+void SND_SetMasterVolume(s32 volume);
+void SND_SetOutputSelector(s32 left, s32 right, s32 channel1, s32 channel3);
+void SND_SetMasterPan(s32 pan);
+void SND_ResetMasterPan(void);
+
+void SND_ReadDriverInfo(struct SNDDriverInfo *info);
+
+void SNDi_SetPlayerParam(s32 player, u32 offset, u32 data, s32 size);
+void SNDi_SetTrackParam(s32 player, u32 trackBitMask, u32 offset, u32 data, s32 size);
+void SNDi_SetSurroundDecay(s32 decay);
+void SNDi_SkipSeq(s32 player, u32 tick);
+
+#endif // GUARD_SND_INTERFACE_H