User Tools

Site Tools


tutorials:fortran

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
tutorials:fortran [2014/01/11 02:21]
papa [Input/Output Devices]
tutorials:fortran [2022/03/19 09:52] (current)
papa [CPU/Elapsed time report on program termination]
Line 9: Line 9:
 ===== Peculiarities ===== ===== Peculiarities =====
  
 +==== CPU/Elapsed time report on program termination ====
 +
 +The FORTRAN compiler adds a report on CPU and elapsed time used by the program that prints at the end of every program run, like:
 +
 +  CPU time 0.08 Elapsed time 0.09
 +
 +This message can be suppressed by adding the following line to your program source:
 +
 +        CALL QUIETX
 +
 +==== DATE subroutine bug ====
 +
 +Although the TOPS-20 operating system as a whole survived the Y2K crisis, the FORTRAN DATE subroutine did not fare as well.
 +
 +DATE is supposed to return a ten-character string representing the current system date with the format:
 +
 +''dd-mmm-yyb''
 +
 +Where:
 +
 +| ''dd'' | Day of month (leading zero converted to blank) |
 +| ''mmm'' | Three-character abbreviation of month ("Jan", "Feb", ...) |
 +| ''yy'' | Last two digits of year |
 +| ''b'' | blank character |
 +
 +However, since the year 2000, the DATE has set the ''yyb'' portion of the returned date to the //first three// digits of the current year, giving the same value for all years of a given decade. For example, for every year between 2010 and 2019, DATE returned "201" in the ''yyb'' portion of the date string.
 +
 +This renders the year portion of DATE's output useless for most purposes. A work-around is to program a date subroutine in another language that correctly processes the TOPS-20 system date (such as MACRO assembly language) and call that subroutine from your FORTRAN program instead of the FORTRAN DATE subroutine.
  
 ==== Input/Output Devices ==== ==== Input/Output Devices ====
Line 28: Line 56:
 Below is a list of FORTRAN-20 logical unit assignments. For file input or output, you may use any of the units assigned to disk (0, 1, 20-24, 30-99). If you do not specify a file name when you open the logical unit, FORTRAN-20 will use the default file name (in your currently connected directory) corresponding to the unit you are opening as shown in the table. Below is a list of FORTRAN-20 logical unit assignments. For file input or output, you may use any of the units assigned to disk (0, 1, 20-24, 30-99). If you do not specify a file name when you open the logical unit, FORTRAN-20 will use the default file name (in your currently connected directory) corresponding to the unit you are opening as shown in the table.
  
-^  Unit  ^Device^Default filename^Usage^ +^  Unit  ^Device^Default filename^Usage^  Available  
-|  0  |DSK|FOR00.DAT|Disk| +|  0  |DSK|FOR00.DAT|Disk|  YES  
-|  1  |DSK|FOR01.DAT|Disk| +|  1  |DSK|FOR01.DAT|Disk|  YES  
-|  2  |CDR|FOR02.DAT|Card reader| +|  2  |CDR|FOR02.DAT|Card reader|  NO  
-|  3  |LPT|FOR03.DAT|Line printer| +|  3  |LPT|FOR03.DAT|Line printer|  NO  
-|  4  |CTY|FOR04.DAT|Console teletype| +|  4  |CTY|FOR04.DAT|Console teletype|  NO  
-|  5  |TTY|FOR05.DAT|User teletype| +|  5  |TTY|FOR05.DAT|User teletype|  YES  
-|  6  |PTR|FOR06.DAT|Paper tape reader| +|  6  |PTR|FOR06.DAT|Paper tape reader|  NO  
-|  7  |PTP|FOR07.DAT|Paper tape punch| +|  7  |PTP|FOR07.DAT|Paper tape punch|  NO  
-|  8  |DIS|FOR08.DAT|Display| +|  8  |DIS|FOR08.DAT|Display|  NO  
-|  9  |DTA1|FOR09.DAT|DECtape| +|  9  |DTA1|FOR09.DAT|DECtape|  NO  
-|  10-15  |DTA2-7|FOR10 - 15.DAT| +|  10-15  |DTA2-7|FOR10 - 15.DAT|   NO  | 
-|  16-18  |MTA0-2|FOR16 - 18.DAT|Magnetic tape| +|  16-18  |MTA0-2|FOR16 - 18.DAT|Magnetic tape|  NO  
-|  19  |FORTR|FOR19.DAT|Assignable device| +|  19  |FORTR|FOR19.DAT|Assignable device|  NO  
-|  20-24  |DSK|FOR20 - 24.DAT|Disk| +|  20-24  |DSK|FOR20 - 24.DAT|Disk|  YES  
-|  25-29  |DEV1-5|FOR25 - 29.DAT|Assignable devices| +|  25-29  |DEV1-5|FOR25 - 29.DAT|Assignable devices|  NO  
-|  30-99  |DSK|FOR30 - 99.DAT|Disk|+|  30-99  |DSK|FOR30 - 99.DAT|Disk|  YES  |
    
 ===== Extensions and additions ===== ===== Extensions and additions =====
tutorials/fortran.1389406903.txt.gz · Last modified: 2014/01/11 02:21 by papa