K6WCX - Write Combining with an AMD K6-3+ and a Voodoo 3 3000

The program SETK6v3 (SETK6D.exe for dos) will list available PCI Framebuffer addresses for the memory on my Voodoo 3 3000 (16mb). You can then use the program K6WCX to define them and the memory size which will enable Write Combing and thus a nice boost to FPS in benchmarks and games like Quake and PC Player Benchmark.
It should be noted that this only worked for me in Extended memory mode but not in Expanded.

C:\K6WCX\K6WCX.EXE C8000000 128

The “C8000000” parameter is the 2nd address reported by SETK6D which seems to be the one that works for me. The other being “CC000000” which although could be mapped did not boost performance.
The other parameter “128” is the amount of allocatable memory available multiplied by 8. In this instance 8 x 16 MB on the Voodoo3.

The performance boost gained is surprising and almost doubles frame rates in some cases.

PC Player Bench at 640×480 goes from 20 to 39.9 fps.

Quake at 640×480 also sees a good increase in fps from 12.8 to 18 fps.

Doom benchmark on max details for Fast PCs timed 2134 gametics in 495 realtics with out WC enabled and 2134 gametics in 517 realtics with.
To calculate that into fps its “35*2134 / realticks”. The opposite happens here and we loose some frames, with Write Combining off we get 150.8 fps but enabled only 144.4 fps.

A quick runabout in System Shock showed some improvement in 640×480 at max details, but the extent of improvement in other games requires more thorough testing.
So in summery it seems like a handy feature which is able to squeeze a little more performance out of those graphically intensive later 3D DOS games, if your CPU supports it.

None of this would have been possible with out links to the tools and a great breakdown of how they work from Phil’s Computer Lab, I suggest you check him out on youtube and grab the tools mentioned in this post over on his site.

Dos Graphics Boost Tutorial – Phil’s Computer Lab | Phil’s Computer Lab Website | Phil’s Computer Lab on Youtube