📄 flmain.c
字号:
#if 0
if (bFlCmdRetOp() == FLCMD_RET_OP_SEL)
{
return fgFlOnMn();
}
#endif
if (fgFlClIsLock())
{
switch(bFlClPath())
{
case FL_CMDPATH_SEL_0:
#if defined(MP3_LYRICS_V2_SUPPORT)
case FL_CMDPATH_INIT_1:
case FL_CMDPATH_INIT_0:
#elif defined(ISO_AUTO_PLAY)
case FL_CMDPATH_INIT_1:
#else
case FL_CMDPATH_INIT_0:
#endif
#ifdef MP3_LYRICS_V2_SUPPORT
if (bSharedInfo(SI_MP3_KARA_DISC_TYPE) == SV_ID_MATCH)
{
return fgFlOnLrc();
}
else
#endif
{
return fgFlOnMn();
}
break;
case FL_CMDPATH_SEL_1:
if ((_bIRKey == IR_CMD_DONE) &&
((FL_ACK(_dwIrDoneParm) == SI_DDISC_PB_MODULE) || (_rFlCmdLock.fgLeap)))
{
vFlClNext(); // FL_CMDPATH_SEL_2:
// tmp
wPos = FL_ITEM_FIELD(_bFlMnCurItemIdx);
bLoByte(wIdx) = bSharedInfo(wPos + 6);
bHiByte(wIdx) = bSharedInfo(wPos + 7);
//added by msz00049 for CR PL00004129
#ifdef FLMN_RET_PLAY_DIR
if(bFlGetItemType(_bFlMnCurItemIdx) == FTYPE_AUDIO)
vWorkAreaMove(FALSE);
#endif
//added end
vFlCmdClickItem(_bFlMnListId, wIdx);
return TRUE;
}
break;
case FL_CMDPATH_RPLC_CMDTGT:
case FL_CMDPATH_CHG_CMDTGT:
if ((_bIRKey == IR_CMD_DONE) && (FL_ACK(_dwIrDoneParm) == SI_DDISC_PB_MODULE))
{
vFlClRls();
}
break;
}
}
switch (_bFlCmdTarget)
{
case FL_CMD_TARGET_MENU:
#ifdef MP3_LYRICS_V2_SUPPORT
if (bSharedInfo(SI_MP3_KARA_DISC_TYPE) == SV_ID_MATCH)
{
fgIsGrabbed = fgFlOnLrc();
}
else
#endif
{
fgIsGrabbed = fgFlOnMn();
}
break;
case FL_CMD_TARGET_JPEG:
fgIsGrabbed = fgFlOnJv();
break;
#ifdef DDISC_FTYPE_MPG_SUPPORT
case FL_CMD_TARGET_MPEG:
fgIsGrabbed = fgFlOnMp();
break;
#endif
#ifdef JPEG_DDISC_DIGEST_ENABLE
case FL_CMD_TARGET_HELP:
fgIsGrabbed = fgFlOnHp();
break;
#endif
case FL_CMD_TARGET_NONE:
// - init state
#ifdef MP3_LYRICS_V2_SUPPORT
if (bSharedInfo(SI_MP3_KARA_DISC_TYPE) == SV_ID_MATCH)
{
fgIsGrabbed = fgFlLrcOnInit();
}
else
#endif
{
fgIsGrabbed = fgFlOnInit();
}
break;
default:
break;
}
return fgIsGrabbed;
}
// FOR COMPATIBLE (TMP)
void vFsMenuExit(void)
{
#ifdef USB_COPY_DEBUG
DRS232LogS("vFsMenuExit");
#endif
#ifdef MP3_LYRICS_V2_SUPPORT
if (bSharedInfo(SI_MP3_KARA_DISC_TYPE) == SV_ID_MATCH)
{
vDeleteWB(MP3LRC_MENU_WB);
vDeleteWB(MP3LRC_INTRO_WB);
}
else
#endif
{
vDeleteWB(FL_MENU_WB);
vDeleteWB(FL_INFO_WB);
}
#ifdef JPEG_DDISC_DIGEST_ENABLE
vDeleteWB(FL_DGTMN_WB);
#endif
vFlSetCmdTarget(FL_CMD_TARGET_NONE);
#if (DRAM_SZ == DRAM_2M) || defined(USE_DRAM_CFG1)
// Commented by Hiker Hauk: This line of code conflicts with USB Copy.
// Who added this line? Maybe he needs to check whether this is ok.
#ifndef SUPPORT_USB_COPY
vOsdSetMemBlk(OSD_MEM_BLK_STATIC, OSD_MEM_DEFAULT);
#endif
#endif
#ifdef UNICODE_SUPPORT_COPY
_bUSBCopyState = USB_COPY_STATE_NONE;
#endif
return;
}
void vFlRecover(void) large
{
switch (_bFlCmdTarget)
{
case FL_CMD_TARGET_MENU:
#ifdef MP3_LYRICS_V2_SUPPORT
if (bSharedInfo(SI_MP3_KARA_DISC_TYPE) == SV_ID_MATCH)
{
vFlLrcRecover();
}
else
#endif
{
vFlMnRecover();
}
break;
case FL_CMD_TARGET_JPEG:
vFlJvRecover();
break;
#ifdef DDISC_FTYPE_MPG_SUPPORT
case FL_CMD_TARGET_MPEG:
vFlMpRecover();
break;
#endif
#ifdef JPEG_DDISC_DIGEST_ENABLE
case FL_CMD_TARGET_HELP:
vFlHpRecover(TRUE);
break;
#endif
}
}
void vFlChgLang(BYTE bLang) large
{
switch (_bFlCmdTarget)
{
case FL_CMD_TARGET_MENU:
vFlMnChgLang(bLang);
break;
#ifdef JPEG_DDISC_DIGEST_ENABLE
case FL_CMD_TARGET_JPEG:
vFlJvChgLang(bLang);
break;
case FL_CMD_TARGET_HELP:
vFlHpRecover(FALSE);
break;
#endif
}
}
BOOL fgFlCheckStatus(BYTE bStatus) large
{
if (!fgIsIsoPlay()
#ifdef SUPPORT_PCD
&& !fgIsPcdPlay()
#endif
)
return FALSE;
switch (bStatus)
{
case FL_STATUS_BUSY:
return ((bSharedInfo(SI_MP3_STT) == MP3STT_PB_STRT) ||
(bSharedInfo(SI_JPG_STT) == JPEGSTT_DEC_STRT) ||
(bSharedInfo(SI_MPIC_STT) == MPICSTT_PB_STRT));
case FL_STATUS_OCCUPIED:
return (fgFlClIsLock());
case FL_STATUS_IN_MENU:
return (_bFlCmdTarget == FL_CMD_TARGET_MENU);
case FL_STATUS_IN_HELP:
return (_bFlCmdTarget == FL_CMD_TARGET_HELP);
case FL_STATUS_IN_JPEG:
return (_bFlCmdTarget == FL_CMD_TARGET_JPEG);
case FL_STATUS_IN_JPGDGST:
return ((_bFlCmdTarget == FL_CMD_TARGET_JPEG) &&
(bSharedInfo(SI_JPG_MODE) == JPEGMOD_DIGEST));
case FL_STATUS_IN_MPEG:
return (_bFlCmdTarget == FL_CMD_TARGET_MPEG);
case FL_STATUS_JPEG_DECODING:
return (bSharedInfo(SI_JPG_STT) == JPEGSTT_DEC_STRT);
}
}
void vFlShowError(WORD wPos, WORD wMsg, BYTE bTime) large
{
#if 1//def JPG_INFO
if (fgFlCheckStatus(FL_STATUS_IN_MENU))
{
vFlIpShowInfo(IP_INFO_ERROR, 0, wMsg);
}
else
{
vOsdPosShow(wPos, wMsg, bTime);
}
#endif
return;
}
#ifdef DATA_DISC_SUPPORT_PLAY_LIST
void vFlSendUopCmd(BYTE bCmd, BYTE bParam, BYTE bRetJob) large
{
_bFlWaitUopRet = bCmd;
_bFlUopRetJob = bRetJob;
vSendUopCmd(bCmd, bParam, 0x0, 0x0);
}
#endif
void vFlHandleUopCheck() large
{
if (fgFlClIsLock())
{
switch (bFlClPath())
{
case FL_CMDPATH_RPLC_CMDTGT:
vFlCmdTargetEnter(_bFlCmdTarget);
return;
}
}
}
//#ifndef NEW_PLAY
void vFlHandleUopRet(BYTE bUopId, BYTE bUopRet) large
{
if (bUopRet != SV_NO_ERROR)
return;
#if 0
if (bUopId == UOP_STOP)
{
switch(_bFlUopRetJob)
{
case UOP_RET_CHG_CMDTGT:
vFlCmdTargetEnter(_bFlCmdTarget);
break;
case UOP_RET_RPLC_CMDTGT:
//vFlSetCmdTarget(FL_CMD_TARGET_MENU);
break;
}
_bFlWaitUopRet = 0xFF;
}
#endif
if (fgFlClIsLock())
{
switch (bFlClPath())
{
case FL_CMDPATH_RPLC_CMDTGT:
vFlCmdTargetEnter(_bFlCmdTarget);
return;
//PL00003626, for entering target after leaving previous target and not yet entering new one.
case FL_CMDPATH_SEL_1:
if (_bFlWaitUopRet == UOP_STOP && _bFlUopRetJob == UOP_RET_PL_JPG)
{
vFlCmdTargetEnter(_bFlCmdTarget);
fgSetPlayPostKey(IR_CMD_DONE);
_bFlWaitUopRet = UOP_NONE;
_bFlUopRetJob = 0xFF;
}
return ;
}
}
switch(_bFlCmdTarget)
{
case FL_CMD_TARGET_MENU:
#ifdef MP3_LYRICS_V2_SUPPORT
if (bSharedInfo(SI_MP3_KARA_DISC_TYPE) == SV_ID_MATCH)
{
vFlLrcHandleUopRet(bUopId);
}
else
#endif
{
vFlMnHandleUopRet(bUopId);
}
break;
case FL_CMD_TARGET_JPEG:
//vFlJvHandleUopRet(bUopId);
break;
case FL_CMD_TARGET_MPEG:
// vFlMphandleUopRet(bUopId);
break;
case FL_CMD_TARGET_HELP:
break;
}
}
#else // #ifdef PLAYER_FLMENU
BOOL fgFsMenuState(void) large { return TRUE; }
#endif // #ifdef PLAYER_FLMENU
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -