diff options
Diffstat (limited to 'Private/KernelKit')
| -rw-r--r-- | Private/KernelKit/DriveManager.hpp | 11 | ||||
| -rw-r--r-- | Private/KernelKit/HError.hpp | 8 | ||||
| -rw-r--r-- | Private/KernelKit/PE.hpp | 26 | ||||
| -rw-r--r-- | Private/KernelKit/ProcessManager.hpp | 2 |
4 files changed, 25 insertions, 22 deletions
diff --git a/Private/KernelKit/DriveManager.hpp b/Private/KernelKit/DriveManager.hpp index a9e26fd3..6cfb007b 100644 --- a/Private/KernelKit/DriveManager.hpp +++ b/Private/KernelKit/DriveManager.hpp @@ -31,13 +31,13 @@ enum { kDriveCnt = 9, }; -typedef Int64 DriveID; +typedef Int64 rt_drive_id_type; /// @brief Mounted drive traits. struct DriveTraits final { - char fName[kDriveNameLen]; // /System, /Boot, /USBDevice... + Char fName[kDriveNameLen]; // /System, /Boot, //./Devices/USB... Int32 fKind; // fMassStorage, fFloppy, fOpticalDisc. - DriveID fId; // Drive id. + rt_drive_id_type fId; // Drive id. Int32 fFlags; // fReadOnly, fXPMDrive, fXPTDrive //! for StorageKit. @@ -77,6 +77,8 @@ class Mountpoint final { DriveDevicePtr D() { return mD; } DriveDevicePtr* GetAddressOf(int index) { + DbgLastError() = kErrorSuccess; + switch (index) { case 0: return &mA; @@ -87,8 +89,9 @@ class Mountpoint final { case 3: return &mD; default: { - GetLastError() = kErrorNoSuchDisk; + DbgLastError() = kErrorNoSuchDisk; kcout << "HCoreKrnl\\Mountpoint: Check HError.\n"; + break; } } diff --git a/Private/KernelKit/HError.hpp b/Private/KernelKit/HError.hpp index c9dcc2a5..1b971e94 100644 --- a/Private/KernelKit/HError.hpp +++ b/Private/KernelKit/HError.hpp @@ -29,8 +29,8 @@ inline constexpr HError kErrorNoSuchDisk = 45; Boolean ke_bug_check(void) noexcept; } // namespace HCore -#define IsOk(HERR) (HERR == HCore::kErrorSuccess) -#define HasFailed(HERR) (HERR != HCore::kErrorSuccess) -#define GetLastError() LastError +#define DbgOk() (kLastError == HCore::kErrorSuccess) +#define DbgFailed() (kLastError != HCore::kErrorSuccess) +#define DbgLastError() kLastError -inline HCore::HError LastError = 0; +inline HCore::HError kLastError = 0; diff --git a/Private/KernelKit/PE.hpp b/Private/KernelKit/PE.hpp index 99d6724f..43de19e0 100644 --- a/Private/KernelKit/PE.hpp +++ b/Private/KernelKit/PE.hpp @@ -16,10 +16,11 @@ #include <NewKit/Defines.hpp> +typedef HCore::UIntPtr U64; typedef HCore::UInt32 U32; typedef HCore::UInt16 U16; typedef HCore::UInt8 U8; -typedef char CHAR; +typedef U8 BYTE; #define kMagMz0 'M' #define kMagMz1 'Z' @@ -47,13 +48,12 @@ typedef struct ExecOptionalHeader final { U16 mMagic; // 0x010b - PE32, 0x020b - PE32+ (64 bit) U8 mMajorLinkerVersion; U8 mMinorLinkerVersion; - U32 mSizeOfCode; - U32 mSizeOfInitializedData; - U32 mSizeOfUninitializedData; + U64 mSizeOfCode; + U64 mSizeOfInitializedData; + U64 mSizeOfUninitializedData; U32 mAddressOfEntryPoint; U32 mBaseOfCode; - U32 mBaseOfData; - U32 mImageBase; + U64 mImageBase; U32 mSectionAlignment; U32 mFileAlignment; U16 mMajorOperatingSystemVersion; @@ -63,21 +63,21 @@ typedef struct ExecOptionalHeader final { U16 mMajorSubsystemVersion; U16 mMinorSubsystemVersion; U32 mWin32VersionValue; - U32 mSizeOfImage; - U32 mSizeOfHeaders; + U64 mSizeOfImage; + U64 mSizeOfHeaders; U32 mCheckSum; U16 mSubsystem; U16 mDllCharacteristics; - U32 mSizeOfStackReserve; - U32 mSizeOfStackCommit; - U32 mSizeOfHeapReserve; - U32 mSizeOfHeapCommit; + U64 mSizeOfStackReserve; + U64 mSizeOfStackCommit; + U64 mSizeOfHeapReserve; + U64 mSizeOfHeapCommit; U32 mLoaderFlags; U32 mNumberOfRvaAndSizes; } ExecOptionalHeader, *ExecOptionalHeaderPtr; typedef struct ExecSectionHeader final { - CHAR mName[8]; + BYTE mName[8]; U32 mVirtualSize; U32 mVirtualAddress; U32 mSizeOfRawData; diff --git a/Private/KernelKit/ProcessManager.hpp b/Private/KernelKit/ProcessManager.hpp index 092f47e7..277a2985 100644 --- a/Private/KernelKit/ProcessManager.hpp +++ b/Private/KernelKit/ProcessManager.hpp @@ -155,7 +155,7 @@ class Process final { void Crash(); //! @brief Exits program. - void Exit(Int32 exit_code = 0); + void Exit(Int32 exitCode = 0); //! @brief TLS Allocate VoidPtr New(const SizeT &sz); |
