Cynthia Coan 6b29dd6ee2
Some checks failed
C/C++ CI / ubuntu-latest (push) Has been cancelled
Add OSGetConsoleType, and MCP_GetSystemMode (#441)
* add OSGetConsoleType, and MCP_GetSystemMode

this adds in two functions that were an exported symbol in the system
libraries, but not included in any headers. these are useful for doing
two things:

- determine what kind of console you're running on (for users who want
  to know if they're running a CAT-DEV, CAT-R, Kiosk Unit, Retail
  Wii-U's, etc.)
- determine if the wii-u is currently running in production/development
  mode. this shouldn't be too useful for many users, as not too much
  changes besides certain extra libraries/etc. are loaded in memory.
  however, users may want to lock things behind development mode as dev
  mode can only be normally enabled when there's extra memory.

* add new comment to mask
2026-03-27 02:17:08 +01:00
2026-02-16 19:10:34 +01:00
2023-11-08 13:55:24 +00:00
2025-06-05 11:06:04 +01:00
2025-06-05 11:06:04 +01:00
2020-05-10 15:59:40 +10:00
2024-12-06 09:17:46 +00:00
2022-08-02 23:07:24 +02:00
2022-08-02 23:07:24 +02:00

Build status

wut

Let's try to make a Wii U Toolchain / SDK for creating rpx/rpl.

Licensed under the terms of the zlib License (see LICENSE.txt).

Install

It is recommended to follow devkitPro's Getting Started guide, which will guide you through setting up a suitable homebrew development environment. devkitPro Pacman is exclusively used to manage installed homebrew development components.

The following command installs all necessary packages for Wii U homebrew development, including wut:

(sudo) (dkp-)pacman -Syu --needed wiiu-dev

Usage

See samples for examples of how to use wut.

devkitPro CMake provides some helpers for your build:

  • wut_create_rpx(target) - Will create an .rpx file from your CMake target generated by add_executable
  • wut_create_rpl(target) - Will create an .rpl file from your CMake target generated by add_executable
  • wut_add_exports(target exports.def) - Will add exports specified in exports.def for the given target

Building wut projects

Building wut projects with make

You can easily build any devkitPro Makefile based wut project with the following commands:

cd samples/make/helloworld
make

Building wut projects with CMake

You can easily build any devkitPro CMake based wut project with the following commands:

cd samples/cmake/helloworld
mkdir build && cd build
/opt/devkitpro/portlibs/wiiu/bin/powerpc-eabi-cmake ../
make

A minimal CMakeLists.txt file for a C++ project might look like:

cmake_minimum_required(VERSION 3.7)
project(helloworld_cpp CXX)

add_executable(helloworld_cpp main.cpp)
wut_create_rpx(helloworld_cpp)

Building from source

It is strongly recommended to stick to stable released packages installed with devkitPro Pacman.

Building wut is simple as running the following commands:

make
(sudo -E) make install
Description
Let's try to make a Wii U Toolchain / SDK for creating rpx/rpl.
Readme 64 MiB
Languages
C 69.9%
C++ 29.5%
Makefile 0.4%
CMake 0.1%
Assembly 0.1%