USBDOS is a collection of different USB drivers and tools:
BOUNDTST is a program to test the CPU BOUND Instruction Bug.
DRIVES shows details about all available disk drives in DOS.
HIDSUPT1 is a program that is designed as a Support Program, to be
called from "inside" some of Bret E. Johnsons other USB-related
INKLEVEL is a Printer Ink Fill Percentage Display Program for DOS.
Works with many Epson- and HP-compatible Printers.
IRQ shows you which Hardware Interrupt lines (IRQs or Interrupt
ReQuest lines) on your computer are currently in use.
PS2MTEST simply displays the "raw" data as it comes from the
PS2 Mouse BIOS.
SCANTEST is a low-level keyboard testing utility.
THRUST returns low-level information (raw numbers) about your game
port and joysticks.
UNI2ASCI attempts to convert a UniCode String (16-bit characters)
into an ASCII String (7-bit characters).
USBDEVIC is a program to display information about Devices attached
to the USB Host(s).
USBDRIVE is a DOS Driver for up to 8 SCSI-compatible USB Mass
USBHOSTS shows Details of One or All USB Host Controllers.
USBHUB is a DOS Driver for up to 16 Generic USB ver 1 Hubs, with
up to 7 ports on each Hub.
USBJSTIK is a DOS Driver for up to 8 USB Joysticks or GamePads.
USBKEYB is a DOS Driver for up to 4 USB Keyboards.
USBMOUSE is a DOS Driver for up to 8 Generic USB Mice.
USBPRINT is a DOS Driver for up to 8 USB Printers.
USBSUPT1 is designed as a Support Program, to be called from
"inside" some of Bret E. Johnsons other USB-related Programs.
USBUHCI is a DOS Driver for a Universal HCI compatible USB Host
USBUHCIL is a DOS Driver for a Universal HCI compatible USB Host
LITE version (maximum 16 Devices, no Isochronous Transactions).
VENDORID Translates PCI & USB Vendor ID codes to words.
- none -
- none -
All Device/Interfaces have General Descriptors, and all Device/Inter-
face Drivers need to download the General Descriptors in order to
configure and control the Device/Interfaces. All of the DOS USB Drivers
have options to let you view the Descriptors of the Device/Interfaces
it is controlling. You can view the Descriptors just for casual
interest, or because something is not working correctly and you need
to do some troubleshooting. It actually takes quite a bit of
programming to decode and print the various Descriptors in an under-
standable fashion. So, rather than "copying" everything it takes to do
that into every single program that needs it, it is much easier and
more efficient to create a separate program (or set of programs)
dedicated to that purpose. When a Device/Interface Driver needs to
decode and print a Descriptor for you to view, it just "calls" the
Support Program instead of trying to do it internally.
In these DOS USB Drivers, the program that actually decodes the General
Descriptors is called USBSUPT1 (USB SUPporT program #1). In turn, the
Support Program USBSUPT1 at various times may call other "sub-support"
programs, such as VENDORID (which translates USB or PCI Vendor ID's
into Vendor Names) and UNI2ASCI (which translates Unicode strings into
ASCII strings). Of course, USBSUPT1 isn't the only program that may
need the functions contained in the "sub-support" programs, which is
why they are not "embedded" into USBSUPT1. The Support Programs can be
called by any other program that wants to use them, not necessarily
just the ones contained in this DOS USB package.
The Support Programs are written as stand-alone DOS programs, rather
than simple "data files" or in some "special" format that can only be
read or executed in some unique way. This allows you, if you want, to
run the Support Programs as a separate, stand-alone programs, and
discern all sorts of interesting things about the USB structure and
In addition, to Support Programs, there are also several Test Programs
included in this package. A Test Program is designed to test a specific
Device/Interface Driver to make sure it is operating properly. An
example of a Test Program is PS2MTEST (PS2 Mouse TEST), which is
specifically designed to test USBMOUSE (the USB Mouse Driver). Test
programs are originally written as part of the program-writing process,
in order to test and troubleshot all of the features and compati-
bilities of a Device/Interface Driver. You can use them to test and
troubleshoot things as well, or you can just "play around" with them
to see how things work.
For more information see:
C:\FREEDOS\DOC\usbintro.doc (too big for edit, please use
another editor, e.g. Blocek!)
- none -
- see above -
Copyright © 2007-2010, Bret E. Johnson, help version 2023 W. Spiegl.
This file is derived from the FreeDOS Spec Command HOWTO.
See the file H2Cpying for copying conditions.