しーすのブログ

ハックやらなんやらの忘備録

巨大なファイルをWindowsからAndroidへコピーする際に発生するエラーの回避

概要

WindowsからAndroidへのファイルのコピーは、 エクスプローラー上で行うのが一般的かと思います。

筆者の環境ではエクスプローラーを使って巨大なファイル(1GB~)?を転送したとき、 転送中にエラーが発生したり、エクスプローラーが強制終了して正しく転送が行えませんでした。

ADBとPowershellで 巨大なファイルを(今のところは)正しく転送できているので、やり方を書いておきます。

状況

WindowsからAndroidへ 大きめ(1GB~)?のファイルをエクスプローラー上で転送しようとすると、 転送中にエラーが発生したりエクスプローラーが強制終了してファイルが送れない

解決方法

PowerShellコマンドプロンプトとADBを使用してファイルを転送する。

用意するもの

CUI上でAndroidを操作できます。

使用するのはadb.exeだけなので、展開後任意の場所に置いておきます。

手順

  1. ダウンロードしたADBにPathを通す
    1. スタートメニュー→設定→詳細情報→システムの詳細設定→環境変数に移動する
    2. ユーザー環境変数内、Pathをダブルクリックして新規→adb.exeがあるフォルダのアドレスを入力
    3. OKを押下して設定を閉じる
  2. AndroidのUSBデバッグを有効にする
  3. PowerShellコマンドプロンプトを起動
  4. 以下のコマンドを入力してEnter
adb push コピー元アドレス コピー先アドレス

ディレクトリ内のファイルを一括で移動したいときは、

{ディレクトリ}\.

を使います。

この手順で巨大なファイルであってもAndroidへファイルがコピーされる...はずです。

参考文献

WiiU Wiiモード(vWii)のVC,Wiiウェアを抽出する

WiiUWiiモードで購入した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 のインストールをおすすめします。

手順

  1. HBLからftpiiu-everywhereを起動すると以下のような画面が表示されます。 下線部のIPアドレスは接続しているネットワークによって異なります。

  2. PCでエクスプローラーを起動し、アドレスバーに以下のように入力します。 下線部は自身のWiiUに表示されたものを入力してください。
    入力後Enterするを押下すると以下のようなファイルが表示されます。
    これらのファイルはWiiUのシステムファイルですので、書き込みを行うとWiiUがブリックする可能性があります。
    必要なファイル以外は操作しないよう注意して作業してください。

  3. slccmpt01というファイルをコピーして、PC上に貼り付け。 貼り付け場所はどこでも構いません。
    コピーにはかなり時間がかかるので気長に待ちましょう。
    コピーが完了したら、エクスプローラーとftpiiuを終了します。 ftpiiuはホームボタンを押すと終了できます。このあとWiiUは使用しません。

  4. ShowMiiWadsを起動。
    警告が出てきますが、上を選択。
    起動後、Options → Launuage → Japaneseを選択。
    日本語になります。

    次に、 ツール → Common-Keyを作成を選択。指示に従って"45e"を入力してOK。
    その後、Options → "NANDバックアップのパスを変更"を選択。 先程コピーしたslccmpt01を選択してOK。

    モード → ShowMiiNandを選択すると、Wiiモードに入っていたチャンネル、VC、Wiiウェアが出現します。

  5. チャンネル、Wiiウェアを抽出します。VCだけ吸い出したい方は読み飛ばしてください。 吸い出したいタイトルを選択、右クリック → WADをパック。
    保存するフォルダはお好みで。
    保存されたWADファイルはGCWiiエミュレータの「Dolphin」で起動することができます。
    この方法でVCを抽出すると、Dolphin上でVCを起動できるはずです。(未検証)
    ROMファイルを抽出したい方は、下記方法を実行してください。

  6. 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が出力されています。

  7. 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ファイルが出力されます。
  8. 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ファイルが出力されます。
    • 上記方法でエラーが出る場合
      • romc.pyをダウンロード
        romcファイルをコピーしてromc.pyと同じファイルに保存
        上記ファイルでエクスプローラーのアドレスバーに"cmd"と入力
        py -2 romc.py romc 出力ファイル名.n64
        と入力しEnter。成功するとn64ファイルが出力されるはず...
        筆者の手持ちのN64VCでは2つ目の方法ですべて出力できました。

以下のサイトを参考にさせていただきました。
Wiiバーチャルコンソールからのゲームデータ抽出 - SWEATSHOP 2号店
http://gametricks.blog40.fc2.com/blog-entry-52.html

グランツーリスモ4をPCSX2で高画質にしたい

グランツーリスモ4をPS2エミュ「PCSX2」で、有志が作成したmodを使用して高画質化する方法です。

導入前と導入後の比較はこんな感じ

導入前 導入後

多少キレイになった気がしますね。

用意するもの

  • グランツーリスモ4のISO 各自で吸い出しを行ってください。

  • PS2BIOS
    PS2本体から吸い出せます。各自で吸い出しを行ってください。

  • PCSX2
    Latest Nightlyのバージョンをダウンロード してください。筆者は執筆時点での最新版、1.7.4686を使ってます。 すでにPCSX2を使用している方もバージョンが1.7.2389以上であることを確認してください。

  • Gran Turismo 4 Retexture Mod v2.2
    アップスケールされたテクスチャmodです。
    サイト内リンクからダウンロードしてください。

  • GT4 HD HUD and User Interface Texture pack for PCSX2
    UIをアップスケールしたテクスチャmodです。
    同様にダウンロードしてください。

手順

  1. PCSX2本体、ダウンロードしたmodをそれぞれ解凍します。

  2. PCSX2を起動します。セットアップ画面で言語、PS2BIOS、ISOのディレクトリを自身の環境に合わせて設定してください。

  3. 設定→グラフィック→Texture Replacementを開き、オプションのDump Texturesにチェックを入れます。

  4. GT4を起動します。起動できたらGT4を終了し、再びTexture Replacementを開いてください。Dump Texturesのチェックを外し、Load Texturesにチェックを入れます。

  5. Texture Replacementタブ内、Search Directoryの「開く」をクリックしてください。表示された「SCPS-17001」フォルダを開きます。

  6. 1.で解凍したmodの「replacements」フォルダを「SCPS-17001」フォルダに移動します。

  7. 最後にグラフィック設定です。RenderingタブのMipmappingをOffにします。その他の設定は画像を参照してください。

導入に成功しているとロード画面が変わります。

ブリックしたWiiUのWiiモード(vWii)をNANDバックアップなしで復旧

WiiUWiiモードからVCを抽出しようとしてvWii NAND Restorerを使用したものの、操作を間違えWiiモードのNANDを上書きした結果、Wiiモードがブリックしてしまいました。それをなんとか復旧したので、需要があるかわかりませんが手段を書いておきます。

この方法はWiiモードのNANDバックアップが無い場合の最終手段です。NANDバックアップを取っている場合はそちらから復旧したほうが安全で確実です。

1.vWii Decaffeinatorをダウンロード、解凍してwiiuフォルダをSDカードのルートにコピー

2.HBLでvWii Decaffeinatorを起動し、Light modeを選択、+ボタンを押す。 完了すると本体設定に戻るので、本体更新を行います。このとき、CFWでアップデートブロックされているとうまくいかないらしいので、アップデートは許可しておいてください。

3.本体更新が完了したら再びvWii Decaffeinatorを起動、Regenerate setting.txt を選択、+ボタンを押します。 完了後HBLを終了し、WiiUのホーム画面から Wiiモードを起動できるようになっているはずです。