Trailing-Edge
-
PDP-10 Archives
-
walsh_goodStuff_1600
-
more-uns/guide.mem
There are no other files named guide.mem in the archive.
ACCESS
Function
The ACCESS command obtains ownership rights to a directory and
the group rights of its owner.
Format
@ACCESS (TO DIRECTORY) dev:<directory>
------ ---------------
Password: password
--------
@
where
dev:<directory> is the the directory that you want to access
Default dev: - your connected structure
-------
Default <directory> - the directory (on
-------
the specified
structure) of the
same name as your
connected
directory
password is the password of the directory (not
requested for your log-in directory or a
directory of the same name as your log-in
directory on a domestic structure)
Characteristics
Capabilities
Your capabilities (Wheel, Operator, Confidential, etc.) are
associated with your log-in user name only. If you give the
ACCESS command for a directory whose owner has Wheel
capabilities, you do not gain these capabilities.
Restrictions
One Directory Per Structure
You can access only one directory at a time on each mounted
structure. Each ACCESS command ends any previous ACCESS
command (including the implicit access obtained by the LOGIN
command) for that structure. If you access another
directory on PS: you give up your own group rights on PS:.
These are restored when you give an ACCESS command for your
log-in directory.
Effect on Memory and Terminal
The ACCESS command does not affect memory and leaves your
terminal at TOPS-20 command level.
Related Commands
CONNECT for making a directory your connected directory
END-ACCESS for surrendering rights to an accessed directory
SMOUNT for ensuring the continued availability of an
accessed structure
Examples
1. Access another user's directory.
@ACCESS <HOLLAND>
PASSWORD:
@
2. Access another user's directory so you can copy a file from
it to your connected directory.
@ACCESS <HOLLAND>
PASSWORD:
@COPY <HOLLAND>MAX.MEM HOLMAX.MEM
<HOLLAND>MAX.MEM.1 => HOLMAX.MEM.1 [OK]
@END-ACCESS <HOLLAND>
@
3. Access the log-in directory of a user whose group rights you
want to borrow.
@COPY <MANUALS>REL3A.MEM REL3A.MEM
?DIRECTORY ACCESS PRIVILEGES REQUIRED
@ACCESS <HOLLAND>
PASSWORD:
@COPY <MANUALS>REL3A.MEM REL3A.MEM
<MANUALS>REL3A.MEM.4 => REL3A.MEM.1 [OK]
@END-ACCESS <HOLLAND>
@
4. Access the directory of a user on another structure. Then
examine his directory and copy a file from it.
@SMOUNT SNARK:
STRUCTURE SNARK: MOUNTED
@ACCESS SNARK:<HOLLAND>
PASSWORD:
@DIRECTORY SNARK:<HOLLAND>
SNARK:<HOLLAND>
ACCT.MEM.1
ACTGEN..1
COMP.FOR.1
COMPUT.CBL.1
.REL.1
DIFFER.FOR.1
.QOR.1
MAIL.TXT.2
OVERVIEW.MEM.1
TOTAL OF 9 FILES
@COPY SNARK:<HOLLAND>COMP.FOR
SNARK:<HOLLAND>COMP.FOR.1 => COMP.FOR.1 [OK]
@END-ACCESS SNARK:<HOLLAND>
@SDISMOUNT SNARK:
STRUCTURE SNARK: DISMOUNTED
@
ADVISE
Function
The ADVISE command links your terminal with another user's
terminal so that you can give commands to his job. The advisee
can still give commands to his job.
Format
@ADVISE argument
------ --------
where
argument is either a user name or terminal line
number.
Characteristics
Input to Other Job
For as long as the ADVISE command is in effect, the commands
you give will affect the other user's job instead of your
own.
Ending Advice
To end an advising link that you have formed between
terminals, you must type CTRL/E. This CTRL/E is not echoed
on either terminal.
Refused Advice
Ordinarily, you cannot advise a job unless its terminal is
set to receive advice. However, if you have Wheel or
Operator capabilities enabled, you can advise any job.
Hints
Help During ADVISE
Once you are advising another job, you can type CTRL/^? for
a short list of special commands that can now be used to
send comments or control characters, or to relink to a
terminal that has broken links with yours. (Note: giving
the BREAK command does not end advice but merely prevents
the advisor's terminal from printing what either user
types.)
Special Cases
Advisee Has More Than One Job
If more than one job is logged in under the user name you
specify, the system gives you a list of that user's terminal
numbers and associated programs to choose from, then prints
TTY: to prompt your response. Type your choice of terminal
number after the prompt.
Advising a Pseudoterminal (PTY:)
If you try to advise a PTY: the system informs you of this
and asks you to confirm with a carriage return.
Restrictions
Compatible Terminals
Unless the terminals involved in an advising link have
compatible characteristics (e.g., terminal width, ability to
handle tabs and lowercase letters), some information can be
lost or overprinted. To avoid this problem, the user of the
faster or more capable terminal should adjust his terminal's
characteristics, if possible before the ADVISE command is
given.
Detached Jobs
You cannot advise detached jobs.
Effect on Memory and Terminal
The ADVISE command does not affect memory and leaves your
terminal at the advisee's terminal's command level, controlling
his job.
Related Commands
RECEIVE ADVICE for allowing other users to advise you
REFUSE ADVICE for preventing other users from advising you
REMARK for sending comments only
TALK for linking terminals so that your commands
affect only your own job
Examples
1. Advise a user, then immediately type CTRL/E to end advice.
@ADVISE D.CROWLEY
ESCAPE CHARACTER IS <CTRL>E, TYPE <CTRL>^? FOR HELP
D.CROWLEY JOB 51 EXEC
LINK FROM LATTA, TTY 226
[ADVISING]
[ADVICE TERMINATED]
@
2. Advise a user's job and access a directory for him.
@ADVISE BONSAVAGE
ESCAPE CHARACTER IS <CTRL>E, TYPE <CTRL>^? FOR HELP
BONSAVAGE JOB 48 EXEC
LINK FROM LATTA, TTY 226
[ADVISING]
!I'LL ACCESS THE DIRECTORY FOR YOU, THEN YOU CAN USE IT.
@ACCESS <SARTINI>
Password:
@!OKAY, NOW YOU CAN USE IT.
@!Thank you.
[ADVICE TERMINATED]
@
3. Advise another user, demonstrating how to use the FILCOM
program.
@ADVISE D.CROWLEY
ESCAPE CHARACTER IS <CTRL>E, TYPE <CTRL>^? FOR HELP
D.CROWLEY JOB 51 EXEC
LINK FROM LATTA, TTY 226
[ADVISING]
!HERE'S HOW TO COMPARE FILES USING THE FILCOM PROGRAM.
@FILCOM
*=VERCBL.TXT, BAKVER.TXT/A
No differences encountered
*^C
@!SEE? THE SWITCH AT THE END (/A) MEANS TO COMPARE THEM IN ASCII
@!MODE. DON'T FORGET THE CTRL/C WHEN YOU'RE DONE.
@!THANKS.
@
[ADVICE TERMINATED]
4. Advise a user who is logged in at more than one terminal.
Choose one of them.
@ADVISE LATTA
TTY25, EXEC
TTY41, EXEC
TTY27, EXEC
TTY: 27
Escape character is <CTRL>E, type <CTRL>^? for help
LATTA Job 22 EXEC
LINK FROM D.CROWLEY, TTY 225
[Advising]
...
[Advice terminated]
@
APPEND
Function
The APPEND command adds the contents of one or more source files
to the end of a new or existing destination file, leaving the
original source files unchanged.
Format
@APPEND (SOURCE FILE) source filespec(s) (TO) destination filespec,
------ ------ ----------- ----------- ---------
@@subcommand
----------
where
source filespec(s) is a single file specification, or a
series of them separated by commas
destination filespec is the specification of the destination
file; this can be a new file.
,
@@subcommand means that after a final comma you can
type an optional keyword, modifying the
mode or format of information transfer,
as described below
APPEND Command Subcommands
(when used with the paper tape reader - PTR:)
PARITY
ASCII NOPARITY specifies that the files being appended
are written in ASCII mode, with 36-bit
words each consisting of five 7-bit
bytes and a parity bit; the PARITY
argument is not currently in use;
NOPARITY (the default) means that the
eighth hole of the paper tape is never
punched.
BINARY specifies that the files being appended
are composed of 36-bit words, each
consisting of six 6-bit bytes, with the
seventh hole of the paper tape set
always to 0 and the eighth hole set
always to 1; causes a checksum
calculation.
IMAGE specifies that the files being appended
are composed of 36-bit words, each
consisting of one 8-bit byte; the 28
most significant bits are lost on
output.
IMAGE BINARY same as BINARY, but lacking the checksum
APPEND Command Subcommands
(when used with devices other than the paper tape reader)
PARITY
ASCII NOPARITY specifies that the files being appended
are written in ASCII mode, with 36-bit
words each consisting of five 7-bit
bytes and a parity bit; the PARITY
argument is not currently in use;
NOPARITY (the default) means that the
least significant bit is set to 0 on
input and is lost on output.
BINARY calls for a direct transfer of data in
36-bit bytes
IMAGE same as BINARY
IMAGE BINARY same as BINARY
Output
As each file is appended, the system prints its specification and
the word [OK]. Also, if recognition is used on the destination
file specification, the system prints its status (Old generation,
New generation, New file, or Superseding, for disk files; or OK,
if the files are appended to a non-disk device).
Characteristics
Files Appended in Order Specified
The APPEND command attaches source files to the destination
file in the order you specify them; the contents of the
last specified source will appear at the end of the
destination file when APPEND is finished.
Subcommands Optional
For most purposes you do not need to use subcommands when
transferring information with the APPEND command. These
subcommands, specifying the format of the appended files,
are required only when using certain devices (e.g.,
PTR: - paper tape reader) or under particular conditions
(e.g., when transferring files over network facilities). If
you are appending information from disk files or from your
terminal and you do not use any subcommands, the data will
be appended as written, whether in a standard format
(usually ASCII or binary) or not.
Special Cases
Wildcard Characters
Wildcard characters (* and %) can be used in source file
specifications only. The files are then appended in
alphabetical order.
Appending Information from your Terminal
If you type TTY: in place of source file specifications,
the system appends any characters you then type (after
completing the command itself), until you give a CTRL/Z to
return your terminal to TOPS-20 command level. CTRL/U,
CTRL/R, CTRL/W, and the Delete key can be used to edit the
current line of terminal input.
Restrictions
Source Files With Differing Formats
By specifying a device in place of or in addition to source
filespecs, you can use the APPEND command to transfer data
from a magnetic tape, terminal, card reader, paper tape
reader, or other device to disk files. But if source files
written in differing formats are specified within the same
command, some data can be lost in the transfer. Utility
programs such as DUMPER and EDIT offer more flexibility for
most of these applications.
Mixing Sequenced and Unsequenced Files
Source files created by the EDIT program should not contain
sequence numbers when they are appended. Mixing files that
contain sequence numbers with files that do not will cause
EDIT to function improperly if used on the resulting file.
Effect on Memory and Terminal
The APPEND command does not affect memory, and leaves your
terminal at TOPS-20 command level.
Related Commands
COPY for making copies of files
Examples
1. Use the APPEND command to join two files.
@APPEND FORT.FOR FIL.FOR
FORT.FOR.8 [OK]
@
2. Append two files to the end of a third file.
@APPEND FORT.FOR, GORT.FOR GIL.FOR
FORT.FOR.8 [OK]
GORT.FOR.6 [OK]
@
3. Access a directory and append a file from it to a file in
your connected directory.
@ACCESS <MANUALS>
Password:
@APPEND <MANUALS>REL3A.MEM REL3A.MEM
<MANUALS>REL3A.MEM.4 [OK]
@END-ACCESS <MANUALS>
@
4. Use a wildcard character (%) to append several files to the
end of another file.
@APPEND %ORT.FOR HIL.FOR
FORT.FOR.8 [OK]
GORT.FOR.6 [OK]
HORT.FOR.3 [OK]
MORT.FOR.2 [OK]
@
5. Use a wildcard character with the APPEND command to create a
new file.
@APPEND *.TXT BACKUP.TXT
MAIL.TXT.1 [OK]
NEWRUN.TXT.1 [OK]
NX.TXT.1 [OK]
@
6. Append a message from your terminal to the file created in
Example 5.
@APPEND TTY: BACKUP.TXT
TTY:
!THIS IS A BACKUP FILE FOR ALL TEXT FILES.
^Z
@
@
ASSIGN
Function
The ASSIGN command reserves a specific input-output device for
your job.
Format
@ASSIGN (DEVICE) dev:
------- ----
where
dev: is the name of the device you want to assign
Effect on Memory and Terminal
The ASSIGN command does not affect memory and leaves your
terminal at TOPS-20 command level.
Related Commands
DEASSIGN for surrendering a
previously-assigned device
TMOUNT for assigning magnetic tape
drives
INFORMATION AVAILABLE DEVICES for finding out which devices
can be assigned or have been
assigned to your job
Examples
1. Assign a tape drive to your job.
@ASSIGN MTA0:
@
2. Find out which devices are available for timesharing use,
then assign one to your job.
@INFORMATION AVAILABLE DEVICES
Devices available to this job:
DSK, PS, SNARK, MISC, LANG, MTA1, MTA3-10, LPT, LPT0
LPT1, CDR, PCDR0, CDP FE1-15, PTY20-61, NUL, PLT
PLT0, DCN, SRV
Devices assigned to/opened by this job: TTY41
@ASSIGN PCDR0:
@
ATTACH
Function
The ATTACH command engages a job to your terminal.
Format
@ATTACH (USER) name (JOB #)number
------- ---- ------
PASSWORD: password
--------
where
name is the user name of the job's owner
number is the job number
Default the only job, or only
-------
detached job, or only job
other than your current
job, logged in under the
user name you give
password is the associated password (not
requested if you are currently logged in
under the same user name as the job that
you are attaching)
Characteristics
Current Job Detached
If you give the ATTACH command while logged in, your current
job is detached. You can use the LOGOUT n command to finish
this detached job.
Hint
Using ATTACH to Restore Phoned-in Jobs
If you log in to the system by telephone lines and service
is interrupted for any reason, use the ATTACH command to
restore the connection. If you do not do this within five
minutes, your job will be logged out automatically and you
will have to log in again.
Warning
Attaching Attached Jobs
The system will ask you to confirm your choice with a
carriage return before attaching to your terminal a job that
is attached elsewhere. If you attach an attached job that
is running a program, that program may be sent one or more
CTRL/Cs, which can affect programs that handle CTRL/C
themselves. To avoid this possibility you must give a
DETACH command from the terminal to which the program's job
is attached, then attach this job to your terminal with an
ATTACH command.
Effect on Memory, Terminal, and Job
The ATTACH command affects neither memory nor the job that you
are attaching (but see Warning, above), and leaves your terminal
at TOPS-20 command level unless a program is being run by the
job. If a program is being run, your terminal is left at command
level, if any, in the job. Your terminal's characteristics will
be those established in the job from which you gave the ATTACH
command; if you were not logged in they will be reset to system
default characteristics.
Related Commands
SYSTAT for finding out the user name and job number
associated with any job
DETACH for disengaging a job from your own terminal
UNATTACH for disengaging a job from any other terminal
Examples
1. Attach your only job, which is presently detached.
@ATTACH LATTA
PASSWORD:
@
2. Attach one of several detached jobs.
@ATTACH LATTA
?JOB # REQUIRED - LATTA HAS MORE THAN ONE DETACHED JOB
@SYSTAT LATTA
37 DET EXEC LATTA
54 DET NRRY LATTA
@ATTACH LATTA 37
PASSWORD:
@
3. Check your jobs (your current job is marked with an asterisk
(*)), then attach the only detached job. Verify the system's
action.
@SYSTAT LATTA
37 26 NEWRUN LATTA
58 DET EXEC LATTA
59* 231 EXEC LATTA
@ATTACH LATTA
DETACHING JOB # 59
@INFORMATION JOB
JOB 58, USER LATTA, ACCOUNT LANGUAGE, TTY231
@
4. Start a program in one job. Then detach and continue it, and
attach another of your jobs.
INFORMATION JOB
JOB 9, USER LATTA, ACCOUNT LANGUAGE, TTY26
@RUN FFACTOR
^C
@DETACH CONTINUE
DETACHING JOB # 9
^C
SYSTEM 2102 DEVELOPMENT SYSTEM, TOPS-20 MONITOR 3A(1470)
@SYSTAT LATTA
9 DET FFACTO LATTA
45 41 EXEC LATTA
@ATTACH LATTA 45
[ATTACHED TO TTY41, CONFIRM]
PASSWORD:
@
BACKSPACE
Function
The BACKSPACE command moves a magnetic tape backward over a
specified number of files or records.
Format
@BACKSPACE (DEVICE) dev: n units
--------- ---- - -----
where
dev: is the name of the magnetic tape drive that you want to
move backward
n is the number of files or records over which you want
to backspace
Default n - 1
-------
units is either FILES or RECORDS
Default units - FILES
-------
Restriction
BACKSPACE with Open Files
If you have given a CTRL/C to exit from a program that has
opened a magnetic tape drive and you then give the BACKSPACE
command for that tape drive, the system will first ask if
you want to close the associated file. You must do so for
BACKSPACE to succeed, but you will probably be unable to
continue the program from that point because the file will
now be closed.
Effect on Memory and Terminal
The BACKSPACE command does not affect memory and leaves your
terminal at TOPS-20 command level.
Related Commands
SKIP for moving a magnetic tape forward
REWIND for backspacing a tape to its logical beginning (the
beginning of the first file)
Examples
1. Backspace your magnetic tape one file.
@BACKSPACE MTA0: 1 FILE
@
BREAK
Function
The BREAK command simultaneously ends all communication links
that have been formed between your terminal and those of other
users.
Format
@BREAK (LINKS)
-----
@
Restrictions
Does Not End Advice
The BREAK command, given at either of two terminals joined
by the ADVISE command, does not end advice but merely
prevents the advisor's terminal from printing what either
user types. Only a CTRL/E typed at the advisor's terminal
ends advice.
Effect on Memory
The BREAK command does not affect memory and leaves your terminal
at TOPS-20 command level.
Related Commands
TALK for establishing communication links with
another terminal
REFUSE LINKS for preventing future communication links with
your terminal
Examples
1. Use the BREAK command to end a TALK session with another
user.
@BREAK
@
2. Use the TALK command to speak to another user, then use BREAK
to end the conversation.
@TALK PORADA
LINK FROM LATTA, TTY 41
@!HI. CAN YOU TELL ME WHERE THE PROJECT ESTIMATES ARE STORED?
@!SURE: THEY'RE ON TAPE LS2.0 IN THE LIBRARY.
@!THANKS. BYE
@BREAK
@
BUILD
Function
The BUILD command creates, modifies, or deletes a directory
subordinate to a directory to which you have write access.
Format
@BUILD (DIRECTORY NAME) <directory>
----- -----------
@@subcommand
----------
@@ .
-
.
-
.
-
@@
@
where
directory is the name of the directory you are
building; it must be of 39 or fewer
characters.
@@ . indicates that you automatically enter
. subcommand mode after completing the
. BUILD command line
@@
subcommand is a keyword, chosen from the list
below, indicating your choice of BUILD
command options
Summary of BUILD Command Subcommands (defaults in boldface)
ABORT
ABSOLUTE-ARPANET-SOCKETS
ACCOUNT-DEFAULT account
ARPANET-WIZARD
CONFIDENTIAL
DEFAULT-FILE-PROTECTION octal protection code Default code -
----------------------- -------
777700
DIRECTORY-GROUP group number n
ENQ-DEQ
FILES-ONLY
GENERATIONS n Default n - 1
----------- -------
IPCF
KILL
NAME-ONLY
LIST FAST
----
VERBOSE
MAINTENANCE
MAXIMUM-SUBDIRECTORIES n Default n - 0
-------
ABSOLUTE-ARPANET-SOCKETS
------------------------
ARPANET-WIZARD
--------------
CONFIDENTIAL
------------
DIRECTORY-GROUP group number n
ENQ-DEQ
-------
FILES-ONLY
----------
NOT IPCF
--- ----
KILL
----
MAINTENANCE
-----------
OPERATOR
--------
SUBDIRECTORY-USER-GROUP group number n
USER-GROUP group number n
WHEEL
-----
NUMBER octal directory number
OPERATOR
PASSWORD 1- to 39-character word
PERMANENT n Default n - 250
--------- -------
PROTECTION octal protection code Default code -
---------- -------
777700
SUBDIRECTORY-USER-GROUP group number n
USER-GROUP group number n
WHEEL
WORKING n Default n - 250
------- -------
BUILD Command Subcommands
ABORT cancels all work done during current
BUILD command. If directory was new, it
does not exist; if old, it remains
unchanged.
ABSOLUTE-ARPANET-SOCKETS
allows the directory owner to establish
ARPANET network connections using 32-bit
absolute socket numbers; users with
Wheel or Operator capabilities can also
perform this function. For use only
with systems that are members of the
ARPA network. See the TOPS-20AN User's
Guide for more information.
ACCOUNT-DEFAULT account
causes the specified account to be
charged for a terminal session whenever
the user does not include an account in
his LOGIN command
ARPANET-WIZARD
allows the directory owner to use
special queues for sending and receiving
information on the ARPANET network. For
use only with systems that are members
of the ARPA network. See the TOPS-20AN
User's Guide for more information.
CONFIDENTIAL
grants the directory owner Confidential
information access capabilities,
allowing him to obtain confidential
information within the system via
certain monitor calls
DEFAULT-FILE-PROTECTION octal protection code
assigns this number as default for the
protection code of each file
subsequently placed in the directory.
See the TOPS-20 User's Guide for a
discussion of protection codes.
Default protection code - 777700
-------
DIRECTORY-GROUP group number n
places the directory in a group, thereby
allowing users in the same group access
to it according to the middle two digits
of the protection code, and access to
files in the directory according to the
middle two digits of each file's
protection code. See the TOPS-20 System
Manager's Guide for a discussion of
groups.
ENQ-DEQ grants the directory owner the ability
to perform global Enqueue and Dequeue
functions; these are discussed in the
TOPS-20 Monitor Calls Reference Manual.
FILES-ONLY builds the directory as a files-only
directory, i.e., one not associated with
a user. See Restrictions - Files-only
Directories, below.
GENERATIONS n
specifies a default for the number of
successive generations of files to
retain in the directory. This number
must be from 0 to 15, with 0 meaning an
infinite number.
Default n - 1
-------
IPCF allows the directory owner to execute
all privileged IPCF functions; these
are discussed in the TOPS-20 Monitor
Calls Reference Manual.
KILL eliminates the directory and any files
it contains from the system; you must
confirm this subcommand with an extra
carriage return.
NAME-ONLY
LIST FAST provides a listing at your terminal of
VERBOSE parameter values set for the directory
by TOPS-20 commands, BUILD subcommands,
or by default. The FAST listing always
includes the subdirectory's name, some
mention of the password, working and
permanent storage limits, and, if they
have been set, directory number, account
default, maximum number of
subdirectories allowed to this
directory, the date and time of last
log-in, group memberships, and user
group numbers assignable by this
directory. The VERBOSE listing adds the
other values that can be assigned by
BUILD subcommands, while NAME-ONLY
restricts output to the directory name.
Default - FAST
-------
MAINTENANCE
allows the directory owner to execute
certain system maintenance functions or
monitor calls; discussed in the TOPS-20
Monitor Calls Reference Manual.
MAXIMUM-SUBDIRECTORIES n
allows the owner of this directory to
build up to n subdirectories of his own,
and subtracts an equal number from the
value of this parameter for the superior
directory
ABSOLUTE-ARPANET-SOCKETS
ARPANET-WIZARD
CONFIDENTIAL
DIRECTORY-GROUP group number n
ENQ-DEQ
FILES-ONLY
NOT IPCF withdraws the specified subcommand
KILL
MAINTENANCE
OPERATOR
SUBDIRECTORY-USER-GROUP group number n
USER-GROUP group number n
WHEEL
NUMBER octal directory number
assigns a specific directory number to a
new directory (note: usually the
default is adequate)
Default directory
-------
number - assigned by system
OPERATOR
grants Operator capabilities to the
owner of the directory; these are
discussed further in the TOPS-20
Operator's Guide.
PASSWORD 1- to 39-character word
assigns a password to the directory
PERMANENT n
allocates permanent disk storage
capacity n (in pages) to the directory,
and subtracts an equal number from the
permanent disk storage capacity of the
superior directory
Default n - 250
-------
PROTECTION octal protection code
assigns the given directory protection
code to the directory
Default protection
-------
code - 777700
SUBDIRECTORY-USER-GROUP group number n
allows the directory owner to place
subdirectory owners in the specified
groups
USER-GROUP group number n
assigns the directory owner to the given
user group. See the TOPS-20 System
Manager's Guide for a discussion of
groups.
WHEEL grants Wheel capabilities to the owner
of the directory, allowing him to
perform all the privileged functions
available on the system; these are
discussed further in the TOPS-20
Operator's Guide.
WORKING n
allocates working disk storage capacity
n (in pages) to the directory, and
subtracts an equal number from the
working disk storage capacity of the
superior directory. Ordinarily, working
and permanent storage limits are equal.
Default n - 250
-------
Characteristics
BUILD and ^ECREATE
The BUILD command is identical in format to the privileged
^ECREATE command. If you use BUILD with Wheel or Operator
capabilities enabled, it has the same power as ^ECREATE,
namely, to create directories and modify the parameters of
any directory on the system. Without these capabilities,
you can use BUILD to modify a more restricted set of
directories: you can modify a directory if you have write
access to the immediately superior directory. The LOGIN,
CONNECT, or ACCESS command obtain write access to the
superior directory; or, if you have sufficient group rights
to the superior directory, you can use BUILD to modify its
subdirectories.
More Information
For a more complete description of using BUILD to construct
subdirectories, see the TOPS-20 System Manager's Guide. For
a description of using ^ECREATE to create directories, see
the TOPS-20 Operator's Guide.
Quotas Subtracted from the Superior Directory's Allotments
Working and permanent disk storage page limits, and the
maximum number of subdirectories allowed to a subdirectory
are subtracted from the quotas allocated to the immediately
superior directory. This subtraction occurs at the time of
their allotment to a subdirectory. If the superior
directory's quota is not sufficient, the BUILD command will
fail. To increase the superior directory's quota of any of
these quantities you must either kill some of its
subdirectories or reduce their allotments of the quantity.
Or you can ask the system manager to increase the allotment
of the superior directory. Remember that unless you specify
working and permanent page limits, they will assume a
default value of 250 pages. The BUILD command will fail in
this case if there are not at least 250 pages free in the
immediately superior directory.
Assigning Infinite Quotas
If you have Wheel or Operator capabilities enabled, you can
assign the maximum storage limit of 34359738367 (i.e.,
2**35-1) to a directory. This will appear in the response
to an INFORMATION DIRECTORY command as +INF, denoting
infinite storage capacity. If you then use the BUILD
command to construct subdirectories to this directory, any
disk storage capacity assigned, even the maximum, will not
be subtracted from the superior directory. You can use this
feature to assign infinite storage capacity to a number of
users sharing a private structure. Then these users may use
storage space on the structure without limit until the disk
pack fills up.
Hints
Keeping Track of Subdirectories
Subdirectories appear as files of type .DIRECTORY in the
immediately superior directory, so the DIRECTORY *.DIRECTORY
command for the superior directory will indicate any
existing subdirectories. To suppress the listing of these
files you can use the SET FILE PROTECTION command to give
them a protection of 000000, but then you must specify the
files completely (including generation number) to access
them in the future.
If there are two or more levels of subdirectories below a
superior directory, you can do something else to allow a
listing of them: put each subdirectory into a group of
which the owner of the highest-level superior directory is a
member. Then, if you obtain the group rights of this owner
(e.g., by using the LOGIN or ACCESS command if the superior
directory is on PS:, or ACCESS if it is on another
structure), the INFORMATION DIRECTORY <directory.*> command
with the NAME-ONLY subcommand will produce a listing of
subdirectories at every level beneath the superior
directory. For this feature to operate properly the group
field of each subdirectory's protection code must be at
least 40.
Modifying Subdirectories Easily
By following the above procedure, that is, by making
subdirectories at every level members of groups of which the
owner of the highest-level superior directory is also a
member, you make the modification of these subdirectories
much easier. You can use the BUILD command to modify these
subdirectories or read and write to them, as long as you
have the group memberships of this owner. You need not
connect to each subdirectory's immediate superior to make
modifications.
Restrictions
Giving Capabilities to Subdirectory Owners
In order to give capabilities (Wheel, Operator,
Absolute-Arpanet-Sockets, Arpanet-Wizard, Confidential,
Enq-Deq, IPCF, or Maintenance) to a subdirectory owner, you
must have these capabilities yourself, and they must be
enabled at the time of the BUILD command. Wheel and
Operator capabilities allow you to assign any capabilities.
The INFORMATION DIRECTORY command for your log-in directory
tells you which capabilities you have, if any.
Modifying Other Directories
Unless you have Wheel or Operator capabilities enabled, you
can use the BUILD command to modify the parameters of only
those directories subordinate to a directory to which you
have write access. (See Characteristics - BUILD and
^ECREATE, and Hints - Modifying Subdirectories Easily,
above.) If your installation allows it, you can use the SET
DIRECTORY command to change some parameters of other
directories.
Files-only Directories
By giving the FILES-ONLY subcommand you make the directory a
files-only directory (see Figure 1). A files-only directory
is not associated with a user and so cannot be given
capabilities or user group memberships. Although a
files-only directory can have subdirectories, none of these
can be a user directory. You cannot give the ACCESS or
LOGIN command for a files-only directory.
Killing Directories
You cannot kill a directory that has subdirectories; first
you must kill those subdirectories one by one. When you
kill a directory, the files it contains are deleted and
expunged.
Effect on Memory and Terminal
The BUILD command does not affect memory and leaves your terminal
at BUILD subcommand level.
Related Commands
INFORMATION DIRECTORY for examining the parameters
established for a directory
INFORMATION DISK-USAGE for determining how much of a
directory's disk space is already
assigned to files
SET DIRECTORY for changing certain directory
parameters
<CHEM>
<CHEM.ALLEN> <CHEM.BLAKE> <CHEM.LAB-NOTES> <CHEM.TESTS>
(files-only) (files-only)
<CHEM.ALLEN.LAB> <CHEM.BLAKE.LAB>
(files-only) (files-only)
Figure 1 Directories and Subdirectories
Examples
The examples show how a user with a directory named <CHEM> builds
subdirectories in the pattern shown in Figure 1.
1. Build directories for two of your students or employees,
assigning disk space and passwords and placing them in one of
your directory groups; check their parameters.
@BUILD <CHEM.ALLEN>
[NEW]
@@WORKING 50
@@PERMANENT 50
@@PASSWORD 619JIM
@@DIRECTORY-GROUP 2391
@@LIST
NAME <CHEM.ALLEN>
Password 619JIM
Working disk storage page limit 50
Permanent disk storage page limit 50
Account default for LOGIN - none set
Directory groups 2391
@@
@BUILD <CHEM.BLAKE>
[New]
@@WORKING 50
@@PERMANENT 50
@@PASSWORD 127BIL
@@DIRECTORY-GROUP 2391
@@LIST
Name <CHEM.BLAKE>
Password 127BIL
Working disk storage page limit 50
Permanent disk storage page limit 50
Account default for LOGIN - none set
Directory groups 2391
@@
@
2. Modify Blake's directory to allow him to create 2
subdirectories.
@BUILD <CHEM.BLAKE>
[Old]
@@MAXIMUM-SUBDIRECTORIES 2
@@
@
3. Build a files-only directory to store examination questions.
@BUILD <CHEM.TESTS>
[New]
@@FILES-ONLY
@@WORKING 10
@@PERMANENT 10
@@PASSWORD MINERVA
@@DIRECTORY-GROUP 2391
@
4. Build a files-only directory as a library directory for your
subdirectory owners. Place the directory and these users in
the same group.
@BUILD <CHEM.LAB-NOTES>
[New]
@@FILES-ONLY
@@WORKING 25
@@PERMANENT 25
@@PROTECTION 774000
@@DEFAULT-FILE-PROTECTION 775200
@@DIRECTORY-GROUP 2392
@BUILD <CHEM.ALLEN>
[Old]
@@USER-GROUP 2392
@@
@BUILD <CHEM.BLAKE>
[Old]
@@USER-GROUP 2392
@@
@
5. User Blake quits. Delete his directory.
@BUILD <CHEM.BLAKE>
[Old]
@@KILL
[Confirm]
@@
@
CANCEL
Function
The CANCEL command withdraws requests made with a previous PRINT
or SUBMIT command.
Format
@CANCEL (REQUEST TYPE) queue (JOBNAME) jobname /switch
------ ----- ------- -------
where
queue is the name of the queue, chosen from the
following list:
BATCH (for requests made using the
SUBMIT command)
PRINT (for requests made using the PRINT
command)
jobname is the jobname of the request. This is the name
appearing under the Job heading in the list of
jobs supplied by the INFORMATION OUTPUT-REQUESTS
or INFORMATION BATCH-REQUESTS command. Supplying
an asterisk (*) for the jobname cancels all your
requests in the specified queue.
switch is one or both of the following optional switches:
/SEQUENCE:n where n is the sequence
number, obtained from the
list of jobs supplied by
the INFORMATION
OUTPUT-REQUESTS or
INFORMATION
BATCH-REQUESTS command.
Include this switch to
cancel a request having a
non-unique jobname.
/USER:user name which cancels the
specified request entered
under the given user
name. Use an asterisk
(*) both for jobname and
as argument to this
switch to cancel all
requests of all users in
the specified queue.
For privileged users
only.
Output
When you complete a CANCEL command removing a request, the system
responds with "[1 Job Killed]" and makes the appropriate deletion
from the indicated queue. If the job is being processed, the
response is "[No Jobs Killed, 1 Job Canceled]", but if the job is
already finished, it is simply "[No Jobs Killed]".
Effect on Memory and Terminal
The CANCEL command does not affect memory and leaves your
terminal at TOPS-20 command level.
Related Commands
MODIFY for changing requests without
removing them
INFORMATION BATCH-REQUESTS for examining requests in the
batch input queue
INFORMATION OUTPUT-REQUESTS for examining requests in the
line printer queues
PRINT for placing requests in a line
printer queue
SUBMIT for placing requests in the batch
input queue
Examples
1. Cancel a specific print request.
@CANCEL PRINT REMAX
[1 JOB KILLED]
@
2. Cancel all your batch requests.
@CANCEL BATCH *
[1 JOB KILLED]
@
3. Find out what line printer requests you have made, then
cancel one of two jobs bearing the same jobname.
@INFORMATION OUTPUT-REQUESTS /USER
Queue Job Seq Limit User
----- --- --- ----- ----
LL HOLMAX 2503 54 LATTA
/AFTER:31-Mar-78 18:00:00
LPT HOLMAX 2504 216 LATTA
/AFTER:31-Mar-78 18:00:00
LPT MEMO 2505 52 LATTA
/AFTER:31-Mar-78 18:00:00
LPT REL3A 2506 56 LATTA
/AFTER:31-Mar-78 18:00:00
LPT SPECS 2507 54 LATTA
/AFTER:31-Mar-78 18:00:00
@CANCEL PRINT HOLMAX /SEQUENCE:2504
[1 Job Killed]
@
4. Get a list of your printing jobs (and some of the switches
you gave), then cancel three of them, one of which has
already been started.
@INFORMATION OUTPUT-REQUESTS /USER/ALL
Queue Job Seq Limit User
----- --- --- ----- ----
LPT ACCT 2500 66 LATTA
/AFTER:31-Mar-78 18:00:00
LPT ACCT 2501 264 LATTA
/AFTER:31-Mar-78 18:00:00/FORMS:NARROW
LL ACCT 2502 264 LATTA
/AFTER:31-Mar-78 18:00:00 /PRIORITY:60 /LOWERCASE
LL HOLMAX 2503 54 LATTA
/AFTER:31-Mar-78 18:00:00 /LOWERCASE
@CANCEL PRINT ACCT
[2 JOBS KILLED, 1 JOB CANCELED]
@
CLOSE
Function
The CLOSE command closes open files in your job.
Format
@CLOSE (JFN) n
----- -
where
n is the JFN (Job File Number) of an open file
Default n - all open files
-------
Output
When the CLOSE command is completed, the system prints a message
on your terminal for each file that it has closed or attempted to
close.
Characteristics
CLOSE Usually Unnecessary
The CLOSE command is used to preserve the contents of a file
after the abnormal termination of the program that opened
it. Under ordinary conditions you do not need to use the
CLOSE command.
Restrictions
Closing Mapped Files
You cannot close files that are mapped into memory; in this
case give the RESET command, which clears memory. (Note,
however, that RESET will delete and expunge a mapped file if
the file is new, rather than save it as CLOSE would.) If
RESET by itself does not close the file, you may first have
to give the POP command to return to a higher level of the
TOPS-20 command processor; then give the RESET command.
Once memory has been cleared, all files are closed for
processes at the current and lower levels of TOPS-20.
Effect on Memory and Terminal
The CLOSE command does not affect memory and leaves your terminal
at TOPS-20 command level.
Related Commands
INFORMATION FILE-STATUS for determining which files are open
in your job
INFORMATION MEMORY-USAGE for determining which files are
mapped
RESET for closing mapped files and clearing
memory
Examples
1. Close an open file.
@CLOSE 4
4 EDIT-BUFFER.OUT.100036 [OK]
@
2. Try to close all your open files. Give the RESET command to
close those that are mapped. (Note that the file EXEC.EXE,
containing the TOPS-20 command processor, cannot be closed.)
@CLOSE
3 TEST1.CBL.1 [OK]
2 PS:<LOADTEST>EDIT.EXE.4 Can't close file - File
still mapped
1 PS:<SYSTEM>EXEC.EXE.153 Can't close file - File
still mapped
@RESET
@CLOSE
1 PS:<SYSTEM>EXEC.EXE.153 Can't close file - File
still mapped
@
COMPILE
Function
The COMPILE command translates source files into object
(relocatable binary) files.
Format
@COMPILE (FROM) /switch(es) source/switch(es) object,...
------- ----------- ----------------- ----------
where
switches are keywords chosen from the list below,
indicating your choice of COMPILE command options.
When positioned immediately after a file
specification (and before a comma) they apply to
that file only. Otherwise they become global
switches, i.e., default choices for all subsequent
files.
Defaults are shown in the list of switches
--------
source is the file specification of a source program.
The filename must be of 6 or fewer characters, and
the file type of 3 or fewer characters; you
cannot use a generation number.
Default - file specifications and associated
-------
switches you gave in your last
LOAD-class command
object is the filename you choose for the object file;
it must be of 6 or fewer characters.
Default - filename of the source file (file
-------
type is .REL)
,... means that, after commas, you can give more
arguments (switches, source, and object) of the
form already shown
Summary of COMPILE Command Switches (defaults in boldface)
/ALGOL
/BINARY
-------
/COBOL
/COMPILE
/CREF
/DEBUG
/FORTRAN
--------
/LIST
/MACRO
/NOBINARY
/NOCOMPILE
----------
/NODEBUG
--------
/NOLIST
-------
/NOOPTIMIZE
-----------
/OPTIMIZE
---------
Descriptions of these switches are given below. Although the
system will not reject switches described under any of the
LOAD-class commands, only those switches commonly associated with
COMPILE are described here.
COMPILE Command Switches
/ALGOL compiles the file using the ALGOL compiler
/BINARY allows generation of an object (binary) file for
each source file given. Use this switch to cancel
a /NOBINARY switch.
Default
-------
/COBOL compiles the file usng the COBOL compiler
/COMPILE forces compilation of the source file even if a
current object file already exists. Use this
switch along with the /LIST or /CREF switch to
obtain listings when you have current object
files. (See also the /NOBINARY switch.)
/CREF creates a file containing cross-reference
information for each compilation. The filename is
that of the object file; the file type is .CRF.
Use the CREF command to obtain a listing of the
file. (For COBOL files, this switch automatically
produces a cross-reference listing.)
/DEBUG produces an object file containing debugging
information beyond what is usually inserted during
a compilation. (For FORTRAN programs only, and
only if you have not given the /OPTIMIZE switch.)
/FORTRAN compiles the file using the FORTRAN compiler
Default for switches specifying compiler
-------
language, in the absence of a
standard source file type
/LIST prints a listing of the program in ASCII format;
the name of this listing is the filename of the
object file. The /CREF switch overrides /LIST
when they both apply to the same file.
/MACRO assembles the file using the MACRO assembler
/NOBINARY prevents generation of an object (binary) file.
Use this switch along with /LIST or /CREF to allow
these switches to take effect without producing a
new object file.
/NOCOMPILE prevents compilation if the associated object file
is current; otherwise it forces compilation. Use
this switch to cancel a /COMPILE or /RELOCATABLE
(see the EXECUTE command description) switch. See
Characteristics - Compiling New Sources Only,
below.
Default
-------
/NODEBUG excludes special debugging information from your
object file. (For FORTRAN programs only.)
Default
-------
/NOLIST prevents a line printer listing of the program
Default
-------
/NOOPTIMIZE prevents the generation of a globally optimized
object file. (For FORTRAN programs only.)
Default
-------
/OPTIMIZE calls for generation of a globally optimized
object file, i.e., one that runs as quickly as
possible. (For FORTRAN programs only, and only if
you have not given the /DEBUG switch.)
Characteristics
Compiling New Sources Only
The system usually compiles only those sources for which
there are no current object files, i.e., sources whose write
dates are more recent than those of the object files of the
same name. But you can force compilation with the /COMPILE
switch.
Using Standard File Types
If you specify source files with standard types (.FOR, .MAC,
.CBL, or .ALG) in a COMPILE command, the system
automatically calls the appropriate compiler when
compilation is necessary. If you specify source files by
filename only, the system searches your connected directory
in the above order for a file of this name and a standard
type. To compile programs from sources that have
nonstandard file types, give a switch to indicate the proper
compiler (/FORTRAN, /MACRO, /COBOL, or /ALGOL). A switch
will take precedence over a standard file type if they
indicate different languages. If no compiler is indicated
with either a switch or a standard file type, the FORTRAN
compiler is used.
Hints
Plus Signs Between Filespecs
If you give two or more filespecs separated by plus signs
(+) as arguments to COMPILE, they are compiled together as
if they were a single file. Their object module is stored
under any filename given as the "object" argument of the
command, or (if none) under the last filename in the group
and file type .REL.
Indirect Files as Arguments
You can store the arguments (source and object filespecs,
switches) of a COMPILE command in an indirect file, and
specify them by typing an at sign (@) and its filespecs as a
COMPILE command argument. If you give other filespecs as
well, you must give the indirect file last.
Restrictions
Switches Assuming Compilation
/CREF
/DEBUG
/LIST
/NODEBUG
/NOLIST
/NOOPTIMIZE
/OPTIMIZE
The above switches will not take effect unless the COMPILE
command causes a new compilation of the relevant source
file. See Characteristics - Compiling New Sources Only,
above, for more information.
Effect on Memory and Terminal
The COMPILE command clears memory and loads the appropriate
compiler. After the compilation your terminal is left at TOPS-20
command level.
Related Commands
LOAD, EXECUTE, and DEBUG other LOAD-class commands for
performing related functions
Examples
1. Compile a FORTRAN program.
@COMPILE RSD2.FOR
FORTRAN: RSD2
MAIN.
@
2. Do the same thing, using a switch to indicate the proper
compiler.
@COMPILE RSD2/FORTRAN
FORTRAN: RSD2
MAIN.
@
3. Create an indirect file. Use it to compile several programs,
forcing a compilation of the last one and storing its object
file under a new name.
@CREATE UPDATE.CMD
Input: UPDATE.CMD.1
00100 /COBOL FSTQ, SNDQ, THDQ, FTHQ/COMPILE ANNUAL
00200
*E
[UPDATE.CMD.1]
@COMPILE @UPDATE.CMD
COBOL: DMN [FSTQ.CBL]
COBOL: DMN [SNDQ.CBL]
COBOL: DMN [THDQ.CBL]
COBOL: DMN [FTHQ.CBL]
EXIT
@DIRECTORY,
@@CHRONOLOGICAL WRITE
@@REVERSE
@@
PS:<LATTA>
ANNUAL.REL.1
THDQ.REL.1
SNDQ.REL.1
FSTQ.REL.1
UPDATE.CMD.1
017CRE.TMP.100017:T
FTHQ.CBL
THDQ.CBL
SNDQ.CBL
FSTQ.CBL
@
4. Produce a cross-reference (.CRF) file for a FORTRAN program
although you already have a current object file; prevent the
generation of a new object program. Check for the output
file.
@COMPILE /CREF/FORTRAN/COMPILE/NOBINARY RSD2
FORTRAN: RSD2
MAIN.
@DIRECTORY,
@@CHRONOLOGICAL WRITE
@@REVERSE
@@
PS:<LATTA>
RSD2.CRF.1
017CRE.TMP.100017;T
RSD2.REL.1
RSD2.FOR
@
CONNECT
Function
The CONNECT command obtains ownership rights to a directory and
makes it your connected directory.
Format
@CONNECT (TO DIRECTORY) dev:<directory>
------- ---------------
PASSWORD: password
--------
@
where
dev:<directory> is the directory to which you want to connect
Default dev: - your connected structure
-------
Default <directory> - the directory (on
-------
the specified structure) of the
same name as your connected
directory
Default (if no arguments are given) -
-------
your log-in directory on PS:
password is the password of the directory (not
requested for your log-in directory or a
directory to which you already have ownership
or sufficient group rights)
Characteristics
Capabilities
Your capabilities (Wheel, Operator, Confidential, etc.) are
associated with your log-in user name only. If you connect
to a directory whose owner has Wheel capabilities, you do
not gain these capabilities.
Hints
Obtaining Group Rights
You can obtain group rights equal to those of the owner of a
directory by giving the ACCESS command instead of, or in
addition to, CONNECT for that directory.
Restrictions
Features Not Affected
For some system features, CONNECT does not affect the
directory used:
Mail
The MAIL program inserts messages addressed to you into
a file in your log-in directory only. The RDMAIL
program reads messages from this file only, unless you
are a privileged user.
System Accounting
The SET ACCOUNT command allows arguments valid for your
log-in user name only.
PRINT and SUBMIT
The PRINT and SUBMIT commands charge processing
requests to your log-in user name only.
Effect on Memory and Terminal
The CONNECT command does not affect memory and leaves your
terminal at TOPS-20 command level.
Related Commands
ACCESS for obtaining group as well as ownership rights equal
to those of the owner of a directory
SMOUNT for ensuring the continued availability of a structure
to which you connect
Examples
1. Connect to another user's directory.
@CONNECT <HOLLAND>
Password:
@
2. Try to access a directory. Discovering that it is a
files-only directory, connect to it instead.
@ACCESS <MANUALS>
?Directory is "files-only" and cannot be accessed
@CONNECT <MANUALS>
Password:
@
3. Connect to another user's directory on a different file
structure, then to your directory on that structure; then
return to your log-in directory on PS:. Give INFORMATION JOB
commands as you go along to check which is your connected
directory.
@INFORMATION JOB
Job 36, User LATTA, Account 341, TTY207
@SMOUNT SNARK:
Structure SNARK: mounted
@CONNECT SNARK:<HOLLAND>
Password:
@INFORMATION JOB
Job 36, User LATTA, SNARK:<HOLLAND>, Account 341, TTY207
@CONNECT <LATTA>
@INFORMATION JOB
Job 36, User LATTA, SNARK:<LATTA>, Account 341, TTY207
@CONNECT
@INFORMATION JOB
Job 36, User LATTA, Account 341, TTY207
@SDISMOUNT SNARK:
Structure SNARK: dismounted
@
4. Connect to your directory on another structure and obtain
your full rights to it. After giving an INFORMATION JOB
command to verify your connected directory, give a command
that depends on these rights. Then return to your log-in
directory on PS:.
@SMOUNT SNARK:
Structure SNARK: mounted
@ACCESS SNARK:
@CONNECT SNARK:
@INFORMATION JOB
Job 36, User LATTA, SNARK:<LATTA>, Account 341, TTY207
@INFORMATION DIRECTORY <LATTA.*>,
@@NAME-ONLY
@@
Name SNARK:<LATTA.ALLEN>
Name SNARK:<LATTA.BLAKE>
Name SNARK:<LATTA.LAB-NOTES>
Name SNARK:<LATTA.TESTS>
@END-ACCESS SNARK:<LATTA>
@CONNECT
@SDISMOUNT SNARK:
Structure SNARK: dismounted
@
CONTINUE
Function
The CONTINUE command resumes execution of a program that is
halted.
Format
@CONTINUE (PROGRAM) argument
-------- --------
where
argument is one of the following keywords:
NORMALLY - which directs your program to resume
executing and restores your terminal
to command level (if any) within the
program
STAY - which directs your program to resume
executing but keeps your terminal at
TOPS-20 command level
Default - NORMALLY
-------
Hints
Monitoring your Program
CONTINUE STAY, by keeping your terminal at TOPS-20 command
level, lets you use TOPS-20 commands to monitor the progress
of your program (see Related Commands, below) while it is
running. You can also do other work as long as the commands
you use do not affect memory. See Appendix B for a list of
these.
Using PUSH to Get a New TOPS-20 Command Level
To use commands that call a program or otherwise affect
memory, or to start a second program while the first one is
running, give a PUSH command immediately after CONTINUE
STAY. You receive a fresh copy of memory (address space)
and can then give commands that affect memory or call
programs. These commands do not affect the program that is
already running. But see Restrictions, below.
Restrictions
Similar Programs Competing for Files
If you have two similar programs running at once after using
CONTINUE STAY and PUSH commands (see Hints, above), they may
try to access the same files at the same time (e.g.,
temporary files labeled by job number, used by compilers).
This may cause unpredictable situations to develop. To
avoid the possibility, run different kinds of program or
give different kinds of command (e.g., a LOAD-class command
and an EDIT-class command) at the different levels in your
job.
Programs Competing for Terminal Input
If you have two programs running at once (see Hints, above),
it is possible for the program running at the higher (first)
TOPS-20 command level to intercept TOPS-20 commands given at
the lower level. These can be interpreted as commands or
data directed at the higher-level program. If you suspect
that this is happening, you can stop it by first typing
CTRL/Cs to be sure you are at the lower TOPS-20 command
level. Then give POP commands to return to the higher
TOPS-20 level. You may have to type more than one POP
command because terminal input is being divided arbitrarily
between the two levels. POP stops the lower-level program
and erases its copy of memory. Finally, give CTRL/Cs
followed by a CONTINUE NORMALLY command; this puts you at
program command level in the higher-level program so you can
give the commands or data it requires.
Commands That Affect Context of Job
Certain commands, by altering the context of your job, can
affect programs you are running without changing memory.
ACCESS, CONNECT, and DEFINE are examples. Give these
commands with caution after CONTINUE STAY, even if you have
given a PUSH command.
Effect on Memory and Terminal
The CONTINUE NORMALLY command does not affect memory, resumes
processing the program in memory, and leaves your terminal at
program command level (if there is one). The CONTINUE STAY
command also does not affect memory and resumes processing the
program in memory, but leaves your terminal at TOPS-20 command
level.
Related Commands
INFORMATION FILE-STATUS for monitoring files being written
by your program
INFORMATION MEMORY-USAGE for monitoring your program's use
of memory
INFORMATION PROGRAM-STATUS for monitoring your program's use
of CPU time
PUSH for obtaining a fresh copy of
memory
REENTER for continuing your current
program at its alternate entry
point (if any)
START for starting your current program
at the beginning
Examples
1. Continue a program which you have halted.
@CONTINUE
2. Run a program, then halt it by typing CTRL/Cs. Give the
CONTINUE command and proceed.
@RUN QUOTNT
type two numbers: 312.^C
@CONTINUE
45, 6.675
the quotient of 312.450 over 6.675 is 46.809
STOP
END OF EXECUTION
CPU TIME: 0.14 ELAPSED TIME: 35.62
EXIT
@
3. Start editing a file. Type a CTRL/C (and then give the M
(monitor) command to the EDIT system program) to return to
TOPS-20 command level. Give the DIRECTORY command to check
the name of a file, then give the CONTINUE command to return
to your editing job.
@EDIT REL3A.MEM
Edit: REL3A.MEM.9
*Yes? (Type H for help): M
@DIRECTORY *.TXT
PS:<LATTA>
MAIL.TXT.1
MENTON.TXT.1
PROFIL.TXT.1
R2OPRJ.TXT.1
REL3A.MEM.9
Total of 4 files
@CONTINUE
*
4. Begin editing a long file, giving the F (find) command to
EDIT. Give a CTRL/C and then the M command to return to
TOPS-20 command level. Give the CONTINUE STAY command and
then INFORMATION FILE-STATUS commands to check the progress
of EDIT as it searches through the file. (Notice that the
byte position shown in response to successive INFORMATION
FILE-STATUS commands grows larger.) Finally, give the
CONTINUE NORMALLY command to return to EDIT in time for a
message.
@EDIT DOC-PLAN.MEM
Edit: DOC-PLAN.MEM.1
*FABCD$
Yes? (Type H for help): M
@CONTINUE STAY
@INFORMATION FILE-STATUS
Connected to PS:<LATTA>, JFNS:
4 <LOADTEST>EDIT.EXE.4 Read, Execute
3 EDIT-BUFFER.OUT.100046 Read, Write, 0.(7)
2 DOC-PLAN.MEM.1 Read, 43520.(7)
1 <SYSTEM>EXEC.EXE.153 Read, Execute
Device assigned to/opened by this job: TTY222
@INFORMATION FILE-STATUS 2
2 DOC-PLAN.MEM.1 Read, 112640.(7)
@INFORMATION FILE-STATUS 2
2 DOC-PLAN.MEM.1 Read, 130560.(7)
@CONTINUE
%Search fails
*
5. Start compiling a long file. After compilation has begun,
give a CTRL/C to stop it and return to the TOPS-20 command
processor. Use CONTINUE STAY to resume compilation, and then
PUSH to receive a new copy of the TOPS-20 command language.
Edit a text file at this lower level, then give the POP and
CONTINUE commands to return to the compilation in progress.
The compiler finishes, in this case, after you have done so.
@COMPILE DUMPER.MAC
MACRO: DUMPER
^C
@CONTINUE STAY
@PUSH
TOPS-20 Command processor 3(414)
@EDIT PROFIL.TXT
Edit: PROFIL.TXT.2
*SAPRIL$JUNE$:*
00100 JUNE 19, 1978
00500 JUNE 12
00750 JUNE 5
00900 JUNE 18
01400 JUNE 21
*E
[PROFIL.TXT.3}
@POP
@CONTINUE
EXIT
@
COPY
Function
The COPY command makes a copy of an existing file and stores it
under a new file specification. The file remains under its old
specification also.
Format
@COPY (FROM) source filespec (TO) destination filespec,
---- ------ -------- ----------- ---------
@@subcommand
----------
where
source filespec is the specification of the file or
device whose contents you want to copy
destination filespec is the specification of the file or
device in which you want to store a copy
of the file
Default - source filespec, but with
-------
next higher generation
number
,
@@subcommand means that after a final comma you can
type an optional keyword, specifying the
mode or format of information transfer,
as described below
COPY Command Subcommands
(when used with the paper tape reader or punch - PTR: or PTP:)
PARITY
ASCII NOPARITY specifies that the file being copied is
written in ASCII mode, with 36-bit words each
consisting of five 7-bit bytes and a parity
bit; the PARITY argument is not currently in
use; NOPARITY (the default) means that the
eighth hole of the paper tape is never
punched.
BINARY specifies that the file being copied is
composed of 36-bit words, each consisting of
six 6-bit bytes with the seventh hole of the
paper tape set always to 0 and the eighth
hole set always to 1; causes a checksum
calculation.
IMAGE specifies that the file being copied is
composed of 36-bit words, each consisting of
one 8-bit byte; the 28 most significant bits
are set to 0 on input and are lost on output.
IMAGE BINARY same as BINARY, but lacking the checksum
calculation
COPY Command Subcommands
(when used with devices other than the paper tape reader or punch)
PARITY
ASCII NOPARITY specifies that the file being copied is
written in ASCII mode, with 36-bit words each
consisting of five 7-bit bytes and a parity
bit; the PARITY argument is not currently in
use; NOPARITY (the default) means that the
least significant bit is set to 0 on input
and is lost on output.
BINARY calls for a direct transfer of data in 36-bit
bytes
IMAGE same as BINARY
IMAGE BINARY same as BINARY
Output
As each file is copied, the system prints the specifications of
the source and destination files and the word [OK]. The delay
before you see this [OK] indicates how long it took to copy the
file. If you use recognition on the destination file
specification, the system prints, !New Generation!, !New File!,
or !Superseding!, to indicate the status of disk files, or !OK!,
if the file is copied to a non-disk device.
Characteristics
Normal Operation - No Subcommands
For most purposes you do not need subcommands when copying
files. When you do not use subcommands the information is
copied as written, whether in a standard format (usually
ASCII or BINARY) or not.
Optional Subcommands With Paper Tape
Each subcommand, when used to copy information from the
paper tape reader (PTR:), specifies an interpretation of
eight-bit bytes, representated as eight-hole lines on paper
tape. When used with the paper tape punch (PTP:), each
subcommand specifies a mapping of information to the
eight-bit bytes of paper tape.
Optional Subcommands With Other Devices
Each subcommand can be used under particular conditions,
e.g., when transferring files over network facilities (using
DCN: and SRV:), to specify the byte size of information
being copied. In general, you can use COPY command
subcommands whenever you need to specify the byte size of
information being copied.
Hints
Using Devices as Source and/or Destination Filespecs
By specifying a device as the source and/or destination
filespec, you can use the COPY command to transfer
information between card- or paper tape-handling devices,
magnetic tape drives, line printers, terminals, or other
output devices. However, the PRINT and TYPE commands, and
appropriate utility programs (e.g., DUMPER and EDIT), offer
more flexibility for most applications.
Copying To or From TTY:
You can simulate the action of the CREATE command for
creating files by copying from device TTY: to a new
filespec, ending your input with a CTRL/Z; use CTRL/U,
CTRL/R, CTRL/W, and the DELETE key to edit the current
line of terminal input. You can simulate the action of
the TYPE command for displaying files by copying from
an existing filespec to device TTY:.
Spooled Output Action
If you send information to output devices using the
COPY command, your request is processed according to
the status of the SPOOLED-OUTPUT-ACTION parameter,
which you set with the SET SPOOLED-OUTPUT-ACTION
command.
Using Wildcards in Source and/or Destination Filespecs
You can use wildcard characters (* and %) in source and/or
destination filespecs to copy many files at a time. Default
values will be assumed for filespec fields you do not
specify. Note that if you use wildcard characters to copy
more than one source file into a single destination file on
disk, the contents of each source file will appear in a
different generation of the destination file; the highest
generation will contain a copy of the last source file only.
Use the APPEND command to put the contents of several files
into a single file.
Specifying a New Account or Protection Number
The COPY command lets you specify the new file's protection
number, and the account to which storage fees for it will be
charged. Follow the new file specification with a semicolon
(;) and the letter P before giving a new 6-digit protection
number, and with a semicolon and the letter A before giving
a new account (which must be valid for your user name). If
you do not specify an account for a new file, it will take
as default the account you gave in your most recent LOGIN or
SET ACCOUNT command.
Warning
Destroying the Previous Contents of Files
If you give a destination file specification with a
generation number, the source file will be copied into that
file, replacing any previous contents if that generation of
the file already exists. Those contents cannot be
recovered.
Effect on Memory and Terminal
The COPY command does not affect memory and leaves your terminal
at TOPS-20 command level.
Related Commands
APPEND for adding information to a file or
putting the contents of many files
into a single file
RENAME for changing only the specification
of a file
SET SPOOLED-OUTPUT-ACTION for changing the setting of the
SPOOLED-OUTPUT-ACTION parameter,
which determines when files copied
to output devices are processed
Examples
1. Make an extra copy of a file in your connected directory.
@COPY FORT.TXT BACKUP.TXT
FORT.TXT.1 => BACKUP.TXT.3 [OK]
@
2. Copy a file from your directory into another user's
directory, allowing it to be labeled with default file
specifications there.
@ACCESS <SARTINI>
Password:
@COPY TEST1.CBL <SARTINI>
TEST1.CBL.2 => <SARTINI>TEST1.CBL.2 [OK]
@END-ACCESS <SARTINI>
@
3. Use a wildcard character to copy several files from your
directory on another structure to magnetic tape.
@ACCESS SNARK:
@COPY SNARK:NA*.TST MTA2:
SNARK:NACCESS.TST.2 => MTA2:NACCESS.TST [OK}
SNARK:NADVISE.TST.2 => MTA2:NADVISE.TST [OK]
SNARK:NAPPEND.TST.2 => MTA2:NAPPEND.TST [OK]
SNARK:NASSIGN.TST.2 => MTA2:NASSIGN.TST [OK]
SNARK:NATTACH.TST.2 => MTA2:NATTACH.TST [OK]
@END-ACCESS SNARK:
@
4. Use the COPY command to create a short text file.
@COPY TTY: NEW-FILE.TXT
TTY: => NEW-FILE.TXT.2
THIS FILE WAS CREATED USING THE COPY COMMAND.
^Z
@
@TYPE NEW-FILE.TXT
THIS FILE WAS CREATED USING THE COPY COMMAND.
@
CREATE
Function
The CREATE command lets you make files.
Format
@CREATE (FILE) /switch(es) filespec
------ ----------- --------
where
switches are keywords, chosen from the list below, indicating
your choice of CREATE command options
Defaults are shown in the list of switches
--------
filespec is a specification for the file you want to create
Default - the last file specification and
-------
associated switches you gave in a
CREATE or EDIT command during the
current terminal session
Summary of CREATE Command Switches (defaults in boldface)
/BAK
---
/C128
/C64
---
/DECIDE
/DPY
/EXPERT
/INCREMENT:n Default n - 100
----------- -------
/ISAVE:n
/LOWER
/M33
/M37
/NOBAK
/NODECIDE
--------
/NONSEPARATORS
-------------
/NONUMBER
/NOVICE
------
/NUMBER
------
/OLD
/OPTION:name
/PLINES:n Default n - 16
-------- -------
/R
/READONLY
/RONLY
/RUN:filespec Default file type - .EXE
-------
/SAVE:n
/SEPARATORS
/SEQUENCE
--------
/START:n Default n - argument of /INCREMENT switch
------- -------
/STEP:n Default n - 100
------ -------
/UNSEQUENCE
/UPPER
-----
/WINDOW:n Default n - 10
-------- -------
CREATE Command Switches
/BAK causes an unedited copy of the file to be saved
at the end of an editing session under
specification name.Qyp, where name.typ is the
file's original specification
Default
-------
/C128 calls for a 128-character alphabet, allowing
insertion of special control characters
/C64 calls for a 64-character alphabet, preventing
insertion of control characters
Default
-------
/DECIDE lets you decide whether to accept or reject each
change caused by the operation of the S
(substitute) command of the EDIT program
/DPY has no effect in the current monitor
/EXPERT tells the EDIT program that you need only
abbreviated error messages, and fewer warnings
and reminders
/INCREMENT:n specifies the value to add to each line number
of the file to obtain the next line number
Default n - 100
-------
/ISAVE:n instructs the EDIT program to update the backup
file of specification name.Qyp after every n
lines you insert
/LOWER specifies that all alphabetic characters you
type should be considered lowercase characters;
give uppercase characters by preceding the
corresponding lowercase character with a single
quotation mark (').
/M33 has no effect in the current monitor
/M37 has no effect in the current monitor
/NOBAK prevents an unedited copy of the file from being
saved at the end of an editing session under
specification name.Qyp, where name.typ is the
file's original specification
/NODECIDE ensures the automatic operation of the S
(substitute) command of the EDIT program
Default
-------
/NONSEPARATORS specifies that the characters . (period), $
(dollar sign), and % (percent sign) are ordinary
textual characters and not field delimiters
(separators) in the accompanying file
Default
-------
/NONUMBER suppresses the printing of line numbers with
each line of a file
/NOVICE tells the EDIT program that you want to see
complete error messages and all appropriate
warnings; opposite of /EXPERT switch
Default
-------
/NUMBER prints a line number for each line of the file
Default
-------
/OLD causes the first backup file to be saved under
the specification name.Zyp, where name.typ is
the file's original specification
/OPTION:name sets any EDIT switches contained in lines of the
SWITCH.INI file in your log-in directory labeled
with name (of 6 or fewer characters). See the
TOPS-20 EDIT Reference Manual for more
information about SWITCH.INI files.
/PLINES:n specifies how many lines to print in response
to each P (print) command of the EDIT program
Default n - 16
-------
/R same as /READONLY
/READONLY prevents any changes to the file during the
current session of the EDIT program, i.e., makes
it a read-only session
/RONLY same as /READONLY
/RUN:filespec specifies an executable program to be run when
you end the current session of the EDIT program
with the G command
Default file type - .EXE
-------
/SAVE:n instructs the EDIT program to update the backup
file (of specification name.Qyp) after every n
EDIT program commands that modify the file
/SEPARATORS notifies the EDIT program that the characters .
(period), $ (dollar sign), and % (percent sign),
are not ordinary textual characters but are
field separators in the accompanying file
/SEQUENCE tells the EDIT program not to strip the line
numbers from the file when the EDIT session ends
Default
-------
/START:n specifies the first line number for the EDIT
program to use when numbering the file
Default n - argument of /INCREMENT switch
-------
/STEP:n same as /INCREMENT
/UNSEQUENCE tells the EDIT program to strip the line numbers
from the file when the EDIT session ends
/UPPER specifies that all alphabetic characters you
type should be considered uppercase characters;
give lowercase characters by preceding the
corresponding uppercase character with a single
quotation mark (').
Default
-------
/WINDOW:n specifies the number n (between 10 and 99) of
pages to be held in memory during the EDIT
session
Default n - 10
-------
Characteristics
Input Mode and Edit Mode
The CREATE command runs the EDIT system program, first in
Input mode and then in Edit mode. Input mode automatically
begins each line with a line number (unless you have given
the /NONUMBER switch), and allows you to put any alphabetic
or numeric information into the file. When you have
finished doing this and press the ESCAPE key, the EDIT
program puts you into Edit mode and prompts you with an
asterisk (*), just as if you had typed the EDIT command with
the specifications of the newly-created file as argument.
If you want to save the file in its present state, give the
E (for end) command to the EDIT program. Otherwise you can
give any other EDIT command to change or add to the file
before saving it.
Hints
Saving Backup Files Periodically
Give the /ISAVE:n switch to save an updated copy of the file
you are creating after every n lines inserted. Then you
will lose only a few lines of input in the event of a system
failure. The similar /SAVE:n switch is useful for the
CREATE command only in Edit mode, where it saves an updated
copy of the file after every n EDIT program commands that
modify the file.
SWITCH.INI File
If there is a group of CREATE command switches that you
always or often use with CREATE or EDIT commands, put them
into a file of specification SWITCH.INI in your log-in
directory, in a line of that file beginning with EDIT:abc,
where abc is any set of characters you choose to identify
the line. Then if you include the single switch /OPTION:abc
when you give a CREATE or EDIT command, all these switches
will be in effect.
Further Information
For more information about the EDIT program, see the TOPS-20
EDIT Reference Manual.
Effect on Memory
The CREATE command clears memory, then loads the EDIT program
into memory, and leaves your terminal at command level (Input
mode) in that program.
Related Commands
EDIT for modifying existing files
Examples
1. Create a file.
@CREATE FILE1.TXT
Input: FILE1.TXT.1
00100 !THIS IS A SHORT TEXT FILE.
00200
*E
[FILE.TXT.1]
@
2. Create and edit (using the P and R commands to the EDIT
system program) another file.
@CREATE FILEB.TXT
Input:FILEB.TXT.1
00100 !THIS IS ANOTHER SHORT TEXT FILE.
00200
*P
00100 !THIS IS ANOTHER SHORT TEXT FILE.
*R100
00100 !THIS IS A SECOND TEXT FILE.
00200 $
1 Lines (00100/1) deleted
*P
00100 !THIS IS A SECOND TEXT FILE.
*E
[FILEB.TXT.1]
@
3. Create, then execute, a FORTRAN program.
@CREATE FILEE.FOR
Input: FILEE.FOR.1
00100 C THIS IS A SHORT TEST PROGRAM.
00200 TYPE 101
00300 101 FORMAT ( ' THIS IS ONLY A FORTRAN TEST.')
00400 END
00500
*E
[FILEE.FOR.1]
@EXECUTE FILEE.FOR
FORTRAN: FILEE
MAIN.
LINK: Loading
[LNKXCT FILEE Execution]
THIS IS ONLY A FORTRAN TEST.
END OF EXECUTION.
CPU TIME: 0.04 ELAPSED TIME: 0.44
EXIT
@
CREF
Function
The CREF command runs the CREF program, which produces
cross-reference listings from files of type .CRF.
Format
@CREF destination filespec=source filename
---- ----------- --------------- --------
where
destination filespec is the name of the file or device to
which you want to send the processed
contents of the .CRF file
Default - LPT:
-------
source filename is the name of the .CRF file you want to
process
Default - the names of all files of
-------
type .CRF produced during
the current terminal
session
Characteristics
Current .CRF Files
If you have files of type .CRF produced by LOAD-class
commands during the current terminal session, the command
CREF produces listings of them and deletes the files. By
supplying an argument of the form shown in the Format
section above, you can copy the listing for a current .CRF
file to another file or device. To run the CREF program
yourself when you have current .CRF files, give the command
R CREF instead.
.CRF Files From a Previous Session
If your only files of type .CRF were produced during a
previous terminal session, the command CREF puts your
terminal at command level in the CREF program, symbolized by
an asterisk (*). Thus it is equivalent to the command R
CREF in this case.
Hints
Producing .CRF Files
You can produce cross-reference files by including the /CREF
switch in any LOAD-class command that actually causes a
compilation (i.e., is not prevented from doing so by a
/RELOCATABLE switch or by the existence of current object
files).
Preserving .CRF Files After Processing
Give the /P switch immediately after the CREF command to
preserve .CRF files. Ordinarily they are deleted after
being sent to an output device or copied into another file.
Further Information
For a more detailed description of the CREF program,
including all available switches, give the HELP CREF
command.
Effect on Memory and Terminal
The CREF command replaces the contents of memory with the CREF
program and leaves your terminal at TOPS-20 command level, or at
command level within the program (denoted by an asterisk prompt
(*)).
Related Commands
LOAD-class commands for producing .CRF files
Examples
1. Give the CREF command to obtain a listing of your .CRF file.
@CREF
CREF: TESTF1
@
2. Compile two FORTRAN programs, using the /CREF switch to
produce .CRF files. Then give the CREF command to obtain
listings of these, and use the /P switch to preserve the .CRF
files
@COMPILE /CREF TESTF1.FOR, TESTF2.FOR
FORTRAN: TESTF1
MAIN.
FORTRAN: TESTF2
MAIN.
@CREF/P
CREF: TESTF1
CREF: TESTF2
@
3. Determine what .CRF files you have, then mount a tape. Give
the CREF command, and once within the CREF program, have the
cross-reference listing produced from one of these files
copied onto tape. (The .CRF files are not processed
automatically when you give the CREF command because they
were produced during a previous terminal session.)
@DIRECTORY *.CRF
PS:<LATTA>
TESTM1.CRF.2
TESTM2.CRF.1
Total of 2 files
@TMOUNT CRFMAC
[Operator notified]
[MTA3: assigned]
@CREF
*MTA3:=TESTM2
[CRFXKC 4K core]
*^C
@DEASSIGN MTA3:
@
CSAVE
Function
The CSAVE command makes a copy of the program in memory and
stores it in a file, in compressed format.
Format
@CSAVE (ON FILE) filespec (WORDS FROM) n1 (TO) n2, n3 n4,...
----- -------- -- --- -- ------
where
filespec is the file specification under which you
want to store the program
Default filespec - program name.EXE
-------
n1 n2, are pairs of octal numbers specifying the
span(s) of
n3 n4, memory locations you want to save
... Default n1 n2 - 20 to last location
-------
occupied by program
Warning
Inefficiency of CSAVE
The CSAVE command saves in a file in compressed format
whatever program the system finds in memory. When the file
is returned to memory, e.g., by the GET command, this format
prevents other users' programs from sharing the same copy of
the file. Therefore you should ordinarily use the SAVE
command instead for storing programs in executable format.
Effect on Memory and Terminal
The CSAVE command does not affect memory and leaves your terminal
at TOPS-20 command level.
Related Commands
GET for putting a saved file into memory
LOAD for putting source or object files into memory
SAVE usual command for saving programs in executable format
Examples
1. Save your currently loaded program in compressed executable
format.
@CSAVE
DMN.EXE.1 Saved
@
2. Assign a magnetic tape drive. Then load an ALGOL program and
save it in three places in executable format: once in a disk
file under the same filename, again in a disk file under a
new filename, and once on magnetic tape.
@ASSIGN MTA2:
@LOAD TESTA1
LINK: Loading
EXIT
@CSAVE
TESTA1.EXE.1 Saved
@CSAVE BAK
BAK.EXE.1 Saved
@CSAVE MTA2:
MTA2:BAK Saved
@DEASSIGN MTA2:
@
DAYTIME
Function
The DAYTIME command prints the current day, date, and time on
your terminal.
Format
@DAYTIME
-------
Hints
Using DAYTIME
The DAYTIME command, which does not require you to be logged
in, lets you check the system's clock against your own. If
you are saving the output from a hard-copy terminal, use
this command to make a record of the date and time.
Effect on Memory and Terminal
The DAYTIME command does not affect memory and leaves your
terminal at TOPS-20 command level.
Examples
1. Give the DAYTIME command.
@DAYTIME
Friday, April 21, 1978 09:21:19
@
DDT
Function
The DDT command loads or merges a debugging program into memory
(unless one is already there), then starts it.
Format
@DDT
---
Characteristics
If a Debugging Program is Already Loaded
If you have already loaded a debugging program into memory
along with your program, the DDT command starts the
debugging program.
If Your Program, But Not a Debugging Program, is Already Loaded
If a program containing symbols is in memory without a
debugging program, the DDT command merges SYS:UDDT.EXE into
memory, then starts this debugging program.
If Memory is Currently Clear
If you do not have a program in memory, or if your program
does not contain symbols, the DDT command puts SYS:SDDT.EXE
into memory and starts it.
Hints
Using DDT to Create a Program
You can use DDT to begin typing source code directly into
memory, without first putting it into a file for later
compilation and loading. Give a RESET command to clear
memory, then the DDT command. This will load SYS:SDDT.EXE.
Then you can give commands within SDDT to create your own
program. When using the SDDT program, you can use all the
symbols in the system parameter file MONSYM.MAC. See the
TOPS-20 Monitor Calls Reference Manual for more information
about MONSYM.MAC. This method of writing a program is most
useful for testing special cases, or for learning to use
TOPS-20 monitor calls.
Special Cases
Using COBDDT
If you put COBDDT into memory along with a COBOL program,
the DDT command starts the UDDT program, not COBDDT. Use
the REENTER command to start COBDDT in this case.
Effect on Memory and Terminal
The DDT command merges the SYS:UDDT.EXE program into memory and
starts it, or loads and starts SYS:SDDT.EXE. If you have already
loaded a debugging program, the DDT command starts this program.
In each case your terminal is left at command level in the
debugging program.
Related Commands
DEBUG for loading your program along with a particular
debugging program (e.g., FORDDT or COBDDT)
Examples
1. Give the DDT command to begin debugging a program currently
in memory.
@DDT
DDT
2. Give the DEBUG command to debug a FORTRAN program; type a
CTRL/C to return to TOPS-20 command level so you can find out
the current load average for the system. Return to your
debugging program (FORDDT in this case) by giving the DDT
command.
@DEBUG TESTF1
LINK: Loading
[LNKDEB FORDDT Execution]
STARTING FORTRAN DDT
>> ^C
@SYSTAT SYSTEM
Fri 21-Apr-78 13:50:01 Up 36:47:55
35+14 Jobs Load av 0.72 0.81 1.33
@DDT
STARTING FORTRAN DDT
>> START
THIS IS A TEST.
END OF EXECUTION
CPU TIME: 0.04 ELAPSED TIME: 0.33
EXIT
@INFORMATION MEMORY-USAGE
66. pages, Entry vector loc 0 len 254000
0-12 Private R, W, E
400 Private R, W, E
401-466 <SUBSYS>FOROTS.EXE.3 3-70 R, CW, E
@
DEASSIGN
Function
The DEASSIGN command returns a device previously assigned by you
back to the pool of available resources.
Format
@DEASSIGN (DEVICE) dev:
-------- ----
where
dev: is the name of the device you want to deassign; an
asterisk (*) deassigns all devices (except your
log-in terminal) assigned to your job.
Restrictions
Open Files
The DEASSIGN command will not deassign a device that is
accessing an open file. No error is generated, but the
device is not deassigned until that file is closed or until
you log out. When you log out, all devices are deassigned.
Effect on Memory and Terminal
The DEASSIGN command does not affect memory and leaves your
terminal at TOPS-20 command level.
Related Commands
ASSIGN for assigning a particular device
to your job
INFORMATION AVAILABLE DEVICES for finding out which devices are
available, and which ones have
already been assigned to your job
TMOUNT for mounting a magnetic tape and
assigning the first available
tape drive to your job
Examples
1. Deassign a device (in this case a card reader).
@DEASSIGN PCDR0:
@
2. Find out which devices are assigned to your job, then
deassign all of these. Verify that this was done. (Note
that your terminal, in this case TTY222:, is never
deassigned.)
@INFORMATION AVAILABLE DEVICES
Devices available to this job:
DSK, PS, SNARK, PACK, FTN20, MTA2, MT0-7, LPT, LPT0
LPT1, CDR, PCDR0, CDP, FE1-15, PTY15-61, NUL, PLT,
PLT0, DCN, SRV
Devices assigned to/opened by this job: MTA2, MT0,
PCDR0, TTY222, PTY15
TTY222, PTY15
@DEASSIGN *
@INFORMATION AVAILABLE DEVICES
Devices available to this job:
DSK, PS, SNARK, PACK, FNT20, MTA2, MT0-7, LPT, LPT0
LPT1, CDR, PCDR0, CDP, FE1-15, PTY15-61, NUL, PLT,
PLT0, DCN, SRV
Devices assigned to/opened by this job: TTY222
@
DEBUG
Function
The DEBUG command loads your program into memory along with a
debugging program, compiling the source file first if necessary.
Then it starts the debugging program.
Format
@DEBUG (FROM) /switch(es) source/switch(es) object,...
----- ----------- ----------------- ----------
where
switches are keywords chosen from the list below,
indicating your choice of DEBUG command options.
When positioned immediately after a file
specification and before a comma, they apply only
to that file. Otherwise they become global
switches, i.e., default choices for all subsequent
files.
Defaults are shown in the list of switches
--------
source is the file specification of the source program.
The filename must be of 6 or fewer characters, and
the file type of 3 or fewer characters; you
cannot use a generation number. This argument is
not necessary if you supply an object filespec.
object is the file specification of the object program.
The filename must be of six or fewer characters,
and the file type must be .REL; you cannot use a
generation number. This argument is not necessary
if you supply a source filespec.
Default (if you give neither source nor
-------
object filespecs) - last filespecs
and associated switches you gave in a
LOAD-class command
,... means that, after commas, you can give more
arguments (switches, source, and object) of the
form already shown
Summary of DEBUG Command Switches (defaults in boldface)
/ALGOL
/COBOL
/COMPILE
/CREF
/DDT
/DEBUG
/FORTRAN
-------
/LIBRARY
/LIST
/MACRO
/MAP:filespec Default filespec - object
-------
filename.MAP, or
nnnLNK.MAP
/NOCOMPILE
---------
/NODEBUG
-------
/NOLIBRARY
---------
/NOLIST
------
/NOOPTIMIZE
----------
/NOSEARCH
--------
/OPTIMIZE
/RELOCATABLE
/SEARCH
/SYMBOLS
-------
Descriptions of these switches are given below. Although the
system will not reject switches described under any of the
LOAD-class commands, only those switches commonly associated with
DEBUG are described here.
DEBUG Command Switches
/ALGOL compiles the file using the ALGOL compiler
/COBOL compiles the file using the COBOL compiler
/COMPILE forces compilation of the source file even if a
current object file already exists. Use this
switch along with a /LIST or /CREF switch to
obtain listings when you have current object
files.
/CREF creates a file containing cross-reference
information for each compilation. The filename
is that of the object file; the file type is
.CRF. Use the CREF command to obtain a listing
of the file. (For COBOL files, this switch
automatically produces a cross-reference
listing.)
/DDT loads the DDT debugging program along with your
object file
/DEBUG produces an object file containing debugging
information beyond what is usually inserted
during compilation. (For FORTRAN programs only,
and only if you have not given the /OPTIMIZE
switch.)
/FORTRAN compiles the file using the FORTRAN compiler
Default for switches specifying a compiler
-------
language, in the absence of a
standard source file type
/LIBRARY same as /SEARCH
/LIST prints a line printer listing of the program in
ASCII format; the name of this listing is the
filename of the object file. The /CREF switch
overrides /LIST when they both apply to the same
file.
/MACRO assembles the files using the MACRO assembler
/MAP:filespec produces a loader map and stores it in the
indicated file
Default filespec - object.MAP, where object
-------
is the name of the
module containing the
start address; or (if
no start address)
nnnLNK.MAP, where nnn is
your job number.
/NOCOMPILE prevents compilation if the associated object
file is current; otherwise it forces
compilation. Use this switch to cancel a
/COMPILE or /RELOCATABLE switch.
Default
-------
/NODEBUG excludes special debugging information from your
object file. (For FORTRAN programs only.)
/NOLIBRARY same as /NOSEARCH
/NOLIST prevents a line printer listing of the program
Default
-------
/NOOPTIMIZE prevents the generation of a globally optimized
object file. (For FORTRAN programs only.)
Default
-------
/NOSEARCH requires all modules in the object file library
(the file accompanied by this switch in the
command line) to be loaded even if they are not
called by your program. Use this switch to
cancel a /SEARCH switch.
Default
-------
/OPTIMIZE calls for generation of a globally optimized
object file, i.e., one that runs as quickly as
possible. (For FORTRAN programs only, and only
if you do not also give the /DEBUG switch.)
/RELOCATABLE prevents compilation of the source file, forcing
use of an existing object file even if the
object file is out of date
/SEARCH requires that the object file library (the file
accompanied by this switch in the command line)
be searched for modules called by your program
or by a program subroutine. Only these modules
are loaded, along with modules called from the
system libraries, which are always searched.
/SYMBOLS loads a symbol table along with the object file;
helpful for debugging a program.
Default
-------
Characteristics
Compiling New Sources Only
Before debugging programs, the system ordinarily compiles
any source (and only those sources) whose write date is more
recent than that of the object file of the same name. You
can override this action with the /COMPILE or /RELOCATABLE
switch. Note that the DDT debugging program is used when
/RELOCATABLE prevents a new compilation.
Using Standard File Types
If you specify source files with standard types (.FOR, .MAC,
.CBL, or. ALG) in a DEBUG command, the system automatically
calls the appropriate compiler when compilation is
necessary. If you specify source files by filename only,
the system searches your connected directory in the above
order for a file of this name and a standard type. To debug
programs from sources that have nonstandard file types, give
a switch to indicate the proper compiler (/FORTRAN, /MACRO,
/COBOL, or /ALGOL). A switch will take precedence over a
standard file type if they indicate different languages. If
no compiler is indicated with either a switch or a standard
file type, the FORTRAN compiler is used.
Name of Debugging Program Loaded by DEBUG
Ordinarily the DEBUG command causes the appropriate
debugging program to be loaded along with your program
(FORDDT with FORTRAN programs. COBDDT with COBOL programs,
DDT with MACRO and ALGOL programs). Use the /DDT switch to
specify that DDT be used.
Hints
Commas Between Filespecs
If you give two or more filespecs separated by commas as
arguments to DEBUG, the loaded programs exist in memory at
the same time and will act as a single program. You can use
this feature to substitute one module for another under
varying conditions or for different applications.
Plus Signs Between Filespecs
If you give two or more filespecs separated by plus signs
(+) as arguments to DEBUG, they are treated as a single file
by compilers. Their object module is stored under any
filename given as the "object" argument of the command, or
(if none) under the last filename in the group and file type
.REL.
Indirect Files as Arguments
You can store the arguments (source and object filespecs,
switches) of a DEBUG command in an indirect file, and
specify them by typing an at sign (@) and its filespec as a
DEBUG command argument. If you give other filespecs as
well, you must give the indirect file last.
Including all FORTRAN Debugging Information
If you are debugging a FORTRAN program and you wish to
examine line numbers or DO loops, or use statement tracing
or array dimension checking, give the /DEBUG and /COMPILE
switches with the DEBUG command to include the necessary
information.
Running LINK Directly
The DEBUG command automatically runs LINK, the system's
loader program, but if you require control of the loading
process you can run LINK directly. See the TOPS-20 LINK
Reference Manual.
Restrictions
Switches Assuming Compilation
/CREF
/DEBUG
/LIST
/NODEBUG
/NOLIST
/NOOPTIMIZE
/OPTIMIZE
The above switches will not take effect unless the DEBUG
command causes a new compilation of the relevant source
file. See Characteristics - Compiling New Sources Only,
above, for more information.
Effect on Memory and Terminal
The DEBUG command clears memory, loads the appropriate compiler
if necessary, then loads your program and a compatible debugging
program. It leaves your terminal at program command level within
the debugging program.
Related Commands
COMPILE, LOAD, and EXECUTE other LOAD-class commands for
performing related functions
DDT for loading and starting the DDT
debugging program, or for starting
the debugging program you have
already loaded
Examples
1. Debug a FORTRAN program.
@DEBUG FORT.FOR
FORTRAN: FORT
MAIN.
LINK: LOADING
[LNKDEB FOR DDT EXECUTION]
STARTING FORTRAN DDT
>>
2. Debug an optimized FORTRAN program, although there is a
current (but not optimized) object file.
@DEBUG/OPTIMIZE/FORTRAN/COMPILE FORT
FORTRAN: FORT
MAIN.
LINK: LOADING
[LNKDEB FORDDT EXECUTION]
STARTING FORTRAN DDT
>>
3. Using incompatible switches, try to debug a program. (The
system ignores one of them and continues.)
@DEBUG/COMPILE/OPTIMIZE/DEBUG FORT
FORTRAN: FORT
%FTNNOD GLOBAL OPTIMIZATION NOT SUPPORTED WITH
/DEBUG - /OPT IGNORED
MAIN.
LINK: LOADING
[LNKDEB FORDDT EXECUTION]
STARTING FORTRAN DDT
>>
4. Get a time-ordered list of TEST1 files in your directory.
Debug an old version of it.
@TDIRECTORY TEST1.*
WRITE
PS:<LATTA>
TEST1.CBL.2 5-APR-78 13:10:57
.LST.1 6-OCT-77 14:22:00
.REL.1 6-OCT-77 10:08:17
TOTAL OF 3 FILES
@DEBUG TEST1/RELOCATABLE
LINK: LOADING
[LNKDEB DDT EXECUTION]
DDT
DEFINE
Function
The DEFINE command establishes or removes logical names for your
job.
Format
@DEFINE (LOGICAL NAME) name: list
------ ----- ----
where
name: is any combination of up to 39 alphanumeric
characters followed by a colon, that you want to use
as a logical name. Use an asterisk (*) for this
argument to remove all logical names.
list is a series of devices, file structures,
directories, file specifications, and/or other
logical names; each item should be separated from
the others by commas.
Default - not specifying a list removes the
-------
logical name definition
Hints
DEFINE in LOGIN.CMD File
Your DEFINE command is valid for the current terminal
session only. If there are logical names that you always
want to use, put DEFINE commands into a LOGIN.CMD or
BATCH.CMD file in your log-in directory.
Redefining System Logical Names
You can use the DEFINE command to redefine any system
logical name for your own job. By repeating a system
logical name in its own search list you expand its
definition to include the other items, in the order you
specify. Consider the system logical name SYS:, which is
searched whenever you give a program name in place of a
TOPS-20 command. If you redefine SYS: to be <directory>,
SYS: you can run programs in <directory> by typing just
their names. This will work as long as the program names
are not the same as TOPS-20 commands.
Logical Names as Dummy Filespecs
You can use logical names as dummies for filespecs or
devices when writing programs. Then, just before running
such a program, use the DEFINE command to define these as
real filespecs or devices, without changing the program
itself.
More Information
For more information about using logical names, see the
TOPS-20 User's Guide.
Restriction
Using Short Logical Names Only
Although logical names can be up to 39 characters long and
can include dollar signs ($), hyphens (-), and underlines
( ), some commands and programs (e.g., programs originally
written for the TOPS-10 operating system) accept a more
limited set of logical names. These can be no more than 6
characters long and cannot include any special symbols. If
all your logical names are of this kind, they will be
acceptable to any TOPS-20 programs and commands.
Effect on Memory and Terminal
The DEFINE command does not affect memory and leaves your
terminal at TOPS-20 command level.
Related Commands
INFORMATION LOGICAL-NAMES for finding out the current
definitions of logical names
Examples
1. Define a logical name for your job.
@DEFINE LGN: <MANUALS>, <SARTINI>
@
2. Remove the logical name.
@DEFINE LGN:
@
3. Define a logical name to be a set of directories to which you
have access. Then use the logical name to copy a file from
one of them into your connected directory.
@DEFINE MSM: <MANUALS>, <SARTINI>, <MCELMOYLE>
@COPY MSM:4-UPED.TXT
<MCELMOYLE>4-UPED.TXT.1 => 4-UPED.TXT.1 [OK]
@
DELETE
Function
The DELETE command marks one or more files for eventual erasure.
Format
@DELETE (FILES) filespec,...,
------ -------------
@@subcommand
----------
where
filespec is the specification of a file that
you want to delete
Default .gen - all generations
-------
of the
specified files
,... means that after commas you can
give more file specifications
,
@@ means that after a final comma you
can give subcommands on the next
line
subcommand is a keyword, chosen from the list
below, indicating your choice of
DELETE command options
DELETE Command Subcommands
DIRECTORY is used to delete and automatically
expunge directory files without
making their disk space available
to the files of other users; for
users with enabled Wheel or
Operator capabilities only.
EXPUNGE immediately and permanently erases
the specified files from the
directory
FORGET is used to delete and immediately
expunge the specified files without
making their disk space available
to the files of other users; for
users with enabled Wheel or
Operator capabilities only.
KEEP n saves the n most recent generations
of the specified files while
deleting the rest
Default n - 1
-------
Characteristics
Privileged Subcommands to DELETE
The DIRECTORY and FORGET subcommands to the DELETE command
are intended for privileged users only, and only as a last
resort, because they withhold freed disk space from system
use. Users with enabled Wheel or Operator capabilities can
run the CHECKD program to recover this disk space.
DIRECTORY should not be used unless the KILL subcommand to a
BUILD command fails to delete the directory. FORGET is for
removing damaged files from directories, and should not be
used unless DELETE without subcommands fails to delete the
file.
Hints
Removing Open Files
If DELETE with the EXPUNGE subcommand fails to erase a file,
it may be that some job in the system has opened it. The
INFORMATION FILE-STATUS command tells whether your own job
has done so. If it has, give the CLOSE or (if the file is
mapped) RESET command before repeating DELETE and EXPUNGE.
Special Cases
Files With the "Permanent" Attribute
The system erases only the contents of any files that have
the Permanent attribute (e.g., MAIL.TXT in your log-in
directory) when you include them in a DELETE command. Their
file specifications remain among your deleted files, and
cannot be removed by TOPS-20 commands.
Warning
Erasure of Deleted Files
Ordinarily an UNDELETE command given during the same
terminal session as an original deletion will recover the
deleted files, unless you included the EXPUNGE subcommand to
DELETE or gave a subsequent EXPUNGE command. However, if
any user or a batch job logs out while connected to your
directory, all deleted files are permanently erased. Also,
if available disk space is low on the system, the operator
or the system itself may expunge all deleted files even
though you have not logged out. A warning message is
usually sent before this happens.
Effect on Memory and Terminal
The DELETE command does not affect memory and leaves your
terminal at TOPS-20 command level.
Related Commands
DIRECTORY-class commands for obtaining lists of file
specifications
EXPUNGE for permanently removing deleted
files
UNDELETE for retrieving deleted files
Examples
1. Delete two of your files.
@DELETE TTY.SCM, VERCBL.BAT
TTY.SCM.1 [OK]
VERCBL.BAT.2 [OK]
@
2. Delete all your object files and all your backup files
produced by the EDIT program. Then log out (this will
expunge them).
@DELETE *.REL, *.Q*
TESTA1.REL.1 [OK]
TESTF1.REL.1 [OK]
TESTC1.QBL.2 [OK]
TESTF1.QOR.4 [OK]
@LOGOUT
Killed Job 32, User J.L.PAGE, Account 341, TTy 41
at 25-Apr-78 10:15:51, Used 0:1:46 in 1:23:59
3. Delete some files, and check what files are currently deleted
in your connected directory. Give the UNDELETE command for
two of these, then expunge the remaining deleted files and
verify that they are gone.
@DELETE *.QXT
4-UPED.QXT.7 [OK]
MAIL.QXT.1 [OK]
REMARK.QXT.3 [OK]
@DIRECTORY
@@DELETED
@@
PS:<J.L.PAGE>
4-UPED.QXT.1,2,3,4,5,6,7
.TXT.7,8,9
MAIL.QXT.1
MEMO.QMD.1
REMARK.QXT.1,2,3
TTY.SCM.1
VERCBL.BAT.2
Total of 17 files
@UNDELETE TTY.SCM, VERCBL.BAT
TTY.SCM.1 [OK]
VERCBL.BAT.2 [OK]
@EXPUNGE
PS:<J.L.PAGE> [8 pages freed]
@DIRECTORY
@@DELETED
@@
@
DEPOSIT
Function
The DEPOSIT command modifies the contents of a specific memory
location.
Format
@DEPOSIT (MEMORY LOCATION) octal address (CONTENTS) octal number
------- ----- ------- ----- ------
Output
Status of Pages
When you complete a DEPOSIT command, the system gives you a
message indicating the status of the page you are trying to
change: "[New]" for previously-nonexistent pages,
"[Shared]" for those having Copy-on-Write status, or "?Can't
write that page" for other pages. (See also Hints - Setting
the Page-access of Memory Pages, below.) However, no
message is printed for deposits made after the first
successful modification to that page.
Hints
Using DDT Instead
Usually the DEPOSIT command is unnecessary, as the DDT
program provides more powerful methods for modifying the
contents of memory.
Abbreviating DEPOSIT Arguments
The contents of each memory location are represented as two
6-digit octal numbers. By inserting a pair of commas
between these two numbers, you can abbreviate them. For
example, to deposit 000004000050 into memory location
151003, use the command
@DEPOSIT 151003 4,,50
This is the same as
@DEPOSIT 151003 4000050
Note that the DEPOSIT command itself can be abbreviated by
the single letter D.
Setting the Page-access of Memory Pages
If the system responds to a DEPOSIT command with an error
message of the form, "?Can't write that page", give the SET
PAGE-ACCESS COPY-ON-WRITE command for the page. Then give
DEPOSIT again. If the system allows it, you will be given
your own copy of the page to modify.
Using DEPOSIT With Inferior Processes
To modify memory for a process inferior to the one
immediately below the TOPS-20 command processor, you must
give the FORK command to specify this process before using
DEPOSIT. Remember that for an inferior process to run, all
superior processes must be running too. INFORMATION
PROGRAM-STATUS tells you which processes these are.
Effect on Memory and Terminal
The DEPOSIT command changes one location in memory and leaves
your terminal at TOPS-20 command level.
Related Commands
DDT for calling a debugging program,
allowing more efficient modification
of memory
EXAMINE for displaying the contents of a
specific memory location
FORK for selecting the process whose
memory you want to modify
INFORMATION MEMORY-USAGE for displaying a list of memory
pages, their contents and status
SET PAGE-ACCESS for making it possible to write to
specified pages
Examples
1. Deposit a value in a memory location.
@DEPOSIT 1500 21
@
2. Try to deposit a number into a page of memory that does not
allow it. Examine memory, set the page to Copy-on-Write
status, and try again (succeeding this time).
@DEPOSIT 716505 0
?Can't write that page
@INFORMATION MEMORY-USAGE
216. pages, Entry vector loc 462207 len 254000
0-11 Private R, W, E
20 Private R, W, E
400-401 Private R, W, E
402-660 <FIELD-IMAGE>FORTRA.EXE.3 13-271 R, CW, E
700-730 <NEXT-RELEASE>PA1050.EXE.4 1-31 R, E
731-733 Private R, W, E
@SET PAGE-ACCESS 716 COPY-ON-WRITE
@DEPOSIT 716505 0
[Shared]
@EXAMINE 716505
716505/ 0
@
3. Check your program status (the arrow (=>) indicates your
current process (fork)). Select an inferior process, deposit
a value into a memory location, and verify that memory for
the superior process is not changed to this.
@INFORMATION PROGRAM-STATUS
Used 0:00:05 in 0:10:11
TOPS-20: 0:00:03.5
SET UUO-SIMULATION (FOR PROGRAM)
SET CONTROL-C-CAPABILITY (OF PROGRAM)
=> Fork 1: HALT at 16176, 0:00:00.3
Fork 2: HALT at 472052, 0:00:00.1
@FORK 2
@DEPOSIT 3500 12
@EXAMINE 3500
3500/ 12
@FORK 1
@EXAMINE 3500
3500/ 202200,,1136
@
DETACH
Function
The DETACH command disengages your current job from your
terminal.
Format
@DETACH (AND) argument
------ --------
where
argument can be one of these:
CONTINUE - directs the current program
to proceed, just as if you
had typed the CONTINUE
command
REENTER - reenters the current program,
just as if you had typed the
REENTER command
START - starts the current program,
just as if you had typed the
START command
Defaulting "argument" leaves the
----------
program in its present state
(usually suspended)
Characteristics
Inefficiency of Detached Jobs
Detached jobs use scarce system resources (e.g., swapping
space, process slots, job slots) and can prevent new users
from logging in.
Warning
Programs Writing to TTY:
If a program running in a detached job attempts to write to
device TTY:, the job will "hang" until it is again attached
to a terminal.
Effect on Memory, Job, and Terminal
The DETACH command affects your job according to the argument you
select, and leaves your terminal disengaged from the system in
the state before log-in. It does not affect memory for the
detached job.
Related Commands
ATTACH for joining a detached job to your terminal
SUBMIT for running independent jobs
UNATTACH for disengaging another job from its terminal
Examples
1. Detach your job.
@DETACH
Detaching job # 16
2. Detach your job while starting the program in memory, then
log in again.
@DETACH START
Detaching job # 45
SYSTEM 2102 DEVELOPMENT SYSTEM, TOPS-20 Monitor
3A(1512)
@LOGIN LATTA 341
Job 56 on TTY222 28-Apr-78 14:55:03
@
3. Log in and put a program in memory; detach the job while
starting this program, and repeat the entire procedure. Log
in a third time and begin execution of a third program.
Interrupt this execution with CTRL/C, then detach this third
job while continuing its program. Now you have three jobs
running at once. Instead of logging in again, attach the
first job (specifying the job number) and verify the system's
action.
@LOGIN LATTA 341
Job 5 on TTY230 28-Apr-78 14:38:09
@GET DMN
@DETACH START
Detaching job # 5
SYSTEM 2102 DEVELOPMENT SYSTEM, TOPS-20 Monitor
3A(1512)
@LOGIN LATTA 341
Job 22 on TTY222 28-Apr-78 14:42:03
@GET TESTA1
@DETACH START
Detaching job # 22
SYSTEM 2102 DEVELOPMENT SYSTEM, TOPS-20 Monitor
3A(1512)
@LOGIN LATTA 341
Job 53 on TTY222 28-Apr-78 14:44:02
@EXECUTE TESTF1
FORTRAN: TESTF1
MAIN.
LINK: Loading
[LNKXCT TESTF1 Execution]
^C
@DETACH CONTINUE
Detaching job # 53
SYSTEM 2102 DEVELOPMENT SYSTEM, TOPS-20 Monitor
3A(1512)
@ATTACH LATTA
?Job # required - LATTA has more than one detached job
@ATTACH LATTA 5
Password:
EXIT
@INFORMATION JOB
Job 5, User LATTA, Account 341, TTY222
@SYSTAT LATTA
5* 222 EXEC LATTA
22 DET TESTA1 LATTA
53 DET TESTF1 LATTA
@
DIRECTORY
Function
The DIRECTORY command prints information about the files in a
directory.
Format
@DIRECTORY (OF FILES) filespec,...,
--------- -------------
@@subcommand
----------
@@ .
-
.
-
.
-
where
filespec is the specification of a file in the
given directory, about which you want
information
Default - *.*.* in your connected
-------
directory
,... means that, after commas, you can give
more arguments of the kind already shown
@@ , means that, after a final comma, you can
@@ . give one or more subcommands on
. successive lines
.
.
subcommand is a keyword, chosen from the list
below, indicating your choice of
DIRECTORY command options
Defaults are shown in the list of
--------
subcommands
Summary of DIRECTORY Command Subcommands (defaults in boldface)
ACCOUNT
ALPHABETICALLY
--------------
BEFORE date and/or time
BY-PAGES
--------
CHECKSUM SEQUENTIALLY
WRITE
-----
CHRONOLOGICAL CREATION
READ
CRAM
WRITE
-----
DATES CREATION
READ
DELETED
DOUBLESPACE
EVERYTHING
FIND number of generations Default number - 1
-------
GENERATION-RETENTION-COUNT
HEADING
-------
LARGER number of pages
LENGTH
LPT
HEADING
-------
NO FILE-LINES
SUMMARY-LINES
OUTPUT filespec Default filespec - DIR.DIR
-------
PROTECTION
REVERSE
SEPARATE
SINCE date and/or time
SIZE
SMALLER number of pages
WRITE
-----
TIMES CREATION
READ
USER WROTE
-----
CREATED
DIRECTORY Command Subcommands
ACCOUNT prints the account to which
storage fees for the files are
charged
ALPHABETICALLY lists the files in alphabetical
order
Default
-------
BEFORE date and time restricts listing to files last
written before the date and time
given
SEQUENTIALLY
CHECKSUM BY-PAGES computes and prints 6-digit octal
checksums for the files, either
sequentially and without going
beyond the EOF (end-of-file)
mark, or
by pages on disk, accounting
for holes in files and pages
beyond the EOF mark; output
will be followed by letter P in
this case.
Default - BY-PAGES
-------
CREATION
CHRONOLOGICAL WRITE lists files in order (oldest
READ first) according to
date of creation, or
date they were last changed, or
date they were last read
Default - WRITE
-------
CRAM compresses formats to reduce
printing space and time
CREATION
DATES WRITE lists files in order (oldest
READ first) according to
date of creation, or
date they were last changed, or
date they were last read
Default - WRITE
-------
DELETED limits descriptions to deleted
files that have not yet been
expunged
DOUBLESPACE double-spaces the DIRECTORY
command output
EVERYTHING prints, in this order, the
following information about the
files - file specification;
protection; account number; size
in pages and in bytes (and
associated byte size); generation
retention count; date and time of
creation, and of last change
(Write) and last time read; the
name of the user who created the
file, and of the user who last
changed or added to the file.
FIND n prints the specifications of all
but the n most recent generations
of the files
Default n - 1
-------
GENERATION-RETENTION-COUNT tells the number of generations of
each file the system will retain
in the given directory
HEADING prints a headline labeling each
category of information supplied
by the command
Default
-------
LARGER n lists only files of size greater
than n pages
LENGTH gives the file length in bytes and
the associated byte size
LPT directs the command output to the
line printer instead of to your
terminal
FILE-LINES
NO HEADING suppresses printing of the
SUMMARY-LINES
file lines, which give all the
information specific to a file,
or
heading, a line of explanatory
words above the columns of
output, or
summary lines, which follow the
output for each DIRECTORY
command, giving a total
file-count (and page-count and
checksum, if required by
subcommands)
Default - HEADING
-------
OUTPUT filespec directs the command output to the
specified file rather than to your
terminal
Default filespec - DIR.DIR
-------
PROTECTION prints the protection code
(protection number) of the file
REVERSE causes an ordering subcommand,
i.e., ALPHABETICALLY or
CHRONOLOGICAL, to arrange its
output in reverse
SEPARATE lists the complete specification
for each file on a separate line
(instead of listing successive
generation numbers of the file on
the same line, separated by
commas; and instead of listing
files of the same name and
different type by file type only,
indented under the first complete
file specification)
SINCE date and time limits listing to files last
written after the date and time
given
SIZE prints the size of the files in
pages
SMALLER n lists only files of size less than
n pages
CREATION
TIMES WRITE lists, for the specified files,
READ the
time and date of creation, or
time and date they were last
changed, or
time and date they were last
read
Default - WRITE
-------
CREATED
USER WROTE gives the name of the user who
created the file, or
changed the file last
Default - WRITE
-------
Hints
Listing Unneeded Files
In preparation for deleting files so that your directory
will fall within disk quotas, you can get a list of your
largest files by using the LARGER and/or SIZE subcommands,
and of your oldest or least-used files with DATES, TIMES,
and BEFORE. With FIND you can discover extra generations of
files.
Finding Files of a Particular Age or Size
To examine only files of a certain age or size, give the
pair of subcommands BEFORE and SINCE, or LARGER and SMALLER,
with appropriate arguments.
Comparing Checksums of Files
You can use the numbers reported by the CHECKSUM subcommand
to compare two files: if they have differing contents they
will almost certainly yield different values; and identical
files will have the same checksums. The CHECKSUM subcommand
causes a checksum of checksums as well.
Effect on Memory and Terminal
The DIRECTORY command does not affect memory and leaves your
terminal at TOPS-20 command level.
Related Commands
FDIRECTORY (Full DIRECTORY)
other DIRECTORY-class
TDIRECTORY (Time-ordered DIRECTORY) commands for performing
related functions
VDIRECTORY (Verbose DIRECTORY)
Examples
1. Obtain a listing of your files.
@DIRECTORY
PS:<HERRICK>
4-UPED.TXT.13
ACCT20.FOR.1
DUMPER.MAC.1
F-O.DIRECTORY.1
FORD.CTL.2,3,4,5,6
MEMO.CMD.1
.FIL.1
.FRM.2
MULTIP.FOR.2
Total of 13 files
@
2. Use a DIRECTORY command with the EVERYTHING subcommand to get
complete information on the specified file.
@DIRECTORY VERCBL.BAT,
@@EVERYTHING
@@
PGS Bytes (SZ) Ret Creation
Write Read Creator Writer
PS:<HERRICK>
VERCBL.BAT.2;P777700;A341 2 4215(7) 1 16-Apr-76
07:25:54 16-Apr-76 07:25:54 Never HERRICK HERRICK
@
3. Use a DIRECTORY command with a filespec consisting of
wildcard characters and the account attribute (;A) to find
out which files' storage fees are being charged to account
MONITOR.
@DIRECTORY *.*;AMONITOR
PS:<HERRICK>
FORD.CTL.2
MEMO.FRM.2
Total of 2 files
@
4. Find out what files of type .TXT there are in your connected
directory and in one to which you have group rights.
@DIRECTORY *.TXT, <SARTINI>*.TXT
PS:<HERRICK>
4-UPED.TXT.13
MAIL.TXT.1
REMARK.TXT.4
Total of 3 files
PS:<SARTINI>
CHAP21.TXT.33
CHAPT2.TXT.16
CHAPT3.TXT.8
PRIVATE.TXT.1
TEST.TXT.1
Total of 5 files
Grand total of 8 files
@
5. Give a DIRECTORY command with the BEFORE and SINCE
subcommands to find out which files were changed during the
week of March 6, 1978.
@DIRECTORY,
@@BEFORE 3-12-78
@@SINCE 3-5-78
@@
PS:<HERRICK>
DIVIDE.FOR.4
MULTIP.FOR.2
QUOTNT.EXE.1
SQUARE.EXE.1
Total of 4 files
@
DISABLE
Function
The DISABLE command suspends any special capabilities, such as
those of Wheel or Operator, that the system manager has given
you.
Format
$DISABLE (CAPABILITIES)
-------
@
Characteristics
Resumption of Standard Prompt
The DISABLE command causes the system to resume the standard
at sign prompt (@) in place of the dollar sign prompt ($),
which indicated enabled capabilities.
Warning
Disabling Promptly
Be sure to disable your capabilities as soon as you have
finished using them, so that you or a program that issues
commands for you cannot accidentally damage the system.
Effect on Memory and Terminal
The DISABLE command does not affect memory and leaves your
terminal at TOPS-20 command level.
Related Commands
ENABLE for activating any capabilities that the system
manager has given you
Examples
1. Disable your capabilities.
$DISABLE
@
2. Try copying a file from a directory to which you have no
access. Then enable your capabilities (assuming you have
been granted capabilities), copy the file, and give up your
capabilities with the DISABLE command.
@COPY <MON-SPCS>FFE.SPC
?Directory access privileges required
@ENABLE
$COPY <MON-SPCS>FFE.SPC
<MON-SPCS>FFE.SPC.1 => FFE.SPC.2 [OK]
$DISABLE
@
EDIT
Function
The EDIT command lets you change or add to a file in a directory.
Format
@EDIT (FILE) /switch(es) input filespec (OUTPUT AS) output filespec
---- ----------- ----- -------- ------ --------
where
switches are keywords, chosen from the list below,
indicating your choice of EDIT command
options
Defaults are shown in the list of
--------
switches
input filespec is the specification of the file you want to
edit
Default - last file specification and
-------
associated switches you gave
in a CREATE or EDIT command
during the current terminal
session
output filespec is the specification with which you want to
name the edited file
Default - the input file specification,
-------
but with the next higher
generation number
Summary of EDIT Command Switches (Defaults in boldface)
/BAK
---
/C128
/C64
---
/DECIDE
/DPY
/EXPERT
/INCREMENT:n Default n - 100
----------- -------
/ISAVE:n
/LOWER
/M33
/M37
/NOBAK
/NODECIDE
--------
/NONSEPARATORS
-------------
/NONUMBER
/NOVICE
------
/NUMBER
------
/OLD
/OPTION:name
/PLINES:n Default n - 16
-------- -------
/R
/READONLY
/RONLY
/RUN:filespec Default file type - .EXE
-------
/SAVE:n
/SEPARATORS
/SEQUENCE
--------
/START:n Default n - argument of INCREMENT switch
------- -------
/STEP:n Default n - 100
------ -------
/UNSEQUENCE
/UPPER
-----
/WINDOW:n Default n - 10
-------- -------
EDIT Command Switches
/BAK causes an unedited copy of the file to be
saved at the end of an editing session under
the specification name.Qyp, where name.typ is
the file's original specification
Default
-------
/C128 specifies a 128-character alphabet, allowing
insertion of special control characters
/C64 specifies a 64-character alphabet, preventing
insertion of control characters
Default
-------
/DECIDE lets you decide whether to accept or reject
each change caused by the operation of the S
(substitute) command of the EDIT program
/DPY has no effect in the current monitor
/EXPERT tells the EDIT program that you need only
abbreviated error messages, and fewer warnings
and reminders
/INCREMENT:n specifies the value that will be added to each
line number of the file to obtain the next
line number
Default n - 100
-------
/ISAVE:n instructs the EDIT program to update the
backup file of specification name.Qyp after
every n lines you insert, instead of only at
the end of the EDIT session
/LOWER specifies that all alphabetic characters you
type should be considered lowercase
characters; give uppercase characters by
preceding the corresponding lowercase
character with a single quotation mark (').
/M33 has no effect in the current monitor
/M37 has no effect in the current monitor
/NOBAK prevents an unedited copy of the file from
being saved at the end of an editing session
under specification name.Qyp, where name.typ
is the file's original specification
/NODECIDE ensures the automatic operation of the S
(substitute) command of the EDIT program
Default
-------
/NONSEPARATORS notifies the EDIT program that the characters
. (period), $ (dollar sign), and % (percent
sign) are to be regarded as ordinary textual
characters and not as field delimiters
(separators) in the file being edited
Default
-------
/NONUMBER suppresses the printing of line numbers with
each line of a file
/NOVICE tells the EDIT program that you want to see
complete error messages and all appropriate
warnings and reminders; opposite of /EXPERT
switch.
Default
-------
/NUMBER prints a line number for each line of the file
Default
-------
/OLD causes the first backup file to be saved under
the specification name.Zyp, where name.typ is
the file's original specification
/OPTION:name sets any EDIT switches contained in lines of
your PS:SWITCH.INI file labeled with name (of
6 or fewer characters)
/PLINES:n specifies how many lines to print in response
to each P (print) command of the EDIT program
Default n - 16
-------
/R same as /READONLY
/READONLY prevents any changes to the file during the
current session of the EDIT program, i.e.,
makes it a read-only session
/RONLY same as /READONLY
/RUN:filespec specifies the program to be run when you end
the current session of the EDIT program with
the G command
Default file type - .EXE
-------
/SAVE:n instructs the EDIT program to update the
backup file of specification name.Qyp after
every n EDIT program commands that modify the
file
/SEPARATORS notifies the EDIT program that the characters
. (period), $ (dollar sign), and % (percent
sign) are not ordinary textual characters but
are field separators in the accompanying file
/SEQUENCE tells the EDIT program not to strip the line
numbers from the file when the EDIT session
ends
Default
-------
/START:n specifies the first line number for the EDIT
program to use when numbering the file
Default n - argument of /INCREMENT switch
-------
/STEP:n same as /INCREMENT
/UNSEQUENCE tells the EDIT program to strip the line
numbers from the file when the EDIT session
ends
/UPPER specifies that all alphabetic characters you
type should be considered uppercase
characters; give lowercase characters by
preceding the corresponding lowercase
character with a single quotation mark (').
Default
-------
/WINDOW:n specifies the number n (between 10 and 99) of
pages to be held in memory during the EDIT
session
Default n - 10
-------
Characteristics
Edit Mode or Input Mode
The EDIT command runs the EDIT system program in Edit mode,
which uses an asterisk prompt (*). In Edit mode you can use
any EDIT program commands to modify the specified file. If
the EDIT program starts by printing the word Input instead
of Edit, the specified file does not yet exist. You are
then in Input mode, just as if you had used the CREATE
command instead of EDIT. See the CREATE command description
for details.
Saving Backup Files Periodically
Whenever you use EDIT, be sure to keep an extra copy of the
file you are modifying, in case of a system failure. By
default the system renames the unedited copy of your file to
name.Qyp at the end of an editing session. By using the
/SAVE:n switch you can have this backup file updated
periodically during the editing session to reflect your
edits.
SWITCH.INI File
If there is a group of EDIT command switches that you always
or often use with EDIT or CREATE commands, put them into a
file of specification SWITCH.INI in your log-in directory,
in a line of that file beginning with "EDIT:abc", where abc
is any set of characters you choose to identify the line.
Then if you include the single switch /OPTION:abc when you
give an EDIT or CREATE command, all these switches will be
in effect.
Hints
Debugging Your Programs and Editng the Sources
You can use EDIT to modify files containing source programs
written in a programming language. The DDT and DEBUG
commands run system programs that offer more efficient and
powerful techniques for testing temporary corrections to
your programs, but you should use the EDIT command to make
final changes to the source files.
Further Information
For more information about the EDIT program, see the TOPS-20
EDIT Reference Manual.
Effect on Memory and Terminal
The EDIT command clears memory, then loads the EDIT system
program into memory, and leaves your terminal at command level
(Edit mode) in that program.
Related Commands
CREATE for making new files
DIRECTORY-class commands for getting lists of existing files
Examples
1. Edit a file.
@EDIT FILE.FOR
Edit: FILE.FOR.1
*
2. Edit a file, requesting that an updated copy of the file be
saved after every three EDIT program commands; ask that the
first such backup file be saved under specification FILE.ZOR.
@EDIT /SAVE:3/OLD FILE.FOR
Edit: FILE.FOR.1
*
3. Edit a large text file, adjusting several EDIT program
parameters as you begin, and give new specifications for the
output file.
@EDIT /EXP/DEC/PLINES:50/WIN:99 REMARK.TXT REVISION.TXT
Edit: REMARK.TXT.18
*
4. Create a SWITCH.INI file with one line for the switches used
in Example 2, and one line for those in Example 3. Use this
file to repeat Example 3.
@CREATE SWITCH.INI
Input: SWITCH.INI.1
00100 EDIT:ABC/SAVE:3/OLD
00200 EDIT:DEF/EXPERT/DECIDE/PLINES:50/WINDOW:99
00300
*E
[SWITCH.INI.1]
@EDIT /OPTION:DEF REMARK.TXT REVISION.TXT
Edit: REMARK.TXT.18
*
ENABLE
Function
The ENABLE command activates any special capabilities, such as
those of Wheel or Operator, that the system manager has given
you.
Format
@ENABLE (CAPABILITIES)
------
$
Characteristics
Dollar Sign Prompt
The ENABLE command causes the system to print a dollar sign
prompt ($), indicating enabled capabilities, in place of the
standard at sign prompt (@). The dollar sign prompt is
printed after ENABLE even if you have not been granted any
capabilities.
Capabilities of Log-In Directory Only
The ENABLE command activates only these capabilities that
have been granted to the owner of your log-in directory.
You do not receive any capabilities as a result of CONNECT
or ACCESS commands or group memberships.
Warning
Disablng Capabilities Promptly
Because your commands are much more powerful if you have
capabilities enabled, you should disable them as soon as you
have finished using them. Otherwise you or a program that
issues commands for you could accidentally damage the
system.
Effect on Memory and Terminal
The ENABLE command does not affect memory and leaves your
terminal at TOPS-20 command level.
Related Commands
DISABLE for suspending any capabilities that
the system manager has given you
INFORMATION DIRECTORY for finding out which capabilities, if
any, have been granted to the owner of
a directory
Examples
1. Enable your capabilities.
@ENABLE
$
2. Try to assign a magnetic tape drive to your job before taking
it off line for repairs. But it is already assigned to
another user, whose terminal is set to refuse links. Enable
your capabilities and ask him to deassign the tape drive.
Then disable capabilities.
@ASSIGN MTA2:
?MTA2: Already assigned to job 29
@SYSTAT 29
29 53 EXEC R.SCHNEIDER
@TALK R.SCHNEIDER
?Refused, use "MAIL" to send mail to user
@ENABLE
$TALK R.SCHNEIDER
LINK FROM F.DOMINO, TTY 221
$;ROBIN - PLEASE DEASSIGN MTA2:. IT MUST BE TAKEN OFF
LINE FOR
$;MAINTENANCE. USE MTA3: INSTEAD. THANKS.
@;OKAY, SURE.
@DEASSIGN MTA2:
@
$BREAK
$DISABLE
@
END-ACCESS
Function
The END-ACCESS command terminates your ownership rights to an
accessed directory, as well as group rights borrowed from its
owner.
Format
@END-ACCESS (TO DIRECTORY) dev:<directory>
---------- ---------------
where
dev:<directory> is the directory to which you want to end
access
Default dev: - your connected structure
-------
Default <directory> - the directory (on
-------
the specified
structure) of the
same name as your
connected
directory
Hints
Implicit END-ACCESS
You can access only one directory at a time on each mounted
structure. Each ACCESS command ends access obtained by any
previous ACCESS command for a directory on the specified
structure. Therefore you do not need to give the END-ACCESS
command if you access another directory on the structure, or
if the structure is dismounted.
Restoring Previous Rights
END-ACCESS does not restore owner and group rights obtained
by a previous ACCESS command for the specified structure.
Give another ACCESS command to regain these. (Note that you
must access your log-in directory to regain group rights
obtained by the LOGIN command, lost by accessing another
directory on PS:.)
Effect on Memory and Terminal
The END-ACCESS command does not affect memory and leaves your
terminal at TOPS-20 command level.
Related Commands
ACCESS for obtaining ownership rights to a directory and
the group rights of the owner
SDISMOUNT for decrementing the mount count of a
previously-accessed structure
Examples
1. Give up your access rights to another user's directory.
@END-ACCESS <HOLLAND>
@
2. Access another user's directory, copy a file from it, and
give up your rights to it. Then give a command that depends
on your own group rights. (It fails.) Access your own
directory to establish these, and repeat the command,
successfully this time.
@ACCESS <HOLLAND>
Password:
@COPY <HOLLAND>DIST.LST
<HOLLAND>DIST.LST.2 => DIST.LST.2 [OK]
@END-ACCESS <HOLLAND>
@INFORMATION DIRECTORY <LATTA.*>,
?No such directory
@ACCESS <LATTA>
@INFORMATION DIRECTORY <LATTA.*>,
@@NAME-ONLY
@@
Name PS:<LATTA.A>
Name PS:<LATTA.A.F-O>
@
3. Mount a structure, and access a user's directory there. Get
a listing of his files of type .TXT. End the access and
dismount the structure.
@SMOUNT SNARK:
Structure SNARK: mounted
@ACCESS SNARK:<HOLLAND>
Password:
@DIRECTORY SNARK:<HOLLAND>*.TXT
SNARK:<HOLLAND>
ACCT.TXT.1
MAIL.TXT.2
REMARKS.TXT.1
SYSTEM.TXT.1
Total of 4 files
@END-ACCESS SNARK:<HOLLAND>
@SDISMOUNT SNARK:
Structure SNARK: dismounted
@
EOF
Function
The EOF command writes an end-of-file mark on the specified
magnetic tape.
Format
@EOF (DEVICE) dev:
--- ----
where
dev: is the name of the magnetic tape drive on which you
want to write an end-of-file mark
Hints
EOF Seldom Needed
Because tape-writing programs and commands automatically
write end-of-file marks in the appropriate places, you do
not ordinarily need the EOF command. But it can be useful
if such a program is interrupted (by your CTRL/C or by a
system failure and restart) and you want to preserve the
information already written. Also, you can shorten files on
an existing tape by giving an EOF command at the desired
point.
Restrictions
EOF With Open Files
If you have given a CTRL/C to exit from a program that has
opened a magnetic tape drive and you then give the EOF
command for that tape drive, the system will first allow you
to close the associated file. You must do so for the EOF
command to succeed, but you will probably be unable to
continue the program from that point, because the file will
now be closed.
Effect on Memory and Terminal
The EOF command does not affect memory and leaves your terminal
at TOPS-20 command level.
Related Commands
BACKSPACE
REWIND
other TOPS-20 commands for controlling magnetic
tape drives
SKIP
UNLOAD
Examples
1. Put an end-of-file mark (EOF) on your magnetic tape.
@EOF MTA0:
@
EXAMINE
Function
The EXAMINE command displays the contents of a specific memory
location.
Format
@EXAMINE (MEMORY LOCATION) octal number
------- ----- ------
Output
Contents of Memory Location or Message
When you complete an EXAMINE command, the system prints the
memory address examined, followed by a slash (/) and its
contents in octal. Generally these will be two 6-digit
octal numbers separated by a pair of commas (,,). If you do
not see this pair of commas, only the right half of the
memory location is being displayed; the left half is 0.
However, if you are not permitted to examine this location,
the system prints only a message telling you so.
Hints
Using DDT Instead
Usally the EXAMINE command is unnecessary, as the DDT
program provides more powerful methods for examining and
modifying the contents of memory.
Abbreviating EXAMINE
The EXAMINE command can be abbreviated by the single letter
E.
Using EXAMINE With Inferior Processes
To examine memory for a process inferior to the one
immediately below the TOPS-20 command processor, you must
give the FORK command to specify this process before using
EXAMINE. Remember that to run an inferior process after
examining it, you must ensure that all superior processes
are running too. Give the FORK 1 and CONTINUE commands to
let the top-level process continue its inferiors.
Effect on Memory and Terminal
The EXAMINE command does not affect memory and leaves your
terminal at TOPS-20 command level.
Related Commands
DDT for calling a debugging program,
allowing more efficient examination
of memory
DEPOSIT for changing the contents of a
specific memory location
FORK for selecting the process whose
memory you want to examine
INFORMATION MEMORY-USAGE for displaying a list of memory
pages, their contents and status
Examples
1. Examine location 550 of the program in memory.
@EXAMINE 550
550/ 74473,,414155
@
2. Put a program into memory and find out what pages it
occupies. Examine a location on page 2, and then (using the
abbreviated form of the EXAMINE command) one on page 400.
@GET DMN
@INFORMATION MEMORY-USAGE
5. pages, Entry vector loc 400010 len 254000
0-3 DMN.EXE.1 1-4 R, CW, E
400 DMN.EXE.1 5 R, CW, E
@EXAMINE 2550
2550/ 600170
@E 400550
400550/ 0
@
EXECUTE
Function
The EXECUTE command loads your program into memory, compiling the
source file first if necessary. Then it starts the program.
Format
@EXECUTE (FROM) /switch(es) source/switch(es) object,...
------- ----------- ----------------- ----------
where
switches are keywords chosen from the list below, indicating
your choice of EXECUTE command options. When
positioned immediately after a file specification
and before a comma, they apply only to that file;
otherwise they become "global" switches, i.e.,
default choices for all subsequent files.
Defaults are shown in the list of switches
--------
source is the file specification of the source program.
The filename must be of 6 or fewer characters, and
the file type of 30 fewer characters; you cannot
use a generation number. This argument is not
necessary if you supply an object filespec.
object is the file specification of the object program.
The filename must be of six or fewer characters, and
the file type must be .REL; you cannot use a
generation number. This argument is not necessary
if you supply a source.
Default (if you give neither source nor object
-------
filespecs) - last filespecs and
associated switches you gave in a
LOAD-class command
,... means that, after commas, you can give more
arguments of the form (switches, source, and object)
already shown
Summary of EXECUTE Command Switches (defaults in boldface)
/ALGOL
/COBOL
/COMPILE
/CREF
/FORTRAN
-------
/LIBRARY
/LIST
/MACRO
/MAP:filespec Default filespec - object filename.MAP,
-------
or nnnLNK.MAP
/NOCOMPILE
---------
/NOLIBRARY
---------
/NOLIST
------
/NOOPTIMIZE
----------
/NOSEARCH
--------
/OPTIMIZE
/RELOCATABLE
/SEARCH
Descriptions of these switches are given below. Although the
system will not reject switches described under any of the
LOAD-class commands, only those switches commonly associated with
EXECUTE are described here.
EXECUTE Command Switches
/ALGOL compiles the file using the ALGOL compiler
/COBOL compiles the file using the COBOL compiler
/COMPILE forces compilation of the source file even if a
current object file already exists. Use this
switch along with a /LIST or /CREF switch to
obtain listings when you have current object
files.
/CREF creates a file containing cross-reference
information for each compilation. The filename
is that of the object file; the file type is
.CRF. Use the CREF command to obtain a listing
of the file. (For COBOL files this switch
automatically produces a cross-reference
listing.)
/FORTRAN compiles the file using the FORTRAN compiler
Default for switches specifying compiler
-------
language, in the absence of a
standard source file type
/LIBRARY same as /SEARCH
/LIST prints a line printer listing of the program in
ASCII format; the name of this listing is the
filename of the object file. The /CREF switch
overrides /LIST when they both apply to the
same file.
/MACRO assembles the file using the MACRO assembler
/MAP:filespec produces a loader map and stores it in the
indicated file
Default filespecs - object.MAP, where
-------
object is the name of
the module containing
the start address; or
(if no start address)
nnnLNK.MAP, where nnn
is your job number.
/NOCOMPILE prevents compilation if the object file is
current; otherwise it forces compilation. Use
this switch to cancel a /COMPILE or
/RELOCATABLE switch.
Default
-------
/NOLIBRARY same as /NOSEARCH
/NOLIST prevents a line printer listing of the program
Default
-------
/NOOPTIMIZE prevents the generation of a globally optimized
object file. (For FORTRAN programs only.)
Default
-------
/NOSEARCH requires all modules in the object file library
(the file accompanied by this switch in the
command line) to be loaded even if they are not
called by your program. Use this switch to
cancel a /SEARCH switch.
Default
-------
/OPTIMIZE generates a globally optimized object file,
i.e., one that runs as quickly as possible.
(For FORTRAN programs only, and only if you do
not also give the /DEBUG switch (see the DEBUG
command description).)
/RELOCATABLE prevents compilation of the source file,
forcing use of an existing object file even if
the object file is out of date
/SEARCH requires that the object file library (the file
accompanied by this switch in the command line)
be searched for modules called by your program
or by a program subroutine. Only these modules
are loaded, along with modules called from
system libraries, which are always searched.
Characteristics
Compiling New Sources Only
Before executing programs, the system ordinarily compiles
any source (and only those sources) whose write date is more
recent that that of the object file of the same name. You
can override this action with the /COMPILE or /RELOCATABLE
switch.
Using Standard File Types
If you specify source files with standard types (.FOR, .MAC,
.CBL, or .ALG) in an EXECUTE command, the system
automatically calls the appropriate compiler when
compilation is necessary. If you specify source files by
filename only, the system searches your connected directory
in the above order for a file of this name and a standard
type. To execute programs from sources that have
nonstandard file types, give a switch to indicate the proper
compiler (/FORTRAN, /MACRO, /COBOL, or /ALGOL). A switch
will take precedence over a standard file type if they
indicate different languages. If no compiler is indicated
with either a switch or a standard file type, the FORTRAN
compiler is used.
Hints
Commas Between Filespecs
If you give two or more filespecs separated by commas as
arguments to EXECUTE, the loaded programs exist in memory at
the same time and will act as a single program. You can use
this feature to substitute one module for another under
varying conditions or for different applications.
Plus Signs Between Filespecs
If you give two or more filespecs separated by plus signs
(+) as arguments to EXECUTE, they are treated as a single
file by compilers. Their object module is stored under any
filename given as the "object" argument of the command, or
(if none) under the last filename in the group and file type
.REL.
Indirect Files as Arguments
You can store the arguments (source and object filespecs,
switches) of an EXECUTE command in an indirect file, and
specify them by typing an at sign (@) and its filespec as an
EXECUTE command argument. If you give other filespecs as
well, you must give the indirect file last.
Running LINK Directly
The EXECUTE command automatically runs LINK, the system's
loader program, but if you require control of the loading
process you can run LINK directory. See the TOPS-20 LINK
Reference Manual.
Restrictions
Switches Assuming Compilation
/CREF
/LIST
/NOLIST
/NOOPTIMIZE
/OPTIMIZE
The above switches will not take effect unless the EXECUTE
command causes a new compilation of the relevant source
file. See Characteristics - Compiling New Sources Only,
above, for more information.
Effect on Memory and Terminal
The EXECUTE command clears memory, loads the appropriate compiler
if necessary, then loads and starts your program. It leaves your
terminal at program command level (if any) within your program.
Related Commands
COMPILE, LOAD, and DEBUG other LOAD-class commands for
performing related functions
RUN for running executable programs
Examples
1. Execute a program, indicating the language with a standard
file type.
@EXECUTE CAFN.FOR
FORTRAN: CAFN
LINK: LOADING
[LNKXCT CAFN EXECUTION]
END OF EXECUTION
CPU TIME: 0.04 ELAPSED TIME: 0.89
EXIT
@
2. Execute a program, indicating the language with a switch.
@EXECUTE CAFN/FORTRAN
FORTRAN: CAFN
MAIN.
LINK: LOADING
[LNKXCT CAFN EXECUTION]
END OF EXECUTION
CPU TIME: 0.04 ELAPSED TIME: 0.82
EXIT
@
3. Execute two programs, requesting a cross-reference file for
one of them.
@EXECUTE CAFN, TAFN/CREF
FORTRAN: CAFN
MAIN.
FORTRAN: TAFN
MAIN.
LINK: LOADING
[LNKXCT TAFN EXECUTION]
END OF EXECUTION
CPU TIME: 0.04 ELAPSED TIME: 0.15
EXIT
@
4. Combine two source programs into a single object program, and
run this program.
@EXECUTE CAFN+TAFN
FORTRAN: CAFN
MAIN.
MAIN.
LINK: LOADING
[LNKXCT TAFN EXECUTION]
END OF EXECUTION
CPU TIME: 0.04 ELAPSED TIME: 0.16
EXIT
@
5. Execute an ALGOL program, ensuring that the compilation
includes required modules only; request a map.
@EXECUTE /COMPILE/MAP:YEAR1.MAP CALEND/ALGOL,
ALGMOD.LBR/SEARCH
ALGOL: CALEND
LINK: LOADING
EXIT
@
EXPUNGE
Function
The EXPUNGE command permanently erases all the deleted files from
a directory.
Format
@EXPUNGE (DIRECTORY) dev:<directory>,
------- ----------------
@@subcommand
----------
@@ .
-
.
-
.
-
where
dev:<directory> is the name of the directory you wish to
expunge; if you have Wheel or Operator
capabilities enabled, you can use an asterisk
(*) to expunge all directories on the
structure.
Default dev: - your connected structure
-------
Default <directory> - the directory (on
-------
the specified
structure) of the
same name as your
connected
directory
Default (if no arguments - your
-------
are given) connected
directory
, means that after a final comma you can give
@@ one or more (optional) subcommands on
@@ . successive lines
.
.
subcommand is a keyword chosen from the list below,
indicating your choice of EXPUNGE command
options
EXPUNGE Command Subcommands
DELETE deletes and expunges temporary files, i.e., those
with the Temporary (;T) attribute, created by some
system programs to hold interim data. Do not use if
you will have any further need of these files.
PURGE expunges all files which you have opened but not
closed
REBUILD rebuilds the symbol table of the directory named
Output
After a successful EXPUNGE command, the system reports the number
of disk pages freed. If the expunged files are small, there may
be no pages freed. Occasionally the system will report a
negative number. This can mean that files were being written in
the directory during the EXPUNGE, or (especially if you include
the REBUILD subcommand) that previous computations of directory
size had not adequately accounted for some files, e.g., files
written near the time of a system crash and reload.
Hints
Using the REBUILD Subcommand
The REBUILD subcommand is not needed under usual conditions,
as the system performs this action automatically. Use
REBUILD if a message is printed on your terminal advising
you to rebuild the symbol table of a directory, or if the
"Pages assigned" parameter reported by an INFORMATION
DISK-USAGE command shows two page counts (one within
parentheses) differing by more than, say, two pages. Note
that in this last case REBUILD will merely reduce the
difference, not eliminate it, especially if the directory
has subdirectories beneath it.
Using the PURGE Subcommand
The PURGE subcommand is useful chiefly for removing the
remains of files that were being created at the time of a
system crash or a structure dismount. Do not give it while
anyone might be using the directory, because that user's
program might be deprived of necessary files as a result.
Special Cases
Files With the "Permanent" Attribute
The system erases only the contents of any files that have
the Permanent attribute (e.g., MAIL.TXT in your log-in
directory) when you try to expunge them. Their file
specifications remain among your deleted files, and cannot
be removed by TOPS-20 commands.
Effect on Memory and Terminal
The EXPUNGE command does not affect memory and leaves your
terminal at TOPS-20 command level.
Related Commands
DELETE for marking files to be later
expunged
DIRECTORY-class commands for obtaining lists of file
specifications
INFORMATION DISK-USAGE for finding out the size of a
directory
Examples
1. Expunge all deleted files from your directory.
@EXPUNGE
PS:<LATTA> [6 pages freed]
@
2. Find out how much of your disk space is in use and how much
is occupied by deleted files. Delete some of your backup
files, then give the EXPUNGE command to erase all of these.
@INFORMATION DISK-USAGE
154(155) Pages assigned, 101 in use, 53 deleted
590 Working pages, 590 Permanent pages allowed
33371 Pages free on PS:
@DELETE *.Q*
BLUE.QAR.1 [OK]
REMARK.QXT.1 [OK]
RIMOUSKI.QXT.1 [OK]
@EXPUNGE
PS:<LATTA> [56 pages free]
@
FDIRECTORY
Function
The FDIRECTORY (Full DIRECTORY) command is equivalent to the
DIRECTORY command with the subcommands CRAM, EVERYTHING, and
NOHEADING. Use the same format and subcommands with FDIRECTORY
as with DIRECTORY. For further information, see the DIRECTORY
command description in this manual.
Examples
1. Get a "Full DIRECTORY" listing, on your terminal, for one of
your files.
@FDIRECTORY TESTF1.FOR
MISC:<LATTA>
TESTF1.FOR.8;P777700;A341 1 115(7) 1 25-Apr-78 09:44:
50 25-Apr-78 09:44:50 2-May-78 15:09:45 LATTA LATTA
@
2. Give the FDIRECTORY command for a file, this time requesting
the only piece of information about current files not
ordinarily supplied by the command. Ask for a heading also.
@FDIRECTORY TESTF1.FOR,
@@HEADING
@@CHECKSUM
@@
PGS Bytes(SZ) Ret Creation Write
Read Creator Writer Checksum
MISC:<LATTA>
TESTF1.FOR.8;P777700;A341 1 115(7) 1 25-Apr-78 09:44:
50 25-Apr-78 09:44:50 2-May-78 15:09:46 LATTA LATTA
147401P
@
FORK
Function
The FORK command specifies the process (fork) of your job to
which TOPS-20 commands referencing specific processes apply. It
does not, however, create a process.
Format
@FORK (IS) number
---- ------
where
number is the process number, an octal number between 1 and
777
Special Cases
Fork 0
If you are a user with enabled Wheel privileges you can give
the command, FORK 0. This references the command processor
(EXEC) itself.
Effect on Memory and Terminal
The FORK command does not affect memory and leaves your terminal
at TOPS-20 command level.
Related Commands
INFORMATION MEMORY-USAGE for examining memory of the
current process
INFORMATION PROGRAM-STATUS for finding out the number and
status of each process in your job
Examples
1. Make the second process of your job the current process.
@FORK 2
@
2. Find out which processes exist in your job (an arrow (=>)
indicates the current process). Look at memory for the first
process, then examine a particular location. Make the second
process current, and do the same thing there.
@INFORMATION PROGRAM-STATUS
Used 0:00:00 in 0:00:46
TOPS-20: 0:00:00.6
SET UUO-SIMULATION (FOR PROGRAM)
SET CONTROL-C-CAPABILITY (OF PROGRAM)
=> Fork 1: HALT at 16176, 0:00:00.3
Fork 2: HALT at 472052, 0:00:00.0
@INFORMATION MEMORY-USAGE
176. pages, Entry vector loc 2061 len 3
0 PS:<NEXT-RELEASE>BASIC.EXE.2 1 R, CW, E
1 Private R, W, E
2-66 PS:<NEXT-RELEASE>BASIC.EXE.2 3-67 R, CW, E
70-73 PS:<NEXT-RELEASE>BASIC.EXE.2 70-73 R, CW, E
74 Private R, W, E
75-103 PS:<NEXT-RELEASE>BASIC.EXE.2 75-103 R, CW, E
317-321 Private R, W, E
362 Private R, W, E
370 @ Fork 2 0 R, W, E
371-372 @ No page R, W, E
373-374 @ Fork 2 3-4 R, W, E
375-437 @ No page R, W, E
440-526 PS:<NEXT-RELEASE>BASOTS.EXE.2 1-67 R, CW, E
530-532 Private R, W, E
533-546 PS:<NEXT-RELEASE>BASOTS.EXE.2 71-104 R, CW, E
600-637 PS:<NEXT-RELEASE>BASOTS.EXE.2 105-144 R, CW, E
@EXAMINE 3500
3500/ 202200,,1136
@FORK 2
@INFORMATION MEMORY-USAGE
108. pages, Entry vector loc 401 len 24
0 Private R, W, E
3-4 Private R, W, E
100 Private R, W, E
436-437 Private R, W, E
440-526 @ Fork 1 440-526 R, CW, E
527 @ No page R, CW, E
530-532 Private R, W, E
533-546 @ Fork 1 533-546 R, CW, E
600-637 @ Fork 1 600-637 R, CW, E
640-767 @ No page R, CW, E
@EXAMINE 3500
3500/ 0
@
GET
Function
The GET command clears memory, then places an executable program
into it.
Format
@GET filespec
--- --------
where
filespec is the specification of any file containing an
executable program
Default file type - .EXE
-------
Effect on Memory and Terminal
The GET command clears memory, puts the specified program into
memory, and leaves your terminal at TOPS-20 command level.
Related Commands
INFORMATION MEMORY-USAGE for examining the contents of memory
LOAD for loading a source or object
program into memory
MERGE for putting an executable program
into memory without first clearing
memory
SAVE for storing a copy of the program in
memory in a file in executable
format
START for starting the program in memory
Examples
1. Put an executable program into memory.
@GET TESTF1.EXE
@
2. Verify that you have a magnetic tape drive assigned to your
job. Get one of your executable programs, save a copy of it
on tape, and then start it.
@INFORMATION AVAILABLE DEVICES
Devices available to this job:
DSK, PS, SNARK, MISC, LANG, REL3, DX20, MTA0, MTA2-3
MT0-7, LPT, LPT0, LPT1, CDR, PCDR0, CDP, FE0-15
PTY23-61, NUL, PLT, PLT0, DCN, SRV
Devices assigned to/opened by this job: MTA0, TTY230
@GET TESTF1
@SAVE MTA0:
MTA0:TESTF1 Saved
@START
THIS IS A TEST.
END OF EXECUTION
CPU TIME: 0.03 ELAPSED TIME: 0.72
EXIT
@
HELP
Function
The HELP command gives an explanatory text, at your terminal, of
many TOPS-20 system features.
Format
@HELP name
---- ----
where
name is the name of a system program chosen from the list
given in response to the command HELP *
Default name - HELP
-------
Sample of HELP Command Arguments
ACCT20 ACCTPR ACTGEN APL APLSF BLIS10 CHECKD CHKPNT
COBDDT COBOL CONV20 CREF DAEMDB DBINFO DBMEND DIRTST
DLUSER DUMPER EDIT FE FILCOM FORDDT FORDML FORMAT
FORTRA HELP ISAM LIBARY LINK LPTSPL MACRO MAIL
MAKLIB MAKRAM MAKVFU OPLEAS PLEASE PTYCON QUEUE RDMAIL
RERUN RSXFMT RUNINP RUNOFF SCHEMA SORT SYSERR SYSJOB
TRANSL ULIST USAG20 USAH20 WATCH
Characteristics
Other HELP Command Arguments
Note that some of the HELP command arguments shown here may
be omitted if the associated programs are not available at
your site. The list may include other texts inserted by
your system administrator to describe features special to
your system. Also, this list is revised frequently to
reflect improvements and additions to standard TOPS-20
programs.
Hints
Printing HELP Files on the Line Printer
The texts displayed by the HELP command are stored in system
logical name HLP: under the name of the program and file
type .HLP. Use the PRINT command to request your own copy.
Effect on Memory and Terminal
The HELP command does not affect memory and leaves your terminal
at TOPS-20 command level.
Examples
1. Ask for information about the FILCOM program, and truncate
the output with CTRL/Cs.
@HELP FILCOM
FILCOM compares two files in either ASCII mode
or binary depending upon switches or file name extensions.
All standard binary extensions are recognized as binary by
default.
Switches are :-
/A compare in ASCII mode
/B allow compare of Blank lines
/C ignore Comments and spacing
/S ignore Spacing
/H type this Help text
/#L Lower limit for partial compare
or number of Lines to be matched
( # represents an octal number)
/#U Upper limit for part^C
^C
@
2. Use the DIRECTORY command to search system logical name HLP:
for any text involving programming language APL. (Note the
use of wildcard characters here.) Print copies of one such
file for later use.
@DIRECTORY HLP:*APL*.HLP
PS:<HELP>
APL.HLP.2
APLSF.HLP.2
Total of 2 files
@PRINT /LOWERCASE/COPIES:3/AFTER:17:00 HLP:APLSF.HLP
[LL:APLSF=/Seq:5739/Limit:174, 1 File]
@
INFORMATION
Function
The INFORMATION command reports on system and job parameters.
Format
@INFORMATION (ABOUT) argument
----------- --------
where
argument is a keyword, chosen from the list below, indicating
your choice of INFORMATION command options
Summary of INFORMATION Command Arguments (defaults in boldface)
ADDRESS-BREAK
LINES
AVAILABLE DEVICES
-------
/ALL
BATCH-REQUESTS /FAST
/USER:user name Default user name - your user
-------
name
COMMAND-LEVEL
DIRECTORY dev:<directory>, Default dev:<directory> - your
-------
@@VERBOSE connected directory
@@FAST
----
@@NAME-ONLY
DISK-USAGE dev:<directory> Default dev:<directory> - your
-------
connected directory
FILE-STATUS octal JFN Default JFN - all JFNs in your
-------
job
JOB-STATUS
SYSTEM
LOGICAL-NAMES JOB
---
ALL
MAIL user name Default user name - your user
-------
name
MEMORY-USAGE
MONITOR-STATISTICS
NETWORK-STATUS
/ALL
OUTPUT-REQUESTS /FAST
/USER:user name Default user name - your user
-------
name
PROGRAM-STATUS
PSI-STATUS
SPOOLED-OUTPUT-ACTION
STRUCTURE dev: Default dev: - your connected
-------
structure
SUBSYSTEM-STATISTICS
SYSTEM-STATUS
TAPE-PARAMETERS
TERMINAL-MODE
VERSION
INFORMATION Command Arguments
ADDRESS-BREAK gives the location and mode of any
address breaks for the program currently
in memory. Set with SET ADDRESS-BREAK.
LINES
AVAILABLE DEVICES lists the devices or terminal lines
available to you or already assigned to
your job. Use ASSIGN to obtain devices.
Default - DEVICES
-------
/ALL
BATCH-REQUESTS /FAST
/USER:user name
lists the jobs being processed and
waiting to be processed by the batch
system. The list includes
o the jobname and sequence number of
the request
o the name of the user who initiated
the request, and
o the values of the switches /AFTER,
/PRIORITY, /DEPENDENCY-COUNT, and
/TIME, if values were given in the
original SUBMIT or subsequent MODIFY
command
Use SUBMIT, MODIFY, or CANCEL to change
this list.
The /ALL switch adds the switches
/RESTARTABLE (if its value is YES) and
/UNIQUE (if its value is 1) to this
list, while /FAST eliminates the display
of all switches and column headings;
/USER restricts descriptions to jobs of
the user named, and can be given with
either of the other two switches.
Default user name - your user name
-------
COMMAND-LEVEL prints the status of the
LATE-CLEAR-TYPEAHEAD parameter, which
prevents you from giving another TOPS-20
command until any error message
resulting from a previous command has
been printed. Set with SET
LATE-CLEAR-TYPEAHEAD.
DIRECTORY dev:<directory>,
@@FAST lists the current parameter values set
@@VERBOSE for the indicated directory by the SET
@@NAME-ONLY DIRECTORY or BUILD commands, or by
default. The subcommands call for
either a short list of non-default
(i.e., user-determined) values only
(FAST), or a complete list including
defaults (VERBOSE), or a listing of
subdirectory names only (NAME-ONLY). If
you use NAME-ONLY, specify a directory
of the form <directory.*>. The
categories of information include
o the directory's password
o working and permanent storage limits
o capabilities (assigned or withheld)
o directory number
o default file protection
o default account
o directory protection
o default number of generations
maintained for files
o maximum number of subdirectories
allowed
o date and time of last log-in
o group memberships
o user group numbers assignable to
subdirectories
Set with SET DIRECTORY or (for
subdirectories) BUILD.
Default dev:<directory> - your
-------
connected
directory
DISK-USAGE dev:<directory>
prints, for the indicated directory
o the number of pages of disk storage
already assigned
o working and permanent page limits
o total number of unused pages on the
file structure containing the
directory
Default dev:<directory> - your
-------
connected
directory
FILE-STATUS octal JFN
gives, for the specified JFN (an
internal number identifying each file)
o the associated file specification
o the mode of access (Append, Execute,
Read, or Write) for which the file is
open (or was opened last, if NOT
OPENED precedes the access mode)
o special access conditions, namely
DATA ERROR if an error is made in
accessing the file, or EOF if the
file pointer is at the end of the
file
o if appropriate, byte pointer and byte
size, which tell the number of bytes
transferred to or from the file, and
o a list of devices currently assigned
to or opened by this job
But if a file has been opened by another
process for its sole use, you see only
the message, "Restricted JFN".
Default JFN - all JFNs for your job
-------
JOB-STATUS prints your
o job number
o user name
o connected directory (if not your
log-in directory)
o account; session remark (if any)
o terminal number
You can set some of these parameters
with CONNECT, SET ACCOUNT, and SET
SESSION-REMARK.
ALL
LOGICAL-NAMES JOB
SYSTEM
prints the logical names and definitions
which have been established for your
job, for the system, or for both.
Establish logical names with DEFINE.
Default - JOB
-------
MAIL user name tells whether there is unread mail for
the user if you have read access to it;
otherwise you see only the message,
"Mailbox protected". Send mail with the
MAIL program, and read mail with the
RDMAIL program.
Default user name - your user name
-------
MEMORY-USAGE prints, for the current process of your
job
o the number of pages of memory
assigned
o location and length of the current
program's entry vector (set with SET
ENTRY-VECTOR)
and on each succeeding line
o the page numbers of pages occupied by
a file or program
o the file specification if the pages
are file pages; PRIVATE otherwise.
o the page numbers of file pages. If a
page is mapped by indirect pointers,
an at sign (@) is printed with the
file specification to which it is
mapped; @Fork n means that these
pages are mapped indirectly through
another process (process n) of the
job; @No page can mean either of
these conditions, when the
destination page does not yet exist.
o the permitted accesses to the pages
(set with SET PAGE-ACCESS):
R - Read access
-
W - Write access
-
CW - Copy-on-Write access
--
E - Execute access
-
MONITOR-STATISTICS gives you
o the length of time (in hours,
minutes, and seconds) since the
monitor became available for use
o an analysis of monitor overhead time,
by percentages
o the number of swap-reads and -writes,
and file-reads and -writes
o the number of pages of memory
available to user programs
o the number of terminal wake-ups
(occasions when a program "wakes up"
after waiting for terminal input or
output to finish), and of terminal
interrupts (occasions when a program
is interrupted by a CTRL/C, CTRL/O,
or CTRL/T (or other, user-enabled
control characters) typed at a user's
terminal)
o the average number of processes in
the balance set (NBAL, a subset of
the run set - these are runnable, and
each receives a share of CPU time)
and in the remainder of the run set
(NRUN - these are waiting to be run),
and
o the number of seconds of CPU time
given to each of the four scheduler
queues (where the leftmost listing
describes the highest priority queue,
for interactive processes, and the
rightmost listing is for CPU-bound
processes)
All averages and totals are computed for
the time since system start-up when the
monitor became available for use.
NETWORK-STATUS gives this information about of the ARPA
network, if the system is a member:
o whether the network service is
enabled
o whether the IMP (Interface Message
Processor) is up, or down, or
initializing
o date and time of the last ready line
on-transition (if any) between the
monitor and the IMP
o date and time of the last ready line
off-transition (if any) between the
monitor and the IMP
/ALL
OUTPUT-REQUESTS /FAST
/USER:user name
prints a listing, at your terminal, of
the requests being sent or waiting to be
sent to an output device. The list
includes
o the kind of device to be used (e.g.,
LPT - line printer, PLT - plotter,
PTP - paper tape punch, CDP - card
punch)
o the jobname and sequence number of
the request
o the output limit, in appropriate
units (number of pages, seconds of
plotter time, feet of paper tape, or
number of cards)
o the name of the user who initiated
the request, and
o values of the switches /AFTER,
/FORMs, and /PRIORITY, if given
non-default values in the original
PRINT or subsequent MODIFY command
Use PRINT, MODIFY, or CANCEL to change
this list.
The /ALL switch adds the /NOTE switch to
this list, while the /FAST switch
eliminates the display of all switches
and column headings; /USER restricts
descriptions to jobs of the user named,
and can be given with either of the
other two switches.
Default user name - your user name
-------
PROGRAM-STATUS gives the following information for the
current level of the TOPS-20 command
processor (EXEC):
o the amount of CPU time you have used,
and total elapsed time since you
logged in
o the amount of TOPS-20 command
processor time used
o SET UUO-SIMULATION (set with SET
UUO-SIMULATION) if the TOPS-20
compatibility package is enabled to
simulate TOPS-10 monitor calls issued
by a program you are running
o SET CONTROL-C-CAPABILITY (set with
SET CONTROL-C-CAPABILITY) if your
program is allowed to handle CTRL/C
interrupts itself, and
o a summary of the status of each
process belonging to the current copy
of the TOPS-20 command processor,
including total CPU time used so far
An arrow (=>) indicates your current
process.
PSI-STATUS tells you
o whether the PSI (programmed-software-
interrupt) system is in use (ON) or
not (OFF)
o the memory address of the level table
and of the channel table - 0 if none
was set
o the numbers of the priority levels
for which there are interrupts in
progress (1 and/or 2 and/or 3), where
1 is the highest priority, and
o the numbers of channels enabled
(ready) to accept interrupts, and of
channels with pending interrupts
For further discussion of the interrupt
system see the TOPS-20 Monitor Calls
Reference Manual.
SPOOLED-OUTPUT-ACTION tells you whether the system will
process your spooled output requests
immediately, or defer them until you log
out. Set with SET
SPOOLED-OUTPUT-ACTION. You make spooled
output requests not with the PRINT
command (these are always processed
immediately) but with the COPY command
when you copy files to a spooled output
device (e.g., a line printer - LPT:,
plotter - PLT:, or card punch - CDP:).
Also, the /LIST switch for LOAD-class
commands, and the LPT and OUTPUT
subcommands for DIRECTORY-class and
SYSTAT commands make spooled output
requests.
STRUCTURE dev:
gives, for each structure named
o the number of users who have mounted
the structure, the number of open
files on the structure, and the
number of disks in the structure
o kind of structure - Public or
Private, Domestic or Foreign (see the
DECSYSTEM-20 User's Guide)
o names of users who have mounted the
structure
o names of users who have accessed the
structure, and
o names of users who have connected to
the structure
Use an asterisk (*) for dev: to specify
all mounted structures. Mount and
dismount structures with the SMOUNT and
SDISMOUNT commands.
Default dev: - your connected
-------
structure
SUBSYSTEM-STATISTICS gives, for each subsystem (any name
specified by the SETSN JSYS), the
following information:
o its name and total runtime since the
system last became
available - SNAMES, STIMES
o the average number of page faults per
second it has caused - SPFLTS
o the number of long-term waits it has
caused - SNBLKS
o its average working-set size (the
number of pages it occupies in
memory) - SSIZE
See the TOPS-20 Monitor Calls Reference
Manual for more information.
SYSTEM-STATUS tells you
o whether the operator is present
o what kinds of log-ins are
allowed - local, remote,
pseudo-terminal, network, or console
o whether accounting (assessing and
recording charges for system use) is
being done
o whether account validation (checking
accounts against lists of authorized
users) is enabled
TAPE-PARAMETERS gives the default settings of these
parameters for magnetic tapes
o tape density, in bits per inch
o tape parity (ODD or EVEN)
o format (ANSI-ASCII, CORE-DUMP,
INDUSTRY-COMPATIBLE, or
SYSTEM-DEFAULT), and
o tape record length, in bytes
Set with SET TAPE.
TERMINAL-MODE gives the following information about
your terminal
o its type (LA36, VT52, etc., or
SYSTEM-DEFAULT)
o its speed (baud rate), in bits per
second
o whether it is set to receive or
refuse links, advice, and system
messages
o whether it is capable of printing
lowercase characters, whether it is
set to raise lowercase letters you
type to uppercase, and whether it
will mark (flag) capital letters with
a single quotation mark (')
o whether it has a formfeed mechanism,
and whether it is set to only
indicate formfeeds or to perform them
o whether it has mechanical tab stops,
whether it is set to immediately echo
input you type, and
o whether it is operating in FULLDUPLEX
or HALFDUPLEX mode
Set with TERMINAL.
VERSION tells you
o the system's name and version number
o the version of the TOPS-20 command
processor in use
o the name (and version, if any) of any
program currently in memory, and
o the version of the UUO simulation
package in use (if a TOPS-10 program
is in memory)
Hints
Specifying the Correct Process of TOPS-20
Use the FORK command to specify the process to be described
by the ADDRESS-BREAK, FILE-STATUS, and MEMORY-USAGE
arguments. Find out your current process with INFORMATION
PROGRAM-STATUS.
Effect on Memory and Terminal
The INFORMATION command does not affect memory and leaves your
terminal at TOPS-20 command level.
Examples
1. Use an INFORMATION command to determine your current terminal
settings.
@INFORMATION TERMINAL-MODE
TERMINAL LA36
TERMINAL SPEED 300
REFUSE LINKS
REFUSE ADVICE
RECEIVE SYSTEM-MESSAGES
TERMINAL NO PAGE
TERMINAL LENGTH 66
TERMINAL WIDTH 80
TERMINAL LOWERCASE
TERMINAL RAISE
TERMINAL NO FLAG
TERMINAL INDICATE
TERMINAL NO FORMFEED
TERMINAL NO TABS
TERMINAL NO IMMEDIATE
TERMINAL FULLDUPLEX
@
2. Mount a structure and access your directory on the structure.
Compare the disk space available in this directory and in
your connected directory. (Note that there are many more
pages free on your connected structure (MISC:) as a whole
than on structure SNARK:; this is likely to make your use of
the system more efficient if you work only within MISC:.)
@SMOUNT SNARK:
Structure SNARK: mounted
@ACCESS SNARK:
@INFORMATION DISK-USAGE SNARK:
198 Pages assigned
400 Working pages, 400 Permanent pages allowed
2836 Pages free on SNARK:
@INFORMATION DISK-USAGE
119(121) Pages assigned
590 Working pages, 590 Permanent pages allowed
33172 Pages free on MISC:
@
3. Print a file, ordering several copies and supplying a note to
be attached to it. Use an INFORMATION command to verify that
your request is in the output queue. Modify the date on
which the job will be printed, and use the INFORMATION
command again to confirm this action.
@PRINT TESTF1.FOR /AFTER:17:00/COPIES:20/FORMS:NARROW/NO
TE:"T-TH LAB"
[LPT:TESTF1=/Seq:5786/Limit:1040, 1 File]
@INFORMATION OUTPUT-REQUESTS /ALL/USER
Queue Job Seq Limit User
----- --- --- ----- ----
LPT TESTF1 5786 1040 LATTA
/AFTER:5-May-78 17:00:00 /FORMS:NARROW /Note:"T
TH LAB"
@MODIFY PRINT TESTF1 /AFTER:MAY 7, 1978 17:00
[1 Job Modified]
@INFORMATION OUTPUT-REQUESTS /ALL/USER
Queue Job Seq Limit User
----- --- --- ----- ----
LPT TESTF1 5786 1040 LATTA
/AFTER:7-May-78 17:00:00 /FORMS:NARROW /Note:"T
-TH LAB"
@
LOAD
Function
The LOAD command loads your program into memory, compiling the
source file first if necessary.
Format
@LOAD (FROM) /switch(es) source/switch(es) object,...
---- ----------- ----------------- ----------
switches are keywords chosen from the list below,
indicating your choice of LOAD command options.
When positioned immediately after a file
specification and before a comma they apply only
to that file. Otherwise they become global
switches, i.e., default choices for all subsequent
files.
Defaults are shown in the list of switches
--------
source is the file specification of the source program.
The filename must be of 6 or fewer characters, and
the file type of 3 or fewer characters; you
cannot use a generation number. This argument is
not necessary if you supply an object filespec.
object is the file specification of the object program.
The filename must be of 6 or fewer characters, and
the file type must be .REL; you cannot use a
generation number. This argument is not necessary
if you supply a source filespec.
Default (if you give neither source nor
-------
object filespecs) - last filespecs
and associated switches you gave in a
LOAD-class command
,... means that, after a comma, you can give more
arguments (switches, source, and object) of the
form already shown
Summary of LOAD Command Switches (defaults in boldface)
/ALGOL
/COBOL
/COMPILE
/CREF
/DDT
/DEBUG
/FORTRAN
-------
/LIBRARY
/LIST
/MACRO
/MAP:filespec Default filespec - object filename.MAP, or
-------
nnnLNK.MAP
/NOCOMPILE
---------
/NODEBUG
-------
/NOLIBRARY
---------
/NOLIST
------
/NOOPTIMIZE
----------
/NOSEARCH
--------
/NOSYMBOLS
/OPTIMIZE
/RELOCATABLE
/SEARCH
/SYMBOLS
-------
Descriptions of these switches are given below. Although the
system accepts switches described under any of the LOAD-class
commands, only those switches commonly associated with LOAD are
described here.
LOAD Command Switches
/ALGOL compiles the file using the ALGOL compiler
/COBOL compiles the file using the COBOL compiler
/COMPILE forces compilation of the source file even if a
current object file already exists. Use this
switch along with a /LIST or /CREF switch to
obtain listings when you have current object
files.
/CREF creates a file containing cross-reference
information for each compilation. The filename
is that of the object file; the file type is
.CRF. Use the CREF command to obtain a listing
of the file. (For COBOL files, the switch
automatically produces a cross-reference
listing.)
/DDT loads the DDT debugging program along with your
object file
/DEBUG produces an object file containing debugging
information beyond what is usually inserted
during a compilation. (For use with FORTRAN
programs only, and only if you have not given
the /OPTIMIZE switch.)
/FORTRAN compiles the file using the FORTRAN compiler
Default for switches specifying compiler
-------
language, in the absence of a
standard source file type
/LIBRARY same as /SEARCH
/LIST prints a line printer listing of the program in
ASCII format. The name of this listing is the
filename of the object file. The /CREF switch
overrides /LIST when they both apply to the
same file.
/MACRO assembles the file using the MACRO assembler
/MAP:filespec produces a loader map and stores it in the
indicated file
Default filespec - object.MAP, where
-------
object is the name of
the module containing
the start address; or
(if no start address)
nnnLNK.MAP, where nnn
is your job number
/NOCOMPILE prevents compilation if the associated object
file is current; otherwise it forces
compilation. The switch is useful chiefly in
canceling a /COMPILE or /RELOCATABLE switch.
Default
-------
/NODEBUG excludes special debugging information from
your object file
Default
-------
/NOLIBRARY same as /NOSEARCH
/NOLIST prevents a line printer listing of the program
Default
-------
/NOOPTIMIZE prevents the generation of a globally optimized
object file. (For FORTRAN programs only.)
Default
-------
/NOSEARCH requires all modules in the object file library
(the file accompanied by this switch in the
command line) to be loaded even if they are not
called by your program. Use this switch to
cancel a /SEARCH switch.
Default
-------
/NOSYMBOLS prevents a symbol table from being loaded along
with the object file
/OPTIMIZE calls for generation of a globally optimized
object file, i.e., one that runs as quickly as
possible. (For FORTRAN programs only, and only
if you do not also give the /DEBUG switch.)
/RELOCATABLE prevents compilation of the source file,
forcing use of an existing object file even if
the object file is out of date
/SEARCH requires that the object file library (the file
accompanied by this switch in the command line)
be searched for modules called by your program
or by a program subroutine. Only these modules
are loaded, along with modules called from the
system libraries, which are always searched.
/SYMBOLS loads a symbol table along with the object
file; helpful for debugging a program.
Default
-------
Characteristics
Compiling New Sources Only
Before loading programs, the system ordinarily compiles any
specified source (and only those sources) whose write date
is more recent than that of the object file of the same
name. You can override this action with the /COMPILE or
/RELOCATABLE switch.
Using Standard File Types
If you specify source files with standard types (.FOR, .MAC,
.CBL, or .ALG) in a LOAD command, the system automatically
calls the appropriate compiler when compilation is
necessary. If you specify source files by filename only,
the system searches your connected directory for a file of
this name and a standard type. To load programs from
sources that have nonstandard file types, give a switch to
indicate the proper compiler (/FORTRAN, /MACRO, /COBOL, or
/ALGOL). A switch will take precedence over a standard file
type if they indicate different languages. If no compiler
is indicated with either a switch or a standard file type,
the FORTRAN compiler is used.
Hints
Commas Between Filespecs
If you give two or more filespecs separated by commas as
arguments to LOAD, the loaded programs exist in memory at
the same time and will operate as a single program. You can
use this feature to substitute one module for another under
varying conditions or for different applications.
Plus Signs Between Filespecs
If you give two or more source filespecs separated by plus
signs (+) as arguments to LOAD, they are compiled together
as if they were a single file. Their object module is
stored under any filename given as the "object" argument of
the command, or (if none) under the last filename in the
group and file type .REL.
Indirect Files as Arguments
You can store arguments (source and object filespecs,
switches) of a LOAD command in an indirect file, and specify
them by typing an at sign (@) and its filespec as a LOAD
command argument. If you give other filespecs as well, you
must specify the indirect file last.
Running Link Directly
The LOAD command automatically runs LINK, the system's
loader program, but if you require more control of the
loading process you can run LINK directly. See the TOPS-20
LINK Reference Manual.
Restrictions
Switches Assuming Compilation
/CREF
/DEBUG
/LIST
/NODEBUG
/NOLIST
/NOOPTIMIZE
/OPTIMIZE
The above switches will not take effect unless the LOAD
command causes a new compilation of the relevant source
file. See Characteristics - Compiling New Sources Only,
above, for more information.
Warning - Generation Numbers, Long Filespecs
You must not give generation numbers when specifying source or
object files; the system automatically uses the highest
generation. Also, most compilers require filenames of 6 or fewer
characters and file types of 3 or fewer characters.
Effect on Memory and Terminal
The LOAD command clears memory and loads your program. It leaves
your terminal at TOPS-20 command level.
Related Commands
COMPILE, EXECUTE, and DEBUG other LOAD-class
commands for performing
related functions
SAVE for saving the loaded
program in an .EXE file
START for starting the loaded
program
SET DEFAULT COMPILE-SWITCHES for establishing
default switches for
LOAD-class commands
INFORMATION DEFAULTS COMPILE-SWITCHES for examining default
switches established
for LOAD-class commands
Examples
1. Load an object file into memory.
@LOAD LSTSQ.REL
LINK: LOADING
EXIT
@
2. Load the same program, allowing the system to update the
object file if necessary.
@LOAD LSTSQ/FORTRAN
FORTRAN: LSTSQ
MAIN.
LINK: LOADING
EXIT
@
3. Load a MACRO program and request a loader map or memory map.
(Notice the filename of this map.)
@LOAD TEST2/MAP
MACRO: FT
LINK: LOADING
EXIT
@TDIRECTORY
WRITE
PS:<LATTA>
FT.MAP.1 6-APR-78 15:23:17
TEST2.REL
@
4. Load a COBOL program, forcing a new compilation that includes
only the required modules. Request a map, and specify a name
for this map.
@LOAD /MAP:COBMEM.MAP TEST1/COMPILE, COBLIB/SEARCH
COBOL: DBL [TEST1.CBL]
LINK: LOADING
EXIT
@
5. Compile a program. Then load it, requesting a
cross-reference listing this time. Finally, save the program
in executable format.
@COMPILE TEST1/COBOL
COBOL: DBL [TEST1.CBL]
@LOAD /COMPILE/CREF
COBOL: DBL [TEST1.CBL]
LINK: LOADING
EXIT
@SAVE
TEST1.EXE.1 SAVED
@
6. Combine two FORTRAN sources into an object program under a
new name. Start this program.
@LOAD LSTSQ+ABRR REGRES
FORTRAN: LSTSQ
MAIN.
MAIN.
LINK: LOADING
EXIT
@START
@
7. Create an indirect file, and use it to load several modules
at once. Request cross-reference files, then give the CREF
command to turn these into listings.
@CREATE SERVTT.CMD
INPUT: PS:SERVTT.CMD.1
00100 HJRAD/COMPILE, FORLIB/SEARCH
00200 HJVTT/COMPILE, FORLIB/SEARCH
00300 HJINI/RELOCATABLE
00400
*E
[SERVTT.CMD.1]
@LOAD /CREF @SERVTT.CMD
FORTRAN:HJRAD
MAIN.
FORTRAN: HJVTT
MAIN.
LINK: LOADING
EXIT
@CREF
CREF: HJRAD
CREF: HJVTT
@
LOGIN
Function
The LOGIN command begins your timesharing job, and connects you
to and accesses your log-in directory.
Format
@LOGIN (USER) name (PASSWORD) pwd (ACCOUNT) acc (SESSION REMARK) remark
----- ---- --- --- ------
where
name is your user name
pwd is your secret password (which is not printed on
your terminal)
acc is an account name or number that you are authorized
to use
remark is an optional comment of 39 or fewer characters,
describing the coming terminal session
Output
Notice of User Mail, and System Mail
After the system acknowledges a valid LOGIN command by
printing your job number, terminal number, and the current
date and time, it informs you if another user has sent you a
message via the MAIL program. Then system mail (mail sent
by privileged users to all users) that has accumulated since
your last log-in is displayed on your terminal.
Characteristics
Typing an Initial CTRL/C
Before logging in you may have to type a CTRL/C (which will
not echo but will print the system herald or greeting) to
get the @ prompt necessary for typing the LOGIN command. If
you are dialing in by telephone to a line declared autobaud
by the system manager, this initial CTRL/C or a carriage
return will enable the system to determine your terminal's
speed setting, as long as the speed is either 110, 150, or
300.
Rights, Capabilities, and Charges
The LOGIN command gives you ownership rights to your log-in
directory, and any group rights established for you on PS:.
In addition, you are granted whatever capabilities (e.g.,
Maintenance, Wheel, etc.) have been awarded to you, and can
be sure that any charges you incur for the use of system
resources (e.g., CPU time, the batch and printing systems)
will be billed to your user name.
Hints
Commands in Files Executed at Log-in Time
TERMINAL Commands
If you have commands in your PS:LOGIN.CMD file that
control terminal output (e.g., TERMINAL PAGE or
TERMINAL LENGTH), be sure to put them before the first
command that runs a program. Then they will be in
effect when system mail is displayed.
For Affecting Entire Session or Current Level Only
As soon as you log in, the system executes the commands
contained in files of specification LOGIN.CMD and
COMAND.CMD in your log-in directory for a timesharing
job, or BATCH.CMD for a batch job. Commands that
affect your entire job, e.g., TERMINAL and DEFINE,
belong in LOGIN.CMD. Commands that affect only the
current level of TOPS-20, e.g., most SET commands, must
be put into COMAND.CMD if you want them to be executed
automatically after every PUSH command as well as after
LOGIN.
A Final TAKE Command
To avoid display of a message of the form, "End of
PS:LOGIN.CMD" after execution of a command file, make
the last command in such a file a TAKE command with no
arguments.
Simplifying Log-ins
By using the SET DIRECTORY ACCOUNT-DEFAULT command you
cause subsequent LOGIN commands to require just your
user name and password.
Special Cases
Commands You Can Issue Before Log-in
You can give these commands before logging in: ATTACH;
BREAK; DAYTIME; INFORMATION with arguments AVAILABLE,
COMMAND-LEVEL, MAIL, TERMINAL-MODE and VERSION; LOGOUT;
SET with arguments LATE-CLEAR-TYPEAHEAD and TIME-LIMIT;
SYSTAT; TERMINAL; and UNATTACH.
Logging in to PTYs
You do not need to give a password when logging in to a PTY
(pseudo-terminal).
Effect on Memory and Terminal
The LOGIN command does not affect memory and leaves your terminal
at TOPS-20 command level. However, commands in command files
executed during log-in (see Hints, above) will have their usual
effect on memory and your terminal.
Related Commands
ATTACH for joining to your terminal a
job that has already been
logged in
LOGOUT for ending your timesharing job
SET DIRECTORY ACCOUNT-DEFAULT for specifying a default
account for subsequent log-ins
Examples
1. Log in, using account 341.
@LOGIN C.RYDER 341
Job 39 on TTY41 8-May-78 11:04:21
@
2. Type a CTRL/C to get the TOPS-20 greeting, then log in, using
account 341 and inserting a session remark. Give INFORMATION
JOB as your first command, to see this session remark.
SYSTEM 2102 DEVELOPMENT SYSTEM, TOPS-20 Monitor 3A(1512)
@LOGIN URQUHART 341 TEST-REMARK
Job 42 on TTY29 8-May-78 9:15:15
End of LOGIN.CMD.1
@INFORMATION JOB
Job 42, User URQUHART, Account 341, TTY29
Session remark: TEST-REMARK
@
LOGOUT
Function
The LOGOUT command ends a timesharing job.
Format
@LOGOUT n
------ -
where
n is an optional job number. Specify n only when logging out
a job other than your attached job.
Characteristics
Expunging Your Log-in and Connected Directories
Before logging you out, the system expunges any deleted
files from your log-in and connected directories, and prints
a message if either directory is still exceeding its
assigned permanent disk quota.
Logging Out Other Jobs
By specifying a job number you can log out any other job
logged in under the same user name as your attached job. A
user with Wheel or Operator capabilities enabled can log out
any job other than his attached job.
Effect on Memory and Terminal
The LOGOUT command clears memory and leaves your terminal in the
state before log-in. LOGOUT n does not affect memory and leaves
your terminal at TOPS-20 command level.
Related Commands
DETACH for disengaging a job from your terminal without
ending the job
LOGIN for beginning your timesharing job
UNATTACH for disengaging a job from another terminal without
ending the job
Examples
1. Log out your job.
@LOGOUT
Killed Job 18, User C.RYDER, Account 341, TTY 233,
at 8-May-78 16:25:46, Used 0:0:5 in 1:2:16
2. Log out your job, receiving a warning message that your
directory is over its storage quota.
@LOGOUT
<URQUHART> Over permanent storage allocation by 8 page(s).
Killed Job 39, User URQUHART, Account 341, TTY 41
at 8-May-78 16:33:12, Used 0:0:1 in 0:1:56
3. Check what jobs are logged in under your user name. Log out
a detached job and verify that it is gone, then log out your
attached job.
@SYSTAT LATTA
39 DET EXEC LATTA
43* 226 EXEC LATTA
@LOGOUT 39
@SYSTAT LATTA
43* 226 EXEC LATTA
@LOGOUT
Killed Job 43, User LATTA, Account 341, TTY 226,
at 8-May-78 16:35:16, Used 0:0:1 in 0:1:1
MERGE
Function
The MERGE command places an executable program into memory,
combining it with whatever program (if any) is already there.
Format
@MERGE filespec
----- --------
where
filespec is the file specification of any executable program
Default filetype - .EXE
-------
Characteristics
Executable Files Only
If a program you try to merge is not in executable format,
you may get an immediate error message (e.g., "?UNEXPECTED
END-OF-FILE TRAP...") or a delayed one (e.g., "?ENTRY VECTOR
IS NOT LESS THAN 777") after the merge. In either case be
sure that you have specified an executable program before
investigating further. The MERGE command does not alter the
entry vector if the file being merged is written in proper
.EXE format.
Page Overlays
If there is a program already in memory when you give the
MERGE command, it will remain intact unless some pages of
the new program overlay it. In such a case the new pages
replace the old. However, if the file being merged was
created by a CSAVE command, the merge and any replacements
occur on a word-for-word basis, rather than page for page.
Examples
1. Merge an executable program into memory.
@MERGE TESTF1.EXE
@
2. Place an executable system program in memory, then merge a
system debugging program with it. Give INFORMATION
MEMORY-USAGE commands to verify that both programs are
intact.
@GET SYS:DUMPER
@INFORMATION MEMORY-USAGE
18. pages, Entry vector loc 3067 len 3
0 PS:<NEXT-RELEASE>DUMPER.EXE.1 1 R, CW, E
3-23 PS:<NEXT-RELEASE>DUMPER.EXE.1 2-22 R, CW, E
@MERGE SYS:UDDT
@INFORMATION MEMORY-USAGE
25. pages, Entry vector loc 3067 len 3
0 PS:<NEXT-RELEASE>DUMPER.EXE.1 1 R, CW, E
3-23 PS:<NEXT-RELEASE>DUMPER.EXE.1 2-22 R, CW, E
770-776 PS:<LOADTEST>UDDT.EXE.7 1-7 R, CW, E
@
MODIFY
Function
The MODIFY command adds or changes switches for a request made by
a previous PRINT or SUBMIT command.
Format
@MODIFY (REQUEST TYPE) queue (JOBNAME) name /switch:value...
------ ----- ---- ----------------
where
queue is the waiting list in which you placed the original
request. These arguments are currently possible:
PRINT (for requests in the line printer output
queue, placed there by the PRINT command)
BATCH (for requests in the batch input queue,
placed there by the SUBMIT command)
name is the jobname of the request, of 6 characters or
less. This is the name appearing in the Job column in
the list of queues supplied by the INFORMATION
OUTPUT-REQUESTS command or INFORMATION BATCH-REQUESTS
command. Use an asterisk (*) to modify all your jobs
in the specified queue.
switch is a keyword, chosen from the list below, naming the
switch you want to change
value is the new value of the indicated switch
... means that you can show more changes to the specified
request of the form /switch:value
Summary of MODIFY Command Switches
Switch Applicable to:
/AFTER:date and/or time PRINT BATCH
/DEPENDENCY-COUNT:n BATCH
/FORMS:forms name PRINT
/LIMIT:n PRINT
/NOTE:12-character message PRINT
/PRIORITY:n PRINT BATCH
NO
/RESTARTABLE:YES BATCH
/SEQUENCE:n PRINT BATCH
/TIME:hh:mm:ss BATCH
0
/UNIQUE:1 BATCH
/USER:user name PRINT BATCH
MODIFY Command Switches
Applicable Queue
/AFTER:date and/or time PRINT, BATCH ensures that the request
will not be processed
until after the revised
date and/or time
specified. NOV-12-77,
and 18:00 illustrate two
arguments to this
switch. If you give
both date and time,
separate them with a
space. The time can be
preceded by a plus sign
(+), which will delay
processing by the
indicated length of time
from the present.
/DEPENDENCY-COUNT:n BATCH sets the request's
dependency count to the
new value n. This
switch can also be
followed by a signed
value, i.e., +n or -n,
which will increase or
decrease the old value
by the specified amount.
A batch request is not
processed until its
dependency count is 0.
See the TOPS-20 Batch
Reference Manual for
more information about
dependency counts.
/FORMS:forms name PRINT specifies, in six or
fewer characters, new
forms (determining the
proper color, width,
weight, vertical format,
carriage control tape,
etc.) to use with the
job
/LIMIT:n PRINT places a new limit of n
pages on the output of
the job
/NOTE:message PRINT labels the header page
of output, i.e., the
page displaying the
jobname, with a new
message or notation of
up to 12 characters.
The message must be
enclosed in double
quotation marks if it
contains spaces or
punctuation characters.
/PRIORITY:n PRINT, BATCH assigns a new number n
reflecting the urgency
of the request. This n
must be from 0 to 63,
with larger numbers
receiving earlier
treatment.
NO
/RESTARTABLE:YES BATCH specifies whether the
job should be started
again if the system
crashes and is restarted
/SEQUENCE:n PRINT, BATCH does not change the
sequence number of the
job but rather specifies
which job to modify.
This switch is useful
when you have several
jobs with the same
jobname; otherwise the
MODIFY command affects
all of them.
/TIME:hh:mm:ss BATCH revises the limit for
the maximum amount of
CPU time available to
the job; given in
hours, minutes, and
seconds.
0
/UNIQUE:1 BATCH changes your
declaration, if you have
submitted two or more
jobs, whether they are
(0) or are not (1)
allowed to run
concurrently
/USER:user name PRINT, BATCH specifies the user whose
request is to be
modified; for
privileged users only.
Characteristics
MODIFY Effective Only Before Processing
The MODIFY command affects a batch or output request only
before processing has begun. After processing has begun,
you can only cancel the request with the CANCEL command, and
then make a new request.
Hints
Using the /DEPENDENCY-COUNT Switch
You can use the /DEPENDENCY-COUNT switch to specify the
order in which your batch jobs are processed. Set the
dependency count of all but the first job to some positive
value when you submit them, and include MODIFY commands in
each job's control file to bring the next job's dependency
count to 0 at the appropriate time. See Example 4.
Effect on Memory and Terminal
The MODIFY command does not affect memory and leaves your
terminal at TOPS-20 command level.
Related Commands
CANCEL for removing batch and output
requests
INFORMATION BATCH-REQUESTS for examining entries in the
batch queue
INFORMATION OUTPUT-REQUESTS for examining entries in the
output queues
PRINT for placing requests in a line
printer output queue
SUBMIT for placing requests in the batch
input queue
Examples
1. Modify a batch request (of jobname ARTIFI) to make it run
more quickly.
@modify batch artifi /priority:63
[1 Job Modified]
@
2. Modify a print request (of jobname PHIAL) to include a note
on the header page.
@modify print phial /note:"DUE: 11/4"
[1 Job Modified]
@information output-requests /all/user
Queue Job Seq Limit User
----- --- --- ----- ----
LPT PHIAL 7096 52 LATTA
/AFTER:11-May-78 17:00:00 /Note:"DUE: 11/4"
@
3. Modify one job of several having the same jobname.
@information batch-requests /user
Job Seq User
--- --- ----
PRTSK 7099 LATTA /AFTER:11-May-78 17:00:00
PRTSK 7100 LATTA /AFTER:11-MaY-78 17:00:00
PRTSK 7512 LATTA /AFTER:11-May-78 17:00:00
@modify batch prtsk /sequence:7512/af:9:00
[1 Job Modified]
@
4. Use the TYPE command to examine some of your control files.
(Notice the use of the MODIFY command within these files to
ensure that they are processed in a certain order when
submitted together.) Submit these three control files and
verify their placement in the batch input queue.
@type arvm%.ctl
ARVM1.CTL.1
@RUN TESTF1
@PRINT TESTF1.RSM
@MODIFY BATCH ARVM2 /DEPENDENCY-COUNT:0
ARVM2.CTL.2
@RUN TESTF2
@PRINT TESTF2.RSM
@MODIFY BATCH ARVM3/ DEPENDENCY-COUNT:0
ARVM3.CTL.1
@RUN TESTF3
@PRINT TESTF3.RSM
@PRINT SUMJOB.RSM
@submit /after:17:00 arvm1
[INP:ARVM1=/Seq:7114/Time:0:05:00]
@submit /dependency-count:1 arvm2
[INP:ARVM2=/Seq:7115/Time:0:05:00]
@submit arvm3 /dependency-count:1
[INP:ARVM3=/Seq:7116/Time:0:05:00]
@information batch-requests /all/user
Job Seq User
--- --- ----
ARVM1 7114 LATTA /AFTER:11-May-78 17:00:00 /UNIQUE:1
ARVM2 7115 LATTA /DEPENDENCY-COUNT:1 /UNIQUE:1
ARVM3 7116 LATTA /DEPENDENCY-COUNT:1 /UNIQUE:1
@
POP
Function
The POP command terminates the current level of TOPS-20 and
returns you to its superior process.
Format
@POP (COMMAND LEVEL)
---
Characteristics
POP the Opposite of PUSH
You can do one and only one POP command for every previous
PUSH command. Giving too many POP commands will cause an
error message to be printed on your terminal.
Special Cases
Returning to PTYCON With POP
The POP command usually returns you to the level of TOPS-20
from which you gave a previous PUSH command. But a few
system programs, e.g., PTYCON, also allow you to give PUSH
to get a new level of TOPS-20. Giving the POP command to
this level of TOPS-20 returns you to command level in that
program.
Effect on Memory and Terminal
The POP command clears memory, finishes the current level of
TOPS-20, and returns your terminal to the previous TOPS-20
command level (but see Special Cases, above). Memory for this
previous TOPS-20 command level is not affected by this action.
Related Commands
CONTINUE for resuming execution of a program in memory
PUSH for obtaining a new level of TOPS-20
Examples
1. Give the POP command to return to a higher level of the
TOPS-20 command processor (EXEC).
@POP
@
2. Run a program and halt it with CTRL/Cs. Give a CONTINUE STAY
command to resume its execution, and then the PUSH command
for a new level of TOPS-20. Run another program at this
lower level, then use the POP command to return to the first
level before receiving the final message of the first
program.
@RUN DMN
^C
@CONTINUE STAY
@PUSH
TOPS-20 Command processor 3(414)
@RUN TESTF1
THIS IS A TEST.
END OF EXECUTION
CPU TIME: 0.03 ELAPSED TIME: 0:72
EXIT
@POP
EXIT
@
PRINT
Function
The PRINT command places requests in a line printer output queue
(list of jobs waiting to be printed).
Format
@PRINT (FILES) /switch(es) filespec/switch(es),...
----- ----------- -----------------------
where
switches are keywords, chosen from the list below, indicating
your choice of PRINT command options. These
switches are of two kinds: job switches and file
switches.
Job switches apply to every file specified in the
command, no matter where you give the switches.
File switches are local, i.e., affect only the
immediately preceding file, unless you give them
before specifying any files; in that case they are
global, i.e., applicable to all files in the
command. Local file switches supersede any
conflicting global file switches that apply to the
same file.
Defaults are shown in the list of switches
--------
filespec is the specification of a file you wish to print.
You can use wildcard characters (% and *) to specify
more than one file.
,... means that, after a comma, you can give more
arguments of the form already shown
Summary of PRINT Command Switches (defaults in boldface)
Job Switches (affecting the entire command)
/AFTER:date and/or time
/FORMS:forms name Default forms name - NORMAL
----- -------
/JOBNAME:6-character name Default name - first six
------- -------
characters of first
filename in request
/LIMIT:n Default n - calculated from length
----- -------
of files
/LOWERCASE
/NOTE:12-character message
/PRIORITY:n Default n - 10
-------- -------
/UPPERCASE
/USER:user name
----
File Switches (affecting only the nearest preceding
file, unless placed before all filespecs)
/BEGIN:n Default n - 0
----- -------
/COPIES:n Default n - 1
------ -------
/DELETE Default for files of type .LST
-------
ASCII
-----
COBOL
/FILE:ELEVEN
FORTRAN Default for files of type .DAT
------- -------
only
/HEADER
------
/NOHEADER
/PRESERVE Default for all files except those
-------- -------
of type .LST
ARROW
-----
ASCII
/PRINT:OCTAL
SUPPRESS
/REPORT:12-character title
SINGLE
------
/SPACING:DOUBLE
--------
TRIPLE
PRINT Command Switches
Job Switches (affecting the entire command)
/AFTER:date and/or time ensures that the job will not be
printed until after the date and/or
time specified. NOV-12-78 and 18:00
illustrate two arguments to this
switch. If you give both date and
time, separate them with a space.
The time can be preceded by a plus
sign (+), which will delay processing
by the indicated length of time from
the present.
/FORMS:forms name specifies, in six or fewer
characters, the forms (determining
the paper color, width, weight,
vertical format, carriage control
tape, etc.) to use for the printing
job. Note that using this switch may
delay processing until the operator
can mount the proper forms.
Default forms name - NORMAL
-------
/JOBNAME:name assigns a name (of six or fewer
characters) to the printing job
Default name - first six
-------
characters of
first filename in
the request
/LIMIT:n places a limit of n pages on the
output of the printing job
Default limits, usually
-------
adequate, are computed
from the size of the
files you want printed
/LOWERCASE directs the job to a line printer
that can print both uppercase and
lowercase characters
/NOTE:message labels the header page of output,
i.e., the page displaying the
jobname, with a message or notation
of up to 12 characters. The message
must be enclosed in double quotation
marks if it contains spaces or
non-alphanumeric characters.
/PRIORITY:n assigns a number n, reflecting the
urgency of the print request. This n
must be from 0 to 63, with larger
numbers receiving earlier treatment.
Default n - 10
-------
/UPPERCASE directs the job to a line printer
that uses only uppercase characters
/USER:user name specifies the user to be the owner of
the PRINT request. For privileged
users only.
File Switches (affecting only the nearest preceding file, unless
placed before all file specifications)
/BEGIN:n starts the printing at page n of the
file
Default n - 0
-------
/COPIES:n requests that n copies of the file be
printed; n must be less than or
equal to 62.
Default n - 1
-------
/DELETE deletes the file after printing
Default for files of type .LST
-------
ASCII specifies that the file consists of
COBOL ASCII text, or COBOL SIXBIT text; or
/FILE:ELEVEN (ELEVEN) contains four eight-bit
FORTRAN bytes in each 36-bit word - for paper
tape punch only; or is FORTRAN ASCII
text, where column 1 of each line is
interpreted as a carriage control
character.
Default - ASCII (except for
-------
files of type .DAT,
for which the default
is FORTRAN)
/HEADER causes two header pages containing
the jobname to be printed before the
file itself
Default
-------
/NOHEADER prevents the printing of header pages
before the file
/PRESERVE saves the file after printing
Default for all files except
-------
those of type .LST
ARROW designates the mode for printing the
ASCII files. ARROW prints the file
/PRINT:OCTAL literally, but denotes each control
SUPPRESS character by an up-arrow (^) and the
character, except for the following,
which are printed literally:
carriage return, linefeed, horizontal
tab, vertical tab, and formfeed.
ASCII prints the file literally,
without omissions or substitutions.
OCTAL prints each word in the file
as unsigned octal integers; 3 groups
of 128 words (8 rows of 16 columns
each) appear on a standard line
printer page. SUPPRESS prints the
file without any blank lines, causing
all vertical format characters
(CTRL/K, CTRL/L, CTRL/Q, CTRL/R,
CTRL/S, and CTRL/T) to be converted
to CRLFs (carriage return/linefeeds),
and then interpreting multiple
occurrences of CRLFs as a single
CRLF.
Default - ARROW
-------
/REPORT:title scans your files and prints only
those lines whose first characters
are the title you give. This title
can contain up to 12 characters
(including the quotation marks which
must enclose the title if it contains
spaces). This switch is used along
with the COBOL report writer.
SINGLE determines the spacing between lines
/SPACING:DOUBLE in the printout
TRIPLE Default - SINGLE
-------
Output
Jobname, Sequence Number, Limit, Number of Input Files
As soon as you complete a valid PRINT command, the system
responds by printing, on your terminal, the jobname, its
sequence number, the limit in pages of output assigned to
the request, and the number of input files in the request.
Characteristics
Ordinary Operation - No Switches
For most purposes you can use the PRINT command with just a
series of filespecs for arguments.
Switch Defaults Set by System Manager
The defaults shown in the list of switches are correct for
most user sites. However, your system manager can change
some of those default settings. The switches most commonly
affected are: /FORMS, /HEADER-/NOHEADER, /LIMIT, and
/PRIORITY.
Hints
Using SET DEFAULT PRINT
If there are switches that you always or usually supply when
using PRINT, give the SET DEFAULT PRINT command to establish
them as defaults for the remainder of your terminal session.
The switches will then behave as if you had typed them
directly after the command name. You can supersede any of
these default switches by actually supplying the switch,
with another value, when you give the PRINT command. Put
SET DEFAULT PRINT into a file of specification COMAND.CMD in
your log-in directory if you want these default switches to
be in effect for all levels of future terminal sessions as
well.
Effect on Memory and Terminal
The PRINT command does not affect memory and leaves your terminal
at TOPS-20 command level.
Related Commands
CANCEL for withdrawing PRINT requests
INFORMATION OUTPUT-REQUESTS for examining requests in the
output queues
MODIFY for changing PRINT requests
before processing has begun
SET DEFAULT PRINT for establishing default switches
for subsequent PRINT commands
Examples
1. Print two of your files.
@PRINT 4-UPED.TXT, CMPTN.TXT
[LPT:4-UPED=/Seq:423/Limit:300, 2 Files]
@
2. Print three files, assigning a jobname and a note for the
header page; postpone the printing. Make 4 copies of one of
the files, and double-space another one.
@PRINT /JOBNAME:COMFIL/NOTE:CONFIDENTIAL/AFTER:JUNE 12,
1979 DIRSPC.MEM, TESTM1.MAC/COPIES:4,
MEMO.FRM/SPACING:DOUBLE
[LPT:COMFIL=/Seq:426/Limit:310, 3 Files]
@INFORMATION OUTPUT-REQUESTS /USER/ALL
Queue Job Seq Limit User
----- --- --- ----- ----
LPT COMFIL 426 310 LATTA
/AFTER:12-Jun-79 00:00:01 /Note:CONFIDENTIAL
@
3. Print a job in a hurry, by assigning a high priority and
skipping the header and first five pages. Print 10 copies of
the first file, and 18 of the second.
@PRINT /JOBNAME:RUSH/PRIORITY:60/NOHEADER/BEGIN:5/COPIES
:10 HARBOR.TXT, BARENTS.TXT/COPIES:18
[LPT:RUSH=/Seq:428/Limit:1600, 2 Files]
@INFORMATION OUTPUT-REQUESTS /USER/ALL
Queue Job Seq Limit User
----- --- --- ----- ----
LPT RUSH 428 1600 LATTA
/PRIORITY:60
@
PUSH
Function
The PUSH command creates a new level of TOPS-20 inferior to the
one from which you give the PUSH command.
Format
@PUSH (COMMAND LEVEL)
----
Characteristics
A New Level of TOPS-20
The PUSH command creates a lower TOPS-20 command level
(EXEC) than you were using. The file of specification
COMAND.CMD in your log-in directory is executed again, you
have a fresh copy of memory and can begin giving commands as
if you had just logged in. However, job-wide parameters
(e.g., connected and accessed directories, logical name
definitions, most parameters affected by SET commands) are
unaffected by the PUSH command and retain their values from
just before PUSH.
Hints
Using CONTINUE STAY With PUSH
You can use the PUSH command to run two programs at once or
to do other work that requires more than one copy of memory.
Simply use the CONTINUE STAY command to continue execution
of your current program before using PUSH. After PUSH you
can run another program or otherwise alter memory without
affecting memory for the first program. See Example 2. But
see also Warnings, below.
Restrictions
Number of Successive PUSH commands
You can give as many pairs of PUSH and POP commands as
necessary to complete your task. Although there is a limit
to the number of times you can give PUSH without giving
intervening POP commands, this limit is large enough
(approximately 24) not to interfere with most applications.
Withheld Log-out Capability
You can usually log out from a lower level of TOPS-20 than
the one to which you logged in. By doing so, you
simultaneously conclude all processes of your job. However,
if a program (e.g., PTYCON) has initialized a level of the
TOPS-20 command processor but has withheld log-out
capability from it, you must use the POP command to return
to a higher level of TOPS-20 before you can log out.
Warning
Competition Between Processes
If you have two programs running at once after using
CONTINUE STAY and PUSH commands (see Hints, above) they may
try to access the same files at the same time. Or, TOPS-20
commands given at the lower level may be intercepted by a
program running at the higher level. For a discussion of
these possibilities, see the Restrictions section of the
CONTINUE command description.
Effect on Memory and Terminal
The PUSH command preserves your present memory, gives you a fresh
copy of memory, and leaves your terminal at a new TOPS-20 command
level.
Related Commands
CONTINUE STAY for beginning execution of a program before
giving the PUSH command
POP for returning to a previous level of TOPS-20
Examples
1. Give the PUSH command.
@PUSH
TOPS-20 Command processor 3(414)
@
2. Run a program, and give a CTRL/C to return to TOPS-20 command
level. Give a CONTINUE STAY command to resume this program's
execution, and then a PUSH command for a new copy of the
TOPS-20 command language. Repeat this process twice; now
you have three programs running at once. In the lowest
(fourth) level of your job, begin editing a file. (Note:
when running more than one program in this way, be sure that
they do not use the same compiler or the same data base;
otherwise, competition among them could cause unpredictable
situations to develop.)
@RUN TESTF1
^C
@CONTINUE STAY
@PUSH
TOPS-20 Command processor 3(414)
@RUN DMN
^C
@CONTINUE STAY
@PUSH
TOPS-20 Command processor 3(414)
@RUN PRODUK
^C
@CONTINUE STAY
@PUSH
TOPS-20 Command processor 3(414)
@EDIT ARTIFI.CTL
Edit: ARTIFI.CTL.7
*
R Command
Function
The R command places in memory and starts an executable program
stored on device SYS:.
Format
@R (PROGRAM) filespec
- --------
where
filespec is the file specification of any executable program
Default dev:<directory> - SYS:
-------
Default .typ - .EXE
-------
Characteristics
Necessity of R Command
Although in most cases you can run executable programs by
simply typing the program name in place of a TOPS-20
command, the R command is necessary for running a program
whose name is the same as a TOPS-20 command.
Hints
Defining SYS:
If you redefine logical name SYS: to be different from the
system-wide definition, you should include SYS: in the
search list if you want to use the R command to run system
programs.
Effect on Memory and Terminal
The R command clears memory, places in memory and starts the
specified program, and leaves your terminal at command level in
the program (if any), or at TOPS-20 command level.
Related Commands
INFORMATION LOGICAL-NAMES for examining the definition of
SYS:
RUN for running executable user
programs
Examples
1. Run the FILCOM system program.
@R FILCOM
*
2. Find out what APL programs are available in logical name
SYS:. Run one of them.
@DIRECTORY SYS:*APL*.EXE
PS:<FIELD-IMAGE>
APL.EXE.1
APLSF.EXE.1
MAPLFL.EXE.1
Total of 3 files
@R APL.EXE
TERMINAL..
RECEIVE
Function
The RECEIVE command notifies the system that you are willing to
accept communication links, or advice from another user, or
system messages.
Format
@RECEIVE argument
------- --------
where
argument is a keyword, chosen from the list below,
naming the kind of communication you are
willing to accept
RECEIVE Command Arguments
LINKS allows communication links established by
another user's TALK command
ADVICE allows both assistance and communication
links initiated by another user's ADVISE or
TALK command
SYSTEM-MESSAGES allows messages of interest to all users sent
by the operator or other privileged users
Default - LINKS
-------
Hints
Typing RECEIVE During Attempted TALK
If your terminal has been set to refuse links and another
user tries to talk to you by using the TALK command, both
terminals will give a series of CTRL/G signals (ringing
bells or high-pitched beeps) indicating the refused attempt.
If you give the RECEIVE LINKS command before these signals
are finished, the TALK command will succeed.
Effect on Memory and Terminal
The RECEIVE command does not affect memory and leaves your
terminal at TOPS-20 command level.
Related Commands
INFORMATION TERMINAL-MODE for examining your current terminal
settings
REFUSE for refusing communication links,
advice, or system messages
Examples
1. Give the RECEIVE command to accept communication links from
other users.
@RECEIVE LINKS
@
2. Set your terminal to receive links, at the request (sent via
the MAIL program, not shown here) of another user. Begin a
communication session with this user, during which you give
the RECEIVE ADVICE command also, to allow a demonstration of
the UDP program. Afterwards, set your terminal again to
refuse advice.
@RECEIVE
@
LINK FROM RENQUIST, TTY 127
@;THANKS, BUT IF YOU LET ME DO AN "ADVISE" I CAN SHOW YOU
@;HOW TO RUN THE PROGRAM BY ACTUALLY DOING IT. OKAY?
@; SURE, I'LL FIX MY SETTING.
@RECEIVE ADVICE
@ADVISE LATTA
Escape character is <CTRL>E, type <CTRL>^? for help
LATTA, MISC:<LATTA> Job 33 EXEC
[Advising]
UDP
UDP>LIST/DOCUMENTATION:/CREATED-SINCE:1-1-78 0:0
UDP>EXIT
@;YOU'LL GET A PRINTED LISTING TOMORROW.
@;DO YOU SEE HOW I DID IT?
@;YES, THANKS. GOODBYE.
@
[Advice terminated]
@REFUSE ADVICE
@
REENTER
Function
The REENTER command starts your currently loaded program at its
alternate entry point.
Format
@REENTER (PROGRAM)
-------
Characteristics
Using REENTER
The REENTER command starts your program at the address
specified by the second word in the program's entry vector.
For most programs this address is contained in location 124.
Usually the REENTER and START commands start the program at
the same point, but another re-entry point can be provided
to avoid initialization procedures or to use the program in
a different way.
Hints
Further Information
For more information about entry vectors, see the TOPS-20
Monitor Calls Reference Manual.
Effect on Memory and Terminal
The REENTER command does not affect memory and leaves your
terminal at a level determined by the program.
Related Commands
GET for placing an executable program in memory
LOAD for loading a source or object program into memory
START for entering a program at its normal entry point
Examples
1. Give the REENTER command for your current program.
@REENTER
2. Begin running a program, then give a CTRL/C to leave it and
obtain a file. Resume execution of the program at the
alternate entry point.
@R DUMPER
DUMPER>^C
@ACCESS PS:<P.SPECCINI>
Password:
@COPY PS:<P.SPECCINI>USR.FIL
PS:<P.SPECCINI>USR.FIL.1 => USR.FIL.1 [OK]
@END-ACCESS PS:<P.SPECCINI>
@REENTER
DUMPER>
REFUSE
Function
The REFUSE command notifies the system that you are not willing
to accept communication links, or advice from another user, or
system messages.
Format
@REFUSE argument
------ --------
where
argument is a keyword, chosen from the list below,
naming the kind of communication you are not
willing to accept
REFUSE Command Arguments
LINKS prevents both assistance and communication
links established by another user's ADVISE or
TALK command
ADVICE prevents assistance initiated by another
user's ADVISE command
SYSTEM-MESSAGES prevents messages of general interest sent to
all users by the operator or other privileged
users
Default - LINKS and ADVICE
-------
Hints
Typing RECEIVE During Attempted TALK
If your terminal has been set to refuse links and another
user tries to talk to you by using the TALK command, both
terminals will give a series of CTRL/G signals (ringing
bells or high-pitched beeps) indicating the refused attempt.
If you give the RECEIVE LINKS command before these signals
are finished, the TALK command will succeed.
REFUSE to Safeguard Terminal Output
If you want your terminal to print a long file, say, without
interference, use REFUSE LINKS and REFUSE SYSTEM-MESSAGES
commands to prevent all classes of message from being
received. Be sure to use the RECEIVE command afterwards to
restore the previous condition of your terminal.
Special Cases
Implicit Refusal of Advice
If you give the REFUSE LINKS command, your terminal will be
set to refuse advice also. However, the INFORMATION
TERMINAL-MODE command may not display this setting unless
you give an explicit REFUSE ADVICE command as well.
Privileged Disregard of REFUSE
A user with enabled Wheel or Operator capabilities can give
the TALK or ADVISE command for any job.
Effect on Memory and Terminal
The REFUSE command does not affect memory and leaves your
terminal at TOPS-20 command level.
Related Commands
INFORMATION TERMINAL-MODE for examining your current terminal
settings
RECEIVE for receiving communication links,
advice, or system messages
Examples
1. Use the REFUSE command to prevent other users from advising
your job.
@REFUSE ADVICE
@
2. Receive a communication link formed by another user's TALK
command. Confer with him briefly, then set your terminal to
refuse all classes of message over which you have control.
LINK FROM RENQUIST, TTY 127
@;HELLO DAVID. CAN YOU HELP ME WITH EDIT?
@;SORRY, PLEASE BREAK. I'M EXPECTING PRINTOUT AND THIS
@;WILL INTERFERE. WILL GET IN TOUCH LATER.
@;OKAY
@BREAK
@REFUSE ADVICE
@REFUSE LINKS
@REFUSE SYSTEM-MESSAGES
@
REMARK
Function
The REMARK command tells the system to regard the terminal input
that follows as comment only.
Format
@REMARK (MODE)
------
Type remark. End with CTRL/Z.
Characteristics
Ending Remarks
Until you give a CTRL/Z, the system merely displays what you
type, instead of trying to interpret it as commands.
Hints
Useful During TALK or ADVISE Session
If you have already established contact with another user by
a TALK or ADVISE command before giving REMARK, his terminal
will also display what you type. Give the REMARK command
before sending lengthy comments or demonstrating commands
that you don't want to take effect.
Effect on Memory and Terminal
The REMARK command does not affect memory and leaves your
terminal at remark level.
Related Commands
ADVISE for sending commands to another user's job
TALK for sending comments to another user
Examples
1. Give the REMARK command.
@REMARK
TYPE REMARK. END WITH CTRL/Z.
2. Receive a communication link from another user. Give the
REMARK command to speak with him. Give a CTRL/Z afterwards
to end the remarks.
@
LINK FROM P.SPECCINI, TTY 127
@;WHERE ARE THE NOTES FROM THE LAB DEMO THIS A.M.?
@REMARK
TYPE REMARK. END WITH CTRL/Z.
HI, PAUL. THEY'RE IN THE LAB'S LIBRARY AREA.
THAT'S CHEM:<P-CHEM.20.NOTES>. I DON'T KNOW
THE TITLE BUT LOOK AT THE DATES WITH A
TDIRECTORY COMMAND. OKAY?
;YES, THANKS. BYE
@BREAK
^Z
@
RENAME
Function
The RENAME command changes the specification of a file.
Format
@RENAME (EXISTING FILE) old filespec(s) (TO BE) new filespec
------ --- ----------- --- --------
where
old filespec(s) is a single file specification, or a series
of them separated by commas or indicated by a
wildcard character (% or *)
new filespec is the new specification under which you want
to store the file(s); include an asterisk
(*) if you gave more than one old filespec.
Default new filespec - old filespec, but
-------
with next higher generation
number
Output
Status of Files
If you use recognition on the new file specification, the
system prints !Old Generation!, !New Generation!, or !New
File!, to describe its status.
Confirmation of Action
As each file is renamed, the sytem prints its old and new
specification, and the word [Superseding] if it is replacing
previous contents, before ending with the word [OK]. The
delay before you see this [OK] indicates how long it took to
rename the file.
Characteristics
Efficiency of RENAME
The RENAME command is the fastest and most efficient means
of transferring files from one specification to another
within a structure, because only the file specifications
have to be changed - the contents are not copied.
Hints
Specifying a New Account and Protection Number
You can specify the new file's protection number and the
account to which its storage fees will be charged. Follow
the new filespec with a semicolon (;) and the letter P
before giving a new 6-digit protection number, and with a
semicolon and the letter A before giving a new account.
Ordinarily these values are set to the default file
protection and current account.
Restrictions
Renaming Between Structures
You cannot rename a file from one structure to another, but
must use the COPY command to reproduce its contents on the
new structure, then the DELETE command to remove it from the
old structure.
Renaming Open or Mapped Files
You cannot rename a file that is open or mapped into memory.
First give the RESET command, or POP followed by RESET, if
this is the case.
Warning
Replacing Previous Contents of Files
If you rename a file into a specification (including
generation number) that already exists, the previous
contents of the new file are replaced and cannot be
recovered.
Effect on Memory and Terminal
The RENAME command does not affect memory and leaves your
terminal at TOPS-20 command level.
Related Commands
COPY for making copies of files
Examples
1. Rename a file.
@RENAME ATM-50.SPC ATM-50.PRL
ATM-50.SPC.1 => ATM-50.PRL.1 [OK]
@
2. Use a wildcard character to rename all files of a given name.
@RENAME ATM-50.* 1-ATM-50.*
ATM-50.BAK.1 => 1-ATM-50.BAK.1 [OK]
ATM-50.PRL.1 => 1-ATM-50.PRL.1 [OK]
@
3. Access another user directory and transfer to it the files
renamed in Example 2.
@ACCESS <ORBEN>
Password:
@RENAME 1-ATM-50.* <ORBEN>
1-ATM-50.BAK.1 => <ORBEN>1-ATM-50.BAK.1 [OK]
1-ATM-50.PRL.1 => <ORBEN>1-ATM-50.PRL.1 [OK]
@END-ACCESS <ORBEN>
@
RESET
Function
The RESET command finishes the current process and all inferior
processes.
Format
@RESET
-----
Characteristics
Action of RESET
The RESET command, in addition to clearing memory for the
processes it finishes, closes all files, even if mapped,
opened by processes of the current and lower levels of
TOPS-20. It simultaneously terminates all lower processes.
Effect on Memory and Terminal
The RESET command clears memory and leaves your terminal at
TOPS-20 command level.
Related Commands
INFORMATION FILE-STATUS for determining which files are
currently open
INFORMATION MEMORY-USAGE for determining contents of memory
Examples
1. Give the RESET command to clear memory.
@RESET
@
REWIND
Function
The REWIND command returns a magnetic tape to its load point
(logical beginning, the beginning of the first file).
Format
@REWIND (DEVICE) dev:
------ ----
where
dev: is the name of the magnetic tape drive that you want to
rewind
Restrictions
REWIND With Open Files
If you have given a CTRL/C to exit from a program that has
opened a magnetic tape drive and you then give the REWIND
command for that tape drive, the system will first ask if
you want to close the associated file. You must do so for
REWIND to succeed, but will probably be unable to continue
the program from that point because the file will now be
closed.
Effect on Memory and Terminal
The REWIND command does not affect memory and leaves your
terminal at TOPS-20 command level.
Related Commands
BACKSPACE for moving a magnetic tape backward a specified
number of files or records
SKIP for moving a magnetic tape forward a specified
number of files or records
UNLOAD for rewinding a magnetic tape completely onto the
source reel
Examples
1. Rewind your magnetic tape.
@REWIND DAY:
@
2. Mount a tape, and prepare to copy files onto it. (Use the
REWIND command to be sure you are at the beginning.) After
copying the files, rewind the tape and (using the COPY
command) read the first one. Then give TOPS-20 commands to
free the resources you have been using.
@TMOUNT DAY:
[Operator notified]
[MTA0: assigned]
@SMOUNT SNARK:
Structure SNARK: mounted
@ACCESS SNARK:
@REWIND DAY:
@COPY SNARK:FIL-1.TAP DAY:
SNARK:FIL-1.TAP.1 => MTA0:FIL-1 [OK]
@COPY SNARK:FIL-2.TAP DAY:
SNARK:FIL-2.TAP.1 => MTA0:FIL-2 [OK]
@COPY SNARK:FIL-3.TAP DAY:
SNARK:FIL-3.TAP.1 => MTA0:FIL-3 [OK]
@REWIND DAY:
@COPY DAY: TTY:
MTA0: => TTY:
!THIS IS THE FIRST FILE.!
@UNLOAD DAY:
@DEASSIGN DAY:
@END-ACCESS SNARK:
@SDISMOUNT SNARK:
Structure SNARK: dismounted
@DEFINE DAY:
@
RUN
Function
The RUN command places in memory and starts an executable
program.
Format
@RUN filespec
--- --------
where
filespec is the file specification of any executable program
Default dev:<dir> - DSK:
-------
Default .typ - .EXE
-------
Characteristics
Efficiency of RUN
The RUN command does the work of the pair of commands GET
and START. It is a faster and less expensive means of
executing programs than EXECUTE, or than LOAD and START.
Therefore you should store frequently-run programs in .EXE
files and run them with this command.
Effect on Memory and Terminal
The RUN command clears memory, places in memory and starts the
specified program, and leaves your terminal at command level in
the program (if any), or at TOPS-20 command level.
Related Commands
EXECUTE for running source or object programs
GET for placing an executable program in memory
R for running executable programs stored on SYS:
START for starting the program currently in memory
Examples
1. Run one of your executable programs.
@RUN TESTF1.EXE
THIS IS A TEST.
END OF EXECUTION
CPU TIME: 0.04 ELAPSED TIME: 0.63
EXIT
@
2. Mount a structure and access a user's directory on the
structure. Run one of his programs.
@SMOUNT SNARK:
Structure SNARK: mounted
@ACCESS SNARK:<ELDRIDGE>
Password:
@RUN SNARK:<ELDRIDGE>FT.EXE
NEXT NUMBER:
SAVE
Function
The SAVE command makes a copy of memory and stores it in an
executable file.
Format
@SAVE (ON FILE) filespec (PAGES FROM) n1 (TO) n2, n3 n4, ...
---- -------- -- --- -- --- ---
where
filespec is the file specification under which you want to
store the program
Default filespec - program name.EXE
-------
n1 n2, are pairs of octal numbers specifying the span(s) of
n3 n4, memory pages you want to save
... Default n1 n2 - all assigned pages of memory
-------
from 0 to 777
Output
Status of Files
If you use recognition of the file specification, the system
prints !Old Generation!, !New Generation!, or !New File!, to
indicate its status on disk, or !OK! if saved on a non-disk
device.
Hints
Saving Programs Before Running Them
When you load a source or object program using the LOAD
command, save it using SAVE before running it. Then you can
run it in the future without first loading it using a
LOAD-class command. This is also true if you save the
program after running it, but it will then be in a post-run
state.
More Information
For more information about saved files, see the TOPS-20
Monitor Calls Reference Manual.
Effect on Memory and Terminal
The SAVE command does not affect memory and leaves your terminal
at TOPS-20 command level.
Related Commands
GET for putting a saved file into memory
LOAD for putting a source or object file into memory
RUN for running a saved program
START for starting the program in memory
Examples
1. Save the program currently in memory.
@SAVE
TESTF1.EXE.6 Saved
@
2. Assign a magnetic tape drive and ask the operator to mount
your tape on it. Use the GET command to put an executable
program into memory, then save it (specifying a new filename)
on tape and on disk. Finally, start the program, which is
still in memory.
@ASSIGN MTA0:
@TMOUNT LAT:
[Operator notified]
[MTA0: assigned]
@GET TESTF1
@SAVE MTA0:TAP.EXE
MTA0:TAP.EXE Saved
@SAVE
TAP.EXE.1 Saved
@START
THIS IS A TEST.
END OF EXECUTION
CPU TIME: 0.04 ELAPSED TIME: 0.17
EXIT
@
SDISMOUNT
Function
The SDISMOUNT command informs the system that you no longer need
a particular file structure that you have previously mounted.
Format
@SDISMOUNT (FILE STRUCTURE) dev:
--------- ----
where
dev: is the name of the structure you want to dismount
Characteristics
Action of SDISMOUNT
The SDISMOUNT command does not actually dismount a structure
but only reduces by 1 its mount count, which is the number
of users who have given the SMOUNT but not the SDISMOUNT
command for the structure. Use SREMOVE to dismount and
request removal of a structure.
Implicit SDISMOUNT With LOGOUT
If you forget to dismount a structure you have mounted, the
mount count is reduced when you log out.
Effect on Memory and Terminal
The SDISMOUNT command does not affect memory and leaves your
terminal at TOPS-20 command level.
Related Commands
INFORMATION STRUCTURE for finding out the names of users who
have mounted a given structure
SMOUNT for mounting a structure
SREMOVE for dismounting a structure and
requesting its removal
Examples
1. Dismount a structure.
@SDISMOUNT SNARK:
Structure SNARK: dismounted
@
SET
Function
The SET command establishes your choice of many available options
for your terminal session (job) or directory.
Format
@SET argument(s) setting(s)
--- ----------- ----------
where
argument is a keyword, chosen from the list below, indicating
your choice of SET command options
setting is a word or number, required to complete the
meaning of most SET commands
Summary of SET Command Arguments (defaults in boldface)
ACCOUNT account remark
ADDRESS-BREAK octal memory address,
@@AFTER n Default n - 1
----- -------
@@ALL
---
@@EXECUTE
@@NONE
@@READ
@@WRITE
CARD-READER-INPUT-SET name of input set n
CONTROL-C-CAPABILITY
--------------------
PRINT
DEFAULT SUBMIT /switch(es)
ACCOUNT-DEFAULT dev:<directory> account
password
FILE-PROTECTION-DEFAULT dev:<directory> octal protection code
-----------------------
password
Default code - 777700
-------
DIRECTORY GENERATION-RETENTION-COUNT-DEFAULT dev:<directory> n
--------- ----------------------------------
password
Default n - 1
-------
PASSWORD dev:<directory>
old password
new password
new password
PROTECTION dev:<directory> octal protection code
----------
password
Default code - 777700
-------
ENTRY-VECTOR octal memory location octal length between 1 and 777
Default length - 1
-------
ACCOUNT filespecs account
FILE GENERATION-RETENTION-COUNT filespecs n Default n - 1
---- -------------------------- -------
PROTECTION filespecs octal protection code
----------
Default code - 777700
-------
LATE-CLEAR-TYPEAHEAD
MAIL-WATCH
NEW-QUEUE-COMMANDS
------------------
ADDRESS-BREAK
CONTROL-C-CAPABILITY
PRINT
DEFAULT SUBMIT
NO LATE-CLEAR-TYPEAHEAD
-- --------------------
MAIL-WATCH
----------
TIME-LIMIT
UUO-SIMULATION
OLD-QUEUE-COMMANDS
COPY-ON-WRITE
EXECUTE
COPY-ON-WRITE
PAGE-ACCESS octal page numbers NO WRITE
NONEXISTENT
READ
WRITE
SESSION-REMARK remark of up to 39 characters
IMMEDIATE
---------
SPOOLED-OUTPUT DEFERRED
200
556
DENSITY 800
1600
SYSTEM-DEFAULT
--------------
ANSI-ASCII
CORE-DUMP
TAPE FORMAT INDUSTRY-COMPATIBLE
SYSTEM-DEFAULT
--------------
EVEN
PARITY ODD
---
RECORD-LENGTH n bytes Default n - 512
-------
TIME-LIMIT integral n
UUO-SIMULATION
--------------
SET Command Arguments
ACCOUNT account remark
begins charging the specified account
for the remainder of your current
terminal session or until you use the
command again. You must supply an
alphanumeric account name of 39 or fewer
characters valid for your user name.
Then you can type an optional session
remark, also of 39 or fewer characters,
to be inserted in system accounting data
for your current terminal session.
Check your current account and session
remark with INFORMATION JOB-STATUS.
ADDRESS-BREAK octal memory location,
causes the program in memory to be
suspended and a message to be printed on
@@AFTER n your terminal when the memory location
@@ALL you specify is referenced for the
@@EXECUTE indicated operation - execute, read,
@@NONE write, or any of these (ALL). With the
@@READ AFTER subcommand you determine how many
@@WRITE times it must be referenced before the
address break occurs; with NONE you
cancel address breaks for the specified
location, just as with the SET NO
ADDRESS-BREAK command. Each SET
ADDRESS-BREAK command cancels any
previous address break. Check your
current address break with INFORMATION
ADDRESS-BREAK.
Default subcommands - ALL, and
-------
AFTER 1
CARD-READER-INPUT-SET name of input set n
is used by the batch system to associate
the indicated set of punch cards,
beginning with deck n, with system
device CDR:
CONTROL-C-CAPABILITY allows any program executed at the
current command level to handle CTRL/C
interrupts itself. You cannot use this
command in a batch job. Check the
current setting with INFORMATION
PROGRAM-STATUS.
Default
-------
PRINT
DEFAULT SUBMIT /switch:value...
sets up, as default arguments to the
command selected, the switches and
values you specify. You can use any
PRINT or SUBMIT switches.
DIRECTORY ACCOUNT-DEFAULT dev:<directory> default account
PASSWORD: password
sets the account of 39 or fewer
characters to charge for your terminal
session whenever you log in to this
directory without specifying an account.
Check with INFORMATION DIRECTORY.
DIRECTORY FILE-PROTECTION-DEFAULT dev:<directory> octal code
PASSWORD:password
sets a default protection code governing
access to files subsequently created in
the directory. Check with INFORMATION
DIRECTORY.
Default code - 777700
-------
DIRECTORY GENERATION-RETENTION-COUNT-DEFAULT dev:<directory> n
PASSWORD:password
prescribes for the directory a default
value for the number of generations of
subsequently-created files to save.
Check with INFORMATION DIRECTORY.
Default n - 1
-------
DIRECTORY PASSWORD dev:<directory>
OLD PASSWORD:old password
NEW PASSWORD:new password
RETYPE NEW PASSWORD:new password
allows you to change the password of the
directory named. Check with INFORMATION
DIRECTORY.
DIRECTORY PROTECTION dev:<directory> octal protection code
PASSWORD:password
establishes a protection code governing
access to the directory. Check with
INFORMATION DIRECTORY.
Default code - 777700
-------
ENTRY-VECTOR octal memory location octal length from 1 to 777
lets you change the entry vector of the
program currently in memory to one
specifying different entry vector
parameters. Check the current setting
with INFORMATION MEMORY-USAGE.
Default length - 1
-------
FILE ACCOUNT filespecs account
specifies the account to charge for
storage of the files named. Check with
FDIRECTORY.
FILE GENERATION-RETENTION-COUNT filespecs n
tells the system how many generations of
the specified files to save. Check with
FDIRECTORY.
Default n - 1
-------
FILE PROTECTION filespecs octal protection code
sets a protection code for the specified
files. Check with FDIRECTORY.
Default code - 777700
-------
LATE-CLEAR-TYPEAHEAD
instructs the system to disregard all
terminal input made after a line that
causes an error and before the next
prompt. Check the setting for your
current level of TOPS-20 with
INFORMATION COMMAND-LEVEL.
MAIL-WATCH checks your MAIL file immediately and
every five minutes thereafter whenever
your terminal is about to type a TOPS-20
prompt (@ or $), and sends a message
([YOU HAVE NEW MAIL]) if this file
contains unread mail
NEW-QUEUE-COMMANDS directs the system to accept the new
(Release 3 and later) PRINT, SUBMIT,
INFORMATION OUTPUT-REQUESTS, and
INFORMATION BATCH-REQUESTS commands for
printing and batch jobs
Default
-------
NO CONTROL-C-CAPABILITY
removes the ability of programs at the
current level of TOPS-20 to prevent your
terminal from returning to the TOPS-20
command processor whenever you type a
CTRL/C; i.e., ensures that CTRL/C will
return you to TOPS-20. Check the
setting for your current level of
TOPS-20 with INFORMATION PROGRAM-STATUS.
PRINT
NO DEFAULT SUBMIT nullifies all default arguments
(established with a previous SET DEFAULT
command) for the indicated command
NO LATE-CLEAR-TYPEAHEAD
instructs the system to accept terminal
input made after an error message is
sent to your terminal and before the
next prompt. Check the setting for your
current level of TOPS-20 with
INFORMATION COMMAND-LEVEL.
Default
-------
NO MAIL-WATCH disables periodic checking of the MAIL
file, although you will see the notice,
[YOU HAVE A MESSAGE] at log-in time, and
can still check the status of your MAIL
file at any time by giving the
INFORMATION MAIL command
Default
-------
NO TIME-LIMIT removes any time limit set by a previous
SET TIME-LIMIT command. You cannot use
this command in a batch job.
NO UUO-SIMULATION
disables the feature of the TOPS-20
monitor that makes it possible to use
programs originally written for the
TOPS-10 operating system. Check the
current setting with INFORMATION
PROGRAM-STATUS.
OLD-QUEUE-COMMANDS directs the system to accept the Version
1 PRINT and QUEUE commands for printing
and batch requests
PAGE-ACCESS range of octal page numbers type of access
COPY-ON-WRITE
provides programs with private copies of
the specified pages (13:17, 21 specifies
pages 13 through 17 and page 21, 6 pages
in all) of current memory whenever they
try to change (write to) them
EXECUTE allows programs accessing these pages to
execute the program or subroutine they
contain
COPY-ON-WRITE
NO WRITE prevents programs from performing the
indicated operation on the specified
pages
NONEXISTENT
removes the indicated pages from memory
READ permits programs to examine the
indicated pages of memory
WRITE permits programs to change as well as
examine the indicated pages
Check the status of current memory pages
with INFORMATION MEMORY-USAGE.
SESSION-REMARK remark
lets you insert a note or reminder of up
to 39 characters into system accounting
data. Check with INFORMATION
JOB-STATUS.
IMMEDIATE
SPOOLED-OUTPUT DEFERRED directs the system either to begin
executing your spooled printing requests
(e.g., those made using the COPY
command) or other output requests as
soon as you make them, or to defer them
until log-out. Check with INFORMATION
SPOOLED-OUTPUT-ACTION.
Default - IMMEDIATE
-------
200
556
TAPE DENSITY 800
1600
6250
SYSTEM-DEFAULT
instructs the system to read and write
magnetic tapes for your job at the
indicated density (in bits per inch).
SYSTEM-DEFAULT, one of these values
(usually 1600), is established by your
system manager. The value set by this
command can be superseded by commands
within a program. Check with
INFORMATION TAPE-PARAMETERS.
Default - SYSTEM-DEFAULT
-------
ANSI-ASCII
CORE-DUMP
HIGH-DENSITY
TAPE FORMAT INDUSTRY-COMPATIBLE
SIXBIT
SYSTEM-DEFAULT
advises the system that the format to
use in processing tapes is either
ANSI-ASCII, which stores each word of
data as five 7-bit bytes in five frames
of a 9-track type; or CORE-DUMP, which
stores each word of data as a single
36-bit byte in five frames of a 9-track
tape, partially using the fifth frame;
or HIGH-DENSITY, which stores each two
words of data as nine 8-bit bytes in
nine frames of a 9-track tape; or
INDUSTRY-COMPATIBLE, which stores each
word of data as four 8-bit bytes in four
frames of a 9-track tape; or SIXBIT,
which stores each word of data as six
6-bit bytes in six frames of a 7-track
tape. SYSTEM-DEFAULT, one of these
(usually CORE-DUMP), is chosen by your
system manager. See the TOPS-20 Monitor
Calls Reference Manual for more
information about hardware data modes
for magnetic tapes. Check with
INFORMATION TAPE-PARAMETERS.
Default - SYSTEM-DEFAULT
-------
EVEN
TAPE PARITY ODD tells the system which parity to assume
when verifying the accuracy of tape
records. Check with INFORMATION
TAPE-PARAMETERS.
Default - ODD
-------
TAPE RECORD-LENGTH n
sets the size, in bytes, for each
physical record on a tape. Check with
INFORMATION TAPE-PARAMETERS.
Default n - 512
-------
TIME-LIMIT n
tells the system to stop any program or
terminal printout and inform you with a
fatal error message when the given
amount of CPU time (in seconds) has been
used. This command is used by the batch
system to limit the runtime of batch
jobs.
UUO-SIMULATION allows the system to execute programs
originally written for the TOPS-10
operating system, by calling the TOPS-10
compatibility package, PA1050.EXE.
Check the current setting with
INFORMATION PROGRAM-STATUS.
Default
-------
Characteristics
Affect Only Current Terminal Session
The SET command, except for SET DIRECTORY and SET FILE,
applies to the current terminal session only, and in most
cases only to the current level of TOPS-20 in that session.
Therefore put SET DEFAULT, SET CONTROL-C-CAPABILITY, and
other SET commands into a COMAND.CMD file in your log-in
directory if you want them to be in effect every time you
log in or give the PUSH command.
Hints
Using SET PAGE-ACCESS
A SET PAGE-ACCESS command can take several arguments on the
same line, with cumulative effect; contradictions are
resolved in favor of the last item given. So SET
PAGE-ACCESS 6 EXECUTE NO COPY-ON-WRITE NO WRITE allows a
user to execute page 6 but not to change it; SET
PAGE-ACCESS 7 NO WRITE WRITE allows changes to page 7.
Using SET TIME-LIMIT
Although the SET TIME-LIMIT command is ordinarily used by
the batch system to limit the runtime of jobs, you can
employ it as a timesharing user to give you a fatal error
message when the specified amount of CPU time has been
spent. To find out how much of this time you have left,
give the SYSTAT . LIMIT and INFORMATION PROGRAM-STATUS
commands. The difference between the SYSTAT . LIMIT time
and the "Used" time reported by INFORMATION PROGRAM-STATUS
tells you the approximate time remaining.
SET Commands Useful for Debugging Programs
SET ADDRESS-BREAK
SET ADDRESS-BREAK shows you how often and for what
purpose a memory address is referenced. When an
address break occurs, a message will show the memory
location at which execution of your program will
resume.
SET NO CONTROL-C-CAPABILITY, SET UUO-SIMULATION, SET
PAGE-ACCESS
If you are debugging a program, use the SET NO
CONTROL-C-CAPABILITY command to ensure that you can use
CTRL/C to leave the program. Test a program that traps
CTRL/Cs by having it trap, say, CTRL/As instead during
debugging. Also, setting NO CONTROL-C-CAPABILITY, NO
UUO-SIMULATION, or PAGE-ACCESS NO WRITE NO
COPY-ON-WRITE will show you what part of the program
(if any) is attempting to use these features.
Restrictions
Using SET Commands in Batch Jobs
Put SET commands into a BATCH.CMD file in your log-in
directory if you want them to apply to every batch job you
submit. Remember, though, that you cannot give SET
CONTROL-C-CAPABILITY, SET NO TIME-LIMIT, or SET TIME-LIMIT
(or the ATTACH command) in any batch job.
Using SET DIRECTORY Commands
You will be able to use the SET DIRECTORY commands only if
your system is instructed at system start-up time to allow
them. Otherwise, the system will send you error messages in
response to SET DIRECTORY commands.
Effect on Memory and Terminal
The SET command does not affect memory and leaves your terminal
at TOPS-20 command level.
Examples
1. Set the LATE-CLEAR-TYPEAHEAD parameter for your job.
@SET LATE-CLEAR-TYPEAHEAD
@
2. Find out the placement of your program in memory; set an
address break to occur at location 2412 when the instruction
it contains has been executed six times. Then give the
INFORMATION ADDRESS-BREAK command to see the location and
operation for which the current address break has been set.
@INFORMATION MEMORY-USAGE
5. pages, Entry vector loc 400010 len 254000
0-3 Private R, W, E
400 Private R, W, E
@SET ADDRESS-BREAK 2412,
@@AFTER 6
@@EXECUTE
@@
@INFORMATION ADDRESS-BREAK
Address break at 2412 on execute.
@
3. Set defaults for PRINT command switches, then print a file
immediately by explicitly supplying an AFTER switch with an
early hour as argument.
@SET DEFAULT PRINT /LOWERCASE/AFTER:17:00
@PRINT /AFTER:0:0 4-UPED.TXT
[LL:4-UPED=/Seq:401/Limit:250, 1 File]
@INFORMATION OUTPUT-REQUESTS /USER
Queue Job Seq Limit User
----- --- --- ----- ----
LL 4-UPED 401 250 LATTA Being output on PLPT1:
@
4. Put an executable program into memory and set its page access
to NO COPY-ON-WRITE; try to deposit a value (32) in memory
location 500 (this fails). Then set its page access to
COPY-ON-WRITE and try once more, succeeding this time. Give
the INFORMATION MEMORY-USAGE command again. Notice that you
now have your own copy of the page in memory; it is no
longer mapped from the file TESTF1.EXE in your connected
directory.
@GET TESTF1
@INFORMATION MEMORY-USAGE
1. pages, Entry vector loc 145 len 254000
0 TESTF1.EXE.3 1 R, CW, E
@SET PAGE-ACCESS 0 NO COPY-ON-WRITE
@DEPOSIT 500 32
?Can't write that page
@SET PAGE-ACCESS 0 COPY-ON-WRITE
@DEPOSIT 500 32
[Shared]
@INFORMATION MEMORY-USAGE
1. pages, Entry vector loc 145 len 254000
0 Private R, W, E
@
SKIP
Function
The SKIP command moves a magnetic tape forward over a specified
number of files or records, or to the logical end of the tape.
Format
@SKIP (DEVICE) dev: n units
---- ---- - -----
where
dev: is the name of the magnetic tape drive that you want to
move forward
n is the number of files or records over which you want
to skip, or an arbitrary number if you choose LEOT for
"units" (see below)
units is either FILES or RECORDS, where records are sections
of a file; or LEOT, to skip to the logical end of the
tape, which is the next point on the tape having two
adjacent EOF (end-of-file) marks.
Default units - FILES
-------
Restrictions
SKIP With Open Files
If you have given a CTRL/C to exit from a program that has
opened a magnetic tape drive and you then give the SKIP
command for that tape drive, the system will first ask if
you want to close the associated file. You must do so for
SKIP to succeed, but you will probably be unable to continue
the program from that point because the file will now be
closed.
Effect on Memory and Terminal
The SKIP command does not affect memory and leaves your terminal
at TOPS-20 command level.
Related Commands
UNLOAD for rewinding a magnetic tape completely onto the
source reel
Examples
1. Skip over the next 2 files on the magnetic tape you are using
(mounted on magnetic tape drive MTA0: in this case).
@SKIP MTA0: 2 FILES
@
2. Skip over the next two records on the tape.
@SKIP MTA0: 2 RECORDS
@
3. Use the TMOUNT command to ask the operator to mount a tape,
then copy 3 files to the tape from your directory on
structure SNARK:. Use the REWIND command to go back to the
beginning, and the SKIP command to skip over the first file.
Use the COPY command to have the next file (FIL-2) printed on
your terminal, then give the SKIP command again to skip to
the logical end-of-tape (9 is just an arbitrary number here).
You are skipping only one file, FIL-3, in this case.
@TMOUNT DAY:
[Operator notified]
[MTA0: assigned]
@REWIND DAY:
@SMOUNT SNARK:
Structure SNARK: mounted
@ACCESS SNARK:
@COPY SNARK:FIL-1.TAP DAY:
SNARK:FIL-1.TAP.1 => MTA0:FIL-1 [OK]
@COPY SNARK:FIL-2.TAP DAY:
SNARK:FIL-2.TAP.1 => MTA0:FIL-2 [OK]
@COPY SNARK:FIL-3.TAP DAY:
SNARK:FIL-3.TAP.1 =>MTA0:FIL-3 [OK]
@REWIND DAY:
@SKIP DAY: 1
@COPY DAY: TTY:
MTA0: => TTY:
!THIS IS THE SECOND FILE.!
@SKIP DAY: 9 LEOT
@
SMOUNT
Function
The SMOUNT command asks the system to make a particular file
structure available for your job's use.
Format
@SMOUNT (FILE STRUCTURE) dev:,
------ -----
@@subcommand
----------
where
dev: is the name (or alias) of the structure you want
mounted
,
@@subcommand means that after a comma you can give one or
both of the optional subcommands shown below
CANCEL tells the system to
disregard your SMOUNT
command unless the
structure is already
on line (i.e,
spinning on a disk
drive)
STRUCTURE-ID name for mounting a
structure whose
structure
identification is
name; used when you
supply some alias for
argument dev: above.
For privileged users
only.
Characteristics
If Structure is Already Mounted
The SMOUNT command tells the system that you want to use the
specified structure. If the structure has already been
mounted, the system tells you so, then simply increases by 1
the mount count (the number of users who have given SMOUNT
but not SDISMOUNT for the structure) and returns your
terminal to TOPS-20 command level. The SMOUNT command
ensures that the structure will be available for as long as
you need it, because a structure is not ordinarily
dismounted until its mount count is 0.
If the Structure Has Not Been Mounted
If the specified structure is not in use (i.e., is off line)
your process waits. The operator is reminded of your
request at 5-minute intervals until he either mounts the
structure or sends you an explanatory message. To cancel
the SMOUNT command, type CTRL/Cs to return to TOPS-20
command level.
Hints
Using the STRUCTURE-ID Subcommand
The STRUCTURE-ID subcommand (available only to users with
enabled Wheel or Operator capabilities) gives the name of
the structure as recorded in the disk(s), where it is used
by the system for identification. Be sure that the
structure identification is also written on the outside of
each disk pack. Unless you give the subcommand, the system
mounts a structure with its structure identification as
alias. (The alias is the name you use when specifying the
structure in file specifications and commands; the
INFORMATION STRUCTURE and INFORMATION AVAILABLE DEVICES
commands list structures by alias only.) Use this
subcommand for mounting a structure whose structure
identification is the same as the alias of a currently
mounted structure. In such cases give SMOUNT with any
unique alias as argument, then specify the structure
identification with the STRUCTURE-ID subcommand. In
subsequent file specifications and commands referring to the
structure, use the alias only.
Special Cases
Operator Not in Attendance
If the operator is not in attendance (you can find out
whether he is by giving the INFORMATION SYSTEM-STATUS
command), your SMOUNT request remains valid for 10 minutes.
Then the system prints a message and returns your terminal
to TOPS-20 command level.
Effect on Memory and Terminal
The SMOUNT command does not affect memory and (once your SMOUNT
request is granted or refused) leaves your terminal at TOPS-20
command level.
Related Commands
INFORMATION AVAILABLE DEVICES for finding out just the names
of available structures (these
are listed after DSK and PS,
and before the magnetic tape
drives)
INFORMATION STRUCTURE for finding out the names of
mounted structures and who is
using them
SDISMOUNT for informing the system that
you no longer need a structure
SREMOVE for asking the system to
physically remove a structure
Examples
1. Give the SMOUNT command for a currently mounted structure.
@SMOUNT SNARK:
Structure SNARK: mounted
@
2. Give the SMOUNT command for a currently mounted structure,
then access and connect to your directory there. Copy a file
from your directory on structure MISC: to your directory on
structure SNARK:. Connect to your logged-in directory on
PS:. (The INFORMATION JOB command displays your connected
directory except when it is this one.)
@INFORMATION JOB
Job 39, User LATTA, MISC:<LATTA>, Account 341, TTY224
@SMOUNT SNARK:
Structure SNARK: mounted
@ACCESS SNARK:
@CONNECT SNARK:
@INFORMATION JOB
Job 39, User LATTA, SNARK:<LATTA>, Account 341, TTY224
@COPY MISC:4-UPED.TXT
MISC:4-UPED.TXT.14 => 4-UPED.TXT.1 [OK]
@CONNECT
@INFORMATION JOB
Job 39, User LATTA, Account 341, TTY224
@SDISMOUNT SNARK:
Structure SNARK: dismounted
@
3. Give the SMOUNT command for a structure that is not yet on
line. When the operator informs you that it has been
mounted, give a DIRECTORY command to begin listing all
directories and files on the structure.
@SMOUNT ARPA:
Waiting for structure ARPA: to be put on line...
Structure ARPA: mounted
@DIRECTORY ARPA:<*>
ARPA:<NEW-SUBSYS>
ACCT20.EXE.1
.HLP.1
ACCTPR.EXE.1
.HLP.^C
@
4. Try to find out who is using structure FLOAT:. When you see
that it is not on line, give the SMOUNT command to mount it.
When the operator denies your request, give the INFORMATION
AVAILABLE DEVICES command to see what other structures are
available. Give the SMOUNT command for one of these, and
determine whether you have a directory on it of the same name
as your connected directory (you do not). Find out whose
structure it is, then give the SDISMOUNT command for it so
you do not delay his eventual SREMOVE command.
@INFORMATION STRUCTURE FLOAT:
?"*" or mounted structure name required
?No such device
@SMOUNT FLOAT:
Waiting for structure FLOAT: to be put on line...
?SMOUNT request denied -- The reason given:
SORRY, THERE ARE NO AVAILABLE DRIVES AT THIS TIME. OPR
@INFORMATION AVAILABLE DEVICES
Devices available to this job:
DSK, PS, LANG, MISC, SNARK, DX20, MTA0, MTA2-3
MT0-7, LPT, LPT0, LPT1, CDR, PCDR0, CDP, FE1-15, PTY17
PTY22-61, NUL, PLT, PLT0, DCN, SRV
Devices assigned to/opened by this job: TTY224
@SMOUNT DX20:
Structure DX20: mounted
@ACCESS DX20:
?No such directory
@INFORMATION STRUCTURE DX20:
Status of structure DX20:
Mount count: 2, open file count: 0, units in structure: 1
Foreign
Users who have SMOUNTed DX20: FORTMILLER, LATTA
No users are ACCESSing DX20:
Users CONNECTed to DX20: FORTMILLER
@SDISMOUNT DX20:
Structure DX20: dismounted
@
5. Create a LOGIN.CMD file in your log-in directory to mount and
access a file structure named LANG: every time you log in.
Because there is another structure of name LANG: on the
system, specify an alias in the SMOUNT command and give the
STRUCTURE-ID subcommand to identify the structure.
@CONNECT
@CREATE PS:LOGIN.CMD
Input: LOGIN.CMD.1
00050 ENABLE
00100 SMOUNT DBLX:,
00200 STRUCTURE-ID LANG:
00300
00350 DISABLE
00400 ACCESS DBLX:
00500
*P^:*
00050 ENABLE
00100 SMOUNT DBLX:,
00200 STRUCTURE-ID LANG:
00300
00350 DISABLE
00400 ACCESS DBLX:
*E
[PS:LOGIN.CMD.1]
@
SREMOVE
Function
The SREMOVE command asks the system to dismount and physically
remove a file structure, and waits for its removal.
Format
@SREMOVE (FILE STRUCTURE) dev:,
------- -----
@@subcommand
----------
where
dev: is the name (or alias) of the structure you want
to remove
,
@@subcommand means that after a comma you can give one or
both of the optional subcommands shown below
CANCEL if you are unwilling
to wait for the
structure to be taken
off line
STRUCTURE-ID name for removing a
structure whose
structure
identification is
name; used when you
supply some alias for
argument dev:, above.
For privileged users
only.
Characteristics
If the Structure Has Been Dismounted by All Users
The SREMOVE command tells the operator that you want to
physically remove the specified structure. If the structure
has already been dismounted by all users, your process waits
until the operator actually removes it (or at least brings
it off line by turning off its disk drive). The system then
prints a message telling you so, and returns your terminal
to TOPS-20 command level.
If Some Users Have Not Dismounted the Structure
If the specified structure is still in use by others, your
process waits. The operator is reminded of your request at
5-minute intervals until he either removes the structure or
sends you an explanatory message. To cancel the SREMOVE
command, type CTRL/Cs to return to TOPS-20 command level.
Hints
Using the CANCEL Subcommand
The CANCEL subcommand tells the system to disregard your
SREMOVE command if the structure is not already off line
(i.e., no longer spinning on its disk drive). Thus, it is
especially useful when you put an SREMOVE command into a
command file, where it prevents your job from waiting for
the operator to physically remove or bring off line the
structure and instead causes the next command in the command
file to be executed.
Using the STRUCTURE-ID Subcommand
The STRUCTURE-ID subcommand, available only to users with
enabled Wheel or Operator capabilities, gives the name of
the structure as recorded internally in the disk(s), where
it is used by the system for identification. The structure
identification should also be written in a label on the
outside of each disk pack. This subcommand is used for
removing a structure that had been mounted with an alias
different from its structure identification. (See
Hints - Using the STRUCTURE-ID Subcommand, in the SMOUNT
command description.) Give SREMOVE with the alias as
argument, then specify the structure identification with the
STRUCTURE-ID subcommand.
Special Cases
Operator Not in Attendance
If the operator is not in attendance (you can find out
whether he is by giving the INFORMATION SYSTEM-STATUS
command) your SREMOVE request remains valid for 10 minutes.
Then the system prints a message and returns your terminal
to TOPS-20 command level.
Effect on Memory and Terminal
The SREMOVE command does not affect memory and (once your SREMOVE
request is granted or refused) leaves your terminal at TOPS-20
command level.
Related Commands
INFORMATION STRUCTURE for finding out the names of mounted
structures and who is using them
SDISMOUNT for informing the system that you no
longer need a structure
SMOUNT for asking the system to mount a
structure
Example
1. Give the SREMOVE command for a structure, and wait until its
removal is confirmed.
@SREMOVE FLOAT:
Waiting for structure FLOAT: to be removed...
Structure FLOAT: removed
@
2. Give the SREMOVE command with the CANCEL subcommand,
receiving then the message that indicates it is still being
used.
@SREMOVE FLOAT:,
@@CANCEL
@@
%Structure still on-line
@
3. Find out what structures are currently mounted (SNARK:,
LANG:, MISC:, and REL3:), then ask the operator to mount
another one using the SMOUNT command. Access your directory
on this structure. (Note that you need not give the name of
this directory because it is the same as the name of your
connected directory; notice also that you are asked for a
password although this directory's name is the same as that
of your log-in directory on PS:, because the structure has
been mounted as a foreign structure.) Then end your access
to the directory and dismount the structure. Give the
SREMOVE command to take the structure off line, but after
some delay give a CTRL/C to abort the command. Give the
INFORMATION STRUCTURE command to find out if someone else is
using the structure (user LEACHE is), then ask him via the
TALK command to dismount. Repeat the SREMOVE command to
remove the structure.
@INFORMATION AVAILABLE DEVICES
Devices available to this job:
DSK, PS, SNARK, LANG, MISC, REL3, MTA0, MTA3, MT0, MT2-7
LPT, LPT0, LPT1, CDR, PCDR0, CDP, FE1-15, PTY24-61, NUL
PLT, PLT0, DCN, SRV
Devices assigned to/opened by this job: TTY231
@SMOUNT FLOAT:
Waiting for structure FLOAT: to be put on line...
Structure FLOAT: mounted
@INFORMATION STRUCTURE FLOAT:
Status of structure FLOAT:
Mount count: 1, open file count: 0, units in structure: 1
Foreign
Users who have SMOUNTed FLOAT: LATTA
No users are ACCESSing FLOAT:
No users CONNECTed to FLOAT:
@ACCESS FLOAT:
Password:
@END-ACCESS FLOAT:
@SDISMOUNT FLOAT:
Structure FLOAT: dismounted
@SREMOVE FLOAT:
Waiting for structure FLOAT: to be removed...
^C
@INFORMATION STRUCTURE FLOAT:
Status of structure FLOAT:
Mount count: 1, open file count: 0, units in structure: 1
Foreign
Users who have SMOUNTed FLOAT: LEACHE
Users ACCESSing FLOAT: LEACHE
No users CONNECTed to FLOAT:
@TALK LEACHE
LINK FROM LATTA, TTY 232
@;GENE -- CAN YOU DISMOUNT STRUCTURE FLOAT:? I NEED
@;TO REMOVE IT...
@;sure. just give me a minute to close my files...
@;THANKS
@end-access float:
@sdismount float:
Structure FLOAT: dismounted
@BREAK
@SREMOVE FLOAT:
Waiting for structure FLOAT: to be removed...
Structure FLOAT: removed
@
START
Function
The START command begins execution of the program currently in
memory.
Format
@START (PROGRAM) n
----- -
where
n is the octal address at which you want to start the program
Default n - the normal starting address, i.e., the
-------
first word in the program's entry vector
(usually location 120)
Hints
Further Information
For more information about entry vectors, see the TOPS-20
Monitor Calls Reference Manual.
Special Cases
Running COBOL Programs a Second Time
After running a program (with a RUN on EXECUTE command, or
with a GET and START or LOAD and START combination) you can
usually run it again using START. COBOL programs are an
exception: to run them again you must reload them.
Effect on Memory and Terminal
The START command starts the program in memory at the specified
address, and leaves your terminal at command level (if any) in
the program.
Related Commands
GET for placing executable programs in memory
LOAD for loading source or object programs into memory
SAVE for saving a loaded program in an .EXE file
Examples
1. Start the program currently in memory.
@START
2. Put an executable program in memory and start it. Then run
it again.
@GET TESTF1.EXE
@START
THIS IS A TEST.
END OF EXECUTION
CPU TIME: 0.04 ELAPSED TIME: 0.23
EXIT
@START
THIS IS A TEST.
END OF EXECUTION
CPU TIME: 0.02 ELAPSED TIME: 0.02
EXIT
@
3. Begin using the FILCOM program to compare two files. Give a
CTRL/C to halt FILCOM, then a CTRL/T to determine the
location where it was stopped. Give the DDT command, and do
some work within the DDT program; leave DDT with a CTRL/Z,
returning to TOPS-20 command level. Give the START command
to start FILCOM again, using as argument the address reported
by CTRL/T above.
@FILCOM
*TTY:=DUMPER.MAC, BACKUP.MAC
^C
@ FILCOM ^C from Running at 400543 Used 0:00:03.1
in 0:01:33
@DDT
DDT
3/ PAT..+361,,3066
4/ 56
^Z
@START 400543
No differences encountered
*^C
@
SUBMIT
Function
The SUBMIT command places requests in the batch input queue (list
of jobs waiting to be processed by the batch system).
Format
@SUBMIT (BATCH JOB) /switch(es) filespec/switch(es),...
------ ----------- -----------------------
where
switches are keywords, chosen from the list below, indicating
your choice of SUBMIT command options. These
switches have different effects according to their
position in the command line: placed before all
files in the command, they apply as defaults for
all; otherwise they act only on the nearest
preceding file.
Defaults are shown in the list of switches
--------
filespec is the specification of a batch control file (see
the TOPS-20 User's Guide), containing batch commands
and the commands with which you would have done the
job as a timesharing user instead of as a batch user
Default file type - .CTL
-------
,... means that after a comma you can give more arguments
(filespec and switches) of the form already shown
Summary of SUBMIT Command Switches (defaults in boldface)
/AFTER:date and/or time
/BEGIN:n Default n - 0
----- -------
/CARDS:n
/CONNECTED-DIRECTORY:dev:<directory>
/DEPENDENCY-COUNT:n Default n - 0
---------------- -------
/FEET:n
/JOBNAME:6-character name Default name - first six characters
------- -------
of control filename
/LOGNAME:filespec Default filespec - control
------- -------
filename, file
type .LOG
ALWAYS
------
/OUTPUT:ERRORS
------
NOLOG
/PAGE:n Default n - 200
-------
/PRIORITY:n Default n - 10
-------- -------
NO
--
/RESTARTABLE:YES
-----------
/SEQUENCE:n
/TAG:6-character label
/TIME:hh:mm:ss Default time limit (if switch is
---- -------
omitted) - 00:05:00
Default hh:mm:ss (if switch is
-------
given without colon or
argument) - 1:00:00
/TPLOT:n
0
/UNIQUE:1
------ -
/USER:user name
SUBMIT Command Switches
/AFTER:date and/or time ensures that the batch job will not
be started until after the date
and/or time specified. NOV-12-78,
and 18:00 illustrate two arguments to
this switch. If you give both date
and time, separate them with a space.
The time can be preceded with a plus
sign (+), which will delay processing
by the indicated length of time from
the present.
/BEGIN:n starts processing the control file at
line n of the file. Use this switch
for a control file that can fit
different applications depending on
where processing begins. (See also
the /TAG switch.)
Default n - 0
-------
/CARDS:n limits to n the maximum number of
cards to be punched by the job
/CONNECTED-DIRECTORY:dev:<directory>
specifies the connected directory for
the batch job. For privileged users
only.
/DEPENDENCY-COUNT:n sets the job's dependency count to n.
Because a batch job does not get
processed until its dependency count
is 0, you can delay a job by
assigning it a positive dependency
count and then using the MODIFY
command to bring the count to 0 at
the proper time.
Default n - 0
-------
/FEET:n limits to n the maximum number of
feet of paper tape to be punched by
the job
/JOBNAME:name assigns a name (of six or fewer
characters) to the batch job
Default name - first six
-------
characters of
control filename
/LOGNAME:filespec specifies where to place the log file
of the batch job
Default dev:<directory> - your
-------
connected directory at
the time of the SUBMIT
command
Default filename - control
-------
filename
Default type - .LOG
-------
ALWAYS
/OUTPUT:ERRORS says whether you want the log file to
NOLOG be printed always, or only in the
case of errors occurring within the
job, or never. No matter which
option you choose, the log file is
always written.
Default - ALWAYS
-------
/PAGE:n limits to n the maximum number of
pages of line printer output to be
printed by the job
Default n - 200
-------
/PRIORITY:n assigns a decimal number n to the
job, reflecting the urgency of the
batch request. This n must be from 0
to 63, with larger numbers receiving
earlier treatment.
Default n - 10
-------
NO
/RESTARTABLE:YES decides whether the job should be
started again if the system crashes
and is restarted
Default - NO
-------
Default argument (if switch is
-------
given) - YES
/SEQUENCE:n specifies that n, instead of a number
supplied by the system, is to be the
sequence number of the job
/TAG:label starts processing the control file at
the line beginning with label::,
where label is an alphanumeric name
of six or fewer characters. Use this
switch for a control file that can
fit different applications depending
on where processing begins.
/TIME:hh:mm:ss limits the maximum amount of CPU time
available to the job; given in
hours, minutes, and seconds.
Default time limit (if switch is
-------
omitted) - five minutes
Default hh:mm:ss (if switch is
-------
given without colon or
argument) - 1:00:00 (one
hour)
/TPLOT:n limits to n the maximum number of
seconds of plotter time allowed for
the job
0
/UNIQUE:1 declares, if you have submitted two
or more batch jobs, whether they are
allowed to run concurrently (0) or
not (1)
Default - 1
-------
/USER:user name specifies the user name to be
associated with the batch request.
For privileged users only.
Output
Jobname, Sequence Number, and Time Limit
As soon as you complete a valid SUBMIT command, the system
responds by printing, on your terminal, the jobname,
sequence number, and time limit for the job. Each control
file you submit is a separate batch request, and is
described on a separate line.
Characteristics
Ordinary Operation - No Switches
For most purposes you can use the SUBMIT command with just a
filespec, or a series of filespecs, for arguments.
Switch Defaults Set by System Manager
The defaults shown in the list of switches are correct for
most user sites. However, your system manager can change
some of these default settings. The changes go into effect
during system installation. The switches most commonly
affected are: /PAGE, /PRIORITY, and /TIME.
Hints
Using SET DEFAULT SUBMIT
If there are switches that you always or usually supply when
using SUBMIT, give the SET DEFAULT SUBMIT command to
establish them as defaults for the remainder of your
terminal session. The switches will then behave as if you
had typed them directly after the word SUBMIT. You can
supersede any of these default switches by actually
supplying the switch, with another value, when you give the
SUBMIT command. Put SET DEFAULT SUBMIT into a file of
specification PS:COMAND.CMD if you want these default
switches to be in effect for future terminal sessions as
well.
More Information
For more information about batch jobs, see the TOPS-20 Batch
Reference Manual.
Restrictions
Access Rights for Batch Jobs
For Specifying Control Files and Log Files
You cannot use the ACCESS command to obtain the right
to submit control files from another directory, because
your batch jobs are logged in with rights only to your
connected directory and to directories to which you
have access as a group member. The control file, if
not in your connected directory, must be in one to
which you have read access as a group member; the log
file specification, if you give one, must be for your
connected directory or for one to which you have write
access as a group member.
For Use Within the Batch Job
Although it is possible to give CONNECT and ACCESS
commands within a batch job to obtain rights beyond
those mentioned above, you must then include passwords
in the job's control file. Because this practice could
endanger system security, it is generally best to
establish and rely on appropriate group rights when
preparing batch jobs for submission.
Effect on Memory and Terminal
The SUBMIT command does not affect memory and leaves your
terminal at TOPS-20 command level.
Related Commands
CANCEL for withdrawing SUBMIT requests
INFORMATION BATCH-REQUESTS for examining in the batch input
queue
MODIFY for changing SUBMIT requests
before processing has begun
SET DEFAULT SUBMIT for establishing default switches
for subsequent SUBMIT commands
Examples
1. Submit a control file to begin a batch job.
@SUBMIT DIFS.CTL
[INP:DIFS=/Seq:7886/Time:0:05:00]
@
2. Submit two control files (specifying only the filenames) in
the same command. Then use the INFORMATION BATCH-REQUESTS
command (with the USER switch) to examine your entries in the
batch input queue.
@SUBMIT SUMS, DIFS
[INP:SUMS=/Seq:7889/Time:0:05:00]
[INP:DIFS=/Seq:7890/Time:0:05:00]
@INFORMATION BATCH-REQUESTS /USER
Job Seq User
--- --- ----
SUMS 7889 C.BURKE Now running
DIFS 7890 C.BURKE
@
3. Connect to another user's directory, then submit two of his
control files. Prevent the printing of a log file for one
job, and allow the second job's to be printed only if errors
occur within the job; make both jobs restartable. Request
an inclusive listing of your entries in the batch queue -
notice that the jobs are logged in under your own user name,
although the log files will be stored in user Holland's
directory.
Connect back to your directory and submit one of your own
control files, specifying a particular jobname, then check on
it.
@CONNECT <HOLLAND>
Password:
@SUBMIT /RESTARTABLE:YES FLDTST.CTL/OUTPUT:NOLOG, LOATST
.CTL/OUTPUT:ERRORS
[INP:FLDTST=/Seq:7904/Time:0:05:00]
[INP:LOATST=/Seq:7905/Time:0:05:00]
@INFORMATION BATCH-REQUESTS /ALL/USER
Job Seq User
--- --- ----
FLDTST 7904 C.BURKE Now running /OUTPUT:NOLOG /
RESTARTABLE:YES /UNIQUE:1
LOATST 7905 C.BURKE /OUTPUT:ERRORS /RESTARTABLE
:YES /UNIQUE:1
@CONNECT MISC:<C.BURKE>
@SUBMIT SUMS/JOBNAME:1-SUMS
[INP:1-SUMS=/Seq:7908/Time:0:05:00]
INFORMATION BATCH-REQUESTS /USER
Job Seq User
--- --- ----
1-SUMS 7908 C. BURKE Now running
@
4. Give a SET DEFAULT command to ensure that your batch jobs
will be run after 5:00 P.M. unless you specify otherwise.
Submit a batch job and check that this default is in effect.
Then use a MODIFY command to delay the starting time of this
job till 11:00 P.M. Finally, give the CANCEL command to
withdraw the batch request entirely.
@SET DEFAULT SUBMIT /AFTER:17:00
@SUBMIT SUMS
[INP:SUMS=/Seq:7910/Time:0:05:00]
INFORMATION BATCH-REQUEST /USER
Job Seq User
--- --- ----
SUMS 7910 C.BURKE /AFTER:30-May-78 17:00:00
@MODIFY BATCH SUMS /AFTER:23:00
[1 Job Modified]
INFORMATION BATCH-REQUEST /USER
Job Seq User
--- --- ----
SUMS 7910 C.BURKE /AFTER:30-May-78 23:00:00
@CANCEL BATCH SUMS
[1 Job Killed]
@
SYSTAT
Function
The SYSTAT command prints information about the current state of
the system.
Format
@SYSTAT,
-------
@@subcommand
----------
@@ .
-
.
-
.
-
where
, means that, after a comma, you can give one or
@@ more subcommands on successive lines
@@ .
.
.
subcommand is a keyword, chosen from the list below,
indicating your choice of SYSTAT command options
Defaults are shown in the list of subcommands
--------
Summary of SYSTAT Command Subcommands (defaults in boldface)
ALL
CONTROLLING
DIRECTORY
HEADER
------
JOB job number n
LIMIT
LINE octal line number, or DETACHED
LPT
NO subcommand name, or OPERATOR
OUTPUT file specification
STATE
SYSTEM
TIME
USER user name
WHAT
----
WHERE
-----
WHO
---
SYSTAT Command Subcommands
ALL gives all available SYSTAT information
CONTROLLING prints, in the column headed CJB, the number
of the controlling job (if any), i.e., a job
owning a PTY (pseudo-terminal) that controls
the job being described; when used in a
SYSTAT command requesting descriptions of
particular jobs, this subcommand causes jobs
controlled by these jobs to be described
also.
DIRECTORY requests the name of the directory to which
each job is connected, if not the job's
log-in directory
HEADER calls for a headline identifying the columns
of information printed
Default (unless you are requesting
-------
information about specific
users, jobs, or lines only; in
such cases the default is NO
HEADER.)
JOB n restricts output to description of job
number n; can be used more than once.
LIMIT prints any time limit set for each job
LINE octal line number or DETACHED
restricts output to description of the job
attached to the given line number, or to
descriptions of all detached jobs; can be
used more than once.
LPT sends output to the line printer instead of
your terminal
CONTROLLING
DIRECTORY
HEADER
LIMIT eliminates the indicated category of
OPERATOR information, when used with one of the
NO STATE keywords shown
SYSTEM
TIME
WHAT
WHERE
WHO
OUTPUT filespec sends the output information to the file you
specify, instead of to your terminal
Default filespec - SYSTAT.LST
-------
STATE prints the current state of each job, i.e.,
RUN (running), or TI (waiting for terminal
input)
SYSTEM begins output with system-wide information,
i.e., the first two lines of reqular output.
If SYSTEM is the only subcommand given,
SYSTAT output is restricted to this.
Default (unless you give subcommands
-------
requesting information about
specific users, jobs, or lines
only; in such cases the
default is NO SYSTEM.)
TIME prints the accumulated runtime (CPU time)
for each job
USER user name restricts output to descriptions of jobs
logged in under the given user name; can be
used more than once.
WHAT prints the name of the program that each job
is running; given explicitly only with
subcommand NO, to restrict SYSTAT output.
Default
-------
WHERE prints the line number associated with each
job; given explicitly only with subcommand
NO, to restrict SYSTAT output.
Default
-------
WHO prints the user name under which each job is
logged in; given explicitly only with
subcommand NO, to restrict SYSTAT output.
Default
-------
Output
Inclusive Sample of Output
The SYSTAT command prints on your terminal up to nine
columns of information about all the jobs on the system.
Below is a sample of the output you would receive in
response to the most inclusive SYSTAT command:
@SYSTAT ALL
Mon 13-Nov-78 16:56:39 Up 5:03:53
27+10 Jobs Load av 3.64 2.12 1.55
Job CJB Line Program State Time Limit User, <Dir>
1 1 151 WATCH RUN 0:00:19 DIPACE
2 72 EXEC TI 0:05:17 KIRK
3 9 154 BLIS10 RUN 0:00:09 0:05:00 BLOUNT
. . . . . . . . .
. . . . . . . . .
. . . . . . . . .
First you see the current date and time (in 24-hour
notation: the sample above was obtained 39 seconds after
4:56 P.M.), and the length of time since the system was
started (here, just over 5 hours).
The second line displays the number of user jobs (i.e.,
non-operator jobs) (27) and operator jobs (10) currently
running. The next three numbers are the "load averages" for
the system: these are weighted averages of the number of
runnable processes (forks) on the system over the last
minute, 5 minutes, and 15 minutes, respectively. If you
were about to submit a job requiring 5 minutes of CPU time,
and the load average remained stable over the next 5
minutes, i.e., became 3.12 (2.12 + your job = 3.12), then
your job would get only about 1/3.12 of the system's
attention, and would not be finished until over 15 minutes
had passed.
After this comes the line of headings labeling each column
of data that follows. All possible columns of information
appear in the sample above, describing all jobs (rows). The
unmodified command SYSTAT gives only columns 1, 3, 4, and 8
for each job; by using appropriate subcommands you can
select the categories of information presented, as well as
the specific jobs examined. User jobs, both timesharing and
batch, are listed first (in ascending order by job number),
and then, after a blank line, operator jobs. The number of
the job attached to your own terminal appears with an
asterisk (*) next to it in the job column.
Sending Output Elsewhere
By giving the OUTPUT subcommand you can direct SYSTAT
information to a file instead of to your terminal. The
subcommand LPT sends the information to the line printer
instead of to your terminal.
Characteristics
Log-in Not Necessary
You do not have to be logged in to give the SYSTAT command.
Hints
Reducing Response Time and Charges for SYSTAT
You can use subcommands to restrict the jobs surveyed and
the information requested; this will speed the system's
response. If you decide to cut off the SYSTAT output before
it is done, give a CTRL/C rather than a CTRL/O. This stops
not only the output but also the CPU charges for producing
it.
Giving Subcommands as Arguments on the Command Line
To simplify your typing, SYSTAT accepts subcommands as
arguments given on the same line as the command, subject to
these rules:
There will be no @@ prompt: simply type a space
between successive subcommands and between subcommand
names and arguments.
To get information about one or more specific job
numbers, give the numbers only; do not type JOB.
To get information about one or more specific user
names, give the names only; do not type USER. But if
the user name is by coincidence the same as a SYSTAT
command argument, you must use the subcommand mode to
request information about his job.
To get information about your own (attached) job only,
give a period (.) as argument.
The system will not accept the OUTPUT subcommand in
this format; use the subcommand mode instead.
Special Cases
OPERATOR as a User Name
You can request or refuse information about operator jobs by
treating OPERATOR as a user name. The system accepts these
commands:
@SYSTAT OPERATOR
and
@SYSTAT
@@USER OPERATOR
as well as the special commands
@SYSTAT NO OPERATOR
and
@SYSTAT
@@NO OPERATOR
Effect on Memory and Terminal
The SYSTAT command does not affect memory and leaves your
terminal at TOPS-20 command level.
Related Commands
INFORMATION for finding out other information about the
system
Examples
1. Find out the status of all jobs on the system. (Your current
(attached) job is marked with an asterisk (*).)
@SYSTAT
Thu 1-Jun-78 12:28:25 Up 33:36:17
7+2 Jobs Load av 1.97 2.12 2.60
Job Line Program User
3 44 EXEC R.CRISS
5 56 MACRO D.SCHEIFLER
8 DET NVTTMP Not logged in
9 103 TV FORTMILLER
11 57 TV SCOHEN
14* 207 EXEC LATTA
20 114 TV HARDY
51 41 NEWRUN LATTA
7 DET PERF OPERATOR
46 3 DUMPER OPERATOR
@
2. Determine how much CPU time has been charged to the jobs of
two users on the system.
@SYSTAT,
@@TIME
@@USER KONEN
@@USER ALUSIC
@@
27 66 EXEC 0:00:01 ALUSIC
43 11 EXEC 0:00:02 KONEN
@
3. Repeat Example 2 by giving the subcommands as arguments on
the same line.
@SYSTAT TIME KONEN ALUSIC
27 66 EXEC 0:00:01 ALUSIC
43 11 EXEC 0:00:02 KONEN
@
4. Find out who is using line 11.
@SYSTAT LINE 11
43 11 EXEC KONEN
@
5. Ask for information about jobs 5 and 45.
@SYSTAT 5 45
5 56 MACRO D.SCHEIFLER
45 205 PTYCON OPERATOR
@
6. Set a time limit of 4 seconds for your attached job, then ask
for complete information, including headings, for the job.
(The period (.) specifies your attached job.) The value
reported under the Limit heading is actually the sum of the
time limit you set (4 seconds) and the amount of CPU time
already used at the time of your SET command (2 seconds).
This CPU time is reported as 2 seconds under the Time heading
because you gave the SYSTAT command immediately after SET.
@SET TIME-LIMIT 4
@SYSTAT ALL HEADER .
JOB CJB Line Program State Time Limit
User, <Directory>
14* 51 207 EXEC RUN 0:00:02 0:00:06
LATTA, MISC:<LATTA>
@
7. Ask for system-wide SYSTAT information only.
@SYSTAT SYSTEM
Thu 1-Jun-78 12:35:44 Up 33:43:36
18+15 Jobs Load av 5.19 3.36 2.92
@
8. Find out only which programs are in use.
@SYSTAT NO WHO NO WHERE NO SYSTEM
Job Program
2 EXEC
3 EXEC
4 EXEC
5 MACRO
6 VTECO
8 NVTTMP
9 EXEC
13 OPLEAS
16 LPTSPL
26 OPR
28 BATCON
@
9. Ask for a list of jobs controlled by job 51. (Your attached
job, marked with an asterisk (*), happens to be one of these;
job 51 itself is the other.)
@SYSTAT 51 CONTROLLING
14* 51 207 EXEC LATTA
51 41 NEWRUN LATTA
@
TAKE
Function
The TAKE command tells the system to process commands stored in
the specified disk file.
Format
@TAKE (COMMANDS FROM) filespec1 (LOGGING OUTPUT ON) filespec2,
---- --------- ----------
@@subcommand
----------
where
filespec1 is the specification of the file containing the
commands to be processed
Default file type - .CMD
-------
filespec2 is the name of the file or device you want to
receive any output of the commands
Default filespec2 - TTY: (your own terminal)
-------
, means that after a comma you can type one of the
@@ subcommands below, indicating your choice of TAKE
command options
subcommand can be one of these:
ALLOW, or
DISALLOW
Default - DISALLOW
-------
This tells the current level of TOPS-20, for the remainder of the
terminal session (not merely the current command), whether to
continue processing (ALLOW) the rest of a command file if it
encounters errors, or to ignore (DISALLOW) the remaining commands
in such a case.
Output
No Command Echoing
Only the output of commands executed by the action of TAKE
is sent to your terminal or to the specified file; the
commands themselves are not echoed as they are executed. A
final message is sent, however, indicating whether all the
commands were executed. See also Hints, below.
Nested TAKE Commands
In the case of nested TAKE commands (those given as commands
within command files), the destination for output of
commands given in an inner command file will default to that
specified or assumed for the output of commands given in the
nearest surrounding command file.
Characteristics
Running Programs From a Command File
If you put commands that run programs into a command file,
and these programs ask for arguments, you must be ready to
type in these arguments at your terminal. Only TOPS-20
commands and command arguments can be put into a command
file executed by the TAKE command.
Hints
Including INFORMATION Commands in Command Files
Because commands executed by TAKE are not echoed on your
terminal or in an output file, you should include
context-reporting commands (e.g., INFORMATION JOB-STATUS,
INFORMATION PROGRAM-STATUS, DIRECTORY, SYSTAT . ALL) in your
command file if you want to monitor TAKE as it reads the
command file.
Suppressing the Final Message
If you want to suppress the final message (of the form, End
of filespec) that indicates successful execution of a
command file by TAKE, give a TAKE command with no arguments
as the last line of your command file.
Effect on Memory and Terminal
The TAKE command affects memory and your terminal according to
the commands stored in the command file you specify as argument.
Related Commands
INFORMATION commands (when put into a command file) for
tracing the progress of TAKE
LOGIN for logging in; reads LOGIN.CMD and
COMAND.CMD in your log-in directory.
PUSH for obtaining a new level of TOPS-20;
reads COMAND.CMD in your log-in
directory.
Examples
1. Process a command file.
@TAKE BACKUP.CMD
End of BACKUP.CMD.1
2. Create a command file to report system statistics, then give
the TAKE command with this filename as argument; send the
output to the line printer. Check for this listing as it is
being printed.
@CREATE STATUS.CMD
Input: STATUS.CMD.1
00100 INFORMATION DISK-USAGE
00200 INFORMATION MONITOR-STATISTICS
00300 INFORMATION SYSTEM-STATUS
00400 INFORMATION MEMORY-USAGE
00500 SYSTAT ALL
00600
*EU
[STATUS.CMD.1]
@TAKE STATUS LPT:
End of STATUS.CMD.1
@INFORMATION OUTPUT-REQUESTS/USER
Queue Job Seq Limit User
----- --- --- ----- ----
LPT EXEC 526 54 T.P.LOOMIS Being output
on PLPT0:
@
TALK
Function
The TALK command links your terminal to another user's terminal.
Format
@TALK (TO) argument
---- --------
where
argument is either a user name or a terminal line number
Characteristics
Other Job Not Affected
As soon as you give a successful TALK command, both
terminals begin printing both users' input as well as the
system's responses to that input. Each job, however, will
receive input from its own terminal only.
Ending TALK
To end a conversation link between terminals, either user
can give the BREAK command.
Refused TALK
Ordinarily you cannot contact a user with TALK if his
terminal is set to refuse links. In such a case your TALK
command causes a series of CTRL/G signals at both
terminals - usually ringing bells or high-pitched beeps.
However, if you have Wheel or Operator capabilities enabled,
you can talk to any user.
Maximum of Four Terminals
By using TALK commands you can join up to 4 terminals at
once for sharing displays or printout.
Hints
Signaling a Linked User
Once you have established links with another user's terminal
via the TALK command, you can get his attention by typing a
series of CTRL/Gs. Depending on the kind of terminal he
has, these will be reproduced as ringing bells or
high-pitched beeps.
Special Cases
User Has More Than One Job
If more than one job is logged in under the user name you
specify, the system responds with a list of that user's
terminal line numbers and the programs being run. Type your
choice of terminal line number (if possible, one running the
TOPS-20 command processor (EXEC)) after the TTY: prompt.
Talking to a Batch Job or PTYCON Job
When you link to a PTY (pseudo-terminal) to talk to the
owner of a batch job or PTYCON job, the system informs you
of this with a message, to which you must reply with a
carriage return. See also Warning, below.
Warning
Talking to a Batch Job
Use caution when communicating through a PTY
(pseudo-terminal) that is controlling a batch job: do not
send a question mark (?) or percent sign (%), because these
characters can be attributed to errors occurring within the
job. Also, if an error actually does occur in the batch job
and the batch system's question mark is displaced (by your
remarks) from the beginning of a line, the system may not
recognize it as an error.
Effect on Memory and Terminal
The TALK command does not affect memory and leaves your terminal
at TOPS-20 command level.
Related Commands
ADVISE for sending commands to another user's job
BREAK for ending communications links involving your
terminal
RECEIVE LINKS for allowing other users to talk to you
REFUSE LINKS for preventing other users from talking to you
REMARK for telling the system to regard your terminal
input as comment only
Examples
1. Give the TALK command to establish links to another user.
@TALK H.DAVIES
LINK FROM LATTA, TTY 230
@
2. Try to talk to a user who has given the REFUSE LINKS command,
then use the MAIL program to send your message.
@TALK GEBHARDT
?Refused, use "MAIL" to send mail to user
@MAIL
To: GEBHARDT
CC: LATTA
Subject: LUNCH
.
.
.
@
3. Talk to another user, giving the REMARK command immediately
after TALK. (The other user's reply must still be preceded
by semicolons (;) or exclamation marks (!).) Give a CTRL/Z
to end REMARK before typing the BREAK command to end the
conversation.
@TALK CARNAVON
LINK FROM LATTA, TTY 230
@REMARK
Type remark. End with CTRL/Z.
WHERE DO I PUT "REQMD" RECORDS AFTER EXTRACTING THE
ID'S?
@;in <accts>deft-77.cbl
@;you should have group access there...
THANKS
^Z
@BREAK
@
4. Give the TALK command to establish links to a user who has 3
jobs on three different terminals; choose one of the
terminals running the TOPS-20 command processor.
@TALK MCKAY
TTY19, DUMPER
TTY26, EXEC
TTY27, EXEC
TTY: 27
LINK FROM LATTA, TTY 230
@
TDIRECTORY
Function
The TDIRECTORY (Time-ordered DIRECTORY) command is equivalent to
the DIRECTORY command with the subcommands CHRONOLOGICAL (BY)
WRITE, REVERSE (SORTING), and TIMES (AND DATES OF) WRITE. Use
the same format and subcommands with TDIRECTORY as with
DIRECTORY. For further information, see the DIRECTORY command
description in this manual.
Examples
1. Give a TDIRECTORY command, truncating output with a CTRL/C
after the first few (most recent) files are displayed.
@TDIRECTORY
----------
Write
MISC:<LATTA>
TBATCH.CMD.1 10-May-78 13:11:57
B.DIRECTORY.1 9-May-78 12:54:00
A.DIRECTORY.1 2-May-78 13:14:52
T.CMD.1 ^C
@
2. Access another user's directory, and request a time-ordered
directory listing of all his files of a certain name.
@ACCESS <DEVRIES>
Password:
@TDIRECTORY <DEVRIES>SYSTEM.*
Write
MISC:<DEVRIES>
SYSTEM.MEM.1 19-May-78 09:03:48
.TXT.1 19-May-78 09:02:08
.RNO.1 19-May-78 09:02:00
Total of 3 files
@END-ACCESS <DEVRIES>
@
TERMINAL
Function
The TERMINAL command lets you specify many of the operating
characteristics of your terminal.
Format
@TERMINAL (MODE IS) argument
-------- --------
where
argument is a keyword, chosen from the list below,
representing your choice of TERMINAL command
options; some arguments further require a decimal
number to complete their meaning.
Summary of TERMINAL Command Arguments (defaults in boldface)
33
35
37
EXECUPORT
FLAG
FORMFEED
FULLDUPLEX
----------
HALFDUPLEX
HELP
IMMEDIATE
INDICATE
--------
LA30
LA36
LENGTH n Default n - 66
-------
LINE-HALFDUPLEX
LOWERCASE
---------
FLAG
----
FORMFEED
--------
IMMEDIATE
---------
INDICATE
NO LOWERCASE
--
PAGE
----
RAISE
TABS
----
PAGE n
RAISE
-----
50
75
110
134
150
200
SPEED 300
----- ---
600
1200
2400
4800
9600
SYSTEM-DEFAULT
--------------
TABS
TERMINET
TI
TYPE 0-15
VT05
VT50
VT52
WIDTH n Default n - 72
----- -------
TERMINAL Command Arguments
33 informs the system that your terminal is a
Teletype Model 33, which
does not have a formfeed or tab
mechanism
prints lowercase letters as uppercase
needs extra time to print tabs and
paper-moving characters (carriage
return, linefeed, formfeed, and vertical
tab)
has a line width of 72
has a page length of 66
35 informs the system that your terminal is a
Teletype Model 35, which has the same
characteristics as a Model 33, except that it
has a formfeed and tab mechanism
37 informs the system that your terminal is a
Teletype Model 37, which has the same
characteristics as a Model 33, except that it
prints lowercase letters
EXECUPORT informs the system that your terminal is an
EXECUPORT, which
does not have a formfeed or tab
mechanism
prints lowercase letters
needs extra time to perform a carriage
return
has a line width of 80
has a page length of 66
FLAG instructs the system to print a single
quotation mark (') before it prints an
uppercase character. This takes effect only
if you also set the NO LOWERCASE parameter.
FORMFEED informs the system that your terminal has a
formfeed mechanism; otherwise the system
simulates formfeeds by printing the correct
number (set by the TERMINAL LENGTH command)
of linefeeds if you have set TERMINAL NO
INDICATE, or by printing an ^L if you have
set TERMINAL INDICATE.
FULLDUPLEX instructs the system to send to your terminal
each character as the program reads it; your
terminal does not print what you type until
the system sends the character back to the
terminal.
Default
-------
HALFDUPLEX inhibits the system from sending to your
terminal each character as the program reads
it, and assumes that your terminal will print
each character itself; causes echoing of
format control characters (e.g., TAB and
linefeed). Be sure also to set any
corresponding switch physically located on
your terminal.
HELP prints information about the TERMINAL command
IMMEDIATE instructs the system to echo each character
as soon as you type it, instead of waiting
until the program receives the character.
IMMEDIATE echoing has effect only when the
FULLDUPLEX parameter is also set.
INDICATE instructs the system to print an ^L instead
of advancing the proper number of lines
whenever encountering a formfeed or CTRL/L
(ASCII character 14)
Default
-------
LA30 informs the system that your terminal is a
Digital Equipment Corporation LA30, which
does not have a formfeed or tab
mechanism
prints lowercase letters as uppercase
needs extra time to perform a carriage
return, linefeed, tab and formfeed
has a line width of 80
has a page length of 66
LA36 informs the system that your terminal is a
Digital Equipment Corporation LA36, which
does not have a formfeed or tab
mechanism
prints lowercase letters
has a line width of 132
has a page length of 66
LENGTH n sets the number of lines printed on each
page. (If you have TERMINAL PAGE mode set as
well, the system stops after printing n lines
and continues only when you type CTRL/Q.) If
you set the page length to 0, the system
stops printing only when you type a CTRL/S;
it does not automatically stop at the end of
a page.
Default n - 66
-------
LINE-HALFDUPLEX inhibits the system from sending to your
terminal each character as the program reads
it, and assumes that your terminal will print
each character itself; does not cause
echoing of format control characters (e.g.,
TAB and linefeed).
LOWERCASE tells the system that your terminal handles
lowercase output characters properly, by
printing either the lowercase character or
the corresponding uppercase character. When
NO LOWERCASE is set, the system converts
lowercase output characters to the
appropriate uppercase characters before
sending them. See also the FLAG and RAISE
parameters.
Default
-------
NO argument reverses any of the arguments FLAG, FORMFEED,
IMMEDIATE, INDICATE, LOWERCASE, PAGE, RAISE,
and TABS
Default - NO FLAG, NO FORMFEED, NO
-------
IMMEDIATE, NO PAGE, NO TABS
PAGE n instructs the system to stop printing when it
reaches the end of a page, or when you type a
CTRL/S. Continue the output by typing a
CTRL/Q. To set the page length, give the
number n or give a TERMINAL LENGTH command.
If you set the page length to 0, the system
stops printing only when you type a CTRL/S.
Default n - argument of any TERMINAL
-------
LENGTH command given in the
current terminal session, or
the default page length for
your terminal type
RAISE instructs the system to interpret all
lowercase terminal input as the corresponding
uppercase characters
Default
-------
SPEED n1 n2 sets the baud rate at which the TOPS-20
monitor receives characters from your
terminal (n1) and sends characters to your
terminal (n2). Be sure also to set any
corresponding switch physically located on
your terminal.
Default n1 - 300
-------
n2 - n1
SYSTEM-DEFAULT informs the system that your terminal has
these characteristics (ensuring an acceptable
minimum level of performance for all terminal
types):
does not have a formfeed or tab
mechanism
prints lowercase letters
needs extra time to perform a carriage
return, linefeed, tab, and formfeed
has a line width of 72
has a page length of 66
Default for terminal type
-------
TABS informs the system that your terminal has
mechanical tab stops every eight columns.
Otherwise, the system simulates the tabs by
printing the correct number of spaces.
TERMINET informs the system that your terminal is a
TERMINET, which
does not have a formfeed or tab
mechanism
prints lowercase letters
needs extra time to perform a carriage
return, linefeed, tab and formfeed
has a line width of 72
has a page length of 66
TI informs the system that your terminal is a
Texas Instruments terminal, which has the
same characteristics as an EXECUPORT
TYPE n instructs the system to treat your terminal
as terminal type n, in accordance with the
table below.
Terminal
Type Characteristics
0 same as Model 33
1 same as Model 35
2 same as Model 37
3 same as EXECUPORT and TI
4-7 reserved for customer use
8 same as TERMINET
9 has a TAB and FORMFEED mechanism,
prints lowercase, has infinite line
width and infinite page length
10 same as VT05
11 same as VT50
12 same as LA30
13 same as VT52, except for not having
tabs, and having a page length of
30; used for a Digital Equipment
Corporation GT40.
14 same as LA36
15 same as VT52
Default - 8
-------
VT05 informs the system that your terminal is a
Digital Equipment Corporation VT05, which
does not have a formfeed mechanism
has a tab mechanism
prints lowercase letters as uppercase
needs extra time to perform a linefeed
or formfeed
has a line width of 72
has a page length of 20
VT50 informs the system that your terminal is a
Digital Equipment Corporation VT50, which
does not have a formfeed mechanism
prints lowercase letters as uppercase
has a line width of 80
has a page length of 12
VT52 informs the system that your terminal is a
Digital Equipment Corporation VT52. The
system assumes the same characteristics as a
VT50 except that it prints lowercase letters,
and has a page length of 24 lines instead of
12.
WIDTH n tells the system the width of your terminal
line. When the system prints a line longer
than your terminal width, it prints the first
n positions and advances a line to print the
rest.
Default WIDTH - 72
-------
Characteristics
TERMINAL Commands Before Log-in
You can use TERMINAL commands, after an initial CTRL/C but
before logging in, to adjust your terminal's
characteristics.
Hints
Setting Your Terminal's Speed
If the initial speed setting of your terminal line is not
what you want but your terminal will function at that speed,
you can give a TERMINAL SPEED command even before log-in to
set the proper value. If your terminal will not work at the
initial speed, ask the operator to set an appropriate value.
Using Split Speeds
If you have a terminal that allows split speeds you can set
the input and output speeds to different values. This will
allow you to take advantage of fast system response, for
example, without providing a needlessly fast input line. A
setting of 150 2400 will accomplish this.
Special Cases
Terminal Types and Defaults Peculiar to Your System
The preceding pages describe terminal types and system
defaults as they are shipped with TOPS-20. However, by
making changes to the monitor and the TOPS-20 command
processor, your installation can add different terminal
types and change the default characteristics associated with
terminals. Check with your system manager to find out what
changes, if any, are in effect for your system.
Terminal Speed Retained From Last Session
Although most terminal characteristics revert to default
settings when you log in, the terminal line will retain the
value for speed set by the last user of the line, even if he
was using a different kind of terminal. However, if the
system failed and was restarted after the terminal line was
last used, the initial speed will be determined by the
appropriate TERMINAL SPEED command in the system
configuration file. Also, dial-up lines return to the speed
specified in this file after every use.
Warning
Setting Terminal Speed Too High
If you set too high a speed for your terminal, you will be
unable to use it further. A TERMINAL SPEED command in the
LOGIN.CMD file in your log-in directory can cause the same
problem. In such a case, obtain your line number if
possible (the second column of SYSTAT command output
consists of line numbers) and ask the operator to set an
appropriate value.
Effect on Memory and Terminal
The TERMINAL command does not affect memory and leaves your
terminal at TOPS-20 command level.
Related Commands
INFORMATION TERMINAL-MODE for examining your current terminal
settings
Examples
1. Declare that your terminal is an LA36.
@TERMINAL LA36
@
2. Do the same thing, using the corresponding numerical type.
@TERMINAL TYPE 14
@
3. Prepare your LA36 terminal to type some upper- and lowercase
text files on narrow paper.
@TERMINAL LA36
@TERMINAL NO RAISE
@terminal width 72
@
4. Find out your terminal's characteristics, then give the two
commands that cause it to print a full page of blank lines
when you type a CTRL/L (or when it encounters an ^L in a file
it is printing on your terminal).
@INFORMATION TERMINAL-MODE
TERMINAL LA36
TERMINAL SPEED 300
RECEIVE LINKS
REFUSE ADVICE
RECEIVE SYSTEM-MESSAGES
TERMINAL NO PAGE
TERMINAL LENGTH 66
TERMINAL WIDTH 132
TERMINAL LOWERCASE
TERMINAL RAISE
TERMINAL NO FLAG
TERMINAL INDICATE
TERMINAL NO FORMFEED
TERMINAL NO TABS
TERMINAL NO IMMEDIATE
TERMINAL FULLDUPLEX
@TERMINAL PAGE
@TERMINAL NO INDICATE
@
TMOUNT
Function
The TMOUNT command assigns a magnetic tape drive to your job,
asks the operator to mount a tape on it, and defines a logical
name for the drive.
Format
@TMOUNT (TAPE) logical name (VOLID) name,
------ ------- ---- -----
@@subcommand
----------
where
logical name is the logical name (of up to 39 alphanumeric
characters including hyphens, followed by a
colon) you want to define for the drive
name is the "volume identifier," a name of up to 6
alphanumeric characters telling the operator
which tape you want mounted on the drive
Default - not specifying a name tells the
-------
operator to mount a scratch tape
(blank tape)
,
@@subcommand means that after a final comma you can give one
of the following subcommands
READ-ONLY, which tells the operator to mount
your tape with the write ring (a plastic
attachment to the spool of tape) removed so that
you cannot inadvertently destroy information
WRITE-ENABLED, which tells the operator to mount
your tape with the write ring inserted so that
you can write information on the tape
Characteristics
Action of TMOUNT
The TMOUNT command asks the operator to mount your magnetic
tape on a tape drive. Your process waits until he answers
your request in some way. If you have already reserved a
drive for your job (the INFORMATION AVAILABLE DEVICES
command tells you if you have), he will mount it on this
drive; otherwise he will assign the first available drive.
If the operator is present (the INFORMATION SYSTEM-STATUS
command tells you whether he is) and can mount the tape, he
will be reminded every 5 minutes of your request and will
mount it as soon as possible. If he is not present, your
request remains valid for 10 minutes.
Canceling TMOUNT
Type two CTRL/Cs if you are unwilling to wait for your
TMOUNT request to be answered.
Hints
TMOUNT Instead of ASSIGN in Batch Jobs
In batch jobs use the TMOUNT command whenever possible
instead of ASSIGN. This facilitates processing by using the
first available drive.
Warning
Subcommands Are Advisory Only
The READ-ONLY or WRITE-ENABLED subcommand only advises the
operator of your wishes and does not guarantee, for example,
that he will not mistakenly install the write ring even
though you give the READ-ONLY subcommand. For this reason
you should use extreme caution when working with
non-replaceable tapes.
Effect on Memory and Terminal
The TMOUNT command does not affect memory and (once the operator
has acted on your TMOUNT request) leaves your terminal at TOPS-20
command level.
Related Commands
ASSIGN for assigning a particular tape
drive to your job
INFORMATION AVAILABLE DEVICES for finding out which tape
drives are available or are
already assigned to your job
INFORMATION SYSTEM-STATUS for finding out whether the
operator is in attendance
BACKSPACE
EOF
REWIND commands for manipulating
magnetic tapes
SKIP
UNLOAD
Examples
1. Ask the operator to mount a tape for you on any available
drive.
@TMOUNT DAY:
[Operator notified]
[MTA0: assigned]
@
2. Assign a magnetic tape drive and then ask the operator to
mount a tape on it.
@ASSIGN MTA2:
@TMOUNT DAY:
[Operator notified]
[MTA2: assigned]
@
3. Ask the operator to mount a particular tape on any available
drive; have him remove the write ring before doing so.
@TMOUNT DAY: V2S-D,
@@READ-ONLY
@@
[Operator notified]
[MTA0: assigned]
@
TRANSLATE
Function
The TRANSLATE command prints the project-programmer number
corresponding to a directory name, or the directory name
corresponding to a project-programmer number.
Format
@TRANSLATE (DIRECTORY) dev:<directory>
--------- ---------------
or
@TRANSLATE (DIRECTORY) dev:[project-programmer number]
--------- ----------------------- -------
where
dev:<directory> is the name of the directory,
enclosed in angle brackets,
that you want translated
Default dev: - your
-------
connected
structure
dev:[project-programmer number] is the project-programmer
number, enclosed in square
brackets, that you want
translated
Default dev: - your
-------
connected
structure
Hints
Using Project-programmer Numbers
Use project-programmer numbers instead of directory names
when giving file specifications to programs written for the
TOPS-10 operating system. These include the assembler
MACRO; the FORTRAN, COBOL, and ALGOL compilers; the
linking loader LINK; and utility programs CREF (providing
cross-reference information) and FILCOM (for comparing
files). If you are unsure whether a system program requires
project-programmer numbers, load it into memory (using the R
command), give a CTRL/C to return to TOPS-20 command level,
and then examine memory with the INFORMATION MEMORY-USAGE
command. If the file PA1050.EXE (the TOPS-10 compatibility
package) is present in memory, then the program was
originally written for TOPS-10 and may require a
project-programmer number where you would ordinarily give a
directory name.
Avoiding Project-programmer Numbers
To avoid project-programmer numbers, define a logical name
(of 6 or fewer characters) as the directory in question.
Then use this logical name in place of the directory when
giving file specifications. The system program will accept
the logical name as a device name, and will then be using
the correct directory.
Effect on Memory and Terminal
The TRANSLATE command does not affect memory and leaves your
terminal at TOPS-20 command level.
Related Commands
DEFINE for defining a logical name as a directory, to avoid
using a project-programmer number
Examples
1. Find out the project-programmer number associated with your
connected directory.
@TRANSLATE <LATTA>
PS:<LATTA> (IS) PS:[4,261]
@
2. Verify that the project-programmer number reported in Example
1 does correspond to your directory on PS:.
@TRANSLATE PS:[4,261]
PS:[4,261] (IS) PS:<LATTA>
@
TYPE
Function
The TYPE command prints the contents of one or more files on your
terminal.
Format
@TYPE (FILE) filespec,...
---- ------------
where
filespec is the specification of the file you want to print
on your terminal
,... means that, after commas, you can give more file
specifications
Output
Entire Contents of Files
In response to the TYPE command the system prints the entire
contents of a file, including blank lines and line numbers
if there are any. If you specify more than one file, a
blank line precedes the output for all files after the first
one. If you have used wildcard characters to specify files,
the file specification also precedes the output for each
file.
Hints
Stopping TYPE Output
To stop the TYPE command, type two CTRL/Cs. A CTRL/O will
also stop the output, but will not stop the processing of
the command or the accumulation of CPU changes.
Effect on Memory and Terminal
The TYPE command does not affect memory and leaves your terminal
at TOPS-20 command level.
Related Commands
PRINT for printing files on the line printer
Examples
1. Have the system print a file on your terminal.
@TYPE TEST.TXT
! This is file TEST.TXT !
@
UNATTACH
Function
The UNATTACH command, given at one terminal, disengages another
job from its terminal.
Format
@UNATTACH (USER) name (JOB #) number
-------- ---- ------
PASSWORD: password
--------
where
name is the user name of the job's owner
number is the job number
Default number - the only job, or only job
-------
besides your current
(attached) job, logged in
under the user name you give
password is the associated password (not requested if you are
currently logged in under the same user name as the
job that you are disengaging)
Characteristics
Log-in Not Necessary
You do not have to be logged in to give the UNATTACH
command.
Hints
Freeing Hung Terminals
The UNATTACH command is useful for freeing a terminal that,
because of program or hardware errors, is no longer under
control of the user. The command UNATTACH n can be more
useful than LOGOUT n for this purpose.
Effect on Memory and Terminal
The UNATTACH command does not affect memory and leaves your own
terminal at TOPS-20 command level. The other job is left in its
current state (usually suspended) and the disengaged terminal is
left in the state before log-in.
Related Commands
ADVISE for sending commands to another job
ATTACH for joining another job to your terminal
DETACH for disengaging your own job from its terminal
Examples
1. Disengage another user's job from its terminal.
@UNATTACH KANE
Password:
@
2. From a terminal on which you have not yet logged in, give the
UNATTACH command to disengage your only logged-in job from
its terminal.
SYSTEM 2102 DEVELOPMENT SYSTEM, TOPS-20 Monitor 3A(1512)
@UNATTACH LATTA
Password:
@
3. Give a SYSTAT command to find out what jobs you have running.
Give the UNATTACH command for two of them (you must specify a
job number for the first one so the system will know which
one you mean), and check them with another SYSTAT command.
@SYSTAT LATTA
28 26 EXEC LATTA
36* 230 EXEC LATTA
40 27 EXEC LATTA
@UNATTACH LATTA 28
[Attached to TTY26, confirm]
@UNATTACH LATTA
@SYSTAT LATTA
28 DET EXEC LATTA
36* 230 EXEC LATTA
40 DET EXEC LATTA
@
UNDELETE
Function
The UNDELETE command restores previously-deleted files to a
directory.
Format
@UNDELETE filespec,...
-------- ------------
where
filespec is the specification of the file you want to restore
Default .gen - all generations of the specified
-------
files
,... means that, after commas, you can give more file
specifications
Restrictions
Erasure of Deleted Files
Ordinarily an UNDELETE command given during the same
terminal session as an original deletion will recover the
deleted files, unless you included the EXPUNGE subcommand to
DELETE or gave a subsequent EXPUNGE command. However, if
any user or a batch job logs out while connected to your
directory, all deleted files are permanently erased. Also,
if available disk space is low on the system, the operator
or the system itself may expunge all deleted files. A
system warning message is usually sent before this happens.
Effect on Memory and Terminal
The UNDELETE command does not affect memory and leaves your
terminal at TOPS-20 command level.
Related Commands
DELETE for deleting files
DIRECTORY-class commands for obtaining lists of deleted files
(with DELETED subcommand)
EXPUNGE for permanently erasing deleted
files
Examples
1. Undelete a file.
@UNDELETE TEST.FIL
TEST.FIL.1 [OK]
TEST.FIL.2 [OK]
@
2. Access another user's directory, then restore all his deleted
files of type .FIL.
@ACCESS <CARSON>
Password:
@UNDELETE <CARSON>*.FIL
<CARSON>MEMO.FIL.1 [OK]
<CARSON>SEARCH.FIL.1 [OK]
<CARSON>TEST.FIL.1 [OK]
<CARSON>VERFY.FIL.1 [OK]
@END-ACCESS <CARSON>
@
UNLOAD
Function
The UNLOAD command rewinds a magnetic tape until it is completely
on the source reel, and puts the associated tape drive off line.
Format
@UNLOAD (DEVICE) dev:
------ ----
where
dev: is the name of the magnetic tape drive that you want to
unload
Restrictions
UNLOAD With Open Files
If you have given a CTRL/C to exit from a program that has
opened a magnetic tape drive and you then gave the UNLOAD
command for that tape drive, the system will first ask if
you want to close the associated file. You must do so for
UNLOAD to succeed, but you will probably be unable to
continue the program from that point because the file will
now be closed.
Warning
Cannot Access Tape Again
The UNLOAD command makes it impossible to access your tape
again unless it is reloaded by the operator.
Effect on Memory and Terminal
The UNLOAD command does not affect memory and leaves your
terminal at TOPS-20 command level.
Related Command
REWIND for rewinding a magnetic tape to its load point
(logical beginning)
Examples
1. Unload your magnetic tape from drive MTA0:.
@UNLOAD MTA0:
@
VDIRECTORY
Function
The VDIRECTORY (Verbose DIRECTORY) command is equivalent to the
DIRECTORY command with the subcommands LENGTH, NO HEADING,
PROTECTION, SIZE, and TIMES (AND DATES OF) WRITE. Use the same
format and subcommands with VDIRECTORY as with DIRECTORY. For
further information see the DIRECTORY command description in this
manual.
Examples
1. Give the VDIRECTORY command, then cut off the output with a
CTRL/C.
@VDIRECTORY
----------
MISC:<LATTA>
4-UPED.TXT.14;P777700 0 0(7) 25-Apr-78 09:58:21
A.DIRECTORY.1;P20200 1 0(0) 2-May-78 13:14:52
ARTIFI.CTL.7;P777700 1 215(7) 24-Apr-78 10:10:10
B.DIRECTORY.1;P20200 1 0(0) 9-May-78 12:54:00
C.EXE.1;P777700 3 1536(36) 13-Apr-77 04:27:59
CONFAB.CTL.1;P777700 1 115(7) 3-May-77 13:34:37
DIVIDE.FOR.4;P777700 1 260(7) 8-Mar-78 15:47:41
DUMPER.MAC.1;P777700 53 134442(7) 8-Nov-77 10:47:04
MAGNIF.CTL.2;P777700 1^C
@
2. Ask for a VDIRECTORY listing of certain files; include a
line of headings.
@VDIRECTORY TEST*.FOR,
@@HEADING
@@
PGS Bytes(SZ) Write
MISC:<LATTA>
TESTF1.FOR.8;P777700 1 115(7) 25-Apr-78 09:44:50
TESTF2.FOR.1;P777700 1 115(7) 20-Apr-78 10:01:56
TESTF3.FOR.1;P777700 1 115(7) 20-Apr-78 10:02:19
Total of 3 pages in 3 files
@