IBM 1620

Last updated
IBM 1620
IBM Logo 1956 1972.svg
IBM 1620 Model 1.jpg
IBM 1620 Model I, Level H
Manufacturer IBM
TypeScientific minicomputer
Release date1959
Units shippedAbout 2000
CPU Transistorized, built with SMS cards, variable 12-72 bit words @ 50 kHz (20 us)
Memory20,000-60,000 words (Core memory)
Power2 kW
Mass550 kg (1210 lbs)
Predecessor IBM 650; IBM 610; IBM 608
Successor IBM 1130
Related IBM 1710, IBM 1720
IBM 1620 data processing machine with IBM 1627 plotter, on display at the 1962 Seattle World's Fair IBM 1620 data processing machine on display, Seattle World's Fair, 1962.jpg
IBM 1620 data processing machine with IBM 1627 plotter, on display at the 1962 Seattle World's Fair

The IBM 1620 was announced by IBM on October 21, 1959, [1] and marketed as an inexpensive scientific computer. [2] After a total production of about two thousand machines, it was withdrawn on November 19, 1970. Modified versions of the 1620 were used as the CPU of the IBM 1710 and IBM 1720 Industrial Process Control Systems (making it the first digital computer considered reliable enough for real-time process control of factory equipment). [1]

Contents

Being variable-word-length decimal, as opposed to fixed-word-length pure binary, made it an especially attractive first computer to learn on  and hundreds of thousands of students had their first experiences with a computer on the IBM 1620.

Core memory cycle times were 20 microseconds for the (earlier) Model I, 10 microseconds for the Model II (about a thousand times slower than typical computer main memory in 2006). The Model II was introduced in 1962. [3]

Architecture

Memory

The IBM 1620 Model I was a variable "word" length decimal (BCD) computer using core memory. The Model I core could hold 20,000 decimal digits with each digit stored in 6 bits. [4] [3] More memory could be added with the IBM 1623 Storage Unit, Model 1 which held 40,000 digits, or the 1623 Model 2 which held 60,000. [1]

The Model II deployed the IBM 1625 core-storage memory unit, [5] [6] whose memory cycle time was halved by using faster cores, compared to the Model I's (internal or 1623 memory unit): to 10 µs (i.e., the cycle speed was raised to 100 kHz).

While the five-digit addresses of either model could have addressed 100,000 decimal digits, no machine larger than 60,000 decimal digits was ever marketed. [7]

Memory access

Memory was accessed two decimal digits at the same time (even-odd digit pair for numeric data or one alphameric character for text data). Each decimal digit was six bits, composed of an odd parity Check bit, a Flag bit, and four BCD bits for the value of the digit in the following format: [8]

C F 8 4 2 1

The Flag bit had several uses:

In addition to the valid BCD digit values there were three special digit values (these could not be used in calculations):

  C F 8 4 2 1       1 0 1 0   Record Mark (right most end of record, prints as a double dagger symbol, ‡)       1 1 0 0   Numeric Blank (blank for punched card output formatting)       1 1 1 1   Group Mark (right most end of a group of records for disk I/O)

Instructions were fixed length (12 decimal digits), consisting of a two-digit "op code", a five-digit "P Address" (usually the destination address), and a five-digit "Q Address" (usually the source address or the source immediate value). Some instructions, such as the B (branch) instruction, used only the P Address, and later smart assemblers included a "B7" instruction that generated a seven-digit branch instruction (op code, P address, and one extra digit because the next instruction had to start on an even-numbered digit).

Fixed-point data "words" could be any size from two decimal digits up to all of memory not used for other purposes.

Floating-point data "words" (using the hardware floating point option) could be any size from 4 decimal digits up to 102 decimal digits (2 to 100 digits for the mantissa and two digits for the exponent).

The Fortran II compiler offered limited access to this flexibility via a "Source Program Control Card" preceding the fortran source in a fixed format:

*ffkks

The * in column one, ff the number of digits for the mantissa of floating-point numbers (allowing 02 to 28), kk the number of digits for fixed-point numbers (allowing 04 to 10) and s is to specify the memory size of the computer to run the code if not the current computer: 2, 4, or 6 for memories of 20,000 or 40,000 or 60,000 digits.

The machine had no programmer-accessible registers: all operations were memory to memory (including the index registers of the 1620 II).

See Architectural difficulties section

Character and op codes

The table below lists Alphameric mode characters (and op codes).

Table of character and op codes
BCD characterTypewriterPrinter Tape  Card  Core MNEMONIC and operationDefinition and notes
InOutOutInOutInOutEvenOdd
Blank   CC     
invalid Ж ❚ 1FADD Floating AddOptional special feature.
invalid Ж ❚ 2 FSUB Floating SubtractOptional special feature.
.... X0 8 21 X0 8 2112-3-8
12-1-2-8
12-3-821FMUL Floating MultiplyOptional special feature.
)))) X0C84 X0C8412-4-812-4-84  
invalid Ж ❚ 4 1FSL Floating Shift LeftOptional special feature.
invalid Ж ❚ 42 TFL Transmit FloatingOptional special feature.
invalid Ж ❚ 421BTFL Branch and Transmit FloatingOptional special feature.
invalid Ж ❚  8FSR Floating Shift RightOptional special feature.
invalid Ж ❚  81FDIV Floating DivideOptional special feature.
++++ X0C X0C12121 BTAM Branch and Transmit Address Immediate(Model II)
invalid Ж ❚ 11AM Add Immediate 
invalid Ж ❚ 12 SM Subtract Immediate 
$$$$ X C8 21 X C8 2111-3-8
11-1-2-8
11-3-8121MM Multiply Immediate 
**** X84 X8411-4-811-4-814CM Compare Immediate 
invalid Ж ❚ 14 1TDM Transmit Digit Immediate 
invalid Ж ❚ 142 TFM Transmit Field Immediate 
invalid Ж ❚ 1421BTM Branch and Transmit Immediate 
invalid Ж ❚ 1 8LDM Load Dividend ImmediateOptional special feature (Model I).
Standard (Model II).
invalid Ж ❚ 1 81DM Divide ImmediateOptional special feature (Model I).
Standard (Model II).
---- X X11112  BTA Branch and Transmit Address(Model II)
////0C10C10-10-12 1A Add 
invalid Ж ❚ 2 2 S Subtract 
,,,,0C8 210C8 210-3-8
0-1-2-8
0-3-82 21M Multiply 
((((0 840 840-4-80-4-82 4C Compare 
invalid Ж ❚ 2 4 1TD Transmit Digit 
invalid Ж ❚ 2 42 TF Transmit Field 
invalid Ж ❚ 2 421BT Branch and Transmit 
invalid Ж ❚ 2  8LD Load DividendOptional special feature (Model I).
Standard (Model II).
invalid Ж ❚ 2  81D DivideOptional special feature (Model I).
Standard (Model II).
invalid Ж ❚ 21 TRNM Transmit Record No RM(Model II)
invalid Ж ❚ 211TR Transmit Record 
invalid Ж ❚ 212 SF Set Flag 
====8 218 213-8
1-2-8
3-82121CF Clear Flag 
@@@@C84C844-84-8214K Control (I/O device) 
invalid Ж ❚ 214 1DN Dump Numeric 
invalid Ж ❚ 2142 RN Read Numeric 
invalid Ж ❚ 21421RA Read Alphameric 
invalid Ж ❚ 21 8WN Write Numeric 
invalid Ж ❚ 21 81WA Write Alphameric 
AAAA X01 X0112-112-1 41NOP No Operation 
BBBB X02  X02 12-212-2 42 BB Branch Back 
CCCC X0C21 X0C2112-3
12-1-2
12-3 421BD Branch On Digit 
DDDD X04 X0412-412-4 44BNF Branch No Flag 
EEEE X0C 4 1 X0C 4 112-5
12-1-4
12-5 44 1BNR Branch No Record Mark 
FFFF X0C 42  X0C 42 12-6
12-2-4
12-6 442 BI Branch Indicator 
UMK Unmask
MK Mask
1710 interrupt feature. Modifiers in Q field.
GGGG X0421 X042112-7
12-1-2-4
12-7 4421BNI Branch No Indicator 
BO Branch Out
BOLD Branch Out and Load
1710 interrupt feature. Modifiers in Q field.
HHHH X0 8 X0 812-812-8 4 8H Halt 
IIII X0C81 X0C8112-9
12-1-8
12-9 4 81B Branch 
-0N/A--N/A X11-011-0 4 1   
J
-1
JJJ X C1 X C111-111-1 4 11  
K
-2
KKK X C2  X C2 11-211-2 4 12   
L
-3
LLL X21 X2111-3
11-1-2
11-3 4 121  
M
-4
MMM X C 4 X C 411-411-4 4 14  
N
-5
NNN X4 1 X4 111-5
11-1-4
11-5 4 14 1BNG Branch No Group MarkOptional special feature.
O
-6
OOO X42  X42 11-6
11-2-4
11-6 4 142   
P
-7
PPP X C 421 X C 42111-7
11-1-2-4
11-7 4 1421  
Q
-8
QQQ X C8 X C811-811-8 4 1 8WAIT Wait for Interrupt1710 interrupt feature.
R
-9
RRR X81 X8111-9
11-1-8
11-9 4 1 81  
invalid Ж ❚  42  BS Branch and Select(Model II)
invalid Ж ❚  42 1BX Branch and Modify Index RegisterOptional special feature (Model II).
SSSS0C2 0C2 0-20-2 42 2 BXM Branch and Modify Index Register ImmediateOptional special feature (Model II).
TTTT0210210-3
0-1-2
0-3 42 21BCX Branch Conditionally and Modify Index RegisterOptional special feature (Model II).
UUUU0C 40C 40-40-4 42 4BCXM Branch Conditionally and Modify Index Register ImmediateOptional special feature (Model II).
VVVV04 104 10-5
0-1-4
0-5 42 4 1BLX Branch and Load Index RegisterOptional special feature (Model II).
WWWW042 042 0-6
0-2-4
0-6 42 42 BLXM Branch and Load Index Register ImmediateOptional special feature (Model II).
XXXX0C 4210C 4210-7
0-1-2-4
0-7 42 421BSX Branch and Store Index RegisterOptional special feature (Model II).
YYYY0C80C80-80-8 42  8  
ZZZZ0 810 810-9
0-1-8
0-9 42  81  
00000 0 0
12-0
0 421 MA Move AddressOptional special feature (Model II).
11111111 4211MF Move FlagOptional special feature (Model I).
Standard (Model II).
22222 2 22 4212 TNS Transmit Numeric StripOptional special feature (Model I).
Standard (Model II).
3333C21C2133 42121TNF Transmit Numeric FillOptional special feature (Model I).
Standard (Model II).
4444 4 444 4214  
5555C 4 1C 4 155 4214 1  
6666C 42 C 42 66 42142   
7777 421 42177 421421  
88888888 421 8  
9999C81C8199 421 81  
invalid Ж ❚ 84SA Select Address
SACO Select Address, Contact Operate
SAOS Select Analog Output Signal
1710 feature. Modifiers in Q field
invalid Ж ❚ 842 SLTA Select TAS
SLAR Select ADC Register
SLTC Select Real-Time Clock
SLIC Select Input Channel
SLCB Select Contact Block
SLME Select Manual Entry
1710 feature. Modifiers in Q field
invalid Ж ❚ 8F 42 RNIC Read Numeric Input Channel1710 feature. Modifiers in Q field
invalid Ж ❚ 8F 421RAIC Read Alphameric Input Channel1710 feature. Modifiers in Q field
invalid Ж ❚ 8 8WNOC Write Numeric Output Channel1710 feature. Modifiers in Q field
invalid Ж ❚ 8 81WAOC Write Alphameric Output Channel1710 feature. Modifiers in Q field
invalid Ж ❚ 81 BBT Branch on BitOptional special feature (Model II).
invalid Ж ❚ 811BMK Branch on MaskOptional special feature (Model II).
invalid Ж ❚ 812 ORF OR to FieldOptional special feature (Model II).
invalid Ж ❚ 8121ANDF AND to FieldOptional special feature (Model II).
invalid Ж ❚ 814CPLF Complement Octal FieldOptional special feature (Model II).
invalid Ж ❚ 814 1EORF Exclusive OR to FieldOptional special feature (Model II).
invalid Ж ❚ 8142 OTD Octal to Decimal ConversionOptional special feature (Model II).
invalid Ж ❚ 81421DTO Decimal to Octal ConversionOptional special feature (Model II).
RM(Stop)(Stop)0 8 2 E
(Stop)
0-2-80-2-8 8 2  Record Mark
GM IBM 1401 Group Mark.GIF (Stop)(Stop)0 8421E
(Stop)
0-7-81-2-4-8 8421 Group Mark

The table below lists numeric mode characters.

CharacterTypewriterPrinter Tape  Card  Core Definition and notes
InOutOutDumpInOutInOut
Blank 000C0  0C  
000000 0 0
12-0
12
0C  
11111111
12-1
1 1 
222222 2 2
12-1
22  
33333C21C213
12-3
1-2
12-1-2
3C21 
44444 4 44
12-4
44 
55555C 4 1C 4 15
12-5
1-4
12-1-4
5C4 1 
66666C 42 C 42 6
12-6
2-4
12-2-4
6C42  
77777 421 4217
12-7
1-2-4
12-1-2-4
7421 
88888888
12-8
88 
99999C81C819
12-9
1-8
12-1-8
9C 81 
-000-- X
 X0C
 X11-011-0 F 
-111JJ X C1 X C111-111-1CF1 
-222KK X C2  X C2 11-211-2CF2  
-333LL X21 X2111-3
11-1-2
11-3 F21 
-444MM X C 4 X C 411-411-4CF 4 
-555NN X4 1 X4 111-5
11-1-4
11-5 F 4 1 
-666OO X42  X42 11-6
11-2-4
11-6 F 42  
-777PP X C 421 X C 42111-7
11-1-2-4
11-7CF 421 
-888QQ X C8 X C811-811-8CF8 
-999RR X81 X8111-9
11-1-8
11-9 F81 
RM(Stop, WN)

(DN)
(Stop)0 8 2 E
(Stop, WN)
0 8 2 
(DN)
0-2-80-2-8C 8 2 Record Mark
On tape a WN punches EOL instead!
flag RM(Stop, WN)

(DN)
(Stop)W X8 2 E
(Stop, WN)
 X8 2 
(DN)
11-2-8
12-2-8
11-2-8 F8 2 Flagged Record Mark
On tape a WN punches EOL instead!
EOL(Stop, WN)

(DN)
(Stop)EE
(WN)
0 8 2 
(DN)
0-2-80-2-8C 8 2 End of line Tape only.
Note: In memory is a Record Mark!
GM IBM 1401 Group Mark.GIF (Stop, WN)
IBM 1401 Group Mark.GIF
(DN)
(Stop)G0 84210 84210-7-80-7-8C 8421Group Mark
flag GM IBM 1401 Group Mark.GIF (Stop, WN)
IBM 1401 Group Mark.GIF
(DN)
(Stop)X X8421 X842112-7-812-7-8 F8421Flagged Group Mark
NB@@@C84C844-8C 84Numeric Blank
flag NB@@* X84 X8411-4-8 F84Flagged Numeric Blank

Invalid character

The Model I used the Cyrillic character Ж (pronounced zh) on the typewriter as a general purpose invalid character with correct parity (invalid parity being indicated with an overstrike ""). In some 1620 installations it was called a SMERSH, as used in the James Bond novels that had become popular in the late 1960s. The Model II used a new character ❚ (called "pillow") as a general purpose invalid character with correct parity.

Architectural difficulties

Although the IBM 1620's architecture was very popular in the scientific and engineering community, computer scientist Edsger Dijkstra pointed out several flaws in its design in EWD37, "A review of the IBM 1620 data processing system". [9] Among these are that the machine's Branch and Transmit instruction together with Branch Back allow a grand total of one level of nested subroutine call, forcing the programmer of any code with more than one level to decide where the use of this "feature" would be most effective. He also showed how the machine's paper tape reading support could not properly read tapes containing record marks, since record marks are used to terminate the characters read in storage. One effect of this is that the 1620 cannot duplicate a tape with record marks in a straightforward way: when the record mark is encountered, the punch instruction punches an EOL character instead and terminates. However this was not a crippling problem:

Most 1620 installations used the more convenient punched card input/output, [10] rather than paper tape.

The successor to the 1620, the IBM 1130, [11] was based on a totally different, 16-bit binary architecture. (The 1130 line retained one 1620 peripheral, the IBM 1627 drum plotter.)

Software

IBM 1620 SPS card IBM1620SPSpunchcard.agr.jpg
IBM 1620 SPS card

IBM supplied the following software for the 1620:

The Monitors provided disk based versions of 1620 SPS IId, FORTRAN IId as well as a DUP (Disk Utility Program). Both Monitor systems required 20,000 digits or more of memory and one or more 1311 disk drives.

A collection of IBM 1620 related manuals in PDF format exists at bitsavers. [13]

1620 non-decimal arithmetic

Since the Model I used in-memory lookup tables for addition/subtraction, [14] limited bases (5 to 9) unsigned number arithmetic could be performed by changing the contents of these tables, but noting that the hardware included a ten's complementer for subtraction (and addition of oppositely signed numbers).

To do fully signed addition and subtraction in bases 2 to 4 required detailed understanding of the hardware to create a "folded" addition table that would fake out the complementer and carry logic.

Also the addition table would have to be reloaded for normal base 10 operation every time address calculations were required in the program, then reloaded again for the alternate base. This made the "trick" somewhat less than useful for any practical application.

Since the Model II had addition and subtraction fully implemented in hardware, changing the table in memory could not be used as a "trick" to change arithmetic bases. However an optional special feature in hardware for octal input/output, logical operations, and base conversion to/from decimal was available.

Although bases other than 8 and 10 were not supported, this made the Model II very practical for applications that needed to manipulate data formatted in octal by other computers (e.g., the IBM 7090).

Model I

Drawing showing internal layout of "gates" 1620 Model I Layout.png
Drawing showing internal layout of "gates"

The IBM 1620 Model I (commonly called "1620" from 1959 until the 1962 introduction of the Model II) was the original. It was produced as inexpensively as possible, to keep the price low.

Model II

The IBM 1620 Model II (commonly called simply the Model II) was a vastly improved implementation, compared to the original Model I. The Model II was introduced in 1962.

Models I and II consoles

While the Lower console for both the Model 1 [18] and the Model 2 [19] IBM 1620 systems had the same lamps and switches, the Upper console of the pair were partly different.

Upper console

Model I (Upper console)#LampsModel II (Upper console)#Lamps
Instruction and Execute Cycle60Control Gates60
Control Gates35Input-Output35
Input-Output15Inst & Exec Cycle15-

The balance of the Upper console was the same on both models:

Lower console

Console typewriter

The Model I console typewriter was a modified Model B1, interfaced by a set of relays, and it typed at only 10 characters per second.

There were a set of instructions that wrote to the typewriter, or read from it. The general RN (read numeric) and WN (write numeric) instructions had assembly language mnemonics that supplied the "device" code in the second address field, and the control code in the low-order digit of the second address field.

To simplify input and output, there were two instructions:

The Model II used a modified Selectric typewriter, which could type at 15.5 cps  a 55% improvement.

Peripherals

IBM 1627 drum plotter IBM 1627 plotter.mw.jpg
IBM 1627 drum plotter

Available peripherals were:

The standard "output" mechanism for a program was to punch cards, which was faster than using the typewriter. These punched cards were then fed through an IBM 407 mechanical calculator which could be programmed to print two cards, thus being able to use the additional print columns available on the 407. All output was synchronous, and the processor paused while the I/O device produced the output, so the typewriter output could completely dominate program running time.

A faster output option, the IBM 1443 printer was introduced May 6, 1963, [22] and its 150–600 lines/minute capability was available for use with either model of the 1620. [23] [24]

It could print 120 or 144 columns. The character width was fixed, so it was the paper size that changed; the printer printed 10 characters to the inch, so a printer could print a maximum of 12 inches or 14.4 inches of text. In addition, the printer had a buffer, so the I/O delay for the processor was reduced. However, the print instruction would block if the line had not completed.

Operating procedures

The "operating system" for the computer constituted the human operator, who would use controls on the computer console, which consisted of a front panel and typewriter, to load programs from the available bulk storage media such as decks of punched cards or rolls of paper tape that were kept in cabinets nearby. Later, the model 1311 disc storage device attached to the computer enabled a reduction in the fetch and carry of card decks or paper tape rolls, and a simple "Monitor" operating system could be loaded to help in selecting what to load from disc. [20] [25]

A standard preliminary was to clear the computer memory of any previous user's detritus  being magnetic cores, the memory retained its last state even if the power had been switched off. This was effected by using the console facilities to load a simple computer program via typing its machine code at the console typewriter, running it, and stopping it. This was not challenging as only one instruction was needed such as 160001000000, loaded at address zero and following. This meant transmit field immediate (the 16: two-digit op-codes) to address 00010 the immediate constant field having the value 00000 (five-digit operand fields, the second being from address 11 back to 7), decrementing source and destination addresses until such time as a digit with a "flag" was copied. This was the normal machine code means of copying a constant of up to five digits. The digit string was addressed at its low-order end and extended through lower addresses until a digit with a flag marked its end. But for this instruction, no flag would ever be found because the source digits had shortly before been overwritten by digits lacking a flag. Thus the operation would roll around memory (even overwriting itself) filling it with all zeroes until the operator grew tired of watching the roiling of the indicator lights and pressed the Instant Stop - Single Cycle Execute button. Each 20,000 digit module of memory took just under one second to clear. On the 1620 II this instruction would NOT work (due to certain optimizations in the implementation). Instead there was a button on the console called Modify which when pressed together with the Check Reset button, when the computer was in Manual mode, would set the computer in a mode that would clear all of memory in a tenth of one second regardless of how much memory you had; when you pressed Start. It also stopped automatically when memory was cleared, instead of requiring the operator to stop it.

Other than typing machine code at the console, a program could be loaded via either the paper tape reader, the card reader, or any disk drive. Loading from either tape or disk required first typing a "bootstrap" routine on the console typewriter.

The card reader made things easier because it had a special Load button to signify that the first card was to be read into the computer's memory (starting at address 00000) and executed (as opposed to just starting the card reader, which then awaits commands from the computer to read cards)  this is the "bootstrap" process that gets into the computer just enough code to read in the rest of the code (from the card reader, or disc, or...) that constitutes the loader that will read in and execute the desired program.

Programs were prepared ahead of time, offline, on paper tape or punched cards. But usually the programmers were allowed to run the programs personally, hands-on, instead of submitting them to operators as was the case with mainframe computers at that time. And the console typewriter allowed entering data and getting output in an interactive fashion, instead of just getting the normal printed output from a blind batch run on a pre-packaged data set. As well, there were four program switches on the console whose state a running program could test and so have its behavior directed by its user. The computer operator could also stop a running program (or it may come to a deliberately programmed stop) then investigate or modify the contents of memory: being decimal-based, this was quite easy; even floating-point numbers could be read at a glance. Execution could then be resumed, from any desired point. Aside from debugging, scientific programming is typically exploratory, by contrast to commercial data processing where the same work is repeated on a regular schedule.

Console

IBM 1620 Memory address register display selector switch IBM 1620 Memory address register display selector.jpg
IBM 1620 Memory address register display selector switch

The most important items on the 1620's console were a pair of buttons labeled Insert & Release, and the console typewriter.

The typewriter is used for operator input/output, both as the main console control of the computer and for program controlled input/output. Later models of the typewriter had a special key marked R-S that combined the functions of the console Release & Start buttons (this would be considered equivalent to an Enter key on a modern keyboard). Note: several keys on the typewriter did not generate input characters, these included Tab and Return (the 1620s alphameric and numeric BCD character sets lacked character codes for these keys).

The next most important items on the console were the buttons labeled Start, Stop-SIE, and Instant Stop-SCE.

For program debugging there were the buttons labeled Save & Display MAR.

When a Branch Back instruction was executed in Save mode, it copied the saved value back to the program counter (instead of copying the return address register as it normally did) and deactivated Save mode.

This was used during debugging to remember where the program had been stopped to allow it to be resumed after the debugging instructions that the operator had typed on the typewriter had finished. Note: the MARS register used to save the program counter in was also used by the Multiply instruction, so this instruction and the Save mode were incompatible! However, there was no need to use multiply in debugging code, so this was not considered to be a problem.

"Breakpoint" procedureNotes
Press Stop-SIEStop the computer at the end of the current instruction.
Press SaveSave the address to resume execution at.
Press InsertUnlocks typewriter keyboard and shifts into numeric mode.
Type 35xxxxx0010036xxxxx0010042
 
xxxxx is the address that you plan to set the breakpoint at.
Press ReleaseLocks typewriter keyboard.
Press StartBegin execution. Allow the 12 digit instruction to print out.
Press ReleaseStops the Dump Numeric.
Press StartBegin execution.
Type 48Replace the opcode of the instruction to "break" at with a Halt opcode.
Press ReleaseLocks typewriter keyboard.
Press StartResume execution. Wait until the computer halts at the "breakpoint".
Press InsertUnlocks typewriter keyboard and shifts into numeric mode.
Type 36xxxxx0010049xxxxx
 
xxxxx is the address that you previously set the breakpoint at, you are now going to clear it.
Press ReleaseLocks typewriter keyboard.
Press StartBegin execution.
Type oooo is the 2 digit opcode the original 12 digit instruction previously printed out.
Press ReleaseLocks typewriter keyboard.
Press Stop-SIEThe machine is now ready to resume execution from the location of the (now cleared) "breakpoint". You can perform any required debugging actions now, before continuing.

All of main memory could be cleared from the console by entering and executing a transfer instruction from address to address +1, this would overwrite any word mark, that would normally stop a transfer instruction, and wrap around at the end of memory. After a moment, pressing Stop would stop the transfer instruction and memory would be cleared.

IBM 1621/1624 Paper Tape reader/punch

User holding paper tape at the IBM 1620 with the IBM 1621 paper tape reader in background, IBM headquarters, White Plains, NY, 1961 IMB1620 and IBM 1621 with paper tape.jpg
User holding paper tape at the IBM 1620 with the IBM 1621 paper tape reader in background, IBM headquarters, White Plains, NY, 1961

The IBM 1621 Paper Tape Reader could read a maximum of 150 characters per second;
The IBM 1624 Paper Tape Punch could output a maximum of 15 characters/second. [1]

Both units:

The 1621 Tape Reader and 1624 Tape Punch included controls for:

Bootstrap procedureNotes
Press InsertUnlocks typewriter keyboard and shifts into numeric mode.
Type 36xxxxx0030049yyyyy
 
xxxxx is the address to load the tape into.
yyyyy is the address to begin execution.
Press ReleaseLocks typewriter keyboard.
Press StartBegin execution.

IBM 1622 Card reader/punch

The IBM 1622 Card reader/punch could:

The 1622's controls were divided into three groups: 3 punch control rocker switches, 6 buttons, and 2 reader control rocker switches.

Punch Rocker switches:

Buttons:

Reader Rocker switches:

Bootstrap procedureNotes
Press Load

Disk drives

IBM 1311 Disk Drives - Model 2 (Slave) & Model 3 (Master), attached to an IBM 1620 II BRL64-IBM 1311 DiskDrives.jpg
IBM 1311 Disk Drives  Model 2 (Slave) & Model 3 (Master), attached to an IBM 1620 II

The 1311 Disk drive controls.

Bootstrap procedureNotes
Press InsertUnlocks typewriter keyboard and shifts into numeric mode.
Type 3400032007013600032007024902402
x
y1963611300102
x  Specifies source of Monitor control cards: 1=typewriter, 3=paper tape, 5=cards
y  Specifies disk drive on which Monitor resides: 1, 3, 5, 7
02402 is the address of the entry point of the Monitor program.
Press ReleaseLocks typewriter keyboard.
Press StartBegin execution.
Restart procedureNotes
Press InsertUnlocks typewriter keyboard and shifts into numeric mode.
Type 490225FLG6
 
02256̅ is the address of the location containing the address of the restart point of the Monitor program.
Note: this procedure assumes the Monitor is already loaded in memory
Press ReleaseLocks typewriter keyboard.
Press StartBegin execution.

General

The FORTRAN II compiler and SPS assembler were somewhat cumbersome to use [26] [27] by modern standards, however, with repetition, the procedure soon became automatic and you no longer thought about the details involved.

FORTRAN II compilation procedureNotes
Set the Program Switches as follows:
  1. OFF (No Source listing)
  2. OFF (No Batch compilation)
  3. OFF (Source is entered from cards)
  4. OFF (Only used if 3 is ON)
Pass I options
Set Overflow Check switch to Program and all others to Stop
Press Reset
Load blank cards (face down 12-edge first) into the Punch hopper then press Punch Start
Load Pass I of the compiler (face down 9-edge first) into the Read hopper then press LoadWait for Pass I to load and print on the typewriter "ENTER SOURCE PROGRAM, PRESS START"
Remove Pass I of the compiler from the Read stacker
Load the program source deck (face down 9-edge first) into the Read hopper then press StartWait for Pass I to complete and print on the typewriter "TURN SW 1 ON FOR SYMBOL TABLE, PRESS START"
Turn Program Switch 1 OFF then press StartIf a symbol table listing is desired for debugging, turn Program Switch 1 ON instead. The symbol table listing will be printed on the typewriter.
Wait for Pass I to print on the typewriter "END OF PASS 1"
Set the Program Switches as follows:
  1. OFF (No statement number/address listing)
  2. OFF (Not used)
  3. OFF (No trace for IF statements)
  4. OFF (No trace for arithmetic statements)
Pass II options
Set Overflow Check switch to Program and all others to Stop
Press Reset
Load blank cards (face down 12-edge first) into the Punch hopper then press Punch Start
Load Pass II of the compiler (face down 9-edge first) into the Read hopper then press LoadWait for Pass II to load
Remove Pass II of the compiler from the Read stacker
Remove the intermediate output of Pass I from the Punch stacker, then load it (face down 9-edge first) into the Read hopper and press Reader Start then StartWait for Pass II to complete and print on the typewriter "SW 1 ON TO PUNCH SUBROUTINES, PRESS START"
Remove the intermediate output from the Reader stacker
Turn Program Switch 1 ON, load the Subroutine deck (face down 9-edge first) into the Read hopper, then press Reader Start then StartWait for Pass II to print on the typewriter "END OF PASS II"
Remove the Subroutine deck from the Reader stacker and the completed Object deck from the Punch stacker

GOTRAN was much simpler to use, as it directly produced an executable in memory. However it was not a complete FORTRAN implementation.

To improve this various third-party FORTRAN compilers were developed. One of these was developed by Bob Richardson, [28] [29] a programmer at Rice University, the FLAG (FORTRAN Load-and-Go) compiler. Once the FLAG deck had been loaded, all that was needed was to load the source deck to get directly to the output deck; FLAG stayed in memory, so it was immediately ready to accept the next source deck. This was particularly convenient for dealing with many small jobs. For instance, at Auckland University a batch job processor for student assignments (typically, many small programs not requiring much memory) chugged through a class lot rather faster than the later IBM 1130 did with its disk-based system. The compiler remained in memory, and the student's program had its chance in the remaining memory to succeed or fail, though a bad failure might disrupt the resident compiler.

Later, disk storage devices were introduced, removing the need for working storage on card decks. The various decks of cards constituting the compiler and loader no longer need be fetched from their cabinets but could be stored on disk and loaded under the control of a simple disk-based operating system: a lot of activity becomes less visible, but still goes on.

Since the punch side of the card reader-punch did not edge-print the characters across the top of the cards, one had to take any output decks over to a separate machine, typically an IBM 557 Alphabetic Interpreter, that read each card and printed its contents along the top. Listings were usually generated by punching a listing deck and using an IBM 407 accounting machine to print the deck.

Hardware implementation

A Standard Modular System (SMS) card SMScard.jpg
A Standard Modular System (SMS) card

Most of the logic circuitry of the 1620 was a type of resistor–transistor logic (RTL) using "drift" transistors (a type of transistor invented by Herbert Kroemer in 1953) for their speed, that IBM referred to as Saturated Drift Transistor Resistor Logic (SDTRL). Other IBM circuit types used were referred to as: Alloy (some logic, but mostly various non-logic functions, named for the kind of transistors used), CTRL (another type of RTL, but slower than SDTRL), CTDL (a type of diode–transistor logic (DTL)), and DL (another type of RTL, named for the kind of transistor used, "drift" transistors). Typical logic levels of all these circuits (S Level) were high: 0 V to -0.5 V, low: -6 V to -12 V. Transmission line logic levels of SDTRL circuits (C Level) were high: 1 V, low: -1 V. Relay circuits used either of two logic levels (T Level) high: 51 V to 46 V, low: 16 V to 0 V or (W Level) high: 24 V, low: 0 V.

These circuits were constructed of individual discrete components mounted on single sided paper-epoxy printed circuit boards 2.5 by 4.5 inches (64 by 114 millimeters) with a 16-pin gold-plated edge connector, that IBM referred to as SMS cards ( Standard Modular System ). The amount of logic on one card was similar to that in one 7400 series SSI or simpler MSI package (e.g., 3 to 5 logic gates or a couple of flip-flops).

These boards were inserted into sockets mounted in door-like racks which IBM referred to as gates. The machine had the following "gates" in its basic configuration:

There were two different types of core memory used in the 1620:

The address decoding logic of the Main memory also used two planes of 100 pulse transformer cores per module to generate the X-Y Line half-current pulses.

There were two models of the 1620, each having totally different hardware implementations:

Development history

A computer for the "small scientific market"

In 1958 IBM assembled a team at the Poughkeepsie, New York development laboratory to study the "small scientific market". Initially the team consisted of Wayne Winger (Manager), Robert C. Jackson, and William H. Rhodes.

Requirements and design

The competing computers in this market were the Librascope LGP-30 and the Bendix G-15; both were drum memory machines. IBM's smallest computer at the time was the popular IBM 650, a fixed word length decimal machine that also used drum memory. All three used vacuum tubes. It was concluded that IBM could offer nothing really new in that area. To compete effectively would require use of technologies that IBM had developed for larger computers, yet the machine would have to be produced at the least possible cost.

To meet this objective, the team set the following requirements:

  • Core memory
  • Restricted instruction set
    • No divide or floating point instructions, use subroutines in the "general program package"
  • Wherever possible replace hardware with existing logical machine functions
    • No arithmetic circuits, use tables in core memory
  • Least expensive Input/Output possible
    • No punch cards, use paper tape
    • No printer, use operator's console typewriter

The prototype

The team expanded with the addition of Anne Deckman, Kelly B. Day, William Florac, and James Brenza. They completed the (codename) CADET prototype in the spring of 1959.

Meanwhile, the San Jose, California facility was working on a proposal of its own. IBM could only build one of the two and the Poughkeepsie proposal won because "the San Jose version is top of the line and not expandable, while your proposal has all kinds of expansion capability - never offer a machine that cannot be expanded".

IBM1620A.jpg
IBM 1620 Model I Level A (prototype), as it appeared

in the IBM announcement of the machine.

Management was not entirely convinced that core memory could be made to work in small machines, so Gerry Ottaway was loaned to the team to design a drum memory as a backup. During acceptance testing by the Product Test Lab, repeated core memory failures were encountered and it looked likely that management's predictions would come true. However, at the last minute it was found that the muffin fan used to blow hot air through the core stack was malfunctioning, causing the core to pick up noise pulses and fail to read correctly. After the fan problem was fixed, there were no further problems with the core memory and the drum memory design effort was discontinued as unnecessary.

Transferred to San Jose for production

Following announcement of the IBM 1620 on October 21, 1959, due to an internal reorganization of IBM, it was decided to transfer the computer from the Data Processing Division at Poughkeepsie (large scale mainframe computers only) to the General Products Division at San Jose (small computers and support products only) for manufacturing.

Following transfer to San Jose, someone there jokingly suggested that the code name CADET actually stood for "Can't Add, Doesn't Even Try", referring to the use of addition tables in memory rather than dedicated addition circuitry (and SDTRL actually stood for "Sold Down The River Logic" became a common joke among the CEs). This stuck and became very well known among the user community. [30] [31] [32]

Implementation "levels"

The 1620 Model II introduced basic ALU hardware for addition and subtraction (making "Can't Add, Doesn't Even Try" no longer applicable) and index registers.

Patents

  • U.S. patent 3,049,295   Multiplying Computer
    • Patent filed: December 20, 1960
    • Patent issued: August 14, 1962
    • Inventors
      • William H. Rhodes
      • James G. Brenza
      • Wayne D. Winger
      • Robert C. Jackson
    • Claims and prior art references
      • 21 claims
      • No prior art
    • Diagrams and Text
      • 156 sheets of diagrams (Describes 1620 in full details.)
      • 31 sheets of text
  • U.S. patent 3,328,767   Compact Data Lookup Table
    • Patent filed: December 31, 1963
    • Patent issued: June 27, 1967
    • Inventors
      • Gerald H. Ottaway
    • Claims and prior art references
      • 11 claims
      • 5 prior art
    • Diagrams and Text
      • 5 sheets of diagrams
      • 4 sheets of text
  • U.S. patent 3,199,085   Computer with Table Lookup Arithmetic Unit Feature
    • Patent filed: December 20, 1960
    • Patent issued: August 3, 1965
    • Inventors
      • William H. Rhodes
      • James G. Brenza
      • Wayne D. Winger
    • Claims and prior art references
      • 21 claims
      • 5 prior art
    • Diagrams and Text
      • 156 sheets of diagrams (Describes 1620 in full details.)
      • 31 sheets of text
  • U.S. patent 3,239,654   Dividing Computer
    • Patent filed: February 8, 1961
    • Patent issued: March 8, 1966
    • Inventors
      • Robert C. Jackson
      • William A. Florac
      • Wayne D. Winger
    • Claims and prior art references
      • 9 claims
      • 1 prior art
      • 3 publications
    • Diagrams and Text
      • 13 sheets of diagrams
      • 19 sheets of text

Notable uses

An IBM 1620 model II was used by Vearl N. Huff, NASA Headquarters (FOB 10B, Washington DC) to program a three-dimensional simulation in Fortran of the tethered Gemini capsule  Agena rocket module two-body problem at a time when it was not completely understood if it was safe to tether two objects together in space due to possible elastic tether induced collisions. The same computer was also used to simulate the orbits of the Gemini flights, producing printer-art charts of each orbit. These simulation were run over-night and the data examined the next day. [33]

In 1963 an IBM 1620 was installed at IIT Kanpur providing the kicker for India's software prowess. [34]

In 1964 at the Australian National University, Martin Ward used an IBM 1620 model I to calculate the order of the Janko group J1 . [35]

In 1966 the ITU produced an explanatory film on a 1963 system for typesetting by computer at the Washington Evening Star , using an IBM 1620 and a Linofilm phototypesetter. [36]

In 1964 an IBM 1620 was installed at The University of Iceland, becoming the first computer in Iceland. [37]

Use in film and television

Anecdotes

CADET

Many in the user community recall the 1620 being referred to as CADET, jokingly meaning "Can't Add, Doesn't Even Try", referring to the use of addition tables in memory rather than dedicated addition circuitry. [41]

See development history for an explanation of all three known interpretations of the machine's code name.

The internal code name CADET was selected for the machine. One of the developers says that this stood for "Computer with ADvanced Economic Technology", however others recall it as simply being one half of "SPACE - CADET", where SPACE was the internal code name of the IBM 1401 machine, also then under development.[ citation needed ]

See also

Related Research Articles

<span class="mw-page-title-main">IBM System/360</span> IBM mainframe computer family (1964–1977)

The IBM System/360 (S/360) is a family of mainframe computer systems that was announced by IBM on April 7, 1964, and delivered between 1965 and 1978. It was the first family of computers designed to cover both commercial and scientific applications and a complete range of applications from small to large. The design distinguished between architecture and implementation, allowing IBM to release a suite of compatible designs at different prices. All but the only partially compatible Model 44 and the most expensive systems use microcode to implement the instruction set, featuring 8-bit byte addressing and binary, decimal and hexadecimal floating-point calculations.

<span class="mw-page-title-main">Booting</span> Process of starting a computer

In computing, booting is the process of starting a computer as initiated via hardware such as a button or by a software command. After it is switched on, a computer's central processing unit (CPU) has no software in its main memory, so some process must load software into memory before it can be executed. This may be done by hardware or firmware in the CPU, or by a separate processor in the computer system.

<span class="mw-page-title-main">IBM 1401</span> 1960s decimal computer

The IBM 1401 is a variable-wordlength decimal computer that was announced by IBM on October 5, 1959. The first member of the highly successful IBM 1400 series, it was aimed at replacing unit record equipment for processing data stored on punched cards and at providing peripheral services for larger computers. The 1401 is considered by IBM to be the Ford Model-T of the computer industry due to its mass appeal. Over 12,000 units were produced and many were leased or resold after they were replaced with newer technology. The 1401 was withdrawn on February 8, 1971.

<span class="mw-page-title-main">IBM 650</span> Vacuum tube computer system

The IBM 650 Magnetic Drum Data-Processing Machine is an early digital computer produced by IBM in the mid-1950s. It was the first mass produced computer in the world. Almost 2,000 systems were produced, the last in 1962, and it was the first computer to make a meaningful profit. The first one was installed in late 1954 and it was the most-popular computer of the 1950s.

<span class="mw-page-title-main">UNIVAC</span> Series of mainframe computer models

UNIVAC was a line of electronic digital stored-program computers starting with the products of the Eckert–Mauchly Computer Corporation. Later the name was applied to a division of the Remington Rand company and successor organizations.

<span class="mw-page-title-main">IBM 7090</span> Mainframe computer

The IBM 7090 is a second-generation transistorized version of the earlier IBM 709 vacuum tube mainframe computer that was designed for "large-scale scientific and technological applications". The 7090 is the fourth member of the IBM 700/7000 series scientific computers. The first 7090 installation was in December 1959. In 1960, a typical system sold for $2.9 million or could be rented for $63,500 a month.

<span class="mw-page-title-main">IBM 700/7000 series</span> Mainframe computer systems made by IBM through the 1950s and early 1960s

The IBM 700/7000 series is a series of large-scale (mainframe) computer systems that were made by IBM through the 1950s and early 1960s. The series includes several different, incompatible processor architectures. The 700s use vacuum-tube logic and were made obsolete by the introduction of the transistorized 7000s. The 7000s, in turn, were eventually replaced with System/360, which was announced in 1964. However the 360/65, the first 360 powerful enough to replace 7000s, did not become available until November 1965. Early problems with OS/360 and the high cost of converting software kept many 7000s in service for years afterward.

<span class="mw-page-title-main">IBM 1130</span> 16-bit IBM minicomputer introduced in 1965

The IBM 1130 Computing System, introduced in 1965, was IBM's least expensive computer at that time. A binary 16-bit machine, it was marketed to price-sensitive, computing-intensive technical markets, like education and engineering, succeeding the decimal IBM 1620 in that market segment. Typical installations included a 1 megabyte disk drive that stored the operating system, compilers and object programs, with program source generated and maintained on punched cards. Fortran was the most common programming language used, but several others, including APL, were available.

<span class="mw-page-title-main">IBM 305 RAMAC</span> First computer to use magnetic disk storage

The IBM 305 RAMAC was the first commercial computer that used a moving-head hard disk drive for secondary storage. The system was publicly announced on September 14, 1956, with test units already installed at the U.S. Navy and at private corporations. RAMAC stood for "Random Access Method of Accounting and Control", as its design was motivated by the need for real-time accounting in business.

<span class="mw-page-title-main">IBM System/3</span> IBM midrange computer (1969–1985)

The IBM System/3 was an IBM midrange computer introduced in 1969, and marketed until 1985. It was produced by IBM Rochester in Minnesota as a low-end business computer aimed at smaller organizations that still used IBM 1400 series computers or unit record equipment. The first member of what IBM refers to as their "midrange" line, it also introduced the RPG II programming language. It is the first ancestor in the product line whose current version is the IBM i series and includes the highly successful AS/400.

<span class="mw-page-title-main">IBM 1400 series</span> Second generation mid-range business decimal computers

The IBM 1400 series were second-generation (transistor) mid-range business decimal computers that IBM marketed in the early 1960s. The computers were offered to replace tabulating machines like the IBM 407. The 1400-series machines stored information in magnetic cores as variable-length character strings separated on the left by a special bit, called a "wordmark," and on the right by a "record mark." Arithmetic was performed digit-by-digit. Input and output support included punched card, magnetic tape, and high-speed line printers. Disk storage was also available.

<span class="mw-page-title-main">Honeywell 200</span>

The Honeywell 200 was a character-oriented two-address commercial computer introduced by Honeywell in December 1963, the basis of later models in Honeywell 200 Series, including 1200, 1250, 2200, 3200, 4200 and others, and the character processor of the Honeywell 8200 (1968).

<span class="mw-page-title-main">IBM 7070</span> Decimal computer introduced by IBM in 1958

IBM 7070 is a decimal-architecture intermediate data-processing system that was introduced by IBM in 1958. It was part of the IBM 700/7000 series, and was based on discrete transistors rather than the vacuum tubes of the 1950s. It was the company's first transistorized stored-program computer.

<span class="mw-page-title-main">Front panel</span>

A front panel was used on early electronic computers to display and allow the alteration of the state of the machine's internal registers and memory. The front panel usually consisted of arrays of indicator lamps, digit and symbol displays, toggle switches, dials, and push buttons mounted on a sheet metal face plate. In early machines, CRTs might also be present. Prior to the development of CRT system consoles, many computers such as the IBM 1620 had console typewriters.

<span class="mw-page-title-main">NCR 315</span>

The NCR 315 Data Processing System, released in January 1962 by NCR, is a second-generation computer. All printed circuit boards use resistor–transistor logic (RTL) to create the various logic elements. It uses 12-bit slab memory structure using magnetic-core memory. The instructions can use a memory slab as either two 6-bit alphanumeric characters or as three 4-bit BCD digits. Basic memory is 5000 "slabs" of handmade core memory, which is expandable to a maximum of 40,000 slabs in four refrigerator-size cabinets. The main processor includes three cabinets and a console section that houses the power supply, keyboard, output writer, and a panel with lights that indicate the current status of the program counter, registers, arithmetic accumulator, and system errors. Input/Output is by direct parallel connections to each type of peripheral through a two-cable bundle with 1-inch-thick cables. Some devices like magnetic tape and the CRAM are daisy-chained to allow multiple drives to be connected.

<span class="mw-page-title-main">NCR Century 100</span> 1968 computer system

The NCR Century 100 was NCR's first all integrated circuit computer built in 1968. All logic gates were created by wire-wrapping NAND gates together to form flip-flops and other complex circuits. The console of the system had only 18 lights and switches and allowed entry of a boot routine, or changes to loaded programs or data in memory. A typewriter console was also available.

<span class="mw-page-title-main">IBM System/7</span>

The IBM System/7 was a computer system designed for industrial control, announced on October 28, 1970 and first shipped in 1971. It was a 16-bit machine and one of the first made by IBM to use novel semiconductor memory, instead of magnetic core memory conventional at that date.

ICT 1900 was a family of mainframe computers released by International Computers and Tabulators (ICT) and later International Computers Limited (ICL) during the 1960s and 1970s. The 1900 series was notable for being one of the few non-American competitors to the IBM System/360, enjoying significant success in the European and British Commonwealth markets.

<span class="mw-page-title-main">IBM System/360 Model 20</span> Low-end IBM computer model from 1960s

The IBM System/360 Model 20 is the smallest member of the IBM System/360 family announced in November 1964. The Model 20 supports only a subset of the System/360 instruction set, with binary numbers limited to 16 bits and no floating point. In later years it would have been classified as a 16-bit minicomputer rather than a mainframe, but the term "minicomputer" was not current, and in any case IBM wanted to emphasize the compatibility of the Model 20 rather than its differences from the rest of the System/360 line. It does, however, have the full System/360 decimal instruction set, that allows for addition, subtraction, product, and dividend of up to 31 decimal digits.

References

  1. 1 2 3 4 5 6 7 8 "1620 Data Processing System". 23 January 2003.
  2. "Some Key Dates in IBM's Operations in Europe, the Middle East and Africa (EMEA)" (PDF). Archived (PDF) from the original on 2022-10-10.
  3. 1 2 "The IBM 1620: Just The Right Machine for Chula's Statistics Department". Archived from the original on 2017-12-22. Retrieved 2017-12-20.
  4. "... arranged as a 100x100 array of 12-bit locations, each holding 2 decimal digits. (Each decimal digit was encoded in binary using 6 bits.)"
  5. Oddur Benediktsson (2009). "FORTRAN II – the First Computer Language Used at the University of Iceland" (PDF). History of Nordic Computing 2. IFIP Advances in Information and Communication Technology. Vol. 303. pp. 149–155. doi:10.1007/978-3-642-03757-3_16. ISBN   978-3-642-03756-6. Archived (PDF) from the original on 2017-12-22.
  6. 1 2 John Impagliazzo; Timo Järvi; Petri Paju (2009). History of Nordic Computing 2: Second IFIP WG 9.7 Conference. ISBN   978-3642037573.
  7. Although there are descriptions of a single 100,000-digit machine, designed in the late 1960s, using heavily modified hardware.
  8. "The main memory was logically arranged as 20,000 6-bit words. Each word comprised four BCD data bits, a "flag" bit, and an odd parity check bit. Though this was its logical arrangement, physically memory was a 100x100 array of 12-bit ferrite core words, which causes a few quirks in the instruction set. All instructions occupied 12 consecutive digits of memory, and were required to start at an even address so that the two-digit opcode could be read in one 12-bit physical word." "The IBM 1620 Model 1  Physics @ SMU".
  9. E.W. Dijkstra Archive: A review of the IBM 1620 Data Processing System (EWD 37)
  10. http://www.textfiles.com/bitsavers/pdf/ibm/1620/Basic_Programming_Concepts_and_the_IBM_1620_Computer_1962.pdf Archived 2015-07-20 at the Wayback Machine "The punched card is the most widely used media for communication with machines"
  11. "Similar demands for small to medium scientific computers resulted in the IBM 1620 and its successor the IBM 1130." James L. Peterson; Werner Rheinboldt (2014). Computer Organization and Assembly Language Programming. ISBN   978-1483268590.
  12. "Subject: GOTRAN ON THE IBM 1316 DISK STORAGE PACK (Serial No. K7402)". Archived from the original on 2006-02-21. Retrieved 2006-03-03.
  13. "Index of /pdf/ibm/1620". Archived from the original on 2006-02-11. Retrieved 2006-04-06.
  14. "IBM 1620". Swansea University  swansea.ac.uk. Archived from the original on 2017-12-22. Retrieved 2017-12-19.
  15. 1 2 227-5630-1 IBM 1620 Floating Point Feature CE Manual (PDF). IBM Corporation. Archived (PDF) from the original on 2022-10-10.
  16. Weik, Martin H. (Mar 1961). "IBM 1620". ed-thelen.org. A Third Survey of Domestic Electronic Digital Computing Systems.
  17. "Multi-level indirection could be used (you could even put the machine in an infinite indirect addressing loop), and in the middle three digits of five-digit addresses (on the 1620 II) they were set to select one of seven index registers. Dan Ryan (2011). History of Computer Graphics. DLR Associates Series. ISBN   978-1456751159.
  18. "IBM 1620 Central Processing Unit, Model 1" (PDF). p. 28. Archived from the original (PDF) on 2017-10-09. Retrieved 2017-12-18.
  19. "IBM 1620 Central Processing Unit, Model 2" (PDF). p. 71. Archived from the original (PDF) on 2019-05-25. Retrieved 2017-12-18.
  20. 1 2 "IBM 1311". 23 January 2003.
  21. "... storage for 2 million characters.
  22. "1963 : On May 6, the IBM 1443 printer, for use with the IBM 1620 data processing system, makes its debut." "DPD chronology". 23 January 2003.
  23. "IBM 1443 PRINTER for 1620/1710 Systems" (PDF). IBM Systems Reference Library. Archived (PDF) from the original on 2022-10-10.
  24. This publication describes the IBM 1443 Printer as an on-line output unit for the 1620 Data Processing Systems, :Models 1 and. 2, and for the 1710 Control System. File No. 1620/1710-03. Form A26-5730-2
  25. "... 2 million characters, the equivalent of approximately 25,000 punched cards or a fifth of a reel of magnetic tape."
  26. 1620 FORTRAN (with FORMAT) (PDF). IBM Systems Reference Library. pp. 51–56. Archived (PDF) from the original on 2009-01-09.
  27. IBM 1620 FORTRAN II Programming System Reference Manual (PDF). IBM Systems Reference Library. pp. 22–28. Archived (PDF) from the original on 2009-01-09.
  28. Dan Ryan (2011). History of Computer Graphics: Dlr Associates Series. ISBN   978-1456751159. developed by Bob Richardson, a programmer at Rice University
  29. User:Br6cycles3, in his/first and only edit to date (24 Feb 2019, 18:15) attempted to change the name in the article from Bob Richardson to Mike McCants and wrote in the summary: "Correct misattribution: I'm Bob Richardson and I know the programmer was actually Mike McCants."
  30. "In 1962, IBM began delivery of a remarkable little machine originally called the Cadet but marketed as the IBM 1620." Edwin D. Reilly (2003). Milestones in Computer Science and Information Technology . ISBN   978-1573565219.
  31. even five years later, it was still uncommon for a high school to have an IBM 1620: "IBM 1620".
  32. "The IBM 1620 (a.k.a. CADET) ... stood for 'Can't Add and Doesn't Even Try.'"
  33. Personal recollections of Donald N. Huff, son of Vearl N. Huff
  34. Jayant K Singh, The Spark, Icct 2021, IIT Kanpur
  35. Zvonimir Janko, A new finite simple group with abelian Sylow subgroups, Proc. Natl. Acad. Sci. USA 53 (1965) 657-658
  36. "I.T.U. - Story of Technology". International Typographical Union. 1966.
  37. "Ský - Fyrstu tölvurnar". www.sky.is. Archived from the original on 2021-11-02. Retrieved 2021-11-02.
  38. Spicer, Dag (July–September 2005), "The IBM 1620 Restoration Project" (PDF), IEEE Annals of the History of Computing , 27 (3): 33–43, doi:10.1109/MAHC.2005.46, S2CID   710051 , retrieved 2010-09-02[ permanent dead link ]
  39. "THRUSH is developing an 'ultimate computer'..." "The Man from U.N.C.L.E. - The Ultimate Computer Affair (TV Episode)". IMDb . October 1965.
  40. The IBM 1316 was the removable disk pack to the IBM 1311 disk drive of the IBM 1620, which explains the following: "“The Man from U.N.C.L.E.” movie's full of technological anachronisms ... Back in 1963, when the movie took place, there were disk packs available like the 10-pound IBM 1316." "The Man from U.N.C.L.E." movie's full of technological anachronisms".
  41. Ornstein, Severo (2002). Computing in the Middle Ages: A View from the Trenches 1955-1983. Lexington, KY: 1st Books. p. 62. ISBN   978-1-4033-1517-5.