Last Updated: 20 May 2016
This book is part of a series. Please see this page for more information.
  
Please see this page for more information.
I would like to receive these tests from users like you.  I will be sure to give you credit for your help.  Thank you.

I would also like to know where you look for information on USB.  A list of forums, newsgroups, etc.  Please send me an email letting me know where you find help with USB programming. (fys [at] fysnet [dot] net).


To make sure that I have a wide range of tests performed, i need your help. I have multiple test machines, but they are few compared to the amount of tests that should be done to make a thorough and accurate test base. If you are willing to help, and meet the requirements for each test, please download the test, perform the test, and then email the results back to me at fys [at] fysnet [dot] net. I will have a "contributors" section and will include your name if you have helped with these tests. Please leave a name or handle name. If you would not like to be included in the "contributors" section, simply comment so. Thank you, Ben Notes: These tests require a DOS based system. They will not work under a Windows/Linux system that emulates DOS via a DOS box, DOS session, DOSBox, QEmu, Bochs, etc. The zip file includes a floppy disk image (tests.img) that you can write to a 1.44 meg floppy[1]. It contains FreeDOS and the test(s). An installer is also included. Once you have installed tests.img to the disk, simply place in the floppy drive and reboot your machine. The test(s) also require a DPMI (DOS Protected Mode Interface) server. There is one included in the .zip file along with one already installed on the tests.img disk. The test(s) also require a 486+ with the CPUID and RDTSC instructions. There is no intention what-so-ever to inflict harm to your computer, however, if you decide to help, you do so at your own risk. To the best of my knowledge, these tests will not harm your computer in anyway. Still, ****** use at your own risk ****** I have combined the tests to one floppy so that you do not have to install mutliple times just to check for multiple controllers. Download from: tests.zip (includes a readme.txt file with instructions) Please note: If you are using a USB keyboard, as soon as the test is done and an access to the keyboard is requested (via the test or FreeDOS), the machine will freeze since the keyboard has been reset and no longer responds to interrupt requests. Please note: Same for a USB floppy. If you are running this test from a USB floppy, you will not be able to redirect the output to the floppy since these tests will reset the floppy. Please note: The tests will only run on a 32-bit x86 machine. No 64-bit machines. Sorry. [1] The WinXP version of MPUTIMG will write this image to a USB Thumb Drive. Then if your BIOS will boot USB Thumb Drives, you can use it instead of a floppy drive. However, if the Thumb drive is on a port of the UHCI and you run the test for the UHCI controller, your Thumb drive will no longer be available due to the fact that the test will reset the controller. Chicken before the egg, right! So, if you are running the test for an xHCI controller, please make sure the Thumb Drive is on a port that is not connected to a xHCI controller.


OHCI:  v1.17.00
Requirements: DOS based system, OHCI controller on a PCI bus, 486+ with CPUID and RDTSC.
* changed to the -v- parameter to display verbose information
* added the -p parameter to pause between 'pages'

UHCI:  v1.17.00
Requirements: DOS based system, UHCI controller on a PCI bus, 486+ with CPUID and RDTSC.
* changed to the -v- parameter to display verbose information
* added the -p parameter to pause between 'pages'

EHCI:  v1.17.00
Requirements: DOS based system, EHCI controller on a PCI bus, 486+ with CPUID and RDTSC.
* changed to the -v- parameter to display verbose information
* added the -p parameter to pause between 'pages'

xHCI:  v1.17.20
Requirements: DOS based system, xHCI controller on a PCI(e) bus, 486+ with CPUID and RDTSC.
* changed to the -v- parameter to display verbose information
* added the -p parameter to pause between 'pages'
* changed to the -d- parameter to dump the PCI space
* Added many other items, including checking Save and Restore Controller State