summaryrefslogtreecommitdiffstatshomepage
path: root/src/emu/validity.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'src/emu/validity.cpp')
-rw-r--r--src/emu/validity.cpp5
1 files changed, 5 insertions, 0 deletions
diff --git a/src/emu/validity.cpp b/src/emu/validity.cpp
index fa80e36d5f2..e2178c522f3 100644
--- a/src/emu/validity.cpp
+++ b/src/emu/validity.cpp
@@ -1870,6 +1870,7 @@ void validity_checker::validate_begin()
m_defstr_map.clear();
m_region_map.clear();
m_ioport_set.clear();
+ m_slotcard_set.clear();
// reset internal state
m_errors = 0;
@@ -2549,6 +2550,10 @@ void validity_checker::validate_devices(machine_config &config)
if (slot->default_option() != nullptr && option.first == slot->default_option())
continue;
+ // if we need to save time, instantiate and validate each slot card type at most once
+ if (m_quick && !m_slotcard_set.insert(option.second->devtype().shortname()).second)
+ continue;
+
m_checking_card = true;
device_t *card;
{