diff --git a/Makefile b/Makefile index 42cd5bc..fed3898 100644 --- a/Makefile +++ b/Makefile @@ -17,7 +17,7 @@ include $(DEVKITPRO)/wut/share/wut_rules # DATA is a list of directories containing data files # INCLUDES is a list of directories containing header files #------------------------------------------------------------------------------- -TARGET := wudump +TARGET := wudd BUILD := build SOURCES := source \ source/fs \ diff --git a/README.md b/README.md index cc1d837..900f5bf 100644 --- a/README.md +++ b/README.md @@ -1,14 +1,25 @@ -# Wudump +# WUDD - Wii U Disc Dumper -RPX version of [wudump](https://github.com/FIX94/wudump). +Inspired by [wudump](https://github.com/FIX94/wudump) from FIX94. -Supports dumping as [WUX](https://gbatemp.net/threads/wii-u-image-wud-compression-tool.397901/) and WUD, but only to NTFS formatted USB drives and without dumping the `game.key`. +Features: +- Dump a Wii U Disc in WUD (uncompressed) or [WUX](https://gbatemp.net/threads/wii-u-image-wud-compression-tool.397901/) (loseless compression) format (including the game.key) +- Dump the GM Partitions (Game, Updates, DLCs) of an WiiU Disc as *.app,*.h3, .tmd, .tik, .cert files +- Supports dumping to SD (FAT32) and USB (NTFS only). When dumping to SD the files get slitted in 2 GiB parts. + +Files will be dumped to `/wudump/[DISC-ID]/`. The DiscID of a game can be found on the disc (e.g. WUP-P-ARDP for the EUR version of Super Mario 3D World). + +## How to merge splitted files + +When you dump a .wux or .wud to the SD card it gets splitted into 2 GiB parts (FAT32 limitation). To merge them you can use the `copy` cmd tool. + +Example: +`copy /b "game.wux.part1" + "game.wux.part2" "C:\wudump\game.wux"` ## Dependencies -- [wut](https://github.com/decaf-emu/wut) +- [wut](https://github.com/devkitPro/wut) - [libiosuhax](https://github.com/wiiu-env/libiosuhax) -- [libfat](https://github.com/wiiu-env/libfat) - [libntfs](https://github.com/wiiu-env/libntfs) ## Building using the Dockerfile @@ -17,11 +28,11 @@ It's possible to use a docker image for building. This way you don't need anythi ``` # Build docker image (only needed once) -docker build . -t wudump-builder +docker build . -t WUDD-builder # make -docker run -it --rm -v ${PWD}:/project wudump-builder make +docker run -it --rm -v ${PWD}:/project WUDD-builder make # make clean -docker run -it --rm -v ${PWD}:/project wudump-builder make clean +docker run -it --rm -v ${PWD}:/project WUDD-builder make clean ``` \ No newline at end of file diff --git a/source/ApplicationState.h b/source/ApplicationState.h index dc43df1..fd7f047 100644 --- a/source/ApplicationState.h +++ b/source/ApplicationState.h @@ -48,14 +48,14 @@ public: } virtual void printHeader() { - WiiUScreen::drawLine("Wudump"); + WiiUScreen::drawLine("WUDD - Wii U Disc Dumper"); WiiUScreen::drawLine("=================="); WiiUScreen::drawLine(""); } virtual void printFooter() { - ScreenUtils::printTextOnScreen(CONSOLE_SCREEN_TV, 0, 27, "By Maschell"); - ScreenUtils::printTextOnScreen(CONSOLE_SCREEN_DRC, 0, 17, "By Maschell"); + ScreenUtils::printTextOnScreen(CONSOLE_SCREEN_TV, 0, 27, "Created by Maschell, inspired by wudump from FIX94"); + ScreenUtils::printTextOnScreen(CONSOLE_SCREEN_DRC, 0, 17, "Created by Maschell, inspired by wudump from FIX94"); } diff --git a/source/main.cpp b/source/main.cpp index 168fb88..bf8b31b 100644 --- a/source/main.cpp +++ b/source/main.cpp @@ -13,7 +13,6 @@ #include "utils/WiiUScreen.h" #include "input/VPADInput.h" #include "MainApplicationState.h" -#include "common/common.h" void initIOSUHax(); @@ -23,7 +22,6 @@ void main_loop(); bool sIosuhaxMount = false; - int main(int argc, char **argv) { WHBLogUdpInit(); DEBUG_FUNCTION_LINE("Hello from wudump!"); @@ -32,9 +30,6 @@ int main(int argc, char **argv) { initIOSUHax(); - //DEBUG_FUNCTION_LINE("init fat"); - //fatInitDefault(); - uint32_t isAPDEnabled; IMIsAPDEnabled(&isAPDEnabled);