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

📄 setupfunc.c

📁 M3355的源代码
💻 C
📖 第 1 页 / 共 5 页
字号:
    case SETUPFUNC_BRI_P64	:
    case SETUPFUNC_BRI_P96	:
    case SETUPFUNC_BRI_P128	:
        APOprParam.Brightness = (bSel - 4) * bSeed - 1;
        break;
    default:
        APOprParam.Brightness = (SETUPFUNC_BRI_P128 - 4) * bSeed - 1;
    }
#endif
}
void SetBrightness(BYTE bSel)
{
    TransSel4Brightness(bSel);
    DecSetBrightness(APOprParam.Brightness);
}

void SetContrast(BYTE bSel)
{
    BYTE bSeed = 8;
/*modify by xianzhong to down size.  Aug.4.2004*/
//if(bSel>=SETUPFUNC_CONTR_1 && bSel<=SETUPFUNC_CONTR_7)APOprParam.Contrast = bSel * bSeed;
    switch (bSel)
    {
    case SETUPFUNC_CONTR_0:
        APOprParam.Contrast = 0;
        break;
    case SETUPFUNC_CONTR_1:
    case SETUPFUNC_CONTR_2:
    case SETUPFUNC_CONTR_3:
    case SETUPFUNC_CONTR_4:
    case SETUPFUNC_CONTR_5:
    case SETUPFUNC_CONTR_6:
    case SETUPFUNC_CONTR_7:
        APOprParam.Contrast = bSel * bSeed;
        break;
    case SETUPFUNC_CONTR_8:
        APOprParam.Contrast = SETUPFUNC_SATURA_8 * bSeed - 1;
        break;
    default:
        APOprParam.Contrast = SETUPFUNC_SATURA_4 * bSeed;
        break;
    }

    DecSetContrast(APOprParam.Contrast);
}

void SetSaturation(BYTE bSel)
{
    BYTE bSeed = 8;
   /*modify by xianzhong to down size.  Aug.4.2004*/
//if(bSel>=SETUPFUNC_SATURA_1 && bSel<=SETUPFUNC_SATURA_7) APOprParam.Saturation = bSel * bSeed;
    switch (bSel)
    {
    case SETUPFUNC_SATURA_0:
        APOprParam.Saturation = 0;
        break;
    case SETUPFUNC_SATURA_1:
    case SETUPFUNC_SATURA_2:
    case SETUPFUNC_SATURA_3:
    case SETUPFUNC_SATURA_4:
    case SETUPFUNC_SATURA_5:
    case SETUPFUNC_SATURA_6:
    case SETUPFUNC_SATURA_7:
        APOprParam.Saturation = bSel * bSeed;
        break;
    case SETUPFUNC_SATURA_8:
        APOprParam.Saturation = SETUPFUNC_SATURA_8 * bSeed - 1;
        break;
    default:
        APOprParam.Saturation = SETUPFUNC_SATURA_4 * bSeed;
        break;
    }

    DecSetSaturation(APOprParam.Saturation);
}

extern DWORD JPG_PAUSE_TIME;
void SetSlideShowTime(LPBYTE bSel)
{
    switch(*bSel)
    {
        //--> Gordon
    case SETUPFUNC_SLIDESHOW_OFF:
        JPG_PAUSE_TIME=INFINITETIME;
        break;
    case SETUPFUNC_SLIDESHOW_SLOW:
        JPG_PAUSE_TIME = 7000;//benjamin changed the speed,LG reqire 3/5/7 secodns
        break;
    case SETUPFUNC_SLIDESHOW_NORMAL:
        JPG_PAUSE_TIME = 5000;
        break;
    case SETUPFUNC_SLIDESHOW_FAST:
        JPG_PAUSE_TIME = 3000;
        break;
    default:
        JPG_PAUSE_TIME = 10000;
        break;
        //<-- Gordon
    }
}


#if(_SCART ==  SCART_Enable)
   #define RGB_INTER 1
 #else
   #define RGB_INTER 0
 #endif

#if(_VGA ==  VGA_Enable)
   #define RGB_PSCAN 1
 #else
   #define RGB_PSCAN 0
 #endif


#if(_MODEL == CYP300U)
#define VOUT_NUM			2
#else
#define VOUT_NUM			4
#endif

#if(_MODEL == CYP300U)
BYTE VSMatrix[VOUT_NUM][3] = {/*vout*/  /*inter*/		/*pscan*/
                                 //                                 {SETUPFUNC_VIDOPUT_CVBS,		1,			0},
                                 {SETUPFUNC_VIDOPUT_SVIDEO,	1,			0},
                                 //                                 {SETUPFUNC_VIDOPUT_RGB,		RGB_INTER,	RGB_PSCAN},
                                 {SETUPFUNC_VIDOPUT_YUVSM,		1,			1}
                             };
#else
BYTE VSMatrix[VOUT_NUM][3] = {/*vout*/  /*inter*/		/*pscan*/

                                 {
                                     SETUPFUNC_VIDOPUT_CVBS,		1,			0
                                 },
                                 {SETUPFUNC_VIDOPUT_SVIDEO,	1,			0},
                                 {SETUPFUNC_VIDOPUT_RGB,		RGB_INTER,	RGB_PSCAN},
                                 //{SETUPFUNC_VIDOPUT_RGB,		RGB_INTER,	1},//Tom Yang temp turn-on RGB progressive scan
                                 {SETUPFUNC_VIDOPUT_YUVSM,		1,			1}
                             };
#endif

BYTE LocateVout(BYTE bVout)
{
    int i;
    for (i = 0;i<VOUT_NUM;i++)
    {
        if (VSMatrix[i][0] == bVout)
            return i;
    }
    return 0xFF;//error,should never happen
}

BYTE ManageVOUT_SCANM(WORD wCmd)
{
    BYTE bVout,bScanm;
    BYTE bVoutLoc,bTmpLoc;
    bVout = OSD_Setup_Parameter.bVideoOutput;
    switch (OSD_Setup_Parameter.bScanMode)
    {
    case	SETUPFUNC_SCANMD_PROA:
    case	SETUPFUNC_SCANMD_PROB:
    case	SETUPFUNC_SCANMD_PROC:
        bScanm = 2;
        break;
    case	SETUPFUNC_SCANMD_INT:
        bScanm = 1;
        break;
    }
    bTmpLoc = bVoutLoc = LocateVout(bVout);

    switch (wCmd)
    {
    case MVS_IS_SCANM_ENABLE:
        if ((VSMatrix[bVoutLoc][1] == 1) && (VSMatrix[bVoutLoc][2] == 1))
            return 1;//YES
        else
            return 0;
        break;
    case MVS_LEFT_ON_VOUT:
        while(1)
        {
            if (bTmpLoc>0)// move first
                bTmpLoc --;
            else
                bTmpLoc = VOUT_NUM - 1;

            if (bTmpLoc == bVoutLoc)// now, if move back
                return VSMatrix[bVoutLoc][0];//just return current vout
            else if (VSMatrix[bTmpLoc][bScanm] == 1)// move to another available place
                return VSMatrix[bTmpLoc][0];// return new available vout
            else
                ;// go to while
        }
        break;
    case MVS_RIGHT_ON_VOUT:
        while(1)
        {
            if (bTmpLoc < VOUT_NUM - 1)// move first
                bTmpLoc ++;
            else
                bTmpLoc = 0;

            if (bTmpLoc == bVoutLoc)// now, if move back
                return VSMatrix[bVoutLoc][0];//just return current vout
            else if (VSMatrix[bTmpLoc][bScanm] == 1)// move to another available place
                return VSMatrix[bTmpLoc][0];// return new available vout
            else
                ;// go to while
        }
        break;
    default:
        return 0xFF;//error, should not happen
    }
}

void SetKaraKey(BYTE bSel)
{
    tEndCondition ret1, ret2;


    ret1 = DecSetAPrc(C_KEY_SHIFT, KS_OPTION, bSel);

    if (bSel!=16)			// 30529-01Angus
    {
        ret2 = DecSetAPrc(C_KEY_SHIFT, KS_ENABLE, 1);
    }
    else
    {
        ret2 = DecSetAPrc(C_KEY_SHIFT, KS_ENABLE, 0);
    }
}

//use function pointer for Mute function.
extern void SetMuteVolumeStatus(BOOL bStatus);
void (*ptr_SetMuteVolumeStatus)(BOOL bStatus);

extern void Set3DSurStatus(BYTE status);
void (*ptr_Set3DSurStatus)(BYTE status);

extern void SetVocalPressCnt(BYTE status);
void (*ptr_SetVocalPressCnt)(BYTE status);

/*modify by xianzhong to down size.  Aug.4.2004*/
void LoadDefUserData(BOOL BFistCall)
{
    int i;
    //extern SETUP_ITEM MenuLanguage;
    /*modify by xianzhong to down size.  Aug.4.2004*/
    memcpy(OSD_Setup_Parameter.bCountryCode, EEP_Option_Parameter.bCountryCode, sizeof(BYTE) * 2);
  //  OSD_Setup_Parameter.bCountryCode[0] = EEP_Option_Parameter.bCountryCode[0];
  //  OSD_Setup_Parameter.bCountryCode[1] = EEP_Option_Parameter.bCountryCode[1];
    RefreshCountryCode();//Ares 20040621
	if (BFistCall)
		OSD_Setup_Parameter.bOSDLang = GetOSDLangCmd(GetDefSetupPara(GETCMD_OSDLANG));
    OSD_Setup_Parameter.bRegion=SETUPFUNC_REGION_DEFAULT;
    OSD_Setup_Parameter.bAudioLang[0] = SETUPFUNC_NALANG_ORIGINAL;
    OSD_Setup_Parameter.bSubtitleLang[0] = SETUPFUNC_NALANG_OFF;
    OSD_Setup_Parameter.bMenuLang[0] = SETUPFUNC_NALANG_ORIGINAL;
    for (i=1;i<3;i++)
    {
        OSD_Setup_Parameter.bAudioLang[i] = 0xff;
        OSD_Setup_Parameter.bSubtitleLang[i] = 0xff;
        OSD_Setup_Parameter.bMenuLang[i] = 0xff;
    }
    OSD_Setup_Parameter.wPassWord = 0xffff;
    OSD_Setup_Parameter.bParental = SETUPFUNC_PAEENTL_UNLOCK;
    OSD_Setup_Parameter.bTVScreen = SETUPFUNC_TVSCR_16_9;
	if(OSD_Setup_Parameter.bScanMode !=SETUPFUNC_SCANMD_DEFAULT)
	{
	    //xianzhong for bug 237  don't change here!! sep.23.2004
    	//OSD_Setup_Parameter.bScanMode = SETUPFUNC_SCANMD_DEFAULT;   
    	OSD_Setup_Parameter.bSpeakerChannel = SETUPFUNC_CENTER;
	}

    //030813- virtual surround
    /*modify by xianzhong to down size.  Aug.4.2004*/
    memset(OSD_Setup_Parameter.bSpeakerVolumel, SETUPFUNC_0DB, sizeof(BYTE) * 6);
    /*
    OSD_Setup_Parameter.bSpeakerVolumel[SETUPFUNC_FRONT_L] = SETUPFUNC_0DB;
    OSD_Setup_Parameter.bSpeakerVolumel[SETUPFUNC_FRONT_R] = SETUPFUNC_0DB;
    OSD_Setup_Parameter.bSpeakerVolumel[SETUPFUNC_REAR_R] = SETUPFUNC_0DB;
    OSD_Setup_Parameter.bSpeakerVolumel[SETUPFUNC_REAR_L] = SETUPFUNC_0DB;
    OSD_Setup_Parameter.bSpeakerVolumel[SETUPFUNC_CENTER] = SETUPFUNC_0DB;
    OSD_Setup_Parameter.bSpeakerVolumel[SETUPFUNC_SUB_WOOFER] = SETUPFUNC_0DB;
*/
/*modify by xianzhong to down size.  Aug.4.2004*/
    memset(OSD_Setup_Parameter.bSpeakerSize, SETUPFUNC_LARGE, sizeof(BYTE) * 6);
    /*
    OSD_Setup_Parameter.bSpeakerSize[SETUPFUNC_FRONT_L] = SETUPFUNC_LARGE;
    OSD_Setup_Parameter.bSpeakerSize[SETUPFUNC_FRONT_R] = SETUPFUNC_LARGE;
    OSD_Setup_Parameter.bSpeakerSize[SETUPFUNC_REAR_R] = SETUPFUNC_LARGE;
    OSD_Setup_Parameter.bSpeakerSize[SETUPFUNC_REAR_L] = SETUPFUNC_LARGE;
    OSD_Setup_Parameter.bSpeakerSize[SETUPFUNC_CENTER] = SETUPFUNC_LARGE;
    OSD_Setup_Parameter.bSpeakerSize[SETUPFUNC_SUB_WOOFER] = SETUPFUNC_LARGE; // on
    */

/*modify by xianzhong to down size.  Aug.4.2004*/
    memset(OSD_Setup_Parameter.bSpeakerDistance, 1, sizeof(BYTE) * 6);
    /*
    OSD_Setup_Parameter.bSpeakerDistance[SETUPFUNC_FRONT_L] = 1;
    OSD_Setup_Parameter.bSpeakerDistance[SETUPFUNC_FRONT_R] = 1;
    OSD_Setup_Parameter.bSpeakerDistance[SETUPFUNC_REAR_R] = 1;
    OSD_Setup_Parameter.bSpeakerDistance[SETUPFUNC_REAR_L] = 1;
    OSD_Setup_Parameter.bSpeakerDistance[SETUPFUNC_CENTER] = 1;
    OSD_Setup_Parameter.bSpeakerDistance[SETUPFUNC_SUB_WOOFER] = 1;

*/
    OSD_Setup_Parameter.bDRC = SETUPFUNC_ON;
    OSD_Setup_Parameter.bVocal = SETUPFUNC_ON;
    OSD_Setup_Parameter.bPBC = SETUPFUNC_ON;
    OSD_Setup_Parameter.bAutoPlay = SETUPFUNC_OFF;
    //David For Black Level
    OSD_Setup_Parameter.bBlackLevel = SETUPFUNC_OFF;
    OSD_Setup_Parameter.bDisplayMode = SETUPFUNC_WIDESCREEN;
    OSD_Setup_Parameter.bDolbyDigital = SETUPFUNC_BITSTREAM;
    OSD_Setup_Parameter.bDTS = SETUPFUNC_DTS_BITSTREAM;
    OSD_Setup_Parameter.bMPEG = SETUPFUNC_PCM;
    OSD_Setup_Parameter.bSampleFreq = SETUPFUNC_SAMPLEFREQ_48K;
    OSD_Setup_Parameter.bSDO= SETUPFUNC_ON;
    OSD_Setup_Parameter.bPwdNotDefine = 1;

    OSD_Setup_Parameter.bBrightness = SETUPFUNC_BRI_0;
    OSD_Setup_Parameter.bContrast = SETUPFUNC_CONTR_4;
    OSD_Setup_Parameter.bSaturation = SETUPFUNC_SATURA_4 ;
    if(GetDefSetupPara(GETCMD_SCART))
	OSD_Setup_Parameter.bVideoOutput = SETUPFUNC_VIDOPUT_RGB;
    else
    	OSD_Setup_Parameter.bVideoOutput = SETUPFUNC_VIDOPUT_YUV_CVBS;
    OSD_Setup_Parameter.bTempVideoOutPut = OSD_Setup_Parameter.bVideoOutput;

    OSD_Setup_Parameter.bPausePicture = SETUPFUNC_PSPIC_AUTO;
    OSD_Setup_Parameter.bSrndEffect = SETUPFUNC_OFF;
    
    ptr_Set3DSurStatus = Set3DSurStatus;
	(*ptr_Set3DSurStatus)(0);
	ptr_SetVocalPressCnt = SetVocalPressCnt;
	(*ptr_SetVocalPressCnt)(0);

	//Set3DSurStatus(0);
	//SetVocalPressCnt(0);
    OSD_Setup_Parameter.bMasterVolume = SETUPFUNC_MASTERVV_DEFAULT;
#ifdef _MUTE_ENABLE_
	ptr_SetMuteVolumeStatus = SetMuteVolumeStatus;
	(*ptr_SetMuteVolumeStatus)(MUTEVOLUME_STATUS_VOLUME);
#endif
    OSD_Setup_Parameter.bSlideShow = 2;
    OSD_Setup_Parameter.bCloseCaption = 1;
    OSD_Setup_Parameter.bPrologic = 0;
    OSD_Setup_Parameter.bEqualizer = 0;
    OSD_Setup_Parameter.bCinemaEff = 0;
    //temp way cliff
    OSD_Setup_Parameter.bVcdDisable = 0;
    OSD_Setup_Parameter.bTVOutPut = GetDefSetupPara(GETCMD_TVOUTPUT);//030721-01lily
    OSD_Setup_Parameter.bScrnSaverEnable = SETUPFUNC_ON;

	OSD_Setup_Parameter.bDisplayMode = SETUPFUNC_WIDESCREEN;
	//mi40607 for the setup menu will turn red
	//OSD_Setup_Parameter.bVideoOutput = SETUPFUNC_VIDOPUT_CVBS_SVIDEO;//SETUPFUNC_VIDOPUT_YUV_CVBS;
	OSD_Setup_Parameter.bLastPlay = SETUPFUNC_ON;	
	OSD_Setup_Parameter.bBlackLevel = SETUPFUNC_OFF;	
		
    OSD_Setup_Parameter.wVerifySum = C_VERSION;
#if(_DEALER_LOCK_MODE == _DEALER_LOCK_ENABLE_)
	bDealerLock = FALSE;
	DISCLASTPLAYINFO.bDealerLock = FALSE;
	Write_BookMark(&DISCLASTPLAYINFO);
#endif
}
void LoadDefKaraOK(void)
{
    OSD_Setup_Parameter.bKaraVocalCancel = SETUPFUNC_KARAVC_OFF;	//off
    OSD_Setup_Parameter.bKaraVoiceTrans = SETUPFUNC_KARAVT_NOR;	//normal

    OSD_Setup_Parameter.bKaraVoiceVol = 8;		//original
    OSD_Setup_Parameter.bKaraKey = 6;
    OSD_Setup_Parameter.bKaraEcho = 8;
    //-----------------------------------------------------------------------------
}



void UserParaToEEPROM(BOOL BFistCall)
{
    LoadDefUserData(BFistCall);
    LoadDefKaraOK();

    Write_UserPara();
}
BYTE CompPass(LPBYTE InputPass)
{
	BYTE 			input[5];
	int 			i;
#ifdef _DVDA_Enable_
    //030808-01lily:for dvdaudio hidden group
    WORD dvdaudiopsw;
    if(DiscType==C_DVD_AUDIO)
    {
        dvdaudiopsw=NVGetHGRPWD();
        if(dvdaudiopsw==atoi(InputPass))
            return TRUE;
        else
            return FALSE;
    }
    else
#endif
        //end 030808-01lily:for dvdaudio hidden group
    {
		for (i=0; i<4; i++)
		{
			input[i] = *InputPass++;
		}
		input[5] = '\0';

		//SPRINTF_AA("input is %d:\r\n", atoi(input)); 
		//SPRINTF_AA("wPassWord is %d.\r\n", OSD_Setup_Parameter.wPassWord);
		//SPRINTF_AA("inputpass is %d.\r\n", atoi(InputPass)); 

        if ((OSD_Setup_Parameter.wPassWord == atoi(input)) || (C_PASSWD == atoi(input)))
            return TRUE;
        else
            return FALSE;
    }
}


//030813- virtual surround
void GetSpeakerSetup(SpeakerSetupStruct* speaker)
{

    if (SYSOption.bChannelNum == 0)
        speaker->Channels = 2;
    else
        speaker->Channels = 6;

    speaker->FrontLeftSpeaker = OSD_Setup_Parameter.bSpeakerSize[SETUPFUNC_FRONT_L];
    speaker->FrontRightSpeaker = OSD_Setup_Parameter.bSpeakerSize[SETUPFUNC_FRONT_R];
    speaker->CenterSpeaker = OSD_Setup_Parameter.bSpeakerSize[SETUPFUNC_CENTER];
    speaker->SubwooferSpeaker = OSD_Setup_Parameter.bSpeakerSize[SETUPFUNC_SUB_WOOFER];
    speaker->SurroundRightSpeaker = OSD_Setup_Parameter.bSpeakerSize[SETUPFUNC_REAR_R];
    speaker->SurroundLeftSpeaker = OSD_Setup_Parameter.bSpeakerSize[SETUPFUNC_REAR_L];

    speaker->FrontLeftVolume = OSD_Setup_Parameter.bSpeakerVolumel[SETUPFUNC_FRONT_L];
    speaker->FrontRightVolume = OSD_Setup_Parameter.bSpeakerVolumel[SETUPFUNC_FRONT_R];
    speaker->CenterVolume = OSD_Setup_Parameter.bSpeakerVolumel[SETUPFUNC_CENTER];
    speaker->SubwooferVolume = OSD_Setup_Parameter.bSpeakerVolumel[SETUPFUNC_SUB_WOOFER];
    speaker->SurroundRightVolume = OSD_Setup_Parameter.bSpeakerVolumel[SETUPFUNC_REAR_R];
    speaker->SurroundLeftVolume = OSD_Setup_Parameter.bSpeakerVolumel[SETUPFUNC_REAR_L];
}

⌨️ 快捷键说明

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