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.
Time to push another release off the C64CD pile and this time it’s Stercore 64 which is a scrolling shoot ’em up for the C64 that is an almost direct port from the Spectrum version that was released last week. There’s very few tweaks apart from a SID rendition of the original beeper soundtrack for which I can only apologise on a loop during play and the backgrounds being tweaked for the C64 palette. Oh, and it gained a “64” at the end of the title just like publishers used to do in the early 1980s.
After those changes and the higher resolution of the C64’s screen in the display mode being used it’s pretty much the same game, hammering along at ludicrous speed just like the original by moving the attribute data to scroll the background – this is now an unrolled loop which replaces the LDIR commands in the Spectrum code – and rendering all of the moving objects for the player, bullet and enemies to the bitmap with software. It was quite a pleasant surprise to find that, although my Z80 software sprite routine isn’t exactly optimal, the 6510-powered equivalent kept up with it and I didn’t have to spend any serious time optimising the C64 code to get it running at the same speed.
Before sitting down with the assembler I considered doing a re-imagined version of the game for the C64 which took advantage of the hardware sprites and how their background priorities work with multicolour characters – have a look at the game Implosion, the sprites can pass between background elements without software-based clipping – but eventually decided to keep things as close as possible to the original in part for the programming challenge that route presented. For anyone who fancies digging around further, there’s source code at GitHub,+
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.