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

📄 osd1_initial.lst

📁 T103的开发程序 能兼容很多屏 可根据需要修改定义
💻 LST
📖 第 1 页 / 共 2 页
字号:
C51 COMPILER V8.08   OSD1_INITIAL                                                          11/23/2007 00:57:18 PAGE 1   


C51 COMPILER V8.08, COMPILATION OF MODULE OSD1_INITIAL
OBJECT MODULE PLACED IN .\Object\OSD1_Initial.obj
COMPILER INVOKED BY: C:\Keil\C51\BIN\C51.EXE SourceFile\OSD1_Initial.c LARGE BROWSE INCDIR(.\IncludeFile;.\IncludeFile\P
                    -anel;.\IncludeFile\Font_Icon) DEFINE(T108) DEBUG OBJECTEXTEND PRINT(.\List\OSD1_Initial.lst) OBJECT(.\Object\OSD1_Initia
                    -l.obj)

line level    source

   1          //---------------------------------------------------------------------------
   2          // Terawins Inc. Company Confidential Strictly Private
   3          //
   4          // $Archive: OSD1CSL.c $
   5          // $Revision: 0.01 $
   6          // $Author: Kevin Hsu $
   7          // $Date: 2006/10/12 $
   8          //
   9          // --------------------------------------------------------------------------
  10          // >>>>>>>>>>>>>>>>>>>>>>>>> COPYRIGHT NOTICE <<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<
  11          // --------------------------------------------------------------------------
  12          // Copyright 2002(c) Terawins Inc.
  13          // --------------------------------------------------------------------------
  14          #include "Common.h"
  15          #include "Global.h"
  16          #include "ICControl.h"  
  17          #include "System.h"
  18          #include "TWICreg.h"
  19          #include "OSD1_Define.h"
  20          #include "OSD1CSL.h"
  21          //#include "ICON2BP12X18.H"
  22          //#include "Icon4BP12x12.H"
  23          //#include "Icon4BP12x122.H"
  24          //#include "Icon4BP12x123.H"
  25          #include "FONT0_Font12W18H.h"
  26          #include "UIDraw.h"
  27          //#define  _Myson8957_
  28          #include "Myson8957.h"
  29          
  30          #define ICON1BP
  31          
  32          void OSD1Init(void);
  33          void OSD1LoadColor(void);
  34          void OSD1Load4BPFont(void);
  35          void OSD1Load2BPFont(void);
  36          void OSD1Load1BPFont(void);
  37          
  38          code unsigned char Icon1BPColorTable[]={
  39          0x00,0x00,0x1F,0x00,0x00,0xF8,0xE0,0x07,0x80,0xB7,0xA0,0x8D,0x80,0x53,0xA6,0x33,
  40          0xA0,0x07,0xC4,0x24,0xB9,0x10,0x1E,0x00,0x52,0x29,0x46,0x33,0xE0,0x05,0x44,0x24
  41          };
  42          void OSD1InItClearMenu(uCHAR MenuIndex)
  43          {
  44   1      #ifdef T128
                      uCHAR i; 
                      if(MenuIndex == MENU1)
                      {       
                              for(i=0; i<Menu1Height; i++)
                              {
                                      OSD1SetRamAddr(Menu1StrAdr+(Menu1Width+4)*i);
                                      //~Set RAtt_V~//
                                      if(i==0)
                                              OSD1SetRamData(0x4000|Menu1StartY); 
C51 COMPILER V8.08   OSD1_INITIAL                                                          11/23/2007 00:57:18 PAGE 2   

                                      else
                                              OSD1SetRamData(0xE001);
                                      //~Set RAtt_H~//
                                      OSD1SetRamData(0x6000|Menu1StartX);
                                      //~Set RAtt_A~//
                                      OSD1SetRamData(0xD000|0x0003);
              
                                      //~Set RAtt_C~//
                                      OSD1SetRamData(0x0000|(Menu1Width));    
                                      m_wBuff[0]=0;
                                      while(m_wBuff[0]<Menu1Width)
                                      {
                                              OSD1SetRamData(0x0000|((uWORD)(0&0x0F)<<9)|(0));
                                              m_wBuff[0]++;
                                      } 
                              }
                      }
                      else if(MenuIndex == MENU2)
                      {       
                              for(i=0; i<Menu2Height; i++)
                              {
                                      OSD1SetRamAddr(Menu2StrAdr+(Menu2Width+4)*i);
                                      //~Set RAtt_V~//
                                      if(i==0)
                                              OSD1SetRamData(0x4000|Menu2StartY); 
                                      else
                                              OSD1SetRamData(0xE001);
                                      //~Set RAtt_H~//
                                      OSD1SetRamData(0x6000|Menu2StartX);
                                      //~Set RAtt_A~//
                                      OSD1SetRamData(0xD000|0x0003);
                                      //~Set RAtt_C~//
                                      OSD1SetRamData(0x0000|(Menu2Width));    
                                      m_wBuff[0]=0;
                                      while(m_wBuff[0]<Menu2Width)
                                      {
                                              OSD1SetRamData(0x0000|((uWORD)(0&0x0F)<<9)|(0));
                                              m_wBuff[0]++;
                                      } 
                              }
                      }
              #else 
  96   1              uCHAR i=0; 
  97   1              if(MenuIndex == MENU1)
  98   1              {       
  99   2                      for(i=0; i<Menu1Height; i++)
 100   2                      {       
 101   3                              OSD1SetRamAddr(Menu1StrAdr+(Menu1Width+4)*i);
 102   3                              ICWr_Burst_A(OSD1_RAM_DL);
 103   3                              //~Set RAtt_V~//
 104   3                              if(i==0)
 105   3                                      OSDSetRamDataBuest(0x4000|Menu1StartY); 
 106   3                              else
 107   3                                      OSDSetRamDataBuest(0xE001);
 108   3                              //~Set RAtt_H~//
 109   3                              OSDSetRamDataBuest(0x6000|Menu1StartX);
 110   3                              //~Set RAtt_A~//
 111   3                              OSDSetRamDataBuest(0xD000|0x0003);
 112   3      
 113   3                              //~Set RAtt_C~//
 114   3                              OSDSetRamDataBuest(0x0000|(Menu1Width));        
 115   3                              m_wBuff[0]=0;
C51 COMPILER V8.08   OSD1_INITIAL                                                          11/23/2007 00:57:18 PAGE 3   

 116   3                              while(m_wBuff[0]<Menu1Width)
 117   3                              {
 118   4                                      OSDSetRamDataBuest(0x0000|((uWORD)(0&0x04)<<9)|(0));
 119   4                                      m_wBuff[0]++;
 120   4                              } 
 121   3                              ICWr_Burst_P();
 122   3                      } 
 123   2                      
 124   2              }
 125   1              else if(MenuIndex == MENU2)
 126   1              {
 127   2                      
 128   2                      for(i=0; i<Menu2Height; i++)
 129   2                      {
 130   3                              OSD1SetRamAddr(Menu2StrAdr+(Menu2Width+4)*i);
 131   3                              ICWr_Burst_A(OSD1_RAM_DL);
 132   3                              //~Set RAtt_V~//
 133   3                              if(i==0)
 134   3                                      OSDSetRamDataBuest(0x4000|Menu2StartY); 
 135   3                              else
 136   3                                      OSDSetRamDataBuest(0xE001);
 137   3                              //~Set RAtt_H~//
 138   3                              OSDSetRamDataBuest(0x6000|Menu2StartX);
 139   3                              //~Set RAtt_A~//
 140   3                              OSDSetRamDataBuest(0xD000|0x0003);
 141   3                              //~Set RAtt_C~//
 142   3                              OSDSetRamDataBuest(0x0000|(Menu2Width));        
 143   3                              m_wBuff[0]=0;
 144   3                              while(m_wBuff[0]<Menu2Width)
 145   3                              {
 146   4                                      OSDSetRamDataBuest(0x0000|((uWORD)(0&0x0F)<<9)|(0));
 147   4                                      m_wBuff[0]++;
 148   4                              } 
 149   3                              ICWr_Burst_P();
 150   3                      }       
 151   2                  
 152   2              }
 153   1      #endif          
 154   1              
 155   1      }
 156          void OSD1Init(void)
 157          {
 158   1              //~Set Font Size.~//
 159   1              if(FontWidth==OSD1FONTWIDTH12)
 160   1                      OSD1CfgWr(OSD_CHAR_FONT_SIZE,(0xC0)|(0x00)|FontHeight);
 161   1              if(FontWidth==OSD1FONTWIDTH16)
 162   1                      OSD1CfgWr(OSD_CHAR_FONT_SIZE,(0xC0)|(0x20)|FontHeight);
 163   1              //~Set Char2BP Font Index Base.~//
 164   1              OSD1CfgWr(OSD_CHAR2BP_FONT_INDEX,Font2BPIndexStr>>1);
 165   1              //~Set Char4BP Font Index Base.~//
 166   1              OSD1CfgWr(OSD_CHAR4BP_FONT_INDEX,Font4BPIndexStr>>1);
 167   1              //~Set Char2BP Font Memory Base Address.~//
 168   1              OSD1CfgWr(OSD_CHAR2BP_FONT_MEMADD_L,Font2BPDataStrAdr&0x00FF);
 169   1              OSD1CfgWr(OSD_CHAR2BP_FONT_MEMADD_M,Font2BPDataStrAdr>>8);
 170   1              //~Set Char4BP Font Memory Base Address.~//
 171   1              OSD1CfgWr(OSD_CHAR4BP_FONT_MEMADD_L,Font4BPDataStrAdr&0x00FF);
 172   1              OSD1CfgWr(OSD_CHAR4BP_FONT_MEMADD_M,Font4BPDataStrAdr>>8);
 173   1              //~Set Globa Alpha Blending Control.~//
 174   1              OSD1CfgWr(OSD_GLOBAL_ALPHA_BLENDING,0x10);
 175   1              //~Set Border/Shadow/Char1BP Color High Bits Offset.~//
 176   1              OSD1CfgWr(OSD_BSH_COLOR_HIGHBIT,0x20);
 177   1              //~Set Build-in Rom Font Index Base//
C51 COMPILER V8.08   OSD1_INITIAL                                                          11/23/2007 00:57:18 PAGE 4   

 178   1              OSD1CfgWr(OSD_FONTROM_INDEX,ROMFONTIndexStr>>1);
 179   1              //~Clear Ram    ~//
 180   1              OSD1ClearSRam();
 181   1              //Clear CFG
 182   1              IC_WritByte(TWIC_P0,OSD1_CFG_INDEX,0x09);
 183   1              for(m_wBuff[0] =0;m_wBuff[0]<18;m_wBuff[0]++)
 184   1              {                                                                                                               
 185   2                      IC_WritByte(TWIC_P0,OSD1_CFG_DATA,0);
 186   2              }                                                          
 187   1      
 188   1              //~Menue-1 Setting. ~//
 189   1              OSD1CfgWr(OSD_MENU1_ENABLE,0x00);
 190   1              OSD1CfgWr(OSD_MENU1_START_ADR_L,Menu1StrAdr&0x00FF);
 191   1              OSD1CfgWr(OSD_MENU1_START_ADR_M,Menu1StrAdr>>8);
 192   1              OSD1CfgWr(OSD_MENU1_END_ADR_L,Menu1EndAdr&0x00FF);
 193   1              OSD1CfgWr(OSD_MENU1_END_ADR_M,Menu1EndAdr>>8);
 194   1      
 195   1              //~Menue-2 Setting. ~//
 196   1              OSD1CfgWr(OSD_MENU2_ENABLE,0x00);
 197   1              OSD1CfgWr(OSD_MENU2_START_ADR_L,Menu2StrAdr&0x00FF);
 198   1              OSD1CfgWr(OSD_MENU2_START_ADR_M,Menu2StrAdr>>8);
 199   1              OSD1CfgWr(OSD_MENU2_END_ADR_L,Menu2EndAdr&0x00FF);
 200   1              OSD1CfgWr(OSD_MENU2_END_ADR_M,Menu2EndAdr>>8);
 201   1                                
 202   1      
 203   1              //~Load Color Table.~//
 204   1      #ifdef ICON1BP
 205   1              OSD1Load1BPFont();
 206   1              OSD1LoadColor();
 207   1      #endif
 208   1      
 209   1      
 210   1      #ifdef ICON2BP
                      OSD1LoadColor();
                      FontsStart = font0_000;
                      OSD1Load2BPFont();
              #endif //ICON2BP
 215   1      
 216   1      #ifdef ICON4BP
                      OSD1LoadColor(); 
                      FontsStart = font4BP0_000;
                      OSD1Load4BPFont();
              //      OSD1Load4BPFont2();
              #endif //ICON4BP
 222   1      
 223   1                      
 224   1              OSD1InItClearMenu(MENU1);
 225   1              OSD1InItClearMenu(MENU2);
 226   1      
 227   1      

⌨️ 快捷键说明

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