summaryrefslogtreecommitdiffhomepage
path: root/Private/KernelKit
diff options
context:
space:
mode:
authorAmlal El Mahrouss <amlalelmahrouss@icloud.com>2024-03-05 08:48:23 +0000
committerAmlal El Mahrouss <amlalelmahrouss@icloud.com>2024-03-05 08:48:23 +0000
commit1dc32533305adc40af5683792b74f6074a41fd32 (patch)
treecba9842f4c8acd25ddd4c66eed734b5e39267658 /Private/KernelKit
parent64c8674bc09985fcf7119cfb2b88cad3081b1603 (diff)
Kernel: Add ProcessManager.cxx, wrap packed UPP into compiler independent code.
Diffstat (limited to 'Private/KernelKit')
-rw-r--r--Private/KernelKit/MSDOS.hpp3
-rw-r--r--Private/KernelKit/PE.hpp4
-rw-r--r--Private/KernelKit/PEFCodeManager.hxx4
3 files changed, 7 insertions, 4 deletions
diff --git a/Private/KernelKit/MSDOS.hpp b/Private/KernelKit/MSDOS.hpp
index 565d77af..aa7f9b8c 100644
--- a/Private/KernelKit/MSDOS.hpp
+++ b/Private/KernelKit/MSDOS.hpp
@@ -20,6 +20,9 @@
// Last Rev
// Sat Feb 24 CET 2024
+#define kMagMz0 'M'
+#define kMagMz1 'Z'
+
typedef HCore::UInt32 DosWord;
typedef HCore::Long DosLong;
diff --git a/Private/KernelKit/PE.hpp b/Private/KernelKit/PE.hpp
index 43de19e0..c9e4e19c 100644
--- a/Private/KernelKit/PE.hpp
+++ b/Private/KernelKit/PE.hpp
@@ -15,6 +15,7 @@
#define __PE__
#include <NewKit/Defines.hpp>
+#include <KernelKit/PE.hpp>
typedef HCore::UIntPtr U64;
typedef HCore::UInt32 U32;
@@ -22,9 +23,6 @@ typedef HCore::UInt16 U16;
typedef HCore::UInt8 U8;
typedef U8 BYTE;
-#define kMagMz0 'M'
-#define kMagMz1 'Z'
-
#define kPeMagic 0x00004550
typedef struct ExecHeader final {
diff --git a/Private/KernelKit/PEFCodeManager.hxx b/Private/KernelKit/PEFCodeManager.hxx
index 8577acb3..a4bc08eb 100644
--- a/Private/KernelKit/PEFCodeManager.hxx
+++ b/Private/KernelKit/PEFCodeManager.hxx
@@ -11,6 +11,8 @@
#include <NewKit/ErrorOr.hpp>
#include <NewKit/String.hpp>
+#define kPefApplicationMime "application/x-hcore-exec"
+
namespace HCore {
///
/// \name PEFLoader
@@ -58,7 +60,7 @@ typedef struct UniversalProcedureTable final {
const Char NAME[kPefNameLen];
const VoidPtr TRAP;
const SizeT ARCH;
-} __attribute__((packed)) UniversalProcedureTableType;
+} PACKED UniversalProcedureTableType;
bool execute_from_image(PEFLoader &exec) noexcept;
} // namespace Utils