diff options
Diffstat (limited to 'src/devices/bus/vtech/memexp/floppy.cpp')
-rw-r--r-- | src/devices/bus/vtech/memexp/floppy.cpp | 11 |
1 files changed, 7 insertions, 4 deletions
diff --git a/src/devices/bus/vtech/memexp/floppy.cpp b/src/devices/bus/vtech/memexp/floppy.cpp index fb36f90e5a3..7fdfd30a65a 100644 --- a/src/devices/bus/vtech/memexp/floppy.cpp +++ b/src/devices/bus/vtech/memexp/floppy.cpp @@ -11,8 +11,11 @@ #include "emu.h" #include "floppy.h" -#include "formats/vt_dsk.h" + #include "formats/fs_vtech.h" +#include "formats/vt_dsk.h" + +#include <algorithm> //************************************************************************** @@ -143,7 +146,7 @@ void vtech_floppy_controller_device::device_reset() m_last_latching_inverter_update_time = machine().time(); m_write_start_time = attotime::never; m_write_position = 0; - memset(m_write_buffer, 0, sizeof(m_write_buffer)); + std::fill(std::begin(m_write_buffer), std::end(m_write_buffer), attotime::zero); } @@ -309,13 +312,13 @@ void vtech_floppy_controller_device::flush_writes(bool keep_margin) m_write_position -= kept_count; if(m_write_position && m_write_buffer[0] == m_write_start_time) { if(m_write_position) - memmove(m_write_buffer, m_write_buffer+1, sizeof(m_write_buffer[0])*(m_write_position-1)); + std::copy_n(m_write_buffer + 1, m_write_position - 1, m_write_buffer); m_write_position--; } m_selected_floppy->write_flux(m_write_start_time, limit, m_write_position, m_write_buffer); m_write_start_time = limit; if(kept_count != 0) - memmove(m_write_buffer, m_write_buffer+kept_pos, kept_count*sizeof(m_write_buffer[0])); + std::copy_n(m_write_buffer + kept_pos, kept_count, m_write_buffer); m_write_position = kept_count; } |