Run Windows PC games on a jailbreak-free iPhone
Imagine opening your iPhone to play a game as usual, only to find a PC title running instead. This project is an experimental tool that runs Windows games on an iPhone without bypassing its security restrictions. It bundles several emulators and translation technologies to make the iPhone function like a small PC.
How PC games run inside the iPhone
This project combines three technologies: Wine, FEX-Emu, and DXMT. Wine helps Windows programs run on other operating systems, while FEX-Emu translates PC instructions into commands the iPhone understands. DXMT converts Windows graphics commands into the iPhone's graphics language. All of this runs as a single process, designed to operate as threads without a separate server process.
Games currently running and their status
Currently, Thumper and ULTRAKILL are playable. Marvel Cosmic Invasion has reached the gameplay stage, but it occasionally terminates without reason or exhibits unstable controls. Other games often run at low frame rates. Since this is a research project rather than a finished product, you should expect different issues or sudden changes for each game.
Requirements and constraints for execution
You need an iPhone that has not been jailbroken. Development was carried out on an iPhone 13 Pro with an A15 chip. On iOS, using a JIT (Just-In-Time) compiler requires a connected debugger, and this project uses StikDebug. An Apple ID is also required for app signing; if you use a free account, the provisioning profile expires every 7 days, meaning you must rebuild and install the app weekly. The app container is preserved upon reinstallation, so saved data is not lost. Because JIT requires a debugger connection, this app cannot be distributed via the App Store and must be installed via sideloading.
Build process and license
The build is divided into several stages, including Unix-side Wine libraries, ARM64EC PE modules, FEX, DXMT, and the iOS app. build/*/build.sh handles the native parts, and the app is built with xcodebuild. You must fetch submodules when cloning the repository; FEX, wine, and research/dxmt point to forks that include iOS work, so an upstream clone cannot be used for building. The license is GPL-3.0-or-later, and distributed derivatives must remain open source. Each fork has its own license file, and previously permissively licensed code retains those conditions. Microsoft Visual C++ runtime DLLs are not included and must be prepared by the user.
Limitations and cautions as a research project
This repository is a research project, not a finished product, so expect rough edges, game-specific quirks, and breaking changes. In particular, the forks contain a lot of AI-assisted work, and FEX-Emu's contribution policy prohibits submitting AI-generated code to upstream. Therefore, you should not submit AI-generated changes from this fork to upstream. The MIT license allows the fork itself, but contributions to upstream follow each project's policy. You must check the relevant project's contribution policy before proposing changes to upstream.