There are two different types of host contollers. UHCI (Universal Host Controller Interface) and OHCI (Open Host Controller Interface.) As far as I could find, they are sort of like normal modems and winmodems.
UHCI is developed by Intel and is like normal modems. OHCI was developed by Compaq and it's like a winmodem, it depends on special software to work. Initial UHCI drivers were made available by IBM for free, the OHCI drivers were later released under Software Choice. Now the updated versions of all of them are only available from Software Choice.
A few weeks ago I saw Chris Wohlgemuth's Mass Storage Device drivers for USB and thought why not try the DDK sources myself. I have to say that my experince with device drive programming is equal to zero and I had some tough times on Linux when I needed a special driver for my modem card.
To my surprise, building the drivers from the DDK is very simple and easy, the sources compiled fine once you set up the enviroment for the Microsoft 16 bit C compiler. After finishing compiling it I copied them to \OS2\BOOT, removed the comments from my CONFIG.SYS and restarted and the mouse was alive and clicking.
Under Input/Output Device Drivers and Test Tools click on the first button named Download Source Code ZIP File and the one named Download Build Tools Zip File.
Under Microsoft(R) Compiler/Assembler Build Tools download both of the files for Microsoft C Compiler and the Microsoft Macro Assember.
There are documentation files for Input/Output Device Driver reference and the Using your DDK that you may download, the first one tells you how to build new device drivers for OS/2 the second tells you how to use the DDK to compile the sources.
COPYC60 f:\build\ddktools\toolkits\msc60 f:\build\ddk
The batch file copies the required files for the compiling process.
If you don't have any errors, in each subfolder a .SYS file will be created, you can copy them to x:\OS2\BOOT.
For OHCI adapters
BASEDEV=USBOHCD.SYS
BASEDEV=USBD.SYS /REQ:USBOHCD$
BASEDEV=USBHID.SYS
DEVICE=C:\OS2\BOOT\USBMOUSE.SYS
For UHCI adapters
BASEDEV=USBUHCD.SYS
BASEDEV=USBD.SYS /REQ:USBUHCD$
BASEDEV=USBHID.SYS
DEVICE=C:\OS2\BOOT\USBMOUSE.SYS
Shutdown your system and plug your mouse and power up the computer, your mouse should work properly on OS/2, WinOS/2 and DOS.
If you are tempted to remove the DEVICE=C:\OS2\BOOT\MOUSE.SYS SERIAL=COMx from your CONFIG.SYS - don't, the mouse will not work without it.
Well, that's all, I hope you all can make it.
This article is courtesy of www.os2ezine.com. You can view it online at http://www.os2ezine.com/20021016/page_6.html.