GBA Sound Demo

From GameBrew

GBA Sound Demo
Last Updated2022/01/22
TypeMusic Apps

These demos allow you to experiment with different sample rates and bit depths on the Game Boy Advance.

The GBA is notorious for having bad sound. Using these demos, you can verify that the GBA hardware is quite capable of good sound, but it takes special care to setup the timing correctly to produce a 32K sample rate.

The source code is included, as .gvasm files. Read the technical details for more information on how this works.

User guide

Both demos have a blinking indicator in the bottom left -- this is used to verify that timing is correct when using timer based sample rates (16K, 32K, 65K).

Blinking indicates that the VBlank and Timer IRQ fired at the same exact time.

Rates Demo

The rates demo will play a tone, and allow you to switch the sample rate, bit depth, dithering, and hardware sample rate.

The top number is the sample rate of the generated tone.

The bottom numbers are the bit depth and hardware sample rate (set via SOUNDBIAS), along with whether dithering is used when generating the tone.

Song Demo

The song demo will play a song at two sample rates -- the top is controlled via vblank, the bottom is controlled via timers.


Rates Demo:

L/R - sweep tone

Start - set tone to 256Hz

Select - set tone to 4096Hz

D-Pad - change settings

A/B - change between top or bottom settings (for quick comparison)

Song Demo:

Start - restart song

Anything else - swap between sample rates


gbasounddemo3.png gbasounddemo4.png

External links