summaryrefslogtreecommitdiffstatshomepage
path: root/src/devices/bus/nscsi/hd.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'src/devices/bus/nscsi/hd.cpp')
-rw-r--r--src/devices/bus/nscsi/hd.cpp9
1 files changed, 7 insertions, 2 deletions
diff --git a/src/devices/bus/nscsi/hd.cpp b/src/devices/bus/nscsi/hd.cpp
index 8e210e22d10..fe5fc45127b 100644
--- a/src/devices/bus/nscsi/hd.cpp
+++ b/src/devices/bus/nscsi/hd.cpp
@@ -245,7 +245,7 @@ void nscsi_harddisk_device::scsi_command()
case 0x01: // read-write error recovery page
scsi_cmdbuf[pos++] = 0x01; // !PS, page id
scsi_cmdbuf[pos++] = 0x0a; // page length
- scsi_cmdbuf[pos++] = 0; // various bits
+ scsi_cmdbuf[pos++] = 0x26; // various bits
scsi_cmdbuf[pos++] = 0; // read retry count
scsi_cmdbuf[pos++] = 0; // correction span
scsi_cmdbuf[pos++] = 0; // head offset count
@@ -384,7 +384,7 @@ void nscsi_harddisk_device::scsi_command()
}
if (!fail) {
- scsi_cmdbuf[0] = pos;
+ scsi_cmdbuf[0] = pos - 1;
if (pos > size)
pos = size;
@@ -444,6 +444,11 @@ void nscsi_harddisk_device::scsi_command()
break;
}
+ case SC_SYNCHRONIZE_CACHE:
+ LOG("command SYNCHRONIZE CACHE (10)\n");
+ scsi_status_complete(SS_GOOD);
+ break;
+
case SC_READ_CAPACITY: {
LOG("command READ CAPACITY\n");