From 8f262d685126a9a9f68beb6d4002ba30bebae401 Mon Sep 17 00:00:00 2001 From: Amlal El Mahrouss Date: Tue, 28 May 2024 11:52:48 +0200 Subject: MHR-23: Improve scheduler code: Dont use 39, write kErrorProcessFault instead. MHR-23: Improve filesystem structure. Signed-off-by: Amlal El Mahrouss --- DDK/KernelCall.c | 25 +++++++++++++++++++++++++ 1 file changed, 25 insertions(+) create mode 100644 DDK/KernelCall.c (limited to 'DDK/KernelCall.c') diff --git a/DDK/KernelCall.c b/DDK/KernelCall.c new file mode 100644 index 00000000..17e0b5d5 --- /dev/null +++ b/DDK/KernelCall.c @@ -0,0 +1,25 @@ +/* ------------------------------------------- + + Copyright SoftwareLabs + + Purpose: Kernel Definitions. + +------------------------------------------- */ + +#include +#include + +DK_EXTERN __attribute__((naked)) void __kernelDispatchCall(int32_t cnt, ...); + +DK_EXTERN void* kernelCall(const char* kernelRpcName, int32_t cnt, ...) +{ + if (!kernelRpcName || cnt == 0) + return NIL; + + va_list arg; + va_start(arg, cnt); + + __kernelDispatchCall(cnt, arg); + + va_end(arg); +} -- cgit v1.2.3 From 9994b8f3f88131f41be1061fb0947177e66dc7b0 Mon Sep 17 00:00:00 2001 From: Amlal EL Mahrouss Date: Wed, 5 Jun 2024 08:28:39 +0200 Subject: MHR-23: Add EPM PDF, add docs in KernelCall.c and fix log in NewFS.cxx Signed-off-by: Amlal EL Mahrouss --- DDK/KernelCall.c | 5 +++++ Kernel/Docs/Explicit Partition Map.pdf | Bin 0 -> 12326 bytes Kernel/KernelKit/PEF.hpp | 2 +- Kernel/Sources/FS/NewFS.cxx | 2 +- 4 files changed, 7 insertions(+), 2 deletions(-) create mode 100644 Kernel/Docs/Explicit Partition Map.pdf (limited to 'DDK/KernelCall.c') diff --git a/DDK/KernelCall.c b/DDK/KernelCall.c index 17e0b5d5..26a0b83b 100644 --- a/DDK/KernelCall.c +++ b/DDK/KernelCall.c @@ -11,6 +11,11 @@ DK_EXTERN __attribute__((naked)) void __kernelDispatchCall(int32_t cnt, ...); +/// @brief Execute a function on the kernel. +/// @param kernelRpcName the name of the function. +/// @param cnt number of arguments. +/// @param +/// @return DK_EXTERN void* kernelCall(const char* kernelRpcName, int32_t cnt, ...) { if (!kernelRpcName || cnt == 0) diff --git a/Kernel/Docs/Explicit Partition Map.pdf b/Kernel/Docs/Explicit Partition Map.pdf new file mode 100644 index 00000000..1e2f5318 Binary files /dev/null and b/Kernel/Docs/Explicit Partition Map.pdf differ diff --git a/Kernel/KernelKit/PEF.hpp b/Kernel/KernelKit/PEF.hpp index 1874aa4e..98a413aa 100644 --- a/Kernel/KernelKit/PEF.hpp +++ b/Kernel/KernelKit/PEF.hpp @@ -44,7 +44,7 @@ namespace NewOS { kPefSubArchAMD, kPefSubArchIntel, - kPefSubArchARM, + kPefSubArchGeneric, kPefSubArchIBM, }; diff --git a/Kernel/Sources/FS/NewFS.cxx b/Kernel/Sources/FS/NewFS.cxx index 5e07fef8..a60fc228 100644 --- a/Kernel/Sources/FS/NewFS.cxx +++ b/Kernel/Sources/FS/NewFS.cxx @@ -46,7 +46,7 @@ _Output NewFork* NewFSParser::CreateFork(_Input NewCatalog* catalog, Lba lba = (theFork.Kind == kNewFSDataForkKind) ? catalog->DataFork : catalog->ResourceFork; - kcout << "Fork Lba: " << hex_number(lba) << endl; + kcout << "newoskrnl: fork lba: " << hex_number(lba) << endl; if (lba <= kNewFSCatalogStartAddress) return nullptr; -- cgit v1.2.3