RedSea File System

The RedSea file system is a simple, 64-bit, file system which is similar to FAT32, but with absolute block addresses instead of 
clus, fixed-sized 64-byte directory entries and no FAT table, just an allocation bitmap.        A clus is just one 512 byte sector.  
Files are stored in contiguous blocks and cannot grow in size.

#define CDIR_FILENAME_LEN 38 //Must include terminator zero

The following bit field shows valid 8-Bit ASCII filename characters.

U32 char_bmp_filename[8] = {0x0000000, 0x03FF73FB, 0xEFFFFFFF, 0x2FFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF};

public class CDirEntry //64-byte fixed-size
{
        U16             attr;                                           //See RS_ATTR_DIR.      Terry wanted to change these.
        U8              name[CDIR_FILENAME_LEN];        //See char_bmp_filename, FileNameCheck
        I64             clus; (blk)                             //One sector per clus.
        I64             size;                                           //In bytes
        CDate   datetime;                                       //See  DateTime, Implementation of DateTime
};

public class CRedSeaBoot //RedSea is type FAT32 in partition table to fool BIOS.
{
        U8      jump_and_nop[3];
        U8      signature, reserved[4]; //MBR_PT_REDSEA=0x88. Distinguish from real FAT32.
        I64 drv_offset;                         //For CD/DVD image copy.
        I64 sects;
        I64 root_clus; (root_blk)
        I64 bitmap_sects;
        I64 unique_id;
        U8      code[462];
        U16 signature2;                         //0xAA55
};

See ::/Kernel/BlkDev/FileSysRedSea.CC and ::/System/Boot/DiskISORedSea.CC.

Files with names ending in      are compressed.  See ::/Kernel/Compress.CC.

To replace ISO9660, make hard-drive partition image of a measured size and copy onto a CD/DVD starting at about sector 20, with 
EL TORITO booting.      512-byte sectors will be placed on top of 2048-byte CD/DCD sectors, so there will be four blocks per CD/DVD 
sector.

RedSea file system has no bad block table and no redundant allocation table.

See Block Chain for RedSea allocation bitmap discussion.

See Reliability for RedSea reliability discussion.