ATAPICDD is an opensource implementation of a cdromdriver. Currently it only focuses on atapi-compatible cdromdrives, but things like SCSI, El-Torito, parallel, interface card, USB and Firewire might also need to be supported, as well as burning (writing) a recordable medium.
Currently this driver is in alpha-stadium, and neither fast nor reliable.
If you feel like improving the driver, please look up the sources and publish your changes.
For development and feature support reasons, ATAPICDD might be split up in two drivers:
- a file named \"aspihost.sys\" or \"atapimgr.sys\" to drive the controller interface
- a file named \"aspicd.sys\" to drive the optical devices (cd, dvd) on the controller
(Perhaps also a file named aspidisk.sys to control block devices on the controller).
In the end, you will also need a program to assign driveletters to the loaded cdromdrivers. This is done by the cdex component, available in different flavours:
- mscdex (microsoft. outdated, proprietary, doesn't support iso9660:1999 specs)
- nwcdex (netware)
- shsucdx (freeware with source)
The cdrom driver for USB is no longer available, as the author has decided to close the source, and specifically prevent FreeDOS from using it. http://johnson.tmfc.net/freedos/usbdrv.html
IDE drivers which can control multiple drives:
- vide-cdd.sys (acer/benq website)
- oakcdrom.sys (win98 bootdisk)
- mtmcdai.sys (mitsumi)
IDE drivers which control a single drive:
- xcdrom.sys (GPL, by Jack R Ellis, expected somewhere in 2006)
Alternative usable driver in case you booted from a CD-ROM in non-emulation mode:
- eltorito.sys (Bart Lagerweij)
ASPI driver:
Alternatively, look at the site of the Ultimate Boot CD (ubcd)
An example of loading the driver is:
config.sys : device=C:\FDOS\BIN\atapicdd.sys /D:FDCD0001
autoexec.bat: shsucdx /D:FDCD0001
The block device name is FDCD0001? here, and forms the only link between the cdromdriver and the cdex component.
aspi is a fake scsi, and thus the aspi driver implements blockdevice SCSIMGR$.