Tuesday, September 11, 2012

Combining the Right Vintage Hardware

Would you really put a CGA card in a 486?  Or a Sound Blaster 16 in an IBM PC?  People have done it, but its just plain wrong.

A.  IBM PC & XT

As the familiar story goes, in the beginning IBM made the PC.  And the world received the PC and deemed it good.  IBM offered two choices of video adapter, the Monochrome Display and Printer Adapter (MDA) or the Color/Graphics Adapter (CGA).  If you wanted color output or graphics, you chose the latter.  If you wanted to run only text-based applications, you chose the former.

Few people saw this computer as a gaming machine, although with the right hardware it was as capable a gaming machine as the Apple II.  It used an 8088 processor running at 4.77MHz, supported a maximum of 640KB of RAM and a socket for an 8087 math coprocessor.  It had five 8-bit ISA expansion slots, and the XT had eight.  Even so, the machine was slow, really slow.  If you are going to use an IBM PC 5150 or XT as a gaming machine, keep these limitations in mind.

So for an IBM PC or XT or a clone, essential gaming hardware to have in the machine is :

1.  Memory Expansion

PC - 256KB or 384KB memory expansion; XT - 640KB mod.

The PC, most commonly seen with 256KB on the motherboard, required memory expansion boards to reach a full 640KB.  IBM's Memory Expansion Adapters maxed out at 256KB per board.  The IBM XT originally came with a 64/256KB board, but a trivial modification would allow it to support 640KB by swapping chips.  Competitors like AST's Six Pak Plus allowed for 384KB and added a serial port, a real time clock, a parallel port and could be upgraded to support a game port, which leads me to :

2. Gameport

If you want to play games on the PC, you need a gameport card.  IBM's official name for its card is the Game Control Adapter, but any card should work fine.  Sound card gameports work as well so long as the sound card is not Plug-n-Play.

3.  Floppy Drives and Controller

While this should be a no-brainer, you will be using lots of floppies on these machines.  Ideally, since floppy controllers only support two internal drives, you will be needing two drives.  Virtually all IBM PC 5150s come with two 5.25" floppy drives, and XT's usually come with two Full Height 5.25" drive, but later models come with two Half Height 5.25" floppy drives and usually a hard drive.  IBM PCs will work with a 3.5" floppy drive, but will treat it as a 720KB drive without a rare HD floppy controller.  You will need to use DOS 3.2 or better to recognize 80-tracks.  IBM PC and XTs are designed to accept only full-height drives, you will need to find some mounting hardware for half height drives or faceplates.

If you are running DOS off a floppy disk, then drive B will the drive you use to run DOS game software.

4.  Graphics

The CGA card is really the only choice here, although you can run an MDA card for text if you cannot stand CGA snow.  Many early games take advantage of CGA's composite output to display more colorful graphics on a TV or color composite monitor than an RGB monitor.  In some weird reality I could see someone running a triple-display with an IBM 5151 Monochrome Display, an IBM 5153 Color Display and a Color Composite Monitor like the AppleColor Composite Monitor IIe.

5.  Operating System : IBM PC-DOS 3.3

While 3.2 is perhaps the more historically accurate OS, 3.3 is more useful due to the support for multiple hard drive partitions.

Not essential, yet useful hardware include :

1.  Hard Drive and Controller

The IBM PC has a 63.5W power supply, so running a huge Seagate ST-412 is out of the question, but its successor, the Seagate ST-225, should be doable.  Later drives almost invariably take far less power, so you should be fine.  Since the PC has only 8-bit slots, you will be stuck with whatever controller you can find, unless you build an XT-IDE controller of find an ADP-50L.  Both cards will allow you to use standard 16-bit parallel ATA devices in an 8-bit slot.  They can be used with a compact flash card, which is ATA compatible with a passive pin adapter.

2.  NEC V20 CPU

Replacing your Intel 8088 with an NEC V20 CPU will increase performance by 10-15%.  It does break the occasional game like Championship Lode Runner.  Plus, if you are looking for the exact PC speed, it does not slow down.

3.  Mice

Most applications that run well on an IBM PC were made before the days where the mouse was an ubiquitous input device.  Nonetheless, when an application or game, like Tass Times in Tonetown supports it, it is always appreciated.  Use serial mice, since they are the closest thing to a standard and the CuteMouse driver.

Not recommended :

1.  EGA/VGA Graphics Cards

Most EGA cards offer decent CGA compatibility, but do not expect them to work with games that tweak the CGA registers.  VGA cards usually are less compatible.  Running EGA or VGA games on a 5150 is often too frustrating because the hardware is so slow.

2.  Expanded Memory Boards

By the time games were taking advantage of EMS, it was 1990.  The PC and XT were way too slow.

3.  Math Coprocessor

While it will not hurt to insert an 8087, I would not go out of my way to do it.  Games really did not support the coprocessor until the mid 90s.  Early games that do include SimCity and Falcon 3.0.  SimCity is no fun on an XT.

4.  Sound Cards & MIDI

The first games supporting sound cards like the Adlib, C/MS Game Blaster and midi devices like a Roland MT-32 were not released until 1988, almost seven years after the release of the PC.  You might as well try making a 486 play Quake II.  King's Quest IV, even with CGA, on a PC is no fun.  The number of games that are playable on an PC or XT and support sound cards is a very small number.

5.  Modems

Games supporting modem play began in the late 80s, and if you can find someone who is willing to play with you over a telephone line, Battle Chess or Modem Wars will take an eternity to carry out commands.

B.  IBM PCjr.

Normally, I say you should not play 16-color games on an 8088 machine.  I have two exceptions to this rule.  First, if the game is using a tweaked CGA mode like Round 42, Styx or ICON: Quest for the Ring.  Second, if the game has specific support for the PCjr.  The PCjr. is mostly self-contained, yet there are a few things to make life easier :

1.  PCjr. Joysticks

Gaming is easier with a joystick, and the PCjr. has custom joystick ports.  Regular PC-compatible joysticks are fully compatible with a pin-adapter.

2.  Memory Expansion

The PCjr. was only supposed to have 128KB RAM, but even IBM realized that this artificial limitation was absurd.  And as memory expansions did not have to share access between the CPU and the video controller and had dedicated DRAM refresh circuitry, the machine ran faster than a PC or XT when the expansion was used.  Many self-booting games of course, did not know about the expansion RAM.  Most memory expansions came in 128KB sidecars, but could be modified to support 512KB.

3.  Keyboard Replacement

If you are using the original PCjr. keyboard with the unlabeled rectangular keys (the chicklet keyboard), you should replace it with the official replacement PCjr. keyboard, or make a cable to connect an XT keyboard.  Typing on the chicklet can lead otherwise sane, well-adjusted people to commit depraved acts against computer hardware.

4.  Cartridges

Imagic and Activision ported some of their best games to cartridges, and this is the only way you are going to run them.

5.  Monitor

If you can find it, get the IBM PCjr. Display, Model 4863.  It supports 16 colors, utilizes the PCjr.'s unique cable output and has a built-in speaker.  The 3-voice sound only comes out of the monitor port or audio jack.  The internal beeper is not a speaker cone but a tinny tweeter that fails to produce digitized sound with any sort of volume.

6.  Operating System : IBM PC-DOS 2.1

The stock DOS for this system is just fine to run DOS programs.  If you get a hard drive you will need something more advanced.

Recommended and Non-essential Hardware is the same for the IBM PC.

Virtually all PCjr. enhanced games are self-booters.  Most DOS 16-color games support EGA or Tandy 1000 and many explicitly exclude PCjr. support.

C.  IBM AT, XT/286 & Clones

1.  Memory Expansion

The IBM AT comes with 512KB built into the motherboard, but can use 128KB on an expansion card.  Most 16-bit extended memory cards can fill the remaining hole.  The XT/286 has 640KB on the board.  However, at 6 or 8MHz, many of the programs that benefit from Expanded or Extended Memory are still beyond these systems.  Cards tend not to work well past 10MHz.

2.  EGA Graphics

With a 286 machine, you should really be using an EGA graphics adapter.  IBM's adapter requires a memory expansion board to increase the memory from 64KB to 256KB, but many third party adapters have the maximum built in.  128KB is needed for 640x350x16 graphics.  Also needed is an EGA monitor like the IBM 5154 Enhanced Color Display.  IBM's adapter is only an 8-bit device, 16-bit cards will provide speedier video, but at this stage CPU power is more important that graphics speed.  VGA is easy to add and allow for use of modern monitors, but VGA games tend to be more demanding than what these machines can handle.

3.  Sound Cards

At this point, games which use Sound Cards will run playably on these systems, so put them in.  An Adlib, a Game Blaster, an 8-bit Sound Blaster, a Roland MPU-401, anything you can find will likely run due to the 16-bit ISA slots.  Avoid ISA PnP cards, their software tends to require a 386.

4.  Multi-I/O

A hard drive is essential at this stage, but due to the 16-bit ISA slot you have a multitude of options.  There are plenty of cheap multi-I/O boards that integrate HD floppy controllers, IDE, serial, parallel and gameports.  Unfortunately, without a BIOS ROM, your hard drive support will be extremely limited in an IBM system.

5.  Network Card

A 16-bit ISA network card is easy to find, and they have several advantages.  First, you can use a network to transfer files.  Just set up an FTP on your main machine and use a small FTP client found in IRCjr.  Also, the ROM socket can be used to expand your hard drive choices using the Universal XT-IDE BIOS.  By burning the ROM and plugging it into the card, you have a BIOS extension capable of recognizing all that storage on your modern machine.

6.  Mice

Mice are really starting to become supported in late 80s games, no gamer should be without one.  If you have a machine with a PS/2 connector, the universe of mice has become greater.

One very useful addition is any kind of CPU accelerator.  Intel Inboard 386/AT is an example of one product designed to work in an IBM AT.  101 Keyboards are also useful, but not yet indispensible (the 84-AT keyboard has a very impressive feel)

Unnecessary investments : 16-bit Sound Cards, High Density drives, 80287 coprocessor.

7.  Operating System : IBM PC-DOS 3.3 or 5.0

Depends on the size of your hard drive, >32MB is best used with 5.0.

D.  Tandy 1000

1.  286 Machines

The upgrade path for Tandys that use 8088s or 8086s often do not satisfy for the games that really use 320x200x16 graphics.  286 machines are really recommended if you wish to run the whole breadth of software which can use Tandy graphics and especially Tandy sound.

2.  XT-compatible Keyboards

The Tandy 1000 TL/SL/RLs come with a Tandy Enhanced Keyboard, which in my opinion does not have great keystroke action.  I prefer an IBM Model M, and the keyboards made from 1985-1992 work very well with these machines.

3.  Memory Expansion

It is extremely important to upgrade these machines to their maximum supported motherboard limit.  This is  768KB for the 286 machines, 640KB on the lower machines.  Extended memory above 1MB is not supported, but Expanded memory is, if you can find a board that will fit inside these machines.  They are extremely rare, and the games to run them just are not quite there yet.

4.  Hard Drive Controller

8-bit Hard Drive Controllers like the ADP-50L and Acculogic S-IDE used to be impossible to find, but now with XT-IDE, the use of hard drives can now be realized in these systems.

5.  Sound Cards

See the AT entry above, just avoid the Sound Blaster, Thunderboard or any other card that camps out only at DMA1, which is also used.

6.  CPU Accelerator

Products like Make-it-486 are every useful here, as the speed boost will be much appreciated even in 16-color titles.  They can give you 386SX performance, although not the memory mapping features.

Useful cards : Network cards (useful more for the file transfer capabilities, use one like an NE1000 or Intel EtherExpress 8/16), parallel cards (to avoid the card edge parallel ports). EGA card (to run games like Commander Keen which do not work with Tandy graphics)

7.  Operating System : Tandy DOS 3.3 or MS-DOS 5.0

See above

Unnecessary : See AT entry above.

E.  386 Machines

1.  Memory Expansion

Usually 386 boards will require two or four 30-pin SIMM modules to expand the memory.  4-8MB is a good amount for a 386 machine.

2.  386DX

These are often socketed while 386SX CPUs are almost always soldered in and not upgradeable.

3.  Fast 16-bit VGA

At this point, VGA is the only choice.  Avoid slow cards from Trident or OAK Technology.  The Tseng ET4000AX is an excellent choice for fast, compatible VGA.  While SVGA is not yet a requirement, a having  a 512KB card is usually sufficient for the standard SVGA modes.

4.  Sound Cards

A Sound Blaster Pro, Pro Audio Spectrum 16, Gravis Ultrasound are all great choices.  Roland MPU-401 is also highly recommended.  MT-32/LAPC-I/CM-32L is still the better option, but select games are starting to use General MIDI.  A Roland SCC-1 is very useful.

5.  HD Floppy Drives

Should have two, one for each size of disk.

6.  Multi-I/O, Network Card, Mouse & 101 Keyboard

7.  External Cache

Good boards can support up to 128-256KB external cache.  Adding external cache will really boost performance.

See above

8.  Operating System : MS-DOS 5.0-6.22

Absolutely necessary to gain access to the High Memory Area and Expanded Memory Emulation.  Windows 3.1 is not yet recommended, the performance needed when playing games just is not there yet.

Useful items include a CD-ROM drive, 80387DX coprocessor, SCSI controller (faster than 16-bit IDE)

F.  486 Machines

All the above, with the following notes :

1.  Memory Expansion

72-pin SIMMs, FPM RAM are beginning to be seen here.

2.  486DX

486SX processors have the coprocessor disabled, use a DX processor to get it back.

3.  CD-ROM drive

At least 4x, but any generic IDE or SCSI CD-ROM will work fine.

4.  VLB or PCI SVGA

A fast card will use either one of the 32-bit buses.  Early PCI implementations tend to be buggy, but VESA gets unstable the more cards that are added to the bus.

5.  SCSI or VLB IDE

VLB IDE can be very fast, but stability is an issue.  ISA SCSI may not be quite as fast, but it is rock solid stable and faster than ISA IDE.

6.  Sound Cards

A Sound Blaster 16 or AWE32/64 is a good choice for a main card.  If you are not playing older games, a Roland MPU-401 is no longer essential.  General MIDI, in the form of waveblaster daughterboards or external MIDI modules, is preferred for music.

7.  External Cache

While not quite as impressive as on the 386, due to the internal cache of the 486, it can really help you get playable framerates in DOOM.  256KB should be the minimum

8.  Operating System : MS-DOS 5.0-6.22 & Windows 3.11

See above, now you can enjoy Windows 3.1 games.

G.  Pentium

1.  Solid PCI Video

A S3 Trio64V+ is a good, compatible choice, but there are many others.  Some like the quality of the Matrox Millenium.  AGP is yet to make its appearance.  A great VGA compatibility list of PCI and AGP cards can be found here : http://gona.mactar.hu/DOS_TESTS/

2.  3dfx Voodoo

At this point a 3D accelerator is very useful, and the compatible card of choice is the 3dfx Voodoo 1 chip.

3.  Socket 7

Socket 7 boards support just about any Intel Pentium, and can range from 75 to 233MHz, MMX.

4.  External Cache

512KB is the usual amount, 1MB is also available

5.  Network Card

Should be PCI, and the Boot ROM feature should no longer be required as most boards should support 28-bit LBA.

Useful items include a DVD-ROM drive and mpeg2 decoder board (Creative DXR series or Sigma Realmagic Hollywood+)

6.  Operating System : Windows 95 OSR 2.0

OSR 2.0 is necessary for FAT32 support and support for AGP cards, avoid 2.5 as it integrates Active Desktop.

H.  Pentium II

1.  3dfx Voodoo 2 + AGP or Voodoo 3

3D acceleration is now required, so the above boards offer the best compatibility and good performance for the late 90s.  Other good options include a nVidia Riva TNT2 board.  Combining two Voodoo 2 cards in SLI with another 3D accelerator in the AGP slot is highly recommended.

2.  DVD-ROM and mpeg2 Decoder

See above

3.  3D PCI Sound Card

Good options include the Sound Blaster Live! with its EAX support and Aureal SQ2500 with support for A3D 2.0.  If you want solid backwards compatibility without using an ISA sound card, a Yamaha YMF-724 board shines in a BX motherboard.

4.  Intel i440BX Motherboard

Stable, rock solid boards, fast as they come.  Can support CPUs from 233MHz to 1GHz

Operating System : Windows 98SE

1 comment:

Trixter said...

I have two disagreements on your otherwise excellent guide on how to outfit an old PC for gaming:

1. It is not totally pointless to put a VGA card in an XT -- some of them are actually faster than a CGA card and so you get better performance running CGA games. Also, some EGA games are properly programmed and use the hardware latches to drastically speed things up. So it's not entirely pointless. It *is* pointless to try to play 256-color games on an XT though; those are indeed too slow.

2. I don't think anyone should ever bother installing an EGA card unless they are trying to build a vintage AT system for completeness. There is nothing EGA provides that isn't completely superceded by every single clone VGA card. It doesn't help that EGA monitors are as common as hen's teeth.