www.pudn.com > 6027_HD65.rar > irkey.c
/*************** MTK CONFIDENTIAL & COPYRIGHTED ****************/
/*************** ****************/
/*************** $Modtime:: 04/04/19 3:01p $ ****************/
/*************** $Revision:: 1 $ ****************/
/*************** ****************/
/*************** Description : remote controller key ****************/
/*************** mapping table ****************/
/*************** ****************/
/*************** Company : MediaTek Inc. ****************/
/*************** Programmer : ****************/
/**********************************************************************/
/* map IR key code to internal key code */
#if (defined(IR_USE_RC6) || defined(IR_USE_RC5))
#ifdef IR_USE_RC6
#define IR_CUSTOM_CODE_RC6 0x04
code const BYTE _pbIRKeyTblRC6[256] =
{
/* 0x00 */ IR_NUM0,
/* 0x01 */ IR_NUM1,
/* 0x02 */ IR_NUM2,
/* 0x03 */ IR_NUM3,
/* 0x04 */ IR_NUM4,
/* 0x05 */ IR_NUM5,
/* 0x06 */ IR_NUM6,
/* 0x07 */ IR_NUM7,
/* 0x08 */ IR_NUM8,
/* 0x09 */ IR_NUM9,
/* 0x0a */ IR_NONE,
/* 0x0b */ IR_NONE,
/* 0x0c */ IR_POWER,
/* 0x0d */ IR_MUTE,
/* 0x0e */ IR_NONE,
/* 0x0f */ IR_DISPLAY,
/* 0x10 */ IR_NONE,
/* 0x11 */ IR_NONE,
/* 0x12 */ IR_NONE,
/* 0x13 */ IR_NONE,
/* 0x14 */ IR_NONE,
/* 0x15 */ IR_NONE,
/* 0x16 */ IR_NONE,
/* 0x17 */ IR_NONE,
/* 0x18 */ IR_NONE,
/* 0x19 */ IR_NONE,
/* 0x1a */ IR_NONE,
/* 0x1b */ IR_NONE,
/* 0x1c */ IR_NONE,
/* 0x1d */ IR_REPEAT,
/* 0x1e */ IR_NONE,
/* 0x1f */ IR_NONE,
/* 0x20 */ IR_NEXT,
/* 0x21 */ IR_PREV,
/* 0x22 */ IR_NONE,
/* 0x23 */ IR_NONE,
/* 0x24 */ IR_NONE,
/* 0x25 */ IR_NONE,
/* 0x26 */ IR_NONE,
/* 0x27 */ IR_NONE,
/* 0x28 */ IR_NONE,
/* 0x29 */ IR_NONE,
/* 0x2a */ IR_NONE,
/* 0x2b */ IR_NONE,
/* 0x2c */ IR_PLAY,
/* 0x2d */ IR_NONE,
/* 0x2e */ IR_NONE,
/* 0x2f */ IR_NONE,
/* 0x30 */ IR_PAUSE,
/* 0x31 */ IR_STOP,
/* 0x32 */ IR_NONE,
/* 0x33 */ IR_NONE,
/* 0x34 */ IR_NONE,
/* 0x35 */ IR_NONE,
/* 0x36 */ IR_NONE,
/* 0x37 */ IR_NONE,
/* 0x38 */ IR_NONE,
/* 0x39 */ IR_NONE,
/* 0x3a */ IR_NONE,
/* 0x3b */ IR_SET_A,
/* 0x3c */ IR_NONE,
/* 0x3d */ IR_NONE,
/* 0x3e */ IR_NONE,
/* 0x3f */ IR_NONE,
/* 0x40 */ IR_NONE,
/* 0x41 */ IR_NONE,
/* 0x42 */ IR_NONE,
/* 0x43 */ IR_NONE,
/* 0x44 */ IR_NONE,
/* 0x45 */ IR_NONE,
/* 0x46 */ IR_NONE,
/* 0x47 */ IR_NONE,
/* 0x48 */ IR_NONE,
/* 0x49 */ IR_NONE,
/* 0x4a */ IR_NONE,
/* 0x4b */ IR_SUB_TITLE,
/* 0x4c */ IR_NONE,
/* 0x4d */ IR_NONE,
/* 0x4e */ IR_AUDIO,
/* 0x4f */ IR_NONE,
/* 0x50 */ IR_NONE,
/* 0x51 */ IR_NONE,
/* 0x52 */ IR_NONE,
/* 0x53 */ IR_NONE,
/* 0x54 */ IR_ROOT_MENU,
/* 0x55 */ IR_NONE,
/* 0x56 */ IR_NONE,
/* 0x57 */ IR_NONE,
/* 0x58 */ IR_UP,
/* 0x59 */ IR_DOWN,
/* 0x5a */ IR_LEFT,
/* 0x5b */ IR_RIGHT,
/* 0x5c */ IR_PLAY_ENTER,
/* 0x5d */ IR_NONE,
/* 0x5e */ IR_NONE,
/* 0x5f */ IR_NONE,
/* 0x60 */ IR_NONE,
/* 0x61 */ IR_NONE,
/* 0x62 */ IR_NONE,
/* 0x63 */ IR_NONE,
/* 0x64 */ IR_NONE,
/* 0x65 */ IR_NONE,
/* 0x66 */ IR_NONE,
/* 0x67 */ IR_NONE,
/* 0x68 */ IR_NONE,
/* 0x69 */ IR_NONE,
/* 0x6a */ IR_NONE,
/* 0x6b */ IR_NONE,
/* 0x6c */ IR_NONE,
/* 0x6d */ IR_NONE,
/* 0x6e */ IR_NONE,
/* 0x6f */ IR_NONE,
/* 0x70 */ IR_NONE,
/* 0x71 */ IR_NONE,
/* 0x72 */ IR_NONE,
/* 0x73 */ IR_NONE,
/* 0x74 */ IR_NONE,
/* 0x75 */ IR_NONE,
/* 0x76 */ IR_NONE,
/* 0x77 */ IR_NONE,
/* 0x78 */ IR_NONE,
/* 0x79 */ IR_NONE,
/* 0x7a */ IR_NONE,
/* 0x7b */ IR_NONE,
/* 0x7c */ IR_NONE,
/* 0x7d */ IR_NONE,
/* 0x7e */ IR_NONE,
/* 0x7f */ IR_NONE,
/* 0x80 */ IR_NONE,
/* 0x81 */ IR_NONE,
/* 0x82 */ IR_SETUP,
/* 0x83 */ IR_TITLE_PBC,
/* 0x84 */ IR_NONE,
/* 0x85 */ IR_ANGLE,
/* 0x86 */ IR_NONE,
/* 0x87 */ IR_NONE,
/* 0x88 */ IR_NONE,
/* 0x89 */ IR_NONE,
/* 0x8a */ IR_NONE,
/* 0x8b */ IR_NONE,
/* 0x8c */ IR_NONE,
/* 0x8d */ IR_NONE,
/* 0x8e */ IR_NONE,
/* 0x8f */ IR_NONE,
/* 0x90 */ IR_NONE,
/* 0x91 */ IR_NONE,
/* 0x92 */ IR_NONE,
/* 0x93 */ IR_NONE,
/* 0x94 */ IR_NONE,
/* 0x95 */ IR_NONE,
/* 0x96 */ IR_NONE,
/* 0x97 */ IR_NONE,
/* 0x98 */ IR_NONE,
/* 0x99 */ IR_NONE,
/* 0x9a */ IR_NONE,
/* 0x9b */ IR_NONE,
/* 0x9c */ IR_NONE,
/* 0x9d */ IR_NONE,
/* 0x9e */ IR_NONE,
/* 0x9f */ IR_NONE,
/* 0xa0 */ IR_NONE,
/* 0xa1 */ IR_NONE,
/* 0xa2 */ IR_NONE,
/* 0xa3 */ IR_NONE,
/* 0xa4 */ IR_NONE,
/* 0xa5 */ IR_NONE,
/* 0xa6 */ IR_NONE,
/* 0xa7 */ IR_NONE,
/* 0xa8 */ IR_NONE,
/* 0xa9 */ IR_NONE,
/* 0xaa */ IR_NONE,
/* 0xab */ IR_NONE,
/* 0xac */ IR_NONE,
/* 0xad */ IR_NONE,
/* 0xae */ IR_NONE,
/* 0xaf */ IR_NONE,
/* 0xb0 */ IR_NONE,
/* 0xb1 */ IR_NONE,
/* 0xb2 */ IR_NONE,
/* 0xb3 */ IR_NONE,
/* 0xb4 */ IR_NONE,
/* 0xb5 */ IR_NONE,
/* 0xb6 */ IR_NONE,
/* 0xb7 */ IR_NONE,
/* 0xb8 */ IR_NONE,
/* 0xb9 */ IR_NONE,
/* 0xba */ IR_NONE,
/* 0xbb */ IR_NONE,
/* 0xbc */ IR_NONE,
/* 0xbd */ IR_NONE,
/* 0xbe */ IR_NONE,
/* 0xbf */ IR_NONE,
/* 0xc0 */ IR_NONE,
/* 0xc1 */ IR_NONE,
/* 0xc2 */ IR_NONE,
/* 0xc3 */ IR_NONE,
/* 0xc4 */ IR_NONE,
/* 0xc5 */ IR_NONE,
/* 0xc6 */ IR_NONE,
/* 0xc7 */ IR_NONE,
/* 0xc8 */ IR_NONE,
/* 0xc9 */ IR_NONE,
/* 0xca */ IR_NONE,
/* 0xcb */ IR_NONE,
/* 0xcc */ IR_NONE,
/* 0xcd */ IR_NONE,
/* 0xce */ IR_NONE,
/* 0xcf */ IR_NONE,
/* 0xd0 */ IR_NONE,
/* 0xd1 */ IR_NONE,
/* 0xd2 */ IR_NONE,
/* 0xd3 */ IR_NONE,
/* 0xd4 */ IR_NONE,
/* 0xd5 */ IR_DIGEST,
/* 0xd6 */ IR_NONE,
/* 0xd7 */ IR_NONE,
/* 0xd8 */ IR_NONE,
/* 0xd9 */ IR_NONE,
/* 0xda */ IR_NONE,
/* 0xdb */ IR_NONE,
/* 0xdc */ IR_NONE,
/* 0xdd */ IR_NONE,
/* 0xde */ IR_NONE,
/* 0xdf */ IR_NONE,
/* 0xe0 */ IR_NONE,
/* 0xe1 */ IR_NONE,
/* 0xe2 */ IR_NONE,
/* 0xe3 */ IR_NONE,
/* 0xe4 */ IR_KARAOKE,
/* 0xe5 */ IR_NONE,
/* 0xe6 */ IR_NONE,
/* 0xe7 */ IR_VOCAL_ASSIST,
/* 0xe8 */ IR_NONE,
/* 0xe9 */ IR_NONE,
/* 0xea */ IR_NONE,
/* 0xeb */ IR_NONE,
/* 0xec */ IR_AUD_KEY_RESUME,
/* 0xed */ IR_NONE,
/* 0xee */ IR_NONE,
/* 0xef */ IR_NONE,
/* 0xf0 */ IR_NONE,
/* 0xf1 */ IR_NONE,
/* 0xf2 */ IR_NONE,
/* 0xf3 */ IR_NONE,
/* 0xf4 */ IR_NONE,
/* 0xf5 */ IR_NONE,
/* 0xf6 */ IR_NONE,
/* 0xf7 */ IR_ZOOM_IN,
/* 0xf8 */ IR_NONE,
/* 0xf9 */ IR_NONE,
/* 0xfa */ IR_NONE,
/* 0xfb */ IR_NONE,
/* 0xfc */ IR_NONE,
/* 0xfd */ IR_NONE,
/* 0xfe */ IR_NONE,
/* 0xff */ IR_NONE
};
#endif
#if (defined(IR_USE_RC5_UNDER_RC6) || defined(IR_USE_RC5))
#define IR_CUSTOM_CODE_RC5 0x02
code const BYTE _pbIRKeyTblRC5[64] =
{
/* 0x00 */ IR_NUM7,
/* 0x01 */ IR_CLEAR,
/* 0x02 */ IR_NUM3,
/* 0x03 */ IR_NUM2,
/* 0x04 */ IR_ADD10,
/* 0x05 */ IR_NUM6,
/* 0x06 */ IR_NUM5,
/* 0x07 */ IR_NUM0,
/* 0x08 */ IR_NUM9,
/* 0x09 */ IR_NUM8,
/* 0x0a */ IR_NUM4,
/* 0x0b */ IR_NONE,
/* 0x0c */ IR_EJECT,
/* 0x0d */ IR_POWER,
/* 0x0e */ IR_ROOT_MENU,
/* 0x0f */ IR_NONE,
/* 0x10 */ IR_LEFT,
/* 0x11 */ IR_RIGHT,
/* 0x12 */ IR_NUM1,
/* 0x13 */ IR_NONE,
/* 0x14 */ IR_NONE,
/* 0x15 */ IR_FF,
/* 0x16 */ IR_FR,
/* 0x17 */ IR_NONE,
/* 0x18 */ IR_NONE,
/* 0x19 */ IR_NONE,
/* 0x1a */ IR_NONE,
/* 0x1b */ IR_NONE,
/* 0x1c */ IR_NONE,
/* 0x1d */ IR_NONE,
/* 0x1e */ IR_NONE,
/* 0x1f */ IR_NONE,
/* 0x20 */ IR_DOWN,
/* 0x21 */ IR_UP,
/* 0x22 */ IR_PLAY_ENTER,
/* 0x23 */ IR_GOTO,
/* 0x24 */ IR_NONE,
/* 0x25 */ IR_NONE,
/* 0x26 */ IR_NONE,
/* 0x27 */ IR_NONE,
/* 0x28 */ IR_NONE,
/* 0x29 */ IR_ANGLE,
/* 0x2a */ IR_RETURN,
/* 0x2b */ IR_REPEAT,
/* 0x2c */ IR_PREV,
/* 0x2d */ IR_NEXT,
/* 0x2e */ IR_PLAY_PAUSE,
/* 0x2f */ IR_STOP,
/* 0x30 */ IR_SET_A,
/* 0x31 */ IR_NONE,
/* 0x32 */ IR_SUB_TITLE,
/* 0x33 */ IR_NONE,
/* 0x34 */ IR_PROGRAM,
/* 0x35 */ IR_NONE,
/* 0x36 */ IR_AUDIO,
/* 0x37 */ IR_DISPLAY,
/* 0x38 */ IR_ZOOM_IN,
/* 0x39 */ IR_NONE,
/* 0x3a */ IR_NONE,
/* 0x3b */ IR_NONE,
/* 0x3c */ IR_TITLE_PBC,
/* 0x3d */ IR_NONE,
/* 0x3e */ IR_NONE,
/* 0x3f */ IR_SETUP //IR_DISPLAY
};
#endif
#elif (MTK_REMOTE == 0)
#define IR_CUSTOM_CODE (_pbIRSysCode[0])
#define IR_CUSTOM_SUB_CODE (_pbIRSysCode[1])
code const BYTE _pbIRSysCode[2] = { 0x08, 0xf7 }; /* note bit reversed */
#define IR_KEY_CODE_MAX 0x60
#define IR_KEY_GAP_START 0x40
#define IR_KEY_GAP_SIZE 0x20
#define IR_KEY_TBL_SIZE (IR_KEY_CODE_MAX - IR_KEY_GAP_SIZE)
code const BYTE _pbIRKeyTbl[IR_KEY_TBL_SIZE] =
{
/* 0x00 */ IR_NUM2,
/* 0x01 */ IR_NUM1,
/* 0x02 */ IR_NUM3,
/* 0x03 */ IR_NUM4,
/* 0x04 */ IR_AUD_KEY_PLUS,
/* 0x05 */ IR_ADD10,
/* 0x06 */ IR_PAL_NTSC,
/* 0x07 */ IR_NONE,
/* 0x08 */ IR_SETUP,
/* 0x09 */ IR_EJECT,
/* 0x0a */ IR_NONE,
#ifdef USE_TEMP_DIGEST_KEY
/* 0x0b */ IR_DIGEST,
#else
/* 0x0b */ IR_CLEAR,
#endif
/* 0x0c */ IR_SF,
/* 0x0d */ IR_REPEAT,
/* 0x0e */ IR_SET_A,
/* 0x0f */ IR_VOLUME_DOWN,
/* 0x10 */ IR_STEPR,
/* 0x11 */ IR_NUM9,
/* 0x12 */ IR_NUM0,
#ifdef USE_TEMP_SR_KEY
/* 0x13 */ IR_SR,
#else
/* 0x13 */ IR_EQUALIZER,
#endif
/* 0x14 */ IR_NUM6,
/* 0x15 */ IR_NUM5,
/* 0x16 */ IR_NUM7,
/* 0x17 */ IR_NUM8,
/* 0x18 */ IR_PLAY_PAUSE,
/* 0x19 */ IR_STOP,
/* 0x1a */ IR_AUD_KEY_MINUS,
/* 0x1b */ IR_DISPLAY,
/* 0x1c */ IR_RETURN,
/* 0x1d */ IR_SUB_TITLE,
/* 0x1e */ IR_ROOT_MENU,
/* 0x1f */ IR_RANDOM,
/* 0x40 */ IR_ANGLE,
/* 0x41 */ IR_PROGRAM,
/* 0x42 */ IR_NONE,
/* 0x43 */ IR_NONE,
/* 0x44 */ IR_SURROUND,
/* 0x45 */ IR_RIGHT,
/* 0x46 */ IR_DOWN,
/* 0x47 */ IR_TITLE_MENU,
/* 0x48 */ IR_UP,
/* 0x49 */ IR_ZOOM_IN,
/* 0x4a */ IR_NONE,
/* 0x4b */ IR_FR,
/* 0x4c */ IR_NEXT,
/* 0x4d */ IR_VOCAL_ASSIST,
/* 0x4e */ IR_PLAY_ENTER,
/* 0x4f */ IR_PREV,
/* 0x50 */ IR_PLAY_ENTER,
/* 0x51 */ IR_FF,
/* 0x52 */ IR_AUDIO,
/* 0x53 */ IR_GOTO,
/* 0x54 */ IR_NONE,
/* 0x55 */ IR_MUTE,
/* 0x56 */ IR_STEPF,
/* 0x57 */ IR_MARK,
/* 0x58 */ IR_NONE,
/* 0x59 */ IR_NONE,
/* 0x5a */ IR_LEFT,
/* 0x5b */ IR_NONE,
/* 0x5c */ IR_VOLUME_UP,
/* 0x5d */ IR_NONE,
/* 0x5e */ IR_NONE,
/* 0x5f */ IR_NONE
};
#elif (MTK_REMOTE == 1)
#define IR_CUSTOM_CODE (_pbIRSysCode[0])
#define IR_CUSTOM_SUB_CODE (_pbIRSysCode[1])
code const BYTE _pbIRSysCode[2] = { 0x00, 0xff };
#define IR_KEY_CODE_MAX 0x60
#define IR_KEY_GAP_START 0x40
#define IR_KEY_GAP_SIZE 0x20
#define IR_KEY_TBL_SIZE (IR_KEY_CODE_MAX - IR_KEY_GAP_SIZE)
code const BYTE _pbIRKeyTbl[IR_KEY_TBL_SIZE] =
{
/* 0x00 */ IR_EJECT,
/* 0x01 */ IR_NUM3,
/* 0x02 */ IR_SET_A,
/* 0x03 */ IR_GOTO,
/* 0x04 */ IR_NONE,
/* 0x05 */ IR_NUM2,
/* 0x06 */ IR_PLAY_ENTER,
/* 0x07 */ IR_REPEAT,
/* 0x08 */ IR_NONE,
/* 0x09 */ IR_NUM1,
/* 0x0a */ IR_ROOT_MENU,
/* 0x0b */ IR_PAL_NTSC,
/* 0x0c */ IR_MUTE,
/* 0x0d */ IR_DISPLAY,
#ifdef USE_TEMP_CLEAR_KEY
/* 0x0e */ IR_CLEAR,
#else
/* 0x0e */ IR_RETURN,
#endif
/* 0x0f */ IR_TITLE_MENU,
/* 0x10 */ IR_NEXT,
/* 0x11 */ IR_NONE,
/* 0x12 */ IR_NONE,
/* 0x13 */ IR_NONE,
/* 0x14 */ IR_PREV,
/* 0x15 */ IR_NONE,
/* 0x16 */ IR_NONE,
/* 0x17 */ IR_NONE,
/* 0x18 */ IR_FF,
/* 0x19 */ IR_NONE,
/* 0x1a */ IR_NONE,
/* 0x1b */ IR_NONE,
/* 0x1c */ IR_FR,
/* 0x1d */ IR_NONE,
/* 0x1e */ IR_NONE,
/* 0x1f */ IR_NONE,
/* 0x40 */ IR_RIGHT,
/* 0x41 */ IR_NUM0,
/* 0x42 */ IR_NUM9,
/* 0x43 */ IR_NUM6,
/* 0x44 */ IR_UP,
/* 0x45 */ IR_ADD10,
/* 0x46 */ IR_NUM8,
/* 0x47 */ IR_NUM5,
/* 0x48 */ IR_DOWN,
/* 0x49 */ IR_NONE,
/* 0x4a */ IR_NUM7,
/* 0x4b */ IR_NUM4,
/* 0x4c */ IR_LEFT,
/* 0x4d */ IR_SETUP,
/* 0x4e */ IR_ANGLE,
/* 0x4f */ IR_SUB_TITLE,
/* 0x50 */ IR_VOLUME_UP,
/* 0x51 */ IR_VOLUME_DOWN,
#if (defined(PLAYER_KARAOKE) || defined(USE_EXTERNAL_KARAOKE))
/* 0x52 */ IR_AUD_KEY_PLUS,
#else
/* 0x52 */ IR_CLEAR,
#endif
/* 0x53 */ IR_NONE,
/* 0x54 */ IR_ZOOM_IN,
/* 0x55 */ IR_MARK,
#ifdef USE_TEMP_DIGEST_KEY
/* 0x56 */ IR_DIGEST,
#else
/* 0x56 */ IR_AUD_KEY_RESUME,
#endif
/* 0x57 */ IR_STOP,
/* 0x58 */ IR_PROGRAM,
#ifdef USE_TEMP_SR_KEY
/* 0x59 */ IR_SR, /* A-TIME */
#else
/* 0x59 */ IR_EQUALIZER, /* A-TIME */
#endif
#if (defined(PLAYER_KARAOKE) || defined(USE_EXTERNAL_KARAOKE))
/* 0x5a */ IR_AUD_KEY_MINUS,
#else
/* 0x5a */ IR_RANDOM,
#endif
/* 0x5b */ IR_PAUSE,
/* 0x5c */ IR_STEPF,
/* 0x5d */ IR_SF,
/* 0x5e */ IR_AUDIO,
/* 0x5f */ IR_VOCAL_ASSIST
};
#elif (MTK_REMOTE == 2)
#define IR_CUSTOM_CODE (_pbIRSysCode[0])
#define IR_CUSTOM_SUB_CODE (_pbIRSysCode[1])
code const BYTE _pbIRSysCode[2] = { 0x00, 0xff };
#define IR_KEY_CODE_MAX 0x60
#define IR_KEY_GAP_START 0x40
#define IR_KEY_GAP_SIZE 0x20
#define IR_KEY_TBL_SIZE (IR_KEY_CODE_MAX - IR_KEY_GAP_SIZE)
code const BYTE _pbIRKeyTbl[IR_KEY_TBL_SIZE] =
{
/* 0x00 */ IR_NUM5,//IR_EJECT,
/* 0x01 */ IR_NUM2,
/* 0x02 */ IR_NUM3,
/* 0x03 */ IR_NUM6,
/* 0x04 */ IR_ADD10,
/* 0x05 */ IR_NUM8,
/* 0x06 */ IR_CLEAR,
/* 0x07 */ IR_NUM9,
/* 0x08 */ IR_GOTO,
/* 0x09 */ IR_PBC,
/* 0x0a */ IR_ROOT_MENU,
/* 0x0b */ IR_UP,
#ifdef AUDIO_IN_TEST
/* 0x0c */ IR_EJECT,
#else
/* 0x0c */ IR_EJECT,
#endif
/* 0x0d */ IR_DISPLAY,
#ifdef USE_TEMP_CLEAR_KEY
/* 0x0e */ IR_CLEAR,
#else
/* 0x0e */ IR_RETURN,
#endif
/* 0x0f */ IR_TITLE_PBC,
/* 0x10 */ IR_VOLUME_UP,
/* 0x11 */ IR_PAL_NTSC,
/* 0x12 */ IR_PROGRAM,
/* 0x13 */ IR_VOLUME_DOWN,
/* 0x14 */ IR_PLAY_PAUSE,
/* 0x15 */ IR_NEXT,
/* 0x16 */ IR_PREV,
/* 0x17 */ IR_STOP,
/* 0x18 */ IR_RIGHT,
/* 0x19 */ IR_COMPONENT,
/* 0x1a */ IR_NONE,
/* 0x1b */ IR_DOWN,
/* 0x1c */ IR_FR,
/* 0x1d */ IR_NONE,
/* 0x1e */ IR_NONE,
/* 0x1f */ IR_NONE,
/* 0x40 */ IR_OSD_LANGUAGE,
/* 0x41 */ IR_MUTE,
/* 0x42 */ IR_NUM4,
/* 0x43 */ IR_NUM1,
/* 0x44 */ IR_ANGLE,
/* 0x45 */ IR_SUB_TITLE,
/* 0x46 */ IR_NUM0,
/* 0x47 */ IR_NUM7,
/* 0x48 */ IR_DISPLAY,
#if (defined(PLAYER_KARAOKE) || defined(USE_EXTERNAL_KARAOKE))
/* 0x49 */ IR_VOCAL_ASSIST,
#else
/* 0x49 */ IR_CLEAR,
#endif
/* 0x4a */ IR_MENU_PBC,
/* 0x4b */ IR_RETURN,
/* 0x4c */ IR_LEFT,
/* 0x4d */ IR_SETUP,
/* 0x4e */ IR_POWER,
/* 0x4f */ IR_SUB_TITLE,
/* 0x50 */ IR_ZOOM_IN,
/* 0x51 */ IR_REPEAT,
#ifdef DVD_AUDIO_TEST
/* 0x52 */ IR_SET_A,
#elif (defined(PLAYER_KARAOKE) || defined(USE_EXTERNAL_KARAOKE))
/* 0x52 */ IR_SET_A,
#else
/* 0x52 */ IR_SET_A,
#endif
/* 0x53 */ IR_FR,
/* 0x54 */ IR_FF,
/* 0x55 */ IR_MARK,
#ifdef USE_TEMP_DIGEST_KEY
/* 0x56 */ IR_PLAY_ENTER,
#else
/* 0x56 */ IR_PLAY_ENTER,
#endif
/* 0x57 */ IR_SF,
/* 0x58 */ IR_ENTER,
#ifdef USE_TEMP_SR_KEY
/* 0x59 */ IR_SR, /* A-TIME */
#else
/* 0x59 */ IR_EQUALIZER, /* A-TIME */
#endif
#ifdef DVD_AUDIO_TEST
/* 0x5a */ IR_LEFT,
#elif (defined(PLAYER_KARAOKE) || defined(USE_EXTERNAL_KARAOKE))
/* 0x5a */ IR_LEFT,
#else
/* 0x5a */ IR_LEFT,
#endif
#ifdef PLAYER_VRMT
/* 0x5b */ IR_SETUP,
/* 0x5c */ IR_VRMT,
#else
/* 0x5b */ IR_SETUP,
/* 0x5c */ IR_STEPF,
#endif
/* 0x5d */ IR_SF,
/* 0x5e */ IR_AUDIO,
#ifdef DVD_AUDIO_TEST
/* 0x5f */ IR_RANDOM
#else
/* 0x5f */ IR_OSD_LANGUAGE
#endif
};
#elif (MTK_REMOTE == 3)
#define IR_CUSTOM_CODE (_pbIRSysCode[0])
#define IR_CUSTOM_SUB_CODE (_pbIRSysCode[1])
code const BYTE _pbIRSysCode[2] = { 0x02, 0xfd }; /* note bit reversed */
#define IR_KEY_CODE_MAX 0x60
#define IR_KEY_GAP_START 0x40
#define IR_KEY_GAP_SIZE 0x20
#define IR_KEY_TBL_SIZE (IR_KEY_CODE_MAX - IR_KEY_GAP_SIZE)
code const BYTE _pbIRKeyTbl[IR_KEY_TBL_SIZE] =
{
/* 0x00 */ IR_PAL_NTSC,
/* 0x01 */ IR_DOWN,
/* 0x02 */ IR_UP,
/* 0x03 */ IR_NONE,
/* 0x04 */ IR_POWER,
/* 0x05 */ IR_RIGHT,
/* 0x06 */ IR_REPEAT,
/* 0x07 */ IR_ZOOM_IN,
/* 0x08 */ IR_VOLUME_DOWN,
/* 0x09 */ IR_SET_A,
/* 0x0a */ IR_PROGRAM,
/* 0x0b */ IR_DISPLAY,
/* 0x0c */ IR_LEFT,
/* 0x0d */ IR_NUM8,
/* 0x0e */ IR_NONE,
/* 0x0f */ IR_RANDOM,
/* 0x10 */ IR_PREV,
/* 0x11 */ IR_AUDIO,
/* 0x12 */ IR_NUM5,
/* 0x13 */ IR_NUM6,
/* 0x14 */ IR_NUM7,
/* 0x15 */ IR_NUM3,
/* 0x16 */ IR_NUM4,
/* 0x17 */ IR_SUB_TITLE,
/* 0x18 */ IR_NUM2,
/* 0x19 */ IR_SETUP,
/* 0x1a */ IR_VOLUME_UP,
/* 0x1b */ IR_NUM9,
/* 0x1c */ IR_NUM1,
/* 0x1d */ IR_NONE,
/* 0x1e */ IR_SURROUND,
/* 0x1f */ IR_MARK,
#ifdef USE_TEMP_DIGEST_KEY
/* 0x40 */ IR_DIGEST,
#else
/* 0x40 */ IR_CLEAR,
#endif
/* 0x41 */ IR_NONE,
/* 0x42 */ IR_TITLE_MENU,
/* 0x43 */ IR_MENU_PBC,
/* 0x44 */ IR_SR,
/* 0x45 */ IR_VOCAL_ASSIST,
/* 0x46 */ IR_STOP,
/* 0x47 */ IR_NONE,
/* 0x48 */ IR_FF,
/* 0x49 */ IR_FR,
/* 0x4a */ IR_PAUSE_STEP,
/* 0x4b */ IR_EJECT,
/* 0x4c */ IR_MUTE,
/* 0x4d */ IR_NEXT,
/* 0x4e */ IR_PLAY_ENTER,
/* 0x4f */ IR_RETURN,
/* 0x50 */ IR_GOTO,
/* 0x51 */ IR_NONE,
/* 0x52 */ IR_NONE,
/* 0x53 */ IR_NONE,
/* 0x54 */ IR_NONE,
/* 0x55 */ IR_ADD10,
/* 0x56 */ IR_ANGLE,
/* 0x57 */ IR_NONE,
/* 0x58 */ IR_NONE,
/* 0x59 */ IR_NONE,
/* 0x5a */ IR_NONE,
/* 0x5b */ IR_NONE,
/* 0x5c */ IR_NONE,
/* 0x5d */ IR_SF,
/* 0x5e */ IR_NUM0,
/* 0x5f */ IR_PLAY_RESUME
};
#elif (MTK_REMOTE == 4)
#define IR_CUSTOM_CODE (_pbIRSysCode[0])
#define IR_CUSTOM_SUB_CODE (_pbIRSysCode[1])
code const BYTE _pbIRSysCode[2] = { 0x04, 0xfb }; /* note bit reversed */
#define IR_KEY_CODE_MAX 0x60
#define IR_KEY_GAP_START 0x40
#define IR_KEY_GAP_SIZE 0x20
#define IR_KEY_TBL_SIZE (IR_KEY_CODE_MAX - IR_KEY_GAP_SIZE)
code const BYTE _pbIRKeyTbl[IR_KEY_TBL_SIZE] =
{
/* 0x00 */ IR_NONE,
/* 0x01 */ IR_NUM6,
/* 0x02 */ IR_NUM5,
/* 0x03 */ IR_NUM8,
/* 0x04 */ IR_NUM3,
/* 0x05 */ IR_SHIFT,
/* 0x06 */ IR_NUM2,
/* 0x07 */ IR_EJECT,
/* 0x08 */ IR_PAUSE_STEP,
/* 0x09 */ IR_ROOT_MENU,
/* 0x0a */ IR_PREV,
/* 0x0b */ IR_ADD10,
/* 0x0c */ IR_STOP,
/* 0x0d */ IR_SUB_TITLE,
/* 0x0e */ IR_PLAY_ENTER,
/* 0x0f */ IR_FR,
/* 0x10 */ IR_NUM9,
/* 0x11 */ IR_PROGRAM,
/* 0x12 */ IR_NONE,
/* 0x13 */ IR_NEXT,
/* 0x14 */ IR_NONE,
/* 0x15 */ IR_NONE,
/* 0x16 */ IR_NONE,
/* 0x17 */ IR_NONE,
/* 0x18 */ IR_NONE,
/* 0x19 */ IR_NONE,
/* 0x1a */ IR_NONE,
/* 0x1b */ IR_NONE,
/* 0x1c */ IR_NONE,
/* 0x1d */ IR_NONE,
/* 0x1e */ IR_NONE,
/* 0x1f */ IR_NONE,
/* 0x40 */ IR_NUM4,
/* 0x41 */ IR_NUM7,
/* 0x42 */ IR_REPEAT,
/* 0x43 */ IR_SETUP,
/* 0x44 */ IR_ANGLE,
/* 0x45 */ IR_NUM1,
/* 0x46 */ IR_MUTE,
/* 0x47 */ IR_POWER,
/* 0x48 */ IR_TITLE_MENU,
/* 0x49 */ IR_NUM0,
/* 0x4a */ IR_SF,
/* 0x4b */ IR_ZOOM_IN,
/* 0x4c */ IR_FF,
/* 0x4d */ IR_NONE,
/* 0x4e */ IR_RANDOM,
/* 0x4f */ IR_GOTO,
/* 0x50 */ IR_DISPLAY,
/* 0x51 */ IR_AUDIO,
/* 0x52 */ IR_VOLUME_UP,
/* 0x53 */ IR_VOLUME_DOWN,
/* 0x54 */ IR_NONE,
/* 0x55 */ IR_NONE,
/* 0x56 */ IR_NONE,
/* 0x57 */ IR_NONE,
/* 0x58 */ IR_NONE,
/* 0x59 */ IR_NONE,
/* 0x5a */ IR_NONE,
/* 0x5b */ IR_NONE,
/* 0x5c */ IR_NONE,
/* 0x5d */ IR_NONE,
/* 0x5e */ IR_NONE,
/* 0x5f */ IR_NONE
};
#define IR_SHIFT_KEY_MAX IR_ADD10
code const BYTE _pbShiftIRKeyTbl[IR_SHIFT_KEY_MAX + 1] =
{
/* 0x00 IR_NUM0 */ IR_NONE,
/* 0x01 IR_NUM1 */ IR_NONE,
/* 0x02 IR_NUM2 */ IR_UP,
/* 0x03 IR_NUM3 */ IR_NONE,
/* 0x04 IR_NUM4 */ IR_LEFT,
/* 0x05 IR_NUM5 */ IR_ENTER,
/* 0x06 IR_NUM6 */ IR_RIGHT,
/* 0x07 IR_NUM7 */ IR_NONE,
/* 0x08 IR_NUM8 */ IR_DOWN,
/* 0x09 IR_NUM9 */ IR_NONE,
/* 0x0a IR_ADD10 */ IR_NONE
};
#elif (MTK_REMOTE == 5)
#define IR_CUSTOM_CODE (_pbIRSysCode[0])
#define IR_CUSTOM_SUB_CODE (_pbIRSysCode[1])
code const BYTE _pbIRSysCode[2] = { 0x00, 0x99 };
#define IR_KEY_CODE_MAX 0x60
#define IR_KEY_GAP_START 0x40
#define IR_KEY_GAP_SIZE 0x20
#define IR_KEY_TBL_SIZE (IR_KEY_CODE_MAX - IR_KEY_GAP_SIZE)
code const BYTE _pbIRKeyTbl[IR_KEY_TBL_SIZE] =
{
/* 0x00 */ IR_PLAY_MODE,
/* 0x01 */ IR_REPEAT,
/* 0x02 */ IR_RESUME,
/* 0x03 */ IR_REMAIN,
/* 0x04 */ IR_SET_A,
/* 0x05 */ IR_GOTO,
/* 0x06 */ IR_MUTE,
/* 0x07 */ IR_TITLE_MENU,
/* 0x08 */ IR_NONE,
/* 0x09 */ IR_NUM1,
/* 0x0a */ IR_RETURN,
/* 0x0b */ IR_DIGEST,
/* 0x0c */ IR_ROOT_MENU,
/* 0x0d */ IR_NUM4,
/* 0x0e */ IR_FR,
/* 0x0f */ IR_STOP,
/* 0x10 */ IR_EJECT,
/* 0x11 */ IR_NUM7,
/* 0x12 */ IR_NUM0,
/* 0x13 */ IR_PAUSE_STEP,
/* 0x14 */ IR_PLAY_ENTER,
/* 0x15 */ IR_NUM8,
/* 0x16 */ IR_ADD10,
/* 0x17 */ IR_NUM9,
/* 0x18 */ IR_VOCAL_ASSIST,
/* 0x19 */ IR_NUM5,
/* 0x1a */ IR_FF,
/* 0x1b */ IR_NUM6,
/* 0x1c */ IR_POWER,
/* 0x1d */ IR_NUM2,
/* 0x1e */ IR_PREV,
/* 0x1f */ IR_NUM3,
/* 0x40 */ IR_PAL_NTSC,
/* 0x41 */ IR_NONE,
/* 0x42 */ IR_VFD_DARK,
/* 0x43 */ IR_NONE,
/* 0x44 */ IR_NONE,
/* 0x45 */ IR_NONE,
/* 0x46 */ IR_NONE,
/* 0x47 */ IR_VOLUME_DOWN,
/* 0x48 */ IR_VOLUME_UP,
/* 0x49 */ IR_NONE,
/* 0x4a */ IR_NONE,
/* 0x4b */ IR_NONE,
/* 0x4c */ IR_NONE,
/* 0x4d */ IR_SETUP,
/* 0x4e */ IR_DISPLAY,
/* 0x4f */ IR_NONE,
/* 0x50 */ IR_NONE,
/* 0x51 */ IR_NONE,
/* 0x52 */ IR_NONE,
/* 0x53 */ IR_AUDIO,
/* 0x54 */ IR_ANGLE,
/* 0x55 */ IR_ZOOM_IN,
/* 0x56 */ IR_SUB_TITLE,
/* 0x57 */ IR_SF,
/* 0x58 */ IR_AUD_KEY_PLUS,
/* 0x59 */ IR_AUD_KEY_MINUS,
/* 0x5a */ IR_NONE,
/* 0x5b */ IR_NEXT,
/* 0x5c */ IR_UP,
/* 0x5d */ IR_DOWN,
/* 0x5e */ IR_LEFT,
/* 0x5f */ IR_RIGHT
};
#elif (MTK_REMOTE == 6)
#define IR_CUSTOM_CODE (_pbIRSysCode[0])
#define IR_CUSTOM_SUB_CODE (_pbIRSysCode[1])
code const BYTE _pbIRSysCode[2] = { 0x04, 0xfb };
#define IR_KEY_CODE_MAX 0x60
#define IR_KEY_GAP_START 0x40
#define IR_KEY_GAP_SIZE 0x20
#define IR_KEY_TBL_SIZE (IR_KEY_CODE_MAX - IR_KEY_GAP_SIZE)
code const BYTE _pbIRKeyTbl[IR_KEY_TBL_SIZE] =
{
/* 0x00 */ IR_ROOT_MENU,
/* 0x01 */ IR_VOCAL_ASSIST,
/* 0x02 */ IR_REPEAT,
/* 0x03 */ IR_CLEAR,
/* 0x04 */ IR_GOTO,
/* 0x05 */ IR_RESUME,
#ifdef PLAYER_VRMT
/* 0x06 */ IR_VRMT,
#else
/* 0x06 */ IR_STEPF,
#endif
/* 0x07 */ IR_PAUSE,
/* 0x08 */ IR_VOLUME_UP,
/* 0x09 */ IR_RANDOM,
/* 0x0a */ IR_VOLUME_DOWN,
/* 0x0b */ IR_AUDIO,
/* 0x0c */ IR_POWER,
/* 0x0d */ IR_EJECT,
/* 0x0e */ IR_NUM2,
/* 0x0f */ IR_NUM3,
/* 0x10 */ IR_FR,
/* 0x11 */ IR_NUM1,
/* 0x12 */ IR_NUM5,
/* 0x13 */ IR_NUM6,
/* 0x14 */ IR_FF,
/* 0x15 */ IR_NUM4,
/* 0x16 */ IR_NUM8,
/* 0x17 */ IR_NUM9,
/* 0x18 */ IR_PREV,
/* 0x19 */ IR_NUM7,
/* 0x1a */ IR_NUM0,
/* 0x1b */ IR_SETUP,
/* 0x1c */ IR_NEXT,
/* 0x1d */ IR_PLAY_ENTER,
/* 0x1e */ IR_NONE,
/* 0x1f */ IR_STOP,
/* 0x40 */ IR_NONE,
/* 0x41 */ IR_TITLE_MENU,
/* 0x42 */ IR_NONE,
/* 0x43 */ IR_NONE,
/* 0x44 */ IR_NONE,
/* 0x45 */ IR_NONE,
/* 0x46 */ IR_NONE,
/* 0x47 */ IR_NONE,
/* 0x48 */ IR_NONE,
/* 0x49 */ IR_NONE,
/* 0x4a */ IR_SF,
/* 0x4b */ IR_NONE,
/* 0x4c */ IR_PAL_NTSC,
/* 0x4d */ IR_MUTE,
/* 0x4e */ IR_DISPLAY,
/* 0x4f */ IR_NONE,
/* 0x50 */ IR_ANGLE,
/* 0x51 */ IR_SUB_TITLE,
/* 0x52 */ IR_PBC,
/* 0x53 */ IR_NONE,
/* 0x54 */ IR_UP,
/* 0x55 */ IR_ADD10,
/* 0x56 */ IR_PROGRAM,
/* 0x57 */ IR_NONE,
/* 0x58 */ IR_SET_A,
/* 0x59 */ IR_LEFT,
/* 0x5a */ IR_ZOOM_IN,
/* 0x5b */ IR_NONE,
/* 0x5c */ IR_RIGHT,
/* 0x5d */ IR_DOWN,
/* 0x5e */ IR_NONE,
/* 0x5f */ IR_NONE
};
#elif (MTK_REMOTE == 7)
#define IR_CUSTOM_CODE (_pbIRSysCode[0])
#define IR_CUSTOM_SUB_CODE (_pbIRSysCode[1])
code const BYTE _pbIRSysCode[2] = { 0x10, 0xed }; /* note bit reversed */
#define IR_KEY_CODE_MAX 0x60
#define IR_KEY_GAP_START 0x40
#define IR_KEY_GAP_SIZE 0x20
#define IR_KEY_TBL_SIZE (IR_KEY_CODE_MAX - IR_KEY_GAP_SIZE)
code const BYTE _pbIRKeyTbl[IR_KEY_TBL_SIZE] =
{
/* 0x00 */ IR_VOLUME_UP,
/* 0x01 */ IR_MUTE,
/* 0x02 */ IR_REPEAT,
/* 0x03 */ IR_SET_A,
/* 0x04 */ IR_VOLUME_DOWN,
/* 0x05 */ IR_FF,
/* 0x06 */ IR_AUDIO,
/* 0x07 */ IR_PREV,
/* 0x08 */ IR_RIGHT,
/* 0x09 */ IR_STOP,
/* 0x0a */ IR_PAUSE_STEP,
/* 0x0b */ IR_LEFT,
/* 0x0c */ IR_NONE,
/* 0x0d */ IR_NONE,
/* 0x0e */ IR_NONE,
/* 0x0f */ IR_NONE,
/* 0x10 */ IR_SURROUND,
/* 0x11 */ IR_VOCAL_ASSIST,
/* 0x12 */ IR_AUD_KEY_MINUS,
/* 0x13 */ IR_ZOOM_IN,
/* 0x14 */ IR_NONE,
/* 0x15 */ IR_NONE,
/* 0x16 */ IR_NONE,
/* 0x17 */ IR_NONE,
/* 0x18 */ IR_NUM0,
/* 0x19 */ IR_CLEAR,
/* 0x1a */ IR_NUM5,
/* 0x1b */ IR_NUM7,
/* 0x1c */ IR_EJECT,
/* 0x1d */ IR_PROGRAM,
/* 0x1e */ IR_NUM2,
/* 0x1f */ IR_POWER,
/* 0x40 */ IR_PBC,
/* 0x41 */ IR_ROOT_MENU,
/* 0x42 */ IR_TITLE_MENU,
/* 0x43 */ IR_GOTO,
/* 0x44 */ IR_SUB_TITLE,
/* 0x45 */ IR_NEXT,
/* 0x46 */ IR_ANGLE,
/* 0x47 */ IR_FR,
/* 0x48 */ IR_SF,
/* 0x49 */ IR_PLAY_ENTER,
/* 0x4a */ IR_UP,
/* 0x4b */ IR_DOWN,
/* 0x4c */ IR_NONE,
/* 0x4d */ IR_NONE,
/* 0x4e */ IR_NONE,
/* 0x4f */ IR_NONE,
/* 0x50 */ IR_DISPLAY,
/* 0x51 */ IR_AUD_KEY_PLUS,
/* 0x52 */ IR_ECHO_MINUS,
/* 0x53 */ IR_ECHO_PLUS,
/* 0x54 */ IR_NONE,
/* 0x55 */ IR_NONE,
/* 0x56 */ IR_NONE,
/* 0x57 */ IR_NONE,
/* 0x58 */ IR_NUM4,
/* 0x59 */ IR_NUM8,
/* 0x5a */ IR_NUM9,
/* 0x5b */ IR_NUM6,
/* 0x5c */ IR_NUM1,
/* 0x5d */ IR_PAL_NTSC,
/* 0x5e */ IR_NUM3,
/* 0x5f */ IR_SETUP
};
#elif (MTK_REMOTE == 8)
#define IR_CUSTOM_CODE (_pbIRSysCode[0])
#define IR_CUSTOM_SUB_CODE (_pbIRSysCode[1])
code const BYTE _pbIRSysCode[2] = { 0x00, 0xff }; /* note bit reversed */
#define IR_KEY_CODE_MAX 0x60
#define IR_KEY_GAP_START 0x40
#define IR_KEY_GAP_SIZE 0x20
#define IR_KEY_TBL_SIZE (IR_KEY_CODE_MAX - IR_KEY_GAP_SIZE)
code const BYTE _pbIRKeyTbl[IR_KEY_TBL_SIZE] =
{
/* 0x00 */ IR_TITLE_MENU,
/* 0x01 */ IR_LEFT,
/* 0x02 */ IR_VOCAL_ASSIST,
/* 0x03 */ IR_SET_A,
/* 0x04 */ IR_SURROUND,
/* 0x05 */ IR_MUTE,
/* 0x06 */ IR_SUB_TITLE,
/* 0x07 */ IR_NUM7,
/* 0x08 */ IR_ANGLE,
/* 0x09 */ IR_NUM4,
/* 0x0a */ IR_AUDIO,
/* 0x0b */ IR_NUM1,
/* 0x0c */ IR_PAL_NTSC,
/* 0x0d */ IR_SETUP,
/* 0x0e */ IR_NONE,
/* 0x0f */ IR_NONE,
/* 0x10 */ IR_UP,
/* 0x11 */ IR_ROOT_MENU,
/* 0x12 */ IR_REPEAT,
/* 0x13 */ IR_GOTO,
/* 0x14 */ IR_NUM0,
/* 0x15 */ IR_ADD10,
/* 0x16 */ IR_NUM8,
/* 0x17 */ IR_NUM9,
/* 0x18 */ IR_NUM5,
/* 0x19 */ IR_NUM6,
/* 0x1a */ IR_NUM2,
/* 0x1b */ IR_NUM3,
/* 0x1c */ IR_ZOOM_IN,
/* 0x1d */ IR_PBC,
/* 0x1e */ IR_NONE,
/* 0x1f */ IR_PROGRAM,
/* 0x40 */ IR_PLAY_ENTER,
/* 0x41 */ IR_RIGHT,
/* 0x42 */ IR_PAUSE_STEP,
/* 0x43 */ IR_SF,
/* 0x44 */ IR_FR,
/* 0x45 */ IR_VOLUME_DOWN,
/* 0x46 */ IR_DOWN,
/* 0x47 */ IR_VOLUME_UP,
/* 0x48 */ IR_STOP,
/* 0x49 */ IR_DISPLAY,
/* 0x4a */ IR_FF,
/* 0x4b */ IR_NEXT,
/* 0x4c */ IR_NONE,
/* 0x4d */ IR_PREV,
/* 0x4e */ IR_EJECT,
/* 0x4f */ IR_POWER,
/* 0x50 */ IR_NONE,
/* 0x51 */ IR_NONE,
/* 0x52 */ IR_NONE,
/* 0x53 */ IR_NONE,
/* 0x54 */ IR_NONE,
/* 0x55 */ IR_NONE,
/* 0x56 */ IR_NONE,
/* 0x57 */ IR_NONE,
/* 0x58 */ IR_NONE,
/* 0x59 */ IR_NONE,
/* 0x5a */ IR_NONE,
/* 0x5b */ IR_NONE,
/* 0x5c */ IR_NONE,
/* 0x5d */ IR_NONE,
/* 0x5e */ IR_NONE,
/* 0x5f */ IR_NONE
};
#elif (MTK_REMOTE == 9)
#define IR_CUSTOM_CODE (_pbIRSysCode[0])
#define IR_CUSTOM_SUB_CODE (_pbIRSysCode[1])
code const BYTE _pbIRSysCode[2] = { 0x72, 0xcd };
#define IR_KEY_CODE_MAX 0x60
#define IR_KEY_GAP_START 0x40
#define IR_KEY_GAP_SIZE 0x20
#define IR_KEY_TBL_SIZE (IR_KEY_CODE_MAX - IR_KEY_GAP_SIZE)
code const BYTE _pbIRKeyTbl[IR_KEY_TBL_SIZE] =
{
/* 0x00 */ IR_NONE,
/* 0x01 */ IR_NONE,
/* 0x02 */ IR_MENU_PBC,
/* 0x03 */ IR_REPEAT,
/* 0x04 */ IR_SET_A,
/* 0x05 */ IR_SURROUND,
/* 0x06 */ IR_PLAY,
/* 0x07 */ IR_MUTE,
/* 0x08 */ IR_NUM8,
/* 0x09 */ IR_NUM9,
/* 0x0a */ IR_RETURN,
/* 0x0b */ IR_NUM7,
/* 0x0c */ IR_NUM5,
/* 0x0d */ IR_NUM6,
/* 0x0e */ IR_POWER,
/* 0x0f */ IR_NUM4,
/* 0x10 */ IR_NUM2,
/* 0x11 */ IR_NUM3,
/* 0x12 */ IR_GOTO,
/* 0x13 */ IR_NUM1,
/* 0x14 */ IR_NONE,
/* 0x15 */ IR_PROGRAM,
/* 0x16 */ IR_AUDIO,
/* 0x17 */ IR_ZOOM_IN,
/* 0x18 */ IR_PREV,
/* 0x19 */ IR_NEXT,
/* 0x1a */ IR_EJECT,
/* 0x1b */ IR_SF,
/* 0x1c */ IR_LEFT,
/* 0x1d */ IR_DOWN,
/* 0x1e */ IR_STOP,
/* 0x1f */ IR_FR,
/* 0x40 */ IR_TITLE_MENU,
/* 0x41 */ IR_SETUP,
/* 0x42 */ IR_NONE,
/* 0x43 */ IR_NONE,
/* 0x44 */ IR_UP,
/* 0x45 */ IR_INTRO,
/* 0x46 */ IR_NONE,
/* 0x47 */ IR_NONE,
/* 0x48 */ IR_RIGHT,
/* 0x49 */ IR_NUM0,
/* 0x4a */ IR_NONE,
/* 0x4b */ IR_NONE,
/* 0x4c */ IR_NONE,
/* 0x4d */ IR_ADD10,
/* 0x4e */ IR_NONE,
/* 0x4f */ IR_NONE,
/* 0x50 */ IR_DISPLAY,
/* 0x51 */ IR_CLEAR,
/* 0x52 */ IR_NONE,
/* 0x53 */ IR_NONE,
/* 0x54 */ IR_ANGLE,
/* 0x55 */ IR_MARK,
/* 0x56 */ IR_NONE,
/* 0x57 */ IR_NONE,
/* 0x58 */ IR_SUB_TITLE,
/* 0x59 */ IR_PAUSE,
/* 0x5a */ IR_NONE,
/* 0x5b */ IR_NONE,
/* 0x5c */ IR_ENTER,
/* 0x5d */ IR_FF,
/* 0x5e */ IR_NONE,
/* 0x5f */ IR_NONE,
};
#elif (MTK_REMOTE == 10)
#define IR_CUSTOM_CODE (_pbIRSysCode[0])
#define IR_CUSTOM_SUB_CODE (_pbIRSysCode[1])
code const BYTE _pbIRSysCode[2] = { 0x00, 0xff };
#define IR_KEY_CODE_MAX 0x60
#define IR_KEY_GAP_START 0x40
#define IR_KEY_GAP_SIZE 0x20
#define IR_KEY_TBL_SIZE (IR_KEY_CODE_MAX - IR_KEY_GAP_SIZE)
code const BYTE _pbIRKeyTbl[IR_KEY_TBL_SIZE] =
{
/* 0x00 */ IR_POWER,
/* 0x01 */ IR_REPEAT,
/* 0x02 */ IR_NONE,
/* 0x03 */ IR_CLEAR,
/* 0x04 */ IR_NONE,
/* 0x05 */ IR_SETUP,
/* 0x06 */ IR_ENTER,
/* 0x07 */ IR_UP,
/* 0x08 */ IR_NONE,
/* 0x09 */ IR_MARK,
/* 0x0a */ IR_RIGHT,
/* 0x0b */ IR_DOWN,
/* 0x0c */ IR_EJECT,
/* 0x0d */ IR_MUTE,
/* 0x0e */ IR_LEFT,
/* 0x0f */ IR_TITLE_PBC,
/* 0x10 */ IR_NEXT,
/* 0x11 */ IR_NONE,
/* 0x12 */ IR_NONE,
/* 0x13 */ IR_PROGRAM,
/* 0x14 */ IR_PREV,
/* 0x15 */ IR_NONE,
/* 0x16 */ IR_NONE,
/* 0x17 */ IR_NONE,
/* 0x18 */ IR_FF,
/* 0x19 */ IR_NONE,
/* 0x1a */ IR_NONE,
/* 0x1b */ IR_NONE,
/* 0x1c */ IR_FR,
/* 0x1d */ IR_NONE,
/* 0x1e */ IR_NONE,
/* 0x1f */ IR_ZOOM_IN,
/* 0x40 */ IR_NUM0,
/* 0x41 */ IR_NUM9,
/* 0x42 */ IR_NUM6,
/* 0x43 */ IR_NUM3,
/* 0x44 */ IR_ADD10,
/* 0x45 */ IR_NUM8,
/* 0x46 */ IR_NUM5,
/* 0x47 */ IR_NUM2,
/* 0x48 */ IR_SURROUND,
/* 0x49 */ IR_NUM7,
/* 0x4a */ IR_NUM4,
/* 0x4b */ IR_NUM1,
/* 0x4c */ IR_ROOT_MENU,
/* 0x4d */ IR_AUDIO,
/* 0x4e */ IR_SUB_TITLE,
/* 0x4f */ IR_ANGLE,
/* 0x50 */ IR_VOLUME_UP,
/* 0x51 */ IR_RANDOM,
/* 0x52 */ IR_VOCAL_ASSIST,
/* 0x53 */ IR_PLAY_PAUSE,
/* 0x54 */ IR_VOLUME_DOWN,
/* 0x55 */ IR_PAL_NTSC,
/* 0x56 */ IR_GOTO,
/* 0x57 */ IR_STOP,
/* 0x58 */ IR_SF,
/* 0x59 */ IR_AUD_KEY_PLUS,
/* 0x5a */ IR_DISPLAY,
/* 0x5b */ IR_RETURN,
/* 0x5c */ IR_SR,
/* 0x5d */ IR_AUD_KEY_MINUS,
/* 0x5e */ IR_SET_A,
/* 0x5f */ IR_STEPF,
};
#elif (MTK_REMOTE == 11)
#define IR_CUSTOM_CODE (_pbIRSysCode[0])
#define IR_CUSTOM_SUB_CODE (_pbIRSysCode[1])
code const BYTE _pbIRSysCode[2] = { 0x49, 0xb6 };
#define IR_KEY_CODE_MAX 0x60
#define IR_KEY_GAP_START 0x40
#define IR_KEY_GAP_SIZE 0x20
#define IR_KEY_TBL_SIZE (IR_KEY_CODE_MAX - IR_KEY_GAP_SIZE)
code const BYTE _pbIRKeyTbl[IR_KEY_TBL_SIZE] = {
/* 0x00 */ IR_ZOOM_IN,
/* 0x01 */ IR_PAUSE_STEP,
/* 0x02 */ IR_NEXT,
/* 0x03 */ IR_NUM7,
/* 0x04 */ IR_SF,
/* 0x05 */ IR_PLAY_ENTER,
/* 0x06 */ IR_MENU_PBC,
/* 0x07 */ IR_EJECT,
/* 0x08 */ IR_PAL_NTSC,
/* 0x09 */ IR_FR,
/* 0x0a */ IR_VOLUME_DOWN,
/* 0x0b */ IR_LEFT,
/* 0x0c */ IR_NONE,
/* 0x0d */ IR_FF,
/* 0x0e */ IR_EQUALIZER,
/* 0x0f */ IR_RETURN,
/* 0x10 */ IR_PROGRAM,
/* 0x11 */ IR_PREV,
/* 0x12 */ IR_SETUP,
/* 0x13 */ IR_UP,
/* 0x14 */ IR_NONE,
/* 0x15 */ IR_STOP,
/* 0x16 */ IR_NUM2,
/* 0x17 */ IR_ENTER,
/* 0x18 */ IR_REPEAT,
/* 0x19 */ IR_A2B,
/* 0x1a */ IR_NONE,
/* 0x1b */ IR_NONE,
/* 0x1c */ IR_NONE,
/* 0x1d */ IR_NONE,
/* 0x1e */ IR_NONE,
/* 0x1f */ IR_NONE,
/* 0x40 */ IR_DOWN,
/* 0x41 */ IR_ADD10,
/* 0x42 */ IR_NUM4,
/* 0x43 */ IR_NUM1,
/* 0x44 */ IR_RIGHT,
/* 0x45 */ IR_OSD_LANGUAGE,
/* 0x46 */ IR_SUB_TITLE,
/* 0x47 */ IR_DISPLAY,
/* 0x48 */ IR_AUD_KEY_PLUS,
/* 0x49 */ IR_AUD_KEY_MINUS,
/* 0x4a */ IR_CLEAR,
/* 0x4b */ IR_VOLUME_UP,
/* 0x4c */ IR_NUM0,
/* 0x4d */ IR_NUM8,
/* 0x4e */ IR_NUM9,
/* 0x4f */ IR_CLEAR,
/* 0x50 */ IR_TITLE_MENU,
/* 0x51 */ IR_AUDIO,
/* 0x52 */ IR_ANGLE,
/* 0x53 */ IR_GOTO,
/* 0x54 */ IR_NUM5,
/* 0x55 */ IR_NUM6,
/* 0x56 */ IR_NUM3,
/* 0x57 */ IR_MUTE,
/* 0x58 */ IR_NONE,
/* 0x59 */ IR_NONE,
/* 0x5a */ IR_NONE,
/* 0x5b */ IR_NONE,
/* 0x5c */ IR_NONE,
/* 0x5d */ IR_NONE,
/* 0x5e */ IR_NONE,
/* 0x5f */ IR_NONE,
};
#elif (MTK_REMOTE == 12)
#define IR_CUSTOM_CODE (_pbIRSysCode[0])
#define IR_CUSTOM_SUB_CODE (_pbIRSysCode[1])
code const BYTE _pbIRSysCode[2] = { 0x00, 0xff };
#define IR_KEY_CODE_MAX 0x60
#define IR_KEY_GAP_START 0x40
#define IR_KEY_GAP_SIZE 0x20
#define IR_KEY_TBL_SIZE (IR_KEY_CODE_MAX - IR_KEY_GAP_SIZE)
code const BYTE _pbIRKeyTbl[IR_KEY_TBL_SIZE] =
{
/* 0x00 */ IR_POWER,
/* 0x01 */ IR_ROOT_MENU,
/* 0x02 */ IR_NONE,
/* 0x03 */ IR_SETUP,
/* 0x04 */ IR_NONE,
/* 0x05 */ IR_TITLE_MENU,
/* 0x06 */ IR_PLAY_ENTER,
/* 0x07 */ IR_UP,
/* 0x08 */ IR_TV_MODE,
/* 0x09 */ IR_PBC,
/* 0x0a */ IR_RIGHT,
/* 0x0b */ IR_DOWN,
/* 0x0c */ IR_EJECT,
/* 0x0d */ IR_DISPLAY,
/* 0x0e */ IR_LEFT,
/* 0x0f */ IR_RETURN,
/* 0x10 */ IR_NONE,
/* 0x11 */ IR_NONE,
/* 0x12 */ IR_NONE,
/* 0x13 */ IR_STOP,
/* 0x14 */ IR_NONE,
/* 0x15 */ IR_NONE,
/* 0x16 */ IR_NONE,
/* 0x17 */ IR_NONE,
/* 0x18 */ IR_NONE,
/* 0x19 */ IR_NONE,
/* 0x1a */ IR_NONE,
/* 0x1b */ IR_NONE,
/* 0x1c */ IR_NONE,
/* 0x1d */ IR_NONE,
/* 0x1e */ IR_NONE,
/* 0x1f */ IR_PAUSE,
/* 0x40 */ IR_ADD10,
/* 0x41 */ IR_NUM9,
/* 0x42 */ IR_NUM6,
/* 0x43 */ IR_NUM3,
/* 0x44 */ IR_NUM0,
/* 0x45 */ IR_NUM8,
/* 0x46 */ IR_NUM5,
/* 0x47 */ IR_NUM2,
/* 0x48 */ IR_ROOT_MENU,
/* 0x49 */ IR_NUM7,
/* 0x4a */ IR_NUM4,
/* 0x4b */ IR_NUM1,
/* 0x4c */ IR_PROGRAM,
/* 0x4d */ IR_SET_A,
/* 0x4e */ IR_REPEAT,
/* 0x4f */ IR_GOTO,
/* 0x50 */ IR_FF,
/* 0x51 */ IR_NEXT,
/* 0x52 */ IR_VOLUME_DOWN,
/* 0x53 */ IR_MUTE,
/* 0x54 */ IR_FR,
/* 0x55 */ IR_PREV,
/* 0x56 */ IR_VOLUME_UP,
/* 0x57 */ IR_VOCAL_ASSIST,
/* 0x58 */ IR_AUDIO,
/* 0x59 */ IR_ZOOM_IN,
/* 0x5a */ IR_PAL_NTSC,
/* 0x5b */ IR_SF,
/* 0x5c */ IR_SR,
/* 0x5d */ IR_STEPF,
/* 0x5e */ IR_SUB_TITLE,
/* 0x5f */ IR_ANGLE,
};
#elif (MTK_REMOTE == 13)
#define IR_CUSTOM_CODE (_pbIRSysCode[0])
#define IR_CUSTOM_SUB_CODE (_pbIRSysCode[1])
code const BYTE _pbIRSysCode[2] = { 0x01, 0xfe };
#define IR_KEY_CODE_MAX 0x60
#define IR_KEY_GAP_START 0x40
#define IR_KEY_GAP_SIZE 0x20
#define IR_KEY_TBL_SIZE (IR_KEY_CODE_MAX - IR_KEY_GAP_SIZE)
code const BYTE _pbIRKeyTbl[IR_KEY_TBL_SIZE] =
{
/* 0x00 */ IR_EJECT,
/* 0x01 */ IR_DISPLAY,
/* 0x02 */ IR_SETUP,
/* 0x03 */ IR_POWER,
/* 0x04 */ IR_SUB_TITLE,
/* 0x05 */ IR_PROGRAM,
/* 0x06 */ IR_AUDIO,
/* 0x07 */ IR_ANGLE,
/* 0x08 */ IR_KARAOKE,
/* 0x09 */ IR_AUD_KEY_PLUS,
/* 0x0a */ IR_VOLUME_UP,
/* 0x0b */ IR_ZOOM_IN,
/* 0x0c */ IR_SHIFT,
/* 0x0d */ IR_AUD_KEY_MINUS,
/* 0x0e */ IR_VOLUME_DOWN,
/* 0x0f */ IR_MUTE,
/* 0x10 */ IR_PBC,
/* 0x11 */ IR_GOTO,
/* 0x12 */ IR_SURROUND,
/* 0x13 */ IR_VOCAL_ASSIST,
/* 0x14 */ IR_TITLE_MENU,
/* 0x15 */ IR_ROOT_MENU,
/* 0x16 */ IR_PREV,
/* 0x17 */ IR_NEXT,
/* 0x18 */ IR_UP,
/* 0x19 */ IR_LEFT,
/* 0x1a */ IR_RIGHT,
/* 0x1b */ IR_DOWN,
/* 0x1c */ IR_STOP,
/* 0x1d */ IR_PAUSE,
/* 0x1e */ IR_STEPF,
/* 0x1f */ IR_SF,
/* 0x40 */ IR_SET_A,
/* 0x41 */ IR_REPEAT,
/* 0x42 */ IR_FR,
/* 0x43 */ IR_FF,
/* 0x44 */ IR_NUM1,
/* 0x45 */ IR_NUM2,
/* 0x46 */ IR_NUM3,
/* 0x47 */ IR_NUM4,
/* 0x48 */ IR_NUM5,
/* 0x49 */ IR_NUM6,
/* 0x4a */ IR_NUM7,
/* 0x4b */ IR_NUM8,
/* 0x4c */ IR_NUM9,
/* 0x4d */ IR_NUM0,
/* 0x4e */ IR_ADD10,
/* 0x4f */ IR_PLAY_ENTER,
/* 0x50 */ IR_NONE,
/* 0x51 */ IR_NONE,
/* 0x52 */ IR_NONE,
/* 0x53 */ IR_NONE,
/* 0x54 */ IR_NONE,
/* 0x55 */ IR_NONE,
/* 0x56 */ IR_NONE,
/* 0x57 */ IR_NONE,
/* 0x58 */ IR_NONE,
/* 0x59 */ IR_NONE,
/* 0x5a */ IR_NONE,
/* 0x5b */ IR_NONE,
/* 0x5c */ IR_NONE,
/* 0x5d */ IR_NONE,
/* 0x5e */ IR_NONE,
/* 0x5f */ IR_NONE,
};
#define IR_SHIFT_KEY_MAX IR_AUD_KEY_MINUS
code const BYTE _pbShiftIRKeyTbl[IR_SHIFT_KEY_MAX + 1] =
{
IR_NUM0, /* 0x00 */
IR_NUM1, /* 0x01 */
IR_NUM2, /* 0x02 */
IR_NUM3, /* 0x03 */
IR_NUM4, /* 0x04 */
IR_NUM5, /* 0x05 */
IR_NUM6, /* 0x06 */
IR_NUM7, /* 0x07 */
IR_NUM8, /* 0x08 */
IR_NUM9, /* 0x09 */
IR_ADD10, /* 0x0a */
IR_ADD20, /* 0x0b */
IR_ADD5, /* 0x0c */
IR_UP, /* 0x0d */
IR_LEFT, /* 0x0e */
IR_RIGHT, /* 0x0f */
IR_DOWN, /* 0x10 */
IR_ENTER, /* 0x11 */
IR_PLAY, /* 0x12 */
IR_PAUSE, /* 0x13 */
IR_STOP, /* 0x14 */
IR_NEXT, /* 0x15 */
IR_PREV, /* 0x16 */
IR_REPEAT, /* 0x17 */
IR_RESUME, /* 0x18 */
IR_FF, /* 0x19 */
IR_FR, /* 0x1a */
IR_SF, /* 0x1b */
IR_SR, /* 0x1c */
IR_STEPF, /* 0x1d */
IR_STEPR, /* 0x1e */
IR_REVERSE, /* 0x1f */
IR_SET_A, /* 0x20 */
IR_SET_B, /* 0x21 */
IR_TITLE_MENU, /* 0x22 */
IR_ROOT_MENU, /* 0x23 */
IR_RETURN, /* 0x24 */
IR_NEXT_DLIST, /* 0x25 */
IR_PREV_DLIST, /* 0x26 */
IR_HOME_DLIST, /* 0x27 */
IR_AUDIO, /* 0x28 */
IR_SUB_TITLE, /* 0x29 */
IR_SUB_TITLE_OFF, /* 0x2a */
IR_ANGLE, /* 0x2b */
IR_DISPLAY, /* 0x2c */
IR_REMAIN, /* 0x2d */
IR_GOTO, /* 0x2e */
IR_MARK, /* 0x2f */
IR_CLEAR, /* 0x30 */
IR_PBC, /* 0x31 */
IR_DIGEST, /* 0x32 */
IR_PROGRAM, /* 0x33 */
IR_RANDOM, /* 0x34 */
IR_INTRO, /* 0x35 */
IR_PLAY_MODE, /* 0x36 */
IR_PAL_NTSC, /* 0x37 */
IR_TV_MODE, /* 0x38 */
IR_COMPONENT, /* 0x39 */
IR_ZOOM_IN, /* 0x3a */
IR_ZOOM_OUT, /* 0x3b */
IR_ZOOM_USER, /* 0x3c */
IR_ECHO_PLUS, /* 0x3d IR_AUD_KEY_PLUS */
IR_ECHO_MINUS /* 0x3e IR_AUD_KEY_MINUS */
};
#elif (MTK_REMOTE == 14)
#define IR_CUSTOM_CODE (_pbIRSysCode[0])
#define IR_CUSTOM_SUB_CODE (_pbIRSysCode[1])
code const BYTE _pbIRSysCode[2] = { 0x20, 0xdf };
#define IR_KEY_CODE_MAX 0x60
#define IR_KEY_GAP_START 0x40
#define IR_KEY_GAP_SIZE 0x20
#define IR_KEY_TBL_SIZE (IR_KEY_CODE_MAX - IR_KEY_GAP_SIZE)
code const BYTE _pbIRKeyTbl[IR_KEY_TBL_SIZE] =
{
/* 0x00 */ IR_NONE,
/* 0x01 */ IR_NONE,
/* 0x02 */ IR_SETUP,
/* 0x03 */ IR_NONE,
/* 0x04 */ IR_NONE,
/* 0x05 */ IR_NONE,
/* 0x06 */ IR_RESUME,
/* 0x07 */ IR_NONE,
/* 0x08 */ IR_NUM8,
/* 0x09 */ IR_NUM9,
/* 0x0a */ IR_ZOOM_IN,
/* 0x0b */ IR_NUM7,
/* 0x0c */ IR_NUM5,
/* 0x0d */ IR_NUM6,
/* 0x0e */ IR_POWER,
/* 0x0f */ IR_NUM4,
/* 0x10 */ IR_NUM2,
/* 0x11 */ IR_NUM3,
/* 0x12 */ IR_SUB_TITLE,
/* 0x13 */ IR_NUM1,
/* 0x14 */ IR_SET_A,
/* 0x15 */ IR_VOLUME_DOWN,
/* 0x16 */ IR_OSD_LANGUAGE,
/* 0x17 */ IR_REPEAT,
/* 0x18 */ IR_NEXT,
/* 0x19 */ IR_FR,
/* 0x1a */ IR_EJECT,
/* 0x1b */ IR_PREV,
/* 0x1c */ IR_LEFT,
/* 0x1d */ IR_DOWN,
/* 0x1e */ IR_PAUSE,
/* 0x1f */ IR_SF,
/* 0x40 */ IR_TITLE_MENU,
/* 0x41 */ IR_NONE,
/* 0x42 */ IR_ROOT_MENU,
/* 0x43 */ IR_PROGRAM,
/* 0x44 */ IR_UP,
/* 0x45 */ IR_NONE,
/* 0x46 */ IR_NONE,
/* 0x47 */ IR_VOCAL_ASSIST,
/* 0x48 */ IR_RIGHT,
/* 0x49 */ IR_NUM0,
/* 0x4a */ IR_NONE,
/* 0x4b */ IR_EQUALIZER,
/* 0x4c */ IR_PBC,
/* 0x4d */ IR_ADD10,
/* 0x4e */ IR_NONE,
/* 0x4f */ IR_SURROUND,
/* 0x50 */ IR_GOTO,
/* 0x51 */ IR_MUTE,
/* 0x52 */ IR_NONE,
/* 0x53 */ IR_NONE,
/* 0x54 */ IR_ANGLE,
/* 0x55 */ IR_VOLUME_UP,
/* 0x56 */ IR_NONE,
/* 0x57 */ IR_NONE,
/* 0x58 */ IR_DISPLAY,
/* 0x59 */ IR_FF,
/* 0x5a */ IR_NONE,
/* 0x5b */ IR_NONE,
/* 0x5c */ IR_PLAY_ENTER,
/* 0x5d */ IR_STOP,
/* 0x5e */ IR_NONE,
/* 0x5f */ IR_NONE,
};
#elif (MTK_REMOTE == 15)
#define IR_CUSTOM_CODE (_pbIRSysCode[0])
#define IR_CUSTOM_SUB_CODE (_pbIRSysCode[1])
code const BYTE _pbIRSysCode[2] = { 0x00, 0x99 };
#define IR_KEY_CODE_MAX 0x60
#define IR_KEY_GAP_START 0x40
#define IR_KEY_GAP_SIZE 0x20
#define IR_KEY_TBL_SIZE (IR_KEY_CODE_MAX - IR_KEY_GAP_SIZE)
code const BYTE _pbIRKeyTbl[IR_KEY_TBL_SIZE] =
{
/* 0x00 */ IR_NONE,
/* 0x01 */ IR_NONE,
/* 0x02 */ IR_NONE,
/* 0x03 */ IR_SUB_TITLE,
/* 0x04 */ IR_SF,
/* 0x05 */ IR_GOTO,
/* 0x06 */ IR_PAL_NTSC,
/* 0x07 */ IR_SETUP,
/* 0x08 */ IR_NUM9,
/* 0x09 */ IR_NUM6,
/* 0x0a */ IR_NUM3,
/* 0x0b */ IR_ROOT_MENU,
/* 0x0c */ IR_NUM8,
/* 0x0d */ IR_NUM5,
/* 0x0e */ IR_NUM2,
/* 0x0f */ IR_ADD10,
/* 0x10 */ IR_NUM7,
/* 0x11 */ IR_NUM4,
/* 0x12 */ IR_NUM1,
/* 0x13 */ IR_PBC,
/* 0x14 */ IR_NONE,
/* 0x15 */ IR_NONE,
/* 0x16 */ IR_NONE,
/* 0x17 */ IR_NUM0,
/* 0x18 */ IR_NONE,
/* 0x19 */ IR_NONE,
/* 0x1a */ IR_NONE,
/* 0x1b */ IR_NONE,
/* 0x1c */ IR_NONE,
/* 0x1d */ IR_NONE,
/* 0x1e */ IR_NONE,
/* 0x1f */ IR_CLEAR,
/* 0x40 */ IR_ANGLE,
/* 0x41 */ IR_SURROUND,
/* 0x42 */ IR_AUDIO,
/* 0x43 */ IR_NONE,
/* 0x44 */ IR_FF,
/* 0x45 */ IR_PAUSE_STEP,
/* 0x46 */ IR_RIGHT,
/* 0x47 */ IR_EJECT,
/* 0x48 */ IR_FR,
/* 0x49 */ IR_DOWN,
/* 0x4a */ IR_PLAY_ENTER,
/* 0x4b */ IR_UP,
/* 0x4c */ IR_SET_A,
/* 0x4d */ IR_RANDOM,
/* 0x4e */ IR_DISPLAY,
/* 0x4f */ IR_NEXT,
/* 0x50 */ IR_PREV,
/* 0x51 */ IR_STOP,
/* 0x52 */ IR_LEFT,
/* 0x53 */ IR_POWER,
/* 0x54 */ IR_RETURN,
/* 0x55 */ IR_PROGRAM,
/* 0x56 */ IR_VOLUME_DOWN,
/* 0x57 */ IR_AUD_KEY_MINUS,
/* 0x58 */ IR_NONE,
/* 0x59 */ IR_NONE,
/* 0x5a */ IR_VOLUME_UP,
/* 0x5b */ IR_AUD_KEY_PLUS,
/* 0x5c */ IR_REPEAT,
/* 0x5d */ IR_VOCAL_ASSIST,
/* 0x5e */ IR_ZOOM_IN,
/* 0x5f */ IR_NONE,
};
#elif (MTK_REMOTE == 16)
#define IR_CUSTOM_CODE (_pbIRSysCode[0])
#define IR_CUSTOM_SUB_CODE (_pbIRSysCode[1])
code const BYTE _pbIRSysCode[2] = { 0x49, 0xb6 };
#define IR_KEY_CODE_MAX 0x60
#define IR_KEY_GAP_START 0x40
#define IR_KEY_GAP_SIZE 0x20
#define IR_KEY_TBL_SIZE (IR_KEY_CODE_MAX - IR_KEY_GAP_SIZE)
code const BYTE _pbIRKeyTbl[IR_KEY_TBL_SIZE] =
{
/* 0x00 */ IR_AUD_KEY_PLUS,
/* 0x01 */ IR_VGA,
/* 0x02 */ IR_MUTE,
/* 0x03 */ IR_SETUP,
/* 0x04 */ IR_VOLUME_DOWN,
/* 0x05 */ IR_PSCAN,
/* 0x06 */ IR_GOTO,
/* 0x07 */ IR_NUM1,
/* 0x08 */ IR_FF,
/* 0x09 */ IR_STOP,
/* 0x0a */ IR_TITLE_MENU,
/* 0x0b */ IR_AUD_KEY_MINUS,
/* 0x0c */ IR_NONE,
/* 0x0d */ IR_PAUSE_STEP,
/* 0x0e */ IR_ANGLE,
/* 0x0f */ IR_FR,
/* 0x10 */ IR_VOLUME_UP,
/* 0x11 */ IR_COMPONENT,
/* 0x12 */ IR_LEFT,
/* 0x13 */ IR_PAL_NTSC,
/* 0x14 */ IR_NONE,
/* 0x15 */ IR_DOWN,
/* 0x16 */ IR_ZOOM_IN,
/* 0x17 */ IR_PLAY_ENTER,
/* 0x18 */ IR_NEXT,
/* 0x19 */ IR_PREV,
/* 0x1a */ IR_NONE,
/* 0x1b */ IR_NONE,
/* 0x1c */ IR_NONE,
/* 0x1d */ IR_NONE,
/* 0x1e */ IR_NONE,
/* 0x1f */ IR_NONE,
/* 0x40 */ IR_NUM4,
/* 0x41 */ IR_NUM2,
/* 0x42 */ IR_NUM8,
/* 0x43 */ IR_A2B,
/* 0x44 */ IR_POWER,
/* 0x45 */ IR_AUDIO,
/* 0x46 */ IR_SUB_TITLE,
/* 0x47 */ IR_EJECT,
/* 0x48 */ IR_NUM7,
/* 0x49 */ IR_NUM3,
/* 0x4a */ IR_MENU_PBC,
/* 0x4b */ IR_REPEAT,
/* 0x4c */ IR_ADD10,
/* 0x4d */ IR_NUM6,
/* 0x4e */ IR_RIGHT,
/* 0x4f */ IR_DISPLAY,
/* 0x50 */ IR_UP,
/* 0x51 */ IR_NUM9,
/* 0x52 */ IR_NUM0,
/* 0x53 */ IR_EQUALIZER,
/* 0x54 */ IR_PLAY_ENTER,
/* 0x55 */ IR_NUM5,
/* 0x56 */ IR_RETURN,
/* 0x57 */ IR_SF,
/* 0x58 */ IR_NONE,
/* 0x59 */ IR_NONE,
/* 0x5a */ IR_NONE,
/* 0x5b */ IR_NONE,
/* 0x5c */ IR_NONE,
/* 0x5d */ IR_NONE,
/* 0x5e */ IR_NONE,
/* 0x5f */ IR_NONE
};
#elif (MTK_REMOTE == 17)
#define IR_BIT_REVERSE
#define IR_CUSTOM_CODE (_pbIRSysCode[0])
#define IR_CUSTOM_SUB_CODE (_pbIRSysCode[1])
code const BYTE _pbIRSysCode[2] = { 0xb4, 0xb4 };
#define IR_KEY_CODE_MAX 0xff
#define IR_KEY_GAP_START 0x00
#define IR_KEY_GAP_SIZE 0x00
#define IR_KEY_TBL_SIZE (IR_KEY_CODE_MAX - IR_KEY_GAP_SIZE)
code const BYTE _pbIRKeyTbl[IR_KEY_TBL_SIZE] =
{
/* 0x00 */ IR_NONE,
/* 0x01 */ IR_NONE,
/* 0x02 */ IR_NUM6,
/* 0x03 */ IR_NONE,
/* 0x04 */ IR_NONE,
/* 0x05 */ IR_NONE,
/* 0x06 */ IR_SR,
/* 0x07 */ IR_NONE,
/* 0x08 */ IR_NONE,
/* 0x09 */ IR_NONE,
/* 0x0a */ IR_SUB_TITLE,
/* 0x0b */ IR_NONE,
/* 0x0c */ IR_POWER,
/* 0x0d */ IR_NONE,
/* 0x0e */ IR_NONE,
/* 0x0f */ IR_NONE,
/* 0x10 */ IR_NONE,
/* 0x11 */ IR_NONE,
/* 0x12 */ IR_DOWN,
/* 0x13 */ IR_NONE,
/* 0x14 */ IR_NONE,
/* 0x15 */ IR_NONE,
/* 0x16 */ IR_NONE,
/* 0x17 */ IR_NONE,
/* 0x18 */ IR_NONE,
/* 0x19 */ IR_NONE,
/* 0x1a */ IR_PLAY_ENTER,
/* 0x1b */ IR_NONE,
/* 0x1c */ IR_PAUSE,
/* 0x1d */ IR_NONE,
/* 0x1e */ IR_NONE,
/* 0x1f */ IR_NONE,
/* 0x20 */ IR_NONE,
/* 0x21 */ IR_NONE,
/* 0x22 */ IR_NUM0,
/* 0x23 */ IR_NONE,
/* 0x24 */ IR_NONE,
/* 0x25 */ IR_NONE,
/* 0x26 */ IR_ZOOM_IN,
/* 0x27 */ IR_NONE,
/* 0x28 */ IR_NONE,
/* 0x29 */ IR_NONE,
/* 0x2a */ IR_NONE,
/* 0x2b */ IR_NONE,
/* 0x2c */ IR_NEXT,
/* 0x2d */ IR_NONE,
/* 0x2e */ IR_NONE,
/* 0x2f */ IR_NONE,
/* 0x30 */ IR_NONE,
/* 0x31 */ IR_NONE,
/* 0x32 */ IR_ANGLE,
/* 0x33 */ IR_NONE,
/* 0x34 */ IR_NONE,
/* 0x35 */ IR_NONE,
/* 0x36 */ IR_NONE,
/* 0x37 */ IR_NONE,
/* 0x38 */ IR_NONE,
/* 0x39 */ IR_NONE,
/* 0x3a */ IR_NONE,
/* 0x3b */ IR_NONE,
/* 0x3c */ IR_NUM2,
/* 0x3d */ IR_NONE,
/* 0x3e */ IR_NONE,
/* 0x3f */ IR_NONE,
/* 0x40 */ IR_NONE,
/* 0x41 */ IR_NONE,
/* 0x42 */ IR_NUM8,
/* 0x43 */ IR_NONE,
/* 0x44 */ IR_NONE,
/* 0x45 */ IR_NONE,
/* 0x46 */ IR_GOTO,
/* 0x47 */ IR_NONE,
/* 0x48 */ IR_NONE,
/* 0x49 */ IR_NONE,
/* 0x4a */ IR_NONE,
/* 0x4b */ IR_NONE,
/* 0x4c */ IR_FR,
/* 0x4d */ IR_NONE,
/* 0x4e */ IR_NONE,
/* 0x4f */ IR_NONE,
/* 0x50 */ IR_NONE,
/* 0x51 */ IR_NONE,
/* 0x52 */ IR_TITLE_MENU,
/* 0x53 */ IR_NONE,
/* 0x54 */ IR_NONE,
/* 0x55 */ IR_NONE,
/* 0x56 */ IR_NONE,
/* 0x57 */ IR_NONE,
/* 0x58 */ IR_NONE,
/* 0x59 */ IR_NONE,
/* 0x5a */ IR_RIGHT,
/* 0x5b */ IR_NONE,
/* 0x5c */ IR_DISPLAY,
/* 0x5d */ IR_NONE,
/* 0x5e */ IR_NONE,
/* 0x5f */ IR_NONE,
/* 0x60 */ IR_NONE,
/* 0x61 */ IR_NONE,
/* 0x62 */ IR_CLEAR,
/* 0x63 */ IR_NONE,
/* 0x64 */ IR_NONE,
/* 0x65 */ IR_NONE,
/* 0x66 */ IR_NONE,
/* 0x67 */ IR_NONE,
/* 0x68 */ IR_NONE,
/* 0x69 */ IR_NONE,
/* 0x6a */ IR_SETUP,
/* 0x6b */ IR_NONE,
/* 0x6c */ IR_EJECT,
/* 0x6d */ IR_NONE,
/* 0x6e */ IR_NONE,
/* 0x6f */ IR_NONE,
/* 0x70 */ IR_NONE,
/* 0x71 */ IR_NONE,
/* 0x72 */ IR_ADD10,
/* 0x73 */ IR_NONE,
/* 0x74 */ IR_NONE,
/* 0x75 */ IR_NONE,
/* 0x76 */ IR_NONE,
/* 0x77 */ IR_NONE,
/* 0x78 */ IR_NONE,
/* 0x79 */ IR_NONE,
/* 0x7a */ IR_KARAOKE,
/* 0x7b */ IR_NONE,
/* 0x7c */ IR_NUM4,
/* 0x7d */ IR_NONE,
/* 0x7e */ IR_NONE,
/* 0x7f */ IR_NONE,
/* 0x80 */ IR_NONE,
/* 0x81 */ IR_NONE,
/* 0x82 */ IR_NUM7,
/* 0x83 */ IR_NONE,
/* 0x84 */ IR_NONE,
/* 0x85 */ IR_NONE,
/* 0x86 */ IR_MARK,
/* 0x87 */ IR_NONE,
/* 0x88 */ IR_NONE,
/* 0x89 */ IR_NONE,
/* 0x8a */ IR_RANDOM,
/* 0x8b */ IR_NONE,
/* 0x8c */ IR_PLAY_ENTER,
/* 0x8d */ IR_NONE,
/* 0x8e */ IR_NONE,
/* 0x8f */ IR_NONE,
/* 0x90 */ IR_NONE,
/* 0x91 */ IR_NONE,
/* 0x92 */ IR_NONE,
/* 0x93 */ IR_NONE,
/* 0x94 */ IR_NONE,
/* 0x95 */ IR_NONE,
/* 0x96 */ IR_NONE,
/* 0x97 */ IR_NONE,
/* 0x98 */ IR_NONE,
/* 0x99 */ IR_NONE,
/* 0x9a */ IR_LEFT,
/* 0x9b */ IR_NONE,
/* 0x9c */ IR_STOP,
/* 0x9d */ IR_NONE,
/* 0x9e */ IR_NONE,
/* 0x9f */ IR_NONE,
/* 0xa0 */ IR_NONE,
/* 0xa1 */ IR_NONE,
/* 0xa2 */ IR_RETURN,
/* 0xa3 */ IR_NONE,
/* 0xa4 */ IR_NONE,
/* 0xa5 */ IR_NONE,
/* 0xa6 */ IR_PAL_NTSC,
/* 0xa7 */ IR_NONE,
/* 0xa8 */ IR_NONE,
/* 0xa9 */ IR_NONE,
/* 0xaa */ IR_A2B,
/* 0xab */ IR_NONE,
/* 0xac */ IR_PREV,
/* 0xad */ IR_NONE,
/* 0xae */ IR_NONE,
/* 0xaf */ IR_NONE,
/* 0xb0 */ IR_NONE,
/* 0xb1 */ IR_NONE,
/* 0xb2 */ IR_NONE,
/* 0xb3 */ IR_NONE,
/* 0xb4 */ IR_NONE,
/* 0xb5 */ IR_NONE,
/* 0xb6 */ IR_NONE,
/* 0xb7 */ IR_NONE,
/* 0xb8 */ IR_NONE,
/* 0xb9 */ IR_NONE,
/* 0xba */ IR_NONE,
/* 0xbb */ IR_NONE,
/* 0xbc */ IR_NUM3,
/* 0xbd */ IR_NONE,
/* 0xbe */ IR_NONE,
/* 0xbf */ IR_NONE,
/* 0xc0 */ IR_NONE,
/* 0xc1 */ IR_NONE,
/* 0xc2 */ IR_NUM9,
/* 0xc3 */ IR_NONE,
/* 0xc4 */ IR_NONE,
/* 0xc5 */ IR_NONE,
/* 0xc6 */ IR_SURROUND,
/* 0xc7 */ IR_NONE,
/* 0xc8 */ IR_NONE,
/* 0xc9 */ IR_NONE,
/* 0xca */ IR_REPEAT,
/* 0xcb */ IR_NONE,
/* 0xcc */ IR_FF,
/* 0xcd */ IR_NONE,
/* 0xce */ IR_NONE,
/* 0xcf */ IR_NONE,
/* 0xd0 */ IR_NONE,
/* 0xd1 */ IR_NONE,
/* 0xd2 */ IR_ROOT_MENU,
/* 0xd3 */ IR_NONE,
/* 0xd4 */ IR_NONE,
/* 0xd5 */ IR_NONE,
/* 0xd6 */ IR_NONE,
/* 0xd7 */ IR_NONE,
/* 0xd8 */ IR_NONE,
/* 0xd9 */ IR_NONE,
/* 0xda */ IR_NONE,
/* 0xdb */ IR_NONE,
/* 0xdc */ IR_NUM1,
/* 0xdd */ IR_NONE,
/* 0xde */ IR_NONE,
/* 0xdf */ IR_NONE,
/* 0xe0 */ IR_NONE,
/* 0xe1 */ IR_NONE,
/* 0xe2 */ IR_UP,
/* 0xe3 */ IR_NONE,
/* 0xe4 */ IR_NONE,
/* 0xe5 */ IR_NONE,
/* 0xe6 */ IR_NONE,
/* 0xe7 */ IR_NONE,
/* 0xe8 */ IR_NONE,
/* 0xe9 */ IR_NONE,
/* 0xea */ IR_PROGRAM,
/* 0xeb */ IR_NONE,
/* 0xec */ IR_SF,
/* 0xed */ IR_NONE,
/* 0xee */ IR_NONE,
/* 0xef */ IR_NONE,
/* 0xf0 */ IR_NONE,
/* 0xf1 */ IR_NONE,
/* 0xf2 */ IR_AUDIO,
/* 0xf3 */ IR_NONE,
/* 0xf4 */ IR_NONE,
/* 0xf5 */ IR_NONE,
/* 0xf6 */ IR_NONE,
/* 0xf7 */ IR_NONE,
/* 0xf8 */ IR_NONE,
/* 0xf9 */ IR_NONE,
/* 0xfa */ IR_NONE,
/* 0xfb */ IR_NONE,
/* 0xfc */ IR_NUM5,
/* 0xfd */ IR_NONE,
/* 0xfe */ IR_NONE
};
#endif /* MTK_REMOTE == 17 */