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.

Monday, April 11, 2016

The Amstrad PC-1512 : The Affordable IBM PC Compatible for Europe

The Amstrad PC1512, What you See is the Hardware you Got (credit to wikipedia)
In 1986, Amstrad released the PC-1512 for in the United Kingdom.  Amstrad was a leading manufacturer of home computers, having launched the successful CPC series and by 1986, having bought Sinclair Research and would release more computers in the ZX Spectrum line.  However, both the CPC and Speccy's were known more for and better at playing video games than serious work.  Unfortunately, the standard business computer of the day, the IBM PC and clones, was very expensive.  The cost of a minimally configured PC compatible or clone was well out of the price range of most European consumers.

Neither of Amstrad's key computer lines were IBM PC compatible so Amstrad decided to design their own PC Compatible.  The solution they came up with was innovative in many ways but a bit limited in others. Enter the PC-1512.

The Amstrad PC-1512 uses an 8086 CPU running at 8MHz like the Tandy SL, SL/2 or the IBM PS/2 Models 25 & 30, but it came earlier than either machine.  The CPU is in a socket, so it can be upgraded to a V30 for increased performance.  The stock system came with 512KB of parity memory, which was very reasonable for a low cost PC clone at this time.  (The Tandy 1000 EX and HX came with half that and the SX came with 384KB, all non-parity).  The RAM can be upgraded to 640KB with eighteen standard 64Kx1 DRAMs, 150ns or better.  It also has a socket for an 8087 Math Coprocessor and a built-in floppy controller with DMA.

The PC-1512 came with one or two half height 5.25" drives, and in this regard looks very similar to a Japanese NEC PC-8801 or 9801 machine.  The keyboard is based off the IBM 83 key keyboard with many improvements to the layout.  It has 85 keys and looks like an IBM PC AT keyboard. Apparently the PC-1512 was released in the United States, but it was not popular.  Likewise, the Tandy 1000s were released in the U.K. and Europe, but were not popular.  The US and UK keyboard are almost identical and the UK keyboard is rather US friendly in terms of key layout.  The keyboard is not compatible with any IBM-compatible keyboard, but there does exist at least one compatible 102-key keyboard.  Early Northgate Omnikey keyboards also have Amstrad compatibility with a special cable.

Input was also very innovative for the time.  The system came with a mouse out of the box, which was always a separate purchase for other IBM PC compatibles of this time.  The Amstrad mouse is extremely ugly looking, even by the miserable mousing standards of the 1980s. It looks like the designer was inspired by the Moai statues of Easter Island.  You should be able to build an adapter to allow a bus mouse which sends pure quadrature signals to work in the PC-1512.  I believe an Atari ST mouse may also be compatible.  I'm not sure about an Amiga mouse.

Expansion is pretty decent.  There is a standard 25-pin serial and parallel port on the back and three slots inside the machine for ISA expansion cards.  The keyboard connects to the machine via a 6-pin DIN.  Next to the keyboard port is a DE-9 mouse port.  The mouse is a proper rotary optical mouse, but the two mouse buttons are redirected to the keyboard port.  The keyboard will report the mouse buttons as otherwise unused raw keyboard scancodes.  Of course, with the proper mouse driver, this should be transparent to the user.  If you want to assign the mouse buttons to a particular keyboard key, you have that option.

Even more interesting is the Amstrad joystick, which attaches to the keyboard via a DE-9 port.  The joystick pinout is compatible with standard Atari joysticks, but also can support a second button on pin 7, which is not particularly standard (Genesis and Master System controllers use Pin 9).  This is a digital joystick, which is a first in the PC world.  The keyboard treats the joystick simply as six extra keys, giving a unique raw scancode to each key.  The built in firmware translates the joystick directionals to cursor keys but the buttons can be user defined to produce the translated scancode of any key.  The Amstrad can also use a standard IBM PC compatible analog joystick with a standard Game Card or a Sound Card.  This feature was carried over to the PC-1640.

Like the Tandy 1000 EX and SX, the Amstrad has a volume control for the internal speaker.  The dial is accessible outside the machine, like the EX.  The SX's volume dial is inside the machine, an issue fixed with the TX and HX.  There is no additional sound hardware outside the main PC speaker unless you add a sound card.

The Amstrad came with one or two 5.25" 360KB drives.  Upgrading the drives to 720KB can be done.  The data separator in the PC-1512 cannot handle the 500kbits per second speed required for high density drives.  In addition, Amstrad drive cables are untwisted, so you will need a way of setting a modern 3.5" drive to DS0 instead of DS1 for the A: drive.  You do not need to do anything for the B: drive in this case. Installing a hard drive into one of the bays was a standard, if expensive, option.  You would need to add a hard drive controller card into one of the expansion slots or use a hard card.  The Amstrad can accept a 13" expansion card, unlike the Tandys.

The Amstrad had a built in real time clock and CMOS RAM.  It is a standard HD146818 like the one used in the IBM PC AT and powered by 4xAA batteries instead of coin cells, barrel batteries, or the Dallas Smartwatches.  The CMOS setup is pretty basic, but is used to assign the number of disks, starting text/graphics mode, initialize serial port parameters and can be used to assign a keyboard translated scancode to the joystick and mouse buttons.  Tandys of the time required an upgrade for a RTC, either being fitted underneath a ROM chip or on an expansion board.

Most PC compatibles had a fan for the power supply.  Early PC1512s did not come with a fan, even for the power supply.  The reasoning was that the inclusion of the power supply in the monitor allowed for adequate cooling by natural convection.  However, when rumors of unreliable machines popped up, Amstrad put in a fan.

The Amstrad came with MS-DOS 3.2 and Digital Research DOS Plus, the latter of which can run MS-DOS or CP/M applications but was slower.  It also came with DR's GEM graphical user interface and the GEM Paint program.  The Paint program supports 640x200x16.  Tandy provided something similar with its Deskmate II software with the SX, but Deskmate II gave only a text-mode based interface.  The EX's Personal Deskmate used a true graphical interface but it was fairly limited.

The 1512 has a special CGA-style monitor.  This monitor comes in monochrome and "colour" varieties.  This monitor is unique to the 1512 because it provides power to the system unit.  No monitor = paperweight.  The monitor provides power to the system unit via a very unusual DIN-14.  The system unit provides video to the monitor via a DIN-8.  This DIN-8 combines H-sync and V-sync on one pin, standard CGA separates the H and V signals into two pins.  The signals for the R, G, B, & I signals are still digital.  The Amstrad does not have composite CGA output, so the monochrome output is digital and uses 16-shades, giving sharp and distinct image quality.

CGA compatibility on the 1512 is nothing to write home about.  The standard BIOS-compatible CGA modes are supported as is the 160x100 "graphics mode" and the alternate cyan/red/white palette. Composite color is not supported because the PC-1512 was designed in and marketed mainly for PAL countries and CGA composite color was NTSC based.  The MC6845 is only emulated and the emulation is not 100% compatible.  The built-in CGA cannot be disabled, so EGA and VGA will be limited to monochrome modes.  A Hercules or MDA card will work alongside the Amstrad's CGA, but you will need a separate monitor.  A Hercules InColor card will also work to provide high resolution color output, but little software supports it.

Amstrad CGA has two or three text mode fonts built in, selectable by a jumper on the motherboard.  Normal/Codepage 437/English is the default, Danish is also available as is Greek on later 1512s.  More important is its 640x200x16 graphics mode.  This graphics mode is unique to the 1512.

However, few games ever took advantage of this high resolution graphics mode.  MobyGames indicates that 21 games support Amstrad graphics, but this does not mean these games support the 640x200x16 Amstrad graphics mode.  The Lemmings games do not.  Iznogoud does not, nor do the two Passenger on the Wind games.  While they do have Amstrad selections, I believe this is to ensure compatibility with CGA graphics, not to implement extra color.  Almost all of these games support EGA and sometimes even Tandy or VGA.  All of these games  come from European publishers and except for Lemmings they are very obscure by US standards.

The one commercial game that has been known to support Amstrad 640x200x16 graphics out of the box is Frank Bruno's boxing.  It gives more color to what would otherwise be 640x200 B&W CGA graphics.  Unfortunately, the game is an unlicensed clone of the Punch Out arcade games and is pretty terrible.  Ironically, it does not support the Amstrad joystick.  Here are some screenshot comparisons :

Title - Amstrad
Title - CGA
Opponent Profile - Amstrad
Opponent Profile - CGA
Fight - Amstrad Colour
Fight - Amstrad Monochrome on Colour Monitor
Fight - CGA
The 640x200x16 mode's implementation is unique to the Amstrad PC-1512.  Its successor, the Amstrad PC-1640, has built-in EGA graphics in place of the PC-1512's graphics controller.  The 16-color PC-1512 graphics mode did not receive BIOS support.  Neither did the 640x200x16 mode with the later Tandys.  It requires 64KB of RAM, but the controller only provides a 16KB window into video memory.  In this 640x200 mode, the window is assigned to one of four 16KB bitplanes, with each bitplane representing one of the four RGBI components.  You select each bitplane then write that component's bits.

On top of this, the Amstrad's CGA graphics may be the slowest graphics adapter of all time (next to the PCjr.)  Topbench's benchmarks show the speed of the Amstrad as significantly lower than a CGA card in an IBM PC or the Tandy graphics adapter in an Tandy 1000SX.  Given that you cannot disable the built-in graphics, you are almost always stuck with slow 4-color CGA graphics.  The Technical Reference states that the CPU has wait states inserted when accessing video RAM to maintain synchronization with the graphics controller and the number of wait states (12-46) seems rather high.

One thing I had forgotten about until writing this article was that Sierra offered support for the 640x200x16 mode in its SCI0 and 16-color versions of SCI1 games!  With a driver called PC1512.DRV, you could obtain a proper, effective 320x200x16 resolution in Sierra's games.  In order to achieve this, each pixel is written twice horizontally.  This driver rarely can be found with the actual games themselves, but here is a place to download the driver : http://sierrahelp.com/Patches-Updates/MiscUpdates.html  The SCI games run a tad slow on the PC1512.  As far as AGI games go, there is no Amstrad driver and you are limited to 4-color CGA at best.

Price and Feature Comparison with the Tandy 1000SX

Amstrad PC-1512 US Prices
Monochrome Monitor Single Drive : $799
Monochrome Dual Drive : $899
Color Single Drive : $999
Color Dual Drive : $1,099

Source : http://www.old-computers.com/museum/computer.asp?c=183

Tandy 1000SX US Prices :
Tandy 1000SX Dual Drive : $1,199
VM-4 Monochrome Monitor : $129.95
CM-5 Color Monitor : $299.95
Digi-Mouse : $99.95
Digi-Mouse Controller/Calendar Board : $99.95
PLUS RS-232C Option Board & PLUS Upgrade Adaper Board : $94.9

Source : Tandy Computer Catalog RSC-17

So, in order to get the functional equivalent of the Amstrad's Color Dual Drive features (except for CPU and RAM), you would need to spend $1,793.75 at Radio Shack on the SX.  Of course, you could often find Tandy options cheaper elsewhere.

Here is a spreadsheet comparison between the two dual drive systems :

Feature Amstrad PC-1512 Tandy 1000SX
CPU 8086 @ 8MHz 8088 @ 7.16/4.77MHz
CPU Upgrade V30 V20, 286 Express
Coprocessor Supported Supported
RAM 512/640KB parity 384/640KB non-parity
Keyboard 85-Key 90-Key
Parallel Port DB-25 Card Edge
Serial Port DB-25 Upgrade
Real Time Clock Built-in Upgrade
Mouse Interface Built-in Upgrade
Volume Control External Internal
Sound PC Speaker PC Speaker + Tandy 3 Voice
Expansion Slots 3 5
Video Amstrad Enhanced CGA Tandy Graphics Adapter
Drive Bays 2 x 5.25” 2 x 5.25”
Monitor Included Separate Purchase
Monitor Type Monochrome or Color CGA Monochrome or Color CGA or Composite
Joystick Interface Digital, 1 Joystick Analog, 2 Joysticks
Power Supply 57W 65W
Supplied Software MS-DOS 3.2, DR DOS Plus, DR GEM, DR GEM Paint MS-DOS 3.2, Tandy Deskmate II

So, it would seem that Amstrad has more advantages.  But not all things are weighted evenly.

The Amstrad CPU is faster than the Tandy CPU, but the slower switchable speeds of the Tandy makes it more early software friendly.  Moreover, Tandy offered the 286 Express upgrade (at 299.95) that would propel the Tandy beyond the Amstrad.  8086 machines had no such upgrade generally available.  

The maximum amount of RAM is the same, but the cost of eighteen 64Kx1 chips for the Amstrad was probably roughly equivalent to the cost of eight 256Kx1 chips for the Tandy.  

Amstrad's keyboard has a better layout than Tandy's.  The keys are more spread out and areas more clearly defined.  Tandy's keyboard has everything mushed together and the extra keys are seldom used.

Amstrad's parallel port is standard, Tandy's is not and is missing one of the control lines.  The serial port in the Amstrad is a welcome feature, Tandy requires an upgrade that takes up a slot.  Cheap these days, however.  A dual serial card will give you a mouse interface for the Tandy, making Amstrad's mouse interface no longer much of an advantage.

Amstrad's external volume control comes in handy on occasion.  With the SX, you can use the multiplexer to silence the internal speaker and allow the external audio output to output PC Speaker and 3-voice music.  See here : http://nerdlypleasures.blogspot.com/2013/06/ibm-pcjr-and-tandy-1000-sound.html

Music is clearly superior from the Tandy machine, 3-voice music was supported in hundreds of games and usually sounds decent even when the game supports Adlib music.

Expansion slots are typically a wash, you need at least one slot on the Tandy for a mouse interface.  Amstrad will have no problem with Expanded Memory Boards, but there are modern Expanded Memory Boards available from Lo-tech that fit inside Tandys.  Vintage 8-bit EMS boards are overpriced.

The Tandy 1000SX has its power supply built in and you are not tied to two specific monitors.  They can also use NTSC-compatible composite monitors and TVs when nothing better is available.

Tandy's video slaps down Amstrad's video.  Tandy's video is much more CGA compatible and is far, far faster than Amstrad's.  Hundreds of games use 320x200x16 and 160x200x16 Tandy graphics, almost none use Amstrad's Enhanced 640x200x16 graphics.  You can easily upgrade to an EGA or VGA card in a Tandy SX, you cannot in an Amstrad.

The joystick issue is not an easy one.  Some games do explicitly support an Amstrad joystick.  Many games which use cursor keys support it by default.  Games that do not use the cursor keys or games that read raw scancodes from the keyboard will not work with the joystick.  The analog joystick of a Tandy is always supported in any game that supports a standard joystick. An analog to digital joystick converter for the Tandy joystick is now possible : http://www.vcfed.org/forum/showthread.php?44532-Tandy-Color-Computer-Digital-Joystick-Adapter 

Saturday, April 2, 2016

When The Doctor Met the Monster - Product Placement in Godzilla 1985

Better than the Japanese title
When New World Pictures (NWP) was developing "The Return of Godzilla" into "Godzilla 1985", it made a deal with the soft drink maker Dr. Pepper.  Dr. Pepper was conducting an advertising campaign at the time where commercials showed Godzilla being destructive until calmed by some Dr. Pepper.  NWP was a smaller studio which could use all the publicity they could get to advertise the film they were going to release into theaters in the summer of 1985.  NWP made a deal with Dr. Pepper, Dr. Pepper would shout out the film in their advertising campaign and NWP would conspicuously engage in product placement for Dr. Pepper in its film.

You should have seen that birdie I made on the 13th hole...
This film has a reputation for having "numerous product placements" (according to wikipedia) for Dr. Pepper. I remembered Dr. Pepper products being featured in the film, but I could not specifically recall in how many instances or how long they could be seen.  Because Godzilla 1985 is not available except on the dead formats of VHS and LaserDisc, I had to "track down" a more watchable and widescreen copy from other sources.  The channel MonstersHD broadcast Godzilla 1985 in the mid-2000s and a DVR transfer of this broadcast remains the best source for the film that is readily available.  The version I used was in SD but comparable to DVD quality and uses anamorphic widescreen.  There are a few minor differences between this "workprint version" MonstersHD used and the theatrical prints,
http://hkfilmnews.blogspot.com/2007/10/godzilla-1985-widescreen-on-monsters.html, but none that would affect this particular issue.

A peaceful scene, for the moment
With a copy with which I could easily manipulate the playback,  I counted exactly four instances where Dr. Pepper is plugged.  The first instance is the scene introducing General Goodhue and Major McDonough at 18:02.  There is a Dr. Pepper vending machine in the middle of the background as the camera tracks the two men down the hall.  The scene with the vending machine visible lasts 26 seconds.  The second instance is at 30:52 when Steven Martin's grandson is playing with his toys.  A can of Dr. Pepper is among his toys and gets knocked around.  The can is visible on screen for about 13 seconds and can be seen in two shots.  The third instances is of Maj. McDonough taking a drink from a Dr. Pepper can at 1:18:59 and is visible for about 2 seconds.  The final instance is a Special Thanks to "The Dr. Pepper Bottling Co.", among others, in the credits.  The credits last for 2m50s and the text can be seen for about 10 seconds, just like any other line.

I am Godzilla, you are Japan!
I would note that the filmmakers took steps to avoid overly gratuitous use of Dr. Pepper.  They determined that it would not be unreasonable to have a vending machine in the office building like the Pentagon, so they set it in the hallway scene with the General and Major.  However, it would have been crass to put the machine in the Command Center itself where most of the rest of the subsequent US footage would be shot. Dr. Pepper is not the only beverage shown to be consumed in the film, even in the later-added US footage. The General is shown drinking coffee twice.  Although US Director Kizer tried to get Raymond Burr to take a drink of Dr. Pepper on film, that was not about to happen.

Is Dr. Pepper is the reason why this guy is such a dweeb?
The scene with the vending machine has the longest shot of any of the Dr. Pepper instances, so I think it is worth some attention.  If this film was being made in 2015 instead of 1985, a more conscious effort may have been made to emphasize the machine.  One way would be for the General and the Major to stop to have their conversation in front of the machine with each actor standing on either side of it.  Another way would be for the General and the Major to walk toward the machine with the camera following them, allowing the machine to gain more prominence as the men get closer to the Command Center.  In the existing scene, the camera pulls away from the machine.

I'm sure Dr. Pepper would have preferred a few more gratuitous shots of its soda

Godzilla 1985 is 83 minutes long between the opening titles and closing credits.  The US version added about 10 minutes to the film's runtime and the remainder is from the original The Return of Godzilla (which is 103 minutes long).  While Dr. Pepper did exist in Japan, it was nowhere near the most popular soft drink there and it is not present in the Japanese film.  The Japanese film released in December 1984 and only after that did NWP obtain the rights to recut and release the film in the US.  In the context of the complete film, Dr. Pepper has only a very minor presence.


I would not have been surprised if the Marketing people at Dr. Pepper, after viewing the film, were a little disappointed.  They probably would have expected a few more shots with a Dr. Pepper can in it or perhaps a second scene in the hallway, preferably with Burr in it.  However, for NWP, it was a small price to pay for some very generous support from a national brand.

Bonus : A Bit about Burr

Steve Martin - 1956 Vintage
NWP made an inspired decision to bring back Raymond Burr and his character, who had been introduced in Godzilla, King of the Monsters in 1956.  Burr treated Godzilla seriously and brought the same gravitas to the role 30 years later, now with the added years.  Whatever his faults in his personal life, (his own accounts of his personal life were filled with fiction), Burr always took acting seriously and never gave an undignified performance.  His presence helps keep the grim tone of the original The Return of Godzilla intact between the Dr. Pepper plugs, the goofy comedy relief provided by Major McDonough and the dubbing.  The Return of Godzilla sans-Pepper & Burr is a bit dull by comparison.  When Sony localized Godzilla 2000, even the decent dubbing and judicious trimming could not quite make up for the absence of Burr and new American scenes.

Steven Martin - 1985 Vintage
Although Burr is frequently referred to as "Steve" or "Steve Martin" and never as "Steven" in Godzilla, King of the Monsters, the shorter "Steve" is never used in Godzilla 1985.  This was to avoid any association with the comedian Steve Martin, who was some years away from being known for his fine dramatic skills.  Burr's character's first name, "Steven", is only given in the credits and in the script.  In the film itself, he is always referred to as "Mr. Martin" except in one instance.  In fact, when he introduces himself to the General, in the script he is supposed to say his full name, but in the film he just says "The name is Martin, you asked for me to come here."

Pontificate all you want Ray, but here is the real star of the film
It is worthy to observe that Godzilla portended good things for Burr after both times he appeared in a Godzilla film.  When he appeared in Godzilla, King of the Monsters in 1956, his mainstream breakout role in Perry Mason was very close at hand.  Godzilla, King of the Monsters had premiered in April, 1956 and Burr had won the role in TV series Perry Mason by the next month  I'm sure the financial success of Godzilla, King of the Monsters did not hurt his chances or make the producers of Perry Mason reconsider their choice.  Burr's film appearances virtually disappeared for the next twenty years between Perry Mason and Ironside.  However, after Ironside his subsequent TV shows failed and he was not in huge demand in feature films either.  When he was working on Godzilla 1985 he was simultaneously working on the first Perry Mason TV movie.  It premiered at the end of December, 1985 and it was so successful to launch a series of twenty five more TV films, an Ironside Renunion film and four more "Perry Mason Mystery" films after Burr's death.  He only made one more film appearance after Godzilla 1985, ultimately it is his work in TV and in Godzilla films (and portraying the villain in Hitchcock's Rear Window) for which he will be most remembered.

Wednesday, March 30, 2016

NES PowerPak and EverDrive N8 Mapper Reference

This blog entry is dedicated to the various mappers files and collections for the NES PowerPak and EverDrive N8.  I have previously discussed each device elsewhere in this blog.  This blog entry will always have the latest compatibility information for these flash carts.

NES PowerPak Mapper Sets

Latest Official Mappers : v1.34, 10-14-2010
Expansion Audio Support : VRC6, FDS, Namco 163, Sunsoft 5B (all by an older version of Loopy's Mappers)
http://www.retrousb.com/product_info.php?cPath=24&products_id=34

Here is the Mapper Support Matrix :







Latest Beta Mappers : v1.35b2, 11-10-2010
Changes to Official Mappers : 1, 3, 4, 79/4F
http://www.retrousb.com/downloads/POWERPAK135b2.zip

Latest Loopy Mappers : No version number, 01-21-2019
Mappers supported : 3, 4, 5, 19/13, 21/15, 23/17, 24/18, 25/19, 26/1A, 34/22, 69/45. 71/47, 90/5A, FDS
Expansion Audio Support : VRC6, FDS, Namco 163, Sunsoft 5B
http://3dscapture.com/NES/powerpak_loopy.zip

Latest Save State Mapper : v1.6, 01-01-2014
Mappers supported : 0, 1, 2, 3, 4, 7, 69/45
Note : No Expansion Audio Support for Mapper 69/45
http://www.mediafire.com/file/8dq23vlpfsoqy3m/save-state-mappers-v16.zip/file

Latest PowerMappers : v2.3, 12-28-2015
Mappers supported : 0, 1, 2, 3, 4, 7, 9, 10, 11, 34/22, 66/42, 69/45, 71/47, 118/76, 119/77
Note : No Expansion Audio Support for Mapper 69/45
https://kkfos.aspekt.fi/downloads/powermappers-v23.zip

Other Noteworthy NES PowerPak Mappers :

UNROM 512 Mapper 30:
http://forums.nesdev.com/viewtopic.php?p=236715#p236715

Used by several homebrew games

GTROM Mapper 111 :

Used by several homebrew games

Nintendo World Championships Official Tournament Time Mapper 105/69 :

The NWC had jumpers to set the time from 5m04s to 9m46s.  The standard mapper only gives 5m04s, but the official tournament time was 6m15s.  This mapper gives you the official tournament time.

Comments : The NES PowerPak uses a MAP.XX file for each mapper.  The iNES mapper number is in hexadecimal for each MAP.XX file.  So iNES Mapper 79 decimal turns into 4F hexadecimal and is supported by the MAP.4F file.

http://nintendoage.com/forum/messageview.cfm?catid=8&threadid=97798

Myask Mapper Package

Adds mapper support for 32, 33, 48, 65, & 107.  All but the last were used by Irem & Taito games for the Famicom.

http://forums.nesdev.com/download/file.php?id=5989

Introfix :

This file fixes a bug where the save file will not load if you start the previous game immediately upon turning the power on.

http://forums.nesdev.com/viewtopic.php?f=2&t=9880

EverDrive N8 Mapper Sets

Latest Official OS : v.20, 12-23-2019
Expansion Audio Support : VRC6, VRC7, FDS, Namco 163, MMC5, Sunsoft 5B
http://krikzz.com/forum/index.php?topic=7811.0

Here is the Mapper Support Matrix :


Game Issues Common to both the PowerPak and EverDrive N8 :

Action 52 - At 2MB this game is too large for these 1MB flash carts and cannot work.  If you really want to play Cheetamen, try this extracted and improved ROM  : http://nintendoage.com/forum/messageview.cfm?catid=22&threadid=151720

I managed to split the games up so they can load on the PowerPak and EverDrive. You can download them from here : https://archive.org/download/everdrivepack/

Mapper 64 - Skull and Crossbones has a garbage scanline above status bar when the main action screen has been scrolled down as much as possible.  The Hard Drivin' prototype also exploits this chip in ways not yet supported by flash carts.  This is due a lack of information on how the IRQ counter in the RAMBO-1 chip inside this cartridge works.

Galaxian (J) - This is a Mapper 0 game with only has 8KB of PRG-ROM and 8KB of CHR-ROM, whereas the official iNES 1.0 specification does not allow for less than 16KB of PRG-ROM ad 8KB of CHR-ROM with Mapper 0.  Use an overdumped 24KB combined ROM to get this game to work.

Study Box (J) - This game will never work properly on any Flash Cart because it embeds a cassette deck.

All Japanese games using a speech synthesizer chip, such as the Moero Pro games, will not play the speech samples because the speech data has never been dumped and the speech synthesizer chips have never been emulated.  Most of these games have U.S. counterparts that use the NES's PCM channel to produce speech but not the sound effects.

Mappers 153, 157 and 159 - Games requiring these mapper assignments, instead of the base Mapper 16, will not likely work correctly.  They were almost exclusively used by Bandai's Japanese games. These games use similar hardware but different methods to save (none, S-RAM, 128 byte EEPROM, 256 byte EEPROM).  These mappers also cover the Datach Joint ROM expansion device, which has a barcode reader which most of the games use.

Karaoke Studio, Mapper 188 will never work correctly because the real cartridges use the attached hardware, specifically the microphone.

Like Karaoke Studio, Nantettatte!! Baseball, Mapper 68, used a cartridge lock-on system that allowed an expansion cartridge to be plugged into the top of the base cartridge.  These expansion cartridges, which update team statistics, had a protection IC which the EverDrive and PowerPak do not emulate. The base game plays fine.

Specific Game Issues with EverDrive N8

Cybernoid - This game relies on bus conflicts, which the EverDrive N8 has difficulty with.  Use or permanently patch the US ROM with Game Genie code SXZNZV to get the game to work properly after you change the sound mode from sound effects to music.

Gauntlet - Backgrounds will be incorrect if this game is assigned to Mapper 206 because it uses four-screen mirroring, so assign it's iNES header to Mapper 4.

Money Game, The & Tatakae!! Ramen Man: Sakuretsu Choujin 102 Gei - Appear to work when the mapper is changed from Mapper 155 to Mapper 1

Fudou Myouou Den - Appears to work when the mapper is changed from Mapper 207 to Mapper 80.

Mapper 210 is not supported, most games should work as Mapper 19.

General Game Issues with PowerPak (assuming loopy mappers and PowerMappers are added)

Racermate Challenge II - Uses Mapper 168, which is not supported.  This game also requires a custom and rare peripheral that attaches to a stationary bicycle.

Most MMC5 games are playable, but Uncharted Waters, Uchuu Keibitai SDF and Bandit Kings of Ancient China will show graphics glitches.  No expansion audio support.

Super Mario Bros + Tetris + Nintendo World Cup - A PAL only release, uses Mapper 37 which is not supported by the PowerPak.

Games using MMC3 scanline interrupts will often show jumpy status bars (Super Mario Bros. 3, Crystalis, Mega Man 3) or occasional graphical garbage (Kirby's Adventure, Mickey's Adventures in Numberland).  This issue may vary from PowerPak to PowerPak (my PowerPak is a first batch PowerPak), and is ameliorated with the Save State Mappers and PowerMappers.

Specific Game Issues with PowerPak and PowerMappers :

Asmik-kun Land - Status bar on the bottom of the screen constantly shakes.  This can be fixed by using MAP04.MAP from the Save State Mappers.  You rename the file to something unused like MAP06.MAP and assign the game to Mapper 6 in its header.

Battletoads & Double Dragon - The game may crash when the Level 1 Boss appears.  This is also another open bus issue.  If you encounter it, it can be fixed by creating a Battletoads & Double Dragon.sav 8KB file filled in entirely with hex 00.  Battletoads & Double Dragon does not use S-RAM, but if the game reads these values from where RAM is supposed to be, there will be no glitching or crashing here.

Jackie Chan's Action Kung Fu - Glitchy garbage as the scroll unfurls just before you begin a level.  This can be fixed by using MAP04.MAP from the Save State Mappers.  You rename the file to something unused like MAP06.MAP and assign the game to Mapper 6 in its header.

Jurassic Park - Extra lines in the wavy Ocean logo on the title screen. This can be fixed by using MAP04.MAP from the Save State Mappers.  You rename the file to something unused like MAP06.MAP and assign the game to Mapper 6 in its header.

Low-G-Man - Music for Level 1 Boss is not correct, but it does not crash.  This can be fixed by creating a Low-G-Man.sav 8KB file filled in entirely with hex FF.  Low-G-Man does not use S-RAM but relies on open bus and this workaround allows the game to obtain the right values it needs for the music engine.

Little Ninja Brothers - Shaking in status menus, text boxes and the like, which did not appear in prior mappers.  This can be fixed by using MAP04.MAP from the Save State Mappers.  You rename the file to something unused like MAP06.MAP and assign the game to Mapper 6 in its header.

Metroid FDS - Will load to a black screen or a screen so corrupted Samus cannot move.  Others have been able to get this game to work, but I cannot.

Mickey's Adventure in Numberland - Certain tiles in Mickey's sprite flicker constantly similar to Startropics.  This can be fixed by using MAP04.MAP from the Save State Mappers.  You rename the file to something unused like MAP06.MAP and assign the game to Mapper 6 in its header.

Mickey's Safari in Letterland - Status bar shakes because these games requires the IRQ timing for Acclaim's MMC3 clone, which is different from Nintendo's MMC3.  

Rad Racer 2 - Occasional flickering of yellow/orange lines in the road.  The Save State Mappers do not support the 4-screen mirroring this game uses, so use Loopy's Mapper 4 instead.

Startropics 1 & 2 - Half of Mike's small sprite flickers constantly, as does his inventory in the action sequences.  This can be fixed by using MAP04.MAP from the Save State Mappers.  You rename the file to something unused like MAP06.MAP and assign the game to Mapper 6 in its header.  If you see that the subweapons on the action screen noticeably flicker if you have acquired more than one, then make sure the save state function is turned off in the blue menu before you finish loading the ROM.

Ultima - Exodus - Due to bugs with uninitialized cartridge RAM, you could see shaking text, font corruption and bad audio if you play this game without a corresponding sav file.

Expansion Audio Support

Here is the expansion audio support breakdown for both flash cartridges and the Analogue Nt Mini :

Expansion Sound Type NES PowerPak EverDrive N8 Analogue Nt Mini
Famicom Disk System Supported Supported Supported
Konami VRC6 Supported Supported Supported
Konami VRC7 Not Supported Supported Supported
Sunsoft 5B Supported Supported Supported
Namco 163 Supported Supported Supported
Nintendo MMC5 Not Supported Supported Supported
Jaleco/Bandai Speech Not Supported Not Supported Not Supported

Saturday, March 26, 2016

Remnant of the Golden Age of Arcades : Ms. Pac-Man/Galaga 20 Year Anniversary



Recently I conducted a survey of all establishments, arcades and restaurants within a thirty minute radius of my house or within my county to find some classic arcade machines.  I used this ancient site, http://www.arcadelocations.net/ and my memories of seeing classic machines in my travels.  I live in the sticks but there are several major population centers within that distance and well over half a million people live within it.



Any video game made during the Golden Age of Arcade Video Games, the 1970s or the first half of the 1980s was to be included.  After having visited every place that had been reported to possess a classic arcade machine or was likely to possess a classic arcade machine (i.e. malls), I technically came up empty for finding machines built and released during that time period



However, this did not mean that a classic experience was impossible to find within a reasonable distance from my house.  In 2001, Namco released a machine called Ms. Pac-Man/Galaga Class of 1981 / 20 Year Reunion.  As its name suggested, this was a 2-in-1 arcade machine that allowed you to play Ms. Pac-Man or Galaga.  The machine was hugely successful and mush have sold at least 10,000 units.  Considering the huge decline in arcade machines sold after the Golden Age, this was an impressive achievement.  As is well-known, there is a special code you can input to play Pac-Man instead of Ms. Pac-Man.



In my area, I found two Ms. Pac-Man/Galaga machines, one of which was a cocktail unit.  I also know of that two other machines were available until recently, but I believe one of the units belonged to an establishment that may have gone out of business.  I found nothing else of note, although I did note a few arcade machines from the 90s in one or two locations.

Namco would later follow the machine with a Pac-Man 25th Anniversary Edition in 2005 (allows you to select Pac-Man without a code) and Pac-Man's Arcade Party in 2010 (adds more games but Ms. Pac-Man is lost for the arcade versions).  However, these machines have not been nearly as successful as Ms. Pac-Man/Galaga.  I have been pretty sharp about spotting classic machines but I am not sure if I have ever seen one of the later machines.

If a classic arcade game is running in a machine has an LCD screen or looks like it is running MAME, I would not have considered it.  I did not find any such machines, but I know they exist in more tourist-pandering areas along the coast.  LCDs and classic arcade machines go together like oil and water.  The lag generated by an LCD (especially the cheap ones they use) is absolutely hostile to improving your skills on an arcade machine.

There are several differences between the original Ms. Pac-Man/Galaga and the original machines.  The standalone 1981 games were sold in three styles, a large vertical "Upright" unit with a 19" monitor, a smaller vertical "Mini" unit with a 13" monitor, and a horizontal "Cocktail" unit with a 19" monitor.  In 2001, there were only two versions, an Upright and a Cocktail, and both had a 24" monitor.  This made the resulting graphics look a lot sharper if blockier.  I have also read complaints that the monitor size is so large that it is harder to keep track of everything going on on the screen.


The original Pac-Man and Ms. Pac-Man used a large PCB with two (Pac-Man) or three (Ms. Pac-Man) daughterboards.  These boards were populated entirely of discrete components and a Z-80 CPU.  Galaga had two large boards sandwiched together and used three Z-80s.  The Ms. Pac-Man/Galaga uses one small board with a Z-180 CPU and two custom circuits to handle most of the gameplay.  While the original games used lots of small ROMs and PROMs for game code, video and color data and waveform sample storage, the Ms. Pac-Man/Galaga only uses two large ROMs.


Pac-Man and Ms. Pac-Man had 4-way joysticks, but Galaga only needed a 2-way joystick.  For obvious reasons, the joystick on the Ms. Pac-Man/Galaga machine is a 4-way stick.  The sticks for the original games were all leaf sticks where contact was made by pressing one metal strip against another.  The stick on the Ms. Pac-Man/Galaga machine uses micro-switches.  Micro-switches pretty much work on the same principle, but have a click to their activation.  I believe true aficionados of these games prefer the smoother action of the leaf joysticks.

















The other obvious difference between the original and Ms. Pac-Man/Galaga machine is the addition of continues to the games in Ms. Pac-Man/Galaga.  The original games did not allow you continue once you used up all your lives.  You had one credit and that was it.  A second credit meant starting over.  All three games contained in the Ms. Pac-Man/Galaga machine allow you to continue from exactly where you left off, even during the middle of a level.  If your ship is captured in Galaga, you will be able to rescue once you continue your game, essentially giving you an extra life of sorts.  Your score is not reset, so you can feel good about obtaining a high score after spending $10 in quarters at each game, but no one else will be impressed.

















The title screens for Ms. Pac-Man and Galaga have a website address www.namcoarcade.com.  When the originals were released in 1981, only the academic community and the military had access to ARPANET, but by 2001 everyone was able to access the Internet.  Unfortunately you cannot buy these machines from Namco anymore.  Arcade dealers do have them, but the going rate for a full, working cabinet is at least $1,000.

The original games used dipswitches to change settings like how many coins it would cost to play a game and how many lives you were given with each coin.  Ms. Pac-Man/Galaga uses a test switch and an in-game menu.  The options for Ms. Pac-Man also apply to Pac-Man.  Except for the number of credits per coin, the options for the standalone games and the Ms. Pac-Man/Galaga versions are the same except as noted below.

















Ms. Pac-Man/Galaga Galaga's options include Attract Sounds On/Off.  Stand-alone Galaga had sound when it was playing automatically in the "Attract Mode".  The bonus lives for Galaga follow the Midway version released in the US.  Galaga also features a Rapid Fire option as well as a Fast Shot option.  Rapid Fire allows you to hold down the Fire button to shoot multiple shots.  Original Galaga always required a button press for each shot.

















Each game has a default fast/slow setting.  When the fast Pac-Man/Ms. Pac-Man option is selected, you move extremely quickly relative to the ghosts in the earlier levels.  When the fast shot is selected in Galaga, you can spam the fire button to fire many shots instead of the two shots on screen the game typically allows.  These options are throwbacks to the speedup modifications and hacks often done on the original machines.


















The Ms. Pac-Man/Galaga machine has two well-known secret codes entered with the joystick and fire buttons.  The first code allows you to play Pac-Man.  The second code allows you to toggle the fast  Pac-Man/Ms. Pac-Man and fast shot option on and off.  If the machine has been set to fast mode, you can input the code to use the slow mode, and vice versa.

Codes are entered only when you are on the game select screen.  The code for Pac-Man is Up, Up, Up, Down, Down, Down, Left, Right, Left, Right, Left.  If you are successful, you will hear the sound in Pac-Man indicating you earned an extra life and Blinky will turn into Pinky.  The code to toggle the fast Pac-Man/fast Shot is Left, Right, Left, Right, Up, Up, Up, Fire.  If you enter it correctly, you will hear the sound of Pac-Man or Ms. Pac-Man eating a fruit.  You should take your time when entering these codes, unlike the Konami code, slower is better.  Each code only lasts until game over (including continues).


You will have to input the code again on the game select screen to play Pac-Man or toggle the game speed.  Even if you see the Pac-Man attract screens giving the ghost names, you must still input the code.  You will not see the following screen, you will only see the Ms. Pac-Man or Galaga select screen.


Ms. Pac-Man/Galaga Galaga has an error in the Galaga attract mode compared to original Galaga.  The enemies in Galaga fire shots that white and red, with the red end going toward you.  In the Attract Mode for Ms. Pac-Man/Galaga Galaga, the shots are reversed.  The in-game shots look correct.



















Tricks in the original games work as they should in the Ms. Pac-Man/Galaga machine.  Thus, for example, you can hide Pac-Man in the upper left corner of the "T" junction where he starts and the ghosts will never catch him.  You can control the ship in the Galaga Attract Mode by using the controls when the enemy comes to capture the ship and cause the machine to reset itself (allowing you to view the version of the ROM it uses).