?? dal.h
字號:
* This FUNCTION TYPEDEF must be defined after DAL TYPE DEFINITIONS. Otherwise
* it will cause compiler errors in 16 bit build environment.
\****************************************************************************/
typedef BOOL (FAR *PFNDALTIMINGS)(LPHANDLE, ULONG, LPADJUSTMENT_PARAMETERS);
typedef VOID (FAR *PFNGCODISABLE)(HGCO); // (VOID FAR)RageProDisable, (VOID FAR)RageProAcceleratorToVgaMode
typedef BOOL (FAR *PFNGCOENABLE)(HDDL, HGCO, LPHW_ASIC_ID, LPHW_CONTROLLER_ENABLEDATA); // (BOOL FAR)RageProEnable
typedef BOOL (FAR *PFNGCOENUMERATEMODE)(HGCO, LPDEVMODE_INFO, ULONG, ULONG); // (BOOL FAR)RageProEnumerateStandardModes
typedef VOID (FAR *PFNGCOGETCRTCLINE)(HGCO, ULONG, LPULONG);
typedef VOID (FAR *PFNGCOGETGAMMA)(HGCO, ULONG, LPDEVCLUT); // (VOID FAR)RageProGetGammaCorrection, (VOID FAR)RageProSetGammaCorrection
typedef VOID (FAR *PFNGCOGETGAMMA16)(HGCO, ULONG, LPDEVCLUT16); // (VOID FAR)RageProGetGammaCorrection, (VOID FAR)RageProSetGammaCorrection
typedef VOID (FAR *PFNGCOGETBLINKOVERLAY)(HGCO, LPHW_ADJUSTMENT); // (VOID FAR)RageProGetTextCursorBlinkingAdjustment
typedef BOOL (FAR *PFNGCONONSTANDARDMODE)(HGCO, LPDEVMODE_INFO, ULONG); // (BOOL FAR)RageProIsNonStandardModeSupported
typedef VOID (FAR *PFNGCOMODECHANGE)(HGCO, LPDEVMODE_INFO, ULONG); // (VOID FAR)RageProPreModeChange, (VOID FAR)RageProPostModeChange
typedef VOID (FAR *PFNGCOSETMODE)(HGCO, LPDEVMODE_INFO, ULONG, ULONG, ULONG, ULONG); // (BOOL FAR)RageProSetMode
typedef VOID (FAR *PFNGCOSETPALETTE)(HGCO, ULONG, LPDEVCLUT, ULONG, ULONG); // (VOID FAR)RageProSetPalette
typedef VOID (FAR *PFNGCOSETBLINKOVERLAY)(HGCO, LONG); // (VOID FAR)RageProSetTextCursorBlinkingAdjustment
typedef VOID (FAR *PFNGCOSETDISPLAYOFFSET)(HGCO, ULONG, ULONG);
typedef BOOL (FAR *PFNGCOTIMINGS)(HGCO, ULONG, LPADJUSTMENT_PARAMETERS); // (BOOL FAR)RageProSetAdjustmentTimings
typedef BOOL (FAR *PFNGCOGETMULTIMEDIATABLE)(HGCO, LPUCHAR, LPULONG); // RageProGetMultimediaTable
typedef BOOL (FAR *PFNGCOGETHARDWAREINFOTABLE)(HGCO, LPUCHAR, LPULONG); // RageProGetHardwareInfoTable
typedef VOID (FAR *PFNGCOGETINFO)(HGCO, ULONG, LPGCO_QUERY_STRUCTURE);
typedef BOOL (FAR *PFNGCOGETSYSTEMBIOSINFO)(HGCO, ULONG, LPGCO_SYSTEMBIOSINFO); // This function will get system BIOS related infromation
// EPR# 36064 typedef VOID (FAR *PFNGCOSETPOWERSTATE)(HGCO, ULONG);
typedef VOID (FAR *PFNGCOSETDFPSIZE)(HGCO, ULONG, ULONG, ULONG);
typedef VOID (FAR *PFNGCOGETPOWERSTATECAPS)(HGCO, LPULONG);
typedef VOID (FAR *PFNGCOENABLEOVERLAY)(HGCO, ULONG);
typedef VOID (FAR *PFNGCOGETCRTCTIMINGS)(HGCO, ULONG, LPGCO_CONTROLLER_TIMINGS);
typedef BOOL (FAR *PFNGCOGETEXPANSION)(HGCO, ULONG, ULONG);
typedef VOID (FAR *PFNGCOUPDATEBIOSDISPLAYINFO)(HGCO, LPULONG, ULONG, ULONG, ULONG);
typedef BOOL (FAR *PFNGCOISDEVICEMAPPINGSUPPORTED)(HGCO, ULONG, ULONG);
typedef BOOL (FAR *PFNGCOSETMODEEXTENDED)(HGCO, LPDEVMODE_INFO, ULONG, ULONG, ULONG, ULONG,
LPDAL_DISPLAY_TIMING_INFO);
typedef BOOL (FAR *PFNGCOVALIDATEMODE)(HGCO, ULONG, LPDEVMODE_INFO, LPDAL_DISPLAY_TIMING_INFO);
typedef VOID (FAR *PFNGCOGETTOTALHTIME)(HGCO, LPHORIZONTAL_TIME, LPDEVMODE_INFO, ULONG);
typedef VOID (FAR *PFNGCOCALCMODEBW)(HGCO, LPDEVMODE_INFO, LPFIXEDPOINT);
typedef VOID (FAR *PFNGCOCALCMODEBWEX)(HGCO, LPDEVMODE_INFO, LPDAL_CRTC_TIMING, LPFIXEDPOINT);
typedef VOID (FAR *PFNGCOCALCOVBW)(HGCO, ULONG, LPDEVMODE_INFO, LPFIXEDPOINT);
typedef VOID (FAR *PFNGCOCALCVIDEOBW)(HGCO, LPDEVMODE_INFO, LPFIXEDPOINT);
typedef BOOL (FAR *PFNGCOCALCHFBBW)(HGCO, LPDEVMODE_INFO, LPFIXEDPOINT);
typedef VOID (FAR *PFNGCOCALCMODEHTIME)(HGCO, LPDEVMODE_INFO, LPHORIZONTAL_TIME);
typedef VOID (FAR *PFNGCOCALCOVHTIME)(HGCO, ULONG, LPDEVMODE_INFO, LPHORIZONTAL_TIME);
typedef VOID (FAR *PFNGCOCALCVIDEOHTIME)(HGCO, LPDEVMODE_INFO, LPHORIZONTAL_TIME);
typedef BOOL (FAR *PFNGCOCALCHFBHTIME)(HGCO, LPDEVMODE_INFO, LPHORIZONTAL_TIME);
typedef BOOL (FAR *PFNGCOCALCHTIMEADJUST)(HGCO, LPHORIZONTAL_TIME, LPHORIZONTAL_TIME, LPDEVMODE_INFO, ULONG, LPULONG);
typedef ULONG (FAR *PFNGCOGETCRC)(HGCO, ULONG,ULONG);
typedef ULONG (FAR *PFNGCOGETHARDWAREDATA)(HGCO,ULONG,ULONG,LPGCO_HW_REGISTER);
typedef BOOL (FAR *PFNGETMODETIMING)(HGCO, ULONG, LPDEVMODE_INFO, LPDAL_CRTC_TIMING);
typedef BOOL (FAR *PFNGETDETAILEDMODETIMING)(HGCO, ULONG, LPDEVMODE_INFO, LPDAL_CRTC_TIMING);
typedef BOOL (FAR *PFNGCOGETPOWERSTATE)(HGCO, LPULONG, LPULONG, LPDAL_ADAPTERPOWERSTATES);
typedef ULONG (FAR *PFNGCOSETPOWERSTATE)(HGCO, ULONG);
typedef ULONG (FAR *PFNGCOVALIDATEPOWERSTATE)(HGCO, ULONG, ULONG, LPDAL_CRTC_TIMING, DEVMODE_INFO);
typedef VOID (FAR *PFNGCOSETPOWERSTATEEX)(HGCO, ULONG, ULONG);
typedef BOOL (FAR *PFNGCOALLOCOVERLAY)(HGCO, ULONG, ULONG,ULONG,ULONG);
typedef VOID (FAR *PFNGCOFREEOVERLAY)(HGCO, ULONG);
typedef ULONG (FAR *PFNGCOCONTROLLERTESTHARNESS) (HGCO, LPVOID, LPVOID);
typedef VOID (FAR *PFNGCOGETCLOCKINFO)(HGCO, LPDAL_ADAPTERCLOCK_INFO);
typedef ULONG (FAR *PFNGCOVALIDATECLOCKCONFIG)(HGCO, LPDAL_GCOCLK_CONFIG);
typedef BOOL (FAR *PFNGCOSETEVENT)(HGCO, ULONG, ULONG);
typedef VOID (FAR *PFNGCOPROCESSMISCINFO)(HGCO, ULONG, ULONG, LPVOID);
typedef VOID (FAR *PFNGCOGETDISPLAYXYPOS)(HGCO, ULONG, LPULONG, LPULONG);
typedef VOID (FAR *PFNGCOSETDISPLAYXYPOS)(HGCO, ULONG, ULONG, ULONG);
typedef VOID (FAR *PFNGDODISABLE)(HGDO);
typedef BOOL (FAR *PFNGDOENABLE)(HDDL, HGDO, LPHW_ASIC_ID, LPHW_DISPLAY_ENABLEDATA);
typedef VOID (FAR *PFNGDOBLANKING)(HGDO, ULONG, BOOL);
typedef BOOL (FAR *PFNGDOCONNECT)(HGDO);
typedef BOOL (FAR *PFNGDOLIDSTATE)(HGDO);
typedef VOID (FAR *PFNGDODISPLAYONOFF)(HGDO, ULONG);
typedef VOID (FAR *PFNGDOSETDPMS)(HGDO, ULONG);
typedef VOID (FAR *PFNGDOSETADJUSTMENT)(HGDO, LONG);
typedef ULONG (FAR *PFNGDOSETVIDEOSTANDARDADJUSTMENT)(HGDO, LONG);
typedef VOID (FAR *PFNGDOSETOVERSCANADJUSTMENT)(HGDO, LONG);
typedef VOID (FAR *PFNGDOSETMULTIMEDIAADJUSTMENT)(HGDO, LONG);
typedef VOID (FAR *PFNGDOSETPOSITIONADJUSTMENT)(HGDO, LONG, LONG);
typedef BOOL (FAR *PFNGDOSETSIZEADJUSTMENT)(HGDO, LONG, LONG);
typedef VOID (FAR *PFNGDOMODE)(HGDO, LPDEVMODE_INFO, ULONG, PFNDALTIMINGS, LPHANDLE);
typedef VOID (FAR *PFNGDOPPMODE)(HGDO, LPDEVMODE_INFO);
typedef BOOL (FAR *PFNGDOMODESUPPORTED)(HGDO, LPDEVMODE_INFO, ULONG);
typedef BOOL (FAR *PFNGDOMODESUPPORTEDEX)(HGDO, LPDEVMODE_INFO, LPDAL_CRTC_TIMING, ULONG);
typedef VOID (FAR *PFNGDOGETADJUSTMENT)(HGDO, LPHW_ADJUSTMENT, LPDEVMODE_INFO);
typedef BOOL (FAR *PFNGDOGETEDIDDATA)(HGDO, LPEDID_BUFFER); // Obsolete!
typedef BOOL (FAR *PFNSETDSPLCONNECTOR)(HGDO, USHORT);
typedef BOOL (FAR *PFNDDCPREDDCQUERY)(HGDO);
typedef BOOL (FAR *PFNDDCREADLINE)(HGDO, USHORT);
typedef VOID (FAR *PFNDDCWRITELINE)(HGDO, BOOL, USHORT);
typedef VOID (FAR *PFNDDCPOSTDDCQUERY)(HGDO, BOOL);
typedef BOOL (FAR *PFNGDOGETMONITORINFO)(HGDO, LPMONITOR_INFO);
typedef VOID (FAR *PFNGDOSETPOWERSTATE)(HGDO, ULONG);
typedef VOID (FAR *PFNGDOINITIALIZEDEVICE)(HGDO, EDID_BUFFER);
typedef BOOL (FAR *PFNGDOISDEVICEHOTPLUGGABLE)(HGDO);
typedef BOOL (FAR *PFNGDOPPADJUSTMENTCHANGE)(HGDO);
typedef BOOL (FAR *PFNGDOALIGNER)(HGDO);
typedef ULONG (FAR *PFNGDODISPLAYTESTHARNESS) (HGDO, LPVOID, LPVOID);
typedef ULONG (FAR *PFNGDOENABLESIBLING) (HDDL, HGDO, HGDO, LPHW_ASIC_ID, LPHW_DISPLAY_ENABLEDATA);
typedef ULONG (FAR *PFNGDOGETSUPPORTEDREFRESHRATE) (HGDO, LPVOID, ULONG);
typedef VOID (FAR *PFNGDOSETREFRESHRATE) (HGDO, ULONG);
typedef VOID (FAR *PFNGDODISPLAYGETDEVICEINFO)(HGDO, LPDAL_DISPLAYDEVICEINFO);
typedef ULONG (FAR *PFNGDOGETSETI2CDATA)(HGDO, LPVOID, ULONG, ULONG);
typedef VOID (FAR *PFNGDOSETPOWERSTATEEX)(HGDO, ULONG);
typedef ULONG (FAR *PFNGDOGETFIXEDDISPLAYMODES)(HGDO, LPDEVMODE_INFO, ULONG);
typedef BOOL (FAR *PFNGETFIXEDDISPLAYMODETIMING)(HGCO, LPDEVMODE_INFO, LPDAL_CRTC_TIMING);
typedef struct _HW_ADJUSTMENT
{
union
{
LONG lDefault;
LONG lValue;
};
LONG lMin;
LONG lMax;
LONG lStep;
} HW_ADJUSTMENT, FAR *LPHW_ADJUSTMENT;
typedef struct _HW_ASIC_ID
{
ULONG ulChipFamily;
ULONG ulChipID;
ULONG ulHwInternalRev;
ULONG ulVRamInstalled;
ULONG ulVRamType;
ULONG ulVRamBitWidth;
ULONG ulReferenceFrequency;
ULONG ulDisplayDevnode;
LPVOID lpIO;
LPVOID lpMMR;
LPVOID lpRomBaseAddress;
LPVOID lpRomHeader;
LPVOID lpFrameBuffer;
LPUCHAR lpucVgaBuffer;
USHORT usRealSegment;
} HW_ASIC_ID, FAR *LPHW_ASIC_ID;
#define GCO_QUERY_STRUCTURE_FLAGS_TILEENABLED 0x00000001L
typedef struct _GCO_QUERY_STRUCTURE
{
ULONG ulDisplayOffset;
ULONG ulHorizontalRefreshRate;
ULONG ulRedMask;
ULONG ulGreenMask;
ULONG ulBlueMask;
ULONG ulFlags;
ULONG ulTileWidthBytes;
ULONG ulTileHeightLines;
ULONG ulTileLineStart;
} GCO_QUERY_STRUCTURE, FAR *LPGCO_QUERY_STRUCTURE;
typedef struct _GCO_SYSTEMBIOSINFO
{
ULONG ulDisplayTypesRequestEnable;
ULONG ulReserved[6];
} GCO_SYSTEMBIOSINFO, FAR *LPGCO_SYSTEMBIOSINFO;
typedef struct _GCO_CONTROLLER_TIMINGS
{
ULONG ulHorizontalTotal;
ULONG ulVerticalTotal;
ULONG ulHorizontalDisplay;
ULONG ulVerticalDisplay;
ULONG ulPixelClock; // In 10Khz
} GCO_CONTROLLER_TIMINGS, FAR *LPGCO_CONTROLLER_TIMINGS;
typedef struct _GCO_HW_REGISTER
{
ULONG ulRegOffset;
ULONG ulRegOffsetIndexMask;
ULONG ulIndexValue; //Index's Index
ULONG ulIndexValueShiftLeft; //Index could be in the middle.
ULONG ulIndexDataOffset;
ULONG ulReserved1;
ULONG ulReserved2;
ULONG ulReserved3;
}GCO_HW_REGISTER, FAR *LPGCO_HW_REGISTER;
typedef struct _FIXEDPOINT // define 32.8 fixed-point format
{
ULONG Integral; // 32-bit integral part
ULONG Fractional; // 8-bit fractional part
} FIXEDPOINT, FAR *LPFIXEDPOINT;
typedef struct _HORIZONTAL_TIME
{
FIXEDPOINT fHActiveTime;
FIXEDPOINT fHBlankTime;
} HORIZONTAL_TIME, FAR *LPHORIZONTAL_TIME;
typedef struct _ALLOCATED_BW
{
FIXEDPOINT Controller;
FIXEDPOINT Overlay;
FIXEDPOINT DVDSubpivture;
FIXEDPOINT HalfFrameBuffer;
} ALLOCATED_BW, FAR *LPALLOCATED_BW;
typedef struct _GDO_DISPLAYREFRESHRATECAPS
{
ULONG ulSize;
ULONG ulDefaultRefreshRate;
ULONG ulNumLowRefreshRates;
ULONG ulLowRefreshRate[MAX_LCD_REFRESH_COUNT];
ULONG ulReserved1;
ULONG ulReserved2;
ULONG ulReserved3;
ULONG ulReserved4;
ULONG ulReserved5;
}GDO_DISPLAYREFRESHRATECAPS, FAR *LPGDO_DISPLAYREFRESHRATECAPS;
typedef struct _PRIO_ELEM
{
BOOL bEnabled;
ULONG ulMappedController;
HORIZONTAL_TIME sHTime;
} PRIO_ELEM, FAR* LPPRIO_ELEM;
typedef struct _GCO_MISC_INFO_VGA_ACTIVE_DISPLAY
{
ULONG ulSize;
ULONG ulVGAActiveDisplay;
} GCO_MISC_INFO_VGA_ACTIVE_DISPLAY, FAR *LPGCO_MISC_INFO_VGA_ACTIVE_DISPLAY;
typedef struct _HW_CONTROLLER_ENABLEDATA
{
ULONG ulSize; // required as first entry in structure [GG]
ULONG ulControllerVersion;
ULONG ulNumberOfControllers;
BOOL bEnabledAtBoot[MAX_NUMBER_CONTROLLERS];
ULONG aControllerCaps[MAX_NUMBER_CONTROLLERS];
ULONG ulFunctionHooks;
ULONG ulFunctionHooks2;
LPUCHAR lpAdapterName;
FIXEDPOINT sAvailBandwidth;
FIXEDPOINT sAvailPeakBandwidth;
PFNGCOGETTOTALHTIME pfnGetTotalHTime;
PFNGCOCALCMODEBW pfnCalculateModeBandwidth;
PFNGCOCALCMODEBW pfnCalculatePeakModeBandwidth;
PFNGCOCALCOVBW pfnCalculateOverlayBandwidth;
PFNGCOCALCVIDEOBW pfnCalculateVideoBandwidth;
PFNGCOCALCVIDEOBW pfnCalculatePeakVideoBandwidth;
PFNGCOCALCHFBBW pfnCalculateHFBBandwidth;
PFNGCOCALCMODEHTIME pfnCalculateModeHorizontalTime;
PFNGCOCALCOVHTIME pfnCalculateOverlayHorizontalTime;
PFNGCOCALCVIDEOHTIME pfnCalculateVideoHorizontalTime;
PFNGCOCALCHFBHTIME pfnCalculateHFBHorizontalTime;
PFNGCOCALCHTIMEADJUST pfnCalculateHTimeAdjustment;
PFNGCODISABLE pfnDisable;
PFNGCOENABLE pfnEnable;
PFNGCOENUMERATEMODE pfnEnumerateStandardModes;
PFNGCOGETCRTCLINE pfnGetCrtcLine;
PFNGCOGETGAMMA pfnGetGammaCorrection;
PFNGCOGETGAMMA16 pfnGetGamma16Correction;
PFNGCOGETBLINKOVERLAY pfnGetTextCursorBlinkingAdjustment;
PFNGCOGETBLINKOVERLAY pfnGetOverlayGammaAdjustment;
PFNGCOGETMULTIMEDIATABLE pfnGetMultimediaTable;
PFNGCOGETHARDWAREINFOTABLE pfnGetHardwareInfoTable;
PFNGCOGETINFO pfnGetInfo;
PFNGCOGETPOWERSTATECAPS pfnGetPowerStateCaps;
PFNGCONONSTANDARDMODE pfnIsNonStandardModeSupported;
PFNGCOTIMINGS pfnSetAdjustmentTimings; //added to support programming of CRTC adjustment related routines by GCO
PFNGCOMODECHANGE pfnPreModeChange;
PFNGCOMODECHANGE pfnPostModeChange;
PFNGCOSETDFPSIZE pfnSetDFPSize;
PFNGCOGETGAMMA pfnSetGammaCorrection;
PFNGCOGETGAMMA16 pfnSetGamma16Correction;
PFNGCOSETMODE pfnSetMode;
PFNGCOSETPALETTE pfnSetPalette;
PFNGCOSETBLINKOVERLAY pfnSetTextCursorBlinkingAdjustment;
PFNGCOSETBLINKOVERLAY pfnSetOverlayGammaAdjustment;
?? 快捷鍵說明
復制代碼
Ctrl + C
搜索代碼
Ctrl + F
全屏模式
F11
切換主題
Ctrl + Shift + D
顯示快捷鍵
?
增大字號
Ctrl + =
減小字號
Ctrl + -