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

📄 e2prom_option.c

📁 M3355的源代码
💻 C
字号:
#include <platform.h>
#include <comsub.h>
#include <iic.h>
#include <setupfunc.h>
#include "e2prom_option.h"

void SetDefOptionPara()
{
    EEP_Option_Parameter.bCountryCode[0] = 'U';
    EEP_Option_Parameter.bCountryCode[1] = 'S';

    //cliff 30906-01cf for OSD language option temp solution
#if 0
    #if (OSDLANGUAGE_MUSTER == ALL_LANGUAGES)

    EEP_Option_Parameter.bOSDLang = SETUPFUNC_LANG_CHI;
#elif(OSDLANGUAGE_MUSTER == EUROPEAN_LANGUAGES)

    EEP_Option_Parameter.bOSDLang = SETUPFUNC_LANG_ENG;
#elif(OSDLANGUAGE_MUSTER == CHINESE_LANGUAGES)

    EEP_Option_Parameter.bOSDLang = SETUPFUNC_LANG_CHI;
#endif
 #endif

    EEP_Option_Parameter.bOSDLang = 0;

    EEP_Option_Parameter.bEEPROMOption[0] = 0x6b;
    EEP_Option_Parameter.bEEPROMOption[1] = 0x06;
    EEP_Option_Parameter.bEEPROMOption[2] = 0x55;
    EEP_Option_Parameter.bEEPROMOption[3] = 0xfe;
    EEP_Option_Parameter.bEEPROMOption[4] = 0xff;

 
    Write_OptionPara();

}
void InitSysCfg()
{

    Read_OptionPara();
    Read_UserPara(); //030813- OSD_Setup_Parameter read first
    if(EEP_Option_Parameter.wVerifySum!=C_VERSION)
    {
        EEP_Option_Parameter.wVerifySum=C_VERSION;
	 //David: LA request by Mr.Oh at 031208 --- when version updated, don't update System Option.
#if (_TRANSFER_ALI_BOARD_ == _TRANSFER_ALI_BOARD_DISABLE_)
#else
        SetDefOptionPara();
#endif
        UserParaToEEPROM();
    }
    if(OSD_Setup_Parameter.wVerifySum!=C_VERSION)
        UserParaToEEPROM();

    //30905_02 Sean for compile option
#if (EEPROM_CUSTOMER_MODE==1)

    Set_Customer_EEPROM_Option();
#endif

#if (EEPROM_USERDATA_CUSTOMER_MODE==1)

    Set_Customer_UserData();
#endif
    //30905_02 Sean for compile option

//040721, for 512k
//    InitSetupCfg();


}


void SetRegion(BYTE bSel)
{
#if 0
    if (bSel < 9)  /*Range of Region Code 1~8 */
    {
        //OSD_Setup_Parameter.bRegion = bSel;
        NVSetRegion(bSel); /*Xing lee add in 2001/1/18 for regionkey*/
        Write_UserPara();
    }
    else
    {
        //OSD_Setup_Parameter.bRegion = 0;
        NVSetRegion(bSel); /*Xing lee add in 2001/1/18 for regionkey*/
        Write_UserPara();
    }
#endif
}

BYTE GetDefSetupPara(BYTE bCmd)
{
    switch(bCmd)
    {
    case GETCMD_OSDLANG		:
        return EEP_Option_Parameter.bOSDLang;
        break;
    case GETCMD_TVOUTPUT		:
        if(EEP_Option_Parameter.bEEPROMOption[0]&OPTION_TVOUTPUT)
            return 1;
        else
            return 0;
        break;
    case GETCMD_MP3			:
        if(EEP_Option_Parameter.bEEPROMOption[0]&OPTION_MP3)
            return 1;
        else
            return 0;
        break;
    case GETCMD_CHANNEL		:
        if(EEP_Option_Parameter.bEEPROMOption[0]&OPTION_6CH)
            return 1;
        else
            return 0;
        break;
    case GETCMD_VIDEOOUTPUT		:
        if(EEP_Option_Parameter.bEEPROMOption[0]&OPTION_VIDEOOUTPUT)
            return 1;
        else
            return 0;
        break;
    case GETCMD_AUTO		:
        break;
    case GETCMD_VIDEOSTEPUP		:
        break;
    case GETCMD_VCD			:
        if(EEP_Option_Parameter.bEEPROMOption[0]&OPTION_VCD)
            return 1;
        else
            return 0;
        break;
    case GETCMD_SKIPSCAN_FP		:
        if(EEP_Option_Parameter.bEEPROMOption[0]&OPTION_SKIPSCAN_FP)
            return 1;
        else
            return 0;
        break;
    case GETCMD_SANYO1LD		:
        break;
    case GETCMD_SANYO2LD		:
        break;
    case GETCMD_MITSUMI1LD		:
        break;
    case GETCMD_MITSUMI2LD		:
        break;
    case GETCMD_SKIPSCAN_IR		:
        if(EEP_Option_Parameter.bEEPROMOption[1]&OPTION_SKIPSCAN_IR)
            return 1;
        else
            return 0;
        break;
    case GETCMD_LASTSCENE		:
        if(EEP_Option_Parameter.bEEPROMOption[1]&OPTION_LASTSCENE)
            return 1;
        else
            return 0;
        break;
    case GETCMD_PAL_PSCAN:
        if(EEP_Option_Parameter.bEEPROMOption[1]&OPTION_PALPSCAN)
            return 1;
        else
            return 0;
        break;
    case GETCMD_MPEG4		:
        if(EEP_Option_Parameter.bEEPROMOption[3]&OPTION_MPEG4)
            return 1;
        else
            return 0;
        break;
    case GETCMD_WMA			:
        if(EEP_Option_Parameter.bEEPROMOption[3]&OPTION_WMA)
            return 1;
        else
            return 0;
        break;
    case GETCMD_JPEG		:
        if(EEP_Option_Parameter.bEEPROMOption[3]&OPTION_JPEG)
            return 1;
        else
            return 0;
        break;
    case GETCMD_SVCD		:
        if(EEP_Option_Parameter.bEEPROMOption[3]&OPTION_SVCD)
            return 1;
        else
            return 0;
        break;
    case GETCMD_DTS			:
        if(EEP_Option_Parameter.bEEPROMOption[3]&OPTION_DTS)
            return 1;
        else
            return 0;
        break;
    case GETCMD_PROGRESSIVE		:
        if(EEP_Option_Parameter.bEEPROMOption[3]&OPTION_PROGRESSIVE)
            return 1;
        else
            return 0;
        break;
    case GETCMD_HDCD		:
        if(EEP_Option_Parameter.bEEPROMOption[3]&OPTION_HDCD)
            return 1;
        else
            return 0;
        break;
    case GETCMD_SPDIFIN		:
        break;
    case GETCMD_DIGITALOUT		:
        if(EEP_Option_Parameter.bEEPROMOption[4]&OPTION_DIGOUTPUT)
            return 1;
        else
            return 0;
        break;
    case GETCMD_POWEROFF_TIME:
        //return EEP_Option_Parameter.bEEPROMOption[2]%16;
        return ((EEP_Option_Parameter.bEEPROMOption[2]&0xf0)>>4);//bond modify for la bug 2300 031030
        break;
    case GETCMD_SCRSAVER_TIME:
        return EEP_Option_Parameter.bEEPROMOption[2]&0x0f;
        break;
    case GETCMD_SCART:
        if( EEP_Option_Parameter.bEEPROMOption[0]&OPTION_SCART)
            return 1;
        else
            return 0;
        break;
	//David for VGA
    case GETCMD_VGA:
        if( EEP_Option_Parameter.bEEPROMOption[3]&OPTION_VGA)
            return 1;
        else
            return 0;
        break;
    }
}

void InitSysPara()
{
    SYSOption.bVcdDisable = GetDefSetupPara(GETCMD_VCD);
    SYSOption.bChannelNum = GetDefSetupPara(GETCMD_CHANNEL);
    SYSOption.bMP3 = GetDefSetupPara(GETCMD_MP3);
    SYSOption.bVideoOutput = GetDefSetupPara(GETCMD_VIDEOOUTPUT);
    SYSOption.bSkipScanFP = GetDefSetupPara(GETCMD_SKIPSCAN_FP);
    SYSOption.bSkipScanIR = GetDefSetupPara(GETCMD_SKIPSCAN_IR);
    SYSOption.bLastPlay = GetDefSetupPara(GETCMD_LASTSCENE);
    SYSOption.bPALP_Scan=GetDefSetupPara(GETCMD_PAL_PSCAN);
    SYSOption.bAutoPoweroffTime = GetDefSetupPara(GETCMD_POWEROFF_TIME);
    SYSOption.bScrSaverTime = GetDefSetupPara(GETCMD_SCRSAVER_TIME);
    SYSOption.bMPEG4 = GetDefSetupPara(GETCMD_MPEG4);
    SYSOption.bWMA = GetDefSetupPara(GETCMD_WMA);
    SYSOption.bJPEG = GetDefSetupPara(GETCMD_JPEG);
    SYSOption.bSVCD = GetDefSetupPara(GETCMD_SVCD);
    SYSOption.bDTS = GetDefSetupPara(GETCMD_DTS);
    SYSOption.bProgressive = GetDefSetupPara(GETCMD_PROGRESSIVE);
    SYSOption.bHDCD = GetDefSetupPara(GETCMD_HDCD);
}

//30905_01 Sean for EEPROM compile option and test mode

#if (EEPROM_CUSTOMER_MODE==1)

#define EEPROM_DEFINE_MODE

#include <EEPROM_CUSTOMER_MODE.h>

#undef EEPROM_DEFINE_MODE

void Set_Customer_EEPROM_Option()
{
    BYTE i,j;

    EEP_Option_Parameter.bCountryCode[0] = EEPROM_CCode_HighBYTE;
    EEP_Option_Parameter.bCountryCode[1] = EEPROM_CCode_LowBYTE;
    EEP_Option_Parameter.bOSDLang = EEPROM_Initial_LANG;
    for (i=0;i<5;i++)
    {
        EEP_Option_Parameter.bEEPROMOption[i] = 0x00;
    }

    for (i=0;i<5;i++)
        for (j=0;j<8;j++)
        {
            if (EEPROM_BYTE[i][j].Value>1)
                EEPROM_BYTE[i][j].Value = 1;
            EEP_Option_Parameter.bEEPROMOption[i]|=EEPROM_BYTE[i][j].Value<<(7-j);
        }

   
    EEP_Option_Parameter.wVerifySum=C_VERSION;

    Write_OptionPara();

}
#endif
//30905_01 Sean for EEPROM compile option and test mode

//30905_02 Sean for compile option
#if (EEPROM_USERDATA_CUSTOMER_MODE==1)

#define UserDATA_DEFINE_MODE

#include <userdata_setting.h>

#undef UserDATA_DEFINE_MODE

void Set_Customer_UserData(void)
{
    OSD_Setup_Parameter.bAudioLang[0] = USER_DEFAULT_AUDIO_LANG;
    OSD_Setup_Parameter.bSubtitleLang[0] = USER_DEFAULT_SUBTITLE_LANG;
    OSD_Setup_Parameter.bMenuLang[0] = USER_DEFAULT_MENU_LANG;

    OSD_Setup_Parameter.bAudioLang[1] = USER_DEFINE_AUDIO_LANG_B1;
    OSD_Setup_Parameter.bSubtitleLang[1] = USER_DEFINE_SUBTITLE_LANG_B1;
    OSD_Setup_Parameter.bMenuLang[1] = USER_DEFINE_MENU_LANG_B1;
    OSD_Setup_Parameter.bAudioLang[2] = USER_DEFINE_AUDIO_LANG_B2;
    OSD_Setup_Parameter.bSubtitleLang[2] = USER_DEFINE_SUBTITLE_LANG_B2;
    OSD_Setup_Parameter.bMenuLang[2] = USER_DEFINE_MENU_LANG_B2;

    OSD_Setup_Parameter.wPassWord = USER_PASSWORD;
    OSD_Setup_Parameter.bParental = USER_PARENTAL_LOCK;
    OSD_Setup_Parameter.bTVScreen = USER_TVSCREEN_MODE;

    OSD_Setup_Parameter.bScanMode = USER_PSCAN_MODE;
    OSD_Setup_Parameter.bSpeakerChannel = USER_SPEAKER_CHANNEL;

    OSD_Setup_Parameter.bSpeakerVolumel[0] = USER_SPEAKER_VOLUME;
    OSD_Setup_Parameter.bSpeakerVolumel[1] = USER_SPEAKER_VOLUME;
    OSD_Setup_Parameter.bSpeakerVolumel[2] = USER_SPEAKER_VOLUME;
    OSD_Setup_Parameter.bSpeakerVolumel[3] = USER_SPEAKER_VOLUME;
    OSD_Setup_Parameter.bSpeakerVolumel[4] = USER_SPEAKER_VOLUME;
    OSD_Setup_Parameter.bSpeakerVolumel[5] = USER_SPEAKER_VOLUME;

    OSD_Setup_Parameter.bSpeakerSize[0] = USER_SPEAKER_SIZE;
    OSD_Setup_Parameter.bSpeakerSize[1] = USER_SPEAKER_SIZE;
    OSD_Setup_Parameter.bSpeakerSize[2] = USER_SPEAKER_SIZE;
    OSD_Setup_Parameter.bSpeakerSize[3] = USER_SPEAKER_SIZE;
    OSD_Setup_Parameter.bSpeakerSize[4] = USER_SPEAKER_SIZE;
    OSD_Setup_Parameter.bSpeakerSize[5] = USER_SUBWOOFER_CONTROL; // on

    OSD_Setup_Parameter.bSpeakerDistance[0] = 0;
    OSD_Setup_Parameter.bSpeakerDistance[1] = 0;
    OSD_Setup_Parameter.bSpeakerDistance[2] = 0;
    OSD_Setup_Parameter.bSpeakerDistance[3] = 0;
    OSD_Setup_Parameter.bSpeakerDistance[4] = 0;
    OSD_Setup_Parameter.bSpeakerDistance[5] = 0;


    OSD_Setup_Parameter.bDRC = 0;
    OSD_Setup_Parameter.bVocal = 0;
    OSD_Setup_Parameter.bPBC = USER_PBC_CONTROL;
    OSD_Setup_Parameter.bAutoPlay = USER_AUTOPLAY_CONTROL;
    OSD_Setup_Parameter.bDisplayMode = USER_VIDEO_DISPLAYMODE;
    OSD_Setup_Parameter.bDolbyDigital = USER_DOLBY_OUTPUT_MODE;
    OSD_Setup_Parameter.bDTS = USE_DTS_OUTPUT_MODE;
    OSD_Setup_Parameter.bMPEG = USER_MPEG_OUTPUT_MODE;
    OSD_Setup_Parameter.bSampleFreq = USER_AUDIO_SAMPLEFREQ;
    OSD_Setup_Parameter.bPwdNotDefine = USER_RESET_PASSWORD;

    OSD_Setup_Parameter.bBrightness = USER_SET_VIDEO_BRIGHTNESS;
    OSD_Setup_Parameter.bContrast = USER_SET_VIDEO_CONTRAST;
    OSD_Setup_Parameter.bSaturation = USER_SET_VIDEO_SATURATION ;
    OSD_Setup_Parameter.bVideoOutput = USER_VIDEO_OUTPUT_MODE;
    OSD_Setup_Parameter.bPausePicture = 0;
    OSD_Setup_Parameter.bSrndEffect = 0;
    OSD_Setup_Parameter.bMasterVolume = 15;
    OSD_Setup_Parameter.bSlideShow = 0;
    //    OSD_Setup_Parameter.bCloseCaption = USER_CLOSE_CAPTION_CONTROL;
    OSD_Setup_Parameter.bPrologic = USER_PROLOGICII_CONTROL;
    OSD_Setup_Parameter.bEqualizer = 0;
    OSD_Setup_Parameter.bCinemaEff = 0;
    OSD_Setup_Parameter.bVcdDisable = USER_VCD_SUPPORTING;
    OSD_Setup_Parameter.bTVOutPut = GetDefSetupPara(GETCMD_TVOUTPUT);//030721-01lily
    // bond for region code 031208
    OSD_Setup_Parameter.bRegion=EEPROM_Region_CODE;
    //David For Black Level
    OSD_Setup_Parameter.bBlackLevel = 0;
    OSD_Setup_Parameter.bScrnSaverEnable = SETUPFUNC_ON;

    OSD_Setup_Parameter.wVerifySum = C_VERSION;

    Write_UserPara();
}
#endif
//30905_02 Sean for compile option

⌨️ 快捷键说明

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