The IBM 1401
The IBM 1401 “Data Processing System”, introduced in October 1959, was the “Model-T Ford of the computer industry” and “one of the most important and successful products IBM had ever announced.”  About 15,000 1401-family computers were manufactured and delivered worldwide in the 1960’s, far exceeding initial expectations.  By March 1961, after only a single year of full production, 2,800 machines had already been delivered to customers.  By the very next year, 1962, income from the IBM 1401 surpassed older card-punch/unit-record accounting machines for the first time.  By 1964, 40% of all existent computers were IBM 1401-family machines.
Its follow-on family compatible machines, 1410, 1440 and 1460, were sold until 1970. A rumored 1480 was discontinued in favor of the 360/25.  In fact, the 1400 family was so successful that it led to the industry’s first nearly-program-compatible computer clone, the Honeywell H-200, or “Liberator.”  
The goal of the 1401 design was to offer a flexible business computer of at least three times the speed and at a lower cost than the ubiquitous, card/unit-record, collate/merge/print, plug-board-based accounting machines of the 1950’s (such as the IBM 407 and 604).   Although offering a general-purpose computer with programmable magnetic-core memory was a cost risk, by clever architecture design and use of moderate-speed, economic transistor circuits, IBM achieved this goal.  By first reading card/unit-record information into the main memory of the 1401 before manipulating it, collate/merge/print operations were much faster than on the old card machines.  And the data could be quickly accessed to and from magnetic tape for storage—much faster than handling decks of cards (which also wore out and had to be rejuvenated via duplication).
The 1401 architecture was designed for handling business data-processing applications.  Its Central Processing Unit (CPU) can efficiently manipulate variable-length character strings and perform variable-length decimal arithmetic (unlike today’s fixed-width binary arithmetic).  For instance, the CPU can operate on two numbers where each is of an arbitrary length or number of characters.  A 1401 character is encoded in 6 bits, an end-of-word “word mark” flag bit, and a parity check bit.  Note that even though a character was 8 bits wide, the term “byte” had not been invented yet.
1401 systems could be configured with 1,400 to 16,000 characters of magnetic core memory (4,000 min typical).  Memory is addressed via decimal character strings, not binary digits as in nearly all contemporary computers.  Magnetic cores retain either a “1” or “0” depending on the clockwise or counterclockwise direction of the stored magnetic field.
An exalted feature of the 1401 was its reliable and robust input/output peripherals—a long IBM tradition, including an 800-card per minute card reader, a 250-card-per-minute card punch, a 600-line-per-minute line “chain” printer, up to six reel-to-reel tape drives, and a 20-million-byte magnetic disk storage unit.  The system and peripherals contained considerable error checking logic. 
The 1401 may have been equivalent to the Model-T in popularity for IBM, but was far more complicated to manufacture.  Whereas the Model-T has about xx components, a large 1401 system comprises about 20,000 mechanical parts and about 50,000 electrical components (10,000 transistors and 14,000 diodes on 3,000 cards).
A typical, 4k-character 1401 system rented for about $7,000 per month in the 1960’s, equivalent to $42,000 per month in today’s dollars (6x due to inflation).  This rental fee included maintenance service and options features.  A typical 1401 system would have cost about $370,000 if purchased outright in 1961 or $2,240,000 in today’s dollars.  Most systems were rented, a “cash cow” for IBM.  
Main memory itself was very expensive in the 1960’s:  One 8-bit character of 1401 core memory in the 1960’s cost about five dollars (or $30 today).  This is 300,000,000 (300 million) times more expensive than today’s cost of memory (about 0.1 micro-dollars per byte).
IBM 1401 Technical Features

The architecture of the IBM 1401 was designed around a simple, elegant and human-friendly approach:  decimal arithmetic and variable-length text strings for its instructions and data.  The 1401 can be characterized as a cost-effective input and output data processing computer whose speed was tailored to that of the ubiquitous IBM mechanical unit record card processing equipment of the era.

All numbers in the 1401 are stored and operated on in a decimal notation, not binary (as all contemporary machines are).  Variable-length decimal numbers can be any length, only limited by memory considerations. 

Instructions are defined by a single character and can be from 1 to 8 characters long.  There are 31 primary instructions: “A” was for add, “B” for branch, “C” for compare, “E” for edit, “L” for load, “M” for move, “S” for subtract, “1” for read, “2” for print, etc.. 

The “WordMark” bit field of a character determines the length of instructions and data.  The WordMark bit indicates to the CPU the first character of an instruction (and thus where the previous instruction stops) or the last, high-order character of a variable-length data string.

Arithmetic decimal instructions operate on two variable-length operands in memory given by the A and B addresses and write the result in the memory location given by the B address.  Arithmetic is performed serially, from least significant to most significant character, until finishing up with the longest string.  Arithmetic characters are encoded in the Binary Coded Decimal (BCD) notation.

Memory size ranged from 1,400  to 16,000 characters, although most systems were sold with 4,000 minimum characters.  Memory is addressed via 3-character strings.  For example, the instruction “A299500” adds memory location “299” to location “500” and deposits result into location “500”. 

Logic Technology:
SMS (Standard Modular System) 2.5” x 4.5” single-layer cards.  Complementary Diode-Transistor Logic (CDTL), with alternating PNP and NPN transistor logic voltage levels.  Discrete Germanium point-contact diodes, Germanium Alloy-junction transistors, resistors, inductors, and capacitors are used throughout.

Speed of Operation:
The 1401’s clock frequency is 86,957 cycles per second, or about 87 kiloHertz!  This corresponds to an 11.5 micro-second system clock cycle time.

To compare the 1401’s variable length instruction and data processing against today’s fixed-width instruction and data architectures makes comparing even simple operations involved.  The 1401 CPU does everything in a character-serial manner.  In order to add say two N-digit numbers, the CPU takes several cycles to fetch the instruction itself and then one cycle for every character of the instruction’s two operands or arguments, or 2N cycles total.  The result is written back into memory as the addition is performed (although certain negative results require an entire re-recalculation of the result).

Thus, the average time to add two 10-digit numbers is 40 cycles, or about a 2.2 kHz add rate.  Adding two 20-digit numbers is 70 cycles, or an add rate of 1.2 kHz.  Compare that to a modern superscalar microprocessor with a peak add rate of two 64-bit add instructions per cycle at 3-GigaHertz, or an add rate of 6 Ghz; the modern microprocessor is 6,000,000,000 / 1,000 = 6,000,000 times faster!

Software

•	Autocoder (symbolic assembler)
o	Tape and disk
•	Symbolic Programming System (SPS) assembler
•	Report Program Generator (RPG) 
o	basic 4k card, card/tape, disk
•	FARGO (Fourteen-o-one Automatic Report Generator Operations)
o	“Used to symbolically represent the wiring on the accounting machine wiring boards.”
•	Sort 7 – tape, disk
•	FORTRAN (pre-II, IV)
o	Tape and card
o	    64 phases operating sequentially on the source program, in a min 8,000-character storage system.
o	    Two minutes to compile 400 cards.
o	    20-digit mantissa, guard bits, rounding
•	COBOL

Operating System:  NONE!

This 1401’s History
Built:  May, 1964  (43 years ago)

Monthly Rental Cost (estimated):  $10,600/month in 1961 dollars.
Equivalent to $64,000/month in 2006 dollars.

Purchase Cost (estimated): $500,000 in 1961 dollars.
Equivalent to $2,240,000 in 2006 dollars.

Original owner:  Volkswohl Versicherung (“People’s Welfare”) Insurance Company, in the town of Dortmund, Germany.  Used for financial control and insurance policies.  Operated round-the-clock, 24/7 until 1972.  Its IBM customer engineer (CE) was Arnold Schweinberg.

Second owner:  Arnold Schweinberg purchased the 1401 for his own accounting services company catering to small businesses such as newspaper and magazine publishers and companies under 100 employees.  He operated the machine in two 8-hour shifts per day until 1977.  He then stored it in a shipping company warehouse for 11 years until 1988 and then moved it to his home automobile garage in the hamlet of Hamm, Germany where it was stored for another 16 years until 2004.

Arnold listed the system on www.ebay.de in May 2003, where it was spotted by Eric Smith, a Museum volunteer.  Arnold, contacted by Mike Cheponis, a Museum volunteer, enthusiastically supported a proposition that it be purchased, donated, and restored at the Computer History Museum.  Robert Garner, a Museum volunteer, began the evaluation process, including an on-site inspection by an old-time IBM colleague he was working with (Heinz Lenk).  Via aggregation of several personal donations, the 1401 was purchased in October 2003 for €18,000. 

Shipping Logistics:  The 4-ton system was meticulously crated and transported by IBM Euro surface Division in Germany and then shipped by Maersk Logistics, via the Dusseldorf Express ocean freighter into the port of Oakland, California.  Shipping cost was €8,580, entirely funded by the IBM Almaden Research Center, San Jose. It arrived in its shipping container at the Computer History Museum on March 18, 2004.

Operating power-on time meter, on arrival:  68,730 hours (7.8 years)

Serial number:  # 28,421

Peripherals:
1402 Card Reader/Punch
1403 Chain Printer
729 Tape Drives:  2 - Model V, 1 - Model IV, 2 - Model II

Storage:  16,000 characters (12,000 char in 1406 expansion unit)

1401 Special Features:  Multiply/Divide, Advanced Programming with Index Registers, High-Low-Equal Compare, Printer Storage, Overlap, Sterling

Power:  380Y/220V 3-phase, 50-Hertz, Total power ~13,000 Watts
Building power (208Y, 60-Hertz) is converted via a 1985 Pacific Power 18-kVA 390-G solid-state static converter, purchased from IBM San Jose.  This keeps the 1401’s many ferro-resonnant transformers in tune, and tape and card 3-phase, synchronous motors turning at their proper speed.

Weight:  ~ 4 tons

1401 Peripheral Devices
Primary Input-Output Peripherals:

•	1402 Card Reader:
o	800 cards/min (13 cards/sec)
o	3,000-card hopper
•	1402 Card Punch:
o	250 cards/min (4 cards/sec)
o	1,200-card hopper 
•	1403 Printer:
o	600 lines/min (10 lines/sec)
o	Chain cartridge:
•	132-position, 10 characters per inch
•	48 possible characters/position
•	Different chains for alternative fonts
•	Chain moves at 90 inches/sec
o	Paper skip rate 72 inches/sec.
•	729 Magnetic Tape Storage:
o	7-track, 800 bits/inch, 1/2” wide tape,
o	75 inches/sec,  62,500 char/sec
o	Rewind speed: 2,400-ft tape in 72 sec (33 feet/sec)
•	7330 Magnetic Tape Storage:  
•	1311 Disk Storage.  2-million characters.  Up to 6 units.
•	1405 Disk Storage:  10 or 20-million characters
o	50 platters, 200-char records, 1,800 rpm
o	System final tested in Bldg 5, IBM Cottle Rd, San Jose
•	1407 Console Inquiry Station
o	IBM electric typewriter & keyboard modified to read/write CPU core memory

Miscellaneous Input-Output Peripherals:

•	1009 Data Transmission Unit (Modem)
o	300 char/sec
•	1026 Transmission Control Unit
o	Terminal concentrator for 4 half-duplex lines
•	1231 Optical Mark Page Reader 
o	Reads pencil-filled in docs 
o	2,000 docs/hour
•	1285 Optical Reader
o	Reads printed paper tapes from cash registers and adding machines
•	1404 Combination Printer
o	Cut-card forms at 800 cards/min
•	1412/1419 Magnetic Ink Character Reader (MICR)/Sorter
o	Checks with magnetic ink ABA font E-13B on bottom row
o	2,000 checks/min
•	1418 Optical Character Reader
o	Reads printed numeric data from paper or card docs
o	300 - 420 docs/min
o	One of earliest OCR readers
o	Tuned for IBM 401, 1402, IBM electric typewriter
•	1428 Optical Character Reader/Sorter
o	Reads full alphanumeric data from paper or cards
o	Font style 1428E, basis for ANSI OCR A
•	1445 Magnetic Ink Printer
•	7740 Communications Control System
•	7770 Audio Response Unit 
o	Digital-to-Analog voice generation
o	Pre-recorded vocabulary on a drum in the 7770
o	Used by ATM machines in Great Britian
•	3rd-party peripherals:
o	NCR OCR scanner,
o	CalComp drum plotter, etc. 

Self-Checking Features
The IBM 1401 was with much self-checking in hardware, in order to improve the reliability of the input, output, and CPU processing.  These features included:
•	1401 CPU self-checks
o	Memory parity
•	1402 self-checks
o	Automatic hole count check between read stations
o	Automatic Hollerith validity check before storage entry.
o	Automatic hole count check between punch station and punch check station.
•	1403 self checks
o	Automatic parity check of character to be printed.
o	Automatic validity check of character tobe printed.
o	Hammer action to be performed/performed
•	729 Magnetic Tape self checks
o	Vertical parity check by character
o	Horizontal check by record
o	Two-gap head verifies validity at the time data is written
o	Dual-level sensing provides additional checking of tape read and write operations and error-free operation on valid data. 
o	IBM phase encoding provides highly reliable method of bit encoding on hypertape so all single-bit and most double-bit errors can be corrected.

Footnotes