191 lines
		
	
	
		
			8.4 KiB
		
	
	
	
		
			HTML
		
	
	
	
	
	
			
		
		
	
	
			191 lines
		
	
	
		
			8.4 KiB
		
	
	
	
		
			HTML
		
	
	
	
	
	
<HTML>
 | 
						|
<HEAD>
 | 
						|
<META HTTP-EQUIV="Content-Type" CONTENT="text/html; charset=windows-
 | 
						|
1252">
 | 
						|
<META NAME="Generator" CONTENT="Microsoft Word 97">
 | 
						|
<TITLE>3Dlabs Permedia3 Display Driver</TITLE>
 | 
						|
</HEAD>
 | 
						|
<BODY LINK="#0000ff">
 | 
						|
 | 
						|
<FONT FACE="Verdana" SIZE=5><H2>3Dlabs Permedia3 Display Driver</H2>
 | 
						|
</FONT><FONT FACE="Verdana" SIZE=2>
 | 
						|
 | 
						|
 | 
						|
<H3>SUMMARY</H3></FONT><FONT FACE="Verdana" SIZE=2><P>
 | 
						|
This is a display driver for graphics adapters based
 | 
						|
on the 3Dlabs Permedia-3 chipset. 
 | 
						|
It supports GDI acceleration, Microsoft DirectDraw® acceleration, Microsoft Direct3D® acceleration,
 | 
						|
and multiple monitor support.
 | 
						|
 | 
						|
This display driver forms a matched pair with the 3Dlabs Permedia3 video miniport driver. 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>
 | 
						|
 | 
						|
This sample driver runs on Windows® 2000 on the x86 platform. It also builds and runs on Windows 98 and Windows ME.<P>
 | 
						|
 | 
						|
The driver is compiled as a DX8 driver and currently supports pointsprites, multisampling, volume textures and DX8 multistreaming (with a single stream). 
 | 
						|
 | 
						|
<H3>RELEASE NOTES</H3></FONT><FONT FACE="Verdana" SIZE=2><P>
 | 
						|
 | 
						|
All applicable samples and DCT tests have been run successfully with this driver.
 | 
						|
 | 
						|
<H3>HARDWARE LIMITATIONS</H3></FONT><FONT FACE="Verdana" SIZE=2><P>
 | 
						|
 | 
						|
This hardware doesn't support the following features:
 | 
						|
 | 
						|
<UL>
 | 
						|
<LI>Vertex shader processing
 | 
						|
<LI>Pixel shader processing
 | 
						|
<LI>Multistreaming (limited to just one stream)
 | 
						|
<LI>Hardware Transform and Lighting</LI>
 | 
						|
<LI>Anisotropic and gaussian cubic texture filtering</LI>
 | 
						|
<LI>Limited to two texture stages</LI>
 | 
						|
</UL>
 | 
						|
 | 
						|
<H3>BUILDING THE SAMPLE</H3></FONT><FONT FACE="Verdana" 
 | 
						|
SIZE=2><P>
 | 
						|
Type <B>build -cz</B> from the ..\disp directory.  A successful build produces the video display driver perm3dd.dll.<P>
 | 
						|
 | 
						|
 | 
						|
 | 
						|
<H3>CODE TOUR</H3>
 | 
						|
<H4>File Manifest</H4>
 | 
						|
</FONT><U><PRE>File</U>			<U>Description
 | 
						|
</U>
 | 
						|
dirs              Directories that make up the driver (currently dx and gdi)
 | 
						|
 | 
						|
dx\chroma.h       Chromakeying definitions and inline functions
 | 
						|
dx\d3d.c          Main D3D capabilites and callback tables
 | 
						|
dx\d3dbuff.c      Main context callbacks for D3D videomemory buffers
 | 
						|
dx\d3dcntxt.c     Main context callbacks for D3D
 | 
						|
dx\d3ddp2op.c     D3D DrawPrimitives2 command buffer operations support
 | 
						|
dx\d3ddp2p3.c     D3D DrawPrimitives2 callback support
 | 
						|
dx\d3dprim.c      D3D primitives rendering
 | 
						|
dx\d3dsset.c      D3D stateblock support
 | 
						|
dx\d3dsset.h      D3D stateblock support macros and definitions
 | 
						|
dx\d3dstate.c     Translate D3D renderstates and texture stage states into hw specific settings.
 | 
						|
dx\d3dstrct.c     Internal D3D structure management.
 | 
						|
dx\d3dstrct.h     Internal D3D structure management headers and macros
 | 
						|
dx\d3dsurf.c      Surface management callbacks for D3D
 | 
						|
dx\d3dsurf.h      Surface management macros and structures
 | 
						|
dx\d3dtxt.c       D3D hardware specific texture setup
 | 
						|
dx\dcontext.h     D3D context definition and other useful macros
 | 
						|
dx\dd.c           Main DirectDraw callbacks
 | 
						|
dx\ddblt.c        DirectDraw Blt callback implementation for vidmem-vidmem blts and clears
 | 
						|
dx\ddbltfx.c      DirectDraw Blt implementation for stretching blts
 | 
						|
dx\dddownld.c     DirectDraw Blt implementation for sysmem-vidmem blts and clears
 | 
						|
dx\ddenable.c     Windows 2000 only DirectDraw/D3D enabling functions
 | 
						|
dx\ddover.c       DirectDraw Overlays implementation
 | 
						|
dx\ddover.h       DirectDraw Overlays implementation macros and definitions
 | 
						|
dx\ddsurf.c       DirectDraw surfaces creation/destructions callbacks
 | 
						|
dx\ddvideo.c      DirectDraw Videoports implementation
 | 
						|
dx\debug.c        Debugging aids
 | 
						|
dx\direct3d.h     Global direct3d function declarations
 | 
						|
dx\directx.h      DirectX macros and definitions
 | 
						|
dx\dltamacr.h     Hardware specific D3D macros and definitions
 | 
						|
dx\dma.h          DMA transport definitons and macros
 | 
						|
dx\glint.h        Macros and definitions needed to Access Glint based chips
 | 
						|
dx\linalloc.c     Videomemory linear allocator
 | 
						|
dx\makefile       Drivers makefile  
 | 
						|
dx\sources        The generic file for building the dx code sample library
 | 
						|
dx\stateset.c     Hardware context swapping
 | 
						|
 | 
						|
inc\bitmac2.h     Bit manipulation macros for hardware registers
 | 
						|
inc\debug.h       Debugging aids macros and definitions
 | 
						|
inc\driver.h
 | 
						|
inc\ereg.h        Permedia 3 register structures
 | 
						|
inc\gigiregl.h    Permedia 3 register structures
 | 
						|
inc\glddtk.h
 | 
						|
inc\glglobal.h
 | 
						|
inc\glintdef.h
 | 
						|
inc\glintfx.h
 | 
						|
inc\glintreg.h    Permedia 3 register structures
 | 
						|
inc\gtag.h        Permedia 3 register tag definitions
 | 
						|
inc\linalloc.h    Videomemory linear allocator macros and definitions
 | 
						|
inc\p2rd.h        Definitions for the P2RD internal RAMDAC.
 | 
						|
inc\p3rd.h        Definitions for the P2ST internal RAMDAC.
 | 
						|
inc\p3rxdef.h
 | 
						|
inc\pmdef.h
 | 
						|
inc\ramdac.h
 | 
						|
inc\reg.h         Permedia 3 register structures
 | 
						|
inc\rgb525.h      This module contains the definitions for the IBM RGB525 RAMDAC.
 | 
						|
inc\rgb526.h      This module contains the definitions for the IBM RGB526 RAMDAC.
 | 
						|
inc\rgb528.h      This module contains the definitions for the IBM RGB528 RAMDAC.
 | 
						|
inc\rgb640.h      This module contains the definitions for the IBM RGB640 RAMDAC.
 | 
						|
inc\softcopy.h
 | 
						|
inc\surf_fmt.h
 | 
						|
inc\tag.h         Permedia 3 register tag definitions
 | 
						|
inc\tvp3026.h
 | 
						|
inc\tvp4020.h
 | 
						|
 | 
						|
 | 
						|
gdi\bitblt.c      Contains the high-level DrvBitBlt and DrvCopyBits functions
 | 
						|
gdi\brush.c       Handles all brush/pattern initialization and realization.
 | 
						|
gdi\color.c       Color dithering
 | 
						|
gdi\dbgtags.c     Debugging aid: convert tags numbers to string names
 | 
						|
gdi\ddraw.c       Provides interfaces back from the DDRAW .lib file into the main NT driver
 | 
						|
gdi\debug.c       Debug helper routines.
 | 
						|
gdi\dma.c         Handling of DMA buffers.
 | 
						|
gdi\enable.c      Functions that enable and disable the driver, the pdev, and the surface.
 | 
						|
gdi\fillpath.c    DrvFillPath
 | 
						|
gdi\glint.h       Permedia 3 hardware related defines
 | 
						|
gdi\glntctxt.c    Context switching for Permedia 3
 | 
						|
gdi\glntctxt.h    Permedia 3 context switching macros and definitions
 | 
						|
gdi\glntinit.c    Initialisation for the Permedia3 chip.
 | 
						|
gdi\heap.c        Routines for a 2-d heap.
 | 
						|
gdi\lines.c       Code for drawing short fractional endpoint lines and longer lines with strips.
 | 
						|
gdi\lines.h       Line drawing constants and structures        
 | 
						|
gdi\lineto.c      The code in this file handles the DrvLineTo() API call.
 | 
						|
gdi\makefile      Drivers makefile  
 | 
						|
gdi\p3rd.h        Definitions for the P2ST internal RAMDAC.
 | 
						|
gdi\paint.c       DrvPaint support
 | 
						|
gdi\palette.c     Palette support.
 | 
						|
gdi\pointer.c     Hardware pointer support for the display driver.
 | 
						|
gdi\precomp.h     Common headers
 | 
						|
gdi\pxrx.c        Hardware support for fills and copys
 | 
						|
gdi\pxrx.h        Macros and defines for hardware fills and copys
 | 
						|
gdi\pxrxpoly.c    Draws PXRX polygons.
 | 
						|
gdi\pxrxxfer.c    Hardware support for blts
 | 
						|
gdi\pxrxstrp.c    Hardware line drawing support routines
 | 
						|
gdi\registry.c    Routines to initialize the registry and lookup string values.
 | 
						|
gdi\res.rc        Resource file for the display driver
 | 
						|
gdi\sources       The generic file for building the code sample   
 | 
						|
gdi\stroke.c      DrvStrokePath for Permedia3 driver
 | 
						|
gdi\sync.c        DrvSynchronize code.
 | 
						|
gdi\textout.c     Text rendering module
 | 
						|
gdi\thunk.c       Testing and instrument all the driver's Drv calls.
 | 
						|
 | 
						|
</pre> </p>
 | 
						|
 | 
						|
</FONT><FONT FACE="Verdana" SIZE=2>
 | 
						|
 | 
						|
 | 
						|
<H3>CHANGES SINCE THE DX8.0 DDK RELEASE</H3></FONT><FONT FACE="Verdana" SIZE=2><P>
 | 
						|
 | 
						|
The most important changes to this sample driver since the DX8.0 DDK release have been:
 | 
						|
 | 
						|
<UL>
 | 
						|
<LI>Added paletted textures support for DX8 interfaces
 | 
						|
<LI>Added DX7 texture management and DX8.1 resource management
 | 
						|
<LI>Added DX7 stereo support
 | 
						|
<LI>Added line patterning support
 | 
						|
<LI>Added subvolume lock support (for 3D textures)
 | 
						|
<LI>Added DdFreeDriverMemory support
 | 
						|
<LI>Added DdSetExclusiveMode support
 | 
						|
<LI>Added DdFlipToGDISurface support
 | 
						|
<LI>Added DrvDeriveSurface support (stub code)
 | 
						|
<LI>Fixed various IA64 issues
 | 
						|
<LI>Made video memory management more simple and robust
 | 
						|
<LI>Various cleanup and small fixes
 | 
						|
</UL>
 | 
						|
 | 
						|
 | 
						|
</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>
 | 
						|
 | 
						|
<TABLE CELLSPACING=0 BORDER=0 WIDTH=624>
 | 
						|
<TR><TD VALIGN="MIDDLE" BGCOLOR="#00ffff" HEIGHT=2>
 | 
						|
<P></TD>
 | 
						|
</TR>
 | 
						|
</TABLE>
 | 
						|
 | 
						|
<FONT FACE="MS Sans Serif" SIZE=1><P>© 2000 Microsoft Corporation</FONT><FONT FACE="Verdana" SIZE=2> </P></FONT></BODY>
 | 
						|
</HTML>
 |