Search found 94 matches

by sverx
Mon Jun 17, 2013 1:57 pm
Forum: GBA Development
Topic: Running out of channels (on GBA)
Replies: 16
Views: 32143

Re: Running out of channels (on GBA)

At least it seems I succeed in isolating the problem.
Scenario:
- we've got a soundbank with some XM modules and some SFX.
- there's always one module playing (looping).
- in any moment we have to stop that module and suddenly start playing another module.
- SFX (non-looping) can get triggered ...
by sverx
Sat Jun 15, 2013 4:21 pm
Forum: GBA Development
Topic: Running out of channels (on GBA)
Replies: 16
Views: 32143

Re: Running out of channels (on GBA)

mmm... I spoke too soon :x
by sverx
Fri Jun 14, 2013 10:49 am
Forum: GBA Development
Topic: Running out of channels (on GBA)
Replies: 16
Views: 32143

Re: Running out of channels (on GBA)

It seems that the problem may be caused by a vblank happening while I'm stopping the old module/starting the new one, so I solved adding this:

Code: Select all

mmFrame();
VBlankIntrWait();
before stop/start.
I hope that's enough, and that this info would be useful to others :)
by sverx
Thu Jun 13, 2013 7:35 pm
Forum: GBA Development
Topic: Running out of channels (on GBA)
Replies: 16
Views: 32143

Re: Running out of channels (on GBA)

Looks like it's a problem that arises when I stop a module and start another... am I not supposed to start a module immediately after stopping another?
I'm trying to reproduce it in a test program...
by sverx
Thu Jun 13, 2013 2:28 pm
Forum: GBA Development
Topic: Running out of channels (on GBA)
Replies: 16
Views: 32143

Re: Running out of channels (on GBA)

Indeed it's the size of the internal data structure...
by sverx
Thu Jun 13, 2013 12:46 pm
Forum: GBA Development
Topic: Running out of channels (on GBA)
Replies: 16
Views: 32143

Re: Running out of channels (on GBA)

Quite curious: in mm_mixer_gba.s there's this:
@ MIXER CHANNEL FORMAT

.equ CHN_SIZE, 24

.equ CHN_SRC,0
.equ CHN_READ,4
.equ CHN_VOL,8
.equ CHN_PAN,9
// 10
// 11
.equ CHN_FREQ,12
.equ CHN_SIZE,16

if I'm right, the last line redefines CHN_SIZE to value 16.

But then in MaxMod.h there's
#define ...
by sverx
Thu Jun 13, 2013 10:29 am
Forum: GBA Development
Topic: Running out of channels (on GBA)
Replies: 16
Views: 32143

Re: Running out of channels (on GBA)

I am using the

Code: Select all

mmMixerChannelActive(channel_number)
function now to see the state of the channel(s).
Let's see if I can sort out the problem...
by sverx
Wed Jun 12, 2013 10:05 am
Forum: GBA Development
Topic: Running out of channels (on GBA)
Replies: 16
Views: 32143

Re: Running out of channels (on GBA)

I tried increasing channels from 12 to 16, but the problem persists.
It really sounds like some channels get 'stuck' busy -even if not playing anything- and they never get back to the 'free' state.
The XM causing this uses volume envelopes and key-off commands... I'll try remove those and see if ...
by sverx
Tue Jun 11, 2013 9:59 am
Forum: GBA Development
Topic: Running out of channels (on GBA)
Replies: 16
Views: 32143

Re: Running out of channels (on GBA)

... there's something I really don't get :|
Why is an 8 channels XM using more than 8 'MaxMod' channels?
AFAIK MaxMod on GBA doesn't feature "volume ramping" so I'm really puzzled.
Anyone?
by sverx
Mon Jun 10, 2013 10:36 am
Forum: GBA Development
Topic: Running out of channels (on GBA)
Replies: 16
Views: 32143

Running out of channels (on GBA)

It looks like when I play an XM (though it doesn't happen with every XM), it eats up all the available 'channels' and none is left for sound effects... even if the XM is using 8 channels only and MaxMod has been initialized with 12 channels.
mmInitDefault((mm_addr)soundbank_bin, 12);
Is there a ...