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

📄 setup.c

📁 ct952 source code use for Digital Frame Photo
💻 C
📖 第 1 页 / 共 5 页
字号:
#ifdef _DEBUG_INFO            _bEEPROMError = SETUP_ADDR_REGION_CTL;#endif        }        if ((__SetupInfo.bParentalCtl < SETUP_CUSTOM_PC_LEVEL_BEGIN) ||            (__SetupInfo.bParentalCtl > SETUP_CUSTOM_PC_LEVEL_END))        {            __SetupInfo.bParentalCtl = SETUP_DEFAULT_PARENTAL;#ifdef _DEBUG_INFO            _bEEPROMError = SETUP_ADDR_PARENTAL_CTL_LEVEL;#endif        }        if ((__SetupInfo.bOSDLanguage < SETUP_LANGUAGE_OSD_BEGIN) ||            (__SetupInfo.bOSDLanguage > SETUP_LANGUAGE_OSD_END))        {            __SetupInfo.bOSDLanguage = SETUP_DEFAULT_OSD_LANGUAGE;#ifdef _DEBUG_INFO            _bEEPROMError = SETUP_ADDR_OSD_LANGUAGE;#endif        }        if ((__SetupInfo.bAudioCenter < SETUP_AUDIO_CENTER_BEGIN) ||            (__SetupInfo.bAudioCenter > SETUP_AUDIO_CENTER_END))        {            __SetupInfo.bAudioCenter = SETUP_DEFAULT_AUDIO_CENTER;#ifdef _DEBUG_INFO            _bEEPROMError = SETUP_ADDR_AUDIO_CENTER;#endif        }        if ((__SetupInfo.bAudioRear < SETUP_AUDIO_REAR_BEGIN) ||            (__SetupInfo.bAudioRear > SETUP_AUDIO_REAR_END))        {            __SetupInfo.bAudioRear = SETUP_DEFAULT_AUDIO_REAR;#ifdef _DEBUG_INFO            _bEEPROMError = SETUP_ADDR_AUDIO_REAR;#endif        }        if ((__SetupInfo.bAudioSubwoofer < SETUP_AUDIO_SUBWOOFER_BEGIN) ||            (__SetupInfo.bAudioSubwoofer > SETUP_AUDIO_SUBWOOFER_END))        {            __SetupInfo.bAudioSubwoofer = SETUP_DEFAULT_AUDIO_SUBWOOFER;#ifdef _DEBUG_INFO            _bEEPROMError = SETUP_ADDR_AUDIO_SUBWOOFER;#endif        }        if ((__SetupInfo.bAudioDNR < SETUP_AUDIO_DNR_BEGIN) ||            (__SetupInfo.bAudioDNR > SETUP_AUDIO_DNR_END))        {            __SetupInfo.bAudioDNR = SETUP_DEFAULT_AUDIO_DNR;#ifdef _DEBUG_INFO            _bEEPROMError = SETUP_ADDR_AUDIO_DNR;#endif        }        if ((__SetupInfo.bAudioKaraoke < SETUP_AUDIO_KARAOKE_BEGIN) ||            (__SetupInfo.bAudioKaraoke > SETUP_AUDIO_KARAOKE_END))        {            __SetupInfo.bAudioKaraoke = SETUP_DEFAULT_AUDIO_KARAOKE;#ifdef _DEBUG_INFO            _bEEPROMError = SETUP_ADDR_AUDIO_KARAOKE;#endif        }        if ((__SetupInfo.bMenuLanguage < SETUP_LANGUAGE_MENU_BEGIN) ||            (__SetupInfo.bMenuLanguage > SETUP_LANGUAGE_MENU_END))        {            __SetupInfo.bMenuLanguage = SETUP_DEFAULT_MENU_LANGUAGE;#ifdef _DEBUG_INFO            _bEEPROMError = SETUP_ADDR_MENU_LANGUAGE;#endif        }        if ((__SetupInfo.bAudioLanguage < SETUP_LANGUAGE_AUDIO_BEGIN) ||            (__SetupInfo.bAudioLanguage > SETUP_LANGUAGE_AUDIO_END))        {            __SetupInfo.bAudioLanguage = SETUP_DEFAULT_AUDIO_LANGUAGE;#ifdef _DEBUG_INFO            _bEEPROMError = SETUP_ADDR_AUDIO_LANGUAGE;#endif        }        if ((__SetupInfo.bSPSTLanguage < SETUP_LANGUAGE_SP_BEGIN) ||            (__SetupInfo.bSPSTLanguage > SETUP_LANGUAGE_SP_END))        {            __SetupInfo.bSPSTLanguage = SETUP_DEFAULT_SPST_LANGUAGE;#ifdef _DEBUG_INFO            _bEEPROMError = SETUP_ADDR_SPST_LANGUAGE;#endif        }        if ((__SetupInfo.bExSPSTLanguage < SETUP_LANGUAGE_ENCODING_BEGIN) ||            (__SetupInfo.bExSPSTLanguage > SETUP_LANGUAGE_ENCODING_END-1))        {            __SetupInfo.bExSPSTLanguage = SETUP_DEFAULT_ENCODING_LANGUAGE;#ifdef _DEBUG_INFO            _bEEPROMError = SETUP_ADDR_EX_SPST_LANGUAGE;#endif        }        if ((__SetupInfo.bSmartPlay < SETUP_CUSTOM_SMART_PLAY_BEGIN) ||            (__SetupInfo.bSmartPlay > SETUP_CUSTOM_SMART_PLAY_END))        {            __SetupInfo.bSmartPlay = SETUP_DEFAULT_SMART_PLAY;#ifdef _DEBUG_INFO            _bEEPROMError = SETUP_ADDR_SMART_PLAY;#endif        }        if ((__SetupInfo.bAngleMarkDisplay < SETUP_CUSTOM_ANGLE_MARK_BEGIN) ||            (__SetupInfo.bAngleMarkDisplay > SETUP_CUSTOM_ANGLE_MARK_END))        {            __SetupInfo.bAngleMarkDisplay = SETUP_DEFAULT_ANGLE_MARK;#ifdef _DEBUG_INFO            _bEEPROMError = SETUP_ADDR_ANGLE_MARK_DISPLAY;#endif        }        if ((__SetupInfo.bUIStyle < SETUP_CUSTOM_UI_STYLE_BEGIN) ||            (__SetupInfo.bUIStyle > SETUP_CUSTOM_UI_STYLE_END))        {            __SetupInfo.bUIStyle = SETUP_DEFAULT_UI_STYLE;#ifdef _DEBUG_INFO            _bEEPROMError = SETUP_ADDR_ANGLE_MARK_DISPLAY;#endif        }        // TCC276, add protection for __SetupInfo.bVCDControl        if (__SetupInfo.bVCDControl != 0 && __SetupInfo.bVCDControl != 0x5A)        {                        if (SETUP_DEFAULT_VCD_CTL == FALSE)                                __SetupInfo.bVCDControl = 0 ;                        else                                __SetupInfo.bVCDControl = 0x5A ;        }        // Brian1.08        if ((__SetupInfo.bAudioPrologic < SETUP_AUDIO_PROLOGIC_BEGIN) ||            (__SetupInfo.bAudioPrologic > SETUP_AUDIO_PROLOGIC_END))        {            __SetupInfo.bAudioPrologic = SETUP_DEFAULT_AUDIO_PROLOGIC;#ifdef _DEBUG_INFO            _bEEPROMError = SETUP_ADDR_AUDIO_PROLOGIC;#endif        }        // alan, CT909        if ((__SetupInfo.bAudioDownMix < SETUP_AUDIO_DOWNMIX_BEGIN) ||            (__SetupInfo.bAudioDownMix > SETUP_AUDIO_DOWNMIX_END))        {            __SetupInfo.bAudioDownMix = SETUP_DEFAULT_AUDIO_DOWNMIX;#ifdef _DEBUG_INFO            _bEEPROMError = SETUP_ADDR_AUDIO_DOWNMIX;#endif        }#endif    _SetAngleMarkTime(); //brian.172, should always set angle mark time}//  ***************************************************************************//  Function    : SETUP_Initial//  Description : This API will export to other modules use while SETUP data should be//              : initialized and prepare for further usage.//  Arguments   : //  Return      : TRUE//  Side Effect ://  ***************************************************************************BIT SETUP_Initial(){    __bInputPassword=FALSE;    __bInputPasswordIndex=0;    __bSETUPUIStyleChanged = FALSE;#ifndef WRITE_EEPROM_ENABLE    _WriteSetupData(SETUP_DATA_DEFAULT, READ_TOTAL_DEFAULT);    // Module should add their Init function here to set EPROM to default value#else    pbSetupPtr=(BYTE *)&__SetupInfo;#ifdef WRITE_EEPROM_ENABLE //Kevin0.91, add define    HAL_ReadStorage(SETUP_ADDR_IDENTIFY, pbSetupPtr, EPROM_IDENTIFY_BYTE +                    EPROM_VERSION_BYTE + EPROM_INTERVERSION_BYTE);#endif    __SetupInfo.cSetupIdentify[EPROM_IDENTIFY_BYTE-1] = 0;    // Brian2.81    // Setup module will call other modules' Init function only    // when EPROM data is incorrect. Setup will not call other modules'    // Init fuction when EPROM data is correct    if (!strcmp(__SetupInfo.cSetupIdentify, IDENTIFY_STRING) &&        SETUP_VERSION == __SetupInfo.bSetupVersion &&        INTER_VERSION == __SetupInfo.bInterVersion)     {        // setup data is correct        _ReadSetupData();        // Setup should not read data from EPROM for other modules.        // The power-on flow should do this.         // Kevin1.25, move below. Otherwise, 4 wait no ACK for 8M,        // 'cause IRAM hasn't been loaded     }    else    {        // setup data is incorrect        _WriteSetupData(SETUP_DATA_DEFAULT, READ_TOTAL_DEFAULT); // Brian1.24        // Module should add their Init function here to set EPROM to default value    }#endif    // update Setup info to SPRM    // reference VI4-, 4.6.1.2    // *SPRM[0], Menu Description Language Code    // SPRM[2], Sup-picture stream on/off flag    // SPRM[3], Angle number??    // SPRM[11], Player Audio Mixing Mode for Karaoke    // SPRM[12], Contry Code for Parental Management    // SPRM[13], Parental Level    // SPRM[14], Player Configuration for Video(Aspect ratio)    // SPRM[15], P_CFG for audio    // *SPRM[16], Initial Language Code for AST    // SPRM[17], Initial Language Code extension for AST    // *SPRM[18], Initial Language Code for SPST    // SPRM[19], Initial Language extension Code for SPST    // SPRM[20], Player Region Code    // bit 15-8, upper byte    // bit 7-0, lower byte        _SetVideoOutputToIC();#ifndef NO_DISC_MODE //CoCo2.37p        //Brian1.05, just call NV_Setting, it will set __wSPRMs[20] always        NV_Setting(SET_REGION_CODE, 0); #endif //#ifndef NO_DISC_MODE //CoCo2.37p        //Kevin1.25, move here        // Brian1.25, set brightness and contrast when initialization        _SetBrightnessToIC();        _SetContrastToIC();        _SetDownMix(); #ifndef NO_DISC_MODE //CoCo2.37p        _TransferLanguageToSPRM();#endif //#ifndef NO_DISC_MODE //CoCo2.37p        _SetDNRToIC();#ifdef  SUPPORT_KARAOKE_SET        if ((__SetupInfo.bAudioKaraoke - SETUP_AUDIO_KARAOKE_BASE) == 0) //on            CHIPS_MICControl(CHIPS_ON);        else if ((__SetupInfo.bAudioKaraoke - SETUP_AUDIO_KARAOKE_BASE) == 1) //off            CHIPS_MICControl(CHIPS_OFF);#endif#ifndef NO_DISC_MODE //CoCo2.37p        //initial the System parameter only in Setup module not in NV_InitialParameters        // reference Anex J        __wSPRMs [10]=0;     // TT_PGCN fot NV_TMR, 1 to 7fffh(bits 0-14)        __wSPRMs [11]=0;     // Player Audio ixing Mode(P_AMXMD) for karaoke.        // must use upper case        strncpy((char *)&__wSPRMs[12], "US", 2);        NV_Setting(SET_PARENTAL_CONTROL, NULL_0);/* Alan1.05        // Paraental level(PTL_LVL), 1-8(bits 0-3)        __wSPRMs[13]= __SetupInfo.bParentalCtl - SETUP_CUSTOM_PC_LEVEL_BASE + 1;        // don't do parental control, set as highest level        if (!__SetupInfo.bParentalControl )            __wSPRMs[13]=8;*/        // RD_ONLY        // default ???        __wSPRMs [14]=0;     // Player configuration(P_CFG) for Video        __wSPRMs [15]=0;     // P_CFG for Audio        __wSPRMs [17]=0;     // Initial Language Code extension(INI_LCD_EXT)        __wSPRMs [19]=0;     // Initial Language Code extension for SPST#endif //#ifndef NO_DISC_MODE //CoCo2.37p#ifndef REMOVE_SETUP_SPEAKER_TEST    // brian.277a Test Tone    __SetupInfo.bAudioTestTone = SETUP_AUDIO_SPEAKER_TEST_AUTO;#endif    SETUP_LoadLanguage();//#ifdef SUPPORT_CHAR_ENCODING_SWITCH    OSD_ReplaceFont();//#endif    return TRUE;}//  ***************************************************************************//  Function    :   _GetPasswordNumber//  Description :   This function will transfer the char password to "number" password.//  Arguments   :   None.//  Return      :   The password number.//  Side Effect ://  ***************************************************************************WORD    _GetPasswordNumber(void){    WORD    wPassword = 0;#ifndef NO_SETUP    wPassword =  (WORD)__bPassword[0]*(WORD)1000;    wPassword += (WORD)__bPassword[1]*(WORD)100;    wPassword += (WORD)__bPassword[2]*(WORD)10;    wPassword += (WORD)__bPassword[3];#endif    return wPassword;}//  ***************************************************************************//  Function    :   _SetMenuEnable//  Description :   This function will set __bMenuItemEnable array according to//                  bMode.//  Arguments   :   VCD mode: bMode == 1, Run-time mode: bMode == 2//  Return      :   none//  Side Effect ://  ***************************************************************************void    _SetMenuEnable(BYTE bMode){#ifndef NO_SETUP    switch (bMode)    {        case 0:	case 1:	case 2:		// enable all items		// Note: take care of the size of _bEnableXXX arry, may not be just 1 		_bEnableLanguage[0] = 0xFF;		_bEnableScreen[0] = 0xFF;		_bEnableAudio[0] = 0xFF;		_bEnableCustom[0] = 0xFF;		_bEnableMain[0] = 0xFF;        break;    }    switch (bMode)    {	case 1:	//VCD mode	case 2:	//Run-time mode            OSDMENU_SET_ITEM_ENABLE(SETUP_MENU_LANGUAGE, SETUP_LANGUAGE_MENU, FALSE);            OSDMENU_SET_ITEM_ENABLE(SETUP_MENU_LANGUAGE, SETUP_LANGUAGE_AUDIO, FALSE);            OSDMENU_SET_ITEM_ENABLE(SETUP_MENU_LANGUAGE, SETUP_LANGUAGE_SUBTITLE, FALSE);#ifndef REMOVE_SETUP_SPEAKER_TEST            OSDMENU_SET_ITEM_ENABLE(SETUP_MENU_AUDIO, SETUP_AUDIO_SPEAKER_TEST, FALSE);#endif            // Brian2.79, use __bCountStop to determine the status            // Allow change TV Type when pre-stop, i.e., __bCountStop == 1            // Enable TV Type setting when play AVI format files             if ((__bCountStop != 1) && (__bAttrPlay != ATTR_AVI))            {                //disable "TV TYPE"                OSDMENU_SET_ITEM_ENABLE(SETUP_MENU_SCREEN, SETUP_SCREEN_TV_TYPE, FALSE);            }            break;    }	    switch (bMode)    {#ifndef ENABLE_CUSTOM_SETUP    case 1: //VCD mode#endif    case 2: //Run-time mode        // Brian2.79, use __bCountStop to determine the status        // Allow change CUSTOM SETUP when pre-stop, i.e., __bCountStop == 1        if (__bCountStop != 1)	{           //disable "CUSTOM SETUP"           OSDMENU_SET_ITEM_ENABLE(SETUP_MENU_CUSTOM, SETUP_CUSTOM_PARENTAL, FALSE);           OSDMENU_SET_ITEM_ENABLE(SETUP_MENU_CUSTOM, SETUP_CUSTOM_ANGLE_MARK, FALSE);           OSDMENU_SET_ITEM_ENABLE(SETUP_MENU_CUSTOM, SETUP_CUSTOM_DEFAULT_VALUE, FALSE);        }        else        {              // is in pre-stop and custom setup is enabled,

⌨️ 快捷键说明

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