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.
|
|
/************************************************************************/ /* */ /* INIT_CX.H */ /* */ /* Nov 15 1993 (c) 1993, ATI Technologies Incorporated. */ /************************************************************************/
/********************** PolyTron RCS Utilities
$Revision: 1.6 $ $Date: 15 May 1996 16:35:10 $ $Author: RWolff $ $Log: S:/source/wnt/ms11/miniport/archive/init_cx.h_v $ * * Rev 1.6 15 May 1996 16:35:10 RWolff * Updated prototype for SetCurrentMode_cx() to allow reporting * of failure on mode set. * * Rev 1.5 03 Feb 1995 15:16:24 RWOLFF * Added prototypes for functions used in DCI support. * * Rev 1.4 11 Jan 1995 14:02:48 RWOLFF * Added prototype for RestoreMemSize_cx(). * * Rev 1.3 12 May 1994 11:14:36 RWOLFF * Definitions and data structures used by new routine SetModeFromTable_cx() * * Rev 1.2 31 Mar 1994 15:05:38 RWOLFF * Added prototype for SetPowerManagement_cx(). * * Rev 1.1 03 Mar 1994 12:37:20 ASHANMUG * * Rev 1.0 31 Jan 1994 11:41:50 RWOLFF * Initial revision. * * Rev 1.0 30 Nov 1993 18:32:58 RWOLFF * Initial revision.
End of PolyTron RCS section *****************/
#ifdef DOC
INIT_CX.H - Header file for INIT_CX.C
#endif
/*
* Prototypes for functions supplied by INIT_CX.C */ extern void Initialize_cx(void); extern VP_STATUS MapVideoMemory_cx(PVIDEO_REQUEST_PACKET RequestPacket, struct query_structure *QueryPtr); extern VP_STATUS QueryPublicAccessRanges_cx(PVIDEO_REQUEST_PACKET RequestPacket); extern VP_STATUS QueryCurrentMode_cx(PVIDEO_REQUEST_PACKET RequestPacket, struct query_structure *QueryPtr); extern VP_STATUS QueryAvailModes_cx(PVIDEO_REQUEST_PACKET RequestPacket, struct query_structure *QueryPtr); extern VP_STATUS SetCurrentMode_cx(struct query_structure *QueryPtr, struct st_mode_table *CrtTable); extern void SetPalette_cx(PULONG lpPalette, USHORT StartIndex, USHORT Count); extern void IdentityMapPalette_cx(void); extern void ResetDevice_cx(void); extern VP_STATUS SetPowerManagement_cx(ULONG DpmsState);
DWORD GetPowerManagement_cx( PHW_DEVICE_EXTENSION phwDeviceExtension );
extern void RestoreMemSize_cx(void); extern VP_STATUS ShareVideoMemory_cx(PVIDEO_REQUEST_PACKET RequestPacket, struct query_structure *QueryPtr); extern void BankMap_cx(ULONG BankRead, ULONG BankWrite, PVOID Context);
#ifdef INCLUDE_INIT_CX
/*
* Private definitions used in INIT_CX.C */
/*
* Value to put in low byte of cx_bios_set_from_table.cx_bs_mode_select * to indicate that this is an accelerator mode. */ #define CX_BS_MODE_SELECT_ACC 0x0080
/*
* Bit fields in cx_bios_set_from_table.cx_bs_flags */ #define CX_BS_FLAGS_MUX 0x0400
#define CX_BS_FLAGS_INTERLACED 0x0200
#define CX_BS_FLAGS_ALL_PARMS 0x0010
/*
* Value to put in high byte of cx_bios_set_from_table.cx_bs_v_sync_wid * to force use of the pixel clock frequency in the cx_bs_dot_clock * field rather than a divisor/selector pair. */ #define CX_BS_V_SYNC_WID_CLK 0xFF00
/*
* Mode table structure used in setting the video mode using CH=0x81 * AX=??00 BIOS call. * * The alignment of fields within the table expected by the BIOS * does not match the default structure alignment of the Windows NT * C compiler, so we must force byte alignment. */ #pragma pack(1)
struct cx_bios_set_from_table{ WORD cx_bs_reserved_1; /* Reserved */ WORD cx_bs_mode_select; /* Resolution to use */ WORD cx_bs_flags; /* Flags to indicate various conditions */ WORD cx_bs_h_tot_disp; /* Horizontal total and displayed values */ WORD cx_bs_h_sync_strt_wid; /* Horizontal sync start and width */ WORD cx_bs_v_total; /* Vertical total */ WORD cx_bs_v_disp; /* Vertical displayed */ WORD cx_bs_v_sync_strt; /* Vertical sync start */ WORD cx_bs_v_sync_wid; /* Vertical sync width */ WORD cx_bs_dot_clock; /* Pixel clock frequency to use */ WORD cx_bs_h_overscan; /* Horizontal overscan information */ WORD cx_bs_v_overscan; /* Vertical overscan information */ WORD cx_bs_overscan_8b; /* 8BPP and blue overscan colour */ WORD cx_bs_overscan_gr; /* Green and red overscan colour */ WORD cx_bs_reserved_2; /* Reserved */ }; #pragma pack()
#endif
|