Computer Laboratory Home Page Search A-Z Directory Help
University of Cambridge Home Computer Laboratory
Events in the early history of the Computer Laboratory
Computer Laboratory > Events in the early history of the Computer Laboratory

Notes by David Wheeler, additional material by David Hartley

Draft: Version 1.1 March 1999

Please give David Wheeler ( any corrections of fact or additional data.

Foundation of Laboratory. -approved 14 May 1937
First Director Lennox-Jones, A Chemist
Originally named Mathematical Laboratory
Used by Ministry of Defence during War. ?-Jan 1946

Used mechanical computers, Brunsvigas, Facits, electric Marchants and an electric Midas etc.
Mallock machine used for solving linear equations. It used coupled transformers, with numbers of turns digitally set up to +/-1000 and solved sets of linear equations up to 10.
Differential analyser, mechanical, used for solving differential equations maker Metro-Vickers.
Users included H. Bondi.
Meccano Differential Analyser, made by D.R.Hartree
Punched card machinery from ICL. Mainly used for crystallography.


M.V.Wilkes attended Moore school lectures at Univ. of Philadelphia
July August 1946 Cambridge work started Oct. 46
Cambridge Thursday Seminars at 2.15 started in 47-48?
Informal computing information interchange, local, near national, ONR., and occasional overseas attendees.
Initial orders. Loaded by pressing start button and then obeyed.
Wired during early 1949 and used for commissioning
First logged program. May 6 49 Complete computer working. Input by paper tape, started by START push button, results printed by teleprinter.
Coordinating orders. Had more assembly features than Initial orders 2, but had to be separately loaded, made remaining tapes longer and clumsy.

Initial orders 2. Wired by Oct 22 49.
Tape preparation devices, comparators etc.
Program paper tapes made by punching two tapes with keyboard perforator and using comparator to find punching errors.
Library tapes copied and compared.
5 hole paper tape used.
Corrections usually by jiffy tapes.
Summer School. First one 12-21 Sept 50

Program Service. Became formal in 1950 with operators to run programs.
Queueing system started date?
Library of paper tapes. Descriptions and acceptance by Eric Mutch to a very high standard.
Post Mortem Diagnostics. Not named after Anatomy building which housed EDSAC. Printed selectable parts of store after program died in selectable non binary styles.
Runge Kutta Gill. A routine which became the workhorse for solving sets of differential equations. by Stan Gill.
Floating Point interpretive David Wheeler
Interpreter by John Bennet to allow compact programs.
Trace routine. Stan Gill.
Photoelectric reader In use Oct 50. About 50 characters per second.

The monitor which could be used by programmers was a display of the content of any (switched) delay line. It was unofficially used for noughts and crosses , a dancing highland figure, and other interesting displays. Its normal uses was to watch the changing numbers and see the approach of convergence. It was not used to find the numerical values displayed, which could better be done by a Post Mortem tape, or else the usual printing.
Film made of typical EDSAC use. late 1951.
First photo electric reader shown in use in movie Oct. 51. about 35 characters per The Preparation of Programs for an Elctronic Digital Computer by Wilkes Wheeler and Gill, published by Addison Wesley June 51, The first ``general" book on programming.

Inhibition (overlapped input, output and calculation) 24 April 52
Telephone dial. Mainly used to select part of store for Post Mortems. Also used to give data to programs during their run without having to punch a paper tape.
Marginal Testing Hardware introduced. Could detect failing valves etc. before they caused program faults.
Check point routine. by David Wheeler.

Magnetic tape work started early part of 1952, EDSAC system described in Wilkes & Willis Proc IEE _103B_ Supplement N.2 p337 (1956)
B register 14 Dec 53 Used for the magnetic tape; described in above paper, effectively increased EDSAC speed by 30% and simplified programming.
Changed output code. Used a 2 out of 5 code to detect printer failings. Removal of feedback check on teleprinter which used an F order but failed more due to the check contacts than printing errors.
Fast punch, perhaps 35 characters per second. Results printed offline at 6.5 characters per second.
Other programming techniques used during life of EDSAC. Hash tables, recursive routines with stack, algebraic differentiation within calculations, Fast Fourier transforms, program labelling, interpretive routines for multi precision calculations, floating point arithmetic and matrix work, sieve routines for prime numbers, etc.
S.F.Boys programs for solving energy levels of molecules, made computations of many tens of hours, by repeating calculations with separate tapes and included algebraic differentiation as part of the calculation of the 6 dimensional integration.

Elliot 401 Brought to Cambridge for evaluation, Donald.B.Gillies helped.
Magnetic Drum development, aborted, magnetic tape used instead.

Some early users of EDSAC

Ken Dodd, Alec Glennie, Brian Haselgrove, Fred Hoyle, Ian Page, Trixie Worsley, John? Pearcy, Douglas Hartree, Jeff Miller,Stan Gill, Maurice Wilkes, John Bennett. Frank Boys, John Kendrew.


Leo 1.
First commercial computer, made by Lyons, derived from EDSAC.
In July 47 Lyons made an agreement, giving 3000 pounds and a technician for a year named Lenaerts in exchange for using the EDSAC experience to make their commercial computer called LEO, Lyons Electronic Office.
Test programs Feb 15 51, First job 5th Sept 51, dependance complete for one job Nov 30 51.
see Leo : The first business computer. by Peter J. Bird. Hasler Publishing Ltd. 1994


Nuffield grant 14 June 1951. Supplementary grant for core memory 14 Dec. 1953. Cores being tested April 54, made by Mullard.
EDSAC 1.25 simulator summer 56 for EDSAC 1.5
EDSAC 1.5 In use early 1956 ?. Esdac2 taking some load early 1958; full load (EDSAC shut down) 11 July 1958.
ROM store. Used single magnetic cores to store 4 fixed bits with bias wires. Microprogram. Made practical by 13mm switching ferrite cores.
Parity- never made to work successfully.
Bit slice computer see Wilkes ``The best way to design ..." 1951


Magnetic tape Work started early 1952 Magnetic tape available for experimental use 11 Aug 1958. Second Decca tape deck pair Feb 58 ?
Tapes marked in 50 word blocks. Transfers were of any length.
Creed punch. Punched paper tape at 300 characters per second.
Line printer 30 Aug 1960 - with 80 character ferrite core buffer.
Fast photoelectric reader, 1000 characters per second. Lab. design. Prototype built in the Engineering Laboratory. Two were connected. commercially developed and sold by Elliot Bros.
Photo output. program could display a point,a pulled point giving curved lines, else move to next frame.

Initially had comparison post mortem, but later removed to provide other facilities.
Reserved store (protected from direct user access) had 768 words of ROM and 64 words of store giving finally

Full input assembly facilities
Full printing and layout facilities
Built in trace which enabled the last 50 or more control transfers (jumps or loops) before a program halted to be printed for diagnostic puposes.
Autonomous postioning of magnetic tape
Sines, cosines, logs, exponentials solution of differential equations solution of linear equations,simple handling of magnetic tapes etc.
Floating point, with very good numeric properties.

Interrupts. Crude form added in 59?
Signature tests. Used to check machine by `sum checking' calculations and back tracking for location of failure
Business game
Autocode developed which produced moderately optimised code in 1k store
Extra 16k store with extra long modifier register added to EDSAC 2
Upgrade of assembler
closed in 1 Nov. 1965


Titan Suggestion made by Peter Hall 28 June 1961; UGC approved 20 Oct.
Modified from Atlas 1, about 1/4 logic, but no paging and no drum. Initially known as Titan, renamed Atlas 2 by Ferranti Sales and Marketing. Titan was the prototype Atlas 2.
Order code and arithmetic unit basically identical with Atlas 1
Initially: n (?) 48-bit words of store with base and limit store addressing and protection (OR not addition for speed)
Magnetic tape switching unit. 2 channels to 8 tapes; 1-inch tapes Fast interrupt routines for operating system Signature tests for hardware fault location.
Machine delivered 196?.
Later enhancements:
1965 Discs (icluding a special fixed head disc) installed via tape channels
1965 Multiplexor for 64 terminals.
1967 Addition base and limit segment added to enable re-entrant coding to assist multiple access operation
1969 Machine moved to newly built Arup building
19?? Main store extend to n (?) words
started service ?
Magnetic tape switching unit. 2 channels to 8 tapes.
Store protection. Base and limit with OR not addition for speed.
65 Disks installed via tape unit with fixed head disk
65 Multiplexor for 64 terminals.
67 Spring On line service started with extra protected small segment.
Moved to present building ?
Console interfered with local TV reception.
Parasitic oscillations on indicators.
196? Slave (later named Cache by IBM) store, made with tunnel diodes, together with fast operand store, 8 words in user space developed by Neil Wiseman. Design overtaken by silicon progress.
Operating Systems
Temporary Supervisor: developed by P.S.Dyer - buffered input and output, but no multi-programming.
Main Supervisor: (developed jointly with ICL), Cambirdge team led by Roger Needham and included David Hartley, Barry Landy and Mike Guy; later joined by Sandy Fraser. Operational in 1966 with automatic swinging magnetic-tape input/output buffer.
Multiple-access facilities added and brought into service in 1967 with user file store, on-line command language. Lack of memory swapping facilities limited interactivity to editing and other utilities, but user programs run on-line with output returned immediately to console.
Programming Languages
WISP: (symbolic langiage processor developed by M.V.Wilkes); used to develop intital Titan Autocode (an extension of EDSAC 2 Autocode). Later replaced by compiler developed by P.S.Dyer.
CPL: joint project with University of London, Cambirdge team initally led by David Barron and later Christopher Strachey, also included David Hartley, Martin Richards and David Park. Pioneered many new programming language ideas but only partially implemented on Titan. CPL was 'father' of BCPL and subsequently 'great grandfather'of C.
BCPL: started Jan 1967 by Martin Richards at MIT and in use MIT and Oxford Programming Research Group in May 1967. In use on Cambridge Titan October 1968 and subsequently on IBM 370 series. (Also used for Tripos operating system on PDP11, CA LSI4 etc.) Retired from local IBM mainframe in 1994, but still in use elsewhere.
FORTRAN: T3 FORTRAN (based on AWRE's S3 FORTRAN developed by John Larmouth; subsequently enhanced to FORTRAN IV.
Graphics Satellite
PDP7 with Type 340 Display added via direct link to Titan. Pioneering CAD research undertaken by group headed by Charles Lang. Various devices added including 3D foam cutter.


Laboratory divided into two separate parts in 1970: Research & Teaching and Computing Service; renamed Computer Laboratory. David Hartley appointed to new post of Director of the University Computing Service. Maurice Wilkes continues as Head of Laboratory in charge of Teaching and Research.



Started with Modular 1 for input output.
First Hardware meeting 5 June 1972 for Hardware progress see CAP hardware meetings 1972-76
started ?
finished ?
retired ?


Design study 1975, in use late 1977. Initially used packet injection but changed to full/empty packet system allowing built in maintenance and monitoring
Ring chip Date?
Ring National standard, 1982


Developed by Andy Hopper.


Maurice V Wilkes retired Oct 1980.
Roger Needham became Head of Laboratory.
Roger Needham retired as Laboratory Head becoming Pro-vice-chancellor.January 1996
Robin Milner became Head of Laboratory.