nunchuck -> nunchuk (#348)
* re-sorted and used BOOL * Added a bit to wpad * roll back time, name PeripheralSpace correctly, and IsMplsAttached use correct callback * name WPADPeripheralSpace correctly again * Add WPADIsMplsIntegrated, correct description of WPADIsMplsAttached * Add KPADEnableMpls(), KPADDisableMpls() and KPADMplsMode enum * Spellings, comments and formatting * Use enum type for KPADEnableMpls param * Add more WPADDataFormat entries (taken from Cemu) * Add WPADiQueue and some WPADi functions * Add WPADGetInfo, WPADGetInfoAsync, and WPADInfo struct (taken from Cemu) * Add a bunch of game data functions and the rest of the WPADiSend functions * Add WPADSpeakerMode and speaker functions * Enum member changes * Add KPADEnable/DisableDPD, add mpls status functions, typedef KPADMplsMode to WPADMplsMode * Update WPADSpeakerMode, add WPADGetSpeakerVolume, WPADSetSpeakerVolume * Add WPADAddress and WPADGetAddress * WPADIsEnabledURC, WPADEnableWBC, WPADIsEnableWBC * Add sync functions, update WPADAddress - Add WPADStartSyncDevice - Add WPADStartSyncDeviceEx - Change variable name * Update WPADExtensionType - Add WPAD_EXT_DEV_NOT_FOUND * Update WPADExtensionType and WPADExtensionCallback, add WPADGetDpdFormat - Add WPAD_EXT_DEV_NOT_FOUND - Add WPAD_EXT_UNKNOWN - WPADExtensionType as param to WPADExtensionCallback * Add PowerSave functions * Changes: - More documentation - More members to WPADMplsMode - WPADLed as bitmask * Slight corrections: - WPADControlLed returns int32 - WPADiHIDParser returns int32 - WPADStartSyncDevice comments fixed * WPADControlSpeakerMode -> WPADControlSpeaker * More appropriate enum names * More info on speaker * typedef WPADAddress, char16_t -> uint16_t, comment updates * Update WPADStartSyncDeviceEx comments
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 byadd_executablewut_create_rpl(target)- Will create an .rpl file from your CMake target generated byadd_executablewut_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