USB drivers for Windows 3.1

This page contains a collection of USB drivers for Windows 3.1 USE with extreme caution as there is limited success getting drivers working in Windows 3.1 on DOS considering there was never official support for USB on this OS. Windows 95c was the first DOS based Windows OS to have official support for USB.

Cypress DOS Driver

The DUSE USB Driver software is delivered as a single executable (.EXE) file, DUSE.EXE. The DUSE.EXE file supports USB hardware that meets the Open Host Controller Interface (OHCI) specification, the Universal Host Controller Interface (UHCI) Specification, and the Enhanced Host Controller Interface (EHCI) specifications.

Device Support
This version provides support for the following Mass
Storage devices:
USB ZIP drives
USB Hard disk
USB Super Floppy/HiFD drives Some floppy disks require a default sector size of 1024 or 2048 bytes. See the SECTORSIZE command line parameter for details on how this can be set.
USB MO drives
640M and 1.3G disks require a default sector size of 2048 bytes. See the SECTORSIZE command line parameter for details on how this can be set.


The minor miracle here is using a driver file called "USBASPI.SYS" ("Panasonic v2.06 ASPI Manager for USB mass storage"). Given the right parameter incantations, this 16-bit Panasonic-developed DOS driver will let your system boot good-old DOS -any flavour, maybe even Caldera's OpenDOS and recognize all USB devices connected to the respective controllers. So this USB device identification is also useful for debugging/troubleshooting purposes.

However, it should be noted that this driver will only map mass storage devices like external hard disks, cd- roms, cd-rw, dvd-rom, zip, jaz, ls-120, and flash memory to ASPI devices. Then you need an elusive "ASPI mass storage driver" to map HDs and flash disks it to a drive letter in DOS. This one goes by the name "di1000dd.sys", commonly referred to as the "Motto Hairu USB Driver". Don't ask why, it's called that, I don't know.

Before you continue reading and decide to go out and do "bad things" let me mention that legalese on the Panasonic site most probably prevents you from downloading and using this driver on non-Panasonic devices, yet according to reports that are floating around on the Interweb, people have been able to use these "universal drivers" on a wide range of systems with different USB connectivity, UHCI, OHCI, and USB 2.0's EHCI with the NEC chipset.

The Panasonic DOS drivers seem to work on most USB chipset implementations, including Intel and NEC, as well as NVidia, VIA, and SIS. It seems Panasonic engineers didn't want to have to write a driver every time for every different chipset, so they wrote this "universal" driver to work with all possible USB controllers.

Now the hairy details for DOS old-timers like myself who actually enjoy editing config.sys [Cough. Ed.]:

The driver switches you can use are: device=(path)\USBASPI.SYS [/e] [/o] [/u] [/w] [/v] [/l[=n]] [/f] /r] [/slow] [/nocbc] [/norst] [/noprt]

The driver scans all three USB controller specs by default, but you can limit which controllers are enabled using these switches:

/e EHCI spec (USB 2.0)
/o OHCI spec (newer USB 1.x)
/u UHCI spec (older USB 1.x)

And so far I learned what these switches mean:

/w Wait, displays text message for attaching or swapping USB devices
/v Verbose, shows status messages - recommended
/l[=n] LUN, specifies highest LUN # to be attached to device ID (default=0)

Install Instructions

USB Boot disk image can be written using win32 imager