アーケードROMをダンプする

アーケードROM吸い出しまとめ Ver.2014/10/22 (WordPress版)

-update log
Ver.2014/10/22 .. 最下部に「ぷよぷよ通」ROMダンプを追加しました。
Ver.2013/12/27 .. WordPress版に移行しました。


~はじめに~
MAME、Nebula、FinalBurn、NeorageX…。
これらのアーケードマシンエミュレータを使えば、かつてゲームセンターで
やり込んだゲームをパソコンでプレイできるようになります。

しかし、ネット上のエミュレータ解説サイトの大半は
「自分でROMを吸い出して下さい」
とだけ書いて、自力でROMを吸い出すレベルの人であれば
読まなくても分かるような記事をダラダラ書いているだけ。

昔はたとえ違法にアップロードされているROMを入手したとしても倫理的な問題しか
ありませんでしたが、平成24年10月1日より刑事罰が課されるようになりました。
(2年以下の懲役若しくは200万円以下の罰金)
また、不正競争防止法改正によりコピープロテクトを解除したダンプも違法化されました。

しかし、逆に考えれば
コピープロテクトの無いアーケードROMを自力でダンプすることは合法
なのです。
当コンテンツは、いかに「安くアーケードROMを吸い出すか」をまとめた資料です。

現段階ではSNK MVS(アーケード版NEOGEO)KONAMI SYSTEM-GX、
セガ システムC2の、
3種類のアーケードROM基板の吸い出し方法を記載しています。

※NEOGEO用ROMについては、DotEmu製のAndroid用NEOGEO移植シリーズ
からもダンプが可能です。詳しくはAndroid用NEOGEOソフト解析をご覧ください。


– 必要なもの –
Aidetek : TOP2049 Universal USB Programmer $139.95
 ※実際には後継機のTOP3000が送られてきます
吸い出しに必要なROMライター(ROM Programmer)。
42pinに対応しているハードの中ではぶっちぎりで安い金額で購入出来ますが、
制御ソフトtopwinの対応ROMが非常に少ないので、後述するICソケット42pinや
ジャンパ線を使った空中配線やアドレスライン直結などの技法が必要となります。
公式サイトで最新バージョンの専用クライアントtopwinをダウンロードすれば、
64bit版Windows7でも動作可能になります。

ジャンパ線 ・ ICソケット42pin(秋月電子通商など)
吸い出したいROMが「対応ROMじゃなかった場合」にICソケットにROMを載せて、
ICソケットの足を浮かせて空中配線などでピンアサインを変更する際に利用します。

Amazon : ヒーティングガン(ヒートガン) \2,980
アーケード基板の半田付けはとても固く、半田ごて+吸い出し器(吸い取り線)で
大量のROMを剥がすのは大変。
「どうせPCでプレイするし原本はぶっ壊してもいい!」という場合に基板を炙って
一気に剥がすことができます。
(参考用:ニコニコ動画[ヒートガンでNEOGEO(MVS)のROMを剥がす]

そして言うまでもなく「吸い出したいアーケードゲーム基板」が必要です。


~ NEOGEOの場合 ~
neogeo餓狼伝説2
餓狼伝説3
クイズKOF
メタルスラッグX
で検証しました。

エミュレータは
“Nebula”
をオススメします。
(ROMチェックが甘いので)

まずNEOGEO BIOS ROMのダンプ

家庭用NEOGEOは貴重品なので破壊するのはオススメできません。
(ヤフオクなどで2千円以下で叩き売りされている
アーケード用MVSマザーボード「MV-1」がオススメ)。
ハンダが無茶苦茶固いのでMV-1を壊すつもりでヒートガンで炙るのが無難。

※以下に”??? 27C2048″や”TOSHIBA TC541000″などと書いてあるのは
ROMライターTOPシリーズのツール”topwin”でのROM選択での名称です。

<NEO-GEO ROM 128KB>
“??? 27C2048″でダンプして、バイナリエディタから前半128KB切り出して
ファイル“neo-geo.rom”として保存。

<SM1 ROM 128KB>
“TOSHIBA TC541000″でダンプしてファイル“sm1.sm1”として保存。

<SFIX ROM 128KB>
“TOSHIBA TC541000″でダンプしてファイル“sfix.sfx”として保存。

<LO ROM 128KB>
LO ROMに採用されている”TOSHIBA TC531000CP”を
“TOSHIBA TC541000″プロファイルでダンプすると
アドレス10000h以降がアドレス0hにループするため吸えません。
まずは”TOSHBA TMM27512″を選択して前半64KBをダンプ。
ICソケットを一つ用意して、22pin(A16)の足を浮かせて28pin(VDD)に接続。
これで開始アドレスが10000hになるので”TOSHBA TMM27512″で後半64KBをダンプ。

TC531000CP

強制的にアドレスピンに

通電してアドレスを繰り上げる。

ブレッドボードジャンパ推奨。

 

 

 

最後にコマンドプロンプトからcopyコマンドのバイナリ結合で
>copy /b lo-top.bin+lo-bottom.bin 000-lo.lo
これで作られたファイル“000-lo.lo”がLO-ROMです。
もっとカンタンにLO-ROMを手に入れたい方は
Android版NEOGEOソフトから吸い出す方法もあります。

以上4つのファイルをまとめて “neogeo.zip” に圧縮すればBIOS ROM準備OKです。

NEOGEOゲームソフトのROMダンプ

 こちらもNEOGEOカセットではなくMVS ROMカートリッジを使うのが無難です。
メタルスラッグを例に挙げると「NEOGEO中古10万円→MVS中古3,000円」くらい
大きな価格差があります。
KOF99以降の多くのゲームは暗号化チップや特殊ROMを経由して
ダンプが出来ないようにプロテクトがかかっていますが、その場合は諦めましょう。
現行法ではそれを合法的にダンプすることはできません。

MVSはROM枚数は多いものの、半田付けはとても甘くユルユルなので、
IC用半田ごてで一気に加熱したり、ハンダ吸い取り器でシュポシュポやっても取れます。
1本1,000円程度で買える非レアであればヒートガンで炙っても良いでしょう。

<M-ROM>
“TOSHIBA TC541000″を選択して128KB吸い出せばOK。大半のゲームで共通のはずです。

<P-ROM>
吸い出したいROMが512KBなら”NEC D27C4096″、1024KBなら”ST M27C800″が適合。
ICのラベル名にEP~~と書かれていてもファイル名はxxx-P2.BINだったりするので、
エミュレータのロムセット情報などを参考にすること。
ただしマジカルドロップ2の”221-P1.BIN”に使われているROMは”??? 27C4100″でしたので、
ゲームによってはバラつきはありそう。

<C-ROM>
ROMが2048KBなら”ST M27C160″、4096KBなら”ST M27C322″。
メタルスラッグXのように64MBit(8192KB)の場合はジャンパ線が必要です。
“ST M27C322″を選択して前半4096KBをダンプした後、22pin(VCC)から
11pin(A21)にジャンパ線をショートさせて開始アドレスを40000hに固定し、
後半4096KBをダンプ。
CROM8192KB

 

 

 

 

 

 

 

そしてコマンドプロンプトから結合コマンドを実行して生成。
>copy /b 250-c1_top.bin+250-c1_bottom.bin 250-c1.bin
もし”MX23C6410″を直接ダンプできるROMライターがあればこの手順は不要です。

<V-ROM>
ROMが2048KBなら”ST M27C160″で吸えるものの、4096KBは”ST M27C322″だと、
xx FF yy FF zz FF…のように間にFFが入って偶数列のみダンプされます。
(V-ROMは8bit、M27C322は16bitのため)。
ICソケットの足のうちM27C322のピンQ8~Q14を浮かせて、
30pin(Q15)を隣の31pin(VSS=GND)にショートさせてダンプすると奇数列を得られます。
ただ、餓狼伝説3の場合はQ8~Q15全てを浮かせたら奇数列を得られましたので、
上記の方法がもしダメなのであればQ15をショートさせない方法もアリかもしれません。
VROM4096KB

 

 

 

 

 

 

 

それらを結合すれば4096KB V-ROMを生成できます。
※結合ツール暫定版NGVMIX v0.00(アルゴリズムが酷いのでクソ遅い)も作りました。
偶数列を1st、奇数列を2ndとして処理するので注意してください。
結合時のコマンドは以下の通り。
>ngvmix 偶数列1st.bin 奇数列2nd.bin out-v1.bin

<S-ROM>
28pin(TC531000CP)と32pin(TC531000DP)のものが存在。
28pinの場合は先述のBIOS(LO ROM 128KB)と同じピンアサインなので、
TOSHBA TMM27512(64KB)を選択して~…と同じ方法が使えます。
32pinの場合は、”TOSHIBA TC541000″を選択して24pin(OE)と2pin(A16)を
ショートさせる必要があります(下の画像を参考にしてください)。
TC531000DP

 

 

 

 

 

 

 


~ KONAMI SYSTEM-GXの場合 ~

対応ソフトはとても少ないものの「極上パロディウス」「ツインビーヤッホー!」など、
ゲーム史に残る名作を生み出したシステムです。
マザーボードとゲームソフトのセットが中古相場5,000円程度ですが入手は少し困難です。
後述の「基板破壊」の問題はありますが、吸い出し難易度はNEOGEOよりも低めです。

・まずSYSTEM-GX BIOSのROMダンプ
BIOS ROMは1枚、しかもICソケット方式なのでマザーボードからヒョイと取れます。
TOP3000のプロファイル”NEC D27C1000″で128KBダンプし、
ファイル名”300a01.34k”で保存。
これを”konamigx.zip”という圧縮ファイルにすれば準備OKです。

・まずSYSTEM-GXゲームソフトのROMダンプ
レアソフトも多いので出来れば壊したくないのですが、ハンダの堅さは最上級レベル。
基板表面が極端に弱く、半田ごての熱で変色しヒートガンで炙ると一瞬で溶けます。
ICに亀の子でかぶせてROMダンプする専用ソケットでも作らない限りは
非破壊ダンプは困難です(丸穴ICソケット2個とリード線42本で作れそうですが)。
※ちなみに非破壊ダンプは成功していません。

基本的に変則的なROMは採用されていないようなのでMAMEDBなどで仕様を
チェックしながら、同容量かつ同一ピンアサインのROMを選んでダンプすればOKです。
極上パロディウスの場合、以下のようになります。

ファイル名 topwinでの選択 ROMサイズ
321jad02.21b NEC D27C4096 512KB
321jad04.27b NEC D27C4096 512KB
321b06.9c NEC D27C1000 128KB
321b07.7c NEC D27C1000 128KB
321b09.30g ST M27C800 1024KB
321b10.28g ST M27C160 2048KB
321b11.25g ST M27C160 2048KB
321b12.13g NEC D27C4001 512KB
321b14.17h ST M27C160 2048KB
321b17.9g ST M27C160 2048KB
321b18.7g ST M27C160 2048KB

これをgokuparo.zipなどファイル名を付けて圧縮保存したものをMAMEに読ませると、
最新バージョンでは”gokuparo.nv”が無い!といったエラーを表示して止まります。

MAMEのフォーラムで騒いだバカのせいでこんな仕様になったわけですが、
バイナリエディタで”gokuparo.nv”という名称で空のファイルを作り、
128バイトのFFFFFFFFFFF…..で埋めてこれを上のROM一式に加えてzip圧縮。
MAMEでROMをロードしたらF2を押しながらO,Kキーを押してNVRAMをクリアすればOKです。
(SYSTEM-GXはROM交換後にRESETを押しながら通電してNVRAMをクリアする
手順があり、中古&マニュアル無しで入手したユーザの多くがここで躓きます)。

~追記~
「対戦とっかえだま」もダンプしました。各ROMは以下の通り。

ファイル名 topwinでの選択 ROMサイズ
615jaa02.31b ??? 27C4096 512KB
615jaa03.27b NEC D27C4096 512KB
615a08.9c NEC D27C1000 128KB
615a09.7c NEC D27C1000 128KB
615a19.17h ST M27C800 1024KB
615a20.13c ??? 27C4100 512KB
615a17.25g ST M27C160 2048KB
615a13.28g ST M27C160 2048KB
615a16.18h ST M27C160 2048KB
615a12.27g ST M27C160 2048KB
615a11.30g ST M27C160 2048KB
615a22.9g ST M27C160 2048KB
615a23.7g ST M27C160 2048KB

もちろんNVRAMのイニシャライズは極上パロディウスと同じです。


~ セガ システムC2「ぷよぷよ通」の場合 ~

ROMはわずか3枚。ICソケットタイプでカンタンに取れる。
EPROMを剥がすと裏にチップ品番が書いてある…と至れり尽くせり。
puyo2
赤丸で囲った場所のEPROMがターゲット。
表面にはちゃんとROMナンバーの書かれたシールが貼ってあってとても分かりやすい。

しかも剥がして裏返すと…

puyo2b
本当に品番が書いてあって驚愕。
ROMライターTOP3000(クライアントソフトTopwin7)の場合はListから
EPROM – ST – 27C4001 をセレクトしてReadでOK。

これで512KBのROM×3枚が吸えるので毎度おなじみMAMEDB.comのデータベースを
見ながらファイル名をちゃんと付けてあげればOK。
17241 .. epr-17241.ic32
17240 .. epr-17240.ic31
17239 .. epr-17239.ic4

あとはこの3つを puyopuy2.zip に圧縮してMAMEのROMSフォルダに突っ込んでロード。

puyo2d
うむ、ステキね。

コメントを残す

メールアドレスが公開されることはありません。 * が付いている欄は必須項目です