summaryrefslogtreecommitdiffhomepage
path: root/dev
diff options
context:
space:
mode:
authorAmlal El Mahrouss <amlal@nekernel.org>2025-05-14 09:53:11 +0200
committerAmlal El Mahrouss <amlal@nekernel.org>2025-05-14 09:53:11 +0200
commit9fcff991059ff5cdbdf71848039e7b56ccd5bc49 (patch)
tree6b5ae7561d7a8efb88948803e214e7514bde9dd9 /dev
parent38a534c90e682bd4ce3d176127520f0ff513fb11 (diff)
feat(kernel): add ddk.sys to the build flow, finished the mk_fwrk CLI.
Signed-off-by: Amlal El Mahrouss <amlal@nekernel.org>
Diffstat (limited to 'dev')
-rw-r--r--dev/boot/amd64-desktop.make2
-rw-r--r--dev/ddk/src/ddk_rt_cxx.cc8
-rw-r--r--dev/user/SciCalls.h (renamed from dev/user/Opts.h)0
-rw-r--r--dev/user/src/SystemCalls.cc12
4 files changed, 12 insertions, 10 deletions
diff --git a/dev/boot/amd64-desktop.make b/dev/boot/amd64-desktop.make
index c660df87..b5e49cb0 100644
--- a/dev/boot/amd64-desktop.make
+++ b/dev/boot/amd64-desktop.make
@@ -76,6 +76,7 @@ KERNEL=krnl.efi
SYSCHK=chk.efi
BOOTNET=net.efi
SCIKIT=user.sys
+DDK=ddk.sys
.PHONY: invalid-recipe
invalid-recipe:
@@ -93,6 +94,7 @@ all: compile-amd64
$(COPY) ./modules/BootNet/$(BOOTNET) src/root/$(BOOTNET)
$(COPY) ../user/$(SCIKIT) src/root/$(SCIKIT)
$(COPY) src/$(BOOTLOADER) src/root/$(BOOTLOADER)
+ $(COPY) ../ddk/$(DDK) src/root/$(DDK)
.PHONY: disk
disk:
diff --git a/dev/ddk/src/ddk_rt_cxx.cc b/dev/ddk/src/ddk_rt_cxx.cc
index 7daf0fcc..3d57e2b9 100644
--- a/dev/ddk/src/ddk_rt_cxx.cc
+++ b/dev/ddk/src/ddk_rt_cxx.cc
@@ -9,17 +9,17 @@
#include <DDKKit/ddk.h>
void* operator new(size_t sz) {
- return kalloc(sz);
+ return ::kalloc(sz);
}
void operator delete(void* ptr) {
- kfree(ptr);
+ ::kfree(ptr);
}
void* operator new[](size_t sz) {
- return kalloc(sz);
+ return ::kalloc(sz);
}
void operator delete[](void* ptr) {
- kfree(ptr);
+ ::kfree(ptr);
}
diff --git a/dev/user/Opts.h b/dev/user/SciCalls.h
index 4b3b63c1..4b3b63c1 100644
--- a/dev/user/Opts.h
+++ b/dev/user/SciCalls.h
diff --git a/dev/user/src/SystemCalls.cc b/dev/user/src/SystemCalls.cc
index f8b6d597..874f607d 100644
--- a/dev/user/src/SystemCalls.cc
+++ b/dev/user/src/SystemCalls.cc
@@ -4,7 +4,7 @@
------------------------------------------- */
-#include <user/Opts.h>
+#include <user/SciCalls.h>
#include <user/SystemCalls.h>
/// @file SystemCalls.cc
@@ -63,15 +63,15 @@ IMPORT_C Void IoCloseFile(_Input Ref desc) {
}
IMPORT_C UInt64 IoSeekFile(_Input Ref desc, _Input UInt64 off) {
- auto ret = (UInt64*) sci_syscall_arg_3(3, reinterpret_cast<VoidPtr>(desc),
- reinterpret_cast<VoidPtr>(&off));
+ auto ret = (volatile UInt64*) sci_syscall_arg_3(3, reinterpret_cast<VoidPtr>(desc),
+ reinterpret_cast<VoidPtr>(&off));
MUST_PASS((*ret) != ~0UL);
return *ret;
}
IMPORT_C UInt64 IoTellFile(_Input Ref desc) {
- auto ret = (UInt64*) sci_syscall_arg_2(4, reinterpret_cast<VoidPtr>(desc));
+ auto ret = (volatile UInt64*) sci_syscall_arg_2(4, reinterpret_cast<VoidPtr>(desc));
return *ret;
}
@@ -80,8 +80,8 @@ IMPORT_C SInt32 PrintOut(_Input IORef desc, const char* fmt, ...) {
va_start(args, fmt);
- auto ret = (UInt64*) sci_syscall_arg_4(5, reinterpret_cast<VoidPtr>(desc),
- reinterpret_cast<VoidPtr>(const_cast<Char*>(fmt)), args);
+ auto ret = (volatile UInt64*) sci_syscall_arg_4(
+ 5, reinterpret_cast<VoidPtr>(desc), reinterpret_cast<VoidPtr>(const_cast<Char*>(fmt)), args);
va_end(args);