📄 keyproc.c
字号:
/**********************************************************************/
/*************** MTK CONFIDENTIAL & COPYRIGHTED ****************/
/*************** ****************/
/*************** $Modtime:: 05/08/11 3:18p $ ****************/
/*************** $Revision:: 21 $ ****************/
/*************** ****************/
/*************** Description : Play module for ****************/
/*************** non-disc dependant ****************/
/*************** key processing ****************/
/*************** ****************/
/*************** Company : MediaTek Inc. ****************/
/*************** Programmer : ****************/
/**********************************************************************/
#pragma NOAREGS
#include "general.h"
// *********************************************************************
// NonISO(DVD,VCD,CDDA,AUDIO_IN key function
// *********************************************************************
static BOOL fgNonISONumKey(void) large
{
if( fgIsDvdPlay() )
{
return (fgDVDNumKey());
}
#ifdef VCD_SUPPORT
else if ( fgIsVcdPlay() )
{
return (fgVCDNumKey());
}
#endif
#ifndef CDDA_USE_CDFS
else if ( fgIsCddaPlay())
{
return (fgCDDANumKey());
}
#endif
else
{
return (UOP_OK);
}
}
static BOOL fgNonISODirKey(void) large
{
BYTE bParm;
switch(_bIRKey)
{
case IR_UP:
bParm = SV_UP;
break;
case IR_DOWN:
bParm = SV_DOWN;
break;
case IR_LEFT:
bParm = SV_LEFT;
break;
case IR_RIGHT:
bParm = SV_RIGHT;
break;
default:
return (UOP_FAIL);
}
if( fgIsDvdPlay() )
{
#ifdef DVD_IGNORE_BTN_NO_CMD
vSendUopCmd(UOP_ARROW_BTN, bParm, 0, 0);
#else
vSendUopCmd(UOP_ARROW_BTN, bParm, 1, 0);
#endif
}
else
{
vSendUopCmd(UOP_ARROW_BTN, bParm, 0, 0);
}
return (UOP_OK);
}
static BOOL fgNonISOEnterKey(void) large
{
if( fgIsDvdPlay() )
{
return (fgDVDEnterKey());
}
else
{
// return (UOP_OK);
// 20050401, CR00002256, show prohibit for non-supported keys
return (UOP_FAIL);
}
}
static BOOL fgNonISOPlayKey(void) large
{
if( fgIsDvdPlay() )
{
return (fgDVDPlayKey());
}
#ifdef VCD_SUPPORT
else if ( fgIsVcdPlay() )
{
return (fgVCDPlayKey());
}
#endif
#ifndef CDDA_USE_CDFS
else if ( fgIsCddaPlay())
{
return (fgCDDAPlayKey());
}
#endif
else
{
//return (UOP_OK);
// 20050401, CR00002256, show prohibit for non-supported keys
return (UOP_FAIL);
}
}
static BOOL fgNonISOPauseKey(void) large
{
BYTE bPbcState = bSharedInfo(SI_PBC_STATE);
// 20050428, IS00002663, if SH_PAUSE_SHOW_WB == SV_SHOW_SETUP, means going into setup,
// if we accept pause key, we will send UOP_Play to RISC
if (bPbcState == SV_PAUSE && bSharedInfo(SH_PAUSE_SHOW_WB) != 0)
return UOP_FAIL ;
if (!fgIsDiscPlay(bPbcState))
{
vOsdShowError(SV_ERR_PLAYBACK_ONLY, OSD_TIMEOUT_SHORT);
return (UOP_OK);
}
if (bSharedInfo(SI_PBC_STATE) == SV_PAUSE)
{
// 20050428, IS00002663, set this flag so that before it really start play, we can't enter setup
// Or we might enter setup but RISC is still playing
//vSetSharedInfo(SH_PAUSE_SHOW_WB, SV_SHOW_SETUP) ;
_fgSetupProhibit = TRUE ; // 20050504, PL00000143, side effect of IS00002663. Use a flag to prohibit setup key instead
vSendUopCmd(UOP_PLAY, 0, 0, 0);
}
else
{
vSendUopCmd(UOP_PAUSE, 0, 0, 0);
}
return (UOP_OK);
}
static BOOL fgNonISOStopKey(void) large
{
BYTE bState = bSharedInfo(SI_PBC_STATE);
BYTE bDiscType = bSharedInfo(SI_DISC_TYPE);
if ( fgIsDvdPlay() || fgIsVcdPlay() )
{
#if defined(PROG_NO_STOP_RESUME)
if ((bSharedInfo(SI_USR_PBC_CTRL) == SV_PROGRAM) &&
(fgIsDiscPlay(bState)))
{
vSendUopCmd(UOP_STOP, 0, 0, 0);
vSendUopCmd(UOP_STOP, 0, 0, 0);
/*
vSendUopCmd(UOP_STOP, 0, 0, SV_STOP_FORCE);
*/
return (UOP_OK);
}
#endif
#if (STOP_RESUME_STYLE == STOP_RESUME_TWO_KEYS)
if (bState == SV_STOP_RESUME)
{
// return (UOP_OK);
// 20050401, CR00002256, show prohibit for non-supported keys
return (UOP_FAIL);
}
#endif
vSendUopCmd(UOP_STOP, 0, 0, 0);
return (UOP_OK);
}
#ifndef CDDA_USE_CDFS
else if (fgIsCddaPlay())
{
return( fgCDDAStopKey());
}
#endif
else
{
// return (UOP_OK);
// 20050401, CR00002256, show prohibit for non-supported keys
return (UOP_FAIL);
}
}
static BOOL fgNonISONextKey(void) large
{
if( fgIsDvdPlay() )
{
// 20050428, IS00002663, if entering setup, don't accept key
if (bSharedInfo(SH_PAUSE_SHOW_WB) != 0)
return UOP_FAIL ;
return (fgDVDNextKey());
}
#ifdef VCD_SUPPORT
else if ( fgIsVcdPlay() )
{
// 20050428, IS00002663, if entering setup, don't accept key
if (bSharedInfo(SH_PAUSE_SHOW_WB) != 0)
return UOP_FAIL ;
return (fgVCDNextKey());
}
#endif
#ifndef CDDA_USE_CDFS
else if ( fgIsCddaPlay())
{
return (fgCDDANextKey());
}
#endif
else
{
// return (UOP_OK);
// 20050401, CR00002256, show prohibit for non-supported keys
return (UOP_FAIL);
}
}
static BOOL fgNonISOPrevKey(void) large
{
if( fgIsDvdPlay() )
{
// 20050428, IS00002663, if entering setup, don't accept key
if (bSharedInfo(SH_PAUSE_SHOW_WB) != 0)
return UOP_FAIL ;
return (fgDVDPrevKey());
}
#ifdef VCD_SUPPORT
else if ( fgIsVcdPlay() )
{
// 20050428, IS00002663, if entering setup, don't accept key
if (bSharedInfo(SH_PAUSE_SHOW_WB) != 0)
return UOP_FAIL ;
return (fgVCDPrevKey());
}
#endif
#ifndef CDDA_USE_CDFS
else if ( fgIsCddaPlay())
{
return (fgCDDAPrevKey());
}
#endif
else
{
// return (UOP_OK);
// 20050401, CR00002256, show prohibit for non-supported keys
return (UOP_FAIL);
}
}
static BOOL fgNonISORepeatKey(void) large
{
if( fgIsDvdPlay() )
{
return (fgDVDRepeatKey());
}
#ifdef VCD_SUPPORT
else if ( fgIsVcdPlay() )
{
return (fgVCDRepeatKey());
}
#endif
#ifndef CDDA_USE_CDFS
else if ( fgIsCddaPlay())
{
return (fgCDDARepeatKey());
}
#endif
else
{
// return (UOP_OK);
// 20050401, CR00002256, show prohibit for non-supported keys
return (UOP_FAIL);
}
}
BOOL fgNonISOResumeKey()
{
if( fgIsDvdPlay() )
{
return (fgDVDResumeKey());
}
#ifdef VCD_SUPPORT
else if ( fgIsVcdPlay() )
{
return (fgVCDResumeKey());
}
#endif
#ifndef CDDA_USE_CDFS
else if ( fgIsCddaPlay())
{
return (fgCDDAResumeKey());
}
#endif
else
{
// return (UOP_OK);
// 20050401, CR00002256, show prohibit for non-supported keys
return (UOP_FAIL);
}
}
static BOOL fgNonISOFFKey(void) large
{
if( fgIsDvdPlay() )
{
// 20050428, IS00002663, if entering setup, don't accept key
if (bSharedInfo(SH_PAUSE_SHOW_WB) != 0)
return UOP_FAIL ;
return (fgDVDFFKey());
}
#ifdef VCD_SUPPORT
else if ( fgIsVcdPlay() )
{
// 20050428, IS00002663, if entering setup, don't accept key
if (bSharedInfo(SH_PAUSE_SHOW_WB) != 0)
return UOP_FAIL ;
return (fgVCDFFKey());
}
#endif
#ifndef CDDA_USE_CDFS
else if ( fgIsCddaPlay())
{
return (fgCDDAFFKey());
}
#endif
else
{
// return (UOP_OK);
// 20050401, CR00002256, show prohibit for non-supported keys
return (UOP_FAIL);
}
}
static BOOL fgNonISOFRKey(void) large
{
if( fgIsDvdPlay() )
{
// 20050428, IS00002663, if entering setup, don't accept key
if (bSharedInfo(SH_PAUSE_SHOW_WB) != 0)
return UOP_FAIL ;
return (fgDVDFRKey());
}
#ifdef VCD_SUPPORT
else if ( fgIsVcdPlay() )
{
// 20050428, IS00002663, if entering setup, don't accept key
if (bSharedInfo(SH_PAUSE_SHOW_WB) != 0)
return UOP_FAIL ;
return (fgVCDFRKey());
}
#endif
#ifndef CDDA_USE_CDFS
else if ( fgIsCddaPlay())
{
return (fgCDDAFRKey());
}
#endif
else
{
// return (UOP_OK);
// 20050401, CR00002256, show prohibit for non-supported keys
return (UOP_FAIL);
}
}
#ifndef DISABLE_SF
static BOOL fgNonISOSFKey(void) large
{
if( fgIsDvdPlay() )
{
// 20050428, IS00002663, if entering setup, don't accept key
if (bSharedInfo(SH_PAUSE_SHOW_WB) != 0)
return UOP_FAIL ;
return (fgDVDSFKey());
}
#ifdef VCD_SUPPORT
else if ( fgIsVcdPlay() )
{
// 20050428, IS00002663, if entering setup, don't accept key
if (bSharedInfo(SH_PAUSE_SHOW_WB) != 0)
return UOP_FAIL ;
return (fgVCDSFKey());
}
#endif
else
{
// return (UOP_OK);
// 20050401, CR00002256, show prohibit for non-supported keys
return (UOP_FAIL);
}
}
#endif /*#ifndef DISABLE_SF*/
#ifndef DISABLE_SR
static BOOL fgNonISOSRKey(void) large
{
if( fgIsDvdPlay() )
{
// 20050428, IS00002663, if entering setup, don't accept key
if (bSharedInfo(SH_PAUSE_SHOW_WB) != 0)
return UOP_FAIL ;
return (fgDVDSRKey());
}
else
{
// return (UOP_OK);
// 20050401, CR00002256, show prohibit for non-supported keys
return (UOP_FAIL);
}
}
#endif
static BOOL fgNonISOStepFKey(void) large
{
if( fgIsDvdPlay() )
{
// 20050428, IS00002663, if entering setup, don't accept key
if (bSharedInfo(SH_PAUSE_SHOW_WB) != 0)
return UOP_FAIL ;
return (fgDVDStepFKey());
}
#ifdef VCD_SUPPORT
else if ( fgIsVcdPlay() )
{
// 20050428, IS00002663, if entering setup, don't accept key
if (bSharedInfo(SH_PAUSE_SHOW_WB) != 0)
return UOP_FAIL ;
return (fgVCDStepFKey());
}
#endif
else
{
// return (UOP_OK);
// 20050401, CR00002256, show prohibit for non-supported keys
return (UOP_FAIL);
}
}
static BOOL fgNonISOStepRKey(void) large
{
if( fgIsDvdPlay() )
{
// 20050428, IS00002663, if entering setup, don't accept key
if (bSharedInfo(SH_PAUSE_SHOW_WB) != 0)
return UOP_FAIL ;
return (fgDVDStepRKey());
}
#ifdef VCD_SUPPORT
else if ( fgIsVcdPlay() )
{
// 20050428, IS00002663, if entering setup, don't accept key
if (bSharedInfo(SH_PAUSE_SHOW_WB) != 0)
return UOP_FAIL ;
return (fgVCDStepRKey());
}
#endif
else
{
// return (UOP_OK);
// 20050401, CR00002256, show prohibit for non-supported keys
return (UOP_FAIL);
}
}
static BOOL fgNonISOA2BKey(void) large
{
BYTE bPbcState = bSharedInfo(SI_PBC_STATE);
if ( fgIsDvdPlay() || fgIsVcdPlay() )
{
if (!fgIsDiscPlay(bPbcState))
{
vOsdShowError(SV_ERR_PLAYBACK_ONLY, OSD_TIMEOUT_SHORT);
return (UOP_OK);
}
vSendUopCmd(UOP_A_TO_B, 0, 0, 0);
return UOP_OK;
}
#ifndef CDDA_USE_CDFS
else if ( fgIsCddaPlay() )
{
return ( fgCDDAA2BKey() );
}
#endif
else
{
// return (UOP_OK);
// 20050401, CR00002256, show prohibit for non-supported keys
return (UOP_FAIL);
}
}
static BOOL fgNonISOTitleKey(void) large
{
if( fgIsDvdPlay() )
{
return (fgDVDTitleKey());
}
#ifdef VCD_SUPPORT
else if ( fgIsVcdPlay() )
{
return (fgVCDReturnKey());
}
#endif
else
{
// return (UOP_OK);
// 20050401, CR00002256, show prohibit for non-supported keys
return (UOP_FAIL);
}
}
static BOOL fgNonISOMenuKey(void) large
{
if( fgIsDvdPlay() )
{
return (fgDVDMenuKey());
}
#ifdef VCD_SUPPORT
else if ( fgIsVcdPlay() )
{
return (fgVCDReturnKey());
}
#endif
else
{
// return (UOP_OK);
// 20050401, CR00002256, show prohibit for non-supported keys
return (UOP_FAIL);
}
}
static BOOL fgNonISOReturnKey(void) large
{
if( fgIsDvdPlay() )
{
return (fgDVDReturnKey());
}
#ifdef VCD_SUPPORT
else if ( fgIsVcdPlay() )
{
return (fgVCDReturnKey());
}
#endif
else
{
// return (UOP_OK);
// 20050401, CR00002256, show prohibit for non-supported keys
return (UOP_FAIL);
}
}
static BOOL fgNonISOAudioKey(void) large
{
if( fgIsDvdPlay() )
{
return (fgDVDAudioKey());
}
#ifdef VCD_SUPPORT
else if ( fgIsVcdPlay() )
{
return (fgVCDAudioKey());
}
#endif
#ifndef CDDA_USE_CDFS
else if ( fgIsCddaPlay())
{
return (fgCDDAAudioKey());
}
#endif
else
{
// return (UOP_OK);
// 20050401, CR00002256, show prohibit for non-supported keys
return (UOP_FAIL);
}
}
static BOOL fgNonISOSpKey(void) large
{
if( fgIsDvdPlay() )
{
return (fgDVDSpKey());
}
#ifdef VCD_SUPPORT
else if ( fgIsVcdPlay() )
{
return (fgVCDSpKey());
}
#endif
else
{
// return (UOP_OK);
// 20050401, CR00002256, show prohibit for non-supported keys
return (UOP_FAIL);
}
}
static BOOL fgNonISOAngleKey(void) large
{
if( fgIsDvdPlay() )
{
return (fgDVDAngleKey());
}
else
{
// return (UOP_OK);
// 20050401, CR00002256, show prohibit for non-supported keys
return (UOP_FAIL);
}
}
static BOOL fgNonISODisplayKey(void) large
{
if( fgIsDvdPlay() )
{
return (fgDVDRemainKey());
}
#ifdef VCD_SUPPORT
else if ( fgIsVcdPlay() )
{
return (fgVCDRemainKey());
}
#endif
#ifndef CDDA_USE_CDFS
else if ( fgIsCddaPlay())
{
return (fgCDDARemainKey());
}
#endif
#ifdef AUDIO_IN_EN
else if (fgIsAinPlay())
{
return (fgAINDisplayKey());
}
#endif
else
{
// return (UOP_OK);
// 20050401, CR00002256, show prohibit for non-supported keys
return (UOP_FAIL);
}
}
static BOOL fgNonISOSearchKey(BOOL fgGoto) large
{
if( fgIsDvdPlay() )
{
return (fgDVDSearchKey(fgGoto));
}
#ifdef VCD_SUPPORT
else if ( fgIsVcdPlay() )
{
return (fgVCDSearchKey(fgGoto));
}
#endif
#ifndef CDDA_USE_CDFS
else if ( fgIsCddaPlay())
{
return (fgCDDASearchKey());
}
#endif
else
{
// return (UOP_OK);
// 20050401, CR00002256, show prohibit for non-supported keys
return (UOP_FAIL);
}
}
#ifdef PLAYER_BOOKMARK
static BOOL fgNonISOMarkKey(void) large
{
if(bSharedInfo(SI_CMD_CNT))
{
return (UOP_OK);
}
if( fgIsDvdPlay() || fgIsVcdPlay() )
{
#if (DRAM_SZ != DRAM_2M) && !defined(USE_DRAM_CFG1)
vChangeInputState(INPUT_STATE_BOOKMARK, FALSE);
#else
// 20050428, PL00000724, if entering bookmark or program, don't accept key again
if (bSharedInfo(SH_PAUSE_SHOW_WB) != 0)
return UOP_FAIL ;
if((bSharedInfo(SI_PBC_STATE) == SV_PAUSE) || fgIsVcdCddaTrk())
{
if (fgIsVcdCddaTrk() ||
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -