ietf
[Top] [All Lists]

Re: CRLF (was: Re: A modest proposal)

2013-01-23 16:46:12


On Wed, 23 Jan 2013, John Day wrote:


IIR, Multics from several years earlier.  I'd have to dig
through old manuals to remember what CTSS did, but that system
(and the IBM Model 1050 and 2741 devices often used as terminals
with it) were somewhat pre-ASCII (and long before ECMA-48/ ANSI
X3.64 and the VT100 and friends)  and, IIR, sent and received
shift and rotate codes rather than what we would normally
consider character codes today.  The character codes were just
input to device drivers that dealt with device characteristics

Multics was based on EBCDIC which had a New Line (NL) character but no CR or
LF.  The ARPANET went with the ASCII standard.  But I never forgave the ANSI
committee for taking left arrow out of the character set (as a replacement
operator).

EBCDIC has NL (new line), LF and CR characters (hex 0x15, 0x25 and 0x0d
respectively). EBCDIC was an 8 bit code easy to translate in hardware
logic from punch card codes to the 8 bit code. Earlier IBM systems
used BCD (sometimes called BCDIC) which was a 6 bit code which did
not have CR or LF but had a subset of the EBCDIC style mapping from
punched cards to computer code. IBM systems all implemented a
record based file organization rather than the character stream
of UNIX. So the BCD generation systems had a record mark charcter
(and word mark) in the pre-S/360 days with BCD and file system
level record tracking in S/360.

IBM terminal devices (e.g., 2740, 2741, 1050, etc.) of the pre VDT era
used a different character coding on the wire (not BCD). Might have
been inspired by tilt/rotate, I don't know and never worried about more
than getting the translate table right. Hardware communications
controllers and later programmable controllers recoginzed the NL
character and signaled end of line/record to the host computer.

IBM lineprinters of the era were record/line oriented devices which
printed about 132 characters per line and advanced to new like, page,
etc. based on device specific commands and not data interpretation.
ANSI line controls or IBM internal codes could be used in the first
character of the line to pre/post space 0 or more lines for each
print record.

VDTs with long lines might have been inspired by line printers or
just the idea that long lines were better. No experience there,
but I'm pretty certain there were no 132 column punch cards in
common use which would have influnced comody VDT designers. 80
and I believe 96 in S/3 days.

Dave Morris