Chasing the Dream: The Tribulations of a Bedroom Game Programmer - Parts I and II

Bill Loguidice's picture

Author and Multimedia: Nickolas Marentes
Editing: Bill Loguidice and Matt Barton
Online Layout: Bill Loguidice and David Torre
Special Thanks: Matthew Reed of the TRS-80 Emulator Web Site
Comments: Visit the author's Website or send an e-mail to nick@launch.net.au
Emulation Notes: Game ROM/image files have been provided within the article for four TRS-80 Model I programs. According to the author, presently, the best emulator to run these files is called TRS32, which is for Windows. The emulator is shareware and payment provides extra features such as hard drive and high resolution graphics support. These features are not needed to run these games. The emulator is almost 100% faithful to a real TRS-80, save for a small issue with timing where the title pages for these games seem to stay up for too short a time. Otherwise, the games run perfectly. Click the following system name for the required TRS-80 Model I and Model III system ROMs. While additional ROM/image files are not provided here, please note that none of the Color Computer emulators presently run Neutroid 2 correctly because they don't support the semigraphic video mode that that game uses. The games for the Color Computer 3 do not run correctly on any emulator except MESS. For these and other downloads, as well as to purchase some of the actual software, please visit the specific page on the author's Website.


My name is Nickolas Marentes, and I live in Brisbane, Australia.

In 1979 I was introduced to computers. This event would become a major turning point in my life and set the stage for an ambition to become a videogame programmer. This is my story.

I have been an avid computer hobbyist for over 25 years. Over those years I have worked on many personal projects with the goal of creating successful computer products. This article will concentrate on my primary interest of videogame programming.

I have designed this article to be read sequentially from the first project to the last so you can see the progression of events, ideas and decisions that I made as time went on.

As I detail each project, you will read about my dreams and desires for each project, the challenges I experienced during their development and the inspiration and motivation behind them. I will show you how I achieved everything on a shoestring budget using very limited development tools. I will cover the post product development stage which involved documentation, packaging and marketing, all of which I had to do myself.

Those were days in which it was easier for one person to create a small software company operated from a bedroom office to create and market a few videogame programs. Today, the games are far more complex and software houses employ many people and cost up to millions of dollars to produce.

I enjoyed doing each of these projects, and I am grateful to those who supported my efforts by purchasing my products. This article is my way of thanking them for that support.

INTRODUCTION

Nickolas Marentes
Nickolas Marentes

I started with computers back in 1979 when I would drop in to the local Radio Shack/Tandy store after school to play with the TRS-80 Model I that was on display. In those days, computers were new and the store manager had no idea how to use one so having a kid sitting at the computer writing programs was a good way to demonstrate the product.

"See, even a kid can use one!"

Character from Rupert Rythym
Character from
Rupert Rythym

It was a mutually accepted scenario; he didn't have to worry about the customer finding out that he barely knew how to turn the thing on so there was always a chance of making a sale. I had the opportunity to type in my BASIC program listings that I would write up during classes at school and as a bonus, I got to show people how smart I was. An ego and an education in one package, what more could I want?

The first TRS-80 was known as a Level 1 BASIC system with a whopping 4K of RAM. That's right "K". I got so good at writing very tight multi-statement lines, that a page of code had no defined line breaks or indentations, the screen was just one solid block of text. After about six months, I had reached the limits of that machine. I had squeezed every ounce of RAM and speed that I could draw from it, and I felt that I couldn't be topped.

Then one fateful day, I went from fame to lame in the blink of an eye.

There was this other kid who came into the store every now and then to tinker with the machine. Like me, he didn't own his own computer, but, unlike me, he didn't spend his free time programming "Star Wars - Shoot the Tie Fighters" type games in BASIC. You know the kind I mean, the ones that used ASCII characters to represent Tie and X-wing Fighters.

Tie Fighter = IOI
X-Wing Fighter = >O<
Vader's Fighter = (O)


He comes in one day, loads up a cassette tape of T-BUG — a monitor and debugging program for entering hexadecimal machine language code — and executes it. The piece of code he had created was only a few bytes long and all it was meant to do was to clear the screen to all white. In BASIC, I had devised ways of creating strings of solid block characters and printing entire lines to fill the screen. I was particularly proud of the fact I could "white out" a screen in under two seconds. But when this kid hit the ENTER key to execute his short piece of machine language code, it did an instant "white out" with no noticeable screen drawing!

I had met my match and from that day forward, I knew that I was destined to learn Assembly language programming. I knew that this was the secret to creating arcade quality videogames. I began to have visions of creating a software empire and creating some of the greatest games seen by mortal man! I was going to be rich, but more importantly I was going to be famous! A legend! A god!

TRS-80 Model I
TRS-80 Model I

After a few hours, the gas in my head wore off and I realized that before I could even start my trip "to the other side," I had to get myself a computer.

So, how was I going to convince my parents to part with $850 and buy me that shiny new battleship grey Level 2 TRS-80 with 16K of RAM, cassette data storage and sexy monochrome monitor?

I did what every kid did in such a situation...

...I told my parents that it would help with my education...it worked!

I immediately got to work. This TRS-80 had a more advanced version of BASIC than the one I was familiar with in the Tandy store. My machine also had 4 times more memory! Yep! I was gonna be the guy to light the world on fire with the most powerful TRS-80 on the block, all 16K of it! Okay, 16K ram may seem a bit on the small side today, but I definitely did have the most powerful TRS-80 on the block, possibly even the entire neighbourhood! You see, there weren't very many people with their own TRS-80, let alone their own personal computer. Back in those days, there was a lot more choice. There were TRS-80's, Apple II's, Commodore Vic-20 and 64's, Atari 400 and 800's, and Sinclair ZX-80's to name but a few.

They were the good old days of the home computer industry. It wasn't just a matter of what game was the best, it was also a matter of which version of a game was best. For example, there was a version of Zaxxon created for almost every system available at the time. Some versions stood out as being better than others due to the skill of the programmer as well as better hardware capabilities of the host computer. A skilled programmer of one version could push the boundaries of systems with more limited capabilities to create a better version of the same game than that running on a more powerful system.

It was also fun to challenge other users about their choice of computer.

"Is that a graphic pixel on your TRS-80 or did you stick a disk label on your screen!?"

"I can load a program faster from tape than you can load it into your Commodore 64 via disk!"

"Hey look! If I blink my eyes at the right speed, I don't see the screen blanking on your ZX-80 anymore!"

So after mastering the new Level 2 Basic and learning a bit about Assembly language by studying a magazine listing of a pong-like game written in Assembly language, I decided to show everyone what my TRS-80 and I were capable of.

I started a small software label under the name Supersoft Software which was later changed and officially registered as Fun Division. It was a small "cottage company" which I primarily ran by myself along with some help for a short time with a friend who contributed a TRS-80 game he called Moon Scout which was a clone of arcade Moon Patrol.

During the period from 1982 to 1984, I wrote seven commercial quality games on my TRS-80 Model I, all developed using a cassette player for data storage, no disk drive! If you have never used a cassette player for data storage, then you haven't experienced the sheer adrenaline rush that can only be had when waiting over 10 minutes to save your latest source code updates only to see it all crash into a heap because of a minor error that you missed. Arrrgh!

By 1984, the TRS-80 was showing its age so I decided to move up to something newer with high resolution and color graphics. Since I was already familiar with the Radio Shack/Tandy line, I did not want to waste time learning a whole new system so I chose to go with the Tandy Color Computer (CoCo) complete with 64K RAM and dual floppy disk drives. Although it wasn't as graphically impressive as many of the other competing systems on the market at the time, it had two important attributes. Firstly, it had what is considered to be the most powerful 8-bit CPU, the Motorola 6809. It was powerful because of its extensive instruction set and advanced interrupt handling. Secondly, the Tandy Color Computer had a large distribution channel via the many Radio Shack/Tandy stores, a fact that I hoped to exploit for my future Tandy Color Computer games. In 1986, Tandy released the Color Computer 3 with improved graphics, more memory and faster speed.

Tandy Color Computer 3
Tandy Color Computer 3

In 1992, Tandy decided to discontinue the Color Computer, so I decided to move on to the Commodore Amiga. Due to lifestyle changes, I never did create any software for the Amiga, but in 1997, the bug caught me again and I returned to the Tandy Color Computer. Via Internet Newsgroups, I found that a dedicated group of faithful users still existed. These were people who believed that the full power of this small computer had yet to be fully realised. It was also a way of bringing back the past and meeting with old friends to once again talk about their favourite 8-bitter.

I got to work and created several new games and achieved some important projects before finally calling it quits at the end of 2002.

What follows is a game by game account of my dream to become a successful videogame programmer.


Stellar Odyssey Packaging
Stellar Odyssey Packaging
Stellar Odyssey Title Screen
Stellar Odyssey Title Screen

Stellar Odyssey (1982, TRS-80 Model I)

I made up a name for my new software company called Supersoft Software (I later changed the name to Fun Division because I found that another company in England was already using that name) and wrote my first game, an adventure game called Stellar Odyssey. It was written in BASIC with a few machine language subroutines to speed up the graphics. For those who remember, it was modelled on games like Temple of Apshai and Rescue at Rigel from a software company called Automated Simulations, later renamed to Epyx. The best way to describe the game is that it was a combination of Rescue at Rigel crossed with a Scott Adams adventure...but with better graphics, sound and an easy to use command entry routine.

Here is the story pretext I created...

"Cruising through the tranquillity of space, you are awoken prematurely from suspended animation by the ship's on-board computer. Trouble lurks for the ship has stopped, power is low and the rest of the crew's tubes haven't opened yet. You must explore the craft, being cautious of any dangers that may exist so as to bring your mission back in control."

Pretty exciting don't you think? It sounds like the story intro to just about 90% of the space adventures at the time!

I had developed a simple command interpreter with a limited vocabulary of basic verbs. These verbs were accessed by the single press of the first letter. The following noun if needed, would be typed in full. For example, pressing 'G' would bring up the verb 'GET'. Then a noun such as 'PISTOL' would be typed in full.

Stellar Odyssey Game Screen 1
Stellar Odyssey Game Screen 2

The graphics were neat, too. When the command SPRINT is issued, your character actually walked, fully animated in monochrome low resolution graphics to the next 'square'. Likewise, when you fired, your character actually pointed his pistol and fired a bullet across the room. Very impressive — at least to me.

After completing the programming, I had to prepare it for sale. I had to draw up my own package artwork and duplicate my own tapes, write my own instruction sheets (printed on a small Tandy plotter printer), and sell it to anyone I could via user groups and small advertisements in local TRS-80 magazines. It sold for $10AU per package, and I still have my sales receipt books with my first software sale dated December 8, 1982.

These early sales only amounted to about 20 copies sold. I didn't sell enough to make me rich, but I was a kid and everything I earned was good pocket money. Besides, I was addicted! I wanted to sink my teeth into a 100% Assembly language game!

Cosmic Bomber (1982, TRS-80 Model I)

Cosmic Bomber Worksheets
Cosmic Bomber Worksheets

I began planning my next game. I knew it had to have fantastic fast graphics and sound, so I had to write it completely in Assembly language. I also wanted it to be an original game idea so I took a cue from the marketing world...I stole some ideas from two other games and called it something else!

I combined the last stage in arcade Phoenix, the Mother Ship scene where you had to shoot your way through the bottom to destroy the alien within before the ship closed in on you plus a few characteristics of arcade Space Invaders. I called it Cosmic Bomber, and I was legally clear!

Again I came up with a cheesy story pretext...

"The screen flashes at you "Bomber craft in range" and you prepare yourself for battle. The Aliens are back to destroy you but this time, it's you against the Mother Ship. You must penetrate through the bottom of the craft to kill the alien gunner within. But be careful, for the alien is loading his bomb racks and once they're full, they begin dropping and exploding on the ground, at the same time, the bomber is coming down to land and invade Earth. Beware the bomber craft's escort ship hovering above firing high speed missiles at you. Earth is depending on you comrade so give them all you've got!!"
Cosmic Bomber Packaging
Cosmic Bomber Packaging

Wow! Don't you just feel pumped after reading that?!

Just as with Stellar Odyssey, I drew up my own package artwork and photocopied it onto colored paper, recorded my own cassettes straight from my TRS-80 and wrapped it all up in the same zip loc bags used to wrap kids' school lunches in. I was looking like a pro!

I sold to computer club members and sent a few flyers to customers of my Stellar Odyssey. Again, the money wasn't anything to shout about but was okay pocket money for a school kid with visions of greater things to come. Alas, this is the part of the story where I unveil blunder number one. I have no idea how I let this happen but somehow, I lost the game, source code and all. After completing the game, I went straight into my next game idea that I had been brewing during the development of Cosmic Bomber. I was so focused on the new idea that I must have overwritten the files for Cosmic Bomber. Cosmic Bomber sold less than Stellar Odyssey so maybe I treated it like an unwanted child and it ran away?

Neutroid (1983, TRS-80 Model I)

Neutroid Title Screen
Neutroid Title Screen

After sweating through the silent corridors of an alien vessel in Stellar Odyssey and saving the planet in Cosmic Bomber, I was now ready to turn up the heat! I wanted an adrenaline rush and I wanted it to be louder than any other TRS-80 game! No more aliens and spaceships. Neutroid was to create a surreal environment at the atomic scale.

The inspiration for Neutroid was from an interview of Tim Skelly in the October 1982 issue of Videogames. Tim was the designer and programmer of arcade Reactor, a game played at the atomic level. With Neutroid, I loved the abstract idea of playing with atomic particles especially when the player didn't actually control the particle itself. Instead, the player controlled the environment around it in order to guide the Neutroid particle to a desired destination and outcome.

As usual here is the story pretext...

"In Neutroid, you are at the controls of a small atomic particle accelerator or synchrotron. In it, Protroid and Antitroid particles appear. Bonus energy regions, high energy walls and deflector rods exist. The aim? Control the movement of an atomic particle called a Neutroid within the synchrotron and neutralize all the orbiting Protroids before your Neutroid becomes energy saturated. Your Neutroid starts off slow and in a low energy state but as it gains energy, its speed increases till it finally reaches the high energy state where controlling it requires a high degree of rapid strategic thinking and lightning fast reflexes."

I can't remember what I had taken to dream up a story like that but I hope the stuff has been banned!

Neutroid Instructions Screen
Neutroid Instructions Screen
Neutroid Game Screen
Neutroid Game Screen

The game itself starts slow and as time passes, it collects energy and begins to accelerate. The pace picks up to the point where fast reflexes and the ability to plan ahead using your peripheral vision is needed to keep everything in check. To add to the tension and atmosphere of the game, as much TRS-80 style sound effects as I could create were pumped through the 1 bit sound system. The TRS-80 didn't have a dedicated sound chip and the only way to output sound was by toggling the cassette output port on and off (Editor-BL: Sounds were produced by modifying the sound output for loading and saving programs to cassette tapes. To listen, you used an amplified speaker plugged into the cassette output port.).

With Neutroid, I felt I was starting to develop games which began to approach the then king of TRS-80 Model I game programming, Bill Hogue of Big Five Software. Bill's games were regarded as state-of-the-art and were very polished. I had set myself a goal of creating games like Big Five so I had decided on a few "standard specifications".

1) All games must cycle through an animated title and instruction screen.
2) The use of sound tables to create more complex sound effects. NO BEEPS!
3) Double buffering of video to reduce flicker, screen stutter and redraw effects.
4) All keys must respond instantly.
5) Professionally designed and animated graphic objects and characters.
6) Great gameplay!

But how can good objects be created on a low resolution display such as the TRS-80 Model I with its 128x48 resolution?

Neutroid Packaging
Neutroid Packaging

No matter how low resolution the graphics system, it can still be made to look great if it is well designed and animated correctly. With good animation, the low resolution is de-emphasised. I remember drooling over the higher resolution graphics of other systems such as the Apple II, but few Apple II games excited me because the overhead of higher resolution graphics made the animation of lower priority. Many games avoided too much character animation in order to simplify the coding and keep a reasonable frame rate of play. Games from Big Five Software and another duo, Wayne Westmoreland and Terry Gilman proved my theory every time.

Neutroid's best feature also proved to be its worst. The concept of atomic particles in a user controlled environment proved too abstract for most and was proven with lacklustre sales. I felt it was a far better game than many other "successful" ones but I guess I had fallen into the trap of being too innovative. People will cry for new and innovative ideas but when it comes to parting with hard earned cash, they prefer to spend it on something familiar and guaranteed.

Well, Neutroid didn't make me a millionaire either, again only selling about 20 copies. I needed to find a more familiar game scenario yet still satisfy my desire for something new and challenging. I had to change my motivation of "me, me, me" and start satisfying "them"...and me!

The Gladiator (1983, TRS-80 Model I)

The Gladiator Title Screen
The Gladiator Title Screen

The Gladiator is a futuristic version of the Roman fighting arenas. Your goal is to survive each round of fighting in an arena enclosed in an energy barrier. Outside this barrier are cannons that track your movements and fire at you. You need to destroy them by puncturing a hole in the energy barrier with your Tobo Sphere and then send it into one of the four cannons. Inside the arena are combat droids. As you progress through each round, you will be placed against a higher level combat droid. These droids mutate down to a previous level with each direct hit of your Tobo Sphere until they are finally destroyed.

The inspiration for The Gladiator was the Walt Disney movie Tron starring Jeff Bridges and Bruce Boxleitner. The movie was a bit of a flop for those expecting another "cutesy" Disney movie, but the die hard computer nerds of the day fell over backwards for it, and today it has become a cult classic. The sound in this game is awesome! After playing it again after so many years, I was blown over by the sound, especially considering the limited capabilities of the TRS-80. I honestly believe that it left many of the games on the other systems of the time for dead. The action was also frantic, carrying the tradition I started with Neutroid.

And now we interrupt your reading pleasure with another story pretext design to stimulate the bowels...

"The scene is a 21st century coliseum and the Gladiator is beamed into the centre of the arena. But the sword and shield has now been replaced by the Body Field and Tobo Sphere and where the Gladiator once fought with dangerous animals and other skilled combatants, he is now involved with the deadly ZENUS-5 series of muto-combat droids and tracker cannons. He prepares to cast his Tobo knowing that he is outnumbered and that his opposition is determined to have him down. Only speed, skill and quick wit will carry him through the events."

Mark my words, one day Ridley Scott will do a futuristic remake of his movie Gladiator based on this story line!

The Gladiator Instructions Screen
The Gladiator Instructions Screen
The Gladiator Game Screen
The Gladiator Game Screen

This game follows on with the philosophy of Neutroid but takes out the abstractness and replaces it with a human character versus mutating battle droids. It contains the same concepts as Neutroid, lots of complex sound, fast and frantic action, and a need for quick decision making.

As all the games prior to this, all programming was done using a cassette based TRS-80 Model I. I had to load the Editor/Assembler via tape (3 minutes), load the Assembly source code into it (up to 5 minutes), key in my latest additions and corrections (which were hand written first), then save the new source code (up to 5 minutes), and finally save a compiled binary (2 minutes) after which I could load the binary into memory (2 minutes) and any graphics and sound table data (2 minutes) to see it run....or fall in a heap if there were bugs. Very time consuming, but at the time, I hadn't experienced better, so it really didn't bother me. The time waiting for data to load from the 500 baud cassette was used to write more code or work out a fix for a bug.

The Gladiator High Score Screen
The Gladiator High Score Screen
The Gladiator Packaging
The Gladiator Packaging

I did have one drama during this development period. I only had a 16K TRS-80 at the time, and I had run out of memory to hold the Assembly source code, so I split the source into two separate blocks. One contained the common subroutines while the other contained the main game code. Somewhere along the way, one of the blocks on the cassette became corrupt and unreadable. Luckily, I always kept two rotating copies of the code so I fell back a version and just had to retype the missing parts of the code.

The Gladiator was a great game even though it was hard to master. It required a mastery of the arrow keys on the keyboard used to move your character around the arena. Sales were an improvement over Neutroid with sales of around 30 packages and I felt I was starting to have some success. The package art that I drew bears a resemblance to the electronic warriors in Tron which as I mentioned, was the inspiration for this game.

I was proud of The Gladiator. It was a good game with some neat animation and fantastic sound effects. People were starting to see the quality in my games. If I could have had a US distributor for this game, I believe it would have been a big seller. Alas, living in Brisbane, Australia and no such thing as the Internet then, all marketing was confined to clubs and mail outs of my newly created software catalogue to all my past customers. I guess I was on the wrong side of the planet.

Stellar Odyssey Part 2 Title Screen
Stellar Odyssey Part 2 Title Screen

Stellar Odyssey Part 2 (1983, TRS-80 Model I)

A sequel to the original Stellar Odyssey was something that I always had planned to do. With my new experience in Assembly language after creating Neutroid and The Gladiator, I felt that I could do a few improvements to the original Stellar Odyssey as well as further the main story line. It was not necessary to have completed the original Stellar Odyssey to play this sequel.

In Stellar Odyssey Part 2, you began from the Earth rescue craft that found you in the previous adventure. But you soon discover that things aren't right and you begin your quest that leads you to the alien's base where you must confront the evil alien superiors...all three of them, Yargon, Kilto and Cajole.

Keep yer gut in, here comes a story pretext....

"After escaping from the aliens' battle cruiser, you are instantly beamed to the safety of the Earth rescue craft. But an eerie silence surrounds the craft as it floats inert in space and the flight crew are nowhere to be found. Prepare yourself for the final conflict as you confront the evil alien superiors, discover strange devices and explore the alien landbase."

Stellar Odyssey Part 2 Game Screen
Stellar Odyssey Part 2 Game Screen

This storyline would make a great B-grade science fiction movie. It may even be corny enough to be a box office hit!

Stellar Odyssey Part 2 Packaging
Stellar Odyssey Part 2 Packaging

I tweaked the command interpreter of the original a bit and made the entry window a bit more stylish with a flashing cursor and some sound effects as you typed. As in the first Stellar Odyssey, the verb command was displayed by pressing the first letter and the player typed the full noun.

In the original Stellar Odyssey, any objects around your character were just described in the text window like a normal text adventure, but in Stellar Odyssey Part 2, they are graphically shown. The animation was also slightly faster and the sound was improved. As with its predecessor, Stellar Odyssey Part 2 was written as a hybrid, BASIC with Assembly language subroutines. It was a relatively quick program to put together, not needing to load editor/assemblers all the time as with the full Assembly language games. Overall, this game was more polished than the original.

Sales were moderate for this one, since many people who had bought the original Stellar Odyssey came back to buy this sequel. I also found some people buying both simultaneously. I was beginning to get cocky with my artwork as I began adding better detail. They were starting to evolve from something that looked like it was done in pre-school to something approaching the quality of...primary school. At least it was getting better.

Donut Dilemma (1984, TRS-80 Model I)

Donut Dilemma was my best TRS-80 Model I game. It is a platform style arcade game like the popular Donkey Kong in the arcades that featured nine different and progressively challenging levels.

Donut Dilemma Title Screen
Donut Dilemma Title Screen

The inspiration for Donut Dilemma was my family's donut kiosk that we owned at the time. We had this donut making machine where you filled one end with dough mix and fresh hot donuts would come out the other. The dough was automatically dropped into the hot cooking oil, complete with hole in the middle, via a synchronised plunger. A conveyer belt system would then slowly push the donut across the oil as it cooked one side of the donut. Then, halfway across, it would flip the donut over so as to cook the other side. Once cooked, another conveyer belt would lift the donut up and out of the hot oil and into a rotating dish for the donuts to cool. They were picked up, sugared and packed into a paper bag for human consumption.

Occasionally, something would go wrong, usually in the part that flips the donuts over, and the donuts would get all messed up. Seeing this one day, a revelation hit me. Why not do a game based on a donut factory where everything has gone wrong? And who should be the starring character of this "donut dilemma"? Why of course my father, Antoni!!

Yep! It's that part of the article again...

"Angry Angelo has raided Antonio's Donut Factory sending the entire complex amuck! Donuts have come alive and are jumping around in wild frenzies. Machines have gone out of control throwing cooking fat, dough and icing sugar everywhere. You must help poor Antonio climb ladders, jump platforms and ride elevators to reach the top floor and shut down the factory's power generator which will restore law and order. But hurry for time is running out!"

This story just smells of success don't you think?

Donut Dilemma Worksheets
Donut Dilemma Worksheets

As in all my games, all graphics were designed on TRS-80 grid paper. No animation utilities back then! All the levels were designed on this grid paper and then I wrote the code to recreate them. The basic graphic blocks would be drawn up and stored into memory using a short BASIC program that I wrote and the code would then transfer the graphics to the main screen. All graphics were double buffered. I would set aside an area of memory as a copy of the video display memory. Here I would draw up all the graphics for the next frame and when done, copy this page to the main display for viewing. This cycle would repeat itself for each frame. This provided a clean update of each frame without seeing any graphics being drawn up. One problem was the unsightly screen interference of the TRS-80. The TRS-80 could not display video while data was being written to the video memory, so when this happened, an ugly black "tear mark" would appear on the display. Unfortunately, the TRS-80 had no way to synchronise the video beam so that screen updates didn't occur while it was drawing the display, so all games suffered from this. This problem wasn't rectified until the TRS-80 Model IV.

Donut Dilemma Game Screen - Level 1 - Ladders & Platforms
Donut Dilemma Game Screen - Level 1
Donut Dilemma Game Screen - Level 9 - Power Generator
Donut Dilemma Game Screen - Level 9

Sound effects were all generated by my usual method of creating sound tables as I had done for Neutroid and The Gladiator. The way this was done was to write short BASIC programs that created the sound effect data that I wanted. The sound routine would simply read a byte from these tables and send it straight to the sound port (cassette port). In order to prevent the game from freezing while it played a sound effect, I made the routine only play a short number of bytes at a time and then return to the rest of the code. On its next pass, it would play the next block of bytes and return to the code. This would repeat until the entire sound table was played. In the meantime, another sound table could be triggered and the table pointer would shift to a new table. This didn't allow for two sounds to occur simultaneously, but it did ensure that when a new sound was to occur it happened on cue. There were no interrupts on the TRS-80 available to setup an interrupt driven sound routine, so this was the best I could do. By adjusting the number of bytes played on each pass through the sound tables, I could adjust it so that complex sound could occur without creating any animation stutter.

Donut Dilemma Screen - After All Nine Levels
Donut Dilemma Screen - After All Nine Levels

Donut Dilemma was one of the few (maybe only?) games on the TRS-80 that played music in the background during play. The music wasn't great, but it was a feature I hadn't seen on any other TRS-80 game. Of course, we all know how annoying background music can be while playing a game so an option to disable the music but keep the standard sound effects was included.

Donut Dilemma Packaging
Packaging

If I could have marketed the game properly in the US via a big distributor like Adventure International or even Big Five Software, I believe it could have wiped the table in sales. But alas, I was just a small fry operating on a limited budget (nothing) far away from where the real action was, so again all my sales were restricted to club meetings and catalogue mailings to past customers. I felt that this game had so much potential that I put a small paid advertisement into a major computer magazine. This got me a few more sales and to date, Donut Dilemma was my best selling TRS-80 Model I game.

Escape Zone (1984, TRS-80 Model I)

Escape Zone Title Screen
Escape Zone Title Screen
Escape Zone Instructions Screen
Escape Zone Instructions Screen

Escape Zone was my first "shoot-em-up" style game. It was a style I had been avoiding up to this point, not because I didn't like this type of game, but because there were so many of these already written for the TRS-80. It seemed like the easiest genre to write for, and I had figured that another would not stand out among the crowd.

But what kept nagging me was the feeling that I could do something a bit different. I wanted a game with great firepower, big explosions and lots of sound, so I began Escape Zone.

With Escape Zone, I took elements from classic arcade games such as the firepower of Defender, the multiple stages of Scramble, the vertical scrolling of Street Racer (Atari 2600) and the swooping aliens of Galaxian.

Story pretext coming up! You've been warned...

"You have been held captive by the evil Dakors since they first captured your craft during a daring space raid. But the Dakors made a mistake of treating you just as any other human captive and so you manage to escape from confinement and have reached your escape craft. The Dakors are alerted to your escape and now there is no time to lose! Prepare to thrust your way out of the Dakors' command destroyer and into open space via a tight winding tunnel filled with deadly "Blipop" and "Bizzo" mines. Once in space, destroy the super-fast "Flipps", manoeuvre through the dangerous meteor shower and dodge your way past the "Reverso" crafts and "Putt-putt" missile ships into the safety of free space!"

"Blipop" and "Bizzo" mines? "Putt-putt" missile ships? This story line is so sad, it makes my skin crawl!

Escape Zone uses firing similar to arcade Defender. By that I mean that there is more than one laser blast at a time and instead of the fire being a bullet or "dot", it is a long laser line with a tail that decays as it moves away from your craft. Likewise, the game supports multiple explosions when enemy craft is hit, providing quite a nice fireworks display.

Escape Zone Game Screen - Zone 1
Escape Zone Game Screen - Zone 1
Escape Zone Game Screen - Zone 3
Escape Zone Game Screen - Zone 3

Another feature of the game is the demo or attract mode. If the game is left untouched at the game title screen, it will automatically move on to the instructions page and then start a demo game. During the demo game, I created the effect of multiple layers by having a static title graphic superimposed over the moving game graphics below--Sort of like a large "sprite" sitting there not being affected by the action behind it. It's no big deal, but I liked the effect.

Escape Zone Packaging
Escape Zone Packaging

Escape Zone was a reasonable seller, but I could see that the TRS-80 market was starting to decline. Looking in the American TRS-80 publications such as 80 Micro, the number of games being advertised was approaching zero, and I saw this as a sign that the games market for the TRS-80 was about to drop. By this time in 1984, high resolution color graphics were the norm, and it was only a matter of time before even the TRS-80 would be laid to rest.

Therefore, Escape Zone was to be my last TRS-80 Model I game. I felt happy having created seven good quality TRS-80 games over the years. I was happy having done a nice variety of games from adventure to arcade, from top view to platform to vertical shoot-em-up. I had developed some great graphics and sound routines for the TRS-80, but it always bothered me that my target market was so small. I knew I had to set my sights higher and aim for a larger market.

I began looking towards the future and started on my quest for a new machine...

Author and Multimedia: Nickolas Marentes
Editing: Bill Loguidice and Matt Barton
Online Layout: Bill Loguidice and David Torre
Special Thanks: Matthew Reed of the TRS-80 Emulator Web Site
Comments: Visit the author's Website or send an e-mail to nick@launch.net.au
Emulation Notes: Game ROM/image files have been provided within the article for four TRS-80 Model I programs. According to the author, presently, the best emulator to run these files is called TRS32, which is for Windows. The emulator is shareware and payment provides extra features such as hard drive and high resolution graphics support. These features are not needed to run these games. The emulator is almost 100% faithful to a real TRS-80, save for a small issue with timing where the title pages for these games seem to stay up for too short a time. Otherwise, the games run perfectly. Click the following system name for the required TRS-80 Model I and Model III system ROMs. While additional ROM/image files are not provided here, please note that none of the Color Computer emulators presently run Neutroid 2 correctly because they don't support the semigraphic video mode that that game uses. The games for the Color Computer 3 do not run correctly on any emulator except MESS. For these and other downloads, as well as to purchase some of the actual software, please visit the specific page on the author's Website.


Editor's Note: This article is part II in a series. If you haven't read part I yet, we highly recommend you do so now!

Neutroid 2 (1984, TRS-80 Color Computer)

I finally decided that it was time to leave the TRS-80 Model I and move into the world of high resolution color graphics. I had to update to a new market, but a sense of fear and uncertainty fell upon me. I was quite comfortable with the TRS-80 with its easy to use blocky monochrome graphics and powerful Z-80 CPU, but all good things must end, so I began to look around at what was available.

The Commodore 64 and Atari 800 computers appealed to me with their graphics and sound capabilities, but I knew it would be some time before I could create games that could compete with what was becoming available. I had to find a computer that was still in its infancy, yet had the potential to become a big seller.

The new MSX standard was coming out, and I liked the hardware architecture. I looked closely at two early MSX systems from Spectravideo and Sega, and I was impressed, but something inside of me said no. As time has now shown, my "gut feeling" proved right, and MSX didn't catch on very well outside of Japan.

Neutroid 2 Title Screen
Neutroid 2 Title Screen
Neutroid 2 Game Screen
Neutroid 2 Game Screen

Ironically, in the end, I went for a machine with lesser graphic and audio capability than most of the newer systems that I had evaluated. I chose the Tandy (Radio Shack) Color Computer (CoCo). The Color Computer line lasted until about 1991, outlasting many of the competing systems. I guess I was destined to be a Tandy man!

There were two things that attracted me to the Tandy Color Computer. One was that it had the most powerful 8-bit CPU, the brilliant Motorola 6809. The other was that it had a large distribution channel via the Tandy/Radio Shack company stores worldwide. Here in Australia there were over 700 stores country wide. I had always dreamed of tapping into that marketing. I figured that a game sold to Tandy Australia would guarantee 700 copies sold!

Story pretext...this one is verging on the realm of actually being good!...

"For centuries, man has strived for the ultimate power source. As fossil fuels become scarce, the need for a new, inexhaustible source of energy grows more and more.

But in a dimly lit laboratory, a professor is experimenting on a newly discovered sub-atomic particle. This particle has been named, NEUTROID and is causing great controversy in 'The Neutroid Project'.

A prototype power generator has been constructed. Inside this generator is housed a number of small lead/titanium boxes called Particle Vaults. Within each vault is a grid network along which Neutroid and Antitroid particles travel. Protroid particles and special maintenance units called Grid Chargers are adjacent. Monitoring of the particle vault is performed by external scanners creating a color coded image onto a standard color television screen.

In order to release the stored energy from within the vault, the Neutroid particle must be guided via electromagnetic fields into a collision with each Protroid particle at the same time avoiding the Antitroid particles which are attracted to the Neutroid's magnetic field. As the energy output of the generator increases, each successive grid becomes more difficult to complete. Therefore, lighting fast reflexes and rapid strategic thinking are a key element to the success of this experiment!

Science is counting on you professor! Complete each grid quickly before the particle vaults reach the meltdown state, else all is lost!

"

You have to admit, I'm starting to get better!

The Tandy Color Computer was quite limited in its graphic capabilities. In its highest graphic resolution of 256 x 192 pixels it could only display two colors. The choice was limited also, black and white with only a white border or black and green with only a green border.

The next resolution down was 128 x 192 in four colors. Again, a limited choice of colors - green, red, yellow and blue with only a green border or white, magenta, cyan and orange with only a white border.

You can understand why many of the games all had a similar look. In the US, a technique called artifacting was used to push a few extra colors in the normally black and white high resolution mode. The technique relied on the US NTSC video standard being particularly poor at color accuracy when alternating high and low contrast pixels are placed next to each other. This technique managed to coax a few shades of red, blue and yellow along with the standard black and white.

The problem with this technique was that it didn't work for the PAL video system as used in Australia. All we saw was an ugly striping effect of olive and purple that made the games look dreadful. I wanted to crack this limitation and I found it in the form of the Semi-Graphic modes. These modes allowed all eight available colors with a black border. The problem was that the horizontal resolution was dropped to 64 pixels and there was a color limitation that required each pair of odd/even pixels (byte boundary) to have the same color (or black).

I created Neutroid 2 to use this mode and designed the graphics to make best use of this limitation.

Neutroid 2 High Score Screen
Neutroid 2 High Score Screen
Neutroid 2 Packaging
Neutroid 2 Packaging

Sound was another area I wanted to improve on over other games available for the TRS-80 Color Computer at the time. Unlike many of the other systems on the market, the Color Computer didn't have a dedicated sound chip to do this and required the CPU to feed the audio data to the output port. The Color Computer generated sound using the same method as the TRS-80 Model I by toggling a voltage via CPU intervention on/off to create sound waves. However, it was a bit more advanced in that it could vary that voltage up to 64 steps instead of the two that the Model I had. In other words, it had six bits available instead of two for sound generation. I could actually make a sound fade off and create effects with more realistic sounds. This ate into the time required for graphics, but this was a challenge that I had largely overcome in the TRS-80 Model I and I included the same techniques on the Color Computer, but using its six bit capability I felt that this game couldn't fail, and I began dreaming of that luxury Porsche in my garage.....

Well guess what... It was a flop.

I got daring with Neutroid 2, taking out a half page advertisement in an Australian color computer journal called Australian CoCo. Nothing came of it, no sales. The only sales I made were achieved by demos at club meetings. Neutroid 2 seemed to suffer the same fate as the original Neutroid; the game was too abstract in concept — people didn't get it. I had to address this problem and get smart with my distribution. It was clear to me that the time had come to knock on Tandy's door, but first I needed a game that they couldn't refuse.

I was a game programmer on the edge and I was determined to succeed!

Donut Dilemma Title Screen
Donut Dilemma Title Screen

Donut Dilemma (1986/7, TRS-80 Color Computer)

I wanted a game good enough to be sold by Tandy in all their stores Australia wide, so I decided to port my best TRS-80 Model I game to the Tandy Color Computer and submit it to Tandy Australia with the hope they would add it to their stock line.

Donut Dilemma had the advantage of having a more familiar platform style of game play than Neutroid 2. Other successful games such as Donkey Kong, Lode Runner and Miner 2049er proved that this genre was popular internationally so I began programming with the hope that this game would finally offer me some success worth talking about.

Story pretext....

"Angry Angelo has raided Antonio's Donut Factory sending the entire complex amuck! Donuts have come alive and are jumping around in wild frenzies. Machines have gone out of control throwing cooking fat, dough and icing sugar everywhere. You must help poor Antonio climb ladders, jump platforms and ride elevators to reach the top floor and shut down the factory's power generator which will restore law and order. "

Kind of looks familiar don't you think? Yep! Ripped it straight off the TRS-80 Model I version.

donutcc/Level 1.gif
Donut Dilemma - Level 1
Donut Dilemma - Level 9
Donut Dilemma - Level 9

This was my first game that used a true high resolution color graphics mode on the Color Computer, and I was concerned it would be too difficult for me to achieve. Being accustomed to manipulating a mere 1K screen display on the TRS-80 Model I, I was wondering if the game would be fast enough writing it for the 6K screen display I was going to use. I ploughed on and hoped for the best.

Donut Dilemma Screen - After All 10 Levels
Donut Dilemma - Final

Following on from my desire to beat the color limitations of the CoCo, I devised a way of pulling more colors than was normally available. I couldn't use the US artifacting trick, so I began experimenting with the 128 x 192, four color modes to see if I could fool the TV to display extra colors here under the PAL video system.

I discovered that by placing horizontally alternating lines of magenta and orange that the television output (the Color Computer only had a TV output) would display red. Also, alternating horizontal bands of magenta and cyan would create a light blue. I created Donut Dilemma to use this new capability giving the most colorful display I had seen in a Color Computer game... six colors!

Later I had to remove this feature due to the new Color Computer 3 being released with an RGB monitor, which didn't allow this color mixing trick to work.

I added an extra level in the Color Computer version that was not included in the TRS-80 Model I version. Level nine was titled "Crumble Caper," and when the player first starts the level, it appears quite straight forward... except that as he/she steps on a platform, it begins to crumble beneath their feet and they only have just over a second to jump to another part of the flooring before they tumble to their doom. There is practically no chance to stand still! This is my favourite level, and it is not so difficult once one works out its simple solution.

Now here is an interesting story...

After completing the game and attempting to sell copies via the usual channels of computer clubs, I finally drummed up the nerve to send a copy to Tandy Australia's head office. I felt the game was good, if not better than many of the games they were already selling, but I kept my expectations low. In the past, all games except for a few educational titles were imported from Tandy Corporation's main warehouse in the US. That seemed to be where most of the decisions were made as to what became the product line.

It was around mid 1987 and Tandy had already released their new Color Computer 3 about 10 months earlier, an enhanced version of the older model that had been selling for 6 years. It had better graphics and a faster CPU. I had purchased one as soon as it became available. I was concerned that Tandy may reject my game due to a possible new focus of only considering games that utilized the features of this new model.

Donut Dilemma Worksheets
Donut Dilemma Worksheets

Then came the big surprise! I got a phone call saying that they liked the game and were interested in marketing it in Australia. The conditions were that I supply a complete package of color artwork, instructions and cassette tape. They also asked for a version enhanced for the new Color Computer 3. We made a deal that I supply both versions on a tape. They would buy it for $6.90AU a package and pay for the freight from my home to their warehouse.

Well, the profit margin wasn't huge, only about $3AU per package, but it was a start in the right direction, so I accepted. The first order to come in was for 1000 complete packages and I shipped them on the fifth of August, 1987. They even supplied an official Tandy catalogue number... CAT. NO. 26-9649. I was in!

Donut Dilemma Packaging
Donut Dilemma Packaging

Now here is the really interesting part. I later found out that the local magazine, Australian CoCo, was holding a competition in conjunction with Tandy for the best game submitted written for the new Tandy Color Computer 3. I didn't know about the competition. When I submitted my game to Tandy, it was soon after the competition had closed and they had chosen a winner. The winner got their entry added to Tandy's product line and more importantly, bundled with the Color Computer 3 in a special Christmas package.

My game missed the competition and wasn't written to exploit the new computer's features, yet they added it to the product line as well as the special Christmas package! It even appeared in Tandy Australia's annual product catalogue. That's what I call luck!

After the first 1000 copies, Tandy followed it up with another order and another order. In the end, 3400 copies were sold — a vast improvement over my previous attempts. I knew that my next step was to create something specifically for the new Color Computer 3.

I had a fire burning within and I was aiming for a checkmate!

Rupert Rythym (1988, Tandy Color Computer 3)

After the success of Donut Dilemma for the Tandy Color Computer, I immediately went to work on another game. This time it was to be a game specifically for the new Color Computer 3 to exploit the enhanced graphics and speed of this machine. There was no need to develop tricks to create extra colors. The new machine could display 16 colors selectable from a palette of 64. It had a higher resolution of 320 x 225 pixels (or 640 x 225 in four colors) compared to the old model's 127 x 192 pixels in four colors (or 256 x 192 in two colors).

And once again I chose a platform style game. I wanted to add more of a puzzle element to the game and came up with the following plot...

"As tired as he was, the loud ringing sound could not be blocked out by his phenomenal level of exhaustion. Slowly, he opens his eyes and pushing his remote percussion keyboard aside, proceeds to answer the phone.

'"Rupert! Wake up!" frantically cries Rupert's manager, Bill Boombox.

"Hardrock Harry, manager of Music Box Records has stolen all your musical manuscripts and plans to release YOUR song under HIS name!!! Your entire future is at stake! Get those manuscripts back! Fast!!" CLICK!

You must help Rupert infiltrate Music Box Records and collect all his stolen notes which are scattered throughout the complex. Ride the crazy elevators and beware of the security robots on patrol. After collecting all the stolen notes, you must work out their correct sequence before Rupert can perform his first live concert which will lift him to international fame and fortune!

"

You have to admit, that was a pretty good storyline!

Rupert Rythym has nice graphics. I used nice metallic shading on the elevator poles and platforms to give a slight 3D look and Rupert himself looks and animates great! There is a lot of sampled sound used in the game from Ruperts "Hey!" to the various percussion effects.

Rupert Rythym Game Screen - Level 0
Rupert Rythym Game Screen - Level 0
Rupert Rythym Game Screen - Level 1
Rupert Rythym Game Screen - Level 1

This game uses the same techniques I had been using since the TRS-80 Model I games. The sprite animation engine was almost identical in operation and while the graphics looked very clean, no flickering, no jerky movement and all the moving objects (sprites) glided over the background elements perfectly, it was a bit slow. I had opted to move everything by pixel-pixel movements and when using a graphic mode that takes up 32K, proving to be a burden on the graphics engine. I was also still generating sound by the old method that I had been using and this also came with a speed penalty. I knew I had to update my graphic and sound routines in the future to better suit this new computer.

My personal opinion of this game was that I could have improved the gameplay a bit more. I feel that I concentrated more on the puzzle element and didn't give enough thought to the arcade game element. Apart from the game having a bit of a slow feel to it, I believe that there is also too much "standing around" on each screen as the player waits for the moving elevator to reach his platform. In hindsight, I should have made the platform move immediately to the player's platform rather than let it carry on in its fixed pattern of movement.

And no, the word "rythym" is not how we spell the word in Australia as a US review once stated. That was a real spelling mistake on my behalf. I take full responsibility! There, I admit it.

Rupert Rythym Packaging
Rupert Rythym Packaging

My excuse was that "Rythym" is a commercial twist on the word "Rhythm" used as Rupert's surname, his "fame name" if you like. Well... of course that's a crock of @!#?@! but I figured a small politician style lie won't hurt and I may even get away with it... I did! Nick for president?

With Rupert Rythym, I decided to go upmarket with the graphic artwork for the packaging. This time, I drew a sketch of what I wanted the complete artwork to look like and paid a commercial artist to do me a nice black and white cover. I then just had to color it myself, add the game screenshot, Tandy Color Computer logo and catalogue number and it was done. As with Donut Dilemma, I had the covers color printed to ensure a high quality.

With my sales momentum generated by Donut Dilemma, Rupert Rythym was snapped up by Tandy Australia. This time, without the support of a Christmas computer package, it sold 850 copies to Tandy Australia. Still a respectable number and I could still keep wearing my "I'm not a failure" t-shirt with pride.

Space Intruders Title Screen
Space Intruders Title Screen

Space Intruders (1988, Tandy Color Computer 3)

With Space Intruders, I decided to go retro. Up until now, all my games have been original concepts derived from elements from other games. This time I have taken the classic arcade game of Space Invaders (actually Space Invaders Part 2) and jazzed up the graphics.

There were many Space Invaders clones for the original Tandy Color Computer over the years but none that I felt were anywhere near as good as the original. There were certainly none written for the new Color Computer 3 and that is probably because Space Invaders was a dated idea. I hoped that by giving the graphics an update, it may give it a new lease of life. Plus, Space Invaders is a simpler game to create and this would give me an opportunity to try some new routines I had been designing for the new Color Computer 3.

Story pretext...

"Enemy alien creatures have been identified entering our solar system, their destination, our home planet! Their goal, the total annihilation of our race. They must not be allowed to land!
As you position yourself at the helm of a giant particle beam laser cannon, you sense that sinister rhythm of the Space Intruders as they break through the cloud cover. You immediately unleash the awesome power of your cannon destroying them one by one as they descend towards the planet surface.

Suddenly a report comes to you from control headquarters. A gigantic alien vessel has also entered the solar system. Could it be the Alien Superior?!"

A bloated description that basically says, "Get the buggers before they get you!"

Space Intruders Comparison with Space Invaders
Comparing Space Intruders with Space Invaders

In designing the new graphics for Space Intruders, I wanted something that looked contemporary but still retained elements of the classic graphics used in the original arcade masterpiece. The new enhanced graphics still bare a strong similarity with the original.

Another reason I chose to do a less ambitious game was that I was exploring new ideas for graphics and sound engines. My old graphics engine created all the graphics "offline" in memory and then switched the displayed page to this offline image when a frame was complete. This time, I did everything on one screen. This was also due to the number of moving characters, 55 in all, that would have created a bigger slowdown than what I experienced in Rupert Rythym had I used my old techniques.

I also experimented for the first time with "interrupt driven routines." The idea was to set up the player's laser base object to be interrupt driven. The main program would only drive the alien invaders, sound and all missiles while a separate subroutine was called up at fixed intervals via a hardware interrupt that would move the player's laser base left and right. It worked very well, and the laser base moved silky smooth. I recall a few moments during development when the program would crash and everything on the screen would freeze or corrupt, yet the laser base continued to move smoothly left and right across the bottom of the screen. I liked this interrupt driven stuff and I had to find other ways of using it in the future!

Space Intruders Game Screen - Level 1
Space Intruders Game Screen - Level 1
Space Intruders Game Screen - Level 9
Space Intruders Game Screen - Level 9

I did add some extra innovation to the old game of Space Invaders. In the original, you can never win. You are presented with wave after wave of enemy invaders until you finally lose all your laser bases. In Space Intruders, there are eight waves of progressively harder rounds and in wave nine, the Mother Ship arrives! This part of the game is modelled on arcade Phoenix (sort of a return to my earlier game, Cosmic Ambush) and you are required to penetrate the base of the Mother Ship and eventually shoot the Alien Superior within before the vessel lands and invades Earth. Accomplishing this, you actually win the game!

Again, Tandy Australia marketed my game. Again I created a rough sketch of the artwork I wanted and a commercial artist created a final sketch. Tandy allocated a Catalogue Number and I arranged for tapes to be duplicated.

But I saw a disturbing trend. Tandy placed two orders, the first for 200 copies, the second for 100 copies... and that was it. 300 copies only. It was late 1988 and I was starting to suspect that the Color Computer was starting to run its round. There was still enthusiasm in the US, but here in Australia, it didn't seem so positive.

Understandably, Tandy was promoting their Tandy 1000 range of IBM compatible computers. Higher price tag, larger profit. But in Tandy's credit, they were one of the few manufacturers still selling an 8-bit computer while the rest of the market had moved on to 16-bit systems such as Commodore Amiga's, Atari ST's, Apple Macintosh's and IBM 286 PC's.

Space Intruders Packaging
Space Intruders Packaging

I decided that it was time to make inroads into the US market, and I found an opportunity via a new startup company called "Game Point Software." This was a company being run by a nice fellow by the name of Peter Ellison who was at the time selling some game software by the famous Color Computer games programmer, Steve Bjork. He was advertising for new games submissions to market, so I sent copies of my Donut Dilemma (Color Computer 3 version), Rupert Rythym and Space Intruders. He liked them and added them to his product line. He had new game packages made up and ran full page advertisements in The Rainbow, the largest Color Computer Magazine at the time. My games received positive reviews in various Color Computer magazines and sales were reasonable. I don't know the exact number of copies sold because we came to an arrangement of payment via a barter system. He maintained an account of the money collected, and I would request things like the purchase of some software or the subscription of certain magazines. I was happy with this arrangement because it made up for the blackout here in Australia of Color Computer products and information about what was going on in the Color Computer world. Sales were nothing like what I had achieved via Tandy Australia, but I felt that some sales were better than no sales.

Then, something strange happened. Game Point Software disappeared! It just closed up shop and vanished. It was very strange because I found Peter Ellison to be a very friendly, helpful and honest fellow, but something must have happened causing him to fold overnight. I never heard from him again. Oh well, that's how life is in the fast lane I guess... and there goes my US link.

Cosmic Ambush (1992, Tandy Color Computer 3)

After a short departure with a hardware project for the Tandy Color Computer 3 (a simple video digitizer) I returned to game programming. However, by 1992, The Color Computer market was not what it used to be. Here in Australia, the Color Computer had finally been discontinued. Access to the US Color Computer market was hard to come by with no easy access to Color Computer magazines for information. It seemed like a Color Computer blackout. I knew that my only chance lay in tackling the US market before the Color Computer was also discontinued there.

Cosmic Ambush Title Screen
Cosmic Ambush Title Screen

I therefore decided that my next game had to be impressive, it had to fit into a 32K ROM cartridge and I had to pitch it to the Tandy Corporation in the US. It was my last hope.

No Story Pretext!

I never actually created a storyline for Cosmic Ambush for reasons that you will understand as you read the rest of this page. The game was a vertical shoot-em-up which had you piloting a space craft (with a cool revolving gun barrel!) and defending various space fortresses from a variety of enemy attacks. Your space craft had a variety of weapons starting from a meek single shot gun up to multi-fire. Upgrading your weapons required you to hit the weapon upgrade targets that randomly appear, but a direct hit to your craft would downgrade your weapon as well as drain some of your shield energy. Various recharge targets are available for you to re-energize your shield. There were a variety of enemy craft each with its own unique combat style.

The major deciding factor for this game that determined how large the code could be, how much graphics and sound I could include and how the entire program is to be stored in memory was based on the goal that this game was to be marketed as a 32K ROM cartridge game. 32K was the largest size cartridge that could be used on the Color Computer 3 without resorting to additional circuitry within the cartridge. I had seen how many of the successful game sales were on cartridge and this was due to the decrease in software piracy by using a cartridge medium compared to a magnetic medium such as a floppy disk or cassette. With 32K as my limit, I wanted to create a game that appeared far bigger. I wanted lots of smooth scrolling graphics and sampled sound effects.

I had worked out a way of creating unlimited smooth vertically scrolling backgrounds. I had developed a new method for creating sprites. I also developed a new sound routine that used the Color Computer 3's programmable timer interrupt to provide two channel sound effects during the game with no noticeable interruption in graphic animation. I was planning on Cosmic Ambush to be the best "shoot-em-up" style game ever created for the Color Computer. But alas, trouble struck... big trouble.

Cosmic Ambush Game Screen
Cosmic Ambush Game Screen

Half way through developing the game, Tandy in the US officially discontinued the Color Computer. This meant that they were not stocking anything new for the machine. That was the final nail in the coffin for me, and I felt that Cosmic Ambush had no future... so I stopped development. I was quite disappointed, but I knew I couldn't blame Tandy. The time for 8-bit computers was well past the use-by date, but I guess I felt that the Color Computer 3 had not had its full potential tapped.

Six months went by when a friend of mine came over to my home and asked to see what I had done with Cosmic Ambush. I dug out the old files and loaded it up. I began demonstrating the game and my friend was very impressed with what he saw, but what caught me by surprise is how impressed I was! It's amazing how different things look when you haven't seen it for awhile.

I decided then and there that I was going to finish Cosmic Ambush, at least to a point of being complete enough to release as shareware. I thought that maybe shareware was a viable way of "selling" it. I had omitted various planned features in the game such as a scrolling starscape behind the scrolling background to create a parallax effect. I simplified the enemy flight patterns that were originally to be more like arcade Galaxian. And I didn't create any game instructions or package artwork.

Well, as shareware, Cosmic Ambush sold one copy at $7 US. That sent me a strong message... there was no future in game development for the Tandy Color Computer. I made Cosmic Ambush freeware and I packed up my Color Computer 3 and became an Amiga user.

I had owned an Amiga 1000 for a few years and was very impressed with it, but unfortunately, I never had time to do any actual programming on it. I had fallen behind with that machine and I knew it would take a long time for me to develop anything worthwhile that could compete with existing products.

It was the end of my Color Computer era.

Pac-Man Tribute (1997, Tandy Color Computer 3)

After leaving the Tandy Color Computer scene in 1992, I spent most of my computer time playing with Commodore Amiga's. I had an Amiga 1000 and then moved on to an Amiga 1200. I liked the Amiga's because they had, great hardware and an efficient, reliable and responsive OS, but I never programmed anything for them. When Commodore folded and the resurrection of the Amiga by another company was looking more like a myth, I jumped onto the PC bandwagon with a Celeron 300Mhz system. I hated Windows! It was the complete opposite of what the AmigaOS was except that it had a huge software base and was supported by so many companies with their products. It was clear that this was the future of home computing (over 90% market share!).

Pac-Man Tribute Title Screen
Pac-Man Tribute Title Screen

What was also clear to me was that the days of creating commercial software as a one man show operating from a bedroom were over. It was hard to make a dent in this market unless you joined up with a software company. I had also fallen far behind with current popular programming languages like "C" and was unfamiliar with game programming on the PC. Yep! I was an old dog that couldn't learn any new tricks!

So, I did what all "old dogs" do and that is search around for other "old dogs" to talk about the "good-old-days," and I found it in the form of the Color Computer newsgroup on the Internet.

I was surprised to see that there was still some life in the Color Computer. I discovered new programs that other Color Computer enthusiasts had written during my years of absence. I made some good friends and even caught up with some old legends from days gone past. I was starting to get the bug again, and I decided to create just one more game... just for the fun of it.

Story pretext, I'm not to blame for this one!

"You are PAC-MAN, a friendly-looking yellow circle with a little wedge missing. You travel through the maze, eating dots in your path and are pursued by four ravenous monsters. If any of them catch you, you're a goner.

There are four 'energizers', one in each corner of the maze. Hit the energizers and the monsters are rendered helpless and you can eat them, making them disappear for a few seconds.

If you eat all the dots on the board, you are rewarded with another board, in which the monsters have become smarter and stronger.

"

I think everyone knows this story and for those who don't... you missed a great era in the history of videogames!

I set myself an important design goal for this project. It had to look, sound and play as close to the original Namco classic as possible. I didn't want to do Namco the injustice of another poor clone and I wanted to do the Color Computer 3 justice by showing what could be achieved. The game had to run at 30 frames per second, the maximum frame rate of a standard TV or CM-8 RGB monitor (the monitor sold by Tandy specifically for that computer).

I should point out that at the time, I didn't have the MAME arcade emulator for PC or Macintosh. Instead, I recreated all the game graphics by redrawing them on my Amiga based on observing a real Pac-Man machine and what I could find in magazines. The sounds were sampled on the Color Computer off tape recordings made from a real Pac-Man machine.

Pac-Man Tribute Game Screen
Pac-Man Tribute Game Screen

I made improvements to my dual channel sound routines from Cosmic Ambush to the point where sound generation took up minimal CPU time. I improved on my sprite graphics routines to achieve more speed. I used the tallest vertical resolution I could muster on the Color Computer 3 of 320 x 225 pixels. I allowed the maze to take up this full height by moving the score displays to the left and right sides of the maze. This allowed me to create a screen aspect ratio that wasn't too far off from the original. I included all the animated interludes between mazes just as the original and also added the feature from the original where the Pac-Man moves slightly slower than the ghosts when eating dots, but gains a slight distance when it is taking corners. This is an important characteristic used by expert players of the original.

One area I could not work out from the original was the ghost character's intelligence algorithm so I had to develop my own. I spent some time trying to think up an algorithm that would give similar results to the original and this is what I came up with...

I created five "target" points on the screen positioned in the four corner areas and centre of the maze. Each of the four ghosts is given one of these targets points and they work their way to each of these. I set a timer on these target points and when the timer count reached zero, they would roll their positions into the next target point in the list. So, a target point pointing in the top left corner of the maze would shift to the bottom right after a time, then to the top right and so on. This kept each of the ghosts "patrolling" the maze without them bunching up together for too long.

As each ghost navigated the maze to reach its target point, it would check to see if the Pac-Man was on the same row or column position on the screen. If it was, the target point is altered instantly to point to the position of the Pac-Man. The ghost would then begin to close in on this point until the timer timeout reset the target point back to its normal cycle.

Pac-Man Tribute Packaging
Pac-Man Tribute Packaging

With this algorithm, the ghost movement is very similar to the original when viewed at a glance. I was happy with the results of the gameplay and that is how it stayed.

I kept my expectations low for sales of this game. There was no Tandy to sell through, no local clubs, no printed magazines (except CFDM, the disk magazine) and not a large user base. I had set a top end projection of 20 copies. To date I've sold 70, which is pretty good considering the conditions.

I sold almost all my copies to US customers. The local Australian Color Computer scene seemed non-existent. These sales gave me the confidence to continue with more Color Computer product development.

Gate Crasher (2000, Tandy Color Computer 3)

For a long time, it was being debated if the Color Computer 3 could create a true 3D game along the lines of the PC classics, Doom or Wolfenstein 3D. Many said that the Color Computer, as many of the early 8-bit machines, was too slow to do the necessary 3D calculations required to render each scene at a decent enough frame rate to make a fast paced action packed game.

Gate Crasher Title Screen
Gate Crasher Title Screen

But one man was able to provide a glimmer of hope on this subject, www.axess.com/twilight/sock/ target=_blank>John Kowalski (). He had developed an algorithm that did the necessary calculations fast enough and created a demo program to prove it. The demo was called Gloom and in it, one could navigate around a 3D environment using a stock standard Tandy Color Computer and it ran at a good frame rate.

This impressed everyone, but there were many who felt that the final proof would be to create a full game. I decided to take up the challenge and Gate Crasher was the result. A Wolfenstein 3D style game featuring full 360 degree 3D environment, explosive two channel digital interrupt driven sound and five levels of the hottest action seen in a CoCo game for years! This game clearly proved that 3D gaming of this type is possible even on an old 2Mhz 8-bit computer.

Story pretext, this one is good!

"It is an era of high technology, an era of perfection, an era of the mind enhancing Brain Implant devices. Small microcontrollers implanted into the human skull acting as a "co-processor" to the brain. With this device, a persons abilities can be enhanced while disabilities removed. Millions of people worldwide have undergone surgery to have a device installed and reap the benefits of an improved lifestyle.

"He who controls the mind, controls the world."

But there is now evidence to prove that there is more to these devices than creating the perfect human. Leaked information has revealed that each implant has a means of remote control via the internet-providing low orbit satellite system also owned and operated by the same company creating these implants. This has been found to be used as a form of mind control allowing the CEO of the company to control things such as the outcome of an election, the buying habits of consumers, even to invoke death!

You are the Gate Crasher and it is time to crash this party, destroy all the computer data and defeat the evil CEO himself!

"

Gritty, prophetic and visionary all in one!

The biggest challenge for me in this game was making everything run at a decent frame rate. This was accomplished with the aid of John Kowalski's Gloom 3D environment algorithm as well as heavy use of self modifying code. Gate Crasher represents a milestone in Tandy Color Computer gaming in that it is the first true full 360 degree, free movement solid 3D action game of this type for this machine. The game uses an unofficial 128 x 96 x 16 color graphics mode. Even utilizing double buffering, each screen only takes up 6K of memory, reducing the workload on the CPU to update each display frame. A further optimized version of the dual channel interrupt driven sound routine used in my last game allowed explosive sound effects to be had without too much CPU overhead.

Yes this game had it all... the player's gun would bob up and down as he walked, you could hear your footsteps, your gun recoiled when it fired, security doors that could only be opened by cracking the color coded locks, the gun would make a cool reload sound when ammo was found and the evil CEO had a classic evil laugh!

Gate Crasher Game Screen 1
Gate Crasher Game Screen 1
Gate Crasher Game Screen 2
Gate Crasher Game Screen 2

The storyline setting for Gate Crasher is obviously futuristic. Set in the near future, the vision is of a world under the control of a powerful corporation head who has found a way to control the minds of the unsuspecting public by feeding them hope and an enhanced way of life in the form of a brain implant that he can secretly control.

In this game, you infiltrate the five level building of the corporation with the goal to destroy all information about these implants, but I have planted a little surprise on level five. Here you encounter the head CEO, the man responsible! He hides in his large office which is heavily surrounded by his "suits". Once you get past the suits, you get to fight the CEO himself... and the little bugger has a very familiar face. Look at the title of this game to get a clue.

A really cool feature is that when you destroy three or more suits in rapid succession, the computer lets out a "Woohoo!" to signify the adrenalin rush. Oh well, I have to do my part to promote violent behaviour in this modern world.

I was aiming at this game being released for the upcoming PennFest 2000, a Tandy Color Computer festival held in Pittsburgh, Pennsylvania, USA, that I was a co-organizer for. I knew the Color Computer market was getting smaller and smaller as time went on and I felt that most sales of this game would be had at that fest.

Gate Crasher Packaging
Gate Crasher Packaging

I was right. About 45 copies of the game have been sold to date, making it less than my last game, Pac-Man. Even though Gate Crasher represents a milestone for 3D action type games for an old 8-bit computer, the market has shrunk so much that I felt that my game programming days for this computer have come to a close. This was to be my last game for the Tandy Color Computer.


The End

Well, we've reached the conclusion of my story. I never did become a famous videogame programmer, but I don't feel that the last 25 years were a failure. I've had an incredible journey, learned many things, met many talented people, made many friends and shared my enjoyment of videogames with people around the world. I'm not rich but I have a stable job in the computer industry.

I hope my story has been an inspiration and a source of knowledge and awareness to others who may share a similar dream to mine.

Nickolas Marentes Signature