View Single Post
Old 17 October 2018, 11:28   #2
Toni Wilen
WinUAE developer
 
Join Date: Aug 2001
Location: Hämeenlinna/Finland
Age: 49
Posts: 26,519
Unfortunately not. There is no guaranteed safe way to test driver support if driver is too buggy. Fortunately most common devices have sane enough drivers.

Possible issues:

- Driver is not SCSI and HD_SCSICMD emulation (that is needed for HDToolBox compatibility) only emulates it just enough to support HDToolBox. Which does not need large drive support because HDToolBox only needs to read/write RDB blocks. True SCSI controllers generally handle this fine because they just pass the command directly to the device. They still may have smaller block transfer size limit than absolute READ(10) max due to software or hardware limits but it usually only becomes problem if you transfer more than 8M of data using single command. It is good idea to check and use max transfer value and split transfers if needed.

- Driver is very bad and crashes if it gets "unknown" (as in NSD/TD64 command) command. Fortunately this was mostly problem with very old drivers. Only solution is a blacklist.

Basically only way is to attempt to use the command and check that io_Error/io_Actual matches expected values. This is what pfs3aio does. Check pfs3aio disk.c.
Toni Wilen is offline  
 
Page generated in 0.05344 seconds with 11 queries