OPNをOPNAに換装する話

とても興味深いネタが流れてきた。ネタ元は元ファミコンランド中標津店の中の方で、3年前の札幌のイベントでご一緒させていただいた方である。お久しぶりです!

PC-98×1のFM音源といえば、OPN搭載の26K音源、上位互換OPNA搭載の86音源が有名であるが、この基板で改造すれば26K音源を86音源相当にUpgradeできるらしい。98のソフトにはOPNA対応のものが多いので恩恵はかなりありそう。なにより基板がコンパクトで実装場所の不安が少ないのが良い。問題点は作者の方が書いておられるように元のOPNのIOデコード回路の構成によっては換装できない(または極めて困難な)機種が存在することのようである。また、YMF288は汎用ポートが利用できないが、元々ジョイスティックポートを持たない機種であればデメリットにはならないだろう。

自分もやってみようと手持ちのNOTE ORCHESTRA LITTLE-1を調べてみた。98noteの110pバス対応のFM音源の情報は下記リンクに纏められているが、ほとんどがOPN搭載機のようである。

https://j02.nobody.jp/jto98/n_note_sound/fmu.htm

なお、SNEの音源については下の記事からリンクしているUME-3さんのデータベース(EXCELファイル)が詳しい。

http://ohta.music.coocan.jp/packen/board/sne.htm

件のOPNA化基板で改造できるかどうかはBASICでコマンドを投げれば判別できるとのこと。

IOポートの#188hと#18ChがミラーになっていればOPNA化できるらしい。結果は3,3なのでビンゴ!と思いきや、後に罠が待ち構えているのであった。

ガワを開けてみたところY8950が載るパターンが空いていて、ちょっと笑ってしまった。何故かSNEの音源ボードにはY8950やYM3812(OPL2)が乗っている製品があるが、対応ソフトはほとんど出なかったらしい。98のFM音源界におけるベータマックス的存在だろうか。Y8950が実装されていたら剥がしてMSX-AUDIO製作に使えるのに残念、というか、これだけ隙間があったらYMF288でなくてYM2608が載るのでは?

当方、YM2608はMSX用のカートリッジの製作でノウハウがあり、設計データを流用して基板イメージはサクっと完成。YM2608ならADPCM用のDRAMが搭載できるし、ジョイスティックポートも温存できる。OPAMP電源はジャンパー設定で5V単電源と±12Vに対応。98の5V電源の品質が解らないので、とりあえず単電源で作ってみて、ノイズが多ければDC-DCを積めばいいだろう。

3週間で基板が届いたので実装。ガワ内部にはスピーカーがせり出していて、微妙に高さ制限がある。そこでICソケットに細ピンを直挿しし、この上に基板を載せて高さを抑える手法を採った。実装時に半田がソケットに流入しないようにポリイミドテープで保護している。

OPN用DACのYM3014は引っこ抜いてソケット化、2-6-7pをショートしてメインボード側で不使用となるOPAMPの入力をGNDに接続しておいた。OPNAサウンド出力はR14(L側),R10(R側)を撤去して配線。4MHzのオシレータは邪魔なので撤去。その他干渉する部品は倒したりして適当に処置。

OPNAのアドレスA1については、110pバスのAB021がバッファICを経由してGALの7pに入っているのを確認した。ここがA1取り出しポイントであるが、OPNAの/CSは無加工では駄目で、GALの7pを跳ね上げてGNDに接続する必要があった。

当初の調査で#188hと#18Chの読み取り値が3,3を返したのでミラーイメージと思っていたのだが、実は#18Chはミラーではなくfloatingしている模様。試しに#188h,#18Ah,#18Ch,#18Ehを連続して読むと値は3,0,0,0になり、#18Chの値は直前に読んだ18Ahに引きずられて変化した。このボードでは#18ChはY8950に割り当てられているが、データを返すはずのY8950が実装されていないためそのような挙動を示したものと思われる。

METAL FORCEではSPB(スピークボード)として認識し、ADPCMによる合成音声も発音された。ジョイスティックポートに猫の手リモコンを挿せばワイヤレスサタパでプレイ可能。ただ、内蔵スピーカーの音が劣悪なので、ヘッドフォンか外付けスピーカーは必須だろう。

FMPでもスピークボードとして認識した。

偉人による古の作品を鑑賞。ステレオでPCMも鳴っていて、改造前とは別世界である。自分は当時リアルタイムでは98のFM音源文化を経験していなかったが、2023年現在でもソフトやデータが配布されているのはありがたい限り。ドライバやプレーヤーはVectorで配布されている。

肝心の音質は思ったより低ノイズで、クリアに聞こえていると思う(個人の感想です)。OPAMPは5V単電源でも良さげなので±12VのDC-DCはオミットした。ちなみに上のつべ動画のサウンドは実機からの生録で、冒頭から終端まで無加工のもの。


余談であるが、SNEのFM音源は妙なステレオ出力仕様になっていて、OPN音源のLchがSSG、RchがFMに割り当てられていたりする。これをヘッドフォンで聴いたりすると、左右の耳に全く違う音が入ってきてマトモに聴いていられない。スイッチでアナログモードに変更することもできるが、せっかくなのでステレオ効果を温存しつつ脳がバグらない程度にLRをMIXする改造をしてみた。

 

ザックリ回路を解析するとこんな具合。LとRが完全にSSGとFMで分離しているが、これをSSG:FM比率をLch2:1、Rch1:2くらいに調整する。

上図の赤丸で囲ったところに1k抵抗、3k抵抗を追加してみた。GrounseedのOPで試聴するとこんな感じになる。

更に余談だが、Grounseedは非常に楽曲に力が入っていると思うが、OPN版はOPNA版と違う曲に差し替えられていたりする。OPNA版は劇中BGMも神がかっているので、できればスピークボード(または86音源+ちびおと)で、良い再生環境で聴いてみてほしい。

なお、このLR-mix改造はOPNA換装後は意味をなさないが、SNEの変態ステレオ仕様で困っている方の参考になれば幸いである。