2020年4月10日金曜日

PC-98で音源を鳴らして遊びたい話と、環境構築の備忘録的なもの

「PC-98で遊びたい」が正しいのか「MS-DOSで遊びたい」が正しいのか、自分でも分かってないんですが。ふふふ。

事の発端は、自分のTwitterのタイムラインに、ある動画が流れてきたのがきっかけです。
下北沢俊一(@Tani_Century)氏のこの動画なんですが、FM音源特有のちょっとピコピコしたサウンドもさることながら、MIDI(で合ってるかな?)譜面のビジュアライザーの素晴らしいGUIに感銘を受けてしまって、「これすき!これで遊びたい!!」という思いが止まらなくなってしまったわけです。

自分自身、Windows XP x86の時代からPCを触り始め、中学生の頃から自分専用のWindows 7 x64マシンに当たり前のように触れて育つという大変に恵まれた(?)世代なわけですが、そんな自分から見ても、PC-98の当時のマシンだったりUIというのはむしろ現代以上に先進的に見えるわけです。とてつもなくカッコイイし、それだけではなく「このパソコンがあれば何でもできるんだ」という充実感というものを強烈に感じられます。そして、当時の人々もまた、自分と同じような感覚を持っていたに違いありません。

とまあ、ポエムのような前書きはさておき。

自分がやりたいこととしては、MS-DOS環境でFM音源など各種音源をピコピコ鳴らしてみたくて、出来れば各種ビジュアライザー上で音楽を流したい、と。広大な電子の海を漁れば譜面くらい転がっているでしょうし(権利関係が怪しいものも多いかもしれませんが)、最悪なければ自分で打ち込めばいいや(作れるのか?)、くらいに考えています。

元々はFMDSPというビジュアライザーに惚れ込んでしまったのがきっかけなので、それらビジュアライザーをリスペクトして作られたWin32向けのソフトを色々試しました。
まず試したのがWMDSPですが、こちらはあまりにも重くて動作困難でした。
次に試したのがMDXWinです。こちらも予想通りかなり動作が重いですが、WMDSPほど重くはなく、十分余裕を持って動作させられました。Web上で配布されていた「きまぐれオレンジロード」の譜面を鳴らしてみたところ、綺麗なUIと音色で動作しました。
問題としては、古い環境向けのソフトですので、想定されている画面解像度が随分荒いのでしょう、FullHD環境で表示させると表示が小さくて読みにくいというものが一点。
それから、MDX形式の譜面の入手性が悪いというのが一点(これは当たり前の話ですが)。
最後に、「やっぱりFMDSPライクのGUIが欲しい...」ということで、自己満足出来なかったのが一点。

これらを踏まえて、やっぱり実機のMS-DOSでビジュアライザーとか動かしたいなあという気持ちが高まってきました。当時の環境を復刻させたい、というわけです。

自分なりに、当時のハードウェアを使ってFMDSPで譜面を鳴らしている方々の環境を調べつつ、環境構築を自分なりに考えてみました。
参考にしたのはこちらの動画: ナイト・オブ・ナイツ 【東方旧作音源 PC-98】 - ニコニコ動画
まずハードウェアですが...
本体としては、PC-9821Xa10/C4を使っているようです。こちらはPCM音源が内蔵されているようなので、別途サウンド関連のハードウェアを増設しなくても、PCM音源やその下位互換のFM音源くらいなら鳴らせるでしょう(なんにも詳しくないけど)。
ただし、この動画の作者さんはC Bus接続のサウンドボード「PC-9801-118」を増設されています。従って、先ほどの自分の見立ては誤りであり、デフォルトではFM音源は鳴らないという可能性や、音源を鳴らすにあたって様々な制約がある可能性もあります。
スペックは、AMD K6-2 450MHz、SIMM 16MB、HDD(CompactFlash) 4GBとあります。FMDSPは重いそうですから、スペックはできる限り高性能なものが欲しいところです。
HDDに関しては「4GBの壁」というものがあり、4GBを超えるとそれ以上の領域は認識しないことや、当時のHDDはもはや骨董品であり、消耗品でもあることから入手しにくいという問題があります。したがって、IDE互換のインターフェースを採用したCFカードを応用し、物理的なコネクタ形状を変換してHDDの代用とするのが定石のようです。この辺りはあとから考えます。

ソフトウェアとしては、 OSにMS-DOS6.20、音源ドライバーはPMDPPZとあります。OSはFreeDOSで代用しても良いでしょう。ドライバーは盲点となりがちで、これがないと当然音が鳴りません。ドライバーはまだ詳しく調べていないので、今後詳しく調べておきます。
プレイヤーはFMDSPとあります。こちらはVectorで今でも配布されており、既に実行ファイルを入手しています。

あとはキーボードとディスプレイですが、キーボードは専用のものが必要でしょう。配列もキーの種類や役割も独自のものになってしまうので、今どきの日本語配列や英語配列のものではダメでしょう。コネクターもPS/2ですらないようです。マウスはオプション扱いだろうから無くてもいいでしょうし、あったところで使い道はそうそう無いかもしれません。
ディスプレイは信号としてはAnalog RGBで、コネクターはD-Sub形状ですが15ピン3列と15ピン2列の2種類があるようです。どちらにせよ変換してディスプレイに繋げば動くはずなので、「無ければ変換アダプタを作る」くらいの精神で。
当時モノのディスプレイは既に骨董品だと思いますが、やっぱり当時モノのCRTディスプレイに憧れます。ですが、こだわらなければCRTディスプレイ自体はWindows XPの初期の頃まで普通に使われていたはずなので、どこかでそれを入手してくれば「それっぽく」なるでしょう。
実はアナログ接続のカラーLCDは手元にあるので、PC98本体の動作確認にはそっちを使おうと思います。

最後にハードウェアの入手方法ですが、PC98Factoryというサイトを見ていると意外にもリーズナブルな価格で手に入るみたいです。もうすでに骨董品みたいなものだと思うのですが、PC/AT(DOS/V)互換機が世界標準になる以前はPC98が国内標準のような存在だったそうなので、そのおかげで安いということなのでしょうか。詳しくないですが...。

今はお金も厳しく、PC98を買えるのがいつになるかは分かりませんが、とりあえず現段階で調べたことをまとめておいて、今後またPC98が欲しくなったときのために活かします。
相変わらず内容の薄い記事ですが、今回はこの辺で...。

0 件のコメント:

コメントを投稿

ATmega328P-PUを最小構成で動かす

最近、空き時間にAVRマイコンで遊んでいるのですが、Arduinoボードのように周辺機器や回路を満載せず、最小構成で動かしたいと感じることがあります。 Arduinoボードには、USB-シリアル変換インターフェース、5Vおよび3.3V定電圧電源、水晶発振子やセラミック発振子、電源...