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

📄 ircmd.~c

📁 Sunplus 8202S source code.
💻 ~C
📖 第 1 页 / 共 4 页
字号:

void ircmd_reading(void)
{
#ifdef SUPPORT_REP_READ
#ifdef IRCMD_DBG
    printf("============== ircmd_reading ================\n");
#endif
    //if in no volume state not, can't do repeat read
    if(user_mute || (audio_volume == 0) ){
        invalid_key();
        return;
    }
    
    if(full_scrn&READ){
        CancelRead();       
        if(rep_ab_mode == REPEAT_FIND_B)
            ircmd_post_func(CMD_FUNC|CMD_FUNC_REPAB);   
    }else{
        full_scrn=READ;
        ShowReadPage();
        
        //Maoyong added for IR U/D/L/R/Sel proc func setting 2004-9-24 9:19
        SetFullscrnCmdFuncPtr(read_func_up, read_func_down, read_func_left,
                              read_func_right, read_func_select);
    }
#endif  //SUPPORT_REP_READ
}


void ircmd_resume(void)
{

#ifdef SUPPORT_CDG
        UINT8 cdg=0;

    if ( (cd_type_loaded==CDDA) && (cd_subtype==CD_DA) && bReadSubChannel )
    {
        cdg=1;
#if 1//def HUAJIA_DVD
        if ( CDG_IsCDGNow() ) {
#if defined(NEW_STYLE_SETUP)||defined(SDRAM_16Mb_Mode)
        ircmd_play();
#else
            invalid_key();
#endif//NEW_STYLE_SETUP
            return;
        }
#endif
    }
#endif
#ifdef DISABLE_PLAY_AT_DVDREGIONERR   //oujx for tonic
    if(cd_type_loaded==CDDVD)
    if(dvd_error==REGION_ERR)
    {
        invalid_key();
        return;
    }
#endif
    if( resumeMSF == 0 )
    {
#if defined(NEW_STYLE_SETUP)||defined(SDRAM_16Mb_Mode)
        ircmd_play();
#else
        invalid_key();
#endif//NEW_STYLE_SETUP
        return;
    }

    if((cd_type_loaded != CDDA)&&(cd_type_loaded !=CDROM)&&(cd_type_loaded !=CDDVD))
    {
        if(IsPBCOn())
        {
            if ( (pFsJpeg->List.s.header!=LIST_PLAY) && (pFsJpeg->List.s.header!=LIST_SELECTION) )       //Jeff 20020520
            {
                invalid_key();
                return;
            }
        }
    }

#ifdef SUPPORT_CDG
        if(cdg)
    if ( CDG_IsCDGNow() && bReadSubChannel ) {
        CDG_Pause();
    }
#endif

    OSD1000ISP_STATUS(OSDISP_RESUME, OSDIR_GLOBAL);

    //PrintOsdMsg(STR_OS_RESUME,REGION0,2,0);
    PrintOsdMsg(STR_OS_RESUME,REGION1,2,0);
    cancel_rep();

    ircmd_post_func(CMD_FUNC | CMD_FUNC_RESUME);
    if (!user_mute) { //Jeff 20010904
        AUDIF_Demute();//2004AUDDRV AudioDemute();
    }
}

#include "ircmd_num.c" //terry,2004/1/14 02:42PM
#include "ircmd_zoom.c"//terry,2004/1/14 02:40PM
//void ircmd_zoom(void)

#ifdef CF_GPIO_CONTROL_COLOR
#include "ircmd_vfd_gpio.c"
#endif

//void ircmd_up(void)
//void ircmd_down(void)
//void ircmd_left(void)
//void ircmd_right(void)
#include "ircmd_dir.c" //terry,2004/1/30 04:14PM

void pbcoff_init()
{
    if( (cd_type_loaded==CDROM)||(cd_type_loaded==CDDVD) )
        return;

    if(!IsPBCOn())
        return;

    //pbc_black_enable=0;//jhuang 891108
    psd_st.psd_list_id = 0xffff;
    ircmd_callback_check = NULL;

    if((play_state!=VCD_STATE_STOP)&&((psd_state&PSD_PLAY_SEG)!=PSD_PLAY_SEG)&&(timeout_playback==0))
        bPbcOff=1;
    else
        ircmd_post_func(CMD_FUNC | CMD_FUNC_PBC);

    psd_state = 0;
}


void pbcon_init()
{
    psd_st.psd_list_id = 0x0;

    ircmd_cancel(C_SHOW|C_PLAY);

    playmode_sel(CLEAR_ALL); //0-11-17 12:15

    ircmd_post_func(CMD_FUNC | CMD_FUNC_PBC);

    //    DispCookOSD0(1);
}

/*
** playmode.
*/
#ifdef FUSS_DVD
void    ircmd_playmode_toggle(void)
{//pbc on/off
    int id;

#ifdef SUPPORT_MIDI_MENU_SEL
    extern UINT8 gIsMidiSelMenu;

    if((gIsMidiSelMenu)) 
    {
         ircmd_post_func(CMD_FUNC | CMD_FUNC_MENU);
        return ;
    }
#endif

    ircmd_cancel(C_SHOW|C_PLAY);

    if((cd_type_loaded!=CDDVD)&&(action_click))//nono 20020708
    {
        #ifdef IRCMD_DBG
        printf("rep cancel\n");
        #endif

        cancel_rep();
    }

    if(cd_type_loaded!=CDDVD)
    {
        if(action_click)
        {
            if (IsPBCOn())
            {
                disc_st_time = M2I(gettrkmsf(cd_trk_lo_now));
                pbcoff_init();
            }
            else
            {
                shuffle_flag = 0;
                pbcon_init();

                AVD_SetMediaTimeout();
#ifdef MONE_TIMEOUR_SRC
                printf(__FUNCTION__" timeout\n");
#endif
            }
        }

        if (IsPBCOn())
            id=STR_OS_ON;
        else
            id=STR_OS_OFF;

        OSD1000ISP_STATUS(OSDISP_MENUPLAY, OSDIR_MENU);

        //PrintOsdMsg(STR_OS_MENUPLAY|(id<<8),REGION1,1,4);
        PrintOsdMsg(STR_OS_MENUPLAY|(id<<OSDSTR_ID_TOTL_BIT),REGION1,1,4);

    }else
    {

#ifdef ONLY_PBC//nono 20020708
        {
            invalid_key();
            return;
        }
#else
        ircmd_root_menu();      //terry,0508, revise seq.
#endif

    }
}
#else
void ircmd_playmode_toggle(void)
{
    //pbc on/off
    int id;
#ifdef REPEAT_AB_REPEAT_IN_ONE_EKY
extern int repeat_key;
#endif

#ifdef SUPPORT_MIDIDISK_TITLE
    if (bIsPlayMidiTitle)//xlluo for midi title
    {
		invalid_key();
		return;
    }
#endif

#ifdef INVALID_MENUKEY_WHEN_PROG_PLAY
    if(prog_cnt)                  //hq,for ngailik, 2004-3-6 22:07
    {
        invalid_key();  
        return;
    }    
#endif//INVALID_MENUKEY_WHEN_PROG_PLAY  
#ifdef SUPPORT_MIDI_MENU_SEL
    extern UINT8 gIsMidiSelMenu;

    if((gIsMidiSelMenu)) 
    {
         ircmd_post_func(CMD_FUNC | CMD_FUNC_MENU);
        return ;
    }
#endif

#ifdef MENU_STOP_EXCHANGE        //xulf 2003-12-06 for menu and PBC 2-key.
    if(cd_type_loaded == CDROM) // Added by Robert for JPEG thumbnail previewing mode. 2002/05/07
    {
        if(JPEG_NORMAL_MODE == pFsJpeg->g_nJpegMode)
        { 
            OSD1000ISP_STATUS(OSDISP_MENUPLAY, OSDIR_MENU);

            PrintOsdMsg(STR_OS_MENUPLAY,REGION1,1,0);
            return;
        }
    }
#endif

#if defined(USE_PBC_TO_JPG_RETURN)//add by wangfeng 2003-12-13 10:49

#ifdef SUPPORT_FILE_SYSTEM_MODE // nono 20030807
    if( (Is_MP3_STATE())||(Is_OTHER_STATE()) )
#else
    if(Is_MP3_STATE())
#endif
    {
        invalid_key();  
        return;
    }
    
    //if(pFsJpeg->gifsState == FS_STATE_JPEG||Is_JPEG_STATE())
    if(Is_JPEG_PLAY_STATE()==1)//nono 3-12-17 19:42
    {
        ircmd_return();
    return;
    }
//  if(Is_JPEG_STATE())

#endif//USE_PBC_TO_JPG_RETURN)

#ifdef  INVALID_ZOOM_IN_DVD_MENU//XLJ2004-3-26
//cancel zoom when return to choosing Menu by pressing menu key. heqiang, 2004-4-23 9:52
    ircmd_cancel(C_SHOW | C_PLAY | C_ZOOM);
#else//INVALID_ZOOM_IN_DVD_MENU
    ircmd_cancel(C_SHOW | C_PLAY);
#endif//INVALID_ZOOM_IN_DVD_MENU  

#if defined(ADJUSTING_ACTION_VALID_RIGHT_NOW)
    action_click = 1;
#endif

    #if defined(SUPPORT_FILE_SYSTEM_MODE)
    if((cd_type_loaded!=CDDVD)&&(action_click)&&(Is_MP3_STATE()==0)&&(Is_OTHER_STATE()==0)&&(Is_JPEG_STATE()==0) )//nono  edit it  2004-03-01 13:41
    #else
    if((cd_type_loaded!=CDDVD)&&(action_click)&&(Is_MP3_STATE()==0) )//nono 20020708
    #endif//#if defined(SUPPORT_FILE_SYSTEM_MODE)
    #ifdef SKYWORTH_DVD
     if(cd_type_loaded!=CDROM)
    #endif 
    {
        #ifdef IRCMD_DBG
        printf("rep cancel\n");
        #endif

        cancel_rep();
      
    }    

    if (cd_type_loaded == CDROM) // Added by Robert for JPEG thumbnail previewing mode. 2002/05/07
    {
        if (Is_JPEG_STATE())
        {
            ircmd_callback_check = fs_callback_check;
            ircmd_post_func(CMD_FUNC | CMD_FUNC_MENU);
        }
        else
            invalid_key();
    }
    else if (cd_type_loaded != CDDVD)
    {
#ifndef ADJUSTING_ACTION_VALID_RIGHT_NOW
        if (action_click)
#endif
        {
            if (IsPBCOn())
            {
                disc_st_time = M2I(gettrkmsf(cd_trk_lo_now));
                pbcoff_init();
            }else
            {
                shuffle_flag = 0;
                pbcon_init();
		#ifdef PBC_ON_NO_REPEAT
		  repeat_key=0;
		#endif
                AVD_SetMediaTimeout();
#ifdef MONE_TIMEOUR_SRC
                printf(__FUNCTION__" timeout\n");
#endif
            }
        }

        if (IsPBCOn())
        {
            OSD1000ISP_STATUS(OSDISP_MENUON, OSDIR_MENU);

            id = STR_OS_ON;
        }
        else
        {
            OSD1000ISP_STATUS(OSDISP_MENUOFF, OSDIR_MENU);

            id = STR_OS_OFF;
        }
        //PrintOsdMsg(STR_OS_MENUPLAY | (id << 8), REGION1, 1, 4);
#ifdef VCD_SHOW_PBC_NOT_MENUPLAY
        PrintOsdMsg(STR_OS_PBC | (id << OSDSTR_ID_TOTL_BIT),REGION1,1,4);
#else
        PrintOsdMsg(STR_OS_MENUPLAY | (id << OSDSTR_ID_TOTL_BIT), REGION1, 1, 4);
#endif
    }
    else
    {

#ifndef  DVD_SEQ_PLAY

#if defined(ONLY_PBC)||defined(SETUP_DONGLI459)//nono 20020708
        {
            invalid_key();      //2-6-18 23:04 for jcg_dvd
            return;
        }
#else
        ircmd_root_menu();      //terry,0508, revise seq.
#endif

#else
        //terry,2002/5/2 04:09PM
        //add new dvd play mode
        //use pbc key to toggle play mode
        UINT32 cmd;

#ifndef ADJUSTING_ACTION_VALID_RIGHT_NOW
        if(action_click)//toggle to on/off
#endif
            dvd_menu_play = (++dvd_menu_play) % 2;

        if(dvd_menu_play)
        {
            id = STR_OS_ON;
            cmd = CMD_FUNC | CMD_FUNC_MENU;
        }
        else
        {
            id = STR_OS_OFF;
            cmd = CMD_FUNC | CMD_FUNC_PLAY;
        }
        //PrintOsdMsg(STR_OS_MENUPLAY | (id << 8), REGION1, 1, 4);

#ifdef VCD_SHOW_PBC_NOT_MENUPLAY
        PrintOsdMsg(STR_OS_PBC | (id << OSDSTR_ID_TOTL_BIT),REGION1,1,4);
#else
{
        OSD1000ISP_STATUS(OSDISP_MENUPLAY, OSDIR_MENU);

        PrintOsdMsg(STR_OS_MENUPLAY | (id << OSDSTR_ID_TOTL_BIT), REGION1, 1, 4);
}
#endif

#ifndef ADJUSTING_ACTION_VALID_RIGHT_NOW
        if(action_click)//toggle to on/off
#endif
        {
            dvd_title = 1;
            dvd_chapter = 1;
            ircmd_post_func(cmd);
        }
#endif
    }
}
#endif

#ifdef DEACTIVATE_PSCAN
extern BYTE    enter_deactivate_pscan;   
extern BYTE    pscan_count;
extern BYTE Pscan_on;
#endif

void ircmd_root_menu(void)
{
#ifdef DEACTIVATE_PSCAN
if((play_state==VCD_STATE_OPEN)&&(Pscan_on==1))
{
   enter_deactivate_pscan=1;
   pscan_count=0;
}
#endif

 #ifdef SUPPORT_MIDIDISK_TITLE
        if (bIsPlayMidiTitle)//xlluo for midi title
        {
		invalid_key();
		return;
        }
#endif
    #if defined(USE_ROOTMENU_TO_JPG_RETURN)

#if defined(SUPPORT_FILE_SYSTEM_MODE)&&!defined(MENU_RETURN_INONE) // nono 20030807
    if( (Is_MP3_STATE())||(Is_OTHER_STATE()) )
#elif defined(MENU_RETURN_INONE)//nono 4-8-7 3:37 for eastech
    if(Is_MP3_STATE()||(play_state == VCD_STATE_STOP))
#else
    if(Is_MP3_STATE())
#endif
    {
        invalid_key();  
        return;
    }
    
    if(pFsJpeg->gifsState == FS_STATE_JPEG||Is_JPEG_STATE()||Is_OTHER_STATE())  //wsf 0802
    {
        ircmd_return();
        return;    //wsf 0802
    }
    if(Is_JPEG_STATE())
    return;
#endif//USE_TITLEMENU_TO_JPG_RETURN

#ifdef SDRAM_16Mb_Mode              //gerry,2004-4-7 15:00
    if((full_scrn==SETUP)||(full_scrn==PROGRAM))
    {
        invalid_key();
        return;    
    }

#endif//SDRAM_16Mb_Mode

    //printf("1.ROOT MENU\n");
    ircmd_cancel(C_SHOW|C_PLAY);

#ifdef DVD_AUDIO    // alan, 2002/11/13 02:58

⌨️ 快捷键说明

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