📈 GH Trending Explorer 🎲 Surprise me

← all repos

centollOS / SwitchWakerHD

git clone https://github.com/centollOS/SwitchWakerHD.git v0.4.7 · 6d ago

Wind Waker HD (Wii U) static recompilation for Nintendo Switch, deko3d renderer. Requires your own game dump.

—
stars, 24h
—
stars, 7 days
+164
stars, 30 days · #1,502
164
★ total
10
forks · 16 open issues

Star history starts 2026-10-20; the chart appears after the second daily snapshot.

LanguageC++
LicenseMPL-2.0
Created2026-10-04 (16d ago)
Last pushtoday
Watchers6
OwnerOrganization

GitHub topics

Links

README excerpt
# SwitchWakerHD
## What it is
SwitchWakerHD is an unofficial native port of a 2013 Wii U adventure game (title ID
`00050000-10143500` USA or `00050000-10143600` Europe, version 0) to the Switch (homebrew). The game's PowerPC code is
translated to C ahead of time by a static recompiler, the Cafe OS libraries the game uses are
reimplemented natively, and its GX2 graphics are drawn with deko3d, the Switch's own GPU API. There
is no CPU emulation and no GPU command emulation.
It is a fork of ZeldaWWHDRecomp, which runs
the same recompilation on macOS, Linux, Windows and Android. Those platforms still build from this
repository; their instructions are in the upstream README, kept as
docs/upstream-README.md. How the recompilation works:
docs/how-it-works.md.
## What you need
- **Your own legally obtained copy of the game**: the USA version (title `00050000-10143500`) or the
 European one (title `00050000-10143600`, in its five languages), version 0 (the disc or eShop release
 without the update), dumped from your own Wii U. The runtime checks `code/cking.rpx` against those
 versions at startup.
- **This repository contains no game code, assets, keys or data.** The NRO you build contains the
 game's code recompiled from your dump, and the shader caches are made from the game's shaders:
 they are for your own use only; do not share them.
- **No release binaries are provided** for the Switch, precisely because they carry the
 recompiled game.
## Build for the Switch
**The short way** (step-by-step guide for players: INSTALL.md):
`python3 tools/switch/make_sd.py --image game.wux` (or `--wua game.wua`, or `--game-dir `)
checks the game version, recompiles, builds the NRO and lays out `build/sd/switch/wwhd/` for the SD card. On
Windows it builds with a native devkitPro, no Docker or WSL needed (INSTALL.md); elsewhere in Docker or Podman.
The steps it runs, by hand:
Requirements: Python 3 with `pycryptodome` (for the extractor), and Docker or Podman (the Switch
toolchain runs in the `devkitpro/devkita64` image). On the Mac also the Xcode command line tools.
 [code] 
`WWHD_JOBS= ` limits parallel compiles (the generated code needs a lot of memory per file);
`WWHD_DEKO3D_DEBUG_LIB=ON` links deko3d's debug library (`wwhd_dk_debug.nro`: every GPU call
checked, readable errors). Details, architecture and the history of the port:
docs/switch-port.md; the renderer: docs/deko3d-plan.md.
### The shader cache
The renderer compiles each game shader with uam the first time it is drawn (about 70 ms on the
console, in a background thread; until then its draws are skipped, so on a first start some textures
stay black for a while) and keeps the result in `shadercache_dksh_local.bin`, so a shader is compiled
once per console. A `shadercache_dksh.bin` next to the NRO is loaded whole at start-up.
**The first start** (docs/background-shaders-plan.md) prepares about three quarters of the game's shaders behind a
loading screen, with no computer and nothing shipped: the title scree