Well I was just notified this morning by a comment on that video, with the handle kirkbradfordmyers7196, that this happens because a table of ghost scatter times in the code is too short, so it reads data from an unrelated source which indicates a long period of time, much longer than the scatter phase is supposed to last.
kirkbradfordmyers mentioned that they’re working on a romhack that provides a fix for this bug, and others that exist in the code, and hopes to get the game much closer to the arcade. We wish them luck, and hope they’ll come back and tell us about their work when it’s done.
It’s been a while since I linked a good solid ultra-geeky hacking video. Poking Technology is really good at this sort of thing. Here he takes apart one of those extremely cheap portable game consoles (1 hour 12 minutes), the kind you might find at the checkout line at Walmart for ten bucks, put logic analyzers on it, run it through Ghidra, and basically figure out how it works.
I find this stuff fascinating. Look, I’m not going to claim everyone will be interested in it, but that’s one of the advantages of running a daily blog that casts a super wide net, if you’re not interested in this there’ll probably be something more to your liking tomorrow. And if this is your kind of thing, take it from me, it’s really going to be your kind of thing. I’ve been munching on this video a few minutes at a time, and I’m still not at the end of it yet, I don’t know where this leads. I hope it goes somewhere where he puts his own code on it, which I kind of suspect he might.
CP/M fascinates me. It was the first real crossplatform OS for microcomputers, and it was also extremely small. It could be implemented in as few as 5KB of memory, and those 5,120 bytes got you a character-based screen, disk access, a file system and I/O support. If it looks like DOS to you, it’s because it was originally created as a clone of CP/M, and so lots of CP/M’s limitations transferred over to DOS, like its single-letter drive names and its 8.3 filename structure. But CP/M was first released in 1974! It was silly for Microsoft to have adapted that limitation too, and as a result until Windows 95 their consumer OSes had to live with the same limitation, when even Commodore 64s could have 16-character filenames. Jeez! PC-DOS/MS-DOS would soon get directory support, which CP/M didn’t get until the under-adopted version 3; until then it had to use a less-flexible system where a disk could be split up into numbered “user areas.”
CP/M being so small, it was also very simple, enough that one person could understand everything going on under the hood, something you really can’t say about OSes these days. That complexity has been used, in recent times, in service of their makers against their customers, to push in all kinds of misfeatures that many people would rather not have.
Nowadays CP/M is a footnote, its founding company Digital Research is a mere bag of property rights owned by Lineo, while Microsoft is worth hundreds of billions of dollars, and it’s very much because of a single decision by people at IBM to go with PC-DOS, later MS-DOS, from Microsoft. IBM offered both OSes, but they sold CP/M for 8086 for $240, several times what they sold PC-DOS for, and that’s why Windows is huge today and CP/M is a footnote. But there is no reason to believe definitely that, if the decision had gone the other way, that we wouldn’t be bemoaning Digital Research’s terrible decisions now instead of Microsoft’s.
But it’s also the case that DR might have turned out differently, while we know Microsoft would become the uncaring behemoth that harmed people’s perceptions of computing since the 80s, and is now propping up OpenAI and trying to shove it into everything. Remember everyone, to always strive to be better than your hypothetical replacement, or someone on a random blog decades in the future might ask aloud if we’d be better off without you.
Read the subject line, and say to yourself quietly, “No way. What’s the catch?”
There is a catch, of course. There is an art to these kinds of hacks though, and it lies in finding the right catch. The catch that makes the hack possible at all, but seems the least like a cheat.
You can technically “run” Doom on a C64, if you actually run it on a Raspberry Pi plugged into it, that only uses the machine’s video hardware for output. That’s an egregious cheat; Raspberry Pis didn’t exist back in 1983 when the C64 was new.
There are speed-up cartridges for the C64, and you could even implement a co-processor to do much of the hard work of rendering the display for you. That’s also a cheat, although a bit less of one.
One could approach the problem from the other direction, diminishing the scope of the hack until it fits more comfortably in the computer’s capabilities. There are 3D corridor games on the C64; when I was a kid, a tape of software that a co-worker gave to my dad had one, called LABYRINTH, that was written in BASIC. But if it was truly the equal of Wolfenstein 3D it’d have revolutionized the gaming world. It wasn’t, and it didn’t. It generated one of those Wizardry-style mazes, sometimes called “blobbers,” where your perspective is fixed in the center of a grid-based maze. It wasn’t a shooter, it didn’t animate smoothly, and it was a pretty simple algorithm, simple enough that lots of games used it, especially RPGs.
What makes smoothly rendered graphics slow on a C64, indeed on pretty much all home computers at the time? It’s the necessity of using a bitmapped graphics mode. The math of deciding where the corridor vertices and lines go is within the machine’s capability, even at 1 mHz, but writing all those bytes into the C64’s 8K bitmap screen takes a huge amount of time.
It’s why few action games on the Commie used the bitmapped modes. Even if you used a hand-tuned machine code loop to write a single value to every byte in the bitmap, it’d be slow enough that you could visibly watch the screen fill up. If you wanted to actually vary those bytes, such as by rendering walls, it’d take much longer. Even filling the text screen takes so long that it’s difficult to do it in a single video frame, which is why games that feature NES-style full-screen scrolling on the C64 are impressive. (There are tricks to doing it; some of them quite bizarre. Let’s discuss those some other time.)
But you could do what jimo9757 did, and use text characters to simulate the rendering. In fact they did it one better, and used the PETSCII graphics characters for the display. The result is pretty striking! See for yourself in this demo (8 minutes):
Reserving a port of the screen for a status display is itself a bit of a cheat, that cuts down on the number of bytes that must be changed for each screen update, but it’s one that Wolfenstein 3D used too so let’s give it a pass. The walls only have horizontal lines for textures, but it’s not like the original’s were that worthy either. It’s certainly not 60 fps, it’s maybe 15 or 12, but it’s certainly still impressive to see those walls glide by smoothly on a machine with a 1 mHz 6502-class chip.
Since the game uses PETSCII for the maze, this engine can even work on the Commodore’s first home computer, the PET, whose character set was fixed in unchangeable mask ROM. Here’s video of the first-person shooter they made for the PET (3 minutes). I think the graphics, while many would call them primitive, have a fun style to them:
By the “first LowSpec” processor it means the 6502. This video is a retrospective on its origins (27 minutes). With its manga-styled illustrations of key players interspersed by stock footage and the occasional meme, It’s not my favorite style for a YouTube doc (those would be the Dan Olson/Folding Ideas style), but it’s not a bad introduction?
This is kind of self-promotion, but it’s not just self-promotion as you can get tons of books by other people this way, including 10 volumes of Game Dev Stories from David Craddock, twelve books from Hardcore Gaming 101, four from Andrea Contato, and a couple from Dean Takahashi, as well as several other people, including, well, moi. It’s $35 for 66 books! I even threw in the two volumes of Someone Set Up Us The Rom as an extra, even though I don’t get anything out of it. I care that much about this bundle’s success.
No one gets rich from these bundles. The days when you could offer a ton of content at a steep discount and get thousands of purchases are long gone. But cash-strapped readers looking for a lot of info, if they can scrape up just $35, can get an amazing deal that will keep them occupied for a long time. I really think you’ll want to jump on this one, if you’re able.
I’ve been involved with these bundles for around a decade now. Some of the books I’ve contributed I’ve put up for sale on itch.io, but some I haven’t. The original version of We Love Mystery Dungeon is in it, which I’ve just taken down from itch.io due to its forthcoming expanded print edition through Limited Run, which is one of those sad but necessary things that has to be done when you sign a publishing contract, so this will probably be the last place you can buy the original version. By the way, I hope you’ll consider the new edition: it’s got added material on last year’s Shiren 6, a.k.a. The Mystery Dungeon of Serpentcoil Island, and a whole lot on the whole Pokemon Mystery Dungeon series.
I know I’ve made a few of these self-promotional posts lately, mostly over the Loadstar collection and related topics. I’ve always been anxious about spreading the word about my projects, paid or otherwise. I’ve seen so many people who seem shameless about tooting their respective horns, but it’s kind of necessary, I guess, to be seen through the crowd.
Well there it is. There’s 15 days left in the bundle, so you have a bit of time left to make your decision. Please have a look.
Nintendo’s announced that Mario Paint has been released on Switch Online, a movie that I modestly point out that I called some time ago, although I hoped they’d offer an export option that would let you make easy use of your creations, although one can use the Screenshot button to save your creation probably. It’s not the subject of today’s post, but their announcement’s pretty entertaining, so here it is (4 minutes):
The announcement mentions that one can use the restore states built into the emulator to save your work, which is at least better than the single save file available in the cartridge, or “saving” your work to VHS tape as the manual suggested. Another thing mentioned in the announcement is that, not only can people use the Switch 2’s Joycons as mice to replicate the function of the SNES Mouse that came with Mario Paint and required it, but in an uncharacteristic bit of generosity, it also supports USB mice when used on the original Switch models.
Mario Party is an interesting piece of gaming history. Without it, Homestar Runner probably would never have happened. Five years ago H*R posted bits of Mario Paint work to social media on Thursdays, which they compiled in this video (4 minutes, sadly not able to be embedded).
That’s two videos already and neither are the focus of this post, so what is? This digitization of an official Japanese Mario Paint tape was uploaded by Jeremy Parish, it’s 31 minutes, and shows off some frankly amazing creations that were made in the days where you had to actually use the mouse to make Mario Paint creations, without resorting to outside tools or memory manipulation. Surprisingly, it also bears the logo of APE Inc. Shigesato’s company that made Earthbound! Here here, it is this this:
One more note about the announcement video! It mentions that Mario Paint songs have been added to the Nintendo Music cellphone app. It also shows off “Title Theme 2,” which actually isn’t in the app, but is revealed to be Totaka’s Song! Maybe it’ll be added at a later date?
Displaced Gamers takes a lot of time to make their videos, but I always know their videos will be worth watching, and usually also worth posting about. Their newest video (36 minutes) is a typically deep dive into Metroid’s game engine, and why the game inexplicably drops frames. It’s only a first part so far, but they do an excellent job of breaking down Metroid’s game loop. As far as it goes to this point, a big part of the issue has to do with the main game loop being called to prepare game screens being scrolled into, which are kept in a big memory buffer (so big the game requires extra RAM on the cartridge to store it) and copied into the PPU’s VRAM when needed.
Here’s the video. If you enjoy this sort of thing, we’d probably get along very well in person!
The player can switch their switch themselves by pressing L and R, but only by pressing in, not out. Doing so both changes the state of all the switch blocks, and makes the switch itself much shorter. In play terms, this is equivalent of Super Mario shinking and becoming Regular Mario, and in fact getting hit by an enemy has the same effect, resulting in being switched prematurely, and all the blocks changing state too. To switch back, you collect a P Switch item, which is essentially a Super Mushroom, restoring both the player’s state and reswitching all the blocks.
We’ve posted before here of Diskmaster, a search engine that works on the contents of old CD-ROM file compilations. Diskmaster has gone away and come back at least once, maybe twice, but for the moment at least is up.
Discmaster Jam is a gamejam where participants are asked to make use of contents found on the CDs the Discmaster searches. The winners were judged by a number of Industry People, so you can expect a certain minimum level of quality from those. The list of submissions on itch.io’s page for the jam has a number of extra items on it, to peruse and examine.
Image from the site
One entry that stands out in my vision is “Where In The World Is That #@*% Owl!?” which was written for the somewhat-obscure ACT Apricot computer from the UK, which had monochrome, yet high-resolution, graphics
Image from the itch page for Where In The World Is That #@*% Owl!?
Of note: it turns out one of the disks that Discmaster searches is the original CD version of Loadstar Compleat! So that is another way you could satisfy a jonesing for C64 program action. If you see me report on a Loadstar program of interest, you could possibly find it there, in addition to the Loadstar Compleat compilation I’ve made for itch.io.
LordBBH has a most excellent website, of the style that those/old of us remember fondly, made out of plain hand-coded HTML scrolling down the finite-length page, with images and writing. Like |tsr’s classic NES site, and Gaming Hell’s current one. (A lot of the pages from our list of great gaming sites are like that!) Some days I fantasize about remaking Set Side B in that style, but we’re daily, I’m not the only one who posts here, and I don’t think Josh Bycer would appreciate it if I suddenly decreed that he write posts in raw HTML. Maybe some other time, or for some other site….
LordBBH is on Bluesky, but is taking a break from all social media right now, which proves his great wisdom and power. His site is still online, and hosts descriptions and information on several old arcade games, which as we all know are the best descriptions and information. One of them is on an SNK arcade game from the early days of the NeoGeo, The Super Spy.
Images from LordBBH’s site, used for the purpose of providing context and to convince you to go to the site itself and read it!
The Super Sky is of a small field of three arcade games, NeoGeo first-person brawlers. It wasn’t too popular when released, but its two followups, Crossed Swords and Crossed Swords II, did considerably better. You can think of them as like Nintendo’s Punch-Out!! series, but less pattern-basis, more scaling, and fighting more opponents at once.
It’s an ambitious game for an arcade format, it has non-linear explorable buildings and an experience system.
In The Super Spy, you’re the titular uber-agent. You know karate, and can also box, and you take your lethal hands and feet (and a knife and a pistol too) against enemy terrorists in a series of three settings. It’s behind-the-back first-person yes, but you can’t rotate your perspective; you’re always facing north. An array of icons at the upper-right corner of the screen show which directions you can move in, and it’s the only indication if you can go south, or “down.” There’s at least one secret passage in the game that’s hidden that way.
You have an array of moves that would make Little Mac proud, including multiple kinds of punchse, but also kicks and slashes and shots. Each building you explore is swarming with enemies, fist guys, ninjas, mini-bosses, bosses, and exactly one woman, who you know SNK’s team of graphics creators were very normal about.
Dammit SNK. This isn’t even the most ridiculous thing about her art, which is that, in the Japanese version, her panties are randomized each time you reach her.
It’s easy to make fun of The Super Spy, but LoadBBH asks us to take it seriously, and while it’s quite unfair in places he makes a strong case that it’s worth your time. He’s written one of my favorite kinds of web pages about it, and I recommend you taking a look of you like weird arcade games. Go, go! And hover the mouse over images on the site to read entertaining alt text about each one!
I’ll admit, I’ve sat on this one for months. After posting about U Can Beat Video Games, I started to worry that this blog might get a bit repetitive if I kept posting about video game walkthrough series, and they take a long time to construct because there’s so many links, but it’s been a while since then, and VG101 has been around for years now.
Video Games 101, a side channel of a Let’s Play channel, covers much the same ground as U Can Beat Video Games. Some of the specific games are different. VG101 is a bit more about entertainment than the specifics of beating games and the strategy involved. Professor Brigands has three “TA” characters that assist him: Scary Gary (covering bosses), Blaze (a surfer who goes over the available items in each game) and Fluff the cat puppet, the most fun of the group, who explains game trivia and history.
I’m just putting it off still further at this point. Here is the intro video to the channel, followed by the list of every walkthrough VG101 has posted to date.
I’m helping out with Roguelike Celebration 2025, the now ten-year-running conference-like thing about all things roguelike, roguelite, and roguelike-adjacent. Yes, I’ve presented there three times so far, and figured it was time to give back!
While RC got its start as an in-person conference, when the pandemic hit they switched over to being entirely virtual, presented through video feed. All of their talks end up posted online, so anyone can see them for years after. But if you can attend during the conference you can participate in chat, ask questions of the speakers, and explore a very clever MUD-like chat interface!
I’ve tried to spread the word about Roguelike Celebration where I can, through social media and this very blog here. Every year they have several very interesting talks that, if you read Set Side B, I know you’d be interested in seeing. They’ve hosted Tarn Adams, co-creator of Dwarf Fortress, the creators of the original Rogue, and many other thoughtful speakers.
This year Roguelike Celebration takes place October 25-26. They sell tickets, but they also let people who are strapped for cash apply for a free ticket. (If you can pay for admission though, please do, as it takes money to run an event like this.)
And if you have a roguelike, or even vaguely-related project, please please please answer their Call For Proposals, to apply to present your work to their devoted audience of extremely thoughtful attendees! The CFP site is here, and their deadline has been extended to July 20th, so you have about three weeks to get in your proposal!
Give it a shot, it’s a great way to spread the word about roguelike work, or about a procedurally-generated game you’re interested in, or just something you think the world should know about.
By volume most game players, let’s be frank, are interested in the big AAA productions. But there are lots of people out there who are willing to give indies a chance, which roguelike games often are, and we have to stick together. Not only to talk with each other and build those connections, but to do it in public, non-corporate venues. Reddit largely is a sham these days, more interested in monetizing their userbase, and Discord isn’t web-searchable, and requires navigating a maze of requests that you upgrade to “Nitro.”
I do not lie: little volunteer-run organizations like Roguelike Celebration are a lot closer to the true spirit of the internet, and the World Wide Web, than those are. So please keep them in your thoughts, if you can buy a ticket, and if you have something to present, answer their CFP! You won’t regret any of those things.