iOS está arrancando un 2024 dorado. El lanzamiento de Delta, el primer emulador para el iPhone instalado desde una tienda de terceros, ha supuesto un antes y un después en la plataforma. Delta es un emulador de GameBoy y Nintendo DS, consolas que no necesitaban demasiado hardware para ejecutar sus pequeños juegos. También hemos visto (de forma fugaz) emuladores de NES en App Store, aunque desaparecieron según sus desarrolladores por miedo.
Pero... ¿qué pasa con Dolphin? Hablar de este emulador es hablar de palabras mayores: emular GameCube y Wii en móviles. Sus desarrolladores han vertido un jarro de agua fría: no será posible llevar Dolphin a iOS, y la culpa la tiene Apple.
Desde Dolphin han dado la noticia y han desmentido los rumores: no está previsto que este emulador llegue al iPhone. Lo explican en una publicación titulada "¿Por qué Dolphin no llega a App Store?", en la que se detalla qué sucede. El responsable primero es Apple, pero todo se basa en JIT (Just-In-Time).
¿Qué es JIT? El emulador Dolphin utiliza un compilador bajo este nombre, uno que se encarga de traducir el código de PowerPC a ARM para posteriormente ejecutar las operaciones. Es algo más sencillo de entender si partimos de que GameCube y Wii tienen una CPU basada en PowerPC, una arquitectura de 1991 desarrollada en conjunto por Apple, IBM y Motorola.
Los dispositivos de Apple actuales utilizan una CPU basada en ARM, por lo que es imposible ejecutar código PowerPC en una CPU ARM. Para lograrlo, hace faltar traducir el código PowerPC a ARM para que la CPU lo pueda entender: y ese es exactamente el papel de JIT.
¿Cuál es el problema entonces? Por el momento, Apple no permite que las aplicaciones utilicen recompiladores JIT en iOS. Solo hay dos excepciones. Safari y los navegadores web alternativos europeos. Desde Dolphin aseguran haber enviado una solicitud de interoperabilidad basada en la nueva DMA para obtener soporte JIT, pero Apple denegó la solicitud.
Sin permiso de Apple, la aplicación no puede funcionar en el iPhone, ni siquiera aunque se aloje en una tienda de terceros. Esta es la gran diferencia entre iOS y Android: las aplicaciones que se descargan desde tiendas alternativas tienen que pasar por el control de Apple. Sin pasar este filtro, no se pueden instalar.
¿Posible solución? Desde Dolphin aseguran que, técnicamente, el emulador puede funcionar sin JIT. El propio emulador tiene un intérprete para ejecutar código PowerPC en ARM. El problema es que, sin el compilador de por medio, la ejecución de los juegos es mucho, mucho más lenta. Hasta el punto en el que notaremos que el juego va con un importante lag.
"Nos encantaría lanzar DolphiniOS en la App Store o trabajar con el proyecto Dolphin Emulator para obtener una compilación oficial en la App Store.
Desafortunadamente, no es posible a menos que Apple afloje sus restricciones en JIT."
Desde Dolphin lo admiten: sin JIT los juegos son "básicamente injugables". Ni quiera en un iPhone 15 Pro Max es posible una ejecución fluida sin JIT de por medio. Así, dejan claro que si Apple no les da permiso para utilizar JIT, Dolphin jamás llegará a iOS.
Imagen | Xataka
En Xataka | Los mejores emuladores de Android para PC