Tuesday, September 18, 2012

486 DOS Gaming Machine

I put together a DOS gaming machine relatively recently, and while I have posted about it at the VOGONS Forums and The Vintage Computer Forums, I wanted to make sure that all the information was available here on my blog :

I.  CPU



I needed a system that would play most DOS games from 1988-1994.  Games prior to that can be played on my Tandy 1000, and games after that would be better on a Pentium machine.  So I had to pick a CPU that could be flexible, speed-wise.  I chose an Intel 486DX2/66, a very common option for 1993-1994 machines.  This is a standard 486DX2 that runs at 5V and has 8KB of write-through cache.  (There is an sSpec number, SX955, which supports write-back cache.)  It has 168 pins and uses a pin grid array.  Most retail motherboards for the 486 line use socket 3, so this CPU is perfect.  The CPU runs hot enough that a heatsink with a fan mounted on it or blowing at it is recommended.

I did not want to go too high end and use an AMD or Cyrix processor, because it would be easier to put together a Pentium system.  A Pentium, while having superior integer performance compared to a 486, completely outclasses the 486 when it comes to floating point performance.  True 3D space games like Quake use floating point math extensively, and barely run acceptably on the fastest 486-based CPUs.

II.  Motherboard



A proper motherboard is the next part that I needed to obtain to build a working system.  My requirements were for a middle-of-the-road motherboard.  I wanted to steer clear of PCI slots for several reasons.  First, PCI was just being released during the late 486/early Pentium era (1995) and the implementations had not worked all the bugs out.  Second, PCI makes for more complicated system setup.  Third, PCI video cards are much more likely to have VGA compatibility bugs than VLB cards.  Fourth, in no other system would I be able to run a VLB card.  So I had to find a board with two VLB slots, one for the video card, another for the hard drive controller.

Most motherboards I found that were sold as a part, as opposed to a system pull, were bare bones boards.  This means that there were no ports beyond the keyboard port, no headers for ports or drive interfaces, and no integrated hardware like a sound chip.  There would be ISA and VLB slots, the CPU socket, the RAM slots and the cache sockets.  The rest of the board would solely be dedicated to the system chipset.

When shopping for a vintage motherboard, it is critical to make sure you can find a manual for the board.  Even if the motherboard jumper's settings are silk screened on the board, the cryptic information may be difficult to decipher.  I chose a motherboard whose manual, or at least the board settings, was available online.  The motherboard is the ASUS VL/I-486SV2G.  This is the board's layout, from Total Hardware 99 :


This board uses the SiS 85C471 + 85C407 chipset.  One great feature of this board is that it uses standard 72-pin SIMM slots, instead of the older 30-pin SIMM slots still found on many 486 boards.  Only one SIMM is required in a 486 board to have working RAM because SIMM memory is 32-bit.  This board supports Fast Page Mode (FPM) DRAM, but not Extended Data Out (EDO) DRAM.  EDO support may be found on the last 486 boards.

The cache sockets support up to 1MB of cache, but finding nine cache chips of the appropriate speed and pin out is not easy.  Besides, external cache is nice, but more than 256KB really becomes subject to the law of diminishing returns.  However, external cache up to that amount really helps push this board beyond those that did not support external cache, so it was a must have requirement.

The final issue, and one that will not be shown on the diagram, is the board's battery support for the real time clock and saving the BIOS settings.  In 486 boards you will generally find three types of batteries.  First, there are batteries integrated into the clock chip.  This is the Dallas 1287 RTC, and once the battery has been depleted you must replace the chip.  Replacement chips are expensive these days, and I did not want to have to cut into the chip to solder on battery holder.  Second, there are batteries soldered onto the motherboard.  Usually these are three cells held together in a plastic package and are usually referred to as the "barrel type."  The problem with these, apart from needing to remove them from the motherboard, is that when the batteries get old they leak battery acid onto the board, damaging traces and components.  Third are the coin-slot holders, which usually hold a CR2032 3v cell.  These are the best because old batteries can be discarded and replaced without difficulty.  My board came with a CR2032 coin slot holder and keeps the date/time and settings perfectly.  There is a header to connect an external battery, and 4xAA battery packs are easy enough to find with a 4-pin header attached.

When shopping for motherboards, you may have a difficult time finding out what kind of BIOS it has.  Mine has an AMI BIOS, text-based.  The settings are a tad spartan and needed some tracking down to figure out what they do, but most are self-explanatory.  The neat feature about my board is that it supports the Large addressing and LBA modes for hard drives, so I need not be concerned with the 504MB BIOS barrier so frequently seen in 386 and 486 boards.  However, as my BIOS is dated prior to December, 1993, I must use the LBA mode, as the Large mode is buggy.  The LBA mode works fine with my 2GB Compact Flash card.

Other important settings for me is the ability to disable internal and (especially) external cache.  This is without a doubt the best way to implement slowdown.  Disabling internal cache can be done with software programs like cacheon and cacheoff.  Disabling the cache will result in remarkable slowdown, turning that 486DX2/66 into something like a 386DX40.  One performance feature I have noticed is that disabling the external cache will result in a measurable but not remarkable speed decrease and is best for fine tuning slowdown.  But if you disable the internal cache, it seems that the external cache has little effect on performance whether enabled or disabled.

Finally, there is the Turbo function.  My case has a Power button and a Turbo button, and both require a switch that will remember its position.  If your case does not have a turbo button, any switch with a catch and release mechanism can be used.  If using the Turbo function does not appeal, then you can put a jumper over the leads and your system will always be in Turbo mode.  If there is no switch connected or jumpers over the leads, then your system will not function as fast as it should.  The slowdown resulting from turning the Turbo off is equivalent in the benchmarks to disabling internal cache, but in my opinion it is not as smooth.  While Turbo in a 386 machine may actually reduce the clock speed to 8MHz, Turbo in a 486 machine generally inserts wait states from CPU to memory accesses.  However, the CPU is still processing data at 66MHz, so the effect is not uniform and jerkiness in games can result.

The program HIRAM supports this chipset, so you can load it to obtain Upper Memory Blocks without needing to load EMM386 or another Extended Memory Manager.  See my Ultima VII on Real Hardware post for more details.

Here are the fastest speed settings in the BIOS :

BIOS FEATURES SETUP :

CPU Internal Cache - Enabled
External Cache - Ditto
Quick Power On Self Test - Ditto
Boot Up Floppy Seek - Disabled
Boot Up System Speed - High
IDE HDD Block Mode - Enabled
Video BIOS Shadow - Enabled
C8000-CFFFF - Enabled
D0000-D7FFF - Ditto
D8000-DFFFF - Ditto

CHIPSET FEATURES SETUP :

Auto Configuration - Disabled
AT Bus Clock - 1/4CLKIN (33MHz / 4)
DRAM Speed - Fastest
DRAM Write WS - 0 WS
DRAM Write CAS - 1T
DRAM Write Burst - Enabled
Slow Refresh - Ditto
Hidden Refresh - Ditto
L2 Cache Scheme - Write Back
L1 Cache Scheme - Write Back (My 486 only supports Write Thru)
Cache Burst Read - 1T
Cache Write Cycle - 2T
Video Shadow - Cacheable
Fast Reset Emulation - Enabled
Fast Reset Latency - 2 us
Latch Local Bus - T2
Local Bus Ready - Transparent


III.  Video Card



In a 386 or lower system, the user is generally stuck with ISA graphics cards.  486 systems introduced the VESA Local Bus to implement faster access to hardware.  This helps eliminate the ISA bottleneck when playing first person shooters like DOOM or flight simulators like Microsoft Flight Simulator 5.  A VLB card was a necessity, and I especially wanted to avoid compatibility issues with games that used tweaked VGA features.  I chose the Diamond Stealth 24 VLB S3-805.  This card has 1MB of RAM and that is it, but it is enough.  I have had no graphics trouble with games or demos other than the Copper demo, which only works correctly with certain Tseng ET4000AX chips.  There are faster cards and better featured cards, but for what I want to run this card suits me fine.  It can support 640x480x256, 800x600x16 and 15-bit color modes.  It uses an S3 chipset, which includes Windows acceleration and a very respectable DOS performer.

IV.  Sound Cards

In this system, there is no one sound card that can do it all, so I have three in it.

A.  Roland MPU-401 + MIF-IPC-A



If this system were built in 1993, this card and breakout box would not be a contemporary of it.  However, it is the only Roland MPU-401 interface I own.  Its sole purpose is to handle MIDI output to my midi modules, of which I have five :

Roland MT-32
Roland CM-32L
Roland SC-55
Roland SC-55ST
Yamaha FB-01

B.  Sound Blaster Pro 1.0



I went back and forth about whether to put a SB Pro or a SB16 in this system, and I finally decided to keep the Pro.  My decision is based on the following :

1.  It is hard enough to find games that actually support OPL3 features, and many games that support dual OPL2 and OPL3 sound better on the older chipset.  Then as many of the games I play use Roland LA or GS synthesis as their preferred output device, the FM synthesis will not get much use.

2.  Most games this system will run use 8-bit digital sound.  The early 16s have poor sound output quality and insert pops and clicks when used with the 8-bit digital sound methods used by the Pro and earlier cards.

3.  I have a separate MIDI interface card that has no compatibility issues with games or handing note bugs.  The SB Pro's interface is NOT MPU-401 compatible at all, and that what games support (unless they have specific support for Sound Blaster MIDI).  Most later SB16s and all AWE32s suffer from the hanging notes MIDI bug, some more than others.

C.  Gravis Ultrasound ACE



I have discussed the gaming benefits of the Ultrasounds in an earlier post, and everything I said there relevant to this card applies.  The ACE is designed to function alongside a real Sound Blaster card.  The only issue is my card is a 1.0 version and I need to reverse the stereo outputs.  I also need to use a special version of ULTRINIT program to properly disable the joystick interface, even though this card does not have a joystick port.  The Adlib ports are obviously disabled, because this thing does not sound anything like a real Adlib.  However, the Ultrasound SBOS emulator works in this motherboard, meaning it has a working Non-Maskable Interrupt (NMI).  In this system I needed to set the ATCLK to 7.159MHz (or lower) and set separate GUS and MIDI IRQs for the music to work properly in games like DOOM and Epic Pinball.

V.  I/O Interface & Drives

This motherboard has no parallel, serial or game ports and no floppy or IDE interfaces.  I chose the Kouwell  KW-560D, since I could buy it used and a manual with the jumper settings is a must.  This card has 32 jumpers.  It supports two serial ports, (headers required), one parallel port, one game port, one ISA/IDE hard drive interface and one VL/IDE drive interface.  It uses the second VLB slot in this motherboard.

The serial supports 16550 FIFO, the floppy disk controller up to 2.88M drives, the parallel port can be set to unidirectional, bidirectional, EPP and ECP modes.  The gameport should not be used because it only supports 2 axes/2 buttons and is not speed sensitive.  The VLB/IDE port need not have the high speed features enabled if stability is crucial.  All of the above options except the VLB/IDE speed are set strictly by jumpers.  The card has no BIOS socket which can be used to break the 504MB hard drive barrier.  All ports can be disabled.

The VL/IDE interface offers increased speed through the VLB bus.  The 16-bit ISA/IDE tops out at 3MB or so a second, but the VLB interface will allow much more bandwidth.  However, the faster the speeds, the more likely hard drive corruption will occur.  I use a SanDisk 2GB Compact Flash card rated for 15MB/sec with a CF-IDE adapter.  SanDisk makes reliable cards and this was the fastest card available at this speed.  I wanted to keep to 2GB because that is the maximum drive partition size in MS-DOS 6.22.  Drive D should always be the CD-ROM drive, and 2GB should be enough to play most DOS games without having to add and remove games too often.

For my floppy drive, I use an Epson SD-880 combo 5.25"/3.5" drive.  This drive occupies only one 5.25" bay and supports both types of HD disks.  For the IDE CD-ROM, I picked something generic.  It is an HP CD-Writer Plus 9300, which was probably released close to the turn of the century.  It is reliable, not too noisy and will have no trouble with CD-R discs.  Early drives tend to be in tough shape, rely on very complicated mechanisms, use proprietary interfaces, and are not fast.  A universal cable will be needed to output stereo CD audio from the drive to a Sound Blaster Pro, which uses a white connector.

VI.  Case, Monitor, Speakers, Mouse, Keyboard & Joysticks

I bought a generic AT case off ebay, but it was new.  A new case is hard to come by, but this case does everything I need with no fuss.  It supports 2 x 3.5" bays (sideways) and 3 x 5.25" bays.  It has well-sized Power, Reset and Turbo buttons and a keylock.  I did not have any experience with a keylock function until I got this case, and the key has to be in the unlocked position or the machine will not accept input from the keyboard.  This is a desktop case, not a tower, which would have been more typical for a home user of the time.  I put an Intel Inside sticker on it to lessen the generic feel.

My monitor is a generic 17" VGA shadow mask device from KDS.  It has a nicely curved tube and displays color well.

I am using my Cambridge Soundworks Gigaworks S750.  This will change because the left and right speakers are eight inches away from each other, so I have no practical stereo separation.  I will try to get a pair of bookshelf speakers, but they must be in an off-white color to match the ascetic of the system.

My keyboard is an IBM Model M 1391401, the virtues of which I have previously waxed enthusiastically and need not repeat here.

My mouse is a generic three button serial mouse with a switch for Microsoft and Mouse Systems modes.  Microsoft mode supports 2 buttons, but Mouse Systems supports 3.

My first joystick is a Gravis Gamepad for responsive digital controls.  Commander Keen does not play the same with an analog stick.

My second joystick is a CH Products Flightstick Pro with four buttons and a throttle wheel.  If I were a sim junkie I would get a Thrustmaster FCS or FLCS, the Rudder Control System and the Weapons Control System Mark II (Throttle).  I am not, but this offers more functionality over the standard 2 button stick.

I will finish this article with my speedsys results for this system :


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

Saturday, September 8, 2012

Why CD Collections or Compilations Are Not Ideal for Vintage Computing

When I bought a copy of the King's Quest 15th Anniversary Collector's Edition almost 20 years ago, I thought I had everything I would ever need to enjoy the King's Quest Series.  I had the AGI versions of KQ1-3, KQ4, KQ1SCI, KQ5 CD and KQ6 CD.  (KQ7 would have to wait for a later collection).  Isn't that everything?

Well, as it turns out, that is far from everything of King's Quest.  For KQ1 & 2, I only had the DOS-installable AGI2 versions.  No disk images were included to use the previous booter versions of KQ1 and KQ2.  The AGI version of KQ4 was not included, nor was the English disk versions of KQ5 and KQ6, but the French disk version of KQ5 and the German version of KQ6 were.  More details available as to the extras can be found here : http://www.sierraplanet.com/curiosities/kingsquest/collections.html

So what, I still had the ideal, didn't I?  Well, for vintage gamers, the ideal is not always enough.  Lets see what I can come up with for issues :

KQ1 - No PC Booter versions for the IBM PC, IBM PCjr. or Tandy 1000.

KQ2 - No PC Booter version.  Version 2.1 included where there is a version 2.2 (fixes issues with using EGA or VGA on a Tandy 1000).

KQ3 - No issues

KQ4 - No AGI version, later version of KQ4 included; earlier version has many graphical differences, as demonstrated here : http://queststudios.com/smf/index.php/topic,2802.0.html.  I assume they included the patch to fix the waterfall bug.  Original monochrome install program is replaced by the color install program that was introduced years after the game, and most of the graphics and sound drivers in the floppy releases are not included.

KQ1SCI - Original monochrome install program is replaced by the color install program that was introduced years after the game, and most of the graphics and sound drivers in the floppy releases are not included.

KQ5 - No English Disk Version included, either 16-color or 256-color, the CD version features pretty poor voice acting, all from people working for Sierra and it cannot be turned off.

KQ6 - No English Disk Version included, however the very good voice acting can be turned off.  Minor differences in the interface, better opening video.

Obviously, if you are releasing CD-ROMs, the user must have a CD-ROM drive.  But to run KQ5 or KQ6 CD, you have to keep the CD in the drive or use a custom install program and lots of hard drive space.  In 1994 hard drives tended to average around 500MB.  It would not be unreasonable to allow people to install the disk versions and avoid having to keep the CD in the drive.  Having to put up with pauses or spinning when the game looks for the next audio file or video segment is also annoying.

One great benefit to having CDs is that they will not deteriorate like floppy disks.  Of course, if the game is already corrupted by the time of transfer, then the CD really does not serve its archiving purpose.  Ultima II is a good example of this, because by the time it hit the CD compilations, it had suffered from data corruption.  A dungeon entrance was removed as a result.  Also, because the game could only be run from floppy disks, the files were originally given the same names on the Player and Galactic Disks.  Instead of changing the file names and modifying the executable, they simply copied over the files and destroyed the ability to travel to several planets in the original game.   The fix to both issues is available here : http://shrines.rpgclassics.com/pc/ultima2/utilities.shtml

Some companies left manual-based copy protection intact, others removed it, but at a cost.  In the Monkey Island Madness CD, Monkey Island 2; LeChuck's Revenge was included.  MI2 was only ever released as a disk version, (not counting the relatively recent Special Edition or patches to the DOS version based on it).  The original disk version used a code wheel copy protection at the beginning of the game, but the version included on this CD eliminated it.  However, the easy mode was also eliminated, and selecting EGA graphics gave an incorrect monochrome EGA display instead of 16 colors.  A fix for the EGA version can be found here : http://vogons.zetafleet.com/viewtopic.php?t=10452&sid=17c26cf2a1203f1d3c23f85c47001561.  On the other hand, the MPU-401 port is now selectable in the CD versions.

LucasArts also broke Tandy Graphics support in the version of Maniac Mansion included in Day of the Tentacle.  With DOTT, the text with Tandy Graphics selected is corrupted.  However, the Nuke-Em Alarms door is always open.  LucasArts always disabled manual based copy protection in their floppy collection releases as well, so there are no protection screens in the LucasArts Classic Adventures (except possibly for Zak McKracken) and Air Combat Classics .  Of course, you lose out on the experience of using a codewheel, a red filter, or a codebook and the screens supporting them.

Other compilation releases do not always put the latest version of the game in the CDs.  The Leisure Suit Larry Collections put an earlier version of LSL1 in it, so it suffers from the same issue as the KQ2 found in the King's Quest Collections.  The Police Quest Collection has some install weirdness going on.  For copyright reasons, the original version of Quest for Glory I, entitled Hero's Quest, is not included in the Quest for Glory releases.  The Space Quest and Leisure Suit Larry collections do not include the 16-color versions of SQ1 & SQ4, LSL1 remake & LSL5, and PQ3 16-color is not included in the Police Quest Collections.  The disk version of SQ4 is not to be found, being replaced by the buggy and Sierra-staff voice acted SQ4CD.  Nor will you find the disk version of PQ4.  However, the first LSL collection CD contains the disk version of LSL6, but the later collection CDs have the CD version.   On the Roberta Williams Anthology, the version of Lara Bow: Dagger of Amon Ra, is the CD version voiced by the Sierra staff.

In other releases, you do not have the option to install the expansions separately from main game.  So in Ultima VII, you will always have the Forge of Virtue and the Silver Seed installed.  Ditto for the Secret Missions and Special Operations of Wing Commander I & II.  You cannot install the "save space" options for Ultima Underworld or The Lost Files of Sherlock Holmes : Case of the Rose Tatoo.  Nor can you install the 16-color graphics for Wing Commander I & II.  Did you know that Wasteland and Dragon Wars had separate installs for Tandy, CGA and CGA color composite graphics?  The versions on the CDs only works with an EGA or VGA card.

Wizardry 7 had a CD version that was did not take advantage of the CD's storage capacities but did allow you to use separate devices for music and sound effects.  The floppy version and the version included in the Ultimate Wizardry Archives do not allow for that.

I could go on and on about these issues, but let me return to the focus of my article, why these are not all that great for vintage computing.  First of all, shocking as it may seem, but not all vintage computers have a CD-ROM drive.  Getting a CD-ROM drive in a computer with only 8-bit slots is no simple task.  Installation then becomes a game of installing it on one computer and moving it to another.  Finding VGA cards that work well in an 8-bit slot tends to be a bit of a challenge.  With these compilations, you may have some difficulty running King's Quest IV in a Tandy 1000 computer.  A Tandy 1000TX (8MHz 286) was almost certainly a prime target for Sierra's developers at the time.  Suppose that I wanted to run the EGA version of Wing Commander because that was the way I played it back in the day?  Good luck with a CD version.

The solution is floppy disk images.  If the disk is a DOS disk and does not have disk-based copy protection, they are very easy to make.  WinImage is a popular program, but write protect any floppies you insert into a system with a Windows OS, otherwise it will modify the disk's FAT table.  The modification is harmless, but the disk is no longer "pure".  DSK2IMG is a program I like to use, and it can be set to retry the read multiple times if you have an iffy disk.  DOSBox is getting better and better at being able to install games off floppies.

Friday, September 7, 2012

Sierra's AGI Evolution

Over the years when Sierra was producing games using their Adventure Game Interpreter (AGI) interface, the company would often update their games to fix bugs or add new features.

The first AGI game, King's Quest, was released for the IBM PCjr. and was only meant to be played on that system.  However, as the PCjr. was not the smash hit that IBM and Sierra were betting on, Sierra quickly released a version for the IBM PC, essentially by substituting CGA and PC Speaker support for PCjr. graphics and sound support.  This version could support 4-color CGA graphics using the red/green/brown palette or 16-color color composite graphics when the CGA card was connected to a color TV or composite monitor.

Although it would take time for people to realize it, this was a watershed moment for PC gaming, as finally a high-profile game was released for and designed for the PC.  Previous PC games had been ports from the arcades or other home computers or from small-time publishers.  Sierra would be the first high profile publisher to concentrate on the IBM PC platform.

When Tandy released its 1000 computer in 1985, which had almost exactly the same graphical capabilities (the main difference being a relocatable graphics buffer) and sound capabilities as the PCjr., Sierra released a third version of King's Quest for that computer.  [A Tandy 1000/A/HD with only 128KB of memory can run the PCjr. version properly because the graphics buffer is in the same place as it would be on a PCjr.]  These versions of King's Quest are known as AGI0.  All later AGI releases support the PC and Tandy architectures, and most also support the PCjr.  All AGI version 1 games also were self-booting disks that did not require DOS or support a hard drive.  They did not have the white status/score bar, drop down menus and could only save games to a blank formatted floppy disk.  They offered in-game commands to format a floppy disk.  They could autodetect whether they were running on an IBM PC, IBM PCjr. or Tandy 1000.  Release period is 1984-85.

The most significant and immediate hardware improvement in the second version of AGI was to offer support for EGA cards, so non-Tandy/PCjr. users could view the games graphics in the most colorful and sharpest mode available.  The first game for the newer version, Donald Duck's Playground, was still a booter and a port of a C64 game that did not use AGI.  There are a pair of hacked versions floating around that allow the game to be played in DOS, but they use Atari ST or Amiga resources and are not as reliable when compared to true PC releases.  The game was subject to a license from Disney, and was not in release long enough for Sierra to produce an officially-hard drive installable version.  AGI2 thereafter was able to install the game to a hard disk and save games on the hard disk.  The early AGI interpreters still did not provide drop down menus, and speed control was not always present.  Releases date from 1986.

All AGI10 and AGI1 games were eventually re-released in AGI2.  Sierra added Hercules graphics support by the 2.4xx interpreters because Hercules cards were very popular in the mid-80s, by its early 1987 releases.  Unlike other graphics adapter, the Hercules mode will show typed text in a box in the center of the screen and pause the action like the later SCI0 engine.  The PC was, after all, primarily thought of as a business computer at this time and lots of PCs used monochrome TTL monitors and supported Hercules graphics.  The drop down menu bar gets implemented, as are adjustable animation speeds for all games.

Later improvements added support for MCGA graphics for the users of the IBM PS/2 Models 25 & 30, MCGA and EGA not being compatible.  Most 2.4 interpreter versions should support MCGA.  If not, you would forced to use four color CGA.  Also, since these games had key disk copy protection (requiring Disk #1 to be in the A: drive, even for a hard drive install), further fixes allowed the copy protection to work on 1.2MB drives for games with 360KB disks.  The IBM PS/2 computers and the Tandy 1000HX and TX all had 3.5" disk drives built in, so around mid-1987 Sierra began shipping dual-format release games for DOS with both 5.25" disks and 3.5" disks of the game in the same box.  Disk 1 for each disk type would be copy protected.

In all AGI2 games, the first disk for the game had to be inserted into the A: drive for the copy protection checks in the game executables to pass.  The key disks used a track with a checksum error, overlaid data on the sectors and non-standard sector sizes.  A standard PC floppy disk controller and DOS could not replicate these protections.  Only a device like the Central Point Software Copy II PC Option Board could fully replicate the protection, SuperLok 3.2.  The game's .com loader would make check for a bad track, and if found would then read a decryption key from it and decrypt the real executable, which is AGI.  Even if the game was installed on the hard drive, the first disk had to be in the drive.  Most versions of Police Quest were released without copy protection in an experiment in honesty.  So-called "slash" budget releases of these games also have the protection removed.

AGI2 releases with interpreter 2.917 or later do not exhibit the issue of footprint tracks for animation on faster hardware with EGA and VGA cards.  Sometimes Sierra shipped earlier versions on its Collection CDs.  There is a fix available, see my January 22, 2015 post in this thread : http://www.vintage-computer.com/vcforum/showthread.php?40365-Tandy-1000SX-Game-Issues

Bypassing the copy protection can be done in two ways.  The first is to modify the loader program, typically called SIERRA.COM or something like KQ3.COM or SQ2.COM.  The 128-byte encryption key is copied from track 6 into the.COM, the protection checks are bypassed and the .COM file will always decrypt the AGI file without needing or asking for the key disk.  There are instructions to do this in debug, but Sierra used two versions of the 3.0 Loader, a 1985 and a 1987 version.  The memory offsets are different for each.  AGI interpreter versions up to and including 2.4x use the 1985 version of the loader, 2.9x versions use the 1987 version of the loader.  The second is to permanently decrypt the AGI file.  In this case, you do all the above but write the decrypted AGI file, which is in memory, to a file called AGI.EXE or SIERRA.EXE.  After that, you run the .EXE file and that will start the game.

AGI3 signaled the shift from disk-based copy protection to document-based copy protection.  Three games use the lookup the word in the manual method.  There is no disk-based copy protection loader and the disks are perfectly standard DOS disks.

All games (except for Donald Duck's Playground) by the end of AGI2 had support for every graphics and sound standard widely supported on the market up to 1988.  For graphics, this means CGA, PCjr., TGA, HGC, EGA, MCGA & VGA.   For sound, all that was widely available and supported was the PC Speaker and the PCjr./Tandy 1000 PSG (Adlib and Roland MT-32 not having found game support until the middle of 1988, which coincided with the introduction of Sierra's SCI games).  Release dates are 1988-1989.

All versions of these games check the computer's BIOS for the PCjr. or Tandy 1000 byte identifiers before initializing the three voice PSG sound data.  This was standard in the days before games would freely let you choose your graphics and sound hardware.  By default, if these games found those strings, they would load their PCjr. or Tandy 1000 graphics drivers.  It is possible to force CGA graphics on a Tandy 1000 computer by using the -p command line argument.  This will give you CGA Composite Color Graphics.  You can also use -p -r to force CGA RGB Color Graphics.  However, you will get annoying unintentional noises if you have previously run a game that uses Tandy sound prior to running an AGI game this way.  Command line arguments for the SIERRA.COM loader include :

-c = Force CGA Composite Color Mode
-e = Force EGA
-h = Force Hercules
-r = Force CGA RGB Color Mode
-p = Force "PC Mode"
-s = Unknown
-t = Force Tandy 1000 Graphics and/or Sound
-v = Force MCGA/VGA

By accident or design, all AGI3 games and AGI2 games with the latest interpreters (greater than or equal to 2.917), will work in most Tandy 1000s with an EGA or VGA card installed.  This combination will give you the sound of the Tandy PSG paired with an EGA or VGA card.  The only Tandy 1000s that this does not work with are the original 1000, 1000A and 1000HD, because their graphics cannot be disabled, and the RSX.  Tandy sound will not work on the RSX even though it has the chip because Tandy had to relocate it in the I/O map because the original location (C0-C7) conflicted with the I/O for the 2nd DMA controller added in the IBM PC AT (IBM is to blame here), so it is at 1E0-1E7.  The RSX was released well after the AGI games.  The Tandy 1000 RLX is a special case because it has built-in VGA on the motherboard and ports at the usual locations (no DMA 5-7).  You must use these latest versions for AGI games to work at without sprite footprints on the RLX and its built-in VGA.

All the games as shown below have a release with an AGI interpreter version greater than or equal to 2.917 except for Mixed Up Mother Goose.  In order to play that game on a hybrid Tandy system like the RLX, you need to use an interpreter from another game.  However, it is not as simple as copying over a few files. The decrypted AGI file has the name of the game embedded in it, like KQ2 or SQ2.  If the game does not match the name, it will refuse to interpret the game files.  What you need to do is to permanently decrypt the AGI file with a version equal or greater than 2.917, change the name in the AGI file and use the file to run Mixed Up Mother Goose.  There is a program called AGI Decryptor that can permanently decrypt the AGI file.

The specifications for the AGI engine are here : http://wiki.scummvm.org/index.php/AGI/Specifications and a description of the copy protection used is available and a utility to remove the protection is here : http://sierrahelp.com/GeneralHelp/FloppyDiskBackupProblems.html.  Here are a list of games and their known versions :

Game Name AGI Int. Ver. Game Ver. Floppies Protection File Date Loader 3.0 Yr Interaction Newsletter Notes
Black Cauldron, The 1.12 1.1J 2x360KB Booter 1985


Black Cauldron, The 1.12 1.1K 2x360KB Booter 1985


Black Cauldron, The 1.12 1.1K Tandy 2x360KB Booter 1985


Black Cauldron, The 1.12 1.1M 2x360KB Booter 1985


Black Cauldron, The 2.44 2.00 2x360KB Key Disk 06/14/87 1985 Fall 1987 MCGA fix
Black Cauldron, The 3.002.098 2.10 2x360KB None 11/10/88 NP

Christmas Card 2.272 1 1x360KB None 11/13/86 NP
Christmas Demo
Donald Duck's Playground 2.001 1.0Q 1x360KB Booter 06/09/86


Gold Rush 3.002.149 2.01 5x360KB/2x720KB Manual Word Lookup 12/22/88 NP

King's Quest 1 1.00 1x360KB Booter 1984

Licensed to IBM
King's Quest 1 none 1x360KB Booter 1984

Generic PC version
King's Quest 1 01.01.00 1x360KB Booter 1984

Licensed to Tandy
King's Quest 1 ? 1x360KB Booter 1984-1985

Came as second disk in later PC booter releases, functionally equivalent to Tandy 1000 version
King's Quest – Quest for the Crown 2.272 1.0U 2x360KB Key Disk 11/14/86 1985

King's Quest – Quest for the Crown 2.425 2.0F 2x360KB Key Disk 04/1987 1985

King's Quest – Quest for the Crown 2.917 2.0F 2x360KB/1x720KB Key Disk 05/05/87 1987 Fall 1987 1.2meg Fix, MCGA & Hercules Support
King's Quest II – Romancing the Throne 1 1.0W 2x360KB Booter 1985


King's Quest II – Romancing the Throne 1 1.1H 2x360KB Booter 1985


King's Quest II – Romancing the Throne 1 01.01.00 2x360KB Booter 1985

Licensed to Tandy
King's Quest II – Romancing the Throne 2.411 2.1 2x360KB/1x720KB Key Disk 04/10/87 1985

King's Quest II – Romancing the Throne 2.426 2.2 2x360KB/1x720KB Key Disk 05/07/87 NP? Fall 1987 MCGA fix
King's Quest II – Romancing the Throne 2.917 2.2 2x360KB/1x720KB Key Disk 12/01/87 1987

King's Quest III – To Heir is Human 2.272 1.01 3x360KB Key Disk 11/08/86 1985

King's Quest III – To Heir is Human 2.435 2.00 3x360KB Key Disk 05/25/87 1985 Fall 1987
King's Quest III – To Heir is Human 2.936 2.14 2x720KB Key Disk 03/15/88 1987 Spring 1988 MCGA fix
King's Quest IV – The Perils of Rosella 3.002.086 2.00 3x720KB Manual Word Lookup 07/27/88 NP
Hercules & PCjr. Support
King's Quest IV – The Perils of Rosella 3.002.086 2.3 6x360KB Manual Word Lookup 09/27/88 NP

Leisure Suit Larry in the Land of the Lounge Lizards 2.440 1.00 2x360KB/1x720KB Key Disk 06/01/87 1985 Spring 1988
Leisure Suit Larry in the Land of the Lounge Lizards 2.917 1.00 2x360KB/1x720KB Key Disk 12/01/87 1987

Manhunter – New York 3.002.102 1.22 5x360KB/2x720KB Manual Word Lookup 08/31/88 NP

Manhunter – New York 3.002.107 1.22 5x360KB/2x720KB Manual Word Lookup 09/01/88 NP

Manhunter 2 – San Franscisco 3.002.149 3.02 3x720KB None 07/26/89 NP

Manhunter 2 – San Franscisco 3.002.149 3.03 8x360KB None 08/17/89 NP
Disk swapping problems fix
Mixed-Up Mother Goose 2.915 1.0D 2x360KB Key Disk 11/10/87 NP? Spring 1988
Police Quest - In Pursuit of the Death Angel 2.903 2.0A 3x360KB Key Disk 10/23/87 NP

Police Quest - In Pursuit of the Death Angel 2.911 2.0A 3x360KB Key Disk 11/04/87 NP

Police Quest - In Pursuit of the Death Angel 2.915 2.0E 3x360KB Key Disk 11/17/87 NP

Police Quest - In Pursuit of the Death Angel 2.917 2.0G 3x360KB/2x720KB Key Disk/None 12/03/87 NP Spring 1988 PCjr. Support
Space Quest - The Sarien Encounter 2.089 1.0X 2x360KB Key Disk 09/24/86 1985

Space Quest - The Sarien Encounter 2.272 1.1A 2x360KB Key Disk 11/13/86 1985

Space Quest - The Sarien Encounter 2.426 2.2 2x360KB/1x720KB Key Disk 05/07/87 1985 Fall 1987 MCGA fix
Space Quest - The Sarien Encounter 2.917 2.2 2x360KB/1x720KB Key Disk 12/01/87 1987

Space Quest 2 - Vohaul's Revenge 2.912 2.0A 2x360KB/1x720KB Key Disk 11/06/87 1987 Spring 1988 MCGA fix
Space Quest 2 - Vohaul's Revenge 2.936 2.0D 1x720KB Key Disk 03/14/88 1987
Bug Fix
Space Quest 2 - Vohaul's Revenge 2.936 2.0F 1x720KB Key Disk 01/01/89 1987