Friday, April 29, 2016

Recommendations for Two Player Simultaneous Non-sport NES Games

The NES has quite a few good two player games.  When you have a friend over and want to play the NES, it would be nice to have a good game or two ready.  However, two player alternating games are not much fun when you are watching the other person play all the time.  Not all two-player simultaneous games are great either.  Here I am going to give my recommendations for good two player simultaneous NES games.  Since I am not a big sports fan, I am excluding those games.

Archon

Archon is like Battle Chess without the strict chess rules.  It is a port of the Atari 8-bit game.  Each player gets a nearly mirror image set of "pieces" to use, one side representing the Light and the other side representing the Dark.  When a piece enters the square of an opposing piece, the players control the pieces in an arena and fight to the death.  You can win the game by controlling all five squares or by killing the enemy wizard/sorceress.  The various pieces have different strengths and weaknesses.  Some pieces have a melee attack, some have a ranged attack and some have a touch attack.  The color of the board and some of the squares shifts between light and dark, giving the favored side an advantage.  The wizard and sorceror have some one-time use magical spells.  As a one player game, the AI is exploitable and cheap, but two players can have a lot of fun with this game.  The game is easy to pick up and play and there is plenty of strategy to be employed.

Balloon Fight

Balloon Fight is essentially Nintendo's clone of Joust.  The object of the game is to break your opponents' balloons by landing above them.  Then you have to kick them off the platform, otherwise they will inflate another balloon.  You have to dodge lightning sparks and the computer enemies.  Be careful, you can break your friend's balloons just as easily as you can an enemy's.  It's pretty simple, but the late Satoru Iwata's classic really captures the spirit of Joust.  The control is easy to grasp yet hard to master, like all good Joust ports.  Its even better than the official Joust NES port.


Thursday, April 28, 2016

Sierra's Short-Lived Tandy Color Computer Support

In 1980 Radio Shack released its budget line of computers with the Tandy TRS-80 Color Computer.  Originally priced for $399.00 for the base model, it came with a 6809 CPU running at .894MHz, 4K of RAM and could display only upper case characters.  It could be expanded to 16KB, then 32KB and finally 64KB.  It had a built-in BASIC, a cartridge slot, two joysticks and a 53-key keyboard.  Its most often used graphics mode was a 256x192 artifact mode capable of four primary colors (black, white, blue and orange). It used single sided, double density 5.25" drives that held 156,672 bytes per side for user data using Radio Shack DOS.  Its sound hardware was a 6-bit DAC and it had a serial port and a cassette port.  The Color Computer 2 was essentially the same machine with a better keyboard and more easily expandable RAM.  Later CoCo 2s supported lower case text characters, unofficially.  Both of these early CoCos were essentially limited to 64KB of RAM.

In many ways, the CoCo 1 and 2 reminds one of the Apple II+.  Both machines really had a widespread maximum of 64KB of RAM.  They used 8-bit processors running at speeds close to each other.  Both machines can produce low resolution direct colors but really show detailed color images with NTSC composite artifact colors. If you subtract the purple/green combination from the Apple II, the graphics of a CoCo and an Apple can look very, very similar.  Both machines had somewhat limited (pre-IBM layout) keyboards and did not support lowercase characters officially.  Both came with ports for analog joysticks and cassette storage.  The sound hardware for each machine was rather crude and neglected.  Disk storage was only slightly better on the CoCo.

The CoCo 3 was a much more significant upgrade.  It came with double the CPU speed, 128KB of RAM and could be officially expanded to 512KB of RAM.  There were four extra keys on the keyboard.  It had new RGB-based graphics modes which could support 16 out of 64 pure colors and supported several higher resolutions in 2 colors (640x192), 4 colors (320x192 and 640x192) and 16 colors (320x192).

Wednesday, April 27, 2016

Nuby Game Light - Best Contemporary Light Source for the Game Boy

The Nuby Light alongside the Game Boy
The Game Boy was better than its competitors in many ways, more compact, longer battery life, better sound (against Game Gear), more buttons (against Game Gear), higher resolution (against Lynx), lower price, first to market, superior pack-in game.  Otherwise, the screen was its achilles heel : poor contrast, four color monochrome, difficulty in displaying fast moving objects and non back-lit.

Today we have mods that can fix most of the Game Boy's screen problems.  Backlight kits can be installed and the contrast issues can be dramatically improved with a bivert mod.  However, these innovations were not available during the monochrome Game Boy's official lifespan (1989-2003).  You had to put up with the screen, and the best you could do was either buy a light peripheral or play your games on the non-portable Super Game Boy.


Tuesday, April 26, 2016

Early PC Game Miscellaneous Notablility

IBM's First PC Game Releases

IBM released games for the PC and PCjr. from 1981 to 1985.  However, IBM did not always develop the games.  These games came in a gray plastic over cardboard folder or folio without artwork on the covers.  The game and manual would fit into plastic sleeves on the inside of the folder. The disk label was originally gray, but turned to red for Casino Games.

These were the among the first commercially sold games released for the PC.

Adventure in Serenia - Sierra
Casino Games - IBM
Microsoft Adventure - Microsoft
Microsoft Decathalon - Microsoft
Arithemitic Games Set 1 - Science Research Associates, Inc.
Arithemitic Games Set 2 - Science Research Associates, Inc.
One Hundred and One Monochrome Mazes - IBM
Strategy Games - IBM

Microsoft Adventure was the first commercial PC game ever released, it was available at the PC's launch, August 12, 1981.  The first actual PC game was the Donkey game included with PC-DOS 1.0 and run in BASIC.

One Hundred and One Monochrome Mazes is the first non-text game released exclusively for the Monochrome and Printer Display Adapter, and only works with that display hardware or compatible hardware.  It does not work with the PCjr.  It also uses a black folio instead of a gray folio.

Microsoft Decathalon does not work with the PCjr.  Adventure in Serenia relies on CGA Composite Color and will show incorrect colors with the PCjr.  You can run Microsoft Adventure on the PCjr. but cannot set the foreground and background colors.  Adventure in Serenia will not show correct composite colors with a PCjr.


Saturday, April 23, 2016

Quick Look - Outrun PC Versions

One of DSI/USI's more competent porting jobs from the late 1980s, Outrun received a decent port to the PC.  It was released three times in English-speaking markets.  All versions properly support CGA, EGA, VGA and Tandy and a Joystick.  I have sample screenshots of the 16-color graphics as displayed on EGA, VGA or Tandy, the 4 color graphics of CGA or Tandy and the monochrome Hercules graphics.  I also have attached speech and sound effect sample recordings that played on startup.


Tuesday, April 19, 2016

Winnie the Pooh Tandy/PCjr. Graphics Recolorization


Recently, I learned that Winnie the Pooh had support for Tandy/PCjr. graphics and 3-voice sound.  However, whoever was responsible for the colorization either must have had cloudy memories of the Pooh cartoons or problems with perceiving colors.  I took a screenshot for each character and tried to make them closer to their colors from the Disney films.  I made sure to only use the 16 RGBI colors available to the Tandy/PCjr. and not to do violence to the backgrounds.

The real graphics are on the left side, my retouched graphics are on the right side.

The Pooh Bear doll only needed to turn the shirt from light magenta to light red.


Monday, April 18, 2016

The Early Game Jukebox - Ultima III through Ultima VI

Did you know that you can play all music from Ultimas III-VI on their native platforms without creating a character?  Origin pioneered the use of a sound card add-on for music in its games, and for its early games it always had a method to play all the music in a game without having to get into it.  However, these methods are not always intuitive, so I will reveal how to listen to the music in each game.

First, I must discuss the Sweet Micro Systems Mockingboard.  The original Mockingboard was released in four varieties in 1982 :

Mockingboard Sound I - One AY-3-8910 chip
Mockingboard Speech I - One Votrax SC-01 Speech Chip
Mockingboard Sound/Speech I - One AY-3-8910 chip and one SC-01 Speech Chip
Mockingboard Sound II - Two AY-3-8910 chips

You must have a board with at least one AY chip to hear music in any Ultima game. The Ultima games do not use speech chips. Each AY chip gives you three voices.

Later Sweet Micro Systems re-released the Mockingboard line in 1984-85 as :

Mockingboard A - Two AY-3-8913 chips and and two sockets for Votrax SC-02/SSI-263 Speech Chips
Mockingboard C - Two AY-3-8913 chips and one SSI-263 Speech Chip and a socket for a second SSI-263.  The board is the same as the Mockingboard A.
Mockingboard D - An external box containing two AY-3-8913 chips and one SSI-263 Speech Chip controlled by an Apple //c serial port.  Not compatible with any games.
Mockingboard M - Two AY-3-8913 chips and one SSI-263 Speech Chip, no second socket but does include a mini-jack for audio, bundled with the Bank Street Music Writer.

They also released the "Mockingboard B", but that is not a card but a SSI-263 Speech Chip to upgrade a Mockingboard A.  

Musically, the Sound II is equivalent to the later Mockingboards, but the stereo may be reversed.


Thursday, April 14, 2016

A Brief History of PC Plug and Play

Plug and Play, In the Beginning

Early PC expansion cards either came with no user selectable options, like most IBM's cards, or came with banks of jumpers and dipswitches.  Early motherboards also often came only with jumpers to control settings on them.  I love these early devices because, if you have the documentation, you always can change the settings and get them to work.  IBM's PC, XT, Portable, PCjr and all the Tandy 1000s up to and including the Tandy 1000 TX (but excluding the HX) were all configured in this way.  All the major graphics cards and all of Creative Labs sound cards, up to and including the first generation of the Sound Blaster 16, were also configured in this way.

Jumpers or dipswitches typically allow you to select I/O addresses, IRQ and DMA usage, among other things.  If you think you have a conflict, you shut off the computer, check your cards and make changes to fix the conflict.  Turn it back on and if the conflict is solved, it will remain solved so long as the hardware does not change.  Occasionally during this period, there were some cards which could be unofficially modded with a soldering iron to give you extra options.

Conflicts in the early ISA period were often tricky to diagnose.  In the early days, not many people knew what an Interrupt Request was or why their card would not work if another card used the same Interrupt Request.  IRQs were the worst areas of conflict because many devices used an IRQ and there were not many which did not have a specified use.  Some peripheral cards and software programs would only use the lower eight IRQs.  Of those eight, three (System Timer, Keyboard Controller, Floppy Disk Controller) are almost always in use and two more (parallel and serial) are frequently used as well.  ISA IRQs are generally not shareable (except for the parallel IRQ when assigned to a printer).  DMA usage, even with only four or seven DMA channels, was not usually as bad because so few devices used DMA.  I/O port usage was not always given, so if a new card caused your system to crash, it could be due to an I/O conflict.  IBM originally only designated 768 valid I/O addresses in the PC design, but eventually the full number of 8086 I/O addresses (65,536) was being used (including by IBM).  Finally, there are memory addressing conflicts. If a peripheral card uses the Upper Memory Area for ROM or RAM, it may conflict with some other card which also has ROM or RAM.  Some cards, like my ADP-50L use memory addressing to speed up hard disk transfers, even though the card has no RAM, but fail to note which area of memory it is using.

An initialization driver was not common in the early days.  The BIOS, DOS or the program had all the tools it needed to utilize the hardware.  If the BIOS did not have hard drive support, support was added through a ROM extension on a card.  EMS memory boards were an early exception, a driver needed to be loaded so a program could address the memory in a standardized way.  CD-ROM drivers would eventually follow in this way.

Plug and Play, Software Configuration

Knowing that many people were afraid to take a screwdriver and tweezers to their computers, eventually companies began using software configuration.  For systems, this was originally a bootable floppy with a system setup program.  This allowed the user to indicate what he had installed in the system and to change system parameters.  The IBM PC AT was the first system to allow this, and AT clones thereafter took from IBM's lead.  Eventually the IBM PS/2 MCA computers would have peripheral setup disks.  You would load the disk and the disk would tell the system that a new peripheral was installed and configure the card entirely in software.  The only problem with this is that if you lost the setup disk, you were SOOL.  Also, it really stunk if your CMOS battery expired.  The system would store its configuration in the CMOS and when the CMOS died, you would start getting dreaded "161" or "163" errors.  At worst, the system would fail to get past the boot screen at all.  Some other systems, like the later Tandy 1000s store their settings in a small EEPROM.

Eventually, this software configuration concept made its way to ISA cards.  The Gravis Ultrasound was partially software configurable.  While you selected the card's I/O address via jumpers, you set its IRQ and DMA selections by an initialization program (ULTRINIT.EXE) that loaded every time you booted the system.  The second generation Sound Blaster 16s and first generation Sound Blaster AWE32s also used a similar program (SBCONFIG.EXE or DIAGNOSE.EXE).  The Gravis and Creative programs would be loaded in AUTOEXEC.BAT and take the settings from the SET BLASTER or SET ULTRASND lines in AUTOEXEC.BAT.  The Mediavision Pro Audio Spectrum series used a device driver called MVSOUND.SYS, loaded in CONFIG.SYS with parameters, to initialize the card.

Plug and Play : Standardization

Ever desiring to make hardware more friendly to users, especially when PCI cards rarely if ever had jumpers or dipswitches, the ISA Plug-N-Play standard emerged.  This standard mandated that virtually everything be configured by software in a standardized manner.  If you had a Plug and Play OS like Windows 95, you would configure your cards in System Properties.  If you were still using DOS, you had to run a program that gave you the functional equivalent.  Sound Blaster cards had a program called CTCU.EXE which could configure any ISA PNP card, not just a Sound Blaster card.

Popular Sound Cards with PNP support include third generation Sound Blaster 16s, second generation Sound Blaster AWE32s, all Sound Blaster 32s and AWE64s.  The Gravis Ultrasound PNP, the various Yamaha, Crystal and ESS ISA chipsets all seem to be PNP.  They all require drivers to initialize the card and to change settings.  Loading these drivers in DOS can add quite a bit to the boot time.  Even if the card's drivers are properly loaded in Windows, you will still need to load the card's DOS drivers.

ISA Plug and Play would gives you resource configurations.  Some of these configurations would allow you to manually assign resources to the card and sometimes they would not.  Sometimes they would delete resources or assign resources in a very odd way.  Often it was quite a struggle to get some cards working at the resources you wanted as opposed to what the driver assumes everybody wants.

With PCI cards came the end of much of the hassle of assigning resources and managing resource conflicts, whether on the card or in software.  Windows 3.1 had begun the requirement of drivers for various hardware, but Windows 95 took it to a whole new level.  While there would occasionally be a resource conflict, PCI cards were typically well-behaved and focused on configuring options instead of resources.