TOPS-20 User's Guide

Chapter 2 Communicating With The System

This chapter describes:

  1. Using TOPS-20 commands
  2. Obtaining a list of TOPS-20 commands
  3. Obtaining information about the parts of a command
  4. Typing commands
  5. Continuing commands
  6. Adding comments to command lines
  7. Correcting input errors
  8. Setting alerts
  9. Operating system stoppage


2.1 Using TOPS-20 commands

A TOPS-20 command is an instruction that specifies the function you want the TOPS-20 operating system to perform. By giving TOPS-20 commands you accomplish your work through the operating system.

Each TOPS-20 command contains one or more of the following parts:

  1. Command name
  2. Guidewords
  3. Arguments
  4. Switches
  5. Subcommands
  6. Command terminator

The command name identifies the command and its function. Guidewords can assist you in identifying the argument you should type. (Guidewords are always printed within parentheses.) An argument is the response you enter after a guideword. This argument further identifies the information the system needs to process the command. Switches and subcommands allow you to select more precise options to a given command. Using a switch or a subcommand, you can also override default options that are part of the command. Use a carriage return to end a command.

Before doing anything more, try typing a few easy commands. TOPS-20 recognizes many commands, but this manual discusses only some commonly used commands. Appendix A contains a list of TOPS-20 commands, and their meanings. The TOPS-20 Commands Reference Manual describes all of the commands available to the nonprivileged user of TOPS-20.

You type a TOPS-20 command directly after the system prints the @ prompt; you end a TOPS-20 command by pressing the RETURN key. With some commands, you must type one or more arguments before you press the RETURN key. For example, the LOGIN command described earlier requires your user name, your password, and your account as arguments. The system tells you that it requires an argument by printing a guideword in parentheses after you press the ESC key. Some commands, such as DAYTIME, do not require arguments.

To find out today's date and time, type DAYTIME after you see the @, and then press the RETURN key.

         Thursday, May 26, 1988 08:41:21

The system prints the date in the format:

        day-of-the-week, month day-of-the-month, year

The system prints the time of day in the format:


The hours are given using a 24-hour clock. The time shown in the above example (08:41:21) is 21 seconds after 8:41 in the morning. Twelve midnight is displayed as 00:00:00, twelve noon is displayed as 12:00:00; and seven o'clock in the evening is displayed as 19:00:00.

Other commands require one or more arguments. Arguments can be letters, numbers, or a combination of both. A common argument is a file specification. (Refer to Section 4.2 for a description of file specifications.) To find out which kind of argument you should type, press ESC after you give the command. The system prints the guideword, prompting you for the kind of argument to type. If the command does not need an argument, when you press ESC, the system rings the terminal bell. The following example illustrates the DIRECTORY command followed by the guidewords (OF FILES) and the filename TEST.FOR as the argument:


Some commands accept switches while others accept subcommands. With switches and subcommands, you can be more specific about what you want the command to do.

A switch is a slash followed by an option. The option may be followed by a colon and an argument. Switches specify details about the action of the given command. You can give one or more switches to a command by typing them on the same line as the command. To include a switch, type a slash (/), followed by the option. Some options require that a value, preceded by a colon, also be given. The following example shows the use of a single switch and its value to print four copies of the file TEST.FOR.3:

        [Job TEST Queued, Request-ID 41, Limit 27]

A subcommand resembles a switch in its function. The difference between switches and subcommands is the syntax. While you enter switches on the same line as the command, you enter each subcommand on a separate line following the command line.

To include subcommand(s), end the command line by typing a comma, and press RETURN. The system prints the subcommand level prompt, @@, to indicate that you can now type subcommands. Subcommands, like TOPS-20 commands, contain subcommand names, guidewords, and arguments of their own. You can give several subcommands, but each one must be typed on a separate line. To end each subcommand, press RETURN. After you type your last subcommand, press RETURN; the system prints @@; press RETURN again. The system then processes the command and its subcommand(s). When the system prints the single @ you are back at TOPS-20 command level. The following example demonstrates the use of a single subcommand to the DIRECTORY command:


        Total of 3  files

Each part of a TOPS-20 command or subcommand is referred to as a field and is separated from each adjacent field by a space. Figure 2-1 shows the fields of the LOGIN command.

   @LOGIN (USER) user name (PASSWORD) password (ACCOUNT) account<RET>
      ^      ^       ^          ^         ^        ^     ^        ^
      |      |       |          |         |        |     |        |
      |      |       |          |         |        |     |        |
      |      |       |          |         |        |     |   terminator
      |      |       |          |         |        |     argument
      |      |       |          |         |        guideword
      |      |       |          |         argument
      |      |       |          guideword
      |      |       argument
      |      guideword
      command name

   Figure 2-1:  Fields of a Command


2.2 Obtaining a list of TOPS-20 commands

After the system outputs an @, you can type a question mark (?) to print the list of TOPS-20 commands.

         GIDNEY, TOPS-20 Development System, TOPS-20 Monitor (6012)
        @? Command, one of the following:
         ACCESS        ADVISE         APPEND        ARCHIVE     ASSIGN
         ATTACH        BACKSPACE      BLANK         BREAK       BUILD
         CANCEL        CLOSE          COMPILE       CONNECT     CONTINUE
|        TAKE          TALK           TDIRECTORY    TERMINAL    TRANSLATE
         TYPE          UNATTACH       UNDECLARE     UNDELETE    UNKEEP
         UNLOAD        VDIRECTORY
          or system program name

To stop the printing of this list, type two CTRL/Cs, which returns you to TOPS-20 command level.

Appendix A gives a brief description of each command. The TOPS-20 Commands Reference Manual contains a complete description of all TOPS-20 Commands available to the nonprivileged user.

If you remember that a command begins with a certain letter or letters, type the letters that you recall, and then type ?. TOPS-20 prints the list of commands you could type using those letters. It then prints what you have typed so far and waits for you to finish the command. In the example below, you remember that the command you want begins with the letter A. You type A, followed by a question mark. TOPS-20 prints the names of all the commands beginning with the letter A and possible filenames from the (SYS:) system directory, and waits for you to complete the command or filename.

        @A? Command, one of the following:
          or system program name

When typing a question mark, you are not limited to just one letter; you may type as many as you need.

        @CON? Command, one of the following:
          or system program name

The CONNECT command joins you to another user's files.


2.3 Obtaining information about the parts of a command

You can type a question mark following a command or subcommand to print a list of possible arguments for the command. For example, type the TERMINAL command followed by a question mark. You do not have to press the RETURN key. TOPS-20 lists the possible arguments, prints the command up to the point at which you typed ?, and waits for you to enter a valid argument.

        @TERMINAL (FEATURE OR TYPE) ? one of the following:
         FLAG             FORMFEED           FULLDUPLEX      HALFDUPLEX
         HELP             IMMEDIATE          INDICATE        INHIBIT
         LENGTH           LINE-HALFDUPLEX    LOWERCASE       NO
         PAGE             PAUSE              RAISE           RECEIVE
         SPEED            TABS               TYPE            WIDTH
          or one of the following:
         33               35                 37              EXECUPORT
         H19              LA120              LA30            LA36
         LA38             SYSTEM-DEFAULT     TERMINET        TI
         VK100            VT05               VT100           VT102
|        VT125            VT131              VT200-SERIES    VT300-SERIES
         VT50             VT52

Give the LENGTH argument, and press ESC. The system prints (OF PAGE IS):


Type another question mark to find out which argument the system expects you to give. The system prints "Length of page in decimal" and reprints the command.

        @TERMINAL LENGTH (OF PAGE IS) ?  Length of page in decimal

Choose a number (the example uses 20); type it in and press RETURN.


Some commands do not require arguments. If you type a command followed by a question mark and that command does not require further arguments, the system prints the message "Confirm with carriage return." This informs you that you are at the end of the command. Press RETURN to confirm the command and to have the system perform the function you requested.

        @DAYTIME ? Confirm with carriage return

In addition, the question mark can be used to list the subcommands and switches of a command. To list the subcommands of a command, type a question mark at subcommand level (indicated by @@). The system prints the list of subcommands. For example, type the DIRECTORY command followed by a comma, and press RETURN. When you receive the @@, type a question mark.

        @@? confirm with carriage return
          or one of the following:
         ACCOUNT                      ALPHABETICALLY
         ARCHIVE                      BEFORE
         SMALLER                      TIMES

To list the switches of a command, type the command; type a slash followed by a question mark. The system prints the list of switches for that command. Remember that all switches begin with a slash. For example, type the PRINT command, followed by a slash and a question mark.

          or Job switch, one of the following:
         /ACCOUNT:           /AFTER:               /DESTINATION-NODE:
         /REPORT:      /SPACING:
        @PRINT (FILES)/


2.4 Typing commands

You can type TOPS-20 commands to the system by using either full input, recognition input, abbreviated input, or a combination of these methods.

The LOGIN command, which identifies you to the system, is used in Sections 2.4.1 through 2.4.3 to demonstrate full, recognition, and abbreviated input.

2.4.1 Full input

To give a command using full input, type the complete command, using a space to separate the fields. To log in using full input, type the complete LOGIN command line.

        @LOGIN SARTINI ___ 341

2.4.2 Recognition input

To give a command using recognition input, type a portion of the command and press ESC. In order for the system to distinguish this command from other commands, you must type enough of the command to make it unique. The system responds in one of the following ways:

  1. Prints as much of the command as the system can recognize.
  2. Prints the remainder of the command name.
  3. Prints a guideword.
  4. Prints the remainder of the argument.
  5. Rings the terminal bell, indicating that you need to type more information.
  6. Prints an error message.

Continue typing and pressing ESC until the command is complete. Recognition input requires less typing than full input, so you are less likely to make a mistake.

To log in using recognition input, type LOG and press ESC; the system finishes the LOGIN command by printing IN and the guideword (USER). You can also use recognition on your user name. (Here the user name is SARTINI.) Type SAR and press ESC; the system finishes the user name by printing TINI and the guideword (PASSWORD). Type the complete password (it is not printed) and press ESC; the system prints (ACCOUNT). Type the account (here it is 341) and press RETURN.

In the following example, type the underlined portions of the command. At the point where the underlining stops, press ESC.

          <ESC>        <ESC>             <ESC>
            |            |                 |

If you use recognition where it is ambiguous, the system rings the terminal bell. Type more information, or type a question mark to determine what the system wants you to type.

Use recognition with the INFORMATION command. Type INFO and press ESC; the system prints RMATION (ABOUT). Type a T and press ESC; the system rings the terminal bell because you did not give enough information. To find out what information the system needs, type a ?. The system prints TAPE-PARAMETERS and TERMINAL-MODE. This tells you that the system could not complete the argument beginning with the letter T because there are two possibilities to choose from, and you did not type enough of the argument to distinguish which one you wanted. Type an E and press ESC; this time the system prints RMINAL-MODE (FOR TERMINAL). Press RETURN to end the command.

           <ESC>            <ESC>
             |                |
        @INFORMATION (ABOUT) T? one of the following:


If you use recognition where it is not appropriate (such as at the end of a command), the system rings the terminal bell.

You can use recognition in typing arguments, subcommands, and file specifications. When typing file specifications, you can also use CTRL/F to complete individual portions of a file specification. (Refer to Chapter 4 for more information on using recognition with file specifications.)

Recognition input offers several advantages:

2.4.3 Abbreviated input

To give a command using abbreviated input, type only enough of the command to distinguish it from any other command. Usually, typing the first three letters is sufficient to distinguish one command from another. Abbreviated input requires the least amount of typing of the various methods of input.

To log in using abbreviated input, type LOG and a space; type the full user name (here it is SARTINI) and a space; type the password (the password is not displayed); type the account (here it is 341) and press RETURN.

        @LOG SARTINI ___ 341

There are a few cases where non-unique abbreviations stand for a frequently used command. For example, DIS is the abbreviation for DISABLE, even though other commands begin with the letters DIS - DISCARD and DISMOUNT.

   Table 2-1:  Special Command Abbreviations


     Abbreviation       Command

     C                  CONTINUE

     D                  DEPOSIT

     DIS                DISABLE

     E                  EXAMINE


     LOG                LOGIN (When not logged in)

     LOG                LOGOUT (When logged in)

Some commands can be distinguished by typing only one or two letters. For example, several TOPS-20 commands begin with the letter A: ACCESS, ADVISE, APPEND, ASSIGN, and ATTACH. You can give any of these commands, by typing only the first two letters. To give the APPEND command you need only type AP; to give the ACCESS command, you need type only AC.


When using one or two letters to distinguish commands, keep in mind that as the system develops, new commands will be added and existing abbreviations may require more letters to identify a unique command.

The same method of using abbreviated input for TOPS-20 commands applies for the arguments and subcommands to those commands. In the INFORMATION command, there are two arguments beginning with the letter T: TAPE-PARAMETERS and TERMINAL-MODE. To get information about the terminal parameters, just type E to complete the abbreviation TE.

        @INFORMATION T? one of the following:


In the DIRECTORY command, there are four subcommands beginning with the letter S: SEPARATE, SINCE, SIZE, and SMALLER. To print a list of files in your directory, including the number of pages of each file, use the subcommand SIZE. Type DIRECTORY followed by a comma; the system prints the subcommand prompt, @@, ; type the abbreviation SIZ.



         PROG1.PAS         3
           .TXT.14         3
         LOGIN.CMD.2       1
         MAIL.TXT.1        2
         NATTACH.TST.1     1
         VERCBL.BAT.1      2
           .CBL.1          1

         Total of 13 pages in 7 files

You can type more letters than are required to uniquely identify a command. Abbreviated input simply makes the system more convenient to use.

2.4.4 Combined Recognition and Abbreviated Input

You can mix these two methods of typing commands. Use abbreviated input for the parts of the command you know, and use recognition for the parts of the command you are uncertain of. You can give the LOGIN command using the combination of input methods.

        @LOG SARTINI (ACCOUNT) 341

To give this command, type LOG and a space; type the user name (here it is SARTINI) and a space; type the password and press ESC. After the system prints (ACCOUNT), type the account (here it is 341) and press RETURN.

2.4.5 What are defaults

A default is the value supplied by the operating system when you do not specify one yourself. For instance, if you do not specify the number of copies in a PRINT command, the system uses the default value of 1. By not explicitly stating the value, the system assumes you have chosen the default. TOPS-20 supplies default values in several areas. The defaults used with individual commands are specified in each command's description in the TOPS-20 Commands Reference Manual.


2.5 Continuing commands

Occasionally it is necessary to type a command that is longer than the maximum line length allowed by your terminal. You can continue typing commands past the end of the line and onto the next line, without pressing RETURN. The system accepts fields of a command that are split between two lines.

In the following example, note that the filename, MANUFACTURING, is split between two lines:

        URING.PLAN.1 /AFTER:18:00

If you want to avoid splitting a command field, type a space followed by the continuation character, a hyphen (-), at the end of the line and press RETURN. Then, continue typing the command on the next line.


Do not use the continuation character to divide a file specification. (Refer to Section 4.2, Complete Form of a File Specification, for a description of file specifications.)


2.6 Adding comments to command lines

You can include comments on the command line or on a separate line by prefixing the comment with a comment character, either a semicolon or an exclamation point. The semicolon causes the remainder of the line to be considered as a comment; the exclamation point causes only the text up to the next exclamation point or the end of the line to be considered as a comment.

The following examples show the valid ways to add comments to the TERMINAL command:

        @TERMINAL VT100  ;This comment follows the command

        @!This comment precedes the command! TERMINAL VT100

        @TERMINAL !This comment is within the command!  VT100

        @;This entire line is a comment

If a comment exceeds one line, the same rules applied to continuing commands (refer to the previous section) apply to continuing comments.

The comment character is useful for placing comments in your LOGIN.CMD and COMAND.CMD files. (Refer to Section 1.7 for an example of a LOGIN.CMD file with comments.)

The comment character is also useful when conversing with another user while linked via the TALK command. (Refer to Section 3.2 for information on using the TALK command.)


2.7 Correcting input errors

Five keys help you correct input mistakes. These keys are DELETE, CTRL/R, CTRL/U, CTRL/W, and CTRL/H. Except for CTRL/H, these keys are effective only before you press RETURN to end the command. If you press the RETURN key before noticing that a command is incorrect, the system tries to execute it. Usually the command is invalid and the system prints:

        ?Unrecognized command

This allows you to try again. If you typed a valid command by mistake, you can halt its execution by various means:

  1. Stop EDIT by pressing ESC, typing EQ and pressing the RETURN key.
  2. Stop printout on your terminal by typing CTRL/O.
  3. Stop system programs (such as FILCOM) by typing CTRL/C.
  4. Stop any program or command by typing two CTRL/C's.
In each case you are returned to the TOPS-20 operating system. You can then give any valid TOPS-20 command.

2.7.1 DELETE - Erasing a character

The DELETE key moves the cursor back one character and deletes that character. Most video terminals actually move the cursor (an underline or block that marks your position) backward and erases the character when you press DELETE. Hardcopy terminals print the deleted character followed by the backslash character /.

2.7.2 CTRL/U - Erasing an entire line

To erase the current command line, type CTRL/U. CTRL/U deletes the line and performs a RETURN so that you can reenter an entire line. Most video terminals erase the line when you press CTRL/U. Hardcopy terminals print three Xs at the end of the command.

2.7.3 CTRL/W - Erasing a word

To erase a word, type CTRL/W. Most video terminals actually move the cursor backward and erase the last word when you type CTRL/W. Hardcopy terminals print an underscore after the word to indicate that the word has been deleted.

2.7.4 CTRL/R - Reprinting a command line

CTRL/R reprints the current command line. You commonly use CTRL/R when editing with CTRL/W and DELETE on a hardcopy terminal has made the command difficult to read.

In this example of the TERMINAL command, you mistakenly type WIDHT instead of WIDTH and correct the mistake with DELETE. To make the command more readable by incorporating the correction, type CTRL/R.


2.7.5 CTRL/H - Reprinting part of an erroneous command line

If you make an error in a command line and press RETURN, the system prints a question mark (?) followed by an error message. To reprint the command line up to the erroneous field, type CTRL/H or the BACKSPACE key. The system reprints the command line up to the field that is in error, and you can now complete the command correctly. (CTRL/H or BACKSPACE must be the very next character pressed after pressing RETURN. Also note that both CTRL/H and BACKSPACE print ^H on the terminal.)

The following example illustrates the use of CTRL/H or BACKSPACE with the TERMINAL command:

        ?Does not match switch or keyword - "LENGTH-WIDTH"

To try this example, type TER and press ESC; the system prints MINAL (FEATURE or TYPE). Type LENGTH-WIDTH and press RETURN. The system prints the error message ?Does not match switch or keyword - "LENGTH-WIDTH". (There is no TERMINAL command argument LENGTH-WIDTH. The argument is LENGTH or WIDTH but not both.) Type CTRL/H or BACKSPACE; the system reprints the command line up to the erroneous field. You can finish the command correctly by typing LENGTH 66.


2.8 Setting alerts

You can arrange for the system to ring your terminal bell and issue a one-line message at any future time. You do this by giving the SET ALERT command.


        [09:45:00 alert - PREPARE FOR 10:00 MEETING]

You can also be notified at a time that is relative to the current time. The following example sends an alert 10 minutes from the current time:


        [10:02:26 alert - END OF COFFEE BREAK!]

If you wish to be alerted at the same times, include the appropriate SET ALERT commands in your LOGIN.CMD file. This file is discussed in Section 1.7. Refer to the TOPS-20 Commands Reference Manual for complete information on SET ALERT.

To obtain a listing of all outstanding alert requests, give the INFORMATION ALERTS command.

         Next alert at 1-Mar-88 11:25:00 - Project meeting 5 mins
         Other alerts set for:
           1-Mar-88 13:00:00 - Call for ajax specs
           1-Mar-88 16:55:00 - Almost time to go home!
           2-Mar-88 00:09:00 - Submit weekly report by noon
           14-Mar-88 09:00:00 - Going away luncheon for manager today

         Alerts are automatic

The line "Alerts are automatic" indicates that alerts are issued whether or not you are running a program. Your issuing of the SET AUTOMATIC or the SET NO AUTOMATIC command determines whether or not the system interrupts programs to issue you alerts. If SET NO AUTOMATIC is in effect, you are notified only when your terminal is at TOPS-20 command level.

Note that when you log out, all pending alerts are cleared. You have to reset them when you log in again, unless they are specified in your LOGIN.CMD or COMAND.CMD command file.


2.9 Operating system stoppage

The TOPS-20 Operating System may stop unexpectedly because of a malfunction. When the operating system stops, the terminal does not print or receive any characters you type. This indicates that the part of the computer controlling input from and output to the terminal is malfunctioning. If the system can recover from this error, it prints:

        [DECSYSTEM-20 continued]

You may lose a few seconds of typing, but after this message prints on the terminal, you can continue your work.

When a fatal error occurs (the entire computer stops working), the system outputs the message:

        %DECSYSTEM-20 not running

When the system resumes operation, it outputs the message:

        System restarting, wait...
and after a few moments, it prints another message, similar to the following:
        [From OPERATOR on line 6:   SYSTEM IN OPERATION]

Once the system restarts after a fatal error, you must log in to the system again. If you have changed the speed of your line with the TERMINAL SPEED command, you may have to reset the speed, depending upon the default speed set by the system manager.

After a fatal error, some of your files may be missing or incomplete. Contact the operator to have these files restored from the system backup tapes.