The ICT 1301 Resurrection Project.
Programimg the Beast.
I.C.T. 1300 series software and sample programs.
Initial Orders comprised 400 words of program stored permanently on a write protected section of the first drum. It was used as the means of loading all other programs and "entering" them after input. It also had other facilities, not strictly needed for the input of programs, that were intended to make operation of the computer easier and also to assist the engineer. Initial orders was entered by merely pressing two buttons. Initial Orders could read programs in three different formats. The first two, 'engineers' cards and 'fast read' cards both types had five words of pure machine code with absolute addresses on each card, but with a different layout. The third format, the normal mode of program input, had three words per card and included "Relativisers" so that programs were modular.
It may seem strange to consider this under programming languages, but much 1300 software was written in this form. Programs were written on coding sheets, complete with comments. The code columns were then punched on cards, but not the comments. The coding sheets were kept for program maintenance, though updating the program whilst keeping the coding sheets and the cards synchronised must have been difficult.
As written on a programming sheet, a single order is made up of four parts:
D, F, A and R
D is the "designation" of the order with permissable values 0, 4, 8, or 9.
It is usual to leave the designation blank when it takes zero value. F is the "function" of the order and consists of two digits. The combination of designation and function specifies the operation to be carried out by the computer when obeying the order. A is the "address" of the order and consists of four decimal digits. R is the "relativiser reference number" of the order and consists of two decimal digits. During loading, the designation is combined with the most significant digit of the address by logical OR. The relativiser reference number is used to obtain a previously specified base address which is added to the whole instruction, usually only affecting the offset in the address field. If no relativiser (or relativiser zero) is specified, nothing is added to the address.
I.C.T. 1300 series MPL 2 (Mnemonic Programming Language 2) August 1964
An MPL program is also written on coding sheets with comments, but again these are not in the machine readable source code. Data fields do have symbolic names and there are program labels too, but they are numeric. The labels can be in any order. The principal functions have single character mnemonics (many somewhat contrived), but the programmer still has to remember the indicator numeric codes. Some multiple instruction sequences such as indexing and input/output also have mnemonics.
Scan of pages 14 & 15 of MPL 2 manual?
I.C.T. 1300 series TAS (Thirteen hundred Assembly System) December 1963
The TAS manual states "The user does not require a knowledge of machine code, although a general appreciation of the 1300 Series Computers is needed. TAS has not been designed as a full autocode, and for this reason one TAS instruction does not necessarily give rise to a large number of machine code instructions when the program is compiled. The ratio varies according to the type of TAS instruction: some, input and output instructions for instance, are very powerful; but most have been kept close to those of the machine, i.e. at a low ratio. This means that the main advantage of machine code programming - close control of the form of the program - is maintained, while the main disadvantages are eliminated."
I.C.T. 1300 series MAC (Manchester Auto Code) October 1962
I.C.T. 1300 series MAC2 (Manchester Auto Code 2) March 1965
I.C.T. Rapidwrite. March 1964 (card)
I.C.T. Rapidwrite. May 1965 (tape)
COBOL 5.61 (Card)
COBOL I.C.T. 1300 Series (tape) November 1964 (COBOL-61)
I.C.T. PERT (Programming Evaluation and Review Technique) October 1962
I.C.T. 1301/01 PERT December 1963
I.C.T. 1300/1301 Card PERT December 1965
I.C.T. KWIC INDEX (For producing lists of documents sorted by either
number, author or keyword)
I.C.T. 1300 series Structural Frame Analysis (January 1964) A program
to analyse single-plane frames consisting of straight uniform
I.C.T. 1300 series Traffic Allocation by the Shortest Route Method
(1964) A simulator for use by traffic engineers of local authorities.
I.C.T. 1300 series Multiple Analysis Program (March 1965) A program
to perform multiple tabulator jobs during the early stages of
computerisation of a user using a tabulator.
Below is a list of popular engineering programs, some of which may bring a tear to
the eye of an engineer who may have worked on this system.
The tears may be for what has passed, or may just be from remembered pain !
How could you set up the printer without it ?
To locate those soggy Store data driver boards ( A7's )
For those interested in programming a set of engineering modules was worked on, started by Alex Duncan, an engineer I had the priviledge to work with, I was facinated to work on the modules myself in later years
The Basic Principle was to name or number each block of code by its function, so block 35 was for the card reader, block 42 was for the printer and so on ( see the list of indicators on the software pages ). The package became known as COMPAT, or set of Compatible Subroutines and was a powerful tool. I used this package to produce automated testing sequences in the later years of these machines, when it was required to run a set of tests on one machine, whilst doing maintenance work on another in the same site at the same time.
(Designed for 640 x 480, 800 x 600 or 1024 x 768 Resolution) a 'POPUP' and 'FRAMES' free zone
(Web Masters please note) ) This site is updated
monthly and its contents are liable to, and will change. Links to
and from the site are both welcome and encouraged. However we consider
it a common decency to seek permission first. If we know a link exists,
we will endeavor to not make any changes, or notify you of any changes
to your links.