wudd/README.md

57 lines
2.7 KiB
Markdown
Raw Permalink Normal View History

2021-10-16 13:27:19 +02:00
# WUDD - Wii U Disc Dumper
2021-10-09 00:58:55 +02:00
2021-10-16 13:27:19 +02:00
Inspired by [wudump](https://github.com/FIX94/wudump) from FIX94.
2021-10-09 00:58:55 +02:00
2021-10-16 13:27:19 +02:00
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 Wii U Disc as *.app,*.h3, .tmd, .tik, .cert files
2021-10-16 13:27:19 +02:00
- Supports dumping to SD (FAT32) and USB (NTFS only). When dumping to SD the files get slitted in 2 GiB parts.
2022-07-27 19:00:56 +02:00
Files will be dumped to `/wudump/[DISC-ID]/`. The disc id of a game can be found on the disc (e.g. WUP-P-ARDP for the EUR version of Super Mario 3D World). If WUDD fails to determine the disc id, "DISC" with a timestamp will be used instead.
2021-10-16 13:27:19 +02:00
2023-12-24 15:01:09 +01:00
If you want to create a partial dump (skipped sectors represented by 00 bytes) for discs with unreadable sectors, you can avoid the need to manually choose the skip sectors option on each error, by pressing Y at the error message to activate auto skip mode
2021-10-16 13:27:19 +02:00
## 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 game.wux`
2021-10-09 00:58:55 +02:00
## Dependencies
Requires an [Environment](https://github.com/wiiu-env/EnvironmentLoader) (e.g. Tiramisu or Aroma) with [MochaPayload](https://github.com/wiiu-env/MochaPayload) (Nightly-MochaPayload-20220725-155554 or newer)
2021-10-09 00:58:55 +02:00
2021-10-16 13:27:19 +02:00
- [wut](https://github.com/devkitPro/wut)
- [libmocha](https://github.com/wiiu-env/libmocha)
2021-10-09 00:58:55 +02:00
- [libntfs](https://github.com/wiiu-env/libntfs)
## Buildflags
### Logging
Building via `make` only logs errors (via OSReport). To enable logging via the [LoggingModule](https://github.com/wiiu-env/LoggingModule) set `DEBUG` to `1` or `VERBOSE`.
`make` Logs errors only (via OSReport).
`make DEBUG=1` Enables information and error logging via [LoggingModule](https://github.com/wiiu-env/LoggingModule).
`make DEBUG=VERBOSE` Enables verbose information and error logging via [LoggingModule](https://github.com/wiiu-env/LoggingModule).
If the [LoggingModule](https://github.com/wiiu-env/LoggingModule) is not present, it'll fallback to UDP (Port 4405) and [CafeOS](https://github.com/wiiu-env/USBSerialLoggingModule) logging.
2021-10-09 00:58:55 +02:00
## Building using the Dockerfile
It's possible to use a docker image for building. This way you don't need anything installed on your host system.
```
# Build docker image (only needed once)
2022-07-26 08:16:27 +02:00
docker build . -t wudd-builder
2021-10-09 00:58:55 +02:00
# make
2022-07-26 08:16:27 +02:00
docker run -it --rm -v ${PWD}:/project wudd-builder make
2021-10-09 00:58:55 +02:00
# make clean
2022-07-26 08:16:27 +02:00
docker run -it --rm -v ${PWD}:/project wudd-builder make clean
```
## Format the code via docker
2023-12-24 15:01:09 +01:00
`docker run --rm -v ${PWD}:/src ghcr.io/wiiu-env/clang-format:13.0.0-2 -r ./source -i`