ir_parser.c
资源名称:8202s.rar [点击查看]
上传用户:poi891205
上传日期:2013-07-15
资源大小:9745k
文件大小:112k
源码类别:
DVD
开发平台:
C/C++
- /*****************************************************************************
- ** 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"
- #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 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
- #ifdef PMP_UI//liweihua 2005-1-5
- const IRFUNC irc_func_table[IR_CODE_MAX_NUM]=
- {
- //00-0F
- ircmd_null,//ircmd_0, //IRC_0, //0x00
- ircmd_null,//ircmd_1, //IRC_1, //0x01
- ircmd_null,//ircmd_2, //IRC_2, //0x02
- ircmd_null,//ircmd_3, //IRC_3, //0x03
- ircmd_null,//ircmd_4, //IRC_4, //0x04
- ircmd_null,//ircmd_5, //IRC_5, //0x05
- ircmd_null,//ircmd_6, //IRC_6, //0x06
- ircmd_null,//ircmd_7, //IRC_7, //0x07
- ircmd_null,//ircmd_8, //IRC_8, //0x08
- ircmd_null,//ircmd_9, //IRC_9, //0x09
- ircmd_null,//ircmd_10, //IRC_10, //0x0a
- ircmd_null,//ircmd_p10, //IRC_P10, //0x0b
- ircmd_null,//ircmd_eject_toggle, //IRC_EJECT, //0x0c
- ircmd_null,//ircmd_mute, //IRC_MUTE, //0x0d
- ircmd_null,//ircmd_key_up, //IRC_KEY_UP, //0x0e
- ircmd_null,//ircmd_key_reset, //IRC_KEY_RESET, //0x0f
- //10-1F
- ircmd_null,//ircmd_key_down, //IRC_KEY_DN, //0x10
- ircmd_volume_up, //IRC_VOLUME_UP, //0x11
- ircmd_volume_down, //IRC_VOLUME_DN, //0x12
- ircmd_slowmotion, //IRC_SLOW, //0x13
- ircmd_null,//ircmd_step, //IRC_STEP, //0x14
- ircmd_pause, //IRC_PAUSE, //0x15
- ircmd_play, //IRC_PLAY, //0x16
- ircmd_play_resume, //IRC_PLAY_RESUME, //0x17
- pmpkey_return, //IRC_RETURN, //0x18
- ircmd_null,//ircmd_stop, //IRC_STOP, //0x19
- ircmd_null, //IRC_LANGUAGE, //0x1a,(not use)
- ircmd_backward, //IRC_BACKWARD, //0x1b
- ircmd_forward, //IRC_FORWARD, //0x1c
- ircmd_null,//ircmd_prev, //IRC_PREV, //0x1d
- ircmd_null,//ircmd_next, //IRC_NEXT, //0x1e
- ircmd_display, //IRC_DISPLAY, //0x1f
- //20-2F
- ircmd_null,//ircmd_repeat_ab, //IRC_AB, //0x20
- ircmd_null,//ircmd_repeat_all, //IRC_REPEAT, //0x21
- ircmd_null,//ircmd_playmode_toggle, //IRC_PBC, //0x22
- ircmd_null,//ircmd_goto, //IRC_GOTO, //0x23
- ircmd_null,//ircmd_shuffle, //IRC_RANDOM, //0x24
- ircmd_resume, //IRC_RESUME, //0x25
- ircmd_null,//ircmd_remaintime, //IRC_TIME, //0x26
- ircmd_power, //IRC_POWER, //0x27
- ircmd_zoom, //IRC_ZOOM, //0x28
- pmpkey_up, //IRC_UP, //0x29
- pmpkey_down, //IRC_DOWN, //0x2a
- pmpkey_left, //IRC_LEFT, //0x2b
- pmpkey_right, //IRC_RIGHT, //0x2c
- ircmd_null,//reset_ir, //IRC_PLAY_IS_DEFAULT, //0x2d,(not use)
- ircmd_null, //IRC_FREEZE, //0x2e,no use
- ircmd_null,//ircmd_channel, //IRC_CHANNEL //0x2f
- //30-3F
- ircmd_null,//ircmd_channel_dn, //IRC_CHANNEL_DN, //0x30
- ircmd_null, //IRC_EFFECT, //0x31,(not use) ,terry,2004/2/10 05:00PM
- ircmd_null,//ircmd_preview, //IRC_PREVIEW, //0x32
- ircmd_null,//ircmd_9frames, //IRC_9FRAMES, //0x33
- ircmd_null,//ircmd_prog, //IRC_PROGRAM, //0x34
- ircmd_null,//ircmd_display_format_toggle, //IRC_FORMAT, //0x35
- ircmd_null,//ircmd_intro, //IRC_INTRO, //0x36
- ircmd_null, //IRC_GAME_L, //0x37
- ircmd_null, //IRC_GAME_R, //0x38
- ircmd_null, //IRC_GAME_UP, //0x39
- ircmd_null, //IRC_GAME_DN, //0x3a
- ircmd_null, //IRC_GAME_TN, //0x3b
- ircmd_null, //IRC_GAME_UL, //0x3c
- ircmd_null, //IRC_GAME, //0x3d,(not use)
- ircmd_null, //IRC_FOCUS, //0x3e,(not use)
- ircmd_null, //IRC_DISK1, //0x3f
- //40-4F
- ircmd_null, //IRC_DISK2, //0x40
- ircmd_null, //IRC_DISK3, //0x41
- ircmd_play_pause, //IRC_PAUSEPLAY, //0x42
- ircmd_null, //IRC_QUALIFY //0x43,(not use)
- ircmd_null, //IRC_RESET_DSP //0x44
- ircmd_null,//ircmd_sub_picture, //IRC_SUBP //0x45
- ircmd_null,//ircmd_angle, //IRC_ANGLE //0x46
- ircmd_null,//ircmd_audio_language, //IRC_AUD_LANGUAGE //0x47
- pmpkey_select, //IRC_SELECT //0x48
- ircmd_null,//ircmd_title_menu, //IRC_TITLEMENU //0x49
- ircmd_null,//ircmd_clear, //IRC_CLEAR //0x4a
- ircmd_null,//ircmd_setup, //IRC_SETUP //0x4b
- ircmd_null,//ircmd_karaoke, //IRC_KARAOKE //0x4c
- ircmd_null,//ircmd_3dsound, //IRC_3D //0x4d
- ircmd_null,//ircmd_bk_slow, //IRC_BK_SLOW //0x4e
- ircmd_null,//ircmd_reading, //IRC_READING //0x4f
- //50-5F
- };
- #else//#ifdef PMP_UI//liweihua 2005-1-5
- const IRFUNC irc_func_table[IR_CODE_MAX_NUM]=
- {
- //00-0F
- ircmd_0, //IRC_0, //0x00
- ircmd_1, //IRC_1, //0x01
- ircmd_2, //IRC_2, //0x02
- ircmd_3, //IRC_3, //0x03
- ircmd_4, //IRC_4, //0x04
- ircmd_5, //IRC_5, //0x05
- ircmd_6, //IRC_6, //0x06
- ircmd_7, //IRC_7, //0x07
- ircmd_8, //IRC_8, //0x08
- ircmd_9, //IRC_9, //0x09
- ircmd_10, //IRC_10, //0x0a
- ircmd_p10, //IRC_P10, //0x0b
- ircmd_eject_toggle, //IRC_EJECT, //0x0c
- ircmd_mute, //IRC_MUTE, //0x0d
- ircmd_key_up, //IRC_KEY_UP, //0x0e
- ircmd_key_reset, //IRC_KEY_RESET, //0x0f
- //10-1F
- ircmd_key_down, //IRC_KEY_DN, //0x10
- ircmd_volume_up, //IRC_VOLUME_UP, //0x11
- ircmd_volume_down, //IRC_VOLUME_DN, //0x12
- ircmd_slowmotion, //IRC_SLOW, //0x13
- ircmd_step, //IRC_STEP, //0x14
- ircmd_pause, //IRC_PAUSE, //0x15
- ircmd_play, //IRC_PLAY, //0x16
- ircmd_play_resume, //IRC_PLAY_RESUME, //0x17
- ircmd_return, //IRC_RETURN, //0x18
- ircmd_stop, //IRC_STOP, //0x19
- ircmd_null, //IRC_LANGUAGE, //0x1a,(not use)
- ircmd_backward, //IRC_BACKWARD, //0x1b
- ircmd_forward, //IRC_FORWARD, //0x1c
- ircmd_prev, //IRC_PREV, //0x1d
- ircmd_next, //IRC_NEXT, //0x1e
- ircmd_display, //IRC_DISPLAY, //0x1f
- //20-2F
- ircmd_repeat_ab, //IRC_AB, //0x20
- ircmd_repeat_all, //IRC_REPEAT, //0x21
- ircmd_playmode_toggle, //IRC_PBC, //0x22
- ircmd_goto, //IRC_GOTO, //0x23
- ircmd_shuffle, //IRC_RANDOM, //0x24
- ircmd_resume, //IRC_RESUME, //0x25
- ircmd_remaintime, //IRC_TIME, //0x26
- ircmd_power, //IRC_POWER, //0x27
- ircmd_zoom, //IRC_ZOOM, //0x28
- ircmd_up, //IRC_UP, //0x29
- ircmd_down, //IRC_DOWN, //0x2a
- ircmd_left, //IRC_LEFT, //0x2b
- ircmd_right, //IRC_RIGHT, //0x2c
- #ifdef GBM_IRC_SHIELD_FUNCTION //gerry,2004-1-30 19:20
- ircmd_shield_func, //IRC_SHIELD_FUNC //0x2d
- #else
- reset_ir, //IRC_PLAY_IS_DEFAULT, //0x2d,(not use)
- #endif
- #ifdef USER_MPEG_LOGO
- ircmd_mpeg_logo, //IRC_mpeg_logo, //0x2e,no use
- #elif defined(ADD_TV_VIDEO_MODE)
- ircmd_tv_sys_mode, //IRC_TV_MODE, //0X2e
- #else
- ircmd_null, //IRC_FREEZE, //0x2e,no use
- #endif
- ircmd_channel, //IRC_CHANNEL //0x2f
- //30-3F
- ircmd_channel_dn, //IRC_CHANNEL_DN, //0x30
- #ifdef CNTR_5SPK_VOLUME
- ircmd_volume_switch, //IRC_VOLUME_SWITCH, //0x31
- #else
- ircmd_null, //IRC_EFFECT, //0x31,(not use) ,terry,2004/2/10 05:00PM
- #endif
- ircmd_preview, //IRC_PREVIEW, //0x32
- ircmd_9frames, //IRC_9FRAMES, //0x33
- ircmd_prog, //IRC_PROGRAM, //0x34
- ircmd_display_format_toggle, //IRC_FORMAT, //0x35
- ircmd_intro, //IRC_INTRO, //0x36
- #ifdef CAR_VCD//kenny 891220 modify
- ircmd_next_disk, //0x37
- ircmd_pre_disk, //0x38
- ircmd_reset_changer, //0x39
- #elif defined(BRIGHTNESS_COLOR_KEY)////////////tw_kevin.lo040901
- ircmd_brightness_color, //IRC_BRICOL_ADJUST
- ircmd_null, //0x38
- ircmd_null,
- #else
- ircmd_null, //IRC_GAME_L, //0x37
- ircmd_null, //IRC_GAME_R, //0x38
- ircmd_null, //IRC_GAME_UP, //0x39
- #endif
- #ifdef TWO_FUN_IN_ONE_VFD_KEY //dingzhy for GBM
- ircmd_vfd_next, //IRC_VFD_NEXT, //0x3a
- ircmd_vfd_prev, //IRC_VFD_PREV, //0x3b
- #else
- ircmd_null, //IRC_GAME_DN, //0x3a
- ircmd_null, //IRC_GAME_TN, //0x3b
- #endif
- ircmd_null, //IRC_GAME_UL, //0x3c
- ircmd_null, //IRC_GAME, //0x3d,(not use)
- #ifdef VIRTUAL_KEYBOARD // alan, 2003/8/18 01:15PM
- ircmd_virtual_keyboard, //IRC_VIRTUAL_KEYBOARD, //0x3e
- #else
- ircmd_null, //IRC_FOCUS, //0x3e,(not use)
- #endif
- ircmd_null, //IRC_DISK1, //0x3f
- //40-4F
- ircmd_null, //IRC_DISK2, //0x40
- ircmd_null, //IRC_DISK3, //0x41
- ircmd_play_pause, //IRC_PAUSEPLAY, //0x42
- ircmd_null, //IRC_QUALIFY //0x43,(not use)
- ircmd_null, //IRC_RESET_DSP //0x44
- #ifdef DOUBLE_TITLE //susu add 2003-8-26 10:30
- ircmd_double_picture,
- #else
- ircmd_sub_picture, //IRC_SUBP //0x45
- #endif
- ircmd_angle, //IRC_ANGLE //0x46
- ircmd_audio_language, //IRC_AUD_LANGUAGE //0x47
- ircmd_select, //IRC_SELECT //0x48
- ircmd_title_menu, //IRC_TITLEMENU //0x49
- ircmd_clear, //IRC_CLEAR //0x4a
- ircmd_setup, //IRC_SETUP //0x4b
- ircmd_karaoke, //IRC_KARAOKE //0x4c
- ircmd_3dsound, //IRC_3D //0x4d
- ircmd_bk_slow, //IRC_BK_SLOW //0x4e
- #if defined(Ti3001_OSD_UI_1)||defined(Ti5026_OSD_UI_1)
- ircmd_amp_control, //IRC_AMP_CONTROL
- #elif defined(IR_KEY_SET_VIDEO_MODE)
- ircmd_set_video_mode,
- #else
- ircmd_reading, //IRC_READING //0x4f
- #endif
- //50-5F
- ircmd_root_menu, //IRC_ROOT_MENU, //0x50
- ircmd_play_select, //IRC_PLAY_SELECT //0x51
- ircmd_mix_func, //IRC_MIX_FUNC //0x52
- #ifdef SUPPORT_FUNCTION_MENU
- ircmd_setup_plus, //IRC_SETUP_PLUS //0x53
- #else
- ircmd_null, //IRC_SLOW_BAK_FORD //0x53,(not use)
- #endif
- #ifdef USE_PROLOGIC_II_KEY//clead 2003-8-7
- ircmd_prologic, //IRC_BOOK //0x54
- #else
- ircmd_book, //IRC_BOOK //0x54
- #endif
- ircmd_score, //IRC_SCORE, //0x55
- ircmd_title_return, //IRC_TITLE_RETURN //0x56
- ircmd_echo_up, //IRC_ECHO_UP //0x57
- ircmd_echo_down, //IRC_ECHO_DOWN //0x58
- ircmd_mic_up, //IRC_MIC_UP //0x59
- #ifdef VIEW_MODE_KEY
- ircmd_view_mode, //IRC_VIEW_MODE //0x5a
- #else
- ircmd_mic_down, //IRC_MIC_DOWN //0x5a
- #endif
- //reserve ir hard code to new ir cmd
- ircmd_p_scan, //IRC_VIDEO_OUT, //0x5b
- #ifdef EMU_MODE
- ircmd_chg_dac, //IRC_NULL, //0x5c
- #else
- reset_ir, //IRC_NULL, //0x5c
- #endif
- #ifdef SWITCH_CD_CARD_USB
- ircmd_switch_cd_card_usb, //IRC_SWITCH_GUI //0x5d
- #else
- reset_ir, //IRC_NULL, //0x5d
- #endif
- ircmd_default_setup, //IRC_NULL, //0x5e
- #if defined(FAT_Write_UI) || defined(FILE_MODE_WRITE) //sunzhh 20041231
- ircmd_media_control, //IRC_MEDIA_CONTROL //0x5f
- #else
- reset_ir, //IRC_NULL, //0x5f
- #endif
- //60-max
- #ifdef ONLY_INTERLACE_KEY
- ircmd_interlace, //IRC_INTERLACE //0x60
- #endif
- #ifdef ONLY_VGA_KEY
- ircmd_VGA, //IRC_VGA
- #endif
- #ifdef ONLY_P_SCAN_KEY
- ircmd_only_P_SCAN, //IRC_ONLY_P_SCAN //0x62
- #endif
- #ifdef ONLY_EQ_KEY
- ircmd_EQ, //IRC_EQ
- #endif
- #ifdef ONLY_SOUND_FIELD_KEY
- ircmd_sound_field, //IRC_SOUND_FEILD //0x64
- #endif
- #ifdef ONE_KEY_PASS
- ircmd_one_key_pass, //IRC_ONE_KEY_PASS //0x65
- #endif //ONE_KEY_PASS
- #ifdef AUDIO_2CH_5_1CH
- ircmd_2ch_5_1ch, //IRC_2CH_5_1_CH //0x66
- #endif
- #ifdef RECORD_KEY
- ircmd_record, //IRC_RECORD
- #endif
- #ifdef DIV_GOTO_DISPLAY
- ircmd_search, //IRC_SEARCH //0x68
- #endif
- #ifdef DISC_INFO_KEY
- ircmd_disc_info, //IRC_DISC_INFO //0x69
- #endif
- #ifdef SPECTRUM_KEY
- ircmd_spectrum, //IRC_SPECTRUM //0x6a
- #endif
- #ifdef IR_SWITCH_CARD_CD //Maoyong,2004.05.13 swith between Card/CD
- ircmd_switch_card_cd,
- #endif
- #ifdef IR_IRCMD_JUMP_30SEC //wangwei 2004-7-20 22:30
- ircmd_jump_30sec,
- #endif
- #ifdef SANJING_MIDI_DVD
- ircmd_main_melody, //IRC_MAIN_MELODY
- #endif
- #ifdef TWO_KEY_SWITCH_TWO_SUBTITLE //added by wangwei,2004-10-5 14:33
- ircmd_switch_2nd_subtitle,
- #endif
- #ifdef IR_SWITCH_CD_USB_CF_OTHER //added by dingzhy 4-10-20 13:57
- ircmd_switch_cd_usb_cf_other, //IRC_CD_USB_CF_OTHER
- #elif defined(FILE_MODE_WRITE)//added by wangwei,2005-1-10 13:07
- ircmd_file_mode_write,
- #endif
- //Note:
- //adjustment ir key code to 0x60
- //wanghaoying 2003-10-28 10:46
- #if defined(SOUND_NO_KEYPAGE)&&defined(VTREK_DVD)
- ircmd_3dsound, //IRC_3D2,
- #endif
- #ifdef ONE_KEY_CONTRL_ECHO
- ircmd_echo, //IRC_ECHO
- #endif
- /* wanghaoying marked 2004-7-1 15:41, for not use any more
- //freyman mod 2002-9-3 10:35
- //#if defined(SUPPORT_AMP) && defined(IR17) // for nextbase remoter
- #ifdef IR17 // for nextbase remoter
- ircmd_null, //IRC_BAND, //0x5b
- ircmd_center_up, //IRC_CENTER_UP, //0x5c
- ircmd_center_down, //IRC_CENTER_DOWN, //0x5d
- ircmd_rear_up, //IRC_REAR_UP, //0x5e
- ircmd_rear_down, //IRC_REAR_DOWN, //0x5f
- ircmd_woofer_up, //IRC_WOOFER_UP, //0x60
- ircmd_woofer_down, //IRC_WOOFER_DOWN, //0x61
- ircmd_middle_up, //IRC_MIDDLE_UP, //0x62
- ircmd_middle_down, //IRC_MIDDLE_DOWN, //0x63
- ircmd_base_up, //IRC_BASE_UP, //0x64
- ircmd_base_down, //IRC_BASE_DOWN, //0x65
- ircmd_treble_up, //IRC_TREBLE_UP, //0x66
- ircmd_treble_down, //IRC_TREBLE_DOWN, //0x67
- ircmd_amp_onoff, //IRC_AMP_ONOFF, //0x68
- ircmd_front_down, //IRC_MEMORY_DOWN, //0x69
- ircmd_front_up, //IRC_MEMORY_UP, //0x6a
- ircmd_channel_dn, //IRC_AMP_ON, //0x6b
- //IRC_NUM_ENTER, //0x6c
- #endif
- #ifdef SUPPORT_AMP
- ircmd_amp_onoff, //IRC_AMP_ONOFF, //0x5b
- #endif
- */
- ircmd_only_pause, //IRC_ONLY_PAUSE , //0x5b
- ircmd_exit_setup, //IRC_EXIT_SETUP, //0x5c
- #ifdef NEW_UART_COMMAND //lijinhai define for fuss new requesst
- ircmd_av1_mode, //0x5d
- ircmd_av2_mode, //0x5e
- ircmd_tuner_mode, //0x5f
- ircmd_dvd_mode, //0x60
- ircmd_qsound, //0x61
- ircmd_vol_default, //0x62
- ircmd_alarm, //0x63
- ircmd_front_vol, //0x64
- ircmd_center_vol, //0x65
- ircmd_rear_vol, //0x66
- ircmd_subwoofer_vol, //0x67
- ircmd_treble_vol, //0x68
- ircmd_bass_vol, //0x69
- ircmd_balancefront_vol, //0x6a
- ircmd_balancerear_vol, //0x6b
- #endif
- reset_ir, //IRC_NULL,
- #ifdef SUPPORT_RECEIVER //huziqin 2004-2-26
- ircmd_rcvr_next_mode, //0x6d
- #ifdef SUPPORT_VIDEO_WITH_SPDIF
- ircmd_rcvr_analog_digital, //0x6e
- #endif
- #endif
- #if defined(BASS_ADJUST_KEY)
- ircmd_rcvr_bass,
- #endif
- #if defined(TREBLE_ADJUST_KEY)
- ircmd_rcvr_treble,
- #endif
- #if defined(EQ_SWITCH_KEY)
- ircmd_rcvr_EQ, //xulf 2003-3-25
- #endif
- #if defined(BAND_SWITCH_KEY)
- ircmd_rcvr_band,
- #endif
- #ifdef SUPPORT_POWER_OFF_CLOCK_FUNC //xyy 2004-10-12
- ircmd_set_clock,
- #endif
- #ifdef TWO_FUNC_LEFT_RIGHT_KEY
- ircmd_vfd_left,
- ircmd_vfd_right,
- #endif
- #ifdef SUPPORT_RECEIVER //huziqin 2004-2-26
- ircmd_rcvr_select_mode,
- #endif //SUPPORT_RECEIVER
- #ifdef DOLBY_AMP_VOLUME_CTRL
- ircmd_set_treble,
- ircmd_set_bass,
- #endif
- #ifdef QSI_PLATFORM
- ircmd_card_cd_select,
- #endif
- //IR_CODE_MAX_NUM, // Just remark the maxium IR COMAMND Numbers. No func mapped to it!!
- };
- #endif//#ifdef PMP_UI
- #ifdef IR_DBG
- const UINT8 * const irc_func_str[IR_CODE_MAX_NUM]=
- {
- //00-0F
- "ircmd_0", //IRC_0, //0x00
- "ircmd_1", //IRC_1, //0x01
- "ircmd_2", //IRC_2, //0x02
- "ircmd_3", //IRC_3, //0x03
- "ircmd_4", //IRC_4, //0x04
- "ircmd_5", //IRC_5, //0x05
- "ircmd_6", //IRC_6, //0x06
- "ircmd_7", //IRC_7, //0x07
- "ircmd_8", //IRC_8, //0x08
- "ircmd_9", //IRC_9, //0x09
- "ircmd_10", //IRC_10, //0x0a
- "ircmd_p10", //IRC_P10, //0x0b
- "ircmd_eject_toggle", //IRC_EJECT, //0x0c
- "ircmd_mute", //IRC_MUTE, //0x0d
- "ircmd_key_up", //IRC_KEY_UP, //0x0e
- "ircmd_key_reset", //IRC_KEY_RESET, //0x0f
- //10-1F
- "ircmd_key_down", //IRC_KEY_DN, //0x10
- "ircmd_volume_up", //IRC_VOLUME_UP, //0x11
- "ircmd_volume_down", //IRC_VOLUME_DN, //0x12
- "ircmd_slowmotion", //IRC_SLOW, //0x13
- "ircmd_step", //IRC_STEP, //0x14
- "ircmd_pause", //IRC_PAUSE, //0x15
- "ircmd_play", //IRC_PLAY, //0x16
- "ircmd_play_resume", //IRC_PLAY_RESUME //0x17
- "ircmd_return", //IRC_RETURN, //0x18
- "ircmd_stop", //IRC_STOP, //0x19
- "ircmd_null", //IRC_LANGUAGE, //0x1a,(not use)
- "ircmd_backward", //IRC_BACKWARD, //0x1b
- "ircmd_forward", //IRC_FORWARD, //0x1c
- "ircmd_prev", //IRC_PREV, //0x1d
- "ircmd_next", //IRC_NEXT, //0x1e
- "ircmd_display", //IRC_DISPLAY, //0x1f
- //20-2F
- "ircmd_repeat_ab", //IRC_AB, //0x20
- "ircmd_repeat_all", //IRC_REPEAT, //0x21
- "ircmd_playmode_toggle", //IRC_PBC, //0x22
- "ircmd_goto", //IRC_GOTO, //0x23
- "ircmd_shuffle", //IRC_RANDOM, //0x24
- "ircmd_resume", //IRC_RESUME, //0x25
- "ircmd_remaintime", //IRC_TIME, //0x26
- "ircmd_power", //IRC_POWER, //0x27
- "ircmd_zoom", //IRC_ZOOM, //0x28
- "ircmd_up", //IRC_UP, //0x29
- "ircmd_down", //IRC_DOWN, //0x2a
- "ircmd_left", //IRC_LEFT, //0x2b
- "ircmd_right", //IRC_RIGHT, //0x2c
- #ifdef GBM_IRC_SHIELD_FUNCTION //gerry,2004-1-30 19:22
- "ircmd_shield_func", //IRC_SHIELD_FUNC //0x2d
- #else
- "reset_ir", //IRC_PLAY_IS_DEFAULT, //0x2d,(not use)
- #endif
- #ifdef USER_MPEG_LOGO
- "ircmd_mpeg_logo", //IRC_FREEZE, //0x2e,no use
- #elif defined(ADD_TV_VIDEO_MODE)
- "ircmd_tv_sys_mode", //IRC_TV_MODE, //0X2e
- #else
- "ircmd_null", //IRC_FREEZE, //0x2e,no use
- #endif
- "ircmd_channel", //IRC_CHANNEL, //0x2f
- //30-3F
- "ircmd_channel_dn", //IRC_CHANNEL_DN //0x30
- "ircmd_null", //IRC_EFFECT, //0x31,(not use)
- "ircmd_preview", //IRC_PREVIEW, //0x32
- "ircmd_9frames", //IRC_9FRAMES, //0x33
- "ircmd_prog", //IRC_PROGRAM, //0x34
- "ircmd_display_format_toggle", //IRC_FORMAT, //0x35
- "ircmd_intro", //IRC_INTRO, //0x36
- #ifdef CAR_VCD//kenny 891220 modify
- "ircmd_next_disk", //IRC_NEXT_DISK //0x37
- "ircmd_pre_disk", //IRC_PRE_DISK //0x38
- "ircmd_reset_changer", //IRC_RES_CHG //0x39
- #else
- "ircmd_null", //IRC_GAME_L, //0x37
- "ircmd_null", //IRC_GAME_R, //0x38
- "ircmd_null", //IRC_GAME_UP, //0x39
- #endif
- #ifdef TWO_FUN_IN_ONE_VFD_KEY //dingzhy for GBM
- "ircmd_vfd_next", //IRC_VFD_NEXT, //0x3a
- "ircmd_vfd_prev", //IRC_VFD_PREV, //0x3b
- #else
- "ircmd_null", //IRC_GAME_DN, //0x3a
- "ircmd_null", //IRC_GAME_TN, //0x3b
- #endif
- "ircmd_null", //IRC_GAME_UL, //0x3c
- "ircmd_null", //IRC_GAME, //0x3d,(not use)
- "ircmd_null", //IRC_FOCUS, //0x3e,(not use)
- "ircmd_disk1", //IRC_DISK1, //0x3f
- //40-4F
- "ircmd_disk2", //IRC_DISK2, //0x40
- "ircmd_disk3", //IRC_DISK3, //0x41
- "ircmd_play_pause", //IRC_PAUSEPLAY, //0x42
- "ircmd_null", //IRC_QUALIFY //0x43,(not use)
- "ircmd_null", //IRC_RESET_DSP //0x44
- #ifdef DOUBLE_TITLE //susu add 2003-8-26 10:30
- "ircmd_double_picture",
- #else
- "ircmd_sub_picture", //IRC_SUBP //0x45 //0x45
- #endif
- "ircmd_angle", //IRC_ANGLE //0x46
- "ircmd_audio_language", //IRC_AUD_LANGUAGE //0x47
- "ircmd_select", //IRC_SELECT //0x48
- "ircmd_title_menu", //IRC_TITLEMENU //0x49
- "ircmd_clear", //IRC_CLEAR //0x4a
- "ircmd_setup", //IRC_SETUP //0x4b
- "ircmd_karaoke", //IRC_KARAOKE //0x4c
- "ircmd_3dsound", //IRC_3D //0x4d
- "ircmd_bk_slow", //IRC_BK_SLOW //0x4e
- #if defined(Ti3001_OSD_UI_1)||defined(Ti5026_OSD_UI_1)
- "ircmd_amp_control", //IRC_AMP_CONTROL //0x4f
- #elif defined(IR_KEY_SET_VIDEO_MODE)
- "ircmd_set_video_mode",
- #else
- "ircmd_reading", //IRC_READING //0x4f
- #endif
- //50-max.
- "ircmd_root_menu", //IRC_ROOT_MENU //0x50
- "ircmd_play_select", //IRC_PLAY_SELECT //0x51
- "ircmd_mix_func", //IRC_DISPLAY_TIME //0x52
- "ircmd_null", //IRC_SLOW_BAK_FORD //0x53,(not use)
- #ifdef USE_PROLOGIC_II_KEY//clead 2003-8-7
- "ircmd_prologic", //IRC_BOOK //0x54
- #else
- "ircmd_book", //IRC_BOOK //0x54
- #endif
- "ircmd_score", //IRC_SCORE, //0x55
- "ircmd_title_return", //IRC_TITLE_RETURN //0x56
- "ircmd_echo_up", //IRC_ECHO_UP //0x57
- "ircmd_echo_down", //IRC_ECHO_DOWN //0x58
- "ircmd_mic_up", //IRC_MIC_UP //0x59
- "ircmd_mic_down", //IRC_MIC_DOWN //0x5a
- //reserve ir hard code to new ir cmd
- "ircmd_p_scan", //IRC_VIDEO_OUT, //0x5b
- #ifdef EMU_MODE
- "ircmd_chg_dac", //IRC_NULL, //0x5c
- #else
- "reset_ir", //IRC_NULL, //0x5c
- #endif
- "reset_ir", //IRC_NULL, //0x5d
- "ir_default_setup", //IRC_NULL, //0x5e
- #if defined(FAT_Write_UI) || defined(FILE_MODE_WRITE) //sunzhh 20041231
- "ircmd_media_control", //IRC_MEDIA_CONTROL //0x5f
- #else
- "reset_ir", //IRC_NULL, //0x5f
- #endif
- #ifdef ONLY_INTERLACE_KEY
- "ircmd_interlace", //IRC_INTERLACE //0x60
- #endif
- #ifdef ONLY_VGA_KEY
- "ircmd_VGA", //IRC_VGA //0x61
- #endif
- #ifdef ONLY_P_SCAN_KEY
- "ircmd_only_P_SCAN", //IRC_ONLY_P_SCAN //0x62
- #endif
- #ifdef ONLY_EQ_KEY
- "ircmd_EQ", //IRC_EQ //0x63
- #endif
- #ifdef ONLY_SOUND_FIELD_KEY
- "ircmd_sound_field", //IRC_SOUND_FIELD //0x64
- #endif
- #ifdef ONE_KEY_PASS
- "ircmd_one_key_pass", //IRC_ONE_KEY_PASS //0x65
- #endif //ONE_KEY_PASS
- #ifdef AUDIO_2CH_5_1CH
- "ircmd_2ch_5_1ch", //IRC_2CH_5_1_CH //0x66
- #endif
- #ifdef RECORD_KEY
- "ircmd_record", //IRC_RECORD //0x67
- #endif
- #ifdef DIV_GOTO_DISPLAY
- "ircmd_search", //IRC_SEARCH //0x68
- #endif
- #ifdef DISC_INFO_KEY
- "ircmd_disc_info", //IRC_DISC_INFO //0x69
- #endif
- #ifdef SPECTRUM_KEY //IRC_SPECTRUM //0x6a
- "ircmd_spectrum",
- #endif
- #ifdef IR_SWITCH_CARD_CD //IRC_SWITCH_CARD_CD
- "ircmd_switch_card_cd",
- #endif
- #ifdef IR_IRCMD_JUMP_30SEC //wangwei 2004-7-20 22:30
- "ircmd_jump_30sec", //IRC_JUMP_30SEC
- #endif
- #ifdef SANJING_MIDI_DVD
- "ircmd_main_melody", //IRC_MAIN_MELODY
- #endif
- #ifdef TWO_KEY_SWITCH_TWO_SUBTITLE //added by wangwei,2004-10-5 14:33
- "ircmd_switch_2nd_subtitle",
- #endif
- #ifdef IR_SWITCH_CD_USB_CF_OTHER //added by dingzhy 4-10-20 13:57
- "ircmd_switch_cd_usb_cf_other", //IRC_CD_USB_CF_OTHER
- #elif defined(FILE_MODE_WRITE)//added by wangwei,2005-1-10 13:09
- "ircmd_file_mode_write",
- #endif
- //wanghaoying 2003-10-28 10:46
- #if defined(SOUND_NO_KEYPAGE)&&defined(VTREK_DVD)
- "ircmd_3dsound", //IRC_3D2,
- #endif
- #ifdef ONE_KEY_CONTRL_ECHO
- "ircmd_echo", //IRC_ECHO
- #endif
- /* wanghaoying marked 2004-7-1 15:41, for not use any more
- //freyman mod 2002-9-3 10:35
- //#if defined(SUPPORT_AMP) && defined(IR17) // for nextbase remoter
- #ifdef IR17 // for nextbase remoter
- //#if defined(SUPPORT_AMP) && defined(IR17) // for nextbase remoter
- "ircmd_null", //IRC_BAND, //0x5b
- "ircmd_center_up", //IRC_CENTER_UP , //0x5c
- "ircmd_center_down", //IRC_CENTER_DOWN, //0x5d
- "ircmd_rear_up", //IRC_REAR_UP, //0x5e
- "ircmd_rear_down", //IRC_REAR_DOWN, //0x5f
- "ircmd_woofer_up", //IRC_WOOFER_UP, //0x60
- "ircmd_woofer_down", //IRC_WOOFER_DOWN, //0x61
- "ircmd_middle_up", //IRC_MIDDLE_UP, //0x62
- "ircmd_middle_down", //IRC_MIDDLE_DOWN, //0x63
- "ircmd_base_up", //IRC_BASE_UP, //0x64
- "ircmd_base_down", //IRC_BASE_DOWN, //0x65
- "ircmd_treble_up", //IRC_TREBLE_UP, //0x66
- "ircmd_treble_down", //IRC_TREBLE_DOWN, //0x67
- "ircmd_amp_onoff", //IRC_AMP_ONOFF, //0x68
- "ircmd_front_down", //IRC_MEMORY_DOWN, //0x69
- "ircmd_front_up", //IRC_MEMORY_UP, //0x6a
- "ircmd_channel_dn", //IRC_AMP_ON, //0x6b
- #endif
- #ifdef SUPPORT_AMP
- "ircmd_amp_onoff", //IRC_AMP_ONOFF, //0x5b
- #endif
- */
- "ircmd_only_pause", //IRC_ONLY_PAUSE , //0x5b
- "ircmd_exit_setup", //IRC_EXIT_SETUP, //0x5c
- #ifdef NEW_UART_COMMAND //lijinhai define for fuss new requesst
- "ircmd_av1_mode", //0x5d
- "ircmd_av2_mode", //0x5e
- "ircmd_tuner_mode", //0x5f
- "ircmd_dvd_mode", //0x60
- "ircmd_qsound", //0x61
- "ircmd_vol_default", //0x62
- "ircmd_alarm", //0x63
- "ircmd_front_vol", //0x64
- "ircmd_center_vol", //0x65
- "ircmd_rear_vol", //0x66
- "ircmd_subwoofer_vol", //0x67
- "ircmd_treble_vol", //0x68
- "ircmd_bass_vol", //0x69
- "ircmd_balancefront_vol", //0x6a
- "ircmd_balancerear_vol", //0x6b
- #endif
- "reset_ir", //IRC_NULL, //0x5D
- #ifdef SUPPORT_RECEIVER //huziqin 2004-2-26
- "ircmd_rcvr_next_mode", //0x6d
- #ifdef SUPPORT_VIDEO_WITH_SPDIF
- "ircmd_rcvr_analog_digital", //0x6e
- #endif
- #endif
- #if defined(BASS_ADJUST_KEY)
- "ircmd_rcvr_bass",
- #endif
- #if defined(TREBLE_ADJUST_KEY)
- "ircmd_rcvr_treble",
- #endif
- #if defined(EQ_SWITCH_KEY)
- "ircmd_rcvr_EQ", //xulf 2003-3-25
- #endif
- #if defined(BAND_SWITCH_KEY)
- "ircmd_rcvr_band",
- #endif
- #ifdef SUPPORT_POWER_OFF_CLOCK_FUNC //xyy 2004-10-12
- "ircmd_set_clock",
- #endif
- #ifdef SUPPORT_RECEIVER //huziqin 2004-2-26
- "ircmd_rcvr_select_mode",
- #endif //SUPPORT_RECEIVER
- #ifdef DOLBY_AMP_VOLUME_CTRL
- "ircmd_set_treble",
- "ircmd_set_bass",
- #endif
- #ifdef QSI_PLATFORM
- "ircmd_card_cd_select",
- #endif
- //IR_CODE_MAX_NUM, // Just remark the maxium IR
- //IR_CODE_MAX_NUM, // Just remark the maxium IR COMAMND Numbers. No func mapped to it!!
- };
- #endif
- #ifdef SUPPORT_SPI_QSI
- extern UINT8 uSpiRxData;
- const SPI_CMD_FUNC spi_cmd_func_table[MAX_SPI_CMD_NUM] =
- {
- spi_cmd_wakeup, //IRC_NULL, 0x00
- ircmd_power, //IRC_POWER, 0x01
- ircmd_eject_toggle, //IRC_EJECT, 0x02
- #ifdef SUPPORT_CARD_STORAGE
- #ifndef QSI_PLATFORM //qsi: modify by johnson 20040811
- spi_cmd_switch_2_disc, //IRC_NULL, 0x03
- spi_cmd_switch_2_card, //IRC_NULL, 0x04
- #else
- spi_cmd_switch_media_to_dvd, //IRC_NULL, 0x03
- spi_cmd_switch_media_to_card, //IRC_NULL, 0x04
- #endif
- #else
- ircmd_null,
- ircmd_null,
- #endif
- spi_cmd_play, //IRC_PLAY, 0x05
- spi_cmd_ssaver_on, //IRC_NULL, 0x06
- spi_cmd_ssaver_off, //IRC_NULL, 0x07
- spi_cmd_stop2eject, //IRC_STOP, 0x08
- spi_cmd_play_pause, //IRC_PAUSE, 0x09
- spi_cmd_only_pause, //IRC_PAUSE, 0x0a
- spi_cmd_pre_stop, //IRC_STOP, 0x0b
- ircmd_angle, //IRC_ANGLE, 0x0c
- spi_cmd_system, //IRC_NULL, 0x0d
- ircmd_return, //IRC_RETURN, 0x0e
- ircmd_audio_language, //IRC_AUD_LANGUAGE, 0x0f
- ircmd_playmode_toggle, //IRC_PBC, 0x10
- ircmd_zoom, //IRC_ZOOM, 0x11
- ircmd_mute, //IRC_MUTE, 0x12
- ircmd_sub_picture, //IRC_SUBP, 0x13
- ircmd_slowmotion, //IRC_SLOW 0x14
- ircmd_step, //IRC_STEP 0x15
- ircmd_prog, //IRC_PROGRAM, 0x16
- ircmd_shuffle, //IRC_RANDOM, 0x17
- ircmd_channel, //IRC_CHANNEL, 0x18
- ircmd_goto, //IRC_GOTO, 0x19
- ircmd_prev, //IRC_PREV, 0x1a
- ircmd_next, //IRC_NEXT, 0x1b
- ircmd_forward, //IRC_FORWARD, 0x1c
- ircmd_backward, //IRC_BACKWARD, 0x1d
- ircmd_setup, //IRC_SETUP, 0x1e
- ircmd_volume_up, //IRC_VOLUME_UP, 0x1f
- ircmd_volume_down, //IRC_VOLUME_DN, 0x20
- ircmd_repeat_all, //IRC_REPEAT, 0x21
- ircmd_repeat_ab, //IRC_AB, 0x22
- ircmd_clear, //IRC_CLEAR, 0x23
- ircmd_title_menu, //IRC_TITLEMENU, 0x24
- ircmd_playmode_toggle, //IRC_PBC, 0x25
- ircmd_echo_up, //IRC_ECHO_UP, 0x26
- ircmd_echo_down, //IRC_ECHO_DOWN, 0x27
- ircmd_mic_up, //IRC_MIC_UP, 0x28
- ircmd_mic_down, //IRC_MIC_DOWN, 0x29
- ircmd_resume, //IRC_RESUME, 0x2a
- ircmd_display, //IRC_DISPLAY, 0x2b
- ircmd_null, //IRC_NULL, 0x2c
- ircmd_null, //IRC_NULL, 0x2d
- ircmd_null, //IRC_NULL, 0x2e
- ircmd_null, //IRC_NULL, 0x2f
- ircmd_0, //IRC_0, 0x30
- ircmd_1, //IRC_1, 0x31
- ircmd_2, //IRC_2, 0x32
- ircmd_3, //IRC_3, 0x33
- ircmd_4, //IRC_4, 0x34
- ircmd_5, //IRC_5, 0x35
- ircmd_6, //IRC_6, 0x36
- ircmd_7, //IRC_7, 0x37
- ircmd_8, //IRC_8, 0x38
- ircmd_9, //IRC_9, 0x39
- #ifdef QSI_PLATFORM
- ircmd_p10, //IRC_10, 0x3a
- #else
- ircmd_10, //IRC_10, 0x3a
- #endif
- ircmd_up, //IRC_UP, 0x3b
- ircmd_down, //IRC_DOWN, 0x3c
- ircmd_left, //IRC_LEFT, 0x3d
- ircmd_right, //IRC_RIGHT, 0x3e
- ircmd_select, //IRC_SELECT, 0x3f
- ircmd_null, //IRC_NULL, 0x40 Reserved
- spi_cmd_tvout, //IRC_NULL, 0x41
- spi_cmd_tvout, //IRC_NULL, 0x42
- spi_cmd_tvout, //IRC_NULL, 0x43
- spi_cmd_tvout, //IRC_NULL, 0x44
- spi_cmd_tvout, //IRC_NULL, 0x45
- spi_cmd_tvout, //IRC_NULL, 0x46
- spi_cmd_tvout, //IRC_NULL, 0x47
- spi_cmd_tvout, //IRC_NULL, 0x48
- ircmd_null, //IRC_NULL, 0x49 Reserved
- ircmd_null, //IRC_NULL, 0x4a Reserved
- ircmd_null, //IRC_NULL, 0x4b Reserved
- ircmd_null, //IRC_NULL, 0x4c Reserved
- ircmd_null, //IRC_NULL, 0x4d Reserved
- ircmd_null, //IRC_NULL, 0x4e Reserved
- ircmd_null, //IRC_NULL, 0x4f Reserved
- spi_cmd_region, //IRC_NULL, 0x50
- spi_cmd_region, //IRC_NULL, 0x51
- spi_cmd_region, //IRC_NULL, 0x52
- spi_cmd_region, //IRC_NULL, 0x53
- spi_cmd_region, //IRC_NULL, 0x54
- spi_cmd_region, //IRC_NULL, 0x55
- spi_cmd_region, //IRC_NULL, 0x56
- spi_cmd_tvsys, //IRC_NULL, 0x57
- spi_cmd_tvsys, //IRC_NULL, 0x58
- spi_cmd_version_display, //IRC_NULL, 0x59
- };
- const UINT8 SPI_IR_TRANS_TABLE[MAX_SPI_CMD_NUM] =
- {
- 0x00, //0x00
- IRC_POWER, //0x01
- IRC_EJECT, //0x02//EJECT
- IRC_NULL, //0x03//SOURCE TO DISC
- IRC_NULL, //0x04//SOURCE TO CF
- IRC_PLAY, //0x05//PLAY
- IRC_NULL, //0x06
- IRC_NULL, //0x07
- IRC_EJECT, //0x08//STOP to EJECT
- IRC_PAUSEPLAY, //0x09//PLAY/PAUSE
- IRC_PAUSE, //0x0a//PAUSE
- IRC_STOP, //0x0b//STOP
- IRC_ANGLE, //0x0c//ANGLE
- IRC_NULL, //0x0d
- IRC_RETURN, //0x0e//RETURN
- IRC_AUD_LANGUAGE, //0x0f
- IRC_PBC, //0x10//PBC
- IRC_ZOOM, //0x11//ZOOM
- IRC_MUTE, //0x12//MUTE
- IRC_SUBP, //0x13
- IRC_SLOW, //0x14//SLOW
- IRC_STEP, //0x15//STEP
- IRC_PROGRAM, //0x16//PROGRAM
- IRC_RANDOM, //0x17//RANDOM
- IRC_CHANNEL, //0x18//L/R
- IRC_GOTO, //0x19//GOTO
- IRC_PREV, //0x1a//PREVIOUS
- IRC_NEXT, //0x1b//NEXT
- IRC_FORWARD, //0x1c//FORWARD
- IRC_BACKWARD, //0x1d//BACKWARD
- IRC_SETUP, //0x1e//SETUP
- IRC_VOLUME_UP, //0x1f//VOLUME UP
- IRC_VOLUME_DN, //0x20//VOLUME DN
- IRC_REPEAT, //0x21//REPEAT
- IRC_AB, //0x22//REPEAT A-B
- IRC_CLEAR, //0x23//CLEAR
- IRC_TITLEMENU, //0x24//TITLE
- IRC_NULL, //0x25/MENU
- IRC_ECHO_UP, //0x26//ECHO UP
- IRC_ECHO_DOWN, //0x27//ECHO DOWN
- IRC_MIC_UP, //0x28
- IRC_MIC_DOWN, //0x29
- IRC_RESUME, //0x2a//Resume
- IRC_DISPLAY, //0x2b//Display
- IRC_NULL, //0x2c//Reserved
- IRC_NULL, //0x2d//Reserved
- IRC_NULL, //0x2e//Reserved
- IRC_NULL, //0x2f//Reserved
- IRC_0, //0x30//Reserved
- IRC_1, //0x31//IRC_1
- IRC_2, //0x32//IRC_2
- IRC_3, //0x33//IRC_3
- IRC_4, //0x34//IRC_4
- IRC_5, //0x35//IRC_5
- IRC_6, //0x36//IRC_6
- IRC_7, //0x37//IRC_7
- IRC_8, //0x38//IRC_8
- IRC_9, //0x39//IRC_9
- IRC_P10, //0x3a//IRC_10
- IRC_UP, //0x3b//IRC_UP
- IRC_DOWN, //0x3c//IRC_DOWN
- IRC_LEFT, //0x3d//IRC_LEFT
- IRC_RIGHT, //0x3e//IRC_RIGHT
- IRC_SELECT, //0x3f//IRC_SELECT
- IRC_NULL, //0x40 Reserved
- IRC_NULL, //0x41//CVBS ON
- IRC_NULL, //0x42
- IRC_NULL, //0x43
- IRC_NULL, //0x44
- IRC_NULL, //0x45
- IRC_NULL, //0x46
- IRC_NULL, //0x47
- IRC_NULL, //0x48
- IRC_NULL, //0x49 Reserved
- IRC_NULL, //0x4a Reserved
- IRC_NULL, //0x4b Reserved
- IRC_NULL, //0x4c Reserved
- IRC_NULL, //0x4d Reserved
- IRC_NULL, //0x4e Reserved
- IRC_NULL, //0x4f Reserved
- IRC_NULL, //0x50//Region Free
- IRC_NULL, //0x51//Region 1
- IRC_NULL, //0x52//Region 2
- IRC_NULL, //0x53//Region 3
- IRC_NULL, //0x54//Region 4
- IRC_NULL, //0x55//Region 5
- IRC_NULL, //0x56//Region 6
- IRC_NULL, //0x57//Output PAL Signal
- IRC_NULL, //0x58//Output NTSC Signal
- IRC_NULL, //0x59//Version display
- };
- #endif //#ifdef SUPPORT_SPI_QSI
- //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
- #ifdef YUXING_DVD
- #ifdef YX828B
- #include ".\Customers\Yuxing\inv_828b_tbl.h"
- #elif defined(YX829A)
- #include ".\Customers\Yuxing\inv_tbl.h"
- #endif
- #elif defined(YUXING_MIDI_DVD) //add by xlluo 04-6-11 need build ??
- #include ".\Customers\Yuxing\inv_tbl.h"
- #elif defined(SANJING_MIDI_DVD)
- #include ".\Customers\Sanjing\inv_tbl.h"
- #elif defined(BBK_DVD)
- #include ".\Customers\Bbk\inv_tbl_bbk.h"
- #elif defined(AKI_DVD)
- #include ".\Customers\Aki\inv_tbl_aki.h"
- #elif defined(APEX_DVD)
- #include ".\Customers\Apex\inv_tbl_apex.h"
- #elif defined(ATLAS_DVD)
- #include ".\Customers\Atlas\inv_tbl_atlas.h"
- #elif defined(SMT_DVD)
- #include ".\Customers\Smt\inv_tbl_smt.h"
- #elif defined(FUSS_DVD)
- #include ".\Customers\Fuss\inv_tbl_fuss.h"
- #elif defined(YADAI_DVD)
- #ifdef SHANGGUANGDIAN_DVD
- #include ".\Customers\Yadai\inv_tbl_shangguangdian.h"
- #else
- #include ".\Customers\Yadai\inv_tbl_yadai.h"
- #endif
- #elif defined(HUAJIA_DVD)
- #include ".\Customers\Huajia\inv_tbl_huajia.h"
- #elif defined(INTECH_DVD)
- #include ".\Customers\Intech\inv_tbl_intech.h"
- #elif defined(JCG_DVD)
- #include ".\Customers\Jcg\inv_tbl_jcg.h"
- #elif defined(SVA_DVD)
- #include ".\Customers\Sva\inv_tbl_sva.h"
- #elif defined(KONKA_DVD)
- #include ".\Customers\Konka\inv_tbl_konka.h"
- #elif defined(GBM_DVD)
- #include ".\Customers\Gbm\inv_tbl_gbm.h"
- #elif defined(GBM_AP_DVD)
- #include ".\Customers\Gbm_ap\inv_tbl_gbm.h"
- #elif defined(GBM_PORTABLE_DVD)
- #include ".\Customers\Gbm_portable\inv_tbl_gbmportable.h"
- #elif defined(HOBO_DVD)
- #include ".\Customers\Hobo\inv_tbl_hobo.h"
- #elif defined(BMT_DVD)
- #include ".\Customers\bmt\inv_tbl_bmt.h"
- #elif defined(SUOJIA_DVD)
- #include ".\Customers\suojia\inv_tbl_suojia.h"
- #elif defined(OUR_MIND_DVD)
- #include ".\Customers\ourmind\inv_tbl_ourmind.h"
- #elif defined(WEIKING_DVD_AMP)
- #include ".\Customers\weiking\inv_tbl_weiking.h"
- #elif defined(APOLLO_DVD)
- #include ".\Customers\apollo\inv_tbl_apollo.h"
- #elif defined(CONSER_DVD)
- #include ".\Customers\Conser\inv_tbl_conser.h"
- #elif defined(PROVIEW_DVD)
- #include ".\Customers\Proview\inv_tbl_proview.h"
- #elif defined(CNMOTOR_DVD)
- #include ".\Customers\Cnmotor\inv_tbl_cnmotor.h"
- #elif defined(AVIQ_DVD)
- #include ".\Customers\AViQ\inv_tbl_aviq.h"
- #elif defined(FUDI_DVD)
- #include ".\Customers\fudi\inv_tbl_fudi.h"
- #elif defined(GAODASI_DVD)
- #include ".\Customers\Gaodasi\inv_tbl_gaodasi.h"
- #elif defined(QISHENG_DVD)
- //#ifdef NEWSTYLE_WINDOW
- #include ".\Customers\QiSheng\inv_tbl_qisheng1.h"
- //#else
- //#include ".\Customers\QiSheng\inv_tbl_qisheng.h"
- //#endif
- #elif defined(YAHSIN_DVD)
- #include ".\Customers\YaHsin\inv_tbl_yahsin.h"
- #elif defined(SKYWORTH_DVD)
- #include ".\Customers\SkyWorth\inv_tbl_skyworth.h"
- #elif defined(ZIHUAN_DVD)
- #include ".\Customers\Zihuan\inv_tbl_zihuan.h"
- #elif defined(MICO_DVD)
- #include ".\Customers\MICO\inv_tbl_mico.h"
- #elif defined(KSD_DVD)
- #include ".\Customers\trenddigit\inv_tbl_ksd.h"
- #elif defined(DESAY_DVD)
- #include ".\Customers\Desay\inv_tbl_desay.h"
- #elif defined(MINTON_DVD)
- #ifdef MINTON_YILI_DVD1003_2CH
- #include ".\Customers\Minton\inv_tbl_minton_dvd1003.h"
- #else
- #include ".\Customers\Minton\inv_tbl_minton.h"
- #endif
- #elif defined(EASTECH_DVD) //2004-4-2 1:36 wsf
- #ifdef EASTECH_DVD_SHARP
- #include ".\Customers\EASTECH\inv_tbl_eastech_sharp.h"
- #else
- #include ".\Customers\EASTECH\inv_tbl_eastech_top.h"
- #endif
- #elif defined(EVERSTAR_DVD)
- #include ".\Customers\everstar\inv_tbl_everstar.h"
- #elif defined(IDALL_DVD)
- #include ".\Customers\Idall\inv_tbl_idall.h"
- #elif defined(VTREK_DVD)
- #include ".\Customers\Vtrek\inv_tbl.h"
- #elif defined(INTECH_DVD)
- #include ".\Customers\intech\inv_tbl_intech.h"
- #elif defined(GENTEK_DVD)
- #include ".\Customers\Gentek\inv_tbl_gentek.h"
- #elif defined(HARMA_DVD)
- #include ".\Customers\HARMA\inv_tbl.h"
- #elif defined(WYD_DVD)
- #include ".\Customers\WYD\inv_tbl.h"
- #elif defined(ACTIMA_DVD) //2004-9-14 09:25?宇M
- #include ".\Customers\ACTIMA\inv_tbl.h"
- #elif defined(HONGTU_DVD) //2003-11-25 03:59张宇P
- #include ".\Customers\HONGTU\inv_tbl.h"
- #elif defined(KENLOON_DVD) //2004-4-14 11:35张宇M
- #include ".\Customers\KENLOON\inv_tbl.h"
- #elif defined(SZMALATA_DVD) //2004-2-3 01:20张宇P
- #include ".\Customers\SZMALATA\inv_tbl.h"
- #elif defined(TONIC_DVD) //2004-2-3 01:20张宇P
- #include ".\Customers\TONIC\inv_tbl.h"
- #elif defined(MALATA_DVD) //2003-11-25 03:59张宇P
- #include ".\Customers\MALATA\inv_tbl.h"
- #elif defined(NEWFUSS_DVD) //2003-11-25 03:59张宇P
- #include ".\Customers\NEWFUSS\inv_tbl.h"
- #elif defined(TIANKE_DVD)
- #include ".\Customers\TIANKE\inv_tbl.h"
- #elif defined(WEICHENG_DVD)
- #include ".\Customers\weicheng\inv_tbl_sunplus.h"
- #elif defined(JIEKE_DVD)
- #include ".\Customers\jieke\inv_tbl_jieke.h"
- #elif defined(JIEKE_16M_DVD)
- #include ".\Customers\jieke\inv_tbl_jieke.h"
- #elif defined(XUKE_DVD)
- #include ".\Customers\xuke\inv_tbl_xuke.h"
- #elif defined(ZhengTai_DVD)
- #include ".\Customers\ZhengTai\inv_tbl_zhengtai.h"
- #elif defined(SKYTECH_DVD)
- #include ".\Customers\skytech\inv_tbl_skytech.h"
- #elif defined(XINDE_DVD)
- #include ".\Customers\xinde\inv_tbl_xinde.h"
- #elif defined (ORIENTPOWER_DVD)
- #if MAX_FULL_PAGE==16
- #include ".\Customers\Orientpower\inv_tbl_fullosd.h"
- #else
- #include ".\Customers\Orientpower\inv_tbl.h"
- #endif
- #elif defined(ORITRON_DVD)
- #if defined(ORITRON_DVD4105)
- #if MAX_FULL_PAGE==16
- #include ".\Customers\Oritron\inv_tbl_oritron_4105_fullosd.h"
- #else
- #include ".\Customers\Oritron\inv_tbl_oritron_4105.h"
- #endif
- #else
- #include ".\Customers\oritron\inv_tbl_oritron.h"
- #endif
- #elif defined(SYBER_DVD)
- #include ".\Customers\SYBER\inv_tbl_syber.h"
- #elif defined(XINGQIU_DVD)
- #include ".\Customers\Xingqiu\inv_tbl_xingqiu.h"
- #elif defined(NINTAUS_DVD)
- #include ".\Customers\nintaus\inv_tbl_nintaus.h"
- #elif defined(HANYANG_DVD)
- #include ".\Customers\hanyang\inv_tbl_hanyang.h"
- #elif defined(ARGUS_PORTABLE_DVD)
- #include ".\Customers\argus_portable\inv_tbl_argusportable.h"
- #elif defined(SHIDELI_DVD)
- #include ".\Customers\shideli\inv_tbl_shideli.h" //gerry,2004-4-22 16:09
- #elif defined(THAKRAL_DVD)
- #include ".\Customers\thakral\inv_tbl_thakral.h"
- #elif defined(TEAC_PORTABLE_DVD)//TEAC
- #include ".\Customers\teac_portable\inv_tbl_teac.h"
- #elif defined(EASTWIN_PORTABLE_DVD)
- #if MAX_FULL_PAGE==16
- #include ".\Customers\Eastwin\inv_tbl_eastwin_fullosd.h"
- #else
- #include ".\Customers\Eastwin\inv_tbl_eastwin.h"
- #endif
- #else
- //#ifdef NEWSTYLE_WINDOW//terry,mark it,2003/7/30 04:32PM
- // #include ".\Customers\Sunplus\inv_tbl_newgoto.h"
- //#else
- #if MAX_FULL_PAGE==16
- #include ".\Customers\Sunplus\inv_tbl_fullosd.h"
- #else
- #include ".\Customers\Sunplus\inv_tbl.h"
- #endif
- #endif
- 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);
- PrintOsdMsg(STR_OS_REP_CNL,REGION2,1,0);
- 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
- #ifdef MONE_DSP24_SHOW_CODEC_NAME_BY_ANGLE_KEY // 2004/12/21 yltseng
- #define ShowDSPCodecNameByAngleKey()
- {
- if( rx == IRC_ANGLE )
- {
- const BYTE* pName = AUDKRNL_Get_Current_DSP3Codec_Name();
- strcpy( RegionValStr[ REGION1 ], &pName[12] );
- ConvertLowerCaseToUpperCase( RegionValStr[ REGION1 ] );
- PrintOsdMsg( STR_OS_SPACE, REGION1, 1, 1 );
- }
- }
- #else
- #define ShowDSPCodecNameByAngleKey()
- #endif
- static inline UINT32 RejectBySWD( BYTE rx )
- {
- 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;
- }
- 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 inn");
- #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 %dn",bHoldInput);
- //may be I should set a critical section
- if (gIsMidiSelMenu&&bHoldInput ) //xlluo 04-11-26
- return; //xlluo for irdebug 04-11-23
- #endif
- #ifdef QSI_SHOW_ERR_RATE
- if(QSI_PIPO_TEST==0x1)
- irc_func_table[rx]();
- #endif
- if(show_logo)
- {
- return;
- }
- #ifdef MIDI_EJECT_PASSWORD //ouyang add for eject password 2004-11-20 15:10
- extern UINT8 midi_open_pwd_start;
- extern UINT8 midi_open_pwd_finished;
- #endif
- #ifdef MIDI_EJECT_PASSWORD //xlluo 04-12-06
- if (midi_open_pwd_start&&(!midi_open_pwd_finished))
- {
- switch(rx)
- {
- case IRC_0:
- case IRC_1:
- case IRC_2:
- case IRC_3:
- case IRC_4:
- case IRC_5:
- case IRC_6:
- case IRC_7:
- case IRC_8:
- case IRC_9:
- case IRC_SELECT:
- case IRC_POWER:
- printf("hahan");
- break;
- default:
- printf("forbiddenn");
- return;
- }
- }
- #endif//#ifdef MIDI_EJECT_PASSWORD //ouyang add for eject password 2004-11-20 15:10
- #ifdef RECORD_KEY//zhaoyanhua add 2003-11-19 16:37
- //NOTE:
- // if you want change the RECORD_OSD_SHOW_TIME value,
- // must change it in file sysmain2.c at the same time.
- //zhaoyanhua 2003-12-12 15:18
- #define RECORD_OSD_SHOW_TIME 14
- //when show RECORD OSD message, other keys except IR_RECORD will
- // break out the OSD message and excute its function.
- if(same_disc_flag!= 0)
- {
- if(rx != IRC_RECORD)
- {
- same_disc_flag = RECORD_OSD_SHOW_TIME;
- //to keep this IR code.
- //excute IR function after exit RECORD OSD message.
- #ifdef MODIFY_RECORD_KEY//2004-3-30 19:16
- if(rx == IRC_EJECT||rx == IRC_POWER)//2004-3-30 19:14
- #endif
- keep_cmd_code = rx;
- //regs0->iop_data[IR_PORT]|=IR_RDY;
- return;
- }
- }
- #endif
- #ifdef MIC_FUNCTION_KEY
- #ifdef BBK_DVD//zhaoyanhua add 2003-11-30 12:29
- extern BYTE bFuncStep;
- //if user enter other keys except IRC_MIX__FUNCTION/UP/DOWN,
- // it will excute its corresponding function.
- if((rx !=IRC_MIX_FUNC ) && (rx != IRC_UP) && (rx != IRC_DOWN)&&(bFuncStep))
- {
- osd_tog_region(REGION1, OSD_OFF);
- bFuncStep = 0;
- }
- #endif
- #endif //MIC_FUNCTION_KEY
- if(user_input_pwd==1)//nono 20020604
- {
- if( (rx<=IRC_10)||(rx==IRC_SELECT)||
- (rx==IRC_CLEAR)||(rx==IRC_PLAY_RESUME)||
- (rx==IRC_POWER)||(rx==IRC_EJECT)||
- (rx==IRC_PLAY_SELECT)||(rx==IRC_PAUSEPLAY) )
- {
- if((rx==IRC_EJECT)||(rx==IRC_POWER))
- {
- user_input_pwd=2;
- #ifdef DVD_AUDIO//2004-3-5 17:48
- if(pDSV->hid_gp_chk_pwd==2)
- {
- regs0->iop_data[IR_PORT]|=IR_RDY;
- //full_scrn=0; //t_disp=disp_mode;
- osd_init();
- return;
- }
- #endif//DVD_AUDIO
- }
- //Maoyong 2004.03.06 , Record disc check Level SYSTEM_SETUP_BROWSER,
- //Avoid 2 times "ircmd_eject_toggle" and then can't do right TRAY OUT
- #ifdef CHECK_RECORD_DISK_PARENT_LVL
- if( !((system_state == SYSTEM_SETUP_BROWSER) && (rx== IRC_EJECT)) )
- #endif
- #ifdef SUPPORT_SPI_QSI
- if( /*(rx == IRC_STOP) || */(rx == IRC_PLAY) /*|| (rx == IRC_PAUSE)*/ )
- spi_cmd_func_table[uSpiRxData]();
- else
- #endif
- irc_func_table[rx]();
- if( (rx==IRC_SELECT)||(rx==IRC_PLAY_RESUME)||
- (rx==IRC_PLAY_SELECT)||(rx==IRC_PAUSEPLAY))
- user_input_pwd=0;
- }
- if((rx!=IRC_EJECT)&&(rx!=IRC_POWER))
- return;
- }
- if( RejectBySWD( rx ) )
- return;
- extern UINT8 gIsMidiSelMenu; //mimitsai add 2004-12-03 17:13
- #ifdef DIVX_DRM
- if( ( invalid & DRM_MENU ) && ( full_scrn & DIVX_DRM_MENU ) )
- {
- #ifdef IR_DBG
- printf( "Disable key in DRM_MENUn" );
- #endif
- return;
- }
- else
- #endif
- #ifdef SUPPORT_MIDI //axel add for "FF"、“pause”etc.are invalid when press "PREVIEW"2004.09.21
- if ((gIsMidiSelMenu)&&(rx==IRC_PREVIEW))
- {
- need_run_cmd=0;
- #ifdef IR_DBG
- printf("<ir_invalid 15>n");
- #endif
- }
- else
- #endif
- #if defined(SUPPORT_MIDI)&&defined(NEW_SEARCH_OSD) //axelchen add for "display"
- extern UINT8 gIsMidiSelMenu;
- if (gIsMidiSelMenu)
- {
- if((rx==IRC_GOTO)||(rx==IRC_DISPLAY))
- need_run_cmd=0;
- }
- else
- #endif// defined(SUPPORT_MIDI)&&defined(NEW_SEARCH_OSD)
- if(rx==IRC_RANDOM)
- {
- if(action_click)
- {
- if(invalid&(0x01<<play_state))
- {
- #ifdef IR_DBG
- printf("<ir_invalid 13>n");
- #endif
- need_run_cmd=0;
- }
- }
- }else if(invalid&(0x01<<play_state))
- {
- need_run_cmd=0;
- #ifdef IR_DBG
- printf("<ir_invalid 12>n");
- #endif
- /* alan added 02-05-13 for FUSS : return to main setup menu when press IRC_RETURN */
- //terry,0516,
- //setup ->3d
- #ifdef FUSS_DVD
- if( (full_scrn&SETUP)&&(rx==IRC_RETURN) ) need_run_cmd=1;
- #endif
- }
- else if( (invalid&HL)&&HL_exist)
- {
- #ifdef IR_DBG
- printf("<ir_invalid 11>n");
- #endif
- need_run_cmd=0;
- }else if((invalid&STILL)&&still_timer)
- {
- #ifdef IR_DBG
- printf("<ir_invalid 10>n");
- #endif
- need_run_cmd=0;
- }
- #if defined(NINTAUS_DVD)
- else if( (invalid&MENU)&&(is_menu()))//( psd_state==(PSD_SEL_LIST|PSD_PLAY_SEG)) )
- #else
- else if( (invalid&MENU)&&( psd_state==(PSD_SEL_LIST|PSD_PLAY_SEG)) )
- #endif
- {//terry,2002/9/11 04:08PM
- //I'm not sure whether has bug.But I'm sure DVD non-hl menu may be pause/ff/bw/...
- #ifdef IR_DBG
- printf("<ir_invalid 9>n");
- #endif
- need_run_cmd=0;
- }else if((invalid&(0x01<<(VCD_STATE_MAX-1+cd_type_loaded)))&&(GetCurrentFileType()!=CDROM_MP4)) //Jeff 20010928 (-1)
- {
- #ifdef IR_DBG
- printf("<ir_invalid 8>n");
- #endif
- need_run_cmd=0;
- #ifdef SUPPORT_HDD_ACCESS
- if(rx==IRC_SUBP || IRC_TITLEMENU) {
- extern int do_copy_file();
- printf("<SUB-TITLE>n");
- do_copy_file();
- return;
- }
- #endif //SUPPORT_HDD_ACCESS
- }else if( (invalid&PROG_PLAY)&&prog_cnt && (!setup_IsSettingPassword()) )
- {
- #ifdef IR_DBG
- printf("<ir_invalid 7>n");
- #endif
- need_run_cmd=0;
- }
- #ifndef SUPPORT_GOTO_IN_JPEG_STATE//suqiaoli add 2003-11-20
- else if( (invalid&JPEG)&&(Is_JPEG_STATE()) )
- {
- #ifdef IR_DBG
- printf("<ir_invalid 4>n");
- #endif
- need_run_cmd=0;
- }
- #endif
- else if(keep_cmd_code != IR_CODE_MAX_NUM)//2004-3-30 19:19
- {
- #ifdef IR_DBG
- printf("<ir_invalid 3>n");
- #endif
- need_run_cmd=0;
- }else if(dev_status_flag&DEV_DETECT_CSS)
- {
- #ifdef IR_DBG
- printf("<ir_invalid 2>n");
- #endif
- #ifdef PRE_NEXT_FLAG //axel, for invalid IRC_NEXT in bad discs 2004/7/12
- if(rx==IRC_PREV)
- {
- PRE_FLAG=1;
- #ifdef IR_DBG
- printf("<PRE_FLAG>n");
- #endif
- }
- else if(rx==IRC_NEXT)
- {
- NEXT_FLAG=1;
- #ifdef IR_DBG
- printf("<NEXT_FLAG>n");
- #endif
- }
- #endif //#ifdef PRE_NEXT_FLAG
- need_run_cmd=0;
- }else if((invalid&DVD_PROHIBIT)&&(is_dvd_prohibit_key()||(goto_active==1)) )
- {
- #ifdef IR_DBG
- printf("<ir_invalid 1>n");
- #endif
- #ifdef PRE_NEXT_FLAG //axel, for invalid IRC_NEXT in bad discs 2004/7/12
- if(rx==IRC_PREV)
- {
- PRE_FLAG=1;
- #ifdef IR_DBG
- printf("<PRE_FLAG>n");
- #endif
- }
- else if(rx==IRC_NEXT)
- {
- NEXT_FLAG=1;
- #ifdef IR_DBG
- printf("<NEXT_FLAG>n");
- #endif
- }
- #endif //PRE_NEXT_FLAG
- if(rep_ab_mode!=REPEAT_FIND_B)
- need_run_cmd=0;
- }
- //else if((invalid&BOOKMARK)&&(t_disp==3))//NONO 2-4-29 18:41
- //need_run_cmd=0;
- //else if( (invalid&GAME)&&(Is_GAME_STATE()) )//NONO 2-4-29 18:41
- //need_run_cmd=0;
- if(need_run_cmd!=2) { //terry,2002/5/16 10:37PM,
- #ifdef SETUP_PROGRAM_IN_PLACE_UNDER_16M // 2004/01/14 yltseng
- extern UINT8 g_uiOSDStatus;
- if( g_uiOSDStatus & OSD_FULL_SCREEN_STATUS_WAIT_ATAPI_CMD_FINISH ||
- g_uiOSDStatus & OSD_FULL_SCREEN_STATUS_WAIT_KERNEL_DECODE_FINISH )
- return;
- #endif
- if(full_scrn)
- {
- if(StateChkKey[rx] & full_scrn)
- {
- //printf("State:%x rx:%d full_scrn:%xn",StateChkKey[rx],rx,full_scrn);
- #ifdef NEWSTYLE_WINDOW
- if(full_scrn==MESSAGE)
- {
- //printf("StateChkKey[%d]: %d full_scrn=:%dn",rx,StateChkKey[rx],full_scrn);
- //if(rx == IRC_ZOOM)
- //{
- // invalid_key();
- // return;
- //}
- exit_browse_func();
- }
- #endif
- #ifdef DOUBLE_TITLE //susu add 2003-8-27 13:55
- if (full_scrn & DOUBLETITLE)
- {
- exit_double_title();
- }
- #endif
- if (full_scrn & SOUND)
- {
- #ifdef RETAIN_3D_IN_PREV_NEXT
- if(!(rx==IRC_PREV || rx==IRC_NEXT)) //wuxiaofeng 2004-5-24
- #endif
- cancel_sound();//liweihua 2004-1-13 10:04
- }
- else if (full_scrn & PROGRAM) //add by shawn 20020218
- {
- #ifdef SDRAM_16Mb_Mode
- #ifdef SDRAM_16MB_IRCMD_RETURN_WHEN_PROGRAM //linrc 2004-6-10 11:19
- if((rx==IRC_ANGLE)||(rx==IRC_SUBP)||(rx==IRC_CHANNEL)||
- (rx==IRC_PREV)||(rx==IRC_NEXT)||(rx==IRC_BACKWARD)||
- (rx==IRC_FORWARD)||(rx==IRC_RETURN)||(rx==IRC_ZOOM) ||
- (rx==IRC_SLOW)||(rx==IRC_REPEAT)||(rx==IRC_AB)||(rx==IRC_PAUSE)) return;
- #endif
- #ifdef NEW_STYLE_SETUP
- if (rx ==IRC_SETUP)//zhaoyanhua add 2003-8-8 13:42
- prog_state = 6;
- #else
- prog_state=3; // 3 means that ircmd_stop pressed when full_scrn==PROGRAM
- prog_cnt = 0; //dingzhy add for 1x16
- prog_func_clear(); //dingzhy add for 1x16
- #endif//NEW_STYLE_SETUP
- #endif//SDRAM_16Mb_Mode
- //#ifdef JIEKE_DVD
- //return;
- //#else
- #ifdef JIEKE_DVD
- prog_cnt = 0;
- #endif
- prog_func_off();
- #ifdef SDRAM_16Mb_Mode
- resumeMSF=0;//nono 4-1-16 15:27
- #endif//SDRAM_16Mb_Mode
- //#endif
- // re-load setup module
- //LoadModual(MODUAL_AP2);
- }
- else if ((full_scrn & SETUP) || (full_scrn & CUSTM))
- {
- #ifdef NEW_STYLE_SETUP//2003-8-13 18:16
- if(rx == IRC_TITLEMENU) return;
- #endif//NEW_STYLE_SETUP
- #ifdef SDRAM_16Mb_Mode
- #ifdef NEW_STYLE_SETUP//zhaoyanhua add 2003-8-8 10:07
- //In SETUP, enter PROGRAM
- if (rx == IRC_PROGRAM)
- prog_state =6;
- #else
- prog_state=3; // 3 means that ircmd_stop pressed when full_scrn==SETUP
- #endif// NEW_STYLE_SETUP
- #endif //SDRAM_16Mb_Mode
- //#ifdef JIEKE_DVD
- //return;
- //#else
- #ifdef KARAOKE_MENU
- if(rx!=IRC_KARAOKE)
- KARAOKE_MENU_FLAG=0;
- #endif
- #if defined(NEW_PARENTAL_GUI)||defined(MODIFY_PARENTAL_GUI)
- //avoid the error:when TRAY OUT enter SETUP ,show error infomation.
- //zhaoyanhua add 2004-2-9 11:24
- #if defined(NEW_PARENTAL_GUI)
- if(new_parental_gui)
- #elif defined(MODIFY_PARENTAL_GUI)
- if(parental_gui_flag)
- #endif//defined(MODIFY_PARENTAL_GUI)
- {
- #if defined(DVD_AUDIO)//&&defined(NEW_PARENTAL_GUI)//20040302
- if(pDSV->hid_gp_chk_pwd==2)
- ExitDVDAudioGUI();
- else
- #endif
- ExitParentalGUI();
- }else
- #endif//NEW_PARENTAL_GUI
- #ifdef SETUP_SOME_KEY_NO_RESPONSE//eastech2030
- //printf("pre test6n");
- if(rx==IRC_SETUP||rx==IRC_POWER||rx==IRC_EJECT) //add by TOM
- ExitSetupPage(1);
- else
- {
- if(rx!=IRC_STOP)
- {
- rx=IRC_NULL;
- return;
- }
- else
- {
- if(full_scrn & CUSTM)
- ExitSetupPage(1);
- if(full_scrn & SETUP)
- {
- rx=IRC_NULL;
- return;
- }
- }
- }
- #else
- ExitSetupPage(1);
- #endif//SETUP_SOME_KEY_NO_RESPONSE
- #ifdef SDRAM_16Mb_Mode
- //avoid the bug when otherIR key (except SETUP),
- //"DISPLAY" cause error.
- //zhaoyanhua add 2003-11-13 11:36
- if (0)//old_t_disp)
- {
- t_disp=old_t_disp;
- DispPolling(3);
- }
- resumeMSF=0;//nono 4-1-16 15:28
- #endif
- //#endif
- }
- #ifdef SUPPORT_FUNCTION_MENU
- else if(full_scrn & SETUP_PLUS)
- {
- ExitSetupPage(0);
- }
- #endif
- else if(full_scrn & GOTO)
- #ifdef DIV_GOTO_DISPLAY//zhaoyanhua add 03-11-5 22:39
- ExitGOTOPage();
- #else
- ircmd_goto();
- #endif
- #ifdef SUPPORT_REP_READ
- else if(full_scrn & READ)
- {
- CancelRead();
- }
- #endif
- else if(full_scrn & MARK) //Jeff 20020416
- {
- // alan 0429 solve goto fade out and fade in again when full_scrn in mark mode
- if (rx != IRC_GOTO)
- ircmd_book();
- }
- #if (defined VIRTUAL_KEYBOARD) && (defined DIV_GOTO_DISPLAY) //zhaoyanhua add 2004-2-16 16:58
- else if (full_scrn & KEYBOARD)
- {
- ircmd_virtual_keyboard();
- }
- #endif
- #ifdef SWITCH_CD_CARD_USB//liweihua 2004-6-13 14:51
- else if(full_scrn & SWITCH_GUI)
- {
- ircmd_switch_cd_card_usb();
- }
- #endif
- else
- ClearOsdMsg(1);
- #ifdef RETAIN_3D_IN_PREV_NEXT
- if((full_scrn&SOUND) && !((rx==IRC_PREV || rx==IRC_NEXT)) //wuxiaofeng 2004-5-24
- #ifdef CF_CARD_WRITE
- || (!(full_scrn & PERIPHERAL)) //wuxiaofeng if define card, use preview for IR input
- #endif
- )
- #else
- #ifdef CF_CARD_WRITE
- if(!(full_scrn & PERIPHERAL)) //wuxiaofeng if define card, use preview for IR input
- #endif
- #endif
- //wanghaoying changed 2003-12-9 14:21
- full_scrn = 0;
- #ifdef SOUND_NO_KEYPAGE
- bEqDisplay = 0;
- #endif
- //terry,0513,yuxing ,
- //bug1: cdda , display->goto->step or slow
- //bug2: cdda , goto->step , goto highlight isn't cleared.
- display_again=1;
- } //if(StateChkKey[rx] & full_scrn)
- } //if(full_scrn)
- } //if(need_run_cmd!=2)
- #ifndef IR_TOOL
- #ifdef IR_DBG
- printf("invalid:%x need_run_cmd:%x play_state:%xn",invalid,need_run_cmd,play_state);
- #endif
- #endif
- if((rx > IRC_P10) && (rx != IRC_SELECT)) {
- #ifdef SUPPORT_DISPLAY_MENU
- if(!In_Goto_Menu())
- #endif//end #ifdef SUPPORT_DISPLAY_MENU
- init_ir_num();
- }
- if(need_run_cmd==1)
- {
- //nono 2-6-2 15:09
- //#ifndef FUSS_DVD
- if(invalid&CN_REP)
- cancel_rep();
- //#endif
- if( (invalid&CN_INTRO)&&bIntro )
- {
- bIntro=0;
- }
- if( (rx==IRC_EJECT)&&(dev_status_flag&ATAPI_WAIT_TIME_OUT))
- {
- keep_cmd_code=rx;
- if(!is_user_opened()) {
- OSD1000ISP_STATUS(OSDISP_OC_OPEN, OSDIR_OPEN);
- PrintOsdMsg(STR_OS_OPEN,REGION1,0,0);
- }
- } else
- {
- //terry,0512 , avoid show error osd msg
- ir_osd_post_show=1;
- #ifdef SUPPORT_SPI_QSI
- if( /*(rx == IRC_STOP) || */(rx == IRC_PLAY) /*|| (rx == IRC_PAUSE)*/ )
- spi_cmd_func_table[uSpiRxData]();
- else
- #endif
- irc_func_table[rx]();
- if(ir_osd_post_show>1) {
- //#ifdef DVDRELEASE//2-7-29 16:00
- osdshow(1,osd_buf);//2-8-1 20:15
- //#else
- //osd_tog_region(1,OSD_ON);
- //#endif
- }
- ir_osd_post_show=0;
- }
- //terry,0513,reduce code
- display_again=1;
- } else if(need_run_cmd!=2)
- {
- invalid_key();
- }
- ShowDSPCodecNameByAngleKey(); // 2004/12/21 yltseng
- if( (display_again)&&(t_disp) )
- {//terry,0513 ,reduce code
- t_disp=t_disp%10;
- t_disp+=10;
- }
- #ifdef NEW_STYLE_SETUP
- printf("===>logo_type:%x sys_cmd:%x setup_state:%x full_scrn:%xn",logo_type,sys_cmd,setup_state,full_scrn & SETUP);
- //if (full_scrn & SETUP)//terry,2003/9/13 01:04AM
- {
- #ifdef SDRAM_16Mb_Mode
- if( (logo_type == 1)&&(play_state!=VCD_STATE_NORMAL)&&(prog_state==0)&&((cd_type_loaded!=CDROM)||(Is_MP3_STATE()==1)) )
- #else
- if( (logo_type == 1)&&(play_state!=VCD_STATE_NORMAL)&&(setup_state==0)&&((cd_type_loaded!=CDROM)||(Is_MP3_STATE()==1)) )
- #endif //SDRAM_16Mb_Mode
- ShowTitle();
- }
- #endif// NEW_STYLE_SETUP
- }
- /* wanghaoying marked 2004-7-1 16:51, for not use any more
- #if defined(SUPPORT_TUNER) //freyman add 2002-8-28 21:40
- void ircmd_power_volume(BYTE rx)
- {
- extern void set_volume(BYTE x);
- if(rx==IRC_VOLUME_UP)
- if(audio_volume<15)
- audio_volume++;
- if(rx==IRC_VOLUME_DN)
- if(audio_volume>0)
- audio_volume--;
- set_volume(2*audio_volume+50);
- #ifdef VFD_VOLUME_DISPLAY
- timeout_vfd = 2*VFD_TIMEOUT;
- vfd_set_volume(0);
- #endif
- }
- #endif
- */
- #include "password.c"
- #ifdef SUPPORT_APOGEE_AMP //huziqin
- extern BYTE amp_enter_flag;
- #endif
- #ifdef SUPPORT_RECEIVER //huziqin 2004-2-26
- /*
- BYTE call_ir_func_receiver_hook(BYTE rx)
- I seperate this function from call_ir_func(),to make code
- easy to read.
- return 0-->don't return
- return 1-->return
- */
- #if defined(SUPPORT_TUNER_MV114) || defined(SUPPORT_TUNER_ALPS)
- extern void tuner_key();
- #endif
- #if defined(SUPPORT_TUNER_MV114) || defined(SUPPORT_TUNER_ALPS)
- void call_ir_func_tuner(BYTE rx)
- {
- if((system_state== SYSTEM_DOING_TUNER)&&(!(full_scrn & SOUND)))
- {
- #if defined(XINGQIU_DVD_RECEIVER)//xyy 2004-8-5
- if(rx==IRC_PREV||rx==IRC_NEXT||rx==IRC_BACKWARD||rx==IRC_FORWARD||rx==IRC_LEFT||rx==IRC_RIGHT||rx==IRC_SELECT||
- rx==IRC_MUTE||rx==IRC_RCVR_BAND||rx==IRC_GOTO||rx==IRC_SETUP||rx==IRC_AUD_LANGUAGE||rx==IRC_CLEAR||rx==IRC_TITLEMENU)//xyy 2004-5-24 9:38
- #elif defined(ORITRON_DVD_RECEIVER)//xyy 2004-8-14
- if(rx==IRC_PREV||rx==IRC_NEXT||rx==IRC_BACKWARD||rx==IRC_FORWARD||rx==IRC_LEFT||rx==IRC_RIGHT||
- rx==IRC_MUTE||rx==IRC_RCVR_BAND||rx==IRC_PLAY_SELECT||rx==IRC_RCVR_EQ||rx==IRC_P_SCAN
- || rx==IRC_VFD_LEFT || rx==IRC_VFD_RIGHT)//xyy 2004-5-24 9:38
- #else
- #ifndef SUPPORT_Radio_NEW_UI //wuzhj 2004/12/10
- if(rx==IRC_UP||rx==IRC_DOWN||rx==IRC_LEFT||rx==IRC_RIGHT
- ||rx == IRC_ZOOM||rx == IRC_SELECT||rx == IRC_MUTE||IRC_PROGRAM == rx
- ||IRC_FORMAT == rx )
- #else
- //printf("-=----------------------------------n");
- //printf("%x %xn",IRC_VOLUME_DN,rx);
- if(rx==IRC_UP||rx==IRC_DOWN||rx==IRC_LEFT||rx==IRC_RIGHT
- ||rx == IRC_ZOOM||rx == IRC_SELECT||rx == IRC_MUTE||IRC_PROGRAM == rx
- ||IRC_FORMAT == rx||IRC_PREV== rx||IRC_NEXT== rx||IRC_PAUSE== rx
- ||IRC_PROLOGIC== rx ||IRC_VOLUME_DN== rx||IRC_VOLUME_UP== rx)
- #endif
- #endif
- {
- //printf("-=----------------------------------n");
- //printf("%x %xn",IRC_STEP,rx);
- //if(amp_enter_flag == 0)
- tuner_key(rx);
- printf(" invalid key ?n");
- return;
- }
- #if defined(SUPPORT_STATION_INPUT)//xyy 2004-8-5
- else if(rx<=IRC_10)
- irc_func_table[(BYTE)rx]();
- #endif
- }
- }
- #endif
- #ifdef AVOID_READDISC_WHEN_STARTUP //xyy add for Oritron
- extern UINT16 uStartCounter;
- extern UINT16 uCounterFlag;
- #endif
- BYTE call_ir_func_receiver_hook(BYTE rx)
- {
- if((system_state == SYSTEM_DOING_AV1)||(system_state == SYSTEM_DOING_AV2)
- ||(system_state == SYSTEM_DOING_SPDIF)
- || (system_state == SYSTEM_DOING_TUNER))//xyy add for Oritron 2004-11-8 15:14
- {
- if(rx == IRC_EJECT)
- {
- return;
- }
- }
- #ifdef RECEIVER_USE_PSCAN_BUTTON
- if (rx == IRC_P_SCAN)
- {
- rx = IRC_RCVR_NEXT_MODE;
- }
- #endif
- #if 1 //TAS_5026_PWM//wuzhj 2004/10/09
- #ifndef SUPPORT_Radio_NEW_UI //wuzhj 2004/12/10
- if(IRC_ANGLE==rx)
- {
- subvol_next_channel();
- return 1;
- }
- #else
- if(IRC_ANGLE==rx)
- {
- if(system_state == SYSTEM_DOING_TUNER)
- {
- return 1;
- }
- else
- {
- subvol_next_channel();
- return 1;
- }
- }
- #endif
- #endif
- #ifdef RECEIVER_USE_DISPLAY_BUTTON
- if (rx == IRC_DISPLAY)
- {
- rx = IRC_RCVR_ANALOG_DIGITAL;
- }
- #endif
- #ifdef DOLBY_AMP_VOLUME_CTRL
- //wuzhj 2004/12/1
- #ifndef SUPPORT_Radio_NEW_UI //wuzhj 2004/12/10
- if((rx == IRC_VOLUME_DN)||(rx == IRC_VOLUME_UP))
- {
- //ircmd_prologic();
- return 0;
- }
- #endif
- #ifdef SUPPORT_BASS_TREBLE
- if(rx == IRC_SET_BASS)
- {
- ircmd_set_bass();
- return 1;
- }
- if(rx == IRC_SET_TRE)
- {
- ircmd_set_treble();
- return 1;
- }
- #endif
- #endif
- #ifdef USE_PROLOGIC_II_KEY
- //wuzhj 2004/12/1
- #ifndef SUPPORT_Radio_NEW_UI //wuzhj 2004/12/10
- if(rx == IRC_PROLOGIC)
- {
- //ircmd_prologic();
- return 0;
- }
- #endif
- #endif
- // Simon: 1/7/2004
- // If we eject, switch automatically back to DVD mode
- if ((rx == IRC_EJECT) && (current_rcvr_mode != RECEIVER_MODE_DVD))
- {
- system_state = SYSTEM_EJECT_CHANGE;
- return 1;
- }
- //xyy delete 2004-8-17
- /*
- #if defined(BAND_SWITCH_KEY)
- if((system_state!= SYSTEM_DOING_TUNER)&&(rx==IRC_RCVR_BAND))
- {
- invalid_key();
- return 1;
- }
- #endif
- */
- if ((rx == IRC_RCVR_NEXT_MODE)
- #ifdef SUPPORT_VIDEO_WITH_SPDIF //xyy 2004-8-11
- || (rx == IRC_RCVR_ANALOG_DIGITAL)
- #endif
- #if defined(EQ_SWITCH_KEY)
- ||((rx == IRC_RCVR_EQ)&&(current_rcvr_mode == RECEIVER_MODE_DVD))
- #endif
- #if defined(BASS_SWITCH_KEY)
- ||(rx == IRC_RCVR_LEVEL)
- #endif
- #if defined(TREBLE_SWITCH_KEY)
- ||(rx == IRC_RCVR_TONE)
- #endif
- ) //end if condition sentence
- {
- #ifdef AVOID_READDISC_WHEN_STARTUP //xyy add for Oritron
- if((rx==IRC_RCVR_NEXT_MODE && uCounterFlag==0)/*||(system_state==SYSTEM_OPEN)*/)
- {
- return 1;
- }
- #endif
- irc_func_table[(BYTE)rx]();
- return 1;
- }
- // If one of the specific mode buttons is pressed, call ircmd_rcvr_select_mode
- //xulf modified 2004-3-7
- else if ((rx >= IRC_RCVR_SELECT_DVD) && (rx <= IRC_RCVR_SELECT_DUMMY)) // mode buttons
- {
- rx = rx - IRC_RCVR_SELECT_DVD; // mode button values start at 0x6f
- if (rcvr_support_bits & (1 << rx)) // check to see if mode is enabled
- ircmd_rcvr_select_mode(rx);
- else
- {
- invalid_key(); // unsupported mode
- }
- return 1;
- }
- // Don't let user press any other button other than power if we aren't in DVD mode
- else if ((current_rcvr_mode != RECEIVER_MODE_DVD) && (rx != IRC_POWER))
- {
- #if defined(SUPPORT_TUNER_MV114) || defined(SUPPORT_TUNER_ALPS)
- //Move to call_ir_func_tuner()
- call_ir_func_tuner(rx); //xyy 2004-8-14
- return 1;
- #endif //SUPPORT_TUNER_MV114
- invalid_key();
- return 1;
- }
- return 0;
- }
- #endif//SUPPORT_RECEIVER
- void call_ir_func(BYTE rx)
- {
- //gerry,to avoid gpio key bugs,2004-6-3 9:36
- extern UINT32 save_srn_start_t;
- save_srn_start_t = get_rtc_val();
- #ifdef AD_TCL//2004-3-22 13:12 lijd
- jpg_ps=1;
- menu_id=0;
- #endif
- #ifdef TP6317_PANNEL //yaowh add 04-10-25
- if(TP6317_Power == 2)
- {
- return ;
- }
- #endif
- //printf("call ir inn");
- if(rx<IR_CODE_MAX_NUM)
- {
- #ifdef AUDIO_SHOW_SAVER
- ir_cmd_temp = rx; //yw 020904
- #endif
- /*
- temporary used for oritron receiver
- */
- #ifdef SUPPORT_POWER_OFF_CLOCK_FUNC //xyy 2004-10-12
- if(rx==IRC_SET_CLOCK)
- {
- if(system_state==SYSTEM_DOING_CLOCK_FUNC)
- ircmd_set_clock();
- else
- invalid_key();
- return;
- }
- #endif
- #ifdef AD_TCL//2004-3-22 13:12 lijd
- if((rx==IRC_CHANNEL||rx==IRC_EFFECT||rx==IRC_3D)&&(Is_JPEG_STATE()))
- rx=IRC_NULL;
- if((play_state==VCD_STATE_OPEN)&&(rx==IRC_CHANNEL))
- rx=IRC_P_SCAN;
- else if((Is_JPEG_SlideMode())&&(rx==IRC_ROOT_MENU))
- {
- menu_id=1;
- rx==IRC_STOP;
- }
- #endif
- #ifdef SUPPORT_RECEIVER //huziqn 2004-2-26
- if(call_ir_func_receiver_hook(rx))
- return;
- #endif // End: #ifdef SUPPORT_RECEIVER
- #ifdef AD_TCL
- if((cd_type_loaded==CDDVD)&&(get_tt_info(DISP_TT)==0)&&(rx==IRC_NEXT||rx==IRC_PREV))
- rx=IRC_NULL;
- #endif
- #if defined(JPG_EFFECT)
- if( (rx == IRC_PAUSE)||(rx == IRC_ONLY_PAUSE) )
- {
- //printf("Now pause");
- pause_flag=1;
- }
- #endif
- #if defined(JPG_EFFECT)&&defined(CALL_JPGEFFECT_HELP)
- // jpeg_call_help();
- if(Jpg_Show_Usage_Flag)
- {
- #ifdef HELP_BMP_GUI
- if((rx!=IRC_POWER)&&(rx!=IRC_EJECT)&&(rx!=IRC_STOP)&&(rx!=IRC_SELECT)&&(rx != IRC_PLAY_SELECT)&&(rx!=IRC_NEXT)&&(rx != IRC_PREV)&&(rx !=IRC_PREVIEW))
- #else
- if((rx!=IRC_POWER)&&(rx!=IRC_EJECT)&&(rx!=IRC_STOP)&&(rx!=IRC_SELECT)&&(rx != IRC_PLAY_SELECT))
- #endif
- return;
- #ifdef HELP_BMP_GUI
- if (rx == IRC_NEXT)
- {
- if (Jpg_Show_Usage_Page < 4)
- {
- Jpg_Show_Usage_Page ++;
- Jpg_Show_Usage();
- return;
- }
- else
- {
- help_stop_flag = 1;
- rx = IRC_STOP;
- }
- }
- if (rx == IRC_PREV)
- {
- if (Jpg_Show_Usage_Page > 0)
- {
- Jpg_Show_Usage_Page --;
- Jpg_Show_Usage();
- return;
- }
- else
- {
- help_stop_flag = 1;
- rx = IRC_STOP;
- }
- }
- if (rx == IRC_PREVIEW)//when select "preview" button continully,show Mp3 Gui
- {
- help_stop_flag = 1;
- rx = IRC_STOP;
- }
- #endif
- if( (rx == IRC_SELECT)||(rx == IRC_PLAY_SELECT) )
- {
- if(Jpg_Show_Usage_Page < HELP_PAGE_COUNT)
- {
- Jpg_Show_Usage_Page++;
- Jpg_Show_Usage();
- return;
- }
- else if(Jpg_Show_Usage_Page == HELP_PAGE_COUNT)
- {
- //wanghaoying marked below 2004-7-1 14:01, for it is repetitive
- // #if !defined(MP3_JPEG_COWORK)//2004-05-18 Clear the flag in fs_nav_jpg.c
- Jpg_Show_Usage_Flag=0;//nono open it.4-7-26 15:41
- // #endif
- Jpg_Show_Usage_Page=0;
- #ifdef FS_BMP_GUI
- help_stop_flag = 1;
- #endif
- rx = IRC_STOP;
- }
- }
- if(rx == IRC_STOP)
- {
- //wanghaoying marked below 2004-7-1 14:01, for it is repetitive
- // #ifndef MP3_JPEG_COWORK//2004-05-18 Clear the flag in fs_nav_jpg.c
- Jpg_Show_Usage_Flag=0;//nono open it.4-7-26 15:41
- // #endif
- Jpg_Show_Usage_Page=0;
- #ifdef SDRAM_16Mb_Mode
- ircmd_stop();
- #else// SDRAM_16Mb_Mode
- if(pFsJpeg->gifsState!=3) //2003/10/27 axelchen for HELP screen flickering
- {
- delay_srv_10ms(2);
- #if defined (MP3_LARGE_GUI) || defined (FS_BMP_GUI)//Maoyong 2003.12.29 for Large GUI retrun from Jpeg Help page
- config_memory(MEMORY_GRAPH_NTSC); //Large , not SMALL, but NTSC
- #else
- config_memory(MEMORY_GRAPH_SMALL);
- #endif
- setup_tv_format(tv_format);
- play_state = VCD_STATE_MP3_FILELIST;
- FSGUI_Menu();
- delay_srv_10ms(2);
- }
- #endif//SDRAM_16Mb_Mode
- }
- }
- #endif //#ifdef JPG_EFFECT
- if(play_state==VCD_STATE_POWER)
- {
- #if defined(SUPPORT_TUNER_MV114) || defined(SUPPORT_TUNER_ALPS)
- if( (rx==IRC_POWER)||(rx<=IRC_P10) )
- {
- irc_func_table[(BYTE)rx]();
- return;
- }
- else if(rx==IRC_3D||rx==IRC_SETUP||rx==IRC_FORMAT||rx==IRC_P_SCAN)
- {
- action_click=1;
- irc_func_table[(BYTE)rx]();
- return;
- }
- else if(rx==IRC_VOLUME_UP||rx==IRC_VOLUME_DN)
- {
- chk_password(rx);
- return;
- }
- #ifdef XINGQIU_DVD_RECEIVER
- else if(rx==IRC_PREV||rx==IRC_NEXT||rx==IRC_BACKWARD||rx==IRC_FORWARD||rx==IRC_LEFT||rx==IRC_RIGHT||rx==IRC_SELECT||
- rx==IRC_MUTE||rx==IRC_RCVR_BAND||rx==IRC_AUD_LANGUAGE||IRC_ANGLE)
- #else
- else if(rx==IRC_UP||rx==IRC_DOWN||rx==IRC_LEFT||rx==IRC_RIGHT||rx==IRC_SELECT||
- rx==IRC_MUTE||rx==IRC_ZOOM||rx==IRC_AUD_LANGUAGE||IRC_ANGLE)
- #endif
- {
- #ifdef SUPPORT_APOGEE_AMP
- if((!((full_scrn & APOGEEAMPVOL)||(full_scrn & SOUND)||(full_scrn & SETUP))))
- #endif
- {
- tuner_key(rx);
- return;
- }
- }
- else
- {
- return;
- }
- #else
- if(rx==IRC_POWER)
- irc_func_table[(BYTE)rx]();
- #endif
- //wanghaoying marked below 2004-7-1 14:00, for not use any more
- //freyman add 2002-8-27 11:24
- //in tuner or aninput mode switch amp on off
- // #ifdef IR17
- // if((rx>=IRC_CENTER_UP)||(rx<=IRC_MEMORY_UP))
- // #else
- // #ifdef SUPPORT_AMP
- // if(rx==IRC_AMP_ONOFF)
- // #endif
- // #endif
- irc_func_table[(BYTE)rx]();
- // wanghaoying marked 2004-7-1 13:59, for not use any more
- // #if defined(SUPPORT_TUNER)
- // if((rx==IRC_VOLUME_DN)||(rx==IRC_VOLUME_UP))
- // ircmd_power_volume(rx);
- // #endif
- }
- else
- {//move to password.c,terry,2003/8/20 06:47PM
- chk_password(rx);
- }
- }
- }
- extern const BYTE ir_mapcode[256];
- BYTE GetReverse(BYTE bIRCode)
- {
- BYTE i;
- for (i = 0; i < 256; i++)
- {
- if (ir_mapcode[i] == bIRCode)
- break;
- }
- if (bIRCode == 255)
- return 0xff;
- return revn(i, 8);
- }
- /*
- ** freyman 2002-7-30 13:24
- ** Des: Rotary encoder utility.
- **
- */
- #ifdef ROTARY_VOLUME
- #define RV_IDLE 1
- #define RV_CWBEGIN 2
- #define RV_CWEND 3
- #define RV_CCWBEGIN 4
- #define RV_CCWEND 5
- #define RV_HIGH 1
- #define RV_LOW 0
- #if 0//def ROTARY_VOL_HUAJIA600 //wangfeng 2003-09-22 20:31
- #define RV_WAIT_HIGH 0
- #define RV_WAIT_LOW 6
- void polling_rotary(void)
- {
- BYTE pin_a=RV_LOW, pin_b=RV_LOW;
- static BYTE rotary_state = RV_WAIT_HIGH;
- static BYTE old_pin_a=RV_LOW,old_pin_b=RV_LOW;
- static BYTE _j;
- extern void set_volume(BYTE);
- extern void ampvol_rotary(BYTE direction);
- regs0->sft_cfg6 &= ~(0x1 << 6);
- regs0->sft_cfg6 &= ~(0x1 << 4);
- regs0->gpio_master[14/16] |= (0x3 << (14%16));
- regs0->gpio_oe[14/16] &= (~0x3 << (14%16) );
- pin_a = ((regs0->gpio_in[14/16] >> (14%16)) & 0x01);
- pin_b = ((regs0->gpio_in[15/16] >> (15%16)) & 0x01);
- if((old_pin_a!=pin_a)||(old_pin_b!=pin_b))
- {
- old_pin_a=pin_a;
- old_pin_b=pin_b;
- _j=0;
- return;
- }
- //if(_j++<1) return;
- if( (pin_a==RV_HIGH)&&(pin_b==RV_HIGH) )
- {
- rotary_state = RV_WAIT_HIGH;
- return;
- }
- else if( (pin_a==RV_LOW)&&(pin_b==RV_LOW) )
- {
- rotary_state = RV_WAIT_LOW;
- return;
- }
- else if((pin_a==RV_HIGH)&&(pin_b==RV_LOW))
- {
- if(rotary_state==RV_WAIT_HIGH)
- {
- rotary_state = RV_CCWBEGIN;//RV_CCWEND;
- }
- else if(rotary_state==RV_WAIT_LOW)
- {
- rotary_state = RV_CWBEGIN;//RV_CWEND;
- }
- else if(rotary_state==RV_CCWBEGIN)
- {
- rotary_state = RV_CCWEND;
- }
- else if(rotary_state==RV_CWBEGIN)
- {
- rotary_state = RV_CWEND;
- }
- }
- if(rotary_state==RV_CWEND)
- {
- ircmd_volume_up();
- //rotary_state==RV_WAIT_HIGH;
- }
- else if(rotary_state==RV_CCWEND)
- {
- ircmd_volume_down();
- //rotary_state==RV_WAIT_HIGH;
- }
- }
- #elif 1//0//for hj-1250/hj-1251 rotary volume
- #define RV_WAIT 0
- void polling_rotary(void)
- {
- BYTE pin_a=RV_LOW, pin_b=RV_LOW;
- static BYTE rotary_state = RV_WAIT;
- static BYTE old_pin_a=RV_LOW,old_pin_b=RV_LOW;
- static BYTE _j;
- extern void set_volume(BYTE);
- extern void ampvol_rotary(BYTE direction);
- /*
- regs0->sft_cfg6 &= ~(0x1 << 6);
- regs0->sft_cfg6 &= ~(0x1 << 4);
- regs0->gpio_master[14/16] |= (0x3 << (14%16));
- regs0->gpio_oe[14/16] &= (~0x3 << (14%16) );
- */
- #ifdef HJ_8202_8408
- pin_a = ((17/16] >> (17%16)) & 0x01);
- pin_b = ((regs0->gpio_in[16/16] >> (16%16)) & 0x01);
- #else
- pin_a = ((regs0->gpio_in[15/16] >> (15%16)) & 0x01);
- pin_b = ((regs0->gpio_in[16/16] >> (16%16)) & 0x01);
- #endif
- if((old_pin_a!=pin_a)||(old_pin_b!=pin_b))
- {
- old_pin_a=pin_a;
- old_pin_b=pin_b;
- _j=0;
- return;
- }
- if(_j++<6) return;
- if( (pin_a==RV_HIGH)&&(pin_b==RV_HIGH) )
- {
- rotary_state = RV_WAIT;
- return;
- }
- else if( (pin_a==RV_LOW)&&(pin_b==RV_LOW) )
- {
- if(rotary_state==RV_CWBEGIN)
- {
- rotary_state = RV_CWEND;
- }
- else if(rotary_state==RV_CCWBEGIN)
- {
- rotary_state = RV_CCWEND;
- }
- }
- else if((pin_a==RV_HIGH)&&(pin_b==RV_LOW))
- {
- if(rotary_state==RV_WAIT)
- {
- rotary_state = RV_CCWBEGIN;//RV_CCWEND;
- }
- }
- else if((pin_a==RV_LOW)&&(pin_b==RV_HIGH))
- {
- if(rotary_state==RV_WAIT)
- {
- rotary_state = RV_CWBEGIN;//RV_CWEND;
- }
- }
- if(rotary_state==RV_CWEND)
- {
- RotaryStateChk();
- #ifdef ROTARY_SWITCH_1251
- //ircmd_volume_down();//1251 //fengjl mark it 2004-03-03 16:21 to cancel screen saver by rotate volume
- call_ir_func(IRC_VOLUME_DN);
- #else
- //ircmd_volume_up();
- call_ir_func(IRC_VOLUME_UP);
- #endif
- rotary_state = RV_WAIT;
- }
- else if(rotary_state==RV_CCWEND)
- {
- RotaryStateChk();
- #ifdef ROTARY_SWITCH_1251
- //ircmd_volume_up();
- call_ir_func(IRC_VOLUME_UP);
- #else
- //ircmd_volume_down();
- call_ir_func(IRC_VOLUME_DN);
- #endif
- rotary_state = RV_WAIT;
- }
- }
- //wangfeng add 2003-12-29
- #elif 0//for hj-3000 rotary volume
- #define RV_WAIT 0
- #define R_WAIT 6
- #define L_WAIT 7
- #define RV_R 8
- #define RV_L 9
- void polling_rotary(void)
- {
- BYTE pin_a=RV_LOW, pin_b=RV_LOW;
- static BYTE rotary_state = RV_WAIT;
- static BYTE old_pin_a=RV_LOW,old_pin_b=RV_LOW;
- //static BYTE old_pin_a=RV_HIGH,old_pin_b=RV_HIGH;
- static BYTE _j;
- extern void set_volume(BYTE);
- extern void ampvol_rotary(BYTE direction);
- pin_a = ((regs0->gpio_in[14/16] >> (14%16)) & 0x01);
- pin_b = ((regs0->gpio_in[15/16] >> (15%16)) & 0x01);
- if((old_pin_a!=pin_a)||(old_pin_b!=pin_b))
- {
- old_pin_a=pin_a;
- old_pin_b=pin_b;
- _j=0;
- return;
- }
- if(_j++<8) return;
- if( (pin_a==RV_HIGH)&&(pin_b==RV_HIGH) )
- {
- if(rotary_state==RV_CWEND)
- rotary_state=RV_R;
- else
- rotary_state = R_WAIT;
- //return;
- }
- else if((pin_a==RV_HIGH)&&(pin_b==RV_LOW))
- {
- if(rotary_state==RV_CCWEND)
- rotary_state=RV_L;
- else if(rotary_state==RV_CWEND)
- rotary_state=RV_R;
- else
- rotary_state = L_WAIT;
- //return;
- }
- else if( (pin_a==RV_LOW)&&(pin_b==RV_LOW) )
- {
- if(rotary_state==L_WAIT)
- {
- rotary_state = RV_CCWEND;
- }
- else if(rotary_state==RV_CWBEGIN)
- {
- rotary_state = RV_CWEND;
- }
- }
- else if((pin_a==RV_LOW)&&(pin_b==RV_HIGH))
- {
- if(rotary_state==R_WAIT)
- {
- rotary_state = RV_CWBEGIN;//RV_CCWEND;
- }
- else if(rotary_state==RV_CCWBEGIN)
- {
- rotary_state = RV_CCWEND;
- }
- }
- if(rotary_state==RV_R)
- {
- RotaryStateChk();
- #ifdef ROTARY_SWITCH_1251
- ircmd_volume_down();//1251
- #else
- ircmd_volume_up();
- #endif
- rotary_state = RV_WAIT;
- }
- else if(rotary_state==RV_L)
- {
- RotaryStateChk();
- #ifdef ROTARY_SWITCH_1251
- ircmd_volume_up();
- #else
- ircmd_volume_down();
- #endif
- rotary_state = RV_WAIT;
- }
- }
- #else//ROTARY_VOL_HUAJIA600
- #define RV_WAIT 0
- void polling_rotary(void)
- {
- BYTE pin_a=RV_LOW, pin_b=RV_LOW;
- static BYTE rotary_state = RV_WAIT;
- extern void set_volume(BYTE);
- extern void ampvol_rotary(BYTE direction);
- pin_a = ((regs0->gpio_in[4/16] >> (4%16)) & 0x01);
- pin_b = ((regs0->gpio_in[5/16] >> (5%16)) & 0x01);
- if( (pin_a==RV_HIGH)&&(pin_b==RV_HIGH) )
- {
- rotary_state = RV_WAIT;
- return;
- }
- else if( (pin_a==RV_LOW)&&(pin_b==RV_LOW) )
- {
- rotary_state = RV_IDLE;
- return;
- }
- else if( (pin_a==RV_LOW)&&(pin_b==RV_HIGH) )
- {
- if(rotary_state==RV_WAIT)
- {
- rotary_state = RV_CWBEGIN;
- }
- else if( (rotary_state==RV_IDLE)||(rotary_state==RV_CCWBEGIN) )
- {
- rotary_state = RV_CCWEND;
- }
- else
- {
- rotary_state = RV_WAIT;
- }
- }
- else if( (pin_a==RV_HIGH)&&(pin_b==RV_LOW) )
- {
- if(rotary_state==RV_WAIT)
- {
- rotary_state = RV_CCWBEGIN;
- }
- else if( (rotary_state==RV_IDLE)||(rotary_state==RV_CWBEGIN) )
- {
- rotary_state = RV_CWEND;
- }
- else
- {
- rotary_state = RV_WAIT;
- }
- }
- if(rotary_state==RV_CWEND)
- {
- /* freyman marked 2004-3-23 15:39 for no use any more
- #ifdef SVA_SAMPLE
- if(full_scrn==AMPVOL)
- ampvol_func_right();
- else
- set_volume(1);
- #else
- */
- #if defined(SUPPORT_TUNER)
- ircmd_power_volume(IRC_VOLUME_UP);
- #else
- ircmd_volume_up();
- #endif//SUPPORT_TUNER AV_INPUT
- // #endif
- }
- else if(rotary_state==RV_CCWEND)
- {
- /* freyman marked 2004-3-23 15:37 for no use any more
- #ifdef SVA_SAMPLE
- if(full_scrn==AMPVOL)
- ampvol_func_left();
- else
- set_volume(0);
- #else
- */
- #if defined(SUPPORT_TUNER)
- ircmd_power_volume(IRC_VOLUME_DN);
- #else
- ircmd_volume_down();
- #endif
- // #endif
- }
- }
- #endif//ROTARY_VOL_HUAJIA600
- //shut off certain full_scrn when rotary vol is on, wangfeng 2004-2-4 17:02
- void RotaryStateChk(void)
- {
- if(full_scrn)
- {
- if (full_scrn & PROGRAM) //add by shawn 20020218
- {
- #ifdef SDRAM_16Mb_Mode
- prog_state=3; // 3 means that ircmd_stop pressed when full_scrn==PROGRAM
- #endif//SDRAM_16Mb_Mode
- #ifdef JIEKE_DVD
- prog_cnt = 0;
- #endif
- prog_func_off();
- }
- else if (full_scrn & SOUND) //add by wangfeng 2004-2-4 17:00
- {
- cancel_sound();
- }
- else if (full_scrn & SETUP) //add by wangfeng 2004-2-5 14:41
- {
- ExitSetupPage(1);
- }
- #ifdef CF_CARD_WRITE
- if(!(full_scrn & PERIPHERAL)) //wuxiaofeng if define card, use preview for IR input
- #endif
- //wanghaoying changed 2003-12-9 14:21
- full_scrn = 0;
- #ifdef SOUND_NO_KEYPAGE
- bEqDisplay = 0;
- #endif
- //display_again=1;
- } //if(full_scrn)
- }
- #endif//ROTARY_VOLUME
- extern UINT16 GetIRCode()
- {
- // 2004/09/23 yltseng
- extern const BYTE ir_mapcode[256];
- UINT16 rx = regs0->iop_data[IR_PORT];
- #ifndef SUPPORT_SPI
- if( rx & IR_RDY )
- #endif
- {
- #ifdef IR_NEC
- rx = reverse_fun(rx);
- #else
- rx = rx&0x003f;
- #endif
- #if defined(IR30)
- if(regs0->iop_data[6] == IR_ADDR_PATT)
- {
- switch(rx)
- {
- case 0x30:
- case 0x32:
- case 0x33:
- case 0x34:
- rx+=0x10;
- break;
- default:
- break;
- }
- }
- if(regs0->iop_data[6] == IR_ADDR_PATT2)
- {
- switch(rx)
- {
- case 0x30:
- case 0x32:
- case 0x33:
- case 0x34:
- rx+=0x15;
- break;
- default:
- break;
- }
- }
- #endif //#if defined(IR30)
- #ifdef SUPPORT_SPI
- rx = ir_mapcode[(BYTE)spi_mem[5]];
- #else
- rx = ir_mapcode[(BYTE) rx];
- #endif
- regs0->iop_data[IR_PORT] &= (~IR_RDY);
- return rx;
- }
- return IR_CODE_MAX_NUM;
- }
- void PollingSpecifiedKeys( UINT16* pKeyArray, UINT32 uiArraySize ) // 2004/10/14 yltseng
- {
- UINT16 rx = GetIRCode();
- if( rx == IR_CODE_MAX_NUM )
- {
- #ifdef SUPPORT_VFD
- extern UINT32 CheckVFDkey();
- rx = CheckVFDkey();
- #endif
- if( rx == IR_CODE_MAX_NUM )
- return;
- }
- UINT32 i = 0;
- for( i = 0; i < uiArraySize; i++ )
- {
- if( rx == pKeyArray[i] )
- {
- irc_func_table[rx]();
- break;
- }
- }
- }
- #ifdef SUPPORT_SPI_QSI
- extern void spi_cmd_production_reset(void);
- extern void spi_cmd_run_in(void);
- extern void spi_cmd_run_in_final(void);
- extern void spi_cmd_mecha_test(void);
- extern void spi_cmd_slot_test(void);
- extern void spi_cmd_invalid_key(void);
- void spicmd_pre_parse(BYTE spi_cmd)
- {
- UINT8 uRx;
- uSpiRxData=spi_cmd;//tmp usage
- switch(uSpiRxData)//special cmd
- {
- case 0x00:
- spi_cmd_wakeup(); return;
- case 0x80:
- spi_cmd_production_reset(); return;
- case 0x81:
- spi_cmd_run_in(); return;
- case 0x82:
- spi_cmd_run_in_final(); return;
- case 0x83: //qsi: added by johnson 20040715
- spi_cmd_mecha_test(); return;
- case 0x84: //qsi: added by johnson 20040715
- spi_cmd_slot_test(); return;
- case 0xF0:
- spi_cmd_invalid_key(); return;
- }
- if(uSpiRxData < MAX_SPI_CMD_NUM)//boundry control
- uRx = SPI_IR_TRANS_TABLE[uSpiRxData];
- else
- return;
- //if( uRx == IRC_NULL)
- //spi_cmd_func_table[spi_cmd]();
- //else
- call_ir_func(uRx);
- //ircmd_pre_paser(uRx);
- }
- #endif //#ifdef SUPPORT_SPI_QSI
- //Maoyong 2004-9-24 8:59 call after full scrn menu initialization
- void SetFullscrnCmdFuncPtr( void (*up), void (*down), void (*left), void (*right),void (*sel))
- {
- ircmd_full_scrn_up = up;
- ircmd_full_scrn_down = down;
- ircmd_full_scrn_left = left;
- ircmd_full_scrn_right = right;
- ircmd_full_scrn_select = sel;
- }