Go to file
2023-01-06 18:24:35 +01:00
.github/workflows Update CI to use actions/checkout@v3 2023-01-04 17:53:34 +01:00
source Avoid streams in ELFIO to redcude the binary size 2023-01-04 17:53:34 +01:00
wumsloader Add WUMS 0.3.2 support 2023-01-06 18:24:35 +01:00
.clang-format Format the code via clang-format 2022-02-04 21:48:37 +01:00
.gitignore Code cleanup 2021-09-18 11:55:01 +02:00
Dockerfile Add WUMS 0.3.2 support 2023-01-06 18:24:35 +01:00
LICENSE Add LICENSE 2022-09-04 17:52:42 +02:00
Makefile Rewrite of the WUMSLoader to simplify the code and have more memory for modules 2022-05-07 23:15:17 +02:00
README.md Avoid streams in ELFIO to redcude the binary size 2023-01-04 17:53:34 +01:00

CI-Release

Wii U Module System Loader

This is a payload that should be run with EnvironmentLoader.

Usage

Put the 10_wums_loader.rpx in the fs:/vol/external01/wiiu/environments/[ENVIRONMENT]/modules/setup folder of your sd card and use the EnvironmentLoader to run this setup payload.

Put modules (in form of .wms files) that should be used a main()-hook into fs:/vol/external01/wiiu/environments/[ENVIRONMENT]/modules/.

The area between 0x00809000 and 0x00FFF000 will be used.

Buildflags

Logging

Building via make only logs errors (via OSReport). To enable logging via the LoggingModule set DEBUG to 1 or VERBOSE.

make Logs errors only (via OSReport).
make DEBUG=1 Enables information and error logging via LoggingModule.
make DEBUG=VERBOSE Enables verbose information and error logging via LoggingModule.

If the LoggingModule is not present, it'll fallback to UDP (Port 4405) and CafeOS logging.

Building

Make you to have wut and WiiUModuleSystem installed and use the following command for build:

make install

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)
docker build . -t wumsloader-builder

# make 
docker run -it --rm -v ${PWD}:/project wumsloader-builder make

# make clean
docker run -it --rm -v ${PWD}:/project wumsloader-builder make clean

Format the code via docker

docker run --rm -v ${PWD}:/src wiiuenv/clang-format:13.0.0-2 -r ./source ./wumsloader/src -i --exclude ./wumsloader/src/elfio -i

Credits

  • Maschell
  • Copy paste stuff from dimok
  • Copy pasted the solution for using wut header in .elf files from RetroArch
  • Copy pasted resolving the ElfRelocations from decaf