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

📄 setup_tab.c

📁 Sunplus 8202S source code.
💻 C
📖 第 1 页 / 共 5 页
字号:
{
    int res;
    if(SETUP_SPK_SUBWOOFER==3)
        res=1;
    else
        res=0;
    return res;
}


int WillKeyShiftNotDo(void)//nono 2-5-12 20:54
{

    int res=0;

#ifndef SETUP_ALL_VALID//nono 2003-9-25 16:54
    if( ((SETUP_SPK_DOWNMIX==AC3DOWNMIXOFF)||(coding_mode_now==AUDIF_CODING_MODE_LPCM) )&&(cd_type_loaded==CDDVD) )
        res=1;
    else if( (SETUP_SPK_DOWNMIX==AC3DOWNMIXOFF)&&(coding_mode_now==AUDIF_CODING_MODE_DTSCD) )
        res=1;
#endif

    return res;
}


#ifdef USER_MPEG_LOGO
UINT8 setup_GetMPEGLogoItem(void)
{
    return (SETUP_MPEG_LOGO);
}

void setup_SetMPEGLogo(void)//nono 2-5-16 18:05
{

    //setup_sel[SysNextPage][MPEG_LOGO_ITEM]=3;
    SETUP_MPEG_LOGO = MPEG_LOGO_ON;//3
    //exe_setup_function(STR_OS_SELECT_LOGO,STR_OS_DEFAULT_SETUP,0);  // alan, 2003/9/16 05:03PM
    exe_setup_function(STR_OS_SELECT_LOGO,STR_OS_MPEG_LOGO,0);  //NONO 2004-2-17 17:02
    //setup_sel[7][2]=3;
    run_save_sel_cmd(SysNextPage, MPEG_LOGO_ITEM);//nono 2004-2-17 17:02
    
}

#ifdef YUXING_MIDI_DVD        //nono 2004-10-28 14:34
void setup_SetDefaultLogo(void)//nono 2-5-16 18:05
{
    SETUP_MPEG_LOGO = 2;//3
    exe_setup_function(STR_OS_SELECT_LOGO,STR_OS_DEFAULT_SETUP,0);  // alan, 2003/9/16 05:03PM
    run_save_sel_cmd(SysNextPage, MPEG_LOGO_ITEM);//nono 2004-2-17 17:02
}
#endif
#endif//USER_MPEG_LOGO


int setup_IsSpkDownmixOff(void)//nono 2-5-16 18:05
{

    if(SETUP_SPK_DOWNMIX==AC3DOWNMIXOFF)
        return 1;
    else
        return 0;

}
void setup_Showredframe(UINT8 page_val)
{
#ifndef SETUPMENU_16Mb_NO_ICON
        UINT16 line=SETUP_MAX_WIDTH*16-20;

        if(page_val==7) page_val=0;
        osd_DrawLine(line*page_val/6+30,14,line*page_val/6+80,14,SANTIBGCOLOR,1);
        osd_DrawLine(line*page_val/6+30,50,line*page_val/6+80,50,SANTIBGCOLOR,1);
        osd_DrawLine(line*page_val/6+30,14,line*page_val/6+30,50,SANTIBGCOLOR,1);
        osd_DrawLine(line*page_val/6+80,14,line*page_val/6+80,50,SANTIBGCOLOR,1);
#endif
}

void setup_ShowAC3DynamicRange(void)
{
    BYTE    buf[40];
    BYTE    fontColor;

    if ( (page!=AC3DIGITALPAGE) ||
        (setupLevel!=2) ||
        (index_y!=AC3OUTMODEITEM)
        )
    {
        return;
    }


    if ( (SETUP_AC3DIGITAL_OUTMODE==AC3DYNAMICITEM2) && 1
//      (SETUP_SPK_DOWNMIX==AC3DOWNMIXOFF)
        )
    {
        fontColor = SFONTCOLOR;
    } else {
        fontColor = SGRAYCOLOR;
    }

    id = setup_item[page][AC3DYNAMICITEM1][1];
    psprintf(buf, "%s", _OsdMessegeFont1[osd_font_mode][id]);
    osd_DrawString(SETUP_MENU_XSTART+1, AC3DYNAMICITEM1+SETUP_MENU_YSTART, buf, fontColor, SBGCOLOR);
}



void set_AC3DynamicRange(void)
{
    if (ac3_dynarange) {
        AUDIF_Set_OutputMode(OUT_CustomModeB_DigitalDialnormK1, ac3_dynarange * 0x2020 - 0x0101);//2004AUDDRV AudioSetOutputMode(0x80, ac3_dynarange * 0x2020 - 0x0101);
    } else {
        AUDIF_Set_OutputMode(OUT_CustomModeB_DigitalDialnormK1, 0);//2004AUDDRV AudioSetOutputMode(0x80, 0);
    }
}

#ifdef AUDIO_2CH_5_1CH
int setup_IsSpkStereo(void)
{
    if(SETUP_SPK_DOWNMIX == DOWNMIXSTEREO)
        return 1;
    else
        return 0;
}


/*
 * to set 5.1 channel output mode
 *
 */
void AudioSet5_1chOutput(void)
{
    exe_setup_function(STR_OS_DOWNMIX_SETUP,STR_OS_OFF,0);//turn off mix off
    SETUP_SPK_DOWNMIX = AC3DOWNMIXOFF;  
    
#ifdef YI_XIAN_TONG//zhaoyanhua add 2003-12-17 9:51
        Gpio5ChOutput();
#endif
}

/*
 * to set PROLOGIC_II channel output mode
 *
 */
#ifdef SUPPORT_PROLOGIC_II  //axel 2004/1/28 10:30
void AudioSetPrologic_IIOutput(void)
{
    //abstract from setup_tab_ui.c  
    //NOTE:
    // can not change the order.
    //zhaoyanhua note 03-11-1 18:58 
    exe_setup_function(STR_OS_PROLOGIC,STR_OS_PL_MUSIC,0);
    SETUP_PROLOGIC_II= 3;//STR_OS_PL_MUSIC  to update SETUP in time.
    //set AUDIO output SIMULATE
    //because BBK need SIMULATE and DIGITAL ouput at the same time
    //so we must mask the following sentences.
    //zhaoyanhua mask 2003-11-29 20:29
    #if 0
    SETUP_SPDIF=2;
    exe_setup_function(STR_OS_AUD_OUT,STR_OS_SIMULATE,0);
    #endif
    //set DOWNMIX OFF 
    SETUP_SPK_DOWNMIX = AC3DOWNMIXOFF;  
    exe_setup_function(STR_OS_DOWNMIX_SETUP,STR_OS_OFF,0);
    
}
#endif //SUPPORT_PROLOGIC_II //axel 2004/1/28 10:30
#endif// AUDIO_2CH_5_1CH

//terry,2004/2/5 12:08PM
void setup_SetTV_format(UINT8 id)
{//terry,2004/2/5 12:02PM
#ifndef NO_TV_FORMAT    
   #ifndef FUSS_TV_DVD//nono 2-8-20 12:55
   int i;
   
   for(i=2;i<MAX_ITEM_SEL;i++)
   {
      if(setup_item[SYSPAGE][TV_FORMAT][i]==id)
      {
    SETUP_TV_FORMAT=i;
    run_save_sel_cmd(SYSPAGE,TV_FORMAT);//terry,2004/2/3 03:35PM
    break;
      }
   }
   #endif
#endif    
}

#ifdef FORCE_RETURN_TO_DEFAULT_TV_FORMAT//nono 20030913
void setup_SetTV_default_format(void)
{
    SETUP_TV_FORMAT = MIN_ITEM_SEL+DEFAULT_TV_SYS;
    //setup_tv_format(DEFAULT_TV_SYS); // Robert 020919
    //exe_setup_function(STR_OS_TV_SYS,STR_OS_NTSC,0);
//modefied by wangfeng,2004-2-9 17:39
#if defined(TV_FORMAT)&& !defined(FORCE_RETURN_TO_DEFAULT_TV_FORMAT)//terry,2004/2/3 01:34PM
    
    exe_setup_function(STR_OS_TV_SYS,setup_item[SYSPAGE][TV_FORMAT][SETUP_TV_FORMAT],1);            
#else
        //exe_setup_function(STR_OS_TV_SYS,STR_OS_NTSC,1);
        #ifdef FORCE_RETURN_TO_FORMAT_PAL
        tv_format=MODE_PAL;//MODE_NTSC;
        #elif defined(FORCE_RETURN_TO_FORMAT_AUTO)   //fengjl  add 2004-03-09 15:47
        tv_format=MODE_AUTO;
        #else
        tv_format=MODE_NTSC;
        #endif
        update_tv_format_sel();
        setup_tv_format(tv_format);
        #ifdef FORCE_RETURN_TO_FORMAT_PAL
        setup_SetTV_format(STR_OS_PAL);
        #elif defined(FORCE_RETURN_TO_FORMAT_AUTO)
        setup_SetTV_format(STR_OS_AUTO);
        #else
        setup_SetTV_format(STR_OS_NTSC);
        #endif
         //exe_setup_function(STR_OS_TV_SYS,STR_OS_PAL,1);
#endif  
}
#endif//FORCE_RETURN_TO_DEFAULT_TV_FORMAT

#ifdef USE_PROLOGIC_II_KEY//clead 2003-8-7 
void set_prologic_val(BYTE prologic_mode)
{

    BYTE type=0x23;
    switch (prologic_mode)
    {
        case 0:
            pl2_init_val|=(1<<20);      // set prologic-II enable
            pl2_init_val|=(1<<16);      // set init-val to movie mode                       
            //DSP set prologic-II enable
            AUDIF_Set_ProLogicII(0x11);//2004AUDDRV AudioIOControl(PROLOGIC,0x11,0);
            type=0x23; //Oliver : prologic-II Decoder Mode - Movie/Standard Mode
            printf("<MOVIE>, pl2_init_val=0x%06x\n",pl2_init_val);
            break;
        case 1:     
            pl2_init_val|=(1<<20);      // set prologic-II enable
            pl2_init_val&=(~(1<<16));   // set init-val to music mode
            //DSP set prologic-II enable
            AUDIF_Set_ProLogicII(0x11);//2004AUDDRV AudioIOControl(PROLOGIC,0x11,0);
            type=0x22; //Oliver : prologic-II Decoder Mode - Music Mode
            printf("<MUSIC>, pl2_init_val=0x%06x\n",pl2_init_val);
            break;
        case 2:                 
            //pl2_init_val&=(~(1<<20)); // set prologic-II disable
            pl2_init_val=0x037300;
            //DSP set prologic-II disable
            AUDIF_Set_ProLogicII(0x10);//2004AUDDRV AudioIOControl(PROLOGIC,0x10,0);
            printf("<OFF>, pl2_init_val=0x%06x\n",pl2_init_val);
            break;
    }
    //DSP set prologic-II Decoder Mode Select
    AUDIF_Set_ProLogicII(type);//2004AUDDRV AudioIOControl(PROLOGIC,type,0);
    SETUP_PROLOGIC_II=prologic_mode+2;
    exe_setup_function(STR_OS_PROLOGIC, setup_item[AUDPAGE][PROLOGIC_II][SETUP_PROLOGIC_II], 1);
    //clead 2003-10-21 
    run_save_sel_cmd(AUDPAGE,PROLOGIC_II);//clead 2003-10-21 
}
#endif //clead_prologic



void setup_SetPScan(void)
{
    #ifndef FUSS_TV_DVD//nono 2-8-20 12:55
    SETUP_VIDEO_FORMAT = ap_tv_out_id+2;

#if defined(SCART_TV)||defined(KSD_SCART_TV)||defined(SCART_TV_2)||defined(SCART_TV_4)||defined(SCART_TV_5)//wangfeng 2003-12-2 23:03
        //if(tv_out_id==PC_VGA||tv_out_id==TV_RGB)
        if(tv_out_id==TV_RGB)//nono 2003-8-24 21:08
        SET_SCART_RGB(1);
        else
        SET_SCART_RGB(0);   
#elif defined(SCART_TV_3)
    if(tv_out_id==TV_RGB)
        SET_SCART_RGB(0);
    else
        SET_SCART_RGB(1);
#endif
   
#ifdef SUPPORT_SCART_TV//SPHE8202//nono 4-3-27 21:35
    if(tv_out_id==TV_RGB)
    {
        SET_SCART_GPIO_SFT_CFG_CTRL();
        SET_SCART_TO_RGB();
    }
    else
    {
        SET_SCART_GPIO_SFT_CFG_CTRL();
        SET_SCART_TO_CVBS();
    }
#endif//SPHE8202
   
    //run_save_cmd();
    run_save_sel_cmd(SYSPAGE,2);
    #endif
}

//////////////////////////////////
#if 0//def IR_KEY_SET_VIDEO_MODE
void set_video_val(BYTE video_mode)
{
    int i=0;
        UINT8 parm[6][3] = { {8,8,8},//0
                             {7,9,6},//1
                             {9,8,10},//2
                             {8,9,9},//3
                             {11,10,9},//4
                             {7,5,7},//5
                           };

        if(video_mode<6)
        {
                SETUP_BRIGHTNESS=parm[video_mode][0];
                SETUP_CONTRAST=parm[video_mode][1];
                SETUP_HUE=parm[video_mode][2];
        }else
        {
            ReadFromI2c(0xa0, 240,(BYTE *)&SETUP_BRIGHTNESS,1);
            ReadFromI2c(0xa0, 241,(BYTE *)&SETUP_CONTRAST,1);
            ReadFromI2c(0xa0, 242,(BYTE *)&SETUP_HUE,1);
        }
        SetBrightness(SETUP_BRIGHTNESS - 2);
        SetContrast(SETUP_CONTRAST - 2);
        SetHUE(SETUP_HUE - 2);
        //SetSaturation(SETUP_SATURATION - 2);
        do{
        run_save_sel_cmd(VIDEOPAGE,i);
        i++;
        }while(i<4);
}
#endif
//

//
#ifdef IR_KEY_SET_VIDEO_MODE
void set_video_val(BYTE video_mode)
{

        UINT8 b,c,h,s;
    //b:SETUP_BRIGHTNESS
    //c:SETUP_CONTRAST
    //h:SETUP_HUE
    UINT8 parm[6][3] = { {8,8,8},//0
                         {7,9,6},//1
                         {9,8,10},//2
#ifndef SET_4_VIDEO_MODE
                         {8,9,9},//3
                         {11,10,9},//4
                         {7,5,7},//5
#endif//SET_4_VIDEO_MODE
                       };
#ifdef SET_4_VIDEO_MODE
    if(video_mode<3)
#else//SET_4_VIDEO_MODE
    if(video_mode<6)
#endif//SET_4_VIDEO_MODE
    {
        b=parm[video_mode][0];
        c=parm[video_mode][1];
        h=parm[video_mode][2];
                s=2;
                SetBrightnessAdjust(b - 2,c);
                SetContrastAdjust(c - 2,b);
    }else
    {
        b=SETUP_BRIGHTNESS;
            c=SETUP_CONTRAST;
            h=SETUP_HUE;
                s=SETUP_SATURATION;
                SetBrightness(b - 2);
                SetContrast(c - 2);

    }
    
        //SetBrightness(SETUP_BRIGHTNESS - 2);
        //SetContrast(SETUP_CONTRAST - 2);
    //SetSaturation(SETUP_SATURATION - 2);
        //SetHUE(SETUP_HUE - 2);


        //SetSaturation(SETUP_SATURATION - 2);
        SetHUE(h - 2);
        SetSaturation(s - 2);
        //if(video_mode_val==6)

}

#endif 
//
#ifdef  AUTO_ADJUST_TV_TYPE  //lijd 2004-9-15 13:33
void auto_adjust_tv_type(void)
{
    int  mode;
    mode=(pDSV->dV_ATR>>8)&0x0f;
    switch(mode)
    {
         case 0x0e:  //16:9
                   SETUP_TV_TYPE=4;                
                   exe_setup_function(STR_OS_TV_RATIO,STR_OS_16_9,1);
                   run_save_sel_cmd(0,3);
                   ExitSetupPage(1);
                   break;
         case 0x0d:  //4:3LB
                   SETUP_TV_TYPE=3;  
                   exe_setup_function(STR_OS_TV_RATIO,STR_OS_4_3LB,1);
                   run_save_sel_cmd(0,3);
                   ExitSetupPage(1);
                   break;
         case 0x03:  //4:3PS
                   SETUP_TV_TYPE=2;          
                   exe_setup_function(STR_OS_TV_RATIO,STR_OS_4_3PS,1);
                   run_save_sel_cmd(0,3);
                   ExitSetupPage(1);
                   break;
         default:
                    
                   break;
                   
     }
    
}
#endif
//
//
#ifdef ADD_DVI311_SETUP
#include "spv301.h"
extern void scaler_main(void);

void set_default_value_dvi(void)
{
    if(getVPP_TVsystem())

⌨️ 快捷键说明

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