IBM 2741

From Infogalactic: the planetary knowledge core
Jump to: navigation, search
IBM 2741 terminal with APL keyboard.
IBM 2741 terminal

The IBM 2741 was a printing computer terminal introduced in 1965. Compared to the teletypewriter machines that were commonly used as printing terminals at the time, the 2741 offered slightly higher speed, much higher quality printing, quieter operation, interchangeable type fonts, and both upper and lower case letters.

It was used primarily with the IBM System/360 series of computers, but was used with other IBM and non-IBM systems where its combination of higher speed and letter-quality output was desirable.[1][2][3] It was influential in the development and popularity of the APL programming language.

It was supplanted, starting in the mid-1970s, primarily by printing terminals using daisy wheel mechanisms.

Design

The IBM 2741 combined a ruggedized Selectric typewriter mechanism with IBM SLT electronics and an RS-232-C serial interface. It operated at about 14.1 characters per second with a data rate of 134.5 bits/second (one start bit, six data bits, an odd parity bit, and one and a half stop bits). In contrast to serial terminals employing ASCII code, the most significant data bit of each character was sent first. As with the standard office Selectrics of the day, there were 88 printing characters (not quite enough for the entire EBCDIC or ASCII printing character set including the lower case alphabet) plus space and a few nonprinting control codes, more than can be represented with six data bits, so shift characters were used to allow the machine's entire character set to be used.

The machine was packaged into its own small desk, giving the appearance of square tabletop with a Selectric typewriter partly sunken into the surface, with the electronics in a vertically oriented chassis at the rear. It supplanted the earlier IBM 1050, which was more expensive and cumbersome, in remote terminal applications. The IBM 1050 and its variations were designed for a higher duty cycle and so were frequently used as console devices for computers such as the IBM 1130 and IBM System/360. By contrast, the 2741 was primarily focused on remote terminal applications.

The IBM 2741 came in two different varieties, one using "correspondence coding" and the other using "PTT/BCD coding." These referred to the positioning of the characters around the typeball and, therefore, the tilt/rotate codes that had to be applied to the mechanism to produce a given character. A "correspondence coding" machine could use type elements from a standard office Selectric (i.e. elements used for "office correspondence"). "PTT/BCD coding" machines needed special elements, and did not have as wide a variety of fonts available. The IBM 1050 and its derivatives were only available in PTT/BCD coding. The two element types were physically interchangeable, but code-incompatible, so a type element from, say, a System/360 console printer (a variety of IBM 1050) would produce gibberish on a "correspondence coding" 2741 or an office Selectric, and vice versa.

The two varieties of IBM 2741 used different character codes on the serial interface as well, so software in the host computer needed to have a way to distinguish which type of machine each user had. One way this was accomplished was by having the user type a standard command such as "login" immediately after connecting. The host software would recognize which code was used by the value of the characters it received.[4]

The protocol was simple and symmetric. Each message began with a control character called "circle D" in the documentation, shown as Circle-D-Graphic.jpg, and ended with a "circle C" Circle-C-Graphic.jpg. Each message was assumed to begin with the shift mode in lower case.

When the other end was sending, the local keyboard was locked. An "attention feature" allowed the operator to interrupt the sending machine and regain control (much in the manner of "control-C" in many ASCII systems) by pressing a special key.

Protocol symmetry allowed two 2741s to communicate with each other with no computer in between, but this was a rare configuration.

Applications

The 2741 was initially developed and marketed for use with the IBM Administrative Terminal System (ATS/360). ATS was an interactive, multi-user text editing and storage system implemented in the mid-1960s using IBM System/360 assembler language.

The 2741's existence then encouraged the development of other remote terminal systems for the IBM System/360, particularly systems that could benefit from the high print quality, interchangeable typing elements, and other advantages of its Selectric mechanism.

APL\360 and ALGOL 68 are two early languages that took advantage of the Selectric print mechanism with its relatively large character set and changeable fonts.

APL\360

The IBM 2741 became closely associated with the APL programming language. As originally proposed by Dr. Kenneth Iverson, APL required a large variety of special characters. IBM implemented it as a timesharing system on the IBM System/360, calling it APL\360, and required the use of an IBM 2741 or IBM 1050 with a specially made type element. There were only 26 alphabet characters (all displayed as upper case, italic, even though they were typed with the machine in lower case mode) and the "shifts" of these provided many of the special symbols with the remainder being handled by overstrike.

Keyboard layout with the APL typeball print head inserted:

APL-keybd2.svg

ALGOL 68

Similar to APL, ALGOL 68 was defined with a large number of special characters. Many of them ( ∨, ∧, ¬, ≠, ≤, ≥, ×, ÷, ⌷, ↑, ↓, ⌊, ⌈ and ⊥ ) were available on the APL Selectric element, so this element was used to prepare the ALGOL 68 programming language standard Final Report (August 1968), even though APL and ALGOL had nothing directly to do with each other.

Related machines

The IBM 2740 was a similar terminal that lacked the interrupt feature and dialup capability, but was capable of operating in point-to-point, multipoint or broadcast mode.[5]

Some later IBM Selectric-based machines, such as the Communicating Magnetic Card Selectric Typewriter, could emulate the 2741 and could be used in its place.

IBM sold the underlying Selectric mechanism to other manufacturers, who produced 2741 clones at lower cost. Some of these were integrated into larger systems instead of being sold as standalone terminals. For example, a 2741-type mechanism formed the principal user interface for a series of machines from the 1960s and 1970s built in the United Kingdom by Business Computers Ltd.

Decline

The 2741 and similar Selectric-based machines were supplanted by ASCII terminals using the Xerox Diablo 630 "daisy wheel" and similar print mechanisms. These offered equivalent print quality, better reliability, twice the speed (30 char/s), and lower cost than the 2741. They could use a variety of fonts (including APL) via interchangeable print wheels and unlike the 2741 supported the entire ASCII printing character set.

The IBM 3767, which ran at 80 or 120 char/s, was an alternate replacement.

Character sets

Function codes

The function codes were independent of the character set used and the shift state.

Bit value Code Meaning
     C 8 4     PN Punch On
   A   8 4     BY Bypass
 B     8 4     RES Restore
 B A C 8 4     PF Punch Off
       8 4   1 RS Reader stop
   A C 8 4   1 LF Line feed
 B   C 8 4   1 NL New line
 B A   8 4   1 HT Horizontal tab
       8 4 2   UC Upper case
   A C 8 4 2   EOB End of block
 B   C 8 4 2   BS Backspace
 B A   8 4 2   LC Lower case
     C 8 4 2 1 EOT End of transmission Circle-C-Graphic.jpg
   A   8 4 2 1 PRE Prefix
 B     8 4 2 1 IL Idle
 B A C 8 4 2 1 DEL Delete
     C         Space Space

Circle-D Circle-D-Graphic.jpg used a code assigned to a printing, non-function character – 8 2 1 (EBCD '#'). It was identified as a control code based on its position as the first character in a transmission,

PTTC/EBCD code

Bit value Lower case Upper case
 B A   8   2 1 . ¬
 B   C 8   2 1 $  !
   A C 8   2 1 , |
       8   2 1 # "
   A           @ ¢
 B A C         & +
 B             - _
   A C         /  ?
             1 1 =
           2   2 <
         4     4  :
     C   4   1 5  %
     C   4 2   6 '
         4 2 1 7 >
       8       8 *
     C 8     1 9 (
     C 8   2   0 )
 B A         1 a A
 B A       2   b B
 B A C     2 1 c C
 B A     4     d D
 B A C   4   1 e E
 B A C   4 2   f F
 B A     4 2 1 g G
 B A   8       h H
 B A C 8     1 i I
 B   C       1 j J
 B   C     2   k K
 B         2 1 l L
 B   C   4     m M
 B       4   1 n N
 B       4 2   o O
 B   C   4 2 1 p P
 B   C 8       q Q
 B     8     1 r R
   A C     2   s S
   A       2 1 t T
   A C   4     u U
   A     4   1 v V
   A     4 2   w W
   A C   4 2 1 x X
   A C 8       y Y
   A   8     1 z Z

See also

IBM Selectric typewriter

References

  1. Lua error in package.lua at line 80: module 'strict' not found.
  2. Lua error in package.lua at line 80: module 'strict' not found.
  3. Lua error in package.lua at line 80: module 'strict' not found.
  4. Lua error in package.lua at line 80: module 'strict' not found.
  5. Lua error in package.lua at line 80: module 'strict' not found.

External links