Bleepload

In an attempt to make it harder to copy the games, a number of different loaders were employed by TelecomSoft. The most popular of the loaders has retrospectively been christened “Bleepload”.

For those who aren’t technical, this system loaded the game in short, fast blocks. A hexadecimal number incremented each time a block was successfully loaded in. If one block failed to load in correctly, the player could rewind the tape by a few seconds and try again. (BBC Micro owners might recognise this general description as being very similar to the standard method used for loading BBC tapes!).

For those of you from a more technical background, the Bleepload data was structured from consecutively numbered sub-blocks. There was a short pause between each one, but often a copy of the tape would have corrupted pauses or pauses that were too small to register as a proper pause (20,000 cycles). This would cause the first byte on the following block’s pilot to also be corrupt.

Thanks to modern day emulators and the .tzx tape file format employed by many Spectrum emulators, you can see what is happening when a bleepload game is loading. The first block is short. This is followed by a longer BASIC block. The screen then switches to black and the game title is displayed as text (usually white INK on blue PAPER). Another CODE block follows, and then there is a series of short headerless blocks of code (varying between 250 - 270 bytes) with a very small pilot tone. The hexadecimal numbers are already being displayed by this stage of the process. The title screen usually appears after 2E blocks have loaded. Once the title screen has been displayed, the remainder of the game loads in via short headerless 267 byte blocks of code.

Musician and programmer Melvyn Wright was the original creator of the bleepload system for BBC, CPC and C64 releases. It is currently unknown who implemented it on the Spectrum.

What do you think?