Email: Takayama Fumihiko <tekezo@pqrs.org>

GBA の DirectSound でサウンド再生

GBA の DirectSound でサウンド再生

GBA の DirectSound で wav を再生させる方法のメモ。

サウンドファイルの準備

SoX で Mono 8bit signed なデータを作成します。

% sox nocturne.wav -r 11025 -c 1 -b -s audio.raw

objcopy で *.o に変換。

% arm-elf-objcopy --rename-section .data=.rodata -I binary -O elf32-littlearm -B ARM audio.raw audio.o

あとは

注意点

サウンドの FIFO が不特定のタイミングでストールする現象を回避するために 以下の処理が必要です。
  • サウンドのために DMA をセットし直すときは必ず FIFO をリセットする
  • サウンドを止めた際は DMA やタイマーを止めるだけでなく、 REG_SOUNDCNT_H の ENABLE フラグを落とす

Comments for This Page.
Date: 2007-07-24 11:10 (JST)