Case study
MarioKart 64: Recompiled — a native port through N64Recomp static recompilation
Statically recompiles the US Nintendo 64 release of Mario Kart 64 into a native Windows, Linux and macOS application with N64Recomp, rendering through RT64. The README distinguishes this from a source port: game code is translated from the user’s ROM, while headers and some functions from a decompilation fork support patches and enhancements. Enhancement, fidelity and input-lag claims are project-reported.
Requirements and limitations
- Accepts only the user’s US N64 Mario Kart 64 ROM; other dump formats of that ROM are converted automatically, and the README states it is not an emulator for arbitrary ROMs. The repository and its releases contain no game assets. Source builds read the same US ROM as mk64.us.z64 plus a separate symbol-file submodule.
- Running requires Direct3D 12.0 with Shader Model 6, Vulkan 1.2 or Metal Argument Buffers Tier 2; x86-64 CPUs need SSE4.1, and the README lists macOS 13.0+ on Apple Silicon or a 7th-generation Intel CPU. Known issues include Intel GPUs on Linux and the prebuilt Linux binary on some distributions.
- Source builds need submodules, CMake 3.20+, C++20, and Clang/LLD with SDL2 and GTK 3 on Linux or Visual Studio 2022 with its Clang tools and make on Windows. N64Recomp and RSPRecomp are built separately and run on the provided TOML configurations to generate C code; patches compile against headers from a fork of the mk64 decompilation.
- CI recompiles and builds Linux, Windows and macOS targets with a ROM held in a private repository behind CI secrets; it publishes no matching, fidelity or gameplay comparison. Release v0.9.2 (February 2026) offers Windows, Linux, Flatpak and macOS archives. Rendering-accuracy, framerate and input-lag statements are project claims; this collection did not build or run the port.
- COPYING is GPL-3.0; original game content, decompilation-derived headers and libraries such as RT64 and RmlUi retain their own terms. Static recompilation translates machine code rather than recovering authored source; the reviewed files establish no AI or REA involvement, and no runtime reproduction is claimed.
About this entry
- Type
- Case study
- Category
- Independent reconstruction cases
- Relationship
- Independent reconstruction project
- Targets
- Game
Sources reviewed
The description was reviewed against primary sources. This does not establish runtime testing, security auditing or verified compatibility.
Primary sources
- README.md GitHub · sonicdcer/MarioKart64Recomp · Revision 3f72d23
- BUILDING.md GitHub · sonicdcer/MarioKart64Recomp · Revision 3f72d23
- us.toml GitHub · sonicdcer/MarioKart64Recomp · Revision 3f72d23
- .gitmodules GitHub · sonicdcer/MarioKart64Recomp · Revision 3f72d23
- patches/Makefile GitHub · sonicdcer/MarioKart64Recomp · Revision 3f72d23
- CMakeLists.txt GitHub · sonicdcer/MarioKart64Recomp · Revision 3f72d23
- .github/workflows/validate.yml GitHub · sonicdcer/MarioKart64Recomp · Revision 3f72d23
- COPYING GitHub · sonicdcer/MarioKart64Recomp · Revision 3f72d23
- https://github.com/sonicdcer/MarioKart64Recomp/releases/tag/v0.9.2