Chapter 4 HP FORTRAN 77/V on the HP 3000
HP FORTRAN 77/V on the HP 3000
HP FORTRAN 77/V Commands
:FTN [textfile] [,[uslfile] [,[listfile]]] [;INFO="text"]
:FTNPREP [textfile] [,[progfile] [,[listfile]]] [;INFO="text"]
:FTNGO [textfile] [,[listfile]] [;INFO="text"]
RUN FTN.PUB.SYS
The FORTRAN 77 compiler is a program file named FTN in the PUB group of
the SYS account. The programmer can use the MPE command :RUN to execute
FTN.PUB.SYS.
The compiler recognizes these formal file designators.
--------------------------------------------------------------------------------------------
| | |
| Formal Designator | File |
| | |
--------------------------------------------------------------------------------------------
| | |
| FTNTEXT | source file |
| | |
| FTNUSL | USL file |
| | |
| FTNLIST | listing file |
| | |
--------------------------------------------------------------------------------------------
The low order bits of the PARM word represent these three files:
|---------------------------------|
|bit 13 bit 14 bit 15 |
| USL listing source |
|---------------------------------|
The integer value of PARM sets these bits:
--------------------------------------------------------------------------------------------
| | |
| Value | Files in FILE Commands |
| | |
--------------------------------------------------------------------------------------------
| | |
| 0 | none |
| | |
| 1 | source |
| | |
| 2 | listing |
| | |
| 3 | listing, source |
| | |
| 4 | USL |
| | |
| 5 | USL, source |
| | |
| 6 | USL, listing |
| | |
| 7 | USL, listing, source |
| | |
--------------------------------------------------------------------------------------------
Trap Statement
Use this statement:
ON { error_condition } { CALL subroutine }
{ CONTROLY } { ABORT }
where the error conditions are as follows:
REAL DIV 0 INTEGER*2 UNDERFLOW
REAL OVERFLOW INTEGER DIV 0
REAL UNDERFLOW INTEGER*4 DIV 0
DOUBLE PRECISION DIV 0 INTEGER OVERFLOW
DOUBLE PRECISION OVERFLOW SYSTEM ERROR
DOUBLE PRECISION UNDERFLOW EXTERNAL ERROR
INTEGER*2 DIV 0 INTERNAL ERROR
INTEGER*2 OVERFLOW PLOT ERROR
INTEGER*4 OVERFLOW
Compiler Directives
$ALIAS name [ ='externalNAME'] [language ] [ [ %VAL ] ]
[ [ %REF [,...] ] ]
[ [ %DESCR ] ]
$ANSI [ ON]
[ OFF]
$CHECK_ACTUAL_PARM { 0 }
{ 1 }
{ 2 }
{ 3 }
$CHECK_FORMAL_PARM { 0 }
{ 1 }
{ 2 }
{ 3 }
$CODE [ ON ]
[ OFF]
$CODE_OFFSETS [ ON]
[ OFF]
$COPYRIGHT { 'copyrightName' } [DATE {'copyrightDATE' } ]
{ "copyrightName" } {"copyrightDate' }
$DEBUG [ ON]
[ OFF]
$ENDIF
$ELSE
$EXTERNAL_ALIAS name = { 'new_externalName' }
{ "new_externalName" }
$IF (ConditionList)
$INCLUDE { 'fileName' }
{ "fileName" }
$INIT [ ON]
[ OFF]
$LINES number
$LIST [ ON]
[ OFF]
$LIST_CODE [ ON]
[ OFF]
$LONG [INTEGERS]
$MORECOM
$NLS_SOURCE [ ON]
[ OFF]
$ONETRIP [ ON]
[ OFF]
$PAGE
$RANGE [ ON]
[ OFF]
$SEGMENT { 'SegmentName' }
{ "SegmentName" }
$SET (IdentifierList)
$SHORT [INTEGERS]
$SPLINTR { 'SplintrFileName '}
{ "SplintrFileName "}
$STANDARD_LEVEL { ANSI }
{ HP }
{ SYSTEM }
$SUBTITLE { 'subtitle string' }
{ "subtitle string" }
$TABLES [ ON]
[ OFF]
$TITLE { 'title string' }
{ "title string" }
$USLINIT
$WARNINGS [ ON]
[ OFF]