Affiliate disclosure: This guide contains affiliate links. As an Amazon Associate, we earn from qualifying purchases at no extra cost to you. Learn more.
2026-05-11
Affiliate disclosure: This guide contains affiliate links. As an Amazon Associate, we earn from qualifying purchases at no extra cost to you. Learn more.
In May 2026 the Twilit Realm team released Dusklight, the first major native PC and mobile port of The Legend of Zelda: Twilight Princess. It is built on top of zeldaret/tp, the community decompilation of the original GameCube release that reached 100% match earlier this year. Twilight Princess now runs natively at high resolutions and unlocked frame rates on Steam Deck, Windows handhelds, Android, iOS, and desktop Linux and macOS.
A note on the name. This project launched as Dusk and is now called Dusklight. It is the same project by the same team, and the old GitHub address still redirects to the new one. Guides and videos using the old name are not describing something different.
A few things have changed since we first wrote this guide. The current release is v2.0.0, from 19 September 2026, which added mod support, a built in randomizer and Wii disc support. The project is also in PortMaster now, which brings it to cheap ARM Linux handhelds that were never in scope before. We cover the 2.0 release in detail in Dusklight 2.0's randomizer got the headlines.
This guide covers what Dusklight is, what you need to play it, how it performs on each handheld class, and the legal context you should understand before installing.
If you are new to decomp ports as a concept, start with our decompilation and recompilation explainer and come back here for the Twilight Princess specifics.
Legal Context
Dusklight is distributed as source code and as builds that do not contain any of the game's copyrighted assets. To actually play, you need to supply your own copy of Twilight Princess, extracted from a disc that you legally own.
As of v2.0.0, Dusklight works with every retail GameCube and Wii disc except the Korean Wii release. That covers the NTSC and PAL GameCube versions, the Japanese GameCube version, and the Wii version in its North American revisions 0 and 2, Japanese, and PAL releases.
Two caveats worth knowing before you dig out the Wii copy. The underlying decompilation is only matching for the GameCube build, so a Wii disc still gives you the GameCube version's HUD and conventions, and there are no motion controls. And Twilight Princess HD, the Wii U remaster, is a different game build and is still not supported.
The legality of dumping a disc you own varies by jurisdiction. In some regions personal backups of media you have purchased are permitted. In others they are not, and anti-circumvention rules may apply to optical media. We are not lawyers and this is not legal advice. Research the laws in your jurisdiction before proceeding.
What is universally clear is that distributing the resulting disc image to others is not legal. The image is for personal use only. Dusklight's first launch reads from your image to extract the game's assets onto your device. It does not need the image after that.
Avoid any "easy installer" or pre-packaged Dusklight release that includes a Twilight Princess ISO. Those bundles distribute Nintendo's copyrighted assets and are not legal regardless of where you download them. Only use the official release page linked below.
Only two places are official. The project's README states plainly that its official website is twilitrealm.dev and that any other site is unaffiliated and may be promoting AI generated misinformation. There are several such sites presenting themselves as Dusklight install guides, and they rank for exactly the searches you would run while setting this up. Use twilitrealm.dev or the GitHub releases page and nothing else.
What You Need
- A clean dump of your own Twilight Princess disc. Any retail GameCube or Wii release works except the Korean Wii one.
- A device on a supported platform: Windows, macOS (Intel or Apple Silicon), Linux (x86_64 or ARM64), Steam Deck, Android (ARM64), or iOS. Per the official v2.0.0 release notes.
- 2 GB of free storage minimum after asset extraction.
The Dusklight repository and official builds are at github.com/TwilitRealm/dusklight and the releases page. Always download from there. Mirrors and forks may bundle assets and should be avoided.
Sourcing Your Own Disc Image
This is the part most readers will need to plan for. Our cartridge backup guide covers cartridge-based systems (NES through GBA) but Twilight Princess shipped on optical disc, which uses different tooling.
The mainstream legitimate approach is:
- Use a Wii you own that still has its disc drive. If you are dumping the Wii release of Twilight Princess, any Wii with a working drive can read it. If you are dumping the GameCube release, you need one of the models with backward GameCube compatibility (original Wii, model RVL-001), because the Wii mini and most later revisions cannot read GameCube discs.
- Install the Homebrew Channel via a supported entry point. The current community-maintained guides cover this in depth. Start at the established Wii homebrew documentation. We will not walk through this here.
- Run CleanRip, the standard open-source homebrew disc dumper, from an SD card on the Homebrew Channel. CleanRip writes the disc image to the SD card or an attached USB drive.
- Verify the dump against the redump or no-intro hash for your retail disc to confirm it is intact.
Since v2.0.0 accepts Wii discs, the hardware requirement here got easier. Owning the Wii copy and any working Wii is now enough, where before you needed the GameCube disc and an early Wii model to read it.
We are deliberately keeping this overview light. Wii homebrew evolves and the recommended entry-point exploits change. Use the current community documentation rather than a steps list from a third-party blog. If you do not own a copy of the game and a console that can read it, you do not have a legitimate path to playing Dusklight.
Installing Dusklight on the Steam Deck
The Steam Deck is the strongest handheld target for Dusklight. The Linux x86_64 build runs natively. You do not need Proton.
- Switch to Desktop Mode.
- Open Firefox and download the
linux-x86_64AppImage from the Dusklight releases page. - Put the AppImage in a folder you control, for example
~/Applications/dusklight, and mark it executable. - Copy your verified Twilight Princess disc image into the folder. The README specifies the exact expected filename.
- Run the AppImage once from the terminal to extract assets. After that you can launch it normally.
- In Steam, add Dusklight as a Non-Steam Game so it appears in Gaming Mode with full controller support.
On Steam Deck OLED, expect a locked 60 fps at the device's native resolution with significant headroom. The original GameCube target was 30 fps, so 60 fps is a meaningful jump in feel. If you have an external display, Dusklight will run at higher resolutions without scaling artifacts because the renderer is resolution-native.
For longer sessions on the dock or at the kitchen table, a fast microSD card helps with initial load times if you install Dusklight to the SD card rather than internal storage.
Installing Dusklight on Windows Handhelds
The ROG Ally, Legion Go, MSI Claw, and similar x86_64 Windows handhelds all run the standard Windows build of Dusklight.
- Download the
win32-x86_64zip from the Dusklight releases page. - Extract to a folder of your choice. Avoid Program Files since Dusklight writes its config and save data next to the binary.
- Copy your GameCube disc image into the folder.
- Run the Dusklight executable once. The first launch performs the asset extraction.
- Configure your controller. Most Windows handhelds present as XInput devices and work without remapping.
These devices have more raw GPU headroom than the Steam Deck, so you can push higher internal resolutions or enable any optional graphics enhancements the project ships. Battery life on Windows handhelds is the usual limiter — Dusklight is not a particularly demanding workload, but the Windows host overhead is significant.
For Steam Deck and Windows handheld comparisons, see our standalone guide.
Installing Dusklight on Android Handhelds
Dusklight ships an ARM64 Android build, which is meaningful for the Retroid Pocket family, the AYN Odin family, and similar Android-based devices.
- Download the Android APK from the Dusklight releases page. Sideload it via your file manager. You will need to allow installs from your file manager app in Android settings.
- Place your disc image in a folder Dusklight can access. The README documents the expected path — Android scoped storage rules mean this is more particular than on desktop.
- Launch Dusklight. First-run asset extraction takes a few minutes.
- Map controls. Most Android handhelds with physical controls work out of the box, though some require a one-time button mapping pass inside Dusklight.
Performance on Android handhelds varies more than on PC handhelds because GPU capabilities differ significantly between chipsets. A current-generation Snapdragon G3x Gen 2 or equivalent class device should hold 60 fps at native resolution. Older or budget chipsets may need lower internal resolutions to stay locked. Battery life is generally good — Dusklight runs lighter than a Dolphin-based emulation setup of the same game.
Installing Dusklight on Anbernic and Other ARM Linux Handhelds
This route did not exist when we first wrote this guide, and it is the biggest change.
Dusklight is now in PortMaster as dusklight, packaged as an ARM build and listed for 39 devices. That includes cheap Anbernics, Powkiddy devices, TrimUI handhelds and the R36S family. A GameCube era Zelda running natively on that class of hardware is genuinely remarkable.
- Install PortMaster on your handheld if it is not already there.
- Open PortMaster, find Dusklight, install.
- Supply your own GameCube disc image where the port's readme specifies.
- Launch, and allow time for first-run asset extraction.
PortMaster's build is ARM only, which is why the Steam Deck is not on its device list. Steam Deck owners should use the Linux x86_64 AppImage directly from the project, as covered above.
Be realistic about the bottom of that device list. Being listed means a build is offered for your handheld, not that it holds 60 fps. This is the heaviest thing in PortMaster's decompilation catalogue by a wide margin. Our full list of decomp ports on ARM handhelds puts it in context alongside the lighter options.
Installing Dusklight on iOS
The iOS build is in the v1.0.0 release. Sideloading on iOS requires AltStore, Sideloadly, or another community tool, since Dusklight is not on the App Store. Apple's sideloading rules have shifted over the last two years and the right path depends on your region and device. Check the Dusklight repository for the current recommended sideload route — the project documents what works at any given time.
Performance and Features Worth Knowing
A few things Dusklight does that emulation cannot:
- Unlocked frame rates. The game was designed around 30 fps. Dusklight runs it at any framerate your hardware supports. Some animations and physics were tied to frame rate in the original; Dusklight addresses these where possible. Expect a few visual quirks at very high frame rates as the community continues to fix them.
- Native resolution rendering. No internal framebuffer to upscale. The game renders directly at your display resolution.
- Gyro aiming. Aim with motion controls on devices that support it, including the Steam Deck and most Android handhelds. This is a substantial quality-of-life upgrade for bow sequences.
- Button rebinding. Full input remapping is built in.
- HD asset compatibility. Some mods bring in higher-resolution textures derived from the Wii U HD remaster. These are mods, not bundled assets, and must be installed separately. Since v2.0.0 these stream in with improved caching, which the project says eliminates the load hitching HD packs used to cause.
- A full mod system. As of v2.0.0, mods install as
.duskbundles from an in game browser, and range from texture swaps up to native C++ mods that hook real game functions. This is the thing emulation genuinely cannot do. - A built in randomizer. Also new in v2.0.0. Seeds, presets, shareable permalinks, spoiler logs, item shuffling and entrance randomization, no separate tool required.
- Save management. v2.0.0 added a Save Manager that imports and exports saves, handles
.gciand.rawmemory card files, and takes backups. - Surround sound. 5.1 and 7.1 output, with audio rendering moved from 32kHz up to 48kHz in v2.0.0.
Save data is stored next to the binary on desktop platforms and in app storage on mobile. Back up your save folder if you reinstall, or use the Save Manager.
Common Issues
Dusklight refuses to load my disc image. Verify the hash against a redump or no-intro reference for the retail disc you dumped. A bad dump with read errors will fail the asset extraction step. The Korean Wii release is the one retail disc that is genuinely unsupported, as is Twilight Princess HD.
Performance drops in certain areas. Hyrule Field and a few other large outdoor zones were heavy on original GameCube hardware. Dusklight preserves the same draw-distance behavior, so handheld GPUs that are at the edge of their capability will show frame drops in the same places. Lowering the internal resolution one step usually resolves it.
Controller is detected but Z and L feel wrong. GameCube's Z button maps to different physical buttons on modern controllers depending on layout. Use Dusklight's input rebinding menu to put Z somewhere comfortable for your device.
Frame rate animation glitches. A handful of cutscenes and physics interactions were tied to the original 30 fps timing. The project ships a 30 fps cap option for the small number of moments where this is preferable. The community is patching these case by case.
Should You Bother with Dusklight Over Emulation?
If you are happy with Dolphin and your GameCube emulation setup runs Twilight Princess at a locked frame rate, you do not need Dusklight. The emulated experience on capable hardware is excellent and Dolphin has years of polish.
Dusklight is interesting for four reasons:
- You can run it on hardware that struggles with Dolphin. Native code runs leaner. An Android handheld that can barely hold 30 fps emulating Twilight Princess can comfortably run Dusklight at 60.
- You want gyro aiming and modern input handling without configuring an emulator.
- You want to mod the game. This stopped being a promise with v2.0.0. Dusklight now ships an in game mod browser and three tiers of mod support, up to native C++ mods that hook real game functions directly. Dolphin cannot offer that, because Dolphin does not have the game's functions to hook.
- You want the randomizer without extra tooling. v2.0.0 bundles one, including entrance randomization and adjustable requirements for reaching Hyrule Castle.
For most Steam Deck owners, the answer is "try both and see which one you prefer for this particular playthrough." For owners of mid-range Android handhelds, Dusklight is a clear upgrade.
Related Guides
- Dusklight 2.0's Randomizer Got the Headlines. The Two Lines That Matter Are Buried in the Changelog.
- Retro Game Decompilation and Recompilation, Explained
- How to Back Up Your Own Game Cartridges for Retro Handhelds
- GameCube and Wii Emulation on Handhelds
- Best Handhelds for GameCube Emulation
- Dolphin Setup Guide for Android Handhelds
- Every Decomp Port You Can Play on a Cheap ARM Handheld
- Ship of Harkinian on a Handheld: Full Setup Guide
- PortMaster Complete Guide
- Can Android Handhelds Run Recompiled Games?
Updated 18 September 2026. The project was renamed from Dusk to Dusklight; release version, platform builds and asset names come from its GitHub release data, and PortMaster availability from PortMaster's public port database, both retrieved on that date.

