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

📄 l2_lcdtv.c

📁 dz3000_51.0.0.4.rar
💻 C
📖 第 1 页 / 共 5 页
字号:
			//XBYTE[0x2DE2] = 0x01; 	// field mode
					XBYTE[0x2DE2] = 0x03;		// field mode
					//patch4.4@yichang@tv out quality begin
					chipID = XBYTE[0x20FF];
					if(chipID < 2)
							XBYTE[0x2D19] = 0x40;
					else
							XBYTE[0x2D19] = 0x3F;
					//patch4.4@yichang@tv out quality end
					status = 0;
		}
		//#endif
	
		//#ifdef PAL8
		if(index==5)// CCIR601(8-bit) PAL output
		{
			XBYTE[0x201C] = 0x00;		// using 27MHz for TV
			XBYTE[0x2D00] = 0x05;		// tvdspmode
			XBYTE[0x2D08] = 0x80;		// vldx0
			XBYTE[0x2D09] = 0x00;		// vldx0
			XBYTE[0x2D0A] = 0x04;		// vldy0
			XBYTE[0x2D0B] = 0x00;		// vldy0
			XBYTE[0x2D0C] = 0x4f;		// vldx1
			XBYTE[0x2D0D] = 0x03;		// vldx1
			XBYTE[0x2D0E] = 0x23;		// vldy1
			XBYTE[0x2D0F] = 0x01;		// vldy1
			XBYTE[0x2D1B] = 0x00;		// imgvofst
			XBYTE[0x2D1C] = 0x00;		// imgvofst
			XBYTE[0x2D1D] = 0x00;		// imghofst
			XBYTE[0x2D1E] = 0x00;		// imghofst
			XBYTE[0x2D21] = 0x20;		// osdsubsamp
			XBYTE[0x2D33] = 0x08;		// osdvofst
			XBYTE[0x2D34] = 0x30;		// osdhofst
					//patch4.3@yichang@0613 for TV sharpness
			//XBYTE[0x2DE2] = 0x01; 	// field mode
					//patch4.4@yichang@0621 for PAL,begin
					XBYTE[0x2D32] = 0x14;		// osdvzfac
					//patch4.4@yichang@0621 for PAL, end
					XBYTE[0x2DE2] = 0x03;		// field mode
					//patch4.4@yichang@tv out quality begin
					chipID = XBYTE[0x20FF];
					if(chipID < 2)
							XBYTE[0x2D19] = 0x40;
					else
							XBYTE[0x2D19] = 0x3F;
					//patch4.4@yichang@tv out quality end
					status = 0;
		}
		//#endif
	
		//#ifdef NTSC16
		if(index==6)// CCIR601(16-bit) NTSC output
		{
			XBYTE[0x201C] = 0x00;		// using 27MHz for TV
			XBYTE[0x2D00] = 0x06;		// tvdspmode
			XBYTE[0x2D08] = 0x80;		// vldx0
			XBYTE[0x2D09] = 0x00;		// vldx0
			XBYTE[0x2D0A] = 0x04;		// vldy0
			XBYTE[0x2D0B] = 0x00;		// vldy0
			XBYTE[0x2D0C] = 0x4f;		// vldx1
			XBYTE[0x2D0D] = 0x03;		// vldx1
			XBYTE[0x2D0E] = 0xf3;		// vldy1
			XBYTE[0x2D0F] = 0x00;		// vldy1
			XBYTE[0x2D1B] = 0x00;		// imgvofst
			XBYTE[0x2D1C] = 0x00;		// imgvofst
			XBYTE[0x2D1D] = 0x00;		// imghofst
			XBYTE[0x2D1E] = 0x00;		// imghofst
			XBYTE[0x2D21] = 0x20;		// osdsubsamp
			XBYTE[0x2D33] = 0x08;		// osdvofst
			XBYTE[0x2D34] = 0x30;		// osdhofst
					//patch4.3@yichang@0613 for TV sharpness
			//XBYTE[0x2DE2] = 0x01; 	// field mode
					XBYTE[0x2DE2] = 0x03;		// field mode
					//patch4.4@yichang@tv out quality begin
					chipID = XBYTE[0x20FF];
					if(chipID < 2)
							XBYTE[0x2D19] = 0x40;
					else
							XBYTE[0x2D19] = 0x3F;
					//patch4.4@yichang@tv out quality end
					status = 0;
		}
		//#endif
	
		//#ifdef PAL16
		if(index==7)// CCIR601(16-bit) PAL output
		{
			XBYTE[0x201C] = 0x00;		// using 27MHz for TV
			XBYTE[0x2D00] = 0x07;		// tvdspmode
			XBYTE[0x2D08] = 0x80;		// vldx0
			XBYTE[0x2D09] = 0x00;		// vldx0
			XBYTE[0x2D0A] = 0x04;		// vldy0
			XBYTE[0x2D0B] = 0x00;		// vldy0
			XBYTE[0x2D0C] = 0x4f;		// vldx1
			XBYTE[0x2D0D] = 0x03;		// vldx1
			XBYTE[0x2D0E] = 0x23;		// vldy1
			XBYTE[0x2D0F] = 0x01;		// vldy1
			XBYTE[0x2D1B] = 0x00;		// imgvofst
			XBYTE[0x2D1C] = 0x00;		// imgvofst
			XBYTE[0x2D1D] = 0x00;		// imghofst
			XBYTE[0x2D1E] = 0x00;		// imghofst
			XBYTE[0x2D21] = 0x20;		// osdsubsamp
			XBYTE[0x2D33] = 0x08;		// osdvofst
			XBYTE[0x2D34] = 0x30;		// osdhofst
					//patch4.3@yichang@0613 for TV sharpness
			//XBYTE[0x2DE2] = 0x01; 	// field mode
					//patch4.4@yichang@0621 for PAL, begin
					XBYTE[0x2D32] = 0x14;		// osdvzfac
					//patch4.4@yichang@0621 for PAL, end
					XBYTE[0x2DE2] = 0x03;		// field mode
					//patch4.4@yichang@tv out quality begin
					chipID = XBYTE[0x20FF];
					if(chipID < 2)
							XBYTE[0x2D19] = 0x40;
					else
							XBYTE[0x2D19] = 0x3F;
					//patch4.4@yichang@tv out quality end
					status =  0;
		}
		//#endif
	
		//#ifdef UPS051
		if(index==8)// UPS051 output
		{
			XBYTE[0x201C] = 0x02;		// using 24MHz for unipac TFT-LCD
			XBYTE[0x2D00] = 0x08;		// tvdspmode
			XBYTE[0x2D02] = 0x05;		// vline
			XBYTE[0x2D03] = 0x01;		// vline
			XBYTE[0x2D04] = 0x59;		// hpixel
			XBYTE[0x2D05] = 0x03;		// hpixel
			XBYTE[0x2D06] = 0x03;		// vsyncw
			XBYTE[0x2D07] = 0x62;		// hsyncw
			XBYTE[0x2D08] = 0x86;		// vldx0
			XBYTE[0x2D09] = 0x00;		// vldx0
			XBYTE[0x2D0A] = 0x16;		// vldy0
			XBYTE[0x2D0B] = 0x00;		// vldy0
			XBYTE[0x2D0C] = 0x48;		// vldx1
			XBYTE[0x2D0D] = 0x03;		// vldx1
			XBYTE[0x2D0E] = 0xF1;		// vldy1
			XBYTE[0x2D0F] = 0x00;		// vldy1
			XBYTE[0x2D1B] = 0x00;		// imgvofst
			XBYTE[0x2D1C] = 0x00;		// imgvofst
			XBYTE[0x2D1D] = 0x00;		// imghofst
			XBYTE[0x2D1E] = 0x00;		// imghofst
			XBYTE[0x2D20] = 0x1a;		// imgsubsamp
			XBYTE[0x2D21] = 0x1a;		// osdsubsamp
			XBYTE[0x2D33] = 0x00;		// osdvofst
			XBYTE[0x2D34] = 0x1a;		// osdhofst
					//patch4.3@yichang@0613 for TV sharpness
			//XBYTE[0x2DE2] = 0x00; 	// field mode
					XBYTE[0x2DE2] = 0x02;		// field mode
					status = 0;
		}
		//#endif
	
		//#ifdef EPSON
		if(index==9)// EPSON output
		{
			XBYTE[0x201C] = 0x02;		// using 24MHz for EPSON TFT-LCD
			XBYTE[0x2D00] = 0x0a;		// tvdspmode
			XBYTE[0x2D02] = 0x05;		// vline
			XBYTE[0x2D03] = 0x01;		// vline
			XBYTE[0x2D04] = 0x8D;		// hpixel
			XBYTE[0x2D05] = 0x03;		// hpixel
			XBYTE[0x2D06] = 0x16;		// vsyncw
			XBYTE[0x2D07] = 0x20;		// hsyncw
			XBYTE[0x2D08] = 0x54;		// vldx0
			XBYTE[0x2D09] = 0x00;		// vldx0
			XBYTE[0x2D0A] = 0x02;		// vldy0
			XBYTE[0x2D0B] = 0x00;		// vldy0
			XBYTE[0x2D0C] = 0xC4;		// vldx1
			XBYTE[0x2D0D] = 0x02;		// vldx1
			XBYTE[0x2D0E] = 0xE7;		// vldy1
			XBYTE[0x2D0F] = 0x00;		// vldy1
			XBYTE[0x2D1B] = 0x00;		// imgvofst
			XBYTE[0x2D1C] = 0x00;		// imgvofst
			XBYTE[0x2D1D] = 0x00;		// imghofst
			XBYTE[0x2D1E] = 0x00;		// imghofst
			XBYTE[0x2D20] = 0x20;		// imgsubsamp
			XBYTE[0x2D21] = 0x20;		// osdsubsamp
			XBYTE[0x2D25] = 0x0a;		// em1812en,xsclstate
			XBYTE[0x2D26] = 0x0b;		// evenrgb,oddrgb
			XBYTE[0x2D33] = 0x08;		// osdvofst
			XBYTE[0x2D34] = 0x30;		// osdhofst
					//patch4.3@yichang@0613 for TV sharpness
			//XBYTE[0x2DE2] = 0x00; 	// field mode
					XBYTE[0x2DE2] = 0x02;		// field mode
					status = 0;
		}
		//#endif
	
		//#ifdef CASIO
		if(index==10)// CASIO output
		{
			UCHAR RevIDPt;
	
			L2_ReadRevID(&RevIDPt);
	
			XBYTE[0x201C] = 0x00;		// using 27MHz for CASIO
			XBYTE[0x2D00] = 0x0B;		// tvdspmode
			//patch4.4@richie@casio
	
			//patch5.1@ada@Fix the CASIO LCD bug begin
			if (RevIDPt < 5)
			{
				XBYTE[0x2D02] = 0x05;		// vline
			}
			else
			{
				XBYTE[0x2D02] = 0x04;		// vline
			}
			//XBYTE[0x2D02] = 0x05; 	// vline
			//patch5.1@ada@Fix the CASIO LCD bug end
	
			XBYTE[0x2D03] = 0x01;		// vline
			XBYTE[0x2D04] = 0x5A;		// hpixel
			XBYTE[0x2D05] = 0x03;		// hpixel
			XBYTE[0x2D06] = 0x04;		// vsyncw
			XBYTE[0x2D07] = 0x04;		// hsyncw
			XBYTE[0x2D08] = 0x14;		// vldx0
			XBYTE[0x2D09] = 0x00;		// vldx0
			XBYTE[0x2D0A] = 0x13;		// vldy0
			XBYTE[0x2D0B] = 0x00;		// vldy0
			XBYTE[0x2D0C] = 0xDC;		// vldx1
			XBYTE[0x2D0D] = 0x02;		// vldx1
	
			//patch5.1@ada@Fix the CASIO LCD bug begin
			if (RevIDPt < 5)
			{
				XBYTE[0x2D0E] = 0x05;		// vldy1
			}
			else
			{
				XBYTE[0x2D0E] = 0x01;		// vldy1
			}
			//XBYTE[0x2D0E] = 0x05; 	// vldy1
			//patch5.1@ada@Fix the CASIO LCD bug end
	
			XBYTE[0x2D0F] = 0x01;		// vldy1
			XBYTE[0x2D1B] = 0x00;		// imgvofst
			XBYTE[0x2D1C] = 0x00;		// imgvofst
			XBYTE[0x2D1D] = 0x00;		// imghofst
			XBYTE[0x2D1E] = 0x00;		// imghofst
			XBYTE[0x2D20] = 0x20;		// imgsubsamp
			XBYTE[0x2D21] = 0x20;		// osdsubsamp
			XBYTE[0x2D25] = 0x20;			// GRES control
			//patch4.4@richie@casio
	
			//patch5.1@ada@Fix the CASIO LCD bug begin
			if (RevIDPt < 5)
			{
				XBYTE[0x2D26] = 0x09;		// evenrgb, oddrgb
			}
			else
			{
				XBYTE[0x2D26] = 0x06;		// evenrgb, oddrgb
			}
			//XBYTE[0x2D26] = 0x09; 	// evenrgb, oddrgb
			//patch5.1@ada@Fix the CASIO LCD bug end
	
			XBYTE[0x2D33] = 0x00;		// osdvofst
			XBYTE[0x2D34] = 0x10;		// osdhofst
					//patch4.3@yichang@0613 for TV sharpness
			//XBYTE[0x2DE2] = 0x00; 	// field mode
			//patch4.4@richie@casio
	
			//patch5.1@ada@Fix the CASIO LCD bug begin
			if (RevIDPt < 5)
			{
				XBYTE[0x2DE2] = 0x04;		// field mode
			}
			else
			{
				XBYTE[0x2DE2] = 0x00;		// field mode
			}
			//XBYTE[0x2DE2] = 0x04; 	// field mode
			//patch5.1@ada@Fix the CASIO LCD bug end
	
			status = 0;
		}
		//#endif
	
		//#ifdef STNLCD
		if(index==11)// GiantPlus output
		{
			//patch4.5@richie@hue begin
					XBYTE[0x2D2B] |= 0x01;			 //enable gamma  //cytsai@0328
					//XBYTE[0x21AE] = 0x30; 		  //saturation	  //cytsai@0328
			//patch4.5@richie@hue end
			//patch4.5@richie@saturation begin
					//XBYTE[0x21AE] = 0x01; 		  //enable saturation and hue adjustment //cytsai@0328
					XBYTE[0x21AC] |= 0x01;			 //enable saturation and hue adjustment //cytsai@0328
			//patch4.5@richie@saturation end
	
			XBYTE[0x201C] = 0x00;		// using 27MHz for STN-LCD
			XBYTE[0x2D00] = 0x0C;		// tvdspmode
			XBYTE[0x2D02] = 0xA5;		// vline
			XBYTE[0x2D03] = 0x00;		// vline
			XBYTE[0x2D04] = 0x1F;		// hpixel
			XBYTE[0x2D05] = 0x01;		// hpixel
	//		XBYTE[0x2D02] = 0xC7;		// vline
	//		XBYTE[0x2D03] = 0x00;		// vline
	//		XBYTE[0x2D04] = 0x67;		// hpixel
	//		XBYTE[0x2D05] = 0x01;		// hpixel
			XBYTE[0x2D06] = 0x02;		// vsyncw
			XBYTE[0x2D07] = 0x08;		// hsyncw
			XBYTE[0x2D08] = 0x28;		// vldx0
			XBYTE[0x2D09] = 0x00;		// vldx0
			XBYTE[0x2D0A] = 0x04;		// vldy0
			XBYTE[0x2D0B] = 0x00;		// vldy0
			XBYTE[0x2D0C] = 0x17;		// vldx1
			XBYTE[0x2D0D] = 0x01;		// vldx1
			XBYTE[0x2D0E] = 0xA3;		// vldy1
			XBYTE[0x2D0F] = 0x00;		// vldy1
			XBYTE[0x2D1B] = 0x00;		// imgvofst
			XBYTE[0x2D1C] = 0x00;		// imgvofst
			XBYTE[0x2D1D] = 0x00;		// imghofst
			XBYTE[0x2D1E] = 0x00;		// imghofst
			XBYTE[0x2D26] = 0x02;		// odd , even line
			XBYTE[0x2D21] = 0x40;		// osdsubsamp
					 //yichang@0513
					XBYTE[0x2D32] = 0x20;		// osdvzfac
			XBYTE[0x2D33] = 0x00;		// osdvofst
			XBYTE[0x2D34] = 0x20;		// osdhofst
					//patch4.3@yichang@0613 for TV sharpness
			//XBYTE[0x2DE2] = 0x00; 	// field mode
					XBYTE[0x2DE2] = 0x02;		// field mode
			return 0;
		}
		//#endif
	
		//#ifdef VGATFT
		if(index==12)// PrimeView VGATFT output
		{
			XBYTE[0x201C] = 0x01;		// tvenc1xck use 27MHz
			XBYTE[0x2D00] = 0x0E;		// tvdspmode
			XBYTE[0x2D02] = 0x0C;		// vline
			XBYTE[0x2D03] = 0x02;		// vline
			XBYTE[0x2D04] = 0x1F;		// hpixel
			XBYTE[0x2D05] = 0x03;		// hpixel
			XBYTE[0x2D06] = 0x02;		// vsyncw
			XBYTE[0x2D07] = 0x60;		// hsyncw
			XBYTE[0x2D08] = 0x90;		// vldx0
			XBYTE[0x2D09] = 0x00;		// vldx0
			XBYTE[0x2D0A] = 0x10;		// vldy0
			XBYTE[0x2D0B] = 0x00;		// vldy0
			XBYTE[0x2D0C] = 0x0F;		// vldx1
			XBYTE[0x2D0D] = 0x03;		// vldx1
			XBYTE[0x2D0E] = 0xEF;		// vldy1
			XBYTE[0x2D0F] = 0x01;		// vldy1
			XBYTE[0x2D1B] = 0x00;		// imgvofst
			XBYTE[0x2D1C] = 0x00;		// imgvofst
			XBYTE[0x2D1D] = 0x00;		// imghofst
			XBYTE[0x2D1E] = 0x00;		// imghofst
			XBYTE[0x2D33] = 0x20;		// osdvofst
			XBYTE[0x2D34] = 0x20;		// osdhofst
			XBYTE[0x2D21] = 0x40;		// osdsubsamp
			XBYTE[0x2D33] = 0x00;		// osdvofst
			XBYTE[0x2D34] = 0x20;		// osdhofst
					//patch4.3@yichang@0613 for TV sharpness
			//XBYTE[0x2DE2] = 0x00; 	// field mode
					XBYTE[0x2DE2] = 0x02;		// field mode
					status = 0;
		}
		//#endif
	
		//#ifdef AU015AN02
		if(index==13)// AU015AN02 output
		{
			XBYTE[0x201C] = 0x00;		// using 27MHz for AU digital I/F TFT-LCD
			XBYTE[0x20E6] = 0x80;		// phase adjustment
			XBYTE[0x2D00] = 0x09;		// tvdspmode
			XBYTE[0x2D02] = 0x05;		// vline
			XBYTE[0x2D03] = 0x01;		// vline
			XBYTE[0x2D04] = 0x59;		// hpixel
			XBYTE[0x2D05] = 0x03;		// hpixel
			XBYTE[0x2D06] = 0x15;		// vsyncw
			XBYTE[0x2D07] = 0x11;		// hsyncw
	
			//patch5.2.1@ada@Fix the bug of AVI recording with blue line on the left side begin
			XBYTE[0x2D08] = 0x82;		// vldx0
			//XBYTE[0x2D08] = 0x86; 	// vldx0
			//patch5.2.1@ada@Fix the bug of AVI recording with blue line on the left side end
	
			XBYTE[0x2D09] = 0x00;		// vldx0
			XBYTE[0x2D0A] = 0x03;		// vldy0
			XBYTE[0x2D0B] = 0x00;		// vldy0
			XBYTE[0x2D0C] = 0xE0;		// vldx1
			XBYTE[0x2D0D] = 0x02;		// vldx1
			XBYTE[0x2D0E] = 0xDE;		// vldy1
			XBYTE[0x2D0F] = 0x00;		// vldy1
			XBYTE[0x2D1B] = 0x00;		// imgvofst
			XBYTE[0x2D1C] = 0x00;		// imgvofst
			XBYTE[0x2D1D] = 0x00;		// imghofst
			XBYTE[0x2D1E] = 0x00;		// imghofst

⌨️ 快捷键说明

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