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

📄 ffs.h

📁 ADAM2 sources (modified by Oleg)
💻 H
字号:
/*-----------------------------------------------------------------------------*//*                                                                             *//*   Copyright (C) 1999-2003 by Texas Instruments, Inc.  All rights reserved.  *//*   Copyright (C) 2001-2003 Telogy Networks.	    						   *//*                                                                             *//*-----------------------------------------------------------------------------*/#ifndef FFS#define FFS#define FFS_VERSION 0x00#define FFS_F_DELETE           0x8000#define FFS_F_BLOCK_ALIGN      0x4000#define FFS_F_AUTO_EXECUTE     0x2000#define FFS_F_EXT_FIFLE_SYSTEM 0x1000#define FFS_F_VOLUME_ID        0x0800#define FFS_F_LINK             0x0400#define FFS_F_DIRECTORY        0x0200#define FFS_F_USER_READ        0x0100#define FFS_F_USER_WRITE       0x0080#define FFS_F_USER_EXECUTE     0x0040#define FFS_F_GROUP_READ       0x0020#define FFS_F_GROUP_WRITE      0x0010#define FFS_F_GROUP_EXECUTE    0x0008#define FFS_F_WORLD_READ       0x0004#define FFS_F_WORLD_WRITE      0x0002#define FFS_F_WORLD_EXECUTE    0x0001#define FFS_ERRS_NO_ERROR              0#define FFS_ERRS_NO_SUCH_FFS           1#define FFS_ERRS_NOT_A_VALID_FFS       2#define FFS_ERRS_SLOT_NOT_ENABLED      3#define FFS_ERRS_VERSION_NOT_SUPPORTED 4#define FFS_ERRS_FFS_ALREADY_MOUNTED   5typedef char cbit16[2];typedef char cbit8;typedef char cbit24[3];typedef struct ffs_sEntry                   {                  cbit16 inode;                  cbit16 flags;                  cbit16 mdate;                  cbit16 mtime;                  cbit8  uid;                  cbit8  gid;                  cbit8  fnlen;                  cbit24 flen;                  cbit8  aeo;                  cbit8  data[1];                  }ffs_tEntry;typedef struct fs_sBlock                 {                 struct fs_sBlock  *Next;                 int               Length;                 char              Data[1];                 }fs_tBlock;typedef struct fs_sFileHandle                 {                 int        FlashFile;                       int        Mode;                 int        State;                 int        SeekValue;                 ffs_tEntry *FlashFileSystemEntry;                 fs_tBlock  *FSRamBlock;                  }fs_tFileHandle;#define SLOT_BASE     0xbc000000#define NUM_OF_SLOTS 1#define FLASH_BASE       	0xb0000000#if 0#define MIN_BOOT_BLOCK_SIZE     (128*1024)#define MIN_ENV_BLOCK_SIZE      (64*1024)#endiftypedef struct ffs_s                  {                 void *ffs_ptr;                 int  slot;                 }ffs_tMountPoint;/* Initialize calls */void   ffs_InitFlashFIleSystem(void);/* File minipulation calls */FFS_FILE   *ffs_fopen(const char *filename, const char *type);size_t ffs_fread(void *ptr, size_t size, size_t nitems, FFS_FILE *stream);size_t ffs_fwrite(const void *ptr, size_t size, size_t nitems, FFS_FILE *stream);int    ffs_fclose(FFS_FILE *stream);int    ffs_fseek(FFS_FILE *stream, bit32 offset, int ptrname);int    ffs_remove(const char *filename);/* Mounting and unmounting Calls */int    ffs_AddFileSystem(int slot,void *ffs);int    ffs_RemoveSlotMount(int slot);/* Internal ffs.c calls also used by ffs_utils.c */int    _ffs_hw_isslotenabled(int slot);void   ffs_RepairFlashFileSystems(int slot);int    ffs_AddNewSlotMount(int slot);ffs_tEntry *_ffs_DumpFlashFileSystemEntry(ffs_tEntry *ffse,int show_deleted);bit16u _ffs_GetBit16Value(char *cbit16);void   _ffs_PutBit16Value(char *cbit16, bit16u val);void   _ffs_UpdateBit16Value(char *cbit16, bit16u val);bit32  _ffs_GetBit24Value(char *cbit24);void   _ffs_PutBit24Value(char *cbit16, bit32u val);bit32  _ffs_GetBit32Value(char *cbit32);void   _ffs_DecodeAndPrintMdate(int mdate);void   _ffs_DecodeAndPrintMtime(int mtime);void   _ffs_SplitIntoFirstDirAndRest(char *src,char **d1,char **l1);ffs_tEntry *_ffs_FindFFSEWithNameInDir(ffs_tEntry *ffs,int inode,char *name);void   _ffs_xferstream(FFS_FILE *stream,ffs_tEntry *old,ffs_tEntry *new);#endif

⌨️ 快捷键说明

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