MSXエミュレーター


2017.3.30更新

いろんな種類、いろんなOS用のものがあります。
多すぎて全部試す気はありません。
MSXの実機がなくても、WindowsやGNU/Linuxやウェブブラウザ上でMSXのソフトを動かせます。
ROMカセットのデータやフロッピーディスク上のファイルを吸い出せているなら実機は要らないと思います。
あるいはこれから新規開発をする場合は実機は要りません。
エミュレーターによるかも知れませんが速度も実機より速く動かすこともできます。
どのMSXエミュレーターもホストのWindows側とエミュレーター側のファイルのやりとりが難しいです。
そのためMSXエミュレーターをゲーム機としてではなくパソコンとして使うのは使い勝手が悪いです。
各エミュレーターによってファイルをやりとりする方法はできることとできないことがあって一長一短があります。
blueMSXとWebMSXではWindowsから仮想フロッピーディスク(フロッピーディスクイメージ)にファイルを追加する方法をまだ発見できていません。
Disk Manager(リンク変えました)というソフトでエミュレーターのディスクイメージの中のファイルをWindows側にコピーすることができました。
と思ったんですが、読めるイメージファイルと読めないイメージファイルがあったりしてよく症状が分からなくなりました。
そして、Disk Manager(diskmgr.exe)でディスクイメージにファイルを追加すると、MSX側から見るとディスクを認識できなくなりり再フォーマットが必要になることがありました。
MSX-DOSでもMSX-DOS2でもDisk Manager(diskmgr.exe)で書き込むとMSX側から見るとディスクを読めない状態になりました。
MSX-DOS2のROMがある状態でMSX-DOSを起動するとディスクの書き込み時にエラーが出て書けなかったりよく分からない挙動が多く使うのはちょっと難しいです。
他には仮想フロッピーディスクドライバ(ImDisk Virtual Disk Driverなど)があります。
MSX MAGAZINE永久保存版3付録のMSXエミュレーター(MSXPLAYer)はこれが使えます。
これを使ってMSXPLAYerの仮想ディスクにWindows側からファイルを追加コピーできます。
その場合、すでにMSX-DOS2フォマートされたイメージでないとうまくいきませんでした。
MSXPLAYer側でImDiskの仮想フロッピードライブをフォーマットしてもフォーマットされませんでした。
ただし、ひとつのフロッピーディスクドライブで二つのフロッピーディスクドライブをシュミレーションする2ドライブシュミレーションを理解していないとできないかも知れません。
(ひとつしかドライブがないことになっているのでディスク交換を促すメッセージでディスクを交換しなければならない。)
MSX MAGAZINE永久保存版1付録のMSXエミュレーター(MSXPLAYer)はWindows XPでないとフロッピーディスク(仮想を含む)を読めません。
(Windows7とそれ以降ではだめです。)
他のエミュレーターでは読み込ませる前にWindowsが認識している仮想フロッピーディスクディスクをアンマウント(取り出し)しないと書き込めないと思います。
使い込んでいないのでで詳しいことは分かりません。
C言語コンパイラやZ80アセンブラのようなグラフィックやBASICやBIOSなどのMSX固有の機能を使わないプログラムでMSX-C以外はWindowsのDOS窓で動くCP/Mエミュレーター、例えばCP/M program EXEcutor for Win32を使ったほうが便利です。
MSX-CはCP/Mエミュレーターでは動作しません。
CP/Mエミュレーターで動作するのはBDS C、HI-TECH C、CP/M版のM80などです。


blueMSX
blueMSX公式サイト
blueMSXでうる星やつらのゲーム
Windows用のエミュレーターです。
MSXturboRにも対応しています。
Windowsとのファイルのやり取りが難しいですが一応できました。
ディスクイメージの読み込みや、Windowsのフォルダ内ファイルをMSX側のドライブ全体として読み込むことはblueMSXの機能でできます。
Windowsのフォルダを読み込んだ場合はエミュレーター側でファイルを書き換えてもWindowsのフォルダ内のファイルには結果は反映されません。
つまり、blueMSXを終了した時にMSX側で書き換えた内容が消えてしまいます。
そしてフォルダから読み込んだ場合の実行中のディスクイメージのファイル保存機能はありません。(これが非常に残念)
Windowsのフォルダを読み込む機能を使うとMSX側で変更または作成したファイルをWindows側にコピーすることができないということです。
仮想ディスクイメージファイルを読み込ませた場合はMSX側で書き込んだ結果はディスクイメージに反映されて保存されます。
blueMSXの機能ではMSX側の仮想ディスクにWindows側のファイルを追加することはできず、ディスクを交換するような感じで読み込ませることだけできます。
WindowsソフトのDisk Manager(diskmgr.exe)でディスクイメージから読み込みはできますが書き込むとMSX側から見ると仮想ディスクが高い確率で(データ的に)壊れて読めなくなります。
右下の丸いダイヤルで速度を落としたり上げたりすることができます。
速度は約10倍(0.99倍)まで指定できます。
10倍でも今のパソコンよりずっと遅いと思います。
速度を上げるとまともにキーボードの入力ができませんし音楽の再生も速くなったりアクションゲームが難しくなるので普段は激遅の1倍速で使うことになります。
MSXturboRの設定ではR800モードにすればかなり高速になり、BASICやMSX-DOS(1または2)のコマンドプロンプトでの入力も普通にできるのでMSXturboRの設定で使うのが便利です。
R800とZ80の切り替えをするプログラム(R800.COMとZ80.COMなど)を入手すると便利です。
まだ試していませんがImDisk Virtual Disk DriverでWindows間とのファイルのやりとりができるかも知れません。
ただしWindows側の仮想フロッピーディスクをアンマウントしてからblueMSXをディスクイメージを指定して読み来ないとblueMSX側から書き込みができないと思います。
MSXPLAYerとImDisk Virtual Disk DriverのほうがWindowsとのファイルのやりとりが簡単なような気がします。


WebMSX
WebMSX公式サイト
webMSXでうる星やつらのゲーム
ウェブブラウザ上で動くオンラインのMSXエミュレーター。
多分、特定のOSに依存しないと思います。
MSX2+に対応しています。
MSXturboRには対応していませんがCPU_TURBO_MODEを指定すると高速動作します。
その速度がMSXturboR相当かどうかは知りませんが確かに速いです。
単純に速く動作させたい目的でMSXturboRを指定したい場合はCPU_TURBO_MODEの指定で間に合うと思います。
外部URLの外部のファイルをWebMSXのURLの?に続く引数にして自分で用意したファイルを実行させることができます。
例えば、http://webmsx.org/?DISKA_FILES_URL=http://www.nabeta.tk/msx/bdscothellomsx.zip&CPU_TURBO_MODE=1 のように外部ファイルを指定します。
(これはBDS Cの製品版にサンプルとして付いていたテキストベースのオセロのプログラムです。)
「&CPU_TURBO_MODE=1」の部分は高速に動かす指定で標準のZ80のスピードがいい場合は取り除きます。
これにより現在でもMSXのプログラムをウェブブラウザで起動の手間をかけず動かすことができます。
フロッピーディスクイメージの作成、フロッピーディスクイメージのアップロード、ダウンロードができます。
フロッピーディスクイメージファイルファイルはblueMSXと同じものが使えます。
ただ、blueMSXと同じでそのMSX-DOSフォーマットのディスクイメージをマウントして書き込みができるソフトを今のところ見つけられていません。
Disk Manager(diskmgr.exe)(リンク変えました)では読み込みはできましたが。
blueMSXと同じでファイルをディスクイメージに追加する機能がWebMSXにはないようです。
速度を上げたり落としたりする機能が見つからないのが残念です。
webmsx.orgを利用しなくても、webmsxをダウンロードして、wmsx.htmlを設置すればどこのサイトでも、自分のパソコンのローカルでも実行できてサーバーには依存いないというのが後で分かりました。


MSX MAGAZINE永久保存版3付録のMSXエミュレーター(MSXPLAYer)
MSXturboRに対応しています。
速度調節は8段階でできます。(1/4、1/2、1、2、3、4、5、∞)
2005年発売のMSX MAGAZINE永久保存版3の付録に含まれています。
MSX MAGAZINE永久保存版2と1にも含まれているかも知れません。
これはエミュレーター単体ではなくWindowsソフトとしてBASICとかC言語開発ツールがMSXエミュレーターごと動くような感じです。
本物のフロッピーディスクドライブに対応しているのが大きな利点です。
フロッピーディスクをマウントできるので仮想フロッピーディスクドライバ(ImDisk Virtual Disk Driverなど)を使ってWindows側のファイルとやりとりすることが可能です。
(フロッピーディスクのサイズは新規の場合は737280バイトを指定)
逆に言えば、Windowsが認識しているフロッピーディスクドライブしかアクセスできないです。
どこにどんな形でフロッピーディスクのイメージファイルがあるのか全く分かりません。
使い方が難しく、コントロールパネルから毎回起動して毎回ファイルを指定しなければならないし、既存のディスクイメージを使う場合も新規のディスクイメージを使う場合も同じメニューから入るなど操作性に少し難があります。
Windowsが認識しているディスクを読み書きできる形でマウントできるエミュレーターとしてMSXPLAYerがあります。
MSX MAGAZINE永久保存版3にも収録されているVDman.exeというファイル名の仮想フロッピーディスクマネージャというものもありますが個人的にはトラブルが起こりました。
仮想フロッピーディスクマネージャ(VDman.exe)を使ってブランクディスクを作ったら元にあったディスクの内容が消えてしまい困ってしまいました。
元に戻す方法も、いったい何が起こったのかも、VDman.exeの表示を見ても分かりませんでした。
一度MSXPLAYerを削除して再インストールしても変りません。
MSXPLAYerを何回再インストールしても元に戻らないというドツボにはまりました。
c:\Users\ユーザー名\AddData以下のどこかのフォルダにVDmanが使うようにしたフロッピーディスクのイメージファイルがあったのでそれを削除したらなおりました。
ImDisk Virtual Disk Driverに変えました。

MSX MAGAZINE永久保存版1付録のMSXエミュレーター(MSXPLAYer)
MSX2に対応かな?
MSXturboRには対応していません。
Windows XPでないとフロッピーディスク(仮想を含む)にアクセスできません。
有用なソフトとしてMSX-DOSスーパーハンドブックという絶版の書籍の紙面にダンプリストとして載っていたテキストエディタのMED.COMやアブソリュートアセンブラのASM.COMがエミュレーターの仮想フロッピーディスクイメージの中に入っています。
ASM.COMは現在ではWindowsやUNIXで動くZ80マクロアセンブラのzmacがあるのでほぼ出番はないとは思います。
MEDはエミュレーターの中でのテキストファイルの編集に使えますが、代替のものは他にも複数あります。


openMSX
openMSX公式サイト
openMSX、MSXエミュレーター
Windows/Mac OS X 64bit/Android/OpenDingux(GNU/Linux)で動くMSXエミュレーター。
Windows版をインストールして見ましたが、普通に出るメニューがなく使い方が分かりにくいです。
どうやって使えと言うのでしょう。
使い方を調べるのが面倒なので(個人的には)起動してみただけで使っていません。


MSX (パソコン)


あーすブラウザ
オンライン鍋田辞書
鍋田辞書トップ