Author Topic: Mame setup for Linux  (Read 40377 times)

akafox

  • Moderator
  • Hero Member
  • *****
  • Posts: 985
    • View Profile
Mame setup for Linux
« on: August 07, 2015, 03:41:32 PM »
MAME: Multiple Arcade Machine Emulator

This is what most people want. After all what is a arcade cabinet with out arcade games right?

MAME is one of the easier emulators to set up..and can be the hardest to "get right". MAME is very customizable and can be tweaked down to the last detail.

If you you have no clue what I am talking about go here: http://mamedev.org/release.html

(Note: This is written for basic mame and some knowledge of the "command line" is needed. Most front-ends use the command line version of MAME..thus they act like a gui (graphical user interface) If you want a gui version of mame see below.

When you first start MAME you will get an error stating no games found. Go ahead and exit if you have tried. Once you have found games, or roms, place them in your 'roms' directory/folder. If you don't have one you can make one. (Normally in your mame directory/folder to keep everything organized.) (Go here to get test roms: http://www.mamedev.com/roms/)

To begin:
   When you first start mame you will get an error stating no games found. Go ahead and exit. Once you have found games, or roms, place them in your 'roms' directory. If you don't have one you can make one. (Normally in your $HOME/.mame/ folder to keep everything organized.) Now you'll need to open a terminal. Press Alt+F2 in the popup box type terminal (it will very by distro).

Once there type:
Code: [Select]
cd .mame
then type:
Code: [Select]
mame -cc
this will create a mame.ini file in the folder that you are in. This will create a mame.ini file in the folder that you are in. (You can always run the mame -cc command again and have a new mame.ini if you mess it up real badly.)

Your mame.ini will look something like this:

#
# CORE CONFIGURATION OPTIONS
#
readconfig                1
writeconfig               0

#
# CORE SEARCH PATH OPTIONS
#
rompath                  <-here 
hashpath                 
samplepath     
artpath                 
ctrlrpath                 
inipath                   
fontpath                 
cheatpath                 
crosshairpath           

   The rompath is the only thing we are worried about right now. You can erase the entire line up to but not including the word rompath. Then type :

Code: [Select]
$HOME/.mame/roms
Now save the changes now type in your terminal mame and start it. You should see a blue box with a list of games you have. You can press enter to start a game or press esc to quit
Your mame now works! you can start a game from a terminal and start a game directly by typing mame game name. Example:

Code: [Select]
mame carpolo
 in a terminal will start carpolo without the gamelist (which is how front ends like attract mode work).

Rom problems:
   First never unzip a rom unless you know what you are doing! MAME can not load an unzipped rom. Roms can be gotten singingly or in "update" packs. You need to have all the needed files in the zip and all the needed zip files. Example: you have galaga.zip but there are other files it needs (.zip files) to start. Why not just put them all together? Well you can and mame will be happy and load fine. However, some of these files are in other namco games (e.x. mappy, rally X, ect.) so now you have them twice, or more, and it's a "waste of space". Loading  from a terminal will spit out any errors of missing files and tell you the extra roms you need. For more information go here: http://www.xente.mundo-r.com/mame/Update286.html pdf version here http://www.xente.mundo-r.com/mame/pdf/Update286.pdf

chd files:
   Compressed hard drive (or compressed hunks [of] data..depending on who you are talking to.) are large (some are HUGE) data files. Mostly this is a hard drive image (ex. killer instinct) or a CD-ROM (ex. street fighter III) or a laser disc (ex cliffhanger). These need to be placed in a sub-folder in your roms folder with the name of the rom. (e.g. /.mame/roms/kinst/)
   
Missing sounds:
   With some older games you need what are called sound samples. These are not  emulated sounds per say but raw sound files called by mame at the appropriate time. With out them you do not hear the sounds in the game. Play galaga without sound samples and when you die your ship explodes without a sound..Who wants that!? So after you find the sound samples you put them in your folder (e.g. .mame/samples) and in your mame.ini change your samplepath:

#
# CORE SEARCH PATH OPTIONS
#
rompath                   $HOME/.mame/roms
hashpath                 
samplepath               <---here
artpath                 
ctrlrpath                 
inipath   
             
Erase everything in front of where it says samplepath and type:

Code: [Select]
$HOME/.mame/samples
Now save the new changes. Now when you run a game like galaga you will have all your sounds!

Why is it a tiny screen! To go fullscreen look in your mame.ini for:

#
# VIDEO OPTIONS
#
video                     opengl
numscreens                1
window                    0
maximize                  1
keepaspect                <---here
unevenstretch             <---here
centerh                   1
centerv                   1
waitvsync                 0
syncrefresh               0
scalemode                 none

Change keep aspect and uneven stretch from a zero (0) to one (1)

I hope that will get you started with some basics of mame. Happy gaming!

other mame versions:
SDLmame   http://sdlmame.wallyweek.org ([ubuntu] debs and files archives)

wolfmame   http://replay.marpirc.net/ (pre-compiled mame for submitting official high scores) (outdated but works)

gui mame:
http://qmc2.arcadehits.net/wordpress/ (can install from the repositories..you need to have the command line version of mame installed)
« Last Edit: August 12, 2015, 06:16:37 PM by akafox »
People want life easy..then complain about it

akafox

  • Moderator
  • Hero Member
  • *****
  • Posts: 985
    • View Profile
Re: Mame setup for Linux
« Reply #1 on: February 25, 2022, 08:21:46 PM »
Well I was trying to update the above post but it is giving me some problems posting the update not sure way...so here is an update:

Advanced mame https://www.advancemame.it/download Must be compiled for source code on linux. Based on a 0.106 version of mame roms. Note that the code was "bumped up" to mame version 0.170. i.e. it is newer code but still based on mame version 0.106)

NegaMame: http://babelsoft.net/products/negamame.htm Now honestly I can not tell you much about this as  I can not get it to run. Something about a QT5 error. I will try to actually compile it soon instead of using the pre-compiled binary and see what happens...

gui mame: http://qmc2.arcadehits.net/wordpress/ (can install from the repositories No longer maintained. You can compile the latest source if you wish ..you need to have the command line version of mame installed. Note you CAN use the CHD gui from the windows based version in WINE, but you will need a newer version of a windows MAME to use it properly!)

pfeMAME: https://sourceforge.net/projects/pfemame/files/ This is a pure gui it doesn't come with any mame at all. You choose the version of mame you want and tell it where it is. You will need a version of real mame (i.e. not a libretro core) to use this one properly as it will need to use the listxml command to build the list correctly.

Negatron: http://babelsoft.net/products/negatron.htm this is the gui for Negamame I think. Again I have not been able to try it..I'll get back to you!
« Last Edit: February 25, 2022, 08:44:33 PM by akafox »
People want life easy..then complain about it