A Technically Proficient Commodore 64 Demo Explained

We’ve linked to Iftkyro’s work before here, he created the mystifying (if you know much about how the C64’s video hardware works) demo Nine, where a system that should only be able to move eight sprites around appeared to display nine. How was that done? As it turns out, with great difficulty, and not a little sleight-of-hand!

Iftkyro’s back with another impossible demo, Quondam Tunneling (4½ minutes, download), which appears to display an animated sequence progressing down a 3D tunnel.

He’s now also uploaded a video explaining how it was done (14 minutes):

In brief, the tunnel itself only has four frames of animation. The demo keeps multiple fonts throughout most of memory, which are flipped between every eight scan lines, that basically allows it to display arbitrary graphics with each character row. The C64 doesn’t have quite enough memory to do that with all the rows in the full vertical extent of the animation, so another trick is used, taking advantage of palette swapping and the C64’s multicolor mode to store two different possible rows in each font. The horizontal scrolling is done by moving the characters that make up each row left and right in a typical C64 scrolling way; vertical scrolling is done by adjusting which fonts are used as the raster line descends the screen.

Of course nowadays we have computers that can display largely arbitrary graphics throughout the whole screen. Processor power is great enough now that we can even do this in software, but additional to that most desktop hardware has powerful hardware graphics included. Even if you don’t have a bespoke graphics card, major processors from Intel and AMD include substantial graphics capabilities built into the CPU. Such is the power of these chips, it’s easy to forget how difficult these things were in the microcomputer era.

Essentially all of the consumer computers from the C64’s era, and many years before and after it, split the system up into two major parts, the CPU and the graphics hardware. The very earliest home computers, like the Altair and the KIM-1, didn’t have graphics hardware at all without substantial hacks, because they weren’t intended to display their output on a video screen. That was really the innovation that opened computing up to the masses. Until monitor or TV output was possible, home computers were basically little more than glorified calculators to most people.

Having the CPU and graphics chips interact with each other was one of the most difficult parts of the design of these machines. Consoles like the Famicom/NES could give each of these two parts what amounted to its own memory, which simplified system design and helped to make possible its graphics power, but it also meant that programming it was more difficult. You can see this in the glitchiness of some early NES hardware (like in Displaced Gamers’ recent video on the jack of NES Commando, as linked here).

To properly use the NES’s PPU, graphics changes could only be made at a certain time each frame, during “VBLANK,” a time when the PPU wasn’t actively drawing the picture. That limited what changes could be made each frame. There were some tricky ways around this, but they all involved adding extra hardware onto the cartridge, increasing manufacturing costs. Home computers used their tilemaps for text display, meaning tile changes had to be less restricted of timing.

This meant some weird compromises were needed. On the C64, the CPU and the VIC-II operated asynchronously, opening up the potential for bus conflicts if they both tried to access memory at the same time. The VIC-II actually has the ability to put the CPU to sleep when it needs access. The C64’s designers rated the consistency of the video signal as a more important priority than the chip’s processor itself.

Even if the graphics hardware could display arbitrary bitmapped images, manipulating them quickly was difficult. The C64’s bitmap screen takes up 8K of memory. At 1 megahertz, the 6510 doesn’t have nearly enough time to update every byte in one video frame. In the following generation of machines, the Amiga was a lot more capable, but through the use of specialized hardware, its copper with its flexible video modes, and its blitter which could move memory around more rapidly.

That explains why, as Iftkyro states, that Amiga demos can generally do this kind of tunnel effect, but the Commodore 64 requires using a very specific memory layout, and rapid switching between fonts and graphics banks, to do something that superficially resembles it.

Sundry Sunday: The Fruitless Quests of Nabiu

Sundry Sunday is our weekly feature of fun gaming culture finds and videos, from across the years and even decades.

I’ve posted TerminalMontage’s “Something About” series of satirical game animation videos before. The Fruitless Quests of Nabiu (8 item playlist) is another thing from them, but unlike those it doesn’t refer to any specific game. It just uses the tropes of various JRPGs in its animation and storytelling. This allows it to be much more accessible to non-game playing viewers, and I think it also makes it much better at storytelling. I quite like this new direction they’re going in, and recommend them! Please take a look.

So far, Jeremy Chinshue has released two main episodes of The Fruitless Quests of Nabiu, and six promo shorts.

The shorts: Potion Practice (44s), Beastiary Update (1m), Wandering Doortal of Rescue (1m), Fatigued Fungi Story (46s), Nabiu Stepped on a Plush Trap (38s, ad for merch) and Nabiu’s Off-Meta TCG Duel Deck (1m)

The “main” episodes are much longer and tell a continuing story. Note that most of the dialogue in these animations are presented in JRPG-style text boxes. I don’t mind it myself, but I have heard a couple people express annoyance at the chattering noises they make as they speak. Please try to bear with them.

Episode 1 (21m) introduces Karoto the bard, and sets up what Nabiu, an intern “M.A.G.E.” working for Wizzro the Wizard, is doing, searching for a lost magical chair:

Episode 2 (20m, the most recent to date) continues the duo’s quest, where they encounter a very strange town, and are also joined by Brolly the Knight:

Wherefore Commando’s Jank?

Displaced Gamers’ Behind the Code series is back, with an under-the-hood look at another NES Capcom game, following their examinations of Ghosts & Goblins and Strider, links are to our previous pointers to their peerless product.

G&G was implemented by popular early NES anonymous developer and target of player recrimination Micronics, but Commando can’t use them as an excuse, as it was developed in-house at Capcom. They were still learning the ropes of the NES at the time (Strider has no such excuse), and it shows. Displaced Gamers thinks that the game was shipped while the programmers were still working on optimizing it. As they do sometimes, DG implemented their own optimizations, improving the game substantially. You can see the product of their work in a 31-minute video they made about it, here. There is a substantial amount of 6502 assembly code involved, but if you skip around I think you might be able to get the gist of why the glitches happen, and how Displaced Gamers fixes them.

As was often the case with your jankier NES games, the scroll stutters and character chaos were caused by the game failing to make its VBLANK timing targets. Thing is, despite the glitches, NES Commando is arguably the best version of the game! Characters sometimes disappear from the screen and backgrounds turn into garbage, but there’s so many cool secrets and things to find in it that I can forgive Capcom for it.

Note that Displaced Gamers doesn’t release patches with their fixes, preferring to focus on making videos. Their code is presented on-screen though, so it’s possible for others to insert the changed programming on their own. I hope someone does this soon, as a fixed version of NES Commando would be nice to play.

Addams Family Pinball Tutorials

Last night at our weekly movie watch group we saw Tilt (1979), one of those fad exploitation movies that Hollywood used to make, about pinball hustling, and with a surprisingly sweet ending, which felt earned because the first half of the movie is pretty sleezy, with an aspiring musician getting the money to make a demo tape by exploiting the pinball talents of a young girl, played by Brooke Shields, who’s got a crush on him. Tilt, BTW, has a prop pinball machine called Cosmic Venus as the centerpiece of the last third of the film, which judging by its art is set on a planet mostly dedicated to stripping.

The backglass to Cosmic Venus (from pinside.com), with typical bikini-wearing pinball centerpiece woman . Stay classy, Koala.

Anyway, that got me thinking about something to show after it, something from the world of real pinball. And I happened upon a promo tape that Bally made to promote the then-upcoming release of The Addams Family, which would go on to become the best-selling pinball machine of all time, with over 20,000 thousand tables sold. Meaning, if you’re going to learn to play any pinball table, Addams Family is still the one you’re the most likely to find out in the wild (although newer machines like Godzilla or Batman ’66 are also good bets).

Here is that tape (10 minutes):

When that was made, they didn’t know that, after designer Pat Lawlor’s earlier hits Earthshaker, Whirlwind and Funhouse, that his next game would become the greatest of all time.

Addams Family is a little simple compared to the games that would follow it, and especially the games released now by companies like Stern and Jersey Jack, but I think that adds to its appeal. It’s the perfect middle ground between the games that came before it, which were mostly about trying to achieve multiball as many times as possible, and current tables that devalue multiball, and push players towards very long games and wizard modes to get good scores.

AF has a wizard mode, Tour The Mansion, which you get by earning all 12 mansion rooms, but it also has a very lucrative multiball, and it’s the player’s choice if they want to focus on one, the other, or a combination of both. The Youtube channel of tournament organization PAPA has an excellent tutorial and demonstration of high level strategy and gameplay. (21 minutes)

But if a third of an hour is too much time to learn the rules of an excellent pinball machine, Quick Ass Pinball will teach you the basics in 4½ minutes:

A Deep Dive into ASCII Image Rendering

Via Kottke on Mastodon.* Alex Harri wrote an image-to-ASCII renderer that can translate generated 3D models in realtime, and on this page they explain how it works and some of the finer points of that conversion, specifically how not to make the rendered images seem blurry, instead giving edges clean outlines. It’s worth a look even if you’re not a programmer, and just want to see how the process is done. While it does descend into pretty heavy math later on, it starts out pretty approachable, and has interactive demonstrations throughout.

Render captured from the interactive toy on the linked site.

* Bluesky has a lot more users, but Mastodon is used by a good number of highly interested and knowledgeable people, especially people who care about the health of the web, although that’s also because I follow a lot of people like that on Mastodon. Overall I find it a good idea to read both.

Unix-like OS for the Apple IIGS

These days writing a command-line OS for 8-bit or 16-bit era computers is almost an old trick, but GNO/ME (any relation to GNOME is purely accidental) has the difference of both having Unix-like features like signals, pipes and multitasking, while also having been written back in the day, in the 90s. Author Jawald Bazyar shows it off here (26 minutes):

The story also includes a story of the author’s teenage dialup exploration, and stumbling upon a Unix system without a password on its root account, and other such young computing adventures.

GNO/ME can be obtained, for running in an emulator or on bare metal, here, if that’s your idea of a good time.

Gamefinds: Pac-Man Forever

We love it when we find weird and unique indie games to tell you all about! Our alien friends to the left herald these occasions.

As I write this, I have paused a game of Pac-Man Forever, a freeware Pac-Man update/homage/clone by My Dude Studios available on itch.io, on Round 154. I have spent almost three straight hours of playing it. It’s pretty good, but I’ve been tired of it for the last hour of it. Yet, it keeps going. It keeps going.

It helps to keep the game fresh by adding gimmicks throughout the first 60-or-so levels, but it’s been recycling them for a while now. I’d like to emphasize that I don’t think the game is meant to be easy. I have been playing Pac-Man-style maze games since the original hit unwary US arcades back in 1981. I’ve also played my share of Ms. Pac-Man, Super Pac-Man, Pac-N-Pal, Pac-Mania, Pac-Man Arrangement, Pac-Man 99 (R.I.P.), and all three Pac-Man Championship Edition games, a couple of which I had at one point respectable slots on its scoreboards, or would have if they hadn’t been full of obviously hacked scores. I’ve even written my own Pac-alike, Octropolis, also freeware and on itch.io.

A note. My usual practice is to take my own screenshots, but my tool failed to save the game’s graphics buffer, and I am unwilling to play another marathon session to get some images. The screenshots here are from the game’s website.

Suffice to say I’m a bit of a Pac-obsessive. Not nearly as much as the great Jamey Pittman, author of the sacred bible of the game, the Pac-Man Dossier. And maybe not as much as PacMania67, of the comments section of the Pac-Man Forever download page. They mention getting slightly further than me at the moment, to Round 163, only stopping when hitting a mazegen bug. I don’t know if I want to play a few more rounds and get to that point. I feel Round 154 sufficiently establishes my bona fides here, I don’t have to be “the best,” whatever that means. That way lies speedruns, and ultimately insanity.

So long as you aren’t trying to finish Pac-Man Forever you’ll have fun, generally. The quirks and gimmicks are mostly good ones, with a couple of irritating exceptions. One gimmick shrouds the maze with tall grass, which sometimes makes it very difficult to spot the last dot on the board, yeah that can go into the garbage, I say. Another one I came to loathe is the jungle board, for whatever reason I can’t read the maze layout as easily in that theme as usual. Pac-Man works best when you can easily tell the shape of the maze and where the remaining dots are, and to play with that makes it into a different, worse, game. Fortunately those gimmicks are relatively rare.

Pac-Man Forever borrows liberally from the whole range of Pac-Games, and other Namco games of the era too, with themes based on Galaga, Dig-Dug, Mappy and even Pac-Man’s sibling Rally-X, which is one of the better themes. The Rally-X boards replace the screen-filling dots with more sporadically placed flags, meaning you don’t have to travel every inch of the board to finish it. Another game that’s borrowed from is one Namco would never touch nowadays, Jr. Pac-Man, which had extra wide mazes, extra Energizers, and big dots worth more points, but that are slow to eat. There’s a reason Jr. Pac-Man isn’t looked on as fondly as Ms. Pac-Man, but its additions work well here.

One aspect of the game I feel I should warn you about. There is a power-up gimmick; when you’ve eaten a number of ghosts in total, a fairy arrives and leaves a powerup on the board, that cycles between one of three choices. If you just gobble it down without paying attention, you will regret it! One of them, the champagne glass, will cause you to lose almost all of your extra lives, converting them all into speed increases. It is easy to get your speed up without having to use this, in fact you can get it up so fast that you may have to collect another powerup, a director’s slate, to slow the game down enough to keep it playable. Most players will eat it at least once just to see what it does, but may not notice all of their extra lives vanishing when they do it. Even if you know it exists, Pac-Man Forever can get so fast that you end up eating it on accident. Its inclusion it a bit head-scratching. Instead of it, maybe get the Sneaker (a speedup), the Fried Egg (increases score bonuses) or especially the Pear (increases Energizer duration).

I know this sounds negative for a game that I ostensibly like. I would say more positive things about it, but three straight hours of it has dried out my brain and depleted my writing style, yet I still have to finish this post before I can go to sleep. If you like Pac-Man, you’ll probably like this, although there is a danger that you’ll play it to distraction as I have. My hope was to get to a level that unlocked the Trog enemies promised on the game’s promo artwork.

Trog, from the Bally arcade game, is the one-eyed caveman in the upper-left. It’s a really underrated game! I hope it’s included in there somewhere.

In my current state, that’s all I can squeeze out of my brain on this one. I’m off to have nightmares about eating dots and fleeing ghosts. Ta.

Pac-Man Forever (My Dude Studios via itch.io, $0)

Sundry Sunday: The Chaotix Case Files

Sundry Sunday is our weekly feature of fun gaming culture finds and videos, from across the years and even decades.

I promised yesterday that the next Sundry Sundays were going to be great, and so they are. The official Sonic the Hedgehog Youtube channel, in association with podcast outfit Realm, is releasing a sequence of audio videos featuring the adventures of everyone’s favorite ridiculous video game detective agency, the Chaotix. Why are they called that? Who knows.

Actually I do know, because the three of them were introduced in the 32X game, and one of the few reasons to have gotten a 32X during its short lifespan, Knuckles Chaotix, suggested tagline: “It’s not great, but it is very weird.”

That game had absolutely nothing to do with detectives. I think the detective angle was added with the lore behind Sonic Heroes. From then on, they’ve popped up at random times, usually being pretty hapless. But all three of them are adorable, even and especially Vector the Crocodile, and mean well.

So for now there’s three things having to do with the Chaotix Case Files, a trailer (2 minutes):

…an introductory Episode 0 (9½ minutes):

…and a full Episode 1 (26 minutes).

And here is a link to it as a podcast. They’re roughly of a Saturday Morning Cartoon level of maturity, which I should be clear, is absolutely perfect for these guys, so pour a bowl of Trix, inundate that vessel with milk, and let the part of you that’s still ten years old listen in and enjoy it.

They even got Rebecca Sugar, creator and runner of Steven Universe, to write their theme song!

Everyone Is Normal About Princess Daisy

The subject of this post is Elie D’s 13 minute video about one of the mascot characters in Nintendo’s Mario universe thing. Here:

I could launch immediately into a tirade that people shouldn’t invest self-worth into what amounts to, not just a cartoon character, but a corporate-owned cartoon character.

But I don’t really want to? Despite everything we still don’t have as much female representation in gaming than we should have. The Mario character lineup still skews about 90% male. These are characters that people embody within a game, there should be more girls. (Also, why are three of them princesses?)

Overall this is a pretty silly topic for a non-Sunday post, but I have something unexpectedly great for each of the next two upcoming Sundays, so I wanted to squeeze this in while the squeezing was hot.

WAIT I DIDNT MEAN

Recovered Games and Data from the Sega Channel

I’m a bit late to the trough on this one, but it’s worth calling back to the Video Game History Foundation’s recent release of over 100 ROMs and other data from the Sega Channel, that short-lived service that allowed subscribers with a model peripheral to play downloaded games over a cable TV line. It was kind of like a terrestrial version of Nintendo’s Satellaview service, but also one that wasn’t locked to Japan.

Some of these games were never released outside of the Sega Channel, and the VGHF also has unreleased prototypes for public perusal through their own archived collection and an association with Gaming Alexandria. Two particular finds are a hitherto undiscovered variant of a Garfield game and a Genesis Flintstones game that, at a glance, seems to be based off of the John Goodman movie. An abandoned project also in the collection is a Sega Genesis web browser, which would have been quite a thing to see back then. Notably, Gaming Alexandria’s torrent of the complete data is only 147 megabytes, which isn’t such a large download all told.

Image from the VGHF’s site. This would have seen release probably around 1999. For reference, the Sega Saturn and Playstation were released in 1994, and the Nintendo 64 was released in 1996.

The VGCF prepared a 58-minute promo video for their project here, with commercials and other content that are, ah, very nineties in style.

As an aside, I was shocked to see the company General Instrument come up early in this video. Weren’t those the people who made chips for pre-VCS dedicated game consoles back in the 70s? As it turns out, yes they were (PDF link)!

All the 3-Up Moons in Super Mario World

Did you know there are seven of them? Really! Super Mario World has way more moons than you need to win the game, by a large margin, but it still feels special to find one of these secret collectables.

MarMax Gaming points out all their locations in this video (10 minutes). There’s not a huge numbers of reasons to get them all, Super Mario World practically throws extra lives at you, but you still might want to know how to find them. Well, this is how. Here: