⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 myiso.h

📁 It is for standalone platform executing DVD Burning function,it supports DVD+R/+RW Disc .
💻 H
字号:
////////////////////////////////////////////// Copyright Cirrus Logic, Inc. 2001, 2002////////////////////////////////////////////#ifndef __myISO_H__#define __myISO_H__//#include "apitypes.h"//#include "basetype.h"/* Volume types */#define CDFS_VOL_AUDIO 		1		/* Audio CD 		*/#define CDFS_VOL_DATA 		2		/* Data CD  		*/#define CDFS_VOL_MIXED 		3		/* Mixed-format CD *//* Track types  */#define CDFS_TRACK_AUDIO	1		/* audio (red) 					*/#define CDFS_TRACK_MODE1	2		/* data (yellow, mode1)			*/#define CDFS_TRACK_MODE2	3		/* data (yellow, mode2)			*/#define CDFS_TRACK_FORM1	4		/* XA data (green, mode2 form1)	*/ #define CDFS_TRACK_FORM2	5		/* XA data (green, mode2 form2)	*/ /* File seeking modes */#define CDFS_SEEK_SET		1 #define	CDFS_SEEK_CUR		2#define	CDFS_SEEK_END		3#define MAX_PATH_NUM 500 /* * The iso filesystem constants/structures */ // Volume descriptor types #define ISO_VD_PRIMARY			1#define ISO_VD_SUPPLEMENTARY	2     /* Used by Joliet */#define ISO_VD_END				255		//0xFF// Volume descriptor locations/sectors#define PRIMARY_DESC_LBA		16#define SECONDARY_DESC_LBA		17// Volume IDs#define ISO_STANDARD_ID		"CD001"#define ISO_ECMA_ID			"CDW01"#define ISO_SIERRA_ID		"CDROM"#define ISO_DEFAULT_BLOCK_SIZE	2048#define ASSOCRMint8	'='#define	LEN_ISONAME	31#define	MAX_ISONAME	37/*	A directory consists of a series of directory records in one or more * 	consecutive sectors.*/typedef struct _ISODirRecord_ {	RMuint8 	lenDR;		   			/* 711 */	RMuint8	extAttrLength	;  		 	/* 711 */	RMint8		lExtent[4];  	  		 	/* 733 */	RMint8		mExtent[4]; 		  		/* 732 */	RMint8 	lSize[4];			 		/* 733 */	RMint8 	mSize[4];			 		/* 732 */	RMint8 	date[7];					/* 711 */	RMint8 	flags;	RMint8 	file_unit_size	[1];		      /* 711 */	RMint8 	interleave[1]; 				/* 711 */	RMint8 	volumeSequenceNumber[4]; 	/* 723 */	Uint8 	lenFI; 				/* 711 */	RMint8 	name	[38]; 										} ISODirRecord;/*typedef struct  _ISODir_{	struct ISODir *next;	RMint8 * name;  	ISODirRecord	*dirRecord;} ISODir;*/struct ISOPrimaryDescriptor {	RMint8 type				[1]; 		/* 711 */	RMint8 id				[5];	RMint8 version			[1]; 		/* 711 */	RMint8 unused1			[1];	RMint8 systemID		[32]; 		/* aRMint8s */	RMint8 volumeID			[32]; 	/* dRMint8s */	RMint8 unused2			[8];//	Uint32 lVolumeSpaceSize; 		/* 733  Number of logical blocks in the volume */	RMint8 lVolumeSpaceSize[4];//	Uint32 mVolumeSpaceSize; 		/* 733 */	RMint8 mVolumeSpaceSize[4];	RMint8 escapeSequences	[32];//	Uint16 lVolumeSetSize; 			/* 733  Little Endian Format */	RMint8 lVolumeSetSize[2];//	Uint16 mVolumeSetSize; 			/* 733  Big Endian Format    */	RMint8 mVolumeSetSize[2];	RMint8 volumeSequenceNumber	[4];  /* 723 *///	Uint16 lLogicalBlockSize;		/* 723  Little Endian Format */	RMint8 lLogicalBlockSize[2];//	Uint16 mLogicalBlockSize;	       /* 732  Big Endian Format    */	RMint8 mLogicalBlockSize[2];	RMint8  lPathTableSize[4]; 			/* 733 */	RMint8  mPathTableSize[4]; 			/* 732 */	RMint8 typeLPathTable[4];	RMint8 optTypeLPathTable[4];	RMint8 typeMPathTable[4];	RMint8 optTypeMPathTable[4];	RMint8	root[34];		 			/* 9.1 */	RMint8 volumeSetID			[128]; /* dRMint8s */	RMint8 publisherID			[128]; /* aRMint8s */	RMint8 preparerID			[128]; /* aRMint8s */	RMint8 applicationID			[128]; /* aRMint8s */	RMint8 copyright_fileID		[37]; /* 7.5 dRMint8s */ 	RMint8 abstract_fileID		[37]; /* 7.5 dRMint8s */	RMint8 bibliographicFileID		[37]; /* 7.5 dRMint8s */	RMint8 creationDate			[17]; /* 8.4.26.1 */	RMint8 modificationDate		[17]; /* 8.4.26.1 */	RMint8 expirationDate		[17]; /* 8.4.26.1 */	RMint8 effectiveDate		[17]; 	/* 8.4.26.1 */	RMint8 fileStructureVersion	[1];   /* 711 */	RMint8 unused4				[1];	RMint8 applicationData		[512];	RMint8 unused5				[653];} ; /* * The next two structures have odd lengths! * For this reason, we cannot use sizeof (struct iso_path_table) or * sizeof (struct iso_directory_record) to compute on disk sizes. * Instead, we use offsetof(..., name) and add the name size. * See mkisofs.h */ typedef struct _ISOPathTable_ {//	Uint8	parsed;		//marked by iavhf	Uint8  	Len_DI;		/* 721  ISO 9660 standard 7.2.1 */	Uint8	exAttrRecLen;//	Uint32	extent;			/* 731 */	RMint8	extent[4];//	Uint16	parent;			/* 721 */	RMint8	parent[2];	RMint8	name[38];		//璶

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -