📄 irkey.c
字号:
/* 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 */
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -