Pokémon: Let’s Go, Eevee! recompiled into a native Windows game

A GBAtemp developer has released Let’s Go Recomp, which translates Pokémon: Let’s Go, Eevee! from Switch code into a native x86-64 Windows build with no emulator running underneath.

AI-drafted from 1 source. This story was written with AI from the outside reporting listed under Sources, and checked by automated tools before it went up. The originals have the full detail.

A hobbyist going by raulz has released Let’s Go Recomp, an open-source tool that turns Pokémon: Let’s Go, Eevee! into a program that runs natively on Windows, with no emulator doing the work while you play. According to the GBAtemp thread, the project takes the game’s four executable modules, main, sdk, subsdk0 and subsdk1, and translates them from the Switch’s ARM64 instruction set into C code, which is then compiled straight to x86-64, the instruction set your PC’s processor actually understands.

That process is called static recompilation: rather than interpreting or just-in-time compiling Switch instructions on the fly, as an emulator does, the whole game is converted once, ahead of time, into code a Windows machine can run directly. The GBAtemp post describes the result as built on Peiikai’s LAS Recomp, the earlier static recompilation of The Legend of Zelda: Link’s Awakening, which puts Let’s Go Recomp alongside a growing line of fan projects doing the same trick to other Switch titles rather than writing an emulator and hoping it keeps up.

What the Switch normally handles, and what the runtime does instead

Because the recompiled code still expects a Switch underneath it, the project ships a runtime that stands in for the console’s kernel, system services, audio and controller handling, plus the touch screen used in the game’s Play with Eevee mode. Graphics calls that would have gone through Nintendo’s NVN API are redirected to Vulkan, the cross-platform graphics API, which is how the port gets a native Windows picture instead of an emulated one. The GBAtemp thread lists a stable 30 frames per second, matching the game’s own frame rate on Switch, internal resolution from 720p up to 4K with supersampling, SMAA anti-aliasing and 16x anisotropic filtering, none of which the original hardware could push. Mouse and keyboard are supported, with the mouse aiming Poké Balls and substituting for the touch screen, and any SDL 3 controller works as well.

No ROM is distributed, and plenty is still untested

The thread is explicit that the release does not distribute any game code or assets. Instead the tool recompiles the game on your own PC from your own dump of the base game, using a bundled compiler, and the dump has to be version 1.0.0. The post also lists what raulz has actually tried: the opening, Pallet Town, Route 1, Viridian City, wild captures, a trainer battle, menus, Play with Eevee and save and load. The full story has not been played through yet, and Let’s Go, Pikachu! is not supported, nor are any game updates beyond the base version. Testing on AMD and Intel graphics cards is also still wanted, which suggests most of the work so far has happened on Nvidia hardware.

Why this matters beyond one Pokémon game

Static recompilation projects like this one and LAS Recomp sidestep a lot of the guesswork that plagues general-purpose emulation, because the output is ordinary compiled code rather than something being translated line by line while you play. The trade-off is that each one targets a single game, built by hand, so Let’s Go Recomp will not help anyone running other Switch titles. What it does show, again, is that fan developers are treating individual Switch games as worthwhile recompilation targets in their own right, version mismatches, missing Pikachu support and all, and that the list of games getting this treatment is not shrinking.

Sources

Image: GBAtemp.net - The Independent Video Game Community

More news from Gaming World