Viewing Issue Advanced Details
ID Category [?] Severity [?] Reproducibility Date Submitted Last Update
08414 Core Critical (emulator) Always Sep 9, 2022, 19:43 Sep 10, 2022, 18:44
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
 
Relationships
There are no relationship linked to this issue.
Notes
4
User avatar
No.20516
Tafoid
Administrator
Sep 9, 2022, 21:15
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?
https://sdlmame.lngn.net/
https://sdlmame.lngn.net/2022/08/31/mame-0-247-released/
User avatar
No.20524
star2root
Viewer
Sep 10, 2022, 00:17
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
No.20525
star2root
Viewer
Sep 10, 2022, 00:19
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
No.20530
star2root
Viewer
Sep 10, 2022, 18:44
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
 #else
  #define INI_PATH "$HOME/.APP_NAME;.;ini"
@@ -126,4 +127,5 @@
 #if USE_OPENGL
  { SDLOPTION_GL_LIB, SDLOPTVAL_GLLIB, core_options::option_type::STRING, "alternative libGL.so to use; 'auto' for system default" },
+#pragma message "enabling opengl"
 #endif
 
@@ -353,4 +355,5 @@
 #if USE_OPENGL
  video_options_add("opengl", nullptr);
+#pragma message "adding opengl"
 #endif
  video_options_add("bgfx", nullptr);
@@ -415,4 +418,10 @@
  osd_setenv(SDLENV_VIDEODRIVER, stemp, 1);
  }
+#ifdef SDLMAME_MACOSX
+ else {
+ osd_printf_verbose("Setting SDL videodriver '%s' ...\n", "opengl");
+ options().set_value(OSDOPTION_VIDEO, "opengl", OPTION_PRIORITY_MAXIMUM);
+ }
+#endif
 
  stemp = options().render_driver();
@@ -427,5 +436,5 @@
  else
  {
-#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");