diff options
Diffstat (limited to 'Public')
| -rw-r--r-- | Public/SDK/DriverKit/HW.hxx (renamed from Public/SDK/DriverKit/HWInterface.hpp) | 19 | ||||
| -rw-r--r-- | Public/SDK/DriverKit/TIB.hxx | 41 |
2 files changed, 51 insertions, 9 deletions
diff --git a/Public/SDK/DriverKit/HWInterface.hpp b/Public/SDK/DriverKit/HW.hxx index d1824c67..14dd3cf2 100644 --- a/Public/SDK/DriverKit/HWInterface.hpp +++ b/Public/SDK/DriverKit/HW.hxx @@ -9,24 +9,23 @@ #pragma once -#include <CompilerKit/Compiler.hpp> -#include <NewKit/Defines.hpp> +#include <Private/CompilerKit/Compiler.hpp> +#include <Private/NewKit/Defines.hpp> namespace h-core { - // h-core HardWare Interface. - // Purpose: Provides a gentle way to initialize, dispose, send and receive hardware data. - class HWInterface + /// @brief Provides a gentle way to initialize, dispose, send and receive hardware data. + class HardwareInterface { public: - HWInterface() = default; - virtual ~HWInterface() = default; + explicit HardwareInterface() ={ this->Initialize(); } + virtual ~HardwareInterface() { this->Dispose(); } public: - HCORE_COPY_DEFAULT(HWInterface); + HCORE_COPY_DEFAULT(HardwareInterface); public: - virtual const char* Name() { return "Unimplemented Hardware."; } + virtual const char* Name() { return "Generic HW."; } public: virtual void Initialize() {} @@ -42,3 +41,5 @@ namespace h-core }; } + +// last rev 1/27/24
\ No newline at end of file diff --git a/Public/SDK/DriverKit/TIB.hxx b/Public/SDK/DriverKit/TIB.hxx new file mode 100644 index 00000000..3a1c038b --- /dev/null +++ b/Public/SDK/DriverKit/TIB.hxx @@ -0,0 +1,41 @@ +/* +* ======================================================== +* +* h-core +* Copyright Mahrouss Logic, all rights reserved. +* +* ======================================================== +*/ + +// +// Created by Amlal on 1/27/24. +// + +#ifndef HCORE_TIB_HXX +#define HCORE_TIB_HXX + +#include <Private/NewKit/Defines.hpp> + +namespace hCore +{ + /// @brief Thread Information Block for Local Storage. + /// Located in GS on AMD64, Virtual Address 0x10000 (64x0, 32x0, ARM64) + struct ThreadInformationBlock final + { + const Char TIB_NAME[255]; // Module Name + const UIntPtr TIB_START; // Start Address + const UIntPtr TIB_ALLOC; // Allocation Heap + const UIntPtr TIB_STACK; // Stack Pointer. + const Int32 TIB_ARCH; // Architecture and/or platform. + }; + + enum + { + kPC_IA64, + kPC_ARM, + kMACS_64x0, + kMACS_32x0, + }; +} + +#endif // HCORE_TIB_HXX |
