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

📄 osddraw.lst

📁 T116 源码
💻 LST
📖 第 1 页 / 共 3 页
字号:
 501   4                                      twdWr_Burst_D(BLANK);
 502   4                                      twdWr_Burst_D(cColor);
 503   4                              }
 504   3                      }
 505   2              }
 506   1              else if((cAttr&0xF0)==DRAW_ZERO)
 507   1              {
 508   2                      switch(m_cBuff[1]){
 509   3                      case 1:
 510   3                              if((cAttr&0x0F)==3||(cAttr&0x0F)==2)
 511   3                              {
 512   4                                      twdWr_Burst_D('0'-IndexNumOffset);
 513   4                                      twdWr_Burst_D(cColor);
 514   4                              }
 515   3                      case 2:
 516   3                              if((cAttr&0x0F)==3)
 517   3                              {
 518   4                                      twdWr_Burst_D('0'-IndexNumOffset);
 519   4                                      twdWr_Burst_D(cColor);
 520   4                              }
 521   3                      }
 522   2              }
 523   1      
 524   1      
 525   1              while(m_cBuff[1]>0)
 526   1              {
 527   2                      if(m_cBuff[1]==3)
 528   2                              cTemp=m_wBuff[0]/100;
 529   2                      else if(m_cBuff[1]==2)
 530   2                              cTemp=(m_wBuff[0]%100)/10;
 531   2                      else if(m_cBuff[1]==1)
 532   2                              cTemp=m_wBuff[0]%10;
 533   2      
 534   2                      OSDNumConvert(cTemp);
 535   2              twdWr_Burst_D(cColor );
 536   2                      m_cBuff[1]--;
 537   2              }
 538   1              twdWr_Burst_P();
 539   1      }
 540          
 541          
 542          void OSDNumConvert(uCHAR cNum)
 543          {
 544   1              switch(cNum){
 545   2              case 9: twdWr_Burst_D('9'-IndexNumOffset);              break;
 546   2              case 8: twdWr_Burst_D('8'-IndexNumOffset);              break;
 547   2              case 7: twdWr_Burst_D('7'-IndexNumOffset);              break;
 548   2              case 6: twdWr_Burst_D('6'-IndexNumOffset);              break;
 549   2              case 5: twdWr_Burst_D('5'-IndexNumOffset);              break;
 550   2              case 4: twdWr_Burst_D('4'-IndexNumOffset);              break;
C51 COMPILER V7.50   OSDDRAW                                                               06/16/2006 15:29:44 PAGE 10  

 551   2              case 3: twdWr_Burst_D('3'-IndexNumOffset);              break;
 552   2              case 2: twdWr_Burst_D('2'-IndexNumOffset);              break;
 553   2              case 1: twdWr_Burst_D('1'-IndexNumOffset);              break;
 554   2              case 0: twdWr_Burst_D('0'-IndexNumOffset);              break;
 555   2              default: break;
 556   2              }
 557   1      }
 558          
 559          //Ruby add 2004-06-08
 560          extern uCHAR idata m_cScaleratio;
 561          void OSDShowRatio(void)
 562          {
 563   1      uCHAR i;
 564   1              for(i=0;i<OSD_LINE_NUM;i++)
 565   1              {
 566   2                      OSDCleanLine(0,i,0,30);
 567   2              OSDSetLineAttribute(i,0x80);
 568   2              }
 569   1              OSDPosition(RIGHT_TOP);
 570   1          switch(m_cScaleratio)
 571   1          {
 572   2                      case ScaleFULL:
 573   2                                      OSDShowLine(iScaleFULL,16,1,COL_GAUGE,OSD_LENGTH);
 574   2                                      break;
 575   2                      case Scale16_9: 
 576   2                                      OSDShowLine(iScale16_9,16,1,COL_GAUGE,OSD_LENGTH);
 577   2                                      break;
 578   2      #if (ZOOM_MODES >=2)
 579   2                      case ZOOM_1:    
 580   2                                      OSDShowLine(iZoom_1,16,1,COL_GAUGE,OSD_LENGTH);
 581   2                      break;
 582   2      #endif
 583   2      #if (ZOOM_MODES >=3)    //Bruce, 2006/01/10
 584   2                      case ZOOM_2:    
 585   2                                      OSDShowLine(iZoom_2,16,1,COL_GAUGE,OSD_LENGTH);
 586   2                      break;
 587   2      #endif
 588   2      #if (ZOOM_MODES >=4)
 589   2      
 590   2                      case Scale4_3:
 591   2                                      OSDShowLine(iScale4_3,16,1,COL_GAUGE,OSD_LENGTH);
 592   2                      break;
 593   2      #endif
 594   2      #if (ZOOM_MODES >=5)
                              case ZOOM_3:    
                                              OSDShowLine(iZoom_3,16,1,COL_GAUGE,OSD_LENGTH);
                              break;
              #endif
 599   2      #if (ZOOM_MODES >=6)
                              case ZOOM_4:    
                                              OSDShowLine(iZoom_4,16,1,COL_GAUGE,OSD_LENGTH);
                              break;
              #endif
 604   2      #if (ZOOM_MODES >=7)
                              case ZOOM_5:    
                                              OSDShowLine(iZoom_5,16,1,COL_GAUGE,OSD_LENGTH);
                              break;
              #endif
 609   2      #if (ZOOM_MODES >=8)
                              case ZOOM_6:    
                                              OSDShowLine(iZoom_6,16,1,COL_GAUGE,OSD_LENGTH);
                              break;
C51 COMPILER V7.50   OSDDRAW                                                               06/16/2006 15:29:44 PAGE 11  

              #endif
 614   2      #if (ZOOM_MODES >=9)
                              case ZOOM_7:    
                                              OSDShowLine(iZoom_1,16,1,COL_GAUGE,OSD_LENGTH);
                              break;                       
              #endif
 619   2      /*#ifdef T515
 620   2                      case Scale1_1:  
 621   2                                      OSDShowLine(iScale1_1,16,1,COL_GAUGE,OSD_LENGTH);
 622   2                                      break;
 623   2      #endif*/
 624   2              }
 625   1              OSDEnable();    
 626   1      /*      
 627   1      uCHAR i;
 628   1              for(i=0;i<8;i++)
 629   1              {
 630   1                      OSDCleanLine(0,i,0,30);
 631   1              OSDSetLineAttribute(i,0x80);
 632   1              }
 633   1              OSDPosition(RIGHT_TOP);
 634   1          switch(m_cScaleratio)
 635   1          {
 636   1                      case ScaleFULL:
 637   1                                      OSDShowLine(iScaleFULL,16,1,COL_GAUGE,OSD_LENGTH);
 638   1                                      break;
 639   1                      case Scale16_9: 
 640   1                                      OSDShowLine(iScale16_9,16,1,COL_GAUGE,OSD_LENGTH);
 641   1                                      break;
 642   1      
 643   1                      case Scale4_3:  
 644   1                                      OSDShowLine(iScale4_3,16,1,COL_GAUGE,OSD_LENGTH);
 645   1                      break;
 646   1              }
 647   1              OSDEnable();
 648   1      */      
 649   1      }
 650          
 651          
 652          void OSDShowSource(void)
 653          {
 654   1      uCHAR i;
 655   1              // add by kenny on 941115
 656   1          OSDDisable();
 657   1              //=========================
 658   1              for(i=0;i<OSD_LINE_NUM;i++)
 659   1              {
 660   2                      OSDCleanLine(0,i,0,30);
 661   2              OSDSetLineAttribute(i,0x80);
 662   2              }
 663   1              OSDPosition(RIGHT_TOP);
 664   1              
 665   1          OSDShowLine(OSDSource[m_cSource-1],16,1,COL_GAUGE,OSD_LENGTH);
 666   1      
 667   1              OSDEnable();
 668   1      #ifdef T116 //kenny 20060301
                      I2CWriteByte(TW101,0xE2,0x11);
              #endif
 671   1      }
 672          
 673          extern uCHAR idata m_cStandard;
 674          void OSDShowNTSC_PAL(void)
C51 COMPILER V7.50   OSDDRAW                                                               06/16/2006 15:29:44 PAGE 12  

 675          {
 676   1              uCHAR i;
 677   1      
 678   1              // add by kenny on 941115
 679   1          OSDDisable();
 680   1              for(i=0;i<10;i++)
 681   1              {
 682   2                      OSDCleanLine(0,i,0,30);
 683   2              OSDSetLineAttribute(i,0x80);
 684   2              }
 685   1              OSDPosition(RIGHT_TOP);
 686   1              //=======================
 687   1              if(m_cChroma==S_NTSC)                   OSDShowLine(iNTSC  ,16,1,COL_GAUGE,OSD_LENGTH); 
 688   1              else if(m_cChroma==S_PAL)               OSDShowLine(iPAL   ,16,1,COL_GAUGE,OSD_LENGTH); 
 689   1              else if(m_cChroma==S_SECAM)     OSDShowLine(iSECAM ,16,1,COL_GAUGE,OSD_LENGTH);         
 690   1              else if(m_cChroma==S_NTSC_4)    OSDShowLine(iNTSC_4,16,1,COL_GAUGE,OSD_LENGTH);                 
 691   1              else if(m_cChroma==S_PAL_M)     OSDShowLine(iPAL_M ,16,1,COL_GAUGE,OSD_LENGTH);
 692   1              else if(m_cChroma==S_PAL_CN)    OSDShowLine(iPAL_CN,16,1,COL_GAUGE,OSD_LENGTH);  
 693   1      
 694   1              OSDEnable();
 695   1      #ifdef T116 //kenny 20060301
                      I2CWriteByte(TW101,0xE2,0x11);
              #endif
 698   1      
 699   1      }
 700          
 701          void OSDClearCursor(void)
 702          {
 703   1              pOSDLangPtr=&MultiLangOSD[OSD_cOSDLang];
 704   1              pOSDMenuPtr=pOSDLangPtr->osdMenuPtr;
 705   1              OSDShowLine(pOSDMenuPtr[m_cOSDMenu-1][m_cOSDFunc-1].txtStr,TXT_STAT,m_cOSDFunc,COL_NORMAL,OSD_LENGTH);
 706   1          return;
 707   1      }
 708          
 709          
 710          void OSDMoveCursor(void)
 711          {
 712   1              pOSDLangPtr=&MultiLangOSD[OSD_cOSDLang];
 713   1              pOSDMenuPtr=pOSDLangPtr->osdMenuPtr;  
 714   1              OSDShowLine(pOSDMenuPtr[m_cOSDMenu-1][m_cOSDFunc-1].txtStr,TXT_STAT,m_cOSDFunc,BLUE_PURPLE,OSD_LENGTH);
 715   1          return;
 716   1      }
 717          
 718          
 719          void OSDPosition(uCHAR cPos)
 720          {       
 721   1              if(cPos==RIGHT_TOP){
 722   2                      OSDCfgWr(CHAR_DLY_0,Y0RightTop);        //V[10:8] bit 6-4; H[10:8] bit2-0  23 12
 723   2                      OSDCfgWr(CHAR_DLY_1,Y1RightTop);    //H[7:0]                           80 80
 724   2                      OSDCfgWr(CHAR_DLY_2,Y2RightTop);    //v[7:0]                           64 30
 725   2              }
 726   1              if(cPos==CENTER){
 727   2                      OSDCfgWr(CHAR_DLY_0,Y0Center);          //V[10:8] bit 6-4; H[10:8] bit2-0
 728   2                      OSDCfgWr(CHAR_DLY_1,Y1Center);          //H[7:0]
 729   2                      OSDCfgWr(CHAR_DLY_2,Y2Center);          //v[7:0]
 730   2              }
 731   1              else if(cPos==LEFT_BOTTOM){//not define yet!
 732   2                      OSDCfgWr(CHAR_DLY_0,Y0LeftBottom);      //V[10:8] bit 6-4; H[10:8] bit2-0
 733   2                      OSDCfgWr(CHAR_DLY_1,Y1LeftBottom);  //H[7:0]
 734   2                      OSDCfgWr(CHAR_DLY_2,Y2LeftBottom);  //v[7:0]    //00
 735   2              }
 736   1      }
C51 COMPILER V7.50   OSDDRAW                                                               06/16/2006 15:29:44 PAGE 13  

 737          
 738          


MODULE INFORMATION:   STATIC OVERLAYABLE
   CODE SIZE        =   2265    ----
   CONSTANT SIZE    =   2012    ----
   XDATA SIZE       =   ----    ----
   PDATA SIZE       =   ----    ----
   DATA SIZE        =      8      35
   IDATA SIZE       =   ----    ----
   BIT SIZE         =   ----    ----
END OF MODULE INFORMATION.


C51 COMPILATION COMPLETE.  0 WARNING(S),  0 ERROR(S)

⌨️ 快捷键说明

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