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 the mame.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 be ini because it is easier for me to manage knowing there is one single place where the name.ini is loaded than hunt through the various locations that file might be set.

    Just set this mame.ini in the ini 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!


Log in to reply
 

Suggested Topics

  • 2
  • 2
  • 2
  • 2
  • 2
  • 2
  • 2
  • 2
  • 2
  • 2
  • 2
  • 2
  • 2
  • 2
  • 2