Todo buen videojugador desea tener sus clasicos preferidos instalados en alguno de sus dispositivos. En esta entrada trataremos de explicar paso a paso el proceso de instalción de Retroarch y Emulation Station para cumplir ese deseo a todos los usuarios de Linux.

Emulationstation es un frontend diseñado originalmente para Raspberry Pi, disponible para Windows y Linux promueve un entorno liviano, muy bello y funcional para concentrar todos nuestras ROMs en un solo menu multiconsola. Puede configurarse para correr culquier emulador que sea capaz de ejecutarse desde la línea de comandos.

RetroArch es una GUI para el emulador multiconsola Libretro, que puede ejecutar juegos de casi todos los sistemas clásicos. Una de sus ventajas es la gran comunidad que brinda soporte, las actualizaciones periódicas que recibe y la compatibilidad para instalarlo en Windows, Linux, Android, iOS, PS3, etc. Además es capaz de emular toda esta larga lista de sistemas: SNES,WonderSwan,PlayStation,PC Engine,Neo-Geo Pocket,Virtual Boy,Atari 2600,Atari Lynx,NES,Game Boy/Color.Game Boy Advance.Sega Systems (Master, Genesis, Sega CD, Game Gear),Arcade MAME,Nintendo DS,Dreamcast,Quake,Doom,Cave Story,Dinothawr,DOS,Nintendo 64,LucasArt Game Engines,PSP,Sega Saturn.

Instalación

Para instalar Retroarch en nuestro sistema ejecutaremos en la terminal:

 
sudo add-apt-repository ppa:libretro/stable
sudo apt-get update
sudo apt-get install retroarch retroarch-* libretro-*

Para instalar EmulationStation será necesario ingresar a www.emulationstation.org y descargar el último paquete .deb ṕara Debian. Una vez descargado el paquete lo ejecutamos e instalamos.

Configurar Emulationstation

Ya instalados abriemos el archivo de texto es_systems.cfg que se encuentra en la carpeta ~/.emulationstation, dentro de nuestra carpeta personal.

Ahi tendremos que configurar cada uno de los sistemas que querramos emular en formato XML, respetando las etiquetas propuestas en la documentación de ES.

Por ejemplo, para configurar Super Nintendo:

<systemList>
<system>
 <name>snes</name>
 <fullname>Super Nintendo</fullname>
 <path>/home/staberman/ROMS/SNES/roms</path>
 <extension>.smc</extension>
 <command>retroarch -f -L /usr/lib/x86_64-linux-gnu/libretro/snes9x_libretro.so "%ROM_RAW%"</command>
 <platform>snes</platform>
 <theme>snes</theme>
</system>

En esta pagina encontraremos todos los detalles sobre los nombres de las plataformas disponibles para configurar en emulation station: http://emulationstation.org/gettingstarted.html#config

Y en esta wiki encontraremos informacion sobre los nombres de los cores disponibles para retroarch: http://wiki.libretro.com/index.php?title=Main_Page#Core_Software_Library

Lo único que queda es crear la configuración para cada uno de los sistemas. Aquí debajo comparto mi configuración para que observen cada detalle, cada uno lo hará con sus emuladores y ubicaciones de preferencia personal. Cabe notar que para MAME preferí utilizar el emulador oficial MAME en vez de retroarch porque particularmente me ha dado mejores resultados.

Screenshot from 2014-11-14 08_54_51

 <system>
 <name>sega</name>
 <fullname>Sega Genesis</fullname>
 <path>/home/staberman/ROMS/SEGA/roms</path>
 <extension>.bin</extension>
 <command>retroarch -L /usr/lib/x86_64-linux-gnu/libretro/genesis_plus_gx_libretro.so "%ROM_RAW%"</command>
 <platform>megadrive</platform>
 <theme>megadrive</theme>
</system>

<system>
 <name>mame</name>
 <fullname>mame</fullname>
 <path>/usr/local/share/games/mame/roms/</path>
 <extension>.zip</extension>
 <command>mame %BASENAME%</command>
 <platform>mame</platform>
 <theme>mame</theme>
</system>


<system>
 <name>psx</name>
 <fullname>psx</fullname>
 <path>/home/staberman/ROMS/PSX/roms</path>
 <extension>.cue</extension>
 <command>retroarch -L /usr/lib/x86_64-linux-gnu/libretro/pcsx_rearmed_libretro.so "%ROM_RAW%"</command>
 <platform>psx</platform>
 <theme>psx</theme>
</system>



<system>
 <name>n64</name>
 <fullname>n64</fullname>
 <path>/home/staberman/ROMS/N64/Project64/roms/</path>
 <extension>.n64</extension>
 <command>retroarch -L /usr/lib/x86_64-linux-gnu/libretro/mupen64plus_libretro.so %ROM%</command>
 <platform>n64</platform>
 <theme>n64</theme>
</system>

<system>
 <name>gba</name>
 <fullname>gba</fullname>
 <path>/home/staberman/ROMS/GBA/roms</path>
 <extension>.gba</extension>
 <command>retroarch -L /usr/lib/x86_64-linux-gnu/libretro/vbam_libretro.so "%ROM_RAW%"</command>
 <platform>gba</platform>
 <theme>gba</theme>
</system>

</systemList>

Configurar RetroArch
retroarch-content-1-658x500

Una vez instalado el emulador todo “sale andando” asi que podemos dejar todo como está, o bien hacer algunos ajustes a los controles en “Settings -> Inputs”, o bien justar los paramteros de video y sonido segun nuestras necesidades para logara el mejor rendimiento en “Settings->Audio/Video”.

BIOS

Sistemas como PSX o SEGA necesitan de sus respectivas BIOS para poder correr los juegos sin problemas. La manera mas sencilla es descargar un pack de BIOS (esto es ilegal si no se posee la consola original), deposiarlas todas juntas en un mismo directorio y configurar su ubicación en “Settings -> Directories->BIOS”.

Otra gran ventaja de Libretro es que podemos instalar nuevos cores, como el de PCSX para correr juegos de playstation traducidos o modificados sin tantos problemas de compatibilidad. Para instalarlos basta con copiar lo archivos en /usr/lib/x86_64-linux-gnu/libretro/ que es donde se ubican los cores por default.

Sin más dejo aqui un enlace con todos los archivos necesarios para hacer correr ROMs de PSX con el core PCSX y tambien los de SEGA: DESCARGAR CORES y BIOS

Amante del software libre y la naturaleza, dedica sus ratos libres a resolver los maravillosos misterios de la vida en el hogar.