Several open documents specify in detail how to develop device drivers for the Atari. Deviations from these specifications can lead to malfunctions and even data loss. Testing driver and device implementations helps in developing error-free drivers and error-free device firmwares.
SCSI Driver and Firmware Test Suite 4.10 (June 25, 2026)
The test suite is a collection of open source tools for testing SCSI firmware/emulations (especially SCSI-2 and newer) and some SCSI Driver functions, also for SCSI Drivers for IDE/SATA or USB. The compatibility with SCSI-2 and newer is tested, not the compatibility with HDDRIVER. The latter results from SCSI compatibility.
HDDRIVER is not required for these tests, but only a SCSI Driver for the buses/devices to be tested.
The test suite comprises these programs, each with its own version number:
The tests do not modify any data. SERRTEST, ERRTEST and MCHGTEST list the availables buses and expect the input of bus and device IDs. SDRVTEST tests all devices present.
Please contact me if you find a test where the expected result does not comply with the SCSI Driver specification or the SCSI standard. The source code of all programs is available on GitHub, so that you can see exactly what is tested and how.
Some SD cards readers for ACSI fail the media change test MCHGTEST. With this hardware hot-swapping of SD cards may result in data loss. There is no such bug with real physical removable media drives (SyQuest, ZIP, JAZ, ...) and also not with UltraSatan and GigaFile. By the way, hot-swap has been supported by correctly working drives and drivers for decades, even by AHDI.
Some drivers have bugs, which are not found by the test suite, but which can also lead to errors after media changes. For HDDRIVER, ICDBOOT, CBHD, HuSHI and AHDI no such bugs are known, but unfortunately for other, open driver software. The developers of the projects in question are aware of the bugs in their drivers (especially SCSI Driver and XHDI) and would probably appreciate help.
The example logfile of SDRVTEST shows test results of HDDRIVER with devices that pass all tests: An IBM DDRS-39130 hard drive, a removable media drive emulated by SCSI2Pi, a streamer emulated by SCSI2Pi and the SCSI Driver target interface of HDDRIVER.
With the test suite and Hatari or ARAnyM and the SCSI Driver for Linux you can also test native Linux devices. The following logfile tests an emulated IDE drive and a real NVMe-SSD connected by a USB-to-NVMe adapter.
In a logfile each bug is marked with "ERROR". SDRVTEST as good as possible tries to differentiate between bugs in the SCSI Driver and bugs in the device firmware.