summaryrefslogtreecommitdiffhomepage
path: root/Kernel
diff options
context:
space:
mode:
authorAmlal EL Mahrouss <amlalelmahrouss@icloud.com>2024-06-23 09:13:17 +0200
committerAmlal EL Mahrouss <amlalelmahrouss@icloud.com>2024-06-23 12:10:54 +0200
commit7738550a55d6fa79447d0298c53fe6320a3135b2 (patch)
tree4435be57e57e1f99f0fc808ccd868edc2bb2d219 /Kernel
parent65e428a5a2b4eac24cccf5defe64d52faba8304d (diff)
FIX: Fix BootKit filesystem write, Fs and Name field wasnt written
correctly. Signed-off-by: Amlal EL Mahrouss <amlalelmahrouss@icloud.com>
Diffstat (limited to 'Kernel')
-rw-r--r--Kernel/Sources/FS/NewFS.cxx4
-rw-r--r--Kernel/Sources/PEFCodeManager.cxx10
2 files changed, 8 insertions, 6 deletions
diff --git a/Kernel/Sources/FS/NewFS.cxx b/Kernel/Sources/FS/NewFS.cxx
index 541b7eef..5c5b50ca 100644
--- a/Kernel/Sources/FS/NewFS.cxx
+++ b/Kernel/Sources/FS/NewFS.cxx
@@ -497,6 +497,7 @@ bool NewFSParser::Format(_Input _Output DriveTrait* drive)
BootBlockType* epmBoot = (BootBlockType*)bufEpmHdr;
constexpr auto cFsName = "NewFS";
+ constexpr auto cBlockName = "Zeta:";
rt_copy_memory(reinterpret_cast<VoidPtr>(const_cast<Char*>(cFsName)), epmBoot->Fs, rt_string_len(cFsName));
@@ -505,8 +506,7 @@ bool NewFSParser::Format(_Input _Output DriveTrait* drive)
epmBoot->SectorSz = partBlock->SectorSize;
epmBoot->NumBlocks = partBlock->CatalogCount;
- rt_copy_memory(reinterpret_cast<VoidPtr>(const_cast<Char*>("BOOT:")), epmBoot->Name, rt_string_len("BOOT:"));
-
+ rt_copy_memory(reinterpret_cast<VoidPtr>(const_cast<Char*>(cBlockName)), epmBoot->Name, rt_string_len(cBlockName));
rt_copy_memory(reinterpret_cast<VoidPtr>(const_cast<Char*>(kEPMMagic)), epmBoot->Magic, rt_string_len(kEPMMagic));
drive->fPacket.fPacketContent = bufEpmHdr;
diff --git a/Kernel/Sources/PEFCodeManager.cxx b/Kernel/Sources/PEFCodeManager.cxx
index f8b50e56..12ca9b10 100644
--- a/Kernel/Sources/PEFCodeManager.cxx
+++ b/Kernel/Sources/PEFCodeManager.cxx
@@ -20,14 +20,16 @@ namespace NewOS
/// @brief Get the PEF platform signature according to the compiled backebnd
UInt32 rt_get_pef_platform(void) noexcept
{
-#ifdef __32x0__
+#ifdef __NEWOS_32X0__
return kPefArch32x0;
-#elif defined(__64x0__)
+#elif defined(__NEWOS_64X0__)
return kPefArch64x0;
-#elif defined(__x86_64__)
+#elif defined(__NEWOS_AMD64__)
return kPefArchAMD64;
-#elif defined(__powerpc64__)
+#elif defined(__NEWOS_PPC64__)
return kPefArchPowerPC;
+#elif defined(__NEWOS_ARM64__)
+ return kPefArchARM64;
#else
return kPefArchInvalid;
#endif // __32x0__ || __64x0__ || __x86_64__