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

📄 rtd2533b_osd.c

📁 Realtek LCD monitor chip RTD25xx source code
💻 C
📖 第 1 页 / 共 5 页
字号:
void COsdMenuSubHPosition(void)
{
    CLR_KEYREPEATENABLE();
    ucOsdEventMsg = _SAVE_EE_MODEUSERDATA_MSG;
    ucOsdState = _MENU_HPOSITION;
    COsdDispClearText(ROW(21), COL(5), 12, 2);
}

void COsdLeftSubHPosition(void)
{
    SET_KEYREPEATENABLE();
    stModeUserData.HPosition = COsdFxDetOverRange(stModeUserData.HPosition, COsdFxGetHPositionRange(_GET_HPOSITIONRANGE_MAX), COsdFxGetHPositionRange(_GET_HPOSITIONRANGE_MIN), _DET_OVERRANGE_MAX);
    COsdDispFullSlider(ROW(22), COL(5), 12, stModeUserData.HPosition, _HPOSITION_BIAS * 2, stModeUserCenterData.CenterHPos - _HPOSITION_BIAS, _CP_WHITE, _CP_WHITE);
    CAdjustHPosition();
}

void COsdRightSubHPosition(void)
{
    SET_KEYREPEATENABLE();
    stModeUserData.HPosition = COsdFxDetOverRange(stModeUserData.HPosition, COsdFxGetHPositionRange(_GET_HPOSITIONRANGE_MAX), COsdFxGetHPositionRange(_GET_HPOSITIONRANGE_MIN), _DET_OVERRANGE_MIN);
    COsdDispFullSlider(ROW(22), COL(5), 12, stModeUserData.HPosition, _HPOSITION_BIAS * 2, stModeUserCenterData.CenterHPos - _HPOSITION_BIAS, _CP_WHITE, _CP_WHITE);
    CAdjustHPosition();
}

void COsdExitSubHPosition(void)
{
    COsdMenuSubHPosition();
}

//----------------------------------------------------------------------------------------------------
// OSD "SubVPosition" Operation
//----------------------------------------------------------------------------------------------------
void COsdMenuSubVPosition(void)
{
    CLR_KEYREPEATENABLE();
    ucOsdEventMsg = _SAVE_EE_MODEUSERDATA_MSG;
    ucOsdState = _MENU_VPOSITION;
    COsdDispClearText(ROW(21), COL(5), 12, 2);
}

void COsdLeftSubVPosition(void)
{
    SET_KEYREPEATENABLE();
    stModeUserData.VPosition = COsdFxDetOverRange(stModeUserData.VPosition, COsdFxGetVPositionRange(_GET_VPOSITIONRANGE_MAX), COsdFxGetVPositionRange(_GET_VPOSITIONRANGE_MIN), _DET_OVERRANGE_MAX);
    COsdDispFullSlider(ROW(22), COL(5), 12, stModeUserData.VPosition, _VPOSITION_BIAS * 2, stModeUserCenterData.CenterVPos - _VPOSITION_BIAS, _CP_WHITE, _CP_WHITE);
    CAdjustVPosition();
}

void COsdRightSubVPosition(void)
{
    SET_KEYREPEATENABLE();
    stModeUserData.VPosition = COsdFxDetOverRange(stModeUserData.VPosition, COsdFxGetVPositionRange(_GET_VPOSITIONRANGE_MAX), COsdFxGetVPositionRange(_GET_VPOSITIONRANGE_MIN), _DET_OVERRANGE_MIN);
    COsdDispFullSlider(ROW(22), COL(5), 12, stModeUserData.VPosition, _VPOSITION_BIAS * 2, stModeUserCenterData.CenterVPos - _VPOSITION_BIAS, _CP_WHITE, _CP_WHITE);
    CAdjustVPosition();
}

void COsdExitSubVPosition(void)
{
    COsdMenuSubVPosition();
}

//----------------------------------------------------------------------------------------------------
// OSD "SubOsdHPos" Operation
//----------------------------------------------------------------------------------------------------
void COsdMenuSubOsdHPos(void)
{
    CLR_KEYREPEATENABLE();
    ucOsdState = _MENU_OSD_H_POS;
    COsdDispClearText(ROW(21), COL(5), 12, 2);
}

void COsdLeftSubOsdHPos(void)
{
    SET_KEYREPEATENABLE();
    stOsdUserData.OsdHPos = COsdFxDetOverRange(stOsdUserData.OsdHPos, 200, 0, _DET_OVERRANGE_MAX);
    COsdFxSetPosition(WIDTH(280), WIDTH(490), stOsdUserData.OsdHPos, stOsdUserData.OsdVPos, 0x01);
    COsdDispFullSlider(ROW(22), COL(5), 12, stOsdUserData.OsdHPos, 200, 0,_CP_WHITE, _CP_WHITE);
}

void COsdRightSubOsdHPos(void)
{
    SET_KEYREPEATENABLE();
    stOsdUserData.OsdHPos = COsdFxDetOverRange(stOsdUserData.OsdHPos, 200, 0, _DET_OVERRANGE_MIN);
    COsdFxSetPosition(WIDTH(280), WIDTH(490), stOsdUserData.OsdHPos, stOsdUserData.OsdVPos, 0x01);
    COsdDispFullSlider(ROW(22), COL(5), 12, stOsdUserData.OsdHPos, 200, 0,_CP_WHITE, _CP_WHITE);
}

void COsdExitSubOsdHPos(void)
{
    COsdMenuSubOsdHPos();
}

//----------------------------------------------------------------------------------------------------
// OSD "SubOsdVPos" Operation
//----------------------------------------------------------------------------------------------------
void COsdMenuSubOsdVPos(void)
{
    CLR_KEYREPEATENABLE();
    ucOsdState = _MENU_OSD_V_POS;
    COsdDispClearText(ROW(21), COL(5), 12, 2);
}

void COsdLeftSubOsdVPos(void)
{
    SET_KEYREPEATENABLE();
    stOsdUserData.OsdVPos = COsdFxDetOverRange(stOsdUserData.OsdVPos, 200, 0, _DET_OVERRANGE_MAX);
    COsdFxSetPosition(WIDTH(280), WIDTH(490), stOsdUserData.OsdHPos, stOsdUserData.OsdVPos, 0x01);
    COsdDispFullSlider(ROW(22), COL(5), 12, stOsdUserData.OsdVPos, 200, 0,_CP_WHITE, _CP_WHITE);
}

void COsdRightSubOsdVPos(void)
{
    SET_KEYREPEATENABLE();
    stOsdUserData.OsdVPos = COsdFxDetOverRange(stOsdUserData.OsdVPos, 200, 0, _DET_OVERRANGE_MIN);
    COsdFxSetPosition(WIDTH(280), WIDTH(490), stOsdUserData.OsdHPos, stOsdUserData.OsdVPos, 0x01);
    COsdDispFullSlider(ROW(22), COL(5), 12, stOsdUserData.OsdVPos, 200, 0,_CP_WHITE, _CP_WHITE);
}

void COsdExitSubOsdVPos(void)
{
    COsdMenuSubOsdVPos();
}

//----------------------------------------------------------------------------------------------------
// OSD "SubOsdTime" Operation
//----------------------------------------------------------------------------------------------------
void COsdMenuSubOsdTime(void)
{
    CLR_KEYREPEATENABLE();
    ucOsdState = _MENU_OSD_TIME;
    COsdDispClearText(ROW(21), COL(5), 12, 2);
}

void COsdLeftSubOsdTime(void)
{
    SET_KEYREPEATENABLE();
    stOsdUserData.OsdTimeout = COsdFxDetOverRange(stOsdUserData.OsdTimeout, 30, 3, _DET_OVERRANGE_MAX);
    COsdDispFullSlider(ROW(22), COL(5), 12, stOsdUserData.OsdTimeout, 27, 3,_CP_WHITE, _CP_WHITE);
}

void COsdRightSubOsdTime(void)
{
    SET_KEYREPEATENABLE();
    stOsdUserData.OsdTimeout = COsdFxDetOverRange(stOsdUserData.OsdTimeout, 30, 3, _DET_OVERRANGE_MIN);
    COsdDispFullSlider(ROW(22), COL(5), 12, stOsdUserData.OsdTimeout, 27, 3,_CP_WHITE, _CP_WHITE);
}

void COsdExitSubOsdTime(void)
{
    COsdMenuSubOsdTime();
}

//----------------------------------------------------------------------------------------------------
// OSD "SubEng" Operation
//----------------------------------------------------------------------------------------------------
void COsdMenuSubEng(void)
{
    stOsdUserData.Language = _ENGLISH;
    COsdDispLanguageBack();

}

void COsdLeftSubEng(void)
{
    COsdDispPenPoint(ROW(6), COL(0), ROW(9), COL(0), _MENU_SUB_FRAN);
}

void COsdRightSubEng(void)
{
    COsdDispPenPoint(ROW(6), COL(0), ROW(24), COL(0), _MENU_SUB_JAP);
}

void COsdExitSubEng(void)
{

}

//----------------------------------------------------------------------------------------------------
// OSD "SubFran" Operation
//----------------------------------------------------------------------------------------------------
void COsdMenuSubFran(void)
{
    stOsdUserData.Language = _FRENCH;
    COsdDispLanguageBack();
}

void COsdLeftSubFran(void)
{
    COsdDispPenPoint(ROW(9), COL(0), ROW(12), COL(0), _MENU_SUB_DEUT);
}

void COsdRightSubFran(void)
{
    COsdDispPenPoint(ROW(9), COL(0), ROW(6), COL(0), _MENU_SUB_ENG);
}

void COsdExitSubFran(void)
{

}

//----------------------------------------------------------------------------------------------------
// OSD "SubDeut" Operation
//----------------------------------------------------------------------------------------------------
void COsdMenuSubDeut(void)
{
    stOsdUserData.Language = _GERMAN;
    COsdDispLanguageBack();
}

void COsdLeftSubDeut(void)
{
    COsdDispPenPoint(ROW(12), COL(0), ROW(15), COL(0), _MENU_SUB_ESPA);
}

void COsdRightSubDeut(void)
{
    COsdDispPenPoint(ROW(12), COL(0), ROW(9), COL(0), _MENU_SUB_FRAN);
}

void COsdExitSubDeut(void)
{

}

//----------------------------------------------------------------------------------------------------
// OSD "SubEspa" Operation
//----------------------------------------------------------------------------------------------------
void COsdMenuSubEspa(void)
{
    stOsdUserData.Language = _SPANISH;
    COsdDispLanguageBack();
}

void COsdLeftSubEspa(void)
{
    COsdDispPenPoint(ROW(15), COL(0), ROW(18), COL(0), _MENU_SUB_CHI);
}

void COsdRightSubEspa(void)
{
    COsdDispPenPoint(ROW(15), COL(0), ROW(12), COL(0), _MENU_SUB_DEUT);
}

void COsdExitSubEspa(void)
{

}

//----------------------------------------------------------------------------------------------------
// OSD "SubChi" Operation
//----------------------------------------------------------------------------------------------------
void COsdMenuSubChi(void)
{
    CScalerLoadFont(tFONT_CHI, 0x60, 0x3A, _COMPRESS_FONT);
    stOsdUserData.Language = _CHINESE_T;
    COsdDispLanguageBack();
}

void COsdLeftSubChi(void)
{
    COsdDispPenPoint(ROW(18), COL(0), ROW(21), COL(0), _MENU_SUB_SIMPLE_CHI);
}

void COsdRightSubChi(void)
{
    COsdDispPenPoint(ROW(18), COL(0), ROW(15), COL(0), _MENU_SUB_ESPA);
}

void COsdExitSubChi(void)
{

}

//----------------------------------------------------------------------------------------------------
// OSD "SubSimpleChi" Operation
//----------------------------------------------------------------------------------------------------
void COsdMenuSubSimpleChi(void)
{
    CScalerLoadFont(tFONT_CHI, 0x60, 0x3A, _COMPRESS_FONT);
    stOsdUserData.Language = _CHINESE_S;
    COsdDispLanguageBack();
}

void COsdLeftSubSimpleChi(void)
{
    COsdDispPenPoint(ROW(21), COL(0), ROW(24), COL(0), _MENU_SUB_JAP);
}

void COsdRightSubSimpleChi(void)
{
    COsdDispPenPoint(ROW(21), COL(0), ROW(18), COL(0), _MENU_SUB_CHI);
}

void COsdExitSubSimpleChi(void)
{

}

//----------------------------------------------------------------------------------------------------
// OSD "SubJap" Operation
//----------------------------------------------------------------------------------------------------
void COsdMenuSubJap(void)
{
    CScalerLoadFont(tFONT_JAP, 0x60, 0x40, _COMPRESS_FONT);
    stOsdUserData.Language = _JAPAN;
    COsdDispLanguageBack();
}

void COsdLeftSubJap(void)
{
    COsdDispPenPoint(ROW(24), COL(0), ROW(6), COL(0), _MENU_SUB_ENG);
}

void COsdRightSubJap(void)
{
    COsdDispPenPoint(ROW(24), COL(0), ROW(21), COL(0), _MENU_SUB_SIMPLE_CHI);
}

void COsdExitSubJap(void)
{

}

//----------------------------------------------------------------------------------------------------
// OSD "SignalSource" Operation
//----------------------------------------------------------------------------------------------------
void COsdMenuSignalSource(void)
{
    COsdFxLoadText(ROW(22), COL(6), 0, tOSD_SIGNALITEM_STR);

    if(GET_INPUTSOURCE_TYPE() == _SOURCE_VGA)
        COsdDispArrowPoint(ROW(21), COL(8), ROW(21), COL(8), _MENU_D_SUB);
    else if(GET_INPUTSOURCE_TYPE() == _SOURCE_DVI)
        COsdDispArrowPoint(ROW(21), COL(8), ROW(21), COL(14), _MENU_DVI);
}

void COsdLeftSignalSource(void)
{
    COsdDispPenPoint(ROW(6), COL(0), ROW(9), COL(0),_MENU_RESET);
}

void COsdRightSignalSource(void)
{
    if(stOsdUserData.OsdSettingFlag & _BIT7)
        COsdDispPenPoint(ROW(6), COL(0), ROW(15), COL(0),_MENU_MISC_BACK);
    else
        COsdDispPenPoint(ROW(6), COL(0), ROW(12), COL(0),_MENU_MISC_BACK);
}

void COsdExitSignalSource(void)
{

}

//----------------------------------------------------------------------------------------------------
// OSD "Reset" Operation
//----------------------------------------------------------------------------------------------------
void COsdMenuReset(void)
{
    BYTE factorymodeflag;

    factorymodeflag = stOsdUserData.OsdSettingFlag;

    CEepromLoadDefault();

    stOsdUserData.OsdSettingFlag = factorymodeflag;
    CEepromSaveOsdUserData();
    CEepromSaveSystemData();

    CAdjustBrightness();
    CAdjustContrast();
    CAdjustBacklight();
    CAdjustAdcGainOffset();
    CAdjustAdcClock(stModeUserData.Clock);
    CAdjustPhase(stModeUserData.Phase);
    CAdjustHPosition();
    CAdjustVPosition();

    ucOsdState = _MENU_NONE;
}

void COsdLeftReset(void)
{
    if(stOsdUserData.OsdSettingFlag & _BIT7)
        COsdDispPenPoint(ROW(9), COL(0), ROW(12), COL(0),_MENU_FACTORY_MODE);
    else
        COsdDispPenPoint(ROW(9), COL(0), ROW(12), COL(0),_MENU_MISC_BACK);
}

void COsdRightReset(void)
{
    COsdDispPenPoint(ROW(9), COL(0), ROW(6), COL(0),_MENU_SIGNAL);
}

void COsdExitReset(void)
{

}

//----------------------------------------------------------------------------------------------------
// OSD "MiscBack" Operation
//----------------------------------------------------------------------------------------------------
void COsdMenuMiscBack(void)
{
    COsdFxCloseWindow(WINNO(2));
    COsdDispDrawInitWindow();
    COsdDispPenPoint(ROW(21), COL(0), ROW(21), COL(0), _MENU_MISC);

    CScalerLoadFont(tFONT_IMAGE2, 0xb8, 0x18, _COMPRESS_FONT);
    CScalerLoadFont(tFONT_COLOR1, 0xa0, 0x18, _NORMAL_FONT);
}

void COsdLeftMiscBack(void)
{
    if(stOsdUserData.OsdSettingFlag & _BIT7)
        COsdDispPenPoint(ROW(15), COL(0), ROW(6), COL(0),_MENU_SIGNAL);
    else
        COsdDispPenPoint(ROW(12), COL(0), ROW(6), COL(0),_MENU_SIGNAL);
}

void COsdRightMiscBack(void)
{
    if(stOsdUserData.OsdSettingFlag & _BIT7)
        COsdDispPenPoint(ROW(15), COL(0), ROW

⌨️ 快捷键说明

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