diff options
author | 2022-01-23 19:18:28 +0200 | |
---|---|---|
committer | 2022-01-23 19:19:29 +0200 | |
commit | ca38c078c6c460c28308eebbb3dd64e3c3ec2c43 (patch) | |
tree | 7346325a351b00e7b47812f329c580c44b3d9a62 /src/devices/bus | |
parent | 1d726e64308d1f1585dd222b4efe25edd3ebe41b (diff) |
s1410: Fix sense command and bytes per sector in read/write buffer commands. [Curt Coder]
Diffstat (limited to 'src/devices/bus')
-rw-r--r-- | src/devices/bus/nscsi/s1410.cpp | 10 |
1 files changed, 7 insertions, 3 deletions
diff --git a/src/devices/bus/nscsi/s1410.cpp b/src/devices/bus/nscsi/s1410.cpp index c5fccebb686..fc191302958 100644 --- a/src/devices/bus/nscsi/s1410.cpp +++ b/src/devices/bus/nscsi/s1410.cpp @@ -39,7 +39,6 @@ void nscsi_s1410_device::scsi_command() case SC_TEST_UNIT_READY: case SC_REZERO: case SC_FORMAT_UNIT: // TODO does not support starting LBA - case SC_REQUEST_SENSE: case SC_REASSIGN_BLOCKS: case SC_READ: case SC_WRITE: @@ -51,6 +50,11 @@ void nscsi_s1410_device::scsi_command() } break; + case SC_REQUEST_SENSE: + scsi_data_in(SBUF_SENSE, 4); + scsi_status_complete(SS_GOOD); + break; + case SC_FORMAT_TRACK: { if (scsi_cmdbuf[1] >> 5) { scsi_status_complete(SS_NOT_READY); @@ -89,12 +93,12 @@ void nscsi_s1410_device::scsi_command() break; case SC_WRITE_SECTOR_BUFFER: - scsi_data_out(2, 512); + scsi_data_out(2, bytes_per_sector); scsi_status_complete(SS_GOOD); break; case SC_READ_SECTOR_BUFFER: - scsi_data_in(2, 512); + scsi_data_in(2, bytes_per_sector); scsi_status_complete(SS_GOOD); break; |