Archive for the ‘Demoscene’ Category

Ode To Claire / Snakebite

Wednesday, June 10th, 2009

A couple of fast-made Spectrum releases for last month’s most excellent Outline demo party. Ode To Claire is a curious little 128 byte intro, using a trick I’ve been wanting to try out for ages. It’s not exactly a fast-paced action extravaganza, but it does fit 150-odd characters of avant-garde poetry, the printing routine, and a demo effect into 128 bytes of code. Working out how is an exercise for the reader (and I’m quite interested to know whether the secret is immediately obvious to anyone who’s at all familiar with the Spectrum…)

On the musical front, Snakebite is a chiptune with a middle-eastern vibe, modelled after every Turkish Eurovision entry ever. It got third place in the competition, and originally they weren’t going to give out a third prize, but they had some spare food left over on the Saturday night, so I won a jar of sausages. Best. Prize. Ever.

Download gasman_-_snakebite.mp3


Thursday, October 9th, 2008

This is it then… my big comeback to the Javascript demo scene after a two year absence, and also the moment when my demo coding muse returned from a long holiday, I guess. Ladies and gentlemen, I give you… Antisocial, a biting satire on social networking phenomena.

Visit the Antisocial microsite…

With my characteristic lack of organisation, I found myself with two weeks to go to the Sundown party, having promised a demo release, and with nothing specific in the pipeline. So, I decided to take a chance and run with an idea that had been sitting on top of my “demos to write when I have more free time than I do right now” pile for the best part of a year. I had it all planned out in my head, right down to the soundtrack: a mysterious track from an unlabelled CD I picked up at a ZX Spectrum Orchestra gig in 2005 (which turned out to be Round, from their Clive Live^3 EP). A quick bit of permission-getting later, and I was at the point of no return.

I knew it would be an ambitious job, and a bit of a leap artistically and technically from my usual stuff. I pencilled in a rough project plan in my diary. I drew up storyboards. I read up on the maths that was too nasty to contemplate on previous projects. And shockingly enough, I actually enjoyed all of the above.


50/90 2008: somewhat fewer than 50 songs

Monday, October 6th, 2008

50/90, or 50 Songs In 90 Days, is the less photogenic and slightly more intimidating cousin of February Album Writing Month, running throughout July, August and September. The idea is to write fif- oh, you worked that bit out already. This year FAWM supremo Burr Settles donated the song-posting infrastructure to 50/90 (previous years were run through a Yahoo group) so it became a natural off-season hangout for FAWM veterans. Me, I wasn’t planning on taking part, but since I ended up writing a couple of songs over that time period for one reason or another, it would have been silly not to crash the party late on and participate in a laid-back, not-letting-it-take-over-your-life sort of way. And here are the results.

Everything Is Relative

Download matt_westcott_-_everything_is_relative.mp3
This started out as an instrumental track laid down at Shucon 2008 on TDM’s GarageBand / MIDI setup, which came back to bite me as a nasty bit of vendor lock-in. (I figured that since GarageBand took MIDI input and stored it as MIDI-like note events, I’d be able to export it to a .mid file, right? Silly me.) Luckily I managed to salvage / re-record enough of it to work on it some more and develop it into a proper song. Spurred on by some particularly eclectic music competitions at Assembly, I decided to try my luck at entering it at Evoke, just to see what would happen when it was thrown in against a whole load of D+B and trance tracks. Not surprisingly, it failed to qualify. But having done the rounds of more or less the entire summer demo party season, it found a home at Sundown 2008, where it got 4th place. Score!

The lyrics were actually sparked by the train journey back from Shucon – at the seat in front of me, I saw that someone had drawn some initials in a heart on the window. This made me think “eww, that’s a bit tacky. Oh, hang on – whoever did that drew it on the outside of the window but did it in mirror writing so his girlfriend on the train could read it. Aww, that’s like the most romantic thing ever!”

Edgware Road

Download matt_westcott_-_edgware_road.mp3
A slightly more obviously train-related song, written to immortalise that enigma of the London Underground where time stands still, and add to the repertoire of songs about tube stations. Lyrics were mostly written on the Eurostar (hence the namecheck in the bridge) and the recording was done a-cappella stylee in the cabin of a sleeper train on the way back from International Vodka Party. Naturally, this was a horrible painstaking process of waiting for the moments when the train wasn’t making an absolute racket, but it had to be done for posterity. How many other songs have been written and recorded entirely on public transport, eh?

Cabbage Soup For The Soul

Download matt_westcott_-_cabbage_soup_for_the_soul.mp3
Written for Hoopshank as part of intense negotiations (not really) over contributing to another as yet unannounced musical project. He demanded songs of cabbage… I answered the call. I added a self-imposed constraint that the song had to have a mostly-serious message, so I came up with the idea of cabbage soup for the soul, as being something like Chicken Soup for the Soul but not as pleasant, and better for you. And suitable for vegans. And with that, the song just wrote itself. Or, more accurately, was written on my behalf by my alter ego, fictional Scottish indie band Glencoe Horse.

At The River (slight return)

Download matt_westcott_-_at_the_river_slight_return.mp3
OK, scraping the barrel a bit here. But you can’t really blame me for having a sudden bout of obsessive-compulsive disorder on realising that the lyrics to At The River by Groove Armada consist entirely of a half-sentence that trails off unsettlingly without completing its train of thought. “If you’re fond of sand dunes and salty air, quaint little villages here and there,” – then… what exactly? Clearly, this had to be fixed. So I did.

(All songs downloadable from the not-very-pretty – lyrics available from my 50/90 profile)

The Ninja Milkman Conspiracy (and Maze)

Sunday, October 5th, 2008

I’m a bit behind in my blogging, so I’ve got a bit of a “what I did this summer” catchup to do. First up is The Ninja Milkman Conspiracy, a cheap and cheerful oldskool scrolly Speccy demo made for this August’s International Vodka Party, featuring the classic circle interference effect, some creative use of dithering, and a dancing robot. What more could you ask for? The title, incidentally, was just something random and irrelevant to save it from being called ‘IVP 2008 demo’ (which is just as well, because there were already 2 other demos in the competition called that) but is actually a reference to the milkman at one of our offices who is able to deliver the milk and disappear without making a sound.

…All of which is ordinary enough, but the exciting thing (if you’re the sort of person to get excited about build scripts) is, um, the build script. I’ve been happily using makefiles for ages, but this time I finally flipped at the amount of redundant boilerplate you need to shove in there for a typical Spectrum project, even a small one like this – having to remember command line syntax, having to explicitly set up dependencies even though they’re all clearly marked as ‘include’ lines in the assembler file – so I came up with Maze, a Spectrum-oriented replacement for Make written in Ruby. Inevitably, being a scratch-my-own-itch sort of program, it’s a bit more hard-coded (and tuned towards my own way of working) than I’d like, but I reckon it’s enough of an improvement over bog-standard makefiles that it could conceivably be useful to other people. And if it is, maybe I’ll be encouraged to rewrite it in a more open-ended way some time…


Sunday, August 3rd, 2008

When I’m writing Speccy music, I’m always very conscious of stereotyping myself. At the Forever party, they gave up on anonymising music competition entries after realising that everyone in the room recognised the Gasman entry (and the Yerzmyey entry, the Factor6 entry…) within two seconds of it starting up – even if I’d gone to great lengths to reinvent myself.

This time, with two or three days left before Assembly and nothing to show, I decided to make it easy on myself, and stick with what I know – the primal boop-durr-tish-durr bassline, the crowd-pleasing echoing cascades – and not be too bothered about basking in my signature style. As a result, it’s not the most original piece of music I’ve ever written, but it did its job – it made first place in the Extreme Music competition where it was up against PC soft-synths in addition to the now familiar Commodores and Nintendos.

The title isn’t a bid to stir up controversy with drug references, by the way. I just liked the combination of words.

Download gasman_-_spacecake.mp3

AY Club: Breath Of Air

Saturday, May 10th, 2008

As a postscript to the release of tracker2ay, here’s the reason I wanted to transfer tracker files back to the Spectrum in the first place: to play X-Agon’s 6-channel Breath Of Air (as featured on the AY Riders Satellite single) the way that God intended, on two Spectrums playing 3 channels each…


Saturday, May 10th, 2008

Here’s a utility prompted by zxbruno and Eq both asking, in the space of two days, how to convert STC, SQT and PT3 music files to something you can actually play on a Spectrum. For those not in the know, STC and friends are Spectrum tracker file formats originally introduced by Sergey Bulba‘s AY Emulator and which are now the de-facto standard for archiving Spectrum demoscene music (most prominently on ZXDemo, ZXTunes and Sergey’s epic Tr_songs archive). Which means it’s a bit unfortunate that there’s not been an obvious way to transfer them back to the Spectrum.

In principle it should just be a case of locating the appropriate Z80 player routine and bundling that together with the music data. In practice it involves a lot of faffing about (such as repointing pointers to make up for slight rubbishness in the SQT data format, and writing a 5-line Basic loader/player). Now, thanks to this utility, you just need to type tracker2ay mysong.tap instead. (Oh, and it can convert to TAP, TZX or AY.)

If at this point you’re screaming “But why does it have separate source code if it’s written in Ruby, which is an interpreted language?” then award yourself 20 geek points. Ah, you see, this time I’ve been playing with rubyscript2exe (and tar2rubyscript) to create all-in-one executables that everyone can enjoy without worrying about library dependencies and things. (But obfuscates the code in the process. But in a good way.) Please do check out the source code if you’re curious about that sort of thing, because I reckon it’s one of the best bits of code I’ve written in a long time, in a ‘nicely-written code’ sort of way rather than ‘evil complicated hacks that go together to do something superficially elegant’.

Mr Phong

Thursday, February 21st, 2008

There just aren’t enough songs about computer graphics pioneers. Here’s one about Bui Tuong Phong, of phong shading and phong illumination fame. I decided to record this one entirely without keyboards, so brace yourselves for a gloriously shoddy guitar solo and a gloriously glorious bottle solo. (Forgetting to take out the recycling can be a good thing, you know.)

Download matt_westcott_-_mr_phong.mp3



Sunday, February 17th, 2008

My very fast (written in something like 2 hours) music entry for raww.orgy, which ended up in 4th place. In a cunning kill-two-birds-with-one-stone move, it’s also one of my FAWM songs.

Download gasman_-_triptik.mp3

Triptik on FAWM

Pimp My Chips

Wednesday, February 6th, 2008

[Screenshot: Pimp My Chips]

This week saw the release of the long awaited Ate Bit musicdisk, Pimp My Chips – featuring a selection of Spectrum covers of classic pop songs. Musical contributions came from Mofobaru, Simon, Nik-O and myself, and the full pack is well worth a download if you’re suitably Windows-executable-equipped. If you don’t, or you’re more of an instant-gratification-click-and-listen type (or a stick-it-on-your-mp3-player type), here are my tracks as friendly bandwidth-hogging MP3s.

Dancing Queen (Abba)

Download gasman_-_dancing_queen.mp3

Disco 2000 (Pulp)

Download gasman_-_disco_2000.mp3

Video Killed The Radio Star (The Buggles)

Download gasman_-_video_killed_the_radio_star.mp3

Paranoid Android (Radiohead)

Download gasman_-_paranoid_android.mp3