summaryrefslogtreecommitdiffhomepage
path: root/Public/Kits/System.Core/CoreAPI.hxx
diff options
context:
space:
mode:
authorAmlal El Mahrouss <amlal@el-mahrouss-logic.com>2024-03-10 15:41:08 +0100
committerAmlal El Mahrouss <amlal@el-mahrouss-logic.com>2024-03-10 15:41:08 +0100
commit5468ca71a59c9e24c1d392554e8f97f0c1705394 (patch)
tree1e8af47da852d4ad02a2ea48a967694c7bfc19c3 /Public/Kits/System.Core/CoreAPI.hxx
parent94d7585ae766d777f41d07b1a98051d12a6a0256 (diff)
Kernel: Reworked StorageKit to add AHCI support.
Signed-off-by: Amlal El Mahrouss <amlal@el-mahrouss-logic.com>
Diffstat (limited to 'Public/Kits/System.Core/CoreAPI.hxx')
-rw-r--r--Public/Kits/System.Core/CoreAPI.hxx48
1 files changed, 48 insertions, 0 deletions
diff --git a/Public/Kits/System.Core/CoreAPI.hxx b/Public/Kits/System.Core/CoreAPI.hxx
new file mode 100644
index 00000000..1cd48442
--- /dev/null
+++ b/Public/Kits/System.Core/CoreAPI.hxx
@@ -0,0 +1,48 @@
+/* -------------------------------------------
+
+ Copyright Mahrouss Logic
+
+------------------------------------------- */
+
+#pragma once
+
+#ifndef __cplusplus
+#error This API is meant to be used with C++
+#endif
+
+#ifdef CA_MUST_PASS
+#undef CA_MUST_PASS
+#endif
+
+// unused by user side, it's a kernel thing.
+#define CA_MUST_PASS(e) ((void)e)
+
+#define CA_EXTERN_C extern "C"
+
+#define CA_STDCALL __attribute__((stdcall))
+#define CA_CDECL __attribute__((cdecl))
+#define CA_MSCALL __attribute__((ms_abi))
+
+typedef __UINT8_TYPE__ BYTE;
+typedef __UINT16_TYPE__ WORD;
+typedef __UINT32_TYPE__ DWORD;
+typedef __UINT64_TYPE__ QWORD;
+
+typedef __WCHAR_TYPE__ WCHAR;
+typedef WCHAR* PWCHAR;
+
+#ifdef __x86_64__
+# define _M_AMD64 2
+#endif
+
+#ifdef __aarch64__
+# define _M_AARCH64 3
+#endif
+
+#ifdef __powerpc64__
+# define _M_PPC64 4
+#endif
+
+#ifdef __64x0__
+# define _M_64000 5
+#endif