summaryrefslogtreecommitdiffstatshomepage
path: root/src/frontend/mame/ui/info.cpp
diff options
context:
space:
mode:
author Vas Crabb <vas@vastheman.com>2020-09-03 11:22:41 +1000
committer Vas Crabb <vas@vastheman.com>2020-09-03 11:22:41 +1000
commitea764f2a5e3071ee5d39fb7da8cd08948af086f6 (patch)
tree4b81dda9bad58a74615cd6aed1eb0b19de56248c /src/frontend/mame/ui/info.cpp
parent51d961c73e247a7784c8ff2a463a94c3df486c9c (diff)
frontend: Make unimplemented graphics and sound severe warnings.
This means you'll get an unskippable red warning for systems that have unimplemented sound or graphics that are otherwise marked working. This also applies to subdevices, so for example plugging a non-working video card or sound card into a computer driver will now cause a red warning. This should make it clearer when a game is playable but missing sound, or when a video or sound card doesn't work. The downside is that this could cause annoyance in a couple of situations. Workstations/servers with unemulated video that have working serial terminals and networking will now cause a red warning, and terminals/keyboards/etc. with missing beepers, key click, etc. will now cause a red warning even if they're otherwise usable. It may be worth making unimplemented controls and keyboard a severe error as well, since plugging in a non-working emulated keyboard is likely to make a system unusable.
Diffstat (limited to 'src/frontend/mame/ui/info.cpp')
-rw-r--r--src/frontend/mame/ui/info.cpp5
1 files changed, 4 insertions, 1 deletions
diff --git a/src/frontend/mame/ui/info.cpp b/src/frontend/mame/ui/info.cpp
index 5b6450412c6..8f1260d7815 100644
--- a/src/frontend/mame/ui/info.cpp
+++ b/src/frontend/mame/ui/info.cpp
@@ -156,7 +156,10 @@ bool machine_static_info::has_warnings() const
bool machine_static_info::has_severe_warnings() const
{
- return (machine_flags() & MACHINE_ERRORS) || ((unemulated_features() | imperfect_features()) & device_t::feature::PROTECTION);
+ return
+ (machine_flags() & MACHINE_ERRORS) ||
+ (unemulated_features() & (device_t::feature::PROTECTION | device_t::feature::GRAPHICS | device_t::feature::SOUND)) ||
+ (imperfect_features() & device_t::feature::PROTECTION);
}