From 9173b90eb16ea1c68f945e5768a665e34e7b5e50 Mon Sep 17 00:00:00 2001 From: Nigel Date: Thu, 23 Dec 2021 17:43:25 +0100 Subject: [PATCH] Structures added for MasterBootRecord support --- src/kernel/PartitionTable/MBR/MasterBootRecord.h | 11 +++++++++++ src/kernel/PartitionTable/MBR/PartitionTableEntry.h | 11 +++++++++++ 2 files changed, 22 insertions(+) create mode 100644 src/kernel/PartitionTable/MBR/MasterBootRecord.h create mode 100644 src/kernel/PartitionTable/MBR/PartitionTableEntry.h diff --git a/src/kernel/PartitionTable/MBR/MasterBootRecord.h b/src/kernel/PartitionTable/MBR/MasterBootRecord.h new file mode 100644 index 0000000..a8d7aea --- /dev/null +++ b/src/kernel/PartitionTable/MBR/MasterBootRecord.h @@ -0,0 +1,11 @@ +#pragma once +#include +#include "PartitionTableEntry.h" + +struct MBR { + uint8_t code [440]; + uint32_t uniqueID; + uint16_t Reserved; + PartitionTableEntry TableEntries[4]; + uint16_t ValidBootsector; +}__attribute__((packed)); \ No newline at end of file diff --git a/src/kernel/PartitionTable/MBR/PartitionTableEntry.h b/src/kernel/PartitionTable/MBR/PartitionTableEntry.h new file mode 100644 index 0000000..e1bd4d6 --- /dev/null +++ b/src/kernel/PartitionTable/MBR/PartitionTableEntry.h @@ -0,0 +1,11 @@ +#pragma once +#include + +struct PartitionTableEntry{ + uint8_t driveAttribute; + uint8_t CHS_start_address [3]; + uint8_t PartitionType; + uint8_t CHS_lastSector_Address[3]; + uint32_t LBA_partition_start; + uint32_t Number_sectors_inPartition; +}__attribute__((packed)); \ No newline at end of file