The ICL Mainframes at Nene College

ICL 1900

During our ‘O’-level Computer Studies course, the only computing facility available to use was the batch processing service at the local college, Nene College, in Northampton.

On a school trip to see this machine, I managed to sketch a plan of the installation:

Nene College ICL 1900

The central processor had 16K of 24-bit words of magnetic core store (as semiconductor memory was unavailable when the 1900 series was designed). The 24-bit word length allowed each word to hold four 6-bit characters.

The machine had no disc storage: as a small computing service, the day’s jobs would be batched together by type (BASIC, Algol, COBOL and so on) and for each type of job, the operator would load the relevant software from tape before running each batch of jobs.

Jobs were presented on punched cards which the card reader could read at a rate of 300 cards per minute. Their output was produced on the line printer which was capable of output at a similar rate. The printer was a barrel printer so our printout exhibited the undulating lines of text which were characteristic of that technology.

The only other equipment in the air-conditioned machine room were the four magnetic tape decks for reading and writing ½” 9-track tape. The lack of magnetic disc storage meant that four tape decks was a common requirement. For example, a database update might use one deck to hold the old generation, a second to hold the updates and the third to write the new generation - with the fourth being reserved for loading the application software. “Sorting and Searching”, the third volume of Knuth’s “The Art of Computer Programming”, addresses algorithms for sorting on tape and other external media.

Outside of the machine room was the card punch which was used, amongst other things, to covert our homework written on coding sheets into punched cards.

A separate TeleType provided on-line access to the Open University’s computing service over a dial-up telephone line. People taking OU computing coursed used this to develop their BASIC project interactively.

ICL 2903E

Too late to affect our ‘O’-level work but just in time for ‘A’-level Computer Science, Nene College replaced their 16K ICL 1900 with an ICL 2903E. The ICL 2903E had one of the standard configurations:

  • 32K words (96KB) main memory (MOS)
  • low speed 300cpm card reader
  • low speed 300lpm line printer (barrel)
  • 10MB FEDS
  • CRT operator’s console

which were all integrated into a single J-shaped unit. Unlike the 1900 series equivalents they replaced, these units had their own integrated air conditioning so that they could be used in a normal office environment but here the machine room air conditioning had been retained to allow the re-use of the ICL 1900 series magnetic tape decks.

Central Processor

The 2903 processor was microprogrammed. The microcode is held in loadable control store (LCS) and was the standard microprogram held in 4096 32-bit words which implements the ICL 1900 instruction set with a cycle time of 350ns per instruction. Main store itself had an access time of 1us per 24-bit word.

Of the three executives, the machine had enough memory to run the two smaller ones. The smallest, EXEC 0, was usually used. EXEC 0 allowed one batch program to be multiprogrammed with I/O spooling and file querying from the operator’s console.

  • The I/O spooling module allowed Exec 0 to control card-to-disc input conversions and/or off-line printing from disc while it was running the single batch user program:
  • The batch user program accessed the disc for all input and output files, even those labelled as card or printer files in the job description.
  • The console file inquiry option allows Exec 0 to accept, from the system’s video console, on-line inquiries about the contents of any user file record held on disc. When Exec received an inquiry, it rolled the current batch processing program out to disc and replaced it with the file inquiry processing program from disc. When the inquiry had been answered, the batch processing program was rolled back in from disc and resumed at the point of interruption.


The FEDS provided two disc units, one fixed and one exchangeable. Each disc held 5MB. Disc transfers take place at 416KB/s. The exchangeable disc store’s read/write heads were preceded by brushes to minimise the risk of dust particles causing a head crash.

The 2255/1 operators console no longer providing a hard copy, the operating log was spooled onto the fixed disc for later printing on the line printer.


Because only one batch job could be running at any time, a fixed operating timetable was needed for the service.

During school hours and some evenings, the batch program was the interactive BASIC system. During other evenings, the BASIC system was removed to allow the college’s batch service to be run - this allowed programs written in FORTRAN, Algol, CESIL, BASIC, RPG2 and PLAN to be processed.

The Interactive BASIC Service

In order to run the interactive BASIC system, the BASIC disc pack (holding schools’ files along with the BASIC software) had to be mounted as the exchangeable disc. The operator’s console was then used to locate, load and run the interactive basic system as the batch job.

To use this system from school, we would have to pick up the phone, ask the school’s office for an outside line and then dial the college’s modem bank. Once the familiar whistles emerged from the handset, it would be squeezed gently into the foam of the acoustic coupler to complete the connection at 300 baud, which was good enough to deal with the 10cps model 33 TeleType.

The college had six modems for remote use. These were all connected to a small filing-cabinet sized ICL 7502 Modular Terminal Processor which acted as a front-end, relieving the 2903 of the burden of character by character interaction, line editing and so on. The 7502 could handle sixteen connections; in addition to the six modems, there were three TeleTypes outside the machine room and one VDU inside.

Once connected, the interactive BASIC system announced itself as the ICL 2903 NSP Basic System and appears to have been developed by what was then the North Staffordshire Polytechnic. It was incomplete at the start of our ‘A’-level course (for example, matrix support was missing) but new versions seemed to be delivered over the next few years.