Return to On Line Documents
Return to "Early English Computers" table of contents
|Early British Computers, 13 - LEO AND ENGLISH ELECTRIC, starting page 068|
The connections between Cambridge University and the J. Lyons catering company, and between NPL and the English Electric Company, have already been mentioned briefly. We should now do more justice to these enterprises and describe how the two companies eventually amalgamated in the early 1960s.
Fig. 13.1 The LEO (Lyons Electronic Office) computer under construction in 1949/50 at the Cadby Hall premises of the J. Lyons catering company in London. Derived from the Cambridge EDSAC, LEO and its associated data handling equipment was developed for the novel purpose of automating office procedures such as payroll processing, at a time when the idea of an 'automatic computer' was regarded by many as a scientific oddity.
Early British Computers, 13 - LEO AND ENGLISH ELECTRIC, starting page 069
Fig. 13.2 The completed LEO computer, showing the central processor bays in the background to the right of the photograph and the operator's console and input/output equipment in the foreground. LEO was finally switched off in January 1965, at which time it was said to be the oldest operating electronic computer. It had given more than 13 years of continuous service.
The pioneering spirit of J. Lyons & Co. cannot be over-emphasised. Although obviously inspired by the research at Cambridge, this essentially non-technical catering company had taken the first formal steps to build its own computer before the Cambridge EDSAC had even been proved to work. Raymond Thompson took the lead at Lyons. The following quotations, taken from his unpublished 'LEO Chronicle', give some highlights in the story of the Lyons Electronic Office (LEO). They tell of the cooperation with Cambridge; of a magnetic tape input/output system and elaborate converter/reconverter system built for Lyons by Standard Telephones and Cables Ltd, and of its eventual abandonment because of unreliability; of its replacement by a system based on card readers and punches provided by the British Tabulating Machine Co.; of the final completion of a computer which contained almost 7000 valves and included 2048 18-bit words of fast storage and two lineprinters.36 Let this unedited selection of entries from the Chronicle speak for itself:
Early British Computers, 13 - LEO AND ENGLISH ELECTRIC, starting page 070
25 February 1947:Following a suggestion from Standingford that Thompson and he should study the possibilities of electronic calculators in the office during their visit to the USA, a letter is written to Dr Goldstine of Princeton University.
12 May 1947:Thompson and Standingford visit Princeton.
19 May 1947:Professor Hartree of the University of Cambridge, on hearing from Goldstine of our enquiries, writes to invite us to meet him and Dr Wilkes.
24 July 1947:Thompson and Standingford visit Cambridge and see EDSAC for which the main prototype panels are already being tested.
20 October 1947:A report is submitted to the Board proposing that the Company should take an active part in promoting the commercial development of electronic calculators.
13 November 1947:The Board decide to make a donation of £2,500 to Cambridge and to lend Lenaerts for six months to Dr Wilkes.
28 September 1948:A recommendation is made that we should proceed to engage an electronic engineer in spite of the fact that EDSAC is not yet working.
13 December 1948:J. M. M. Pinkerton is offered the post of electronic engineer.17 January 1949:Pinkerton joins the company, first of all studying clerical procedures and then going to Cambridge to study EDSAC for a few weeks.
Early British Computers, 13 - LEO AND ENGLISH ELECTRIC, starting page 071
8 March 1949:A small workshop is set up in the lodge of St. Mary's College [part of the Lyons Cadby Hall premises in London] to prepare experimental circuits.
8 April 1949:Report No. 2 is submitted to the Directors indicating the nature of equipment required to feed in data and feed out results at a speed comparable with that of the calculator and suggesting that we should approach a firm such as Standard Telephones to carry out certain development work for us. It is also proposed that we should contact a manufacturer for the wiring of panels for valves for us and that we should get an assistant for Pinkerton and have the use of a draughtsman for the mechanical drawing work.
11 July 1949:Wayne Kerr Laboratories Ltd sign an agreement to produce panels of electronic circuits to our specification.
31 August 1949:Report No. 5 is submitted pointing out the need for research into the way in which clerical work must be organised for the calculator and into the technique of programming; as a result a start is made on a systematic analysis of clerical work and the basic techniques of programming.
14 September 1949:The name LEO (Lyons Electronic Office) is given to the calculating machine - suggested by Mr Simmons.
5 October 1949:The Coventry Gauge and Tool Company is asked to manufacture the large delay battery tubes.
25 January 1950:Following discussion on the Standard Telephones report we receive an estimate giving a maximum cost of £16,000 for auxiliary equipment required for the pilot LEO and a schedule of delivery dates indicating that the delivery of the equipment should be complete by January 1951.
Early British Computers, 13 - LEO AND ENGLISH ELECTRIC, starting page 072
16-31 October 1950:Pinkerton spends a lot of time at Enfield in an attempt to accelerate production.
15 February 1951:H. R. H. Princess Elizabeth visits Cadby Hall and sees LEO carrying out a simple test programme.
17 April 1951:Demonstrations are given to the Directors showing LEO doing clerical work.
5 September 1951:The Cadby Hall Bakeries Job is done by the calculator, producing accurate results. It is not yet possible to do this job regularly, however, owing to the unreliability of the character generator.
5 October 1951:In view of the delay in deliveries of equipment from Standard Telephones, Messrs. Simmons, Thompson, Standingford, Pinkerton, Kaye and Caminer discuss the possibility of developing other input and output systems using paper tape; a programme of development is drawn up.
16 November 1951:Brigadier Hinds writes to offer us £300 for carrying out some ballistic computations for the Ministry of Supply.
10-12 January 1952:The calculator is given a reliability test producing tax tables for the current year. The test ran over 59 hours and during 51/4 hours of this time useful work was produced giving an operational efficiency of 87%.
Early British Computers, 13 - LEO AND ENGLISH ELECTRIC, starting page 073
14 January 1952:Contract received for daily ballistic computations.
9 July 1952:Have a meeting with B.T.M. to discuss the basic requirements of input and output equipment to be attached to LEO.
7 October 1952:The Management agree that at an additional expense of £10 000 we shall build our own high-speed input and output equipment as an alternative to the Standard Telephones equipment in case this does not prove to be reliable.
1 January 1953:Successful full scale trial of payroll programme is carried out using both converter and reconverter. There were minor computer faults and flaws in the programming which were later amended.
6 May 1953:The first tabulator is delivered from B.T.M.
25 August 1953:Following a further meeting with Mr McVie and Mr Hinton of Standard Telephones on the 19th August, Mr Simmons writes to Mr McVie informing him that we have decided to abandon the project, and asking him to arrange for the equipment to be dismantled and removed.
23 December 1953:The decoration of the Computer Room is completed. A party is held in the No 1 Dining Room to celebrate the completion of LEO I.
5 November 1954:Teashops General Report for Wembley teashops has entry: 'The head staff at this shop would like to give thanks for LEO. This is a wonderful time saver, and work saver, and we are grateful for it'.
Early British Computers, 13 - LEO AND ENGLISH ELECTRIC, starting page 074
In November 1954 Lyons founded a new company, Leo Computers Ltd, to build and sell a new computer called LEO II. This had 1024 39-bit words of mercury delay-line store, backed by up to four drums and some magnetic tape decks. LEO II was first delivered in 1957 and about 13 were sold. This machine was followed by various versions of LEO III from 1962 onwards, about 100 of these finally being built.
In 1963 the data processing and control division of English Electric Ltd and Leo Computers Ltd came together as English Electric Leo Computers Ltd. In the next year English Electric bought out Lyons' share, thus ending a fascinating connection between teashops and computers!
The English Electric Company, a well-established manufacturer of electrical machinery and electronic equipment, first became interested in digital computers through contact with the Pilot ACE group at NPL.37 Sir George Nelson (later Lord Nelson), the Chief Executive of English Electric, was at that time a member of the NPL Executive Council. He and his company's Research Director (J. K. Brown) quickly realised the implication of the NPL proposal to develop a computing engine. This contact was formalised in January 1949 when A. C. D. Haley was recruited by English Electric to head a team of about a dozen engineers and technicians on loan to NPL. The English Electric team cooperated with the NPL group under J. H. Wilkinson and E. A. Newman to produce the Pilot ACE which went into full-time service in 1952, as described in Chapter 8.
Computer design was continued by the company at its Nelson Research Laboratories in Stafford, and later at a special factory a short distance away at Kidsgrove. This activity was initially inspired by the company's own need for in-house digital computing facilities, but early enquiries from outside organisations such as the Royal Aircraft Establishment quickly put the project on a commercial footing. The first machine to be marketed was the English Electric DEUCE, first delivered in the spring of 1955. Like the Pilot ACE, DEUCE38 used mercury delay lines backed by a magnetic drum for storage, punched cards for input, and operated at the comparatively fast digit rate of 1 megacycle. Its internal structure was the same as the Pilot ACE. However, the physical construction was considerably developed so as to give good reliability and easy maintenance. DEUCE contained 1450 valves, thus being nearly twice the size of the NPL prototype. From late 1955 onwards English Electric began selling an improved version known as DEUCE 2, followed in 1957 by a DEUCE 2A; these featured amongst other things a reengineered input/output system. The company sold about 31 DEUCE 1 and 2 machines between 1955 and 1964.
Early British Computers, 13 - LEO AND ENGLISH ELECTRIC, starting page 075
Fig. 13.3 The control desk of an English Electric DEUCE computer. First delivered in 1955, this machine was the production version of the NPL Pilot ACE. Input was via the punched-card reader to the left of the photograph. The black hand-punch lying on the right of the control desk was no doubt only for quick card edits.
During the late 1950s English Electric developed three smaller computers, arising initially out of the company's involvement with digital data logging equipment for steel rolling mills, nuclear power generating plants, etc. The first of these computers, known as the KDN2, used transistor circuits and was available from 1962. The design engineer most closely associated with this project was K. Chisholm. From the KDN2 two further small computers were developed: the KDF7 for general
Early British Computers, 13 - LEO AND ENGLISH ELECTRIC, starting page 076
process control applications and the KDF6 for commercial data processing. These were all 16-bit word length machines, and approximately 30 of them were sold.
Concurrent with this activity, English Electric embarked on two major computer projects. Firstly, as a result of a long-standing technical arrangement with the RCA company of America, English Electric built a version of the RCA501 computer which was known as the KDPI0. This was a variable word-length machine intended for commercial data processing applications. The KDP10 was first delivered in 1961, after which it was upgraded and re-designated the KDF8; about ten machines were sold.
The second, and historically more interesting large computer to emerge from Kidsgrove was the KDF9. This high-speed transistor machine39 was developed by a team under A. C. D. Haley, of which the leading light was R. H. Allmark. The KDF9 is remarkable because it is believed to have been the first zero-address instruction format computer to have been announced (in 196040). It was first delivered at about the same time (early 1963) as the other famous zero-address computer, the Burroughs B5000 in America. Like many modern pocket calculators, a zero-address machine allows the use of Reverse Polish arithmetic; this offers certain advantages to compiler writers. It is believed that the attention of the English Electric team was first drawn to the zero-address concept through contact with GEORGE (General Order Generator58), an autocode programming system written for a DEUCE computer by the University of Sydney, Australia, in the latter half of the 1950s. GEORGE used Reverse Polish, and the KDF9 team were attracted to this convention for the pragmatic reason of wishing to enhance performance by minimising accesses to main store. This may be contrasted with the more 'theoretical' line taken independently by Burroughs.60 Besides a hardware nesting store or stack - the basic mechanism of a zero- address computer - the KDF9 had other groups of central registers for improving performance which gave it an interesting internal structure. Certain aspects of the stacking idea are now to be seen in many modern computers. Although not pioneering in the strictly chronological sense of machines such as EDSAC, the KDF9 is nevertheless worth remembering as a very stimulating example of innovative design. About 29 KDF9 computers were sold between 1963 and 1969.
Early British Computers, 13 - LEO AND ENGLISH ELECTRIC, starting page 077
In 1964 English Electric Leo Computers Ltd acquired the Marconi Company's commercial and scientific computer interests. The enlarged company was accordingly re-named English Electric Leo Marconi Computers Ltd. In 1967 there was a merger with Elliott Automation and, no doubt hesitating to add yet another word to the company's title, the name was simplified to English Electric Computers. At about this time the firm sold its first System 4 machine. The System 4 was a range of computers whose structure was compatible with that of the IBM System/360 series, and in fact based on RCA's SPECTRA series. In 1968 ICT and English Electric Computers merged to form ICL, as described in the next chapter.
|Early British Computers, 14 - FERRANTI LTD, ICT AND ICL, starting page 078|
Ferranti Ltd have been pioneers in electrical equipment since the days of the founder, Sebastian de Ferranti (1864-1930). An initial appraisal of the potentials of stored-program computers was undertaken by the company in 1948 and this conveniently prepared the ground for the government-sponsored link with Manchester University, described in Chapter 7. With the impetus of government money and the access to University research, Ferranti Ltd quickly became the largest British stored-program computer manufacturer. When they started selling computers in 1951 there was no real competition; the only impediment was the inertia of the customers.
Table 1 Ferranti valve Machines of the 1950s
(The figures in parenthesis show the number of machines exported)
Computer Date first delivered Total number sold
Mark 1 1951 2 (1) Mark I Star 1953 7 (2) PEGASUS 1 1956 26 (3) PEGASUS 2 1959 12 (1) MERCURY 1957 19 (6) PERSEUS 1959 2 (2)
The Ferranti valve machines which appeared on the market during the 1950s are shown in Table 1.
Early British Computers, 14 - FERRANTI LTD, ICT AND ICL, starting page 079
The Ferranti PEGASUS41 deserves further mention. This was a highly successful offshoot from the packaging ideas of the Elliott 401 computer referred to in Chapter 11. In 1953 and 1954 Christopher Strachey had worked for the National Research Development Corporation on redesigning the 401 and as a result had persuaded NRDC that a more ambitious machine could be developed with Ferranti.42 Amongst the design objectives recommended by Strachey were: (a) optimum programming was to be avoided 'because it tended to become a time-wasting intellectual hobby of programmers'; (b) the needs of the programmer were to be a governing factor in selecting the order code; (c) the computer was to be cheap and reliable. By the autumn of 1954 a Ferranti design team under W. S. Elliott had set to work in London to build what was at first called the Ferranti Packaged Computer (FPC1), with an NRDC contract for an initial ten machines. (There was some rivalry, to put no stronger word on it, between the newer London and older Manchester sides of the Ferranti computer design effort.)
Fig. 14.1 Degrees of modularity: plug-in units from an English Electric DEUCE (left) and a Ferranti PEGASUS computer, both machines designed to facilitate quantity production and allow rapid maintenance.
It should be said that not everyone in the computing fraternity supported the 'package' philosophy. It was understandably criticised as being wasteful of hardware, prone to connector-problems, and requiring
Early British Computers, 14 - FERRANTI LTD, ICT AND ICL, starting page 080
a lot of adjustment to account for small differences in circuit parameters between packages. By conservative design of PEGASUS, Elliott avoided the last criticism. Hardware redundancy was said to be only about 10 per cent, and the quick repair-time obtained by having replacement modules amply justified the package approach. The degree of structural modularity also facilitated subsequent improvements to the computer. PEGASUS had a small 56-word fast store of nickel delay lines, backed by a 5120- word magnetic drum store. There was in addition a set of special registers associated with input/output equipment, etc. which could also be employed to hold frequently used program constants. The word length from the programmer's view was 39 bits and two 19-bit instructions were packed to a word. The spare bit could be used as a break- point marker, to facilitate manual debugging of programs. There was also an extra parity-bit for each word - an early example of this form of checking. PEGASUS had a large repertoire of instructions, which often led to relatively compact programs. There were eight accumulators, seven of which could also be used as index registers.
Fig. 14.2 A highly-polished Ferranti PEGASUS computer on test at the factory prior to delivery in about 1956. Some magnetic tape units may be seen at the left of the photograph, behind the two square paper-tape readers sitting on the table. The PEGASUS internal register structure was the model for many subsequent machines, for example the ICL 1900 series and the IBM System 360.
Early British Computers, 14 - FERRANTI LTD, ICT AND ICL, starting page 081
Fig. 14.3 Annual sales of all punched card equipment manufactured by the British Tabulating Machine Company, from 1948-1965. Sales were initially unaffected by the advent of the stored-program computer, especially since most early computers used paper tape for input. In about 1957 computers using cards began to make their presence felt.
The basic structure of the resulting PEGASUS order code was to have a strong influence on the Ferranti ARGUS, ORION and FP6000 computers and hence on the ICL 1900 series. Strachey had done a lot of his early programming on the Ferranti Mark I. It is interesting to speculate whether his combining of the Mark I's A and B lines into a single register set on PEGASUS was motivated by programming convenience or economics or both. Looking back, we can see a distinction between machines such as the Mark I, Atlas and CDC6600 in which the address-generation and counting registers are kept separate from the main computational accumulator(s), and machines such as PEGASUS, the ICL 1900 and the IBM System/370 in which no such separation occurs. There are arguments in favour of each approach.
Early British Computers, 14 - FERRANTI LTD, ICT AND ICL, starting page 082
Compared with the earlier Elliott 402 computer, the Ferranti PEGASUS operated at about the same basic speed but had a larger store, longer word and considerably more convenient order cede. It also cost about twice as much. The first PEGASUS was completed in 1956 and, incidentally, remained in use for the next 13 years. In March 1956 Ferranti used a PEGASUS to initiate the first computer bureau service in Britain, at Portland Place in London. About 38 PEGASUS 1 and PEGASUS 2 computers were sold, making it the most popular of the Ferranti valve machines. It was a common comment on PEGASUS that users 'were not only able to do a lot of work on it; they also felt a strong affection for the machine'.42
Concurrent with this activity Ferranti Ltd was designing small computers for defence work. The ARGUS series was one of the outcomes of this and from 1963 onwards ARGUS was applied to non-military projects in great numbers. In the early 1960s other Ferranti defence computers such as POSEIDON, HERMES and the F1600 were built. Derivatives of the F1600 have been applied to several hundred civil as well as military projects world-wide.
Fig. 14.4 Annual sales of three classes of computer, for the years covering the merger of the main British computer companies. The graphs typify the following categories: early large and medium scientific machines (e.g. Ferranti excluding Argus, etc. - - -); early small and medium general-application machines (e.g. BTM/ICT 1200 etc . . . .); the evolution of the first two categories into a modern range of business and scientific machines (e.g. ICT/ICL 1900 series-).
Fig. 14.5 The growth of the computerised society. The three graphs in Figure 14.4 are combined to show that, relatively speaking, sales of Ferranti, BTM and ICT stored-program computers did not really take off until the mid-1960s in Britain.
Early British Computers, 14 - FERRANTI LTD, ICT AND ICL, starting page 083
In the late 1950s Ferranti Ltd embarked upon two substantial computer projects. The first was the giant ATLAS, the joint venture with Manchester University described in Chapter 9. This project was full of financial uncertainties, as may be judged from the various estimates of the works cost of the first production ATLAS. These estimates ranged from £375 000 in February 1959, to £650 000 in November 1960, to £930 000 in October 1962. At the same time Ferranti was developing another medium-to-large computer named ORION, which ran into some
Early British Computers, 14 - FERRANTI LTD, ICT AND ICL, starting page 084
technical difficulties. These included problems with interconnecting the special circuits which had been designed to economise on the total number of transistors used. By 1963 deliveries of ATLAS and ORION computers had begun, but sales were slow in coming.
With the drain on resources occasioned by these two large computer developments and the growing internecine competition from rival British companies in the mid-range market, some rationalisation of the industry had to take place. Ferranti's main computer interests were sold to International Computers and Tabulators (ICT) in September 1963.
ICT was formed by the merger in 1959 of the two main British punched-card equipment manufacturers: The British Tabulating Machine Company (BTM) founded in 1907 out of the same American parentage which was to produce IBM; and Powers- Samas Accounting Machines Ltd which had been founded (under another name) in 1915 out of the same American parentage which was to produce the Univac Corporation. In 1961 ICT acquired the computer interests of the General Electric Co. Ltd (GEC), and those of Electrical and Musical Industries Ltd (EMI) in 1962. By January 1963 the value of computing equipment installed in the United Kingdom was estimated to be distributed amongst the manufacturers as follows:42
Ferranti Ltd 25% ICT 25% English Electric Co. 13% Elliott Brothers 12% National Cash Register Co. (NCR) 11% Leo Computers Ltd 7% Others 7%
English Electric absorbed Leo Computers in 1963, and the Marconi and Elliott computer interests in 1964 and 1967 respectively. ICT and English Electric themselves came together in 1968 to form International Computers Ltd (ICL), thus bringing all the major British computer manufacturers under one roof.
Early British Computers, 14 - FERRANTI LTD, ICT AND ICL, starting page 085
Historically, ICL contained a large component of punched-card equipment manufacturing. It is interesting to see how sales of this type of equipment took a long time to feel the impact of stored-program digital computers. Figure 14.3 shows the sales figures for the punched-card tabulators of BTM from the year 1948 onwards. It is not until 1962 that sales begin to fall, by which time smaller computers such as the ICT 1300 and Elliott 800 series had really penetrated the lower end of the market. Another interesting observation is the dramatic leap in sales, by nearly 100 per cent in 1957.
Figure 14.4 shows the relative growth of stored-program computer installations. Sales of three representative groups of machine are plotted: firstly, all the main Ferranti computers including ORION, SIRIUS and ATLAS, but excluding ARGUS, etc.; secondly, the 1200, 1300 and 1500 series machines produced under the BTM and ICT banners; thirdly, the ICT/ICL 1900 series of computers. The first group represents medium and large computers, with the applications up to 1959 being exclusively scientific and technical.42 The second group typifies small and medium computers, with sales starting off in the technical area but moving towards commercial and business data processing by the beginning of the 1960s. The third group exemplifies the present- day trend of marketing a compatible range of computers, which can embrace both small and large installations and both scientific and commercial applications. (It was no accident that the take-off for ICT 1900 series sales was designed to correspond with the fall in the other two sales curves.)
Several interesting observations may be made on the graphs. Firstly, there was a general surge of investment in data-processing equipment in 1957, but as far as stored-program computers were concerned this only really corresponds to an awakening of awareness in the scientific and technical sectors. The wider use of computers did not come about until the early 1960s. This is supported by a further graph (Figure 14.5), in which sales of all the Ferranti, BTM and ICT computers are combined. It is clearly seen that the 'computerised society' did not get under way in Britain until about 1966. It may or may not have been significant that the government founded the National Computing Centre in 1965.
A word should be said about some of the computers introduced in the foregoing graphs. The BTM 1200 series had an interesting pedigree dating back to the pioneering work of Dr A. D. Booth at Birkbeck
Early British Computers, 14 - FERRANTI LTD, ICT AND ICL, starting page 086
College, London University, as described in Chapter 12. The BTM 1300 series arose from original designs carried out by the General Electric Company. The BTM 1300 and ICT 1500 computers were transistorised. The ICT 1500 was based on the American RCA 301 computer. The Ferranti SIRIUS computer, first delivered in 1960, grew out of a machine called NEWT which was the test-bed for the special circuits used in ORION. The concept of the ICT 1900 series originated in a paper design sometimes called HARRIAC, drawn up in the autumn of 1961. This was named after Harry Johnson of Ferranti Ltd who chaired a study group of engineers and sales staff which was asked to produce a specification for the successor to the Ferranti PEGASUS. HARRIAC was later dropped in favour of the ORION 2 design. The specification of HARRIAC was passed to Ferranti-Packard of Canada, where it became the basis of their FP6000 computer. The ICT 1900 series in turn grew out of the FP6000 machine.
The 1900 series had a long and successful life, extending almost into the 1980s. By 1968 over 1000 machines had been installed. In October 1974 ICL announced its new range, the 2900 series. This also had an interesting pedigree. Tom Kilburn's team at Manchester University produced their fifth large computer, MU5, between 1969 and 1974. The architecture of the 2900 series owes much to, and has a great deal in common with, MU5.
The history of British computers as recounted thus far has tended towards an engineer's view of the machines - in a word, emphasising their hardware. Today the software (or set of programs provided by the manufacturer) is normally of more interest to the user than the electronics. In 1950 this was not the case; the mathematically inclined user, if he were to succeed, had to adopt some of the pragmatic optimism of the engineer when faced with the challenge of an early computer and its embryonic software. The next chapter attempts to give the flavour of those early programming days.
|Early British Computers, 15 - PROGRAMMING AN EARLY COMPUTER, starting page 087|
The user of a modern computer would find life very different on an early machine. Amongst the difficulties common to all vintage computers were:
- unreliability and the problem of deciding whether an unexpected result was due to a programming error or an intermittent hardware fault;
- the need to scale variables, there being no arithmetic overflow detection, no floating-point hardware, and usually no facilities such as a carry-register to help with multi-length arithmetic;
- restrictions due to limited storage and small repertoire of instructions;
- lack of conventional software support such as editors and file managers.
Generally speaking, an early programmer rose to the challenge, even becoming quite affectionate towards the computer whose idiosyncrasies he had learnt to master. In the light of hindsight it is now possible to compare the programming idiosyncrasies of various early machines (see, e.g., reference 43). Such comparisons are in no way criticisms of the pioneering designers, who had unimaginable problems and little experience to build on.
However, we may ask what, apart from speed and size of storage available, made some early computers seem easier to program than others? Three things stand out:
- the structure of an order code and its repertoire of operations;
- the quantity and quality of standard software such as loaders and subroutine libraries;
- the form of presentation of a program to the machine, which is obviously related to the first two points.
We may get some idea of early programming systems by considering a simple example. Suppose that during the course of solving a problem it was necessary to add two quantities together so as to produce a third. Algebraically this might be expressed as:
J = K + L
Early British Computers, 15 - PROGRAMMING AN EARLY COMPUTER, starting page 088
Fig. 15.1 A revised version of the world's first working program (see reference 9). This found the highest proper factor of the number placed in store line 23, using a process of repetitive subtraction to achieve the effect of division. The use of relative indirect and absolute indirect jumps (at lines 8 and 19 respectively), is interesting. On conclusion, the program halted at line 13 with the answer displayed at line 27. Folklore has it that this was the one and only program ever written by its originator: little wonder, since it had to be laboriously keyed into the computer in binary!Modern problem-orientated high-level languages such as Fortran allow the user to write just such a statement in his program. Fortran, however, was not introduced until late 1956. The early computers had to be programmed in so-called machine code, the form of which naturally depended on the computer's structure. For a one-address format computer the statement J=K+L might be achieved by three separate machine-code orders having the following actions:
Early British Computers, 15 - PROGRAMMING AN EARLY COMPUTER, starting page 089
- load K into the accumulator
- add L to this
- store the result at J.Fig. 15.2 Early data preparation equipment: an operator punches out a program on 5-track paper tape, prior to it being fed into a computer.
Early British Computers, 15 - PROGRAMMING AN EARLY COMPUTER, starting page 090
Of course the programmer had to allocate numerical storage addresses to the variables K, L, J. If these addresses happened to be 24, 73 and 66 respectively, then a symbolic representation of the three machine-code instructions might be written:LDA 24 ADD 73 STO 66The symbolic assembly language for a modern one-address format microcomputer may allow the user to write machine-code instructions in just this form. An early computer (which might have had rather less computing 'power' than a modern micro) would not usually have had such a convenient assembly language. The programmer was therefore obliged to present his instructions to the computer in a more primitive form. For example the Cambridge EDSAC instructions to carry out the J = K + L operation could have been written as follows:T1 S (Transfer acc. to line 1, and clear acc.) A24 S (Add into acc. the contents of line 24) A73 S (Add into acc. the contents of line 73) U66 S (Unload acc. to line 66)(The 'S' indicates that each instruction refers to 'short' (17-bit) EDSAC numbers; the comments in parenthesis are not part of the program. An alternative three-instruction sequence could have been written if the accumulator was initially assumed to have contained zero.) In contrast the 1949 Manchester Mark I had a much more primitive 'assembler' that in effect obliged the user to write his programs directly in binary. Each 5-bit group of a 20-bit instruction was punched or written as the teletype symbol which would give the corresponding bit-pattern. An early Manchester Mark I program thus appeared to the uninitiated as a string of seemingly meaningless teleprinter characters which were much harder to 'read' than the EDSAC programs. The :J=K+L' statement might be written as follows for the Mark I:
Early British Computers, 15 - PROGRAMMING AN EARLY COMPUTER, starting page 091
O//H (load acc. from line 24) D@/M (add into acc. the contents of line 73) @@/D (store acc. to line 66)(As a hint for anyone wishing to decode these, Mark I instructions were in 'backwards binary' with the address to the left.)Fig. 15.3 The no-man's-land between programmers and maintenance engineers: a page from the users' log- book of a Ferranti Mark I for January 1952 which illustrates the frustration of trying to pin down an intermittent computer fault. The transcription (with explanation) reads as follows: Wed. Jan. 16th 8.30 p.m. Sideways adder [i.e. 'population count' instruction] MSD [most significant digit] not working properly - gives wrong result. Needs to be operated twice to give any result at all - not always - operation quite different according to 'continuous prepulses', 'semi-continuous', 'single' or manual operation. [later MSD appears to work in programme. 9 p.m.: write power [to the drum went off though overriding switch and light were on. Cured by switching off overriding switch. OK when switched on again. Thursday Jan. 17th, 17.20 hours. 'No prepulse' phenomena referred to on previous page: definitely not finger trouble this time!!! Witnessed by A. E. Glennie and F. C. Williams!!! Machine unserviceable (from 17.20-17.23?) [Signed] R. A. Brooker. See fault log. [Signed] N.E.H. [the duty maintenance engineer. 1600-2200 hours: machine behaving very well. [Signed] R.A.B. and A.E.G.
Early British Computers, 15 - PROGRAMMING AN EARLY COMPUTER, starting page 092
An example of an intermediate programming notation is provided by BINAC, an early American computer described in the next chapter. For BINAC the user had to present his program as a string of octal (i.e. base eight) numbers." Assuming that the instructions 'store-and-clear', 'add' and 'unload' had the octal equivalent 04, 05 and 02 respectively, the BINAC program to perform 'J = K + L' would have been written as follows:04001 (Transfer acc. to line 1, and clear acc.) 05030 (Add into acc. the contents of line 24) 05111 (Add into acc. the contents of line 73) 02102 (Unload acc. to line 66)The programmer would have typed these octal digits at BINAC's input keyboard.
Though they differ in degree of convenience, the above three program conventions are readily understood by the competent modern programmer. There were other early computers whose instruction formats now seem rather curious. A good example is the NPL Pilot ACE and its descendant DEUCE, for which each 32-bit instruction required the programmer to specify seven quantities, namely:Next instruction source, N Source of operand, S Destination of operand and implicit operation required, D Characteristic (or 'transfer mode'), C Wait number, W Timing number, T Go digit, GThe N field had 3 bits and specified a delay line (containing 32 words). S and D specified a source and destination between which a number of words were to be transferred - (one-word transfers if C=1). The word-address within a particular delay line was obtained as a word-count
Early British Computers, 15 - PROGRAMMING AN EARLY COMPUTER, starting page 093
Fig. 15.4 'How did this happen?' The debugging of part of Alan Turing's morphogenis programs for a Ferranit Mark I was not for the faint-hearted! The photograph shows a fragment of computer print-out with Turing's notes: dated 24 May (1953?)relative to the position of the current instruction, such word-counts being expressed as a number of 32-microsecond 'minor cycles' by the 5-bit W and T fields of the instruction. (The W and T numbers were actually less by two than the difference in relative position of the words concerned, counting modulo 32.) For a full explanation see for example the paper by Wilkinson.23 Limiting ourselves to a simplified view of the 'J = K + L' problem, Pilot ACE would require three instructions of the form:N S D C W T G 1 1 16 1 22 31 1 (load acc. from address 24) 1 3 17 1 6 31 1 (add into acc. the contents of 73) 1 16 3 1 30 31 1 (store acc. to address 66)
Early British Computers, 15 - PROGRAMMING AN EARLY COMPUTER, starting page 094
These three instructions (less the top line and comments) would have been prepared for the Pilot ACE on cards punched in binary at one instruction per row, so that a single punched card could hold up to twelve instructions. An ingenious pre-punched four- instruction loader made the input of program cards a simple matter.
The above sequence assumes for simplicity that the three instructions are held in positions 0, 1 and 2 of delay line 1 (hence the 31 in each Tfield). It will be noticed that this positioning results in relatively long wait-times in the W-field of each instruction, and such an inefficient program would never have actually been written for the Pilot ACE. Socalled optimum programming techniques would have been used as a matter of course, to reduce the wait-times by repositioning some of the instructions. The presence of six short delay lines for frequently used variables could also have helped to avoid long access-times. To modern eyes the Pilot ACE user might ultimately appear to be microprogramming the computer, and indeed he had to be aware of the detailed interconnections of the machine. It should however be remembered that the highly original programming strategy for ACE was born in 1945, before most other 'early' computers were even a twinkle in their designer's eye!
To return to more readily understandable computers, it is interesting to compare the order codes of machines which, on the surface, have a similar structure. The BINAC, EDSAC and Manchester Mark 1 (1949 version) were all one-address format computers, of similar word-length, all designed within a few months of each other, and each being claimed on various occasions as the first stored-program machine to have come into operation. Table 2 gives the modern description of some specimen instructions, and an indication of whether their equivalent was available on each of the three early computers. (The table contains some approximations, which the interested reader is invited to investigate via the original papers.19, 44, 45)
It will be seen from the table that the Manchester Mark I differed from the other two machines in several respects. It had limited conditional testing orders and shifting orders, but more logic operations and more facilities to aid multi-length working. (The incentive for providing multilength facilities at Manchester is given in 46, which also describes what is believed to be 'the first routine for a problem with some intrinsic
Early British Computers, 15 - PROGRAMMING AN EARLY COMPUTER, starting page 095
interest to have been run on a "general-purpose" computer'.) Furthermore, the Mark I had two index registers, and a relative jump and indirect jump instead of the absolute jumps of BINAC and EDSAC. To a modern programmer the inclusion of these last three facilities would eliminate the need for self-modifying code, facilitate the generation of position-independent code, and ease subroutine entry and return. On machines such as the Mark I with two levels of storage, the consequent ability to achieve dynamic relocation could obviously be used to advantage. Having said this, it should be stated that phrases such as 'dynamic relocation' and 'position-independent code' were not part of the vocabulary of the first programmers, who were necessarily less ambitious in their use of a computer. The first question, especially with the prototype Mark I, was usually 'will the machine work for long enough for me to get useful results?' This being so, Table 2 is perhaps of more use in tracing the spread of ideas rather than in assessing ease of programming of the machines themselves.
Luckily for the unskilled user, libraries of subroutines were built up for most early computers, so that common operations such as taking a square root or inverting a matrix, could be performed by calling upon a standard library subroutine which an expert had previously written and tested. In the late 1950s high-level languages began to appear, making life even easier for the unskilled user. In the Manchester Mark I Autocode, one of the earliest such languages (March 195447), our J=K+L' statement would have been written simply as:
n1 = n2 + n3
The work of John von Neumann and the EDVAC group in America was the source of several ideas on stored-program computers and it is now appropriate to catch up on transatlantic developments.
Early British Computers, 15 - PROGRAMMING AN EARLY COMPUTER, starting page 096
Table 2 Availability of instructions on three early computers
Type of instruction BINAC EDSAC Mark I
Load accumulator X Load accumulator negatively X Store accumulator X X X Store and clear accumulator X X Clear accumulator X Add into accumulator X X X c Subtract from accumulator X X X Load multiplier register X X c Load multiplicand register and multiply X cd Multiply X Multiply and add into accumulator X Multiply and subtract from accumulator X Divide X Logical AND X b X Logical OR X Logical non-equivalence X Shift right by n X a X Shift left by n X a X X a Load index register X c Store index register jump (absolute) unconditionally X Jump (absolute) if accumulator > 0 X Jump (absolute) if accumulator <0 X X Skip next instruction if accumulator <0 X Jump (relative) unconditionally X jump (indirect) unconditionally X Input a character X X f Output a character X X f Stop X X X Other miscellaneous orders 4g 3h 5i
Early British Computers, 15 - PROGRAMMING AN EARLY COMPUTER, starting page 097
- BINAC and Mark I shifted by one place only.
- EDSAC `anded' the contents of the multiplier register with an operand from store, leaving the result in the accumulator.
- The Mark I had both signed and unsigned versions of these orders; for the signed cases a copy of the operand's sign digit was usually extended into the top half of the double-length (80 bit) accumulator.
- The result of a Mark I multiplication ended up in the double-length accumulator.
- The Mark I had two B-lines (index registers), the contents of BO normally being zero so as to give the option of unmodified as well as modified addresses for all instructions.
- The October 1949 Mark I allowed programmed transfers to and from 1/O devices and magnetic drum by means of a suitably formatted control word.
- The extra BINAC orders consisted of two for manipulating the L register used in multiplication and division, a null op. order and a `stop if break- point switch set'.
- The extra EDSAC orders consisted of two for rounding off the accumulator (to 16 bits or 34 bits) and one for testing the interface to the printer.
- The extra Mark I orders consisted of five instructions for manipulating the most significant half of the double-length accumulator.
|Early British Computers, 16 - MEANWHILE IN AMERICA . . ., starting page 098|
In America the actual implementation of stored-program computers got off to a slower start, after the early enthusiasm evident in the EDVAC and Princeton draft proposals.10 This was possibly due to three reasons. Firstly, there existed between 1945 and 1949 a substantial investment in the USA in large-scale electro-mechanical and electronic calculating machines, which were able to satisfy many of the country's immediate computational needs. Amongst these machines were the Bell Telephone Laboratories' series of relay calculators, the Harvard Mark II and Mark III electro- mechanical machines (the latter with eight magnetic drums), IBM's Card-Programmed Electronic Calculators and their huge SelectiveSequence Electronic Calculator (containing 23,000 relays and 13,000 thermionic valves), and of course the enormous ENIAC.48 ENIAC was planned by Dr J. W. Mauchly and J. P. Eckert at the Moore School at the University of Pennsylvania, for the Ballistics Research Laboratory at the US Army's Aberdeen proving ground. It contained 18 000 valves and 1500 relays, weighed over 30 tons and was built by a team of 200 people between 1943 and 1945. Setting up a problem on ENIAC involved changing several hundred pluggable connections and an equivalent number of switches, and it was designed initially solely for ballistics calculations. Once set up, the machine had an impressive turn of speed with its 200 microsecond addition time and 3 millisecond multiplication time. During 1948 and 1949 ENIAC was modified by the introduction of a new system of coding and the addition of a mercury delay line to supplement its very small internal storage of only twenty numbers. ENIAC was then applied to several other problems including nuclear physics, and thus spanned the boundary between machines with and without an internal stored program.
Early British Computers, 16 - MEANWHILE IN AMERICA . . ., starting page 099
Fig. 16.1 The shape of things to come. A dramatic view of the huge ENIAC electronic calculator, built towards the end of the second world war for ballistics calculations for the US Army. In the foreground an operator sets one of several hundred function switches prior to a computation run.A second reason for the pause in American development was the mobility of personnel. At the Moore School, Eckert and Mauchly left the EDVAC project in the spring of 1947 to start their own company (eventually named the Eckert-Mauchly Computer Corporation). John von Neumann and Dr Herman Goldstine had already left EDVAC to return to the Institute for Advanced Study (IAS), Princeton. The EDVAC team was subsequently led by T. K. Sharpless, who himself then left to go into business.
It is possible that a third reason might have centred round the choice of practical storage devices. Talk of the RCA Selectron electrostatic storage system figured prominently in the early American reports, and its random access properties made it much to be preferred to the better-known mercury delay line. To quote Eckert from Lecture 45 of the Moore School course (26 August 1946):
Early British Computers, 16 - MEANWHILE IN AMERICA . . ., starting page 100
Several forms of fast internal memory have been suggested and the one which shows promise at the present time is the electrostatic storage tube. The one on which most work is being done (by RCA) at the present time is called the Selectron. When it has been perfected it will contain most of the features which are desirable in this type of a memory.The Selectron required an extremely complicated electrode structure and the device experienced such prolonged technical difficulties that many of the computer design teams hoping to use Selectrons decided to change their plans. Another shock came with the realisation that meanwhile a small British team had invented a successful random-access electrostatic storage system (the Williams tube), which was the subject of a number of patent applications in the hands of the National Research Development Corporation (NRDC). This was all the more galling because the Americans, including Eckert, had been working on electrostatic storage for some time. Several forms of American electrostatic storage such as the RCA Barrier Grid Tube were eventually developed, but none of the early ones had the regenerative simplicity of the Williams tube. Inevitably the NRDC found itself fighting in a complex patent interference action to defend British inventions and, on the brighter side, Williams tubes were used under licence in the IBM 701 and in several other American computers. Of course the balance was redressed eventually by the outstanding American invention of the magnetic core store. The principle of this was discovered in 1949 by Jay Forrester at the Massachusetts Institute of Technology (MIT). Core stores were first used in earnest in the American real-time high-speed computer project called WHIRLWIND in August 1953. (Whirlwind initially used electrostatic memory.)
Early British Computers, 16 - MEANWHILE IN AMERICA . . ., starting page 101
Fig. 16.2 UNIVAC I - the tour de force of the Presper Eckert/John Mauchly partnership in computer design. This machine was first installed in June 1951 and was remarkable for its advanced facilities for data handling. To the right of the photograph can be seen some of the magnetic tape decks, of which there could be up to ten.The years 1950 to 1952 saw a veritable flood of American stored-program computers burst into life, some of which are described in more detail in Appendix 3. These include BINAC, CADAC, EDVAC, ERA 1101, MANIAC, ORDVAC, RAYDAC, SEAC, the IAS computer and the Eckert-Mauchly UNIVAC 1. This last machine, delivered in about June 1951, (and therefore later than the Ferranti Mark I in England), was the first to enter the American commercial scene. UNIVAC used mercury delay lines for its main storage and, amongst other interesting features, it had a very advanced magnetic tape system. There was by then a rapidly increasing sales potential in the USA with little competition for the UNIVAC in sight. In America, IBM had the resources to take up the challenge quite quickly (the IBM 701 was first delivered in 1953). In Britain it fell largely to the NRDC to try to promote awareness.
|Early British Computers, 17 - THE NRDC, starting page 102|
One of the first jobs of the National Research Development Corporation after its foundation in July 1949 was to take over the Manchester computer patents, held temporarily by the Ministry of Supply. The NRDC was thus made acutely aware of the American sales prospects from an early date and took strenuous steps to encourage an alert and competitive British computer industry. NRDC set up the Advisory Panel on Electronic Computers, which, however, held but one meeting (on 14 December 1949). This was attended by all the major electronics and punched-card machine companies of the time. To quote reference 49:The outcome of the Advisory Panel meeting was that both the electronic manufacturers and the punched-card machine manufacturers respectively represented that they were individually in positions to tackle the problems of an electronic computer development project as well as, for example, the International Business Machines Corporation in the United States. It was pointed out to the punched-card machine manufacturers that, in the opinion of the Corporation, they had inadequate electronic staff and resources. It was apparent also that the manufacturers were not willing that the Corporation should take the initiative in launching a development project but agreed that the Corporation could usefully coordinate activities.
Despairing of a coordinated national effort, the NRDC turned to individual companies where, after a certain amount of coaxing, it had more success. As described earlier, Elliott Brothers were given support for the 401 development in 1950; Ferranti was supported for the Mark I Star in 1951 and for the PEGASUS in 1954; EMI Ltd received support
Early British Computers, 17 - THE NRDC, starting page 103
for office computers in 1955, and installed a transistorised computer at the Austin Longbridge works in 1958. This was the prototype of the EMIDEC 1100 computer, first delivered in about 1959. This in turn was followed by the EMI 2400, designed at the request of the NRDC. The English Electric Company and BTM Company had meanwhile been progressing independently with NPL and Birkbeck College respectively. In parallel to this, the NRDC became aware that Britain was seriously lagging behind in the development of magnetic tape systems. Contracts were accordingly placed with several firms from June 1953 onwards.Fig. 17.1 The spread of British know-how: left to right F. C. Williams, H. J. Crawley (NRDC) and J. C. McPherson (IBM) admiring the neat implementation of Williams electrostatic storage tubes for the IBM 701 computer in 1953.
Early British Computers, 17 - THE NRDC, starting page 104
Throughout the period the NRDC also pursued an energetic policy of patenting the fruits of computer research, spending over £100,000 on this activity up to 195649
By that time was administering 733 computer patents in the UK and overseas, which had resulted from 201 inventions. The sources of these inventions were mainly Manchester University (81), NPL (43), The Ministry of Supply (36), and Ferranti Ltd (16). As an example of the resulting income, the total receipts from the sales and licensing of certain Manchester patents to IBM had amounted to £125 712 by the end of 1956. The University itself had received back about £27 000 by that date, under a special revenue-sharing agreement on Manchester patents. This money went towards further computer research.
As part of its policy of furthering development, the NRDC also retained a number of computer experts itself. Amongst these was Christopher Strachey. He did the bulk of the programming for the St Lawrence Seaway Project on a Ferranti Mark I computer at Toronto University (1952/3) and assisted with the 401 development when the 401 computer left Elliott Brothers (1953/4). From this grew PEGASUS, as described in Chapter 14.
Finally, in 1955 and 1956 the NRDC took an active part in the birth of what later became the British Computer Society. The 'computer professional' thereby came out into the open and the computer industry became a reality.
In conclusion, it must be said that the post-war economic climate in Britain was hardly conducive to investment in such a speculative area as stored-program computers. No one at that time could have predicted their subsequent importance. Indeed, there were many experts who declared computers to be of only marginal scientific interest. For example, in September 1951 Professor Douglas Hartree, in conversation with 'the' Ferranti computer salesman, could not understand the company's intention to market computers: 'We have a computer here in Cambridge; there is one in Manchester and one at the NPL. I suppose there ought to be one in Scotland, but that's about all'.42 In contrast, such people as T. R. Thompson of the J. Lyons catering company were exceptional visionaries.
The decade 1945-55 is nevertheless remarkable for the high output of technological innovation and successful implementation from a comparatively small number of individuals. The British computer industry therefore had, and still continues to have, a good flow of ideas on which to feed. An analysis of the National Computer Index50 indicates that by 1960 there were about 220 commercially produced computers installed in the United Kingdom. 90 per cent of these had been built by the nine
Early British Computers, 17 - THE NRDC, starting page 105
British companies who at that time were offering general-purpose digital computers for sale. A decade later the number of installations had risen to about 6500- of which only about half were designed and manufactured in the United Kingdom. There is a moral here somewhere!
Return to On Line Documents
Return to "Early English Computers" table of contents