Commodore Datasette

The Commodore 1530 (C2N) Datasette (a portmanteau of data and cassette), was Commodore's dedicated computer tape drive.

It provided access to an inexpensive storage medium for Commodore's 8-bit home/personal computers, notably the PET, VIC-20, and C64. A physically similar model Commodore 1531 was made for the Commodore 16 and Plus/4 series computers.

Contents

Description and history

The Datasette contained built-in analog to digital converters and audio filters to convert the computer's digital information into analog sound and vice versa (much like a modem does over a telephone line). Connection to the computer was done via a proprietary edge connector (Commodore 1530) or mini-DIN connector (Commodore 1531). The absence of recordable audio signals on this interface made the Datasette and its few clones the only cassette recorders usable with CBM's machines, until aftermarket converters made the use of ordinary recorders possible.

The inexpensive and widely available audio cassettes made the Datasette a good choice for the budget-aware home computer mass market. In most parts of Europe, the Datasette was the medium of choice for several years after its launch, although floppy disk drives were generally available. In the United States, however, disk drives quickly became standard, despite the Commodore 1541 floppy drive costing roughly 5 times as much as a Datasette.

The Datasette was very slow albeit extremely reliable[1], transferring data at around 50 bytes per second, and even the 1541 was significantly faster. Some years after the Datasette's launch, however, special turbo tape software appeared, providing much faster tape operation (loading and saving). Such software was integrated into most commercial prerecorded applications (mostly games), as well as being available separately for loading and saving the users' homemade programs and data. These programs were only widely used in Europe, as the US market had long since moved onto disks.

Datasettes could typically store about 100 kByte per 30 minute side.[2] The use of turbo tape and other fast loaders increased this number to roughly 1000 kByte.

Interface

The Datasette has only one connection cable with a PCB edge connector at the computer end. All input/output signals to the datasette are all digital and so all digital to analog and vice versa is handled within the unit. Power is also included in this cable. The pinout is ground, +5V, motor, read, write, key-sense. The sense signal monitors the play, rewind, and fast-forward buttons, but cannot differentiate between them. A mechanical interlock prevented any two of them being pressed at the same time. Unregulated 6.36 V DC[3] is used to power the cassette motor.[4]

Physical coding

To record physical data, the zero-crossing from positive to negative voltage of the analog signal is measured. The resulting time between these positive to negative crossings is then compared to a threshold to determine whether the time since the last crossing is short (0) or long (1).[5] Note the lower amplitude for the shorter periods.

A circuit in the tape unit transforms the analog signal into a logical one or zero which is then transmitted to the computer via the tape connector. Inside the computer the first Complex Interface Adapter (6526) in the C64 senses when the signal goes from one to zero. This event is called trigger and causes an interrupt request. This event can be handled by a handler code, or simply discovered by testing bit 4 of location $DC0D. The points that trigger this event are indicated by the black circles in the figure.[5]

Inside the tape device the read head signal is fed into an operational amplifier (1) whose output signal is DC-filtered. Op-amp (2) amplifies and feeds an RC-filter. Op-amp (3) amplifies the signal again followed by another DC-filter. Op-amp (4) amplifies the signal into clipping the sine formed signal. The positive and negative rails for all op-amps are wired to +5V DC and GND. The clipped signal therefore fits into the TTL electrical level window of the schmitt trigger step that in turn feeds the digital cassette port.[6]

On the PAL version of the C64, the time granularity is 1.014 µs (for NTSC 0.978 µs). For a 300 bit/s data rate this means 3284 * 1.014 µs per data bit.

Once the bits can be decoded it's fed into a shift register and compared to a special bit sequence continuously. This bit sequence can also be seen as a byte. A bit sequence match means the stream is byte synchronized. The first byte to compare with is called lead-in byte. If matched, it's compared to the sync byte as well.[5]

An example: Turbo Tape 64 has a lead-in byte $02 (binary 00000010), sync byte $09 (binary 00001001) and a following sync sequence of $08, $07, $06, $05, $03, $02, $01.[5]

Main models

Used with the PET, VIC-20, C64/128

There are at least four main models of the 1530/C2N Datassette:

The first two external models were made as PET peripherals, and styled after the PET 2001 built-in tape drive. The latter two were styled and marketed for the VIC-20 and C64. All 1530s were compatible with all those computers, as well as the C128.

In addition to this, some models came with a small hole above the keys, to allow access to the adjustment screw of the tape head azimuth position. A small screwdriver could thus easily be used to affect the adjustment without disassembling the Datassette's chassis.

Confusingly, the Datassette at various times was sold both as the C2N DATASETTE UNIT Model 1530 and as the 1530 DATASSETTE UNIT Model C2N. Note the difference in spelling (one versus two s 'es) used on the original product packaging.

Used with the C16/116 and Plus/4

Similar in physical appearance to the 1530/C2N models is the Commodore 1531, made for the Commodore 16 and Plus/4 series computers. This had a Mini-DIN connector in place of the PCB edge connector. This could be used with a C64/128 via an adaptor, which was supplied by Commodore with some units.

See also

References

External links