diff options
| author | Amlal El Mahrouss <amlal@nekernel.org> | 2025-08-25 09:50:27 +0200 |
|---|---|---|
| committer | Amlal El Mahrouss <amlal@nekernel.org> | 2025-08-25 09:50:27 +0200 |
| commit | a7939c9a20d5f4b83d5df34aa652a88a0764042c (patch) | |
| tree | d773fa076011ac6a54c1de93755797b09e7bd3ca /dev/libDDK/DriverKit/macros.h | |
| parent | d864e0c6281024ce4b9bd654aa83308a50f583d8 (diff) | |
feat! ddk -> libDDK, use syscall on AMD64.
Signed-off-by: Amlal El Mahrouss <amlal@nekernel.org>
Diffstat (limited to 'dev/libDDK/DriverKit/macros.h')
| -rw-r--r-- | dev/libDDK/DriverKit/macros.h | 48 |
1 files changed, 48 insertions, 0 deletions
diff --git a/dev/libDDK/DriverKit/macros.h b/dev/libDDK/DriverKit/macros.h new file mode 100644 index 00000000..9b7b3d50 --- /dev/null +++ b/dev/libDDK/DriverKit/macros.h @@ -0,0 +1,48 @@ +/* ------------------------------------------- + + Copyright 2025 Amlal El Mahrouss. + + FILE: ddk.h + PURPOSE: DDK Driver model base header. + +------------------------------------------- */ + +#pragma once + +#include <stddef.h> +#include <stdint.h> + +#if defined(__cplusplus) +#define BOOL bool +#define YES true +#define NO false +#define DDK_EXTERN extern "C" __declspec(dllexport) +#define nil nullptr +#undef NULL +#define NULL 0 +#define DDK_FINAL final +#else +#define BOOL char +#define YES 1 +#define NO 0 +#define DDK_EXTERN extern __declspec(dllexport) +#define nil ((void*) 0) +#undef NULL +#define NULL ((void*) 0) +#define DDK_FINAL +#endif // defined(__cplusplus) + +#ifndef __DDK__ +#undef DDK_EXTERN +#if defined(__cplusplus) +#define DDK_EXTERN extern "C" __declspec(dllimport) +#else +#define DDK_EXTERN __declspec(dllimport) +#endif +#endif + +#define ATTRIBUTE(X) __attribute__((X)) + +#ifndef __NEOSKRNL__ +#error !!! Do not include header in EL0/Ring 3 mode !!! +#endif // __NEOSKRNL__
\ No newline at end of file |
