12#define SYSTM_LOGFONT {16,7,0,0,700,0,0,0,ANSI_CHARSET,OUT_DEFAULT_PRECIS,CLIP_DEFAULT_PRECIS,DEFAULT_QUALITY,VARIABLE_PITCH | FF_DONTCARE,L"System"}
13#define HELVE_LOGFONT {12,9,0,0,400,0,0,0,ANSI_CHARSET,OUT_DEFAULT_PRECIS,CLIP_STROKE_PRECIS,PROOF_QUALITY,VARIABLE_PITCH | FF_DONTCARE,L"MS Sans Serif"}
14#define COURI_LOGFONT {12,9,0,0,400,0,0,0,ANSI_CHARSET,OUT_DEFAULT_PRECIS,CLIP_STROKE_PRECIS,PROOF_QUALITY,FIXED_PITCH | FF_DONTCARE, L"Courier"}
45 DWORD returnedDataLength;
46 DWORD MaxWidth, MaxHeight;
50 ULONG RemappingNeeded = 0;
56 if (EngDeviceIoControl(ppdev->
hDriver,
66 RIP(
"DISP bInitSURF failed IOCTL_SET_MODE\n");
75 if (bFirst || RemappingNeeded)
80 if (EngDeviceIoControl(ppdev->
hDriver,
84 &videoMemoryInformation,
88 RIP(
"DISP bInitSURF failed IOCTL_VIDEO_MAP\n");
97 RIP(
"VideoRamBase does not correspond to FrameBufferBase\n");
108 DISPDBG((1,
"Frame buffer memory is not accessible.\n"));
142 ((
sizeof(
UCHAR) * MaxWidth * MaxHeight) * 2);
149 DISPDBG((0,
"bInitPointer EngAllocMem failed\n"));
174 DWORD returnedDataLength;
185 &returnedDataLength))
187 RIP(
"DISP vDisableSURF failed IOCTL_VIDEO_UNMAP\n");
229 pVideoModeSelected =
NULL;
230 pVideoTemp = pVideoBuffer;
237 DISPDBG((2,
"Default mode requested"));
238 bSelectDefault =
TRUE;
243 DISPDBG((2,
"Requested mode...\n"));
249 bSelectDefault =
FALSE;
254 if (pVideoTemp->
Length != 0)
256 if (bSelectDefault ||
263 pVideoModeSelected = pVideoTemp;
264 DISPDBG((3,
"Found a match\n")) ;
270 (((
PUCHAR)pVideoTemp) + cbModeSize);
277 if (pVideoModeSelected ==
NULL)
280 DISPDBG((0,
"DISP bInitPDEV failed - no valid modes\n"));
353 if (EngDeviceIoControl(ppdev->
hDriver,
362 DISPDBG((2,
"getcolorCapabilities failed \n"));
520 if (EngDeviceIoControl(
hDriver,
528 DISPDBG((0,
"getAvailableModes failed VIDEO_QUERY_NUM_AVAIL_MODES\n"));
542 if (*modeInformation ==
NULL)
544 DISPDBG((0,
"getAvailableModes failed EngAllocMem\n"));
553 if (EngDeviceIoControl(
hDriver,
562 DISPDBG((0,
"getAvailableModes failed VIDEO_QUERY_AVAIL_MODES\n"));
565 *modeInformation =
NULL;
577 pVideoTemp = *modeInformation;
#define IOCTL_VIDEO_MAP_VIDEO_MEMORY
#define VIDEO_MODE_GRAPHICS
#define IOCTL_VIDEO_UNMAP_VIDEO_MEMORY
struct _VIDEO_MODE_INFORMATION * PVIDEO_MODE_INFORMATION
#define IOCTL_VIDEO_SET_CURRENT_MODE
struct _VIDEO_POINTER_ATTRIBUTES VIDEO_POINTER_ATTRIBUTES
#define VIDEO_MODE_BANKED
#define VIDEO_DEVICE_COLOR
#define IOCTL_VIDEO_QUERY_AVAIL_MODES
#define IOCTL_VIDEO_QUERY_COLOR_CAPABILITIES
#define IOCTL_VIDEO_QUERY_NUM_AVAIL_MODES
struct _VIDEO_POINTER_ATTRIBUTES * PVIDEO_POINTER_ATTRIBUTES
#define VIDEO_MODE_COLOR_POINTER
void * EngAllocMem(int zero, unsigned long size, int tag=0)
LDECI4 YellowInMagentaDye
LDECI4 MagentaInYellowDye
VIDEO_POINTER_CAPABILITIES PointerCapabilities
DWORD cjPointerAttributes
PVIDEO_POINTER_ATTRIBUTES pPointerAttributes
PVOID RequestedVirtualAddress
ULONG ModeInformationLength
const DEVINFO gDevInfoFrameBuffer
VOID NTAPI vDisableSURF(PPDEV ppdev)
DWORD NTAPI getAvailableModes(HANDLE hDriver, PVIDEO_MODE_INFORMATION *modeInformation, DWORD *cbModeSize)
BOOL NTAPI bInitPDEV(PPDEV ppdev, DEVMODEW *pDevMode, GDIINFO *pGdiInfo, DEVINFO *pDevInfo)
BOOL NTAPI bInitSURF(PPDEV ppdev, BOOL bFirst)
#define HT_FLAG_ADDITIVE_PRIMS
#define GDI_DRIVER_VERSION
#define PRIMARY_ORDER_CBA
_In_ LPWSTR _In_ ULONG _In_ ULONG _In_ ULONG _Out_ DEVINFO _In_ HDEV _In_ LPWSTR _In_ HANDLE hDriver