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

📄 eds.lst

📁 此程序为twell8806驱动程序
💻 LST
📖 第 1 页 / 共 3 页
字号:
                                              #ifdef DEBUG_CCEDS1
                                              dPrintf("*** v-chip : Invalid Data(~0f)");
                                              #endif
                                      }
                              }
                              else 
                                      _SET_EDS_CONTROL_
                      }
                      else if( eds_data <= 0x1f ) {   //checksum , possible second control or CC data
                              if( IsChecksumPair )                                                                            //checksum value
                                      _CLEAR_EDS_CONTROL_
                              else if( EDS_control && (EDS_packet_len==2) )                           //possible second control
                                      ;
                              else {
                                      //maybe CC data??
                                      #ifdef DEBUG_CCEDS1
                                      dPrintf("*** v-chip : maybe CC data(~1f)");
                                      #endif
                                      return FALSE;
                              }
                      }
                      else {                                          // checksum or Info data
                              if( IsChecksumPair )                                                                            //checksum value
                                      _CLEAR_EDS_CONTROL_
                              else if( EDS_control && (EDS_packet_len>2) )                            //Info data
                                      ;
                              else {
                                      //maybe CC data??
                                      #ifdef DEBUG_CCEDS1
                                      dPrintf("*** v-chip : maybe CC data(~ff)");
                                      #endif
                                      return FALSE;
                              }
                      }
              
                      #ifdef DEBUG_CCEDS
                      if( GetDebugTypeCCEDS()>=ENHANCED1 ) 
                              if( EDS_packet_len==1 )
                                      dPrintf("\r\nF2:%02X[%02X]:E ", (WORD)cc_status, (WORD)eds_data);
                              else
                                      dPrintf("F2:%02X[%02X]:e ", (WORD)cc_status, (WORD)eds_data);
                      if( GetDebugTypeCCEDS()>=ENHANCED2 ) 
                              dPrintf("[ctrl:0x%x,len:%d] ", (WORD)EDS_control, (WORD)EDS_packet_len);
                      #endif
              
                      
                      
                      if( EDS_control== CURRENT_CLASS_START_RATING || EDS_control==CURRENT_CLASS_CONT_RATING ) {
                              switch( EDS_packet_len ) {
                              case 3:                                         // eds_data==Information
                                              if( eds_data >= 0x40 )  MovieRating = eds_data;
                                              else                                    {
                                                      MovieRating = 0;
                                                      #ifdef DEBUG_CCEDS1
C51 COMPILER V7.50   EDS                                                                   08/20/2007 10:23:30 PAGE 8   

                                                      dPrintf("*** v-chip :Invalid MovieRating Data");
                                                      #endif
                                              }
                                              break;
                              case 4:
                                              if( eds_data >= 0x40 ) {        // Valid data 
                                                      //TV rating
                                                      if( (MovieRating & 0x40) && (eds_data & 0x40) ) {       //valid data for rating
                                                              if( (MovieRating & 0x08)==0 ) { //valid data for movie rating
                                                                      MovieRating &= 0x07;
                                                              
                                                                      #ifdef DEBUG_CCEDS
                                                                      if( GetDebugTypeCCEDS() >=BASIC )
                                                                              dPrintf("*** v-chip info(%s)", OSDBlockedMovieStr[MovieRating]);
                                                                      #endif
              
              
                                                                      if( BlockedMovie && (MovieRating >= BlockedMovie) ) {
                                                                              CheckAndBlockInput(MovieRating);        // Movie
                                                                      }
                                                                      else 
                                                                              CheckAndClearBlockedInput();
                                                               }
                                                              else if( (MovieRating & 0x18)==0x08 ) { //valid data for USA TV rating
                                                                      //-----------------------------------------------------------------------
                                                                      //BYTE val;
                                                                      //val = (BlockedTV_Content[(eds_data&0x07)]&0x70) >> 1;
                                                                      #ifdef DEBUG_CCEDS
                                                                      if( GetDebugTypeCCEDS()>=BASIC )
                                                                              Printf("*** v-chip info(%s)", OSDBlockedTVStr[eds_data & 0x07]);
                                                                      #endif
                                                                      
                                                                      if( 
                                                                              ( BlockedTV && ((eds_data&0x07) >= BlockedTV) )  || 
                                                                              (  ((BlockedTV_Content[(eds_data&0x07)]&0x70) >> 1) & (eds_data&0x38) ) || 
                                                                              (  (BlockedTV_Content[(eds_data&0x07)]&0x08) && ( MovieRating&0x20) ) // D
                                                                      ) {
                                                                              Printf("*** eds_data:%2x   MovieRating:%2x ", (WORD)eds_data, (WORD)MovieRating );
              
                                                                              CheckAndBlockInputForTV(eds_data, MovieRating );        // TV
                                                                      }
                                                                      else 
                                                                              CheckAndClearBlockedInput();
                                                                      //-----------------------------------------------------------------------
                                                              }
                                                      }
                                              // ljy013105...for old standard...requested by DMTech of Korea
                                              }
                                              else                                    {
                                                      MovieRating = 0;
                                                      #ifdef DEBUG_CCEDS
                                                      dPrintf("*** v-chip :Invalid MovieRating Data");
                                                      #endif
                                              }
                                              _CLEAR_EDS_CONTROL_
                                              break;
                              }
                      }
                      return TRUE;
              }
              
              
C51 COMPILER V7.50   EDS                                                                   08/20/2007 10:23:30 PAGE 9   

              /*ljy012004
              BYTE IsEDS_control(void)
              {
                      return EDS_control;
              }
              */
              
              BYTE GetMPAARating(void)
              {
                      return BlockedMovie;
              }
              /*
              BYTE GetTVRating(void)
              {
                      return BlockedTV;
              }
              
              
              
              BYTE SetMPAARating(BYTE wd)
              {
                      BlockedMovie = wd;
                      return BlockedMovie;
              }
              
              BYTE SetTVRating(BYTE wd)
              {
                      BlockedTV = wd;
                      #ifdef DEBUG_CCEDS
                      Printf("\r\n SetTVRating==> BlockedTV:%s",OSDBlockedTVStr[BlockedTV]);
                      #endif
                      return BlockedTV;
              }
              */
              void ChangeVchipTV(BYTE newv)
              {
                      BlockedTV = newv;
                      SaveBlockedTVEE(BlockedTV);
              
                      ChangeTVRating_Content();
              
                      #ifdef DEBUG_CCEDS
                      Printf("\r\n ChangeVchipTV==> Changed BlockedTV:%s \n\n\n\n+++++++",OSDBlockedTVStr[BlockedTV]);
                      #endif
              
                      ( EnabledVChip() ?      InitEDS()   :   ClearEDS()      );
              
              }
              
              BYTE ChangeVchipMovie(BYTE val)
              {
                      
                      BlockedMovie = val;
                      SaveBlockedMovieEE(BlockedMovie);
                      ( EnabledVChip() ?      InitEDS()   :   ClearEDS()      );
              
                      return BlockedMovie;
              }
              #endif


MODULE INFORMATION:   STATIC OVERLAYABLE
C51 COMPILER V7.50   EDS                                                                   08/20/2007 10:23:30 PAGE 10  

   CODE SIZE        =   ----    ----
   CONSTANT SIZE    =   ----    ----
   XDATA SIZE       =   ----    ----
   PDATA SIZE       =   ----    ----
   DATA SIZE        =   ----    ----
   IDATA SIZE       =   ----    ----
   BIT SIZE         =   ----    ----
END OF MODULE INFORMATION.


C51 COMPILATION COMPLETE.  0 WARNING(S),  0 ERROR(S)

⌨️ 快捷键说明

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