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

📄 osdnd.c

📁 ct952 source code use for Digital Frame Photo
💻 C
📖 第 1 页 / 共 5 页
字号:
        return;    case MSG_ECHO:        _OSDND_ShowEcho();        return;    case MSG_SURROUND:        _OSDND_ShowSurround();        break;    case MSG_3D:        _OSDND_Show3D();        break;    case MSG_ANGLE_CTL:
        if (__SetupInfo.bAngleMarkDisplay == SETUP_CUSTOM_ANGLE_MARK_ON)
        {            _OSDND_ShowAngle();
        }
        else
            return;        break;    
    case MSG_AST_CTL:        _OSDND_ShowAST();
        break;    case MSG_SPST_CTL:        if (__bSPSTNs) // exist SP        {            _OSDND_ShowSPST();        }        else            return;        break;    case MSG_PROGRESS: //CoCo1.10, support progress bar        _OSDND_ShowProgressBar();        return;    default:        break;    }    //GDI_DrawString_909(0, &__OSDNDBottomMsgAttr, __pOSDUTLOutputString);    _OSDND_OutputBottomString();    if (_bOSDNDMsg == MSG_MUTE)    {        //Set to default state to prevent the string attributes are modified by icon.        __OSDNDBottomMsgAttr.bShadow1 = __OSDNDTempStringAttr.bShadow1;        __OSDNDBottomMsgAttr.bShadow2 = __OSDNDTempStringAttr.bShadow2;        __OSDNDBottomMsgAttr.bTextColor =  __OSDNDTempStringAttr.bTextColor;    }}//***************************************************************************//  Function    :   OSDND_ClearRegion//  Abstract    :   This function will clear the region.//  Arguments   :   bRegion: The region you want to clear.//  Return		:   none.//  Side Effect :   none.//  Notes       :   //***************************************************************************void OSDND_ClearRegion(BYTE bRegion){#ifdef SUPPORT_STB    if (__bChooseMedia == MEDIA_SELECT_STB)        return;#endif //    switch (bRegion)    {    case OSD_ND_UPPER_RIGHT_REGION:        _OSDNDRect.rect.wLeft = OSDND_UPPER_BACKGROUND_START_H;        //_OSDNDRect.rect.wTop = OSDND_UPPER_BACKGROUND_START_V;        //CoCo1.10, support OSD dynamic region        _OSDNDRect.rect.wTop = __OSDNDUpMsgAttr.wY;        _OSDNDRect.rect.wRight = OSDND_UPPER_BACKGROUND_RIGHT;        _OSDNDRect.rect.wBottom = OSDND_UPPER_BACKGROUND_BOTTOM;        break;    case OSD_ND_BOTTOM_REGION:        _OSDNDRect.rect.wLeft = OSDND_BOTTOM_BACKGROUND_START_H;        //_OSDNDRect.rect.wTop = OSDND_BOTTOM_BACKGROUND_START_V;        //CoCo1.10, support OSD dynamic region        _OSDNDRect.rect.wTop = __OSDNDBottomMsgAttr.wY;        _OSDNDRect.rect.wRight = OSDND_BOTTOM_BACKGROUND_START_RIGHT;        _OSDNDRect.rect.wBottom = _OSDNDRect.rect.wTop+ OSDND_BOTTOM_BACKGROUND_HEIGHT; //CoCo1.20, put the normal bottom meesage to be lower in PAL mode.        break;    default:        return;    }    _OSDNDRect.bColor = PAL_ENTRY_COLOR_TRANSPARENT;    GDI_FillRect_909(0, &_OSDNDRect);}//***************************************************************************//  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)    {        __pOSDUTLOutputString = aNDDVD;    }    else if (__wDiscType & BOOK_VCD) // include VCD1.0/ VCD1.1/ VCD2.0/ SVCD/ CVD    {        // check VCD title version        if (__wDiscType & BOOK_SVCD)            __pOSDUTLOutputString = aNDSVCD;        else if(__wDiscType & BOOK_CVD)            __pOSDUTLOutputString = aNDCVD;        else if(__wDiscType & VCD_2_0)        {            __pOSDUTLOutputString = aNDVCD20;        }        else if(__wDiscType & VCD_1_1)        {            __pOSDUTLOutputString = aNDVCD11;        }        else            __pOSDUTLOutputString = aNDVCD10;    }    else if (__wDiscType & BOOK_CDDA)    {        //if (__bCDDA_DTS & CDDA_DISC_DTS)        if (__bCDDA_DTS == CDDA_DTS)            __pOSDUTLOutputString = aNDCDDTS;        //else if (__bCDDA_DTS & CDDA_DISC_HDCD)        else if (__bCDDA_DTS == CDDA_HDCD)            __pOSDUTLOutputString = aNDHDCD;        //else if (__bCDDA_DTS & CDDA_DISC_CDG)        else if (__bCDDA_DTS == CDDA_CDG)            __pOSDUTLOutputString = aNDCDG;        else            __pOSDUTLOutputString = aNDCDDA;    }    else if (__wDiscType & CDROM_PICTURECD) //Kodak Picture CD    {        __pOSDUTLOutputString = aNDPictureCD;    }    else if (__wDiscType & CDROM_M1)    {
#ifdef SUPPORT_POWERON_MENU
        if (__bMMExtFilterMode & EXT_BIT_MP3)
        {
            if (__bMMExtFilterMode & EXT_BIT_JPG)
            {
                __pOSDUTLOutputString = aPOWERONIconPhotoMusic;
            }
            else
            {
                __pOSDUTLOutputString = aPOWERONIconMusic;
            }
        }
        else if (__bMMExtFilterMode & EXT_BIT_JPG)
        {
            __pOSDUTLOutputString = aPOWERONIconPhoto;
        }
        else
        {
            __pOSDUTLOutputString = aPOWERONIconMovie;
        }
#else        // wyc0.80, this variable need to use bit resolution here. Also remove AC3 & MPG ext type.        switch (__bMMExtFilterMode)        {
        case EXT_BIT_MP2:            __pOSDUTLOutputString = aNDMP2;            break;        case EXT_BIT_MP3:            __pOSDUTLOutputString = aNDMP3;            break;        case EXT_BIT_JPG:            __pOSDUTLOutputString = aNDJPEG;            break;        case EXT_BIT_DAT:            __pOSDUTLOutputString = aNDDAT;            break;        case EXT_BIT_VOB:            __pOSDUTLOutputString = aNDVOB;            break;        case EXT_BIT_WMA:            __pOSDUTLOutputString = aNDWMA;            break;
        default:            // wyc1.21-909, use new define.            if (__bChooseMedia != MEDIA_SELECT_DVD) //0==>CDROM/DVDROM, 1==>USB            {                __pOSDUTLOutputString = aNDUSB;            }            else            {                if (__bDVDROM)                    __pOSDUTLOutputString = aNDDVDROM;                else                               __pOSDUTLOutputString = aNDCDROM;            }            break;        }

#endif //SUPPORT_POWERON_MENU    }}//***************************************************************************//  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 (_bOSDNDMsg)    {    case MSG_OPEN:        if (_wOSDNDInfo)        {            __pOSDUTLOutputString = aNDOpen;                }        else        {            __pOSDUTLOutputString = aNDClose;                }        break;    case MSG_NEXT:        _OSDND_ShowNext();        break;    case MSG_PREV:        _OSDND_ShowPrevious();        break;    case MSG_RETURN:        __pOSDUTLOutputString = aNDReturn;        break;    case MSG_PLAYING:        __pOSDUTLOutputString = aNDPlay;        break;    case MSG_STOP:#ifdef  DOUBLE_STOP        if (__bCountStop==1)        {            __pOSDUTLOutputString = aNDPreStop;        }        else        #endif  // #ifdef DOUBLE_STOP        {            __pOSDUTLOutputString = aNDStop;        }        break;    case MSG_PAUSE:         __pOSDUTLOutputString = aNDPause;        break;    case MSG_FAST:         __pOSDUTLOutputString = aNDFast;        break;    case MSG_STEP:         __pOSDUTLOutputString = aNDStep;        break;    case MSG_FREEZE:         __pOSDUTLOutputString = aNDFreeze;        break;    case MSG_REPEAT:        _OSDND_ShowRepeatState();        break;    case MSG_REPEATAB:        _OSDND_ShowRepeatABState();        break;    case MSG_RANDOM:        if (_wOSDNDInfo)        {            __pOSDUTLOutputString = aNDRandomOn;        }        else        {            __pOSDUTLOutputString = aNDRandomOff;        }        break;    case MSG_PBC:
#ifndef NO_DISC_MODE        _OSDND_ShowPBC();
#endif //NO_DISC_MODE        break;    case MSG_TVMODE:        _OSDND_ShowTVMode();        break;    case MSG_RESUME:         __pOSDUTLOutputString = aNDResume;        break;
#ifndef NO_DISC_MODE //CoCo2.37    case MSG_MENU:        if (__bDomain == VTSM_DOM) // Root Menu        {            __pOSDUTLOutputString = aNDRootMenu;        }        else if (__bDomain == VMGM_DOM)  // Title Menu        {            __pOSDUTLOutputString = aNDTitleMenu;        }        break;
#endif  //#ifndef NO_DISC_MODE //CoCo2.37   
        /*#ifndef SUPPORT_GRAPH_ZOOM    case MSG_ZOOM:        _OSDND_ShowZoomState();        break;#endif    
        */
    case MSG_ZOOM_TEXT:
        _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 (_wOSDNDInfo)        {            __pOSDUTLOutputString = aNDVoiceCancelOn;        }        // voice cancel off        else        {            __pOSDUTLOutputString = aNDVoiceCancelOff;        }        break;
        */    case MSG_KARAOKE:                _OSDND_ShowKaraoke();        break;    case MSG_INVALID:		if (_wOSDNDInfo == OSD_ERR_DATA)		{			__pOSDUTLOutputString = aNDErrorData;			}		else if (_wOSDNDInfo == OSD_ERR_PARENTAL)		{			__pOSDUTLOutputString = aNDErrorParental;		}		else		{			__pOSDUTLOutputString = aNDInvalid;		}        break;    //case MSG_TRACK:    case MSG_NUMBER:        OSDUTL_PrepareOutputString();        OSDUTL_OutputNumFromIndex(_wOSDNDInfo);        break;    case MSG_JPEG_EFFECT:        _OSDND_ShowJPEGEffect();        break;    case MSG_ROTATE:        if (_wOSDNDInfo == HALJPEG_OPERATION_RC) //rotate right 90 degree        {            __pOSDUTLOutputString = aNDRotateRight;        }        else        {            __pOSDUTLOutputString = aNDRotateLeft;        }        break;    case MSG_FLIP:        if (_wOSDNDInfo == HALJPEG_OPERATION_FH)        {            __pOSDUTLOutputString = aNDFlipHorizontally;        }        else //vertial        {            __pOSDUTLOutputString = aNDFlipVertically;        }        break;    case MSG_PSCAN:        if (__SetupInfo.bProgressiveScan == SETUP_PROGRESSIVE_SCAN_ON)        {            __pOSDUTLOutputString = aNDpscan;        }        else        {            __pOSDUTLOutputString = aNDInterlace;        }        break;    case MSG_SCANFORWARD:    case MSG_SCANBACKWARD:    case MSG_SLOW:        if ((__wDiscType&CDROM_M1) && (__bAttrPlay == ATTR_JPG))        {            _OSDND_ShowSlideTransitionTime();        }        else        {            _OSDND_ShowPlayAction();        }        break;	case MSG_INTRO:		__pOSDUTLOutputString = aNDIntro;		break;	case MSG_FULLSCREEN:        if (_wOSDNDInfo)        {            __pOSDUTLOutputString = aNDFullScreenOn;                }        else        {            __pOSDUTLOutputString = aNDFullScreenOff;                }        break;    default:        break;    }}//***************************************************************************//  Function    :   _OSDND_ShowNext//  Abstract    :   This function will show "Next" info.//  Arguments   :   none.//  Return		:   none.//  Side Effect :   none.//  Notes       :   //***************************************************************************void _OSDND_ShowNext(void){    switch (_wOSDNDInfo)    {    case OSD_NEXT_PREV_CHAPTER:        __pOSDUTLOutputString = aNDNextChapter;        break;    case OSD_NEXT_PREV_PAGE:        __pOSDUTLOutputString = aNDNextPage;        break;

⌨️ 快捷键说明

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