The KIM-1 Programmer’s Guide to the MOS 6502

The KIM-1, 50 years old as of 2026, was the first 6502-based home computer, designed by the legendary Chuck Peddle and sold by MOS Technologies themselves. (Well, we’re not sure if the Apple I or the KIM-1 was first. Or maybe it was the JOLT? As I’ve said before, there’s always something you’ve never heard of before out there, waiting to make you look like a fool.)

Someone on Mastodon (I can’t find the post now) mentioned that the KIM-1 had excellent programming guides, as it rightfully must have had, considering a freshly-assembled KIM had to have been programmed in raw machine code, and coming from an era before the World Wide Web. I had a look and, lo, it did!

Have a look for yourself, from a copy hosted by Rich’s Classic Computer Pages (PDF). Explained in an early chapter is how to properly add together numbers of arbitrary sizes, something that I had to find out from random sources. I wish I had this book when I was programming on the Commodore 64; I did have the famous Programmer’s Reference Guide, but that’s just it. It’s a reference work, and very difficult to learn the principles of assembly coding through it directly. (That said, there are pages in the C64 PRG that will look very familiar to someone flipping through the KIM-1 Programmer’s Guide.)

The cover of the Book itself

If you sat down and read this all the way through, and it’s quite readable for a programming manual, you’d be well placed to write code for, not just the KIM-1, but any 6502 computer. While for other machines you would need more information, like memory maps and hardware documentation, and you might like to have an assembler too, you’d still have a great foundation for whatever crazy programming adventure you were about to embark upon. I love it.

The Video Game History Foundation Examines a Famicom Punch-Out Prototype

Frank Cifaldi presents a look at a mysterious prototype of NES Punch-Out!! that’s turned up. It’s only got four working boxers, with Bald Bull missing key moves, but it also has quite a few working features, including the password system. It’s completely silent though. The game that is, not the video (5 minutes).

The weirdnesses continue…. The cartridge has mock-up art on it that looks like the “black-box” trade dress early NES games had. The chips on the cart are mask ROMs, not EPROMs. In the attract more scroll, arcade names are used for some of the fighters, like Pizza Pasta, Piston Hurricane and Vodka Drunkinski.

The Bard’s Tale Diaries

Have you ever wondered what the appeal of a rock-hard, old-school, Wizardry-style, first-person, overly-hyphenated classic CRPG is?

The original Bard’s Tale, not the PS2 action RPG reboot, and not the more-recent continuation either, created by Michael Cranford, is not as harsh as Wizardry, but is still a tough game, and one that demands that you map it out as you go. Instead of a menu-based town like in Wizardry, you have to actually explore the town of Skara Brae to find important locations within it like Garth’s Equipment Shop, Roscoe’s Magic Emporium or even the Review Board where you gain experience levels, and surviving the town’s random monsters long enough to do those things is your first major challenge. Yet despite, or maybe because of, that difficulty, the series sold more than a million copies, and was an important early hit for both developer Interplay and publisher Electronic Arts.

The C64 Appreciation Society is working through the original Bard’s Tale in an in-progress series of videos, ranging from 10 to 15 minutes in length, and they’re excellent both for an introduction to the classic series, and for understanding what made the game so popular.

The playlist is in reversed order, so if you watched it from that you’d start with the episode 4 and then watch 3, 2 then 1, and it’s really for the best to watch them in the correct sequence, so here those are: Episode 1Episode 2Episode 3Episode 4. Embedded here is the first of those episodes:

Identifying Samples From Sonic CD’s Soundtrack

With the exception of two or three musicians (They Might Be Giants among them), for the most part I’ve agreed with what Marge Simpson once said: “Music is none of my business.” (Not counting that one episode where it was revealed she had been fangirl at the height of Beatlemania.)

Because of this, I just have to assume that this 16½-minute video from Cat’s Eye and Cybershell finding many (although they admit not all) of the songs that the musicians behind the Japanese version of Sonic CD drew samples from is on the up and up. The Japanese version’s soundtrack was by (looking up spelling on Sonic Retro) Naofumi Hataya and Masafumi Ogata. They mostly don’t seem to touch the US version, which had mostly different music by Spencer Nilsen and David Young, maybe because of those many musical references. Whichever you prefer is mostly a matter of taste, and how well you can handle an intro track for a game about a cartoon hedgehog with lyrics about “leather and lace” and “toot toot sonic warrior.” (Didn’t I make a post about that at one time? A search suggests no, but I was sure I had….)

Lots of names and bands that I’ve never heard of, and songs that I’ve never heard! Look, I know, it’s a huge area to be ignorant of, but at this point I don’t feel like I could possibly do it any justice, so I guess I’ll just go back to my CD of Flood. (Starts absentmindedly singing the lyrics to Particle Man for the hundredth time….)

Extra: this Sonic Retro forum post where The Sunshine Feeler dove into figuring out who did the vocals on the Japanese version, which reveals the amazing fact that the artist who did the rap portion of the intro song, Casey Rankin, also sang the remix of the DK Rap for Smash Bros. Melee!

How the C64’s Disk Drives Formatted Disks

The 1541 disk drive was infamously slow, probably the slowest of the 8-bit floppy disk drives, the result of a VIC-20 Kernal bug that was inexplicably kept in the C64 for the sake of backwards compatibility. The problem could be fixed by writing your own disk routines, which is why so many games used fastloaders.

But the bug isn’t always at fault. The 1541 disk drive takes over a minute and a half to format a disk, but as it turns out it had good reason to, and the time consumed had nothing to do with the C64’s code because the drive does all the work itself; the Commodore 64 just waits throughout the process.

Commodore History goes into considerable detail on the process here (16½ minutes). During formatting the drive wipes out all the data that had been on the disk, lays down syncing structures, writes the disk ID to every sector, puts down the directory track and sets up the Block Allocation Map (BAM), and more. It’s an interesting, if not too useful these days, exploration of what disk drives at the time had to do to make the disk’s magnetic surface usable for data storage.

Jeremy Parish on The Wizard

Jeremy Parish, formerly of 1UP.com, currently of Retronauts and Video Works on Youtube, made an April Fool’s video, but because he’s Jeremy Parish it took the form of an interesting backgrounder on The Wizard, that big-budget Hollywood movie that’s like a feature-length advertisement for the NES and Super Mario 3. (18 minutes)

The Wizard stars Fred Savage of The Wonder Years, a popular show that you barely hear anything about any more. Like thirtysomething, remember that? I don’t either.

Many of my nights lately have been consumed with trying to play enough Caves of Qud so that I don’t embarrass myself too badly when I finally decide to talk about it. Most of my early explorations were in permadeath Classic Mode, but I have come to realize that playing it that way would mean I would need several years to finish it. I may not actually finish it before I write on it. On Nethack I had the advantage of being obsessed with it for years, had read many spoilers on it and participated on the Nethack Usenet group. These days much discussion of that nature has moved onto Reddit, which I have strong moral qualms about visiting now, not to mention that its app sucks on toast.

Well, back at it. Send fresh water.

The Game Display Shows Off Super Mario 3’s Most Secret 1-Up Mushroom

It is April 1st, but I already made my silly fake post for the year a month ago. Here it is. Are we good then? Let’s move on.

I’m not happy with the clickbait title The Game Display chose for this video, claiming they found a “golden mushroom” in Super Mario Bros. 3 like it’s some actual thing. What it is is a 1-Up mushroom with a weird palette. But it’s still a video worth linking (11 minutes), and seeing, because to find it you have to learn about an unlikely secret mechanic in Mario 3 involving the map screen and the wandering Hammer Bros. You can watch it, but I’ll give you the gist down below.

Remember those map Hammer Bros. in Mario 3? They walk around after you finish a level or lose a life, adding a bit of extra uncertainty to the map screen, and giving you a stored powerup if you beat them.

But did you ever notice that sometimes the blocks in the battle arena where you fight the Hammer Bros. have powerups in them too, but only sometimes? And it isn’t something to do with the Hammer Bros. themselves, the same fight might have a powerup one time, but no powerup another. What determines whether it’ll be there or not? Is it random?

The diabolical thing is that it turns out the map intersection spaces, the little coin-like locations that Mario/Luigi can stand on but don’t contain levels, Toad Houses or anything that can normally be entered, are actually valid gameplay locations! They’re only loaded as battle arenas when you fight enemies encountered on the map screen on that spot. Although most of those locations look the same on each world, some of them have powerups in a specific block, and some don’t. The qualification for whether you can find it or not is where you fight the Hammer Bros., not which one you fight.

In the sky portion of World 5, there is one specific map screen spot where, if you can lure that area’s lone Hammer Bros. onto it and fight it there, you can find that 1-Up mushroom with the weird palette. It requires a lot of tricky actions to find it, since the Hammer Bros. icon can’t travel up one of the only two ways to that spot, and you also have to avoid clearing a couple of levels using Jugem’s Cloud, because if you clear a level normally, the M or L space that is produced blocks the movement of map screen enemies. You also have to avoid fighting and defeating the Hammer Bros. early of course, and you have to avoid turning the enemy into a Treasure Ship. That might seem like an unlikely thing to have to watch for, but it is a issue encountered in the video. Watch it and you’ll see.

It’s so cryptic and precise that it seems like it must be an intentional secret, the one non-level map screen spot with a 1-Up in it. Given how many infinite life tricks Super Mario Bros. 3 has, I can’t say that it’s particularly useful, but that isn’t the point. It’s a little nod by the developers to the obsessed player, a way of saying, we see what you did there.

Variable Screen Position on the Commodore 64

I keep forgetting what this trick is called so even though I’ve mentioned it here before, I’m hoping this will cause it to stick.

Variable Screen Position, or VSP, is basically an abuse of the C64 hardware, a way to make its VIC-II graphics chip do something it’s really not meant to do, a way to get it to get its graphics data from memory in such a way that it does rest on the bedrock of 1K memory boundaries. Perhaps best known for its use in the 1993 classic Mayhem in Monsterland (video, 59 minutes), and more recently the homebrew C64 port of Super Mario Bros.

Without VSP, scrolling on the C64 beyond an eight pixel range is extremely processor intensive, and in fact cannot be done for the full screen in a video frame’s time on unmodified original hardware if moving color RAM is required too. Here is a page that describes it, and how to do it safely, that is, how to live with the memory corruption it causes on some hardware. I had mentioned before that it had to do with messing with the VIC-II memory refresh timing, but this page claims that it’s actually due to the VIC trying to access memory at a time when a read hasn’t stabilized.

Well anyway, here’s video of that C64 port of Super Mario Bros., so you can marvel as the system doing something that’s much easier on the NES.

Classic Mac Gaming’s History of Dark Castle

MARCHintosh is almost over, so here’s a short doc (13 minutes) on one of the most misunderstood games for pre-OS/X Macs, Dark Castle.

Why is it misunderstood? Because it received several ports to other platforms around the time it was popular, they all lacked the special something of the original game, and in more recent times the game has been unfairly derided on the strength of those ports.

What is it that makes Dark Castle great on original Macs? It’s a combination of super-sharp art, responsive and unique controls (it’s a platformer but you attack enemies by throwing rocks at them with the Macin-mouse) and character. The game has gotten more worthy remakes in the current era, but still faces difficulties. One of the best modern versions sadly became unplayable on later-day macOSes when Apple decided to no longer support 32-bit software, a decision that I can’t possibly attribute to Steve Jobs, but somehow it still feels like it has to be his fault, somehow.

Now, as the video tells us, there’s a new remake programmed in Unity, released on the Mac App Store but also Steam, and is finally playable in a decent port for non-Apple platforms. It even got a whole episode of Retronauts about it, which I can’t link because, ha ha, it’s paywalled. I’m sure this video will give you enough information to decide if it’s worth your time, and even if it isn’t, it’ll fill you in one one of those many secret little corners of video game history that Set Side B exists to point out to you.

Sonic CD “I’m Outta Here” Weirdness

By now lots of people know, in classic Sonic the Hedgehog games, if you wait a few seconds without touching a control, Sonic will look at you and tap his foot impatiently.

Fewer people know that Sonic CD goes a step farther. If you wait three minutes without moving Sonic, he’ll say aloud “I’m outta here!” (his first voiced line in the series!) and jump off the screen. What’s more, this ends your game. As Sonic abandons his journey, the game will deduct all of his lives, and the GAME OVER notice appears immediately. The hedgehog has been offended! Learn to pause the game next time, player.

The gag seems like it may have been hastily programmed, because there are a lot of quirks to the animation that play around oddly, and conflict in some ways, with the other aspects of the game. Camamania shows off all the bugs and glitches around the joke in a 7½-minute video.

Among the cases are when Sonic’s jump causes him to trigger a boss fight, to enter an acceleration tube, and when it causes him to cross the level-end sign. Some of them only apply to the MegaCD original, having been fixed in the US version, and some have different behavior in the 2011 remake. Interesting behavior, so says I!

A Way To Make A PC Startup With The Pokemon PC Noise

isithran on Mastodon came up with a grub boot line that can make your PC’s speaker (or whatever substitute it may have) play the classic Pokémon PC startup noise (3 seconds). A demo can be tested here. “PC” obviously stands for “Pokémon Container.”

This sound right here.

grub (properly lowercase) is a bootloader for some Linux machines. I can’t tell you if it’s easy to add it to a computer’s startup files, but if you know how to do such things, please enjoy.

White_Pointer Gaming Examines All the SNES Graphic Modes

White_Pointer Gaming’s series examining how different graphic tricks were pulled off in 8- and 16-bit games has been great, and now they have a video going over all eight (Modes 0-7) of the SNES background modes. (42 minutes)

In brief:

Mode 0: Up to four independently movable backgrounds, but with some pretty serious color limitations. Mostly got used for title screens.

Mode 1: Up to three backgrounds, two with more colors. The SNES’s most-used mode.

Mode 2: Two backgrounds, with “offset per tile” on one of them that lets the system move columns of tiles vertically by arbitrary amounts. Used for certain special effects, like (along with raster-based scanline placement) the waving flag in Battlemaniacs, Super Turrican 2’s worms and rockets stages and Panel de Pon/Tetris Attack’s rising game boards. Horizontal offset per tile was also possible, but much less used due to the coarseness of the scroll.

Mode 3: Two backgrounds, one of them gets either 256 colors or, using direct color, being able to specify colors without palettes, with 8 bits of RGB value. Often used for high-color stills. Earthbound’s “THE WAR AGAINST GIYGAS!” screen uses it.

Mode 4: Has the high color first layer of Mode 3, and the offset-per-tile effect from Mode 2 for its second layer (which has fewer colors than in Mode 3). Rarely used. Puzzle Bobble uses it for gameplay, to independently shift the playfields from the rest of the gackground.

Mode 5: Two backgrounds, with 16 and 4 colors per tile respectively, but supports high resolution with 512 pixels per scanline. Can’t do transparency (but can kind of fake it with dithering). Notably, the high res menu screens in Secret of Mana use this.

Mode 6: Only one layer, hi-res like the second layer in Mode 5, but supporting offset-per-tile. Often considered completely unused, White_Pointer Gaming found out that Lufia 2: Rise of the Sinistrals does use it during the credits.

Mode 7: The famous mode that supports scaling, shearing and rotation of a single background layer, used for special effects and fancy 3D effects in games like F-Zero, Pilotwings and Super Mario Kart. Supports 256 paletted colors or direct 8-bit RGB color.

Notably though, Mode 7 can’t actually do 3D effects on its own; it has to use another feature called HDMA. It uses a raster effect to change the horizontal scale of the background on each scanline. As it turns out, the calculations to do this on each line are substantial, which is probably why so many games that use Mode 7 to a significant degree use one of the SNES’ coprocessor chips, like the DSP or SA-1, to help the processor out. The video then rounds out with a discussion of the Mosaic function used in such places as the map transitions in Super Mario World and Final Fantasy IV (II).

Elsewhere, Retro Game Mechanics Explained did a 16-part series covering the SNES’ hardware feature in considerable depth.