The MAD Magazine Type-In Program

One of the essences of comedy and humor is a shared context between participants. When a joke is made both the teller and the hearer must know what’s being spoken of, and how the elements fit together in relation to each other, if the funny ha-ha is to occur.

Which is why I find the creation of The MAD Computer Program interesting. Published on issue 258 in BASIC for four of the microcomputer platforms of the time, Atari 8-bit, Apple II, Commodore 64 and IBM PC, it was obviously MAD’s bid to maintain technically relevant to that brief moment in computing history. Setting aside whether it’s actually funny or not (it’s not), it means that MAD’s editors must have decided that home computers were common enough that they could waste some of their precious print pages on catering to their owners. Anyone without one of those computers would find them to be four pages of wasted content.

The four programs have a lead-in that reads in a set of data (using READ commands to get vector coordinates from DATA statements, of course). The lead-in part is different for each platform, but the lines with the DATA statements are the same, and so are only printed once in the magazine. That’s also the least interesting part of the ordeal of entering type-in programs: tables of raw data, numbers without context, sequences of values that will put your monkey brain to sleep, yet will surely cause your code to fail catastrophically if entered incorrectly. There’s 140 lines of them to enter here, plus some more if you’re using a C64. As my eyes brush over them, childhood trauma from entering type-ins from computer magazines cause them to water involuntarily. I miss the age of magazine-supplied type-in programs, but not that part of it.

What do you get when you spend a grueling half-hour typing in two pages of numbers written by a group who describes themselves as a gang of idiots? Something genuine useful like Compute’s Speedscript word processor? A unique and interesting two-player game like Basketball Sam & Ed or Laser Chess? The author of the text of the piece is coy about what the result will be, but encourages readers to send a printout to the MAD offices. I wonder how many did? Probably not too many; a thread on the AtariAge forums implies that there’s an error in the listing that causes the program to crash about two-thirds the way into its run. One participant remembers that MAD published a correction a few issues later, but if they actually did I can’t say.

If someone does get it to work, what then? If you’re familiar with MAD you might can already guess what the result, a picture drawn in hi-res on your screen, will be, but to save you the effort of setting up an emulator and entering over a thousand numbers one at a time, here’s a Youtube video of the program in action:

The preview gives it away. WHAT, ME WORRY? It’s a pretty good representation!

The video links to the blog post on Meatfigher.net that I learned about the program from. Meatfighter’s a pretty cool little blog and it’s worth rummaging through their archives! atariprojects.org offers an emulator disk image with the program already entered for you. dougx.net offers a version of the program written in Javascript that renders its output in your browser window. Without the (relatively) low resolution of the ancient computers that ran the original programs I feel the result loses something, but at least you don’t have to type it in yourself.

The MAD Computer Program (meatfighter.net)
Video of output from the MAD Computer Program (Youtube, 1 1/2 minutes)

Home Computer Graphic Character Sets Compared

8-bit microcomputer graphics were, compared to the graphics cards and chips we mostly use today, pretty limited. While machines like the Commodore 64 and Atari 800 allowed for a fully programmable display, not all devices of the age provided for that.

One solution was what I am told is now called semigraphics, which means using generic characters that are pre-defined by the system in combination with each other, piecing together larger images from symbolic building blocks.

ASCII Art, that fading art form created to make imagines on terminal displays, is a form of semigraphic. The IBM PC character set supported semigraphics mostly through its famous Code Page 437, which provided a variety of line-drawing characters , but looking at it it’s evident that it wasn’t intended for general graphic use.

Different platforms from the time varied widely in their support for graphic characters. Let’s take a quick look at what the options were.

Apple

The base Apple II had a very limited character set:

Images in this post taken from Wikipedia

The Apple II’s character offers little opportunity for graphic use. Of course the Apple II is a miracle through and through for being designed almost entirely by one person, Steve Wozniak, and that includes its character set. Note that it doesn’t neglect reverse video, and even has hardware support for flashing characters. Still though, not much you can do with it other than repurpose punctuation and letters.

PETSCII

The PET and successors, by contrast have an excellent character set for makeshift graphics. The image above is of the Commodore 64 version, but the same graphics are used on old PETs, the VIC-20, the Commodore 128, and even the TED-based machines, the Plus-4 and Commodore 16.

While they’re not reflected in the above image, the whole character set can be reversed too. These machines reverse characters by, simply, duplicating the whole set in ROM as negative images.

PETSCII contains:

  • Four playing card suit glyphs
  • A decent set of line-drawing characters, with all intersections both sharp-edged and curved corners
  • Diagonal slopes, diagonal lines and crossed diagonals
  • Horizontal and vertical lines at different places in the character cells
  • Frame corners, which combined with the lines can make decent rectangles
  • Horizontal and vertical bars at several different widths
  • Half-tone checkerboards and half-character checkerboards (on PET systems these have a single-pixel grain, but on later machines the checkerboard squares are 2×2 blocks)
  • 4×4 blocks in enough combinations that, combined with their reverse versions, can be used to approximate a 80×50 pixel display with plain characters
  • Symbols for English pound and Pi

PETSCII is one of the most versatile character sets from the time, and you can do a ton with it with some thought and ingenuity. There used to be a Twitter account (in the days before the Muskening) that posted images of robots made out of PETSCII characters. And because the character set is included in ROM, one doesn’t have to create their own character graphics, using up 8K of system RAM to hold them, to have rudimentary graphics. (In fact, the original PET didn’t even support redefining the character set, so PETSCII was all you got.)

ATASCII

Did Atari consciously follow the naming of PETSCII, with their own self-branded ATASCII? Both are riffing off of ASCII, which stands for American Standard Code for Information Interchange. So I guess PETSCII, going by Commodore’s own claimed meaning for PET, means “Personal Electronic Transactor Standard Code for Information Interchange,” which is pretty terrible. But the ATA in ATASCII makes even less sense, since ATA obviously is just the first three letters in Atari.

While it has nowhere near the sheer number of graphic characters that PETSCII has, it had a decent number, including line drawing, slopes and diagonal lines and playing card suits. Of particular note is that the Clubs symbol has the same hole in its middle that it does in PETSCII.

TRS-80

Wikipedia doesn’t offer a screenshot chart of all the symbols of the TRS-80 set, but it does an HTML Table display, which the above is excerpted from. The only graphic characters it has are these off 2×3 cells, which are like the 2×2 blocks in the Commodore set but with an extra row. This gives its screen slightly finer resolution.

The TRS-80 had fairly basic graphics, it seems: those characters appear to have been it as far as graphics goes. The page I saw that described its capabilities even had a name for those blocks: squots. I think that’s a perfectly fine name for these kinds of boxes, whether it’s on a TRS-80, Commodore 64 or other machine.

Sinclair ZX-81

The ZX-81 had a very limited character set. While it has checkerboard and 4×4 block characters, their inclusion comes at the cost of an apostrophe, an at-sign, and even an exclamation point.

The following Spectrum removed the checkerboards, but added the exclamation point and apostrophe, as well as a lowercase alphabet. Still no @ though.

DOS Code Page 437

This is the one that most of you probably already know. It has its own version of squots, but they’re incomplete: it doesn’t have quarter-box or squot-grained checkerboard characters, tlhough it does have three forms of half-tone, a rather extra assortment of double-lined box characters, playing card suit glyphs, and a number of unusual characters up above that will be very familiar to anyone who played PC Rogue.

DOS Code Page 437 was in many ways the end of the venerable tradition of character set graphics. Neither the Atari ST nor Amiga had much use for general purpose character graphics, instead choosing to use their sets’ spare capacity for international characters, a noble offering, but less useful for graphic use.

It is worth noting some of the characters in the ST’s set, though:

Some miscellaneous glyphs like arrows, an X mark and checkbox, a bell and musical note, the Atari logo in two characters, a bunch of digital readout numbers, and four characters that seem to form a face. Here, I’ll piece it together for you:

Who might this handsome person be? It’s a little hard to make out at this scale, but it’s intended to be a pixel-art representation of “Bob” Dobbs, icon and symbol of the Church of the Subgenius!

It’s not a good set of squots, but it’s not bad.

M.U.L.E. Turns 40

Dani Bunten’s classic economic simulation M.U.L.E. is one of the all-time greats, still fairly obscure even among people who know and talk about video and computer games, but hugely influential. Wikipedia tells us that Shigeru Miyamoto considers it an influence on the Pikmin games (although other than in theme I really don’t see it).

There are three current ways to play M.U.L.E. One is Planet M.U.L.E., an official port sponsored by Ozark Softscape, which is several years old, and I was certain I had posted here about before. It’s a proper update with new graphics and a lot of character. A thing about M.U.L.E. is that the original versions were intricately designed in a lot of ways, not just in game rules but the little details. The way the phase ending noise speeds up, the exact difficulty of catching a Wampus, the speeds with which players walk through terrain, the many details of auctions, even the time it takes to outfit a mule and leave/enter town, it’s all finely calculated. You can tell that Dani cared deeply about the game, and it’s a polished as any game I’ve ever seen, and that’s the old 8-bit computer versions. Planet M.U.L.E. isn’t as polished, but it’s still very nice, and you can tell its makers thought hard about it. It offers both local and online play.

Sadly, Planet M.U.L.E. seems to be on life support. While games can still be played, and the automated best player posts still go up on its blog, it’s not gotten an update in years, and it’s even possible they’ve lost the source code.

One legacy of Planet M.U.L.E. is a wonderful Youtube video they made that explains the game and how to play. It’s a great introduction:

M.U.L.E. Returns was a mobile port. It has a website, that’s still around, but apparently none of those versions are available. It’s got a page for a Steam version, but it’s not available despite the original game being released in 2013. The site claims it may come back some day, but it cannot be purchased currently.

Then there’s the new roboanimal on the block, M.U.L.E. Online, which is on itch.io for a very reasonable $5. It has the blessing of Ozark Softscape, and is a near match for the Atari 800 version. You won’t get any improved graphics or sound here, but you will get a game that copies the original very closely, which is perfectly fine in my opinion. It offers local single and multiplayer, as well as internet-based online play. They also promote a board game version of M.U.L.E, which I’ve long wanted to try!

Or there’s emulation. Back in college I played M.U.L.E. with roommates via an Atari 800 emulator burnt to a Dreamcast disk, a great way to play if you have the system, controllers and means to construct the disk because the Dreamcast has four controller ports. (M.U.L.E. is by far at its best when you have four people playing.) The Commdore 64 and IBM PC versions were also made by Dani and the others at Ozark Softscape. The C64 port is close to the Atari 8-bit version. I don’t know about the DOS PC version. I can say that the NES version made by Mindscape is a terrible version, while sadly possibly the most-played because of the great popularity of the NES. If you tried that version and wondered what the fuss is about, you should seek out the Atari 8-bit version and play it before writing off the game entirely.

World Of Mule is a fansite dedicated to M.U.L.E. in all its forms. For its 40th anniversary, they’ve published a long retrospective on the game, its history and the new versions. (That’s where the above image comes from.) It’s a fitting tribute to one of the most influential computer games ever made.

Long ago, on primordial wiki-like site everything2.com, I personally wrote a long examination and play guide to M.U.L.E. While my writing style back then was pretty crazy, I think the information holds up. If you have an interest, you may want to take a look.


Planet Mule ($0, Windows, Mac and Linux)

M.U.L.E. Returns (versions currently unavailable)

M.U.L.E. Online (itch.io, Windows, Mac and Linux, $5)

World of M.U.L.E. (carpeludum.com)

M.U.L.E. The Board Game (boardgamegeek item page)