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

📄 rprocrtc.h

📁 此代码为WCE5.0下显示器的源代码
💻 H
📖 第 1 页 / 共 2 页
字号:
    USHORT      usCRTC_V_SYNC_START;    // Vertical sync start

    //PLL stuff 10 bit for extended PLL
    //for secondary CRTC there is only extended

    USHORT      usPLL_REF_DIV;
    USHORT      usPLL_FB_DIV;           // This is for VClock (CRTC1 & CRTC2),
    UCHAR       ucPLL_POST_DIV;

} ADJUSTMENT_PARAMETERS, FAR *LPADJUSTMENT_PARAMETERS;
*/
//
// Prototypes for functions supplied by CRTCRPRO.C.
//

VOID FAR RageProDisable(
    HGCO hGCO
    );

BOOL FAR RageProEnable(
    HDDL hDDL,
    HGCO hGCO,
    LPHW_ASIC_ID lpHwAsicID,
    LPHW_CONTROLLER_ENABLEDATA lpEnableData
    );

BOOL FAR RageProEnumerateStandardModes(
    HGCO hGCO,
    LPDEVMODE_INFO lpMI,
    ULONG ulController,
    ULONG ulModeIndex
    );

VOID FAR RageProGetGammaCorrection(
    HGCO hGCO,
    ULONG ulController,
    LPDEVCLUT lpaGamma
    );

VOID FAR RageProGetTextCursorBlinkingAdjustment(
    HGCO hGCO,
    LPHW_ADJUSTMENT lpAdjustment
    );

VOID FAR RageProGetOverlayGammaAdjustment(
    HGCO hGCO,
    LPHW_ADJUSTMENT lpAdjustment
    );

BOOL FAR RageProIsNonStandardModeSupported(
    HGCO hGCO,
    LPDEVMODE_INFO lpMI,
    ULONG ulController
    );

VOID FAR RageProPreModeChange(
    HGCO hGCO,
    LPDEVMODE_INFO lpMI,
    ULONG ulControllers
    );

VOID FAR RageProPostModeChange(
    HGCO hGCO,
    LPDEVMODE_INFO lpMI,
    ULONG ulControllers
    );

VOID FAR RageProSetGammaCorrection(
    HGCO hGCO,
    ULONG ulController,
    LPDEVCLUT lpaGamma
    );

BOOL FAR RageProSetMode(
    HGCO hGCO,
    LPDEVMODE_INFO lpMI,
    ULONG ulController,
    ULONG  ulDisplayOffset,
    ULONG ulDisplayPitch,
    ULONG ulDisplayTypes
    );

VOID FAR RageProSetPalette(
    HGCO hGCO,
    ULONG ulController,
    LPDEVCLUT lpPalette,
    ULONG ulStart,
    ULONG ulLength
    );

VOID FAR RageProSetTextCursorBlinkingAdjustment(
    HGCO hGCO,
    LONG lAdjust
    );

VOID FAR RageProSetOverlayGammaAdjustment(
    HGCO hGCO,
    LONG lAdjust
    );

VOID FAR RageProGetCrtcTimings(
    HGCO hGCO,
    ULONG ulController,
    LPGCO_CONTROLLER_TIMINGS lpGcoControllerTimings
    );

UCHAR GcoPLLReadByte(HGCO hGCO, UCHAR ucAddress);

VOID GcoPLLWriteByte(
    HGCO hGCO,
    UCHAR ucAddress,
    UCHAR ucData,
    UCHAR ucMask
    );

VOID GcoPLLGetDividers(
        HGCO hGCO,
        ULONG usFrequency,
        ULONG ulPostDivider,
        LPPLL_DIVIDERS lpPLLDividers);

ULONG GcoGetPixelDepthBits(
    ULONG ulPixelDepth
    );

ULONG GcoGetResolutionBits(
    ULONG ulHorizontal
    );

VOID DefineFreqConstants(
    ULONG ulReferenceFrequency,
    LPFREQ_CONSTANTS lpFreqConstants
    );

USHORT Minimum(USHORT usValue1, USHORT usValue2);

UCHAR Maximum(UCHAR ucValue1, UCHAR ucValue2);

UCHAR MinBitsRequired(ULONG ulValue);

ULONG GetPostDivider(UCHAR ucPostDividerBitValue);

UCHAR GetPostDividerBitValue( UCHAR ucPostDivider );

BOOL ProgramDspFIFO(HGCO hGCO, ULONG ulBitsPerPixel, ULONG ulController, ULONG ulMemClkDivider);

VOID vProgramDynamicPMMode(HGCO             hGCO,
                           ULONG            ulController,
                           ULONG            ulDisplayType,
                           LPDEVMODE_INFO   lpMI);


VOID ProgramExtPLL(HGCO hGCO, ULONG ulController, LPPLL_DIVIDERS lpPLLDividers);

VOID ExtVxPLLWriteUpdate(HGCO hGCO, ULONG ulController);

BOOL ExtVxPLLReadUpdateComplete(HGCO hGCO, ULONG ulController);

VOID ProgramRegPLL(HGCO hGCO, ULONG ulController, LPPLL_DIVIDERS lpPLLDividers);

BOOL LoadCrtOnlyModeTableInfo( LPDEVMODE_INFO lpMI, LPBIOS_GENERAL_CRTC_TIMING lpBiosGeneralCrtcTiming);


VOID TranslateLcdCenter2BiosCrtcTimings(LPLCD_MODE_TABLE_CENTER lpLcdModeTableCenter,
                                        LPBIOS_GENERAL_CRTC_TIMING lpBiosGeneralCrtcTiming);

VOID LcdExpBiosCrtcTimings(HGCO hGCO, LPBIOS_GENERAL_CRTC_TIMING lpBiosGeneralCrtcTiming,
                           USHORT usOffset2ExpParamTable, ULONG ulDisplayTypes);

VOID TranslateTvoBiosCrtcTimings(LPTVO_MODE_TABLE lpTvoModeTable,
                                LPBIOS_GENERAL_CRTC_TIMING lpBiosGeneralCrtcTiming);

BOOL LoadLcdGeneralModeTableTimings(HGCO hGCO, LPDEVMODE_INFO lpMI, LPULONG lpulDisplayTypes,
                                    LPBIOS_GENERAL_CRTC_TIMING lpBiosGeneralCrtcTiming);

//
//BOOL LoadLcdGeneralModeTableTimings(HGCO hGCO, DEVMODE_INFO *pMI, ULONG ulDisplayTypes,
//                                    BIOS_GENERAL_CRTC_TIMING *pBiosGeneralCrtcTiming);

BOOL LoadTvoGeneralModeTableTimings(HGCO hGCO, LPDEVMODE_INFO lpMI, ULONG ulDisplayTypes,
                                    LPBIOS_GENERAL_CRTC_TIMING lpBiosGeneralCrtcTiming);

VOID ProgramDacRegisters(HGCO hGCO, ULONG ulController);

ULONG VClockValue(HGCO hGCO, ULONG ulController);

ULONG XClockValueX1024(HGCO hGCO);

UCHAR GetPrimaryActualFifoSizeUsed(HGCO hGCO, LPULONG lpulExpnasionLatency);

ULONG DisplayFifoOnPoint(HGCO hGCO, ULONG ulController);

VOID RageProAcceleratorToVgaMode(HGCO hGCO);

VOID GetPanelInformationTable(HGCO hGCO, USHORT usOffsetToLcdParameterTable,
                              LPUSHORT lpusModeTableOffset, LPPANEL_INFO lpPanelInfo);

ULONG GetDefualtLcdRefreshRate(UCHAR ucPanelRefreshRateData);

USHORT TranslateLcdRefreshRate(ULONG ulDisplayFrequency);

BOOL FAR RageProSetAdjustmentTimings(HGCO hGCO, ULONG ulController, LPADJUSTMENT_PARAMETERS lpAdjustment);

BOOL FAR RageProGetMultimediaTable(HGCO hGCO, LPUCHAR lpucBuffer, LPULONG lpulBytesReturned);

BOOL FAR RageProGetHardwareInfoTable(HGCO hGCO, LPUCHAR lpucBuffer, LPULONG lpulBytesReturned);

//BOOL FAR RageProGetMultimediaTable(HGCO hGCO);

VOID FAR RageProSetDisplayOffset(HGCO hGCO, ULONG ulController, ULONG ulDisplayOffset);

BOOL InitializeBiosInfoStructure(HGCO hGCO);

VOID RageProGetInfo(HGCO hGCO, ULONG ulController, LPGCO_QUERY_STRUCTURE lpGcoQueryStructure);

ULONG GetActualPixWidth(HGCO hGCO, ULONG ulBitsPerPixel);

ULONG ValidatePixelClock(ULONG ulPixelClockObtained, ULONG ulPixelClockCalculated);

VOID FAR RageMobilityEnableOverlay(HGCO hGCO, ULONG ulController);

VOID FAR RageProSetDFPSize(HGCO hGCO, ULONG ulHorPanelSize, ULONG ulVerPanelSize, ULONG ulDFPType);

BOOL LoadDFPModeTableInfo(HGCO hGCO, LPDEVMODE_INFO lpMI, LPULONG lpulDisplayTypes,
                          LPBIOS_GENERAL_CRTC_TIMING lpBiosGeneralCrtcTiming);

VOID ProgramOverlayClock(HGCO hGCO, ULONG ulController, ULONG ulPixelClock);

VOID FAR RageProGetCrtcLine(HGCO hGCO, ULONG ulController, LPULONG lpulVCrntLine);

VOID FAR RageProUpdateBIOSDisplayInfo(HGCO hGCO, LPULONG lpulDisplayTypesMap,
                                      ULONG ulCount, ULONG ulDetectedDisplayTypes,
                                      ULONG    ulMiscInfo);

VOID vGetLCDGCORegFlag(HGCO hGCO);

ULONG FAR RageProGetCRC(HGCO hGCO, ULONG ulController, ULONG ulGetCRCFlag);

ULONG FAR RageProGetHardwareData(HGCO hGCO, ULONG ulOptionFlag,ULONG ulController, LPGCO_HW_REGISTER lpsHwRegister);

BOOL FAR RageProGetModeTiming(HGCO hGCO, 
                              ULONG ulController, 
                              LPDEVMODE_INFO lpMode, 
                              LPDAL_CRTC_TIMING lpDalCrtcTiming);

#endif // _RPROCRTC_H_

⌨️ 快捷键说明

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