User Tools

Site Tools


tss-8_user_tutorial

Differences

This shows you the differences between two versions of the page.

Link to this comparison view

Both sides previous revisionPrevious revision
Next revision
Previous revision
tss-8_user_tutorial [2020/09/14 19:25] smjtss-8_user_tutorial [2023/07/01 06:01] (current) – [EDIT, the line editor] hc9
Line 1: Line 1:
-**TSS-8 User Tutorial**+====== TSS-8 User Tutorial ====== 
 + 
 +//This documents the use of [[https://tss8.sdf.org|https://tss8.sdf.org]]//
  
 //TSS/8// is a timesharing system for the DEC PDP-8 originally designed by Adrian van de Goor, a grad student at CMU and later enhanced and sold as a complete system by DEC in 1968.  It originally required a PDP-8, 8I or 8E with an RF08 or DF32 attached to at least one RS08 or a DS32 drive for swapping and filesystem.  //TSS/8// is a timesharing system for the DEC PDP-8 originally designed by Adrian van de Goor, a grad student at CMU and later enhanced and sold as a complete system by DEC in 1968.  It originally required a PDP-8, 8I or 8E with an RF08 or DF32 attached to at least one RS08 or a DS32 drive for swapping and filesystem. 
Line 5: Line 7:
 Each user gets a virtual PDP-8 with 4KW of memory, and a directory on disk for file storage. Each user gets a virtual PDP-8 with 4KW of memory, and a directory on disk for file storage.
  
-**Logging in:**+===== Basics ===== 
 + 
 +==== Logging in ====
  
 After connecting, you will be at the login "." prompt.  Type After connecting, you will be at the login "." prompt.  Type
Line 13: Line 17:
 Substituting your PPN and password.  **NONE OF THE ABOVE INPUT WILL ECHO** -- if it does it means you've connected to a session that was not properly logged out -- type "LOGOUT" to log out and then try logging in again. Substituting your PPN and password.  **NONE OF THE ABOVE INPUT WILL ECHO** -- if it does it means you've connected to a session that was not properly logged out -- type "LOGOUT" to log out and then try logging in again.
  
-**Logging out:**+==== Logging out ====
  
 The ''LOGOUT'' or ''KJOB'' command will log you out of the system.  ''K'' can be used as a shorthand for this.  It is important to log out before disconnecting as the system will not automatically log you out. The ''LOGOUT'' or ''KJOB'' command will log you out of the system.  ''K'' can be used as a shorthand for this.  It is important to log out before disconnecting as the system will not automatically log you out.
Line 19: Line 23:
 If for some reason you seem to be stuck, try ''^BS'' or ''CTRL-B S'' Further details about what ''^B'' does can be found down below in the **Stopping a running program** section. If for some reason you seem to be stuck, try ''^BS'' or ''CTRL-B S'' Further details about what ''^B'' does can be found down below in the **Stopping a running program** section.
  
-**Running programs**+==== Running programs ====
  
 Running a program from the system library or from your directory can be accomplished via the ''R'' command: Running a program from the system library or from your directory can be accomplished via the ''R'' command:
Line 51: Line 55:
 </code> </code>
  
-**Stopping a running program**+==== Stopping a running program ====
  
 ''CTRL-B'' indicates to the system that you want send a command to the ''Monitor'' Once you hit Ctrl-B, the following input will be sent to the monitor and executed.  To stop any program while it is running, Type ''CTRL-B'' followed by ''S'' and Carriage return.  ''S'' is the monitor's STOP command, sending it will cause the currently executing program to stop.  The program can be restarted from the monitor with the ''START'' command. ''CTRL-B'' indicates to the system that you want send a command to the ''Monitor'' Once you hit Ctrl-B, the following input will be sent to the monitor and executed.  To stop any program while it is running, Type ''CTRL-B'' followed by ''S'' and Carriage return.  ''S'' is the monitor's STOP command, sending it will cause the currently executing program to stop.  The program can be restarted from the monitor with the ''START'' command.
  
-**Talking to other users**+==== Talking to other users ====
  
 The ''TALK'' program can be used to send messages to other terminals.  Use ''SYSTAT'' to see what other users are logged onto the system, e.g.:  The ''TALK'' program can be used to send messages to other terminals.  Use ''SYSTAT'' to see what other users are logged onto the system, e.g.: 
Line 91: Line 95:
 Sends a friendly message to console K02. Sends a friendly message to console K02.
  
- +==== Documentation ====
-**Documentation**+
  
 The Edusystem-50 manual provides fairly accurate documentation for the version of TSS/8.24 running at LCM+L, and is available at [[http://bitsavers.org/pdf/dec/pdp8/tss8/DEC-08-E50UA-A-D_UG_Aug75.pdf]].  It covers user-related activities on the system and covers using the PAL-D assembler, BASIC, FOCAL and numerous utilities. The Edusystem-50 manual provides fairly accurate documentation for the version of TSS/8.24 running at LCM+L, and is available at [[http://bitsavers.org/pdf/dec/pdp8/tss8/DEC-08-E50UA-A-D_UG_Aug75.pdf]].  It covers user-related activities on the system and covers using the PAL-D assembler, BASIC, FOCAL and numerous utilities.
Line 98: Line 101:
 Detailed documentation for BASIC is available at [[http://bitsavers.org/pdf/dec/pdp8/tss8/DEC-T8-KJZA-D-TSS-8_BASIC_8_Programming_Manual_Mar1969.pdf]]. Detailed documentation for BASIC is available at [[http://bitsavers.org/pdf/dec/pdp8/tss8/DEC-T8-KJZA-D-TSS-8_BASIC_8_Programming_Manual_Mar1969.pdf]].
  
-ALGOL documentation can be found at [[http://svn.so-much-stuff.com/svn/trunk/pdp8/src/decus/8-213/decus-8-213.pdf ]] with [[http://www.bitsavers.org/pdf/dec/decus/pdp8/8-330_tss8_ALGOL.pdf ]] covering the TSS/8-specific changes.+===== PUTR (Print/copy/delete/... files) =====
  
-LISP is documented at [[http://svn.so-much-stuff.com/svn/trunk/pdp8/src/decus/8-102a/decus-8-102A.pdf]]+Files can be listed with the library program CAT, and other library programs (such as BASIC and EDIT) provide limited file manipulation functionsHowever, the library program ''PUTR'' ("**P**eripheral **U**tility **T**ransfer **R**outines") provides general file manipulation functions like printing file contents and copying and deleting files(Similar functions are also provided by the older library programs COPY and PIP.)
  
-Logging in +(In the following example, ''*'' is the PUTR command prompt, and text following the ''*'' is input by the user followed by the ''Enter'' key.)
-Login using the following command+
- +
-LOGIN USERNAME PASSWORD     +
-The login command does not display or echo. +
- +
- +
-We cover more on user management later on in the articleincluding how to create and modify users. +
- +
-To login as user 1, the system user enter this:+
  
 <code> <code>
-TSS/8.24  JOB 01  [01,10]  K00    12:12:36+.R PUTR
  
-SYSTEM IS DOWN, INC+*DIR 
-</code> +BOTTLE.BAS    3/14/74 
-Primitive lsCAT (catalog) +17OCT .BAS    3/14/74 
-TSS/8 Monitor maintains a library of disk files for each userThe System Library Program CAT is used to obtain a catalog of the contents of this libraryFor each file, CAT types the size of the File in units of disk segmentsThe size of a disk segment may vary among installationsGenerally, it is 256 (decimal) words of disk storageThe protection code for the file is also given(See the section on the PROTECT Monitor command (Chapter 9 of the manual) for a precise explanation of protection codes.) If the program was created by any of the System Library Programs, it has a protection code of l2, meaning that other users can read the File, but only the owner can change it.+HOLA  .ASC    3/14/74 
 +2.25,2.FCL    3/14/74 
 +COWGEN.FCL    3/14/74 
 +FIBCOW.BAS    3/14/74 
 +GUESS .BAS    3/15/74 
 +ADIEU .BAC    3/15/74 
 +TH    .BAS    3/15/74 
 +SCOUNT.ASC    3/18/74 
 +SXMPL .ASC    3/18/74 
 +SACTST.ASC    3/18/74 
 +COUNT .BIN    3/18/74 
 +EXAMPL.BIN    3/18/74 
 +SPOLY .ASC    3/18/74 
 +MISS  .BAS    3/18/74 
 +RPS   .BAS    3/18/74 
 +TMP   .ASC    3/18/74 
 +BAFFA2.      1  3/18/74 
 +BAFFA1.ASC    3/18/74 
 +ZMP   .ASC    3/18/74 
 +SPOLY2.ASC    3/18/74 
 +POLY2 .BIN    3/18/74 
 +SBLINK.ASC    3/18/74 
 +BAFFA3.ASC    3/19/74 
 +BAFFA4.ASC    3/19/74 
 +BAFFA5.ASC    3/19/74 
 +BBIN  .BIN    3/19/74 
 +BAFFA6.ASC    3/19/74 
 +RUL110.BAS    3/25/74 
 +ELCOTT.BAS    3/25/74 
 +HELLO .BAS    3/26/74 
 +EINTR .BAS    3/26/74 
 +ELCOT1.BAS    3/26/74 
 +AGE   .BAS    3/26/74 
 +PAPA  .ASC    3/26/74
  
-When the CAT program is used by the SYSTEM ADMINISTRATOR (user 1), it prints out accounting informationThis report consists out of the accumulated time (in hours, minutes and seconds) for central processor usage and connect time as well as the number of disk segments currently being used.+*COPY VERBUM.ASC=PAPA.ASC 
 +PAPA  .ASC
  
-To see the contents of a users library, run the .R CAT:L command. It will ask for an account number, after which it prints out the users directory. This way you can trace which user is using an abnormal amount of diskspace.+*DEL PAPA.ASC 
 +PAPA  .ASC
  
-If you login as the user 2, you can execute the following command to see the contents of the disk: +*TYPE VERBUM.ASC 
-<code> +VERBUM.ASC 
-.R CAT +IN PRINCIPIO ERAT VERBUM
-Output:+
  
-DISK FILES FOR USER  0, 2 ON  1-JAN-75 
  
-NAME      SIZE  PROT    DATE +*E 
-PALD  .SAV  16   12  31-MAR-76 +^BS 
-LOADER.SAV     12  31-MAR-76 +.
-FORT  .SAV     12  31-MAR-76 +
-FOSL  .SAV     12  31-MAR-76 +
-PIP   .SAV  10   12  31-MAR-76 +
-TSTLPT.SAV     12  31-MAR-76 +
-LOGOUT.SAV     12  31-MAR-76 +
-SYSTAT.SAV     12  31-MAR-76 +
-EDIT  .SAV     12  31-MAR-76 +
-FOCAL .SAV  16   12  31-MAR-76 +
-BASIC .SAV  38   12  31-MAR-76 +
-COPY  .SAV  10   12  31-MAR-76 +
-CAT   .SAV     12  31-MAR-76 +
-GRIPE .SAV     12  31-MAR-76 +
-LOGID .SAV     12  31-MAR-76 +
-PUTR  .SAV  21   12   3-FEB-84 +
-ODTHI .SAV     12  29-FEB-84 +
-FLAP  .SAV     12   7-APR-84 +
-PTLOAD.SAV     12  29-APR-84 +
-BLANK .SAV     12   9-JUN-84 +
-DTTEST.SAV     12  26-JUN-84 +
-INIT  .SAV  17   12  29-JUL-84 +
-BAS000.TMP     17   1-JAN-84 +
-BAS100.TMP     17   1-JAN-84 +
-INTER .BAS     12   1-JAN-75 +
-REMY  .ASC     12   1-JAN-75 +
- +
- +
-TOTAL DISK SEGMENTS:  189    QUOTA: 1575+
 </code> </code>
  
-System Status +**Notes**
-With the SYSTAT command you get a full printout of what the system is doing, who is logged in and more:+
  
-<code+|DIRECTORY (DIR)|List files (similar to the library program CAT)| 
-SYSTAT+|COPY|Syntax is ''COPY <new name>=<source file>''
 +|DELETE (DEL)|Delete file (rename file by copying then deleting original file)| 
 +|TYPE|Print file contents| 
 +|END (E)|End PUTR session and return to Monitor|
  
-STATUS OF TSS/8.24 DEC PDP-8 #1 AT 12:19:14 ON  1 JAN 75 +===== FOCAL69 =====
- +
-UPTIME 00:07:14 +
- +
-JOB      WHO     WHERE      WHAT       STATUS     RUNTIME +
- +
-      0, 2      K00      FOCAL      ^BS   ^Q    00:00:01 +
-      1,50      K01      SYSTAT     RUN   ^Q    00:00:00 +
- +
-AVAILABLE CORE 16K   FREE CORE=312 +
- +
-BUSY DEVICES    NONE +
- +
- 103 FREE DISK SEGMENTS +
- +
-</code> +
-There are two users logged in, user 2 on teletype 0, user 50 on teletype 1. User 2 is was FOCAL but is now on the prompt (STATUS ^BS means monitor mode, that is the prompt), user 50 is executing the SYSTAT command. +
- +
-The manual has more information on SYSTAT, listed here for convenience. +
- +
-It is frequently useful to know the status of the system as a whole; how many users are online, where they are, what they are doing, etc. The SYSTAT program provides this capability. +
- +
-SYSTAT responds by printing on the first line: the version of the TSS/8 Monitor being run, the time, and the date. SYSTAT reports the uptime which is the length of time in hours, minutes, and seconds since the system was last put online. +
- +
-SYSTAT lists all online users. Each user is identified by his account number. The job number assigned to him and the number of the console he is using are indicated, as is the particular System Program he is running. The exact running state of each user, whether he is actually running (RUN), typing in (KEY) or out (TTY), doing input/output on another system device (IO or FIP), or not running (iB), is indicated. +
- +
-The amount of computer time used by each user since he logged in is given. +
- +
-It more users are online than the system has core Fields to hold them, the Fact that the system is swapping is reported. The number of Free core blocks used internally by TSS/8 Monitor for Teletype buffering and various other purposes is typed out. +
- +
-Then SYSTAT reports any unavailable devices, i.e. , devices which are assigned to individual users. The job to which they are attached and their status (AS if they are assigned but not active, AS+INIT if they are assigned and active) is also indicated. +
- +
-Finally, the number of available segments of disk storage is reported. +
- +
-To see the time that you have been logged in: +
- +
-<code> +
-.TIME +
-00:00:20 +
-</code> +
-To see the system time: +
- +
-<code> +
-.TIME 0 +
-12:20:44 +
-</code>+
  
-FOCAL69 
 You can start up the FOCAL69 programming environment with the R FOCAL command, output below: You can start up the FOCAL69 programming environment with the R FOCAL command, output below:
  
Line 236: Line 192:
 . .
 </code> </code>
-Chatting+===== Chatting ===== 
 You can use the TALK command to talk to other users logged in. Fire up TELNET on port 4000 on a terminal or two and login with the users 2, and 1,50 (password JERK). On the 1,50 terminal, enter the following command to talk to the system administrator (on teletype 0): You can use the TALK command to talk to other users logged in. Fire up TELNET on port 4000 on a terminal or two and login with the users 2, and 1,50 (password JERK). On the 1,50 terminal, enter the following command to talk to the system administrator (on teletype 0):
  
Line 258: Line 215:
 </code> </code>
  
-BASIC-8+===== BASIC-8 ===== 
 TSS/8 has a BASIC programming environment. Start it up with the R BASIC command. It will ask you if you want to create a NEW file or load an OLD one. TSS/8 has a BASIC programming environment. Start it up with the R BASIC command. It will ask you if you want to create a NEW file or load an OLD one.
  
Line 304: Line 262:
 </code> </code>
  
-Exit BASIC with the BYE command.+^Command ^ Action^ 
 +|BYE|Exit back to the TSS/8 Monitor| 
 +|CAT|Catalogue of files on disk| 
 +|DELETE n|Delete line number n| 
 +|DELETE n1,n2|Delete line numbers n1 through n2| 
 +|LIST|List the current program| 
 +|LIST n|List a specific line number|  
 +|NEW|BASIC will ask for a new program name| 
 +|OLD|BASIC will ask for an old program name currently saved on disk and load it into memory| 
 +|RUN|Compile and run the program currently in memory| 
 +|SAVE|Save the contents of memory to disk using the current name| 
 +|SAVE [name]|Save the contents of memory to disk using the give name| 
 +|UNSAVE|Delete the program with the current name on disk (required before saving a new version with the same name)| 
 +|UNSAVE [name]|Delete the program with [name] from the disk (does not affect the program in memory)| 
 +|CTRL-B S|Stop the running program (CTRL-B then press the 'S' key)| 
 +  
 + 
 +===== EDIT, the line editor =====
  
-EDIT, the line editor 
 TSS/8 Editor provides the user with a powerful tool for creating and modifying source files on-line. EDIT allows the user to insert, change and append lines of text; and then obtain a clean listing of the updated file. EDIT also contains commands for searching the file for a given character. TSS/8 Editor provides the user with a powerful tool for creating and modifying source files on-line. EDIT allows the user to insert, change and append lines of text; and then obtain a clean listing of the updated file. EDIT also contains commands for searching the file for a given character.
  
Line 354: Line 328:
  
 Using the I command you can enter text, with a CTRL+L you exit insert mode. Save your file with E. Using the I command you can enter text, with a CTRL+L you exit insert mode. Save your file with E.
- 
  
tss-8_user_tutorial.1600111550.txt.gz · Last modified: 2020/09/14 19:25 by smj