たま日記

たまに書く

TX81Zをゲットした

TX81Zのプリセットがym2151.c改でうまく鳴らせなかった問題は半分くらい解決した。音の高さによってオペレータのOutputLevelを小さくするLevelScalingという項目がプリセットにあって、勘で適当に実装したら何となくそれっぽい音が出るようになった。

 

でも正しく鳴らない音も多い。実機ではどんな音で鳴るのか?どんなパラメータを与えているのか?知りたくなったので中古のTX81Zを買ってみた。

 

EWI USBと一緒に買ったもののホコリをかぶっていたUR22mk2とmicroKEY 25をPCにつないで鳴らしてみた。本物の音は重厚だった!(ような気がする)

 

というわけで、中身のYM2414のレジスタに書き込んでいる値を調べてみる。ピン配置はYM2151と同じらしい。ロジアナも買って波形を見てみると、アドレス/データをお膳立てしてからYM2414のCSをH→L→Hして書き込んでいるらしい。ロジアナは8chしか観察できないのでマイコンで観察することにする。

 

ESP32でできるかも?といろいろ試してみた。が速度が足りないのか信号を取りこぼす。もう少し早いのはないのか探していると、teensyというマイコンを見つけた。クロック600MHzだって。めちゃくちゃ早い。GPIOも早いらしい。

mimono.wpblog.jp

teensy4.0とロジックレベル変換モジュールをつなげてみる。ESP32の苦労がウソのようにあっさり動いた。音を出していないときでも$28~$37(音の高さ)と$60~$7F(音の大きさ)に書き込み続けていることが分かった。詳しい解析はこれから。

 
f:id:androuet:20201018213605j:image