diff options
| author | Amlal <amlal.elmahrouss@icloud.com> | 2025-02-14 21:34:09 +0100 |
|---|---|---|
| committer | Amlal <amlal.elmahrouss@icloud.com> | 2025-02-14 21:34:09 +0100 |
| commit | 0db25895168df6ebb9bd8781e3ffd83d3323b398 (patch) | |
| tree | 4687d3756b875b512360b2f2a4788b73897a8c17 /dev/Kernel/src | |
| parent | cb1c2ac48b29309406580f506765585b13f59852 (diff) | |
A set of patches and necessary changes given to the OS.
Signed-off-by: Amlal <amlal.elmahrouss@icloud.com>
Diffstat (limited to 'dev/Kernel/src')
| -rw-r--r-- | dev/Kernel/src/DriveMgr.cc | 20 | ||||
| -rw-r--r-- | dev/Kernel/src/FS/NeFS.cc | 26 | ||||
| -rw-r--r-- | dev/Kernel/src/KString.cc | 4 |
3 files changed, 29 insertions, 21 deletions
diff --git a/dev/Kernel/src/DriveMgr.cc b/dev/Kernel/src/DriveMgr.cc index bc3caeac..4240f158 100644 --- a/dev/Kernel/src/DriveMgr.cc +++ b/dev/Kernel/src/DriveMgr.cc @@ -24,6 +24,10 @@ namespace Kernel STATIC UInt8 kATAMaster = 0U; #endif +#if defined(__AHCI__) + STATIC UInt16 kAHCIPortsImplemented = 0UL; +#endif + /// @brief reads from an ATA drive. /// @param pckt Packet structure (fPacketContent must be non null) /// @return @@ -42,7 +46,10 @@ namespace Kernel Void io_drv_output(DriveTrait::DrivePacket pckt) { if (pckt.fPacketReadOnly) + { + pckt.fPacketGood = NO; return; + } #ifdef __AHCI__ drv_std_write(pckt.fPacketLba, (Char*)pckt.fPacketContent, kAHCISectorSize, pckt.fPacketSize); @@ -59,10 +66,8 @@ namespace Kernel #if defined(__ATA_PIO__) || defined(__ATA_DMA__) kATAMaster = 0; kATAIO = 0; -#endif -#if defined(__ATA_PIO__) || defined(__ATA_DMA__) - kATAMaster = true; + kATAMaster = YES; kATAIO = ATA_PRIMARY_IO; if (drv_std_init(kATAIO, kATAMaster, kATAIO, kATAMaster)) @@ -71,22 +76,25 @@ namespace Kernel return; } - kATAMaster = false; + kATAMaster = NO; kATAIO = ATA_SECONDARY_IO; if (!drv_std_init(kATAIO, kATAMaster, kATAIO, kATAMaster)) { + pckt.fPacketGood = YES; return; } pckt.fPacketGood = YES; #elif defined(__AHCI__) - UInt16 pi = 0; + kAHCIPortsImplemented = 0; - if (!drv_std_init(pi)) + if (!drv_std_init(kAHCIPortsImplemented)) { return; } + + pckt.fPacketGood = YES; #endif // if defined(__ATA_PIO__) || defined (__ATA_DMA__) } diff --git a/dev/Kernel/src/FS/NeFS.cc b/dev/Kernel/src/FS/NeFS.cc index bde2daa0..24a03704 100644 --- a/dev/Kernel/src/FS/NeFS.cc +++ b/dev/Kernel/src/FS/NeFS.cc @@ -79,7 +79,7 @@ _Output BOOL NeFileSystemParser::CreateFork(_Input NEFS_FORK_STRUCT& the_fork) if (lba < kNeFSCatalogStartAddress) return NO; - auto drv = kMountpoint.A(); + auto& drv = kMountpoint.A(); Lba lba_prev = lba; @@ -165,10 +165,10 @@ _Output BOOL NeFileSystemParser::CreateFork(_Input NEFS_FORK_STRUCT& the_fork) /// @return the fork. /***********************************************************************************/ _Output NEFS_FORK_STRUCT* NeFileSystemParser::FindFork(_Input NEFS_CATALOG_STRUCT* catalog, - _Input const Char* name, - Boolean isDataFork) + _Input const Char* name, + Boolean isDataFork) { - auto drive = kMountpoint.A(); + auto& drive = kMountpoint.A(); NEFS_FORK_STRUCT* the_fork = nullptr; Lba lba = isDataFork ? catalog->DataFork : catalog->ResourceFork; @@ -231,7 +231,7 @@ _Output NEFS_CATALOG_STRUCT* NeFileSystemParser::CreateCatalog(_Input const Char /// @param kind the catalog kind. /// @return catalog pointer. /***********************************************************************************/ -_Output NEFS_CATALOG_STRUCT* NeFileSystemParser::CreateCatalog(_Input const Char* name, +_Output NEFS_CATALOG_STRUCT* NeFileSystemParser::CreateCatalog(_Input const Char* name, _Input const Int32& flags, _Input const Int32& kind) { @@ -301,7 +301,7 @@ _Output NEFS_CATALOG_STRUCT* NeFileSystemParser::CreateCatalog(_Input const Char NEFS_CATALOG_STRUCT* catalog = this->FindCatalog(parent_name, out_lba); - auto drive = kMountpoint.A(); + auto& drive = kMountpoint.A(); constexpr auto kNeFSCatalogPadding = 4; @@ -553,13 +553,13 @@ bool NeFileSystemParser::Format(_Input _Output DriveTrait* drive, _Input const L part_block->Version = kNeFSVersionInteger; - const auto cUntitledHD = part_name; + const auto kNeFSUntitledHD = part_name; rt_copy_memory((VoidPtr)kNeFSIdent, (VoidPtr)part_block->Ident, kNeFSIdentLen); - rt_copy_memory((VoidPtr)cUntitledHD, (VoidPtr)part_block->PartitionName, - rt_string_len(cUntitledHD)); + rt_copy_memory((VoidPtr)kNeFSUntitledHD, (VoidPtr)part_block->PartitionName, + rt_string_len(kNeFSUntitledHD)); SizeT catalogCount = 0UL; @@ -623,7 +623,7 @@ bool NeFileSystemParser::WriteCatalog(_Input const Char* catalog_name, Bool is_r rt_copy_memory(data, buf, size_of_data); - auto drive = kMountpoint.A(); + auto& drive = kMountpoint.A(); rt_copy_memory((VoidPtr) "fs/nefs-packet", drive.fPacket.fPacketMime, rt_string_len("fs/nefs-packet")); @@ -885,7 +885,7 @@ _Output Boolean NeFileSystemParser::RemoveCatalog(_Input const Char* catalog_nam catalog->Flags &= (~kNeFSFlagCreated); catalog->Flags |= kNeFSFlagDeleted; - auto drive = kMountpoint.A(); + auto& drive = kMountpoint.A(); rt_copy_memory((VoidPtr) "fs/nefs-packet", drive.fPacket.fPacketMime, rt_string_len("fs/nefs-packet")); @@ -936,7 +936,7 @@ _Output Boolean NeFileSystemParser::RemoveCatalog(_Input const Char* catalog_nam VoidPtr NeFileSystemParser::ReadCatalog(_Input _Output NEFS_CATALOG_STRUCT* catalog, _Input Bool is_rsrc_fork, _Input SizeT dataSz, - _Input const Char* forkName) + _Input const Char* forkName) { if (!catalog) { @@ -951,7 +951,7 @@ VoidPtr NeFileSystemParser::ReadCatalog(_Input _Output NEFS_CATALOG_STRUCT* cata << ", fork: " << hex_number(dataForkLba) << endl; NEFS_FORK_STRUCT* fs_buf = new NEFS_FORK_STRUCT(); - auto drive = kMountpoint.A(); + auto& drive = kMountpoint.A(); rt_copy_memory((VoidPtr) "fs/nefs-packet", drive.fPacket.fPacketMime, rt_string_len("fs/nefs-packet")); diff --git a/dev/Kernel/src/KString.cc b/dev/Kernel/src/KString.cc index e30d6fe1..590db984 100644 --- a/dev/Kernel/src/KString.cc +++ b/dev/Kernel/src/KString.cc @@ -100,7 +100,7 @@ namespace Kernel return ("?"); const Char* boolean_expr = i ? "YES" : "NO"; - Char* ret = (Char*)rtl_alloca((sizeof(char) * i) ? 4 : 5 + rt_string_len(fmt)); + Char* ret = (Char*)RTL_ALLOCA((sizeof(char) * i) ? 4 : 5 + rt_string_len(fmt)); if (!ret) return ("?"); @@ -160,7 +160,7 @@ namespace Kernel return ("?"); Char* ret = - (Char*)rtl_alloca(sizeof(char) * rt_string_len(fmt2) + rt_string_len(fmt)); + (Char*)RTL_ALLOCA(sizeof(char) * rt_string_len(fmt2) + rt_string_len(fmt)); if (!ret) return ("?"); |
