summaryrefslogtreecommitdiffhomepage
diff options
context:
space:
mode:
-rw-r--r--.vscode/c_cpp_properties.json12
-rw-r--r--DriverKit/KernelCall.c (renamed from Kernel/DriverKit/KernelCall.c)0
-rw-r--r--DriverKit/KernelDev.c (renamed from Kernel/DriverKit/KernelDev.c)0
-rw-r--r--DriverKit/KernelDev.h (renamed from Kernel/DriverKit/KernelDev.h)0
-rw-r--r--DriverKit/KernelDispatchCall.S (renamed from Kernel/DriverKit/KernelDispatchCall.S)0
-rw-r--r--DriverKit/KernelPrint.c (renamed from Kernel/DriverKit/KernelPrint.c)0
-rw-r--r--DriverKit/KernelPrint.h (renamed from Kernel/DriverKit/KernelPrint.h)0
-rw-r--r--DriverKit/KernelStd.h (renamed from Kernel/DriverKit/KernelStd.h)0
-rw-r--r--DriverKit/KernelStdCxx.cc (renamed from Kernel/DriverKit/KernelStdCxx.cc)2
-rw-r--r--DriverKit/KernelString.c (renamed from Kernel/DriverKit/KernelString.c)0
-rw-r--r--DriverKit/KernelString.h (renamed from Kernel/DriverKit/KernelString.h)0
-rw-r--r--DriverKit/ReadMe.txt4
-rw-r--r--Drivers/.gitkeep (renamed from Kernel/Drivers/.gitkeep)0
-rw-r--r--Drivers/Bonjour/Bonjour.c (renamed from Kernel/Drivers/Bonjour/Bonjour.c)0
-rw-r--r--Drivers/Bonjour/DriverRsrc.rsrc (renamed from Kernel/Drivers/Bonjour/DriverRsrc.rsrc)0
-rw-r--r--Drivers/Bonjour/x86_64.mk (renamed from Kernel/Drivers/Bonjour/x86_64.mk)1
-rw-r--r--Drivers/DynamicLoader/DriverRsrc.rsrc (renamed from Kernel/Drivers/SampleDriver/DriverRsrc.rsrc)0
-rw-r--r--Drivers/DynamicLoader/DynamicLoader.c26
-rw-r--r--Drivers/DynamicLoader/x86_64.mk (renamed from Kernel/Drivers/SampleDriver/x86_64.mk)1
-rw-r--r--Drivers/SampleDriver/DriverRsrc.rsrc (renamed from Kernel/Drivers/MahroussUpdate/DriverRsrc.rsrc)10
-rw-r--r--Drivers/SampleDriver/SampleDriver.c (renamed from Kernel/Drivers/SampleDriver/SampleDriver.c)1
-rw-r--r--Drivers/SampleDriver/x86_64.mk (renamed from Kernel/Drivers/MahroussUpdate/x86_64.mk)10
-rw-r--r--Kernel/Drivers/MahroussUpdate/MahroussUpdate.cc24
-rw-r--r--Kernel/Drivers/MahroussUpdate/MahroussUpdate.hxx37
-rw-r--r--Kernel/KernelKit/DeviceManager.hpp4
-rw-r--r--Kernel/KernelKit/DriveManager.hxx6
-rw-r--r--Kernel/KernelKit/Framebuffer.hpp1
-rw-r--r--Kernel/KernelKit/XCOFF.hxx24
-rw-r--r--Kernel/KernelRsrc.rsrc6
-rw-r--r--SDK/Dist/.gitkeep (renamed from SDK/Library/.gitkeep)0
-rw-r--r--SDK/Libraries/.gitkeep (renamed from SDK/Library/CoreCxxRuntime/.gitkeep)0
-rw-r--r--SDK/Libraries/CoreCxxRuntime/.gitkeep (renamed from SDK/Library/CorePEFRuntime/.gitkeep)0
-rw-r--r--SDK/Libraries/CoreCxxRuntime/Private.xml (renamed from SDK/Library/CoreCxxRuntime/Private.xml)0
-rw-r--r--SDK/Libraries/CoreCxxRuntime/Sources/New+Delete.cxx (renamed from SDK/Library/CoreCxxRuntime/Sources/New+Delete.cxx)0
-rw-r--r--SDK/Libraries/CorePEFRuntime/.gitkeep (renamed from SDK/Library/CoreSystem/.gitkeep)0
-rw-r--r--SDK/Libraries/CorePEFRuntime/Private.xml (renamed from SDK/Library/CorePEFRuntime/Private.xml)0
-rw-r--r--SDK/Libraries/CorePEFRuntime/Sources/PEFStart.c (renamed from SDK/Library/CorePEFRuntime/Sources/PEFStart.c)0
-rw-r--r--SDK/Libraries/CoreSystem/.gitkeep (renamed from SDK/Library/CoreSystem/ARM64/.gitkeep)0
-rw-r--r--SDK/Libraries/CoreSystem/AMD64/CoreAssembly.s (renamed from SDK/Library/CoreSystem/AMD64/CoreAssembly.s)0
-rw-r--r--SDK/Libraries/CoreSystem/ARM64/.gitkeep (renamed from SDK/Library/CoreSystem/RISCV/.gitkeep)0
-rw-r--r--SDK/Libraries/CoreSystem/Headers/Alert.h (renamed from SDK/Library/CoreSystem/Headers/Alert.h)0
-rw-r--r--SDK/Libraries/CoreSystem/Headers/Defines.h (renamed from SDK/Library/CoreSystem/Headers/Defines.h)0
-rw-r--r--SDK/Libraries/CoreSystem/Headers/File.h (renamed from SDK/Library/CoreSystem/Headers/File.h)4
-rw-r--r--SDK/Libraries/CoreSystem/Headers/Heap.h (renamed from SDK/Library/CoreSystem/Headers/Heap.h)0
-rw-r--r--SDK/Libraries/CoreSystem/Headers/Hint.h (renamed from SDK/Library/CoreSystem/Headers/Hint.h)0
-rw-r--r--SDK/Libraries/CoreSystem/Headers/Intl.h (renamed from SDK/Library/CoreSystem/Headers/Intl.h)0
-rw-r--r--SDK/Libraries/CoreSystem/Headers/Math.h (renamed from SDK/Library/CoreSystem/Headers/Math.h)0
-rw-r--r--SDK/Libraries/CoreSystem/Headers/Rsrc.h (renamed from SDK/Library/CoreSystem/Headers/Rsrc.h)0
-rw-r--r--SDK/Libraries/CoreSystem/Headers/Thread.h (renamed from SDK/Library/CoreSystem/Headers/Thread.h)0
-rw-r--r--SDK/Libraries/CoreSystem/Headers/Transport.h (renamed from SDK/Library/CoreSystem/Headers/Transport.h)0
-rw-r--r--SDK/Libraries/CoreSystem/POWER/CoreAssembly.s (renamed from SDK/Library/CoreSystem/POWER/CoreAssembly.s)0
-rw-r--r--SDK/Libraries/CoreSystem/Private.xml (renamed from SDK/Library/CoreSystem/Private.xml)0
-rw-r--r--SDK/Libraries/CoreSystem/RISCV/.gitkeep (renamed from SDK/Tools/.gitkeep)0
-rw-r--r--SDK/Libraries/CoreSystem/ReadMe.md (renamed from SDK/Library/CoreSystem/ReadMe.md)0
-rw-r--r--SDK/Libraries/CoreSystem/Sources/App.c (renamed from SDK/Library/CoreSystem/Sources/App.c)0
-rw-r--r--SDK/Libraries/CoreSystem/Sources/CRTStartup.c (renamed from SDK/Library/CoreSystem/Sources/CRTStartup.c)0
-rw-r--r--SDK/Libraries/CoreSystem/Sources/File.c (renamed from SDK/Library/CoreSystem/Sources/File.c)0
-rw-r--r--SDK/Libraries/CoreSystem/Sources/Heap.c (renamed from SDK/Library/CoreSystem/Sources/Heap.c)0
-rw-r--r--SDK/Libraries/CoreSystem/Sources/Math.c (renamed from SDK/Library/CoreSystem/Sources/Math.c)0
-rw-r--r--SDK/Libraries/CoreSystem/Sources/Thread.c (renamed from SDK/Library/CoreSystem/Sources/Thread.c)0
-rw-r--r--SDK/Libraries/CoreSystem/amd64.mk (renamed from SDK/Library/CoreSystem/amd64.mk)0
-rw-r--r--SDK/Libraries/CoreSystem/compile_flags.txt (renamed from SDK/Library/CoreSystem/compile_flags.txt)0
62 files changed, 78 insertions, 95 deletions
diff --git a/.vscode/c_cpp_properties.json b/.vscode/c_cpp_properties.json
index cda7d4a1..d9d86a41 100644
--- a/.vscode/c_cpp_properties.json
+++ b/.vscode/c_cpp_properties.json
@@ -4,9 +4,11 @@
"name": "MicroKernel (Macintosh)",
"includePath": [
"${workspaceFolder}/Kernel/**",
+ "${workspaceFolder}/Drivers/**",
"${workspaceFolder}/Boot/**",
- "${workspaceFolder}/SDK/Library/CoreSystem/**",
- "${workspaceFolder}/SDK/Library/**"
+ "${workspaceFolder}/**",
+ "${workspaceFolder}/SDK/Libraries/CoreSystem/**",
+ "${workspaceFolder}/SDK/Libraries/**"
],
"defines": [
"__MAHROUSS__",
@@ -36,10 +38,12 @@
{
"name": "MicroKernel (Windows)",
"includePath": [
+ "${workspaceFolder}/Drivers/**",
"${workspaceFolder}/Kernel/**",
"${workspaceFolder}/Boot/**",
- "${workspaceFolder}/SDK/Library/CoreSystem/**",
- "${workspaceFolder}/SDK/Library/**"
+ "${workspaceFolder}/**",
+ "${workspaceFolder}/SDK/Libraries/CoreSystem/**",
+ "${workspaceFolder}/SDK/Libraries/**"
],
"defines": [
"__MAHROUSS__",
diff --git a/Kernel/DriverKit/KernelCall.c b/DriverKit/KernelCall.c
index d61f8439..d61f8439 100644
--- a/Kernel/DriverKit/KernelCall.c
+++ b/DriverKit/KernelCall.c
diff --git a/Kernel/DriverKit/KernelDev.c b/DriverKit/KernelDev.c
index 704f17da..704f17da 100644
--- a/Kernel/DriverKit/KernelDev.c
+++ b/DriverKit/KernelDev.c
diff --git a/Kernel/DriverKit/KernelDev.h b/DriverKit/KernelDev.h
index c3435e8d..c3435e8d 100644
--- a/Kernel/DriverKit/KernelDev.h
+++ b/DriverKit/KernelDev.h
diff --git a/Kernel/DriverKit/KernelDispatchCall.S b/DriverKit/KernelDispatchCall.S
index 64b6663e..64b6663e 100644
--- a/Kernel/DriverKit/KernelDispatchCall.S
+++ b/DriverKit/KernelDispatchCall.S
diff --git a/Kernel/DriverKit/KernelPrint.c b/DriverKit/KernelPrint.c
index 533bf34a..533bf34a 100644
--- a/Kernel/DriverKit/KernelPrint.c
+++ b/DriverKit/KernelPrint.c
diff --git a/Kernel/DriverKit/KernelPrint.h b/DriverKit/KernelPrint.h
index 7bf0dda9..7bf0dda9 100644
--- a/Kernel/DriverKit/KernelPrint.h
+++ b/DriverKit/KernelPrint.h
diff --git a/Kernel/DriverKit/KernelStd.h b/DriverKit/KernelStd.h
index b0dba70e..b0dba70e 100644
--- a/Kernel/DriverKit/KernelStd.h
+++ b/DriverKit/KernelStd.h
diff --git a/Kernel/DriverKit/KernelStdCxx.cc b/DriverKit/KernelStdCxx.cc
index 99bcc579..633437dc 100644
--- a/Kernel/DriverKit/KernelStdCxx.cc
+++ b/DriverKit/KernelStdCxx.cc
@@ -12,7 +12,7 @@ void* operator new(size_t sz) {
if (!sz) ++sz;
auto ptr = kernelCall("NewKernelHeap", 1, sz);
- kernelCall("KernelHeapProtect", 1, ptr);
+ kernelCall("ProtectKernelHeap", 1, ptr);
return ptr;
}
diff --git a/Kernel/DriverKit/KernelString.c b/DriverKit/KernelString.c
index 6f28f4d8..6f28f4d8 100644
--- a/Kernel/DriverKit/KernelString.c
+++ b/DriverKit/KernelString.c
diff --git a/Kernel/DriverKit/KernelString.h b/DriverKit/KernelString.h
index db063a1b..db063a1b 100644
--- a/Kernel/DriverKit/KernelString.h
+++ b/DriverKit/KernelString.h
diff --git a/DriverKit/ReadMe.txt b/DriverKit/ReadMe.txt
new file mode 100644
index 00000000..e33c88ec
--- /dev/null
+++ b/DriverKit/ReadMe.txt
@@ -0,0 +1,4 @@
+== The Driver Kit ==
+
+-> A kit used to write user level drivers.
+-> Use MPCC to compile the code, it can work on a patched GNU compiler.
diff --git a/Kernel/Drivers/.gitkeep b/Drivers/.gitkeep
index e69de29b..e69de29b 100644
--- a/Kernel/Drivers/.gitkeep
+++ b/Drivers/.gitkeep
diff --git a/Kernel/Drivers/Bonjour/Bonjour.c b/Drivers/Bonjour/Bonjour.c
index 52187ac1..52187ac1 100644
--- a/Kernel/Drivers/Bonjour/Bonjour.c
+++ b/Drivers/Bonjour/Bonjour.c
diff --git a/Kernel/Drivers/Bonjour/DriverRsrc.rsrc b/Drivers/Bonjour/DriverRsrc.rsrc
index 494e85ee..494e85ee 100644
--- a/Kernel/Drivers/Bonjour/DriverRsrc.rsrc
+++ b/Drivers/Bonjour/DriverRsrc.rsrc
diff --git a/Kernel/Drivers/Bonjour/x86_64.mk b/Drivers/Bonjour/x86_64.mk
index b2493edf..afbc70ad 100644
--- a/Kernel/Drivers/Bonjour/x86_64.mk
+++ b/Drivers/Bonjour/x86_64.mk
@@ -30,7 +30,6 @@ invalid-recipe:
.PHONY: all
all: compile-amd64
$(LD_GNU) $(OBJ) $(LD_FLAGS) -o Bonjour.exe
- cp Bonjour.exe ../../Root/Boot/Bonjour.exe
ifneq ($(DEBUG_SUPPORT), )
DEBUG = -D__DEBUG__
diff --git a/Kernel/Drivers/SampleDriver/DriverRsrc.rsrc b/Drivers/DynamicLoader/DriverRsrc.rsrc
index 3a3b8774..3a3b8774 100644
--- a/Kernel/Drivers/SampleDriver/DriverRsrc.rsrc
+++ b/Drivers/DynamicLoader/DriverRsrc.rsrc
diff --git a/Drivers/DynamicLoader/DynamicLoader.c b/Drivers/DynamicLoader/DynamicLoader.c
new file mode 100644
index 00000000..16ffc06e
--- /dev/null
+++ b/Drivers/DynamicLoader/DynamicLoader.c
@@ -0,0 +1,26 @@
+/* -------------------------------------------
+
+ Copyright SoftwareLabs
+
+------------------------------------------- */
+
+#include <DriverKit/KernelString.h>
+#include <DriverKit/KernelPrint.h>
+
+int __ImageStart(void)
+{
+ kernelPrintStr("DynamicLoader: Starting up...\r");
+ return 0;
+}
+
+int __ImageEnd(void)
+{
+ kernelPrintStr("DynamicLoader: Shutting down...\r");
+ return 0;
+}
+
+///! @brief Use this to check your stack, if using MinGW/MSVC.
+void ___chkstk_ms(void)
+{
+ (void)0;
+}
diff --git a/Kernel/Drivers/SampleDriver/x86_64.mk b/Drivers/DynamicLoader/x86_64.mk
index 5bdf0331..1d46948b 100644
--- a/Kernel/Drivers/SampleDriver/x86_64.mk
+++ b/Drivers/DynamicLoader/x86_64.mk
@@ -30,7 +30,6 @@ invalid-recipe:
.PHONY: all
all: compile-amd64
$(LD_GNU) $(OBJ) $(LD_FLAGS) -o SampleDriver.exe
- cp SampleDriver.exe ../../Root/Boot/SampleDriver.exe
ifneq ($(DEBUG_SUPPORT), )
DEBUG = -D__DEBUG__
diff --git a/Kernel/Drivers/MahroussUpdate/DriverRsrc.rsrc b/Drivers/SampleDriver/DriverRsrc.rsrc
index 88261a47..3a3b8774 100644
--- a/Kernel/Drivers/MahroussUpdate/DriverRsrc.rsrc
+++ b/Drivers/SampleDriver/DriverRsrc.rsrc
@@ -1,4 +1,4 @@
-1 ICON "../../Root/Boot/Icons/update-logo.ico"
+1 ICON "../../Root/Boot/Icons/driver-logo.ico"
1 VERSIONINFO
FILEVERSION 1,0,0,0
@@ -9,12 +9,12 @@ BEGIN
BLOCK "080904E4"
BEGIN
VALUE "CompanyName", "SoftwareLabs"
- VALUE "FileDescription", "New OS Mahrouss Update driver."
+ VALUE "FileDescription", "New OS driver."
VALUE "FileVersion", "1.00"
- VALUE "InternalName", "Mahrouss Update."
+ VALUE "InternalName", "SampleDriver"
VALUE "LegalCopyright", "Copyright SoftwareLabs, all rights reserved."
- VALUE "OriginalFilename", "MahroussUpdate.exe"
- VALUE "ProductName", "MahroussUpdate."
+ VALUE "OriginalFilename", "SampleDriver.exe"
+ VALUE "ProductName", "SampleDriver"
VALUE "ProductVersion", "1.00"
END
END
diff --git a/Kernel/Drivers/SampleDriver/SampleDriver.c b/Drivers/SampleDriver/SampleDriver.c
index b92b1ef8..4085bf4f 100644
--- a/Kernel/Drivers/SampleDriver/SampleDriver.c
+++ b/Drivers/SampleDriver/SampleDriver.c
@@ -22,4 +22,5 @@ int __ImageEnd(void)
///! @brief Use this to check your stack, if using MinGW/MSVC.
void ___chkstk_ms(void)
{
+ (void)0;
}
diff --git a/Kernel/Drivers/MahroussUpdate/x86_64.mk b/Drivers/SampleDriver/x86_64.mk
index 13b30d59..1d46948b 100644
--- a/Kernel/Drivers/MahroussUpdate/x86_64.mk
+++ b/Drivers/SampleDriver/x86_64.mk
@@ -21,7 +21,7 @@ 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 -D__HAVE_MAHROUSS_APIS__ -D__MAHROUSS__ -D__BOOTLOADER__ -I./
+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:
@@ -29,8 +29,7 @@ invalid-recipe:
.PHONY: all
all: compile-amd64
- $(LD_GNU) $(OBJ) $(LD_FLAGS) -o MahroussUpdate.exe
- cp MahroussUpdate.exe ../../Root/Boot/MahroussUpdate.exe
+ $(LD_GNU) $(OBJ) $(LD_FLAGS) -o SampleDriver.exe
ifneq ($(DEBUG_SUPPORT), )
DEBUG = -D__DEBUG__
@@ -39,12 +38,11 @@ endif
.PHONY: compile-amd64
compile-amd64:
$(WINDRES) DriverRsrc.rsrc -O coff -o DriverRsrc.o
- $(CC_GNU) $(FLAG_GNU) -std=c17 $(DEBUG) $(wildcard *.c) $(wildcard ../../DriverKit/*.c) $(wildcard ../../DriverKit/*.S)
- $(CC_GNU) $(FLAG_GNU) -std=c++17 -fno-rtti -fno-exceptions $(DEBUG) $(wildcard *.cc) $(wildcard ../../DriverKit/*.cc)
+ $(CC_GNU) $(FLAG_GNU) $(DEBUG) $(wildcard *.c) $(wildcard ../../DriverKit/*.c) $(wildcard ../../DriverKit/*.S)
.PHONY: clean
clean:
- $(REM) $(REM_FLAG) $(OBJ) MahroussUpdate.exe
+ $(REM) $(REM_FLAG) $(OBJ) SampleDriver.exe
.PHONY: help
help:
diff --git a/Kernel/Drivers/MahroussUpdate/MahroussUpdate.cc b/Kernel/Drivers/MahroussUpdate/MahroussUpdate.cc
deleted file mode 100644
index eb8d03c7..00000000
--- a/Kernel/Drivers/MahroussUpdate/MahroussUpdate.cc
+++ /dev/null
@@ -1,24 +0,0 @@
-/* -------------------------------------------
-
- Copyright SoftwareLabs
-
-------------------------------------------- */
-
-#include <DriverKit/KernelString.h>
-#include <DriverKit/KernelPrint.h>
-
-#include <Drivers/MahroussUpdate/MahroussUpdate.hxx>
-
-DK_EXTERN int __ImageStart(void) {
- kernelPrintStr("Mahrouss Update: Looking for updates...\r");
- UpdateRequest req("mup://release-mahrouss.logic/newos/");
-
- return 0;
-}
-
-DK_EXTERN int __ImageEnd(void) {
- return 0;
-}
-
-///! @brief Use this to check your stack, if using MinGW/MSVC.
-DK_EXTERN void ___chkstk_ms(void) {}
diff --git a/Kernel/Drivers/MahroussUpdate/MahroussUpdate.hxx b/Kernel/Drivers/MahroussUpdate/MahroussUpdate.hxx
deleted file mode 100644
index dbcaed43..00000000
--- a/Kernel/Drivers/MahroussUpdate/MahroussUpdate.hxx
+++ /dev/null
@@ -1,37 +0,0 @@
-/* -------------------------------------------
-
- Copyright SoftwareLabs
-
-------------------------------------------- */
-
-#pragma once
-
-#include <DriverKit/KernelString.h>
-
-#include "DriverKit/KernelPrint.h"
-
-/// @file Software update job driver.
-
-class UpdateRequest;
-class UpdateRequestObserver;
-
-class UpdateRequest
-{
-public:
- explicit UpdateRequest(const char* patchUrl = "mup://invalid-url-scheme/")
- {
- kernelStringCopy(this->fPatchUrl, patchUrl, kernelStringLength(patchUrl));
-
- kernelPrintStr("Mahrouss Update, Looking at: ");
- kernelPrintStr(patchUrl);
- kernelPrintChar('\r');
- kernelPrintChar('\n');
- }
-
- ~UpdateRequest()
- {
- }
-
-private:
- char fPatchUrl[4096] = {0};
-};
diff --git a/Kernel/KernelKit/DeviceManager.hpp b/Kernel/KernelKit/DeviceManager.hpp
index 6e2a803f..dc53fed5 100644
--- a/Kernel/KernelKit/DeviceManager.hpp
+++ b/Kernel/KernelKit/DeviceManager.hpp
@@ -21,8 +21,6 @@
#include <NewKit/ErrorOr.hpp>
#include <NewKit/Ref.hpp>
-#define kDriveManagerCount 4U
-
// Last Rev
// Wed, Apr 3, 2024 9:09:41 AM
@@ -70,7 +68,7 @@ namespace NewOS
}
bool operator!()
{
- return !fOut && !fIn;
+ return !fOut || !fIn;
}
private:
diff --git a/Kernel/KernelKit/DriveManager.hxx b/Kernel/KernelKit/DriveManager.hxx
index 7978221a..019812a3 100644
--- a/Kernel/KernelKit/DriveManager.hxx
+++ b/Kernel/KernelKit/DriveManager.hxx
@@ -14,8 +14,10 @@
#include <NewKit/Defines.hpp>
#include <NewKit/String.hpp>
-#define kDriveInvalidID -1
-#define kDriveNameLen 32
+#define kDriveManagerCount (4U)
+
+#define kDriveInvalidID (-1)
+#define kDriveNameLen (32)
namespace NewOS
{
diff --git a/Kernel/KernelKit/Framebuffer.hpp b/Kernel/KernelKit/Framebuffer.hpp
index fd4eff04..1f189e77 100644
--- a/Kernel/KernelKit/Framebuffer.hpp
+++ b/Kernel/KernelKit/Framebuffer.hpp
@@ -39,6 +39,7 @@ namespace NewOS
: fFrameBufferAddr(addr)
{
}
+
~Framebuffer()
{
}
diff --git a/Kernel/KernelKit/XCOFF.hxx b/Kernel/KernelKit/XCOFF.hxx
index f2e49c4c..55e37bfd 100644
--- a/Kernel/KernelKit/XCOFF.hxx
+++ b/Kernel/KernelKit/XCOFF.hxx
@@ -16,12 +16,15 @@
#include <NewKit/Defines.hpp>
-#define kXCOFF64Magic (0x01F7)
+#define cXCOFF64Magic (0x01F7)
-#define kXCOFFRelFlg (0x0001)
-#define kXCOFFExecutable (0x0002)
-#define kXCOFFLnno (0x0004)
-#define kXCOFFLSyms (0x0008)
+#define cXCOFFRelFlg (0x0001)
+#define cXCOFFExecutable (0x0002)
+#define cXCOFFLnno (0x0004)
+#define cXCOFFLSyms (0x0008)
+
+struct XCoffFileHeader;
+struct XCoffForkHeader;
/// @brief XCoff file header, meant for POWER apps.
typedef struct XCoffFileHeader
@@ -33,6 +36,15 @@ typedef struct XCoffFileHeader
NewOS::UIntPtr fSymPtr;
NewOS::UInt32 fNumSyms;
NewOS::UInt16 fOptHdr; // ?: Number of bytes in optional header
-} XCoffFileHeader;
+} XCoffFileHeader32, XCoffFileHeader64;
+
+#define cForkNameLen (255)
+
+/// @brief This the executable manifest fork.
+typedef struct XCoffForkHeader {
+ NewOS::Char fPropertiesXMLFork[cForkNameLen];
+ NewOS::Char fDynamicLoaderFork[cForkNameLen];
+ NewOS::Char fCodeSignFork[cForkNameLen];
+} XCoffForkHeader;
#endif // ifndef __XCOFF__
diff --git a/Kernel/KernelRsrc.rsrc b/Kernel/KernelRsrc.rsrc
index 6689d10c..91699b63 100644
--- a/Kernel/KernelRsrc.rsrc
+++ b/Kernel/KernelRsrc.rsrc
@@ -11,12 +11,12 @@ BEGIN
BLOCK "080904E4"
BEGIN
VALUE "CompanyName", "SoftwareLabs"
- VALUE "FileDescription", "New OS multiplatform kernel."
+ VALUE "FileDescription", "NuX/OS kernel."
VALUE "FileVersion", KERNEL_VERSION
- VALUE "InternalName", "NewKernel"
+ VALUE "InternalName", "NeXUS"
VALUE "LegalCopyright", "SoftwareLabs"
VALUE "OriginalFilename", "NewOSKrnl.exe"
- VALUE "ProductName", "NewKernel"
+ VALUE "ProductName", "NewOSKrnl"
VALUE "ProductVersion", KERNEL_VERSION
END
END
diff --git a/SDK/Library/.gitkeep b/SDK/Dist/.gitkeep
index e69de29b..e69de29b 100644
--- a/SDK/Library/.gitkeep
+++ b/SDK/Dist/.gitkeep
diff --git a/SDK/Library/CoreCxxRuntime/.gitkeep b/SDK/Libraries/.gitkeep
index e69de29b..e69de29b 100644
--- a/SDK/Library/CoreCxxRuntime/.gitkeep
+++ b/SDK/Libraries/.gitkeep
diff --git a/SDK/Library/CorePEFRuntime/.gitkeep b/SDK/Libraries/CoreCxxRuntime/.gitkeep
index e69de29b..e69de29b 100644
--- a/SDK/Library/CorePEFRuntime/.gitkeep
+++ b/SDK/Libraries/CoreCxxRuntime/.gitkeep
diff --git a/SDK/Library/CoreCxxRuntime/Private.xml b/SDK/Libraries/CoreCxxRuntime/Private.xml
index 7ee426c0..7ee426c0 100644
--- a/SDK/Library/CoreCxxRuntime/Private.xml
+++ b/SDK/Libraries/CoreCxxRuntime/Private.xml
diff --git a/SDK/Library/CoreCxxRuntime/Sources/New+Delete.cxx b/SDK/Libraries/CoreCxxRuntime/Sources/New+Delete.cxx
index cc59586f..cc59586f 100644
--- a/SDK/Library/CoreCxxRuntime/Sources/New+Delete.cxx
+++ b/SDK/Libraries/CoreCxxRuntime/Sources/New+Delete.cxx
diff --git a/SDK/Library/CoreSystem/.gitkeep b/SDK/Libraries/CorePEFRuntime/.gitkeep
index e69de29b..e69de29b 100644
--- a/SDK/Library/CoreSystem/.gitkeep
+++ b/SDK/Libraries/CorePEFRuntime/.gitkeep
diff --git a/SDK/Library/CorePEFRuntime/Private.xml b/SDK/Libraries/CorePEFRuntime/Private.xml
index 7ee426c0..7ee426c0 100644
--- a/SDK/Library/CorePEFRuntime/Private.xml
+++ b/SDK/Libraries/CorePEFRuntime/Private.xml
diff --git a/SDK/Library/CorePEFRuntime/Sources/PEFStart.c b/SDK/Libraries/CorePEFRuntime/Sources/PEFStart.c
index e9a45f09..e9a45f09 100644
--- a/SDK/Library/CorePEFRuntime/Sources/PEFStart.c
+++ b/SDK/Libraries/CorePEFRuntime/Sources/PEFStart.c
diff --git a/SDK/Library/CoreSystem/ARM64/.gitkeep b/SDK/Libraries/CoreSystem/.gitkeep
index e69de29b..e69de29b 100644
--- a/SDK/Library/CoreSystem/ARM64/.gitkeep
+++ b/SDK/Libraries/CoreSystem/.gitkeep
diff --git a/SDK/Library/CoreSystem/AMD64/CoreAssembly.s b/SDK/Libraries/CoreSystem/AMD64/CoreAssembly.s
index 5d1484cf..5d1484cf 100644
--- a/SDK/Library/CoreSystem/AMD64/CoreAssembly.s
+++ b/SDK/Libraries/CoreSystem/AMD64/CoreAssembly.s
diff --git a/SDK/Library/CoreSystem/RISCV/.gitkeep b/SDK/Libraries/CoreSystem/ARM64/.gitkeep
index e69de29b..e69de29b 100644
--- a/SDK/Library/CoreSystem/RISCV/.gitkeep
+++ b/SDK/Libraries/CoreSystem/ARM64/.gitkeep
diff --git a/SDK/Library/CoreSystem/Headers/Alert.h b/SDK/Libraries/CoreSystem/Headers/Alert.h
index 7decd4ca..7decd4ca 100644
--- a/SDK/Library/CoreSystem/Headers/Alert.h
+++ b/SDK/Libraries/CoreSystem/Headers/Alert.h
diff --git a/SDK/Library/CoreSystem/Headers/Defines.h b/SDK/Libraries/CoreSystem/Headers/Defines.h
index a7e46234..a7e46234 100644
--- a/SDK/Library/CoreSystem/Headers/Defines.h
+++ b/SDK/Libraries/CoreSystem/Headers/Defines.h
diff --git a/SDK/Library/CoreSystem/Headers/File.h b/SDK/Libraries/CoreSystem/Headers/File.h
index 594b4edb..0013b074 100644
--- a/SDK/Library/CoreSystem/Headers/File.h
+++ b/SDK/Libraries/CoreSystem/Headers/File.h
@@ -8,6 +8,8 @@
#include <Headers/Defines.h>
+#define kMaxForkNameLength (256U) /* long fork names. */
+
struct _Fork;
/// @brief Filesystem wrapper.
@@ -25,8 +27,6 @@ CS_EXTERN_C FSRef CSOpenFile(const CharacterTypeUTF8* path, const CharacterTypeU
/// @return
CS_EXTERN_C VoidType CSCloseFile(FSRef refCS);
-#define kMaxForkNameLength (256U) /* long fork names. */
-
/// @brief A fork information header.
typedef struct _Fork
{
diff --git a/SDK/Library/CoreSystem/Headers/Heap.h b/SDK/Libraries/CoreSystem/Headers/Heap.h
index b2ad6e74..b2ad6e74 100644
--- a/SDK/Library/CoreSystem/Headers/Heap.h
+++ b/SDK/Libraries/CoreSystem/Headers/Heap.h
diff --git a/SDK/Library/CoreSystem/Headers/Hint.h b/SDK/Libraries/CoreSystem/Headers/Hint.h
index ee14711d..ee14711d 100644
--- a/SDK/Library/CoreSystem/Headers/Hint.h
+++ b/SDK/Libraries/CoreSystem/Headers/Hint.h
diff --git a/SDK/Library/CoreSystem/Headers/Intl.h b/SDK/Libraries/CoreSystem/Headers/Intl.h
index b868adca..b868adca 100644
--- a/SDK/Library/CoreSystem/Headers/Intl.h
+++ b/SDK/Libraries/CoreSystem/Headers/Intl.h
diff --git a/SDK/Library/CoreSystem/Headers/Math.h b/SDK/Libraries/CoreSystem/Headers/Math.h
index 0a13e86f..0a13e86f 100644
--- a/SDK/Library/CoreSystem/Headers/Math.h
+++ b/SDK/Libraries/CoreSystem/Headers/Math.h
diff --git a/SDK/Library/CoreSystem/Headers/Rsrc.h b/SDK/Libraries/CoreSystem/Headers/Rsrc.h
index 7fe52910..7fe52910 100644
--- a/SDK/Library/CoreSystem/Headers/Rsrc.h
+++ b/SDK/Libraries/CoreSystem/Headers/Rsrc.h
diff --git a/SDK/Library/CoreSystem/Headers/Thread.h b/SDK/Libraries/CoreSystem/Headers/Thread.h
index 15b40df3..15b40df3 100644
--- a/SDK/Library/CoreSystem/Headers/Thread.h
+++ b/SDK/Libraries/CoreSystem/Headers/Thread.h
diff --git a/SDK/Library/CoreSystem/Headers/Transport.h b/SDK/Libraries/CoreSystem/Headers/Transport.h
index 3f6db3f1..3f6db3f1 100644
--- a/SDK/Library/CoreSystem/Headers/Transport.h
+++ b/SDK/Libraries/CoreSystem/Headers/Transport.h
diff --git a/SDK/Library/CoreSystem/POWER/CoreAssembly.s b/SDK/Libraries/CoreSystem/POWER/CoreAssembly.s
index e7919f23..e7919f23 100644
--- a/SDK/Library/CoreSystem/POWER/CoreAssembly.s
+++ b/SDK/Libraries/CoreSystem/POWER/CoreAssembly.s
diff --git a/SDK/Library/CoreSystem/Private.xml b/SDK/Libraries/CoreSystem/Private.xml
index 4be6c388..4be6c388 100644
--- a/SDK/Library/CoreSystem/Private.xml
+++ b/SDK/Libraries/CoreSystem/Private.xml
diff --git a/SDK/Tools/.gitkeep b/SDK/Libraries/CoreSystem/RISCV/.gitkeep
index e69de29b..e69de29b 100644
--- a/SDK/Tools/.gitkeep
+++ b/SDK/Libraries/CoreSystem/RISCV/.gitkeep
diff --git a/SDK/Library/CoreSystem/ReadMe.md b/SDK/Libraries/CoreSystem/ReadMe.md
index ae5df339..ae5df339 100644
--- a/SDK/Library/CoreSystem/ReadMe.md
+++ b/SDK/Libraries/CoreSystem/ReadMe.md
diff --git a/SDK/Library/CoreSystem/Sources/App.c b/SDK/Libraries/CoreSystem/Sources/App.c
index 42ea19c6..42ea19c6 100644
--- a/SDK/Library/CoreSystem/Sources/App.c
+++ b/SDK/Libraries/CoreSystem/Sources/App.c
diff --git a/SDK/Library/CoreSystem/Sources/CRTStartup.c b/SDK/Libraries/CoreSystem/Sources/CRTStartup.c
index 1cfad65d..1cfad65d 100644
--- a/SDK/Library/CoreSystem/Sources/CRTStartup.c
+++ b/SDK/Libraries/CoreSystem/Sources/CRTStartup.c
diff --git a/SDK/Library/CoreSystem/Sources/File.c b/SDK/Libraries/CoreSystem/Sources/File.c
index 7547e7f2..7547e7f2 100644
--- a/SDK/Library/CoreSystem/Sources/File.c
+++ b/SDK/Libraries/CoreSystem/Sources/File.c
diff --git a/SDK/Library/CoreSystem/Sources/Heap.c b/SDK/Libraries/CoreSystem/Sources/Heap.c
index e7a77ba5..e7a77ba5 100644
--- a/SDK/Library/CoreSystem/Sources/Heap.c
+++ b/SDK/Libraries/CoreSystem/Sources/Heap.c
diff --git a/SDK/Library/CoreSystem/Sources/Math.c b/SDK/Libraries/CoreSystem/Sources/Math.c
index 19df42f3..19df42f3 100644
--- a/SDK/Library/CoreSystem/Sources/Math.c
+++ b/SDK/Libraries/CoreSystem/Sources/Math.c
diff --git a/SDK/Library/CoreSystem/Sources/Thread.c b/SDK/Libraries/CoreSystem/Sources/Thread.c
index 7d00bf9e..7d00bf9e 100644
--- a/SDK/Library/CoreSystem/Sources/Thread.c
+++ b/SDK/Libraries/CoreSystem/Sources/Thread.c
diff --git a/SDK/Library/CoreSystem/amd64.mk b/SDK/Libraries/CoreSystem/amd64.mk
index e64de90f..e64de90f 100644
--- a/SDK/Library/CoreSystem/amd64.mk
+++ b/SDK/Libraries/CoreSystem/amd64.mk
diff --git a/SDK/Library/CoreSystem/compile_flags.txt b/SDK/Libraries/CoreSystem/compile_flags.txt
index 749a500e..749a500e 100644
--- a/SDK/Library/CoreSystem/compile_flags.txt
+++ b/SDK/Libraries/CoreSystem/compile_flags.txt