What are my plans and intent for Cosmic Aliens? Ideally, I’d like a version of this game running on a variety of real, original retro systems, as well as ones that play on modern systems, running on PC, Mac, Linux, and mobile.. That’s an ambitious goal, and I won’t get there right away, but, like all good things, baby steps are required. My initial versions are going be focused on a variety of versions for the Tandy Color Computer. The following outline is my general idea and intent for how these versions will progress, real life, and actual progress may alter the plan organically.
- Initial release – current WIP version is targeted at running on 32K Extended Color BASIC CoCo 1/2 systems, which should also run on the Dragon 32/64, since the CoCo 3 is already backwards compatible with the CoCo 1/2, it will also run on that. Plan A is to get this version “completed” to where the features and game play are finalized and locked, then future versions will spawn from there, goal for this is by end of the calendar year of 2018.
- Enhanced CoCo 1/2/Dragon versions that will take advantage of some assembly language routine speed-ups, possible sound hardware support, such as the Speech and Sound Cartridge, and the John W. Linville “Retro Tinker” branded Game Master Cartridge are on my radar, along with the Alen Huffman “Sir Sound” project if possible.
- A CoCo 3 version that takes advantage of higher resolutions and colors, since the topic of compilers has come up, perhaps, I’ll start the CoCo 3 version using the CBASIC3 compiler which should give me better speed out-of-the-box, and, as with the CoCo 1/2 versions, optional support for sound hardware is desirable
- A CoCoVGA exclusive version! There is a great project for the CoCo 1/2 Dragon called the CoCoVGA (http://cocovga.com) in addition to giving the CoCo clean, VGA output, with artifact color support, additional graphics modes, and palette registers, it also has a 64 column by 32 row text mode, with bitmap addressable characters that could literally be “printed” on the screen that would be infinitely faster than the graphics version. This would be closer to the original MS-DOS version that was all text/character based, but with custom characters to represent a variety of aliens, bombs, asteroids, explosions, etc. This version, in BASIC alone, will be much faster than the current graphical one, and with assembly routines, or an eventual assembly version, it would be fantastic!
- Assembly language versions for the CoCo 1/2/3/Dragon/CoCoVGA – my goal, and bucket list item is to learn the 6809 Assembly language I was afraid to touch as a kid, and eventually write this game from scratch, in assembly, as a true “commercial quality arcade game” for the Color Computer line of systems, this will be an on-going work in progress as I learn the language and work out developing a game in a new language, but I can’t wait!
- ROM Cartridge – Assuming I get a commercial quality assembly language version of the game going, and this game can support the GMC Game Master Cartridge sound chip, there’s no reason to not have a version available on ROM cartridge with the sound chip built it. I’m more than excited at the notion that we can put modern games on ROM cartridges like in the good old days of Radio Shack, so this would be a dream come true to have a CoCo game on a CoCo cart, fingers crossed!
- BASIC09 version – It’s clear to me, that as-is, this game would run faster in BASIC09 (Which requires a version of the OS9 operating system for the CoCo) and that version will hopefully be developed, however, learning how to interact with a different form of BASIC as well as a minor OS9 learning curve will only serve to delay my learning Assembly language programming. It will hopefully happen, but not before an assembly version. My thought here is, if I’m going to learn something new, learn assembly, that’s been a life goal, and nothing is going to be faster than that, anyway. By the time I’ve done 2-3 versions of the game, a BASIC09 port should be (hopefully) trivial to transition to.
- QB64 version – The original version was written in QBASIC3 for DOS, and QB64 (http://www.qb64.net/) is a modern version of that editor/compiler that will output software that will run on PC, Mac, Linux, and Android, so, as I start to finish some of the initial CoCo versions, I hope to, in parallel work on a “modern” version of the game that will run on modern systems, but, keep the look, feel, flavor, and spirit of the MS-DOS version
- Other 8-bit retro systems – Since it will take me long enough to learn 6809 assembly, writing a 6502 version for an Apple/Atari/Commodore system won’t happen over night, but I’m hoping with some modern tools, cross-development systems, IDE systems, Arcade Game Designer platforms, etc., that achieving that goal won’t be a “ground up, learn every piece of assembly and hardware” process, and could be done quicker, time will tell, but, my goal would be to have a version on all of the major 8-bit systems as my time, and knowledge permit.
- “Modern Retro” systems – there are a handful of development systems that let you create an 8-bit/16-bit 2D “retro console” looking game using modern computers, that looks and plays like an oldie, but runs on modern computers and mobile devices. Not wanting to get distracted on my primary goals, this is on the radar and wish list, but will probably come much later.
- REAL modern systems? – As I start to, wait for it, become a “real” programmer/developer, why not learn a “real” modern language, and use what all the hipsters do to create modern software… What is this system? I’m not actually sure, but I know a lot of things are done with Unity, the Unreal Engine, using some version of the “C” language, and other buzz words I’m vaguely familiar with, so, perhaps, by around 2020, I may have reached a level where I could write “real software” on “real computers” using “modern tools and processes”, who knows? anything is possible, when I a teenager, I wanted to make commercial quality arcade games when I grew up, now that I’m grown up, it could actually happen!
What are your thoughts and suggestions?