# Sound (SND, SNDEX) Function List

##

### Initialization

SND_Init |  | Initializes sound.

### ARM7 Command Processes

SND_FlushCommand |  | Issues reserved commands.
SND_RecvCommandReply |  | Receives the command process reply.
SND_WaitForCommandProc |  | Waits for command processes to end.
SND_WaitForFreeCommand |  | Waits until free commands are available.
SND_GetCurrentCommandTag |  | Gets the current command tag.
SND_IsFinishedCommandTag |  | Checks whether the command process has ended.
SND_CountFreeCommand |  | Gets the number of free commands.
SND_CountReservedCommand |  | Gets the number of reserved commands.
SND_CountWaitingCommand |  | Gets the number of commands that wait for processing to end.

### Sequence Commands

SND_StartSeq |  | Plays sequence.
SND_PrepareSeq |  | Prepares the sequence for playback.
SND_StartPreparedSeq |  | Plays a sequence that has been prepared for playback.
SND_StopSeq |  | Stops sequence.
SND_PauseSeq |  | Pauses or restarts sequence
SND_SetPlayerVolume |  | Changes the player volume.
SND_SetPlayerTempoRatio |  | Changes the tempo of the sequence.
SND_SetPlayerChannelPriority |  | Changes the sound priority of the player.
SND_SetPlayerLocalVariable |  | Sets the player local variable.
SND_SetPlayerGlobalVariable |  | Sets the player global variable.
SND_SetTrackMute* |  | Mutes tracks.
SND_SetTrackVolume |  | Changes the volume of tracks.
SND_SetTrackPitch |  | Changes the pitch of tracks.
SND_SetTrackPan |  | Changes the pan (position) of tracks.
SND_SetTrackPanRange |  | Changes the track pan range.
SND_SetTrackModDepth |  | Changes the modulation depth of tracks.
SND_SetTrackModSpeed |  | Changes the modulation speed of tracks.
SND_SetTrackAllocatableChannel |  | Changes the channel that can be allocated for a track.

### Channel Commands

SND_LockChannel |  | Locks channels so they can be directly controlled.
SND_UnlockChannel |  | Unlocks locked channels.
SND_StopUnlockedChannel |  | Stops the unlocked channel.
SND_SetupChannelPcm |  | Sets up channels for PCM playback.
SND_SetupChannelPsg |  | Sets up a channel for playing PSG rectangular waves.
SND_SetupChannelNoise |  | Sets up a channel for playing white noise.
SND_SetChannelVolume |  | Changes the channel volume.
SND_SetChannelTimer |  | Changes the channel timer.
SND_SetChannelPan |  | Changes the channel pan.

### Capture Commands

SND_SetupCapture |  | Sets up captures.

### Alarm Commands

SND_SetupAlarm |  | Sets up the sound alarm.

### Timer Commands

SND_StartTimer |  | Starts timers.
SND_StopTimer |  | Stops timers.

### Global Settings Commands

SND_SetMasterVolume |  | Changes the master volume.
SND_SetMasterPan |  | Sets the master pan.
SND_ResetMasterPan |  | Disables the master pan.
SND_SetOutputSelector |  | Changes the output selector.

### Data Invalidation Commands

SND_InvalidateSeqData |  | Invalidates sequence data.
SND_InvalidateBankData |  | Invalidates bank data.
SND_InvalidateWaveData |  | Invalidates waveform data.

### Driver Information Commands

SND_ReadDriverInfo |  | Gets sound driver information.

### Bank

SND_AssignWaveArc |  | Assigns waveform archives to banks.
SND_DestroyBank |  | Destroys banks.
SND_DestroyWaveArc |  | Destroys waveform archives.
SND_ReadInstData |  | Reads instruments from banks.
SND_WriteInstData |  | Updates the instrument data in banks.
SND_GetFirstInstDataPos |  | Gets the location information for scanning instrument data.
SND_GetNextInstData |  | Gets the instrument data in order.
SND_GetWaveDataCount |  | Gets the amount of waveform data in the waveform archive.
SND_GetWaveDataAddress |  | Gets the address of the waveform data in the waveform archive.
SND_SetWaveDataAddress |  | Updates the address of the waveform data in the waveform archive.
SNDInstData |  | Instrument data structure.
SNDWaveData |  | Waveform data structure.

### Get Information

SND_GetPlayerStatus |  | Gets the status of the players, showing whether they are active.
SND_GetChannelStatus |  | Gets the status of the channels, showing whether they are active.
SND_GetCaptureStatus |  | Uses a return value to determine whether a sound capture is active.
SND_GetPlayerLocalVariable |  | Gets the sequence local variable.
SND_GetPlayerGlobalVariable |  | Gets the sequence global variable.
SND_GetPlayerTickCounter |  | Gets the player tick counter.
SND_ReadChannelInfo |  | Gets channel information.
SND_ReadPlayerInfo |  | Gets the player information.
SND_ReadTrackInfo |  | Gets the track information.
SNDChannelInfo |  | Channel information structure.
SNDPlayerInfo |  | Player information structure.
SNDTrackInfo |  | Track information structure.

### Utilities

SND_CalcDecibel |  | Calculates the decibel value.
SND_CalcDecibelSquare |  | Calculates the decibel value corresponding to the square of the scale value.
SND_CalcTimer |  | Calculates the timer value after pitch conversion.
SND_CalcChannelVolume |  | Calculates the value for the channel volume.

### Extended Features (SNDEX)

SNDEX_Init |  | Initializes extended sound features.
SNDEX_IsConnectedHeadphoneAsync |  | Asynchronously gets the headphone connection state.
SNDEX_IsConnectedHeadphone |  | Synchronously gets the headphone connection state.
SNDEX_GetMuteAsync |  | Asynchronously gets the mute settings.
SNDEX_GetMute |  | Synchronously gets the mute settings.
SNDEX_GetI2SFrequencyAsync |  | Asynchronously gets the I2S frequency.
SNDEX_GetI2SFrequency |  | Synchronously gets the I2S frequency.
SNDEX_GetDSPMixRateAsync |  | Asynchronously gets the rate at which DSP audio output is mixed.
SNDEX_GetDSPMixRate |  | Synchronously gets the rate at which DSP audio output is mixed.
SNDEX_GetVolumeAsync |  | Asynchronously gets the speaker volume.
SNDEX_GetVolume |  | Synchronously gets the speaker volume.
SNDEX_GetCurrentVolumeAsync |  | Asynchronously gets the speaker volume of the console at the time the function executes.
SNDEX_GetCurrentVolume |  | Synchronously gets the speaker volume of the console at the time the function executes.
SNDEX_SetMuteAsync |  | Asynchronously changes the mute settings.
SNDEX_SetMute |  | Synchronously changes the mute settings.
SNDEX_SetI2SFrequencyAsync |  | Asynchronously changes the I2S frequency.
SNDEX_SetI2SFrequency |  | Synchronously changes the I2S frequency.
SNDEX_SetIirFilter |  | Synchronously sets an IIR filter.
SNDEX_SetIirFilterAsync |  | Asynchronously sets an IIR filter.
SNDEX_SetDSPMixRateAsync |  | Asynchronously changes the rate at which DSP audio output is mixed.
SNDEX_SetDSPMixRate |  | Synchronously changes the rate at which DSP audio output is mixed.
SNDEX_SetVolumeAsync |  | Asynchronously changes the speaker volume.
SNDEX_SetVolume |  | Synchronously changes the speaker volume.
SNDEX_SetIgnoreHWVolume |  | Saves the current speaker volume and synchronously changes the value to the specified speaker volume.
SNDEX_ResetIgnoreHWVolume |  | Synchronously changes the speaker volume to the value that was saved when the `SNDEX_SetIgnoreHWVolume` function was run.
SNDEX_SetVolumeSwitchCallback |  | Sets the callback function to notify when the volume button on the TWL system is pressed.
SNDEXHeadphone |  | An enumerated type that shows the headphone connection state.
SNDEXIirFilterParam |  | A structure that is a collection of parameters used to set IIR filters.
SNDEXIirFilterTarget |  | An enumerated type that indicates the target to which IIR filters will be applied.
SNDEXMute |  | An enumerated type that shows mute settings.
SNDEXFrequency |  | An enumerated type that shows the I2S operating frequency.
SNDEXCallback |  | The common type for asynchronous callback functions related to extended sound features.

CONFIDENTIAL