アーケードROM吸い出しまとめ Ver.2013/01/04

〜はじめに〜

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

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

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

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

現段階ではSNK MVS(アーケード版NEOGEO)KONAMI SYSTEM-GXの2種類を記載しています。

- 必要なもの -
Aidetek : TOP2049 Universal USB Programmer $139.95 (※実際には後継機のTOP3000が送られてきます)
※どうやら閉鎖してしまったようです。"TOP2049"や"TOP3000 ROM Programmer"とググって探して下さい)。

吸い出しに必要なROMライター(ROM Programmer)。
42pinに対応しているハードの中ではぶっちぎりで安い金額で購入出来ますが、
制御ソフトtopwinの対応ROMが非常に少ないので、後述するICソケット42pinやジャンパ線が必要です。
topwinの対応OSについても、32ビット版WindowsXPマシンか、Windows7のXPモードで動かすのが無難です。

ジャンパ線 ・ ICソケット42pin(秋月電子通商など)
吸い出したいROMが「対応ROMじゃなかった場合」にICソケットにROMを載せて、
ICソケットの足を浮かせて空中配線などでピンアサインを変更する必要があります。
ジャンパ線は配線を強制的にショートさせて無理矢理アドレスを桁上げする場合などに用います。

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

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

- NEOGEOの場合 -


※餓狼伝説2、餓狼伝説3、クイズキングオブファイターズ、メタルスラッグXで検証。
 エミュレータはNebulaがオススメです(MAMEはCRCがかなりシビアなのでバージョン違いに弱い)

・まずNEOGEO BIOS ROMのダンプ
家庭用NEOGEOは貴重品なので破壊するのはオススメできません。
(ヤフオクなどで2千円以下で叩き売りされているアーケード用MVSマザーボード「MV-1」がオススメ)。

ハンダが無茶苦茶固いのでMV-1を壊すつもりでヒートガンで炙るのが無難。

※以下に"??? 27C2048"や"TOSHIBA TC541000"などと書いてあるのは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をダンプ。
最後にコマンドプロンプトからcopyコマンドのバイナリ結合で
>copy /b lo-top.bin+lo-bottom.bin 000-lo.lo
(実はLOって64KBらしいから、前半だけ吸い出して二つ繋いでもいけるかもしれない)。
これで作られたファイル"000-lo.lo"がLOROMイメージ。
※ちなみにウチの環境ではマザーボード"MV-1FZ"で正常にLOがダンプ出来ず
 画面が乱れる現象が発生。個体差かどうかは不明なものの、
 初期型のマザーボード"MV-1"なら正常動作しました。
 なお、NebulaなどROMをチェックするエミュレータではほぼ確実にこれらはCRCエラーが出ます。
 (マザーボードごとに全然違うBIOSなので、例え動作するとしても警告が表示されます)。
参考用画像は↓をクリック

後は、これら4つのファイルを"neogeo.zip"に圧縮すればBIOS ROMの準備完了です。

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

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をダンプ。
そしてコマンドプロンプトから結合コマンドを実行して生成。
>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をショートさせない方法もアリかもしれません。
それらを結合すれば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)を
ショートさせる必要があります(右の画像を参考にしてください)。

参考用画像は↓をクリック


- KONAMI SYSTEM-GXの場合 -


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

・まず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.21bNEC D27C4096512KB
321jad04.27bNEC D27C4096512KB
321b06.9cNEC D27C1000128KB
321b07.7cNEC D27C1000128KB
321b09.30gST M27C8001024KB
321b10.28gST M27C1602048KB
321b11.25gST M27C1602048KB
321b12.13gNEC D27C4001512KB
321b14.17hST M27C1602048KB
321b17.9gST M27C1602048KB
321b18.7gST M27C1602048KB
これを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??? 27C4096512KB
615jaa03.27bNEC D27C4096512KB
615a08.9cNEC D27C1000128KB
615a09.7cNEC D27C1000128KB
615a19.17hST M27C8001024KB
615a20.13c??? 27C4100512KB
615a17.25gST M27C1602048KB
615a13.28gST M27C1602048KB
615a16.18hST M27C1602048KB
615a12.27gST M27C1602048KB
615a11.30gST M27C1602048KB
615a22.9gST M27C1602048KB
615a23.7gST M27C1602048KB
もちろんNVRAMのイニシャライズは極上パロディウスと同じです。