Pinball 2000 Software Update with Windows 7 x64

pb2k

Warning: This is a pretty off-topic post about pinball, but maybe it’ll help someone searching for the information.

Backstory: My dad was a coin-op operator. I’m the son of a coin-op operator. As you might imagine, I have a just a tiny bit of love for video games and pinballs. When my dad passed away in 2008, I decided to keep my favorite pins from the route: Funhouse, Addams Family, Theatre of Magic, Tales of the Arabian Nights, and Revenge from Mars.

After sitting in storage for a couple of years, the software update sitting on Revenge from Mars would no longer checksum properly. The game was running fine, but obviously something was wrong. After lots of other work on the machine, it was time to update the firmware again to version 1.5.

Finding the software and ROM images was easy. Everything is available at PlanetaryPinball.com. Anyone can just grab the Pinball 2000 Update Manager and the appropriate software update for the machine to be updated. However, trying to install and run the Pinball 2000 Update Manager was a different story. The installer choked when running on my Windows 7 x64 machine. Not surprising since this application and installer was written 13 years ago. Luckily, I was able to install the app in a Windows XP x86 virtual machine and copy the installed files over to my laptop.

Unfortunately, this didn’t immediately get me much further since the GUI updater requires some OCX files to be registered, and that’s a circle of hell I didn’t want to enter. Exploring a bit further, I found the fupdate.exe command line application that actually does the flashing. The Pinball 2000 Update Manager is just a pretty GUI wrapper. Even more interesting, the source code for the fupdate.exe is included in the package. It’s a win32 command line app compiled against a very old version of Cygwin. I have ripped out the important files into a separate archive. If you’re just interested in updating a Pinball 2000 machine from a modern computer and OS, you can download fupdate here.

Running this command line tool on the Windows 7 x64 laptop worked just fine. Here’s the command line to start the update process:

fupdate -p\pin2000_50070_0150_07252000_B_10000000\50070 -fpin2000_50070_0150_ COM1
  • The –p switch denotes where the software update files are.
  • The –f switch specifies a file prefix for each file in the update. For Revenge from Mars, every ROM image is prefaced with the above string.
  • The command’s final switch is the COM port to use for the update.

The USB to serial adapter I used on my laptop installed itself as COM17. Trying to run the above command with the COM17 switch failed. I was able to go into the properties of the COM adapter and force it on to COM1 which worked just fine. You can do this by going into Device Manager, right-clicking on the port you’re using and selecting Properties. In the dialog that pops up, hit the Advanced button on the Port Settings tab, then select a new COM port from the drop-down as shown:

image

When you run the above fupdate.exe program, the update process runs, and you should see output in the console window as shown, along with a progress bar on the pinball’s monitor:

bootdata.rom:    0 blocks of   64 (   0) sent, total bytes remaining 4980724
im_flsh0.rom:    0 blocks of 1201 (  64) sent, total bytes remaining 4947956
im_flsh0.rom:   64 blocks of 1201 ( 128) sent, total bytes remaining 4915188

...

      sf.rom: 1920 blocks of 2048 (9600) sent, total bytes remaining 65536
      sf.rom: 1984 blocks of 2048 (9664) sent, total bytes remaining 32768
************: 9728 blocks of 9728 (9728) sent, total bytes remaining 0
Update complete - total blocks 9728 (4980724 bytes)

That’s it! Once the update completes (about 15-20 minutes in my setup), the newly flashed software will be verified, and the pinball is ready to be played!