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

📄 osdprgm.c

📁 车载电子影音系统dvd播放系统原程序代码
💻 C
📖 第 1 页 / 共 5 页
字号:
					__bProgramTitle = _bOSDPRGMTemp;					__wGDIString[1] = aDigit[__bProgramTitle/10];					__wGDIString[2] = aDigit[__bProgramTitle%10];       				}				else				{					__wGDIString[1] = CHAR_UNDERLIN;					__wGDIString[2] = CHAR_UNDERLIN;       				}				*/				//CoCo1.21, replace the above code				if ((!__bProgramTitle) && _bOSDPRGMTemp)					__bProgramTitle = _bOSDPRGMTemp;				//if (__bProgramTitle) //Kevin1.23, CHAR_UNDERLIN					_OSDPRGM_OutputNum(__bProgramTitle, 2);								GDI_SetTextColor(TEXT_BG_COLOR, GDI_ENTRY_4B_COLOR_YELLOW);				GDI_DRAW_STRING (MAIN_FRAME_X0+FRAME_THICKNESS+95, MAIN_FRAME_Y0+FRAME_THICKNESS+ENTRY_HEIGHT*(_bMainHighlightPos-1));             }#ifdef SUPPORT_SIMPLE_FM_PROGRAM //Kevin1.10            else if (__wDiscType & CDROM_M1) //no Chapter Frame for VCD             {                				__bProgramCurrentIndex = _bMainStart+_bMainHighlightPos-1;								GDI_SetTextColor(TEXT_FG_COLOR, GDI_ENTRY_4B_COLOR_BLACK);				//CoCo1.21, Initialize __wGDIString array				for (__bTemp = 1; __bTemp < 5; __bTemp++)				{					__wGDIString[__bTemp] = CHAR_UNDERLIN;				}								__wGDIString[0] = 4; //digits				/* --CoCo1.21				__wTemp = __ProgIdxList[__bProgramCurrentIndex-1].wSubIndex;				if (__wProgramChapter)                            				{										__wGDIString[1] = aDigit[__wProgramChapter/1000];					__wTemp = __wProgramChapter%1000;					__wGDIString[2] = aDigit[__wTemp/100];       					__wTemp %= 100;					__wGDIString[3] = aDigit[__wTemp/10];					__wGDIString[4] = aDigit[__wTemp%10];				}				else if (__wTemp)				{					__wProgramChapter = __wTemp; 					__wGDIString[1] = aDigit[__wProgramChapter/1000];					__wTemp = __wProgramChapter%1000;					__wGDIString[2] = aDigit[__wTemp/100];       					__wTemp %= 100;					__wGDIString[3] = aDigit[__wTemp/10];					__wGDIString[4] = aDigit[__wTemp%10];      				}				else				{					__wGDIString[1] = CHAR_UNDERLIN;					__wGDIString[2] = CHAR_UNDERLIN;   					__wGDIString[3] = CHAR_UNDERLIN;					__wGDIString[4] = CHAR_UNDERLIN;                             				}				*/				//CoCo1.21, replace the above code				_OSDPRGM_UpdateProgramChapter(4);				GDI_SetTextColor(TEXT_BG_COLOR, GDI_ENTRY_4B_COLOR_CENTER);				GDI_DRAW_STRING (MAIN_FRAME_X0+FRAME_THICKNESS+145, MAIN_FRAME_Y0+FRAME_THICKNESS+ENTRY_HEIGHT*(_bMainHighlightPos-1)); 												_bPrgmDigitPos=PROGRAM_NUM_CURSOR_TITLE;				__wGDIString[0] = 3; //digits				__wTemp = __ProgIdxList[__bProgramCurrentIndex-1].wSubIndex; 				/* --CoCo1.21				if (__bProgramTitle)                            				{					__wGDIString[1] = aDigit[__bProgramTitle/100];					__bTemp = __bProgramTitle%100;					__wGDIString[2] = aDigit[__bTemp/10];       					__wGDIString[3] = aDigit[__bTemp%10];				}				else if (__wTemp) //not empty //file: 1~ (stored in the array)  1~ (display on UI)				{					__bProgramTitle = __ProgIdxList[__bProgramCurrentIndex-1].bMainIndex+1; //dir: 0~ (stored in the array)  1~ (display on UI)					__wGDIString[1] = aDigit[__bProgramTitle/100];					__bTemp = __bProgramTitle%100;					__wGDIString[2] = aDigit[__bTemp/10];       					__wGDIString[3] = aDigit[__bTemp%10];       				}								else				{					__wGDIString[1] = CHAR_UNDERLIN;					__wGDIString[2] = CHAR_UNDERLIN; 					__wGDIString[3] = CHAR_UNDERLIN;                             				}				*/				//CoCo1.21, replace the above code				if ((!__bProgramTitle) && __wTemp)					__bProgramTitle = __ProgIdxList[__bProgramCurrentIndex-1].bMainIndex+1; //dir: 0~ (stored in the array)  1~ (display on UI)				//if (__bProgramTitle) //Kevin1.23, CHAR_UNDERLIN					_OSDPRGM_OutputNum(__bProgramTitle, 3);								GDI_SetTextColor(TEXT_BG_COLOR, GDI_ENTRY_4B_COLOR_YELLOW);				GDI_DRAW_STRING (MAIN_FRAME_X0+FRAME_THICKNESS+80, MAIN_FRAME_Y0+FRAME_THICKNESS+ENTRY_HEIGHT*(_bMainHighlightPos-1));             }#endif //#ifdef SUPPORT_SIMPLE_FM_PROGRAM 			        }#endif //#ifdef SUPPORT_PRGM_NUM_INPUT 		        __bKey = KEY_NO_KEY;        break;                    case KEY_RIGHT:#ifdef SUPPORT_PRGM_NUM_INPUT //Kevin1.06        if (__wDiscType & BOOK_DVD || __wDiscType & CDROM_M1)        {            if (_bPrgmDigitPos & PROGRAM_NUM_CURSOR_CHAPTER)            {                _OSDPRGM_ProcessNumInput(PRGM_NUMBERINPUT_CHECK, NULL);                _bPrgmDigitPos = PROGRAM_NUM_CURSOR_CHAPTER; //_bPrgmDigitPos is cleared by the above            }        }        else            _OSDPRGM_ProcessNumInput(PRGM_NUMBERINPUT_CHECK, NULL);#endif        if ( (_bCurrentFrame==MAIN_FRAME) && !(_bMainStart+_bMainHighlightPos-1) )  //Clear All        {            //do nothing        }        else        {   #ifndef SUPPORT_PRGM_NUM_INPUT             if (__wDiscType & BOOK_DVD) //no Chapter Frame for VCD                     {                if (_bCurrentFrame!=CHAPTER_FRAME)                {                    _SetClearHighlight(CLEAR_HIGHLIGHT);                    _bCurrentFrame++;                    _SetClearHighlight(SET_HIGHLIGHT);                        }    				                if (_bCurrentFrame == TITLE_FRAME )                {                    //Kevin0.87, add					//uncomment when DVD/VCD is in the loader                    DVD_ParseInfo ( DVD_TOTAL_CHAPTERS, &__dwTemp, (WORD)(_bTitleStart+_bTitleHighlightPos-1) );                                 _wTotalChapter = __dwTemp;                               //_wTotalChapter=(_bTitleStart+_bTitleHighlightPos-1); //comment when DVD/VCD is in the loader					                    _ShowChapterList();                    _bCurrentFrame = TITLE_FRAME; /////highlight remains in Title Frame                      }            }#else //#ifndef SUPPORT_PRGM_NUM_INPUT            __wNumberQueue = 0;    //clear			            if (__wDiscType & BOOK_DVD) //no Chapter Frame for VCD                     {                if (_bCurrentFrame==MAIN_FRAME)                {                    if (_bPrgmDigitPos & PROGRAM_NUM_CURSOR_TITLE)                    {                        _SetClearHighlight(CLEAR_HIGHLIGHT); //clear whole yellow highlight bar                        __bProgramCurrentIndex = _bMainStart+_bMainHighlightPos-1;						                        GDI_SetTextColor(TEXT_FG_COLOR, GDI_ENTRY_4B_COLOR_BLACK);                        __wGDIString[0] = 2; //2 digits 						//CoCo1.21, Initialize __wGDIString array here.						_OSDPRGM_InitialOutputString(CHAR_UNDERLIN);                           _bOSDPRGMTemp = __ProgIdxList[__bProgramCurrentIndex-1].bMainIndex;						/* --CoCo1.21                        if (__bProgramTitle)                                                    {                            __wGDIString[1] = aDigit[__bProgramTitle/10];                            __wGDIString[2] = aDigit[__bProgramTitle%10];                               }                        else if (_bOSDPRGMTemp)                        {                            __bProgramTitle = _bOSDPRGMTemp;                            __wGDIString[1] = aDigit[__bProgramTitle/10];                            __wGDIString[2] = aDigit[__bProgramTitle%10];                               }                        else                        {                            __wGDIString[1] = CHAR_UNDERLIN;                            __wGDIString[2] = CHAR_UNDERLIN;                               }						*/						//CoCo1.21, replace the above code						if ((!__bProgramTitle) && _bOSDPRGMTemp)							__bProgramTitle = _bOSDPRGMTemp;						//if (__bProgramTitle) //Kevin1.23, CHAR_UNDERLIN							_OSDPRGM_OutputNum(__bProgramTitle, 2);						                        GDI_SetTextColor(TEXT_BG_COLOR, GDI_ENTRY_4B_COLOR_CENTER);                        GDI_DRAW_STRING (MAIN_FRAME_X0+FRAME_THICKNESS+95, MAIN_FRAME_Y0+FRAME_THICKNESS+ENTRY_HEIGHT*(_bMainHighlightPos-1));                                                 _bPrgmDigitPos=PROGRAM_NUM_CURSOR_CHAPTER;						/*--CoCo1.21                        __wTemp = __ProgIdxList[__bProgramCurrentIndex-1].wSubIndex;                        if (__wProgramChapter)                                                    {                            __wGDIString[1] = aDigit[__wProgramChapter/10];                            __wGDIString[2] = aDigit[__wProgramChapter%10];                               }                        else if (__wTemp)                        {                            __wProgramChapter = __wTemp;                             __wGDIString[1] = aDigit[__wProgramChapter/10];                            __wGDIString[2] = aDigit[__wProgramChapter%10];                               }                        else                        {                            __wGDIString[1] = CHAR_UNDERLIN;                            __wGDIString[2] = CHAR_UNDERLIN;                               }						*/						//CoCo1.21, replace the above code						_OSDPRGM_UpdateProgramChapter(2);                        GDI_SetTextColor(TEXT_BG_COLOR, GDI_ENTRY_4B_COLOR_YELLOW);                        GDI_DRAW_STRING (MAIN_FRAME_X0+FRAME_THICKNESS+145, MAIN_FRAME_Y0+FRAME_THICKNESS+ENTRY_HEIGHT*(_bMainHighlightPos-1));                     }                                              else //PROGRAM_NUM_CURSOR_CHAPTER                    {                        _SetClearHighlight(CLEAR_HIGHLIGHT);                        _bCurrentFrame++;                        _SetClearHighlight(SET_HIGHLIGHT);                         DVD_ParseInfo ( DVD_TOTAL_CHAPTERS, &__dwTemp, (WORD)(_bTitleStart+_bTitleHighlightPos-1) );                                     _wTotalChapter = (WORD)__dwTemp;    						                        _ShowChapterList();                        _bCurrentFrame = TITLE_FRAME; /////highlight remains in Title Frame                                             }                }                    else if (_bCurrentFrame==TITLE_FRAME)                 {					_SetClearHighlight(CLEAR_HIGHLIGHT);					_bCurrentFrame++;					_SetClearHighlight(SET_HIGHLIGHT);                 }            }#ifdef SUPPORT_SIMPLE_FM_PROGRAM //Kevin1.10            else if (__wDiscType & CDROM_M1) //no Chapter Frame for VCD                     {                if (_bCurrentFrame==MAIN_FRAME)                {                    if (_bPrgmDigitPos & PROGRAM_NUM_CURSOR_TITLE)                    {                        _SetClearHighlight(CLEAR_HIGHLIGHT); //clear whole yellow highlight bar                        __bProgramCurrentIndex = _bMainStart+_bMainHighlightPos-1;						                        GDI_SetTextColor(TEXT_FG_COLOR, GDI_ENTRY_4B_COLOR_BLACK);						//CoCo1.21, Initialize __wGDIString array here.						_OSDPRGM_InitialOutputString(CHAR_UNDERLIN);                           __wGDIString[0] = 3; //digits												                        __wTemp = __ProgIdxList[__bProgramCurrentIndex-1].wSubIndex;						/* --CoCo1.21                        if (__bProgramTitle)                                                    {                            __wGDIString[1] = aDigit[__bProgramTitle/100];                            __bTemp = __bProgramTitle%100;                            __wGDIString[2] = aDigit[__bTemp/10];                                   __wGDIString[3] = aDigit[__bTemp%10];                        }                        else if (__wTemp) //not empty //file: 1~ (stored in the array)  1~ (display on UI)                        {                            __bProgramTitle = __ProgIdxList[__bProgramCurrentIndex-1].bMainIndex+1; //dir: 0~ (stored in the array)  1~ (display on UI)                            __wGDIString[1] = aDigit[__bProgramTitle/100];                            __bTemp = __bProgramTitle%100;                            __wGDIString[2] = aDigit[__bTemp/10];                                   __wGDIString[3] = aDigit[__bTemp%10];                               }                                                else                        {                            __wGDIString[1] = CHAR_UNDERLIN;                            __wGDIString[2] = CHAR_UNDERLIN;                             __wGDIString[3] = CHAR_UNDERLIN;                                                     }						*/						//CoCo1.21, replace the above code						if ((!__bProgramTitle) && __wTemp)                            __bProgramTitle = __ProgIdxList[__bProgramCurrentIndex-1].bMainIndex+1; //dir: 0~ (stored in the array)  1~ (display on UI)						//if (__bProgramTitle) //Kevin1.23, CHAR_UNDERLIN							_OSDPRGM_OutputNum(__bProgramTitle, 3);						                        GDI_SetTextColor(TEXT_BG_COLOR, GDI_ENTRY_4B_COLOR_CENTER);                        GDI_DRAW_STRING (MAIN_FRAME_X0+FRAME_THICKNESS+80, MAIN_FRAME_Y0+FRAME_THICKNESS+ENTRY_HEIGHT*(_bMainHighlightPos-1));                                                 _bPrgmDigitPos=PROGRAM_NUM_CURSOR_CHAPTER;                        __wGDIString[0] = 4; //digits  						/*--Coco1.21                        __wTemp = __ProgIdxList[__bProgramCurrentIndex-1].wSubIndex;                        if (__wProgramChapter)                                                    {                            __wGDIString[1] = aDigit[__wProgramChapter/1000];                            __wTemp = __wProgramChapter%1000;                            __wGDIString[2] = aDigit[__wTemp/100];                                   __wTemp %= 100;                            __wGDIString[3] = aDigit[__wTemp/10];                            __wGDIString[4] = aDigit[__wTemp%10];                        }                        else if (__wTemp)                        {                            __wProgramChapter = __wTemp;                             __wGDIString[1] = aDigit[__wProgramChapter/1000];                            __wTemp = __wProgramChapter%1000;                            __wGDIString[2] = aDigit[__wTemp/100];                                   __wTemp %= 100;                            __wGDIString[3] = aDigit[__wTemp/10];                            __wGDIString[4] = aDigit[__wTemp%10];                              }                                                else                        {

⌨️ 快捷键说明

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