M5Stackのような低スペック端末の場合、PC-8801エミュレータは「X88000」よりも「QUASI88」の方が動作が軽いかもしれない、と考えて「QUASI88」も移植してみました。
QUASI88 ~ PC-8801 エミュレータ for UNIX/X11+SDL ~
https://www.eonet.ne.jp/~showtime/quasi88/
結果、M5Stackと、とても相性が良く、かなり軽く動作するPC-8801エミュレータができあがりました!ソフトの内容によっては、実機に迫るのでは?と思えるぐらいの速度まで出せそうです。
英数字キー入力実装しました!
この速度なら、デゼニランドが普通に遊べますね! pic.twitter.com/P8Dcgvg1Mi— Nochi (@shikarunochi) 2019年3月2日
ソースはこちらです。PSRAMを用いますので、M5Stack FIRE専用です。
操作のためには、基本的には「CardKB」必須です。
M5Stack Official CardKB Mini Keyboard
が、それだけでは厳しいと思いますので、シリアルコンソール経由でも、英数字とカーソルキー&Enter程度は入力可能になっています。
CardKBを使うと「Fn」キー併用で以下の入力が可能です。
Fn+1~10:ファンクションキー1~10
Fn+Up:HOME
Fn+Down:CLR
Fn+Right:INST
Fn+ESC:STOP
Fn+BS :カナ(トグル動作)
サウンド機能は削除しています。(FM音源が無いのは残念ですが、ソフトウェアによるサウンド処理はメチャメチャ重いのです…。)
もともとのQUASI88の設定メニューは、マウス操作前提だったので、ディスク選択とBASICモード選択機能をM5Stack用で新しく作りました。
それと、一つ重要なことが!いまのところ、ディスクへの書き込みはできないです!ゲームのセーブはできません!
書き込み、試しに実装してみたのですが、うまく動かなかったのでいったんナシにしてます。
(2019/03/06)ディスク書き込みできるようになりました!
ファイルが更新されますので、元ファイルのバックアップをしっかり取っておいてください!
起動に必要なROMイメージファイルは、SDカードの /PC88ROM/ フォルダに入れてください。
ディスクイメージは、/PC88ROM/DISK/ フォルダに入れてください。
必要なファイルは QUASI88と同じです。
QUASI88 で必要なROMイメージファイル
https://www.eonet.ne.jp/~showtime/quasi88/memo/rom.html
起動時には、ドライブは空の状態で、N88-BASIC V2モードになります。
「Bボタン」を押すと、ディスクファイル一覧が表示されます。選択したものは、ドライブ1のディスクに設定されます。
d88ファイルの中には、複数のディスクイメージをまとめて格納しているファイルもあります。その場合には、どのディスクイメージをドライブ1に読み込むか選択する画面になります。
ボタンA / B / C で、イメージ 1 / 2 / 3 どれを読み込むか選択してください。選択したものがドライブ1に読み込まれ、選択されなかったものから1つがドライブ2に読み込まれます。(1→2→3→1 順で、選択したものの次のディスクイメージが設定されます。)
中には、イメージファイルが4つ以上入っているファイルもあるのですが、そんな大作をM5Stackでプレイすることは無いと思いますので、対応してません。
こういうやつですね。4 と 5 のファイルは読み込めないです。
「Cボタン」を押すと、起動モードを選択してリセットする画面になります。また、ディスクドライブの内容も確認できます。
基本的な遊び方は、「Bボタン」でディスクを選択 → 「Cボタン」でモード選択&リセットしてソフト起動 !です。
ディスクの選択(ドライブ1のみ)と、起動BASICモード指定してのリセットができるようになりました。
「文字が小さすぎて読めない!」だったので、BASICは40文字モードで起動するようにしました。
ゲーム内の文字サイズは変わらないのでデゼニランドの文字は前のままです。 pic.twitter.com/qVvkt4gs5W— Nochi (@shikarunochi) 2019年3月2日
(この動画は設定画面が古いバージョンですね)
最初は動作するだけで満足、のはずだったのですが、結構遊べる状態にまでなりました…!
M5Stack FIRE、パワフルすぎますね。X88000 & QUASI88 エミュレータ作者の方にも感謝です!
80文字モードで動作するソフトだと「文字が小さすぎて読めない!」状態ですね。
このエミュレータが実行可能なのは、2019/02/25 時点では M5Stack FIRE のみです!
Amazonリンク貼りつつ、なんですけど、海外からの通販に抵抗が無い場合は、本家M5Stack の AliExpress で購入してみるのもいいかと思います。販売されている商品の種類も多くて、価格も少し安めです。ただし、到着まで半月~1ヶ月ぐらいかかります。