VitaでZAVASやりたくて(5)
前回はArduinoとRealforceを合体させて(流石に5台は持ってない)念願のキングPC88キーボードを手に入れることに成功しました。
時は来たそれだけだ。
というわけでいよいよPC88のシステムROMとZAVASのフロッピーディスクの吸出し。
次のツールを使います。
TransRom(Ver 1.0.3)
X88000作者様によるシステムROMの吸出しと転送ツール。GUIで簡単に操作できるのでおすすめ。ちなみにX88000は後ほどゲームの解析でもお世話になります。
TransDisk(Ver 2.07)
M88作者様によるフロッピー吸出しと転送ツール。実行ファイル名はxdisk2だけどツールの正式名称はTransDiskです。こちらでもシステムROMを吸出し可能のようですがTransRomでやってしまったのでこちらでは未検証。
こういうのを最初に作る人たちってほんとにすごいなあ。
ひたすらリスペクトしかない。
ありがたく使わせていただきます。
ツールの使い方は詳しいページが山ほどあるので省略します。
TransDisk使用時のちょっとしたポイントだけ参考までに。
PC88をROM BASICで立ち上げる場合は初めに「out &hff, &h91」をやってフロッピー周りを初期化しておく
ボーレートは9600でやるのが無難
「-v」オプションで詳細表示するのが吉
フロッピーを読みだした結果はたまにトラック内のセクタ順が変わる。そのため正常に読めた2つを比べても一見すると中身が違う場合がある。バイナリ比較してやけに差分がある場合はたぶん順番が変わってるだけなので安心してください
システムROMはすんなりと吸出し成功して、次に意気揚々とZAVASのフロッピーの吸出しを試みますが、ここで問題発生。
むむむ。
なんかエラーが出る。
流石に昔のゲーム過ぎてフロッピーが劣化?もしやドライブの故障?
猛烈な不安に駆られながらもひとまず最後まで進めてみます。
ふうむ。
何か所かエラーになるけど他は読めてるらしい。
念のために3回繰り返してみるもやはり同じ個所でエラー。
ちゃんと読めたのかなんとも判断ができないのでとりあえず他のフロッピーでも試してみます。
もともとの愛機だった(今は亡き)PC88 FHのN88-BASICが見つかったのでそれを吸い出してみると、困ったことにこちらもエラーが。
一回だけなら誤射かもしれないのでもう一度やってみると、1回目と2回目でエラーになる箇所が微妙に違う。
????????
フロッピーの問題かドライブの問題か完全に混乱。
混乱状態のまま次は一緒に入ってたデモンストレーションディスクを試してみるとこっちは正常に読めてる。
こちらは何度やってもちゃんと読めます。
どうやら読めるフロッピーはちゃんと読めるらしい。
恐らくドライブは正常のように思えます。
とするとエラー箇所が微妙に変わるN88-BASICはフロッピーの劣化で読みにくくなっていたに違いない。
一方でZAVASのフロッピーはいつも同じ場所がエラー。
もしかして?
…!
ZAVASのフロッピーは案外ちゃんと読めているのではないか。
ひとまず読めたフロッピーイメージ(とシステムROM)を使ってエミュレータで起動してみると…
ちゃんと起動するも、ゲーム開始直後にファンファーレが流れて画面がチカチカしたまま操作不能!
(画面のスクショとるの忘れた)
…!!
そこで思い出したのがそういえば当時のゲームはプロテクトがかかっているのが常識なのでした。
偶然ファンファーレが流れて操作不能になるとはちょっと考えにくく何らかの情報をもとにして敢えてそうしていると考えるのが自然でしょう。
恐らくエラーになる箇所とプロテクトに関係があるはずです。
とはいえプロテクトについてはど素人。わざと読めないセクタを作っておいて読めたら不正コピーと判断するみたいな噂を聞いたことがある程度。
色々とググってみると当時のプロテクトについて解説してくれるページがいくつか見つかります。特に参考になったのがこのへん。
それとこちらのフロッピーディスクに関する記事。(知ってる人は知ってる西田 亙さんの記事)
ある程度プロテクトの知識を入れた状態で、3回吸い出して保存していたZAVASのイメージデータの差分を比較していると確信に変わりました。
やはりちゃんと読めてる。読めない箇所はプロテクトの影響である。
(具体的なプロテクトの詳細を書くのはよろしくない気がするのでそこは敢えて伏せます)
さて、野望達成のためにはこの高い壁をなんとかクリアしなくてはならぬのである。
ここからプロテクトとの壮大な戦いが始まるのであった。
次回は(どこまで書いていいのかよくわからんので)きっと消化不良の冒険の旅。