UNIVERSITY MATHEMATICAL LABORATORY, CAMBRIDGE

Supervisor Planning Document 19
A proposal for control signals and break

Several suggestions have been put forward in previous planning documents, and the following proposal is derived from them.

It has been agreed that an escape character is necessary on the five unit consoles (Creed and GPO TELEX) to enable control signals to be handed over. It seems desirable that the same system should also be used on the Teletypes.

Suitable escape characters would be @ or % on Teletypes and GPO TELEX, and Suffix 2 on Creed. This would be followed by single character indicating a course of action. The following code is suggested:
CDelete previous character.
RDelete the current record.
FSet fault 65 for the object program (or end INPUT on the well route).
QQuit - record fault 94 for the program
This results in an automatic return to the command program.
GContinue (Go). The net effect is none.

The escape character - pass on the escape character.

Integer from 0 to 7 - hand over the carriage control character 5.0 → 5.7. The method of implementation would be such that any character could be given a special meaning when preceded by the escape character, merely by changing the translation table. The facility of generating the carriage control characters 5.0 to 5.7 would thus be very cheap to provide.

The use of this format for Teletypes will result in an extra character (the escape character) having to be typed for each control signal, but there is a big advantage in having a unified system which is partially mnemonic (the only difference between devices being, possibly the escape character).

In PD17, under the heading "Types of Communication", three divisions were considered.

  1. Control signals to the on-line system.
  2. Control signals to sub systems.
  3. Characters to compilers and object programs.

The suggested system amalgamates classes (a) and (b) into a single class of signals requiring supervisor attention. ALTMODE, EOT, etc, would now be treated as ordinary carriage control characters with values as given in PD17 and ALTMODE = 6.0. Thus all control symbols appear as printed characters on the paper.

BREAK.

Break is essential for interrupting continuous output, and it is suggested that Break should perform just this one logically necessary function. The state of the system after Break should be just as if the escape character had been typed with the line in read status - i.e. awaiting a function controlling character. The message ***BREAK will be changed to end with the escape character to remind the user of this. Break with line in read status will be exactly equivalent (apart from the message ***BREAK) to typing the escape character. On GPO TELEX, Break can be generated when the line is in write status by repeatedly pressing a key. When the line is in read status it is not possible to generate Break, but under this new scheme it is not necessary to do so.

There does not appear to be any case for preserving what is currently in the output buffer. The natural action after Break is either to return to command status or to send a fault to be trapped by the program, and in neither case would there be any point for preserving what had been output up till then.

JCV
8 October 1966


Copyright © 1966 University of Cambridge Computer Laboratory. Distributed by permission. Thanks to Barry Landy, Roger Needham and David Hartley for giving permission to distribute these documents. Thanks to Barry Landy for lending me the paper document from which this was scanned. Any typographical errors probably arose in the course of OCR.


Previous Planning Document: 18. Further Thoughts on P.D. 17, MVW and DWB, 28 September 1966
Next Planning Document: 20. Command Control Program - Proposals, DFH, 21.10.66 (plus supplement, DFH, 1 November 1966)
Return to Cambridge Supervisor Planning Documents
Return to CUCPS TITAN page
Return to CUCPS home page
Return to University of Cambridge home page


Contact: CUCPS Committee (soc-cucps-committee@lists.cam.ac.uk)
This HTML version last updated: $Date: 1999/06/20 19:05:56 $