CBM Commander Overview
A brief history
Back in the mid-1990's, I was a starving part-time Burger King employee with few belongings other than my beloved
. At the time, I had been programming BASIC for about 10 years on various 8-bit computers, but mostly on the Commodore VIC-20, Commodore 64 and Commodore 128. I had just started dabbling with QBasic in
MS-DOS when it dawned on me that I should write a program that allowed me to write code that targeted all three of the above machines, but didn't require line numbers, allowed sections of code to be labelled, and also provided an easy mechanism to merge
source files together into a single compilable source file. Having also been a computer science student at Tennessee Tech University, I also had some familiarity with these concepts programming Pascal and COBOL. I spent about a week of doing nothing but going
to work and then working on this concept and out came MacroBasic, my first real attempt at a serious programming project. Some day I'll post the code for MacroBasic, but it's pretty embarassing by today's standards. :)
Fast forward a decade (or more) and I'm an experienced enterprise programmer and system architect. I've kept up with all of the movers and shakers of the CBM scene for the last 5 years or so, and have even participated in the OpenCBM project as a tester
and as the current maintainer of the
project. Althought I'm quite proud of the improvements I've made to GUI4CBM4WIN, I'm just not thrilled about it's GUI and wanted to create a more modern application to integrate with OpenCBM.
Now let's add another wrinkle. The CC65
project is one of the most useful open source projects for collectors of 8-bit computers. This project provides an ANSI-C compiler, cross-assembler, and linker for 6502 based machines
such as the Commodore 8-bit line of computers. Writing C is a complex task, however, and one that requires a good bit of mastery to provide reliable results. When targeting classic computers, debuggers and profilers are scarce and provide little support for
targeting these old platforms. What's needed is an IDE for CC65.
And since we need an IDE for CC65, why not a complete IDE (including a multi-platform tokenizer) for MacroBasic? Ah! Life comes full circle.
My current vision for CBM Commander is to provide a modern Windows-based framework that allows for multiple add-ons that provide the major blocks of functionality. As such, the core functionality of CBM Commander is to provide a GUI shell and messaging framework.
The initial release will also include a new file manager built around a generic API that will allow manipulation of Windows file systems, common disk image formats, and devices supported by OpenCBM. Future releases will include an IDE for CC65 and possibly
a fork of WinVICE that allows VICE to be hosted in the GUI and used as a debugger for the IDE.