Claude got Mario Kart 64 running natively on the iPhone Duo at 120fps.
It runs on the Duo's big inner screen, and it keeps racing when you fold the phone shut. Claude Code built the app, installed it over a cable and loaded the game file. I mostly held the phone.
→This is SpaghettiKart, a native port rebuilt from Mario Kart 64's decompiled code. There's no emulator in the middle. You supply your own game file. None come bundled.
→A free tool called PadMint builds it into an iPhone app called SpaghettiPad. Unlike the Zelda port, it already draws on the Duo's inner screen and already has the 120Hz opt-in, so the black-screen fix and the Info.plist edit from the Zelda setup aren't needed.
→Only the US version of the game works, and it has to be a .z64 file.
🔒Drop your email, get the full setup
Every step and Claude prompt: the build, the install and getting your game file onto the phone.
Join 6,800+ builders already getting this. No spam.
THE FULL SETUP · 5 STEPS
01
What you need
Everything here is free apart from the hardware. PadMint ships no games: the app asks for your own copy.
Thing
Why
Mac with Apple Silicon (M1 or newer) and Xcode
Builds the iPhone app. Mine built on a Mac mini in about 11 minutes.
Claude Code
Runs the build and the install from one terminal.
Free Apple ID
Signs the app. A free ID allows 3 sideloaded apps at once and they expire after 7 days, so reinstall weekly.
USB-C cable
Installs the app and copies your game file straight into its folder.
Your own game file
A US Mario Kart 64 ROM in .z64 format.
02
Build Mario Kart with PadMint
PadMint downloads SpaghettiKart, its tools and dependencies, and builds the iPhone app. Hand the whole thing to Claude Code:
Install PadMint (github.com/chrissotraidis/padmint) on this Mac and build SpaghettiPad (Mario Kart 64) for iOS. Install any Homebrew dependencies it needs. Tell me where the .ipa ends up.
No Mac? PadMint can also build it on GitHub's free Mac runner from a fork. Mine sat in GitHub's queue for a while, so the local build was faster.
03
Check your game file
SpaghettiKart only accepts the US release. Its README lists the SHA-1 of a good dump, so have Claude check yours before you install anything. If yours is a .n64 file, it needs converting to .z64 first.
Check the SHA-1 of my Mario Kart 64 ROM. It should be 579C48E211AE952530FFC8738709F078D5DD215E. If it's .n64 byte order, convert it to .z64.
04
Install it over the cable
Sideloadly works if you'd rather click. I had Claude do it from the terminal: sign with your Apple ID, install it, then push the ROM into the app's Documents folder. After the first launch the app's folder holds your ROM plus an mk64.o2r file next to it.
Sign this SpaghettiPad .ipa with my Apple ID, install it on my plugged-in iPhone, then push my Mario Kart 64 ROM into the app's Documents folder as mk64.us.z64 with pymobiledevice3.
05
What's still rough
The free Apple ID limit is the real catch: three sideloaded apps at a time, and each one stops opening after 7 days until you reinstall. If you also run the Zelda port and something like GTA, that's all three slots. Touch controls are fine for racing.