├── .devcontainer └── devcontainer.json ├── .editorconfig ├── .gitattributes ├── .github └── workflows │ ├── analyze.yml │ ├── build.yml │ └── uncrustify.yml ├── .gitignore ├── .shellcheckrc ├── AppleModels ├── DataBase.md ├── DataBase │ ├── MacBook │ │ ├── MB101.yaml │ │ ├── MB11.yaml │ │ ├── MB21.yaml │ │ ├── MB31.yaml │ │ ├── MB41.yaml │ │ ├── MB51.yaml │ │ ├── MB52.yaml │ │ ├── MB61.yaml │ │ ├── MB71.yaml │ │ ├── MB81.yaml │ │ └── MB91.yaml │ ├── MacBookAir │ │ ├── MBA11.yaml │ │ ├── MBA21.yaml │ │ ├── MBA31.yaml │ │ ├── MBA32.yaml │ │ ├── MBA41.yaml │ │ ├── MBA42.yaml │ │ ├── MBA51.yaml │ │ ├── MBA52.yaml │ │ ├── MBA61.yaml │ │ ├── MBA62.yaml │ │ ├── MBA71.yaml │ │ ├── MBA72.yaml │ │ ├── MBA81.yaml │ │ ├── MBA82.yaml │ │ └── MBA91.yaml │ ├── MacBookPro │ │ ├── MBP101.yaml │ │ ├── MBP102.yaml │ │ ├── MBP11.yaml │ │ ├── MBP111.yaml │ │ ├── MBP112.yaml │ │ ├── MBP113.yaml │ │ ├── MBP114.yaml │ │ ├── MBP115.yaml │ │ ├── MBP12.yaml │ │ ├── MBP121.yaml │ │ ├── MBP131.yaml │ │ ├── MBP132.yaml │ │ ├── MBP133.yaml │ │ ├── MBP141.yaml │ │ ├── MBP142.yaml │ │ ├── MBP143.yaml │ │ ├── MBP151.yaml │ │ ├── MBP152.yaml │ │ ├── MBP153.yaml │ │ ├── MBP154.yaml │ │ ├── MBP161.yaml │ │ ├── MBP162.yaml │ │ ├── MBP163.yaml │ │ ├── MBP164.yaml │ │ ├── MBP21.yaml │ │ ├── MBP22.yaml │ │ ├── MBP31.yaml │ │ ├── MBP41.yaml │ │ ├── MBP51.yaml │ │ ├── MBP52.yaml │ │ ├── MBP53.yaml │ │ ├── MBP54.yaml │ │ ├── MBP55.yaml │ │ ├── MBP61.yaml │ │ ├── MBP62.yaml │ │ ├── MBP71.yaml │ │ ├── MBP81.yaml │ │ ├── MBP82.yaml │ │ ├── MBP83.yaml │ │ ├── MBP91.yaml │ │ └── MBP92.yaml │ ├── MacPro │ │ ├── MP11.yaml │ │ ├── MP21.yaml │ │ ├── MP31.yaml │ │ ├── MP41.yaml │ │ ├── MP51.yaml │ │ ├── MP61.yaml │ │ └── MP71.yaml │ ├── Macmini │ │ ├── MM11.yaml │ │ ├── MM21.yaml │ │ ├── MM31.yaml │ │ ├── MM41.yaml │ │ ├── MM51.yaml │ │ ├── MM52.yaml │ │ ├── MM53.yaml │ │ ├── MM61.yaml │ │ ├── MM62.yaml │ │ ├── MM71.yaml │ │ └── MM81.yaml │ ├── Xserve │ │ ├── XS11.yaml │ │ ├── XS21.yaml │ │ └── XS31.yaml │ ├── iMac │ │ ├── IM101.yaml │ │ ├── IM111.yaml │ │ ├── IM112.yaml │ │ ├── IM113.yaml │ │ ├── IM121.yaml │ │ ├── IM122.yaml │ │ ├── IM131.yaml │ │ ├── IM132.yaml │ │ ├── IM133.yaml │ │ ├── IM141.yaml │ │ ├── IM142.yaml │ │ ├── IM143.yaml │ │ ├── IM144.yaml │ │ ├── IM151.yaml │ │ ├── IM161.yaml │ │ ├── IM162.yaml │ │ ├── IM171.yaml │ │ ├── IM181.yaml │ │ ├── IM182.yaml │ │ ├── IM183.yaml │ │ ├── IM191.yaml │ │ ├── IM192.yaml │ │ ├── IM201.yaml │ │ ├── IM202.yaml │ │ ├── IM41.yaml │ │ ├── IM42.yaml │ │ ├── IM51.yaml │ │ ├── IM52.yaml │ │ ├── IM61.yaml │ │ ├── IM71.yaml │ │ ├── IM81.yaml │ │ └── IM91.yaml │ └── iMacPro │ │ └── IMP11.yaml ├── Products.zjson ├── README.md ├── update_generated.py └── update_products.py ├── Application ├── BootKicker │ ├── BootKicker.c │ └── BootKicker.inf ├── Bootstrap │ ├── Bootstrap.c │ └── Bootstrap.inf ├── ChipTune │ ├── ChipTune.c │ └── ChipTune.inf ├── CleanNvram │ ├── CleanNvram.c │ └── CleanNvram.inf ├── ControlMsrE2 │ ├── ControlMsrE2.c │ ├── ControlMsrE2.h │ ├── ControlMsrE2.inf │ ├── ControlMsrE2Clover.inf │ ├── ControlMsrE2Hii.c │ ├── ControlMsrE2UI.c │ └── VerifyMsrE2.c ├── CsrUtil │ ├── CsrUtil.c │ └── CsrUtil.inf ├── FontTester │ ├── FontTester.c │ └── FontTester.inf ├── GopPerf │ ├── GopPerf.c │ └── GopPerf.inf ├── GopStop │ ├── Examples │ │ ├── Step10.png │ │ └── Step3.png │ ├── GopStop.c │ ├── GopStop.inf │ └── README.md ├── KeyTester │ ├── KeyTester.c │ └── KeyTester.inf ├── ListPartitions │ ├── ListPartitions.c │ └── ListPartitions.inf ├── MmapDump │ ├── MmapDump.c │ └── MmapDump.inf ├── OpenControl │ ├── OpenControl.c │ └── OpenControl.inf ├── OpenCore │ ├── OpenCore.c │ └── OpenCore.inf ├── PavpProvision │ ├── PavpProvision.c │ ├── PavpProvision.inf │ └── PavpProvisionData.c ├── ResetSystem │ ├── ResetSystem.c │ └── ResetSystem.inf ├── RtcRw │ ├── RtcRw.c │ └── RtcRw.inf ├── TpmInfo │ ├── TpmInfo.c │ └── TpmInfo.inf └── VerifyMemOpt │ ├── VerifyMemOpt.c │ └── VerifyMemOpt.inf ├── Changelog.md ├── Debug ├── GdbSyms │ ├── Bin │ │ ├── Ia32_GCC5 │ │ │ └── GdbSyms.debug │ │ ├── Ia32_XCODE5 │ │ │ └── GdbSyms.dll │ │ ├── X64_CLANGDWARF │ │ │ └── GdbSyms.debug │ │ ├── X64_CLANGPDB │ │ │ ├── GdbSyms.dll │ │ │ └── GdbSyms.pdb │ │ ├── X64_GCC5 │ │ │ └── GdbSyms.debug │ │ └── X64_XCODE5 │ │ │ └── GdbSyms.dll │ ├── GdbSyms.c │ └── GdbSyms.inf ├── README.md ├── Scripts │ ├── common_uefi.py │ ├── gdb_uefi.py │ ├── lldb_uefi.py │ └── x86_64_target_definition.py └── efidebug.tool ├── Dockerfiles └── oc-dev │ └── Dockerfile ├── Docs ├── AcpiSamples │ └── Source │ │ ├── SSDT-ALS0.dsl │ │ ├── SSDT-AWAC-DISABLE.dsl │ │ ├── SSDT-BRG0.dsl │ │ ├── SSDT-EC-USBX.dsl │ │ ├── SSDT-EC.dsl │ │ ├── SSDT-EHCx-DISABLE.dsl │ │ ├── SSDT-HV-DEV-WS2022.dsl │ │ ├── SSDT-HV-DEV.dsl │ │ ├── SSDT-HV-PLUG.dsl │ │ ├── SSDT-HV-VMBUS.dsl │ │ ├── SSDT-IMEI.dsl │ │ ├── SSDT-PLUG-ALT.dsl │ │ ├── SSDT-PLUG.dsl │ │ ├── SSDT-PMC.dsl │ │ ├── SSDT-PNLF.dsl │ │ ├── SSDT-RTC0-RANGE.dsl │ │ ├── SSDT-RTC0.dsl │ │ ├── SSDT-SBUS-MCHC.dsl │ │ └── SSDT-UNC.dsl ├── BuildDocs.tool ├── Configuration.md5 ├── Configuration.pdf ├── Configuration.tex ├── Differences │ ├── Differences.pdf │ ├── Differences.tex │ └── PreviousConfiguration.tex ├── Errata │ ├── Errata.pdf │ └── Errata.tex ├── FORUMS.md ├── Flavours.md ├── Kexts.md ├── Libraries.md ├── Logos │ ├── Logo.pdf │ ├── Logo.png │ ├── Logo.sketch │ ├── LogoApprox.svg │ ├── OpenCore_with_text_Large.png │ ├── OpenCore_with_text_Small.png │ └── README.md ├── Sample.plist └── SampleCustom.plist ├── Doxyfile ├── Include ├── AMI │ └── Protocol │ │ ├── AmiKeycode.h │ │ ├── AmiPointer.h │ │ ├── AmiSoftKbd.h │ │ └── AmiSoftKbdRestore.h ├── Acidanthera │ ├── Guid │ │ ├── OcSmBios.h │ │ └── OcVariable.h │ ├── Library │ │ ├── OcAcpiLib.h │ │ ├── OcAfterBootCompatLib.h │ │ ├── OcApfsLib.h │ │ ├── OcAppleBootPolicyLib.h │ │ ├── OcAppleChunklistLib.h │ │ ├── OcAppleDiskImageLib.h │ │ ├── OcAppleEventLib.h │ │ ├── OcAppleImageConversionLib.h │ │ ├── OcAppleImg4Lib.h │ │ ├── OcAppleKernelLib.h │ │ ├── OcAppleKeyMapLib.h │ │ ├── OcAppleKeysLib.h │ │ ├── OcAppleRamDiskLib.h │ │ ├── OcAppleSecureBootLib.h │ │ ├── OcAppleUserInterfaceThemeLib.h │ │ ├── OcAudioLib.h │ │ ├── OcBlitLib.h │ │ ├── OcBootManagementLib.h │ │ ├── OcBootServicesTableLib.h │ │ ├── OcCompressionLib.h │ │ ├── OcConfigurationLib.h │ │ ├── OcConsoleLib.h │ │ ├── OcCpuLib.h │ │ ├── OcCryptoLib.h │ │ ├── OcDataHubLib.h │ │ ├── OcDebugLogLib.h │ │ ├── OcDeviceMiscLib.h │ │ ├── OcDevicePathLib.h │ │ ├── OcDevicePropertyLib.h │ │ ├── OcDeviceTreeLib.h │ │ ├── OcDirectResetLib.h │ │ ├── OcDriverConnectionLib.h │ │ ├── OcFileLib.h │ │ ├── OcFirmwarePasswordLib.h │ │ ├── OcFirmwareVolumeLib.h │ │ ├── OcFlexArrayLib.h │ │ ├── OcHashServicesLib.h │ │ ├── OcHdaDevicesLib.h │ │ ├── OcHeciLib.h │ │ ├── OcInputLib.h │ │ ├── OcLegacyThunkLib.h │ │ ├── OcLogAggregatorLib.h │ │ ├── OcMacInfoLib.h │ │ ├── OcMachoLib.h │ │ ├── OcMainLib.h │ │ ├── OcMemoryLib.h │ │ ├── OcMiscLib.h │ │ ├── OcMp3Lib.h │ │ ├── OcOSInfoLib.h │ │ ├── OcPciIoLib.h │ │ ├── OcPeCoffExtLib.h │ │ ├── OcPngLib.h │ │ ├── OcRngLib.h │ │ ├── OcRtcLib.h │ │ ├── OcSerializeLib.h │ │ ├── OcSmbiosLib.h │ │ ├── OcSmcLib.h │ │ ├── OcStorageLib.h │ │ ├── OcStringLib.h │ │ ├── OcTemplateLib.h │ │ ├── OcTimerLib.h │ │ ├── OcTypingLib.h │ │ ├── OcUnicodeCollationEngGenericLib.h │ │ ├── OcVariableLib.h │ │ ├── OcVirtualFsLib.h │ │ ├── OcWaveLib.h │ │ └── OcXmlLib.h │ └── Protocol │ │ ├── AudioDecode.h │ │ ├── AudioIo.h │ │ ├── HdaCodecInfo.h │ │ ├── HdaControllerInfo.h │ │ ├── HdaIo.h │ │ ├── OcAfterBootCompat.h │ │ ├── OcAudio.h │ │ ├── OcBootEntry.h │ │ ├── OcBootstrap.h │ │ ├── OcFirmwareRuntime.h │ │ ├── OcForceResolution.h │ │ ├── OcInterface.h │ │ ├── OcLog.h │ │ └── OcVariableRuntime.h ├── Apple │ ├── AArch64 │ │ └── AppleCpuType.h │ ├── AppleMacEfi.h │ ├── AppleMacEfi │ │ └── AppleMacEfiSpec.h │ ├── Arm │ │ └── AppleCpuType.h │ ├── Ebc │ │ └── AppleCpuType.h │ ├── Guid │ │ ├── AppleApfsInfo.h │ │ ├── AppleBless.h │ │ ├── AppleCertificate.h │ │ ├── AppleDataHub.h │ │ ├── AppleDevicePath.h │ │ ├── AppleFile.h │ │ ├── AppleFirmwareVolume.h │ │ ├── AppleHfsInfo.h │ │ ├── AppleHob.h │ │ ├── AppleOSLoaded.h │ │ ├── ApplePlatformInfo.h │ │ ├── AppleTDMApprovedGuid.h │ │ ├── AppleTscFrequency.h │ │ ├── AppleVariable.h │ │ └── BiosId.h │ ├── Ia32 │ │ └── AppleCpuType.h │ ├── IndustryStandard │ │ ├── Apfs.h │ │ ├── Apm.h │ │ ├── AppleBootArgs.h │ │ ├── AppleChunklist.h │ │ ├── AppleCompressedBinaryImage.h │ │ ├── AppleCsrConfig.h │ │ ├── AppleDiskImage.h │ │ ├── AppleDiskLabel.h │ │ ├── AppleEfiBootRtInfo.h │ │ ├── AppleFatBinaryImage.h │ │ ├── AppleFeatures.h │ │ ├── AppleHibernate.h │ │ ├── AppleHid.h │ │ ├── AppleIcon.h │ │ ├── AppleIntelCpuInfo.h │ │ ├── AppleKmodInfo.h │ │ ├── AppleKxldState.h │ │ ├── AppleMachoImage.h │ │ ├── AppleMkext.h │ │ ├── AppleNec.h │ │ ├── ApplePerfData.h │ │ ├── AppleProvisioning.h │ │ ├── AppleRtc.h │ │ ├── AppleSmBios.h │ │ └── AppleSmc.h │ ├── Library │ │ ├── AppleCpuExtensionsLib.h │ │ ├── AppleDataHubLib.h │ │ ├── AppleEventLib.h │ │ ├── AppleInterruptLib.h │ │ ├── AppleSmbiosLib.h │ │ └── BiosIdLib.h │ ├── Protocol │ │ ├── ApfsEfiBootRecordInfo.h │ │ ├── ApfsEncryptedPartition.h │ │ ├── ApfsUnsupportedBds.h │ │ ├── Apple80211.h │ │ ├── AppleBeepGen.h │ │ ├── AppleBootPolicy.h │ │ ├── AppleDebugLog.h │ │ ├── AppleDeviceControl.h │ │ ├── AppleDiag.h │ │ ├── AppleDiagLed.h │ │ ├── AppleDiskImage.h │ │ ├── AppleDmgBoot.h │ │ ├── AppleEg2Info.h │ │ ├── AppleEvent.h │ │ ├── AppleFirmwarePassword.h │ │ ├── AppleFramebufferInfo.h │ │ ├── AppleGraphicsDriver.h │ │ ├── AppleGraphicsPolicy.h │ │ ├── AppleHda.h │ │ ├── AppleImageConversion.h │ │ ├── AppleImg4Verification.h │ │ ├── AppleKeyMapAggregator.h │ │ ├── AppleKeyMapDatabase.h │ │ ├── AppleLoadImage.h │ │ ├── ApplePartitionInfo.h │ │ ├── ApplePlatformInfoDatabase.h │ │ ├── AppleRamDisk.h │ │ ├── AppleRemovableMedia.h │ │ ├── AppleRtcRam.h │ │ ├── AppleSecureBoot.h │ │ ├── AppleSingleFile.h │ │ ├── AppleSmcIo.h │ │ ├── AppleSystemInfo.h │ │ ├── AppleUserInterface.h │ │ ├── AppleVoiceOver.h │ │ ├── DevicePathPropertyDatabase.h │ │ ├── KeyboardInfo.h │ │ ├── OSInfo.h │ │ └── UserInterfaceTheme.h │ └── X64 │ │ └── AppleCpuType.h ├── Duet │ ├── EfiFlashMap.h │ ├── EfiImageFormat.h │ ├── EfiLdrHandoff.h │ ├── FlashLayout.h │ ├── Guid │ │ ├── AcpiDescription.h │ │ ├── DxeCoreFileName.h │ │ ├── FlashMapHob.h │ │ ├── LdrMemoryDescriptor.h │ │ ├── PciExpressBaseAddress.h │ │ └── PciOptionRomTable.h │ └── Library │ │ └── DuetBdsLib.h ├── Generic │ ├── IndustryStandard │ │ ├── Edid.h │ │ ├── Riff.h │ │ └── UsbHid.h │ └── stdbool.h ├── Grub2 │ ├── Guid │ │ └── ShimLock.h │ └── ShimVars.h ├── Intel │ ├── Guid │ │ ├── BlockIoVendor.h │ │ └── DataHubRecords.h │ ├── IndustryStandard │ │ ├── CpuId.h │ │ ├── GenericIch.h │ │ ├── HdaRegisters.h │ │ ├── HdaVerbs.h │ │ ├── HeciClientMsg.h │ │ ├── HeciMsg.h │ │ ├── MkhiMsgs.h │ │ ├── ProcessorInfo.h │ │ ├── PttPtpRegs.h │ │ └── VirtualMemory.h │ └── Protocol │ │ ├── ConsoleControl.h │ │ ├── CpuIo.h │ │ ├── DataHub.h │ │ ├── FirmwareVolume.h │ │ ├── FrameworkMpService.h │ │ ├── Heci.h │ │ ├── Heci2.h │ │ ├── HotPlugDevice.h │ │ ├── LegacyBios.h │ │ ├── LegacyRegion.h │ │ └── VgaMiniPort.h ├── Microsoft │ ├── Guid │ │ └── MicrosoftVariable.h │ └── MicrosoftWindows.h ├── Nvidia │ └── IndustryStandard │ │ └── McpMemoryController.h └── VMware │ └── Protocol │ ├── VMwareDebug.h │ ├── VMwareHda.h │ └── VMwareMac.h ├── LICENSE.txt ├── Legacy ├── BinDrivers │ ├── HfsPlus.inf │ ├── OpenUsbKbDxe.inf │ └── README.md ├── BootLoader │ ├── Makefile │ ├── boot0.nasm │ └── boot1f32.nasm ├── BootPlatform │ ├── AcpiResetDxe │ │ ├── Reset.c │ │ └── Reset.inf │ ├── BdsDxe │ │ ├── Bds.h │ │ ├── BdsDxe.inf │ │ ├── BdsDxe.uni │ │ ├── BdsDxeExtra.uni │ │ └── BdsEntry.c │ ├── BiosVideo │ │ ├── AtomBios.h │ │ ├── BiosVideo.c │ │ ├── BiosVideo.h │ │ ├── BiosVideo.inf │ │ ├── ComponentName.c │ │ ├── VesaBiosExtensions.h │ │ └── VideoBiosPatch.c │ ├── BlockIoDxe │ │ ├── BiosBlkIo.c │ │ ├── BiosBlkIo.h │ │ ├── BiosInt13.c │ │ ├── BlockIoDxe.inf │ │ ├── BlockIoDxe.uni │ │ ├── BlockIoDxeExtra.uni │ │ ├── ComponentName.c │ │ └── Edd.h │ ├── CpuDxe │ │ ├── CpuDxe.c │ │ ├── CpuDxe.h │ │ ├── CpuDxe.inf │ │ ├── Ia32 │ │ │ └── CpuInterrupt.nasm │ │ └── X64 │ │ │ └── CpuInterrupt.nasm │ ├── DxeIpl │ │ ├── DxeInit.c │ │ ├── DxeIpl.h │ │ ├── DxeIpl.inf │ │ ├── HobGeneration.c │ │ ├── HobGeneration.h │ │ ├── Ia32 │ │ │ ├── Canary.nasm │ │ │ ├── EnterDxeCore.c │ │ │ ├── GS.nasm │ │ │ ├── Paging.c │ │ │ └── VirtualMemory.h │ │ ├── LegacyTable.c │ │ ├── LegacyTable.h │ │ └── X64 │ │ │ ├── Canary.nasm │ │ │ ├── EnterDxeCore.c │ │ │ ├── GS.nasm │ │ │ ├── Paging.c │ │ │ └── VirtualMemory.h │ ├── EfiLdr │ │ ├── EfiLdr.h │ │ ├── EfiLdr.inf │ │ ├── EfiLdrHandoff.h │ │ ├── EfiLoader.c │ │ ├── Ia32 │ │ │ ├── Canary.nasm │ │ │ └── GS.nasm │ │ ├── LzmaDecompress.h │ │ ├── PeLoader.c │ │ ├── Support.c │ │ ├── Support.h │ │ └── X64 │ │ │ ├── Canary.nasm │ │ │ └── GS.nasm │ ├── GraphicsConsoleDxe │ │ ├── ComponentName.c │ │ ├── GraphicsConsole.c │ │ ├── GraphicsConsole.h │ │ ├── GraphicsConsoleDxe.inf │ │ ├── GraphicsConsoleDxe.uni │ │ ├── GraphicsConsoleDxeExtra.uni │ │ └── LaffStd.c │ ├── LegacyRegion2Dxe │ │ ├── LegacyRegion2.c │ │ ├── LegacyRegion2.h │ │ └── LegacyRegion2Dxe.inf │ ├── PciBusNoEnumerationDxe │ │ ├── ComponentName.c │ │ ├── PciBus.c │ │ ├── PciBus.h │ │ ├── PciBusNoEnumeration.inf │ │ ├── PciCommand.c │ │ ├── PciCommand.h │ │ ├── PciDeviceSupport.c │ │ ├── PciDeviceSupport.h │ │ ├── PciEnumerator.c │ │ ├── PciEnumerator.h │ │ ├── PciEnumeratorSupport.c │ │ ├── PciEnumeratorSupport.h │ │ ├── PciIo.c │ │ ├── PciIo.h │ │ ├── PciPowerManagement.c │ │ └── PciPowerManagement.h │ ├── PciRootBridgeDxe │ │ ├── DeviceIo.c │ │ ├── DeviceIo.h │ │ ├── PcatIo.c │ │ ├── PcatPciRootBridge.c │ │ ├── PcatPciRootBridge.h │ │ ├── PcatPciRootBridgeDevicePath.c │ │ ├── PcatPciRootBridgeIo.c │ │ └── PciRootBridgeNoEnumeration.inf │ └── SmbiosGenDxe │ │ ├── SmbiosGen.c │ │ ├── SmbiosGen.h │ │ ├── SmbiosGen.inf │ │ └── SmbiosGenStrings.uni ├── BootSector │ ├── Makefile │ ├── efi32.nasm │ ├── efi64.nasm │ └── start.nasm └── README.md ├── Library ├── DuetBdsLib │ ├── BdsConnect.c │ ├── BdsConsole.c │ ├── BdsMisc.c │ ├── BdsPlatform.c │ ├── BdsPlatform.h │ ├── DuetBdsLib.inf │ └── PlatformData.c ├── DuetTimerLib │ ├── DuetTimerLib.inf │ └── X86TimerLib.c ├── OcAcpiLib │ ├── AcpiDump.c │ ├── AcpiParser.c │ ├── AcpiParser.h │ ├── OcAcpiLib.c │ └── OcAcpiLib.inf ├── OcAfterBootCompatLib │ ├── BootCompatInternal.h │ ├── CustomSlide.c │ ├── KernelSupport.c │ ├── OcAfterBootCompatLib.c │ ├── OcAfterBootCompatLib.inf │ ├── RelocationBlock.c │ ├── RelocationCallGate.h │ ├── RelocationCallGate.nasm │ └── ServiceOverrides.c ├── OcApfsLib │ ├── OcApfsConnect.c │ ├── OcApfsFusion.c │ ├── OcApfsInternal.h │ ├── OcApfsIo.c │ ├── OcApfsLib.c │ └── OcApfsLib.inf ├── OcAppleBootPolicyLib │ ├── OcAppleBootPolicyLib.c │ └── OcAppleBootPolicyLib.inf ├── OcAppleChunklistLib │ ├── OcAppleChunklistLib.c │ └── OcAppleChunklistLib.inf ├── OcAppleDiskImageLib │ ├── OcAppleDiskImageBlockIo.c │ ├── OcAppleDiskImageLib.c │ ├── OcAppleDiskImageLib.inf │ ├── OcAppleDiskImageLibInternal.c │ └── OcAppleDiskImageLibInternal.h ├── OcAppleEventLib │ ├── AppleEventInternal.h │ ├── AppleKeyMap.c │ ├── EventQueue.c │ ├── KeyHandler.c │ ├── OcAppleEventLib.c │ ├── OcAppleEventLib.inf │ └── PointerHandler.c ├── OcAppleImageConversionLib │ ├── OcAppleImageConversionLib.c │ └── OcAppleImageConversionLib.inf ├── OcAppleImg4Lib │ ├── OcAppleImg4Lib.c │ ├── OcAppleImg4Lib.inf │ ├── libDER │ │ ├── DER_CertCrl.c │ │ ├── DER_CertCrl.h │ │ ├── DER_Decode.c │ │ ├── DER_Decode.h │ │ ├── DER_Digest.c │ │ ├── DER_Digest.h │ │ ├── DER_Encode.c │ │ ├── DER_Encode.h │ │ ├── DER_Keys.c │ │ ├── DER_Keys.h │ │ ├── asn1Types.h │ │ ├── libDER.h │ │ ├── oids.c │ │ └── oids.h │ ├── libDERImg4 │ │ ├── DER_Img4Manifest.c │ │ ├── DER_Img4Manifest.h │ │ ├── Img4oids.c │ │ ├── Img4oids.h │ │ ├── libDERImg4.h │ │ └── libDERImg4_config.h │ └── libDER_config.h ├── OcAppleKernelLib │ ├── CachelessContext.c │ ├── CachelessInternal.h │ ├── CommonPatches.c │ ├── CpuidPatches.c │ ├── KernelCollection.c │ ├── KernelReader.c │ ├── KernelVersion.c │ ├── KextPatcher.c │ ├── KxldState.c │ ├── LegacyBcopy.h │ ├── LegacyBcopy.nasm │ ├── Link.c │ ├── MkextContext.c │ ├── MkextInternal.h │ ├── OcAppleKernelLib.inf │ ├── PrelinkedContext.c │ ├── PrelinkedInternal.h │ ├── PrelinkedKext.c │ └── Vtables.c ├── OcAppleKeyMapLib │ ├── OcAppleKeyMapLib.c │ ├── OcAppleKeyMapLib.inf │ └── UpDownDetection.c ├── OcAppleKeysLib │ ├── OcAppleKeysLib.c │ └── OcAppleKeysLib.inf ├── OcAppleRamDiskLib │ ├── OcAppleRamDiskLib.c │ └── OcAppleRamDiskLib.inf ├── OcAppleSecureBootLib │ ├── OcAppleSecureBootLib.c │ └── OcAppleSecureBootLib.inf ├── OcAppleUserInterfaceThemeLib │ ├── OcAppleUserInterfaceThemeLib.c │ └── OcAppleUserInterfaceThemeLib.inf ├── OcApplicationEntryPoint │ ├── ApplicationEntryPoint.c │ ├── CanaryDummy.c │ ├── Ia32 │ │ ├── Canary.nasm │ │ └── GS.nasm │ ├── UefiApplicationEntryPoint.inf │ ├── UefiApplicationEntryPoint.uni │ └── X64 │ │ ├── Canary.nasm │ │ └── GS.nasm ├── OcAudioLib │ ├── OcAudio.c │ ├── OcAudioDump.c │ ├── OcAudioGenBeep.c │ ├── OcAudioInternal.h │ ├── OcAudioLib.c │ ├── OcAudioLib.inf │ └── OcAudioVoiceOver.c ├── OcBlitLib │ ├── BlitBufferToVideo.c │ ├── BlitInternal.h │ ├── BlitVideoToBuffer.c │ ├── OcBlitLib.c │ └── OcBlitLib.inf ├── OcBootManagementLib │ ├── AppleHibernate.c │ ├── ApplePanic.c │ ├── AppleRecovery.c │ ├── BootArguments.c │ ├── BootAudio.c │ ├── BootEntryInfo.c │ ├── BootEntryManagement.c │ ├── BootEntryProtocol.c │ ├── BootManagementInternal.h │ ├── BuiltinPicker.c │ ├── DefaultEntryChoice.c │ ├── DmgBootSupport.c │ ├── HotKeySupport.c │ ├── ImageLoader.c │ ├── OcBootManagementLib.c │ ├── OcBootManagementLib.inf │ └── PolicyManagement.c ├── OcBootServicesTableLib │ ├── OcBootServicesTableLib.c │ ├── OcBootServicesTableLib.inf │ ├── UefiBootServicesTableLib.c │ └── UefiBootServicesTableLib.inf ├── OcCompilerIntrinsicsLib │ ├── MsvcMath32.c │ ├── OcCompilerIntrinsicsLib.c │ └── OcCompilerIntrinsicsLib.inf ├── OcCompressionLib │ ├── OcCompressionLib.c │ ├── OcCompressionLib.inf │ ├── lzss │ │ ├── lzss.c │ │ └── lzss.h │ ├── lzvn │ │ ├── lzvn.c │ │ └── lzvn.h │ └── zlib │ │ ├── adler32.c │ │ ├── compress.c │ │ ├── crc32.c │ │ ├── crc32.h │ │ ├── deflate.c │ │ ├── deflate.h │ │ ├── diff │ │ ├── README.md │ │ ├── inflate.c.diff │ │ ├── zconf.h.diff │ │ ├── zutil.c.diff │ │ └── zutil.h.diff │ │ ├── infback.c │ │ ├── inffast.c │ │ ├── inffast.h │ │ ├── inffixed.h │ │ ├── inflate.c │ │ ├── inflate.h │ │ ├── inftrees.c │ │ ├── inftrees.h │ │ ├── trees.c │ │ ├── trees.h │ │ ├── uncompr.c │ │ ├── zconf.h │ │ ├── zlib.h │ │ ├── zlib_uefi.c │ │ ├── zutil.c │ │ └── zutil.h ├── OcConfigurationLib │ ├── CheckSchema.py │ ├── OcConfigurationLib.c │ └── OcConfigurationLib.inf ├── OcConsoleControlEntryModeLib │ ├── OcConsoleControlEntryModeGenericLib.inf │ ├── OcConsoleControlEntryModeLib.c │ └── OcConsoleControlEntryModeLocalLib.inf ├── OcConsoleLib │ ├── ConsoleControl.c │ ├── ConsoleFont.c │ ├── ConsoleFontLoader.c │ ├── ConsoleGop.c │ ├── ConsoleGopInternal.h │ ├── Eg2Info.c │ ├── FramebufferInfo.c │ ├── GopInfoDump.c │ ├── GopPassThrough.c │ ├── GopUtils.c │ ├── OcConsoleLib.c │ ├── OcConsoleLib.inf │ ├── OcConsoleLibInternal.h │ ├── ResolutionParsing.c │ ├── TextOutputBuiltin.c │ ├── TextOutputNull.c │ ├── TextOutputSystem.c │ └── UgaPassThrough.c ├── OcCpuLib │ ├── AppleCpuSupport.c │ ├── FrequencyDetect.c │ ├── Ia32 │ │ ├── Atomic.nasm │ │ ├── MeasureTicks.c │ │ └── Microcode.nasm │ ├── OcCpuInternals.h │ ├── OcCpuLib.c │ ├── OcCpuLib.inf │ └── X64 │ │ ├── Atomic.nasm │ │ ├── MeasureTicks.nasm │ │ └── Microcode.nasm ├── OcCryptoLib │ ├── Aes.c │ ├── BigNumLib.h │ ├── BigNumLibInternal.h │ ├── BigNumMontgomery.c │ ├── BigNumPrimitives.c │ ├── ChaCha.c │ ├── Cpu32 │ │ └── BigNumWordMul64.c │ ├── Cpu64 │ │ └── BigNumWordMul64.c │ ├── CryptoInternal.h │ ├── Md5.c │ ├── OcCryptoLib.inf │ ├── PasswordHash.c │ ├── RsaDigitalSign.c │ ├── SecureMem.c │ ├── Sha1.c │ ├── Sha2.c │ ├── Sha2Internal.h │ ├── Sha512AccelDummy.c │ └── X64 │ │ └── Sha512Avx.nasm ├── OcDataHubLib │ ├── DataHub.c │ ├── DataHub.h │ ├── OcDataHubLib.c │ └── OcDataHubLib.inf ├── OcDebugLibNull │ ├── OcDebugLibNull.c │ └── OcDebugLibNull.inf ├── OcDebugLibProtocol │ ├── DebugHelp.c │ ├── DebugPrint.c │ ├── OcDebugLibProtocol.c │ └── OcDebugLibProtocol.inf ├── OcDebugLibSerial │ ├── OcDebugLibSerial.c │ └── OcDebugLibSerial.inf ├── OcDebugLogLibOc2Clover │ ├── DebugHelp.c │ ├── DebugPrint.c │ ├── OcAppleLog.c │ ├── OcDebugLogLibOc2Clover.inf │ └── OcLog.c ├── OcDeviceMiscLib │ ├── ActivateHpetSupport.c │ ├── CpuInfoDump.c │ ├── ForgeUefi.c │ ├── HandleParsingMin.c │ ├── HandleParsingMin.h │ ├── OcDeviceMiscLib.inf │ ├── PciExtInternal.h │ ├── PciInfoDump.c │ ├── ReleaseUsbOwnership.c │ ├── ReloadOptionRoms.c │ ├── ResetAudioTrafficClass.c │ └── SetResizableBar.c ├── OcDevicePathLib │ ├── ExpandDevicePath.c │ ├── OcDevicePathLib.c │ └── OcDevicePathLib.inf ├── OcDevicePropertyLib │ ├── OcDevicePropertyLib.c │ └── OcDevicePropertyLib.inf ├── OcDeviceTreeLib │ ├── OcDeviceTreeLib.c │ └── OcDeviceTreeLib.inf ├── OcDirectResetLib │ ├── DirectReset.c │ └── OcDirectResetLib.inf ├── OcDriverConnectionLib │ ├── DriverDisconnection.c │ ├── OcDriverConnectionLib.c │ └── OcDriverConnectionLib.inf ├── OcDriverEntryPoint │ ├── CanaryDummy.c │ ├── DriverEntryPoint.c │ ├── Ia32 │ │ ├── Canary.nasm │ │ └── GS.nasm │ ├── UefiDriverEntryPoint.inf │ ├── UefiDriverEntryPoint.uni │ └── X64 │ │ ├── Canary.nasm │ │ └── GS.nasm ├── OcDxeCoreEntryPoint │ ├── CanaryDummy.c │ ├── DxeCoreEntryPoint.c │ ├── DxeCoreEntryPoint.inf │ ├── DxeCoreEntryPoint.uni │ ├── Ia32 │ │ ├── Canary.nasm │ │ └── GS.nasm │ └── X64 │ │ ├── Canary.nasm │ │ └── GS.nasm ├── OcFileLib │ ├── DiskMisc.c │ ├── FileMisc.c │ ├── FileProtocol.c │ ├── FirmwareFile.c │ ├── GetFileInfo.c │ ├── GetVolumeLabel.c │ ├── LocateFileSystem.c │ ├── OcFileLib.inf │ ├── OpenFile.c │ └── ReadFile.c ├── OcFirmwarePasswordLib │ ├── AppleFwPasswordInternal.h │ ├── OcFirmwarePasswordLib.c │ └── OcFirmwarePasswordLib.inf ├── OcFirmwareVolumeLib │ ├── FvOnFv2Thunk.c │ ├── OcFirmwareVolumeLib.c │ ├── OcFirmwareVolumeLib.inf │ └── OcFirmwareVolumeLibInternal.h ├── OcFlexArrayLib │ ├── AsciiStringBuffer.c │ ├── FlexArray.c │ ├── FlexString.c │ └── OcFlexArrayLib.inf ├── OcGuardLib │ ├── OcGuardLib.inf │ ├── Ubsan.c │ ├── Ubsan.h │ └── UbsanPrintf.c ├── OcHashServicesLib │ ├── OcHashServicesLib.c │ ├── OcHashServicesLib.inf │ └── OcHashServicesLibInternal.h ├── OcHdaDevicesLib │ ├── OcHdaDevicesInternal.h │ ├── OcHdaDevicesLib.c │ └── OcHdaDevicesLib.inf ├── OcHeciLib │ ├── OcHeciLib.c │ └── OcHeciLib.inf ├── OcHiiDatabaseLib │ ├── ConfigKeywordHandler.c │ ├── ConfigRouting.c │ ├── Database.c │ ├── Font.c │ ├── HiiDatabase.h │ ├── HiiDatabaseEntry.c │ ├── Image.c │ ├── ImageEx.c │ ├── OcHiiDatabaseLocalLib.inf │ └── String.c ├── OcInputLib │ ├── Keycode │ │ ├── AIK.c │ │ ├── AIK.h │ │ ├── AIKData.c │ │ ├── AIKData.h │ │ ├── AIKMap.c │ │ ├── AIKShim.c │ │ ├── AIKShim.h │ │ ├── AIKSource.c │ │ ├── AIKSource.h │ │ ├── AIKTarget.c │ │ ├── AIKTarget.h │ │ ├── AIKTranslate.c │ │ ├── AIKTranslate.h │ │ ├── AppleHid.txt │ │ └── README.md │ ├── OcInputLib.inf │ ├── Pointer │ │ ├── AIM.c │ │ └── AIM.h │ └── Timer │ │ └── AIT.c ├── OcLegacyThunkLib │ ├── OcLegacyThunkLib.c │ └── OcLegacyThunkLib.inf ├── OcLogAggregatorLib │ ├── OcAppleLog.c │ ├── OcLog.c │ ├── OcLogAggregatorLib.inf │ └── OcLogInternal.h ├── OcLogAggregatorLibNull │ ├── OcLogAggregatorLibNull.c │ └── OcLogAggregatorLibNull.inf ├── OcMacInfoLib │ ├── AutoGenerated.c │ ├── MacInfoInternal.h │ ├── OcMacInfoLib.c │ └── OcMacInfoLib.inf ├── OcMachoLib │ ├── CxxSymbols.c │ ├── CxxSymbolsX.h │ ├── Header.c │ ├── HeaderX.h │ ├── Macho32.c │ ├── Macho64.c │ ├── MachoFat.c │ ├── MachoX.h │ ├── OcMachoLib.inf │ ├── OcMachoLibInternal.h │ ├── Relocations.c │ ├── Symbols.c │ └── SymbolsX.h ├── OcMainLib │ ├── OcMainLib.inf │ ├── OcMainLibClover.inf │ ├── OpenCoreAcpi.c │ ├── OpenCoreDevProps.c │ ├── OpenCoreKernel.c │ ├── OpenCoreKernelPatch.c │ ├── OpenCoreMisc.c │ ├── OpenCoreNvram.c │ ├── OpenCorePlatform.c │ ├── OpenCoreUefi.c │ ├── OpenCoreUefiAudio.c │ ├── OpenCoreUefiInOut.c │ └── OpenCoreVault.c ├── OcMemoryLib │ ├── LegacyRegionLock.c │ ├── LegacyRegionUnLock.c │ ├── MemoryAlloc.c │ ├── MemoryAttributes.c │ ├── MemoryDebug.c │ ├── MemoryMap.c │ ├── OcMemoryLib.inf │ ├── UmmMalloc.c │ └── VirtualMemory.c ├── OcMiscLib │ ├── ConsoleUtils.c │ ├── DataPatcher.c │ ├── ImageRunner.c │ ├── OcMiscLib.inf │ ├── PlatformInfo.c │ └── ProtocolSupport.c ├── OcMp3Lib │ ├── OcMp3Lib.c │ ├── OcMp3Lib.inf │ └── helix │ │ ├── README.md │ │ ├── assembly.h │ │ ├── bitstream.c │ │ ├── buffers.c │ │ ├── coder.h │ │ ├── dct32.c │ │ ├── dequant.c │ │ ├── dqchan.c │ │ ├── huffman.c │ │ ├── hufftabs.c │ │ ├── imdct.c │ │ ├── mp3common.h │ │ ├── mp3compat.h │ │ ├── mp3dec.c │ │ ├── mp3dec.h │ │ ├── mp3tabs.c │ │ ├── polyphase.c │ │ ├── scalfact.c │ │ ├── statname.h │ │ ├── stproc.c │ │ ├── subband.c │ │ └── trigtabs.c ├── OcOSInfoLib │ ├── OcOSInfoLib.c │ └── OcOSInfoLib.inf ├── OcPciIoLib │ ├── OcPciIoLib.c │ ├── OcPciIoLib.inf │ ├── OcPciIoU.c │ └── OcPciIoU.h ├── OcPeCoffExtLib │ ├── BasePeCoffLib2Internals.h │ ├── OcPeCoffExtInternal.h │ ├── OcPeCoffExtLib.c │ ├── OcPeCoffExtLib.inf │ └── OcPeCoffFixupInit.c ├── OcPeiCoreEntryPoint │ ├── CanaryDummy.c │ ├── Ia32 │ │ ├── Canary.nasm │ │ └── GS.nasm │ ├── PeiCoreEntryPoint.c │ ├── PeiCoreEntryPoint.inf │ ├── PeiCoreEntryPoint.uni │ └── X64 │ │ ├── Canary.nasm │ │ └── GS.nasm ├── OcPeimEntryPoint │ ├── CanaryDummy.c │ ├── Ia32 │ │ ├── Canary.nasm │ │ └── GS.nasm │ ├── PeimEntryPoint.c │ ├── PeimEntryPoint.inf │ ├── PeimEntryPoint.uni │ └── X64 │ │ ├── Canary.nasm │ │ └── GS.nasm ├── OcPngLib │ ├── OcPng.c │ ├── OcPngLib.inf │ ├── lodepng.c │ └── lodepng.h ├── OcResetSystemLib │ ├── OcResetSystemLib.c │ └── OcResetSystemLib.inf ├── OcRngLib │ ├── Ia32 │ │ └── RngDelay.nasm │ ├── OcRngInternals.h │ ├── OcRngLib.c │ ├── OcRngLib.inf │ └── X64 │ │ └── RngDelay.nasm ├── OcRtcLib │ ├── AppleRtcRam.c │ ├── OcRtcLib.c │ ├── OcRtcLib.inf │ └── OcRtcLibInternal.h ├── OcSerializeLib │ ├── OcSerializeLib.c │ └── OcSerializeLib.inf ├── OcSmbiosLib │ ├── DebugSmbios.c │ ├── DebugSmbios.h │ ├── OcSmbiosLib.inf │ ├── SmbiosDump.c │ ├── SmbiosInternal.c │ ├── SmbiosInternal.h │ └── SmbiosPatch.c ├── OcSmcLib │ ├── OcSmcLib.c │ ├── OcSmcLib.inf │ └── OcSmcLibInternal.h ├── OcStorageLib │ ├── OcStorageLib.c │ └── OcStorageLib.inf ├── OcStringLib │ ├── OcAsciiLib.c │ ├── OcStringLib.inf │ └── OcUnicodeLib.c ├── OcTemplateLib │ ├── OcTemplateLib.c │ └── OcTemplateLib.inf ├── OcTimerLib │ ├── OcTimerLib.c │ └── OcTimerLib.inf ├── OcTypingLib │ ├── OcTypingLib.c │ └── OcTypingLib.inf ├── OcUnicodeCollationEngLib │ ├── OcUnicodeCollationEngCommon.c │ ├── OcUnicodeCollationEngGeneric.c │ ├── OcUnicodeCollationEngGenericLib.inf │ ├── OcUnicodeCollationEngInternal.h │ ├── OcUnicodeCollationEngLocal.c │ └── OcUnicodeCollationEngLocalLib.inf ├── OcVariableLib │ ├── LegacyNvramSupport.c │ ├── LegacyNvramWrapper.c │ ├── OcVariableLib.c │ ├── OcVariableLib.inf │ ├── Shim.c │ ├── Sip.c │ └── VariableManagement.c ├── OcVariableRuntimeLib │ ├── OcVariableRuntimeLib.c │ └── OcVariableRuntimeLib.inf ├── OcVirtualFsLib │ ├── OcVirtualFsLib.inf │ ├── VirtualDir.c │ ├── VirtualFile.c │ ├── VirtualFs.c │ ├── VirtualFsInternal.h │ └── VirtualVolume.c ├── OcWaveLib │ ├── OcWaveLib.c │ └── OcWaveLib.inf └── OcXmlLib │ ├── OcXmlLib.c │ └── OcXmlLib.inf ├── OpenCoreFromClover.h ├── OpenCorePkg.dec ├── OpenCorePkg.dsc ├── OpenCorePkg.fdf ├── OpenCorePkg.xcodeproj └── project.pbxproj ├── OpenDuetPkg.dec ├── OpenDuetPkg.dsc ├── OpenDuetPkg.fdf ├── OpenDuetPkgDefines.fdf.inc ├── Patches ├── 0001-MdeModulePkg-SataControllerDxe-Add-support-for-drive.patch ├── 0002-MdeModulePkg-AtaAtapiPassThru-Add-support-for-drives.patch ├── 0003-MdeModulePkg-AtaAtapiPassThru-Reduce-timeout.patch └── 0005-ShellPkg-Devices-shell-command-support-misaligned-de.patch ├── Platform ├── CrScreenshotDxe │ ├── CrScreenshotDxe.c │ ├── CrScreenshotDxe.inf │ ├── LICENSE │ └── README.md ├── OpenCanopy │ ├── BitmapFont.c │ ├── Blending.c │ ├── Blending.h │ ├── BmfFile.h │ ├── BmfLib.h │ ├── GuiApp.c │ ├── GuiApp.h │ ├── GuiIo.h │ ├── Images.c │ ├── Input │ │ ├── InputSimAbsPtr.c │ │ └── InputSimTextIn.c │ ├── OcBootstrap.c │ ├── OpenCanopy.c │ ├── OpenCanopy.h │ ├── OpenCanopy.inf │ ├── Output │ │ └── OutputStGop.c │ └── Views │ │ ├── BootPicker.c │ │ ├── BootPicker.h │ │ ├── Common.c │ │ ├── Common.h │ │ └── Password.c ├── OpenLegacyBoot │ ├── BiosDisk.c │ ├── LegacyBootInternal.h │ ├── LegacyBootSupport.c │ ├── OpenLegacyBoot.c │ └── OpenLegacyBoot.inf ├── OpenLinuxBoot │ ├── Autodetect.c │ ├── GrubCfg.c │ ├── GrubEnv.c │ ├── GrubVars.c │ ├── LinuxBootInternal.h │ ├── LoaderEntry.c │ ├── OpenLinuxBoot.c │ ├── OpenLinuxBoot.inf │ └── VersionCompare.c ├── OpenNtfsDxe │ ├── Compression.c │ ├── Data.c │ ├── Disc.c │ ├── Driver.h │ ├── Helper.h │ ├── Index.c │ ├── Info.c │ ├── NTFS.c │ ├── NTFS.h │ ├── Open.c │ ├── OpenNtfsDxe.inf │ └── Position.c ├── OpenPartitionDxe │ ├── Apm.c │ ├── ComponentName.c │ ├── ElTorito.c │ ├── Gpt.c │ ├── Mbr.c │ ├── Partition.c │ ├── Partition.h │ ├── PartitionDxe.inf │ ├── PartitionDxe.uni │ ├── PartitionDxeExtra.uni │ └── Udf.c ├── OpenRuntime │ ├── OpenRuntime.c │ ├── OpenRuntime.inf │ ├── OpenRuntimePrivate.h │ └── UefiRuntimeServices.c ├── OpenUsbKbDxe │ ├── AppleKey.c │ ├── AppleKey.h │ ├── ComponentName.c │ ├── EfiKey.c │ ├── EfiKey.h │ ├── KeyBoard.c │ ├── KeyBoard.h │ ├── UsbKbDxe.inf │ ├── UsbKbDxe.uni │ └── UsbKbDxeExtra.uni ├── OpenVariableRuntimeDxe │ ├── Measurement.c │ ├── PrivilegePolymorphic.h │ ├── Reclaim.c │ ├── SpeculationBarrierDxe.c │ ├── TcgMorLockDxe.c │ ├── VarCheck.c │ ├── Variable.c │ ├── Variable.h │ ├── VariableDxe.c │ ├── VariableExLib.c │ ├── VariableLockRequestToLock.c │ ├── VariableNonVolatile.c │ ├── VariableNonVolatile.h │ ├── VariableParsing.c │ ├── VariableParsing.h │ ├── VariableRuntimeCache.c │ ├── VariableRuntimeCache.h │ └── VariableRuntimeDxe.inf ├── ResetNvramEntry │ ├── ResetNvramEntry.c │ └── ResetNvramEntry.inf └── ToggleSipEntry │ ├── ToggleSipEntry.c │ └── ToggleSipEntry.inf ├── README.md ├── Staging ├── AudioDxe │ ├── AudioDecode.c │ ├── AudioDxe.c │ ├── AudioDxe.h │ ├── AudioDxe.inf │ ├── HdaCodec │ │ ├── HdaCodec.c │ │ ├── HdaCodec.h │ │ ├── HdaCodecAudioIo.c │ │ ├── HdaCodecComponentName.c │ │ ├── HdaCodecComponentName.h │ │ └── HdaCodecInfo.c │ └── HdaController │ │ ├── HdaController.c │ │ ├── HdaController.h │ │ ├── HdaControllerComponentName.c │ │ ├── HdaControllerComponentName.h │ │ ├── HdaControllerHdaIo.c │ │ ├── HdaControllerInfo.c │ │ └── HdaControllerMem.c ├── EnableGop │ ├── EnableGop.c │ ├── EnableGop.inf │ ├── EnableGopDirect.inf │ ├── README.md │ ├── Release │ │ ├── EnableGopDirect_1.4.efi │ │ ├── EnableGopDirect_1.4.ffs │ │ ├── EnableGop_1.4.efi │ │ └── EnableGop_1.4.ffs │ ├── UEFITool_Inserted_Screenshot.png │ └── vBiosInsert.sh ├── OpenHfsPlus │ ├── OpenHfsPlus.inf │ ├── fsw_base.h │ ├── fsw_core.c │ ├── fsw_core.h │ ├── fsw_efi.c │ ├── fsw_efi.h │ ├── fsw_efi_base.h │ ├── fsw_efi_edk2_base.h │ ├── fsw_efi_lib.c │ ├── fsw_hfsplus.c │ ├── fsw_hfsplus.h │ ├── fsw_lib.c │ └── fsw_strfunc.h └── README.md ├── Tests ├── AcpiTest │ ├── AcpiTest.c │ ├── AcpiTest.inf │ └── AcpiTestApp.inf ├── CryptoTest │ ├── CryptoSamples.h │ ├── CryptoTest.c │ ├── CryptoTest.inf │ └── CryptoTestApp.inf ├── DataHubTest │ ├── DataHubTest.c │ ├── DataHubTest.inf │ └── DataHubTestApp.inf ├── PropertyTest │ ├── PropertyTest.c │ ├── PropertyTest.inf │ └── PropertyTestApp.inf └── SmbiosTest │ ├── SmbiosTest.c │ ├── SmbiosTest.inf │ └── SmbiosTestApp.inf ├── Uncrustify.yml ├── User ├── Include │ ├── UserBootServices.h │ ├── UserFile.h │ ├── UserGlobalVar.h │ ├── UserMemory.h │ ├── UserPcd.h │ ├── UserPseudoRandom.h │ └── UserUnicodeCollation.h ├── Library │ ├── UserBaseMemoryLib.c │ ├── UserBootServices.c │ ├── UserFile.c │ ├── UserGlobalVar.c │ ├── UserMath.c │ ├── UserMisc.c │ ├── UserOcDummy.c │ ├── UserPcd.c │ ├── UserPseudoRandom.c │ └── UserUnicodeCollation.c ├── Makefile └── README.md ├── Utilities ├── ACPIe │ ├── ACPIe.c │ ├── Makefile │ ├── Tests │ │ ├── Correct │ │ │ ├── test10_output.txt │ │ │ ├── test11_output.txt │ │ │ ├── test12_output.txt │ │ │ ├── test13_output.txt │ │ │ ├── test14_output.txt │ │ │ ├── test15_output.txt │ │ │ ├── test16_output.txt │ │ │ ├── test17_output.txt │ │ │ ├── test18_output.txt │ │ │ ├── test19_output.txt │ │ │ ├── test1_output.txt │ │ │ ├── test20_output.txt │ │ │ ├── test21_output.txt │ │ │ ├── test2_output.txt │ │ │ ├── test3_output.txt │ │ │ ├── test4_output.txt │ │ │ ├── test5_output.txt │ │ │ ├── test6_output.txt │ │ │ ├── test7_output.txt │ │ │ ├── test8_output.txt │ │ │ └── test9_output.txt │ │ └── Input │ │ │ ├── DSDT-XOSI.bin │ │ │ ├── DSDT-legacy.bin │ │ │ ├── DSDT.bin │ │ │ ├── RSDT.bin │ │ │ ├── SSDT-0.bin │ │ │ ├── SSDT-1.bin │ │ │ ├── SSDT-x4_0.bin │ │ │ ├── broken3.bin │ │ │ ├── corrupt1.bin │ │ │ └── nesting.bin │ └── testsuite.sh ├── AppleEfiSignTool │ ├── AppleEfiSignTool.c │ ├── Makefile │ ├── README.md │ └── Samples │ │ ├── apfs.efi │ │ ├── apfs_10.15.efi │ │ ├── apfs_aligned_10.15.efi │ │ ├── boot_10.10.5.efi │ │ ├── boot_10.11.6.efi │ │ ├── boot_10.12.6.efi │ │ ├── boot_10.13.6.efi │ │ ├── boot_10.14.0.18A371a.efi │ │ ├── boot_10.14.0.18A389.efi │ │ ├── boot_10.15.7.19H15.efi │ │ ├── boot_10.4.11.32.efi │ │ ├── boot_10.4.11.64.efi │ │ ├── boot_10.4.11.efi │ │ ├── boot_10.4.7.efi │ │ ├── boot_10.4.8.efi │ │ ├── boot_10.4.9.efi │ │ ├── boot_10.5.6.efi │ │ ├── boot_10.5.8.efi │ │ ├── boot_10.6.8.efi │ │ ├── boot_10.7.5.efi │ │ ├── boot_10.8.5.efi │ │ ├── boot_10.9.5.efi │ │ └── boot_11.0.1.20B29.efi ├── AppleKeyboardLayouts │ ├── AppleKeyboardLayouts.bt │ └── AppleKeyboardLayouts.txt ├── BaseTools │ ├── EfiLdrImage.c │ ├── GenPage.c │ ├── Makefile │ └── VirtualMemory.h ├── CreateVault │ ├── RsaTool │ ├── create_vault.sh │ └── sign.command ├── EfiResTool │ ├── EfiResTool.c │ ├── Makefile │ └── README.md ├── FindSerialPort │ ├── FindSerialPort.command │ └── README.md ├── LegacyBoot │ ├── BootInstallBase.sh │ ├── BootInstall_IA32.tool │ ├── BootInstall_IA32_BlockIO.tool │ ├── BootInstall_X64.tool │ ├── BootInstall_X64_BlockIO.tool │ ├── QemuBuild.command │ ├── README.md │ ├── boot0 │ └── boot1f32 ├── LogoutHook │ ├── Launchd.command │ ├── Launchd.command.plist │ ├── Makefile │ ├── README.md │ └── nvramdump.c ├── MacEfiUnpack │ └── MacEfiUnpack.py ├── RsaTool │ ├── LICENSE │ ├── Makefile │ ├── RsaTool.c │ ├── build_libressl.sh │ └── openssl_compat.h ├── ShimUtils │ ├── README.md │ ├── sbat-info.tool │ ├── shim-make.tool │ ├── shim-to-cert.tool │ └── unsign-efi-sig-list.tool ├── TestBmf │ ├── Bmf.c │ ├── BmfDummy.c │ └── Makefile ├── TestCpuFrequency │ ├── CpuFrequency.c │ └── Makefile ├── TestDiskImage │ ├── DiskImage.c │ ├── FileDummy.c │ └── Makefile ├── TestExt4Dxe │ ├── Makefile │ └── TestExt4Dxe.c ├── TestFatDxe │ ├── Makefile │ └── TestFatDxe.c ├── TestHelloWorld │ ├── HelloWorld.c │ └── Makefile ├── TestImg4 │ ├── Img4.c │ └── Makefile ├── TestKextInject │ ├── KextInject.c │ ├── Makefile │ └── check_injection.sh ├── TestMacho │ ├── Macho.c │ ├── Makefile │ └── kernel ├── TestMp3 │ ├── Makefile │ └── Mp3.c ├── TestNtfsDxe │ ├── Makefile │ └── TestNtfsDxe.c ├── TestPeCoff │ ├── Makefile │ └── PeCoff.c ├── TestProcessKernel │ ├── Makefile │ ├── ProcessKernel.c │ └── ProcessKernelDummy.c ├── TestRsaPreprocess │ ├── Makefile │ └── RsaPreprocess.c ├── TestSmbios │ ├── Makefile │ ├── Smbios.bin │ └── Smbios.c ├── WinNvram │ ├── Makefile │ ├── nvram.c │ └── nvram.exe ├── acdtinfo │ ├── Makefile │ └── acdtinfo.c ├── disklabel │ ├── Makefile │ └── disklabel.c ├── ext4read │ ├── Makefile │ └── ext4read.c ├── icnspack │ ├── Makefile │ └── icnspack.c ├── kpdescribe │ └── kpdescribe.sh ├── macrecovery │ ├── README.md │ ├── boards.json │ ├── build-image.sh │ ├── macrecovery.py │ └── recovery_urls.txt ├── macserial │ ├── FORMAT.md │ ├── Makefile │ ├── README.md │ ├── cccdump.py │ ├── macserial.c │ ├── macserial.h │ ├── modelinfo.h │ └── modelinfo_autogen.h ├── ocpasswordgen │ ├── Makefile │ └── ocpasswordgen.c └── ocvalidate │ ├── KextInfo.c │ ├── KextInfo.h │ ├── Makefile │ ├── NvramKeyInfo.c │ ├── NvramKeyInfo.h │ ├── OcValidateLib.c │ ├── OcValidateLib.h │ ├── README.md │ ├── ValidateAcpi.c │ ├── ValidateBooter.c │ ├── ValidateDeviceProperties.c │ ├── ValidateKernel.c │ ├── ValidateMisc.c │ ├── ValidateNvram.c │ ├── ValidatePlatformInfo.c │ ├── ValidateUefi.c │ ├── ocvalidate.c │ └── ocvalidate.h ├── build_duet.tool ├── build_oc.tool ├── docker-compose.yaml └── xcbuild.tool /.devcontainer/devcontainer.json: -------------------------------------------------------------------------------- 1 | { 2 | "name": "oc", 3 | "build": { 4 | "dockerfile": "../Dockerfiles/oc-dev/Dockerfile", 5 | "context": "../Dockerfiles/oc-dev/", 6 | "target": "oc-dev-docs", 7 | "args": { 8 | "OC_DEV_DOCS_BASE": "oc-dev-edk2" 9 | } 10 | }, 11 | "workspaceMount": "source=${localWorkspaceFolder},target=/com.docker.devenvironments.code,type=bind,consistency=cached", 12 | "workspaceFolder": "/com.docker.devenvironments.code" 13 | } 14 | -------------------------------------------------------------------------------- /.editorconfig: -------------------------------------------------------------------------------- 1 | root = true 2 | 3 | [*] 4 | indent_size = 2 5 | charset = utf-8 6 | trim_trailing_whitespace = true 7 | insert_final_newline = true 8 | -------------------------------------------------------------------------------- /.gitattributes: -------------------------------------------------------------------------------- 1 | *.json -diff 2 | -------------------------------------------------------------------------------- /.github/workflows/uncrustify.yml: -------------------------------------------------------------------------------- 1 | name: Uncrustify 2 | 3 | on: 4 | push: 5 | pull_request: 6 | workflow_dispatch: 7 | release: 8 | types: [published] 9 | 10 | env: 11 | PROJECT_TYPE: UEFI 12 | 13 | jobs: 14 | analyze-uncrustify: 15 | name: Check Codestyle 16 | runs-on: ubuntu-22.04 17 | steps: 18 | - uses: actions/checkout@v3 19 | 20 | - name: Install Dependencies 21 | run: | 22 | sudo apt-get update 23 | sudo apt-get install curl git 24 | sudo python3 -m pip install gitpython requests pyyaml 25 | 26 | - name: CI Bootstrap 27 | run: | 28 | src=$(/usr/bin/curl -LfsS https://raw.githubusercontent.com/acidanthera/ocbuild/master/ci-bootstrap.sh) && eval "$src" || exit 1 29 | 30 | - name: Run Uncrustify 31 | run: | 32 | python3 -c "$(/usr/bin/curl https://raw.githubusercontent.com/acidanthera/ocbuild/master/uncstrap/uncstrap.py)" ./Uncrustify.yml || exit 1 33 | 34 | - name: Upload to Artifacts 35 | uses: actions/upload-artifact@v3 36 | if: failure() 37 | with: 38 | name: Uncrustify Artifacts 39 | path: ./uncrustify.diff 40 | -------------------------------------------------------------------------------- /.shellcheckrc: -------------------------------------------------------------------------------- 1 | # Ignore sourced files if any 2 | disable=SC1091 3 | -------------------------------------------------------------------------------- /AppleModels/Products.zjson: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CloverHackyColor/OpenCorePkg/e21feb5907444256f4ff4c9b2be33be59e5a13cd/AppleModels/Products.zjson -------------------------------------------------------------------------------- /Application/CleanNvram/CleanNvram.c: -------------------------------------------------------------------------------- 1 | /** @file 2 | Clean several important nvram variables to recover from issues. 3 | 4 | Copyright (c) 2018, vit9696. All rights reserved.
5 | This program and the accompanying materials 6 | are licensed and made available under the terms and conditions of the BSD License 7 | which accompanies this distribution. The full text of the license may be found at 8 | http://opensource.org/licenses/bsd-license.php 9 | 10 | THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS, 11 | WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED. 12 | 13 | **/ 14 | 15 | #include 16 | #include 17 | #include 18 | #include 19 | #include 20 | #include 21 | 22 | EFI_STATUS 23 | EFIAPI 24 | UefiMain ( 25 | IN EFI_HANDLE ImageHandle, 26 | IN EFI_SYSTEM_TABLE *SystemTable 27 | ) 28 | { 29 | Print (L"NVRAM cleanup...\n"); 30 | 31 | OcDeleteVariables (FALSE); 32 | 33 | Print (L"NVRAM cleanup completed, please reboot!\n"); 34 | 35 | gBS->Stall (SECONDS_TO_MICROSECONDS (3)); 36 | 37 | return EFI_SUCCESS; 38 | } 39 | -------------------------------------------------------------------------------- /Application/CsrUtil/CsrUtil.inf: -------------------------------------------------------------------------------- 1 | ## @file 2 | # Basic reimplementation of SIP aspects of csrutil. 3 | # 4 | # Copyright (C) 2021, Mike Beaton. All rights reserved.
5 | # SPDX-License-Identifier: BSD-3-Clause 6 | ## 7 | 8 | 9 | [Defines] 10 | INF_VERSION = 0x00010005 11 | BASE_NAME = CsrUtil 12 | FILE_GUID = 6760D9B7-C556-4C3D-B599-B0444A469BC3 13 | MODULE_TYPE = UEFI_APPLICATION 14 | VERSION_STRING = 1.0 15 | ENTRY_POINT = UefiMain 16 | 17 | # 18 | # This flag specifies whether HII resource section is generated into PE image. 19 | # 20 | UEFI_HII_RESOURCE_SECTION = TRUE 21 | 22 | # 23 | # The following information is for reference only and not required by the build tools. 24 | # 25 | # VALID_ARCHITECTURES = IA32 X64 IPF EBC 26 | # 27 | 28 | [Sources] 29 | CsrUtil.c 30 | 31 | [Packages] 32 | MdePkg/MdePkg.dec 33 | MdeModulePkg/MdeModulePkg.dec 34 | OpenCorePkg/OpenCorePkg.dec 35 | 36 | [LibraryClasses] 37 | OcMiscLib 38 | OcStringLib 39 | OcVariableLib 40 | UefiBootServicesTableLib 41 | UefiApplicationEntryPoint 42 | -------------------------------------------------------------------------------- /Application/FontTester/FontTester.inf: -------------------------------------------------------------------------------- 1 | ## @file 2 | # Test implemented font pages. 3 | # 4 | # Copyright (C) 2023, Mike Beaton. All rights reserved.
5 | # SPDX-License-Identifier: BSD-3-Clause 6 | ## 7 | 8 | 9 | [Defines] 10 | INF_VERSION = 0x00010005 11 | BASE_NAME = FontTester 12 | FILE_GUID = 17B6BF62-9513-4FAB-88A0-B8936D59C152 13 | MODULE_TYPE = UEFI_APPLICATION 14 | VERSION_STRING = 1.0 15 | ENTRY_POINT = UefiMain 16 | 17 | # 18 | # This flag specifies whether HII resource section is generated into PE image. 19 | # 20 | UEFI_HII_RESOURCE_SECTION = TRUE 21 | 22 | # 23 | # The following information is for reference only and not required by the build tools. 24 | # 25 | # VALID_ARCHITECTURES = IA32 X64 IPF EBC 26 | # 27 | 28 | [Sources] 29 | FontTester.c 30 | 31 | [Packages] 32 | MdePkg/MdePkg.dec 33 | OpenCorePkg/OpenCorePkg.dec 34 | 35 | [LibraryClasses] 36 | OcConsoleControlEntryModeGenericLib 37 | OcMiscLib 38 | UefiApplicationEntryPoint 39 | UefiBootServicesTableLib 40 | UefiLib 41 | -------------------------------------------------------------------------------- /Application/GopStop/Examples/Step10.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CloverHackyColor/OpenCorePkg/e21feb5907444256f4ff4c9b2be33be59e5a13cd/Application/GopStop/Examples/Step10.png -------------------------------------------------------------------------------- /Application/GopStop/Examples/Step3.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CloverHackyColor/OpenCorePkg/e21feb5907444256f4ff4c9b2be33be59e5a13cd/Application/GopStop/Examples/Step3.png -------------------------------------------------------------------------------- /Application/PavpProvision/PavpProvisionData.c: -------------------------------------------------------------------------------- 1 | /** @file 2 | Provision EPID data. 3 | 4 | Copyright (c) 2019, vit9696. All rights reserved.
5 | This program and the accompanying materials 6 | are licensed and made available under the terms and conditions of the BSD License 7 | which accompanies this distribution. The full text of the license may be found at 8 | http://opensource.org/licenses/bsd-license.php 9 | 10 | THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS, 11 | WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED. 12 | 13 | **/ 14 | 15 | // 16 | // This needs to be dumped from some firmware. 17 | // 18 | 19 | UINT8 gDefaultAppleEpidCertificate[] = { 20 | 0x00 21 | }; 22 | 23 | UINTN gDefaultAppleEpidCertificateSize = sizeof (gDefaultAppleEpidCertificate); 24 | 25 | UINT8 gDefaultAppleGroupPublicKeys[] = { 26 | 0x00 27 | }; 28 | 29 | UINTN gDefaultAppleGroupPublicKeysSize = sizeof (gDefaultAppleGroupPublicKeys); 30 | -------------------------------------------------------------------------------- /Application/TpmInfo/TpmInfo.inf: -------------------------------------------------------------------------------- 1 | ## @file 2 | # Read Intel PTT TPM information. 3 | # 4 | # Copyright (c) 2021, vit9696. All rights reserved.
5 | # SPDX-License-Identifier: BSD-3-Clause 6 | ## 7 | 8 | 9 | [Defines] 10 | INF_VERSION = 0x00010005 11 | BASE_NAME = TpmInfo 12 | FILE_GUID = 11618E79-0B23-4BEF-9E45-6A266B2A3536 13 | MODULE_TYPE = UEFI_APPLICATION 14 | VERSION_STRING = 1.0 15 | ENTRY_POINT = UefiMain 16 | 17 | # 18 | # This flag specifies whether HII resource section is generated into PE image. 19 | # 20 | UEFI_HII_RESOURCE_SECTION = TRUE 21 | 22 | # 23 | # The following information is for reference only and not required by the build tools. 24 | # 25 | # VALID_ARCHITECTURES = IA32 X64 IPF EBC 26 | # 27 | 28 | [Sources] 29 | TpmInfo.c 30 | 31 | [Packages] 32 | MdePkg/MdePkg.dec 33 | MdeModulePkg/MdeModulePkg.dec 34 | OpenCorePkg/OpenCorePkg.dec 35 | 36 | [LibraryClasses] 37 | BaseLib 38 | BaseMemoryLib 39 | DebugLib 40 | IoLib 41 | MemoryAllocationLib 42 | OcConsoleControlEntryModeGenericLib 43 | OcHeciLib 44 | PrintLib 45 | TimerLib 46 | UefiLib 47 | UefiBootServicesTableLib 48 | UefiApplicationEntryPoint 49 | -------------------------------------------------------------------------------- /Debug/GdbSyms/Bin/Ia32_GCC5/GdbSyms.debug: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CloverHackyColor/OpenCorePkg/e21feb5907444256f4ff4c9b2be33be59e5a13cd/Debug/GdbSyms/Bin/Ia32_GCC5/GdbSyms.debug -------------------------------------------------------------------------------- /Debug/GdbSyms/Bin/Ia32_XCODE5/GdbSyms.dll: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CloverHackyColor/OpenCorePkg/e21feb5907444256f4ff4c9b2be33be59e5a13cd/Debug/GdbSyms/Bin/Ia32_XCODE5/GdbSyms.dll -------------------------------------------------------------------------------- /Debug/GdbSyms/Bin/X64_CLANGDWARF/GdbSyms.debug: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CloverHackyColor/OpenCorePkg/e21feb5907444256f4ff4c9b2be33be59e5a13cd/Debug/GdbSyms/Bin/X64_CLANGDWARF/GdbSyms.debug -------------------------------------------------------------------------------- /Debug/GdbSyms/Bin/X64_CLANGPDB/GdbSyms.dll: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CloverHackyColor/OpenCorePkg/e21feb5907444256f4ff4c9b2be33be59e5a13cd/Debug/GdbSyms/Bin/X64_CLANGPDB/GdbSyms.dll -------------------------------------------------------------------------------- /Debug/GdbSyms/Bin/X64_CLANGPDB/GdbSyms.pdb: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CloverHackyColor/OpenCorePkg/e21feb5907444256f4ff4c9b2be33be59e5a13cd/Debug/GdbSyms/Bin/X64_CLANGPDB/GdbSyms.pdb -------------------------------------------------------------------------------- /Debug/GdbSyms/Bin/X64_GCC5/GdbSyms.debug: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CloverHackyColor/OpenCorePkg/e21feb5907444256f4ff4c9b2be33be59e5a13cd/Debug/GdbSyms/Bin/X64_GCC5/GdbSyms.debug -------------------------------------------------------------------------------- /Debug/GdbSyms/Bin/X64_XCODE5/GdbSyms.dll: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CloverHackyColor/OpenCorePkg/e21feb5907444256f4ff4c9b2be33be59e5a13cd/Debug/GdbSyms/Bin/X64_XCODE5/GdbSyms.dll -------------------------------------------------------------------------------- /Docs/AcpiSamples/Source/SSDT-ALS0.dsl: -------------------------------------------------------------------------------- 1 | /* 2 | * Starting with macOS 10.15 Ambient Light Sensor presence is required for backlight functioning. 3 | * Here we create an Ambient Light Sensor ACPI Device, which can be used by SMCLightSensor kext 4 | * to report either dummy (when no device is present) or valid values through SMC interface. 5 | */ 6 | DefinitionBlock ("", "SSDT", 2, "ACDT", "ALS0", 0x00000000) 7 | { 8 | Scope (_SB) 9 | { 10 | Device (ALS0) 11 | { 12 | Name (_HID, "ACPI0008" /* Ambient Light Sensor Device */) // _HID: Hardware ID 13 | Name (_CID, "smc-als") // _CID: Compatible ID 14 | Name (_ALI, 0x012C) // _ALI: Ambient Light Illuminance 15 | Name (_ALR, Package (0x01) // _ALR: Ambient Light Response 16 | { 17 | Package (0x02) 18 | { 19 | 0x64, 20 | 0x012C 21 | } 22 | }) 23 | Method (_STA, 0, NotSerialized) // _STA: Status 24 | { 25 | If (_OSI ("Darwin")) 26 | { 27 | Return (0x0F) 28 | } 29 | Else 30 | { 31 | Return (Zero) 32 | } 33 | } 34 | } 35 | } 36 | } 37 | -------------------------------------------------------------------------------- /Docs/AcpiSamples/Source/SSDT-AWAC-DISABLE.dsl: -------------------------------------------------------------------------------- 1 | /* 2 | * For 300-series only. If you can't force enable Legacy RTC in BIOS GUI. 3 | * macOS does yet not support AWAC, so we have to force enable RTC. Do not use RTC ACPI patch. 4 | * 5 | * The Time and Alarm device provides an alternative to the real time clock (RTC), which is defined as a fixed feature hardware device. 6 | * The wake timers allow the system to transition from the S3 (or optionally S4/S5) state to S0 state after a time period elapses. 7 | * In comparison with the Real Time Clock (RTC) Alarm, the Time and Alarm device provides a larger scale of flexibility in the operation of the wake timers, 8 | * and allows the implementation of the time source to be abstracted from the OSPM. 9 | */ 10 | 11 | DefinitionBlock ("", "SSDT", 2, "ACDT", "NOAWAC", 0x00000000) 12 | { 13 | External (STAS, IntObj) 14 | 15 | Scope (\) 16 | { 17 | Method (_INI, 0, NotSerialized) // _INI: Initialize 18 | { 19 | If (_OSI ("Darwin")) 20 | { 21 | STAS = One 22 | } 23 | } 24 | } 25 | } 26 | -------------------------------------------------------------------------------- /Docs/AcpiSamples/Source/SSDT-HV-PLUG.dsl: -------------------------------------------------------------------------------- 1 | /* 2 | * Hyper-V CPU plugin-type SSDT to enable VMPlatformPlugin on Big Sur and newer. 3 | * 4 | * This SSDT must be loaded after SSDT-HV-DEV.dsl 5 | */ 6 | 7 | DefinitionBlock ("", "SSDT", 2, "ACDT", "HVPLUG", 0x00000000) 8 | { 9 | External (\_SB.P001, ProcessorObj) 10 | 11 | Scope (\_SB.P001) 12 | { 13 | If (_OSI ("Darwin")) 14 | { 15 | Method (_DSM, 4, NotSerialized) 16 | { 17 | If (LEqual (Arg2, Zero)) 18 | { 19 | Return (Buffer () { 0x03 }) 20 | } 21 | 22 | Return (Package () 23 | { 24 | "plugin-type", 25 | 0x02 26 | }) 27 | } 28 | } 29 | } 30 | } 31 | -------------------------------------------------------------------------------- /Docs/AcpiSamples/Source/SSDT-IMEI.dsl: -------------------------------------------------------------------------------- 1 | /* 2 | * Only necessary when no IMEI device (with any name) is present in the DSDT and a custom device-id 3 | * is needed to be set via DeviceProperties (some Sandy Bridge or Ivy Bridge configurations). 4 | */ 5 | DefinitionBlock ("", "SSDT", 2, "ACDT", "IMEI", 0x00000000) 6 | { 7 | External (_SB_.PCI0, DeviceObj) 8 | 9 | Scope (_SB.PCI0) 10 | { 11 | Device (IMEI) 12 | { 13 | Name (_ADR, 0x00160000) // _ADR: Address 14 | Method (_STA, 0, NotSerialized) // _STA: Status 15 | { 16 | If (_OSI ("Darwin")) 17 | { 18 | Return (0x0F) 19 | } 20 | Else 21 | { 22 | Return (Zero) 23 | } 24 | } 25 | } 26 | } 27 | } 28 | 29 | -------------------------------------------------------------------------------- /Docs/AcpiSamples/Source/SSDT-RTC0.dsl: -------------------------------------------------------------------------------- 1 | /* 2 | * For 300-series only and occasions where SSDT-AWAC is not applicable, 3 | * which requires variable STAS to be present. 4 | * 5 | * On some boards RTC device is disabled by returning 0 from _STA status method and 6 | * to enable it 0xF will be returned as expected by macOS. 7 | */ 8 | 9 | DefinitionBlock ("", "SSDT", 2, "ACDT", "RTC0", 0x00000000) 10 | { 11 | External (_SB_.PCI0.LPCB, DeviceObj) // (from opcode) 12 | 13 | Scope (_SB.PCI0.LPCB) 14 | { 15 | Device (RTC0) 16 | { 17 | Name (_HID, EisaId ("PNP0B00")) // _HID: Hardware ID 18 | Name (_CRS, ResourceTemplate () // _CRS: Current Resource Settings 19 | { 20 | IO (Decode16, 21 | 0x0070, // Range Minimum 22 | 0x0070, // Range Maximum 23 | 0x01, // Alignment 24 | 0x08, // Length 25 | ) 26 | IRQNoFlags () 27 | {8} 28 | }) 29 | Method (_STA, 0, NotSerialized) // _STA: Status 30 | { 31 | If (_OSI ("Darwin")) { 32 | Return (0x0F) 33 | } Else { 34 | Return (0); 35 | } 36 | } 37 | } 38 | } 39 | } 40 | -------------------------------------------------------------------------------- /Docs/AcpiSamples/Source/SSDT-UNC.dsl: -------------------------------------------------------------------------------- 1 | /* 2 | * Discovered on X99-series. 3 | * These platforms have uncore PCI bridges for 4 CPU sockets 4 | * present in ACPI despite having none physically. 5 | * 6 | * Under normal conditions these are disabled depending on 7 | * CPU presence in the socket via Processor Bit Mask (PRBM), 8 | * but on X99 this code is unused or broken as such bridges 9 | * simply do not exist. We fix that by writing 0 to PRBM. 10 | * 11 | * Doing so is important as starting with macOS 11 IOPCIFamily 12 | * will crash as soon as it sees non-existent PCI bridges. 13 | */ 14 | 15 | DefinitionBlock ("", "SSDT", 2, "ACDT", "UNC", 0x00000000) 16 | { 17 | External (_SB.UNC0, DeviceObj) 18 | External (PRBM, IntObj) 19 | 20 | Scope (_SB.UNC0) 21 | { 22 | Method (_INI, 0, NotSerialized) 23 | { 24 | // In most cases this patch does benefit all operating systems, 25 | // yet on select pre-Windows 10 it may cause issues. 26 | // Remove If (_OSI ("Darwin")) in case you have none. 27 | If (_OSI ("Darwin")) { 28 | PRBM = 0 29 | } 30 | } 31 | } 32 | } 33 | -------------------------------------------------------------------------------- /Docs/Configuration.md5: -------------------------------------------------------------------------------- 1 | 0b8c21ce5395a0ee6f94efe89ed89b4a 2 | -------------------------------------------------------------------------------- /Docs/Configuration.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CloverHackyColor/OpenCorePkg/e21feb5907444256f4ff4c9b2be33be59e5a13cd/Docs/Configuration.pdf -------------------------------------------------------------------------------- /Docs/Differences/Differences.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CloverHackyColor/OpenCorePkg/e21feb5907444256f4ff4c9b2be33be59e5a13cd/Docs/Differences/Differences.pdf -------------------------------------------------------------------------------- /Docs/Errata/Errata.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CloverHackyColor/OpenCorePkg/e21feb5907444256f4ff4c9b2be33be59e5a13cd/Docs/Errata/Errata.pdf -------------------------------------------------------------------------------- /Docs/FORUMS.md: -------------------------------------------------------------------------------- 1 | ## OpenCore Discussion Forums 2 | 3 | - AppleLife.ru in Russian: 4 | - [Development](https://applelife.ru/threads/razrabotka-opencore.2943955) 5 | - [Discussion](https://applelife.ru/threads/opencore-obsuzhdenie-i-ustanovka.2944066/) 6 | - [Icon sets](https://applelife.ru/threads/kastomizacija-opencanopy.2945020/) 7 | - [Hackintosh-Forum.de](https://www.hackintosh-forum.de/forum/thread/42353-opencore-bootloader) in German 8 | - MacRumors.com in English: 9 | - [Big Sur on Unsupported Macs](https://forums.macrumors.com/threads/macos-11-big-sur-on-unsupported-macs-thread.2242172/) 10 | - [Monterey on Unsupported Macs](https://forums.macrumors.com/threads/macos-12-monterey-on-unsupported-macs-thread.2299557/) 11 | - [OpenCore on the MacPro](https://forums.macrumors.com/threads/opencore-on-the-mac-pro.2207814/) 12 | - [macOS86.it](https://www.macos86.it/showthread.php?4570-OpenCore-aka-OC-Nuovo-BootLoader) in Italian 13 | - [KVM-OpenCore](https://github.com/Leoyzen/KVM-Opencore) in English, KVM configuration 14 | - [Reddit](https://www.reddit.com/r/hackintosh) in English 15 | -------------------------------------------------------------------------------- /Docs/Logos/Logo.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CloverHackyColor/OpenCorePkg/e21feb5907444256f4ff4c9b2be33be59e5a13cd/Docs/Logos/Logo.pdf -------------------------------------------------------------------------------- /Docs/Logos/Logo.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CloverHackyColor/OpenCorePkg/e21feb5907444256f4ff4c9b2be33be59e5a13cd/Docs/Logos/Logo.png -------------------------------------------------------------------------------- /Docs/Logos/Logo.sketch: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CloverHackyColor/OpenCorePkg/e21feb5907444256f4ff4c9b2be33be59e5a13cd/Docs/Logos/Logo.sketch -------------------------------------------------------------------------------- /Docs/Logos/OpenCore_with_text_Large.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CloverHackyColor/OpenCorePkg/e21feb5907444256f4ff4c9b2be33be59e5a13cd/Docs/Logos/OpenCore_with_text_Large.png -------------------------------------------------------------------------------- /Docs/Logos/OpenCore_with_text_Small.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CloverHackyColor/OpenCorePkg/e21feb5907444256f4ff4c9b2be33be59e5a13cd/Docs/Logos/OpenCore_with_text_Small.png -------------------------------------------------------------------------------- /Docs/Logos/README.md: -------------------------------------------------------------------------------- 1 | OpenCore Logo 2 | ============= 3 | 4 | This directory contains OpenCore project official logo. The following 5 | formats are supported: 6 | 7 | - Sketch source file 8 | - Portable Document Format (PDF) 9 | - Portable Network Graphics (PNG) 10 | - Scalable Vector Graphics (SVG) 11 | 12 | SVG format is currently not recommended, as it contains an approximated 13 | version of the logo, which has slightly wrong colourspace due to missing 14 | conic gradient support in SVG. 15 | 16 | You may use this logo free of charge to refer to OpenCore project for 17 | informational purposes. You have no right to modify logo. 18 | The use of this logo in your own projects which 19 | are related to OpenCore is also permitted free of charge, yet requires 20 | OpenCore maintainer approval. Please 21 | [contact us](https://github.com/acidanthera/bugtracker/issues/new) 22 | for more details. 23 | 24 | We would like to express our deep gratitude to 25 | [Anadea Inc.](http://anadea.info) designing team for their brilliant work 26 | and extreme patience! 27 | -------------------------------------------------------------------------------- /Include/Acidanthera/Library/OcAppleImageConversionLib.h: -------------------------------------------------------------------------------- 1 | /** @file 2 | Copyright (C) 2018 savvas. All rights reserved.
3 | Portions copyright (C) 2016 slice. All rights reserved.
4 | Portions copyright (C) 2018 vit9696. All rights reserved.
5 | 6 | This program and the accompanying materials 7 | are licensed and made available under the terms and conditions of the BSD License 8 | which accompanies this distribution. The full text of the license may be found at 9 | http://opensource.org/licenses/bsd-license.php 10 | 11 | THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS, 12 | WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED. 13 | **/ 14 | 15 | #ifndef OC_APPLE_IMAGE_CONVERSION_LIB_H 16 | #define OC_APPLE_IMAGE_CONVERSION_LIB_H 17 | 18 | #include 19 | #include 20 | 21 | /** 22 | Install and initialise the Apple Image Conversion protocol. 23 | 24 | @param[in] Reinstall Replace any installed protocol. 25 | 26 | @returns Installed or located protocol. 27 | @retval NULL There was an error locating or installing the protocol. 28 | **/ 29 | APPLE_IMAGE_CONVERSION_PROTOCOL * 30 | OcAppleImageConversionInstallProtocol ( 31 | IN BOOLEAN Reinstall 32 | ); 33 | 34 | #endif // OC_APPLE_IMAGE_CONVERSION_LIB_H 35 | -------------------------------------------------------------------------------- /Include/Acidanthera/Library/OcAppleKeysLib.h: -------------------------------------------------------------------------------- 1 | /** @file 2 | Copyright (C) 2019, vit9696. All rights reserved. 3 | 4 | All rights reserved. 5 | 6 | This program and the accompanying materials 7 | are licensed and made available under the terms and conditions of the BSD License 8 | which accompanies this distribution. The full text of the license may be found at 9 | http://opensource.org/licenses/bsd-license.php 10 | 11 | THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS, 12 | WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED. 13 | **/ 14 | 15 | #ifndef OC_APPLE_KEYS_LIB_H 16 | #define OC_APPLE_KEYS_LIB_H 17 | 18 | #include 19 | #include 20 | 21 | #define NUM_OF_PK 2 22 | 23 | typedef struct APPLE_PK_ENTRY_ { 24 | UINT8 Hash[SHA256_DIGEST_SIZE]; 25 | CONST OC_RSA_PUBLIC_KEY *PublicKey; 26 | } APPLE_PK_ENTRY; 27 | 28 | extern CONST APPLE_PK_ENTRY PkDataBase[NUM_OF_PK]; 29 | 30 | extern CONST UINT8 gAppleX86SecureBootRootCaCert[]; 31 | extern CONST UINTN gAppleX86SecureBootRootCaCertSize; 32 | 33 | #endif // OC_APPLE_KEYS_LIB_H 34 | -------------------------------------------------------------------------------- /Include/Acidanthera/Library/OcAppleUserInterfaceThemeLib.h: -------------------------------------------------------------------------------- 1 | /** @file 2 | Copyright (c) 2016-2018, vit9696. All rights reserved.
3 | Portions copyright (c) 2018, savvas. All rights reserved.
4 | 5 | This program and the accompanying materials 6 | are licensed and made available under the terms and conditions of the BSD License 7 | which accompanies this distribution. The full text of the license may be found at 8 | http://opensource.org/licenses/bsd-license.php 9 | 10 | THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS, 11 | WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED. 12 | **/ 13 | 14 | #ifndef OC_APPLE_USER_INTERFACE_THEME_LIB_H 15 | #define OC_APPLE_USER_INTERFACE_THEME_LIB_H 16 | 17 | #include 18 | 19 | /** 20 | Install and initialise the Apple User Interface Theme protocol. 21 | 22 | @param[in] Reinstall Replace any installed protocol. 23 | 24 | @returns Installed or located protocol. 25 | @retval NULL There was an error locating or installing the protocol. 26 | **/ 27 | EFI_USER_INTERFACE_THEME_PROTOCOL * 28 | OcAppleUserInterfaceThemeInstallProtocol ( 29 | IN BOOLEAN Reinstall 30 | ); 31 | 32 | #endif // OC_APPLE_USER_INTERFACE_THEME_LIB_H 33 | -------------------------------------------------------------------------------- /Include/Acidanthera/Library/OcBootServicesTableLib.h: -------------------------------------------------------------------------------- 1 | /** @file 2 | Provides a service to retrieve a pointer to the EFI Boot Services Table. 3 | Allows overrides to UEFI protocols. 4 | Only available to DXE and UEFI module types. 5 | 6 | Copyright (c) 2020, Intel Corporation. All rights reserved.
7 | SPDX-License-Identifier: BSD-2-Clause-Patent 8 | 9 | **/ 10 | 11 | #ifndef OC_BOOT_SERVICES_TABLE_LIB_H 12 | #define OC_BOOT_SERVICES_TABLE_LIB_H 13 | 14 | #include 15 | 16 | /** 17 | Provide protocol instance through gBS->LocateProtocol. 18 | 19 | @param[in] ProtocolGuid Pointer to protocol GUID. 20 | @param[in] ProtocolInstance Pointer to protocol instance. 21 | @param[in] Override Override protocol instead of fallback when missing. 22 | 23 | @retval EFI_SUCCESS on successful registration. 24 | @retval EFI_OUT_OF_RESOURCES when no free slots are available. 25 | **/ 26 | EFI_STATUS 27 | OcRegisterBootServicesProtocol ( 28 | IN EFI_GUID *ProtocolGuid, 29 | IN VOID *ProtocolInstance, 30 | IN BOOLEAN Override 31 | ); 32 | 33 | #endif // OC_BOOT_SERVICES_TABLE_LIB_H 34 | -------------------------------------------------------------------------------- /Include/Acidanthera/Library/OcDevicePropertyLib.h: -------------------------------------------------------------------------------- 1 | /** @file 2 | Copyright (C) 2016, The HermitCrabs Lab. All rights reserved. 3 | 4 | All rights reserved. 5 | 6 | This program and the accompanying materials 7 | are licensed and made available under the terms and conditions of the BSD License 8 | which accompanies this distribution. The full text of the license may be found at 9 | http://opensource.org/licenses/bsd-license.php 10 | 11 | THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS, 12 | WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED. 13 | **/ 14 | 15 | #ifndef OC_DEVICE_PROPERTY_LIB_H 16 | #define OC_DEVICE_PROPERTY_LIB_H 17 | 18 | #include 19 | 20 | /** 21 | Install and initialise EFI DevicePath property protocol. 22 | 23 | @param[in] Reinstall Overwrite installed protocol. 24 | 25 | @retval installed or located protocol or NULL. 26 | **/ 27 | EFI_DEVICE_PATH_PROPERTY_DATABASE_PROTOCOL * 28 | OcDevicePathPropertyInstallProtocol ( 29 | IN BOOLEAN Reinstall 30 | ); 31 | 32 | #endif // OC_DEVICE_PROPERTY_LIB_H 33 | -------------------------------------------------------------------------------- /Include/Acidanthera/Library/OcDirectResetLib.h: -------------------------------------------------------------------------------- 1 | /** @file 2 | OVMF hardware reset implementation. 3 | 4 | Copyright (c) 2021-2022, vit9696, mikebeaton. All rights reserved.
5 | SPDX-License-Identifier: BSD-3-Clause 6 | **/ 7 | 8 | #ifndef OC_DIRECT_RESET_LIB_H 9 | #define OC_DIRECT_RESET_LIB_H 10 | 11 | #include 12 | 13 | /** 14 | Perform cold reboot directly bypassing UEFI services. Does not return. 15 | Supposed to work in any modern physical or virtual environment. 16 | **/ 17 | VOID 18 | DirectResetCold ( 19 | VOID 20 | ); 21 | 22 | #endif // OC_DIRECT_RESET_LIB_H 23 | -------------------------------------------------------------------------------- /Include/Acidanthera/Library/OcFirmwarePasswordLib.h: -------------------------------------------------------------------------------- 1 | /** @file 2 | Copyright (C) 2016, The HermitCrabs Lab. All rights reserved. 3 | 4 | All rights reserved. 5 | 6 | This program and the accompanying materials 7 | are licensed and made available under the terms and conditions of the BSD License 8 | which accompanies this distribution. The full text of the license may be found at 9 | http://opensource.org/licenses/bsd-license.php 10 | 11 | THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS, 12 | WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED. 13 | **/ 14 | 15 | #ifndef OC_FIRMWARE_PASSWORD_LIB_H 16 | #define OC_FIRMWARE_PASSWORD_LIB_H 17 | 18 | // OcFirmwarePasswordInstallProtocol 19 | /// Install the Apple Firmware Password protocol 20 | /// 21 | /// @param[in] ImageHandle The firmware allocated handle for the EFI image. 22 | /// @param[in] SystemTable A pointer to the EFI System Table. 23 | /// 24 | /// @retval EFI_SUCCESS The entry point is executed successfully. 25 | 26 | EFI_STATUS 27 | OcFirmwarePasswordInstallProtocol ( 28 | IN EFI_HANDLE ImageHandle, 29 | IN EFI_SYSTEM_TABLE *SystemTable 30 | ); 31 | 32 | #endif // OC_FIRMWARE_PASSWORD_LIB_H 33 | -------------------------------------------------------------------------------- /Include/Acidanthera/Library/OcFirmwareVolumeLib.h: -------------------------------------------------------------------------------- 1 | /** @file 2 | Copyright (C) 2016 Sergey Slice. All rights reserved.
3 | Portions copyright (C) 2018 savvas.
4 | Portions copyright (C) 2006-2014 Intel Corporation. All rights reserved.
5 | Portions copyright (C) 2016-2018 Alex James. All rights reserved.
6 | 7 | This program and the accompanying materials 8 | are licensed and made available under the terms and conditions of the BSD License 9 | which accompanies this distribution. The full text of the license may be found at 10 | http://opensource.org/licenses/bsd-license.php 11 | 12 | THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS, 13 | WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED. 14 | **/ 15 | 16 | #ifndef OC_FIRMWARE_VOLUME_LIB_H 17 | #define OC_FIRMWARE_VOLUME_LIB_H 18 | 19 | #include 20 | #include 21 | #include 22 | 23 | /** 24 | Install and initialise EFI Firmware Volume protocol. 25 | 26 | @param[in] Reinstall Replace any installed protocol. 27 | 28 | @returns Installed protocol. 29 | @retval NULL There was an error installing the protocol. 30 | **/ 31 | EFI_FIRMWARE_VOLUME_PROTOCOL * 32 | OcFirmwareVolumeInstallProtocol ( 33 | IN BOOLEAN Reinstall 34 | ); 35 | 36 | #endif // OC_FIRMWARE_VOLUME_LIB_H 37 | -------------------------------------------------------------------------------- /Include/Acidanthera/Library/OcHashServicesLib.h: -------------------------------------------------------------------------------- 1 | /** @file 2 | Author: Joel Hoener 3 | 4 | This program and the accompanying materials 5 | are licensed and made available under the terms and conditions of the BSD License 6 | which accompanies this distribution. The full text of the license may be found at 7 | http://opensource.org/licenses/bsd-license.php 8 | 9 | THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS, 10 | WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED. 11 | **/ 12 | 13 | #ifndef OC_HASH_SERVICES_LIB_H 14 | #define OC_HASH_SERVICES_LIB_H 15 | 16 | #include 17 | 18 | /** 19 | Install and initialise EFI Service Binding protocol. 20 | 21 | @param[in] Reinstall Replace any installed protocol. 22 | 23 | @returns Installed protocol. 24 | @retval NULL There was an error installing the protocol. 25 | **/ 26 | EFI_SERVICE_BINDING_PROTOCOL * 27 | OcHashServicesInstallProtocol ( 28 | IN BOOLEAN Reinstall 29 | ); 30 | 31 | #endif // OC_HASH_SERVICES_LIB_H 32 | -------------------------------------------------------------------------------- /Include/Acidanthera/Library/OcOSInfoLib.h: -------------------------------------------------------------------------------- 1 | /** @file 2 | Copyright (C) 2020, vit9696. All rights reserved. 3 | 4 | All rights reserved. 5 | 6 | This program and the accompanying materials 7 | are licensed and made available under the terms and conditions of the BSD License 8 | which accompanies this distribution. The full text of the license may be found at 9 | http://opensource.org/licenses/bsd-license.php 10 | 11 | THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS, 12 | WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED. 13 | **/ 14 | 15 | #ifndef OC_OS_INFO_LIB_H 16 | #define OC_OS_INFO_LIB_H 17 | 18 | #include 19 | 20 | /** 21 | Install and initialise OS Info protocol. 22 | 23 | @param[in] Reinstall Overwrite installed protocol. 24 | 25 | @retval installed or located protocol or NULL. 26 | **/ 27 | EFI_OS_INFO_PROTOCOL * 28 | OcOSInfoInstallProtocol ( 29 | IN BOOLEAN Reinstall 30 | ); 31 | 32 | #endif // OC_OS_INFO_LIB_H 33 | -------------------------------------------------------------------------------- /Include/Acidanthera/Library/OcPciIoLib.h: -------------------------------------------------------------------------------- 1 | /** @file 2 | Copyright (C) 2023, xCuri0. All rights reserved. 3 | 4 | All rights reserved. 5 | 6 | This program and the accompanying materials 7 | are licensed and made available under the terms and conditions of the BSD License 8 | which accompanies this distribution. The full text of the license may be found at 9 | http://opensource.org/licenses/bsd-license.php 10 | 11 | THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS, 12 | WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED. 13 | **/ 14 | 15 | #ifndef OC_PCI_IO_LIB_H 16 | #define OC_PCI_IO_LIB_H 17 | 18 | #include 19 | 20 | /** 21 | The user Entry Point for PciIo. 22 | 23 | This function fixes PciIo related protocols. 24 | 25 | @param[in] Reinstall Replace any installed protocol. 26 | 27 | @returns Installed protocol. 28 | @retval NULL There was an error installing the protocol. 29 | **/ 30 | EFI_CPU_IO2_PROTOCOL * 31 | OcPciIoInstallProtocol ( 32 | IN BOOLEAN Reinstall 33 | ); 34 | 35 | #endif // OC_PCI_IO_LIB_H 36 | -------------------------------------------------------------------------------- /Include/Acidanthera/Library/OcSmcLib.h: -------------------------------------------------------------------------------- 1 | /** @file 2 | Copyright (C) 2020, vit9696. All rights reserved. 3 | 4 | All rights reserved. 5 | 6 | This program and the accompanying materials 7 | are licensed and made available under the terms and conditions of the BSD License 8 | which accompanies this distribution. The full text of the license may be found at 9 | http://opensource.org/licenses/bsd-license.php 10 | 11 | THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS, 12 | WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED. 13 | **/ 14 | 15 | #ifndef OC_SMC_LIB_H 16 | #define OC_SMC_LIB_H 17 | 18 | #include 19 | 20 | /** 21 | Install and initialise SMC I/O protocol. 22 | 23 | @param[in] Reinstall Overwrite installed protocol. 24 | @param[in] AuthRestart Support AuthRestart protocol via VSMC. 25 | 26 | @retval installed or located protocol or NULL. 27 | **/ 28 | APPLE_SMC_IO_PROTOCOL * 29 | OcSmcIoInstallProtocol ( 30 | IN BOOLEAN Reinstall, 31 | IN BOOLEAN AuthRestart 32 | ); 33 | 34 | #endif // OC_SMC_LIB_H 35 | -------------------------------------------------------------------------------- /Include/Acidanthera/Library/OcTimerLib.h: -------------------------------------------------------------------------------- 1 | /** @file 2 | Copyright (C) 2016, The HermitCrabs Lab. All rights reserved.
3 | Copyright (C) 2021, Mike Beaton. All rights reserved.
4 | SPDX-License-Identifier: BSD-3-Clause 5 | **/ 6 | 7 | #ifndef OC_TIMER_LIB_H 8 | #define OC_TIMER_LIB_H 9 | 10 | #include 11 | 12 | // 13 | // Minimal CPU delay in microseconds (us, 10^-6) for use with MicroSecondDelay e.g. in polling loops 14 | // 15 | #define OC_MINIMAL_CPU_DELAY 10 16 | 17 | /** 18 | Calculate the TSC frequency 19 | 20 | @retval The calculated TSC frequency. 21 | **/ 22 | UINT64 23 | RecalculateTSC ( 24 | VOID 25 | ); 26 | 27 | /** 28 | Return cached PerformanceCounterFrequency value. For instrumentation purposes only. 29 | 30 | @retval The timer frequency in use. 31 | 32 | **/ 33 | UINT64 34 | EFIAPI 35 | GetTscFrequency ( 36 | VOID 37 | ); 38 | 39 | #endif // OC_TIMER_LIB_H 40 | -------------------------------------------------------------------------------- /Include/Acidanthera/Library/OcUnicodeCollationEngGenericLib.h: -------------------------------------------------------------------------------- 1 | /** @file 2 | Copyright (c) 2006 - 2011, Intel Corporation. All rights reserved.
3 | 4 | This program and the accompanying materials 5 | are licensed and made available under the terms and conditions of the BSD License 6 | which accompanies this distribution. The full text of the license may be found at 7 | http://opensource.org/licenses/bsd-license.php 8 | 9 | THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS, 10 | WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED. 11 | **/ 12 | 13 | #ifndef OC_UNICODE_COLLATION_ENG_LIB_H 14 | #define OC_UNICODE_COLLATION_ENG_LIB_H 15 | 16 | #include 17 | 18 | /** 19 | The user Entry Point for English module. 20 | 21 | This function initializes unicode character mapping and then installs Unicode 22 | Collation & Unicode Collation 2 Protocols based on the feature flags. 23 | 24 | @param[in] Reinstall Replace any installed protocol. 25 | 26 | @returns Installed protocol. 27 | @retval NULL There was an error installing the protocol. 28 | **/ 29 | EFI_UNICODE_COLLATION_PROTOCOL * 30 | OcUnicodeCollationEngInstallProtocol ( 31 | IN BOOLEAN Reinstall 32 | ); 33 | 34 | #endif // OC_UNICODE_COLLATION_ENG_LIB_H 35 | -------------------------------------------------------------------------------- /Include/Acidanthera/Protocol/OcAfterBootCompat.h: -------------------------------------------------------------------------------- 1 | /** @file 2 | Copyright (C) 2019, vit9696. All rights reserved. 3 | 4 | All rights reserved. 5 | 6 | This program and the accompanying materials 7 | are licensed and made available under the terms and conditions of the BSD License 8 | which accompanies this distribution. The full text of the license may be found at 9 | http://opensource.org/licenses/bsd-license.php 10 | 11 | THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS, 12 | WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED. 13 | **/ 14 | 15 | #ifndef OC_AFTER_BOOT_COMPAT_PROTOCOL_H 16 | #define OC_AFTER_BOOT_COMPAT_PROTOCOL_H 17 | 18 | #define OC_AFTER_BOOT_COMPAT_PROTOCOL_REVISION 0x010000 19 | 20 | // 21 | // OC_AFTER_BOOT_COMPAT_PROTOCOL_GUID 22 | // C7CBA84E-CC77-461D-9E3C-6BE0CB79A7C1 23 | // 24 | #define OC_AFTER_BOOT_COMPAT_PROTOCOL_GUID \ 25 | { 0xC7CBA84E, 0xCC77, 0x461D, \ 26 | { 0x9E, 0x3C, 0x6B, 0xE0, 0xCB, 0x79, 0xA7, 0xC1 } } 27 | 28 | // 29 | // Includes a revision for debugging reasons 30 | // 31 | typedef struct { 32 | UINTN Revision; 33 | } OC_AFTER_BOOT_COMPAT_PROTOCOL; 34 | 35 | extern EFI_GUID gOcAfterBootCompatProtocolGuid; 36 | 37 | #endif // OC_AFTER_BOOT_COMPAT_PROTOCOL_H 38 | -------------------------------------------------------------------------------- /Include/Apple/AArch64/AppleCpuType.h: -------------------------------------------------------------------------------- 1 | /** @file 2 | Copyright (C) 2014 - 2017, Download-Fritz. All rights reserved.
3 | This program and the accompanying materials are licensed and made available 4 | under the terms and conditions of the BSD License which accompanies this 5 | distribution. The full text of the license may be found at 6 | http://opensource.org/licenses/bsd-license.php. 7 | 8 | THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS, 9 | WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED. 10 | 11 | **/ 12 | 13 | #ifndef APPLE_CPU_TYPE_H 14 | #define APPLE_CPU_TYPE_H 15 | 16 | #define CURRENT_CPU_TYPE MachCpuTypeArm64 17 | #define CURRENT_CPU_SUBTYPE MachCpuSubtypeArm64All 18 | 19 | #define APPLE_REMOVABLE_MEDIA_FILE_NAME APPLE_REMOVABLE_MEDIA_FILE_NAME_AARCH64 20 | 21 | #endif // APPLE_CPU_TYPE_H 22 | -------------------------------------------------------------------------------- /Include/Apple/AppleMacEfi.h: -------------------------------------------------------------------------------- 1 | /** @file 2 | Copyright (C) 2014 - 2017, Download-Fritz. All rights reserved.
3 | This program and the accompanying materials are licensed and made available 4 | under the terms and conditions of the BSD License which accompanies this 5 | distribution. The full text of the license may be found at 6 | http://opensource.org/licenses/bsd-license.php. 7 | 8 | THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS, 9 | WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED. 10 | 11 | **/ 12 | 13 | #ifndef APPLE_MAC_EFI_H 14 | #define APPLE_MAC_EFI_H 15 | 16 | #include 17 | 18 | #include 19 | #include 20 | 21 | #ifndef ARRAY_SIZE 22 | 23 | /** 24 | Return the number of elements in an array. 25 | 26 | @param Array An object of array type. Array is only used as an argument to 27 | the sizeof operator, therefore Array is never evaluated. The 28 | caller is responsible for ensuring that Array's type is not 29 | incomplete; that is, Array must have known constant size. 30 | 31 | @return The number of elements in Array. The result has type UINTN. 32 | 33 | **/ 34 | #define ARRAY_SIZE(Array) (sizeof (Array) / sizeof ((Array)[0])) 35 | 36 | #endif 37 | 38 | #endif // APPLE_MAC_EFI_H 39 | -------------------------------------------------------------------------------- /Include/Apple/Arm/AppleCpuType.h: -------------------------------------------------------------------------------- 1 | /** @file 2 | Copyright (C) 2014 - 2017, Download-Fritz. All rights reserved.
3 | This program and the accompanying materials are licensed and made available 4 | under the terms and conditions of the BSD License which accompanies this 5 | distribution. The full text of the license may be found at 6 | http://opensource.org/licenses/bsd-license.php. 7 | 8 | THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS, 9 | WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED. 10 | 11 | **/ 12 | 13 | #ifndef APPLE_CPU_TYPE_H 14 | #define APPLE_CPU_TYPE_H 15 | 16 | #define CURRENT_CPU_TYPE MachCpuTypeArm 17 | #define CURRENT_CPU_SUBTYPE MachCpuSubtypeArmAll 18 | 19 | #define APPLE_REMOVABLE_MEDIA_FILE_NAME APPLE_REMOVABLE_MEDIA_FILE_NAME_ARM 20 | 21 | #endif // APPLE_CPU_TYPE_H 22 | -------------------------------------------------------------------------------- /Include/Apple/Ebc/AppleCpuType.h: -------------------------------------------------------------------------------- 1 | /** @file 2 | Copyright (C) 2014 - 2017, Download-Fritz. All rights reserved.
3 | This program and the accompanying materials are licensed and made available 4 | under the terms and conditions of the BSD License which accompanies this 5 | distribution. The full text of the license may be found at 6 | http://opensource.org/licenses/bsd-license.php. 7 | 8 | THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS, 9 | WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED. 10 | 11 | **/ 12 | 13 | #ifndef APPLE_CPU_TYPE_H 14 | #define APPLE_CPU_TYPE_H 15 | 16 | #error Unsupported Platform 17 | 18 | #endif // APPLE_CPU_TYPE_H 19 | -------------------------------------------------------------------------------- /Include/Apple/Guid/AppleDevicePath.h: -------------------------------------------------------------------------------- 1 | #ifndef APPLE_DEVICE_PATH_H 2 | #define APPLE_DEVICE_PATH_H 3 | 4 | #include 5 | 6 | #pragma pack(1) 7 | 8 | #define APPLE_APFS_VOLUME_DEVICE_PATH_GUID \ 9 | { 0xBE74FCF7, 0x0B7C, 0x49F3, \ 10 | { 0x91, 0x47, 0x01, 0xF4, 0x04, 0x2E, 0x68, 0x42 } } 11 | 12 | typedef PACKED struct { 13 | VENDOR_DEVICE_PATH Header; 14 | GUID Uuid; 15 | } APPLE_APFS_VOLUME_DEVICE_PATH; 16 | 17 | extern EFI_GUID gAppleApfsVolumeDevicePathGuid; 18 | 19 | #define APPLE_SD_CARD_VENDOR_DEVICE_PATH_GUID \ 20 | { 0xC063C579, 0x9F78, 0x4BA5, \ 21 | { 0x9F, 0x42, 0xD0, 0xB0, 0x14, 0x95, 0x97, 0xA6 } } 22 | 23 | extern EFI_GUID gAppleSdCardVendorDevicePathGuid; 24 | 25 | #pragma pack() 26 | 27 | #endif // APPLE_DEVICE_PATH_H 28 | -------------------------------------------------------------------------------- /Include/Apple/Guid/AppleOSLoaded.h: -------------------------------------------------------------------------------- 1 | /** @file 2 | Copyright (C) 2014 - 2017, Download-Fritz. All rights reserved.
3 | This program and the accompanying materials are licensed and made available 4 | under the terms and conditions of the BSD License which accompanies this 5 | distribution. The full text of the license may be found at 6 | http://opensource.org/licenses/bsd-license.php. 7 | 8 | THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS, 9 | WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED. 10 | 11 | **/ 12 | 13 | #ifndef APPLE_OS_LOADED_H 14 | #define APPLE_OS_LOADED_H 15 | 16 | #include 17 | 18 | // APPLE_OS_LOADED_EVENT_NAME 19 | #define APPLE_OS_LOADED_NAMED_EVENT_GUID \ 20 | { 0xC5C5DA95, 0x7D5C, 0x45E6, \ 21 | { 0x83, 0x72, 0x89, 0xBD, 0x52, 0x6D, 0xE9, 0x56 } } 22 | 23 | // gAppleOSLoadedNamedEventGuid 24 | extern EFI_GUID gAppleOSLoadedNamedEventGuid; 25 | 26 | #endif // APPLE_OS_LOADED_H 27 | -------------------------------------------------------------------------------- /Include/Apple/Guid/AppleTscFrequency.h: -------------------------------------------------------------------------------- 1 | /** @file 2 | Copyright (C) 2017, Download-Fritz. All rights reserved.
3 | This program and the accompanying materials are licensed and made available 4 | under the terms and conditions of the BSD License which accompanies this 5 | distribution. The full text of the license may be found at 6 | http://opensource.org/licenses/bsd-license.php. 7 | 8 | THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS, 9 | WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED. 10 | 11 | **/ 12 | 13 | #ifndef APPLE_TSC_FREQUENCY_GUID_H 14 | #define APPLE_TSC_FREQUENCY_GUID_H 15 | 16 | // APPLE_TSC_FREQUENCY_GUID 17 | #define APPLE_TSC_FREQUENCY_GUID \ 18 | { 0x674ABEA3, 0x0FE5, 0x11E5, \ 19 | { 0x98, 0x8E, 0xB8, 0xE8, 0x56, 0x2C, 0xBA, 0xFA } } 20 | 21 | // gAppleTscFrequencyGuid 22 | extern EFI_GUID gAppleTscFrequencyGuid; 23 | 24 | #endif // APPLE_TSC_FREQUENCY_GUID_H 25 | -------------------------------------------------------------------------------- /Include/Apple/Ia32/AppleCpuType.h: -------------------------------------------------------------------------------- 1 | /** @file 2 | Copyright (C) 2014 - 2017, Download-Fritz. All rights reserved.
3 | This program and the accompanying materials are licensed and made available 4 | under the terms and conditions of the BSD License which accompanies this 5 | distribution. The full text of the license may be found at 6 | http://opensource.org/licenses/bsd-license.php. 7 | 8 | THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS, 9 | WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED. 10 | 11 | **/ 12 | 13 | #ifndef APPLE_CPU_TYPE_H 14 | #define APPLE_CPU_TYPE_H 15 | 16 | #define CURRENT_CPU_TYPE MachCpuTypeI386 17 | #define CURRENT_CPU_SUBTYPE MachCpuSubtypeX86All 18 | 19 | #define APPLE_REMOVABLE_MEDIA_FILE_NAME APPLE_REMOVABLE_MEDIA_FILE_NAME_IA32 20 | 21 | #endif // APPLE_CPU_TYPE_H 22 | -------------------------------------------------------------------------------- /Include/Apple/Library/AppleCpuExtensionsLib.h: -------------------------------------------------------------------------------- 1 | /** @file 2 | Copyright (C) 2017, Download-Fritz. All rights reserved.
3 | This program and the accompanying materials are licensed and made available 4 | under the terms and conditions of the BSD License which accompanies this 5 | distribution. The full text of the license may be found at 6 | http://opensource.org/licenses/bsd-license.php. 7 | 8 | THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS, 9 | WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED. 10 | 11 | **/ 12 | 13 | #ifndef APPLE_CPU_EXTENSIONS_LIB_H 14 | #define APPLE_CPU_EXTENSIONS_LIB_H 15 | 16 | // AppleEnableCpuExtensions 17 | VOID 18 | AppleEnableCpuExtensions ( 19 | VOID 20 | ); 21 | 22 | #endif // APPLE_CPU_EXTENSIONS_LIB_H 23 | -------------------------------------------------------------------------------- /Include/Apple/Library/AppleDataHubLib.h: -------------------------------------------------------------------------------- 1 | /** @file 2 | Copyright (C) 2017, Download-Fritz. All rights reserved.
3 | This program and the accompanying materials are licensed and made available 4 | under the terms and conditions of the BSD License which accompanies this 5 | distribution. The full text of the license may be found at 6 | http://opensource.org/licenses/bsd-license.php. 7 | 8 | THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS, 9 | WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED. 10 | 11 | **/ 12 | 13 | #ifndef APPLE_DATA_HUB_LIB_H 14 | #define APPLE_DATA_HUB_LIB_H 15 | 16 | // DataHubLogData 17 | VOID 18 | DataHubLogData ( 19 | IN EFI_GUID *DataRecordGuid, 20 | IN EFI_GUID *ProducerName, 21 | IN VOID *RawData, 22 | IN UINT32 RawDataSize 23 | ); 24 | 25 | // DataHubLogApplePlatformData 26 | VOID 27 | DataHubLogApplePlatformData ( 28 | IN CHAR16 *Key, 29 | IN EFI_GUID *DataRecordGuid, 30 | IN VOID *Value, 31 | IN UINTN ValueSize 32 | ); 33 | 34 | #endif // APPLE_DATA_HUB_LIB_H 35 | -------------------------------------------------------------------------------- /Include/Apple/Library/AppleEventLib.h: -------------------------------------------------------------------------------- 1 | /** @file 2 | Copyright (C) 2015 - 2017, Download-Fritz. All rights reserved.
3 | This program and the accompanying materials are licensed and made available 4 | under the terms and conditions of the BSD License which accompanies this 5 | distribution. The full text of the license may be found at 6 | http://opensource.org/licenses/bsd-license.php. 7 | 8 | THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS, 9 | WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED. 10 | 11 | **/ 12 | 13 | #ifndef APPLE_EVENT_LIB_H 14 | #define APPLE_EVENT_LIB_H 15 | 16 | // EventLibCreateTimerEvent 17 | EFI_EVENT 18 | EventLibCreateTimerEvent ( 19 | IN EFI_EVENT_NOTIFY NotifyFunction, 20 | IN VOID *NotifyContext, 21 | IN UINT64 TriggerTime, 22 | IN BOOLEAN SignalPeriodic, 23 | IN EFI_TPL NotifyTpl 24 | ); 25 | 26 | // EventLibCreateNotifyTimerEvent 27 | EFI_EVENT 28 | EventLibCreateNotifyTimerEvent ( 29 | IN EFI_EVENT_NOTIFY NotifyFunction, 30 | IN VOID *NotifyContext, 31 | IN UINT64 TriggerTime, 32 | IN BOOLEAN SignalPeriodic 33 | ); 34 | 35 | // EventLibCancelEvent 36 | VOID 37 | EventLibCancelEvent ( 38 | IN EFI_EVENT Event 39 | ); 40 | 41 | #endif // APPLE_EVENT_LIB_H 42 | -------------------------------------------------------------------------------- /Include/Apple/Library/AppleInterruptLib.h: -------------------------------------------------------------------------------- 1 | /** @file 2 | Copyright (C) 2017, Download-Fritz. All rights reserved.
3 | This program and the accompanying materials are licensed and made available 4 | under the terms and conditions of the BSD License which accompanies this 5 | distribution. The full text of the license may be found at 6 | http://opensource.org/licenses/bsd-license.php. 7 | 8 | THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS, 9 | WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED. 10 | 11 | **/ 12 | 13 | #ifndef APPLE_INTERRUPT_H 14 | #define APPLE_INTERRUPT_H 15 | 16 | #define APPLE_INTERRUPT_ASSERT 1 17 | 18 | // AppleInterrupt 19 | RETURN_STATUS 20 | EFIAPI 21 | AppleInterrupt ( 22 | IN UINT32 FunctiondId, 23 | ... 24 | ); 25 | 26 | #endif // APPLE_INTERRUPT_H 27 | -------------------------------------------------------------------------------- /Include/Apple/Library/AppleSmbiosLib.h: -------------------------------------------------------------------------------- 1 | /** @file 2 | Copyright (C) 2017, Download-Fritz. All rights reserved.
3 | This program and the accompanying materials are licensed and made available 4 | under the terms and conditions of the BSD License which accompanies this 5 | distribution. The full text of the license may be found at 6 | http://opensource.org/licenses/bsd-license.php. 7 | 8 | THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS, 9 | WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED. 10 | 11 | **/ 12 | 13 | #ifndef APPLE_SMBIOS_LIB_H 14 | #define APPLE_SMBIOS_LIB_H 15 | 16 | // SmbiosInstallTables 17 | EFI_STATUS 18 | SmbiosInstallTables ( 19 | VOID 20 | ); 21 | 22 | // SmbiosGetRecord 23 | SMBIOS_STRUCTURE * 24 | SmbiosGetRecord ( 25 | IN EFI_SMBIOS_HANDLE Handle 26 | ); 27 | 28 | // SmbiosAdd 29 | VOID 30 | SmbiosAdd ( 31 | IN SMBIOS_STRUCTURE *Record 32 | ); 33 | 34 | // SmbiosUpdateString 35 | VOID 36 | SmbiosUpdateString ( 37 | IN EFI_SMBIOS_HANDLE *Handle, 38 | IN UINTN StringNumber, 39 | IN CHAR8 *String 40 | ); 41 | 42 | // SmbiosGetFirstHandle 43 | SMBIOS_STRUCTURE * 44 | SmbiosGetFirstHandle ( 45 | IN EFI_SMBIOS_TYPE Type, 46 | IN OUT EFI_SMBIOS_HANDLE *Handle 47 | ); 48 | 49 | #endif // APPLE_SMBIOS_LIB_H 50 | -------------------------------------------------------------------------------- /Include/Apple/Protocol/ApfsEfiBootRecordInfo.h: -------------------------------------------------------------------------------- 1 | /** @file 2 | Apple FileSystem EfiBootRecord container info. 3 | 4 | Copyright (C) 2018, savvas. All rights reserved.
5 | Copyright (C) 2018, Download-Fritz. All rights reserved.
6 | This program and the accompanying materials are licensed and made available 7 | under the terms and conditions of the BSD License which accompanies this 8 | distribution. The full text of the license may be found at 9 | http://opensource.org/licenses/bsd-license.php. 10 | 11 | THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS, 12 | WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED. 13 | 14 | **/ 15 | 16 | #ifndef APFS_EFIBOOTRECORD_INFO_PROTOCOL_H 17 | #define APFS_EFIBOOTRECORD_INFO_PROTOCOL_H 18 | 19 | #define APFS_EFIBOOTRECORD_INFO_PROTOCOL_GUID \ 20 | { 0x03B8D751, 0xA02F, 0x4FF8, \ 21 | { 0x9B, 0x1A, 0x55, 0x24, 0xAF, 0xA3, 0x94, 0x5F } } 22 | 23 | typedef struct _APFS_EFIBOOTRECORD_LOCATION_INFO { 24 | // 25 | // Handle of partition which contain EfiBootRecord section 26 | // 27 | EFI_HANDLE ControllerHandle; 28 | // 29 | // UUID of GPT container partition 30 | // 31 | EFI_GUID ContainerUuid; 32 | } APFS_EFIBOOTRECORD_LOCATION_INFO; 33 | 34 | extern EFI_GUID gApfsEfiBootRecordInfoProtocolGuid; 35 | 36 | #endif // APFS_EFIBOOTRECORD_INFO_PROTOCOL_H 37 | -------------------------------------------------------------------------------- /Include/Apple/Protocol/ApfsEncryptedPartition.h: -------------------------------------------------------------------------------- 1 | /** @file 2 | Apple FileSystem encrypted partition. 3 | 4 | Copyright (C) 2020, vit9696. All rights reserved.
5 | This program and the accompanying materials are licensed and made available 6 | under the terms and conditions of the BSD License which accompanies this 7 | distribution. The full text of the license may be found at 8 | http://opensource.org/licenses/bsd-license.php. 9 | 10 | THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS, 11 | WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED. 12 | 13 | **/ 14 | 15 | #ifndef APFS_ENCRYPTED_PARTITION_H 16 | #define APFS_ENCRYPTED_PARTITION_H 17 | 18 | /** 19 | Set for APFSLCKD partitions. 20 | 59D76AE4-37E3-55A7-B460-EF13D46E6020 21 | **/ 22 | 23 | #define APFS_ENCRYPTED_PARTITION_PROTOCOL_GUID \ 24 | { 0x59D76AE4, 0x37E3, 0x55A7, \ 25 | { 0xB4, 0x60, 0xEF, 0x13, 0xD4, 0x6E, 0x60, 0x20 } } 26 | 27 | extern EFI_GUID gApfsEncryptedPartitionProtocolGuid; 28 | 29 | #endif // APFS_ENCRYPTED_PARTITION_H 30 | -------------------------------------------------------------------------------- /Include/Apple/Protocol/ApfsUnsupportedBds.h: -------------------------------------------------------------------------------- 1 | /** @file 2 | Apple FileSystem BDS stage protocol to inform Apfs Loader, that Apple Filesystem 3 | not supported 4 | 5 | Copyright (C) 2018, savvas. All rights reserved.
6 | Copyright (C) 2018, Download-Fritz. All rights reserved.
7 | This program and the accompanying materials are licensed and made available 8 | under the terms and conditions of the BSD License which accompanies this 9 | distribution. The full text of the license may be found at 10 | http://opensource.org/licenses/bsd-license.php. 11 | 12 | THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS, 13 | WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED. 14 | 15 | **/ 16 | 17 | #ifndef APFS_UNSUPPORTED_BDS_PROTOCOL_H 18 | #define APFS_UNSUPPORTED_BDS_PROTOCOL_H 19 | 20 | #define APFS_UNSUPPORTED_BDS_PROTOCOL_GUID \ 21 | { 0xA196A7CA, 0x14C6, 0x11E7, \ 22 | { 0xB9, 0x06, 0xB8, 0xE8, 0x56, 0x2C, 0xBA, 0xFA } } 23 | 24 | extern EFI_GUID gApfsUnsupportedBdsProtocolGuid; 25 | 26 | #endif // APFS_UNSUPPORTED_BDS_PROTOCOL_H 27 | -------------------------------------------------------------------------------- /Include/Apple/Protocol/Apple80211.h: -------------------------------------------------------------------------------- 1 | /** @file 2 | Apple 80211. 3 | 4 | Copyright (C) 2020, vit9696. All rights reserved.
5 | This program and the accompanying materials are licensed and made available 6 | under the terms and conditions of the BSD License which accompanies this 7 | distribution. The full text of the license may be found at 8 | http://opensource.org/licenses/bsd-license.php. 9 | 10 | THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS, 11 | WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED. 12 | 13 | **/ 14 | 15 | #ifndef APPLE_80211_H 16 | #define APPLE_80211_H 17 | 18 | /** 19 | Installed by Wi-Fi drivers. 20 | 71B4903C-14EC-42C4-BDC6-CE1449930E49 21 | **/ 22 | 23 | #define APPLE_80211_PROTOCOL_GUID \ 24 | { 0x71B4903C, 0x14EC, 0x42C4, \ 25 | {0xBD, 0xC6, 0xCE, 0x14, 0x49, 0x93, 0x0E, 0x49 } } 26 | 27 | extern EFI_GUID gApple80211ProtocolGuid; 28 | 29 | #endif // APPLE_80211_H 30 | -------------------------------------------------------------------------------- /Include/Apple/Protocol/AppleDiagLed.h: -------------------------------------------------------------------------------- 1 | /** @file 2 | Apple Diag Led protocol. 3 | 4 | Copyright (C) 2021, vit9696. All rights reserved.
5 | This program and the accompanying materials are licensed and made available 6 | under the terms and conditions of the BSD License which accompanies this 7 | distribution. The full text of the license may be found at 8 | http://opensource.org/licenses/bsd-license.php. 9 | 10 | THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS, 11 | WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED. 12 | 13 | **/ 14 | 15 | #ifndef APPLE_DIAG_LED_PROTOCOL_H 16 | #define APPLE_DIAG_LED_PROTOCOL_H 17 | 18 | #define APPLE_DIAG_LED_PROTOCOL_GUID \ 19 | { 0xA9FBF34B, 0xE2A2, 0x41D1, \ 20 | { 0xBA, 0x00, 0xA2, 0x74, 0xA5, 0x5C, 0xD1, 0x64 } } 21 | 22 | extern EFI_GUID gAppleDiagLedProtocolGuid; 23 | 24 | #endif // APPLE_DIAG_LED_PROTOCOL_H 25 | -------------------------------------------------------------------------------- /Include/Apple/Protocol/KeyboardInfo.h: -------------------------------------------------------------------------------- 1 | /** @file 2 | Copyright (C) 2014 - 2016, Download-Fritz. All rights reserved.
3 | This program and the accompanying materials are licensed and made available 4 | under the terms and conditions of the BSD License which accompanies this 5 | distribution. The full text of the license may be found at 6 | http://opensource.org/licenses/bsd-license.php. 7 | 8 | THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS, 9 | WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED. 10 | 11 | **/ 12 | 13 | #ifndef EFI_KEYBOARD_INFORMATION_H 14 | #define EFI_KEYBOARD_INFORMATION_H 15 | 16 | // EFI_KEYBOARD_INFO_PROTOCOL_GUID 17 | #define EFI_KEYBOARD_INFO_PROTOCOL_GUID \ 18 | { 0xE82A0A1E, 0x0E4D, 0x45AC, \ 19 | { 0xA6, 0xDC, 0x2A, 0xE0, 0x58, 0x00, 0xD3, 0x11 } } 20 | 21 | // KEYBOARD_INFO_GET_INFO 22 | typedef 23 | EFI_STATUS 24 | (EFIAPI *KEYBOARD_INFO_GET_INFO)( 25 | OUT UINT16 *IdVendor, 26 | OUT UINT16 *IdProduct, 27 | OUT UINT16 *CountryCode 28 | ); 29 | 30 | // EFI_KEYBOARD_INFO_PROTOCOL 31 | typedef struct { 32 | KEYBOARD_INFO_GET_INFO GetInfo; 33 | } EFI_KEYBOARD_INFO_PROTOCOL; 34 | 35 | // gEfiKeyboardInfoProtocolGuid 36 | extern EFI_GUID gEfiKeyboardInfoProtocolGuid; 37 | 38 | #endif // EFI_KEYBOARD_INFORMATION_H 39 | -------------------------------------------------------------------------------- /Include/Apple/X64/AppleCpuType.h: -------------------------------------------------------------------------------- 1 | /** @file 2 | Copyright (C) 2014 - 2017, Download-Fritz. All rights reserved.
3 | This program and the accompanying materials are licensed and made available 4 | under the terms and conditions of the BSD License which accompanies this 5 | distribution. The full text of the license may be found at 6 | http://opensource.org/licenses/bsd-license.php. 7 | 8 | THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS, 9 | WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED. 10 | 11 | **/ 12 | 13 | #ifndef APPLE_CPU_TYPE_H 14 | #define APPLE_CPU_TYPE_H 15 | 16 | #define CURRENT_CPU_TYPE MachCpuTypeX8664 17 | #define CURRENT_CPU_SUBTYPE MachCpuSubtypeX8664All 18 | 19 | #define APPLE_REMOVABLE_MEDIA_FILE_NAME APPLE_REMOVABLE_MEDIA_FILE_NAME_X64 20 | 21 | #endif // APPLE_CPU_TYPE_H 22 | -------------------------------------------------------------------------------- /Include/Duet/Guid/DxeCoreFileName.h: -------------------------------------------------------------------------------- 1 | /** @file 2 | Guid is EDKII DxeCore moudle GUID. 3 | 4 | Copyright (c) 2011, Intel Corporation. All rights reserved.
5 | This program and the accompanying materials 6 | are licensed and made available under the terms and conditions of the BSD License 7 | which accompanies this distribution. The full text of the license may be found at 8 | http://opensource.org/licenses/bsd-license.php 9 | 10 | THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS, 11 | WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED. 12 | 13 | **/ 14 | 15 | #ifndef __DXE_CORE_FILE_NAME__ 16 | #define __DXE_CORE_FILE_NAME__ 17 | 18 | #define DXE_CORE_FILE_NAME_GUID \ 19 | { 0xD6A2CB7F, 0x6A18, 0x4e2f, {0xB4, 0x3B, 0x99, 0x20, 0xA7, 0x33, 0x70, 0x0A }} 20 | 21 | extern EFI_GUID gDxeCoreFileNameGuid; 22 | 23 | #endif 24 | -------------------------------------------------------------------------------- /Include/Duet/Guid/FlashMapHob.h: -------------------------------------------------------------------------------- 1 | /** @file 2 | 3 | Copyright (c) 2004, Intel Corporation. All rights reserved.
4 | This program and the accompanying materials 5 | are licensed and made available under the terms and conditions of the BSD License 6 | which accompanies this distribution. The full text of the license may be found at 7 | http://opensource.org/licenses/bsd-license.php 8 | 9 | THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS, 10 | WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED. 11 | 12 | Module Name: 13 | 14 | FlashMapHob.h 15 | 16 | Abstract: 17 | 18 | GUID used for Flash Map HOB entries in the HOB list. 19 | 20 | **/ 21 | 22 | #ifndef _FLASH_MAP_HOB_GUID_H_ 23 | #define _FLASH_MAP_HOB_GUID_H_ 24 | 25 | // 26 | // Definitions for Flash Map 27 | // 28 | #define EFI_FLASH_MAP_HOB_GUID \ 29 | { 0xb091e7d2, 0x5a0, 0x4198, {0x94, 0xf0, 0x74, 0xb7, 0xb8, 0xc5, 0x54, 0x59} } 30 | 31 | extern EFI_GUID gEfiFlashMapHobGuid; 32 | 33 | #endif // _FLASH_MAP_HOB_GUID_H_ 34 | -------------------------------------------------------------------------------- /Include/Duet/Guid/LdrMemoryDescriptor.h: -------------------------------------------------------------------------------- 1 | /** @file 2 | Guid is for GUIDED HOB of LDR memory descriptor. 3 | 4 | Copyright (c) 2011, Intel Corporation. All rights reserved.
5 | This program and the accompanying materials 6 | are licensed and made available under the terms and conditions of the BSD License 7 | which accompanies this distribution. The full text of the license may be found at 8 | http://opensource.org/licenses/bsd-license.php 9 | 10 | THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS, 11 | WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED. 12 | 13 | **/ 14 | 15 | #ifndef __LDR_MEMORY_DESCRIPTOR__ 16 | #define __LDR_MEMORY_DESCRIPTOR__ 17 | 18 | #define LDR_MEMORY_DESCRIPTOR_GUID \ 19 | { 0x7701d7e5, 0x7d1d, 0x4432, {0xa4, 0x68, 0x67, 0x3d, 0xab, 0x8a, 0xde, 0x60}} 20 | 21 | #pragma pack(1) 22 | 23 | typedef struct { 24 | EFI_HOB_GUID_TYPE Hob; 25 | UINTN MemDescCount; 26 | EFI_MEMORY_DESCRIPTOR *MemDesc; 27 | } MEMORY_DESC_HOB; 28 | 29 | #pragma pack() 30 | 31 | extern EFI_GUID gLdrMemoryDescriptorGuid; 32 | 33 | #endif 34 | -------------------------------------------------------------------------------- /Include/Grub2/Guid/ShimLock.h: -------------------------------------------------------------------------------- 1 | /** @file 2 | GRUB2 shim GUID values. 3 | 4 | Copyright (c) 2023, Mike Beaton. All rights reserved.
5 | SPDX-License-Identifier: BSD-3-Clause 6 | **/ 7 | 8 | #ifndef __SHIM_GUID_H 9 | #define __SHIM_GUID_H 10 | 11 | #include 12 | 13 | /// 14 | /// Shim lock protocol GUID. 15 | /// 16 | #define SHIM_LOCK_GUID \ 17 | { 0x605DAB50, 0xE046, 0x4300, \ 18 | { 0xAB, 0xB6, 0x3D, 0xD8, 0x10, 0xDD, 0x8B, 0x23 }} 19 | 20 | /// 21 | /// Exported GUID identifiers. 22 | /// 23 | extern EFI_GUID gShimLockGuid; 24 | 25 | #endif // __SHIM_GUID_H 26 | -------------------------------------------------------------------------------- /Include/Grub2/ShimVars.h: -------------------------------------------------------------------------------- 1 | /** @file 2 | GRUB2 shim values. 3 | 4 | Copyright (c) 2023, Mike Beaton. All rights reserved.
5 | SPDX-License-Identifier: BSD-3-Clause 6 | **/ 7 | 8 | #ifndef __SHIM_H 9 | #define __SHIM_H 10 | 11 | #include 12 | 13 | // 14 | // Variable to set to retain shim lock protocol for subsequent image loads. 15 | // 16 | #define SHIM_RETAIN_PROTOCOL L"ShimRetainProtocol" 17 | 18 | #endif // __SHIM_H 19 | -------------------------------------------------------------------------------- /Include/Intel/Guid/BlockIoVendor.h: -------------------------------------------------------------------------------- 1 | /** @file 2 | Guid for unrecognized EDD 3.0 device. 3 | 4 | Copyright (c) 2011 - 2018, Intel Corporation. All rights reserved.
5 | SPDX-License-Identifier: BSD-2-Clause-Patent 6 | 7 | **/ 8 | 9 | #ifndef __BLOCKIO_VENDOR_H__ 10 | #define __BLOCKIO_VENDOR_H__ 11 | 12 | // 13 | // Guid is to specifiy the unrecognized EDD 3.0 device. 14 | // 15 | #define BLOCKIO_VENDOR_GUID \ 16 | { 0xCF31FAC5, 0xC24E, 0x11D2, \ 17 | {0x85, 0xF3, 0x00, 0xA0, 0xC9, 0x3E, 0xC9, 0x3B }} 18 | 19 | typedef struct { 20 | VENDOR_DEVICE_PATH DevicePath; 21 | UINT8 LegacyDriveLetter; 22 | } BLOCKIO_VENDOR_DEVICE_PATH; 23 | 24 | extern GUID gBlockIoVendorGuid; 25 | 26 | #endif 27 | -------------------------------------------------------------------------------- /Include/Intel/Protocol/HotPlugDevice.h: -------------------------------------------------------------------------------- 1 | /** @file 2 | Copyright (c) 2004, Intel Corporation. All rights reserved.
3 | This program and the accompanying materials 4 | are licensed and made available under the terms and conditions of the BSD License 5 | which accompanies this distribution. The full text of the license may be found at 6 | http://opensource.org/licenses/bsd-license.php 7 | 8 | THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS, 9 | WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED. 10 | **/ 11 | 12 | #ifndef HOT_PLUG_DEVICE_H 13 | #define HOT_PLUG_DEVICE_H 14 | 15 | #define HOT_PLUG_DEVICE_GUID \ 16 | { 0x220AC432, 0x1D43, 0x49E5, \ 17 | { 0xA7, 0x4F, 0x4C, 0x9D, 0xA6, 0x7A, 0xD2, 0x3B } } 18 | 19 | extern EFI_GUID gEfiHotPlugDeviceGuid; 20 | 21 | #endif // HOT_PLUG_DEVICE_H 22 | -------------------------------------------------------------------------------- /Include/Microsoft/MicrosoftWindows.h: -------------------------------------------------------------------------------- 1 | /** @file 2 | Copyright (c) 2020, vit9696. All rights reserved. 3 | SPDX-License-Identifier: BSD-3-Clause 4 | **/ 5 | 6 | #ifndef MICROSOFT_WINDOWS_H 7 | #define MICROSOFT_WINDOWS_H 8 | 9 | /// 10 | /// Windows bootloader path. 11 | /// REF: https://docs.microsoft.com/en-us/windows-hardware/manufacture/desktop/bcd-system-store-settings-for-uefi 12 | /// 13 | #define MS_BOOTER_DEFAULT_FILE_NAME L"\\EFI\\Microsoft\\Boot\\bootmgfw.efi" 14 | 15 | #endif // MICROSOFT_WINDOWS_H 16 | -------------------------------------------------------------------------------- /Include/VMware/Protocol/VMwareDebug.h: -------------------------------------------------------------------------------- 1 | /** @file 2 | Copyright (C) 2020, vit9696. All rights reserved. 3 | 4 | All rights reserved. 5 | 6 | This program and the accompanying materials 7 | are licensed and made available under the terms and conditions of the BSD License 8 | which accompanies this distribution. The full text of the license may be found at 9 | http://opensource.org/licenses/bsd-license.php 10 | 11 | THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS, 12 | WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED. 13 | **/ 14 | 15 | #ifndef VMWARE_DEBUG_H 16 | #define VMWARE_DEBUG_H 17 | 18 | /** 19 | VMWare debugging protocol GUID. 20 | **/ 21 | #define VMWARE_DEBUG_PROTOCOL_GUID \ 22 | { 0x5127A9FE, 0x2274, 0x451D, \ 23 | { 0x90, 0xAA, 0xCB, 0xE8, 0x44, 0xCF, 0x55, 0x71 } } 24 | 25 | extern EFI_GUID gVMwareDebugProtocolGuid; 26 | 27 | /** 28 | Function to message on VMware virtual machines. 29 | **/ 30 | typedef 31 | VOID 32 | (EFIAPI *VMWARE_DEBUG_PROTOCOL_MESSAGE)( 33 | IN CONST CHAR8 *FormatString, 34 | IN VA_LIST Marker 35 | ); 36 | 37 | /** 38 | VMware debug protocol definition. 39 | **/ 40 | typedef struct VMWARE_DEBUG_PROTOCOL_ { 41 | VMWARE_DEBUG_PROTOCOL_MESSAGE Message; 42 | } VMWARE_DEBUG_PROTOCOL; 43 | 44 | #endif // VMWARE_DEBUG_H 45 | -------------------------------------------------------------------------------- /Include/VMware/Protocol/VMwareHda.h: -------------------------------------------------------------------------------- 1 | /** @file 2 | Copyright (C) 2020, vit9696. All rights reserved. 3 | 4 | All rights reserved. 5 | 6 | This program and the accompanying materials 7 | are licensed and made available under the terms and conditions of the BSD License 8 | which accompanies this distribution. The full text of the license may be found at 9 | http://opensource.org/licenses/bsd-license.php 10 | 11 | THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS, 12 | WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED. 13 | **/ 14 | 15 | #ifndef VMWARE_HDA_H 16 | #define VMWARE_HDA_H 17 | 18 | /** 19 | VMWare Intel HDA protocol GUID. 20 | **/ 21 | #define VMWARE_INTEL_HDA_PROTOCOL_GUID \ 22 | { 0x94E46BC2, 0x9127, 0x11DF, \ 23 | { 0xBF, 0xCE, 0xE7, 0x83, 0xCA, 0x2A, 0x34, 0xBE } } 24 | 25 | extern EFI_GUID gVMwareHdaProtocolGuid; 26 | 27 | #endif // VMWARE_HDA_H 28 | -------------------------------------------------------------------------------- /Include/VMware/Protocol/VMwareMac.h: -------------------------------------------------------------------------------- 1 | /** @file 2 | Copyright (C) 2020, vit9696. All rights reserved. 3 | 4 | All rights reserved. 5 | 6 | This program and the accompanying materials 7 | are licensed and made available under the terms and conditions of the BSD License 8 | which accompanies this distribution. The full text of the license may be found at 9 | http://opensource.org/licenses/bsd-license.php 10 | 11 | THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS, 12 | WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED. 13 | **/ 14 | 15 | #ifndef VMWARE_MAC_H 16 | #define VMWARE_MAC_H 17 | 18 | /** 19 | VMWare Mac OS X server or 10.7+ protocol GUID. 20 | Installed as NULL on the legit image handle. 21 | **/ 22 | #define VMWARE_MAC_PROTOCOL_GUID \ 23 | { 0x03F38E56, 0x8231, 0x4469, \ 24 | { 0x94, 0xED, 0x82, 0xAE, 0x53, 0x15, 0x83, 0x4F } } 25 | 26 | extern EFI_GUID gVMwareMacProtocolGuid; 27 | 28 | #endif // VMWARE_MAC_H 29 | -------------------------------------------------------------------------------- /Legacy/BinDrivers/HfsPlus.inf: -------------------------------------------------------------------------------- 1 | ## @file 2 | # 3 | # HFS+ Filesystem Driver 4 | # 5 | ## 6 | 7 | [Defines] 8 | INF_VERSION = 0x00010005 9 | BASE_NAME = HfsPlus 10 | FILE_GUID = 6839D927-3CAC-4CF9-B05A-400A623B327E 11 | MODULE_TYPE = UEFI_DRIVER 12 | VERSION_STRING = 1.0 13 | 14 | 15 | # 16 | # The following information is for reference only and not required by the build tools. 17 | # 18 | # VALID_ARCHITECTURES = IA32 X64 19 | # 20 | 21 | [Binaries.Ia32] 22 | PE32|Ia32/HfsPlusLegacy.efi|* 23 | 24 | [Binaries.X64] 25 | PE32|X64/HfsPlusLegacy.efi|* 26 | -------------------------------------------------------------------------------- /Legacy/BinDrivers/OpenUsbKbDxe.inf: -------------------------------------------------------------------------------- 1 | ## @file 2 | # 3 | # OpenCore USB Keyboard Driver 4 | # 5 | ## 6 | 7 | [Defines] 8 | INF_VERSION = 0x00010005 9 | BASE_NAME = OpenUsbKbDxe 10 | FILE_GUID = B4B18806-349E-4305-A7F3-2BD23C8FC1B2 11 | MODULE_TYPE = UEFI_DRIVER 12 | VERSION_STRING = 1.0 13 | 14 | 15 | # 16 | # The following information is for reference only and not required by the build tools. 17 | # 18 | # VALID_ARCHITECTURES = IA32 X64 19 | # 20 | 21 | [Binaries.Ia32] 22 | PE32|Ia32/OpenUsbKbDxe.efi|* 23 | 24 | [Binaries.X64] 25 | PE32|X64/OpenUsbKbDxe.efi|* 26 | -------------------------------------------------------------------------------- /Legacy/BinDrivers/README.md: -------------------------------------------------------------------------------- 1 | BinDrivers 2 | ========== 3 | 4 | Put binary drivers here and enable them in DuetPkg.fdf. 5 | -------------------------------------------------------------------------------- /Legacy/BootLoader/Makefile: -------------------------------------------------------------------------------- 1 | DESTDIR ?= bin 2 | BOOTSECTORS = boot0 boot1f32 3 | MKDIR ?= mkdir 4 | 5 | BOOTSECTOR_SRCS = $(addsuffix .nasm, $(BOOTSECTORS)) 6 | BOOTSECTOR_BINS = $(addprefix $(DESTDIR)/, $(BOOTSECTORS)) 7 | 8 | ifdef NASM_PREFIX 9 | NASM=$(NASM_PREFIX)nasm 10 | else 11 | NASM=nasm 12 | endif 13 | 14 | all: $(BOOTSECTOR_BINS) 15 | 16 | $(BOOTSECTOR_BINS): $(BOOTSECTOR_SRCS) 17 | @$(MKDIR) -p bin 18 | @echo "[NASM] $(@F).nasm -> $@" 19 | @"$(NASM)" $(@F).nasm -f bin -o $@ 20 | 21 | clean: 22 | rm -f $(BOOTSECTOR_BINS) *~ 23 | -------------------------------------------------------------------------------- /Legacy/BootPlatform/BdsDxe/Bds.h: -------------------------------------------------------------------------------- 1 | /** @file 2 | Head file for BDS Architectural Protocol implementation 3 | 4 | Copyright (c) 2004 - 2018, Intel Corporation. All rights reserved.
5 | SPDX-License-Identifier: BSD-2-Clause-Patent 6 | 7 | **/ 8 | 9 | #ifndef _BDS_MODULE_H_ 10 | #define _BDS_MODULE_H_ 11 | 12 | #include 13 | 14 | /** 15 | 16 | Install Boot Device Selection Protocol 17 | 18 | @param ImageHandle The image handle. 19 | @param SystemTable The system table. 20 | 21 | @retval EFI_SUCEESS BDS has finished initializing. 22 | Return the dispatcher and recall BDS.Entry 23 | @retval Other Return status from AllocatePool() or gBS->InstallProtocolInterface 24 | 25 | **/ 26 | EFI_STATUS 27 | EFIAPI 28 | BdsInitialize ( 29 | IN EFI_HANDLE ImageHandle, 30 | IN EFI_SYSTEM_TABLE *SystemTable 31 | ); 32 | 33 | /** 34 | 35 | Service routine for BdsInstance->Entry(). Devices are connected, the 36 | consoles are initialized, and the boot options are tried. 37 | 38 | @param This Protocol Instance structure. 39 | 40 | **/ 41 | VOID 42 | EFIAPI 43 | BdsEntry ( 44 | IN EFI_BDS_ARCH_PROTOCOL *This 45 | ); 46 | 47 | #endif 48 | -------------------------------------------------------------------------------- /Legacy/BootPlatform/BdsDxe/BdsDxe.uni: -------------------------------------------------------------------------------- 1 | // /** @file 2 | // BDSDxe module is core driver for BDS phase. 3 | // 4 | // When DxeCore dispatching all DXE driver, this module will produce architecture protocol 5 | // gEfiBdsArchProtocolGuid. After DxeCore finish dispatching, DxeCore will invoke Entry 6 | // interface of protocol gEfiBdsArchProtocolGuid, then BDS phase is entered. 7 | // 8 | // Copyright (c) 2015 - 2018, Intel Corporation. All rights reserved.
9 | // SPDX-License-Identifier: BSD-2-Clause-Patent 10 | // 11 | // **/ 12 | 13 | 14 | #string STR_MODULE_ABSTRACT #language en-US "BdsDxe module is core driver for BDS phase" 15 | 16 | #string STR_MODULE_DESCRIPTION #language en-US "When DxeCore dispatching all DXE driver, this module will produce architecture protocol gEfiBdsArchProtocolGuid. After DxeCore finishes dispatching, DxeCore will invoke the Entry interface of protocol gEfiBdsArchProtocolGuid. Then BDS phase is entered." 17 | -------------------------------------------------------------------------------- /Legacy/BootPlatform/BdsDxe/BdsDxeExtra.uni: -------------------------------------------------------------------------------- 1 | // /** @file 2 | // BdsDxe Localized Strings and Content 3 | // 4 | // Copyright (c) 2015 - 2018, Intel Corporation. All rights reserved.
5 | // 6 | // SPDX-License-Identifier: BSD-2-Clause-Patent 7 | // 8 | // **/ 9 | 10 | #string STR_PROPERTIES_MODULE_NAME 11 | #language en-US 12 | "Boot Device Selection Core DXE Driver" 13 | -------------------------------------------------------------------------------- /Legacy/BootPlatform/BlockIoDxe/BlockIoDxe.uni: -------------------------------------------------------------------------------- 1 | // /** @file 2 | // BIOS Block IO module. 3 | // 4 | // This is the UEFI driver to thunk legacy BIOS int13 interface into UEFI block IO interface. 5 | // Once connected it installs EfiBlockIoProtocol on top of legacy BIOS int13. 6 | // 7 | // Copyright (c) 1999 - 2018, Intel Corporation. All rights reserved.
8 | // 9 | // SPDX-License-Identifier: BSD-2-Clause-Patent 10 | // 11 | // **/ 12 | 13 | 14 | #string STR_MODULE_ABSTRACT #language en-US "BIOS Block IO module" 15 | 16 | #string STR_MODULE_DESCRIPTION #language en-US "This is the UEFI driver to thunk legacy BIOS int13 interface into the UEFI block IO interface. Once connected, it installs EfiBlockIoProtocol on top of legacy BIOS int13." 17 | 18 | -------------------------------------------------------------------------------- /Legacy/BootPlatform/BlockIoDxe/BlockIoDxeExtra.uni: -------------------------------------------------------------------------------- 1 | // /** @file 2 | // BlockIoDxe Localized Strings and Content 3 | // 4 | // Copyright (c) 2013 - 2018, Intel Corporation. All rights reserved.
5 | // 6 | // SPDX-License-Identifier: BSD-2-Clause-Patent 7 | // 8 | // **/ 9 | 10 | #string STR_PROPERTIES_MODULE_NAME 11 | #language en-US 12 | "Legacy Block I/O DXE Driver" 13 | 14 | 15 | -------------------------------------------------------------------------------- /Legacy/BootPlatform/DxeIpl/Ia32/EnterDxeCore.c: -------------------------------------------------------------------------------- 1 | /** @file 2 | IA32 specific code to enter DxeCore 3 | 4 | Copyright (c) 2006 - 2007, Intel Corporation. All rights reserved.
5 | This program and the accompanying materials 6 | are licensed and made available under the terms and conditions of the BSD License 7 | which accompanies this distribution. The full text of the license may be found at 8 | http://opensource.org/licenses/bsd-license.php 9 | 10 | THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS, 11 | WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED. 12 | 13 | **/ 14 | 15 | #include "DxeIpl.h" 16 | 17 | VOID 18 | EnterDxeMain ( 19 | IN VOID *StackTop, 20 | IN VOID *DxeCoreEntryPoint, 21 | IN VOID *Hob, 22 | IN VOID *PageTable 23 | ) 24 | { 25 | SwitchStack ( 26 | (SWITCH_STACK_ENTRY_POINT)(UINTN)DxeCoreEntryPoint, 27 | Hob, 28 | NULL, 29 | StackTop 30 | ); 31 | } 32 | -------------------------------------------------------------------------------- /Legacy/BootPlatform/DxeIpl/LegacyTable.h: -------------------------------------------------------------------------------- 1 | /** @file 2 | 3 | Copyright (c) 2006, Intel Corporation. All rights reserved.
4 | This program and the accompanying materials 5 | are licensed and made available under the terms and conditions of the BSD License 6 | which accompanies this distribution. The full text of the license may be found at 7 | http://opensource.org/licenses/bsd-license.php 8 | 9 | THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS, 10 | WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED. 11 | 12 | Module Name: 13 | LegacyTable.h 14 | 15 | Abstract: 16 | 17 | Revision History: 18 | 19 | **/ 20 | 21 | #ifndef _DXELDR_LEGACY_TABLE_H_ 22 | #define _DXELDR_LEGACY_TABLE_H_ 23 | 24 | #include "HobGeneration.h" 25 | 26 | VOID 27 | PrepareHobLegacyTable ( 28 | IN HOB_TEMPLATE *Hob 29 | ); 30 | 31 | #endif 32 | -------------------------------------------------------------------------------- /Legacy/BootPlatform/DxeIpl/X64/EnterDxeCore.c: -------------------------------------------------------------------------------- 1 | /** @file 2 | x64 specific code to enter DxeCore 3 | 4 | Copyright (c) 2006 - 2007, Intel Corporation. All rights reserved.
5 | This program and the accompanying materials 6 | are licensed and made available under the terms and conditions of the BSD License 7 | which accompanies this distribution. The full text of the license may be found at 8 | http://opensource.org/licenses/bsd-license.php 9 | 10 | THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS, 11 | WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED. 12 | 13 | **/ 14 | 15 | #include "DxeIpl.h" 16 | 17 | VOID 18 | EnterDxeMain ( 19 | IN VOID *StackTop, 20 | IN VOID *DxeCoreEntryPoint, 21 | IN VOID *Hob, 22 | IN VOID *PageTable 23 | ) 24 | { 25 | AsmWriteCr3 ((UINTN)PageTable); 26 | SwitchStack ( 27 | (SWITCH_STACK_ENTRY_POINT)(UINTN)DxeCoreEntryPoint, 28 | Hob, 29 | NULL, 30 | StackTop 31 | ); 32 | } 33 | -------------------------------------------------------------------------------- /Legacy/BootPlatform/GraphicsConsoleDxe/GraphicsConsoleDxe.uni: -------------------------------------------------------------------------------- 1 | // /** @file 2 | // Console support on graphic devices. 3 | // 4 | // This driver will install Simple Text Output protocol by consuming Graphices Output 5 | // protocol or UGA Draw protocol on graphic devices. 6 | // 7 | // Copyright (c) 2006 - 2014, Intel Corporation. All rights reserved.
8 | // 9 | // SPDX-License-Identifier: BSD-2-Clause-Patent 10 | // 11 | // **/ 12 | 13 | 14 | #string STR_MODULE_ABSTRACT #language en-US "Console support on graphic devices" 15 | 16 | #string STR_MODULE_DESCRIPTION #language en-US "This driver will install SimpleTextOutputProtocol by consuming GraphicesOutput\n" 17 | "Protocol or UgaDrawProtocol on graphics devices." 18 | 19 | -------------------------------------------------------------------------------- /Legacy/BootPlatform/GraphicsConsoleDxe/GraphicsConsoleDxeExtra.uni: -------------------------------------------------------------------------------- 1 | // /** @file 2 | // GraphicsConsoleDxe Localized Strings and Content 3 | // 4 | // Copyright (c) 2013 - 2018, Intel Corporation. All rights reserved.
5 | // 6 | // SPDX-License-Identifier: BSD-2-Clause-Patent 7 | // 8 | // **/ 9 | 10 | #string STR_PROPERTIES_MODULE_NAME 11 | #language en-US 12 | "Graphics Console DXE Driver" 13 | 14 | 15 | -------------------------------------------------------------------------------- /Legacy/BootPlatform/PciBusNoEnumerationDxe/PciEnumerator.c: -------------------------------------------------------------------------------- 1 | /*++ 2 | 3 | Copyright (c) 2005 - 2006, Intel Corporation. All rights reserved.
4 | This program and the accompanying materials 5 | are licensed and made available under the terms and conditions of the BSD License 6 | which accompanies this distribution. The full text of the license may be found at 7 | http://opensource.org/licenses/bsd-license.php 8 | 9 | THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS, 10 | WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED. 11 | 12 | Module Name: 13 | 14 | PciEnumerator.c 15 | 16 | Abstract: 17 | 18 | PCI Bus Driver 19 | 20 | Revision History 21 | 22 | --*/ 23 | 24 | #include "PciBus.h" 25 | 26 | EFI_STATUS 27 | PciEnumerator ( 28 | IN EFI_HANDLE Controller 29 | ) 30 | 31 | /*++ 32 | 33 | Routine Description: 34 | 35 | This routine is used to enumerate entire pci bus system 36 | in a given platform 37 | 38 | Arguments: 39 | 40 | Returns: 41 | 42 | None 43 | 44 | --*/ 45 | { 46 | // 47 | // This PCI bus driver depends on the legacy BIOS 48 | // to do the resource allocation 49 | // 50 | gFullEnumeration = FALSE; 51 | 52 | return PciEnumeratorLight (Controller); 53 | } 54 | -------------------------------------------------------------------------------- /Legacy/BootPlatform/PciBusNoEnumerationDxe/PciEnumerator.h: -------------------------------------------------------------------------------- 1 | /*++ 2 | 3 | Copyright (c) 2005 - 2006, Intel Corporation. All rights reserved.
4 | This program and the accompanying materials 5 | are licensed and made available under the terms and conditions of the BSD License 6 | which accompanies this distribution. The full text of the license may be found at 7 | http://opensource.org/licenses/bsd-license.php 8 | 9 | THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS, 10 | WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED. 11 | 12 | Module Name: 13 | 14 | PciEnumerator.h 15 | 16 | Abstract: 17 | 18 | PCI Bus Driver 19 | 20 | Revision History 21 | 22 | --*/ 23 | 24 | #ifndef _EFI_PCI_ENUMERATOR_H 25 | #define _EFI_PCI_ENUMERATOR_H 26 | 27 | EFI_STATUS 28 | PciEnumerator ( 29 | IN EFI_HANDLE Controller 30 | ) 31 | 32 | /*++ 33 | 34 | Routine Description: 35 | 36 | TODO: Add function description 37 | 38 | Arguments: 39 | 40 | Controller - TODO: add argument description 41 | 42 | Returns: 43 | 44 | TODO: add return values 45 | 46 | --*/ 47 | ; 48 | 49 | #endif 50 | -------------------------------------------------------------------------------- /Legacy/BootPlatform/PciBusNoEnumerationDxe/PciIo.h: -------------------------------------------------------------------------------- 1 | /*++ 2 | 3 | Copyright (c) 2005 - 2006, Intel Corporation. All rights reserved.
4 | This program and the accompanying materials 5 | are licensed and made available under the terms and conditions of the BSD License 6 | which accompanies this distribution. The full text of the license may be found at 7 | http://opensource.org/licenses/bsd-license.php 8 | 9 | THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS, 10 | WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED. 11 | 12 | Module Name: 13 | 14 | PciIo.h 15 | 16 | Abstract: 17 | 18 | PCI Bus Driver 19 | 20 | Revision History 21 | 22 | --*/ 23 | 24 | #ifndef _EFI_PCI_IO_PROTOCOL_H 25 | #define _EFI_PCI_IO_PROTOCOL_H 26 | 27 | EFI_STATUS 28 | InitializePciIoInstance ( 29 | PCI_IO_DEVICE *PciIoDevice 30 | ) 31 | 32 | /*++ 33 | 34 | Routine Description: 35 | 36 | TODO: Add function description 37 | 38 | Arguments: 39 | 40 | PciIoDevice - TODO: add argument description 41 | 42 | Returns: 43 | 44 | TODO: add return values 45 | 46 | --*/ 47 | ; 48 | 49 | #endif 50 | -------------------------------------------------------------------------------- /Legacy/BootPlatform/PciBusNoEnumerationDxe/PciPowerManagement.h: -------------------------------------------------------------------------------- 1 | /*++ 2 | 3 | Copyright (c) 2005 - 2006, Intel Corporation. All rights reserved.
4 | This program and the accompanying materials 5 | are licensed and made available under the terms and conditions of the BSD License 6 | which accompanies this distribution. The full text of the license may be found at 7 | http://opensource.org/licenses/bsd-license.php 8 | 9 | THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS, 10 | WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED. 11 | 12 | Module Name: 13 | 14 | PciPowerManagement.h 15 | 16 | Abstract: 17 | 18 | PCI Bus Driver 19 | 20 | Revision History 21 | 22 | --*/ 23 | 24 | #ifndef _EFI_PCI_POWER_MANAGEMENT_H 25 | #define _EFI_PCI_POWER_MANAGEMENT_H 26 | 27 | EFI_STATUS 28 | EFIAPI 29 | ResetPowerManagementFeature ( 30 | IN PCI_IO_DEVICE *PciIoDevice 31 | ) 32 | 33 | /*++ 34 | 35 | Routine Description: 36 | 37 | TODO: Add function description 38 | 39 | Arguments: 40 | 41 | PciIoDevice - TODO: add argument description 42 | 43 | Returns: 44 | 45 | TODO: add return values 46 | 47 | --*/ 48 | ; 49 | 50 | #endif 51 | -------------------------------------------------------------------------------- /Legacy/BootPlatform/SmbiosGenDxe/SmbiosGenStrings.uni: -------------------------------------------------------------------------------- 1 | // *++ 2 | // 3 | // Copyright (c) 2006, Intel Corporation. All rights reserved.
4 | // This program and the accompanying materials 5 | // are licensed and made available under the terms and conditions of the BSD License 6 | // which accompanies this distribution. The full text of the license may be found at 7 | // http://opensource.org/licenses/bsd-license.php 8 | // 9 | // THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS, 10 | // WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED. 11 | // 12 | // Module Name: 13 | // 14 | // DataHubGenStrings.uni 15 | // 16 | // Abstract: 17 | // 18 | // String definitions for DataHubGen file. 19 | // 20 | // Revision History: 21 | // 22 | // --*/ 23 | 24 | /=# 25 | 26 | #langdef en-US "English" 27 | 28 | #string STR_UNKNOWN #language en-US "Unknown" 29 | 30 | 31 | 32 | 33 | -------------------------------------------------------------------------------- /Legacy/BootSector/Makefile: -------------------------------------------------------------------------------- 1 | NASM ?= nasm 2 | MKDIR ?= mkdir 3 | RM ?= /bin/rm 4 | PAGE_TABLE ?= 0x60000 5 | PAGE_TABLE_BLOCKIO ?= 0x60000 6 | 7 | BINDIR=bin 8 | PRODUCTS32=$(BINDIR)/StartIA32.com $(BINDIR)/EfiIA32.com 9 | PRODUCTS64=$(BINDIR)/StartX64_$(PAGE_TABLE).com $(BINDIR)/StartX64_$(PAGE_TABLE_BLOCKIO).com $(BINDIR)/EfiX64.com 10 | 11 | all: $(PRODUCTS32) $(PRODUCTS64) 12 | 13 | clean: 14 | $(RM) -f $(BINDIR)/*.com 15 | 16 | $(BINDIR)/StartIA32.com: start.nasm 17 | @$(MKDIR) -p bin 18 | $(NASM) -f bin -o $@ $< 19 | 20 | $(BINDIR)/EfiIA32.com: efi32.nasm 21 | @$(MKDIR) -p bin 22 | $(NASM) -f bin -o $@ $< 23 | 24 | $(BINDIR)/StartX64_$(PAGE_TABLE).com: start.nasm 25 | @$(MKDIR) -p bin 26 | $(NASM) -DX64 -DPAGE_TABLE=$(PAGE_TABLE) -f bin -o $@ $< 27 | 28 | $(BINDIR)/StartX64_$(PAGE_TABLE_BLOCKIO).com: start.nasm 29 | @$(MKDIR) -p bin 30 | $(NASM) -DX64 -DPAGE_TABLE=$(PAGE_TABLE_BLOCKIO) -f bin -o $@ $< 31 | 32 | $(BINDIR)/EfiX64.com: efi64.nasm 33 | @$(MKDIR) -p bin 34 | $(NASM) -f bin -o $@ $< 35 | -------------------------------------------------------------------------------- /Library/OcAfterBootCompatLib/RelocationCallGate.h: -------------------------------------------------------------------------------- 1 | 0xfa, 0xfc, 0x4c, 0x89, 0xc6, 0xbf, 0x00, 0x00, 0x10, 0x00, 0xf3, 0x48, 2 | 0xa5, 0x48, 0x89, 0xf4, 0x4c, 0x89, 0xc9, 0xe9, 0xe8, 0xfe, 0xff, 0xff 3 | -------------------------------------------------------------------------------- /Library/OcAppleChunklistLib/OcAppleChunklistLib.inf: -------------------------------------------------------------------------------- 1 | ## @file 2 | # Copyright (C) 2019, Goldfish64. All rights reserved. 3 | # 4 | # This program and the accompanying materials 5 | # are licensed and made available under the terms and conditions of the BSD License 6 | # which accompanies this distribution. The full text of the license may be found at 7 | # http://opensource.org/licenses/bsd-license.php 8 | # 9 | # THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS, 10 | # WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED. 11 | # 12 | ## 13 | 14 | [Defines] 15 | INF_VERSION = 0x00010005 16 | BASE_NAME = OcAppleChunklistLib 17 | FILE_GUID = D891DF81-0C83-47FF-ABAD-546050E1A07F 18 | MODULE_TYPE = BASE 19 | VERSION_STRING = 1.0 20 | LIBRARY_CLASS = OcAppleChunklistLib|PEIM DXE_DRIVER DXE_RUNTIME_DRIVER UEFI_DRIVER UEFI_APPLICATION DXE_SMM_DRIVER 21 | 22 | [Packages] 23 | MdePkg/MdePkg.dec 24 | OpenCorePkg/OpenCorePkg.dec 25 | 26 | [LibraryClasses] 27 | BaseMemoryLib 28 | DebugLib 29 | OcAppleRamDiskLib 30 | OcCryptoLib 31 | UefiLib 32 | 33 | [Sources] 34 | OcAppleChunklistLib.c 35 | -------------------------------------------------------------------------------- /Library/OcAppleImg4Lib/libDERImg4/Img4oids.h: -------------------------------------------------------------------------------- 1 | /** @file 2 | Copyright (C) 2019, Download-Fritz. All rights reserved. 3 | 4 | This program and the accompanying materials 5 | are licensed and made available under the terms and conditions of the BSD License 6 | which accompanies this distribution. The full text of the license may be found at 7 | http://opensource.org/licenses/bsd-license.php 8 | 9 | THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS, 10 | WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED. 11 | 12 | **/ 13 | 14 | #ifndef IMG4_OIDS_H 15 | #define IMG4_OIDS_H 16 | 17 | #include "libDER/libDER.h" 18 | 19 | #ifdef __cplusplus 20 | extern "C" { 21 | #endif 22 | 23 | extern const DERItem 24 | oidAppleImg4ManifestCertSpec, 25 | oidSha384Rsa, 26 | oidSha512Rsa; 27 | 28 | #ifdef __cplusplus 29 | } 30 | #endif 31 | 32 | #endif // IMG4_OIDS_H 33 | -------------------------------------------------------------------------------- /Library/OcAppleKeysLib/OcAppleKeysLib.inf: -------------------------------------------------------------------------------- 1 | ## @file 2 | # OcAppleVerificationLib 3 | # 4 | # Copyright (c) 2017-2018, savvas 5 | # 6 | # All rights reserved. 7 | # 8 | # This program and the accompanying materials 9 | # are licensed and made available under the terms and conditions of the BSD License 10 | # which accompanies this distribution. The full text of the license may be found at 11 | # http://opensource.org/licenses/bsd-license.php 12 | # 13 | # THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS, 14 | # WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED. 15 | # 16 | ## 17 | 18 | [Defines] 19 | INF_VERSION = 0x00010005 20 | BASE_NAME = OcAppleKeysLib 21 | FILE_GUID = 1CADD588-89D4-464C-92DC-FA0ABE350B16 22 | MODULE_TYPE = DXE_DRIVER 23 | VERSION_STRING = 1.0 24 | LIBRARY_CLASS = OcAppleKeysLib|DXE_CORE DXE_DRIVER DXE_RUNTIME_DRIVER DXE_SAL_DRIVER DXE_SMM_DRIVER SMM_CORE UEFI_APPLICATION UEFI_DRIVER 25 | 26 | 27 | # 28 | # VALID_ARCHITECTURES = X64 29 | # 30 | 31 | [Sources] 32 | OcAppleKeysLib.c 33 | 34 | [Packages] 35 | MdePkg/MdePkg.dec 36 | OpenCorePkg/OpenCorePkg.dec 37 | 38 | [LibraryClasses] 39 | BaseLib 40 | 41 | -------------------------------------------------------------------------------- /Library/OcAppleRamDiskLib/OcAppleRamDiskLib.inf: -------------------------------------------------------------------------------- 1 | ## @file 2 | # Apple RAM Disk library. 3 | # 4 | # Copyright (C) 2019, Download-Fritz. All rights reserved.
5 | # This program and the accompanying materials 6 | # are licensed and made available under the terms and conditions of the BSD License 7 | # which accompanies this distribution. The full text of the license may be found at 8 | # http://opensource.org/licenses/bsd-license.php 9 | # 10 | # THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS, 11 | # WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED. 12 | # 13 | ## 14 | 15 | [Defines] 16 | INF_VERSION = 0x00010005 17 | BASE_NAME = OcAppleRamDiskLib 18 | FILE_GUID = 57734401-29DB-49C6-816C-BF333A72BBA3 19 | MODULE_TYPE = DXE_DRIVER 20 | VERSION_STRING = 1.0 21 | LIBRARY_CLASS = OcAppleRamDiskLib|DXE_CORE DXE_DRIVER DXE_RUNTIME_DRIVER DXE_SAL_DRIVER DXE_SMM_DRIVER SMM_CORE UEFI_APPLICATION UEFI_DRIVER 22 | 23 | [Packages] 24 | MdePkg/MdePkg.dec 25 | OpenCorePkg/OpenCorePkg.dec 26 | 27 | [LibraryClasses] 28 | BaseMemoryLib 29 | DebugLib 30 | MemoryAllocationLib 31 | OcMemoryLib 32 | UefiBootServicesTableLib 33 | 34 | [Sources] 35 | OcAppleRamDiskLib.c 36 | -------------------------------------------------------------------------------- /Library/OcApplicationEntryPoint/UefiApplicationEntryPoint.uni: -------------------------------------------------------------------------------- 1 | // /** @file 2 | // Module entry point library for UEFI Application. 3 | // 4 | // Module entry point library for UEFI Application. 5 | // 6 | // Copyright (c) 2007 - 2014, Intel Corporation. All rights reserved.
7 | // 8 | // SPDX-License-Identifier: BSD-2-Clause-Patent 9 | // 10 | // **/ 11 | 12 | 13 | #string STR_MODULE_ABSTRACT #language en-US "Module entry point library for UEFI Application" 14 | 15 | #string STR_MODULE_DESCRIPTION #language en-US "Module entry point library for UEFI Application." 16 | -------------------------------------------------------------------------------- /Library/OcBlitLib/OcBlitLib.inf: -------------------------------------------------------------------------------- 1 | ## @file 2 | # FrameBufferBltLib - Library to perform blt operations on a frame buffer. 3 | # 4 | # Copyright (c) 2006 - 2016, Intel Corporation. All rights reserved.
5 | # 6 | # SPDX-License-Identifier: BSD-2-Clause-Patent 7 | # 8 | ## 9 | 10 | [Defines] 11 | INF_VERSION = 0x00010005 12 | BASE_NAME = OcBlitLib 13 | FILE_GUID = C857ECE4-F54F-43B8-AEFA-F63B2AAD8367 14 | MODULE_TYPE = UEFI_DRIVER 15 | VERSION_STRING = 1.0 16 | LIBRARY_CLASS = OcBlitLib 17 | 18 | [Sources.common] 19 | BlitBufferToVideo.c 20 | BlitInternal.h 21 | BlitVideoToBuffer.c 22 | OcBlitLib.c 23 | 24 | [LibraryClasses] 25 | BaseLib 26 | BaseMemoryLib 27 | DebugLib 28 | 29 | [Packages] 30 | OpenCorePkg/OpenCorePkg.dec 31 | MdePkg/MdePkg.dec 32 | -------------------------------------------------------------------------------- /Library/OcBootServicesTableLib/OcBootServicesTableLib.inf: -------------------------------------------------------------------------------- 1 | ## @file 2 | # UEFI Boot Services Table Library implementation with override support. 3 | # 4 | # Copyright (c) 2020, vit9696. All rights reserved.
5 | # 6 | # SPDX-License-Identifier: BSD-2-Clause-Patent 7 | # 8 | # 9 | ## 10 | 11 | [Defines] 12 | INF_VERSION = 0x00010005 13 | BASE_NAME = OcBootServicesTableLib 14 | FILE_GUID = 64CCF528-1707-4DCB-84B7-EA02FEBB6A16 15 | MODULE_TYPE = UEFI_DRIVER 16 | VERSION_STRING = 1.0 17 | LIBRARY_CLASS = OcBootServicesTableLib|DXE_CORE DXE_DRIVER DXE_RUNTIME_DRIVER DXE_SMM_DRIVER UEFI_APPLICATION UEFI_DRIVER SMM_CORE 18 | 19 | CONSTRUCTOR = OcBootServicesTableLibConstructor 20 | DESTRUCTOR = OcBootServicesTableLibDestructor 21 | 22 | # 23 | # VALID_ARCHITECTURES = IA32 X64 EBC 24 | # 25 | 26 | [Sources] 27 | OcBootServicesTableLib.c 28 | 29 | [Packages] 30 | MdePkg/MdePkg.dec 31 | OpenCorePkg/OpenCorePkg.dec 32 | 33 | [Protocols] 34 | gEfiDevicePathProtocolGuid 35 | 36 | [LibraryClasses] 37 | BaseMemoryLib 38 | DebugLib 39 | DevicePathLib 40 | -------------------------------------------------------------------------------- /Library/OcBootServicesTableLib/UefiBootServicesTableLib.c: -------------------------------------------------------------------------------- 1 | /** @file 2 | Dummy library for dependency ordering. 3 | 4 | Copyright (c) 2020, vit9696. All rights reserved.
5 | SPDX-License-Identifier: BSD-2-Clause-Patent 6 | 7 | **/ 8 | -------------------------------------------------------------------------------- /Library/OcBootServicesTableLib/UefiBootServicesTableLib.inf: -------------------------------------------------------------------------------- 1 | ## @file 2 | # UEFI Boot Services Table Library implementation with override support. 3 | # 4 | # Copyright (c) 2020, vit9696. All rights reserved.
5 | # 6 | # SPDX-License-Identifier: BSD-2-Clause-Patent 7 | # 8 | # 9 | ## 10 | 11 | [Defines] 12 | INF_VERSION = 0x00010005 13 | BASE_NAME = UefiBootServicesTableLib 14 | FILE_GUID = FEA6B92A-B21D-46DE-A74C-CDFB334CFBE3 15 | MODULE_TYPE = UEFI_DRIVER 16 | VERSION_STRING = 1.0 17 | LIBRARY_CLASS = UefiBootServicesTableLib|DXE_CORE DXE_DRIVER DXE_RUNTIME_DRIVER DXE_SMM_DRIVER UEFI_APPLICATION UEFI_DRIVER SMM_CORE 18 | 19 | 20 | # 21 | # VALID_ARCHITECTURES = IA32 X64 EBC 22 | # 23 | 24 | [Sources] 25 | UefiBootServicesTableLib.c 26 | 27 | [Packages] 28 | MdePkg/MdePkg.dec 29 | OpenCorePkg/OpenCorePkg.dec 30 | 31 | [Protocols] 32 | gEfiDevicePathProtocolGuid 33 | gEfiLoadedImageProtocolGuid 34 | 35 | [LibraryClasses] 36 | BaseMemoryLib 37 | DebugLib 38 | OcBootServicesTableLib 39 | # Libraries supporting local installation go here 40 | OcConsoleControlEntryModeLocalLib 41 | OcUnicodeCollationEngLocalLib 42 | OcHiiDatabaseLocalLib 43 | -------------------------------------------------------------------------------- /Library/OcCompilerIntrinsicsLib/OcCompilerIntrinsicsLib.inf: -------------------------------------------------------------------------------- 1 | ## @file 2 | # Compiler intrinsic support library. 3 | # 4 | # Copyright (c) 2020, vit9696. All rights reserved. 5 | # SPDX-License-Identifier: BSD-3-Clause 6 | ## 7 | 8 | [Defines] 9 | INF_VERSION = 1.5 10 | BASE_NAME = OcCompilerIntrinsicsLib 11 | FILE_GUID = AB87D1A9-F9EC-4B66-80EE-E88A15EAA254 12 | MODULE_TYPE = BASE 13 | VERSION_STRING = 1.0 14 | LIBRARY_CLASS = OcCompilerIntrinsicsLib 15 | 16 | [BuildOptions] 17 | # FIXME: MSVC compiler flags may need more thought. 18 | MSFT:*_*_*_CC_FLAGS = /GL- /Oi- 19 | 20 | [Sources] 21 | OcCompilerIntrinsicsLib.c 22 | 23 | [Sources.Ia32] 24 | MsvcMath32.c | MSFT 25 | 26 | [Packages] 27 | MdePkg/MdePkg.dec 28 | OpenCorePkg/OpenCorePkg.dec 29 | -------------------------------------------------------------------------------- /Library/OcCompressionLib/zlib/diff/README.md: -------------------------------------------------------------------------------- 1 | zlib for OpenCorePkg 2 | ============================ 3 | 4 | OcCompressionLib would not be possible without the original [zlib](https://github.com/madler/zlib) project written by [Mark Adler](https://github.com/madler). 5 | 6 | This is a modified version of zlib for the smooth integration into OpenCore bootloader. The current version is adapted based on [zlib 1.2.13](https://github.com/madler/zlib/releases/tag/v1.2.13). 7 | 8 | Only the header or source code files listed in the in `OcCompressionLib.inf`, section `[Sources]`, will be needed, together with the following modifications. 9 | 10 | - ***inflate.c*** 11 | 12 | OpenCore adds references to its own macro `OC_INFLATE_VERIFY_DATA` for optimum performance. 13 | 14 | - ***zconf.h*** 15 | 16 | OpenCore's configuration header. This file should be left as is as long as it does not break compilation. 17 | 18 | - ***zlib_uefi.c*** 19 | 20 | UEFI implementation for zlib. This file is an addition from OpenCore and should be left as is. 21 | 22 | - ***zutil.c*** 23 | 24 | Simplified version, with `z_errmsg` only. This file should be left as is as long as it does not break compilation. 25 | 26 | - ***zutil.h*** 27 | 28 | Additions of memory functions aliasing UEFI counterparts. 29 | -------------------------------------------------------------------------------- /Library/OcCompressionLib/zlib/diff/zutil.h.diff: -------------------------------------------------------------------------------- 1 | --- /Users/user/Downloads/zlib-1.2.13/zutil.h 2022-10-07 05:43:18 2 | +++ /Users/user/GitHub/OpenCorePkg/Library/OcCompressionLib/zlib/zutil.h 2023-04-01 22:46:51 3 | @@ -236,6 +236,10 @@ 4 | int ZLIB_INTERNAL zmemcmp OF((const Bytef* s1, const Bytef* s2, uInt len)); 5 | void ZLIB_INTERNAL zmemzero OF((Bytef* dest, uInt len)); 6 | #endif 7 | + 8 | +#define zmemcpy(Dst, Src, Size) CopyMem ((Dst), (Src), (Size)) 9 | +#define zmemcmp(Ptr1, Ptr2, Size) CompareMem ((Ptr1), (Ptr2), (Size)) 10 | +#define zmemzero(Dst, Size) ZeroMem ((Dst), (Size)) 11 | 12 | /* Diagnostic functions */ 13 | #ifdef ZLIB_DEBUG 14 | -------------------------------------------------------------------------------- /Library/OcCompressionLib/zlib/inffast.h: -------------------------------------------------------------------------------- 1 | /* inffast.h -- header to use inffast.c 2 | * Copyright (C) 1995-2003, 2010 Mark Adler 3 | * For conditions of distribution and use, see copyright notice in zlib.h 4 | */ 5 | 6 | /* WARNING: this file should *not* be used by applications. It is 7 | part of the implementation of the compression library and is 8 | subject to change. Applications should only use zlib.h. 9 | */ 10 | 11 | void ZLIB_INTERNAL inflate_fast OF((z_streamp strm, unsigned start)); 12 | -------------------------------------------------------------------------------- /Library/OcCompressionLib/zlib/zutil.c: -------------------------------------------------------------------------------- 1 | /* zutil.c -- target dependent utility functions for the compression library 2 | * Copyright (C) 1995-2017 Jean-loup Gailly 3 | * For conditions of distribution and use, see copyright notice in zlib.h 4 | */ 5 | 6 | /* @(#) $Id$ */ 7 | 8 | #include "zutil.h" 9 | 10 | z_const char * const z_errmsg[10] = { 11 | (z_const char *)"need dictionary", /* Z_NEED_DICT 2 */ 12 | (z_const char *)"stream end", /* Z_STREAM_END 1 */ 13 | (z_const char *)"", /* Z_OK 0 */ 14 | (z_const char *)"file error", /* Z_ERRNO (-1) */ 15 | (z_const char *)"stream error", /* Z_STREAM_ERROR (-2) */ 16 | (z_const char *)"data error", /* Z_DATA_ERROR (-3) */ 17 | (z_const char *)"insufficient memory", /* Z_MEM_ERROR (-4) */ 18 | (z_const char *)"buffer error", /* Z_BUF_ERROR (-5) */ 19 | (z_const char *)"incompatible version",/* Z_VERSION_ERROR (-6) */ 20 | (z_const char *)"" 21 | }; 22 | 23 | // PMheart: This is a simplified version of zutil.c, with only z_errmsg. 24 | -------------------------------------------------------------------------------- /Library/OcConfigurationLib/CheckSchema.py: -------------------------------------------------------------------------------- 1 | #!/usr/bin/env python3 2 | 3 | """ 4 | Validates schema files (e.g. OcConfigurationLib.c) for being sorted. 5 | """ 6 | 7 | import re 8 | import sys 9 | 10 | if len(sys.argv) < 2: 11 | print('Pass file to check') 12 | sys.exit(-1) 13 | 14 | with open(sys.argv[1], 'r', encoding='utf-8') as f: 15 | prev = '' 16 | content = [line.strip() for line in f.readlines()] 17 | for index, line in enumerate(content): 18 | if line == 'OC_SCHEMA': 19 | print('Checking schema {}'.format(re.match(r'^\w+', content[index + 1]).group(0))) 20 | prev = '' 21 | continue 22 | x = re.search(r'"([^"]+)"', line) 23 | if x: 24 | if x.group(1) < prev: 25 | print(f'ERROR: {prev} precedes {x.group(1)}') 26 | sys.exit(1) 27 | prev = x.group(1) 28 | -------------------------------------------------------------------------------- /Library/OcConfigurationLib/OcConfigurationLib.inf: -------------------------------------------------------------------------------- 1 | ## @file 2 | # OcConfigurationLib 3 | # 4 | # Copyright (c) 2019, vit9696 5 | # 6 | # All rights reserved. 7 | # 8 | # This program and the accompanying materials 9 | # are licensed and made available under the terms and conditions of the BSD License 10 | # which accompanies this distribution. The full text of the license may be found at 11 | # http://opensource.org/licenses/bsd-license.php 12 | # 13 | # THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS, 14 | # WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED. 15 | # 16 | ## 17 | 18 | [Defines] 19 | INF_VERSION = 0x00010005 20 | BASE_NAME = OcConfigurationLib 21 | FILE_GUID = A7252001-1736-47A0-B01F-068BE264160B 22 | MODULE_TYPE = DXE_DRIVER 23 | VERSION_STRING = 1.0 24 | LIBRARY_CLASS = OcConfigurationLib|DXE_CORE DXE_DRIVER DXE_RUNTIME_DRIVER DXE_SAL_DRIVER DXE_SMM_DRIVER SMM_CORE UEFI_APPLICATION UEFI_DRIVER 25 | 26 | 27 | # 28 | # VALID_ARCHITECTURES = X64 29 | # 30 | 31 | [Sources] 32 | OcConfigurationLib.c 33 | 34 | [Packages] 35 | MdePkg/MdePkg.dec 36 | OpenCorePkg/OpenCorePkg.dec 37 | 38 | [LibraryClasses] 39 | BaseLib 40 | DebugLib 41 | OcSerializeLib 42 | OcTemplateLib 43 | OcXmlLib 44 | -------------------------------------------------------------------------------- /Library/OcCpuLib/Ia32/Atomic.nasm: -------------------------------------------------------------------------------- 1 | ;------------------------------------------------------------------------------ 2 | ; @file 3 | ; Copyright (C) 2020, vit9696. All rights reserved. 4 | ; 5 | ; All rights reserved. 6 | ; 7 | ; This program and the accompanying materials 8 | ; are licensed and made available under the terms and conditions of the BSD License 9 | ; which accompanies this distribution. The full text of the license may be found at 10 | ; http://opensource.org/licenses/bsd-license.php 11 | ; 12 | ; THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS, 13 | ; WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED. 14 | ;------------------------------------------------------------------------------ 15 | 16 | BITS 32 17 | DEFAULT REL 18 | 19 | SECTION .text 20 | 21 | ;------------------------------------------------------------------------------ 22 | ; UINT32 23 | ; EFIAPI 24 | ; AsmIncrementUint32 ( 25 | ; IN volatile UINT32 *Value 26 | ; ); 27 | ;------------------------------------------------------------------------------ 28 | global ASM_PFX(AsmIncrementUint32) 29 | ASM_PFX(AsmIncrementUint32): 30 | mov ecx, [esp + 4] 31 | mov eax, 1 32 | lock xadd dword [ecx], eax 33 | inc eax 34 | ret 35 | -------------------------------------------------------------------------------- /Library/OcCpuLib/X64/Atomic.nasm: -------------------------------------------------------------------------------- 1 | ;------------------------------------------------------------------------------ 2 | ; @file 3 | ; Copyright (C) 2020, vit9696. All rights reserved. 4 | ; 5 | ; All rights reserved. 6 | ; 7 | ; This program and the accompanying materials 8 | ; are licensed and made available under the terms and conditions of the BSD License 9 | ; which accompanies this distribution. The full text of the license may be found at 10 | ; http://opensource.org/licenses/bsd-license.php 11 | ; 12 | ; THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS, 13 | ; WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED. 14 | ;------------------------------------------------------------------------------ 15 | 16 | BITS 64 17 | DEFAULT REL 18 | 19 | SECTION .text 20 | 21 | ;------------------------------------------------------------------------------ 22 | ; UINT32 23 | ; EFIAPI 24 | ; AsmIncrementUint32 ( 25 | ; IN volatile UINT32 *Value 26 | ; ); 27 | ;------------------------------------------------------------------------------ 28 | global ASM_PFX(AsmIncrementUint32) 29 | ASM_PFX(AsmIncrementUint32): 30 | mov eax, 1 31 | lock xadd dword [rcx], eax 32 | inc eax 33 | ret 34 | -------------------------------------------------------------------------------- /Library/OcCryptoLib/CryptoInternal.h: -------------------------------------------------------------------------------- 1 | /** @file 2 | 3 | OcCryptoLib 4 | 5 | Copyright (c) 2020, vit9696 6 | 7 | All rights reserved. 8 | 9 | This program and the accompanying materials 10 | are licensed and made available under the terms and conditions of the BSD License 11 | which accompanies this distribution. The full text of the license may be found at 12 | http://opensource.org/licenses/bsd-license.php 13 | 14 | THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS, 15 | WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED. 16 | 17 | **/ 18 | 19 | #ifndef CRYPTO_INTERNAL_H 20 | #define CRYPTO_INTERNAL_H 21 | 22 | #include 23 | 24 | #include 25 | #include 26 | #include 27 | #include 28 | #include 29 | #include 30 | #include 31 | #include 32 | 33 | #endif // CRYPTO_INTERNAL_H 34 | -------------------------------------------------------------------------------- /Library/OcCryptoLib/Sha2Internal.h: -------------------------------------------------------------------------------- 1 | /** @file 2 | 3 | OcCryptoLib 4 | 5 | Copyright (c) 2018, savvas 6 | 7 | All rights reserved. 8 | 9 | This program and the accompanying materials 10 | are licensed and made available under the terms and conditions of the BSD License 11 | which accompanies this distribution. The full text of the license may be found at 12 | http://opensource.org/licenses/bsd-license.php 13 | 14 | THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS, 15 | WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED. 16 | 17 | **/ 18 | 19 | #ifndef OC_SHA2_INTERNAL_H 20 | #define OC_SHA2_INTERNAL_H 21 | 22 | #include "CryptoInternal.h" 23 | 24 | extern BOOLEAN mIsAccelEnabled; 25 | 26 | VOID 27 | EFIAPI 28 | Sha512TransformAccel ( 29 | IN OUT UINT64 *State, 30 | IN CONST UINT8 *Data, 31 | IN UINTN BlockNb 32 | ); 33 | 34 | #endif // OC_SHA2_INTERNAL_H 35 | -------------------------------------------------------------------------------- /Library/OcCryptoLib/Sha512AccelDummy.c: -------------------------------------------------------------------------------- 1 | /** @file 2 | Copyright (C) 2021, ISP RAS. All rights reserved. 3 | 4 | This program and the accompanying materials 5 | are licensed and made available under the terms and conditions of the BSD License 6 | which accompanies this distribution. The full text of the license may be found at 7 | http://opensource.org/licenses/bsd-license.php 8 | 9 | THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS, 10 | WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED. 11 | **/ 12 | 13 | #include "Sha2Internal.h" 14 | 15 | #if defined (OC_CRYPTO_SUPPORTS_SHA384) || defined (OC_CRYPTO_SUPPORTS_SHA512) 16 | VOID 17 | EFIAPI 18 | Sha512TransformAccel ( 19 | IN OUT UINT64 *State, 20 | IN CONST UINT8 *Data, 21 | IN UINTN BlockNb 22 | ) 23 | { 24 | (VOID)State; 25 | (VOID)Data; 26 | (VOID)BlockNb; 27 | ASSERT (FALSE); 28 | } 29 | 30 | #endif 31 | 32 | BOOLEAN 33 | EFIAPI 34 | TryEnableAccel ( 35 | VOID 36 | ) 37 | { 38 | mIsAccelEnabled = FALSE; 39 | return FALSE; 40 | } 41 | -------------------------------------------------------------------------------- /Library/OcDebugLibNull/OcDebugLibNull.inf: -------------------------------------------------------------------------------- 1 | ## @file 2 | # 3 | # Debug Library with empty functions. 4 | # 5 | # Copyright (C) 2020, Goldfish64. All rights reserved.
6 | # 7 | # This program and the accompanying materials 8 | # are licensed and made available under the terms and conditions of the BSD License 9 | # which accompanies this distribution. The full text of the license may be found at 10 | # http://opensource.org/licenses/bsd-license.php 11 | # 12 | # THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS, 13 | # WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED. 14 | # 15 | ## 16 | 17 | [Defines] 18 | INF_VERSION = 0x00010005 19 | BASE_NAME = OcDebugLibNull 20 | FILE_GUID = 3D2B1682-100F-49E5-A9C3-EA3FCEA3CFA1 21 | MODULE_TYPE = BASE 22 | VERSION_STRING = 1.0 23 | LIBRARY_CLASS = DebugLib 24 | 25 | # VALID_ARCHITECTURES = IA32 X64 IPF EBC 26 | 27 | [Packages] 28 | OpenCorePkg/OpenCorePkg.dec 29 | MdePkg/MdePkg.dec 30 | 31 | [Sources] 32 | OcDebugLibNull.c 33 | -------------------------------------------------------------------------------- /Library/OcDirectResetLib/DirectReset.c: -------------------------------------------------------------------------------- 1 | /** @file 2 | Reset System Library functions for OVMF 3 | 4 | Copyright (c) 2006 - 2019, Intel Corporation. All rights reserved.
5 | SPDX-License-Identifier: BSD-2-Clause-Patent 6 | **/ 7 | 8 | #include 9 | 10 | #include 11 | #include 12 | #include 13 | #include 14 | 15 | VOID 16 | DirectResetCold ( 17 | VOID 18 | ) 19 | { 20 | volatile UINTN Index; 21 | 22 | IoWrite8 (0xCF9, BIT2 | BIT1); // 1st choice: PIIX3 RCR, RCPU|SRST 23 | 24 | for (Index = 0; Index < 100; ++Index) { 25 | } 26 | 27 | IoWrite8 (0x64, 0xfe); // 2nd choice: keyboard controller 28 | CpuDeadLoop (); 29 | } 30 | -------------------------------------------------------------------------------- /Library/OcDirectResetLib/OcDirectResetLib.inf: -------------------------------------------------------------------------------- 1 | ## @file 2 | # OVMF hardware reset implementation. 3 | # 4 | # Copyright (c) 2021-2022, vit9696, mikebeaton. All rights reserved.
5 | # SPDX-License-Identifier: BSD-3-Clause 6 | ## 7 | 8 | [Defines] 9 | INF_VERSION = 0x00010005 10 | BASE_NAME = OcDirectResetLib 11 | FILE_GUID = 27CB14A8-C57C-4D7B-B8CA-03DB9486718A 12 | MODULE_TYPE = DXE_DRIVER 13 | VERSION_STRING = 1.0 14 | LIBRARY_CLASS = OcDirectResetLib|PEIM DXE_DRIVER DXE_RUNTIME_DRIVER UEFI_DRIVER UEFI_APPLICATION DXE_SMM_DRIVER 15 | 16 | [Sources] 17 | DirectReset.c 18 | 19 | [Packages] 20 | OpenCorePkg/OpenCorePkg.dec 21 | MdePkg/MdePkg.dec 22 | 23 | [LibraryClasses] 24 | UefiLib 25 | -------------------------------------------------------------------------------- /Library/OcDriverEntryPoint/UefiDriverEntryPoint.uni: -------------------------------------------------------------------------------- 1 | // /** @file 2 | // Module entry point library for UEFI driver, DXE driver and SMM driver. 3 | // 4 | // Module entry point library for UEFI driver, DXE driver and SMM driver. 5 | // 6 | // Copyright (c) 2007 - 2014, Intel Corporation. All rights reserved.
7 | // 8 | // SPDX-License-Identifier: BSD-2-Clause-Patent 9 | // 10 | // **/ 11 | 12 | 13 | #string STR_MODULE_ABSTRACT #language en-US "Module entry point library for UEFI driver, DXE driver and SMM driver" 14 | 15 | #string STR_MODULE_DESCRIPTION #language en-US "Module entry point library for UEFI driver, DXE driver and SMM driver." 16 | -------------------------------------------------------------------------------- /Library/OcDxeCoreEntryPoint/DxeCoreEntryPoint.inf: -------------------------------------------------------------------------------- 1 | ## @file 2 | # Module entry point library for DXE core. 3 | # 4 | # Copyright (c) 2007 - 2018, Intel Corporation. All rights reserved.
5 | # 6 | # SPDX-License-Identifier: BSD-2-Clause-Patent 7 | # 8 | # 9 | ## 10 | 11 | [Defines] 12 | INF_VERSION = 0x00010005 13 | BASE_NAME = OcDxeCoreEntryPoint 14 | MODULE_UNI_FILE = DxeCoreEntryPoint.uni 15 | FILE_GUID = 619169BE-186F-447D-9DA7-AD50272A8C7D 16 | MODULE_TYPE = DXE_CORE 17 | VERSION_STRING = 1.0 18 | LIBRARY_CLASS = DxeCoreEntryPoint|DXE_CORE 19 | 20 | 21 | # 22 | # VALID_ARCHITECTURES = IA32 X64 23 | # 24 | 25 | [Sources] 26 | DxeCoreEntryPoint.c 27 | 28 | [Sources.Ia32] 29 | Ia32/Canary.nasm 30 | Ia32/GS.nasm | MSFT 31 | 32 | [Sources.X64] 33 | X64/Canary.nasm 34 | X64/GS.nasm | MSFT 35 | 36 | [Sources.EBC, Sources.ARM, Sources.AARM64, Sources.RISCV64] 37 | CanaryDummy.c 38 | 39 | [Packages] 40 | MdePkg/MdePkg.dec 41 | OpenCorePkg/OpenCorePkg.dec 42 | 43 | [LibraryClasses] 44 | BaseLib 45 | DebugLib 46 | PcdLib 47 | 48 | [Pcd] 49 | gEfiMdePkgTokenSpaceGuid.PcdDebugPropertyMask ## CONSUMES 50 | gOpenCorePkgTokenSpaceGuid.PcdCanaryAllowRdtscFallback ## CONSUMES 51 | -------------------------------------------------------------------------------- /Library/OcDxeCoreEntryPoint/DxeCoreEntryPoint.uni: -------------------------------------------------------------------------------- 1 | // /** @file 2 | // Module entry point library for DXE core. 3 | // 4 | // Module entry point library for DXE core. 5 | // 6 | // Copyright (c) 2007 - 2014, Intel Corporation. All rights reserved.
7 | // 8 | // SPDX-License-Identifier: BSD-2-Clause-Patent 9 | // 10 | // **/ 11 | 12 | 13 | #string STR_MODULE_ABSTRACT #language en-US "Module entry point library for DXE core" 14 | 15 | #string STR_MODULE_DESCRIPTION #language en-US "Module entry point library for DXE core." 16 | -------------------------------------------------------------------------------- /Library/OcFirmwarePasswordLib/AppleFwPasswordInternal.h: -------------------------------------------------------------------------------- 1 | /** @file 2 | Copyright (C) 2016, The HermitCrabs Lab. All rights reserved. 3 | 4 | All rights reserved. 5 | 6 | This program and the accompanying materials 7 | are licensed and made available under the terms and conditions of the BSD License 8 | which accompanies this distribution. The full text of the license may be found at 9 | http://opensource.org/licenses/bsd-license.php 10 | 11 | THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS, 12 | WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED. 13 | **/ 14 | 15 | #ifndef __APPLE_FIRMWARE_PASSWORD_INTERNAL_H 16 | #define __APPLE_FIRMWARE_PASSWORD_INTERNAL_H 17 | 18 | #define APPLE_FIRMWARE_PASSWORD_PROTOCOL_REVISION 0x10000 19 | 20 | typedef struct APPLE_FIRMWARE_PASSWORD_PRIVATE_DATA { 21 | UINTN Signature; 22 | APPLE_FIRMWARE_PASSWORD_PROTOCOL AppleFirmwarePassword; 23 | } APPLE_FIRMWARE_PASSWORD_PRIVATE_DATA; 24 | 25 | #define APPLE_FIRMWARE_PASSWORD_PRIVATE_DATA_SIGNATURE SIGNATURE_32 ('A', 'F', 'W', 'P') 26 | 27 | #define APPLE_FIRMWARE_PASSWORD_PRIVATE_DATA_FROM_APPLE_SMC_THIS(a) \ 28 | CR(a, APPLE_FIRMWARE_PASSWORD_PRIVATE_DATA, AppleFirmwarePassword, APPLE_FIRMWARE_PASSWORD_PRIVATE_DATA_SIGNATURE) 29 | 30 | #endif /* __APPLE_FIRMWARE_PASSWORD_INTERNAL_H */ 31 | -------------------------------------------------------------------------------- /Library/OcFlexArrayLib/OcFlexArrayLib.inf: -------------------------------------------------------------------------------- 1 | ## @file 2 | # Component description file for OcFlexArray library. 3 | # 4 | # Copyright (C) 2021, Mike Beaton. All rights reserved.
5 | # SPDX-License-Identifier: BSD-3-Clause 6 | ## 7 | 8 | [Defines] 9 | INF_VERSION = 0x00010005 10 | BASE_NAME = OcFlexArrayLib 11 | FILE_GUID = 38906C95-DCBA-491C-9FFA-E0AAFFF88EA0 12 | MODULE_TYPE = BASE 13 | VERSION_STRING = 1.0 14 | LIBRARY_CLASS = OcFlexArrayLib|PEIM DXE_DRIVER DXE_RUNTIME_DRIVER UEFI_DRIVER UEFI_APPLICATION DXE_SMM_DRIVER 15 | 16 | # VALID_ARCHITECTURES = IA32 X64 17 | 18 | [Packages] 19 | MdePkg/MdePkg.dec 20 | OpenCorePkg/OpenCorePkg.dec 21 | 22 | [LibraryClasses] 23 | BaseLib 24 | 25 | [Sources] 26 | AsciiStringBuffer.c 27 | FlexArray.c 28 | FlexString.c 29 | -------------------------------------------------------------------------------- /Library/OcHdaDevicesLib/OcHdaDevicesInternal.h: -------------------------------------------------------------------------------- 1 | /** @file 2 | This library implements HDA device information. 3 | 4 | Copyright (c) 2018 John Davis. All rights reserved.
5 | Copyright (c) 2020, vit9696. All rights reserved.
6 | SPDX-License-Identifier: BSD-2-Clause 7 | **/ 8 | 9 | #ifndef OC_HDA_DEVICES_INTERNAL_H 10 | #define OC_HDA_DEVICES_INTERNAL_H 11 | 12 | typedef struct { 13 | UINT32 Id; 14 | CONST CHAR8 *Name; 15 | } HDA_CONTROLLER_LIST_ENTRY; 16 | 17 | typedef struct { 18 | UINT32 Id; 19 | UINT16 Rev; 20 | CONST CHAR8 *Name; 21 | } HDA_CODEC_LIST_ENTRY; 22 | 23 | // 24 | // Controller models. 25 | // 26 | #define HDA_CONTROLLER(vendor, id) (((UINT32) (id) << 16U) | ((VEN_##vendor##_ID) & 0xFFFFU)) 27 | 28 | // 29 | // Codec models. 30 | // 31 | #define HDA_CODEC(vendor, id) (((UINT32) (VEN_##vendor##_ID) << 16U) | ((id) & 0xFFFFU)) 32 | 33 | #endif // OC_HDA_DEVICES_INTERNAL_H 34 | -------------------------------------------------------------------------------- /Library/OcInputLib/Keycode/AIKShim.h: -------------------------------------------------------------------------------- 1 | /** @file 2 | Key shimming code 3 | 4 | Copyright (c) 2018, vit9696. All rights reserved.
5 | This program and the accompanying materials 6 | are licensed and made available under the terms and conditions of the BSD License 7 | which accompanies this distribution. The full text of the license may be found at 8 | http://opensource.org/licenses/bsd-license.php 9 | 10 | THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS, 11 | WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED. 12 | 13 | **/ 14 | 15 | #ifndef AIK_SHIM_H 16 | #define AIK_SHIM_H 17 | 18 | #include 19 | #include 20 | #include 21 | 22 | EFI_STATUS 23 | EFIAPI 24 | AIKShimAmiKeycodeReadEfikey ( 25 | IN AMI_EFIKEYCODE_PROTOCOL *This, 26 | OUT AMI_EFI_KEY_DATA *KeyData 27 | ); 28 | 29 | EFI_STATUS 30 | EFIAPI 31 | AIKShimTextInputReadKeyStroke ( 32 | IN EFI_SIMPLE_TEXT_INPUT_PROTOCOL *This, 33 | OUT EFI_INPUT_KEY *Key 34 | ); 35 | 36 | EFI_STATUS 37 | EFIAPI 38 | AIKShimTextInputReadKeyStrokeEx ( 39 | IN EFI_SIMPLE_TEXT_INPUT_EX_PROTOCOL *This, 40 | OUT EFI_KEY_DATA *KeyData 41 | ); 42 | 43 | VOID 44 | EFIAPI 45 | AIKShimWaitForKeyHandler ( 46 | IN EFI_EVENT Event, 47 | IN VOID *Context 48 | ); 49 | 50 | #endif 51 | -------------------------------------------------------------------------------- /Library/OcLogAggregatorLibNull/OcLogAggregatorLibNull.c: -------------------------------------------------------------------------------- 1 | /** @file 2 | Null OcLogAggregatorLib instance. 3 | 4 | Copyright (c) 2023, Mike Beaton. All rights reserved.
5 | SPDX-License-Identifier: BSD-3-Clause 6 | **/ 7 | 8 | #include 9 | 10 | #include 11 | #include 12 | #include 13 | #include 14 | 15 | VOID 16 | EFIAPI 17 | OcPrintScreen ( 18 | IN CONST CHAR16 *Format, 19 | ... 20 | ) 21 | { 22 | } 23 | 24 | APPLE_DEBUG_LOG_PROTOCOL * 25 | OcAppleDebugLogInstallProtocol ( 26 | IN BOOLEAN Reinstall 27 | ) 28 | { 29 | return NULL; 30 | } 31 | 32 | VOID 33 | OcAppleDebugLogConfigure ( 34 | IN BOOLEAN Enable 35 | ) 36 | { 37 | } 38 | 39 | VOID 40 | OcAppleDebugLogPerfAllocated ( 41 | IN OUT VOID *PerfBuffer, 42 | IN UINTN PerfBufferSize 43 | ) 44 | { 45 | } 46 | 47 | EFI_STATUS 48 | OcConfigureLogProtocol ( 49 | IN OC_LOG_OPTIONS Options, 50 | IN CONST CHAR8 *LogModules, 51 | IN UINT32 DisplayDelay, 52 | IN UINTN DisplayLevel, 53 | IN UINTN HaltLevel, 54 | IN CONST CHAR16 *LogPrefixPath OPTIONAL, 55 | IN EFI_SIMPLE_FILE_SYSTEM_PROTOCOL *LogFileSystem OPTIONAL 56 | ) 57 | { 58 | return EFI_UNSUPPORTED; 59 | } 60 | -------------------------------------------------------------------------------- /Library/OcLogAggregatorLibNull/OcLogAggregatorLibNull.inf: -------------------------------------------------------------------------------- 1 | ## @file 2 | # 3 | # Component description file for null instance of OC Log Aggregator Library using the OcLog protocol. 4 | # 5 | # Copyright (C) 2023, Mike Beaton. All rights reserved.
6 | # SPDX-License-Identifier: BSD-3-Clause 7 | # 8 | ## 9 | 10 | [Defines] 11 | INF_VERSION = 0x00010005 12 | BASE_NAME = OcLogAggregatorLibNull 13 | FILE_GUID = B748F380-1479-4014-B873-4185E514B54F 14 | MODULE_TYPE = BASE 15 | VERSION_STRING = 1.0 16 | LIBRARY_CLASS = OcLogAggregatorLib 17 | 18 | # VALID_ARCHITECTURES = IA32 X64 IPF EBC 19 | 20 | [Packages] 21 | OpenCorePkg/OpenCorePkg.dec 22 | MdePkg/MdePkg.dec 23 | 24 | [Sources] 25 | OcLogAggregatorLibNull.c 26 | -------------------------------------------------------------------------------- /Library/OcMacInfoLib/OcMacInfoLib.inf: -------------------------------------------------------------------------------- 1 | ## @file 2 | # 3 | # Component description file for Mac Info library. 4 | # 5 | # Copyright (C) 2019, vit9696. All rights reserved.
6 | # 7 | # All rights reserved. 8 | # 9 | # This program and the accompanying materials 10 | # are licensed and made available under the terms and conditions of the BSD License 11 | # which accompanies this distribution. The full text of the license may be found at 12 | # http://opensource.org/licenses/bsd-license.php 13 | # 14 | # THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS, 15 | # WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED. 16 | # 17 | ## 18 | 19 | [Defines] 20 | INF_VERSION = 0x00010005 21 | BASE_NAME = OcMacInfoLib 22 | FILE_GUID = 2CE2E0AB-B677-4448-94AA-4E12FED0E65B 23 | MODULE_TYPE = BASE 24 | VERSION_STRING = 1.0 25 | LIBRARY_CLASS = OcMacInfoLib|PEIM DXE_DRIVER DXE_RUNTIME_DRIVER UEFI_DRIVER UEFI_APPLICATION DXE_SMM_DRIVER 26 | 27 | # VALID_ARCHITECTURES = IA32 X64 28 | 29 | [Packages] 30 | OpenCorePkg/OpenCorePkg.dec 31 | MdePkg/MdePkg.dec 32 | UefiCpuPkg/UefiCpuPkg.dec 33 | 34 | [LibraryClasses] 35 | BaseLib 36 | BaseMemoryLib 37 | DebugLib 38 | 39 | [Sources] 40 | AutoGenerated.c 41 | MacInfoInternal.h 42 | OcMacInfoLib.c 43 | -------------------------------------------------------------------------------- /Library/OcMachoLib/Macho32.c: -------------------------------------------------------------------------------- 1 | /** 2 | 32-bit Mach-O library functions layer. 3 | 4 | Copyright (C) 2020, Goldfish64. All rights reserved.
5 | This program and the accompanying materials are licensed and made available 6 | under the terms and conditions of the BSD License which accompanies this 7 | distribution. The full text of the license may be found at 8 | http://opensource.org/licenses/bsd-license.php. 9 | 10 | THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS, 11 | WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED. 12 | 13 | **/ 14 | 15 | // 16 | // Enable 32-bit mode for library functions. 17 | // 18 | #define MACHO_LIB_32 19 | 20 | #include "CxxSymbolsX.h" 21 | #include "HeaderX.h" 22 | #include "SymbolsX.h" 23 | -------------------------------------------------------------------------------- /Library/OcMachoLib/Macho64.c: -------------------------------------------------------------------------------- 1 | /** 2 | 64-bit Mach-O library functions layer. 3 | 4 | Copyright (C) 2020, Goldfish64. All rights reserved.
5 | This program and the accompanying materials are licensed and made available 6 | under the terms and conditions of the BSD License which accompanies this 7 | distribution. The full text of the license may be found at 8 | http://opensource.org/licenses/bsd-license.php. 9 | 10 | THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS, 11 | WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED. 12 | 13 | **/ 14 | 15 | #include "CxxSymbolsX.h" 16 | #include "HeaderX.h" 17 | #include "SymbolsX.h" 18 | -------------------------------------------------------------------------------- /Library/OcMachoLib/OcMachoLib.inf: -------------------------------------------------------------------------------- 1 | ## @file 2 | # Copyright (C) 2016 - 2017, Download-Fritz. All rights reserved.
3 | # This program and the accompanying materials are licensed and made available 4 | # under the terms and conditions of the BSD License which accompanies this 5 | # distribution. The full text of the license may be found at 6 | # http://opensource.org/licenses/bsd-license.php. 7 | # 8 | # THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS, 9 | # WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED. 10 | # 11 | # 12 | ## 13 | 14 | [Defines] 15 | BASE_NAME = OcMachoLib 16 | LIBRARY_CLASS = OcMachoLib 17 | MODULE_TYPE = BASE 18 | VERSION_STRING = 1.0 19 | INF_VERSION = 0x00010005 20 | 21 | [Packages] 22 | MdePkg/MdePkg.dec 23 | OpenCorePkg/OpenCorePkg.dec 24 | 25 | [LibraryClasses] 26 | BaseLib 27 | BaseMemoryLib 28 | BaseOverflowLib 29 | DebugLib 30 | 31 | [Sources] 32 | CxxSymbols.c 33 | CxxSymbolsX.h 34 | MachoFat.c 35 | Header.c 36 | HeaderX.h 37 | OcMachoLibInternal.h 38 | Macho32.c 39 | Macho64.c 40 | MachoX.h 41 | Relocations.c 42 | Symbols.c 43 | SymbolsX.h 44 | -------------------------------------------------------------------------------- /Library/OcMiscLib/ConsoleUtils.c: -------------------------------------------------------------------------------- 1 | /** @file 2 | Misc console utils. 3 | 4 | Copyright (c) 2021, Mike Beaton. All rights reserved.
5 | SPDX-License-Identifier: BSD-3-Clause 6 | **/ 7 | 8 | #include 9 | #include 10 | #include 11 | 12 | VOID 13 | OcConsoleFlush ( 14 | VOID 15 | ) 16 | { 17 | EFI_STATUS Status; 18 | EFI_INPUT_KEY EfiKey; 19 | 20 | do { 21 | Status = gST->ConIn->ReadKeyStroke (gST->ConIn, &EfiKey); 22 | } while (!EFI_ERROR (Status)); 23 | 24 | // 25 | // This one is required on APTIO IV after holding OPT key. 26 | // Interestingly it does not help adding this after OPT key handling. 27 | // 28 | gST->ConIn->Reset (gST->ConIn, FALSE); 29 | } 30 | -------------------------------------------------------------------------------- /Library/OcMp3Lib/helix/README.md: -------------------------------------------------------------------------------- 1 | Local copy of [libhelix-mp3](https://github.com/ultraembedded/libhelix-mp3). 2 | Last synced with [0a0e067](https://github.com/ultraembedded/libhelix-mp3/commit/0a0e0673f82bc6804e5a3ddb15fb6efdcde747cd). 3 | Licensed under RCSL/RPSL. 4 | -------------------------------------------------------------------------------- /Library/OcMp3Lib/helix/mp3compat.h: -------------------------------------------------------------------------------- 1 | /** @file 2 | Copyright (C) 2021, vit9696. All rights reserved. 3 | 4 | All rights reserved. 5 | 6 | This program and the accompanying materials 7 | are licensed and made available under the terms and conditions of the BSD License 8 | which accompanies this distribution. The full text of the license may be found at 9 | http://opensource.org/licenses/bsd-license.php 10 | 11 | THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS, 12 | WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED. 13 | **/ 14 | 15 | #ifndef MP3_COMPAT_H 16 | #define MP3_COMPAT_H 17 | 18 | #include 19 | #include 20 | #include 21 | 22 | #ifdef memset 23 | #undef memset 24 | #endif 25 | 26 | #ifdef memcpy 27 | #undef memcpy 28 | #endif 29 | 30 | #ifdef memmove 31 | #undef memmove 32 | #endif 33 | 34 | #ifdef malloc 35 | #undef malloc 36 | #endif 37 | 38 | #ifdef free 39 | #undef free 40 | #endif 41 | 42 | #define memset(Dst, Val, Size) SetMem ((Dst), (Size), (Val)) 43 | #define memcpy(dst, src, len) CopyMem(dst, src, len) 44 | #define memmove(dst, src, len) CopyMem(dst, src, len) 45 | 46 | #define malloc(Size) AllocatePool (Size) 47 | #define free(Ptr) FreePool (Ptr) 48 | 49 | #endif // MP3_COMPAT_H 50 | -------------------------------------------------------------------------------- /Library/OcPeCoffExtLib/OcPeCoffExtInternal.h: -------------------------------------------------------------------------------- 1 | /** @file 2 | Provides additional services for Apple PE/COFF image. 3 | 4 | Copyright (c) 2018, savvas. All rights reserved.
5 | Copyright (c) 2021, vit9696. All rights reserved.
6 | SPDX-License-Identifier: BSD-2-Clause-Patent 7 | **/ 8 | 9 | #ifndef OC_PE_COFF_EXT_INTERNAL_H 10 | #define OC_PE_COFF_EXT_INTERNAL_H 11 | 12 | #include 13 | #include 14 | 15 | STATIC_ASSERT ( 16 | OFFSET_OF (EFI_IMAGE_NT_HEADERS64, CheckSum) 17 | == OFFSET_OF (EFI_IMAGE_NT_HEADERS32, CheckSum), 18 | "CheckSum is expected to be at the same place" 19 | ); 20 | 21 | #define APPLE_CHECKSUM_OFFSET OFFSET_OF (EFI_IMAGE_NT_HEADERS64, CheckSum) 22 | #define APPLE_CHECKSUM_SIZE sizeof (UINT32) 23 | 24 | // 25 | // Signature context 26 | // 27 | typedef struct APPLE_SIGNATURE_CONTEXT_ { 28 | OC_RSA_PUBLIC_KEY *PublicKey; 29 | UINT8 Signature[256]; 30 | } APPLE_SIGNATURE_CONTEXT; 31 | 32 | #endif // OC_PE_COFF_EXT_INTERNAL_H 33 | -------------------------------------------------------------------------------- /Library/OcPeiCoreEntryPoint/PeiCoreEntryPoint.inf: -------------------------------------------------------------------------------- 1 | ## @file 2 | # Module entry point library for PEI core. 3 | # 4 | # Copyright (c) 2007 - 2018, Intel Corporation. All rights reserved.
5 | # 6 | # SPDX-License-Identifier: BSD-2-Clause-Patent 7 | # 8 | # 9 | ## 10 | 11 | [Defines] 12 | INF_VERSION = 0x00010005 13 | BASE_NAME = OcPeiCoreEntryPoint 14 | MODULE_UNI_FILE = PeiCoreEntryPoint.uni 15 | FILE_GUID = C63F7D51-7FD8-4DCD-B658-3F648A623D12 16 | MODULE_TYPE = PEI_CORE 17 | VERSION_STRING = 1.0 18 | LIBRARY_CLASS = PeiCoreEntryPoint|PEI_CORE 19 | 20 | # 21 | # VALID_ARCHITECTURES = IA32 X64 22 | # 23 | 24 | [Sources] 25 | PeiCoreEntryPoint.c 26 | 27 | [Sources.Ia32] 28 | Ia32/Canary.nasm 29 | Ia32/GS.nasm | MSFT 30 | 31 | [Sources.X64] 32 | X64/Canary.nasm 33 | X64/GS.nasm | MSFT 34 | 35 | [Sources.EBC, Sources.ARM, Sources.AARM64, Sources.RISCV64] 36 | CanaryDummy.c 37 | 38 | [Packages] 39 | MdePkg/MdePkg.dec 40 | OpenCorePkg/OpenCorePkg.dec 41 | 42 | [LibraryClasses] 43 | BaseLib 44 | DebugLib 45 | PcdLib 46 | 47 | [Pcd] 48 | gEfiMdePkgTokenSpaceGuid.PcdDebugPropertyMask ## CONSUMES 49 | gOpenCorePkgTokenSpaceGuid.PcdCanaryAllowRdtscFallback ## CONSUMES 50 | -------------------------------------------------------------------------------- /Library/OcPeiCoreEntryPoint/PeiCoreEntryPoint.uni: -------------------------------------------------------------------------------- 1 | // /** @file 2 | // Module entry point library for PEI core. 3 | // 4 | // Module entry point library for PEI core. 5 | // 6 | // Copyright (c) 2007 - 2014, Intel Corporation. All rights reserved.
7 | // 8 | // SPDX-License-Identifier: BSD-2-Clause-Patent 9 | // 10 | // **/ 11 | 12 | 13 | #string STR_MODULE_ABSTRACT #language en-US "Module entry point library for PEI core" 14 | 15 | #string STR_MODULE_DESCRIPTION #language en-US "Module entry point library for PEI core." 16 | -------------------------------------------------------------------------------- /Library/OcPeimEntryPoint/PeimEntryPoint.inf: -------------------------------------------------------------------------------- 1 | ## @file 2 | # Module entry point library for PEIM. 3 | # 4 | # Copyright (c) 2007 - 2018, Intel Corporation. All rights reserved.
5 | # 6 | # SPDX-License-Identifier: BSD-2-Clause-Patent 7 | # 8 | # 9 | ## 10 | 11 | [Defines] 12 | INF_VERSION = 0x00010005 13 | BASE_NAME = OcPeimEntryPoint 14 | MODULE_UNI_FILE = PeimEntryPoint.uni 15 | FILE_GUID = 796150C8-578F-4C0C-B662-441C4F1176B3 16 | MODULE_TYPE = PEIM 17 | VERSION_STRING = 1.0 18 | LIBRARY_CLASS = PeimEntryPoint|PEIM 19 | 20 | # 21 | # VALID_ARCHITECTURES = IA32 X64 22 | # 23 | 24 | [Sources] 25 | PeimEntryPoint.c 26 | 27 | [Sources.Ia32] 28 | Ia32/Canary.nasm 29 | Ia32/GS.nasm | MSFT 30 | 31 | [Sources.X64] 32 | X64/Canary.nasm 33 | X64/GS.nasm | MSFT 34 | 35 | [Sources.EBC, Sources.ARM, Sources.AARM64, Sources.RISCV64] 36 | CanaryDummy.c 37 | 38 | [Packages] 39 | MdePkg/MdePkg.dec 40 | OpenCorePkg/OpenCorePkg.dec 41 | 42 | [LibraryClasses] 43 | DebugLib 44 | PcdLib 45 | 46 | [Pcd] 47 | gEfiMdePkgTokenSpaceGuid.PcdDebugPropertyMask ## CONSUMES 48 | gOpenCorePkgTokenSpaceGuid.PcdCanaryAllowRdtscFallback ## CONSUMES 49 | -------------------------------------------------------------------------------- /Library/OcPeimEntryPoint/PeimEntryPoint.uni: -------------------------------------------------------------------------------- 1 | // /** @file 2 | // Module entry point library for PEIM. 3 | // 4 | // Module entry point library for PEIM. 5 | // 6 | // Copyright (c) 2007 - 2014, Intel Corporation. All rights reserved.
7 | // 8 | // SPDX-License-Identifier: BSD-2-Clause-Patent 9 | // 10 | // **/ 11 | 12 | 13 | #string STR_MODULE_ABSTRACT #language en-US "Module entry point library for PEIM" 14 | 15 | #string STR_MODULE_DESCRIPTION #language en-US "Module entry point library for PEIM." 16 | -------------------------------------------------------------------------------- /Library/OcResetSystemLib/OcResetSystemLib.inf: -------------------------------------------------------------------------------- 1 | ## @file 2 | # Reset System Library instance that accounts for defective UEFI systems. 3 | # 4 | # Copyright (c) 2021, Marvin Haeuser. All rights reserved.
5 | # 6 | # SPDX-License-Identifier: BSD-2-Clause-Patent 7 | # 8 | ## 9 | 10 | [Defines] 11 | INF_VERSION = 0x00010005 12 | BASE_NAME = OcResetSystemLib 13 | FILE_GUID = BBC22992-DB8C-44F3-AA8C-B69FC2E3FB8F 14 | MODULE_TYPE = DXE_DRIVER 15 | VERSION_STRING = 1.0 16 | LIBRARY_CLASS = ResetSystemLib 17 | 18 | [Sources] 19 | OcResetSystemLib.c 20 | 21 | [Packages] 22 | MdePkg/MdePkg.dec 23 | MdeModulePkg/MdeModulePkg.dec 24 | OpenCorePkg/OpenCorePkg.dec 25 | 26 | [LibraryClasses] 27 | BaseLib 28 | DebugLib 29 | OcDirectResetLib 30 | UefiRuntimeServicesTableLib 31 | -------------------------------------------------------------------------------- /Library/OcRngLib/OcRngLib.inf: -------------------------------------------------------------------------------- 1 | ## @file 2 | # OcRngLib 3 | # 4 | # Copyright (c) 2019, vit9696 5 | # 6 | # All rights reserved. 7 | # 8 | # This program and the accompanying materials 9 | # are licensed and made available under the terms and conditions of the BSD License 10 | # which accompanies this distribution. The full text of the license may be found at 11 | # http://opensource.org/licenses/bsd-license.php 12 | # 13 | # THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS, 14 | # WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED. 15 | # 16 | ## 17 | 18 | [Defines] 19 | INF_VERSION = 0x00010005 20 | BASE_NAME = OcRngLib 21 | FILE_GUID = 416BA864-86D7-4AB5-A508-3B91DC52CFC9 22 | MODULE_TYPE = BASE 23 | VERSION_STRING = 1.0 24 | LIBRARY_CLASS = RngLib 25 | CONSTRUCTOR = OcRngLibConstructor 26 | 27 | # 28 | # VALID_ARCHITECTURES = IA32 X64 29 | # 30 | 31 | [Sources.Ia32, Sources.X64] 32 | OcRngLib.c 33 | OcRngInternals.h 34 | 35 | [Sources.Ia32] 36 | Ia32/RngDelay.nasm 37 | 38 | [Sources.X64] 39 | X64/RngDelay.nasm 40 | 41 | [Packages] 42 | OpenCorePkg/OpenCorePkg.dec 43 | MdePkg/MdePkg.dec 44 | 45 | [LibraryClasses] 46 | BaseLib 47 | DebugLib 48 | OcCryptoLib 49 | -------------------------------------------------------------------------------- /Library/OcSerializeLib/OcSerializeLib.inf: -------------------------------------------------------------------------------- 1 | ## @file 2 | # OcSerializeLib 3 | # 4 | # Copyright (c) 2018, vit9696 5 | # 6 | # All rights reserved. 7 | # 8 | # This program and the accompanying materials 9 | # are licensed and made available under the terms and conditions of the BSD License 10 | # which accompanies this distribution. The full text of the license may be found at 11 | # http://opensource.org/licenses/bsd-license.php 12 | # 13 | # THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS, 14 | # WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED. 15 | # 16 | ## 17 | 18 | [Defines] 19 | INF_VERSION = 0x00010005 20 | BASE_NAME = OcSerializeLib 21 | FILE_GUID = CABE9035-D604-4504-B338-A5BCEFCDEE95 22 | MODULE_TYPE = DXE_DRIVER 23 | VERSION_STRING = 1.0 24 | LIBRARY_CLASS = OcSerializeLib|DXE_CORE DXE_DRIVER DXE_RUNTIME_DRIVER DXE_SAL_DRIVER DXE_SMM_DRIVER SMM_CORE UEFI_APPLICATION UEFI_DRIVER 25 | 26 | 27 | # 28 | # VALID_ARCHITECTURES = X64 29 | # 30 | 31 | [Sources] 32 | OcSerializeLib.c 33 | 34 | [Packages] 35 | MdePkg/MdePkg.dec 36 | OpenCorePkg/OpenCorePkg.dec 37 | 38 | [LibraryClasses] 39 | BaseLib 40 | DebugLib 41 | OcTemplateLib 42 | OcXmlLib 43 | -------------------------------------------------------------------------------- /Library/OcSmbiosLib/DebugSmbios.h: -------------------------------------------------------------------------------- 1 | /** @file 2 | Copyright (C) 2016 - 2017, The HermitCrabs Lab. All rights reserved. 3 | 4 | All rights reserved. 5 | 6 | This program and the accompanying materials 7 | are licensed and made available under the terms and conditions of the BSD License 8 | which accompanies this distribution. The full text of the license may be found at 9 | http://opensource.org/licenses/bsd-license.php 10 | 11 | THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS, 12 | WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED. 13 | **/ 14 | 15 | #ifndef DEBUG_SMBIOS_H 16 | #define DEBUG_SMBIOS_H 17 | 18 | #include 19 | 20 | // TODO: Use PCD? 21 | // #define LOG_SMBIOS 22 | 23 | #ifdef LOG_SMBIOS 24 | #define DEBUG_SMBIOS(arg) DEBUG (arg) 25 | #else 26 | #define DEBUG_SMBIOS(arg) 27 | #endif 28 | 29 | VOID 30 | SmbiosDebugAnyStructure ( 31 | IN APPLE_SMBIOS_STRUCTURE_POINTER Record 32 | ); 33 | 34 | #endif // DEBUG_SMBIOS_H 35 | -------------------------------------------------------------------------------- /Library/OcSmcLib/OcSmcLibInternal.h: -------------------------------------------------------------------------------- 1 | /** @file 2 | Copyright (C) 2017-2020, vit9696. All rights reserved. 3 | 4 | All rights reserved. 5 | 6 | This program and the accompanying materials 7 | are licensed and made available under the terms and conditions of the BSD License 8 | which accompanies this distribution. The full text of the license may be found at 9 | http://opensource.org/licenses/bsd-license.php 10 | 11 | THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS, 12 | WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED. 13 | **/ 14 | 15 | #ifndef OC_SMC_LIB_INTERNAL_H 16 | #define OC_SMC_LIB_INTERNAL_H 17 | 18 | #include 19 | #include 20 | 21 | typedef struct { 22 | SMC_KEY Key; 23 | SMC_KEY_TYPE Type; 24 | SMC_DATA_SIZE Size; 25 | SMC_KEY_ATTRIBUTES Attributes; 26 | SMC_DATA Data[SMC_MAX_DATA_SIZE]; 27 | } VIRTUALSMC_KEY_VALUE; 28 | 29 | #define VIRTUALSMC_STATUS_KEY L"vsmc-status" 30 | #define VIRTUALSMC_ENCRYPTION_KEY L"vsmc-key" 31 | 32 | #endif // OC_SMC_LIB_INTERNAL_H 33 | -------------------------------------------------------------------------------- /Library/OcTemplateLib/OcTemplateLib.inf: -------------------------------------------------------------------------------- 1 | ## @file 2 | # OcTemplateLib 3 | # 4 | # Copyright (c) 2018, vit9696 5 | # 6 | # All rights reserved. 7 | # 8 | # This program and the accompanying materials 9 | # are licensed and made available under the terms and conditions of the BSD License 10 | # which accompanies this distribution. The full text of the license may be found at 11 | # http://opensource.org/licenses/bsd-license.php 12 | # 13 | # THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS, 14 | # WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED. 15 | # 16 | ## 17 | 18 | [Defines] 19 | INF_VERSION = 0x00010005 20 | BASE_NAME = OcTemplateLib 21 | FILE_GUID = E40ABEF1-29B0-4D59-92B1-BF94A3CEB994 22 | MODULE_TYPE = DXE_DRIVER 23 | VERSION_STRING = 1.0 24 | LIBRARY_CLASS = OcTemplateLib|DXE_CORE DXE_DRIVER DXE_RUNTIME_DRIVER DXE_SAL_DRIVER DXE_SMM_DRIVER SMM_CORE UEFI_APPLICATION UEFI_DRIVER 25 | 26 | 27 | # 28 | # VALID_ARCHITECTURES = X64 29 | # 30 | 31 | [Sources] 32 | OcTemplateLib.c 33 | 34 | [Packages] 35 | MdePkg/MdePkg.dec 36 | OpenCorePkg/OpenCorePkg.dec 37 | 38 | [LibraryClasses] 39 | BaseLib 40 | BaseMemoryLib 41 | DebugLib 42 | MemoryAllocationLib 43 | -------------------------------------------------------------------------------- /Library/OcTypingLib/OcTypingLib.inf: -------------------------------------------------------------------------------- 1 | ## @file 2 | # Apple Event typing. 3 | # 4 | # Copyright (C) 2021, Mike Beaton. All rights reserved.
5 | # SPDX-License-Identifier: BSD-3-Clause 6 | ## 7 | 8 | [Defines] 9 | INF_VERSION = 0x00010005 10 | BASE_NAME = OcTypingLib 11 | FILE_GUID = F40E2942-1850-4CC2-A8CC-DCA027E9C8AD 12 | MODULE_TYPE = DXE_DRIVER 13 | VERSION_STRING = 1.0 14 | LIBRARY_CLASS = OcTypingLib|DXE_DRIVER DXE_RUNTIME_DRIVER UEFI_DRIVER UEFI_APPLICATION DXE_SMM_DRIVER 15 | 16 | # 17 | # The following information is for reference only and not required by the build tools. 18 | # 19 | # VALID_ARCHITECTURES = IA32 X64 IPF EBC 20 | # 21 | 22 | [Sources] 23 | OcTypingLib.c 24 | 25 | [Packages] 26 | OpenCorePkg/OpenCorePkg.dec 27 | MdePkg/MdePkg.dec 28 | 29 | [Protocols] 30 | gAppleEventProtocolGuid ## SOMETIMES_CONSUMES 31 | 32 | [LibraryClasses] 33 | BaseLib 34 | DebugLib 35 | UefiLib 36 | UefiBootServicesTableLib 37 | MemoryAllocationLib 38 | OcMiscLib 39 | TimerLib 40 | -------------------------------------------------------------------------------- /Library/OcUnicodeCollationEngLib/OcUnicodeCollationEngLocal.c: -------------------------------------------------------------------------------- 1 | /** @file 2 | Local library constructor routines. 3 | 4 | Copyright (c) 2020, vit9696. All rights reserved.
5 | SPDX-License-Identifier: BSD-2-Clause-Patent 6 | 7 | **/ 8 | 9 | #include "OcUnicodeCollationEngInternal.h" 10 | #include 11 | 12 | EFI_STATUS 13 | EFIAPI 14 | OcUnicodeCollationEngLocalLibConstructor ( 15 | IN EFI_HANDLE ImageHandle, 16 | IN EFI_SYSTEM_TABLE *SystemTable 17 | ) 18 | { 19 | OcUnicodeCollationUpdatePlatformLanguage (); 20 | OcUnicodeCollationInitializeMappingTables (); 21 | OcRegisterBootServicesProtocol ( 22 | &gEfiUnicodeCollation2ProtocolGuid, 23 | &gInternalUnicode2Eng, 24 | FALSE 25 | ); 26 | 27 | return EFI_SUCCESS; 28 | } 29 | -------------------------------------------------------------------------------- /Library/OcVariableLib/Shim.c: -------------------------------------------------------------------------------- 1 | /** @file 2 | Manage variables for GRUB2 shim. 3 | 4 | Copyright (C) 2023, Mike Beaton. All rights reserved.
5 | SPDX-License-Identifier: BSD-3-Clause 6 | **/ 7 | 8 | #include 9 | #include 10 | #include 11 | 12 | EFI_STATUS 13 | OcShimRetainProtocol ( 14 | IN BOOLEAN Required 15 | ) 16 | { 17 | UINT8 ShimRetainProtocol; 18 | 19 | if (!Required) { 20 | return EFI_SUCCESS; 21 | } 22 | 23 | ShimRetainProtocol = 1; 24 | 25 | return gRT->SetVariable ( 26 | SHIM_RETAIN_PROTOCOL, 27 | &gShimLockGuid, 28 | EFI_VARIABLE_BOOTSERVICE_ACCESS, 29 | sizeof (ShimRetainProtocol), 30 | &ShimRetainProtocol 31 | ); 32 | } 33 | -------------------------------------------------------------------------------- /Library/OcVariableRuntimeLib/OcVariableRuntimeLib.inf: -------------------------------------------------------------------------------- 1 | ## @file 2 | # Save, load and delete emulated NVRAM from file storage. 3 | # 4 | # Copyright (C) 2022, Mike Beaton. All rights reserved.
5 | # SPDX-License-Identifier: BSD-3-Clause 6 | ## 7 | 8 | [Defines] 9 | INF_VERSION = 0x00010005 10 | BASE_NAME = OcVariableRuntimeLib 11 | FILE_GUID = 879C591F-F640-4F9F-8B8A-4BDF9CC7603A 12 | MODULE_TYPE = DXE_RUNTIME_DRIVER 13 | VERSION_STRING = 1.0 14 | CONSTRUCTOR = OcVariableRuntimeLibConstructor 15 | LIBRARY_CLASS = NULL|DXE_RUNTIME_DRIVER 16 | 17 | [Sources] 18 | OcVariableRuntimeLib.c 19 | 20 | [Packages] 21 | OpenCorePkg/OpenCorePkg.dec 22 | MdePkg/MdePkg.dec 23 | 24 | [Protocols] 25 | gOcVariableRuntimeProtocolGuid ## PRODUCES 26 | 27 | [LibraryClasses] 28 | OcFlexArrayLib 29 | OcSerializeLib 30 | OcVariableLib 31 | -------------------------------------------------------------------------------- /Library/OcWaveLib/OcWaveLib.inf: -------------------------------------------------------------------------------- 1 | ## @file 2 | # 3 | # Component description file for OcWaveLib. 4 | # 5 | # Copyright (C) 2021, vit9696. All rights reserved.
6 | # 7 | # All rights reserved. 8 | # 9 | # This program and the accompanying materials 10 | # are licensed and made available under the terms and conditions of the BSD License 11 | # which accompanies this distribution. The full text of the license may be found at 12 | # http://opensource.org/licenses/bsd-license.php 13 | # 14 | # THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS, 15 | # WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED. 16 | # 17 | ## 18 | 19 | [Defines] 20 | INF_VERSION = 0x00010005 21 | BASE_NAME = OcWaveLib 22 | FILE_GUID = 585C334C-B904-4101-9D87-83E5FECF5E45 23 | MODULE_TYPE = BASE 24 | VERSION_STRING = 1.0 25 | LIBRARY_CLASS = OcWaveLib|PEIM DXE_DRIVER DXE_RUNTIME_DRIVER UEFI_DRIVER UEFI_APPLICATION DXE_SMM_DRIVER 26 | 27 | # VALID_ARCHITECTURES = IA32 X64 28 | 29 | [Packages] 30 | OpenCorePkg/OpenCorePkg.dec 31 | MdePkg/MdePkg.dec 32 | MdeModulePkg/MdeModulePkg.dec 33 | 34 | [LibraryClasses] 35 | BaseLib 36 | BaseMemoryLib 37 | BaseOverflowLib 38 | DebugLib 39 | UefiLib 40 | 41 | [Sources] 42 | OcWaveLib.c 43 | -------------------------------------------------------------------------------- /Library/OcXmlLib/OcXmlLib.inf: -------------------------------------------------------------------------------- 1 | ## @file 2 | # OcXmlLib 3 | # 4 | # Copyright (c) 2018, vit9696 5 | # 6 | # All rights reserved. 7 | # 8 | # This program and the accompanying materials 9 | # are licensed and made available under the terms and conditions of the BSD License 10 | # which accompanies this distribution. The full text of the license may be found at 11 | # http://opensource.org/licenses/bsd-license.php 12 | # 13 | # THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS, 14 | # WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED. 15 | # 16 | ## 17 | 18 | [Defines] 19 | INF_VERSION = 0x00010005 20 | BASE_NAME = OcXmlLib 21 | FILE_GUID = 7DDC67E4-0556-4E86-947E-6B484A1B7015 22 | MODULE_TYPE = DXE_DRIVER 23 | VERSION_STRING = 1.0 24 | LIBRARY_CLASS = OcXmlLib|DXE_CORE DXE_DRIVER DXE_RUNTIME_DRIVER DXE_SAL_DRIVER DXE_SMM_DRIVER SMM_CORE UEFI_APPLICATION UEFI_DRIVER 25 | 26 | 27 | # 28 | # VALID_ARCHITECTURES = X64 29 | # 30 | 31 | [Sources] 32 | OcXmlLib.c 33 | 34 | [Packages] 35 | MdePkg/MdePkg.dec 36 | OpenCorePkg/OpenCorePkg.dec 37 | 38 | [LibraryClasses] 39 | BaseLib 40 | BaseMemoryLib 41 | DebugLib 42 | MemoryAllocationLib 43 | OcMiscLib 44 | OcStringLib 45 | -------------------------------------------------------------------------------- /OpenCoreFromClover.h: -------------------------------------------------------------------------------- 1 | /* 2 | * OpenCoreFromClover.h 3 | * 4 | * Created on: Sep 17, 2020 5 | * Author: jief 6 | */ 7 | 8 | #ifndef OPENCOREFROMCLOVER_H_ 9 | #define OPENCOREFROMCLOVER_H_ 10 | 11 | #include 12 | 13 | #undef _DEBUG 14 | #undef DEBUG 15 | 16 | #include "../rEFIt_UEFI/Platform/BootLog.h" 17 | 18 | #define DEBUG(Expression) DebugLogForOC Expression 19 | 20 | #undef MDEPKG_NDEBUG 21 | 22 | #endif /* OPENCOREFROMCLOVER_H_ */ 23 | -------------------------------------------------------------------------------- /Patches/0003-MdeModulePkg-AtaAtapiPassThru-Reduce-timeout.patch: -------------------------------------------------------------------------------- 1 | From: Goldfish64 2 | Subject: MdeModulePkg/AtaAtapiPassThru: Reduce IDE drive detection timeout 3 | 4 | This reduces the timeout for a drive response during IDE drive detection in DuetPkg, 5 | which would otherwise cause an abormally long startup time. 6 | 7 | diff --git a/MdeModulePkg/Bus/Ata/AtaAtapiPassThru/IdeMode.c b/MdeModulePkg/Bus/Ata/AtaAtapiPassThru/IdeMode.c 8 | index 75403886e4..8ecbe7036d 100644 9 | --- a/MdeModulePkg/Bus/Ata/AtaAtapiPassThru/IdeMode.c 10 | +++ b/MdeModulePkg/Bus/Ata/AtaAtapiPassThru/IdeMode.c 11 | @@ -2394,7 +2394,7 @@ DetectAndConfigIdeDevice ( 12 | // 13 | IdeWritePortB (PciIo, IdeRegisters->CmdOrStatus, ATA_CMD_EXEC_DRIVE_DIAG); 14 | 15 | - Status = WaitForBSYClear (PciIo, IdeRegisters, 350000000); 16 | + Status = WaitForBSYClear (PciIo, IdeRegisters, 5000000); // Use instead of 350000000. 17 | if (EFI_ERROR (Status)) { 18 | DEBUG ((DEBUG_ERROR, "New detecting method: Send Execute Diagnostic Command: WaitForBSYClear: Status: %d\n", Status)); 19 | continue; 20 | -------------------------------------------------------------------------------- /Platform/CrScreenshotDxe/CrScreenshotDxe.inf: -------------------------------------------------------------------------------- 1 | ## @file 2 | # Copyright (c) 2020, vit9696. All rights reserved. 3 | # SPDX-License-Identifier: BSD-3-Clause 4 | ## 5 | 6 | [Defines] 7 | INF_VERSION = 0x00010005 8 | BASE_NAME = CrScreenshotDxe 9 | FILE_GUID = 91867CFC-F80C-4BC4-94CC-E9E3ED88BC84 10 | MODULE_TYPE = DXE_DRIVER 11 | VERSION_STRING = 1.0 12 | ENTRY_POINT = CrScreenshotDxeEntry 13 | 14 | [Sources.common] 15 | CrScreenshotDxe.c 16 | 17 | [Packages] 18 | OpenCorePkg/OpenCorePkg.dec 19 | MdePkg/MdePkg.dec 20 | MdeModulePkg/MdeModulePkg.dec 21 | 22 | [LibraryClasses] 23 | DebugLib 24 | OcBootManagementLib 25 | OcFileLib 26 | OcFlexArrayLib 27 | OcMiscLib 28 | OcPngLib 29 | PrintLib 30 | TimerLib 31 | UefiBootServicesTableLib 32 | UefiRuntimeServicesTableLib 33 | UefiDriverEntryPoint 34 | 35 | [Protocols] 36 | gEfiGraphicsOutputProtocolGuid 37 | gEfiSimpleTextInputExProtocolGuid 38 | gAppleEventProtocolGuid 39 | gEfiSimpleFileSystemProtocolGuid 40 | gOcBootstrapProtocolGuid 41 | 42 | [Depex] 43 | gEfiGraphicsOutputProtocolGuid 44 | -------------------------------------------------------------------------------- /Platform/CrScreenshotDxe/LICENSE: -------------------------------------------------------------------------------- 1 | Copyright (c) 2016, Nikolaj Schlej 2 | All rights reserved. 3 | 4 | Redistribution and use in source and binary forms, with or without 5 | modification, are permitted provided that the following conditions are met: 6 | 7 | * Redistributions of source code must retain the above copyright notice, this 8 | list of conditions and the following disclaimer. 9 | 10 | * Redistributions in binary form must reproduce the above copyright notice, 11 | this list of conditions and the following disclaimer in the documentation 12 | and/or other materials provided with the distribution. 13 | 14 | THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" 15 | AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE 16 | IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE 17 | DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE 18 | FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL 19 | DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR 20 | SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER 21 | CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, 22 | OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE 23 | OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 24 | 25 | -------------------------------------------------------------------------------- /Platform/OpenCanopy/Blending.h: -------------------------------------------------------------------------------- 1 | /** @file 2 | This file is part of OpenCanopy, OpenCore GUI. 3 | 4 | Copyright (c) 2021, Marvin Haeuser. All rights reserved.
5 | SPDX-License-Identifier: BSD-3-Clause 6 | **/ 7 | 8 | #ifndef BLENDING_H_ 9 | #define BLENDING_H_ 10 | 11 | #define RGB_APPLY_OPACITY(Rgba, Opacity) \ 12 | (((Rgba) * (Opacity)) / 0xFF) 13 | 14 | #endif // BLENDING_H_ 15 | -------------------------------------------------------------------------------- /Platform/OpenCanopy/Views/BootPicker.h: -------------------------------------------------------------------------------- 1 | /** @file 2 | This file is part of OpenCanopy, OpenCore GUI. 3 | 4 | Copyright (c) 2018-2019, Download-Fritz. All rights reserved.
5 | SPDX-License-Identifier: BSD-3-Clause 6 | **/ 7 | 8 | #ifndef BOOT_PICKER_H 9 | #define BOOT_PICKER_H 10 | 11 | #include "../OpenCanopy.h" 12 | 13 | typedef struct { 14 | GUI_OBJ_CHILD Hdr; 15 | GUI_IMAGE EntryIcon; 16 | GUI_IMAGE Label; 17 | OC_BOOT_ENTRY *Context; 18 | BOOLEAN CustomIcon; 19 | UINT8 Index; 20 | BOOLEAN ShowLeftShadow; 21 | INT16 LabelOffset; 22 | } GUI_VOLUME_ENTRY; 23 | 24 | typedef struct { 25 | GUI_OBJ_CHILD Hdr; 26 | UINT32 SelectedIndex; 27 | } GUI_VOLUME_PICKER; 28 | 29 | #endif // BOOT_PICKER_H 30 | -------------------------------------------------------------------------------- /Platform/OpenLegacyBoot/OpenLegacyBoot.inf: -------------------------------------------------------------------------------- 1 | ## @file 2 | # Legacy boot entry protocol implementation. 3 | # 4 | # Copyright (C) 2023, Goldfish64. All rights reserved.
5 | # SPDX-License-Identifier: BSD-3-Clause 6 | ## 7 | 8 | 9 | [Defines] 10 | INF_VERSION = 0x00010005 11 | BASE_NAME = OpenLegacyBoot 12 | ENTRY_POINT = UefiMain 13 | FILE_GUID = 4BE5FC32-9434-4799-9F8F-ECD579025074 14 | MODULE_TYPE = UEFI_DRIVER 15 | VERSION_STRING = 1.0 16 | 17 | [Packages] 18 | OpenCorePkg/OpenCorePkg.dec 19 | MdePkg/MdePkg.dec 20 | MdeModulePkg/MdeModulePkg.dec 21 | OvmfPkg/OvmfPkg.dec 22 | 23 | [Guids] 24 | gAppleLegacyLoadAppFileGuid ## SOMETIMES_CONSUMES 25 | 26 | [LibraryClasses] 27 | DebugLib 28 | OcBootManagementLib 29 | OcFileLib 30 | OcFlexArrayLib 31 | OcLegacyThunkLib 32 | SortLib 33 | UefiBootServicesTableLib 34 | UefiDriverEntryPoint 35 | UefiLib 36 | 37 | [Protocols] 38 | gOcBootEntryProtocolGuid ## PRODUCES 39 | gEfiLegacy8259ProtocolGuid ## SOMETIMES_CONSUMES 40 | 41 | [Sources] 42 | BiosDisk.c 43 | LegacyBootInternal.h 44 | LegacyBootSupport.c 45 | OpenLegacyBoot.c 46 | -------------------------------------------------------------------------------- /Platform/OpenLinuxBoot/OpenLinuxBoot.inf: -------------------------------------------------------------------------------- 1 | ## @file 2 | # Linux boot entry protocol implementation. 3 | # 4 | # Copyright (C) 2021, Mike Beaton. All rights reserved.
5 | # SPDX-License-Identifier: BSD-3-Clause 6 | ## 7 | 8 | 9 | [Defines] 10 | INF_VERSION = 0x00010005 11 | BASE_NAME = OpenLinuxBoot 12 | ENTRY_POINT = UefiMain 13 | FILE_GUID = B2EC4DF3-FC2C-4D24-B1D6-B2D2DE8D8172 14 | MODULE_TYPE = UEFI_DRIVER 15 | VERSION_STRING = 1.0 16 | 17 | [Packages] 18 | OpenCorePkg/OpenCorePkg.dec 19 | MdePkg/MdePkg.dec 20 | MdeModulePkg/MdeModulePkg.dec 21 | 22 | [Guids] 23 | gEfiPartTypeUnusedGuid ## SOMETIMES_CONSUMES 24 | 25 | [LibraryClasses] 26 | OcBootManagementLib 27 | DebugLib 28 | OcFileLib 29 | OcFlexArrayLib 30 | SortLib 31 | UefiBootServicesTableLib 32 | UefiDriverEntryPoint 33 | UefiLib 34 | 35 | [Protocols] 36 | gOcBootEntryProtocolGuid # PRODUCES 37 | 38 | [Sources] 39 | Autodetect.c 40 | GrubCfg.c 41 | GrubEnv.c 42 | GrubVars.c 43 | LinuxBootInternal.h 44 | LoaderEntry.c 45 | OpenLinuxBoot.c 46 | VersionCompare.c 47 | -------------------------------------------------------------------------------- /Platform/OpenPartitionDxe/PartitionDxe.uni: -------------------------------------------------------------------------------- 1 | // /** @file 2 | // Modules that produces the logic Block I/O protocol for every partition via the physical Block I/O. 3 | // 4 | // This module produces the logical Block I/O device that represents 5 | // the bytes from Start to End of the Parent Block I/O device. 6 | // The partition of physical BlockIo device supported is one of legacy MBR, GPT, 7 | // and "El Torito" partitions. 8 | // 9 | // Caution: This module requires additional review when modified. 10 | // This driver will have external input - disk partition. 11 | // This external input must be validated carefully to avoid security issue like 12 | // buffer overflow, integer overflow. 13 | // 14 | // Copyright (c) 2006 - 2018, Intel Corporation. All rights reserved.
15 | // 16 | // SPDX-License-Identifier: BSD-2-Clause-Patent 17 | // 18 | // **/ 19 | 20 | 21 | #string STR_MODULE_ABSTRACT #language en-US "Produces the logic Block I/O protocol for every partition via the physical Block I/O." 22 | 23 | #string STR_MODULE_DESCRIPTION #language en-US "This module produces the logical Block I/O device that represents the bytes from Start to End of the Parent Block I/O device. The partition of physical BlockIO device supported is one of legacy MBR, GPT, and \"El Torito\" partitions.

" 24 | 25 | -------------------------------------------------------------------------------- /Platform/OpenPartitionDxe/PartitionDxeExtra.uni: -------------------------------------------------------------------------------- 1 | // /** @file 2 | // PartitionDxe Localized Strings and Content 3 | // 4 | // Copyright (c) 2013 - 2018, Intel Corporation. All rights reserved.
5 | // 6 | // SPDX-License-Identifier: BSD-2-Clause-Patent 7 | // 8 | // **/ 9 | 10 | #string STR_PROPERTIES_MODULE_NAME 11 | #language en-US 12 | "Partition DXE Driver" 13 | 14 | 15 | -------------------------------------------------------------------------------- /Platform/OpenUsbKbDxe/AppleKey.h: -------------------------------------------------------------------------------- 1 | /** @file 2 | Header file for Apple-specific USB Keyboard Driver's Data Structures. 3 | 4 | Copyright (c) 2016 - 2018, Download-Fritz. All rights reserved.
5 | This program and the accompanying materials are licensed and made available 6 | under the terms and conditions of the BSD License which accompanies this 7 | distribution. The full text of the license may be found at 8 | http://opensource.org/licenses/bsd-license.php. 9 | 10 | THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS, 11 | WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED. 12 | 13 | **/ 14 | 15 | #ifndef APPLE_USB_KB_H_ 16 | #define APPLE_USB_KB_H_ 17 | 18 | #include "EfiKey.h" 19 | 20 | #include 21 | 22 | #include 23 | #include 24 | #include 25 | #include 26 | 27 | // 28 | // Functions of Keyboard Info Protocol 29 | // 30 | VOID 31 | UsbKbLocateAppleKeyMapDb ( 32 | IN USB_KB_DEV *UsbKeyboardDevice 33 | ); 34 | 35 | VOID 36 | UsbKbFreeAppleKeyMapDb ( 37 | IN USB_KB_DEV *UsbKeyboardDevice 38 | ); 39 | 40 | #endif // APPLE_USB_KB_H_ 41 | -------------------------------------------------------------------------------- /Platform/OpenUsbKbDxe/UsbKbDxeExtra.uni: -------------------------------------------------------------------------------- 1 | // /** @file 2 | // UsbKbDxe Localized Strings and Content 3 | // 4 | // Copyright (c) 2013 - 2018, Intel Corporation. All rights reserved.
5 | // 6 | // SPDX-License-Identifier: BSD-2-Clause-Patent 7 | // 8 | // **/ 9 | 10 | #string STR_PROPERTIES_MODULE_NAME 11 | #language en-US 12 | "USB Keyboard DXE Driver" 13 | 14 | 15 | -------------------------------------------------------------------------------- /Platform/OpenVariableRuntimeDxe/SpeculationBarrierDxe.c: -------------------------------------------------------------------------------- 1 | /** @file 2 | Barrier to stop speculative execution (DXE version). 3 | 4 | Copyright (c) 2018, Intel Corporation. All rights reserved.
5 | SPDX-License-Identifier: BSD-2-Clause-Patent 6 | 7 | **/ 8 | 9 | #include "Variable.h" 10 | 11 | /** 12 | This service is consumed by the variable modules to place a barrier to stop 13 | speculative execution. 14 | 15 | Ensures that no later instruction will execute speculatively, until all prior 16 | instructions have completed. 17 | 18 | **/ 19 | VOID 20 | VariableSpeculationBarrier ( 21 | VOID 22 | ) 23 | { 24 | // 25 | // Do nothing. 26 | // 27 | } 28 | -------------------------------------------------------------------------------- /Platform/ResetNvramEntry/ResetNvramEntry.inf: -------------------------------------------------------------------------------- 1 | ## @file 2 | # Boot entry protocol implementation of Reset NVRAM boot picker entry. 3 | # 4 | # Copyright (C) 2022, Mike Beaton. All rights reserved.
5 | # SPDX-License-Identifier: BSD-3-Clause 6 | ## 7 | 8 | 9 | [Defines] 10 | INF_VERSION = 0x00010005 11 | BASE_NAME = ResetNvramEntry 12 | ENTRY_POINT = UefiMain 13 | FILE_GUID = 88401E59-1FD2-44C1-9092-539866D48676 14 | MODULE_TYPE = UEFI_DRIVER 15 | VERSION_STRING = 1.0 16 | 17 | [Packages] 18 | OpenCorePkg/OpenCorePkg.dec 19 | MdePkg/MdePkg.dec 20 | MdeModulePkg/MdeModulePkg.dec 21 | UefiCpuPkg/UefiCpuPkg.dec 22 | 23 | [LibraryClasses] 24 | DebugLib 25 | OcAppleKeyMapLib 26 | OcBootManagementLib 27 | OcDirectResetLib 28 | OcVariableLib 29 | UefiBootServicesTableLib 30 | UefiRuntimeServicesTableLib 31 | UefiDriverEntryPoint 32 | UefiLib 33 | 34 | [Protocols] 35 | gOcBootEntryProtocolGuid # PRODUCES 36 | 37 | [Sources] 38 | ResetNvramEntry.c 39 | -------------------------------------------------------------------------------- /Platform/ToggleSipEntry/ToggleSipEntry.inf: -------------------------------------------------------------------------------- 1 | ## @file 2 | # Boot entry protocol implementation of Toggle SIP boot picker entry. 3 | # 4 | # Copyright (C) 2022, Mike Beaton. All rights reserved.
5 | # SPDX-License-Identifier: BSD-3-Clause 6 | ## 7 | 8 | 9 | [Defines] 10 | INF_VERSION = 0x00010005 11 | BASE_NAME = ToggleSipEntry 12 | ENTRY_POINT = UefiMain 13 | FILE_GUID = C6215026-239A-44B7-B140-41348A32913C 14 | MODULE_TYPE = UEFI_DRIVER 15 | VERSION_STRING = 1.0 16 | 17 | [Packages] 18 | OpenCorePkg/OpenCorePkg.dec 19 | MdePkg/MdePkg.dec 20 | MdeModulePkg/MdeModulePkg.dec 21 | 22 | [LibraryClasses] 23 | DebugLib 24 | OcBootManagementLib 25 | UefiBootServicesTableLib 26 | UefiDriverEntryPoint 27 | UefiLib 28 | 29 | [Protocols] 30 | gOcBootEntryProtocolGuid # PRODUCES 31 | 32 | [Sources] 33 | ToggleSipEntry.c 34 | -------------------------------------------------------------------------------- /Staging/EnableGop/Release/EnableGopDirect_1.4.efi: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CloverHackyColor/OpenCorePkg/e21feb5907444256f4ff4c9b2be33be59e5a13cd/Staging/EnableGop/Release/EnableGopDirect_1.4.efi -------------------------------------------------------------------------------- /Staging/EnableGop/Release/EnableGopDirect_1.4.ffs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CloverHackyColor/OpenCorePkg/e21feb5907444256f4ff4c9b2be33be59e5a13cd/Staging/EnableGop/Release/EnableGopDirect_1.4.ffs -------------------------------------------------------------------------------- /Staging/EnableGop/Release/EnableGop_1.4.efi: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CloverHackyColor/OpenCorePkg/e21feb5907444256f4ff4c9b2be33be59e5a13cd/Staging/EnableGop/Release/EnableGop_1.4.efi -------------------------------------------------------------------------------- /Staging/EnableGop/Release/EnableGop_1.4.ffs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CloverHackyColor/OpenCorePkg/e21feb5907444256f4ff4c9b2be33be59e5a13cd/Staging/EnableGop/Release/EnableGop_1.4.ffs -------------------------------------------------------------------------------- /Staging/EnableGop/UEFITool_Inserted_Screenshot.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CloverHackyColor/OpenCorePkg/e21feb5907444256f4ff4c9b2be33be59e5a13cd/Staging/EnableGop/UEFITool_Inserted_Screenshot.png -------------------------------------------------------------------------------- /Staging/README.md: -------------------------------------------------------------------------------- 1 | Staging drivers considered experimental and not production ready. 2 | 3 | ## AudioDxe 4 | Improved audio driver (currently only Intel HD audio). 5 | HDMI or other digital outputs don't work. 6 | 7 | ## EnableGop 8 | Standalone firmware-embeddable driver for non-native GPU support on EFI-era Mac Pro and iMac. 9 | 10 | ## OpenHfsPlus 11 | This driver implements HFS+ support with bless extensions. 12 | -------------------------------------------------------------------------------- /Uncrustify.yml: -------------------------------------------------------------------------------- 1 | exclude_list: 2 | - UDK 3 | - Library/OcAppleImg4Lib/libDER 4 | - Library/OcAppleImg4Lib/libDERImg4 5 | - Library/OcCompressionLib/lzss 6 | - Library/OcCompressionLib/lzvn 7 | - Library/OcCompressionLib/zlib 8 | - Library/OcMp3Lib/helix 9 | - Staging/OpenHfsPlus 10 | - Utilities/acdtinfo 11 | - Utilities/BaseTools 12 | - Utilities/disklabel 13 | - Utilities/EfiResTool 14 | - Utilities/icnspack 15 | - Utilities/LogoutHook 16 | - Utilities/macserial 17 | - Utilities/RsaTool 18 | - Utilities/WinNvram 19 | - Library/OcAfterBootCompatLib/RelocationCallGate.h 20 | - Library/OcAppleImg4Lib/libDER_config.h 21 | - Library/OcAppleKernelLib/LegacyBcopy.h 22 | - Library/OcCompilerIntrinsicsLib/MsvcMath32.c 23 | - Library/OcGuardLib/Ubsan.c 24 | - Library/OcGuardLib/Ubsan.h 25 | - Library/OcGuardLib/UbsanPrintf.c 26 | - Library/OcMacInfoLib/AutoGenerated.c 27 | - Library/OcMemoryLib/UmmMalloc.c 28 | - Library/OcPngLib/lodepng.c 29 | - Library/OcPngLib/lodepng.h 30 | - User/Include/UserPseudoRandom.h 31 | - User/Library/UserPseudoRandom.c 32 | -------------------------------------------------------------------------------- /User/Include/UserMemory.h: -------------------------------------------------------------------------------- 1 | /** @file 2 | Copyright (c) 2022, vit9696. All rights reserved. 3 | SPDX-License-Identifier: BSD-3-Clause 4 | **/ 5 | 6 | #ifndef USER_MEMORY_H 7 | #define USER_MEMORY_H 8 | 9 | extern UINTN mPoolAllocations; 10 | extern UINTN mPageAllocations; 11 | 12 | VOID 13 | ConfigureMemoryAllocations ( 14 | IN CONST UINT8 *Data, 15 | IN UINTN Size, 16 | IN OUT UINT32 *ConfigSize 17 | ); 18 | 19 | VOID 20 | SetPoolAllocationSizeLimit ( 21 | UINTN AllocationSize 22 | ); 23 | 24 | #endif // USER_MEMORY_H 25 | -------------------------------------------------------------------------------- /User/Include/UserPseudoRandom.h: -------------------------------------------------------------------------------- 1 | /** @file 2 | Copyright (c) 2020, vit9696. All rights reserved. 3 | SPDX-License-Identifier: BSD-3-Clause 4 | **/ 5 | 6 | #ifndef OC_USER_PSEUDO_RANDOM_H 7 | #define OC_USER_PSEUDO_RANDOM_H 8 | 9 | #include 10 | 11 | uint32_t pseudo_random(void); 12 | uint32_t pseudo_random_between(uint32_t from, uint32_t to); 13 | 14 | #endif // OC_USER_PSEUDO_RANDOM_H 15 | -------------------------------------------------------------------------------- /User/Library/UserUnicodeCollation.c: -------------------------------------------------------------------------------- 1 | /** @file 2 | Copyright (c) 2023, Savva Mitrofanov. All rights reserved. 3 | SPDX-License-Identifier: BSD-3-Clause 4 | **/ 5 | 6 | #include 7 | #include 8 | 9 | UINT8 _gPcd_FixedAtBuild_PcdUefiVariableDefaultLang[4] = { 101, 110, 103, 0 }; 10 | UINT8 _gPcd_FixedAtBuild_PcdUefiVariableDefaultPlatformLang[6] = { 101, 110, 45, 85, 83, 0 }; 11 | 12 | VOID 13 | UserUnicodeCollationInstallProtocol ( 14 | OUT EFI_UNICODE_COLLATION_PROTOCOL **Interface 15 | ) 16 | { 17 | OcUnicodeCollationInitializeMappingTables (); 18 | 19 | *Interface = &gInternalUnicode2Eng; 20 | } 21 | -------------------------------------------------------------------------------- /Utilities/ACPIe/Makefile: -------------------------------------------------------------------------------- 1 | ## @file 2 | # Copyright (c) 2020, Ubsefor, koralexa. All rights reserved. 3 | # SPDX-License-Identifier: BSD-3-Clause 4 | ## 5 | 6 | PROJECT = ACPIe 7 | PRODUCT = $(PROJECT)$(INFIX)$(SUFFIX) 8 | OBJS = $(PROJECT).o AcpiParser.o 9 | VPATH = ../../Library/OcAcpiLib:$ 10 | 11 | include ../../User/Makefile 12 | 13 | ifeq ($(DEBUG),1) 14 | CFLAGS += -DVERBOSE 15 | endif 16 | -------------------------------------------------------------------------------- /Utilities/ACPIe/Tests/Correct/test10_output.txt: -------------------------------------------------------------------------------- 1 | EXIT: File error in table file! 2 | -------------------------------------------------------------------------------- /Utilities/ACPIe/Tests/Correct/test11_output.txt: -------------------------------------------------------------------------------- 1 | EXIT: ACPI table is incorrect or not supported by parser! 2 | -------------------------------------------------------------------------------- /Utilities/ACPIe/Tests/Correct/test12_output.txt: -------------------------------------------------------------------------------- 1 | Returned offset: 71745 2 | -------------------------------------------------------------------------------- /Utilities/ACPIe/Tests/Correct/test13_output.txt: -------------------------------------------------------------------------------- 1 | Returned offset: 179803 2 | -------------------------------------------------------------------------------- /Utilities/ACPIe/Tests/Correct/test14_output.txt: -------------------------------------------------------------------------------- 1 | Returned offset: 15593 2 | -------------------------------------------------------------------------------- /Utilities/ACPIe/Tests/Correct/test15_output.txt: -------------------------------------------------------------------------------- 1 | EXIT: ACPI table is incorrect or not supported by parser! 2 | -------------------------------------------------------------------------------- /Utilities/ACPIe/Tests/Correct/test16_output.txt: -------------------------------------------------------------------------------- 1 | Returned offset: 75 2 | -------------------------------------------------------------------------------- /Utilities/ACPIe/Tests/Correct/test17_output.txt: -------------------------------------------------------------------------------- 1 | Returned offset: 5462 2 | -------------------------------------------------------------------------------- /Utilities/ACPIe/Tests/Correct/test18_output.txt: -------------------------------------------------------------------------------- 1 | Returned offset: 22728 2 | -------------------------------------------------------------------------------- /Utilities/ACPIe/Tests/Correct/test19_output.txt: -------------------------------------------------------------------------------- 1 | Returned offset: 10009 2 | -------------------------------------------------------------------------------- /Utilities/ACPIe/Tests/Correct/test1_output.txt: -------------------------------------------------------------------------------- 1 | Returned offset: 121 2 | -------------------------------------------------------------------------------- /Utilities/ACPIe/Tests/Correct/test20_output.txt: -------------------------------------------------------------------------------- 1 | EXIT: No entry found in the table. 2 | -------------------------------------------------------------------------------- /Utilities/ACPIe/Tests/Correct/test21_output.txt: -------------------------------------------------------------------------------- 1 | Returned offset: 8023 2 | -------------------------------------------------------------------------------- /Utilities/ACPIe/Tests/Correct/test2_output.txt: -------------------------------------------------------------------------------- 1 | EXIT: No entry found in the table. 2 | -------------------------------------------------------------------------------- /Utilities/ACPIe/Tests/Correct/test3_output.txt: -------------------------------------------------------------------------------- 1 | Returned offset: 3878 2 | -------------------------------------------------------------------------------- /Utilities/ACPIe/Tests/Correct/test4_output.txt: -------------------------------------------------------------------------------- 1 | Returned offset: 385 2 | -------------------------------------------------------------------------------- /Utilities/ACPIe/Tests/Correct/test5_output.txt: -------------------------------------------------------------------------------- 1 | Returned offset: 281 2 | -------------------------------------------------------------------------------- /Utilities/ACPIe/Tests/Correct/test6_output.txt: -------------------------------------------------------------------------------- 1 | Returned offset: 281 2 | -------------------------------------------------------------------------------- /Utilities/ACPIe/Tests/Correct/test7_output.txt: -------------------------------------------------------------------------------- 1 | Returned offset: 8797 2 | -------------------------------------------------------------------------------- /Utilities/ACPIe/Tests/Correct/test8_output.txt: -------------------------------------------------------------------------------- 1 | EXIT: Invalid parameter! 2 | -------------------------------------------------------------------------------- /Utilities/ACPIe/Tests/Correct/test9_output.txt: -------------------------------------------------------------------------------- 1 | EXIT: Invalid parameter! 2 | -------------------------------------------------------------------------------- /Utilities/ACPIe/Tests/Input/DSDT-XOSI.bin: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CloverHackyColor/OpenCorePkg/e21feb5907444256f4ff4c9b2be33be59e5a13cd/Utilities/ACPIe/Tests/Input/DSDT-XOSI.bin -------------------------------------------------------------------------------- /Utilities/ACPIe/Tests/Input/DSDT-legacy.bin: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CloverHackyColor/OpenCorePkg/e21feb5907444256f4ff4c9b2be33be59e5a13cd/Utilities/ACPIe/Tests/Input/DSDT-legacy.bin -------------------------------------------------------------------------------- /Utilities/ACPIe/Tests/Input/DSDT.bin: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CloverHackyColor/OpenCorePkg/e21feb5907444256f4ff4c9b2be33be59e5a13cd/Utilities/ACPIe/Tests/Input/DSDT.bin -------------------------------------------------------------------------------- /Utilities/ACPIe/Tests/Input/RSDT.bin: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CloverHackyColor/OpenCorePkg/e21feb5907444256f4ff4c9b2be33be59e5a13cd/Utilities/ACPIe/Tests/Input/RSDT.bin -------------------------------------------------------------------------------- /Utilities/ACPIe/Tests/Input/SSDT-0.bin: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CloverHackyColor/OpenCorePkg/e21feb5907444256f4ff4c9b2be33be59e5a13cd/Utilities/ACPIe/Tests/Input/SSDT-0.bin -------------------------------------------------------------------------------- /Utilities/ACPIe/Tests/Input/SSDT-1.bin: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CloverHackyColor/OpenCorePkg/e21feb5907444256f4ff4c9b2be33be59e5a13cd/Utilities/ACPIe/Tests/Input/SSDT-1.bin -------------------------------------------------------------------------------- /Utilities/ACPIe/Tests/Input/SSDT-x4_0.bin: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CloverHackyColor/OpenCorePkg/e21feb5907444256f4ff4c9b2be33be59e5a13cd/Utilities/ACPIe/Tests/Input/SSDT-x4_0.bin -------------------------------------------------------------------------------- /Utilities/ACPIe/Tests/Input/broken3.bin: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CloverHackyColor/OpenCorePkg/e21feb5907444256f4ff4c9b2be33be59e5a13cd/Utilities/ACPIe/Tests/Input/broken3.bin -------------------------------------------------------------------------------- /Utilities/ACPIe/Tests/Input/corrupt1.bin: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CloverHackyColor/OpenCorePkg/e21feb5907444256f4ff4c9b2be33be59e5a13cd/Utilities/ACPIe/Tests/Input/corrupt1.bin -------------------------------------------------------------------------------- /Utilities/ACPIe/Tests/Input/nesting.bin: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CloverHackyColor/OpenCorePkg/e21feb5907444256f4ff4c9b2be33be59e5a13cd/Utilities/ACPIe/Tests/Input/nesting.bin -------------------------------------------------------------------------------- /Utilities/AppleEfiSignTool/Makefile: -------------------------------------------------------------------------------- 1 | ## @file 2 | # Copyright (c) 2018, savvas. All rights reserved. 3 | # Copyright (c) 2020, PMheart. All rights reserved. 4 | # SPDX-License-Identifier: BSD-3-Clause 5 | ## 6 | 7 | PROJECT = AppleEfiSignTool 8 | PRODUCT = $(PROJECT)$(INFIX)$(SUFFIX) 9 | OBJS = $(PROJECT).o \ 10 | PeCoffDebug.o \ 11 | PeCoffHash.o \ 12 | PeCoffInfo.o \ 13 | PeCoffInit.o \ 14 | PeCoffLoad.o \ 15 | PeCoffRelocate.o \ 16 | OcPeCoffExtLib.o \ 17 | OcPeCoffFixupInit.o 18 | VPATH = $(UDK_PATH)/MdePkg/Library/BasePeCoffLib2:$\ 19 | ../../Library/OcPeCoffExtLib:$\ 20 | 21 | include ../../User/Makefile 22 | -------------------------------------------------------------------------------- /Utilities/AppleEfiSignTool/README.md: -------------------------------------------------------------------------------- 1 | AppleEfiSignTool v1.1 2 | ===================== 3 | 4 | Open source tool for verifying Apple EFI binary signatures. Supports PE and Apple Fat binaries. 5 | 6 | ## Capabilities 7 | - Verifies Apple Fat binary digital signatures 8 | - Verifies Apple PE image digital signatures 9 | - Displays APFS version information if image is APFS driver 10 | - Displays W^X and section overlap fixups when -f option is used 11 | -------------------------------------------------------------------------------- /Utilities/AppleEfiSignTool/Samples/apfs.efi: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CloverHackyColor/OpenCorePkg/e21feb5907444256f4ff4c9b2be33be59e5a13cd/Utilities/AppleEfiSignTool/Samples/apfs.efi -------------------------------------------------------------------------------- /Utilities/AppleEfiSignTool/Samples/apfs_10.15.efi: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CloverHackyColor/OpenCorePkg/e21feb5907444256f4ff4c9b2be33be59e5a13cd/Utilities/AppleEfiSignTool/Samples/apfs_10.15.efi -------------------------------------------------------------------------------- /Utilities/AppleEfiSignTool/Samples/apfs_aligned_10.15.efi: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CloverHackyColor/OpenCorePkg/e21feb5907444256f4ff4c9b2be33be59e5a13cd/Utilities/AppleEfiSignTool/Samples/apfs_aligned_10.15.efi -------------------------------------------------------------------------------- /Utilities/AppleEfiSignTool/Samples/boot_10.10.5.efi: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CloverHackyColor/OpenCorePkg/e21feb5907444256f4ff4c9b2be33be59e5a13cd/Utilities/AppleEfiSignTool/Samples/boot_10.10.5.efi -------------------------------------------------------------------------------- /Utilities/AppleEfiSignTool/Samples/boot_10.11.6.efi: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CloverHackyColor/OpenCorePkg/e21feb5907444256f4ff4c9b2be33be59e5a13cd/Utilities/AppleEfiSignTool/Samples/boot_10.11.6.efi -------------------------------------------------------------------------------- /Utilities/AppleEfiSignTool/Samples/boot_10.12.6.efi: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CloverHackyColor/OpenCorePkg/e21feb5907444256f4ff4c9b2be33be59e5a13cd/Utilities/AppleEfiSignTool/Samples/boot_10.12.6.efi -------------------------------------------------------------------------------- /Utilities/AppleEfiSignTool/Samples/boot_10.13.6.efi: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CloverHackyColor/OpenCorePkg/e21feb5907444256f4ff4c9b2be33be59e5a13cd/Utilities/AppleEfiSignTool/Samples/boot_10.13.6.efi -------------------------------------------------------------------------------- /Utilities/AppleEfiSignTool/Samples/boot_10.14.0.18A371a.efi: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CloverHackyColor/OpenCorePkg/e21feb5907444256f4ff4c9b2be33be59e5a13cd/Utilities/AppleEfiSignTool/Samples/boot_10.14.0.18A371a.efi -------------------------------------------------------------------------------- /Utilities/AppleEfiSignTool/Samples/boot_10.14.0.18A389.efi: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CloverHackyColor/OpenCorePkg/e21feb5907444256f4ff4c9b2be33be59e5a13cd/Utilities/AppleEfiSignTool/Samples/boot_10.14.0.18A389.efi -------------------------------------------------------------------------------- /Utilities/AppleEfiSignTool/Samples/boot_10.15.7.19H15.efi: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CloverHackyColor/OpenCorePkg/e21feb5907444256f4ff4c9b2be33be59e5a13cd/Utilities/AppleEfiSignTool/Samples/boot_10.15.7.19H15.efi -------------------------------------------------------------------------------- /Utilities/AppleEfiSignTool/Samples/boot_10.4.11.32.efi: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CloverHackyColor/OpenCorePkg/e21feb5907444256f4ff4c9b2be33be59e5a13cd/Utilities/AppleEfiSignTool/Samples/boot_10.4.11.32.efi -------------------------------------------------------------------------------- /Utilities/AppleEfiSignTool/Samples/boot_10.4.11.64.efi: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CloverHackyColor/OpenCorePkg/e21feb5907444256f4ff4c9b2be33be59e5a13cd/Utilities/AppleEfiSignTool/Samples/boot_10.4.11.64.efi -------------------------------------------------------------------------------- /Utilities/AppleEfiSignTool/Samples/boot_10.4.11.efi: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CloverHackyColor/OpenCorePkg/e21feb5907444256f4ff4c9b2be33be59e5a13cd/Utilities/AppleEfiSignTool/Samples/boot_10.4.11.efi -------------------------------------------------------------------------------- /Utilities/AppleEfiSignTool/Samples/boot_10.4.7.efi: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CloverHackyColor/OpenCorePkg/e21feb5907444256f4ff4c9b2be33be59e5a13cd/Utilities/AppleEfiSignTool/Samples/boot_10.4.7.efi -------------------------------------------------------------------------------- /Utilities/AppleEfiSignTool/Samples/boot_10.4.8.efi: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CloverHackyColor/OpenCorePkg/e21feb5907444256f4ff4c9b2be33be59e5a13cd/Utilities/AppleEfiSignTool/Samples/boot_10.4.8.efi -------------------------------------------------------------------------------- /Utilities/AppleEfiSignTool/Samples/boot_10.4.9.efi: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CloverHackyColor/OpenCorePkg/e21feb5907444256f4ff4c9b2be33be59e5a13cd/Utilities/AppleEfiSignTool/Samples/boot_10.4.9.efi -------------------------------------------------------------------------------- /Utilities/AppleEfiSignTool/Samples/boot_10.5.6.efi: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CloverHackyColor/OpenCorePkg/e21feb5907444256f4ff4c9b2be33be59e5a13cd/Utilities/AppleEfiSignTool/Samples/boot_10.5.6.efi -------------------------------------------------------------------------------- /Utilities/AppleEfiSignTool/Samples/boot_10.5.8.efi: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CloverHackyColor/OpenCorePkg/e21feb5907444256f4ff4c9b2be33be59e5a13cd/Utilities/AppleEfiSignTool/Samples/boot_10.5.8.efi -------------------------------------------------------------------------------- /Utilities/AppleEfiSignTool/Samples/boot_10.6.8.efi: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CloverHackyColor/OpenCorePkg/e21feb5907444256f4ff4c9b2be33be59e5a13cd/Utilities/AppleEfiSignTool/Samples/boot_10.6.8.efi -------------------------------------------------------------------------------- /Utilities/AppleEfiSignTool/Samples/boot_10.7.5.efi: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CloverHackyColor/OpenCorePkg/e21feb5907444256f4ff4c9b2be33be59e5a13cd/Utilities/AppleEfiSignTool/Samples/boot_10.7.5.efi -------------------------------------------------------------------------------- /Utilities/AppleEfiSignTool/Samples/boot_10.8.5.efi: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CloverHackyColor/OpenCorePkg/e21feb5907444256f4ff4c9b2be33be59e5a13cd/Utilities/AppleEfiSignTool/Samples/boot_10.8.5.efi -------------------------------------------------------------------------------- /Utilities/AppleEfiSignTool/Samples/boot_10.9.5.efi: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CloverHackyColor/OpenCorePkg/e21feb5907444256f4ff4c9b2be33be59e5a13cd/Utilities/AppleEfiSignTool/Samples/boot_10.9.5.efi -------------------------------------------------------------------------------- /Utilities/AppleEfiSignTool/Samples/boot_11.0.1.20B29.efi: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CloverHackyColor/OpenCorePkg/e21feb5907444256f4ff4c9b2be33be59e5a13cd/Utilities/AppleEfiSignTool/Samples/boot_11.0.1.20B29.efi -------------------------------------------------------------------------------- /Utilities/BaseTools/Makefile: -------------------------------------------------------------------------------- 1 | CC ?= gcc 2 | CFLAGS ?= -O3 -s 3 | MKDIR ?= mkdir 4 | RM ?= /bin/rm 5 | DIST ?= $(shell uname) 6 | 7 | ifeq ($(DIST),Darwin) 8 | CFLAGS+=-mmacosx-version-min=10.6 9 | endif 10 | 11 | BINDIR=bin.$(DIST) 12 | PRODUCTS=$(BINDIR)/GenPage $(BINDIR)/EfiLdrImage 13 | 14 | all: $(PRODUCTS) 15 | 16 | clean: 17 | $(RM) -f $(PRODUCTS) 18 | 19 | $(BINDIR)/GenPage: GenPage.c VirtualMemory.h 20 | @$(MKDIR) -p $(BINDIR) 21 | $(CC) $(CFLAGS) -o $@ $< 22 | 23 | $(BINDIR)/EfiLdrImage: EfiLdrImage.c 24 | @$(MKDIR) -p $(BINDIR) 25 | $(CC) $(CFLAGS) -o $@ $< 26 | -------------------------------------------------------------------------------- /Utilities/CreateVault/RsaTool: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CloverHackyColor/OpenCorePkg/e21feb5907444256f4ff4c9b2be33be59e5a13cd/Utilities/CreateVault/RsaTool -------------------------------------------------------------------------------- /Utilities/EfiResTool/Makefile: -------------------------------------------------------------------------------- 1 | ## @file 2 | # Copyright (c) 2019, vit9696. All rights reserved. 3 | # Copyright (c) 2020, PMheart. All rights reserved. 4 | # SPDX-License-Identifier: BSD-3-Clause 5 | ## 6 | 7 | STANDALONE = 1 8 | PROJECT = EfiResTool 9 | PRODUCT = $(PROJECT)$(INFIX)$(SUFFIX) 10 | OBJS = $(PROJECT).o 11 | include ../../User/Makefile 12 | -------------------------------------------------------------------------------- /Utilities/EfiResTool/README.md: -------------------------------------------------------------------------------- 1 | EfiResTool 2 | ============== 3 | 4 | Open source tool to work with APPL efires archives by stek29 5 | https://gist.github.com/stek29/d13a34229a09020e0c1b0d897c42b433 -------------------------------------------------------------------------------- /Utilities/FindSerialPort/README.md: -------------------------------------------------------------------------------- 1 | FindSerialPort 2 | ================ 3 | 4 | This script finds PCIe serial ports and outputs their paths. Thanks [joevt](https://github.com/joevt) for writing it. 5 | -------------------------------------------------------------------------------- /Utilities/LegacyBoot/BootInstall_IA32.tool: -------------------------------------------------------------------------------- 1 | #!/bin/bash 2 | 3 | cd "$(dirname "$0")" || exit 1 4 | export ARCHS=IA32 5 | export DUET_SUFFIX="" 6 | source BootInstallBase.sh 7 | -------------------------------------------------------------------------------- /Utilities/LegacyBoot/BootInstall_IA32_BlockIO.tool: -------------------------------------------------------------------------------- 1 | #!/bin/bash 2 | 3 | cd "$(dirname "$0")" || exit 1 4 | export ARCHS=IA32 5 | export DUET_SUFFIX="-blockio" 6 | source BootInstallBase.sh 7 | -------------------------------------------------------------------------------- /Utilities/LegacyBoot/BootInstall_X64.tool: -------------------------------------------------------------------------------- 1 | #!/bin/bash 2 | 3 | cd "$(dirname "$0")" || exit 1 4 | export ARCHS=X64 5 | export DUET_SUFFIX="" 6 | source BootInstallBase.sh 7 | -------------------------------------------------------------------------------- /Utilities/LegacyBoot/BootInstall_X64_BlockIO.tool: -------------------------------------------------------------------------------- 1 | #!/bin/bash 2 | 3 | cd "$(dirname "$0")" || exit 1 4 | export ARCHS=X64 5 | export DUET_SUFFIX="-blockio" 6 | source BootInstallBase.sh 7 | -------------------------------------------------------------------------------- /Utilities/LegacyBoot/README.md: -------------------------------------------------------------------------------- 1 | BootInstall 2 | =========== 3 | 4 | This tool installs legacy DuetPkg environment on GPT-formatted disk 5 | to enable UEFI environment on BIOS-based systems. 6 | 7 | Source code: https://github.com/acidanthera/DuetPkg 8 | -------------------------------------------------------------------------------- /Utilities/LegacyBoot/boot0: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CloverHackyColor/OpenCorePkg/e21feb5907444256f4ff4c9b2be33be59e5a13cd/Utilities/LegacyBoot/boot0 -------------------------------------------------------------------------------- /Utilities/LegacyBoot/boot1f32: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CloverHackyColor/OpenCorePkg/e21feb5907444256f4ff4c9b2be33be59e5a13cd/Utilities/LegacyBoot/boot1f32 -------------------------------------------------------------------------------- /Utilities/LogoutHook/Launchd.command.plist: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | Label 6 | $LABEL 7 | ProgramArguments 8 | 9 | sh 10 | $HELPER 11 | $PARAM 12 | 13 | StandardOutPath 14 | $LOGFILE 15 | StandardErrorPath 16 | $LOGFILE 17 | RunAtLoad 18 | 19 | KeepAlive 20 | 21 | EnableGlobbing 22 | 23 | EnableTransactions 24 | 25 | 26 | 27 | -------------------------------------------------------------------------------- /Utilities/LogoutHook/Makefile: -------------------------------------------------------------------------------- 1 | ## @file 2 | # Created by Rodion Shynharov on 27.12.20. 3 | # Copyright © 2020 Rodion Shingarev. All rights reserved. 4 | # based on the original Apple NVRAM utility 5 | # Copyright (c) 2000-2016 Apple Inc. All rights reserved. 6 | # https://opensource.apple.com/source/system_cmds/system_cmds-854.40.2/nvram.tproj/nvram.c 7 | ## 8 | 9 | STANDALONE = 1 10 | PROJECT = nvramdump 11 | PRODUCT = $(PROJECT)$(INFIX)$(SUFFIX) 12 | OBJS = $(PROJECT).o 13 | include ../../User/Makefile 14 | 15 | ifeq ($(DIST),Darwin) 16 | LDFLAGS += -Wl,-framework,IOKit -Wl,-framework,CoreFoundation 17 | endif 18 | -------------------------------------------------------------------------------- /Utilities/LogoutHook/README.md: -------------------------------------------------------------------------------- 1 | # LogoutHook 2 | 3 | ## Script 4 | 5 | ### Usage 6 | ```./Launchd.command``` 7 | 8 | ### Installation 9 | ```./Launchd.command install``` 10 | 11 | ### Status 12 | ```./Launchd.command status``` 13 | 14 | Shows non-empty daemon pid only, if installed with default settings. 15 | 16 | ### Log 17 | ```/var/log/org.acidanthera.nvramhook.launchd/launchd.log``` 18 | -------------------------------------------------------------------------------- /Utilities/RsaTool/Makefile: -------------------------------------------------------------------------------- 1 | ## @file 2 | # Copyright (c) 2020, PMheart. All rights reserved. 3 | # SPDX-License-Identifier: BSD-3-Clause 4 | ## 5 | 6 | STANDALONE = 1 7 | PROJECT = RsaTool 8 | PRODUCT = $(PROJECT)$(INFIX)$(SUFFIX) 9 | OBJS = $(PROJECT).o 10 | include ../../User/Makefile 11 | 12 | ifeq ($(DIST),Darwin) 13 | libressl/lib/libcrypto.a: 14 | ./build_libressl.sh 15 | 16 | $(OUT_DIR)/$(PROJECT).o: libressl/lib/libcrypto.a 17 | endif 18 | 19 | CFLAGS += -Ilibressl/include -I/usr/local/opt/openssl/include -I/opt/local/include -Wno-deprecated-declarations 20 | LDFLAGS += -Llibressl/lib -L/usr/local/opt/openssl/lib -L/opt/local/lib 21 | LDLIBS += -lcrypto 22 | -------------------------------------------------------------------------------- /Utilities/TestBmf/BmfDummy.c: -------------------------------------------------------------------------------- 1 | /** @file 2 | This file is part of OpenCanopy, OpenCore GUI. 3 | 4 | Copyright (c) 2018-2019, Download-Fritz. All rights reserved.
5 | SPDX-License-Identifier: BSD-3-Clause 6 | **/ 7 | 8 | #include 9 | 10 | EFI_STATUS 11 | OcGetFileData ( 12 | IN EFI_FILE_PROTOCOL *File, 13 | IN UINT32 Position, 14 | IN UINT32 Size, 15 | OUT UINT8 *Buffer 16 | ) 17 | { 18 | ASSERT (FALSE); 19 | 20 | return EFI_UNSUPPORTED; 21 | } 22 | 23 | EFI_STATUS 24 | OcReadFileSize ( 25 | IN EFI_SIMPLE_FILE_SYSTEM_PROTOCOL *FileSystem, 26 | IN CONST CHAR16 *FilePath, 27 | OUT UINT32 *Size 28 | ) 29 | { 30 | ASSERT (FALSE); 31 | return EFI_UNSUPPORTED; 32 | } 33 | -------------------------------------------------------------------------------- /Utilities/TestCpuFrequency/Makefile: -------------------------------------------------------------------------------- 1 | ## @file 2 | # Copyright (c) 2020, PMheart. All rights reserved. 3 | # SPDX-License-Identifier: BSD-3-Clause 4 | ## 5 | 6 | PROJECT = CpuFrequency 7 | PRODUCT = $(PROJECT)$(INFIX)$(SUFFIX) 8 | OBJS = $(PROJECT).o 9 | 10 | include ../../User/Makefile 11 | -------------------------------------------------------------------------------- /Utilities/TestDiskImage/FileDummy.c: -------------------------------------------------------------------------------- 1 | /** @file 2 | Copyright (c) 2020, vit9696. All rights reserved. 3 | SPDX-License-Identifier: BSD-3-Clause 4 | **/ 5 | 6 | #include 7 | #include 8 | #include 9 | 10 | EFI_STATUS 11 | OcGetFileSize ( 12 | IN EFI_FILE_PROTOCOL *File, 13 | OUT UINT32 *Size 14 | ) 15 | { 16 | ASSERT (FALSE); 17 | return EFI_UNSUPPORTED; 18 | } 19 | -------------------------------------------------------------------------------- /Utilities/TestDiskImage/Makefile: -------------------------------------------------------------------------------- 1 | ## @file 2 | # Copyright (c) 2020, vit9696. All rights reserved. 3 | # SPDX-License-Identifier: BSD-3-Clause 4 | ## 5 | 6 | PROJECT = DiskImage 7 | PRODUCT = $(PROJECT)$(INFIX)$(SUFFIX) 8 | OBJS = $(PROJECT).o \ 9 | FileDummy.o \ 10 | OcAppleChunklistLib.o \ 11 | OcAppleDiskImageLib.o \ 12 | OcAppleDiskImageLibInternal.o \ 13 | OcAppleRamDiskLib.o \ 14 | adler32.o \ 15 | compress.o \ 16 | crc32.o \ 17 | deflate.o \ 18 | infback.o \ 19 | inffast.o \ 20 | inflate.o \ 21 | inftrees.o \ 22 | trees.o \ 23 | uncompr.o \ 24 | zlib_uefi.o \ 25 | zutil.o 26 | VPATH = ../../Library/OcAppleChunklistLib:$\ 27 | ../../Library/OcAppleDiskImageLib:$\ 28 | ../../Library/OcAppleRamDiskLib:$\ 29 | ../../Library/OcCompressionLib/zlib 30 | include ../../User/Makefile 31 | 32 | # 33 | # Silence zlib warning. 34 | # 35 | ifeq ($(shell echo 'int a;' | "${CC}" -Wno-deprecated-non-prototype -x c -c - -o /dev/null 2>&1),) 36 | CFLAGS += -Wno-deprecated-non-prototype 37 | endif 38 | -------------------------------------------------------------------------------- /Utilities/TestExt4Dxe/Makefile: -------------------------------------------------------------------------------- 1 | ## @file 2 | # Copyright (c) 2022, Mikhail Krichanov. All rights reserved. 3 | # SPDX-License-Identifier: BSD-3-Clause 4 | ## 5 | 6 | # CC=clang DEBUG=1 FUZZ=1 SANITIZE=1 make -j4 fuzz 7 | PROJECT = TestExt4Dxe 8 | PRODUCT = $(PROJECT)$(INFIX)$(SUFFIX) 9 | OBJS = $(PROJECT).o 10 | OBJS += BaseUcs2Utf8Lib.o BaseOrderedCollectionRedBlackTreeLib.o 11 | OBJS += BlockGroup.o BlockMap.o Directory.o DiskUtil.o 12 | OBJS += Ext4Dxe.o Extents.o File.o Inode.o Partition.o Superblock.o Symlink.o 13 | 14 | include ../../User/Makefile 15 | 16 | CFLAGS += -I$(UDK_PATH)/RedfishPkg/Include 17 | CFLAGS += -I$(UDK_PATH)/Ext4Pkg/Ext4Dxe 18 | 19 | VPATH += $(UDK_PATH)/RedfishPkg/Library/BaseUcs2Utf8Lib:$\ 20 | $(UDK_PATH)/MdePkg/Library/BaseOrderedCollectionRedBlackTreeLib:$\ 21 | $(UDK_PATH)/Ext4Pkg/Ext4Dxe:$ 22 | -------------------------------------------------------------------------------- /Utilities/TestFatDxe/Makefile: -------------------------------------------------------------------------------- 1 | ## @file 2 | # Copyright (c) 2023, Savva Mitrofanov. All rights reserved. 3 | # SPDX-License-Identifier: BSD-3-Clause 4 | ## 5 | 6 | PROJECT = TestFatDxe 7 | PRODUCT = $(PROJECT)$(INFIX)$(SUFFIX) 8 | OBJS = $(PROJECT).o 9 | OBJS += DirectoryCache.o DiskCache.o FileName.o Hash.o 10 | OBJS += DirectoryManage.o ReadWrite.o OpenVolume.o Open.o 11 | OBJS += Misc.o Init.o Info.o FileSpace.o Flush.o Delete.o Data.o 12 | OBJS += UnicodeCollation.o 13 | 14 | include ../../User/Makefile 15 | 16 | CFLAGS += -I$(UDK_PATH)/FatPkg/EnhancedFatDxe 17 | 18 | ifeq ($(MEMORY_MUTATIONS),1) 19 | CFLAGS += -DMEMORY_MUTATIONS 20 | endif 21 | 22 | VPATH += $(UDK_PATH)/FatPkg/EnhancedFatDxe:$ 23 | -------------------------------------------------------------------------------- /Utilities/TestHelloWorld/HelloWorld.c: -------------------------------------------------------------------------------- 1 | /** @file 2 | Copyright (c) 2020, PMheart. All rights reserved. 3 | SPDX-License-Identifier: BSD-3-Clause 4 | **/ 5 | 6 | #include 7 | #include 8 | 9 | STATIC 10 | EFI_STATUS 11 | EFIAPI 12 | UefiMain ( 13 | IN EFI_HANDLE ImageHandle, 14 | IN EFI_SYSTEM_TABLE *SystemTable 15 | ) 16 | { 17 | DEBUG ((DEBUG_ERROR, "Hello world\n")); 18 | return EFI_SUCCESS; 19 | } 20 | 21 | int 22 | ENTRY_POINT ( 23 | void 24 | ) 25 | { 26 | UefiMain (gImageHandle, gST); 27 | 28 | return 0; 29 | } 30 | -------------------------------------------------------------------------------- /Utilities/TestHelloWorld/Makefile: -------------------------------------------------------------------------------- 1 | ## @file 2 | # Copyright (c) 2020, PMheart. All rights reserved. 3 | # SPDX-License-Identifier: BSD-3-Clause 4 | ## 5 | 6 | PROJECT = HelloWorld 7 | PRODUCT = $(PROJECT)$(INFIX)$(SUFFIX) 8 | OBJS = $(PROJECT).o 9 | include ../../User/Makefile 10 | -------------------------------------------------------------------------------- /Utilities/TestImg4/Makefile: -------------------------------------------------------------------------------- 1 | ## @file 2 | # Copyright (c) 2020, PMheart. All rights reserved. 3 | # SPDX-License-Identifier: BSD-3-Clause 4 | ## 5 | 6 | PROJECT = Img4 7 | PRODUCT = $(PROJECT)$(INFIX)$(SUFFIX) 8 | OBJS = $(PROJECT).o 9 | # 10 | # From OcAppleImg4Lib. 11 | # 12 | OBJS += OcAppleImg4Lib.o DER_Img4Manifest.o DER_Keys.o DER_Decode.o DER_CertCrl.o oids.o Img4oids.o 13 | 14 | VPATH = ../../Library/OcAppleImg4Lib:$\ 15 | ../../Library/OcAppleImg4Lib/libDERImg4:$\ 16 | ../../Library/OcAppleImg4Lib/libDER:$\ 17 | 18 | include ../../User/Makefile 19 | CFLAGS += -I../../Library/OcAppleImg4Lib 20 | -------------------------------------------------------------------------------- /Utilities/TestKextInject/Makefile: -------------------------------------------------------------------------------- 1 | ## @file 2 | # Copyright (c) 2020, PMheart. All rights reserved. 3 | # SPDX-License-Identifier: BSD-3-Clause 4 | ## 5 | 6 | PROJECT = KextInject 7 | PRODUCT = $(PROJECT)$(INFIX)$(SUFFIX) 8 | OBJS = $(PROJECT).o \ 9 | CommonPatches.o \ 10 | CpuidPatches.o \ 11 | KextPatcher.o \ 12 | KxldState.o \ 13 | PrelinkedKext.o \ 14 | PrelinkedContext.o \ 15 | MkextContext.o \ 16 | Vtables.o \ 17 | Link.o \ 18 | KernelReader.o \ 19 | KernelCollection.o \ 20 | lzss.o \ 21 | lzvn.o \ 22 | adler32.o \ 23 | compress.o \ 24 | crc32.o \ 25 | deflate.o \ 26 | infback.o \ 27 | inffast.o \ 28 | inflate.o \ 29 | inftrees.o \ 30 | trees.o \ 31 | uncompr.o \ 32 | zlib_uefi.o \ 33 | zutil.o 34 | VPATH = ../../Library/OcAppleKernelLib:$\ 35 | ../../Library/OcCompressionLib/lzss:$\ 36 | ../../Library/OcCompressionLib/lzvn:$\ 37 | ../../Library/OcCompressionLib/zlib 38 | include ../../User/Makefile 39 | 40 | # 41 | # Silence zlib warning. 42 | # 43 | ifeq ($(shell echo 'int a;' | "${CC}" -Wno-deprecated-non-prototype -x c -c - -o /dev/null 2>&1),) 44 | CFLAGS += -Wno-deprecated-non-prototype 45 | endif 46 | -------------------------------------------------------------------------------- /Utilities/TestKextInject/check_injection.sh: -------------------------------------------------------------------------------- 1 | #!/bin/bash 2 | 3 | abort() { 4 | echo "$1" 5 | exit 1 6 | } 7 | 8 | if [ ! -x "KextInject" ]; then 9 | abort "Please compile KextInject" 10 | fi 11 | 12 | if [ ! -d "$1" ]; then 13 | abort "Please pass a directory with caches!" 14 | fi 15 | 16 | ARCH=x86_64 17 | DIR="$1" 18 | CODE=0 19 | shift 20 | 21 | for dir in "${DIR}"/*/ ; do 22 | for file in kernelcache prelinkedkernel immutablekernel BootKernelExtensions.kc; do 23 | for resulting in ${file} ${file}_unpack ${file}_${ARCH} ${file}_${ARCH}_unpack; do 24 | if [ ! -f "${dir}${resulting}" ]; then 25 | continue 26 | fi 27 | 28 | printf "%s%s - " "${dir}" "${resulting}" 29 | 30 | ok=true 31 | echo "./KextInject ${dir}${resulting} ${*}" > "${dir}${resulting}.log" 32 | ./KextInject "${dir}${resulting}" "${@}" >> "${dir}${resulting}.log" || ok=false 33 | 34 | if $ok; then 35 | echo "OK" 36 | else 37 | echo "FAIL" 38 | CODE=-1 39 | fi 40 | done 41 | done 42 | done 43 | 44 | exit $CODE 45 | -------------------------------------------------------------------------------- /Utilities/TestMacho/Makefile: -------------------------------------------------------------------------------- 1 | ## @file 2 | # Copyright (c) 2020, PMheart. All rights reserved. 3 | # SPDX-License-Identifier: BSD-3-Clause 4 | ## 5 | 6 | PROJECT = Macho 7 | PRODUCT = $(PROJECT)$(INFIX)$(SUFFIX) 8 | OBJS = $(PROJECT).o 9 | include ../../User/Makefile 10 | -------------------------------------------------------------------------------- /Utilities/TestMacho/kernel: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CloverHackyColor/OpenCorePkg/e21feb5907444256f4ff4c9b2be33be59e5a13cd/Utilities/TestMacho/kernel -------------------------------------------------------------------------------- /Utilities/TestMp3/Makefile: -------------------------------------------------------------------------------- 1 | ## @file 2 | # Copyright (c) 2021, vit9696. All rights reserved. 3 | # SPDX-License-Identifier: BSD-3-Clause 4 | ## 5 | 6 | PROJECT = Mp3 7 | PRODUCT = $(PROJECT)$(INFIX)$(SUFFIX) 8 | OBJS = $(PROJECT).o \ 9 | OcMp3Lib.o \ 10 | bitstream.o \ 11 | buffers.o \ 12 | dct32.o \ 13 | dequant.o \ 14 | dqchan.o \ 15 | huffman.o \ 16 | hufftabs.o \ 17 | imdct.o \ 18 | mp3dec.o \ 19 | mp3tabs.o \ 20 | polyphase.o \ 21 | scalfact.o \ 22 | stproc.o \ 23 | subband.o \ 24 | trigtabs.o 25 | VPATH = ../../Library/OcMp3Lib:$\ 26 | ../../Library/OcMp3Lib/helix 27 | include ../../User/Makefile 28 | ifneq ($(SANITIZE),) 29 | CFLAGS += -fno-sanitize=shift 30 | endif -------------------------------------------------------------------------------- /Utilities/TestNtfsDxe/Makefile: -------------------------------------------------------------------------------- 1 | ## @file 2 | # Copyright (c) 2022, Mikhail Krichanov. All rights reserved. 3 | # SPDX-License-Identifier: BSD-3-Clause 4 | ## 5 | 6 | PROJECT = TestNtfsDxe 7 | PRODUCT = $(PROJECT)$(INFIX)$(SUFFIX) 8 | OBJS = $(PROJECT).o 9 | OBJS += Compression.o Data.o Disc.o Index.o Info.o NTFS.o Open.o Position.o 10 | 11 | include ../../User/Makefile 12 | 13 | CFLAGS += -I../../Platform/OpenNtfsDxe 14 | 15 | VPATH += ../../Platform/OpenNtfsDxe:$ 16 | -------------------------------------------------------------------------------- /Utilities/TestPeCoff/Makefile: -------------------------------------------------------------------------------- 1 | ## @file 2 | # Copyright (c) 2020, vit9696. All rights reserved. 3 | # SPDX-License-Identifier: BSD-3-Clause 4 | ## 5 | 6 | PROJECT = PeCoff 7 | PRODUCT = $(PROJECT)$(INFIX)$(SUFFIX) 8 | OBJS = $(PROJECT).o \ 9 | PeCoffDebug.o \ 10 | PeCoffHash.o \ 11 | PeCoffInfo.o \ 12 | PeCoffInit.o \ 13 | PeCoffLoad.o \ 14 | PeCoffRelocate.o 15 | VPATH = $(UDK_PATH)/MdePkg/Library/BasePeCoffLib2:$ 16 | include ../../User/Makefile 17 | -------------------------------------------------------------------------------- /Utilities/TestProcessKernel/ProcessKernelDummy.c: -------------------------------------------------------------------------------- 1 | /** @file 2 | Copyright (C) 2022, PMheart. All rights reserved. 3 | 4 | All rights reserved. 5 | 6 | This program and the accompanying materials 7 | are licensed and made available under the terms and conditions of the BSD License 8 | which accompanies this distribution. The full text of the license may be found at 9 | http://opensource.org/licenses/bsd-license.php 10 | 11 | THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS, 12 | WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED. 13 | **/ 14 | 15 | #include 16 | 17 | VOID 18 | OcAppleImg4RegisterOverride ( 19 | IN CONST UINT8 *OriginalDigest, 20 | IN CONST UINT8 *Image, 21 | IN UINT32 ImageSize 22 | ) 23 | { 24 | ASSERT (FALSE); 25 | } 26 | -------------------------------------------------------------------------------- /Utilities/TestRsaPreprocess/Makefile: -------------------------------------------------------------------------------- 1 | ## @file 2 | # Copyright (c) 2020, PMheart. All rights reserved. 3 | # SPDX-License-Identifier: BSD-3-Clause 4 | ## 5 | 6 | PROJECT = RsaPreprocess 7 | PRODUCT = $(PROJECT)$(INFIX)$(SUFFIX) 8 | OBJS = $(PROJECT).o 9 | include ../../User/Makefile 10 | 11 | CFLAGS += -I../../Library/OcCryptoLib 12 | -------------------------------------------------------------------------------- /Utilities/TestSmbios/Makefile: -------------------------------------------------------------------------------- 1 | ## @file 2 | # Copyright (c) 2020, PMheart. All rights reserved. 3 | # SPDX-License-Identifier: BSD-3-Clause 4 | ## 5 | 6 | PROJECT = Smbios 7 | PRODUCT = $(PROJECT)$(INFIX)$(SUFFIX) 8 | OBJS = $(PROJECT).o 9 | # 10 | # From OpenCore. 11 | # 12 | OBJS += SmbiosPatch.o SmbiosInternal.o DebugSmbios.o LegacyRegionLock.o LegacyRegionUnLock.o 13 | 14 | VPATH = ../../Library/OcSmbiosLib:$\ 15 | ../../Library/OcMemoryLib 16 | 17 | include ../../User/Makefile 18 | -------------------------------------------------------------------------------- /Utilities/TestSmbios/Smbios.bin: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CloverHackyColor/OpenCorePkg/e21feb5907444256f4ff4c9b2be33be59e5a13cd/Utilities/TestSmbios/Smbios.bin -------------------------------------------------------------------------------- /Utilities/WinNvram/Makefile: -------------------------------------------------------------------------------- 1 | CC = i686-w64-mingw32-gcc 2 | CFLAGS=-static -c -DNDEBUG -Wall -Wextra -pedantic -Os 3 | 4 | all: nvram 5 | 6 | nvram: nvram.o 7 | $(CC) -s -static nvram.o -o nvram.exe 8 | 9 | .c: 10 | $(CC) $(CFLAGS) $< -o $@ 11 | 12 | clean: 13 | rm -rf *.o nvram.exe 14 | -------------------------------------------------------------------------------- /Utilities/WinNvram/nvram.exe: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CloverHackyColor/OpenCorePkg/e21feb5907444256f4ff4c9b2be33be59e5a13cd/Utilities/WinNvram/nvram.exe -------------------------------------------------------------------------------- /Utilities/acdtinfo/Makefile: -------------------------------------------------------------------------------- 1 | ## @file 2 | # Copyright (c) 2019, vit9696. All rights reserved. 3 | # Copyright (c) 2020, PMheart. All rights reserved. 4 | # SPDX-License-Identifier: BSD-3-Clause 5 | ## 6 | STANDALONE = 1 7 | PROJECT = acdtinfo 8 | PRODUCT = $(PROJECT)$(INFIX)$(SUFFIX) 9 | OBJS = $(PROJECT).o 10 | include ../../User/Makefile 11 | 12 | ifeq ($(DIST),Darwin) 13 | LDFLAGS += -Wl,-framework,IOKit -Wl,-framework,CoreFoundation 14 | endif 15 | -------------------------------------------------------------------------------- /Utilities/disklabel/Makefile: -------------------------------------------------------------------------------- 1 | ## @file 2 | # Copyright (c) 2019, vit9696. All rights reserved. 3 | # Copyright (c) 2020, PMheart. All rights reserved. 4 | # SPDX-License-Identifier: BSD-3-Clause 5 | ## 6 | 7 | STANDALONE = 1 8 | PROJECT = disklabel 9 | PRODUCT = $(PROJECT)$(INFIX)$(SUFFIX) 10 | OBJS = $(PROJECT).o 11 | include ../../User/Makefile 12 | 13 | ifeq ($(DIST),Darwin) 14 | LDFLAGS += -Wl,-framework,CoreFoundation -Wl,-framework,CoreGraphics -Wl,-framework,CoreText 15 | endif 16 | -------------------------------------------------------------------------------- /Utilities/ext4read/Makefile: -------------------------------------------------------------------------------- 1 | ## @file 2 | # Copyright (c) 2023, Savva Mitrofanov. All rights reserved. 3 | # SPDX-License-Identifier: BSD-3-Clause 4 | ## 5 | 6 | PROJECT = ext4read 7 | PRODUCT = $(PROJECT)$(INFIX)$(SUFFIX) 8 | OBJS = $(PROJECT).o 9 | OBJS += BaseUcs2Utf8Lib.o BaseOrderedCollectionRedBlackTreeLib.o 10 | OBJS += BlockGroup.o BlockMap.o Directory.o DiskUtil.o 11 | OBJS += Extents.o File.o Inode.o Partition.o Superblock.o Symlink.o 12 | 13 | include ../../User/Makefile 14 | 15 | CFLAGS += -I$(UDK_PATH)/RedfishPkg/Include 16 | CFLAGS += -I$(UDK_PATH)/Ext4Pkg/Ext4Dxe 17 | 18 | VPATH += $(UDK_PATH)/RedfishPkg/Library/BaseUcs2Utf8Lib:$\ 19 | $(UDK_PATH)/MdePkg/Library/BaseOrderedCollectionRedBlackTreeLib:$\ 20 | $(UDK_PATH)/Ext4Pkg/Ext4Dxe:$ 21 | -------------------------------------------------------------------------------- /Utilities/icnspack/Makefile: -------------------------------------------------------------------------------- 1 | ## @file 2 | # Copyright (c) 2019, vit9696. All rights reserved. 3 | # Copyright (c) 2020, PMheart. All rights reserved. 4 | # SPDX-License-Identifier: BSD-3-Clause 5 | ## 6 | 7 | STANDALONE = 1 8 | PROJECT = icnspack 9 | PRODUCT = $(PROJECT)$(INFIX)$(SUFFIX) 10 | OBJS = $(PROJECT).o 11 | include ../../User/Makefile 12 | -------------------------------------------------------------------------------- /Utilities/macrecovery/README.md: -------------------------------------------------------------------------------- 1 | ## macrecovery 2 | 3 | macrecovery is a tool that helps to automate recovery interaction. It can be used to download diagnostics and recovery as well as analyse MLB. 4 | 5 | Requires python3 to run. Run with `-h` argument to see all available arguments. 6 | 7 | To create a disk image for a virtual machine installation use `build-image.sh`. 8 | 9 | -------------------------------------------------------------------------------- /Utilities/macrecovery/build-image.sh: -------------------------------------------------------------------------------- 1 | #!/bin/bash -e 2 | 3 | rm -rf Recovery.RO.dmg Recovery.RO.raw Recovery.dmg.sparseimage 4 | hdiutil create -size 800m -layout "UNIVERSAL HD" -type SPARSE -o Recovery.dmg 5 | newDevice=$(hdiutil attach -nomount Recovery.dmg.sparseimage | head -n 1 | awk '{print $1}') 6 | echo newdevice "$newDevice" 7 | diskutil partitionDisk "${newDevice}" 1 MBR fat32 RECOVERY R 8 | N=$(echo "$newDevice" | tr -dc '0-9') 9 | diskutil mount disk"${N}"s1 10 | MOUNT="$(diskutil info disk"${N}"s1 | sed -n 's/.*Mount Point: *//p')" 11 | mkdir -p "$MOUNT/com.apple.recovery.boot" 12 | cp ./*.dmg ./*.chunklist "$MOUNT/com.apple.recovery.boot/" 13 | diskutil umount disk"${N}"s1 14 | hdiutil detach "$newDevice" 15 | hdiutil convert -format UDZO Recovery.dmg.sparseimage -o Recovery.RO.dmg 16 | rm Recovery.dmg.sparseimage 17 | qemu-img convert -f dmg -O raw Recovery.RO.dmg Recovery.raw 18 | rm Recovery.RO.dmg 19 | -------------------------------------------------------------------------------- /Utilities/macserial/Makefile: -------------------------------------------------------------------------------- 1 | ## @file 2 | # Copyright (c) 2019, vit9696. All rights reserved. 3 | # Copyright (c) 2020, PMheart. All rights reserved. 4 | # SPDX-License-Identifier: BSD-3-Clause 5 | ## 6 | STANDALONE = 1 7 | PROJECT = macserial 8 | PRODUCT = $(PROJECT)$(INFIX)$(SUFFIX) 9 | OBJS = $(PROJECT).o 10 | include ../../User/Makefile 11 | 12 | ifeq ($(DIST),Darwin) 13 | LDFLAGS += -Wl,-framework,IOKit -Wl,-framework,CoreFoundation 14 | endif 15 | -------------------------------------------------------------------------------- /Utilities/macserial/README.md: -------------------------------------------------------------------------------- 1 | ## macserial 2 | 3 | macserial is a tool that obtains and decodes Mac serial number and board identifier to provide more information about the production of your hardware. Works as a decent companion to [Apple Check Coverage](https://checkcoverage.apple.com) and [Apple Specs](http://support-sp.apple.com/sp/index?page=cpuspec&cc=HTD5) portal. Check the [format description](https://github.com/acidanthera/OpenCorePkg/blob/master/Utilities/macserial/FORMAT.md) for more details. 4 | 5 | Should be built with a compiler supporting C99. Prebuilt binaries are available for macOS 10.4 and higher. 6 | 7 | Run with `-h` argument to see all available arguments. 8 | -------------------------------------------------------------------------------- /Utilities/ocpasswordgen/Makefile: -------------------------------------------------------------------------------- 1 | ## @file 2 | # Copyright (c) 2020, Marvin Haeuser. All rights reserved. 3 | # SPDX-License-Identifier: BSD-3-Clause 4 | ## 5 | 6 | PROJECT = ocpasswordgen 7 | PRODUCT = $(PROJECT)$(INFIX)$(SUFFIX) 8 | OBJS = $(PROJECT).o 9 | # 10 | # OcCryptoLib targets. 11 | # 12 | OBJS += PasswordHash.o 13 | 14 | VPATH = ../../Library/OcCryptoLib 15 | include ../../User/Makefile 16 | -------------------------------------------------------------------------------- /Utilities/ocvalidate/Makefile: -------------------------------------------------------------------------------- 1 | ## @file 2 | # Copyright (c) 2020, PMheart. All rights reserved. 3 | # SPDX-License-Identifier: BSD-3-Clause 4 | ## 5 | 6 | PROJECT = ocvalidate 7 | PRODUCT = $(PROJECT)$(INFIX)$(SUFFIX) 8 | OBJS = $(PROJECT).o \ 9 | OcValidateLib.o \ 10 | KextInfo.o \ 11 | NvramKeyInfo.o \ 12 | ValidateAcpi.o \ 13 | ValidateBooter.o \ 14 | ValidateDeviceProperties.o \ 15 | ValidateKernel.o \ 16 | ValidateMisc.o \ 17 | ValidateNvram.o \ 18 | ValidatePlatformInfo.o \ 19 | ValidateUefi.o 20 | # 21 | # OcConfigurationLib targets. 22 | # 23 | OBJS += OcConfigurationLib.o 24 | # 25 | # OcConsoleLib targets. 26 | # 27 | OBJS += ResolutionParsing.o 28 | # 29 | # OcMacInfoLib targets. 30 | # 31 | OBJS += OcMacInfoLib.o AutoGenerated.o 32 | 33 | VPATH = ../../Library/OcConfigurationLib \ 34 | ../../Library/OcConsoleLib \ 35 | ../../Library/OcMacInfoLib 36 | include ../../User/Makefile 37 | -------------------------------------------------------------------------------- /xcbuild.tool: -------------------------------------------------------------------------------- 1 | #!/bin/bash 2 | CONFIGURATION=DEBUG 3 | 4 | source edksetup.sh 5 | build -a X64 -p OpenCorePkg/OpenCorePkg.dsc -t XCODE5 -b $CONFIGURATION 6 | --------------------------------------------------------------------------------