Watching Backlog (C64)

Since I’m in an intro-y kind of mood right now I decided to have a ponder about “past glories” and loaded Backlog, a collection of intros I wrote for various people during the 1990s that were thrown together into a single file at the end of 1999. Perhaps unsurprisingly the show starts with an intro, although this one was written specifically for the job; it has a logo by WHW Design, music from 4-Mat – one of his earliest tunes as a member of the group if memory serves – and the design was based on a Cosine intro Hookie used during the 1980s.

The first actual intro in the collection was written in 1991 for Chancer when he was a member of Babygang and is one of two I coded for them. It saw a fair amount of use in part because it was designed to be compact, with everything bar the music being crammed into the first 4K of memory and there are even a few cases of this in the wild where the music was removed entirely in order to save even more space. I’m told that it also compresses rather well, although that’s more by luck than design on my part!

The Derbyshire Ram intro that comes next in the collection hails from 1992 and is pretty simple stuff with a swinging logo, scroller and some cosine-following sprites but, because I’m thoroughly disorganised and it took a little too long to code, so Barry had already left Deadline by the time everything was finished! And there’s a similar story behind the Success intro that follows as well, it was commissioned by Mistri in 1993 and I spent some time cramming the logo and larger character set into a ridiculously small amount of space only to find out that they’d just joined forces with The Ruling Company and my code would therefore remain unused.

Next is the only other Cosine intro included in this collection, which was first used for the Electronic Music System V7.03 in 1997 and subsequently linked to a couple of Cosine games around the same time. The main “design choice” was to work within a reduced area of the screen by drawing a box around everything apart from the logo and this is the primary inspiration for Refix 2017. The final intro in the collection was coded in around five hours to go in front of A Lil Bit Of, a three part demo by Carcass again put out in 1997. The music in the final release was composed by Necrophobic, but I didn’t realise there was a new tune being supplied so the intro is timed around the Replay tune included on this release. Once space has been pressed we get to the finale, another 4-Mat tune accompanying a large “end” logo that swings onto the screen.

There are a couple more intros that could have been included including the second Babygang intro mentioned earlier – there’s an extremely good chance that I actually forgot about it when compiling the collection – and one I did but, if memory serves, never quite finished for Rebel Alliance around the time I was coding Pink Elephants In Lemonade. And because of those two the idea for Backlog 2 has been stewing pretty much since the first one was released although, unless I’m forgetting something else, there’s not much to go into it after those and the more recent Cosine intro used for GR9 Strike Force

Oldest Style (C64)

With musical accompaniment from the long-suffering Andy Vaisey, I pushed my first entry into the CSDb Intro Creation Competition for 2018 out of the door today. It’s a piece rather evocatively titled Oldest Style because there’s a logo with a $D016 wave effect and two areas with inverted graphics and raster-based colour changes beneath them, so it really isn’t doing anything special… but there’s still something unusual going on under the hood and that sort of counts, right?

First a little back story; when I were a lad, raster-coloured text was a new, exciting thing and the titles page of Andrew Braybrook’s game Alleykat was the first example I remember seeing on the C64. But as a novice programmer I simply didn’t understand the hardware well enough to code a working routine myself and my first instinct was to have a loop checking the current raster position by reading $D012 and, when it changed for the start of a new line, updating the relevant registers.

The problem with that technique are the badlines where new screen data is being fetched by the VIC-II; I didn’t know about them at the time so my routine worked for seven scanlines but would hiccup on the eighth, missing it completely. Waiting for every second scanline to get two pixel high splits worked without issue and a couple of the older parts in Sometimes including the tech tech actually do this, but I discovered how everyone else was doing raster bars around that time as well so switched to using a more sensible method for the rest of the demo.

So a few weeks ago I was, as is often the case, procrastinating and found myself reminiscing about that original routine and how clunky the idea was… before wondering if it’s actually possible to do what I hadn’t managed in the 1980s. The most “sensible” solution was to unroll the loop and the final result after quite a bit of testing has been pared down to just five commands that are repeated for every scanline where a register is being split – there’s source at GitHub for those wanting a delve around and the splitter code has been farmed off into a series of include files for easier reading – so one line of the logo has this code;

	LDA #$04
	CPY $D012
	BNE *-$03
	STA $D016
	INY

There’s some self modification updating the majority of those LDA commands to make the logo wobble and change the colours behind the static text, which was done because there aren’t enough cycles to read that data directly – I did try and it just wouldn’t behave, missing it’s timing by a frustratingly small amount – so one drawback of this method has been the size of the code and getting it and everything else into the first 16K of the C64’s memory. If we were to actually use this intro there are a couple of spaces left for a linker after the music but not much else and I’ve already got data decompressing directly to the screen in order to save space…

Watching Onedimensional (Atari 8-bit)

Running over last weekend was the latest edition of the Atari-centric Silly Venture party which has spent nearly two decades bringing fans of all things Atari together to party, chat and do demo-ish things; there were some great releases over the various Atari platforms as always, but I found myself drawn to one particularly old school demo which took part in the 16K Atari 8-bit competition. It’s called Onedimensional, was coded by Shadow of Noice and is basically a 1980s-style raster intro which features a four colour logo parked at the top of the screen, a double font scrolling message trundling past at the bottom and industrial quantities of raster bars dancing like nobody is watching between them.

This really couldn’t be described as pushing the Atari 8-bit’s boundaries and Shadow himself commented that it’s a “compo filler” in the scroller, but regular readers will know I love me some raster bars so a new production that does lots of variations on that particular theme is always going to catch my eye. The graphics are reasonable and do what they’re there for – Rocky’s logo is well drawn but part of me wants a teensy bit more colour – whilst the music was composed by Tobikomi (who appears to be a newcomer to the POKEY by the look of it) and is quirky but fun, suiting the on-screen action well especially since all of the effect and logo colour changes have been synchronised to it.

To be honest, I resisted the urge to do something along similar lines to this for about a decade – even when I finally gave in there were excuses like using 256 colours in MD201701 to hide behind rather than just going hell for leather with a no-nonsense, WSYNC-powered colour splitter – because the potential backlash from hardened Atarians to something like that is, quite frankly, terrifying! But Shadow made of sterner stuff than me and ran with it, doing every solid job overall especially when considering the small memory footprint he was working within.