Madeira:如何在未越狱 iPhone 上运行 Windows PC 游戏 Madeira如何在未越狱 iPhone 上运行 Windows PC 游戏【免费下载链接】MadeiraRun x86-64 Windows PC games on jailed iOS via FEX-Emu Wine DXMT项目地址: https://gitcode.com/GitHub_Trending/mad/MadeiraMadeira是一个跑在未越狱 iPhone上的Windows PC 游戏模拟器它把FEX-Emu Wine 11 DXMT三层技术栈装进一个普通的 iOS 应用让 x86-64 的 Windows 游戏不经过任何修改、直接在 iPhone 上运行。适合想体验iPhone 玩 PC 游戏的极客玩家也适合想逐行读懂跨架构模拟完整链路的研究者。先泼一盆冷水项目方自己标注它是研究项目而非产品——很多游戏能启动、部分玩得不错但性能和兼容性逐游戏波动边缘依然粗糙。 它凭什么跑起来三层技术栈 一个关键设计三个成熟项目各管一摊一句话类比组件作用一句话理解FEX-Emu把游戏的 x86-64 指令翻译成 ARM64现场翻译边跑边译Wine 11.4ARM64EC 构建提供 Windows 系统 API给游戏伪装出 WindowsWine 自身以 ARM64 原生运行DXMTDirect3D 9/10/11 用 Metal 绘制把 Direct3D渲染到苹果 GPU 的 Metal 上madeira-d3d12自研 Direct3D 12 运行时DXIL 着色器运行时经 Apple Metal Shader Converter 转换⚡ 提示这是能跑出帧率的核心——Wine 的数百个 DLL 以 ARM64 原生速度跑被 FEX 翻译的只有游戏自身的 x86-64 代码。还有一个贯穿全项目的关键设计iOS 应用不能启动其他程序所以整个 Windows 系统包括 Wine 的 wineserver全部塞进同一个 Mach 任务——wineserver 是一个线程而不是独立进程你看到的每个Windows 进程其实都是同一个 iOS 进程里的线程。这是整个项目最反直觉、也最巧妙的部分。✅ 安装前必查的 3 个条件1. iOS 版本——iOS 26 及以上这是目前唯一能可靠运行的版本开发在近期的 Pro 机型上进行。2. JIT 权限——iOS 只允许在调试器附加时创建可执行内存没有 JIT 就没有 FEX。两条路细节见 docs/JIT.mdStikDebug第三方调试应用导入本机的配对文件配合 LocalDevVPN 工作内置 StikJIT应用自带的 helperMPL-2.0需要 iOS 26 与配对文件iOS 27 上可以不借助电脑在应用内直接完成配对两种方式都向当前 Madeira 进程发送同一个打包的madeira-jit.js调试脚本启用后最多等 90 秒确认CS_DEBUGGED标志和调试器连接。3. 一个 Apple ID——免费账号即可侧载。但签名 7 天过期应用需要每周重新安装一次。好消息重装后应用容器保留游戏和存档都不会丢。由于 JIT 依赖调试器附加这个 App Store 不允许的机制Madeira无法上架只能侧载SideStore、AltStore、Sideloadly、Plume 等。 从零到可玩安装全流程第 1 步获取 IPA从项目最新 release 下载 IPArelease 页面见仓库首页。第 2 步侧载安装用你常用的侧载工具以自己的 Apple ID 安装。注意侧载工具可能询问是否保留 app extension——必须保留MadeiraJITHelper否则内置 JIT 不可用改用 StikDebug 也行。第 3 步开启 JIT打开 Madeira按引导完成 JIT 设置Settings → JIT。走内置路线iOS 27 用 In-app 配对开 Wi-Fi → Start pairing → 系统设置 Developer Mode 里Pair with Madeira → 输入代码全程需要 LocalDevVPN 回环可达iOS 26 需先从电脑导入配对文件。第 4 步确认就绪在Settings里确认JIT和Memory都显示绿勾应用提示Ready to play。⚠️ 注意部分 64 位游戏需要 Microsoft Visual C 运行时这些 DLL不随仓库分发许可证限制需自行从vc_redist.x64.exe提取步骤见 tools/fetch-vcruntime.md。 经验之谈32 位老游戏也有路——Wine 的 WoW64 层wow64.dll/wow64win.dll本身跑原生 aarch64x86 代码由 FEX 的 WOW64 模块xtajit.dll翻译设计与构建细节见 docs/WOW64.md。️ 输入方式4 条路都能进游戏物理手柄蓝牙手柄经XInput 直通最多 4 个扩展配置文件断连一个不会重排其他槽位以250 Hz4 ms 间隔采样按钮、扳机、带符号摇杆轴全部进入 XInput 快照无应用层死区触屏虚拟手柄横屏编辑器可映射 A/B/X/Y、方向键、LB/RB、LT/RT全行程扳机、LS/RS径向钳制的模拟摇杆内置完整 Xbox 布局支持多套自定义布局触屏输入合并进 player 1混合仲裁物理与触屏可叠加——扳机取较大值物理摇杆偏离标准死区时优先于触屏松开一根手指不会卡住另一根手指的按键键盘 / 鼠标 / 触控板作为真实输入直通docs/KEYBOARD_MOUSE.md没有手柄支持的游戏还能把手柄整体当键鼠用——左摇杆变 WASD、右摇杆变鼠标、RT/LT 变鼠标左右键每款游戏单独保存映射docs/CONTROLLERS.md。HID 模式下甚至能把手柄伪装成 DualSense 或通用 HID 手柄出问题想回滚在Documents/madeira.cfg里设env.MADEIRA_XINPUT 0可关闭整个 XInput 输入源重启生效。 哪些游戏真的能玩README 的原话Many games start and some play well, but performance and compatibility vary from game to game.诚实地说仓库不提供逐游戏的官方状态表。但从构建脚本和源码注释看Thumper、ULTRAKILL、Marvel Cosmic Invasion是被反复调优的对象例如 build/ntdll-unix/ 中大量针对 Thumper 的 DXGI 故障链与 ULTRAKILL/Mono 的 JIT 池问题的修复注释。某款游戏能否玩、帧率多少以你实机为准。文档索引都真实存在按需深入主题文档从干净 checkout 构建docs/BUILDING.mdStikDebug 与内置 JITdocs/JIT.md游戏库与桌面会话docs/LIBRARY.mdSteam 登录 / 商店 / 云存档docs/STEAM_SIGNIN.md、docs/STEAM_CLOUD.md32 位游戏WoW64docs/WOW64.md手柄 / 键盘鼠标 / 音视频docs/CONTROLLERS.md、docs/KEYBOARD_MOUSE.md、docs/MEDIA.md许可细节docs/LICENSING.md❓ 5 个高频问题 源码构建真相Q1为什么每周都要重装一次免费 Apple ID 的签名 7 天过期。重装后容器保留游戏、存档、Wine 前缀都不受影响。Q2为什么不能上 App StoreJIT 需要调试器附加授权这是审核不允许的机制只能侧载。Q332 位游戏呢Wine 11 的 WoW64 层跑原生 aarch64只有 x86 代码经 FEX WOW64 模块翻译路径是通的可选构建见 docs/WOW64.md。Q4内存会被 iOS 杀掉吗会。代码注释里反复出现的 jetsam 预算约 4 GB重型游戏会触顶应用内还有 Memory 检查与可选的 swap 层把数据挪到存储默认关闭。这是移动端模拟 PC 游戏的天然瓶颈。Q5许可证是什么GPL-3.0-or-later加Madeira Converter ExceptionLICENSE-EXCEPTION.md允许与 Apple 的 Metal Shader Converter 配合使用。各组件Wine fork LGPL-2.1-or-later、FEX 上游代码 MIT 等明细见 THIRD-PARTY-NOTICES.md 与 docs/LICENSING.md。⚠️ 注意源码构建的诚实声明仅凭一个全新的git clone构不出 app。docs/BUILDING.md 白纸黑字列出了不在仓库中的输入llvm-mingw交叉工具链122 MB、为 iOS 编译的 LLVM耗时数小时、VC 运行时 DLL、免费 Apple ID 等且文档中明确标注了若干步骤UNVERIFIED未从零重跑验证。FEX、wine、dxmt、madeira-dock是指向项目自有 fork 的子模块克隆上游仓库无法构建。如果你接受这个成本构建链本身是清晰的详见 docs/BUILDING.mdgit clone --recurse-submodules https://gitcode.com/GitHub_Trending/mad/Madeira补齐仓库外输入后按顺序执行编译脚本build/gnutls-ios/build.shGMP/Nettle/GnuTLS 静态库→build/fex-ios/build.sh与build/fex-arm64ec/build.shFEX 静态库与xtajit64.dll→build/ntdll-unix/build.sh、build/wineserver/build.sh、build/win32u-unix/build.shWine unix 侧→build/dxmt-ios/build.shDXMT→build/madeira-d3d12/build-pe.sh原生 D3D12 运行时→ 最后构建应用xcodebuild -project app/Madeira.xcodeproj -scheme Madeira -destination generic/platformiOS -allowProvisioningUpdates build 经验之谈Debug 才是能跑游戏的配置Release 构建曾让 guest 崩溃把Payload/Madeira.app打包成 IPA 后侧载即可。仓库主要目录app/ 是 iOS 应用主体SwiftUI 前端、Wine 桥接与资源madeira-d3d12/ 是原生 D3D12 运行时build/ 每个组件一个文件夹tests/ 是主机检查与 x86/x86-64 测试程序tools/ 是辅助脚本。写在最后FEX 翻译 CPU、Wine 伪装 API、DXMT 转换 GPU再靠把 wineserver 变成线程绕过 iOS 的单进程限制——这三层加一个设计把 2026 年之前还属于科幻的真机 iPhone 跑 Windows PC 游戏变成了可以复现的现实。它不完美、不承诺任何游戏能玩但作为一份iOS 模拟 PC完整技术链路的开源教材值得逐行研读。【免费下载链接】MadeiraRun x86-64 Windows PC games on jailed iOS via FEX-Emu Wine DXMT项目地址: https://gitcode.com/GitHub_Trending/mad/Madeira创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考