Загрузка видео...
Не удалось загрузить видео
Mario Kart 64, running natively on iOS and iPad, with touch controls designed for racing. The Mario Kart 64 decompilation community spent years reconstructing the original game code in C. Harbour Masters turned that into SpaghettiKart, the source port. I built the iOS layer on top. Not an emulator.... show more
53,743 просмотров • 1 месяц назад •via X (Twitter)
Комментарии: 36

Repo, full build guide, and an audited ROM-free IPA on GitHub. It ships unsigned, so you re-sign it with your own Apple ID. Bring your own Mario Kart 64 US 1.0 .z64. Launch the app once, copy the ROM into its Files folder, and hit Rescan. Graphics work the same way. Copy MK64 Reloaded's SpaghettiKart HD pack into the mods folder, relaunch so the engine mounts it, then pick original or HD inside the app. The pack is GhostlyDark's. SpaghettiPad doesn't bundle it or mirror it. Get it from the official MK64 Reloaded page.

SpaghettiPad is a patch overlay, not a fork. Pinned revisions of SpaghettiKart, libultraship, and Torch, nine reviewable iOS patch layers, an Objective-C++ UIKit and CoreMotion shell, Xcode project generated with CMake. Rebuild from the pins and the pipeline audits what comes out. Most of the work went into making a kart racer feel right on glass. A physical controller gives your thumb something to find without looking. A touchscreen doesn't, so steering has to be genuinely analog and every button has to already be where your thumb expects it. That's why there are two Z buttons and no D-pad. The engine isn't mine. Years of Mario Kart 64 decompilation came first, then SpaghettiKart, libultraship, Torch, SDL, and Fast3D out of the Harbour Masters ecosystem. What I built is an integration designed around the iPad. Still open: wider controller testing, sustained three and four player split screen, a full tilt-steered Grand Prix on hardware, and iPhone ergonomics. Grab your Mario Kart 64 copy and play it on your iPad.

Dude, this is absolutely amazing. Can I get you to talk about this on the podcast?

Let's talk! I'll DM.

Resurrecting dead software is so cool man. Awesome, I’m stoked for you to get in touch.

I didn't even think it's possible to do any of this. Thank younfor sharing.

That's awesome, @chrissotraidis ! Not sure if you are a VR user, but I recently added VR support to several retro games (including MK64), with plans for standalone APK's in the near future. You can find all the downloads & source code on my website

@banteg Incredible 🤩

LFGGGGGG

Did touch steering require changes to the driving model, or only the input layer? Racing exposes dead zones and latency immediately.

Only the input layer. I did not change the driving model or its dead zones. The touch stick sends continuous analog values through a virtual SDL controller into the existing game input path. You are right that racing makes poor input feel obvious immediately.

This is awesome! Would love to see a MacOS port as well.

SpaghettiKart (Mario Kart 64) actually already has a MacOS port. Check it out!

That's my childhood you're holding

This is amazing!!!

Is there any reason you don't submit these patches upstream to fully integrate platform compatibility?

Good question. Some of the work could eventually go upstream, especially the general iOS compatibility fixes. Other parts are specific to SpaghettiPad and its iPad experience. I kept everything together while testing it, but I would be happy to separate the general fixes and submit them later.

I think that would be ideal. With the increasing influx of vibecoded projects piggybacking off the backends of existing ones, contributing to the source is a good way to keep consistency and avoid being lumped in with "vibecoded slop". Good work with this and soh.

Nice! Would it be possible to do an iOS port of Perfect Dark?

I think it is possible. Perfect Dark already has a mostly functional native port, including ARM64 support, which is a strong starting point. It uses a different engine from SpaghettiKart, though, so iOS would need its own work for rendering, touch controls, audio, lifecycle, Files, and signing.

Please do 007 Goldeneye

So if the source code is decomposed, could we not add mods?

@Solacefits Yes. Asset mods already work through the Files visible mods folder. MK64 Reloaded is one example. Code mods are also possible through the source, but they currently need to be compiled into the app because the optional C scripting system is disabled on iOS.

loving the series!! so sick!

Class work 👏 This is so much cooler than all these “opus built this in 2 hours” AI slop posts

We spent months perfecting analog steering and this man just casually dropped it in a bullet point 😎

@grok is there AirPlay split screen, like a Mac to iOS or to iPadOS, you get me?

How do you get the touch controls built considering they aren't in the original? AI?

I added a new UIKit touch layer around the game. It drives a virtual SDL controller, so the original game still receives normal N64 controller inputs. And yes, I built the iOS integration with help from Codex 5.6 Sol, then iterated on the layout and behavior through testing.

So cool. Despite the hate some people give it, AI is a great tool for engineers and its unlocking some incredible possibilities. I really want to help decompile Sly Cooper 1. Any suggestions on where to start?

If you like minimalist design & mind-bending logic, try Golf Puttin! Portals that keep velocity across the boards will puzzle your brain. 🧠⛳️ 👉

lol you expect people to just sit and hold that A button? How are they gonna power slide? Can users move those buttons, make any bigger, hide ones they don’t use? Does the 4K texture pack load at 120Hz? “Built with iPad in mind” - lol but with basically nothing else in mind.

Yep, adding functionality today. The 4k texture pack loads at 120hz currently has screen tearing issues.

would be cool to see tilt controls just for fun

Is there an Android version available? Would be amazing

Impressive work on porting MK64 to iOS
