summaryrefslogtreecommitdiffhomepage
path: root/Private/FSKit
diff options
context:
space:
mode:
authorAmlal El Mahrouss <amlalelmahrouss@icloud.com>2024-02-02 11:39:57 +0000
committerAmlal El Mahrouss <amlalelmahrouss@icloud.com>2024-02-02 11:39:57 +0000
commit05eca8d3061b60eac0a652a4b1e39269a9af79e8 (patch)
treeaef93af31d679cc5e9ee251f937b5554d0d978c1 /Private/FSKit
parentf08c864e988f6f1f01985910955755220b37ecc8 (diff)
parent167ef193e25aa58e962620558b8e2685cbded476 (diff)
Merge branch 'HCR-9-add-support-for-file-load-hel-amd64' into 'trunk'
Bootloader: Getting it done now. See merge request mahrouss-logic/micro-kernel!4
Diffstat (limited to 'Private/FSKit')
-rw-r--r--Private/FSKit/NewFS.hxx27
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