Workprint – May 2019

Last time I talked about the new, C64-specific version of C64CD blaster Stercore and this month continues that “trend”. It’s now officially called Stercore XD and I’ve actually got the majority of it written and working somehow!

Memory is getting very tight but all of the graphics are done now including some sprite animations – one of the aliens and the explosion have been “inherited” from Super Hyperzap – and everything just about fits into the lower half of the C64’s RAM after decrunching until the code grabs around 10K more whilst unrolling the background scroller. Spacial awareness is important here because I’m planning to put the final release version of Stercore XD out as a cartridge image for the RGCD competition. To that end the build process automagically makes a working CRT image for testing.

I still have a “to do” list including tweaks to the collision detection, a rewrite of the enemy movement code to optimise it, adding explosions and bolting in the simple attack wave driver from Super Hyperzap with a couple of small tweaks but, since there’s currently only about 280 bytes of ROM left in the 16K block the game has to occupy as a cartridge, some concessions might be necessary. To give a sense of scale, this paragraph is 457 bytes…

Workprint – April 2019

The work on pushing new graphics into the updated C64 version of Stercore is progressing slowly but surely; so far I’ve replaced pretty much all the original attribute-flavoured tiles with graphical versions – as in the screenshot from Char Pad below – but they’re still in need of tweaking to remove or rework some elements. It does look like there’s a reasonable amount of space left in the character set for some extra detail though and, although there’s a few ideas brewing for new graphics to add, I’ll need to sit down and check through the maps first to make sure everything is present and correct before assigning characters.

Apart from that there’s not much else going on at Chez Roundabout because I haven’t really had much time – a dodgy shoulder has been making typing very difficult for most of the last month, which is frustrating when you’ve got ideas but can’t do much with them – which goes at least some distance towards explaining the lack of blog posts – but there’s a few odds and ends on my “to do” list for when things hopefully settle down in a week or so. And at the same time there’s all of the regular urges to write yet another horizontally scrolling shoot ’em up that need be fought…!

Workprint – June 2018

One ongoing project that’s been vexing me a little is the new C64CD game; the problem I’m having is with the name, which is basically six consonants from the latter half of the alphabet slung together pretty much at random which make it, as far as I can tell, unpronounceable. That wouldn’t be a problem except there’s always a chance I’ll need to talk face to face about this thing down the line and having to refer to it as “Thingybob” because I can’t pronounce my own game title would be embarrassing if I had any shame… perhaps I’ll just tell everybody that it’s pronounced “Thingybob”?

Anyway… the weekend saw me prodding around Vallation with the intention being to migrate to the latest version of Char Pad; this was mainly because it supports direct editing of the character set again rather than painting to the tiles, something which kept me away from every version after the first release. This transition would also mean a begrudging upgrade to my cheap and incredibly cheerless map converter which was originally written because the levels are stored as source code with each screen being a converted block of Char Pad map data followed by colour, exit and enemy data.

But on yanking the existing CTM files into the new version of the editor I discovered that the mode Vallation used which assigned thirty two bytes per tile with half of them being attribute data wasn’t supported in this updated Char Pad! Instead there’s an attribute byte per character so, if the byte for character $14 is set to red, every instance will appear in that colour and there has to be a second copy of the character if you want one in purple. But after muttering darkly about this for about half an hour whilst and prodding grumpily at the data, I realised that the bullet had actually been dodged because, apart from the four teleporter characters which ended up getting their own code, the tiles weren’t using more than one colour per character so converting it was actually possible.

It still took a quite few hours of juggling to sort out the existing levels, followed by rewrites to the tile plotters which updated how they handled colour, then some new code allowing each tile set could have a unique attribute table as well but, after three days scratching my head and swearing, for the most part at least all of those changes are invisible because it looks the same as before! On the plus side, there’s over 5K of memory saved on colour data and I can work in a far more comfortable version of Char Pad now, although the map converter was more cheerless than I remembered it being and will need further surgery sooner rather than later.