diff options
author | npwoods <npwoods@alumni.cmu.edu> | 2017-06-24 22:48:56 -0400 |
---|---|---|
committer | Vas Crabb <cuavas@users.noreply.github.com> | 2017-06-25 12:48:56 +1000 |
commit | b193e05cd7c8456a2648d43854645da84f56ddbd (patch) | |
tree | 406d4dca91e403acdcea26379bcf65e567ca4834 /src/emu/diimage.cpp | |
parent | 1b28df0b39225c3017e7bc843c14b58f548162ac (diff) |
Overhaul to how MAME handles options, take two (#2341)
Diffstat (limited to 'src/emu/diimage.cpp')
-rw-r--r-- | src/emu/diimage.cpp | 11 |
1 files changed, 6 insertions, 5 deletions
diff --git a/src/emu/diimage.cpp b/src/emu/diimage.cpp index 2ef638d461a..fc321185219 100644 --- a/src/emu/diimage.cpp +++ b/src/emu/diimage.cpp @@ -1217,7 +1217,7 @@ void device_image_interface::reset_and_load(const std::string &path) device().machine().schedule_hard_reset(); // and record the new load - device().machine().options().image_options()[instance_name()] = path; + device().machine().options().image_option(instance_name()).specify(path); } @@ -1301,9 +1301,10 @@ void device_image_interface::update_names() if (brief_name == nullptr) brief_name = device_brieftypename(image_type()); + m_canonical_instance_name = string_format("%s%d", inst_name, index + 1); if (count > 1) { - m_instance_name = string_format("%s%d", inst_name, index + 1); + m_instance_name = m_canonical_instance_name; m_brief_instance_name = string_format("%s%d", brief_name, index + 1); } else @@ -1454,11 +1455,11 @@ std::string device_image_interface::software_get_default_slot(const char *defaul { std::string result; - auto iter = device().mconfig().options().image_options().find(instance_name()); - if (iter != device().mconfig().options().image_options().end() && !iter->second.empty()) + const std::string &image_name(device().mconfig().options().image_option(instance_name()).value()); + if (!image_name.empty()) { result.assign(default_card_slot); - const software_part *swpart = find_software_item(iter->second, true); + const software_part *swpart = find_software_item(image_name, true); if (swpart != nullptr) { const char *slot = swpart->feature("slot"); |