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

📄 menufunc.c

📁 完整的软件学习--显示器驱动视频软件
💻 C
📖 第 1 页 / 共 4 页
字号:
{ WORD tempValue;

  tempValue=DecIncValue(action, UserPrefHTotal, MinClock, MaxClock, 1);
  if (tempValue==UserPrefHTotal)
    return FALSE;
  UserPrefHTotal=tempValue;
  mStar_AdjustHTotal(UserPrefHTotal);
  
  NVRam_WriteWord(nvrModeAddr(HTotal), UserPrefHTotal);

  return TRUE;
}
WORD GetClockValue(void) // adjust range
{ return GetScale100Value(UserPrefHTotal, MinClock, MaxClock);
}

#define MaxHStart	UserPrefAutoHStart+50
#define MinHStart	UserPrefAutoHStart-50
//#define MaxHStart	2*StandardModeHStart
//#define MinHStart	0
//====================================================
Bool AdjustHPosition(MenuItemActionType action)
{ WORD tempValue;
//  tempValue=DecIncValue(action, UserPrefHStart, 0, 2*StandardModeHStart, 1);
  tempValue=DecIncValue(action, UserPrefHStart, MinHStart, MaxHStart, 1);
  if (tempValue==UserPrefHStart)
    return FALSE;
  UserPrefHStart=tempValue;
  mStar_AdjustHPosition(UserPrefHStart);
  
NVRam_WriteWord(nvrModeAddr(HStart), UserPrefHStart);
  return TRUE;
}
WORD GetHPositionValue(void)
{ return 100-GetScale100Value(UserPrefHStart, MinHStart, MaxHStart);//, 0);
}

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

  tempValue=DecIncValue(action, UserPrefVStart, 0, 2*StandardModeVStart, 1);
  if (tempValue==UserPrefVStart)
    return FALSE;
  UserPrefVStart=tempValue;
  mStar_AdjustVPosition(UserPrefVStart);
  
  NVRam_WriteWord(nvrModeAddr(VStart), UserPrefVStart);
		      		
  return TRUE;
}
WORD GetVPositionValue(void)
{ return GetScale100Value(UserPrefVStart, 0, 2*StandardModeVStart);
}

//====================================================
Bool AdjustOSDHPos(MenuItemActionType action) //vick add
{ WORD tempValue;

  tempValue=DecIncValue(action, UserPrefOsdHStart, 0, 100, 1);
  if (tempValue==UserPrefOsdHStart)
    return FALSE;    
  UserPrefOsdHStart=tempValue;
  Osd_SetPosition(UserPrefOsdHStart, UserPrefOsdVStart);
  NVRam_WriteByte(nvrMonitorAddr(OsdHStart), UserPrefOsdHStart);   
  return TRUE;
}
WORD GetOSDHPosValue(void)
{ return UserPrefOsdHStart;
}
Bool AdjustOSDVPos(MenuItemActionType action)
{ WORD tempValue;

  tempValue=DecIncValue(action, UserPrefOsdVStart, 0, 100, 1);
  if (tempValue==UserPrefOsdVStart)
    return FALSE;    
  UserPrefOsdVStart=tempValue;
  Osd_SetPosition(UserPrefOsdHStart, UserPrefOsdVStart);
  NVRam_WriteByte(nvrMonitorAddr(OsdVStart), UserPrefOsdVStart);   
  return TRUE;
}
/*
WORD GetOSDVPosValue(void)
{ return UserPrefOsdVStart;
}
*/
WORD GetOSDVPosValue1(void)
{ return 100-UserPrefOsdVStart;
}

//====================================================
Bool SetColorTemperature9300K(void) // vick change
{ UserPrefColorTemp=CTEMP_9300K;
    { 
     Read9300KSetting();
	// UserPrefContrast9300K=UserPrefContrast;
	// UserPrefBrightness9300K=UserPrefBrightness;
	// UserPrefRedColor9300K=UserPrefRedColor;
	// UserPrefGreenColor9300K=UserPrefGreenColor;
	// UserPrefBlueColor9300K=UserPrefBlueColor;
     SetColorTemp(CTEMP_9300K);
   //  SaveMonitorColorTempPart();
     Delay1ms(100); //500
    }
  return TRUE;
}

Bool SetColorTemperature6500K(void) //vick change
{ UserPrefColorTemp=CTEMP_6500K;
    { 
     Read6500KSetting();
	// UserPrefContrast6500K=UserPrefContrast;
	// UserPrefBrightness6500K=UserPrefBrightness;
	// UserPrefRedColor6500K=UserPrefRedColor;
	// UserPrefGreenColor6500K=UserPrefGreenColor;
	// UserPrefBlueColor6500K=UserPrefBlueColor;

      SetColorTemp(CTEMP_6500K);
      //SaveMonitorColorTempPart();
      Delay1ms(100); //500
    }
  
  return TRUE;
}

//fendy add 2005 05 25

Bool SetColorTemperature5800K(void) //vick change
{ UserPrefColorTemp=CTEMP_5800K;
    { 
    Read5800KSetting();
	// UserPrefContrast5800K=UserPrefContrast;
	 //UserPrefBrightness5800K=UserPrefBrightness;
	// UserPrefRedColor5800K=UserPrefRedColor;
	// UserPrefGreenColor5800K=UserPrefGreenColor;
	// UserPrefBlueColor5800K=UserPrefBlueColor;

      SetColorTemp(CTEMP_5800K);
     // SaveMonitorColorTempPart();
      Delay1ms(100); //500
    }
  
  return TRUE;
}

Bool SetColorTemperatureUserK(void)
{ //UserPrefColorTemp=CTEMP_USER;
	UserPrefColorTemp=CTEMP_USER;
    { 
      ReadUserKSetting();
      SetColorTemp(CTEMP_USER);
   //   SaveMonitorColorTempPart();
      Delay1ms(100); //500
    }  
  return TRUE;
}


//================fendy add ============================

Bool  mStar_SetColorTemp(MenuItemActionType action) 
{BYTE* ValueAdd;
//BYTE i;

if (action==MIA_IncValue)
    //UserPrefColorTemp=(UserPrefColorTemp<CTEMP_USER)?(UserPrefColorTemp+1):(CTEMP_USER);
    UserPrefColorTemp++;
	  
else if(action==MIA_DecValue)      
    //UserPrefColorTemp=(UserPrefColorTemp>CTEMP_9300K)?(UserPrefColorTemp-1):(CTEMP_9300K);
    UserPrefColorTemp+=(4-1);
	UserPrefColorTemp%=4;

	  switch(UserPrefColorTemp)
      	   {case CTEMP_9300K:  ValueAdd=C9300KText();
	                                    SetColorTemperature9300K();
						break;
		case CTEMP_6500K: ValueAdd=C6500KText();
		                           SetColorTemperature6500K();
        	              break;
		case CTEMP_5800K: ValueAdd=C5800KText();
		                             SetColorTemperature5800K();
  	                    break;
		case CTEMP_USER: ValueAdd=CUserText();
		                             SetColorTemperatureUserK();
	
      	                   break;
		}

        SaveAdjColorTemp(UserPrefColorTemp);//fendy add 05 13
      
	       Osd_SetTextColor(CP_BlackColor, CP_SoftLowGreenColor);
			
		Osd_DrawPropStr(25+0,10 ,C9300KText());
		Osd_DrawPropStr(25+4,10,C6500KText());
		Osd_DrawPropStr(25+8,10,C5800KText());
		Osd_DrawPropStr(25+12,10,CUserText());
		
 if(action!=  MIA_GotoBackItem)//MIA_GotoBackItem go back intem select station,don't RED
 	{
		 Osd_SetTextColor(CP_RedColor, CP_SoftLowGreenColor);
		 Osd_DrawPropStr( 25+UserPrefColorTemp*4,10,ValueAdd);
           
 	}
	
NVRam_WriteByte(nvrMonitorAddr(ColorTemp), UserPrefColorTemp);   
return TRUE;

}
//============================================



#if 0
Bool SetColorTemperatureNativeK(void)
{ UserPrefColorTemp=CTEMP_NATIVE;
//  Set_SaveSettingFlag();      
  ReadNativeKSetting();
  SetColorTemp();
//  SaveMonitorColorTempPart();
  return TRUE;
}
#endif
//====================================================
//====================================================
Bool AdjustBlueColor(MenuItemActionType action)
{ WORD tempValue;

  tempValue=DecIncValue(action, UserPrefBlueColor, 0, MaxColorValue, 1);
  if (tempValue==UserPrefBlueColor)
    return FALSE;
  UserPrefBlueColor=tempValue;
#if UsesRGB
  mStar_AdjustContrast(UserPrefContrast);
#else
  mStar_AdjustBlueColor(UserPrefBlueColor);
#endif
/*
  if (UserPrefColorTemp==CTEMP_9300K) 
  NVRam_WriteByte(nvrC9300KSaveAddr(BlueColorTemp), UserPrefBlueColor);
  
  if (UserPrefColorTemp==CTEMP_6500K) 
  NVRam_WriteByte(nvrC6500KSaveAddr(BlueColorTemp), UserPrefBlueColor);
  
  if (UserPrefColorTemp==CTEMP_5800K) 
  NVRam_WriteByte(nvrC5800KSaveAddr(BlueColorTemp), UserPrefBlueColor);
 */
 // if (UserPrefColorTemp==CTEMP_USER) 
  NVRam_WriteByte(nvrCUserKSaveAddr(BlueColorTemp), UserPrefBlueColor);
  return TRUE;
}
WORD GetBlueColorValue(void)
{

return GetScale100Value(UserPrefBlueColor, 0, MaxColorValue);
}

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

  tempValue=DecIncValue(action, UserPrefGreenColor, 0, MaxColorValue, 1);
  if (tempValue==UserPrefGreenColor)
    return FALSE;
  UserPrefGreenColor=tempValue;
#if UsesRGB
  mStar_AdjustContrast(UserPrefContrast);
#else
  mStar_AdjustGreenColor(UserPrefGreenColor);
#endif

 /* if (UserPrefColorTemp==CTEMP_9300K) 
  NVRam_WriteByte(nvrC9300KSaveAddr(GreenColorTemp), UserPrefGreenColor);
  
  if (UserPrefColorTemp==CTEMP_6500K) 
  NVRam_WriteByte(nvrC6500KSaveAddr(GreenColorTemp), UserPrefGreenColor);

   if (UserPrefColorTemp==CTEMP_5800K) 
  NVRam_WriteByte(nvrC5800KSaveAddr(GreenColorTemp), UserPrefGreenColor);
  
  if (UserPrefColorTemp==CTEMP_USER) */
  NVRam_WriteByte(nvrCUserKSaveAddr(GreenColorTemp), UserPrefGreenColor);

  return TRUE;
}
WORD GetGreenColorValue(void)
{ return GetScale100Value(UserPrefGreenColor, 0, MaxColorValue);
}

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

  tempValue=DecIncValue(action, UserPrefRedColor, 0, MaxColorValue, 1);
  if (tempValue==UserPrefRedColor)
    return FALSE;
  UserPrefRedColor=tempValue;
#if UsesRGB
  mStar_AdjustContrast(UserPrefContrast);
#else
  mStar_AdjustRedColor(UserPrefRedColor);
#endif
/*
 if (UserPrefColorTemp==CTEMP_9300K) 
  NVRam_WriteByte(nvrC9300KSaveAddr(RedColorTemp), UserPrefRedColor);
  
  if (UserPrefColorTemp==CTEMP_6500K) 
  NVRam_WriteByte(nvrC6500KSaveAddr(RedColorTemp), UserPrefRedColor);
    if (UserPrefColorTemp==CTEMP_5800K) 
  NVRam_WriteByte(nvrC5800KSaveAddr(RedColorTemp), UserPrefRedColor);
  
  if (UserPrefColorTemp==CTEMP_USER) 
  */
  
  NVRam_WriteByte(nvrCUserKSaveAddr(RedColorTemp), UserPrefRedColor);

  return TRUE;
}
WORD GetRedColorValue(void)
{ return GetScale100Value(UserPrefRedColor, 0, MaxColorValue);
}


Bool ResetAllSetting(void)
{ //BYTE  temp; 
  UserPrefBrightness=65;
  UserPrefContrast=DefContrast;
  

  UserPrefRedColor=DefRedColor;
  UserPrefGreenColor=DefGreenColor;
  UserPrefBlueColor=DefBlueColor;
  
  //UserPrefColorTemp=CTEMP_6500K;


  UserPrefRedColor9300K=Def9300RedColor;
  UserPrefGreenColor9300K=Def9300GreenColor;
  UserPrefBlueColor9300K=Def9300BlueColor;
  
  UserPrefRedColor6500K=Def6500RedColor;
  UserPrefGreenColor6500K=Def6500GreenColor;
  UserPrefBlueColor6500K=Def6500BlueColor;  
  
  UserPrefRedColor5800K   =Def5800RedColor;//fendy add
  UserPrefGreenColor5800K =Def5800GreenColor;
  UserPrefBlueColor5800K  =Def5800BlueColor;

  InitialC6500KEEP();
  InitialC9300KEEP();
  InitialC5800KEEP();
  InitialCUserKEEP();
//SetColorTemperature6500K();
//UserPrefLanguage= DefLanguage;
  
  UserPrefOsdHStart= DefOsdHStart;
  UserPrefOsdVStart= DefOsdVStart;
  Osd_SetPosition(UserPrefOsdHStart,UserPrefOsdVStart);//NELSON
  
  UserPrefOsdSize= DefOsdSize; 
  UserPrefOsdTime= DefOsdTime;

  UserPrefTransultDef=No_Translucent;
  Osd_setOsdTranslucent(UserPrefTransultDef); //NELSON
    
  UserPrefVolume = MidVol;
//  hw_SetMuteVolume();
  mStar_AdjustVolume(UserPrefVolume);
  mStar_AdjustBrightness(UserPrefBrightness);//nelson add
  mStar_AdjustContrast(UserPrefContrast);

  Clr_MuteVolumeFlag();
//  hw_ClrMuteVolume();
  	 
  if (SrcInputType==Input_Analog1)
    {         mStar_AutoGeomtry(); //NELSON
              UserPrefAutoTimes=1;
	       NVRam_WriteWord(nvrModeAddr(AutoTimes), UserPrefAutoTimes);
      	
    #if 1
      { BYTE modeIndex, flag;
        flag=SrcFlags; //UserModeFlag
        modeIndex=SrcModeIndex;
        SrcFlags&=~bUserMode;
        for (SrcModeIndex=0; SrcModeIndex<NumberOfMode; SrcModeIndex++)
          { NVRam_WriteByte(nvrModeAddr(checksum), 0);
          }
        SrcFlags|=bUserMode;
        for (SrcModeIndex=0; SrcModeIndex<NumberOfMode; SrcModeIndex++)
          { NVRam_WriteByte(nvrModeAddr(checksum), 0);
          }
        SrcFlags=flag;
        SrcModeIndex=modeIndex;
      }
    #endif
	  SaveModeSetting();
    }
  else
    Delay1ms(500);

#if 1 //tony for reset factory adc gain&offset setting
if(!FactoryModeFlag){
    //ReadAdcOffsetGainValue();
	//WriteAdcValueToMonitor();
	mStar_AdjustAdcRedOffset(UserPrefAdcRedOffset);
	mStar_AdjustAdcGreenOffset(UserPrefAdcGreenOffset);
	mStar_AdjustAdcBlueOffset(UserPrefAdcBlueOffset);
	mStar_AdjustAdcRedGain(UserPrefAdcRedGain);
	mStar_AdjustAdcGreenGain(UserPrefAdcGreenGain);
	mStar_AdjustAdcBlueGain(UserPrefAdcBlueGain);
	//printMsg("Tony read");
}
#endif
  //AutoConfig();
  SaveMonitorSetting();//vick add: fixed bug  
  return TRUE;
}
//////////////////////////////////////////////////////////////


//////////////////////////////////////////////////////////////
Bool AutoConfig(void)
{ Bool result;

  result=mStar_AutoGeomtry();
 
  UserPrefAutoHStart=UserPrefHStart;
  if (result)
    { UserPrefAutoTimes=1;
      SaveModeSetting();
    }
  return result;
}

Bool ExitFactory(void)
{ 
  Clr_FactoryModeFlag();
	Osd_Hide();
  return TRUE;
}

void SaveUserPref(void)
{ SaveMonitorSetting();
  if (SrcInputType<Input_Digital)
    SaveModeSetting();
}

void InitialVolume(void)
{
  #define startVolume		10 // 2
  #define delayTime		0 // 18
  static unsigned char tempVolume=startVolume;
  static unsigned char delay=delayTime;
	if (InitVolumeFlag)//&&ms500Flag)
	{
		if(delay>0)
		{
			delay--;
		}
		else
		{
			//yurian add @ 20050218
			if(UserPrefVolume > MaxVol) UserPrefVolume=MaxVol;
			if(UserPrefVolume < MinVol) UserPrefVolume=MinVol;
			
			if(tempVolume>=UserPrefVolume)
			{
				tempVolume=startVolume;
				mStar_AdjustVolume(UserPrefVolume);  
				Clr_InitVolumeFlag();
				delay=delayTime;
			}
			else
			{
				mStar_AdjustVolume(tempVolume);
				tempVolume+=10;
			}
		}
	}
}

Bool AdjustVolume(MenuItemActionType action)
{ WORD tempValue;
  if(PowerOnFlag)

⌨️ 快捷键说明

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