YM2151シールドにmicroSDスロットを追加して、SDからvgmファイルのデータを直接読み取って演奏できるようにしてみた。シールド2段の親亀子亀孫亀状態ww
Arduino UNO R3はRAMが少なくてデータを一度にRAMに読み込めないので、SDから都度1バイトずつ読みながらYM2151に送っているんだけど、遅延なく演奏できているっぽいのが意外だった。
あとは、SD内のファイル一覧を取って、順に演奏していけるようにすればほぼ完成かな…
あと、これを #raspberry pi picoに移植できたとしたらどうなるかもためしてみたいところ。メモリにはもう少し余裕あるはずなので。
#MSX0 に移植できたらもっと楽しそうではあるんだけど・・・I2CオンリーでYM2151を動かすとなると、結局、間に #Arduino なり #raspberry pi pico なりが必要だからなあ・・・
#Arduino UNOからSPIでSDカードにアクセスすると、メモリを結構消費するのか、一定回数以上アクセスするとファイルが取り出せなかったり、オープンに失敗したりする。なのでSDの容量に関わらず認識できる楽曲数がかなり限られそう。30曲くらいでも不安定な感じ。