BIOSUtilities
Various BIOS Utilities for Modding/Research
- Dell PFS Update Extractor [use Dell_PFS_Extract from refactor branch]
- AMI UCP BIOS Extractor [use AMI_UCP_Extract from refactor branch]
- AMI BIOS Guard Extractor [use AMI_PFAT_Extract from refactor branch]
- Phoenix SCT BIOS Extractor [use Phoenix_TDK_Extract from refactor branch]
- Insyde iFlash Image Extractor [use Insyde_IFD_Extract from refactor branch]
- Portwell EFI BIOS Extractor [use Portwell_EFI_Extract from refactor branch]
- Panasonic BIOS Update Extractor [use Panasonic_BIOS_Extract from refactor branch]
- VAIO Packaging Manager Extractor [use VAIO_Package_Extract from refactor branch]
- Fujitsu UPC BIOS Extractor [use Fujitsu_UPC_Extract from refactor branch]
- Fujitsu SFX BIOS Extractor [use Fujitsu_SFX_Extract from refactor branch]
- Award BIOS Module Extractor [use Award_BIOS_Extract from refactor branch]
- Apple EFI Package Grabber
- Apple EFI File Renamer [use Apple_EFI_Identify from refactor branch]
- Apple EFI IM4P Splitter [use Apple_EFI_Split from refactor branch]
- Apple EFI Package Extractor
Dell PFS Update Extractor
!!! OUTDATED !!!
Please use Dell_PFS_Extract from refactor branch
AMI UCP BIOS Extractor
!!! OUTDATED !!!
Please use AMI_UCP_Extract from refactor branch
AMI BIOS Guard Extractor
!!! OUTDATED !!!
Please use AMI_PFAT_Extract from refactor branch
Phoenix SCT BIOS Extractor
!!! OUTDATED !!!
Please use Phoenix_TDK_Extract from refactor branch
Insyde iFlash Image Extractor
!!! OUTDATED !!!
Please use Insyde_IFD_Extract from refactor branch
Portwell EFI BIOS Extractor
!!! OUTDATED !!!
Please use Portwell_EFI_Extract from refactor branch
Apple EFI Package Grabber
Description
Parses user-provided (DB) list of Apple Software Update CatalogURL .sucatalog links and saves all newer (since last run) EFI firmware package links into a text file. It removes any xml formatting, ignores false positives, removes duplicate links and sorts them in alphabetical order for easy comparison afterwards.
Usage
First, you need to familiarize a bit with the DB (i.e. Apple_EFI_Grab.dat file). It consists of 3 sections: Last run DateTime (YYYY-MM-DD HH:MM:SS), Sucatalog links to check and EFI Package links which have been gathered so far across all runs. Before running the utility for the fist time, you need to insert the Sucatalog links into the DB, below the 1st line (DateTime). The Sucatalog links in the DB are stored in partial form, starting from "index" string. For example: "https://swscan.apple.com/content/catalogs/others/index-12.merged-1.sucatalog" must be stored as "index-12.merged-1.sucatalog" in the DB. The Sucatalog links are not pre-included in the DB but you can find them online (e.g. https://github.com/zhangyoufu/swscan.apple.com/blob/master/url.txt).
Compatibility
Should work at all Windows, Linux or macOS operating systems which have Python 3.7 support.
Prerequisites
To run the python script, you need to have the following 3rd party Python module installed:
pip3 install urllib3
Build/Freeze/Compile with PyInstaller
PyInstaller can build/freeze/compile the utility at all three supported platforms, it is simple to run and gets updated often.
- Make sure Python 3.7.0 or newer is installed:
python --version
- Use pip to install PyInstaller:
pip3 install pyinstaller
- Use pip to install urllib3:
pip3 install urllib3
- Build/Freeze/Compile:
pyinstaller --noupx --onefile Apple_EFI_Grab.py
At dist folder you should find the final utility executable
Anti-Virus False Positives
Some Anti-Virus software may claim that the built/frozen/compiled executable contains viruses. Any such detections are false positives, usually of PyInstaller. You can switch to a better Anti-Virus software, report the false positive to their support, add the executable to the exclusions, build/freeze/compile yourself or use the Python script directly.
Apple EFI File Renamer
!!! OUTDATED !!!
Please use Apple_EFI_Identify from refactor branch
Apple EFI IM4P Splitter
!!! OUTDATED !!!
Please use Apple_EFI_Split from refactor branch
Apple EFI Package Extractor
Description
Parses Apple EFI firmware packages (i.e. FirmwareUpdate.pkg, BridgeOSUpdateCustomer.pkg), extracts their EFI images, splits those in IM4P format and renames the final SPI/BIOS images accordingly. The utility automatically uses the free version of AnyToISO to extract the EFI .pkg files. The subsequent IM4P splitting and EFI renaming requires the presence of "Apple EFI IM4P Splitter" and "Apple EFI File Renamer" utilities.
Usage
You can either Drag & Drop or manually enter the full path of a folder containing Apple EFI firmware package (.pkg) files. Depending on where AnyToISO is installed on your system, you must change the "anytoiso_path" variable accordingly.
Download
An already built/frozen/compiled binary is not provided because the script requires the user to set the AnyToISO executable path variable. Remember that you need to include prerequisites such as AnyToISO, Apple EFI IM4P Splitter and Apple EFI File Renamer for the utility to work.
Compatibility
Should work at all Windows & macOS operating systems which have Python 3.7 and AnyToISO support.
Prerequisites
To run the python script, you need to have the following 3rd party tools installed or placed at the same directory:
- AnyToISO (i.e. anytoiso.exe)
- UEFIFind (i.e. UEFIFind.exe)
- UEFIExtract (i.e. UEFIExtract.exe)
Build/Freeze/Compile with PyInstaller
PyInstaller can build/freeze/compile the utility at all three supported platforms, it is simple to run and gets updated often. Note that, due to this utility's nature, you may need to perform some small script changes for a built/frozen/compiled binary to work.
- Make sure Python 3.7.0 or newer is installed:
python --version
- Use pip to install PyInstaller:
pip3 install pyinstaller
- Build/Freeze/Compile:
pyinstaller --noupx --onefile Apple_EFI_Package.py
At dist folder you should find the final utility executable
Anti-Virus False Positives
Some Anti-Virus software may claim that the built/frozen/compiled executable contains viruses. Any such detections are false positives, usually of PyInstaller. You can switch to a better Anti-Virus software, report the false positive to their support, add the executable to the exclusions, build/freeze/compile yourself or use the Python script directly.
Panasonic BIOS Update Extractor
!!! OUTDATED !!!
Please use Panasonic_BIOS_Extract from refactor branch
VAIO Packaging Manager Extractor
!!! OUTDATED !!!
Please use VAIO_Package_Extract from refactor branch
Fujitsu UPC BIOS Extractor
!!! OUTDATED !!!
Please use Fujitsu_UPC_Extract from refactor branch
Fujitsu SFX BIOS Extractor
!!! OUTDATED !!!
Please use Fujitsu_SFX_Extract from refactor branch