MuffinEMU
Wii U emulation for iPhone and iPad — built in the open.
🧁Install
Two sources, because the two install paths need different builds. Pick the one that matches how you sideload. iPhone and iPad, iOS 15 or later.
SideStore / AltStore / LiveContainer
These re-sign the app with your own Apple ID at install, so they take the plain unsigned build.
https://kiddreads.github.io/MuffinEMU/apps.jsonTrollStore / jailbroken
Takes the ad-hoc signed build, with the JIT entitlements actually embedded — which is what a JIT enabler needs to give the recompiler executable memory. A SideStore re-sign would strip them, which is why this is a separate source.
https://kiddreads.github.io/MuffinEMU/trollstore.jsonOr grab MuffinEMU-fakesigned.ipa directly from the latest release.
Which file is which? MuffinEMU.ipa is unsigned on purpose — the installers above re-sign it themselves. MuffinEMU-fakesigned.ipa is ad-hoc signed, which most tools will still describe as "not signed" since ad-hoc signing has no certificate or team ID. That's expected, not a fault.
🎮Status
MuffinEMU boots real Wii U titles from an imported ROM library on real hardware (confirmed on an iPad Pro A12Z, iPad8,11). A full, confirmed playthrough of a retail title on this exact build is still pending — this page will say so plainly the day one lands, not before.
The recompiler is real on this core. With a JIT enabler attached (StikJIT, SideStore, LiveContainer) and the recompiler switch on in Settings, titles run compiled AArch64 rather than interpreted. Without one, MuffinEMU falls back to the interpreter automatically, and Settings says which one a launch actually got and why.
🖥️Under the hood
The renderer is Metal, native to this port rather than a Vulkan translation layer, with an optional Vulkan (MoltenVK) path for titles that prefer it. GPUs without mesh shader support — the A12Z and similar — emulate geometry shaders and RECTS primitives with compute passes instead, and decode BC-compressed textures on the CPU rather than in hardware.
Every build carries a curated set of fixes ported from upstream Cemu on top of the core, plus MuffinEMU's own — the project tracks and fixes real crashes and hangs as they're found rather than papering over them.
🎨The app
- A measured on-screen Wii U GamePad, taken off real hardware, with a comfort-controls layout and an alternative pad (melo-controls) as a toggle
- 31 app icons, each with a matching colour theme — three premium, unlocked by code
- External-display routing, decrypt-to-files/WUA, DLC and update import, graphic packs
- Audio, controller input beyond the basics, and broad game compatibility — usable, not yet systematically verified
📖Read the project
- github.com/kiddreads/MuffinEMU — source, issues, releases
- README.md — architecture, building from source, how installs are numbered
- The on-screen pad — measured off real GamePad hardware
⚖️Games, credits & license
Bring your own games and keys. No copyrighted content is distributed here — not games, not system files, not keys.
MuffinEMU is built on Cemu. Some MeloCafe cores and bug fixes have been brought over to MuffinEMU, from stossy11/MeloCafe. The optional melo-controls pad is Melo-Controller, also by stossy11 (GPL-3.0). The Vulkan path uses MoltenVK.
MuffinEMU's own source is MPL-2.0, like Cemu and MeloCafe. Because Melo-Controller (GPL-3.0) is linked into every build, a MuffinEMU IPA as a whole is distributed under GPL-3.0, with the repository above as its source.