Viewing Issue Advanced Details
ID Category [?] Severity [?] Reproducibility Date Submitted Last Update
08414 Core Critical (emulator) Always 22 days ago 21 days ago
Tester star2root View Status Public Platform MAME (Self-compiled)
Assigned To Resolution Open OS MacOS X
Status [?] Driver
Version 0.247 Fixed in Version Build 64-bit
Fixed in Git Commit Github Pull Request #
Summary 08414: When running game 0.247 on Mac OS X, it seems to default to a non accelerated, non OpenGL video driver.
Description When running game 0.247 on Mac OS X, it seems to default to a non accelerated, non OpenGL video driver. Adding -video opengl -renderdriver opengl returns video performance to the previous levels observed with version 0.224. Without these command line switches added performance is so bad as to be totally unusable on a quad core i7 system.
Steps To Reproduce Run mame with no options on an intel Mac OS X system. Performance is so slow the system will appear to have locked up at launch, but it is actually running VERY slowly.
Additional Information Mame 0.247 seems to default to a non accelerated, non OpenGL video driver. Performance was normal on version 0.224. Other intervening versions have not been tested.
Github Commit
Flags SDL specific
Regression Version
Affected Sets / Systems
Attached Files
There are no relationship linked to this issue.
User avatar
22 days ago
Has there been any hardware changes since the previous working version you reported 0.224? That is nearly 2 years ago.
You mentioned it is self-compiled. It is entirely possible your issue might lie in OS or Driver updates/changes which may be acting adversely.

Could you try a pre-packaged 0.247 trusted compiled from source to see if the same behavior happens?
User avatar
22 days ago
I already tried two prebuilt binaries and got the same issue. No hardware changes, I ran 0.224 on the same hardware as 0.247 today and got the same result. If I pass the command line switches -video opengl -renderdriver opengl the problem goes away.
User avatar
22 days ago
Setting the OSD video and render drivers in the ini also works around the issue, but I have to do it for every system as well as the mame.ini.
User avatar
21 days ago
I have found this patch effective...

--- src/osd/sdl/sdlmain.cpp 2022-09-09 16:14:06.000000000 -0400
+++ src/osd/sdl/sdlmain.cpp 2022-09-10 14:29:42.000000000 -0400
@@ -58,4 +58,5 @@
 #elif defined(SDLMAME_MACOSX)
  #define INI_PATH "$HOME/Library/Application Support/APP_NAME;$HOME/.APP_NAME;.;ini"
+ #define USE_OPENGL 1
  #define INI_PATH "$HOME/.APP_NAME;.;ini"
@@ -126,4 +127,5 @@
  { SDLOPTION_GL_LIB, SDLOPTVAL_GLLIB, core_options::option_type::STRING, "alternative to use; 'auto' for system default" },
+#pragma message "enabling opengl"
@@ -353,4 +355,5 @@
  video_options_add("opengl", nullptr);
+#pragma message "adding opengl"
  video_options_add("bgfx", nullptr);
@@ -415,4 +418,10 @@
  osd_setenv(SDLENV_VIDEODRIVER, stemp, 1);
+ else {
+ osd_printf_verbose("Setting SDL videodriver '%s' ...\n", "opengl");
+ options().set_value(OSDOPTION_VIDEO, "opengl", OPTION_PRIORITY_MAXIMUM);
+ }
  stemp = options().render_driver();
@@ -427,5 +436,5 @@
-#if defined(SDLMAME_WIN32)
+#if defined(SDLMAME_WIN32) || defined(SDLMAME_MACOSX)
  // OpenGL renderer has less issues with mode switching on windows
  osd_printf_verbose("Setting SDL renderdriver '%s' ...\n", "opengl");