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.
 
 
 
 
 
 

829 lines
20 KiB

/**************************************************************************
***************************************************************************
*
* Copyright (c) 1996, Cirrus Logic, Inc.
* All Rights Reserved
*
* FILE: bltP.h
*
* DESCRIPTION: Private declarations for DDraw blt code
*
* REVISION HISTORY:
*
* $Log: X:\log\laguna\ddraw\inc\bltp.h $
*
* Rev 1.11 06 Jan 1998 14:19:44 xcong
* Access pDriverData locally for multi-monitor support.
*
* Rev 1.10 03 Oct 1997 14:25:34 RUSSL
* Removed some defines
*
* Rev 1.9 03 Oct 1997 14:15:58 RUSSL
* Initial changes for use of hw clipped blts
* All changes wrapped in #if ENABLE_CLIPPEDBLTS/#endif blocks and
* ENABLE_CLIPPEDBLTS defaults to 0 (so the code is disabled)
*
* Rev 1.8 24 Jul 1997 10:02:00 RUSSL
* Added some defines
*
* Rev 1.7 14 Jul 1997 14:47:28 RUSSL
* Added function prototypes for DIR_DrvStrBlt65 and DL_DrvStrBlt65
*
* Rev 1.6 03 Apr 1997 15:03:08 RUSSL
* Added PFN_DRVDSTMBLT typedef, global var decl, DIR_DrvDstMBlt and
* DL_DrvDstMBlt function prototypes
*
* Rev 1.5 26 Mar 1997 13:52:06 RUSSL
* Added PFN_DRVSRCMBLT typedef, global var decl, DIR_DrvSrcMBlt and
* DL_DrvSrcMBlt function prototypes
*
* Rev 1.4 20 Jan 1997 14:46:40 bennyn
* Moved inline code to ddinline.h
*
* Rev 1.3 15 Jan 1997 11:06:54 RUSSL
* Added global function ptr vars for Win95
* Moved inline functions from ddblt.c: DupColor, EnoughFifoForBlt & DupZFill
* Added function prototypes for TransparentStretch & StretchColor
*
* Rev 1.2 05 Dec 1996 08:48:24 SueS
* Added real DD_LOG define for NT.
*
* Rev 1.1 25 Nov 1996 16:12:42 bennyn
* Added #define DD_LOG for NT
*
* Rev 1.0 25 Nov 1996 15:04:34 RUSSL
* Initial revision.
*
* Rev 1.1 01 Nov 1996 13:01:42 RUSSL
* Merge WIN95 & WINNT code for Blt32
*
* Rev 1.0 01 Nov 1996 09:28:16 BENNYN
* Initial revision.
*
* Rev 1.0 25 Oct 1996 10:47:50 RUSSL
* Initial revision.
*
***************************************************************************
***************************************************************************/
// If WinNT 3.5 skip all the source code
#if defined WINNT_VER35 // WINNT_VER35
#else
#ifndef _BLTP_H_
#define _BLTP_H_
/***************************************************************************
* D E F I N E S
****************************************************************************/
#ifndef ENABLE_CLIPPEDBLTS
#ifdef WINNT_VER40
#define ENABLE_CLIPPEDBLTS 0
#else // Win95
#define ENABLE_CLIPPEDBLTS 0
#endif
#endif
#define ROP_OP0_copy 0xAA
#define ROP_OP1_copy 0xCC
#define ROP_OP2_copy 0xF0
#ifdef DEBUG
#define INLINE
#else
#define INLINE __inline
#endif
/***************************************************************************
* T Y P E D E F S
****************************************************************************/
#ifdef WINNT_VER40
// Note: there's no if LOG_CALLS here because it's not defined yet
#define DD_LOG(x) \
{ \
DDFormatLogFile x ; \
WriteLogFile(ppdev->pmfile, lg_buf, lg_i, ppdev->TxtBuff, &ppdev->TxtBuffIndex); \
}
typedef void (*PFN_DELAY9BLT)(struct _PDEV*,struct _DRIVERDATA*,BOOL);
typedef void (*PFN_EDGEFILLBLT)(struct _PDEV*,struct _DRIVERDATA*,int,int,int,int,DWORD,BOOL);
typedef void (*PFN_MEDGEFILLBLT)(struct _PDEV*,struct _DRIVERDATA*,int,int,int,int,DWORD,BOOL);
typedef void (*PFN_DRVDSTBLT)(struct _PDEV*,struct _DRIVERDATA*,DWORD,DWORD,DWORD,DWORD);
typedef void (*PFN_DRVDSTMBLT)(struct _PDEV*,struct _DRIVERDATA*,DWORD,DWORD,DWORD,DWORD);
typedef void (*PFN_DRVSRCBLT)(struct _PDEV*,struct _DRIVERDATA*,DWORD,DWORD,DWORD,DWORD,DWORD,DWORD);
typedef void (*PFN_DRVSRCMBLT)(struct _PDEV*,struct _DRIVERDATA*,DWORD,DWORD,DWORD,DWORD,DWORD,DWORD);
typedef void (*PFN_DRVSTRBLT)(struct _PDEV*,struct _DRIVERDATA*,struct _autoblt_regs*);
typedef void (*PFN_DRVSTRMBLT)(struct _PDEV*,struct _DRIVERDATA*,struct _autoblt_regs*);
typedef void (*PFN_DRVSTRMBLTY)(struct _PDEV*,struct _DRIVERDATA*,struct _autoblt_regs*);
typedef void (*PFN_DRVSTRMBLTX)(struct _PDEV*,struct _DRIVERDATA*,struct _autoblt_regs*);
typedef void (*PFN_DRVSTRBLTY)(struct _PDEV*,struct _DRIVERDATA*,struct _autoblt_regs*);
typedef void (*PFN_DRVSTRBLTX)(struct _PDEV*,struct _DRIVERDATA*,struct _autoblt_regs*);
#if ENABLE_CLIPPEDBLTS
typedef void (*PFN_CLIPPEDDRVDSTBLT)(struct _PDEV*,struct _DRIVERDATA*,DWORD,DWORD,DWORD,DWORD,DWORD,DWORD,LPRECT);
typedef void (*PFN_CLIPPEDDRVDSTMBLT)(struct _PDEV*,struct _DRIVERDATA*,DWORD,DWORD,DWORD,DWORD,DWORD,DWORD,LPRECT);
typedef void (*PFN_CLIPPEDDRVSRCBLT)(struct _PDEV*,struct _DRIVERDATA*,DWORD,DWORD,DWORD,DWORD,DWORD,DWORD,DWORD,DWORD,DWORD,LPRECT);
#endif
#else
typedef void (*PFN_DELAY9BLT)(LPGLOBALDATA,BOOL);
typedef void (*PFN_EDGEFILLBLT)(LPGLOBALDATA,ULONG,ULONG,ULONG,ULONG,DWORD,BOOL);
typedef void (*PFN_MEDGEFILLBLT)(LPGLOBALDATA,ULONG,ULONG,ULONG,ULONG,DWORD,BOOL);
typedef void (*PFN_DRVDSTBLT)(LPGLOBALDATA,DWORD,DWORD,DWORD,DWORD);
typedef void (*PFN_DRVDSTMBLT)(LPGLOBALDATA,DWORD,DWORD,DWORD,DWORD);
typedef void (*PFN_DRVSRCBLT)(LPGLOBALDATA,DWORD,DWORD,DWORD,DWORD,DWORD,DWORD);
typedef void (*PFN_DRVSRCMBLT)(LPGLOBALDATA,DWORD,DWORD,DWORD,DWORD,DWORD,DWORD);
typedef void (*PFN_DRVSTRBLT)(LPGLOBALDATA,autoblt_ptr);
typedef void (*PFN_DRVSTRMBLT)(LPGLOBALDATA,autoblt_ptr);
typedef void (*PFN_DRVSTRMBLTY)(LPGLOBALDATA,autoblt_ptr);
typedef void (*PFN_DRVSTRMBLTX)(LPGLOBALDATA,autoblt_ptr);
typedef void (*PFN_DRVSTRBLTY)(LPGLOBALDATA,autoblt_ptr);
typedef void (*PFN_DRVSTRBLTX)(LPGLOBALDATA,autoblt_ptr);
#if ENABLE_CLIPPEDBLTS
typedef void (*PFN_CLIPPEDDRVDSTBLT)(LPGLOBALDATA,DWORD,DWORD,DWORD,DWORD,DWORD,DWORD,LPRECT);
typedef void (*PFN_CLIPPEDDRVDSTMBLT)(LPGLOBALDATA,DWORD,DWORD,DWORD,DWORD,DWORD,DWORD,LPRECT);
typedef void (*PFN_CLIPPEDDRVSRCBLT)(LPGLOBALDATA,DWORD,DWORD,DWORD,DWORD,DWORD,DWORD,DWORD,DWORD,DWORD,LPRECT);
#endif
#endif // !WINNT_VER40
#if ENABLE_CLIPPEDBLTS
typedef struct _DDRECTL
{
REG32 loc;
REG32 ext;
} DDRECTL;
#endif
/***************************************************************************
* G L O B A L V A R I A B L E S
****************************************************************************/
#ifndef WINNT_VER40
extern PFN_DELAY9BLT pfnDelay9BitBlt;
extern PFN_EDGEFILLBLT pfnEdgeFillBlt;
extern PFN_MEDGEFILLBLT pfnMEdgeFillBlt;
extern PFN_DRVDSTBLT pfnDrvDstBlt;
extern PFN_DRVDSTMBLT pfnDrvDstMBlt;
extern PFN_DRVSRCBLT pfnDrvSrcBlt;
extern PFN_DRVSRCMBLT pfnDrvSrcMBlt;
extern PFN_DRVSTRBLT pfnDrvStrBlt;
extern PFN_DRVSTRMBLT pfnDrvStrMBlt;
extern PFN_DRVSTRMBLTY pfnDrvStrMBltY;
extern PFN_DRVSTRMBLTX pfnDrvStrMBltX;
extern PFN_DRVSTRBLTY pfnDrvStrBltY;
extern PFN_DRVSTRBLTX pfnDrvStrBltX;
#if ENABLE_CLIPPEDBLTS
extern PFN_CLIPPEDDRVDSTBLT pfnClippedDrvDstBlt;
extern PFN_CLIPPEDDRVDSTMBLT pfnClippedDrvDstMBlt;
extern PFN_CLIPPEDDRVSRCBLT pfnClippedDrvSrcBlt;
#endif
#endif
/***************************************************************************
* F U N C T I O N P R O T O T Y P E S
****************************************************************************/
// functions in ddblt.c
extern void TransparentStretch
(
#ifdef WINNT_VER40
struct _PDEV *ppdev,
struct _DRIVERDATA *lpDDHALData,
#else
LPGLOBALDATA lpDDHALData,
#endif
int xDst,
int yDst,
int cxDst,
int cyDst,
int xSrc,
int ySrc,
int cxSrc,
int cySrc,
DWORD ColorKey
);
extern void StretchColor
(
#ifdef WINNT_VER40
struct _PDEV *ppdev,
struct _DRIVERDATA *lpDDHALData,
#else
LPGLOBALDATA lpDDHALData,
#endif
int xDst,
int yDst,
int cxDst,
int cyDst,
int xSrc,
int ySrc,
int cxSrc,
int cySrc,
DWORD ColorKey
);
// Direct Programming blts in blt_dir.c
extern void DIR_Delay9BitBlt
(
#ifdef WINNT_VER40
struct _PDEV *ppdev,
struct _DRIVERDATA *lpDDHALData,
#else
LPGLOBALDATA lpDDHALData,
#endif
BOOL ninebit_on
);
extern void DIR_EdgeFillBlt
(
#ifdef WINNT_VER40
struct _PDEV *ppdev,
struct _DRIVERDATA *lpDDHALData,
#else
LPGLOBALDATA lpDDHALData,
#endif
int xFill,
int yFill,
int cxFill,
int cyFill,
DWORD FillValue,
BOOL ninebit_on
);
extern void DIR_MEdgeFillBlt
(
#ifdef WINNT_VER40
struct _PDEV *ppdev,
struct _DRIVERDATA *lpDDHALData,
#else
LPGLOBALDATA lpDDHALData,
#endif
int xFill,
int yFill,
int cxFill,
int cyFill,
DWORD FillValue,
BOOL ninebit_on
);
extern void DIR_DrvDstBlt
(
#ifdef WINNT_VER40
struct _PDEV *ppdev,
struct _DRIVERDATA *lpDDHALData,
#else
LPGLOBALDATA lpDDHALData,
#endif
DWORD dwDrawBlt,
DWORD dwDstCoord,
DWORD dwBgColor,
DWORD dwExtents
);
extern void DIR_DrvDstMBlt
(
#ifdef WINNT_VER40
struct _PDEV *ppdev,
struct _DRIVERDATA *lpDDHALData,
#else
LPGLOBALDATA lpDDHALData,
#endif
DWORD dwDrawBlt,
DWORD dwDstCoord,
DWORD dwBgColor,
DWORD dwExtents
);
extern void DIR_DrvSrcBlt
(
#ifdef WINNT_VER40
struct _PDEV *ppdev,
struct _DRIVERDATA *lpDDHALData,
#else
LPGLOBALDATA lpDDHALData,
#endif
DWORD dwDrawBlt,
DWORD dwDstCoord,
DWORD dwSrcCoord,
DWORD dwKeyCoord,
DWORD dwKeyColor,
DWORD dwExtents
);
extern void DIR_DrvSrcMBlt
(
#ifdef WINNT_VER40
struct _PDEV *ppdev,
struct _DRIVERDATA *lpDDHALData,
#else
LPGLOBALDATA lpDDHALData,
#endif
DWORD dwDrawBlt,
DWORD dwDstCoord,
DWORD dwSrcCoord,
DWORD dwKeyCoord,
DWORD dwKeyColor,
DWORD dwExtents
);
extern void DIR_DrvStrBlt
(
#ifdef WINNT_VER40
struct _PDEV *ppdev,
struct _DRIVERDATA *lpDDHALData,
struct _autoblt_regs *pblt
#else
LPGLOBALDATA lpDDHALData,
autoblt_ptr pblt
#endif
);
extern void DIR_DrvStrBlt65
(
#ifdef WINNT_VER40
struct _PDEV *ppdev,
struct _DRIVERDATA *lpDDHALData,
struct _autoblt_regs *pblt
#else
LPGLOBALDATA lpDDHALData,
autoblt_ptr pblt
#endif
);
extern void DIR_DrvStrMBlt
(
#ifdef WINNT_VER40
struct _PDEV *ppdev,
struct _DRIVERDATA *lpDDHALData,
struct _autoblt_regs *pblt
#else
LPGLOBALDATA lpDDHALData,
autoblt_ptr pblt
#endif
);
extern void DIR_DrvStrMBltY
(
#ifdef WINNT_VER40
struct _PDEV *ppdev,
struct _DRIVERDATA *lpDDHALData,
struct _autoblt_regs *pblt
#else
LPGLOBALDATA lpDDHALData,
autoblt_ptr pblt
#endif
);
extern void DIR_DrvStrMBltX
(
#ifdef WINNT_VER40
struct _PDEV *ppdev,
struct _DRIVERDATA *lpDDHALData,
struct _autoblt_regs *pblt
#else
LPGLOBALDATA lpDDHALData,
autoblt_ptr pblt
#endif
);
extern void DIR_DrvStrBltY
(
#ifdef WINNT_VER40
struct _PDEV *ppdev,
struct _DRIVERDATA *lpDDHALData,
struct _autoblt_regs *pblt
#else
LPGLOBALDATA lpDDHALData,
autoblt_ptr pblt
#endif
);
extern void DIR_DrvStrBltX
(
#ifdef WINNT_VER40
struct _PDEV *ppdev,
struct _DRIVERDATA *lpDDHALData,
struct _autoblt_regs *pblt
#else
LPGLOBALDATA lpDDHALData,
autoblt_ptr pblt
#endif
);
#if ENABLE_CLIPPEDBLTS
extern void DIR_HWClippedDrvDstBlt
(
#ifdef WINNT_VER40
struct _PDEV *ppdev,
struct _DRIVERDATA *lpDDHALData,
#else
LPGLOBALDATA lpDDHALData,
#endif
DWORD dwDrawBlt,
DWORD dwDstCoord,
DWORD dwBgColor,
DWORD dwExtents,
DWORD dwDstBaseXY,
DWORD dwRectCnt,
LPRECT pDestRects
);
extern void DIR_HWClippedDrvDstMBlt
(
#ifdef WINNT_VER40
struct _PDEV *ppdev,
struct _DRIVERDATA *lpDDHALData,
#else
LPGLOBALDATA lpDDHALData,
#endif
DWORD dwDrawBlt,
DWORD dwDstCoord,
DWORD dwBgColor,
DWORD dwExtents,
DWORD dwDstBaseXY,
DWORD dwRectCnt,
LPRECT pDestRects
);
extern void DIR_HWClippedDrvSrcBlt
(
#ifdef WINNT_VER40
struct _PDEV *ppdev,
struct _DRIVERDATA *lpDDHALData,
#else
LPGLOBALDATA lpDDHALData,
#endif
DWORD dwDrawBlt,
DWORD dwDstCoord,
DWORD dwSrcCoord,
DWORD dwKeyCoord,
DWORD dwKeyColor,
DWORD dwExtents,
DWORD dwDstBaseXY,
DWORD dwSrcBaseXY,
DWORD dwRectCnt,
LPRECT pDestRects
);
extern void DIR_SWClippedDrvDstBlt
(
#ifdef WINNT_VER40
struct _PDEV *ppdev,
struct _DRIVERDATA *lpDDHALData,
#else
LPGLOBALDATA lpDDHALData,
#endif
DWORD dwDrawBlt,
DWORD dwDstCoord,
DWORD dwBgColor,
DWORD dwExtents,
DWORD dwDstBaseXY,
DWORD dwRectCnt,
LPRECT pDestRects
);
extern void DIR_SWClippedDrvDstMBlt
(
#ifdef WINNT_VER40
struct _PDEV *ppdev,
struct _DRIVERDATA *lpDDHALData,
#else
LPGLOBALDATA lpDDHALData,
#endif
DWORD dwDrawBlt,
DWORD dwDstCoord,
DWORD dwBgColor,
DWORD dwExtents,
DWORD dwDstBaseXY,
DWORD dwRectCnt,
LPRECT pDestRects
);
extern void DIR_SWClippedDrvSrcBlt
(
#ifdef WINNT_VER40
struct _PDEV *ppdev,
struct _DRIVERDATA *lpDDHALData,
#else
LPGLOBALDATA lpDDHALData,
#endif
DWORD dwDrawBlt,
DWORD dwDstCoord,
DWORD dwSrcCoord,
DWORD dwKeyCoord,
DWORD dwKeyColor,
DWORD dwExtents,
DWORD dwDstBaseXY,
DWORD dwSrcBaseXY,
DWORD dwRectCnt,
LPRECT pDestRects
);
#endif
// Display List Programming blts in blt_dl.c
extern void DL_Delay9BitBlt
(
#ifdef WINNT_VER40
struct _PDEV *ppdev,
struct _DRIVERDATA *lpDDHALData,
#else
LPGLOBALDATA lpDDHALData,
#endif
BOOL ninebit_on
);
extern void DL_EdgeFillBlt
(
#ifdef WINNT_VER40
struct _PDEV *ppdev,
struct _DRIVERDATA *lpDDHALData,
#else
LPGLOBALDATA lpDDHALData,
#endif
int xFill,
int yFill,
int cxFill,
int cyFill,
DWORD FillValue,
BOOL ninebit_on
);
extern void DL_MEdgeFillBlt
(
#ifdef WINNT_VER40
struct _PDEV *ppdev,
struct _DRIVERDATA *lpDDHALData,
#else
LPGLOBALDATA lpDDHALData,
#endif
int xFill,
int yFill,
int cxFill,
int cyFill,
DWORD FillValue,
BOOL ninebit_on
);
extern void DL_DrvDstBlt
(
#ifdef WINNT_VER40
struct _PDEV *ppdev,
struct _DRIVERDATA *lpDDHALData,
#else
LPGLOBALDATA lpDDHALData,
#endif
DWORD dwDrawBlt,
DWORD dwDstCoord,
DWORD dwBgColor,
DWORD dwExtents
);
extern void DL_DrvDstMBlt
(
#ifdef WINNT_VER40
struct _PDEV *ppdev,
struct _DRIVERDATA *lpDDHALData,
#else
LPGLOBALDATA lpDDHALData,
#endif
DWORD dwDrawBlt,
DWORD dwDstCoord,
DWORD dwBgColor,
DWORD dwExtents
);
extern void DL_DrvSrcBlt
(
#ifdef WINNT_VER40
struct _PDEV *ppdev,
struct _DRIVERDATA *lpDDHALData,
#else
LPGLOBALDATA lpDDHALData,
#endif
DWORD dwDrawBlt,
DWORD dwDstCoord,
DWORD dwSrcCoord,
DWORD dwKeyCoord,
DWORD dwKeyColor,
DWORD dwExtents
);
extern void DL_DrvSrcMBlt
(
#ifdef WINNT_VER40
struct _PDEV *ppdev,
struct _DRIVERDATA *lpDDHALData,
#else
LPGLOBALDATA lpDDHALData,
#endif
DWORD dwDrawBlt,
DWORD dwDstCoord,
DWORD dwSrcCoord,
DWORD dwKeyCoord,
DWORD dwKeyColor,
DWORD dwExtents
);
extern void DL_DrvStrBlt
(
#ifdef WINNT_VER40
struct _PDEV *ppdev,
struct _DRIVERDATA *lpDDHALData,
struct _autoblt_regs *pblt
#else
LPGLOBALDATA lpDDHALData,
autoblt_ptr pblt
#endif
);
extern void DL_DrvStrBlt65
(
#ifdef WINNT_VER40
struct _PDEV *ppdev,
struct _DRIVERDATA *lpDDHALData,
struct _autoblt_regs *pblt
#else
LPGLOBALDATA lpDDHALData,
autoblt_ptr pblt
#endif
);
extern void DL_DrvStrMBlt
(
#ifdef WINNT_VER40
struct _PDEV *ppdev,
struct _DRIVERDATA *lpDDHALData,
struct _autoblt_regs *pblt
#else
LPGLOBALDATA lpDDHALData,
autoblt_ptr pblt
#endif
);
extern void DL_DrvStrMBltY
(
#ifdef WINNT_VER40
struct _PDEV *ppdev,
struct _DRIVERDATA *lpDDHALData,
struct _autoblt_regs *pblt
#else
LPGLOBALDATA lpDDHALData,
autoblt_ptr pblt
#endif
);
extern void DL_DrvStrMBltX
(
#ifdef WINNT_VER40
struct _PDEV *ppdev,
struct _DRIVERDATA *lpDDHALData,
struct _autoblt_regs *pblt
#else
LPGLOBALDATA lpDDHALData,
autoblt_ptr pblt
#endif
);
extern void DL_DrvStrBltY
(
#ifdef WINNT_VER40
struct _PDEV *ppdev,
struct _DRIVERDATA *lpDDHALData,
struct _autoblt_regs *pblt
#else
LPGLOBALDATA lpDDHALData,
autoblt_ptr pblt
#endif
);
extern void DL_DrvStrBltX
(
#ifdef WINNT_VER40
struct _PDEV *ppdev,
struct _DRIVERDATA *lpDDHALData,
struct _autoblt_regs *pblt
#else
LPGLOBALDATA lpDDHALData,
autoblt_ptr pblt
#endif
);
#if ENABLE_CLIPPEDBLTS
extern void DL_HWClippedDrvDstBlt
(
#ifdef WINNT_VER40
struct _PDEV *ppdev,
struct _DRIVERDATA *lpDDHALData,
#else
LPGLOBALDATA lpDDHALData,
#endif
DWORD dwDrawBlt,
DWORD dwDstCoord,
DWORD dwBgColor,
DWORD dwExtents,
DWORD dwDstBaseXY,
DWORD dwRectCnt,
LPRECT pDestRects
);
extern void DL_HWClippedDrvDstMBlt
(
#ifdef WINNT_VER40
struct _PDEV *ppdev,
struct _DRIVERDATA *lpDDHALData,
#else
LPGLOBALDATA lpDDHALData,
#endif
DWORD dwDrawBlt,
DWORD dwDstCoord,
DWORD dwBgColor,
DWORD dwExtents,
DWORD dwDstBaseXY,
DWORD dwRectCnt,
LPRECT pDestRects
);
extern void DL_HWClippedDrvSrcBlt
(
#ifdef WINNT_VER40
struct _PDEV *ppdev,
struct _DRIVERDATA *lpDDHALData,
#else
LPGLOBALDATA lpDDHALData,
#endif
DWORD dwDrawBlt,
DWORD dwDstCoord,
DWORD dwSrcCoord,
DWORD dwKeyCoord,
DWORD dwKeyColor,
DWORD dwExtents,
DWORD dwDstBaseXY,
DWORD dwSrcBaseXY,
DWORD dwRectCnt,
LPRECT pDestRects
);
extern void DL_SWClippedDrvDstBlt
(
#ifdef WINNT_VER40
struct _PDEV *ppdev,
struct _DRIVERDATA *lpDDHALData,
#else
LPGLOBALDATA lpDDHALData,
#endif
DWORD dwDrawBlt,
DWORD dwDstCoord,
DWORD dwBgColor,
DWORD dwExtents,
DWORD dwDstBaseXY,
DWORD dwRectCnt,
LPRECT pDestRects
);
extern void DL_SWClippedDrvDstMBlt
(
#ifdef WINNT_VER40
struct _PDEV *ppdev,
struct _DRIVERDATA *lpDDHALData,
#else
LPGLOBALDATA lpDDHALData,
#endif
DWORD dwDrawBlt,
DWORD dwDstCoord,
DWORD dwBgColor,
DWORD dwExtents,
DWORD dwDstBaseXY,
DWORD dwRectCnt,
LPRECT pDestRects
);
extern void DL_SWClippedDrvSrcBlt
(
#ifdef WINNT_VER40
struct _PDEV *ppdev,
struct _DRIVERDATA *lpDDHALData,
#else
LPGLOBALDATA lpDDHALData,
#endif
DWORD dwDrawBlt,
DWORD dwDstCoord,
DWORD dwSrcCoord,
DWORD dwKeyCoord,
DWORD dwKeyColor,
DWORD dwExtents,
DWORD dwDstBaseXY,
DWORD dwSrcBaseXY,
DWORD dwRectCnt,
LPRECT pDestRects
);
#endif
#endif /* _BLTP_H_ */
#endif // WINNT_VER35
/* Don't write below this endif */