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

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

?? parse.c

?? 詳細介紹了一篇關于pci開發的接口芯片
?? C
?? 第 1 頁 / 共 2 頁
字號:

static int useage( CHAR *exefile )
{
	int i;

	printf( 	"\n"
				"Useage:  <file1> <file2> <file3> {options} \n"
				"         file1/2/3 must be in order.\n"
			  	"         file1 is nvram boot image file captured by autoexec.bat\n"
			  	"         file2 is desired boot nvram image file\n"
			  	"         file3 is control chip nvram image file (for IDs)\n"
			  	"         The following options may be in any order, preceded by \"\\\":\n\n"
			);

	for ( i = 0; options[i].optstr != NULL; i++ )
	{
		if ( options[i].description == NULL )  continue;
		if ( stricmp(options[i].description, "BREAK") == 0 )
		{
			printf( "For more options, " );
			if ( pcontinue() == ESC ) return 1;		// "press key..."
			continue;
		}
		printf( "%8s  %s\n", options[i].optstr, options[i].description );
	}

	strip( text, exefile );	// dummy if want to use later
	return 1;
}

static int errexit( CHAR *string )
{
	printf( string );
	printf( errstring );
	return FALSE;
}


static CHAR *strip( CHAR *string, CHAR *stripped )
/*  strip off leading "\" from path stuff so only base filename
	remains.

	Entry:	string - input string
			stripped - output string
	Return:	stripped (pointerto the stripped stuff)
*/
{
	int status;
	char name[MAXFILE], ext[MAXEXT];

	status = fnsplit( string, NULL, NULL, name, ext);
	strcpy( stripped, name );
	if ( status & EXTENSION ) 
		strcat( stripped, ext );	// ext includes the dot "."

	return text;
}


static void enverr( void )
{
	fprintf( stderr, ENVSTR );
	exit(1);
}


static void checkenv( void )
{
	CHAR *verp, *dqp, *mdp, *ptp, *clockp, *pclockp, *aclockp;

	if ( (verp = getenv("VERSION5920")) == NULL )  enverr();
	if ( (dqp = getenv("DQMODE")) == NULL )  enverr();
	if ( (mdp = getenv("MDMODE")) == NULL )  enverr();
	if ( (ptp = getenv("PTMODE")) == NULL )  enverr();
	if ( (clockp = getenv("CLOCK")) == NULL )  enverr();
	if ( (pclockp = getenv("CLOCK_RATE_P")) == NULL )  enverr();
	if ( (aclockp = getenv("CLOCK_RATE_A")) == NULL )  enverr();


	if ( stricmp("16", dqp) == 0 )  dqmode_32 = FALSE;
	else if ( stricmp("32", dqp) == 0 )  dqmode_32 = TRUE;
	else enverr();

	if ( stricmp("OUT", mdp) == 0 ) mdmode_in = FALSE;
	else if ( stricmp("IN", mdp) == 0 ) mdmode_in = TRUE;
	else enverr();

	if ( stricmp("PASSIVE", ptp) == 0 ) ptmode_active = FALSE;
	else if ( stricmp("ACTIVE", ptp) == 0 ) ptmode_active = TRUE;
	else enverr();

	if ( stricmp("SYNC", clockp) == 0 ) sync_clock = TRUE;
	else if ( stricmp("ASYNC", clockp) == 0 ) sync_clock = FALSE;
	else enverr();

	sscanf( pclockp, "%x", &clock_rate_pci );
	sscanf( aclockp, "%x", &clock_rate_addon );
	sscanf( verp, "%x", &version_uut );

}

static int cmdline_pin_defaults( void )
/*
	Set up mode based on request. Verify that we could change the 
	values.

	Entry:	dqmode32 TRUE if want 32-bit mode
			mdmode_in TRUE if want MD always inputs
			ptmode_active TRUE if want active mode
	Return:	TRUE if OK, else FALSE and errstring
*/
{
	int failed = FALSE;

	if ( dqmode_32 )
	{
		bclr_control_reg( CTRL_DQMODE );	// set 32-bit mode
		if ( addon_width_16() )
			failed = TRUE;
	}
	else
	{
		bset_control_reg( CTRL_DQMODE );	// set 16-bit mode
		if ( !addon_width_16() )
			failed = TRUE;
	}

	if ( failed )
	{
		strcat( errstring, "Unable to modify DQMODE.\n" );
		return FALSE;
	}


	if ( mdmode_in )
	{
		bset_control_reg( CTRL_MDMODE );	// set as MD as inputs
		if ( !( read_status_register() & STAT_MDMODE ) )
			failed = TRUE;
	}
	else
	{
		bclr_control_reg( CTRL_MDMODE );	// set as MD as outputs
		if ( read_status_register() & STAT_MDMODE )
			failed = TRUE;
	}
	if ( failed )
	{
		strcat( errstring, "Unable to modify MDMODE.\n" );
		return FALSE;
	}


	if ( ptmode_active )
	{
		bclr_control_reg( CTRL_PTMODE );		// set active mode
		if ( read_status_register() & STAT_PTMODE )
			failed = TRUE;
	}
	else
	{
		bset_control_reg( CTRL_PTMODE );		// set passive mode
		if ( !(read_status_register() & STAT_PTMODE ) )
			failed = TRUE;
	}
	if ( failed )
	{
		strcat( errstring, "Unable to modify PTMODE.\n" );
		return FALSE;
	}

	return TRUE;
}

static int c_break( void )
{
	exit_program = TRUE;
	return 1;				// keep going for now
}

static void	set_passthru_defaults( void )
{
	int region;

	for ( region = MIN_PT_REGION; region <= MAX_PT_REGION; region++ )
	{
		if ( region_is_sram(region) )
			region_set_waits( region, cmdline_sram_wait );
		else
			region_set_waits( region, cmdline_fifo_wait );

		region_set_prefetch_size( region, prefetch & 3 );
		if ( wfifo )
			region_write_fifo_enable( region );
		else
			region_write_fifo_disable( region );
	}

	if ( priority ) bset_control_reg( CTRL_PRIORITY );
	else bclr_control_reg( CTRL_PRIORITY );
}


static int ask( CHAR *str )
{
	str[0] = str[0];				// dummy to make compiler not warn
	cmdline_ask = FALSE; 
	return TRUE;
}

static int exiterr( CHAR *str )
{
	str[0] = str[0];				// dummy to make compiler not warn
	cmdline_exit_on_error = FALSE; 
	return TRUE;
}

static int wfifof( CHAR *str )
{
	str[0] = str[0];				// dummy to make compiler not warn
	wfifo = TRUE;
	return TRUE;
}


// NOTE - the optional IDs are not normally
// They were added as debug when the board was failing
static int vendorid( CHAR *str )
{
	cmdline_vendor  = TRUE;
    sscanf( &str[0], "%x", &chip_uut.vendor_id );
	return TRUE;
}

static int did( CHAR *str )
{
	cmdline_device  = TRUE;
    sscanf( &str[0], "%x", &chip_uut.device_id );
	return TRUE;
}

static int svid( CHAR *str )
{
	cmdline_subsys_vendor_id  = TRUE;
    sscanf( &str[0], "%x", &chip_uut.subsys_vendor_id );
	return TRUE;
}

static int sid( CHAR *str )
{
	cmdline_subsys_id  = TRUE;
	sscanf( &str[0], "%x", &chip_uut.subsys_id );
	return TRUE;
}

static int loop( CHAR *str )
{
    if  ( str[0] == '\0' ) 
      	cmdline_loop = 0x7FFF;
    else
     	sscanf( &str[0], "%x", &cmdline_loop );
	return TRUE;
}

static int onetest( CHAR *str )
{
	cmdline_ask = FALSE; 
    sscanf( &str[0], "%x", &cmdline_only );
	cmdline_only++;		// 0 is inactive, so test# is +1
	return TRUE;
}

static int pause( CHAR *str )
{		   
	str[0] = str[0];				// dummy to make compiler not warn
	cmdline_pause_on_error = FALSE; 
	return TRUE;
}

static int quiet( CHAR *str )
{
	str[0] = str[0];				// dummy to make compiler not warn
	cmdline_quiet = TRUE; 
	return TRUE;
}

static int prefetchf( CHAR *str )
{
    sscanf( &str[0], "%x", &prefetch);
	return TRUE;
}

static int skip( CHAR *str )
{
	int testnum;

    sscanf( &str[0], "%x", &testnum);	// skip a test
	skiptest[testnum] = TRUE;
	return TRUE;
}

static int type( CHAR *str )
{
    sscanf( &str[0], "%x", &cmdline_type );
	return TRUE;
}

static int priorityf( CHAR *str )
{
	str[0] = str[0];				// dummy to make compiler not warn
	priority = TRUE;
	return TRUE;
}

static int sramwait( CHAR *str )
{
    sscanf( &str[0], "%x", &cmdline_sram_wait);
	return TRUE;
}

static int fifowait( CHAR *str )
{
    sscanf( &str[0], "%x", &cmdline_fifo_wait);
	return TRUE;
}

static int usehpf( CHAR *str )
{
	str[0] = str[0];				// dummy to make compiler not warn
	use_hp = FALSE;
	return TRUE;
}

static int help( CHAR *str )
{
	str[0] = str[0];				// dummy to make compiler not warn
	return TRUE;
}


?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
亚洲黄色av一区| 国产精品久久久久久久久搜平片| 亚洲欧美激情在线| 成人高清免费观看| 国产精品久久久久久久久久久免费看 | 久久国产麻豆精品| 久久嫩草精品久久久久| 风间由美一区二区三区在线观看| 国产精品免费看片| 在线免费观看不卡av| 亚洲国产精品嫩草影院| 日韩一区二区中文字幕| 精品一区二区三区免费毛片爱| 国产日韩欧美制服另类| www.色综合.com| 亚洲精品ww久久久久久p站| 欧美日韩久久一区| 韩国精品一区二区| 亚洲人成在线播放网站岛国| 欧美群妇大交群中文字幕| 韩国视频一区二区| 亚洲精品中文字幕在线观看| 欧美一区二区成人6969| 国产91对白在线观看九色| 中文字幕欧美一| 欧美日韩国产一级片| 国产一区二区三区高清播放| 1000精品久久久久久久久| 777午夜精品视频在线播放| 国产一区二区三区在线观看精品| 亚洲日本欧美天堂| 欧美不卡视频一区| 91一区二区在线| 看片的网站亚洲| 一区二区视频在线| www久久久久| 日本韩国精品在线| 国产老妇另类xxxxx| 亚洲国产一区二区三区青草影视| 欧美videos大乳护士334| 91免费版在线| 国产一区二区h| 天堂在线亚洲视频| 中文字幕中文字幕一区二区| 欧美一区二区三区在线| av在线播放成人| 激情文学综合插| 日韩精品一二区| 一区二区三区色| 国产片一区二区| 日韩一区二区三区视频在线观看| 一本色道综合亚洲| 丁香婷婷综合激情五月色| 免费看欧美美女黄的网站| 一区二区三区美女| 国产精品成人一区二区艾草| 久久久久久电影| 欧美高清激情brazzers| 欧美主播一区二区三区美女| 成人黄色综合网站| 国产高清成人在线| 黑人巨大精品欧美黑白配亚洲| 日本最新不卡在线| 午夜私人影院久久久久| 一区二区三区精密机械公司| 中文字幕日韩一区二区| 国产精品嫩草影院com| 久久久久久久精| 久久色成人在线| 精品人在线二区三区| 欧美一区二区三区在线电影| 欧美一区二区三区啪啪| 欧美乱熟臀69xxxxxx| 欧美亚洲高清一区| 在线亚洲一区观看| 欧洲激情一区二区| 欧洲精品中文字幕| 欧美顶级少妇做爰| 欧美精品国产精品| 欧美一区二区啪啪| 日韩欧美第一区| 精品国产麻豆免费人成网站| 亚洲精品一区二区精华| 欧美精品一区二区三区在线播放 | 精品福利在线导航| 精品国产第一区二区三区观看体验 | 中文字幕二三区不卡| 国产欧美日韩精品a在线观看| 欧美精彩视频一区二区三区| 欧美高清在线视频| 中文字幕一区二区三| 亚洲人成在线观看一区二区| 亚洲一区二区三区三| 日韩和欧美一区二区| 麻豆91在线播放| 国产精品一二一区| 91一区二区在线| 欧美精品 日韩| 国产亚洲精品7777| 亚洲精品视频在线看| 午夜电影网一区| 激情小说亚洲一区| hitomi一区二区三区精品| 色久优优欧美色久优优| 91精品国产麻豆国产自产在线 | 国产不卡免费视频| 99久久免费国产| 欧美另类z0zxhd电影| 精品国一区二区三区| 中文字幕一区二区三区乱码在线| 亚洲最大成人网4388xx| 美国精品在线观看| 成人高清视频在线| 91精品国产91久久久久久一区二区 | 欧美精品自拍偷拍| 2020国产精品| 亚洲免费在线视频一区 二区| 五月天一区二区三区| 国产精品99久久久久久似苏梦涵 | 亚洲成人福利片| 精品一区二区影视| 色综合久久中文字幕| 欧美肥妇bbw| 中文字幕一区二区三区四区| 蜜臀久久99精品久久久久久9| 99久久婷婷国产综合精品| 欧美电影免费观看高清完整版在| 国产精品久久久久永久免费观看 | 亚洲国产精品一区二区久久| 久久99国产精品麻豆| 色婷婷激情久久| 久久久不卡网国产精品一区| 亚洲午夜激情网页| 波多野结衣一区二区三区 | 国产女同性恋一区二区| 午夜精品爽啪视频| 99久久国产综合精品麻豆| 欧美成人精品3d动漫h| 亚洲一区二区黄色| 99久久久无码国产精品| 久久精品夜色噜噜亚洲aⅴ| 日精品一区二区三区| 色综合色狠狠天天综合色| 久久精品亚洲麻豆av一区二区| 日韩成人一区二区| 欧美少妇性性性| ㊣最新国产の精品bt伙计久久| 国产在线精品不卡| 日韩免费性生活视频播放| 亚洲国产日日夜夜| 色综合婷婷久久| 中文字幕亚洲欧美在线不卡| 国产高清在线精品| 久久蜜臀精品av| 国产乱码字幕精品高清av| 欧美一级欧美三级在线观看| 亚洲高清免费观看高清完整版在线观看 | 日韩精品国产欧美| 欧美性猛片aaaaaaa做受| 亚洲美女屁股眼交| 成av人片一区二区| 国产免费观看久久| 国产成人亚洲综合a∨婷婷图片| 精品久久久久香蕉网| 久国产精品韩国三级视频| 欧美一区二区高清| 麻豆精品一区二区av白丝在线| 911精品国产一区二区在线| 性做久久久久久免费观看欧美| 欧美日韩中文字幕一区二区| 亚洲午夜久久久久久久久电影网| 91一区二区三区在线观看| 亚洲欧美一区二区三区孕妇| jiyouzz国产精品久久| 亚洲天堂成人在线观看| 一本色道a无线码一区v| 一区二区在线观看不卡| 欧美三区在线观看| 日日欢夜夜爽一区| 欧美白人最猛性xxxxx69交| 国产一区二区三区四区五区美女| 亚洲精品一区在线观看| 成人午夜电影久久影院| 国产精品国产三级国产aⅴ入口 | 欧美一区二区三区在线视频| 老司机免费视频一区二区三区| 精品第一国产综合精品aⅴ| 国产精品影音先锋| 欧美激情一区二区三区四区| av在线不卡免费看| 视频在线观看一区二区三区| 欧美大片一区二区| 国产伦精品一区二区三区视频青涩 | 亚洲国产精品av| 91丨porny丨中文| 亚洲国产欧美在线| 精品少妇一区二区三区| 成人app下载| 日韩精品午夜视频| 中文字幕精品—区二区四季|