BIOS Modding: Introduction and Preparations

@ all experienced and courageous users, who want to update a PCI ROM module of their mainboard BIOS:

Preliminary notes:
Since I have some experience regarding the extraction and replacement of PCI ROM modules, which are part of the mainboard BIOS, I decided to create and to publish step-by-step guides for the different AMI/Award/Phoenix BIOS structures.
Although these detailed instructions are mainly written for users, who want to update the Intel RAID ROM module of their mainboard BIOS, they basically can be used for the extraction and replacement of any other PCI ROM module too.


BIOS Modding:

Introduction and Preparations

Introduction

Warning: Modding a BIOS file by updating the inserted PCI ROM module is neither very difficult nor risky, but it is dangerous, if you are going to flash a modded BIOS into the BIOS chip of a mainboard. In the worst case you may not be able to use the computer anymore until you will get a new and working BIOS chip from the manufacturer of your mainboard.
This is why I recommend to flash a modded BIOS only for experienced users, who know about the risks and do all necessary preparations for a possible failure of the BIOS update process (inclusive a complete backup of their data).
There is no warranty regarding the safety of my BIOS modding guides and the linked BIOS and PCI ROM files. Everything you are doing will be at your own risk.
Actual BIOS files do not contain any separate AHCI ROM module, because such BIOS module resp. Firmware is not required anymore. The Intel SATA AHCI Controller of the mainboard is not supported at all by the RAID ROM module. That is the reason why users with an AHCI (non-RAID) system will not benefit from an update of the RAID ROM version.
The PCI ROM modules are within the mainboard BIOS file and only visible by opening the BIOS file with a special tool like MMTool or CBROM. Nevertheless it is possible to extract any PCI ROM module and to replaced it by another version, because the entire mainboard BIOS file has a modular structure.
Although the BIOS files are developed and published by the mainboard manufacturer, the inserted PCI ROM modules were made by the vendor of the related on-board Controller chips. Each PCI ROM module version, which has been delivered from the Controller chip vendor to the mainboard manufacturers, is identical and not dependent on the BIOS structure (AMI/Phoenix/Award) the mainboard manufacturer is using. As a consequence an extracted PCI ROM file usually can be inserted into each mainboard BIOS, which already contains the same sort of PCI ROM module.
Basically the extraction and the replacement procedure of all PCI ROM modules is quite similar. That is why this guide is usable for the modification of any PCI ROM module from any vendor.

Important note:
Not all mainboard BIOSes can be easily modified by the user.
Examples:
  1. Intel mainboards are equipped with an especially modified BIOS. These Intel BIOSes with the suffix .BIO cannot be opened and modified by any standard BIOS tool.
  2. Some old Phoenix BIOSes cannot be opened and modified by any common version of the tool CBROM.
  3. Some Gigabyte and ASUS mainboard BIOSes can be modified, but the flash procedure is checksum sensitive. Within my BIOS modding guides you may find some tips how to pass this restriction.




Preparations (valid for nearly all AMI/Award/Phoenix BIOSes)

This is what you should prepare, if you want to extract, to add or to replace any PCI ROM module from any mainboard BIOS:
  • A. Download the following files and tools: (Note: The offered files have to be unzipped by using WinRAR v5.xx!)
      
      
    1. the actual mainboard BIOS for your system (get it from the manufacturer)
    2. 
      
    3. the appropriate BIOS processing tool
      The choice of the suitable BIOS modding tool depends on the BIOS platform of your special mainboard/system. The most popular BIOS platforms are made by AMI (American Megatrends Inc.) and by Phoenix resp. Award (Note: Intel and Dell mainboard BIOSes use another platform and connot be opened and modified by the tools, which are listed here.).
      Tip: If you don’t know the architecture of your mainboard BIOS, you can find it out by starting your computer and entering the BIOS. Then you should see the name of the BIOS platform.

      AMI platform BIOS modding tools:
      Here are the download links to the available tools, which are able to open and modify BIOSes with an AMI platform:
      • a) Non-UEFI AMI BIOS tool MMTool v3.26 (for older AMI BIOSes without UEFI structure):
        The link to the “AMI MMTool v3.26” has been removed upon demand of American Megatrends Inc. (AMI), but you will find it, if you do a Google search for “MMTool 3.26”.
      • b) AMI Aptio IV UEFI MMTool v4.5 (for all Intel 6-/7-/8-/9-Series chipset systems and for AMD systems with an UEFI BIOS):
        The link to the “AMI Aptio UEFI MMTool v4.50.0.23” has been removed upon demand of American Megatrends Inc. (AMI), but you may find it, if you do a Google search for “MMTool Aptio 4.50.0023”.
      • c) AMI Aptio V UEFI MMTool v5 (for the latest Intel chipsets from X99 and 100-Series up):
        The links to the “AMI Aptio UEFI MMTool v5.0.0.7” and to the “AMI Aptio V UEFI MMTool v5.2.0.24” have been removed upon demand of American Megatrends Inc. (AMI), but you may find it, if you do a Google search for "MMTool Aptio 5.00.0007 resp. “MMTool Aptio 5.02.0024”.
      • d) CodeRush’s UEFITool (currently latest: v0.27.0) (for advanced BIOS modding users, usable with all Intel and AMD chipset mainboards with an UEFI BIOS):
        >UEFITool (developer’s link)< (>Mirror<)

      Phoenix/Award platform BIOS modding tools:
      • This is the tool I recommand to download and to use for the old Award or Phoenix BIOSes:
        >CBROM32_198.EXE< (>MIRROR<)
        Note: The CBROM32_198.EXE has been renamed by me to “CBROM.EXE” to make it easier for you. It works in the DOS box (has to be run as Admin) of all actual Windows Operating Systems, even within a 64bit environment.
      • If this CBROM version should not handle your special Phoenix/Award BIOS file correctly, you should download and try another CBROM version you get >here<. Attention: Only very few CBROM versions will work in a 64bit environment, some of them need to be run in real DOS mode.
      • Only for users with a Gigabyte Award BIOS:
        Due to the specific characteristics of Gigabyte Award BIOSes (look >here<) you may additionally need the older version 155 of CBROM. You can get it here:
        >CBROM_155.EXE< (>MIRROR<)
      
      
    4. Tip: If you are not sure, which tool you will need, you should download them all.
  • the PCI ROM module file you want to insert into your BIOS
    • either as already extracted uncompressed PCI ROM file
      or
    • as complete BIOS file, where you want to get the desired PCI ROM module extracted from.

    Note: You can find download links to a lot of actual and already extracted AHCI/RAID ROM modules from different chipset manufacturers within the start post of >this< thread.
  • optional: any Hex Editor like HxD (just to verify the PCI ROM version)
    • >Here< is the link to the HxD homepage. Alternatively you can download the latest multi-language version of HxD directly from >here< or from >here< (MIRROR).
  • B. Create a special folder within any partition of your hdd/SSD (example: C:\test) and copy all previously downloaded and unzipped files into it.
  • C. Just for the emergency case you should leave a copy of your original mainboard BIOS file somewhere else outside the system (example: USB stick)
  • D. Only for AMI (non-UEFI) BIOSes: If the mainboard BIOS file does not have the suffix “.ROM” rename the suffix to “.ROM”. This is necessary, because the MMTool prefers to open “.ROM” files.


  • Additional remarks:
    1. AHCI and RAID systems generally will work at its best, when the in-use RAID ROM module (=“firmware” of the AHCI/RAID Controller) and the in-use AHCI/RAID drivers belong to the same generation (for Intel: MSM/RST/RSTe) and - if possible - to the same version series (e.g. Intel MSM v8.9 or Intel RST v10.1).
    2. Unfortunately there are some technical limitations, because the actual PCI ROM modules are not fully backwards compatible. Only the owners of a brandnew mainboard or pc can be sure, that the newest PCI ROM version definitively will work. As a consequence users with an older hardware configuration have to find out themselves (or by a Google search) the last PCI ROM version, which is suitable for their mainboard/system.
    3. Users, who have flashed a BIOS with an uncompatible Intel RAID ROM version, probably will not be able to run and/or to use the Intel RAID ROM Utility (by hitting CTRL+I), but usually this problem can be solved by reflashing the original BIOS.


    Good luck with the later BIOS modding and flashing procedure!
    Fernando

    Hi, I’m having the issue with a 3tb hdd being detected as a 746 GB HDD, in addition to my idea to use RAID. Asi I understood for what it’s written here “Intel mainboards are equipped with an especially modified BIOS. These Intel BIOSes with the suffix .BIO cannot be opened and modified by any standard BIOS tool.”, game is over for me. The only way to solve this is to change my mother? I’m using an intel DQ35MP.
    Thanks in advance

    @ dlguevara:
    Welcome at Win-RAID Forum!

    As you have already realized, your Intel mainboard BIOS file cannot be opened and modified by using any of the standard BIOS tools.
    I just have downloaded the latest BIOS for the Intel board DQ35MP and was able to look into it by using Andi’s Phoenixtool v2.1.9. The BIOS contains the Intel MSM RAID ROM v8.9.0.1023. For the detection of >2 TB sized RAID volumes an Intel RST RAID ROM v10.5 or higher is required.
    Since I don’t have any experience with the modification of Intel BIOS files, I am not able to help you.
    Maybe someone else can do it.

    Good luck!
    Fernando

    hi can anyone help me to extract hdr file or bin from this dell exe file. i tried everything, but i cant extract i will attach the bios file below, the model number is dell latitude e6330 a02 thankyou

    for some reason i cant upload exe file on attachment can anyone help me /advice me how to extract dell latitude exe files thankyou

    @PROMAN28

    Hi,

    for uploading it’s best to make a zip file from the exe by usin 7z or some other program. Did you right click on the exe and try to open it as archive by using 7z?

    Regards hanson

    thankyou hanson i tried 7zip even tried writehdrfile in cmd tried winrar still no joy any other ideas??

    @ PROMAN28:

    Have you already tried to extract the BIOS file by using the tool UniversalExtractor?
    If this should fail as well, I recommend to upload the related Dell EXE file after having packed it into a ZIP or RAR archive.

    hi im attaching the file as winrar please extract it ,

    E6330A02.rar (6.68 MB)

    @ PROMAN28:

    It is obviously not easy to extract a Dell BIOS.
    Please have a look into >this< thread. Maybe it will help you to solve your problem.

    THANKYOU FERNANDO but still cant extract fd file or hdr file can anyone help me out thankyou



    Hi
    Here it is the extracted if this is what you want.

    http://www.mediafire.com/download/huconmeze1o83hu/Bios.rar

    @ Pacman:

    Thanks for the help!
    Please give us a tip about how you extracted both files.

    Phoenixtool, it can’t extract Everything but more than any other tool i tried.
    I use it often for extracting OEM BIOSes.

    I had already tried it, but got the following error message:

    Phoenixtool error message.png

    I had already tried it, but got the following error message:

    <img src=‘http://files.homepagemodules.de/b602300/f16t8p5064n2-thumb.png’alt=’’ style='border:none; ’ />




    Yes, you got an old version, latest is 2.51, the new version has handled most BIOSes i have tried.

    thank you pacman i did try same tool as fernando but seems i need the updated version can you point me to right place to download please

    pac man did the trick thankyou you a star just private message me i return a favour :slight_smile:

    Please do a Google search yourself. I don’t want to see here download links to tools, which can be used for much more than the extraction of a Dell BIOS (example: SLIC manipulations).

    sorry fernando i will do a search didnt know it was easy as google search i will do thankyou