亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频

? 歡迎來到蟲蟲下載站! | ?? 資源下載 ?? 資源專輯 ?? 關于我們
? 蟲蟲下載站

?? daldef.h

?? 此代碼為WCE5.0下顯示器的源代碼
?? H
?? 第 1 頁 / 共 4 頁
字號:
//
// Copyright (c) Microsoft Corporation.  All rights reserved.
//
//
// Use of this source code is subject to the terms of the Microsoft end-user
// license agreement (EULA) under which you licensed this SOFTWARE PRODUCT.
// If you did not accept the terms of the EULA, you are not authorized to use
// this source code. For a copy of the EULA, please see the LICENSE.RTF on your
// install media.
//
/****************************************************************************\
*
*  Module Name    daldef.h
*  Project        ATI Display Abstraction Layer
*  Device         RageProPNP / Rage128 (Win95/98 & WinNT 4.0/5.0)
*
*  Description    private header file for Display Abstraction Layer
*                 containing definitions internal only to dal files.
*
*  Copyright (c) 1998-2000 ATI Technologies Inc. (unpublished)
*
*  All rights reserved.  This notice is intended as a precaution against
*  inadvertent publication and does not imply publication or any waiver
*  of confidentiality.  The year included in the foregoing notice is the
*  year of creation of the work.
*
*  Refer to DAL Developers Guide & Programming Reference Rev 0.84 for usage
*
\****************************************************************************/

#ifndef _DALDEF_H
#define _DALDEF_H

#ifdef __cplusplus
extern "C" {
#endif

#if defined (_X86_)
#pragma pack(1)
#endif


#include "registry_DAL.h"
#include "cwddedi.h"
#include "atimcode.h"
/*****************************Private*Definition*****************************\
*
* PRIVATE DAL TYPE DEFINITIONS (INTERNAL ONLY)
*
\****************************************************************************/


// maximum number of modes supported by the DAL, where modes
// are a permutation of Height&Width * bpp * RefreshRate.
#define MAX_DAL_MODES 640
#define MAX_DETAILEDTIMING_NUM  4

// maximum size for a modes list from the registry
#define MAX_REGISTRY_MODE_ENTRIES         40
#define REGISTRY_MODE_SIZE_PER_ENTRY      (sizeof(USHORT) * 4)
#define MAX_REGISTRY_MODE_ENTRY_PER_LINE  10
#define MAX_REGISTRY_MODE_LINES           10
#define MAX_REGISTRY_MODE_LIST            (MAX_REGISTRY_MODE_ENTRIES * REGISTRY_MODE_SIZE_PER_ENTRY)
#define MAX_GDO_RESTRICTED_MODE_LIST      (10 * REGISTRY_MODE_SIZE_PER_ENTRY)

// maximum number of detailed timing modes that can be cached
#define MAX_CACHEDDTM   16

// minimum x and y resolutions
#define MIN_X_RES 320
#define MIN_Y_RES 200

// maximum size for a data to be written to the registry
#define MAX_REGISTRY_BINARY_SIZE  1024
#define MAX_REGISTRY_LINE         10
#define MAX_REGISTRY_VALUENAME    256
//DFP bootup behavior, max device,driver combinations VG
#define MAX_OBJECT_MAP            128
#define MAX_PRIO_ELEM             10
                               
#define DAL_MAX_PHISYCAL_HRES     4096  
#define DAL_MAX_PHISYCAL_VRES     4096  

#define DAL_MAX_GCO_ADJUSTMENTS             4
#define DAL_MAX_GDO_ADJUSTMENTS             32
#define DAL_MAX_GDO_PER_MODE_ADJUSTMENTS    6

typedef struct _HW_DAL_EXTENSION        HW_DAL_EXTENSION;
typedef struct _DEVGCO                  DEVGCO;
typedef struct _DEVGDO                  DEVGDO;
typedef struct _DALMODE                 DALMODE;
typedef struct _DAL_OBJECT_MAP          DAL_OBJECT_MAP;
typedef struct _DAL_DRIVER_MAP          DAL_DRIVER_MAP;
typedef struct _CWDDEMODEENUM           CWDDEMODEENUM;
typedef struct _DRIVERDATA              DRIVERDATA;
typedef struct _REGDETAILTEDTIMINGINFO  REGDETAILEDTIMINGINFO;


// Define number of overlay adjustments for DAL internal usages
#define DAL_OVERLAY_ADJUSTTYPE_BRIGHTNESS      0x00000000
#define DAL_OVERLAY_ADJUSTTYPE_CONTRAST        0x00000001
#define DAL_OVERLAY_ADJUSTTYPE_SATURATION      0x00000002
#define DAL_OVERLAY_ADJUSTTYPE_HUE             0x00000003
#define DAL_OVERLAY_ADJUSTTYPE_GAMMA           0x00000004
#define DAL_OVERLAY_ADJUSTTYPE_ALPHA           0x00000005
#define DAL_OVERLAY_MAX_NUM_ADJUSTMENTS        0x00000006

#define DAL_OVLADJUST_SUPPORTED_FLAG           0x00000001 // adjustment is supported
#define DAL_OVLADJUST_DISPDEVDEP_FLAG          0x00000002 // display combination dependent 
#define DAL_OVLADJUST_RESETATALLOC_FLAG        0x00000004 // reset to default when overlay is allocated
#define DAL_OVLADJUST_SAVEREG_FLAG             0x00000008 // data is out of sync - need to write to registry

typedef struct _OVLADJUST
{
  ULONG                 ulFlags;                  
  ULONG                 ulDIIndex;
  HW_ADJUSTMENT         sGCODefault;
  LPLONG                lpDefault;
  LPLONG                lpAdjusts;
  LPUCHAR               lpRegName;
  PFNGCOGETBLINKOVERLAY pfnGet;
  PFNGCOSETBLINKOVERLAY pfnSet;
} OVLADJUST, FAR *LPOVLADJUST;


//
// DEVGCO is the DAL's device specific structure for the graphics controller
//        object
//

#define GCO_ACTIVE              0x00000001L
#define GCO_VIEWSIZELOCKED      0x00000002L
#define GCO_PANLOCKED           0x00000004L
#define GCO_POWEREDDOWN         0x00000008L
#define GCO_EXPANSION           0x00000010L
#define GCO_SAVEDATA            0x00000020L
#define GCO_SAVEGAMMA           0x00000040L
#define GCO_MAPPED              0x00000080L
#define GCO_SAVEADJUSTMENTS     0x00000100L
#define GCO_INITADJUSTMENTS     0x00000200L
#define GCO_CALLDDLPPMODECHANGE 0x00000400L
#define GCO_OVERLAYTHEATERMODE  0x00000800L

//State change bit 
#define GCO_EXPANSION_CHANGE    0x00000001L

typedef struct _DEVGCO
{
  // 1 based index identifying this controller
  ULONG ulController;

  // flags describing the state of the controller
  ULONG ulFlags;

  // handle to the graphics controller object
  HGCO hGCO;

  // pointer to the structure describing the properties and function entry
  // points for this graphics controller object.
  LPHW_CONTROLLER_ENABLEDATA lpHWED;

  // mode the controller is in, if it is active.
  DEVMODE_INFO sModeInfo;

  // mode the controller was last in in
  DEVMODE_INFO sLastModeInfo;

  ULONG ulPitch;

  ULONG ulOffset;

  // bit vector of displays which are currently attached to the controller
  ULONG ulDisplays;

  // bit flags specifying the display types active on the controller
  ULONG ulDisplayTypes;

  // Desktop size
  SIZE siDesktop;

  // Desktop size
  SIZE siViewLock;

  // View area for the controller in the surface
  RECT rtView;

  // Pan Locking rectangle for the surface
  RECT rtPanLock;

  // DAL passes detail timing information for each display type
  // using this structure.
  DAL_DISPLAY_TIMING_INFO sDisplayTimingInfo[MAX_NUMBER_DISPLAYS];

  // array of all possible adjustment structures for a given controller
  // storing the defaults
  HW_ADJUSTMENT aAdjustment[DAL_MAX_GCO_ADJUSTMENTS];

  // array of actual states for adjustments for this display
  LONG alAdjustments[DAL_MAX_GCO_ADJUSTMENTS];

  // Per controller flags
  ULONG ulControllerFlags;

  ULONG ulTempAdjustmentVectors; //Vectors for adjustment which does not need save in the registry.

  ALLOCATED_BW  sAllocatedBandwidth;
  ALLOCATED_BW  sAllocatedPeakBandwidth;
  
  // indicate state change bits.
  ULONG ulStateChangeFlags;

  // DAL will save view position here when setting OverlayTheaterMode.
  POINT sLastViewPosition;
  // Pan Locking rectangle for the surface before OverlayTheaterMode
  RECT rtLastPanLock;

} DEVGCO, FAR *LPDEVGCO;

//
// DEVGDO is the DAL's device specific structure for the graphics display
//        object
//

#define GDO_ACTIVE                     0x00000001L
#define GDO_DPMS_DISABLED              0x00000004L
#define GDO_PHYSICALLY_CONNECTED       0x00000008L
#define GDO_BLANKING_DISABLED          0x00000010L
#define GDO_MONITOR_INFO               0x00000020L
#define GDO_EDID                       0x00000040L
#define GDO_SAVEDATA                   0x00000080L
#define GDO_SAVEPERMODEADJUSTMENTS     0x00000100L
#define GDO_QUERYPERMODEADJUSTMENTS    0x00000200L
#define GDO_ADJUSTMENTSQUERIED         0x00000400L
#define GDO_USEATIMONITORINFO          0x00000800L
#define GDO_SETADJUSTMENTS             0x00001000L
#define GDO_USEOSMONITORINFO           0x00002000L
#define GDO_SAVEUSER_MONITOR_INFO      0x00004000L
#define GDO_UNKNOWNMONITOR             0x00008000L
#define GDO_OSMONITOR_INFO_AVAILABLE   0x00010000L
#define GDO_SAVE_MAX_MODE_INFO         0x00020000L
#define GDO_CONNECTOR_ESTABLISHED      0x00040000L
#define GDO_PM_LOWREFRESHRATE_SET       0x00080000L //Dynamic refresh rate state flag
#define GDO_PM_LOWREFRESHRATE_REQUESTED 0x00100000L //Dynamic refresh rate logic flag
#define GDO_EDID_REPORT_TO_OS_ONLY     0x00200000L

#define GDO_WITHOUT_CONTROLLER    0xFFFFFFFF

typedef struct _DEVGDO
{
  // 1 based index identifying this graphics display object.
  ULONG ulDisplay;

  // flags describing the state of the display
  ULONG ulFlags;

  // handle to the GDO, programmed by DAL to a part of reserved in the
  // HW_DAL_EXTENSION structure
  HGDO hGDO;

  // index used for processing CWDDE calls as the last position in the
  // mode table returned in an ENUM REFRESH call
  ULONG ulEnumRefreshIndex;

  // enable data structure filled in by the GDO on GDOEnable
  LPHW_DISPLAY_ENABLEDATA lpHWED;

  // bit vector specifying the controller the display is connected to
  ULONG ulController;

  // maximum values for the various fields of a mode info structure
  DEVMODE_INFO sMaxModeInfo;

  // structure to contain raw information on the EDID
  EDID_BUFFER sEDID;

  // structure to contain derived information from EDID
  DDC_INFO sDDCInfo;

  // structure to contain infromation on the monitor max resolutiom
  // and max refresh rate. (This is OS dependant)
  MONITOR_INFO sMonitorInfo;

  // structure to contain infromation on the monitor max resolutiom
  // and max refresh rate. (This is set by user through Control Panel)
  MONITOR_INFO sUserMonitorInfo;

  // array of all possible adjustment structures for a given display
  // storing the defaults and states for the given mode
  HW_ADJUSTMENT aAdjustment[32];

  // array of actual states for adjustments for this display
  LONG alAdjustments[32];

  // the requested low refresh rate which not set yet. 
  ULONG ulRequestedRefreshRate; //Set only by DALCWDDE_DISPLAYSETREFRESHRATE
  ULONG ulCurrentRefreshRate;   //Set by vSetDisplayPMRefreshRate(), and vControllerSetMode()
  ULONG ulDefaultRefreshRate;   //Initilized at Display Enable time.

  // buffer for per-GDO restricted modes from registry
  ULONG ulRestrictedModesCount;
  UCHAR aRestrictedModes[MAX_GDO_RESTRICTED_MODE_LIST];
} DEVGDO,  FAR *LPDEVGDO;

//
// DAL_MODEINFO is the DAL's structure to extend the properties of a mode
//
//


// todo - in what field do these flags go? [GG] 23/03/00
#define DALMODE_CRT_DTHASREADFROMREGISTRY        0x00000001
#define DALMODE_CRT_DTREGISTRYEXIST              0x00000002
#define DALMODE_DFP_DTHASREADFROMREGISTRY        0x00000004
#define DALMODE_DFP_DTREGISTRYEXIST              0x00000008

#define DALMODEFLAG_OSVIEWRESTRICTED             0x40000000
#define DALMODEFLAG_REQUIRESTIMINGS              0x80000000


typedef struct _DAL_MODEINFO
{
  // structure containing height, width, bpp, and refresh rate for the mode
  DEVMODE_INFO sDevModeInfo;

  // bit vector specifying the displays that can be enabled in this mode
  // on a specific graphics controller, referenced by index.
  ULONG aulSupportedDisplays[MAX_NUMBER_CONTROLLERS];

  // bit vector of controllers supporting this mode.
  ULONG ulControllers;

  // DAL mode flags
  ULONG ulFlags;
} DAL_MODEINFO, FAR * LPDAL_MODEINFO;


typedef struct _CWDDEMODEENUM
{
  // index of the last enumerated value in the call.
  ULONG ulEnumIndex;

  // filter to be used in the enumeration of the modes
  ULONG ulFilter;

  // controller used for the enumeration
  ULONG ulController;

  // driver whom is performing the enumeration
  ULONG ulDriverID;

  // pointer to the last valid enumeration location.
  LPDAL_MODEINFO lpDalMode;
} CWDDEMODEENUM;


#define DRIVERDATA_SAVEDATA         0x00000001L
#define DRIVERDATA_SAVEGAMMARED     0x00000002L
#define DRIVERDATA_SAVEGAMMAGREEN   0x00000004L
#define DRIVERDATA_SAVEGAMMABLUE    0x00000008L
#define DRIVERDATA_SAVEGAMMA        (DRIVERDATA_SAVEGAMMARED |\
                                    DRIVERDATA_SAVEGAMMAGREEN |\
                                    DRIVERDATA_SAVEGAMMABLUE)
#define DRIVERDATA_ENABLED          0x00000010L
#define DRIVERDATA_USEGAMEGAMMA     0x00000020L
#define DRIVERDATA_DDEXCLUSIVEMODE  0x00000040L
#define DRIVERDATA_REQUESTEDTO16BPP 0x00000080L
#define DRIVERDATA_FORCEDTO16BPP    0x00000100L
#define DRIVERDATA_ACTIVE           0x00000200L

typedef struct _DRIVERDATA
{
  // bit flags indicating the state of the driver
  ULONG ulFlags;

  // flag to indicate that DAL should fail to validate and set subsiquent
  // mode calls until a DALGetDefaultMode call is made.

?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
国产精品成人免费| 亚洲自拍偷拍网站| 国产一区二区三区在线观看免费视频 | 亚洲一区二区欧美日韩| 久久久www免费人成精品| 欧美电视剧在线看免费| 久久综合九色综合97_久久久| 欧美日韩aaa| 日韩三级中文字幕| 欧美精品一卡两卡| 欧美久久久一区| 精品国精品自拍自在线| 日韩一区二区三区四区| 麻豆一区二区三| 欧美成人aa大片| 丰满少妇久久久久久久| 亚洲精品免费电影| 欧美一区二区观看视频| 国产精品一卡二卡在线观看| 亚洲欧美日韩综合aⅴ视频| 欧美影院一区二区| 黄一区二区三区| 亚洲欧美视频在线观看视频| 91精品久久久久久久99蜜桃| 国产激情视频一区二区在线观看 | 午夜精品久久久久久久久| 精品国产乱码久久| 色综合久久88色综合天天免费| 丝袜国产日韩另类美女| 中文子幕无线码一区tr| 欧美日韩欧美一区二区| 国产激情偷乱视频一区二区三区| 亚洲图片有声小说| 国产偷v国产偷v亚洲高清| 欧美日韩精品欧美日韩精品一综合| 国产在线播精品第三| 亚洲欧美日韩国产成人精品影院| 日韩欧美精品在线| 色哟哟在线观看一区二区三区| 久久草av在线| 亚洲国产精品一区二区www| 久久精品欧美一区二区三区不卡| 欧美伦理视频网站| 不卡大黄网站免费看| 国产精品中文字幕日韩精品| 五月婷婷激情综合网| 中文字幕制服丝袜一区二区三区| 日韩精品一区二区三区中文精品| 在线免费观看一区| 99久久精品免费看| 欧美理论在线播放| 爽好多水快深点欧美视频| 国产欧美日韩在线观看| 韩国av一区二区三区四区| 精品日韩在线观看| 91亚洲精品久久久蜜桃| 中文字幕在线不卡一区| 色狠狠综合天天综合综合| 亚洲一卡二卡三卡四卡五卡| 国产suv精品一区二区三区| 国产精品家庭影院| 亚洲在线视频网站| 欧美激情一区二区在线| 日韩午夜精品电影| 7777精品伊人久久久大香线蕉的| 在线影院国内精品| 一本色道久久综合狠狠躁的推荐 | 亚洲国产精品成人综合 | 国产婷婷一区二区| 精品久久久久久无| 91精品黄色片免费大全| 日韩一级精品视频在线观看| 91麻豆精品国产91久久久久久久久| 欧美调教femdomvk| 欧美日韩三级视频| 欧美精品一二三| 欧美裸体一区二区三区| 91精品国产色综合久久不卡蜜臀| 7777精品伊人久久久大香线蕉经典版下载 | 一区二区三区成人在线视频| 日韩毛片在线免费观看| 亚洲视频香蕉人妖| 亚洲狼人国产精品| 午夜伦理一区二区| 久久精品国产亚洲一区二区三区 | 天天操天天色综合| 日韩av一区二区在线影视| 轻轻草成人在线| 精品在线免费观看| 国产成人精品一区二区三区四区 | 懂色av一区二区三区蜜臀 | 国产精品久久久久影院| 日韩欧美精品在线| 欧美亚洲综合另类| 欧美日韩国产电影| 91免费版pro下载短视频| 久久电影网电视剧免费观看| 粉嫩av一区二区三区在线播放| 国产三级一区二区三区| 2020国产精品| 亚洲国产高清不卡| 一级做a爱片久久| 日韩电影免费一区| 国产黄人亚洲片| 一本色道**综合亚洲精品蜜桃冫| 欧美午夜精品电影| 久久综合狠狠综合久久综合88 | 99国产精品国产精品久久| 91浏览器打开| 欧美一区二区三级| 国产日韩欧美在线一区| 一区二区在线观看不卡| 美女久久久精品| 色婷婷综合久久久中文字幕| 欧美高清激情brazzers| 亚洲视频在线一区| 免费日韩伦理电影| 91在线视频18| 精品国产伦一区二区三区观看体验| 中文字幕一区av| 久久精品国产秦先生| 91蜜桃婷婷狠狠久久综合9色| 日韩一级在线观看| 亚洲免费观看高清在线观看| 美女www一区二区| 色播五月激情综合网| 亚洲精品在线免费观看视频| 亚洲超碰97人人做人人爱| 国产成人鲁色资源国产91色综| 欧美日韩免费在线视频| 中文字幕永久在线不卡| 蜜桃视频一区二区三区| 色8久久人人97超碰香蕉987| 国产亚洲成年网址在线观看| 丝袜诱惑亚洲看片| 99久久精品国产毛片| 久久精品视频一区二区| 日韩国产精品久久久久久亚洲| 国产不卡视频在线观看| 久久超级碰视频| 欧美日韩一区二区在线观看视频| 激情综合网av| 精品免费一区二区三区| 青青青爽久久午夜综合久久午夜| 91色在线porny| 中文字幕亚洲区| 99精品欧美一区| 欧美精彩视频一区二区三区| 男女男精品视频| 国产偷国产偷精品高清尤物| 亚洲一区二区三区三| 欧美一级艳片视频免费观看| 香蕉久久一区二区不卡无毒影院 | 亚洲视频电影在线| 国产福利一区二区三区| 日韩欧美二区三区| 日本不卡123| 91精品国产一区二区人妖| 亚洲国产精品麻豆| 欧美日韩国产一区| 亚洲香肠在线观看| 欧美亚洲愉拍一区二区| 一区二区三区中文免费| 日本道色综合久久| 中文字幕日韩av资源站| 成人av电影在线| 中文字幕在线不卡视频| 色综合天天狠狠| 一区二区三区免费观看| 在线一区二区三区四区五区 | 乱中年女人伦av一区二区| 日韩手机在线导航| 九色综合狠狠综合久久| xf在线a精品一区二区视频网站| 看电影不卡的网站| 精品国产三级a在线观看| 国精产品一区一区三区mba视频| 精品国产sm最大网站免费看| 国产精品影音先锋| 国产精品国产三级国产aⅴ中文 | 高清日韩电视剧大全免费| 中文字幕不卡在线播放| 一本一道久久a久久精品| 亚洲成人福利片| 日韩一区二区三区视频在线观看 | 久久激五月天综合精品| 久久夜色精品一区| heyzo一本久久综合| 亚洲自拍另类综合| 日韩一区二区三区精品视频| 国产精品一区久久久久| 国产精品成人网| 欧美猛男超大videosgay| 狠狠网亚洲精品| 国产精品盗摄一区二区三区| 欧美精品第1页| 国产suv一区二区三区88区| 一区二区三区久久久| 日韩精品一区在线观看| av电影天堂一区二区在线观看|