BIOSUtilities v24.10.17

Fixed "skip user action prompts" argument being ignored
Improved AMI UCP tag dictionary for better NAL parsing
This commit is contained in:
Plato Mavropoulos 2024-10-17 20:53:04 +03:00
parent b174ce40e6
commit 010b5a47d4
7 changed files with 18 additions and 12 deletions

View file

@ -1,3 +1,8 @@
24.10.17
Fixed "skip user action prompts" argument being ignored
Improved AMI UCP tag dictionary for better NAL parsing
24.10.09 24.10.09
Added Apple EFI EFI Image Identifier new argument -q Added Apple EFI EFI Image Identifier new argument -q

View file

@ -59,7 +59,7 @@ Enter output directory path: "C:\P5405CSA.303_output"
All utilities form the "biosutilities" python package, which can be installed from PyPi: All utilities form the "biosutilities" python package, which can be installed from PyPi:
``` bash ``` bash
python -m pip install --upgrade biosutilities python -m pip install --upgrade biosutilities[pefile,lznt1]
``` ```
Installing the python package is the recommended way to call one or more utilities programatically, while fully controlling arguments and options. Installing the python package is the recommended way to call one or more utilities programatically, while fully controlling arguments and options.
@ -411,8 +411,8 @@ No additional optional arguments are provided for this utility.
To run the utility, you must have the following 3rd party Python modules installed: To run the utility, you must have the following 3rd party Python modules installed:
* [pefile](https://pypi.org/project/pefile/) * [pefile](https://pypi.org/project/pefile/2023.2.7/)
* [dissect.util](https://pypi.org/project/dissect.util/) * [dissect.util](https://pypi.org/project/dissect.util/3.18/)
Moreover, you must have the following 3rd party tool at PATH or "external": Moreover, you must have the following 3rd party tool at PATH or "external":
@ -432,7 +432,7 @@ No additional optional arguments are provided for this utility.
To run the utility, you must have the following 3rd party Python module installed: To run the utility, you must have the following 3rd party Python module installed:
* [pefile](https://pypi.org/project/pefile/) * [pefile](https://pypi.org/project/pefile/2023.2.7/)
### Portwell EFI Update Extractor ### Portwell EFI Update Extractor
@ -448,7 +448,7 @@ No additional optional arguments are provided for this utility.
To run the utility, you must have the following 3rd party Python module installed: To run the utility, you must have the following 3rd party Python module installed:
* [pefile](https://pypi.org/project/pefile/) * [pefile](https://pypi.org/project/pefile/2023.2.7/)
Moreover, you must have the following 3rd party tool at PATH or "external": Moreover, you must have the following 3rd party tool at PATH or "external":

View file

@ -5,4 +5,4 @@
Copyright (C) 2018-2024 Plato Mavropoulos Copyright (C) 2018-2024 Plato Mavropoulos
""" """
__version__ = '24.10.09' __version__ = '24.10.17'

View file

@ -215,6 +215,8 @@ class AmiUcpExtract(BIOSUtility):
'@CML': ['CMOSD4.txt', 'CMOS Item Number-Value (MSI)', 'Text'], '@CML': ['CMOSD4.txt', 'CMOS Item Number-Value (MSI)', 'Text'],
'@CMS': ['CMOSD4.exe', 'Get or Set CMOS Item (MSI)', ''], '@CMS': ['CMOSD4.exe', 'Get or Set CMOS Item (MSI)', ''],
'@CPM': ['AC_Message.txt', 'Confirm Power Message', ''], '@CPM': ['AC_Message.txt', 'Confirm Power Message', ''],
'@D32': ['amifldrv32.sys', 'amifldrv32.sys', ''],
'@D64': ['amifldrv64.sys', 'amifldrv64.sys', ''],
'@DCT': ['DevCon32.exe', 'Device Console WIN32', ''], '@DCT': ['DevCon32.exe', 'Device Console WIN32', ''],
'@DCX': ['DevCon64.exe', 'Device Console WIN64', ''], '@DCX': ['DevCon64.exe', 'Device Console WIN64', ''],
'@DFE': ['HpDevFwUpdate.efi', 'HpDevFwUpdate.efi', ''], '@DFE': ['HpDevFwUpdate.efi', 'HpDevFwUpdate.efi', ''],
@ -249,8 +251,7 @@ class AmiUcpExtract(BIOSUtility):
'@VER': ['OEM_Version.txt', 'OEM Version', 'Text'], '@VER': ['OEM_Version.txt', 'OEM Version', 'Text'],
'@VXD': ['amifldrv.vxd', 'amifldrv.vxd', ''], '@VXD': ['amifldrv.vxd', 'amifldrv.vxd', ''],
'@W32': ['amifldrv32.sys', 'amifldrv32.sys', ''], '@W32': ['amifldrv32.sys', 'amifldrv32.sys', ''],
'@W64': ['amifldrv64.sys', 'amifldrv64.sys', ''], '@W64': ['amifldrv64.sys', 'amifldrv64.sys', '']
'@D64': ['amifldrv64.sys', 'amifldrv64.sys', '']
} }
def check_format(self, input_object: str | bytes | bytearray) -> bool: def check_format(self, input_object: str | bytes | bytearray) -> bool:
@ -420,7 +421,7 @@ class AmiUcpExtract(BIOSUtility):
not uaf_tag.startswith(('@ROM', '@R0', '@S0', '@DR', '@DS')): not uaf_tag.startswith(('@ROM', '@R0', '@S0', '@DR', '@DS')):
printer(message=f'Note: Detected new AMI UCP Module {uaf_tag} ({nal_dict[uaf_tag][1]}) in @NAL!', printer(message=f'Note: Detected new AMI UCP Module {uaf_tag} ({nal_dict[uaf_tag][1]}) in @NAL!',
padding=padding + 4, pause=True) padding=padding + 4, pause=not self.arguments.auto_exit)
# Generate @UAF|@HPU Module File name, depending on whether decompression will be required # Generate @UAF|@HPU Module File name, depending on whether decompression will be required
uaf_sname: str = safe_name(in_name=uaf_name + ('.temp' if is_comp else uaf_fext)) uaf_sname: str = safe_name(in_name=uaf_name + ('.temp' if is_comp else uaf_fext))

View file

@ -169,7 +169,7 @@ class InsydeIfdExtract(BIOSUtility):
if img_val == [img_tag, img_ext]: if img_val == [img_tag, img_ext]:
printer(message=f'Note: Detected new Insyde iFlash tag {img_tag}!', printer(message=f'Note: Detected new Insyde iFlash tag {img_tag}!',
padding=padding + 12, pause=True) padding=padding + 12, pause=not self.arguments.auto_exit)
out_name: str = f'{img_name}.{img_ext}' out_name: str = f'{img_name}.{img_ext}'

View file

@ -146,7 +146,7 @@ class PortwellEfiExtract(BIOSUtility):
if file_name.startswith('Unknown_'): if file_name.startswith('Unknown_'):
printer(message=f'Note: Detected new Portwell EFI file ID {file_index}!', printer(message=f'Note: Detected new Portwell EFI file ID {file_index}!',
padding=padding + 8, pause=True) padding=padding + 8, pause=not self.arguments.auto_exit)
# Store EFI file output path # Store EFI file output path
file_path: str = os.path.join(extract_path, safe_name(in_name=file_name)) file_path: str = os.path.join(extract_path, safe_name(in_name=file_name))

View file

@ -1,2 +1,2 @@
mypy==1.11.2 mypy==1.12.0
pylint==3.3.1 pylint==3.3.1