OpenALもFM Sound Generatorもよくわからんけど
いろいろいじっててやっと解決したと思ったらすでに解決してた…

問題だったのはYM2203クラスのinit()に設定したクロック値が小さすぎたのと
下記みたいにYM2203クラスのcount()の前に音声波形をmix関数で生成しなければ
ならないってことかな

  1.set_pitch、note_on等のイベント
   ↓
  2.mixで必要な時間分だけ波形生成
   ↓
  3.countで内部タイマーを進める(2で波形生成した時間分)
   ↓
  4.以下1〜3の繰り返し

あと、マルチポストして解決したならそれぞれに
解決内容の詳細リンクを張るなりしたほうがいいんじゃないかな?

http://katahiromz.bbs.fc2.com/reply/10466094/34/