From: hinojosa@hp-sdd.hp.com (Daniel Hinojosa)
Subject: Printer chain problems
Date: 6 Feb 89
A friend of mine told a story of one of these printers he and
another friend destroyed in a most interesting manner. These
printers had, it would seem, a sort of chain that held all of
the characters. I guess they held about three complete sets of
the alphabet plus special characters.
These chaps read the chain and created a file in their system
that had all of the characters of one pass in it. They gave the
command to print the file. Upon doing so the printer starts to
spin the chain, then SMACK! Trying to print all of those
characters at once while the chain was moving, didn't quite
work. The fellow said they found the print characters in
various parts of their office for years thereafter.
From: johnl@ima.ima.isc.com (John R. Levine)
Subject: Printing a line
Date: 8 Feb 89
...The letters on the print chain are all scrambled up. Each
time the chain moves, some fraction of the letters on the chain
will be in front of the place where those particular letters are
supposed to print, so the printer fires just those hammers.
Then the chain moves, some more hammers fire, etc.
The particular hack that Mr. Hinojosa and I described
reprogrammed the printer so it would think that every letter on
the line was correctly placed and so fire all the hammers at
once. That makes quite a lot of noise (normally, only 10 or so
of the 120 or 132 hammers go off at once) and moreover turned
out to use more power than the printer was prepared to supply
thus blowing the fuse and causing other problems.
From: darin@nova.laic.uucp (Darin Johnson)
Subject: Problematic printouts
Date: 9 Feb 89
Actually, the print chains are not in alphabetical order. They
are magically ordered by some arcane formula. Some of the
printers are designed so that the hammer will strike the
character just as the correct character is at the correct place
in the line (the chain rotates at very fast speeds). Often,
many characters will get printed at the same time, and no more
than 2 rotations of the chain are ever needed to print a line
(which is why they are fast). Presumably, the right set of
characters on a line will cause all the hammers (132) to strike
at the same time (while the chain is rotating).
I had related a story like this to a friend in college and
(unknown to me) had decided to try it. He spent a night
carefully going over the chain and determining the proper
sequence to send. The next evening, he decided to print his
file, and had me watch (only one line was printed). The job
printed and we ran downstairs. The printer was still rocking
slightly. Opening up the cover, the chain was still intact, but
had come completely off the drive that held it. We tore out the
offending sheet of paper with the incriminating line (smudged
and garbled) and complained to the operator on duty that the
printer was broken again. I don't think my friend ever tried it
again.
Those (apocryphal?) stories are exactly the wrong way to think about how the IBM 1401's line printer works. The line printer has a chain with all the characters that whips around very fast, but it is cleverly designed so you only fire one hammer at a time - it's not even possible to fire multiple hammers at once. The chain spacing is slightly off from the print position spacing (think a vernier scale), so there's only one chain position and print position lined up at any instant. A tiny movement of the chain shifts the alignment to a different character / print position, and so forth, so the potential print position shifts through the line much, much faster than the actual chain movement. Thus, every 11.1 microseconds, a single chain position lines up with a single print position; the 1401 fetches the corresponding character from memory and if it matches the chain's character the hammer fires.
If the chain spacing matched the print column spacing (what the stories describe), you'd fire a bunch of hammers at once, wait while the chain moves one position, fire a bunch more hammers, and so forth. This is much less efficient, since most of the time you're not doing anything. The 1401's approach also makes the circuitry simpler, since it only needs to check one character against one hammer at a time, rather than checking 132 characters at once.
The 1401's printer is actually even more tricky: the chain spacing and hammer spacing are almost in a 3:2 ratio, so each minuscule movement of the chain moves the alignment by 3 print positions and 2 chain positions. So you're never printing two chain positions consecutively. By the time the chain has moved enough for the alignment point to wrap around three times, the chain has moved one character's width and is ready to start again with the next character. 48 of these cycles gives each character one chance to be printed in each column, completing printing of one line. This all takes just 80 milliseconds.