Validate slot cards only once per device type during 'quick' validation passes, which were taking rather long for some drivers (e.g. at.cpp)

This commit is contained in:
AJR 2022-09-01 14:51:42 -04:00
parent 4f49312c46
commit 67be13960b

View file

@ -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;
{