This paper describes two programs. The first transfers III files from tape to the 1906A filestore, and can also be used to produce a listing of the files. The second will create a III dump tape from a 1906A file. Taken together, files can be transferred freely between the two machines.
FR80LIST will copy files from 7 or 9-track FR80 Dump tapes into the 1906A filestore and produce a source listing.
:GSIN 10. FR80LIST
(1)
*LP filename
If absent, file listing is sent to a workfile, which will be listed on the printer.
If present, file listing is sent to named file, which will not be listed.
(2)
*CR filename
If absent, all source files on the tape are listed (unless *FL present).
If present, 'filename' contains the names of FR80 files (in order) to be listed, one per line, terminated by ****. These names must follow the order of files on tape.
Names should be grouped as two sets of 6 characters. Thus:
III109 III166INVAR
(3)
*FL name
Any number of these may be present. A workfile will be created containing, one per line, each name associated with *FL, terminated by ****. This file will be used to drive the listing program.
If *CR is also present, the *CR parameter will take precedence.
IN MYFILE III109 and *CR MYFILE III1166INVAR ****
is equivalent to:
*FLIII109,*FLIII166INVAR
(4)
*NM name
A banner heading:
FR80 LIST
will appear on the first page of output to a workfile. This will be followed by any name specified by *NM. This name should be the username of the person who is to receive the job (if run by FR80LIST from the Operators' console).
(5) If the name in a *CR file or in the *FL parameter ends with ; , it will be taken to indicate a directory name. In this case, the tape is rewound and all non-binary files from that directory will be listed. The tape is rewound again at the end so that further filenames may follow.
(6) The normal file output limit has been set at 20,000 lines. The parameter:
LIMIT number
will reset this value, should it be necessary.
RJ myjob,:GSIN10.FR80LIST,PARAM(*LPmylist),JD(JT30SECS) FR80 LIST,*LPmylist,*NMmyname (from Operators' console)
The program will request the tape:
FR80n(NONSTANDARD)
where n is the username (either of the job or from the *NM parameter). This allows more than one listing (for different users) to run at one time.
Unrecognized characters will be noted in the monitoring file and replaced by ? in the listing. Any binary files on the tape are ignored. Tabs are converted into at least 2 spaces, otherwise sufficient spaces are inserted to select tab positions at columns 8, 16, 24 etc. Form feeds are ignored, but files are separated by page throws. Magnetic tape errors are signalled by a line of *** in the listing.
The following macro has been defined to take source files from a 1906A file and write them, separately, to a nonstandard tape in III dump format.
:GSIN10.FR80WWW
Only one parameter is required:
#CR filename
which defines the source file containing the routines to be written.
The program will request tape:
FR80XX(NONSTANDARD)
to be loaded for writing. The operators must have been provided with the tape beforehand or a DISPLAY issued giving its position in the rack.
Standard ICL tapes must not be used.
The tape may be 7 or 9-track.
Each routine in the file defined by the #CR parameter will be written as a separate file to tape. At the end of each file, 2 filemarks will be written and the tape backspaced over one of them.
Characters in the file will be converted to III corresponding characters. Note that:
(1) Form feeds are ignored
(2) ICL £ sign (SHIFT 4) is converted to III $
(3) ICL $ sign (SHIFT L) is converted to III \
(4) Two or more consecutive spaces are converted to one tab character.
The first line of each routine is defined by:
(a) / in column 1. All lines preceding will be ignored.
(b) Possibly 3 characters followed by ; . (This defines the directory. If not present, previous directory is assumed. This is initially SYM.)
(c) Up to 6 characters (no preceding spaces) representing the first half of the routine name. '-' should be avoided.
(d) One space, unless there were 6 characters in the first name.
(e) Six characters (no preceding spaces) representing the second half of the routine name. If this is blank, 6 spaces must be provided.
(f) Up to 20 characters for a title. Any title specified will be written to the header record of the routine, following the date and time.
The last line of each routine is defined by:
START in columns 1 to 5
/III109 /III109INVAR /SYM;III109 /FCCC 100 /RET; F000 100 /FXXX 100 TITLE /III109ADVAN TITLE
RJ myjob,:GSIN10.FR80WWW,PARAM(#CR myfile),JD(JT30SECS)