//---------------------------------------------------------------------------------------------------- // ID Code : Video.h No.0001 // Update Note : // //---------------------------------------------------------------------------------------------------- #if(_VIDEO_SUPPORT == _ON) //---------------------------------------------------------------------------------------------------- //-------------------------------------------------- // Definitions of //-------------------------------------------------- #define _VIDEO_DEVICE 0x40 // 2610 device address #define _VIDEO_50HZ 0 #define _VIDEO_60HZ 1 #define _VIDEO_NTSC_443 2// add by xyw 080116 at jpe #define _VIDEO_PAL_M_N_ 3// add by xyw 080116 at jpe #define _VIDEO_NOT_EXIST _MODE_NOSIGNAL #define _VIDEO_EXIST _MODE_EXIST #define _HSLCK _BIT1 #define _VLINF _BIT2 #define _VDNOSIGNAL _BIT0 #define _VDC_2D_MODE 0 #define _VDC_3D_MODE 1 //======================================= #define ZPAL_I 0x70 #define ZPAL_M 0x71 #define ZPAL_N 0x72 #define ZPAL_60 0x73 #define ZNTSC 0x74 #define ZNTSC_443 0x75 #define ZNTSC_50 0x76 #define ZSECAM 0x77 #define fcmore 0x04 #define fcless 0x02 #define fcsame 0x01 #define noisy 0x01 #define very_noisy 0x02 #define ultra_noisy 0x03 #define SET_TEXT_POS 0x4808// for vbi #define SET_2404_DELAY 8 //modified by xyw at 080117 at jpe #define _VDC_BRI_DEFAULT_AV 0x88//0X7c #define _VDC_CON_DEFAULT_AV 0x80//0x7c #define _VDC_BRI_DEFAULT_TV 0x78//0x76 #define _VDC_CON_DEFAULT_TV 0x88//0x76 //============================ //---------------------------------------------------------------------------------------------------- #ifdef __VIDEO__ //-------------------------------------------------- // Video Tables //-------------------------------------------------- #if(_VDC_TYPE == _RTD2612) unsigned char code RTD2610_NTSC_M_ini[]= { 3, 0x04, 0xdd, 6, 0x18, 0x21, 0xf0, 0x7c, 0x1f, 3, 0x2e, 0x82, 4, 0x30, 0x22, 0x61, 3, 0x82, 0x42, 3, 0x84, 0x07, // 3, 0x03, 0x00, // 3, 0x91, 0x13, // reynold added 050729 for color modify // 5, 0x08, 0x74, 0x74, 0xb0, // 5, 0x08, 0x64, 0x80, 0xb0, //reynold modified 050802 for 10 IRE // 4, 0x08, 0x88, 0x68,//, 0xA0, //reynold modified 050802 for 10 IRE // 3, 0xd8, 0xf8, // 3, 0xc3, 0x18, // 3, 0x01, 0x09, 0 }; unsigned char code RTD2610_NTSC_443_ini[]= { 4, 0x03, 0x03, 0xdd, 6, 0x18, 0x2a, 0x09, 0x8a, 0xcb, 3, 0x2e, 0x82, 4, 0x30, 0x22, 0x61, 3, 0x82, 0x42, 3, 0x84, 0x07, // 3 ,0x03, 0x03, // 3 ,0x91, 0x03, 0 }; unsigned char code RTD2610_PAL_I_ini[]= { 3, 0x04, 0xdc, 6, 0x18, 0x2a, 0x09, 0x8a, 0xcb, 3, 0x2e, 0x84, 4, 0x30, 0x2a, 0xc1, 3, 0x82, 0x4a, 3, 0x84, 0x00, 3, 0x03, 0x02, 3, 0x91, 0x13, 0 }; unsigned char code RTD2610_PAL_M_ini[]= { 3, 0x04, 0xdd, 4, 0x03, 0x00, 0xdd, 6, 0x18, 0x21, 0xe6, 0xef, 0xa4, 3, 0x2e, 0x82, 4, 0x30, 0x22, 0x61, 3, 0x82, 0x4a, 3, 0x84, 0x00, 3, 0x03, 0x02, 3, 0x91, 0x13, //ref to wjchen suggestion for PAL-N 3, 0x01, 0x09, 3, 0x0f, 0x0c, 3, 0x39, 0x09, 4, 0x9a, 0x2a, 0x4a, 3, 0x10, 0x10, 3, 0x83, 0x69, 4, 0xc3, 0x00, 0x00, 3, 0x90, 0x2d, 0 }; unsigned char code RTD2610_PAL_CN_ini[]= { 3, 0x04, 0xdc, 6, 0x18, 0x21, 0xf6, 0x94, 0x46, 3, 0x2e, 0x8a, 4, 0x30, 0x2a, 0xc1, 3, 0x82, 0x4a, 3, 0x84, 0x00, 3, 0x03, 0x02, 3, 0x91, 0x13, //ref to wjchen suggestion for PAL-N 3, 0x01, 0x09, 3, 0x0f, 0x0c, 3, 0x39, 0x09, 4, 0x9a, 0x2a, 0x4a, 3, 0x10, 0x10, 3, 0x83, 0x69, 4, 0xc3, 0x00, 0x00, 3, 0x90, 0x2d, 0 }; unsigned char code RTD2610_SECAM_ini[]= { 3, 0x04, 0xdc, 6, 0x18, 0x28, 0xa3, 0x3b, 0xb2, 3, 0x2e, 0x88, 4, 0x30, 0x2a, 0xc1, //0x90, 0x61, 3, 0x82, 0x42, 3, 0x84, 0x00, // 3, 0x03, 0x03, // 3, 0x91, 0x03, 3, 0x0f, 0x6c, 0 }; unsigned char code RTD2610_PAL_60_ini[]= { 3, 0x04, 0xdc, // 0x04 6, 0x18, 0x2a, 0x09, 0x8a, 0xcb, // 0x18~0x1b 3, 0x2e, 0x84, // 0x2e 4, 0x30, 0x22, 0x61, // 0x30~0x31 3, 0x82, 0x4a, // 0x82 3, 0x84, 0x00, 3, 0x03, 0x03, 3, 0x91, 0x13, 0 }; unsigned char code RTD2610_NTSC_50_ini[]= { 3, 0x04, 0xdd, // 0x04 6, 0x18, 0x21, 0xf0, 0x7c, 0x1f, // 0x18~0x1b 3, 0x2e, 0x82, // 0x2e 4, 0x30, 0x2a, 0xc1, // 0x30~0x31 3, 0x82, 0x42, // 0x82 3, 0x84, 0x07, // 3, 0x03, 0x03, // 3, 0x91, 0x03, 0 }; unsigned char code VideoInit[]= { 3, 0xd0, 0x02, // set format Video8 4, 0xd9, 0x14, 0x0e, // set PLL 3, 0x91, 0x03, // 5, 0x08, 0x88,0x68, 0xa0, // 2610 Contrast,Brightness,Saturation 3, 0x80, 0x13, //0x15, // adjust 2610 peaking 3, 0xbb, 0x0d, 7, 0xc3, 0x24, 0x24, 0x05, 0x00, 0x00, // 3, 0xd8, 0xf8, 3, 0xe1, 0x03, // 3, 0xf0, 0x05, 3, 0xf0, 0x01, 3, 0x09, 0x88, 3, 0x84, 0x00, // avoid color blending horizontal zipper,hill #ifdef CONFIG_VBI_ENABLE //enable Close Caption 3, 0x40, 0x05, 3, 0x51, 0x11, 3, 0x5d, 0x99, 5, 0x69, 0x00, 0x00, 0x00, 3, 0x6f, 0x66, 4, 0xc3, 0x24, 0x24, 3, 0x6d, 0x71, 4, 0x58, 0x35, 0x9f, 3, 0xb3, 0xd0, 3, 0xb4, 0xc0, 3, 0x55, 0x01, 3, 0x57, 0x01, 3, 0xe0, 0xb0, 3, 0xb2, 0xd0, 3, 0x39, 0x09, // reduce shaking after switching TV channel #endif 0 }; unsigned char code AV_Init[] = { 3, 0x03, 0x00, // disable color trap, fully 2-D adaptive comb filter 4, 0xe9, 0x42, 0x00, // Y form AD2, Pb/Pr from AD1(no regard), switch AD0 as Y; clamp selection AD1/AD2/AD3 part as luma 9, 0xb0, 0x00, 0x00, 0x00, 0xd0, 0x00, 0xff, 0xff, // ADC0/ADC1/ADC2/ADC3 input as AI00/AI10/AI20/AI30 3, 0x83, 0x6f, 3, 0x0d, 0x07, 3, 0xeb, 0x00, 3, 0xe0, 0xb0, 3, 0x07, 0x00, //forster modified 051216 #if (_DCC_FUNC==_ENABLE)//Modify:2006.4.14C Jerry 3, 0xC3, 0x00, #endif 0 }; unsigned char code SV_Init[] = { 3, 0x03, 0x03, // disable color trap, basic luma notch filter 3, 0x83, 0x6f, 3, 0x0d, 0x07, 3, 0x07, 0x00, //forster modified 051216 4, 0xe9, 0x92, 0x20, // Y form AD3, Pb/Pr from AD2, switch AD0 as Y; clamp selection AD1/AD2/AD3 part as luma/Pr/luma 9, 0xb0, 0x09, 0x00, 0x00, 0xd4, 0xd4, 0xff, 0xff, // ADC0/ADC1/ADC2/ADC3 input as AI00/AI10/AI22/AI31 3, 0x90, 0x01, #if (_DCC_FUNC==_ENABLE)//Modify:2006.4.14C Jerry 3, 0xC3, 0x00, #endif 0 }; unsigned char code YCBCR_Init[] = { 4, 0xe9, 0x04, 0x60, // Y form AD1, Pb from AD1, Pr from AD2, switch AD0 as AD0; clamp selection AD1/AD2/AD3 part as Pb/Pr/luma 9, 0xb0, 0x00, 0xd4, 0xd4, 0xd4, 0x00, 0xff, 0xff, // ADC0/ADC1/ADC2/ADC3 input as AI00/AI10/AI20/AI30 0 }; unsigned char code TV_Init[] = { 3, 0x03, 0x00, 3, 0x07, 0x00, //forster modified 051216 3, 0x83, 0xbf, 3, 0x0d, 0x0a, 4, 0xe9, 0x82, 0x00, // Y form AD3, Pb/Pr from AD1(no regard), switch AD0 as Y; clamp selection AD1/AD2/AD3 part as luma 9, 0xb0, 0x03, 0x00, 0x00, 0x00, 0xd4, 0xff, 0xff, // ADC0/ADC1/ADC2/ADC3 input as AI00/AI10/AI20/AI33 #if (_DCC_FUNC==_ENABLE)//Modify:2006.4.14C Jerry 3, 0xC3, 0x00, #endif 0 }; unsigned char code SCART_Init[] = { 3, 0x03, 0x00, 3, 0x83, 0x6f, 3, 0x0d, 0x07, 3, 0xeb, 0x00, 3, 0xe0, 0xb0, 3, 0x07, 0x00, //forster modified 051216 3, 0x01, 0x01, //0x01 = 01:CVBS 41: RGB 3, 0xec, 0xa0, 3, 0xCF, 0x88, 0 }; ////================================================= below is 2613 #else //2613 3D adaptive unsigned char code RTD2610_NTSC_M_ini[]= { #if(_SCALER_TYPE==_RTD2662) //need modify by 263x parameters 4, _NON_AUTOINC, _PAGE_SELECT_9F, _PAGE8, 4, _NON_AUTOINC, _P8_YCSEP_CTRL_E0, 0x00, // YC Seperate Control //20080105, improve sharpness 4, _NON_AUTOINC, _P8_BPF_BW_SEL_Y_E1, 0x41, // BPF BandWidth Select Y 4, _NON_AUTOINC, _P8_BPF_BW_SEL_C_E2, 0x00, // BPF BandWidth Select C 4, _NON_AUTOINC, _P8_YC_BW_CTRL_EA, 0x01, // YC BandWidth Control 4, _NON_AUTOINC, _P8_2D_ALPHA_MOD_ENABLE_F2, 0xC2, // 2D ALPHA Mode Enable 4, _NON_AUTOINC, _P8_H2V_CORING_THR_F3, 0x21, // H2V Coring Threshold 4, _NON_AUTOINC, _P8_H2V_Y_NOISE_THR_F4, /*0x06*/0x01, // H2V Y Noise Threshold //eric 20070608 4, _NON_AUTOINC, _P8_H2V_CVBS_NOISE_THR_F5, 0x15, // H2V CVBS Noise Threshold 4, _NON_AUTOINC, _P8_1D_BLEND_THR_F6, 0x03, // 1D Blend Threshold // //4, _NON_AUTOINC, _P8_ZORAN_REG_EN_D7, 0x20, //color mode reg enable //fjyang20070710 4, _NON_AUTOINC, _P8_VIDEO_CTRL0_A0, 0x00, //NTSC _END #else 3, 0x04, 0xdd, 6, 0x18, 0x21, 0xf0, 0x7c, 0x1f, 3, 0x2e, 0x82, 4, 0x30, 0x22, 0x61, 3, 0x82, 0x42, 3, 0x03, 0x00, 3, 0x91, 0x13, 3, 0x84, 0x07, 0 #endif }; unsigned char code RTD2610_NTSC_443_ini[]= { #if(_SCALER_TYPE==_RTD2662) //need modify by 263x parameters 4, _NON_AUTOINC, _PAGE_SELECT_9F, _PAGE8, 4, _NON_AUTOINC, _P8_YCSEP_CTRL_E0, 0x02, // YC Seperate Control //20080105, improve sharpness 4, _NON_AUTOINC, _P8_BPF_BW_SEL_Y_E1, 0x41, // BPF BandWidth Select Y 4, _NON_AUTOINC, _P8_BPF_BW_SEL_C_E2, 0x00, // BPF BandWidth Select C 4, _NON_AUTOINC, _P8_YC_BW_CTRL_EA, 0x49, // YC BandWidth Control 4, _NON_AUTOINC, _P8_2D_ALPHA_MOD_ENABLE_F2, 0xC2, // 2D ALPHA Mode Enable 4, _NON_AUTOINC, _P8_H2V_CORING_THR_F3, 0x21, // H2V Coring Threshold 4, _NON_AUTOINC, _P8_H2V_Y_NOISE_THR_F4, /*0x00*/0x01, // H2V Y Noise Threshold //eric 20070608 4, _NON_AUTOINC, _P8_H2V_CVBS_NOISE_THR_F5, 0x15, // H2V CVBS Noise Threshold 4, _NON_AUTOINC, _P8_1D_BLEND_THR_F6, 0x03, // 1D Blend Threshold // 4, _NON_AUTOINC, _P8_ZORAN_REG_EN_D7, 0x20, //color mode reg enable 4, _NON_AUTOINC, _P8_VIDEO_CTRL0_A0, 0x0A, //NTSC443(1127 & 135 mode) _END #else 4, 0x03, 0x03, 0xdd, 6, 0x18, 0x2a, 0x09, 0x8a, 0xcb, 3, 0x2e, 0x82, 4, 0x30, 0x22, 0x61, 3, 0x82, 0x42, 3, 0x03, 0x03, 3, 0x91, 0x03, 3, 0x84, 0x07, 0 #endif }; unsigned char code RTD2610_PAL_I_ini[]= { #if(_SCALER_TYPE==_RTD2662) //need modify by 263x parameters 4, _NON_AUTOINC, _PAGE_SELECT_9F, _PAGE8, 4, _NON_AUTOINC, _P8_YCSEP_CTRL_E0, 0x02, // YC Seperate Control //20080105, improve sharpness 4, _NON_AUTOINC, _P8_BPF_BW_SEL_Y_E1, 0x41, // BPF BandWidth Select Y 4, _NON_AUTOINC, _P8_BPF_BW_SEL_C_E2, 0x00, // BPF BandWidth Select C 4, _NON_AUTOINC, _P8_YC_BW_CTRL_EA, 0x49, // YC BandWidth Control 4, _NON_AUTOINC, _P8_2D_ALPHA_MOD_ENABLE_F2, 0xC2, // 2D ALPHA Mode Enable 4, _NON_AUTOINC, _P8_H2V_CORING_THR_F3, 0x21, // H2V Coring Threshold 4, _NON_AUTOINC, _P8_H2V_Y_NOISE_THR_F4, 0x06/*0x03*/, // H2V Y Noise Threshold //eric 20070608 4, _NON_AUTOINC, _P8_H2V_CVBS_NOISE_THR_F5, 0x01/*0x15*/, // H2V CVBS Noise Threshold //eric 20070608 4, _NON_AUTOINC, _P8_1D_BLEND_THR_F6, 0x03, // 1D Blend Threshold // //4, _NON_AUTOINC, _P8_ZORAN_REG_EN_D7, 0x20, //color mode reg enable //fjyang20070710 4, _NON_AUTOINC, _P8_VIDEO_CTRL0_A0, 0x02, //PAL(I,B,G,H,D,N) 4, _NON_AUTOINC, _P8_YCSEP_CTRL_E0, 0x02, //5-tap adaptive comb filter 4, _NON_AUTOINC, _PAGE_SELECT_9F, _PAGEA, //modified by xyw 080220 at jpe ,fix secam to PAL error 4, _NON_AUTOINC, _PA_SECAM_CTRL_C4, 0x82, //4, _NON_AUTOINC, _PA_DRDB_GAIN_TB_CA, 0x00, //4, _NON_AUTOINC, _PA_Y_GAIN_TB_CB, 0x08, _END #else 3, 0x04, 0xdc, 6, 0x18, 0x2a, 0x09, 0x8a, 0xcb, 3, 0x2e, 0x84, 4, 0x30, 0x2a, 0xc1, 3, 0x82, 0x4a, 3, 0x03, 0x02, 3, 0x91, 0x13, 3, 0x84, 0x00, 0 #endif }; unsigned char code RTD2610_PAL_M_ini[]= { #if(_SCALER_TYPE==_RTD2662) //need modify by 263x parameters 4, _NON_AUTOINC, _PAGE_SELECT_9F, _PAGE8, 4, _NON_AUTOINC, _P8_YCSEP_CTRL_E0, 0x02, // YC Seperate Control //20080105, improve sharpness 4, _NON_AUTOINC, _P8_BPF_BW_SEL_Y_E1, 0x41, // BPF BandWidth Select Y 4, _NON_AUTOINC, _P8_BPF_BW_SEL_C_E2, 0x00, // BPF BandWidth Select C 4, _NON_AUTOINC, _P8_YC_BW_CTRL_EA, 0x49, // YC BandWidth Control 4, _NON_AUTOINC, _P8_2D_ALPHA_MOD_ENABLE_F2, 0xC2,// 2D ALPHA Mode Enable 4, _NON_AUTOINC, _P8_H2V_CORING_THR_F3, 0x21, // H2V Coring Threshold 4, _NON_AUTOINC, _P8_H2V_Y_NOISE_THR_F4, 0x03, // H2V Y Noise Threshold 4, _NON_AUTOINC, _P8_H2V_CVBS_NOISE_THR_F5, 0x15, // H2V CVBS Noise Threshold 4, _NON_AUTOINC, _P8_1D_BLEND_THR_F6, 0x03, // 1D Blend Threshold // //4, _NON_AUTOINC, _P8_ZORAN_REG_EN_D7, 0x20, //color mode reg enable //fjyang20070710 4, _NON_AUTOINC, _P8_VIDEO_CTRL0_A0, 0x04, //PAL(M) 4, _NON_AUTOINC, _P8_YCSEP_CTRL_E0, 0x02, //5-tap adaptive comb filter _END #else 3, 0x04, 0xdd, 6, 0x18, 0x21, 0xe6, 0xef, 0xa4, 3, 0x2e, 0x82, 4, 0x30, 0x22, 0x61, 3, 0x82, 0x4a, 3, 0x90, 0x1d,// 3, 0x90, 0xad, 3, 0x03, 0x02, 3, 0x91, 0x13, 3, 0x84, 0x00, //ref to wjchen suggestion for PAL-M 3, 0x01, 0x09, // 3, 0x0f, 0x0c, //730801 3, 0x39, 0x09, 4, 0x9a, 0x2a, 0x4a, 3, 0x10, 0x10, 3, 0x83, 0x69, 4, 0xc3, 0x00, 0x00, 0 #endif }; unsigned char code RTD2610_PAL_CN_ini[]= { #if(_SCALER_TYPE==_RTD2662) //need modify by 263x parameters 4, _NON_AUTOINC, _PAGE_SELECT_9F, _PAGE8, 4, _NON_AUTOINC, _P8_YCSEP_CTRL_E0, 0x02, // YC Seperate Control //20080105, improve sharpness 4, _NON_AUTOINC, _P8_BPF_BW_SEL_Y_E1, 0x41, // BPF BandWidth Select Y 4, _NON_AUTOINC, _P8_BPF_BW_SEL_C_E2, 0x00, // BPF BandWidth Select C 4, _NON_AUTOINC, _P8_YC_BW_CTRL_EA, 0x49, // YC BandWidth Control 4, _NON_AUTOINC, _P8_2D_ALPHA_MOD_ENABLE_F2, 0xC2,// 2D ALPHA Mode Enable 4, _NON_AUTOINC, _P8_H2V_CORING_THR_F3, 0x21, // H2V Coring Threshold 4, _NON_AUTOINC, _P8_H2V_Y_NOISE_THR_F4, 0x03, // H2V Y Noise Threshold 4, _NON_AUTOINC, _P8_H2V_CVBS_NOISE_THR_F5, 0x15, // H2V CVBS Noise Threshold 4, _NON_AUTOINC, _P8_1D_BLEND_THR_F6, 0x03, // 1D Blend Threshold // //4, _NON_AUTOINC, _P8_ZORAN_REG_EN_D7, 0x20, //color mode reg enable //fjyang20070710 4, _NON_AUTOINC, _P8_VIDEO_CTRL0_A0, 0x06, //PAL(CN) 4, _NON_AUTOINC, _P8_YCSEP_CTRL_E0, 0x02, //5-tap adaptive comb filter _END #else 3, 0x04, 0xdc, 6, 0x18, 0x21, 0xf6, 0x94, 0x46, 3, 0x2e, 0x8a, 4, 0x30, 0x2a, 0xc1, 3, 0x82, 0x4a, 3, 0x03, 0x02, 3, 0x91, 0x13, 3, 0x84, 0x00, //ref to wjchen suggestion for PAL-N 3, 0x01, 0x09, // 3, 0x0f, 0x0c, //730801 3, 0x39, 0x09, 4, 0x9a, 0x2a, 0x4a, 3, 0x10, 0x10, 3, 0x83, 0x69, 4, 0xc3, 0x00, 0x00, 3, 0x90, 0x2d, 0 #endif }; unsigned char code RTD2610_SECAM_ini[]= { #if(_SCALER_TYPE==_RTD2662) //need modify by 263x parameters 4, _NON_AUTOINC, _PAGE_SELECT_9F, _PAGE8, 4, _NON_AUTOINC, _P8_YC_BW_CTRL_EA, 0x07, // YC BandWidth Control 4, _NON_AUTOINC, _PAGE_SELECT_9F, _PAGEA, 4, _NON_AUTOINC, _PA_SECAM_CTRL_C4, 0xC2, //SECAM Control 4, _NON_AUTOINC, _PA_DRDB_GAIN_TB_CA, 0x00, //Secam Gain DrDb Look Up Table 4, _NON_AUTOINC, _PA_Y_GAIN_TB_CB, 0x00, //Secam Gain Y Look Up Table // 4, _NON_AUTOINC, _PAGE_SELECT_9F, _PAGE8, //4, _NON_AUTOINC, _P8_ZORAN_REG_EN_D7, 0x20, //color mode reg enable //fjyang20070710 4, _NON_AUTOINC, _P8_VIDEO_CTRL0_A0, 0x08, //SECAM 4, _NON_AUTOINC, _P8_YCSEP_CTRL_E0, 0x00, _END #else 3, 0x04, 0xdc, 6, 0x18, 0x28, 0xa3, 0x3b, 0xb2, 3, 0x2e, 0x88, 4, 0x30, 0x2a, 0xc1, //0x90, 0x61, 3, 0x82, 0x42, 3, 0x03, 0x03, 3, 0x91, 0x13, 3, 0x84, 0x00, 0 #endif }; unsigned char code RTD2610_PAL_60_ini[]= { #if(_SCALER_TYPE==_RTD2662) //need modify by 263x parameters 4, _NON_AUTOINC, _PAGE_SELECT_9F, _PAGE8, 4, _NON_AUTOINC, _P8_YCSEP_CTRL_E0, 0x02, // YC Seperate Control //20080105, improve sharpness 4, _NON_AUTOINC, _P8_BPF_BW_SEL_Y_E1, 0x41, // BPF BandWidth Select Y 4, _NON_AUTOINC, _P8_BPF_BW_SEL_C_E2, 0x00, // BPF BandWidth Select C 4, _NON_AUTOINC, _P8_YC_BW_CTRL_EA, 0x49, // YC BandWidth Control 4, _NON_AUTOINC, _P8_2D_ALPHA_MOD_ENABLE_F2, 0xC2, // 2D ALPHA Mode Enable 4, _NON_AUTOINC, _P8_H2V_CORING_THR_F3, 0x21, // H2V Coring Threshold 4, _NON_AUTOINC, _P8_H2V_Y_NOISE_THR_F4, 0x00, // H2V Y Noise Threshold 4, _NON_AUTOINC, _P8_H2V_CVBS_NOISE_THR_F5, 0x01/*0x15*/, // H2V CVBS Noise Threshold //eric 20070608 4, _NON_AUTOINC, _P8_1D_BLEND_THR_F6, 0x03, // 1D Blend Threshold // 4, _NON_AUTOINC, _P8_ZORAN_REG_EN_D7, 0x20, //color mode reg enable 4, _NON_AUTOINC, _P8_VIDEO_CTRL0_A0, 0x0E, //color mode reg enable 4, _NON_AUTOINC, _P8_YCSEP_CTRL_E0, 0x02, //5-tap adaptive comb filter _END #else 4, 0x03, 0x03, 0xdc, 6, 0x18, 0x2a, 0x09, 0x8a, 0xcb, 3, 0x2e, 0x84, 4, 0x30, 0x22, 0x61, 3, 0x82, 0x4a, 3, 0x03, 0x03, 3, 0x91, 0x13, 3, 0x84, 0x00, 0 #endif }; unsigned char code RTD2610_NTSC_50_ini[]= { #if(_SCALER_TYPE==_RTD2662) //need modify by 263x parameters _END #else 4, 0x03, 0x03, 0xdc, 6, 0x18, 0x21, 0xf0, 0x7c, 0x1f, 3, 0x2e, 0x82, 4, 0x30, 0x2a, 0xc1, 3, 0x82, 0x42, 3, 0x03, 0x03, 3, 0x91, 0x03, 3, 0x84, 0x07, 0 #endif }; unsigned char code VideoInit[]= { #if(_SCALER_TYPE==_RTD2662) 4, _NON_AUTOINC, _PAGE_SELECT_9F, _PAGE9, 4, _NON_AUTOINC, _P9_C_LOCK_CONF_B6, 0x6B, 5, _AUTOINC, _P9_AGC_GATE_STA_M_A5, 0x06,0x82, 4, _NON_AUTOINC, _P9_CLAMP_CTRL0_C2, 0xE0, 4, _NON_AUTOINC, _P9_CLAMP_NEWBP_STA_C5, 0x80, 4, _NON_AUTOINC, _PAGE_SELECT_9F, _PAGEA, 4, _NON_AUTOINC, _PA_FIFO_CTRL_BB, 0x84, 4, _NON_AUTOINC, _PAGE_SELECT_9F, _PAGE9, 4, _NON_AUTOINC, _P9_CAGC_B4, 0xb0,//huxj 20071108 cagc target 4, _NON_AUTOINC, _P9_CLOOP_GAIN_B7, 0x83,//eric 20070607 4, _NON_AUTOINC, _PAGE_SELECT_9F, _PAGE8, 4, _NON_AUTOINC, _P8_ZORAN_REG_EN_D7, 0x00, //color mode reg enable //fjyang20070710 _END #else 3, 0xd0, 0x02, // set format Video8 4, 0xd9, 0x14,0x0e, // set PLL 3, 0x91, 0x03, 3, 0x80, 0x13, 3, 0xbb, 0x0d, 7, 0xc3, 0x24, 0x24, 0x05, 0x00, 0x00, 3, 0xe1, 0x03, 3, 0xf0, 0x01, 3, 0x95, 0xaf, 3, 0x92, 0x05, 5, 0x97, 0x23, 0x32, 0x75, 3, 0x9c, 0x11, 3, 0x0d, 0x05, // resolved TV no-color pattern lock too slow.... 3, 0x84, 0x00, // avoid color blending horizontal zipper,hill #if 0 //enable Close Caption 3, 0x40, 0x05, 3, 0x51, 0x11, 3, 0x5d, 0x99, 5, 0x69, 0x00, 0x00, 0x00, 3, 0x6f, 0x66, 4, 0xc3, 0x24, 0x24, 3, 0x6d, 0x71, 4, 0x58, 0x35, 0x9f, 3, 0x55, 0x01, 3, 0x57, 0x01, // 3, 0x5e, 0x54, // weihao 941110 for CC 3, 0xb2, 0xd0, 3, 0xb4, 0xc0, 3, 0xe0, 0xb0, // weihao 941110 for CC 3, 0x39, 0x09, // reduce shaking after switching TV channel #endif 0 #endif }; #if(_SCALER_TYPE==_RTD2662) unsigned char code VideoAdcInit[]= { 4, _NON_AUTOINC, _PAGE_SELECT_9F, _PAGE0, 4, _NON_AUTOINC, _P0_VADC_SOY_COMPAR_A0, 0x00, 4, _NON_AUTOINC, _P0_VADC_CTRL_A1, 0x0F, 4, _NON_AUTOINC, _P0_VADC_CLOCK_A2, 0x00, 4, _NON_AUTOINC, _P0_VADC_OUTPUT_DELAY_A3, 0x00, 4, _NON_AUTOINC, _P0_VADC_INPUT_BW_A5, 0x06, 4, _NON_AUTOINC, _P0_VADC1_INPUT_PGA_A6, 0x84,//0x9C,//eric 20070702 Video over bright 4, _NON_AUTOINC, _P0_VADC0_INPUT_PGA_A7, 0x84,//0x9C, 4, _NON_AUTOINC, _P0_VADC_CLAMP_A8, 0x10, 4, _NON_AUTOINC, _P0_VADC_INRANGE_A9, 0xC1, 4, _NON_AUTOINC, _P0_VADC1_SOY_BIAS_CUR_AB, 0x18, 4, _NON_AUTOINC, _P0_VADC_IN_CH_BIAS_CUR_AC, 0x88, 4, _NON_AUTOINC, _P0_VADC_POS_IN_SOY_RES_AD, 0x00, 4, _NON_AUTOINC, _P0_VADC_CLAMP_POWER_AE, 0x00, 4, _NON_AUTOINC, _P0_VADC_SWITCH_AF, 0x01, 4, _NON_AUTOINC, _P0_ADC_POWER_C6, 0x08, 4, _NON_AUTOINC, _P0_ADC_V_BAIS0_CA, 0x03, _END }; #endif #if (_PCB_TYPE ==_RTD2533V_VD261X_Eastech2) unsigned char code AV_Init2[] = { 4, 0xe9, 0x42, 0x00, //for Eastech AV2 AI20 9, 0xb0, 0x00, 0x00, 0x00, 0xd0, 0x00, 0xff, 0xff, 3, 0x83, 0x6b, 3, 0x0d, 0x07, 3, 0xeb, 0x00, 3, 0xe0, 0xb0, 3, 0x07, 0x00, 0 }; #endif #if _PCB_TYPE ==_RTD2533V_VD261X_Eastech2 unsigned char code SV_Init2[] = { 3, 0x03, 0x03, 3, 0x83, 0x6b, 3, 0x0d, 0x07, 3, 0x07, 0x00, 4, 0xe9, 0x00, 0x80, //for Eastech SV2 AI01 AI10 9, 0xb0, 0x00, 0xd0, 0xd0, 0x00, 0x00, 0xff, 0xff, 3, 0x90, 0x01, 0 }; unsigned char code DVD_Init[] = { 3, 0x03, 0x03, 3, 0x83, 0x6b, 3, 0x0d, 0x07, 3, 0x07, 0x00, 4, 0xe9, 0x92, 0x20, 9, 0xb0, 0x0d, 0x00, 0x00, 0xd0, 0xd0, 0xff, 0xff, 3, 0x90, 0x01, 0 }; #endif unsigned char code AV_Init[] = { #if(_SCALER_TYPE==_RTD2662) 4, _NON_AUTOINC, _PAGE_SELECT_9F, _PAGE8, 4, _NON_AUTOINC, _P8_CONTRAST1_A8, 0x80, //ADJUST CONTRAST 4, _NON_AUTOINC, _P8_BRIGHTNESS1_A9, 0x80, //ADJUST BRIGHTNESS 4, _NON_AUTOINC, _P8_MANUAL_MODE_D2, 0x80, //SET AUTO-MODE 4, _NON_AUTOINC, _P8_STM_FIX_MODE_D6, 0x00, //DISABLE FIX-MODE 4, _NON_AUTOINC, _P8_YCSEP_CTRL_E0, 0x00, //YC FULLY 2D ADAPTIVE MODE 4, _NON_AUTOINC, _PAGE_SELECT_9F, _PAGE9, 4, _NON_AUTOINC, _P9_VS_TC_E7, 0x8a, 4, _NON_AUTOINC, _P9_CLAMP_COMP_NEW_CTRL_AB, 0x03, //20090413, for noise signal #if _TV_WEAK_SIGNAL_THRESHOLD 4, _NON_AUTOINC, _P8_NOISE_TH_BF, 0x32, #endif _END #else 3, 0x03, 0x00, #if((_PCB_TYPE == _RTD2553V_VD2612_DTV_IF_PCB)||(_PCB_TYPE == _RTD2553V_VD2612_DTV_IF_PCB_B)||(_PCB_TYPE == _RTD2547_VD2613_DTV_IF_A_PCB)) 4, 0xe9, 0x42, 0x00, 9, 0xb0, 0x00, 0x00, 0x00, 0xd4, 0x00, 0xff, 0xff, #endif 3, 0x90, 0x05, // set 3D adaptive 3, 0xeb, 0x00, #if(_COLOR_PREFERENCE == _PANASONIC_STYLE) 3, 0x07, 0x00, #else 3, 0x07, 0x40, //forster modified 051216 #endif #if (_DCC_FUNC==_ENABLE)//Modify:2006.4.14C Jerry 3, 0xC3, 0x00, #endif 0 #endif }; unsigned char code SV_Init[] = { #if(_SCALER_TYPE==_RTD2662) 4, _NON_AUTOINC, _PAGE_SELECT_9F, _PAGE8, 4, _NON_AUTOINC, _P8_CONTRAST1_A8, 0x80, //ADJUST CONTRAST 4, _NON_AUTOINC, _P8_BRIGHTNESS1_A9, 0x80, //ADJUST BRIGHTNESS 4, _NON_AUTOINC, _P8_MANUAL_MODE_D2, 0x80, //SET AUTO-MODE 4, _NON_AUTOINC, _P8_STM_FIX_MODE_D6, 0x00, //DISABLE FIX-MODE 4, _NON_AUTOINC, _P8_YCSEP_CTRL_E0, 0x03, // 4, _NON_AUTOINC, _PAGE_SELECT_9F, _PAGE9, 4, _NON_AUTOINC, _P9_VS_TC_E7, 0x8a, 4, _NON_AUTOINC, _P9_CLAMP_COMP_NEW_CTRL_AB, 0x03, //20090413, for noise signal #if _TV_WEAK_SIGNAL_THRESHOLD 4, _NON_AUTOINC, _P8_NOISE_TH_BF, 0x32, #endif _END #else 3, 0x03, 0x03, 3, 0x90, 0x01, // set 1D/2D adaptive 4, 0xe9, 0x92, 0x20, 9, 0xb0, 0x09, 0x00, 0x00, 0xd4, 0xd4, 0xff, 0xff, 3, 0x90, 0x01, #if(_COLOR_PREFERENCE == _PANASONIC_STYLE) 3, 0x07, 0x00, #else 3, 0x07, 0x40, //forster modified 051216 #endif #if (_DCC_FUNC==_ENABLE) 3, 0xC3, 0x00, #endif 0 #endif }; unsigned char code YCBCR_Init[] = { 3, 0x90, 0x01, // set 1D/2D adaptive 4, 0xe9, 0x04, 0x60, 9, 0xb0, 0x00, 0xd4, 0xd4, 0xd4, 0x00, 0xff, 0xff, 0 }; unsigned char code TV_Init[] = { #if(_SCALER_TYPE==_RTD2662) 4, _NON_AUTOINC, _PAGE_SELECT_9F, _PAGE8, #if _TV_BACKGROUND_OPTION_SUPPORT // 4, _NON_AUTOINC, _P8_OUTPUT_CTRL_A7, 0x80, //ADJUST CONTRAST //20081018 ccy cancel #endif 4, _NON_AUTOINC, _P8_CONTRAST1_A8, 0x80, //ADJUST CONTRAST 4, _NON_AUTOINC, _P8_BRIGHTNESS1_A9, 0x80, //ADJUST BRIGHTNESS 4, _NON_AUTOINC, _P8_MANUAL_MODE_D2, 0x80, //SET AUTO-MODE 4, _NON_AUTOINC, _P8_STM_FIX_MODE_D6, 0x00, //DISABLE FIX-MODE 4, _NON_AUTOINC, _P8_YCSEP_CTRL_E0, 0x00, //YC FULLY 2D ADAPTIVE MODE //20090413, for noise signal #if _TV_WEAK_SIGNAL_THRESHOLD 4, _NON_AUTOINC, _P8_NOISE_TH_BF, 0x32, #endif 4, _NON_AUTOINC, _PAGE_SELECT_9F, _PAGE9, 4, _NON_AUTOINC, _P9_VS_TC_E7, 0x8a, 4, _NON_AUTOINC, _P9_CLAMP_COMP_NEW_CTRL_AB, 0x03, // 4, _NON_AUTOINC, _P9_HDET_PHASE_SEL_C7, 0x10,//bit4 no signal flag when hlock is high //eric 20070608 4, _NON_AUTOINC, _P9_VS_TC_E7, 0x89/*0x8a*/,//bit 01 vertical PLL time //eric 20070608 _END #else 3, 0x03, 0x00, 3, 0x90, 0x05, // set 3D adaptive #if (_PCB_TYPE == _RTD2547_VD2613_DTV_IF_A_PCB &&( _THOMSON_8640B == _TUNER_TYPE||_LG_H064F == _TUNER_TYPE)) //use ADC12 4, 0xe9, 0x02, 0x00, 9, 0xb0, 0x20, 0x00, 0xd4, 0x00, 0x00, 0xff, 0xff, #elif((_PCB_TYPE ==_RTD2547_VD2613_DTV_IF_A_PCB) && (_PHILIPS_1236 == _TUNER_TYPE))//use ADC33 4, 0xe9, 0x82, 0x00, 9, 0xb0, 0x03, 0x00, 0x00, 0x00, 0xd4, 0xff, 0xff, #endif #if(_COLOR_PREFERENCE == _PANASONIC_STYLE) 3, 0x07, 0x00, #else 3, 0x07, 0x40, //forster modified 051216 #endif #if (_DCC_FUNC==_ENABLE)//Modify:2006.4.14C Jerry 3, 0xC3, 0x00, #endif 0 #endif }; unsigned char code SCART_Init[] = { 3, 0x03, 0x00, 3, 0x83, 0x6f, 3, 0x0d, 0x07, 3, 0xeb, 0x00, 3, 0xe0, 0xb0, 3, 0x07, 0x40, //forster modified 051216 3, 0x01, 0x01, 3, 0xec, 0xa0, 0 }; #endif //========================================================================================== BYTE code tVIDEO_TABLE_SET_SCALER[] = { #if(_SCALER_TYPE==_RTD2662) //20081121 ccy modify for display color error //czl 080710 #if _PANEL_TYPE == _LQ121S1LG55 7, _AUTOINC, _VGIP_CTRL_10, 0x0d,0x01,0x00,0x02, #else 7, _AUTOINC, _VGIP_CTRL_10, 0x0d,0x01,0x00,0x03, #endif 4, _NON_AUTOINC, _IPH_ACT_WID_H_16, 0x08, 4, _NON_AUTOINC, _IPV_ACT_STA_H_18, 0x10, 4, _NON_AUTOINC, _SCALE_CTRL_32, 0x00, 4, _NON_AUTOINC, _SYNC_CTRL_49, 0x05, 4, _NON_AUTOINC, _PAGE_SELECT_9F, _PAGE1, 4, _NON_AUTOINC, _P1_LOOP_FILTER_CAPACITOR_EB, 0xDC, 4, _NON_AUTOINC, _PAGE_SELECT_9F, _PAGE6, 4, _NON_AUTOINC, _P6_PEAKING_DATA00_C2, 0x02, //v004 4, _NON_AUTOINC, _P6_YUV422_TO_YUV444_D4, 0xE0,//v003 4, _NON_AUTOINC, _P6_DCTI_1ST_GAIN_D8, 0x00, //disable DCTi because the color bar side effect 4, _NON_AUTOINC, _PAGE_SELECT_9F, _PAGE7, 8, _AUTOINC, _P7_DLTI_DCTI_ENABLE_A1, 0xC0,0x6A,0x04,0x01,0x74,//0xC0,//eric 20070608 4, _NON_AUTOINC, _P7_DCTI_1ST_GAIN_A6, 0x0A, //v003 4, _NON_AUTOINC, _P7_YUV2RGB_CTRL_BF, 0x02, 5, _AUTOINC, _P7_YUV2RGB_ACCESS_C0, 0x0C,0x04, 5, _AUTOINC, _P7_YUV2RGB_ACCESS_C0, 0x1C,0x00, 5, _AUTOINC, _P7_YUV2RGB_ACCESS_C0, 0x2C,0x05, 5, _AUTOINC, _P7_YUV2RGB_ACCESS_C0, 0x3C,0x9B, 5, _AUTOINC, _P7_YUV2RGB_ACCESS_C0, 0x4C,0x01, 5, _AUTOINC, _P7_YUV2RGB_ACCESS_C0, 0x5C,0x56, 5, _AUTOINC, _P7_YUV2RGB_ACCESS_C0, 0x6C,0x02, 5, _AUTOINC, _P7_YUV2RGB_ACCESS_C0, 0x7C,0xDB, 5, _AUTOINC, _P7_YUV2RGB_ACCESS_C0, 0x8C,0x07, 5, _AUTOINC, _P7_YUV2RGB_ACCESS_C0, 0x9C,0x16, 5, _AUTOINC, _P7_YUV2RGB_ACCESS_C0, 0xAC,0x00, 5, _AUTOINC, _P7_YUV2RGB_ACCESS_C0, 0xBC,0x00, 5, _AUTOINC, _P7_YUV2RGB_ACCESS_C0, 0xCC,0x00, 5, _AUTOINC, _P7_YUV2RGB_ACCESS_C0, 0xDC,0x00, 5, _AUTOINC, _P7_YUV2RGB_ACCESS_C0, 0xEC,0x00, 5, _AUTOINC, _P7_YUV2RGB_ACCESS_C0, 0xFC,0x00, 4, _NON_AUTOINC, _P7_YUV2RGB_ACCESS_C0, 0x0c, 4, _NON_AUTOINC, _P7_YUV2RGB_CTRL_BF, 0x01, 4, _NON_AUTOINC, _PAGE_SELECT_9F, _PAGE9, //v003 4, _NON_AUTOINC, _P9_CLAMP_CTRL0_C2, 0xE0, //v003 4, _NON_AUTOINC, _P9_CLAMP_NEWBP_STA_C5, 0x80, //v003 4, _NON_AUTOINC, _PAGE_SELECT_9F, _PAGE3, _END #else 6, _AUTOINC, _VGIP_CTRL_10, 0x09,0x11,0x00,//731301 4, _NON_AUTOINC, _VGIP_DELAY_CTRL_12, 0x00,//new add 4, _NON_AUTOINC, _VGIP_ODD_CTRL_13, 0x4f, 4, _NON_AUTOINC, _IPH_ACT_WID_H_16, 0x00, 4, _NON_AUTOINC, _SCALE_CTRL_32, 0x80, 4, _NON_AUTOINC, _VSYNC_COUNTER_LEVEL_MSB_4C,0x03, 4, _NON_AUTOINC, _SYNC_CTRL_49, 0x05, // 9CH 4, _NON_AUTOINC, _YUV2RGB_CTRL_9C, 0x08, 21, _NON_AUTOINC, _YUV_RGB_COEF_DATA_9D, 0x04,0x00,0x00,0x00,0x05,0x80, 0x04,0x00,0xfe,0xa0,0xfd,0x40, 0x04,0x00,0x07,0x00,0x00,0x00, 4, _NON_AUTOINC, _YUV2RGB_CTRL_9C, 0x07, #if(_VIDEO_IN == _VIDEO_16_IN) 4, _NON_AUTOINC, _IPV_ACT_STA_H_18, 0xf0, //cyc:not yet finished 4, _NON_AUTOINC, _PS_ACCESS_PORT_8D, 0x00, //cyc:not yet finished 5, _NON_AUTOINC, _PS_DATA_PORT_8E, 0x00,0x00, #elif(_VIDEO_IN == _VIDEO_8_IN) 4, _NON_AUTOINC, _IPH_ACT_WID_H_16, 0x08, //V304 modify 4, _NON_AUTOINC, _IPV_ACT_STA_H_18, 0x00, #endif // End of #if(_VIDEO_IN == _VIDEO_16_IN) 4, _NON_AUTOINC, _PAGE_SELECT_A0, 0x05, //for video-compensation 4, _NON_AUTOINC, _P5_SDRF_IN1_SDR_CTRL_B9, 0x82, #if (_DCC_FUNC==_ENABLE)//Modify:2006.4.17E jerry 4, _AUTOINC, _DCC_ACCESS_PORT_E6, 0x05,//Hist_Cont 4, _AUTOINC, _DCC_DATA_PORT_E7, 0xD0,//MOV_AVG_LEN=1 #endif _END #endif }; //-------------------------------------------------- // Global Variables //-------------------------------------------------- //frank bit bVideoType; #if(_SCALER_TYPE !=_RTD2662) //tommy add for decrease xdata space unsigned char fc_status; unsigned char flag_total;//flag625:bit3 flag_secam:bit2 flag_pal:bit1 flag_palm:bit0 #endif unsigned char idata ucMode_Pre_2610=0x00; unsigned char idata ucMode_Curr_2610=0x00; //initial ntscm mode unsigned char idata ucAV_Mode_Curr; unsigned char idata ucAV_Mode_Pre=60; BYTE idata ucVideoProcessState = _SOURCE_CHANGE_STATE; //Add by frank@2005.12.13 for state machine BIT TV_nosignal_flag = _FALSE; bit bVdcFirstOn=1; bit bTvPowerFirstOn=_TRUE; #if _TV_AFC_SUPPORT bit bTimerAfcms=0; UINT8 ucTimerAfcMs=0; #endif //-------------------------------------------------- // Function Prototypes //-------------------------------------------------- void CVideoInitial(void); bit CVideoIsExist(void); UINT8 IdentifyColorStandard(UINT8 status); #if(_DISPLAY_RATIO_ENABLE) void CVideoDisplayRatioSet(void); #endif void CVideoDisplaySet(void); void CVideoOutputDisable(void); void CVideoOutputEnable(void); void CVideoDetectMode(void); bit CVideoCheckMode(void); void CVideoSelectInput(BYTE); void CVideoSoftReset(void); void CVideoSetVDCHue(BYTE ucValue); void CVideoSetVDCSaturation(BYTE ucValue); void CVideoSetVDCContrast(BYTE ucValue); void CVideoSetVDCBrightness(BYTE ucValue); bit CVdcIsLocked(void); void CVideoProcess(void); #if(_DCC_FUNC==_ENABLE) void CVideoDCCProcess(void); #endif #if _JS6H1 bit CVdcIsLockedTvScan(void); #endif void CSetVideoParameter(void); void CSetVideoParameterTVSetVideo(BYTE uctype); #else //-------------------------------------------------- // Extern Global Variables //-------------------------------------------------- extern BYTE idata ucVideoProcessState; extern unsigned char idata ucMode_Pre_2610; extern unsigned char idata ucMode_Curr_2610; extern BIT TV_nosignal_flag; #if _TV_AFC_SUPPORT extern bit bTimerAfcms; extern UINT8 ucTimerAfcMs; #endif //-------------------------------------------------- // Extern Function Prototypes //-------------------------------------------------- extern bit CVideoIsExist(void); extern void CVideoOutputDisable(void); extern void CVideoOutputEnable(void); extern UINT8 IdentifyColorStandard(UINT8 status); #if(_DISPLAY_RATIO_ENABLE) extern void CVideoDisplayRatioSet(void); #endif extern void CVideoDisplaySet(void);//fjyang extern void CVideoSoftReset(void); extern bit CVdcIsLocked(void); extern void CVideoProcess(void); extern void CVideoSetVDCHue(BYTE ucValue); extern void CVideoSetVDCSaturation(BYTE ucValue); extern void CVideoSetVDCContrast(BYTE ucValue); extern void CVideoSetVDCBrightness(BYTE ucValue); void CVideoSelectInput(BYTE input_select); extern void CVideoSCART_CVBS(void) ; extern void CVideoSCART_RGB(void) ; extern void CVideoSCART_AUTO(void); extern void CVideoInitial(void); #if(_DCC_FUNC==_ENABLE) extern void CVideoDCCProcess(void); #endif #if _JS6H1 extern bit CVdcIsLockedTvScan(void); #endif extern void CSetVideoParameter(void); extern void CSetVideoParameterTVSetVideo(BYTE uctype); //------------------------------------------------ extern unsigned char idata ucAV_Mode_Curr; extern unsigned char idata ucAV_Mode_Pre; extern bit bVdcFirstOn; extern bit bTvPowerFirstOn; extern WORD code tVIDEO_TABLE_INPUT_INFO[][5]; //---------------------------------------------- extern unsigned char code RTD2610_PAL_I_ini[]; extern unsigned char code RTD2610_SECAM_ini[]; extern unsigned char code RTD2610_NTSC_M_ini[]; #endif //premier #define GET_VDC_FIRST_ON() (bVdcFirstOn) #define SET_VDC_FIRST_ON() (bVdcFirstOn=1) #define CLR_VDC_FIRST_ON() (bVdcFirstOn=0) #define GET_TV_FIRST_ON() (bTvPowerFirstOn) #define SET_TV_FIRST_ON() (bTvPowerFirstOn=_TRUE) #define CLR_TV_FIRST_ON() (bTvPowerFirstOn=_FALSE) #if _PAL_MASK_HUE #define GET_VIDEO8_V_RATE_IS_50() (((ucAV_Mode_Curr==50)||(ucMode_Curr_2610==ZPAL_60)||(ucMode_Curr_2610==ZPAL_M))?(_TRUE):(_FALSE)) #endif #if _OSD_2X //#define GET_OSD_HV_MASK(item) ((item == _MASK_ITEM_OSD_H-1||item == _MASK_ITEM_OSD_V-1)) #endif //20070329 //#define GET_OSD_NOT_EXIST() ((ucOsdState!=_MAINMENU_STATE) && (ucOsdState!=_EXTENDMENU_STATE)) //20070423, tv hyperlink update #define GET_OSD_NOT_EXIST() ((ucOsdState!=_MAINMENU_STATE) && (ucOsdState!=_EXTENDMENU_STATE)&& (ucOsdState!=_CHANNELEDIT_STATE)) #if _TYPEOF_OSD_KONSTA #define _MASK_ITEM_VGA_CTUSER 5 //color temp adjust #define GET_VGA_CTUSER_MASK(x) ((x == _MASK_ITEM_VGA_CTUSER-1)&&\ (GET_INPUTSOURCE_TYPE()==_SOURCE_VGA) &&\ (stLayerStack[ucLayerIndex].ucMainMenu==0) &&\ (ucLayerIndex==0) &&\ (GET_COLOR_TEMP_TYPE()!=_CT_USER) ) #endif //20090413, for noise signal #if _TV_WEAK_SIGNAL_THRESHOLD #define _WEAK_SIGNAL_SEARCH_THRESHOLD_VALUE (72) #define _WEAK_SIGNAL_ACTIVE_THRESHOLD_VALUE (80)//72 #define _WEAK_SIGNAL_UNACTIVE_THRESHOLD_VALUE (140)//72 #define _WEAK_SIGNAL_FHFV_THRESHOLD_VALUE (30) #endif #endif //#if(_VIDEO_SUPPORT == _ON)