E-MAIL nickma1@optusnet.com.au

 01 - It all starts with an idea
 02 - Evolution of the concept
 03 - Proof of concept
 04 - Memory allocation
 05 - Let the coding begin!
 06 - Title screen - fade out
 07 - Interrupt driven sound
 08 - The Dylan effect
 09 - One byte scrolling
 10 - The map editor
 11 - Houston, we have scrolling!
 12 - More for less
 13 - Motivational change
 14 - Raster Bar backdrops
 15 - GIME chip bug
 16 - Title design and mapping
 17 - The new Map Editor
 18 - ROM wasn't built in a day!
 19 - The Tile Scroller
 20 - Flying high
 21 - Come on feel the noise!
 22 - House keeping duties
 23 - Shoot to Thrill!
 24 - 99 Red Balloons
 25 - Gauges and Readouts
 26 - The Final Countdown
 27 - Creating Worlds
 28 - Game Tuning
 29 - Breaking Boundaries
 30 - On the Home Run!
 31 - Ready for Liftoff!
 32 - Pre-Order Time!
 33 - Final Delivery Preparations
 34 - Dispatch!
 35 - The End


My interest in programming games began with the purchase of my first computer back in 1980, a Tandy TRS-80 Model 1. In 1984, I moved on to the Tandy Color Computer 2 and 1986,  a Tandy Color Computer 3 which I still program today.

Although predominantly a Tandy/Radio Shack computer enthusiast, I also followed many of the systems available at the time. Growing up in the 80's, I gained an appreciation for the evolution of the personal computer and today have a personal collection of many of the iconic systems I grew up with.

Click on the web page links below to see more of my projects spanning over 30 years.






Hello and welcome to my game development blog.

In the pages that will follow, I will be documenting the various stages in the design of a new arcade game that I hope to create for my classic Tandy Color Computer 3 sold internationally by the Radio Shack Corporation during the 80's and early 90's. This game will largely be created the old school way utilizing as much as possible the same setup that I used to develop games back then.


I will use my original 512K Color Computer 3 with CM-8 RGB monitor that I purchased back in 1986. Both still operate perfectly and neither have ever given me any problems. This is the same computer I used to develop my earlier games, Rupert Rythym (1988), Space Intruders (1988), Cosmic Ambush (1992), Pacman Tribute (1997) and Gate Crasher (2000). It was also used to develop the Rascan/Digiscan Video Digitizer (1989) and DigiWiper Video transition unit (2002) in conjunction with John Kowalski. 


Once again, I will be programming in Motorola 6809 assembly language but now using Robert Gault's EDTASM6309 editor/assembler, an enhanced version of Radio Shack's Disk Editor/Assembler.


My Color Computer 3 is equipped with two 40 track floppy drives but these will not be used. In their place, I will be using the excellent Drivewire system developed by Aaron Wolfe and Cloud 9. This system uses a serial lead connection to my PC to emulate the floppy drives and has the advantage of faster I/O and files that can be more easily managed on the hard drive of the PC.


The graphics for the game will be created as I did in the 80's using my Commodore Amiga computer running the Brilliance 2.0 graphics software by Digital Creations. This program can be configured to operate with the same pixel and color resolution as the Color Computer and is ideal for creating the graphics required.


For sampled sound effects, I will again be using my Amiga with the Great Valley Product's (GVP) Digital Sound Studio, an excellent audio sampling and playback system.


And to provide the right atmosphere to complete that ultimate retro programming experience, classic 80's music will be played as a background soundscape to keep me in the correct frame-of-mind.  :)


But why?


Creating games for my Color Computer is a hobby I enjoy.


The Color Computer 3 is also a great computer to create on. It has good graphics resolution, a wide color palette, a great microprocessor and has many good tools available for program development. Like any system, it has a few limitations such as the lack of hardware sprites and a sound chip which is a challenge for the games programmer to overcome.


It's the ideal not too much, not too little, but just right system to program for and it's rewarding to bring out the best in the machine and make it do things that was thought to be beyond it's capabilities.


By documenting the development of this game, I hope to inspire others to try their hand at game development. Although I am using assembly language to create this game, this blog is not aimed at teaching this programming language but more to show the process I use to create the game, how ideas are formulated, what considerations I need take into account and what compromises I choose in order to achieve my final goal.


The pages that follow are meant to be read sequencially from beginning to end tracking the flow of development. It's a chronological log of my progress, breakthroughs and setbacks I experienced including the excitement and frustrations endured.


Discover how we push the boundaries in some areas of what the Color Computer is meant to be capable and break some fundamental structured programming rules in order to achieve as much speed and efficiency in areas that need it.


As I said, this blog will not highlight the code itself but rather, the concepts only. It is not designed to teach the black art of assembly language programming. The code is only half the story with the design of the graphics, sound and gameplay equally important.


Game programming is just as much an artform as it is engineering.


It is also important to note that this is not meant to be the definitive guide to game development. This is merely showing the methods I employ. Each programmer has their own way of doing things, their own style and opinions. In the end, we all seek the same goal... to create a great game that people will enjoy.


Let this nerd road trip begin!





Copyright 2013 by Nickolas Marentes