Skip to content
Chasing Aurora screenshot, by Broken Rules (game developer)
Chasing Aurora screenshot, by Broken Rules (game developer) Image by Broken Rules, via Wikimedia Commons (CC BY-SA 3.0).

WEMU

WII U EMULATOR

WEMU

WEMU is an open-source Wii U emulator targeting Linux. It implements a PowerPC interpreter, ELF/RPX loader, and a Vulkan renderer (in progress). The project includes a Qt6/QML launcher and aims to provide a phone-as-GamePad web app.

Wii UPRIMARY SYSTEM
2025PROJECT BEGAN
Open sourcePROJECT MODEL

WHY IT MATTERS

Why WEMU exists

WEMU aims to produce a Linux-native, open-source Wii U emulator that focuses on an accurate PowerPC interpreter and modern Vulkan rendering, plus a companion web app that can stream the GamePad display to a phone so the physical GamePad is not required.

BEST FOR

Notable features

PowerPC interpreter and big-endian ELF/RPX loader; Vulkan renderer component (in development); Qt6/QML launcher and SDL2 input integration; developer-facing ISA reference and tooling to add/verify PowerPC instructions.

F-Zero gameplay on Wii U
Gameplay from F-Zero in the Wii U Virtual Console release.

The people behind WEMU

History & status

WEMU is a new project with active development on GitHub (Robouch0/WEMU). The repository and developer portal show work implementing the ELF/RPX loader, a PowerPC interpreter, RPX support, and basic input. The Vulkan renderer and GUI components are listed as in-progress or planned; the README explicitly states the project is not yet playable and targets a public beta (README text indicates a target/beta timeline). The code is MIT-licensed and development is Linux-first (Ubuntu/Debian, Fedora, Arch instructions provided).

What WEMU supports

  • Wii U (target platform — emulates Wii U binaries/RPX and PowerPC CPU behavior)
  • Linux distributions: Debian/Ubuntu, Fedora, Arch (build instructions provided)
  • Vulkan renderer (in-progress)
  • SDL2 input (gamepad/USB support planned/implemented)

Download and availability

OFFICIAL DOWNLOADS

Get WEMU

Official source and release artifacts are published on the project's GitHub repository and Releases page. The canonical repository is https://github.com/Robouch0/WEMU and releases are available from the Releases section of that repository.

Get WEMU ↗

DOCUMENTATION

Official documentation

Read the official configuration, compatibility, and troubleshooting material before changing advanced options.

Read official documentation ↗
Broken or missing download? Emulator projects move and official links sometimes change. Please contact Retro Replay so the source can be verified and updated.

WEMU setup guide

Setup note: The project is Linux-only and intended to be built from source. Follow these steps to prepare a development or test build. This guide follows the project's documented quick-start and manual build instructions; adjust package names to match your distribution and install only from the official repository or releases.

  1. 1) Get the source: Clone the official repository: git clone https://github.com/Robouch0/WEMU.git && cd WEMU. Use the repository you cloned as the canonical source of code and documentation.
  2. 2) Use the provided setup script (recommended): Run ./setup.sh from the repository root. The script detects common Linux distributions and installs required system dependencies then builds core, gui, and the Vulkan renderer. Typical usage: ./setup.sh (options: –test, –no-build, –clean, –build-type Release, –jobs N). After a successful build, GUI binary is reported under ./cmake-build-debug/gui/wemu and the Vulkan renderer under ./vulkan/build/.
  3. 3) Manual build (core + GUI): Install distribution packages first. Example Debian/Ubuntu packages from the project's README: sudo apt install cmake ninja-build g++ zlib1g-dev libvulkan-dev libglfw3-dev libsdl2-dev qt6-base-dev qt6-declarative-dev glslang-tools ninja-build ccache. Then: mkdir cmake-build-debug && cd cmake-build-debug; cmake .. -DCMAKE_BUILD_TYPE=Debug; cmake –build . -j$(nproc). The core build artifacts include unit tests and an executable test runner (used with ctest).
  4. 4) Build Vulkan renderer separately: From repository root: cd vulkan && mkdir build && cd build; cmake ..; cmake –build . -j$(nproc). Ensure your system has a working Vulkan SDK/driver and libvulkan-dev (distribution package names vary).
  5. 5) Run tests to verify core: From cmake build directory: ctest –output-on-failure or run a specific test binary, e.g. ./wemu_tests –gtest_filter=InstructionTest.ADD_NoOE_NoRc. The developer portal and README provide instruction/ISA tests.
  6. 6) Input and GamePad: WEMU uses SDL2 for gamepad/USB input. The project documents a phone-as-GamePad web app concept; the developer portal links to the web app resource. Check the repository's gui and vulkan components and the docs for the current status of the web GamePad feature.
  7. 7) Practical notes and requirements: WEMU does not include commercial Wii U games, system firmware, cryptographic keys, or other proprietary Nintendo assets. If you wish to run commercial titles, obtain any required titles, firmware, and keys legally and place them where WEMU expects them (the repository documents supported file formats such as RPX/ELF and RPX SHF_DEFLATED parsing). Ensure your GPU drivers support Vulkan and you have the development packages installed for your distribution.
  8. 8) Where to get releases and report issues: Download official release artifacts from the repository's Releases page on GitHub (the repository's Releases tab). Open issues and pull requests via the project's GitHub Issues/PRs. Follow the contributing guide in the repo for development workflow.

Software reminder: WEMU is a developer-focused, source-first project and does not distribute Nintendo games, firmware, or keys. Users must provide any required game data or system files themselves and comply with local law.

Sources and further reading

Detailed guides and tutorials

Explore step-by-step guides for WEMU as they are published.