Comparing Galaksija and Spectrum tapes

13.02.2007 14:23

Both Sinclair Spectrum and Galaksija use ordinary audio cassettes for program storage. They do however use different modulation techniques to store digital data on the audio-frequency range analog signal that gets recorded to the tape.

Here's how a short program hears like: Galaksija and Spectrum.

First thing you can notice is that on Spectrum, there are two distinct block of data (there's a pause in the middle of the recording). That's because Spectrum puts a separate header in front of each chunk of data it saves. This header contains the name of the block that follows, where in memory it should be located and similar meta-data. Galaksija on the other hand uses a similar header, but saves it in the same block that also contains the data itself.

On both systems, each block of data is preceded by a leader signal. This signal carries no information. It serves only as a kind of reference signal which the software can easily recognize - it tells the computer that a block of data will follow immediately after it. It also helps the software (which is of course running asynchronously to the signal) to synchronize with it. On a Spectrum tape you can hear this leader tone as a pure tone at 800 Hz (the beeeeep in beeeeep-bop). Galaksija's leader is harder to make out. If you listen carefully you can hear that the beginning of the recording is a bit more regular than the other part. That's because Galaksija simply uses some 100 "0" bytes as a leader - there's no specialized tone or frequency dedicated to it.

Two bytes on Galaksija tape

Two bytes on Sinclair Spectrum tape

(These are idealized waveforms of course - in reality the square signals get rounded because of the limited bandwidth of the tape and recording equipment.)

Spectrum uses frequency shift keying modulation to store its data, while Galaksija uses a modulation I can't really place anywhere. The main difference is that while Spectrum uses tones of different frequencies to store 1s and 0s on the tape Galaksija uses short impulses - two impulses for 1s and one impulse for 0s. This means that much of Galaksija signal's energy is in high frequencies (impulses in theory include all frequencies from 0 Hz to infinity).

That is also the reason why Spectrum tapes are much nicer to hear - they mostly include frequencies that are close to human voice (between 800 Hz and 4000 kHz). Galaksija tapes on the other hand hear closer to white noise than a legible signal because white noise also includes all frequency components.

In the end I would say that Spectrum has a much better and more robust modulation scheme than Galaksija. Old magnetic tapes tend to loose higher frequencies much faster than lower ones so I would guess that Galaksija tapes would lose their integrity faster (unfortunately I don't have here any old Galaksija tapes to test this, but I've heard that it can be quite hard today to salvage old Galaksija programs from tape).

It's interesting why Galaksija was designed with this simple modulation scheme instead of imitating Spectrum (I'm sure Spectrum's ROM routines were available to Galaksija authors). The hardware is almost identical in both machines so that couldn't be a reason. One of the articles about Galaksija mentions that a slower baud rate was chosen to improve reliability. However they could have lowered the baud rate while retaining Spectrum's proven modulation scheme. It would certainly be more reliable than making their own. Perhaps it was the limited ROM space.

Posted by Tomaž | Categories: Digital

Add a new comment

(No HTML tags allowed. Separate paragraphs with a blank line.)