OpenCore  1.0.4
OpenCore Bootloader
Loading...
Searching...
No Matches
Apm.h File Reference

Go to the source code of this file.

Macros

#define MBR_TYPE_APPLE_PARTITION_TABLE_HEADER   0x20
 
#define APM_ENTRY_TYPE_APM   "Apple_partition_map"
 
#define APM_ENTRY_TYPE_FREE   "Apple_Free"
 
#define APM_DRIVER_DESCRIPTOR_MAP_SIGNATURE   SIGNATURE_16 ('E', 'R')
 
#define APM_ENTRY_SIGNATURE   SIGNATURE_16 ('P', 'M')
 
#define APM_ENTRY_FLAGS_VALID   BIT0
 
#define APM_ENTRY_FLAGS_ALLOCATED   BIT1
 
#define APM_ENTRY_FLAGS_IN_USE   BIT2
 
#define APM_ENTRY_FLAGS_BOOTABLE   BIT3
 
#define APM_ENTRY_FLAGS_READABLE   BIT4
 
#define APM_ENTRY_FLAGS_WRITABLE   BIT5
 
#define APM_ENTRY_FLAGS_OS_PIC_CODE   BIT6
 
#define APM_ENTRY_FLAGS_OS_SPECIFIC_2   BIT7
 
#define APM_ENTRY_FLAGS_OS_SPECIFIC_1   BIT8
 
#define APM_ENTRY_FLAGS_RESERVED   0xFFFFFE00
 

Typedefs

struct { 
 
   UINT32   BlockStart 
 
   UINT16   NumberOfBlocks 
 
   UINT16   SystemType 
 
APM_DRIVER_DESCRIPTOR_MAP_ENTRY 
 
struct { 
 
   UINT16   Signature 
 
   UINT16   BlockSize 
 
   UINT32   BlockCount 
 
   UINT16   DeviceType 
 
   UINT16   DeviceId 
 
   UINT32   DriverData 
 
   UINT16   DriverDescriptorCount 
 
   APM_DRIVER_DESCRIPTOR_MAP_ENTRY   DriverDescriptors [8] 
 
   UINT8   Reserved [430] 
 
APM_DRIVER_DESCRIPTOR_MAP 
 
struct { 
 
   UINT16   Signature 
 
   UINT16   Reserved1 
 
   UINT32   NumberOfPartitionEntries 
 
   UINT32   PartitionStart 
 
   UINT32   PartitionSize 
 
   CHAR8   PartitionName [32] 
 
   CHAR8   PartitionType [32] 
 
   UINT32   LBAStart 
 
   UINT32   LBASize 
 
   UINT32   PartitionFlags 
 
   UINT32   BootStrapCodeLBA 
 
   UINT32   BootStrapCodeSize 
 
   UINT32   BootStrapCodeLoadAddress 
 
   UINT32   BootStrapCodeLoadAddress2 
 
   UINT32   BootStrapCodeEntry 
 
   UINT32   BootStrapCodeEntry2 
 
   UINT32   BootStrapCodeChecksum 
 
   UINT8   ProcessorType [16] 
 
   UINT32   Reserved2 [32] 
 
   UINT32   Reserved3 [62] 
 
APM_ENTRY 
 

Detailed Description

APM partitioning scheme.

Copyright (c) 2016-2021, Acidanthera. All rights reserved.
SPDX-License-Identifier: BSD-2-Clause-Patent

Definition in file Apm.h.

Macro Definition Documentation

◆ APM_DRIVER_DESCRIPTOR_MAP_SIGNATURE

#define APM_DRIVER_DESCRIPTOR_MAP_SIGNATURE   SIGNATURE_16 ('E', 'R')

Definition at line 25 of file Apm.h.

◆ APM_ENTRY_FLAGS_ALLOCATED

#define APM_ENTRY_FLAGS_ALLOCATED   BIT1

Definition at line 48 of file Apm.h.

◆ APM_ENTRY_FLAGS_BOOTABLE

#define APM_ENTRY_FLAGS_BOOTABLE   BIT3

Definition at line 50 of file Apm.h.

◆ APM_ENTRY_FLAGS_IN_USE

#define APM_ENTRY_FLAGS_IN_USE   BIT2

Definition at line 49 of file Apm.h.

◆ APM_ENTRY_FLAGS_OS_PIC_CODE

#define APM_ENTRY_FLAGS_OS_PIC_CODE   BIT6

Definition at line 53 of file Apm.h.

◆ APM_ENTRY_FLAGS_OS_SPECIFIC_1

#define APM_ENTRY_FLAGS_OS_SPECIFIC_1   BIT8

Definition at line 55 of file Apm.h.

◆ APM_ENTRY_FLAGS_OS_SPECIFIC_2

#define APM_ENTRY_FLAGS_OS_SPECIFIC_2   BIT7

Definition at line 54 of file Apm.h.

◆ APM_ENTRY_FLAGS_READABLE

#define APM_ENTRY_FLAGS_READABLE   BIT4

Definition at line 51 of file Apm.h.

◆ APM_ENTRY_FLAGS_RESERVED

#define APM_ENTRY_FLAGS_RESERVED   0xFFFFFE00

Definition at line 56 of file Apm.h.

◆ APM_ENTRY_FLAGS_VALID

#define APM_ENTRY_FLAGS_VALID   BIT0

Definition at line 47 of file Apm.h.

◆ APM_ENTRY_FLAGS_WRITABLE

#define APM_ENTRY_FLAGS_WRITABLE   BIT5

Definition at line 52 of file Apm.h.

◆ APM_ENTRY_SIGNATURE

#define APM_ENTRY_SIGNATURE   SIGNATURE_16 ('P', 'M')

Definition at line 42 of file Apm.h.

◆ APM_ENTRY_TYPE_APM

#define APM_ENTRY_TYPE_APM   "Apple_partition_map"

Definition at line 16 of file Apm.h.

◆ APM_ENTRY_TYPE_FREE

#define APM_ENTRY_TYPE_FREE   "Apple_Free"

Definition at line 17 of file Apm.h.

◆ MBR_TYPE_APPLE_PARTITION_TABLE_HEADER

#define MBR_TYPE_APPLE_PARTITION_TABLE_HEADER   0x20

Definition at line 14 of file Apm.h.

Typedef Documentation

◆ [struct]

typedef PACKED struct { ... } APM_DRIVER_DESCRIPTOR_MAP

◆ [struct]

typedef PACKED struct { ... } APM_DRIVER_DESCRIPTOR_MAP_ENTRY

◆ [struct]

typedef PACKED struct { ... } APM_ENTRY

Variable Documentation

◆ BlockCount

UINT32 BlockCount

Definition at line 33 of file Apm.h.

◆ BlockSize

UINT16 BlockSize

Definition at line 32 of file Apm.h.

◆ BlockStart

UINT32 BlockStart

Definition at line 20 of file Apm.h.

◆ BootStrapCodeChecksum

UINT32 BootStrapCodeChecksum

Definition at line 78 of file Apm.h.

◆ BootStrapCodeEntry

UINT32 BootStrapCodeEntry

Definition at line 76 of file Apm.h.

◆ BootStrapCodeEntry2

UINT32 BootStrapCodeEntry2

Definition at line 77 of file Apm.h.

◆ BootStrapCodeLBA

UINT32 BootStrapCodeLBA

Definition at line 72 of file Apm.h.

◆ BootStrapCodeLoadAddress

UINT32 BootStrapCodeLoadAddress

Definition at line 74 of file Apm.h.

◆ BootStrapCodeLoadAddress2

UINT32 BootStrapCodeLoadAddress2

Definition at line 75 of file Apm.h.

◆ BootStrapCodeSize

UINT32 BootStrapCodeSize

Definition at line 73 of file Apm.h.

◆ DeviceId

UINT16 DeviceId

Definition at line 35 of file Apm.h.

◆ DeviceType

UINT16 DeviceType

Definition at line 34 of file Apm.h.

◆ DriverData

UINT32 DriverData

Definition at line 36 of file Apm.h.

◆ DriverDescriptorCount

UINT16 DriverDescriptorCount

Definition at line 37 of file Apm.h.

◆ DriverDescriptors

APM_DRIVER_DESCRIPTOR_MAP_ENTRY DriverDescriptors[8]

Definition at line 38 of file Apm.h.

◆ LBASize

UINT32 LBASize

Definition at line 70 of file Apm.h.

◆ LBAStart

UINT32 LBAStart

Definition at line 69 of file Apm.h.

◆ NumberOfBlocks

UINT16 NumberOfBlocks

Definition at line 21 of file Apm.h.

◆ NumberOfPartitionEntries

UINT32 NumberOfPartitionEntries

Definition at line 64 of file Apm.h.

◆ PartitionFlags

UINT32 PartitionFlags

Definition at line 71 of file Apm.h.

◆ PartitionName

CHAR8 PartitionName[32]

Definition at line 67 of file Apm.h.

◆ PartitionSize

UINT32 PartitionSize

Definition at line 66 of file Apm.h.

◆ PartitionStart

UINT32 PartitionStart

Definition at line 65 of file Apm.h.

◆ PartitionType

CHAR8 PartitionType[32]

Definition at line 68 of file Apm.h.

◆ ProcessorType

UINT8 ProcessorType[16]

Definition at line 79 of file Apm.h.

◆ Reserved

UINT8 Reserved[430]

Definition at line 39 of file Apm.h.

◆ Reserved1

UINT16 Reserved1

Definition at line 63 of file Apm.h.

◆ Reserved2

UINT32 Reserved2[32]

Definition at line 80 of file Apm.h.

◆ Reserved3

UINT32 Reserved3[62]

Definition at line 81 of file Apm.h.

◆ Signature

UINT16 Signature

Definition at line 31 of file Apm.h.

◆ SystemType

UINT16 SystemType

Definition at line 22 of file Apm.h.