GSnes9x Documentation
Author: Canek Peláez Valdés
Keywords: GSnes9x, Snes9X, GNOME, Emulator

# Documentación de GSnes9x

Copyright (C) 1999 Canek Peláez Valdés

This program and the documentation are free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation; either version 2 of the License, or (at your option) any later version. This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.

You should have received a copy of the GNU General Public License along with this program; if not, write to the Free Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA

For more details see the file COPYING.

## Tabla de contenidos

1. Introducción
2. Uso
   - Preferencias Globales
     - Soporte para Esound
   - Añadir ROMs
   - Preferencias de ROM
     - Códigos de Trampa
   - Borrar un ROM
   - Jugar un ROM
3. Contribuir

## 1. Introducción

GSnes9x es un front end para el emulador de SNES Snes9x. Le permite el definir y conservar un conjunto de opciones para un ROM en particular cuando lo juegue, y el definir opciones globales para nuevos ROMs que vayan a ser incluidos. Además mantiene una base de datos para Códigos de Trampa para cada ROM, donde usted puede salvar tantos códigos como desee.

Necesitará Snes9X (yo uso la versión 1.21 para Linux) y un ambiente GNOME en funcionamiento para GSnes9x. Es también recomendable el tener unos cuantos ROMs :)

Recuerde; es ilegal en la mayoría de los países el tener un ROM si no es dueño del cartucho original.

Para información del programa y la última versión, puede ir a la página de GSnes9x en:

http://abulafia.fciencias.unam.mx/~canek/gsnes9x/

Para información acerca de Snes9X puede ir a la página de Snes9x en:

http://www.snes9x.com

## 2. Uso

El usar GSnes9x es en teoría muy sencillo. Entonces espero que no necesite pasar mucho tiempo con este manual.

### Preferencias Globales

Cuando ejecute GSnes9x por vez primera, tal vez desee echar una mirada a las Preferencias Globales. Puede abrir la ventana de diálogo de las Preferencias Globales a través de la barra de menú con Archivo->Preferencias Globales, a través de la barra de herramientas con el botón de Preferencias Globales, o presionando Ctl-G.

La principal intención de las Preferencias Globales es configurar la interface con el sistema, y para pre-definir las preferencias por defecto para ROMs que vayan a ser incluidos.

Las Preferencias Globales NO anulan las preferencias individuales de cada ROM. Esto es porque sí tiene sentido el tener un conjunto por defecto de opciones para nuevos ROMs por ser incluidos, pero con el número disponible de opciones en Snes9x es necesario que este conjunto pueda ser modificado individualmente por cada ROM, sin modificar todos los otros ROMs con esto.

Casi toda opción es un botón de chequeo que activa o desactiva una opción de la línea de comandos de Snes9X. Las excepciones más notables están en las entradas de texto Comando Snes9X, Servidor Snes9X y Puerto del servidor de Snes9X en la página de Sistema, y los botones del Mapeo de joystick en la página de Joystick.

La entrada de texto Comando Snes9X es especial: si no llena esta entrada, la ventana de dialogo no podrá cerrarse. Esto es porque GSnes9x necesita algún comando para ejecutar Snes9X.

Las otras entradas en los botones son parámetros para opciones de la línea de comandos de Snes9X. Si estas opciones no son seleccionadas, entonces los widgets serán insensibles y no podrá tocarlos. Puede activar una de las opciones, llenar la entrada, y desactivar la opción de nuevo: el parametro será salvado en caso de que active la opción de nuevo en el futuro.

Las Preferencias Globales son salvades en el archivo `$HOME/.gnome/gsnes9x.d/GSnes9x.conf`, y desde la versión 2.5 puede manualmente editar el archivo, pero DE MANERA ENFÁTICA RECOMENDAMOS NO HACERLO.

### Soporte para Esound

GSnes9x cuenta con soporte para Esound, poniendo en pausa al demonio mientras ejecuta Snes9X. Sin embargo, Esound funciona a través de autentificación, y si usted ejecuta Esound con la cuenta root, todos los clientes que quieran poner en pausa al demonio deberán de ser root.

Si ejecuta Esound con una cuenta que no sea root, entonces esta cuenta Y root podrán poner en pausa al demonio.

Además, si usted es usuario de RedHat, asegúrese que la opción "Usar Eventos de Sonido" esté activada en el Centro de Control.

### Añadir ROMs

Cuando haya terminado de configurar sus Preferencias Globales, puede empezar a añadir ROMs a la lista de GSnes9x.

Puede abrir la ventana de diálogo de Añadir ROM a través de la barra de menú con Archivo->Añadir ROM, a través de la barra de herramientas con el botón de Añadir ROM, o pressionando Ctl-N.

Debe llenar las cuatro entradas de texto, o la ventana de diálogo no le permitirá añadir el ROM. Dado que de hecho cada ROM tiene un archivo de configuracíon con el nombre del ROM, el caracter '/' no puede estar en el nombre del ROM (lo sé, lo sé; a mí también me gusta Ranma 1/2).

Si intenta añadir un ROM con el mismo nombre de un ROM ya existente, el programa se lo notificará con una ventana de error.

En las etapas iniciales de desarrollo de GSnes9x, el campo de Compañía tenía sentido, pero ninguna de las versiones públicas hace algo con ese campo. Entonces de hecho, el campo es inútil, pero necesita poner algo en él. Puede poner el nombre de la compañía del juego, o puede poner lo que usted quiera.

Si no pone un archivo de ROM válido en la entrada de Archivo del ROM, nada malo sucederá, pero obviamente Snes9X fallará cuando intente ejecutar el ROM.

El botón Buscar... para esta entrada tratará de usar la variable de ambiente `$GSNE9X_ROM_DIR` como directorio inicial para navegar. Si no está definida, entonces tratará la variable de ambiente `$SNES96_ROM_DIR`. Si ambas fallan, entonces usará `$HOME`.

Si no pone una imagen válida en la entrada de Archivo de imagen, el programa le advertirá acerca de esto y caragará la imagen por defecto (la fea imagen que aparece cuando ejecuta GSnes9x por primera vez). Si el programa no puede cargar la imagen por defecto, entonces un pixmap negro será usado.

El botón Buscar... para esta entrada tratará de usar la variable de ambiente `$GSNE9X_IMAGE_DIR` como directorio inicial para navegar. Si no está definida, entonces tratará la variable de ambiente `$SNES96_ROM_DIR`. Si ambas fallan, entonces usará `$HOME`.

Cada ROM tiene un archivo de configruación, llamado como el ROM en el directorio `$HOME/.gnome/gsnes9x.d/`.

### Preferencias del ROM

Después de haber añadido un ROM, ya puede modificar sus preferencias particulares.

La ventana de diálogo de Preferencias del ROM necesita que un ROM esté seleccionando. En GSnes9x, la selección de un ROM no está determinada por la lista: está determinada por la imagen. Un ROM es seleccionado si y sólo si la imagen del ROM es visible.

Puede seleccionar un ROM haciendo click sobre su nombre en la lista de ROMs, o navegando la lista con las teclas del cursor y entonces precionando la barra espaciadora. Además, haciendo click en un ROM con el botón derecho del ratón seleccionará el ROM y un menú de contexto aparecerá. Con el menú puede seleccionar Jugar el ROM, Borrar el ROM, o abrir la ventana de diálogo de Preferencias del ROM.

También podrá hacer aparecer el menú de contexto haciendo click con cualquier botón en la imagen del ROM (un ROM debe estar seleccionado).

También puede abrir la ventana de diálogo de Preferencias del ROM a través de la barra de menú con Archivo->Preferencias del ROM, a través de la barra de herramientas con el botón de Preferencias del ROM o presionando Ctl-R. Recuerde: la ventana de diálogo se abrirá si y sólo si un ROM está seleccionado (y esto es si y sólo si su imagen es visible).

Las Preferencias del ROM son un supraconjunto de las Preferencias Globales (excepto por la página de Sistema), y todo lo dicho en la sección de Preferencias Globales es válido aquí. Las Preferencias del ROM sólo añade tres páginas: la página de Información del ROM, la página de Formato de imagen del ROM y la página de Códigos de Trampa (que merece atención especial).

La página de Información del ROM contiene la información usada por GSnes9x para catalogar y presentar el ROM. Como se dijo en la sección de Añadir ROMs, el campo de Compañía es in práctica inútil, y puede poner lo que quiera ahí. Los cuatro campos deben contener algo, si no, no podrá aplicar los cambios hechos al ROM.

La página de Formato de imagen del ROM contiene las distintas opciones para el formato del ROM. Puede seleccionar cualquier combinación, incluyendo cosas como tener Usar encabezado y No usar encabezado activadas al mismo tiempo. Sin embargo, Snes9X sólo utiliza la primera elegida, y GSnes9x siempre usa el mismo orden para las opciones de la línea de comandos, así que es mejor que haga una selección lógica.

Si selecciona la opción de Cargar archivo de datos de partida, debe especificar un archivo de datos de partida. De otra manera, la venta de diálogo no le dejará aplicar los cambios.

Todos los botones de chequeo en las Preferencias Globales y en las Preferencias del ROM tienen tips con ayuda acerca de la opción. La ayuda es extraída del `README.TXT` original de Snes9X (Gracias a Gary Henederson por dejarme incluir su texto en mi programa).

### Códigos de Trampa

Una de las mejores cosas de GSnes9x es la Base de datos de Códigos de Trampa. Con Snes9X puede juegar un ROM con hasta diez Códigos de Trampa de cada tipo (Game Genie, Action Replay y Gold Finger) activados.

Pero con GSnes9x puede mantener salvados tantos códigos como desee, y definir esos diez códigos con sólo unos cuantos clicks del ratón. (Puede obtener un MONTÓN de Códigos de Trampa en CheatZilla).

La página de Códigos de Trampa de la ventana de diálogo de las Preferencias del ROM le permite accesar la base de datos de Códigos de Trampa a través del botón Cambiar, o limpiar el ROM de Códigos de Trampa con el botón Limpiar.

Los botones de chequeo de cada tipo de código le permiten el decidir no usar los códigos sin tener que limpiar el ROM de códigos.

La báse de datos para códigos es de verdad simple: le permite introducir un código con un nombre y una descripción corta, y remover códigos. Desde la base de datos, puede definir hasta 10 códigos para el ROM.

Los códigos de Game Genie son guardados en el archivo `$HOME/.gnome/gsnes9x.d/<nombre-del-rom>.gg`, los códigos de Action Replay en el archivo `$HOME/.gnome/gsnes9x.d/<nombre-del-rom>.ar`, y los códigos de Gold finger en el archivo `$HOME/.gnome/gsnes9x.d/<nombre-del-rom>.gf`.

POR FAVOR, NO TOQUE ESTOS ARCHIVOS. Mientras que con los archivos de configuración valía la pena el hacer una sintaxis, los archivos de códigos consisten sólo del código, el nombre y la descripción. Así que deje que el programa maneja estos archivos.

Para definir códigos para un ROM, debe seleccionar por lo menos 1 código, y a lo más 10.

### Borrar un ROM

Puede borrar un ROM de la base de datos seleccionando un ROM, y entonces a través de la barra de menú con Archivo->Borrar ROM, o a través de la barra de herramientas con el botón de Borrar ROM, o presionando Ctl-D o la tecla Supr. Además, como se explicó en la sección Preferencias del ROM, puede usar el menú de contexto.

Cuando borra un ROM, todos los archivos relacionados con él serán borrados, incluyendo los archivos con códigos de trampa (no, no borra ni el archivo de ROM ni el archivo de imagen :)

### Jugar un ROM

Después de que haya añadido los 245 234 ROMs en su colección a la base de datos, tal vez por fin desee jugar.

Puede jugar un ROM clickeándolo con el botón derecho del ratón y eligiendo la opción Jugar ROM del menú de contexto, o seleccionando el ROM y entonces a través de la barra de menú con la opción Jugar ROM, o a través de la barra de herramientas con el botón de Jugar ROM, o presionando Ctl-P o la tecla de Enter.

La línea de comando utilizada para invocar Snes9X es impresa en la salida estándar, para que pueda ver cómo es llamado realmente.

Las únicas maneras en que GSnes9x fracasará al correr Snes9X son:

1. Snes9X no está instalado o en el `PATH`.
2. El comando de Snes9X es erróneo.
3. El archivo de datos de partida no existe (aquí, Snes9X terminará por sí mismo).
4. La línea de comandos tiene una opción inválida.

   Esto puede ocurrir porque GSnes9x le permite usar cualquier comando para Snes9X, y entonces usted puede usar el porte para SVGA, por ejemplo, y el porte para SVGA no soporta todas las opciones del porte de X11 (por ejemplo, la opción -sc). Recuerde: el front end es principalmente diseñado para el porte de X11.

### Contribuir

Creo que GSnes9x ha alcanzado un punto donde es muy maduro, y creo que la funcionalidad del programa hasta ahora es bastante buena. Entonces, yo esperaría que la escritura de código en el futuro se centrara en mantener el programa funcionando con versiones futuras de Snes9X y GNOME, y arreglando aquellos bugs que siempre se nos olvidan.

Pero GSnes9x no está terminado aún: necesita traducctores. Sería genial que todos los tips fueran traducidos a las más lenguas posibles (la parte central del programa son las preferencias).

Y, por supueso, si ustedes los usuarios realmente quieren algo que actualmente no está disponible, escríbanme. Tal vez sea añadida (la base de datos de los Códigos de Trampa no fue mi idea :)

Entonces, si tienen cualquier cosa que decir acerca del programa, por favor déjenme saberlo.

Canek Peláez Valdés
canek@abulafia.fciencias.unam.mx