Crack Intro (C64)

It’s been noted on a few occasions previously that I’m not particularly fond of the “festive season”, so here I am on the day itself applying WordPress updates and releasing another intro for the CSDb Intro Creation Competition. This one is rather literally called Crack Intro and was inspired by a couple of ICC-related releases with the same name from nomiStake. They all rely on the same “pun” – the idea that it’s an intro with some kind of crack on the screen – so the only real distinction is that mine actually fits within the competition’s rules, although I had to check beforehand that using a copyright symbol counted as a Cosine logo.

Writing the scrolling message for this one was pretty uncomfortable; the trick being used for the scroller relies on there being eight possible versions of each character so they can arbitrarily roll around within their own eight pixel wide cell, but that means there can only be thirty two characters. That means I get a space, 26 letters and five punctuation marks which are full stop, comma, question mark, exclamation mark and an asterisk so I could highlight phrases in a similar way to the C64’s power up message. This rolling font is generated when the code starts up, using the ROM character set to save a little space even though I have more than enough room left for some bespoke characters.

For anyone wondering, the copyright symbol is built from sprites and uses five in total and recycles the top row of three for the bottom whilst the middle two are being displayed. The cracks are built from characters apart from where they have to overlap the scrolling message; that’s where the spare sprites take over and the fractured parts of the power up message are using sprites for the text. The music is by Sean Connolly and a cover of the tune from Star Trooper by Melbourne House, and originally composed in 1984 by Clifford Ramshaw; it has a lovely, slightly manic quality that I felt blended well with what was happening on screen.

ICSRTU (C64)

Looking through my “schedule” I knew December was going to be a busy month, but one delightfully unexpected release which appeared a few days ago from Sean Connolly was a new C64 demo called ICSRTU-FM. The demo’s code was built around a rendition of I Can See Right Thru You by Supercharge created with Sean’s work-in-progress FM music editor and driver, which means it requires an expansion to run and for the best results that should be either an FM-YAM cartridge or the SFX Sound Expander with a YM3812 modification.

The latter device can be emulated by VICE – look for “SFX Sound Expander settings” in the Cartridge/IO sub menu and change the YM chip type whilst there – and those of us who are just “slumming it” with a stock SFX Sound Expander can still enjoy the music even if it doesn’t sound exactly as intended. My test machine is currently equipped with one and has been happily humming away to itself in the other room for over an hour now.

I did play a teensy part in this release, Sean sent me a scan of the record’s cover art which I converted to the C64. The results are rather “lo fi” because the original image is deliberately grainy and I only took the liberty of tidying some of the edges and adding a few dabs of colour here and there. The logo down the side was actually borrowed from the 1993 Cosine release Lethargy, which means it’s a quarter of a century older than anything else on screen and, on a completely unrelated note, I now feel almost painfully old.

Femtotro (C64) and Zeptotro (C64)

Last week I was looking back at my intro collection Backlog and there was some method to my madness – most of the time there isn’t and it’s literally just madness – because at the time of writing I already had Femtotro pretty much completed. This new CSDb Intro Creation Competition entry is based on the small Babygang intro included within Backlog and, as with that 1991 release, my intention here was to keep things small. To that end the custom character set, some of the sprite definitions and chunks of data used by the code are being decompressed into the screen RAM and then hidden by changing the attributes for those areas so they match the background colour.

The result is, after some rather unceremonious hacking at 4-Mat’s music with the excellent Regenerator to relocate its work space down memory, an intro that can run in under 4K including the screen RAM as long as whoever is writing the scrolling message doesn’t feel particularly verbose. Even with the longer text included in this release it finishes near $1600 so is hovering around the 4.5K mark and, again, that’s with the screen RAM. There’s also no raster interrupt code included, another decision initially made to keep things close to the bone that also means there’s nothing to reset on that front once the space bar is pressed.

Then there is Zeptotro, a less than sensible attempt to take the idea of loading data into the screen memory that Femtotro is using just a teensy bit further. It only decrunches into the screen memory and never uses any space above $07ff when executing – the final memory footprint is $03c0 to $07ff – which sort of makes it invisible because, if there were a program linked to it, the intro could literally just exit by jumping straight to the start of its decruncher without having to relocate any memory first. Once again, the music is by 4-Mat and has been rather rudely pulled apart to relocate it in memory, in this case so that it could be included directly into the intro’s source code for brevity.

That does mean I owe Matt an apology for being so brutal to his music driver on both occasions, but it was in a really good cause I swear! As is always the case, there’s source code available for both Femtotro and Zeptotro over at GitHub if anyone fancies a little delve down through them.