summaryrefslogtreecommitdiffhomepage
diff options
context:
space:
mode:
-rwxr-xr-xformat.sh (renamed from scripts/format.sh)0
-rwxr-xr-xgdb.sh (renamed from scripts/gdb.sh)0
-rw-r--r--public/frameworks/CoreFoundation.fwrk/headers/Dictionary.h5
-rw-r--r--public/frameworks/CoreFoundation.fwrk/headers/Foundation.h10
-rw-r--r--public/frameworks/DiskImage.fwrk/headers/DiskImage.h2
-rw-r--r--public/frameworks/DiskImage.fwrk/src/DiskImage+EPM.cc2
-rw-r--r--public/frameworks/DiskImage.fwrk/src/DiskImage+OpenHeFS.cc (renamed from public/frameworks/DiskImage.fwrk/src/DiskImage+HeFS.cc)18
-rw-r--r--public/frameworks/KernelTest.fwrk/headers/Foundation.h9
-rw-r--r--public/frameworks/KernelTest.fwrk/headers/SourceLocation.h8
-rw-r--r--public/frameworks/KernelTest.fwrk/headers/TestCase.h47
-rw-r--r--public/frameworks/KernelTest.fwrk/src/CSymbols.cc21
-rw-r--r--src/boot/BootKit/BootKit.h2
-rw-r--r--src/kernel/ArchKit/ArchKit.h2
-rw-r--r--src/kernel/CFKit/GUIDWizard.h2
-rw-r--r--src/kernel/CFKit/GUIDWrapper.h2
-rw-r--r--src/kernel/CFKit/Property.h2
-rw-r--r--src/kernel/CompilerKit/Detail.h2
-rw-r--r--src/kernel/FSKit/Config.h (renamed from src/kernel/FSKit/Defines.h)2
-rw-r--r--src/kernel/FSKit/Ext2.h2
-rw-r--r--src/kernel/FSKit/NeFS.h2
-rw-r--r--src/kernel/FSKit/OpenHeFS.h2
-rw-r--r--src/kernel/FirmwareKit/EFI/EFI.h2
-rw-r--r--src/kernel/FirmwareKit/EFI/NS.h2
-rw-r--r--src/kernel/FirmwareKit/EPM.h2
-rw-r--r--src/kernel/FirmwareKit/GPT.h2
-rw-r--r--src/kernel/FirmwareKit/Handover.h2
-rw-r--r--src/kernel/FirmwareKit/NeBoot/BootNet.h2
-rw-r--r--src/kernel/FirmwareKit/NeBoot/NeBoot.h2
-rw-r--r--src/kernel/HALKit/AMD64/CPUID.h2
-rw-r--r--src/kernel/HALKit/AMD64/Hypervisor.h2
-rw-r--r--src/kernel/HALKit/AMD64/PCI/DMA.cc2
-rw-r--r--src/kernel/HALKit/AMD64/Paging.h2
-rw-r--r--src/kernel/HALKit/AMD64/Processor.h2
-rw-r--r--src/kernel/HALKit/ARM64/ApplicationProcessor.h2
-rw-r--r--src/kernel/HALKit/ARM64/Paging.h2
-rw-r--r--src/kernel/HALKit/ARM64/Processor.h2
-rw-r--r--src/kernel/HALKit/POWER/AP.h2
-rw-r--r--src/kernel/HALKit/POWER/Processor.h2
-rw-r--r--src/kernel/HALKit/RISCV/AP.h2
-rw-r--r--src/kernel/KernelKit/BinaryMutex.h2
-rw-r--r--src/kernel/KernelKit/Config.h (renamed from src/kernel/KernelKit/Defines.h)2
-rw-r--r--src/kernel/KernelKit/CoreProcessScheduler.h2
-rw-r--r--src/kernel/KernelKit/DriveMgr.h2
-rw-r--r--src/kernel/KernelKit/IDylibObject.h2
-rw-r--r--src/kernel/KernelKit/ILoader.h2
-rw-r--r--src/kernel/KernelKit/IPEFDylibObject.h2
-rw-r--r--src/kernel/KernelKit/KPC.h2
-rw-r--r--src/kernel/KernelKit/LockDelegate.h2
-rw-r--r--src/kernel/KernelKit/MSDOS.h2
-rw-r--r--src/kernel/KernelKit/PCI/Database.h2
-rw-r--r--src/kernel/KernelKit/PCI/Device.h2
-rw-r--r--src/kernel/KernelKit/PCI/Express.h2
-rw-r--r--src/kernel/KernelKit/PCI/IO.h2
-rw-r--r--src/kernel/KernelKit/PCI/Iterator.h2
-rw-r--r--src/kernel/KernelKit/PCI/PCI.h2
-rw-r--r--src/kernel/KernelKit/PE.h2
-rw-r--r--src/kernel/KernelKit/PEF.h2
-rw-r--r--src/kernel/KernelKit/Semaphore.h2
-rw-r--r--src/kernel/KernelKit/ThreadLocalStorage.h2
-rw-r--r--src/kernel/KernelKit/UserMgr.h2
-rw-r--r--src/kernel/KernelKit/UserProcessScheduler.h8
-rw-r--r--src/kernel/KernelKit/XCOFF.h2
-rw-r--r--src/kernel/KernelKit/ZXD.h2
-rw-r--r--src/kernel/NeKit/Array.h5
-rw-r--r--src/kernel/NeKit/ArrayList.h2
-rw-r--r--src/kernel/NeKit/Atom.h2
-rw-r--r--src/kernel/NeKit/Config.h (renamed from src/kernel/NeKit/Defines.h)0
-rw-r--r--src/kernel/NeKit/Crc32.h2
-rw-r--r--src/kernel/NeKit/CxxAbi.h2
-rw-r--r--src/kernel/NeKit/ErrorOr.h2
-rw-r--r--src/kernel/NeKit/Function.h2
-rw-r--r--src/kernel/NeKit/Json.h2
-rw-r--r--src/kernel/NeKit/KString.h2
-rw-r--r--src/kernel/NeKit/KernelPanic.h2
-rw-r--r--src/kernel/NeKit/MutableArray.h2
-rw-r--r--src/kernel/NeKit/OwnPtr.h15
-rw-r--r--src/kernel/NeKit/PageMgr.h2
-rw-r--r--src/kernel/NeKit/Pair.h2
-rw-r--r--src/kernel/NeKit/Ref.h5
-rw-r--r--src/kernel/NeKit/Stream.h2
-rw-r--r--src/kernel/NeKit/Utils.h2
-rw-r--r--src/kernel/NeKit/Variant.h2
-rw-r--r--src/kernel/NeKit/Vet.h34
-rw-r--r--src/kernel/NetworkKit/IP.h2
-rw-r--r--src/kernel/NetworkKit/IPC.h2
-rw-r--r--src/kernel/NetworkKit/LTE.h2
-rw-r--r--src/kernel/NetworkKit/MAC.h2
-rw-r--r--src/kernel/SignalKit/Signals.h2
-rw-r--r--src/kernel/SwapKit/DiskSwap.h2
-rw-r--r--src/kernel/src/Defines.cc2
-rw-r--r--src/kernel/src/IPEFDylibObject.cc2
-rw-r--r--src/kernel/src/PE32CodeMgr.cc4
-rw-r--r--src/kernel/src/PEFCodeMgr.cc4
-rw-r--r--src/misc/BenchKit/Chronometer.h2
-rw-r--r--src/modules/ACPI/ACPI.h2
-rw-r--r--src/modules/ACPI/ACPIFactoryInterface.h2
-rw-r--r--src/modules/AHCI/AHCI.h2
-rw-r--r--src/modules/APM/APM.h2
-rw-r--r--src/modules/ATA/ATA.h4
-rw-r--r--src/modules/CoreGfx/CoreGfx.h2
-rw-r--r--src/modules/CoreGfx/TextGfx.h2
-rw-r--r--src/modules/HPET/Config.h (renamed from src/modules/HPET/Defines.h)2
-rw-r--r--src/modules/LTE/LTE.h2
-rw-r--r--src/modules/MBCI/MBCI.h2
-rw-r--r--src/modules/NVME/NVME.h4
-rw-r--r--src/modules/Power/PowerFactory.h2
-rw-r--r--src/modules/SCSI/SCSI.h2
-rw-r--r--src/modules/XHCI/XHCI.h6
108 files changed, 192 insertions, 191 deletions
diff --git a/scripts/format.sh b/format.sh
index f36943cd..f36943cd 100755
--- a/scripts/format.sh
+++ b/format.sh
diff --git a/scripts/gdb.sh b/gdb.sh
index f908da16..f908da16 100755
--- a/scripts/gdb.sh
+++ b/gdb.sh
diff --git a/public/frameworks/CoreFoundation.fwrk/headers/Dictionary.h b/public/frameworks/CoreFoundation.fwrk/headers/Dictionary.h
index fa4b17b9..75b6bb27 100644
--- a/public/frameworks/CoreFoundation.fwrk/headers/Dictionary.h
+++ b/public/frameworks/CoreFoundation.fwrk/headers/Dictionary.h
@@ -19,13 +19,12 @@ class CFDictionary final {
CFDictionary(const CFDictionary&) = default;
Value& operator[](Key& at) {
- MUST_PASS(this->Find(at));
- return fArray[at];
+ return this->Find(at);
}
Bool Empty() { return this->fCount > 0; }
- Bool Find(Key& key) { return No; }
+ Bool Find(Key& key) { NE_UNUSED(key); return false; }
operator bool() { return !this->Empty(); }
diff --git a/public/frameworks/CoreFoundation.fwrk/headers/Foundation.h b/public/frameworks/CoreFoundation.fwrk/headers/Foundation.h
index a8a31559..d11697db 100644
--- a/public/frameworks/CoreFoundation.fwrk/headers/Foundation.h
+++ b/public/frameworks/CoreFoundation.fwrk/headers/Foundation.h
@@ -14,7 +14,7 @@
namespace CF {
class CFString;
-union CFGUID;
+union CFGuid;
class CFProperty;
class CFObject;
@@ -47,7 +47,7 @@ struct CFPoint {
CFInteger64 y_2{0UL};
CFReal ang{0UL};
- operator bool();
+ explicit operator bool();
/// @brief Check if point is within the current CFPoint.
/// @param point the current point to check.
@@ -67,13 +67,13 @@ struct CFRect final {
CFInteger64 width{0UL};
CFInteger64 height{0UL};
- operator bool();
+ explicit operator bool();
BOOL SizeMatches(CFRect& rect);
BOOL PositionMatches(CFRect& rect);
};
-union CFGUID final {
+union CFGuid final {
alignas(8) UInt16 fU8[16];
alignas(8) UInt16 fU16[8];
alignas(8) UInt32 fU32[4];
@@ -86,6 +86,4 @@ union CFGUID final {
UInt8 fMs4[8];
} fUuid;
};
-
-using CF_GUID_TYPE = union CFGUID;
} // namespace CF \ No newline at end of file
diff --git a/public/frameworks/DiskImage.fwrk/headers/DiskImage.h b/public/frameworks/DiskImage.fwrk/headers/DiskImage.h
index 9028592d..2ed66345 100644
--- a/public/frameworks/DiskImage.fwrk/headers/DiskImage.h
+++ b/public/frameworks/DiskImage.fwrk/headers/DiskImage.h
@@ -55,6 +55,6 @@ SInt32 DIFormatFilesystemNeFS(struct DI_DISK_IMAGE& img);
/// @brief OpenHeFS format over EPM.
/// @param img disk image structure.
/// @return Status code upon completion.
-SInt32 DIFormatFilesystemHeFS(struct DI_DISK_IMAGE& img);
+SInt32 DIFormatFilesystemOpenHeFS(struct DI_DISK_IMAGE& img);
} // namespace DI
diff --git a/public/frameworks/DiskImage.fwrk/src/DiskImage+EPM.cc b/public/frameworks/DiskImage.fwrk/src/DiskImage+EPM.cc
index ab533e20..b9cf42d1 100644
--- a/public/frameworks/DiskImage.fwrk/src/DiskImage+EPM.cc
+++ b/public/frameworks/DiskImage.fwrk/src/DiskImage+EPM.cc
@@ -12,7 +12,7 @@
#include <FSKit/NeFS.h>
#include <FirmwareKit/EPM.h>
-/// @brief EPM format disk
+/// @brief Format a disk under the EPM scheme.
/// @param img disk image structure.
/// @return Status code upon completion.
SInt32 DI::DIFormatPartitionEPM(struct DI_DISK_IMAGE& img) {
diff --git a/public/frameworks/DiskImage.fwrk/src/DiskImage+HeFS.cc b/public/frameworks/DiskImage.fwrk/src/DiskImage+OpenHeFS.cc
index f57de649..9d52f94d 100644
--- a/public/frameworks/DiskImage.fwrk/src/DiskImage+HeFS.cc
+++ b/public/frameworks/DiskImage.fwrk/src/DiskImage+OpenHeFS.cc
@@ -15,18 +15,12 @@
/// @brief format OpenHeFS over an EPM disk.
/// @param img disk image structure.
/// @return Status code upon completion.
-SInt32 DI::DIFormatFilesystemHeFS(struct DI_DISK_IMAGE& img) {
- if (!img.sector_sz || (img.sector_sz % kDISectorSz != 0)) return kDIFailureStatus;
+SInt32 DI::DIFormatFilesystemOpenHeFS(struct DI_DISK_IMAGE& img) {
+ NE_UNUSED(img);
- if (*img.out_name == 0 || *img.disk_name == 0) return kDIFailureStatus;
+ PrintOut(nullptr, "%s",
+ "DIFormatFilesystemOpenHeFS is not formattable on DI, work may be done in the future to "
+ "address that.");
- IORef handle = IoOpenFile(img.out_name, nullptr);
-
- if (!handle) return kDIFailureStatus;
-
- ::IoCloseFile(handle);
-
- handle = nullptr;
-
- return kDISuccessStatus;
+ return kDIFailureStatus;
} \ No newline at end of file
diff --git a/public/frameworks/KernelTest.fwrk/headers/Foundation.h b/public/frameworks/KernelTest.fwrk/headers/Foundation.h
index 4329af6b..8ff956a7 100644
--- a/public/frameworks/KernelTest.fwrk/headers/Foundation.h
+++ b/public/frameworks/KernelTest.fwrk/headers/Foundation.h
@@ -6,11 +6,14 @@
#pragma once
-#include <KernelKit/DebugOutput.h>
-#include <NeKit/KernelPanic.h>
+#include <libSystem/SystemKit/System.h>
+#include <libSystem/SystemKit/Err.h>
+
+#include <CoreFoundation.fwrk/headers/Object.h>
+#include <CoreFoundation.fwrk/headers/String.h>
#define KT_TEST_VERSION_BCD (0x0001)
-#define KT_TEST_VERSION "dev-nekernel-test"
+#define KT_TEST_VERSION "v0.0.1"
#define KT_TEST_SUCCESS (kErrorSuccess)
#define KT_TEST_FAILURE (kErrorSuccess + 1)
diff --git a/public/frameworks/KernelTest.fwrk/headers/SourceLocation.h b/public/frameworks/KernelTest.fwrk/headers/SourceLocation.h
index 6507864b..6cfddae2 100644
--- a/public/frameworks/KernelTest.fwrk/headers/SourceLocation.h
+++ b/public/frameworks/KernelTest.fwrk/headers/SourceLocation.h
@@ -6,8 +6,6 @@
#pragma once
-#include <CoreFoundation.fwrk/headers/Object.h>
-#include <CoreFoundation.fwrk/headers/String.h>
#include <KernelTest.fwrk/headers/Foundation.h>
class KTSourceLocation;
@@ -17,7 +15,7 @@ class KTSourceLocation;
/// ================================================================================
class KTSourceLocation final CF_OBJECT {
public:
- explicit KTSourceLocation() = delete;
+ KTSourceLocation() = delete;
~KTSourceLocation() override = default;
LIBSYS_COPY_DELETE(KTSourceLocation);
@@ -25,8 +23,8 @@ class KTSourceLocation final CF_OBJECT {
public:
KTSourceLocation(const Char*, const SInt32 = 0UL);
- CF::CFString File();
- SInt32 Line();
+ CF::CFString& File() { return mFile; }
+ SInt32 Line() { return mLine; }
CF::CFString operator()();
diff --git a/public/frameworks/KernelTest.fwrk/headers/TestCase.h b/public/frameworks/KernelTest.fwrk/headers/TestCase.h
index 26325d42..2dcc56ef 100644
--- a/public/frameworks/KernelTest.fwrk/headers/TestCase.h
+++ b/public/frameworks/KernelTest.fwrk/headers/TestCase.h
@@ -18,34 +18,29 @@
KTTestCase##OBJECT{}.Run(); \
}
-#define KT_MUST_PASS(MSG, LEFT_COND, RIGHT_COND) \
- if (LEFT_COND != RIGHT_COND) { \
- (Kernel::Void)(Kernel::kout << "[KERNEL-TEST] BREAK: LEFT_COND: " << #LEFT_COND \
- << " RIGHT_COND: " << #RIGHT_COND << Kernel::kendl); \
- (Kernel::Void)(Kernel::kout << "[KERNEL-TEST] BREAK: MSG: " << MSG << Kernel::kendl); \
- MUST_PASS(NO); \
- } else { \
- (Kernel::Void)(Kernel::kout << "[KERNEL-TEST] PASS: MSG: " << MSG << Kernel::kendl); \
+#define KT_MUST_PASS(MSG, LEFT_COND, RIGHT_COND) \
+ if (LEFT_COND != RIGHT_COND) { \
+ MUST_PASS(NO); \
}
-#define KT_DECL_TEST(NAME, FN) \
- class KTTestCase##NAME final { \
- public: \
- explicit KTTestCase##NAME() = default; \
- ~KTTestCase##NAME() = default; \
- LIBSYS_COPY_DELETE(KTTestCase##NAME); \
- Kernel::Void Run(); \
- const Kernel::Char* ToString(); \
- }; \
- inline Kernel::Void KTTestCase##NAME::Run() { \
- auto ret = FN() == YES; \
- if (!ret) { \
- Kernel::kout << "[KERNEL-TEST] TEST FAILED!" << Kernel::kendl; \
- MUST_PASS(ret); \
- } \
- } \
- inline const Kernel::Char* KTTestCase##NAME::ToString() { \
- return #FN; \
+#define KT_DECL_TEST(NAME, FN) \
+ class KTTestCase##NAME final { \
+ public: \
+ KTTestCase##NAME() = default; \
+ ~KTTestCase##NAME() = default; \
+ LIBSYS_COPY_DELETE(KTTestCase##NAME); \
+ Void Run(); \
+ const Char* ToString(); \
+ }; \
+ inline Void KTTestCase##NAME::Run() { \
+ auto ret = FN() == YES; \
+ if (!ret) { \
+ PrintOut(nullptr, "[KERNEL-TEST] TEST FAILED!"); \
+ MUST_PASS(ret); \
+ } \
+ } \
+ inline const Char* KTTestCase##NAME::ToString() { \
+ return #FN; \
}
KT_DECL_TEST(AlwaysBreak, []() -> bool {
diff --git a/public/frameworks/KernelTest.fwrk/src/CSymbols.cc b/public/frameworks/KernelTest.fwrk/src/CSymbols.cc
deleted file mode 100644
index 575525f0..00000000
--- a/public/frameworks/KernelTest.fwrk/src/CSymbols.cc
+++ /dev/null
@@ -1,21 +0,0 @@
-/* ========================================
-
- Copyright (C) 2025, Amlal El Mahrouss, licensed under the Apache 2.0 license.
-
-======================================== */
-
-#include <public/frameworks/KernelTest.fwrk/headers/TestCase.h>
-
-/// ================================================================================
-/// @brief Function to run breaking test.
-/// ================================================================================
-EXTERN_C Kernel::Void KT_TestBreak() {
- KT_RUN_TEST(AlwaysBreak);
-}
-
-/// ================================================================================
-/// @brief Function to run passing test.
-/// ================================================================================
-EXTERN_C Kernel::Void KT_TestPass() {
- KT_RUN_TEST(AlwaysPass);
-} \ No newline at end of file
diff --git a/src/boot/BootKit/BootKit.h b/src/boot/BootKit/BootKit.h
index 55392ef6..fb8941e0 100644
--- a/src/boot/BootKit/BootKit.h
+++ b/src/boot/BootKit/BootKit.h
@@ -24,7 +24,7 @@
/// Include other APIs.
/***********************************************************************************/
-#include <NeKit/Defines.h>
+#include <NeKit/Config.h>
#include <modules/ATA/ATA.h>
#include <FirmwareKit/EFI.h>
diff --git a/src/kernel/ArchKit/ArchKit.h b/src/kernel/ArchKit/ArchKit.h
index 63f8f406..9d35c445 100644
--- a/src/kernel/ArchKit/ArchKit.h
+++ b/src/kernel/ArchKit/ArchKit.h
@@ -7,7 +7,7 @@
#pragma once
#include <NeKit/Array.h>
-#include <NeKit/Defines.h>
+#include <NeKit/Config.h>
#include <NeKit/Function.h>
#include <FirmwareKit/Handover.h>
diff --git a/src/kernel/CFKit/GUIDWizard.h b/src/kernel/CFKit/GUIDWizard.h
index 8745a1f9..8d8f6e54 100644
--- a/src/kernel/CFKit/GUIDWizard.h
+++ b/src/kernel/CFKit/GUIDWizard.h
@@ -9,7 +9,7 @@
#include <CFKit/GUIDWrapper.h>
#include <NeKit/Array.h>
#include <NeKit/ArrayList.h>
-#include <NeKit/Defines.h>
+#include <NeKit/Config.h>
#include <NeKit/ErrorOr.h>
#include <NeKit/KString.h>
#include <NeKit/Ref.h>
diff --git a/src/kernel/CFKit/GUIDWrapper.h b/src/kernel/CFKit/GUIDWrapper.h
index f58c489a..ffea7fcb 100644
--- a/src/kernel/CFKit/GUIDWrapper.h
+++ b/src/kernel/CFKit/GUIDWrapper.h
@@ -6,7 +6,7 @@
#pragma once
-#include <NeKit/Defines.h>
+#include <NeKit/Config.h>
#include <NeKit/Ref.h>
#include <NeKit/Stream.h>
diff --git a/src/kernel/CFKit/Property.h b/src/kernel/CFKit/Property.h
index cfb8a599..1dab7b71 100644
--- a/src/kernel/CFKit/Property.h
+++ b/src/kernel/CFKit/Property.h
@@ -9,7 +9,7 @@
#include <CFKit/GUIDWrapper.h>
#include <NeKit/Array.h>
-#include <NeKit/Defines.h>
+#include <NeKit/Config.h>
#include <NeKit/Function.h>
#include <NeKit/KString.h>
diff --git a/src/kernel/CompilerKit/Detail.h b/src/kernel/CompilerKit/Detail.h
index 93e9b2dd..14c23754 100644
--- a/src/kernel/CompilerKit/Detail.h
+++ b/src/kernel/CompilerKit/Detail.h
@@ -7,7 +7,7 @@
#pragma once
#ifdef __NEOSKRNL__
-#include <NeKit/Defines.h>
+#include <NeKit/Config.h>
#endif // ifdef __NEOSKRNL__
#define NE_COPY_DELETE(KLASS) \
diff --git a/src/kernel/FSKit/Defines.h b/src/kernel/FSKit/Config.h
index c5bf8f88..4c589481 100644
--- a/src/kernel/FSKit/Defines.h
+++ b/src/kernel/FSKit/Config.h
@@ -6,7 +6,7 @@
#pragma once
-#include <NeKit/Defines.h>
+#include <NeKit/Config.h>
#define FSKIT_VERSION "1.0.0"
#define FSKIT_VERSION_BCD 0x0100
diff --git a/src/kernel/FSKit/Ext2.h b/src/kernel/FSKit/Ext2.h
index e979e556..35b2bf23 100644
--- a/src/kernel/FSKit/Ext2.h
+++ b/src/kernel/FSKit/Ext2.h
@@ -8,7 +8,7 @@
#include <CompilerKit/CompilerKit.h>
#include <KernelKit/DriveMgr.h>
-#include <NeKit/Defines.h>
+#include <NeKit/Config.h>
#include <NeKit/KString.h>
#include <hint/CompilerHint.h>
diff --git a/src/kernel/FSKit/NeFS.h b/src/kernel/FSKit/NeFS.h
index c91d858d..5e38aaf5 100644
--- a/src/kernel/FSKit/NeFS.h
+++ b/src/kernel/FSKit/NeFS.h
@@ -18,7 +18,7 @@ default.
#include <CompilerKit/CompilerKit.h>
#include <KernelKit/DriveMgr.h>
-#include <NeKit/Defines.h>
+#include <NeKit/Config.h>
#include <NeKit/KString.h>
#include <hint/CompilerHint.h>
diff --git a/src/kernel/FSKit/OpenHeFS.h b/src/kernel/FSKit/OpenHeFS.h
index 1adfd873..bd5f3753 100644
--- a/src/kernel/FSKit/OpenHeFS.h
+++ b/src/kernel/FSKit/OpenHeFS.h
@@ -10,7 +10,7 @@
#include <KernelKit/DriveMgr.h>
#include <KernelKit/UserMgr.h>
#include <NeKit/Crc32.h>
-#include <NeKit/Defines.h>
+#include <NeKit/Config.h>
#include <NeKit/KString.h>
#include <hint/CompilerHint.h>
diff --git a/src/kernel/FirmwareKit/EFI/EFI.h b/src/kernel/FirmwareKit/EFI/EFI.h
index 966e3780..8378fbd9 100644
--- a/src/kernel/FirmwareKit/EFI/EFI.h
+++ b/src/kernel/FirmwareKit/EFI/EFI.h
@@ -11,7 +11,7 @@
@brief Implementation of the main EFI protocols.
*/
-#include <NeKit/Defines.h>
+#include <NeKit/Config.h>
using namespace Kernel;
diff --git a/src/kernel/FirmwareKit/EFI/NS.h b/src/kernel/FirmwareKit/EFI/NS.h
index 64e59870..1314e872 100644
--- a/src/kernel/FirmwareKit/EFI/NS.h
+++ b/src/kernel/FirmwareKit/EFI/NS.h
@@ -6,7 +6,7 @@
#pragma once
-#include <NeKit/Defines.h>
+#include <NeKit/Config.h>
namespace Firmware::Detail::EFI {
using namespace Kernel;
diff --git a/src/kernel/FirmwareKit/EPM.h b/src/kernel/FirmwareKit/EPM.h
index 8df4d345..24c0b275 100644
--- a/src/kernel/FirmwareKit/EPM.h
+++ b/src/kernel/FirmwareKit/EPM.h
@@ -11,7 +11,7 @@
#ifndef FIRMWAREKIT_EPM_H
#define FIRMWAREKIT_EPM_H
-#include <NeKit/Defines.h>
+#include <NeKit/Config.h>
#define kEPMNameLength (32)
#define kEPMFilesystemLength (16)
diff --git a/src/kernel/FirmwareKit/GPT.h b/src/kernel/FirmwareKit/GPT.h
index 1772cc79..6264bf30 100644
--- a/src/kernel/FirmwareKit/GPT.h
+++ b/src/kernel/FirmwareKit/GPT.h
@@ -7,7 +7,7 @@
#pragma once
#include <FirmwareKit/EFI/EFI.h>
-#include <NeKit/Defines.h>
+#include <NeKit/Config.h>
#define kSectorAlignGPT_PartTbl (420U)
#define kSectorAlignGPT_PartEntry (72U)
diff --git a/src/kernel/FirmwareKit/Handover.h b/src/kernel/FirmwareKit/Handover.h
index 354b6e57..380691de 100644
--- a/src/kernel/FirmwareKit/Handover.h
+++ b/src/kernel/FirmwareKit/Handover.h
@@ -18,7 +18,7 @@
#pragma once
#include <FirmwareKit/EFI/EFI.h>
-#include <NeKit/Defines.h>
+#include <NeKit/Config.h>
#define kHandoverMagic (0xBADCC)
#define kHandoverVersion (0x0117)
diff --git a/src/kernel/FirmwareKit/NeBoot/BootNet.h b/src/kernel/FirmwareKit/NeBoot/BootNet.h
index 3637bab0..dca655b7 100644
--- a/src/kernel/FirmwareKit/NeBoot/BootNet.h
+++ b/src/kernel/FirmwareKit/NeBoot/BootNet.h
@@ -6,7 +6,7 @@
#pragma once
-#include <NeKit/Defines.h>
+#include <NeKit/Config.h>
#define kBootNetINetMagic "ONET"
#define kBootNetINetMagicLength (4)
diff --git a/src/kernel/FirmwareKit/NeBoot/NeBoot.h b/src/kernel/FirmwareKit/NeBoot/NeBoot.h
index 8e8fd87f..1ca3b13c 100644
--- a/src/kernel/FirmwareKit/NeBoot/NeBoot.h
+++ b/src/kernel/FirmwareKit/NeBoot/NeBoot.h
@@ -6,7 +6,7 @@
#pragma once
-#include <NeKit/Defines.h>
+#include <NeKit/Config.h>
namespace Firmware::Detail::NeBoot {
using namespace Kernel;
diff --git a/src/kernel/HALKit/AMD64/CPUID.h b/src/kernel/HALKit/AMD64/CPUID.h
index 0ab95c07..90d2c268 100644
--- a/src/kernel/HALKit/AMD64/CPUID.h
+++ b/src/kernel/HALKit/AMD64/CPUID.h
@@ -13,7 +13,7 @@
#pragma once
-#include <NeKit/Defines.h>
+#include <NeKit/Config.h>
EXTERN_C {
#include <cpuid.h>
diff --git a/src/kernel/HALKit/AMD64/Hypervisor.h b/src/kernel/HALKit/AMD64/Hypervisor.h
index 4cacb003..5a96c657 100644
--- a/src/kernel/HALKit/AMD64/Hypervisor.h
+++ b/src/kernel/HALKit/AMD64/Hypervisor.h
@@ -6,7 +6,7 @@
#pragma once
-#include <NeKit/Defines.h>
+#include <NeKit/Config.h>
namespace Kernel {
MAKE_STRING_ENUM(HYPERVISOR)
diff --git a/src/kernel/HALKit/AMD64/PCI/DMA.cc b/src/kernel/HALKit/AMD64/PCI/DMA.cc
index 809494b6..dfbc1f68 100644
--- a/src/kernel/HALKit/AMD64/PCI/DMA.cc
+++ b/src/kernel/HALKit/AMD64/PCI/DMA.cc
@@ -57,7 +57,7 @@ OwnPtr<IOBuf<Char*>> DMAFactory::Construct(OwnPtr<DMAWrapper>& dma) {
if (!dma) return {};
OwnPtr<IOBuf<Char*>> dmaOwnPtr =
- mm_make_own_ptr<IOBuf<Char*>, char*>(reinterpret_cast<char*>(dma->fAddress));
+ make_ptr<IOBuf<Char*>, char*>(reinterpret_cast<char*>(dma->fAddress));
if (!dmaOwnPtr) return {};
diff --git a/src/kernel/HALKit/AMD64/Paging.h b/src/kernel/HALKit/AMD64/Paging.h
index 3325d2c7..b8b276c0 100644
--- a/src/kernel/HALKit/AMD64/Paging.h
+++ b/src/kernel/HALKit/AMD64/Paging.h
@@ -14,7 +14,7 @@
------------======================================== */
-#include <NeKit/Defines.h>
+#include <NeKit/Config.h>
#ifndef kPageMax
#define kPageMax (0x200)
diff --git a/src/kernel/HALKit/AMD64/Processor.h b/src/kernel/HALKit/AMD64/Processor.h
index ec94a3f1..f5dee661 100644
--- a/src/kernel/HALKit/AMD64/Processor.h
+++ b/src/kernel/HALKit/AMD64/Processor.h
@@ -18,7 +18,7 @@
#include <FirmwareKit/Handover.h>
#include <HALKit/AMD64/Paging.h>
#include <NeKit/Array.h>
-#include <NeKit/Defines.h>
+#include <NeKit/Config.h>
#include <NeKit/Utils.h>
#include <HALKit/AMD64/CPUID.h>
diff --git a/src/kernel/HALKit/ARM64/ApplicationProcessor.h b/src/kernel/HALKit/ARM64/ApplicationProcessor.h
index 9768cebc..71f8b68a 100644
--- a/src/kernel/HALKit/ARM64/ApplicationProcessor.h
+++ b/src/kernel/HALKit/ARM64/ApplicationProcessor.h
@@ -7,7 +7,7 @@
#pragma once
#include <HALKit/ARM64/Processor.h>
-#include <NeKit/Defines.h>
+#include <NeKit/Config.h>
/************************************************** */
/* INITIALIZE THE GIC ON THE CURRENT CORE. */
diff --git a/src/kernel/HALKit/ARM64/Paging.h b/src/kernel/HALKit/ARM64/Paging.h
index e8bd0ac1..28d31b60 100644
--- a/src/kernel/HALKit/ARM64/Paging.h
+++ b/src/kernel/HALKit/ARM64/Paging.h
@@ -14,7 +14,7 @@
#ifdef __NE_ARM64__
-#include <NeKit/Defines.h>
+#include <NeKit/Config.h>
#ifndef kPageMax
#define kPageMax (0x200)
diff --git a/src/kernel/HALKit/ARM64/Processor.h b/src/kernel/HALKit/ARM64/Processor.h
index de9f932e..3ef21957 100644
--- a/src/kernel/HALKit/ARM64/Processor.h
+++ b/src/kernel/HALKit/ARM64/Processor.h
@@ -10,7 +10,7 @@
#include <FirmwareKit/Handover.h>
#include <NeKit/Array.h>
-#include <NeKit/Defines.h>
+#include <NeKit/Config.h>
#include <NeKit/Utils.h>
#define kCPUBackendName "aarch64"
diff --git a/src/kernel/HALKit/POWER/AP.h b/src/kernel/HALKit/POWER/AP.h
index efe4ceff..b0a89138 100644
--- a/src/kernel/HALKit/POWER/AP.h
+++ b/src/kernel/HALKit/POWER/AP.h
@@ -13,7 +13,7 @@
#pragma once
-#include <NeKit/Defines.h>
+#include <NeKit/Config.h>
namespace Kernel {
struct HAL_HARDWARE_THREAD;
diff --git a/src/kernel/HALKit/POWER/Processor.h b/src/kernel/HALKit/POWER/Processor.h
index 46cda33e..74352a00 100644
--- a/src/kernel/HALKit/POWER/Processor.h
+++ b/src/kernel/HALKit/POWER/Processor.h
@@ -8,7 +8,7 @@
#pragma once
-#include <NeKit/Defines.h>
+#include <NeKit/Config.h>
#include <NeKit/Utils.h>
#define rtl_nop_op() asm volatile("mr 0, 0")
diff --git a/src/kernel/HALKit/RISCV/AP.h b/src/kernel/HALKit/RISCV/AP.h
index 1061b637..b699d50f 100644
--- a/src/kernel/HALKit/RISCV/AP.h
+++ b/src/kernel/HALKit/RISCV/AP.h
@@ -13,7 +13,7 @@
#pragma once
-#include <NeKit/Defines.h>
+#include <NeKit/Config.h>
namespace Kernel {
typedef Int64 hal_ap_kind;
diff --git a/src/kernel/KernelKit/BinaryMutex.h b/src/kernel/KernelKit/BinaryMutex.h
index 46d11b8d..8e29c834 100644
--- a/src/kernel/KernelKit/BinaryMutex.h
+++ b/src/kernel/KernelKit/BinaryMutex.h
@@ -8,7 +8,7 @@
#include <CompilerKit/CompilerKit.h>
#include <KernelKit/Timer.h>
-#include <NeKit/Defines.h>
+#include <NeKit/Config.h>
namespace Kernel {
class USER_PROCESS;
diff --git a/src/kernel/KernelKit/Defines.h b/src/kernel/KernelKit/Config.h
index e88441d2..2cde32b6 100644
--- a/src/kernel/KernelKit/Defines.h
+++ b/src/kernel/KernelKit/Config.h
@@ -6,7 +6,7 @@
#pragma once
-#include <NeKit/Defines.h>
+#include <NeKit/Config.h>
#define KERNELKIT_VERSION "0.0.1-kernelkit"
#define KERNELKIT_VERSION_BCD 0x0001
diff --git a/src/kernel/KernelKit/CoreProcessScheduler.h b/src/kernel/KernelKit/CoreProcessScheduler.h
index 54a0614a..7a53f94c 100644
--- a/src/kernel/KernelKit/CoreProcessScheduler.h
+++ b/src/kernel/KernelKit/CoreProcessScheduler.h
@@ -6,7 +6,7 @@
#pragma once
-#include <NeKit/Defines.h>
+#include <NeKit/Config.h>
#include <NeKit/ErrorOr.h>
/// @file CoreProcessScheduler.h
diff --git a/src/kernel/KernelKit/DriveMgr.h b/src/kernel/KernelKit/DriveMgr.h
index 9f66e31c..21194b9a 100644
--- a/src/kernel/KernelKit/DriveMgr.h
+++ b/src/kernel/KernelKit/DriveMgr.h
@@ -16,7 +16,7 @@
#include <KernelKit/DeviceMgr.h>
#include <KernelKit/KPC.h>
#include <KernelKit/ProcessScheduler.h>
-#include <NeKit/Defines.h>
+#include <NeKit/Config.h>
#include <NeKit/KString.h>
#include <NeKit/Ref.h>
diff --git a/src/kernel/KernelKit/IDylibObject.h b/src/kernel/KernelKit/IDylibObject.h
index ef6b96db..39431305 100644
--- a/src/kernel/KernelKit/IDylibObject.h
+++ b/src/kernel/KernelKit/IDylibObject.h
@@ -10,7 +10,7 @@
#pragma once
#include <CompilerKit/CompilerKit.h>
-#include <NeKit/Defines.h>
+#include <NeKit/Config.h>
#define NE_DYLIB_OBJECT : public IDylibObject
diff --git a/src/kernel/KernelKit/ILoader.h b/src/kernel/KernelKit/ILoader.h
index c6c87411..77f49451 100644
--- a/src/kernel/KernelKit/ILoader.h
+++ b/src/kernel/KernelKit/ILoader.h
@@ -7,7 +7,7 @@
#pragma once
#include <CompilerKit/CompilerKit.h>
-#include <NeKit/Defines.h>
+#include <NeKit/Config.h>
#include <NeKit/ErrorOr.h>
#include <hint/CompilerHint.h>
diff --git a/src/kernel/KernelKit/IPEFDylibObject.h b/src/kernel/KernelKit/IPEFDylibObject.h
index 54cfdcb1..fb386526 100644
--- a/src/kernel/KernelKit/IPEFDylibObject.h
+++ b/src/kernel/KernelKit/IPEFDylibObject.h
@@ -14,7 +14,7 @@
#include <KernelKit/PEF.h>
#include <KernelKit/PEFCodeMgr.h>
#include <KernelKit/ProcessScheduler.h>
-#include <NeKit/Defines.h>
+#include <NeKit/Config.h>
namespace Kernel {
/**
diff --git a/src/kernel/KernelKit/KPC.h b/src/kernel/KernelKit/KPC.h
index c712ac98..ff329d1e 100644
--- a/src/kernel/KernelKit/KPC.h
+++ b/src/kernel/KernelKit/KPC.h
@@ -6,7 +6,7 @@
#pragma once
-#include <NeKit/Defines.h>
+#include <NeKit/Config.h>
/// @file KPC.h
/// @brief Kernel Procedure Code.
diff --git a/src/kernel/KernelKit/LockDelegate.h b/src/kernel/KernelKit/LockDelegate.h
index 8ff67f19..51f86780 100644
--- a/src/kernel/KernelKit/LockDelegate.h
+++ b/src/kernel/KernelKit/LockDelegate.h
@@ -7,7 +7,7 @@
#pragma once
#include <NeKit/Atom.h>
-#include <NeKit/Defines.h>
+#include <NeKit/Config.h>
namespace Kernel {
enum {
diff --git a/src/kernel/KernelKit/MSDOS.h b/src/kernel/KernelKit/MSDOS.h
index 8c58b65b..4413eb3e 100644
--- a/src/kernel/KernelKit/MSDOS.h
+++ b/src/kernel/KernelKit/MSDOS.h
@@ -15,7 +15,7 @@
#define __MSDOS_EXEC__
#include <KernelKit/PE.h>
-#include <NeKit/Defines.h>
+#include <NeKit/Config.h>
// Last Rev
// Sat Feb 24 CET 2024
diff --git a/src/kernel/KernelKit/PCI/Database.h b/src/kernel/KernelKit/PCI/Database.h
index 463fde38..73013c74 100644
--- a/src/kernel/KernelKit/PCI/Database.h
+++ b/src/kernel/KernelKit/PCI/Database.h
@@ -6,7 +6,7 @@
#pragma once
#include <KernelKit/PCI/Device.h>
-#include <NeKit/Defines.h>
+#include <NeKit/Config.h>
namespace Kernel {
namespace Types {
diff --git a/src/kernel/KernelKit/PCI/Device.h b/src/kernel/KernelKit/PCI/Device.h
index f2111e40..c8caf67c 100644
--- a/src/kernel/KernelKit/PCI/Device.h
+++ b/src/kernel/KernelKit/PCI/Device.h
@@ -5,7 +5,7 @@
======================================== */
#pragma once
-#include <NeKit/Defines.h>
+#include <NeKit/Config.h>
namespace Kernel::PCI {
enum class PciConfigKind : UShort {
diff --git a/src/kernel/KernelKit/PCI/Express.h b/src/kernel/KernelKit/PCI/Express.h
index 484739ec..b3411938 100644
--- a/src/kernel/KernelKit/PCI/Express.h
+++ b/src/kernel/KernelKit/PCI/Express.h
@@ -7,6 +7,6 @@
#pragma once
#include <KernelKit/PCI/PCI.h>
-#include <NeKit/Defines.h>
+#include <NeKit/Config.h>
#define PCI_EXPRESS_BUS_COUNT (4096)
diff --git a/src/kernel/KernelKit/PCI/IO.h b/src/kernel/KernelKit/PCI/IO.h
index 2ab72269..dc9f9aa1 100644
--- a/src/kernel/KernelKit/PCI/IO.h
+++ b/src/kernel/KernelKit/PCI/IO.h
@@ -8,7 +8,7 @@
#include <ArchKit/ArchKit.h>
#include <NeKit/Array.h>
-#include <NeKit/Defines.h>
+#include <NeKit/Config.h>
#include <NeKit/Ref.h>
namespace Kernel {
diff --git a/src/kernel/KernelKit/PCI/Iterator.h b/src/kernel/KernelKit/PCI/Iterator.h
index 5926049b..996135c2 100644
--- a/src/kernel/KernelKit/PCI/Iterator.h
+++ b/src/kernel/KernelKit/PCI/Iterator.h
@@ -10,7 +10,7 @@
#include <KernelKit/PCI/Database.h>
#include <KernelKit/PCI/Device.h>
#include <NeKit/Array.h>
-#include <NeKit/Defines.h>
+#include <NeKit/Config.h>
#include <NeKit/Ref.h>
#define NE_BUS_COUNT (256)
diff --git a/src/kernel/KernelKit/PCI/PCI.h b/src/kernel/KernelKit/PCI/PCI.h
index f76270da..a60145fd 100644
--- a/src/kernel/KernelKit/PCI/PCI.h
+++ b/src/kernel/KernelKit/PCI/PCI.h
@@ -6,7 +6,7 @@
#pragma once
-#include <NeKit/Defines.h>
+#include <NeKit/Config.h>
#define kPCIConfigAddressPort (0xCF8)
#define kPCIConfigDataPort (0xCFC)
diff --git a/src/kernel/KernelKit/PE.h b/src/kernel/KernelKit/PE.h
index b4b4576e..c38d1138 100644
--- a/src/kernel/KernelKit/PE.h
+++ b/src/kernel/KernelKit/PE.h
@@ -14,7 +14,7 @@
#ifndef __KERNELKIT_INC_PE_H__
#define __KERNELKIT_INC_PE_H__
-#include <NeKit/Defines.h>
+#include <NeKit/Config.h>
#define kPeSignature (0x00004550)
diff --git a/src/kernel/KernelKit/PEF.h b/src/kernel/KernelKit/PEF.h
index 94284c98..5c0d4b75 100644
--- a/src/kernel/KernelKit/PEF.h
+++ b/src/kernel/KernelKit/PEF.h
@@ -16,7 +16,7 @@
#include <CompilerKit/CompilerKit.h>
#include <KernelKit/ILoader.h>
-#include <NeKit/Defines.h>
+#include <NeKit/Config.h>
#define kPefMagic "Open"
#define kPefMagicFat "nepO"
diff --git a/src/kernel/KernelKit/Semaphore.h b/src/kernel/KernelKit/Semaphore.h
index 831774a5..e10c1c2e 100644
--- a/src/kernel/KernelKit/Semaphore.h
+++ b/src/kernel/KernelKit/Semaphore.h
@@ -12,7 +12,7 @@
#include <CompilerKit/CompilerKit.h>
#include <KernelKit/Timer.h>
-#include <NeKit/Defines.h>
+#include <NeKit/Config.h>
#define kSemaphoreOwnerIndex (0U)
#define kSemaphoreCountIndex (1U)
diff --git a/src/kernel/KernelKit/ThreadLocalStorage.h b/src/kernel/KernelKit/ThreadLocalStorage.h
index 7ee3572b..38bcb54e 100644
--- a/src/kernel/KernelKit/ThreadLocalStorage.h
+++ b/src/kernel/KernelKit/ThreadLocalStorage.h
@@ -7,7 +7,7 @@
#ifndef KERNELKIT_TLS_H
#define KERNELKIT_TLS_H
-#include <NeKit/Defines.h>
+#include <NeKit/Config.h>
#include <NeKit/ErrorOr.h>
///! @brief Thread Local Storage for NeKernel.
diff --git a/src/kernel/KernelKit/UserMgr.h b/src/kernel/KernelKit/UserMgr.h
index 4f41ecdb..3f36f240 100644
--- a/src/kernel/KernelKit/UserMgr.h
+++ b/src/kernel/KernelKit/UserMgr.h
@@ -17,7 +17,7 @@
#include <CompilerKit/CompilerKit.h>
#include <KernelKit/KPC.h>
-#include <NeKit/Defines.h>
+#include <NeKit/Config.h>
#include <NeKit/KString.h>
///! We got the MGMT, STD (%s format) and GUEST users,
diff --git a/src/kernel/KernelKit/UserProcessScheduler.h b/src/kernel/KernelKit/UserProcessScheduler.h
index fa34b966..d67d54c2 100644
--- a/src/kernel/KernelKit/UserProcessScheduler.h
+++ b/src/kernel/KernelKit/UserProcessScheduler.h
@@ -32,7 +32,7 @@ class UserProcessHelper;
/// @name USER_PROCESS
/// @brief USER_PROCESS class, holds information about the running process/thread.
/***********************************************************************************/
-class USER_PROCESS final {
+class USER_PROCESS final NE_VETTABLE {
public:
explicit USER_PROCESS();
~USER_PROCESS();
@@ -142,9 +142,11 @@ class USER_PROCESS final {
/***********************************************************************************/
KPCError& GetLocalCode();
- const User* GetOwner();
+ const User* GetOwner();
+
const ProcessStatusKind& GetStatus();
- const AffinityKind& GetAffinity();
+
+ const AffinityKind& GetAffinity();
private:
KPCError LastExitCode{0};
diff --git a/src/kernel/KernelKit/XCOFF.h b/src/kernel/KernelKit/XCOFF.h
index cbee6100..076080eb 100644
--- a/src/kernel/KernelKit/XCOFF.h
+++ b/src/kernel/KernelKit/XCOFF.h
@@ -14,7 +14,7 @@
#ifndef INC_XOCFF_H
#define INC_XOCFF_H
-#include <NeKit/Defines.h>
+#include <NeKit/Config.h>
#define kXCOFF64Magic (0x01F7)
#define kXCOFF64ForkNameLen (256U)
diff --git a/src/kernel/KernelKit/ZXD.h b/src/kernel/KernelKit/ZXD.h
index 88094d4b..5bb4665b 100644
--- a/src/kernel/KernelKit/ZXD.h
+++ b/src/kernel/KernelKit/ZXD.h
@@ -6,7 +6,7 @@
#pragma once
-#include <NeKit/Defines.h>
+#include <NeKit/Config.h>
#define kZXDMagicNumber (0x2010AF)
#define kZXDVersion (0x0001)
diff --git a/src/kernel/NeKit/Array.h b/src/kernel/NeKit/Array.h
index 5b8371db..f4673b68 100644
--- a/src/kernel/NeKit/Array.h
+++ b/src/kernel/NeKit/Array.h
@@ -7,7 +7,7 @@
#pragma once
#include <KernelKit/DebugOutput.h>
-#include <NeKit/Defines.h>
+#include <NeKit/Config.h>
#include <NeKit/ErrorOr.h>
namespace Kernel {
@@ -27,8 +27,7 @@ class Array final {
SizeT Capacity() { return N; }
SizeT Count() {
- const static SizeT kArrCnt = N;
- return kArrCnt; // avoid constexpr error.
+ return N; // avoid constexpr error.
}
const T* CData() { return fArray; }
diff --git a/src/kernel/NeKit/ArrayList.h b/src/kernel/NeKit/ArrayList.h
index 54613b67..d3225a50 100644
--- a/src/kernel/NeKit/ArrayList.h
+++ b/src/kernel/NeKit/ArrayList.h
@@ -6,7 +6,7 @@
#pragma once
-#include <NeKit/Defines.h>
+#include <NeKit/Config.h>
namespace Kernel {
template <typename T>
diff --git a/src/kernel/NeKit/Atom.h b/src/kernel/NeKit/Atom.h
index 0f8eefbc..51808a0a 100644
--- a/src/kernel/NeKit/Atom.h
+++ b/src/kernel/NeKit/Atom.h
@@ -5,7 +5,7 @@
======================================== */
#pragma once
-#include <NeKit/Defines.h>
+#include <NeKit/Config.h>
namespace Kernel {
template <typename T>
diff --git a/src/kernel/NeKit/Defines.h b/src/kernel/NeKit/Config.h
index e53616a9..e53616a9 100644
--- a/src/kernel/NeKit/Defines.h
+++ b/src/kernel/NeKit/Config.h
diff --git a/src/kernel/NeKit/Crc32.h b/src/kernel/NeKit/Crc32.h
index 125ee5b7..ecec9519 100644
--- a/src/kernel/NeKit/Crc32.h
+++ b/src/kernel/NeKit/Crc32.h
@@ -11,7 +11,7 @@
#ifndef NEKIT_CRC32_H
#define NEKIT_CRC32_H
-#include <NeKit/Defines.h>
+#include <NeKit/Config.h>
namespace Kernel {
UInt32 ke_calculate_crc32(const VoidPtr crc, Int32 len);
diff --git a/src/kernel/NeKit/CxxAbi.h b/src/kernel/NeKit/CxxAbi.h
index 7b13d6b3..41956d3f 100644
--- a/src/kernel/NeKit/CxxAbi.h
+++ b/src/kernel/NeKit/CxxAbi.h
@@ -5,7 +5,7 @@
======================================== */
#pragma once
-#include <NeKit/Defines.h>
+#include <NeKit/Config.h>
#ifndef __NECTI__
diff --git a/src/kernel/NeKit/ErrorOr.h b/src/kernel/NeKit/ErrorOr.h
index d930fe17..f0740488 100644
--- a/src/kernel/NeKit/ErrorOr.h
+++ b/src/kernel/NeKit/ErrorOr.h
@@ -9,7 +9,7 @@
#pragma once
-#include <NeKit/Defines.h>
+#include <NeKit/Config.h>
#include <NeKit/Ref.h>
namespace Kernel {
diff --git a/src/kernel/NeKit/Function.h b/src/kernel/NeKit/Function.h
index 5dea8f85..1ceda345 100644
--- a/src/kernel/NeKit/Function.h
+++ b/src/kernel/NeKit/Function.h
@@ -6,7 +6,7 @@
#pragma once
-#include <NeKit/Defines.h>
+#include <NeKit/Config.h>
#include <NeKit/ErrorOr.h>
namespace Kernel {
diff --git a/src/kernel/NeKit/Json.h b/src/kernel/NeKit/Json.h
index 82ce3b99..e6106a2b 100644
--- a/src/kernel/NeKit/Json.h
+++ b/src/kernel/NeKit/Json.h
@@ -10,7 +10,7 @@
/// @brief Kernel JSON API.
#include <CompilerKit/CompilerKit.h>
-#include <NeKit/Defines.h>
+#include <NeKit/Config.h>
#include <NeKit/KString.h>
#include <NeKit/Stream.h>
#include <NeKit/Utils.h>
diff --git a/src/kernel/NeKit/KString.h b/src/kernel/NeKit/KString.h
index fa83fed4..fa0ebcbf 100644
--- a/src/kernel/NeKit/KString.h
+++ b/src/kernel/NeKit/KString.h
@@ -7,7 +7,7 @@
#pragma once
#include <CompilerKit/CompilerKit.h>
-#include <NeKit/Defines.h>
+#include <NeKit/Config.h>
#include <NeKit/ErrorOr.h>
#include <NeKit/KernelPanic.h>
#include <NeKit/Utils.h>
diff --git a/src/kernel/NeKit/KernelPanic.h b/src/kernel/NeKit/KernelPanic.h
index f716e6de..cba8897c 100644
--- a/src/kernel/NeKit/KernelPanic.h
+++ b/src/kernel/NeKit/KernelPanic.h
@@ -7,7 +7,7 @@
#pragma once
-#include <NeKit/Defines.h>
+#include <NeKit/Config.h>
namespace Kernel {
void ke_runtime_check(bool expr, const Char* file, const Char* line);
diff --git a/src/kernel/NeKit/MutableArray.h b/src/kernel/NeKit/MutableArray.h
index e14afbfe..6dafa5b9 100644
--- a/src/kernel/NeKit/MutableArray.h
+++ b/src/kernel/NeKit/MutableArray.h
@@ -7,7 +7,7 @@
#include <CompilerKit/CompilerKit.h>
#include <NeKit/Array.h>
-#include <NeKit/Defines.h>
+#include <NeKit/Config.h>
#define RTL_TRY_FIND_NODE(NAME, NODE) \
auto* NAME = NODE; \
diff --git a/src/kernel/NeKit/OwnPtr.h b/src/kernel/NeKit/OwnPtr.h
index bec2813b..30c8f9eb 100644
--- a/src/kernel/NeKit/OwnPtr.h
+++ b/src/kernel/NeKit/OwnPtr.h
@@ -7,7 +7,7 @@
#pragma once
-#include <NeKit/Defines.h>
+#include <NeKit/Config.h>
#include <NeKit/KernelPanic.h>
#include <NeKit/Ref.h>
@@ -21,8 +21,8 @@ class NonNullRefPtr;
template <typename T>
class OwnPtr final {
public:
- OwnPtr() {}
- ~OwnPtr() { this->Delete(); }
+ OwnPtr() = default;
+ ~OwnPtr() { this->Reset(); }
OwnPtr& operator=(const OwnPtr&) = default;
OwnPtr(const OwnPtr&) = default;
@@ -38,9 +38,8 @@ class OwnPtr final {
return fCls;
}
- void Delete() {
+ void Reset() {
if (fCls) delete fCls;
-
fCls = nullptr;
}
@@ -50,15 +49,15 @@ class OwnPtr final {
Ref<T> AsRef() { return Ref<T>(fCls); }
- operator bool() { return fCls; }
+ explicit operator bool() { return fCls; }
bool operator!() { return !fCls; }
private:
- T* fCls;
+ T* fCls{nullptr};
};
template <typename T, typename... Args>
-inline OwnPtr<T> mm_make_own_ptr(Args... args) {
+inline OwnPtr<T> make_ptr(Args... args) {
OwnPtr<T> ret;
ret.template New<Args...>(forward(args)...);
diff --git a/src/kernel/NeKit/PageMgr.h b/src/kernel/NeKit/PageMgr.h
index 6cdd5a5c..1bd489af 100644
--- a/src/kernel/NeKit/PageMgr.h
+++ b/src/kernel/NeKit/PageMgr.h
@@ -9,7 +9,7 @@
#pragma once
-#include <NeKit/Defines.h>
+#include <NeKit/Config.h>
#include <NeKit/Ref.h>
namespace Kernel {
diff --git a/src/kernel/NeKit/Pair.h b/src/kernel/NeKit/Pair.h
index c8914ec6..6c67d508 100644
--- a/src/kernel/NeKit/Pair.h
+++ b/src/kernel/NeKit/Pair.h
@@ -7,7 +7,7 @@
#pragma once
#include <CompilerKit/CompilerKit.h>
-#include <NeKit/Defines.h>
+#include <NeKit/Config.h>
#include <NeKit/ErrorOr.h>
namespace Kernel {
diff --git a/src/kernel/NeKit/Ref.h b/src/kernel/NeKit/Ref.h
index 59991442..ff8731e3 100644
--- a/src/kernel/NeKit/Ref.h
+++ b/src/kernel/NeKit/Ref.h
@@ -10,8 +10,9 @@
#include <CompilerKit/CompilerKit.h>
#include <KernelKit/HeapMgr.h>
-#include <NeKit/Defines.h>
+#include <NeKit/Config.h>
#include <NeKit/KernelPanic.h>
+#include <NeKit/Vet.h>
namespace Kernel {
/// =========================================================== ///
@@ -43,7 +44,7 @@ class Ref final {
T operator*() { return fClass; }
- operator bool() { return true; }
+ operator bool() { return Vettable<T>::kValue; }
private:
T fClass;
diff --git a/src/kernel/NeKit/Stream.h b/src/kernel/NeKit/Stream.h
index 1a53e7f0..44b98e35 100644
--- a/src/kernel/NeKit/Stream.h
+++ b/src/kernel/NeKit/Stream.h
@@ -7,7 +7,7 @@
#pragma once
-#include <NeKit/Defines.h>
+#include <NeKit/Config.h>
#include <NeKit/Ref.h>
namespace Kernel {
diff --git a/src/kernel/NeKit/Utils.h b/src/kernel/NeKit/Utils.h
index caabd2af..28a153af 100644
--- a/src/kernel/NeKit/Utils.h
+++ b/src/kernel/NeKit/Utils.h
@@ -6,7 +6,7 @@
#pragma once
-#include <NeKit/Defines.h>
+#include <NeKit/Config.h>
namespace Kernel {
/// =========================================================== ///
diff --git a/src/kernel/NeKit/Variant.h b/src/kernel/NeKit/Variant.h
index 1b0fbe5d..a7257805 100644
--- a/src/kernel/NeKit/Variant.h
+++ b/src/kernel/NeKit/Variant.h
@@ -6,7 +6,7 @@
#pragma once
-#include <NeKit/Defines.h>
+#include <NeKit/Config.h>
#include <NeKit/Json.h>
#include <NeKit/KString.h>
#include <NeKit/TOML.h>
diff --git a/src/kernel/NeKit/Vet.h b/src/kernel/NeKit/Vet.h
new file mode 100644
index 00000000..d4c1060f
--- /dev/null
+++ b/src/kernel/NeKit/Vet.h
@@ -0,0 +1,34 @@
+
+/* ========================================
+
+ Copyright (C) 2024-2025, Amlal El Mahrouss, licensed under the Apache 2.0 license.
+
+======================================== */
+
+#pragma once
+
+#include <CompilerKit/CompilerKit.h>
+#include <NeKit/Config.h>
+
+#define NE_VETTABLE : public IVet
+
+namespace Kernel {
+struct IVet {
+ IVet() = default;
+ virtual ~IVet() = default;
+
+ NE_COPY_DEFAULT(IVet)
+
+ operator bool() = delete;
+};
+
+template <typename T>
+struct Vettable final {
+ static constexpr bool kValue = false;
+};
+
+template <>
+struct Vettable<IVet> final {
+ static constexpr bool kValue = true;
+};
+} // namespace Kernel \ No newline at end of file
diff --git a/src/kernel/NetworkKit/IP.h b/src/kernel/NetworkKit/IP.h
index b19d132f..625e59e3 100644
--- a/src/kernel/NetworkKit/IP.h
+++ b/src/kernel/NetworkKit/IP.h
@@ -7,7 +7,7 @@
#pragma once
#include <KernelKit/DebugOutput.h>
-#include <NeKit/Defines.h>
+#include <NeKit/Config.h>
#include <NeKit/KString.h>
#include <NeKit/Ref.h>
diff --git a/src/kernel/NetworkKit/IPC.h b/src/kernel/NetworkKit/IPC.h
index fb6a07ee..4c07dc2e 100644
--- a/src/kernel/NetworkKit/IPC.h
+++ b/src/kernel/NetworkKit/IPC.h
@@ -10,7 +10,7 @@
#ifndef INC_IPC_H
#define INC_IPC_H
-#include <NeKit/Defines.h>
+#include <NeKit/Config.h>
#include <NeKit/KString.h>
#include <hint/CompilerHint.h>
diff --git a/src/kernel/NetworkKit/LTE.h b/src/kernel/NetworkKit/LTE.h
index c29f1687..4bba031e 100644
--- a/src/kernel/NetworkKit/LTE.h
+++ b/src/kernel/NetworkKit/LTE.h
@@ -10,7 +10,7 @@
#ifndef _INC_NETWORK_LTE_H_
#define _INC_NETWORK_LTE_H_
-#include <NeKit/Defines.h>
+#include <NeKit/Config.h>
#include <NeKit/KString.h>
#endif // ifndef _INC_NETWORK_LTE_H_
diff --git a/src/kernel/NetworkKit/MAC.h b/src/kernel/NetworkKit/MAC.h
index 382eca77..5291d855 100644
--- a/src/kernel/NetworkKit/MAC.h
+++ b/src/kernel/NetworkKit/MAC.h
@@ -7,7 +7,7 @@
#pragma once
#include <NeKit/Array.h>
-#include <NeKit/Defines.h>
+#include <NeKit/Config.h>
#include <NeKit/KString.h>
#define kMACAddrLen (32U)
diff --git a/src/kernel/SignalKit/Signals.h b/src/kernel/SignalKit/Signals.h
index b4e72fc4..cb7abfa1 100644
--- a/src/kernel/SignalKit/Signals.h
+++ b/src/kernel/SignalKit/Signals.h
@@ -6,7 +6,7 @@
#pragma once
-#include <NeKit/Defines.h>
+#include <NeKit/Config.h>
#define SIGKILL 1 /* kill */
#define SIGPAUS 2 /* pause */
diff --git a/src/kernel/SwapKit/DiskSwap.h b/src/kernel/SwapKit/DiskSwap.h
index cd81b13a..7b3cb0f1 100644
--- a/src/kernel/SwapKit/DiskSwap.h
+++ b/src/kernel/SwapKit/DiskSwap.h
@@ -8,7 +8,7 @@
#pragma once
#include <CompilerKit/CompilerKit.h>
-#include <NeKit/Defines.h>
+#include <NeKit/Config.h>
#include <hint/CompilerHint.h>
#define kSwapBlockMaxSize (mib_cast(16))
diff --git a/src/kernel/src/Defines.cc b/src/kernel/src/Defines.cc
index 1ae6f12f..d9987f27 100644
--- a/src/kernel/src/Defines.cc
+++ b/src/kernel/src/Defines.cc
@@ -4,4 +4,4 @@
======================================== */
-#include <NeKit/Defines.h>
+#include <NeKit/Config.h>
diff --git a/src/kernel/src/IPEFDylibObject.cc b/src/kernel/src/IPEFDylibObject.cc
index 4ba9278d..90c83484 100644
--- a/src/kernel/src/IPEFDylibObject.cc
+++ b/src/kernel/src/IPEFDylibObject.cc
@@ -12,7 +12,7 @@
#include <KernelKit/PEF.h>
#include <KernelKit/ProcessScheduler.h>
#include <KernelKit/ThreadLocalStorage.h>
-#include <NeKit/Defines.h>
+#include <NeKit/Config.h>
/* ========================================
diff --git a/src/kernel/src/PE32CodeMgr.cc b/src/kernel/src/PE32CodeMgr.cc
index 0327f921..1cba2ac0 100644
--- a/src/kernel/src/PE32CodeMgr.cc
+++ b/src/kernel/src/PE32CodeMgr.cc
@@ -9,7 +9,7 @@
#include <KernelKit/HeapMgr.h>
#include <KernelKit/PE32CodeMgr.h>
#include <KernelKit/ProcessScheduler.h>
-#include <NeKit/Defines.h>
+#include <NeKit/Config.h>
#include <NeKit/KString.h>
#include <NeKit/KernelPanic.h>
#include <NeKit/OwnPtr.h>
@@ -63,7 +63,7 @@ PE32Loader::PE32Loader(const Char* path) : fCachedBlob(nullptr), fBad(false) {
PE32Loader::~PE32Loader() {
if (fCachedBlob) mm_free_ptr(fCachedBlob);
- fFile.Delete();
+ fFile.Reset();
}
/***********************************************************************************/
diff --git a/src/kernel/src/PEFCodeMgr.cc b/src/kernel/src/PEFCodeMgr.cc
index 05a4af01..4b914566 100644
--- a/src/kernel/src/PEFCodeMgr.cc
+++ b/src/kernel/src/PEFCodeMgr.cc
@@ -11,7 +11,7 @@ license.
#include <KernelKit/HeapMgr.h>
#include <KernelKit/PEFCodeMgr.h>
#include <KernelKit/ProcessScheduler.h>
-#include <NeKit/Defines.h>
+#include <NeKit/Config.h>
#include <NeKit/KString.h>
#include <NeKit/KernelPanic.h>
#include <NeKit/OwnPtr.h>
@@ -138,7 +138,7 @@ PEFLoader::PEFLoader(const Char* path) : fCachedBlob(nullptr), fFatBinary(false)
PEFLoader::~PEFLoader() {
if (fCachedBlob) mm_free_ptr(fCachedBlob);
- fFile.Delete();
+ fFile.Reset();
}
/***********************************************************************************/
diff --git a/src/misc/BenchKit/Chronometer.h b/src/misc/BenchKit/Chronometer.h
index 8a1fa3ab..d038fe09 100644
--- a/src/misc/BenchKit/Chronometer.h
+++ b/src/misc/BenchKit/Chronometer.h
@@ -8,7 +8,7 @@ Copyright (C) 2025, Amlal El Mahrouss, licensed under the Apache 2.0 license.
#define BENCHKIT_CHRONO_H
#include <CompilerKit/CompilerKit.h>
-#include <NeKit/Defines.h>
+#include <NeKit/Config.h>
/// @author Amlal El Mahrouss
/// @brief BenchKit Chrono contract.
diff --git a/src/modules/ACPI/ACPI.h b/src/modules/ACPI/ACPI.h
index b5bf3b69..5977da61 100644
--- a/src/modules/ACPI/ACPI.h
+++ b/src/modules/ACPI/ACPI.h
@@ -11,7 +11,7 @@
https://uefi.org/specs/ACPI/6.5/05_ACPI_Software_Programming_Model.html
*/
-#include <NeKit/Defines.h>
+#include <NeKit/Config.h>
#define SDT_OBJECT : public Kernel::SDT
diff --git a/src/modules/ACPI/ACPIFactoryInterface.h b/src/modules/ACPI/ACPIFactoryInterface.h
index da91a62e..372175b3 100644
--- a/src/modules/ACPI/ACPIFactoryInterface.h
+++ b/src/modules/ACPI/ACPIFactoryInterface.h
@@ -8,7 +8,7 @@
#define __MOD_ACPI_H__
#include <KernelKit/DebugOutput.h>
-#include <NeKit/Defines.h>
+#include <NeKit/Config.h>
#include <NeKit/ErrorOr.h>
#include <NeKit/Ref.h>
#include <modules/ACPI/ACPI.h>
diff --git a/src/modules/AHCI/AHCI.h b/src/modules/AHCI/AHCI.h
index 3c6fecc5..008c0d6e 100644
--- a/src/modules/AHCI/AHCI.h
+++ b/src/modules/AHCI/AHCI.h
@@ -13,7 +13,7 @@
#pragma once
-#include <NeKit/Defines.h>
+#include <NeKit/Config.h>
#include <modules/ACPI/ACPI.h>
/// @file AHCI.h
diff --git a/src/modules/APM/APM.h b/src/modules/APM/APM.h
index d9b0621e..1c229c82 100644
--- a/src/modules/APM/APM.h
+++ b/src/modules/APM/APM.h
@@ -6,7 +6,7 @@
#pragma once
-#include <NeKit/Defines.h>
+#include <NeKit/Config.h>
namespace Kernel {
typedef Int32 APMPowerCmd;
diff --git a/src/modules/ATA/ATA.h b/src/modules/ATA/ATA.h
index a1213b40..09305801 100644
--- a/src/modules/ATA/ATA.h
+++ b/src/modules/ATA/ATA.h
@@ -2,7 +2,7 @@
Copyright (C) 2024-2025, Amlal El Mahrouss, licensed under the Apache 2.0 license.
- File: Defines.h
+ File: Config.h
Purpose: ATA header.
Revision History:
@@ -14,7 +14,7 @@
#pragma once
#include <CompilerKit/CompilerKit.h>
-#include <NeKit/Defines.h>
+#include <NeKit/Config.h>
///! Status register
#define ATA_SR_BSY 0x80
diff --git a/src/modules/CoreGfx/CoreGfx.h b/src/modules/CoreGfx/CoreGfx.h
index c217fbe3..81356452 100644
--- a/src/modules/CoreGfx/CoreGfx.h
+++ b/src/modules/CoreGfx/CoreGfx.h
@@ -6,7 +6,7 @@
#pragma once
-#include <NeKit/Defines.h>
+#include <NeKit/Config.h>
#define cg_init() Kernel::UInt32 kCGCursor = 0
diff --git a/src/modules/CoreGfx/TextGfx.h b/src/modules/CoreGfx/TextGfx.h
index b5dcd9e5..52eead08 100644
--- a/src/modules/CoreGfx/TextGfx.h
+++ b/src/modules/CoreGfx/TextGfx.h
@@ -6,7 +6,7 @@
#pragma once
-#include <NeKit/Defines.h>
+#include <NeKit/Config.h>
#include <modules/CoreGfx/CoreGfx.h>
#define kFontSizeX 8
diff --git a/src/modules/HPET/Defines.h b/src/modules/HPET/Config.h
index 56968a24..9d1d9155 100644
--- a/src/modules/HPET/Defines.h
+++ b/src/modules/HPET/Config.h
@@ -11,7 +11,7 @@
#pragma once
-#include <NeKit/Defines.h>
+#include <NeKit/Config.h>
#include <modules/ACPI/ACPI.h>
namespace Kernel {
diff --git a/src/modules/LTE/LTE.h b/src/modules/LTE/LTE.h
index 7cee2c8d..beac4891 100644
--- a/src/modules/LTE/LTE.h
+++ b/src/modules/LTE/LTE.h
@@ -10,7 +10,7 @@ Purpose: LTE Standard Library.
#ifndef _INC_NETWORK_LTE_H_
#define _INC_NETWORK_LTE_H_
-#include <NeKit/Defines.h>
+#include <NeKit/Config.h>
#include <NeKit/KString.h>
/// @brief Long Term Evolution I/O routines.
diff --git a/src/modules/MBCI/MBCI.h b/src/modules/MBCI/MBCI.h
index a96f8f3a..1cefe034 100644
--- a/src/modules/MBCI/MBCI.h
+++ b/src/modules/MBCI/MBCI.h
@@ -7,7 +7,7 @@
#ifndef _INC_MODULE_MBCI_H_
#define _INC_MODULE_MBCI_H_
-#include <NeKit/Defines.h>
+#include <NeKit/Config.h>
#include <hint/CompilerHint.h>
#include <modules/ACPI/ACPI.h>
diff --git a/src/modules/NVME/NVME.h b/src/modules/NVME/NVME.h
index 9ad8a3ce..ee9002d4 100644
--- a/src/modules/NVME/NVME.h
+++ b/src/modules/NVME/NVME.h
@@ -5,14 +5,14 @@
Revision History:
??/??/24: Added file (amlel)
- 23 Jul 24: Update filename to Defines.h and using NE_ALIGN_NVME for NVME structs. (amlel)
+ 23 Jul 24: Update filename to Config.h and using NE_ALIGN_NVME for NVME structs. (amlel)
======================================== */
#ifndef __MODULE_NVME_H__
#define __MODULE_NVME_H__
-#include <NeKit/Defines.h>
+#include <NeKit/Config.h>
/// @file NVME.h
/// @brief Non Volatile Memory.
diff --git a/src/modules/Power/PowerFactory.h b/src/modules/Power/PowerFactory.h
index 2e349011..dcc75936 100644
--- a/src/modules/Power/PowerFactory.h
+++ b/src/modules/Power/PowerFactory.h
@@ -7,7 +7,7 @@
#pragma once
#include <KernelKit/DebugOutput.h>
-#include <NeKit/Defines.h>
+#include <NeKit/Config.h>
#include <NeKit/ErrorOr.h>
#include <NeKit/Ref.h>
#include <modules/ACPI/ACPI.h>
diff --git a/src/modules/SCSI/SCSI.h b/src/modules/SCSI/SCSI.h
index e0bc2517..b6228e54 100644
--- a/src/modules/SCSI/SCSI.h
+++ b/src/modules/SCSI/SCSI.h
@@ -6,7 +6,7 @@
#pragma once
-#include <NeKit/Defines.h>
+#include <NeKit/Config.h>
/// @file SCSI.h
/// @brief Small Computer System Interface device.
diff --git a/src/modules/XHCI/XHCI.h b/src/modules/XHCI/XHCI.h
index 40387c1e..6eb25fac 100644
--- a/src/modules/XHCI/XHCI.h
+++ b/src/modules/XHCI/XHCI.h
@@ -2,19 +2,19 @@
Copyright (C) 2024-2025, Amlal El Mahrouss, licensed under the Apache 2.0 license.
- File: Defines.h
+ File: Config.h
Purpose: XHCI (and backwards) header.
Revision History:
01/02/24: Added file (amlel)
- 03/02/24: Update filename to Defines.h (amlel)
+ 03/02/24: Update filename to Config.h (amlel)
======================================== */
#pragma once
-#include <NeKit/Defines.h>
+#include <NeKit/Config.h>
#define kUSBCommand (UInt16) 0x0
#define kUSBStatus (UInt16) 0x2