WiiUのWiiモードで購入したVCとWiiウェアを抽出する方法です。
この方法ではROM吸い出し先のPCとWiiUが同じネットワークに接続されている必要があります。
用意するもの
CFW導入済みWiiU:Wiiモードをハックする必要はありません。
予めWiiモードに吸い出したいROMをダウンロードしておいてください。ftpiiu-everywhere:解凍後、wiiuフォルダをSDカードのルートにコピー。
ShowMiiWads: ダウンロード後、解凍。
VCを抽出する場合
- Python 2.x
Python 3.0未満のバージョンが必要です。
特にこだわりが無ければPython 2.7.18 のインストールをおすすめします。
手順
HBLからftpiiu-everywhereを起動すると以下のような画面が表示されます。 下線部のIPアドレスは接続しているネットワークによって異なります。
PCでエクスプローラーを起動し、アドレスバーに以下のように入力します。 下線部は自身のWiiUに表示されたものを入力してください。
入力後Enterするを押下すると以下のようなファイルが表示されます。
これらのファイルはWiiUのシステムファイルですので、書き込みを行うとWiiUがブリックする可能性があります。
必要なファイル以外は操作しないよう注意して作業してください。slccmpt01というファイルをコピーして、PC上に貼り付け。 貼り付け場所はどこでも構いません。
コピーにはかなり時間がかかるので気長に待ちましょう。
コピーが完了したら、エクスプローラーとftpiiuを終了します。 ftpiiuはホームボタンを押すと終了できます。このあとWiiUは使用しません。ShowMiiWadsを起動。
警告が出てきますが、上を選択。
起動後、Options → Launuage → Japaneseを選択。
日本語になります。
次に、 ツール → Common-Keyを作成を選択。指示に従って"45e"を入力してOK。
その後、Options → "NANDバックアップのパスを変更"を選択。 先程コピーしたslccmpt01を選択してOK。
モード → ShowMiiNandを選択すると、Wiiモードに入っていたチャンネル、VC、Wiiウェアが出現します。チャンネル、Wiiウェアを抽出します。VCだけ吸い出したい方は読み飛ばしてください。 吸い出したいタイトルを選択、右クリック → WADをパック。
保存するフォルダはお好みで。
保存されたWADファイルはGC、Wiiエミュレータの「Dolphin」で起動することができます。
この方法でVCを抽出すると、Dolphin上でVCを起動できるはずです。(未検証)
ROMファイルを抽出したい方は、下記方法を実行してください。FCの抽出
nes_rom_extract.pyをダウンロード
ShowMiiNandから、抽出するソフトのパスを確認します。 エクスプローラーでslccmpt01を開き、
title→ShowMiiNandで確認したパス→ShowMiiNandで確認したパス→contentへ移動、00000001.appをコピー
nes_rom_extract.pyと同じフォルダに貼り付け
上記フォルダのアドレスバーにて"cmd"と入力
コマンドプロンプトで
py -2 nes_rom_extract.py 00000001.app ファイル名.nes
と入力してEnter。ファイル名は自由です。 Done!と表示されたら同じフォルダにnes形式のROMが出力されています。SFCの抽出
snesrestore.py
brrencode3.pyをダウンロードしてください。
ShowMiiNandからSFCタイトルのパスを確認。
ツール → U8アーカイブをアンパックを選択。
slccmpt01 → title → SFCタイトルのパス → content → 00000005.appを開く(スーパーマリオRPGは0000000a.app) 抽出先はお好みで。00000005_app_OUTが生成されます。
app_OUT内の.pcmファイルと.romファイルをコピーして.pyと同じフォルダに貼り付け。
ファイルの先頭に付いている圧縮形式を確認しておきましょう。
ファイル名が4文字の場合は圧縮されていません。
上記フォルダのアドレスバーにて"cmd"と入力- ファイルがエンコードされていない場合
py -2 snesrestore.py xxxx.rom xxxx.pcm ファイル名.smc
xxxxはpcmファイルとromファイルの名前、ファイル名は自由に決めてください。 入力してEnter。しばらく待つとsmc形式のROMが出力されます。 - 圧縮されている場合:
- lzh8.py
- huf8.py
- lz77.py
必要な物をダウンロードしてください。 スーパーマリオRPGはhuf8とlz77
星のカービィSDXはlzh8が使用されています。
SFCタイトルに合わせてダウンロードしてください。
py -2 圧縮形式.py 圧縮形式xxxx.pcm ファイル名.pcm
py -2 圧縮形式.py 圧縮形式xxxx.rom ファイル名.rom
を実行。その後snesrestoreを使用してsmcファイルを出力してください。 下記はlzh8の例です。
星のカービィSDXなどは普通に結合すると下記のエラーが出ます。
その際は、copy /b JCCJ.pcm+JCCJ.pcm JCCJ1.pcm
と入力して
pcm同士を結合後、romと結合するとsmcファイルが出力されます。
- ファイルがエンコードされていない場合
N64の抽出
ShowMiiNandからN64タイトルのパスを確認
ツール → U8アーカイブをアンパックを選択
画像はSFCですがN64でも同様です。
slccmpt01 → title → N64タイトルのパス → content → 00000005.appを開く
抽出先はお好みで。00000005_app_OUTが生成されます。- app_OUT内にromファイルがある場合 romファイルを「ファイル名.n64」にリネームして終了です。 ファイル名は任意で構いません。
- app_OUT内にromcファイルがある場合
- RomChu 0.6をダウンロード、解凍後
romchu.exeと同じファイルにromcファイルを移動
上記ファイルにてエクスプローラーのアドレスバーに"cmd"と入力
romchu romc 出力ファイル名.n64
と入力しEnter。成功するとn64ファイルが出力されます。 - 上記方法でエラーが出る場合
以下のサイトを参考にさせていただきました。
Wiiバーチャルコンソールからのゲームデータ抽出 - SWEATSHOP 2号店
http://gametricks.blog40.fc2.com/blog-entry-52.html