📄 vcdshow.c
字号:
/**********************************************************************/
/*************** MTK CONFIDENTIAL & COPYRIGHTED ****************/
/*************** ****************/
/*************** $Modtime:: 04/08/27 9:40a $ ****************/
/*************** $Revision:: 1 $ ****************/
/*************** ****************/
/*************** Description : OSD ****************/
/*************** ****************/
/*************** Company : MediaTek Inc. ****************/
/*************** Programmer : Peter Huang ****************/
/**********************************************************************/
#define _VCDSHOW_C_
#pragma NOAREGS
#include "general.h"
#include "osdshow.h"
#ifdef VCD_SUPPORT
// *********************************************************************
// Function : vOsdShowAudioN(BYTE bMode, BYTE bCurr, BYTE bTotal)
// Description :
// Parameter : bState
// Return : None
// *********************************************************************
void vOsdShowAudioN(BYTE bMode, BYTE bCurr, BYTE bTotal) large
{
BYTE pbStr[2];
if (bMode == OSD_AUDIO_CLEAR)
{
vOsdClearInputField(OSD_POS_AUDIO);
vOsdPosClear(OSD_POS_AUDIO);
return;
}
pbStr[0] = 1;
if ((bTotal > 4) || (bTotal < 1))
{
return;
}
/* error check */
if (bCurr > bTotal)
{
bCurr = bTotal;
}
/* vOsdPosShow(OSD_POS_AUDIO, OSD_MSG_AUDIO, OSD_TIMEOUT); */
/* clear by input state */
pbStr[1] = bCurr + '0';
vOsdPosShowArg(OSD_POS_AUDIO, OSD_MSG_AUDIO_N, bMode & OSD_AUDIO_TIME_MASK, pbStr);
}
#endif /* #ifdef VCD_SUPPORT */
// Fix me
#ifdef VCD_SUPPORT
extern xdata DWRD _dCreatedWB;
// *********************************************************************
// Function : void vOsdShowVcdTimeSearch(BYTE bNum, BYTE bType, BYTE *pbTime)
// Description :
// Parameter :
// Return : None
// Note :
// *********************************************************************
void vOsdShowVcdTimeSearch(BYTE bNum, BYTE bType, BYTE *pbTime) large
{
BYTE pbStr[5];
BYTE bTime;
BYTE bTmp;
if (bType == OSD_SEARCH_CLEAR)
{
vOsdClearInputField(OSD_POS_VCD_SEARCH);
vOsdPosClear(OSD_POS_VCD_SEARCH);
return;
}
pbStr[0] = 4;
pbStr[1] = '-';
pbStr[2] = '-';
pbStr[3] = '-';
pbStr[4] = '-';
if (bNum <= 4)
{
if (bNum == 0)
{
vOsdSetInputField(OSD_POS_VCD_SEARCH);
}
if (bNum >= 1)
{
pbStr[1] = pbTime[0] + '0';
}
if (bNum >= 2)
{
pbStr[2] = pbTime[1] + '0';
}
if (bNum >= 3)
{
pbStr[3] = pbTime[2] + '0';
}
if (bNum == 4)
{
pbStr[4] = pbTime[3] + '0';
}
bTime = OSD_NO_DISAPPEAR;
}
else if (bNum == OSD_VCD_SEARCH_END)
{
vOsdClearInputField(OSD_POS_VCD_SEARCH);
pbStr[0] = 4;
pbStr[1] = pbTime[0] + '0';
pbStr[2] = pbTime[1] + '0';
pbStr[3] = pbTime[2] + '0';
pbStr[4] = pbTime[3] + '0';
bTime = OSD_TIMEOUT_SHORT;
}
else
{
return;
}
// Fix Me
vOsdSetInputField(OSD_POS_VCD_SEARCH);
if (bType == OSD_SEARCH_DISC)
{
vOsdPosShowArg(OSD_POS_VCD_SEARCH, OSD_MSG_DISC_GOTO, bTime, pbStr);
}
else if (bType == OSD_SEARCH_TRACK)
{
vOsdPosShowArg(OSD_POS_VCD_SEARCH, OSD_MSG_TRACK_GOTO, bTime, pbStr);
}
else
{
vOsdPosShowArg(OSD_POS_VCD_SEARCH, OSD_MSG_GOTO, bTime, pbStr);
}
}
#endif /* #ifdef VCD_SUPPORT */
// *********************************************************************
// Function : void vOsdShowTrack(BYTE bState, BYTE bTrack, BYTE bTotal, BYTE bTime)
// Description :
// Parameter : bState -
// OSD_TRACK = 0,
// OSD_TOTAL,
// Return : None
// *********************************************************************
void vOsdShowTrack(BYTE bState, BYTE bTrack, BYTE bTotal, BYTE bTime) large
{
BYTE pbNum[5];
/* check track range */
if (bTotal > 99)
{
bTotal = 0;
}
if (bTrack > 99)
{
bTrack = 0;
}
bTrack = bHEXToBCD(bTrack);
bTotal = bHEXToBCD(bTotal);
switch(bState)
{
case OSD_TRACK:
pbNum[0] = 2;
pbNum[1] = BCD_HI(bTrack) + '0';
pbNum[2] = BCD_LO(bTrack) + '0';
vOsdPosShowArg(OSD_POS_PLAY_INFO, OSD_MSG_TRACK, bTime, pbNum);
break;
case OSD_TOTAL:
pbNum[0] = 2;
pbNum[1] = BCD_HI(bTotal) + '0';
pbNum[2] = BCD_LO(bTotal) + '0';
vOsdPosShowArg(OSD_POS_PLAY_INFO, OSD_MSG_TOTAL, bTime, pbNum);
break;
case OSD_TOTAL_TRACK:
pbNum[0] = 4;
pbNum[1] = BCD_HI(bTrack) + '0';
pbNum[2] = BCD_LO(bTrack) + '0';
pbNum[3] = BCD_HI(bTotal) + '0';
pbNum[4] = BCD_LO(bTotal) + '0';
vOsdPosShowArg(OSD_POS_PLAY_INFO, OSD_MSG_TRACK_TOTAL, bTime, pbNum);
break;
default:
break;
}
}
#ifdef VCD_SUPPORT
// *********************************************************************
// Function : void vOsdShowSelectTrk(BYTE bNo, BYTE bNs, BYTE bType, BYTE bTime) large
// Description : show SELECT message,
// Parameter :
// Return : None
// *********************************************************************
void vOsdShowSelectTrk(BYTE bNo, BYTE bNs, BYTE bType, BYTE bTime) large
{
BYTE pbNum[5];
BOOL fgHili;
if (bType == OSD_SELECT_CLEAR)
{
vOsdClearInputField(OSD_POS_VCD_SEARCH);
vOsdPosClear(OSD_POS_VCD_SEARCH);
return;
}
else
{
if (bType & OSD_SELECT_HILI)
{
fgHili = TRUE;
bType &= (~OSD_SELECT_HILI);
}
else
{
fgHili = FALSE;
}
}
bNo = bHEXToBCD(bNo);
bNs = bHEXToBCD(bNs);
pbNum[0] = 4;
if (bType == 0)
{
pbNum[1] = '-';
pbNum[2] = '-';
}
else if (bType <= 2)
{
#ifdef NO_ADD10_KEY
if (bType == 1)
{
pbNum[1] = '-';
pbNum[2] = BCD_LO(bNo) + '0';
}
else if (bType == 2)
{
pbNum[1] = BCD_HI(bNo) + '0';
pbNum[2] = BCD_LO(bNo) + '0';
}
else
{
pbNum[1] = '-';
pbNum[2] = '-';
}
#else /* use ADD10 key */
if (bNo == 0)
{
pbNum[1] = '-';
pbNum[2] = '-';
}
else
{
pbNum[1] = BCD_HI(bNo) + '0';
if ((BCD_LO(bNo) == 0) && (bType != 2))
{
#ifdef ADD10_SHOW_10
pbNum[2] = '0';
#else
pbNum[2] = '-';
#endif
}
else
{
pbNum[2] = BCD_LO(bNo) + '0';
}
}
#endif /* use ADD10 key */
}
pbNum[3] = BCD_HI(bNs) + '0';
pbNum[4] = BCD_LO(bNs) + '0';
if (fgHili)
{
vOsdSetInputField(OSD_POS_VCD_SEARCH);
}
else
{
vOsdClearInputField(OSD_POS_VCD_SEARCH);
}
vOsdPosShowArg(OSD_POS_VCD_SEARCH, OSD_MSG_SELECT_TRACK, bTime, pbNum);
}
#endif /* #ifdef VCD_SUPPORT */
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -