📄 t103_util.lst
字号:
317 1 #ifdef T515
if(m_cSource >= isrc_T515_CVIDEO1){
SlaveAddr=0xb8;
RegAddrShift=0x20;
}else{
SlaveAddr=TW803_P2;
RegAddrShift=0x00;
}
#else
326 1 SlaveAddr=TW803_P2;
327 1 RegAddrShift=0x00;
328 1 #endif
329 1
330 1 m_cBuff[0]=m_cStandard;
331 1 m_cBuff[1]=I2CReadByte(SlaveAddr, 0x3A+RegAddrShift);
332 1 if(I2CReadByte(SlaveAddr, 0x3A+RegAddrShift)&0x06) // Judge vlock and hlock
333 1 {
334 2 //if(I2CReadByte(SlaveAddr, 0x7B+RegAddrShift)>0x10){// For no chroma case
335 2 //twdDelay1(50);
336 2 //~~~~~~~ set OPTiming ~~~~~~~~~~~~~~~~~~~//
337 2 if(I2CReadByte(TW803_P0,0x59) <= 0xd6)
338 2 m_cBuff[0]=S_NTSC;
339 2 else
340 2 m_cBuff[0]=S_PAL;
341 2
342 2 #ifdef T515
if((m_cSource&0x0f) >= isrc_T515_CVIDEO1){
m_cBuff[0] = I2CReadByte(TW515, 0x5c)&0x04;
if((I2CReadByte(TW515, 0x5c)&0x07)==0)
m_cBuff[0]=S_NTSC;
else if(I2CReadByte(TW515, 0x5c)&0x02)
m_cBuff[0]=S_SECAM;
else if(I2CReadByte(TW515, 0x5c)&0x04)
m_cBuff[0]=S_PAL;
else
m_cBuff[0]=0xff;
}
#endif
355 2 if((m_cStandard!=m_cBuff[0])){ // signal std was changed,and output timing must be set again
356 3 m_cStandard=m_cBuff[0];
357 3 SetOPTiming();
358 3 }
359 2 //~~~~~~~ End of set OPTiming ~~~~~~~~~~~~~~~~~~~//
360 2
361 2 //~~~~~~~ set Chroma ~~~~~~~~~~~~~~~~~~~//
362 2 m_cBuff[4]=m_cChroma;
C51 COMPILER V7.50 T103_UTIL 10/30/2006 16:14:42 PAGE 7
363 2 #ifdef T515
if((m_cSource&0x0f) >= isrc_T515_CVIDEO1){
m_cBuff[4] = I2CReadByte(TW515, 0x5c)&0x04;
//else if((m_cSource&0x0f) >= isrc_T515_CVIDEO1){
if((I2CReadByte(TW515, 0x5c)&0x07)==0)
m_cBuff[4]=S_NTSC;
else if(I2CReadByte(TW515, 0x5c)&0x02)
m_cBuff[4]=S_SECAM;
else if(I2CReadByte(TW515, 0x5c)&0x04)
m_cBuff[4]=S_PAL;
else
m_cBuff[4]=0xff;
}
#endif
377 2
378 2 twdDelay1(25);
379 2 // Set Chroma lock configration
380 2 if(I2CReadByte(TW803_P0,0x59) <= 0xd6)
381 2 I2CWriteByte(SlaveAddr, 0x83+RegAddrShift, 0x39);//6f); // NTSC // change by Sherman 06'02'07
382 2 else
383 2 I2CWriteByte(SlaveAddr, 0x83+RegAddrShift, 0x39); // PAL
384 2 twdDelay1(50);
385 2
386 2 if(I2CReadByte(TW803_P0,0x59) <= 0xd6) { // NTSC-M,NTSC-4,PAL-M
387 3 m_wBuff[2]=0;
388 3 m_cBuff[1]=m_cChroma; // Preserve previous status for signal std
389 3 twdDelay1(150); // add by Sherman 06'01'16
390 3 while (1){ // NTSC-M=1,NTSC-4=4,PAL-M=5
391 4 if (m_cChroma == S_NTSC_4){
392 5 if ((I2CReadByte(SlaveAddr, 0x3a+RegAddrShift)&0x08)&&(I2CReadByte(SlaveAddr, 0x7a+RegAddrShift)<0x8
-0))
393 5 break;
394 5 }
395 4 if ((m_cChroma == S_NTSC)|(m_cChroma == S_PAL_M)){
396 5 if ((I2CReadByte(SlaveAddr, 0x3a+RegAddrShift)&0x08))
397 5 break;
398 5 }
399 4
400 4 if (m_cChroma == S_NTSC)
401 4 #ifndef Signal_NTSC_4
402 4 #ifndef Signal_PAL_M
403 4 m_cChroma=S_NTSC;
404 4 #else
m_cChroma=S_PAL_M;
#endif
407 4 #else
m_cChroma=S_NTSC_4;
#endif
410 4 else if (m_cChroma == S_NTSC_4)
411 4 #ifndef Signal_PAL_M
412 4 m_cChroma=S_NTSC;
413 4 #else
m_cChroma=S_PAL_M;
#endif
416 4 else //if (m_cChroma == S_PAL_M)
417 4 m_cChroma=S_NTSC;
418 4
419 4 SetSignalStd(); // Set Signal flag and DTO
420 4 twdDelay1(50);
421 4
422 4 if ((++m_wBuff[2]) >4) break; // Avoid while setting, input switch to NTSC
423 4 }
C51 COMPILER V7.50 T103_UTIL 10/30/2006 16:14:42 PAGE 8
424 3 }else{ // PAL-BD,PAL-CN,SECAM
425 3
426 3 #if (defined YPbPr)
if(m_cSource == isrYPbPr)
m_cBuff[4]=S_PAL;
else {
#endif
431 3 m_wBuff[2]=0;
432 3 m_cBuff[1]=m_cChroma; // Preserve previous status for signal std
433 3 twdDelay1(150); // add by Sherman 06'01'16
434 3 while (1){ // PAL-BD=2,PAL-CN=6,SECAM=3
435 4 if ((m_cChroma == S_PAL)|(m_cChroma == S_PAL_CN)){
436 5 if ((I2CReadByte(SlaveAddr, 0x3a+RegAddrShift)&0x08) && (I2CReadByte(SlaveAddr, 0x3c+RegAddrShift)&
-0x01==1))//&& (I2CReadByte(SlaveAddr, 0x7d+RegAddrShift)>0xf0))
437 5 break;
438 5 }
439 4 if (m_cChroma == S_SECAM){
440 5 if ((I2CReadByte(SlaveAddr, 0x3a+RegAddrShift)&0x08) && (I2CReadByte(SlaveAddr, 0x7d+RegAddrShift)>
-0xf0))
441 5 break;
442 5 }
443 4
444 4 if (m_cChroma == S_PAL)
445 4 #ifndef Signal_SECAM
#ifndef Signal_PAL_CN
m_cChroma=S_PAL;
#else
m_cChroma=S_PAL_CN;
#endif
#else
452 4 m_cChroma=S_SECAM;
453 4 #endif
454 4 else if (m_cChroma == S_SECAM)
455 4 #ifndef Signal_PAL_CN
456 4 m_cChroma=S_PAL;
457 4 #else
m_cChroma=S_PAL_CN;
#endif
460 4 else //if (m_cChroma == S_PAL_CN)
461 4 m_cChroma=S_PAL;
462 4 SetSignalStd(); // Set Signal flag and DTO
463 4 twdDelay1(50);
464 4 if ((++m_wBuff[2]) >4) break; // Avoid while setting, input switch to NTSC
465 4 }
466 3 #if (defined YPbPr)
}
#endif
469 3 }
470 2 if (m_cBuff[1] != m_cChroma){
471 3 if ((I2CReadByte(SlaveAddr, 0x3a+RegAddrShift)&0x08))
472 3 m_cBuff[4] = m_cChroma;
473 3 m_cChroma=m_cBuff[1] ;
474 3 }
475 2 if((m_cChroma!=m_cBuff[4])){
476 3 m_cChroma=m_cBuff[4];
477 3 }
478 2 }// 癹伴い
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -