少ないリソースを酷使する

低レイヤーとレトロPC(PC98,MSX)が好きな情報学生

Linux上のPC-98エミュでFreeDOS環境を整える(2)

前回の記事でPC-98x1エミュレータFreeDOSを起動してみました.
さて,MS-DOS向けのソフト何か試しに起動してみたいですね.
私は試しに機動警察パトレイバーに出てくるレイバー用OS「HOS」の起動画面を再現するフリーソフトを起動してみたいと思います.
以下からダウンロードできます.
https://www.vector.co.jp/soft/dos/amuse/se003159.html

仮想イメージエディタなどで先ほどの仮想HDイメージ.hdiにファイルを注入することでエミュレータにファイルを渡すことができるんですが,毎回それをやるのはちょっと面倒...
エミュ内からホスト側のフォルダにアクセスできるようにしたいですね.

それ,できます

ということでやっていきます.

ホスト側のフォルダをエミュにマウントする

共有するフォルダを作る

エミュレータと共有したいフォルダを作ります.

$ mkdir PC-98_Folder

共有フォルダのパスと権限を設定

エミュレータで設定する方法と,設定ファイルを直接書き換える方法があります.
エミュレータで設定する方が簡単ですね.

エミュレータで設定する

エミュレータを起動して,メニューから[Device]→[Hostdrv option...]を選択します.
f:id:T-takeda:20201022212100p:plain

出てきたウィンドウで,共有フォルダのパスと権限を設定します.
f:id:T-takeda:20201022212117p:plain

設定ファイルを直接書き換えて設定する

~/.config フォルダの中にnp2kaiのフォルダがあります.
その中のxnp2kaircがエミュの設定ファイルです.

$ ~/.config/xnp2kai
$ nvim xnp2kairc

適当なエディタで開いて,以下のように設定しましょう.

hdrvroot = ~/PC-98_Folder
hdrv_acc = 3

hdrvrootが共有フォルダのパス.
hdrv_accがフォルダへのアクセス権限設定です.
bit0が読み込み権,bit1が書き込み権の設定フラグらしいので,3を指定すると「読み込み書き込み可」になります.

設定ファイルのその他の設定項目が気になる人は,以下に設定項目がまとまってます.
https://www.nonakap.org/np2/html/help/ja/othercfg.html

共有フォルダのマウント

前々回の記事でnp2kaiをソースからbuildした人は, そのソースのフォルダの中にnp2toolというのがあると思います.
(無い人||ソースからbuildしてない人)は以下のページにダウンロードリンクがあります.
https://sites.google.com/site/np21win/download

まずはnp2tool.zipを解凍します.

$ cd ~/NP2kai/np2tool
$ unzip np2tool.zip

で,エミュを起動して画像のような手順でFDDnp2tool.d88をセットします.
f:id:T-takeda:20201022212040p:plain f:id:T-takeda:20201022212204p:plain

セットしたら,DOS上で以下のような手順を踏みます.
1. Bドライブ(np2tool.d88をセットしたドライブ)に移動.
2. [HOSTDRV D]コマンドを実行.オプションの英字で設定したドライブにフォルダがマウントされます.
3. Dドライブ(共有フォルダをマウントしたドライブ)に移動.
4. ヤッタァ!
実際のコマンドの流れ以下のようになりますね.

A:¥> B:
B:¥> HOSTDRV D
B:¥> D:
D:¥> DIR

f:id:T-takeda:20201022212254p:plain

ソフトを起動する

共有フォルダに起動したいソフトをぶち込んで,.EXEか.COMを起動します.

D:¥> cd HOSOP150
D:¥> HOSOP

やったー!
f:id:T-takeda:20201022212232p:plain

まとめ

これで簡単にいろんなソフトを楽しめますね.
次回?はPC-98向けのソフトを作成するC言語開発環境を整えます.