Takayama Fumihiko | Email: <tekezo@pqrs.org> | Google+

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 フラグを落とす
Date: 2007-07-24 02:10 (UTC)