ファミコンのハックロムを実機で遊ぶ!グラディウスACのカセットを作る

GRADIUS AC2007_140727_000
ファミコンなどのデータを書き換えてグラフィックを良くしたり
足りない要素を追加したりというハックロムという文化があります

ファミコン版のグラディウスをアーケード版っぽくなるように改造されている
グラディウスACを実機で遊んでみたく、いろいろ調べてみました

実機で遊ぶためにパッチをダウンロード

GRADIUS AC2007_140727_001
パッチは以下で配布されてます
http://hlc6502.web.fc2.com/
http://hiro2ki.blog55.fc2.com/
https://messatu.wordpress.com/

そういえばグラディウスACはカセットに書き込んで実機で遊んでる人が
ゲームセンターCXで画面にモザイク入りで紹介されていましたね

実機カセットからオリジナルの ROMデータを吸い出す

DSC_1249.jpg
まずはベースとなるグラディウスのROMデータが必要なので用意します
吸出し機を使えば簡単なのですが作る過程を楽しむのも今回の目的なので
めんどくさい方法でやります

グラディウスのカセットは流通量が多いのでそこそこ安価で入手可能

DSC_1251.jpg
まずROMを外します
ハンダ吸い取り器を使えば簡単!
RC810J0Pと書いているROMにプログラムデータ(PRG)
RC810J0Cと書いているROMにキャラクターデータ(CHR)が入っています

DSC_1252.jpg
ROMライターで吸い出します
国内ファミコンROMタイトル一覧表
http://pasofami.game.coocan.jp/nesalltitlelst.xls
↑こちらによるとグラディウスはそれぞれ32KBのROMのようです

http://nesdev.com/NES%20ROM%20Pinouts.txt
↑64KBまでのファミコンのマスクロムはEPROMとピンアサインが同じとのことで
下駄をかまさなくてもそのまま吸い出せます
27C256の設定で吸い出せました

吸い出した2つのROMをPRG+CHRの順番で結合し
先頭にNESヘッダ
4E 45 53 1A 02 01 01 00 00 00 00 00 00 00 00 00
を付ける

granes_hdda.png
http://mrchecker.web.fc2.com/
ROMチェッカーで読み込んでデータベースを見ながらNESヘッダを編集する

gradius_000.png
エミュレーターに読み込ませて問題なく動けば吸出し成功!
で、配布されてるパッチを当てていく。
パッチを当てる手順は面倒なんで割愛

ROMライターでEP-ROMに書き込む

DSC_1309.jpg
GraAC2007_op4_140727までパッチを当てたグラディウスACが
問題なくエミュレーターで動いたらEPROMに書き込みます
先頭の1行のNESヘッダを削除して128KB+128KBに分割して書き込みます

DSC_1361.jpg
パッチを当てた後のグラディウスはマッパーが3から4に変わったので
乗せ換え先のマッパー4のカセットを探します
マッパー4かつROMが128KB+128KBで近所のハードオフで
安く売ってるガチャポン戦士3を使用しました

DSC_1310.jpg
128KBのマスクロムはEPROMとピンアサインが違うので
一部足を上げて配線を入れ替える必要があります

https://bakutendo.net/blog-entry-42.html
http://rockn69.blog54.fc2.com/blog-entry-536.html
こちらを参考にしました

具体的には上記のBAKUTENDO様にあるように

  • EP-ROMの1ピン(VPP)、2ピン(A16)、24ピン(/OE)、
    30、31ピン(未使用)を曲げて浮かせる
  • CHRのEP-ROMのみ22ピン(/CE)を曲げて足と基板側31ピン(/CE)を繋ぐ
    PRGの方はそのままで/CEにつながっていると思います
  • PRGのEP-ROMの24ピンの足と基板側のGNDをつなぐ
  • CHRのEP-ROMの24ピンの足と基板側の2ピン(/OE)を繋ぐ
  • 各EP-ROMの1ピン(VPP)の足と基板側の32もしくは30ピン(VCC)を繋ぐ
  • 各EP-ROMの2ピン(A16)の足と基板側の24ピン(A16)を繋ぐ

(2021/01/09追記)

実機で動作!

DSC_1365.jpg
配線を終え、いざテスト・・・
キター!!

DSC_1311.jpg
一周遊んでみましたがバグることもなく安定していました
一発でうまくいったので感動です

DSC_1362.jpg
マッパー4のカセットは元のコナミカセットに入らないので
適当なカセットを使ってラベルを自作しました
これで市販カセットと同じ感覚で遊べます
(元のラベルは剥がすのが大変なのでジーコサッカー式に上に貼っています)

DSC_1366.jpg
元のグラディウスのカセットはどうしたかというと
マッパーが変わる前のGRADIUS AC2007 rev0.1を32KBのEPROMに書き込んで遊べるようにしました
ピンアサインが一緒なのでポン付けでOK
もちろん別でオリジナルのグラディウスのカセットも持ってるので
3種類のグラディウスが遊べることになります

またグラディウス以外のハックロムにも挑戦しようと思います

コメント

  1. neya より:

    初めてコメントをさせていただきます。
    私もグラディウスAC2014を実機に実装したいと思い、この記事にたどり着きました。
    ピンアサインの所で質問なのですが、参考元のサイトの消失と、参考サイトと27C1001のピンアサインのデータシートとがいまいち一致しないので(理解不足ですみません)
    改めてジャンパの所を説明していただけると幸いです。
    厚かましいお願いですが、よろしくお願いします。

    • プンソンsetsuhiwa より:

      閉鎖や移転しているサイトがあったためリンクを修正と
      数年前の記事なので若干記憶が曖昧ですがジャンパーする部分を追記しました。

      ピンアサインに関してはBAKUTENDO様のところにあるMMC3-EPROM.txtを参考にするとわかりやすいです。
      任天堂のPRG.ROMが28ピンでEP-ROMとピン数が違うのでピン数がずれてややこしいんですが
      一部のピン以外は同じであることがわかると思います。
      ROMの一部違うピンを基板側の同じ信号のところに配線してやれば動くと思います。
      MMC3基板以外を使うバージョンはまたピンアサインが違うので注意です。

      • neya より:

        詳しく解説していただきありがとうございます。
        もう一つお願いしてもよろしいでしょうか。
        グラディウスのROMの結合についてですが、どのようなツールをお使いになったかご教授お願いできませんか?

        • プンソンsetsuhiwa より:

          方法はいろいろありますが私はStirlingというバイナリエディタで二つのROMデータをコピペしてつなげています。
          バイナリエディタは使う機会が多いので使い方に慣れておくと便利です

タイトルとURLをコピーしました