At last, my ROM microcode editing application is complete! It took me a lot longer than I anticipated to write this, but here it is, a fully interactive GUI that can add/extract/replace microcodes in your system ROM dump! This is how it works:
- Open the program, and select a dumped ROM.
- From here, you can simply right-click in the table to perform actions, or use the Menu Bar items.
- To extract a microcode from your ROM, simply right-click on the microcode you wish to extract, and select "Extract Microcode". Save it to a file.
- To add a new microcode, simply right-click anywhere in the table, and select "Add Microcode". If the microcode for the same CPUID and platform ID in the microcode you're trying to add already exists in the ROM, it will replace it with the selected file. If not, it will add it.
- Microcode files can also be dragged and dropped onto the table to add them.
- Once the modifications you desire have been made, simply save the file, or do "Save as" to save it as a different file, keeping your original unmodified.
Download the application here. Source code is available on my GitHub. Microcode files can be obtained here.
Enjoy!
View attachment 766112
First, thank you dosdude1 for this tool. I am very thankful that I do not need to hex edit with a worse potential of ruining my Mac Pro.
Do you have any plans to expand the ROM editor to add EFI modules such as the NVMe driver?
When searching for more info, I see there is a newer firmware for 106A4 but for platform 3. Do the platforms 1 and 2 still need to be included? I can't seem to find if this is important or not.
According to cpu-world:
http://www.cpu-world.com/cgi-bin/CPUID.pl?SIGNATURE=67236 106A4 is mainly for i7 CPUs
http://www.cpu-world.com/cgi-bin/CPUID.pl?SIGNATURE=67237 106A5 seems to be mainly Nehalem CPUs
http://www.cpu-world.com/cgi-bin/CPUID.pl?SIGNATURE=132800 206C0 is for unknown Intel CPUs - this should be safe to remove to make space for the updates, correct?
http://www.cpu-world.com/cgi-bin/CPUID.pl?SIGNATURE=132802 206C2 seems to be mainly Westmere CPUs