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

📄 main.lst

📁 mtv512mg + mx88v462 液晶电视驱动C完整程序
💻 LST
📖 第 1 页 / 共 5 页
字号:
 541   4                                              {
 542   5                                                      if ( Volume > 0 )
 543   5                                                      {
 544   6                                                              Volume --;
 545   6                                                      }
 546   5                                                      MuteFlag = 0;
 547   5                                                      Show_Volume(Volume);
 548   5                                                      Save_Parameter();                                               
 549   5                                              }
 550   4      
C51 COMPILER V7.50   MAIN                                                                  12/14/2006 10:36:36 PAGE 10  

 551   4                                              break;
 552   4                                      
 553   4                                      case RIGHT:
 554   4                                              if ( Menu_mode != 0 )
 555   4                                              {
 556   5                                                      OSDTimer = 1000;
 557   5                                                      Menu_Up();
 558   5                                              }
 559   4      
 560   4                                              else
 561   4                                              {
 562   5                                                      if ( Volume < 50 )
 563   5                                                      {
 564   6                                                              Volume ++;
 565   6                                                      }
 566   5                                                      MuteFlag = 0;
 567   5                                                      Show_Volume(Volume);
 568   5                                                      Save_Parameter();                                               
 569   5                                              }
 570   4      
 571   4                                              break;
 572   4      
 573   4                              }
 574   3                      }
 575   2              }       
 576   1      }
 577          
 578          void    Set_SourceType()
 579          {
 580   1              ScreenOFF;
 581   1              
 582   1              Mute();
 583   1              
 584   1              Show_Subwin(0x00);
 585   1      
 586   1              if ( Source_type == TV_CHL )
 587   1                      memcpy(MainMenuItem,MainMenuItem_TV,21);
 588   1              else 
 589   1                      memcpy(MainMenuItem,MainMenuItem_AV,21);
 590   1                      
 591   1              if (Source_type == TV_CHL)
 592   1              {
 593   2                      Delay(20000);
 594   2              
 595   2                      TV_Init();
 596   2                      Show_Channel();
 597   2                      AUDIO_CHANEL1 = 0;
 598   2                      AUDIO_CHANEL2 = 1;
 599   2              }
 600   1              else
 601   1              {
 602   2                      AUDIO_CHANEL1 = 0;
 603   2                      AUDIO_CHANEL2 = 0;
 604   2              }
 605   1      
 606   1              Horizontal = S_Horizontal;
 607   1              Vertical = S_Vertical;
 608   1                      
 609   1              V46X_VideoSource(Source_type);
 610   1              Auto_Detect_TV_in();
 611   1              Auto_Detect_TV_in();
 612   1              Auto_Detect_TV_in();
C51 COMPILER V7.50   MAIN                                                                  12/14/2006 10:36:36 PAGE 11  

 613   1              
 614   1              if ( Source_type == TV_CHL)
 615   1                      Screen_Blue();
 616   1              else
 617   1                      CVD1_ReadWrite(W_TYPE, 0x07, 0x20);
 618   1      
 619   1              Set_VideoPP(0);
 620   1              Show_VideoMode();
 621   1      }
 622          
 623          
 624          void    Show_MainMenu_Init()
 625          {
 626   1              BYTE    i,j;
 627   1              
 628   1              TitleFlag = 0;
 629   1              VolumeFlag = 0;
 630   1              MenuFlag = 1;
 631   1              Input_Num = 0;
 632   1              
 633   1              Show_Subwin(0x00);
 634   1              Clr_OSDCode();
 635   1              
 636   1              OSDTimer = 1000;
 637   1      
 638   1              OSD_SubWin_Attr(0,13,4,11,6,0);
 639   1              OSD_SubWin_Attr(1,25,4,6,6,66);
 640   1      
 641   1              OSD_SubWin_Attr(2,11,11,19,1,102);
 642   1              
 643   1              for (i=0; i<6; i++)
 644   1              {
 645   2                      if ( MainMenuItem[Menu_mode-1][i] == 0xFF )
 646   2                              for (j=0;j<11;j++ ) buf[i*11+j] = 0x59;
 647   2                      else
 648   2                              memcpy(&buf[i*11],OSD_Table_Main[Language][MainMenuItem[Menu_mode-1][i]],11);
 649   2              }
 650   1      
 651   1              Write_OSDCode(buf,11,6,0);      //Write OSD Code buffer
 652   1      
 653   1              Show_MainMenu1();       
 654   1              Show_MainMenu2();       
 655   1              Show_MainMenu_HL();
 656   1              Show_Subwin(0x07);
 657   1                      
 658   1      //      Show_HV();
 659   1      }
 660          
 661          void    Show_MainMenu_HL()
 662          {
 663   1              BYTE    hl;
 664   1              
 665   1              hl = Menu_item;
 666   1      /*
 667   1              if ( Vertical )
 668   1                      hl = 5 - Menu_item;
 669   1      */              
 670   1              OSD_Attribute(0, 102, FG_COLOR, BG_COLOR);
 671   1              OSD_Attribute(hl*11, 11, FG_COLOR_H, BG_COLOR);
 672   1              OSD_Attribute(66+hl*6, 6, FG_COLOR_H, BG_COLOR);
 673   1      
 674   1              OSD_Attribute(102, 19, FG_COLOR_H, BG_COLOR);
C51 COMPILER V7.50   MAIN                                                                  12/14/2006 10:36:36 PAGE 12  

 675   1      }
 676          
 677          void    Show_MainMenu1()
 678          {
 679   1              BYTE    i;
 680   1              
 681   1              for (i=0; i<36; i++)
 682   1                      buf[i] = 0x59;
 683   1                      
 684   1              for (i=0; i<6; i++)
 685   1                      Menu_Show(MainMenuItem[Menu_mode-1][i],&buf[i*6]);
 686   1      
 687   1              Write_OSDCode(buf, 6, 6, 66);                                           //Write OSD Code buffer
 688   1      }
 689          
 690          void    Show_MainMenu2()
 691          {
 692   1              BYTE    i;
 693   1              
 694   1              if ( Menu_mode == 1 )
 695   1              {
 696   2                      if ( Menu_item <= 3)
 697   2                              Show_Bar(buf,Adj_Value[Menu_item+1]);
 698   2                      else if ( Menu_item == 4)
 699   2                              Show_Bar(buf,S_Hue);
 700   2              }
 701   1              else if ( Menu_mode == 3 )
 702   1              {
 703   2                      Show_TV_Bar(buf,Fp_Position);
 704   2              }
 705   1              else
 706   1                      for (i=0; i<19; i++ ) buf[i] = 0x59;
 707   1      
 708   1              Write_OSDCode(buf, 19, 1, 102);                                         //Write OSD Code buffer
 709   1      }
 710          
 711          void    Show_Mute()
 712          {
 713   1              if (MuteFlag)
 714   1              {
 715   2                      Show_Subwin(0x00);
 716   2                      
 717   2                      if ( Screen_mode )
 718   2                              OSD_SubWin_Attr(7,7,1,1,1,0);
 719   2                      else
 720   2                              OSD_SubWin_Attr(7,3,1,1,1,0);
 721   2                      
 722   2                      buf[0] = 0x51;
 723   2                      Write_OSDCode(buf, 1, 1, 0);                                            //Write OSD Code buffer
 724   2                      OSD_Attribute(0, 1, 0x0C, BG_COLOR);                            //Set Title line attribute
 725   2                      Show_Subwin(0x80);
 726   2              }
 727   1      }
 728          
 729          void    Show_Volume(BYTE volume)
 730          {
 731   1              BYTE    i,color;
 732   1              
 733   1              if ( VolumeFlag == 0 )
 734   1              {
 735   2                      TitleFlag = 0;
 736   2                      VolumeFlag = 1;
C51 COMPILER V7.50   MAIN                                                                  12/14/2006 10:36:36 PAGE 13  

 737   2                      MenuFlag = 0;
 738   2                      Input_Num = 0;
 739   2                      Show_Subwin(0x00);
 740   2              }
 741   1              
 742   1              OSDTimer = 1000;
 743   1              
 744   1              if ( MuteFlag )
 745   1                      color = 0x0C;
 746   1              else
 747   1                      color = FG_COLOR;
 748   1              
 749   1              OSD_SubWin_Attr(1,11,10,19,2,0);
 750   1              
 751   1              OSD_Attribute(0, 19, color, BG_COLOR);          //Set Title line attribute      
 752   1              OSD_Attribute(19, 38, FG_COLOR_H, BG_COLOR);
 753   1      
 754   1              for (i=0; i<38; i++ ) buf[i] = 0x59;
 755   1              if ( MuteFlag)
 756   1                      memcpy(&buf[1],OSD_Table_Mute[Language],13);
 757   1              else
 758   1                      memcpy(&buf[1],OSD_Table_Volume[Language],13);
 759   1              
 760   1              buf[16] = volume/10;
 761   1              buf[17] = volume%10;
 762   1      
 763   1              Show_Bar(&buf[19],volume);
 764   1      
 765   1              Write_OSDCode(buf, 19, 2, 0);                                   //Write OSD Code buffer 
 766   1      
 767   1              Show_Subwin(0x02);
 768   1      }
 769          
 770          void    HV_Change()
 771          {
 772   1              if ( Horizontal )
 773   1                      Vertical = !Vertical;
 774   1              Horizontal = !Horizontal;
 775   1      
 776   1              S_Horizontal = Horizontal;
 777   1              S_Vertical = Vertical;
 778   1      
 779   1              Set_HV();       
 780   1      }
 781          
 782          void    Show_Number(BYTE num, BYTE *buf)
 783          {
 784   1              buf[1] = buf[2] = 0x59;
 785   1              
 786   1              if (num >= 100)
 787   1              {
 788   2                      buf[0] = num/100;
 789   2                      buf[1] = num%100/10;
 790   2                      buf[2] = num%10;
 791   2              }
 792   1              else if ( num >= 10)
 793   1              {
 794   2                      buf[0] = num/10;
 795   2                      buf[1] = num%10;
 796   2              }
 797   1              else
 798   1                      buf[0] = num;
C51 COMPILER V7.50   MAIN                                                                  12/14/2006 10:36:36 PAGE 14  

 799   1      }
 800          
 801          void    Show_CInput()
 802          {
 803   1              TitleFlag = 1;
 804   1              VolumeFlag = 0;
 805   1              MenuFlag = 0;
 806   1              Show_Subwin(0x00);
 807   1              
 808   1              OSDTimer = 200;
 809   1              if ( Screen_mode )
 810   1                      OSD_SubWin_Attr(7,7,1,2,1,0);
 811   1              else
 812   1                      OSD_SubWin_Attr(7,3,1,2,1,0);
 813   1              buf[0] = C_Input;

⌨️ 快捷键说明

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