From 3c4efadf68e2071429925ea7f90f73341200a42f Mon Sep 17 00:00:00 2001 From: Amlal El Mahrouss Date: Sun, 31 Mar 2024 22:27:28 +0200 Subject: Kernel: Improve Drive Manager regarding the NewFS support. HCFS is also planned, HCFS is a filesystem made for mass media storages. Signed-off-by: Amlal El Mahrouss --- Private/KernelKit/DriveManager.hxx | 17 ++++++++++++++++- 1 file changed, 16 insertions(+), 1 deletion(-) (limited to 'Private/KernelKit') diff --git a/Private/KernelKit/DriveManager.hxx b/Private/KernelKit/DriveManager.hxx index 36e0b681..d82c302b 100644 --- a/Private/KernelKit/DriveManager.hxx +++ b/Private/KernelKit/DriveManager.hxx @@ -48,6 +48,7 @@ struct DriveTrait final { SizeT fPacketSize; //! packet size UInt32 fPacketCRC32; //! sanity crc, in case if good is set to false Boolean fPacketGood; + Lba fLba; } fPacket; Void (*fInput)(DrivePacket* packetPtr); @@ -91,7 +92,7 @@ class MountpointInterface final { return &mD; default: { DbgLastError() = kErrorNoSuchDisk; - kcout << "NewKernel.exe: No such disk.\n"; + kcout << "NewOS: No such disk.\n"; break; } @@ -103,6 +104,20 @@ class MountpointInterface final { private: DriveDevicePtr mA, mB, mC, mD = nullptr; }; + + +/// @brief Unimplemented drive. +/// @param pckt +/// @return +Void ke_drv_unimplemented(DriveTrait::DrivePacket* pckt); + +/// @brief Makes a new drive. +/// @return the new drive. +DriveTrait construct_drive() noexcept; + +/// @brief Fetches the main drive. +/// @return the new drive. +DriveTrait main_drive() noexcept; } // namespace NewOS #endif /* ifndef __DRIVE_MANAGER__ */ -- cgit v1.2.3