DungeonLords: A Type-In Marvel

by Chris Federico and Adam Trionfo
(September 22, 2014)

This is an overview of DungeonLords by Brian Douglas Bradley for the Atari 8-bit computers. The game was written in 1986, but it wasn't released until ANALOG Computing published it in December, 1988.

DungeonLords is a rarity among the countless type-in programs that appeared in magazines from the 1970s through the '90s, in that it's an immensely fun, smooth game without any glitches. My guess is that Brian Bradley thought, "Tutankham is a great game in some ways, but it would be better if you could fire in four directions instead of only two, and it weren't unreasonably difficult." That had always been my assessment as well, so I was delighted to have stumbled upon Bradley's machine-language game. The levels are smaller than in the aforementioned 1982 Konami/Stern arcade game, but the movement and other mechanics are extremely fluid.

The best kind of rip-off is one that's more fun than the original game. You can indeed fire in four directions in DungeonLords, and this of course precludes the need for the Flash weapon in Tutankham. Your objective is to grab all present keys, which unlock the doors blocking your northeastward exit to the next level. You can optionally grab some or all of the large dollar signs that are also scattered throughout each maze. Every four levels, the exit is replaced with a prisoner, who must be rescued before you can leave (back through the entrance now, and this always stands to the northwest). Because they're giant keys, you can only carry one at a time, and each serves as a blockade for you -- if you can't pick it up yet -- as well as the assorted snakes, baby elephants and ducks. Well, that's what they look like to me.

In fact, as I tend to rely on my imagination in lieu of the provided story that someone has come up with (arbitrarily, as that someone is usually not the programmer), your character has apparently left a bunch of money and other valuables in his multi-level basement. The weird pests have long been neglected, and they've not only reproduced in ridiculously large numbers, but have also evolved to the point at which they've learned how to build teleportational entrances.

So what do we learn from this? Don't leave your money and keys scattered haphazardly around a large, underground area. That's just asking for trouble in Game Land.

At least there's surprisingly good lighting, and you've brought some kind of magical, unlimited-ammo gun down here with you. It can be fired gloriously rapidly, and the game's immense playability chiefly depends upon this. Bradley was also conscious of getting some other highly significant control details right. Many programmers don't seem to realize, or are too lazy to address, the fact that even maze games (and others that also involve only four directions of movement) should entail the recognition of diagonal directions, so that smooth transitions between cardinal directions are possible; the player shouldn't have to let go of the controller between right angles. Diagonals should be acknowledged in the code to the extent that the player will even change direction if he attempts a turn before he's actually there. By way of handy example, arcade Pac-Man allows for this.

DungeonLords does as well, and it's a good thing, as it's very fast. It's also one of those games in which you can move and fire in different directions, or fire in any direction without moving, as long as you're holding down the fire button. The superb control is the major strength of this thorough, well balanced game.

Amazingly, the random element is here as well. Each level's layout and placement of keys and dollar signs (literal ones -- they even light up, until you darken them with greed) is different every time you play. That's some serious programming! While you're playing the game for the first time, bear in mind that the first sequence of mazes imposes little difficulty, whereas the second involves a very steep increase in bad-guy traffic.

I wonder if Brian Bradley went on to work at a software company. Depending on which one it was, that might have been a step down, regarding the amount of time he could spend on getting everything right. I wasn't able to find any information about him, or any other games he wrote.

My high score as of 2014 is 13,358 (Maze 10, overall -- i.e. level 3.2). Thanks so much. Oh, you're too kind. Stop it. Thank you.

Granted, the game has a curious title; the creatures don't seem to be lording over any dungeons. I, however, am the Basement Monarch. CF

Type-In Programs: Are They Worth Playing?
DungeonLords Magazine Artwork

I've played thousands of different video games since I was first introduced to them in the late 1970s. I've encountered them in arcades, homes, convenience stores and eateries of all sorts. I've played them on all manner of devices. I've seen good games, bad games and games that are so bad that they're good. Most games I've played were created to make money. It takes an enormous amount of time and effort to make these lights flash before us on the screen. It takes even more energy to allow us to interact with those flashing lights in a manner that we can enjoy.

I enjoy video games of all sorts and from every generation of computers and consoles. Encountering any new game is like unwrapping a present. It might be loved, it may be hated, but no matter what, it's going to be fun to give it a whirl for a while. The more time you're willing to invest in a game, the more you're likely to get out of it.

A game category that is often ignored, but which I enjoy rummaging through, involves games that were originally type-in programs from books, magazines and even newsletters. Many of these were written in BASIC, usually seen as an inferior language for games. In the case of a fast, arcade-style game, this usually is true, but sometimes, you find surprises. It's easier to find polished, enjoyable type-in games when they've been written in machine language -- which is what nearly all commercial game software was written in for 8-bit computers.

DungeonLords - Screenshot - All Monsters
 Level 1 starts off very easy.

Playing games from magazines and books has always fascinated me. This is because my first encounter with home computers during the early 1980s was via my first owner's manual. These manuals usually taught BASIC. When I first saw BASIC program listings, they seemed like so much nonsense -- and nothing but trouble! Programs were pure messes of seemingly random characters; it was magic that if you typed in one of these messes, something, anything would happen at all.

It didn't even have to be a game. They were all fascinating! Even tracking down the typing errors was a game of sorts. Nowadays, I still like to indulge in that simple pleasure by looking at old magazines and picking games that look interesting. I can't imagine that I'd type in one of these games today, but with the Internet, they can nearly all be found with simple searches.

I didn't encounter DungeonLords for the Atari 8-bit computers via this method. Instead, Chris explained the game in a video that he gave me for my birthday (awesome gift!). After watching him play and talk about what he thought of the game, I knew that I had to experience it first-hand.

I may have played DungeonLords during the 1990s, when delving into online PD collections. If I did see it, then I've forgotten my first impression. It would have been under less than ideal circumstances; I would have had no "manual" (i.e. the magazine article), so I wouldn't have known the rules -- not that this game even requires them.

Exploring PD collections, especially magazine type-in games, is especially satisfying for me. There are often excellent art and prose that accompany even mediocre games. It's also not uncommon for brilliant art to supplement games that are absolutely no fun at all. I guess the same is also true in the world of commercial games. There are few encounters with type-in games that surprise me, but DungeonLords is one of them. It's quite a fantastic achievement, and is easily one of the best type-in games that I've played for the Atari 8-bit computers. For this reason alone, I'd say type-in programs are worth tracking down and trying out; you just never know what you're going to discover that someone created in his spare time.

Would You Have Typed-In DungeonLords?
DungeonLords - Screenshot - All Monsters
 These are the three enemies.

Most books and magazines published machine-language programs as BASIC listings. The user would type the program into the computer as hundreds of DATA statements. This made entering it difficult and prone to errors. DungeonLords was published in 1988, by which time most every magazine had some sort of method that helped to verify that a program was being typed correctly. Such is the case here. DungeonLords needs to be typed in using another ANALOG Computing program called M/L Editor. This utility checked each line of code for errors as it was being typed. When you were done entering the program, it should have been error-free, and loaded and run correctly the very first time.

One drawback to the M/L Editor was that it required a disk drive. Tape users who wanted to type the program in were out of luck! This was a game published in an American magazine, so that was okay. It would have been unusual in 1988 for a home-computer owner in America to only be using a computer with a tape drive. If this program had been published overseas (say, in England), then I can imagine the magazine's letter section being full of complaints from unhappy, tape-only computer users. Luckily, if you had a friend with a disk drive who typed the program in and saved it onto a tape for you, then it should have loaded fine from that medium.

DungeonLords - Sample Screen (Complete Map)
 So that's how the total maze looks!

DungeonLords is about 5.7K. This makes it pretty hefty for a magazine type-in game. Taking one look at the closely packed four and a half pages of BASIC data statements (which is how the machine code was listed in the magazine) would have made most people skip typing this one in. Don't worry, though -- you don't have to type the game in yourself. It can easily be found on the Internet -- or, even better, download it right here:

Analog (67 - Dec 1988)[With DungeonLords].zip

DungeonLords will not automatically start from this December 1988 ANALOG Computing disk image. However, Atari DOS 2.5 is on the disk, so the game can be loaded from the DOS menu. For those unfamiliar with loading a program from Atari DOS, then follow these few steps:

  1. Start an emulator of your choice (I prefer Altirra).
  2. Mount the disk image in disk drive 1.
  3. Restart the emulated Atari. There's no need to boot without BASIC, as the game will work either way.
  4. If BASIC starts, then type "DOS" to enter the DOS menu. Otherwise, the DOS menu should appear automatically.
  5. From the Atari DOS menu, use the "BINARY LOAD" option by typing "L" and hitting return.
  6. When prompted with "LOAD FROM WHAT FILE?," type "DUNGEON.OBJ" and hit return.
  7. The game will now load and run.
What DungeonLords Is All About
 Tutankham looks similar to
DungeonLords, but is not the same.

You play as Jon Russel, a freelance soldier who must rescue his imprisoned friends from the DungeonLords. Gameplay takes place in a scrolling maze that you see from above. There are monsters after you. Yeah, you guessed it: Avoid them or shoot at 'em. The game gets harder as you progress.

Don't be surprised if it sounds like you've heard all of this before. This is the background of an alarming number of early-to-mid-'80s games, type-in and otherwise. The difference here is that this isn't just another me-too copy of any one game. Anyone familiar with the 1982 arcade game Tutankham won't be able to help but make the comparison. While they have similar gameplay, DungeonLords is certainly not a complete knock-off of the arcade game.

Just Enough to Play the Game

The goal of DungeonLords is to collect the keys in a maze. You do this while avoiding three different kinds of enemy. You need keys to open locks (usually two of them), one at a time, at the exit. Then it's on to the next level. On every fourth level, you must rescue a prisoner and leave through the entrance. That's it. You don't really need to know anything else; but, of course, you probably do want more information than that, which is why the manual is provided here in both the original (scanned) and text formats:

DungeonLords (Brian Bradley)(ANALOG Computing 67 - Dec 1988).txt

DungeonLords (Brian Bradley)(ANALOG Computing 67 - Dec 1988).pdf

Did you still decide to skip the manual? Well, don't miss this alternative way of playing the game. Plug another controller into the second joystick port to allow (as the manual says) "a friend to join you." This other player fires for you while you move around the maze. At least, that's what the manual says.

This "friendly approach," as I'll call it, doesn't make DungeonLords easier or more fun to play. Every arcade-game player read between the magazine's lines and knew exactly what was being stated. This two-control feature was included for hardcore game competitors that wanted to play Robotron: 2084-style! Playing with two joysticks isn't easy, but it can be done.

Including a second method of control that requires, in essence, a specialized homemade joystick holder, shows DungeonLords's hacker heritage; I love it! This new game element provides an open door for inventors. I can imagine the Atari experimenter who, around Christmas of 1988 (when DungeonLords was published), went into his garage and cobbled two joysticks into a single controller that allowed him to set high scores that no player could approach when playing via the one-controller method.

Comments, Hints, Tips and Curiosities

You won't have to grow to love DungeonLords; you'll like it right away. But you'll begin to notice more subtleties as you play the game longer. These are what make a nice, fun type-in game into something so much better than the sum of its parts. For instance, take the player's character, Jon Russel. He has some really simple-looking movement. He is blocky and he doesn't have much animation (he's quite small), but he does run. In fact, he moves so quickly, and the screen scrolls so smoothly, that it almost looks as though he's ice-skating around a rink!

The keys can appear in some particularly nasty places, such as directly below a teleportation device. On early levels, when there aren't many monsters, this isn't such a problem; but later, it is quite difficult to get a key from there. You can predict when to make an attempt for the key, since the monsters only come out when the teleportation device is red. Still, it can be pretty tough. Luckily, this has only happened to me a small handful of times.

I like that a key that you've picked up is kept after you lose a life. There are so many other games, both commercial and (especially) type-in, that would require you to collect it again. That would have ruined the fluidity of the game. It might not be as "realistic," but this is a game. I'm not looking for reality here; I'm looking for fun. Collecting the key again after you've died would put a ding in the fun department. I'm glad that ding doesn't exist.

After rescuing a prisoner (which occurs on every fourth level), the game's difficulty increases dramatically. This is good, as the first four levels are kind of like an introduction to the game. They're easy. After you get used to the game, those first four levels could be a little too easy...except that they work as a breather after you've gotten to high levels and then get wiped out. After unsuccessfully playing on those tough later levels, it's time to relax and play those first four laid-back levels, enjoying them while you can.

The amount of treasure available to collect per level increases as you progress further into the game. If you make sure to get all of the goodies on higher levels, then you'll gain more points than for achieving the main goal of exiting the level. The points really begin to add up, so make sure to collect every bit that you can. At 10,000 (and for every 10,000 points thereafter -- if you can make it that far!), you get a free man. Collecting all treasures on each level is truly rewarding when you're down to your last life and you acquire that free one.

The rescue-the-prisoner levels only contain one type of monster: snakes. No matter which monster is destroyed, or how far you progress in the game, all monsters are just as easy to destroy, and they're all worth one point each. I'm curious as to why the programmer decided to only confront the player with snakes on the Prisoner Levels. Maybe it is a gentle reminder. Perhaps the programmer is saying, "Hey, buddy. You've got a mission on this level. It's time to save one of your friends, so get to it!"

Don't forget your goal! After rescuing the prisoner, you must find your way back to the door through which you've originally entered. If the maze has a bottleneck, where all of the baddies are hanging about, then leaving a level can be difficult and take longer than you expect. On more than one occasion, while on my way back from freeing a friend, I've been waylaid by the enemies, and begun fruitlessly searching for a key again. I've forgotten that I was looking for a way out! It isn't until I don't find a key that it dawns on me that I was supposed to exit the maze. How embarrassing.

If you die after rescuing the prisoner, but before escaping the maze, you'll start the level over with the prisoner already rescued. You just have to walk back into the entrance a couple of steps away, and you've completed the level. You'll be done in a second. Nice!

I discovered a small bug in the game. It doesn't interfere with game play, and is actually kind of neat. If you're firing your weapon when you die, and the bullet is still traveling across the screen, then the bullet will finish its trip across the screen when you start on your next life. This is usually nowhere near your starting position.

The Game Can't Really Be Perfect, Can It?

It's hard not to pick on the little things in DungeonLords. That's because I'm comparing it to commercially released games, not to other type-in games. That speaks highly of this game. Here are some game characteristics that bother me. Some of these are typical of the time period when this game was released. Still, they're worth mentioning.

The fire button would have been very useful on three extra occasions in this game. First, you must push the Start key to begin a game or replay. You can't just press the fire button. This requires you to play near the computer. Second, at the end of a game, the player's score is displayed. There is no way to skip this screen; you must wait for it to pass. It doesn't take long (about five seconds), but it would have been nice to just skip it with the press of the fire button. Third, if you get off to a bad start, you must finish the game. It would be nice if you could press Start to reset the game during play. As it is, if you want to start over, then you must lose all of your men first.

There is no pause feature in DungeonLords. Pause would be a great addition to the game, but like nearly all type-in games that I've played, DungeonLords doesn't allow you to freeze the game. This isn't just missing from type-in games. Many, perhaps most, commercial games on 8-bit computers are missing this feature that has become completely standard. Maybe it was the later game consoles, with their easy-to-reach Pause buttons, that made the feature seem like a necessity. So in most cases on 8-bit systems, when we're called away from our computers during our games, we lose life after life until, finally, there is nothing left except the title screen to greet us when we return. I miss you, pause feature; I really do!

There is no on-screen indication that you've already collected a key. On the occasional later level, I've picked up a key without even realizing it. There is a pick-up noise, but when you're frantically firing at the monsters, it's easy not to hear it. I found myself looking for a key that I'd already collected. There should be a Key Indicator that displays whether or not you're carrying a key. Not having this indicator can make later levels confusing and frustrating. You get used to it, but unlike the pause key, which would have been a nicety, this feature should have been included as standard.

There is no time limit. Usually, this is great! After all, who wants a time limit? However, this otherwise great perk could allow an easy cheat for a very high score. Although the baddies are only worth one point apiece (versus advancing a level, which is worth 1,000 points), a determined player could hold the fire button down in certain areas and just fire away, killing baddies for the ultimate(-ly lame!) high score. Also, a time limit is a great way to award bonus points when the player has managed to exit a level very quickly.

DungeonLords's sound effects are sparse, or at least they seem to be neglected. There are sounds when dying, picking up a key, collecting treasure, firing the Disrupter Pistol and rescuing a prisoner. There's also a short, non-intrusive tune that plays after you've rescued a prisoner. The only effect that's really missing is a running sound. Without it, unless you're firing the pistol or picking up a key, there is no sound at all. In reality, we probably wouldn't be able to hear our hero's shuffling feet, but that is of little consolation. One last sound is missing. Where is the noise that I should hear when my character is picking up all of the dots in the maze? Ah, wait. That's a different game.

Let's Have More Fun! (Uh, I Mean, Let's Cheat!)

If you use the Altirra emulator, you can disable the Playfield Collisions and still play the game normally. The difference is that...the Monsters pass right through you, and yet you can still shoot 'em. Not too fair, now, is it?! Everything else in the game still works as expected. This cheating method allowed me to see that on levels 8, 16 and 24, there are three locks between you and the prisoner!

On much later levels, as the baddies move faster and faster, the game begins to slow down -- you move noticeably slower, but the game (thankfully) doesn't suffer from jerky movement; nor does this slow-down interfere with game play. It doesn't seem to occur until the game is throwing all it can at you. The pace is so fast that only the very best players could possibly reach this far. I'd say that this slow-down begins on the late-teen levels and grows slower with each progressive level.

On Level 24, I turned the Playfield Collision back on. I wanted to see how long it would take to earn 1,000 points (the same amount for advancing a level) just by killing the single-point baddies. It took just under five minutes. I stayed in the entryway, held the button down and pushed downward on the joystick. All of the baddies just kept coming and coming and...well, you get the idea! It wasn't very exciting, but it sure was interesting to watch all of those nasty little buggers coming my way. Where do the DungeonLords get all of these enemies from, that they can just allow them to be slaughtered?

On the highest levels that I reached via cheating, the creatures move so quickly that the game is impossible to play -- at least with one joystick. It actually may still be playable with two joysticks (one for movement and the other for firing). It would still be insanely difficult; I'd love to see someone play this game using either method, without cheating, after about Level 20. Any player that could do that would have some incredible skills.

Going Further; Seeking More

This next section isn't part of the review for DungeonLords. If you want to know if you should play the game, then you're done reading. Play it, as it's a fantastic example of what a type-in game is capable of doing. If you'd like to look a little beyond just the game play, then continue reading.

Mac65 - Cart (orange)
 MAC/65 6502 Assembler on cartridge

Are you interested to know how DungeonLords ticks? If it was written in BASIC, then that would be easy. You would simply type LIST and examine the code. It's not so easy with machine-language programs. Luckily, this game was published by ANALOG Computing, one of the very few magazines that nearly always published each program's source code for those who knew how to program in machine language. The source code wasn't usually published by the late 1980s, because of the lack of space (ANALOG Computing had dwindled in page count), but DungeonLords and its 6502 source code was included on the magazine's monthly disk.

A quick overview of DungeonLords's source code shows that comments are pretty thin. This was probably done to lower the overall size of the code, and not because the programmer didn't want to include better documentation.

I assembled the game's source code, but it did require background reading and experimentation with two assemblers. The code may have been written with Atari's own Assembler Editor cartridge (from 1980), but I've assembled the code using 1984's MAC/65 assembler from OSS. It's usually considered the best assembler for the Atari 8-bit computers, and I've always been curious about it. This was an excellent time to give it a test spin. MAC/65 is backward-compatible with Atari's Assembler Editor, so absolutely no changes were needed to assemble DungeonLords.

M-65 Assembler (Program Listing and Assembly)
 Game listing and assembly

I assembled the source code without any hitches. I thought that an executable file would be created once I'd assembled the program, but that was only partially true. The code does assemble without errors, but the game will not run. After a quick examination, I saw that the source code wasn't complete (the end of the file says as much). However, most of it is available for examination.

According to the game's source code, here's what isn't included:

  1. "The Display List starts at: $2FB4." This immediately follows the program logic.
  2. "A redefined Character Set starts at: $3000." This must be for the small font, and possibly the enemy graphics.
  3. "Miscellaneous data fills locations $33C0 through $3881."
  4. "PMBASE is located at $3800."
  5. The Action Screen is located at $4000.
DungeonLords OBJ (HxD Hex Editor)
 DUNGEON.OBJ viewed in
 Windows HxD - Hexeditor

I'm not sure what the "miscellaneous data" is -- maybe a movement table? I also don't know what "Action Screen" means. I'd imagine that the display list was a separate text file. The new character set was probably created in a font editor (maybe in Compute!'s Super-Font Plus -- just a guess), and the Player/Missile "sprites" were also probably made in a P/M editor (maybe a commercial one -- or one from Antic or ANALOG). All of this "extra" required data would have eventually been merged with the executable to create a runnable program. The data that is not in the source code is included on the ANALOG Computing disk, but only as part of the DungeonLords executable game. In order to use that data, you would have to examine it in a hex editor. I choose not to investigate any deeper into the game. If you're interested in doing so, I've included plenty of files to download and try out for yourself.

The source code and its listing (the assembled results of the source code) for DungeonLords is included here in three different formats (PDF, ATASCII text, and ASCII text):

  1. DungeonLords source code:

    1. DUNGEN1 (DungeonLords Source Code)(ATASCII).pdf

      This PDF version was created using the ATASCII file contained on the original ANALOG disk. A large font was used to preserve the original 35-page count.

    2. DUNGEN1 (DungeonLords Source Code)(ATASCII).asm

      This is the text (ATASCII) version. It is the exact file as on the original ANALOG disk; it has only been renamed. All special ATASCII characters and codes are preserved. This can be viewed on an Atari 8-bit computer, a computer using Atari 8-bit fonts (for example, Atari Classic TrueType Fonts by Mark Simonson), or in a special application that allows the viewing of ATASCII files (for example, ATASCIIView by Lee Hanken). This file will not display properly if you try to view it in a browser.

    3. DUNGEN1 (DungeonLords Source Code)(ASCII).txt

      This is the text (ASCII) version. This can be viewed easily in an ASCII text editor or word processor. It has been converted from Atari ASCII into universal ASCII, and thus some formatting, special characters and codes may have been lost.

  2. DungeonLords source code listing:

    1. DUNGEN1 (DungeonLords M65 Assembly Listing)(ATASCII).pdf

    2. DUNGEN1 (DungeonLords M65 Assembly Listing)(ATASCII).lst

      This is the Atari text (ATASCII) version. It is the exact file as the one that was output from MAC/65; it has only been renamed. This file will not display properly if you try to view it in a browser.

    3. DUNGEN1 (DungeonLords M65 Assembly Listing)(ASCII).txt

      This is the text (ASCII) version. It can be viewed easily in a word processor or ASCII text editor. It has been converted from Atari ASCII into universal ASCII, and thus some formatting, special characters and codes may have been lost.

  3. DungeonLords object code (executable program):


      This is the DungeonLords executable program. It is the exact file that is on the ANALOG Computing #67 (Dec 1988) disk. This machine-language game file can be loaded into an Atari emulator and played, or examined in a hex editor on an Atari or any other computer. Note that this object file is not an Atari disk image.

Examining how classic games work can be interesting and fun. Using the information and links provided in this final section of the article can allow you to gain a greater appreciation for what it takes to make all of those baddies come after you -- and what makes you actually want to keep coming back for more after they inevitably catch you.

My Personal High Score

One last thing. My highest score so far (as of September 10, 2014) is 11,883. I'd love to get better, and I'll continue working at it, for this game is a true keeper. AT