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

📄 menufunc.c

📁 完整的软件学习--显示器驱动视频软件
💻 C
📖 第 1 页 / 共 4 页
字号:
  	{
	if(UserPrefVolume>MaxVol)
	UserPrefVolume=MaxVol;
  	tempValue=DecIncValue(action, UserPrefVolume, MinVol, MaxVol, 1);
  	if (tempValue==UserPrefVolume)
  		return FALSE;    
  	UserPrefVolume=tempValue;
	mStar_AdjustVolume(tempValue);
	NVRam_WriteByte(nvrMonitorAddr(Volume), UserPrefVolume); //NELSON save temp volume value
	}
  return TRUE;
}

WORD GetVolumeValue(void)
{ return GetScale100Value(UserPrefVolume, MinVol, MaxVol);
}
/*
Bool MuteVolume(void)
{ 
  if(!MuteVolumeFlag)
  	{
//  	hw_SetVolume();
	Delay1ms(1);
//  	hw_ClrMuteVolume();
  	mStar_AdjustVolume(UserPrefVolume); 
	Clr_MuteVolumeFlag();
    }  	
  else
  	{
  	mStar_AdjustVolume(MinVol); 
//  	hw_SetMuteVolume();
	Delay1ms(1);
//	hw_ClrVolume();
	Set_MuteVolumeFlag();
  	} 
  NVRam_WriteByte(nvrMonitorAddr(MonitorFlag), MonitorFlags); 
  Delay1ms(200);
  return TRUE;
}

Bool MuteVolume1(void)
{ 
  //Osd_SetTextColor(CP_YellowColor,CP_YellowColor);
  if(MuteVolumeFlag)
  	{
//  	hw_SetVolume();
	Delay1ms(1);
//  	hw_ClrMuteVolume();
  	mStar_AdjustVolume(UserPrefVolume); 
	Clr_MuteVolumeFlag();
	Osd_DrawStr((OsdWindowWidth-strlen(MuteOffText()))/2 ,7, MuteOffText());
    }  	
  else
  	{
  	mStar_AdjustVolume(MinVol); 
//  	hw_SetMuteVolume();
	Delay1ms(1);
//	hw_ClrVolume();
	Set_MuteVolumeFlag();
	Osd_DrawStr((OsdWindowWidth-strlen(MuteOnText()))/2 ,7, MuteOnText());
  	} 
  NVRam_WriteByte(nvrMonitorAddr(MonitorFlag), MonitorFlags); 
  Delay1ms(200);
  return TRUE;
}

*/
//=======================================================================================
//=======================================================================================
// For Factory alignment
#if 1
Bool AutoColor(void)
{ Bool result;
  result=mStar_AutoColor();
  Osd_SetTextColor(CP_RedColor, CP_GrayColor);
  if (result)
    { //Osd_DrawStr(10, 2, PassText());
      SaveMonitorSetting();
    }
  //else
    //Osd_DrawStr(10, 2, FailText());
  if (UserPrefAutoTimes==0)
    { mStar_AutoGeomtry();
      UserPrefAutoTimes=1;
      UserPrefAutoHStart=UserPrefHStart;
      SaveModeSetting();
    }
  else
    Delay1ms(500);
  return result;
}

//====================================================
Bool AdjustRedGain(MenuItemActionType action)
{ WORD tempValue;

  tempValue=DecIncValue(action, UserPrefAdcRedGain, 0, 255, 1);
  if (tempValue==UserPrefAdcRedGain)
    return FALSE;
  UserPrefAdcRedGain=tempValue;
  mStar_AdjustAdcRedGain(UserPrefAdcRedGain);

  return TRUE;
}
WORD GetRedGainValue(void)
{ return UserPrefAdcRedGain;
}


Bool AdjustGreenGain(MenuItemActionType action)
{ WORD tempValue;

  tempValue=DecIncValue(action, UserPrefAdcGreenGain, 0, 255, 1);
  if (tempValue==UserPrefAdcGreenGain)
    return FALSE;
  UserPrefAdcGreenGain=tempValue;
  mStar_AdjustAdcGreenGain(UserPrefAdcGreenGain);

  return TRUE;
}
WORD GetGreenGainValue(void)
{ return UserPrefAdcGreenGain;
}


Bool AdjustBlueGain(MenuItemActionType action)
{ WORD tempValue;

  tempValue=DecIncValue(action, UserPrefAdcBlueGain, 0, 255, 1);
  if (tempValue==UserPrefAdcBlueGain)
    return FALSE;
  UserPrefAdcBlueGain=tempValue;
  mStar_AdjustAdcBlueGain(UserPrefAdcBlueGain);

  return TRUE;
}
WORD GetBlueGainValue(void)
{ return UserPrefAdcBlueGain;
}
//====================================================
//====================================================
Bool AdjustAdcRedOffset(MenuItemActionType action)
{ WORD tempValue;

  tempValue=DecIncValue(action, UserPrefAdcRedOffset, 0, 255, 1);
  if (tempValue==UserPrefAdcRedOffset)
    return FALSE;
  UserPrefAdcRedOffset=tempValue;
  mStar_AdjustAdcRedOffset(UserPrefAdcRedOffset);

  return TRUE;
}
WORD GetAdcRedOffsetValue(void)
{ return UserPrefAdcRedOffset;
}

Bool AdjustAdcGreenOffset(MenuItemActionType action)
{ WORD tempValue;

  tempValue=DecIncValue(action, UserPrefAdcGreenOffset, 0, 255, 1);
  if (tempValue==UserPrefAdcGreenOffset)
    return FALSE;
  UserPrefAdcGreenOffset=tempValue;
  mStar_AdjustAdcGreenOffset(UserPrefAdcGreenOffset);

  return TRUE;
}
WORD GetAdcGreenOffsetValue(void)
{ return UserPrefAdcGreenOffset;
}

Bool AdjustAdcBlueOffset(MenuItemActionType action)
{ WORD tempValue;

  tempValue=DecIncValue(action, UserPrefAdcBlueOffset, 0, 255, 1);
  if (tempValue==UserPrefAdcBlueOffset)
    return FALSE;
  UserPrefAdcBlueOffset=tempValue;
  mStar_AdjustAdcBlueOffset(UserPrefAdcBlueOffset);

  return TRUE;
}
WORD GetAdcBlueOffsetValue(void)
{ return UserPrefAdcBlueOffset;
}

/*
void ReadAdcOffsetGainValue(void){  
	NVRam_ReadByte(AdcRedGainSaveAddr, &UserPrefAdcRedGain);
	NVRam_ReadByte(AdcGreenGainSaveAddr, &UserPrefAdcGreenGain);
	NVRam_ReadByte(AdcBlueGainSaveAddr, &UserPrefAdcBlueGain);
	NVRam_ReadByte(AdcRedOffsetSaveAddr, &UserPrefAdcRedOffset);
	NVRam_ReadByte(AdcGreenOffsetSaveAddr, &UserPrefAdcGreenOffset);
	NVRam_ReadByte(AdcBlueOffsetSaveAddr, &UserPrefAdcBlueOffset);
#if 0
	if(UserPrefAdcRedGain>220||UserPrefAdcRedGain<30)
		UserPrefAdcRedGain=0x80;
	if(UserPrefAdcGreenGain>220||UserPrefAdcGreenGain<30)
		UserPrefAdcGreenGain=0x80;
	if(UserPrefAdcBlueGain>220||UserPrefAdcBlueGain<30)
		UserPrefAdcBlueGain=0x80;	
	if(UserPrefAdcRedOffset>220||UserPrefAdcRedOffset<30)
		UserPrefAdcRedOffset=0x80;	
	if(UserPrefAdcGreenOffset>220||UserPrefAdcGreenOffset<30)
		UserPrefAdcGreenOffset=0x80;
	if(UserPrefAdcBlueOffset>220||UserPrefAdcBlueOffset<30)
		UserPrefAdcBlueOffset=0x80;
#endif	
	} 
void WriteAdcValueToMonitor(void){  
	NVRam_WriteByte(nvrMonitorAddr(AdcRedGain), UserPrefAdcRedGain);
	NVRam_WriteByte(nvrMonitorAddr(AdcGreenGain), UserPrefAdcGreenGain);
	NVRam_WriteByte(nvrMonitorAddr(AdcBlueGain), UserPrefAdcBlueGain);
	NVRam_WriteByte(nvrMonitorAddr(AdcRedOffset), UserPrefAdcRedOffset);
	NVRam_WriteByte(nvrMonitorAddr(AdcGreenOffset), UserPrefAdcGreenOffset);
	NVRam_WriteByte(nvrMonitorAddr(AdcBlueOffset), UserPrefAdcBlueOffset);
	}
*/
void WriteAdcOffsetGainValue(void){  
	NVRam_WriteByte(AdcRedGainSaveAddr, UserPrefAdcRedGain);
	NVRam_WriteByte(AdcGreenGainSaveAddr, UserPrefAdcGreenGain);
	NVRam_WriteByte(AdcBlueGainSaveAddr, UserPrefAdcBlueGain);
	NVRam_WriteByte(AdcRedOffsetSaveAddr, UserPrefAdcRedOffset);
	NVRam_WriteByte(AdcGreenOffsetSaveAddr, UserPrefAdcGreenOffset);
	NVRam_WriteByte(AdcBlueOffsetSaveAddr, UserPrefAdcBlueOffset);
	}

//-------------------------------------------------------------------
void Read9300KSetting(void) //vick change
{
  //NVRam_ReadByte(nvrC9300KSaveAddr(ContrastColorTemp), &UserPrefContrast);
 // NVRam_ReadByte(nvrC9300KSaveAddr(BrightnessColorTemp), &UserPrefBrightness);
  NVRam_ReadByte(nvrC9300KSaveAddr(RedColorTemp), &UserPrefRedColor9300K);
  NVRam_ReadByte(nvrC9300KSaveAddr(GreenColorTemp), &UserPrefGreenColor9300K);
  NVRam_ReadByte(nvrC9300KSaveAddr(BlueColorTemp), &UserPrefBlueColor9300K);
 if (UserPrefContrast>MaxContrastValue || UserPrefContrast<MinContrastValue)
  UserPrefContrast=DefContrast;
  UserPrefBrightness%=101;
}

void Read6500KSetting(void)
{
 // NVRam_ReadByte(nvrC6500KSaveAddr(ContrastColorTemp), &UserPrefContrast);
 // NVRam_ReadByte(nvrC6500KSaveAddr(BrightnessColorTemp), &UserPrefBrightness);
  NVRam_ReadByte(nvrC6500KSaveAddr(RedColorTemp), &UserPrefRedColor6500K);
  NVRam_ReadByte(nvrC6500KSaveAddr(GreenColorTemp), &UserPrefGreenColor6500K);
  NVRam_ReadByte(nvrC6500KSaveAddr(BlueColorTemp), &UserPrefBlueColor6500K);
 if (UserPrefContrast>MaxContrastValue || UserPrefContrast<MinContrastValue)
 UserPrefContrast=DefContrast;
 UserPrefBrightness%=101;
}

///fendy add
void Read5800KSetting(void)
{
 // NVRam_ReadByte(nvrC5800KSaveAddr(ContrastColorTemp), &UserPrefContrast);
  //NVRam_ReadByte(nvrC5800KSaveAddr(BrightnessColorTemp), &UserPrefBrightness);
  NVRam_ReadByte(nvrC5800KSaveAddr(RedColorTemp), &UserPrefRedColor5800K);
  NVRam_ReadByte(nvrC5800KSaveAddr(GreenColorTemp), &UserPrefGreenColor5800K);
  NVRam_ReadByte(nvrC5800KSaveAddr(BlueColorTemp), &UserPrefBlueColor5800K);
if (UserPrefContrast>MaxContrastValue || UserPrefContrast<MinContrastValue)
  UserPrefContrast=DefContrast;
 UserPrefBrightness%=101;
}
void ReadUserKSetting(void)
{
 // NVRam_ReadByte(nvrCUserKSaveAddr(ContrastColorTemp), &UserPrefContrast);
 // NVRam_ReadByte(nvrCUserKSaveAddr(BrightnessColorTemp), &UserPrefBrightness);
  NVRam_ReadByte(nvrCUserKSaveAddr(RedColorTemp), &UserPrefRedColor);
  NVRam_ReadByte(nvrCUserKSaveAddr(GreenColorTemp), &UserPrefGreenColor);
  NVRam_ReadByte(nvrCUserKSaveAddr(BlueColorTemp), &UserPrefBlueColor);
 if (UserPrefContrast>MaxContrastValue || UserPrefContrast<MinContrastValue)
 UserPrefContrast=DefContrast;
 UserPrefBrightness%=101;
}
#if 0
void ReadNativeKSetting(void) //vick change
{
  UserPrefContrast = DefContrast;   
  UserPrefBrightness = DefBrightness;
  UserPrefRedColor   = 0xAB;   
  UserPrefGreenColor = 0xAB;  
  UserPrefBlueColor  = 0xAB;  
}
#endif
void Save9300KSetting(void) //vick change
{// NVRam_WriteByte(nvrC9300KSaveAddr(ContrastColorTemp), UserPrefContrast9300K);
  //NVRam_WriteByte(nvrC9300KSaveAddr(BrightnessColorTemp), UserPrefBrightness9300K);
  NVRam_WriteByte(nvrC9300KSaveAddr(RedColorTemp), UserPrefRedColor9300K);
  NVRam_WriteByte(nvrC9300KSaveAddr(GreenColorTemp), UserPrefGreenColor9300K);
  NVRam_WriteByte(nvrC9300KSaveAddr(BlueColorTemp), UserPrefBlueColor9300K);
}
//fendy
void Save5800KSetting(void) //vick change
{ //NVRam_WriteByte(nvrC5800KSaveAddr(ContrastColorTemp), UserPrefContrast5800K);
  //NVRam_WriteByte(nvrC5800KSaveAddr(BrightnessColorTemp), UserPrefBrightness5800K);
  NVRam_WriteByte(nvrC5800KSaveAddr(RedColorTemp), UserPrefRedColor5800K);
  NVRam_WriteByte(nvrC5800KSaveAddr(GreenColorTemp), UserPrefGreenColor5800K);
  NVRam_WriteByte(nvrC5800KSaveAddr(BlueColorTemp), UserPrefBlueColor5800K);
}
void Save6500KSetting(void) //vick change
{// NVRam_WriteByte(nvrC6500KSaveAddr(ContrastColorTemp), UserPrefContrast6500K);
 // NVRam_WriteByte(nvrC6500KSaveAddr(BrightnessColorTemp), UserPrefBrightness6500K);
  NVRam_WriteByte(nvrC6500KSaveAddr(RedColorTemp), UserPrefRedColor6500K);
  NVRam_WriteByte(nvrC6500KSaveAddr(GreenColorTemp), UserPrefGreenColor6500K);
  NVRam_WriteByte(nvrC6500KSaveAddr(BlueColorTemp), UserPrefBlueColor6500K);
}
void SaveUserKSetting(void) //vick add
{
  //NVRam_WriteByte(nvrCUserKSaveAddr(ContrastColorTemp), UserPrefContrast);
  //NVRam_WriteByte(nvrCUserKSaveAddr(BrightnessColorTemp), UserPrefBrightness);
  NVRam_WriteByte(nvrCUserKSaveAddr(RedColorTemp), UserPrefRedColor);
  NVRam_WriteByte(nvrCUserKSaveAddr(GreenColorTemp), UserPrefGreenColor);
  NVRam_WriteByte(nvrCUserKSaveAddr(BlueColorTemp), UserPrefBlueColor);
}
void SaveMonitorColorTempPart(void) //vick add
{
NVRam_WriteByte(nvrMonitorAddr(ColorTemp), UserPrefColorTemp);
//  NVRam_WriteByte(nvrMonitorAddr(Brightness), UserPrefBrightness);
//  NVRam_WriteByte(nvrMonitorAddr(Contrast), UserPrefContrast);
  NVRam_WriteByte(nvrMonitorAddr(RedColor), UserPrefRedColor);//vick save monitor also
  NVRam_WriteByte(nvrMonitorAddr(GreenColor), UserPrefGreenColor);//when powering on,recall 
  NVRam_WriteByte(nvrMonitorAddr(BlueColor), UserPrefBlueColor);
}

void SetColorTemp(BYTE  ColorTemp) //vick add
{
  //mStar_AdjustBrightness(UserPrefBrightness);
 // mStar_AdjustContrast(UserPrefContrast);
#if 1	//tony
  if(ColorTemp==CTEMP_USER)
		{
  mStar_AdjustRedColor(UserPrefRedColor);
  mStar_AdjustBlueColor(UserPrefBlueColor);
  mStar_AdjustGreenColor(UserPrefGreenColor);
  	}

    if(ColorTemp==CTEMP_9300K)
		{
  mStar_AdjustRedColor(UserPrefRedColor9300K);
  mStar_AdjustBlueColor(UserPrefBlueColor9300K);
  mStar_AdjustGreenColor(UserPrefGreenColor9300K);
  	}

	  if(ColorTemp==CTEMP_5800K)
		{
  mStar_AdjustRedColor(UserPrefRedColor5800K);
  mStar_AdjustBlueColor(UserPrefBlueColor5800K);
  mStar_AdjustGreenColor(UserPrefGreenColor5800K);
  	}
	    if(ColorTemp==CTEMP_6500K)
		{
  mStar_AdjustRedColor(UserPrefRedColor6500K);
  mStar_AdjustBlueColor(UserPrefBlueColor6500K);
  mStar_AdjustGreenColor(UserPrefGreenColor6500K);
  	}
#endif
}
//Tony for New_AdjMethod
Bool SaveAdjColorTemp(BYTE ColorTemp)
{
  BYTE temp,RetryTimes=5;
  Bool ReSave=TRUE;

  while(ReSave==TRUE&&RetryTimes--)
  	{
    if(ColorTemp==CTEMP_9300K)
		{
		//UserPrefRedColor9300K=UserPrefRedColor;
		//UserPrefGreenColor9300K=UserPrefGreenColor;
		//UserPrefBlueColor9300K=UserPrefBlueColor;
		Save9300KSetting();
		ReSave=FALSE;
  		//NVRam_ReadByte(nvrC9300KSaveAddr(ContrastColorTemp), &temp);
  		//if(UserPrefContrast!=temp) ReSave=TRUE;
  		//NVRam_ReadByte(nvrC9300KSaveAddr(BrightnessColorTemp),&temp);
  		//if(UserPrefBrightness!=temp) ReSave=TRUE;
  		NVRam_ReadByte(nvrC9300KSaveAddr(RedColorTemp), &temp);
	  	if(UserPrefRedColor9300K!=temp) ReSave=TRUE;
  		NVRam_ReadByte(nvrC9300KSaveAddr(GreenColorTemp), &temp);
  		if(UserPrefGreenColor9300K!=temp) ReSave=TRUE;
  		NVRam_ReadByte(nvrC9300KSaveAddr(BlueColorTemp), &temp);
  		if(UserPrefBlueColor9300K!=temp) ReSave=TRUE;
    	}
	else if(ColorTemp==CTEMP_6500K)
		{
		//UserPrefRedColor6500K=UserPrefRedColor;
		//UserPrefGreenColor6500K=UserPrefGreenColor;
		//UserPrefBlueColor6500K=UserPrefBlueColor;
		Save6500KSetting();
		ReSave=FALSE;
  		//NVRam_ReadByte(nvrC6500KSaveAddr(ContrastColorTemp), &temp);
  		//if(UserPrefContrast!=temp) ReSave=TRUE;
  		//NVRam_ReadByte(nvrC6500KSaveAddr(BrightnessColorTemp),&temp);
  		//if(UserPrefBrightness!=temp) ReSave=TRUE;
  		NVRam_ReadByte(nvrC6500KSaveAddr(RedColorTemp), &temp);
	  	if(UserPrefRedColor6500K!=temp) ReSave=TRUE;
  		NVRam_ReadByte(nvrC6500KSaveAddr(GreenColorTemp), &temp);
  		if(UserPrefGreenColor6500K!=temp) ReSave=TRUE;
  		NVRam_ReadByte(nvrC6500KSaveAddr(BlueColorTemp), &temp);
  		if(UserPrefBlueColor6500K!=temp) ReSave=TRUE;
    	}

	else if(ColorTemp==CTEMP_5800K)
		{
		//UserPrefRedColor5800K=UserPrefRedColor;
		//UserPrefGreenColor5800K=UserPrefGreenColor;
		//UserPrefBlueColor5800K=UserPrefBlueColor;
		Save5800KSetting();
		ReSave=FALSE;
  		//NVRam_ReadByte(nvrC5800KSaveAddr(ContrastColorTemp), &temp);
  		//if(UserPrefContrast!=temp) ReSave=TRUE;
  		//NVRam_ReadByte(nvrC5800KSaveAddr(BrightnessColorTemp),&temp);
  		//if(UserPrefBrightness!=temp) ReSave=TRUE;
  		NVRam_ReadByte(nvrC5800KSaveAddr(RedColorTemp), &temp);
	  	if(UserPrefRedColor5800K!=temp) ReSave=TRUE;
  		NVRam_ReadByte(nvrC5800KSaveAddr(GreenColorTemp), &temp);
  		if(UserPrefGreenColor5800K!=temp) ReSave=TRUE;
  		NVRam_ReadByte(nvrC5800KSaveAddr(BlueColorTemp), &temp);
  		if(UserPrefBlueColor5800K!=temp) ReSave=TRUE;
    	}

	else if(ColorTemp==CTEMP_USER)
		{
		//UserPrefRedColor5800K=UserPrefRedColor;
		//UserPrefGreenColor5800K=UserPrefGreenColor;
		//UserPrefBlueColor5800K=UserPrefBlueColor;
		SaveUserKSetting();
		ReSave=FALSE;
  		//NVRam_ReadByte(nvrC5800KSaveAddr(ContrastColorTemp), &temp);
  		//if(UserPrefContrast!=temp) ReSave=TRUE;
  		//NVRam_ReadByte(nvrC5800KSaveAddr(BrightnessColorTemp),&temp);
  		//if(UserPrefBrightness!=temp) ReSave=TRUE;
  		NVRam_ReadByte(nvrCUserKSaveAddr(RedColorTemp), &temp);
	  	if(UserPrefRedColor!=temp) ReSave=TRUE;
  		NVRam_ReadByte(nvrCUserKSaveAddr(GreenColorTemp), &temp);
  		if(UserPrefGreenColor!=temp) ReSave=TRUE;
  		NVRam_ReadByte(nvrCUserKSaveAddr(BlueColorTemp), &temp);
  		if(UserPrefBlueColor!=temp) ReSave=TRUE;
    	}
  	}
  if(RetryTimes==0)
  	return FALSE;
  else
  	return TRUE;
}



//====================================================
Bool EnableBurninMode(void)
{ PatternNo=0;
  mStar_WriteByte(FWC, FWC_B);
  return TRUE;
}

GetBurninValue(void)
{ return (BurninModeFlag)?(1):(0);
}

Bool AdjustBurninRadio(MenuItemActionType action)
{ 
  action=action;
  if (BurninModeFlag)
    Clr_BurninModeFlag();
  else
    Set_BurninModeFlag();
  NVRam_WriteByte(nvrMonitorAddr(MonitorFlag), MonitorFlags);
  Delay1ms(200);	
  return TRUE;
}

//====================================================
#if 0
Bool AdjustBankNo(MenuItemActionType action)
{ if (action==MIA_IncValue)
    MSBankNo=(MSBankNo+1)%3;
  else
    MSBankNo=(MSBankNo+2)%3;

  return TRUE;
}
Bool AdjustAddr(MenuItemActionType action)
{ if (action==MIA_IncValue)
    MSAddr=(MSAddr+1)%0x100;

⌨️ 快捷键说明

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