summaryrefslogtreecommitdiffhomepage
diff options
context:
space:
mode:
authorAmlal EL Mahrouss <amlalelmahrouss@icloud.com>2024-07-30 08:49:23 +0200
committerAmlal EL Mahrouss <amlalelmahrouss@icloud.com>2024-07-30 08:49:23 +0200
commitbf642edd6c77d405637f0695452460640b8e540d (patch)
treee8e78f658e5eac62790a0fb8129a491183db92d5
parent60902ec5fc462128d264f63f279c7fc362a72e1d (diff)
[Refactor] SCIKit and DDKit.
[IMP} Prevent DDK from being included when we aren't in kernel mode. Signed-off-by: Amlal EL Mahrouss <amlalelmahrouss@icloud.com>
-rw-r--r--DDKit/DispatchKernelCall.S (renamed from DDK/DispatchKernelCall.S)0
-rw-r--r--DDKit/KernelAlloc.c (renamed from DDK/KernelAlloc.c)2
-rw-r--r--DDKit/KernelCall.c (renamed from DDK/KernelCall.c)2
-rw-r--r--DDKit/KernelCxxRt.cxx (renamed from DDK/KernelCxxRt.cxx)2
-rw-r--r--DDKit/KernelDev.c (renamed from DDK/KernelDev.c)4
-rw-r--r--DDKit/KernelDev.h (renamed from DDK/KernelDev.h)2
-rw-r--r--DDKit/KernelPrint.c (renamed from DDK/KernelPrint.c)2
-rw-r--r--DDKit/KernelPrint.h (renamed from DDK/KernelPrint.h)2
-rw-r--r--DDKit/KernelStd.h (renamed from DDK/KernelStd.h)8
-rw-r--r--DDKit/KernelString.c (renamed from DDK/KernelString.c)2
-rw-r--r--DDKit/KernelString.h (renamed from DDK/KernelString.h)2
-rw-r--r--DDKit/KernelVersion.c (renamed from DDK/KernelVersion.c)0
-rw-r--r--DDKit/ReadMe.md (renamed from DDK/ReadMe.md)0
-rw-r--r--DDKit/compile_flags.txt (renamed from DDK/compile_flags.txt)0
-rw-r--r--DDKit/source_deploy.xml5
-rw-r--r--DDKit/x86_64.make (renamed from DDK/x86_64.make)8
-rw-r--r--SCIKit/ErrorTypes.hxx (renamed from SCI/ErrorTypes.hxx)0
-rw-r--r--SCIKit/Hint.hxx (renamed from SCI/Hint.hxx)0
-rw-r--r--SCIKit/StandardInterface.hxx (renamed from SCI/StandardInterface.hxx)0
-rw-r--r--SCIKit/compile_flags.txt (renamed from SCI/compile_flags.txt)0
-rw-r--r--SCIKit/source_deploy.xml5
-rw-r--r--Samples/.gitkeep0
-rw-r--r--Samples/SampleHAL/CheckStck.c11
-rw-r--r--Samples/SampleHAL/DriverRsrc.rsrc25
-rw-r--r--Samples/SampleHAL/Main.c20
-rw-r--r--Samples/SampleHAL/compile_flags.txt3
-rw-r--r--Samples/SampleHAL/x86_64.mk51
27 files changed, 30 insertions, 126 deletions
diff --git a/DDK/DispatchKernelCall.S b/DDKit/DispatchKernelCall.S
index b6ce8004..b6ce8004 100644
--- a/DDK/DispatchKernelCall.S
+++ b/DDKit/DispatchKernelCall.S
diff --git a/DDK/KernelAlloc.c b/DDKit/KernelAlloc.c
index 1eadd4e2..f1044324 100644
--- a/DDK/KernelAlloc.c
+++ b/DDKit/KernelAlloc.c
@@ -6,7 +6,7 @@
------------------------------------------- */
-#include <DDK/KernelStd.h>
+#include <DDKit/KernelStd.h>
/**
\brief Allocates a new heap on the kernel's side.
diff --git a/DDK/KernelCall.c b/DDKit/KernelCall.c
index ffc2ded6..fb29fc6a 100644
--- a/DDK/KernelCall.c
+++ b/DDKit/KernelCall.c
@@ -6,7 +6,7 @@
------------------------------------------- */
-#include <DDK/KernelStd.h>
+#include <DDKit/KernelStd.h>
#include <stdarg.h>
/// @brief this is an internal call, do not use it.
diff --git a/DDK/KernelCxxRt.cxx b/DDKit/KernelCxxRt.cxx
index 08fab7b9..93980532 100644
--- a/DDK/KernelCxxRt.cxx
+++ b/DDKit/KernelCxxRt.cxx
@@ -6,7 +6,7 @@
------------------------------------------- */
-#include <DDK/KernelStd.h>
+#include <DDKit/KernelStd.h>
void* operator new(size_t sz)
{
diff --git a/DDK/KernelDev.c b/DDKit/KernelDev.c
index 07a64bdd..d0c7570d 100644
--- a/DDK/KernelDev.c
+++ b/DDKit/KernelDev.c
@@ -6,8 +6,8 @@
------------------------------------------- */
-#include <DDK/KernelDev.h>
-#include <DDK/KernelString.h>
+#include <DDKit/KernelDev.h>
+#include <DDKit/KernelString.h>
/// @brief Open a new binary device from path.
DK_EXTERN kernelDeviceRef kernelOpenDevice(const char* devicePath)
diff --git a/DDK/KernelDev.h b/DDKit/KernelDev.h
index d7c13a13..4e640d9d 100644
--- a/DDK/KernelDev.h
+++ b/DDKit/KernelDev.h
@@ -8,7 +8,7 @@
#pragma once
-#include <DDK/KernelStd.h>
+#include <DDKit/KernelStd.h>
struct _kernelDevice;
diff --git a/DDK/KernelPrint.c b/DDKit/KernelPrint.c
index eee90e3c..b7e20d24 100644
--- a/DDK/KernelPrint.c
+++ b/DDKit/KernelPrint.c
@@ -6,7 +6,7 @@
------------------------------------------- */
-#include <DDK/KernelPrint.h>
+#include <DDKit/KernelPrint.h>
DK_EXTERN void kernelPrintChar(const char ch)
{
diff --git a/DDK/KernelPrint.h b/DDKit/KernelPrint.h
index 25b702e1..0556923a 100644
--- a/DDK/KernelPrint.h
+++ b/DDKit/KernelPrint.h
@@ -8,7 +8,7 @@
#pragma once
-#include <DDK/KernelString.h>
+#include <DDKit/KernelString.h>
/// @brief print character into UART.
DK_EXTERN void kernelPrintChar(const char ch);
diff --git a/DDK/KernelStd.h b/DDKit/KernelStd.h
index 5d8af8cd..bdd8ce3d 100644
--- a/DDK/KernelStd.h
+++ b/DDKit/KernelStd.h
@@ -8,6 +8,9 @@
#pragma once
+#include <stdint.h>
+#include <stddef.h>
+
#if defined(__cplusplus)
#define DK_EXTERN extern "C"
#define nil nullptr
@@ -18,8 +21,9 @@
#define DK_FINAL
#endif // defined(__cplusplus)
-#include <stdint.h>
-#include <stddef.h>
+#ifndef __KERNEL__
+#error !!! including header in kernel mode !!!
+#endif // __KERNEL__
struct DDK_STATUS_STRUCT;
diff --git a/DDK/KernelString.c b/DDKit/KernelString.c
index 2cb6adcc..3ef65cf2 100644
--- a/DDK/KernelString.c
+++ b/DDKit/KernelString.c
@@ -6,7 +6,7 @@
------------------------------------------- */
-#include <DDK/KernelString.h>
+#include <DDKit/KernelString.h>
DK_EXTERN size_t kernelStringLength(const char* in)
{
diff --git a/DDK/KernelString.h b/DDKit/KernelString.h
index dd6fdce6..07d33c7e 100644
--- a/DDK/KernelString.h
+++ b/DDKit/KernelString.h
@@ -8,7 +8,7 @@
#pragma once
-#include <DDK/KernelStd.h>
+#include <DDKit/KernelStd.h>
/// @brief DDK equivalent of POSIX's string.h
/// @file kernelString.h
diff --git a/DDK/KernelVersion.c b/DDKit/KernelVersion.c
index 0f27d345..0f27d345 100644
--- a/DDK/KernelVersion.c
+++ b/DDKit/KernelVersion.c
diff --git a/DDK/ReadMe.md b/DDKit/ReadMe.md
index cde81cf7..cde81cf7 100644
--- a/DDK/ReadMe.md
+++ b/DDKit/ReadMe.md
diff --git a/DDK/compile_flags.txt b/DDKit/compile_flags.txt
index 48dfa8fe..48dfa8fe 100644
--- a/DDK/compile_flags.txt
+++ b/DDKit/compile_flags.txt
diff --git a/DDKit/source_deploy.xml b/DDKit/source_deploy.xml
new file mode 100644
index 00000000..6a03fdf8
--- /dev/null
+++ b/DDKit/source_deploy.xml
@@ -0,0 +1,5 @@
+<SourceDeploy>
+<HiddenFiles>
+ <SourceFile>*.cxx, *.c, *.S</SourceFile>
+</HiddenFiles>
+</SourceDeploy>
diff --git a/DDK/x86_64.make b/DDKit/x86_64.make
index 61cafeee..f261d432 100644
--- a/DDK/x86_64.make
+++ b/DDKit/x86_64.make
@@ -5,10 +5,10 @@
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
+FLAGS=-ffreestanding -shared -std=c17 -std=c++20 -D__KERNEL__ -fno-rtti -fno-exceptions -D__DDK_AMD64__ -Wl,--subsystem=17
VERSION=-DcDDKVersionLowest=1 -DcDDKVersionHighest=1
-OUTPUT=libDDK.dll
+OUTPUT=libDDK.so
-.PHONY: all
-all:
+.PHONY: x86_64-build
+x86_64-build:
$(CC) $(INC) $(FLAGS) $(VERSION) $(wildcard *.c) $(wildcard *.S) $(wildcard *.cxx) -o $(OUTPUT) \ No newline at end of file
diff --git a/SCI/ErrorTypes.hxx b/SCIKit/ErrorTypes.hxx
index 041786ba..041786ba 100644
--- a/SCI/ErrorTypes.hxx
+++ b/SCIKit/ErrorTypes.hxx
diff --git a/SCI/Hint.hxx b/SCIKit/Hint.hxx
index fd91ece9..fd91ece9 100644
--- a/SCI/Hint.hxx
+++ b/SCIKit/Hint.hxx
diff --git a/SCI/StandardInterface.hxx b/SCIKit/StandardInterface.hxx
index 9e792546..9e792546 100644
--- a/SCI/StandardInterface.hxx
+++ b/SCIKit/StandardInterface.hxx
diff --git a/SCI/compile_flags.txt b/SCIKit/compile_flags.txt
index 509e3eed..509e3eed 100644
--- a/SCI/compile_flags.txt
+++ b/SCIKit/compile_flags.txt
diff --git a/SCIKit/source_deploy.xml b/SCIKit/source_deploy.xml
new file mode 100644
index 00000000..088bbb75
--- /dev/null
+++ b/SCIKit/source_deploy.xml
@@ -0,0 +1,5 @@
+<SourceDeploy>
+<HiddenFiles>
+ <SourceFile>*.cxx</SourceFile>
+</HiddenFiles>
+</SourceDeploy>
diff --git a/Samples/.gitkeep b/Samples/.gitkeep
deleted file mode 100644
index e69de29b..00000000
--- a/Samples/.gitkeep
+++ /dev/null
diff --git a/Samples/SampleHAL/CheckStck.c b/Samples/SampleHAL/CheckStck.c
deleted file mode 100644
index 54b6bc5d..00000000
--- a/Samples/SampleHAL/CheckStck.c
+++ /dev/null
@@ -1,11 +0,0 @@
-/* -------------------------------------------
-
- Copyright ZKA Technologies
-
-------------------------------------------- */
-
-///! @brief Use this to check your stack, if using MinGW/MSVC/CodeTools.
-void ___chkstk_ms(void)
-{
- (void)0;
-}
diff --git a/Samples/SampleHAL/DriverRsrc.rsrc b/Samples/SampleHAL/DriverRsrc.rsrc
deleted file mode 100644
index 45caf4db..00000000
--- a/Samples/SampleHAL/DriverRsrc.rsrc
+++ /dev/null
@@ -1,25 +0,0 @@
-1 ICON "../../Icons/default.ico"
-
-1 VERSIONINFO
-FILEVERSION 1,0,0,0
-PRODUCTVERSION 1,0,0,0
-BEGIN
- BLOCK "StringFileInfo"
- BEGIN
- BLOCK "080904E4"
- BEGIN
- VALUE "CompanyName", "ZKA Technologies"
- VALUE "FileDescription", "ZKA HAL."
- VALUE "FileVersion", "1.00"
- VALUE "InternalName", "SampleHAL"
- VALUE "LegalCopyright", "Copyright ZKA Technologies, all rights reserved."
- VALUE "OriginalFilename", "SampleHAL.exe"
- VALUE "ProductName", "SampleHAL"
- VALUE "ProductVersion", "1.00"
- END
- END
- BLOCK "VarFileInfo"
- BEGIN
- VALUE "Translation", 0x809, 1252
- END
-END
diff --git a/Samples/SampleHAL/Main.c b/Samples/SampleHAL/Main.c
deleted file mode 100644
index 9d1510ea..00000000
--- a/Samples/SampleHAL/Main.c
+++ /dev/null
@@ -1,20 +0,0 @@
-/* -------------------------------------------
-
- Copyright ZKA Technologies
-
-------------------------------------------- */
-
-#include <DDK/KernelString.h>
-#include <DDK/KernelPrint.h>
-
-int __at_enter(void)
-{
- kernelPrintStr("SampleHAL: Starting up...\r");
- return 0;
-}
-
-int __at_exit(void)
-{
- kernelPrintStr("SampleHAL: Shutting down...\r");
- return 0;
-}
diff --git a/Samples/SampleHAL/compile_flags.txt b/Samples/SampleHAL/compile_flags.txt
deleted file mode 100644
index 10bdb71e..00000000
--- a/Samples/SampleHAL/compile_flags.txt
+++ /dev/null
@@ -1,3 +0,0 @@
--I../../
--I../../Kernel
--std=c++20
diff --git a/Samples/SampleHAL/x86_64.mk b/Samples/SampleHAL/x86_64.mk
deleted file mode 100644
index 2fa20d1a..00000000
--- a/Samples/SampleHAL/x86_64.mk
+++ /dev/null
@@ -1,51 +0,0 @@
-##################################################
-# (C) ZKA Technologies, all rights reserved.
-# This is the sample driver makefile.
-##################################################
-
-CC_GNU=x86_64-w64-mingw32-gcc
-LD_GNU=x86_64-w64-mingw32-ld
-
-WINDRES=x86_64-w64-mingw32-windres
-
-ADD_FILE=touch
-COPY=cp
-HTTP_GET=wget
-
-LD_FLAGS=-e __at_enter --subsystem=17
-
-OBJ=*.o
-
-
-REM=rm
-REM_FLAG=-f
-
-FLAG_ASM=-f win64
-FLAG_GNU=-fshort-wchar -D__EFI_x86_64__ -mgeneral-regs-only -mno-red-zone -D__KERNEL__ -DEFI_FUNCTION_WRAPPER -I../ -I../../ -I./ -c -ffreestanding -std=c17 -D__HAVE_MAHROUSS_APIS__ -D__MAHROUSS__ -D__BOOTLOADER__ -I./
-
-.PHONY: invalid-recipe
-invalid-recipe:
- @echo "invalid-recipe: Use make all instead."
-
-.PHONY: all
-all: compile-amd64
- $(LD_GNU) $(OBJ) $(LD_FLAGS) -o SampleHAL.exe
-
-ifneq ($(DEBUG_SUPPORT), )
-DEBUG = -D__DEBUG__
-endif
-
-.PHONY: compile-amd64
-compile-amd64:
- $(WINDRES) DriverRsrc.rsrc -O coff -o DriverRsrc.o
- $(CC_GNU) $(FLAG_GNU) $(DEBUG) $(wildcard *.c) $(wildcard ../../DDK/*.c) $(wildcard ../../DDK/*.S)
-
-.PHONY: clean
-clean:
- $(REM) $(REM_FLAG) $(OBJ) SampleHAL.exe
-
-.PHONY: help
-help:
- @echo "=== HELP ==="
- @echo "clean: Clean driver."
- @echo "compile-amd64: Build driver."