📄 osdshow.c
字号:
for(i=0; i<pbStr[0]; i++)
{
vWriteNextSharedItem(pbStr[i+1]);
}
}
vSendOsdCmd();
if (fgIsLayer2(wPosIndex))
{
vSetSharedInfo(SH_OSD_TIMER_START + wPosIndex - OSD_POS_LAYER2_LINE1, OSD_NO_DISAPPEAR);
vSetLayer2Change(TRUE);
}
}
// *********************************************************************
// Function : void vOsdPasteMsgXYArg(WORD wX, WORD wY, BYTE bWbIdx, WORD wMsgIdx, BYTE *pbStr)
// Description :
// Parameter : None
// Return : None
// *********************************************************************
void vOsdPasteMsgXYArg(WORD wX, WORD wY, BYTE bWbIdx, WORD wMsgIdx, BYTE *pbStr) large
{
WORD wTmp;
BYTE i;
vWaitBusy();
vBeginWriteSharedGrp(SI_OSD_CMD_PRM_GRP, OSD_CMD_PASTE_MSG);
vWriteNextSharedItem(bWbIdx);
vWriteNextSharedItem(bLoByte(wX));
vWriteNextSharedItem(bHiByte(wX));
vWriteNextSharedItem(bLoByte(wY));
vWriteNextSharedItem(bHiByte(wY));
vWriteNextSharedItem(bLoByte(wMsgIdx));
vWriteNextSharedItem(bHiByte(wMsgIdx));
if (pbStr[0])
{
for(i=0; i<pbStr[0]; i++)
{
vWriteNextSharedItem(pbStr[i+1]);
}
}
vSendOsdCmd();
}
#if (defined(PLAYER_BOOKMARK) || defined(PLAYER_PROGRAM) || defined(PLAYER_DIGEST))
// *********************************************************************
// Function : void vOsdPosHili(BYTE bMode, WORD wPosIndex, BYTE bWidth)
// Description : show SELECT message,
// Parameter :
// Return : None
// *********************************************************************
void vOsdPosHili(BYTE bMode, WORD wPosIndex, BYTE bWidth) large
{
BYTE bWB;
WORD wEndX;
vHideHL(HL_1);
if (bMode == OSD_POS_HILI_CLEAR)
{
return;
}
if (fgIsPosValid(wPosIndex) == FALSE)
{
return;
}
bWB = bPosWB(wPosIndex);
if (bWidth == 0)
{
wEndX = wPosX(wPosIndex) + wPosW(wPosIndex);
}
else
{
wEndX = wPosX(wPosIndex) + bWidth * EFONT_WIDTH;
}
vShowWbHiliXY(bWB, HL_1,
wPosX(wPosIndex), wPosY(wPosIndex),
wEndX, wPosY(wPosIndex) + LINE_HEIGHT - 1);
vSetHLRng(HL_1, bWB);
vShowHL(HL_1);
}
#endif /* PLAYER_BOOKMARK || PLAYER_PROGRAM || PLAYER_DIGEST */
#if (defined(PLAYER_BOOKMARK) || defined(PLAYER_PROGRAM))
// *********************************************************************
// Function : void vOsdPosHead(WORD wPosIndex, BYTE bBtnIndex, WORD wMsg, char cOffset, BYTE bWidth)
// Description : show SELECT message,
// Parameter :
// Return : None
// *********************************************************************
#define BTN_MSG_Y_OFST 0
void vOsdPosHead(WORD wPosIndex, BYTE bBtnIndex, WORD wMsg, char cOffset, BYTE bWidth) large
{
vSetBtnCol(bPosWB(wPosIndex), 0, 1, 3, 3);
vCreateMsgButtonXY(bPosWB(wPosIndex),
bBtnIndex, 2, wMsg, 0xffff, BTN_MSG_Y_OFST,
wPosX(wPosIndex) + cOffset,
wPosY(wPosIndex),
wPosX(wPosIndex) + cOffset + bWidth,
wPosY(wPosIndex) + LINE_HEIGHT - 1);
vSelButton(bPosWB(wPosIndex), bBtnIndex);
}
#endif /* PLAYER_BOOKMARK || PLAYER_PROGRAM */
// *********************************************************************
// Function : void vOsdPosShowStr(WORD wPosIndex, BYTE *pbStr)
// Description :
// Parameter :
// Return : None
// *********************************************************************
void vOsdPosShowStr(WORD wPosIndex, BYTE *pbStr) large
{
#if 0 // fix for some strange bug???
WORD wX, wY;
BYTE bWB;
wX = wPosX(wPosIndex);
wY = wPosY(wPosIndex);
bWB = bPosWB(wPosIndex);
vOsdShowStrXY(wX, wY, bWB, pbStr);
#else
vOsdShowStrXY(wPosX(wPosIndex), wPosY(wPosIndex), bPosWB(wPosIndex), pbStr);
#endif
}
// *********************************************************************
// Function : WORD wOsdGetLcdMsg(BYTE bLcd0, BYTE bLco1)
// Description :
// Parameter : bState
// Return : None
// *********************************************************************
WORD wOsdGetLcdMsg(BYTE bLcd0, BYTE bLcd1) large
{
WORD wMsgId = DVD_SP_UNKNOWN_LCD_MSG;
switch (bLcd0)
{
case 'b':
{
switch (bLcd1)
{
case 'e':
wMsgId = OSD_MSG_AU_BELORUSSIAN;
break;
}
}
break;
case 'e':
{
switch (bLcd1)
{
case 'l':
wMsgId = OSD_MSG_AU_GREEK;
break;
case 'n':
wMsgId = OSD_MSG_OSDLANG_ENGLISH;
break;
case 's':
wMsgId = OSD_MSG_AU_SPANISH;
break;
case 't':
wMsgId = OSD_MSG_AU_ESTONIAN;
break;
}
}
break;
case 'k':
{
switch (bLcd1)
{
case 'o':
wMsgId = OSD_MSG_AU_KOREAN;
break;
case 'k':
wMsgId = OSD_MSG_AU_KAZAH;
break;
}
}
break;
case 'f':
{
switch (bLcd1)
{
case 'r':
wMsgId = OSD_MSG_AU_FRENCH;
break;
}
}
break;
case 'j':
{
switch (bLcd1)
{
case 'a':
wMsgId = OSD_MSG_AU_JAPANESE;
break;
}
}
break;
case 'l':
{
switch (bLcd1)
{
case 'v':
wMsgId = OSD_MSG_AU_LATVIAN;
break;
}
}
break;
case 'r':
{
switch(bLcd1)
{
case 'u':
wMsgId = OSD_MSG_AU_RUSSIAN;
break;
}
}
break;
case 't':
{
switch (bLcd1)
{
case 'h':
wMsgId = OSD_MSG_AU_THAI;
break;
}
}
break;
case 'u':
{
switch (bLcd1)
{
case 'k':
wMsgId = OSD_MSG_AU_UKRAINIAN;
break;
}
}
break;
case 'z':
{
switch (bLcd1)
{
case 'h':
wMsgId = OSD_MSG_AU_CHINESE;
break;
}
}
break;
default:
break;
}
return (wMsgId);
}
// *********************************************************************
// Function : WORD wOsdGetAudAtrMsg(BYTE bType)
// Description :
// Parameter : bState
// Return : None
// *********************************************************************
WORD wOsdGetAudAtrMsg(BYTE bType) large
{
WORD wMsgId = OSD_MSG_NULL;
switch (bType)
{
case SV_A_CODE_AAC:
wMsgId = OSD_MSG_AAC;
break;
case SV_A_CODE_HDCD:
wMsgId = OSD_MSG_HDCD;
break;
case SV_A_CODE_PCM:
if (fgIsDvdPlay())
{
wMsgId = OSD_MSG_LPCM;
}
else
{
wMsgId = OSD_MSG_PCM;
}
break;
case SV_A_CODE_AC3:
if (fgIsAinPlay())
{
wMsgId = OSD_MSG_ICON_DOLBY_DIGITAL;
}
else
{
wMsgId = OSD_MSG_AC3;
}
break;
case SV_A_CODE_MPEG:
wMsgId = OSD_MSG_MPEG;
break;
case SV_A_CODE_DTS:
#ifndef DTS_NO_DISPLAY //BillDen
wMsgId = OSD_MSG_DTS;
#else
wMsgId = OSD_MSG_NULL;
#endif
break;
case SV_A_CODE_SDDS:
wMsgId = OSD_MSG_SDDS;
break;
case SV_A_CODE_MP3:
wMsgId = OSD_MSG_MP3;
break;
case SV_A_CODE_WAV:
wMsgId = OSD_MSG_WAV;
break;
#ifdef SUPPORT_DVD_AUDIO
case SV_A_CODE_MLP:
wMsgId = OSD_MSG_MLP;
break;
#endif
case SV_A_CODE_NONE:
default:
#if 0
if (fgIsDvdPlay())
{
wMsgId = OSD_MSG_AC3;
}
else if (fgIsVcdPlay())
{
wMsgId = OSD_MSG_MPEG;
}
else if (fgIsIsoPlay())
{
wMsgId = OSD_MSG_MP3;
}
else if (fgIsCddaPlay())
{
wMsgId = OSD_MSG_PCM;
}
#else
wMsgId = OSD_MSG_NULL;
#endif
break;
}
return (wMsgId);
}
// *********************************************************************
// Function : WORD wOsdGetAudChMsg(BYTE bType)
// Description : Audio Channel Config
// Parameter : bState
// Return : None
// *********************************************************************
#if defined(AUDIO_IN_EN)
WORD wOsdGetAudChMsg(BYTE bType) large
{
#ifdef DVD_AUDIO_INFO_NO_CHNL
return (OSD_MSG_NULL);
#else /* !DVD_AUDIO_INFO_NO_CHNL */
WORD wMsgId = OSD_MSG_NULL;
switch (bType)
{
case SV_A_CH_MN:
case SV_A_CH_LL:
case SV_A_CH_RR:
wMsgId = OSD_MSG_1CH;
break;
case SV_A_CH_33_1:
wMsgId = OSD_MSG_61CH;
break;
case SV_A_CH_32_1:
wMsgId = OSD_MSG_51CH;
break;
case SV_A_CH_31_1:
case SV_A_CH_22_1:
wMsgId = OSD_MSG_41CH;
break;
case SV_A_CH_21_1:
case SV_A_CH_30_1:
wMsgId = OSD_MSG_31CH;
break;
case SV_A_CH_20_1:
wMsgId = OSD_MSG_21CH;
break;
case SV_A_CH_33_0:
wMsgId = OSD_MSG_6CH;
break;
case SV_A_CH_32_0:
wMsgId = OSD_MSG_5CH;
break;
case SV_A_CH_31_0:
case SV_A_CH_22_0:
wMsgId = OSD_MSG_4CH;
break;
case SV_A_CH_21_0:
case SV_A_CH_30_0:
wMsgId = OSD_MSG_3CH;
break;
case SV_A_CH_20_0:
default:
wMsgId = OSD_MSG_2CH;
break;
}
return (wMsgId);
#endif /* !DVD_AUDIO_INFO_NO_CHNL */
}
#endif
// *********************************************************************
// Number message table
// *********************************************************************
#if (defined(PLAYER_PROGRAM) || defined(PLAYER_BOOKMARK))
static code WORD pwNum2Msg[24] = {
OSD_MSG_NUM_01, OSD_MSG_NUM_02, OSD_MSG_NUM_03, OSD_MSG_NUM_04,
OSD_MSG_NUM_05, OSD_MSG_NUM_06, OSD_MSG_NUM_07, OSD_MSG_NUM_08,
OSD_MSG_NUM_09, OSD_MSG_NUM_10, OSD_MSG_NUM_11, OSD_MSG_NUM_12,
OSD_MSG_NUM_13, OSD_MSG_NUM_14, OSD_MSG_NUM_15, OSD_MSG_NUM_16,
OSD_MSG_NUM_17, OSD_MSG_NUM_18, OSD_MSG_NUM_19, OSD_MSG_NUM_20,
OSD_MSG_NUM_21, OSD_MSG_NUM_22, OSD_MSG_NUM_23, OSD_MSG_NUM_24
};
WORD wOsdGetNumMsg(BYTE bNum) large
{
if ((bNum == 0) || (bNum > 24))
{
return (OSD_MSG_NULL);
}
return (pwNum2Msg[bNum-1]);
}
#endif /* PLAYER_PROGRAM || PLAYER_BOOKMARK */
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -