N.B. In the PDF image version of his part of the manual, the page "Section 12.5.2 (Cont'd)"
was scanned in the wrong order. It appears in corect position below.
N.B. In section 12.5.2.2, under "Types 3 and 4", "dummy" has been replaced by "dump" as penultimate word as it is believed to be an original mis-type.
Section 12
12. TRIALS PROGRAM (08005)
12.1 Purpose and Scope
This program enables the programmer to submit or amend dumps
points and/or trial data without doing a complete Intercode amendment.
It will also be incorporated into Issue 7 Translator to amend dumps
points and trial data when a full amendment is being done.
PTS will be included on the output file only if it was found on the
input file.
12.2 Data
(i) Pass 1 + Pass 3 Translator (or 08005) output tape
(ii) Paper tape or card control data
12.3 Results
(i) Pass 1 + Pass 3 updated program tape with serial number
stepped on by 1.
(ii) Printout of all dumps points and sets of trial data that have
been amended.
12.4 Procedure
The first control data block is read and the first word tested for
TRAMD. The index on the input tape (file A1) is then searched to make
sure that it contains the required program. If it does, the printer
heading is output, and data is copied from the input to the output tape
(the serial number being stepped on by 1) until the trials information
is reached. Amendments are then dealt with according to type.
Amendment No. 92
1/6 April 1967
Section 12.5
12.5 Control Data
12.5.1 Overall Form
Control data is submitted in the following overall form, where
dumps points amendments must precede trial data if both are submitted:-
Initial submission Amendment
__________________________
| Start of file sentinel |
__________________________
| TRAMD block |
________________ ____________________
| DUMPS block | | Dumps Amendments |
________________
| dumps points |
________________ _________________
| FILES block | | FILEA block |
________________ _________________
| Trial data | | FILED block | in the
________________ ________________________ required
| FILES block | | FILER + FILES blocks | order (see
________________ _________________ below
| Trial data | | FILES block |
_____________
etc. | END block |
________________________
| end of file sentinel |
12.5.2 Layout of Blocks
12.5.2.1 TRAMD Block
______________________________________
||TRAMD|Suite No.|Job No.|Serial No.||
12.5.2.2 Dumps Points (initial submission)
DUMPS Block
_________
||DUMPS||
For each dumps point, a block of the form:
_________________________________________________________________
||Serial No.|Address|Type|N1|N2|N3|Chapters, Sections or Points||
Amendment No. 53
1/2 April 1965
Section 12.5 (Cont'd)
The entries in this block are:
Serial Number
This is the serial number of the dumps point.
Address
This is the Intercode line serial number of the instruction to be
replaced by an entry to the post-mortem routines, the overwritten
instruction being obeyed before re-entry to the program. Unless the
last two digits of this number are 00 (initial translation of a program
containing PM points) or 02 (any amendment), then the first five characters
of the annotation of the Intercode line must be TRACE When the
Translator is used the line serial number in the Dump Point is adjusted
automatically to take insertions or deletions into account, as for
instruction addresses. If the Dump Point is to apply to an inserted
instruction its line serial is written as for a normal reference to
inserted data, i.e. by a "unique serial" (see Vol 3 Part I section 15.4.4)
or by prediction of the line serial.
The following instructions may not be post-mortem points:
(i) 80, 81, 85, 94, 97
(ii) Any machine code instruction
(iii) Any instruction referring to a compartment in this chapter (not transit
area) and modified by a modification register > 3, that is first used in
another chapter
(iv) Any instruction with reference 1000+
(v) Any continuation line
Type
An entry describing the type of post-mortem:
(1) Post-mortem of specified chapters.
(2) Comparison of specified chapters.
(3) Post-mortem of specified sections.
(4) Comparison of specified sections.
(5) Initial dump of complete programme area.
(6) Post-Mortem of specified locations.
Note: If the programmer requires his first dump to be a comparison (type 2
or 4) he should specify a type 5 dump as early as possible in the programme.
Comparison dumps can only be printed on machines whose Master Routines
have the 'On-line dump' facility.
Amendment No. 65
1/3 December 1965
Section 12.5.2.2(Cont'd)
N1, N2 and N3
Entries controlling the frequency and total number of post-mortems
taken at this point.
Nl The number of times this instruction is to be obeyed before taking
the first post-mortem at this point. Thus if N1 = 0 the first post-
mortem is taken the first time the point is reached.
N2 The number of times this instruction is to be obeyed between taking
successive dumps at this point. Thus if N2 = 0 a post~mortem is
taken every time the point is reached.
N3 The total number of dumps to be taken at this point.
Note: N1, N2 and N3 all have a limit of 255. If N3 is specified as
zero (no dumps to be taken at this point) or as > 255 it will be
set at 255 and an error report generated. If N1 or N2 are specified
as > 255 they will be set at 255 and an error report generated.
Chapters, Sections or Points
Entries controlling the areas of the programme to be dumped.
Types 1 and 2: Chapter numbers of up to four chapters to be dumped. These
must be initial chapters (i.e. if it is required to dump chapter 5 which over-
lays chapter 2, chapter 2 being an initial chapter, then chapter 2 must be
specified.
Types 3 and 4: Section numbers of up to four sections to be dumped.
Only sections in the range 1-99 may be dumped using these dump types.
Type 5: These columns are not used. This is an initial dump for subsequent
comparisons only, and is not itself printed.
Type 6: Reference and item (separated by 'number ends') of up to six
locations to be dumped. These can be items in a procedure or items in a
section. Where the reference is a procedure (i.e. in range 100-998), a
match is first sought between the reference + item and the list of all line
serials having TRACE as the first five characters of annotation. If there
is no match, the address of the location dumped is calculated as (procedure
start + item - 2). For an initial translation containing PM points, the
Translator steps such items by 2.
Notes:
(i) The limit of ten dumps points still applies.
(ii) It is no longer possible to submit annotation with dumps points.
Amendment No. 78
1/4 April 1966
Section 12.5 (Cont'd)
12.5.2.3 Dumgs Points (Amendments)
Each dumps point is given a five character reference DUMP 1 -
DUMP 10 (see Appendix A).
These dumps points can be amended using the five character reference
and the usual D. R. and T. directives. Multiple deletions, replacements
and insertions can be made as for Intercode amendments. It should be
noted that additional dumps points can only be inserted before dumps
points and not before trial data, i.e. the amendment directive and serial
for insertions must be of the form:
DUMP X T
12.5.2.4 Trial Data
FILES Block
_________________________________________________________________________
|| FILES | Route | File | Run | Maximum | Section | Set | Indicator ||
|| | Ident.| Id. | No. | Block Size | No. | No. | ||
The entries in this block are:
Route Identifier
The identity of the magnetic tape file from which this trial data
will be read.
File Identity
The file identity to be set up on the trial data file. It must have
the same file letter as the route identifier.
Run Number
The run number to be set up on the file.
Maximum Block Size
The maximum length, in long words, of the blocks of this file. This
should correspond to the appropriate entry on the programme heading sheet.
Section Number
The number of the longest input section onto which this file is read.
Amendment No. 53
1/2 April 1965.
Set Number
This is a single digit. If the trial data indicator on the
allocation data when this programme is run contains this digit as any one
of its five digits, then this file will be set up. Files with trial data
set number 9 are always set up; if the set number is specified as zero
it will he set at 9, and an error report generated.
Indicator
If this is set at 1 it is assumed that the blocks of this file are
of the following form:
Word 4 contains the block length excluding words 0, 2, 4 and the
block end word, and word 6 gives the first item length (item
lengths to include the word containing them).
These block and item lengths will be checked. Block end item lengths
should be submitted in binary or in decimal for conversion to binary
(see below). If the indicator is zero, no checks will be made.
The actual trial data is submitted with seven words to a line, words
being separated by 'number end' characters. The first column contains
the line serial number. The absence of a line serial means that the
seven words for that line are all zero (see Appendix B).
All characters are written as they are required on magnetic tape,
with the following seven exceptions:
714 Block and character - submitted as * B
615 Alignment mark character - submitted as * A
713 Number end character - submitted as * N
514 Line end character - submitted as * L
715 Delta (∆) - submitted as * D
515 Square (□) - submitted as * S
511 Asterisk - submitted as * *
Any numeric item submitted in decimal to be converted to binary is
in the form:
* C (Item to be converted)
The first word of each block of trial data can contain a block
counter for the programmer's use, but this word is not written onto the
trial data file; it corresponds to word 2 on the printout.
Amendment No. 53
1/2 April 1965.
12.5.2.5 Trial Data (Amendments)
When amending trial data either the whole set or some blocks or
words can be deleted, inserted. or replaced,
To insert a new set of trial data a FILES block is submitted
followed by trial data blocks in the same format as for an initial run.
If this FILES block follows dumps points amendments the set wil1 be
inserted before any existing sets, and if it follows a trial data
amendment it will be inserted at the end of that particular set.
To delete a set of trial data the block:
________________________________________
|| FILED | Route Identifier | Set No. ||
is submitted.
To replace a set by an entirely new set the block:
________________________________________
|| FILER | Route Identifier | Set No. ||
is submitted followed by at FILES block, etc. as for an insertion.
To replace the information in the FILE line, the pair of directives is
used, as if block 7 were amended:-
______________________________________________
|| FILEA | Route Identifier | set number |7R||
______________________________________
|| FILES | etc, as for insertion.
To replace/insert/delete words or blocks within an existing file, the
FILEA directive is used-
______________________________________________________________________________
|| FILEA | Route Identifier | set no. | block | last/first word | last word ||
X Y Z
To insert/replace/delete blocks, X = block inserted before,
or first block replaced/
deleted, followed by the
letter T/R/D respectively.
Y = blank or last block to be
deleted.
Amendment No. 53
1/2 April 1965.
Section 12.5.2.5 (Cont'd.)
Z = blank.
To insert/replace/delete words within a block,
X = block number.
Y = word inserted before, or
first word replaced/deleted,
followed by the letter T/R/D:
respectively.
Z = blank or last word to be
deleted.
For blocks which are replaced or inserted, the block number on the
printout is preceded by the symbols '>>'; for words which are replaced or
inserted, the word number on the printout is preceded by the symbol '→'.
On the printout, a dummy FINIS block is generated so that insertions
can be made at the and of a data set. This block cannot be replaced or
deleted.
Inserted or replaced blocks are expected to contain a block end word.
The block end word cannot be replaced or deleted by a word amendment.
The line serial in trial data amendments which consist of more than
one data block is interpreted in Issue 8 Translator as a line serial
within block. Each block should start at line serial 0, (unless blank
words are required at the start of the block); failure to do this will
result in blank lines being inserted in the block.
For specimen layouts for word/block amendments, see Appendix C.
Amendment No. 90
1/5 Jan. 1967