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.
319 lines
6.6 KiB
319 lines
6.6 KiB
;===============================================================================
|
|
;
|
|
; $Workfile: WINNT.INC $
|
|
;
|
|
; Contents:
|
|
; This include file contains the standard Windows NT structures used by
|
|
; the display driver.
|
|
;
|
|
; Copyright (c) 1996, Cirrus Logic, Inc.
|
|
;
|
|
; $Log: X:/log/laguna/nt35/displays/cl546x/i386/WINNT.INC $
|
|
;
|
|
; Rev 1.6 20 Aug 1996 11:29:04 noelv
|
|
; Bugfix release from Frido 8-19-96
|
|
;
|
|
; Rev 1.0 14 Aug 1996 17:14:40 frido
|
|
; Initial revision.
|
|
;
|
|
; Rev 1.5 01 May 1996 11:07:06 bennyn
|
|
;
|
|
; Modified for NT 4.0
|
|
;
|
|
; Rev 1.4 04 Apr 1996 13:22:26 noelv
|
|
; Frido version 26
|
|
;
|
|
; Rev 1.4 10 Feb 1996 21:47:18 frido
|
|
; Added debugging routines.
|
|
;
|
|
; Rev 1.3 08 Feb 1996 00:10:52 frido
|
|
; Added more objects from WinDDI.h.
|
|
; Reordered objects.
|
|
;
|
|
; Rev 1.2 25 Jan 1996 22:03:46 frido
|
|
; Yes, added some more stuff.
|
|
;
|
|
; Rev 1.1 25 Jan 1996 12:45:04 frido
|
|
; Added some more functon prototypes.
|
|
;
|
|
; Rev 1.0 24 Jan 1996 23:13:44 frido
|
|
; Initial release.
|
|
;
|
|
;===============================================================================
|
|
|
|
UINT TYPEDEF DWORD
|
|
LONG TYPEDEF SDWORD
|
|
ULONG TYPEDEF DWORD
|
|
PBYTE TYPEDEF PTR BYTE
|
|
FLONG TYPEDEF LONG
|
|
BOOL TYPEDEF SDWORD
|
|
PVOID TYPEDEF PTR
|
|
HANDLE TYPEDEF PVOID
|
|
USHORT TYPEDEF WORD
|
|
LPCTSTR TYPEDEF PTR BYTE
|
|
|
|
RTL_CRITICAL_SECTION STRUCT
|
|
DebugInfo DWORD ?
|
|
LockCount LONG ?
|
|
RecursionCount LONG ?
|
|
OwningThread HANDLE ?
|
|
LockSemaphore HANDLE ?
|
|
Reserved DWORD ?
|
|
RTL_CRITICAL_SECTION ENDS
|
|
|
|
CRITICAL_SECTION TYPEDEF RTL_CRITICAL_SECTION
|
|
|
|
RECTL STRUCT
|
|
left LONG ?
|
|
top LONG ?
|
|
right LONG ?
|
|
bottom LONG ?
|
|
RECTL ENDS
|
|
|
|
POINTL STRUCT
|
|
x LONG ?
|
|
y LONG ?
|
|
POINTL ENDS
|
|
|
|
SIZEL STRUCT
|
|
_cx LONG ?
|
|
_cy LONG ?
|
|
SIZEL ENDS
|
|
|
|
FONTOBJ STRUCT
|
|
iUniq DWORD ?
|
|
iFace DWORD ?
|
|
cxMax DWORD ?
|
|
flFontType DWORD ?
|
|
iTTUniq DWORD ?
|
|
iFile DWORD ?
|
|
sizLogResPpi SIZEL {}
|
|
ulStyleSize DWORD ?
|
|
pvConsumer DWORD ?
|
|
pvProducer DWORD ?
|
|
FONTOBJ ENDS
|
|
|
|
GLYPHBITS STRUCT
|
|
ptlOrigin POINTL {}
|
|
sizlBitmap SIZEL {}
|
|
aj BYTE 0 DUP(?)
|
|
GLYPHBITS ENDS
|
|
|
|
GLYPHDEF STRUCT
|
|
pgb DWORD ?
|
|
ppo DWORD ?
|
|
GLYPHDEF ENDS
|
|
|
|
GLYPHPOS STRUCT
|
|
hg DWORD ?
|
|
pgdf DWORD ?
|
|
ptl POINTL {}
|
|
GLYPHPOS ENDS
|
|
|
|
OutputDebugStringA PROTO PROC,
|
|
lpOutputString :LPCTSTR
|
|
|
|
ifdef WINNT_VER40
|
|
EngAllocMem PROTO PROC,
|
|
uFlags :UINT,
|
|
uBytes :UINT,
|
|
uTag :UINT
|
|
|
|
FL_ZERO_MEMORY = 00000001h
|
|
|
|
else
|
|
LocalAlloc PROTO PROC,
|
|
uFlags :UINT,
|
|
uBytes :UINT
|
|
|
|
LocalFree PROTO PROC,
|
|
hMem :HANDLE
|
|
|
|
LMEM_FIXED = 00000000h
|
|
LMEM_MOVEABLE = 00000002h
|
|
LMEM_NOCOMPACT = 00000010h
|
|
LMEM_NODISCARD = 00000020h
|
|
LMEM_ZEROINIT = 00000040h
|
|
LMEM_MODIFY = 00000080h
|
|
LMEM_LOCKCOUNT = 000000FFh
|
|
LMEM_DISCARDABLE = 00000F00h
|
|
LMEM_VALID_FLAGS = 00000F72h
|
|
LMEM_DISCARDED = 00004000h
|
|
LMEM_INVALID_HANDLE = 00008000h
|
|
endif
|
|
|
|
HS_DDI_MAX = 6
|
|
|
|
;-------------------------------------------------------------------------------
|
|
; STROBJ
|
|
;-------------------------------------------------------------------------------
|
|
SO_FLAG_DEFAULT_PLACEMENT = 00000001h
|
|
SO_HORIZONTAL = 00000002h
|
|
SO_VERTICAL = 00000004h
|
|
SO_RESERVED = 00000008h
|
|
SO_ZERO_BEARINGS = 00000010h
|
|
SO_CHAR_INC_EQUAL_BM_BASE = 00000020h
|
|
SO_MAXEXT_EQUAL_BM_SIDE = 00000040h
|
|
|
|
STROBJ STRUCT
|
|
cGlyphs ULONG ?
|
|
flAccel FLONG ?
|
|
ulCharInc ULONG ?
|
|
rclBkGround RECTL {}
|
|
pgp DWORD ?
|
|
pwzsOrg DWORD ?
|
|
STROBJ ENDS
|
|
|
|
STROBJ_vEnumStart PROTO PROC,
|
|
pstro :PTR STROBJ
|
|
|
|
STROBJ_bEnum PROTO PROC,
|
|
pstro :PTR STROBJ,
|
|
pc :ULONG,
|
|
ppgpos :PTR GLYPHPOS
|
|
|
|
SGI_EXTRASPACE = 0
|
|
|
|
;-------------------------------------------------------------------------------
|
|
; SURFOBJ
|
|
;-------------------------------------------------------------------------------
|
|
SURFOBJ STRUCT
|
|
dhsurf DWORD ?
|
|
hsurf DWORD ?
|
|
dhpdev DWORD ?
|
|
hdev DWORD ?
|
|
sizlBitmap SIZEL {}
|
|
cjBits ULONG ?
|
|
pvBits PVOID ?
|
|
pvScan0 PVOID ?
|
|
lDelta LONG ?
|
|
iUniq ULONG ?
|
|
iBitmapFormat ULONG ?
|
|
iType USHORT ?
|
|
fjBitmap USHORT ?
|
|
SURFOBJ ENDS
|
|
|
|
STYPE_BITMAP = 0
|
|
STYPE_DEVICE = 1
|
|
STYPE_JOURNAL = 2
|
|
STYPE_DEVBITMAP = 3
|
|
|
|
BMF_1BPP = 1
|
|
BMF_4BPP = 2
|
|
BMF_8BPP = 3
|
|
BMF_16BPP = 4
|
|
BMF_24BPP = 5
|
|
BMF_32BPP = 6
|
|
BMF_4RLE = 7
|
|
BMF_8RLE = 8
|
|
|
|
BMF_TOPDOWN = 0001h
|
|
BMF_NOZEROINIT = 0004h
|
|
BMF_DONTCACHE = 0008h
|
|
|
|
;-------------------------------------------------------------------------------
|
|
; BRUSHOBJ
|
|
;-------------------------------------------------------------------------------
|
|
BRUSHOBJ STRUCT
|
|
iSolidColor ULONG ?
|
|
pvRbrush PVOID ?
|
|
BRUSHOBJ ENDS
|
|
|
|
BRUSHOBJ_pvAllocRbrush PROTO PROC,
|
|
pbo :PTR BRUSHOBJ,
|
|
cj :ULONG
|
|
|
|
BRUSHOBJ_pvGetRbrush PROTO PROC,
|
|
pbo :PTR BRUSHOBJ
|
|
|
|
RB_DITHERCOLOR = 80000000h
|
|
|
|
;-------------------------------------------------------------------------------
|
|
; CLIPOBJ
|
|
;-------------------------------------------------------------------------------
|
|
CLIPOBJ STRUCT
|
|
iUniq ULONG ?
|
|
rclBounds RECTL {}
|
|
iDComplexity BYTE ?
|
|
iFComplexity BYTE ?
|
|
iMode BYTE ?
|
|
fjOptions BYTE ?
|
|
CLIPOBJ ENDS
|
|
|
|
DC_TRIVIAL = 0
|
|
DC_RECT = 1
|
|
DC_COMPLEX = 3
|
|
|
|
FC_RECT = 1
|
|
FC_RECT4 = 2
|
|
FC_COMPLEX = 3
|
|
|
|
TC_RECTANGLES = 0
|
|
TC_PATHOBJ = 2
|
|
|
|
OC_BANK_CLIP = 1
|
|
|
|
CT_RECTANGLES = 0
|
|
|
|
CD_RIGHTDOWN = 0
|
|
CD_LEFTDOWN = 1
|
|
CD_RIGHTUP = 2
|
|
CD_LEFTUP = 3
|
|
CD_ANY = 4
|
|
|
|
CD_LEFTWARDS = 1
|
|
CD_UPWARDS = 2
|
|
|
|
ENUMRECTS STRUCT
|
|
_c ULONG ?
|
|
arcl RECTL 1 DUP({})
|
|
ENUMRECTS ENDS
|
|
|
|
CLIPOBJ_cEnumStart PROTO PROC,
|
|
pco :PTR CLIPOBJ,
|
|
bAll :BOOL,
|
|
iType :ULONG,
|
|
iDirection :ULONG,
|
|
cLimit :ULONG
|
|
|
|
CLIPOBJ_bEnum PROTO PROC,
|
|
pco :PTR CLIPOBJ,
|
|
cj :ULONG,
|
|
pul :PTR ULONG
|
|
|
|
CLIPOBJ_ppoGetPath PROTO PROC,
|
|
pci :PTR CLIPOBJ
|
|
|
|
;-------------------------------------------------------------------------------
|
|
; XLATEOBJ
|
|
;-------------------------------------------------------------------------------
|
|
XLATEOBJ STRUCT
|
|
iUniq ULONG ?
|
|
flXlate FLONG ?
|
|
iSrcType USHORT ?
|
|
iDstType USHORT ?
|
|
cEntries ULONG ?
|
|
pulXlate DWORD ?
|
|
XLATEOBJ ENDS
|
|
|
|
XO_TRIVIAL = 00000001h
|
|
XO_TABLE = 00000002h
|
|
XO_TO_MONO = 00000004h
|
|
|
|
XO_SRCPALETTE = 1
|
|
XO_DESTPALETTE = 2
|
|
XO_DESTDCPALETTE = 3
|
|
|
|
XLATEOBJ_iXlate PROTO PROC,
|
|
pxlo :PTR XLATEOBJ,
|
|
iColor :ULONG
|
|
|
|
XLATEOBJ_piVector PROTO PROC,
|
|
pxlo :PTR XLATEOBJ
|
|
|
|
XLATEOBJ_cGetPalette PROTO PROC,
|
|
pxlo :PTR XLATEOBJ,
|
|
iPal :ULONG,
|
|
cPal :ULONG,
|
|
pPal :ULONG
|
|
|