Releases: RefindPlusRepo/RefindPlus
Releases · RefindPlusRepo/RefindPlus
Release list
v0.13.3.AC
- Adds
NvramProtectExFeature- Extends the
NvramProtectfeature (if set) to Mac OS andUnknownUEFI boots - The feature can be enabled using a new
nvram_protect_exconfiguration token- Replaces the
FocusNvramFixfeature which has been removed - Essentially restores functionality from
EnableMacosFilterpreviously replaced byFocusNvramFix
- Replaces the
- Extends the
- Fixes
QueryVariableInfoHandling- Now properly handled on
UEFI-Macunits - The output is not currently presented however as Apple firmare does not return accurate information
- Now properly handled on
- Fixes Misc Static Analysis Flags
- Some are related to filesystem drivers; for which updated versions are created accordingly
- Improves
SetVariableHook/Event Handling- Misc improvements including improved memory management
- Relevant to the
NvramProtectfeature
- Improves Mac Recovery Tool Scan
- Now skips some invalid entries such as APFS Recovery partitions
- Improves
ScreenShotFeature- Now clears the keystroke buffer in
egScreenShotto mitigate against stuck keys
- Now clears the keystroke buffer in
- Improves
Clean NVRAMFeature- Particularly regarding clearing OpenCore related variables
- Improves Time Bound Primed Buffer Mitigation
- Rationalises intervention threshold
- Improves UI Element Scaling
- Some units use a low resolution display for the boot stage that result in distorted UI
- RefindPlus can now detect this and automatically scale UI elements down accordingly
- Alternatively, users can use the
scale_uitoken to scale UI elements down - The threshold below which the display is considered
LoRezis 1025px - Ensures correct icon scales are maintained on
RescanAllcalls
- Amends
SupplyNVMEandSupplyUEFIFeatures- No longer supplied by default but when specifically activated
- Hence, the "Opt-Out"
decline_nvme_loadtoken has been replaced by an "Opt-In"supply_nvmetoken - The "Opt-Out"
decline_uefi_emulatetoken has also been replaced by an "Opt-In"supply_uefitoken - A previous failure to be activated when NVME support was absent has been fixed
- Renames Misc Configuration Tokens
decline_tags_helptodecline_help_tagsdecline_text_helptodecline_help_text
v0.13.3.AB
- Adds
PreferUGAFeature- Sets RefindPlus to always use UGA for its graphics output when available
- The default is to use GOP and to fall back on UGA when GOP is not available
- The feature can be enabled using a new
prefer_ugaconfiguration token
- Sets RefindPlus to always use UGA for its graphics output when available
- Adds
FollowSymlinksFeature- Allows following symbolic links to loaders
- These are otherwise ignored to avoid misc issues but may be useful to run some Linux setups
- The feature can be enabled using a new
follow_symlinksconfiguration token
- Adds
FocusNvramFixFeature- Focuses the
ProtectNVRAMfeature (if set) on explicit UEFI Windows boots - The feature can be enabled using a new
focus_nvram_fixconfiguration token- Replaces the
EnableMacosFilterfeature which has been removed
- Replaces the
- Focuses the
- Fixes Unwanted APFS Data Volume Entries
- APFS data volumes could sometimes appear as boot options due to inadequate filtering
- Fixes SubScreen Boots
- Boots from subscreens, such as after pressing
F2, were handled as generic UEFI files - This resulted in some processes being skipped or unwanted processes being applied
- RefindPlus now tries to make such boots specific as follows:
Opencore,Clover,Linux,MacOS,WindowsandMisc Others
- Boots from subscreens, such as after pressing
- Fixes Apple Hardware Test Option
- While Apple stopped providing this feature after June 2013, some users may have restored this
- In such cases however, RefindPlus did not provide the option on APFS volumes when
SyncAPFSis active - Now reinstated subject to not having multiple MacOS instances in any single APFS container
- Fixes Misc Items
- Always block UEFI Windows NVRAM items (Disregard Volatility)
- Address misidentification of certain volume types as HFS+ volumes
- Address misplaced
OutandReturnlog tags - Eliminate excessive pointer event logging
- Eliminate python script code smells
- Improves
System Reset CallFix- Was previously always active when on system reboot calls
- This meant such calls always required confirmation
- Such confirmations are no longer required if keypresses had taken place before the call
- Hence all legitimate calls now proceed without issue and buffered keystroke calls are also captured
- Improves FS Type Handling
- Prevents Windows Support Volumes from being offered as boot options
- Updates Volume
FS_TYPEsetting to match assumed types - Differentiates between HFS+ types
- Improves Time Bound Primed Buffer Mitigation
- Reduces intervention threshold based on detection of confirmed user key presses
- Amends the
ShouldScanFunction to Exclude HFS+Recovery HDVolumes- This recovery functionality was meant to be handled by the Mac Recovery Tool
- Amends the
WarnIfLegacyProblemsFunction Run Position- Now runs after the
SetupScreenfunction to ensure screen display on issues
- Now runs after the
- Amends EFI Scan to Exclude
BOOTCAMP- BootCamp creates HybridMBR disks and trigger redundant attempts to find EFI loaders
- Ports Downstream Directory Scan Iteration Fix
- Ref: joevt@8d03f98
v0.13.3.AA
- Synced with Upstream v0.13.3
- Adds
EnableMacosFilterFeature- This feature is active by default and activates the
ProtectNVRAMfeature, if enabled, on MacOS boots - The
ProtectNVRAMfeature, if enabled, is activated for other applicable OS types regardless - The
EnableMacosFilterfeature can be disabled using a newdecline_macos_filterconfiguration token
- This feature is active by default and activates the
- Adds
DisableNvramPanicLogFeature- Sets a MacOS
nvram_paniclog=0boot argument to disable kernel panic logging to NVRAM - Replaces the
PanicFilterfeature which has been removed
- Sets a MacOS
- Adds
NvramVariableLimitFeature- Filters NVRAM variable write attempts
- Variables larger than a specified size are discarded
- This is activated by a new
nvram_variable_limitconfiguration token
- Adds
DecoupleKeyF10Feature- Unlinks the
F10key from the built in screenshot feature - Allows the use of 3rd party screenshot tools that also map the
F10key - The
\(forward slash) key remains linked to the built in screenshot feature - This is activated by a new
decouple_key_f10configuration token
- Unlinks the
- Fixes
DisableAMFIFeature- The feature had been disabled under some circumstances
- This bug was introduced in v0.13.2.AP (Commit 8705fdb)
- Improves
HandleSignedIntFunction- Ensures the function always returns a negative value when required
- Improves
FindMenuShortcutEntryFunction- Now initially tries a exact match of the stored string against available entries
- A match against substrings is only tried if an exact match is not found
- Improves Pointer Device Handling
- Applies workaround for touch mode failure
- Rationalises pointer priority with
EnableTouchalways having priority overEnableMouse- Previously depended on order of appearance in configuration file
- Renames Misc Configuration Tokens
decline_nvramprotecttodecline_nvram_protectdecline_uefiemulatetodecline_uefi_emulatedecline_espfiltertodecline_esp_filterdecline_apfsloadtodecline_apfs_loaddecline_apfsmutetodecline_apfs_mutedecline_apfssynctodecline_apfs_syncdecline_nvmeloadtodecline_nvme_loaddecline_tagshelptodecline_tags_helpdecline_texthelptodecline_text_helpdecline_applefbtodecline_apple_fb
v0.13.2.AP
Change 01: 21 Apr 221.
- Adds
PanicFilterFeature- RefindPlus now discards NVRAM write attempts of kernel panic information by default
- Can be disabled using a new
decline_panicfilterconfiguration token - Currently limited to when directly booting MacOS from RefindPlus
- Adds
SupplyAppleFBFeature- Attempts to provide AppleFramebuffers on Macs when absent under certain circumstances
- Can be disabled using a new
decline_applefbconfiguration token
- Adds
TextHelpFeature- Uses complementary text colours to improve legibility
- Can be disabled using a new
decline_texthelpconfiguration token- Only when using a custom title banner
- Always on when using the default title banner
- Adds
IconRowMoveFeature- Allows repositioning the icon row position on the RefindPlus screen
- Sometimes needed when icons block parts of custom banners
- Base position can be specified using a new
icon_row_moveconfiguration token
- Allows repositioning the icon row position on the RefindPlus screen
- Adds
IconRowTuneFeature- Allows adjustments to the
IconRowMoveposition - Offset value can be specified using a new
icon_row_tuneconfiguration token
- Allows adjustments to the
- Adds
RansomDrivesFeature- Some types of firmware, notably on HP Notebooks, may lock some partitions
- This renders them inaccessible or may even lead to RefindPlus hanging
- Such partitions can be unlocked by setting a new
ransom_drivesconfiguration token - This option is currently always disabled on Apple firmware
- Some types of firmware, notably on HP Notebooks, may lock some partitions
- Adds
RescanDXEFeature- Controls scanning for newly revealed DXE drivers when connecting handles
- Switch ON or OFF with a new
disable_rescan_dxeconfiguration token
- Switch ON or OFF with a new
- This was previously done by default but may negatively impact loading speed
- Typically only required when running non-native filesystems
- Controls scanning for newly revealed DXE drivers when connecting handles
- Adds
DriverPriorityFeature- Asigns a higher priority to drivers loaded by RefindPlus
- Ensures that such are loaded when other similar drivers exist (mainly in the firmware)
- Currently tied to the
RansomDrivesFeature and only activated when that feature is active
- Adds
HaltSecondsFunction- Works as
PauseSecondsdoes, but does not terminate on keypress
- Works as
- Fixes Unicode Collation
- Now checks for and uses Unicode Collation Protocol instances that support English
- Previously simply selected the first instance found (Inherited)
- This should allow proper support for languages using unicode text
- Improves UEFI Runtime Function Wrapping
- The wrapped UEFI Runtime
SetVariablefunction is now better managed
- The wrapped UEFI Runtime
- Improves
TransientBootFeature- Now removes pre-existing
PreviousBootinstances when booting with this option set
- Now removes pre-existing
- Improves
DirectBootFeature- Previously failed when a keyboard was not connected
- Minimises screen shudder when the
ESCkey is held down to override DirectBoot
- Improves
ScreenShotFeature- Properly limited to one (1) sreenshot per keypress
- Removes limitation of the keypress not continuing beyond the on-screen message display
- Fixes Screenshots being only functional for the main RefindPlus screen
- This bug was introduced in v0.13.2.AN (Commit 99da7ce)
- Properly limited to one (1) sreenshot per keypress
- Improves
HandleSignedIntFunction- Removed limitation on handled values
- Improves
egDisplaymessageFunction- Now includes option to pause in the function
- Previously needed a separate call
- Now erases the message after the display (if a pause is invoked)
- Previously only properly erased when called on the main screen
- The erasure was however also lost on the main screen when
IconRowMoveand/orIconRowTuneis active - Now fixed for all screens but artefacts may result with some custom banners
- Now includes option to pause in the function
- Improves
CleanNvramFeature- The Emulated NVRAM on the filesystem is now also cleared
- Now triggers NVRAM garbage collection on Macs when run
- This is an equivalent of manually setting
nvram ResetNVRam=1
- This is an equivalent of manually setting
- Improves
ProtectNVRAMFeature- Adds
rEFIt Variantto UEFI Loaders filtered forProtectNVRAM- Made up of
RefindPlus,rEFItandrEFIndfiles chain-loaded from named locations - The ProtectNVRAM feature is not enabled for such loaders
- Made up of
- Now checks new NVRAM write entries against existing entries
- Only updates the entries when absent or different
- Filtering these reduces NVRAM writes and associated wear and tear
- Expands blocked SecureBoot related items
- Now clears existing instances of blocked variables
- Adds
UnlockIDandUnlockIDCopyto filtered items- These are not certificates but work in concert with the certificates
- Hence, not required once certificates are filtered
- Filtering these reduces NVRAM writes and associated wear and tear
- Filters out the Current OEM Policy from post-block clean up
- Removal may have negative impact on UEFI-PC
- Not strictly needed as ProtectNVRAM is currently limited to Apple Firmware
- Considered best to add a filter now in case that changes in future
- Adds
- Improves Identification of Linux Instances
vmlinuz,bzImage, andkernelloaders are now accounted for as Linux loaders- The
ProtectNVRAMfeature is now not applied to such loaders - The
grubloader was already accounted for
- Improves OS Boot Filtering
- The
OSTypeflag is now taken into account
- The
- Improves Load Error/Warning Display
- The
ContinueOnWarningfeature is forced on temporarily if required
- The
- Improves Time Bound Primed Buffer Mitigation
- Mitigates against RefindPlus spontaneously running default items
- Intervention is based on a rising threshold based on build type and presence of Apple firmware
- Also doubles threshold time when external disks are detected
- The issue appears to be worse when such disks are connected
- Removes
BootKickerfeature- The feature was added as part of attempts to provide the RefindPlus screen on MacPro5,1
- This was ultimately achieved via other means but the feature was maintained for potential benefits
- The feature never actually worked properly however, hence the removal
- Amends GOP Mode Selection Preference
- RefindPlus defaults to selecting the maximum resolution GOP Mode when a screen resolution is not specified
- When two modes have the same resolution, the later mode was used
- This is now changed to prefer the first mode found
- Amends OpenProtocol Remapping on Macs without AppleFramebuffers
- The remapping is now disabled when GOP is absent on any type of firmware
- It is now also disabled when AppleFramebuffers are absent on Apple firmware
- This is to avoid potential memory management issues pending further investigation
- Amends Default Loader Scan for APFS Support Volumes
- APFS
Recovery,UpdateandVMvolumes are now added to theDontScanVolumelist by default
- APFS
- Amends Scan for
.VolumeIconsandVolumeBadges- Volumes in the
DontScanVolumelist are now skipped
- Volumes in the
- Amends System Table Reallocations
- No longer copies memory for system table reallocations
- Some Mac models fail to boot with this following recent firmware updates
- Other recent changes to RefindPlus may have also affected booting 'FileVault' encrypted volumes
- Amends
HandleProtocolStashing- No longer stashes and restores HandleProtocol on
OcProvideConsoleGopcall
- No longer stashes and restores HandleProtocol on
- Renames the
SilentBootFeature asDirectBoot- This more accurately describes the feature.
- Renames Misc Tokens to Permit Grouping of Related Tokens
- The
uga_pass_throughtoken is renamed aspass_uga_through - The
XYZ_hidden_iconstokens are renamed ashidden_icons_XYZ - The
XYZ_renderertokens are renamed asrenderer_XYZ
- The
- Extends fixes on Mac Recovery Implementation for MacOS on APFS
- Adjusted to cover all MacOS instances on APFS
- APFS Recovery Volumes are handled as Mac Recovery Tools and not as volumes with loaders
- IMPORTANT:
- This implementation is still a work in progress ... feedback required/welcome
-
Updated attached files to include post release
PanicFilterfeature fix ↩
v0.13.2.AN
Change 01: 23 Feb 221.
- Multiple Misc Stability Fixes
- Major refactoring and restructuring for improved stability
- Also applied to filesystem drivers
- Adds
SupplyUEFIFeature- Adds an implementation of the
CreateEventExfeature to EFI 1.x units - Additionally, the EFI Revision is modified to present as UEFI 2.3
- This allows the use of UEFI 2.x tools and drivers on Legacy EFI 1.x units in many cases
- This is particularly the case on Legacy Macs, which already have amended EFI 1.x implementations
- This functionality can be disabled by setting the
decline_uefiemulatetoken - As an aside, the
RuntimeServicestable is now also amended inAmendSysTable
- Adds an implementation of the
- Adds
SilentBootFeature- RefindPlus inherited a mode where a default selection was run after an instant timeout
- A shortcut key for a loader could also be pressed to run that particular loader instead
- This mode is activated by setting the
timeoutconfig token to-1 - However, the RefindPlus screen was briefly loaded before the target option was run
- This created an unwanted screen flash and also removed the BGRT logo
- The default selection is now run without showing the screen at all instead (Based on an upstream update)
- The mode is now truly silent as there is no video output unless overridden (BGRT logos are maintained)
- Override is initiated by holding down the
ESCkey immediately after starting RefindPlus - Shortcut keys can also be pressed
- In such cases, the loader associated with the key will be run instead of the default
- There will be no video output by RefindPlus similar to the default case
- Override is initiated by holding down the
- Fixes Forced
TextRenderer- The
TextRendererfeature is forced on in certain circumstances to enable text mode support - This appears to have resulted in conflicts on some Macs following a firmware update
- The firmware update appears to have made changes to screen mode settings
- The forced activation has been amended to avoid this issue
- The
- Fixes SystemTable Restoration
- The code was previously not operational
- This has now been fixed but is now limited to when
SupplyUEFIis inactive
- Fixes Major Memory Conflict
- An item had been wrongly freed and resulted in random crashes when running loaders
- This bug was introduced in v0.13.2.AC (Commit 6ed58c5)
- Fixes
DontScanVolumesfor Synced APFS Instances- Limited to Single Instance APFS Containers
- Fixes Reported LodePNG Name Collisions
- This apparently affected Docker builds on Linux
- Amends Handling of Inconsistent EFI Versions
- RefindPlus now disables all functionality involving UEFI element changes when this is detected
- A detection of inconsistent EFI versions suggests RefindPlus has been chain-loaded
- This is most likely to be as a result of chain-loading from OpenCore with
ForgeUefiSupportset - The disabled features can typically also be set in OpenCore
- Improves
ProtectNVRAMImplementation- RefindPlus classifies UEFI Loaders into one of the following categories:
Opencore,Clover,Linux,MacOS,WindowsandOthers
- Only security certificates generated by Windows UEFI Loaders were blocked by ProtectNVRAM
- However, UEFI Windows installers/updaters may fall into the
Otherscategory and generate such certificates - Hence, certificates generated by UEFI Loaders that fall into the
Otherscategory are now also blocked - The feature remains only active on Apple firmware and can be disabled by setting the
decline_nvramprotecttoken
- RefindPlus classifies UEFI Loaders into one of the following categories:
- Improves
SyncAPFSImplementation- The presence of valid VolUUID and PartGUID is now taken into account
- SyncAPFS is disabled if either has a
NULLGuid value
- Improves Screenshot Feature
- Feedback on success/failure is given via on-screen messages
- Each press of the
F10key now results in only one image being saved- This is subject to the key press not continuing beyond the on-screen message display
- Improves Memory Management
- Multiple memory management improvements
- Improves Build Process
- RELEASE builds are further optimised
- The
MDEPKG_NDEBUGEDK2 functionality is leveraged to:- Reduce file size
- Ensure consistent files on different builds
- EDK2 otherwise only guarantees functional consistency
- This now enforces additional structural consistency
- Builds with different file paths will now be the same
- The
- Calls to
ASSERT, and similar, are activated on DEBUG Builds- Failed
ASSERTcalls put RefindPlus into a Deadloop
- Failed
- Enables
NOOPTBuild Target- This is a debug build with misc compile time optimisation items disabled
- Log Level 2 is only exposed on this build target
- The
REFIT_DEBUGdefine has been converted to a compiler option- The constant is no longer defined in
global.hand instead set inRefindPlus.inf - This change removes the need for compile time edits to set build targets
- The requirements are now managed transparently by the build process itself
- The constant is no longer defined in
- The various
*.inffiles for filesystem drivers etc, have been standardised- These now follow a clearer standard format
- RELEASE builds are further optimised
- Renames the
ignore_previous_bootconfig option astransient_boot- This more accurately describes the feature.
- The current boot selection is not saved, it becomes transient, but any previously saved boot is set as the default
- This more accurately describes the feature.
-
Added
Alt-RefindPlus_x64-001302.ANpackage. This includes post release fixes for failure to boot on some machines. ↩
v0.13.2.AM
Change 01: 19 Dec 211.
Change 02: 23 Dec 212.
- Reverts Ported APFS Volume Group Identification
- Does not appear the APFS Volume Group ID was correctly retrieved
- This resulted in Mac OS volume instance conflicts
- NOTE: Multi-Instance APFS Container restrictions now apply again
- Refer to v0.13.2.AK and v0.13.2.AL for Other Relevant Changes
v0.13.2.AL
- Adds "ExternalHiddenIcons" Feature
- Sets RefindPlus to also scan external volumes for ".VolumeIcon" icons
- This is a port of the downstream "AllHiddenIcons" feature by GitHub user @joevt
- Amended and renamed to reflect the target disk kind
- Improves "ScreenRGB" Feature
- The handling of the embedded title banner has been improved by leveraging transparency
- This significantly reduces the overall file size and ensures backgrounds are fully matched
- This is a port of the downstream implementation by GitHub user @joevt
- Fixes 'BootKicker' and 'CleanNvram' Amongst Others
- Misc memory management defects had disabled both
- Fixes for 'BTRFS' and 'NTFS' Filesystem Drivers from GitHub user @joevt
- BTRFS: Fixes file creation date bug
- NTFS: Fixes file creation date bug
- NTFS: Fixed "attribute_sparse" and "attribute_encrypted" which were not testing some flags correctly
- The field is a USHORT (Unsigned 16-bit integer) but was handled as BYTE (Unsigned 8-bit integer)
- NTFS: Fixes a bug where "read_attribute_direct" could write outside the attribute destination buffer.
- "olen" can become negative and could be passed to "CopyMem", which requires an unsigned length.
- Improves 'SyncAPFS'
- APFS Volume Groups can now be identified along with the earlier identified 'Disk Roles'
- This significantly improves determination of APFS Volume Types/Roles
- Restrictions limiting some features to setups with only one APFS instance per container are now removed
- This is a port of the downstream implementation by GitHub user @joevt
- Amends Log Levels
- LogLevel 0 remains as a native summary format
- The previous upstream based four (4) log levels have been compressed to two (2) levels
- LogLevel 4, which was not exposed by default, is now LogLevel 2, which is also not exposed by default.
- LogLevel 2 is exposed when the "REFIT_DEBUG" build flag is set to two (2) at compilation time.
- Set this in "BootMaster/globalExtra-DBG.txt" if using the RefindPlusUDK build script
- Unless LogLevel 2 is exposed when compiling, selected levels above one (1) will be capped at LogLevel 1
- When LogLevel 2 is exposed, selected levels above two (2) will be capped at LogLevel 2
- Initial activation of fixes on Mac Recovery For Mac OS 11 (Big Sur) and Later
- IMPORTANT:
- This implementation is still a work in progress ... feedback required/welcome
- IMPORTANT:
- Refer to v0.13.2.AK for Other Relevant Changes
v0.13.2.AK
- Adds "SupplyNVME" Feature
- A built in NvmExpress driver is loaded by default to provide NVMe support if required
- This functionality can be disabled by setting the 'decline_nvmeload' token
- With this feature, in addition to SupplyAPFS, firmware patching is no longer required on MacPro3,1 and XServe2,1
- Adds "ScreenRGB" Feature
- Allows overriding the default background colour selection process
- Users can now specify RGB values to be used instead
- Fixes Display of Mac Recovery Tool Name in RELEASE builds
- The variable holding the Mac Recovery tool name was wrapped in "Debug" tags
- Hence the tool name was not displayed in RELEASE builds
- Initial fixes on Mac Recovery For Mac OS 11 (Big Sur) and Later
- The Mac Recovery implementation inherited by RefindPlus was designed for the HFS+ filesystem
- Hence, it does not recognise recovery volumes of Mac OS versions with full APFS implementation
- Mac OS 10.13 (High Sierra) to Mac OS 10.15 (Catalina) have partial/transitional APFS implementations
- Mac OS 11 (Big Sur) and newer have full APFS implementations
- ADDITIONAL NOTES:
- This implementation does not support setups with more than one APFS instance in a single container
- This implementation is still a work in progress
- Fixes Compilation Issue on Recent GNU-EFI Versions
- Synced with upstream update as well as an existing issue with 'REFIT_CALL_X_WRAPPER'
- GNU-EFI compilation of RefindPlus is likely broken overall
- Fixes 'TagsHelp' Feature
- Was inverted ... active when decline_tagshelp was set and vice versa after renaming the feature
- This bug was introduced in v0.13.2.AH (Commit 1b043c3)
- Fixes Failure to Set Volume Badges and .VolumeIcon files on APFS Volumes
- The items were skipped by optimisation meant to only skip such on APFS System Volumes for SyncAPFS
- This bug was introduced in v0.13.2.AH (Commit d87d3fb)
- Fixes Memory Management
- The 'MyFreePool' function implementation did not actually free items passed
- Similarly, the 'ReleasePtr' function that called this was non operational
- This affected the operation of various elements across the board
- Both functions have now been consolidated into a new 'MY_FREE_POOL' macro
- This bug was introduced in v0.13.2.AD (Commit 65e5083)
- Fix BTRFS Filesystem Driver Build
- The BTRFS filesystem driver had been excluded from RefindPlus builds from the start of the project
- This was due to inherited issues with EDK2 builds of the driver ... rEFInd Build Notes
- The build issues were resolved by GitHub User "joevt" and have been incorporated into RefindPlus
- Improves Time Bound Primed Buffer Mitigation
- Mitigates against RefindPlus spontaneously running default items
- Intervention is now based on a minumum 1.25 second interval between load and run attempt
- Extended scope now covers Mac OS again (previously removed)
- Improves 'ProtectNVRAM' Implementation
- Now ensures this is reset on each loop through the RefindPlus Main Loop
- This ensures the filtering is not on if UEFI Windows boot fails
- Only has cosmetic relevance but best practice
- Improves 'Manage Firmware Boot Order' Implementation
- Now confirms selected action before execution to minimise the chances of making unwanted changes
- Amends 'ScaleUI' Implementation
- Now checks the resolution of the longest and shortest sides for automatic scaling
- Previously only checked the vertical resolution
- This allows rotated screens to be properly accounted for
- Some rare monitors, such as the 30" Apple Cinema Display, may be wrongly identified as HiDPI
- This is because EDID information is not used at this time
- However, the more common WQHD monitors are correctly identified as not being HiDPI monitors
- Laptops with 'Retina' screens should be correctly identified as having HiDPI monitors
- Amends Log Levels
- The previous upstream based four (4) log levels have been compressed to three (3) levels
- LogLevel 5, which was not exposed by default, is now LogLevel 4, which is not exposed by default.
- LogLevel 4 is exposed when the "REFIT_DEBUG" build flag is set to two (2) at compilation time.
- Set this in "BootMaster/globalExtra-DBG.txt" if using the RefindPlusUDK build script
- Unless LogLevel 4 is exposed when compiling, selected levels above three (3) will be capped at LogLevel 3
- When LogLevel 4 is exposed, selected levels above four (4) will be capped at LogLevel 4
v0.13.2.AJ
- Fixes 'PreBoot' Volume Filtering in REL Builds
- Deactivates Log Level 5
- Refer to v0.13.2.AH for Other Relevant Changes
v0.13.2.AH
- Adds "PreferHiddenIcons" Feature
- This functionality allows prioritising the use of ".VolumeIcon" image icons for loaders
- Adds Non-Standard UEFI 2.x Implementation Resilience
- Some UEFI 2.x implementations may be incomplete with some functionality missing
- This is typically due to customisation of the firmware as on Late Intel Macs such as the MacMini8,1
- This affected running the DEBUG build on such units
- RefindPlus now accommodates this situation.
- Adds Forced Shutdown on Secure Boot Setup Failure
- RefindPlus will now shutdown if meant to use secure boot but this could not be set up
- Fixes Failure to Detect Linux Partitions
- Linux partitions were not detected and therefore, could not be booted by RefindPlus
- Fixes Implicit Casting of Some Config Integers
- Some config tokens that could take negative values such as "screensaver" were handled as Unsigned Integers
- These are now correctly handled as Signed Integers
- Fixes Driver Loading from User Defined Folders
- Drivers in folders defined by the 'scan_driver_dirs' configuration token were not loaded in some instances
- This was because the routine expected the defined paths to not include the installation folder path
- This expectation was not specified however, meaning some users included the path in 'scan_driver_dirs'
- This expectation has now been removed and the installation folder path may or may not be included
- Fixes Switching External Screens to Text Mode
- External screens switched to text mode were functional but elements, such as the header, were missing
- This has now been fixed along with properly disabling the cursor
- Fixes Hang on Runtime Pauses
- RefindPlus hung on runtime pauses initiated before the main menu was loaded
- This was due to an absence of the Event Waitlist in such situations
- The Waitlist is now always generated on runtime pauses if not present
- Fixes Static 'PreviousBoot' Setup
- The actually booted loader was not recorded if a tool had been run beforehand
- Such previously set tools could only be changed by manually deleting the NVRAM entry
- The intented outcome of having a static setup could not be realised as envisaged
- This bug was introduced in v0.13.2.AG (Commit add53ba)
- Fixes Failure to set 'PreviousBoot' on Text Mode Boots
- Fixes Graphics Mode Selection in Multi-GPU Setups
- When more than one GPU is present, RefindPlus always tried to use the GOP instance from the last processed GPU
- The GPU with a GOP instance having the highest resolution is now selected instead (as intended)
- NB: RefindPlus does not check whether a GPU is actually connected to a display
- Hence, a blank display will result if the highest resolution GPU is not connected
- This bug was introduced in v0.12.0.AN (Commit 62e6fe8)
- Mitigates Text Mode Selected Menu Item Display
- The selected item in text mode menus was not displayed
- The selections had to be toggled to display the item
- RefindPlus now works around this issue by automatically toggling such menu items
- This toggling may however not happen on some units
- Improves Mac Recovery Tool Identification
- RefindPlus now attempts to associate Apple Mac Recovery Tool instances to specific Mac OS Volumes
- The same generic name was previously used for all instances
- This had made it difficult to know which volume a specific recovery instance applied to
- Improves Keystroke Flushing
- Device errors are returned when attempting to read keystrokes under some conditions
- This appears to typically only happen on UEFI PC
- RefindPlus now further attempts to ensure the read takes place and/or mitigate the impact
- Improves APFS Volume Role Identification
- APFS volume roles are now identified by their predefined 'Disk Roles' when possible
- Additionally, the 'SyncAPFS' feature has been optimised for faster completion
- Improves APFS Partition Type Detection
- RefindPlus Primarily used the Partition Type Guid to identify APFS Partitions
- Some UEFI PC may however not provide a Partition Type Guid for APFS volumes
- This affected the operation of the SyncAPFS feature which had to be disabled on such units
- RefindPlus can now determine APFS partitions when the Partition Type Guid is not present
- Improves 'PreviousBoot' Implementation
- Only Loaders (Row 1 Items) are now saved as 'PreviousBoot' when this is configured to be saved
- Such Loaders are only saved after verification (not regardless as was the case)
- Improves 'IgnorePreviousBoot' Implementation
- This token is now enforced everywhere when set
- Setting '+' under the 'default_selection' token will therefore have no effect in such cases
- NB: Setting 'default_selection "+"' remains equivalent to commenting that token out
- This default setting will continue to function as before
- Improves NVRAM Management
- NVRAM Entries (Emulated and Hardware) are fully cleared before new entries are made
- Improves Graphics Mode Selection
- Eliminates unnecessary iteration over UGA/GOP modes when only one UGA/GOP instance exists
- This improves loading speed.
- Extends Memory Management Fixes
- Additional memory management improvements
- Renames Misc Configuration Tokens
- 'ignore_volume_icns' to 'ignore_hidden_icons'
- The 'decline_XYZ' format is now used for options to disable divergent defaults
- 'scan_other_esp' to 'decline_espfilter'
- 'ignore_tag_help' to 'decline_tagshelp'
- 'sync_apfs' to 'decline_apfssync' ('SyncAPFS' is now active by default)
- 'supply_apfs' to 'decline_apfsload' ('SupplyAPFS' is now active by default)
- 'silence_apfs' to 'decline_apfsmute' ('SilenceAPFS' is now active by default)
- 'protect_nvram' to 'decline_nvramprotect' ('ProtectNVRAM' is now active by default)
- 'reload_gop' to 'decline_reloadgop' ('ReloadGOP' is now active by default)