亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频

? 歡迎來到蟲蟲下載站! | ?? 資源下載 ?? 資源專輯 ?? 關于我們
? 蟲蟲下載站

?? ir_parser.c

?? OSD顯示,單片機實現,ICCAVR! 代碼風格嚴謹,為高人所寫.我僅為了上傳換取資料
?? C
?? 第 1 頁 / 共 4 頁
字號:
/*****************************************************************************
** FILE
** ir_parse.c
**
** DESCRIPTION
** process IR keys and send to ir_cmd_xxx for actual process
**
**   creater: Terry
**
**
**
****************************************************************************/

#include "config.h"
#include "regmap.h"
#include "global.h"

#ifdef PMP_UI    //////////////////////yangli   2005/5/20
#include "fsNAV.h"
#endif


#include "cfont.h"
#include "func.h"
#include "sio.h"
#include "ircmd.h"
#include "ircode.h"
#include "user_init.h"
#include "iop.h"
#include "atapi_if.h"
#include "macro.h"
#include "osd.h"
#include "bitop.h"
#include "timer.h"
#include "kernel.h"
#include "memcfg.h"
#ifdef SUPPORT_MIDI
#include "fsmidi.h"                //ouyang  2004.08.13 take apart the function of "up" key
#ifdef SUPPORT_MIDI_MENU_SEL     xlluo 2004.11.23
#include "fsmidiUI.h"
#endif
#endif
#ifdef AD_TCL//2004-3-22 13:11 lijd
#include "user_if.h"
#endif
#ifdef NEWSTYLE_WINDOW
#include "vpp.h"
#include "osd_arc.h"
#endif
#ifdef EASTWIN
#include "gpio.h"//tulijuan040908
#endif

#ifdef TAS3001_AMP
#include "ti3001.h"
#endif

#ifdef TAS5026_AMP
#include "ti5026.h"
#endif

#ifdef DIVX_DRM
#include "DRM_UI.h"
#endif

//#define ssc_watch_ir_code   1

#ifndef DVDRELEASE
#define IR_DBG  //terry,2004/2/19 05:04PM,pls don't mark it.
#define MONE_DSP24_SHOW_CODEC_NAME_BY_ANGLE_KEY       // 2004/12/21 yltseng
#endif

#ifdef JPG_EFFECT
#include "jpegeffect.h"
#endif

#ifdef SUPPORT_REP_READ
#include "read.h"
#endif

#ifdef SUPPORT_DISPLAY_MENU
#include "setup_def.h"
#endif

#ifdef QSI_SHOW_ERR_RATE
#include "uart.h"
#endif

#ifdef SUPPORT_RECEIVER  //chenzhao20050620
#include "amp_gui.h"
#endif

#ifdef NEW_PARENTAL_GUI//zhaoyanhua add 2004-2-9 13:02
extern BYTE new_parental_gui;
#elif defined(MODIFY_PARENTAL_GUI)
extern BYTE parental_gui_flag;
#endif//NEW_PARENTAL_GUI

#if defined(NEW_PARENTAL_GUI)||defined(MODIFY_PARENTAL_GUI) 
extern void ExitParentalGUI(void);
#endif

#define CLS_ERR_KEY

#ifdef PRE_NEXT_FLAG        
UINT8 PRE_FLAG;
UINT8 NEXT_FLAG;
#endif  //axel, for invalid IRC_NEXT in bad discs 2004/7/12 

//extern void osd_restore();
extern BYTE Is_JPEG_STATE();
extern UINT32 save_srn_start_t;
extern int is_dvd_prohibit_key(void);
extern int is_menu(void); // in cderr.c
extern void init_ir_num(void);
extern void osdshow(UINT8 r,char *buf);

#ifdef TP6317_PANNEL   //yaowh add 04-10-25
   BYTE TP6317_Power = 0 ;
#endif

#ifdef NEW_UART_COMMAND            //lijinhai for fuss new request
extern BYTE nCurrentVolMode;
#endif

#ifdef NEWSTYLE_WINDOW
extern void exit_browse_func(void);
#endif

#ifdef JPG_EFFECT
extern void FSGUI_Menu(void);
#endif

#ifdef SUPPORT_TUNER
extern void tuner_key(BYTE key);
#endif

#ifdef DOUBLE_TITLE //susu add 2003-8-27 13:55
extern void exit_double_title(void);
#endif

#ifdef  ROTARY_VOLUME
extern void RotaryStateChk(void);
#endif

extern BYTE setup_IsSettingPassword(void);

#ifdef HELP_BMP_GUI
    #define HELP_PAGE_COUNT 4
#else
    #define HELP_PAGE_COUNT 3
#endif

void ircmd_null(){}

#ifdef QSI_PLATFORM //qsi: added by johnson 20040812
extern void spi_cmd_switch_media_to_card(void);
extern void spi_cmd_switch_media_to_dvd(void);

void ircmd_card_cd_select(void)
{
#ifdef SUPPORT_CARD_STORAGE
    if( source_type_now == source_disc)
    {
        spi_cmd_switch_media_to_card();
    }
    else
    {
        spi_cmd_switch_media_to_dvd();
    }
#endif
}
#endif

//nono 5-5-9 12:48 move it to irc_function_name_tbl.c
#include "irc_function_name_tbl.c"

//nono 5-5-9 12:48 move it to irc_function_name_tbl_spi_qsi.c
#include "irc_function_name_tbl_spi_qsi.c"


//Marked by maoyong 2004-9-24 10:50, now just use a function to set proc func pointer

#ifdef SUPPORT_NESGAME
BYTE Game_GetBreakIr(BYTE i)
{
    switch(i)
    {
        case 0:return IR_EJECT;
        case 1:return IR_POWER;
        case 2:return IR_STOP;
        case 3:return IR_RETURN;
        case 4:return IR_POWER2; 
        case 5:return IR_RETURN2;        
        case 6:return IR_VOLUME_DOWN;
        case 7:return IR_VOLUME_UP;
        default: return 0xff;//terry,2004/2/2 04:35PM
    }
}

#ifdef SUPPORT_IR_GAME
BYTE Game_GetControlIr(BYTE i)
{
    switch(i)
    {
        case 0:return IR_RIGHT;
        case 1:return IR_LEFT;
        case 2:return IR_DOWN;
        case 3:return IR_UP;
        case 4:return IR_START; //terry,mark it,2004/2/2 04:35PM
        case 5:return IR_SELECT;
        case 6:return IR_A_KEY;
        case 7:return IR_B_KEY;
        case 8:return IR_RIGHT_UP;
        case 9:return IR_LEFT_UP;
        case 10:return IR_RIGHT_DOWN;
        case 11:return IR_LEFT_DOWN;        
        case 12:return IR_RIGHT2;
        case 13:return IR_LEFT2;
        case 14:return IR_DOWN2;
        case 15:return IR_UP2;
        case 16:return IR_START2; //terry,mark it,2004/2/2 04:35PM
        case 17:return IR_SELECT2;
        case 18:return IR_A_KEY2;
        case 19:return IR_B_KEY2;        
        default: return 0xff;//terry,2004/2/2 04:35PM
    }
}
#endif

#endif


//nono 5-5-9 12:37 move to ir_inv_tbl_include.c
#include "ir_inv_tbl_include.c"

int user_input_pwd=0;

void cancel_rep(void)
{
     
     if((rep_mode != REPEAT_IDLE)||(rep_ab_mode != REPEAT_AB_IDLE))
     {
        OSD1000ISP_STATUS(OSDISP_REP_IDLE, OSDIR_REPEAT);

        //2005.3.23, joshua, this string is too long for osd region2 on 16m platform
        #ifdef OP_PLAYMODE//libing 2005-5-26 20:45
        	PrintOsdMsg(STR_OS_REP_CNL,REGION2,1,0);
        #endif	
        #ifndef  SDRAM_16Mb_Mode
            PrintOsdMsg(STR_OS_REP_CNL,REGION2,1,0);
        #endif
        
        rep_mode    = REPEAT_IDLE;
        rep_ab_mode= REPEAT_AB_IDLE;
     }
}

#ifdef NEW_STYLE_SETUP
extern UINT8 logo_type;//NEW STYLE SETUP FOR GBM 
#endif//NEW_STYLE_SETUP

#if defined( SUPPORT_FONT_UTIL ) && defined( SUPPORT_MULTI_FONT_SWITCH )   // 2005/03/10 yltseng
#include "fsNav.h"
#include "fsGUI.h"
#include "LanguageUtil.h"

static UINT8   s_uiNeedReadFileInformation = FALSE;

void ReadFileInformation()
{
    if( !s_uiNeedReadFileInformation )
        return;

    #define FSJPEG_BUF_OFFSET  ( ( sizeof( FSJPEGDATA ) >> 2 ) << 2 )
    
    FSJPEGDATA* pTmp = (FSJPEGDATA*) ( (UINT32)pFsJpeg + FSJPEG_BUF_OFFSET );
    memcpy( pTmp, pFsJpeg, sizeof( FSJPEGDATA ) );

    int iRes = 0;
    ReadFile( &iRes );

    memcpy( pFsJpeg, pTmp, sizeof( FSJPEGDATA ) );
    
    s_uiNeedReadFileInformation = FALSE;
}

static inline   ChangeFontByAngleKey( BYTE rx )
{
    if( rx == IRC_ANGLE )
    {
        if( cd_type_loaded == CDROM )
        {
            NextFont();

            s_uiNeedReadFileInformation = TRUE;
            
            if( !IsOtherStatePlayMode() )
            {
            	#ifndef PMP_UI
                ReadFileInformation();
                #endif                             
                extern BYTE JPEG_Preview_drawed;
    
                if( ( IsOtherStatePlayMode() && GetCurrentFileType() == CDROM_MP4 ) ||
                    ( ( pFsJpeg->gifsFuncBtn == FS_FUNC_JPEG ) && 
                      ( ( pFsJpeg->gifsState == FS_STATE_JPEG ) 
#if defined( FS_BMP_GUI ) || defined( NEW_MP3_GUI )
                        || ( pFsJpeg->g_nJpegMode == JPEG_THUMBNAIL_MODE )
#endif
                      ) ) )
                {
                    // do nothing
                }
                else
                {
                    if( Is_JPEG_STATE() && JPEG_Preview_drawed == JPEG_PREVIEW_IN_DIR_AREA )
                        FSGUI_Menu();
                   #ifdef PMP_UI
                     FSGUI_Refresh_PMP();
                     FSGUI_DirList(pFsJpeg->hdd_dir_current);
                     ShowHL(); 
                   #else
                    FSGUI_Refresh();
                   #endif
                   
                   
                    
                        
                }
            }
        }
        else
        {
            s_uiNeedReadFileInformation = FALSE;
        }
    }
}
#else
#define ChangeFontByAngleKey( rx )
#endif

#ifdef MONE_DSP24_SHOW_CODEC_NAME_BY_ANGLE_KEY  // 2005/02/18 yltseng
static inline void ShowDSPCodecNameByAngleKey( BYTE rx )
{
    if( rx == IRC_ANGLE )
    {     
        extern void DSP_GetCodecIDString( char* pBuf );
        extern void DSP_GetCodecVersionString( char* pBuf );
        
        char aID[32];
        DSP_GetCodecIDString( aID );
    
        char aVer[4];
        DSP_GetCodecVersionString( aVer );
        
        char aBuf[36];
        psprintf( aBuf, "%s %s", aID, aVer );
        
        psprintf(linebuf, "dsp info : %s\n", aBuf );
        io_write_wait(linebuf);
        ConvertLowerCaseToUpperCase( aBuf );
        osdshow( REGION1, aBuf );
    }
}
#else
#define ShowDSPCodecNameByAngleKey( rx )
#endif

static inline UINT32 RejectBySWD( BYTE rx __attribute__((unused)))
{
    BYTE res;
    res = FALSE;
    #ifdef SUPPORT_PLAY_SWD
    extern BYTE SWD_CheckIrcmd(BYTE rx);

    if( START_POLLING_SWD )
    {
        res = SWD_CheckIrcmd(rx);
    }
    #endif

    return res;
}
extern BYTE GetCurrentFileType();
void ircmd_pre_paser(BYTE rx)
{
    UINT8 need_run_cmd=1,display_again=0;//terry,0513 
    UINT32 invalid=ir_invalid_state[rx];
    #ifdef IR_DBG
    //printf("ir pre-parser in\n");    
    #endif
	
#if 0//ef SUPPORT_SMF	//add by xjliu for input device of flash driver 05-06-29
	extern UINT16 FlashKeyValue;
	if (FlashKeyValue == 0 && FlashIsEnable)//(FlashIsEnable)
	{
		switch(rx)
		   {
		        case IRC_UP:
				printf("xjliu:UP\n");
				FlashKeyValue = 1;
				//break;
				return;
		        case IRC_DOWN:
				printf("xjliu:DOWN\n");
				FlashKeyValue = 2;
				//break;
				return;
		        case IRC_LEFT:
				printf("xjliu:LEFT\n");
				FlashKeyValue = 3;
				//break;
				return;
		        case IRC_RIGHT:
				printf("xjliu:RIGHT\n");
				FlashKeyValue = 4;
				//break;
				return;
		        case IRC_TITLEMENU:
				printf("xjliu:SPACE\n");
				FlashKeyValue = 5;
				//break;
				return;
		        case IRC_RETURN:
				printf("xjliu:ENTER\n");
				FlashKeyValue = 6;
				//break;
				return;
			 case IRC_STOP:
			 	printf("xjliu:STOP flash\n");
			 	FlashKeyValue = 7;
			 	return;
			 case IRC_EJECT:
			 case IRC_POWER:
			 	break;
		        default:
				return;
		   }
	}
    #endif
   
    #ifdef OP_PLAYMODE//libing 2005-4-13 01:10
       if(full_scrn==OP_MENU)
    {
        if(!((rx==IRC_SELECT)||(rx==IRC_UP)||(rx==IRC_DOWN)
        ||(rx==IRC_LEFT)||(rx==IRC_RIGHT)||(rx==IRC_MODE)))
        {            	
            	exit_op_menu();
            	 
     }
    }
    #endif
   
   #ifdef FILE_MODE_WRITE//added by wangwei,2005-1-25 16:21
   if(rx == IRC_FM_WRITE)
        play_state = VCD_STATE_NORMAL;
   #endif

#ifdef SUPPORT_MIDI_MENU_SEL
   printf("polling_rotary bHoldInput %d\n",bHoldInput);
        //may be I should set a critical section      

?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
国产精品久久久久影院亚瑟| 久久精品这里都是精品| 成人欧美一区二区三区黑人麻豆| 日本麻豆一区二区三区视频| 欧美亚洲动漫精品| 日韩成人精品在线| 欧美大肚乱孕交hd孕妇| 美腿丝袜亚洲一区| 欧美伊人久久大香线蕉综合69| 亚洲午夜久久久久久久久电影网| 欧美三级电影网站| 国产黄色精品视频| 一区二区久久久| 国产亚洲欧美激情| 色伊人久久综合中文字幕| 亚洲福利一区二区| 91精品婷婷国产综合久久性色| 亚洲国产精品成人综合| 欧美一区二区三区视频| 丰满少妇在线播放bd日韩电影| 亚洲一二三四在线| 国产精品视频麻豆| 欧美一区二区视频在线观看| 91网站在线观看视频| 天天爽夜夜爽夜夜爽精品视频| 国产精品欧美一级免费| 91精品国产色综合久久不卡蜜臀| 91在线视频官网| 国产盗摄精品一区二区三区在线| 一区二区三区在线播放| 亚洲综合一区二区精品导航| 国产精品久久久久久久久动漫 | 亚洲同性同志一二三专区| 精品视频在线免费看| 在线欧美日韩精品| 在线欧美小视频| 欧美最新大片在线看| av网站免费线看精品| 不卡一卡二卡三乱码免费网站| 久久黄色级2电影| 日韩国产一区二| 免费精品99久久国产综合精品| 亚洲国产精品一区二区www| 亚洲国产日韩a在线播放性色| 又紧又大又爽精品一区二区| 国产三级一区二区| 亚洲丝袜自拍清纯另类| 一区二区国产盗摄色噜噜| 视频一区国产视频| 国产九九视频一区二区三区| 99久久免费国产| 欧美视频一区二区三区| 欧美一级欧美三级| 国产精品国产三级国产aⅴ原创| 国产福利91精品| 日韩欧美黄色影院| 56国语精品自产拍在线观看| 日本韩国视频一区二区| 在线免费av一区| 欧美国产成人精品| 日韩影院在线观看| 色综合婷婷久久| 久久毛片高清国产| 国产午夜亚洲精品理论片色戒 | 欧洲精品中文字幕| 国产精品网站一区| 国产做a爰片久久毛片| 欧美综合久久久| 亚洲欧美日韩在线| 国产尤物一区二区在线| 欧美人狂配大交3d怪物一区| 中文字幕欧美日本乱码一线二线| 亚洲妇熟xx妇色黄| 欧美日韩国产不卡| 亚洲免费伊人电影| 国产91富婆露脸刺激对白| 3751色影院一区二区三区| 亚洲成人1区2区| 91精品国产综合久久久蜜臀图片| 亚洲一区在线观看视频| 欧美午夜寂寞影院| 午夜伦理一区二区| 日韩免费看网站| 国产91综合一区在线观看| 国产精品夫妻自拍| 色呦呦网站一区| 午夜精品福利在线| 国产亚洲精品7777| 在线观看av一区二区| 亚洲高清免费观看高清完整版在线观看| 99在线视频精品| 婷婷中文字幕综合| 精品处破学生在线二十三| 国产一区在线看| 亚洲一区在线看| 精品少妇一区二区三区日产乱码 | 精品久久久久久久一区二区蜜臀| 麻豆国产一区二区| 亚洲美女一区二区三区| 精品视频在线免费| eeuss鲁片一区二区三区在线看| 亚洲午夜久久久久久久久久久| 日韩免费在线观看| 欧美影视一区二区三区| 国产成人免费视| 亚洲第四色夜色| 国产精品家庭影院| 2023国产精华国产精品| 欧美午夜电影在线播放| 成人小视频在线观看| 美国精品在线观看| 亚洲一区在线播放| 中文字幕亚洲区| www一区二区| 日韩欧美中文字幕制服| 欧美日韩中文一区| 欧美综合欧美视频| 色94色欧美sute亚洲线路一久| 国产999精品久久| 国产精品一区一区三区| 国产一区不卡精品| 国产专区综合网| 成人黄色av网站在线| 99re8在线精品视频免费播放| 成人精品国产福利| 奇米一区二区三区av| 蜜桃精品视频在线| 国产美女娇喘av呻吟久久| 久久99精品久久久| 懂色av中文一区二区三区| 99久久久久免费精品国产| 欧美性猛交xxxx黑人交| 亚洲欧美精品午睡沙发| 国产亲近乱来精品视频| www欧美成人18+| 亚洲精品高清视频在线观看| 亚洲成人中文在线| 老司机免费视频一区二区| 韩国视频一区二区| 成人动漫在线一区| 中文字幕乱码亚洲精品一区| 亚洲国产经典视频| 国产精品三级久久久久三级| 亚洲午夜视频在线| 国产亚洲人成网站| 免费一级欧美片在线观看| 国产在线精品国自产拍免费| 在线精品观看国产| 国产精品久久久久久久久快鸭| 日本不卡的三区四区五区| 99久免费精品视频在线观看| 欧美一区二区久久久| 国产精品久久久久久久久图文区| 亚洲精品久久7777| 精品一区二区日韩| 日韩欧美亚洲国产精品字幕久久久| 国产精品色呦呦| 国产高清亚洲一区| 国产午夜精品美女毛片视频| 日韩精品一级二级| 欧美一区二区三区影视| 亚洲二区视频在线| 欧美日韩亚洲高清一区二区| 国产精品五月天| 99这里只有精品| 亚洲色图清纯唯美| 7777精品伊人久久久大香线蕉| 亚洲国产成人高清精品| 欧美人体做爰大胆视频| 亚洲成人免费在线观看| 欧美一区二区三区成人| 九一久久久久久| 国产精品传媒视频| 欧美日韩激情在线| 久久精品国产免费| 国产女人水真多18毛片18精品视频| 精品中文字幕一区二区| 国产丝袜在线精品| 91免费观看国产| 同产精品九九九| 久久欧美中文字幕| 99视频一区二区| 五月天一区二区三区| 国产亚洲综合在线| 色88888久久久久久影院按摩| 一区二区三区日韩欧美精品| 欧美日韩一区三区| 99久久精品情趣| 国产一区999| 精品一区二区三区久久| 亚洲国产精品久久艾草纯爱| 久久久精品日韩欧美| 欧美在线色视频| 国产主播一区二区三区| 亚洲成人久久影院| 国产人久久人人人人爽| 欧美一级高清片在线观看| aa级大片欧美| 国产精品66部| 久久草av在线|