WarpDriver

In OS/2, like all modern operating systems, there are certain tasks that only a device driver can perform. Most of these tasks involve communicating with hardware, but there also system-level tasks, such as allocating locked and physically-contiguous memory. If a programmer wants to write an OS/2 application that needs to perform any of these tasks, he typically must write an OS/2 device driver.

Description
For an experienced OS/2 driver programmer, writing OS/2 drivers is easy. But the learning curve is very high, and so for for everyone else, it can be too difficult. The alternative is to hire an OS/2 driver programmer, but they are usually hard to find and very expensive.

WarpDriver aims to solve this problem. WarpDriver is a "generic" driver that can perform many of these driver-specific tasks. It also "exports" the tasks to any application that needs them. For instance, WarpDriver can post a semaphore whenever a particular device generates an interrupt.

Some of the current and planned features of WarpDriver are:


 * registering resources with Resource Manager
 * device I/O
 * notification of interrupts
 * memory allocation

WarpDriver is very similar to Jungo's WinDriver product, which is also available for OS/2. However, WarpDriver is free, source code is available, and WarpDriver will eventually have more features than WinDriver. There are also plans for a WinDriver compatibility layer so that developers who use WinDriver on other platforms won't need to purchase the OS/2 version in order to support OS/2.

WarpDriver is developed under the BSD license, which is a very liberal license that allows both private and commercial use. If you need a different license, please contact the developers.

PCI support and source updates
Alex Cherkaev (aka doctor64) updated the WarpDriver sourcecode, it should now work right out of the box and it also supports PCI devices!

Thanks to Alex for his work!

New project: WarpDriver
The second project from Timur Tabi: WarpDriver is a generic OS/2 device driver which simplifies the process of creating a device driver for OS/2. Check it out!

Download

 * Source Code - CVS Snapshot

License
BSD License

Credits

 * Alex Cherkaev