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

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

?? mkboot.c

?? Kontron的ETX-P3T的BSP的源代碼
?? C
?? 第 1 頁 / 共 2 頁
字號:
/* mkboot.c - program to make a boot diskette *//* Copyright 1984-2002 Wind River Systems, Inc. */#include "copyright_wrs.h"/*modification history--------------------01u,18jul02,jkf  SPR#79650, honor newer partition types, now will                 avoid corrupting FAT32 partitions, added comments,                 support big sectors and use malloc to use less stack01t,26jun02,hdn/dmh  updated revision no. in bootStrap[]01s,25jun02,hdn  replaced bootrom_uncmp with bootrom.bin01r,04dec01,jkf  using dosFsVolDescGet to see if device exists01q,24may00,jkf  new bootStrap 1.5, fixed SPR#31310,31445,30280.01p,12nov99,jkf  Added a bootStrap that has support for VxWorks long                  filename (VXEXT 1.0/1.1) matches vxsys.asm 1.4 version.                  Added comments.  Removed boot disk value update, since                  BIOS hands us the boot disk in dl, when the bootstrap is                  called. by convention.  SPR#745201o,01oct99,hdn  added support for binary file.01n,08apr99,jkf  corrected warning, SPR#26453.01m,27aug98,dat  added config.h, #ifdef INCLUDE_TFFS.01l,04mar98,hdn	 fixed a problem in mkbootTffs().01k,03mar98,kbw	 made changes to man page text for mkbootTffs01j,15dec97,hdn	 added support for TFFS.01i,15feb96,hdn	 renamed to mkboot.c01h,12jun95,hdn	 added support for ATA. added mkbootFd and mkbootAta.01g,24jan95,jdi	 doc cleanup.01f,25oct94,hdn	 added fdRawio() instead of using raw file system.		 swapped 1st and 2nd parameter of vxsys().01e,28may94,hdn	 updated the boot sector to DOS version.01d,27jan94,hdn	 changed the entry point 0x10000 to 0x8000.01c,16nov93,hdn	 changed name of the boot image "bootrom.dat" to "bootrom.sys".01b,07nov93,hdn	 adopted Dave Fraser's idea.01a,12oct93,hdn	 written*//*DESCRIPTIONThis library creates a boot diskette or disk.  mkbootFd() creates a bootfloppy disk, mkbootAta() creates a boot IDE/ATA disk.NOMANUAL*/#include "vxWorks.h"#include "config.h"#include "a_out.h"#include "errnoLib.h"#include "ioLib.h"#include "stdio.h"#include "string.h"#include "usrLib.h"#include "dosFsLib.h"#include "drv/fdisk/nec765Fd.h"#include "drv/hdisk/ataDrv.h"#include "usrFdiskPartLib.h"#ifdef INCLUDE_TFFS#include "tffs/tffsDrv.h"#endif /*INCLUDE_TFFS */#define VXSYS_FD	0		/* floppy disk */#define VXSYS_ATA	1		/* ATA disk */#define VXSYS_TFFS	2		/* flash memory: DOC */#define VXSYS_DOSDEV	"/vxsysdos/"/*  * VXLONGNAMES will store the "." confusing the bootstrap, FAT/VFAT wont. * so we remove the "." for the bootStrap code on longnames detection. *//* MUST MATCH string in bootStrap array.. */#define VXSYS_FILE     "/vxsysdos/BOOTROM.SYS"#define VXSYS_FILE_VXEXT "/vxsysdos/BOOTROM SYS"#define AOUT_MAGIC_MASK	0x0000ffff	/* a.out magic number mask */#define AOUT_MAGIC	0x00000107	/* a.out magic number */                        #define VXDOS		"VXDOS"#define VXEXT		"VXEXT"#define MAX_SECTOR_SIZE (8 * 512)/* 448 bytes for bootstrap, + 2 bytes (55aa) signature */#define BOOTSTRAP_AND_SIGNATURE 450  /* global */int vxsysDebug = 0;/* local */LOCAL BOOL vxsysBootsec = TRUE;LOCAL BOOL vxsysBootrom = TRUE; LOCAL unsigned char bootStrap[BOOTSTRAP_AND_SIGNATURE] =    {    0xFA, 0x88, 0x16, 0x24, 0x7C, 0xB4, 0x08, 0xCD,     0x13, 0x72, 0x11, 0x83, 0xE1, 0x3F, 0x89, 0x0E,     0x18, 0x7C, 0xFE, 0xC6, 0x32, 0xD2, 0x86, 0xF2,     0x89, 0x16, 0x1A, 0x7C, 0xFA, 0x8C, 0xC8, 0x8E,     0xD8, 0x8E, 0xC0, 0xFC, 0x8E, 0xD0, 0xBC, 0xFE,     0x7B, 0xFB, 0xBE, 0xE1, 0x7D, 0xE8, 0x14, 0x01,     0x33, 0xDB, 0x8B, 0xC3, 0x8B, 0xD3, 0xA0, 0x10,     0x7C, 0xF7, 0x26, 0x16, 0x7C, 0x8B, 0x0E, 0x0E,     0x7C, 0x03, 0x0E, 0x1C, 0x7C, 0x13, 0x16, 0x1E,     0x7C, 0x03, 0xC8, 0x13, 0xD3, 0x89, 0x0E, 0x00,     0x7B, 0x89, 0x16, 0x02, 0x7B, 0xBE, 0x03, 0x7C,     0xBF, 0xF9, 0x7D, 0xC7, 0x06, 0x36, 0x7C, 0x20,     0x00, 0xB9, 0x05, 0x00, 0xF3, 0xA6, 0x75, 0x06,     0xC7, 0x06, 0x36, 0x7C, 0x40, 0x00, 0xA1, 0x36,     0x7C, 0xF7, 0x26, 0x11, 0x7C, 0x8B, 0x36, 0x0B,     0x7C, 0x03, 0xC6, 0x48, 0xF7, 0xF6, 0x8B, 0xC8,     0x51, 0xA1, 0x00, 0x7B, 0x8B, 0x16, 0x02, 0x7B,     0xBB, 0x00, 0x7E, 0xE8, 0xD0, 0x00, 0x73, 0x03,     0xE9, 0xA5, 0x00, 0x8B, 0x16, 0x0B, 0x7C, 0xBF,     0x00, 0x7E, 0xBE, 0xEB, 0x7D, 0x57, 0xB9, 0x0B,     0x00, 0xF3, 0xA6, 0x5F, 0x74, 0x1C, 0x03, 0x3E,     0x36, 0x7C, 0x2B, 0x16, 0x36, 0x7C, 0x75, 0xEA,     0x83, 0x06, 0x00, 0x7B, 0x01, 0x83, 0x16, 0x02,     0x7B, 0x00, 0x59, 0xE2, 0xC3, 0xBE, 0xEA, 0x7D,     0xEB, 0x79, 0x59, 0x01, 0x0E, 0x00, 0x7B, 0x83,     0x16, 0x02, 0x7B, 0x00, 0x33, 0xC9, 0xBB, 0x1C,     0x00, 0x83, 0x3E, 0x36, 0x7C, 0x40, 0x75, 0x03,     0x83, 0xC3, 0x20, 0x8B, 0x01, 0x43, 0x43, 0x8B,     0x11, 0xF7, 0x36, 0x0B, 0x7C, 0x40, 0xA3, 0x04,     0x7B, 0x83, 0xEB, 0x04, 0x8B, 0x01, 0x48, 0x48,     0x8A, 0x0E, 0x0D, 0x7C, 0xF7, 0xE1, 0x03, 0x06,     0x00, 0x7B, 0x13, 0x16, 0x02, 0x7B, 0xBB, 0x00,     0x08, 0x8E, 0xC3, 0x33, 0xDB, 0x50, 0x52, 0xE8,     0x54, 0x00, 0x5A, 0x58, 0x72, 0x2A, 0xBE, 0xF7,     0x7D, 0xE8, 0x30, 0x00, 0xFF, 0x0E, 0x04, 0x7B,     0x74, 0x0D, 0x83, 0xC0, 0x01, 0x83, 0xD2, 0x00,     0x8C, 0xC3, 0x83, 0xC3, 0x20, 0xEB, 0xDA, 0xA0,     0x24, 0x7C, 0x24, 0x80, 0x75, 0x06, 0xBA, 0xF2,     0x03, 0x32, 0xC0, 0xEE, 0xFF, 0x2E, 0x7E, 0x7D,     0xBE, 0xE6, 0x7D, 0xE8, 0x06, 0x00, 0xEB, 0xFE,     0x00, 0x00, 0x00, 0x08, 0x53, 0x50, 0x80, 0x3E,     0xE0, 0x7D, 0x00, 0x75, 0x0E, 0xAC, 0x0A, 0xC0,     0x74, 0x09, 0xB4, 0x0E, 0xBB, 0x07, 0x00, 0xCD,     0x10, 0xEB, 0xF2, 0x58, 0x5B, 0xC3, 0x89, 0x1E,     0x06, 0x7B, 0x8B, 0x1E, 0x18, 0x7C, 0xF7, 0xF3,     0x42, 0x8B, 0xDA, 0x33, 0xD2, 0xF7, 0x36, 0x1A,     0x7C, 0x86, 0xE0, 0xB1, 0x06, 0xD2, 0xE0, 0x91,     0x0A, 0xCB, 0x8A, 0xF2, 0xBB, 0x05, 0x00, 0x53,     0x8B, 0x1E, 0x06, 0x7B, 0x8A, 0x16, 0x24, 0x7C,     0xB8, 0x01, 0x02, 0x51, 0x52, 0xCD, 0x13, 0x5A,     0x59, 0x72, 0x03, 0x5B, 0xF8, 0xC3, 0x33, 0xC0,     0xCD, 0x13, 0x5B, 0xFE, 0xCF, 0x75, 0xE0, 0xF9,     0xEB, 0xF3, 0x00, 0x56, 0x31, 0x2E, 0x36, 0x00,     0x21, 0x52, 0x64, 0x00, 0x21, 0x42, 0x4F, 0x4F,     0x54, 0x52, 0x4F, 0x4D, 0x20, 0x53, 0x59, 0x53,     0x00, 0x2B, 0x00, 0x56, 0x58, 0x45, 0x58, 0x54,     0x55, 0xAA,     };  /* VxSYS 1.6 *//* forward declaration */LOCAL STATUS vxsys (int device, int ctrl, int drive, int fdType, char *in);/********************************************************************************* mkbootFd - create a boot floppy disk from a specified file** This command creates a boot floppy disk from a specified file** EXAMPLES:* The following example makes a bootable floppy disk from the file named* `bootrom.bin' to the floppy drive 0: "a:", which contains a type 0 diskette.* .CS*     -> mkbootFd 0, 0, "bootrom.bin"* .CE** RETURNS:* OK, or ERROR if there is an error copying from <in> to the disk.**/STATUS mkbootFd     (    int drive,			/* drive number:	(0 - 3)	       */    int fdType,			/* type of floppy disk: (0 - 1)	       */    char *in			/* name of file to read: "bootrom.bin" */    )    {    return (vxsys (VXSYS_FD, 0, drive, fdType, in));    }/********************************************************************************* mkbootAta - create a boot ATA disk from a specified file** This command creates a ATA boot disk from a specified file* Note that the disk should have a FAT16 or a FAT12 volume.* FAT32 volumes are not supported.  ** EXAMPLES:* The following example makes a bootable hard disk from the file named* `bootrom.bin' to the ATA ctrl 0, drive 0: "c:" drive.* .CS*     -> mkbootAta 0, 0, "bootrom.bin"* .CE** RETURNS:* OK, or ERROR if there is an error copying from <in> to the disk.**/STATUS mkbootAta     (    int ctrl,			/* controller number:	(0 - 1)		 */    int drive,			/* drive number:	(0 - 1)		 */    char *in			/* name of file to read: "bootrom.bin" */    )    {    return (vxsys (VXSYS_ATA, ctrl, drive, 0, in));    }#ifdef INCLUDE_TFFS/********************************************************************************* mkbootTffs - make the specified flash device a boot device** This command sets up the flash device, <drive>, as a boot device.  * The <removable> parameter expects a 1 if the flash device is removable * or a 0 if it is not. The <in> parameter specifies the name of the boot file.** Note that the disk should have a FAT16 or a FAT12 volume.* FAT32 volumes are not supported.  ** EXAMPLES:* In the following example, the first zero identifies drive zero as the flash* device to be made into a boot device.  The second zero indicates that the * flash is not removable.  The 'bootrom.bin' parameter specifies the name * of the boot file.* .CS*     -> mkbootTffs 0, 0, "bootrom.bin"* .CE** RETURNS:* OK, or ERROR if there is an error copying from <in> to the disk.**/STATUS mkbootTffs     (    int drive,			/* drive number: (0 - TFFS_MAX_DRIVES - 1) */    int removable,		/* removable or not: (TRUE - FALSE)	 */    char *in			/* name of file to read: "bootrom.bin" */    )    {    return (vxsys (VXSYS_TFFS, 0, drive, removable, in));    }#endif /*INCLUDE_TFFS *//********************************************************************************* vxsys - create a boot device from a specified file** This command changes a boot sector and copies the text and data of * a specified file to the output device.** RETURNS:* OK, or* ERROR if <in> or <out> cannot be opened/created, or if there is an* error copying from <in> to <out>.**/LOCAL STATUS vxsys     (    int device,			/* device type:		(0 - 2)	*/    int ctrl,			/* controller number:	(0 - 1)	*/    int drive,			/* drive number:	(0 - 3)	*/    int fdType,			/* type of floppy disk: (0 - 1)	*/    char *in			/* name of file to read: "xxx"	*/    )    {    BLK_DEV *pBlkDev;    int inFd;    int outFd;    int ix;    int bytes;    struct exec hdr;    char * lbaSectorOne;    char * dosVolBootSec;    char * pSys;    FD_RAW fdRaw;    ATA_RAW ataRaw;    DOS_PART_TBL *pPart;    BOOL found		= FALSE;    UINT32 offset	= 0;#ifdef INCLUDE_TFFS    int removable	= fdType;#endif /* INCLUDE_TFFS */    BOOL useLongNames = FALSE;    /* allocate buffers */    lbaSectorOne  = malloc (MAX_SECTOR_SIZE);    dosVolBootSec = malloc (MAX_SECTOR_SIZE);    if ((NULL == lbaSectorOne) || (NULL == dosVolBootSec))        {        printErr ("mkboot couldn't allocate memory\n");        if (NULL != lbaSectorOne)            free (lbaSectorOne);        if (NULL != dosVolBootSec)            free (dosVolBootSec);        return (ERROR);        }    else        {        bzero (lbaSectorOne, MAX_SECTOR_SIZE);        bzero (dosVolBootSec, MAX_SECTOR_SIZE);        }    switch (device)	{	case VXSYS_FD:            if ((UINT)drive >= FD_MAX_DRIVES)	        {	        printErr ("drive is out of range(0-%d).\n", FD_MAX_DRIVES - 1);                free (dosVolBootSec);                free (lbaSectorOne);	        return (ERROR);	        }            /*                                                                      * Per MSDOS convention, DOSFS floppy disks never use FDISK             * partitions.  So presuming raw LBA sector 1 (chs 0,0,1) 	     * is a DOSFS volumes boot sector is appropriate for nec765 Fd.	     * Here we setup to do a raw read of sector one.             * We may also presume a floppy is FAT12.             */                                                                    fdRaw.cylinder   = 0;		/* read the DOS boot sector */            fdRaw.head       = 0;            fdRaw.sector     = 1;            fdRaw.pBuf       = dosVolBootSec;            fdRaw.nSecs      = 1;            fdRaw.direction  = 0;		/* 0 = read */            fdRawio (drive, fdType, &fdRaw);	    /* check to see if vxworks long file names are in use */	    if (strncmp((char *)&dosVolBootSec[3], VXEXT, strlen(VXEXT)) == 0)		{		useLongNames = TRUE;		}        if (vxsysDebug)            printErr ("UseLongNames is %s\n", (useLongNames) ? "TRUE":"FALSE");            if (vxsysBootsec)	        {		/* modify the dos volumes boot sector */	        dosVolBootSec[0] = 0xeb;	/* x86 relative jump inst */	        dosVolBootSec[1] = 0x3c;	/* rel address for jmp */	        dosVolBootSec[2] = 0x90;	/* x86 nop */                bcopy (bootStrap, (char *)&dosVolBootSec[0x3e],                        sizeof (bootStrap));                fdRaw.direction  = 1;		/* write the boot sector */                fdRawio (drive, fdType, &fdRaw);	        }	    if ((pBlkDev = fdDevCreate (drive, fdType, 0, 0)) == NULL)		{		printErr ("Error during fdDevCreate: %x\n", errnoGet ());                free (dosVolBootSec);                free (lbaSectorOne);		return (ERROR);		}	    break;	case VXSYS_ATA:            if ((UINT)ctrl >= ATA_MAX_CTRLS)

?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
日韩国产在线观看一区| 色综合久久88色综合天天| 色狠狠桃花综合| 一区二区三区欧美日| 91麻豆精品国产无毒不卡在线观看| 亚洲国产精品一区二区www在线| 91视频国产资源| 一区二区三区四区在线播放| 综合色天天鬼久久鬼色| 91精品在线免费| 日韩一二三区视频| 91亚洲永久精品| 色噜噜夜夜夜综合网| 欧美三级视频在线播放| 岛国精品在线观看| 日本午夜精品一区二区三区电影 | 精品在线播放免费| 国产精品久久久久久久久果冻传媒| 在线观看日韩国产| 成人高清视频在线观看| 亚洲国产精品久久艾草纯爱| 天天射综合影视| 亚洲日本在线观看| 亚洲综合男人的天堂| 欧美日韩免费在线视频| 成人中文字幕合集| 在线影院国内精品| 欧美视频在线一区二区三区| 国产成都精品91一区二区三| 一二三四区精品视频| 午夜精品福利在线| 国产一区二区0| 日本最新不卡在线| 国产精品99久久久久久似苏梦涵| 青青草97国产精品免费观看无弹窗版| 亚洲精品日日夜夜| 国产精品高潮呻吟久久| 亚洲国产视频a| 美腿丝袜在线亚洲一区| 亚洲精品国久久99热| 亚洲18影院在线观看| 亚洲国产精品精华液网站| 日韩精品欧美成人高清一区二区| 国产毛片精品国产一区二区三区| 成人激情免费视频| 欧美日韩精品综合在线| 欧美高清你懂得| 欧美日本在线观看| 欧美变态凌虐bdsm| 精品国产91乱码一区二区三区| 欧美久久久久中文字幕| 日韩欧美一区二区三区在线| 欧美精品在线视频| 中文在线资源观看网站视频免费不卡| 欧美mv日韩mv| 亚洲一区二区三区不卡国产欧美| 精品一区二区精品| 欧美专区在线观看一区| 国产精品区一区二区三| 欧美一级在线免费| 日韩一区二区免费高清| 综合激情成人伊人| 韩国一区二区三区| 91性感美女视频| 精品奇米国产一区二区三区| 亚洲精品视频在线观看免费 | 国产精品成人一区二区三区夜夜夜| 首页欧美精品中文字幕| 日本精品视频一区二区| 国产精品免费av| 国产精品自拍三区| 欧美tk—视频vk| 毛片一区二区三区| 欧美高清dvd| 亚洲一区二区三区四区在线| 成人18精品视频| 日本一区二区高清| 国产不卡视频一区二区三区| 久久精品一区二区三区不卡 | 色综合久久综合网| 日韩理论在线观看| 91在线观看免费视频| 亚洲天天做日日做天天谢日日欢| 成人黄色在线网站| 国产精品午夜在线观看| 国产99久久久精品| 国产精品久久久久精k8| www.66久久| 日韩视频一区二区三区在线播放| 日韩激情在线观看| 欧美一区二区国产| 理论片日本一区| 日本韩国欧美在线| 亚洲一二三四在线| 91精品国产黑色紧身裤美女| 蜜桃视频一区二区三区| 久久综合久久鬼色中文字| 一区二区三区资源| 欧美日韩亚洲高清一区二区| 美女任你摸久久 | 亚洲狠狠爱一区二区三区| 精品视频一区 二区 三区| 亚洲v中文字幕| 欧美大片日本大片免费观看| 国产91丝袜在线播放九色| 欧美国产精品v| 在线观看国产精品网站| 婷婷国产v国产偷v亚洲高清| 精品久久久久久最新网址| 国产精品夜夜嗨| 亚洲少妇30p| 欧美日韩你懂得| 国产99久久久国产精品免费看| 尤物av一区二区| 久久在线免费观看| 99久久国产综合精品女不卡| 国产日产欧美一区| 精品在线观看视频| 成人欧美一区二区三区1314| av电影天堂一区二区在线观看| 亚洲蜜臀av乱码久久精品蜜桃| 紧缚捆绑精品一区二区| 亚洲精品视频免费观看| 日韩一区二区三免费高清| 97成人超碰视| 韩国女主播成人在线观看| 亚洲自拍都市欧美小说| 精品国产3级a| 欧美亚洲综合网| 成人性生交大片免费看视频在线 | 国产欧美中文在线| 欧美亚洲高清一区| 国产成人av自拍| 国产亚洲欧美一区在线观看| 在线观看日韩精品| 91丨九色porny丨蝌蚪| 国产九九视频一区二区三区| 日韩va欧美va亚洲va久久| 亚洲欧美日韩国产另类专区| 久久女同互慰一区二区三区| 韩国在线一区二区| 日本成人中文字幕| 亚洲福利视频三区| 亚洲毛片av在线| 国产精品久久久久久亚洲伦| 久久亚洲综合色一区二区三区| 91麻豆精品91久久久久同性| 欧美三级在线看| 欧美亚洲尤物久久| 91传媒视频在线播放| 91社区在线播放| 一本大道av伊人久久综合| 99热在这里有精品免费| 丁香啪啪综合成人亚洲小说 | 91免费版pro下载短视频| 成人丝袜18视频在线观看| 国产福利91精品一区| 国产一区二区免费视频| 国产麻豆一精品一av一免费| 激情都市一区二区| 国产精品影视在线观看| 国产一区二区美女| 国产伦精品一区二区三区免费迷| 国内精品自线一区二区三区视频| 久久99精品久久久| 久久电影网电视剧免费观看| 经典三级视频一区| 国产一区二区h| 99久久婷婷国产综合精品电影| 99久久er热在这里只有精品15| 91亚洲国产成人精品一区二三| 在线免费不卡电影| 91精品久久久久久蜜臀| 精品黑人一区二区三区久久| 国产午夜精品福利| 亚洲欧美日韩系列| 伊人色综合久久天天| 亚洲成人激情社区| 久久国产人妖系列| 99在线精品视频| 欧美日韩一级二级| 久久日一线二线三线suv| 国产精品久久久久久久久动漫| 一区二区三区国产豹纹内裤在线| 亚洲大片精品永久免费| 国产又黄又大久久| 91麻豆福利精品推荐| 欧美一区二区三区四区五区| 国产欧美一区二区三区鸳鸯浴 | 视频在线观看国产精品| 久久99久久久欧美国产| av中文字幕一区| 538在线一区二区精品国产| 久久九九久久九九| 亚洲宅男天堂在线观看无病毒| 久久精品国产久精国产爱| 91视频国产观看| 亚洲精品一区在线观看| 一区二区三区精品视频| 国产精品77777竹菊影视小说|