-=+=- -=+=- -=+=- -=+=- -=+=- -=+=- -=+=- -=+=- -=+=- -=+=- -=+=- -=+=- -=+=- -=+=- -=+=- -=+=- -=+=- -=+=- -=+=- -=+=- -=+=- -=+=- -=+=- -=+=- -=+=- -=+=- -=+=- -=+=- -=+=- -=+=- (c) WidthPadding Industries 1987 0|511|0 -=+=- -=+=- -=+=- -=+=- -=+=- -=+=- -=+=- -=+=- -=+=- -=+=- -=+=- -=+=- -=+=- -=+=- -=+=- -=+=- -=+=- -=+=- -=+=- -=+=- -=+=- -=+=- -=+=- -=+=- -=+=- -=+=- -=+=- -=+=- -=+=- -=+=-
SoCoder -> Blogs Home -> Blogs


 
In Trance We Tru
Created : 06 November 2023
 
System : Commodore C16
Language : 6502 Assembly Language

Putting right a wrong.



Intro
------


In 1984 I applied for a job as a games programmer at Elite Systems Ltd, publishers of games like Kokotoni Wilf and Blue Thunder. I have no idea how I blagged my way into landing that job, but I did. I had been given the task of developing a conversion of the Sinclair Spectrum game 'Airwolf' for the Commodore C16.

This first professional software development project came with several major problems:

I was to write a game in 6502 assembly language, which I had ZERO experience of.

The Commodore C16 was a recently launched computer and development tools were scarce.

I was not supplied with a text editor, assembler/debugger, or ANY tools to help.

I had to write the game using the built in 'machine code monitor', or MCM. The MCM let you type in 6502 mnemonics and run the code, but if you made a mistake and needed to change some of the code then inserting code was impossible. The only thing to do was find where you need to insert code, dump the code from that point on to a file, make changes then re-add the saved code. However, the MCM did not support labels, so all branches needed updating. I made use of a lot of paper and pencils in those days.

I also had to create my own graphics, on paper and then add the data into the MCM by hand. The same applied to music and sounds.

I believe that, at that time, I was one of a very small number of developers working this way. Many of the other, bigger companies had better development practices.

The two games I actually completed for the C16, Airwolf and Commando, were appalling games if I'm honest. They both sold well, and I earnt a few thousand pounds from royalties. I'm proud of both games because of how much difficulty I had in developing them, but I definitely would not recommend anyone play them!

Putting right those wrongs
-----------------------------------


I would dearly like to re-do both of those games for the C16, which still has an active user base, and make a much better job of them. I'm a considerably better and more experienced coder nowadays, but I'm effectively a novice 8-bit developer due to the very long time since I did any 8-bit development.
I need to re-learn how to handle interrupts, smooth split screen scrolling, etc. I need to find dev tools I'm happy with.

I'm not sure I'm up to it. Not due to ability but because of certain other issues. Only time will tell.

---

 

Comments


Monday, 06 November 2023, 09:06
Jayenkai
A truly worthwhile task!
Best of luck getting it all done. I'm sure with the things you've learned in the time since, that you can tweak the extra power out of the system that you need.

Welcome to the forum!
Monday, 06 November 2023, 11:59
Kuron
@Trance Not only do I remember the days of designing graphics by hand on graph paper, I STILL design much graphics that way for retro stuff!

Welcome to the forums! And good luck with your plans!
Monday, 06 November 2023, 12:56
cyangames
Oh gosh, no labels... damn! That's terrible!

My first compouter was a C16...well, C+4. I might have to write out some 6502 for that at some point as it shares the processor with the NES