You Can Now Run Windows Games on Your iPhone Without a Jailbreak

A new open-source project called Madeira runs Windows PC games on a non-jailbroken iPhone. Madeira 0.1.0 shipped on October 1 and installs through sideloading.

The project lives on GitHub, where the Madeira 0.1.0 release notes describe a single app that translates and runs x86-64 Windows games locally on the phone. Developer Will Faust calls it a research project, and the README warns of rough edges, per-title quirks and breaking changes.

Windows games on iPhone

Madeira stacks four open-source layers inside one iPhone app

FEX-Emu translates x86-64 code to ARM64, so games built for Intel and AMD processors can run on iPhone hardware. A Wine 11 fork built as ARM64EC handles the Windows compatibility layer.

Graphics go through DXMT, which maps Direct3D 11 to Apple’s Metal. Direct3D 12 runs natively. All of it sits in one process, with wineserver running as a thread inside the app instead of as a separate process.

The README lists Thumper and ULTRAKILL as playable, while Marvel Cosmic Invasion reaches gameplay but has unreliable controls and one run that ended in an unexplained termination. Other games reach gameplay at low frame rates. Development has been done on an iPhone 13 Pro with an A15 chip.

Version 0.1.0 is mostly interface work.

  • Liquid metal styling replaces Liquid Glass on the navigation bar buttons, the tab bar and the Desktop button, with a metal rim on the tab bar lens and the search field. Setting MADEIRA_GLASS_SKIN=0 and MADEIRA_LIQUID_METAL=0 in madeira.cfg turns the styling off.
  • The game library gets ambient light around game artwork, a card press animation and an icon-only tab bar.
  • fastsync is now the default sync engine.
  • The app has a new icon.

Sideloading and JIT are required before any game starts

Madeira does not need a jailbreak, but it cannot go on the App Store. Games need JIT, and iOS only allows JIT while a debugger is attached. StikDebug handles that through the Enable JIT button in the app. The Settings screen shows JIT and Memory+ status and says Ready to play once both are on.

The IPA is ad-hoc signed and carries the app’s entitlements, including the increased memory limit. You sign it with your own Apple ID using SideStore, AltStore, Sideloadly, Plume or a similar tool. The release lists iOS 17 or later as the requirement, and the interface is designed for iOS 26.

A free Apple ID works, but its provisioning profile expires after 7 days, so the app has to be reinstalled every week. The app container survives a reinstall, which keeps your prefixes and saves in place.

Microsoft Visual C++ runtime DLLs are not bundled, so some games need them supplied separately. Madeira is licensed under GPL-3.0-or-later, and the README notes that the Wine, FEX and DXMT forks contain substantial AI-assisted work.

It sits at the opposite end of iPhone emulation from UTM SE, which reached the App Store by shipping a build without JIT. Madeira needs JIT, which is why it stays outside the App Store. Emulators like PPSSPP and RetroArch are on the App Store for console games and do not run Windows PC titles.

Our Take

Running a Windows game on an iPhone through FEX-Emu, Wine and DXMT is a real engineering result. Thumper and ULTRAKILL being playable shows it already works for lighter titles.

The JIT step through StikDebug and the weekly reinstall on a free Apple ID will put off most people. I would wait for a few more releases before setting aside an afternoon for it.

The Madeira repository already has about 1,200 stars and 214 forks on GitHub.

Newsletter
Never miss an Apple story
One email a day, the news that matters. No spam, unsubscribe anytime.
About the Author

Usman has been playing games for as long as he can remember. He is an editor at iThinkDifferent and writes about games, Apple news, hardware, productivity guides, and more. When not writing for iTD, Usman loves to play competitive Team Fortress 2, spends time honing his football skills, and watches superhero movies.

Leave a Reply