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

📄 menu.lst

📁 Maria2 CarTV 20060707 Tony
💻 LST
📖 第 1 页 / 共 4 页
字号:
 524   3                                  break;
 525   3      
 526   3                  AdjustSoundMode(MIA_IncValue);
 527   3                      menuAction=MIA_RedrawMenu;
 528   3                  g_ucMenuPageIndex=ShowTVChannelMenu;
 529   3                  g_ucMenuItemIndex=0;
 530   3                  processEvent=TRUE;
 531   3                  break;
 532   3                 case MIA_Searchup:
 533   3                              g_bManualScanDirection=1;
 534   3                              TV_ChannelManualScanInit();
 535   3                              return FALSE;// DISABLE OSD TIME RESET
 536   3      
 537   3                 case MIA_Searchdown:
 538   3                              g_bManualScanDirection=0;
 539   3                              TV_ChannelManualScanInit();
 540   3                              return FALSE;// DISABLE OSD TIME RESET
 541   3      
 542   3                 case MIA_IR_ChromaSwitch:
 543   3                      if(!IsTVInUse())
 544   3                                  break;
 545   3                  AdjustChromaMode(MIA_IncValue);
C51 COMPILER V8.01   MENU                                                                  11/28/2006 08:08:08 PAGE 10  

 546   3                      menuAction=MIA_RedrawMenu;
 547   3                  g_ucMenuPageIndex=ShowTVChannelMenu;
 548   3                  g_ucMenuItemIndex=0;
 549   3                  processEvent=TRUE;
 550   3                  break;
 551   3      
 552   3                case MIA_AutoSerach:
 553   3                      TV_ChannelAutoScanInit();
 554   3                      return FALSE;// DISABLE OSD TIME RESET
 555   3      
 556   3                case MIA_IRKEY_0:
 557   3                case MIA_IRKEY_1:
 558   3                case MIA_IRKEY_2:
 559   3                case MIA_IRKEY_3:
 560   3                case MIA_IRKEY_4:
 561   3                case MIA_IRKEY_5:
 562   3                case MIA_IRKEY_6:
 563   3                case MIA_IRKEY_7:
 564   3                case MIA_IRKEY_8:
 565   3                case MIA_IRKEY_9:
 566   3                      irAdjustNumKey(IRKeyToNumber(menuAction));
 567   3                      menuAction=MIA_RedrawMenu;
 568   3                          processEvent=TRUE;
 569   3                      break;
 570   3      
 571   3                case MIA_IRKEY_100:
 572   3                          irNumInputMode();
 573   3                      menuAction=MIA_RedrawMenu;
 574   3                          processEvent=TRUE;
 575   3                  break;
 576   3                #endif
 577   3      
 578   3              #if VGA_ENABLE
 579   3              case MIA_Auto:
 580   3                  if (FreeRunModeFlag )
 581   3                    break;
 582   3                  menuAction=MIA_RedrawMenu;
 583   3                  g_ucMenuPageIndex=AutoMenu;
 584   3                  g_ucMenuItemIndex=0;
 585   3                  processEvent=TRUE;
 586   3                  break;
 587   3              #endif
 588   3                  default:
 589   3                  return FALSE;
 590   3                  break;
 591   3              }
 592   2          }
 593   1        return TRUE;
 594   1      }
 595          
 596          
 597          //=========================================================================
 598          void DrawOsdMenu(void)
 599          { BOOL redrawFlags;
 600   1          BYTE ucBank;
 601   1          ucBank = msReadByte( BK0_00_REGBK);
 602   1      
 603   1        msWriteByte(BK0_00_REGBK, REG_BANK_SCALER);
 604   1        Clr_DynamiccaptionFlag();
 605   1        if (CurrentMenu.Flags&mpbInvisible)
 606   1          Osd_Hide();
 607   1        else
C51 COMPILER V8.01   MENU                                                                  11/28/2006 08:08:08 PAGE 11  

 608   1          {
 609   2              BYTE i;
 610   2            // setup osd window & position
 611   2              redrawFlags=FALSE;
 612   2              if (CurrentMenu.XSize!=OsdWindowWidth || CurrentMenu.YSize!=OsdWindowHeight ||
 613   2                !(msReadOSDByte(OSD_0C_IOSDC1)&MWIN_B))
 614   2                      redrawFlags=TRUE;
 615   2              if (redrawFlags)
 616   2                      {
 617   3                        Osd_Hide();
 618   3                        Osd_SetWindowSize(CurrentMenu.XSize, CurrentMenu.YSize);
 619   3                        //Clr_ReverseYFlag();
 620   3                        //Clr_ReverseXFlag();
 621   3                        //g_VideoSetting.OsdHStart=98;
 622   3                        //g_VideoSetting.OsdVStart=95;
 623   3      
 624   3                     if (FactoryModeFlag)
 625   3                          Osd_SetPosition(10, 10);
 626   3      
 627   3                         else if (CurrentMenu.Flags&mpbSetItemTop)
 628   3                              {
 629   4                              Osd_SetPosition((99-g_VideoSetting.Scaling*15), 5);
 630   4                            msWriteByte(BK0_63_OSD_CTL, 0x0F);
 631   4                              }
 632   3                         else if(CurrentMenu.Flags&mpbGame)
 633   3                              {
 634   4                       Osd_SetPosition(50, 60);
 635   4                               msWriteByte(BK0_63_OSD_CTL, 0x00);
 636   4                              }
 637   3                        else
 638   3                          { Osd_SetPosition(50, 50);
 639   4                               msWriteByte(BK0_63_OSD_CTL, 0x03);
 640   4                          }
 641   3                              if (g_ucMenuPageIndex==MuteMenu)
 642   3                                      Osd_SetPosition((2+g_VideoSetting.Scaling*15), 5);
 643   3      
 644   3                              #if CALENDAR_ENABLE
                                      if (g_ucMenuPageIndex==CalendarMenu)
                                              msWriteByte(BK0_63_OSD_CTL, 0x0F);
                                      #endif
 648   3      
 649   3                              if (g_ucMenuPageIndex==VolumeMenu)
 650   3                                      Osd_SetPosition(50, 98);
 651   3                      for (i=0; i<MenuItemCount; i++)
 652   3                          DrawOsdMenuItem(i, &CurrentMenu.MenuItems[i]);
 653   3      
 654   3                              DrawOsdMenuItem(g_ucMenuItemIndex, &CurrentMenu.MenuItems[g_ucMenuItemIndex]);//ZWTAN 20050711
 655   3      
 656   3                      if (FactoryModeFlag)
 657   3                          Osd_DrawChar(0, 0, 'F');
 658   3      
 659   3                       Osd_Show();
 660   3                      }
 661   2              else
 662   2              {
 663   3                      for (i=0; i<MenuItemCount; i++)
 664   3                      DrawOsdMenuItem(i, &CurrentMenu.MenuItems[i]);
 665   3                      DrawOsdMenuItem(g_ucMenuItemIndex, &CurrentMenu.MenuItems[g_ucMenuItemIndex]);
 666   3      
 667   3                              Osd_Show();
 668   3              }
 669   2          }
C51 COMPILER V8.01   MENU                                                                  11/28/2006 08:08:08 PAGE 12  

 670   1      
 671   1          msWriteByte(BK0_00_REGBK, ucBank);
 672   1      
 673   1      }
 674          
 675          //=========================================================================
 676          // draw menu item
 677          void DrawOsdMenuItem(BYTE itemIndex, MenuItemType *menuItem)
 678          {
 679   1          if (menuItem->Flags&mibInvisible)
 680   1              return;
 681   1      
 682   1          if (menuItem->Flags&mibFactoryItem && !FactoryModeFlag)
 683   1              return;
 684   1      
 685   1          if (menuItem->Flags&mibTVItem&& !IsTVInUse())
 686   1              return;
 687   1      
 688   1          if (menuItem->Flags&mibVGADisable&& IsVGAInUse())
 689   1              return;
 690   1      
 691   1          if (menuItem->Flags&mibVGAItem&& !IsVGAInUse())
 692   1              return;
 693   1      
 694   1          if (menuItem->Flags&mibVGAItem&& IsVGAInUse() && SyncLossState())
 695   1                  return;
 696   1      
 697   1          if (menuItem->Flags&mibSelectable && itemIndex==g_ucMenuItemIndex)
 698   1              Osd_SetTextColor(menuItem->SelForeColor, menuItem->SelBackColor);
 699   1          else
 700   1              Osd_SetTextColor(menuItem->ForeColor, menuItem->BackColor);
 701   1      
 702   1          DrawOsdMenuItemText(itemIndex, menuItem);
 703   1      
 704   1          if (&CurrentMenuItem==menuItem || menuItem->Flags&mibDrawValue)
 705   1          {
 706   2              if (&(menuItem->DisplayValue))
 707   2                  DrawOsdMenuItemValue(itemIndex, (menuItem->DisplayValue));//->DisplayValue);
 708   2          }
 709   1      }
 710          
 711          //=========================================================================
 712          // draw menu item display text
 713          void DrawOsdMenuItemText(BYTE itemIndex, MenuItemType *menuItem)
 714          {
 715   1          if (menuItem->DisplayText==NULL)
 716   1              return;
 717   1      
 718   1          if (menuItem->DrawItemMethod==DWI_Icon || menuItem->DrawItemMethod==DWI_Text)
 719   1            {
 720   2            #ifdef Multi_language
                      if (IsVGAInUse()&&g_ucMenuPageIndex==PictureMenu&&itemIndex == 3)
                              Osd_DrawStr(menuItem->XPos, menuItem->YPos-1, menuItem->DisplayText());
                      else
                    #endif
 725   2              Osd_DrawStr(menuItem->XPos, menuItem->YPos, menuItem->DisplayText());
 726   2            }
 727   1        else // full text
 728   1          {
 729   2              BYTE i;
 730   2              BYTE xPos;
 731   2      
C51 COMPILER V8.01   MENU                                                                  11/28/2006 08:08:08 PAGE 13  

 732   2              #define len itemIndex
 733   2              len=strlen(menuItem->DisplayText());
 734   2              if (menuItem->DrawItemMethod==DWI_FullText)
 735   2                  xPos=menuItem->XPos;
 736   2              else if (menuItem->DrawItemMethod==DWI_FullCenterText || menuItem->DrawItemMethod==DWI_CenterText)
 737   2                  xPos=(OsdWindowWidth-len)/2; // get center position
 738   2      
 739   2              Osd_DrawStr(xPos, menuItem->YPos, menuItem->DisplayText());
 740   2              if (menuItem->DrawItemMethod!=DWI_CenterText) // full text
 741   2              {
 742   3                  for (i=0; i<xPos; i++)
 743   3                      Osd_DrawChar(i, menuItem->YPos, ' '); // fill space
 744   3                  for (i=xPos+len; i<OsdWindowWidth; i++)
 745   3                      Osd_DrawChar(i, menuItem->YPos, ' ');
 746   3              }
 747   2              #undef len
 748   2          }
 749   1      }
 750          
 751          //=========================================================================
 752          // draw menu item display value
 753          void DrawOsdMenuItemValue(BYTE itemIndex, DrawValueType *valueItem)
 754          {
 755   1          while(1)
 756   1          {
 757   2              if (valueItem->DrawNumber)
 758   2                  DrawOsdMenuItemNumber(itemIndex, valueItem->DrawNumber);
 759   2              if (valueItem->DrawGuage)
 760   2                  DrawOsdMenuItemGuage(itemIndex, valueItem->DrawGuage);
 761   2              if (valueItem->DrawRadioGroup)
 762   2                  DrawOsdMenuItemRadioGroup(itemIndex, valueItem->DrawRadioGroup);
 763   2              if(valueItem->Flags&dwiEnd)
 764   2                  break;
 765   2              valueItem++;
 766   2          }
 767   1      }
 768          
 769          //=========================================================================
 770          // draw number
 771          void DrawOsdMenuItemNumber(BYTE itemIndex, DrawNumberType *numberItem)
 772          {
 773   1          if (itemIndex==g_ucMenuItemIndex)//Vick Add
 774   1              Osd_SetTextColor(numberItem->SelForeColor,numberItem->SelBackColor);
 775   1          else
 776   1              Osd_SetTextColor(numberItem->ForeColor,numberItem->BackColor);
 777   1      
 778   1          #define xPos itemIndex
 779   1          xPos=numberItem->XPos;
 780   1          if (xPos==0xFF)
 781   1          {
 782   2              xPos=(OsdWindowWidth-4)/2-1;
 783   2          }
 784   1          if (numberItem->Flags&dwiHex)
 785   1              Osd_DrawHex(xPos, numberItem->YPos, numberItem->GetValue());
 786   1          else
 787   1              Osd_DrawNum(xPos, numberItem->YPos, numberItem->GetValue());
 788   1          #undef xPos
 789   1      }
 790          
 791          
 792          //=========================================================================

⌨️ 快捷键说明

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