Part Round-Up: The RAM

A project log for Reverse-Sleeper Gaming Rig

It's an idealized DOS gaming rig, but instead of sporting the cool, retro, beige case, it fits well alongside a PS4 or a new TV.

Will PrestonWill Preston 03/16/2017 at 04:410 Comments

This part was obtained on March 9, 2017.

The RAM I have is an interesting case. On one-hand, I paid for 16MB of RAM. I verified the motherboard supported this configuration before purchasing. Just one issue:

They sent me 256 MB EDO SIMMs. Rather, they sent me two 128MB sticks. Fortunately it was 60ns in its timings, which was compatible with my board. But 256 megabytes? Far more than I was expecting, and certainly enough to make this a cutting-edge information-age powerhouse (in 1994). The biggest problem, though: The motherboard doesn't support any more than 128MB of RAM, per the manual. RAM must also be installed in pairs--a single stick cannot be used.

Bit of a pickle, if I do say so myself.

What's a man to do in a situation like this? I didn't want to spend more money on additional RAM, but surely I could find a way to make this work. I ended up rolling with this configuration regardless, and interestingly enough: the computer boots. However, it reports that it has 65536 KB of RAM (in binary, 1111 1111 1111 1111 KB plus one).

This didn't seem to be much of an issue, though I was wary of the potential side effects if a poorly coded program tried to poll for the amount of RAM available, underflowed to 0 KB available, and then asserted that "you have no expanded memory!" This did end up happening with Wing Commander in later tests (preventing me from configuring it to work with the Sound Blaster)--although Wing Commander also suffered from being unplayable due to it expecting the fixed 4.77 MHz of the 8088 that would have been common on most early PCs of the day.

Oh well. It's the seller's problem now, because the computer works and I'm fine with it this way. There exists a handful of TSR programs that can be used in DOS to fix RAM or clock speed issues with older programs.

A small bit of history and trivia for you. This part isn't relevant to the project, but if you like classic computing like this, particularly in the IBM PC world, you may find this interesting.

This RAM specimen is EDO, or Exptended Data Out. EDO is typically optimized for a 66MHz bus speed, which the Pentium MMX--this machine's CPU--is clocked at on the bus, making it a perfect pair. EDO was a breakthrough in that it allowed other address reads to take place while the previously queued read was still in progress, allowing faster CPUs to utilize less latency (and thus incur significantly less slowdown when the CPU's cache fails).

The first chipset to optimize for EDO was the Intel 430TX chipset, which also happened to support PIIX3 (PCI, ISA, USB, IDE, and a bunch of other nice features)... which the motherboard used just happens to be one of the first to support.

It's truly a match made in heaven, and totally by accident, because I didn't learn any of this before building this machine.