📄 combine.c
字号:
}
/************************************************************************
Function :
Description :
Parameter :
Return :
************************************************************************/
void vShowUsrPbcCtrl(BYTE bMode) large
{
WORD wPos;
if (_rOsdStateCtx.fgTimePos == OSD_SHOW_TIME_LEFT)
{
if (fgIsIsoPlay())
{
wPos = OSD_POS_ISO_REPEAT_LEFT; // Adjust iso repeat position
}
else
{
wPos = OSD_POS_REPEAT;
}
}
else if (_rOsdStateCtx.fgTimePos == OSD_SHOW_TIME_RIGHT)
{
if (fgIsIsoPlay())
{
wPos = OSD_POS_ISO_REPEAT; // Adjust iso repeat position
}
else
{
wPos = OSD_POS_REPEAT_LEFT;
}
}
switch (bMode)
{
case SV_REPEAT_NONE:
case SV_REPEAT_ABNONE:
vOsdPosClear(wPos);
break;
#if 0 // repeat mode won't come into this function, will be handled in fgShowRepeatMode()
case SV_REPEAT_ALL:
vOsdPosShow(wPos, OSD_MSG_ICON_RPT_ALL, OSD_NO_DISAPPEAR);
break;
case SV_REPEAT_TRACK:
case SV_REPEAT_LIST:
vOsdPosShow(wPos, OSD_MSG_ICON_RPT_TRK, OSD_NO_DISAPPEAR);
break;
case SV_REPEAT_TITLE:
vOsdPosShow(wPos, OSD_MSG_ICON_RPT_TT, OSD_NO_DISAPPEAR);
break;
case SV_REPEAT_CHAPTER:
vOsdPosShow(wPos, OSD_MSG_ICON_RPT_CH, OSD_NO_DISAPPEAR);
break;
#endif
case SV_REPEAT_SET_A:
vOsdPosShow(wPos, OSD_MSG_ICON_RPT_A, OSD_NO_DISAPPEAR);
break;
case SV_REPEAT_AB:
vOsdPosShow(wPos, OSD_MSG_ICON_RPT_AB, OSD_NO_DISAPPEAR);
#ifdef KARAOKE_MIC_REC
vMicRecCtrl(MIC_REC_CTRL_INIT);
#endif
break;
case SV_RANDOM:
vOsdPosShow(wPos, OSD_MSG_RANDOM, OSD_NO_DISAPPEAR);
break;
case SV_SHUFFLE:
if (_rOsdStateCtx.fgRepeatShow == TRUE)
{
vOsdPosShow(wPos, OSD_MSG_SHUFFLE, OSD_NO_DISAPPEAR);
}
break;
case SV_PROGRAM:
vOsdPosShow(wPos, OSD_MSG_PROGRAM, OSD_NO_DISAPPEAR);
break;
#ifdef PLAYER_DIGEST
case SV_USR_DIGEST:
// show OSD
if (fgIsCddaPlay())
{
vOsdPosShow(wPos, OSD_MSG_SCAN, OSD_NO_DISAPPEAR);
}
else
{
#if 0
vOsdPosShow(wPos, OSD_MSG_DIGEST, OSD_NO_DISAPPEAR);
#else
vOsdPosClear(wPos);
#endif
}
// show VFD
if (fgIsDvdPlay())
{
#ifdef DVD_DGST_SHOW_MSG_ONLY
#ifdef VFD_STATUS_DIGEST
VfdShowStatus(VFD_STATUS_DIGEST);
#endif
#else
VfdShowPlayInfo(VFD_INFO_TITLE_CHAPTER, bSharedInfo(SI_TT_NO), bSharedInfo(SI_CHAP_NO));
#endif
}
#ifdef VCD_SUPPORT
else if (fgIsVcdPlay())
{
#ifdef VCD_DGST_SHOW_MSG_ONLY
#ifdef VFD_STATUS_DIGEST
VfdShowStatus(VFD_STATUS_DIGEST);
#endif
#else
VfdShowPlayInfo(VFD_INFO_TRACK, 0, bSharedInfo(SI_TRACK_NO));
#endif //VCD_DGST_SHOW_MSG_ONLY
}
#endif
else if (fgIsIsoPlay() || fgIsCddaPlay())
{
/* ? */
}
break;
#endif /* #ifdef PLAYER_DIGEST */
default:
vOsdPosClear(wPos);
break;
}
if (fgIsUsrCtrlMode(bMode))
{
if (bCurrRemainType() != OSD_SHOW_DISABLE)
{
if (fgIsDvdPlay())
{
bDvdCheckRemainShow(FALSE, bCurrRemainType());
}
#ifdef VCD_SUPPORT
else if (fgIsVcdPlay())
{
bVcdCheckRemainShow(FALSE, bCurrRemainType());
}
#endif
#ifndef CDDA_USE_CDFS
else if (fgIsCddaPlay())
{
bCddaCheckRemainShow(FALSE, bCurrRemainType());
}
#endif
}
}
}
/************************************************************************
Function :
Description :
Parameter :
Return :
************************************************************************/
BOOL fgShowRepeatMode(BYTE bMode) large
{
BOOL fgRet = FALSE; /* default is continue update */
WORD wPos;
WORD wMsg = 0;
if (_rOsdStateCtx.fgTimePos == OSD_SHOW_TIME_LEFT)
{
if (fgIsIsoPlay()||fgIsPcdPlay())
{
wPos = OSD_POS_ISO_REPEAT_LEFT; // Adjust iso repeat position
}
else
{
wPos = OSD_POS_REPEAT;
}
}
else if (_rOsdStateCtx.fgTimePos == OSD_SHOW_TIME_RIGHT)
{
if (fgIsIsoPlay()||fgIsPcdPlay())
{
wPos = OSD_POS_ISO_REPEAT; // Adjust iso repeat position
}
else
{
wPos = OSD_POS_REPEAT_LEFT;
}
}
switch (bMode)
{
case SV_REPEAT_ALL:
if (fgIsIsoPlay()||fgIsPcdPlay()) // repeat msg for iso type
wMsg = OSD_MSG_MP3_REPEAT_FOLDER ;
else
wMsg = OSD_MSG_ICON_RPT_ALL;
fgRet = TRUE;
break;
case SV_REPEAT_TRACK:
case SV_REPEAT_LIST:
if (fgIsIsoPlay()||fgIsPcdPlay()) // repeat msg for iso type
wMsg = OSD_MSG_MP3_REPEAT_ONE ;
else
wMsg = OSD_MSG_ICON_RPT_TRK;
fgRet = TRUE;
break;
#if defined (DDISC_PB_SINGLE_ENABLED)
case SV_SINGLE: // repeat msg for iso type
wMsg = OSD_MSG_MP3_SINGLE;
fgRet = TRUE;
break;
#endif
case SV_REPEAT_TITLE:
wMsg = OSD_MSG_ICON_RPT_TT;
fgRet = TRUE;
break;
case SV_REPEAT_CHAPTER:
wMsg = OSD_MSG_ICON_RPT_CH;
fgRet = TRUE;
break;
case SV_REPEAT_NONE:
case SV_REPEAT_ABNONE:
wMsg = 0xffff;
fgRet = FALSE; /* continue update PBC state */
break;
default:
break;
}
#ifdef PLAYER_GOTO
// megaa Goto
if (fgIsInGoto())
{
if (wMsg == 0xffff)
{
vShowGotoRepeat(OSD_MSG_OFF);
}
else if (wMsg != 0)
{
vShowGotoRepeat(wMsg);
}
}
#endif
if ((_rOsdStateCtx.fgRepeatShow == TRUE)||fgIsPcdPlay())
{
if (wMsg == 0xffff)
{
vOsdPosClear(wPos);
}
else if (wMsg != 0)
{
vOsdPosShow(wPos, wMsg, OSD_NO_DISAPPEAR);
}
}
return (fgRet);
}
/************************************************************************
Function :
Description :
Parameter :
Return :
************************************************************************/
BOOL fgShowAuxCtrl(BYTE bMode) large
{
#ifdef PLAYER_FLMENU
//BOOL fgFlMenuOn = fgFsMenuIsMenuOn();
BOOL fgFlMenuOn = fgFlCheckStatus(FL_STATUS_IN_MENU);
WORD wTmp;
#endif
BOOL fgRet = FALSE; /* default is continue update */
WORD wPos;
if (_rOsdStateCtx.fgTimePos == OSD_SHOW_TIME_LEFT)
{
if (fgIsIsoPlay())
{
wPos = OSD_POS_ISO_REPEAT_LEFT; // Adjust iso repeat position
}
else
{
wPos = OSD_POS_REPEAT;
}
}
else if (_rOsdStateCtx.fgTimePos == OSD_SHOW_TIME_RIGHT)
{
if (fgIsIsoPlay())
{
wPos = OSD_POS_ISO_REPEAT; // Adjust iso repeat position
}
else
{
wPos = OSD_POS_REPEAT_LEFT;
}
}
switch (bMode)
{
case SV_REPEAT_SET_A:
#ifdef PLAYER_FLMENU
if (fgFlMenuOn)
{
vFlIpShowInfo(IP_INFO_USR_AUX_CTRL, bMode, 0);
}
else
#endif /* PLAYER_FLMENU */
{
#ifdef PLAYER_GOTO
if (fgIsInGoto())
{
vShowGotoPbc(OSD_MSG_ICON_RPT_A);
}
#endif /* PLAYER_GOTO */
vOsdPosShow(wPos, OSD_MSG_ICON_RPT_A, OSD_NO_DISAPPEAR);
}
fgRet = TRUE;
break;
case SV_REPEAT_LAST_SP: // temp use A-B icon
case SV_REPEAT_INSTANT: // temp use A-B icon
case SV_REPEAT_AB:
#ifdef PLAYER_FLMENU
if (fgFlMenuOn)
{
vFlIpShowInfo(IP_INFO_USR_AUX_CTRL, bMode, 0);
}
else
#endif
{
#ifdef PLAYER_GOTO
if (fgIsInGoto())
{
vShowGotoPbc(OSD_MSG_ICON_RPT_AB);
}
#endif
vOsdPosShow(wPos, OSD_MSG_ICON_RPT_AB, OSD_NO_DISAPPEAR);
}
fgRet = TRUE;
#ifdef KARAOKE_MIC_REC
if (bMode == SV_REPEAT_AB)
{
vMicRecCtrl(MIC_REC_CTRL_INIT);
}
#endif
break;
case SV_REPEAT_NONE:
case SV_REPEAT_ABNONE:
#ifdef PLAYER_FLMENU
if (fgFlMenuOn)
{
vFlIpShowInfo(IP_INFO_USR_AUX_CTRL, bMode, 0);
}
else
#endif
{
#ifdef PLAYER_GOTO
if (fgIsInGoto())
{
vShowGotoPbc(OSD_MSG_NULL);
}
#endif
vOsdPosClear(wPos);
}
#ifdef KARAOKE_MIC_REC
vMicRecCtrl(MIC_REC_CTRL_RESET);
#endif
fgRet = FALSE; /* continue update repeat mode and PBC state */
break;
default:
break;
}
return (fgRet);
}
/************************************************************************
Function :
Description :
Parameter :
Return :
************************************************************************/
static void vShowDiscType(BYTE bDiscType) large
{
/* vOsdPosClear(OSD_POS_INIT); */ /* No need, since disc type show is moved to layer 2 */
#ifdef VFD_HDCD_LED
VfdLed(0, 0xFF);
#endif
switch (bDiscType)
{
case SV_DVD_VIDEO:
vOsdPosShow(OSD_POS_DISC_TYPE, OSD_MSG_DVD_VIDEO, OSD_TIMEOUT);
break;
case SV_DVD_AUDIO:
#ifdef SUPPORT_DVD_AUDIO
vOsdPosShow(OSD_POS_DISC_TYPE, OSD_MSG_DVD_AUDIO, OSD_TIMEOUT);
#endif
break;
#ifdef VCD_SUPPORT
case SV_VCD3_0:
vOsdPosShow(OSD_POS_DISC_TYPE, OSD_MSG_VCD30, OSD_TIMEOUT);
break;
case SV_VCD2_0:
vOsdPosShow(OSD_POS_DISC_TYPE, OSD_MSG_VCD20, OSD_TIMEOUT);
break;
case SV_VCD1_1:
vOsdPosShow(OSD_POS_DISC_TYPE, OSD_MSG_VCD11, OSD_TIMEOUT);
break;
case SV_SVCD:
vOsdPosShow(OSD_POS_DISC_TYPE, OSD_MSG_SVCD, OSD_TIMEOUT);
break;
case SV_CVD:
vOsdPosShow(OSD_POS_DISC_TYPE, OSD_MSG_CVD, OSD_TIMEOUT);
break;
#endif /* #ifdef VCD_SUPPORT */
case SV_DATA:
vOsdPosClear(OSD_POS_DISC_TYPE);
break;
case SV_PCD: // - for KODAK picture CD.
/* FsMenu initial moved to vISOinit() */
vOsdPosShow(OSD_POS_DISC_TYPE, OSD_MSG_PICTURE_CD, OSD_TIMEOUT);
break;
case SV_CDDA:
vOsdPosShow(OSD_POS_DISC_TYPE, OSD_MSG_CD, OSD_TIMEOUT);
#ifndef CDDA_AUTO_PLAY
vOsdShowTrack(OSD_TOTAL, 0, bSharedInfo(SI_TRACK_NS), OSD_NO_DISAPPEAR);
#endif
break;
case SV_DTS_CS:
vOsdPosShow(OSD_POS_DISC_TYPE, OSD_MSG_DTS_CD, OSD_TIMEOUT);
vOsdShowTrack(OSD_TOTAL, 0, bSharedInfo(SI_TRACK_NS), OSD_NO_DISAPPEAR);
break;
case SV_CDG:
vOsdPosShow(OSD_POS_DISC_TYPE, OSD_MSG_CD_G, OSD_TIMEOUT);
vOsdShowTrack(OSD_TOTAL, 0, bSharedInfo(SI_TRACK_NS), OSD_NO_DISAPPEAR);
break;
case SV_HDCD:
#ifdef HDCD_EN
vOsdPosShow(OSD_POS_DISC_TYPE, OSD_MSG_HDCD, OSD_TIMEOUT);
#else
vOsdPosShow(OSD_POS_DISC_TYPE, OSD_MSG_CD, OSD_TIMEOUT);
#endif
vOsdShowTrack(OSD_TOTAL, 0, bSharedInfo(SI_TRACK_NS), OSD_NO_DISAPPEAR);
#ifdef VFD_HDCD_LED
VfdLed(0, 0xFF);
#endif
break;
case SV_MINI_DVD:
vOsdPosShow(OSD_POS_DISC_TYPE, OSD_MSG_MINI_DVD, OSD_TIMEOUT);
break;
#ifdef SUPPORT_SACD
case SV_SACD:
vOsdPosShow(OSD_POS_DISC_TYPE, OSD_MSG_SACD, OSD_TIMEOUT);
#endif
case SV_AUDIO_IN:
/* don't clear OSD */
break;
default:
vOsdPosClear(OSD_POS_DISC_TYPE);
break;
}
}
/************************************************************************
Function :
Description :
Parameter :
Return :
************************************************************************/
static void vShowAudioAppl(BYTE bType) large
{
BYTE bVocalMode = bAdspCurrVocal();
switch (bType)
{
case SV_A_APPL_KARA:
break;
case SV_A_APPL_SURR:
case SV_A_APPL_NONE:
default:
if (fgIsAc3Vocal(bVocalMode))
{
#ifdef PLAYER_KARAOKE
vAdspVocalAssist(VOCAL_NO_ASSIST);
#endif
}
break;
}
}
/************************************************************************
Function :
Description :
Parameter :
Return :
************************************************************************/
static void vShowVideoFormat(void) large
{
}
/************************************************************************
Function :
Description :
Parameter :
Return :
************************************************************************/
static void vShowVideoBitrate(void) large
{
#ifdef PLAYER_GOTO
if (fgIsInGoto())
{
vUpdateGotoShow(GOTO_SHOW_PANEL_BITRATE);
}
#endif
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -