Playing Ano Gaia (Spectrum)

Another week and another shoot ’em up… hardly surprising considering it’s me writing, but perhaps I need to go looking a little further afield at some point. Anyway, this particular blaster is Ano Gaia, which was developed by Simon Tillson (with some great, beeper-powered title music by Andy Mills) and published on the cover of Your Sinclair during 1992 so presumably the only thing preventing it from getting a full commercial release was only that it arrived pretty late in the day. The storyline that YS were provided with apparently talks about “pollution, luxury spacecraft, gigantic pirate ships which swallow up everything in their path and waistcoats” so can safely be ignored because the game itself is about flying a spaceship through scrolling landscapes and blasting anything that moves even if it hasn’t actually started to.

The ship starts off moving slowly and pretty much under powered for the job, so it’s very convenient that random enemies will leave a power-up behind when blasted. There are two to collect – a cyan one that boosts the ship’s speed or the red one which beefs up the weaponry – and passing over these items with the fire button held down will bolt them on. Dying resets the ship back to the start of the current stage and downgrades both speed and firepower by the equivalent of one item, but it doesn’t take long to build everything back up again.

Keeping the ship to one or perhaps two speed ups is best because it becomes surprisingly unwieldy at top speed, something which isn’t helped by the collision detection being unforgiving. There’s also a couple of rather cheap deaths to be found where the background splits with one path leading to a literal dead end but, for players willing to sit down and learn their way through it as would more often be expected of a horizontally scrolling example of the genre, Ano Gaia is enjoyable stuff and technically impressive as well.

Stercore (Spectrum)

There’s another C64CD release drifting it’s way around the interwebs this evening. Stercore is a no-nonsense, scrolling shoot ’em up for the Sinclair ZX Spectrum with 48K or more RAM which was developed by yours truly a little while ago with the intention being to enter it into the venerable CSS Crap Game Competition because, well, it’s pretty darned crap! The code languished for a quite while after being mostly completed and was finally pushed out of the door and into the wild after a quick wash and brush up.

Everything should be moving at a constant 50 frames a second during play – my DivIDE is currently in need of either a major service or more likely replacing so I didn’t get a chance to try it on real hardware before release, but it doesn’t appear to be dropping frames under emulation – and the backgrounds whip past at a dizzying eight pixels a frame since it’s all built from attribute cells rather than graphics data. Because it would probably be impossible to play at this speed if there were background collisions there isn’t anything to smack into, but parts of the landscape scroll over both the player and their assailants so a close eye needs to be kept to make sure enemies aren’t not lurking behind something.

There’s even some beeper-powered “music” on the title page which was composed by a Python script called Autotracker and then forced kicking and screaming into Beepola. For the sake of maintaining the 1980s budget game aesthetic, the Wham! The Music Box style sound driver was selected when compiling the music rather than going for any of the more complicated routines available and there are also some appropriately beep-laden sound effects during play as well.

This is my first complete assembly language game for the Spectrum and yes, that’s very apparent even without delving through the source code at GitHub – it’s recommended that anybody brave enough to do that wears hazmat gear or at the very least a good quality wetsuit and breathing apparatus – and, although I can accurately make the claim that Stercore has been written in 100% machine code, it really isn’t “pure machine code” as some people used to claim on their cassette inlays. Oh no, this is the dirty, impure stuff that our parents would warn us about as children…

Workprint – July 2018

Things have been a little rough of late with everything being topped off with our thirteen-year-old dog King passing away on the 7th of June – he arrived here at the start of 2005 as a small, six week old bundle of fluff. I haven’t really been in a fit state for much of anything since then – I pretty much kept up with Retro Gamer and tried “powering through” and sticking to my blog schedules but only managed about half of the “planned” posts – and I was even quieter than usual on social media which is something of an achievement I suppose? I’ve just realised whilst writing this that it happened almost a month ago, but I’m still getting the occasional wobble when it would have been his dinner time…

I haven’t done much code since then, but the bulk of what I’ve written during that period has been “busy work” to keep my mind occupied more than anything else. Vallation hasn’t seen any attention because I didn’t dare sit down with anything that complicated where I could easily lose concentration halfway through modifying something important and leave myself with a steaming mess to knock the bugs out of later… I’m perfectly capable of doing things like that often enough as it is without any external encouragement!

One of the distractions was writing a game for the Spectrum for release under the C64CD brand. It’s pretty much done apart from needing quite a bit more level data, but now it’s that close to complete I’m sort of committed to finishing it as an entry for the venerable CSS Crap Game Competition. It’s crap in the sense that it’s incredibly simple as a game and my Z80 is shockingly bad to the point where I’m considering a disclaimer when the source goes up to Github warning people that it’s not there as a “learning tool” unless being used as an example of how things really shouldn’t be done. That doesn’t stop me being almost perversely proud of it for some reason?