Adaptec/BusLogic cards now pad out command with zeros if command length is longer than stated in the CCB. Fixes Windows NT 4.0 installation (sends 10 byte instead of 12 for READ CD).
This commit is contained in:
parent
a8ce4ebc86
commit
a16fdb195e
1 changed files with 8 additions and 0 deletions
|
|
@ -1858,6 +1858,7 @@ static void process_scsi(aha154x_t *scsi)
|
|||
|
||||
if (bus_state & BUS_REQ)
|
||||
{
|
||||
int bus_out;
|
||||
// pclog("SCSI next phase - %x\n", bus_state);
|
||||
switch (bus_state & (BUS_IO | BUS_CD | BUS_MSG))
|
||||
{
|
||||
|
|
@ -1881,6 +1882,13 @@ static void process_scsi(aha154x_t *scsi)
|
|||
scsi->scsi_state = SCSI_STATE_READ_MESSAGE;
|
||||
break;
|
||||
|
||||
case BUS_CD:
|
||||
bus_out = BUS_SETDATA(0);
|
||||
|
||||
scsi_bus_update(&scsi->bus, bus_out | BUS_ACK);
|
||||
scsi_bus_update(&scsi->bus, bus_out & ~BUS_ACK);
|
||||
break;
|
||||
|
||||
default:
|
||||
fatal(" Bad new phase %x\n", bus_state);
|
||||
}
|
||||
|
|
|
|||
Loading…
Reference in a new issue