スキップしてメイン コンテンツに移動

最新の投稿

ツール紹介 Advanced SNES ROM Utility

 今回は「Advanced SNES ROM Utility」というスーパーファミコン用のROMイメージ編集ツールをご紹介致します。内容的にはROM CheckerとLunar Expandを統合したようなツールで、ROMのタイプ(HiROM/LoROM)のチェックとROMイメージのサイズを変更できるのですが、その他にも色々と面白い機能が実装されています。以下がその一例です。 チェックサムの修正 ヘッダの追加と削除 ROMサイズの変更 ROM情報(タイトル、リージョン、バージョン、特殊チップの有無など)の編集 パッチの適用 ROMイメージのHiROM/LoROM相互変換  特に嬉しいのは「ROMイメージのHiROM/LoROM相互変換」の機能です。キャプテン翼4や5のROMイメージのHiROM化( https://www.retrogamelaboratory.com/2024/06/loromhirom.html )の際に触れたように、私は今までLoROMのROMイメージをHiROMに変換する場合は各バンクの間にいちいち8000h分の空データ(00)を追加していたのですが、このツールを使用すれば自動的に各バンクの間に8000h分の空データ(FF)を追加してくれます。こんな便利なツールがあるのであればもっと早く知りたかったですね…。ともあれ、これによりLoROMのバンクサイズの関係でデータを追加しにくかった作品も大幅に手を加えやすくなるのではないでしょうか。ツールに関する詳細は以下のURLをご参照下さい。 https://www.romhacking.net/utilities/1638/

第4次スーパーロボット大戦 マップ上でのユニット展開数増加不具合の原因判明とSRAMの仕様による一時断念

 マップ上にユニットを65体以上展開させた場合の不具合の原因が判明しました。結論から言うと、現状では一時断念せざるを得ません。HiROMの状態ではRAM容量(外付けRAMを含む)の不足でオーバーフローし、65体目以上のユニット情報が維持できないというのが不具合の原因でした。マップ上で展開しているユニットの情報はRAMの7E2000、7E4000、7E6000の各領域にリアルタイムで読み書きされているのですが、この単位が0080hのため0080*40(64体分)=2000hとなり、65体目以上の情報が維持できなくなってしまうのです。これがLoROMであればSRAM領域を1バンクあたりにつき4000hまで展開、最大で256Kbまで拡張できるので該当するデータを大容量化したSRAMに逃がして問題解決となるのですが、HiROMの場合は1バンクあたりのSRAM領域が2000hしか維持できないうえに128Kbが容量の限界となっています。多量のデータをSRAMで処理している魔装機神ではHiROMではなく従来のソフトによくあるLoROMという仕様(32MBLoRAM+32kbSRAM+SA-1チップとやや特殊ではありますが)を採用しているのはこの対策のためだと思われます。大容量のデータの場合はROM情報を特殊チップ仕様に変更してそちらで処理するという方法もあるらしいのですが、現状ではそれらしい資料が見つからず、これといってよい方法が見つかりません(一応リザーブRAM領域にデータを逃がすと正常に動くように見えるのですが、やはり維持できないのかだんだん動作が怪しくなり最後は突然ゲームオーバーになったりフリーズします)。魔装機神と同様にメモリマップをLoROMに変更する事も考えましたが、さすがに作業量を考えると厳しいものがありますので改善策が見つかるまで一時断念し、まずはSRAMに登録した増加ユニットの正常動作だけを目指す事にします。

コメント

人気の投稿

第4次スーパーロボット大戦 改造コスト&改造数値分岐パッチを公開しました

第4次スーパーロボット大戦 初期型ROMと後期型ROMの物理的な見分け方と入手方法

第4次スーパーロボット大戦 コマ送りモードについて