Raspberry Pi4でPC98エミュが動くらしいので入れてみようと思います。
本記事ではバイナリのエミュをダウンロードしインストールするのではなく、ソースコードをダウンロードしコンパイルをおこないます。
はじめに
こういう部類のエミュレーターは、いろいろグレーな部分が多いと思いますので、自己責任で使用をお願いします。
DOSBox-X
使うエミュレータの名前は "DOSBox-X" というのをインストールします。
このエミュレーターは「PC/AT互換機」を再現するエミュレータらしいです。
この機能の中にNEC PC98モードがあり、PC-98もエミュレートできるというものです。
DOSBox-Xの情報ページ
実際にDOSBox-Xとは何ぞや?と言うのは以下が1次情報のページなのでココを見ればわかると思います。
https://dosbox-x.com/
他のPC-98エミュレータ
他には以下のようなPC98エミュレータが存在するみたいですが "DOSBox-X"はこれらに比べて後発のエミュレータらしいです。
- Anex86
- T98-Next
- Neko Project 21/W
なお、2022年の時点でPC98のエミュレーターは開発が終わっているのがほとんどみたいですが、DOSBox-Xはいまだ開発が続いているらしいです。
※Neko Project II/21の派生(?)の”Neko Project 21/W”などは開発が続いているみたいです
用意するもの、必須ではないもの
モノ | 備考 |
Raspberry Pi4 | 必須 |
MS-DOS | 必須ではない |
HDDのイメージ | 必須ではない |
BIOS | 必須ではない |
Raspberry Pi4
Raspberry Pi4は必須です。
MS-DOS
MS-DOSは必須ではありません。
DOSBox-Xに標準でDOSの機能はついています。
よって、MS-DOS、FreeDOS(98)などのインストールも不要です。
ただし、使ってみてわかりましたが、実際のMS-DOSがあった方がいろんなアプリが動作します。
HDDのイメージ
HDDのイメージファイルも必須ではありません。
ラズパイの適当なフォルダにDOSのアプリファイルを置いて、そのフォルダをmountするという方式になります。
こちらも必須では無いだけでHDDイメージのマウントもできます。
BIOS
必須ではありません。
しかし、DOSBox-XにもBIOSの設定項目はあるみたいです。
私はこの項目は無視しています。
ぶっちゃけBIOSがあると何が良いのかわかっていません。
インストールするラズパイの環境
Raspberry Pi OS の 64bit版にインストールします。
ラズパイ4インストール時のパッケージは下の赤文字のものです。
多分Liteとかでインストールした場合は別途必要なパッケージを手動でインストールすることになると思います。
インストール手順
ソースコードのダウンロード
コンソールより以下コマンドでソースコードをダウンロードします。
ディレクトリの移動
dosbox-xというフォルダが作られているので移動します。
cd dosbox-x/
コンパイルに必要なモジュールをダウンロード
以下コマンドを実行します。
sudo apt install autogen automake libavformat-* libswscale-* libavcodec-*
さらに以下コマンドを実行します。
sudo apt install libxext-dev
そして追加で以下のコマンドを実行します。
sudo apt install libsdl2-dev
コンパイル
コンパイル方法ですが、もっと簡単な方法があると思われます。
ビルド
以下コマンドを実行を実行します。
./build
10分くらいかかります。
実行が長いのでラズパイ自体がすごい熱を発します。
サーキュレーターの風を直接ラズパイにあてるなどの対策が必須です。
makeファイルの作成
以下コマンド実行します。
./configure -enable-sdl2
-enable-sdl2は必須です。
このオプションがない場合、ラズパイでは音が鳴りませんでした。
アプリのコンパイル
以下コマンド実行します。
make
20分ほどかかります。
これも実行が長いのでラズパイ自体がすごい熱を発します。
サーキュレーターの風を直接ラズパイにあてるなどの対策が必須です。
インストール
以下コマンドを実行します。
sudo make install
以上でインストールは終了です。
DOSBox-Xの起動及び設定
起動
以下コマンド実行します。
dosbox-x
設定ファイルの出力
DOSBox-xが起動した後、以下コマンドを実行して設定ファイルを書き出します。
CONFIG.COM -all -wcd
「/home/ユーザー名/.config/dosbox-x」に「dosbox-0.83.25.conf」という設定ファイルが書き出されます。
設定ファイルを開く
1度DOSBox-xを「exit」で終了さます。
その後、先ほど書き出した設定ファイルが「/home/ユーザー名/.config/dosbox-x」に「dosbox-0.83.25.conf」というファイルががあるので、これをエディタで開きます。
設定ファイルの編集
machine = svga_s3をmachine = pc98に書き換え保存します。
machine = svga_s3 → machine = pc98
設定ファイルの名前を変更する
「dosbox-x.conf」というファイル名がこのPC98エミュの設定ファイル名なので、「dosbox-0.83.25.conf」から「dosbox-x.conf」へ名前を変更します。
Dosbox-xをPC98モード(?)で起動する
以下コマンドでDosbox-xを起動します。
dosbox-x
画面枠の下から4行目に以下の記載があればPC98モードで起動しています。
DOSBox-X is now running in Japanses NEC PC-98 emulation mode.
MS-DOSアプリの実行
MS-DOSファイルをラズパイにコピー
今回は以下フォルダにdosのアプリファイルを置きます。
/home/samba/dos
MS-DOSファイルの場所をmountする
以下のコマンドを実行します。
mount c /home/samba/dos
ちなみに、上記コマンドは以下の意味になります。
これは以下の意味になります。
- ラズパイの/home/samba/dosというフォルダにMS-DOSのプログラムを置いてある
- このフォルダをPC-98エミュレータのDOSのCドライブとしてマウントする
ドライブの移動
以下コマンドを実行します。
c:
これでCドライブの移動完了です。
エミュレータ上からファイルの確認
下の画像"dirコマンド"の実行結果です。
ラズパイの/home/samba/dosにコピーしたファイルがエミュレーター上から確認できます。
MS-DOSアプリを動かす
無事起動しました。
音も出ます。
終わり
以上、ラズパイ4にPC98エミュをインストール (DOSBox-X編)でした。
ちょっと動かしてみましたが後期のMS-DOSアプリは動作が重いです。
Windows版DOSBox-Xではきちんと動くので、ラズパイのCPUのパワー不足のような気がします。
設定を詰めればもう少し軽くできるかもしれませんが。。。
下のリンクは色々さわってみて分かった操作方法のメモ。
pokug.net
お手軽に試したいのならWindows、バイナリ版のDOSBox-Xをインストールするのが手っ取り早いです。
任天堂switchなど、Linuxを無断でインストールできる端末にエミュをインストールする際に、ソースコードをコンパイルする方法の方がバイナリをインストールするよりエミュが動く確率が上がるような気がするので、この方法が使えるのではないかと思います。
(きっと同じLinuxならコンパイル方法はあまり変わらないと信じています)
実際にswitchにインストールしてないので動くかどうかは確認していませんが。。。
おまけ
HDDのイメージを作成、その中にMS-DOS6.2をインストールし手元にあるものを起動させてみました。
※起動しただけでゲームはプレイしてません
FD
同級生
同級生2