iPXE
Mbr.h
Go to the documentation of this file.
1/** @file
2 Legacy Master Boot Record Format Definition.
3
4Copyright (c) 2006 - 2018, Intel Corporation. All rights reserved.<BR>
5SPDX-License-Identifier: BSD-2-Clause-Patent
6
7**/
8
9#pragma once
10
11FILE_LICENCE ( BSD2_PATENT );
12FILE_SECBOOT ( PERMITTED );
13
14#define MBR_SIGNATURE 0xaa55
15
16#define EXTENDED_DOS_PARTITION 0x05
17#define EXTENDED_WINDOWS_PARTITION 0x0F
18
19#define MAX_MBR_PARTITIONS 4
20
21#define PMBR_GPT_PARTITION 0xEE
22#define EFI_PARTITION 0xEF
23
24#define MBR_SIZE 512
25
26#pragma pack(1)
27///
28/// MBR Partition Entry
29///
42
43///
44/// MBR Partition Table
45///
53
54#pragma pack()
unsigned short UINT16
2-byte unsigned value.
unsigned char UINT8
1-byte unsigned value.
#define MAX_MBR_PARTITIONS
Definition Mbr.h:19
#define FILE_LICENCE(_licence)
Declare a particular licence as applying to a file.
Definition compiler.h:921
#define FILE_SECBOOT(_status)
Declare a file's UEFI Secure Boot permission status.
Definition compiler.h:951
MBR Partition Table.
Definition Mbr.h:46
UINT8 Unknown[2]
Definition Mbr.h:49
UINT8 BootStrapCode[440]
Definition Mbr.h:47
UINT8 UniqueMbrSignature[4]
Definition Mbr.h:48
MBR_PARTITION_RECORD Partition[MAX_MBR_PARTITIONS]
Definition Mbr.h:50
UINT16 Signature
Definition Mbr.h:51
MBR Partition Entry.
Definition Mbr.h:30
UINT8 OSIndicator
Definition Mbr.h:35
UINT8 StartTrack
Definition Mbr.h:34
UINT8 SizeInLBA[4]
Definition Mbr.h:40
UINT8 BootIndicator
Definition Mbr.h:31
UINT8 StartHead
Definition Mbr.h:32
UINT8 EndSector
Definition Mbr.h:37
UINT8 StartingLBA[4]
Definition Mbr.h:39
UINT8 StartSector
Definition Mbr.h:33