※あくまで「参考」なだけで、別のメーカーのものでも全然OKです
その他必要なソフトウェア
転送するイメージを作成する際の各種ソフトウェアの組み合わせ手順
1:FreeDOS(98)のディスクイメージのダウンロード(fd98_2hd144_20220123.zip)
2:↑の中から「fd98_2hd.img」だけを展開する
※なお、98エミュレータなどで起動できるフロッピーディスクイメージがある場合はそれを使ってもよい
3:PPMMCDRVのドライバを(まだダウンロードしていない場合は)ダウンロードする
4:PPMMCDRVのアーカイブをフォルダ丸ごと展開する
5:DiskExplorerをダウンロードする
6:DiskExplorerを実行し、起動時に「ディスクを開く」のダイアログが開くので、上記fd98_2hd.imgを指定する
ファイル形式はデフォルトの「plain image」でOK
7:DiskExploerにPPMMCDRVのフォルダをドラッグ&ドロップしてイメージに書き込む
8:DiskExploerを終了させる
9:Virtual Floppy Image Converter(VFIC)をダウンロードと展開
10:VFICを起動し出力形式を「D88形式」に指定した上で、PPMMCDRVのドライバを書き込んだFreeDOS(98)の
ディスクイメージ(fd98_2hd.img)をドラッグ&ドロップしD88形式に変換する
※何故最初にD88形式に変換しないかというと、変換してしまうとDiskExploerで開く手間が増えるため
これでPPMMCDRVのドライバを含む、PC-98でブート可能なD88ディスクイメージができました(fd98_2hd.d88)
PC-98実機への転送作業(事前準備)
1:PC-98のディップスイッチ設定(ソフトウェアディップスイッチ)の「メモリスイッチ初期化の設定」で
「メモリスイッチを保持する」に切り替える(この設定は機種により異なるので各自調べてください)
→ 「PC-98 ディップスイッチ」で検索すると、いくつかの情報サイトが引っ掛かりますので参考にしてください
2:N88-DISK BASIC(86)システムディスク、または実機で実行できるMS-DOSをお持ちの場合はRS-232Cの
ボーレート設定を行う(N88-DISK BASIC(86)→switch.n88・MS-DOS→SWITCHコマンド)
 |
 |
N88 DISK BASIC版ボーレート設定(switch.n88) |
MS-DOS版ボーレート設定(SWITCH.EXE) |
3:ボーレートを1200bps→9600bpsへ切り替えしてリセットする(すでに9600bpsの場合は必要なし)
 |
 |
N88 DISK BASIC版ボーレート設定(switch.n88) |
MS-DOS版ボーレート設定(SWITCH.EXE) |
設定手段が手元にない場合は上記項目は無視してください(ただし速度は1200bpsになる)
※エプソン98互換機は対応機種を持っていないので事情はよく分かりません
4:TeraTerm(もしくは使い慣れたターミナルソフト)をダウンロードする
5:ここでようやくRS-232Cケーブル(クロス)の出番です。25ピン側をPC-98に、USB-RS232C変換側の
9ピンとクロスケーブル側の9ピンを接続します。USBケーブルをWindows機に接続します。恐らくドライバは
自動で組み込まれると思いますが「デバイスマネージャ」を開いて、接続したRS-232C変換のCOMポート番号を
事前に確認しておいてください(あとで必要になります)
 |
 |
USB-RS232C変換とクロス変換ケーブル |
今回は往年の名機PC-9801VX41を使います |
6:まずはシリアルポートの動作確認です。いきなり「SFD98win」に行ってもいいのですが、トラブルが発生したとき
そのトラブルがハードなのかソフトなのか切り分けがつかないと困るので、先に枯れた技術を使ってシリアル接続の
動作確認をします
7:まずPC-98を起動しROM-BASICを起動します。ROM-BASICはフロッピードライブにフロッピーディスクが入っていたり
ハードディスクが繋がっていると、そちらを先に読みに行ってしまうので、フロッピーディスクを抜く、SCSI-HDDの場合
CバスSCSIボードを抜く、SASI/IDE-HDDの場合は1:の要領で(ソフトウェア)ディップスイッチの「固定ディスクを
切り離す」で無効にします。またFDD/HDDを切り離した状態で電源を入れると「システムディスクを入れてください」と
表示して止まる機種は「ROM BASICを使用する」に切り替えてください。HDD搭載でも「起動メニュー」が出せる場合は
「メニュー終了」を選択します。ROM-BASICがどうにも起動しない機種(末期機種に多い)は諦めてください
その頃の機種になるとフロッピードライブもすべて3.5インチですからUSBフロッピードライブで何とかなると思います
ROM-BASIC上から簡単なシリアル通信プログラムを入力します
PC-9801でシリアル通信で紹介されているプログラムを少しだけアレンジします
10 OPEN "COM1:N81NN" AS #1
20 A$=INPUT$(1,#1)
30 PRINT A$; ←ここがアレンジ
40 GOTO 20
|
入力が終わったら"RUN"で実行します
続いて、Windows側のターミナルソフト(今回はTeraTerm)を起動します。「TeraTerm: 新しい接続」のシリアル(E)
ポート(R)にチェックを付け「5:」で確認したポート番号に設定します(今回はCOM5)
TeraTerm側で入力された文字がPC-98側で反映されれば正常に通信ができています
文字が反映されない場合は、PC-98側とTeraTerm側の通信速度が一致していません。「2: 3:」でボーレートの
設定を行っていない、またはメモリスイッチ保持の設定をしていない場合はおそらく1200bpsになっています
TeraTermの「設定→シリアルポート」を開き「スピード」を1200bpsに切り替え「現在の接続を再設定」で
接続しなおし再び文字入力をしてみてください(反映されたら1200bpsで繋がっているということです)
1200bpsではとても遅いので設定できるなら9600bpsにした方が後々のイライラも軽減されると思います
PC-98実機への転送作業(SFD98Win)
さて、いよいよ本番で最終作業です。
SFD98winのダウンロードと展開をします
8:「事前準備」でPC-98のROM-BASICが立ち上がっている場合は、一度リセットボタンを押して再起動し
再びROM-BASICを立ち上げた状態にします
9:「SFD98Win」を起動します。イメージファイル(上記で作ったfd98_2hd.d88)、「5:」で得たシリアルポート番号
「7:」で得た転送速度を組み合わせて「スタート」ボタンを押します

あとは各種指示ダイアログが開くので、それに従ってください
・本体にバーチャルFD-BIOSを起動するためのBASICプログラムを転送しますか?→はい
ここでPC-98実機のROM-BASICに以下のように転送コマンドを入力します
LOAD "COM:N81NN"(リターンキーを押す)
リターンキーを押して実行したら、Windows側の指示ダイアログもOKを押してください
・プログラムを転送します。OKを押してしばらくお待ちください。→OKを押す
シリアルの転送速度にもよりますが1分くらいかかります。転送が終了すると
・30秒ほど待ってからPC-98のSTOPキーを押してください。 → 30秒ほど待ちPC-98側でSTOPキーを押した後OKを押す
10分近く待っても「30秒ほど待って~」のダイアログが開かない場合はシリアル転送のどこかがおかしいです
・PC-98側のプログラムをRUNで実行してください。実行したらOKを押してPC-98の画面の指示に従ってください。
という指示ダイアログが出ます。先に
ROM-BASIC側で"RUN"を入力してからWindows側ダイアログのOKボタンを押すこと

RUNを入力すると画面上部にこのような赤い模様が現れますが、これはグラフィックVRAM上にSFD98winの
仮想フロッピーBIOSが展開されているためで、異常ではありません(GVRAMを使うソフトを使うとBIOSが壊れます)
あとは、SFD98win側でマウントしたFreeDOS(98)のディスクイメージがシリアル経由で実行されます
FreeDOS(98)だとシリアル転送速度が遅くても比較的早く起動情報が表示されますが、MS-DOS6.2とかだと
「これ、本当に動いてるの!?」ってくらい最初の起動情報が表示されるまで待たされるので、根気よくお待ちください
一応、SFD98winのタイトルバー右端でステータス情報が動いていますので、これで「動いてるな」と確認できます
SFD98WinとFreeDOS(98)の固有情報
SFD98WinでFreeDOS(98)を起動中
Bad or missing Command Interpreter: command.com /P /E:256
Enter the full shell command line:
と表示され、起動が止まります。これはMS-DOSとFreeDOS(98)のドライブ管理の違いによる
「起動ドライブにCOMMAND.COMが見つからないぞ?」的なエラーです
このエラーが出た場合は
A:\COMMAND.COM
B:\COMMAND.COM
C:\COMMAND.COM
D:\COMMAND.COM
・・・と、ドライブ番号総当たりでCOMMAND.COMのありかを指定してあげれば、どれかが通ります
で、上記エラーを抜けて先に進んだと思ったら、今度は
FreeCom ver 0.85a_DBCS - WATCOMC - XMS_Seap (PC98) (以下略)
エラー ドライブの準備ができていません 読み込み中(以下略)
・・・で、また止まります。今度は中止(A)を選択し「現在の作業ドライブが有効でない状態です」と表示されたら
上のCOMMAND.COM総当たりで通ったドライブレター(例:C:)を入力し、リターンキーを押してください
2つのトラップを抜けたら、ようやく普通のコマンド入力ができる状態になったはずです。これで実機側のフロッピー
ディスクや多分ハードディスクもアクセスできる状態になります。DIRコマンドを入力し、PPMMCDRVの
ディレクトリがあることを確認しましょう
FreeDOS(98)でのPPMMCDRV起動ディスク作成
MS-DOSとFreeDOS(98)とではコマンド周りが少し異なるため、その辺を解説していきます
MS-DOSを使う場合は読み流してください(ドライバのコピーとCONFIG.SYSの作成あたりまで)
まず、シリアル接続下の作業はすべてがモタつくので最小限の作業で進めていきます
フローチャート冒頭の「消えてもいいフロッピーディスク」を用意して、フロッピーディスクドライブに挿入します
ドライブレターは多分Aになるはずですが、準備ができていないとエラーを返す場合はB.C.Dとドライブを変えてみてください
すでにDOSが起動できるフロッピーディスクの場合は、PPMMCDRVドライバのコピーとCONFIG.SYSの設定だけで済みます
フロッピーディスクフォーマットコマンド「FDFORMAT.EXE」
まぁ、コマンドオプションはMS-DOSと一緒ですが一応
FDFORMAT.EXE A: /S /M
(Aドライブのフロッピーディスクをシステム転送込みで1MBフォーマットする場合)
もし、メモリ不足などで/S(システム転送オプション)がエラーになる場合は、/Sオプションを抜いてフォーマットした後
SYSコマンドで別途システムを転送してください(その辺はMS-DOSと一緒)
ここで「ちゃんとフロッピーディスクから起動できるかな?」と思ってリセットボタンを押しては
いけません。また面倒くさい作業をイチからやり直すハメになります
PPMMCDRVのディレクトリに移動し「PPMMCDRV.SYSだけ」コピーします(あとのファイルはPPMMCDRVを認識後に転送)
フロッピードライブに移動し
ECHO DEVICE=PPMMCDRV.SYS > CONFIG.SYS
とコマンドタイプすれば、PPMMCDRVのドライバだけが記述されたCONFIG.SYSがフロッピーディスクに書き込まれます
ここでSFD98winの「ストップ」ボタンを押してPC-98の電源を落としてください、リセットより電源断のほうがいいです
シリアルケーブルをPC-98、Windows機双方から抜いて、先ほどシステム転送とPPMMCDRVのドライバをコピーした
フロッピーディスクが起動できるか確認します。無事にシステムが起動され、ドライバが組み込まれれば成功です!
おめでとう!君は一番高い山を乗り越えた!
あとは冒頭の3.5インチ機にUSBフロッピードライブでドライバ転送した場合と同じスタートに立ったので、自信をもって
次の「PPMMCDRV ハードウェアとTFカード設定編」に進んでくれ!(まだゴールじゃないよ)