farmerbb / RED-Project

ROM Extraction Documentation Project
181 stars 8 forks source link

Extract ROMs from NES Remix 1 and 2 on the Wii U? #87

Open kjetil-f opened 1 year ago

kjetil-f commented 1 year ago

It seems like it's possible to extract full ROMs from the Ultimate NES Remix on 3DS, so I'm assuming they can be found inside the Wii U versions as well. Has anyone successfully done this?

nitro322 commented 1 year ago

Hello. I was able to get these ROMs extracted. It's a bit of a hassle, though, especially if you want to convert them into playable ROMs. Note that I'm starting with a copy of the NES Remix Pack disc ripped by wudump, which should also provide the necessary key files. Note also that I'm doing this on Linux; other/easier tools may be available on Windows.

I used this tool: https://github.com/Maschell/JWUDTool/releases

I'm starting with the following files: game.wud game.key common.key

This command will extract and decrypt all contents from the WUD: java -jar /path/to/JWUDTool.jar -extract content -decrypt -in game.wud -out out

You'll find the extracted ROMs here: out/GM0005000010162800000000000000/content/emu/

The Cutting Room Floor contains a list of file names and game titles: https://tcrf.net/Notes:NES_Remix_Pack

Note that these files are not usable as is. Doing a little research I found this page describing how the headers need to be converted from TNES to iNES: https://web.archive.org/web/20200613082425/https://github.com/aspargas2/3DS-Tutorials/wiki/Ultimate-NES-Remix-ROMs-Extraction

I think that was written for the 3DS versions, though, as these were a bit different. I needed to make two changes to the one ROM I tested (F_DOCTORJ.bin):

  1. Strip the first 48 bytes of the file, which appears to be some junk relating to Wii U emulation: dd if=F_DOCTORJ.bin of=drmario.nes bs=1 skip=48

  2. Hex edit the file so the first 8 bytes matches what's shown in the TCRF page for Dr. Mario: 4E 45 53 1A 02 04 10 00. Specifically, I needed to change the fourth byte from 00 to 1A and the seventh byte from 12 to 10.

There appears to be another 32 bytes of junk data at the end of the file, but this was enough to get the game to load in the retroarch mesan core.

Hope this helps!

Tcm0 commented 1 year ago

Hello. I was able to get these ROMs extracted. It's a bit of a hassle, though, especially if you want to convert them into playable ROMs. Note that I'm starting with a copy of the NES Remix Pack disc ripped by wudump, which should also provide the necessary key files. Note also that I'm doing this on Linux; other/easier tools may be available on Windows.

I used this tool: https://github.com/Maschell/JWUDTool/releases

I'm starting with the following files: game.wud game.key common.key

This command will extract and decrypt all contents from the WUD: java -jar /path/to/JWUDTool.jar -extract content -decrypt -in game.wud -out out

You'll find the extracted ROMs here: out/GM0005000010162800000000000000/content/emu/

The Cutting Room Floor contains a list of file names and game titles: https://tcrf.net/Notes:NES_Remix_Pack

Note that these files are not usable as is. Doing a little research I found this page describing how the headers need to be converted from TNES to iNES: https://web.archive.org/web/20200613082425/https://github.com/aspargas2/3DS-Tutorials/wiki/Ultimate-NES-Remix-ROMs-Extraction

I think that was written for the 3DS versions, though, as these were a bit different. I needed to make two changes to the one ROM I tested (F_DOCTORJ.bin):

  1. Strip the first 48 bytes of the file, which appears to be some junk relating to Wii U emulation: dd if=F_DOCTORJ.bin of=drmario.nes bs=1 skip=48
  2. Hex edit the file so the first 8 bytes matches what's shown in the TCRF page for Dr. Mario: 4E 45 53 1A 02 04 10 00. Specifically, I needed to change the fourth byte from 00 to 1A and the seventh byte from 12 to 10.

There appears to be another 32 bytes of junk data at the end of the file, but this was enough to get the game to load in the retroarch mesan core.

Hope this helps!

Do you know how to extract the Famicom Disc System ROMs? I removed the first few lines, the big 0-block at the end, renamed them to .qd and converted them with qd2fds.py, but many of them are broken

DrAzathoth commented 11 months ago

Hello. I was able to get these ROMs extracted. It's a bit of a hassle, though, especially if you want to convert them into playable ROMs. Note that I'm starting with a copy of the NES Remix Pack disc ripped by wudump, which should also provide the necessary key files. Note also that I'm doing this on Linux; other/easier tools may be available on Windows. I used this tool: https://github.com/Maschell/JWUDTool/releases I'm starting with the following files: game.wud game.key common.key This command will extract and decrypt all contents from the WUD: java -jar /path/to/JWUDTool.jar -extract content -decrypt -in game.wud -out out You'll find the extracted ROMs here: out/GM0005000010162800000000000000/content/emu/ The Cutting Room Floor contains a list of file names and game titles: https://tcrf.net/Notes:NES_Remix_Pack Note that these files are not usable as is. Doing a little research I found this page describing how the headers need to be converted from TNES to iNES: https://web.archive.org/web/20200613082425/https://github.com/aspargas2/3DS-Tutorials/wiki/Ultimate-NES-Remix-ROMs-Extraction I think that was written for the 3DS versions, though, as these were a bit different. I needed to make two changes to the one ROM I tested (F_DOCTORJ.bin):

  1. Strip the first 48 bytes of the file, which appears to be some junk relating to Wii U emulation: dd if=F_DOCTORJ.bin of=drmario.nes bs=1 skip=48
  2. Hex edit the file so the first 8 bytes matches what's shown in the TCRF page for Dr. Mario: 4E 45 53 1A 02 04 10 00. Specifically, I needed to change the fourth byte from 00 to 1A and the seventh byte from 12 to 10.

There appears to be another 32 bytes of junk data at the end of the file, but this was enough to get the game to load in the retroarch mesan core. Hope this helps!

Do you know how to extract the Famicom Disc System ROMs? I removed the first few lines, the big 0-block at the end, renamed them to .qd and converted them with qd2fds.py, but many of them are broken

You did the exact same thing I did. I guess they are different ROM revisions.