亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频

? 歡迎來到蟲蟲下載站! | ?? 資源下載 ?? 資源專輯 ?? 關于我們
? 蟲蟲下載站

?? osd2_initial.c

?? Terawins的芯片T128點3.5"屏的源程序。
?? C
字號:
//---------------------------------------------------------------------------
// Terawins Inc. Company Confidential Strictly Private
//
// $Archive: OSD2CSL.c $
// $Revision: 0.01 $
// $Author: Kevin Hsu $
// $Date: 2006/10/12 $
//
// --------------------------------------------------------------------------
// >>>>>>>>>>>>>>>>>>>>>>>>> COPYRIGHT NOTICE <<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<
// --------------------------------------------------------------------------
// Copyright 2002(c) Terawins Inc.
// --------------------------------------------------------------------------
#include "Common.h"
#include "Global.h"
#include "ICControl.h"	
#include "System.h"
#include "TWICreg.h"
#include "OSD2_Define.h"
//#include "ICON2BP12X18.H"
#include "Icon4BP12x12.H"
#include "Icon4BP12x122.H"
//#include "Icon4BP12x123.H"
#include "UIDraw.h"
uCHAR code *FontsStart;
void OSD2Init(void);
void OSD2LoadColor(void);
void OSD2Load4BPFont(void);
void OSD2Load2BPFont(void);
void OSD2Load1BPFont(void);

uCHAR code OSD2BGNDLutData[6]={  
//0x01,0x02,0x03,0x05,0x06,0x07  //6 background remap colors
  0xFA,0xFB,0xFC,0xFD,0xFE,0xFF,
};

void OSD2InItClearMenu(uCHAR MenuIndex)
{

	uCHAR i; 
	if(MenuIndex == MENU1)
	{	
		for(i=0; i<Menu1Height; i++)
		{
			OSD2SetRamAddr(Menu1StrAdr+(Menu1Width+4)*i);
			//~Set RAtt_V~//
			if(i==0)
				OSD2SetRamData(0x4000|Menu1StartY); 
		 	else
				OSD2SetRamData(0xE001);
			//~Set RAtt_H~//
			OSD2SetRamData(0x6000|Menu1StartX);
			//~Set RAtt_A~//
			OSD2SetRamData(0xD000|0x0003);

			//~Set RAtt_C~//
			OSD2SetRamData(0x0000|(Menu1Width));  	
			m_wBuff[0]=0;
			while(m_wBuff[0]<Menu1Width)
			{
				OSD2SetRamData(0x0000|((uWORD)(0&0x0F)<<9)|(OSD2SPACE));//osd2_blank
				m_wBuff[0]++;
			} 
		}
	}
	else if(MenuIndex == MENU2)
	{	
		for(i=0; i<Menu2Height; i++)
		{
			OSD2SetRamAddr(Menu2StrAdr+(Menu2Width+4)*i);
			//~Set RAtt_V~//
			if(i==0)
				OSD2SetRamData(0x4000|Menu2StartY); 
		 	else
				OSD2SetRamData(0xE001);
			//~Set RAtt_H~//
			OSD2SetRamData(0x6000|Menu2StartX);
			//~Set RAtt_A~//
			OSD2SetRamData(0xD000|0x0003);
			//~Set RAtt_C~//
			OSD2SetRamData(0x0000|(Menu2Width));  	
			m_wBuff[0]=0;
			while(m_wBuff[0]<Menu2Width)
			{
				OSD2SetRamData(0x0000|((uWORD)(0&0x0F)<<9)|(35));
				m_wBuff[0]++;
			} 
		}
	}	   	
	
}
void OSD2Init(void)
{
	//~Set Font Size.~//
	if(FontWidth==OSD2FONTWIDTH12)
		OSD2CfgWr(OSD_CHAR_FONT_SIZE,(0x00)|FontHeight);
	if(FontWidth==OSD2FONTWIDTH16)
		OSD2CfgWr(OSD_CHAR_FONT_SIZE,(0x20)|FontHeight);
	//~Set Char2BP Font Index Base.~//
	OSD2CfgWr(OSD_CHAR2BP_FONT_INDEX,Font2BPIndexStr);
	//~Set Char4BP Font Index Base.~//
	OSD2CfgWr(OSD_CHAR4BP_FONT_INDEX,Font4BPIndexStr);
	//~Set Char2BP Font Memory Base Address.~//
	OSD2CfgWr(OSD_CHAR2BP_FONT_MEMADD_L,Font2BPDataStrAdr&0x00FF);
	OSD2CfgWr(OSD_CHAR2BP_FONT_MEMADD_M,Font2BPDataStrAdr>>8);
	//~Set Char4BP Font Memory Base Address.~//
	OSD2CfgWr(OSD_CHAR4BP_FONT_MEMADD_L,Font4BPDataStrAdr&0x00FF);
	OSD2CfgWr(OSD_CHAR4BP_FONT_MEMADD_M,Font4BPDataStrAdr>>8);
	//~Set Globa Alpha Blending Control.~//
	OSD2CfgWr(OSD_GLOBAL_ALPHA_BLENDING,0x00);
	//~Set Border/Shadow/Char1BP Color High Bits Offset.~//
	OSD2CfgWr(OSD_BSH_COLOR_HIGHBIT,0x20);
	//Clear Ram
	OSD2SetRamAddr(0);
	for(m_wBuff[1]=0; m_wBuff[1]<8192; m_wBuff[1]++)
	{		
		IC_WritByte(TWIC_P0,OSD2_RAM_DL,0);
		IC_WritByte(TWIC_P0,OSD2_RAM_DL,0);
	}

	//~Menue-1 Setting. ~//
	OSD2CfgWr(OSD_MENU1_ENABLE,0x00);
	OSD2CfgWr(OSD_MENU1_START_ADR_L,Menu1StrAdr&0x00FF);
	OSD2CfgWr(OSD_MENU1_START_ADR_M,Menu1StrAdr>>8);
	OSD2CfgWr(OSD_MENU1_END_ADR_L,Menu1EndAdr&0x00FF);
	OSD2CfgWr(OSD_MENU1_END_ADR_M,Menu1EndAdr>>8);
	OSD2InItClearMenu(MENU1);
	//~Menue-2 Setting. ~//
	OSD2CfgWr(OSD_MENU2_ENABLE,0x00);
	OSD2CfgWr(OSD_MENU2_START_ADR_L,Menu2StrAdr&0x00FF);
	OSD2CfgWr(OSD_MENU2_START_ADR_M,Menu2StrAdr>>8);
	OSD2CfgWr(OSD_MENU2_END_ADR_L,Menu2EndAdr&0x00FF);
	OSD2CfgWr(OSD_MENU2_END_ADR_M,Menu2EndAdr>>8);
	OSD2InItClearMenu(MENU2);		  

	//~Load Color Table.~//
#ifdef ICON2BP
	OSD2LoadColor();
 	FontsStart = font0_000;
 	OSD2Load1BPFont();
#endif //ICON2BP
#ifdef ICON4BP
	OSD2LoadColor(); 
 	FontsStart = font4BP0_000;
	OSD2Load4BPFont();
	OSD2Load4BPFont2();
#endif //ICON4BP
	IC_WritByte(TWIC_P0,OSD2_CFG_INDEX,0x09);
 	for(m_wBuff[0] =0;m_wBuff[0]<18;m_wBuff[0]++)
	{														
		IC_WritByte(TWIC_P0,OSD2_CFG_DATA,0);
	}		
//Fill pattern
	OSD2CfgWr(0x30,0x4B);
	OSD2CfgWr(0x31,0x80);
	OSD2CfgWr(0x32,6);
	OSD2CfgWr(0x33,12);
	OSD2CfgWr(0x35,00);
	OSD2CfgWr(0x38,0x0C);
	OSD2CfgWr(0x3C,0xE7);
	OSD2CfgWr(0x3E,0xE9);
	for(m_wBuff[1]=0; m_wBuff[1]<(FontHeight); m_wBuff[1]++)
	{				
		m_wBuff[2] = m_wBuff[1]*6;
		OSD2CfgWr(0x37,font4BP0_Pat[m_wBuff[2] ]);
		OSD2CfgWr(0x37,font4BP0_Pat[m_wBuff[2]+1]);
		OSD2CfgWr(0x37,font4BP0_Pat[m_wBuff[2]+2]);
		OSD2CfgWr(0x37,font4BP0_Pat[m_wBuff[2]+3]);
		OSD2CfgWr(0x37,font4BP0_Pat[m_wBuff[2]+4]);
		OSD2CfgWr(0x37,font4BP0_Pat[m_wBuff[2]+5]);
	}


}
//	void OSD2LoadBGNDColor(uCHAR* BGNDTBL)
//	{
//	    uCHAR i;
//		OSD2CfgWr(OSD_COLOR_LUT_ADR_PORT,0x88);//0x110--OSD2BGND Color Remap LUT
//		IC_WritByte(TWIC_P0,OSD2_CFG_INDEX,0x09);	
//	   
//	   for(i = 0; i < 6;i++)  
//	   {
//		   IC_WritByte(TWIC_P0,OSD2_CFG_DATA,*BGNDTBL);
//	   }
//	}
void OSD2LoadColor()
{	
	//~ Load Main Color Look Up Table.~//
#ifdef ICON4BP
	OSD2CfgWr(OSD_COLOR_LUT_ADR_PORT,0x00);
	IC_WritByte(TWIC_P0,OSD2_CFG_INDEX,0x09);
 	for(m_wBuff[0] =0;m_wBuff[0]<COLORTBLNUM;m_wBuff[0]++)
	{
		IC_WritByte(TWIC_P0,OSD2_CFG_DATA,Icon4BPColorTable[m_wBuff[0]]);
	}
	OSD2CfgWr(OSD_COLOR_LUT_ADR_PORT,0x80);//0x100--Char2BP Color Remap LUT
	IC_WritByte(TWIC_P0,OSD2_CFG_INDEX,0x09);
	for(m_wBuff[0]=0;m_wBuff[0]<16;m_wBuff[0]++)
	{
		IC_WritByte(TWIC_P0,OSD2_CFG_DATA,0);
		IC_WritByte(TWIC_P0,OSD2_CFG_DATA,0);
		IC_WritByte(TWIC_P0,OSD2_CFG_DATA,0);
	}
	OSD2CfgWr(OSD_COLOR_LUT_ADR_PORT,0x88);//0x110--OSD2BGND Color Remap LUT
	IC_WritByte(TWIC_P0,OSD2_CFG_INDEX,0x09);	
	for(m_wBuff[0] = 0; m_wBuff[0] < 6;m_wBuff[0]++)  
	{
		IC_WritByte(TWIC_P0,OSD2_CFG_DATA,OSD2BGNDLutData[m_wBuff[0]]);
	}
	
#endif //ICON4BP
#ifdef ICON2BP
	//~Load Char2BP Color Remap LUT.~//
	OSD2CfgWr(OSD_COLOR_LUT_ADR_PORT,0x80);
	IC_WritByte(TWIC_P0,OSD2_CFG_INDEX,0x09);
	for(m_wBuff[0]=0;m_wBuff[0]<16;m_wBuff[0]++)
	{
		IC_WritByte(TWIC_P0,OSD2_CFG_DATA,IndexColorTable[m_wBuff[0]*3+2]);
		IC_WritByte(TWIC_P0,OSD2_CFG_DATA,IndexColorTable[m_wBuff[0]*3+1]);
		IC_WritByte(TWIC_P0,OSD2_CFG_DATA,IndexColorTable[m_wBuff[0]*3]);
	}
#endif //ICON2BP
  
}
#ifdef ICON2BP	
void OSD2Load2BPFont(void)
{
	OSD2SetRamAddr(Font2BPDataStrAdr);	    	
	if(FontWidth==OSD2FONTWIDTH12)
	{
		for(m_wBuff[1]=0;m_wBuff[1]<Font2BPNum;m_wBuff[1]++)
		{
			for(m_wBuff[0]=0; m_wBuff[0]<(FontHeight); m_wBuff[0]+=2)
			{			   
				m_wBuff[2] = (m_wBuff[1]* FontHeight+m_wBuff[0])*3;
				IC_WritByte(TWIC_P0,OSD2_RAM_DL,FontsStart[m_wBuff[2]+1]);
				IC_WritByte(TWIC_P0,OSD2_RAM_DL,FontsStart[m_wBuff[2]]);
				IC_WritByte(TWIC_P0,OSD2_RAM_DL,FontsStart[m_wBuff[2]+3]);
				IC_WritByte(TWIC_P0,OSD2_RAM_DL,FontsStart[m_wBuff[2]+2]);
				IC_WritByte(TWIC_P0,OSD2_RAM_DL,FontsStart[m_wBuff[2]+5]);
				IC_WritByte(TWIC_P0,OSD2_RAM_DL,FontsStart[m_wBuff[2]+4]);
			}
		}
	}			
}				 
#endif //ICON2BP 
void OSD2Load4BPFont(void)
{
	OSD2SetRamAddr(Font4BPDataStrAdr);  	
	if(FontWidth==OSD2FONTWIDTH12)
	{
		for(m_wBuff[0]=0;m_wBuff[0]<60;m_wBuff[0]++)
		{
			for(m_wBuff[1]=0; m_wBuff[1]<(FontHeight); m_wBuff[1]++)
			{

				m_wBuff[2] = (m_wBuff[0]* FontHeight+m_wBuff[1])*6;
				IC_WritByte(TWIC_P0,OSD2_RAM_DL,FontsStart[m_wBuff[2] +1]);
				IC_WritByte(TWIC_P0,OSD2_RAM_DL,FontsStart[m_wBuff[2]]);
				IC_WritByte(TWIC_P0,OSD2_RAM_DL,FontsStart[m_wBuff[2] +3]);
				IC_WritByte(TWIC_P0,OSD2_RAM_DL,FontsStart[m_wBuff[2] +2]);
				IC_WritByte(TWIC_P0,OSD2_RAM_DL,FontsStart[m_wBuff[2] +5]);
				IC_WritByte(TWIC_P0,OSD2_RAM_DL,FontsStart[m_wBuff[2] +4]);	  
			}
		}
	}
	else if(FontWidth==OSD2FONTWIDTH16)
	{
		for(m_wBuff[0]=0;m_wBuff[0]<Font4BPNum;m_wBuff[0]++)
		{
			for(m_wBuff[1]=0; m_wBuff[1]<(FontHeight); m_wBuff[1]++)
			{

				m_wBuff[2] = (m_wBuff[0]* FontHeight+m_wBuff[1])*8;
				IC_WritByte(TWIC_P0,OSD2_RAM_DL,FontsStart[m_wBuff[2] +1]);
				IC_WritByte(TWIC_P0,OSD2_RAM_DL,FontsStart[m_wBuff[2]]);
				IC_WritByte(TWIC_P0,OSD2_RAM_DL,FontsStart[m_wBuff[2] +3]);
				IC_WritByte(TWIC_P0,OSD2_RAM_DL,FontsStart[m_wBuff[2] +2]);
				IC_WritByte(TWIC_P0,OSD2_RAM_DL,FontsStart[m_wBuff[2] +5]);
				IC_WritByte(TWIC_P0,OSD2_RAM_DL,FontsStart[m_wBuff[2] +4]);
				IC_WritByte(TWIC_P0,OSD2_RAM_DL,FontsStart[m_wBuff[2] +7]);
				IC_WritByte(TWIC_P0,OSD2_RAM_DL,FontsStart[m_wBuff[2] +6]);
			}
		}
	}	
 	
}
/*void OSD2PatternFillInit(uCHAR code * pPattern,uCHAR ColorDepth, uCHAR Height, uCHAR Width)
{
	OSD2CfgWr(OSD_PT_CTRL,ColorDepth);
	OSD2CfgWr(OSD_PT_LUT_BASEADD,0x80);
	OSD2CfgWr(OSD_PT_HSIZE,Height);
	OSD2CfgWr(OSD_PT_VSIZE,Width);
	OSD2CfgWr(OSD_PT_ALPBL_CTRL,00);

	m_wBuff[2] = (Height*Width)/((ColorDepth&0x0C)>>2);
	OSD2CfgWr(OSD_PT_CTRL,(ColorDepth|0x01));
	for(m_wBuff[1]=0; m_wBuff[1]<m_wBuff[2]; m_wBuff[1]++)
	{	
		OSD2CfgWr(OSD_PT_RAM_WRITE_PORT,pPattern[m_wBuff[1]]);			
	}
} */

?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
成人黄色小视频| 久久精品男人的天堂| 欧美一区二区三区在线| 亚洲国产高清在线| 偷拍日韩校园综合在线| 成人美女在线观看| 日韩欧美美女一区二区三区| 中文字幕一区二区三区精华液| 欧美色综合网站| 国产91丝袜在线观看| 色网站国产精品| 69精品人人人人| 91麻豆精品国产91久久久久久 | 久久品道一品道久久精品| 一区二区高清免费观看影视大全| 国产精品99久久久久久似苏梦涵| 欧美精三区欧美精三区| 亚洲人成小说网站色在线 | 337p粉嫩大胆噜噜噜噜噜91av| 亚洲精品乱码久久久久久 | 久久九九影视网| 久久成人免费电影| 欧美日韩在线不卡| 亚洲日本丝袜连裤袜办公室| 国产剧情一区在线| 日韩欧美专区在线| 日韩经典中文字幕一区| 在线电影一区二区三区| 亚洲大尺度视频在线观看| 99re这里只有精品首页| 国产日本一区二区| 国产盗摄女厕一区二区三区| 国产欧美一区二区三区鸳鸯浴 | 精品三级av在线| 蜜臀91精品一区二区三区| 91精品国产91久久综合桃花| 亚州成人在线电影| 欧美另类高清zo欧美| 视频在线在亚洲| 日韩一级片网址| 久久99热这里只有精品| wwwwxxxxx欧美| 国产精品456| 中文字幕一区二区视频| 色偷偷久久人人79超碰人人澡| 亚洲免费在线视频一区 二区| 91在线无精精品入口| 玉米视频成人免费看| 欧美人狂配大交3d怪物一区| 青青草国产精品97视觉盛宴| 久久综合色婷婷| www.亚洲在线| 亚洲精品菠萝久久久久久久| 色94色欧美sute亚洲线路二 | 国产婷婷色一区二区三区在线| 精品在线播放午夜| 欧美韩国日本不卡| 色哟哟一区二区三区| 天天免费综合色| 久久久久久久久99精品| 色哟哟在线观看一区二区三区| 日本在线观看不卡视频| 国产偷国产偷亚洲高清人白洁| 色婷婷精品大在线视频| 蜜桃视频在线观看一区二区| 国产欧美日韩综合精品一区二区| 一道本成人在线| 青娱乐精品视频在线| 欧美激情一区在线| 欧美午夜免费电影| 国产精品1区2区3区| 亚洲精品五月天| 精品毛片乱码1区2区3区| 北条麻妃一区二区三区| 三级欧美韩日大片在线看| 久久久综合视频| 欧美色网站导航| 国产999精品久久久久久| 午夜在线电影亚洲一区| 欧美激情一区二区在线| 91精品国产综合久久福利| 成人黄色网址在线观看| 国产真实乱对白精彩久久| 亚洲精品国产高清久久伦理二区| 精品国产a毛片| 欧美日韩国产小视频在线观看| 丁香亚洲综合激情啪啪综合| 日本在线不卡视频| 一区二区三区四区五区视频在线观看| 久久综合av免费| 欧美精品成人一区二区三区四区| 成+人+亚洲+综合天堂| 精品一区在线看| 亚洲成人在线网站| 亚洲日本在线天堂| 欧美国产欧美综合| www一区二区| 日韩欧美一级在线播放| 欧美男男青年gay1069videost| 99久久精品情趣| 国内精品视频一区二区三区八戒| 视频一区免费在线观看| 亚洲国产日韩在线一区模特 | 色综合久久久久| 99热这里都是精品| www.欧美日韩| 99精品一区二区三区| 成人午夜视频免费看| 成人免费毛片a| 成人听书哪个软件好| 国产精品系列在线观看| 国产综合色在线| 国内精品伊人久久久久av一坑| 久久激情五月婷婷| 精品综合免费视频观看| 日韩电影网1区2区| 蜜桃av一区二区三区| 日本不卡中文字幕| 久久成人免费网| 激情欧美一区二区| 久久99久久99| 国产乱码精品一区二区三| 国产高清精品网站| 成人听书哪个软件好| 色哟哟一区二区| 欧美日韩国产中文| 91麻豆精品久久久久蜜臀 | 4438成人网| 日韩欧美国产精品| 久久精品夜色噜噜亚洲aⅴ| 国产欧美日韩视频在线观看| 国产精品福利影院| 亚洲一区成人在线| 免费看黄色91| 国产乱码精品一区二区三区av | 亚洲国产精品精华液网站| 午夜欧美大尺度福利影院在线看| 日韩精品亚洲专区| 久久99久久99小草精品免视看| 国产精品一区三区| 在线观看精品一区| 精品少妇一区二区三区视频免付费 | 精品在线观看免费| 成人福利视频在线| 欧美色涩在线第一页| 欧美精品一区二区三区蜜桃视频 | 久久一日本道色综合| 亚洲男人的天堂在线观看| 蜜桃av噜噜一区| 97精品久久久午夜一区二区三区 | 国产麻豆精品一区二区| av亚洲精华国产精华精| 欧美日韩aaaaaa| 国产日韩一级二级三级| 亚洲一区二区三区四区不卡| 国模一区二区三区白浆| 99久久伊人精品| 精品久久久久av影院| 亚洲激情在线激情| 国产美女在线精品| 欧美另类videos死尸| 亚洲欧洲无码一区二区三区| 蜜臀av性久久久久av蜜臀妖精| 99re在线视频这里只有精品| 日韩午夜激情电影| 亚洲一区二区三区中文字幕| 国产高清不卡一区二区| 欧美一区二区视频免费观看| 亚洲精品国久久99热| 成人黄色av电影| 久久综合中文字幕| 欧美aaa在线| 欧美亚洲一区二区在线| 国产精品丝袜一区| 老色鬼精品视频在线观看播放| 欧美调教femdomvk| 自拍偷在线精品自拍偷无码专区| 精品一区二区三区在线播放| 欧美性猛片xxxx免费看久爱| 国产精品久久久久久久第一福利| 激情丁香综合五月| 欧美精品第1页| 亚洲五月六月丁香激情| 91蜜桃视频在线| 国产精品视频九色porn| 国产精品一区二区免费不卡| 精品久久久久99| 美腿丝袜亚洲综合| 51精品秘密在线观看| 亚洲成人你懂的| 在线一区二区三区做爰视频网站| 国产精品久久夜| 风流少妇一区二区| 国产精品女上位| 成人免费精品视频| 国产精品你懂的在线欣赏| 国产成人免费视频网站| 国产婷婷色一区二区三区四区| 国产一区二区网址| 国产日产欧美一区|