How to Update CPU Microcode in Award or Phoenix BIOS – For LGA 771 & 775

MODs

204 Comments

In this guide, we're going to show you how to update the CPU microcode in an Award or Phoenix BIOS. If you have an AMI BIOS, check out this guide instead.

Note: This information has only been tested with LGA 771 and LGA 775 BIOS files, so if you have a newer motherboard (especially UEFI ones), it probably won't work.

Why would you want to do this?

Updating the microcode is helpful if:

  • You did the LGA 771 to 775 MOD, and your Xeon is not working as expected (or is missing functionality, such as CompareExchange128, Speedstep, SSE 4.1, or VT-X).
  • Your BIOS doesn't support a newer processor that you want to run.
  • The microcode for your processor is old and may be buggy.

Disclaimer

There's an element of risk just flashing a normal BIOS, and especially when you start modifying it, so please attempt this mod at your own risk (and only if you're experiencing some problem). We highly recommend that you don't flash the modified BIOS unless you've verified the microcode was added correctly. If you accidentally remove the microcode that your processor needs, your system may fail to boot. We are not responsible if your system is damaged while attempting this.

Things you'll need

  • The latest BIOS for your motherboard
  • cbrom195.exe - Updates microcode for Award and Phoenix BIOSes
    • MD5 checksum for cbrom195.exe is BC46E0752BC1387C0012173DC8AC8F5C

Method 1 (recommended) - Replace all of your existing microcode with the latest microcode from Intel

This method will delete all of your old microcode and replace it with the latest microcode from Intel.

Other programs you'll need

Step 1 - Download the file that contains the microcode for all the processors you want your motherboard to support

The following microcode is only compatible with method 1 of this guide (it's in a combined NCPUCODE.BIN format instead of individual microcode files). This makes it easier to update all of your microcodes at once.

Alternate microcode (in case the others are too big)

Step 2 - Move all of the files you just downloaded to the same directory (or folder), and open that directory in a DOS command prompt window

How to open a folder in a DOS command prompt window

Step 3 - Rename the microcode file to ncpucode.bin, and make it readonly

You can make it readonly with the following command:

attrib +R ncpucode.bin

This is necessary to stop cbrom from overwriting this file with your old microcode.

Step 4 - Delete the old microcode and replace it with the new code

The following command will delete all of the original microcode and replace it with the new microcode (which is in ncpucode.bin). It will just update YOUR_BIOS.BIN (it won't create a new file).

cbrom195.exe YOUR_BIOS.BIN /nc_cpucode NCPUCODE.BIN
  • YOUR_BIOS.BIN is the name of your BIOS file (it doesn't have to end in .BIN)
  • NCPUCODE.BIN is the name of the microcode file downloaded earlier

Having trouble finding the BIOS file that you need to MOD?

Read this

What to do if you get an error about not enough space

First, try one of the smaller, alternate microcode files mentioned earlier. If that doesn't help, you probably have a BIOS that doesn't support the ncpucode.bin method of updating the microcodes, and you'll need to use the 2nd method instead.

Step 5 - Verify that the microcode was added correctly

The following command will show you a list of all of the microcodes in your BIOS file:

intelmicrocodelist.exe YOUR_BIOS.BIN

You should verify that the microcode for your processor's CPUID is present. If you don't know what your CPUID is, check out the following guide: How to get the CPUID, Stepping, or sSpec for an Intel CPU.

If the dates of the microcodes are from 2010 (which is when Intel last updated them), you should have the newest microcode.

Step 6 - Update your BIOS using the modified BIOS that you just created

You should be able to update it the same way you'd update a normal BIOS.

Step 7 - Do a FULL BIOS reset (use the 3-pin motherboard reset jumper, and then load the default BIOS settings on the first startup)

How to fully reset your BIOS

Method 2 - Only add support for a new processor that isn't currently supported (old microcode will not be updated or removed)

This method is useful if your BIOS doesn't currently support a processor, and you want to add the microcode to support it. It should also work for adding LGA 771 Xeon support to an LGA 775 BIOS. All of your existing microcode will remain untouched and won't be updated or removed.

Note: This method may not work if you're trying to update the microcode for a processor that's already supported by your BIOS (you should use method 1 instead). This is the case because this method doesn't remove the old microcode, so the old microcode may get used instead of the new microcode you're adding (we're not sure which microcode the BIOS will use).

Step 1 - Download the microcode for the type of processor you want to install

The microcode files shown below are NOT the same as the ones referenced in method 1 above (they're in a different format), so you'll need to download these instead.

  • LGA 771 microcode
    • If you're only trying to add LGA 771 Xeon support to an LGA 775 motherboard, this is the only file you need to download
    • Contains microcode for all LGA 771 Xeon processors (except older Pentium 4 based 50xx models).
  • Desktop LGA 775 microcode
    • Contains microcode for all Core 2 Duo and later desktop processors (no Pentium 4 or mobile support)
  • Mobile LGA 775 microcode
    • Contains microcode for all Core 2 Duo and later mobile/laptop processors (no Pentium 4 or desktop support)

Step 2 - Look up the CPUID for your processor

You'll need the CPUID to update the right microcode (how to get the CPUID for an Intel CPU).

Step 3 - Set aside the microcode files for your processor's CPUID

Note: If your CPUID ends in an "h" and you don't see microcode with an "h" on the end, just ignore the "h" because it isn't actually part part of the CPUID. That just means it's a hexadecimal number.

When you unzip the microcodes, you'll see a bunch of individual microcode files that have filenames like this:

cpu0001067a_plat00000044_ver00000a0b_date20100928.bin

Here's what the different parts of the filename mean:

  • cpu0001067a - 1067A is the CPUID that is supported by this microcode
  • plat00000044 - plat is short for platform. This tells which sockets are supported by the microcode.
    • LGA 771 microcodes have a 4, 40, or 44 in this section
    • Desktop LGA 775 has a 1, 10, or 11
    • And for mobile LGA 775 it's a 20, 80, or A0
  • ver00000a0b - a0b is the version number
  • date20100928 - 2010-09-28 is the date the microcode was last updated

Set aside the microcode files for your processor's CPUID (there may be more than one).

Step 4 - Move cbrom195, your BIOS file, and the microcode files you set aside earlier to the same directory, and open that directory in a DOS command prompt window

How to open a folder in a DOS command prompt window

Step 5 - Rename your CPU's microcode file to cpucode.bin (plus what to do if you have multiple microcode files)

If there are multiple microcode files for your CPU, you'll need to combine them into 1 file with the following command:

copy /b file1.bin + file2.bin + file3.bin cpucode.bin

The example shown above will combine file1.bin, file2.bin, and file3.bin into 1 new file called cpucode.bin.

Step 6 - Add the new microcode to your BIOS

The following command will add the new microcode to your YOUR_BIOS.BIN (it won't touch any of the existing microcode).

cbrom195.exe YOUR_BIOS.BIN /cpucode CPUCODE.BIN
  • YOUR_BIOS.BIN is the name of your BIOS file (it doesn't have to end in .BIN)
  • CPUCODE.BIN is the name of the microcode file

Having trouble finding the BIOS file that you need to MOD?

Read this

Step 7 - Verify that the microcode was added correctly

Run the following command to display information about what's stored in your BIOS:

cbrom195.exe YOUR_BIOS.BIN /D

You should see a new module called "CPU micro code" at the end of the numbered list, and its filename should be the same as the microcode file you added in step 6 (cpucode.bin).

Why don't I see the new microcode in the "Micro Code Information" table at the bottom of the screen?

This table is supposed to list all of the microcodes in your BIOS. However, since we added the new microcodes as a compressed module, they won't show up in this list. Additionally, since the microcodes are stored in a compressed form, you also won't see them if you run intelmicrocodelist.exe on your BIOS (this program was mentioned in method 1).

The "Micro Code Information" table may also be empty for some BIOSes

This is normal, and you'll usually see this happen when method 1 failed due to not enough free space. It just means the microcodes are stored in a non-standard way in your BIOS. However, the method we just used for updating the microcodes should still work fine.

Step 8 - Update your BIOS using the modified BIOS that you just created

You should be able to update it the same way you'd update a normal BIOS.

Step 9 - Do a FULL BIOS reset (use the 3-pin motherboard reset jumper, and then load the default BIOS settings on the first startup)

How to fully reset your BIOS

Troubleshooting Problems

I can't find the BIOS file that I need to MOD

If your BIOS is in an .EXE format

You'll need to first extract it with an unzipping program like 7-Zip. Then look for a file that ends in .BIN, .ROM, or possibly something else like a number. LGA 775 BIOSes are usually around 1024 KB in size, so look for a file about that size.

You can also try running the following command on each of the files that could be your BIOS:

cbrom195.exe YOUR_BIOS.BIN /D

If cbrom displays information about your BIOS after running that command, it should be the correct BIOS file. If it hangs or gives you an error, try another file.

How to extract the actual BIOS from a Dell .EXE file

Execute the following command from a DOS command prompt window:

DellBiosFilename.exe /writeromfile

This should extract the actual BIOS file to the same directory.

I'm not sure how to update my BIOS with the modified file I just created

The method for updating your BIOS is different for each motherboard manufacturer.

  • With some, you can simply put the BIOS file on a USB key, reboot and enter the BIOS, and update it from there.
  • Others may have a BIOS updating program that you can run from within Windows.
  • And in some cases, you may need to put the BIOS on a bootable DOS USB key, CD, or DVD and update it from a command prompt.

If there's a Windows or DOS BIOS updating program, it will usually be included with the BIOS or mentioned when you download the BIOS. If you don't see it, check the downloads section, FAQ section, or support section.

If all else fails, try searching Google for your motherboard’s model and update BIOS or something like that.

204 Responses

  • narith May 27, 20154:24 pm

    could somebody help me, im trying to update my dell A15 bios, but not having any luck. its a .rom bios and i dont know what do. think i updated it but when try to check it shows nothing, so any help would be greatful

    Reply
  • Manthos June 15, 20157:17 pm

    Please help!
    I got a E0 x5450 and while it works fine on an ASUS MB, I cannot get it to work on my Gigabyte GA-P35-DS4 rev2.
    Already read that there is an issue to where the microcodes are saved in this MB.
    The problem I get is that when I try to install windows 8.1 from usb, it hangs and if I install an already functioning win8.1 hd (which works ok on my old Q8300 on thw same MB) it gives me an “error code 0xc000000e – a required device isn’t connected” message!
    Can this be related to missing microcode, or just an incompatibility of GAP35DS4 with X5450?
    If yew, what procedure should I follow to create a fuctioning bios?
    Thanx in advance!!!

    Reply
  • sangos July 3, 20154:12 am

    And in case CBROM.EXE hangs/blinks and is NOT able to update your bios in the otherwise two excellent methods there is a third method. Use one the freely available HEX code editors to insert/overwrite the microcode hex codes of the processor you want to upgrade to into the original bios file.

    Reply
    • sangos July 20, 201512:37 pm

      okay word of caution. Use the hex editor method with caution. If just a few characters miss out the bios goes bad, which means the dreaded bricked computer. Can say that reviving a bricked bios can be a huge pain even for pros. So caution caution!

      Reply
  • Simbe July 19, 201510:18 am

    I just wan to check. Is it just enough to have your CPUID listed or do I need to verify something else too to be sure the bios is fine?

    I have a XEON E5450 CPUID: 1067A Steping: E0

    There are two lines after moding that mention my CPUID.. should that bios bio fine for flashing?

    CPUID=1067A Rev=A0B 2010/09/28 CRC=B007E7E3 Off=61FE0 Size=2000 Plat=0,4
    CPUID=1067A Rev=A0B 2010/09/28 CRC=B007E7B0 Off=63FE0 Size=2000 Plat=2,6

    Thanks

    Reply
  • ziyad July 27, 20151:34 pm

    hi, its very useful site thanks a lots for all these information
    when i making same test’s and arrangement trying add new micro code on MB GA-8IR2003 rev.2
    its bios was corrupted therefor i now need the original bios of this MB if someone have it i know its old MB but i need it for practice on it , i need first release of bios because i tried to flash bios update like bios.f3 or f4 and f5 it say wrong bios ID
    i forget to mention that the bios type is phoenix award ID=6a69vg0p
    THANK AGAIN

    Reply
    • scotscelt August 6, 20156:11 pm

      Hi guys,

      Followed method one and after running cbrom195.exe G31MES2L.F10/nc_cpucode NCPUCODE.BIN in command window it ran three pages of stuff asking me to press a key between each. Is that the new codes installed?

      Reply
      • scotscelt August 6, 20156:45 pm

        My mod attempt is an x5460 on a Gigabyte G31MES2L

        Have been running the CPU for a few months now but just decided to try the microcode bit below is what I got in the command window is this what I should have got.
        Bit wary of going ahead with the modified bios if infact that is what has happened from the action taken.

        C:\Users\PC\Desktop\771mod>cbrom195.exe G31MES2L.F10/nc_cpucode NCPUCODE.BIN
        cbrom195.exe V1.95 [12/14/07] (C)Phoenix Technologies 2001-2007
        Syntax:
        cbrom195.exe InputFile [/other] [8000:0] [RomFile|Release|Extract]
        cbrom195.exe InputFile [/D|logo|vga….] [RomFile|Release|Extract][checksum
        ]
        InputFile : System BIOS to be added with Option ROMs
        /D : For display all combined ROMs informations in BIOS
        /epa|epa1-7 : Add EPA LOGO BitMap to System BIOS
        /logo|logo1-7: Add OEM LOGO BitMap to System BIOS
        /osb_logo|osb_logo1-7: Add OSB LOGO BitMap to System BIOS
        /osb_bmp|osb_bmp1-7: Add OSB CPU BitMap to System BIOS
        /oem0-7 : Add special OEM ROM to System BIOS
        /err : Return error code after executed
        /btvga : Add VGA ROM to Boot Rom Block Area.
        /isa : Add ISA BIOS ROM to System BIOS.(/isa Filename [xxxx:0])
        /vga, /logo, /pci, /awdflash, /cpucode, /epa, /acpitbl, /vsa, /hpm
        /hpc, /fnt0 – 5, /ros, /nnoprom, /mib, /group0-5, /NoCompress
        /jpeg|jpeg1-3: Add JPEG LOGO to System BIOS
        /gif0-3 : Add GIF LOGO to System BIOS
        /rpb : Add RPB ROM to System BIOS
        /ver : Add version table of source code to System BIOS
        /jpeg_eng : Add JPEG engine to System BIOS
        /nc_cpucode : Add non-compress cpu code
        – Page – [Press any key….]
        /srom0-4 : Add software ROM
        /setup0-1 : Add setup ROM
        /biosf0-9 : Add BIOS feature ROM
        /GV3 : Add GV3 ROM
        /CALS : Calculate ROM Compress size but not add ROM in BIN file
        /efi0-9 : Add EFI feature ROM
        /minit : Add Intel memory module
        /NVMM : Add nVIDIA memory module
        /mpdrv : Add TPM MP driver
        /madrv : Add TPM MA driver
        /tcgsmi : Add TCG 32 bit smi code
        /flshcode : Add flash part code
        /SLPKey : Add SLP 2.0 Public Key
        /SLPMarker : Add SLP 2.0 Marker
        /NVPMU : Add PMU ROM
        /BTMEM : Add memsizing module in bootblock
        /HOLE0-7 : Add option ROM in hole
        /htinit : Add AMD HT init module
        – Page – [Press any key….]
        /1pe32 : Add type 1 PE32 module in mainblock
        /1pe32b : Add type 1 PE32 module in bootblock
        /2pe32 : Add type 2 PE32 module in mainblock
        /2pe32b : Add type 2 PE32 module in bootblock
        /3pe32 : Add type 3 PE32 module in mainblock
        /3pe32b : Add type 3 PE32 module in bootblock
        /4pe32 : Add type 4 PE32 module in mainblock
        /4pe32b : Add type 4 PE32 module in bootblock
        /ACPIModule : Add ACPI module, such as SSDT module.
        /SMI32 : Add 32-bit SMI module.
        /SMIAP : Add application SMI module.
        RomFile : File name of option ROM to add-in
        noreserve : No reserve system color for BMP logo
        Release : Release option ROM in current system BIOS
        Extract : Extract option ROM to File in current system BIOS
        checksum : Add checksum for Hole0~7 module at end of the hole.
        – Page – [Press any key….]
        /BOI UseDHCP Server_IP Static_IP Net_Mask Gate_Way DNS UseProxy
        Proxy_IP ProxyPort: Setting Boot On Internet parameters.
        /BOI : Show the Boot On Internet parameters.
        Example 1 for setting the BOI parameters:
        cbrom /boi 1 134.122.168.184 134.122.106.113 255.255.255.0
        134.122.106.5 134.122.101.90 0 134.122.106.105 32896
        Example 2 for setting the BOI parameters:
        cbrom /boi 1, 134.122.168.184, , , , 134.122.101.90 0, ,32896
        Example 3 for show the BOI parameters:
        cbrom /boi
        /TopHole:address : Add a module at fixed address.
        Example: cbrom /TopHole:FFFD0000 xxx.bin
        /osb_logo_gui|osb_logo1-7_gui: Add GUI OSB LOGO BitMap to System BIOS
        /osb_bmp_gui|osb_bmp1-7_gui: Add GUI OSB CPU BitMap to System BIOS
        <<>>
        cbrom195.exe 6a69s000.bin /D
        cbrom195.exe 6a69s000.bin /VGA filename
        cbrom195.exe 6a69s000.bin /VGA filename /ERR
        C:\Users\PC\Desktop\771mod>
        C:\Users\PC\Desktop\771mod>intelmicrocodelist.exe G31MES2L.F10
        Intel Microcode List ver0.4a

        CPUID=F44 Rev=06 2005/04/21 CRC=9F60DB18 Off=4AFE0 Size=C00 Plat=0,2,3,4,7
        CPUID=F47 Rev=03 2005/04/21 CRC=AF2CEF0D Off=4BBE0 Size=C00 Plat=0,2,3,4,7
        CPUID=F61 Rev=07 2005/06/10 CRC=AB7DD242 Off=4C7E0 Size=800 Plat=2
        CPUID=F62 Rev=0F 2005/12/15 CRC=0976D137 Off=4CFE0 Size=C00 Plat=2
        CPUID=F64 Rev=04 2005/12/23 CRC=C66DBF02 Off=4DBE0 Size=C00 Plat=2,4,5
        CPUID=F65 Rev=0B 2007/05/10 CRC=69B15BBA Off=4E7E0 Size=800 Plat=2
        CPUID=6F1 Rev=11 2005/10/10 CRC=A28ACD13 Off=4EFE0 Size=1000 Plat=0,1,2,5
        CPUID=6F4 Rev=26 2006/03/12 CRC=DA8E97D1 Off=4FFE0 Size=1000 Plat=0,2,4,5,6,7
        CPUID=6F5 Rev=33 2006/05/01 CRC=6A962F22 Off=50FE0 Size=1000 Plat=0
        CPUID=6F5 Rev=33 2006/05/01 CRC=6A962ED3 Off=51FE0 Size=1000 Plat=4,6
        CPUID=6F6 Rev=CB 2007/09/16 CRC=6F5DFA09 Off=52FE0 Size=1000 Plat=0
        CPUID=6F7 Rev=68 2007/09/16 CRC=18729A7E Off=53FE0 Size=1000 Plat=4
        CPUID=10660 Rev=04 2006/06/12 CRC=6CC60901 Off=54FE0 Size=1000 Plat=0,1
        CPUID=6F2 Rev=5A 2007/09/26 CRC=594DDBA0 Off=55FE0 Size=1000 Plat=0
        CPUID=6F9 Rev=82 2006/09/03 CRC=59C9FE00 Off=56FE0 Size=1000 Plat=0
        CPUID=10661 Rev=38 2007/09/19 CRC=8A2D6F19 Off=57FE0 Size=1000 Plat=0
        CPUID=6FB Rev=B6 2007/07/13 CRC=B3176C40 Off=58FE0 Size=1000 Plat=0
        CPUID=6FD Rev=A3 2007/08/13 CRC=89C0D09E Off=59FE0 Size=1000 Plat=0
        CPUID=6FB Rev=B6 2007/07/13 CRC=5E5A71A7 Off=5AFE0 Size=1000 Plat=4
        CPUID=10671 Rev=106 2007/03/29 CRC=80731BAC Off=5BFE0 Size=1000 Plat=0
        CPUID=10674 Rev=404 2007/06/08 CRC=F9DEC4C0 Off=5CFE0 Size=1000 Plat=0
        CPUID=10676 Rev=60C 2008/01/19 CRC=FBAC0F6C Off=5DFE0 Size=1000 Plat=0
        CPUID=1067A Rev=A07 2008/04/09 CRC=83067F5A Off=5EFE0 Size=2000 Plat=0,4
        CPUID=10671 Rev=106 2007/03/29 CRC=80731B9D Off=60FE0 Size=1000 Plat=4
        CPUID=10674 Rev=404 2007/06/08 CRC=F9DEC4B1 Off=61FE0 Size=1000 Plat=4
        CPUID=10676 Rev=60C 2008/01/19 CRC=FBAC0F5D Off=62FE0 Size=1000 Plat=4
        CPUID=10677 Rev=705 2008/04/28 CRC=A6DB99DD Off=63FE0 Size=2000 Plat=4
        CPUID=F32 Rev=0A 2004/05/11 CRC=2538EF0A Off=6F000 Size=800 Plat=0,2,3

        Press any key to exit

        Reply
  • caseyy August 12, 201510:43 am

    For those who unable to extract dell bios this may help or perhaps other bios work too :)

    My case –
    dell i545-a12.exe extract with writeromfile problem..

    download winflash > backup bios > then follow step 6 add microcode to backup bios > flash bios (update all & clear cmos) ..bingo!

    (write protect error > remove pws jumper > flash)

    Reply
  • Jacob September 14, 20159:56 pm

    Delidded Viewers,

    After attempting the LGA 771-775 Microcode update I am unable to get the computer to load windows. The computer crashes after reaching the windows 7 splash screen. The computer boots with either stock bios version 10 or 11. The computer will boot into startup repair and runs startup repair with no resolution to the problem. The Processor is an Xeon x5492 steping E0 with sticker mod applied. The motherboard is an Abit IP35 Pro XE with Bios m629o11. Any help modifying this bios to allow for the compareexchange128 requirement for windows 8.1 and windows 10 is appreciated.

    Reply
  • Jacob September 14, 201510:44 pm

    After attempting the LGA 771-775 Microcode update I am unable to get the computer to load windows. The computer crashes after reaching the windows 7 splash screen. The computer boots with either stock bios version 10 or 11. The computer will boot into startup repair and runs startup repair with no resolution to the problem. The Processor is an Xeon x5492 steping E0 with sticker mod applied. The motherboard is an Abit IP35 Pro XE with Bios m629o11. Any help modifying this bios to allow for the compareexchange128 requirement for windows 8.1 and windows 10 is appreciated.

    Reply
  • mark September 25, 20152:42 pm

    Just want to say thank you for the amount of information you have put on the website for me to to update the microcodes for my x5460 mod in g41mt-s2p (rev1.3) motherboard . it took me a little wile to understand becouse i was writting YOUR_bIOS instead of the actual bios file hahaha o well tralala but once i read the information correctly i updated the bios .i did cack it as i used @BIOS from gigabyte but is running with all the instructions e.g. SSE4.1 and VT-x now showing .so thank you mate for the time. Please Please how do i overcome windows 10 !!!!

    Reply
  • gattuso February 15, 20163:16 pm

    Hello i have hp xw4400 i am stuck on step six when i run command cbrom is just flashing nothing happeens pls help me
    i need q6600 support for this pc

    Reply

Leave a Comment