Writing Windows WDM Device Drivers

Microsoft is the best source of information for most core Windows device driver development issues. Various books and newsgroups are also available to help driver writers. You may well need to check out other sources of information particular to your type of driver. You may need to seek help from vendors, standards bodies, and trade associations, as well as other driver writers.
A Microsoft Developer Network (MSDN) Professional Subscription provides most of the basic information you need to write device drivers. You get all the basic tools, Driver Development Kits (DDKs), and beta test versions of the Microsoft operating systems. However, it is worth keeping an eye on the Microsoft websites, as helpful articles and late-breaking news can often be posted. You will also need a C or C++ compiler, such as Visual Studio. The crucial Microsoft web sites are:
http://www.microsoft.com/hwdev/
http://www.microsoft.com/hwdev/driver/
http://msdn.microsoft.com/developer/
The DDKs include many example drivers that are very useful. Searching through these examples will often show you how to use a particular function or technique. Alternatively, you can base your entire driver on an existing example. Needless to say, do not use code blindly make sure you understand what is going on. Finally, the sample driver directories often contain useful documentation in the form of Word or text files.
| Advanced Configuration and Power Interface Specification, Revision 1.0 | http://www.teleport.com/~acpi/ |
| Device Bay Interface Specification, Version 1.0 | http://www.device-bay.org |
| Display Data Channel Standard, Version 3.0 | http://www.vesa.org |
| Extended Display Identification Data Standard, Version 2.0 | |
| El Torito Bootable CD-ROM... |