summaryrefslogtreecommitdiffstatshomepage
path: root/src/devices/bus/scsi/s1410.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'src/devices/bus/scsi/s1410.cpp')
-rw-r--r--src/devices/bus/scsi/s1410.cpp12
1 files changed, 7 insertions, 5 deletions
diff --git a/src/devices/bus/scsi/s1410.cpp b/src/devices/bus/scsi/s1410.cpp
index 5416089fd9d..2873a281783 100644
--- a/src/devices/bus/scsi/s1410.cpp
+++ b/src/devices/bus/scsi/s1410.cpp
@@ -112,7 +112,8 @@ ROM_START( s1410 )
ROM_REGION( 0x1000, Z8400A_TAG, 0 )
ROM_LOAD( "104521f", 0x0000, 0x1000, CRC(305b8e76) SHA1(9efaa53ae86bc111bd263ad433e083f78a000cab) )
ROM_LOAD( "104521g", 0x0000, 0x1000, CRC(24385115) SHA1(c389f6108cd5ed798a090acacce940ee43d77042) )
- ROM_LOAD( "104788d", 0x0000, 0x1000, CRC(2e385e2d) SHA1(7e2c349b2b6e95f2134f82cffc38d86b8a68390d) )
+ ROM_LOAD( "104788d", 0x0000, 0x1000, CRC(2e385e2d) SHA1(7e2c349b2b6e95f2134f82cffc38d86b8a68390d) ) // BASF 6188
+ ROM_LOAD( "104788e", 0x0000, 0x1000, CRC(40a7195d) SHA1(bf68e99dad182bfcbb5d488aeb440cba572a6ef8) ) // Seagate ST-251
ROM_REGION( 0x20, "103911", 0 )
ROM_LOAD( "103911", 0x00, 0x20, NO_DUMP ) // DM74S288N
@@ -172,7 +173,7 @@ void s1410_device::device_add_mconfig(machine_config &config)
z8400a.set_addrmap(AS_IO, &s1410_device::s1410_io);
z8400a.set_disable();
- HARDDISK(config, "image");
+ HARDDISK(config, m_image).set_interface("scsi_hdd");
}
@@ -186,7 +187,8 @@ void s1410_device::device_add_mconfig(machine_config &config)
//-------------------------------------------------
s1410_device::s1410_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock)
- : scsihd_device(mconfig, S1410, tag, owner, clock)
+ : scsihd_device(mconfig, S1410, tag, owner, clock),
+ m_image(*this, "image")
{
}
@@ -247,14 +249,14 @@ void s1410_device::ExecCommand()
logerror("S1410: FORMAT TRACK at LBA %x for %x blocks\n", m_lba, m_blocks);
- if ((m_disk) && (m_blocks))
+ if (m_image->exists() && m_blocks)
{
std::vector<uint8_t> data(m_sector_bytes);
memset(&data[0], 0xc6, m_sector_bytes);
while (m_blocks > 0)
{
- if (!hard_disk_write(m_disk, m_lba, &data[0]))
+ if (!m_image->write(m_lba, &data[0]))
{
logerror("S1410: HD write error!\n");
}