From 74f456df945cd1720dc4d6bc105f64c13e62ced8 Mon Sep 17 00:00:00 2001 From: hap Date: Fri, 10 Jul 2020 00:43:33 +0200 Subject: ui: allow to skip warning popup at start --- src/emu/emuopts.cpp | 1 + src/emu/emuopts.h | 2 + src/frontend/mame/ui/submenu.cpp | 133 ++++++++++++++++++++------------------- src/frontend/mame/ui/ui.cpp | 3 +- 4 files changed, 72 insertions(+), 67 deletions(-) diff --git a/src/emu/emuopts.cpp b/src/emu/emuopts.cpp index 440121e5136..cfb34277ed5 100644 --- a/src/emu/emuopts.cpp +++ b/src/emu/emuopts.cpp @@ -195,6 +195,7 @@ const options_entry emu_options::s_option_entries[] = { OPTION_BIOS, nullptr, OPTION_STRING, "select the system BIOS to use" }, { OPTION_CHEAT ";c", "0", OPTION_BOOLEAN, "enable cheat subsystem" }, { OPTION_SKIP_GAMEINFO, "0", OPTION_BOOLEAN, "skip displaying the system information screen at startup" }, + { OPTION_SKIP_WARNINGS, "0", OPTION_BOOLEAN, "skip displaying emulation warnings screen at startup" }, { OPTION_UI_FONT, "default", OPTION_STRING, "specify a font to use" }, { OPTION_UI, "cabinet", OPTION_STRING, "type of UI (simple|cabinet)" }, { OPTION_RAMSIZE ";ram", nullptr, OPTION_STRING, "size of RAM (if supported by driver)" }, diff --git a/src/emu/emuopts.h b/src/emu/emuopts.h index 5a4bc3f118b..b5d236d496f 100644 --- a/src/emu/emuopts.h +++ b/src/emu/emuopts.h @@ -164,6 +164,7 @@ #define OPTION_BIOS "bios" #define OPTION_CHEAT "cheat" #define OPTION_SKIP_GAMEINFO "skip_gameinfo" +#define OPTION_SKIP_WARNINGS "skip_warnings" #define OPTION_UI_FONT "uifont" #define OPTION_UI "ui" #define OPTION_RAMSIZE "ramsize" @@ -441,6 +442,7 @@ public: const char *bios() const { return value(OPTION_BIOS); } bool cheat() const { return bool_value(OPTION_CHEAT); } bool skip_gameinfo() const { return bool_value(OPTION_SKIP_GAMEINFO); } + bool skip_warnings() const { return bool_value(OPTION_SKIP_WARNINGS); } const char *ui_font() const { return value(OPTION_UI_FONT); } ui_option ui() const { return m_ui; } const char *ram_size() const { return value(OPTION_RAMSIZE); } diff --git a/src/frontend/mame/ui/submenu.cpp b/src/frontend/mame/ui/submenu.cpp index 207ac56d057..c638f613fc6 100644 --- a/src/frontend/mame/ui/submenu.cpp +++ b/src/frontend/mame/ui/submenu.cpp @@ -20,95 +20,96 @@ namespace ui { std::vector const submenu::misc_options = { { submenu::option_type::HEAD, __("Miscellaneous Options") }, - { submenu::option_type::UI, __("Re-select last machine played"), OPTION_REMEMBER_LAST }, - { submenu::option_type::UI, __("Enlarge images in the right panel"), OPTION_ENLARGE_SNAPS }, - { submenu::option_type::EMU, __("Cheats"), OPTION_CHEAT }, - { submenu::option_type::EMU, __("Show mouse pointer"), OPTION_UI_MOUSE }, - { submenu::option_type::EMU, __("Confirm quit from machines"), OPTION_CONFIRM_QUIT }, - { submenu::option_type::EMU, __("Skip information screen at startup"), OPTION_SKIP_GAMEINFO }, - { submenu::option_type::UI, __("Force 4:3 aspect for snapshot display"), OPTION_FORCED4X3 }, - { submenu::option_type::UI, __("Use image as background"), OPTION_USE_BACKGROUND }, - { submenu::option_type::UI, __("Skip BIOS selection menu"), OPTION_SKIP_BIOS_MENU }, - { submenu::option_type::UI, __("Skip software parts selection menu"), OPTION_SKIP_PARTS_MENU }, - { submenu::option_type::UI, __("Info auto audit"), OPTION_INFO_AUTO_AUDIT }, - { submenu::option_type::UI, __("Hide romless machine from available list"),OPTION_HIDE_ROMLESS }, + { submenu::option_type::UI, __("Re-select last machine played"), OPTION_REMEMBER_LAST }, + { submenu::option_type::UI, __("Enlarge images in the right panel"), OPTION_ENLARGE_SNAPS }, + { submenu::option_type::EMU, __("Cheats"), OPTION_CHEAT }, + { submenu::option_type::EMU, __("Show mouse pointer"), OPTION_UI_MOUSE }, + { submenu::option_type::EMU, __("Confirm quit from machines"), OPTION_CONFIRM_QUIT }, + { submenu::option_type::EMU, __("Skip information screen at startup"), OPTION_SKIP_GAMEINFO }, + { submenu::option_type::EMU, __("Skip emulation warnings screen at startup"), OPTION_SKIP_WARNINGS }, + { submenu::option_type::UI, __("Force 4:3 aspect for snapshot display"), OPTION_FORCED4X3 }, + { submenu::option_type::UI, __("Use image as background"), OPTION_USE_BACKGROUND }, + { submenu::option_type::UI, __("Skip BIOS selection menu"), OPTION_SKIP_BIOS_MENU }, + { submenu::option_type::UI, __("Skip software parts selection menu"), OPTION_SKIP_PARTS_MENU }, + { submenu::option_type::UI, __("Info auto audit"), OPTION_INFO_AUTO_AUDIT }, + { submenu::option_type::UI, __("Hide romless machine from available list"), OPTION_HIDE_ROMLESS }, }; std::vector const submenu::advanced_options = { { submenu::option_type::HEAD, __("Advanced Options") }, { submenu::option_type::HEAD, __("Performance Options") }, - { submenu::option_type::EMU, __("Auto frame skip"), OPTION_AUTOFRAMESKIP }, - { submenu::option_type::EMU, __("Frame skip"), OPTION_FRAMESKIP }, - { submenu::option_type::EMU, __("Throttle"), OPTION_THROTTLE }, - { submenu::option_type::EMU, __("Sleep"), OPTION_SLEEP }, - { submenu::option_type::EMU, __("Speed"), OPTION_SPEED }, - { submenu::option_type::EMU, __("Refresh speed"), OPTION_REFRESHSPEED }, - { submenu::option_type::EMU, __("Low latency"), OPTION_LOWLATENCY }, + { submenu::option_type::EMU, __("Auto frame skip"), OPTION_AUTOFRAMESKIP }, + { submenu::option_type::EMU, __("Frame skip"), OPTION_FRAMESKIP }, + { submenu::option_type::EMU, __("Throttle"), OPTION_THROTTLE }, + { submenu::option_type::EMU, __("Sleep"), OPTION_SLEEP }, + { submenu::option_type::EMU, __("Speed"), OPTION_SPEED }, + { submenu::option_type::EMU, __("Refresh speed"), OPTION_REFRESHSPEED }, + { submenu::option_type::EMU, __("Low latency"), OPTION_LOWLATENCY }, { submenu::option_type::HEAD, __("Rotation Options") }, - { submenu::option_type::EMU, __("Rotate"), OPTION_ROTATE }, - { submenu::option_type::EMU, __("Rotate right"), OPTION_ROR }, - { submenu::option_type::EMU, __("Rotate left"), OPTION_ROL }, - { submenu::option_type::EMU, __("Auto rotate right"), OPTION_AUTOROR }, - { submenu::option_type::EMU, __("Auto rotate left"), OPTION_AUTOROL }, - { submenu::option_type::EMU, __("Flip X"), OPTION_FLIPX }, - { submenu::option_type::EMU, __("Flip Y"), OPTION_FLIPY }, + { submenu::option_type::EMU, __("Rotate"), OPTION_ROTATE }, + { submenu::option_type::EMU, __("Rotate right"), OPTION_ROR }, + { submenu::option_type::EMU, __("Rotate left"), OPTION_ROL }, + { submenu::option_type::EMU, __("Auto rotate right"), OPTION_AUTOROR }, + { submenu::option_type::EMU, __("Auto rotate left"), OPTION_AUTOROL }, + { submenu::option_type::EMU, __("Flip X"), OPTION_FLIPX }, + { submenu::option_type::EMU, __("Flip Y"), OPTION_FLIPY }, { submenu::option_type::HEAD, __("Artwork Options") }, - { submenu::option_type::EMU, __("Artwork Crop"), OPTION_ARTWORK_CROP }, + { submenu::option_type::EMU, __("Artwork Crop"), OPTION_ARTWORK_CROP }, { submenu::option_type::HEAD, __("State/Playback Options") }, - { submenu::option_type::EMU, __("Automatic save/restore"), OPTION_AUTOSAVE }, - { submenu::option_type::EMU, __("Rewind"), OPTION_REWIND }, - { submenu::option_type::EMU, __("Rewind capacity"), OPTION_REWIND_CAPACITY }, - { submenu::option_type::EMU, __("Bilinear snapshot"), OPTION_SNAPBILINEAR }, - { submenu::option_type::EMU, __("Burn-in"), OPTION_BURNIN }, + { submenu::option_type::EMU, __("Automatic save/restore"), OPTION_AUTOSAVE }, + { submenu::option_type::EMU, __("Rewind"), OPTION_REWIND }, + { submenu::option_type::EMU, __("Rewind capacity"), OPTION_REWIND_CAPACITY }, + { submenu::option_type::EMU, __("Bilinear snapshot"), OPTION_SNAPBILINEAR }, + { submenu::option_type::EMU, __("Burn-in"), OPTION_BURNIN }, { submenu::option_type::HEAD, __("Input Options") }, - { submenu::option_type::EMU, __("Coin lockout"), OPTION_COIN_LOCKOUT }, - { submenu::option_type::EMU, __("Mouse"), OPTION_MOUSE }, - { submenu::option_type::EMU, __("Joystick"), OPTION_JOYSTICK }, - { submenu::option_type::EMU, __("Lightgun"), OPTION_LIGHTGUN }, - { submenu::option_type::EMU, __("Multi-keyboard"), OPTION_MULTIKEYBOARD }, - { submenu::option_type::EMU, __("Multi-mouse"), OPTION_MULTIMOUSE }, - { submenu::option_type::EMU, __("Steadykey"), OPTION_STEADYKEY }, - { submenu::option_type::EMU, __("UI active"), OPTION_UI_ACTIVE }, - { submenu::option_type::EMU, __("Offscreen reload"), OPTION_OFFSCREEN_RELOAD }, - { submenu::option_type::EMU, __("Joystick deadzone"), OPTION_JOYSTICK_DEADZONE }, - { submenu::option_type::EMU, __("Joystick saturation"), OPTION_JOYSTICK_SATURATION }, - { submenu::option_type::EMU, __("Natural keyboard"), OPTION_NATURAL_KEYBOARD }, - { submenu::option_type::EMU, __("Simultaneous contradictory"), OPTION_JOYSTICK_CONTRADICTORY }, - { submenu::option_type::EMU, __("Coin impulse"), OPTION_COIN_IMPULSE }, + { submenu::option_type::EMU, __("Coin lockout"), OPTION_COIN_LOCKOUT }, + { submenu::option_type::EMU, __("Mouse"), OPTION_MOUSE }, + { submenu::option_type::EMU, __("Joystick"), OPTION_JOYSTICK }, + { submenu::option_type::EMU, __("Lightgun"), OPTION_LIGHTGUN }, + { submenu::option_type::EMU, __("Multi-keyboard"), OPTION_MULTIKEYBOARD }, + { submenu::option_type::EMU, __("Multi-mouse"), OPTION_MULTIMOUSE }, + { submenu::option_type::EMU, __("Steadykey"), OPTION_STEADYKEY }, + { submenu::option_type::EMU, __("UI active"), OPTION_UI_ACTIVE }, + { submenu::option_type::EMU, __("Offscreen reload"), OPTION_OFFSCREEN_RELOAD }, + { submenu::option_type::EMU, __("Joystick deadzone"), OPTION_JOYSTICK_DEADZONE }, + { submenu::option_type::EMU, __("Joystick saturation"), OPTION_JOYSTICK_SATURATION }, + { submenu::option_type::EMU, __("Natural keyboard"), OPTION_NATURAL_KEYBOARD }, + { submenu::option_type::EMU, __("Simultaneous contradictory"), OPTION_JOYSTICK_CONTRADICTORY }, + { submenu::option_type::EMU, __("Coin impulse"), OPTION_COIN_IMPULSE }, }; std::vector const submenu::control_options = { { submenu::option_type::HEAD, __("Device Mapping") }, - { submenu::option_type::EMU, __("Lightgun Device Assignment"), OPTION_LIGHTGUN_DEVICE }, - { submenu::option_type::EMU, __("Trackball Device Assignment"), OPTION_TRACKBALL_DEVICE }, - { submenu::option_type::EMU, __("Pedal Device Assignment"), OPTION_PEDAL_DEVICE }, - { submenu::option_type::EMU, __("Adstick Device Assignment"), OPTION_ADSTICK_DEVICE }, - { submenu::option_type::EMU, __("Paddle Device Assignment"), OPTION_PADDLE_DEVICE }, - { submenu::option_type::EMU, __("Dial Device Assignment"), OPTION_DIAL_DEVICE }, - { submenu::option_type::EMU, __("Positional Device Assignment"), OPTION_POSITIONAL_DEVICE }, - { submenu::option_type::EMU, __("Mouse Device Assignment"), OPTION_MOUSE_DEVICE } + { submenu::option_type::EMU, __("Lightgun Device Assignment"), OPTION_LIGHTGUN_DEVICE }, + { submenu::option_type::EMU, __("Trackball Device Assignment"), OPTION_TRACKBALL_DEVICE }, + { submenu::option_type::EMU, __("Pedal Device Assignment"), OPTION_PEDAL_DEVICE }, + { submenu::option_type::EMU, __("Adstick Device Assignment"), OPTION_ADSTICK_DEVICE }, + { submenu::option_type::EMU, __("Paddle Device Assignment"), OPTION_PADDLE_DEVICE }, + { submenu::option_type::EMU, __("Dial Device Assignment"), OPTION_DIAL_DEVICE }, + { submenu::option_type::EMU, __("Positional Device Assignment"), OPTION_POSITIONAL_DEVICE }, + { submenu::option_type::EMU, __("Mouse Device Assignment"), OPTION_MOUSE_DEVICE } }; std::vector const submenu::video_options = { { submenu::option_type::HEAD, __("Video Options") }, - { submenu::option_type::OSD, __("Video Mode"), OSDOPTION_VIDEO }, - { submenu::option_type::OSD, __("Number Of Screens"), OSDOPTION_NUMSCREENS }, + { submenu::option_type::OSD, __("Video Mode"), OSDOPTION_VIDEO }, + { submenu::option_type::OSD, __("Number Of Screens"), OSDOPTION_NUMSCREENS }, #if defined(UI_WINDOWS) && !defined(UI_SDL) - { submenu::option_type::OSD, __("Triple Buffering"), WINOPTION_TRIPLEBUFFER }, - { submenu::option_type::OSD, __("HLSL"), WINOPTION_HLSL_ENABLE }, + { submenu::option_type::OSD, __("Triple Buffering"), WINOPTION_TRIPLEBUFFER }, + { submenu::option_type::OSD, __("HLSL"), WINOPTION_HLSL_ENABLE }, #endif - { submenu::option_type::OSD, __("GLSL"), OSDOPTION_GL_GLSL }, - { submenu::option_type::OSD, __("Bilinear Filtering"), OSDOPTION_FILTER }, - { submenu::option_type::OSD, __("Bitmap Prescaling"), OSDOPTION_PRESCALE }, - { submenu::option_type::OSD, __("Window Mode"), OSDOPTION_WINDOW }, - { submenu::option_type::EMU, __("Enforce Aspect Ratio"), OPTION_KEEPASPECT }, - { submenu::option_type::OSD, __("Start Out Maximized"), OSDOPTION_MAXIMIZE }, - { submenu::option_type::OSD, __("Synchronized Refresh"), OSDOPTION_SYNCREFRESH }, - { submenu::option_type::OSD, __("Wait Vertical Sync"), OSDOPTION_WAITVSYNC } + { submenu::option_type::OSD, __("GLSL"), OSDOPTION_GL_GLSL }, + { submenu::option_type::OSD, __("Bilinear Filtering"), OSDOPTION_FILTER }, + { submenu::option_type::OSD, __("Bitmap Prescaling"), OSDOPTION_PRESCALE }, + { submenu::option_type::OSD, __("Window Mode"), OSDOPTION_WINDOW }, + { submenu::option_type::EMU, __("Enforce Aspect Ratio"), OPTION_KEEPASPECT }, + { submenu::option_type::OSD, __("Start Out Maximized"), OSDOPTION_MAXIMIZE }, + { submenu::option_type::OSD, __("Synchronized Refresh"), OSDOPTION_SYNCREFRESH }, + { submenu::option_type::OSD, __("Wait Vertical Sync"), OSDOPTION_WAITVSYNC } }; //std::vector const submenu::export_options = { diff --git a/src/frontend/mame/ui/ui.cpp b/src/frontend/mame/ui/ui.cpp index e1b0990193b..9ea166a5c90 100644 --- a/src/frontend/mame/ui/ui.cpp +++ b/src/frontend/mame/ui/ui.cpp @@ -305,7 +305,8 @@ void mame_ui_manager::display_startup_screens(bool first_time) const int maxstate = 3; int str = machine().options().seconds_to_run(); bool show_gameinfo = !machine().options().skip_gameinfo(); - bool show_warnings = true, show_mandatory_fileman = true; + bool show_warnings = !machine().options().skip_warnings(); + bool show_mandatory_fileman = true; bool video_none = strcmp(downcast(machine().options()).video(), OSDOPTVAL_NONE) == 0; // disable everything if we are using -str for 300 or fewer seconds, or if we're the empty driver, -- cgit v1.2.3