How to Install Dusk on Windows (Twilight Princess PC Port Guide)
Install Dusk — the Twilight Princess native PC port — on Windows 10 or 11. Verified file paths, real settings menus, and hash verification walkthrough.
This guide walks you through installing Dusk — the native Twilight Princess PC port released by TwilitRealm on May 9, 2026 — on a Windows 10 or 11 machine.
Time required: ~10 minutes (if your disc is already dumped) Difficulty: Easy
Before You Start
You need three things:
1. A 64-bit Windows 10 or 11 PC
Dusk only ships a 64-bit (x86_64) Windows binary. There is no 32-bit version.
2. Any of seven graphics backends
Dusk supports D3D12, D3D11, Metal (irrelevant on Windows), Vulkan, OpenGL, OpenGL ES, and WebGPU. If your GPU was made in roughly the last 10 years and has up-to-date drivers, you’ll be fine. The default backend can be changed in Settings → Prelaunch → Graphics Backend if the auto-pick doesn’t work for you.
3. Your own GameCube Twilight Princess disc dump
Dusk does not include game files. You must legally dump your own retail GameCube disc. If you don’t have a dump yet, follow How to dump your TP disc legally first.
Dusk v1.0.0 accepts only:
- NTSC-U (USA), Game ID
GZ2E01, SHA-175edd3ddff41f125d1b4ce1a40378f1b565519e7 - PAL (Europe / Australia), Game ID
GZ2P01, SHA-12601822a488eeb86fb89db16ca8f29c2c953e1ca
NTSC-J and Wii dumps are recognized but rejected at v1.0.0 (you’ll see “The selected game is not supported by Dusk”). Wii / Japanese support is on the roadmap.
Supported disc image formats: ISO, GCM, CISO, GCZ, NFS, RVZ, WBFS, WIA, TGC.
Step 1 — Download Dusk
- Go to the official releases page: github.com/TwilitRealm/dusk/releases
- Find the latest release (currently v1.0.0)
- Under Assets, download
Dusk-v1.0.0-win32-x86_64.zip(~33 MB)
⚠️ Only download from the official GitHub releases page or twilitrealm.dev. Avoid third-party “free download” sites and torrents — they may bundle malware or be modified.
Verified SHA-256 of the official Windows download:
fe0a3a10ab0cb5598119a499ae9113b9988e51a78a64cc79ba36a0110e7a4917
You can verify in PowerShell:
Get-FileHash -Algorithm SHA256 .\Dusk-v1.0.0-win32-x86_64.zip
Step 2 — Extract the Archive
Right-click the ZIP and choose Extract All…, or use 7-Zip / WinRAR.
Extract to a folder you’ll remember. Reasonable choices:
C:\Games\Dusk\D:\Emulation\Dusk\
Avoid these locations:
C:\Program Files\— UAC permissions can cause issues with config / saves- Folders synced by OneDrive / Dropbox — file conflicts can corrupt saves
- Paths with non-English characters on a Windows account where the username itself is non-English (this is a known v1.0.0 launch failure — see issue #807)
Step 3 — Verify Your ROM Dump
Before launching Dusk, verify your disc dump’s SHA-1 matches a supported version. This avoids the most common first-time failure.
In PowerShell, navigate to the folder containing your disc image and run:
Get-FileHash -Algorithm SHA1 .\your-dump.iso
(Replace your-dump.iso with your actual filename.)
The output should match exactly:
75EDD3DDFF41F125D1B4CE1A40378F1B565519E7(NTSC-U)2601822A488EEB86FB89DB16CA8F29C2C953E1CA(PAL)
If neither matches, your dump is one of:
- Wrong region (NTSC-J / Wii / Korea — not supported in v1.0.0)
- Corrupted (re-dump with CleanRip’s checksum verification on)
- A “scene” release with modifications
Note: Dusk internally uses XXH128 hashes (not SHA-1) for its built-in verification. The SHA-1 above is for you to verify externally. If your SHA-1 matches, your XXH128 will also match.
Step 4 — Launch Dusk for the First Time
- Double-click
Dusk.exeinside the extracted folder - Windows SmartScreen may warn that the publisher is unverified. Click More info → Run anyway. This is normal for any unsigned application; Dusk is open-source and not code-signed.
- The Dusk prelaunch menu opens. The main button reads
Select Disc Image. - Click it. A native Windows file dialog opens with filter “Game Disc Images” (extensions:
iso, gcm, ciso, gcz, nfs, rvz, wbfs, wia, tgc). - Browse to your disc dump and select it.
- Dusk opens a “Verifying disc image” overlay while it computes the XXH128. This takes a few seconds.
- The status line below the button updates to “Disc ready.”
- The main button now reads
Play. Click it to start the game.
If verification fails, you’ll see one of these exact messages:
"The selected disc image could not be validated.""Unable to read the selected file.""The selected file is not a valid disc image.""The selected game is not supported by Dusk.""Dusk currently supports GameCube USA and PAL disc images only.""The selected disc image did not pass hash verification. It may be corrupt or..."
In each case, see SHA-1 mismatch troubleshooting for fixes.
Step 5 — Configure Your Controller
The exact path is:
Settings → Input → Controller → Configure Controller
This opens a per-port window with tabs labelled Port 1, Port 2, … and pages Controller / Buttons / Triggers / Sticks / Rumble. There’s also an Options section with Enable Dead Zones and Emulate Triggers toggles.
Most modern controllers work plug-and-play:
| Controller | Notes |
|---|---|
| Xbox Wireless / Xbox Series | Plug-and-play |
| DualShock 4 / DualSense | Native, gyro works |
| Switch Pro Controller | Native, gyro works |
| 8BitDo Pro 2 / Ultimate | Native, gyro works |
| GameCube via Mayflash | Works, detected as standard gamepad |
⚠️ Known issue: If you have a Nintendo WUP-028 GameCube USB adapter connected, do not select a non-GCN controller from the dropdown — it triggers a known v1.0.0 bug (#810) that creates a 4 GiB junk file. Disconnect the adapter or pick the correct controller.
To enable gyro aim (DS4, DualSense, Pro Controller, 8BitDo Pro 2):
Settings → Input → Gyro → Gyro Aim → toggle on
To use mouse aim instead:
Settings → Input → Gyro → Gyro Input Method → set to
Mouse
Optional · Migrate Saves from Dolphin
Dusk reads standard GameCube .gci save files. If you’ve been playing in Dolphin, you can carry your save over.
From the official Dusk FAQ (twilitrealm.dev/faq):
“Just copy the
01-GZ2*-gczelda2.gcifile from Dolphin to Dusk.”
The actual paths:
- Dolphin save folder (default):
Documents\Dolphin Emulator\GC\USA\Card A\- Filename:
01-GZ2E01-gczelda2.gci(or01-GZ2P01-…for PAL)
- Filename:
- Dusk save folder:
%APPDATA%\TwilitRealm\Dusk\USA\Card A\- Replace
USAwithEURif you’re playing the European disc
- Replace
Copy the file from Dolphin’s folder into Dusk’s. Restart Dusk; the save appears in the in-game load menu.
If your Dolphin saves are in .raw format instead of .gci, use Dolphin’s Memory Card Tool to extract individual .gci files first. Alternatively, switch Dusk’s save format in Settings → Prelaunch → Save File Type to Card Image (which uses .raw).
Common Errors & Fixes
”The selected game is not supported by Dusk.”
You loaded a Wii, Japanese, Korean, or other unsupported disc image. v1.0.0 only accepts GameCube USA + PAL. Wii / NTSC-J support is planned but not yet shipped.
”The selected disc image did not pass hash verification…”
Your dump is corrupted, modified, or the wrong region. Re-dump with CleanRip and checksum verification.
Silent launch failure on a Windows account with non-English username
Known issue #807. The current workaround is to launch Dusk from a Windows account with an English-only username, or extract Dusk to a path that doesn’t pass through the user folder.
Black screen with audio
Try changing the Graphics Backend: Settings → Prelaunch → Graphics Backend → cycle through D3D12, D3D11, Vulkan, OpenGL until something works.
Game stutters at unlocked framerate
There is a known pulsating bloom bug with Unlock Framerate enabled (#825). Either lock the framerate (turn off Settings → Video → Rendering → Unlock Framerate) or accept the visual artifact for now.
For other issues, check the Dusk GitHub issues page before posting in their Discord.
What to Try Next
- 🎨 Install the Henriko Magnifico 4K texture pack
- 🏆 See the full achievement list (including “Thank You Berry Much” and “Heavy Hitter”)
- ⏱️ Set up the speedrun timer
- ⚡ Turbo Key shortcut — Hold Tab for up to 4× game speed
- 📰 Verified known issues at v1.0.0
Last updated: 2026-05-10. We update this guide when Dusk patches change install behavior.