SCSI CD-ROM: request sense command should preserve its sense data unless a different command is issued, fixes DOS hanging with a blinking cursor using CDSCSI-2.sys for the 53c9x MCA card when there's no CD inside, making its no length Data In hack no longer needed.
This commit should fix the NT 3.1 AMD PCscsi drivers when they look for devices on LUN > 0 and causing havoc with them (BSOD).
Basically clear the FIFO and set the SEQ_0 bit in the RSEQ read reg.
AM53c974 side: a biosless card is biosless.
General: fixed all the log excesses.
Ported the latest changes/fixes to the above controller from QEMU and added a bios-less AMD Am53c974 device (non-DC390).
The latest changes fix the AMD-branded DOS ASPI drivers on both cards (even without bios).
All: the icon refresh for the respective storage now works properly across all adapters that use it (especially the aha154x compatibles and spock/tribble).
SCSI CD-ROM: The Sony/Texel/DEC SCSI command 0xC0 (Set Address Format) isn't a command that checks for ready status, however, it is for other vendors like NEC, Matsushita, etc. and I am not wishing to create a duplicate command_flags array duplicate just for vendor unique commands. This fixes the MSF bit of Sony/Texel/DEC CD-ROM drives which don't use the Mode Page equivalent.
Toshiba only: attempt to mark the 3201B as a SCSI-1 only CD-ROM drive properly.
CD-ROM side: fixed a mode sense page (0x08 Sony, used by both Sony and Texel drives) as well as corrected the Toshiba specific drive speeds (bytes_per_second).
NCR 5380 side: split the work into the generic 5380 core and the ASICs into separate sources (53c400 and T128) and added the T228 MCA adapter based on the 128.
1.Re-implemented in the best way possible the muted part of the Toshiba/NEC Play Audio commands and related, per spec.
2. Forgot to add a check to a Sony Vendor Data Out command when the len is 0 it should become a Status command, fixes emulator crashes when len is 0 using some CD software.
More timer related fixes regarding the speed combinations, looking at you, Rancho (8.10R and 8.20R), but at least it should solve most problems with boots.
1. The chip in question now supports the right command length for vendor unique commands, fixes crashes that use said commands.
2. Made the CD speed of said chip even closer to the real thing.
1. Changed the MCA ID of said adapter to one that is add-on based rather than integrated (still no bios though).
2. Fixed the DMA/IRQ stuff of the 86c01 DMA side of the card.
1. Added Mode Page Codes 0x00 and 0x03 (Unit Attention and Format Device) to the SCSI CD-ROM code.
2. Corrected the Read Disc Information TOC (actually Read TOC vendor unique) for NEC SCSI CD-ROMs, this, together with the fix above, fixes reading data cd-rom's using NEC vendor commands.
3. Actually identify NEC drives per manual (SCSI unknown version per the -75 and -77 manuals).
4. Re-added the 75 and 77 drives now that the NEC vendor commands are fine + an extra 25a drive with revision 1.0a (from a screenshot from vogons).