Configurando pyLAUNCH

Una vez instalado, pyLAUNCH debe ser configurado, para ello es necesario que conozcas los diferentes ficheros de configuración y sus funciones.

La estructura habitual de pyLAUNCH contiene los siguientes ficheros a tener en cuenta:

pyLAUNCH.exe
pylaunch.cfg
pylaunch.log
cfg\mame.cfg
cfg\mame.map
cfg\mame.lst
cfg\state.cfg
cfg\pyLAUNCH.cmd
data\ (opcional)
sound\start_item.wav
sound\exit_menu.wav
sound\next_song.wav
sound\prev_song.wav
sound\next_item.wav
sound\prev_item.wav
sound\next_list.wav
sound\prev_list.wav
sound\launch_fav.wav (no implementado)
sound\launch_search.wav (no implementado)
pyLAUNCH.exe
pyLAUNCH.exe es ejecutable principal, que puede cambiar de nombre o extensión dependiendo de la versión de pyLAUNCH que hayas descargado, por ejemplo pyLAUNCH.py si te bajas el código fuente.

pylaunch.cfg
Es el fichero de configuración principal, ampliamente explicado en esta misma sección.

pylaunch.log
pylaunch.log Es un fichero que registra los mensajes de depuración que se produjeron la última vez que se ejecutó pyLAUNCH, muy útil si tenes problemas configurando alguna lista. Si se ha producido algún tipo de error no controlado el interprete de Python probablemente genere de forma adicional un fichero llamado pylaunch.exe.log.

Dentro del directorio CFG de pyLAUNCH es donde van los diferentes ficheros de configuración de las listas, he creado un caso que contiene el máximo número de ficheros por lista como ejemplo:

cfg\mame.cfg
mame.cfg es el fichero de configuración de la lista, ampliamente explicado en esta misma sección.

cfg\mame.map
mame.map no es más que un fichero de texto que sirve para asignar nombres a los elementos de la lista, aunque en este caso la lista se llama mame.cfg y el fichero se llama mame.map esto no tiene porque ser necesariamente así, de hecho un fichero de nombres puede utilizarse desde más de una lista.

cfg\mame.lst
mame.lst es un fichero de “filtro” que debe llamarse exactamente igual que la lista y tener extensión .lst, estos ficheros sirven para indicar que elementos queremos mostrar en la lista. por ejemplo si tenemos nuestro list_item_dir apuntando a e:\mameboot\mame\roms es posible que la lista contenga miles de elementos. Si por ejemplo queremos hacer una selección de favoritos, filtrar por año o lo que se nos ocurra, basta con crear un fichero de texto con los nombres sin extensión de los ficheros que queremos filtrar. Con la siguiente estructura:

aliens
atetris
bbmanw
bloodbro
boblbobl
captcomm
cawing
chplftbl
dkong
endurobl
frogger
galaxian
ghouls
gng
ikari
mslug
mspacman
outrun
pang
pbobblna
pitfall2
robocop
rtype
sf2ce
sharrier
shinobi
turfmast
viewpoin
wof
wrally
wwfsstar
xybots
Es fácil darse cuenta de que la estructura de este fichero es muy similar a la de los ficheros .ini que se encuentra (por ejemplo) en el directorio FOLDERS de MAME de esta forma pasar nuestras listas de MAME a pyLAUNCH se hace realmente sencillo.

LA ULTIMA LÍNEA DE UN FICHERO DE FILTRO DEBE ESTAR SIEMPRE EN BLANCO

PD: estos son mis favoritos de mame

cfg\state.cfg
Contiene información de estado; qué canción se estaba reproduciendo, que lista estaba activa, etc. Se utiliza para recordar el estado de pyLAUNCH al entrar y salir.

cfg\pyLAUNCH.cmd
Este fichero se genera de forma automática cuando el modo dbug está activado, cada vez que se ejecuta un elemento de una lista, se trata del script de ejecución del ultimo elemento lanzado, suele tener una estructura* similar a la siguiente:

@echo off
echo LOADING Space Harrier
e:
cd e:\mameboot\mame
e:\mameboot\mame\mame.exe e:\mameboot\mame\roms\sharrier.zip

* El contenido de este fichero puede cambiar sustancialmente en función de los diferentes parámetros de configuración de cada lista.

data\ (opcional)
Aunque no es obligatorio yo suelo incluir aquí las imágenes de fondo de las listas y otros ficheros que pueda utilizar el front-end.

sound\
El directorio sound contiene los efectos de sonido que se reproducirán durante el manejo del front-end, la idea de utilizar .wav’s y dejarlos de forma externa, es el facilitar la personalización de dichos sonidos. Si no se incluye un sonido en concreto (o el directorio completo) los sonidos no encontrados simplemente no se reproducirán.

Los eventos de sonido se corresponden con:
sound\start_item.wav Ejecutar un elemento/juego.
sound\exit_menu.wav Salir del front-end.
sound\next_song.wav Avanzar a la siguiente melodía.
sound\prev_song.wav Retroceder a la anterior melodía.
sound\next_item.wav Avanzar al siguiente elemento dentro de la lista.
sound\prev_item.wav Retroceder al anterior elemento dentro de la lista.
sound\next_list.wav Avanzar a la siguiente lista.
sound\prev_list.wav Retroceder a la anterior lista.
sound\launch_fav.wav (no implementado)
sound\launch_search.wav (no implementado)