To successfully read files from an MFM hard disk, I needed another drive where I could copy them to. A USB stick would be the most convenient choice. Although DOS lacks built-in USB support, some unofficial drivers are available that leverage the fact that USB mass storage devices use the SCSI command set. SCSI hard drives were readily available during the golden years of MS-DOS, and the USB driver simply emulates a SCSI adapter.
SCSI adapter drivers are commonly associated with the acronym ASPI, which stands for Advanced SCSI Programming Interface. Therefore, USB drivers are often named USBASPI. Several implementations exist, and they are gathered on hiren & pankaj’s website. I also include them here in case the aforementioned website goes down: the ZIP archive.
You should check which USB host controller interface specification (OHCI or UHCI) your controller conforms to. I’ve got a PCI USB controller based on the D720100AGM chipset that conforms to OHCI and EHCI specifications. First, you need to create a bootable MS-DOS 6.22 floppy.
To load the driver, add entries in config.sys
in the following manner:
device=usbaspi[X].sys [options]
device=NJ32DISK.SYS
Where [X]
and [options]
are from the list below. You should try some drivers from this list and find out which one works for you. NJ32DISK.SYS
is a high-level SCSI driver that detects the hard drive (or in this case, USB flash drive) and makes it visible in DOS.
- usbaspi1.sys - Panasonic Communications Co. ASPI Manager for USB mass-storage (Universal Driver)
device=usbaspi1.sys /V /E
for EHCI USB 2.0device=usbaspi1.sys /V /O
for OHCI USB 1.1device=usbaspi1.sys /V /U
for UHCI USB 1.1
- usbaspi2.sys - Novac ASPI Manager for UHCI/OHCI USB mass-storage
device=usbaspi2.sys
- usbaspi3.sys - Medialogic ASPI Manager for USB mass-storage
device=usbaspi3.sys
- usbaspi4.sys - Iomega ASPI USB-OHCI 1.1
device=usbaspi4.sys
- usbaspi5.sys - Iomega ASPI USB-UHCI 1.0
device=usbaspi5.sys
My own config.sys
:
DEVICE=HIMEM.SYS /testmem:off
FILES=30
BUFFERS=20
device=USBASPI2.SYS
device=NJ32DISK.SYS
After successful boot-up the driver should display some information on the screen:
If you already have a hard drive in your system, the USB mass storage should be visible as the D:
drive. I formatted it using format D:
and it became ready to go!