[GUIDE] AMI INTEL CPU Microcode Update Guide



Thanks! I was asking because your BIOS filename looks from MSI, like mine, and the GUID for the microcode area is exactly the same as in my BIOS (you can check that in the file that I uploaded before). I am a bit reluctant to use this modded BIOS if nobody has previously flashed a MSI laptop. I don’t know if there would be some kind of CRC in the BIOS file that I should change or something else never tested.

Thanks again anyway.



Thanks! I was asking because your BIOS filename looks from MSI, like mine, and the GUID for the microcode area is exactly the same as in my BIOS (you can check that in the file that I uploaded before). I am a bit reluctant to use this modded BIOS if nobody has previously flashed a MSI laptop. I don’t know if there would be some kind of CRC in the BIOS file that I should change or something else never tested.

Thanks again anyway.




Mines a desktop so it may be a little different. Personally if it works just leave it. Notebook roms are a pain to reprogram if it bricked. Though by all means if you feel confident go for it!

do not flash or mod a msi laptop bios you will brick it.

on the msi fourm there is a guy that mods it go that way if you want to mod a msi laptop. he will ask for a small donation.
I used it about 4 times now and the last time he fixed my laptop when i tryed to flash the intel me firmware and screw up the laptop.

davidm71
The microcode replaced. Whether it is necessary to replace with updated sections: AmdVersionDxe, AmiAgesaDxe, AmdVersionPei, AmiAgesaPei, CpuPei, CpuSetAgesaPcd ?

don’t worry, for the time being I am satisfied with two microcodes… but if you succeed I am definitively interested.
link for bios download:
http://asrock.pc.cdn.bitgravity.com/BIOS…DS(7.30)ROM.zip




@elisw ,

I was able to squeeze in all the coffelake cpu microcodes in your bios file including cpuid 906EA + 906EB in there making it a total of 4 microcodes.
To pull this off I had to delete some networking modules in your bios rom and place the microcode file in the dxe section of your rom. Those are the
network drivers the bios uses to boot remotely. Stuff you would never use. This does not guarantee you’ll be able to boot with coffee lake.
In any case only use this if you have dual bios or something or some way to recover from a bad flash just in case. I believe it should work though…

http://www.mediafire.com/file/dz0d0cz0c4…ee_H11MHDS7.zip

Also this copy is safe for future mods and Ubutool.



I’m sorry I’m not familiar with AMD boards.

davidm71
At Intel everything is too simple. Then it is necessary to rename a theme into “intel only”.

Your right.

@elisw

Heres another mod of that same bios this time nothing has been removed at all. Split the microcode file into two inside two different volumes:

http://www.mediafire.com/file/xgni7e7wc9…eL-H11MHDS7.zip

Checks out with MMTool and AMIBCP able to read the Microcodes successfully.

Splitting microcodes is a clever idea.

You may want to validate that microcodes in both files get applied; either by changing CPU or swapping the two microcode files.

During S3 sleep the CPU gets powered down, while RAM retains its contents, that requires a special boot procedure; resume after S3 sleep also needs to be validated to see whether microcode gets applied from both files.



Thanks for the advice. I’ll definitely go to the MSI forum, I have sometimes participated in there. The issue is that the microcode of my BIOS is pretty old, version 0x7C for a Skylake (the newest before Intel’s buggy fix is 0xBE), and I do not know why MSI was not updating it with the last version (before all the Spectre mess). That is why I thought it could be easy and relatively safe to change that part of the code, which is not encrypted or scrambled in any way. But I need at least a confirmation from somebody that has done that before.

@Ikerrg,

The guy on MSI forum that does the modding is Svet I believe. I would be happy to try to mod your rom if you want but not familiar with laptops so much as sometimes they have security and bootgaurd and stuff like that could cause problems.



Yes he is, I have just posted in there for help! However, if you want to mod it by yourself and check if your resulting file is identical to mine, you are more than welcome! In any case, I think we will be in the same situation if nobody else can confirm the modding of a laptop BIOS using this procedure. The security and bootguard that you mention are exactly my biggest concerns about just swapping some hex bytes in a BIOS file.

Regards.

If there is security there is a way to check and disable it. There are command line tools that download every rom register setting to a text file. From there you search for ‘Lock’ and then alter the file setting and reflash just those settings via that text file. Will try to post link to article I read on how its done but this technique unlocks most roms so you can flash altered files.

Of course the rom file needs to have the same unlock set either via Amibcp or altering the IFR data belonging to the setup program. Kind of a crazy mod that affects mostly Dells and Asus machines. Not sure about your rom. Got to load it up in Amibcp or pull the IFR data and take a look. Anyhow keep us informed and share the final mod file for study after. Thanks.

BTW: You might also want to ask Coderush for help. He is an uber expert on this subject and has written articles on it. I’ve seen him on Mydigitallife of which there are loads of help resources. Also worth checking out bios-mods.com.



Elisw will tell I guess as I only could validate it in Ubu, Mmtool, and Amibcp. Interesting to note that Ubu could not list all the microcodes when they were split between two Microcode files but it solved the space issue without gutting his bios. Thanks.

Hi @davidm71 ,
unfortunately I had some work to do… just had a look at the two files and noticed VBIOS and GOP are still of the original file… if I want to try the 8100 I should update both (GOP is a matter of seconds with UBU but VBIOS requires a bit more time).
I’ll do some testing later on.

I thought you just wanted microcode addition but your right it would be a good idea to update both gop and vbios. Shouldn’t be too hard with Ubu if it doesnt choke on the file.

Hi @davidm71 ,

I’ve been looking at previous BIOSes for my laptop and I found out that the previous version (http://download.msi.com/bos_exe/nb/E16J4IMS.115.zip) was very different from the new one (http://download.msi.com/bos_exe/nb/E16J4IMS.117.zip) if you binary compare both files. MSI is claiming that they only updated the CPU microcode between both versions, but they seem to be changing the size of the body where the microcode is located (instead of having less or more FF bytes on it to compensate for size) and maybe reordering all the BIOS modules inside. Moreover, UefiTool shows a different BootGuard hash and RSA signature for both versions. All that makes me a bit more hesitant about flashing with my modded file. MMtool report shows very similar reports for both versions, and UBU tool shows the same version for all the modules (VBIOS, SATA, etc.), but the firmwares seem to have different bytes free/used in the volumes that build them (MMtool report). I don’t know, I am probably missing something. I read about recovering from a bad flash just in case (renaming the file to AMIBOOT.ROM) but most of that information quite looked written for legacy computers (floppy drives, non UEFI?) so I wouldn’t know how reliable would be to recover from a bad flash in case I brick my BIOS.

I am now using VMWare’s driver to update the microcode after the boot in Windows (Linux does that on boot). I suppose that it is not so different if the CPU microcode is being fixed before loading the OS or just 10 seconds after that.

On the other hand, I don’t think I am going to get any answer from the MSI forum, it looks like it is more a paid service than a forum to learn about BIOS modding. I have no problems donating if I need to have something fixed/improved in my computer, but my point on all this is to learn and enjoy in the process, I do not really need to update the microcode in the BIOS.

Kind regards.


tried to flash both files with the original video sections (Skylake CPU).
first one (all four microcodes together) went well.
second one (split microcodes) did run ok but was not possible to switch the PC off: it was simply disconnecting from windows.




@ikerrg

I had a look at your bios again and this time looked to see if there was a bios lock in place and unfortunately there is:



Your going to have to disable the lock before you flash and not only that I believe bios guard is active:



Both values are set to ‘01’ according to the ‘Setting’ field at the end we see ‘01 00’ and that ‘01’ is the default set value.

So your going to have to use SCEDOS to unlock your rom and then you should be able to pull it off. As far as the change in the file sizes from version to version
I think that is because they have the ability to recompile the rom bios as where we do not such that the signatures and file sizes change. In your case you
have to keep the file sizes exact or it would mess with the bootguard addresses.

Check out post#1476 on Insanelymac about how to unlock your bios over here: http://www.insanelymac.com/forum/topic/2…osis/?p=2040212

Good luck!