MAME/Console Bartop Bartop Software setup


Ubuntu Setup

1.  Install Ubuntu 6.10
1 Gb Swap
/        18 Gb ext3 on hard drive 1
/home    114 Gb ext3 on hard drive 2
one user "mame"

2.  Install additional packages using "Add/Remove Applications"
    gcompris
    gcompris administration
    childs play
    
3.  Install all the software updates from the Ubuntu site

4.  Setup to automatically login as user "mame".

5.  Modified the init script to start WahCade on login.


X Windows Setup
Since this computer had an older Nvidia video card, getting the X system up and running correctly took a few extra steps.  I used the instructions from Lunapark6 (http://lunapark6.com/envy-easy-way-to-install-nvidia-drivers-in-ubuntu.html).

1.  mame%  wget http://albertomilone.com/ubuntu/nvidia/scripts/envy_0.8.1-0ubuntu6_all.deb

2.  mame%  sudo dpkg -i envy_0.8.1-0ubuntu6_all.deb
If you are already running X, press Alt+Cntrl+F1 to kill X-windows and drop to a terminal

3.  mame%  envy
       
4.  Follow the instructions, answer Yes a few times and it should be all set

If you ugrade any packages for Ubuntu that mess up your X system again, all you need to do is drop to a terminal and type "envy", answer Yes a few times and you should be back in business.

Shutdown gracefully
I could not figure out how to shutdown the computer gracefully by pressing the powerbutton on the cabinet.  I looked at acpid, the button kernel module, etc. but could never get it to work.  I am guessing it is probably due to the age of the motherboard or some issue with the power button I put in the cabinet.

 I decided to map a key sequence to shutting down the computer.  Rather than mapping WahCade to have a Del button (for "Ctrl-Alt-Del" shutdown), I mapped "Shift-Control-Escape" to the shutdown command.  Here is how I did it:

1.  Allow the user "mame" to shutdown the computer
mame% sudo visudo -f /etc/sudoers
add this line:%mame ALL=/sbin/shutdown
where mame is the username
mame%  sudo chmod u+s /sbin/halt
I don't use this
mame%  sudo chmod u+s /sbin/shutdown

2.  Map the key sequence to shutdown
mame%  gconf-editor
Go to Apps->Metacity->Keybinding-Commands
Click on "command_1", enter "/sbin/shutdown -h -P now" for the "value"
Go to Apps->Metacity->global_keybindings
Click on "run_command_1"
Enter the keys to use in "value", I used "<Shift><Control>Escape"
Exit gconf-editor
Now pressing "<Shift><Control>Escape" gracefully shuts down the computer.  "<Shift><Control>Escape" maps to "Y-B-Esc" on the control panel

Hide the OS during boot
I am still trying to figure out how to hide the OS as it boots.



xmame setup


1.  Install with synaptic package manager
xmame-x.106
xmame-svga
    
2.  mame% vi /etc/xmame/xmamerc
    edit to change paths for this system
    $HOME/emulators/mame
        artwork
        bkground
        cabinets
        cpanel
        flyers
        marquees
        roms
        samples
        sfrush
        snap
        titles
        catver.ini
        history.dat
        controls.ini
        
    also change fullscreen to "1"
        
3.  mame%  xmame -verifyroms

4.  mame%  xmame -listxml > mameinfo.xml




xmess setup


1.  xmess with xmame .106

2.  edit /etc/xmess/xmessrc and change fullscreen to "1"

3.  to run any of the emulators with xmess;
    mame%  xmess EMUNAME -cart FULL_PATH_TO_ROM
    where EMUNAME is the name of the emulator you wish to run and FULL_PATH_TO_ROM is the path to the rom ($HOME/emulators/EMUNAME)
    
4.  Emulators and required files
    Some emulators need bios files to run, these should be put in /usr/share/games/xmess/bios
         
   
 Emulator   File
a2600 none
nes none
snes /usr/share/games/xmess/bios/spc700.rom
/usr/share/games/xmess/bios/dspldata.bin
coleco /usr/share/games/xmess/bios/colecto/coleco.rom
c64 /usr/share/games/xmess/bios/c64/?????
gbcolor none
gen_usa none
sms /usr/share/games/xmess/bios/bios13fx.rom
n64 none
odyssey2 /usr/share/games/xmess/bios/o2bios.rom
intv /usr/share/games/xmess/bios/intv/grom.bin
/usr/share/games/xmess/bios/intv/exec.bin

I could not get Intellivision, C64 or Odyssey 2 to work.  I will continue to work on these as time permits.  I do have the gamelist and Wahcade .ini files setup for these so they show in the emulator choices.



wahcade setup

1.  Download wahcade 0.19 from http://www.anti-particle.com/wahcade.shtml

2.  Install python 2.4, pygtk2 2.6 and elementree/celementree using the package manager

3.  Install wahcade packages
mame%  gunzip wahcade-0.19.tar.gz
mame%  tar xvf wahcade-0.19.tar
mame%  cd wahcade-0.19
mame%  ./install
mame%  wahcade (this will create a .wahcade directory in your home directory that will contain the config files to use
    
You can also download the .deb package and intall this
    
4.  Download the layouts from http://www.emuchrist.org/cpviewer/mamewahlayouts.htm, get the full 800x600 set
Unzip this into ~/.wahcade/layouts

5.  Setup .ini files
The .ini files for xmess can be set as below:

segams.ini
Title                Sega Master System
Application            /usr/games/xmess
Command Line        sms -cart [rompath]/"[name]".[romext]

The "" around [name] allow the roms to have spaces in the names.

6.  Edit ~/.wahcade/ctrl/default.ini
Next emulator         DIK_SPACE
Previous Emulator    DIK_LSHIFT    
Exit                DIK_Q
(this will help prevent exiting from Wahcade if the Exit button is pushed repeatedly)

7.  Use "wahcade-layout-editor" to edit the layouts.  Open the downloaded layout, change the path to the layout images and save.