Main Restorations Software Audio/Jukebox/MP3 Everything Else Buy/Sell/Trade
Project Announcements Monitor/Video GroovyMAME Merit/JVL Touchscreen Meet Up Retail Vendors
Driving & Racing Woodworking Software Support Forums Consoles Project Arcade Reviews
Automated Projects Artwork Frontend Support Forums Pinball Forum Discussion Old Boards
Raspberry Pi & Dev Board controls.dat Linux Miscellaneous Arcade Wiki Discussion Old Archives
Lightguns Arcade1Up --- Bug Reports --- Site News

Unread posts | New Replies | Recent posts | Rules | Chatroom | Wiki | File Repository | RSS | Submit news


Author Topic: MAME's folder structure  (Read 6553 times)

0 Members and 1 Guest are viewing this topic.


  • Trade Count: (0)
  • Jr. Member
  • **
  • Offline Offline
  • Posts: 3
  • Last login:January 30, 2021, 12:04:03 pm
  • All I have in this world is my word and my balls.
MAME's folder structure
« on: April 14, 2020, 08:21:43 pm »
Hi all. I could use some help understanding the MAME linux (Ubuntu-based) folder structure better. In Windows, everything goes in the MAME folder, e.g. C:\MAME\. In contrast, in Linux Mint, I find the following:
  • /usr/games [The MAME binary's location]
  • ~/.mame ["Core Output" folders, i.e. cfg, diff, nvram, sta, ui, and the files ui.ini and mame.ini]
  • /etc/mame [ini files, including another mame.ini]
  • /usr/share/games/mame -AND some are also in- /usr/local/share/games/mame [Supporting folders, e.g. artwork, cheat, samples, etc.]
A couple questions:
  • Why are there two mame.ini files? Which one should I edit when I need to make changes?
  • The ui.ini file references folders that don't exist, but that I'd like to create, e.g. "marquees_directory [TAB] marquees". In Windows, that means the the "marquees" folder goes in MAME's 'root' folder, i.e. C:\MAME\. There's no such MAME root folder for linux, so where is ui.ini looking for these folders?
The mame.ini and ui.ini files read like they're operating in a Windows environment, and I could really use help understanding how to interpret them for linux.


  • Trade Count: (+5)
  • Full Member
  • ***
  • Offline Offline
  • Posts: 1847
  • Last login:August 16, 2022, 02:39:59 pm
  • Web Developer.
Re: MAME's folder structure
« Reply #1 on: May 30, 2020, 07:34:06 am »
That structure is from some one who packages it. It can get confusing. Just curl, wget, or clone the repo. Compile it or cp the bin from the package you already have.


  • Trade Count: (0)
  • Full Member
  • ***
  • Offline Offline
  • Posts: 10
  • Last login:December 07, 2021, 11:02:43 pm
  • I want to build my own arcade controls!
Re: MAME's folder structure
« Reply #2 on: October 27, 2021, 01:25:38 am »
Sorry to resurrect an OLD topic, but just wanted to clarify some tings.

Linux is a multi user system, thus, things get installed in such a way that all users of a system can use them, yet retain their own settings.
Thus, everyone has access to the basics; the binary, the roms (in /usr/local/share/games/mame/roms), and then global configuration files go in /etc/ (thus /etc/mame/mame.ini and such).

You, as a user of the system (maybe the ONLY user of the system) can have your own overrides, and custom configs, they'd go in your home folder, which would be ~/.mame/ (which is linux shorthand for /home/username/.mame/)  Files in here (such as mame.ini will override anything in /etc/mame/mame.ini)

to answer questions (although, you most likely figured it out by now):
1) if you want to do it system-wide (for "everyone"), edit /etc/mame/mame.ini, if for just you, edit ~/.mame/mame.ini  (best to edit this one)
2) Tricky, I'd guess create it in ~/.mame/

Hopefully, this comes in handy for the next person that tries to understand the directory structure.