How can I tweak a basic MAME config (mame.ini) so the games display on an LCD screen as if it were a CRT screen in 2022?
-
I’m utterly no MAME neophyte. I’ve played around with arcade game emulators since the early 2000s when there were stand-alone emulators for Mac OS 9 that allowed you to play Pac-Man and such.
And over the years I have rolled along with other Mac OS X and macOS versions of MAME. Most recently I had a small MAME collection of maybe a few dozen games up until 2019 or so. It used https://sdlmame.lngn.net .
I ditched them when I decided I just didn’t use MAME that much at the time.
But in the last week or so, I decided to do download SDL MAME again to simply play Pac-Man.
Works fine, but the default display is just literal clean graphics. Okay, that’s fine. But in 2019 or so I had download GLSL filters and set GLSL settings in
mame.ini
to get that CRT look on my macOS machine.Tried to do that with SDL MAME ( https://sdlmame.lngn.net/2022/09/29/mame-0-248-released/ ) in the last few days and it didn’t work. Either a it changed nothing, resulted in a blank screen or other weirdness.
I don’t think it’s worth sharing the GLSL settings I used since it was a lot of “Hail Mary” attempts based on my searches online for advice.
So in 2022, is there any straightforward way to get CRT display functionality to work on macOS? I don’t want to get deep into configs; I just want some basic CRT “flaws” as I play and that’s it.
-
The solution I found is to use BGFX settings.
Works great and is far simpler to set up for simple/basic needs.
The official MAME docs https://docs.mamedev.org/advanced/bgfx.html is and how it works. But I found out about BGFX initially via this December 2020 blog post titled “ https://mameonmacs.blogspot.com/2017/05/mame-0185-from-scratch-via-mewui-update.html .”
It has good info, but some details — like
mame.ini
line numbers — is a bit out of date. And the overall page is still a bit complex and daunting to read over; and I say that as a programmer and systems administrator with 25+ years of experience.Sorry, but in my free time goofing around with MAME I don’t want to feel like I am setting up a server for a client!
Anyway, below is the distilled macOS
mame.ini
file I have created based on the advice on that https://mameonmacs.blogspot.com/2017/05/mame-0185-from-scratch-via-mewui-update.html . No need to have every single default config setting in themame.ini
file. The default values don’t need to be redundantly set in there. The only thing that config should have are custom settings.So without further blathering, here is the distilled
mame.ini
file that works for me to display games in CRT mode in macOS with little to no hassle:# # CORE SEARCH PATH OPTIONS # inipath ini
CORE PERFORMANCE OPTIONS
lowlatency 1
OSD VIDEO OPTIONS
video bgfx
BGFX POST-PROCESSING OPTIONS
bgfx_backend metal
bgfx_screen_chains crt-geom
FWIW, as per that blog post I set
inipath
to simply beini
because it is easier for me to manage knowing there is one single place where thename.ini
is loaded than hunt through the various locations that file might be set.Just set this
mame.ini
in theini
directory and you are good to go!But if you just want the pure video settings, these are the three exact items that need to be set:
# # OSD VIDEO OPTIONS # video bgfx
BGFX POST-PROCESSING OPTIONS
bgfx_backend metal
bgfx_screen_chains crt-geom
Hope this makes the life of some other old-school arcade game fan using macOS easier!