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

📄 mode1

📁 采用台湾MRT晶捷公司的MRT4方案的液晶电视的程序
💻
📖 第 1 页 / 共 3 页
字号:
    goto madj_next;

madj_up:
#if DEBUGMSG
    printf("    Ht+ : ");
#endif
    if (madj_cnt < 0) {
    #if DEBUGMSG
        printf("    Fail: U-Turn ");
    #endif
        goto madj_fail;
    }
    if (madj_cnt++ > MADJ_LIMIT) {
#if DEBUGMSG
    printf("    Fail: overlimit ");
#endif
        goto madj_fail;
    }
    RegByteOut(0x41, ++ht);
    goto madj_next;
}
#endif //CHIMEI14_PATCH


//
//      Patch mode for special cases
//
#if 0
void modePatch(void)
{
#if (PHILIPS_TDA+MRT_VITESSE2)
        //264
        if(CurrentMode == 6)
        {
                if((VsyncCnt >= 0x925) && (VsyncCnt <= 0x935) && (HsyncCnt >= 0x590) && (HsyncCnt <= 0x5a0))
                {
                        RegByteOut(0x2B, 0x1b);
                        RegByteOut(0x2C, 0xa2);
                        RegByteOut(0x34, 0x5b);                         
                        RegByteOut(0x41, 0x9f);
                }        
                return;         
                
        }       
        //200,201,202
#if CHIMEI_N141X201_C3
        if(CurrentMode == 7)
        {
                if((HsyncCnt >= 0x670) && (HsyncCnt <= 0x67f))
                {
#if STANDARD_MODE
                        RegByteOut(0x2B, 0x0C);
                        RegByteOut(0x2C, 0x4F);
                        RegByteOut(0x34, 0x54);                         
                        RegByteOut(0x41, 0x94);
#else                	
                        RegByteOut(0x2B, 0x23);
                        RegByteOut(0x2C, 0xfc);
                        RegByteOut(0x34, 0x64);                         
                        RegByteOut(0x41, 0xa7);
#endif                        
                }        
                return;         
                
        }
#endif        
        //200,201,202
#if CHIMEI_M141X101
        if(CurrentMode == 7)
        {
                if((HsyncCnt >= 0x670) && (HsyncCnt <= 0x67f))
                {
                        RegByteOut(0x2B, 0x02);
                        RegByteOut(0x2C, 0x17);
                        RegByteOut(0x34, 0x64);                         
                        RegByteOut(0x41, 0x98);
                }        
                return;         
                
        }
#endif   

        //200,201,202
#if SAMSUNG_151
        if(CurrentMode == 7)
        {
                if((HsyncCnt >= 0x670) && (HsyncCnt <= 0x67f))
                {
                        RegByteOut(0x2B, 0x01);
                        RegByteOut(0x2C, 0x11);

                }        
                return;         
                
        }
#endif   


                //SIS 6326
        if(CurrentMode == 11)
        {
        
                if((VsyncCnt >= 0x9AA) && (VsyncCnt <= 0x9B5) && (HsyncCnt >= 0x80A) && (HsyncCnt <= 0x815))
                        eepModeData.setData.pitchL = 0x0C;
                else
                        eepModeData.setData.pitchL = DefaultPitchL;

                TDAByteOut(TDA_DIVL, eepModeData.setData.pitchL);
                eepModeData.setData.pitch_val = DEF_pitchval;
                return;
  
        } 

        if(CurrentMode == 12)
        {
        
                //243 1024x768 59.80Hz
                if((VsyncCnt >= 0xc40) && (VsyncCnt <= 0xc42) && (HsyncCnt >= 0x830) && (HsyncCnt <= 0x840))
                        eepModeData.setData.pitchL = 0xa4;
                //260 1024x768 59.56Hz
                else if((VsyncCnt >= 0xc40) && (VsyncCnt <= 0xc4f) && (HsyncCnt >= 0x850) && (HsyncCnt <= 0x856))
                {
                        eepModeData.setData.pitchL = 0x90;
#if STANDARD_MODE
                        RegByteOut(0x2B, 0x29);
                        RegByteOut(0x2C, 0xE9);
#endif                        
				}                        
                //277 1024x768 59.62Hz
                else if((VsyncCnt >= 0xc46) && (VsyncCnt <= 0xc4f) && (HsyncCnt >= 0x83e) && (HsyncCnt <= 0x848))
                        eepModeData.setData.pitchL = 0x94;

                else
                {
                        eepModeData.setData.pitchH = DefaultPitchH;
                        eepModeData.setData.pitchL = DefaultPitchL;

                }
                TDAByteOut(TDA_DIVH, eepModeData.setData.pitchH);
                TDAByteOut(TDA_DIVL, eepModeData.setData.pitchL);
                eepModeData.setData.pitch_val = DEF_pitchval;
                return;
                
                
        }
        if(CurrentMode == 13)
        {
        
                //126 1024x768 70Hz
                if((VsyncCnt >= 0xb40) && (VsyncCnt <= 0xb50) && (HsyncCnt >= 0x8d0) && (HsyncCnt <= 0x8e0))
                {
                        eepModeData.setData.pitchL = 0xa0;
                        RegByteOut(0x2B, 0x2d);
                        RegByteOut(0x2C, 0xef);
                        RegByteOut(0x41, 0x94);                                       
                }        
                else
                        eepModeData.setData.pitchL = DefaultPitchL;

                TDAByteOut(TDA_DIVL, eepModeData.setData.pitchL);
                eepModeData.setData.pitch_val = DEF_pitchval;
                return;
        } 
        //273
        if(CurrentMode == 16)
        {
                if((VsyncCnt >= 0x8b0) && (VsyncCnt <= 0x8bf) && (HsyncCnt >= 0xc0c) && (HsyncCnt <= 0xc1c))
                {
                        eepModeData.setData.pitchL = 0x90;
#if STANDARD_MODE
                        RegByteOut(0x2B, 0x21);
                        RegByteOut(0x2C, 0xDE);
     						
#endif                        
				}                        
                else
                        eepModeData.setData.pitchL = DefaultPitchL;

                TDAByteOut(TDA_DIVL, eepModeData.setData.pitchL);
                eepModeData.setData.pitch_val = DEF_pitchval;
                return;
                
        }               
        if(CurrentMode == 17)
        {
                //TNT2M64
                if((VsyncCnt >= 0xa70) && (VsyncCnt <= 0xa7d) && (HsyncCnt >= 0x770) && (HsyncCnt <= 0x77d))
                {
                                eepModeData.setData.pitchH = 0xea;
                        eepModeData.setData.pitchL = 0x08; 
                }        
                else
                {
                                eepModeData.setData.pitchH = DefaultPitchH;
                        eepModeData.setData.pitchL = DefaultPitchL;
                                }
                                TDAByteOut(TDA_DIVH, eepModeData.setData.pitchH);
                TDAByteOut(TDA_DIVL, eepModeData.setData.pitchL);
                eepModeData.setData.pitch_val = DEF_pitchval;
                return;
        }                          
        //257 640x480 66.60Hz
        if(CurrentMode == 25)
        {
                if((VsyncCnt >= 0xb00) && (VsyncCnt <= 0xb05) && (HsyncCnt >= 0x5f2) && (HsyncCnt <= 0x5fa))
                        eepModeData.setData.pitchL = 0xc0;
                else
                        eepModeData.setData.pitchL = DefaultPitchL;

                TDAByteOut(TDA_DIVL, eepModeData.setData.pitchL);
                eepModeData.setData.pitch_val = DEF_pitchval;
                return;
        }
        if(CurrentMode == 28)
        {
                //TNT2M64
                if((VsyncCnt >= 0xa76) && (VsyncCnt <= 0xa81) && (HsyncCnt >= 0x5F0) && (HsyncCnt <= 0x5FA))
                        eepModeData.setData.pitchL = 0x98; 
                else
                        eepModeData.setData.pitchL = DefaultPitchL;

                TDAByteOut(TDA_DIVL, eepModeData.setData.pitchL);
                eepModeData.setData.pitch_val = DEF_pitchval;
                return;
        }                  
        //261 1024x768 74.93Hz
        if(CurrentMode == 30)
        {
                if((VsyncCnt >= 0x9c7) && (VsyncCnt <= 0x9c9))
                        eepModeData.setData.pitchL = 0x98;
                else
                        eepModeData.setData.pitchL = DefaultPitchL;

                TDAByteOut(TDA_DIVL, eepModeData.setData.pitchL);
                eepModeData.setData.pitch_val = DEF_pitchval;
                return;
        }
        if(CurrentMode == 38)
        {
                //220
                if((HsyncCnt >= 0xae0) && (HsyncCnt <= 0xaf0))
                        eepModeData.setData.pitchL = 0x4c;
                //254        
                else if ((HsyncCnt >= 0xac8) && (HsyncCnt <= 0xad0))
                        eepModeData.setData.pitchL = 0x70;
                else
                        eepModeData.setData.pitchL = DefaultPitchL;

                TDAByteOut(TDA_DIVL, eepModeData.setData.pitchL);
                eepModeData.setData.pitch_val = DEF_pitchval;
                return;
        }       
        if(CurrentMode == 39)
        {
                //269,276
                if((VsyncCnt >= 0x9de) && (VsyncCnt <= 0x9e9) && (HsyncCnt >= 0xd6e) && (HsyncCnt <= 0xd79))
                        eepModeData.setData.pitchL = 0x58;
                //274        
                else if ((VsyncCnt >= 0x99a) && (VsyncCnt <= 0x9aa) && (HsyncCnt >= 0xd9e) && (HsyncCnt <= 0xda9))
                        eepModeData.setData.pitchL = 0x40;
                else
                        eepModeData.setData.pitchL = DefaultPitchL;

                TDAByteOut(TDA_DIVL, eepModeData.setData.pitchL);
                eepModeData.setData.pitch_val = DEF_pitchval;
                return;
        }               
        if(CurrentMode == 41)
        {
                //268
                if((VsyncCnt >= 0xa7d) && (VsyncCnt <= 0xa80))
                        eepModeData.setData.pitchL = 0x50; 
                else
                        eepModeData.setData.pitchL = DefaultPitchL;

                TDAByteOut(TDA_DIVL, eepModeData.setData.pitchL);
                eepModeData.setData.pitch_val = DEF_pitchval;
                return;
        }               
        if(CurrentMode == 42)
        {
                //278
                if((VsyncCnt >= 0xa1d) && (VsyncCnt <= 0xa22))
                        eepModeData.setData.pitchL = 0x4c; 
                else
                        eepModeData.setData.pitchL = DefaultPitchL;

                TDAByteOut(TDA_DIVL, eepModeData.setData.pitchL);
                eepModeData.setData.pitch_val = DEF_pitchval;
                return;
        }   
        if(CurrentMode == 50)
        {
                //271
                if((VsyncCnt >= 0xb1c) && (VsyncCnt <= 0xb1e) && (HsyncCnt >= 0xa88) && (HsyncCnt <= 0xa8a))
                        eepModeData.setData.pitchL = 0xf0; 
                else
                        eepModeData.setData.pitchL = DefaultPitchL;

                TDAByteOut(TDA_DIVL, eepModeData.setData.pitchL);
                eepModeData.setData.pitch_val = DEF_pitchval;
                return;
        }                       
#endif


}

#endif
/*********************************************
* get default mode table                     *
**********************************************/
void getDefModeData(void)
{
    unsigned char *regtbl;

//0908
    regtbl = (ModeTbl[CurrentMode&0x7f].modeptr) + MODEHSTART;
    DefaultHstart = eepModeData.setData.def_hstart = eepModeData.setData.hstart = ((unsigned int)*(regtbl+1)<<8) + *regtbl;
    DefaultVstart = eepModeData.setData.def_vstart = eepModeData.setData.vstart = /*((unsigned int)*(regtbl+3)<<8) +*/ *(regtbl+2);
    
//0908
    regtbl = ModeTbl[CurrentMode&0x7f].tdaptr;

    DefaultPitch = eepModeData.setData.def_pitch = eepModeData.setData.pitch = ((*(regtbl+TDA_DIVH_OFF)&0x07)<<9) + (*(regtbl+TDA_DIVL_OFF)<<1);
    eepModeData.setData.pitch_val = DEF_pitchval;
    DefaultPhase = eepModeData.setData.phase = *(regtbl+TDA_PHASE_OFF);

	eepModeData.setData.dummy_1 = eepModeData.setData.dummy_2 = eepModeData.setData.dummy_3 = 0xff;
	   
    
#if MRT_ADCPLL
    if (*(regtbl+TDA_OPHASE)) eepModeData.setData.phase |= PHASEORIG;
#endif

#if (DEBUGMSG >= 2)
    printf("    getDefModeData pitch=%x phase=%x\n",
     eepModeData.setData.pitch,(unsigned int)eepModeData.setData.phase);
#endif
}




void standAloneMode(void)
{

      TDADataTableOut(Mode12Tda);
      RegDataTableOut(Mode12Tbl);
      RegByteOut(0x40,0x50);
}


⌨️ 快捷键说明

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