Monday, June 24, 2013

The 64M GB Smart Card - Diamond in the Rough for your Game Boy

Update 10/15/17 : This device is on the list of risky, dangerous and flawed products for your retro consoles : http://nerdlypleasures.blogspot.com/2017/08/flawed-risky-and-dangerous-devices-for.html  Don't buy, don't use, spend the extra money for a properly designed flash cart.  I threw mine away.

Update 12/29/15 : This device is almost totally obsolete compared to the EverDrive GB.  Read my review of the EverDrive GB here : http://nerdlypleasures.blogspot.com/2015/01/the-everdrive-gb-game-boy-and-game-boy.html

Some years ago, I felt my Game Boy Advance SP (backlit) was not receiving the 8-bit love it deserved.  Tired of chasing down all the games I wanted to play on a real Game Boy, I decided to purchase a Game Boy flash cart.  The days of the Game Boy were long past in 2010, and handheld systems get precious attention from multi-cart designers.  The old devices from Bung and others had not been manufactued in a very long time, and who wants to deal with parallel port programmable devices in the 21st Century?  Nintendo manufactured an official flash cart called the Nintendo Power GB Memory Cartridge, but it only supported a select number of original Game Boy games, required a special commercial burner, and only had 1MB for ROM and 128KB for SRAM.

Fortunately, while interest in Game Boy games is fairly low, interest in Game Boy sound is high.  Chiptune music has become more and more popular, and the Game Boy's Audio Processing Unit (APU) is very similar to the NES's APU.  However, a Game Boy is portable, it can be brought to a party, a club or a rave and be controlled with the buttons on its face and run off batteries.  A NES requires a gamepad and a monitor screen of some kind, its not very portable and requires a free wall socket.  While you can make music on a laptop, its not very exciting to bring a laptop to a rave and emulation does not have the allure of real hardware.

A ROM program called Little Sound Dj (LSDJ) was developed to allow music programmers easy access to the Game Boy.  There was a need for a cart to store the music that would be played on the Game Boy at these parties and recording sessions, so a new breed of flash carts became available.  One of the most common ones, and one I purchased, is the following : http://store.kitsch-bent.com/product/usb-64m-smart-card


You can also purchase it here : http://www.nonelectronics.com/catalog/index.php?main_page=product_info&cPath=2&products_id=112&zenid=b54fe49ab9c28ca36063e603674744bc

At $40.00, the price is very reasonable and 64 Megabits / 8 Megabytes means that the cart can hold two of the largest Game Boy Color games.  There is also a 32 Mbit /4MB version.  It also has 1Mbit / 128 KB of SRAM.  It has a mini-USB port, no external programmer is required.  It will not work with Game Boy Advance games.

That 8MB is divided into two 4MB pages.  ROMs can be stored on either page.  When you insert the cartridge, the contents of the first ROM page is always displayed.  To get to the second ROM page, you must quickly turn off and then turn back on your Game Boy.  Game Boy Color should not be on the same page as regular monochrome Game Boy games, glitching will result otherwise.  The first thing you see after the Nintendo scroll is the menu (unless only one game is in the ROM page).  The menu uses the name in the game's header, not the filename of your ROM.  Some Game Boy and Game Boy Color games use a Japanese name even though the language of the game is English.

The cartridge is a cheap Chinese-manufactured device, but its essentially the only device around.  It does not fit in a Game Boy Advance SP slot quite as nicely as a real licensed cart, you need to listen and feel for the "click".  It sucks your Game Boy's batteries much faster than real cartridges, even Game Boy Advance games.  It backs up SRAM via a coin cell battery.  Writing to the card is slow, about 3.5 minutes for one 4MB page.  Each page must be written to separately, and writing a new game or games to the page will erase all the old games (because its flash memory).  A single game like Shantae or Dragon Warrior III can use one whole 4MB page.  Multiple games in a ROM page can use no more than 3.75MB because the menu for the page is stored in the last 32KB of the ROM page.  Usually that means that no more than three Game Boy Color games can be fit in a single page, because almost all Game Boy Color games are at least 1MB.

Game Boy (B&W) games range in size from 32KB to 1MB.  Like the NES, the first games released for the Game Boy fit inside the CPU's addressing space and did not require any additional hardware inside the cartridge.  However, almost immediately it was understood that 32KB (the limit of the CPU's addressing capabilities) was simply not going to be enough for games that aspired to something better than first generation NES games.   However, Nintendo kept much stricter controls on mapper hardware than on the NES, which had dozens of different mappers.  Nintendo in the early days of the Game Boy used two "mappers" called MBC 1 and MBC2 (Memory Bank Controller).  All licensed third party companies were required to use these two mappers (if their game was larger than 32KB) and did not use their own custom hardware except in a very limited way.

MCB1 could support 2MB of ROM with 8KB of SRAM or 512KB of ROM with 32KB of SRAM.  Games in the US were released with up to 512KB ROM with 8KB Battery Backed SRAM .  MBC2  games used 256KB ROMs with 512 nybbles of Battery Backed SRAM integrated into the MBC chip.  Much, much later, when the first Pokemon games were released, they used the MBC3 with support for 2MB of ROM and 32KB SRAM.  Additionally, the MBC3 also included a battery backed real time clock chip driven by an external oscillator.

For the Game Boy Color, Nintendo made a MBC5 chip that was included in virtually every Game Boy Color game.  This chip could support up to 8MB of ROM (no US game ever required more than 4MB) and 128KB of Battery Backed SRAM.  It could also support a rumble feature, but not a real time clock chip.  Only Game Boy Color games requiring a real time clock used MBC3.

The flash cart will work in a Super Game Boy or the GameCube Game Boy Player.  In the Super Game Boy, any game with Super Game Boy features will work fine if it is the only game in the page.  If it is not, then you must start the game from the menu, then reset the game to utilize the Super Game Boy features.  Otherwise, the Super Game Boy will play the game as if it were a regular Game Boy game.   It may be unreliable in a Game Boy Pocket due to the power draw, I would find the highest rated mA AAA batteries you can find if you used it in one.

While many, many games work correctly on this cartridge, quite a few will not.  Some write to the flash cart's registers and screw things up.  Some games written for MBC1-MBC3 hardware will sometimes fail to work properly or at all because they use a feature which does not work or works differently on an MBC5.  The only solution is to patch your ROM.  Virtually every game that has had problems reported on the NESDEV forum has a fix.  Most of them you can find here : http://thegaminguniverse.org/ninjagaiden4/mottzilla/ and some you can find in this thread : http://forums.nesdev.com/viewtopic.php?f=20&t=5804.  According to this, the first revision of the 32MB carts had an functional MBC1 emulation mode : http://blog.gg8.se/gameboyprojects/week09/EMS_FAQ.txt

When I termed this flash cart to be a diamond in the rough, the main issue is the stock flashing program.  Engrish aside, the chief problem with the program as it runs on the Game Boy is that it only allows for one game to save at a time!  So if you play The Legend of Zelda : Link's Awakening, save and do not download your save to your PC, when the next game you play is Metroid II : Return of Samus, you will have wiped out your Zelda save.  Most Game Boy games only use 8KB to save the game and the cart has 128KB of SRAM available.  A NESDEV user named Mottzilla made a custom version of the PC loader that will allow for multiple save games on the cart.  It is a must-download, find it here : http://thegaminguniverse.org/ninjagaiden4/mottzilla/

With his addon to the flasher program, each game with save features has an 8KB slot in the SRAM reserved for it.  (MBC2 games still take 8KB even though they only save 256 bytes).  One 32KB game save (for games like Pokemon) is supported, so you can have up to 16 or 12 save files in the SRAM at any one time.  You can see which games currently have saves and you can delete saves from the flash cart's menu.  However, the SRAM is saved between the two ROM pages, so it is generally best to use one ROM page for games with save features and the other ROM page for games that do not save.

There are a few weird games that will never work with this cart.  Some Japanese games used more exotic mapping hardware like the HuC-1 and HuC-3, which supported an infrared sensor for wireless communication.  None were released in the US or Europe except for a Pokemon clone called Robopon - Sun Version, which used the HuC-3 and came in an oversized black cartridge.  It has an infrared port for commications with other Robopon carts.  Uniquely, it has the capabilities to make simple sounds from the cartridge when the cartridge is not in use.  It has a speaker and an extra (user replaceable) battery for this function in addition to the battery backed internal RAM.  Finally, it has a real time clock.  Kirby's Tilt 'N Tumble used the MBC7 due to its motion sensor.  The Game Boy Camera is another piece of unique hardware that includes a ROM which functions like a game cartridge.  Finally, there is an official ROM of Mortal Kombat 1 & 2 which uses MCB1 in an odd way to support its 1MB size, just use the standalone versions of the games instead.  Unlicensed games, such as those released by Sachen and Wisdom Tree, use their own custom mapper and are not playable with this flash cart..

Those of us who love Game Boy games have been yearning for years for a proper Game Boy flash cart like the PowerPak.  One that accepts microSD cards, does not suck down batteries, properly supports all four major MBCs and a real time clock, and whose menu hardware can be shut off from the system upon game loading.  It does not exist as of yet (but Gamegear carts do, strangely), so at the moment we are stuck with this device, which is much better than nothing.

Saturday, June 22, 2013

The Sound Blaster 2.0 and the C/MS Upgrade

I decided to make this post to gather all the known, accurate and current information about the C/MS Upgrade for the 2.0.  This post supersedes anything I have said in prior blog posts.  As you should know, Creative Labs' first PC sound card of any note was the Creative Music System card (C/MS), later re-marketed as the Creative Game Blaster.  This card was based off two sound chips CL labeled as CMS-301, but were actually Phillips SAA-1099s.  The C/MS card was not a great seller, and even the name change failed to dislodge the Ad Lib card from its increasingly dominant position in the affordable PC sound card market.  Thus Creative came up with the "killer card", the Sound Blaster.  This card combined the full functionality of the Ad Lib card with almost all of the functionality (detection chip was eliminated) of the Game Blaster card and more.

While the Sound Blaster, with its joystick/midi port and digital sound processor began to sell well, the design was definitely in the past with lots of TTL logic chips.  The card was originally marketed as a "stereo" card, but the only thing stereo about it was the Game Blaster chips.  In the first production runs, the two Game Blaster chips, marked with a CMS-301 sticker were soldered onto the motherboard (so were the Ad Lib chips, marked FM1312 and FM1314).  However, almost nobody really cared about Game Blaster when the Adlib was also present, and virtually all games that supported the Game Blaster also supported the Adlib, so for the 1.5 version of the Sound Blaster, the chips were not installed by default.  The two empty sockets could be populated with chips purchased from Creative Labs fr the low, low price of $29.95.

After CL released its new flagship product, the Sound Blaster Pro, it redesigned the original Sound Blaster as a budget card and released it in late 1991.  CL enhanced the new card's capabilities by allowing it to record up to 44.1kHz, but it was still a mono card.  The C/MS chips were left off the board again, but this time there was a third empty socket.  A special version of the upgrade was required from CL, one not really well-identified in the catalog accompanying the card.  The third chip had a sticker marking it as 0048013500, and underneath it was a pre-programmed PAL (Programmable Array Logic) chip.  (A PAL16L8 chip with the security fuse blown so it could not be dumped).  Eventually, CL stopped advertising the upgrade completely, and without the PAL chip the CMS functionality would not work even with the Phillips chips were installed.  Given the rarity of boards with the upgrade found in the wild and the lack of advertising, few upgrade kits must have been sold.

However, in 2012, a long-time member of the Vintage Computer Forum named Chuck(G) devised a method to determine the way in which common PALs were programmed.  He analyzed the PAL on an officially upgraded Sound Blaster 2.0 and released the instructions to replicate the programmed logic on a GAL (Generic Array Logic) chip.  Unlike PALs, GALs can be reprogrammed and do not require expensive and hard to obtain hardware to program.  The GAL required is a GAL16V8 and the file to program the chip can be found here : http://www.vintage-computer.com/vcforum/entry.php?328-Cloning-a-HAL-PAL-Part-11.  The programmed chip is inserted in the only empty socket that can fit it, the one just above the FM1312 /YM-3812 chip.  However, in almost one year following the first successful report of a GAL SB 2.0 CMS upgrade, not all boards have worked with the upgrade.  Below I try to identify each board known whether or not to work with the upgrade.

Board Types :

The earliest known boards are CT-1350B boards marked with a rev 2, 3 or 4 and do not have "SOUND BLASTER" silkscreened.  Here is a photo of a rev. 3 board :


And here is a rev. 4 board :


Between the rev 2 and 3 and the rev 4 and later boards, there is one obvious difference.  The rev 4 added a DMACTL jumper.  This jumper will disable the DMA capabilities of the Sound Blaster, virtually eliminating its ability to reproduce digitized sound.  However, and it may not be truly visible in the photo, but both share a CT1336 Bus Interface Chip and a CT1351 DSP chip, version v2.01.  You can identify the DSP chip by this silkscreened text on the chip "CT1351V201", with the "V201" indicating the version number.

These boards have been proven time and time again to work with the CMS upgrade, whether a GAL or PAL.  Apparently there is no difference between Lattice Semiconductor and National Semiconductor GALs. Apparently SGS Thompson GALs do not work.

Later boards look like this :


Now the words "SOUND BLASTER" are next to the CT1350B.  This board's revision can be determined by the six digit number silkscreened to the lower left of the address jumpers.  The above board is a 049151 and it works with the upgrade.  059316 and 069328 are also known to exist and shown below :



Note the new CT1336A and DSP v2.02 on these boards.  The 059316 also has small surface mounted versions of the YM3812 and Y3014 chips and a 1993 copyright date silkscreened onto the board.  The last four digits refer to the design date of the revision in year-week format.  The 059316 and 069328  are the first boards confirmed not to work with the CMS upgrade, regardless of whether a CL PAL or a modern-programmed GAL is used.  However, the 049151 is not guaranteed to work, as can be seen here : 



It seems that the first two digits, 04, 05 or 06, refer to a revision number.  There are some mysteries remaining.  For example, will either one of these boards work :



The first is a 049151 with a v2.02DSP and a CT1336 chip, the second one is identical except for the word "SOUND MACHINE".  

After further testing, it has been determined that that the DSP version does not matter, the CT1336 version does.  If your card has a v2.01 DSP or v2.02 DSP, the upgrade will work.  If your card has a CT1336 Bus Interface Chip, the upgrade will work.  On the other hand, if your card has a CT1336A Bus Interface Chip, the upgrade will not work!  Since v2.02 DSPs tend to be paired with CT1336A chips, be very careful to check the bus interface chip before you buy.  Make sure your seller shows you a photo of the exact card you will receive.  

2019 Update

In the past year or so, one or two people found a Sound Blaster 2.0 card with an original Creative PAL, the two Creative-marked CMS-301/SAA-1099P chips and a CT1336A Bus Interface Chip, and the Game Blaster functionality worked!  Apparently CL revised the programming for the PAL to work with the CT1336A chip at some point, presumably when they started manufacturing CT1336A chips.  That way, when a customer called with an upgrade request, one PAL would work for all SB 2.0 cards.  This newer PAL has been reversed engineered and can be purchased as a GAL, see here for details : https://www.vogons.org/viewtopic.php?f=5&t=30242&view=unread#p726379

Monday, June 17, 2013

Ultima VII on Real Hardware

Ultima VII - The Black Gate is, in my opinion and in many others, the greatest Computer Role Playing Game of the first half of the 1990s.  But like many Origin games (Wing Commander I & II) of this time period, it is extremely sensitive to hardware speed.  It runs faster than the ideal on my 486DX2/66 (the characters move like they are on speed).

While on my 486DX/2 66 Wing Commander I & II can be tamed by disabling the internal cache, it doesn't work with Ultima VII.  The game re-enables the internal cache in my machine if I disable it beforehand either with a software utility like ICD.EXE or through the BIOS option.  Slowing the RAM speed in the BIOS does nothing substantial to slow down the game.  The turbo button will show real slowdown, but the slowdown is a little too great and the game runs at a suboptimal speed.  Its close to a 386DX40.  Its like Goldilocks and the Three Bears, too hot and too cold are easy, but getting the speed "just right" is not easy.  Pentium computers will begin to run Ultima VII insanely fast.  The game's sequel, Serpent Isle, runs on an updated version of the Ultima VII engine.  Serpent Isle has a frame limiter to prevent the action from becoming sickeningly fast, however a powerful machine can still make it play faster than it should.

The ideal system to play Ultima VII on is a 486DX33 with 4MB of RAM, so I have been told.  Scorpia made the claim in Computer Gaming World.  Apparently this is indicated somewhere on or in the game's packaging, but I have reviewed all the items included in the box and I see no such assertion.  It may be on the system requirements label on the underside of the box cover.  Like most games, the more things that are happening on the screen, the slower the resulting gameplay.

The best advice I have for people with a 486DX2/66 is to use the jumpers to lower the FSB speed from 33 to 20MHz.  This will turn your CPU into a 486DX2/40, a CPU that never existed in the wild.  However, it will produce a correct balance of speed, very close to the ideal.

The next issue is the Voodoo Memory Manager.  Ultima VII and Serpent Isle use a custom memory manager that is wholly incompatible with all expanded memory managers, including EMM386, QEMM, CEMM, you name it.  All these drivers put the CPU into Virtual 8086 mode, whereas Ultima VII requires true Real Mode for its voodoo memory manager (which the game puts into the so-called "Unreal Mode") to work.  Origin specifically informs the user that it used this memory manager to avoid the problems with EMS, but it does not indicate what those problems were.  My guess is that the performance hit from using EMS was too much for the game to handle.  Ultima VII is also incompatible with Windows for the same reason; it must be run in DOS unless you use the unofficial U7WIN9X patch (for Windows 95-ME).

The problem with these games' EMM386 compatibility is that EMM386 provides Upper Memory Blocks.  Device drivers, such as those for the mouse, CD-ROM and disk cache, can load in UMB to save precious conventional memory.  Ultima VII and especially Serpent Isle require lots of conventional memory free, up to approximately 585K free for Serpent Isle with all sound options.  No EMM386, no guarantee of UMB.  While CTMOUSE is small enough (3K) that it can be loaded without a substantial impact on the conventional RAM, SMARTDRV and MSCDEX require about 25K a piece.  Without UMBs its virtually impossible to load a normal DOS configuration.  The official solution was to create a barebones boot disk.

It may be possible to create UMBs in systems without loading EMM386.  In Pentium and later systems, UMBPCI works with proper PCI implementations.  In 386 and 486 systems, you can try HIRAM, URAM (1988), RDOSUMB or LastByte Memory Manager may also work, depending on whether the software supports the chipset and its use of shadowing memory.  You will probably not get as many UMBs as you would with EMM386 (forget B000-B7FF), but if it works for you, it will avoid having to specially boot your system for these games.

The final issue is that this game will thrash a hard drive like Simon Legree.  To avoid those annoying short (or not so short) pauses as the game scrolls the screen, the standard 16-bit IDE controller is not going to cut it.  Fortunately there are many options to speed up disk access.  On the extreme end of the scale, if you have 32MB of RAM, consider creating a RAM drive with the DOS utility RAMDRIVE.  A full install of Ultima VII + Forge of Virtue is 19.5MB without savegames.  Serpent Isle and The Silver Seed runs to 22.5MB.  Thus your RAMDISK needs to be about 1.5MB larger than the install size.  Just remember to copy the game back to your system.

Other improvements include SCSI, whether IDE, VLB or PCI; VLB or PCI IDE, and the use of fast hard drives and compact flash cards (with IDE or rare SCSI adapter).  SMARTDRV, a disk caching program, will also assist with slower hard drives (i.e. hard drives you would actually have used at the time).

Ultima VII does not really care too much about the VGA card used, but I would recommend a Tseng ET4000AX if you are forced to use an ISA card, otherwise use a PCI or VLB card.  It only supports Adlib & Sound Blaster & Roland MT-32 (and compatibles) for music and sound effects.  Roland is obviously the best choice, the game uses stereo panning for sound effects and loads custom patches.  Adlib and Sound Blaster rely entirely on FM synthesis for music and sound effects.  Voice samples (for the Guardian in the intro and occasionally in-game) require a Sound Blaster or Sound Blaster Pro or compatibles.

Sunday, June 16, 2013

Roland MPU-401 : The Vintage Computing Part that Simply Works

I have, and have owned lots of vintage PC items since 2006.  I used to have an Apple II Platinum with dual Mockingboards, that was quite the system.  I have an Atari 800 that works, but I have no software for it.  I also have had lots of PC compatible cards and components.  I have owned one of every major iteration of the 3dfx Voodoo cards except the Voodoo 2 (and I had one of those back in the day).  At one time I possessed a representative of every major ISA Sound Blaster.  I currently possess a Game Blaster complete in box with all manuals, and while that is an exceptionally rare card, it is not what I consider the highlight of my collection.  The quality of the music for the card or its chips is often third-rate (behind MT-32 and Adlib).  I have the true IBM VGA 8-bit card, and while it is also extremely rare its not especially impressive in what it can do.  I have a Gravis Ultrasound ACE, but from what I hear the full Ultrasound is not particularly incompatible with the Adlib or Sound Blaster, so its Adlib port disabling feature is not a great selling point.  The 286 Express Tandy 1000/SX accelerator is also quite a find, but it can overheat with software.  The ADP-50L is a fine 16-to-8 bit IDE card, but it has a very long bootup screen.

Perhaps most prized item in my possession is my Roland MPU-401 MIDI Processing Unit.  Equally as important is the interface card that came with it, the MIF-IPC-A.  The MPU-401 is essentially a computer in its own right, with a CPU, ROM, RAM and a bus interface.  The external unit contains all the intelligent circuitry and can be connected to an Apple II, a Commodore 64, an MSX, Sharp X1, a Fujitsu FM7 or an NEC PC-88 or PC-98 machine in addition to a PC compatible.  All you need is the appropriate adapter card or cartridge.  The external unit connects to the interface card/cartridge through a DB-25 male/male cable.  In my cable, pins 7, 8, 19, 20 and 21 are not connected and pins 13 & 25 are tied together (both GND).


Just as important, it came with all documentation and manuals.  It had the Roland MPU-401 Technical Interface Manual, the MPU-401 Booklet and the sheet for the MIF-IPC(-A) with the schematic on the back.  Finally, the equipment and manuals are in beautiful shape.  It didn't come with the box as I recall.  Later a friend of mine donated a second MPU-401 to me, but I don't have a second interface card for it.

What is the most important thing about this interface is what it represented.  The principal function of this interface was to connect to a Roland MT-32 or CM-32L (have both of them).  Unlike the Game Blaster, when a game supported the MT-32, the game almost always sounded best on it (not too hard when the competition was the Adlib Music Synthesizer Card and to a lesser extent the Game Blaster).  Roland LA Synthesis had a very long reign in the PC sound realm, from 1988 to 1992 when General MIDI devices began taking over.

The interface card provides two I/O ports to the interface at I/O 330 & 331.  By its design, it cannot use I/O 332-337 because pins A1 & A2 are unconnected  The traces next to the comparator allow it to be put virtually anywhere in the PC's 10-bit address space.  It can also use any interrupt request available on the ISA bus, but to use an IRQ other than the default 2/9, you also have to cut a trace.  Essentially the card is a traffic cop and a buffer for the 8 data bits and a few other signals.  It also supplies an Interrupt Request when the MPU-401 needs to assert an interrupt. The card uses a DB-25 female connector and bracket, four 74LS TTL logic chips and decoupling capacitors, one resistor and one electrolytic capacitor.  The card is as simple as you get and can easily be recreated.  You can find the schematic in my Tutorial : How to Get the Roland MT-32 working with DOS Games.  Without it, the complex interface unit is useless.


The card can be used in every PC compatible system, including PCs, XTs, ATs, Tandy 1000s and others.  The original MIF-IPC was a more complex card but has issues working in AT-class machines.  While the MPU-IPC and MPU-IPC-T can also work with everything, the interface is on the card, and if lost the breakout box is useless.  The last in the series, the MPU-401AT is not guaranteed to work in something less advanced than an AT system.  However, it was released in 1994 when the XT class machines were no longer a strong market segment, so it may not have been tested in them.  It is an 8-bit card, and probably will work without trouble in standard and near-standard (Tandy 1000) PCs.  However, it, like the MPU-401 SCC-1 and LAPC-I card go for very high prices when they are auctioned off on ebay.  MPU-IPC and MPU-IPC-Ts are often auctioned off incomplete.  In those cases, the card is important and the external MIDI IN and OUT ports can be recreated easily.

The MPU-401, MPU-IPC, MPU-IMC, MPU-IPC-T and LAPC-I all provide two MIDI OUTs.  Thus you can control a Roland MT-32 and a Roland SC-55 with one of these devices and not have to use a MIDI THRU, which can add latency and eventually lead to loss of data integrity depending on how many modules are in the Thru chain.  In practice, the first module in a MIDI THRU loop will be fine.

In my experience, the interface cards are much more difficult to find than the external interface.  If you find one, some things to note :

On the card itself, the traces by the silkscreened I/O and Int boxes should be at A7 & A& and 2/9, respectively.  If the unlikely event they are not, then you will need to connect them with wire and obliterate any other traces made.  Otherwise the card will not be at the ideal settings and your games will not work with it unless they have an option to manually set the I/O and IRQ values.

The external interface unit has a cover secured by four Phillips screws.  You should remove them.  Inside, depending on the age of the board, you may or may not have an EPROM/ROM.  Versions 1.2A, 1.2B, 1.3, 1.4, 1.4A, 1.4B, 1.5 and 1.5A exist.  Version 1.5A is the version found in the MPU-IPC, MPU-IMC, MPU-IPC-T and LAPC-I, so that is the version you should look for.  If the CPU inside is a HD6801VOB55P, then the ROM is embedded in the chip.  Serial numbers above 588000 are safe.  Look on the underneath of the box to find it.  You can find the version number, if not identified by an EPROM sticker, with a program called mputhru.  In the end, I am uncertain if it makes any difference what the ROM version is, at least if you have a 1.3 or above.


Second, inside the box there is a silkscreened "ADRS" with four positions numbered 1-4.  This must not be modified in order for your unit to work with the MIF-IPC-A or at I/O 330-331.  If it is, you must set it back to #1 with a jumper wire.  This was there to allow a single MIF-IPC and other cards to control up to four external interfaces.  It will not work with the MIF-IPC-A, with the MIF-IPC-A only address #1 will be valid.  You need an original IF-MIDI/IBM or MIF-IPC (functionally identical) card to get this to work.  Here is how the address lines were configured on the IF-MIDI/IBM and MIF-IPC :

A0 - 0 or 1 (selects command/data or status port)
A1 - 0 or 1
A2 - 0 or 1
A3 - 0 or 1 (Unconnected at MPU-401)
A4 - 1
A5 - 1
A6 - 0
A7 - 0
A8 - 1
A9 - 1

The MPU-IPC-A connects the lines as follows :

A0 - 0 or 1 (selects command/data or status port)
A1 - 0 (Not connected to MPU-401)
A2 - 0 (Not connected to MPU-401)
A3 - 0
A4 - 1
A5 - 1
A6 - 0
A7 - 0
A8 - 1
A9 - 1

For all cards, the traces can be cut and a jumper block can be soldered on to select 0 or 1 for A4-A9, which gives 64 choices, not all of them would work.

As I understand the function of the LS138 in the MPU-401 box, it is responsive to ISA A1 and A2. Typically, they are both 0 and the third '138 input is always 0, only Y0 will be active (low). If A1 or A2 become 1, then the MPU-401 should be unresponsive. You could control up to four MPU-401 boxes in software just by setting the right address. A1 = 1, A2 = 0, I/O 332-333; A1 = 0, A2 = 1, I/O 334-335; A1 = 1, A2 = 1, I/O 336-337.

The ADRS block in the MPU-401 should allow you to rearrange the addressing of the 138 with only cutting a trace and installing a jumper block or wire. I have never done this and see no reason to do it, but it is definitely possible, but only with the older boards.  These boards have flaky compatibility in an IBM AT or systems with faster speeds, but the MIF-IPC-A is sold in any system with an ISA slot, including Tandy 1000s.

Fascinatingly, this unit, which was released around 1984, combined with the MIF-IPC-A card released in 1986, functioned perfectly as a MIDI interface for well over fifteen years after it was released.  I am positive that driver support exists for it in every version of Windows from 3.0 with multimedia extensions to Windows XP.  It has no hanging note bugs and any game or software requiring Normal, a.k.a. Intelligent MPU-401 features will work with it.

Unlike virtually every other contemporary sound card, the Roland MPU-401 + MT-32 or SC-55 never requires any kind of software driver to use with games or programs.  Drivers always accompany the software or can be found as patches (floppy versions of LOOM, Secret of Monkey Island & Day of the Tentacle).  Usually the same can be said for the Adlib, Game Blaster and Sound Blasters, but some games do require drivers supplied on the card's installation disks to work.  Once you get to the Sound Blaster Pros and 16s or your Pro Audio Spectrums and your Gravis Ultrasounds, you will need your installation disks.

Unknown to me for the longest time, but there was secretly trouble in this paradise.  One game that required MPU-401 was It Came from the Desert.  That game would simply not work with the MT-32 option in my 486 with the MPU-401 and MIF-IPC-A.  I put it down to marginal code which did not like my system and I did not think of it again for a long time.  However, eventually I found there were problems in trying to use the MIDI IN of the MPU-401.  I eventually isolated the issue to the 74LS04 Hex Inverter on my MIF-IPC-A.  The interrupt line goes though that IC and was not being raised by the system, thus breaking many MIDI recording programs and It Came from the Desert.  I replaced that IC and everything worked thereafter, including that Cinemaware game. Roland did not use all the inputs (6) on the hex inverter and left the unused inputs floating.  Apparently this is a bad thing for the life of the chip, and all the unused inputs (pins 1, 11 & 13) should be tied to ground (pin 7) .

Saturday, June 15, 2013

8-bit Chip Music vs. Game Music

I love video game music, but I love it in the manner in which it is intended to be enjoyed, playing a video game.  As any regular reader of this blog knows (is there anyone out there), I also love retro consoles like the NES and the SNES.  The NES was the first console to truly give music an important role in home video games.  Before the NES, many video games like those found on the Atari 2600 or the Colecovision relied primarily on sound effects or very short and simple tunes in the systems' games.  The sound functionality in the 2600 was not very musical, but the Intellivision, Colecovision, 5200 and Vetrex all had sound chips with basic musical functionality using square waves and noise to produce sound.  Like consoles, most home computers released in the USA prior to 1985 had fairly primitive sound hardware like the speaker for the Apple II, TRS-80 and IBM PC or the primitive DACs for the TRS-80 CoCo and early Macintoshes.  Other home computers, including the Atari 8-bits, the VIC-20, the TI-994A, the Mockingboard sound cards for the Apple II and IBM PCjr./Tandy 1000 had similar musical chips to those included in the pre-crash consoles.

However, the Commodore 64 showed the world it was possible to put an advanced synthesizer chip inside the machine to make music.  In fact it was designed to address, in the opinion of its designer, the unmusicality of its home computer predecessors.  Thus the famous SID chip was born with its three channels, each of which can have a square, triangle, sawtooth or noise waevform selected, ASDR envelopes, high, low and bandpass filters, ring modulation, etc.

At the time of the video game crash, video game music was splitting into three separate ideologies.  First there was the American ideology of jingles and sound effects.  Arcade games, from which this concept arose, needed little else.  Since the consoles were considered dying and computers did not have exceptional sound capabilities across the board, little attention was given to music, except in certain instances.  Richard Garriott and Origin Systems, beginning with Ultima III, supported full music scores, but this was an unusual idea, especially for role playing games.  On the Apple II, you needed a special card called the Mockingboard to hear the music, and the board was not especially popular.  Phillip Price's Alternate Reality series had a very elaborate musical intro for its time, especially considering it was developed for the Atari 8-bit series.  Even with title music, most of these games were played in silence.  Pitfall II : Lost Caverms was a rare exception for the 2600, but that required a complex and unique chip to help it play music.

The second method of music was the Japanese approach.  This was focused around the Famicom (NES), the Sega Mark III (Master System) and the 8/16-bit Japanese computers of the time.  More and more, the concept of music always was in force.  Konami's Gyruss (1983) and Gradius (1985) are good examples of early arcade games where there real music tracks playing throughout.  While the Mark III had relatively anemic built-in sound hardware, it could be upgraded with an FM Synthesizer Module.  The NEC PC-8801 and 9801 had Yamaha FM chips, the MSX had sound add-on upgrades, and the Famicom could support external audio chips in cartridges, and its built-in sound was put through its paces.  Composers like Yuzo Koshiro and Koji Kondo became internationally famous, or at least their music did.

The third method was the European method.  Unlike their American and Japanese counterparts, who enjoyed cartridge and floppy disk games, European gamers generally played their games off cassette tapes until the Amiga and ST became popular.  Cassette tapes take exponentially longer to load than floppy disks but the C64 Datasette was far cheaper than the disk drive in Europe.  To compare, the Commodore 64 could store 170KB on each side of a formatted floppy disk.  While a 90-minute cassette can store more data per side, the system can only handle a 64KB load at a time.  Loading a game could be very slow, up to ten minute load times were not unheard of.  Someone had the bright idea of having the computer do something while a game loaded, and the concept of the chiptune was born.  While the tape was turning, a special piece of music would play on the computer.  Soon these pieces would become complex and push the limits of the SID's capabilities.  Tunes were also made, on a much lesser scale, for the European Atari 8-bit machine, the ZX Spectrum 128 and Amstrad CPC machines.  The actual in-game music was generally much less impressive, due in part because the audio no longer had the primary attention of the 1MHz 6510 of the C64.

Since the American game developers were comparatively muted, Japanese games began defining the music for two-thirds of the gaming world.  Super Mario Bros., the game that firmly established the NES as giving people a reason to buy consoles again, has music for virtually every portion of the game except the title screen.  The game's classic tunes accompany Mario as he proceeds across the Mushroom Kingdom to save Princess Toadstool (later Peach).  There are not one but four major pieces of music depending on the level you are in.  This music plays non-stop until you complete the level.  The main theme (da-da-da da-da da)is even today almost instantly recognizable, even by people who have never played the game.  Series like Castlevania and Mega Man, both of which began on the NES, were famous for the quality of their soundtracks.  Even RPGs like Dragon Warrior, Final Fantasy and the ports of the Ultima games to the NES had full sountracks and were rarely silent.

One comparison I can make is between Super Mario Bros and its C64 clone, Great Gianna Sisters.  GGS slavishly copied the gameplay of SMB while adding very little.  The C64 had the capabilities to make a very decent port of SMB, and GGS is something like a decent port.  One area the developers failed to take inspiration is in GGS's music.  While the game is never silent, containing title screen music and in-game music, the in-game music leaves something to be desired.  Unlike SMB, the overworld music is also used for the underworld, so the only time the actual music changes is in the castles. In SMB, in addition to the underground, there are also water levels with music, music when you get an invincibility star and the castle music.

The most important distinction, however, between Kondo's music in SMB and Huelsbeck's in GGS is that Kondo's music effortlessly flows with the game.  It makes you want to keep going and complements the level.  The underground has spooky music, the water worlds have slower paced music and the castle levels sound harsh.  Its catchy stuff.  Huelsbeck's in-game music tries to capture that same "traveling along" spirit but it just does not work nearly as well.  The music in GGS calls too much attention to itself compared with what is happening on the screen.  The main theme is full of odd notes and sound effects, and the castle theme is discordant.  The music is also somewhat at odds with the whimsical and cute nature of the game.

The chief difference between chip music and game music thus is that chip music is any music composed with a computer or console sound chip.  On the Commodore 64, the European composers went wild with chip music.  However, the chip shows its greatest potential when the system does not have to keep track of input, scrolling or sprites, in other words when the game is not actually being played.  An excellent case in point is the music for Mayhem in Monsterland.  This late C64 from the UK is quite an achievement considering the limitations of the C64, the gameplay is smooth and the graphics are extremely detailed and colorful for the system.  However, the in-music is extremely simple, repetitive and monotonous.  The port of R-Type to the system kept the original arcade music intact and the results are very impressive.  The gameplay, however, is less impressive compared to other ports of the game.

The NES showed that you can have good music and good gameplay.  Mega Man 2 is one of the best examples of this.  The level designs are not always perfect, but the quality of the music just makes you want to keep playing.  Also, Mega Man 2 had some stunning large enemy graphics and animated backgrounds for the time.  However, as much as I love the music to games, I do not have stored in my smartphone or listen to them in the car.  The music is best experienced, by far, when  you are actually playing the game.

This bring me to an ideological issue I have with C64 chip tunes.  You are hearing that music while the game's cassette tape is loading.  You are not playing during that time.  NES and other console games do not have loading times.  I am listening and playing.  With the C64, you listen, then you play but rarely both at the same time.  In my opinion, the first five to ten minutes waiting for your game to load is to listen to some musician trying to demonstrate how well he can program the SID chip.  I can find better ways to spend my time, thanks.

First Generation Roland Sound Canvas Devices

In this article, I will take an overview of the various first generation devices Roland released bearing its "Sound Canvas" branding and GS standard and their importance to PC gaming.  I characterize a "first generation Roland GS device" as any device with the features of an SC-55 but not the full features of an SC-55mkII.

In 1991, Roland released its SC-55 MIDI Sound Generator, its first GS product.  This machine supported 16 MIDI channels (percussion on channel 10), 128 capital tones, 69 variation tones and 8 percussion/drum sets.  It could support up to 24 voice polyphony at one time (each instrument using 1-2 voices or partials).  It also had an effects processor with chorus and reverb which games (Ultima VIII : Pagan) have used.  It has a battery to remember the user's settings   This is a standard CR2032 coin cell in a holder and should be replaced or removed when you purchase a unit.

Its backlit LCD screen will show which tone is being played by which part, and games can also control the text at the top of the display (Lands of Lore).  All first generation devices also supported 128 MT-32 tones and a MT-32 + CM-32L percussion set (63 sounds).  The total Sound Canvas patch set is 3MB in size, 1MB of which is probably dedicated to the MT-32 tones

The SC-55 has two MIDI IN ports, one MIDI OUT and one MIDI THRU port.  It has two RCA input jacks and two RCA output jacks and a headphone mini-jack.  It also comes with a hand held remote but no software.  It has 18 front panel buttons.  From here you can mute all sound output from the module, which is very useful if you are sending the input from an MT-32 or CM-32L through it.  You can set the MT-32 emulation mode by pressing the instrument left button as you turn the power on and pressing All.  You can set the GS mode by pressing the instrument right button and pressing All.  You can do a full factory reset by holding both instrument buttons and pressing all.

The earliest Roland SC-55s simply have a "GS STANDARD" logo on the bottom of the front panel, while slightly later SC-55s have a "GS" logo.  Modules with the GS logo may still be

Between these Roland SC-55s and the later devices, there were two changes in the instrument map. Early modules have at Program Change #121 Fl. Key Click.  There is no Breath Noise tone.  Later modules in the series would put Breath Noise as the default tone on PC#121 and put Fl. Key Click as a variation tone.   Breath Noise is the canonical General MIDI tone for PC#121.  Early modules lack a sine wave variation tone at PC#81.  These changes can be seen in all General MIDI/GS units and even some simply "GS" branded units.  GS branded SC-55s with a Control ROM version of 1.10 will have the old instrument table, while units with a 1.20 or 1.21 Control ROM will have the new instruments.

If you want to find the version number of your unit, put the SC-55 in standby mode and press both Instrument buttons followed by both MIDI CH buttons.  The information will flash on the LCD panel.

A hypothesis has circulated that certain PC game composers may have used an early "GS STANDARD" to compose their music.  Examples included Descent and Descent 2, DOOM, DOOM II or Duke Nukem 3D.  However, the composer for DOOM I & II and Duke Nukem, Robert Prince, has stated that he did not use an early SC-55.  Moreover, at least six composers contributed to Descent and Descent 2.  There is little likelihood of more than one or two of them using an early module.  I would suggest that this hypothesis is a myth that has been debunked.

Next, Roland released the SCC-1 IBM PC sound card.  This card contained the synthesis portion of the SC-55 with a cut-down Roland MPU-401 interface.  No battery, no display.  Nonetheless, if a game had an install option for the Roland SCC-1, the exact same functionality will be present though a Roland MPU-401 card/breakout box connected to an SC-55 via MIDI OUT.  The SCC-1 has two RCA output jacks, one headphone mini-jack, one MIDI OUT and one MIDI IN mini-DINs.  They need adapters to full DINs.  Pinouts can be found here : http://nerdlypleasures.blogspot.com/2010/03/tutorial-how-to-get-roland-mt-32.html

Soon after, Roland released the GS compatible devices in its "computer module series", the CM-300 and CM-500.  The CM-300 has the exact same capabilities as the SC-55 except no LCD panel or buttons and fewer ports.  The CM-500 is a CM-300 combined with an CM-32L.  Both CM modules lack a battery.  Both have one MIDI IN, MIDI OUT and MIDI THRU ports.  They also have two auidio output 1/4" jacks, one stereo headphone 1/4" jack.  The CM-300 has two audio input 1/4" jacks, intended for an MT-32 or CM-32L's input.  The CM-500 has a four-position mode switch instead.  The CM-500 is a true Roland LA Synthesis device, but its vibrato has been criticized as noticeably harsher than the MT-32, MT-100, CM-32L, CM-64 and LAPC-I.  The SCC-1, CM-300 and CM-500 also support the first 64 tones ("built-in") of the CM-64 module, although the instrument sample quality is superior on the true CM-64.

By no later than March of 1992, Roland added official support for the General MIDI standard to the SC-55, CM-300 and CM-500.  These modules are identified with the General MIDI logo being next to the GS logo.  Unlike the SC-55mkII, the SC-55 cannot initialize GM mode via the front panel.  However, it can turn the GS features off by pressing the part buttons simultaneously, using the all and mute buttons to get to the Rx GS Reset item and pressing the instrument left button to turn it off (and the right button to turn it on).

What does the addition of General MIDI support mean in practice?

General MIDI is a derived subset of the GS standard.  In other words, GS is General MIDI with some extra features.  In a pre-General MIDI module, if a GS reset or a GM reset was sent to the module, it would have the identical effect, the module would be reset.  In a General MIDI module, a GS reset would turn on GS features (variation tone support and NRPN) if the device was in GM mode.  You would think that a GM reset would turn off those GS features.  However, this is not the case unless the setting of Rx GS Reset is turned off.  In that case, games that use variation tones will not be used (Might and Magic IV-V).

In the beginning of 1992, Roland released the SC-155.  This device added sliders to control various settings of the synthesizer and otherwise looks like an SC-55.  This is the first device that officially supported the General MIDI standard on its release, as would all Roland products released thereafter.

Later in 1992, Roland released the JV-30 Keyboard.  This was a music synthesizer keyboard with 61 keys and could save the user's modifications to individual tones.  It appears to contain the extra tones found in the SC-55mkII.  However, unlike the mkII it does support capital tone fallback.

What is capital tone feedback and why is it important?

Each of the 128 Capital Tones can support 127 Variation Tones in the GS standard, even though the upper limit never came close to being never reached.  If a composer used variation tone #5 of capital tone #1 (Grand Piano), in his MIDI synthesizer for a certain piece of music, it would not play if a listener played back the song on another device that did not contain variation tone #5.  In the early first generation GS devices, if the specified variation tone did not exist in the module, then the module would fallback and play the capital tone instead. Since variation tones are supposed to be similar to the capital tone, some semblance of the sound the composer intended would be played.  Beginning with the SC55mkII, however, no sound will be heard if the song selects an invalid variation tone.  This can be manifested when programmers got lazy and relied on this feature instead of sending proper Program Change and Bank Select messages (Space Quest V : The Next Mutation).

Finally, Roland released an update to the SCC-1.  The board itself is labeled the SCC-1A.  It has the extra sounds of the JV-30 Keyboard but does not support capital tone fallback.  This was a feature patented by Yamaha apparently.

Also during 1992, Roland released the General MIDI only SC-7.  This cut down module does not support the GS standard, so no variation tones.  However, it does support a Serial MIDI interface (no longer useless for DOS games because of SoftMPU) and 28-voice polyphony.  It also supports six out of the nine drumsets, reverb and chorus found in a true Sound Canvas.  The SC-55mkII would incorporate the increased polyphony of the SC-7 and the sounds of the SCC-1A.

Sunday, June 2, 2013

IBM PCjr. and Tandy 1000 Sound : Multiplexer Weirdness

In the original sound system design for the IBM PCjr., there could be four sources of audio, the 8253 Timer-driven PC Speaker, the 3 Voice TI SN 76496, the Cassette input or an adapter on the bus like the IBM PCjr. Speech Attachment Sidecar.  IBM set aside two bits in the 8255 Programmable Peripheral Interface at I/O Port 61 to control a multiplexer which would determine the source to be used.  The bits used were 5 & 6, and here is what they controlled :

Bit 6  Bit 5
0       0       PC Speaker (Default)
0       1       I/O Channel Audio In (PCjr. Speech Attachment)
1       0       Cassette Audio Input
1       1       TI SN76496 3 Voice

Pretty logical.  An important point to note that this multiplexer only controlled the output to the external audio RCA output jack, the RF output connector or the PCjr. Monitor connector for an IBM 4863 PCjr. Display with built-in speaker.  The PCjr.'s internal beeper would only output PC Speaker Audio, doubtless IBM felt it was too tinny for anything else.

When Tandy cloned the PCjr., this arrangement served them just fine for the Tandy 1000 with two exceptions.  Since the 1000 did not support a cassette interface, the setting for the Cassette Audio Input sent nothing to the external audio RCA output jack.  However, they decided to engineer the outputs very differently.  The TI SN 76496 has an audio input pin which can mix an external audio source with the 3-voice sound the chip itself is producing.  On the PCjr., this pin is unconnected.  On the 1000, it is connected to the PC Speaker input.  Then the mixed audio is sent to the internal speaker and to the multiplexer.  Thus the bits operate as follows :

Bit 6  Bit 5
0       0       PC Speaker (Default)
0       1       I/O Channel Audio In
1       0       Nothing
1       1       PC Speaker + TI SN76496 3 Voice

No known device actually sent audio over the ISA bus, so the I/O Channel Audio In is effectively a "nothing" selection.  The Tandy 1000 had a very large internal speaker, so the PC Speaker and 3-Voice sound is done justice.  However, the internal speaker cannot be turned off without physically disconnecting it from the pins on the motherboard..

Thinking that inability to turn off the internal speaker was a bad thing, Tandy decided to make the multiplexer more complex in the SX and EX series.  They added a third bit which is intended to turn the internal speaker off if set to 1.  Tandy refers to these bits as follows :

SNDCTRL0 = Bit 5 of 8255 Port B / Connects to MC14529 Pin 6/"A"
SNDCTRL1 = Bit 6 of 8255 Port B / Connects to MC14529 Pin 7/"B"
SNDCTRL2 = Bit 4 of 8255 Port B / Connects to MC14529 Pin 15/"STy"

The internal outputs were thus made more complicated :

Bit 6  Bit 5  Bit 4       Internal                                                      External
0       0       0             PC Speaker + TI SN76496 3 Voice         PC Speaker (Default)
1       0       0             PC Speaker + TI SN76496 3 Voice         Nothing
0       1       0             I/O Channel Audio In                                I/O Channel Audio In
1       1       0             PC Speaker + TI SN76496 3 Voice         PC Speaker + TI SN76496 3 Voice
0       0       1             Nothing                                                     PC Speaker
0       1       1             Nothing                                                     Nothing
1       0       1             Nothing                                                     I/O Channel Audio In
1       1       1             Nothing                                                     PC Speaker + TI SN76496 3 Voice

Thus if a program sets Bit 4, the best you would hear from the external speaker would be the PC Speaker sound.  The SX's multiplexer is wired to have two outputs, one for the RCA jack and another for the internal speaker.  The EX's multiplexer has only one output wired, and it goes to an earphone jack and the internal speaker.  By default the audio is heard through the internal speaker, but plug in a mini-jack and the audio is switched to whatever is plugged into the jack, headphones or external speakers.  However, the the portion of the multiplexer the EX uses is controlled by Bit 4, so if that bit is set you will have the same problem as on the SX.  You will also have the same problem if a program sets bit Bit 5 without setting Bit 6.  If Bit 6 is set without Bit 5, you will get no external audio output on the SX.  The SX has a potentiometer inside the machine that can control the internal speaker's volume, but the EX has a volume wheel on the outside.

The HX, TX, TL, SL and later systems also have headphone jacks with external volume wheels.  However, Bits 5 & 6 do nothing in the HX, and in the TX and the other systems bit 5 has no function while bit 6's function is completely different.  Only bit 4 functions in these systems.  In addition, I/O Channel Audio In is no longer supported.

Since I have an SX, I can discuss its multiplexing scheme.  The default value for I/O port 61 on bootup is 08.    This means that Bits 4-6 are 0.  The external output will only output PC Speaker sound.  This is generally not desirable, and Sierra's games will enable the external audio.  After exiting from a Sierra game, the value for I/O port 61 is now 68.  The program has set bits 5 & 6.  LucasArts games will not enable the external audio output on the SX, so the simplest solution is to run a Sierra game before hand.  There is a program called tdyspkr.com that will allow you to make settings designed for the SX or easily allow you to manipulate the bits yourself.

Tandy 1000 Originals

I have often had occasion to blog about the Tandy 1000, but in terms of gaming, its importance is rather limited.  I am a proponent of sticking to the original development system for a game.  For example, practically every game published by Richard Garriott (before and with Origin) in the 1980s was developed on the Apple II.  Most of the 1980s U.S. computer game developers cut their teeth one way or another on Cupertino's machine.  His games really do not have a whole lot to offer on other systems.  They don't take much advantage of the enhanced graphics and sound of the Atari 8-bit, ST, Commodore 64 or Amigas.  Jordan Mechner's Karateka and Prince of Persia may look more colorful on other systems but play the same.  For later games, FTL released their seminal dungeon-crawler classic Dungeon Master for the Atari ST and the game looks the same on the PC, even though it supports VGA.  Sid Meier's Pirates! is a classic game that plays very well on its original platform, the Commodore 64.  Not all games fall squarely into this category.  Will Wright's SimCity began life on the Commodore 64, but by the time it was ported to 16-bit machines, it had gained many new features and functionality.  Even so, it received Amiga and Macintosh releases before it was released on the PC.

Typically, the main advantage of the PC over every other platform is the prolific availability of hard drives, even (relatively) for the earliest machines, many speeds to choose from and a huge variety of clones to choose from.  Who wants to put up with long load times, floppy swaps and inflexible system speeds?  The earliest PC games would have been developed for the IBM PC, but most of those games were ports or otherwise historically unimportant and not usually rigidly wedded to IBM's hardware or the CPU speed.

The first historically significant PC game that was released and was not a port was King's Quest.  This of course was originally released for the IBM PCjr. The PC version was released soon after and Tandy 1000 version would have been in existence by 1985.  The Tandy 1000 version is nearly identical with the PCjr. version.  King's Quest II came in one version with support for all three architectures, PC, PCjr. and Tandy 1000.  However, it is clear that of these three systems, the best one to play any of Sierra's AGI games is the Tandy 1000.  Not only do you get the enhanced graphics and sound, you do not incur the performance penalty of running the first 128K of the PCjr. on the Tandy 1000.

Thus is my definition of a "Tandy Original".  First, it must not have been originally developed or released for a non-PC system.  No ports from an Apple machine or Atari or Commodore non-IBM PC compatible.  Second, the game supports the Tandy Graphics Adapter but no EGA or VGA support, or in the alternative the game supports the Tandy Sound Chip but has no Adlib, Sound Blaster, Roland MT-32 or other sound device support beyond the PC Speaker.

Thus for the AGI-engine games after King's Quest, they were probably developed mostly on Tandy and PC systems.  Even King's Quest probably had more work done on it on the PC than on the PCjr. due to the not-insignificant advantages for the PC.  When the hard drive installable versions of the games were released, starting with King's Quest III and Space Quest, these were easy to do on the Tandy 1000 and PC compatibles.  Since hard drives were an expensive third-party add-on for the PCjr., fewer of these systems enjoyed this feature.  I classify all the AGI engine-games as Tandy 1000 originals with two exceptions : King's Quest IV, which was developed for the SCI system and supported much more advanced sound hardware than the Tandy chip and Donald Duck's Playground, which was originally a non-AGI Commodore 64 game.

None of the other games Sierra released during the mid-to-late 80s qualify as a Tandy original.  The Disney games were Apple II originals, the Game Arts games were originally developed for the NEC PC-8801.  3-D Helicopter Simulator does not take advantage of Tandy sound and supports high-res EGA.  Thus 11 games from Sierra can be called Tandy 1000 originals with one PCjr. original.

While LucasArts, then Lucasfilm, did not have true Tandy originals, in Maniac Mansion and Zak McKracken their Enhanced versions qualify as Tandy originals.  The low-resolution games were developed for the Commodore 64, but the high resolution enhanced versions were clearly developed on the PC.  The Amiga and Atari ST versions do not look or sound any better than the PC versions.  These games do support EGA graphics.  When run in a PCjr., these games will display CGA-quality graphics and PC Speaker sound.  The low resolution versions behave identically.

Similarly, the first two games in the SSI Gold Box series, Pool of Radiance and Curse of the Azure Bonds, also had support for the Tandy sound chip and nothing more advanced.  However, these were ports from the Commodore 64.  On a PCjr., they will need the Tandy mod to show the graphics properly.  Hillsfar does not use Tandy Sound and Champions of Krynn, Secret of the Silver Blades and later games support Adlib.

Friday, May 24, 2013

The Price of PC Sound (and some other stuff)


How much do we pay for sound hardware in our PCs today, not including speakers?  The answer is usually nothing, all PC motherboards come with onboard sound chips that are satisfactory for 95% of users.  Before 1987, the answer would have been the same, since there was no sound hardware available for PCs.  You were stuck with the PC speaker or the three-voice sound chip if you owned a Tandy 1000 or IBM PCjr.

In 1987, sound hardware products were being marketed and released for the IBM PC platform for the first time.  The first device that was not tied to a particular application (like Bank Street Music Writer) was the IBM Music Feature Card.  This $600 card provided a MIDI interface and a four operator OPP frequency modulation synthesis chip with eight channels and stereo sound.  The card came with 240 preset patches and allowed up to 96 user-created patches.  It was intended for professional musicians.

The second device may have been the Roland MT-32.  While Roland had marketed a MIDI Interface called the MPU-401 prior to 1987, it was an external box that could be used with many systems when combined with the right interface card.  There were interface cards for the Apple II, Commodore 64, all the major Japanese computers of the mid-80s and two cards for the IBM PC.  The MPU-401 was also marketed toward professional MIDI musicians, but with the MT-32, Roland had a product with a price point that could be enjoyed by professional and non-professional musicians alike.  (Consider that the Yamaha DX-7, the first and very famous all-digitized synthesizer, cost $1,955 in 1983).  The MT-32 was derived from Roland's D-50 Synthesizer and used a technology called Linear Arithmetic to combine digital samples with waveform synthesis.  It supported eight channels and one percussion channel.  It supported 32 voices, with each channel requiring 1-4 voices depending on the sound selected.  It has 128 preset patches, 30 percussion patches and allowed for up to 64 custom patches.  It supported reverb and stereo playback.

The third device may have been a cheaper card manufactured by Ad Lib, Inc. called the Ad Lib Music Synthesizer Card.  This card simply interfaced an OPL2 chip to the PC's expansion bus and was intended for the home musician or teaching children about music.  The OPL2 is capable of nine channels of two-operator frequency modulated synthesis or six channels plus five percussion sounds.  Its only supports mono output.

Seeking a competitive edge in the burgeoning market for PC games, Sierra sought to make its products technologically advanced.  Almost all the non-PC systems had better audio capabilities, but their sound hardware was built-in.  Thanks to Nintendo, the days of buying an all-in-one computer that could run applications and games were gone.  However, people still prized their leisure time and still wanted to play games on their PC, especially the more complex games that were not generally found on consoles.  So Sierra On-Line began to search for hardware products that could bring its PC games to the next level.  Roland suggested the MT-32 and history was made.  Then the Adlib came for the many more budget-minded PC game players.

In 1988, Sierra began to sell computer add-on hardware directly to its customers.  It is the only company of the time I know of which did this.  Thus if your local computer store did not carry the cards, you had an easy outlet to obtain them.  Sierra would include flyers in its new games, beginning with King's Quest IV, explaining and hyping the benefits of these new sound cards.  It would send you a demo cassette tape almost for free to show off these cards' capabilities.  Here are the prices if you wanted to take the plunge.

1988
Adlib - $245.00/$195.00 (with/without Visual Composer)
MT-32 + MPU-IPC - $550.00

Sierra never offered IBM's card for sale, and its support for it in games was underwhelming.  Eventually Sierra stopped shipping drivers and patches for it, and at least two games, King's Quest I SCI and Sorcerian will freeze with the driver.  You paid MT-32 prices for the IBM Music Feature but ended up with Adlib sound quality with Sierra's games.

The idea of spending $550 just to hear PC game audio was not something many people were prepared to spend money on in 1988.  According to the U.S.'s Bureau of Labor Statistics CPI Inflation Calculator, $550 has the same buying power today as $1,081.08.  Who today is going to spend over one thousand dollars today on PC sound equipment?  Someone who wanted to make music, whether as a professional or as a serious amateur.  That games could use the module seems to be to have been like chocolate icing on the cake.  Today you could not convince someone to spend a thousand dollars on a sound card for gaming regardless of how many channels and bit rates it supports, the human ear can only process so much.

1989
Adlib - $195.00/$175.00 (card only price decrease)
MT-32 + MPU-IPC - $550.00
Game Blaster - $129.95
MT-32 + MPU-IMC - $650.00

The Game Blaster was supported, presumably in an attempt to provide something better than the PC Speaker at a cheaper price point.  The Game Blaster came packaged with Sierra's Silpheed.  While the Game Blaster can provide twelve channels of stereo frequency and amplitude controlled square waves with a noise channel and an envelope channel, it frequently sounded like the Tandy 3-voice sound chip, only in stereo.  The MPU-IMC was the Microchannel version of the MPU-401 interface for IBM PS/2 computers.

1990
Adlib - $175.00
Game Blaster - $129.95
Sound Blaster - $239.95
LAPC-I - $425.00
MT-32 + MPU-IPC-T - $550.00
MT-32 + MPU-IMC - $650.00

The LAPC-I arrives to deliver on the promise of having a synthesizer fully on the card.  While it is better priced than the MT-32 and includes 33 additional sound effects, Sierra's games frequently sounded better on the MT-32 because it abused bugs in the device to make custom sounds.  Note how the prices have not really moved from the previous years.  However, by this time, Sierra would be offering deals if you bought a card from them, like two free Sierra games of your choice if you bought the MT-32.  (At their prices, that was over $100 in savings).

With the LAPC-I, for the first time gamers can enjoy a discount from Sierra.  The MT-32 requires a separate MPU-401 interface, which seems to increase the price by $100-200.  The LAPC-I has the interface built-in except for the external ports and was slightly cheaper to manufacture.  However, by this time the MT-32/LAPC-I only had two years before it would be supplanted in the market by the Roland SCC-1 and other devices.

Since the Adlib was an extremely simple card, clones began popping up once other vendors discovered which chips it was using and games from Sierra and other publishers were being released with support for it.  The people at Ad Lib, Inc. thought they were being clever by scratching off the chip part instead of obtaining an exclusivity agreement with Yamaha for the chips being used.  However, in 1987 the board was not yet a great success.  By this year you would see a $20 rebate coupon for the Ad Lib in game boxes.  If you bought a clone board, you could easily save yourself $50-60.

Sierra replaced the MPU-IPC with the MPU-IPC-T, and while these two devices are virtually identical, the -T version leaves off the SYNC connector on the expansion box.  It does allow for easy changing of the I/O ports, but Sierra only supported the MPU-401 on I/O 330-331.

The Sound Blaster is also sold, and at this price it contained the Game Blaster chips.  It provided an Adlib-compatible OPL2 chip, a joystick/MIDI interface for the first time and provided a widely-accepted standard for digitized sound output.

1991
MT-32 + MPU-IPC-T - $399.99
MT-32 + MPU-IMC - $499.99
CM-32L + MPU-IPC-T - $545.00/$449.95
CM-32L + MPU-IMC - $549.95/$499.95
CM-32L Macintosh - $545.00
LAPC-I -$445.00/$399.95/$349.99
MCB-1 - $90.00/$84.95 (combo w/LAPC-I is $449.95)
Game Blaster - $99.99
Adlib - $109.99
Sound Blaster - $170.00/$159.95/$149.99/$129.95
Sound Blaster MCV - $249.95
Sound Blaster MIDI Box - $129.95/$89.95
Thunderboard - $99.95
Pro Audio Spectrum - $249.95
CD-ROM Kit - $795.00
Supra 2400 Baud Modem (internal) - $88.88
Supra 2400 Baud Modem (external) - $128.88
Gravis Analog Joystick - $59.95
Gravis Eliminator Game Card - $44.95
Gravis Eliminator Microchannel Game Card - $79.99

All throughout 1990 and beyond, Sierra began talking about the benefits of CD-ROM technology, their adoption of it and its eventual replacement of floppy disks.  CD-ROMs were a huge expense in the early days and while Sierra may have released some of the first PC CD-ROM games, the real killer apps for the technology were probably The 7th Guest and Myst.  Interestingly, Sierra seemed to have better support for the Media Vision Pro Audio Spectrums, including stereo FM synthesis support and later 16-bit digitized audio than the Sound Blaster cards.  Presumably by this time there were no difficulties in trying to purchase multimedia hardware from a computer store.

The CD-ROM kit include the Pro Audio Spectrum, a Sony SCSI CD-ROM drive, the CD-version of Jones in the Fast Lane and Compton's Multimedia Encyclopedia.  CD-ROMs were generally connected via SCSI or proprietary interfaces until IDE CD-ROMs became cheap enough to become the only standard most consumers would ever deal with.  Sound cards would be the main way to connect a CD-ROM until the Pentium era.

The Pro Audio Spectrum allowed for stereo OPL2 music, 8-bit stereo digital output at 22K, a MIDI/joystick interface and a non-bootable SCSI interface.  The Thunderboard was a Sound Blaster 2.0 clone without MIDI or Game Blaster support.

The CM-32L finally replaces the MT-32 for the external synthesizer version, and its capabilities are identical to the LAPC-I.  The LAPC-I gets the MCB-1 external MIDI box to reach full parity with the CM-32L and MPU-IPC-T.  The Sound Blaster MCV is the Microchannel version of the Sound Blaster for IBM PS/2 machines.  The Sound Blaster MIDI box is an overpriced device, the functionality of which can be replicated with a standard joystick/MIDI interface cable.

The Sound Blaster prices kept dropping throughout the year.  By this time, the Game Blaster chips were  an upgrade and by the end of the year, Sierra would probably have been shipping the smaller 2.0.

Presumably to complement Dynamix's line of simulators, Sierra also began offering joysticks.  The Gravis Analog Joystick sports three buttons and has a large base and hand-grip handle.  It has a tension dial and the buttons are reconfigurable.  Unfortunately it did not come with a trigger button.  The Eliminator game card was a dual port card with an external dial to control the speed of the card.

By this time, Sierra had just started up The Sierra Network, its online entertainment portal.  It was similar to CompuServe, Prodigy and America On-Line.  The modems being offered were not very fast, but were cheap and apparently sufficient for their service's needs.  In the next year, hardware manufacturers would advertise 9,600 and 14,400 baud modems.

1992
CD-ROM Kit - $795.00
CM-32L + MPU-IPC-T - $449.95
CM-32L + MPU-IMC - $549.95
CM-32L Macintosh  - $449.95
LAPC-I - $399.95
MCB-1 - $84.95
LAPC-I + MCB-1 - $449.95
Sound Blaster - $129.95
Sound Blaster MCV - $249.95
Sound Blaster MIDI Box - $89.95
Thunderboard - $99.95
Pro Audio Spectrum - $249.95
Pro Audio Spectrum 16 - $199.95

1992 is the last year that Sierra would attempt to sell products directly for quite a while.  Increasingly, advertisements from various hardware companies would put their ads into Sierra's Interaction magazine.  Few new products to report, the most notable being the Pro Audio Spectrum 16 at a reasonable price.

1996
Thrustmaster Formula T2 - $129.95
Sierra Screamin' 3D - $199.95

The Sierra Screamin' 3D is a 4MB Rendition Verite 1000 card.  It was bundled with good-to-decent games like Indy Car II, A-10 Silent Thunder, CyberGladiators and a demo of the Rendition version of Quake (vQuake).  Sierra tried again to be predictive of the upcoming technology, but it missed the mark.  Unfortunately, the Rendition chipset had an achilles heel, namely that 2D VGA performance was incredibly poor.  While most games could greatly benefit when the VGA mode was translated into a Rendition mode, those games that could not benefit, like the DOS version of DOOM, were unplayable.  In other words, if the game went beyond the standard Mode 12-13h features, the game slowed to a crawl on the Rendition cards, even on a Pentium II.  DOOM was still extremely popular in 1996.  While Quake was one of the Killer Apps for 3D gaming, it was 3dfx's Voodoo card that took off, even though it was not a 2D card.

The Thrustmaster Formula T2 was a gameport interface racing wheel with pedals, two buttons and a gear lever.  It could be purchased with NASCAR Racing 2 or IndyCar Racing II for $149.95.  Judging by youtube video it was quite a good product back in the day.



Monday, May 13, 2013

Hardcore Computist - Hardcore IBM PC Game Hacking?

The magazine Hardcore Computist was a magazine dedicated to cracking on the Apple II platform.    Every month users would submit their cracks or "softkeys" allowing a user to break the copy protection on commercial software and freely copy that software to disk.  Naturally the magazine only claimed to assist users in making legitimate backup copies of their software, but too frequently programs would be widely distributed anyway.  The magazine also offered hacks to cheat at games, reviews, technical articles and the like.

All issues of Hardcore Computist and related items can be found here : http://computist.applearchives.com/  It is less known that eventually, around issue 48, the magazine started to invite IBM PC software cracks and hacks.  At first, they were slow in coming.  Some issues did not have any, and other issues only had applications, not games.  For these cracks, all that was usually needed was a hex editor and DEBUG, but the cracks varied widely in quality.

Some of these cracks can be found on textfiles.com, and many more can also be found there.

Game        Version PublisherIssue#Protection 
The Dam Busters
Accolade 89 Disk
Chessmaster 2000 1.01 Software Toolworks 89 Disk
The Faery Tale Adventure: Book I CGA & EGA MicroIllusions 87 Document
Ancient Art of War, The
Broderbund 87 Disk
Grave Yardage
Activision 87 Disk
Gun Boat
Accolade 87 Disk
Gauntlet
Mindscape 87 ?
Astrilis
Shaman Games 87 ?
Space Harrier
SEGA Enterprises, Ltd. 86 Disk
Heat Wave
Accolade 86 Document
Hoverforce EGA & VGA, 03-19-91 Accolade 86 Document
Carrier Command
Microplay 85 Document
Where in the U.S.A. is Carmen Sandiego
Broderbund 85 Disk
Colonel's Bequest, The
Sierra On-line 85 Document
Continuun 11/29/90 Data East 85 Document
Crime Wave 1.1 & Unknown Access Software 85 Document
Curse of the Azure Bonds
Strategic Simulations, Inc. 85 Document
Dragon's Lair II
Readysoft Incorporated 85 Document
Dragon's Lair
Sullivan Bluth Interactive Media, Inc. 85 ?
Earthrise
Intersel Corp. 85 Document
Escape from Hell
Electronic Arts, Inc. 85 Document
Earl Weaver's Baseball 1.5 Electronic Arts, Inc. 85 Document
F-15 Strike Eagle II
MicroProse 85 Document
Gunship
MicroProse 85 Document
Caveman Ugh-Lympics
Electronic Arts, Inc. 85 Document
Firehawk : Thexder II 09/24/90 Sierra On-line 85 Document
Battle Chess II : Chinese Chess
Electronic Arts, Inc. 84 Document
Battlehawks 1942
Lucasfilm Games LLC 83 Document
Alley Cat
IBM 83 Disk
Jordan vs Bird: One on One
Electronic Arts, Inc. 83 Document
Grand Slam Bridge
Electronic Arts, Inc. 83 Disk
Bargames
Access Software 83 Document
Archipelagos
FanFare 83 Document
California Games 1.01 02-23-88 Epyx 83 ?
Balance of Power 1.1 Mindscape 83 Disk
Where in the World is Carmen Sandiego 2.0 12-11-89 Broderbund 83 Disk
Where in Time is Carmen Sandiego
Broderbund 83 Disk
Dragon's Lair
Sullivan Bluth Interactive Media, Inc. 83 Disk
Battlehawks 1942 10/06/88 Lucasfilm 82 Document
Centurion
Electronic Arts, Inc. 82 Document
Champions of Krynn
Strategic Simulations, Inc. 82 Document
Command HQ
MicroProse 82 ?
Indianapolis 500
Electronic Arts, Inc. 82 Document
Jack Nicklaus' Greatest 18 Holes of Major Championship Golf CGA, TGA, EGA, HGC Accolade 82 ?
Lowblow Boxing
Electronic Arts, Inc. 82 Document
Might and Magic: Book One - Secret of the Inner Sanctum 11/18/87 New World Computing 82 ?
Might and Magic II: Gates to Another World
New World Computing 82 ?
Railroad Tycoon
MicroProse 82 Document
Silpheed 2.2 Sierra On-line 82 Document
Street Rod
California Dreams 82 Document
M1 Tank Platoon
MicroProse 82 Document/Disk (Document Only)
Test Drive II EGA & CGA Accolade 82 ?
Vette
Spectrum Holobyte 82 Document
ABC Monday Night Football
Data East 82 ?
Abrams Battle Tank
Electronic Arts, Inc. 82 Document
Bob'n Wrestle
Mindscape 82 ?
Nuclear War
New World Computing 82 Document
Pipe Dream
Lucasfilm Games LLC 82 Document
Red Storm Rising
MicroProse 82 Document/Disk (Document Only)
Wing Commander
Origin 82 Document
Populous
Electronic Arts, Inc. 82 ?
Life & Death II: The Brain
Software Toolworks 81 Disk
Crime Wave
Access Software 81 Document
Stunt Driver
Spectrum Holobyte 81 Document
Gauntlet II
Mindscape 81 Document
Wing Commander
Origin 81 Document
Thexder II : Firehawk
Sierra On-line 81 Document
Welltris 10/03/89 Spectrum Holobyte 80 Document
Serve and Volley
Accolade 80 Disk
Where in Time is Carmen Sandiego
Broderbund 78 Disk
Indianapolis 500
Electronic Arts, Inc. 77 Document
Ultima V : Warriors of Destiny
Origin 77 Disk
Where in Time is Carmen Sandiego
Broderbund 77 Disk
Interlude II
? 76 Disk
Rack'Em
Accolade 76 Disk
Mean Streets
Access Software 76 Document
Red Storm Rising
MicroProse 75 Document/Disk (Disk Only)
Pete Rose Pennant Fever
Gamestar 75 Document
Silpheed           1.0 Sierra On-line 75 Document
Paperboy CGA, TGA & EGA, PAPERxxx.EXE = 06/17/88 Mindscape 75 ?
Zany Golf
Electronic Arts, Inc. 75 Document
Pool of Radiance
Strategic Simulations, Inc. 75 Document
Paladin
Omnitrend Software, Inc. 75 Document
Welltris WELLTRIS.EXE = 10/03/89 Spectrum Holobyte 74 Document
Batman
Data East 74 ?
Motocross CGA & EGA, Possibly TGA & HGC Gamestar 74 Document
Populous
Electronic Arts, Inc. 74 Document
SimCity
Broderbund 74 Document
Their Finest Hour: The Battle of Britain
Lucasfilm Games LLC 74 Document
Battle Chess
Interplay 72 Document
Chuck Yeager's Advanced Flight Simulator           1.0 Electronic Arts, Inc. 72 Disk
Battlehawks 1942
Lucasfilm Games LLC 72 Document
688 Attack Sub
Electronic Arts, Inc. 72 Document
Shinobi SH.EXE = 9/23/89 SEGA Enterprises, Ltd. 72 ?
Zany Golf
Electronic Arts, Inc. 71 Document
Mean 18 + Arch GOLF.EXE = 89375 bytes, ARCH.EXE = 49631 Accolade 70 Disk
The Last Ninja
Activision 70 Disk
The Games: Winter Edition
Epyx 70 Disk
Jack Nicklaus' Greatest 18 Holes of Major Championship Golf
Accolade 70 Document
Defender of the Crown
Mindscape (Cinemaware) 70 Disk
Infiltrator
Mindscape 70 ?
Perfect College
Mindscape 70 ?
Gold Rush!
Sierra On-line 70 Document
F-19 Stealth Fighter 10/15/88 MicroProse 70 Disk
Police Quest II: The Vengeance
Sierra On-line 70 Document
Leisure Suit Larry Goes Looking for Love (In Several Wrong Places)
Sierra On-line 70 Document
Apollo 18: Mission to the Moon
Accolade 70 ?
Mean 18 + Arch 03/29/88 Accolade 68 Disk
Bop 'n Wrestle
Mindscape 68 ?
Willow
Mindscape 68 Disk
Ancient Art of War, The
Broderbund 68 ?
Chuck Yeager's Advanced Flight Trainer 2.0 1.2 Electronic Arts, Inc. 68 ?
The Games: Summer Edition
Epyx 68 ?
California Games
Epyx 68 ?
Trivia Master
? 68 ?
Gato
Spectrum Holobyte 68 ?
The Last Ninja
Activision, Inc. 68 Disk
Rampage
Activision 68 Disk
Leisure Suit Larry Goes Looking for Love (In Several Wrong Places)
Sierra On-line 68 Document
Fast Break
Accolade 68 Disk
4th & Inches
Accolade 68 Disk
Test Drive
Accolade 68 Disk
The Three Stooges
Cinemaware Corp 68 Disk
King's Quest IV: The Perils of Rosella 09-19-88, 09-24-88 Sierra On-line 68 Document
F-15 Strike Eagle
MicroProse 68 Disk
Reader Rabbit
The Learning Company 66 Disk
Balance of Power
Mindscape 64 Disk
Trivia Fever
Professional Software 64 Disk
Mean 18 + Arch EGA Accolade 64 Disk
Ultima II: Revenge of the Enchantress .COM Sierra On-line 63 Disk
Chuck Yeager's Advanced Flight Simulator           1.0 Electronic Arts, Inc. 63 Disk
Test Drive CGA 10/26/87, 11-17-87 (Not EGA, see Issue 65) Accolade 61 Disk
Mind Prober
The Human Edge 60 Disk
Zork II: The Wizard of Frobozz
Infocom 56 Disk
Zork: The Great Underground Empire
Infocom 56 Disk
Sargon III
Hayden Software Co. 54 Disk
Pool 1.5
Innovative Design Software 53 Disk
Zork III: The Dungeon Master
Infocom 53 Disk
Flight Simulator          1.00 Microsoft 52 Disk