Leaked source code of windows server 2003
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

60 lines
3.3 KiB

  1. <HTML>
  2. <HEAD>
  3. <META HTTP-EQUIV="Content-Type" CONTENT="text/html; charset=windows-1252">
  4. <META NAME="Generator" CONTENT="Microsoft Word 97">
  5. <TITLE>PNPI8042</TITLE>
  6. <META NAME="Template" CONTENT="C:\PROGRAM FILES\MICROSOFT OFFICE\OFFICE\html.dot">
  7. </HEAD>
  8. <BODY TEXT="#000000" LINK="#0000ff" VLINK="#800080" BGCOLOR="#ffffff" leftmargin="8">
  9. <FONT FACE="Verdana"><H2><A NAME="MYSAMPLE">PNPI8042</A> </H2>
  10. <span style="color:#FF0000">[This is preliminary documentation and subject to change.]</span>
  11. <H3>SUMMARY</H3></FONT><FONT FACE="Verdana" SIZE=2><P>
  12. This i8042 (PS/2) device driver implements the Windows&#174; 2000-style keyboard and mouse ports. It differs from Windows NT&#174; 4.0 in that instead of writing the device object's name to the registry and relying on the class driver (either mouclass or kbdclass) to load after it and look at these names, it is in the same driver stack as the class driver itself. Almost all the other interactions with the class driver are the same.<P>
  13. The code works on Windows 2000 or later platforms. This code will not work on previous versions Windows NT due to support for Plug and Play, Power, and the new class drivers.<P>
  14. The driver supports Plug and Play with respect to the Plug and Play IRP. The driver does not perform device detection or support hot plugging. As for power, i8042prt supports low power states by reinitializing the devices upon resumption to normal power.<P>
  15. <H3>BUILDING THE SAMPLE</H3></FONT><FONT FACE="Verdana" SIZE=2><P>
  16. This sample builds i8042prt.sys. Necessary files include those in this directory and Kbdmou.h, Ntdd8042.h, Ntddmou.h, Ntddkbd.h, PoClass.h, and wmistr.h. Both free and checked builds are available. <b>NOTE:</b> Wmilib.sys must be present on the target machine for the binary to load properly. KEYBOARD.INF (the inf required to load this driver) is a system INF.
  17. <H3>CODE TOUR</H3>
  18. <H4>File Manifest</H4>
  19. </FONT><U><PRE>File&#9;&#9; Description
  20. </U>
  21. Pnpi8042.htm&#9; The documentation for this sample (this file).
  22. Sources&#9; The generic file for building this code sample.
  23. Hook.c&#9; Callback functions for upper hook filters
  24. I8042cfg.h&#9; Configuration information
  25. I8042cmn.c&#9; IOCTL dispatch, DPC completion routines, StartIO
  26. I8042dep.c&#9; DriverEntry, Hardware initialization routines
  27. I8042log.mc&#9; Definition for i8042prt errors
  28. I8042prt.h&#9; Global i8042prt header file
  29. I8042prt.rc&#9; Resources
  30. I8042str.c&#9; String constants
  31. I8042str.h&#9; String constants definitions
  32. Kbdcmn.c&#9; Keyboard packet reporting
  33. Kbddep.c&#9; Keyboard specific initialization
  34. Kbdpnp.c&#9; Keyboard specific PnP routines
  35. Moucmn.c&#9; Mouse mapcket reporting
  36. Moudep.c&#9; Mouse-specific initialization
  37. Moupnp.c&#9; Mouse-specific PnP routines
  38. Pnp.c&#9; Plug and Play and Power dispatch functions
  39. SysBtn.c&#9; System (i.e., power) button support
  40. Wmi.c&#9; System Control/WMI dispatch
  41. </FONT><P ALIGN="CENTER"><A HREF="#top"><FONT FACE="Verdana" SIZE=2>Top of page</FONT></A><FONT FACE="Verdana" SIZE=2> </P></FONT>
  42. <TABLE CELLSPACING=0 BORDER=0 WIDTH=624>
  43. <TR><TD VALIGN="MIDDLE" BGCOLOR="#00ffff" HEIGHT=2>
  44. <P></TD>
  45. </TR>
  46. </TABLE>
  47. <FONT FACE="MS Sans Serif" SIZE=1><P>&copy; 1999 Microsoft Corporation</FONT><FONT FACE="Verdana" SIZE=2> </P></FONT></BODY>
  48. </HTML>