On VESA Local Bus Speeds, Wait States, And 486 Graphics Performance Tweaks
I found myself delving into the murky world of the 486 again just lately, more specifically my upgraded RM Window Box (pictured above). This bad boy boasts an MSI MS-4138 motherboard, Intel’s top-of-the-range i486 DX4 processor clocked at 100MHz, 16MB of RAM, an ESS AudioDrive ES688 OPL3 sound card, and a 1MB Avance Logic ALG2228 VLB video card. It’s an absolute screamer — by 1994 standards.
(As an aside, the motherboard,CPU, graphics card, sound card, and case were all indeed manufactured in 1994. A deliberate decision and no mean feat considering this was built from parts in the intervening years… But maybe I’ll write another post about that another time.)
Anyway, it’s that video card that’s been troubling me, particularly in regard to eking the absolute best performance I can out of the thing. There isn’t a huge amount of information on VESA Local Bus out there on the internet, and a lot of conflicting information about bus speeds and wait states. It seems then that the only option is to try every possible combination of jumper settings and benchmark them all.
In this series of tests I’ll be fiddling with 3 jumpers —two on the motherboard and one on the graphics card itself:
- JP2: Motherboard jumper that toggles between 0/1 VESA wait states. Open is 0 and Closed is 1, apparently.
- JP3: Another motherboard jumper, marked “CPU Speed” this time. Open is <= 33MHz, closed is > 33 MHz.
- J4: This one is on the card itself. Open is 50MHz, Closed is 33/40 MHz. It looks like there’s also a J3 on some versions of this card which mine doesn’t have the headers for. It’s probably connected to the bank of RAM that it also doesn’t have.
For the benchmarks I’m using the excellent DOS benchmarking suite from Phil’s Computer Lab. I’ll be running tests 1–9, as they’re the ones concerned with graphics. I’ll skip the higher resolution Quake benchmarks as this PC struggles to run the game in the lowest resolution as it is.
I’ll be starting from a cold boot each time with the same fairly minimal set of drivers and TSRs the machine is already configured with. As far as OS is concerned, of course it has to be MS-DOS 6.22.
While running each benchmark as per Phil’s instructions, I collected the results into a table (sorted with highest numbers at the top):
All results are in FPS (Frames Per Second). Some of the benchmarks give a “score” as well but it’s pretty meaningless for my purposes.
First up, I was amazed at how consistent the benchmark results were across multiple runs. I’d have at least expected some very minor variations, but apparently this wasn’t the case.
On the card itself, it seems the slower 33/40MHz setting (J4 closed) actually means that the card is running faster… Mysterious, but perhaps I’m missing something obvious, or maybe the card is mismarked.
I was also really surprised that the jumpers that I assumed would have the biggest impact on performance — those governing the VLB settings on the motherboard — made absolutely no apparent difference whatsoever!
I can only assume that there is some sort of autoconfiguration happening, or that the motherboard jumpers only really make a difference when multiple VLB slots are in use. The card is in the MASTER slot at the moment, which seems right. Unfortunately I don’t have the manual for this motherboard and information available on the internet is limited to just the jumper settings, which is at least better than nothing.
I’ll leave the jumpers on what seems like a sensible setup from the higher performance options — J4 closed (of course), JP2 open and JP3 closed. I’ll explore some BIOS settings next and see if I can coax a few more of those elusive FPS there, but I’ll save that for another post.
Note On MTRRLFBE / FastVid
Some forum posts I found suggested that these utilities have a big impact on performance on Pentium and above systems in VESA video modes. They were included in the benchmarks so I decided to try them out, although I honestly wasn’t expecting much.
… And as suspected this system isn’t supported by these utilities as it’s a 486, but for an extra minute or so of my time it was worth a try. Maybe this information might save someone else some wasted time and effort in future.