diff options
Diffstat (limited to 'src/emu/validity.cpp')
-rw-r--r-- | src/emu/validity.cpp | 5 |
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; { |