Releases: acidanthera/OpenCorePkg
Releases Β· acidanthera/OpenCorePkg
0.7.0
v0.7.0
- Fixed NVRAM reset on firmware with write-protected
BootOptionSupport
- Improved direct GOP renderer performance for certain cases
- Added support for display rotation in direct GOP renderer
- Fixed handling multinode device paths in LoadedImage and elsewhere
- Changed OpenCanopy image directory to support directory prefixes
- Changed OpenCanopy preferred image set to
Acidanthera\GoldenGate
- Removed
<BOOTPATH>.icns
and<TOOLPATH>.icns
support - Added content flavour system allowing custom boot entry icons compatible across icon packs
- Added automatic flavour detection for macOS boot entries
- Added
ProvideCurrentCpuInfo
quirk to provide correct TSC/FSB for Hyper-V virtual machines - Added Hyper-V device path expansion to allow setting default boot volume
- Added
Apple
variant ofGopPassThrough
to handle onlyAppleFramebufferInfo
handles - Fixed further kernel patches not being processed if a patch was skipped due to arch mismatch
- Added optional Toggle SIP system boot menu option
- Added
CsrUtil.efi
tool, similar to Applecsrutil
- Removed support for
<TOOLPATH>.lbl
/.l2x
pre-drawn entry labels - Fixed previous text not cleared before console mode tools and entries in OpenCanopy
- Fixed DEBUG build crashes with
GopPassThrough
andUgaPassThrough
- Added flavour for memory testing utilities
- Updated recommended
memtest86
config in sample.plist
files - Defined bootloader flavours
- Applied own flavour to OC build
- Added CPU topology fixes to
ProvideCurrentCpuInfo
quirk - Updated OC default SIP disabled value
- Documented SIP values which affect macOS updates
- Added
csr-data
Apple NVRAM var to docs - Fixed file alignment causing codesign issues with CLANGPDB images
- Replaced
AdviseWindows
withAdviseFeatures
to support APFS
0.6.9
v0.6.9
- Fixed out-of-sync cursor movement rectangle when loading e.g. CrScreenshotDxe
- Updated underlying EDK II package to edk2-stable202102
- Applied consistent enforcement of required minimum Apple OEM Apple Event protocol version
- Changed CustomDelays to less surprising boolean setting with failsafe of false
- Changed key repeat failsafes and sample values to Apple OEM values
- Changed PointerSpeedMul failsafe to Apple OEM value
- Updated docs to include configuration of key repeat settings with and without KeySupport
- Prevented 'set default' UI when action not permitted by security config
- Added
ForgeUefiSupport
quirk to workaround legacy EFI 1.x firmwares compatibility - Added
ReloadOptionRoms
quirk to force-load Option ROMs on PCI devices - Added
OC_ATTR_USE_MINIMAL_UI
to allow running pickers with no Shutdown and Restart buttons - Added display of OpenCore version number to OpenCanopy as well as builtin picker, depending on existing ExposeSensitiveData bit
- Added support for case-insensitive argument handling in the UEFI tools
- Added vector acceleration of SHA-512 and SHA-384 hashing algorithms, thx @MikhailKrichanov
- Fixed wraparound when using arrow keys in OpenCanopy
- Updated builtin firmware versions for SMBIOS and the rest
- Added bundled Linux versions for userspace utilities
- Fixed fallback SMBIOS
Manufacturer
value toNO DIMM
for empty slots - Fixed assertions when running OpenCanopy with low resolution, will fallbacks to builtin now
0.6.8
v0.6.8
- Switched to VS2019 toolchain for Windows builds
- Reduced legacy boot install interaction effort
- Increased OpenCanopy rendering performance
- Added OpenCanopy Shut Down and Restart buttons
- Reduced OpenCanopy mouse pointer input lag
- Fixed that cursor bounds could be different from OpenCanopy's
- Improved builtin picker rendering performance
- Added Memory Type decoding for SMBIOS in
Automatic
mode - Properly support setting custom entries as default boot options
- Fixed creating log file when root file system is not writable
- Fixed
DisableSingleUser
not being enabled in certain cases - Added
ForceBooterSignature
quirk for Mac EFI firmware - Fixed OpenCanopy sometimes cutting off shown boot entries
- Further improved CPU frequency calculation on legacy CPUs
- Fixed SMBIOS SMC version encoding sequence
- Added TSC frequency reading from Apple Platform Info
- Added TSC frequency reading for Apple devices with nForce chipsets
- Added
Base
andBaseSkip
lookup for ACPI patches - Fixed ACPI table magic corruption during patching
- Fixed unnatural OpenCanopy and FileVault 2 cursor movement
- Fixed OpenCanopy interrupt handling causing missed events and lag
- Improved OpenCanopy double-click detection
- Reduced OpenCanopy touch input lag and improved usability
- Improved keypress responsiveness in OpenCanopy and builtin pickers
- Improved non-repeating key detection in OpenCanopy and builtin pickers
- Fixed Escape preventing OpenCanopy fade up until released, on some systems
- Fixed fast repeat then stall issue with key handling on some PS/2 systems
- Added accurate Shift+Enter/Shift+Index detection when using PollAppleHotKeys
- Added 'set default' indicator to builtin picker
- Replaced VerifyMsrE2 with ControlMsrE2 also allowing unlock on some firmwares
- Fixed OpenCanopy flicker when refreshing the entry view
- Added OpenCanopy TAB navigation support
- Added OpenCanopy graphical password interface
- Added OpenCanopy pulsing animation to signal timeout
- Added OpenCanopy 'set default' indicator
- Fixed OpenCanopy not aborting timeout on pointer click
- Fixed OpenCanopy intro animation not scaling with UIScale
- Add OpenCanopy boot entry label scrolling (fixes missing long labels)
- Added tabbable Shutdown and Restart buttons to builtin picker
- Fixed in-firmware shutdown for some systems running OpenDuet
- Added Zero as alias hotkey for Escape, to force show picker if hidden
- Added =/+ key as alias for CTRL to set default OS
- Added additional support for configuring correct key repeat behaviour with KeySupport mode
- Fixed CPU multiplier detection on pre-Nehalem Intel CPUs
- Fixed incorrect handling of multiple processors and processor cache in SMBIOS
- Matched default Apple boot picker cursor start position
- Updated OpenShell
devices
command to support misaligned device names returned by some Apple firmware - Added
(dmg)
suffix to DMG boot options in OpenCanopy - Added identifiers for Rocket Lake and Tiger Lake CPUs
- Added PickerAudioAssist 'disk image' indication
- Fixed PickerAudioAssist indications played twice in rare cases
- Improved OpenCanopy pointer acceleration
- Added more precise control on
AppleEvent
protocol properties and features - Added dynamic keyboard protocol installation on CrScreenshotDxe
- Support starting UEFI tools with argument support (e.g.
ControlMsrE2
) without arguments from picker - Fixed OpenCanopy font height calculation, may reject previously working fonts and mitigate memory corruption
- Fixed incorrect identification of Xeon E5XXX/E5-XXXX and Xeon WXXXX/W-XXXX CPUs
- Added RSDP, RSDT, and XSDT handling to
NormalizeHeaders
ACPI quirk
0.6.7
v0.6.7
- Fixed ocvalidate return code to be non-zero when issues are found
- Added
OEM
values toPlatformInfo
inAutomatic
mode - Improved CPU frequency calculation on Haswell and earlier
- Fixed issues when applying certain patches
- Added
SSN
(andHW_SSN
) variable support - Added onscreen early logging in DEBUG builds for legacy firmware
- Added workaround for firmware not specifying DeviceHandle at bootstrap
- Added support for R/O page tables in
SetupVirtualMap
quirk - Added OEM preservation for certain Apple SMBIOS tables
- Fixed switching to graphics mode when entering OpenCanopy
- Fixed installing Apple FB Info protocol when no GOP exists
- Fixed abort timeout sound in OpenCanopy on key press
- Added
GopPassThrough
option to support GOP protocol over UGA - Fixed CPU speed rounding for certain Xeon and Core 2 CPUs
- Removed
KeyMergeThreshold
as it never functioned anyway - Added
acdtinfo
utility to lookup certain products - Fixed
FSBFrequency
calculation with fractional multiplier - Fixed showing core count for some AMD CPUs
- Added
ResetTrafficClass
to reset TCSEL to T0 on legacy HDA - Fixed default boot entry selection without timeout for builtin picker
- Added ocpasswordgen utility to generate OpenCore password data
- Added
ActivateHpetSupport
quirk to activate HPET support - Fixed
opencore-version
reporting the incorrect version in rare cases
0.6.6
v0.6.6
- Added keyboard and pointer entry scroll support in OpenCanopy
- Added background image support in OpenCanopy
- Fixed selector boot option choice in OpenCanopy
- Relaxed selector dimensions for OpenCanopy
- Added
MaxBIOSVersion
option toGeneric
- Fixed MLB verification feature in macrecovery
- Replaced
VBoxHfs
driver withOpenHfsPlus
- Added audio codec dumping to
SysReport
- Fixed compatibility with page protection for all binaries
- Fixed crashes in OpenUsbKbDxe when handling unsupported devices
- Removed
HdaCodecDump
application in favor ofSysReport
- Added
SetApfsTrimTimeout
to tune APFS trim command - Changed
OpenCore.efi
to application to improve FW compatibility - Added
DisableSecurityPolicy
UEFI quirk to workaround driver loading - Added support for ranged widget connections in AudioDxe
- Fixed supplying non-RT
SetVirtualAddressMap
for non-macOS systems - Fixed using
SystemUuid
fromDataHub
in non-Automatic mode forSMBIOS
- Dropped failsafe defaults from
Generic
to match non-Automatic mode - Replaced
BootProtect
withLauncherOption
andLauncherPath
- Added
OpenPartitionDxe
with Apple Partition Management scheme - Improved ocvalidate checks in
Misc
,NVRAM
, andUEFI
sections - Fixed multiple flaws in EFI image loading, APFS driver in particular
- Fixed NVRAM
system-id
being accidentally stored in Little Endian format - Added
UseRawUuidEncoding
to choose SMBIOS UUID encoding style - Updated builtin firmware versions for SMBIOS and the rest
Note: HdaCodecDump.efi was merged into SysReport in this release.
0.6.5
v0.6.5
- Fixed installing OpenDuet on protected volumes
- Updated underlying EDK II package to edk2-stable202011
- Updated builtin firmware versions for SMBIOS and the rest
- Fixed macrecovery server protocol compatibility
- Added basic audio assistant support in OpenCanopy
- Added compiled ACPI samples to the package
- Fixed timer resolution restoration at boot time
- Fixed memory capacity when using custom SMBIOS memory config
- Removed no longer required
DeduplicateBootOrder
quirk - Fixed macserial crashes when processing invalid serials
- Fixed macserial issues when processing 2021 year serials
- Added advanced error checking in ocvalidate utility
- Added
SetupDelay
to configure audio setup delay - Reworked LogoutHook.command to support older macOS
- Implemented MP3 audio decoding for audio assistant support
- Added support for
PickerVariant
for more theme variants - Added
OC_ATTR_HIDE_THEMED_ICONS
PickerAttribute
for Time Machine - Fixed OpenUsbKb compatibility with certain keyboards
0.6.4
v0.6.4
- Added
BlacklistAppleUpdate
to fix macOS 11 broken update optout - Dropped HII services from OpenDuet improving size and performance
- Fixed patching of injected kexts in mkext
- Added support for launching from relative paths
- Added direct path passing for tools via
RealPath
- Allowed launching tools and entries in text mode via
TextMode
- Updated builtin firmware versions for SMBIOS and the rest
- Fixed ACPI patches not applying if tables are in locked memory
- Fixed
EnableSafeModeSlide
on macOS 11 - Added
AllowRelocationBlock
quirk for older macOS and safe mode - Fixed CPU frequency calculation on AMD 19h family
- Updated recovery_urls
- Fixed
DisableSingleUser
quirk when Apple Secure Boot is enabled - Added
BootstrapShort
to workaround buggy Insyde firmwares - Changed
Bootstrap(Short)
to choose dynamic entry (requires NVRAM reset) - Avoided
Boot
prefix inRequestBootVarRouting
to workaround AMI issues - Added bootloader patch support in
Booter
Patch
section - Fixed startup hang on firmwares allowong reentrance for timer functions
- Made pointer control optional for OpenCanopy via
PickerAttributes
- Added support for
StartupMute
variable inPlayChime
- Added support for per-volume icons for APFS on Preboot
- Removed HII dependency from OpenUsbKbDxe driver
- Fixed undefined behavior in OpenDuet causing random crashes and hangs
WARN: Upgrading to 0.6.4 may require additional steps when BootProtect
is set to Bootstrap
. For more details please refer to this instruction.
0.6.3
v0.6.3
- Added support for xml comments in plist files
- Updated underlying EDK II package to edk2-stable202008
- Provide fallbacks for NULL memory SMBIOS strings
- Fixed
BOOTx64.efi
andBOOTIA32.efi
convention - Fixed SMBIOS handling with multiple memory arrays
- Fixed memory array handle assignment on empty slots
- Fixed CPUID patching on certain versions of macOS 10.4.10 and 10.4.11
- Fixed incorrect core/thread counts on Pentium M processors
- Added
SSDT-UNC.dsl
ACPI sample to resolve X99 issues, thx @RemB - Updated builtin firmware versions for SMBIOS and the rest
- Increased slide allocation reserve to 200 MB for Big Sur beta 10
- Fixed assert when trying to enable direct renderer on blit-only GOP
- Added support for custom memory properties
- Fixed intermittent 32-bit prelinking failures caused by improper Mach-O expansion
- Fixed failures in cacheless injection dependency resolution
- Fixed detection issues with older Atom CPUs
- Fixed
ScanPolicy
NVMe handling on MacPro5,1 - Fixed I/O issues on platforms incapable of reading over 1MB at once
- Fixed plist-only kext injection in Big Sur
- Add
ForceResolution
option for enabling non-default resolutions - Fixed Ps2MouseDxe not properly loading under OpenDuetPkg
- Added workaround for read-only errors on some X299 boards
- Added support for
x86legacy
Secure Boot model - Added missing Secure Boot NVRAM variables required by 11.0
- Added setting of
system-id
NVRAM variable - Added
ForceSecureBootScheme
quirk for virtual machines - Fixed kernel and ACPI patches failing to replace last bytes of memory
0.6.2
v0.6.2
- Updated builtin firmware versions for SMBIOS and the rest
- Added
ProcessorType
option toGeneric
allowing custom CPU names - Fixed
UnblockFsConnect
option not working with APFS JumpStart - Added IA32 binary variant to the release bundles
- Fixed improper handling of cacheless kexts without an Info.plist
- Fixed improper calculation of kext startup address for blocking
- Added mkext 32-bit kext injection (10.4-10.6)
- Added cacheless 32-bit kext injection (10.4-10.7)
- Added 32-bit kernel/kext patching/blocking support
- Fixed issues loading 10.7 EfiBoot
- Added
Type
toReservedMemory
to fulfil hibernation hack needs - Added workaround to displaying
Preboot
instead ofMacintosh HD
- Added prelinkedkernel 32-bit kext injection (10.6-10.7)
- Added
SystemMemoryStatus
to override memory replacement on some models - Added older Pentium CPU recognition in SMBIOS
- Added
ExtendBTFeatureFlags
to properly setFeatureFlags
for Bluetooth (which substitutes BT4LEContinuityFixup) - Added
MinKernel
/MaxKernel
to CPUID emulation andDummyPowerManagement
- Fixed
-legacy
not being added inKernelArch
Auto
mode - Fixed
i386-user32
not forcingi386
on macOS 10.7 on X64 firmwares - Fixed
i386-user32
being incorrectly enabled in macOS 10.4, 10.5, and 10.7 - Disabled prelinked boot for macOS 10.4 and 10.5 in
KernelCache
Auto
mode - Fixed
macserial
compatibility with iMac20,x serials and other models from 2020 - Added
LegacyCommpage
quirk to improve pre-SSSE3 userspace compatibility - Fixed legacy SATA HDDs displaying as external drives in the picker
0.6.1
v0.6.1
- Improved recognition of early pressed hotkeys, thx @varahash
- Made DMG loading support configurable via
DmgLoading
- Added iMac20,1 and iMac20,2 model codes
- Fixed display name for older Xeon CPUs like Xeon E5450
- Added Comet Lake-LP HDA device code
- Fixed OS boot selection on SATA controllers with legacy OPROMs
- Fixed RSDP ACPI table checksum recalculation
- Added immutablekernel loading support for 10.13+
- Fixed solving some symbols to zero in 11.0 kext inject
- Reduced OpenCanopy size by restricting boot management access
- Added
BuiltinText
variant forTextRenderer
for older laptops - Fixed
SyncRuntimePermissions
creating invalid MAT table - Added EFI FAT image loading support (macOS 10.8 and earlier)
- Added 64-bit cacheless kext injection and patching support (macOS 10.9 and earlier)
- Added 64-bit mkext kext injection and patching support (macOS 10.6 and earlier)
- Fixed XNU hook matching non-kernel files
- Updated builtin firmware versions for SMBIOS and the rest
- Fixed patching of ACPI tables in low memory
- Fixed macOS 11.0 DMG recovery loading without hotplug
- Fixed
XhciPortLimit
quirk on 10.12.6 and possibly other versions - Fixed
IncreasePciBarSize
quirk on 10.11.5 and possibly other versions - Fixed
LapicKernelPanic
quirk on 10.8.5 and possibly other versions - Fixed hard-lock caused by EHCI SMI in OpenDuetPkg
- Added preview UEFI Secure Boot compatibility
- Added
FuzzyMatch
option to support fuzzy kernelcache matching on 10.6 and earlier - Added
KernelArch
option to specify architecture preference on older kernels - Added
KernelCache
option to specify kernel caching preference for older kernels - Added
Force
section to provide support for injecting drivers in older macOS - Changed kernel driver injection to happen prior to kernel driver patching
- Added
Arch
filtering option toAdd
,Block
,Force
, andPatch
sections - Added
DisableLinkeditJettison
quirk to workaround 11.0b5 kernel panics - Added debugging of missing fields in the configuration