]> git.proxmox.com Git - mirror_edk2.git/blobdiff - EdkCompatibilityPkg/Sample/Tools/Source/BootsectImage/mbr.h
Add in the 1st version of ECP.
[mirror_edk2.git] / EdkCompatibilityPkg / Sample / Tools / Source / BootsectImage / mbr.h
diff --git a/EdkCompatibilityPkg/Sample/Tools/Source/BootsectImage/mbr.h b/EdkCompatibilityPkg/Sample/Tools/Source/BootsectImage/mbr.h
new file mode 100644 (file)
index 0000000..5a95097
--- /dev/null
@@ -0,0 +1,64 @@
+/*++\r
+\r
+Copyright 2006, Intel Corporation                                                         \r
+All rights reserved. This program and the accompanying materials                          \r
+are licensed and made available under the terms and conditions of the BSD License         \r
+which accompanies this distribution.  The full text of the license may be found at        \r
+http://opensource.org/licenses/bsd-license.php                                            \r
+                                                                                          \r
+THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS,                     \r
+WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED.             \r
+\r
+Module Name:\r
+\r
+    mbr.h\r
+    \r
+Abstract:\r
+\r
+Revision History\r
+\r
+--*/\r
+\r
+#ifndef _MBR_H_\r
+#define _MBR_H_\r
+\r
+#include "Tiano.h"\r
+\r
+#pragma pack(1)\r
+\r
+#define MAX_MBR_PARTITIONS          4\r
+\r
+//\r
+// MBR Partition Entry\r
+//\r
+typedef struct {\r
+  UINT8  BootIndicator;\r
+  UINT8  StartHead;\r
+  UINT8  StartSector;\r
+  UINT8  StartTrack;\r
+  UINT8  OSType;\r
+  UINT8  EndHead;\r
+  UINT8  EndSector;\r
+  UINT8  EndTrack;\r
+  UINT32 StartingLBA;\r
+  UINT32 SizeInLBA;\r
+} MBR_PARTITION_RECORD;\r
+\r
+//\r
+// MBR Partition table\r
+//\r
+typedef struct {\r
+  UINT8                 BootCode[440];\r
+  UINT32                UniqueMbrSignature;\r
+  UINT16                Unknown;\r
+  MBR_PARTITION_RECORD  PartitionRecord[MAX_MBR_PARTITIONS];\r
+  UINT16                Signature;\r
+} MASTER_BOOT_RECORD;\r
+\r
+#pragma pack()\r
+\r
+#define MBR_SIGNATURE               0xAA55\r
+#define EXTENDED_DOS_PARTITION      0x05\r
+#define EXTENDED_WINDOWS_PARTITION  0x0F\r
+\r
+#endif\r