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

📄 osddrawt100.lst

📁 宏芯T118B 配 MTV512, 驱动PVI 9"TFT屏的源程序
💻 LST
📖 第 1 页 / 共 5 页
字号:
 252   2                      //twdWr_Burst_A(OSD_RAM_DL);
 253   2                      twdWr_Burst_D(0x40); //V
 254   2                      twdWr_Burst_D(0x02);
 255   2                      twdWr_Burst_P();
 256   2      
 257   2                      break;
 258   2              case idSRCMENU:
 259   2                      return;
 260   2              case idFCTRYMENU:
 261   2                      return;
 262   2              }
 263   1              OSDPosition(CENTER);
 264   1              OSDEnable();
 265   1              OSDShowPage();  //Title
 266   1              OSDShowVideoData();
 267   1      }
 268          
 269          void OSDFuncSelect(sCHAR sStep)
 270          {
 271   1              //Remove previous cursor
 272   1              //OSDHLLine(m_cItem, COL_NORMAL);
 273   1      
 274   1              switch(m_cOSDFunc&0xf0){
 275   2              case idMAINMENU:
 276   2                      if((m_cSource&0x0C)==0x00)//isrcVIDEO)
 277   2                      {
 278   3                              if(m_cItem+sStep>=1 && m_cItem+sStep<=6 )       m_cItem+=sStep;
 279   3                              else
 280   3                              {
 281   4                                      if(sStep<0)     m_cItem=6;
 282   4                                      else            m_cItem=1;
 283   4                              }
 284   3                      }
 285   2                      else
 286   2                      {
 287   3                      if(m_cItem+sStep>=1 && m_cItem+sStep<=10 )      m_cItem+=sStep;
 288   3                              else
 289   3                              {
 290   4                                      if(sStep<0)             m_cItem=10;
 291   4                                      else                    m_cItem=1;
 292   4                              }
 293   3                      }
 294   2                      break;
 295   2              case idCOLORMENU:
 296   2                      if(m_cItem+sStep>=1 && m_cItem+sStep<=5)                m_cItem+=sStep;
 297   2                      else
 298   2                      {
 299   3                              if(sStep<0)                     m_cItem=5;
 300   3                              else                            m_cItem=1;
 301   3                      }
 302   2                      break;
C51 COMPILER V7.07   OSDDRAWT100                                                           10/27/2005 16:13:34 PAGE 6   

 303   2              case idLANGMENU:
 304   2                      if(m_cItem+sStep>=1 && m_cItem+sStep<=5)                m_cItem+=sStep;
 305   2                      else
 306   2                      {
 307   3                              if(sStep<0)             m_cItem=5;
 308   3                              else                    m_cItem=1;
 309   3                      }
 310   2                      break;
 311   2              case idSRCMENU:
 312   2                      if(m_cItem<4)           m_cItem++;
 313   2                      else                            m_cItem=1;
 314   2                      break;
 315   2              case idFCTRYMENU:
 316   2                      if(m_cItem+sStep>=1 && m_cItem+sStep<=9 )
 317   2                      {
 318   3                              if(sStep>0)
 319   3                              {
 320   4                                      if(m_cItem==6)  m_cItem+=3;
 321   4                                      else                    m_cItem+=sStep;
 322   4                              }
 323   3                              else
 324   3                              {
 325   4                                      if(m_cItem==9) m_cItem-=3;
 326   4                                      else                    m_cItem+=sStep;
 327   4                              }
 328   3      
 329   3                      }
 330   2                      else
 331   2                      {
 332   3                              if(sStep<0)             m_cItem=9;
 333   3                              else                    m_cItem=1;
 334   3                      }
 335   2                      break;
 336   2              case id9300MENU:
 337   2                      if(m_cItem<8)           m_cItem++;
 338   2                      else                            m_cItem=6;
 339   2                      m_cOSDFunc=(m_cOSDFunc&0xf0)|(m_cItem-5);
 340   2                      OSDMoveCursor(0x12,0x17);
 341   2                      return;
 342   2              case id6500MENU:
 343   2                      if(m_cItem<11)
 344   2                              m_cItem++;
 345   2                      else
 346   2                              m_cItem=9;
 347   2                      m_cOSDFunc=(m_cOSDFunc&0xf0)|(m_cItem-8);
 348   2                      OSDMoveCursor(0x12,0x17);
 349   2                      return;
 350   2              case idTVMENU_VIDEO:
 351   2                      if(m_cItem+sStep>=1 && m_cItem+sStep<=6)                m_cItem+=sStep;
 352   2                      else
 353   2                      {
 354   3                              if(sStep<0)                     m_cItem=6;
 355   3                              else                            m_cItem=1;
 356   3                      }
 357   2                      break;
 358   2              default:
 359   2                      break;
 360   2              }
 361   1      
 362   1              m_cOSDFunc=(m_cOSDFunc&0xf0)|m_cItem;
 363   1        //High Light Current item
 364   1                      OSDMoveCursor(0x00,0x17);
C51 COMPILER V7.07   OSDDRAWT100                                                           10/27/2005 16:13:34 PAGE 7   

 365   1      }
 366          
 367          
 368          void OSDFuncEnter(void)
 369          {
 370   1      #ifdef TV
                      uCHAR cTemp;
                      uWORD wTemp;
                      if (m_cOSDFunc==idTVMENU_VIDEO)
                      {
                              //Clear Previous Page;
                              //OSDClearPage();
              //              OSDExit();
                              m_cItem=1;
                              cTemp=TVEEPGetChannel();
                              wTemp=TVSetChannel(cTemp-1);
              
                              twdDelay(200);
                              //SrcControl();
                              OSDOpenMenu();
              #ifdef PAL
                              OSDDrawTVFreq(wTemp);
                              OSDDrawBand(wTemp);
              #endif                  
                              OSDMoveCursor(0x00,0x17);
                              m_cOSDFunc=idCHANNEL_TV;
                              return;
                      }
                      else
                      {
                              switch(m_cOSDFunc){
                              case idAUTOMEMORY_TV:
                                      AutoMemory();
                                      return;
              //              case idAUTOSCAN_TV:
              //                      AutoScan();
              //                      return;
                              case idFINETUNE_TV:
                                      m_cOSDFunc=idFINETUNEMENU_TV;
                                      OSDCfgWr(0x10,0x00); //Disable window
                                      OSDShowLine(iBlankLine,0,2,COL_GAUGE,OSD_LENGTH);
                                      OSDShowLine(iPixelIcon,ICON_STAT,2,COL_GAUGE,OSD_LENGTH);
                                      OSDShowLine(iFineTune_E,TXT_STAT,2,COL_GAUGE,OSD_LENGTH);
                                      break;
                              case idCHANNEL_TV:
                                      m_cOSDFunc=idCHANNELMENU_TV;
                                      OSDCfgWr(0x10,0x00); //Disable window
                                      cTemp = I2CReadByte(EEPVIDEOBLOCK, idTVCHANNEL_INDEX);
                                      OSDShowLine(iBlankLine,0,3,COL_GAUGE,OSD_LENGTH);
                                      OSDShowLine(iPixelIcon,ICON_STAT,3,COL_GAUGE,OSD_LENGTH);
                                      OSDShowLine(iChannel_E,TXT_STAT,3,COL_GAUGE,OSD_LENGTH);
                                      OSDDrawNum(cTemp, 0, 19, 3, COL_GAUGE, DRAW_BLANK|0x03);
                                      break;
                              default:        return;
                              }
                      }
              #endif
 422   1      }
 423          
 424          void OSDFuncExit(void)
 425          {
 426   1      
C51 COMPILER V7.07   OSDDRAWT100                                                           10/27/2005 16:13:34 PAGE 8   

 427   1      }
 428          
 429          void OSDShowSubpage(void)
 430          {
 431   1      uCHAR i;
 432   1              OSDEnable();
 433   1      
 434   1              if(m_cOSDFunc==idVOLUMEMENU)
 435   1              {
 436   2                      OSDShowLine(iVolume_E,1,0,COL_TITLE,OSD_LENGTH);
 437   2              }
 438   1              else if(m_cOSDFunc==idTVMENU_VIDEO)
 439   1              {
 440   2                       for(i=0;i<9;i++)
 441   2                              OSDShowLine(iBlankLine,0,i,COL_TITLE,OSD_LENGTH);
 442   2              OSDShowLine(iTuning_E,0,0,COL_TITLE,OSD_LENGTH);
 443   2                      OSDShowLine(iChannel_E,3,1,COL_TITLE,OSD_LENGTH);       
 444   2                      OSDShowLine(iSkip_E,3,2,COL_TITLE,OSD_LENGTH);  
 445   2                      OSDShowLine(iSource_E,3,3,COL_TITLE,OSD_LENGTH);                
 446   2                      OSDShowLine(iFineTune_E,3,4,COL_TITLE,OSD_LENGTH);              
 447   2                      OSDShowLine(iAutoMemory_E,3,5,COL_TITLE,OSD_LENGTH);
 448   2                      OSDShowLine(iReset,3,6,COL_TITLE,OSD_LENGTH);
 449   2              switch(m_cItem){
 450   3                              case 1:
 451   3                                      OSDShowLine(iChannel_E,3,m_cItem,LBLUE_RED,OSD_LENGTH); break;
 452   3                              case 2:
 453   3                                      OSDShowLine(iSkip_E,3,m_cItem,LBLUE_RED,OSD_LENGTH);    break;
 454   3                              case 3:
 455   3                                      OSDShowLine(iSource_E,3,m_cItem,LBLUE_RED,OSD_LENGTH);          break;
 456   3                              case 4:
 457   3                                      OSDShowLine(iFineTune_E,3,m_cItem,LBLUE_RED,OSD_LENGTH);                break;
 458   3                              case 5:
 459   3                                      OSDShowLine(iAutoMemory_E,3,m_cItem,LBLUE_RED,OSD_LENGTH);              break;
 460   3                              case 6:
 461   3                                      OSDShowLine(iReset,3,m_cItem,LBLUE_RED,OSD_LENGTH);             break;
 462   3                       }
 463   2        
 464   2              }
 465   1              else
 466   1              {
 467   2      
 468   2      //Ruby 2004-06-14
 469   2                      for(i=0;i<9;i++)
 470   2                              OSDShowLine(iBlankLine,0,i,COL_TITLE,OSD_LENGTH);
 471   2              OSDShowLine(iPicture,0,0,COL_TITLE,OSD_LENGTH);
 472   2                      OSDShowLine(iBright_E,3,1,COL_TITLE,OSD_LENGTH);        
 473   2                      OSDShowLine(iContrast_E,3,2,COL_TITLE,OSD_LENGTH);      
 474   2                      OSDShowLine(iSharp_E,3,3,COL_TITLE,OSD_LENGTH);         
 475   2                      OSDShowLine(iSat_E,3,4,COL_TITLE,OSD_LENGTH);           
 476   2                      OSDShowLine(iHue_E,3,5,COL_TITLE,OSD_LENGTH);
 477   2      #ifdef LOAD_TIME
                              OSDShowLine(iTiming_E,3,6,COL_TITLE,OSD_LENGTH);
              #endif
 480   2              switch(m_cItem){
 481   3                              case 1:
 482   3                                      OSDShowLine(iBright_E,3,m_cItem,LBLUE_RED,OSD_LENGTH);  break;
 483   3                              case 2:
 484   3                                      OSDShowLine(iContrast_E,3,m_cItem,LBLUE_RED,OSD_LENGTH);        break;
 485   3                              case 3:
 486   3                                      OSDShowLine(iSharp_E,3,m_cItem,LBLUE_RED,OSD_LENGTH);           break;
 487   3                              case 4:
 488   3                                      OSDShowLine(iSat_E,3,m_cItem,LBLUE_RED,OSD_LENGTH);             break;
C51 COMPILER V7.07   OSDDRAWT100                                                           10/27/2005 16:13:34 PAGE 9   

 489   3                              case 5:
 490   3                                      OSDShowLine(iHue_E,3,m_cItem,LBLUE_RED,OSD_LENGTH);             break;
 491   3      #ifdef LOAD_TIME
                                      case 6:
                                              OSDShowLine(iTiming_E,3,m_cItem,LBLUE_RED,OSD_LENGTH);          break;
              #endif
 495   3                       }
 496   2      
 497   2      
 498   2          if(m_cItem!=6)
 499   2                OSDShowLine(iBlankLine,0,7,COL_GAUGE,OSD_LENGTH);
 500   2              else
 501   2                      OSDShowLine(iBlankLine,0,m_cItem+1,COL_TITLE,OSD_LENGTH);
 502   2              if(m_cOSDFunc==idVOLUMEMENU)
 503   2                      OSDShowLine(iVolumeIcon,0,1,COL_GAUGE,OSD_LENGTH);
 504   2              else
 505   2                      OSDShowLine(mainMenu_E[m_cItem-1].iconStr,0,7,COL_GAUGE,OSD_LENGTH);
 506   2              }       
 507   1                      OSDShowVideoData(); 
 508   1      
 509   1              OSDShowLine(iBlankLine,0,8,COL_TITLE,OSD_LENGTH);
 510   1      
 511   1      }
 512          

⌨️ 快捷键说明

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