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

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

?? glib.c

?? 三星 s3c6400測試代碼
?? C
?? 第 1 頁 / 共 2 頁
字號:
/**
 * glib.cpp
 *
 * @Person Involved dharma			
 * @version         1.0
 */

#include <stdarg.h>
#include <string.h>
#include <stdio.h>

#include "system.h"
#include "library.h"
#include "glib.h"
#include "glib_font.h"

#define CC24_16(c)	         ( ((((c)>>19)&0x1f)<<11)|((((c)>>10)&0x3f)<< 5)|((((c)>>3)&0x1f)<<0) )

#define START_ASCII           (0x20)
#define FONT_START_LINE       (2)
#define FONT_END_LINE         (14)

#define ARGB8_ALPHA_MASK     ~(1<<7)
#define ARGB16_ALPHA_MASK    ~(1<<15)
#define ARGB24_ALPHA_MASK    ~(1<<24)

GLIB oGlib;

void GLIB_Init(u32 uFbAddr, u32 uHSize, u32 uVSize, CSPACE eBpp)
{
	GLIB_InitInstance(uFbAddr, uHSize, uVSize, eBpp);
}

void GLIB_ClearFrame(COLOR color) 
{ 
	if (oGlib.m_uPalFlag == 0)
		GLIB_ClearFrame2(oGlib.m_uColorValue[color]); 
	else
		GLIB_ClearPalFrame(color);
}

void GLIB_ClearFrame3(COLOR color, ALPHA_SEL eSel)
{ 
	GLIB_ClearFrame4(oGlib.m_uColorValue[color], eSel); 
}

void GLIB_GetColorValue(COLOR color, u32 *value)
{ 
	*value =  oGlib.m_uColorValue[color]; 
}

void GLIB_PutPixel(u32 x, u32 y, COLOR color) 
{
	if (oGlib.m_uPalFlag == 0)
		GLIB_PutPixel2(x, y, oGlib.m_uColorValue[color]); 
	else
		GLIB_PutPalData(x, y, color);
}

void GLIB_PutLine(int x1, int y1, int x2, int y2, COLOR color) 
{
	if (oGlib.m_uPalFlag == 0)
		GLIB_PutLine2(x1, y1, x2, y2, oGlib.m_uColorValue[color]);
	else
		GLIB_PutPalLine(x1, y1, x2, y2, color);
}

void GLIB_PutLine3(int nX1, int nY1, int nX2, int nY2, COLOR eColor, ALPHA_SEL eSel)
{
	GLIB_PutLine4(nX1, nY1, nX2, nY2, oGlib.m_uColorValue[eColor], eSel);
}

void GLIB_PutRectangle(int x1, int y1, int dx, int dy, COLOR color) 
{ 
	if (oGlib.m_uPalFlag == 0)
		GLIB_PutRectangle2(x1, y1, dx, dy, oGlib.m_uColorValue[color]); 
	else
		GLIB_PutPalRectangle(x1, y1, dx, dy, color); 
}

void GLIB_PutRectangle3(int x1, int y1, int dx, int dy, COLOR color, ALPHA_SEL eSel) 
{
	GLIB_PutRectangle4(x1, y1, dx, dy, oGlib.m_uColorValue[color], eSel); 	
}

void GLIB_FillRectangle(int x1, int y1, int dx, int dy, COLOR color)
{
	if (oGlib.m_uPalFlag == 0)
		GLIB_FillRectangle2(x1, y1, dx, dy, oGlib.m_uColorValue[color]);
	else
		GLIB_FillPalRectangle(x1, y1, dx, dy, color);		
}

void GLIB_FillRectangle3(int x1, int y1, int dx, int dy, COLOR color, ALPHA_SEL eSel)
{
	GLIB_FillRectangle4(x1, y1, dx, dy, oGlib.m_uColorValue[color], eSel);	
}

void GLIB_GetDimension(u32 *x, u32 *y)
{
	*x = oGlib.m_uHsz;
	*y = oGlib.m_uVsz;
}

void GLIB_InitInstance(u32 uFbAddr, u32 uHSize, u32 uVSize, CSPACE eBpp)
{
	oGlib.m_uHsz = uHSize;
	oGlib.m_uVsz = uVSize;
	oGlib.m_uBpp =
		(eBpp == RGB8 || eBpp == ARGB8) ? 8 :
		(eBpp == RGB16 || eBpp == ARGB16) ? 16 :
		(eBpp == RGB24 || eBpp == ARGB24) ? 24 : 24;

	oGlib.m_uPalDataBpp =
		(eBpp == PAL1) ? 1 :
		(eBpp == PAL2) ? 2 :
		(eBpp == PAL4) ? 4 :
		(eBpp == PAL8) ? 8 : 8;	

	oGlib.m_eCSpace = eBpp;
			
	oGlib.m_pFrameBuf = (void*)uFbAddr;
	oGlib.m_uFrameBuf = uFbAddr; /// added in GJ

	oGlib.m_uPalFlag = 0;
	oGlib.m_uCnt = 0;
	oGlib.m_ucPreData = 0;

	oGlib.m_uPrePosX = 0;
	oGlib.m_uPrePosY = 0;
	
	if (eBpp == RGB8)
	{
		oGlib.m_uColorValue[C_BLACK] = 0x00;
		oGlib.m_uColorValue[C_RED]   = 0x07<<5;
		oGlib.m_uColorValue[C_GREEN] = 0x07<<2;
		oGlib.m_uColorValue[C_BLUE]  = 0x03;
		oGlib.m_uColorValue[C_WHITE] = 0xff;
	}
	// A:1 - R:2 - G:3 - B:2
	// A's init value: 0 (A is Alpha value select bit)
	// if A is 0 then alpha_0 value of LCDC(above V3.2) is selected, else alpha_1 value is selected
	else if (eBpp == ARGB8) 
	{
		oGlib.m_uColorValue[C_BLACK] = 0x00;
		oGlib.m_uColorValue[C_RED] = 0x3<<5;
		oGlib.m_uColorValue[C_GREEN] = 0x7<<2;
		oGlib.m_uColorValue[C_BLUE] = 0x3;
		oGlib.m_uColorValue[C_WHITE] = 0x7f;
	}
	else if (eBpp == RGB16)
	{
		oGlib.m_uColorValue[C_BLACK] = 0x0;
		oGlib.m_uColorValue[C_RED]   = 0x1f<<11;
		oGlib.m_uColorValue[C_GREEN] = 0x3f<<5;
		oGlib.m_uColorValue[C_BLUE]  = 0x1f<<0;
		oGlib.m_uColorValue[C_WHITE] = 0xffff;
	}
	else if (eBpp == ARGB16) // A:1 - R:5 - G:5 - B:5 and A's init value: 0
	{
		oGlib.m_uColorValue[C_BLACK] = 0x0;
		oGlib.m_uColorValue[C_RED]   = 0x1f<<10;
		oGlib.m_uColorValue[C_GREEN] = 0x1f<<5;
		oGlib.m_uColorValue[C_BLUE]  = 0x1f<<0;
		oGlib.m_uColorValue[C_WHITE] = 0x7fff;
	}
	else if (eBpp == RGB24)
	{
		oGlib.m_uColorValue[C_BLACK] = 0x0;
		oGlib.m_uColorValue[C_RED]   = 0xff0000;
		oGlib.m_uColorValue[C_GREEN] = 0xff00;
		oGlib.m_uColorValue[C_BLUE]  = 0xff;
		oGlib.m_uColorValue[C_WHITE] = 0xffffff;
	}
	else if (eBpp == ARGB24) // A:1 - R:8 - G:8 - B:7 and A's init value: 0
	{
		oGlib.m_uColorValue[C_BLACK] = 0x0;
		oGlib.m_uColorValue[C_RED]   = 0xff<<15;
		oGlib.m_uColorValue[C_GREEN] = 0xff<<7;
		oGlib.m_uColorValue[C_BLUE]  = 0x7f;
		oGlib.m_uColorValue[C_WHITE] = 0x7fffff;
	}
	
	oGlib.m_uColorValue[C_YELLOW] = (oGlib.m_uColorValue[C_RED] | oGlib.m_uColorValue[C_GREEN]);
	oGlib.m_uColorValue[C_CYAN] = (oGlib.m_uColorValue[C_GREEN] | oGlib.m_uColorValue[C_BLUE]);
	oGlib.m_uColorValue[C_MAGENTA] = (oGlib.m_uColorValue[C_RED] | oGlib.m_uColorValue[C_BLUE]);		

	GLIB_InitFont();
}

void GLIB_SetPalDataFormat(CSPACE ePalDataFormat)
{
	oGlib.m_uPalFlag = 1;
	
	if (oGlib.m_uPalDataBpp == 1)
	{
		if(ePalDataFormat == RGB8)
		{
			oGlib.m_uColorValue[C_BLACK] = 0x00;
			oGlib.m_uColorValue[C_RED]   = 0x07<<5;
		}
		else if(ePalDataFormat == RGB16)
		{
			oGlib.m_uColorValue[C_BLACK] = 0x0;
			oGlib.m_uColorValue[C_RED]   = 0x1f<<11;			
		}
		else if(ePalDataFormat == RGB24)
		{
			oGlib.m_uColorValue[C_BLACK] = 0x0;
			oGlib.m_uColorValue[C_RED] = 0xff0000;					
		}
		else
		{
			Assert(0);
		}
	}
	else if (oGlib.m_uPalDataBpp == 2)
	{
		if(ePalDataFormat == RGB8)
		{
			oGlib.m_uColorValue[C_BLACK] = 0x00;
			oGlib.m_uColorValue[C_RED]   = 0x07<<5;
			oGlib.m_uColorValue[C_GREEN] = 0x07<<2;
			oGlib.m_uColorValue[C_BLUE]  = 0x03;			
		}
		else if(ePalDataFormat == RGB16)
		{
			oGlib.m_uColorValue[C_BLACK] = 0x0;
			oGlib.m_uColorValue[C_RED]   = 0x1f<<11;
			oGlib.m_uColorValue[C_GREEN] = 0x3f<<5;
			oGlib.m_uColorValue[C_BLUE]  = 0x1f<<0;
		}
		else if(ePalDataFormat == RGB24)
		{
			oGlib.m_uColorValue[C_BLACK] = 0x0;
			oGlib.m_uColorValue[C_RED]   = 0xff0000;
			oGlib.m_uColorValue[C_GREEN] = 0xff00;
			oGlib.m_uColorValue[C_BLUE]  = 0xff;
		}
		else
		{
			Assert(0);
		}
		
	}
	else if ( (oGlib.m_uPalDataBpp == 4) || (oGlib.m_uPalDataBpp == 8) )
	{
		if(ePalDataFormat == RGB8)
		{
			oGlib.m_uColorValue[C_BLACK] = 0x00;
			oGlib.m_uColorValue[C_RED]   = 0x07<<5;
			oGlib.m_uColorValue[C_GREEN] = 0x07<<2;
			oGlib.m_uColorValue[C_BLUE]  = 0x03;
			oGlib.m_uColorValue[C_WHITE] = 0xff;
		}
		else if(ePalDataFormat == RGB16)
		{
			oGlib.m_uColorValue[C_BLACK] = 0x0;
			oGlib.m_uColorValue[C_RED]   = 0x1f<<11;
			oGlib.m_uColorValue[C_GREEN] = 0x3f<<5;
			oGlib.m_uColorValue[C_BLUE]  = 0x1f<<0;
			oGlib.m_uColorValue[C_WHITE] = 0xffff;
		}
		else if(ePalDataFormat == RGB24)
		{
			oGlib.m_uColorValue[C_BLACK] = 0x0;
			oGlib.m_uColorValue[C_RED]   = 0xff0000;
			oGlib.m_uColorValue[C_GREEN] = 0xff00;
			oGlib.m_uColorValue[C_BLUE]  = 0xff;
			oGlib.m_uColorValue[C_WHITE] = 0xffffff;
		}
		else
		{
			Assert(0);
		}
	}
	else
	{
		Assert(0);
	}

	oGlib.m_uColorValue[C_YELLOW] = (oGlib.m_uColorValue[C_RED] | oGlib.m_uColorValue[C_GREEN]);
	oGlib.m_uColorValue[C_CYAN] = (oGlib.m_uColorValue[C_GREEN] | oGlib.m_uColorValue[C_BLUE]);
	oGlib.m_uColorValue[C_MAGENTA] = (oGlib.m_uColorValue[C_RED] | oGlib.m_uColorValue[C_BLUE]);		
	
}

void GLIB_GetPalDataFormat(COLOR eColorIdx, u32 *uColorVal)
{
	*uColorVal = oGlib.m_uColorValue[eColorIdx];
}

void GLIB_PutPixel2(u32 x, u32 y, u32 cvalue)
{
	if (oGlib.m_uBpp == 8)
	{
		*((u8 *)(oGlib.m_pFrameBuf)+oGlib.m_uHsz*(y)+(x)) = (u8)cvalue;
	}
	else if (oGlib.m_uBpp == 16)
	{
		*((u16 *)(oGlib.m_pFrameBuf)+oGlib.m_uHsz*(y)+(x)) = (u16)cvalue;

	}
	else if (oGlib.m_uBpp == 18 || oGlib.m_uBpp == 24)
	{
		*((u32 *)(oGlib.m_pFrameBuf)+oGlib.m_uHsz*(y)+(x)) = cvalue;
	}
}

void GLIB_PutPalData(int nPosX, int nPosY, u32 uData)
{
	if (oGlib.m_uPalDataBpp == 8)
	{
		*((u8 *)(oGlib.m_pFrameBuf)+oGlib.m_uHsz*(nPosY)+(nPosX)) = (u8)uData;		
	}
	else if(oGlib.m_uPalDataBpp != 8)
	{
		Assert(0);
	}
}

void GLIB_PutRectangle2(int x1, int y1, int dx, int dy, u32 cvalue)
{
	u32 x2 = x1+dx-1;
	u32 y2 = y1+dy-1;
	
	GLIB_PutLine2(x1,y1,x2,y1,cvalue);
	GLIB_PutLine2(x2,y1,x2,y2,cvalue);
	GLIB_PutLine2(x1,y2,x2,y2,cvalue);
	GLIB_PutLine2(x1,y1,x1,y2,cvalue);
}

void GLIB_PutRectangle4(int x1, int y1, int dx, int dy, u32 cvalue, ALPHA_SEL eSel)
{
	u32 x2 = x1+dx-1;
	u32 y2 = y1+dy-1;
	
	GLIB_PutLine4(x1,y1,x2,y1,cvalue, eSel);
	GLIB_PutLine4(x2,y1,x2,y2,cvalue, eSel);
	GLIB_PutLine4(x1,y2,x2,y2,cvalue, eSel);
	GLIB_PutLine4(x1,y1,x1,y2,cvalue, eSel);
}

void GLIB_PutPalRectangle(int nPosX1, int nPosY1, int nHSz, int nVSz, u32 uData)
{
	u32 uPosX2 = nPosX1+nHSz-1;
	u32 uPosY2 = nPosY1+nVSz-1;

	GLIB_PutPalLine(nPosX1, nPosY1, uPosX2, nPosY1, uData);
	GLIB_PutPalLine(uPosX2, nPosY1, uPosX2, uPosY2, uData);
	GLIB_PutPalLine(nPosX1, uPosY2, uPosX2, uPosY2, uData);
	GLIB_PutPalLine(nPosX1, nPosY1, nPosX1, uPosY2, uData);
}

void GLIB_FillRectangle2(int x1, int y1, int dx, int dy, u32 cvalue)
{
	int i;
	u32 x2 = x1+dx-1;
	u32 y2 = y1+dy-1;
	
	for(i=y1;i<=y2;i++)
		GLIB_PutLine2(x1,i,x2,i,cvalue);
}

void GLIB_FillRectangle4(int x1, int y1, int dx, int dy, u32 cvalue, ALPHA_SEL eSel)
{
	int i;
	u32 x2 = x1+dx-1;
	u32 y2 = y1+dy-1;
	
	for(i=y1;i<=y2;i++)
		GLIB_PutLine4(x1, i, x2, i, cvalue, eSel);
}

void GLIB_FillPalRectangle(int nPosX1, int nPosY1, int nHSz, int nVSz, u32 uData)
{
	int i;
	u32 uPosX2 = nPosX1+nHSz-1;
	u32 uPosY2 = nPosY1+nVSz-1;
	
	for(i=nPosY1;i<=uPosY2;i++)
		GLIB_PutPalLine(nPosX1,i,uPosX2,i,uData);
}
// LCD display is flipped vertically
// But, think the algorithm by mathematics point.
//   3 I 2
//   4 I 1
//   --+--   <-8 octants  mathematical cordinate
//   5 I 8
//   6 I 7
void GLIB_PutLine2(int x1, int y1, int x2, int y2, u32 cvalue)
{

	int dx,dy,e;
	dx=x2-x1;
	dy=y2-y1;

	if(dx>=0)
	{
		if(dy >= 0) // dy>=0
		{
			if(dx>=dy) // 1/8 octant
			{
				e=dy-dx/2;
				while(x1<=x2)
				{
					GLIB_PutPixel2(x1,y1,cvalue);
					if(e>0){y1+=1;e-=dx;}
					x1+=1;
					e+=dy;
				}
			}
			else		// 2/8 octant
			{
				e=dx-dy/2;
				while(y1<=y2)
				{
					GLIB_PutPixel2(x1,y1,cvalue);
					if(e>0){x1+=1;e-=dy;}
					y1+=1;
					e+=dx;
				}
			}
		}
		else		   // dy<0
		{
			dy=-dy;   // dy=abs(dy)

			if(dx>=dy) // 8/8 octant
			{
				e=dy-dx/2;
				while(x1<=x2)
				{
					GLIB_PutPixel2(x1,y1,cvalue);
					if(e>0){y1-=1;e-=dx;}
					x1+=1;
					e+=dy;
				}
			}
			else		// 7/8 octant
			{
				e=dx-dy/2;
				while(y1>=y2)
				{
					GLIB_PutPixel2(x1,y1,cvalue);
					if(e>0){x1+=1;e-=dy;}
					y1-=1;
					e+=dx;
				}
			}
		}
	}
	else //dx<0
	{
		dx=-dx;		//dx=abs(dx)
		if(dy >= 0) // dy>=0
		{
			if(dx>=dy) // 4/8 octant
			{
				e=dy-dx/2;
				while(x1>=x2)
				{
					GLIB_PutPixel2(x1,y1,cvalue);
					if(e>0){y1+=1;e-=dx;}
					x1-=1;
					e+=dy;
				}
			}
			else		// 3/8 octant
			{
				e=dx-dy/2;
				while(y1<=y2)
				{
					GLIB_PutPixel2(x1,y1,cvalue);
					if(e>0){x1-=1;e-=dy;}
					y1+=1;
					e+=dx;
				}
			}
		}
		else		   // dy<0
		{
			dy=-dy;   // dy=abs(dy)

			if(dx>=dy) // 5/8 octant
			{
				e=dy-dx/2;

?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
91丨国产丨九色丨pron| 老司机精品视频在线| 国产在线视频不卡二| 在线成人高清不卡| 一区在线观看视频| 成人黄色小视频| 国产精品理论在线观看| 在线免费观看日韩欧美| 最近中文字幕一区二区三区| 91小视频在线| 一个色综合av| 91精选在线观看| 免费在线观看日韩欧美| 精品人在线二区三区| 视频一区中文字幕国产| 欧美一区中文字幕| 韩国视频一区二区| 国产精品午夜在线| 97精品国产97久久久久久久久久久久| 亚洲精品欧美专区| 91麻豆精品国产91久久久久久久久| 日本亚洲天堂网| 久久久久久久久久看片| 99久久精品免费看国产免费软件| 国产精品色眯眯| 欧洲生活片亚洲生活在线观看| 亚洲大型综合色站| 欧美一区二区三区四区五区| 国产乱码精品一区二区三区五月婷| 欧美国产精品劲爆| 日本国产一区二区| 男人的天堂亚洲一区| 久久久久久免费| 日本韩国一区二区三区| 久久精品99国产国产精| 2023国产精品视频| 色欧美片视频在线观看| 蜜臀av国产精品久久久久| 欧美一区二区在线看| 国产凹凸在线观看一区二区| 一区二区不卡在线播放| 欧美中文一区二区三区| 韩国一区二区三区| 亚洲综合小说图片| 欧美成人aa大片| 色播五月激情综合网| 久久99精品久久久久久国产越南| 亚洲丝袜美腿综合| 日韩欧美在线1卡| 91色视频在线| 国精品**一区二区三区在线蜜桃| 久久精品网站免费观看| 欧美日韩一级片网站| 成人中文字幕在线| |精品福利一区二区三区| 91精品久久久久久久91蜜桃| 成人精品gif动图一区| 日韩福利电影在线观看| 亚洲精品福利视频网站| 欧美精品一区二区高清在线观看 | 欧美一区二区美女| 91久久精品日日躁夜夜躁欧美| 粉嫩蜜臀av国产精品网站| 国产一区二区三区蝌蚪| 国模大尺度一区二区三区| 久久99久久久久久久久久久| 日本成人在线电影网| 性做久久久久久免费观看 | 欧美一区二区三区免费大片| 欧美日韩和欧美的一区二区| 欧美日韩一区二区在线视频| 欧美性猛片xxxx免费看久爱| 欧美视频一区在线| 精品视频1区2区3区| 欧美日韩成人综合天天影院| 欧美亚洲愉拍一区二区| 欧美三区免费完整视频在线观看| 欧美三片在线视频观看| 欧美日韩精品一区二区三区蜜桃| 欧美日韩亚洲综合在线| 欧美巨大另类极品videosbest | 亚洲婷婷国产精品电影人久久| 欧美韩国日本不卡| 中文字幕一区二| 一区二区在线观看av| 一区二区三区欧美在线观看| 亚洲专区一二三| 亚洲成人手机在线| 美女国产一区二区| 国产一区二区精品久久91| 高潮精品一区videoshd| 9i在线看片成人免费| 色婷婷久久久综合中文字幕| 欧美视频一区二区三区在线观看 | 91在线国内视频| 91久久免费观看| 69av一区二区三区| 久久这里只有精品视频网| 欧美经典一区二区三区| 亚洲视频电影在线| 日韩高清中文字幕一区| 国产剧情一区二区| 一本久久a久久精品亚洲| 欧美人与z0zoxxxx视频| 久久久久久久久一| 一区二区欧美视频| 美女免费视频一区二区| 成人黄色777网| 欧美日本在线看| 国产亚洲精品中文字幕| 亚洲综合一二区| 国产一区免费电影| 91久久国产综合久久| 欧美va亚洲va| 亚洲人妖av一区二区| 全国精品久久少妇| av激情成人网| 日韩精品专区在线影院观看| 国产精品成人免费精品自在线观看| 亚洲成av人片在www色猫咪| 国产精品中文欧美| 日本韩国欧美在线| 欧美精品一区二区不卡| 亚洲国产综合色| 成人av在线观| 精品国产一区二区三区忘忧草 | 国产91精品露脸国语对白| 欧美日韩国产综合一区二区| 欧美激情一区在线观看| 人禽交欧美网站| 欧美体内she精高潮| 中文字幕av在线一区二区三区| 日产欧产美韩系列久久99| 99国内精品久久| 久久久久国色av免费看影院| 首页欧美精品中文字幕| 91丨九色丨黑人外教| 亚洲欧美另类小说| 国产一区激情在线| 欧美一区二区精品在线| 伊人婷婷欧美激情| 成人免费视频app| 欧美成人精品1314www| 亚洲福利国产精品| 91免费看视频| 久久久99久久精品欧美| 久久精品国产亚洲高清剧情介绍| 91高清视频在线| 亚洲美女淫视频| 99久久免费视频.com| 欧美激情一区二区| 国产成人在线视频免费播放| 久久影视一区二区| 美女www一区二区| 欧美一卡二卡三卡| 日韩激情在线观看| 欧美精品日韩精品| 偷拍日韩校园综合在线| 欧美视频一二三区| 亚洲成人免费观看| 欧美日韩国产三级| 午夜视频一区二区| 777a∨成人精品桃花网| 亚洲成在线观看| 欧美中文字幕不卡| 亚洲h在线观看| 91精品国产全国免费观看 | 久久99九九99精品| 欧美一区二区二区| 久久精品99国产精品日本| 精品国产露脸精彩对白| 蜜桃一区二区三区在线观看| 日韩一级精品视频在线观看| 久久99精品久久久久久动态图 | 蜜桃一区二区三区在线观看| 日韩精品一区二区三区在线观看| 精品写真视频在线观看| 国产午夜精品一区二区三区视频| 粉嫩一区二区三区性色av| 国产精品久久久久久久岛一牛影视| 99久久精品国产精品久久 | 尤物视频一区二区| 欧美日韩高清一区二区| 奇米精品一区二区三区在线观看| 精品欧美乱码久久久久久| 国产98色在线|日韩| 亚洲情趣在线观看| 欧美日韩亚洲不卡| av激情亚洲男人天堂| 一区二区三区在线免费| 欧美一区二区在线免费播放| 国模娜娜一区二区三区| 成人欧美一区二区三区白人| 欧美专区亚洲专区| 久久成人精品无人区| 中文字幕一区二区5566日韩| 欧美精品乱码久久久久久| 国产一区二区在线影院| 亚洲精选一二三| 精品久久久久一区|