ftp://ftp.abit.com.tw/pub/download/bios/ic7-max3/ic7p16.exe
Microcode utility ctmc V1.0, c't/Andreas Stiller 02/2001
Filename Version UpdateID Date CPUID Checksum LoadVers Platform
CPUCODE.BIN 00000001 0000002E 02.05.2003 00000F12 B2548D0A 00000001 00000004
CPUCODE.BIN 00000001 00000001 29.05.2001 00000F21 78CDDD37 00000001 00000004
CPUCODE.BIN 00000001 00000008 30.07.2001 00000F23 7483278F 00000001 00000004
CPUCODE.BIN 00000001 0000001E 05.06.2003 00000F24 9BA58D71 00000001 00000004
CPUCODE.BIN 00000001 00000005 08.05.2003 00000F13 386C53DA 00000001 00000004
CPUCODE.BIN 00000001 0000001B 03.02.2004 00000F25 DCBE99DE 00000001 00000004
CPUCODE.BIN 00000001 00000037 04.06.2003 00000F27 972CD5FA 00000001 00000004
CPUCODE.BIN 00000001 00000017 18.07.2003 00000F29 C42D13A3 00000001 00000004
Prescott has a CPU ID of 00000F33. You can go to processorfinder.intel.com
and use the SLxxx number (a.k.a SSPEC) from the box the processor came in,
to look up the info page for your processor. You can use that to verify
that you have a 0F33 processor.
Notice there is no 0F33 microcode in the latest Abit BIOS. As if Abit
didn't want you to put a Prescott in there ? Even though their release
notes proudly proclaim Prescott ?
OK, get a copy of CTMC:
ftp://ftp.heise.de/pub/ct/ctsi/ctmc10.zip
It has three tools in it. CTMC.exe, splitawd.exe, and lha.
(It's been a while - I think the lha is a self extracting archive,
and the real lha.exe is inside it.)
The first step is to find another Award BIOS that has Prescott
microcode in it. In a DOS (command line) window, cd to your
working directory, and with only splitawd.exe and the donor BIOS,
do "splitawd donor.bios" where donor.bios is the filename of
the BIOS. This will yield some screen output, identifying the names
of the modules, and the modules themselves are numbered. An Award
BIOS is a bunch of LHA compressed modules, so once splitawd finds
the modules, the next step is to take note of which numbered module
is named "cpucode.bin" or the like. (Note: For me at least, splitawd
will hang, if you make lha.exe available to it in the same folder.
That is why splitawd should be by itself with the donor BIOS file,
so that it cannot call lha.exe, to try to decompress the file. I
got stuck when it got its hands on lha.exe. I do the decompression
step separately to avoid this problem.)
Now, find a copy of lha.exe, get the file from $MCTEMP that
the text output of splitawd said contains cpucode.bin .
Use the command "lha x 00000002.bin", where in this example
00000002.bin is the file that contains cpucode.bin. lha will
decompress the file for you. Now, you will have cpucode.bin.
Next, bring a copy of ctmc.exe into the place where the cpucode.bin
file is. Do "ctmc cpucode.bin /store >>log.txt". After a short
pause, there will be a bunch of 2KB files. These are the individual
microcode files for various Intel processor types. Here is
a version 0x0B (11 decimal) of a Prescott 0F33 microcode, for
example. I have uuencoded the data, because the final 2KB file
is binary encoded. (You may be able to use this for your board.
That is why I included it.) When decoded, this file is exactly
2048 bytes.
Great. My attachment and the rest of the post got cut off :-(
I guess something enforced the no binary rule :-(
Anyway, when you get a 2KB microcode file, like 0F330D0B.bin,
do "ctmc 0F330D0B.bin /write" and CTMC will attempt to use the
INT15 Function D042 BIOS hook to write the microcode into the
BIOS chip. If the function is not in the BIOS, CTMC will
complain and you will have failed the update attempt.
If it claims to work, do a shut down to a power off state,
then boot up. Use the Intel utility to check the microcode
version. If the version has changed to reflect the new BIOS
(0x0B in my example above), then you can try SP2.
The microcode storage space used for this operation is volatile.
The microcode update can be lost if you swap another processor
type into the motherboard, as the BIOS uses the D042 function
itself, when a new processor is detected. Similarly, if you
flash a different BIOS, the flash operation will clear the
microcode slot used as well.
(Now, since I cannot attach anything, you'll have to use splitawd
and CTMC, to test extract other Abit Award type BIOS, until
you find a 0F330D0B of your own.)
I'm going to throw the lines of uuencoded stuff on the end of this
post anyway, just to see if it gets through.
HTH,
Paul
This is what goes after the line with the 644 in it. Remove
the tilde ~ character from the beginning of each line. The
decoded file should be exactly 2048 characters - if it is not,
then I screwed up somewhere.
~M`0````L````$(!(%,P\``.J*9N4!````#0``````````````````````````
~M````'*?]1;,\R,6CI]QZB,X&Z<)W1K_M>FLL+%O+$BBC7LR&B5!!+]WJ^O>4
~M,UJ^/O(\18K5Z3H84L)`)I!1T$+O5=[#>Z18<U\WB[,3_W'P=&YJP#HU'>E=
~M3/#ANBNC#($O2[U96CXC^VN*!*LL0L8$LJ'DSRS\)X4R.[HL@?<\N(S.`0.#
~MZ3]!K8=3<PAU<WTZ!:E,@B+T6Y_#_<P&SU57:;H;,MLQ,Q`O]1X0!;1.6%A#
~M,%WD85<"=&T<``U(JW(?S?Y#K5I!\5X196>B\%;?HEU88UC(S3$*+F/17/+%
~MOI$UK/,7%#RRH!5WH)H%Z;8TGOJ#NBS!"))V"+*&L;M:;:O$I!%V[M4@&R1^
~M"J4005`62:$XT@T68E62%<21_!PA"$5D&Y&_TUEHH<K9'R;6SGNDT$IUE&,R
~M'<&/!L[?(?FV0$:?(\7BPC7^!\HDL;4H'/;7YKY/]?VX\]#3N-Y$",(.70S#
~M@ULYX9Z<1KC9>"\!W,+O`;5B!5(^R+62,@DZYB#?T['3[R>5B&H'&45`WZ70
~M(-NP)MD[:NEP=%(H1O'[K\8?./T=P;O#K62Z'2`W[^N-?^R$ON.!Z3,,;X`6
~M/AUDZ\3?8*DD?/SNF5KO>!FO,K*T&#L[/$8B>?K?-PLTL84[\H(5NAA,<,`"
~MV:&4K'=ZL>_$[\DH=I><E7@YB)G*I<$!PT*[I-^V+C>7O7`H"FIGNO`9RIP@
~M0K8M["4@?>H>[&;PW8DHAY"1CTS6^5DW2IS5.=S]?VLY1LM@N9LM"I-3;T]?
~M_D!6?Y#8%(RVZ!:S,M%=^-\C3YES6XP)2<<W++Y$QTOCZPW63)@G2;,[*VX&
~MZ%%ML<U@-KO6MF"&&3S"F:53M]<F/E\!)Z/O!C'?E-I!X\]0$8$7$KDCYA0]
~MI`5>9C(;:S]2L%LZMXJ>F-J6*Y%SK90V13ZU*T@R=Z37=M.Y_I-8@0\FG.I!
~M.Q4C``Q`%@Y`%+;Z]P0<,AQLCHVPOP`L!GLV6$2P#I%OOJ4GS"XJ/&5ME\)?
~M::G)1AHT69`B2O_`IJ7K?DDKXAE0,QZGM:ETN+0XW87X"T.FC!4967U7!6U?
~M-$F7+MF0$QPJ#:U;`-NHJAOX\.]516[/@&Y2K+*8>+XBC]Z.V@S;AJHG!A,Q
~M)&R@E>5LCJ<B><8^BUEF4\5C<:5ZP?PR`NMV=D">N&/9.80_#N,)-*+]3D$+
~M15JS1<CG8@(E/!M:EVTH+@H)9#B&9%SXE/QY>1*YT0$&FT
G",GNO(&B1DK
~MQO"3XD&.R]B?WW3),S+#7S<D/T'A#@:M:^#Q?Q)%RBX/'@.=>NQ^3"`VDE*(
~MT>V&9!]52T7K/.5)$/;^4Y):2),S9'<X6A(1"1#*3Z"XB%52B%*G*<V-Z"\^
~MX7`\-0M.`+4%5CF+N^\T@O>E#YTPZJXNI#W2/SHK5+!RAJ*.&,,?:J%&!VD"
~M;ZXTR.RIVJ%E4U!2"XSN"T&I8]5IKJ(<UC4\'C!./C&]JT80H<I,8-G&W187
~M![CT[^4]\1L23OXPD_\WIT(`VA:MSHFPG/NO4^,RP/2#0F*"3>5G:80`/E!*
~M>@`^\,5/D04@YY-%AZ9UMU:]PRG^9`\.\LQ&-8J6E4,^::ZL,(NM2M@2*IKQ
~M@6L=%)@.#9?,H:X\B`A-IGZG^3G@8ZREE]$O%T6Q>M3_B=,AI5NSQD9&`#T3
~M-1R[*6IG#+>C;N+5*X0CV?/B('K0"R(GN>&32&1\#K[A/*+EM>LU7Z@%HKM"
~M,RXMXD=F9.X']Z7#O'B&G!$BY&@O]\W)T,9)$`WZ7AS^[4`G$-$%NB\CCY=1
~MHM2DL]U?TOFNY3V7<+TVDI)`U.,];
[email protected]$'%PNK3ZOJ?@M8#Q)P7>4RX4L
~MW'5.7"#CP5-?ZG]0XR0,MC5-L[]QJI`_K[CJH4RD>IPOW2>W'_N%L2OJ!?,B
~M]5`\&M(->BB)MH_V86L23,E?(Q,08VGHY@L]W,I6AY<(.`]AN>H@#"06**59
~M[Y\8:ADK57/H*@HU@!$>V]\TT)[$C/M>-K3,""0JGPVLJ.LC3*O!>J9`(^C_
~M@CH%H+S[O+DX4%X9"#/9X:./'[N*&W>I.:QGZELD49@GUIECI/Y22!T.`QJA
~M,>E./Z;V$H\>R)
[email protected]?Q4&*NW<<7(NE8Q!\D4RM[W)?.E@K)5E)(*B
~MPTZ$POH$39Z9O-R(>AQ(=L2#)%2--Z,7E,1KT,'8)A$7**"%JPF_5!4("9WY
~MX]C?9Y<>N8)+4@5VGZZ?5CBCF6KV1QUJH$'(F!#`S`M!]-#&MEK[0<@:[YX-
~MK`;`IL,DZD9.X<3".L-R$'"-J-E[]!L^7E/E5PK@N1#539NHGC549B*;#$<%
~M;R#FV>S>)&BK0/>-,93+_6N\9W9MLM@[-Q,3IU7D22?MF'P=?.0G!=`(C$=`
~M8CC"@Y.347CTK\OP>')X68BDY*#VKR$?QX$YWF,6C'0J1M79(W(T7BH6DLY=
~MY=EE_-+`JW/^.I?B4S1YK0+&R%HUFMFIQ#;11MNH.4>_)U.[?26L=VX<_F91
~M?P\=XW3EV1M9=B+H^2+S*#//D\$]P).N9_T4&P-P=^:I<D]GLCEB+";Q#*1[
~MM)F'V#8(W&J3+SNBDP&2@HL=ZMT<SS\8\TEBT
%EVML'28T4>#V9KC.O37F
~7QJ^D1M1ZXOL+Q$/X]IX_/O#1PE5)P!X@
~`
~this_word_should_just_be_the_three_letters_"end"