⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 dual_struct.h

📁 realtek LCD monitor, TV开发源代码
💻 H
字号:
//**********************************************************************************************************
//  The  Software  is  proprietary,  confidential,  and  valuable to Realtek Semiconductor
//  Corporation  ("Realtek").  All  rights, including but not limited  to  copyrights,
//  patents,  trademarks, trade secrets, mask work rights, and other similar rights and interests,
//  are reserved to Realtek. Without  prior  written  consent  from  Realtek,  copying, reproduction,
//  modification,  distribution,  or  otherwise  is strictly prohibited. The Software  shall  be
//  kept  strictly  in  confidence,  and  shall  not be  disclosed to or otherwise accessed by
//  any third party. @ <2003> - <2008>   The Software is provided "AS IS" without any warranty of any kind,
//  express, implied, statutory or otherwise.
//**********************************************************************************************************
//----------------------------------------------------------------------------------------------------
// ID Code      : Struct.h No.0000
// Update Note  :
//----------------------------------------------------------------------------------------------------

//--------------------------------------------------
// Definitions of Xdata Address
//--------------------------------------------------
#if(_MCU_TYPE == _REALTEK_EMBEDDED)
#define _STRUCT_XDATA_START_ADDRESS         0xFB00
#else
#define _STRUCT_XDATA_START_ADDRESS         0xF800
#endif

#define _MODE_USER_XDATA_ADDRESS            (_STRUCT_XDATA_START_ADDRESS)
#define _SYSTEM_XDATA_ADDRESS               (_MODE_USER_XDATA_ADDRESS + sizeof(stModeUserData))

#define _GLOBAL_XDATA0_ADDRESS              (_SYSTEM_XDATA_ADDRESS + sizeof(stSystemData))
#define _GLOBAL_XDATA1_ADDRESS              (_GLOBAL_XDATA0_ADDRESS + sizeof(stGlobalData0))
#define _GLOBAL_XDATA3_ADDRESS              (_GLOBAL_XDATA1_ADDRESS + sizeof(stGlobalData1))
#define _GLOBAL_XDATA4_ADDRESS              (_GLOBAL_XDATA3_ADDRESS + sizeof(stGlobalData3))
#define _BLACK_LEVEL_XDATA_ADDRESS          (_GLOBAL_XDATA4_ADDRESS + sizeof(stGlobalData4))

#define _ADC_XDATA_ADDRESS                  (_BLACK_LEVEL_XDATA_ADDRESS + sizeof(stBlackLevelData))
#define _PICTURE_XDATA_ADDRESS              (_ADC_XDATA_ADDRESS + sizeof(stAdcData))
#define _COLOR_XDATA_ADDRESS                (_PICTURE_XDATA_ADDRESS + sizeof(stPictureData))
#define _MODE_INFO_XDATA_ADDRESS            (_COLOR_XDATA_ADDRESS + sizeof(stColorData))
#define _DISPLAY_INFO_XDATA_ADDRESS         (_MODE_INFO_XDATA_ADDRESS + sizeof(stModeInfo))

#define _FLASH_FREE_PAGE_XDATA_ADDRESS      (_DISPLAY_INFO_XDATA_ADDRESS + sizeof(stDisplayInfo))
#define _FLASH_EDID_ADDR_XDATA_ADDRESS      (_FLASH_FREE_PAGE_XDATA_ADDRESS + sizeof(ucFlashFreePage))
#define _FLASH_MOVE_PAGE_XDATA_ADDRESS      (_FLASH_EDID_ADDR_XDATA_ADDRESS + sizeof(ucFlashEDIDAddr))
#define _FLASH_CODE_XDATA_ADDRESS           (_FLASH_MOVE_PAGE_XDATA_ADDRESS + sizeof(ulFlashMovePage))
#define _FLASH_PAGE_XDATA_ADDRESS           (_FLASH_CODE_XDATA_ADDRESS + sizeof(pFlashCode))
#define _FLASH_ADDR_XDATA_ADDRESS           (_FLASH_PAGE_XDATA_ADDRESS + sizeof(pFlashPage))
#define _FLASH_TEMP_XDATA_ADDRESS           (_FLASH_ADDR_XDATA_ADDRESS + sizeof(pFlashAddr))

#define _STRUCT_XDATA_END_ADDRESS           (_FLASH_TEMP_XDATA_ADDRESS + sizeof(pFlashTemp))

//--------------------------------------------------
// Struct Type
//--------------------------------------------------
typedef struct
{
    BYTE ModeNum;                   // Mode Number
    WORD IHFreq;                    // Input Horizontal Frequency
    WORD IVFreq;                    // Input Vertical Frequency

} StructModeUserFIFODataType;
//-------------------------------------------------------------------------------------------//
typedef struct
{
    BYTE ModeNum;                   // Mode Number
    BYTE FirstAuto;                 // First Auto
    WORD IHFreq;                    // Input Horizontal Frequency
    WORD IVFreq;                    // Input Vertical Frequency
    WORD HPosition;                 // Horizontal Position
    WORD VPosition;                 // Vertical Position
    WORD Clock;                     // Clock Adjust
    BYTE Phase;                     // Phase Adjust
    WORD CenterHPos;                // Horizontal Position
    WORD CenterVPos;                // Vertical Position
    WORD CenterClock;               // Clock Adjust
    BYTE CenterPhase;               // Phase Adjust


}StructModeUserDataType;

//-------------------------------------------------------------------------------------------//
typedef struct
{
    BYTE MonitorFlag;               // Bit 7: Monitor Power Status
                                    // Bit 6: Reserved
                                    // Bit 5: Reserved
                                    // Bit 4: ddcci  //cyyeh 20071221
                                    // Bit 3 ~ 0: Input Source Type
    BYTE SearchIndex;
    BYTE HStartBias;                // IHS Start Bias
    BYTE DcrSetting;

} StructSystemDataType;

//-------------------------------------------------------------------------------------------//
typedef struct
{
   BYTE PolarityFlag;              //
   WORD IHWidth;                   // Input Horizontal Width
   WORD IVHeight;                  // Input Vertical Height
   WORD IHFreq;                    // Input Horizontal Frequency
   WORD IVFreq;                    // Input Vertical Frequency
   BYTE IHFreqTolerance;           // Input Horizontal Frequency Tolerance
   BYTE IVFreqTolerance;           // Input Vertical Frequency Tolerance
   WORD IHTotal;                   // Input Horizontal Total Length
   WORD IVTotal;                   // Input Vertical Total Length
   WORD IHStartPos;                // Input Horizontal Start Position
   WORD IVStartPos;                // Input Vertical Start Position

}ModeTableType;
//-------------------------------------------------------------------------------------------//
typedef struct
{
   WORD DHTotal;                   // Display Horizontal Total Length
   WORD DHWidth;                   // Display Horizontal Width
   WORD DVHeight;                  // Display Vertical Height
   WORD DVStartPos;                // Display Vertical Start Position

}DisplayTableType;
//-------------------------------------------------------------------------------------------//
typedef struct
{
   BYTE ModeCurr;                  // Input Mode
   BYTE Polarity;                  // BIT0: H Polarity, Bit1: V Polarity
   WORD IHFreq;                    // Input Horizontal Frequency
   WORD IVFreq;                    // Input Vertical Frequency
   WORD IHTotal;                   // Input Horizontal Total Length
   WORD IVTotal;                   // Input Vertical Total Length
   WORD IHWidth;                   // Input Horizontal Width
   WORD IVHeight;                  // Input Vertical Height
   WORD IHStartPos;                // Input Horizontal Start Position
   WORD IVStartPos;                // Input Vertical Start Position
   WORD IHCount;                   // Input Horizontal Count Numbers
   WORD IHSyncPulseCount;          // Input Horizontal Sync Pulse Count Numbers

}ModeInformationType;
//-------------------------------------------------------------------------------------------//
typedef struct
{
   BYTE PanelStyle;                // Panel Style
   BYTE PanelConfig;               // Panel Configuration
   WORD DHStartPos;                // Display Horizontal Start Position
   WORD DHWidth;                   // Display Horizontal Width
   WORD DHEndPos;                  // Display Horizontal End Position
   WORD DHTotal;                   // Display Horizontal Total Clock Number in One Display Line
   WORD DHTotalMax;                // Maxinum Display Horizontal Total Clock Number in One Display Line
   WORD DHTotalMin;                // Mininum Display Horizontal Total Clock Number in One Display Line
   WORD DVStartPos;                // Display Vertical Start Position
   WORD DVHeight;                  // Display Vertical Height
   WORD DVEndPos;                  // Display Vertical End Position
   WORD DVTotal;                   // Display Vertical Total Line Number in One Frame
   WORD DVTotalMax;                // Maxinum Display Vertical Total Line Number in One Frame
   WORD DVTotalMin;                // Mininum Display Vertical Total Line Number in One Frame
   BYTE DHSyncWidth;               // Display H Sync Width
   BYTE DVSyncHeight;              // Display V Sync Height
   WORD PixelClock;                // Typical Pixel Clock in MHz
   WORD PixelClockMax;             // Maxinum Pixel Clock in MHz
   WORD PixelClockMin;             // Mininum Pixel Clock in MHz

}PanelType;
//-------------------------------------------------------------------------------------------//
typedef struct
{
   BYTE ColorTemp9300Red;          // Bludish
   BYTE ColorTemp9300Green;        // Bludish
   BYTE ColorTemp9300Blue;         // Bludish
   BYTE ColorTemp7500Red;          // Reddish
   BYTE ColorTemp7500Green;        // Reddish
   BYTE ColorTemp7500Blue;         // Reddish
   BYTE ColorTemp6500Red;          // Normal
   BYTE ColorTemp6500Green;        // Normal
   BYTE ColorTemp6500Blue;         // Normal
   BYTE ColorTempsRGBRed;          // sRGB
   BYTE ColorTempsRGBGreen;        // sRGB
   BYTE ColorTempsRGBBlue;         // sRGB
   BYTE ColorTempUserRed;          // User
   BYTE ColorTempUserGreen;        // User
   BYTE ColorTempUserBlue;         // User
   BYTE ColorTempSenseyeRed;       // Senseye
   BYTE ColorTempSenseyeGreen;     // Senseye
   BYTE ColorTempSenseyeBlue;      // Senseye

}StructColorTempDataType;
//-------------------------------------------------------------------------------------------//
typedef struct
{/*
   BYTE StandardContrast;       // _STANDARD_PICTURE
   BYTE StandardBackLight;      // _STANDARD_PICTURE
   BYTE StandardSharpness;      // _STANDARD_PICTURE
   BYTE MovieContrast;          // _MOVIE_PICTURE
   BYTE MovieBackLight;         // _MOVIE_PICTURE
   BYTE MovieSharpness;         // _MOVIE_PICTURE
   BYTE DynamicContrast;        // _DYNAMIC_PICTURE
   BYTE DynamicBackLight;       // _DYNAMIC_PICTURE
   BYTE DynamicSharpness;       // _DYNAMIC_PICTURE
   BYTE PhotoContrast;          // _PHOTO_PICTURE
   BYTE PhotoBackLight;         // _PHOTO_PICTURE
   BYTE PhotoSharpness;         // _PHOTO_PICTURE
   BYTE SrgbContrast;           // _SRGB_PICTURE
   BYTE SrgbBackLight;          // _SRGB_PICTURE
   BYTE SrgboSharpness;         // _SEGB_PICTURE
*/
//***************ryan 081121****************************
   BYTE StandardContrast;       // _STANDARD_PICTURE
   BYTE StandardBackLight;      // _STANDARD_PICTURE
   BYTE StandardSharpness;      // _STANDARD_PICTURE
   BYTE OfficeContrast;        // _DYNAMIC_PICTURE
   BYTE OfficeBackLight;       // _DYNAMIC_PICTURE
   BYTE OfficeSharpness;       // _DYNAMIC_PICTURE
   BYTE MovieContrast;          // _MOVIE_PICTURE
   BYTE MovieBackLight;         // _MOVIE_PICTURE
   BYTE MovieSharpness;         // _MOVIE_PICTURE
   BYTE GameContrast;          // _PHOTO_PICTURE
   BYTE GameBackLight;         // _PHOTO_PICTURE
   BYTE GameSharpness;         // _PHOTO_PICTURE
   BYTE SceneryContrast;           // _SRGB_PICTURE
   BYTE SceneryBackLight;          // _SRGB_PICTURE
   BYTE ScenerySharpness;         // _SEGB_PICTURE
//***************ryan 081121****************************
}StructSenseyeDataType;
//-------------------------------------------------------------------------------------------//
typedef struct
{
   BYTE MonitorFlag;               // Bit 7: Monitor Power Status
                                   // Bit 6: Factory Mode Status
                                   // Bit 5: DCR Status
                                   // Bit 4: DDCCI Status
                                   // Bit 3: OD Status
                                   // Bit 2: Senseye Mode Status
                                   // Bit 1: Reserve
                                   // Bit 0: Display Function Status
   BYTE ColorTemp;
   BYTE Language;
   BYTE StandardModeCT;
   BYTE SettingFlag1;
   BYTE SettingFlag2;

} StructGlobalData0Type;
//-------------------------------------------------------------------------------------------//
typedef struct
{
#if(_OSD_TYPE == _BENQ_OSD)
   BYTE OsdTimeoutBenq;
   WORD OsdHPosBenq;
   WORD OsdVPosBenq;
#else
   BYTE OsdTimeoutGeneric;
   WORD OsdHPosGeneric;
   WORD OsdVPosGeneric;
#endif
}StructGlobalData1Type;
//-------------------------------------------------------------------------------------------//
typedef struct
{
   BYTE LanguageType;
   BYTE UserFIFOMode;
   BYTE OSDLock;

}StructGlobalData3Type;
//-------------------------------------------------------------------------------------------//
typedef struct
{
   BYTE BurnIn;
#if(_OSD_TYPE == _BENQ_OSD)
   BYTE VolumeBenq;
#else
   BYTE VolumeGeneric;
#endif
   BYTE Mute;
   BYTE PictureMode;

}StructGlobalData4Type;
//-------------------------------------------------------------------------------------------//
typedef struct
{
   BYTE AdcGain[3];
   BYTE AdcOffset[3];
   BYTE AdcPGA;

}StructAdcDataType;
//-------------------------------------------------------------------------------------------//
typedef struct
{
   BYTE Contrast[3];

}StructColorDataType;

//-------------------------------------------------------------------------------------------//
typedef struct
{
   BYTE BrightVga[3];
   BYTE BrightDvi[3];

}StructBlackLevelDataType;
//-------------------------------------------------------------------------------------------//
typedef struct
{
   BYTE Contrast;
   BYTE BackLight;
   BYTE Sharpness;

}StructPictureDataType;
//-------------------------------------------------------------------------------------------//
struct CTimerEventTable
{
    WORD Time;
    void (*Event)(void);

};

//--------------------------------------------------
// Extern Global Struct Variables
//--------------------------------------------------
extern StructModeUserDataType       xdata   stModeUserData;
extern StructSystemDataType         xdata   stSystemData;
extern StructGlobalData0Type        xdata   stGlobalData0;//0727 Modified For Code Size
extern StructGlobalData1Type        xdata   stGlobalData1;
extern StructGlobalData3Type        xdata   stGlobalData3;
extern StructGlobalData4Type        xdata   stGlobalData4;
extern StructBlackLevelDataType     xdata   stBlackLevelData;

extern StructAdcDataType            xdata   stAdcData;
extern StructPictureDataType        xdata   stPictureData;
extern StructColorDataType          xdata   stColorData;

extern ModeInformationType          xdata   stModeInfo;
extern DisplayTableType             xdata   stDisplayInfo;

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -