Freevo

- User Documentation

# GamesConfig

1. Usage
2. Playstation One
   1. For playing PSone CD's
   2. For playing PSone CD ISO's
3. SNES
4. MAME
5. Megadrive
6. Gameboy Advance
7. Atari
8. Amiga
9. Linux Games
10. Exiting an emulator with LIRC

## Usage

FREEVO now supports the following emulators :

1. XMAME (keyword MAME: ROM name parsing and identification ( http://x.mame.net), works great in SDL mode or X11/DGA

2. SNES (keyword SNES) : Internal ROM indentification (ZSNES in SDL mode - http://www.zsnes.com/ )

3. GENESIS/MEGADRIVE (keyword GENESIS) : Internal ROM identification (GENERATOR in SVGALIB mode - http://www.squish.net/generator/ )

4. Playstation

5. Gameboy advance

6. Atari

7. Amiga

8. ?? Spectrum PleaseUpdate

In addition, you can call all the emulators you want by simply using the GENERIC keyword, as described below. In this case, Freevo will only launch the associated command line with the file selected in the menu.

The GAMES_ITEMS structure in freevo_config.py is now built with the following parameters :

- [ ( <NAME>, <FOLDER>, (<TYPE>, <COMMAND_PATH>, <COMMAND_ARGS>, <IMAGE_PATH>, [<FILE_SUFFIX_FOR_GENERIC>]) ) ], ...

  where :

  - <TYPE> : Internal game types ('MAME', 'SNES', 'GENESIS') or generic one (GENERIC) <COMMAND_PATH> : Emulator command <COMMAND_ARGS> : Arguments for the emulator <IMAGE_PATH> : Optionnal path to the pictures/snapshot for games <FILE_SUFFIX_FOR_GENERIC> : If the folder use the GENERIC type, then you must specify here the file suffix used by the emulator

## Playstation One

### For playing PSone CD's

In your freevo local_conf.py add these lines to the games section;

    GAMES_ITEMS = [ ('PSone CD', '/etc/freevo/psx',
                    ('GENERIC', '/usr/local/bin/psx-cd', '', '',
    [ 'psx' ] )) ]

Here we execute a script to run epsxe, the reason for this is I was personally having trouble with the GENERIC command line arguments. The contents of the psx-cd script are as follows;

    #!/bin/bash
    /usr/local/games/psx/epsxe -nogui

Finally, create a file in the /etc/freevo/psx directory called PSone.psx

    # touch /etc/freevo/psx/PSone.psx

### For playing PSone CD ISO's

In your freevo local_conf.py add these lines to the games section;

    GAMES_ITEMS = [ ('PSone IMG', '/home/psx',
                    ('GENERIC', '/usr/local/bin/psx-iso', '', '',
    [ 'img','bin','iso' ] )) ]

The psx-iso script here contains;

    #!/bin/bash
    /usr/local/games/psx/epsxe -nogui -loadiso $*

## SNES

    GAMES_ITEMS = [('SNES', '/home/media/games/snes/roms', ('SNES', '/usr/local/bin/zsnes', '-m -r 3 -k 100 -cs -u', '', None )) ]

## MAME

    GAMES_ITEMS = [ ('MAME', '/home/media/games/xmame/roms',
                    ('MAME', '/usr/local/bin/xmame.SDL', '-fullscreen -modenumber 6', '/home/media/games/xmame/shots', None)) ]

## Megadrive

    GAMES_ITEMS = ('MEGADRIVE', '/home/media/games/megadrive/roms', ('GENESIS', '/usr/local/bin/generator-svgalib', '', '', '' )) ]

## Gameboy Advance

    GAMES_ITEMS = [ ('Visual Boy Advance', '/home/media/games/vba/roms',
                    ('GENERIC', '/usr/local/vba/VisualBoyAdvance', ' ', '', [ '.gba' ] )) ]

## Atari

Hatari http://hatari.sf.net/

    GAMES_ITEMS = [ ('Atari Emulation', '/usr/local/freevo/testfiles/atari',
                    ('GENERIC', '/usr/games/bin/hatari',
                     '--memsize 1 --tos /usr/local/freevo/testfiles/atari/tos.img -f ',
                     '', [ 'st', 'msa', 'gz'] )) ]

## Amiga

e-uae http://www.rcdrummond.net/uae/, should also work with regular uae http://www.freiburg.linux.de/~uae/

    GAMES_ITEMS = [('Amiga', '/home/freevo/Games/Amiga/adfs',
                   ('GENERIC', '/usr/bin/e-uae',
                    '-0', '', ['adf'])) ]

## Linux Games

How to launch Tux Racer for example from Freevo :

Check the path of tuxracer, if its in the path you can

    # which tuxracer

otherwise check /usr/games and /usr/local/games

Add in var GAMES_ITEMS :

    GAMES_ITEMS = [ ('Tux Racer', '/etc/freevo/games/tuxracer',
                    ('GENERIC', '/usr/games/tuxracer', '', '', [ 'tux' ] )) ]

Create file /etc/freevo/games/tuxracer/tuxracer.tux

    # mkdir /etc/freevo/games
    # mkdir /etc/freevo/games/tuxracer
    # > /etc/freevo/games/tuxracer/tuxracer.tux

If you get a screenshot of this games, copy to this new directory

    # cp TuxRacer.jpg /etc/freevo/games/tuxracer/cover.jpg

## Exiting an emulator with LIRC

To stop a running PSX/snes/etc... emulator and return to the menu add the following into your lircrc;

    begin
            button = menu
            prog   = irexec
            repeat = 3
            config = kill -INT `pidof epsxe`
    end

My 'menu' button also provides the EXIT code in freevo, you could also hook other scripts up to this to make sure it kills any processes that are running the the foreground.

Make sure you start irexec at some point before freevo starts like so;

    /usr/local/bin/irexec /etc/freevo/lircrc &

last edited 2005-03-25 20:24:28 by HenrikFarre
current version: http://freevo.sourceforge.net/cgi-bin/doc/GamesConfig