diff options
| author | Amlal El Mahrouss <amlal@el-mahrouss-logic.com> | 2024-03-18 12:35:19 +0100 |
|---|---|---|
| committer | Amlal El Mahrouss <amlal@el-mahrouss-logic.com> | 2024-03-18 12:39:24 +0100 |
| commit | 4c714f2c24c5df78bae2f35c42c73107de4c8c71 (patch) | |
| tree | b36d2498b8387909dac45c98097b8169636ad25a /Private/KernelKit | |
| parent | a4bfc396a78ddd553de519ab927d8479d0c3c45d (diff) | |
unstable, unrelated: See below.
- :boom: Breaking changes in System.Core.dll
- Framebuffer, moved operator bool into c++ source file.
- Remove zlib in favor of our own Zip API.
Signed-off-by: Amlal El Mahrouss <amlal@el-mahrouss-logic.com>
Diffstat (limited to 'Private/KernelKit')
| -rw-r--r-- | Private/KernelKit/DebugOutput.hpp | 2 | ||||
| -rw-r--r-- | Private/KernelKit/DriveManager.hxx (renamed from Private/KernelKit/DriveManager.hpp) | 24 | ||||
| -rw-r--r-- | Private/KernelKit/Framebuffer.hpp | 8 | ||||
| -rw-r--r-- | Private/KernelKit/PEFSharedObject.hxx | 10 |
4 files changed, 23 insertions, 21 deletions
diff --git a/Private/KernelKit/DebugOutput.hpp b/Private/KernelKit/DebugOutput.hpp index a2355cd8..88ed2448 100644 --- a/Private/KernelKit/DebugOutput.hpp +++ b/Private/KernelKit/DebugOutput.hpp @@ -96,7 +96,7 @@ inline TerminalDevice get_console_in(Char* buf) { typedef Char rt_debug_type[255]; -class DebuggerPorts final { +class DebuggerPortHeader final { public: Int16 fPort[kDebugMaxPorts]; Int16 fBoundCnt; diff --git a/Private/KernelKit/DriveManager.hpp b/Private/KernelKit/DriveManager.hxx index 027c9391..abca0ad3 100644 --- a/Private/KernelKit/DriveManager.hpp +++ b/Private/KernelKit/DriveManager.hxx @@ -33,30 +33,34 @@ enum { typedef Int64 rt_drive_id_type; -/// @brief Mounted drive traits. -struct DriveTraits final { +/// @brief Media drive trait type. +struct DriveTrait final { Char fName[kDriveNameLen]; // /System, /Boot, //./Devices/USB... Int32 fKind; // fMassStorage, fFloppy, fOpticalDisc. rt_drive_id_type fId; // Drive id. Int32 fFlags; // fReadOnly, fXPMDrive, fXPTDrive - //! for StorageKit. + /// @brief Packet drive (StorageKit compilant.) struct DrivePacket final { - voidPtr fPacketContent; // packet body. - Char fPacketMime[32]; //! identify what we're sending. + VoidPtr fPacketContent; // packet body. + Char fPacketMime[kDriveNameLen]; //! identify what we're sending. SizeT fPacketSize; // packet size UInt32 fPacketCRC32; // sanity crc, in case if good is set to false Boolean fPacketGood; } fPacket; + + Void (*fInput)(DrivePacket* packetPtr); + Void (*fOutput)(DrivePacket* packetPtr); + Void (*fVerify)(DrivePacket* packetPtr); }; -#define kPacketBinary "file/x-binary" -#define kPacketSource "file/x-source" -#define kPacketASCII "file/x-ascii" -#define kPacketZip "file/x-zip" +#define kDrivePacketBinary "file/x-binary" +#define kDrivePacketSource "file/x-source" +#define kDrivePacketASCII "file/x-ascii" +#define kDrivePacketZip "file/x-zip" //! drive as a device. -typedef DeviceInterface<DriveTraits> DriveDevice; +typedef DeviceInterface<DriveTrait> DriveDevice; typedef DriveDevice* DriveDevicePtr; /** diff --git a/Private/KernelKit/Framebuffer.hpp b/Private/KernelKit/Framebuffer.hpp index 2847efb0..daf95ed0 100644 --- a/Private/KernelKit/Framebuffer.hpp +++ b/Private/KernelKit/Framebuffer.hpp @@ -28,7 +28,7 @@ class FramebufferContext final { class Framebuffer final { public: - Framebuffer(Ref<FramebufferContext *> &addr) : m_FrameBufferAddr(addr) {} + explicit Framebuffer(Ref<FramebufferContext *> &addr) : m_FrameBufferAddr(addr) {} ~Framebuffer() {} Framebuffer &operator=(const Framebuffer &) = delete; @@ -36,10 +36,8 @@ class Framebuffer final { volatile UIntPtr *operator[](const UIntPtr &pos); - operator bool() { - return m_FrameBufferAddr && m_Colour != FramebufferColorKind::INVALID; - } - + operator bool(); + const FramebufferColorKind &Color( const FramebufferColorKind &colour = FramebufferColorKind::INVALID); diff --git a/Private/KernelKit/PEFSharedObject.hxx b/Private/KernelKit/PEFSharedObject.hxx index becac43e..0684b2a7 100644 --- a/Private/KernelKit/PEFSharedObject.hxx +++ b/Private/KernelKit/PEFSharedObject.hxx @@ -25,7 +25,7 @@ extern "C" void __mh_purecall(void); */ class SharedObject final { public: - struct SharedObjectTraits final { + struct SharedObjectTrait final { VoidPtr fImageObject; VoidPtr fImageEntrypointOffset; }; @@ -38,15 +38,15 @@ class SharedObject final { HCORE_COPY_DEFAULT(SharedObject); private: - SharedObjectTraits *fMounted{nullptr}; + SharedObjectTrait *fMounted{nullptr}; public: - SharedObjectTraits **GetAddressOf() { return &fMounted; } + SharedObjectTrait **GetAddressOf() { return &fMounted; } - SharedObjectTraits *Get() { return fMounted; } + SharedObjectTrait *Get() { return fMounted; } public: - void Mount(SharedObjectTraits *to_mount) { + void Mount(SharedObjectTrait *to_mount) { if (!to_mount || !to_mount->fImageObject) return; fMounted = to_mount; |
