O PlayPort 0.3.0 passou a executar jogos Windows x86 de 32 bits em iPhones sem jailbreak, e Portal 2 foi o primeiro teste público dessa nova camada. A release de 5 de outubro de 2026 registrou média de 58,4 FPS a 720p em uma sessão curta e cerca de 50 FPS após aquecimento prolongado. Além disso, o teste de 95 minutos terminou com saves e loads sem crash.
O aplicativo roda os jogos no próprio iPhone, sem streaming de PC ou nuvem. Porém, o projeto ainda é experimental: Portal 2 é o único jogo de 32 bits validado até agora, o backend Vulkan é novo e o uso exige sideload do IPA, Developer Mode e um helper para JIT.
Tela inicial do PlayPort no iPhone, com jogos instalados e biblioteca integrada. Imagem: playportdev/PlayPort.
PlayPort 0.3.0 abre espaço para jogos Windows de 32 bits
A principal mudança é uma janela virtual de 4 GB dedicada a cada processo x86 de 32 bits. Assim, o projeto contorna a restrição do iOS que impede o mapeamento baixo esperado por muitos programas antigos do Windows.
O caminho combina Wine WoW64 e FEX para executar o código x86 no ARM64 do iPhone. Enquanto isso, jogos Direct3D 9 passam pelo DXVK, que converte a renderização para Vulkan, e o KosmicKrisp traduz Vulkan para Metal na GPU da Apple.
Para atender o DXVK, o projeto também adicionou ao caminho iOS recursos como geometry shaders, wireframe e point fill. Além disso, um cache de shaders em disco reduz recompilações nas execuções seguintes.
Kingdom Come: Deliverance rodando pelo PlayPort no iPhone através do caminho Direct3D 11/DXMT. Imagem: playportdev/PlayPort.
Portal 2 chega perto de 60 FPS no iPhone
No teste divulgado pelos desenvolvedores, Portal 2 rodou a 720p com média de 58,4 FPS durante cinco minutos de gameplay. Depois, com o aparelho aquecido em uma sessão longa, o desempenho se estabilizou perto de 50 FPS.
A sessão de 95 minutos incluiu saves e loads sem crash. Segundo o projeto, os dois portais, física, áudio, controle, saves e sincronização pelo Steam Cloud funcionaram no teste. Mesmo assim, pequenas travadas ainda podem aparecer durante carregamentos de fases.
O PlayPort também usa precisão nativa de 64 bits no x87 FPU para jogos antigos. De acordo com os testes, essa escolha reduziu em cerca de 40% o trabalho da thread principal de Portal 2 e ajudou a controlar o custo térmico.
The Witcher 3 é outro exemplo do PlayPort, usando Direct3D 11 via DXMT no iPhone. Imagem: playportdev/PlayPort.
PlayPort usa Wine, FEX, DXVK e Metal no mesmo fluxo
O PlayPort 0.3.0 deriva do Madeira, projeto que já havia unido Wine, FEX-Emu e DXMT em um único processo no iOS. Agora, o PlayPort adiciona uma interface voltada a jogos, integração com biblioteca Steam e caminhos gráficos escolhidos conforme a API usada pelo título.
Direct3D 10 e 11 continuam usando DXMT, enquanto Direct3D 9 segue por DXVK e KosmicKrisp. Além disso, Direct3D 12 possui um caminho experimental com vkd3d-proton. O projeto também atualiza componentes como Wine, FEX e Mesa em relação à base original do Madeira.
O Allves Games já mostrou o Madeira executando Red Dead Redemption 2 no iPhone. Da mesma forma, a evolução de runtimes no iOS também aparece em projetos como o KartPad, que leva Mario Kart Wii ao iPhone.
IPA exige sideload, JIT e jogos próprios
A versão 0.3.0 é distribuída como IPA e código-fonte, mas não está na App Store. Portanto, a instalação exige sideload com a própria conta Apple, Developer Mode e o LocalDevVPN para habilitar o JIT usado pelo aplicativo.
Uma conta Apple gratuita assina o app por sete dias e precisa renovar a assinatura periodicamente. Além disso, o usuário deve baixar e usar jogos de sua própria biblioteca; o PlayPort não fornece jogos, contas Steam ou material de pareamento.
Os números atuais também não devem ser generalizados para todo o catálogo Windows. Por fim, os próprios desenvolvedores destacam que Portal 2 é o único título de 32 bits testado nessa fase e que outros jogos Direct3D 9 ainda podem apresentar falhas.
Fontes: repositório oficial no GitHub; release v0.3.0 no GitHub; r/EmulationOniOS.