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.

128 lines
6.7 KiB

  1. <HTML>
  2. <HEAD>
  3. <META HTTP-EQUIV="Content-Type" CONTENT="text/html; charset=windows-
  4. 1252">
  5. <META NAME="Generator" CONTENT="Microsoft Word 97">
  6. <TITLE>3Dlabs Permedia2 Display Driver</TITLE>
  7. </HEAD>
  8. <BODY LINK="#0000ff">
  9. <FONT FACE="Verdana" SIZE=5><H2>3Dlabs Permedia2 Display Driver</H2>
  10. </FONT><FONT FACE="Verdana" SIZE=2>
  11. <H3>SUMMARY</H3></FONT><FONT FACE="Verdana" SIZE=2><P>
  12. This is a display driver for graphics adapters based
  13. on the 3Dlabs Permedia-2 chipset.
  14. It supports GDI acceleration, Microsoft DirectDraw&#174; acceleration, Microsoft Direct3D&#174; acceleration,
  15. and multiple monitor support.
  16. This display driver forms a matched pair with the 3Dlabs Permedia2 video miniport driver in \Ntddk\Src\Video\Miniport\3dlabs. The miniport driver is responsible for non-rendering tasks such as adapter initialization, register mapping, and other resource allocation, whereas the display driver handles actual rendering tasks.<p>
  17. This sample driver also shows how to implement a video driver that runs on Windows� 2000 and Windows NT 4.0, using a single binary.<p>
  18. The
  19. sample runs on the x86 platform and builds properly with Microsoft&#174; Visual C&#174; 6.0. It is 64-bit compliant.<P>
  20. <H3>BUILDING THE SAMPLE</H3></FONT><FONT FACE="Verdana"
  21. SIZE=2><P>
  22. Type <B>build -cz</B>. A successful build produces the video display driver Perm2dll.dll.<P>
  23. <H3>CODE TOUR</H3>
  24. <H4>File Manifest</H4>
  25. </FONT><U><PRE>File</U>&#9;&#9;<U>Description
  26. </U>
  27. Bitblt.c GDI: High-level DrvBitBlt and DrvCopyBits functions
  28. Brush.c GDI: Handles all brush/pattern initialization and realization
  29. Brush.h GDI: Brush-related definitions
  30. Clip.c GDI: Clipping code
  31. Clip.h GDI: External interface for Clip.c
  32. D3d.c D3D: Main D3D driver file (context, texture, caps mgmt)
  33. D3dcntxt.h D3D: Direct3D context management definitions and macros
  34. D3ddelta.h D3D: 3DLabs Delta unit defines.
  35. D3ddx6.c D3D: DrawPrimitive2 callbacks
  36. D3dhw.c D3D: Hardware dependent texture setup for Direct3D
  37. D3dhw.h D3D: Direct3D Global definitions and macros
  38. D3dline.c D3D: Hardware line primitive rendering
  39. D3dpoint.c D3D: Hardware point primitive rendering
  40. D3dsoft.h D3D: Direct3D hardware register value tracking mechanism
  41. D3dstate.c D3D: Render state management
  42. D3dtext.h D3D: Direct3D Texture management related definitions and macros
  43. D3dtri.c D3D: Hw triangle primitive rendering
  44. D3dtxman.c D3D: Texture management
  45. D3dtxman.h D3D: Texture management declarations and structures
  46. Dd.c DD: Direct Draw functions
  47. Dd.h DD: Definitions and macros for DirectDraw
  48. Ddblt.c DD: DirectDraw Blt callbacks
  49. Ddcpyblt.c DD: Copy and clear blits for Permedia 2
  50. Dddebug.c DD: DirectDraw and Direct3D debug output functions
  51. Ddenable.c DD: DrvEnableDirectDraw/DrvDisableDirectDraw callbacks
  52. Ddldblt.c DD: DirectDraw System to video memory download routines
  53. Ddstrblt.c DD: Stretching and format conversion blts
  54. Ddsurf.c DD: DirectDraw surface creation and destruction
  55. Debug.c Debugging functions and utilities
  56. Debug.h Debugging symbols and inline functions
  57. Directx.h DD: Useful constants and definitions for DirectDraw and Direct3D
  58. Download.c GDI: Contains the upload and download routines.
  59. Draw.c GDI: DrvFillPath routine
  60. Driver.h Prototypes for the display driver
  61. Enable.c GDI: All functions that enable and disable the driver, the pdev
  62. Escape.c GDI: Escape functions
  63. Fastfill.c GDI: Draws fast solid-colored, unclipped, non-complex rectangles
  64. Fillpath.c GDI: The DrvFillPath routine
  65. Gdi.h GDI: GDI-related defines, macros, and structures
  66. Heap.c Video memory management
  67. Heap.h GDI: Definitions for heap-related information
  68. Hw.h HW 2D register addresses and macros
  69. Hwinit.c Contains the functions that enable and disable the hardware
  70. Hwmisc.c Hardware-specific support routines and structures
  71. Lines.c GDI: Required GDI line support routines
  72. Lines.h GDI: Line drawing constants and structures
  73. Lineto.c GDI: DrvLineTo callback
  74. Log.c GDI: Logging facility
  75. Log.h GDI: Logging facility defines and macros
  76. Makefile Drivers makefile
  77. Math64.h Additional support for 64-bit math
  78. Mini.c Miniport low-level communication helper functions
  79. Mini.h Structures and constants for communication with minidriver
  80. P2ctxt.c Hardware context switching to create and swap contexts in and out
  81. P2ctxt.h Defines and macros for hardware context switching
  82. P2def.h Permedia harware-related defines
  83. P2rd.h Constants for the P2 internal Ramdac
  84. P2regs.h Permedia 2 hardware register defines
  85. Palette.c GDI: Color palette support routines
  86. Patnfill.c GDI: Pattern fill routines
  87. Permedia.c Basic access (DMA/FIFO) to the Permedia chip
  88. Permedia.h Definitions for the Permedia DMA and FIFO interface
  89. Pmdef.h Bitfield definitions for Permedia2 registers
  90. Pointer.c GDI: Hardware/software pointer routines
  91. Pointer.h GDI: Definitions for pointer-related information
  92. Precomp.h Common headers
  93. Registry.c Routines to initialize the registry and look up string values
  94. Registry.h Utility declarations to help with accessing the registry
  95. Res.rc Resource file for the display driver
  96. Rops.c GDI: Utility routines to manilpulate rop codes
  97. Rops.h GDI: Utility defines and routines for manipulation of rop codes
  98. Solidfil.c GDI: Solid fill routines
  99. Sources The generic file for building the code sample
  100. Stretch.c GDI: Contains all the stretch blt functions.
  101. Strips.c GDI: Low-level line drawing routines called by DrvStrokePat
  102. Stroke.c GDI: DrvStroke Path routine
  103. Sync.c GDI: Surface synchronization support
  104. Text.c GDI: Non-cached glyph rendering functions
  105. Text.h GDI: Text rendering support declarations
  106. Textout.c GDI: Text rendering module
  107. Thunks.c GDI: NT4.0 compatibility thunks
  108. Tvp4020.h Constants for the TVP4020 Ramdac
  109. </p></FONT><P ALIGN="CENTER"><A HREF="#top"><FONT FACE="Verdana" SIZE=2>Top of page</FONT></A><FONT FACE="Verdana" SIZE=2> </P></FONT>
  110. <TABLE CELLSPACING=0 BORDER=0 WIDTH=624>
  111. <TR><TD VALIGN="MIDDLE" BGCOLOR="#00ffff" HEIGHT=2>
  112. <P></TD>
  113. </TR>
  114. </TABLE>
  115. <FONT FACE="MS Sans Serif" SIZE=1><P>&copy; 1999 Microsoft Corporation</FONT><FONT FACE="Verdana" SIZE=2> </P></FONT></BODY>
  116. </HTML>