Skip to content

SwitchWakerHD v1.2.0

Choose a tag to compare

@Pulpparty Pulpparty released this 04 Nov 22:15
· 24 commits to main since this release
274f696

Installing on Windows? Use v1.2.1: v1.2.0's Windows builds miss the PGO speed-up (#118).

SwitchWakerHD runs The Wind Waker HD (Wii U, version 0: USA 00050000-10143500 or Europe 00050000-10143600) natively on a Switch with custom firmware: the game's code is statically recompiled to C and drawn with deko3d. No emulation.

No game inside, no binaries. Every build carries the game's code recompiled from your own dump, so you build it on your computer and copy the result to your SD card. Do not share what you build.

Install

  • Windows 10/11: download SwitchWakerHD-Installer.exe below and run it.
  • macOS: download SwitchWakerHD-Installer-macOS-*.zip (Apple silicon or Intel), unzip it and open the app (the first time: System Settings > Privacy & Security > Open Anyway).
  • Linux: download SwitchWakerHD-Installer-linux-*.tar.gz, extract it and start the installer.
  • By hand (any system): download SwitchWakerHD-v1.2.0.zip, unzip it and follow INSTALL.md:
    python3 tools/switch/make_sd.py --image game.wux      # or --wua game.wua, or --game-dir <extracted game>

Updating from v1.1.0: run the installer again (or make_sd.py) and copy the result over the old one. Your saves and settings stay. From this version on, the installer remembers your game and options: next time it offers "Update to vX" in one click (#110).

What's new since v1.1.0

Faster (#90, #106)

  • Builds tuned for the console (PGO): the installers now download a profile recorded on a real Switch for your region (USA or Europe) and build the game with it. The game's own code runs noticeably faster, most of all in busy places like Outset's village, where the frame rate holds much closer to 30. Built by hand without the profile, the game works the same, only without that gain.
  • The game now also uses the console's fourth core: its worker threads can run there, so the main thread waits less for them, and shaders compiled in the background no longer compete with the game for its cores. To get it, install the HOME-screen icon (the forwarder .nsp the installer makes) once more; the old one keeps working, on three cores.

The installers remember your choices (#110)

  • After a successful install, the installer keeps your game, options and the release it built. When a newer release is out, its first page offers "Update to vX": one click builds it with the same choices. A saved file that is gone is named there instead.

Smoother first sessions (#102)

  • When the installer has prepared the graphics, the game no longer starts its background shader list on the next starts. That list read the game's shader files again from the SD card and compiled shaders the prepared cache already makes unnecessary, which caused stutter while it ran.

The settings menu in Italian, German and French (#86)

  • The in-game settings menu (Minus) now follows the game's language in all six of its languages: English, Spanish, French, Italian, German and Brazilian Portuguese.

The frame rate in Status Monitor and Ultrahand

  • With SaltyNX installed, the console's frame rate overlays now show the game's frame rate and resolution (they showed nothing before: SaltyNX never loads into homebrew).

Up to date with upstream ZeldaWWHDRecomp (v0.5.0 and later)

  • The third sync with ZeldaWWHDRecomp's development branch brings its fixes and new options to the Switch (in the settings menu: Link's name, story items, menu sounds), with the Switch's speed kept.

Fixed

  • Edge smoothing (FXAA) no longer adds an extra GPU wait every frame, and frees its extra 3.5 MB image when dynamic resolution has been below full resolution for a while (#58).
  • FSR 1 follow-ups: a division by zero in a corner case, pictures in the right format only, and the French help text (#95).
  • A rare crash at start-up now says what went wrong instead of stopping without a message.

For bug reports

  • An optional profiler for slow frames: create an empty file sdmc:/switch/wwhd/logs/hitch_profile.flag and the next session records what the game was doing in each frame over 40 ms. Attach logs/hitch_*.samples with your log when we ask for it. Delete the file afterwards: while it is there the game runs a little slower.

Full list of changes: the v1.2.0 milestone.

Thanks

  • Code: @depende3000 (the installers' update mode, the FSR and FXAA follow-ups, the profiling tools, the study of in-game updates), the upstream ZeldaWWHDRecomp contributors, and @Pulpparty.
  • Ideas: NFSMW-NX (Stevens) for the frame rate block SaltyNX's overlays read and the slow-frame sampler turned on by a file (both written anew here); renut-nx and its sister ports.
  • Reports and testing: @maniman303 (#102), and everyone who sent logs.

Known issues

  • Windows Defender may flag the installer as Wacatac.B!ml, a false positive (#61); INSTALL.md explains what to do while the code-signing certificate is pending.