Thank you for the compliments...
At least with my games, I'm not sure that they could be used for educartional purposes for many reasons:
- They seem to be 10 lines long, but they don't! Defensor actually has 220 statements packed to fit in those 10 lines. That's an average of 22 statements per phisical line!
- There are many, many, many optimizations to reduce the number of statements, so some things got mixed together, obfuscating the code.
- To fit the 10 lines, some statements are not placed in the "logical" order. Sometimes, part of the code has to be moved somewhere else to get the most from the max allowed length of a line.
- They are tied to the hardware. Without knowing the hardware, you cannot say which is the effect of a single POKE.
Anyway, all of my games have a description page with an explanation of what a statement or group of them does (*). Most of the times, it took me more time to write the docs than to code the corresponding program. Sometimes, I've found some bugs while I'm trying to explain the sources, and I had to update the game.
I've read some BASIC listings for C64, MSX and even 2600 for these contests, and sometimes I didn't understand the reason of the code or how something worked. There are many common statements in their syntax, but when graphics animations are the backbone of a game, it does not matter if the BASIC dialect has string functions or structured programming elements. Each machine has its own way to do things.
(*) The description pages for my 2018 entries won't have the source code listing until the end of the NOMAM event. Bunsen has the full docs anyway.
I'm currently been working on an Amstrad CPC version of "Alby, the albino bat" (not for a future compo), though am I to understand the collision test the Atari version has, is a convenient POKE?
I managed to write something on the Amstrad which involved array's, loops to test colour points around my floating frog in a pond It works, but I'll need to code in Assembly to ease time consuming calculations from Amstrad's BASIC.
Regarding the new FREI category which was added for this years Competition, I was a little confused that one of my Amstrad entries (Red Meets The Grumpy Grumbles) went into the EXTREM-256 category, despite it being that length, it also had a Machine Code sprite driver. Just wondered if the nature of my M/C Loader (which is quite an unusual one), didn't register with people?
Edited by AMSDOS, Sun Jun 3, 2018 5:06 AM.