tss-8_user_tutorial
Differences
This shows you the differences between two versions of the page.
Both sides previous revisionPrevious revisionNext revision | Previous revisionLast revisionBoth sides next revision | ||
tss-8_user_tutorial [2021/04/02 01:36] – [Documentation] Deleted ALGOL and Lisp (not available on SDF TSS/8) and unnecessary detail on basic commands papa | tss-8_user_tutorial [2023/07/01 05:58] – [EDIT, the line editor] hc9 | ||
---|---|---|---|
Line 1: | Line 1: | ||
- | ====== TSS-8 User Tutorial ====== | ||
- | |||
- | //This documents the use of [[https:// | ||
- | |||
- | //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. | ||
- | |||
- | Each user gets a virtual PDP-8 with 4KW of memory, and a directory on disk for file storage. | ||
- | |||
- | ===== Basics ===== | ||
- | |||
- | ==== Logging in ==== | ||
- | |||
- | After connecting, you will be at the login " | ||
- | |||
- | '' | ||
- | |||
- | Substituting your PPN and password. | ||
- | |||
- | ==== Logging out ==== | ||
- | |||
- | The '' | ||
- | |||
- | If for some reason you seem to be stuck, try '' | ||
- | |||
- | ==== Running programs ==== | ||
- | |||
- | Running a program from the system library or from your directory can be accomplished via the '' | ||
- | |||
- | '' | ||
- | |||
- | will run the CATALOG program, displaying the contents of your directory. | ||
- | |||
- | < | ||
- | DISK FILES FOR USER 0, 2 ON 19-DEC-79 | ||
- | |||
- | |||
- | NAME SIZE PROT DATE | ||
- | PALD .SAV 16 | ||
- | LOADER.SAV | ||
- | FORT .SAV | ||
- | FOSL .SAV | ||
- | PIP | ||
- | SYSTAT.SAV | ||
- | EDIT .SAV | ||
- | FOCAL .SAV 16 | ||
- | BASIC .SAV 38 | ||
- | CAT | ||
- | PUTR .SAV 21 | ||
- | ODTHI .SAV | ||
- | FLAP .SAV | ||
- | PTLOAD.SAV | ||
- | CHESS .SAV 17 | ||
- | ALGOL .SAV 32 | ||
- | ACTUNG.SAV | ||
- | </ | ||
- | |||
- | ==== Stopping a running program ==== | ||
- | |||
- | '' | ||
- | |||
- | ==== Talking to other users ==== | ||
- | |||
- | The '' | ||
- | |||
- | < | ||
- | .SYSTAT | ||
- | |||
- | STATUS OF TSS/8.24 DEC PDP-8 #1 AT 12:47:30 ON 19 DEC 79 | ||
- | |||
- | UPTIME 19:06:31 | ||
- | |||
- | JOB WHO | ||
- | |||
- | | ||
- | | ||
- | | ||
- | | ||
- | | ||
- | |||
- | AVAILABLE CORE 4K FREE CORE=252 | ||
- | |||
- | BUSY DEVICES | ||
- | |||
- | 3269 FREE DISK SEGMENTS | ||
- | </ | ||
- | |||
- | The " | ||
- | |||
- | '' | ||
- | |||
- | So for example, | ||
- | |||
- | '' | ||
- | |||
- | Sends a friendly message to console K02. | ||
- | |||
- | ==== 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:// | ||
- | |||
- | Detailed documentation for BASIC is available at [[http:// | ||
- | |||
- | |||
- | ===== FOCAL69 ===== | ||
- | |||
- | You can start up the FOCAL69 programming environment with the R FOCAL command, output below: | ||
- | |||
- | < | ||
- | .R FOCAL | ||
- | |||
- | SHALL I RETAIN LOG, EXP, ATN ?:NO | ||
- | |||
- | SHALL I RETAIN SINE, COSINE ?:NO | ||
- | |||
- | PROCEED. | ||
- | |||
- | *_TYPE "HELLO WORLD" | ||
- | HELLO WORLD* | ||
- | To exit FOCAL, press CTRL+B followed by the S. Your prompt will be back to a dot (.): | ||
- | |||
- | *^BS | ||
- | . | ||
- | </ | ||
- | ===== 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): | ||
- | |||
- | < | ||
- | .TALK 0 PLEASE HELP ME!!! | ||
- | </ | ||
- | On the 2 telnet session you will see this: | ||
- | |||
- | < | ||
- | ** K01 [01,50] ** | ||
- | | ||
- | </ | ||
- | You can talk back: | ||
- | |||
- | < | ||
- | .TALK 1 WHATS UP DOC? | ||
- | Telnet 1,50 will see this: | ||
- | |||
- | ** K00 [00,02] ** | ||
- | WHATS UP DOC? | ||
- | </ | ||
- | |||
- | ===== 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. | ||
- | |||
- | Here's an example program, from the TSS/8 manual, to calculate loan interest. We first enter a line number, then the instruction. Afterwards we save the file as INTER.BAS with the SAVE command. We then run the script with the RUN command. | ||
- | |||
- | < | ||
- | .R BASIC | ||
- | NEW OR OLD--NEW | ||
- | NEW PROGRAM NAME--INTER | ||
- | |||
- | READY | ||
- | |||
- | |||
- | 10 REM - PROGRAM TO COMPUTE INTEREST ON A LOAD | ||
- | 20 PRINT " | ||
- | 30 INPUT J | ||
- | 40 LET J=J/100 | ||
- | 50 PRINT " | ||
- | 60 INPUT A | ||
- | 70 PRINT " | ||
- | 80 INPUT N | ||
- | 90 print " | ||
- | 100 INPUT M | ||
- | 110 LET N=N*M | ||
- | 120 LET I=J/M | ||
- | 130 LET B=1+I | ||
- | 140 LET R = A*I/ | ||
- | 150 PRINT " | ||
- | 160 PRINT "TOTAL INTEREST =" | ||
- | 170 END | ||
- | |||
- | SAVE INTER | ||
- | |||
- | RUN | ||
- | |||
- | INTEREST IN PERCENT? 8 | ||
- | AMOUNT OF LOAN? 25000 | ||
- | NUMBER OF YEARS? 20 | ||
- | NUMBER OF PAYMENTS PER YEAR? 12 | ||
- | MONTHLY PAYMENT = 209.1103 | ||
- | TOTAL INTEREST = 25186.46 | ||
- | |||
- | |||
- | READY | ||
- | </ | ||
- | |||
- | ^Command ^ Action^ | ||
- | |BYE|Exit back to the TSS/8 Monitor| | ||
- | |CAT|Catalogue of files on disk| | ||
- | |DELETE n|Delete line number n| | ||
- | |DELETE n1, | ||
- | |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 ' | ||
- | |||
- | |||
- | ===== 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. | ||
- | |||
- | Page 56, 6-1, DEC TSS/8 User guide | ||
- | EDIT considers a file to be divided into logical units, called pages. A page of text is geranlly 50-60 lines long, and hence corresponds to a physical page of program listing. A FORTRAN-D program is generally 1-3 pages in length; a program prepared for PAL-D (the assembler) may be several pages in length. EDIT operates on one page of text at a time, allowing the user to relate his editing to the physical pages of his listing. EDIT reads a page of text from the input file into its internal buffer where the page becomes available for editing. When a page has been completely updated, it is written onto the output file and the next page of input is made available. EDIT provides several powerful commands for " | ||
- | |||
- | The end of a page of text is marked by a form feed (CTRL+L) character. Form feed is ignored by all TSS/8 language processors. | ||
- | |||
- | Here is the EDIT Command summary table from the manual. | ||
- | |||
- | ^Command ^Format(s) ^Meaning^ | ||
- | |READ | R | Read text from the input file and append to buffer until a form feed is encountered.| | ||
- | |APPEND | A | Append incoming text from keyboard to any already in buffer until a form feed is encountered.| | ||
- | |LIST | L | | | ||
- | |nL | | | | ||
- | |m,nL | |List the entire buffer. | | ||
- | |List | |line n. | | ||
- | |List | |lines m through n inclusive. | | ||
- | |PROCEED | P | | | ||
- | |nP| | | | ||
- | |n,mP | | Output the contents of the buffer to the output file, followed by a form feed. | | ||
- | |Output | |line n, followed by a form feed.| | ||
- | |Output | |lines m through n inclusive followed by a form feed.| | ||
- | |TERMINATE | T | Close out the output file and return to TSS/8 Monitor.| | ||
- | |NEXT | N | | | ||
- | |nN | | Output the entire buffer and a form feed, kill the buffer and read the next page. Repeat the above sequence n times.| | ||
- | |KILL | nD | | | ||
- | |n,mD | | Delete line n of the text. Delete lines m through n inclusive.| | ||
- | |INSERT | I | | | ||
- | |nI | | Insert before line 1 all the text from the keyboarduntil a form feed is entered. Insert before line n until a form feed is entered.| | ||
- | |CHANGE | nC | | | ||
- | |m,nC | | Delete line n, replace it with any number of lines from the keyboard until a form feed is entered. Delete | | ||
- | | | lines m through n, replace from keyboard as above until form feed is entered.| | ||
- | |MOVE | m,n$kM | Move lines m through n inclusive to before line k.| | ||
- | |GET | G | Get and list the next line beginning with a tag.| | ||
- | |SEARCH | S| | | ||
- | |||
- | |nS| | | | ||
- | |m,nS | |Search the entire buffer for the character specified (but not echoed) after the carriage return. Allow |modification when found. TSS/8Editor outputs a slash (/) before beginning a SEARCH. | ||
- | |Search | |line n, as above, allow modification.| | ||
- | |Search lines m through n inclusive, allow modification. | ||
- | |END | E | Output the contents of the buffer. Read in any pages remaining in the input file, outputting them to the | | ||
- | | | |output file. When everythingin the input file has been moved to the output file, close it out and retum to the TSS/8 Monitor. | | ||
- | |E | |is equivalent to a sufficient number of N's followed by a T command.| | ||
- | |^C | CTRL+C | Stop listing and return to Command Mode.| | ||
- | |||
- | |||
- | 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.txt · Last modified: 2023/07/01 06:01 by hc9