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

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

?? bios.c

?? arm有關bois驅動開發的所有源碼以及詳細的說明文檔
?? C
字號:
/*  * Compex BIOS for SAMSUNG S3C4510B v1.20 * modified by duyunhai(duyunhai@hotmailc.com) for "ARM study report 003" * bios-dyh v1.5 */#include "types.h"#include "bios.h"#include "board.h"#include "console.h"#include "utils.h"#include "gunzip.h"extern const unsigned long _rom_base;extern const unsigned long system_table_offset;extern const unsigned char sysinit_data[];extern const unsigned char biosapi_data[];extern const unsigned char tftp_data[];extern const unsigned char uart_rec_data[];int sys_init(struct system_table_struct *system_table, unsigned long rom_base, unsigned long dram_base){	typedef int (SYSINIT)(struct system_table_struct *, unsigned long, unsigned long);	SYSINIT *sys_init_ptr;	memcpy((char *)SRAM_BASE, sysinit_data, 1024 * 3);	sys_init_ptr = (SYSINIT *)SRAM_BASE;	sys_init_ptr(system_table, rom_base, dram_base);	return 0;}int biosapi_init(void){	unsigned char *inbuf;	unsigned long insize;	unsigned char *outbuf;	unsigned long outsize;	struct biosapi_init_struct init_param;	BIOSCALL *fp;	inbuf = (unsigned char *)biosapi_data;	outbuf = (unsigned char *)BIOS_API_ADDR;	insize = 0x7fffffff;	outsize = 0x7fffffff;	gunzip(inbuf, &insize, outbuf, &outsize);	init_param.rom_base = _rom_base;	init_param.dram_base = DRAM_BASE;	init_param.system_table_offset = system_table_offset;	fp = (BIOSCALL *)outbuf;	return (*fp)(0, (unsigned long)&init_param);  // Init BIOS call}int uart_receive(){		typedef int (UART_REC)(void);	UART_REC *uart_rec_ptr;		memcpy((char *)UART_REC_ADDR, uart_rec_data, 1024 * 5);		uart_rec_ptr= (UART_REC *)UART_REC_ADDR;		(*uart_rec_ptr)();		return 0;}int load_tftp(unsigned long mode, unsigned long param){	typedef int (TFTP)(unsigned long, unsigned long, unsigned long);	unsigned char *inbuf;	unsigned long insize;	unsigned char *outbuf;	unsigned long outsize;	unsigned long ip;	TFTP *tftp_ptr;	inbuf = (unsigned char *)tftp_data;	outbuf = (unsigned char *)TFTP_ADDR;	insize = 0x7fffffff;	outsize = 0x7fffffff;	gunzip(inbuf, &insize, outbuf, &outsize);	tftp_ptr = (TFTP *)TFTP_ADDR;	ip = bios_tftp_ipaddr();	tftp_ptr(ip, mode, param);	return 0;}int main_menu(struct system_table_struct *system_table){	int list[] = {		BOOT_LOAD_FIRMWARE,		BOOT_LOAD_PROGRAM,		BOOT_BIOS_SETUP,		BOOT_LOAD_UART0,		//bios-dyh modified		BOOT_UPDATE_BIOS,		BOOT_UPDATE_SYSPARAMETERS,		BOOT_UPDATE_PARTITIONTABLE,		BOOT_UPDATE_PARTITION,		BOOT_UPDATE_FIRMWARE,		};	int select;	int ch;	int sh;			printf("Main Menu For bios-dyh \r\n\r\n");	printf("1 - Run uClinux \r\n");	printf("2 - Load uClinux image to sdram by tftp and Run \r\n");	printf("3 - Burn uClinux image to flash \r\n");	printf("4 - Update BIOS!!! \r\n");	printf("5 - Load image to sdram from uart0 and run (Low Speed!!!)\r\n");	printf("\r\n");	printf("Please Select: ");		while (1) {		sh = getch();		if (sh >= '1' && sh <= '5') {					if (sh=='1')				ch='1';			if (sh=='2')				ch='2';			if (sh=='3')				ch='9';			if (sh=='4')				ch='5';			if (sh=='5')				ch='4';					putch(sh);			select = list[ch - '1'];			break;		}	}	printf("\r\n\r\n");	return select;}int menu(struct system_table_struct *system_table){	int select, partition_num = 0;	unsigned long input_data;	unsigned long i;	unsigned long linux_origin=0x01010000;	while (1) {		select = main_menu(system_table);		if (select == BOOT_LOAD_FIRMWARE) {			for(i=0;i<1024*1024*2;i++)			{				*(volatile unsigned char*)(0x8000+i)=*(volatile unsigned char*)(linux_origin+i);			}			asm(    "	                        ldr     r14, =0x00008000;	                        mov     PC, r14; "	                );			break;		}				switch (select) {		case BOOT_LOAD_PROGRAM:			load_tftp(select, partition_num);			break;				case BOOT_UPDATE_FIRMWARE: 	                printf("Sorry,this function is not complement!\r\n\n\n");			break;				case BOOT_UPDATE_BIOS: 			printf("Sorry,this function is not complement!\r\n\n\n");			break;									case BOOT_LOAD_UART0:						uart_receive();                        break;				default:			break;		}	}	return select;}/* *  Main BIOS functions */unsigned char *bios_main(void){	struct system_table_struct *system_table;	unsigned long startup_mode;	int i, ch;	system_table = (struct system_table_struct *)(_rom_base + system_table_offset);	sys_init(system_table, _rom_base, DRAM_BASE);	console_init();	printf("\r\n\r\n");	printf("Compex BIOS for SAMSUNG S3C4510B v1.20 (build 0801)\r\n\r\n");	printf("modified by duyunhai for 'ARM study report 003'\r\n");	biosapi_init();	printf("\r\n");	startup_mode = bios_startup_mode();	if (startup_mode == BOOT_MENU) {		startup_mode = menu(system_table);	}	return (unsigned char *)_rom_base;   //return to head.S with _rom_base in r0}

?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
九九精品一区二区| 欧美日韩电影在线| 欧美福利电影网| 中文字幕国产一区| 蜜桃免费网站一区二区三区| 91免费精品国自产拍在线不卡| 日韩欧美你懂的| 亚洲成av人片在www色猫咪| 国产精品一二三区在线| 884aa四虎影成人精品一区| 中文字幕一区二区视频| 国产麻豆精品久久一二三| 欧美人体做爰大胆视频| 亚洲一区二区高清| 国产美女娇喘av呻吟久久| 91精品国产福利| 亚洲成av人片一区二区| 欧美视频在线播放| 亚洲自拍另类综合| 欧美三区免费完整视频在线观看| 国产精品不卡一区| 成人av先锋影音| 中文字幕av一区二区三区| 国产一区二区三区香蕉 | 麻豆精品国产91久久久久久| 欧美亚洲禁片免费| 亚洲午夜精品久久久久久久久| 97se亚洲国产综合自在线观| 国产精品成人一区二区三区夜夜夜| 国产精品一区二区不卡| 久久蜜桃一区二区| 成人午夜视频在线| 亚洲免费高清视频在线| 色综合夜色一区| 亚洲一区二区四区蜜桃| 欧美三级乱人伦电影| 午夜电影久久久| 欧美一级久久久久久久大片| 日韩精品视频网站| 欧美mv日韩mv国产| 国产成人在线色| 18欧美亚洲精品| 欧美亚洲国产一区二区三区| 天天色综合天天| 久久综合视频网| av在线播放不卡| 亚洲一区在线看| 日韩一区二区免费电影| 国产一区在线观看麻豆| 国产精品女同互慰在线看| 色综合亚洲欧洲| 蜜臀av一级做a爰片久久| 久久嫩草精品久久久精品| 91视频你懂的| 日韩国产欧美视频| 国产喂奶挤奶一区二区三区| 99国产精品99久久久久久| 午夜久久久久久电影| 久久综合色8888| 在线观看国产91| 国模无码大尺度一区二区三区| 国产精品久久久久四虎| 欧美高清www午色夜在线视频| 极品少妇xxxx精品少妇| 亚洲欧美另类在线| 精品免费视频.| 一本大道久久a久久综合| 日本最新不卡在线| **性色生活片久久毛片| 欧美一区二区三区视频在线 | 麻豆视频一区二区| 国产精品色婷婷| 91精品久久久久久蜜臀| 不卡免费追剧大全电视剧网站| 日本在线播放一区二区三区| 国产精品久久久久久久久动漫| 国产亚洲综合在线| 色综合天天综合网国产成人综合天| 日韩电影免费在线看| 亚洲精选在线视频| 久久免费视频色| 日韩一区二区三区电影在线观看| 91小视频免费观看| 国产激情视频一区二区三区欧美| 亚洲午夜免费视频| 亚洲天堂久久久久久久| 久久综合一区二区| 日韩三级视频在线观看| 91国偷自产一区二区开放时间| 国产麻豆午夜三级精品| 美女一区二区久久| 亚洲小说春色综合另类电影| 国产精品久久久久一区| 欧美激情一区在线观看| 精品99久久久久久| 日韩免费观看高清完整版在线观看| 91国产成人在线| 色94色欧美sute亚洲线路二| www.66久久| 高清国产一区二区| 国产精品一区二区你懂的| 久久精品国产在热久久| 免费观看91视频大全| 午夜不卡在线视频| 日韩精品一二三四| 日韩成人午夜精品| 日本成人超碰在线观看| 亚洲电影视频在线| 亚洲电影一区二区三区| 亚洲国产裸拍裸体视频在线观看乱了 | 国产91高潮流白浆在线麻豆| 久久成人羞羞网站| 精品一二三四在线| 国产精品主播直播| 丰满白嫩尤物一区二区| 高清在线不卡av| 91在线观看污| 在线观看av不卡| 欧美一区二区三区电影| 日韩三级在线观看| 国产欧美日韩在线视频| 国产精品免费免费| 亚洲在线观看免费视频| 石原莉奈一区二区三区在线观看| 日韩av在线播放中文字幕| 麻豆久久一区二区| 国产福利视频一区二区三区| 成人精品国产福利| 欧美色视频一区| 欧美大白屁股肥臀xxxxxx| 久久久久久毛片| 亚洲精品欧美综合四区| 亚洲不卡一区二区三区| 精品伊人久久久久7777人| 国产成人8x视频一区二区| 91视频精品在这里| 4438x成人网最大色成网站| 久久久www成人免费无遮挡大片| 中文字幕一区二区三区蜜月| 亚洲国产色一区| 国产精品一区一区| 欧美日韩一区二区三区免费看| 欧美va亚洲va香蕉在线| 一区精品在线播放| 日日骚欧美日韩| 成人午夜av影视| 精品视频免费看| 久久婷婷久久一区二区三区| 中文字幕一区av| 蜜桃视频在线观看一区| 99在线精品视频| 精品理论电影在线| 自拍偷拍欧美激情| 韩日欧美一区二区三区| 欧美性三三影院| 国产精品久久久久一区二区三区| 日韩高清在线电影| 色诱亚洲精品久久久久久| 日韩欧美自拍偷拍| 亚洲一区二区三区免费视频| 国产精品一区二区无线| 欧美日韩dvd在线观看| 中文字幕不卡的av| 久久成人羞羞网站| 欧美日高清视频| 一区二区三区精品视频在线| 国产成人高清视频| 欧美videossexotv100| 午夜精品久久久久久久久久久| 岛国精品一区二区| 欧美精品一区二区三区视频| 亚洲成人av在线电影| 色综合一区二区三区| 国产欧美日产一区| 国模一区二区三区白浆| 日韩区在线观看| 日韩在线一二三区| 欧美专区在线观看一区| 亚洲欧美偷拍卡通变态| 国产大片一区二区| 国产香蕉久久精品综合网| 精品一区二区三区蜜桃| 欧美一级精品在线| 人人超碰91尤物精品国产| 欧美日韩激情一区| 日日夜夜一区二区| 宅男在线国产精品| 天天亚洲美女在线视频| 欧美精品xxxxbbbb| 亚洲一二三四区| 欧洲av在线精品| 亚洲狠狠爱一区二区三区| 色综合色狠狠天天综合色| 亚洲视频狠狠干| 在线亚洲人成电影网站色www| 亚洲精品欧美在线| 欧美日韩精品综合在线| 日韩av中文在线观看| 日韩欧美成人午夜| 国产一区二区三区免费在线观看|