measure.lst

来自「显示屏驱动源代码」· LST 代码 · 共 1,339 行 · 第 1/5 页

LST
1,339
字号
C51 COMPILER V7.06   MEASURE                                                               02/21/2008 14:00:27 PAGE 1   


C51 COMPILER V7.06, COMPILATION OF MODULE MEASURE
OBJECT MODULE PLACED IN .\Output\Measure.obj
COMPILER INVOKED BY: C:\Keil\C51\BIN\C51.EXE Measure.c COMPACT OPTIMIZE(9,SIZE) BROWSE INCDIR(.\Include\) DEBUG OBJECTEX
                    -TEND PRINT(.\Source\Measure.lst) OBJECT(.\Output\Measure.obj)

stmt level    source

   1          #include "Config.h"
   2          
   3          
   4          #include "typedefs.h"
   5          
   6          #include "main.h"
   7          #include "tw88.h"
   8          #include "measure.h"
   9          #include "adc.h"
  10          #include "i2c.h"
  11          #include "dispinfo.h"
  12          #include "pc_eep.h"
  13          #include "etc_eep.h"
  14          #include "printf.h"
  15          #include "osdmenu.h"
  16          #include "RegMap.h"
  17          #include "panel.h"
  18          #include "CPU.h"
  19          #include "Audio.h"
  20          
  21          //================== Input Measurement ====================================
  22          
  23          //static WORD  LastVPN=0;
  24          //static DWORD LastIHF=0;
  25          //static WORD  LastIVF=0;
  26          // Hans
  27          IDATA BYTE    cSourceState = ssSourceMonitor;
  28          
  29          WORD    VPosMax, VPosCurr, HPosMax, HPosCurr;
  30          
  31          DWORD   RGBPeak, PhaseRGB;
  32          
  33          #ifdef WIDE_SCREEN
  34          extern BYTE WideScreenMode;
  35          #endif
  36          
  37          static bit bPanelMute;
  38          static BYTE cCounter;   
  39          
  40          CODE BYTE PcModeStr[][15] = {
  41              "720x400 70Hz",     // 0
  42          
  43              "640x400 80Hz",     // 1
  44              "640x350 85Hz",     // 2
  45              "720x400 85Hz",     // 3
  46          
  47              "640x480 60Hz",     // 4
  48              "640x480 66Hz",     // 5
  49              "640x480 70Hz",     // 6
  50              "640x480 72Hz",     // 7
  51              "640x480 75Hz",     // 8
  52              "640x480 85Hz",     // 9
  53          
  54              "800x600 56Hz",     // 10
C51 COMPILER V7.06   MEASURE                                                               02/21/2008 14:00:27 PAGE 2   

  55              "800x600 60Hz",     // 11
  56              "800x600 70Hz",     // 12
  57              "800x600 72Hz",     // 13
  58              "800x600 75Hz",     // 14
  59              "800x600 85Hz",     // 15
  60              
  61              "832x624 75Hz",     // 16
  62          
  63              "1024x768 60Hz",    // 17
  64              "1024x768 70Hz",    // 18
  65              "1024x768 72Hz",    // 19
  66              "1024x768 75Hz",    // 20
  67              "1024x768 85Hz",    // 21
  68          
  69              "1152x864 60Hz",    // 22
  70              "1152x864 70Hz",    // 23
  71              "1152x864 75Hz",    // 24
  72              
  73                  "1280x1024 60Hz",       // 25
  74              "1280x1024 70Hz",   // 26
  75              "1280x1024 75Hz",   // 27
  76          
  77              "RGB 480p 60Hz",    // 28
  78              "RGB 720p 60Hz",    // 29
  79              "RGB 720p 50Hz",    // 30
  80              "RGB 1080i 60Hz",   // 31
  81              "RGB 1080i 50Hz",   // 32
  82              "RGB 1080i 50Hz",   // 33
  83              "RGB 480i 60Hz",    // 34
  84              "RGB 576i 50Hz",    // 35
  85              "RGB 576p 50Hz",    // 36
  86          
  87              "YPbPr 480p",       // 37
  88              "YPbPr 720p",       // 38
  89              "YPbPr 720p50",     // 39
  90              "YPbPr 1080i",      // 40
  91              "YPbPr 1080i50",    // 41
  92              "YPbPr 1080i50",    // 42
  93              "YPbPr 480i",       // 43
  94              "YPbPr 576i",       // 44
  95              "YPbPr 576p",       // 45
  96          
  97                  ""
  98          };
  99          
 100          //-------------------------------------------------------------------------
 101          extern CODE struct RegisterInfo UserRange;
 102          
 103          extern  IDATA WORD  IVF;
 104          extern  IDATA DWORD     IHF;
 105          extern            BYTE  DebugLevel;
 106          extern        bit   Range4Coarse;
 107          extern  DATA  WORD  tm01, tm001;
 108          extern  DATA  BYTE  tic01;
 109          extern  DATA  WORD  tic_pc;
 110          
 111                          IDATA BYTE PcMode;
 112          
 113          #if defined WVGA || defined WSVGA || defined WXGA || defined VGA_PRIMEVIEW
 114                          bit   Flag4Bypass=0;        // 0:non-bypass
 115          #else
                              bit   Flag4Bypass=0;//1;                // 1:bypass 
C51 COMPILER V7.06   MEASURE                                                               02/21/2008 14:00:27 PAGE 3   

              #endif
 118          
 119          //-----------------------------------------------------------------------------
 120          extern  CODE struct _PCMDATA  PCMDATA[];
 121          
 122          extern CODE BYTE *CheckPCCableStr[];
 123          extern CODE BYTE *CheckDTVCableStr[];
 124          extern CODE BYTE *OutOfRangeStr[] ;
 125          #ifdef SUPPORT_COMPONENT
 126          extern IDATA BYTE  ComponentMode;
 127          #endif
 128          extern IDATA BYTE  VInputStd;
 129          extern bit AutoDetect;
 130          extern IDATA BYTE InputSelection;
 131          extern CODE BYTE COMPONENT_STR[][15] ;
 132          extern  bit             DisplayInputHold;
 133          extern     CODE struct _PANELDATA PanelData; // Hans
 134          
 135          CODE BYTE DTVMode[] = { EE_YPbPr_480I, EE_YPbPr_576I, EE_YPbPr_480P, EE_YPbPr_576P,
 136                                                          EE_YPbPr_1080I, EE_YPbPr_720P, EE_PC_UNKNOWN, EE_PC_UNKNOWN };
 137          #define DetectDTVInputSource()  DTVMode[ReadADC(0xC1)& 0x07]
 138          
 139          #if defined( SUPPORT_PC ) || defined( SUPPORT_DTV )
 140          //=============================================================================
 141          /*BYTE Measure_VPN_IHF( WORD *p_vpn, DWORD *p_ihf)
 142          {
 143                  DWORD ppf;
 144                  WORD  hpn;
 145          
 146          
 147                  if( !MeasureAndWait(3) ) {
 148                  
 149                          #ifdef DEBUG_PC
 150                          dPuts("\r\n  ** Error at Get_VPN_IHF");
 151                          #endif
 152                          return 0;
 153                  }
 154          
 155                  ppf    = GetPPF();                      //
 156                  *p_vpn = GetVPN();                      //
 157                  hpn    = GetHPN();                      // HPN = H Period Num
 158          
 159                  *p_ihf = (ppf + hpn/2) / hpn;                   // IHF = PPF / HPN 
 160          
 161                  #ifdef DEBUG_PC
 162                  dPrintf("\r\n  *** PPF=%ld   HPN=%4d", ppf, hpn);
 163                  dPrintf("  --> VPN=%4d   IHF=%ld ", *p_vpn, *p_ihf);
 164                  dPrintf("  IVF=%d", (WORD)((*p_ihf + *p_vpn/2) / *p_vpn) );
 165          
 166          //      dPrintf(" [%d, %ld]", LastVPN, LastIHF);
 167          
 168                  #endif
 169          
 170                  return 1;
 171          }
 172          */
 173          void ResetPCValue(void)
 174          {
 175   1              SaveDefaultPCDataEE();
 176   1              GetPCDataEE(PcMode);
 177   1      }
 178          
C51 COMPILER V7.06   MEASURE                                                               02/21/2008 14:00:27 PAGE 4   

 179          void StartNewDetect(void)
 180          {
 181   1              ClearEnDet();
 182   1              MeasureAndWait(3);
 183   1              SetEnDet();
 184   1      
 185   1              WriteTW88(STATUS0, 0xff);
 186   1              WriteTW88(STATUS1, 0xff);
 187   1      }
 188          /*
 189          WORD gap(WORD a, WORD b)
 190          {
 191                  if( a>b ) return a-b;
 192                  return b-a;
 193          }
 194          */
 195          WORD GetCoarseValue(void)
 196          {
 197   1              return GetCoarse();
 198   1      }
 199          
 200          WORD SetPCCoarseValue(BYTE val)         //1:Up  2:Dn
 201          {
 202   1              WORD    coarse;
 203   1      
 204   1      //      WriteADC(0xc1, 0x30);
 205   1              WriteADC(0xc0, 0x30);
 206   1      
 207   1              coarse = GetCoarse();
 208   1              if( val==UP ) coarse++;
 209   1              else coarse--;
 210   1      
 211   1              SetCoarse(coarse);
 212   1              SaveCoarseEE(PcMode);   // HHY 1.33
 213   1      
 214   1              StartNewDetect();
 215   1      
 216   1      //      WriteADC(0xc1, 0x20);
 217   1              WriteADC(0xc0, 0x20);
 218   1              return coarse;
 219   1      }
 220          
 221          
 222          BYTE SetPhaseValue(BYTE val)
 223          {
 224   1              BYTE    phase;
 225   1      
 226   1              phase = GetPhaseCurrent();
 227   1      
 228   1              if( val==UP ) {
 229   2                      if( phase>=31 ) return phase;
 230   2                      else phase++;
 231   2              }
 232   1              else {
 233   2                      if( phase==0 ) return phase;
 234   2                      else phase--;
 235   2              }
 236   1      
 237   1              SetPhase(phase);
 238   1              SavePhaseEE(PcMode);    // HHY 1.33
 239   1      
 240   1              return phase;
C51 COMPILER V7.06   MEASURE                                                               02/21/2008 14:00:27 PAGE 5   

 241   1      }
 242          
 243          BYTE IsDTVInput(void)
 244          {
 245   1              if( GetInputSelection()==DTV || GetInputSelection()==PC ) {
 246   2                      if( PcMode>=EE_RGB_480P && PcMode<=EE_YPbPr_576P ) return 1;
 247   2              }
 248   1              return 0;
 249   1      }
 250          

⌨️ 快捷键说明

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