Page 1 of 1

ASUS NCCH-DL BIOS Modification to support Xeon MP "Tulsa"

Posted: Thu May 20, 2010 4:03 pm
by Duke2k
Hello all,

I'm trying a BIOS modification to support the Xeon dual-core CPUs, specifically 2 Xeon MP's 7120M (SL9HC, CPUID 0f68h) on an ASUS NCCH-DL mobo.
The mobo hast an i875P chipset, supporting 2 Xeon Foster/Prestonia/Gallatin/Nocona/Irwindale processors. Now, all of these are single core chips.

Here's what I did so far:

I extracted the microcodes off of a Supermicro X6QT8 BIOS (Quad Dual-core Xeon 71xx board), since I learned that CPU microcodes are chipset-independent, and merged these with the microcodes from the most recent BIOS 1006.002 for the NCCH-DL, removing all duplicates and retaining only the latest microcode releases for each CPUID.
The original cpu microcodes of the NCCH-DL BIOS were 38k, my new, merged cpu microcodes are 51k total.

Next, CBROM 1.96 allowed me to remove the logo successfully, and modbin6 2.01.01 was used to enable the L3 cache feature and disable the logo on/off feature at the same time. Removing the logo was necessary to accomodate the extra cpu microcodes in the 512k BIOS file.

I also read that ASUS has its own "tinkering" with Award BIOS formats, so that certain features of CBROM won't work - one of them is removing and inserting CPU microcodes. It's the newer, non-compressed format being used here. There's a tool "ACBROM" (Asus CBROM) which I was unable to find so far, and I hope that this will solve the problem of inserting the microcodes. If anyone of you has a link to a more recent version (I have acbrom 2.08 from 2002, but that's too old) which supports the newer ASUS Award BIOS'es - please, let me know.

I also tried a plain binary approach using UltraEdit's hexedit mode on a logo-removed but otherwise "original" BIOS file. I replaced 13k of FF's + 38k of the original microcodes with my 51k merged microcodes, paying attention to total file size. That resulted in CBROM still showing me the 38k NCPUCODE.BIN in the contents list but no microcode information below. I thought there must be some sort of internal structure that's kept elsewhere in the file.

Does anyone have similar experiences or tried it successfully before? I can provide the microcodes, and bios files that I used so far. Thanks in advance for any help.

cu
D2k

EDIT:
Here are the files I mentioned, as direct links.

http://www.duke2k.de/files/1006.zip - Original ASUS NCCH-DL 1006.002 BIOS file;

http://www.duke2k.de/files/1006M1.zip Modified BIOS with L3 cache feature enabled and ONLY 0F68h microcode inserted (replacing the 0F29h microcode, at the end) - I flashed this on my mobo, still boots with a compatible processor just fine, but 7120M Xeon is not recognized despite the microcode and L3;

http://www.duke2k.de/files/1006M2.zip - Modified BIOS, as described above;

http://www.duke2k.de/files/NCPUCODE.zip - Microcodes only, as I merged them (description above).

Re: ASUS NCCH-DL BIOS Modification to support Xeon MP "Tulsa

Posted: Mon May 24, 2010 3:38 pm
by cp
actually i won't stop you from fiddling around a bit more but microcodes have nothing to do with processor recognition. microcodes are just processor 'updates' (they fix (RARE) issues but neither amd nor intel publish what they exactly do). the mircocode updates are loaded by the OS anyway (windows automagically, linux with an addon tool).

ready for a test? take an old motherboard with intel cpu (everything from Intel Pentium II will do), remove all microcode updates, flash the BIOS back and watch the BIOS correctly recognize and initialize the CPU. i have disassembled the AWARD slot 1 cpu recognition and initialization routines from an ABit BE6-II. believe me, there's nothing microcode related in there. they are loaded later in the boot process (if there are some in the BIOS that fit the processor in question).