diff options
Diffstat (limited to 'src/devices/machine/ds6417.cpp')
-rw-r--r-- | src/devices/machine/ds6417.cpp | 16 |
1 files changed, 8 insertions, 8 deletions
diff --git a/src/devices/machine/ds6417.cpp b/src/devices/machine/ds6417.cpp index ef359d9ffd1..dcde73f2a43 100644 --- a/src/devices/machine/ds6417.cpp +++ b/src/devices/machine/ds6417.cpp @@ -10,7 +10,7 @@ DEFINE_DEVICE_TYPE(DS6417, ds6417_device, "ds6417", "Dallas DS6417 CyberCard") ds6417_device::ds6417_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock) : device_t(mconfig, DS6417, tag, owner, clock) - , device_image_interface(mconfig, *this) + , device_memcard_image_interface(mconfig, *this) { } @@ -37,19 +37,19 @@ void ds6417_device::device_reset() m_command = 0; } -image_init_result ds6417_device::call_load() +std::pair<std::error_condition, std::string> ds6417_device::call_load() { if(length() != 32768) - return image_init_result::FAIL; - return image_init_result::PASS; + return std::make_pair(image_error::INVALIDLENGTH, "Incorrect image file size (must be 32K)"); + return std::make_pair(std::error_condition(), std::string()); } -image_init_result ds6417_device::call_create(int format_type, util::option_resolution *format_options) +std::pair<std::error_condition, std::string> ds6417_device::call_create(int format_type, util::option_resolution *format_options) { u8 buffer[32768] = {0}; if(fwrite(buffer, 32768) != 32768) - return image_init_result::FAIL; - return image_init_result::PASS; + return std::make_pair(std::errc::io_error, std::string()); + return std::make_pair(std::error_condition(), std::string()); } uint8_t ds6417_device::calccrc(uint8_t bit, uint8_t crc) const @@ -61,7 +61,7 @@ uint8_t ds6417_device::calccrc(uint8_t bit, uint8_t crc) const return crc >> 1; } -WRITE_LINE_MEMBER( ds6417_device::clock_w ) +void ds6417_device::clock_w(int state) { if(!m_reset || !exists()) return; |