summaryrefslogtreecommitdiffstatshomepage
path: root/src/osd/windows/video.c
diff options
context:
space:
mode:
Diffstat (limited to 'src/osd/windows/video.c')
-rw-r--r--src/osd/windows/video.c10
1 files changed, 9 insertions, 1 deletions
diff --git a/src/osd/windows/video.c b/src/osd/windows/video.c
index d135d7a2bc9..23854c18554 100644
--- a/src/osd/windows/video.c
+++ b/src/osd/windows/video.c
@@ -382,8 +382,10 @@ void windows_osd_interface::extract_video_config()
video_config.mode = VIDEO_MODE_DDRAW;
else if (strcmp(stemp, "gdi") == 0)
video_config.mode = VIDEO_MODE_GDI;
+#if defined (USE_BGFX)
else if (strcmp(stemp, "bgfx") == 0)
video_config.mode = VIDEO_MODE_BGFX;
+#endif
else if (strcmp(stemp, "none") == 0)
{
video_config.mode = VIDEO_MODE_NONE;
@@ -508,6 +510,12 @@ static void get_resolution(const char *defdata, const char *data, osd_window_con
return;
data = defdata;
}
- if (sscanf(data, "%dx%d@%d", &config->width, &config->height, &config->refresh) < 2 && report_error)
+
+ if (sscanf(data, "%dx%dx%d", &config->width, &config->height, &config->depth) < 2 && report_error)
osd_printf_error("Illegal resolution value = %s\n", data);
+
+ const char * at_pos = strchr(data, '@');
+ if (at_pos)
+ if (sscanf(at_pos + 1, "%d", &config->refresh) < 1 && report_error)
+ osd_printf_error("Illegal refresh rate in resolution value = %s\n", data);
}