TempleOSCD_150216.ISO

This commit is contained in:
Terry A. Davis authored and minexew committed 2018-09-08 21:46:15 +02:00
1 parent 64f679eeb9
commit 401601816c
531 files changed
+23341 -22071

No files matched your search

+11 -8
View File
@@ -1,9 +1,14 @@
$WW,1$$FG,5$$TX+CX,"RedSea File System"$$FG$
The RedSea file system is a simple, 64-bit, file system which is, basically, FAT32 with fixed-sized 64-byte directory entries and no FAT table, just an allocation bitmap. It has no clustered-blocks, just 512 byte sectors. Files are stored in contiguous blocks and cannot grow in size.
The RedSea file system is a simple, 64-bit, file system which is similar to FAT32, but with absolute block addresses instead of clusters, fixed-sized 64-byte directory entries and no FAT table, just an allocation bitmap. A cluster is just one 512 byte sector. Files are stored in contiguous blocks and cannot grow in size.
$HL,1$#define CDIR_FILENAME_LEN 38 //Must include terminator zero
The following bit field shows valid 8-Bit ASCII filename characters.
U32 chars_bitmap_filename[8]=
{0x0000000, 0x03FF73FB, 0xEFFFFFFF, 0x2FFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF};
public class CDirEntry //64-byte fixed-size
{
U16 attr; //See $LK,"RS_ATTR_DIR",A="MN:RS_ATTR_DIR"$. I would like to change these.
@@ -13,15 +18,16 @@ public class CDirEntry //64-byte fixed-size
CDate datetime; //See $LK,"DateTime",A="::/Doc/TimeDate.TXT"$, $LK,"Implementation of DateTime",A="FI:::/Kernel/Date.CPP"$
};
public class CBootStruct //RedSea is type FAT32 in partition table to fool BIOS
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
U8 signature,reserved[4]; //MBR_PT_REDSEA=0x88. Distinguish from real FAT32.
I64 base_offset; //For CD/DVD image copy.
I64 sects;
I64 root_cluster;
I64 bitmap_sects;
I64 unique_id;
U8 code[470];
U8 code[462];
U16 signature2; //0xAA55
};
$HL,0$
@@ -32,7 +38,4 @@ See $LK,"implementation of LZW compression",A="::/Kernel/Compress.CPP"$.
I hope to do a ISO9660 replacement that consists of a hard-drive partition image copied 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.
There is no bad block table and no redundant allocation table. When I was a teenager, I used a raw disk block editing program to look at directory blocks and follow chains of blocks on my Commodore 64. I undeleted files. My goal in designing the RedSea system is to be as simple as possible, for kids.
$FG,8$
* "Commodore 64" was a trademark of Commodore Business Machines.
There is no bad block table and no redundant allocation table.