The AHA/BusLogic reset controllers' BIOS commands now return 0x80 (no device present error) for CD-ROM drives if the device is market as not supporting CD-ROM boot, fixes sending of WRITE (10) to CD-ROM drives followed by hang;

The CD-ROM and SCSI disk REQUEST SENSE commands no longer incorrectly set the phase to status;
REQUEST SENSE with non-data direction control byte is now treated as a request to send sense bytes from the command directly to the sense buffer;
SCSI and SLiRP threads now terminate themselves again when out of the while loop;
SCSI and SLiRP mutexes are now closed when the threads terminate themselves;
Fixed a bug causing the "Press F12+F8 or middle mouse button to release" string on the title bar to get corrupt.
This commit is contained in:
OBattler
2017-10-14 18:52:25 +02:00
parent 6eb9404d04
commit 7581474aab
8 changed files with 90 additions and 32 deletions

View File

@@ -1303,6 +1303,7 @@ buslogic_init(device_t *info)
dev->reset_duration = BUSLOGIC_RESET_DURATION_US;
dev->max_id = 7;
dev->int_geom_writable = 1;
dev->cdrom_boot = 0;
bl->chip = info->local;
bl->PCIBase = 0;
@@ -1375,6 +1376,7 @@ buslogic_init(device_t *info)
scam_rom_name = L"roms/scsi/buslogic/BT-958D_SCAM.rom";
scam_rom_size = 0x0200;
dev->fw_rev = "AA507B";
dev->cdrom_boot = 1;
break;
}