ML/I User’s Manual — Appendix AE




Implementation on the Elliott 900 series




Harold Thimbleby


21st May 2023 (revised)

Copyright © 2023 Harold Thimbleby

Permission is granted to copy and/or modify this document for private use only. Machine readable versions must not be placed on public web sites or FTP sites, or otherwise made generally accessible in an electronic form. Instead, please provide a link to the original document on the official ML/I web site.


ML/I User’s Manual — Appendix AE

Copyright © 2023 Harold Thimbleby

Permission is granted to copy and/or modify this document for private use only. Machine readable versions must not be placed on public web sites or FTP sites, or otherwise made generally accessible in an electronic form. Instead, please provide a link to the original document on the official ML/I web site.

AE.1 Restrictions and Additions

The Elliott 900 series implementation of ML/I contains all the features described in the ML/I User’s Manual (4th edition, August 1970), plus New Features 1 to 5 as described in that manual.

Lower case letters are not distinguished from capitals.

AE.2 Operating Instructions

To run ML/I from RADOS, type:

&MLI,<OUTPUT FILE>,<INPUT-FILE>[,<INPUT FILE>];

where the output file is either a name or a digit 0 to 9 inclusive refering to a channel number. Channel 0 is reserved to mean that output will be suppressed. The input file must be a file name or a number 1 to 9 inclusive.

All error messages are directed to the on-line teleprinter.

To run ML/I as a stand alone program, load the SCB tape under Initial Instructions and enter at 8. Input and output default to the paper tape reader and punch, while error messages are printed on the on-line teleprinter.

AE.3 Character Set

ML/I uses the full SIR character set; thus lower case and upper case letters are not distinguished. However, tabs may be read from the teleprinter or reader.

AE.4 Error Messages

All error messages are normally sent to the on-line teleprinter, though this may be changed at macro time.

Illegal parity characters are replaced with the error character (see Section 6.3.3), which is a question mark.

The number in section 6.2(f) of the manual is 60, and the message of Section 6.3.12 is given at the end of each process. If any errors are detected, S6 is incremented. If at the end of processing S6 is non zero, a full listing of the environment will be given.

There are several error messages not mentioned in the manual, and these are detailed below.

OUTPUT SIZE LIMIT EXCEEDED

S5 specifies the maximum size of the output file (see below). If the size is exceeded, the process is aborted. S5 may be changed at any point.

OUTPUT FILE TERMINATED

A RADOS file is terminated by a linefeed character followed by a right bracket. If this sequence occurs, the output file is closed and any further output, excepting newlines, will be taken as an error.

(FILE NAME) DOES NOT EXIST

An attempt has been made to take input from the specified file, which is not in the directory.

(FILE NAME) ALREADY EXISTS

An attempt has been made to create a file that already exists. All output will be lost, but ML/I will not be aborted so error messages will be obtained.

PARAMETER MISSING

A parameter in the RADOS command is missing.

BAD PARAMETER - (PARAMETER)

The specified RADOS parameter has an illegal format.

AE.5 Integer Calculations

The initial environment contains ten permanent variables, and ten system variables. The permanent variables are each preset to zero.

All numbers in or derived from macro expressions must be less than 131072 in absolute magnitude. Overflow is always detected.

AE.6 Layout Keywords

All keywords mentioned in the manual have been implemented.

AE.7 System Variables

The S-variables are allocated as follows:

SystemUseInitial
Variable(See manual for S1 to S4)Value
S1Use of startline facility0
S2Line number0
S3Warning marker error messages control0
S4MCNOTE environment control0
S5Maximum size of output file in 100s of characters100
S6Cumulative count of errors0
S7Length of error message lines, in characters72
S8Input file device number
S9Output file device number
S10Error messages file device number3