11/9/15

MAME script (I) - Lanzador de juegos arcade.

Todos conocemos la plataforma MAME (o Multiple Arcade Machine Emulator), pero ultimamente han desaparecido muchos programas que gestionaban mediante interfaz gŕafica nuestras roms.
Como siempre, marqué como objetivo un script que fuera liviano y para esto utilizé Zenity como interfaz gráfica. Me puse manos a la obra y desarrolle un script muy pequeño que quedó tal que así:
#!/bin/bash
# MAME script v0.01
# Autor: Esteban C. Sanz
# dependencias: zenity sldmame

DIRECTORIO=~/roms

while : ; do

OUTPUT=$(
for ARCHIVO in `ls $DIRECTORIO/*zip`
do 
ROM=`basename $ARCHIVO .zip`
NOMBRE=`sdlmame -ll $ROM | awk -F\" '/\".*\"/ {print $2}' | tr -d "'"`
echo $ROM  # Columna "Rom"
echo $NOMBRE # Columna "Juego"
done | zenity --list \
--width=550 \
--height=500 \
--title="Juegos MAME" \
--column="Rom" \
--column="Juego";
)

if [ $? -eq 1 ]; then break; else
sdlmame $DIRECTORIO/$OUTPUT.zip
fi 

done
En la línea 4 pasamos como variable la carpeta conde estan nuestras roms. En mi caso esta ubicada en el raíz de HOME con el nombre "roms" (sin comillas). Cada cual debe de asignar a DIRECTORIO la ruta de la carpeta donde tenga sus roms.
Por ejemplo, si tenemos las roms en HOME/juegos/mame roms/ declararemos DIRECTORIO de la siguiente forma: DIRECTORIO=~/juegos/mame roms ¿Facil, no?
Luego lo guardamos como mame_script.sh y le damos permisos de ejecución con:
chmod +x /ruta del archivo/mame_script.sh
Ya podemos lanzar nuestras roms ejecutando: /ruta del archivo/mame_script.sh
Les dejo un par de enlaces a las principales páginas para poder descargar sus roms:

Rom-World.com http://www.rom-world.com/dl.php?name=MAME
Coolrom.com http://www.coolrom.com/roms/
Un saludo!

0 comentarios:

Publicar un comentario