summaryrefslogtreecommitdiffstatshomepage
path: root/src/devices/imagedev/mfmhd.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'src/devices/imagedev/mfmhd.cpp')
-rw-r--r--src/devices/imagedev/mfmhd.cpp30
1 files changed, 15 insertions, 15 deletions
diff --git a/src/devices/imagedev/mfmhd.cpp b/src/devices/imagedev/mfmhd.cpp
index 61eabb12217..f309b8f0d0f 100644
--- a/src/devices/imagedev/mfmhd.cpp
+++ b/src/devices/imagedev/mfmhd.cpp
@@ -440,8 +440,8 @@ image_init_result mfm_harddisk_device::call_load()
}
// Read the hard disk metadata
- chd_error state = chdfile->read_metadata(HARD_DISK_METADATA_TAG, 0, metadata);
- if (state != CHDERR_NONE)
+ std::error_condition state = chdfile->read_metadata(HARD_DISK_METADATA_TAG, 0, metadata);
+ if (state)
{
LOG("Failed to read CHD metadata\n");
return image_init_result::FAIL;
@@ -475,7 +475,7 @@ image_init_result mfm_harddisk_device::call_load()
param.reduced_wcurr_cylinder = -1;
state = chdfile->read_metadata(MFM_HARD_DISK_METADATA_TAG, 0, metadata);
- if (state != CHDERR_NONE)
+ if (state)
{
LOGMASKED(LOG_WARN, "Failed to read CHD sector arrangement/recording specs, applying defaults\n");
}
@@ -494,7 +494,7 @@ image_init_result mfm_harddisk_device::call_load()
param.interleave, param.cylskew, param.headskew, param.write_precomp_cylinder, param.reduced_wcurr_cylinder);
state = chdfile->read_metadata(MFM_HARD_DISK_METADATA_TAG, 1, metadata);
- if (state != CHDERR_NONE)
+ if (state)
{
LOGMASKED(LOG_WARN, "Failed to read CHD track gap specs, applying defaults\n");
}
@@ -561,8 +561,8 @@ void mfm_harddisk_device::call_unload()
LOGMASKED(LOG_WARN, "MFM HD sector arrangement and recording specs have changed; updating CHD metadata\n");
chd_file* chdfile = get_chd_file();
- chd_error err = chdfile->write_metadata(MFM_HARD_DISK_METADATA_TAG, 0, string_format(MFMHD_REC_METADATA_FORMAT, params->interleave, params->cylskew, params->headskew, params->write_precomp_cylinder, params->reduced_wcurr_cylinder), 0);
- if (err != CHDERR_NONE)
+ std::error_condition err = chdfile->write_metadata(MFM_HARD_DISK_METADATA_TAG, 0, string_format(MFMHD_REC_METADATA_FORMAT, params->interleave, params->cylskew, params->headskew, params->write_precomp_cylinder, params->reduced_wcurr_cylinder), 0);
+ if (err)
{
LOGMASKED(LOG_WARN, "Failed to save MFM HD sector arrangement/recording specs to CHD\n");
}
@@ -573,8 +573,8 @@ void mfm_harddisk_device::call_unload()
LOGMASKED(LOG_WARN, "MFM HD track gap specs have changed; updating CHD metadata\n");
chd_file* chdfile = get_chd_file();
- chd_error err = chdfile->write_metadata(MFM_HARD_DISK_METADATA_TAG, 1, string_format(MFMHD_GAP_METADATA_FORMAT, params->gap1, params->gap2, params->gap3, params->sync, params->headerlen, params->ecctype), 0);
- if (err != CHDERR_NONE)
+ std::error_condition err = chdfile->write_metadata(MFM_HARD_DISK_METADATA_TAG, 1, string_format(MFMHD_GAP_METADATA_FORMAT, params->gap1, params->gap2, params->gap3, params->sync, params->headerlen, params->ecctype), 0);
+ if (err)
{
LOGMASKED(LOG_WARN, "Failed to save MFM HD track gap specs to CHD\n");
}
@@ -919,10 +919,9 @@ bool mfm_harddisk_device::write(attotime &from_when, const attotime &limit, uint
return false;
}
-chd_error mfm_harddisk_device::load_track(uint16_t* data, int cylinder, int head)
+std::error_condition mfm_harddisk_device::load_track(uint16_t* data, int cylinder, int head)
{
- chd_error state = m_format->load(m_chd, data, m_trackimage_size, cylinder, head);
- return state;
+ return m_format->load(m_chd, data, m_trackimage_size, cylinder, head);
}
void mfm_harddisk_device::write_track(uint16_t* data, int cylinder, int head)
@@ -1070,7 +1069,7 @@ void mfmhd_trackimage_cache::init(mfm_harddisk_device* mfmhd, int tracksize, int
{
if (TRACE_CACHE) m_machine.logerror("[%s:cache] MFM HD cache init; cache size is %d tracks\n", mfmhd->tag(), trackslots);
- chd_error state;
+ std::error_condition state;
mfmhd_trackimage* previous;
mfmhd_trackimage* current = nullptr;
@@ -1091,7 +1090,8 @@ void mfmhd_trackimage_cache::init(mfm_harddisk_device* mfmhd, int tracksize, int
// Load the first tracks into the slots
state = m_mfmhd->load_track(current->encdata.get(), cylinder, head);
- if (state != CHDERR_NONE) throw emu_fatalerror("Cannot load (c=%d,h=%d) from hard disk", cylinder, head);
+ if (state)
+ throw emu_fatalerror("Cannot load (c=%d,h=%d) from hard disk", cylinder, head);
current->dirty = false;
current->cylinder = cylinder;
@@ -1128,11 +1128,11 @@ uint16_t* mfmhd_trackimage_cache::get_trackimage(int cylinder, int head)
mfmhd_trackimage* current = m_tracks;
mfmhd_trackimage* previous = nullptr;
- chd_error state = CHDERR_NONE;
+ std::error_condition state;
// Repeat the search. This loop should run at most twice; once for a direct hit,
// and twice on miss, then the second iteration will be a hit.
- while (state == CHDERR_NONE)
+ while (!state)
{
// A simple linear search
while (current != nullptr)