📄 osdnd.c
字号:
//***************************************************************************// Function : _OSDND_ShowPlayAction// Abstract : show play action.// Arguments : none.// Return : none.// Side Effect : none.// Notes : //***************************************************************************void _OSDND_ShowPlayAction(void){ OSDUTL_PrepareOutputString(); switch (_bOSDNDMsg) { case MSG_SCANFORWARD: OSDUTL_CopyStringFromIndex(aNDScanF); break; case MSG_SCANBACKWARD: OSDUTL_CopyStringFromIndex(aNDScanB); break; case MSG_SLOW: OSDUTL_CopyStringFromIndex(aNDSlow); break; default: break; } OSDUTL_CopyStringFromIndex(aNDSpeed); /* if (_bOSDNDMsg == MSG_SLOW) {#ifdef SUPPORT_LANGUAGE_STUDYING //kevin1.10 extern WORD __wSlowSpeed; if (__wSlowSpeed == 2) OSDUTL_OutputNumFromIndex(75); else //4 OSDUTL_OutputNumFromIndex(50); #else OSDUTL_OutputNumFromIndex(1); OSDUTL_CopyStringFromIndex(aNDSlash); #endif }#ifdef SUPPORT_LANGUAGE_STUDYING //kevin1.10 if (_bOSDNDMsg == MSG_SLOW) OSDUTL_CopyStringFromIndex(aNDPercent); else #endif OSDUTL_OutputNumFromIndex(_bSpeedFactor); */ if (_bOSDNDMsg == MSG_SLOW) {#if (SLOW_MODE_CONFIG != NORMAL_SLOW_MODE) extern WORD __wSlowSpeed; extern BYTE __bLangStudyFlag; // wyc2.17-909S, show different OSD in SLOW or language study mode. if (__bLangStudyFlag == FALSE) //normal slow { OSDUTL_OutputNumFromIndex(1); OSDUTL_CopyStringFromIndex(aNDSlash); } else //language studying. { if (__wSlowSpeed == 2) { OSDUTL_OutputNumFromIndex(75); } else //4 { OSDUTL_OutputNumFromIndex(50); } OSDUTL_CopyStringFromIndex(aNDPercent); return; }#else OSDUTL_OutputNumFromIndex(1); OSDUTL_CopyStringFromIndex(aNDSlash); #endif // } OSDUTL_OutputNumFromIndex(_bSpeedFactor);}//***************************************************************************// Function : _OSDND_OutputErrorDisc// Abstract : This function will Output error disc info.// Arguments : none.// Return : none.// Side Effect : none.// Notes : //***************************************************************************void _OSDND_OutputErrorDisc(void){
#ifdef NO_DISC_MODE
if(__bDiscInfo & DISCINFO_UNRECOGNIZE)
{
// wyc1.21-909
if (__bChooseMedia != MEDIA_SELECT_DVD) //0==>CDROM/DVDROM, 1==>USB
{
__pOSDUTLOutputString = aNDNoPlayableFile;
}
}
else
{
// wyc1.21-909
if (__bChooseMedia != MEDIA_SELECT_DVD) //0==>CDROM/DVDROM, 1==>USB
{
__pOSDUTLOutputString = aNDNoUSBDevice;
}
}
#else if (__bDiscInfo & DISCINFO_ENCRYPT) { __pOSDUTLOutputString = aNDEncrypt; } else if(__bDiscInfo & DISCINFO_REGION_ERROR) { __pOSDUTLOutputString = aNDErrRegionCode; } else if(__bDiscInfo & DISCINFO_UNRECOGNIZE) { // wyc1.21-909 if (__bChooseMedia != MEDIA_SELECT_DVD) //0==>CDROM/DVDROM, 1==>USB { __pOSDUTLOutputString = aNDNoPlayableFile; } else { __pOSDUTLOutputString = aNDWrongDisc; } } else if(__bDiscInfo & DISCINFO_DAMAGED) { __pOSDUTLOutputString = aNDDamageDisc; } else { // wyc1.21-909 if (__bChooseMedia != MEDIA_SELECT_DVD) //0==>CDROM/DVDROM, 1==>USB { __pOSDUTLOutputString = aNDNoUSBDevice; } else { __pOSDUTLOutputString = aNDNoDisc; } }
#endif //NO_DISC_MODE}//***************************************************************************// Function : _OSDND_Show10Plus// Abstract : This function will show the info. for 10+.// Arguments : none.// Return : none.// Side Effect : none.// Notes : //***************************************************************************void _OSDND_Show10Plus(void){ OSDUTL_PrepareOutputString(); OSDUTL_OutputNumFromIndex((WORD)(_wOSDNDInfo/10)); OSDUTL_CopyStringFromIndex(aNDDash);}//***************************************************************************// Function : _OSDND_ShowSelection// Abstract : Show "SELECT XX-XX" on screen.// Arguments : wParam, HIBYTE means the 1st number// LOBYTE means the 2nd number// Return : none.// Side Effect : none.// Notes : //***************************************************************************void _OSDND_ShowSelection(void){ OSDUTL_PrepareOutputString(); OSDUTL_CopyStringFromIndex(aNDSelect); OSDUTL_OutputNumFromIndex(LOBYTE(_wOSDNDInfo)); OSDUTL_CopyStringFromIndex(aNDDash); OSDUTL_OutputNumFromIndex(HIBYTE(_wOSDNDInfo)); OSDUTL_CopyStringFromIndex(aNDSpace);}//***************************************************************************// Function : _OSDND_ShowTime// Abstract : This function will show the time.// Arguments : none.// Return : none.// Side Effect : none.// Notes : //***************************************************************************void _OSDND_ShowTime(void){ OSDUTL_PrepareOutputString(); switch (_bOSDNDMsg) { // absolute time/ absolute remain time, ie disc unit case MSG_ABSTIME: case MSG_REMAIN_ABSTIME: OSDUTL_CopyStringFromIndex(aNDDisc); break; // relative playing time/ relative remain time, ie. track unit case MSG_RELTIME: case MSG_REMAIN_RELTIME: OSDUTL_CopyStringFromIndex(aNDTrack); break; // title playing time/ title remain time case MSG_TITLE_TIME: case MSG_REMAIN_TITLE_TIME: OSDUTL_CopyStringFromIndex(aNDTitle); break; // chapter playing time/ chapter remain time case MSG_CHAPTER_TIME: case MSG_REMAIN_CHAPTER_TIME: OSDUTL_CopyStringFromIndex(aNDChapter); break; } switch (_bOSDNDMsg) { case MSG_REMAIN_ABSTIME: case MSG_REMAIN_RELTIME: case MSG_REMAIN_TITLE_TIME: case MSG_REMAIN_CHAPTER_TIME: OSDUTL_CopyStringFromIndex(aNDRemain); break; case MSG_ABSTIME: case MSG_RELTIME: case MSG_TITLE_TIME: case MSG_CHAPTER_TIME: OSDUTL_CopyStringFromIndex(aNDPlus); break; default: break; } OSDUTL_ShowHourMinSec();}//***************************************************************************// Function : _OSDND_ShowDebugNum// Abstract : This function will show the number for debug. (VER xxx, ERR xxx)// Arguments : none.// Return : none.// Side Effect : none.// Notes : //***************************************************************************void _OSDND_ShowDebugNum(void){ OSDUTL_PrepareOutputString(); if (_bOSDNDMsg == MSG_VERSION) OSDUTL_CopyStringFromIndex(aNDVersion); else //MSG_ERROR OSDUTL_CopyStringFromIndex(aNDError); OSDUTL_OutputNumFromIndex(_wOSDNDInfo);}//***************************************************************************// Function : _OSDND_ShowAudio// Abstract : Call this funciton to show audio info.// Arguments : none.// Return : none.// Side Effect : none.// Notes : //***************************************************************************void _OSDND_ShowAudio(void){ switch (__bModeChannel) { case AUDIO_STEREO: __pOSDUTLOutputString = aNDLR; break; case AUDIO_LL: __pOSDUTLOutputString = aNDLL; break; case AUDIO_RR: __pOSDUTLOutputString = aNDRR; break;#ifdef DOLBY_CERTIFICATION case AUDIO_MIXED: __pOSDUTLOutputString = aNDMixed; break;#endif case AUDIO_3D: __pOSDUTLOutputString = aND3DAudio; break; } }//***************************************************************************// Function : _OSDND_ShowVolume// Abstract : Call this function to show volume bar.// Arguments : none.// Return : none.// Side Effect : none.// Notes : //***************************************************************************void _OSDND_ShowVolume(void){ __pOSDUTLOutputString = aNDVolume; _wOSDNDHPos = __OSDNDBottomMsgAttr.wX; //GDI_DrawString_909(0, &__OSDNDBottomMsgAttr, __pOSDUTLOutputString); _OSDND_OutputBottomString(); _wOSDNDHPos += GDI_GetStringWidth_909(__pOSDUTLOutputString); //show volume bar if (__bOSDClearNDBRegion) { _OSDNDRect.rect.wLeft = _wOSDNDHPos; _OSDNDRect.rect.wRight = _wOSDNDHPos+OSDND_DISPLAY_VOLUME_BAR_WIDTH+OSDND_DISTANCE_FONT_VOLUME_BAR*2; _OSDNDRect.rect.wTop = __OSDNDBottomMsgAttr.wY; _OSDNDRect.rect.wBottom = __OSDNDBottomMsgAttr.wY+OSDND_FONT_HEIGHT-1; _OSDNDRect.bColor = __OSDNDBottomMsgAttr.bBackground; GDI_FillRect_909(0, &_OSDNDRect); } _wOSDNDHPos += OSDND_DISTANCE_FONT_VOLUME_BAR; _bOSDNDTemp = LOBYTE(_wOSDNDInfo); _OSDNDVolumeBar.bBgColor = __OSDNDBottomMsgAttr.bBackground; _OSDNDVolumeBar.bBarColor = OSDND_PALETTE_ENTRY_BAR_FG; _OSDNDVolumeBar.bFrameColor = OSDND_PALETTE_ENTRY_UPPER_RIGHT_STRING; //Alan2.36, Mantis #2241 _OSDNDVolumeBar.bOriention = ORIENTION_HORIZONTAL; _OSDNDVolumeBar.rect.wLeft = _wOSDNDHPos; _OSDNDVolumeBar.rect.wRight = _wOSDNDHPos + OSDND_DISPLAY_VOLUME_BAR_WIDTH; _OSDNDVolumeBar.rect.wTop = __OSDNDBottomMsgAttr.wY + (OSDND_FONT_HEIGHT-OSDND_DISPLAY_VOLUME_BAR_HEIGHT)/2; _OSDNDVolumeBar.rect.wBottom = _OSDNDVolumeBar.rect.wTop + OSDND_DISPLAY_VOLUME_BAR_HEIGHT; _OSDNDVolumeBar.wVolume = (WORD)_bOSDNDTemp*100/OSDND_DISPLAY_VOLUME_BAR_RANGE; // percent GDI_DrawVolumeBar_909(0, &_OSDNDVolumeBar); OSDUTL_PrepareOutputString(); if (_bOSDNDTemp < 10) { OSDUTL_OutputNumFromIndex(0); } OSDUTL_OutputNumFromIndex(_bOSDNDTemp); _wOSDNDHPos += OSDND_DISPLAY_VOLUME_BAR_WIDTH+OSDND_DISTANCE_FONT_VOLUME_BAR; _wOSDNDTemp = __OSDNDBottomMsgAttr.wX; __OSDNDBottomMsgAttr.wX = _wOSDNDHPos; //GDI_DrawString_909(0, &__OSDNDBottomMsgAttr, __pOSDUTLOutputString); _OSDND_OutputBottomString(); __OSDNDBottomMsgAttr.wX = _wOSDNDTemp;}//***************************************************************************// Function : _OSDND_ShowAudioOutput// Abstract : Show auio output.// Arguments : none.// Return : none.// Side Effect : none.// Notes : //***************************************************************************void _OSDND_ShowAudioOutput(void){ switch (__SetupInfo.bAudioAnalogOut) { case SETUP_AUDIO_ANALOG_OUT_51CH: __pOSDUTLOutputString = aND51Channel; break; case SETUP_AUDIO_ANALOG_OUT_OFF: __pOSDUTLOutputString = aNDAnalogOff; break; case SETUP_AUDIO_ANALOG_OUT_2CH: default: __pOSDUTLOutputString = aND2Channel; break; } }//***************************************************************************// Function : _OSDND_ShowAudioKeyControl// Abstract : Call this function to show audio key bar.// Arguments : none.// Return : none.// Side Effect : none.// Notes : //***************************************************************************void _OSDND_ShowAudioKeyControl(void){ __pOSDUTLOutputString = aNDTone; _wOSDNDHPos = __OSDNDBottomMsgAttr.wX; //GDI_DrawString_909(0, &__OSDNDBottomMsgAttr, __pOSDUTLOutputString); _OSDND_OutputBottomString(); _wOSDNDHPos += GDI_GetStringWidth_909(__pOSDUTLOutputString); if (__bOSDClearNDBRegion) { _OSDNDRect.rect.wLeft = _wOSDNDHPos; _OSDNDRect.rect.wRight = _wOSDNDHPos+OSDND_DISPLAY_AUDIO_KEY_BAR_WIDTH+OSDND_DISTANCE_FONT_AUDIO_KEY_BAR*2; _OSDNDRect.rect.wTop = __OSDNDBottomMsgAttr.wY; _OSDNDRect.rect.wBottom = __OSDNDBottomMsgAttr.wY + +OSDND_FONT_HEIGHT-1; _OSDNDRect.bColor = __OSDNDBottomMsgAttr.bBackground; GDI_FillRect_909(0, &_OSDNDRect); } _wOSDNDHPos += OSDND_DISTANCE_FONT_AUDIO_KEY_BAR; _OSDNDVolumeBar.bBgColor = __OSDNDBottomMsgAttr.bBackground; _OSDNDVolumeBar.bBarColor = OSDND_PALETTE_ENTRY_BAR_FG; _OSDNDVolumeBar.bFrameColor = OSDND_PALETTE_ENTRY_UPPER_RIGHT_STRING; //Alan2.36, Mantis #2241 _OSDNDVolumeBar.bOriention = ORIENTION_HORIZONTAL; _OSDNDVolumeBar.rect.wLeft = _wOSDNDHPos; _OSDNDVolumeBar.rect.wRight = _wOSDNDHPos + OSDND_DISPLAY_AUDIO_KEY_BAR_WIDTH; _OSDNDVolumeBar.rect.wTop = __OSDNDBottomMsgAttr.wY + (OSDND_FONT_HEIGHT-OSDND_DISPLAY_AUDIO_KEY_BAR_HEIGHT)/2; _OSDNDVolumeBar.rect.wBottom = _OSDNDVolumeBar.rect.wTop + OSDND_DISPLAY_AUDIO_KEY_BAR_HEIGHT; _OSDNDVolumeBar.wVolume = (WORD)_wOSDNDInfo*100/OSDND_DISPLAY_AUDIO_KEY_BAR_RANGE; // percent GDI_DrawVolumeBar_909(0, &_OSDNDVolumeBar); _wOSDNDHPos +=OSDND_DISPLAY_AUDIO_KEY_BAR_WIDTH+OSDND_DISTANCE_FONT_AUDIO_KEY_BAR; _wOSDNDTemp = __OSDNDBottomMsgAttr.wX; __OSDNDBottomMsgAttr.wX = _wOSDNDHPos;
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -