🎃 ¡Rebajas de Halloween! ¡Office 2021 para siempre por sólo 29,11€/PC! [ Saber más ]
Apple recientemente ha modificado su política para permitir la presencia de emuladores de juegos en la App Store. Esta decisión abrió las puertas a aplicaciones como Delta, una de las herramientas más populares de emulación, que se alzó hasta lo más alto de las clasificaciones en la App Store.
Sin embargo, otro emulador popular llamado Dolphin para Wii y Gamecube está teniendo problemas con las políticas de Apple.
Dolphin ha explicado en una publicación de blog que la resistencia de Apple a las aplicaciones que utilizan JIT (Just-In-Time) significa que, por el momento, no podrá estar en la App Store.
La GameCube y la Wii llevan en su interior una CPU basada en PowerPC. Todos los dispositivos Apple modernos utilizan una CPU basada en ARM. No es posible ejecutar directamente código PowerPC en una CPU ARM, y viceversa. Por lo tanto, si queremos ejecutar un juego de GameCube o Wii en un iPhone, es necesario traducir el código PowerPC del juego a ARM para que la CPU pueda entenderlo.
Dolphin utiliza algo llamado Just-in-Time (JIT) recompiler para lograr esto. Siempre que la consola emulada quiera ejecutar código del juego, Dolphin utilizará su JIT para traducir el código PowerPC a ARM, y luego ejecutar los resultados.
Desafortunadamente, Apple generalmente no permite que las aplicaciones utilicen recompiladores JIT en iOS. Las únicas excepciones son Safari y los navegadores web alternativos en Europa.
Presentamos una solicitud de interoperabilidad de DMA a Apple para que admitiera JIT, pero Apple denegó la solicitud hace unas semanas.Es difícil saber exactamente por qué Apple se muestra tan reticente a abrir la compatibilidad con JIT. Es posible que lo consideren un riesgo para la seguridad. (Si nos fijamos en las diversas restricciones y limitaciones impuestas a los JIT de JavaScript para navegadores web alternativos en Europa, parece que sí les preocupa que se pueda abusar de él).
El problema es que JIT es fundamental para que el emulador tenga un buen rendimiento. La comparación entre estos dos vídeos pone de relieve lo esencial que es JIT para ejecutar Dolphin en iOS.
Esta situación plantea interrogantes sobre el futuro de los emuladores de juegos en la plataforma de Apple. Aunque la apertura a emuladores como Delta es un paso en la dirección correcta, la resistencia a JIT deja fuera a emuladores importantes como Dolphin.