📄 uopmap.c
字号:
{
_fgInputEscape = TRUE;
}
// *********************************************************************
// Function : void vResetInputState(void)
// Description : Reset input state, system initial and eject
// Parameter : None
// Return : None
// *********************************************************************
void vResetInputState(void) large
{
/* only reset non-stack input mode here */
if (_bInputState != INPUT_STATE_NONE)
{
vEscapeInputState();
_bInputState = INPUT_STATE_NONE;
}
// clear UI timer
_bIrTimer = IR_TIMER_VOID;
_bIrTimerBeepCnt = 0;
/* exit stacked input state, like setup menu ? */
}
#ifndef DROP_DUMMY_FUNC
// *********************************************************************
// Dummy function call, for C51 only
// *********************************************************************
static void Dummy(void) large
{
#if defined(__C51__)
BYTE bDummy = 0;
if (bDummy)
{
//vNotifySharedGroup(1);
dwReadDspSharedDInfo(0);
// OSD generic
vSetTransDis(0);
vChgColEn();
vCreateMsgButtonR(0, 0, 0, 0, 0, 0, 0);
vOsdMsgPaste(0, 0);
vOsdShowStrMax(0, 0, 0, 0);
vOsdMsgPasteMax(0, 0);
#if (!defined(PLAYER_BOOKMARK) && !defined(PLAYER_PROGRAM))
vCreateMsgButton(0, 0, 0, 0, 0, 0);
#endif
// not used by NUI
vSetMsgCol2(0, 0, 0);
vFillWB(0, 0);
vVoidEn();
vVoidDis();
vSetVoidRng(0);
vHlButton(0, 0);
vOsdMsgShow(0, 0, 0);
WriteDRAMTbl(0, 0, 0);
// not used by NUI end
#ifdef SUPPORT_TRUECOLOR
vSetWBTcMode(0);
#ifdef ALL_WB_USE_TRUECOLOR
vSetPal(0, 0, 0, 0);
#endif
#endif
vPasteMsgAddr(0, 0, 0);
vChgColSetCol(0, 0, 0, 0);
vOsdPosShowStr(0, 0);
#ifndef SS_FADE_INOUT
vSetWBMixRatio(0, 0);
#endif
// VFD
VfdCalendar(0);
VfdMsgDirect(0);
// audio control
#ifdef DOLBY_PROLOGIC
vAdspPrologBal(0);
vAdspPrologSurr(0);
#else
wReadDspSharedWInfo(0);
#endif
#ifdef PLAYER_KARAOKE
vAdspMicMix(0, 0);
#endif
#ifdef SIMPLE_SPDIF_CTRL
vAdspSpdifManualSet(0, 0);
#endif
vSetAuxIO(0, 0);
fgCheckUopBlock(0);
vSendPeriCmd(0, 0, 0);
#ifndef PLAYER_POWERDOWN
vUIStop();
VfdUpdateNow();
#endif
#ifdef DRS232_DEBUG
#ifdef RS232_LOG_UI
DBGLogS("");
DBGLogB(1,2,3,4);
#endif
#endif
} /* if (bDummy) */
#endif /* __C51__ */
}
#endif
#ifdef IR_SUPPORT_SHIFT_KEY
// *********************************************************************
// Function : void vSetShiftKeyMode(BOOL fgEnable)
// Description :
// Parameter : None
// Return : None
// *********************************************************************
void vSetShiftKeyMode(BOOL fgEnable) large
{
if (fgEnable == TRUE)
{
if (_fgIRShiftKey != TRUE)
{
vSetKeyTblShift();
}
vOsdShowShiftMark(OSD_SHIFT_MARK_ALL, TRUE);
}
else if (fgEnable == FALSE)
{
if (_fgIRShiftKey != FALSE)
{
vSetKeyTblNormal();
}
vOsdShowShiftMark(OSD_SHIFT_MARK_ALL, FALSE);
}
}
#endif /* IR_SUPPORT_SHIFT_KEY */
// *********************************************************************
// Function : void vPlayerKeyProc(void)
// Description :
// Parameter : None
// Return : None
// *********************************************************************
void vPlayerKeyProc(void) large
{
BOOL fgRet = UOP_OK;
#ifndef DROP_DUMMY_FUNC
// dummy
Dummy();
#endif
/* before key process, update input state first */
vUpdateInputState();
#ifdef SHRINK_KEYPROC
/* setup menu */
if (fgIsInSetupMenu())
{
if( bSharedInfo(SH_WAIT_FOR_WB_ALLOC) == 0)
{
if(fgSetupState())
{
_bIRKey = IR_NONE;
}
vUpdateInputState();
}
else
{
_bIRKey = IR_NONE;
}
}
#ifdef PLAYER_GOTO
if (fgIsInGoto())
{
if (fgGotoState())
{
_bIRKey = IR_NONE;
}
vUpdateInputState();
}
#endif
#ifdef IR_SUPPORT_SHIFT_KEY
if (_bIRKey == IR_SHIFT)
{
if (fgIsKeyTblShift())
{
/* back to normal */
vSetShiftKeyMode(FALSE);
}
else
{
/* set shift key table */
vSetShiftKeyMode(TRUE);
}
_bIRKey = IR_NONE;
return;
}
#endif
/* handle multi-function key */
if (fgIsMultiFuncKey(_bIRKey))
{
fgRet = fgHandleMultiKey();
}
/* execute non-stacked input state */
if (_bIRKey != IR_NONE)
{
vNonStatckInputState();
}
/* from here is main state */
/* process common key */
if (_bIRKey != IR_NONE)
{
fgRet = fgComKeyFunc(); // do the common key proc between each state
}
vResendInputState();
/* check if the UOP return sync is set, if is set, don't do playback key */
/* dispatch the key to the play module */
if ((fgRet == UOP_OK) && (_bIRKey != IR_NONE))
{
if (fgIsNonPlay()) /* process non-play */
{
fgRet = fgInitKeyProc();
}
#ifdef SUPPORT_DATA_DISC
else if (fgIsIsoPlay()
#ifdef SUPPORT_PCD
|| fgIsPcdPlay()
#endif
)
{
fgRet = fgISOKeyProc();
}
#endif
else if (fgIsDvdPlay() || fgIsVcdPlay()
#ifndef CDDA_USE_CDFS
|| fgIsCddaPlay()
#endif
#ifdef AUDIO_IN_EN
|| fgIsAinPlay()
#endif
)
{
fgRet = fgNonISOKeyProc();
}
}
#else // !SHRINK_KEYPROC
if (bKeyState() == KEY_SCRSAV)
fgRet = fgSCRSAVKeyProc();
#ifdef PLAYER_GOTO
if (fgIsInGoto())
{
if (fgGotoState())
{
_bIRKey = IR_NONE;
}
vUpdateInputState();
}
#endif
if ( bKeyState() == KEY_SETUP )
{
if(fgSetupState())
{
_bIRKey = IR_NONE;
}
vUpdateInputState();
}
if ( bKeyState() != KEY_SCRSAV )
{
fgRet = fgComKeyProc(); // do the common key proc between each state
}
switch(bKeyState())
{
case KEY_INIT:
fgRet = fgInitKeyProc();
break;
case KEY_ISO:
#ifdef SUPPORT_DATA_DISC
if ((fgRet == UOP_OK) && (_bIRKey != IR_NONE))
{
fgRet = fgISOKeyProc();
}
vResendInputState();
#endif
break;
case KEY_NONISO:
if ((fgRet == UOP_OK) && (_bIRKey != IR_NONE))
{
fgRet = fgNonISOKeyProc();
}
vResendInputState();
break;
case KEY_SETUP:
/*
if(fgSetupState())
{
_bIRKey = IR_NONE;
}
vUpdateInputState();
*/
break;
case KEY_SCRSAV:
fgRet = fgSCRSAVKeyProc();
break;
default:
_bKeyState = KEY_INIT;
break;
}
/* check if the UOP return sync is set, if is set, don't do playback key */
/* dispatch the key to the play module */
if ((fgRet == UOP_OK) && (_bIRKey != IR_NONE))
{
#if 0
if (fgIsAinPlay())
{
fgRet = fgAINHandleCmd();
}
#endif
}
#endif // SHRINK_KEYPROC
vResendInputState();
/* Key process fail show error mark */
if (fgRet == UOP_FAIL)
{
if (_bIRKey < IR_INTERNAL_KEY_START)
{
vOsdShowError(SV_ERR_INVALID_OPERATION, OSD_TIMEOUT_SHORT);
}
}
/* reset _bIRKey here */
_bIRKey = IR_NONE;
}
// *********************************************************************
// Function : void vPlayerShowLogo(BYTE bType, WORD wOption)
// Description :
// Parameter : None
// Return : None
// *********************************************************************
void vPlayerShowLogo(BYTE bType, WORD wOption) large
{
BYTE bTmp;
#ifndef MT1379_MANUFACTURE_TEST
if (bType == SV_LOGO_KEEP)
{
return;
}
#ifdef SUPPORT_CAPTURE_LOGO
if (bType == SV_LOGO_SETUP)
{
bTmp = bEepromReadByte(LOGO_TYPE_POSITION);
wOption = 0;
switch (bTmp)
{
case EV_LOGO_JACKET:
bType = SV_LOGO_JACKET;
break;
case EV_LOGO_BLUE:
bType = SV_LOGO_COLOR;
wOption = LOGO_BLUE;
break;
case EV_LOGO_CAPTURED:
bType = SV_LOGO_CAPTURE;
break;
case EV_LOGO_DEFAULT:
default:
bType = SV_LOGO_FLASH;
break;
}
} /* bType == SV_LOGO_SETUP */
#endif /* SUPPORT_CAPTURE_LOGO */
#if 0
if (fgIsCddaPlay())
{
if ((bReadDEC(RW_RBCR1) & BWSEL_32) == 0) /* 16 bit DRAM */
{
bType = SV_LOGO_COLOR;
wOption = LOGO_BLUE;
}
}
#endif
if (bType == SV_LOGO_COLOR)
{
bTmp = (wOption & 0x000f) << 4;
vSetSharedInfo(SI_LOGO_CLR_Y, bTmp);
wOption >>= 4;
bTmp = (wOption & 0x000f) << 4;
vSetSharedInfo(SI_LOGO_CLR_CB, bTmp);
wOption >>= 4;
bTmp = (wOption & 0x000f) << 4;
vSetSharedInfo(SI_LOGO_CLR_CR, bTmp);
vSendUopCmd(UOP_SHOW_LOGO, SV_LOGO_COLOR, 0, 0);
}
else
{
vSendUopCmd(UOP_SHOW_LOGO, bType, wOption, 0);
}
#endif
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -