Paper tape encoding scheme needed

From: Derek Peschel <dpeschel_at_eskimo.com>
Date: Fri Apr 12 00:18:45 2002

On Thu, Apr 11, 2002 at 11:24:49PM -0500, Bill Richman wrote:

> although I may be wrong. If I'm going to do something along the lines
> of using two 4-bit values to represent each byte, or an escape code to
> distinguish real 0's from leading blanks, and maybe include a
> full-width (FF) punch every foot or so to allow for easy folding,
> while having the reader software ignore them, I'd like to follow some
> kind of established standard. Can anyone give me any pointers on
> this?

For programs, the encoding schemes I've seen generally divide the data
into blcoks. You skip tape until you find a block header; then you read
a given amount of tape and checksum it. You stick the data at a current
address and increment the current address. At the end of the tape (marked
by a zero-length block or some other format) you jump to a given starting
address. If the load goes bad, it's usually possible to reread only the
bad block rather than the entire tape.

If the loader has to be read from tape you'll often see a multistage
loading process -- toggle in tiny loader, which reads bigger loader,
which stays in memory and can read everything else. There have been
some very elegant tiny loaders -- I believe one of the Ellliott machines
had a particularly nice one, but I forget the details.

For data, the common practice seems to be to dictate "these characters
will be ignored on data tapes and those may not appear". That solves the
problem of control characters and leader and rubouts; also you can use
the high bit for parity.

pointers:

RIM mode on the PDP-1 (described in the PDP-1 Handbook which you can find
online); RIM and other loades on the PDP-6 and PDP-10, described in various
manuals which you can also find online (look on Al Kossow's site); RIM and
BIN loaders on the PDP-8, described in the Small Computer Handbook and other
places (I'm sure there's tons of PDP-8 information out there but I don't
know where offhand). Those machines have word sizes that are multiples
of 6, so they generally read 6 bits out of 8.

Motorola S-records (each one starts with the letter "S") were very popular
and may still be. They encode each byte as two hex digits so they are
long but avoid special characters.

The OS/8 handbook for the PDP-8 discusses formatting of data tapes.

Probably many others that I don't know about. There's also the subject
of reading (and booting from) punch cards but never mind that for now.

-- Derek
Received on Fri Apr 12 2002 - 00:18:45 BST

This archive was generated by hypermail 2.3.0 : Fri Oct 10 2014 - 23:34:30 BST