Grey is what the subject line says: a FPS, running at an acceptable framerate, on a Commodore 64, without a Raspberry Pi or other hardware to help it out. Here is its thread on Lemon64. Have a look (24 minutes):
How is it possible? Well, it’s not running 60fps for one. Updating the whole screen in one frame on a C64 is hugely challenging, but fortunately FPSes can look satisfactory running at slower framerates. It’s not Quake-level graphics, or even Doom, it’s more like Wolfenstein 3D in ability, and it’s confirmed that it uses that style of raycasting. And on top of all of that, it doesn’t use hi-res resolution, which would be really slow on an unmodified C64. It seems to use character tiles to fake a kind of low-res display. But when you’re trying to get a game running on a 1 MHz machine with 64K of RAM, tricks and shortcuts are not only necessary, but rather laudable. What a hack!
This is a work-in-progress, with a demo of the game available in a recent Pateron-available issue of Zzap 64. No source code is available yet. Let’s hope for continued development!
Our friend Robin at 8-Bit Show And Tell lets us know of this cool and free Commodore 64 BASIC 2.0 extension, of a sort, called Hare Basic. It’s a successor to an earlier version called Bunny Basic. Here’s the video, 48 minutes long. My comments on it follow below, which you can read either after having watched the video, or before, depending on of you have most of an hour to spare right now.
Here are the downloads, which are hosted on the creator’s Dropbox, so availability may fluctuate.
Commodore BASIC is, in many ways, the worst of all worlds. It’s a slow interpreted language, a variant of infamous Microsoft BASIC, and it has almost no machine-specific features, but it comes with the machine, and it’s burned into ROM. You can swap it out for extra RAM if you have a replacement OS or are running something in pure machine code.
I could go on for a long time about the problems with Commodore BASIC 2.0, a language I’m quite familiar with having spent much of my teens programming in it. Sometimes it feels like it was designed especially to run slowly. One example: it supports floating point math, which ordinarily would be a good thing, right? Use integer math for performance, and just use floats when you need decimals, right? But no: internally, Commodore BASIC converts integer variables into floats when doing any math with them, and converts them back to store as integers when it’s done. Wilberforce Trafalgar Franklin?! Why?! It does these unnecessary extra steps to do all arithmetic as floating point even when it doesn’t need do, and doesn’t offer a way to do performant integer math at all! Need I remind you that Microsoft BASIC is based upon software written by Bill Gates himself? I suspect that I don’t!
Hare Basic is a highly optimized subset of Commodore BASIC that can be switched on and off as needed. It has to be coded in a special way which might throw beginners for a loop: Hare Basic can’t abide whitespace, for example, only allows for variables of one letter in length, has no support for modifying strings, and contrary to Commodore BASIC can only do integer math. There’s lots of other differences too, and if you want to play around with it it’s essential that you study the manual.
But once you get used to it, it runs blazingly fast, sometimes as much as 10 times faster! And the best part is you don’t have to use it for everything. You can start out with a standard Commodore BASIC program, then enter into Hare Basic mode with a USR function call. You could write your whole program in Hare if you’re up for it, or just loops, or other places where performance is necessary.
Of course, this is ultimately an enhancement for a programming language that runs on a home computer made in 1984. It’s not what one might consider of universal interest. But it might be of interest to the kinds of people who read this site. It’s interesting to me, at least. Maybe I should dust off VICE and see what I can do with it? I haven’t coded on a ’64 in nearly three decades, maybe I should get back into that….
Last year we put a spotlight on a Commodore 64 remake of possibly the most popular Odyssey2 game, K.C. Munchkin. Well, here’s another, of Space Monster, a.k.a. Alien Invaders – Plus! I assure you, the exclamation point there belongs to Magnavox.
The Odyssey has gotten more talk on this site than its much-more-powerful successor, which was still kinda weak compared to its competition. People still talk about the Atari VCS/2600 even now 45 years after its introduction; the Intellivision still gets some love; but who talks about the third place system, the Odyssey2? Fourth if you count the Colecovision, but that machine, released in August 1982, was only on the scene for a relative instant, the Crash already fomenting by that time.
Alien Invaders – Plus (I’m going to leave off the bang now thanks) was Magnavox’s attempt to capitalize on the gigantic success of Space Invaders. The box didn’t hide its inspiration, outright saying: A fiendish new dimension comes to one of the most popular arcade games of all time! By that time, the market had already determined that Atari’s miraculous licensed version of Space Invaders was probably the best, a game that, while subtly different, actually improved on the original in some ways. Similarly, while everyone now can play the original Space Invaders in MAME if they’re inclined, Alien Invaders – Plus (which Craig Kubey in The Winner’s Book of Video Games derided as Space Invaders – Minus!) is more interesting for the interesting departures from the arcade game, and the Commodore 64 remake mimics them faithfully.
At first it looks vaguely similar to Taito’s arcade hit. There’s rows of aliens in the sky, there’s a roundish alien going back and forth above them, you have a base at the bottom that can move back and forth and shoot up at the enemy, and there’s even shields above it that can be dodged behind for safety.
The first difference comes from the aliens themselves. In Space Invaders, while they looked different and were worth different amounts of points, they all behaved exactly the same. Here, each of the three rows of foes plays by different rules. The bottom-most are just barriers, they can’t be destroyed but they don’t shoot at you either. Any shot that hopes to hit targets higher up on the screen must get through them. The middle row are yellow laser cannons, and they shoot down at you. The top row are red humanoid robots that operate the cannons. The wandering eye-like alien at the top is called the “Merciless Monstroth,” but I’m sure its mother loves it just the same.
Like Space Invaders, the alien formation rains down bombs on you, and it’s easy to get hit. Unlike Space Invaders, there’s a limit to how far the aliens can descend, right above the shields, and you’ve never in danger of being overrun. If you wait beneath a shield you cannot be shot, but neither can you shoot the enemies. Also, in each row, all you have to do is hit either the robot or the cannon in order to stop them from shooting down at you.
To finish a level, you have to shoot all the robots and cannons on the screen. This will cause the Merciless Monstroth to get serious about you, swoop down from the top of the screen and hover just above your shields, trying to bomb you. At that range dodging its shots is very difficult, and it’s evasive of your shots, but you can still zap it safely with a well-timed shot as it reaches your base’s horizontal position.
Your reward for doing all of that is one single point. Your score is just how many boards you’ve cleared. No bonus points or anything like that are awarded.
If your ship gets hit you don’t perish immediately. A little person is revealed to have been moving it. If you can move it to beneath one of your shields and press the fire button, you’ll be given a new base! This, however, costs you that shield. The shields are basically your lives; if you run out of them, and your base gets destroyed again leaving your guy, then you’re essentially screwed. Your little base-inhabiting person has no weapons of their own. If you get down to no shields left before destroying all the aliens, M.M. will sense its opportunity and swoop down at you early. Destroying it at this time, or while its at the top of the screen, before all the other aliens are obliterated doesn’t clear the wave; the game will just send another one out, again and again, until you’ve finished the job.
If your base person is shot while outside of a base, you don’t quite die. Instead, the enemy gets a point. While you’re trying to get to ten points yourself, the enemy is also trying to get to 10, and the side that gets there first “wins the game.”
Despite all the chances the game gives you, it’s really hard! You’ll find the green circles block most of your shots, and the cannons are really good at predicting where you’ll be and aiming a shot there, and the enemy shots move quickly. Since reforming your base costs you the shield you’re beneath, often you’ll get your base back and lose it again immediately as the barrier disappears.
The Commodore version was created by demo group Second Dimension. It’s worth playing in preference to the Odyssey2 version if only because C64 emulation is understood than Odyssey2 emulation. There’s multiple Commodore emulators, at least, while only one Odyssey2 emulator that I know of.
Here is the Commodore 64 version is action, from the channel C64 Masters on Youtube.
Commodore users of a certain intersection of class and age will remember the Datasette, a custom tape player that early Vic-20 and C64 users could use to load and save their programs on standard “Compact Cassettes.” This was a very slow process, that was so timing intensive that the C64 had to blank its screen during it, because its graphics chip demanded exclusive access to memory while it got the needed data each frame to render graphics. Of course things were rather different in Europe, where cassette tapes were a much more viable medium, and tape loading could actually be faster than the 1541 disk drive (a notably flawed and slow design).
Scott walks through this unique period of home computing history. I still have tapes of old Commodore software lying around (because I rarely can bring myself to throw such things out). Maybe some day, if I can get my old Commodores working and displaying again, I’ll try them out and see if they work.
But fortunately, for commercial cassette software archived on the Internet Archive, you don’t have to go through such lengths! Although you can still wait for software to load if you want to! The IA offers emulated software for both the Sinclair ZX-81 and Commodore 64 that are supplied on virtual tapes, so you too can experience the exciting process of waiting for programs to load. In Scott’s words: “Incomprehensible! Mysterious! Uninformative! Welcome to home computing in the 1980s!“
I notice that much of the Commodore 64 software mentioned in the article actually had tape loading graphics. I can’t explain this. It kind of makes me feel cheated, from the many times I sat watching a blank light-blue screen. Presumably the UK coders who made much tape-based 64 software had, in their tape-loading bag of tricks, a way to overcome the VIC-II’s timing issues. I wouldn’t doubt it.
We’ve brought up a couple of examples of Commodore PET software lately, which as I keep saying, is interesting because the PET has no way of doing bitmapped graphics, sprites, or even definable characters. Its characters are locked in ROM and cannot be changed. So, it includes a set of multi-purpose characters that was used throughout all the Commodore 8-bit line, even as late as the C64 and C128, which having definable graphics didn’t need these kinds of generic graphics characters, but they were still useful for people who didn’t want to create their own graphics.
Back on my Commodore coding days I became very familiar with these characters. I think they’re much more universally-applicable for graphic use than the IBM equivalent, the famous Code Page 437, although that’s mostly because PETSCII doesn’t bother defining supporting so many languages. Code Page 437 also uses a lot of its space for single and double-line versions of box-drawing characters, although on the other hand it doesn’t waste characters defining reverse-video versions of every glyph.
PETSCII has:
A space and reversed space, of course.
Line drawing characters for boxes of course: vertical and horizontal lines, corners, and three- and four-way intersections. There are also curved versions of the corners.
More line-drawing characters for borders.
Still more horizontal and vertical lines, at each pixel position within their box.
With the reverse-video versions, enough characters to effectively do a 80×50 pixel display, as if it had a super low-res mode.
Different thicknesses of horizontal and vertical lines too.
Diagonal lines, and a big ‘X’. Note that on the PET and Vic-20 these lines were all one pixel wide, but on later computers with both better resolution and color graphics they were made thicker, which means diagonal lines have “notches” between character cells.
Other miscellaneous symbols: playing card symbols, filled and hollow balls, and some checkerboards for shading. On the PET and Vic, the shading characters were finer, while on the other 8-bit computers they were made of 2×2 boxes.
There are resources that let you use PETSCII to create old-school computer art, like this PETSCII editor, Petmate and Playscii, and for a bunch of examples of what you can do with it you can browse through the Twitter account PETSCIIBots. And this blog post from 2016 both makes the case for PETSCII as a medium for art and provides some great examples of it.
The title is no joke, a couple of crazy people RetroGL and JoneGG, are actually doing it, and while they’re close to a final release you can also download a current alpha for free, with manual, from links in the description on their Youtube demonstration video:
It’s a great example of playing to a system’s strengths (surprisingly large sprites and a legendary sound chip) while downplaying its limitations (only eight sprites, low multicolor resolution, 16 colors, a controller with only one button). It’s much better than the arcade porters of the system’s heyday would have accomplished. I mean, just look at it! On the Commodore 128, they even plan to implement stage scrolling!
I’m not sure how it works internally, but given that it’s being distributed as a CRT file and not a disk image, my guess is on physical hardware it’d rely on a physical cartridge for expanded, bank-switched ROM space. It’s a trick that’s being used more often, like how Champ Games uses it for their Atari 2600 ports of classic arcade games.
Aah that’s a screen I haven’t seen in a long long time.
1982 saw the founding of the Apple II computer magazine-on-disk Softdisk. Soon after Softdisk Publishing produced disks for other home computers too. One of them, Big Blue Disk, has gone down in history as previous employer of some of the original principals of id Software, especially John Carmack and John Romero. But another of Softdisk’s legacies was their Commodore 64 product, Loadstar, probably the longest-lived Commodore 64 software publisher. They published C64 software from 1984 to 2007. And most, if not all, of it is available online!
Loadstar is yet another of those computer gaming stories that must be told, and I’m in a pretty good place to tell some of it, because I beta tested for them for many of those years, and sold programs to them as well. Yes, several of their releases bear the programmer name John “The Mad Gamer” Harris. You have to understand, this was long before the word gamer reached common usage. In fact, as someone who may have primacy over the use of the term, I hereby forbid its use by anyone with misogynistic, anti-trans or racist intent. It is so decreed, hey-nonny-nonny!
Loadstar was lots of fun. Every month they’d send you two disks in the mail with several new pieces of Commodore 64 software on it. Under the watchful eyes of Fender Tucker and Jeff Jones, and later on Dave Moorman, it’s not that they grew an empire of Commodore programs, but they did manage to sustain that platform for a small but avid userbase for far longer than you’d have thought possible.
I plan to start doing Loadstar reviews eventually, but in the meantime, you can try out some of the later issues of this important piece of computing history at the site linked below. Note that you’ll have to have a means of running C64 software to use them, of course. The emulator VICE is known to work well. And if you want to hear the words of Fender, Jeff or Dave yourself, all three are on Facebook.
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:
“We scour the Earth web for indie, retro, and niche gaming news so you don’t have to, drebnar!” – your faithful reporter
Let’s make it quick this week-
Oli Welsh at Polygon tells us what we already knew, that No Zelda Game is Closer to Breath of the Wild Than The 1986 Original. We can’t recommend it whole-heartedly though because it gets in some digs on the older game, saying it’s nowhere near as much fun as Link to the Past, a statement I disagree with.
Hope Bellingham at GamesRadar tells us that U.S. Customs wrecked a sealed-in-box copy of Pokemon Yellow valued at over $10,000. I rather disagree with that valuation too. I thought all the misguided young people were losing their money in crypto these days? (Note: GamesRadar is one of those sites that waits until you start reading an article then puts up a blocking box begging you to subscribe. Hint to GamesRadar: NO, and if I were interested in subscribing my generous impulse would have been destroyed by your prompt!)
At the Guardian, the very British-named Oliver Wainwright reviews Super Mario World, not the game but the theme park in California, a part of Universal Studios Hollywood. The verdict: 8/10, good graphics, some replay value. I’ve been in a melancholy frame of mind as of late, so seeing those brightly-painted dioramas makes me wonder what they’ll look like in twenty years, when Universal Studios’ attentions have drifted to another big thing. Nothing ages quite as badly as a happy prop painted in primary colors.