diff --git a/src/emu/emuopts.h b/src/emu/emuopts.h index 21df80b8a05..a449c5d95a1 100644 --- a/src/emu/emuopts.h +++ b/src/emu/emuopts.h @@ -523,4 +523,7 @@ private: std::string m_software_name; }; +// takes an existing emu_options and adds system specific options +void osd_setup_osd_specific_emu_options(emu_options &opts); + #endif // MAME_EMU_EMUOPTS_H diff --git a/src/frontend/mame/ui/miscmenu.cpp b/src/frontend/mame/ui/miscmenu.cpp index f681895b084..5ad96276311 100644 --- a/src/frontend/mame/ui/miscmenu.cpp +++ b/src/frontend/mame/ui/miscmenu.cpp @@ -672,6 +672,7 @@ menu_machine_configure::menu_machine_configure(mame_ui_manager &mui, render_cont { // parse the INI file std::ostringstream error; + osd_setup_osd_specific_emu_options(m_opts); mame_options::parse_standard_inis(m_opts, error, m_drv); setup_bios(); } diff --git a/src/frontend/mame/ui/miscmenu.h b/src/frontend/mame/ui/miscmenu.h index e96a7a2db97..65ef235de57 100644 --- a/src/frontend/mame/ui/miscmenu.h +++ b/src/frontend/mame/ui/miscmenu.h @@ -19,7 +19,6 @@ #include #include - namespace ui { class menu_keyboard_mode : public menu { diff --git a/src/osd/modules/lib/osdobj_common.h b/src/osd/modules/lib/osdobj_common.h index 2c2f750fdbe..f3f1c746337 100644 --- a/src/osd/modules/lib/osdobj_common.h +++ b/src/osd/modules/lib/osdobj_common.h @@ -169,7 +169,6 @@ public: const char *pa_device() const { return value(OSDOPTION_PA_DEVICE); } const float pa_latency() const { return float_value(OSDOPTION_PA_LATENCY); } -private: static const options_entry s_option_entries[]; }; diff --git a/src/osd/sdl/sdlmain.cpp b/src/osd/sdl/sdlmain.cpp index 4fa78bbed38..a819c409467 100644 --- a/src/osd/sdl/sdlmain.cpp +++ b/src/osd/sdl/sdlmain.cpp @@ -392,6 +392,16 @@ void sdl_osd_interface::output_oslog(const char *buffer) } +//============================================================ +// osd_setup_osd_specific_emu_options +//============================================================ + +void osd_setup_osd_specific_emu_options(emu_options &opts) +{ + opts.add_entries(osd_options::s_option_entries); +} + + //============================================================ // init //============================================================ diff --git a/src/osd/windows/winmain.cpp b/src/osd/windows/winmain.cpp index b1702f7fac3..f33b018f1bf 100644 --- a/src/osd/windows/winmain.cpp +++ b/src/osd/windows/winmain.cpp @@ -619,6 +619,17 @@ void windows_osd_interface::osd_exit() } +//============================================================ +// osd_setup_osd_specific_emu_options +//============================================================ + +void osd_setup_osd_specific_emu_options(emu_options &opts) +{ + opts.add_entries(osd_options::s_option_entries); + opts.add_entries(windows_options::s_option_entries); +} + + #if WINAPI_FAMILY_PARTITION(WINAPI_PARTITION_DESKTOP) //============================================================ diff --git a/src/osd/windows/winmain.h b/src/osd/windows/winmain.h index 1c40a346d34..7b4f3d71009 100644 --- a/src/osd/windows/winmain.h +++ b/src/osd/windows/winmain.h @@ -210,7 +210,6 @@ public: bool global_inputs() const { return bool_value(WINOPTION_GLOBAL_INPUTS); } bool dual_lightgun() const { return bool_value(WINOPTION_DUAL_LIGHTGUN); } -private: static const options_entry s_option_entries[]; };