summaryrefslogtreecommitdiffhomepage
diff options
context:
space:
mode:
-rw-r--r--Boot/Sources/HEL/AMD64/BootMain.cxx2
-rw-r--r--Boot/Sources/ProgramLoader.cxx26
-rw-r--r--Boot/amd64-efi.make2
-rw-r--r--DDK/KernelAlloc.c (renamed from DDK/KernelStdCxx.cc)14
-rw-r--r--DDK/KernelCxxRt.cxx29
-rw-r--r--Drivers/Hello/Main.c (renamed from Drivers/Hello/Hello.c)0
-rw-r--r--Drivers/Hello/x86_64.mk2
-rw-r--r--Drivers/SampleDriver/Main.c (renamed from Drivers/SampleDriver/SampleDriver.c)0
-rw-r--r--Drivers/VideoDrv/Main.cxx (renamed from Drivers/VideoDrv/VideoDrv.cxx)0
-rw-r--r--Kernel/HALKit/AMD64/HalCoreInterruptHandlerAMD64.cxx10
-rw-r--r--Kernel/KernelKit/ProcessHeap.hxx2
-rw-r--r--Kernel/KernelKit/ProcessScheduler.hxx24
-rw-r--r--Kernel/KernelKit/RLE.hxx3
-rw-r--r--Kernel/Sources/ProcessScheduler.cxx20
-rw-r--r--Kernel/Sources/SMPManager.cxx14
-rw-r--r--SCI/ErrorTypes.hxx (renamed from Comm/herror.hxx)2
-rw-r--r--SCI/Hint.hxx23
-rw-r--r--SCI/StandardInterface.hxx (renamed from Comm/newstd.hxx)42
-rw-r--r--SCI/compile_flags.txt (renamed from Comm/compile_flags.txt)0
-rw-r--r--newoskrnl.files10
20 files changed, 144 insertions, 81 deletions
diff --git a/Boot/Sources/HEL/AMD64/BootMain.cxx b/Boot/Sources/HEL/AMD64/BootMain.cxx
index 8946aadc..95d795ea 100644
--- a/Boot/Sources/HEL/AMD64/BootMain.cxx
+++ b/Boot/Sources/HEL/AMD64/BootMain.cxx
@@ -245,7 +245,7 @@ EFI_EXTERN_C EFI_API Int Main(EfiHandlePtr ImageHandle,
if (loader)
loader->Start(handoverHdrPtr);
#else
- hal_init_platform(handoverHdrPtr);
+ hal_init_platform(handoverHdrPtr);
#endif // ifdef __NEWOS_OTA__
EFI::Stop();
diff --git a/Boot/Sources/ProgramLoader.cxx b/Boot/Sources/ProgramLoader.cxx
index 5938c2a0..4ea0d4c6 100644
--- a/Boot/Sources/ProgramLoader.cxx
+++ b/Boot/Sources/ProgramLoader.cxx
@@ -20,7 +20,7 @@ EXTERN_C
namespace Boot
{
- EXTERN_C Int32 rt_jump_to_address(HEL::HandoverProc baseCode, HEL::HandoverInformationHeader* handover, Char* stackPointer);
+ EXTERN_C Int32 rt_jump_to_address(HEL::HandoverProc baseCode, HEL::HandoverInformationHeader* handover, Char* stackPointer);
ProgramLoader::ProgramLoader(VoidPtr blob)
: fBlob(blob), fStartAddress(nullptr)
@@ -39,14 +39,14 @@ namespace Boot
if (firstBytes[0] == kMagMz0 &&
firstBytes[1] == kMagMz1)
{
- writer.Write("newosldr: MZ executable detected.\r");
+ writer.Write("newosldr: MZ executable detected.\r");
- ExecHeaderPtr hdrPtr = (ldr_find_exec_header(firstBytes));
- ExecOptionalHeaderPtr optHdr = (ldr_find_opt_exec_header(firstBytes));
+ ExecHeaderPtr hdrPtr = (ldr_find_exec_header(firstBytes));
+ ExecOptionalHeaderPtr optHdr = (ldr_find_opt_exec_header(firstBytes));
// Parse PE32+
fStartAddress = (VoidPtr)((UIntPtr)optHdr->mImageBase + optHdr->mBaseOfCode + optHdr->mAddressOfEntryPoint);
- fStackPtr = new Char[optHdr->mSizeOfStackReserve];
+ fStackPtr = new Char[optHdr->mSizeOfStackReserve];
writer.Write("newosldr: Major Linker: ").Write(optHdr->mMajorLinkerVersion).Write("\r");
writer.Write("newosldr: Minor Linker: ").Write(optHdr->mMinorLinkerVersion).Write("\r");
@@ -73,21 +73,21 @@ namespace Boot
/// @note handover header has to be valid!
Void ProgramLoader::Start(HEL::HandoverInformationHeader* handover)
{
- BTextWriter writer;
+ BTextWriter writer;
- if (!handover)
+ if (!handover ||
+ ((Char*)fStartAddress)[0] == 0x0)
{
- writer.Write("newosldr: Exec format error.\r");
- return;
+ writer.Write("newosldr: Exec format error.\r");
+ return;
}
writer.Write("newosldr: Trying to run: ").Write(fBlobName).Write("\r");
- if (!fStartAddress ||
- ((Char*)fStartAddress)[0] == 0x0)
+ if (!fStartAddress)
{
- HEL::HandoverProc fn = [](HEL::HandoverInformationHeader* rcx) -> void {
- BTextWriter writer;
+ HEL::HandoverProc fn = [](HEL::HandoverInformationHeader* rcx) -> void {
+ BTextWriter writer;
writer.Write("newosldr: Exec format error, Thread has been aborted.\r");
EFI::ThrowError(L"Exec-Format-Error", L"Format doesn't match (Thread aborted.)");
diff --git a/Boot/amd64-efi.make b/Boot/amd64-efi.make
index af5864e2..b9a4fc1a 100644
--- a/Boot/amd64-efi.make
+++ b/Boot/amd64-efi.make
@@ -52,7 +52,7 @@ REM_FLAG=-f
FLAG_ASM=-f win64
FLAG_GNU=-fshort-wchar -D__EFI_x86_64__ -mno-red-zone -D__KERNEL__ -D__NEWBOOT__ \
-DEFI_FUNCTION_WRAPPER -I./ -I../Vendor -I../Kernel -c -nostdlib -fno-rtti -fno-exceptions \
- -std=c++20 -D__NEWOS_OTA__ -D__HAVE_MAHROUSS_APIS__ -D__NEWOS_AMD64__ -D__MAHROUSS__ -D__BOOTLOADER__
+ -std=c++20 -D__HAVE_MAHROUSS_APIS__ -D__NEWOS_AMD64__ -D__MAHROUSS__ -D__BOOTLOADER__
BOOT_LOADER=newosldr.exe
KERNEL=newoskrnl.exe
diff --git a/DDK/KernelStdCxx.cc b/DDK/KernelAlloc.c
index be5c438d..6f31ae1c 100644
--- a/DDK/KernelStdCxx.cc
+++ b/DDK/KernelAlloc.c
@@ -2,27 +2,17 @@
Copyright ZKA Technologies
- Purpose: Driver C++ Definitions.
+ Purpose: Standard library.
------------------------------------------- */
#include <DDK/KernelStd.h>
-void* operator new(size_t sz)
-{
- return kernelAlloc(sz);
-}
-
-void operator delete(void* ptr) noexcept
-{
- kernelFree(ptr);
-}
-
DK_EXTERN void* kernelAlloc(size_t sz)
{
if (!sz) ++sz;
- auto ptr = kernelCall("NewHeap", 1, &sz, sizeof(size_t));
+ void* ptr = kernelCall("NewHeap", 1, &sz, sizeof(size_t));
kernelCall("ProtectHeap", 1, ptr, sz);
return ptr;
diff --git a/DDK/KernelCxxRt.cxx b/DDK/KernelCxxRt.cxx
new file mode 100644
index 00000000..8a5f4c66
--- /dev/null
+++ b/DDK/KernelCxxRt.cxx
@@ -0,0 +1,29 @@
+/* -------------------------------------------
+
+ Copyright ZKA Technologies
+
+ Purpose: Driver C++ Definitions.
+
+------------------------------------------- */
+
+#include <DDK/KernelStd.h>
+
+void* operator new(size_t sz)
+{
+ return kernelAlloc(sz);
+}
+
+void operator delete(void* ptr)
+{
+ kernelFree(ptr);
+}
+
+void* operator new[](size_t sz)
+{
+ return kernelAlloc(sz);
+}
+
+void operator delete[](void* ptr)
+{
+ kernelFree(ptr);
+}
diff --git a/Drivers/Hello/Hello.c b/Drivers/Hello/Main.c
index 10feda48..10feda48 100644
--- a/Drivers/Hello/Hello.c
+++ b/Drivers/Hello/Main.c
diff --git a/Drivers/Hello/x86_64.mk b/Drivers/Hello/x86_64.mk
index 07f41807..4ddb7e5b 100644
--- a/Drivers/Hello/x86_64.mk
+++ b/Drivers/Hello/x86_64.mk
@@ -20,7 +20,7 @@ REM=rm
REM_FLAG=-f
FLAG_ASM=-f win64
-FLAG_GNU=-fshort-wchar -fno-rtti -fno-exceptions -D__DDK_AMD64__ -mgeneral-regs-only -mno-red-zone -D__KERNEL__ \
+FLAG_GNU=-fshort-wchar -D__DDK_AMD64__ -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
diff --git a/Drivers/SampleDriver/SampleDriver.c b/Drivers/SampleDriver/Main.c
index 6b54742f..6b54742f 100644
--- a/Drivers/SampleDriver/SampleDriver.c
+++ b/Drivers/SampleDriver/Main.c
diff --git a/Drivers/VideoDrv/VideoDrv.cxx b/Drivers/VideoDrv/Main.cxx
index 25c13b8e..25c13b8e 100644
--- a/Drivers/VideoDrv/VideoDrv.cxx
+++ b/Drivers/VideoDrv/Main.cxx
diff --git a/Kernel/HALKit/AMD64/HalCoreInterruptHandlerAMD64.cxx b/Kernel/HALKit/AMD64/HalCoreInterruptHandlerAMD64.cxx
index 327ee665..29c0f3c7 100644
--- a/Kernel/HALKit/AMD64/HalCoreInterruptHandlerAMD64.cxx
+++ b/Kernel/HALKit/AMD64/HalCoreInterruptHandlerAMD64.cxx
@@ -14,7 +14,7 @@ EXTERN_C void idt_handle_gpf(Kernel::UIntPtr rsp)
{
Kernel::kcout
<< "newoskrnl: General Protection Fault, caused by "
- << Kernel::ProcessScheduler::The().Leak().TheCurrent().Leak().GetName();
+ << Kernel::ProcessScheduler::The().Leak().TheCurrent().Leak().GetProcessName();
Kernel::ProcessScheduler::The().Leak().TheCurrent().Leak().Crash();
}
@@ -25,7 +25,7 @@ EXTERN_C void idt_handle_pf(Kernel::UIntPtr rsp)
{
Kernel::kcout
<< "newoskrnl: Segmentation Fault, caused by "
- << Kernel::ProcessScheduler::The().Leak().TheCurrent().Leak().GetName();
+ << Kernel::ProcessScheduler::The().Leak().TheCurrent().Leak().GetProcessName();
Kernel::ProcessScheduler::The().Leak().TheCurrent().Leak().Crash();
}
@@ -36,7 +36,7 @@ EXTERN_C void idt_handle_math(Kernel::UIntPtr rsp)
{
Kernel::kcout
<< "newoskrnl: Math error, caused by "
- << Kernel::ProcessScheduler::The().Leak().TheCurrent().Leak().GetName();
+ << Kernel::ProcessScheduler::The().Leak().TheCurrent().Leak().GetProcessName();
Kernel::ProcessScheduler::The().Leak().TheCurrent().Leak().Crash();
}
@@ -47,7 +47,7 @@ EXTERN_C void idt_handle_generic(Kernel::UIntPtr rsp)
{
Kernel::kcout
<< "newoskrnl: Execution error, caused by "
- << Kernel::ProcessScheduler::The().Leak().TheCurrent().Leak().GetName();
+ << Kernel::ProcessScheduler::The().Leak().TheCurrent().Leak().GetProcessName();
Kernel::ProcessScheduler::The().Leak().TheCurrent().Leak().Crash();
}
@@ -58,7 +58,7 @@ EXTERN_C void idt_handle_ud(Kernel::UIntPtr rsp)
{
Kernel::kcout
<< "newoskrnl: Invalid interrupt, caused by "
- << Kernel::ProcessScheduler::The().Leak().TheCurrent().Leak().GetName();
+ << Kernel::ProcessScheduler::The().Leak().TheCurrent().Leak().GetProcessName();
Kernel::ProcessScheduler::The().Leak().TheCurrent().Leak().Crash();
}
diff --git a/Kernel/KernelKit/ProcessHeap.hxx b/Kernel/KernelKit/ProcessHeap.hxx
index 677aa835..d2ec4035 100644
--- a/Kernel/KernelKit/ProcessHeap.hxx
+++ b/Kernel/KernelKit/ProcessHeap.hxx
@@ -15,7 +15,7 @@
/// @version 5/11/23
/// @file ProcessHeap.hxx
-/// @brief memory heap for user processes.
+/// @brief Heap for user processes.
#define kUserHeapMaxSz (4096)
#define kUserHeapMag (0xFAF0FEF0)
diff --git a/Kernel/KernelKit/ProcessScheduler.hxx b/Kernel/KernelKit/ProcessScheduler.hxx
index cbce2ec2..3f6e7828 100644
--- a/Kernel/KernelKit/ProcessScheduler.hxx
+++ b/Kernel/KernelKit/ProcessScheduler.hxx
@@ -13,7 +13,7 @@
#include <KernelKit/ProcessHeap.hxx>
#include <NewKit/MutableArray.hpp>
-#define kSchedMinMicroTime (AffinityKind::kHartStandard)
+#define kSchedMinMicroTime (AffinityKind::kStandard)
#define kSchedInvalidPID (-1)
#define kSchedProcessLimitPerTeam (16U)
@@ -58,7 +58,7 @@ namespace Kernel
kInvalid = 300,
kVeryHigh = 250,
kHigh = 200,
- kHartStandard = 150,
+ kStandard = 150,
kLowUsage = 100,
kVeryLowUsage = 50,
};
@@ -167,7 +167,7 @@ namespace Kernel
kKindCount,
};
- ProcessTime PTime;
+ ProcessTime PTime{0};
PID ProcessId{kSchedInvalidPID};
Int32 Kind{kAppKind};
@@ -178,25 +178,29 @@ namespace Kernel
return Status != ProcessStatus::kDead;
}
- //! @brief Crash the app, exits with code ~0.
+ ///! @brief Crashes the app, exits with code ~0.
Void Crash();
- //! @brief Exits app.
+ ///! @brief Exits the app.
Void Exit(Int32 exitCode = 0);
- //! @brief TLS Allocate
+ ///! @brief TLS allocate.
+ ///! @param sz size of new ptr.
VoidPtr New(const SizeT& sz);
- //! @brief TLS Free.
+ ///! @brief TLS free.
+ ///! @param ptr the pointer to free.
+ ///! @param sz the size of it.
Boolean Delete(VoidPtr ptr, const SizeT& sz);
- //! @brief Wakes up threads.
+ ///! @brief Wakes up threads.
Void Wake(const bool wakeup = false);
// ProcessHeader getters.
public:
- //! @brief ProcessHeader name getter, example: "C RunTime"
- const Char* GetName() noexcept;
+ ///! @brief Get the process's name
+ ///! @example 'C Runtime Library'
+ const Char* GetProcessName() noexcept;
//! @brief return local error code of process.
//! @return Int32 local error code.
diff --git a/Kernel/KernelKit/RLE.hxx b/Kernel/KernelKit/RLE.hxx
index e43d2462..9256c23b 100644
--- a/Kernel/KernelKit/RLE.hxx
+++ b/Kernel/KernelKit/RLE.hxx
@@ -9,4 +9,7 @@
#include <NewKit/Defines.hpp>
+EXTERN_C void rle_compress(void* data, long sz, void* out, long out_sz);
+EXTERN_C void rle_decompress(void* data, long sz, void* out, long out_sz);
+
#endif // !ifndef __KERNELKIT_RLE_HXX__
diff --git a/Kernel/Sources/ProcessScheduler.cxx b/Kernel/Sources/ProcessScheduler.cxx
index a536bf52..34bc321d 100644
--- a/Kernel/Sources/ProcessScheduler.cxx
+++ b/Kernel/Sources/ProcessScheduler.cxx
@@ -138,7 +138,7 @@ namespace Kernel
}
/// @brief process name getter.
- const Char* ProcessHeader::GetName() noexcept
+ const Char* ProcessHeader::GetProcessName() noexcept
{
return this->Name;
}
@@ -273,21 +273,21 @@ namespace Kernel
{
auto unwrapped_process = *process.Leak();
- unwrapped_process.PTime = 0;
-
// set the current process.
mTeam.AsRef() = unwrapped_process;
// tell helper to find a core to schedule on.
- ProcessHelper::Switch(mTeam.AsRef().Leak().StackFrame,
- mTeam.AsRef().Leak().ProcessId);
+ ProcessHelper::Switch(unwrapped_process.StackFrame,
+ unwrapped_process.ProcessId);
+
+ unwrapped_process.PTime = static_cast<Int32>(unwrapped_process.Affinity);
- kcout << unwrapped_process.Name << ": process switched.\r";
+ kcout << unwrapped_process.Name << ": has been switched to process core.\r";
}
else
{
// otherwise increment the P-time.
- ++mTeam.AsRef().Leak().PTime;
+ --mTeam.AsRef().Leak().PTime;
}
}
@@ -336,10 +336,10 @@ namespace Kernel
if (process.Leak().GetStatus() == ProcessStatus::kStarting)
{
- if (process.Leak().PTime < static_cast<Int>(kSchedMinMicroTime))
+ if (process.Leak().PTime <= 0)
{
process.Leak().Status = ProcessStatus::kRunning;
- process.Leak().Affinity = AffinityKind::kHartStandard;
+ process.Leak().Affinity = AffinityKind::kStandard;
return true;
}
@@ -347,7 +347,7 @@ namespace Kernel
++process.Leak().PTime;
}
- return process.Leak().PTime > static_cast<Int>(kSchedMinMicroTime);
+ return process.Leak().PTime > 0;
}
/**
diff --git a/Kernel/Sources/SMPManager.cxx b/Kernel/Sources/SMPManager.cxx
index e32f8be7..f5424525 100644
--- a/Kernel/Sources/SMPManager.cxx
+++ b/Kernel/Sources/SMPManager.cxx
@@ -7,6 +7,7 @@
#include <ArchKit/ArchKit.hpp>
#include <KernelKit/ProcessScheduler.hxx>
#include <KernelKit/SMPManager.hpp>
+#include <CFKit/Property.hpp>
///! BUGS: 0
@@ -16,6 +17,8 @@
namespace Kernel
{
+ STATIC Property cSMPCoreName;
+
///! A HardwareThread class takes care of it's owned hardware thread.
///! It has a stack for it's core.
@@ -120,7 +123,16 @@ namespace Kernel
//! @brief Constructor and destructor
///! @brief Default constructor.
- SMPManager::SMPManager() = default;
+ SMPManager::SMPManager()
+ {
+ StringView strCoreName(512);
+ strCoreName += "\\Properties\\Smp\\SchedulerClass";
+
+ cSMPCoreName.GetKey() = strCoreName;
+ cSMPCoreName.GetValue() = (UIntPtr)this;
+
+ kcout << "newoskrnl: initializing " << strCoreName.CData() << endl;
+ }
///! @brief Default destructor.
SMPManager::~SMPManager() = default;
diff --git a/Comm/herror.hxx b/SCI/ErrorTypes.hxx
index 08fbc81d..7ab31215 100644
--- a/Comm/herror.hxx
+++ b/SCI/ErrorTypes.hxx
@@ -6,7 +6,7 @@
#pragma once
-#include <Comm/newstd.hxx>
+#include <SCI/StandardInterface.hxx>
#ifdef __KERNEL__
#error !!! including header in kernel mode !!!
diff --git a/SCI/Hint.hxx b/SCI/Hint.hxx
new file mode 100644
index 00000000..fd91ece9
--- /dev/null
+++ b/SCI/Hint.hxx
@@ -0,0 +1,23 @@
+/* -------------------------------------------
+
+ Copyright ZKA Technologies
+
+------------------------------------------- */
+
+#ifndef __SCI_HINT_HXX__
+#define __SCI_HINT_HXX__
+
+#pragma compiler(hint_manifest)
+
+#define _Input
+#define _Output
+
+#define _Optional
+
+#define _StrictCheckInput
+#define _StrictCheckOutput
+
+#define _InOut
+#define _StrictInOut
+
+#endif // ifndef __SCI_HINT_HXX__
diff --git a/Comm/newstd.hxx b/SCI/StandardInterface.hxx
index d8ef3123..9e792546 100644
--- a/Comm/newstd.hxx
+++ b/SCI/StandardInterface.hxx
@@ -7,8 +7,8 @@ Purpose: System Call Interface.
------------------------------------------- */
-#ifndef _INC_COMM_NEWSTD_HXX_
-#define _INC_COMM_NEWSTD_HXX_
+#ifndef __SCI_STD_HXX__
+#define __SCI_STD_HXX__
#ifdef __KERNEL__
#error !!! including header in kernel mode !!!
@@ -22,9 +22,9 @@ Purpose: System Call Interface.
#define cRestrictW "w"
#define cRestrictRW "rw"
-class NSSyscallInterface; /// @brief System call class.
+class SCISharedInterface; /// @brief System call class.
-typedef int OSType;
+typedef long long int FD;
typedef bool Bool;
typedef void UInt0;
@@ -47,14 +47,14 @@ typedef UInt32 PowerID;
/**
@brief System call class.
*/
-class NSSyscallInterface
+class SCISharedInterface
{
public:
- explicit NSSyscallInterface() = default;
- virtual ~NSSyscallInterface() = default;
+ explicit SCISharedInterface() = default;
+ virtual ~SCISharedInterface() = default;
- NSSyscallInterface& operator=(const NSSyscallInterface&) = default;
- NSSyscallInterface(const NSSyscallInterface&) = default;
+ SCISharedInterface& operator=(const SCISharedInterface&) = default;
+ SCISharedInterface(const SCISharedInterface&) = default;
public:
/// @brief disable device.
@@ -78,7 +78,7 @@ public:
virtual UInt0 Terminate() = 0;
/// @brief exit thread.
- virtual Bool Exit(OSType code) = 0;
+ virtual Bool Exit(FD code) = 0;
/// @brief alloc pointer.
virtual UInt0* New(long long sz) = 0;
@@ -89,35 +89,35 @@ public:
// THOSE MAY REQUIRE PERMISSIONS FROM THE USER. //
/// @brief Open descriptor.
- virtual OSType OpenStorage(const char* path, const char* restr) = 0;
+ virtual FD OpenStorage(const char* path, const char* restr) = 0;
/// @brief Close descriptor.
- virtual UInt0 CloseStorage(OSType descriptorType) = 0;
+ virtual UInt0 CloseStorage(FD descriptorType) = 0;
/// @brief Execute from shell.
- virtual OSType URLExecute(const UTFChar* shellLink) = 0;
+ virtual FD URLExecute(const UTFChar* shellLink) = 0;
/// @brief Read descriptor.
- virtual UInt0* ReadStorage(const UTFChar* cmdNameOrData, SizeT cmdSize, OSType descriptorType) = 0;
+ virtual UInt0* ReadStorage(const UTFChar* cmdNameOrData, SizeT cmdSize, FD descriptorType) = 0;
/// @brief Seek in storage file
- virtual UInt64 SeekStorage(OSType descriptorType, UInt64 offset) = 0;
+ virtual UInt64 SeekStorage(FD descriptorType, UInt64 offset) = 0;
/// @brief Tell storage cursor.
- virtual UInt64 TellStorage(OSType descriptorType) = 0;
+ virtual UInt64 TellStorage(FD descriptorType) = 0;
/// @brief Remove stored file.
- virtual UInt64 RemoveStorage(OSType descriptorType) = 0;
+ virtual UInt64 RemoveStorage(FD descriptorType) = 0;
/// @brief Create stored file.
- virtual OSType CreateStorage(const UTFChar* fileName, UInt64 flags) = 0;
+ virtual FD CreateStorage(const UTFChar* fileName, UInt64 flags) = 0;
/// @brief Write descriptor.
- virtual UInt0* WriteStorage(const UTFChar* cmdNameOrData, SizeT cmdSize, OSType descriptorType) = 0;
+ virtual UInt0* WriteStorage(const UTFChar* cmdNameOrData, SizeT cmdSize, FD descriptorType) = 0;
};
/// @brief Get shared syscall object.
/// @return Syscall implementation.
-IMPORT_C NSSyscallInterface* NSGetSharedSyscallInterface(UInt0);
+IMPORT_C SCISharedInterface* SCIGetSharedInterface(UInt0);
-#endif // ifndef _INC_COMM_NEWSTD_HXX_
+#endif // ifndef __SCI_STD_HXX__
diff --git a/Comm/compile_flags.txt b/SCI/compile_flags.txt
index 509e3eed..509e3eed 100644
--- a/Comm/compile_flags.txt
+++ b/SCI/compile_flags.txt
diff --git a/newoskrnl.files b/newoskrnl.files
index 43039950..762df4f9 100644
--- a/newoskrnl.files
+++ b/newoskrnl.files
@@ -36,9 +36,10 @@ Boot/Sources/HEL/POWER/CoreBootStartup.S
Boot/Sources/HEL/64X000/Boot64x0.S
Boot/Sources/compile_flags.txt
Boot/amd64-efi.make
-Comm/compile_flags.txt
-Comm/herror.hxx
-Comm/newstd.hxx
+SCI/compile_flags.txt
+SCI/ErrorTypes.hxx
+SCI/StandardInterface.hxx
+SCI/Hint.hxx
DDK/KernelCall.c
DDK/KernelDev.c
DDK/KernelDev.h
@@ -46,7 +47,8 @@ DDK/KernelDispatchCall.S
DDK/KernelPrint.c
DDK/KernelPrint.h
DDK/KernelStd.h
-DDK/KernelStdCxx.cc
+DDK/KernelAlloc.c
+DDK/KernelCxxRt.cxx
DDK/KernelString.c
DDK/KernelString.h
DDK/ReadMe.txt