The Legend of Zelda: The Wind Waker (USA GameCube disc, GZLE01) as a
native Windows game: recompiled code, a real 60 fps, true 16:9 widescreen,
controller support and a cutscene skip. You build it from your own disc;
nothing from the game is included.
Deep Sea is a fork of ModernGekko, a runtime for GameCube/Wii recompilations.
Website: https://ah64-dll.github.io/DeepSea/ · Download: latest release
- Download
DeepSea-*-win64.zipfrom Releases and unzip it. - Run
DeepSea.exe(orPlay Deep Sea.cmd) and choose your own extracted USA disc. The launcher can also unpack an ISO, WBFS or RVZ of your copy. - The first launch builds the game module from your disc. This takes about 10 minutes, depending on your CPU, and shows a progress bar. Later launches start right away.
Requirements: Windows 10/11 x64, a Vulkan 1.1 GPU, and about 2 GB of free
space during setup. The full players' guide is
packaging/README-PLAYERS.md.
The recompiled module (gGZLE01_recomp.dll) is never shipped. Releases carry
a setup kit (scripts/disc_builder) that
translates the game's code from the player's own disc, on the player's PC:
- It checks the disc files against SHA-256 hashes in
gzle01.json. - It translates
main.doland the 415 REL modules with DolRecomp. - It verifies the translated C against the hashes of the tested build.
- It compiles the result with a bundled llvm-mingw for the player's CPU.
This repository and the release downloads contain no disc images, extracted game files, translated game code, artwork, audio or save data. Game-specific knowledge is limited to guest addresses the runtime and mods hook, and hashes.
| Mod / system | What it does | Off switch |
|---|---|---|
mods/frame60-accum |
Renders interpolated frames at 60 fps, locked to the display refresh; drops to 30 fps on slow PCs instead of slowing the game | MODERNGEKKO_FRAME60_ACCUM=0 |
mods/widescreen16x9 |
Native port of the GZLE01 widescreen code: wider camera and relocated HUD | aspect_ratio=4:3 or MODERNGEKKO_WIDESCREEN=0 |
mods/cutscene-skip |
Hold Z + Start to skip cutscenes | MODERNGEKKO_CUTSCENE_SKIP=0 |
| Launcher | Disc/ISO picker, controller remapping, graphics options, savestates, first-launch game setup |
Implementation notes are in docs/WINDOWS-PORT-STATUS.md.
Requirements: llvm-mingw (UCRT,
x86_64) on PATH, CMake 3.20+, Ninja, Git and Python 3.
git clone --recursive https://github.com/AH64-dll/DeepSea
cd DeepSea
cmake --preset windows-mingw-release-opt
cmake --build build-windows/build-windows-mingw-release-optAssemble a release with the setup kit:
python scripts/disc_builder/make_kit.py --out kit \
--dolrecomp build-windows/build-windows-mingw-release-opt/dolrecomp.exe \
--python-embed python-3.x-embed-amd64.zip --toolchain <llvm-mingw dir>
scripts/package-release.sh --build-dir build-windows/build-windows-mingw-release-opt \
--builder-kit kit --out distDeep Sea is free software under the GNU GPL v3 (see LICENSE). The
vendored Dolphin code is GPLv2-or-later, and the third-party notices live
beside their sources. The Legend of Zelda and The Wind Waker are trademarks of
Nintendo. This is an unofficial fan project, not affiliated with or endorsed
by Nintendo. You need your own legally obtained copy of the game.
The engine underneath is ModernGekko, a general runtime for GameCube/Wii recompilations. The rest of this file is its documentation.
The runner loads code mods from Mods beside the executable and from <user-dir>/Mods by default. It accepts package directories named <id>.mgm containing mod.so, mod.dll, or mod.dylib, and development libraries named <id>.mgm.so, <id>.mgm.dll, or <id>.mgm.dylib. Use --mods <directory> for another location or --no-mods to disable loading.
The mod ABI supports dependency ordering, minimum versions, optional dependencies, imports and exports, entry and return hooks, normal and forced function patches, events and callbacks, load callbacks, and exact disc/CPU ABI validation. Netplay fingerprints include every loaded package binary and its filename.
DolRecomp's optional MAP input emits named address constants for code mods. Literal addresses remain supported when a game has no MAP file. See mod-template for a minimal package.
SpecialK / aharonahdoot - RecompCore (referenced heavily)
The Dolphin Team - Foundation of this repo
Literally God / MrPoloGit - Making the Recomp template and adding MacOS support
AH64-dll - Deep Sea, the Wind Waker port in this fork (60 fps, widescreen, disc builder)
zeldaret/tww - The Wind Waker decompilation. Deep Sea's hooks, fixes and native helpers rely on its work on the game's code.
