Run FX59xx cards with different 2D/3D Memory speeds

To anyone interested in running their Nvidia FX59xx card at different memory speeds, I modified and flashed a bios with stocks of, 300/800 for 2D, 510/970 for Throttling, and 510/970 for 3D.

This topic was started by ,


data/avatar/default/avatar02.webp

8 Posts
Location -
Joined 2004-09-17
To anyone interested in running their Nvidia FX59xx card at different memory speeds, I modified and flashed a bios with stocks of,

300/800 for 2D, 510/970 for Throttling, and 510/970 for 3D.

Which means I have set 2D and 3D gpu and memory speeds at different levels !

The rivatuner bios report for the bios shows,

$ffffffffff NVIDIA VGA BIOS information
$ffffffffff ---------------------------------------------------
$1100000000 Title : FX 5950u Bios @jimmor
$1100000002 Version : 4.35.20.32
$1100000001 BMP version : 5.28
$1100000200 Core clock : 250MHz
$1100000201 Memory clock : 250MHz
$1100010000 Perf. level 0 : 300MHz/400MHz/1.20V
$1100010001 Perf. level 1 : 510MHz/485MHz/1.50V
$1100010002 Perf. level 2 : 510MHz/485MHz/1.50V
$1100020000 VID bitmask : 00000111b
$1100020100 Voltage level 0 : 1.20V, VID 00000100b
$1100020101 Voltage level 1 : 1.30V, VID 00000101b
$1100020102 Voltage level 2 : 1.40V, VID 00000110b
$1100020103 Voltage level 3 : 1.50V, VID 00000111b


Using 66.29, 66.72 and 66.81 drivers, and running aquamark03, 3dmark01 & 03, my card steps up and back cleanly between 300/800 and 510/970 as it transitions between 2D and 3D modes. This obviously shows that a 5900 card can run with different speeds in different modes if required. It is of course not new, as it was previously known to be possible with much earlier drivers, but this is first time I have tried with a 6xxx series drivers. And, I have also repeated the tests using different bios types, with same result.

Note however, this is not guaranteeing that all 59xx cards with all drivers will be able to run with different 2D/3D memory speeds. But I can't think of any reason why they shouldn't !

However, this posting is also be taken as a warning to any FX59xx owner who has modified the memory speed of their bios using either Omniextreme 1.5 or NiBiTor 1.7. Both of these programs only allow changing 2D memory speed in the belief that a driver will always default memory to this speed regardless of the bios Throttling and 3D speeds.

The testing I have done obviously does not agree with that assumption !!!

Below is a small part of the Rivatuner Hardware Monitor log from running Aquamark03 from 2D to 3D and back to 2D again. It has been truncated down however to mainly show the 2D/3D transitions, otherwise it would be too big to be posted.

00, 29-10-2004 22:35:41, Hardware monitoring log v1.1
01, 29-10-2004 22:35:41, NVIDIA GeForce FX 5950 Ultra / SONY CPD-100ES
02, 29-10-2004 22:35:41, Core clock,Memory clock,Core VID,Core temp,Ambient temp
80, 29-10-2004 22:35:52, 300.857 ,798.000 ,4.000 ,36.000 ,31.000
80, 29-10-2004 22:35:53, 300.857 ,798.000 ,4.000 ,36.000 ,31.000
80, 29-10-2004 22:35:54, 300.857 ,798.000 ,4.000 ,36.000 ,31.000
80, 29-10-2004 22:35:55, 300.857 ,798.000 ,4.000 ,36.000 ,31.000
80, 29-10-2004 22:35:56, 510.300 ,972.000 ,7.000 ,43.000 ,31.000
80, 29-10-2004 22:35:57, 510.300 ,972.000 ,7.000 ,39.000 ,31.000
80, 29-10-2004 22:35:58, 510.300 ,972.000 ,7.000 ,39.000 ,31.000
80, 29-10-2004 22:37:07, 510.300 ,972.000 ,7.000 ,43.000 ,33.000
80, 29-10-2004 22:37:08, 510.300 ,972.000 ,7.000 ,43.000 ,33.000
80, 29-10-2004 22:37:09, 300.857 ,798.000 ,4.000 ,43.000 ,33.000
80, 29-10-2004 22:37:10, 300.857 ,798.000 ,4.000 ,41.000 ,33.000
80, 29-10-2004 22:37:11, 300.857 ,798.000 ,4.000 ,41.000 ,33.000
80, 29-10-2004 22:37:12, 300.857 ,798.000 ,4.000 ,41.000 ,33.000
80, 29-10-2004 22:37:13, 300.857 ,798.000 ,4.000 ,40.000 ,33.000

The only important thing I will advise to anyone wanting to run different 2D/3D speeds, is to make sure that coolbits, Rivatuner and any other overclocking tools are properly disabled, as they could interfere with the speeds being controlled by a bios !

Participate on our website and join the conversation

You have already an account on our website? Use the link below to login.
Login
Create a new user account. Registration is free and takes only a few seconds.
Register
This topic is archived. New comments cannot be posted and votes cannot be cast.

Responses to this topic


data/avatar/default/avatar04.webp

55 Posts
Location -
Joined 2003-05-03
My FX5900 is clocked to 480/935 when windows loads, without any intervention, using Rivatuner. There are 2 places to overclock, I use the second one (not the low level one). You need to use it to see where you click to find the options. Once set, the speed shows up in the NVidia overclocking tab too.

Once in the Rivatuner clocking screen, its very much like the NVidia driver, now there are individual settings for 2D and 3D as Jimmor is using.
Once you set them, your PC will always set them to that speed if you click the SAVE button.
When I boot, my FX is running at the right speeds straight away, its as if I have modded the BIOS, its that seamless.

Jimmors method will ensure whatever machine you plug the card in, it will work at the right speed without setting the PC up for it. Very handy if you reinstall windows or experiment a lot.

The Rivatuner method means you dont need to blow a modded BIOS (or install coolbits) should you not feel techy enough :)

data/avatar/default/avatar02.webp

8 Posts
Location -
Joined 2004-09-17
OP
Chernobyl,

I take it "not feeling techy enough" is the reason you have not flashed with a modded bios ??

If your card is a genuine FX5900nu, then you could easily gain more outright performance by either, modding your original bios for, gpu volts, memory timing/latency, and speeds, or, flashing with a suitably modified 5950u bios ?

data/avatar/default/avatar04.webp

55 Posts
Location -
Joined 2003-05-03
heh
I have tried many many BIOS's from a lot of manufacturers.
Its a shame that the XFX card uses a different TV tuner chip to other cards and it seems different than the XFX5950U too! When I used another BIOS I lost all TV out functionality.

It is true that your method could be used to stretch more out of the card by changing the core voltage. I found that the default FX5900 BIOS uses 1V for 2D and 3V for 3D. The Ultra BIOS varied right up to 7V for 3D which made the card nearly unuseable. The heat from the core wouldnt allow the ram to cool. By using lower voltages, I may be able to push the core more.

As an electronic engineer, I understand the risks of flashing the card and feel that my card has had its lifes worth of flashing and it still runs very fast on the default BIOS.
I'm very happy with the way my card is, I am not knocking your technique tho, I think its great.

Using both techniques, theres something for everyone.
:):)

data/avatar/default/avatar02.webp

8 Posts
Location -
Joined 2004-09-17
OP
Point taken !

But just in case you ever feel like tweaking your card's bios for either, a bit more performance, or, to play around just because you may be an inquisitive person like myself; you could find my 59xx bios modding guide below of some use,




Guide to Modifying bios of Nvidia FX59xxx Series VGA Card.
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

This Guide is written in a way that should allow any layman with no bios design experience to make selected changes to a bios file, which can appreciably improve the performance of a 59xxx series vga card.

I will start with a simple cautionary warning to all who think that bios modding appears very straight forward and thus holds no threat to them.

The major, but least understood, problem with modifying a bios and flashing, is that going too extreme may stop your card posting during computer bootup. It may not be a bad bios, just a bad flashing of your card which stops it posting. But if it happens, then maybe only a professional with the right tools may be able to recover the situation and reflash your card to a working state.

Just a small warning to everybody wanting to play about with bios modding -----> Do something wrong, doesn't have to be more than a binary digit out of place or a bad flash and you could be looking for that professional bios fixer, or another card.

So be careful out there !!!

The FX5900nu, FX5900u and FX5950u cards are basically to same design and therefore bios's are generally interchangeable, and likewise any modified versions. The newer FX5900XT type (inc SE/LX/SP etc) however is somewhat different and cheaper design of card, and its bios, although interchangeable with other XT's, is not useable with the original 59xx cards. When proposing bios changes it is therefore considered best to treat them separately.

However a number of the performance inducing changes included in the guide, derive from using some of the beneficial parameters from a XT bios with those of higher card bios, and vice versa.

The Ray Adams X-Bios Editor v103.520 is recommended for all bios changes as it includes a good Hex Editor, and more importantly it will add a correct CRC bit to ensure a successful flash. For flashing, it is recommended that nvflash.exe v4.41 be used, as it is a program I have used with complete success hundreds of times.

For the purposes of this Guide, none of the ASUS 59xx bios's set to only run in 3D mode are considered applicable, as GPU and Memory initialisation and table structures are different from all others bios's.


1. FX5900nu, FX5900u and 5950u.
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

(a). SPEEDS.
~~~~~~~~~~~~
The first important thing about GPU and Memory speeds is to identify how to find and read them. All speeds are stored as 8 bit binary words which are derived from a hex conversion of the speed required.

Typical stock speeds of 300/400/850 mean,

2D speed is 300MHz.
3D speed is 400MHz.
Memory speed is 850MHz, (actually 425, only given as 850 for DDR Memory).

In simplistic terms, a binary word for speed is derived by multiplying the speed value by 100, converting to Hex, transposing the last and first two digits of Hex value and adding four zero's to the end.

2D speed = 300x100 = 30000 = 7530 Hex = 30750000 bin word (or 30 75 00 00)
3D speed = 400x100 = 40000 = 9C40 Hex = 409C0000 bin word (or 40 9C 00 00)
Mem speed = 425x100 = 42500 = A604 Hex = 04A60000 bin word (or 04 A6 00 00)

To find any GPU or Memory speed in a bios just look for the 8 bit binary word that represents it, ie for 300MHz look for "30 75 00 00", and change it to any other 8 bit binary word. It is important to look for the 8 bit binary value rather than just the front 4 bit word, as that particular 4 bit sequence may exist in a number of places as programming code, and could cause serious problems if changed.

The GPU and Memory speed tables are located near the end of the bios file and are structured as three closely located tables starting with 2D, then Throttling and finally 3D. Each table consists of nine 8 bit binary words, the first bin word being for GPU speed followed by eight 8 bit words for Memory speed. Throttling is set at 375MHz regardless of GPU 2D/3D speeds, And Memory speed is set the same for all Tables.

Using the above example of 300/400/850 shows,

2D Table (300/850),
~~~~~~~~~~~~~~~~~~~
30 75 00 00 04 A6 00 00 04 A6 00 00 04 A6 00 00
04 A6 00 00 04 A6 00 00 04 A6 00 00 04 A6 00 00
04 A6 00 00

Throttling Table (375/850),
~~~~~~~~~~~~~~~~~~~~~~~~~~~
7C 92 00 00 04 A6 00 00 04 A6 00 00 04 A6 00 00
04 A6 00 00 04 A6 00 00 04 A6 00 00 04 A6 00 00
04 A6 00 00

3D Table (400/850),
~~~~~~~~~~~~~~~~~~~
40 9C 00 00 04 A6 00 00 04 A6 00 00 04 A6 00 00
04 A6 00 00 04 A6 00 00 04 A6 00 00 04 A6 00 00
04 A6 00 00


The Throttling function is only applicable to 3D Mode and can thus be effectively disabled by setting speed to same as 3D. This is what was done by manufacturers of some FX5700u bios's I have checked. However, remember to also raise GPU throttling volts to cater for raising speed to that of 3D.

Another way of removing throttling, is to use a ASUS 5900u or 5950u bios as they operate in 3D all the time and appear to have no throttling mode. However, setting the "Force constant performance level" option of Rivatuner RC15 to "performance 3D" only runs a vga card in 3D and also disables Throttling.


(. GPU VOLTS.
~~~~~~~~~~~~~~~
Closely following the three speed tables, is a Lookup Table for setting GPU volts of the 2D, Throttling and 3D modes. The main parts of the table are typically laid out as a 18 Bit binary string as follows,

03 00 07 78 04 82 05 8C 06

The first three 2 bit values of the string describe structure, where the "03" shows that the table has three choices, and the "07" indicates each choice can have a max of 00 to 07 (or 8) possible volts levels; in this instance equating to the range 0.8 to 1.5v in 0.1v steps.

The three 4 bit binary words following the "07" show the actual values set for this bios, where the first two bits of each 4 bit word is only an indicator of volts expected (found by converting to decimal/100), and the next two bits of each 4 bit word actually set the GPU volts level.

To select GPU volts, the driver compares a Performance Level Volts Indicator (PLVI) value, which is found immediately after the memory timing string for a given mode, with the first 2 bit part of each 4 bit binary word in the lookup table, and selects the first one which is EQUAL or GREATER in value. To ensure proper operation with the above example table, the PLVI values would be expected to be set at 78 for 2D, 82 for Throttling and 8C for 3D modes.

Using the above GPU volts table example,

(hex 78)/100 or 120/100 = 1.2 = volts level 04
(hex 82)/100 or 130/100 = 1.3 = volts level 05
(hex 8C)/100 or 140/100 = 1.4 = volts level 06

This shows that GPU volts in 2D as set by level 04 is 1.2V, and in Throttling mode as set by level 05 is 1.3V and finally 3D as set by level 06 is 1.4V. You can however interchange any of the 4 bit values, and thus set 2D GPU volts at 1.4V if desired.

The highest available 07 volts level is used in a 5950u bios, for setting GPU volts at 1.5v, in order to run at higher speeds. And when present, is represented by "96 07" in the "3D" position of the table. Although not normally used by either 5900nu,5900u bios's, there is no reason why either can't have the GPU volts set at the 1.5v level of a 5950u.

Therefore in total, a 5900nu, 5900u or 5950u bios can be modified to make GPU volts in 2D, Throttling and 3D modes anywhere from 0.8 to 1.5v (volts levels 00 to 07).

Also, the lookup table structure allows the scanned number of functional, or mode, choices to be increased or decreased by changing the first "03" value. Increasing it to "04", for example, enables a new GPU volts choice of 1.5v to be achieved by simply adding "96 07" into the table; or maybe a new 1.1v choice by adding a "6E 03".

However, because of how the Driver scanning and selection process works, it is necessary that the lowest volts choice be at the table start, and thereafter in ascending order up to the highest choice being at the end. And, not adhering to this rule can cause real problems. For example, if you set the low end of the table at the highest value of "96 07", then no matter what PLVI value is set in a bios, the driver will always select "96" and thus set GPU volts at 1.5 for all modes; simply because the Driver looks for first value that is equal or greater than PLVI.

And it is important that once the table structure is fixed, including number of choices and values offered, the PLVI value for each given mode must also be updated accordingly.


©. MEMORY LATENCIES.
~~~~~~~~~~~~~~~~~~~~~~
Almost as an extension to each of the three speed tables, and for the sake of simplicity, is a 28 bit binary string for controlling memory timing. A typical sequence for a 5900nu bios is "040205150017000E000707030403", whereas a 5950u can be "04030517001A000F000808040503".

Changing this string to "040204110013000B000606030404", which is typical of the tighter timing control of a XT type bios, can give some performance improvement. The change must be done to the binary sequence which runs concurrent to each of the three speed tables. A byproduct of the tighter timing can be a reduction of up to 5% in the ability to overclock memory speed.

Nearer the end of a bios file is a table of memory latency values, made up of eight 8 bit binary words. Normal values for a 5900nu are "07 00 0F 43", where both 5900u and 5950u are "07 03 0F 43". Some trials have shown that improved performance can be got by reducing the 43 to 40. The change must be made to each of the eight binary words in the table.

For cards with 128Mb memory, some extra performance can be gained by changing every "07 03" sequence to "07 00". Making a final latency of "07 00 0F 40".



2. FX5900XT/SE/LE/LX/SP etc.
~~~~~~~~~~~~~~~~~~~~~~~~~~~~

(a). SPEEDS.
~~~~~~~~~~~~
Changing speeds in a XT types bios is the same as above for 5900nu, 5900u and 5950u bios's.


(. GPU VOLTS.
~~~~~~~~~~~~~~~
Closely following the three speed tables, is a Lookup Table for setting GPU volts of the 2D, Throttling and 3D modes. The main parts of the table are typically laid out as a 18 Bit binary string as follows,

03 00 03 78 01 82 02 8C 03

The first three 2 bit values of the string describe structure, where the first "03" shows that the table has three choices, and the second '03' indicates each choice can have a max of 00 to 03 (or 4) possible volts levels; in this instance equating to the range 1.1 to 1.4v in 0.1v steps.

The three 4 bit binary words following the second '03' show the actual values set for this bios, where the first two bits of each 4 bit word is only an indicator of volts expected (found by converting to decimal/100), and the next two bits of each 4 bit word actually set the GPU volts level.

To select GPU volts, the driver compares a Performance Level Volts Indicator (PLVI) value, which is found immediately after the memory timing string for a given mode, with the first 2 bit part of each 4 bit binary word in the lookup table, and selects the first one which is EQUAL or GREATER in value. To ensure proper operation with the above example table, the PLVI values would be expected to be set at 78 for 2D, 82 for Throttling and 8C for 3D modes.

Using the above GPU volts table example,

(hex 78)/100 or 120/100 = 1.2 = volts level 01
(hex 82)/100 or 130/100 = 1.3 = volts level 02
(hex 8C)/100 or 140/100 = 1.4 = volts level 03

This shows that GPU volts in 2D as set by level 04 is 1.2V, and in Throttling mode as set by level 05 is 1.3V and finally 3D as set by level 06 is 1.4V. You can however interchange any of the 4 bit values, and thus set 2D GPU volts at 1.4V if desired.

Other than some manufacturers initial entry XT cards based on a 5900nu, there is no direct readaccross to a 5950u GPU 1.5v option. A simple check could be that if the lookup table sequence in a original XT type bios indicates 07 volts levels, then it may be 1.5v capable, whereas if it only shows 03 levels it is not.

A XT type bios can still however be modified to set GPU volts in 2D, Throttling and 3D modes anywhere from 1.1v to 1.4v (volts levels 00 to 03).

Also, the lookup table structure allows the scanned number of functional, or mode, choices to be increased or decreased by changing the first "03" value. Increasing it to "04", for example, could enable a new GPU volts choice of 1.1v to be achieved by simply adding "6E 03" into the table.

However, because of how the Driver scanning and selection process works, it is necessary that the lowest volts choice be at the table start, and thereafter in ascending order up to the highest choice being at the end. And, not adhering to this rule can cause real problems. For example, if you set the low end of the table at the highest value of "8C 06", then no matter what PLVI value is set in a bios, the driver will always select "8C" and thus set GPU volts at 1.4 for all modes; simply because the Driver looks for first value that is equal or greater than PLVI.

And it is important that once the table structure is fixed, including number of choices and values offered, the PLVI value for each given mode must also be updated accordingly.


©. MEMORY LATENCIES.
~~~~~~~~~~~~~~~~~~~~~~
Almost as an extension to each of the three speed tables, and for the sake of simplicity, is a 28 bit binary string for controlling memory timing. A typical sequence for a 5900XT bios is "040205110013000B000606030404".

Changing the sequence to "0301040C000F0009000505020303" has shown to give some performance improvement. This particular string was found using a Prolink FX5900XT GL. The change must be done to the binary sequence which runs concurrent to each of the three speed tables. A byproduct of this tighter timing can be a reduction of up to 3% in the ability to overclock memory speed.

With the exception that memory latency in a XT bios may be at "07 03 0F 03", changes are the same as for the 5900nu, 5900u and 5950u above. So, in this case the last "03" in each of the binary words would be changed to "40"

For cards with 128Mb memory, some extra performance can be gained by changing every "07 03" sequence to "07 00". Making a final latency of "07 00 0F 40".




@ jimmor v2.3c

data/avatar/default/avatar04.webp

55 Posts
Location -
Joined 2003-05-03
Hi Jimmor
Curiosity got the better of me so I tried upping the volts.
It was already set to 1.4V max so I changed to 1.5V max
This also made me realise that Rivatuner reports which voltage 'level' is in use (1 to 7) and they are not actual volts, oops.
I know I found the right place in the BIOS as setting the value incorrectly prevented 3D apps form starting.

The change in volts didnt improve my clocks so tried the MSI 5950U bios as you like that one. It is the best BIOS I have tried so far, allowing me to remain at 480MHz Core and push the Ram from 935 to 960, but the net result was no performance increase (due to relaxed ram timings) and more heat for my card (and no TV out) so I've gone back to the stock BIOS again. It looks like I've near maxed my card out anyway.

Oh well, was worth a try cheers for the guide.
I also spotted another thread you started some time ago which generated a lot of useful answers.
I did find the guide took a lot of reading to get to grips, but ultimately is a great post.

data/avatar/default/avatar02.webp

8 Posts
Location -
Joined 2004-09-17
OP
Hi Chernobyl,

Unfortunately since all cards are different, even when from same manufacturer, it is not always possible to gain the same big improvements in performance that others seem to achieve.

Also, as you have found, where things like TV-out are important, best way forward is usually to mod your original bios.

And you are right, the performance of the MSI5950u bios was limited by its memory timings. Performance can however be easily improved by making simple changes in the bios, but wouldn't have mattered in this instance, since the MSI bios was not compatible with your cards TV-out.

More importantly, as you are now sporting a much better 6800GT card, there is no real need to be bothering about what can be done with a lesser FX5900 !

data/avatar/default/avatar04.webp

55 Posts
Location -
Joined 2003-05-03
hehe exactly
Only installed the GT card yesterday!! What a card.
Thanks to your guide, I tried a bios mod to up the core voltage on the GT.
Sadly it gave only a tiny benefit.
This card hasnt bedded in yet though, so in a few weeks I will try again.

Incidentally, I have made a very quick method of flashing your BIOS in windows using nvflash442 and some crafty shortcuts.

Create a batch file called flash.bat and put the following in it:

nvflash442.exe -f %1 -p -u -2
@ echo .
@ pause


When you run this batch file it will take the name you give as a parameter and flash your card with that rom name.
ie run flash.bat and specify the rom name after:
flash newbios.rom

You dont ever need to touch a command promp tif you do this:
Create a shortcut to flash.bat and edit the ""properties"". In there you can specify the parameters to use in the 'Target' box

ie
C:BIOSGTflash.bat orig.rom
to flash your card with orig.rom

Double click the shortcut to flash your bios. Edit the shortcut to use different roms.

No doubt you knew this, I thought I'd mention it for those that dont like DOS.

Cheers

data/avatar/default/avatar02.webp

8 Posts
Location -
Joined 2004-09-17
OP
Chernobyl, owning a 6800GT is quite special at the moment, so hopefully for some time to come, just enjoy all the performance benefits it gives to todays games !

And I use DOS batch files all the time, so I know a bit about them.

However you are right, putting info on how to use them for flashing or otherwise in forums like this is always a good idea as education for newbies, etc !

My only comment would be that most people these days are running OS's like winXP/2000, which have no real DOS facility. So, the nvflash program, being DOS only, can be run on its own at a command prompt, or using Batch file, only after booting with a DOS bootable Floppy/CDROM. Or of course by putting the appropriate nvflash commands in a booting "Autoexec.bat" file saved to the floppy/CDROM.

Also, even where a programs permits flashing a vga bios from windows, I always recommend against it because a bad bios flash while live can cause much more serious problems than would have happened if it were done as a low level task in DOS.

data/avatar/default/avatar04.webp

55 Posts
Location -
Joined 2003-05-03
Hi Jimmor
Give it a try using nvflash422 in XP.
You will be pleasantly surprised to see it works great !

All NT based OS's (NT, 2K, XP ...) have a Command Shell designed to give many features of DOS while not allowing direct access to the hardware for normal use (unsures security and stability). It seems at least version 442 of NVFlash works fine in the XP Command Shell.
Using this method makes the flashing process soooooo much faster/easier!

A bad flash in windows can do no more damage than a bad flash in DOS. The recovery process will be the same and is dependant on the cards condition.

The BIOS is used to initialise the card. Once in windows, all functions to from the gfx card are handled by the NT HAL and Windows gfx driver. Flashing while in Windows will not affect the cards operation until the next boot.

This is a potentially hot topic and I respect your belief in being safer using DOS. Wise advice to give.

Cheers

ps for those wishing to know why we are debating whether or not to use windows for flashing:

The flash process must have constant use of the CPU. To interrupt the flashing process can result in an incomplete flash and a card that will not display anything.
Booting from DOS with no TSRs (other programs) etc running is almost a guarantee that nothing will impinge on your flash
Flashing from Windows is a potential scare because other programs will be running and overclocking software may be active (disable these and declock your machine before attempting ANY flash, unless you really know your stuff).
If you check task manager for some time while your system is idle you can see how much CPU is used. My machine sits below 2% while idle. I cannot give a hard figure which is safe, but if your cpu usage EVER spikes to 100% while idle you are sure to have some problems.
Make sure you have a PCI gfx card handy if you wish to try this no matter which method you use.
Jimmor has stated this in his guide.

And remember, flashing CAN kill your card !
Flash as little as you can to get the desired result. BIOS's can die like any other chip. Always backup your original BIOS before starting.

data/avatar/default/avatar02.webp

8 Posts
Location -
Joined 2004-09-17
OP
Hi Chernobyl,

Failed to flash my vga cards bios using batch file through the WinXP command shell. Always failed with displayed error indicating that program must be run in DOS. Tried with versions of nvflash program ranging from 4.15 to 4.42 with same result.

So with my winXP setup, the nvflash program can only be run in DOS. But I always do it that way anyway, as I prefer the relative safe feeling that DOS gives to all my bios flashing.

And, since you obviously understand how to minimise the possibility of windows causing glitches during a bios flash, there is every reason that you should also feel reasonably safe with flashing.

However for newbies to the subject, I would always recommend flashing of all bios's be done whilst booted to DOS. It is a much more stable environment than windows. And as you say, Flashing CAN kill a card; so no real reason for a newbie to take more risks than necessary. Or at least not until they understand more about the uncertainties of their OS's.