My demo project has been put on hold because I’m not really well enough to continue working on it right now; the decision was made for a couple of reasons yesterday morning and since then I’ve slept far too much and gained a rather persistent headache that’d make the Queen swear like a sailor so it seems it was a good call even if I didn’t realise at the time. Next Tuesday is the regular workprint post, so I’ll go into a little more detail about where things stand during that in the usual, vague manner.
I was feeling pretty down after making that call yesterday, but today I awoke to find a pending comment on yesterday’s post which just contained a link to the GameFaqs forums; each game in their database also gets a dedicated message board area and, for some reason I may never get my head around, the one for my C64 shoot ’em up Warflame seems to have become a general purpose discussion area with over 3,300 threads at the time of writing, some of which date back to 2012. Topics just on the first page right now include a couple of long-running threads about American animation and Anime along with gaming-related discussions on Dead By Daylight, Overwatch and the recent Spiderman game, but it seems that absolutely anything goes and, apparently, has done for over half a decade now.
So yes, that’s a thing… and part of me is absolutely delighted that such chaos is being perpetrated in my name – or at least the name I made up – without my even being aware of it, but I’m not sure about accepting the invitation to stick my head around the virtual door because they’ll either worship me as their god or more likely organise a lynching and I’m not massively keen on either option! Still, thanks to the commenter who gave me the link and hello if you got here from the “I found the creator of Warflame” thread.
Well… okay it is a blog post but not the “scheduled programming” as it were, in part because I’ve actually been doing some programming; next weekend is the X party and, as mentioned previously, I’m sort of aiming to get something completed for release there. My original plans have been put on the back burner in part due to illness – it’s “traditional” for me to have at least a cold around this time of year and the current one is somehow a couple of weeks old already – and the linking for that project being rather involved, but other things have taken up my free time of late as well. Fingers crossed my “plan B” will properly take shape in the week off I have coming up and leave me a little time to spare before it needs to be sent over to the competition.
The ongoing coding also goes some way towards explaining why there’s half a dozen C64s in the front room – the two C64GS consoles are, coincidentally, there for testing something else entirely – because, although I’m not going to be doing anything technically groundbreaking, there are some timing-specific routines that I want to be absolutely sure run on real hardware. That includes the one which started out as me thinking about the largely mistaken ideas I had as a fevered youth in the 1980s for doing raster bars and pondering if said method could be “persuaded” to work properly… it can with only a few caveats which quite frankly surprised the hell out of me, so I want to include it even if nobody’ll notice what’s happening unless I make a point of explaining!
We’ve got another piece of C64 scene history today, the Mean Team’s VSP&IK+ from 1987. This is another of those demos from the “Wild West” period when programmers were as much concerned if not more so with getting their latest creations out there and the name is pretty much self-explanatory; the IK+ part comes from the music by Rob Hubbard and Paul “Dokk” Docherty picture which were both being taken from the game of the same name, whilst the VSP refers to it being the first instance of Variable Screen Positioning, a hardware “feature” similar to but much harder to implement than the more common Flexible Line Distancing – FLD to its friends – which was in common use around that time.
This technique is sometimes referred to as DMA delay because that’s essentially how it works, waiting for a badline where the C64 fetches screen data and fooling the VIC-II into waiting for a fixed amount of cycles before that fetch actually takes place by setting the vertical scroll register to a value that won’t see it happen, then changing back to one where it will later in the line. One cycle equates to the width of a character so waiting five cycles will push the screen right by that many characters and it’s possible to travel an entire screen width, with the data wrapping around onto the start of the next line, something this demo masks by changing the attribute data. VSP-based scrolling is how games like Mayhem In Monsterland can move their backgrounds so quickly.
I remember seeing VSP&IK+ for the first time on a friend’s C64, casually thinking “oh that’s nice and smooth” in passing as it started up and the picture slid smoothly in from right to left and then staring in disbelief as it snapped back in the other direction at far too great a speed to merely be a double buffered bitmap scroller – we already knew about FLD and understood how it worked but this was nothing short of witchcraft at the time! It still makes me smile now despite knowing how the routine works and having my own examples.