diff options
| author | Amlal EL Mahrouss <amlalelmahrouss@icloud.com> | 2024-07-26 09:18:51 +0200 |
|---|---|---|
| committer | Amlal EL Mahrouss <amlalelmahrouss@icloud.com> | 2024-07-26 09:18:51 +0200 |
| commit | 14769b940725a9e323d237179e812ccfdae08382 (patch) | |
| tree | 67892a70fc54e30373442acaae6a4058ce3a983e /DDK | |
| parent | 31f1293d3192e0910906858aded1aca88c6ef4c5 (diff) | |
[IMP] DDK compiles as a DLL now.
[IMP] DDK versioning symbols.
[UPD] manifest.json of NetBoot has been updated.
[UPD] update OS-Design.drawio to replace launcher to UI and CF and CG at
the same level, SCI is the lowest level of abstraction as it should be.
Signed-off-by: Amlal EL Mahrouss <amlalelmahrouss@icloud.com>
Diffstat (limited to 'DDK')
| -rw-r--r-- | DDK/KernelAlloc.c | 2 | ||||
| -rw-r--r-- | DDK/KernelCall.c | 2 | ||||
| -rw-r--r-- | DDK/KernelCxxRt.cxx | 2 | ||||
| -rw-r--r-- | DDK/KernelDev.c | 2 | ||||
| -rw-r--r-- | DDK/KernelDev.h | 2 | ||||
| -rw-r--r-- | DDK/KernelPrint.c | 2 | ||||
| -rw-r--r-- | DDK/KernelPrint.h | 2 | ||||
| -rw-r--r-- | DDK/KernelStd.h | 15 | ||||
| -rw-r--r-- | DDK/KernelString.c | 2 | ||||
| -rw-r--r-- | DDK/KernelString.h | 2 | ||||
| -rw-r--r-- | DDK/KernelVersion.c | 21 | ||||
| -rw-r--r-- | DDK/x86_64.make | 14 |
12 files changed, 56 insertions, 12 deletions
diff --git a/DDK/KernelAlloc.c b/DDK/KernelAlloc.c index 17e49d6a..1eadd4e2 100644 --- a/DDK/KernelAlloc.c +++ b/DDK/KernelAlloc.c @@ -2,7 +2,7 @@ Copyright ZKA Technologies - Purpose: Standard library. + Purpose: DDK allocator. ------------------------------------------- */ diff --git a/DDK/KernelCall.c b/DDK/KernelCall.c index 18d544ef..ffc2ded6 100644 --- a/DDK/KernelCall.c +++ b/DDK/KernelCall.c @@ -2,7 +2,7 @@ Copyright ZKA Technologies - Purpose: Kernel Definitions. + Purpose: DDK kernel call. ------------------------------------------- */ diff --git a/DDK/KernelCxxRt.cxx b/DDK/KernelCxxRt.cxx index 8a5f4c66..08fab7b9 100644 --- a/DDK/KernelCxxRt.cxx +++ b/DDK/KernelCxxRt.cxx @@ -2,7 +2,7 @@ Copyright ZKA Technologies - Purpose: Driver C++ Definitions. + Purpose: DDK C++ runtime. ------------------------------------------- */ diff --git a/DDK/KernelDev.c b/DDK/KernelDev.c index a7c29b9e..07a64bdd 100644 --- a/DDK/KernelDev.c +++ b/DDK/KernelDev.c @@ -2,7 +2,7 @@ Copyright ZKA Technologies - Purpose: Kernel Text I/O. + Purpose: DDK Text I/O. ------------------------------------------- */ diff --git a/DDK/KernelDev.h b/DDK/KernelDev.h index c97c2acc..d7c13a13 100644 --- a/DDK/KernelDev.h +++ b/DDK/KernelDev.h @@ -2,7 +2,7 @@ Copyright ZKA Technologies - Purpose: Kernel Devices. + Purpose: DDK Devices. ------------------------------------------- */ diff --git a/DDK/KernelPrint.c b/DDK/KernelPrint.c index ad14fbf5..eee90e3c 100644 --- a/DDK/KernelPrint.c +++ b/DDK/KernelPrint.c @@ -2,7 +2,7 @@ Copyright ZKA Technologies - Purpose: Kernel Text I/O. + Purpose: DDK Text I/O. ------------------------------------------- */ diff --git a/DDK/KernelPrint.h b/DDK/KernelPrint.h index c7101107..25b702e1 100644 --- a/DDK/KernelPrint.h +++ b/DDK/KernelPrint.h @@ -2,7 +2,7 @@ Copyright ZKA Technologies - Purpose: Kernel Text I/O. + Purpose: DDK Text I/O. ------------------------------------------- */ diff --git a/DDK/KernelStd.h b/DDK/KernelStd.h index af7bb306..5d8af8cd 100644 --- a/DDK/KernelStd.h +++ b/DDK/KernelStd.h @@ -2,7 +2,7 @@ Copyright ZKA Technologies - Purpose: Kernel Definitions. + Purpose: DDK Definitions. ------------------------------------------- */ @@ -44,11 +44,20 @@ DK_EXTERN void* kernelCall(const char* kernelRpcName, int32_t cnt, void* dat, si /// @param slotFn, syscall slot. DK_EXTERN void kernelAddSyscall(const int slot, void (*slotFn)(void* a0)); -/// @brief allocate ptr. +/// @brief allocate heap ptr. /// @param sz size of ptr. /// @return the pointer allocated or **nil**. DK_EXTERN void* kernelAlloc(size_t sz); -/// @brief allocate ptr. +/// @brief free heap ptr. /// @param pointer to free DK_EXTERN void kernelFree(void*); + +/// @brief The highest API version of the DDK. +DK_EXTERN int32_t c_api_version_highest; + +/// @brief The lowest API version of the DDK. +DK_EXTERN int32_t c_api_version_least; + +/// @brief c_api_version_least+c_api_version_highest combined version. +DK_EXTERN int32_t c_api_version;
\ No newline at end of file diff --git a/DDK/KernelString.c b/DDK/KernelString.c index 52e71e0f..2cb6adcc 100644 --- a/DDK/KernelString.c +++ b/DDK/KernelString.c @@ -2,7 +2,7 @@ Copyright ZKA Technologies - Purpose: Kernel Strings. + Purpose: DDK Strings. ------------------------------------------- */ diff --git a/DDK/KernelString.h b/DDK/KernelString.h index 0d244dc8..dd6fdce6 100644 --- a/DDK/KernelString.h +++ b/DDK/KernelString.h @@ -2,7 +2,7 @@ Copyright ZKA Technologies - Purpose: Kernel Strings. + Purpose: DDK Strings. ------------------------------------------- */ diff --git a/DDK/KernelVersion.c b/DDK/KernelVersion.c new file mode 100644 index 00000000..0f27d345 --- /dev/null +++ b/DDK/KernelVersion.c @@ -0,0 +1,21 @@ +/* -------------------------------------------
+
+ Copyright ZKA Technologies
+
+ Purpose: DDK versioning.
+
+------------------------------------------- */
+
+#include <KernelStd.h>
+
+#ifndef cDDKVersionHighest
+#define cDDKVersionHighest 1
+#endif // cDDKVersionHighest
+
+#ifndef cDDKVersionLowest
+#define cDDKVersionLowest 1
+#endif // cDDKVersionLowest
+
+int32_t c_api_version_highest = cDDKVersionHighest;
+int32_t c_api_version_least = cDDKVersionLowest;
+int32_t c_api_version = cDDKVersionHighest | cDDKVersionLowest;
\ No newline at end of file diff --git a/DDK/x86_64.make b/DDK/x86_64.make new file mode 100644 index 00000000..61cafeee --- /dev/null +++ b/DDK/x86_64.make @@ -0,0 +1,14 @@ +##################################################
+# (C) ZKA Technologies, all rights reserved.
+# This is the DDK's makefile.
+##################################################
+
+CC=x86_64-w64-mingw32-gcc
+INC=-I./ -I../
+FLAGS=-ffreestanding -shared -std=c17 -std=c++20 -fno-rtti -fno-exceptions -D__DDK_AMD64__ -Wl,--subsystem=17
+VERSION=-DcDDKVersionLowest=1 -DcDDKVersionHighest=1
+OUTPUT=libDDK.dll
+
+.PHONY: all
+all:
+ $(CC) $(INC) $(FLAGS) $(VERSION) $(wildcard *.c) $(wildcard *.S) $(wildcard *.cxx) -o $(OUTPUT)
\ No newline at end of file |
