Nicole Express: Vintage Pachinko

The always excellent Nicole Express has a great post on the Japanese gambling game Pachinko, especially the imported machines that made it to the U.S. when for a brief time we liked it too. It contains the fact that we probably got video pachinko before Japan did, through the Odyssey2 game Pachinko! (The exclamation point there is part of the game’s title, as it is with all Magnavox-produced Odyssey2 games. While I enjoy that bit of trivia, I am not actually hugely excited about it.)

“Thunderbird,” one of several machines in Nicole’s post, and in her collection!

Physical slot machines were, and maybe still are, illegal in Japan, so all the ridiculous graphic and sound flourishes those demonic entities bear in North America are instead put in the service of the Tiny Silver Balls. I’ve always shied away from these forms of gaming for the same reason I never got into Magic: The Gathering: by tying profitability to gameplay, they feel to me like they’re more business model than game, really. I might not be able to earn my quarter back at Pac-Man, but at least there isn’t someone figuring out how to work those odds against me.

Nicole Express: Vintage Pachinko: Going Back And Forth Across The Pacific

A 1982 Issue of Compute Introduces the Commodore 64

Overseeing the early days of computing was Compute! Magazine, properly stylized with an exclamation point. They got their start as The PET Gazette, changing over to Compute as their focus spread into more types of home microcomputers. Compute stuck around as a multi-platform for some time, but ultimately spun off a couple of manufacturer-dedicated magazines. One of these was Compute’s Gazette, whose name harkened back to those PET-exclusive days. It focused on Commodore machines, and would then outlive Compute itself by some years.

The early years of Compute magazine are joyous. They’re filled with esoteric data, geeking out over low-level coding matters, and lots and lots of type-in programs. But it is depressing to me, reading over the early issues, knowing how numbered are its days. This whole genre of computer magazine, that encouraged users to type in programs, that offered coding tips, sometimes even offered add-on disks of software, is now only a memory. We are all poorer for it.

The writing on the wall for this style of magazine could perhaps be seen as early as September 1982, when Compute published an article about a great new upcoming product from Commodore, the Commodore 64. Not because of the style of the article or anything specific about the computer. Just that, by being so greatly popular, the C64 greatly expanded the magazine’s audience, which would inevitably steer it towards becoming more “mainstream,” which ultimately would be the death knell for a publication like this.

Still, it’s fun to look back on. Here is that article in image form, or you could find it on the Internet Archive, where the archives of Compute live on, for a time.

An extra, from that issue, is an ad for one of Microsoft’s first peripherals, a memory card for the Apple II:

Demo: Back to the PET

The Commodore 64 was not Commodore’s first home computer. It wasn’t even the VIC-20. Their first machines were the line of the PET, or “Personal Electronic Transactor,” as labored an acronym as any.

The PET was a decent machine, with integrated monochome monitor and a heavy metal case. Although it had no color, no sprites, only a basic speaker for sound and no synth, it had a number of things in common with the later C64, particularly the 6502 processor that lay at the core of half of the personal computers sold at the time.

There was something else, something fairly major, that the PET lacked: customizable graphics. No hi-res mode, and no programmable character sets. The graphics were encoded on a ROM that wasn’t even mapped to the CPU’s address space. The letter ‘A’ would forever look like a letter ‘A’. It couldn’t be changed to anything else, even a slightly different ‘A’. This greatly limited what PETs could display, and basically doomed it as a gaming computer.

Commodore tried to compensate for this feature by including “PETSCII,” a set of custom characters included in the upper 128 characters of its ROM intended for makeshift graphics. PETSCII would survive throughout the rest of the Commodore 8-bit line, even featuring on machines that had programmable graphics: the VIC-20, C64 and C128 all had it included too. (The Twitter account PETSCIIBOTS (now inactive) shows off its many graphical characters in making robots.)

On the later machines PETSCII graphic characters were a fun nicety. On the PET, they were all you had, all you would ever have. This is exactly the kind of limitation that demo authors love circumventing where they can, and taking advantage of when they can’t. Hence: Back To The PET, a demo, complete somehow with chiptunes, that runs on Commodore’s ancient machine:

Every character cell of every frame of this video is one of the PET’s 256 ROM-based characters. It had no hardware scrolling, so effects are all faked or done 8 characters at a time. Yet it’s still pretty slick! The PET had quite a better selection of graphics characters than even IBM’s code page 437, including lines of single pixel differences in thickness and horizontal and vertical position. Image what the ASCII artists of the 90s could have done with this selection! Luxurious!

Reviving ZZT

ZZT was (is) an ancient shareware DOS game that runs in character mode, created and published by Tim Sweeney. Originally published by Potomac Computer Systems, a company ran out of the basement of Sweeney’s house, when it expanded its software selection it was renamed to Epic MegaGames, and later Epic Games, under which title it remains today, still headed by Tim Sweeney after all these years. He would go on to create the Unreal Engine, upon which the modern fortunes of the company were founded.

Images from the Worlds of ZZT bot

But back to ZZT, which is still a nifty piece of software, and a lot of fun to mess around with. It included an editor that allowed users to create their own scenarios, which spawned a modding community that survives to this day. Noted game designer and educator anna anthropy wrote a book about ZZT for Boss Fight and she continues to carry its banner today. ZZT scenarios both old and new can be found on the site Museum of ZZT, and every three hours Mastodon bot Worlds of ZZT publishes screenshots from random ZZT adventures.

Because it’s a character-mode game, ZZT modules are often confused with classic roguelike computer games. ZZT is not necessarily a roguelike, but it may be possible for someone to write a classic-style roguelike game in ZZT.

But running a DOS game nowadays is not as easy as it used to be. It requires the use of either a vintage computer system running a compatible DOS, a virtual machine like VirtualBox or Docker, or some DOS emulator, such as DOSbox, a tool for emulating a working DOS system that can run on current OSes, or Zeta, a DOS emulator with just enough features to get ZZT working.

ZZT was written in Turbo Pascal, but its source code had been misplaced by Tim Sweeney and was considered lost, until very recently (the past few days), when a nearly-complete version of ZZT 3.0 was found. Most of it can be downloaded from The Almost of ZZT, on Github, which is that version minus some parts of the source that are considered to be under third-party copyright.

Since it is incomplete it is not useful for compiling a working game, and is presented for historical reasons more than anything. Fortunately, there already exists The Reconstruction of ZZT, a reverse-engineered (with Sweeney’s blessing) version from 2020 that compiles to identical binaries.

ZZT is a subject that deserves much more detail than I can give it in an introductory post like this. Maybe later….

A Video on Wario Land 4’s Sound Design

Did you ever play Wario Land 4 on the Gameboy Advance? It was the last “classic” Wario Land game before its team switched over to making WarioWare games. If you’re a gaming, or at least a Nintendo, enthusiast you probably know what WarioWare games sound like, that endearingly weird crushed and echoey sound, but you might be surprised to discover that Wario Land 4 sounds of a piece with the Wario Land titles! Here’s the intro, hear for yourself:

Here’s the original WarioWare’s intro to compare its sound to. It’s all the good stuff!

geno7 over on Youtube (who has a terrific home page, by the way!) did a 51-minute deep dive into WL4’s sound design that’s just the kind of obsessive attention to detail that our cadre of pixel art loonies appreciate! Have a gawk and a listen and see if you agree.

The Bizarre Music and Sound Design of Wario Land 4 (Youtube, 51 minutes)

How Do You Say “Bahamut?”

Drew Mackie’s Thrilling Tales of Old Videogames brings up the issue of frequent Final Fantasy summon and sometimes optional boss monster Bahamut’s pronouncation, and tells us its mythological source wasn’t pronounced ba-HA-mut, but instead, ba-ha-MOOT.

Bahamut is one of the oldest traditions in Final Fantasy, going all the way back to the first game, where much of the game’s bestiary came directly from the Dungeons & Dragons books. Yet Bahamut was not fightable in that game, they wouldn’t fall into their standard role of challenge encounter until the third Japanese game. Like many D&D creatures, and JRPG creatures too, Bahamut was a borrowing from a mythological source. They were one of the entities upon whose back the world is carried. Observe:

Which of these entities is “dragon king” Bahamut? The person is just an “earth-bearing angel.” The bull is Kuyuta. Bahamut, or “Bahamoot,” is the fish. What’s more, it’s thought that the name derives from Behemoth, from the book of Job, despite Behemoth not being a fish. But Final Fantasy already has a Behemoth….

None of this proves much of anything. RPG writers, both tabletop and videogame, have long just pulled anything out of mythology, and sometimes more recent literature, that they wanted and just used it, regardless of author, age or culture. Gary Gygax had a Monster Manual to fill, he didn’t have any internet to help him fill it, but lots of other people enthusiastically used his bastardization, to help them compile their own bastardizations. That’s what most game lore is when you get right down to it: it’s bastardizations all the way down.

This is just a fraction of the edifying enfo, er info, in the article, a link to which awaits you here:

Bahamut and Behemoth: One And The Same? (Thrilling Tales of Old Videogames)

Behind the Code Examines The NES Punch-Out!! Boxer Engine

Here’s another of those deep-dive NES internal videos from Behind the Code, possibly the most complex one they’ve done to date. Most game engines, when you examine their basic logic, are basically physics simulations, with some AI included to determine how actors behave.

Not so with the Punch-Out!! games. They are essentially entirely different kinds of games from that. You have certain things you can do moment to moment, and opposing boxers do too. Each of those opponents basically runs a big script, made out of byte code, that determines their behavior throughout each round of each fight. I am struck both by the simplicity (no need to simulate gravity) and the complexity (boxers take all kinds of things into account) of the system.

One of the interesting things shown is that the engine can affect more than just the boxers, but can also subtly affect the crowd, which is how the previously-revealed fact that a specific camera person in the crowd uses his flash right at the moment the player must counter Bald Bull’s charge move. It turns out that this isn’t the only instance of this happening in the game!

You don’t need to know 6502 assembly code to get what the narrator is talking about, but a lot of code is shown, so those of you who understand it may get a bit more out of it. Here are a few basics to help you follow along.

The 6502 has only three registers (bits of memory internal to the CPU that can be accessed quickly), the Accumulator (sometimes called just A), the X register, and the Y register. Each is only one byte long. The Accumulator is by far the most flexible, but all three are general-purpose registers. The most common instructions are Loads (LDA, LDX, LDY), Stores (STA, STX, STY), Transfers between registers (TAX, TAY), Incrementing and Decrementing (INX, INY, DEX, DEY), Adding (ADC), Subtracting (SBC), Comparing (CMP), Branches (some of them, Branch Not-Equal to Zero: BNE, Branch Equal to Zero: BEQ, Branch of Carry Set: BCS, Branch on Carry Clear: BCC), Jump (JMP), Jump to Subroutine (JSR), and Return from Subroutine (RTS). While some instructions are just one byte long, the longest any 6502 instruction can be is three bytes, and the opcode (the command itself) is always just one.

(I wrote all of that from memory. I figured, I have all of this in my head from my coding youth, I might as well use some of it.)

The 6502 can only address 64K of memory, so often systems will use bank switching to connect various memories to it within that space. The great majority of NES/Famicom games had to do this. Punch-Out!! was unique on the NES in that it was the only game to use Nintendo’s MMC2 chip. (I wonder if the chip was designed ahead of time, and they made this game as an excuse to use it?) Punch-Out!! uses MMC2 to bank in each boxer’s large data script as needed.

Behind The Code: How Do Boxers Work in Mike Tyson’s Punch-Out!!? (Youtube, 20 minutes)

U Can Beat Video Games: Dragon Warrior III

I’ve been waiting for this one for a long time! U Can Beat Video Games has finally covered the best NES Dragon Warrior, the third game in the series. It was Dragon Quest III in Japan, due to some trademark issue with TSR I think. IV isn’t bad, and has fun characters, but there aren’t as many variant strategies in it, and in the last chapter you don’t get to control the actions of most of your party members. DWIII always gives you full control of your characters, plus it lets you create characters with names and classes of your choosing, meaning, like the first Final Fantasy, you can make completely custom parties and play the game in many different ways. It was the game that spawned the urban legend that the Japanese government requested that Enix release Dragon Quest games on weekends, because so many people ditched work to stand in line to buy it. (I don’t know if it’s true, but the story has often been passed around.)

It’s also the first Dragon Quest/Warrior game that allows for class changing, which resets a character to Level 1 (similar to an human AD&D character who dual-classed), but only halves their stats, and lets them keep all the spells they learned. Since they’re Level 1 again, they gain levels very rapidly for a while, allowing them to quickly surpass their previous heights. It’s kind of an early version of the “prestige” mode of clicker games, where you reset all your progress in exchange for faster progress afterward!

It also has a cool story that eventually connects with the first two games, and has a good variety of activity, including growing a town from scratch like 25 years before Breath of the Wild and betting on monster fights! It’s also got all the challenge of the early Dragon Quest games, with later monsters who can cast instant death spells on everyone in your party at once, as well as doing other horrible things to them.

Because Dragon Warrior III doesn’t pull its punches against the player, the various tricks that the narrator does to use the engine’s bugs against it feel like playing fair, and yet, even with full knowledge of the game and multiple player leveling and cash gaining strategies he still has problems once in a while. It’s a really tough game!

This may end up being U Can Beat Video Games’ magnum opus, at least of the NES era, it’s a really long game that takes three videos, of almost 12 hours total length, to cover in its entirety! Here they are:

EPISODE ONE: Creating Your Party Through to Getting the Ship (3 hours, 59 minutes)

EPISODE TWO: Getting the Ship through to Defeating Archfiend Baramos (4 hours, 22 minutes)

EPISODE THREE: The Dark World to the Final Boss, Plus Extras (3 hours, 35 minutes)

Please enjoy, and Rubiss help us all!

AKKA ARRH on Steam!

Please pardon our lack of a romhack review this week. It’s not always easy to find a good hack to review out of the tens of thousands that are floating around out there. In the meantime, classic remakes are kind of like romhacks, right?

Those who have been following us for the (gosh) nearly one year we’ve been in operation will have picked up on the fact that we love classic Atari. Especially we love classic Atari prototypes. In my humble opinion, Atari treated the output of their stable of brilliant creators with almost a dismissive attitude.

Developers would make a game completely from scratch, spend months working on every aspect of it, handtooling the assembly code, sometimes for hardware platforms that were created specifically to run it, devote their lives for a time to this project, test it in-house, get reactions, modify it, get it running, get approval to make cabinets and put it out on location test, then have all that work get destroyed. Oh well! Back to the drawing board. That’s what happened to AKKA ARRH.

As awesome a title screen as there ever has been!

The only record of all of that effort might end up being those few prototype cabinets put out on test and in the hands of the original developers, and the files in the Atari archives, which were pretty much left out to rot when the company was shut down, and would have been lost to us except for a few people who searched their dumpsters looking to preserve them.

Because of the value of those tiny number of cabinets, collectors guard them zealously, which puts them at cross purposes with the people trying to release the files and get them working in MAME. Two such stories lately have been the prototype for Marble Madness II, which we talked about last year, and AKKA ARRH. (Which, I think, is still one of the best game names I’ve ever heard. It’s fun to say!)

AKKA ARRH’s history is a long story. Long lost except for a few cabinets, somehow, we’re still not sure how, the code got dumped and leaked on the internet. However it happened, that event seems to have uncorked the bubble, with rights-holder Atari (not the same company as the old Atari) commissioning a full remake from Llamasoft and Jeff Minter, the creator of Tempest 2000 and probably the person best keeping alive the spirit of classic arcade gaming.

Minter’s remake of AKKA ARRH is now on Steam. It’s kinda pricey at $19.99, but it looks g r e a t, as you should be able to tell from the trailer below. An emulation of the original arcade game is also in the Atari 50th Anniversary Celebration package from Digital Eclipse, available on Steam and lots of other platforms, which costs more but also gets you many more games, and documentaries and flyers and lots of other plat*.

Seeing that little TM symbol after the logo is oddly heartening. It’s so nice to see this game given a full release, even if only digitally. It’s been a long journey. Welcome home, AKKA ARRH.

* Lately I’ve been chafing against the limits of language. Please excuse my made-up words, I’m kind of sick of having to turn to the same old synonyms, once again, at the moment. You should know what I mean by context here.

Adam Dawes’ Guide to Bubble Bobble

For 16 years now, Adam Dawes has had a guide to Bubble Bobble on his website that provides precise, detailed strategies for defeating each of the game’s 100 levels, most with a demonstration video (one level’s video I found doesn’t work). Each level has a difficulty ranking, and such is skill that the hardest of them I found, level 91, is only rated as “medium-hard.”

Adam’s guide provides the details of finishing each specific level, but it doesn’t explain all of the weird secrets that lie buried deep in the game’s code. For that, check out the previously-linked Bubble Bobble Info Pages!

Adam Dawes’ Guide to Bubble Bobble

Turbo Rascal

Turbo Rascal, more fully known as “Turbo Rascal Syntax Error” or TRSE, is a multiplatform game and demo development system, including a compiler, afull IDE and some miscellaneous utilities like an image editor. It’s based on Pascal, which might be annoying to people who have the conventions of C burnt into their brainmeat, but is easier on newbies on the whole, since its language idioms tend to be more readable for intent, and it doesn’t include structures like the ternary operator: (a ==0) ? isequal() : isnotequal();

While it supports a lot of different classic computing devices, TRSE’s “native” platforms, those it has the most support for, are the 8-bit Commodore machines. Using it, you can pretty rapidly put together a program to display an image on the C64’s hi-res screen:

It comes with a lot of example projects too, including a number of technically proficient demos that show off its capabilities. After you install a C64 emulator (VICE is recommended), the following can get up and running in less than a minute:

Turbo Rascal Syntax Error

Now Run System 6 and Mac OS 9 In Your Browser

A while back we linked to Infinite Mac’s surprisingly deep emulation of Mac OS Classic System 7 and Mac OS 8 (they’re both of the same line of operation systems despite the change in name) in web browsers. Since then they’ve also added System 6 and Mac OS 9 to their offerings, in addition to a Japanese version of System 7.

Mac OS 9

Features a good variety of software including games and productivity, a full-screen mode, built-in networking with friends on the internet by specifying the same subdomain allowing such tricks as online sessions of Marathon, and a fairly easy way of adding your own software.

If you use this and want to keep files between sessions, make sure that you move or copy them to the Saved folder, under The Outside World. Read the purple Sticky for more information on getting files into and out of the emulation.

I find that Classic Mac OS has a power to inspire nostalgia that OS X doesn’t. It might have to do with how so many of its conventions dated back to the original Macintosh release from 1984. Multitasking came to Macintosh after the fact, so when it arrived Mac OS used a cooperative multitasking paradigm, that meant one misbehaving program could bring down the whole machine. Yet the system felt smaller, like there wasn’t as much unfathomable technology between the computer and the user. And I still dig that crisp pixel art used for the icons. It is possible to have too much anti-aliasing.

Infinite Mac’s emulatons of System 6, System 7, Mac OS 8, Mac OS 9 and Japanese System 7.