Prozessor-Patches, c't 5/01, S.240, Andreas Stiller
-------------------------------------------------------------------------
ctmc.exe       Ausfhrbares Programm V1.0 (DOS)
ctmc.txt       Dokumentation in deutsch
ctmc.eng       "             in englisch
splitawd.exe   Programm zum Aufspalten von LHA-komprimierten Dateien
LHA255.EXE     Daten-Kompression/Dekomression von Haruyasu Yoshizaki
               Version 2.55, Selbst extrahierend mit Dokumentation
MCtable.txt    Tabelle aktueller Microcode Update-IDs (Stand Ende 2000)
               (inklusive Pentium 4 und dem gestorbenen Timna)


!!! Achtung Software nur fr erfahrene PC-Anwender
!!! Gebrauch auf eigene Gefahr

ctmc gibt Informationen ber Intel-Microcode-Updates fr Pentium Pro, PII, PIII,
P4 aus. Dazu bestimmt es den aktuell im Prozessor geladenen Update-Code
(nur unter DOS !) oder es durchsucht Binrfiles nach gltigen
Microcode-Blcken. Auerdem fragt es das BIOS ber den
vorgesehenen Interrupt (INT 15/D042) ab. Das BIOS gibt hier aber nur
die nachladbaren Code-Blcke aus, nicht alle verfgbaren. Diese kann
ctmc nur aus den BIOS-Binrfiles auslesen. Award-BIOSse
bestehen aus zusammengesetzten LHA-Dateien. ctmc kann diese zerlegen und mit
LHA.EXE (muss im Pfad sein) die Datei mit den Microcode-Blcken
dekomprimieren. Dazu legt es ein Verzeichnis $MCTEMP an, das nachher
nicht gelscht wird.

Alternativ kann man mit "Splitawd dateiname" das BIOS-Binrfile in alle
einzelnen Modul-Dateien zerlegen, die 00000000.bin etc. heien und sich
dann mit LHA dekomprimieren lassen.

Wer das Award-Tool cbrom.exe besitzt (ab Version 2.07) kann auch mittels

cbrom dateiname /CPUCODE Extract

die Microcode-Datei extrahieren.

ctmc berprft die Prfsumme der MC-Blcke, und zeigt das Ergebnis hinter
der Prfsumme durch ein Smiley im positiven Fall und durch # im negativen
Fall an. Zur Vereinfachung von Pfadeingaben dient "$", welches auf einen
zuvor gesetzten Pfad im Environment Bezug nimmt: SET MCDATABASE=pfad
ctmc $  durchsucht alle Dateien im per MCDatabase gesetzten Verzeichnis

ctmc kann dorthin auch MC-Blcke abspeichern, die mit Cpuid, Plattformid
und UpdateID benannt werden. Z.B ctmc /store speichert die im BIOS
vorrtig gehaltenen nachladbaren Codes in MCDATABase (falls gesetzt) ab.

Schliesslich kann ctmc auch neue zum Prozessor und zur Plattform
passende und gltige Code-Blcke ber die BIOS-Schnittstelle nachladen,
welches den Code dann einflasht, so dass ab nchstem Boot keine weiteren
Aktionen mehr ntig sind. Normalerweise setzt das BIOS den Update-Block dann
auf "enabled".

Das Flashen geht nur unter reinem DOS, also ohne Memory-Manager, und nicht
unter Windows. Bei einigen Boards muss dazu im Setup der Menpunkt:
Microcode Update auf "enable" gesetzt werden, in seltenen Fllen ist
ein Jumper auf dem Board zu setzen (Board-Manual befragen)

Transientes Nachladen direkt in den Prozessor hinein bietet ctmc
vorsichtshalber nicht an, hierfr bentigt man die Intel-Tools
Muload.exe bzw. checkup.exe

Bei Multiprozessor-Board bezieht sich ctmc nur auf den Boot-Prozessor.
Wer hier MP-Boards mit Prozessoren mit unterschiedlichen Steppings
auf den neuesten Stand bringen mchte, bentigt die original Intel-Tools,
bzw. die Untersttzung eines Intel-Systemintegrators.


Syntax

ohne Parameter   : Zeigt CPUID, Update-ID, Plattform-ID');
                   und nachladbare MC-Update-Blcke im BIOS');
ctmc dateiname   : sucht nach gltigen MC-Update-Blcken in Dateiname[n]');
                 : (mit wildcards * und ?)');
                 : z.B Intel BIOSse, PEP.PDB, FSC BIOS Blcke, etc');
                 : Dekomprimiert CPUcode in Award-BIOS-Dateien mit LHA.EXE');
ctmc $           : $=Kurzform fr Pfad im Environment: set MCDATABASE=xxxx');
ctmc $065*.*     : zeigt MC-Info in MCdatabase fr alle PII-Klamath-Steppings')
                 : (0650,0651,0652)');
ctmc dateiname /store : speichert gefundene MC-Blcke in MCDATABASE');
                 : name=cpuid, platformid,updateid .bin z.B. 0652010A.bin');
ctmc dateiname /write: benutzt BIOS (INT 15-D042) zum Flashen des MC-Updates');
ctmc $  /write   : sucht in MCDatabase nach neuestem, gltigem MC und flasht');
ctmc /? /HELP    : Hilfe

