Saturday, July 4, 2015

Blinking Light Win - A Quality Solution to your NES Front Loader Woes

Who likes it when their NES constantly blinks on and off?  Anyone want to relive this particular memory from their childhood?  Didn't think so.  The front loader NES's achilles heel must be the cartridge connector.  In this blog entry, I will first discuss the problem and then a potential quality solution, the Blinking Light Win.

The Problem

The reason why the front loading NES blinks on and off is because the lockout chip is causing the system to continually reset itself.  The lockout chip can control the reset line and will activate it repeatedly it unless it is in constant communication with an identical chip inside a cartridge. In order for the cartridge's lockout chip to communicate properly with the system's lockout chip, it needs a good connection from the pin connector.  Too often, the NES pin connector cannot provide it.

The lockout chip has 4 pins dedicated to it.  Even if the lockout chip has a proper connection, the pins that connect to the CPU and PPU bus may not.  The NES 72-pin connector has 56 other pins that may also be in use by a cartridge at any particular time.  If the connector or the cartridge pins are corroded or dirty, reliable contact between the console and cartridge will not be made, leading to solid color screens on powerup, in-game crashes and glitchy graphics.  Again, the NES's pin connector too often does not have solid contact with the corresponding cartridge pins.

So, what is the problem?  The problem is the way the cartridge pins are supposed to make contact with the console connector pins.  Inserting any type of PCB contacts into a slot is OK so long as the PCB is supported, whether horizontally or vertically.  If Nintendo had designed the cartridge slot so that all you needed to do was to simply insert the cartridge into the slot, I seriously doubt the front loader would acquired such a reputation for unreliability.  However, Nintendo went one step further and decided it would be a good idea to require the user to have to push the cartridge down until a latch caught the spring-loaded tray for both sides of the contacts to make a connection.

This is the point where unnecessary wear occurs on the console connector.  A cartridge connector's pins get pushed back normally when a cartridge is inserted, this is built into the design.  But for a NES, the bottom row of cartridge pins get pushed twice, one when you insert the cartridge, a second time when you push the cartridge down.  This has the unfortunately effect of putting way more extra strain on the pins then they should have.  The consoles pins can be bent to the extent they are unable to make contact with the cartridge pins or in extreme cases knocked completely out of alignment.  A crude visual representation of the manner in which the console connector makes contact with the cartridge pins is here :


Nintendo's brilliant design was intended to mimic the function of VHS players of the time. In the mid-80s, when VHS players were gaining their way into households at a fast rate, they typically used tray loading mechanisms similar to compact cassettes, just oriented vertically instead of horizontally.  In an old-style VHS player, when you hit the open button, a trap would pop up in the top and you would place your video tape into it and push it down until it closed.  As is well-known, Nintendo wanted to distance itself from the previous home video game systems that had given themselves a poor reputation for quality and value.  So Nintendo designed its NES into a boxy two-toned gray shape to fit in with VHS players, cassette decks, TVs and home stereo systems of the time.  It even came with separate composite A/V outputs, something never seen before in a video game system.  The NES stood for the Nintendo Entertainment System, the games were officially called "Game Paks", not "Cartridges" and these Game Paks were long and thin and loaded like VHS tapes.

At first, a console would play fine.  After a while, however, the blinking light and/or solid color screen would appear.  At this point, players would typically blow into their cartridges and consoles.  This worked OK in the short term to clear dust and improve conductivity with saliva deposits, but over time the corrosive nature of saliva would do damage to both connectors.  Nintendo's cartridges did not have gold plated contacts, which are more resistant to corrosion.  Another thing players would do is to insert a second cartridge into the console above the first, pushing down the game even further and perhaps improving the contact.

Earlier Solutions

Nintendo became aware of the problem and offered certain solutions.  It released a cleaning kit containing a cartridge with an edge covered in cloth and cleaning wands for cartridges.  Nintendo instructed the user to use water and wait for an hour after cleaning for drying off.  Howard Phillips of Nintendo of America later explained that it did not instruct users to use isoprophyl alcohol, a superior cleaning agent, because they were worried that kids would set themselves on fire!  Nintendo also set up service centers that could replace the pin connector, although there was a fee that could be incurred if the console was out of warranty.  Finally, in 1993, Nintendo released a new design of the NES at a budget price, the Top Loader.  The top loader's connector was much more reliable, but the console looked radically different from the front loader, did not have composite A/V outputs, its video output looked washed out and the video had noticeable jailbars by comparison.

One other unofficial but popular solution was to use a Galoob Game Genie.  The Game Genie was a cheat device that fit in between the console and the cartridge.  Because it added an extra two inches to cartridge, it could not be pushed down and aesthetically looks unpleasing because the cartridge sticks out of the NES. The Game Genie's PCB is substantially thicker than a NES game cartridge's, allowing it to make contact with both sets of pins inside the console connector without needing to be pushed down.  Unfortunately, this made it very, very difficult to use a Game Genie with a Top Loader, and Galoob released a now-rare adapter for top loader owners.  Even if you used no codes, the Game Genie is incompatible with games that manipulate the V-RAM mirroring on the cartridge in unusual ways like Castlevania 3 and Gauntlet and the other usual suspects that fail to work in cheap NES clones.

After the NES was retired, third party companies came in with unlicensed replacement console pin connectors.  The NES was built so the console connector was easily replaceable.  However, these connectors developed a reputation for having a grip of death on the cartridges, making it very difficult to remove the cartridge from the system.  They also had a reputation of wearing out very quickly and becoming worse than the original they were intended to replace.  At least with a genuine Nintendo cartridge connector, the cartridges were always easy to insert and remove.

The Blinking Light Win

In December of 2014, a company called ArcadeWorks launched a kickstarter campaign to build a reliable replacement NES connector.  They called this product the Blinking Light Win (BLW) and the kickstarter campaign was very successful.  They sought to raise $15,000 and actually raised $44,080.  Instead of trying to clone Nintendo's part, they designed a connector where the cartridge would simply plug in and play without having to push down.  They also designed a replacement plastic tray piece to replace the original spring/latch mechanism.  This replacement piece keeps the cartridge in place, its pin connector from shifting and people from breaking the pin connector by preventing them from pushing down.  The creators of the BLW intended to make a quality product where they pins would not wear out over time.

In late June of 2014, backers finally began receiving their kits.  One of the reasons for the delay is because ArcadeWorks added a lockout chip clone to every BLW connector (kickstarter stretch goal), ensuring that the lockout chip in the console would make a reliable connection with something it could recognize.  Also, unlike the official Nintendo chips, this lockout chip clone (NTSC/PAL-A/PAL-B/Asia) is region selectable by power cycling the system.  The default setting is NTSC.  There is no need to snip pin 4 on a front loader NES with BLW.  This makes it usable with consoles from any region, but it won't make games designed for PAL timings like Elite or Aladdin work in an NTSC console.

In the kit comes the cartridge connector, the replacement tray, a pair of stickers and an instruction sheet.  The only tool you need to install it is a standard #2 Phillips head screwdriver.  The screwdriver cannot be too short, otherwise you won't be able to reach the screws in the recessed holes on the bottom half of the NES case.  In the past, some people have done intensive mods like removing a Game Genie connector from a Game Genie and soldering it to the edge connector of the NES PCB, but the BLW was designed to make the mod as easy as possible.  No wires, no soldering here, no complexity here.  All you have to do is to unscrew the case, unscrew and remove the RF shield and original tray loading mechanism, pull off the original connector, push on the BLW connector, align the replacement tray and screw it in, screw back in the RF shield and the top half of the cover.  This kit is ingenuous.  Note that the replacement tray does not have a metal bar across the top, unlike those seen in the preview pictures like these :



One of the two stickers the kit comes with says "KEEP CALM AND DON'T PUSH DOWN" and the other one has a BLW graphical logo.  Not only are they a nice touch and reportedly of high quality, but they also remind people, if placed on the system, that the system has been modded and they should not push down.  This is important because considering the millions of NES front loaders made, there is no reason to assume that any particular NES would have one of these installed unless you knew what to look for.  The longer KEEP CALM AND DON'T PUSH DOWN fits very nicely on the lip of the front loader in front of the tray mechanism.  The font is Nintendo appropriate.

Most of the reviews I have seen online have remarked on the good build quality of the product.  However, most have also noted that the cartridges are much more difficult to remove than a true Nintendo connector.  ArcadeWorks indicated in its Kickstarter that's product would not have a death grip.  More recent revisions of the BLW should have a slightly less tight connector.  On the installation instructions paper that comes with the kit, the company explained that it made a compromise between the ease of removal and getting a good connection between the connector and the cartridge every time.

It is important to remember that this kit has to work with cartridges have have been around for twenty to thirty years already and have been used and abused.  It also has to work with unlicensed cartridges which did not use facilities up to Nintendo's manufacturing standards.  One reviewer commented that the grip strength of the BLW is similar to the cartridge connector in the NES top loader.  However, the top loader has the advantage of allowing the user a lot more room on the cartridge to grab it when they want to remove it.

While the kickstarter campaign ended in January, the BLW is also available from the ArcadeWorks website for $29.99 : https://www.arcadeworks.net/blw  Some kickstarter backers have complained that people have been obtaining these kits from the site earlier than they have received them.  This device will be in high demand because it does what it claims to do, is reasonably priced, easy to install and the reviews have been very positive.  ArcadeWorks states that current orders will be shipping at the end of July due to high demand.  I suspect that used video game stores and ebay resellers are probably buying these in large quantities so they can sell the piles of front loaders they have lying around.

Regarding the lockout chip, this is a useful feature when you are using unlicensed cartridges.  While Tengen cloned Nintendo's lockout chip, other companies like Camerica, AVE and Color Dreams used discrete circuitry to defeat the lockout chip by stunning it with negative voltages.  Nintendo got wise to these efforts and released its last front loader PCB revision, NES-CPU-11, with extra resistors and diodes to nullify these efforts.  If you have one of these PCBs, you may find that unlicensed cartridges will not work on it unless you disable the lockout chip or installing a BLW.

The BLW's board design is rather simple.  Except for the built-in Lockout chip, it is merely a pin extender.  The lockout chip stands in between the cartridge and the console's lockout chips, preventing communication between the cartridge and console's chips.  In the very first units shipped, the lockout chip was soldered to the pins on a separate PCB.  On the current units, it is surface mounted to the BLW's PCB.  The PCB sends the lockout chip's reset line to the cartridge, allowing for proper operation of the NES World Championships 1990 and the Super Mario Bros./Tetris/Nintendo World Cup cartridges.

Not all may be perfect, however.  krikzz, creator of the EverDrive N8, has criticized the "ridiculously thin wires at power supply lines" of the BLW.  While the traces are slightly thicker than the regular signal lines, he has raised concerns that the thinness of the traces may lead to instability when using an EverDrive because it is a much more complex device than a regular cartridge.  He suggests soldering thick wires to pins 1, 36 and 72 to solve any instability issues.

Conclusion

So why do I not have one yet?  The chief reason why is because my front loader's original pin connector works very well.  I mainly use it with an NES PowerPak these days, which I have owned since 2007.  I no longer blow into cartridges and use 99% isoprophyl alcohol to clean my cartridges.  99% is available at electronics stores, but 91% can be found in drug stores.  Even if you own a BLW, you need to keep your cartridges clean.  Keep scrubbing them with alcohol and Q-tips until you no longer see black on the Q-tip. Make sure to use both wet and dry applications of a Q-tip.  Alcohol evaporates much more quickly than water, so you can try your cartridges instantly.  Cartridge contacts in very poor condition may require electric contact cleaner or pink erasers.  Ultimately, the BLW is a very good product, is still readily available from ArcadeWorks and should be the new standard for NES replacement pin connectors.

Thursday, July 2, 2015

Europe and the Japanese Role Playing Game

In the United States, role playing games were very popular on computers and fairly popular on consoles. There were several games for the systems of most of the third and fourth generation of home video game consoles.  However, if you lived in a PAL country, your choices could be substantially more limited.

Nintendo Entertainment System

In the NES era, the US had several ports of popular computer role playing games like Ultima III and Wizardry.  Almost half the games released were direct ports, and a few like Swords and Serpents and Dungeon Magic could have been computer role playing games.  Other games had a unique JRPG feel, like Dragon Warrior and Final Fantasy, two of the first examples of JRPGs.  There were many other great JRPGs that were never ported stateside like Final Fantasy III, Just Breed and Lagrange Point, and a couple of unusual ones which were.  Destiny of an Emperor has something of a tactical RPG element where hit points equal army strength.  The Magic of Scheherazade is a hybrid of Zelda-like top down fighting and traditional RPG battles.  Ghost Lion is a fairly obscure NES game from the red label years that has your character summon spirits to help her fight, not too dissimilar to Wizardry IV.

Of course, if you were playing a NES in a PAL country, your options were almost non-existent.  The major RPG companies like Enix, Square and FCI/Pony Canon had no substantial European presence at this time, so most of these games had no possibility of a European publisher.  Nintendo's own fragmented approach to the market made the NES something close to a niche console.  Of traditional RPGs, only Swords and Serpents by Interplay was sold in Europe.

US NES RPGs
Advanced Dungeons & Dragons: Pool of Radiance
Bard's Tale, The
Destiny of an Emperor
Dragon Warrior
Dragon Warrior II
Dragon Warrior III
Dragon Warrior IV
Dungeon Magic - Sword of the Elements
Final Fantasy
Ghost Lion
Magic of Scheherazade, The
Might & Magic: Secret of the Inner Sanctum
Swords and Serpents
Ultima: Exodus
Ultima: Quest of the Avatar
Ultima: Warriors of Destiny
Wizardry Master Series: Proving Grounds of the Mad Overlord
Wizardry Master Series II: Knight of Diamonds

Europe NES RPGs
Swords & Serpents

Sega Master System

The NES's competitor, the Sega Master System, had a paltry three traditional RPGs : Miracle Warriors: Seal of the Dark Lord, Phantasy Star and Ultima IV: Quest of the Avatar.  Because the SMS was not a great success, Ultima IV did not get a release in the United States, which was a shame because it was quite a good port of the computer version.  All three were released in Europe and Brazil where the Master System was more popular than the NES.

Sega Master System/Mega Drive

In the 16-bit era, things started to change somewhat.  Sega gave the US and European markets almost equal support and had great success in both.  Thus both geographic areas received most games.  By contrast, in Japan they never had the sales to challenge Nintendo and later Sony for the crown.  Of all the traditional RPGs released for the system, all but two were released in Europe.  With series like Phantasy Star and Shining Force, European gamers began to be introduced to the character and story driven Japanese-style RPG.  However, because Warsong and Traysia were not released in PAL countries, the introduction to JRPGs is limited to the six Phantasy Star and Shining Force games and Sorcerer's Kingdom.

US/Europe Genesis RPGs
Buck Rogers: Countdown to Doomsday
Dungeons & Dragons: Warriors of the Eternal Sun
Faery Tale Adventure: Book I, The
Fatal Labyrinth
Might and Magic II: Gates to Another World
Phantasy Star II
Phantasy Star III: Generations of Doom
Phantasy Star IV: The End of the Millennium
Rings of Power
Shining Force
Shining Force II
Shining in the Darkness
Sorcerer's Kingdom
Traysia*
Warsong*

Super Nintendo Entertainment System

The SNES is widely regarded as the console where JRPGs truly matured into a distinct play-style of RPG. This console is where Square built its reputation as the premier RPG company outside of Japan.  There are many classics on this list, Final Fantasy II & III, Chrono Trigger, Earthbound and Super Mario RPG among them. In fact, the only games on this list I could not recommend are certain poor ports of otherwise classic CRPGs.

Unfortunately, Europe did not share in the wealth of RPG goodness the US enjoyed.  Companies like Square had begun to establish a presence, but they were wary of releasing their largest and most expensive games.  Cartridges were expensive to make and RPGs required large ROMs and battery backed RAM. A failed game could mean financial disaster.  Europe does have one exclusive tradtional RPG, Might and Magic II, but the rest really do not give a comprehensive overview of what the system was capable.

US SNES RPGs
7th Saga, The
Advanced Dungeons & Dragons: Eye of the Beholder
Arcana
Breath of Fire
Breath of Fire II
Chrono Trigger
Drakkhen
Dungeon Master
Earthbound
Final Fantasy II
Final Fantasy III
Final Fantasy: Mystic Quest
Inindo: Way of the Ninja
Lagoon
Lufia & The Fortress of Doom
Lufia 2: Rise of the Sinistrals
Might & Magic III: Isles of Terra
Ogre Battle: The March of the Black Queen
Paladin's Quest
Robotrek
Secret of the Stars
Super Mario RPG: Legend of the Seven Stars
Ultima VI: The False Prophet
Ultima VII: The Black Gate
Wizardry V: Heart of the Maelstrom

Europe SNES RPGs
Breath of Fire II
Drakkhen
Lufia
Might and Magic II*
Mystic Quest Legend (Final Fantasy: Mystic Quest)

Sega CD

The Sega CD add-on had quite a few RPGs, more than you might expect.  Unfortunately, the situation was almost completely reversed from the Genesis/Mega Drive for the PAL countries.  Only three RPGs were released in Europe on CD, and two of them are CRPG ports.  The Sega CD was no huge success, and the emphasis on FMV style gaming and PC game ports really doomed the library to a lack of standout titles.

US/Europe Sega CD RPGs
Dark Wizard*
Dungeon Master II: Skullkeep
Eye of the Beholder
Heimdall*
Lunar: Eternal Blue*
Lunar: The Silver Star*
Shining Force CD
Vay*

Nintendo Game Boy

The situation with the Game Boy is similar to the NES and SNES, slim pickins' for the Euopean folk.  However Pokemon came along and was a worldwide success, so Europeans could finally play a great RPG on the go.  They did get one exclusive RPG in Castle Quest.  Importers had no difficulty because the Game Boy had no region lock.

US/Europe Game Boy RPGs
Castle Quest#
Final Fantasy Legend, The*
Final Fantasy Legend II*
Final Fantasy Legend III*
Great Greed*
Pokémon Blue Version
Pokémon Red Version
Pokémon Yellow Version: Special Pikachu Edition
Sword of Hope
Sword of Hope II*

Sega Game Gear

RPGs were pretty rare on the Game Gear, and the US got four and Europe two.

Ax Battler: A Legend of Golden Axe
Crystal Warriors*
Defenders of Oasis
Shining Force: The Sword of Hajya*

Key :
* - US Only
# - Europe Only

Conclusion

Role playing games would seem to be a natural fit for Europe.  From Europe came legends of dragons, fairies, dwarves and goblins.  Wagner's Ring Cycle, Tolkien's Lord of the Rings and Dumas' swashbuckling sagas all had a huge influence the development of RPGs, which originated in the United States.  D&D was imported into Europe and had a strong following in the U.K.

Still, European gamers acquired an identity of their own and different tastes.  European gamers were more inclined to buy a home computer and buy cheaper games on cassette and floppy disks.  Their most popular genres included side scrollers, football (soccer) games and shumps.  RPGs did not fit on cassettes and C64, Atari ST Amiga users would usually buy the pricey US RPG imports.  That may have been a factor in Japanese companies decisions not to release their titles in Europe.  European gamers only had exposure to the more open-ended , non-linear and mechanics-driven US developed CRPGs, so it was something of a chicken and egg situation.

When the Playstation proved to be the first console to dominate in all three major markets, things loosened up considerably for European RPG fans.  CD manufacturing was far cheaper than comparative cartridge manufacting, so there was a lot less for companies to loose.  Square released its lauded RPGs like Final Fantasy VII-IX and Vagrant Story, Capcom released Breath of Fire III-IV, Azure Dreams from Konami and The Legend of Dragoon from Sony, but European fans of the Dragon Warrior/Dragon Quest series had to wait until VIII on the Playstation 2 for an official release.


Tuesday, June 30, 2015

Disappointing Use of Licenses in NES Games

Often, when a video game relied on a licensed character or movie, the results often were terrible.  It is as if so much of the budget was taken up by the licensing fees that there was nothing left over to make a good game or hire good programmers.  Most games based off movies are garbage on the NES, no one particularly enjoys having to play through Total Recall, Predator or Hudson Hawk.  Many of those games were released by LJN or Acclaim, but picking on them is rather like picking the low hanging fruit.

Instead, I am going to focus on games from developers or publishers with a proven record of good games.  My criteria for this blog entry is that the license has to come from another type of media, whether a film, a TV series, a cartoon, a toy line, a comic book or a novel

Konami :

Monster in My Pocket
This is a decent game, but when dealing with Konami, decent just doesn't cut it.  While you have two characters you can play as, they aren't really all that different.  This side scroller does not have any substantial flaws, but there is nothing especially memorable about it.

Star Trek 25th Anniversary
When I play this game, I get the feeling like it so wants to be the PC game of the same name.  This is not surprising because Interplay was responsible for both.  The NES game takes some elements of the classic PC adventure game like having crew members on the away team with different strengths and each officer on the bridge having his or her own position.  However, the top down exploration stages with constantly respawning hidden enemies and maze-like environments does not feel very Star Trek 25th-Anniversary like to me.

Teenage Mutant Ninja Turtles
Where do I begin?  TMNT may have sold well but only because the Turtles craze was just beginning to establish itself.  This game does have a certain Konami polish to the graphics and music, but the game is way too unfair.  Enemies constantly respawn, there is laughable recovery time after being hit, the turtles have a huge hit area and except for Donatello their weapons do pathetic damage to their enemies.  There are tricky jumps and the play control is a tad too loose.  Flicker is all over the place.

The next two TMNT games for the NES are much better than this.  I always get the feeling that with this first game, Konami really did not "get" the Turtles.  While most of the elements that had been established by 1987 were there, the resulting game did not feel like an adaptation of the cartoon series, which was the catalyst and the focus of the phenomenon for the next several years.  The moody music and outlandish enemy designs feel like they came more from the original comic than the cartoon.

I understand that the developers had little to work with, only elements from the comic book and season one of the animated cartoon were available as reference materials.  However, the arcade game of Teenage Mutant Ninja Turtles was also released in 1989 and does not feature any material beyond season one, yet that game was able to capture the spirit of the franchise admirably.  Looks like Konami gave the NES game to the "B Team".

Top Gun I & II
Most NES flying games are not especially memorable, and these are no exception.  One of the main problems are the endless hordes of indistinguishable enemies.  The NES simply did not have the horsepower for anything more than rail-shooters, so these games don't offer you any real freedom.  The first game has some of the most annoying landing sequences ever found in a video game and you cannot seem to turn fast enough to attack enemies.  The second game overcompensates by having too sensitive controls and enemies that fly by too fast to hit.

Sunsoft :

Fester's Quest
While Sunsoft appeared to adapt the overhead view of Blaster Master for this game, that was about the only smart thing they did with the title.  The Addams' Family is little seen and the Addams Family Mansion is reached only far into the game.  The enemies constantly respawn and your gun and whip do little damage.  A turbo controller is required to really play.  Instead of losing gun or whip power when you get like Blaster Master, you lose it by touching gun and whip downgrades, which become more common as you power them up and are surprisingly easy to touch.  Fester moves slowly, and if he gets hit by the flies, his movement rate gets far worse until he finds some shocks.  You have a tiny lifebar and the bosses take a long time to beat.  You find bosses in these buildings with featureless 3-D Mazes, something I always hated on the NES.  There is almost nothing of the quirky macabre humor which the Addams Family was known for.

Platoon
This was a port of a Commodore 64 game, and while its not as bad as the port of Myth to Conan, the original game just isn't that good.  The game is essentially a collection of mini-games, and usually in 8-bit land the sum is not the greater of its parts when it comes to different gameplay styles being combined in a cartridge.  The first stage is a maze of finding objects, but most of the time you are simply trying to avoid dead ends.  You are easy to hit, there are hard to see traps and bullets, and enemies can be unavoidable.  The music is appropriately moody, but the backgrounds just appear to be shades of brown.  The second stage is something like a 3-D maze, but at least it has something like a map.  I never bothered to get past the second stage.

Capcom :

Disney's Adventures in the Magic Kingdom
As with Platoon, noted above, this is another collection of mini-games.  The platforming in the Haunted Mansion is passable, but Space Mountain feels like Dragon's Lair with the "press the right button at the right time mechanic."

TaleSpin
Capcom made six games based off Disney TV franchises, and five of them (Ducktales 1 & 2, Chip 'N Dale 1 & 2, Darkwing Duck) were great.  This one, while a decent game, is not great.  Its a shump and has a certain amount of distinctiveness in that there are horizontal and vertical scrolling portions in the same level and that you can fly forwards and backwards.  However, the chief issue is that the scale is wrong, the characters and enemies are too small to be really distinctive.  Also, your character moves too slowly and his default gun is hard to aim diagonally, does little damage and upgrades are not plentiful.

Pony Canon/FCI :

Advanced Dungeons and Dragons : Heroes of the Lance
Pony Canon/FCI could usually be counted on for reliable, if not spectacular ports of PC games, but this one is where they utterly failed to release a playable game.  Heroes of the Lance is based off the Dragonlance Saga series of novels and AD&D campaign setting from TSR  The object of the game is to take a party of eight heroes into a dungeon to recover a magic item.  It was released first for PCs and then got a NES port.  Whatever virtues the underlying game had, and they seem pretty sparse, were totally lost in translation.

This game has virtually no redeeming features.  The in-game graphics suffer from being too small in relation to the background.  The status menu takes up half the screen.  The character sprites have so little detail and the backgrounds are just drab gray and black.  The music is the same monotonous piece that seems to play throughout the game.  There are only three types of enemies when you first start, a fighter, a dwarf and a lizard-creature.  The latter two are both unfair, the dwarf attacks lower than you normally do, making him hard to hit.  The lizard creature shoots projectiles at chest height and impossible to dodge.  By the time you close in to melee with him, one of your characters may be dead.  The control scheme and hit detection must have been devised in Hell, the very act of attacking is a chore.  When you close into attack range, you can hold down the B button to attack, but it rarely registers a hit on a monster regardless of how close you are.  Your characters move and attack so slowly.  You can run by holding down a directional.  Jumping across chasms is pretty much accomplished by luck.

This game has battery backed memory for saving games, but considering how awful this game is, it is a waste.  There were far many better games more deserving of a battery save than this piece of garbage.

Kemco :

The Bugs Bunny Crazy Castle
This originally was a Roger Rabbit game when it first appeared on the Famicom Disk System, but Kemco only held the license in Japan so it did a graphics makeover using Bugs Bunny and Looney Tunes characters when it was released.  This game is very monotonous, with the same music playing over and over and very few environment changes.  Weirdly, most of the enemies are differently colored Sylvesters with occasional appearances of Yosemite Sam, Daffy Duck and Wile E. Coyote.  However, in the original game, the Sylvesters were the Weasels, of which there were four in the movie.   You cannot really stop yourself going in and out of doors and down an incline or scroll the screen to see what is just outside your view, leading to many cheap deaths.

The Bugs Bunny Birthday Blowout
This game is more ambitious than Kemco's previous offering, but its far easier than you would expect.

Superman
Superman never had a great reputation for spawning great video games, and this one is almost as bad as the N64 title.  Super-deformed characters and pastel graphics remind me of the Atari 2600 title, which was no classic.  The music is nothing you will be humming in the shower either.  Superman in this game can use several powers, but for only a very limited number of times unless you find a way to replenish each special power bar.  He default attack is a punch, but the punch has no animation that tells the player the range of the attack.  How close do you have to be to an enemy?  It is hard to say.  Of course, the enemies you first encounter shoot at you, and as either Clark Kent or Superman you are quite vulnerable to bullets.  You jump almost to the top of the screen as either Clark or Superman. It does not take too much punishment to kill Superman, enemies can damage you even by touching and when they die they will often release an item that will reduce your life.  The game gives you virtually no guidance on what you need to do.

Data East :

Captain America and the Avengers
As far as superhero games go on the NES, this may be the best of the bunch that is not part of the Batman franchise.  You can play as Captain America or Hawkeye, but the two are not really that different.  Captain America has a more limited range than Hawkeye shield comes flying back and he jump higher, but otherwise there is little else to distinguish the two.  The main issue is that the play control is stiff.  Graphics are okay, but the music is bland.  Compared to X-Men, Silver Surfer and Spider-Man, this is probably the high water mark for Marvel Comics-based NES games, but that is damning with faint praise.

Taito :

Indiana Jones and the Last Crusade
Weirdly, both Taito and Ubisoft released games based off the film Indiana Jones and the Last Crusade.  They could not be more completely different.  Ubisoft's version was atrocious and looks like a port from the ZX Spectrum.  However, Ubisoft doesn't have a reputation for NES classics, Taito does, but not judging by this game.  The graphics are small and hard to distinghuish.  The game is very monochromatic with brown and gray hues throughout.  Trying to digitize real life photographic images never works on the NES, the palette color restrictions make it almost impossible to do well.  The music, after a passable rendition of John Williams' music from the film, but otherwise it is pretty nondescript.

The gameplay reminds me of the PC game Bruce Lee, where you run back and forth trying to avoid bad guys, but having to fight them if you cannot.  In fact, the Cross of Coronado level requires you to beat a certain number of them before you can acquire the cross.  Fighting bad guys is just a button mash and many of them take lots of hits and inflict lots of hits on you.  There are also overhead racing sequences like Spy Hunter and a timed puzzle with the move the blocks with one empty block.  You are quickly given choices of what you can do, but in order to complete the game, you have to beat all stages.

Rare :

Who Framed Roger Rabbit?
Rare is known for some good NES games, although all its games during this period were published by third parties.  Unfortunately, Roger Rabbit's official NES game is no better than what was done with Bugs Bunny's Crazy Castle.  Roger Rabbit is an adventure game where you collect items to overcome obstacles and there are lots of items to collect.  The most important objects are the four pieces of Marvin Acme's Will, scattered across four areas of Los Angeles.  Most items unfortunately only have a limited number of uses and replacements are hard to come by.  That is because almost all the items in the game are completely randomized when you start a new game.  You can go around the four areas of the game world and talk to people, but most are unhelpful.  You have to protect Roger, who is otherwise useless, from the Weasels.

Some items allow you bypass obstacles, rattles get you past rattlesnakes, a rose lets you talk to Jessica Rabbit, and TNT and a Detonator lets you break the barrier to the Toontown tunnel.  Others like the gun and exploding cigars, are more useful as weapons.  You shouldn't go into caves without a flashlight, rattles and spring boots.  You can find and ride Benny the Cab, which is far faster than walking across L.A. If you encounter weasels, you have a limited amount of time to select the punchline to a joke or they capture Roger and you lose a life.  You also lose a life if you get run over, fall into a pit or get bumped too many times and lose your sense of humor.

The graphics and music for the game is pretty appropriate.  Unfortunately, you will have a hard time from keeping from bumping into things like cats and dogs.  They can bump you while you are searching drawers and desks for items or talking to people and you cannot move to avoid them while you search or talk  Also, defeating Judge Doom at the end of the game will have you throwing your controller at the screen.

Mostly, this game is about constant searching, everywhere, for everything.  There is little sense of progression, just doing the same thing over and over and over again.  It takes seemingly forever to search desks and cabinets, and the game has lots and lots of them. The people can sometimes tell you if the building has items in it. The maps reuse the same tiles over and over, making it easy to get lost.  The items are mostly randomized, which may have worked in Atari's Adventure when there were only six, but not when you need to collect almost two dozen.  Finally, the game gives you three lives and two continues, but when you lose those continues, you have to start over from the beginning.   The game has a 22 digit password, but as a final kick in the teeth, you have ONLY 45 SECONDS to write it down.

Saturday, June 27, 2015

NES Hardware Explained



Hardware :

The basic Famicom/NES consists of a 40-pin Central Processing Unit (CPU), a 40-pin Picture Processing Unit (PPU), two 2KB Static RAMs, and six standard logic chips.  The front loader NES also contains a lockout chip and an extra standard logic chip, but they are not integral to the console's function except as a security measure.  Every NES has 2x7pin controller ports, a power button and a reset button and an RF modulator.  Front loaders also have composite video and (mono) audio outputs.  A very few rare Top Loaders have a Nintendo Multi-out port instead of an RF modulator.  The last top loaders with improved picture quality (RF or Nintendo Multi-out) use a newer motherboard that consolidates three of the standard logic chips into a Nintendo custom chip.

There were also rare devices that Nintendo released that used NES cartridges.  These include the Sharp Nintendo Television, which was a 13 or 19" TV on top of a front loading NES.  There also was the M82 Demonstration Unit that could hold 12 NES cartridges and allow for timed play in stores.

The NES power adapter is a step down converter that converts 120VAC or 240VAC into 9VAC and 1.3A.  AC to DC conversion is done inside the console.  A DC power adapter with a suitable plug can also be used so long as the step down specs are met.  Polarity of the AC adapter's connector is irrelevant.

The RF switch is an autoswitching type, meaning that there is no TV/Game switch on it as there were with older consoles.  When the NES turns on, it sends a signal of sufficient strength to automatically switch from the TV video signal to the NES video signal.  You can use a TV/Game switch if that is all you have available.

Specifications :

CPU - 2A03 running at 1.79MHz (NTSC) or 2C0 7  running at 1.66MHz (PAL).  The 2A03 contains a full 6502 CPU core with all unofficial opcodes but with a disabled decimal mode.

CPU Internal Memory - 19 Audio Processing Unit (APU) Registers, 2 I/O Registers, 1 Sprite DMA register

CPU External Memory - 2KB CPU RAM in the console + 32KB ROM and 8KB (optional) RAM in cartridge*

PPU - 2C02 running at 5.37MHz (NTSC) or 2C07 running at 5.32MHz (PAL).  The PPU can access 2 sets of 256 tiles for background and sprite graphics.  It can assign up to three distinct colors for a background or sprite tile.  Each set of 16x16 background tiles displayed on the screen must share the same palette settings.  The PPU is capable of scrolling horizontally and vertically by one pixel for smooth scrolling.

PPU Internal Memory - 8 Control Registers + 256 bytes + 32 bytes + 25 bytes

PPU External Memory - 2KB PPU RAM in the console + 8KB ROM and/or RAM in cartridge*

* - Limits without bankswitching hardware

PPU Resolution and Frame Rate : 256x240@60.0988fps (NTSC)/50fps (PAL), 224 lines typically viewable

Number of Colors in Palette : 54 distinct entries (out of 64) x 8 combinations of color emphasis bits = 432 colors

Number of Colors on-screen : 25 (1 Universal Background Color + 12 Background Palette Colors + 12 Sprite Colors)

Number of Sprites : 64 at 8x8 resolution or up to 32 at 8x16 resolution

Number of Sprites per Line : 8

Number of Audio Channels : 5 (2 x Pulse, Triangle, Noise, PCM)

APU Features : Variable duty-cycle rectangular waves (12.5%, 25/75%, 50%) for the two pulse channels, independent timers for all channels and length counters (automatic shut off) for first four channels, frame counter, volume envelope for pulse and noise channels, sweep unit for pulse channels, short and long noise mode (short mode only available on 2A03E or higher CPU revisions), 7-bit PCM samples or 1-bit Delta Modulation, internal mixer for the two pulse channels on one output pin and the triangle, noise and PCM on another output pin.  

Standard Controller : 4-way directional pad and 4 buttons, digital latched serial bitstream interface

Cartridge Features :

Number of Games with extra Work RAM : 89

Number of Games with battery backed Work RAM : 54 (out of 89)

Number of Games with extra CHR-RAM - 3

Smallest NES Cartridge Size : 24KB

Typical Cartridge Sizes : 24KB, 32KB, 40KB, 48K, 64KB, 96KB, 128KB, 160KB, 192KB, 256KB, 320KB, 384KB, 512KB

Median Cartridge Size : 256KB

Largest NES Cartridge Size : 768KB Licensed, 2MB Unlicensed

Most Common Memory Controller hardware : MMC1

Number of games using hardwired Horizontal Mirroring - 86

Number of games using hardwired Vertical Mirroring - 209

Number of games using hardwired One Screen Mirroring - 32

Licensed Game PCB Manufacturers : Nintendo, Konami (14 games), Acclaim (15 games), Virgin Games (1 games), Sunsoft (1 games).

Graphics Basics :

The NES uses a complex scheme to draw graphics.  The 2KB of internal PPU RAM holds two name tables and the attribute tables for the background graphics.  Each byte entry in a 32x30 name table points to an 8x8 graphics tile in CHR ROM or CHR RAM in the cartridge and tells the PPU to display that tile at a certain place on the screen.  Each byte entry in the attribute table selects the background palette entries that each set of 16x16 tiles will use.  There are four sets of palette entries consisting of three colors chosen from the 54 colors the NES usually displays and the universal background color.  This creates the background graphics.

The PPU RAM has space for two name tables and attribute tables.  The typical use for two sets of background graphics is to aid in scrolling.  One of the more impressive capabilities of the NES compared to earlier consoles is that it can scroll smoothly one column or line of pixels at a time, even though its graphics are tile based.  Many NES cartridges can be wired so that the graphics pages can be mirrored horizontally or mirrored vertically.  When the pages are mirrored vertically, scrolling the game horizontally becomes easier. Likewise, when the pages are mirrored horizontally, scrolling the game vertically becomes easier.  Games that scroll both horizontally and vertically like Metroid or scroll diagonally like Bionic Commando typically have hardware to allow for fast mirroring changes in software.  Two games add an extra 2KB of PPU RAM on the cartridge to allow for four pages of background graphics.

Sprites are controlled by a special 256 byte memory area internal to the PPU called Object Attribute Memory (OAM).  Each 8x8 sprite uses 4 bytes of the memory area, and the bytes select the tile to be displayed from the cartridge's CHR ROM or CHR RAM to represent the sprite, the X and Y coordinates on the screen where the sprite is to be displayed, which of the 4 palettes of 3 color the sprite will choose for color and whether the sprite is to be flipped horizontally or vertically.  Each sprite palette has a transparency color by which you can see the background graphics through clear pixels.  Typically, the CPU writes the values for all 64 sprites at a time.  There is also a special buffer that is not accessible by the CPU of 32 bytes which represent the data for the 8 sprites allowed on a line at a time.  When there are more than 8 sprites on a line, the PPU cannot display them all, resulting in flickering.

How the CPU Controls the System :

The NES is almost unique among consoles up to that point because it uses a dual bus design.  The CPU has its own address and data bus to its internal RAM and the cartridge PRG ROM and (if any) PRG RAM.  The PPU has a separate address and data bus to access its internal RAM and the cartridge CHR ROM or CHR RAM.  The CPU reads and writes data to memory locations in its memory map assigned to the APU and PPU.  These locations correspond to the APU and PPU registers and the input from the controllers.

Even though the PPU has its own address and data bus, it is told what to do by the CPU, it does not have its own specialized instruction set like a true coprocessor.  The CPU can read and write to memory anywhere in the PPU's memory addressing space.  When a cartridge uses CHR RAM instead of CHR ROM, it is up to the CPU to write the graphics data to fill the CHR RAM with graphics patterns.  This adds some flexibility at the cost of some speed and about 200 games use CHR RAM instead of CHR ROM (a couple use both).

Bankswitching Basics :

The NES's CPU can only handle 32KB of ROM at a time.  Similarly, the NES's PPU can only handle 8KB of ROM or RAM at a time.  Soon after the NES was introduced, ROM sizes on cartridges expanded beyond the combined 40KB that the NES was capable of accessing.  The NES had to use extra hardware inside the cartridge to switch in and out areas of ROM outside the 32KB and 8KB addressing limits.  With simple logic chips, it was possible to bankswitch additional PRG ROM, CHR ROM or both.  Typically, for PRG ROM, there would be a fixed 16KB bank and a switchable 16KB bank, with the game's kernel being held in the fixed bank.  Thus, for a game with a 128KB PRG ROM, there were 7 switchable banks.  This allowed for larger, more complex games with more music.  With CHR ROM, the simple schemes would switch the whole 8KB at a time.  A game with 32KB of CHR ROM could have 8 tilesets instead of the usual 2.  Games did not typically bankswitch CHR RAM or PRG RAM, but exceptions exist.

Adding extra logic chips made cartridges more difficult to manufacture and could have overwhelmed Nintendo's manufacturing capacities.  Nintendo created VLSI memory mapping controller chips to consolidate the functions of many simple logic chips into one chip.  The first of these was called the MMC1, and it allowed for bankswitching PRG ROM and CHR ROM, allowing for PRG ROM and PRG RAM to coexist and allowing the mirroring to be changed by the MMC1 at will.  By adding a battery to the PRG RAM, games could be saved after the console had been powered off, this is how The Legend of Zelda works.  Eventually more complex MMCs would be released, many of which only saw use in a handful of games.  MMC1 is the most common VLSI controller and can typically handle 256KB of PRG ROM and 128KB of CHR ROM and 8KB of PRG RAM.  There are NES MMC1 games that sacrifice CHR ROM bankswitching to bankswitch 512KB of PRG ROM or 16KB of PRG RAM.

The success of the NES increased the demand for more complex MMCs.  Nintendo released the MMC3 chip, which was found in games like Super Mario Bros. 3 and almost as many games as the MMC1.  The MMC3 could do all the MMC1 and more, it could bankswitch PRG ROM and CHR ROM in smaller memory slices, it could be accessed faster than MMC1, address more ROM and it had a scanline IRQ counter for easily splitting the screen between a main action area and a status bar.  It also provides for much better memory protection so you do not have to hold in reset as you turn the power off as you would on MMC1 games.  The maximum amount of memory the MMC3 can handle is 512KB of PRG ROM and 256KB of CHR ROM and 8KB of PRG RAM.

There is an extremely advanced MMC Nintendo released late in the NES's life called the MMC5.  In addition to even more flexible bankswitching and more sophisticated scanline IRQ counter compared to the MMC3, it can access 1MB of PRG ROM, 64KB of PRG RAM and 1MB of CHR ROM.  That was huge, the largest MMC5 NES cartridge only used 640KB.  It also added two pulse and a PCM sound channel, which was never used on the NES because there was no wiring to mix the cartridge audio with the internal audio.  It also could implement a vertical split screen scrolling mode, also probably never used in a NES cart.   It also had an 8-bit hardware multiplier. Finally, it had 1KB embedded into its chip that could be used for a third name table and attribute table, or be used to allow each background tile to independently select its palette entries.

When NES emulation became popular, various bankswitching methods was given "mapper" numbers.  As more and more games became emulated, the number kept expanding.  Here is the current mapper list and number of games using each mapper for all NTSC Licensed and Unlicensed games released during the NES's lifetime in the US :

Mapper 0 - 57

Mapper 1 MMC1 - 220

Mapper 2 - 90

Mapper 3 - 63

Mapper 4 MMC3 - 187

Mapper 4 Acclaim MMC3 - 12

Mapper 4 MMC6 - 2

Mapper 5 MMC5 - 8

Mapper 7 - 32

Mapper 9 MMC2 - 2

Mapper 13 - 1

Mapper 64 RAMBO-1 - 5

Mapper 68 Sunsoft-4/Tengen 337007 - 1

Mapper 69 Sunsoft FME-7 - 1

Mapper 206 Namco 109 - 4

Mapper 206 Namco 109/MIMIC-1 - 10

Mapper 11 - 30

Mapper 34 Nintendo - 1

Mapper 34 SEI/AVE - 1

Mapper 41 - 1

Mapper 37 MMC3 - 1

Mapper 47 MMC3 - 1

Mapper 71 - 15

Mapper 79 - 15

Mapper 118 MMC3 - 3

Mapper 119 MMC3 - 2

Mapper 144 - 1

Mapper 158 RAMBO-1 - 1

Mapper 168 - 1

Mapper 228 - 2

Mapper 232 - 5

Mapper 234 - 1

The numbers may change for Europe, but no new major memory controller hardware schemes were introduced there during the NES's lifetime.

CPU/PPU Revisions :

2A03E & 2C02E-0 : Used on early NES front loaders with PCBs labeled NES-CPU-04 and maybe NES-CPU-05.

2A03G & 2C02G-0 : Used on all other NES front loaders and many top loaders, Sharp Nintendo Televisions and NES Top Loaders with the original PCB design.  By far the most common combination in a NES.

2A03H & 2C02H-0 : Used on NES Top Loaders.

There are no known compatibility issues among these chips.  (The same cannot be said for Famicoms with CPUs and PPUs earlier than the 2A03E/2C02E-0 or the Famicom Titler or Sharp C1 TVs using the 2C03 or 2C05 PPUs.)

Console Generic Logic Chips :

74LS139*
74LS373
74HC368 x 2*
2KBx8 SRAM 100ns x 2
74HCU04 (Front Loader only)
3913A CIC (Nintendo security chip, Front Loader only)

* - These three chips are consolidated into a Nintendo chip labeled BU3266S or BU3270S in the Top Loaders with the redesigned PCB.

Video and Audio Capabilities :

The audio output comes from two CPU pins.  On one pins, there are the two square wave channels, on the other channel are the triangle, noise and PCM channels.  These two signals are mixed together via resistors and then sent to the audio line output.  The NES can be modded for stereo by bypassing the external mixers, but the result will usually sound unbalanced since most of the music will come from one speaker and most of the sound effects from the other speaker.

The NES's PPU generates composite video internally and outputs it on a single pin.  This pin is amplified and sent to an RF modulator or RCA jacks for composite video output.  S-Video, Component Video and RGB Video are not possible with a 2C02 PPU without a substantial modification.

There are two available mods to improve the NES video.  First is the 2C03 PPU mod.  This mod requires taking a Nintendo 2C03 PPU chip from a Playchoice-10 arcade board and replacing the 2C02 from a NES with it.  This mod has been around for a very long time and for many years it was the only mod to obtain RGB from the NES.  You do not have to keep the 2C02, so it is a bit easier than the later mod, which requires you to desolder the PPU without destroying it or the PCB.  However, 2C03 chips are very, very expensive.  You will need to build an RGB amplifier for the three signals.  It also has a tendency to show jailbars in the video output.  Finally, it is incompatible with at least seven NES games and will show unintended graphical anomalies in many more.  Compare the NTSC palette with the RGB palette :

NTSC 2C02 PPU Palette

RGB 2C03 PPU Palette

The newer mod is the NESRGB board, and it is much cheaper and does not have any major compatibility issues.  It also allows for S-Video output and can also allow the original composite signal from the 2C02.  Component video can be added with a small board.

How the NESRGB Works :

The NES has a 16 color palette for all background tiles and another 16 color palette for all sprite tiles.  In simple terms, each of the 16 indexes in either palette corresponds to one of the 64 colors available on the NES.  Each active picture pixel the NES outputs will have its color determined by an entry in one of those two 16 color palettes.  There is also a universal background color.

There are four pins on a 2C02 PPU that are not used in a stock NES.  They are called EXT0-EXT3.  They can be set to input or output and are grounded on a NES or a Famicom, which is set to the input mode by default.  In output mode, these pins will output the palette entry for every pixel the NES displays.  The output is 4-bit and is digital, giving the nucleus of the necessary information to accurately capture the screen output digitally and losslessly.

This is where the NESRGB comes in.  It sits on the PPU bus and does several things.  First, it tells the PPU to put the EXT pins into output mode and prevents games from telling the PPU to do otherwise.  Second, it sits on the PPU's address and data bus to discover the values the CPU is writing into the palette entries.  This allows it to assign colors to the palette entries in its own output.  Third, it reads the EXT pins to determine the color of the pixels by the palette indexes being output by the pins.  However, because the EXT pins only output a 4-bit value, the NESRGB cannot tell whether the palette entry is from the background palettes or the sprite palettes.

In order to derive the 5th bit, which distinguishes the background from the sprite palettes, the NESRGB board will analyze the composite video output.  If this did not occur, the backgrounds or the sprites would have the wrong colors because only one palette would be used.

From the composite output signal, the blanking and sync information are also derived, just like a Framemeister.  NESRGB combines this with its digitized palette entries and then converts the signal into analog RGB and S-Video.  NESRGB offers three palette choices, composite, RGB and improved.  If no palette is selected, then the NESRGB operates merely as a passthrough for the original composite video signal.  If there is a palette selected, then the original composite video is not available.  This is because the NESRGB sends special palette color entries to the real PPU, all background palettes are black and all sprite palettes are white.  This allows it to easily compare background and sprite pixels by analyzing the PPU's video output signal.  Remember, the EXT pins are outputting palette indexes, not palette color data.

Lockout Chips :

The NES was officially released in many, many countries.  One of the lockout chip's functions was to keep people from importing cartridges from another region.  There were four lockout chips produced :

3193A/6113A/6113B1 - Used in US, Canada and Brazil
3195A - Used in PAL-B territories (France, Spain, Federal Republic of Germany, Norway, Sweden, Finland, Denmark, The Netherlands, Belgium, Luxembourg, Austria, Greece) and South Korea
3196A - Used in Hong Kong, Asian territories
3197A - Used in PAL-A territories (United Kingdom, Italy, Australia)
3198A - Used by the Famicom Box (a pay-to-play system Nintendo released for Japanese hotels).

The lockout chip can be disabled by removing pin 4 and connecting it to ground.

Sound Overview :

The NES uses the same basic approach to sound generation as other Programmable Sound Generator devices like the AY-3-891x/Yamaha YM-2149, the TI SN76496, the Atari POKEY and the Phillips SAA-1099.  At the heart of these chips is a square wave, an electrical signal that rises and falls at equal intervals (the period) a certain number of times per second.  These chips can control the frequency of the period, which is given in terms of hertz.  Hertz can be equated into notes on a musical scale, so a square wave running at a frequency of 256Hz will sound like a middle C.  These chips can also modify the volume of the waveform either directly and some can through an ASDR envelope.

The NES can output two square waves, but unlike any of the above sound chips, can change the period so that the time spent at the high and low ends is not equal.  Thus it becomes a rectangular wave.  Unlike the Commodore 64, the NES has no difficulty producing strong, distinct rectangular waves.  Both of these rectangular wave channels have the same features.  A rectangular wave has a high pitched but somewhat hollow sound and typically is used as the main musical instrument in the NES.  All these features make it far more suitable for sound effects than the earlier chips.

The third sound channel is a triangle wave, and instead of rising nearly-instantly to the high point, it gets there in steps.  The period cannot be changed.  The triangle wave is usually a softer sound and is often found acting as the bass line in NES music.

The fourth sound channel is the noise channel.  Noise is generated by outputting a long semi-random series of 0s and 1s at a particular frequency.  The resulting waveform looks like random spikes.  Noise is typically used for sound effects in the older chips, but the NES put it to good use for percussion when there was not sufficient space for samples.

The fifth and last sound channel is for playing samples.  It was seldom used in the early years of NES cartridges because sound samples take up a lot of space.  This channel plays sound in two different ways.  First, it can accept a 7-bit value sent directly to the channel.  The second is through delta modulation, whereby a single bit is sent to the channel output over a period of time.  A 1 bit indicates an increase in volume, and without further 1 bits, the signal will decay and fall silent.  DPCM samples take up less space but the quality is lower than the 7-bit PCM.

Unlike the Famicom, the NES does not send its internal audio to the cartridge connector for mixing with any cartridge audio hardware.  Instead, audio could be mixed via the expansion port, but no product was ever released that did that.  Therefore, expansion audio just does not exist on the NES unless Famicom cartridges are being used.  

Sunday, June 21, 2015

Types of NES Passwords

In the NES era, more and more games were being released that were not likely to be finished in a single setting.  Adventure games with huge worlds and innumerable secrets were more and more common.  While the NES did not invent password saving in console games (Survival Island for the Atari 2600 Supercharger may have that distinction), it certainly popularized it.  Cartridge games thereafter (including many Game Boy Advance games) would have to choose between no saving, saving via battery backed memory, rewritable flash memory or EEPROM and the middle ground, passwords.

For the NES, most games that supported anything other than restarting from the beginning after a reset or power down used a password save.  Here are some examples of some passwords :

Simple Passwords :

Bubble Bobble allows the player to select a level via a password.  Each level is assigned a particular 5 character code, and there are different codes for Bubble Bobble (the first time through) and Super Bubble Bobble (the second time through).   If you look at the passwords, you will see a pattern emerge as the level number is incremented by one.

WURM: Journey to the Center of the Earth is even more simple, the passwords are arbitrarily assigned to each act and never change.

Little Sampson's passwords just save the the level you last beat like WURM, but do not save the extra health or the potions you may find.

Character Based Passwords :

Metroid/Kid Icarus
64 characters x 24 spaces

Metroid and Kid Icarus use an identical password system from the player's perspective.  The passwords are 24 characters long and each password space can select from 64 characters.  Typically you will often see that passwords use a number of characters and spaces that correspond to a power of two (32 or 64 characters) or near a power of two (24, 48).  In these games' cases, they use A-Z, a-z and 0-9 and a few punctuation marks to make 64.

With 64 characters, you can store the state of six bits.  4 such characters in a row gives you 24 bits or 3 bytes, something the 8-bit NES CPU can easily manage.  Thus, with 24 characters, you can store 18 bytes.  With these complicated games, almost every bit has some in-game meaning.

Nintendo did not want to make it easy for players to crack their passwords, so they implemented bit shifting and checksums so that random passwords would not be easily accepted and that the password would not necessarily be almost the same every time, even if you made no progress in the game.

Ironically, Metroid and Kid Icarus ended up using boards with an extra memory chip.  The only difference between a Metroid PCB and a Legend of Zelda PCB is that the latter has a battery and the extra passive components required for battery-backed saving.  It would seem that the original intent was that Metroid and Kid Icarus would have used a board without the extra RAM chip, but late in the porting process from the Famicom Disk System to cartridge, it was discovered that these games required the extra RAM.

Here are other examples of games with similar passwords :

The Goonies 2
48 characters x 14 spaces
Even though this game only uses 48 characters, each bit still represents 6 bits of information, even if not all those bits can be realized

The Guardian Legend/Rambo
64 characters x 32 spaces
These games have an RPG-like experience system, so saving large numbers becomes important.

Wizards and Warriors II
26 characters x 12 spaces
Uses only A-Z, but you still treat it has a a 5-bit value.

Grid-Based Passwords :

Mega Man 2/Mega Man 6
2 characters x 25 spaces
Grid-based passwords are not really that much different  from character based passwords and often much simpler.  Mega Man 2 & 6 uses a dot within a 5x5 grid.  Thus each grid space can be occupied by a dot or not, giving 1 bit for each grid.  This password saves 25 bits of information, or just over 3 bytes.

Mega Man 3/5
3 characters x 36 spaces
Only slightly more complicated because there can be one of two colored dots and a 6x6 grid.  Each grid must store 2 bits

Castlevania III
4 characters x 16 spaces
Each cell can have three symbols (whip, heart, cross) or be blank, so each cell still stores 2 bits.  This password is slightly more complicated because the player's name will have an effect on the symbols.

Split Passwords :

Swords and Serpents
32 characters x 20 spaces x 5 passwords
Swords and Serpents may have the longest passwords of any NES game.  Each of the four characters have his or her own password and the world state is stored in the fifth password.  The character's names have an effect on their passwords as well.

River City Ransom :
63 characters x 33 spaces x 2 passwords
In RCR, each player has a separate password, so the burden of writing down the password is less onerous in a one-player only game.  Unlike Swords and Serpents, there is no game world password.

Long Japanese Passwords :

Dragon Quest
64 characters x 20 spaces
Dragon Quest II
64 characters x 52 spaces

In Japan, all four of the Famicom Dragon Quest games were huge, giving Enix (later Square/Enix) a guaranteed success.  Even the remakes sell over a million copies.  In the beginning, things were much more humble and the first two Dragon Quest games required the player to enter passwords to continue their game.  As the series became more successful and the games larger, Enix ponied up for the extra cost of a battery-backed memory cartridge for III and IV.  When released overseas, Nintendo oversaw the localization of the first game and retrofitted it to use a battery backed save.  Enix did the same when they ported over II.

Maniac Mansion Japanese Version
66 characters x 104 spaces

Maniac Mansion was first released in Japan and ported by Jaleco.  The resulting game may use the longest password of any Famicom or NES game.  Maniac Mansion was ported from home computers and space was not quite as precious as it was on a cartridge.  The SCUMM engine did not necessarily seem to save a game efficiently.  Even though the Japanese version pretty much scraps the SCUMM engine, the same variables needed to be saved.  Each character stores 7 bits and this saves 91 bytes worth of information.

How long would a password for The Legend of Zelda have been?

The Legend of Zelda stored far more information about the game than any game before it.  Consider what it saves of each of its three save slots :

1.  The Character's Statistics

Player name -  1-8 characters
Number of deaths - 0-255
Life Meter - 3-16 Hearts
Rupees - 0-255
Keys - 0-9
Bombs - 0-16
Items : Wooden Sword, Boomerang, Magic Boomerang, Bow, Arrow, Silver Arrow, Food, Large Shield, White Sword, Magic Sword, Raft, Stepladder, Magic Key, Magic Wand, Spell Book, Blue Candle, Red Candle, Blue Ring, Red Ring, Whistle, Red Potion, Blue Potion, Letter, Power Bracelet
Quest Number - 1 or 2

Based on the above, I would estimate it takes 16 bytes to save your character's attributes.

2.  The Overworld

The Overworld is on an 8x16 grid, and the all the Underworld screens are on a 16x16 grid.

For every Overworld screen, two types of information are saved.  First is the number of enemies remaining.  If there is one or more of the enemies on the screen, not including Zoras or Ghosts, the same will save that number, but not the type.  I do not recall any screen with more than six enemies.  Second are the permanent alterations to the screen caused by blasting a door into a rock with a bomb or burning a tree with one of the candle or by uncovering a warp stairwell.  There is no more than one such secret on any given screen.  One byte per screen should be sufficient, so this is 128 bytes.

Third are the people inside the caves/stairwells.  These include the "It's a Secret to Everybody" Moblins, the old man who makes you pay for his door, and whether the old woman has seen the letter.  There are about twenty instances in the First Quest, so that is another 3 bytes.

3.  The Underworld

For the Underworld, there are several pieces of information stored:
Hungry Goriya fed - 1 in First Quest
Bomb guy paid? - 2
Triforce Taken? - 8
Compass and map for each level - 18
Boss monsters for each level defeated - about 32 in the First Quest
Room item taken? - Only one item per room unless its a 10 rupee room, which can be a key, a bomb or money - approximately 128 instances
Opened locked door or bombable wall uncovered? - Up to four per screen, approximately 128 instances

Approximately 40 bytes are required to save the Underworld state.

In total, approximately 187 bytes are required for Zelda's save.  That is more than double the bytes required for Maniac Mansion Japanese Version.  So, assuming a 64 character system like Metroid and Kid Icarus, you would need about a 250 space password to restore your game.  Obviously that was not going to work, so either the Disk System or a battery-backed saving system had to be used overseas, and Nintendo chose the latter.

Saturday, June 20, 2015

Nintendo's PlayChoice-10 - The Arcade Advertisement

Nintendo created the PlayChoice-10 arcade cabinets in order to show off its NES games.  These cabinets would let you select a game from a menu with up to ten slots and let you play any of the games for a certain amount of time, typically 300 seconds per quarter.  In this blog entry, I will be talking about notable aspects of this system.


Game List :

This site http://playchoice.riemen.net/ and Wikipedia includes Shatterhand and RBI Baseball in the canonical list of PlayChoice-10 games, but there are no pictures of their PCBs and their ROMs are not in GoodNES or MAME.  MAME has an entry for a prototype of Bases Loaded, but the prototype does not include the instruction ROM.  Here is a list of games that have been verified to have been released for the PlayChoice-10 units :

Game Title Publisher/Developer
NES Release Date
1942 Capcom 11/01/86
Balloon Fight Nintendo 06/01/86
Baseball Nintendo 10/01/85
Baseball Stars SNK 07/01/89
Captain Skyhawk Milton Bradley/Rare 06/01/90
Castlevania Konami 05/01/87
Chip 'n Dale's Rescue Rangers Capcom 06/01/90
Contra Konami 02/01/88
Double Dragon Technos 06/01/88
Double Dribble Konami 09/01/87
Dr. Mario Nintendo 10/01/90
Duck Hunt Nintendo 10/01/85
Excitebike Nintendo 10/01/85
Fester's Quest Sunsoft 09/01/89
Gauntlet Tengen 06/01/88
Golf Nintendo 10/01/85
Goonies Konami Not Released
Gradius Konami 12/01/86
Hogans Alley Nintendo 10/01/85
Kung Fu Nintendo/Irem 10/01/85
Mario Bros Nintendo 06/01/86
Mario Open Golf Nintendo 09/01/91
Mega Man 3 Capcom 11/01/90
Metroid Nintendo 07/01/87
Mike Tyson's Punch-Out!!! Nintendo 10/01/87
Ninja Gaiden Tecmo 03/01/89
Ninja Gaiden 2 Tecmo 05/01/90
Ninja Gaiden 3 Tecmo 08/01/91
Nintendo World Cup Technos 12/01/90
Pinbot Nintendo/Rare 04/01/90
Power Blade Taito 03/01/91
Pro Wrestling Nintendo 03/01/87
R.C. Pro Am Nintendo/Rare 02/01/88
Rad Racer Square 10/01/87
Rad Racer II Square 06/01/90
Rockin' Kats Atlus 09/01/91
Rush 'n Attack Konami 04/01/87
Rygar Tecmo 07/01/87
Solar Jetman Tradewest/Rare 09/01/90
Super C Konami 04/01/90
Super Mario Bros Nintendo 10/01/85
Super Mario Bros 2 Nintendo 10/01/88
Super Mario Bros 3 Nintendo 02/01/90
Tecmo Bowl Tecmo 02/01/89
Teenage Mutant Ninja Turtles Ultra Games/Konami 06/01/89
Teenage Mutant Ninja Turtles II : The Arcade Game Ultra Games/Konami 12/01/90
Tennis Nintendo 10/01/85
Track & Field Konami 04/01/87
Trojan Capcom 02/01/87
Volleyball Nintendo 03/01/87
Wild Gunman Nintendo 10/01/85
Yo Noid Capcom 11/01/90

Statistics and Game Choice :

The statistics for these 52 titles (less than 10% of the NES's licensed library) are interesting.  Nintendo leads the pack with 18 (or 21) titles, followed by Konami/Ultra with 10 titles and Tecmo and Capcom with 5 a piece.  Capcom was far more prolific than Tecmo with NES cartridge releases, but Capcom appeared to be rather conservative when it came to Nintendo's less mainstream hardware like the arcade machines and the Famicom Disk System and advanced cartridge memory mapping hardware.

Even though it was not a publisher, Rare has 4 games on this list to its credit.  Half of Square's non-Japanese NES library is here.  There are no titles from NES stalwarts Bandai or Jaleco (unless Shatterhand was really released) and no entries from Namco.  Atlus was not a very prolific publisher, but it has an entry.  Tengen also has an entry, perhaps two if you count RBI Baseball (which is really a Namco game).  Gauntlet was originally released as a licensed cartridge before Tengen/Atari Games went the unlicensed route.

Interestingly, Metroid and Rygar are on this list. These Metroidvania games are not typically well-suited to the arcade, which lends itself to fast-paced games.  They also tend to take longer to beat than your average arcade game unless you know where to go already.  TMNT is similar in that it is as much of an exploration as an action game.  TMNT was incredibly popular and Metroid was no slouch in the sales either.  Sports games were also popular on the NES, thus they had a decent share of the total.

Most of the games on this list are very well-known and not particularly hard to find in cartridge format. There are a few more obscure titles like Yo Noid, Power Blade and Solar Jetman, but nothing particularly exotic.

Except for the Black Box NES games, which are products of their time, most of the games included on the Playchoice 10 are very good.  There are classics like Castlevania, Contra and Super C, Mega Man 3, Metroid, Mike Tyson's Punch-Out!!, the first two Ninja Gaiden games, all three Super Mario Bros and Tecmo Bowl.  Most of the rest of these choices are solid, with really only Fester's Quest and TMNT being the high profile games that just aren't very good.

Interesting PlayChoice-10 Versions :

Double Dragon - No Tradewest logo on title screen.

Gradius - Has the old Konami logo on title screen and no Licensed by Nintendo of America text, which would suggest that it is identical to the Famicom cartridge.  1942 by Capcom also does not have the Licensed by Nintendo text, but neither does the NES cartridge version either.

The Goonies - This game was never released in a home cartridge outside Japan, so this and perhaps Vs. The Goonies is the only exposure western NES fans had to the game.  The Goonies II was released fairly early in the NES's life, which made its predecessor look rather simple.

Mike Tyson's Punch-Out!!! - This game's PlayChoice-10 board is unique because it has battery on PCB and an SRAM chip which the cartridge editions never had.  This extra hardware allows the game to save the time and round where you beat each fighter.  There is a special screen where you can enter your initials when you start a new game and you see your time in relation to others when you beat an opponent.  Some other NES sports games did have battery backups, but typically they stored more information than just high scores or best times.

Some other material from the cartridge versions has been cut, there are no crowd noises when the game loads and the training cutscenes between circuits cut all animation, only showing the password.

Mario's Open Golf - This is the PlayChoice-10 version of NES Open Tournament Golf.  There is no save battery, so the Club House option where all the stored settings can be accessed, has been removed from the main menu.

Rad Racer - No Anaglyph 3D mode, pressing select does nothing other than make noise.

Arcade Cousins :

Many of the PlayChoice-10 games were arcade ports and must have paled in comparison if the real arcade machine was present in that arcade.  1942, Double Dragon, Gauntlet Gradius and TMNT II would have looked very weak next to their popular arcade counterparts.  The two Contra games, Kung Fu (as Kung Fu Master) Rush 'n Attack and Trojan also came from arcade machines.  Rygar had an arcade namesake and Castlevania had a loose arcade translation, but they were quite different from the PlayChoice-10 games. Obviously, Pin Bot would pale in comparison to a real Pin Bot pinball table, widely recognized as a classic table.

Nintendo also had several standalone Vs. System arcade cabinet machines.  Balloon Fight, Baseball, Castlevania, Dr. Mario, Duck Hunt, Excitebike, Golf, The Goonies, Gradius, Hogan's Alley, Super Mario Bros and Volleyball all had a Vs. System equivalent.  For the early games, the Vs. System versions would often have new features and more graphics compared to the PlayChoice-10 or NES versions.  The Vs. System versions were always harder.

Note that the PlayChoice-10 has a reasonable selection of games throughout the NES's lifespan.  The biggest years of the NES, 1987-1991, are very well represented.  By contrast, the Vs. System had very few games released for it that were released on the NES or Famicom after 1987.  Of course, the PlayChoice-10 had several advantages over the Vs. System.  The PlayChoice-10 PCB could hold ten games, a Vs. System Board could hold a maximum of two.  The PlayChoice-10 offered arcade owners a lot more bang for their buck.

Other Official Previewing Options :

People coming into an arcade would look at a PlayChoice-10 machine and knew it was an arcade NES.  Perhaps they owned some of the games on the menu.  The PlayChoice-10 was intended to give gamers a preview of all the hot new games that were going to be released.  It was an effective advertisement, but because video game rentals became hugely popular in the NES era, it was not as effective as it otherwise may have been.

At World of Nintendo kiosks in malls around the country, Nintendo fans could also sample new NES games from M82 Demo Units without having to pay for time (although the console would eventually reset).  The M82 could hold 12 standard NES cartridges and used a button to select the game and output to a composite monitor.  The Famicom had similar units like the Famicom Box and Famicom Station which used 72-pin cartridges.  Unlike the PlayChoice-10's arcade controls, the M82 used standard NES controllers, so you knew exactly what kind of experience you were going to get.

Instructions :

The PlayChoice-10 cabinets usually used a dual monitor setup like the arcade Punch-Out cabinet. In fact, Nintendo sold a conversion kit to convert Punch-Out or Super Punch-Out into a PlayChoice-10 machine.  These conversions would have two screens of equal size, but there are also dedicated PlayChoice-10 cabinets where the instruction screen monitor is much smaller than the game display monitor.

The lower screen plays the game, the upper screen shows the menu for the machine and, once a game is selected, the instructions are shown and the time remaining for the quarters you entered.  Each game has from one to three screens of instructions.  Pro Wrestling and Metroid use three, but most other games can get the message across in one or two screens.  Ironically, because Pro Wrestling does not tell you which wrestlers use which special moves, it is perhaps one of the least helpful of instruction screens.  Metroid gives you a partial world map (Brinstar and some of Norfair) to help you out.



PlayChoice-10 cabinets also came in an upright and more compact countertop single screen versions.  In these machines, the menu and instructions share the screen with the game.  First you see the menu screen, and when you insert your quarter, you see the time countdown from a 4-digit LED display above the monitor.  You can proceed to play the game.  By pressing the game enter button again you can see the instructions.  This apparently overrides the video from the game or halts the 2A03E CPU's execution.  Hold down enter for two seconds to go back to the game.




Hardware :

The PlayChoice-10 machine uses a standard NES 2A03E CPU but has an RGB 2C03B PPU.  The 2C03 outputs pure analog RGB and has a palette which corresponds roughly to the NTSC-based 2C02G-0 PPU palette.  It does not need to use any color-fringing filtering which gives the NES its 3-line zig-zag pattern with colored straight edges.  The resulting output is much sharper than the home console, but the colors are more garish.  It also loses two gray entries, so games like Paperboy 1 & 2 will be hard to play because you cannot see where the sidewalk ends and the road begins.  Finally, it handles the color emphasis bits in a way that typically turns games that use those bits (The Immortal, Magician) totally white, making them impossible to play.  The PlayChoice-10 also has a Z-80 CPU and additional video display hardware to handle the menu/instruction monitor and the coin mechanism and the countdown timer.

The games themselves come on naked PCBs and connect to the main PCB via a 3 x 32 pin BERG-style connector.  Part of the reason for this large number of pins is because every game has an additional 8KB ROM which contains the game's instructions and a 64-bit serial PROM containing the game's name which also acts as the security device.

The main game hardware is almost always standard and can be found on a NES or Famicom cartridge.  Mappers encompassed are 0, 1, 2, 3, 4, 7, 9, 87, 119 and 206, which are used by good 90% of licensed game.  Some games use Mask ROMs and EPROMs, others just one or the other.  Older PlayChoice-10 PCBs may need a mod to make them compatible with Mapper 4 games, which is an issue with other Nintendo game selecting devices.  With an EPROM burner and some tinkering, almost any licensed NES US game (that was any good and you would want to stand up and play for less than an hour) could be made to play in this machine.