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

? 歡迎來到蟲蟲下載站! | ?? 資源下載 ?? 資源專輯 ?? 關(guān)于我們
? 蟲蟲下載站

?? resize.c

?? 是一個手機功能的模擬程序
?? C
字號:
//===========================================================================
//	RESIZE.C
//	This file contains RESIZE functons used by the JPEG library but not exposed
//	to the outside world.
//---------------------------------------------------------------------------
//  Copyright (c) 2003 Epson Research and Development, Inc.
//  All Rights Reserved.
//===========================================================================
//Test

//-----------------------------------------------------------------------------
// Include Files
//-----------------------------------------------------------------------------
#include "JPEGComm.h"
#include "hal.h"

//-----------------------------------------------------------------------------
// Local Function Prototypes
//-----------------------------------------------------------------------------
static Boolean prvSetResizePos( UInt16 pos, UInt16 index1, UInt16 index2, int bits );

//-----------------------------------------------------------------------------
//	prvGetResize - retrieves resize enable status
//
//	Input:	n/a
//
//	Output:	TRUE means Resize enabled
//			FALSE means Resize disabled
//
//-----------------------------------------------------------------------------
Boolean prvGetResize( void )
{
	UInt8 resize = halReadReg8( REG0202_RESIZE );
	//76543210b
	//|||||||+--Resize Enable
	//||||||+---Resize Register Update VSYNC Enable
	//|||||+----Resize Independent Horizontal/Vertical Scale Enable
	//+++++-----n/a
	Boolean fEnable = (resize & 1) ? TRUE : FALSE;
	return ( fEnable );
}

//-----------------------------------------------------------------------------
//	prvSetResize - sets resize enable status
//
//	Input:	fEnable		TRUE means Resize logic enabled
//						FALSE means Resize logic disabled
//			pJpegInfo	pointer to JPEGINFO object
//
//	Output:	TRUE means success
//			FALSE means not success
//
//-----------------------------------------------------------------------------
Boolean prvSetResize( Boolean fEnable, JPEGINFO* pJpegInfo )
{
	UInt8	resize = halReadReg8( REG0202_RESIZE );
	//76543210b
	//|||||||+--Resize Enable
	//||||||+---Resize Register Update VSYNC Enable
	//|||||+----Resize Independent Horizontal/Vertical Scale Enable
	//+++++-----n/a
	resize &= (~1);
	resize |= fEnable ? 1 : 0;
	halWriteReg8( REG0202_RESIZE, resize );
	return TRUE;
}

//-----------------------------------------------------------------------------
//	prvGetResizeHScaleRate - retrieves horizontal resize Scale rate
//
//	Input:	n/a
//
//	Output:	ScaleRate
//
//-----------------------------------------------------------------------------
UInt8 prvGetResizeHScaleRate( void )
{
	UInt8 scaleRate = 1;
	UInt8 scaleMode = prvGetResizeScaleMode();
	switch( scaleMode )
	{
	case 1:
	case 2:
		scaleRate = halReadReg8( REG020C_RESIZEHSCALE );
		break;

	default:
		break;
	}
	return ( scaleRate );
}

//-----------------------------------------------------------------------------
//	prvSetResizeHScaleRate - sets resizer Scale mode
//
//	Input:	scaleRate
//			pJpegInfo			pointer to JPEGINFO object
//
//	Output:	TRUE means success
//			FALSE means not success
//
//-----------------------------------------------------------------------------
Boolean prvSetResizeHScaleRate( UInt8 scaleRate, JPEGINFO* pJpegInfo )
{
	Boolean fSuccess = (scaleRate <= 32) ? TRUE : FALSE;
	if ( !fSuccess )
		jpegSetLastError( JPEG_ERR_INVALID_PARAM );
	else
		halWriteReg8( REG020C_RESIZEHSCALE, scaleRate );

	return ( fSuccess );
}

//-----------------------------------------------------------------------------
//	prvGetResizeIndScaleRate - retrieves status of Independent horizontal
//								/vertical Scale enable
//
//	Input:	n/a
//
//	Output:	TRUE means horizontal and vertical Scale is independent
//			FALSE means horizontal and vertical Scale is the same
//
//-----------------------------------------------------------------------------
Boolean prvGetResizeIndScaleRate( void )
{
	UInt8 globalResize = halReadReg8( REG0202_RESIZE );
	Boolean fEnable = (globalResize & 0x04) ? TRUE : FALSE;
	return ( fEnable );
}

//-----------------------------------------------------------------------------
//	prvSetResizeIndScaleRate - Sets status of Independent horizontal
//								/vertical Scale enable
//
//	Input:	fEnable		TRUE means horizontal and vertical Scale is independent
//						FALSE means horizontal and vertical Scale is the same
//			pJpegInfo	pointer to JPEGINFO object
//
//	Output:	TRUE means success
//			FALSE means not success
//
//-----------------------------------------------------------------------------
Boolean prvSetResizeIndScaleRate( Boolean fEnable, JPEGINFO* pJpegInfo )
{
	UInt8 globalResize = halReadReg8( REG0202_RESIZE );
	globalResize &= ~0x04;
	globalResize |= fEnable ? 0x04 : 0x00;
	halWriteReg8( REG0202_RESIZE, globalResize );
	return TRUE;
}

//-----------------------------------------------------------------------------
//	prvGetResizeScaleMode - Retrieves Capture Scale Mode as degree of 
//								reduction
//
//	Input:	n/a
//
//	Output:	View resize Scale mode
//
//-----------------------------------------------------------------------------
UInt8 prvGetResizeScaleMode( void )
{
	return ( halReadReg8(REG0210_RESIZEOP) & 0x3 );
}

//-----------------------------------------------------------------------------
//	prvSetResizeScaleMode - sets Resize Scale Mode
//
//	Input:	scaleMode	resize Scale mode
//			pJpegInfo	pointer to JPEGINFO object
//
//	Output:	TRUE means success
//			FALSE means not success
//
//-----------------------------------------------------------------------------
Boolean prvSetResizeScaleMode( UInt8 scaleMode, JPEGINFO* pJpegInfo )
{
	Boolean fSuccess = (scaleMode <= 3) ? TRUE : FALSE;
	if ( !fSuccess )
		jpegSetLastError( JPEG_ERR_INVALID_PARAM );
	else
		halWriteReg8( REG0210_RESIZEOP, (UInt8)((halReadReg8(REG0210_RESIZEOP) & 0xFC) | scaleMode) );
	return ( fSuccess );
}

//-----------------------------------------------------------------------------
//	prvResetResize - resets software for resize
//
//	Input:	fEnable		as software reset enable or not enable
//			pJpegInfo	pointer to JPEGINFO object
//
//	Output:	TRUE means success
//			FALSE means not success
//
//-----------------------------------------------------------------------------
Boolean prvResetResize( Boolean fEnable, JPEGINFO* pJpegInfo )
{
	UInt8	resize = halReadReg8( REG0202_RESIZE );
	//76543210b
	//|||||||+--Resize Enable
	//||||||+---Resize Register Update VSYNC Enable
	//|||||+----Resize Independent Horizontal/Vertical Scale Enable
	//+++++-----n/a
	resize		&= (~0x80);
	resize		|= fEnable ? 0x80 : 0x00;
	halWriteReg8( REG0202_RESIZE, resize );
	return TRUE;
}

//-----------------------------------------------------------------------------
//	prvGetResizeVScaleRate - retrieves vertical resize Scale mode
//
//	Input:	n/a
//
//	Output:	vertical resize Scale rate
//
//-----------------------------------------------------------------------------
UInt8 prvGetResizeVScaleRate( void )
{
	// Assume no Scale rate
	UInt8 scaleRate = 1;
	UInt8 scaleMode = prvGetResizeScaleMode();
	switch( scaleMode )
	{
	case 1:
	case 2:
		{
			Boolean fIndScaleRate = prvGetResizeIndScaleRate();
			if ( fIndScaleRate )
			{
				scaleRate = halReadReg8( REG020E_RESIZEVSCALE );
			}
			else
			{
				scaleRate = prvGetResizeHScaleRate();
			}
		}
		break;

	default:
		break;
	}
	return ( scaleRate );
}

//-----------------------------------------------------------------------------
//	prvSetResizeVScaleRate - sets view resizer Scale rate
//
//	Input:	scaleRate
//			pJpegInfo			pointer to JPEGINFO object
//
//	Output:	TRUE means success
//			FALSE means not success
//
//-----------------------------------------------------------------------------
Boolean prvSetResizeVScaleRate( UInt8 scaleRate, JPEGINFO* pJpegInfo )
{
	Boolean fSuccess = (scaleRate <= 32) ? TRUE : FALSE;
	if ( !fSuccess )
		jpegSetLastError( JPEG_ERR_INVALID_PARAM );
	else
		halWriteReg8( REG020E_RESIZEVSCALE, scaleRate );

	return ( fSuccess );
}

//-----------------------------------------------------------------------------
//	prvGetResizeRect - acquires rectangle parameters
//
//	Input:	pXStart
//			pYStart
//			pXEnd
//			pYEnd
//
//	Output:	n/a
//
//-----------------------------------------------------------------------------
void prvGetResizeRect( UInt16* pXStart, UInt16* pYStart, UInt16* pXEnd, UInt16* pYEnd )
{
	*pXStart	= prvHalReadReg16( REG0204_RESIZESX0, REG0205_RESIZESX1 );
	*pYStart	= prvHalReadReg16( REG0206_RESIZESY0, REG0207_RESIZESY1 );
	*pXEnd		= prvHalReadReg16( REG0208_RESIZEEX0, REG0209_RESIZEEX1 );
	*pYEnd		= prvHalReadReg16( REG020A_RESIZEEY0, REG020B_RESIZEEY1 );
}

//-----------------------------------------------------------------------------
//	prvSetResizeRect - acquires rectangle parameters
//
//	Input:	XStart
//			YStart
//			XEnd
//			YEnd
//			pJpegInfo		pointer to JPEGINFO object
//
//	Output:	TRUE means success
//			FALSE means not success
//
//-----------------------------------------------------------------------------
Boolean prvSetResizeRect( UInt16 XStart, UInt16 YStart, UInt16 XEnd, UInt16 YEnd  )
{
	Boolean fSuccess = prvSetResizePos( XStart, REG0204_RESIZESX0, REG0205_RESIZESX1, 10 );
	if ( fSuccess )
	{
		fSuccess = prvSetResizePos( YStart, REG0206_RESIZESY0, REG0207_RESIZESY1, 9 );
		if ( fSuccess )
		{
			fSuccess = prvSetResizePos( XEnd, REG0208_RESIZEEX0, REG0209_RESIZEEX1, 10 );
			if ( fSuccess )
			{
				fSuccess = prvSetResizePos( YEnd, REG020A_RESIZEEY0, REG020B_RESIZEEY1, 9 );
			}
		}
	}
	return ( fSuccess );
}

//-----------------------------------------------------------------------------
//	prvSetResizePos - sets resize register
//
//	Input:	pos				start x position for resize
//			index1
//			index2
//			pJpegInfo		pointer to JPEGINFO object
//			bits
//
//	Output:	TRUE means success
//			FALSE means not success
//
//-----------------------------------------------------------------------------
Boolean prvSetResizePos( UInt16 pos, UInt16 index1, UInt16 index2, int bits )
{
	UInt16	max			= bits==9 ? 0x1FF : 0x3FF;
	Boolean fSuccess	= (pos <= max) ? TRUE : FALSE;
	if ( !fSuccess )
	{
		jpegSetLastError( JPEG_ERR_DIM_RESTRICT );
	}
	else
	{
		UInt8 lsb = (UInt8)(pos & 0x00FF);
		UInt8 msb = (UInt8)(pos >> 8);
		halWriteReg8( index1, lsb );
		halWriteReg8( index2, msb );
	}
	return ( fSuccess );
}

?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
久久99国产精品久久99| 欧美性xxxxxxxx| 99精品国产99久久久久久白柏| 色天天综合色天天久久| 欧美va亚洲va国产综合| 亚洲柠檬福利资源导航| 国产一区999| 欧美一级欧美三级在线观看| 国产精品美女久久久久久2018| 日本不卡123| 91久久香蕉国产日韩欧美9色| 久久免费美女视频| 日本成人在线网站| 欧美性生交片4| ...av二区三区久久精品| 韩国精品主播一区二区在线观看 | 国产网红主播福利一区二区| 亚洲国产日韩一区二区| 99精品视频在线播放观看| 亚洲精品一区二区三区香蕉| 亚洲午夜在线电影| 97精品视频在线观看自产线路二| 久久尤物电影视频在线观看| 美女视频黄 久久| 欧美羞羞免费网站| 一区二区在线电影| 色婷婷精品久久二区二区蜜臂av| 国产欧美综合在线观看第十页| 国内精品写真在线观看| 欧美mv日韩mv| 日韩一二三区视频| 久久天堂av综合合色蜜桃网| 亚洲午夜一区二区| 亚洲美女电影在线| 欧美一区午夜精品| 亚洲一区二区三区中文字幕在线| 成人一区二区三区视频在线观看| 久久夜色精品国产噜噜av| 美女视频网站久久| www一区二区| 国产成人亚洲精品青草天美| 国产三级一区二区三区| 成人一区二区三区在线观看| 国产调教视频一区| 97se亚洲国产综合自在线观| 中文字幕在线播放不卡一区| 色综合天天狠狠| 亚洲午夜激情av| 欧美区视频在线观看| 免费观看日韩av| 精品国产91洋老外米糕| 粉嫩av一区二区三区粉嫩| 中文字幕在线一区| 欧美在线一二三| 青椒成人免费视频| 久久综合一区二区| jlzzjlzz欧美大全| 亚洲国产成人av网| 日韩精品中文字幕一区二区三区| 国产麻豆精品在线| 亚洲人成影院在线观看| 欧美男同性恋视频网站| 精品亚洲欧美一区| 一区在线观看免费| 欧美精品久久久久久久多人混战 | 日韩欧美一区二区久久婷婷| 韩国在线一区二区| 一区二区三区四区在线免费观看| 在线免费观看日本一区| 蜜桃免费网站一区二区三区| 国产网站一区二区三区| 欧美日韩中文精品| 国产成人三级在线观看| 亚洲成人先锋电影| 久久久久国产精品麻豆| 欧美亚洲国产bt| 91在线视频播放| 麻豆91在线观看| 一区二区理论电影在线观看| 日韩手机在线导航| 在线视频你懂得一区二区三区| 免费视频最近日韩| 亚洲综合免费观看高清完整版| 精品剧情v国产在线观看在线| 91浏览器在线视频| 国产一区二区三区电影在线观看| 亚洲猫色日本管| 国产亚洲短视频| 69堂成人精品免费视频| 色婷婷激情久久| 丁香婷婷综合色啪| 久久不见久久见免费视频1| 亚洲日本成人在线观看| 久久久久国产精品厨房| 日韩欧美一区在线| 欧美日韩日日骚| av在线一区二区| 国产精品一区二区在线观看不卡| 午夜激情综合网| 一级女性全黄久久生活片免费| 久久久99久久精品欧美| 日韩小视频在线观看专区| 欧美性受xxxx| 在线观看www91| 91麻豆免费在线观看| 国产不卡高清在线观看视频| 久久99精品国产麻豆不卡| 天天影视涩香欲综合网| 亚洲免费观看高清在线观看| 国产精品视频在线看| 久久无码av三级| 2023国产精华国产精品| 欧美一级一区二区| 日韩小视频在线观看专区| 日韩手机在线导航| 欧美一区二区三区的| 欧美电影影音先锋| 欧美一区二区三区在线观看视频| 精品视频在线免费看| 欧美色图在线观看| 欧美片在线播放| 欧美一级专区免费大片| 精品少妇一区二区三区日产乱码| 欧美一级欧美一级在线播放| 欧美一级夜夜爽| 2021中文字幕一区亚洲| 欧美国产激情二区三区| ●精品国产综合乱码久久久久| 国产精品情趣视频| 亚洲人成影院在线观看| 亚洲午夜国产一区99re久久| 视频一区二区国产| 麻豆国产欧美日韩综合精品二区| 蜜桃av一区二区| 国产精品91xxx| 色综合久久天天| 欧美人与性动xxxx| 久久伊人蜜桃av一区二区| 精品福利av导航| 亚洲国产成人一区二区三区| 亚洲日本丝袜连裤袜办公室| 亚洲地区一二三色| 久久99精品国产.久久久久| 粉嫩av一区二区三区粉嫩| 在线观看成人小视频| 欧美一区二区二区| 国产精品传媒入口麻豆| 亚洲国产一区二区在线播放| 久久国内精品自在自线400部| 国产毛片精品视频| 欧美亚洲尤物久久| 精品国产凹凸成av人导航| 亚洲色图20p| 麻豆成人综合网| 99re这里只有精品视频首页| 欧美丰满高潮xxxx喷水动漫| 国产午夜精品久久| 亚洲成人中文在线| 国产成人免费视频网站高清观看视频 | 亚洲欧美一区二区三区极速播放| 亚洲444eee在线观看| 国产成人免费在线| 91麻豆精品国产91久久久久| 国产人伦精品一区二区| 亚欧色一区w666天堂| 国产成人av资源| 777a∨成人精品桃花网| 一区二区中文字幕在线| 精品一区二区三区在线观看| 一本色道亚洲精品aⅴ| 欧美mv日韩mv国产| 亚洲1区2区3区4区| 91免费看视频| 国产三级欧美三级日产三级99| 亚洲成人av一区二区三区| 成人免费电影视频| 精品国产123| 毛片av一区二区| 欧美三级韩国三级日本一级| 亚洲国产成人私人影院tom| 精品一区二区免费在线观看| 欧美视频一区二区三区| 中文字幕一区二区不卡| 国产成人午夜精品5599| xf在线a精品一区二区视频网站| 日韩高清不卡一区二区| 欧美性色aⅴ视频一区日韩精品| 国产精品精品国产色婷婷| 国产精品资源在线观看| 日韩欧美国产综合| 日韩成人免费在线| 9191久久久久久久久久久| 一区二区三区在线播放| 99久久国产综合精品色伊| 国产精品白丝在线| av在线不卡观看免费观看| 欧美国产成人在线| 成人动漫视频在线| 中文字幕电影一区| 国产夫妻精品视频|