PokuG stdio.h

stdio.hはおまじない

MENU

ラズパイ4にPC98エミュをインストール (DOSBox-X編)


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とかでインストールした場合は別途必要なパッケージを手動でインストールすることになると思います。

インストール手順

ソースコードのダウンロード

コンソールより以下コマンドでソースコードをダウンロードします。

git clone https://github.com/joncampbell123/dosbox-x.git

ディレクトリの移動

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


この世の果てで恋を唄う少女YU-NO