• Welcome to Overclockers Forums! Join us to reply in threads, receive reduced ads, and to customize your site experience!

Mr Natural BIOS demystified

Overclockers is supported by our readers. When you click a link to make a purchase, we may earn a commission. Learn More.

arman68

Member
Joined
Mar 22, 2002
Location
UK
At last I decided to check what Mr Natural changed in his bios. Here is the result, based on comparing his TH7-II Raid 7F bios with the official Abit 7C bios. I can imagine results would be very similar for other m/b.


CPU Microcode

No change at all, the 7c already supports CPU Id 0x0F12, 0x0F13, 0x0F21, 0x0F23, 0x0F24. In other words the current 533MHz Pentium 4 are supported.

The new C1 stepping, however will require addition of the 0x0F27. It's easily done, AnnaMaria has done it already, and I suspect Abit will do it soon since they have added it recently to the BD7-II and they have started work on a TH7-II beta bios.


HPT Raid Controller BIOS

Mr Natural updated it to a more recent one. Abit has now done the same in the latest beta. Since then there is a more recent one, which Abit has started using as well.


Enable BIOS hidden settings

PCI configuration
Spread Spectrum Modulated
Display Fan Off In Suspend


Hide settings

CPU L3 Cache


Change default values

CPU L3 Cache:
from Enabled to Disabled

System BIOS cacheable:
from Enabled to Disabled

Video bios cacheable:
from Enabled to Disabled

AGP Fast-Write:
from Disabled to Enabled in Fail-Safe settings
unchanged as Enabled in Optimized settings

Incremented bios revision number

;)

That's all folks!

Apart from that I could not find anything else modified. Sorry to say I am a bit dubious about Mr Natural claims of how his intimate knowledge of assembly is required to produce his bioses... :eek: All that is needed to perform the above is:
CBROM to change bios components
MODBIN to enable/disable settings and change default values
CTMC to examine/modify CPU microcode (not used by Mr N)

I also do not understand why he would not want to disclose the changes he made.

Below are a few explanations/comments about some of the settings which have been mentioned:


AGP Fast Writes

Allows the AGP device to write to the bus without calling an interrupt. In fact, it's forced behaviour, unlike the 2x or 4x modes which are always agreed upon by the chipset and the video card. So if you enable this for the extremely slight performance boost, you'll get instability within any 3D accelerated application when using a video card that doesn't support Fast Writes.

Comment: most recent graphic cards support this setting, if in doubt, check. Enable it if supported.


Spread Spectrum Modulated

This compromises system stability by performing frequency modulation on the system clock. Timing critical devices, such as NICs and SCSI may have problems. It's there to reduce EMI problems by making sure the system isn't using any one frequency for too long.
Disable it.
On a 1GHz system, 0.25% will result in a 2.5MHz fluctuation in CPU core frequency. Not nice. Always, always, always disable this when overclocking. If you have the Smart setting, the system will shut off the clock to unused slots, so use this if you have it.


Comment: I am not sure why Mr Natural claimed that it increased stability when overclocking with RDRAM. Maybe he knows something I don't.

From my experience I have not noticed any stability difference. What I noticed though is turning it off will increase the frequency by the equivalent of half a step. This might take you over your stability threshold if you are borderline.

As anyone experimented more or can enlighten us?


L3 Cache

This type of cache is becoming more prevalent as microprocessor manufacturers ship more processors with L1 and L2 cache built into the processor. L3 cache is then the extra cache that sits on the motherboard between the processor and main memory, since the processor already contains L1 and L2 cache.

Comment: This can only increase performance. However Mr Natural turned it off.
After looking at Intel spec, it would seem that Intel had plan to add a L3 cache to the Pentium 4 but had some problems and removed it. The Itanium will feature it.
I could not find anything about the TH7-II having a L3 cache onboard.
If it's not there I am not sure turning it off would increase stability or performance.
 
System BIOS cacheable

This feature is only valid when the system BIOS is shadowed. It enables or disables the caching of the system BIOS ROM at F0000h-FFFFFh via the L2 cache. This greatly speeds up accesses to the system BIOS. However, this does not translate into better system performance because the OS does not need to access the system BIOS much.

As such, it would be a waste of L2 cache bandwidth to cache the system BIOS instead of data that are more critical to the system's performance. In addition, if any program writes into this memory area, it will result in a system crash. So, it is recommended that you disable System BIOS Cacheable for optimal system performance.




Video BIOS Cacheable

This feature is only valid when the video BIOS is shadowed. It enables or disables the caching of the video BIOS ROM at C0000h-C7FFFh via the L2 cache. This greatly speeds up accesses to the video BIOS. However, this does not translate into better system performance because the OS bypasses the BIOS using the graphics driver to access the video card's hardware directly.

As such, it would be a waste of L2 cache bandwidth to cache the video BIOS instead of data that are more critical to the system's performance. In addition, if any program writes into this memory area, it will result in a system crash. So, it is recommended that you disable Video BIOS Cacheable for optimal system performance.
 
Yeah!!! Good work there Arman!!!

I like the way you present the changes. Mr. Natural never did and I was in fear of these BIOSs.

Perhaps you figur out how to "unlock" 1.85v in the 7C BIOS. ;)

Keep up the good work !!

Merkor
 
WOW! Way to break down the changes/ settings in the BIOS. I always had mine set to those specs just wasn't 100% sure why. Just knew that most tweaks called for them to be disabled. Now I know and knowing is half the battle G. I. J.........oops sorry CYA!
 
a little program like slick edit pro can modify the values in the bios pretty well... for example:

basically you take a ROM file in slick edit pro and create a look up table with different values. The only thing I have done with this is create different fid and vid values so you can run a higher voltage and fsb on BIOS's that are not soft menu.

its all in hex by the way
 
I am currently using 7d bios w/ 2.32 hpt. bios version. What bios and/or raid bios combination do you think performs the best, also do you know if there will be a way to enable hyperthreading on the th7ii when it is "released" perhaps through a little bios tweaking
 
I am glad that you find the information useful ;)

Between things I am currently studying all the bios settings, and once I will be happy with what should the optimal values be, I will release a new bios with those defaults, along with a full changelog and explanations.

At the moment I am testing the effect of enabling/disabling Spread Spectrum Modulated. It will take a while before I have any concrete result though, as I only consider my system stable if it can run Prime95 for 72 hours straight + memtest86 for 12 hours without any error. This means I can only test 2 settings a week :( What I have noticed though, is when disabling Spread Spectrum Modulated, the POST screen reports a FSB of 1MHz higher than what has been set in the bios, and measuring the CPU speed reveals it is true to that and accurate. Most of you probably have noticed that when it is enabled, the CPU frequency is always higher than expected.


trey_w said:
basically you take a ROM file in slick edit pro and create a look up table with different values. The only thing I have done with this is create different fid and vid values so you can run a higher voltage and fsb on BIOS's that are not soft menu.

Any hex editor would be suitable tool. You wouldn't know by any chance where is that table stored in the 7c bios?


Justin2050 said:
I am currently using 7d bios w/ 2.32 hpt. bios version. What bios and/or raid bios combination do you think performs the best,

As far as bios goes, I use my own customized 7c bios. Now you know what the 7f is, you can use it safely ;) I would not recommend using the 7d and 7e bios as I think they are based on the beta 7c01 and 7c02 which led to the 7c; I could be wrong though.

For the HPT bios, the 2.32 is my recommended choice: it solves some performance problem with XP. Make sure you use the 2.32 drivers as well. On my system I am using the 2.33 bios and drivers and that works fine because my boot and system drives are not on the HPT controller. However as some people have recently reported, it does not work if you are booting from the HPT370, plus you lose the ability to reconfigure the array from the bios (it can still be done from software though). Don't use it! I am still using it because I am a lazy b****** and I cannot be bothered to downgrade - plus boot time is much faster this way ;)


Justin2050 said:
also do you know if there will be a way to enable hyperthreading on the th7ii when it is "released" perhaps through a little bios tweaking

Not sure, it depends whether it is something handled in the CPU microcode or not. Even if it is in the microcode, there will still some development work involved in the main bios; that is beyond my capabilities.

However as part of my work I benchmark and test diverse applications on multiple servers, and I have not observed much benefit to be gained from hyperthreading. In many cases applications performance become worse and hyperthreading even causes a few to crash. I view it a bit like SSE2: until some applications are written specifically with hyperthreading optimizations there is nothing to be gained from it; and even then, I think it is certainly not suitable for the desktop as they are too many apps that would have problem with it turned on.
 
arman68 said:
I am glad that you find the information useful ;)

Between things I am currently studying all the bios settings, and once I will be happy with what should the optimal values be, I will release a new bios with those defaults, along with a full changelog and explanations.

At the moment I am testing the effect of enabling/disabling Spread Spectrum Modulated. It will take a while before I have any concrete result though, as I only consider my system stable if it can run Prime95 for 72 hours straight + memtest86 for 12 hours without any error. This means I can only test 2 settings a week :( What I have noticed though, is when disabling Spread Spectrum Modulated, the POST screen reports a FSB of 1MHz higher than what has been set in the bios, and measuring the CPU speed reveals it is true to that and accurate. Most of you probably have noticed that when it is enabled, the CPU frequency is always higher than expected.




Any hex editor would be suitable tool. You wouldn't know by any chance where is that table stored in the 7c bios?




As far as bios goes, I use my own customized 7c bios. Now you know what the 7f is, you can use it safely ;) I would not recommend using the 7d and 7e bios as I think they are based on the beta 7c01 and 7c02 which led to the 7c; I could be wrong though.

For the HPT bios, the 2.32 is my recommended choice: it solves some performance problem with XP. Make sure you use the 2.32 drivers as well. On my system I am using the 2.33 bios and drivers and that works fine because my boot and system drives are not on the HPT controller. However as some people have recently reported, it does not work if you are booting from the HPT370, plus you lose the ability to reconfigure the array from the bios (it can still be done from software though). Don't use it! I am still using it because I am a lazy b****** and I cannot be bothered to downgrade - plus boot time is much faster this way ;)




Not sure, it depends whether it is something handled in the CPU microcode or not. Even if it is in the microcode, there will still some development work involved in the main bios; that is beyond my capabilities.

However as part of my work I benchmark and test diverse applications on multiple servers, and I have not observed much benefit to be gained from hyperthreading. In many cases applications performance become worse and hyperthreading even causes a few to crash. I view it a bit like SSE2: until some applications are written specifically with hyperthreading optimizations there is nothing to be gained from it; and even then, I think it is certainly not suitable for the desktop as they are too many apps that would have problem with it turned on.



There i would want to know if is a way and with which program in order to modify bios the Abit for Th7-IIR version 7C, adding a multiplier of rimm (default Auto/400/300 and hide 400), wanting some to add one to 250?
I would want to increase also the vcore max impostabile, default with P4 NW 1,70v, like making?
For before the question task not there is solution, but i hope that however you can help me. Thanks still of all. ;)
 
Annamaria said:
There i would want to know if is a way and with which program in order to modify bios the Abit for Th7-IIR version 7C, adding a multiplier of rimm (default Auto/400/300 and hide 400), wanting some to add one to 250?

A multiplier of 2.5x for the RDRAM is not possible.

2x would be possible but I cannot imagine anyone running their fsb high enough to need reducing the speed of the RDRAM by half! As for hiding 400, why would you want to do that?

Annamaria said:
I would want to increase also the vcore max impostabile, default with P4 NW 1,70v, like making?
For before the question task not there is solution, but i hope that however you can help me. Thanks still of all. ;)

I would like to increase the vcore past 1.7v too on the 7c without the cold boot problem or the overvoltage alarm. It is not within my capabilities though. Tmod might be able to help, but he is a busy man and I do not think he has access to a TH7II for testing.
 
arman68 said:

I would like to increase the vcore past 1.7v too on the 7c without the cold boot problem or the overvoltage alarm. It is not within my capabilities though. Tmod might be able to help, but he is a busy man and I do not think he has access to a TH7II for testing.

Is it really that impossible?? How are other companies able to archieve 1.85v for NW CPUs in BIOS. Asus made it, to tune the initial vcore very early in the POST process in a BIOS release, so the vmod isn't neccessary anymore.

It MUST be possible!!!!

Merkor
 
arman68 said:


A multiplier of 2.5x for the RDRAM is not possible.

2x would be possible but I cannot imagine anyone running their fsb high enough to need reducing the speed of the RDRAM by half! As for hiding 400, why would you want to do that?



I would like to increase the vcore past 1.7v too on the 7c without the cold boot problem or the overvoltage alarm. It is not within my capabilities though. Tmod might be able to help, but he is a busy man and I do not think he has access to a TH7II for testing.


I would want to succeed to add the multiplier of the rimm, also 2x as you say you it goes well, inasmuch as with fsb to 170/180Mhz, the same ones would go however fast. ..You would help saying me like making and which programs to me to use? Same thing for the vcore to 1,85v, I would try however to increase it, but straight ones serve me your. ..Infinite thanks of your aid.
;)
 
Merkor said:
Is it really that impossible?? How are other companies able to archieve 1.85v for NW CPUs in BIOS. Asus made it, to tune the initial vcore very early in the POST process in a BIOS release, so the vmod isn't neccessary anymore.

It MUST be possible!!!!

I did not say it was impossible, the process is actually quite simple: you need to extract and decompress the main bios from the bios file. Modbin6, or awdsplit + any lzh capable decompressor can do that.

The binary file needs disassembling.

There are then 2 choices: either modifying the entries in the voltage table (ie: 1.7-> 1.85, etc...) or more difficult but better, finding out where the max vcore is held for some particular cpu steppings (this is better since the voltage table already has entries to 2.2v).

To rebuild the bios you then need to run your modifications through an assembly compiler (if you did not make your changes directly in hex). Then you either put together a new bios with all the components you want using cbrom, or replace the modified component in the original bios using modbin6 (a bit tricky).

Simple process I said :D My knowledge of assembly language is not good enough though for me to do it :rolleyes:


I not think the cold boot problem should manifest itself if the 7c is used as a base. However there might well be the overvoltage protection kicking in. Finding the code that handles it is another story.
 
OK, there must be someone who can do this!! I lay my trust in you arman68!

But why will the overvoltage alarm kick in? What is it exactly?

Please, arman: Try do it! You have the knowlegde for doing that! You would go into history...

Merkor
 
Merkor said:
OK, there must be someone who can do this!! I lay my trust in you arman68!

But why will the overvoltage alarm kick in? What is it exactly?

Please, arman: Try do it! You have the knowlegde for doing that! You would go into history...

Thanks for your confidence, but I just tried to find the code that's handling the max vcore this afternoon, and only ended up with a terrible headache :( :eek: ;)

As for the overvoltage alarm, we will not know whether it kicks in or not until we manage to up the max vcore. No need to worry about it for now. If you want to know more about it, I think there is a short discussion in the long Mr Natural sticky.


I just realised I forgot to mention that Mr Natural enabled the hidden AGP+PCI ratio in this bios. Again, just a modbin job, since it was already there in the bios. Adding more ratio would be a much more difficult job since it would require an intimate knowledge of the PLL.
 
arman68 said:


I did not say it was impossible, the process is actually quite simple: you need to extract and decompress the main bios from the bios file. Modbin6, or awdsplit + any lzh capable decompressor can do that.

The binary file needs disassembling.

There are then 2 choices: either modifying the entries in the voltage table (ie: 1.7-> 1.85, etc...) or more difficult but better, finding out where the max vcore is held for some particular cpu steppings (this is better since the voltage table already has entries to 2.2v).

To rebuild the bios you then need to run your modifications through an assembly compiler (if you did not make your changes directly in hex). Then you either put together a new bios with all the components you want using cbrom, or replace the modified component in the original bios using modbin6 (a bit tricky).

Simple process I said :D My knowledge of assembly language is not good enough though for me to do it :rolleyes:


I not think the cold boot problem should manifest itself if the 7c is used as a base. However there might well be the overvoltage protection kicking in. Finding the code that handles it is another story.


You could say where to find awdsplit + to me any lzh?
I would want a lot to succeed in the enterprise to modify really the bios and are sure that with your aid i could succeed to us, at least we will not mourn all MrNatural, inasmuch as its situated one é from a po' down...
You could make a miniguide step step in order to help me?
I do not have too much haste and if it had to serve to you of the time, i would wait for. ..
Thanks in advance payment and good aim week.
:)
 
arman68 said:
I have posted the first installement of useful utilities for modding bioses at http://forum.oc-forums.com/vb/showthread.php?s=&threadid=125348

This is an arman68 exclusive :p modbin6 1.00.48 not available anywhere else on the net (as far as I know). The last version that was made publicly available is the widely used 1.00.38.


Waiting a your further help, drives you, i have to say you that i have tried to unload the file in matter, but says me that the file is not complete ...You would be able ripostarlo, perhaps to my e-mail?

[email protected]
 
Annamaria said:



Waiting a your further help, drives you, i have to say you that i have tried to unload the file in matter, but says me that the file is not complete ...You would be able ripostarlo, perhaps to my e-mail?

[email protected]


arman68, help... :(
 
Arman68... You are the best!!!! Finally someone has the guts to modify BIOS. Isn't he genius?? I can't believe that Mr. NaturalBios actually has done nothing in his BIOS other than slightly modifying it with modbin and cbrom. No wonder his BIOS is just the same with factory's BIOS in term of overclocking.

Can you work it out how to enable 2.8v for DDR voltage? Most of Abit mobo is limited to 2.5, 2.6, 2.7V. When I used modbin6.exe, there is another "blank" option which is not selectable ,
I guess is the 2.8V option. Can you look at it? It would be great if this option is actually 2.8V and can be selectable.

My mobo is Abit BD7 non-raid with BD7_9Y bios version.



:D :D :D
 
Last edited:
Back