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

📄 osdvga501.c

📁 LCD TV,uVision2 Project, (C) Keil Software
💻 C
📖 第 1 页 / 共 3 页
字号:
     Gotoxy(5,15,BYTE_DISPLAY);
     OutputChar(0x3b);
     Gotoxy(27,15,BYTE_DISPLAY);
     OutputChar(0x3c);
     CenterTextout((unsigned char code *)sLangName[GET_LANGUAGE],16,15);
}
//---------------------------------------------------------------------------
void MBrightnessProc()
{
     SET_KEYREPEATENABLE();		//fenix
     SLIDER(BRIGHTNESS_GUAGE);		//fenix

     switch(ucKeyMessage)
     {
         case VK_MENU:        break;//MBrightnessMenu();					       break;
         case VK_LEFT:        MBrightnessLR(1);        break;
         case VK_RIGHT:       MBrightnessLR(0);        break;
//fenixadd
	     case VK_UP:
		 			if(stSystemData.InputSource == _SOURCE_VGA)
						 MenuItemUD(tVgaColorItem,1);
					else
						if (stSystemData.InputSource == _SOURCE_VIDEO8_TV)
							 MenuItemUD(tTvColorItem,1);
							 else
							 		if (stSystemData.InputSource == _SOURCE_VIDEO8_AV || stSystemData.InputSource == _SOURCE_VIDEO8_AV2)
									    MenuItemUD(tVideoColorItem,1);
				     break;
         case VK_DOWN:
		 			if(stSystemData.InputSource == _SOURCE_VGA)
						 MenuItemUD(tVgaColorItem,0);
					else
						if (stSystemData.InputSource == _SOURCE_VIDEO8_TV)
							 MenuItemUD(tTvColorItem,0);
							 else
							 		if (stSystemData.InputSource == _SOURCE_VIDEO8_AV || stSystemData.InputSource == _SOURCE_VIDEO8_AV2)
									    MenuItemUD(tVideoColorItem,0);
				     break;		
//fenixend
     }
}
//---------------------------------------------------------------------------
void MBrightnessLR(unsigned char LR)
{
     AdjustBrightness(LR);
     SLIDER(BRIGHTNESS_GUAGE);
}
//---------------------------------------------------------------------------
void AdjustBrightness(unsigned char LR)
{
     unsigned int iBright = BRIGHTNESS_GUAGE;
     SET_KEYREPEATENABLE();
     iBright = ValueInRangeChange(0,100,iBright,LR,0);
     iBright = iBright * 255;
     if((iBright % 100) == 0)    iBright /= 100;
     else                        iBright = iBright/100 + 1;
     stConBriData.Brightness = iBright;
     CAdjustBrightness();
     ucOsdEventMsg = _SAVE_EE_COLORPROC0_MSG;
}
//---------------------------------------------------------------------------




void MContrastProc()
{
     SET_KEYREPEATENABLE();		//fenix
     SLIDER(CONTRAST_GUAGE);		//fenix

     switch(ucKeyMessage)
     {
         case VK_MENU:        break;//MContrastMenu();				     break;
         case VK_LEFT:        MContrastLR(1);        break;
         case VK_RIGHT:       MContrastLR(0);        break;
//fenixadd
	     case VK_UP:
		 			if(stSystemData.InputSource == _SOURCE_VGA)
						 MenuItemUD(tVgaColorItem,1);
					else
						if (stSystemData.InputSource == _SOURCE_VIDEO8_TV)
							 MenuItemUD(tTvColorItem,1);
							 else
							 		if (stSystemData.InputSource == _SOURCE_VIDEO8_AV || stSystemData.InputSource == _SOURCE_VIDEO8_AV2)
									    MenuItemUD(tVideoColorItem,1);
				     break;
         case VK_DOWN:
		 			if(stSystemData.InputSource == _SOURCE_VGA)
						 MenuItemUD(tVgaColorItem,0);
					else
						if (stSystemData.InputSource == _SOURCE_VIDEO8_TV)
							 MenuItemUD(tTvColorItem,0);
							 else
							 		if (stSystemData.InputSource == _SOURCE_VIDEO8_AV || stSystemData.InputSource == _SOURCE_VIDEO8_AV2)
									    MenuItemUD(tVideoColorItem,0);
				     break;

//fenixend
     }
}
//---------------------------------------------------------------------------
void MContrastLR(unsigned char LR)
{
     unsigned int ucContrast = CONTRAST_GUAGE;
     SET_KEYREPEATENABLE();
     ucContrast = ValueInRangeChange(0,100,ucContrast,LR,0);
     ucContrast = ucContrast * 255;
     stConBriData.Contrast = ucContrast / 100;
     if(ucContrast % 100 != 0)    stConBriData.Contrast = stConBriData.Contrast + 1;
     SLIDER(CONTRAST_GUAGE);
     CAdjustContrast();
     ucOsdEventMsg = _SAVE_EE_COLORPROC0_MSG;
}
//---------------------------------------------------------------------------





void MSharpnessProc()
{
     SET_KEYREPEATENABLE();		//fenix
     DrawSharpness();		//fenix

     switch(ucKeyMessage)
     {
         case VK_MENU:        break;//MSharpnessMenu();       break;
         case VK_LEFT:        MSharpnessLR(1);        break;
         case VK_RIGHT:       MSharpnessLR(0);        break;
//fenixadd
	     case VK_UP:
		 			if(stSystemData.InputSource == _SOURCE_VGA)
						 MenuItemUD(tVgaColorItem,1);
					else
						if (stSystemData.InputSource == _SOURCE_VIDEO8_TV)
							 MenuItemUD(tTvColorItem,1);
							 else
							 		if (stSystemData.InputSource == _SOURCE_VIDEO8_AV || stSystemData.InputSource == _SOURCE_VIDEO8_AV2)
									    MenuItemUD(tVideoColorItem,1);
				     break;
         case VK_DOWN:
		 			if(stSystemData.InputSource == _SOURCE_VGA)
						 MenuItemUD(tVgaColorItem,0);
					else
						if (stSystemData.InputSource == _SOURCE_VIDEO8_TV)
							 MenuItemUD(tTvColorItem,0);
							 else
							 		if (stSystemData.InputSource == _SOURCE_VIDEO8_AV || stSystemData.InputSource == _SOURCE_VIDEO8_AV2)
									    MenuItemUD(tVideoColorItem,0);
				     break;
//fenixend
     }
}
//---------------------------------------------------------------------------
void MSharpnessLR(unsigned char LR)
{
     stSystemData.Sharpness = ValueInRangeChange(0,4,stSystemData.Sharpness,LR,0);
     CAdjustSharpness();
     CEepromSaveSystemData();
     DrawSharpness();
}
//---------------------------------------------------------------------------
void DrawSharpness()
{
     Gotoxy(5,15,BYTE_DISPLAY);
     OutputChar(0x3b);
     Gotoxy(27,15,BYTE_DISPLAY);
     OutputChar(0x3c);
     Gotoxy(16,15,BYTE_DISPLAY);
     PrintfDec(stSystemData.Sharpness);
}
//---------------------------------------------------------------------------
void MColorTmpProc()
{
     switch(ucKeyMessage)
     {
         case VK_MENU:        break;//MColorTmpMenu();       break;
         case VK_LEFT:        						         break;
         case VK_RIGHT:       MColorTmpMenu(); 			     break;
//fenixadd
		 case VK_UP:         MenuItemUD(tColorTempItem,1);        break;		   //gg
		 case VK_DOWN:       MenuItemUD(tColorTempItem,0);        break;
//fenixend
     }
}
//---------------------------------------------------------------------------
void MColorTmpMenu()
{
    switch(ucOsdState)
    {
        case _M_9300:
             SET_COLOR_TEMP_TYPE(_CT_6500);
             CEepromLoadColorTempData();
             CAdjustContrast();
             ucOsdEventMsg = _SAVE_EE_SYSTEMDATA_MSG;
             break;
        case _M_6500:
             SET_COLOR_TEMP_TYPE(_CT_9300);
             CEepromLoadColorTempData();
             CAdjustContrast();
             ucOsdEventMsg = _SAVE_EE_SYSTEMDATA_MSG;
             break; 

        case _M_USER:
             SET_COLOR_TEMP_TYPE(_CT_USER);
             CEepromLoadColorTempData();
             CAdjustContrast();
             // Clear Old select
             ClearCurrentLine(tColorTempItem);

             // Enter User osd menu
             ucOsdState = _M_R_ADJ;
             CLEAR_CLIENTOSD();
             DrawMenuItem(tUserColorPage);
             DrawCurrentLine(tUserColorItem);
             ucOsdEventMsg = _SAVE_EE_SYSTEMDATA_MSG;
             break;

/*        case _M_COLORTMP_EXIT:
             // Clear Old select
             ClearCurrentLine(tColorTempItem);

             // return to main menu
             ucOsdState = _M_COLOR_TEMP;
             CLEAR_CLIENTOSD();
             DrawMenuItem(tVgaColorPage);
             
             DrawCurrentLine(tVgaColorItem);
             break;
 */   }
}
//---------------------------------------------------------------------------
/*void MColorTmpLR(unsigned char LR)
{
    MenuItemLR(tColorTempItem,LR);
}*/
//---------------------------------------------------------------------------




void MUserColorProc()
{
     switch(ucKeyMessage)
     {
         case VK_MENU:        break;//MUserColorMenu();       break;
         case VK_LEFT:        break;//MUserColorLR(1);        break;
         case VK_RIGHT:       break;//MUserColorLR(0);        break;
//fenixadd
		 case VK_UP:         MenuItemUD(tUserColorItem,1);        break;		   //gg
		 case VK_DOWN:       MenuItemUD(tUserColorItem,0);        break;
//fenixend
     }
}
//---------------------------------------------------------------------------
/*void MUserColorMenu()
{
    switch(ucOsdState)
    {
        case _M_USER_EXIT:
             ClearCurrentLine(tUserColorItem);

             ucOsdState = _M_USER;

             CLEAR_CLIENTOSD();
             DrawMenuItem(tColorTempPage);
             DrawCurrentLine(tColorTempItem);
             break;
    }
}*/
//---------------------------------------------------------------------------

void MRedAdjProc()
{
     SET_KEYREPEATENABLE();		//fenix
     SLIDER(USER_R_GUAGE);		//fenix

     switch(ucKeyMessage)
     {
         case VK_MENU:        break;//MRedAdjMenu();       break;
         case VK_LEFT:        MRedAdjLR(1);        break;
         case VK_RIGHT:       MRedAdjLR(0);        break;
//fenixadd
		 case VK_UP:         MenuItemUD(tUserColorItem,1);        break;		   //gg
		 case VK_DOWN:       MenuItemUD(tUserColorItem,0);        break;
//fenixend
     }
}
//---------------------------------------------------------------------------
void MRedAdjLR(unsigned char LR)
{
     // Change Red
     unsigned int r = USER_R_GUAGE;
     SET_KEYREPEATENABLE();
     r = ValueInRangeChange(0,100,r,LR,0);
     r = r * 255;
     stColorTempData.ColorTemp[_RED] = r / 100;
     if(r % 100 != 0)    stColorTempData.ColorTemp[_RED] = stColorTempData.ColorTemp[_RED] + 1;
     SLIDER(USER_R_GUAGE);
     CAdjustContrast();

     ucOsdEventMsg = _SAVE_EE_COLORPROC1_MSG;
}
//---------------------------------------------------------------------------



void MGreenAdjProc()
{
     SET_KEYREPEATENABLE();		//fenix
     SLIDER(USER_G_GUAGE);		//fenix

     switch(ucKeyMessage)
     {
         case VK_MENU:        break;//MGreenAdjMenu();       break;
         case VK_LEFT:        MGreenAdjLR(1);        break;
         case VK_RIGHT:       MGreenAdjLR(0);        break;
//fenixadd
		 case VK_UP:         MenuItemUD(tUserColorItem,1);        break;		   //gg
		 case VK_DOWN:       MenuItemUD(tUserColorItem,0);        break;
//fenixend
     }
}
//---------------------------------------------------------------------------
void MGreenAdjLR(unsigned char LR)
{
     // Change Green
     unsigned int g = USER_G_GUAGE;
     SET_KEYREPEATENABLE();
     g = ValueInRangeChange(0,100,g,LR,0);
     g = g * 255;
     stColorTempData.ColorTemp[_GREEN] = g / 100;
     if(g % 100 != 0)    stColorTempData.ColorTemp[_GREEN] = stColorTempData.ColorTemp[_GREEN] + 1;
     SLIDER(USER_G_GUAGE);
     CAdjustContrast();

     ucOsdEventMsg = _SAVE_EE_COLORPROC1_MSG;
}
//---------------------------------------------------------------------------




void MBlueAdjProc()
{
     SET_KEYREPEATENABLE();		//fenix
     SLIDER(USER_B_GUAGE);		//fenix

⌨️ 快捷键说明

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