Windows とのファイル交換
はじめに
ソフトウェアライブラリ などからダウンロードした X680x0 用のソフトウェアを Windows から X680x0 に転送したいとき、あるいは、X680x0 で利用していたソフトウェアを Windows で動作する X68000 エミュレータで利用したいとき、Windows と X680x0 の間でファイル交換を行うことになります。その方法をいくつか紹介します。
(この記事は M.Kamada の 2001 年 6 月の日記 および M.Kamada の 2009 年 8 月の日記 より抜粋・加筆・修正したものです)
フロッピーディスクを使う
両方の環境に同じサイズの FD ドライブが繋がっているときは、フロッピーディスクでファイルをやりとりできる場合があります。このとき、両方の環境が共通のフォーマットに対応していなければなりません。X680x0 側で「FORMAT.X /5」でフォーマットすると 2HC (1200KB)に、X68030 Compact のときは FDDEVICE.X を組み込んで「FORMAT.X /4」でフォーマットすると 2HQ (1440KB)になります。ファイル名は半角英大文字数字のみで 8+3 文字以内にします。Windows で書き込んだファイルを X680x0 で読み出せないときは(zombie.x を X680x0 側に用意できれば)zombie.x でファイルの抽出を試みます。FD は容量が小さいので大量の転送には適しません。
MO を使う
両方の環境に MO ドライブが繋がっていれば(あるいは 1 台の MO ドライブを Windows と X680x0 の両方で利用することができれば)、X680x0 で FIM.X を使って IBM フォーマットにした MO を使ってファイルをやりとりすることができます。フロッピーディスクの場合と同様に、ファイル名は半角英大文字数字のみで 8+3 文字以内にします。
CD-R/RW を使う
Windows 側に CD-R/RW ドライブが繋がっていて X680x0 側に CD-ROM ドライブが繋がっているときは、Windows から X680x0 へのファイル転送に限れば、「CD-R/RW に焼く」という必殺技があります。最近の CD-R/RW ドライブは書き込み速度も速いので意外に速く大量に転送できて、ついでにバックアップの代わりにもなります。しかし、この方法では X680x0 から Windows への転送はできません。
SCSI ハードディスクを共有する
FAT32 ツールシリーズ を利用して Windows と X680x0 で 1 台の SCSI ハードディスクを共有する方法があります。この方法はある程度の知識が必要です。
メールを使う
両方の環境をそれぞれインターネットに接続できるときは、メールを使ってファイルを転送するという方法があります。従量制の場合は通信費がかかるので常用には向きませんが、いざというときには使えます。メールボックスに容量制限がある場合はあまり大きなファイルは転送できません。バイナリ添付ファイルはエンコードされて膨張するのでサイズに注意しましょう。
クロスケーブルで直結する
以下は 2008 年 10 月に英語圏の方からメールで CD-ROM ドライバの入手方法を質問されたときに説明して成功した手順を日本語で書き直したものです。Windows マシンに RS-232C ポートがない場合は USB ⇔ RS-232C 変換器を利用します。手元の環境ではサンワサプライの USB-CVRS9 と KRS-423XF-07K で X68030 + 060turbo と Windows マシンを繋いで 38400bps でファイルを転送できました。
クロスケーブルを使って Windows 機と X680x0 でファイルをやりとりする方法 ■概要 Windows 機に RS-232C ポートがあって X680x0 側に Human68k の システムディスクがあるときは、両機をクロスケーブルで直結する ことでファイルをやりとりすることができます。 最初に X-BASIC 用の XMODEM レシーバを copy コマンドで受信し、 それを使って ZM.X を受信すれば ZMODEM が使えるようになります。 あとは lx.r や susie.x などを順次転送してゆくとよいでしょう。 無改造機の通信速度は高々 38400bps なので大きいファイルの転送は 時間がかかりますが、SCSI 機器でやりとりできるようになるまでの 繋ぎとして有効です。 ■準備 (1) 9 ピンメス - 25 ピンオスの RS-232C クロスケーブルを用意する。 量販店の通販で入手できます。ヌルモデムケーブルとも言います。 (2) 両機の電源を切り、クロスケーブルで直結して電源を入れる。 以下、(?W) は Windows 側、(?X) は X680x0 側の操作です。 (3W) 以下から sxmr.zip をダウンロードして sxmr.bas を取り出す。 http://retropc.net/x68000/data/exchange/sxmr.zip (4W) 以下から ZMX68K4.LZH をダウンロードして ZM.X を取り出す。 http://retropc.net/x68000/software/tools/zmodem/zm/ (5W) 以下から ttermp23.zip をダウンロードしてインストールする。 http://hp.vector.co.jp/authors/VA002416/teraterm.html (6W) Tera Term Pro の Setup → Sirial port で Baud rate: 4800 Data: 8 bit Parity: none Stop: 1 bit Flow control: hardware のように設定する。 (7X) 「speed 4800 b8 pn s1 rts」で Windows 側と同じ設定にする。 (8X) 「copy aux sxmr.bas」で sxmr.bas の受信を開始する。 (9W) Tera Term Pro の File → Send file で File name: sxmr.bas Option Binary: ON として sxmr.bas の送信を開始する。 (10X) 「basic sxmr.bas」で XMODEM レシーバを起動し Filename=? ZM.X と入力する。 (11W) Tera Term Pro の File → Transfer → XMODEM → Send で Filename: ZM.X Option Checksum: ON として ZM.X の送信を開始する。 (12X) キーを押して ZM.X の受信を開始する。 ■ Windows 機から X680x0 へファイルを転送するとき (1W) Tera Term Pro の Setup → Sirial port で Baud rate: 19200 Data: 8 bit Parity: none Stop: 1 bit Flow control: hardware のように設定する。 (2X) 「speed 19200 b8 pn s1 rts」で Windows 側と同じ設定にする。 (3X) 「zm -r」で受信を開始する。 (4W) Tera Term Pro の File → Transfer → ZMODEM → Send で Filename: ファイル名 としてファイルの送信を開始する。 ■ X680x0 から Windows 機へファイルを転送するとき (1W) Tera Term Pro の Setup → Sirial port で Baud rate: 19200 Data: 8 bit Parity: none Stop: 1 bit Flow control: hardware のように設定する。 (2X) 「speed 19200 b8 pn s1 rts」で Windows 側と同じ設定にする。 (3W) Tera Term Pro の File → Transfer → ZMODEM → Receive で 受信を開始する。 (4X) 「zm -s ファイル名」で送信を開始する。 ■転送速度を調節する データを取りこぼすときは転送速度を落とします。 余裕がありそうなときは転送速度を上げます。 RSDRV.SYS が組み込まれているとき speed コマンドで 19200bps まで設定できます。 RSDRV.SYS が組み込まれているとき sxmr.zip に入っている 38400bps.x を実行すると 38400bps になります。 38400bps で安定して転送できる環境は限られるかも知れません。
メモ
X-BASIC で末尾に EOF コード(0x1a)が付いていないファイルを読もうとするとエラーになります。EOF コードの欠落が原因で読めないときは ED.X で保存し直すと EOF コードが付いて読めるようになります。