|
sound library tweak for AESNDLIB November 25, 2011 11:41PM | Registered: 15 years ago Posts: 99 |
void AESND_Init()
{
// top part removed for example
for(i=0;i<MAX_VOICES;i++) // this is the 2nd loop in the original code
{
snd_set0w((int*)&__aesndvoicepb,sizeof(struct aesndpb_t)>>2);
__aesndvoicepb.flags = VOICE_STOPPED; // added tweak
AESNDPB* AESND_AllocateNextFreeVoice(AESNDVoiceCallback cb) // new function
{
u32 i,level;
AESNDPB *pb = NULL;
_CPU_ISR_Disable(level);
for(i=0;i<MAX_VOICES;i++) {
pb = &__aesndvoicepb;
if (pb->flags&VOICE_STOPPED) // changed, was if(!(pb->flags&VOICE_USED))
{
// rest is unchanged as before