#include <nitro/snd.h>
void SND_SetTrackAllocatableChannel( int playerNo, u32 trackBitMask, u32 chBitFlag );
playerNo |
The Player number. Takes a value between 0 and 15. |
trackBitMask |
This is the track bit mask. It designates which track to use. |
chBitFlag |
This is an allocatable channel bit flag. |
Changes the allocatable channel with a track for the sequence currently playing on player number playerNo
.
The track bit mask, trackBitMask
, designates which track to use. Each bit expresses a track in descending order track 0 as the lowest bit. Operations are performed only on tracks with active bits.
chBitFlag
designates the allocatable channels. The channels are represented in order, with the lowest bit representing channel 0. Operations are performed only on tracks with active bits. If a 0 is set in chBitFlag
, allocation can be performed from all channels. This is the initially configured state.
This function is an ARM7 reserved function. After this function is called, processing occurs only after the command is issued with the SND_FlushCommand
function.
When it is necessary to synchronize something with the completion of the process, first use SND_GetCurrentCommandTag
to obtain the command tag immediately after calling this function. After the command is issued, use the command tag and call either the SND_IsFinishedCommandTag
or SND_WaitForCommandProc
function to confirm that the process has finished or to wait for it to complete.
SND_FlushCommand, SND_GetCurrentCommandTag, SND_IsFinishedCommandTag, SND_WaitForCommandProc
02/17/2005 Added a note about ARM7 command processing
01/05/2005 Initial version