今回はMinさんが製作されたFF5マップ・イベント拡張ver1.24.ipsの機能をどうにかして復元
してみようという企画です。筆者はアセンブラをほとんど理解できていないので、内容は全く
わかりません。でも、機能を部分的に復元させるだけなら強引ではあるものの、手段があり
ます。幻のパッチが再び入手可能になるか、似たようなパッチが出るまでのつなぎとして、
幻のパッチの機能を部分的に復元するパッチの作り方をご紹介します。
FF5CDに適用されているFF5マップ・イベント拡張ver1.24.ipsには新規マップチップの拡張
プログラムは搭載されていないことがわかりました。このコーナーで紹介した方法で作った
ROMにマップ画像、マップデータ、マップ構成設定、マップ性質設定を追加しても、それらを
読み込まないことから、追加マップチップ関連プログラムはオプショナルパッチになっていた
か、FF5ACのみの搭載だったと推測できます。
マップ・イベント拡張パッチは、FF5ACとFF5CDに組み込まれています。これらのどちらかの
パッチからマップとイベントの拡張機能の部分を絞り込んで、そこを移植します。そうすれば
同じ機能の一部を復元させるパッチを作れます。このパッチの全機能を完全に復元させる
のは機能が多岐に渡るため困難ですが、とりあえずマップとイベントを追加可能にするだけ
なら、ちょっとした作業でどうにかなることが判明しました。次項から順を追って説明します。
$000000〜$00FFFFまでをFF5CDから原作に移して少し修正すれば、マップ・イベント拡張の
プログラム部分を導入できます。以下で全工程を紹介します。作業はStirlingで行います。
手順
ヘッダなしの原作にFF5ACとFF5CDのパッチを当てて、2作品を作成しておきます
LunaExpandで原作を3MBにします
CDコピー $000000-$00FFFFまで
3MBに拡張済の原作の$000000-$00FFFFまでを削除して、コピー内容をペースト
$008A99 を 81 に書き換え
$008A9D から3Bytesを FF F0 12 に書き換え
$008ACC を 81 に書き換え
$008AD0 から3Bytesを FF F0 12 に書き換え
$008AE2 を 08 に書き換え
$00CAF8 から4Bytesを BF 00 68 D0 に書き換え
$00CC13 から4Bytesを BF 00 68 D0 に書き換え
$012CD5 から4Bytesを 22 20 FF F7 に書き換え
プログラムの導入はこれにて終わりです。あとは追加データの修正となります。
CDコピー 300000-3FFFFF
3MBに拡張済の原作の末尾にこれをペースト
・モアイフラグの解除
3B2701〜の2Bytes F4 48を切り取って3B2730にペースト
・CDのマップ移動オフセットをACのものに書き換え
ACコピー $366800〜$3689CB
3MBに拡張済の原作の$366800〜$3689CBを削除してコピー内容をペースト
・人々の配置の修正
3MBに拡張済の原作の$0E5DC2から14756Bytesをコピー
$370800から14756Bytesを削除してコピー内容をペースト
これにて、原作にFF5マップ・イベント拡張ver1.24.ipsを当てたのとほとんど同じ状態の
ROMになりました。ただし、FF5CD独自のイベントやセリフ等のデータは残ったままです。
人々の配置やマップ移動を書き換えることでFF5CDの追加イベントにアクセスできない
状態になっているので、プレーする上では原作にモアイダンジョンが加わっただけの
ROMとなっています。追加の宝箱などのデータ配置は全然わかっていません。
また、マップチップの追加方法、登録方法も不明です。上記の方法では実質的にモアイ
ダンジョンと漢字を追加するにとどまり、Minさんのマップ・イベント拡張パッチに本来
搭載されている多くの機能が未活用のままです。恐らく正規に配布されたパッチには、
BNE2やデータの圧縮・展開ができるプログラムなどが同梱されていたものと思われます。
マップチップの登録データは圧縮されているようなので、どうしてもそこが難しいところです。
いずれにせよ、Minさんのマップ・イベント拡張パッチを持っている方々が現在は活動して
いないようなので、まさにごく少数の改造者のみが所持する幻のパッチといえます。
このROMと手付かずのヘッダなしの原作ROMからパッチを作れば、不完全ながらも復元
パッチとなります。正規品かそれに代わるパッチが入手可能になるまでのつなぎとして。
最後に筆者が調べて判っているデータ配置のみ、以下に転載しておきます(メモ原文ママ)。
・追加マップチップ画像 (FF5ACのみ) New!
画像オフセット 320000〜32005F[4Bytes? * ]
画像データ 320060〜[4BPP、16色]
・追加マップ設定 (FF5ACのみ) New!
3CF000-3CF051 マップ性質設定オフセット[2Bytes * ]
3CF052-3CFFFF マップ性質設定(LZSS圧縮)
3D0000-3D0047 マップ構成設定オフセット[2Bytes * ]
3D0048- マップ構成設定(LZSS圧縮)
・VRAMのパレット特定作業 (FF5ACのみ)
月の地下渓谷の宝箱パレットを部分的に復元してサーチする
青3 03 64
青4 02 40
グ5 bd 6f
青6 c2 7c
黒7 00 00
03 64 02 40 bd 6f c2 7c 00 00
追加マップ用パレット 3e2000〜(32bytes * )
・地下渓谷のVRAMパレット (ACのみ)
まとまったデータが3e2000〜3e20ff
これが地下渓谷のVRAMパレットと判った