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

📄 osdmenu.lst

📁 车载DVD osdIC TW8816原厂代码
💻 LST
📖 第 1 页 / 共 5 页
字号:
 487          void DisplayCursor(void)
 488          {
 489   1              BYTE cursor_y=0 ;
 490   1              WORD addr;
 491   1      
 492   1              if( cursor_item==NIL )
 493   1                      return;
 494   1              
 495   1              cursor_y = cursor_item + ( MenuFormat->TitleColor ==NIL ? 0 : 1 );
 496   1      
 497   1              if( OSDMenuLevel == 1 ) addr = OSDMENU_MAINADDR;
 498   1              else addr = OSDMENU_SUBADDR;
 499   1      
 500   1              addr += cursor_y*MenuFormat->width;
 501   1      
 502   1              if( OSDMenuLevel == 1)
 503   1                      DrawAttrCnt(addr, MenuFormat->CursorColor, MenuFormat->width ); 
 504   1              else
 505   1              {
 506   2                      if(OnChangingValue)
 507   2                      {
 508   3                              GetItemValue(GetItemValue(MenuChild[cursor_item].Id));
 509   3                              DrawAttrCnt(addr, MenuFormat->CursorColor, MenuFormat->width ); 
 510   3                      }
 511   2                      else
 512   2                      {
 513   3                              DrawAttrCnt(addr, MenuFormat->CursorColor, MenuFormat->width-BARNUM_LENGTH );   
 514   3                              DrawAttrCnt(addr+MAX_DESC, DEFAULT_COLOR, BARNUM_LENGTH );      
 515   3                      }
 516   2              }       
 517   1      
 518   1      }
 519          
 520          
 521          //===============================================================================
 522          //  OSD Menu Operation funtion moved to "OSDoper.c" by RYU.
 523          // 
 524          //===============================================================================
 525          
 526          WORD GetItemValue( BYTE id)
 527          {
 528   1              WORD val=0;
 529   1      
 530   1              #ifdef DEBUG_OSD
                      dPrintf("\r\n++(GetItemValue) id:0x%x __", (WORD)id);
                      #endif
 533   1      
 534   1              switch( id ) {
 535   2              //case SYSTEM_CLOCK:    val = GetSystemClock_HM();                      break;
 536   2              //case WAKEUP_TIME:             val = OSDItemValue = GetWakeupTime();   break;
 537   2              //case OFF_TIME:                val = OSDItemValue = GetOffTime();              break;
 538   2              case SLEEP_TIMER:               val = OSDItemValue = GetSleepTimer();   break;
 539   2      
 540   2      #ifdef SUPPORT_OSDPOSITIONMOVE
                      case OSDPOSITIONMODE:   val = GetOSDPositionMode();                             break;
                      //case OSD_VPOS:                        val = GetOSDMenuYValue();                               break;
                      //case OSD_HPOS:                        val = GetOSDMenuXValue();                               break;
              #endif
 545   2      //      case OSD_DURATION:              val = GetOSDDurationValue();                    break;
 546   2              case OSDLANG:                   val = OSDLang & 0x0f;                                   break;
 547   2      
 548   2              #ifdef SUPPORT_PC
C51 COMPILER V7.50   OSDMENU                                                               04/01/2008 15:02:25 PAGE 10  

 549   2              case PANEL_CONTRAST:    val = OSDItemValue = GetPanelContrastEE();                              break;
 550   2              case PANEL_BRIGHTNESS:  val = OSDItemValue = GetPanelBrightnessEE();                    break;
 551   2      
 552   2              case PC_VPOS:                   val = GetVPosition();                                   break;
 553   2              case PC_HPOS:                   val = GetHPosition();                                   break;
 554   2              case PC_CLOCK:                  val = GetCoarseValue();                                 break;
 555   2              case PC_PHASE:                  val = GetPhaseCurrent();                                break;
 556   2      
 557   2              case PC_COLOR_TEMP:             val = GetPCColorTempModeEE();                   break;
 558   2              case PC_COLOR_R:                val = GetPCColorTemp(RED);                              break;  
 559   2              case PC_COLOR_G:                val = GetPCColorTemp(GREEN);                    break;  
 560   2              case PC_COLOR_B:                val = GetPCColorTemp(BLUE);                             break;  
 561   2              #endif
 562   2      
 563   2      
 564   2              case VIDEO_MODE:                val = GetVideoModeEE();                                 break;
 565   2      
 566   2              case VIDEO_CONTRAST:    
 567   2              case VIDEO_BRIGHTNESS:  
 568   2              case VIDEO_SATURATION:  
 569   2              case VIDEO_HUE:                 
 570   2              case VIDEO_SHARPNESS:   
 571   2                                                              val = GetVideoDatawithOffset(id -VIDEO_CONTRAST);       break; // changed wrong offset value // Hans
 572   2              case VIDEO_BACKLIGHT:   
 573   2                                                              val = GetVideoDatawithOffset(backlight);        break; // changed wrong offset value // Hans
 574   2      
 575   2              case AUDIO_VOLUME:              val = GetAudioVol();                                    break;
 576   2      #ifdef SUPPORT_MSP_AUDIO
                      case AUDIO_BALANCE:             val = GetAudioBalance();                                break;
                      case AUDIO_BASS:                val = GetAudioBass();                                   break;
                      case AUDIO_TREBLE:              val = GetAudioTreble();                                 break;
                      //case AUDIO_EFFECT:            val = GetAudioEffect();                                 break;
                      //case AUDIO_MUTE:              val = IsAudioMuteOn();                                  break;
              #endif
 583   2      
 584   2      #ifdef SUPPORT_TV
 585   2              #ifdef NTSC_TV
                      case AIR_CABLE_TV:              val = OSDItemValue = GetTVType();               break;
                      case STORE_CLEAR_TVCHN: val = OSDItemValue = IsSavedCurChn();   break;
                      #endif
 589   2              
 590   2              case FINE_TUNE_CHANNEL: val = OSDItemValue = GetFineTune();             break;
 591   2      #endif // SUPPORT_TV
 592   2      
 593   2              case INPUTSTD:                  val = OSDItemValue = VInputStdDetectMode;                       
 594   2                                                              break;
 595   2      
 596   2              #ifdef WIDE_SCREEN              //.................................................
 597   2              case WIDESCREEN:
 598   2                                                              val = WideScreenMode;                                   break;
 599   2              #endif                                  //.................................................
 600   2      
 601   2              }
 602   1      
 603   1              return val;
 604   1      }
 605          
 606          #define MAX_VIDEOMODE   4
 607          #define MAXVCHIPMOVIE   7 
 608          
 609          WORD SetItemValue( BYTE id, BYTE flag )
 610          {
C51 COMPILER V7.50   OSDMENU                                                               04/01/2008 15:02:25 PAGE 11  

 611   1              WORD val=0;
 612   1      //      BYTE    i;
 613   1      
 614   1              switch( id ) {
 615   2              //case SYSTEM_CLOCK_H:  
 616   2              //case WAKEUP_TIME_H:           
 617   2              //case OFF_TIME_H:
 618   2              //                                              val = SetClock_hour(flag);                              break;
 619   2      
 620   2              //case SYSTEM_CLOCK:
 621   2              //case WAKEUP_TIME:
 622   2              //case OFF_TIME:
 623   2              //                                              val = SetClock_min(flag);                               break;
 624   2              case SLEEP_TIMER:               val = ChangeSleepTimer( flag );                 break;
 625   2      
 626   2      #ifdef SUPPORT_OSDPOSITIONMOVE
                      case OSDPOSITIONMODE:    val = SetOSDPositionMode( flag );              break;
                      //case OSD_VPOS:                        val = SetOSDMenuYValue(flag);                   break;
                      //case OSD_HPOS:                        val = SetOSDMenuXValue(flag);                   break;
              #endif
 631   2      
 632   2      //      case OSD_DURATION:              val = SetOSDDurationValue(flag);                break;
 633   2              case OSDLANG:                   val = SetLanguage (flag);                               break;
 634   2      
 635   2              #if defined(SUPPORT_PC) || defined(SUPPORT_DTV)
 636   2              case PANEL_CONTRAST:    val = SetPanelContrast(flag);                   break;
 637   2              case PANEL_BRIGHTNESS:  val = SetPanelBrightness(flag);                 break;
 638   2              #endif
 639   2      
 640   2              #ifdef SUPPORT_PC
 641   2              case PC_VPOS:                   val = SetVPosition(flag);                               break;
 642   2              case PC_HPOS:                   val = SetHPosition(flag);                               break;
 643   2              case PC_CLOCK:                  val = SetPCCoarseValue(flag);                   break;
 644   2              case PC_PHASE:                  val = SetPhaseValue(flag);                              break;
 645   2              #endif
 646   2      
 647   2              case PC_COLOR_TEMP:             val = SetPCColorTemp(flag);                     break;
 648   2      
 649   2              case PC_COLOR_R:                val = SetPCColor(RED, flag);                    break;  
 650   2              case PC_COLOR_G:                val = SetPCColor(GREEN, flag);                  break;  
 651   2              case PC_COLOR_B:                val = SetPCColor(BLUE, flag);                   break;  
 652   2      
 653   2              case VIDEO_MODE:                val = GetVideoModeEE();
 654   2                                                              if(flag==UP) val ++;
 655   2                                                              else val = val + MAX_VIDEOMODE -1;
 656   2                                                              val %= MAX_VIDEOMODE ; 
 657   2                                                              SetVideoMode(val);              
 658   2                                                              
 659   2                                                              if( GetVideoModeEE() != 3 )  // if not user mode, mask the control.
 660   2                                                                      DrawAttrCnt(OSDMENU_SUBADDR+MENU_WIDTH*2, BACK_COLOR, (MENU_HEIGHT-1)*MENU_WIDTH );     
 661   2                                                              else
 662   2                                                                      DrawAttrCnt(OSDMENU_SUBADDR+MENU_WIDTH*2, DEFAULT_COLOR, (MENU_HEIGHT-1)*MENU_WIDTH );  
 663   2                                                                                                                                              break;
 664   2      
 665   2              case VIDEO_CONTRAST:    
 666   2              case VIDEO_BRIGHTNESS:  
 667   2              case VIDEO_HUE:                 
 668   2                                                              val= ChangeVideoData(id-VIDEO_CONTRAST,flag);                                   break;
 669   2              case VIDEO_SATURATION:  val = ChangeVideoData(id-VIDEO_CONTRAST,flag);  
 670   2                                                              ChangeVideoData(id+1-VIDEO_CONTRAST,flag);
 671   2                                                                                                                                              break;
 672   2                                                              //val = SetVideoSaturation(V_SAT, flag);        break;
C51 COMPILER V7.50   OSDMENU                                                               04/01/2008 15:02:25 PAGE 12  

 673   2              case VIDEO_SHARPNESS:   val = SetVideoSharpness(flag);                  break;
 674   2              case VIDEO_BACKLIGHT:   val = ChangeVideoData(backlight,flag);                  break; // changed wrong offset value // Ha
             -ns
 675   2      
 676   2      
 677   2      
 678   2              case AUDIO_VOLUME:              val = ChangeVol( (flag==UP ? 1 : -1) ); break;
 679   2      #ifdef SUPPORT_MSP_AUDIO
                      case AUDIO_BALANCE:             val = ChangeBalance( (flag==UP ? 1 : -1) );     break;
                      case AUDIO_BASS:                val = ChangeBass( (flag==UP ? 1 : -1) );        break;
                      case AUDIO_TREBLE:              val = ChangeTreble( (flag==UP ? 1 : -1) );      break;
              #endif
 684   2      
 685   2      #ifdef SUPPORT_TV
 686   2              case INPUTSTD:
 687   2                                                                      val = VInputStdDetectMode;
 688   2                                                                      if(flag==UP) val++;
 689   2                                                                      else val = ( val+MAXINPUTSTD -1 );
 690   2                                                                      val %= MAXINPUTSTD;
 691   2                                                                      //Printf("\r\n++IPUTSTD:0x%x __", (WORD)val);
 692   2                                                                      
 693   2                                                                      //i = GetInputSelection();
 694   2                                                                      //if( i==TV ) 
 695   2                                                                              ChangeVInputStdDetectMode(val);
 696   2                                                                      break;
 697   2              #ifdef NTSC_TV
                      case AIR_CABLE_TV:              val = ToggleTVType();                                   break;
                      case STORE_CLEAR_TVCHN: val = StoreClearCurChn();                               break;
                      #endif
 701   2      
 702   2              case FINE_TUNE_CHANNEL: val = ChangeFineChannel(flag);                  break;
 703   2      #endif                                                  
 704   2              
 705   2      
 706   2      
 707   2              #ifdef WIDE_SCREEN
 708   2              case WIDESCREEN:                        val = WideScreenMode;
 709   2                                                                      if(flag==UP) val++;
 710   2                                                                      else val = ( val+MAXWIDESCREEN -1 );    
 711   2                                                                      val %= MAXWIDESCREEN;
 712   2                                                                      Set4WideScreen( val );
 713   2                                                                      break;
 714   2              #endif  //WIDE_SCREEN
 715   2      
 716   2              }
 717   1      
 718   1              return val;
 719   1      }
 720          
 721          
 722          void DisplayViewBar(WORD addr, BYTE val)
 723          {
 724   1              CODE BYTE BAR_ROM_TABLE[] = {
 725   1                      0x01,0x01,0x01,0x01, // ...
 726   1                      0x02,0x02,0x02,0x02,0x02, // |..
 727   1                      0x05,0x05,0x05,0x05,0x05,// ||.
 728   1                      0x03, // |
 729   1                      0x04, // |||
 730   1              };
 731   1      
 732   1              BYTE i=0;
 733   1              BYTE Bar_str[]={ 0x04, 0x04, 0x04, 0x04, 0x04, 0x04, 0x04, 0x03, ' ', ' ', ' ',0 };
C51 COMPILER V7.50   OSDMENU                                                               04/01/2008 15:02:25 PAGE 13  

 734   1      

⌨️ 快捷键说明

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