⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 osdnd.c

📁 车载电子影音系统dvd播放系统原程序代码
💻 C
📖 第 1 页 / 共 5 页
字号:
        GDI_CopyCodeString(aNDLanguageHindi[_bOSDLang]);
        break;
    case 0x7468: // Thai, 'th'
        GDI_CopyCodeString(aNDLanguageThai[_bOSDLang]);
        break;
    case 0x6974: // Italian, 'it'
        GDI_CopyCodeString(aNDLanguageItalian[_bOSDLang]);
        break;
    case 0x6573: // Spanish, 'es'
        GDI_CopyCodeString(aNDLanguageSpanish[_bOSDLang]);
        break;
    case 0x7074: // Portuguese, 'pt'
        GDI_CopyCodeString(aNDLanguagePortuguese[_bOSDLang]);
        break;
    case 0x6e6c: // Dutch, 'nl'
        GDI_CopyCodeString(aNDLanguageDutch);
        break;
    case 0x656c: // Greek, 'el'
        GDI_CopyCodeString(aNDLanguageGreek);
        break;
    case 0x6c61: // Latin, 'la'
        GDI_CopyCodeString(aNDLanguageLatin);
        break;
    case 0x6e6f: // Norwegian, 'no'
        GDI_CopyCodeString(aNDLanguageNorwegian);
        break;
    case 0x6461: // Danish, 'da'
        GDI_CopyCodeString(aNDLanguageDanish);
        break;
    case 0x6669: // Finnish, 'fi'
        GDI_CopyCodeString(aNDLanguageFinnish);
        break;
    case 0x7376: // Swedish, 'sv'
        GDI_CopyCodeString(aNDLanguageSwedish);
        break;
    case 0x6875: // Hungarian, 'hu'
        GDI_CopyCodeString(aNDLanguageHungarian);
        break;
    case 0x706c: // Polish, 'pl'
        GDI_CopyCodeString(aNDLanugagePolish);
        break;
    case 0x6973: // Icelandic, 'is'
        GDI_CopyCodeString(aNDLanguageIcelandic);
        break;
    case 0x6977: // Hebrew, 'iw'
        GDI_CopyCodeString(aNDLanguageHebrew);
        break;
    case 0x6373: // Czech, 'cs'
        GDI_CopyCodeString(aNDLanguageCzech);
        break;
    case 0x6172: // Arabic, 'ar'
        GDI_CopyCodeString(aNDLanguageArabic);
        break;
    case 0x6d73: // Malay, 'ms'
        GDI_CopyCodeString(aNDLanguageMalay);
        break;
    case 0x696e: // Indonesian, 'in'
        GDI_CopyCodeString(aNDLanguageIndonesian);
        break;
    case 0x6865: // Hebrew, 'he' **** Is it 'heb' or 'her'
        GDI_CopyCodeString(aNDLanguageHebrew);
        break;
    case 0x7472: // Turkish, 'tr'
        GDI_CopyCodeString(aNDLanguageTurkish);
        break;
    case 0x6872: // Croatian, 'hr'
        GDI_CopyCodeString(aNDLanguageCroatian);
        break;
    case 0x6267: // Bulgarian, 'bg'
        GDI_CopyCodeString(aNDLanguageBulgarian);
        break;
    default:
        GDI_CopyCodeString(aNDLanguageOthers[_bOSDLang]);
        break;
    }
}

//***************************************************************************
//  Function    :   _OSDND_ShowDiscType
//  Abstract    :   This function will show disc type according to __wDiscType.
//  Arguments   :   none.
//  Return		:   none.
//  Side Effect :   none.
//  Notes       :   
//***************************************************************************
void _OSDND_ShowDiscType(void)
{
    if (__wDiscType & BOOK_DVD)
    {
        GDI_CopyCodeString(aNDDVD);
    }
    else if (__wDiscType & BOOK_VCD) // include VCD1.0/ VCD1.1/ VCD2.0/ SVCD/ CVD
    {
        // check VCD title version
        if (__wDiscType & BOOK_SVCD)
            GDI_CopyCodeString(aNDSVCD);
        else if(__wDiscType & BOOK_CVD)
            GDI_CopyCodeString(aNDCVD);
        else if(__wDiscType & VCD_2_0)
        {
            GDI_CopyCodeString(aNDVCD20);
        }
        else if(__wDiscType & VCD_1_1)
        {
            GDI_CopyCodeString(aNDVCD11);
        }
        else
            GDI_CopyCodeString(aNDVCD10);
    }
    else if (__wDiscType & BOOK_CDDA)
    {
        if (__bCDDA_DTS & CDDA_DISC_DTS)
            GDI_CopyCodeString(aNDCDDTS);
#ifndef SHOW_6_DISPLAY_MODE		
        else if (__bCDDA_DTS & CDDA_DISC_HDCD)
            GDI_CopyCodeString(aNDHDCD);
#else
        else if ((__bDiscHDCDType) || (__bCDDA_DTS & CDDA_DISC_HDCD))//wendy 10.1 show HDCD disctype
			GDI_CopyCodeString(aNDHDCD);
#endif		
//LJY1.24, use NO_CDG to determine whether CDG is supported.
#ifndef NO_CDG 
        else if (__bCDDA_DTS & CDDA_DISC_CDG)
            GDI_CopyCodeString(aNDCDG);
#endif        
        else
            GDI_CopyCodeString(aNDCDDA);
    }
    else if (__wDiscType & CDROM_PICTURECD) //Kodak Picture CD
    {
        GDI_CopyCodeString(aNDPictureCD);
    }
    else if (__wDiscType & CDROM_M1)
    {
        //CoCo1.10, add new file type for CD-ROM title.
        switch (__bEXTAttr)
        {
        case EXTNAME_MP2:
            GDI_CopyCodeString(aNDMP2);
            break;
        case EXTNAME_MP3:
            GDI_CopyCodeString(aNDMP3);
            break;
        case EXTNAME_JPG:
            GDI_CopyCodeString(aNDJPEG);
            break;
#ifdef DOLBY_CERTIFICATION
        case EXTNAME_AC3:
            GDI_CopyCodeString(aNDAC3);
            break;
#endif
#if defined(SUPPORT_CDROM_DAT) || defined(SUPPORT_DVDROM_DAT)
        case EXTNAME_DAT:
            GDI_CopyCodeString(aNDDAT);
            break;
#endif
#ifdef SUPPORT_FM_VOB
        case EXTNAME_VOB:
            GDI_CopyCodeString(aNDVOB);
            break;
#endif
        case EXTNAME_MPG:
            GDI_CopyCodeString(aNDMPG);
            break;
        case EXTNAME_WMA:
            GDI_CopyCodeString(aNDWMA);
            break;
        default:
            GDI_CopyCodeString(aNDCDROM);
            break;
        }
    }
}

//***************************************************************************
//  Function    :   _OSDND_ShowString
//  Abstract    :   This function will show string for debugging usage.
//  Arguments   :   none.
//  Return		:   none.
//  Side Effect :   none.
//  Notes       :   
//***************************************************************************
void _OSDND_ShowString(void)
{
    _bOSDVPTemp = CT_strlen((char *)__bMsgString);
    if (_bOSDVPTemp > GDI_STRING_LENGTH)
        _bOSDVPTemp = GDI_STRING_LENGTH;

    __wGDIString[0] = _bOSDVPTemp;

    for(__bTemp = 0; __bTemp <_bOSDVPTemp; __bTemp++)
    {
        __wGDIString[__bTemp+1] = OSD_TransformChar(__bMsgString[__bTemp], 1);
    }
}

//***************************************************************************
//  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)
{
#if defined (SERIAL_DEBUG) || defined(SUPPORT_PRINTF)
    if (_bOSDMsg == MSG_VERSION)
        printf("\nVER 0x%x", _wOSDInfo);
    else if (_bOSDMsg == MSG_ERRCODE)
        printf("\nErr 0x%x", _wOSDInfo);
#ifdef SUPPORT_RISC_DETECT_ERROR
    else if (_bOSDMsg == MSG_DECODE_ERROR)
        printf("\nDecode Error:0x%x", _wOSDInfo);
#endif
#endif

    if (_bOSDMsg == MSG_VERSION)
        GDI_CopyCodeString(aVersion);
    else if (_bOSDMsg == MSG_ERRCODE)
        GDI_CopyCodeString(aError);
#ifdef SUPPORT_RISC_DETECT_ERROR
    else if (_bOSDMsg == MSG_DECODE_ERROR)
        GDI_CopyCodeString(aDecodeError);
#endif
    
    _bOSDIndex = __wGDIString[0] + 1;
    OSD_OutputNumFromIndex(_wOSDInfo, 1);
}


//***************************************************************************
//  Function    :   _OSDND_OutputKeyString
//  Abstract    :   This function will output the string of the keys according to the message.
//  Arguments   :   bMessage: The message.
//  Return		:   none.
//  Side Effect :   none.
//  Notes       :   
//***************************************************************************
void _OSDND_OutputKeyString(void)
{
    switch (_bOSDMsg)
    {
    case MSG_OPEN:
        if (_wOSDInfo)
        {
            _OSDND_OutputTextEx(aNDOpen[_bOSDLang]);        
        }
        else
        {
            _OSDND_OutputTextEx(aNDClose[_bOSDLang]);        
        }
        break;
    case MSG_NEXT:
        _OSDND_ShowNext();
        break;
    case MSG_PREV:
        _OSDND_ShowPrevious();
        break;
    case MSG_RETURN:
         _OSDND_OutputTextEx(aNDReturn[_bOSDLang]);
        break;
    case MSG_PLAYING:
         _OSDND_OutputTextEx(aNDPlay[_bOSDLang]);
        break;
    case MSG_STOP:
#ifdef  DOUBLE_STOP
        if (__bCountStop==1)
        {
            _OSDND_OutputTextEx(aNDPreStop[_bOSDLang]);
        }
        else        
#endif  // #ifdef DOUBLE_STOP
        {
            _OSDND_OutputTextEx(aNDStop[_bOSDLang]);
        }
        break;
    case MSG_PAUSE:
         _OSDND_OutputTextEx(aNDPause[_bOSDLang]);
        break;
    case MSG_FAST:
         _OSDND_OutputTextEx(aNDFast[_bOSDLang]);
        break;
    case MSG_STEP:
         _OSDND_OutputTextEx(aNDStep[_bOSDLang]);
        break;
    case MSG_FREEZE:
         _OSDND_OutputTextEx(aNDFreeze[_bOSDLang]);
        break;
    case MSG_REPEAT:
        _OSDND_ShowRepeatState();
        break;
    case MSG_REPEATAB:
        _OSDND_ShowRepeatABState();
        break;
    case MSG_RANDOM:
        if (_wOSDInfo)
        {
            _OSDND_OutputTextEx(aNDRandomOn[_bOSDLang]);
        }
        else
        {
            _OSDND_OutputTextEx(aNDRandomOff[_bOSDLang]);
        }
        break;
    case MSG_PBC:
        _OSDND_ShowPBC();
        break;
    case MSG_TVMODE:
        _OSDND_ShowTVMode();
        break;
    case MSG_RESUME:
         _OSDND_OutputTextEx(aNDResume[_bOSDLang]);
        break;
    case MSG_MENU:
        if (__bDomain == VTSM_DOM) // Root Menu
        {
            _OSDND_OutputTextEx(aNDRootMenu[_bOSDLang]);
        }
        else if (__bDomain == VMGM_DOM)  // Title Menu
        {
            _OSDND_OutputTextEx(aNDTitleMenu[_bOSDLang]);
        }
        break;
    case MSG_ZOOM:
        _OSDND_ShowZoomState();
        break;
    case MSG_VIDEO_OUTPUT:
        _OSDND_ShowVideoOutput();
        break;
    case MSG_VOCAL:
    case MSG_AUTOVOCAL:
        _OSDND_ShowVocal();
        break;
    case MSG_VOICECANCEL:
        // voice cancel on
        if (_wOSDInfo)
        {
            _OSDND_OutputTextEx(aNDVoiceCancelOn[_bOSDLang]);
        }
        // voice cancel off
        else
        {
            _OSDND_OutputTextEx(aNDVoiceCancelOff[_bOSDLang]);
        }
        break;
    case MSG_KARAOKE:        
        _OSDND_ShowKaraoke();
        break;
    case MSG_INVALID:
		if (_wOSDInfo == OSD_ERR_DATA)
		{
			_OSDND_OutputTextEx(aNDErrorData);	
		}
		else if (_wOSDInfo == OSD_ERR_PARENTAL)
		{
			_OSDND_OutputTextEx(aNDErrorParental);
		}
		else
		{
			_OSDND_OutputTextEx(aNDInvalid[_bOSDLang]);
		}
        break;
    case MSG_TRACK:
    case MSG_NUMBER:
        OSD_OutputNum(_wOSDInfo, OSDND_FONT_INDEX);
        _OSDND_OutputUpString();
        break;
    case MSG_JPEG_EFFECT: //CoCo.087, Because the fonts > 14, separate it to normal keys.
        _OSDND_ShowJPEGEffect();
        break;
    case MSG_ROTATE:
        if (_wOSDInfo == HAL_JPEG_OPERATION_RC) //rotate right 90 degree
        {
            _OSDND_OutputTextEx(aNDRotateRight[_bOSDLang]);
        }
        else
        {
            _OSDND_OutputTextEx(aNDRotateLeft[_bOSDLang]);
        }
        break;
    case MSG_FLIP:
        if (_wOSDInfo == HAL_JPEG_OPERATION_FH)
        {
            _OSDND_OutputTextEx(aNDFlipHorizontally[_bOSDLang]);
        }
        else //vertial
        {
            _OSDND_OutputTextEx(aNDFlipVertically[_bOSDLang]);
        }
        break;
    case MSG_PSCAN:
        if (__SetupInfo.bProgressiveScan == SETUP_PROGRESSIVE_SCAN_ON)
        {
            _OSDND_OutputTextEx(aNDpscan[_bOSDLang]);
        }
        else

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -