diff options
author | 2020-06-13 21:04:52 +0200 | |
---|---|---|
committer | 2020-06-13 21:05:06 +0200 | |
commit | 18bd40b8ca276f50e7fda2d1676c3c5338c009ac (patch) | |
tree | 1c19492bf0d6f27ded191773ae3d6dfd545e28f9 /src/frontend/mame/ui/info.cpp | |
parent | a3c65b6ce2b7401e24670601117d2d3d12e50840 (diff) |
ui: only warn about external artwork when it wasn't loaded (nw)
Diffstat (limited to 'src/frontend/mame/ui/info.cpp')
-rw-r--r-- | src/frontend/mame/ui/info.cpp | 19 |
1 files changed, 15 insertions, 4 deletions
diff --git a/src/frontend/mame/ui/info.cpp b/src/frontend/mame/ui/info.cpp index 76b2f012731..4ed48005057 100644 --- a/src/frontend/mame/ui/info.cpp +++ b/src/frontend/mame/ui/info.cpp @@ -104,6 +104,17 @@ machine_static_info::machine_static_info(const ui_options &options, machine_conf local_ports.append(device, sink); } + // suppress "requires external artwork" warning when external artwork was loaded + if (config.root_device().has_running_machine()) + { + for (render_target *target = config.root_device().machine().render().first_target(); target != nullptr; target = target->next()) + if (!target->hidden() && target->external_artwork()) + { + m_flags &= ~::machine_flags::REQUIRES_ARTWORK; + break; + } + } + // unemulated trumps imperfect when aggregating (always be pessimistic) m_imperfect_features &= ~m_unemulated_features; @@ -136,7 +147,7 @@ rgb_t machine_static_info::status_color() const { if ((machine_flags() & MACHINE_ERRORS) || ((unemulated_features() | imperfect_features()) & device_t::feature::PROTECTION)) return UI_RED_COLOR; - else if ((machine_flags() & MACHINE_WARNINGS) || unemulated_features() || imperfect_features()) + else if ((machine_flags() & MACHINE_WARNINGS & ~::machine_flags::REQUIRES_ARTWORK) || unemulated_features() || imperfect_features()) return UI_YELLOW_COLOR; else return UI_GREEN_COLOR; @@ -238,11 +249,11 @@ std::string machine_info::warnings_string() const // add one line per machine warning flag if (machine_flags() & ::machine_flags::NO_COCKTAIL) buf << _("Screen flipping in cocktail mode is not supported.\n"); - if (machine_flags() & ::machine_flags::REQUIRES_ARTWORK) // check if external artwork is present before displaying this warning? + if (machine_flags() & ::machine_flags::REQUIRES_ARTWORK) buf << _("This machine requires external artwork files.\n"); - if (machine_flags() & ::machine_flags::IS_INCOMPLETE ) + if (machine_flags() & ::machine_flags::IS_INCOMPLETE) buf << _("This machine was never completed. It may exhibit strange behavior or missing elements that are not bugs in the emulation.\n"); - if (machine_flags() & ::machine_flags::NO_SOUND_HW ) + if (machine_flags() & ::machine_flags::NO_SOUND_HW) buf << _("This machine has no sound hardware, MAME will produce no sounds, this is expected behaviour.\n"); // these are more severe warnings |