Elliott 900 Series Emulator

The Elliott 900 series was a popular series of 18-bit minicomputers created by Elliott Automation, later GEC Computers.

The Elliott 903 was the version of the 900 series produced in the largest number, frequently used as a teaching machine in colleges and universities and also used by small research laboratories. It also found application in real-time systems and industrial control applications.

The principal high level languages supported were Algol 60 and FORTRAN II. Real-time and control applications were typically programmed in SIR (assembly code). The machine lacked floating point hardware so it was not particularly suited to large scale numerical computation.

Small 903 systems came with 8K of core store, paper tape reader, punch and a teletype. This meant that compilation and execution of progrsms had to be run as seprate steps wasting aa lot of time reading, punching and winding up paper tapes. Larger systems with 16K or more of memory typically ran "load and go" systems for Algol and FORTRAN II, so that once the system tape was loaded batches of programs could be run, one after the other.

A late development was known as the 905 which had a faster processor. A new FORTRAN IV system was developed for the 905, called "905 FORTRAN" but it too could be run on a 903. The older FORTRAN II system was then referred to as "903 FORTRAN".

There is an extensive archive of documentation, simulators and software relating to Elliott 900 Series computers at Elliott 900 Archive.

A typical sequence to compile and run an Algol 60 program would be as follows:

  1. switch the machine ON
  2. load the binary paper tape of the "16K Algol Load and Go System"
  3. set up 8181 in binary on the switches and press the JUMP button - this would execute the built-in "initial instructions"to read the Algol system into the machine's memory.
  4. load your program source and data paper tape, set up 8 in binary on the switches and press JUMP - this would start the Algol translator which would then read in your paper tape and print any error messages on the teleprinter and stop.
  5. if your program had successfully translated, set up 10 in binary on the switches and press JUMP - this would start the interpeter executing the previously translated program, reading in data from paper tape as required. Depending on the program output could be to the teleprinter, the paper tape punch or both.
  6. if you then wanted to rerun your program, rerun it after correction or run another program, return to step 2) - the Algol system remained in core store until overwritten by loading another binary program.
The emulator takes care off all these steps for you, reading in source from a form or a file and displaying output as a web page.

To run an emulation of Elliott Algol 60 click here

And to run an emulation of Elliott 903 FORTRAN (FORTRAN II) click here.

And to run an emulation of Elliott 905 FORTRAN (FORTRAN IV) click here.

Andrew Herbert / November 2021.