通勤電車で地下探検Plus

携帯端末(PDA)でダンマスをやっちゃおうってなBLOGを目指してたけど最近は日常の駄文ばかりなのでタイトルちょっと変更

エミュレーション紀行1(fMSX編)

2005-02-28 09:52:28 | Zaurus
私がザウルスを買った最大の理由は、このブログのタイトルにもなっています通勤電車の中で気軽に地下探検(ダンジョンマスター)がしたかったのは遠い昔に言った通りです。
んで具体的にはこちらZAURUS探偵社様のPC-98のエミュを使ってゲームをする訳なのですが、私の中でのザウルスの基本はあくまでもゲームなのです。
もちろんPIMでスケジュール管理も(少しは)しますし文庫ビュワーやぴろ様のBookReaderで読書もします。
EBtでメモだってしますしOutlinerで日記も書きます。
でも所帯を持ってしまった元ゲーム野郎に、通勤時間というの唯一のアミューズメントタイムを提供してくれるのは、もはやこのザウルス君だけなのです。
PIMやネットを中心に使用を考えていたならザウルス以外のPDAも購入候補に挙がっていたでしょう。
使い安さ、携帯性、バッテリの持ち時間etc..
でも私の場合、PDA購入時に一番入念な調査をしたのがいかにエミュレーションに適しているか、なおかつそれが通勤時間に使えるかでした。
その結果ザウルス君に白羽の矢がたち、なけなしのへそくりで一昨年の12月に購入しました(カミサンには仕事で使うから会社で支給されたとごまかした)

さて前置きが長くなりましたが、今回はそんな元ゲーム野郎の私が、ザウルス君で使用しているエミュの導入手順や使用した感想をお送りしようと思います。
ちなみに私のSL-C860の環境はこちらのスペシャルカーネルのv14dに邪道版SDLが入っています。

んで第1回目(シリーズになるかは分かりませんけど)は、こちらのズル人間帝国様で紹介されていますfMSX(厳密にいつとその派生バージョンであるfMSX-SDL)です。
なぜにこんなマイナーなものからなのかと言いますと、メジャーなものはあらかたテクノウさんに紹介されちゃってますからいまさら紹介しようもありません。
ですが往年の8ビット機のMSXエミュレータであるところのfMSXの場合、先のリンク先の他はこちらのTOS様のホームページくらいしか見たことがありません。
まあMSX自体がもはやだいぶ過去のものですからねえ…
私のような8ビット世代のパソコン少年(この表現も聞かないなあ)ぐらいしか興味が無いのでしょう。
私の場合MSXには、古くはカシオのPVー7に始まりビクターのやらパナソニックのやらの機械に随分お世話になりました。
それがこの手のひらマシンで再現できるんですからいい時代になったものです。

さて早速インストール方法ですが、ダウンロードできる先のページでは記載されていません。
ただ圧縮ファイル(fmsx.gz)があるのみあります。
しかもこの圧縮ファイル、母艦上でWinRar等で解凍しようにも「書庫が壊れています」のメッセージが出て解凍できません。
ザウルス上でgunzipコマンドでもエラーで結果は同じ。
まずはほとんどの人はここでつまずくのではないでしょうか。

んで試行錯誤の結果、判明。
実はこの圧縮ファイル自体が実行形式のバイナリファイルだったのです。
ですので拡張子を外してあげて、実行権を与えてあげればOK。

さて実行形式は手に入りましたが、これだけでは動きません。
阿川様のSDLzlibが必要となります。
まあfMSXを起動させようとしている奇特な方は、もう他のエミュレータで導入していると思いますのでこの辺のライブラリのインストールは省略します。

次にfMSX起動用に各種基本ROMファイルが必要となります。
通常ですと実機より吸い出したり大変手間のかかる作業なのですが、fMSXの場合幸いなことにオリジナルのfMSXのページにて入手で来ます。
ありがたいことです。

ここで一つ注意点。
母艦からザウルス君にROMファイルを移動するとファイル名がたいてい小文字になってしまいます。
fMSXの場合、基本のROMファイルは固定で全部大文字でしか対応しないので注意が必要です。

これでした準備は完了。
本体の適当なフォルダに先の実行形式と基本ROMファイルをおいてください。
そしてターミナルからそのフォルダに移動して以下のコマンドを実行して見てください。

./fmsx -lowres -msx1

この状態でMSXベーシックが起動できればROMファイルが正しくそろってることが確認できます。



ちなみに第2引数の-lowresはQVGAのオプションです。
これを指定しないとVGAの高解像度で起動するのですが大変遅くて遊べたもんじゃありません。
-lowresは解像度は低くなりますが格段にスピードが上がりますのでお勧めです。
このページにはこの-lowresオプションを付けると画面が小さくなるとのことですが、私の場合SDLのバージョンのせいなのか、邪道版だからからか、全画面で表示してくれて大変見やすいです。

また第3引数の-msx1を-msx2または-msx2+としてMSX2ベーシックやMSX2+ベーシックが正しく起動できるかも合わせて確認するといいかもしれません。

この状態でベーシックが起動せずに画面上に「Missing operand in 0」とメッセージが出ている場合にはROMファイルが足りないか小文字になっているかが考えられます。
Homeキーを押すとターミナルに戻るのでそこに表示されているログで何がおかしいのか確認して見てください。
(注意:DEFAULT.FNTで読み込みの失敗メッセージが出ていますがこのファイルは無くても大丈夫なようです)

ここまでくれば確認完了。
後は引数の最後に、カートリッジののROMの相対パスを記述すれば起動するはずです。

./fmsx -lowres -msx1 ./rom/hogehoge.rom

私の場合、SL-C860+スペシャルカーネル(162クロック)でMSX1のゲームが実機並に動作いたします。
Gradiusやシャロムが動作しているのを見ると鳥肌ものです。
往年のMSXワールドを堪能して見てください。

ちなみにオゴニゴ.コム様のZEmuFrontEnd Exでzemufeex_rom.shを新たに作り、対応させれば、いちいちターミナルから起動しなくても大丈夫かもしれません。
(一通りやってみたのですが私の場合shの記述がいけないのかうまくできませんでしたけど)





さてこれで快適なMSXライフが堪能できるのかというと、実はそうではないところが悲しいところ。
このバージョンでは以下の問題点があります。

・キー入力
カーソルやスペースキー、リターンキー、アルファベットなどの基本キーはいいのですが、ファンクションキーなどの特殊キーがザウルスに対応していません。
こんなとき通常ならばKeyHelper様のお世話になるのですが、fMSXが起動するとKeyHelper様が一切効きません。
またザウルスではFnキーで入力でいるキー(:など)もfMSX実行中は入力できません。

後者は(ベーシックで遊ばばいなら)ともかく、前者のファンクションキーはMSXではゲームでもよく使うので、キー入力できないのは致命的です。
一応/home/zaurus/Settings/qpe.confの[AppsKey]部分を書き換える事によっていくつかの特殊キーをファンクションキーに割り当てることは可能なようです。

ただそのたび毎にザウルスを再起動しなくてはならないし、普段はファンクションキーなんて他のアプリで使わないので実用的ではありません。
(fMSX専用機としてならいいんでしょうけど)

・MSX2、MSX2+の動作
MSX2、MSX2+のベーシック(ROMファイル指定なし)では立ち上がるのですが、カートリッジのROMファイルをその後に指定するとエラーになって起動しません。
私の環境のせいなのか、メモり不足なのか(スワップを設定しても結果は同じ)はたまた最初からザウルス君では対応していないのか今のところ不明です。
ああ、メタルギアが…

・音がならない
ゲーム音がなりません。
これも私の環境だけなのか原因は不明。
(なにせザウルスでのfMSXの情報は極端に少ないのでので)
もしかしたらザウルス版の元となっているUNIX版で対応していないのでならないのかもしれませんが詳細は不明です。
まあ電車の中では通常ミュート状態にしているのでこれは別段問題ではありません。
(他のエミュでも大抵音無オプションですし)

※追記:音なってました。本体スピーカーの音量が小さいだけでした。

・ステートセーブができない
これは先のキー入力問題に関係するのですが、fMSXではステータスセーブにファンクションキー(CTRL+F9)を割り当てているため、通常の状態では、エミュ最大の恩恵である途中セーブができません。
シャロムのパスワードを手でメモするのは、死ねます。
(あのころはよくやってたなあ…)

こんなところでしょうか。
スピードは問題ないだけに、キー入力(ファンクションキー)非対応は非常に惜しいです。
これはぜひとも知識のある人に対応してもらいたいところですねえ…(他力本願)

最新の画像もっと見る