sound 周り

プチプチの原因

Audio DAC にデータを渡す方法はシリアル。データを流しはじめるときに stream data をラッチしてから渡したら直った。1bit ずつ渡してるときに値が更新されたらちゃんと再生できないなんてあたりまえじゃないか。

なんで五右衛門のときは問題がなかったんだ?

FM 音源

シミュレート用に組んで、メモリの read/write タイミングだけ確認して、実機で動かす。いきなり鳴ってくださったがテンポが超早い。キーは高くないので周波数はちゃんと入っていると判断。
speedup.wav

元のプログラムはタイマの値が更新されたか、常に値を監視している。いただいたソースを見てみると、timerA, timerB での実装が本物の文書と違っていたので直した。そしたらちゃんとなってくれた!

DPCM 周りはまだ完璧じゃないが、これはかなり大きな一歩である。ほかの問題は clock 周りが怪しいのか、コンパイルしたファイルが動くのが3回に1回というところだろうか。
punkshot88.wav

  • FM + DPCM のあとに FM だけがはいってます。
  • puuuuunk shot! の voice は main CPU から別途割り込みが来ているんでここで鳴らないのは普通です。