MCPcopy Index your code
hub / github.com/acidanthera/OpenCorePkg

github.com/acidanthera/OpenCorePkg @1.0.7

Chat with this repo
repository ↗ · DeepWiki ↗ · release 1.0.7 ↗ · + Follow
4,812 symbols 11,899 edges 926 files 1,321 documented · 27%
What it actually does AI analysis from the code graph — generated when you open this
loading…
README

Build Status Scan Status

OpenCore bootloader with development SDK.

Libraries

This repository also contains additional UEFI support common libraries shared by other projects in Acidanthera. The primary purpose of the library set is to provide supplemental functionality for Apple-specific UEFI drivers. Key features:

  • Apple disk image loading support
  • Apple keyboard input aggregation
  • Apple PE image signature verification
  • Apple UEFI secure boot supplemental code
  • Audio management with screen reading support
  • Basic ACPI and SMBIOS manipulation
  • CPU information gathering with timer support
  • Cryptographic primitives (SHA-256, RSA, etc.)
  • Decompression primitives (zlib, lzss, lzvn, etc.)
  • Helper code for ACPI reads and modifications
  • Higher level abstractions for files, strings, UEFI variables
  • Overflow checking arithmetics
  • PE image loading with no UEFI Secure Boot conflict
  • Plist configuration format parsing
  • PNG image manipulation
  • Text output and graphics output implementations
  • XNU kernel driver injection and patch engine

Early history of the codebase could be found in AppleSupportPkg and PicoLib library set by The HermitCrabs Lab.

OcGuardLib

This library implements basic safety features recommended for the use within the project. It implements fast safe integral arithmetics mapping on compiler builtins, type alignment checking, and UBSan runtime, based on NetBSD implementation.

The use of UBSan runtime requires the use of Clang compiler and -fsanitize=undefined argument. Refer to Clang documentation for more details.

Credits

Discussion

Please refer to the following list of OpenCore discussion forums.

Core symbols most depended-on inside this repo

CompareGuid
called by 143
User/Library/UserBaseMemoryLib.c
OcAsciiPrintBuffer
called by 135
Library/OcStringLib/OcAsciiLib.c
CompareMem
called by 118
User/Library/UserBaseMemoryLib.c
MULSHIFT32
called by 110
Library/OcMp3Lib/helix/assembly.h
lodepng_free
called by 75
Library/OcPngLib/lodepng.c
FreeAttr
called by 62
Platform/OpenNtfsDxe/Disc.c
PatcherApplyGenericPatch
called by 62
Library/OcAppleKernelLib/KextPatcher.c
OcMatchDarwinVersion
called by 57
Library/OcAppleKernelLib/KernelVersion.c

Shape

Function 4,202
Class 516
Method 66
Enum 28

Languages

C88%
C++10%
Python2%

Modules by API surface

Library/OcPngLib/lodepng.c250 symbols
Library/OcGuardLib/Ubsan.c133 symbols
Include/Intel/IndustryStandard/MkhiMsgs.h95 symbols
Legacy/BootPlatform/ConSplitterDxe/ConSplitter.c69 symbols
User/Library/UserMisc.c55 symbols
Library/OcXmlLib/OcXmlLib.c49 symbols
Library/OcHiiDatabaseLib/Database.c48 symbols
Library/OcHiiDatabaseLib/ConfigRouting.c44 symbols
Staging/OpenHfsPlus/fsw_hfsplus.c42 symbols
Staging/OpenHfsPlus/fsw_efi.c39 symbols
Staging/OpenHfsPlus/fsw_core.c37 symbols
Debug/Scripts/gdb_uefi.py37 symbols

For agents

$ claude mcp add OpenCorePkg \
  -- python -m otcore.mcp_server <graph>

⬇ download graph artifact

Ask about this repo answers extend the page