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

📄 osddrawt102.lst

📁 t112 参考文件
💻 LST
📖 第 1 页 / 共 4 页
字号:
                      uWORD wTemp;
                      wTemp=((wFreq&0x7fff)-IF2_FERQ1)/FREQ_1MHZ;
                      //m_wBuff[0]=wFreq/20-38;
                      OSDDrawNum(wTemp, 0, 14, 0, COL_TITLE, DRAW_BLANK|0x03);
                      OSDSetRamAddr(MENU_RAM_START_ADDRESS+17);
                      twdWr_Burst_A(OSD_RAM_DL);
                      twdWr_Burst_D(0x14); //'.'
                      twdWr_Burst_D(COL_TITLE );
                      twdWr_Burst_P();
                      wTemp=((wFreq&0x7fFF)-IF2_FERQ1)%FREQ_1MHZ;
                      OSDDrawNum(wTemp, FREQ_1MHZ, 18, 0, COL_TITLE, DRAW_ZERO|0x02);
              }
              
              void OSDDrawSkip(void)
              {
                      OSDSetRamAddr(MENU_RAM_START_ADDRESS+((int)2<<5)+19);
              
                      twdWr_Burst_A(OSD_RAM_DL);
              
                      switch((uCHAR)m_bTV_Skip){
                      case 0:
                              twdWr_Burst_D('A');
                              twdWr_Burst_D(COL_TITLE);
                              twdWr_Burst_D('D');
                              twdWr_Burst_D(COL_TITLE);
                              twdWr_Burst_D('D');
                              twdWr_Burst_D(COL_TITLE);
                              break;
                      case 1:
                              twdWr_Burst_D('E');
                              twdWr_Burst_D(COL_TITLE);
                              twdWr_Burst_D('R');
C51 COMPILER V7.07   OSDDRAWT102                                                           10/27/2005 16:27:46 PAGE 11  

                              twdWr_Burst_D(COL_TITLE);
                              twdWr_Burst_D('A');
                              twdWr_Burst_D(COL_TITLE);
                              break;
                      }
              }
              
              void OSDDrawBand(uWORD wFreq)
              {
                      uCHAR k;
                      if(wFreq < VLMAX)
                              k=BAND_VL;
                      else if(wFreq > VHMAX)
                              k=BAND_UHF;
                      else
                              k=BAND_VH;
              
                      OSDSetRamAddr(MENU_RAM_START_ADDRESS+((int)2<<5)+19);
              
                      twdWr_Burst_A(OSD_RAM_DL);
                      switch(k){
                      case BAND_VL:
                              twdWr_Burst_D(BLANK);
                              twdWr_Burst_D(COL_TITLE);  
                              twdWr_Burst_D('V');
                              twdWr_Burst_D(COL_TITLE);
                              twdWr_Burst_D('L');
                              twdWr_Burst_D(COL_TITLE);
                              break;
                      case BAND_VH:
                              twdWr_Burst_D(BLANK);
                              twdWr_Burst_D(COL_TITLE);
                              twdWr_Burst_D('V');
                              twdWr_Burst_D(COL_TITLE);
                              twdWr_Burst_D('H');
                              twdWr_Burst_D(COL_TITLE);
                              break;
                      case BAND_UHF:
                              twdWr_Burst_D('U');
                              twdWr_Burst_D(COL_TITLE);
                              twdWr_Burst_D('H');
                              twdWr_Burst_D(COL_TITLE);
                              twdWr_Burst_D('F');
                              twdWr_Burst_D(COL_TITLE);
                              break;
                      default:        break;
                      }
                      twdWr_Burst_P();
              }
              
              /*
              void OSDTVShowChannel(uCHAR x, uCHAR y, uCHAR cColor, uCHAR cChannel)
              {
                      if(cChannel>=100)
                      {
                              OSDSetRamAddr(MENU_RAM_START_ADDRESS+((int)y<<5)+x);    //9
                              twdWr_Burst_A(OSD_RAM_DL);
                              OSDNumConvert(cChannel/100);
                              twdWr_Burst_D(cColor );
                              OSDNumConvert((cChannel/10)%10);
                              twdWr_Burst_D(cColor );
                              OSDNumConvert(cChannel%10);
C51 COMPILER V7.07   OSDDRAWT102                                                           10/27/2005 16:27:46 PAGE 12  

                              twdWr_Burst_D(cColor );
                              twdWr_Burst_P();
                      }
                      else if(cChannel>=10)
                      {
                              OSDSetRamAddr(MENU_RAM_START_ADDRESS+((int)y<<5)+x);
                              twdWr_Burst_A(OSD_RAM_DL);
                              twdWr_Burst_D(BLANK);
                              twdWr_Burst_D(cColor);
                              OSDNumConvert(cChannel/10);
                              twdWr_Burst_D(cColor );
                              OSDNumConvert(cChannel%10);
                              twdWr_Burst_D(cColor );
                              twdWr_Burst_P();
                      }
                      else
                      {
                              OSDSetRamAddr(MENU_RAM_START_ADDRESS+((int)y<<5)+x);
                              twdWr_Burst_A(OSD_RAM_DL);
                              twdWr_Burst_D(BLANK);
                              twdWr_Burst_D(cColor);
                              twdWr_Burst_D(BLANK);
                              twdWr_Burst_D(cColor);
                              OSDNumConvert(cChannel);
                              twdWr_Burst_D(cColor );
                              twdWr_Burst_P();
                      }
              }
              */
              #endif
 705          
 706          
 707          void OSDNumConvert(uCHAR cNum)
 708          {
 709   1              switch(cNum){
 710   2              case 9: twdWr_Burst_D('9'-0x2f);        break;
 711   2              case 8: twdWr_Burst_D('8'-0x2f);        break;
 712   2              case 7: twdWr_Burst_D('7'-0x2f);        break;
 713   2              case 6: twdWr_Burst_D('6'-0x2f);        break;
 714   2              case 5: twdWr_Burst_D('5'-0x2f);        break;
 715   2              case 4: twdWr_Burst_D('4'-0x2f);        break;
 716   2              case 3: twdWr_Burst_D('3'-0x2f);        break;
 717   2              case 2: twdWr_Burst_D('2'-0x2f);        break;
 718   2              case 1: twdWr_Burst_D('1'-0x2f);        break;
 719   2              case 0: twdWr_Burst_D('0'-0x2f);        break;
 720   2              default: break;
 721   2              }
 722   1      }
 723          
 724          //Ruby add 2004-06-08
 725          extern uCHAR idata m_cScaleratio;
 726          void OSDShowRatio(void)
 727          {
 728   1      uCHAR i;
 729   1              for(i=0;i<8;i++)
 730   1              {
 731   2                      OSDCleanLine(0,i,0,30);
 732   2              OSDSetLineAttribute(i,0x80);
 733   2              }
 734   1              OSDPosition(RIGHT_TOP);
 735   1          switch(m_cScaleratio)
 736   1          {
C51 COMPILER V7.07   OSDDRAWT102                                                           10/27/2005 16:27:46 PAGE 13  

 737   2                      case ScaleFULL:
 738   2                                      OSDShowLine(iScaleFULL,16,1,COL_GAUGE,OSD_LENGTH);
 739   2                                      break;
 740   2                      case Scale16_9: 
 741   2                                      OSDShowLine(iScale16_9,16,1,COL_GAUGE,OSD_LENGTH);
 742   2                                      break;
 743   2      
 744   2                      case Scale4_3:  
 745   2                                      OSDShowLine(iScale4_3,16,1,COL_GAUGE,OSD_LENGTH);
 746   2                      break;
 747   2              }
 748   1              OSDEnable();
 749   1      }
 750          
 751          
 752          void OSDShowSource(void)
 753          {
 754   1      uCHAR i;
 755   1              for(i=0;i<8;i++)
 756   1              {
 757   2                      OSDCleanLine(0,i,0,30);
 758   2              OSDSetLineAttribute(i,0x80);
 759   2              }
 760   1              OSDPosition(RIGHT_TOP);
 761   1              switch(m_cSource)
 762   1              {
 763   2      
 764   2      #ifdef TV
                              case isrcTV:
                                              OSDShowLine(iCVBS_TV,16,1,COL_GAUGE,OSD_LENGTH);
                                              break;
              #else
 769   2                      case isrcCVIDEO1:       
 770   2                                      OSDShowLine(iCVBS_1,16,1,COL_GAUGE,OSD_LENGTH);
 771   2                                      break;
 772   2      #endif
 773   2                      case isrcCVIDEO2:       
 774   2                                      OSDShowLine(iCVBS_2,16,1,COL_GAUGE,OSD_LENGTH);
 775   2                                      break;
 776   2      //              case isrcCVIDEO3:       
 777   2      //                              OSDShowLine(iCVBS_3,16,1,COL_GAUGE,OSD_LENGTH);
 778   2      //                              break;
 779   2                      case isrcSVIDE1:        
 780   2                                      OSDShowLine(iSVideo_1,16,1,COL_GAUGE,OSD_LENGTH);
 781   2                                      break;
 782   2      /*
 783   2      #ifdef NEW_BOARD
 784   2                      case isrcSVIDE1:        
 785   2                                      OSDShowLine(iSVideo_1,16,1,COL_GAUGE,OSD_LENGTH);
 786   2                                      break;
 787   2      #else
 788   2                      case isrcCVIDEO4:       
 789   2                                      OSDShowLine(iCVBS_4,16,1,COL_GAUGE,OSD_LENGTH);
 790   2                                      break;
 791   2      #endif
 792   2      */
 793   2                      case isrcSVIDEO:        
 794   2                                      OSDShowLine(iSVideo,16,1,COL_GAUGE,OSD_LENGTH);
 795   2                                      break;
 796   2      #ifdef component
                              case isrcCOMPONENT:
                                      OSDShowLine(iCOMPONENT,16,1,COL_GAUGE,26);
C51 COMPILER V7.07   OSDDRAWT102                                                           10/27/2005 16:27:46 PAGE 14  

                              break;
              #endif
 801   2      
 802   2      #ifdef T515   
              
                      case isrc_T515_CVIDEO1:         
                                              OSDShowLine(iCVBS_5,16,1,COL_GAUGE,OSD_LENGTH);
                                              break;
                      case isrc_T515_CVIDEO2:         
                                              OSDShowLine(iCVBS_6,16,1,COL_GAUGE,OSD_LENGTH); 
                                              break;
                      case isrc_T515_SVIDEO:          
                                              //OSDShowLine(iSVideo_2,16,1,COL_GAUGE,OSD_LENGTH);     
                                              OSDShowLine(iSVideo_2,16,1,COL_GAUGE,26);
                                              break;
              
              #endif
 816   2      
 817   2                                      
 818   2      //add source OSD here!!
 819   2      
 820   2              }
 821   1              OSDEnable();
 822   1      }
 823          extern uCHAR idata m_cStandard;
 824          void OSDShowNTSC_PAL(void)
 825          {
 826   1              if(m_cStandard==S_PAL)OSDShowLine(iPAL,16,1,COL_GAUGE,OSD_LENGTH);
 827   1              else if(m_cStandard==S_NTSC) OSDShowLine(iNTSC,16,1,COL_GAUGE,OSD_LENGTH);
 828   1              else if(m_cStandard==S_SECAM) OSDShowLine(iSECAM,16,1,COL_GAUGE,OSD_LENGTH); 
 829   1              OSDEnable();
 830   1      }
 831          
 832          void OSDClearCursor(uCHAR cStart, uCHAR cEnd)
 833          {
 834   1              pOSDLangPtr=&MultiLangOSD[OSD_cOSDLang];
 835   1              pOSDMenuPtr=pOSDLangPtr->osdMenuPtr;
 836   1              OSDShowLine(pOSDMenuPtr[m_cOSDMenu-1][m_cOSDFunc-1].txtStr,TXT_STAT,m_cOSDFunc,COL_NORMAL,OSD_LENGTH);
 837   1          return;
 838   1      }
*** WARNING C280 IN LINE 832 OF SOURCE\OSD\OSDDRAWT102.C: 'cStart': unreferenced local variable
*** WARNING C280 IN LINE 832 OF SOURCE\OSD\OSDDRAWT102.C: 'cEnd': unreferenced local variable
 839          
 840          
 841          void OSDMoveCursor(uCHAR cStart, uCHAR cEnd)
 842          {
 843   1              pOSDLangPtr=&MultiLangOSD[OSD_cOSDLang];
 844   1              pOSDMenuPtr=pOSDLangPtr->osdMenuPtr;  
 845   1              OSDShowLine(pOSDMenuPtr[m_cOSDMenu-1][m_cOSDFunc-1].txtStr,TXT_STAT,m_cOSDFunc,LBLUE_RED,OSD_LENGTH);
 846   1          return;
 847   1      }
*** WARNING C280 IN LINE 841 OF SOURCE\OSD\OSDDRAWT102.C: 'cStart': unreferenced local variable
*** WARNING C280 IN LINE 841 OF SOURCE\OSD\OSDDRAWT102.C: 'cEnd': unreferenced local variable
 848          
 849          
 850          void OSDPosition(uCHAR cPos)
 851          {
 852   1      #ifdef _640_220 // PVI_9_VGA
                      if(cPos==RIGHT_TOP)
                      {
                              OSDCfgWr(CHAR_DLY_0,0x00);        //V[10:8] bit 6-4; H[10:8] bit2-0  23 12
                              OSDCfgWr(CHAR_DLY_1,0xEA);    //H[7:0]                           80 80
C51 COMPILER V7.07   OSDDRAWT102                                                           10/27/2005 16:27:46 PAGE 15  

                              OSDCfgWr(CHAR_DLY_2,0x00);    //v[7:0]                           64 30
                      }
                      if(cPos==CENTER)
                      {
                              OSDCfgWr(CHAR_DLY_0,0x00);        //V[10:8] bit 6-4; H[10:8] bit2-0  23 12
                              OSDCfgWr(CHAR_DLY_1,0xEA);    //H[7:0]                           80 80
                              OSDCfgWr(CHAR_DLY_2,0x00);    //v[7:0]                           64 30
                      }
                      else if(cPos==LEFT_BOTTOM)//not define yet!
                      {
                              OSDCfgWr(CHAR_DLY_0,0x12);              //V[10:8] bit 6-4; H[10:8] bit2-0
                              OSDCfgWr(CHAR_DLY_1,0x00);    //H[7:0]
                              OSDCfgWr(CHAR_DLY_2,0x60);    //v[7:0]  //00
                      }

⌨️ 快捷键说明

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