Pete Shelley, screensaver and demoscene pioneer

Here's a video of the program, running in an emulator, and synchronized with the album. "Press any key at start of music":

This video shows the whole process of booting it up, along with more detail than you probably need to know about cassette tape audio fidelity:

In 1983, Pete Shelley's album XL•1 included as its final track a program for the Sinclair ZX Spectrum 8-bit home computer. To play it, you had to first copy the track from the vinyl record to cassette, wait several minutes for the computer to read the cassette, and then press the any key once you dropped the needle on the first track! Lyrics and visualizations ensued.

Here's the programmer's story: Joey Headen:

In late 1982 Pete had ordered a Sinclair Spectrum by mail order, and one of the first BASIC programs he wrote put up the lyrics to one of his songs prompted by key presses. [...] I spent most of Christmas 1982 learning machine code and disassembling the Spectrum ROM.

I didn't have an assembler for the Spectrum, I don't even know if one was available then, so all the code had to be converted into its hex equivalent and typed into the program. All the jumps and calls to subroutines had to be hand calculated as well! When the machine crashed it had to be restarted and the cassette tape program reloaded, usually taking at least 5 minutes. [...]

With only a few days before the album had to be finished, Pete still had two songs to complete, one of which only had a title. We had to wait for the songs to be completed, type in the lyrics off scraps of paper, and then synchronize the lyrics to the music. [...]

Once the album was finished and mixed we had to do the final version of the timing for the lyrics. This involved adding in the timings between each track on the final master version of the album. It was at this point that we noticed that there was as much as 5 seconds difference (over a 20-minute side of the album) between different one-inch tape machines in the studio. The implication of this was that home turntables and tape machines could get horribly out of synch with the program unless they had some sort of variable speed control. One solution to this problem would be to add speed control keys to the program, but it was too late to add any more code. [...]

Our work wasn't quite finished yet, as we had to cut the album. To our knowledge nobody had put a program on a 12-inch disc before, so we were breaking new ground. After the last music track of side 2 there was a locking groove to prevent the code from blasting through someone's speakers.

The only way to play the code was to physically lift the needle onto the last track. We cut one master disc and tested it on a Spectrum but it didn't work, so we had to reset some of the levels and try again. Luckily the second master disc worked fine and it could go to the pressing plant.

Previously, previously, previously, previously, previously, previously, previously, previously.

Tags: , , , ,

  • Previously