2010年11月アーカイブ

いまさらMIDIとSSD

| コメント(0)

midi-ssd00.jpg

自分は高校の頃から10年くらいピアノを独学でやっていたのだが、きっかけは友人がゲームミュージックをキーボードで弾いていたのを真似したくて、ヤマハのキーボードPSR-12を小遣い貯めて購入したことだった。家電店の展示品を29,800円で購入したと記憶している。タッチセンサーやMIDI端子も持たない安物のキーボードで、今聞いたらショボいFM音源サウンドなんだが、ゲームミュージックを弾くには丁度良かった。これでスペースハリアーやハングオンなんかを弾いていたのだが、そのうちにピアノの曲を弾きたくなって幼稚園の頃に途中で投げ出した「こどものバイエル(上巻)」(同じものが今でも売っている)を引っ張り出して習得し、「エリーゼのために」に挑戦。しかしキーボードの49鍵では全然足りなくて、親に泣きついてKAWAIのデジタルピアノPW250を買ってもらったのであった。滅多に物を買ってくれるような親ではなかったのだが、デジタルピアノはさすがに小遣いで買える値段ではなく、真面目に練習しているところを見せたところ認めてくれたのだった。PW250はKAWAIのWEBサイトによると、1986年発売で定価は21万円だったそうだ。デジタルピアノ黎明期の製品であり、ハンマーアクションのないヘコヘコな鍵盤と貧弱な音源ではあったが、MIDI端子が付いていたので外付け音源Roland SC-33を繋げて大学卒業まで使っていた。SC-33は音色数が少なめでPCに繋ぐ音源としては力不足ではあったが、音色選択ボタンが使いやすく、リアルタイム演奏に使うには最適だった。

midi-ssd01.jpg

その後就職し、貯めた給料を投じて1999年に購入したのがクラビノーバCVP-103だった。10年落ちとなった今、このモデルは中古で6万円程度で取引されているようだが、買った当時は26万円くらいした。ハンマーアクション鍵盤やリアルな音源、FDDによるMIDIデータの読み込みや演奏データの保存など、デジタルピアノはもうこれ以上は進化しないところまで来たと考えて購入したのだった。FDDは時代遅れになってしまったが、鍵盤のタッチや音は練習用としてなら今でも十分に使えると思う。なお、不要になったPW250は後輩のK君に音源付きであげてしまった(押し付けたともいう)。ここ数年はすっかりピアノもご無沙汰になってしまい、部屋の片隅でホコリをかぶっていたのだが、子供がピアノを習い始めたため活用されることになった。CVPシリーズのクラビノーバは自動伴奏などのキーボード的なお遊びもできるデジタルピアノで、XG音源やMIDI鍵盤としても使える。せっかくなので余っているノートPCを接続してMIDIプレーヤーとして使えるようにしてみた。

今回のPCは大昔DO-夢で購入した富士通のMFノート645MF6C/W。Tridentのビデオチップを使ったもので、マザーは以前にネズミーPCで使ったものとほぼ同じ。CPUはセレロン450MHz、メモリはPC100のSO-DIMMなのでせいぜい128MB。今となっては非力なマシンだが、Windows MeをインストールしてMIDI専用機にするには十分だろう。ただ、いくつか不満点が出たので改造することにした。

midi-ssd02.jpg

不満点としてはまず、液晶がSVGAの800x600ドットで狭く感じられる点。ちょうどお絵かきPCでマザーを抜き取ったMF8/Xの12インチXGAパネルが余っていたのでこれを入れることにした。元々付いていたのは鳥取三洋のTM121SV-02L04C。入れ替えに使うのは日立のTX31D73VC1CAA。幸い外形寸法とネジ位置は同じだったが、コネクタの位置と形状が異なるので手配線を行った。Peterさんのサイトを参考にしたが、やったことはほぼ一緒。

midi-ssd03.jpg

まず、フレキについていたJAE20pコネクタを取り外し、LCDパネルについていたフレキをハサミで切断したものに手配線した。フレキに直接半田は載らないので、適当な部分をアートナイフで削って銅箔を露出させた上で半田付けしている。LVDS 1ch 6bitの配線だが、差動信号はワイヤーを等長とし、ツイストペアで配線した。

midi-ssd04.jpg

このようにLCDのコネクタ位置に合うようにワイヤーを引き回したのだが、コネクタの接触が甘いようなので、直接LCDの制御基板に半田付けしたほうが良かったかも...。ちなみにこれだけではマザーがXGA信号を出してくれないのだがPeterさんのサイトに記載されているようにフレキのマスキングとパターンカットを行ったところうまくいった。

次に、思ったよりHDDの回転音が気になるのでソリッドステート化することにした。以前にお絵かきPCに使ったときにプチフリーズ問題が多発し、実用性に難ありのEeePC用のMLC 8GBのSSDを取り外して流用することにした。これにWindows MeをインストールしてヤマハのシリアルMIDIドライバや、プレーヤをインストールして、ポートリプリケータのシリアルポートから自作のケーブルを介してクラビノーバと接続した。CVP-103にはミニDIN8pのPC端子が付いているので、ケーブル1本で双方向通信が可能だ。

midi-ssd07.jpg

ヤマハのMIDIデータ販売サイトで一曲あたり1分30秒の試聴が可能なのでいろいろ聴いてみた。有料なだけあって出来のよいデータが揃っているのだが、1曲210~315円は割高に感じる...。かつてNIFTY-SERVEのFMIDIDATフォーラムでJASRAC管理曲は1曲あたり数円の接続料で合法的にダウンロードできたことを考えるとなぁ...。あそこにアップされていたのはアマチュアの作品だったが当時はMIDI文化も盛んで、出来の良いデータも一杯あったのだが。

midi-ssd08.jpg

面白いのはヤマハの「ひいチャオプレーヤ」。MIDIデータを読み込ませると楽譜にしてくれて、それをなぞるように再生される。鍵盤を叩くとPC画面に反映され、カラオケのようにどれだけ元データに近い演奏ができたか採点をすることもできる。表示される楽譜を綺麗なピアノ譜にするためにはソレ用の決まりごとを守ったMIDIデータを用意する必要があるようだが。

ちなみにこのようにMIDIデータ再生機として使ってみると実用上問題になるようなプチフリーズは発生していない。MIDIデータなんてのはせいぜい数10kB程度なので低速なSSDでもこういう使い方なら意外と行けるのかも。とりあえずしばらくMIDI専用機として使ってみるつもりだが、できれば譜面台そのものをLCDモニタ化して、「クラビノーバPC」を作ってみたいような気もする。そのためにはコンパクトでSVGA以上のLCDパネルが必要だが、気が向いたら探してみよう。

midi-ssd05.jpg

なお、お絵かきPCには新たにBUFFALOのEeePC専用SLC 16GBのSSD「SHD-EP9S16G」を2.5インチIDE化して内蔵させた。ヤフオクで比較的安かったので購入したものだ。今時のSSDに比べると容量も小さく、アクセス速度は遅いのだが、一応メモリチップがSLCなのでプチフリーズ問題は大分マシになっているらしい。

midi-ssd06.jpg

配線は前回同様にジュンフロン線でチマチマやっている。IDEなのでワイヤーは等長が基本。そのせいでスパゲッティ化しているが、このように配線すると応力が半田付け部位に集中しにくくなるので断線の予防には効果的、などともっともらしく言ってみたり。電源は3.3Vのレギュレータをピンヘッダコネクタに取り付けている。消費電力も低そうなのでヒートシンクは使っていない。

midi-ssd09.jpg

Windows Xpをインストールしてベンチマークを取ってみた結果がこちら。SLCチップを使っている割には4kBの細かいファイルの書き込みは想像以上に遅く、前回プチフリが多発したMLC 4GBの3倍弱でしかないのだが、意外とプチフリはあまり気にならないレベルだった。

いまさらFS-FD1A

| コメント(1)

先日BBSでMSXのFDDの話題が出たので、我が家で死蔵していたFS-FD1A(パナのMSX用カートリッジ一体型FDD)のことを思い出した。

fd1a_01.jpg

これは自分が学生の頃、学校の先生をしている大阪のMSXユーザーの方にいただいたものだ。今でこそFDDはゴミみたな値段で転がっているが、発売当時は定価39,800円もした代物だった(これでもFDDとしては安価な方)。いただいた当時はMEGA-SCSIの普及期であり、ファイル管理はSCSIに移行したのでもう使わないからと、気前良く2台もタダで送ってくれた(感謝)。当時はキチンと動作していたのだが、先日1チップMSXで使おうとしたところ2台とも動作しなくなっており、どうやらしばらく寝かせている間に発酵してしまった模様。

fd1a_02.jpg

中身はミツミ製のドライブ「D357T」。検索をかけてみたが、詳細はわからなかった。スピンドルモーターはダイレクトドライブであるのでゴムベルトが伸びる心配はないが、読み取り不良が発生した場合はヘッド周りのトラブルである可能性があり、クリーニングで復活しない場合は素人修理は難しいとされる。

fd1a_03.jpg

今回はドライブユニットの修理はあきらめて換装を行うこととした。使うのはウチのジャンク箱に転がっていたミツミのFDDユニット「D353M3D」だ。以前キューブPCで使用していたもので、ベゼルはシルバー。購入したのは2002年頃だったと思う。

FDDの換装についてはここのサイトに詳しい解説がある。ここの情報と昔の記憶を頼りに試行したところ、MSXのFDDをAT互換機用のものに入れ替えるには下記の点に留意すればよいことがわかった。

1)DriveSelect信号のピンアサインが異なる。
2)34pにREADY信号を用意する必要がある。
3)DiskChange信号は通常は必要ない。
4)2HD識別スイッチは2D/2DD 固定にする。

とりあえず動作確認として元々のフラットケーブルを加工してFDDインターフェイス側の10p(DriveSelect1)とドライブ側の12pを接続し、インターフェイス側の34p(READY)をGNDに直結してAT機のFDDを繋いでみた。これだけで2DDのディスクは普通に読めたので手ごたえOK。本格的に入れ替えることにした。

なお、元のドライブとAT機のFDDではコネクタ位置が異なり、そのままではケーブルの長さがどうしても足りなくなる。特にフラットケーブルは上下が逆さになるため、すだれタイプ(途中でワイヤーがほぐれているやつ)のフラットケーブルを使って180度捻る必要がある。34pのすだれケーブルを1節分使うとぎりぎりケースに収めることができる。

fd1a_06.jpg

まずは、元のフラットケーブルの接合部を注意深く取り外し、短いフラットケーブルを除去した。コネクタに硬い樹脂がはめ込んであるのだが、うかつに手を出すとツメが容易に破損するので、パーツショップで同じものを買っておいたほうがbetter。ここに用意した34pのすだれケーブルを圧着する。注意深く位置決めをした上でこのようにベンチバイスで挟んで締め付ければOK。

fd1a_07.jpg

FDD側になる方も同じようにベンチバイスで挟んで圧着。圧着する前にFDDとの位置関係をシミュレートして長さや表裏を間違えないように注意が必要だ。

fd1a_09.jpg

圧着が終わったら隣り合うピンがショートしていないかテスターでチェック。フラットケーブルの10pと12pを途中で切断し、ドライブ側の12pと基板側の10pを接続した。基板側の12pとドライブ側の10pは断端を熱収縮チューブで絶縁している。

fd1a_08.jpg

電源ラインも延長し、基板側は最終的にはこんな感じになった。

次はドライブ側の加工であるが、AT互換機のFDDは34pにREADY信号を出さない代わりにDiskChange信号を出すようになっている。DiskChangeはディスクが取り出されたと認識された瞬間から、次のアクセスがあるまでactive(L=GNDレベル)になる信号だが、FS-FD1Aでは必要のないものだ。一方READY信号はFDDがアクセス可能であるときにactive(Lレベル)になる信号であるが、とりあえずディスクが入っていればactiveとしておけば問題ない。よって、34pのDiskChange信号をパターンカットで殺し、FDDのディスク挿入検知スイッチを利用してREADY信号を作り、34pに引き渡すことにした。

fd1a_04.jpg

このドライブのディスク挿入検知スイッチを調べてみると、ディスクが挿入されているときに信号がGNDに落ちていることが分かったので、これをそのままREADY信号として利用することにした。やったこととしては34pのパターンカットとスイッチへの接続だ。もし、逆にディスクがイジェクトされたときに信号がGNDに落ちるスイッチだったとしたらトランジスタを使って信号を反転させればよい。ちなみにREADY信号を常にGNDに落としてしまうとディスクが入っていないときにdisk offlineエラーを吐けなくなって動作が止まる不具合が発生する。READY信号はキチンと処理したほうが良いだろう。

fd1a_05.jpg

AT互換機のFDDは2HDも読み書きできる3モードドライブだが、MSXでは2HDフォーマットは使えない。2HDディスクには識別のためにライトプロテクトノッチの反対側に穴が開いているが、そのまま使うとFDDが2HDモードで動作してしまい、2DDとしてアクセスができなくなってしまう。テープなどで穴を塞いでおけばよいが、それも面倒な話だ。MSXでは2HDディスクを2DDフォーマットで使うことも多いため、ドライブの2HDモードは殺しておいたほうがbetterだろう。このドライブを調べたところスイッチが2HDでオープン、2DDモードでショートとなっていたので半田でブリッジさせておいた。

ちなみに余談だが、DiskChange信号はターボRの内臓FDDで使われており、これを接続しないとディスクキャッシュを使ったときに不具合が発生する。このようなケースではDiskChange信号は殺さないほうが良いだろう。

fd1a_10.jpg

ケーブルを延長したことにより、ドライブをケースに収納することができた。フラットケーブルはギリギリの長さ。ネジ穴はそのまま使うことができた。

fd1a_11.jpg

ベゼルがシルバーなので違和感ありまくりだが、とりあえずそのままにした。塗装しても良いのだが、いまさらMSXのドライブにそこまでしなくてもよいかと思ったり。

fd1a_12.jpg

動作確認したところ、2DDディスク、2HDディスクともに2DDモードで読み書き、フォーマットできた。もちろんプロテクトのかかった市販ソフトも問題なく起動できるし、1チップMSXで使うこともできた。ここまでやっておけばドライブユニットがまた壊れたとしても簡単に蘇らせることができるだろう。

ちなみに動作チェックに使ったMSX(FS-A1Mk2)は、FS-FD1Aと同じく大阪の先生からの頂き物。FDDも漢字ROMもFM音源も内臓していないが、改造によりメインメモリ512kB実装しているため、MEGA-SCSIだけでDOS2も動作可能。画面はMSX-FANのオープニングCG。

にがHP(母屋)

このアーカイブについて

このページには、2010年11月に書かれたブログ記事が新しい順に公開されています。

前のアーカイブは2010年10月です。

次のアーカイブは2010年12月です。

最近のコンテンツはインデックスページで見られます。過去に書かれたものはアーカイブのページで見られます。

ウェブページ

Powered by Movable Type 5.04