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

📄 panel.~c

📁 ct952 source code use for Digital Frame Photo
💻 ~C
📖 第 1 页 / 共 3 页
字号:
    _VFD_CS_HI;    for (_bPanelTemp1 = 0; _bPanelTemp1 < 4; _bPanelTemp1++){}    _VFD_CS_LO;    _OutByteVFD(VFD_CTRL_MODE);                           // Command 4    _VFD_CS_HI;    for (_bPanelTemp1 = 0; _bPanelTemp1 < 4; _bPanelTemp1++){}    HAL_I2CSrc_Ctrl(MUTEX_ACTION_UNLOCK);    __icVFDnow=0x00;}//  ***************************************************************************//  Function    :   _Updata_System_Status//  Abstract    :   Display the information according to system status.//  Arguments   :   noe.//  Return      :   none//  Side Effect ://  ***************************************************************************//#pragma NOAREGvoid _Updata_System_Status(void){    //---- Disctype DVD CD VCD MP3 SVCD ----------------------------------------    if(__wDiscType & BOOK_DVD )    {#ifndef NO_DISC_MODE //CoCo2.37p        _bDisplayRam[VFD_DVD_ADDR] |= VFD_DVD;        if(__bSearchMode!=SEARCH_MODE_TIME)        {            _bDisplayRam[VFD_TITLE_ADDR] |= VFD_TITLE;            _bDisplayRam[VFD_CHAPTER_ADDR] |= VFD_CHAPTER;        }#endif //#ifndef NO_DISC_MODE //CoCo2.37p    }    else if(__wDiscType & BOOK_CDDA)    {        _bDisplayRam[VFD_CD_ADDR]  = VFD_CD;    }    else if(__wDiscType & CDROM_M1 && (MM_GetFileType(__MMPlayingItem.wDirID, __wPlayItem)== (EXTNAME_MP3)))///||EXTNAME_MP2||EXTNAME_WMA||EXTNAME_DTS||EXTNAME_AC3)))    {        _bDisplayRam[VFD_MP3_ADDR] = VFD_MP3;    }        /*            else if(__wDiscType & CDROM_M1 && (MM_GetFileType(__wPlayItem)==(EXTNAME_VOB)))///||EXTNAME_AVI)))         {         _bDisplayRam[VFD_JPEG_ADDR] = VFD_DVD;         }         else if(__wDiscType & CDROM_M1 && (MM_GetFileType(__wPlayItem)==(EXTNAME_MPG||EXTNAME_DAT)))         {         _bDisplayRam[VFD_JPEG_ADDR] = VFD_VCD;         }         */    else if(__wDiscType & CDROM_M1 && (MM_GetFileType(__MMPlayingItem.wDirID, __wPlayItem)==EXTNAME_JPG))    {        _bDisplayRam[VFD_JPEG_ADDR] = VFD_JPEG;    }            else if((__wDiscType & BOOK_SVCD)||(__wDiscType & BOOK_CVD))    {        _bDisplayRam[VFD_SVCD_ADDR]= VFD_SVCD;        _bDisplayRam[VFD_VCD_ADDR] = VFD_VCD;    }    else if(__wDiscType & BOOK_VCD)        _bDisplayRam[VFD_VCD_ADDR]= VFD_VCD;    //---- Repeat REPEAT 1 ALL -------------------------------------------------    if(__bRepeat != REPEAT_NONE)    {        _bDisplayRam[VFD_REPEAT_ADDR] |= VFD_REPEAT;        if(__bRepeat == REPEAT_DISC)        {            _bDisplayRam[VFD_REP_ALL_ADDR] |= VFD_REP_ALL;        }        else if(__bRepeat == REPEAT_TRACK)            _bDisplayRam[VFD_REP_1_ADDR]    |= VFD_REP_1;    }    //---- RepeatAB A -B -------------------------------------------------------    if(__bRepeatAB == REPEAT_A)    {        _bDisplayRam[VFD_REP_A_ADDR] |= VFD_REP_A;    }    else if(__bRepeatAB == REPEAT_AB)    {        _bDisplayRam[VFD_REP_A_ADDR] |= VFD_REP_A;        _bDisplayRam[VFD_REP_B_ADDR] |= VFD_REP_B;    }    //---- PBC------------------------------------------------------------------#ifndef NO_DISC_MODE //++CoCo2.37p    if(__btPBC)        _bDisplayRam[VFD_PBC_ADDR] |= VFD_PBC;#endif //#ifndef NO_DISC_MODE //++CoCo2.37p    //---- Random RAN ----------------------------------------------------------    if(__btRandom)        _bDisplayRam[VFD_RAN_ADDR] |= VFD_RAN;    //---- Program PROG ----------------------------------------------------------    if(__btProgram)        _bDisplayRam[VFD_PGM_ADDR] |= VFD_PGM;    //---- Play Pause |> ||-----------------------------------------------------    if(gcShowStatus.bPlayingMode == MSG_PAUSE)        _bDisplayRam[VFD_PAUSE_ADDR] |= VFD_PAUSE;    else if(gcShowStatus.bPlayingMode == MSG_PLAYING)        _bDisplayRam[VFD_PLAY_ADDR] |= VFD_PLAY;    //---- Audio  1L/2R --------------------------------------------------------    //if(gcShowStatus.bAudioChannel==AUDIO_STEREO)    if(__bModeChannel==AUDIO_STEREO) //CoCo1.21, remove gcShowStatus.bAudioChannel. use __bModeChannel to judge it    {        _bDisplayRam[VFD_L_ADDR] |= VFD_L;        _bDisplayRam[VFD_R_ADDR] |= VFD_R;    }    //else if(gcShowStatus.bAudioChannel== AUDIO_LL)    else if(__bModeChannel== AUDIO_LL)        _bDisplayRam[VFD_L_ADDR] |= VFD_L;    //else if(gcShowStatus.bAudioChannel== AUDIO_RR)    else if(__bModeChannel== AUDIO_RR)        _bDisplayRam[VFD_R_ADDR] |= VFD_R;    //---- DVD information DOLBY 5.1 DTS ANGLE ---------------------------------#ifndef NO_DISC_MODE //CoCo2.37p    if(__wDiscType & BOOK_DVD)    {        if(__bACHN==6)            _bDisplayRam[VFD_51CH_ADDR] |= VFD_51CH;        if(__bAudioType == HAL_AUDIO_AC3)            _bDisplayRam[VFD_DOLBY_ADDR] |= VFD_DOLBY;        else if(__bAudioType== HAL_AUDIO_DTS)            _bDisplayRam[VFD_DTS_ADDR] |= VFD_DTS;        if(__bAGL_Ns)            _bDisplayRam[VFD_ANGLE_ADDR] |= VFD_ANGLE;    }#endif //#ifndef NO_DISC_MODE //CoCo2.37p}//  ***************************************************************************//  Function    :   _LETT_To_DisplayRam//  Abstract    :   Built _bLettArray Letter to _bDisplayRam//  Arguments   :   none//  Return      :   none//  Side Effect :       none//  ***************************************************************************//#pragma NOAREGSvoid _LETT_To_DisplayRam(void){    for (i=0;i<VFD_NUM;i++)    {        _bDisplayRam[i*2] = _bLettArray[i];    }    //if((gcShowStatus.bSetProgram)||(__bSearchMode==SEARCH_MODE_TITLE_CHAPTER))#ifndef NO_DISC_MODE //CoCo2.37p        if((__bSearchMode==SEARCH_MODE_TITLE_CHAPTER))        return;#endif //#ifndef NO_DISC_MODE //CoCo2.37p        if (__bMediaSelectUI)        return;    if( _bLettArray == _bLettTimeMessage)    {        if(!(((__wDiscType & BOOK_SVCD)||(__wDiscType & BOOK_CVD)||(__wDiscType & BOOK_VCD))&&(__wPlayItem >= 999)))        {            if(!(__wDiscType & CDROM_M1 && (MM_GetFileType(__MMPlayingItem.wDirID, __wPlayItem)==EXTNAME_JPG)))            {                //if (LOBYTE(gcShowStatus.wCurrentTime)%2)#ifdef Col_Flash            	                if (((OS_GetSysTimer()- __dwTimerCount_PANEL_SHIFT)>COUNT_500_MSEC))                {                    __dwTimerCount_PANEL_SHIFT=OS_GetSysTimer();                    if (COL_Flash==0)                        COL_Flash=1;                    else                        COL_Flash=0;                    }#else                COL_Flash=1;#endif                if (COL_Flash==1)                 {                    _bDisplayRam[VFD_HOUR_COL_ADDR] |= VFD_HOUR_COL;                    _bDisplayRam[VFD_MIN_COL_ADDR]  |= VFD_MIN_COL;                                }                else                {                    _bDisplayRam[VFD_HOUR_COL_ADDR] &= ~VFD_HOUR_COL;                    _bDisplayRam[VFD_MIN_COL_ADDR]  &= ~VFD_MIN_COL;                     }              	            }        }    }    if (Message_length>0)    {        _bDisplayRam[VFD_HOUR_COL_ADDR] &= ~VFD_HOUR_COL;        _bDisplayRam[VFD_MIN_COL_ADDR]  &= ~VFD_MIN_COL;     }                }//  ***************************************************************************//  Function    :   _ShowTime//  Abstract    :   Built Time Message Letter (_bLettTimeMessage)//                                      to _bDisplayRam//  Arguments   :   wTime//  Return      :   none//  Side Effect :       none//  ***************************************************************************//#pragma NOAREGS// LLY2.53, expand the time value from WORD to DWORD unit// Since, we will use [23:16]:hour, [15:8]:min, [7:0]: sec//void _ShowTime( WORD wTime) // ** TCH0.50;void _ShowTime(DWORD dwTime) // ** TCH0.50;{    //    BYTE bHour, bMin, bSec,bData;    //    extern BYTE  __bTitle;    //    extern WORD  __wChapter;    extern WORD __wPlayItem;    Message_length = 0;    if((__wDiscType & BOOK_SVCD)||(__wDiscType & BOOK_CVD)||(__wDiscType & BOOK_VCD))    {        if(__wPlayItem > 999)        {            for (i=0;i<10;i++)                _bLettArray_O[i]=0;                                Message_length=4;            _bLettArray = _bLettTimeMessage;            _bLettArray_O[0] = 0;            _bLettArray_O[1] = 0;            _bLettArray_O[2] = LETT_P;            _bLettArray_O[3] = LETT_b;            _bLettArray_O[4] = LETT_C;             goto  DIRECT_FILL_PBC_MESSAGE;        }    }    _bLettArray = _bLettTimeMessage;    if(__wDiscType & BOOK_DVD )    {    }    else if(__wDiscType & CDROM_M1)    {    }    else if(__wDiscType & BOOK_CDDA)    {    }    else if((__wDiscType & BOOK_SVCD)||(__wDiscType & BOOK_CVD)||(__wDiscType & BOOK_VCD))    {        if(__wPlayItem < 999)        {        }    }    if(((__wDiscType & BOOK_SVCD)||(__wDiscType & BOOK_CVD)||(__wDiscType & BOOK_VCD))&&(__wPlayItem >= 999))    {    }    else    {        if(__wDiscType & CDROM_M1 && (MM_GetFileType(__MMPlayingItem.wDirID, __wPlayItem)==EXTNAME_JPG))        {            _bLettArray[0] = aNumMap[gcShowStatus.wCurrentTrack/100];            _bPanelTemp1 = gcShowStatus.wCurrentTrack % 100;            _bLettArray[1] = aNumMap[_bPanelTemp1/10];            _bLettArray[2] = aNumMap[_bPanelTemp1%10];        }        else        {            // LLY2.53, modify the procedure for time calculation            // Since, current we will use DWORD to keep time value            // ie. [23:16]:hour, [15:8]: min, [7:0]: sec            BYTE bIdx=0#if 0                _bPanelTemp2=HIBYTE(wTime);            _bPanelTemp1=_bPanelTemp2/60;            _bPanelTemp2=_bPanelTemp2%60;            _bLettArray[0] = aNumMap[_bPanelTemp1];            _bLettArray[1] = aNumMap[_bPanelTemp2/10];            _bLettArray[2] = aNumMap[_bPanelTemp2%10];            _bPanelTemp1=LOBYTE(wTime);            _bLettArray[3] = aNumMap[_bPanelTemp1/10];            _bLettArray[4] = aNumMap[_bPanelTemp1%10];#endif  // #if 0            // Hour part            _bPanelTemp1 = (BYTE)(HIWORD(dwTime));            if(_bPanelTemp1 >= 10)            {                _bLettArray[bIdx++] = aNumMap[_bPanelTemp1/10];            }            _bLettArray[bIdx++] = aNumMap[_bPanelTemp1%10];            // Min part            _bPanelTemp1 = HIBYTE(LOWORD(dwTime));            _bLettArray[bIdx++] = aNumMap[_bPanelTemp1/10];            _bLettArray[bIdx++] = aNumMap[_bPanelTemp1%10];            // Sec part            _bPanelTemp1 = LOBYTE(LOWORD(dwTime));            _bLettArray[bIdx++] = aNumMap[_bPanelTemp1/10];            _bLettArray[bIdx++] = aNumMap[_bPanelTemp1%10];        }    }DIRECT_FILL_PBC_MESSAGE:    _LETT_To_DisplayRam();    if(__wDiscType & BOOK_DVD)                      // Add TITLE CHAPTER    {#ifndef NO_DISC_MODE //CoCo2.37p        if(gcShowStatus.bPlayingMode == MSG_STOP)        {            _bDisplayRam[VFD_TITLE_ADDR] &= ~VFD_TITLE;            _bDisplayRam[VFD_CHAPTER_ADDR] &= ~VFD_CHAPTER;        }        else        {            _bDisplayRam[VFD_TITLE_ADDR] |= VFD_TITLE;            _bDisplayRam[VFD_CHAPTER_ADDR] |= VFD_CHAPTER;        }#endif //#ifndef NO_DISC_MODE //CoCo2.37p    }    else if(__wPlayItem < 999)    {        _bDisplayRam[VFD_TRACK_ADDR] |= VFD_TRACK;    }}//  ***************************************************************************//  Function    :   _Show_Program_Message//  Abstract    :   Show _bPrgramData to panel//  Arguments   :   none//  Return      :   none//  Side Effect :       none//  ***************************************************************************void    _Show_Program_Message(void){    _bLettArray = _bLettTimeMessage;    _bLettArray[0]=LETT_P;    _bLettArray[1]=LETT_r;    _bLettArray[2]=LETT_g;}//  ***************************************************************************//  Function    :   _Show_GotoTime_Message//  Abstract    :   Show gototime message to panel//  Arguments   :   none//  Return      :   none//  Side Effect :       none//  ***************************************************************************void    _Show_GotoTime_Message(void){    extern  BYTE __bTimeHour, __bTimeMin, __bTimeSec;    //extern  BYTE _bTimeIndex; //--CoCo1.21, may remove _bTimeIndex, it is fixed value 0xff for now    _bLettArray = _bLettTimeMessage;    _bLettArray[0] = aNumMap[__bTimeHour];    _bLettArray[1] = aNumMap[__bTimeMin/10];    _bLettArray[2] = aNumMap[__bTimeMin%10];    _bLettArray[3] = aNumMap[__bTimeSec/10];    _bLettArray[4] = aNumMap[__bTimeSec%10];    // --CoCo1.21, the following case never exist ==> for _bTimeIndex is 0xff#ifdef GOTOTIME_LEFTTORIGHT    switch(_bTimeIndex)    {    case 0:        _bLettArray[0] = LETT_DASH;    case 1:        _bLettArray[1] = LETT_DASH;    case 2:        _bLettArray[2] = LETT_DASH;    case 3:        _bLettArray[3] = LETT_DASH;    case 4:        _bLettArray[4] = LETT_DASH;        break;    }#endif}//  ***************************************************************************//  Function    :   _Show_Search_Message//  Abstract    :   Show DVD search message to panel//  Arguments   :   none//  Return      :   none//  Side Effect :       none//  ***************************************************************************void    _Show_Search_Message(void){    extern BYTE __bTitle;    extern WORD __wChapter;    _bLettArray = _bLettTimeMessage;#ifndef NO_DISC_MODE //CoCo2.37p        if(__bSearchMode==SEARCH_MODE_TITLE_CHAPTER)    {        _bLettArray[0] = aNumMap[__bTitle/10];        _bLettArray[1] = aNumMap[__bTitle%10];        _bLettArray[2] = 0;        _bLettArray[3] = aNumMap[LOBYTE(__wChapter)/10];        _bLettArray[4] = aNumMap[LOBYTE(__wChapter)%10];    }#endif //#ifndef NO_DISC_MODE //CoCo2.37p        if(__bSearchMode==SEARCH_MODE_TIME)    {        _Show_GotoTime_Message();    }}#endif  // #ifdef USE_VFD_CTRL#endif  // #ifndef NO_PANEL

⌨️ 快捷键说明

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