Montar una máquina arcade es un trabajo bastante sencillo y apto para cualquier persona sin conocimientos previos. Como mínimo, el proceso que se va a cubrir en esta guía. Siguiendo los pasos que voy a marcar, deberías obtener una Raspberry Pi perfectamente configurada para jugar a lo que plazca. Bien, empecemos pues.
TODO LO NECESARIO
- Raspberry Pi.
- Wi-Fi.
- Un ordenador para seguir estos pasos.
- Adaptador para microSD en caso de no tener una entrada en tu ordenador.
- Mando con el que se quiera jugar.
- Teclado, ratón o monitor extras para la Raspberry te darán comodidad.
- Paciencia, vale la pena tomarse con calma y tiempo de sobra el proceso.
- Identificación del modelo de Raspberry Pi
- Métodos alternativos
- Descarga de Lakka
- Paso 1 - Seleccionar plataforma
- Paso 2 - Seleccionar Raspberry
- Paso 3 - Descarga correspondiente
- Preparación del medio de instalación
- Paso 1 - Seleccionar el archivo
- Paso 2 - Seleccionar la microSD
- Paso 3 - Flashear
- Instalación de Lakka
- Asignación de botones
- Haciendo el "Mapeo" manual
- Instalación de ROMs
- Paso 1 - Configurar SAMBA
- Paso 2 - Transferir la ROM
- Paso 3 -
- Ejecución de un juego
- Conclusión
- Utilidades
1 - IDENTIFICACIÓN DEL MODELO DE RASPBERRY PI
Para empezar necesitamos encontrar cual es modelo exacto de nuestra Raspberry. Evidentemente, si lo tienes claro, ignora este paso, pero toda precaución es poca. El segundo método que voy a mostrar requiere de tener Raspbian instalado, así que considera lo siguiente antes de intentarlo:
Puedes tratar de identificar tu placa gráficamente. Esto es, buscar en la propia placa si está escrito el modelo, cosa que es muy probable. Seguramente esté cerca de los pines libres, como en la imagen que voy a adjuntar ahora. También puedes tratar de identificar el modelo buscando fotos por internet, pero no es lo más eficiente.
Si lo intentamos via software, una vez en Raspbian, encontrarás en “Menu” (arriba a la izquierda del todo, el equivalente al botón de inicio de Windows) la categoría “Accesories” o “Accesorios” y dentro de ella "Terminal".
Menu → Accesories → Terminal
Código:
cat /proc/cpuinfo
Lo único que interesa es "Revision", penúltima línea. Encontrarás algo como lo siguiente:
Código:
Revision : a02082
MODELO | REVISIÓN | “Revision” EN CPUINFO |
Model B Rev 1 | 0002 | |
Model B Rev 1 ECN0001 (no fuses, D14 removed) |
0003 | |
Model B Rev 2 | 0004 0005 0006 |
|
Model A | 0007 0008 0009 |
|
Model B Rev 2 | 000d 000e 000f |
|
Model B+ | 0010 0013 900032 |
|
Compute Module | 0011 | |
Compute Module | 0014 (Embest, China) | |
Model A+ | 0012 | |
Model A+ | 0015 (Embest, China) | |
Model A+ | 0015 (Embest, China) | |
Pi 2 Model B v1.1 | a01041 (Sony, UK) | |
Pi 2 Model B v1.1 | a21041 (Embest, China) | |
Pi 2 Model B v1.2 | 1.2 | a22042 |
Pi Zero v1.2 | 1.2 | 900092 |
Pi Zero v1.3 | 1.3 | 900093 |
Pi Zero W | 1.1 | 9000C1 |
Pi 3 Model B | 1.2 | a02082 (Sony, UK) |
Pi 3 Model B | 1.2 | a22082 (Embest, China) |
Pi 3 Model B+ | 1.3 | a020d3 (Sony, UK) |
Pi 4 | 1.1 | a03111 (Sony, UK) |
Pi 4 | 1.1 | b03111 (Sony, UK) |
Pi 4 | 1.2 | b03112 (Sony, UK) |
Pi 4 | 1.1 | c03111 (Sony, UK) |
Pi 4 | 1.2 | c03112 (Sony, UK) |
Pi 400 | 1.0 | c03130 (Sony, UK) |
Este modelo en la tabla vemos que corresponde a una Pi 3 Model B, revisión 1.2, que tiene 1GB de RAM y ha sido ensamblada en Reino Unido. Nos bastará con saber que es una Raspberry Pi 3.
MÉTODOS ALTERNATIVOS
Existen un par de métodos más para identificar la placa. Son igual de sencillos, un solo comando, pero al fin y al cabo dan la misma información y los otros dos requieren tener una versión de Raspbian actualizada. Por garantizar la compatibilidad, he optado por este método mostrado, pero usa el que gustes. Los otros dos comandos son:
Código:
pinout
Código:
cat /proc/device-tree/model
2 - DESCARGA DE LAKKA
Ahora es turno de descargar el SO (Sistema Operativo) que va a tener nuestra Raspberry. Se trata de Lakka.
Lakka ha sido diseñado específicamente para lo que estamos haciendo, crear una máquina de emulación con la Raspberry. Es además una versión modificada de RetroArch, otro SO pensado para lo mismo, pero en ordenadores corrientes (aunque se puede instalar como un programa cualquiera en ordenadores, consolas, Android, iOS…).
Por suerte, se trata de una distro Linux open-source y gratis. Para descargarla iremos a su web oficial y pulsamos en “Get Lakka” o haz click aquí.
PASO 1 - Seleccionar plataforma
El primer paso es indicar el SO que estamos usando en el ordenador que tiene abierta la web. La gran mayoría tendrá Windows, que también es mi caso y por eso seguiré ese ejemplo para esta guía.
PASO 2 - Seleccionar Raspberry Pi
Ahora toca encontrar nuestra Raspberry. Como veréis no pide el “Revision code” exacto, solo hace falta ver a qué serie de Raspberry corresponde. Ya que la Raspberry que uso yo es la que he usado antes de ejemplo, seguiré seleccionando Raspberry Pi 3.
PASO 3 - Descarga correspondiente
Se nos muestran 4 botones de descarga distintos en la zona superior. En cada uno está escrito el modelo de Raspberry para el que se ha pensado. En mi caso, será el tercero, compatible con Raspberry Pi 2/3.
En caso de querer, puedes descargar una versión de desarrollo, son los otros cuatro botones de abajo. Tiene las funciones más modernas, pero están menos pulidas, así que puedes ser víctima de bugs y todo tipo de errores. No va a mejorar la experiencia de juego, así que tampoco es recomendable.
3 - PREPARACIÓN DEL MEDIO DE INSTALACIÓN
Para poder usar el archivo que acabamos de descargar, tenemos que instalar un programa en nuestro PC. En este caso vamos a conocer Etcher, una opción de tantas existentes, pero también la recomendada por el equipo de Lakka y como es de interfaz amigable, es la que vamos a usar.
Bien, entonces descargamos e instalamos Etcher para la plataforma que sea que estamos usando desde su web oficial o dándole al botón que veremos en la página de Lakka, que también redirige a la web de Etcher. Ábrelo y empecemos.
PASO 1 - Seleccionar el archivo
Bienvenidos a Etcher. Selecciona el archivo que has descargado dándole al botón azul que dice “Flash from file” y navegando en el explorador de archivos hasta encontrarlo.
Nota: Si no tiene el mismo nombre, icono o no acaba en .gz no hay motivo para asustarse, es por la configuración de mi ordenador y la versión que he descargado.
PASO 2 - Seleccionar la microSD
Siguiente botón azul, ahora hay que seleccionar el dispositivo donde vamos a grabar la imagen. Puede que hasta se haya seleccionado uno automáticamente si ya lo teníais conectado al ordenador. Si sigue encendida, apagad la Raspberry y extraed la microSD. Insertadla en el ordenador donde estéis trabajando, en caso de no tener un puerto (que es lo más probable) os hará falta un adaptador.
Si nos encontramos en Windows, tal vez os pida formatear la microSD al conectarla. Continuad sin formatearla, de eso se encargará Etcher ahora.
Fijaos en el nombre que tiene el dispositivo no vaya a ser seleccionéis uno erróneo, el dispositivo que seleccionemos va a formatearse así que perderás toda la información que tenga. Por eso, cuidado con el que seleccionéis y si hay algo que no queráis perder, haced una copia de seguridad.
PASO 3 - Flashear
Por último, solo queda flashear/grabar/montar/quemar (llámalo como estés acostumbrado/a) la imagen, último botón azul. En caso de que el ordenador pida algún permiso, concededlo.
Empezaréis a ver esta pantalla con la barra de progreso azul, donde descomprime el archivo descargado. Será bastante rápida.
Una vez alcance el 100% pasará a la morada, que durará un poco más:
Aquí es donde realmente se flashea la imagen. Sobra decirlo, pero no extraigas tu microSD o podrías dañarla.
Al finalizar la morada aparecerá la verde:
Este paso verifica que el procedimiento ha sido correcto. Técnicamente, si le das a “Skip” puedes saltarte esta parte, pero no dura nada y te aporta seguridad. En caso contrario, sería raro, pero pueden surgir errores. Lo ideal sería investigar el error y solucionarlo, pero en un principio, no nos afectará ningún error a menos que indique que el flasheo no se ha completado.
Cuando acabes exitosamente el flasheo el programa te lo hará saber con una notificación y este aspecto:
Puedes cerrar el programa. A menos que quieras flashear Lakka en otra microSD porque estás montando más máquinas, entonces haz click en el botón azul que dice “Flash another” y te llevará a la pantalla inicial.
4 - INSTALACIÓN DE LAKKA
Si alguna vez has formateado tu ordenador sabrás que después de flashear la imagen como hemos hecho, toca iniciar el ordenador desde ese dispositivo e instalar el SO en el disco duro. Sorpresa, esta vez no. Al flashear la imagen en la MicroSD, que actúa como almacenamiento de la Raspberry, estamos directamente instalando el SO en la microSD. Por tanto, instalarlo es tan simple como volver a conectar la microSD a la Raspberry y encenderla.
La primera vez que se inicie la Raspberry con Lakka verás que después de preparar algunas cosas se reinicia. Es natural. Déjala ajustarse e iniciará con normalidad.
5 - ASIGNACIÓN DE BOTONES
Nota: A partir de aquí, no puedo hacer más capturas porque Lakka no tiene forma de hacerlas ni soporta virtualización como para hacerlo en mi ordenador, disculpad la calidad de las imágenes.
Ahora mismo tendrás tu Raspberry iniciada. Toca conectar el mando de consola que tengas a mano. En esta guía utilizo el mando de mi vieja PlayStation 3. Si habéis tenido una también os resultará familiar la interfaz de Lakka.
Al conectar el mando en la esquina inferior izquierda verás pop-ups anunciado cada evento. Contecta el mando:
Puede que tengáis que pulsar el botón central (botón PS, botón guía...) para que el mando se active después de conectarlo.
Si el mando funciona con todos los botones como toca, enhorabuena, eres uno de los agraciados que no tendrá que hacer la asignación de teclas y puedes obviar el siguiente apartado, avanza hasta la Parte 6 – Instalación de una ROM.
Si no es así, continúa leyendo.
HACIENDO EL “MAPEO” MANUAL
Probad a moveros por los menús con las flechas de vuestro teclado, o como análogo, las teclas W A S y D. En caso de querer usar el mando, buscad botón a botón cuales son el de Aceptar (X en PlayStation, B en Xbox…)y Atrás (O en PlayStation). En mi caso, el botón de aceptar era L3 (pulsar el joystick izquierdo) y el de Atrás el botón Select.
El joystick izquierdo o la cruceta funcionarán para desplazarse por los menús. Moveos con eso y aceptad con el botón que tengáis asignado.
Desplazaos una vez a la derecha para cambiar de menú al que tiene un icono con engranajes, “Configuración”. Bajad dos veces hasta el icono del mando, “Input”, y entrad.
Ahora bajad hasta “User 1 Binds”, el primer icono del mando que se puede ver.
Dentro de este menú os importan por ahora la primera y la tercera línea. La primera aseguraos de que marca "User 1 Device Type = RetroPad" y la tercera que marque el nombre del mando que queréis usar ahora mismo (en mi caso, "User 1 Device Index = Sony PLAYSTATION(R)3 Controller"). Este proceso habrá que repetirlo hasta cuatro veces dependiendo de la cantidad de mandos que se quieran configurar.
Y si todo está como debe, podemos empezar con el mapeo. Pero antes voy a dejar claro un pequeño detalle:
Las letras a las que se refiere Lakka corresponden a los de un mando de la SNES. Esta es la imagen que aportan desde Lakka como referencia:
Si bajamos hasta la cuarta opción, “User 1 Bind All”, debería de ir haciendo el trabajo automáticamente. Al acabar puedes pasar al siguiente apartado. De no ser así, la vía manual no es complicada, e incluso puedes personalizar algún botón si es de tu gusto.
Para ello bajamos hasta "User 1 B Button (down)", basta con ver el icono para entender a qué botón se está refiriendo. Pulsamos ahí y tendréis 5 segundos para asignar un botón. Si no pulsáis nada, entonces no se asignará nada. Id haciendo botón a botón la asignación.
Por si a alguien le confunde, estos iconos corresponden a los gatillos. “Shoulder” son los botones más altos (R1 y L1) y “Trigger” los de mayor recorrido (R2 y L2). Cuando vayáis a asignar los Joysticks, cuidado con usar el izquierdo cuando diga "left" y el derecho cuando diga "right" o los intercambiaréis.
Con esto habéis acabado el mapeo de las teclas. Pulsad "User <X> Save Autoconfig" donde <X> es el número de usuario que estéis configurando.
Por si es de interés: se puede configurar un mapeo concreto dependiendo del juego/consola que se emule. Al ser algo muy específico no voy a cubrirlo en la guía.
6 - INSTALACIÓN DE ROMs
Cuando quieres añadir un juego a esta nueva consola, los archivos que hacen falta se llaman ROMs. Para la demostración yo tengo Super Bomberman, juego que originalmente era de la SNES. La distribución de este tipo de contenido está penada, por ende, no voy a animaros a descargar ilegalmente una. Como aclaración: Lakka es un proyecto perfectamente legal.
PASO 1 - Configurar SAMBA
Para pasar la ROM a la Raspberry, tenemos que conectarla al Wi-Fi de nuestra casa y activar el servicio SAMBA. No hace falta entrar en detalles de qué es, pero nos permite compartir el almacenamiento de la Raspberry con dispositivos en nuestra red local (nuestro ordenador conectado al mismo Wi-Fi, por ejemplo).
Para activar el Wi-Fi, volvemos a la sección de “Configuración” y bajamos hasta la opción “Wi-Fi”. Conectaos a vuestra red, volved atrás e id a la siguiente opción, “Services”. Ahora activad SAMBA y estará listo. La ruta es:
Configuración → Wi-Fi → Configuración → SAMBA
Nota: Las capturas que voy a enseñar ahora son en Ubuntu, una distro Linux. No hay razón concreta, cuando he retomado el trabajo estaba usándola. No importa que uséis Windows, por ejemplo. Os muestro en una imagen dónde se encuentra. No tendréis el menú idéntico, pero igualmente la última opción será la que buscamos. Disculpad las molestias.
Volvemos a nuestro ordenador y ahora buscamos los dispositivos en nuestra red desde el explorador de archivos que usemos.
Puede que, como a mí, os aparezca dos veces "Lakka". La buena es la que está en mayúsculas, la otra no os dejará ni abrirla.
Dentro de Lakka buscad la carpeta “ROMs”, entrad y ahí dentro copiad la ROM.
Red → LAKKA → ROMs
Ahora volved a la Raspberry y moveos hasta el último menú a la derecha, un símbolo de +. Seleccionad la primera opción, con el icono de la carpeta, “Scan Directory”, y dentro la segunda opción, “<Scan This Directory>”.
+ → Scan Directory → <Scan This Directory>
7 - EJECUCIÓN DE UN JUEGO
Si volvemos sobre nuestros pasos, descubriremos un nuevo icono a la derecha del +. Y efectivamente es nuestro juego. Le damos y después le damos a "Run". Se nos desplegará un listado bastante largo y repetitivo.
Estas opciones representan el emulador que vamos a usar. Hagamos una pequeña explicación sobre cómo funciona la máquina que acabamos de construir, para entender qué es el emulador. Ignórala si quieres y sáltate el párrafo.
La Raspberry Pi como máquina física es el contenedor de su sistema operativo, Lakka. Lakka tiene la función de gestionar los mandos, almacenar ROMs y usar emuladores, que son el “motor” que realmente hace funcionar a los juegos. Estos emuladores vienen de fábrica con Lakka y hay una abrumadora cantidad para cubrir una gran variedad de consolas. De hecho, como se observa, hay múltiples opciones por plataforma.
En el caso que estamos viendo ahora mismo, hay exactamente 9 emuladores para la misma consola. Después de probar algunos, he optado por "Nintendo - SNES/Famicon (Snes9x 2010)". Al seleccionar un emulador, se guarda como opción por defecto y si quieres volver a cambiarlo, antes de darle a “Run” necesitas darle a “Set Core Association” y elegir uno nuevo.
CONCLUSIÓN
¡Eso es todo! Has conseguido utilizar una Raspberry Pi para crear tu propia máquina arcade. Evidentemente, si el objetivo es llegar al máximo nivel de inmersión, podría considerarse utilizar una botonera como la de toda la vida e incluso comprar/fabricar la carcasa. La botonera requeriría configuración adicional, pero se venden kits completos por internet. Lamentablemente, mi nivel y presupuesto, que consistía en una Raspberry cedida y mis trastos de casa, no daban para más.
Probad a consultar las utilidades si necesitáis más ayuda. O a mi, se hará lo que se pueda.
Espero haber ayudado, o como mínimo, entretenido. ¡Pasad buen día!
UTILIDADES
Artículo publicado para el concurso de redacción de Geeknetic.
Comentario