WindowsXP+QEMU+FreeDOSでZorkを動かしてみる

[かずわいの部屋へ戻る]

ZorkをQEMU for Windowsを使ってWindowsXP上で動かしてみました。

Zorkって何?

Zorkというのは、今は亡き米Infocom社が販売していたテキストアドベンチャーゲームの名前です。Zork IからZork IIIまでシリーズ化されています。テキストアドベンチャーと言うだけあって、情景描写もコマンド入力も全部テキストです。当然英語です。

このZorkシリーズ、現在ではDOS用、Mac用がフリーでダウンロードできるようで、googleあたりで「zork download」などと検索すると結構な数のサイトがひっかかります。Win95用と称するものもあるようですが、見てみたところDOS用と中身は同じでした。このDOS用のZork、DOSやWindows95/98であれば普通に実行してプレーすることができるのですが、WindowsXPで起動用のBATファイルを実行するとNNANSI.COMの組み込みに失敗するためマトモに動作しません。また、実行ファイルを直接起動すると、ゲームは動くのですが画面の制御用のエスケープコードまで表示されてしまい、画面がかなり見づらくなります。

Zorkを遊ぶためにOSの再起動するのも何かちょっと悔しい感じがするので(^^;、ここは一つWindowsXP上でいろいろと環境を整えてZorkをプレーしてみよう、というわけです。

実は、実行環境(コマンドプロンプト)の言語設定が日本語になっているのがまずかったらしく、"us"コマンドで英語設定に切り替えてやれば普通に動作します(汗)。Win98SEのDOS窓では言語設定気にしなくてもよかったのにねー(^^;

というわけで、以下の文章はFreeDOS+Zorkを肴にQEMUを動かしてみようという記事として読んでいただければ幸いです(汗)。

材料

なんのことはない、WindowsXP上で動作する仮想マシン上でDOSを動かして、その上でZorkを起動すればよいわけです。というわけで以下のソフトウェアを用意します。

  • 仮想マシンエミュレータ:QEMU on Windows
  • DOS互換OS:FreeDOS
  • 仮想マシンのHDDイメージを読み書きできるツール:Disk Explorer
  • 忘れちゃいけない:Zorkシリーズ実行ファイル(適当に検索してダウンロードしましょう)。例えばhttp://www.infocom-if.org/からダウンロードできます。
  • 調理方法

    QEMU on Windowsをインストールする

    まずはQEMU on WindowsをPCにインストールします。といっても、展開したフォルダでそのまま動かせるツールですので、やることはそんなにありません。FreeDOS用のハードディスクイメージを作るぐらいです。QEMUを展開したフォルダでコマンドプロンプトを起動して、下記のような感じでイメージファイルを作成します。"FreeDOSHDD.img"がHDDイメージのファイル名、"10M"はHDDの容量です。

    qemu-img.exe create FreeDOSHDD.img 10M
    

    QEMU環境へFreeDOSをインストールする

    そうしたら、次はFreeDOSのインストール用イメージと上記のHDDイメージをマウントした状態でQEMUを起動するためのバッチファイルを作成します。私はFreeDOSのイメージをフロッピー版とCD-ROM版の両方でダウンロードしたため、勢いで両方ともマウントしました。その状態で、CD-ROMイメージからブートするバッチファイルを作りました。

    下記の内容のバッチファイルを作成し、たとえば"qemu-FreeDOS.bat"という名前でセーブする。
    ここから----------ここから----------
    REM Start qemu on windows.
    @ECHO OFF
    
    START qemu.exe -L . -m 128 -boot d -fda fdos1440.img -hda FreeDOSHDD.img -cdrom fdbootcd.iso -enable-audio -localtime
    
    CLS
    EXIT
    ここまで----------ここまで----------
    

    このバッチファイルを起動すると、FreeDOSのCD-ROMイメージからブートして、インストーラが起動します。画面の指示に従って、インストールを行えば、HDDへのインストールは完了です。上記のバッチファイルを、たとえば以下のように修正すれば、フロッピー/CD-ROMをマウントせずにハードディスク上のFreeDOSが起動します。

    ここから----------ここから----------
    REM Start qemu on windows.
    @ECHO OFF
    
    START qemu.exe -L . -m 128 -boot c -hda FreeDOSHDD.img -enable-audio -localtime
    
    CLS
    EXIT
    ここまで----------ここまで----------
    

    Zorkの実行ファイルをHDDイメージへ書き込む

    最後に、正常起動するようになったFreeDOSのハードディスクイメージに、Zorkをインストールします。そのためにはDiskExplorerが便利です。QEMUを一旦終了して、DiskExplorerを起動します。ここで上で作成したFreeDOSHDD.imgをオープン(ファイル形式はVMWare plain disk)してやると、イメージファイルの中身が表示されますので、WindowsXP上で展開したZorkの実行ファイルをフォルダ丸ごとDiskExplorerでオープンしているハードディスクイメージの中へコピーしてやります。コピーが完了したらDiskExplorerを終了してから、QEMUでFreeDOSを起動し、コピー済みのZorkの起動バッチファイルを実行すればOKです。


    [かずわいの部屋へ戻る]