Todos llevamos en nuestros bolsillos un ordenador potentísimo, y se llama iPhone. Es además el teléfono inteligente más seguro del mercado, gracias a las medidas de seguridad que Apple implementa en el teléfono, y las restricciones a la hora de instalar aplicaciones que no están en su popular App Store. Esto puede cambiar dentro de algunos años, si Apple finalmente permite la instalación de apps desde fuera de su tienda de aplicaciones, aunque de momento, no hay planes en firme para ello.
Estas restricciones además de los procesos de revisión de código en busca de código malicioso también restringe la instalación de emuladores que permita la ejecución libre de software por parte del usuario desde la App Store – pero esto no significa que no podamos instalarlos por nuestra cuenta sin pasar por ella.
Antes, para conseguir esto era necesario hacer jailbreak e incluso hay formas de instalación mediante certificados de terceros que pueden no resultarnos de confianza. Sin embargo, hay una forma fácil de instalar estos emuladores de forma, sin hacer nada «raro» en nuestros iPhone y usando incluso nuestro Apple ID para mayor seguridad. Y no hace falta ni ser desarrollador, ni haber tocado nunca jamás Xcode.
Como instalar el emulador MAME en el iPhone
Antes de empezar, quitaos el miedo de trastear con Xcode – el entorno de desarrollo de Apple para sus apps – incluso aunque lo hayáis usado. Esta guía puede parecer muy larga pero es porque la he explicado y detallado al máximo para que – precisamente – nadie se pierda. Es muy sencillo, no necesitáis cuenta de pago de desarrollador: sólo vuestro iPhone y vuestro Mac.
Hace unos meses os contaba cómo instalar el emulador de máquinas recreativas MAME en el Apple TV, incluso nos aventurábamos a compilarlo. Esta vez no hará falta ni siquiera eso, ya que nos bajaremos directamente la versión ya compilada lista para generar como proyecto Xcode.
Tengo que decir que en mis pruebas, la versión de MAME para iOS ha evolucionado de forma increíble: la interfaz es simple, fácil de utilizar, completísima – y la calidad de la emulación es impresionante. No dudéis en probarlo en vuestro iPhone para comprobarlo vosotros mismos. Vamos allá:
1.- Instalar Xcode. Esto id haciéndolo lo primero porque la descarga es rápida, pero la descompresión e instalación del entorno puede tardar dependiendo de vuestro Mac. Sólo tenéis que ir la sección de Xcode de la Mac App Store, y darle a Instalar.
2.- Crearte o usar una cuenta de desarrollador: Lo primero que necesitas es una cuenta de desarrollador. No tiene que ser de pago. Si no tenemos ninguna, podemos crear una completamente gratis (se tarda 1 minuto) desde este enlace: https://developer.apple.com/account/
2.- Descargar el repositorio Master de MAME4iOS: Accedemos a la página web del repositorio y copiáis la dirección que os indico en la siguiente imagen:
3.- Abrir el proyecto en Xcode: Una vez que tengáis el Xcode instalado, abridlo. Posiblemente se necesite instalar alguna herramienta más, el propio entorno os lo dirá y es completamente automático. Una vez que aparezca la pantalla de bienvenida, pulsad «Clone an existing project» e introducís la dirección que hemos copiado antes:
4.- Elegid en el desplegable la rama «master» y pulsáis «Clone»:
5.- Os acabáis de descargar todo el código fuente de Mame para iOS. Abrid Finder y navegad hasta donde os lo habéis descargado para abrir el archivo de proyecto .xcodeproj. Por defecto, lo tendréis en: /Documentos/MAME4iOS/Xcode/MAME4iOS/MAME4iOS.xcodeproj.
Si no lo encontráis, buscadlo con Spotlight. Doble click en este archivo para abrirlo con Xcode.
6.- Dadle tiempo, que tiene que procesar todos los ficheros la primera vez que se abre…
7.- Antes de generar el ejecutable, vamos a añadir dos cosas imprescindibles: nuestro Apple ID para firmar la app y enlazar nuestro iPhone/iPad para que instale. Para la primera parte, abrid Xcode / Settings
8.- Váis a la pestaña de Accounts, pulsáis en el logo del «+» y añadís el Apple ID de desarrollador que habéis creado antes (o ya teníais). Con esto firmaremos nuestra app para poder instalarla de forma segura en nuestro iPhone.
9.- Conectad por cable vuestro iPhone a vuestro Mac y abrid Xcode / Window / Devices and Simulators. Veréis vuestro teléfono conectado, pero no emparejado aún. Para ello, debéis desbloquear el iPhone (o iPad, se hace exactamente igual) con vuestro código y «Confiar» en el Mac al que lo habéis conectado. Tendréis que activar el modo desarrollo del iPhone / iPad en Preferencias / Privacidad y Seguridad / Modo de desarrollador / (Sí).
10.- Una vez el iPhone/iPad conectado y emparejado, no tenéis que hacer nada más. Por supuesto, la versión para iPad aprovecha al máximo la mayor pantalla del iPad (¡probadlo!). La apariencia de la pantalla en un iPhone será similar a ésta:
11.- Cerramos la ventana de «Devices and Similators» y en Xcode, pulsad donde indica la flecha primero y después en la parte central superior para seleccionar la versión «Release» que es la que vamos a instalar en nuestro iPhone, tal como indica la imagen:
12.- Ahí ya varemos que vamos a instalar la versión Release y se habrá seleccionado el iPhone que hemos emparejado antes. Si no es así, seleccionadlo a mano en la ruta del paso anterior. Una vez hecho esto, veréis este error en la pestaña «Signing & Capabilities»:
13.- Esto es porque tenemos que indicarle con qué cuenta firmar la app. Seleccionar en el desplegable la cuenta de desarrollo que hemos instalado antes.
14.- Os seguirá dando error porque tenéis que cambiar el «Bundle Identifier» de la app. Podéis cambiar la parte central que pone «example», poniendo lo que queráis. Yo he puesto «pedroaznar», pero aquí podéis poner la palabra que más os guste (es indiferente). Pulsad Enter y desaparecerán los errores y todo estará listo para instalar.
15.- Vamos arriba a la izquierda, y le damos al enorme botón de «PLAY» para que Xcode genere la instalación. Recordad tened en todo momento el iPhone conectado mediante cable a vuestro Mac.
16.- La primera instalación tarda algo de tiempo, no os preocupéis y dejadlo con confianza. Al cabo de un rato aparecerá un «Build Succeeded» y si miráis en vuestro iPhone… ¡encontraréis el bonito icono de MAME! Ya podéis desconectar el iPhone del Mac.
17.- Ahora vamos a enviar ROMs (los juegos) al emulador. MAME tiene muchas formas de hacerlo, incluso creando un servidor Web propio que podemos abrir desde el Mac, pero vamos a hacerlo todavía más fácil: usando AirDrop. Vamos por ejemplo a la página de ROMs de descarga legal de MAME y os bajáis las que queráis desde el Mac. Ahora podéis enviarlas directamente mediante AirPlay al iPhone. Ahí se os presentará una ventana preguntando con qué queréis abrirlo: seleccionar «MAME4iOS». Al cabo de unos segundos, aparecerán los juegos en la interfaz del MAME. Si no es así, cerrad la app y volvedla a abrir:
¡Y ya lo tenemos! El único «pero» a este proceso es que al usar una cuenta de desarrollo gratuita, la firma de la app sólo nos dura 7 días: es decir, antes de siete días, si queremos seguir usando la app, tenemos que conectar el iPhone al Mac, abrid Xcode y simplemente volved a pulsar el botón «PLAY». No es necesario hacer nad amás. La firma de la app se actualizará y no perderemos ningún juego que tengamos ya instalado.
MAME para iOS funciona espectacular
La última versión de MAME para iOS está muy bien diseñada. Ya veréis como al añadir ROMs automáticamente se baja toda la información del juego, pantalla, datos… y la capacidad de personalización de la app es tremenda: desde filtros de pantalla, diferentes tipos de controles táctiles, importación de ROMs desde iCloud (por si no tenemos un Mac a mano), skins…
Si disponéis además de un mando externo de consola, podréis conectarlo a vuestro iPhone y MAME es totalmente compatible. Incluso, si utilizáis los populares mandos que se acoplan al teléfono, como el Razer Kishi V2 que analizamos en Applesfera hace unos meses. Es completamente compatible con MAME y no hay que configurar absolutamente nada: conectar y jugar.
Espero que este pequeño tutorial os sirva para aprender algo más de Xcode (si no lo habíais usado nunca) y perderle un poco el miedo al entorno de desarrollo de Apple, que podemos aprovechar para pequeños proyectos personales como éste – y de paso aprovechar para jugar en cualquier momento a aquellos míticos juegos de antaño.