diff options
| author | Amlal El Mahrouss <amlalelmahrouss@icloud.com> | 2024-02-02 11:58:14 +0100 |
|---|---|---|
| committer | Amlal El Mahrouss <amlalelmahrouss@icloud.com> | 2024-02-02 11:58:14 +0100 |
| commit | 1b4bd4df5f5cc15c688a13a169a76a8af69d0700 (patch) | |
| tree | 66c8052ede212f0ec3d383661739af1bc6ee4432 /Private/FSKit | |
| parent | df77fd9586cb305a738d5b4dfcdbe67177e3de3f (diff) | |
Bootloader: Getting it done now.
Signed-off-by: Amlal El Mahrouss <amlalelmahrouss@icloud.com>
Diffstat (limited to 'Private/FSKit')
| -rw-r--r-- | Private/FSKit/NewFS.hxx | 27 |
1 files changed, 14 insertions, 13 deletions
diff --git a/Private/FSKit/NewFS.hxx b/Private/FSKit/NewFS.hxx index 75f4e554..bfb6f7c5 100644 --- a/Private/FSKit/NewFS.hxx +++ b/Private/FSKit/NewFS.hxx @@ -21,18 +21,19 @@ #define kIdent "NewFS" #define kPadLen 16 -#define kFilesystemVersion 1 +#define kNewFSVersion 1 enum { - kHardDrive = 0xC0, // Hard Drive - kOpticalDrive = 0x0C, // Blu-Ray/DVD - kMassStorageDevice = 0xCC, // USB - kUnknowmn = 0xFF, // unknown device or unsupported (floppy) + kNewFSHardDrive = 0xC0, // Hard Drive + kNewFSOpticalDrive = 0x0C, // Blu-Ray/DVD + kNewFSMassStorageDevice = 0xCC, // USB + kNewFSUnknowmn = 0xFF, // unknown device or unsupported (floppy) + kNewFSDriveCount = 4, }; struct PACKED NewBootBlock final { - HCore::Char Ident[kIdentLen]; - HCore::Char Shell[kNameLen]; + HCore::WideChar Ident[kIdentLen]; + HCore::WideChar Shell[kNameLen]; HCore::Int64 NumParts; HCore::Int64 FreeSectors; @@ -45,7 +46,7 @@ struct PACKED NewBootBlock final { HCore::Lba FirstPartBlock; HCore::Lba LastPartBlock; - HCore::Char Pad[kPadLen]; + HCore::WideChar Pad[kPadLen]; }; #define kFlagDeleted 0xF0 @@ -55,9 +56,10 @@ struct PACKED NewBootBlock final { #define kKindCatalog 1 #define kKindDirectory 2 #define kKindSymlink 3 +#define kKindPartition 4 struct PACKED NewCatalog final { - HCore::Char Name[kNameLen]; + HCore::WideChar Name[kNameLen]; HCore::Int32 Flags; HCore::Int32 Kind; @@ -91,8 +93,8 @@ struct PACKED NewFork final { #define kPartLen 32 struct PACKED NewPartitionBlock final { - HCore::Char PartitionName[kPartLen]; - HCore::Char JsonPath[kConfigLen]; + HCore::WideChar Ident[kIdentLen]; + HCore::WideChar PartitionName[kPartLen]; HCore::Int32 Flags; HCore::Int32 Kind; @@ -184,8 +186,7 @@ class MeFilesystemHelper final { }; } // namespace HCore -#define kNewFSAddressAsLba 5 -#define kNewFSAddressAsCHS 6 +#define kNewFSAddressAsLba 1024 // FSControl() syscall // FSOpen, FSClose, FSWhereAt, FSSetCursor, FSNodeSize, FSWrite, FSRead syscalls |
