I’m coming in with the sickness: finding a lost C64 treasure
It’s a sad fact that emulation is no longer a hot topic in game culture any more. What with the ubiquity of retro content and its sad consignment to a neglected mule that’s fired up once in a blue moon to visit some misty past, it’s easy to let exciting developments slip by.
Emulation is more than some novelty jukebox for rainy afternoons - it’s crucial to maintaining a history of computing. For instance, *all* Commodore 64s will apparently stop working by 2050 due to non-replaceable component failures. Spechums had better not start crowing - Z80s are SHIT and die even quicker than 6510s and that’s a fact - it’s because they run faster. We’ll still have various 68000s for Amigas, STs, Megadrives and NeoGeos, but getting the right dies will place their extinction around a decade or two after the 8-bits. CPUs are one thing - after all, the generic ones were manufactured in huge quantities, but it’s the system-specific ICs that are the problem. SIDs, VICs, ULAs, Fat Agnuses and the like are much, much scarcer.
So fuck you, you bitches that fire up some 8-bit masterpiece of programming only to complain that it’s too hard or isn’t ‘as good’ as modern games. This is vital shit and we should be immensely thankful that are enough people in the world interested in advancing the discipline and providing ever more awesome tools.
The latest star in the C64 scene is ICU64, a visual debugger that provides some amazing insights into exactly what happens when the C64 is doing its thing. Really, it’s a memory and memory activity visualisation tool and its viewers are truly a thing of wonder. It doesn’t show the contents of the C64 RAM, it shows what the CPU is doing to it.
WITNESS:
http://www.youtube.com/watch?v=tjcvR5McmSg
Variants are here:
What the author Mathfigure has done is to open up the hidden activity of the C64 to see the magic within - you see every memory read, memory write, memory blank and some other shit, represented by colours that I have no idea what they’re for, and in doing so, ICU64 paints an astonishing display of the software ‘machine’ in action. You see the machine blank its RAM before decrunching data into its intended locations byte-by-byte. You see text being read before it goes onscreen, map data spooling, background counters incrementing, all as lines and blocks of colour. Naturally, different games paint different patterns. A straight sprite-based scroller can be distributed around RAM in a totally different way to another. 3D vector games paint bizarre abstract pieces as the CPU goes spastic processing its heavy maths. The oddest game to watch doing its calculations is Geoff Crammond’s The Sentinel. The precalc at level generation throws up some truly fucked patterns in the RAM activity, even doing some crazy scanning laser beam shit AROUND IN A CIRCLE that you’d swear was programmed deliberately to look FUCKING SICK to future generations with an amazing RAM viewer.
It was in ploughing through games to spy on that I stumbled across three versions of Thalamus’s Hawkeye. Hawkeye is a fairly mundane game really, if technically awesome for its day (not quite as stellar as Armalyte or Mayhem In Monsterland, but pretty sick), though its standout feature is the Manics Of Noise soundtrack. It’s funky as hell gamewise but an often forgotten fact about Hawkeye is that it had a mix-e-lode loader - just like Rob Hubbard’s definitive entry for Delta, only with Maniacs Of Noise tunes. If you’re a TOTAL DICK and know NOTHING of C64 history, mix-e-lode was an interactive version of the traditional loading tune, consisting of a group of musical and percussive loops that could be mixed and matched at the player’s discretion. Delta’s loader is that awesome that you can play with it for much longer than the game takes to load and in its day, it was pretty commonplace to not bother loading Delta at all (even though the title tune was mindfucking work on Rob’s part), but to stop the tape and just bang away with the rudimentary menus that comprised the mixer. Now, in an age of emulation where it’s easier to find cracked versions than retail, I’d never been able to find a rom of either Delta or Hawkeye’s mix-e-lodes. I actually discovered the Delta one as a compunet upload on the world’s most obscure C64 Collection CDR, which I bought in like 1996 or something and can’t even remember the name of. Needless to say, that disc died a fuckload quicker than the two C64s I’ve got. Anyway, Hawkeye’s loader eluded me for over A FUCKING DECADE. Just to place this in more context, I’d only ever used it five times because I borrowed Hawkeye off a mate and had to give it back after a weekend. It just so happens that when I was stumbling around trying to find games that might throw up pretty RAM access patterns, I found the one cracked version that still has the loader intact and you know what? It’s better than Rob’s.
In some ways.
This is all beside the point if I’m entirely honest. Really the aim here is to stress how amazing it is to actually see the acitivty of a computer running a game in such a clear way. I can only hope this inspires similar tools for other emulated systems. I’d love see how a SNES, Megadrive or Neo Geo kicks ass in the same way I’m now able to see the C64. Everyone should really give it a go and, if you can fucking bear it, try to learn more about what’s going on. It’s only by understanding what our gaming machines are actually having to do that we can truly appreciate the sheer, precise, beautiful wonder of this lovely medium.
21
January 26th, 2010 at 9:42 am
Wow, didn’t know about this, interesting stuff, will have to give it a go myself sometime. The problem with getting people interested in this other side to the history of software (and games) is they can’t visualise it - much more fun seeing the memory! Soooo pretty! :D