18 April 2018

Moving to MAME Retroarch

So I have been testing out Retroarch for quite some time, and only as of the most recent Nighty 1.7.2 builds, I realized that it is time to switch from MAME to Retroarch. Here I will explain why I believe that Retroarch - even with old MAME Cores - provides the best retrogaming experience so far.

If you have never dealt with Retroarch - look into ETA Prime's brand new video on installing Retroarch that also works on Macs: 

If your Mac has an NVidia Card, I recommend that you try out the CG version of Retroarch because it has an abundance of shaders on board. 

Here is an overview of the Retroarchs pro's and con's:

+ The brand new Runahead feature of Retroarch 1.7.2 also works on MAME and is a game changer. With a Runahead of two frames, the very snappy Arcade games, such as 1942, Pacman, Gyruss and the like, for the first time are as snappy as expected. If you are in games such as 1942, just try it in RetroArch with the 2 frames Runahead feature - and you will be blown away by its immediate snappyness.
Here is the explanation of the Runahead feature: 
Note: For this crucial feature, you must install a Nightly Build of Retroarch on your Mac.

+ If you like to experiment with different shaders, Retroarch is paradise. In fact, you could be lost in the sheer amount of different shaders. In any case, it is safer to load the pre-defined Shader Presets.  My favorite shader is called x4br-hybrid-crt.cg (it is also available in OpenGL). This shader brings a very attractive combination of xbr Scaling with crt-type scanlines. The results are very pleasing to me, a kind of slight modernization, but still with sufficient retro feeling.

Wonderboy In Monsterland with x4br-hybrid-crt Shader - best of both worlds (click to enarge)
+ Retroarch is already very strong in reckognizing joysticks from scratch. My PS4 joyapd via USB works extremely well. Combined with the Runahead feature, hardly to beat for me.

+ The MAME 2010 Core finally is ready for productive use. It has internal Highscore support out of the box, and most games just work very nicely.

Here is what you need to know about the drawbacks of Retroarch compared to native MAME:

- The MAME current Core of Retroarch does not compile in MacOS, and neither does the Linux Core work on my machine. MAME 2010 works very well, so you miss out on all enhancements in MAME since 2010. If you are, like me, with Arcade Classics, you probably do not miss an awful lot.

- With the different MAME Cores, Rom management becomes a challenge. You will have to deal much more with Rom problems, and Roms that work on one core by far do not always work on another Core.

- In overall, Retroarch has a steep learning curve, but if you ask me, it's worth it for perfecting your Arcade game experience.

That's what I wanted to write down for the time being. Right now Retroarch is my personal best choice for retrogaming on Macs - more concrete with the MAME2010 Core.






02 March 2018

MAME 0.195 is a good build on Macs

From my first tests, MAME 0.195 is a nice build: It compiles nicely and has a running BGFX/Metal backend. I spotted some irregularities in BGFX, but all in all my favorite games seem to run smoothly. As always, the list of changes is overwhelming.

08 January 2018

MAME 0.193 and Dave Haywoods Review of MAME in 2017

As pointed out by the developers here, MAME 0.193 seems to have issues in BGFX - at least in the Windows build. Although I did not encounter those in the official Mac build, it seems to me that the nothrottle command does not seem to work in BGFX because all games run at exactly 100% in  BGFX.

Important Update: I moved to MacOS High Sierra due to Spectre and the Meltdown. Here I see a consistent decrease of performance by up to -15% in the games I had tested before. This seems to be consistent with predictions in the tech community. This observation currently only applies to OpenGL, since BGFX for some reason does not execute the -nothrottle option in MAME 0.193.

Before that, under MacOS Sierra, I had noticed quite significant performance gains under OpenGL/CRT-GEOM Deluxe of 10-20% in nothrottle mode.

And if you want to have an impressive overview of what happened in 2017 on the MAME side, this is a must read: https://mamedev.emulab.it/haze/2017-new-focus/
A very impressive summary and many nice screenshots. So that you know what you should test on your newer MAME systems.

24 December 2017

Update: Attract Mode 2.3.0.17 for Mac Unofficial Binary (With SWF Support)

Now that the SWF compile bug has been ironed out, Attract Mode 2.3.0.17 is here for Macs:

https://drive.google.com/file/d/1c1cZSi8_9785Nb6f82uS-g7iTQVf3BIg/view?usp=sharing

Only the now working Search Plugin is worth the upgrade.

Current known limitation:

  1. Unlinked libraries: You will probably need these additional dependencies installed via Homebrew (please familiarize yourself with how to install Homebrew and packages):
pkg-config 
ffmpeg 
sfml 
libarchive

Reason is that the binary looks for these libraries under /usr/local/opt/..., although these libaries are bundled with the app. The bundling script does not seem to work properly in that respect.
Here is the link to the old 2.3.0.13, if some comparison is needed:

https://drive.google.com/file/d/1Gjt-YKvH97lt78biQuBdtxTU9W8B6Bba/view?usp=sharing


Just as a reminder - my posts on setting up Attract Mode on your Mac:
https://mameonmacs.blogspot.co.at/2017/01/attract-mode-for-mame-under-osx.html
https://mameonmacs.blogspot.co.at/2017/01/attract-mode-for-osx-setup-part-2.html

There is still some work required for an official build, but for the time being, you can try this unofficial binary on your Mac. Attract Mode rocks!


30 November 2017

MAME 0.192 and QMC2 0.192 Mac Binaries are here!

A good release for MAME on Macs. QMC2 also compiles on Macs after some time. QMC2 looks very good so far, and I will review my QMC2 to-do's all over this Blog to be on par. Happy gambling!


11 November 2017

Performance Test Galore: MAME Performance on Three Operating Systems on one Mac Machine Compared!

My new task was to test performance of current MAME binaries on one machine (my iMac 2013) with these three operating systems:
  - MacOS Sierra
  - Ubuntu 16.04
  - Windows 10

Focus of this test: How do BGFX shaders compare to other solutions if you add Artwork? My suspicion has always been that BGFX never can handle Artwork properly.

Result: As soon as you add Artwork, BGFX performance completely goes down - on all three systems! 

This means that if you want to run your games with decent shaders AND decent artwork, you need to head for different shaders, which are
  - MacOS and Linux: OpenGL
  - Windows 10: Direct3D
The extreme results were very surprising for me, so in the end, it was worth the hassle.

Further insights will follow here. For now, these are the detailed performance results (forgive me that I limited each run to 30 seconds ;-).



09 November 2017

Setup MAME 0.191 from scratch on Macs (Update of Previous Posts)

Another update on how to configure MAME from scratch via its internal interface MEWUI (default MAME UI since 0.171) and a text editor.  
If you are willing to work with your Terminal and a Text Editor, it is just the best way to set up and maintain MAME, irrespective of which frontend you wanna use later on.
So let's go step by step from scratch. 
MEWUI - click to enlarge
Step 1 - Basic Homework 

Download and install SDL 2 and QMC2 as explained here (only Steps 1 and 2). Download a good text editor - I prefer TextWrangler from the Mac App Store. Change Finder Settings in order to Display Hidden Folders and Files, e.g. with Deeper (you need access to your User Library folder, which is by default a hidden folder).

Recommendation: I currently keep my running MAME version in the folder 'mame' and keep only older versions in a version-related directory. This definitely helps you further on to stay consistent and carry on your work.

Step 2 - Start MEWUI (the right way)

Open Terminal and switch to your MAME working directory (easiest way: type 'cd' and then drag the mame directory from the Finder into the Terminal -> press Return in the Terminal window)

Warning: starting mame64 with double-click works, but you are not in the MAME working directory, so a lot just does not work -> start via Terminal as explained here. So you must be in the MAME working directory!

03 October 2017

MAME 190, 21.000 views on my site and the state of MAME on Macs

With MAME 190 having been released, just a brief note on where MAME currently stands as it comes to the Mac environument.
  1. First and foremost, I see 21000 views on this site. Considering the narrow topic covered here, this is encouraging. So there are Mac users out there who are interested in MAME emulation. Thank you! And please do not hesitate to post if there is something to mention.
  2. As you probably read in this blog, MAME works quite nice on modern Macs. As regards the Mac build, the METAL backend does not build properly in recent macOS systems. However, the official build from http://sdlmame.lngn.net/ is built on an older MacOSX system and has a working METAL backend. The build from http://choccyhobnob.com/mame/mame/ does not a working METAL backend, and same goes with my own build attempts.
  3. I would really like to write a bit about the Retroarch MAME core with its entirely different approach to game emulation. However, the MAME (current) core for macOS is also outdated since nearly a year and does not build. On modern Macs, I would not mess around with the (running) cores for MAME 2003 or 2014, unless you have a really old Mac machine. I sincerely hope that this will change because Retroarch would be another great option for Mac users.
  4. When it comes to frontends, QMC2 and Attract Mode are out there and in decent shape. This blog contains a lot of information on how to set them up on Macs. As for Attract Mode, I am a bit worried about the lack of updates for quite some time. But addmitedly it works nicely.
The next big thing to come would probably be the High Sierra update, on which I will still be waiting a bit. With an 8bitdo Arcade Stick at home, playing could excel to new levels. And yes, still waiting for the Retroarch MAME core to come back to life. Cheers and happy gaming!

10 August 2017

MAME 0.188 and new insights into the METAL bug

Last week, MAME 0.188 arrived, as always, with a lot of improvements. As regards game improvements, it is very nice to see that the first Game & Watch titles are released with SVG backgrounds built inside, so there is some very nice progress going on.

One of the first G&W titles with SVG backgrounds
On the Mac side of things, I figured out by coincidence that the MAME builds released by r0ni (considered to be official MAME builds for the Mac) have a working METAL backend! r0ni explained to me that he builds under 10.9 (updated LLVM using MacPorts) with the following command:

make PTR=1 TARGETOS=macosx TOOLS=1 NOWERROR=1 -j5

This set of instructions does not work on my system and ends with an error:

ld: warning: ignoring file /Library/Frameworks//SDL2.framework/SDL2, file was built for x86_64 which is not the architecture being linked (i386): /Library/Frameworks//SDL2.framework/SDL2

Undefined symbols for architecture i386:

This means that it is a good idea to work with this build of SDL MAME for the Mac:
So it might be that compiling under 10.12 does not work out nicely as far as the METAL backend is concerned ?!?

03 July 2017

Mid-Year MAME 0.187 with no big news on the Mac side of things

Game & Watch titles look promising, but are apparently missing the overlays for proper gaming experience - as presented by Definitely Russian here:
https://www.youtube.com/watch?v=_8IYCHueuso

BGFX/Metal bug still seems to be in place

Otherwise another solid release

20 June 2017

Erockus Arcade 4.0 and MacScene Emulation Forum

As suggested by some of you, I gave Erockus Arcade a try. I was testing the new version 4. Unfortunately my testing did not turn out nicely. Here is a short summary.

1. Erockus is a bare bones frontend without any screenshot or even video preview options. This can fit you if you want to just head for the games and nothing else. But for many of us, MAME is not just playing, but it is about preserving the original feel.

2. The Erockus configuration writes directly into your mame.ini and does not accept manual configuration (at least not of the options it directly handels). An existing mame.ini is backed up. This can be ok, if you are aware of it. 

3. However, after three starts, Erockus stopped working on my system with the latest MacOS Sierra installed. After a startup time of more than two minutes (full romset), it ends up with an error. In my last attempt for this post, Erockus just froze after 3 minutes without any message, so I had to Force Quit.

This is why I could not do any further testing, and I also cannot provide screenshots here. All in all, the software might be ok for your if you are looking for fast gameplay - if it works on your system. In my case, unfortunately.

I also want to mention the MacScene Emulation Forum this time, although I did not succeed registering for some reason ;-). If anybody of you has an idea how to register (is it still alive?), I would consider again. Thanks. One thing is clear: When it comes to emulation, Macs are still a rather difficult environment (to say the least)...

31 May 2017

MAME 0.186 is out

The Change Log for that version is more than impressive, and I very much look forward to hearing Cheeky Mouse sounds again after so long :-). Space Cyclone and first working Game & Watch gems are other things that caught my immediate attention. 

Mac Binaries are available, including a new Homebrew Formula. More to follow.

26 May 2017

CLRMame Pro 4.032 with Wine: Scanning ROMs on your Mac

As of this post, I am doing my first scan tests with the newest CLRMame Pro 4.032 under MacOS. This is possible thanks to the Wine layer that itself can be installed rather flawlessly via Homebrew.

Installation
Assuming that you have already Homebrew and Homebrew Cask installed, install XQuartz cask and then wine with Homebrew:
brew cask install xquartz
brew install wine
You may also want to head to this excellent summary.

Then download the zip version of CLRMame Pro, then unzip the directory containing the program files to a place of your choice. That's basically it.

Usage
Open the Terminal, cd to the CLRMame Pro directory and start the program with

wine cmpro64.exe

This is where I am right now, and now it's time to learn the program with these instructions here. Still being a newbie in correct rom management, I might revert back later until I got comfortable with the process. Enjoy!

29 April 2017

MAME 0.185

Also this update from Wednesday brought no surprises. 

The binary bottle in Homebrew has also been updated. And the BGFX Metal bug is still with us.

I am currently quite occupied with MAME on my Raspberry Pi, which is sometimes a completely different ballpark due to its performance limitations. Still it is incredible fun, and there might be some learnings for low-performing Macs as well. 

29 March 2017

MAME 0.184, Xcode 8.3 and 10.250 pageviews :-)

Today brings version 0.184 of MAME, which I compiled under brand new MacOS 10.12.4 and Xcode 8.3. I am also very happy to report 10.250 pageviews of this blog, which is very encouraging.

Compile was flawless as always. Performance seems in line with previous versions, BGFX Metal bug is still here. So it seems fine for us MAME users to upgrade.

Page statistics show the clear need for shader documentation, in particular BGFX, as well as Artworks. Quite as I anticipated, and I will try to keep focus here. Thanks for your interest.

22 February 2017

MAME 0.183 - Solid 20th Anniversary Release

Today brings us a special MAME release, and changes are many. The Mac binary compiles nicely as always from source and some performance tests indicate that this is rock stable. Also the Homebrew version of MAME made a jump to this version and is now up to date. All in all everything works as expected - and also does not work. Thus no news on the BGFX-METAL bug, but that was not to be expected anyways.

13 February 2017

Porting Retropie/Retroarch Artwork in 16:9 (John Merrit) to official MAME

There is incredibly realistic MAME Artwork for Retropie/Retroarch systems out, and I started re-writing them to run for the official MAME build. Work is mainly based on John Merrit's great work and Mr. Do's Layout Files, and the effect is amazing. This also shows the power of the yet simple MAME artwork system. Creativity is your only limit.
Update: I modified the layout file in a way that you can now switch on/off the scratches and reflections on the screen
Update 2: I started a Github repository (see below link).

Within the Video Mode options, you can now choose between:
  • Clear Screen - the screen is shown without any reflections and scratches
Clear Screen - Click to Enlarge


  • Scratch Screen - the screen shows all the reflections and scratches. On top, you can manipulate the Screen Alpha Channel separately from the cabinet. - thereby you manipulate the intensity of the scratches on screen only!
Scratch Screen - Click to Enlarge

27 January 2017

Attract Mode for OSX MAME - Setup Part 2

After successful completion of Part 1, there are many further opportunitites to tweak Attract Mode for MAME for your own needs. Here is a collection of useful hints for further fine tuning of the Attract Mode setup:
  • Configure the Attract Mode Intro Video
  • Configure history.dat to display within Attract Mode
  • Assign game-specific configurations for Attract Mode only
  • Other Emulators (WIP)
  • Including RetroArch Cores (WIP - huge!)
Here are the details:

26 January 2017

MAME 0.182, and BGFX-metal Bug registered

I compiled yesterday's MAME 0.182 and today's QMC2 0.71 without issues - and the BGFX_metal bug still persists. 

But I finally made it into mametesters.org and managed to file a bug report here. As it turns out today, it was the MacOS Password Manager and Safari that kicked me out from mametesters.org at previous attempts. A manual login via Firefox after password reset did the trick. So if you want to login to Mametesters as a Mac user, I strongly recommend you to avoid Safari and Mac Password Manager if you run into strange problems like me, being blocked from the site. If you are at Mametesters.org and are able to confirm the bug, please leave a note there - thanks!

Update: While the Mametesters Bug Report has been closed, a Bug has been opened with the BGFX Github repository: https://github.com/bkaradzic/bgfx/issues/1032 - let's see.

19 January 2017

QMC Alternative: Attract Mode for OSX MAME - Setup, Part 1

This is huge, but needs a lot of work during setup. If you are willing to spend the time, it's probably not less than the best MAME frontend around. 


If you are ready for manual text edits, this is what you get:
- best layouts in town with video previews that are compatible with the Retropie Attract Mode layouts
- game settings at ROM level
- very flexible and rather intuitive joypad control
- leave your current MAME/QMC2 installation unchanged and play with identical versions in this frontend
- blazingly fast at startup
- very accessible text configuration files

Since all of the following has been trial & error, I start with setup instructions from scratch.

1. Download and install Attract Mode for OSXhttp://attractmode.org/download.html

2. Start Attract Mode -> Attract Mode directory is created here:
[$HOME -> this is the home directory of your user in Attract Mode terms]/.attract





Note: You will only see this directory if you have enabled 'Show Hidden Files' (with a tool such as Deeper, otherwise you will not see this directory in your Finder!) 
This is the directory where most of your customization happens! Do not touch the directories of your Attract Mode Program (via 'Show Package Contents'), since this will be overwritten with a program update. 
3. Enter Attract Mode Configuration: TAB