X68000でHxCを使ってみた(WIP)

  • 2010/11/06(土) 22:44:57

ちょっと時間が空きましたが、相変わらずHxCで遊んでいます。
PC-88、MSXとエミュレート出来ており、なかなか楽しめそうですが、不都合な点も段々わかってきましたが、それは追々ということで。

で、2D、2DDとくれば次は2HD(いわゆる日本の1.25とか1.23とか言われているやつ)ですよ。
公式サイトでもX68000でXDF形式やHDM(BKDSK)形式がサポートされていることが明記されていますが、フォーラムなど見ても、うまく動いているといった記載がはっきりとありませんでした。
#動いたという人がいましたが、その後続く人がいませんでした。

「360RPM, 500Kb/s, 8 1024Bytes sectors, 2 sides, 77 tracks floppy format」のみサポートと書かれていますが、これはX68000のみならず、PC-98などのMS-DOS(後期)のフォーマット、ディスクドライブと同一ですので、これがエミュレート可能であれば、PC-98なんかも問題なく使用可能と思われますし、いろいろとPC-98が現役なシステムでも役に立つはず。

サポートされているXDF、HDM(BKDSK)形式ですが、これは単純にセクターダンプしたベタデータでしかありませんので、HxC floppyemulator softwareでは、これを元に上記のフォーマットでデータを変換しているに過ぎないようなので、当然PC-98のMS-DOSフォーマットから作成された各種ゲームやアプリケーションのイメージもBKDSKなどに変換後、HFEに変換することが可能です。

ということで、本来はPC-98での使用と行きたいのですが、今回はとりあえず公式に記載されているX68000で動くかどうかやってみました。
#WIPなのは、後半呼んでいただければと思います。

マシンはこれ。



X68000PRO HD(なのにHDなしorz)です。

FDでのグラディウスがちゃんと起動しましたので、本体は問題ないようです。
それではやってみます。
#今回は長いです。
 

さて、早速分解です。
PROは分解が簡単ですよ。

肝心のドライブを見ていきましょう。

型番からはTEACのFD-55GFRです。コネクターを見てみると、

ドライブからの入出力は通常の34ピンのカードエッジ方です。88とかと一緒ですね。
んで、側面に見慣れないケーブルがあります。

どうやらこれが、X68k特有のオートイジェクトとかを制御するための、FDD_INTとかOptionSelectとかのラインと思われます。
んで、HxCでは現時点でどうやっても、これらの信号をエミュレートできません。
昔どこかで、PC/ATのドライブを接続する方法があり、これらの信号をエミュレートするための回路図も見たことがありますが、失念orz。
#だれか教えて。

ということで、これらの信号は本体のFDDから供給してもらうこととし、34ピン側のFDDのデータやりとりをHxCでエミュレートしてみることにしました。
#ここがWIPの理由です。

これから試行錯誤がありましたが、割愛。やり方を書きます。

まずはFDDに接続されているケーブルをFDDからはずしましょう。

このようにストレートケーブルで2ドライブとも接続されていました。
これに、この前PC-88のために作成した、カードエッジとボックスヘッダの34ピンとをつなぐケーブル、それと電源をFDDとHxCに同時に供給できるようにする電源の分配のライン(普通のPC/ATのケーブルです)を用意。


そして、これを接続します。
Drive0、Drive1とも34ピンのケーブルは外し、Drive0側の34ピンコネクタにHxCと接続します。
またDrive1の電源は外さず、Drive0の電源を外して分配のケーブルを接続し、Drive0とHxCへそれぞれ電源が供給できるように接続します。

んで、もっとも大事なのが、ジャンパの設定。

ちょっと写真がぼけていて、申し訳ないですが、マニュアルには書かれていないこういうトリッキーな形で接続です。
マニュアルでいうと、ID0をDriveBにID1をDriveAにします。
そうすると、当然挿入するイメージのDriveが反対(Drive0がDriveB、Drive1がDriveA)になってしまいますが、なぜかこれで動きます。
#このジャンパをもうちょっと調べないと。これもWIPだな。

それと何でもいいので、5インチ2HDのディスクを用意。
#写真はPC-98のWizardのファイラーである「ゆどうふ」の一枚です。こんなのでもOK

まずX68kの電源をon。

HxCにDriveBとして、Drive0に挿入したいイメージを選択。

本体のFDDにディスクを挿入し、ランプがついたこと(ディスク挿入などを認識していること)を確認。
タイミングが悪かったら、その状態でリセット。

そうすると、HxCからデータが読み込まれ、起動します。当然DriveBとしてREADしますので、HxCの表示はRBですが、Drive0としてエミュレートされます。
簡単に言えば、FDD_INTなどは本物のFDDからの信号で補ってもらって動かしています。

他のもやってみました。


こんな感じ。
とくれば、お決まりですが、これです。

#どんだけ持ってんだとか言わないw
2ドライブがエミュレートできるかやってみました。
まずは、先ほどと同じに起動ディスクを読み込ませます。



TNT.Xを起動すると、ディスクがイジェクトされ、プログラムディスクとプレイヤーディスクを挿入するように言われるので、まずはHxCでイメージを選択です。
#画面つぶれてます。写真下手だorz


 DriveBとしてDrive0に挿入するディスクを選択。

真ん中ボタンを長押しして、Drive選択を開き、DriveAを選択

DriveAにDrive1へ挿入したいイメージを選択です。

くどいですが、もう一度。
先ほどから記載しているとおり、Drive0はDriveB、Drive1はDriveAですのでお間違いなく。



んで、その後にFDDへ何でもいいので、ディスクを挿入です。

ディスク挿入が検知されると、HxCからデータを読み込んで起動します。

セーブも問題なく、キチンとDrive1(つまりDriveAのプレイヤーディスク)へ保存されました。


どうでしょうか?
とりあえず、こんな感じでX68kでも使用できます。
あとはEJECTなどの信号をエミュレートする回路を作成すれば、完全にFDDを取り外して動作可能と思います。
だれか回路教えてください。
#というか、ドライブを分解するかw
ではまた

次は私の悲願である、PC-9801Fで動くかやってみます。

この記事に対するトラックバック

この記事のトラックバックURL

この記事に対するコメント

イジェクト回路図?

えと、インターネットアーカイブにそれらしいのがあったので
転載します。

http://web.archive.org/web/20021203000844/http://kobaold.hp.infoseek.co.jp/old/fdd/

同梱のイメージファイル のところです。

  • 投稿者: quews
  • URL
  • 2010/11/11(木) 18:59:55
  • [編集]

ありがとうございます。

quewsさん。はじめまして。
情報ありがとうございます。現在、他のかたからも情報をいただき、作成中ですが、如何せん田舎暮らしのため、パーツの入手に難渋しています。
もうちょっとまとまりましたら、ブログ更新しようかと思っていますので、お待ちいただければと思います。
では

Pinout of TEAC FD-55GFR (X68000 Pro)

こんにちは、
私はTEAC FD-55GFR(X68000 Proで使用)の側面に余分なコネクタのピン配置を探しています私の考えでは、このコネクタが余分な信号を懸念(オプションを選択し、中のディスク、割り込みなど)。
あなたは、してください、このピン配置を教えてもらえますか?
ありがとうございます。

  • 投稿者: Caius
  • URL
  • 2012/09/22(土) 05:16:35
  • [編集]

この記事にコメントする

管理者にだけ表示を許可する