Neuen Intel Microcode ins AMI-BIOS patchen

Neuen Intel Microcode ins AMI-BIOS patchen

Beitragvon Locutus » Fr 18. Aug 2017, 19:32

Hallo Leute,

für mein neues Board (für mein Win98-Projekt) habe ich mal etwas ausprobiert. Undzwar ist mir aufgefallen, dass der Processor-Microcode für die CPU welche ich darin verwende im BIOS veraltet war. Die CPU ist ein Celeron 450 @ 2.2GHz (SLAFZ) für Sockel 775, basiert auf Kern "Conroe-L".

Dies hier soll eine Anleitung sein, die beschreibt wie man ein Microcode-Update in ein AMI BIOS patcht.

Hinweis: Die Methode hat bei mir funktioniert mit genau diesen Tools. Ältere oder neuere BIOS-Basisversionen von AMI benötigen andere Tools und das Vorgehen ist da vermutlich anders.

Benötigte Tools:

*MMTool kriegt ihr nicht bei mir und es ist natürlich copyrighted by American Megatrends Inc.

Vorgehen:

1. CPU-ID herausfinden!
Die ID eurer CPU könnt ihr über die Suche auf CPU-World ausfindig machen. Hier sind noch ein paar weitere Infos zu meinem Prozessor.

2. Nachschauen welcher Microcode für eure CPU im BIOS steckt.
Das geht über das MMTool, Reiter "CPU PATCH". Sollte in etwa so aussehen:
uc38.png
Microcode für meine CPU im BIOS (vorher)
uc38.png (15.72 KiB) 225-mal betrachtet

Der im Screenshot markierte ist der für meine CPU. Revisionsnummer ist 38. Diese ist wichtig.

3. Nachschauen, ob es eine neue Microcode-Revision überhaupt gibt.
Im Microcode-Update-Archiv von Intel befindet sich normalerweise eine Datei namens microcode-<datum>.dat oder einfach nur microcode.dat. Wenn ihr da reinschaut, seht ihr verschiedene Sektionen, die z.B. so beginnen:

Code: Alles auswählen
/*  m011066143.inc  */


Das ist der neue Microcode in Revision 43 für meinen Celeron. Diese Zeilen sind nur Kommentare, gefolgt von dem Bytecode in hexadezimaler Notation, welcher den Microcode für den jeweiligen Prozessor darstellt. Die letzten beiden Ziffern stellen die Revision dar. Die Ziffern davor enthalten die CPU-ID, in dem Fall hier: 10661. Diese ID gilt für mehrere CPUs, unter anderem für meinen Celeron 450. Die ersten Ziffern erschließen sich mir nicht ganz. Vielleicht hat ja einer von euch da was zu sagen. Vielleicht Platform ID?

4. Microcode ins Binärformat konvertieren:

Mein Tool bekommt ihr von GitHub (Link oben). Ihr benötigt Perl. Aufruf geht wiefolgt:
Code: Alles auswählen
perl dat2bin.pl microcode.dat


Das Tool wird euch alle Microcodes extrahieren. Ihr könnt auch die microcode.dat einfach so editieren, dass nurnoch eurer drinsteht. Der Header (/* m011066143.inc */) muss aber intakt bleiben, da daraus der Dateiname generiert wird.

5. Die Binärdatei ins BIOS patchen
Mit MMTool könnt ihr zunächst den alten Microcode löschen und dann euren neuen hinzufügen. Das geht alles über den Reiter "CPU PATCH". Anschließend könnt ihr das BIOS flashen, z.B. mit dem AMI-Flashtool "AFUDOS".

Anmerkung zu guter Letzt: Ich kann leider keine Gewähr dafür übernehmen wenn ihr euer BIOS "brickt".

Viel Spaß und Grüße
locutus
Benutzeravatar
Locutus
Site Admin
 
Beiträge: 1347
Registriert: Mo 7. Mär 2005, 23:33
Wohnort: NRW

Re: Neuen Intel Microcode ins AMI-BIOS patchen

Beitragvon Lotosdrache » Sa 19. Aug 2017, 16:36

:like:
Danke für die Anleitung, muß das unbedingt mit meinem P3B-F und dem SL5QW ausprobieren! :-)
Ich werde mich von keinem einzzzigen Prozzzessor trennen.
Jedoch lockt es mich beinahe, ihn Dir zu überlassen, nur um zu sehen, wie er Dich in den Wahnsinn treibt :twisted:

Meine Begehren
Lotosdrache
Kommandozeilenfetischist
 
Beiträge: 172
Registriert: Sa 9. Jan 2016, 23:25

Re: Neuen Intel Microcode ins AMI-BIOS patchen

Beitragvon Locutus » Sa 19. Aug 2017, 18:06

Sag' mal Bescheid ob's geklappt hat ;)
Benutzeravatar
Locutus
Site Admin
 
Beiträge: 1347
Registriert: Mo 7. Mär 2005, 23:33
Wohnort: NRW

Re: Neuen Intel Microcode ins AMI-BIOS patchen

Beitragvon rique » Sa 19. Aug 2017, 18:30

Danke dafür Locutus, klasse!

Lotosdrache hat geschrieben::like:
Danke für die Anleitung, muß das unbedingt mit meinem P3B-F und dem SL5QW ausprobieren! :-)

Oh, das würde mich auch interessieren!
Benutzeravatar
rique
DOS-Guru
 
Beiträge: 994
Registriert: Sa 9. Apr 2011, 11:29
Wohnort: Stadtrand Berlin


Zurück zu Programmierung

Wer ist online?

Mitglieder in diesem Forum: 0 Mitglieder und 1 Gast