diff options
| author | Amlal El Mahrouss <amlal.elmahrouss@icloud.com> | 2024-08-23 18:20:04 +0200 |
|---|---|---|
| committer | Amlal El Mahrouss <amlal.elmahrouss@icloud.com> | 2024-08-23 18:20:04 +0200 |
| commit | bac8c9a8306e1582ef24ba68a412a29674c97775 (patch) | |
| tree | 956155581fdb44fb6c82673a5f71a00cc6f4c89c /dev/ZKA/Sources | |
| parent | 73e0c81b5c8325db7aaec773fcc657f3ef50b0b8 (diff) | |
[IMP/WIP] AHCI disk driver for kernel DLL.
Signed-off-by: Amlal El Mahrouss <amlal.elmahrouss@icloud.com>
Diffstat (limited to 'dev/ZKA/Sources')
| -rw-r--r-- | dev/ZKA/Sources/CxxAbi-ARM64.cxx | 4 | ||||
| -rw-r--r-- | dev/ZKA/Sources/DriveManager.cxx | 7 | ||||
| -rw-r--r-- | dev/ZKA/Sources/FileManager.cxx | 4 | ||||
| -rw-r--r-- | dev/ZKA/Sources/New+Delete.cxx | 2 | ||||
| -rw-r--r-- | dev/ZKA/Sources/PEFCodeManager.cxx | 8 | ||||
| -rw-r--r-- | dev/ZKA/Sources/PageAllocator.cxx | 4 | ||||
| -rw-r--r-- | dev/ZKA/Sources/PageManager.cxx | 4 | ||||
| -rw-r--r-- | dev/ZKA/Sources/Pmm.cxx | 4 | ||||
| -rw-r--r-- | dev/ZKA/Sources/User.cxx | 6 |
9 files changed, 25 insertions, 18 deletions
diff --git a/dev/ZKA/Sources/CxxAbi-ARM64.cxx b/dev/ZKA/Sources/CxxAbi-ARM64.cxx index b0cb7354..798cecab 100644 --- a/dev/ZKA/Sources/CxxAbi-ARM64.cxx +++ b/dev/ZKA/Sources/CxxAbi-ARM64.cxx @@ -4,7 +4,7 @@ ------------------------------------------- */ -#ifdef __NEWOS_ARM64__ +#ifdef __ZKA_ARM64__ #include <KernelKit/DebugOutput.hxx> #include <NewKit/CxxAbi.hxx> @@ -71,4 +71,4 @@ EXTERN_C void _purecall() Kernel::kcout << "newoskrnl: C++ placeholder method.\n"; } -#endif // ifdef __NEWOS_ARM64__ +#endif // ifdef __ZKA_ARM64__ diff --git a/dev/ZKA/Sources/DriveManager.cxx b/dev/ZKA/Sources/DriveManager.cxx index b26c2c16..c4cebc3f 100644 --- a/dev/ZKA/Sources/DriveManager.cxx +++ b/dev/ZKA/Sources/DriveManager.cxx @@ -46,7 +46,7 @@ namespace Kernel } #ifdef __AHCI__ - drv_std_write(pckt->fLba, (Char*)pckt->fPacketContent, kATASectorSize, pckt->fPacketSize); + drv_std_write(pckt->fLba, (Char*)pckt->fPacketContent, kAHCISectorSize, pckt->fPacketSize); #elif defined(__ATA_PIO__) || defined(__ATA_DMA__) drv_std_write(pckt->fLba, kATAIO, kATAMaster, (Char*)pckt->fPacketContent, kATASectorSize, pckt->fPacketSize); #endif @@ -69,6 +69,9 @@ namespace Kernel kATAIO = ATA_PRIMARY_IO; MUST_PASS(drv_std_init(kATAIO, kATAMaster, kATAIO, kATAMaster)); +#elif defined(__AHCI__) + UInt16 pi = 0; + MUST_PASS(drv_std_init(pi)); #endif // if defined(__ATA_PIO__) || defined (__ATA_DMA__) pckt->fPacketGood = true; @@ -111,7 +114,7 @@ namespace Kernel { DriveTrait trait; - rt_copy_memory((VoidPtr) "/Mount/Null", trait.fName, rt_string_len("/Mount/Null")); + rt_copy_memory((VoidPtr) "\\NUL", trait.fName, rt_string_len("\\NUL")); trait.fKind = kInvalidDrive; trait.fInput = io_drv_unimplemented; diff --git a/dev/ZKA/Sources/FileManager.cxx b/dev/ZKA/Sources/FileManager.cxx index 92245f4f..0912da27 100644 --- a/dev/ZKA/Sources/FileManager.cxx +++ b/dev/ZKA/Sources/FileManager.cxx @@ -119,7 +119,7 @@ namespace Kernel if (!data) return; - NEWOS_UNUSED(flags); + ZKA_UNUSED(flags); if ((reinterpret_cast<NFS_CATALOG_STRUCT*>(node))->Kind == kNewFSCatalogKindFile) fImpl->WriteCatalog(reinterpret_cast<NFS_CATALOG_STRUCT*>(node), (flags & cFileFlagRsrc ? true : false), data, size, @@ -137,7 +137,7 @@ namespace Kernel if (!sz) return nullptr; - NEWOS_UNUSED(flags); + ZKA_UNUSED(flags); if ((reinterpret_cast<NFS_CATALOG_STRUCT*>(node))->Kind == kNewFSCatalogKindFile) return fImpl->ReadCatalog(reinterpret_cast<NFS_CATALOG_STRUCT*>(node), (flags & cFileFlagRsrc ? true : false), sz, diff --git a/dev/ZKA/Sources/New+Delete.cxx b/dev/ZKA/Sources/New+Delete.cxx index 12ea38a7..b1a3b611 100644 --- a/dev/ZKA/Sources/New+Delete.cxx +++ b/dev/ZKA/Sources/New+Delete.cxx @@ -44,7 +44,7 @@ void operator delete(void* ptr, size_t sz) if (ptr == nullptr) return; - NEWOS_UNUSED(sz); + ZKA_UNUSED(sz); Kernel::mm_delete_ke_heap(ptr); } diff --git a/dev/ZKA/Sources/PEFCodeManager.cxx b/dev/ZKA/Sources/PEFCodeManager.cxx index 4a729992..f2f1e815 100644 --- a/dev/ZKA/Sources/PEFCodeManager.cxx +++ b/dev/ZKA/Sources/PEFCodeManager.cxx @@ -20,15 +20,15 @@ namespace Kernel /// @brief Get the PEF platform signature according to the compiled backebnd UInt32 rt_get_pef_platform(void) noexcept { -#ifdef __NEWOS_32X0__ +#ifdef __ZKA_32X0__ return kPefArch32x0; -#elif defined(__NEWOS_64X0__) +#elif defined(__ZKA_64X0__) return kPefArch64x0; #elif defined(__ZKA_AMD64__) return kPefArchAMD64; -#elif defined(__NEWOS_PPC64__) +#elif defined(__ZKA_PPC64__) return kPefArchPowerPC; -#elif defined(__NEWOS_ARM64__) +#elif defined(__ZKA_ARM64__) return kPefArchARM64; #else return kPefArchInvalid; diff --git a/dev/ZKA/Sources/PageAllocator.cxx b/dev/ZKA/Sources/PageAllocator.cxx index 4f64b05f..4a07a12d 100644 --- a/dev/ZKA/Sources/PageAllocator.cxx +++ b/dev/ZKA/Sources/PageAllocator.cxx @@ -26,14 +26,14 @@ namespace Kernel::Detail void exec_disable(UIntPtr VirtualAddr) { -#ifdef __NEWOS_SUPPORT_NX__ +#ifdef __ZKA_SUPPORT_NX__ PTE* VirtualAddrTable = reinterpret_cast<PTE*>(VirtualAddr); MUST_PASS(!VirtualAddrTable->ExecDisable == false); VirtualAddrTable->ExecDisable = true; hal_flush_tlb(); -#endif // ifdef __NEWOS_SUPPORT_NX__ +#endif // ifdef __ZKA_SUPPORT_NX__ } bool page_disable(UIntPtr VirtualAddr) diff --git a/dev/ZKA/Sources/PageManager.cxx b/dev/ZKA/Sources/PageManager.cxx index 77dbfd32..549415f3 100644 --- a/dev/ZKA/Sources/PageManager.cxx +++ b/dev/ZKA/Sources/PageManager.cxx @@ -9,9 +9,9 @@ #ifdef __ZKA_AMD64__ #include <HALKit/AMD64/HalPageAlloc.hxx> -#elif defined(__NEWOS_ARM64__) +#elif defined(__ZKA_ARM64__) #include <HALKit/ARM64/HalPageAlloc.hxx> -#endif // ifdef __ZKA_AMD64__ || defined(__NEWOS_ARM64__) +#endif // ifdef __ZKA_AMD64__ || defined(__ZKA_ARM64__) //! null deref will throw (Page Zero detected, aborting app!) #define kProtectedRegionEnd (512) diff --git a/dev/ZKA/Sources/Pmm.cxx b/dev/ZKA/Sources/Pmm.cxx index 62015f41..b0855281 100644 --- a/dev/ZKA/Sources/Pmm.cxx +++ b/dev/ZKA/Sources/Pmm.cxx @@ -7,9 +7,9 @@ #include <KernelKit/DebugOutput.hxx> #include <NewKit/Pmm.hxx> -#if defined(__NEWOS_ARM64__) +#if defined(__ZKA_ARM64__) #include <HALKit/ARM64/Processor.hxx> -#endif // defined(__NEWOS_ARM64__) +#endif // defined(__ZKA_ARM64__) #if defined(__ZKA_AMD64__) #include <HALKit/AMD64/Processor.hxx> diff --git a/dev/ZKA/Sources/User.cxx b/dev/ZKA/Sources/User.cxx index 62b45e25..565f5197 100644 --- a/dev/ZKA/Sources/User.cxx +++ b/dev/ZKA/Sources/User.cxx @@ -186,8 +186,12 @@ namespace Kernel } fCurrentUser = &user; - Kernel::kcout << "newoskrnl: Logged in as: " << fCurrentUser->Name() << Kernel::endl; + if (fCurrentUser->Name()[0]) + Kernel::kcout << "newoskrnl: Logged in as: " << fCurrentUser->Name() << Kernel::endl; + else + + Kernel::kcout << "newoskrnl: Logged in as anon. " << Kernel::endl; return true; } |
