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

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

?? skyeye_mach_cs89712.c

?? skyeye是一個可以模擬嵌入式硬件開發板的系統軟件
?? C
字號:
/*	skyeye_mach_cs89712.c - define machine cs89712 for skyeye	Copyright (C) 2003 Skyeye Develop Group	for help please send mail to <skyeye-developer@lists.gro.clinux.org>		This program is free software; you can redistribute it and/or modify	it under the terms of the GNU General Public License as published by	the Free Software Foundation; either version 2 of the License, or	(at your option) any later version.	This program is distributed in the hope that it will be useful,	but WITHOUT ANY WARRANTY; without even the implied warranty of	MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the	GNU General Public License for more details.	You should have received a copy of the GNU General Public License	along with this program; if not, write to the Free Software	Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307  USA  *//* * 3/24/2003 	init this file. * 		add machine cs89712's function. Most taken from original armio.c.  * 		include: cs89712_mach_init, cs89712_io_do_cycle * 		cs89712_io_read_word, cs89712_io_write_word *		Most taken from skyeye_mach_ep7312.c		 *		<trilok_soni@yahoo.co.in> * */#include "armdefs.h"#include <sys/types.h>#include <sys/stat.h>#include <fcntl.h>#include "clps7110.h"#include "ep7212.h"#include "cs89712.h"//zzc:2005-1-1#ifdef __CYGWIN__//chy 2005-07-28#include <time.h>//teawater add DBCT_TEST_SPEED 2005.10.04---------------------------------------/*struct timeval{	int tv_sec;	int tv_usec;};*///AJ2D--------------------------------------------------------------------------#endif/* 2007-01-18 added by Anthony Lee : for new uart device frame */#include "skyeye_uart.h"/*Internal IO Register*/typedef struct cs89712_io{	ARMword syscon;		/* System control */	ARMword sysflg;		/* System status flags */	ARMword intsr;		/* Interrupt status reg */	ARMword intmr;		/* Interrupt mask reg */	ARMword tcd[2];		/* Timer/counter data */	ARMword tcd_reload[2];	/* Last value written */	int tc_prescale;	ARMword uartdr;		/* Receive data register */	ARMword lcdcon;		/* LCD control */	ARMword lcd_limit;	/* 0xc0000000 <= LCD buffer < lcd_limit */} cs89712_io_t;static cs89712_io_t cs89712_io;#define io cs89712_iostatic voidcs89712_update_int (ARMul_State * state){	ARMword requests = io.intsr & io.intmr;	state->NfiqSig = (requests & 0x0001) ? LOW : HIGH;	state->NirqSig = (requests & 0xfffe) ? LOW : HIGH;}static voidcs89712_io_reset (ARMul_State * state){	io.syscon = 0;	io.sysflg = URXFE;	io.intmr = 0;	io.intsr = UTXINT;	/* always ready to transmit */	io.tcd[0] = 0xffff;	io.tcd[1] = 0xffff;	io.tcd_reload[0] = 0xffff;	io.tcd_reload[1] = 0xffff;	io.uartdr = 0;	io.lcdcon = 0;	io.lcd_limit = 0;}voidcs89712_io_do_cycle (ARMul_State * state){	int t;	for (t = 0; t < 2; t++) {		if (io.tcd[t] == 0) {			if (io.syscon & (t ? TC2M : TC1M)) {				io.tcd[t] = io.tcd_reload[t];			}			else {				io.tcd[t] = 0xffff;			}			io.intsr |= (t ? TC2OI : TC1OI);			cs89712_update_int (state);		}		else {			io.tcd[t]--;		}	}	if (!(io.intsr & URXINT)) {		/* 2007-01-18 modified by Anthony Lee : for new uart device frame */		struct timeval tv;		unsigned char buf;		tv.tv_sec = 0;		tv.tv_usec = 0;		if(skyeye_uart_read(-1, &buf, 1, &tv, NULL) > 0)		{			io.uartdr = (int) buf;			io.sysflg &= ~URXFE;			io.intsr |= URXINT;			cs89712_update_int (state);		}	}}ARMwordcs89712_io_read_byte (ARMul_State * state, ARMword addr){	/*printf("SKYEYE: cs89712_io_read_byte error\n"); */	skyeye_exit (-1);}ARMwordcs89712_io_read_halfword (ARMul_State * state, ARMword addr){	/*printf("SKYEYE: cs89712_io_read_halfword error\n"); */	skyeye_exit (-1);}ARMwordcs89712_io_read_word (ARMul_State * state, ARMword addr){	ARMword data = 0;	switch (addr - 0x80000000) {	case SYSCON:		data = io.syscon;		break;	case SYSFLG:		data = io.sysflg;		break;/*	case MEMCFG1: *	case MEMCFG2: *	case DRFPR */	case INTSR:		data = io.intsr;		break;	case INTMR:		data = io.intmr;		break;	case LCDCON:		data = io.lcdcon;		break;	case TC1D:		data = io.tcd[0];		break;	case TC2D:		data = io.tcd[1];		break;/*	case RTCDR: *	case RTCMR: *	case PMPCON : *	case CODR:*/	case UARTDR:		data = io.uartdr;		io.sysflg |= URXFE;		io.intsr &= ~URXINT;		cs89712_update_int (state);		break;/*	case UBRLCR:		*/	case SYNCIO:		/* if we return zero here, the battery voltage calculation		 *         results in a divide-by-zero that messes up the kernel */		data = 1;		break;/*	case PALLSW: *	case PALMSW:*/		/* write-only: */	case STFCLR:	case BLEOI:	case MCEOI:	case TEOI:	case TC1EOI:	case TC2EOI:	case RTCEOI:	case UMSEOI:	case COEOI:	case HALT:	case STDBY:		break;	default://chy 2003-07-11: sometime has fault, but linux can continue running  !!!!????		//SKYEYE_DBG("io_read_word(0x%08x) = 0x%08x\n", addr, data);		break;	}	return data;}voidcs89712_io_write_byte (ARMul_State * state, ARMword addr, ARMword data){	printf ("SKYEYE: cs89712_io_write_byte error\n");	skyeye_exit (-1);}voidcs89712_io_write_halfword (ARMul_State * state, ARMword addr, ARMword data){	printf ("SKYEYE: cs89712_io_write_halfword error\n");	skyeye_exit (-1);}voidcs89712_io_write_word (ARMul_State * state, ARMword addr, ARMword data){	ARMword tmp;	switch (addr - 0x80000000) {	case SYSCON:		tmp = io.syscon;		io.syscon = data;		/*if ((tmp & LCDEN) != (data & LCDEN)) {		   update_lcd(state);		   } */		break;	case SYSFLG:		break;	case INTSR:		break;	case INTMR:		io.intmr = data;		cs89712_update_int (state);		break;	case LCDCON:		tmp = io.lcdcon;		io.lcdcon = data;		if ((tmp & (VBUFSIZ | LINELEN | GSEN | GSMD)) !=		    (tmp & (VBUFSIZ | LINELEN | GSEN | GSMD))) {			//chy 2005-01-07 no use now			/* update_lcd(state); */		}		break;	case TC1D:		io.tcd[0] = io.tcd_reload[0] = data & 0xffff;		SKYEYE_DBG ("TC1D 0x%x\n", data & 0xffff);		break;	case TC2D:		io.tcd[1] = io.tcd_reload[1] = data & 0xffff;		SKYEYE_DBG ("TC2D 0x%x\n", data & 0xffff);		break;	case UARTDR:		/* The UART writes chars to console */		{			char c = data;			/* 2007-01-18 modified by Anthony Lee : for new uart device frame */			skyeye_uart_write(-1, &c, 1, NULL);		}		break;/*	case BLEOI: printf("BLEOI\n"); break;	case MCEOI: printf("MCEOI\n"); break;	case TEOI: printf("TEOI\n"); break;*/	case TC1EOI:		io.intsr &= ~TC1OI;		cs89712_update_int (state);		SKYEYE_DBG ("TC1EOI\n");		break;	case TC2EOI:		io.intsr &= ~TC2OI;		cs89712_update_int (state);		SKYEYE_DBG ("TC2EOI\n");		break;		//case RTCEOI: printf("RTCEOI\n"); break;		//case UMSEOI: printf("UMSEOI\n"); break;		//case COEOI: printf("COEOI\n"); break;	case 0x2000:		/* Not a real register, for debugging only: */		SKYEYE_DBG ("io_write_word debug: 0x%08lx\n", data);		break;	default:		//chy 2003-07-11: sometime has fault, but linux can continue running  !!!!????		//printf("unknown io addr, io_write_word(0x%08x, 0x%08x), pc %x \n", addr, data,state->Reg[15]);		break;	}}voidcs89712_mach_init (ARMul_State * state, machine_config_t * this_mach){	state->abort_model = 2;	ARMul_SelectProcessor (state, ARM_v4_Prop);	//chy 2004-05-09, set lateabtSig	state->lateabtSig = HIGH;	state->Reg[1] = 107;	//for cdb89712 arch id	this_mach->mach_io_do_cycle = cs89712_io_do_cycle;	this_mach->mach_io_reset = cs89712_io_reset;	this_mach->mach_io_read_byte = cs89712_io_read_byte;	this_mach->mach_io_write_byte = cs89712_io_write_byte;	this_mach->mach_io_read_halfword = cs89712_io_read_halfword;	this_mach->mach_io_write_halfword = cs89712_io_write_halfword;	this_mach->mach_io_read_word = cs89712_io_read_word;	this_mach->mach_io_write_word = cs89712_io_write_word;	this_mach->mach_update_int = cs89712_update_int;}

?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
色婷婷综合久色| 国产美女精品人人做人人爽| 亚洲欧美色综合| 国产精品电影一区二区| 中文在线免费一区三区高中清不卡| 亚洲精品一区二区三区蜜桃下载| 欧美一三区三区四区免费在线看| 日韩一区二区在线观看视频| 精品精品欲导航| 久久久久亚洲蜜桃| 国产精品国产a| 亚洲人成影院在线观看| 亚洲va天堂va国产va久| 青青国产91久久久久久| 国产麻豆精品theporn| 粉嫩aⅴ一区二区三区四区五区| 国产91露脸合集magnet| 97精品久久久午夜一区二区三区| 91国产丝袜在线播放| 欧美一级欧美三级在线观看| 久久久精品天堂| 亚洲精品久久嫩草网站秘色| 日韩精品成人一区二区三区| 久久99国产乱子伦精品免费| 粉嫩av一区二区三区在线播放 | 在线观看91视频| 欧美群妇大交群的观看方式| 精品少妇一区二区三区| 中文字幕一区二区在线播放| 亚洲国产毛片aaaaa无费看| 麻豆精品视频在线| 91丝袜国产在线播放| 欧美电影在哪看比较好| 国产日韩欧美精品电影三级在线| 亚洲欧美一区二区视频| 日韩av不卡在线观看| 成人免费观看视频| 欧美日韩精品一区二区三区蜜桃| 日韩精品在线网站| 亚洲精品视频自拍| 精品一区二区日韩| 一本久久a久久免费精品不卡| 7777精品伊人久久久大香线蕉超级流畅 | 麻豆精品视频在线| 激情成人综合网| 91尤物视频在线观看| 91精品国产一区二区三区| 欧美激情综合在线| 另类小说一区二区三区| 日本高清成人免费播放| 久久久九九九九| 日韩电影在线观看一区| 91一区二区三区在线观看| 精品粉嫩aⅴ一区二区三区四区 | 亚洲丰满少妇videoshd| 成人免费福利片| 欧美成人免费网站| 日韩中文字幕一区二区三区| 色婷婷精品大在线视频| 欧美国产精品专区| 蜜桃av一区二区在线观看| 在线观看一区日韩| 国产精品视频看| 国产精品综合一区二区三区| 欧美一区二区三区视频在线 | 国产成人在线视频播放| 日韩视频一区二区在线观看| 午夜电影一区二区| 欧美日韩在线播放| 亚洲国产毛片aaaaa无费看| 91丨porny丨户外露出| 国产精品欧美极品| av在线综合网| 中文字幕一区二区三区不卡在线| 国产成人亚洲综合a∨猫咪| 久久美女艺术照精彩视频福利播放| 日本91福利区| 日韩久久精品一区| 久久精品99久久久| 久久亚洲综合色一区二区三区 | 99久久久久久99| 欧美激情中文字幕| 99久久精品99国产精品| 亚洲乱码国产乱码精品精98午夜 | 午夜电影久久久| 91精品国产一区二区三区蜜臀| 蜜桃传媒麻豆第一区在线观看| 日韩一区二区不卡| 国产精品一卡二| 亚洲欧美综合在线精品| 日本道精品一区二区三区| 亚洲国产欧美在线| 日韩欧美在线123| 国产一区二区网址| 国产精品乱码一区二三区小蝌蚪| bt欧美亚洲午夜电影天堂| 一区二区视频在线看| 欧美老人xxxx18| 麻豆精品视频在线观看免费| 中文字幕免费一区| 91福利在线观看| 裸体歌舞表演一区二区| 久久久国产精品午夜一区ai换脸| 成人精品一区二区三区四区| 亚洲图片欧美色图| 26uuu亚洲| 在线观看成人小视频| 激情文学综合丁香| 中文字幕一区二区三区蜜月| 欧美高清视频不卡网| 国产成人欧美日韩在线电影| 亚洲综合免费观看高清完整版在线| 欧美伦理影视网| 国产成人免费视频精品含羞草妖精| 亚洲欧美日韩小说| www一区二区| 欧美日韩综合一区| 高清国产一区二区三区| 丝袜美腿亚洲一区| 国产精品激情偷乱一区二区∴| 欧美一区午夜精品| 91免费精品国自产拍在线不卡 | 国产v日产∨综合v精品视频| 亚洲图片有声小说| 中文字幕日本不卡| 日韩精品在线一区二区| 欧美午夜宅男影院| 高清不卡一二三区| 久久精品国产77777蜜臀| 亚洲aaa精品| 亚洲免费视频中文字幕| 久久婷婷国产综合精品青草| 欧美人狂配大交3d怪物一区| 一本一道波多野结衣一区二区 | 91久久国产最好的精华液| 国产原创一区二区三区| 日韩vs国产vs欧美| 亚洲已满18点击进入久久| 国产精品私房写真福利视频| 日韩美女在线视频| 91精品国产美女浴室洗澡无遮挡| 色综合欧美在线视频区| av在线不卡免费看| 国产+成+人+亚洲欧洲自线| 国产麻豆精品在线| 国产精品亚洲午夜一区二区三区 | 国产日韩欧美a| 91麻豆.com| 成年人网站91| www.欧美日韩| www.日韩在线| 9i在线看片成人免费| 国产91精品欧美| 成人国产亚洲欧美成人综合网| 国产美女视频一区| 国产麻豆91精品| 国产激情91久久精品导航| 国产一区二区视频在线| 国产成人鲁色资源国产91色综| 国产精品亚洲专一区二区三区 | 久久婷婷色综合| 91福利国产成人精品照片| 国产一区91精品张津瑜| 国产成人一级电影| 91小视频在线| 欧美色区777第一页| 制服视频三区第一页精品| 欧美一区二区成人6969| 精品国产免费一区二区三区香蕉| 精品国产凹凸成av人网站| 久久综合色婷婷| 中文字幕视频一区二区三区久| 亚洲精品日日夜夜| 三级影片在线观看欧美日韩一区二区 | 美女视频第一区二区三区免费观看网站| 日韩激情视频网站| 国产福利不卡视频| 97超碰欧美中文字幕| 欧美美女激情18p| 久久久久综合网| 亚洲一区国产视频| 精品一二线国产| 91年精品国产| 欧美肥妇bbw| 337p日本欧洲亚洲大胆精品| 中文字幕欧美激情| 亚洲国产视频在线| 国产乱人伦偷精品视频免下载| 色综合久久99| 久久综合久色欧美综合狠狠| 亚洲六月丁香色婷婷综合久久| 另类调教123区| 色天使色偷偷av一区二区| 91麻豆精品国产91久久久使用方法| 久久久久九九视频| 亚洲综合激情小说| 成人毛片在线观看| 91精品久久久久久久久99蜜臂| 国产精品久久久久久久第一福利| 日本va欧美va瓶|