User Tools

Site Tools


tops-20

Differences

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

Link to this comparison view

Both sides previous revision Previous revision
Next revision
Previous revision
Last revision Both sides next revision
tops-20 [2020/05/06 23:03]
smj
tops-20 [2020/05/06 23:39]
smj
Line 33: Line 33:
 **PROGRAMMING EXAMPLES USING "COMPILE", "LOAD" and "SAVE" COMMANDS** **PROGRAMMING EXAMPLES USING "COMPILE", "LOAD" and "SAVE" COMMANDS**
  
-TOPS-20 supports many programming languages using a standard COMPILE/LOAD/SAVE model.  Here are few simple examples to get started:+TOPS-20 supports many programming languages using a standard COMPILE/LOAD/SAVE model.  TOPS-20 is very helpful using command recognition and DWIM (Do What I Mean) without having to completely type out everything.  Here are few simple examples to get started:
  
 **FORTRAN-77** **FORTRAN-77**
  
-      @copy TTY: test.for+//NOTE: This formatting is punched card style - The first 5 and 6th columns are special// 
 + 
 +      @copy TTY: test.for                             ;A simple way to enter in TEXT from the terminal
        TTY: => TEST.FOR.1        TTY: => TEST.FOR.1
              
 +               PROGRAM TEST                           ;Declare the name of the program
 +      
 +               WRITE (5, 10)                          ;OUTPUT to the terminal (UNIT 5) at line 10
 +      10       FORMAT(' TESTING 1 2 3!'             ;FORMAT the text for OUTPUT
 +      
 +               END                                    ;END the program
 +      ^Z                                              ;CTRL-Z closes the file
 +      @type test.for                                  ;TYPE the test.for file and verify
                PROGRAM TEST                PROGRAM TEST
              
                WRITE (5, 10)                WRITE (5, 10)
       10       FORMAT(' TESTING 1 2 3!')       10       FORMAT(' TESTING 1 2 3!')
- +             
-              END +               END 
-      ^Z +      @compile test                                   ;COMPILE the file TEST 
-      @type test.for +      FORTRAN: TEST                                   ;COMPILE determined TEST is a FORTRAN program 
-      PROGRAM TEST +      TEST                                         ;TEST is now written out as a .REL file 
- +      @load test                                      ;LOAD the file (or EXECUTE TEST to LOAD and RUN)
-      WRITE (5, 10) +
-      10 FORMAT(' TESTING 1 2 3!') +
-       +
-      END +
-      @compile test +
-      FORTRAN: TEST +
-      TEST    +
-      @load test+
       LINK: Loading       LINK: Loading
-      @save test+      @save test                                      ;SAVE the loaded program to a .EXE file
        TEST.EXE.1 Saved        TEST.EXE.1 Saved
       @v test.*       @v test.*
-      +            
          LS:<SMJ.FORTRAN>          LS:<SMJ.FORTRAN>
        TEST.EXE.1;P775200         6 3072(36)    6-May-2020 15:42:13 SMJ               TEST.EXE.1;P775200         6 3072(36)    6-May-2020 15:42:13 SMJ       
          .FOR.1;P775200           1 71(7)       6-May-2020 15:41:09 SMJ                 .FOR.1;P775200           1 71(7)       6-May-2020 15:41:09 SMJ       
          .REL.1;P775200           1 93(36)      6-May-2020 15:41:46 SMJ                 .REL.1;P775200           1 93(36)      6-May-2020 15:41:46 SMJ       
-      +            
        Total of 8 pages in 3 files        Total of 8 pages in 3 files
 +       
 +       @<smj.fortran>test                             ;Run the .EXE file
 +       TESTING 1 2 3!
 +       CPU time 0.09   Elapsed time 0.19
 +
 +For an excellent summary to get started with FORTRAN on TOPS-20, check out
 +[[http://wiki.twenex.org/doku.php?id=tutorials:fortran]]
 +
 +**MACRO-20**
 +
 +MACRO is the assembler on TOPS-20.  Here is a simple example of a Hello World in MACRO
 +
 +       @COPY TTY:hello.mac                             ;A simple way to enter text into a file
 +       title hello                                      
 +       
 +       entry output
 +       search uuosym
 +       
 +       hello: asciz /Hello there.
 +       
 +       /
 +       output: outstr hello
 +        monrt.
 +        end output
 +       ^Z
 +       
 +       @type hello.mac
 +       title hello
 +       
 +       entry output
 +       search uuosym
 +       
 +       hello: asciz /Hello there.
 +       
 +       /
 +       output: outstr hello
 +        monrt.
 +        end output
 +       compile hello
 +       MACRO: hello
 +       
 +       EXIT
 +       @load hello
 +       LINK: Loading
 +       @save hello
 +        HELLO.EXE.1 Saved
 +       @<smj>hello
 +       Hello there.
  
  
tops-20.txt · Last modified: 2020/07/13 10:36 by setala