Workprint – August 2018

As noted a few times recently, I’ve cycled over into “demo mode” and have been working on… well, something that I’ll be keeping quiet about for a little while yet until it properly gets past that stage where it could be changed or indeed completely reinvented on a whim. Generally speaking though, my intention is to have something ready for X’2018 in early November – assuming we have a representative to take it along – and have a cluster of prototype routines along with some other ideas I’ve been meaning to try and a folder of logos because everybody loves logos… right?

Things have been going slowly but surely so far – today alone I somehow managed to metaphorically paint myself into a corner on two different occasions with what should’ve been relatively simple code, either choosing a less than sensible place to store things or simply running out of memory altogether – and, because it’s been a painfully long time since I worked on anything that wasn’t a onefiler, last week saw me sitting down and trying to get my head around cruncher and loader integration with some of the more recent iterations of popular tools with very little joy… at least until I discovered lft’s Spindle that is.

Spindle is, in essence, a back engine for demos which deals with loading and decompressing of data to the point where the user doesn’t need to be involved; no fighting assemblers to build loader or decruncher code, no messing around with building disk images of data, just document the files being used and the order they’re needed via a script file which is then run through Spindle to automagically get a working disk image out the far end. There are caveats of course – a couple of places in memory have to be avoided, something else I bumped into today – but having to do things just a teensy bit differently is worth it for the results.

Main project aside, there’s also been a little time spent generally doodling both with graphics and ideas for effects and a couple of forays onto other platforms; something might come of the latter if they survive testing on real hardware – in both cases the code was for a platform I don’t actually own right now, so that’s something of an issue – but at the very least it was all good practice.

Assorted outages

Regular visitors – all five of them since it’s apparently gone up – may have noticed that the server this website lives on has been having what I’ll charitably call a few “stability issues” of late… in fact it’s been less strong and stable than the current Tory government and that’s really saying something right now. Part of the problem has been metric bucketloads of automated brute force attacks on the admin account for at least one of my WordPress installs, hitting the login page so rapidly that Apache basically eats all of its available resources and crashes out. Since this hammering started the server had its RAM upgraded, configurations were tweaked, the login pages at least partially concealed, lots of passwords changed and Cloudflare set up to hopefully smooth out at least some of the incoming crap.

The attacks are still ongoing right now although less frequent than before, but the prolonged game of Whack A Mole with my anonymous nemesis – overselling things somewhat perhaps – means that the other outage today is, well me. I’ve not really had a decent night’s sleep for three days and forgot to eat at least once, so I’m taking this weekend off in part because I haven’t been playing any games but mostly because I need some rest. There are a couple of pluses at least; I’ve been putting off upgrading the server for ages because I loathe modifying hardware when it’s “working” so that’s done and, because the machine itself is sat in our front room, I’ve watched quite a bit of classic Doctor Who whilst on babysitting duties.

In other news, I seem to be cycling over to “demo mode” at the moment although there’s a good chance that’s just sleep deprivation or a lack of caffeine talking – more news on that one either way as it happens, as they say.

Randomly musing about NTSC

So I make a nuisance of myself on Twitter from time to time… not much because that’s not my “style” but every now and then something interesting will come up and I stick my metaphorical oar in. For example, a tweet drifted through my feed from Joseph W. which said…

It’s regrettable that the NTSC C64 demoscene never really took off. I know there are some technical reasons why, but there were still some pretty nice demos that came out of NTSC groups.

My response was that “being cordoned off from the PAL scene meant the one-upmanship that drove and indeed still drives demo dev wasn’t there” because, essentially, the coders in NTSC territories saw a small fraction of what was being churned out in industrial quantities over in PAL land and the most technically impressive pieces of code required cycle accuracy and ate all of the available processing power on each frame so wouldn’t run on American or Canadian machines. It’d be difficult to devise uses for some of the VIC-II’s “features” in a vacuum or pick through PAL code that wasn’t running correctly on their machines but, even when emulation unified things a little, the NTSC scene didn’t really seem to evolve.

I have fond memories of the NTSC demo scene in the mid to late 1990s because I was a small part of it; I spent quite a bit of time on the relevant IRC channels, joined Canadian-based Carcass for a while to contribute code and graphics to a couple of releases and, along with contributing to disk magazine Driven on a few occasions with a mixture of articles and the occasional bitmapped logo, I also entered all three of their 4Kdemo competitions and won two! But at the same time, that didn’t bode well for the NTSC scene if PAL bunnies could rock up and beat the “local talent” like that and, despite there being a couple of driving forces like Coolhand trying to keep things rolling, it still ground to a halt eventually…

In response to my tweet, Joseph W. went on to say…

I suppose it would be pointless to make a NTSC demo these days.

…but I’m not sure that’s the case any more than it could be said of other “niche markets” like demos for the C128, SuperCPU or REU-equipped machines. Making demos is primarily done for fun anyway so, if someone felt that they’d get enjoyment from focusing on doing NTSC-specific C64 releases then they should and VICE can handle pretty much anything they’ll throw at it so the rest of us get to enjoy the results. I’ve been sidetracked by demo code since the weekend myself and it’s very tempting to NTSC fix some of my prototype code and throw something together right now…