Hello, I’m Terry Froggatt; I was the secretary of the 900-users group of the Elliott Computer Users Association, and I suspect that I probably still am.

I joined Airborne Computing Division of Elliott Brothers at Borehamwood in 1966; the year after TSR2 was cancelled. Then, Elliotts had just about finished the program for the Maritime Comet or Nimrod Mark I, with an 18-bit 920B computer in each aircraft.

Having never even seen a computer in my three years at Oxford and with no specific training, I was given some manuals and asked to write a Decca program, to convert time differences from transmitters into Lat/Long: akin to GPS (with fixed satellites). This needed a double-length fixed-point interpreter for accuracy.

Initially I tried to program this using T2, a non-symbolic assembler. (It did at least accept decimal numbers, unlike early micros). Fortunately we soon got the Symbolic Input Routine, SIR, which made it far easier to develop experimental code incrementally. 

Shortly after I joined, we got the contract for the Jaguar flight computer, which was to be the shoebox-sized 920M, also to be programmed in SIR.

In their wisdom, in 1969, management decided that it would be a good idea to move Airborne Computing Division to Rochester, where the Jaguar inertial platform was being built.

But, interestingly, the team was roughly 50/50 male & female, and they never did persuade the attached young ladies to move. The girls stayed in Borhamwood to finish the Jaguar program, and eventually moved to radar division?

Meanwhile, as an unattached young fogie, I was bribed to the Rochester Airport site by the offer of free flying lessons there. 

Airborne Computing Division Rochester subsequently got the contract for the Nimrod Mark II upgrade, and became Maritime Aircraft Systems Division. This system used the home-grown 920ATC, and was programmed by then in CORAL, using a compiler written by CAP and paid for by the Royal Aerospace Establishment.

By this time I was acting as technical liasion between MASD, RAE, & CAP; and I wrote an operating system to integrate the 5-pass CAP compiler with a large fixed-head disk that we used for program development. Up to that point everything had been on paper tape.

We also produced some 12-bit computers known confusingly as: Minim, 12/12, 902, 102c, or Arch 105; and a Coral-only machine known as CHLL, which interpreted reverse Polish, like Whetstone Algol or a Java byte-code.

I left Elliotts (for the 2nd time) in 1976, by which time 920s had been in use for over a decade, and around 1000? had been made, not only for aircraft but for the likes of the army’s Forward Artillery Control Equipment.

Now, as well as the 920 series, where Elliotts would provide a bespoke program for a production run of identical computers (200 in the case of Jaguar), there were the desk-mounted equivalents, the 920B became the 903, the 920C became the 905.

These were sold individually to users, typically research institutes, writing their own software, often in Algol or Fortran. By the time I left Elliotts, some of these organisations were giving their 903s to the local grammar school (although some schools like Eton had new 903s).

These schools needed something a bit more immediate than the paper-tape intensive Algol & Fortran, which is what prompted me to write the Basic interpreter.

So, what was the 920 like to program?
Well, it was a transistorised 18-bit parallel machine (unlike the earlier serial 803), with hardware multiply & divide (35-bit product) well-suited to real-time computation. (Remember that Windows was still only 16-bits until 1995).

There were some irritations. There was no overflow detection or condition codes, so you had to be careful comparing two numbers. Division only gave the right answer 50% of the time. And of course most real calculations had to use fixed-point arithmetic not floating-point.

But there was one very nice feature. The standard machine had an 8192-word 4-dimensional core store, and the instruction had 13 address bits, so the whole machine was directly addressable, without any of the paging problems and “far calls” of early Intel micros.
So you really could build up a library of useful reusable SIR subroutines.

Did we use Algol? Yes, for example we used it for off-line analysis of the Jaguar flight trials data, to compare the Inertial position with the Decca position, using my Decca program as a code procedure. It was also later used as a Fortran code procedure and a Coral code procedure: it was portable because it was in assembly code! 

But just to remind you of how things have changed: we had a problem with Algol. We wrote and edited our programs for the 920s on heavy-duty Flexowriters, (with upper & lower case useful for readable comments), which used the British Standard 8-hole paper tape code. Algol was aimed at the 903 market with its flimsy Teletypes which used the new-fangled ASCII code: something we all take for granted nowadays.

OK. So I’ve got some demonstrations on my rather slow laptop (which itself is old enough to be a CCS exhibit). In the mid-80’s I wrote an Elliott 920 simulator in Ada to run on a Vax, which I later ported to a PC. Don Hunter typed the image of the whole 903 Algol compiler and interpreter by hand into his PC, so we can run Elliott Algol on a PC. He also typed up the plotter package. Recently Erik Baigar recompiled my Ada code to run in a windows environment, and we can show you this running an Algol simluation of the Apollo 8 moon mission.

I’ve also got Hans Pufal’s 920 simulator: Hans spoke to this group in December 2005. My simulator is essentially batch mode for convenience whereas Hans’ has a very nice graphical interface to demonstrate the inconveniences of operating the real 920.

Finally, I can demonstrate 900 BASIC running in the simulator. I’ll put links to all of this at
www.tjfroggatt.plus.com, or you can email me at
Elliott@TJF.org.uk. Thank you.