sábado, 23 de enero de 2016

Instalar y configurar emulationstation en Ubuntu 14.04 64 bits

Emulationstation es un lanzador (front-end) que te permite organizar y lanzar desde un solo sitio todos tus juegos retro por plataforma emulada.


Admite temas y diversos mandos para controlar los menús.
Es software libre multiplataforma y está disponible para Debian/Ubuntu, Windows, Mac y Raspberry pi.

Descarga e instalación

Tanto si lo vamos a usar con Ubuntu como con Debian nos tendremos que bajar la versión para Debian, de la página de descargas.
Una vez descargado podríamos instalarlo desde consola con el comando dpkg pero en Ubuntu se puede hacer haciendo doble clic sobre el archivo, con lo que abriremos el paquete con el centro de software y una vez allí solo hay que pulsar el botón Instalar.

Configuración

Definición de ubicaciones (emuladores y ROMs)

Tenemos que definir donde están los emuladores que vamos a usar y donde están los juegos para ello hay que editar el archivo $HOME/.emulationstation/es_systems.cfg que en principio tendrá el siguiente contenido:
<!-- This is the EmulationStation Systems configuration file.
All systems must be contained within the <systemList> tag.-->

<systemList>
    <!-- Here's an example system to get you started. -->
    <system>

        <!-- A short name, used internally. Traditionally lower-case. -->
        <name>nes</name>

        <!-- A "pretty" name, displayed in menus and such. -->
        <fullname>Nintendo Entertainment System</fullname>

        <!-- The path to start searching for ROMs in. '~' will be expanded to $HOME on Linux or %HOMEPATH% on Windows. -->
        <path>~/emuladores/nes/consolilla/GAME</path>

        <!-- A list of extensions to search for, delimited by any of the whitespace characters (", \r\n\t").
        You MUST include the period at the start of the extension! It's also case sensitive. -->
        <extension>.nes .NES</extension>

        <!-- The shell command executed when a game is selected. A few special tags are replaced if found in a command:
        %ROM% is replaced by a bash-special-character-escaped absolute path to the ROM.
        %BASENAME% is replaced by the "base" name of the ROM.  For example, "/foo/bar.rom" would have a basename of "bar". Useful for MAME.
        %ROM_RAW% is the raw, unescaped path to the ROM. -->
        <!-- command>retroarch -L ~/cores/libretro-fceumm.so %ROM%</command -->
        <command>fceu -fs 1 %ROM%</command>

        <!-- The platform to use when scraping. You can see the full list of accepted platforms in src/PlatformIds.cpp.
        It's case sensitive, but everything is lowercase. This tag is optional.
        You can use multiple platforms too, delimited with any of the whitespace characters (", \r\n\t"), eg: "genesis, megadrive" -->
        <platform>nes</platform>

        <!-- The theme to load from the current theme set.  See THEMES.md for more information.
        This tag is optional. If not set, it will default to the value of <name>. -->
        <theme>nes</theme>
    </system>

    <system>
        <name>snes</name>
        <fullname>SuperNintendo Entertainment System</fullname>
        <path>~/emuladores/snes/roms</path>
         <extension>.smc .SMC</extension>
        <command>fceu -fs 1 %ROM%</command>
         <platform>snes</platform>
        <theme>snes</theme> 
   </system>

</systemList>
Aunque el archivo tiene comentarios explicando donde va cada cosa, voy a aclararlo sobre todo para los novatos o los que no dominan el inglés:
  • La parte que está en negrita es la definición de un sistema que trae el archivo por defecto, está parte hay que duplicarla y ponerla en la correcta posición para cada sistema, como yo he hecho en la parte que está en gris (y que no es del archivo original).
  • Shortname: es el nombre interno del sistema para identificar este sistema, lo importante es no repetirlo y que tenga coherencia.
  • Fullname: es el nombre del sistema completo.
  • Ruta a las ROMs: Ubicación a partir de la cual emulationstation buscará las ROMs del sistema.
  • Extensiones a buscar: terminación de los archivos que emulationstation considerará ROMs.
  • Comando del emulador: lo que habría que ejecutar desde consola para lanzar el emulador y ejecutara automáticamente la ROM (definida como %ROM%), también hay que incluir parámetros para que se ejecute a pantalla completa.
    He puesto tanto la línea original comentada como la que realmente uso.
  • Scraping: Nombre de la plataforma para buscar capturas de los juegos e información extra en internet (debe estar definida en el archivo PlatformIds.cpp).
  • Theme: etiqueta opcional con la que definimos el tema gráfico del sistema.
    Para ver que temas hay disponibles mirad en THEMES.md
Esta parte de la configuración, aunque fácil, es algo tediosa pero una vez que la tienes te queda muy chulo.

Controles

La primera vez que ejecutamos emulationstation (por ahora lo haremos desde consola) detectará cualquier mando que tengamos conectado al ordenador, o no detectará ninguno si solo tenemos conectado el teclado.
En este caso cuando nos pida que pulsemos una tecla la pulsamos y la dejamos pulsada hasta que cambie el menú y empiece a pedirlos las teclas para navegar por los menús.
Al final pulsamos OK con la tecla que hayamos definido como botón A y ya está configurado.
Insisto que aquí definimos las teclas PARA EL MENÚ DE SELECCIÓN DE EMULADORES, luego cada emulador tendrá su propia configuración.
La tecla definida como el disparador B es la que nos permitirá ir atrás en los menús.

Uso

Lo lanzamos desde consola o creamos un acceso directo para hacerlo fácilmente desde el escritorio gráfico.
El uso no tiene mucho misterio, navegamos por los diferentes sistemas y diferentes ROMs, cuando queremos algo pulsamos en el disparador A y cuando queremos volver para atrás en el B.

En próximos artículos veremos como instalarlo y configurarlo en raspberry pi y otros detalles.

Continuará...

1 comentario:

  1. Script para tener la escena retro española.
    http://www.consolaviejuna.com/2016/04/18/disponible-el-script-para-tener-la-escena-retro-espanola-en-tu-raspberry-pi/

    ResponderEliminar