Releases: MuertoGB/MacEfiToolkit
Releases · MuertoGB/MacEfiToolkit
Version 2.0.1
Version 2.0.1
Enhancements
- User interface improvements.
- Reintroduced memory usage monitoring in the application.
- Reintroduced the manual file (see MANUAL.md).
- Reorganized menu items across the application.
- 'Folders' menu buttons will no longer be disabled when no firmware is loaded.
- Updated shortcut keys throughout the application.
- Menus now display available shortcuts where applicable.
- Available window shortcuts can be viewed in the manual.
- Improved consistency of file names when exporting data.
Misc
- Added missing menu item 'Open LZMA DXE Folder' to the Startup and EFIROM windows.
Version 2.0.0
Welcome to the new major release of Mac EFI Toolkit. A huge thanks to the repair community, your feedback helped shape this release. And thanks Stringy for helping me through the documentation, and listening to me get pissed off.
New
- User interface redesigned for improved usability, with a new application icon.
- Added capability to open multiple firmwares simultaneously.
- The application now supports Intel T2 SOCROM firmware.
- Startup Window: Introduced a new startup window where users can drag and drop or browse for a compatible EFIROM or T2 SOCROM. The main window is now dedicated to EFIROM, with some functions moved to the startup window.
- EFI Window Updates:
- Patcher Relocation: Removed the firmware patcher window; all patching features are now consolidated in the EFI window.
- Structured File Naming: Added an option to automatically generate a structured file name for the loaded firmware and copy it to the clipboard.
- Firmware Export Options: Users can now export firmware information to a text file, as well as export NVRAM stores.
- Address Copying: Added options to copy the Fsys store base address and NVRAM VSS and SVS base addresses.
- NVRAM Data: The window now displays base addresses of primary stores and whether they are empty, or active.
- Fsys Store: The window now displays the store's base address and indicates whether the store checksum is valid or invalid.
- Intel Flash Descriptor: The windows now indicates if the firmware includes an Intel Flash descriptor.
- Added an icon to the status bar which will indicate if a compressed LZMA DXE archive was found within the firmware.
- Added an icon to the status bar which indicates whether an email was found in the 'fmm-mobileme-token-FMM' NVRAM variable.
- Added an option to the export menu to export decompressed LZMA DXE archives, which can be extracted using 7-Zip.
- Added an option to the export menu to save an email address if present in the 'fmm-mobileme-token-FMM' NVRAM variable.
- Added new settings:
- "Use Windows Accent Colour for Borders": Allows form borders to match the system's accent color for a more integrated appearance.
- "Disable Serial Number Validation": Disables the validation process when entering a new serial number for the firmware.
- Added firmware parse time to status bars.
- Serial numbers are now censored by default. They can be uncensored by toggling the switch next to the serial number data.
- Serial numbers will no longer be displayed in the "Copied to Clipboard" dialogs. Instead, a default message "Serial Number copied to clipboard" will be shown.
- Updated LZMA SDK to version 24.08.
- Unhandled exception reports now use regular expressions (regex) to sanitize usernames from exception messages and file paths, where possible. However, there may still be some cases where this data could appear. Please review the reports carefully before uploading them to GitHub issues.
- The EFIROM NVRAM parser was rewritten, enhancing functionality and performance.
Enhancements
- Restricted non-Apple EFI files from being opened.
- Enhanced NVRAM reset functionality to simulate an uninitialized factory firmware state.
- Improved validation process for serial numbers.
- Updated the internal database with more models.
- Modified default file name for exporting information in the ROM Information window.
- Enabled "Make New Folder" in directory selection dialogs.
- Removed unnecessary confirmation dialogs in various windows.
- Modified shortcut keys in the EFI window for improved accessibility.
- When 'Disable Confirmation Dialogs' is enabled, the EFI window will no longer display a "copied to clipboard" message.
- Redesigned the logging system to consolidate all entries into a single log file, streamlining log management and improving readability.
- Changed the application log filename from 'mefit.log' to 'application.log'.
- If a firmware is loaded (EFIROM, SOCROM) and an incompatible file is opened, the window will no longer reset unnecessarily.
Bugs
- Added missing icon in the ROM Information window.
- Fixed broken Flash Image Tool version strings.
- Fixed a logic error causing the internal database to be skipped when the Fsys Store was force-found, which led to misleading "not present" messages in the database log.
- Fixed an issue where the application could not open the log file when running under Wine.
- Fixed an issue with NVRAM limit calculation.
- When an NVRAM store base address is found but the size is invalid (0xFFFF), the parser will now treat the store as empty, rather than incorrectly indicating that the store is missing.
Miscellaneous
- Some settings have been restructured; users will need to reselect the 'EFI Window Default Directory' in settings.
- Discontinued support for Windows 8.1 and earlier operating systems. The application will no longer launch on unsupported operating systems.
- EFI Window Adjustments:
- Removed single-click copy functionality for labels and reset their cursors to default to better align with UI design best practices.
- Removed display of private memory usage to improve compatibility with Wine.
- Removed NSS store details and NVRAM store tips.
- Settings Adjustments:
- Removed option to disable LZMA decompression, as it is required for APFS compatibility detection.
Version 1.1.5
Bugs:
- Fixed a bug introduced in the previous version where the NVRAM store type was not set when parsing store data, this could lead to a 'no post' scenario.
- Mitigated rare occurrences of malformed Intel ME version numbers.
- Fixed a UI bug related to the METLabel, where the ForeColor property could be overridden even when the control was disabled.
Version 1.1.4
The download for this version has been removed due a bug affecting the AppleEFI NVRAM parser. Please use the latest release instead.
This release was focused on user feedback, and refactoring of the codebase.
Enhancements:
- Implemented single-click functionality for most main window labels, enabling users to instantly copy text to the clipboard.
- Updated the main window copy menu to include all respective descriptor region offsets when copying PDR, ME, and BIOS region data stored in the flash descriptor.
- Introduced an export button in the ROM Information window, enabling users to export the AppleRomSectionInformation data displayed in the window.
- Added '0x' prefix to the beginning of region base data to better represent it as an address.
- Improvements to the AppleEFI firmware parser.
- Added NVRAM base address and size to the debug log.
- User Interface layout changes.
Bugs:
- Resolved an issue where the ampersand '&' symbol was not correctly displayed in specific UI elements. This issue was caused by the 'Use Mnemonic' property being set to true.
Version 1.1.3
This release was focused on user feedback, and patching some small bugs encountered whilst bug tracking.
Enhancements:
- Added hexadecimal format to the main window file size data.
- Enabled the 'All Files' option, and modified the default filename when exporting Fsys Store or ME Region binary data in the main window.
- The patcher window now triggers a 'Save As' dialog upon clicking the 'Build' button, allowing users to choose the desired save location and filename.
- Introduced button 'Show Last Build' in the patcher window that opens file explorer and highlights the last build when clicked.
- User Interface layout changes.
- Added LZMA SDK version to the debug log, and about window.
Bugs:
- Fixed a malformed string in the debug log navigation prompt.
- Fixed inaccurate main window tooltip stating both designated NVRAM stores were 'empty' when only the backup store contained data.
Version 1.1.2
Enhancements:
- User Interface improvements.
- Altered the functionality of export dialogues. Rather than displaying the export path, users will now be prompted to decide whether they want to navigate to the file directly in an explorer window.
Bugs:
- Fixed image and text display issues when the Operating System UI scaling is set to 100% size.
- Fixed the custom initial directory setting not being reflected immediately when a firmware is not loaded, and a user changes the path.
Version 1.1.1
New:
- Added a new feature to the main window, allowing users to automatically create a backup of the loaded firmware as a zip archive (ALT + B). This feature offers users a convenient way to compress their firmware files for long term storage.
Enhancements:
- The settings window will now display the initial folder path.
- Added application icon to tool windows. These icons can be double-clicked to reset the position of the window, centring it to the main window.
- User Interface improvements.
Bugs:
- Fixed an issue where part of the main window's title area was unresponsive when attempting to drag the window.
Version 1.1.0
New:
- Introduced a new option in the main window that allows users to remove EFI Lock without clearing the SVS NVRAM store (ALT + L). This method offers a safer approach as it retains the SVS NVRAM data whilst only invalidating the Message Authentication Code (Use of this feature will require acceptance of the editing terms).
- Added dialog when text is copied via the main window copy menu.
Enhancements:
- Improved the Fsys parser by implementing dynamic reading of the Fsys store size. This improvement replaces the previous static approach of reading a hardcoded size of 0x800h (2048 bytes).
- Expanded functionality of the main window copy menu by introducing new options to copy the following data: File Size (Hex), Config Code, PDR base, ME base, and BIOS base.
- Reorganized some data in the main window user interface by relocating EFI Lock information to its own dedicated section.
- The main window will now display the length of a system serial number.
- Improved user interaction by enabling access to the main window application menu through a right-click action on the title area.
- Debug logs will now show the detected Fsys store size if a firmware is loaded and the Fsys store is present.
- Minor UI improvements.
Misc:
- Omitted display of the Intel Flash Image Tool version from the main window, while retaining its presence within the clipboard copy menu.
- Removed setting "Enable valid flash descriptor enforcement" from the application, as it is no longer required or relevant.
Version 1.0.3
New:
- Updated the firmware parser with a new feature that attempts to force find the Fsys Store if it was not initially located within the NVRAM on the first pass. This change makes the application more reliable at extracting Fsys data from corrupt firmware.
Enhancements:
- Implemented a visual colour change in the presentation of NVRAM store labels in the main window. The manual has been updated to reflect this change.
- Improved the image validation logic.
- User interface improvements.
Bugs:
- Fixed a scenario that caused a crash when dragging and dropping a file onto the application executable and subsequently clicking "Create a Debug Log." This issue was caused by a malformed file path in specific scenarios, and was resolved by dynamically constructing the executable file path when necessary.
Version 1.0.2
Enhancements:
- Reverted the main buttons back to text-based buttons, restoring their original form without the use of icons.
- Other User Interface improvements.
Bugs:
- Resolved an issue that caused the application to become unresponsive when attempting to open large files.
- Resolved an issue that allowed copying the EFI version when the string value was null.