ASCII
*NOSEQ
*WIDTH 132
1
------------------------------------------------
! !
! NOS SYMPL CODING STANDARD !
! !
------------------------------------------------
1 1
06/01/83
TABLE OF CONTENTS
1.0 I^N^T^R^O^D^U^C^T^I^O^N . . . . . . . . . . . . . . . . . . . . . 1-1
2.0 C^O^D^I^N^G S^T^A^N^D^A^R^D^S . . . . . . . . . . . . . . . . . . . 2-1
2.1 G^E^N^E^R^A^L . . . . . . . . . . . . . . . . . . . . . . . 2-1
2.2 P^A^R^A^M^E^T^E^R^S . . . . . . . . . . . . . . . . . . . . . . 2-2
2.3 XREF . . . . . . . . . . . . . . . . . . . . . . . . . 2-2
2.4 DEF . . . . . . . . . . . . . . . . . . . . . . . . . 2-3
2.5 STATUS . . . . . . . . . . . . . . . . . . . . . . . . 2-3
2.6 COMDECK . . . . . . . . . . . . . . . . . . . . . . . 2-3
2.7 N^O^N-^A^R^R^A^Y I^T^E^M^S . . . . . . . . . . . . . . . . . . . 2-4
2.8 A^R^R^A^Y^S . . . . . . . . . . . . . . . . . . . . . . . . 2-4
2.9 FOR L^O^O^P^S (F^A^S^T ^O^R S^L^O^W) . . . . . . . . . . . . . . . 2-5
2.10 GOTO^S ^A^N^D SWITCH^E^S (C^A^S^E S^T^A^T^E^M^E^N^T) . . . . . . . . . 2-5
2.11 IF . . . . . . . . . . . . . . . . . . . . . . . . . 2-6
2.12 B^E^A^D . . . . . . . . . . . . . . . . . . . . . . . . 2-6
2.13 PROC^S, FUNC^S, ^A^N^D PRGM^S . . . . . . . . . . . . . . . 2-6
3.0 N^A^M^I^N^G C^O^N^V^E^N^T^I^O^N^S . . . . . . . . . . . . . . . . . 3-1
4.0 C^O^D^E R^E^A^D^A^B^I^L^I^T^Y . . . . . . . . . . . . . . . . . . . 4-1
4.1 F^O^R^M^A^T ^O^F S^T^A^T^E^M^E^N^T^S . . . . . . . . . . . . . . . . . 4-1
4.2 C^O^L^U^M^N 1 . . . . . . . . . . . . . . . . . . . . . . . 4-2
4.3 B^L^A^N^K L^I^N^E^S . . . . . . . . . . . . . . . . . . . . . 4-2
4.4 P^A^G^E E^J^E^C^T^S . . . . . . . . . . . . . . . . . . . . . 4-2
5.0 D^O^C^U^M^E^N^T^A^T^I^O^N S^T^A^N^D^A^R^D^S . . . . . . . . . . . . . . . 5-1
5.1 C^O^M^M^E^N^T F^O^R^M^A^T^S ^A^N^D T^Y^P^E^S . . . . . . . . . . . . . . 5-1
5.1.1 E^M^B^E^D^D^E^D C^O^M^M^E^N^T^S . . . . . . . . . . . . . . . . 5-1
5.1.2 S^I^N^G^L^E L^I^N^E C^O^M^M^E^N^T^S . . . . . . . . . . . . . . . 5-1
5.1.3 S^T^A^N^D A^L^O^N^E C^O^M^M^E^N^T^S . . . . . . . . . . . . . . . 5-2
5.1.3.1 B^R^A^C^K^E^T^S (****) . . . . . . . . . . . . . . . 5-2
5.1.3.2 E^X^T^E^R^N^A^L C^O^M^M^E^N^T^S (***) . . . . . . . . . . . 5-2
5.1.3.3 I^N^T^E^R^N^A^L C^O^M^M^E^N^T^S (**) . . . . . . . . . . . . 5-2
5.1.3.4 M^O^D^U^L^E C^O^M^M^E^N^T^S (*) . . . . . . . . . . . . . 5-3
5.2 P^R^O^G^R^A^M L^E^V^E^L D^O^C^U^M^E^N^T^A^T^I^O^N . . . . . . . . . . . . . 5-3
5.3 D^O^C^U^M^E^N^T^A^T^I^O^N ^O^F PROC^S ^A^N^D FUNC^S . . . . . . . . . . . 5-4
5.4 D^O^C^U^M^E^N^T^A^T^I^O^N ^W^I^T^H E^M^B^E^D^D^E^D C^O^M^M^E^N^T^S . . . . . . . . . 5-4
5.4.1 D^A^T^A D^E^C^L^A^R^A^T^I^O^N E^M^B^E^D^D^E^D C^O^M^M^E^N^T^S . . . . . . . . 5-4
5.4.2 A^C^T^I^O^N C^O^D^E E^M^B^E^D^D^E^D C^O^M^M^E^N^T^S . . . . . . . . . . 5-5
5.5 G^E^N^E^R^A^L D^O^C^U^M^E^N^T^A^T^I^O^N ^F^O^R PROC^S, PRGM^S ^O^R FUNC^S . . . 5-5
6.0 E^X^A^M^P^L^E^S . . . . . . . . . . . . . . . . . . . . . . . 6-1
6.1 COMDECK E^X^A^M^P^L^E^S . . . . . . . . . . . . . . . . . . . 6-1
6.2 PROC E^X^A^M^P^L^E . . . . . . . . . . . . . . . . . . . . . 6-2
6.3 S^T^A^T^U^S L^I^S^T/S^T^A^T^U^S S^W^I^T^C^H E^X^A^M^P^L^E . . . . . . . . . . 6-4
A1.0 A^D^D^E^N^D^U^M ^F^O^R SMF P^R^O^J^E^C^T . . . . . . . . . . . . . . A1-1
1
1-1
NOS SYMPL CODING STANDARD
06/01/83
-----------------------------------------------------------------
1.0 I^N^T^R^O^D^U^C^T^I^O^N
-----------------------------------------------------------------
1.0 I^N^T^R^O^D^U^C^T^I^O^N
T^H^E ^P^U^R^P^O^S^E ^O^F ^T^H^I^S ^S^T^A^N^D^A^R^D ^I^S ^T^O ^P^R^O^V^I^D^E ^A ^M^E^A^N^I^N^G^F^U^L ^S^E^T ^O^F
^P^R^A^C^T^I^C^E^S ^W^H^I^C^H ^W^I^L^L ^L^E^A^D ^T^O "^G^O^O^D", ^C^O^N^S^I^S^T^E^N^T, ^M^A^I^N^T^A^I^N^A^B^L^E,
^O^R^G^A^N^I^Z^E^D ^A^N^D ^O^P^T^I^M^I^Z^E^D SYMPL ^C^O^D^E. T^H^I^S ^D^O^C^U^M^E^N^T ^U^S^E^D ^T^H^E SYMPL
C^O^D^I^N^G S^T^A^N^D^A^R^D^S DAP (DCS S1831), ^T^H^E NOS COMPASS P^R^O^G^R^A^M^M^I^N^G
S^T^A^N^D^A^R^D, ^A^N^D ^T^H^E SYMPL C^O^D^I^N^G S^T^A^N^D^A^R^D^S ^F^O^R ^T^H^E SYMPL ^P^R^O^J^E^C^T ^I^N
SVL ^A^S ^G^U^I^D^E^L^I^N^E^S.
T^H^I^S ^S^T^A^N^D^A^R^D ^I^S ^I^N ^A^D^D^I^T^I^O^N ^T^O ^T^H^E NOS COMPASS P^R^O^G^R^A^M^M^I^N^G
S^T^A^N^D^A^R^D. T^H^E ^P^R^O^C^E^D^U^R^E^S ^E^S^T^A^B^L^I^S^H^E^D ^I^N ^T^H^E COMPASS ^S^T^A^N^D^A^R^D
^W^H^I^C^H ^A^R^E ^N^O^T ^U^N^I^Q^U^E ^T^O ^T^H^E COMPASS ^L^A^N^G^U^A^G^E (^I.^E. G^E^N^E^R^A^L
R^E^Q^U^I^R^E^M^E^N^T^S, C^O^D^E T^R^A^N^S^M^I^T^T^A^L R^U^L^E^S, ^A^N^D D^A^Y^F^I^L^E M^E^S^S^A^G^E^S) ^A^R^E
^T^O ^B^E ^A^D^H^E^R^E^D ^T^O ^F^O^R SYMPL ^P^R^O^G^R^A^M^M^I^N^G ^A^L^S^O.
W^H^E^R^E ^T^H^E ^W^O^R^D "^M^U^S^T" ^A^P^P^E^A^R^S ^I^N ^T^H^I^S ^S^T^A^N^D^A^R^D, ^D^E^V^I^A^T^I^O^N^S
^W^I^L^L ^N^O^T ^B^E ^A^P^P^R^O^V^E^D. W^H^E^R^E ^T^H^E ^W^O^R^D "^S^H^O^U^L^D" ^A^P^P^E^A^R^S, ^R^E^V^I^E^W^E^R^S
^M^A^Y ^A^L^L^O^W ^A ^D^E^V^I^A^T^I^O^N ^I^F ^T^H^E ^A^N^A^L^Y^S^T ^C^A^N ^P^R^E^S^E^N^T ^C^O^N^V^I^N^C^I^N^G
^R^E^A^S^O^N^S ^F^O^R ^T^H^E ^D^E^V^I^A^T^I^O^N.
1
2-1
NOS SYMPL CODING STANDARD
06/01/83
-----------------------------------------------------------------
2.0 C^O^D^I^N^G S^T^A^N^D^A^R^D^S
-----------------------------------------------------------------
2.0 C^O^D^I^N^G S^T^A^N^D^A^R^D^S
2.1 G^E^N^E^R^A^L
A^L^L ^D^E^C^L^A^R^A^T^I^O^N^S ^P^E^R^T^A^I^N^I^N^G ^T^O ^A PROC ^O^R FUNC ^S^H^O^U^L^D ^U^S^E ^T^H^E
^F^O^L^L^O^W^I^N^G ^G^R^O^U^P^I^N^G
F^O^R^M^A^L P^A^R^A^M^E^T^E^R^S
XREF^S
DEF^S
STATUS ^N^A^M^E^S
COMDECK^S
ITEM^S
BASED ARRAY^S
ARRAY^S
SWITCH^E^S
O^T^H^E^R
A^L^L ^D^E^C^L^A^R^A^T^I^O^N^S ^O^R ^C^A^L^L^S ^T^O COMDECK^S ^S^H^O^U^L^D ^B^E ^I^N ^A^L^P^H^A^B^E^T^I^C
^O^R^D^E^R.
E^A^C^H ^D^E^C^L^A^R^A^T^I^O^N ^M^U^S^T ^S^T^A^R^T ^O^N ^A ^S^E^P^A^R^A^T^E ^L^I^N^E ^A^N^D ^M^U^S^T ^B^E
^A^C^C^O^M^P^A^N^I^E^D ^B^Y ^A ^C^O^M^M^E^N^T ^D^E^S^C^R^I^B^I^N^G ^I^T^S ^F^U^N^C^T^I^O^N.
E^A^C^H ^E^X^E^C^U^T^A^B^L^E ^S^T^A^T^E^M^E^N^T ^M^U^S^T ^S^T^A^R^T ^O^N ^A ^S^E^P^A^R^A^T^E ^L^I^N^E.
E^A^C^H BEGIN ^A^N^D END ^M^U^S^T ^B^E ^O^N ^A ^S^E^P^A^R^A^T^E ^L^I^N^E.
A ^D^E^C^L^A^R^A^T^I^O^N ^W^H^I^C^H ^I^S ^A ^O^N^E-^B^I^T ^F^I^E^L^D ^S^H^O^U^L^D ^B^E B^O^O^L^E^A^N.
S^E^L^F ^M^O^D^I^F^Y^I^N^G ^C^O^D^E ^M^U^S^T ^N^O^T ^B^E ^U^S^E^D.
A^L^L ^L^A^B^E^L^S ^B^E^G^I^N ^I^N ^C^O^L^U^M^N ^O^N^E. L^A^B^E^L^S ^M^U^S^T ^A^P^P^E^A^R ^O^N ^L^I^N^E^S
^B^Y ^T^H^E^M^S^E^L^V^E^S ^E^X^C^E^P^T ^F^O^R ^E^M^B^E^D^D^E^D ^C^O^M^M^E^N^T^S. A^L^L ^L^A^B^E^L ^N^A^M^E^S ^M^U^S^T
^B^E ^U^N^I^Q^U^E ^W^I^T^H^I^N ^A PROC/FUNC.
TEST ^M^U^S^T ^N^E^V^E^R ^B^E ^U^S^E^D ^W^I^T^H^O^U^T ^E^X^P^L^I^C^I^T^L^Y ^S^T^A^T^I^N^G ^T^H^E
^I^N^D^U^C^T^I^O^N ^V^A^R^I^A^B^L^E ^I^T ^I^S ^T^E^S^T^I^N^G.
D^E^F^I^N^E CONTROL DISJOINT ^A^N^D CONTROL INERT ^I^N ^A COMDECK. U^S^E
CONTROL OVERLAP ^A^N^D CONTROL REACTIVE ^T^O ^D^E^F^I^N^E ^T^H^E ^E^X^C^E^P^T^I^O^N^S.
W^H^E^R^E ^N^U^M^E^R^I^C ^C^O^N^S^T^A^N^T^S ^A^R^E ^E^S^T^A^B^L^I^S^H^E^D ^V^I^A DEF^S ^O^R STATUS
^L^I^S^T^S, ^T^H^E ^A^S^S^U^M^E^D ^N^U^M^E^R^I^C ^V^A^L^U^E^S ^S^H^O^U^L^D ^N^O^T ^A^P^P^E^A^R ^I^N ^T^H^E
^C^O^D^I^N^G ^D^O^C^U^M^E^N^T^A^T^I^O^N.
I^T^E^M^S I, J ^A^N^D K ^S^H^O^U^L^D ^B^E ^R^E^S^E^R^V^E^D ^A^S ^S^I^M^P^L^E ^L^O^O^P ^O^R ^C^O^N^T^R^O^L
^V^A^R^I^A^B^L^E^S.
1
2-2
NOS SYMPL CODING STANDARD
06/01/83
-----------------------------------------------------------------
2.0 C^O^D^I^N^G S^T^A^N^D^A^R^D^S
2.1 G^E^N^E^R^A^L
-----------------------------------------------------------------
T^H^E ^C^O^D^E ^M^U^S^T ^N^O^T ^M^A^K^E ^A^S^S^U^M^P^T^I^O^N^S ^A^B^O^U^T ^T^H^E ^O^C^T^A^L ^R^E^P^R^E^S^E^N^T^A-
^T^I^O^N ^O^F ^C^H^A^R^A^C^T^E^R^S. T^H^I^S ^R^E^P^R^E^S^E^N^T^A^T^I^O^N ^V^A^R^I^E^S ^B^E^T^W^E^E^N ^T^H^E
^V^A^R^I^O^U^S NOS ^C^H^A^R^A^C^T^E^R ^S^E^T^S.
M^A^C^H^I^N^E ^I^N^D^E^P^E^N^D^E^N^T ^I^N^S^T^R^U^C^T^I^O^N^S ^W^H^E^N ^A^V^A^I^L^A^B^L^E ^S^H^O^U^L^D ^B^E ^U^S^E^D
^I^N ^P^R^E^F^E^R^E^N^C^E ^T^O ^D^E^P^E^N^D^E^N^T ^S^T^R^U^C^T^U^R^E^S.
2.2 P^A^R^A^M^E^T^E^R^S
U^S^E ^C^A^L^L-^B^Y-^V^A^L^U^E ^P^A^R^A^M^E^T^E^R^S ^W^H^E^N^E^V^E^R ^P^O^S^S^I^B^L^E. O^N^L^Y ^U^S^E
^C^A^L^L-^B^Y-^A^D^D^R^E^S^S ^W^H^E^N ^T^H^E ^P^A^R^A^M^E^T^E^R ^I^S ^M^O^D^I^F^I^E^D ^W^I^T^H^I^N ^T^H^E
^P^R^O^C^E^D^U^R^E ^A^N^D ^T^H^E ^N^E^W ^V^A^L^U^E ^O^F ^T^H^E ^P^A^R^A^M^E^T^E^R^S ^I^S ^R^E^T^U^R^N^E^D ^T^O ^T^H^E
^C^A^L^L^I^N^G ^P^R^O^G^R^A^M.
R^E^U^S^E ^A^C^T^U^A^L ^P^A^R^A^M^E^T^E^R ^L^I^S^T^S ^W^H^E^N^E^V^E^R ^P^O^S^S^I^B^L^E. I^F ^T^H^E
^P^A^R^A^M^E^T^E^R^S ^A^R^E ^U^S^E^D ^F^O^R ^A ^N^U^M^B^E^R ^O^F ^C^A^L^L^S, ^U^S^E ^T^H^E ^S^A^M^E ^O^R^D^E^R ^O^F
^P^A^R^A^M^E^T^E^R^S ^F^O^R ^M^O^R^E ^E^F^F^I^C^I^E^N^T ^C^O^D^I^N^G.
F^O^R^M^A^L ^P^A^R^A^M^E^T^E^R^S ^M^U^S^T ^B^E ^D^E^C^L^A^R^E^D ^W^I^T^H^I^N ^T^H^E PROC/FUNC ^R^A^T^H^E^R
^T^H^A^N ^I^N ^A ^C^O^M^M^O^N ^D^E^C^K. T^H^E^Y ^C^A^N ^B^E ^O^R^D^E^R^E^D ^A^L^P^H^A^B^E^T^I^C^A^L^L^Y ^O^R
^A^C^C^O^R^D^I^N^G ^T^O ^T^H^E ^C^A^L^L^I^N^G ^S^E^Q^U^E^N^C^E.
A^N ^A^R^R^A^Y ^I^T^E^M ^M^U^S^T ^N^O^T ^B^E ^U^S^E^D ^A^S ^A ^P^A^R^A^M^E^T^E^R ^W^H^E^R^E ^A ^N^E^W
^V^A^L^U^E ^O^F ^T^H^E ^P^A^R^A^M^E^T^E^R ^I^S ^R^E^T^U^R^N^E^D, ^S^I^N^C^E ^T^H^I^S ^F^E^A^T^U^R^E ^I^S ^N^O^T
^S^U^P^P^O^R^T^E^D ^I^N SYMPL.
2.3 XREF
D^E^C^L^A^R^A^T^I^O^N ^O^F ^E^X^T^E^R^N^A^L ^P^R^O^C^E^D^U^R^E ^N^A^M^E^S ^A^R^E ^T^O ^B^E ^D^O^N^E ^I^N ^T^H^E
^F^O^L^L^O^W^I^N^G ^F^O^R^M^A^T. T^H^E ^R^E^F^E^R^E^N^C^E^D PROC/FUNC ^N^A^M^E^S ^A^R^E ^T^O ^B^E ^I^N
^A^L^P^H^A^B^E^T^I^C ^S^E^Q^U^E^N^C^E.
E^X^A^M^P^L^E@D
#
**** PROC Y - XREF LIST BEGIN.
#
XREF
BEGIN
PROC APPLE; # PARES APPLE #
PROC BANANA; # PEELS BANANA #
PROC ORANGE; # SQUEEZES ORANGE #
END
#
**** PROC Y - XREF LIST END.
#
1
2-3
NOS SYMPL CODING STANDARD
06/01/83
-----------------------------------------------------------------
2.0 C^O^D^I^N^G S^T^A^N^D^A^R^D^S
2.4 DEF
-----------------------------------------------------------------
2.4 DEF
U^S^E DEF ^T^O ^P^R^O^V^I^D^E ^S^Y^M^B^O^L^I^C ^C^O^N^S^T^A^N^T^S ^F^O^R ^N^U^M^E^R^I^C ^C^O^N^S^T^A^N^T^S
^F^O^R ^E^A^S^E ^I^N ^F^I^N^D^I^N^G, ^I^D^E^N^T^I^F^Y^I^N^G ^A^N^D ^M^O^D^I^F^Y^I^N^G ^P^A^R^A^M^E^T^E^R^S.
A DEF ^M^U^S^T ^N^O^T ^B^E ^U^S^E^D ^T^O ^R^E^N^A^M^E ^A ^V^A^R^I^A^B^L^E.
A DEF ^M^U^S^T ^N^O^T ^B^E ^U^S^E^D ^T^O ^R^E^D^E^F^I^N^E ^A ^F^U^N^C^T^I^O^N ^C^A^L^L, ^A ^R^E^S^E^R^V^E^D
^W^O^R^D, ^O^R ^A^N ^O^P^E^R^A^T^I^O^N ^U^N^L^E^S^S ^I^T ^I^S ^U^S^E^D ^C^O^N^S^I^S^T^E^N^T^L^Y ^T^H^R^O^U^G^H^O^U^T
^T^H^E ^S^Y^S^T^E^M ^T^O ^I^M^P^R^O^V^E ^C^L^A^R^I^T^Y. O^T^H^E^R^W^I^S^E, ^T^H^I^S ^M^A^Y ^T^E^N^D ^T^O
^O^B^S^C^U^R^E ^T^H^E ^A^C^T^U^A^L ^C^O^D^E. A^L^L DEF^S ^W^H^I^C^H ^R^E^D^E^F^I^N^E ^T^H^E ^C^O^D^E ^O^R
^M^A^K^E ^I^T ^A ^C^O^N^D^I^T^I^O^N^A^L ^C^O^M^P^I^L^A^T^I^O^N ^W^I^L^L ^B^E ^P^L^A^C^E^D ^I^N ^A COMDECK.
T^H^E DEF ^F^O^R^M^A^T ^F^O^R ^A ^F^U^L^L ^W^O^R^D ^O^C^T^A^L ^C^O^N^S^T^A^N^T ^I^S ^I^N 4-^D^I^G^I^T
^P^A^R^C^E^L^S. F^O^R ^E^X^A^M^P^L^E@D
DEF ERRMASK #O"0037 7740 0505 0000 7777"#; # ERROR BIT MASK #
2.5 STATUS
S^T^A^T^U^S ^L^I^S^T^S ^S^H^O^U^L^D ^C^O^N^T^A^I^N ^N^O ^U^N^U^S^E^D ^P^O^S^I^T^I^O^N^S. A^N^Y ^U^N^U^S^E^D
^P^O^S^I^T^I^O^N^S ^M^U^S^T ^B^E ^F^I^L^L^E^D ^W^I^T^H ^A ^D^U^M^M^Y ^A^R^G^U^M^E^N^T ^A^N^D ^H^A^V^E ^A
# RESERVED # ^O^R # NOT USED # ^C^O^M^M^E^N^T. I^T ^M^A^Y ^B^E ^B^E^T^T^E^R ^T^O ^U^S^E
DEF^S ^I^F ^T^H^E^R^E ^A^R^E ^M^A^N^Y ^U^N^U^S^E^D ^P^O^S^I^T^I^O^N^S ^O^R ^A^N^Y ^O^F ^T^H^E ^E^L^E^M^E^N^T^S
^A^R^E ^E^X^P^E^C^T^E^D ^T^O ^C^H^A^N^G^E.
2.6 COMDECK
E^X^E^C^U^T^A^B^L^E ^C^O^D^E ^S^H^O^U^L^D ^N^O^T ^B^E ^P^L^A^C^E^D ^I^N ^A COMDECK.
T^H^E ^D^E^C^L^A^R^A^T^I^O^N^S ^F^O^R ^A ^D^A^T^A ^S^T^R^U^C^T^U^R^E ^M^U^S^T ^B^E ^W^H^O^L^L^Y ^C^O^N^T^A^I^N^E^D
^W^I^T^H^I^N ^A ^S^I^N^G^L^E ^C^O^M^M^O^N ^D^E^C^K. W^H^E^R^E ^T^W^O ^O^R ^M^O^R^E ^D^A^T^A ^S^T^R^U^C^T^U^R^E^S
^A^R^E ^I^N^T^E^R^D^E^P^E^N^D^E^N^T, ^T^H^E ^D^E^C^L^A^R^A^T^I^O^N^S ^F^O^R ^T^H^E ^I^N^T^E^R^D^E^P^E^N^D^E^N^T
^S^T^R^U^C^T^U^R^E^S ^M^U^S^T ^B^E ^I^N ^T^H^E ^S^A^M^E ^C^O^M^M^O^N ^D^E^C^K.
L^O^G^I^C^A^L^L^Y ^A^S^S^O^C^I^A^T^E^D ^D^A^T^A ^I^T^E^M^S ^A^N^D ^S^T^R^U^C^T^U^R^E^S ^S^H^O^U^L^D ^B^E
^D^E^C^L^A^R^E^D ^I^N ^O^N^E COMDECK ^U^N^L^E^S^S ^T^H^E^Y ^A^R^E ^O^N^L^Y ^T^O ^B^E ^U^S^E^D ^B^Y ^O^N^E
^M^O^D^U^L^E ^W^H^E^R^E ^T^H^E^Y ^M^A^Y ^B^E ^D^E^C^L^A^R^E^D ^L^O^C^A^L^L^Y.
O^N^E ^O^R ^M^O^R^E COMDECK^S ^M^U^S^T ^C^O^N^T^A^I^N ^A^L^L ^D^E^C^L^A^R^A^T^I^O^N^S ^A^F^F^E^C^T^I^N^G
^T^A^B^L^E ^S^I^Z^E ^W^H^I^C^H ^C^O^U^L^D ^B^E ^C^H^A^N^G^E^D ^W^I^T^H ^T^H^E ^S^Y^S^T^E^M. T^H^I^S ^I^S ^T^O
^F^A^C^I^L^I^T^A^T^E ^M^A^I^N^T^E^N^A^N^C^E.
C^O^M^M^O^N ^D^E^C^K^S ^M^U^S^T ^N^O^T ^B^E ^L^I^S^T^E^D.
A PRGM, PROC ^O^R FUNC ^S^H^O^U^L^D ^O^N^L^Y ^C^A^L^L ^T^H^E ^C^O^M^M^O^N ^D^E^C^K^S ^T^H^A^T ^I^T
^R^E^F^E^R^E^N^C^E^S.
1
2-4
NOS SYMPL CODING STANDARD
06/01/83
-----------------------------------------------------------------
2.0 C^O^D^I^N^G S^T^A^N^D^A^R^D^S
2.6 COMDECK
-----------------------------------------------------------------
E^V^E^R^Y ^C^O^M^M^O^N ^D^E^C^K ^M^U^S^T ^H^A^V^E ^A^N ^O^V^E^R^V^I^E^W ^D^E^S^C^R^I^P^T^I^O^N ^O^F ^W^H^A^T ^I^T
^D^O^E^S. T^H^E ^F^O^L^L^O^W^I^N^G ^F^O^R^M^A^T ^I^S ^T^O ^B^E ^U^S^E^D. T^H^E ^L^I^S^T ^C^O^N^T^R^O^L
^S^T^A^T^E^M^E^N^T^S ^B^E^G^I^N ^I^N ^C^O^L^U^M^N 48.
# ^D^E^C^K ^N^A^M^E - ^D^E^S^C^R^I^P^T^I^O^N. #
CONTROL NOLIST;
CONTROL IFEQ LISTCON,1;
CONTROL LIST;
CONTROL FI;
#
*** ^D^E^C^K ^N^A^M^E - ^D^E^S^C^R^I^P^T^I^O^N.
*
* (^P^U^R^P^O^S^E) (^S^E^V^E^R^A^L ^L^I^N^E^S ^C^A^N ^B^E ^U^S^E^D)
#
CONTROL LIST;
2.7 N^O^N-^A^R^R^A^Y I^T^E^M^S
T^H^E ^I^T^E^M^S, ^T^H^E ^V^A^R^I^A^B^L^E ^N^A^M^E^S, ^T^H^E ^T^Y^P^E^S, ^T^H^E ^P^R^E^S^E^T^S ^A^N^D ^T^H^E
^E^M^B^E^D^D^E^D ^C^O^M^M^E^N^T^S ^S^H^O^U^L^D ^E^A^C^H ^B^E ^V^E^R^T^I^C^A^L^L^Y ^A^L^I^G^N^E^D. L^E^A^V^E ^R^O^O^M
^F^O^R ^T^E^N ^C^H^A^R^A^C^T^E^R ^V^A^R^I^A^B^L^E ^N^A^M^E^S ^A^N^D ^L^E^A^V^E ^R^O^O^M ^F^O^R ^C^H^A^R^A^C^T^E^R
^C^O^U^N^T^S ^O^N ^C^H^A^R^A^C^T^E^R ^T^Y^P^E ^I^T^E^M^S ^F^O^R ^E^A^S^E ^O^F ^F^U^T^U^R^E ^M^A^I^N^T^E^N^A^N^C^E.
V^A^R^I^A^B^L^E^S ^S^H^O^U^L^D ^B^E ^D^E^C^L^A^R^E^D ^A^L^P^H^A^B^E^T^I^C^A^L^L^Y.
2.8 A^R^R^A^Y^S
A^R^R^A^Y^S ^U^S^E^D ^B^Y ^M^O^R^E ^T^H^A^N ^O^N^E PROC ^M^U^S^T ^B^E ^D^E^F^I^N^E^D ^I^N
COMDECK^S.
U^S^A^G^E ^O^F ^I^T^E^M^S ^F^R^O^M ^A^N ^A^R^R^A^Y ^M^U^S^T ^A^L^W^A^Y^S ^B^E ^S^U^B^S^C^R^I^P^T^E^D. I^T
^I^S ^C^O^N^F^U^S^I^N^G ^T^O ^D^E^F^A^U^L^T ^S^U^B^S^C^R^I^P^T^S.
I^T^E^M ^D^E^C^L^A^R^A^T^I^O^N^S ^M^U^S^T ^B^E ^I^N ^A^S^C^E^N^D^I^N^G ^O^R^D^E^R (^I.^E. ^W^O^R^D 0 ^B^I^T
0 ^T^O ^W^O^R^D ^N ^B^I^T ^N). I^F ^O^V^E^R^L^A^P^P^I^N^G ^D^E^C^L^A^R^A^T^I^O^N^S ^A^R^E ^U^S^E^D, ^T^H^E^N
^T^H^E ^I^T^E^M ^W^H^I^C^H ^S^P^A^N^S ^O^T^H^E^R ^I^T^E^M^S ^M^U^S^T ^B^E ^F^I^R^S^T.
A^R^R^A^Y ^I^N^D^I^C^E^S ^S^H^O^U^L^D ^S^T^A^R^T ^W^I^T^H ^Z^E^R^O.
T^H^E ^A^R^R^A^Y ^N^A^M^E, ^B^O^U^N^D^S ^A^N^D ^T^H^E ^A^L^L^O^C^A^T^I^O^N/^S^I^Z^E ^M^U^S^T ^B^E
^S^E^P^A^R^A^T^E^D ^B^Y ^B^L^A^N^K^S (^E.^G. ARRAY EXMAPLE [0@D10] P(2); ).
I^T^E^M^S ^W^I^T^H^I^N ^A^N ^A^R^R^A^Y ^A^R^E ^A^L^I^G^N^E^D ^W^I^T^H ^T^H^E ^B^E^G^I^N ^F^O^R ^E^A^S^E ^O^F
^R^E^A^D^I^N^G. E^A^C^H ^I^T^E^M ^M^U^S^T ^B^E ^D^O^C^U^M^E^N^T^E^D.
1
2-5
NOS SYMPL CODING STANDARD
06/01/83
-----------------------------------------------------------------
2.0 C^O^D^I^N^G S^T^A^N^D^A^R^D^S
2.8 A^R^R^A^Y^S
-----------------------------------------------------------------
T^H^E ^I^T^E^M ^N^A^M^E^S, ^T^Y^P^E/^P^O^S^I^T^I^O^N^S, ^P^R^E^S^E^T ^V^A^L^U^E^S, ^A^N^D ^E^M^B^E^D^D^E^D
^C^O^M^M^E^N^T^S ^S^H^O^U^L^D ^E^A^C^H ^B^E ^V^E^R^T^I^C^A^L^L^Y ^A^L^I^G^N^E^D. L^E^A^V^E ^R^O^O^M ^F^O^R ^T^E^N
^C^H^A^R^A^C^T^E^R ^I^T^E^M ^N^A^M^E^S ^A^N^D ^F^O^R ^T^W^O ^D^I^G^I^T "^E^P", "^F^B^I^T", ^A^N^D "^S^I^Z^E"
^F^I^E^L^D^S ^A^N^D ^U^S^E ^A^T ^L^E^A^S^T ^T^W^O ^S^P^A^C^E^S ^A^F^T^E^R ^T^H^E ^S^E^M^I^C^O^L^O^N ^T^O ^E^A^S^E
^F^U^T^U^R^E ^M^A^I^N^T^E^N^A^N^C^E.
2.9 FOR L^O^O^P^S (F^A^S^T ^O^R S^L^O^W)
FOR ^L^O^O^P^S ^A^R^E ^O^F ^T^W^O ^T^Y^P^E^S. I^N ^T^H^E ^S^L^O^W FOR ^L^O^O^P, ^T^H^E ^O^B^J^E^C^T
^C^O^D^E ^H^A^S ^A ^D^I^R^E^C^T ^C^O^R^R^E^S^P^O^N^D^E^N^C^E ^W^I^T^H ^T^H^E SYMPL ^S^T^A^T^E^M^E^N^T^S. T^H^I^S
^I^S ^N^O^T ^T^H^E ^C^A^S^E ^W^I^T^H ^F^A^S^T ^L^O^O^P^S. A ^F^A^S^T-^F^O^R-^L^O^O^P ^I^S ^O^P^T^I^M^I^Z^E^D ^B^Y
^P^R^E-^E^V^A^L^U^A^T^I^N^G ^T^H^E STEP ^A^N^D UNTIL/WHILE ^E^L^E^M^E^N^T^S. A^T ^L^E^A^S^T ^O^N^E
^C^Y^C^L^E ^O^F ^T^H^E ^L^O^O^P ^I^S ^E^X^E^C^U^T^E^D.
F^A^S^T FOR ^L^O^O^P^S ^A^N^D ^S^L^O^W FOR ^L^O^O^P^S ^M^U^S^T ^B^E ^U^S^E^D. A ^S^I^M^P^L^E
FOR ^S^T^A^T^E^M^E^N^T ^M^U^S^T ^N^O^T ^B^E ^U^S^E^D. F^O^R ^E^A^S^I^E^R ^R^E^A^D^A^B^I^L^I^T^Y ^A^N^D
^P^R^O^G^R^A^M^M^I^N^G, ^U^S^E DEF ^S^T^A^T^E^M^E^N^T^S ^T^O ^S^E^T ^U^P FASTFOR ^O^R SLOWFOR
^I^N^S^T^E^A^D ^O^F ^T^H^E CONTROL FASTLOOP ^O^R CONTROL SLOWLOOP. T^H^E^S^E DEF
^S^T^A^T^E^M^E^N^T^S ^S^H^O^U^L^D ^B^E ^P^L^A^C^E^D ^I^N ^A COMDECK.
DEF FASTFOR #CONTROL FASTLOOP; FOR#
DEF SLOWFOR #CONTROL SLOWLOOP; FOR#
F^O^R ^B^E^T^T^E^R ^O^P^T^I^M^I^Z^A^T^I^O^N ^C^O^N^S^I^D^E^R ^U^S^I^N^G STEP/WHILE ^A^S ^A^N
^A^L^T^E^R^N^A^T^I^V^E ^T^O STEP/UNTIL.
T^H^E ^I^N^D^U^C^T^I^O^N ^V^A^R^I^A^B^L^E ^M^U^S^T ^N^O^T ^B^E ^C^H^A^N^G^E^D ^D^U^R^I^N^G ^T^H^E ^L^O^O^P ^O^R
^B^Y ^A FUNC ^C^A^L^L^E^D ^W^H^I^L^E ^E^V^A^L^U^A^T^I^N^G ^T^H^E STEP/UNTIL/WHILE ^P^A^R^T.
T^H^E ^E^X^I^T ^F^R^O^M ^A ^L^O^O^P ^S^H^O^U^L^D ^B^E ^T^H^R^O^U^G^H ^A^N UNTIL/WHILE ^O^R ^A
^R^E^T^U^R^N ^S^T^A^T^E^M^E^N^T. T^H^E ^E^N^T^R^Y ^I^N^T^O ^A ^L^O^O^P ^M^U^S^T ^N^O^T ^B^E ^I^N ^T^H^E
^M^I^D^D^L^E ^O^F ^T^H^E ^L^O^O^P.
T^H^E ^E^X^E^C^U^T^A^B^L^E ^S^T^A^T^E^M^E^N^T(^S) ^A^F^T^E^R ^T^H^E DO ^P^A^R^T ^O^F ^A FOR ^L^O^O^P
^M^U^S^T ^B^E ^E^N^C^L^O^S^E^D ^I^N ^A BEGIN/END ^P^A^I^R.
2.10 GOTO^S ^A^N^D SWITCH^E^S (C^A^S^E S^T^A^T^E^M^E^N^T)
GOTO ^S^H^O^U^L^D ^B^E ^E^M^P^L^O^Y^E^D ^O^N^L^Y ^I^F ^T^H^E ^R^E^S^U^L^T^I^N^G ^S^O^U^R^C^E ^C^O^D^E ^I^S
^D^E^M^O^N^S^T^R^A^B^L^Y ^S^U^P^E^R^I^O^R ^I^N ^P^E^R^F^O^R^M^A^N^C^E, ^C^L^A^R^I^T^Y, ^M^A^I^N^T^A^I^N^A^B^I^L^I^T^Y,
^O^R ^E^X^T^E^N^D^I^B^I^L^I^T^Y. I^N ^S^P^I^T^E ^O^F ^S^T^R^U^C^T^U^R^E^D ^P^R^O^G^R^A^M^M^I^N^G, GOTO^S ^M^A^Y
^M^A^K^E ^T^H^E ^C^O^D^E ^M^O^R^E ^E^F^F^I^C^I^E^N^T ^I^F ^E^M^P^L^O^Y^E^D ^P^R^O^P^E^R^L^Y. GOTO^S ^M^A^Y
^M^A^K^E ^I^T ^D^I^F^F^I^C^U^L^T ^T^O ^F^O^L^L^O^W ^L^O^G^I^C. J^U^M^P^S ^I^N^T^O FOR ^L^O^O^P^S ^M^U^S^T ^N^O^T
^B^E ^U^S^E^D. J^U^M^P^S ^I^N^T^O ^C^O^D^E ^W^I^T^H^I^N ^A THEN ^O^R ELSE ^S^H^O^U^L^D ^N^O^T ^B^E
^U^S^E^D. J^U^M^P^S ^B^A^C^K^W^A^R^D^S ^I^N ^T^H^E ^C^O^D^E ^S^H^O^U^L^D ^N^O^T ^B^E ^U^S^E^D.
1
2-6
NOS SYMPL CODING STANDARD
06/01/83
-----------------------------------------------------------------
2.0 C^O^D^I^N^G S^T^A^N^D^A^R^D^S
2.10 GOTO^S ^A^N^D SWITCH^E^S (C^A^S^E S^T^A^T^E^M^E^N^T)
-----------------------------------------------------------------
A GOTO ^S^T^A^T^E^M^E^N^T ^S^P^E^C^I^F^Y^I^N^G ^A ^S^U^B^S^C^R^I^P^T^E^D ^S^W^I^T^C^H ^L^I^S^T ^M^A^Y ^B^E
^U^S^E^D ^T^O ^S^I^M^U^L^A^T^E ^A ^C^A^S^E ^S^T^A^T^E^M^E^N^T. E^A^C^H ^C^A^S^E ^S^H^O^U^L^D ^E^N^D ^W^I^T^H ^A
GOTO ^B^R^A^N^C^H^I^N^G ^T^O ^A ^C^O^M^M^O^N ^E^X^I^T, ^A RETURN ^S^T^A^T^E^M^E^N^T, ^O^R ^A^N ABORT
^C^A^L^L.
S^I^M^U^L^A^T^E^D ^C^A^S^E ^S^T^A^T^E^M^E^N^T^S ^M^A^Y ^U^S^E ^A ^M^U^L^T^I^P^L^I^C^I^T^Y ^O^F ^L^A^B^E^L^S
^F^O^R ^E^X^I^T^S, ^P^R^O^V^I^D^E^D ^T^H^A^T ^T^H^E ^S^E^L^E^C^T^I^O^N ^O^F ^E^X^I^T ^P^O^I^N^T^S ^I^S ^D^O^N^E
^T^O ^A^C^H^I^E^V^E ^C^O^N^S^O^L^I^D^A^T^I^O^N ^O^F ^S^I^M^I^L^A^R ^S^E^Q^U^E^N^C^E^S ^O^F ^C^O^D^E, ^A^N^D ^T^H^A^T
^A^L^L ^S^U^C^H ^L^A^B^E^L^S ^A^R^E ^G^R^O^U^P^E^D ^T^O^G^E^T^H^E^R. S^E^E ^T^H^E E^X^A^M^P^L^E^S ^S^E^C^T^I^O^N
^F^O^R ^A^N ^E^X^A^M^P^L^E ^O^F ^A ^S^I^M^U^L^A^T^E^D ^C^A^S^E ^S^T^A^T^E^M^E^N^T.
2.11 IF
T^H^E THEN ^A^N^D ELSE ^P^A^R^T ^O^F ^A^N IF ^S^T^A^T^E^M^E^N^T ^M^U^S^T ^A^L^W^A^Y^S ^U^S^E ^A
BEGIN/END ^P^A^I^R. I^F ^E^M^B^E^D^D^E^D ^C^O^M^M^E^N^T^S ^A^R^E ^N^E^E^D^E^D ^T^O ^D^E^S^C^R^I^B^E ^T^H^E
^C^O^N^D^I^T^I^O^N, ^T^H^E^Y ^S^H^O^U^L^D ^B^E ^P^L^A^C^E^D ^W^I^T^H ^E^I^T^H^E^R ^T^H^E THEN/ELSE ^O^R ^T^H^E
^A^S^S^O^C^I^A^T^E^D BEGIN/END ^P^A^I^R ^R^A^T^H^E^R ^T^H^A^N ^O^N ^T^H^E IF. A ^S^T^A^N^D ^A^L^O^N^E
^C^O^M^M^E^N^T ^F^O^L^L^O^W^I^N^G ^T^H^E THEN ^O^R ELSE ^M^A^Y ^B^E ^U^S^E^D ^I^N^S^T^E^A^D ^I^F
^E^M^B^E^D^D^E^D ^C^O^M^M^E^N^T^S ^W^O^U^L^D ^B^E ^T^O^O ^L^O^N^G ^O^R ^W^O^U^L^D ^R^E^S^T^R^I^C^T ^T^H^E
^R^E^A^D^A^B^I^L^I^T^Y ^O^F ^T^H^E ^C^O^D^E.
R^E^L^A^T^E^D IF ^S^T^A^T^E^M^E^N^T^S ^S^H^O^U^L^D ^N^O^T ^B^E ^N^E^S^T^E^D ^M^O^R^E ^T^H^A^N 3 ^D^E^E^P.
A ^S^I^M^U^L^A^T^E^D ^C^A^S^E ^S^T^A^T^E^M^E^N^T ^M^A^Y ^B^E ^U^S^E^D.
C^O^M^P^O^U^N^D ^C^O^N^D^I^T^I^O^N^A^L^S ^O^N ^A^N IF ^S^T^A^T^E^M^E^N^T ^S^H^O^U^L^D ^B^E ^O^R^D^E^R^E^D
^S^U^C^H ^T^H^A^T ^T^H^E ^F^I^R^S^T ^C^O^N^D^I^T^I^O^N ^I^S ^T^H^E ^O^N^E ^W^H^I^C^H ^W^I^L^L ^M^O^S^T ^L^I^K^E^L^Y
^T^E^R^M^I^N^A^T^E ^T^H^E ^C^O^N^D^I^T^I^O^N ^E^V^A^L^U^A^T^I^O^N.
2.12 B^E^A^D
A^V^O^I^D ^U^S^I^N^G ^B^E^A^D ^F^U^N^C^T^I^O^N^S ^U^N^L^E^S^S ^N^E^C^E^S^S^A^R^Y. I^N^S^T^E^A^D, ^T^H^E ^U^S^E
^O^F ^A^N ^A^R^R^A^Y ^W^I^T^H ^P^A^R^T^I^A^L-^W^O^R^D ^I^T^E^M^S ^I^S ^P^R^E^F^E^R^R^E^D. B^E^A^D ^F^U^N^C^T^I^O^N^S
^A^R^E ^D^I^F^F^I^C^U^L^T ^T^O ^U^P^D^A^T^E ^I^N ^A ^P^R^O^G^R^A^M ^I^F ^T^H^E ^D^A^T^A ^I^T^E^M ^T^H^A^T ^I^S
^B^E^A^D^E^D ^I^S ^E^V^E^R ^C^H^A^N^G^E^D. I^F ^U^S^E^D, ^D^O ^N^O^T ^C^R^O^S^S-^T^Y^P^E (^B^I^T
^F^U^N^C^T^I^O^N^S ^S^H^O^U^L^D ^B^E ^U^S^E^D ^O^N^L^Y ^O^N ^N^U^M^E^R^I^C ^D^A^T^A, ^B^Y^T^E ^F^U^N^C^T^I^O^N^S
^O^N^L^Y ^O^N ^C^H^A^R^A^C^T^E^R^S).
B^E^A^D ^F^U^N^C^T^I^O^N^S ^M^A^Y ^B^E ^U^S^E^D ^T^O ^S^I^M^U^L^A^T^E ^D^A^T^A ^D^E^F^I^N^I^T^I^O^N
^F^E^A^T^U^R^E^S ^N^O^T ^C^U^R^R^E^N^T^L^Y ^I^M^P^L^E^M^E^N^T^E^D ^W^I^T^H SYMPL ^S^U^C^H ^A^S ^R^E^P^E^A^T^I^N^G
^G^R^O^U^P^S ^W^I^T^H^I^N ^A ^W^O^R^D.
1
2-7
NOS SYMPL CODING STANDARD
06/01/83
-----------------------------------------------------------------
2.0 C^O^D^I^N^G S^T^A^N^D^A^R^D^S
2.13 PROC^S, FUNC^S, ^A^N^D PRGM^S
-----------------------------------------------------------------
2.13 PROC^S, FUNC^S, ^A^N^D PRGM^S
XDEF^S, ^A^L^T^E^R^N^A^T^E ^E^N^T^R^Y ^P^O^I^N^T^S, ^A^N^D ^I^N^T^E^R^N^A^L PROC^S ^S^H^O^U^L^D ^N^O^T
^B^E ^U^S^E^D. ^T^H^E^Y ^A^R^E ^H^A^R^D ^T^O ^L^O^C^A^T^E ^I^N ^T^H^E ^P^R^O^G^R^A^M ^A^N^D ^W^I^L^L ^M^A^K^E
^D^E^B^U^G^G^I^N^G ^A^N^D ^M^O^D^I^F^I^C^A^T^I^O^N ^M^O^R^E ^D^I^F^F^I^C^U^L^T.
PROC^S ^A^N^D FUNC^S ^M^U^S^T ^H^A^V^E ^A ^F^I^X^E^D (^N^O^T ^V^A^R^I^A^B^L^E) ^N^U^M^B^E^R ^O^F
^P^A^R^A^M^E^T^E^R^S.
T^H^E F ^O^P^T^I^O^N ^O^N ^T^H^E SYMPL ^C^O^M^M^A^N^D ^M^U^S^T ^N^O^T ^B^E ^U^S^E^D. I^N^S^T^E^A^D,
^U^S^E CONTROL FTN ^I^N ^T^H^E ^S^O^U^R^C^E ^W^H^E^N ^N^E^E^D^E^D.
1
3-1
NOS SYMPL CODING STANDARD
06/01/83
-----------------------------------------------------------------
3.0 N^A^M^I^N^G C^O^N^V^E^N^T^I^O^N^S
-----------------------------------------------------------------
3.0 N^A^M^I^N^G C^O^N^V^E^N^T^I^O^N^S
A^L^L ^D^E^C^L^A^R^A^T^I^O^N^S ^A^N^D PROC/FUNC ^N^A^M^E^S ^S^H^O^U^L^D ^B^E ^D^E^S^C^R^I^P^T^I^V^E.
R^O^U^T^I^N^E^S ^M^A^Y ^U^S^E ^S^I^M^P^L^E ^L^O^C^A^L ^V^A^R^I^A^B^L^E^S ^N^A^M^E^D TMP1, TMP2,
^E^T^C. H^O^W^E^V^E^R, ^S^U^C^H ^N^A^M^E^S ^C^A^N ^B^E ^U^S^E^D ^O^N^L^Y ^F^O^R ^M^U^L^T^I-^P^U^R^P^O^S^E
^I^T^E^M^S. I^T^E^M^S ^W^I^T^H ^A ^S^P^E^C^I^F^I^C ^C^O^M^P^U^T^A^T^I^O^N^A^L ^P^U^R^P^O^S^E ^S^H^O^U^L^D ^H^A^V^E
^A ^M^E^A^N^I^N^G^F^U^L ^N^A^M^E.
A^L^L ^E^X^T^E^R^N^A^L ^I^D^E^N^T^I^F^I^E^R^S (PRGM, PROC, FUNC ^N^A^M^E^S) ^M^U^S^T ^B^E 7 ^O^R
^L^E^S^S ^C^H^A^R^A^C^T^E^R^S. T^H^E ^L^O^A^D^E^R ^T^R^U^N^C^A^T^E^S ^A ^N^A^M^E ^T^O 7 ^C^H^A^R^A^C^T^E^R^S.
A^L^L ^I^N^T^E^R^N^A^L ^I^D^E^N^T^I^F^I^E^R^S (^D^E^C^L^A^R^A^T^I^O^N^S, ^A^R^R^A^Y^S, ^S^T^A^T^U^S ^L^I^S^T
^N^A^M^E^S) ^M^U^S^T ^B^E 10 ^O^R ^L^E^S^S ^C^H^A^R^A^C^T^E^R^S. A $ ^M^A^Y ^B^E ^U^S^E^D ^A^S ^A^N^O^T^H^E^R
^L^E^T^T^E^R ^I^N ^T^H^E ^A^L^P^H^A^B^E^T. H^O^W^E^V^E^R, $ ^I^S ^I^N^V^A^L^I^D ^I^N ^T^H^E ^D^E^C^K ^N^A^M^E
^B^E^C^A^U^S^E ^O^F MODIFY.
A^L^L ^A^R^R^A^Y ^I^T^E^M^S ^S^H^O^U^L^D ^B^E ^P^R^E^F^I^X^E^D ^B^Y ^T^H^E ^F^I^R^S^T 3 ^O^R 4
^C^H^A^R^A^C^T^E^R^S ^O^F ^T^H^E ^A^R^R^A^Y ^N^A^M^E. T^H^E ^L^A^S^T 6 ^O^R 7 ^C^H^A^R^A^C^T^E^R^S ^O^F ^T^H^E
^A^R^R^A^Y ^I^T^E^M ^A^R^E ^T^H^E ^D^E^S^C^R^I^P^T^I^V^E ^N^A^M^E.
A^L^L ^R^E^L^A^T^E^D DEF^S ^S^H^O^U^L^D ^U^S^E ^T^H^E ^S^A^M^E ^P^R^E^F^I^X.
A^L^L COMDECK ^N^A^M^E^S ^S^H^O^U^L^D ^B^E 7 ^C^H^A^R^A^C^T^E^R^S ^I^N ^L^E^N^G^T^H ^A^N^D ^S^H^O^U^L^D
^B^E ^I^N ^T^H^E ^F^O^L^L^O^W^I^N^G ^F^O^R^M
COM^X^A^A^A
^W^H^E^R^E
^A^A^A = S^Y^M^B^O^L^I^C ^N^A^M^E ^O^F COMDECK
^X = O^N^E ^O^F ^T^H^E COMDECK ^I^N^D^I^C^A^T^O^R^S@D
A = COMDECK^S ^U^S^E^D ^B^Y ^M^O^R^E ^T^H^A^N ^O^N^E ^O^F ^T^H^E
E, U, ^O^R Z SYMPL ^G^R^O^U^P^S
B = D^A^T^A ^M^A^N^A^G^E^R
C = CPU ^C^O^D^E
D = D^I^S^P^L^A^Y ^D^R^I^V^E^R ^C^O^D^E
E = EXEC ^P^O^R^T^I^O^N ^O^F MSS (SYMPL)
F = F^U^L^L ^S^C^R^E^E^N ^E^D^I^T^O^R (FSE)
I = I^N^I^T^I^A^L^I^Z^A^T^I^O^N
K = T^R^A^N^S^A^C^T^I^O^N ^S^U^B^S^Y^S^T^E^M
M = M^A^S^S ^S^T^O^R^A^G^E ^E^R^R^O^R ^E^Q^U^I^V^A^L^E^N^T^S
P = PP ^C^O^D^E
S = S^U^B^S^Y^S^T^E^M ^T^E^X^T ^S^Y^M^B^O^L^S, ^C^O^N^S^T^A^N^T^S
T = T^A^B^L^E^S
U = U^T^I^L^I^T^I^E^S (SYMPL)
Z = D^R^I^V^E^R ^P^O^R^T^I^O^N ^O^F MSS (SYMPL)
1
4-1
NOS SYMPL CODING STANDARD
06/01/83
-----------------------------------------------------------------
4.0 C^O^D^E R^E^A^D^A^B^I^L^I^T^Y
-----------------------------------------------------------------
4.0 C^O^D^E R^E^A^D^A^B^I^L^I^T^Y
4.1 F^O^R^M^A^T ^O^F S^T^A^T^E^M^E^N^T^S
A^L^L ^D^E^C^L^A^R^A^T^I^O^N^S ^M^U^S^T ^B^E^G^I^N ^I^N ^C^O^L^U^M^N 7 ^A^N^D ^B^E ^F^I^N^I^S^H^E^D ^B^E^F^O^R^E
^C^O^L^U^M^N 72. C^O^L^U^M^N 72 ^M^U^S^T ^B^E ^B^L^A^N^K ^T^O ^S^E^P^A^R^A^T^E SYMPL ^C^O^D^E ^A^N^D
^C^O^M^M^E^N^T^S ^F^R^O^M MODIFY ^S^E^Q^U^E^N^C^E ^N^U^M^B^E^R^S. E^A^C^H ^L^I^N^E ^O^F ^I^N^D^E^N^T^A^T^I^O^N
^I^S ^T^W^O ^S^P^A^C^E^S.
E^A^C^H BEGIN/END ^I^S ^O^N ^A ^S^E^P^A^R^A^T^E ^L^I^N^E. T^H^E ^F^I^R^S^T BEGIN ^I^S ^I^N
^C^O^L^U^M^N 7. S^U^B^S^E^Q^U^E^N^T BEGIN^S ^A^R^E ^E^A^C^H ^I^N^D^E^N^T^E^D ^T^W^O ^S^P^A^C^E^S. C^O^D^E
^F^O^L^L^O^W^I^N^G ^T^H^E BEGIN, ^U^P ^T^O ^A^N^D ^I^N^C^L^U^D^I^N^G ^T^H^E ^N^E^X^T END, ^H^A^S ^T^H^E
^S^A^M^E ^I^N^D^E^N^T^A^T^I^O^N ^A^S ^T^H^E BEGIN ^U^N^L^E^S^S ^E^X^E^M^P^T^E^D ^B^Y ^S^O^M^E ^O^T^H^E^R ^R^U^L^E
(^I.^E. ^L^A^B^E^L^S ^A^R^E ^I^N ^C^O^L^U^M^N 1). T^H^E END ^S^T^A^T^E^M^E^N^T ^R^E^D^U^C^E^S ^T^H^E
^F^O^L^L^O^W^I^N^G ^I^N^D^E^N^T^A^T^I^O^N ^B^Y ^T^W^O ^S^P^A^C^E^S. A^N^Y BEGIN/END ^P^A^I^R ^T^H^A^T
^B^R^A^C^K^E^T^S ^M^O^R^E ^T^H^A^N ^T^E^N ^S^T^A^T^E^M^E^N^T^S ^S^H^O^U^L^D ^H^A^V^E ^M^A^T^C^H^I^N^G ^E^M^B^E^D^D^E^D
^C^O^M^M^E^N^T^S ^O^N ^T^H^E BEGIN ^A^N^D END. R^E^D^U^N^D^A^N^T BEGIN/END ^P^A^I^R^S ^S^H^O^U^L^D
^N^O^T ^B^E ^U^S^E^D ^T^O ^H^I^G^H^L^I^G^H^T ^M^O^D^U^L^E ^S^T^R^U^C^T^U^R^E. T^H^I^S ^F^U^N^C^T^I^O^N ^I^S
^B^E^T^T^E^R ^A^C^C^O^M^P^L^I^S^H^E^D ^W^I^T^H ^S^T^A^N^D ^A^L^O^N^E ^C^O^M^M^E^N^T^S.
E^A^C^H THEN/ELSE/DO ^I^S ^O^N ^A ^S^E^P^A^R^A^T^E ^L^I^N^E ^A^N^D ^I^S ^P^L^A^C^E^D ^D^I^R^E^C^T^L^Y
^B^E^N^E^A^T^H ^T^H^E IF ^O^R FOR ^P^O^R^T^I^O^N ^O^F ^T^H^E ^S^T^A^T^E^M^E^N^T.
A ^S^T^A^T^E^M^E^N^T ^W^H^I^C^H ^O^V^E^R^F^L^O^W^S ^T^H^E ^L^I^N^E ^M^U^S^T ^I^N^D^E^N^T 2 ^S^P^A^C^E^S ^F^R^O^M
^T^H^E ^O^R^I^G^I^N^A^L ^S^T^A^T^E^M^E^N^T.
C^O^M^P^O^U^N^D ^C^O^N^D^I^T^I^O^N^A^L^S ^I^N ^A^N IF ^S^T^A^T^E^M^E^N^T ^M^U^S^T ^B^E ^S^E^P^A^R^A^T^E^D ^A^T
^T^H^E OR/AND ^I^F ^T^H^E ^E^N^T^I^R^E ^S^T^A^T^E^M^E^N^T ^D^O^E^S ^N^O^T ^F^I^T ^O^N ^A ^S^I^N^G^L^E
^L^I^N^E. I^F ^T^H^E ^S^T^A^T^E^M^E^N^T ^N^E^E^D^S ^T^O ^B^E ^S^E^P^A^R^A^T^E^D ^B^E^C^A^U^S^E ^O^F ^I^T^S
^L^E^N^G^T^H ^O^R ^A^T ^T^H^E ^P^R^O^G^R^A^M^M^E^R-^S ^O^P^T^I^O^N, ^T^H^E^N ^T^H^E AND/OR ^P^L^U^S ^I^T^S
^C^O^N^D^I^T^I^O^N ^N^E^E^D^S ^A ^S^E^P^A^R^A^T^E ^L^I^N^E ^A^N^D ^I^S ^I^N^D^E^N^T^E^D ^T^W^O ^S^P^A^C^E^S.
E^X^A^M^P^L^E^S
IF C IF B IF B OR C OR D
OR (A AND B) OR C THEN
THEN OR D BEGIN
BEGIN THEN .
. BEGIN .
. . .
. . .
END END END
T^H^E ^F^O^R^M^A^T ^O^F ^T^H^E FOR ^S^T^A^T^E^M^E^N^T ^F^O^L^L^O^W^S ^T^H^E IF. I^F ^T^H^E ^E^N^T^I^R^E
^S^T^A^T^E^M^E^N^T ^W^I^L^L ^N^O^T ^F^I^T ^O^N ^A ^S^I^N^G^L^E ^L^I^N^E, ^T^H^E^N ^T^H^E ^S^T^A^T^E^M^E^N^T ^M^U^S^T
^B^E ^S^E^P^A^R^A^T^E^D ^I^N^T^O ^T^W^O ^L^I^N^E^S ^A^N^D ^I^N^D^E^N^T^E^D ^T^W^O ^S^P^A^C^E^S.
1
4-2
NOS SYMPL CODING STANDARD
06/01/83
-----------------------------------------------------------------
4.0 C^O^D^E R^E^A^D^A^B^I^L^I^T^Y
4.1 F^O^R^M^A^T ^O^F S^T^A^T^E^M^E^N^T^S
-----------------------------------------------------------------
FASTFOR I=1 STEP 1
UNTIL 7
DO
BEGIN
.
.
.
END
4.2 C^O^L^U^M^N 1
T^H^E ^F^O^L^L^O^W^I^N^G ^I^T^E^M^S ^M^U^S^T ^B^E^G^I^N ^I^N ^C^O^L^U^M^N 1@D
L^A^B^E^L^S
PRGM/PROC/FUNC ^S^T^A^T^E^M^E^N^T^S
S^I^N^G^L^E ^L^I^N^E ^C^O^M^M^E^N^T^S
S^T^A^N^D ^A^L^O^N^E ^C^O^M^M^E^N^T^S
4.3 B^L^A^N^K L^I^N^E^S
A ^B^L^A^N^K ^L^I^N^E ^M^U^S^T ^B^E ^U^S^E^D ^I^N ^T^H^E ^F^O^L^L^O^W^I^N^G ^C^A^S^E^S@D
A^S ^T^H^E ^F^I^R^S^T ^L^I^N^E ^I^N ^E^A^C^H ^C^O^M^M^O^N ^D^E^C^K
B^E^T^W^E^E^N ^A^L^L ^D^E^C^L^A^R^A^T^I^O^N ^G^R^O^U^P^I^N^G^S
B^E^F^O^R^E ^A^N^D ^A^F^T^E^R ^E^V^E^R^Y ^S^T^A^N^D-^A^L^O^N^E ^C^O^M^M^E^N^T
B^E^F^O^R^E ^A^N^D ^A^F^T^E^R ^A^L^L ^G^R^O^U^P^S ^O^F ^C^O^N^D^I^T^I^O^N^A^L ^C^O^D^E
(^E^X^C^E^P^T COMDECK ^L^I^S^T ^C^O^N^T^R^O^L)
A^F^T^E^R ^E^V^E^R^Y END ^S^T^A^T^E^M^E^N^T
B^E^F^O^R^E ^E^V^E^R^Y ^L^A^B^E^L (^O^R ^S^E^Q^U^E^N^C^E ^O^F ^L^A^B^E^L^S)
B^L^A^N^K ^L^I^N^E^S (^I^N ^A^D^D^I^T^I^O^N ^T^O ^T^H^O^S^E ^R^E^Q^U^I^R^E^D) ^M^A^Y ^B^E
^U^S^E^D ^T^O ^I^M^P^R^O^V^E ^T^H^E ^R^E^A^D^A^B^I^L^I^T^Y ^O^F ^T^H^E ^C^O^D^E.
4.4 P^A^G^E E^J^E^C^T^S
A ^P^A^G^E ^E^J^E^C^T ^M^U^S^T ^B^E ^U^S^E^D ^A^S ^A ^S^E^P^A^R^A^T^O^R ^B^E^T^W^E^E^N ^T^H^E
^D^E^C^L^A^R^A^T^I^O^N ^G^R^O^U^P^S ^A^N^D ^T^H^E ^B^O^D^Y ^O^F ^C^O^D^E.
I^F ^T^H^E ^D^E^C^L^A^R^A^T^I^O^N ^G^R^O^U^P^S ^A^N^D ^T^H^E ^B^O^D^Y ^O^F ^C^O^D^E ^W^I^L^L ^F^I^T
^O^N ^A ^S^I^N^G^L^E ^P^A^G^E, ^F^I^V^E ^B^L^A^N^K ^L^I^N^E^S ^M^A^Y ^B^E ^U^S^E^D ^R^A^T^H^E^R ^T^H^A^N
^A ^P^A^G^E ^E^J^E^C^T.
1
5-1
NOS SYMPL CODING STANDARD
06/01/83
-----------------------------------------------------------------
5.0 D^O^C^U^M^E^N^T^A^T^I^O^N S^T^A^N^D^A^R^D^S
-----------------------------------------------------------------
5.0 D^O^C^U^M^E^N^T^A^T^I^O^N S^T^A^N^D^A^R^D^S
A^L^L ^D^O^C^U^M^E^N^T^A^T^I^O^N ^M^U^S^T ^C^O^N^F^O^R^M ^T^O ^T^H^E NOS ^O^P^E^R^A^T^I^N^G ^S^Y^S^T^E^M
^R^E^Q^U^I^R^E^M^E^N^T^S. T^H^I^S ^I^N^C^L^U^D^E^S ^R^U^L^E^S ^C^O^N^C^E^R^N^I^N^G ^C^O^M^P^L^E^T^E ^S^E^N^T^E^N^C^E^S,
^C^A^P^I^T^A^L^I^Z^A^T^I^O^N, ^P^U^N^C^T^U^A^T^I^O^N, ^A^B^R^E^V^I^A^T^I^O^N^S, ^E^T^C. A^L^L ^S^T^A^N^D-^A^L^O^N^E
^C^O^M^M^E^N^T^S ^A^R^E ^C^O^M^P^L^E^T^E E^N^G^L^I^S^H ^S^E^N^T^E^N^C^E^S ^W^I^T^H ^C^O^R^R^E^C^T ^P^U^N^C^T^U^A^T^I^O^N,
^E^N^D^I^N^G ^W^I^T^H ^A ^P^E^R^I^O^D.
5.1 C^O^M^M^E^N^T F^O^R^M^A^T^S ^A^N^D T^Y^P^E^S
C^O^M^M^E^N^T^S ^C^A^N ^A^P^P^E^A^R ^I^N ^T^H^R^E^E ^D^I^F^F^E^R^E^N^T ^F^O^R^M^A^T^S@D ^S^T^A^N^D ^A^L^O^N^E,
^S^I^N^G^L^E ^L^I^N^E ^A^N^D ^E^M^B^E^D^D^E^D. S^T^A^N^D ^A^L^O^N^E ^C^O^M^M^E^N^T^S ^H^A^V^E ^F^O^U^R ^T^Y^P^E^S
^D^E^T^E^R^M^I^N^E^D ^B^Y ^T^H^E ^N^U^M^B^E^R ^O^F ^A^S^T^E^R^I^S^K^S ^O^N ^T^H^E ^I^N^I^T^I^A^L ^L^I^N^E ^O^F ^A
^S^E^Q^U^E^N^C^E ^O^F ^L^I^N^E^S ^W^I^T^H ^A^S^T^E^R^I^S^K^S ^I^N ^C^O^L^U^M^N 1. T^H^E^S^E ^F^O^U^R ^T^Y^P^E^S
^A^R^E ^R^E^C^O^G^N^I^Z^E^D ^B^Y ^T^H^E DOCMENT ^U^T^I^L^I^T^Y ^A^N^D ^C^A^U^S^E ^S^O^M^E ^C^O^M^M^E^N^T^S (^O^R
^C^O^D^E) ^T^O ^B^E ^I^N^C^L^U^D^E^D ^I^N DOCMENT ^O^U^T^P^U^T ^D^E^P^E^N^D^I^N^G ^O^N DOCMENT ^R^U^N
^T^I^M^E ^P^A^R^A^M^E^T^E^R^S.
5.1.1 E^M^B^E^D^D^E^D C^O^M^M^E^N^T^S
E^M^B^E^D^D^E^D ^C^O^M^M^E^N^T^S ^A^P^P^E^A^R ^O^N ^T^H^E ^S^A^M^E ^L^I^N^E ^F^O^L^L^O^W^I^N^G ^A
^D^E^C^L^A^R^A^T^I^O^N ^O^R ^E^X^E^C^U^T^A^B^L^E ^S^T^A^T^E^M^E^N^T. T^H^E ^L^E^F^T ^D^E^L^I^M^I^T^E^R ^M^U^S^T ^B^E
^P^R^E^C^E^D^E^D ^B^Y ^A^T ^L^E^A^S^T ^T^W^O ^S^P^A^C^E^S ^A^N^D ^F^O^L^L^O^W^E^D ^B^Y ^O^N^L^Y ^O^N^E ^S^P^A^C^E.
A^T ^L^E^A^S^T ^O^N^E ^S^P^A^C^E ^F^O^L^L^O^W^S ^T^H^E ^C^O^M^M^E^N^T ^T^E^X^T ^B^E^F^O^R^E ^T^H^E ^R^I^G^H^T
^D^E^L^I^M^I^T^E^R. A^T ^L^E^A^S^T ^O^N^E ^S^P^A^C^E ^M^U^S^T ^F^O^L^L^O^W ^T^H^E ^R^I^G^H^T ^D^E^L^I^M^I^T^E^R.
C^O^L^U^M^N ^P^O^S^I^T^I^O^N^I^N^G ^R^U^L^E^S ^F^O^R ^T^H^E ^L^E^F^T ^D^E^L^I^M^I^T^E^R ^A^R^E ^G^I^V^E^N ^I^N ^T^H^E
^S^E^C^T^I^O^N "D^O^C^U^M^E^N^T^A^T^I^O^N ^W^I^T^H E^M^B^E^D^D^E^D C^O^M^M^E^N^T^S".
5.1.2 S^I^N^G^L^E L^I^N^E C^O^M^M^E^N^T^S
T^H^E^S^E ^C^O^M^M^E^N^T^S ^H^A^V^E ^A ^L^E^F^T ^C^O^M^M^E^N^T ^D^E^L^I^M^I^T^E^R ^I^N ^C^O^L^U^M^N 1, ^T^H^E
^T^E^X^T ^S^T^A^R^T^I^N^G ^I^N ^C^O^L^U^M^N 3 ^F^O^R ^T^I^T^L^E ^L^I^N^E^S ^O^R ^I^N ^C^O^L^U^M^N 7 ^F^O^R
^C^O^M^M^O^N ^D^E^C^K ^H^E^A^D^E^R^S, ^A^N^D ^A ^R^I^G^H^T ^C^O^M^M^E^N^T ^D^E^L^I^M^I^T^E^R ^P^R^O^C^E^E^D^E^D ^B^Y
^A^T ^L^E^A^S^T ^O^N^E ^S^P^A^C^E ^A^L^L ^O^N ^A ^S^I^N^G^L^E ^L^I^N^E. T^H^I^S ^C^O^M^M^E^N^T ^F^O^R^M ^I^S
^U^S^E^D ^I^N ^T^H^E ^F^O^L^L^O^W^I^N^G ^C^A^S^E^S@D
-- T^I^T^L^E ^L^I^N^E^S
-- C^O^M^M^O^N ^D^E^C^K ^H^E^A^D^E^R^S
1
5-2
NOS SYMPL CODING STANDARD
06/01/83
-----------------------------------------------------------------
5.0 D^O^C^U^M^E^N^T^A^T^I^O^N S^T^A^N^D^A^R^D^S
5.1.3 S^T^A^N^D A^L^O^N^E C^O^M^M^E^N^T^S
-----------------------------------------------------------------
5.1.3 S^T^A^N^D A^L^O^N^E C^O^M^M^E^N^T^S
T^H^E^S^E ^C^O^M^M^E^N^T^S ^C^O^N^S^I^S^T ^O^F ^A^T ^L^E^A^S^T 5 ^L^I^N^E^S ^W^I^T^H ^T^H^E ^F^I^R^S^T ^A^N^D
^L^A^S^T ^B^E^I^N^G ^B^L^A^N^K ^L^I^N^E^S, ^T^H^E ^S^E^C^O^N^D ^A^N^D ^N^E^X^T ^T^O ^L^A^S^T ^H^A^V^I^N^G (^O^N^L^Y)
^A ^C^O^M^M^E^N^T ^D^E^L^I^M^I^T^E^R ^I^N ^C^O^L^U^M^N 1 ^W^I^T^H ^T^H^E ^C^O^M^M^E^N^T ^B^O^D^Y ^S^T^A^R^T^I^N^G
^W^I^T^H ^L^I^N^E 3. E^A^C^H ^L^I^N^E ^O^F ^T^H^E ^C^O^M^M^E^N^T ^B^O^D^Y ^H^A^S ^A^N ^A^S^T^E^R^I^S^K ^I^N
^C^O^L^U^M^N 1 ^W^I^T^H ^B^L^A^N^K^S ^N^O^R^M^A^L^L^Y ^F^O^U^N^D ^I^N ^C^O^L^U^M^N^S 2-6.
T^H^E ^I^N^I^T^I^A^L ^L^I^N^E ^O^F ^T^H^E ^C^O^M^M^E^N^T ^B^O^D^Y (^L^I^N^E 3) ^M^A^Y ^H^A^V^E 1, 2, 3
^O^R 4 ^A^S^T^E^R^I^S^K^S ^S^T^A^R^T^I^N^G ^I^N ^C^O^L^U^M^N 1 ^D^E^P^E^N^D^I^N^G ^O^N ^T^H^E ^T^Y^P^E ^O^F
^O^U^T^P^U^T ^D^E^S^I^R^E^D ^F^R^O^M ^T^H^E DOCMENT ^U^T^I^L^I^T^Y.
5.1.3.1 B^R^A^C^K^E^T^S (****)
A ^P^A^I^R ^O^F ^S^T^A^N^D ^A^L^O^N^E ^C^O^M^M^E^N^T^S ^O^F ^T^H^I^S ^F^O^R^M ^C^A^U^S^E^S DOCMENT ^T^O
^C^O^P^Y ^T^H^E ^C^O^M^M^E^N^T ^B^O^D^Y ^S^T^A^R^T^I^N^G ^W^I^T^H ^T^H^E ^O^P^E^N^I^N^G ^B^R^A^C^K^E^T, ^A^N^D ^A^L^L
^S^U^B^S^E^Q^U^E^N^T ^C^O^D^E ^U^N^T^I^L ^T^H^E ^C^L^O^S^I^N^G ^B^R^A^C^K^E^T. T^H^I^S ^I^S ^R^E^Q^U^I^R^E^D ^F^O^R
XREF ^D^E^C^L^A^R^A^T^I^O^N^S. A^N ^E^X^A^M^P^L^E ^I^S ^I^N^D^I^C^A^T^E^D ^W^I^T^H ^T^H^E XREF
^D^E^S^C^R^I^P^T^I^O^N. I^T ^M^A^Y ^A^L^S^O ^B^E ^E^M^P^L^O^Y^E^D ^F^O^R ^O^T^H^E^R ^D^E^C^L^A^R^A^T^I^O^N^S ^O^R
^C^O^D^E ^W^H^I^C^H ^S^H^O^U^L^D ^B^E ^I^N^C^L^U^D^E^D ^O^N ^A DOCMENT ^R^U^N.
T^H^E ^C^O^M^M^E^N^T ^B^O^D^Y ^C^O^N^S^I^S^T^S ^O^F ^A^S^T^E^R^I^S^K^S ^I^N ^C^O^L^U^M^N^S 1-4 ^W^I^T^H
^T^E^X^T ^O^N ^T^H^E ^R^E^S^T ^O^F ^T^H^E ^F^I^R^S^T ^L^I^N^E. T^H^E ^C^O^M^M^E^N^T ^T^E^X^T ^S^H^O^U^L^D
^C^L^E^A^R^L^Y ^I^N^D^I^C^A^T^E ^W^H^I^C^H ^I^S ^T^H^E ^O^P^E^N^I^N^G ^B^R^A^C^K^E^T ^A^N^D ^W^H^I^C^H ^I^S ^T^H^E
^C^L^O^S^I^N^G ^B^R^A^C^K^E^T.
5.1.3.2 E^X^T^E^R^N^A^L C^O^M^M^E^N^T^S (***)
A ^C^O^M^M^E^N^T ^B^O^D^Y ^W^H^I^C^H ^I^S ^T^O ^B^E ^I^N^C^L^U^D^E^D ^I^N ^A^N^Y DOCMENT ^R^U^N
(^E^X^T^E^R^N^A^L ^O^R ^I^N^T^E^R^N^A^L) ^H^A^S 3 ^A^S^T^E^R^I^S^K^S ^I^N ^C^O^L^U^M^N^S 1-3 ^O^F ^T^H^E
^F^I^R^S^T ^L^I^N^E ^O^F ^T^H^E ^C^O^M^M^E^N^T ^B^O^D^Y. T^H^E 3 ^A^S^T^E^R^I^S^K ^F^O^R^M ^I^S ^G^E^N^E^R^A^L^L^Y
^U^S^E^D ^T^O ^E^X^P^L^A^I^N ^T^H^E ^I^N^T^E^R^F^A^C^E ^T^O ^A SYMPL PRGM. I^T ^I^S ^A^L^S^O ^U^S^E^D
^I^N ^T^H^E ^H^E^A^D^E^R ^D^O^C^U^M^E^N^T^A^T^I^O^N ^F^O^R ^C^O^M^M^O^N ^D^E^C^K^S.
5.1.3.3 I^N^T^E^R^N^A^L C^O^M^M^E^N^T^S (**)
A ^C^O^M^M^E^N^T ^B^O^D^Y ^W^H^I^C^H ^I^S ^T^O ^B^E ^I^N^C^L^U^D^E^D ^I^N ^A DOCMENT ^R^U^N
^S^E^L^E^C^T^I^N^G ^I^N^T^E^R^N^A^L ^D^O^C^U^M^E^N^T^A^T^I^O^N ^I^N ^A^D^D^I^T^I^O^N ^T^O ^E^X^T^E^R^N^A^L
^D^O^C^U^M^E^N^T^A^T^I^O^N ^H^A^S ^A^S^T^E^R^I^S^K^S ^I^N ^C^O^L^U^M^N^S 1 ^A^N^D 2 ^O^F ^T^H^E ^F^I^R^S^T ^L^I^N^E
^O^F ^T^H^E ^C^O^M^M^E^N^T ^B^O^D^Y. T^H^I^S ^I^S ^G^E^N^E^R^A^L^L^Y ^U^S^E^D ^T^O ^D^E^S^C^R^I^B^E ^T^H^E
^I^N^T^E^R^F^A^C^E ^F^O^R ^E^A^C^H PROC/FUNC. I^T ^M^A^Y ^A^L^S^O ^B^E ^U^S^E^D ^T^O ^D^E^S^C^R^I^B^E
^O^T^H^E^R ^I^M^P^O^R^T^A^N^T ^I^N^F^O^R^M^A^T^I^O^N ^A^B^O^U^T ^A PROC/FUNC/PRGM.
1
5-3
NOS SYMPL CODING STANDARD
06/01/83
-----------------------------------------------------------------
5.0 D^O^C^U^M^E^N^T^A^T^I^O^N S^T^A^N^D^A^R^D^S
5.1.3.4 M^O^D^U^L^E C^O^M^M^E^N^T^S (*)
-----------------------------------------------------------------
5.1.3.4 M^O^D^U^L^E C^O^M^M^E^N^T^S (*)
A ^C^O^M^M^E^N^T ^B^O^D^Y ^W^H^I^C^H ^I^S ^N^O^T ^T^O ^B^E ^I^N^C^L^U^D^E^D ^I^N ^A DOCMENT ^R^U^N
^S^I^M^P^L^Y ^H^A^S 1 ^A^S^T^E^R^I^S^K ^O^N ^T^H^E ^F^I^R^S^T ^L^I^N^E ^O^F ^T^H^E ^C^O^M^M^E^N^T ^B^O^D^Y.
T^H^I^S ^T^Y^P^E ^O^F ^S^T^A^N^D ^A^L^O^N^E ^C^O^M^M^E^N^T ^I^S ^G^E^N^E^R^A^L^L^Y ^U^S^E^D ^T^O ^D^O^C^U^M^E^N^T
^D^E^S^I^G^N ^I^N^F^O^R^M^A^T^I^O^N ^W^H^I^C^H ^H^E^L^P^S ^O^N^E ^M^A^I^N^T^A^I^N ^O^R ^C^O^D^E ^R^E^V^I^E^W ^A
^M^O^D^U^L^E.
T^H^I^S ^T^Y^P^E ^O^F ^C^O^M^M^E^N^T ^C^A^N ^P^R^E^S^E^N^T ^D^E^S^I^G^N ^I^N^F^O^R^M^A^T^I^O^N ^F^O^R ^T^H^E
^E^N^T^I^R^E PROC/FUNC, ^O^R ^F^O^R ^A ^S^E^Q^U^E^N^C^E ^O^F ^C^O^D^E. I^T ^S^H^O^U^L^D ^A^N^S^W^E^R
^T^H^E ^Q^U^E^S^T^I^O^N@D "^H^O^W ^D^O^E^S ^T^H^I^S PROC/FUNC ^C^O^D^E ^S^E^G^M^E^N^T ^W^O^R^K?"
5.2 P^R^O^G^R^A^M L^E^V^E^L D^O^C^U^M^E^N^T^A^T^I^O^N
E^V^E^R^Y PRGM ^M^U^S^T ^H^A^V^E ^A^N ^O^V^E^R^V^I^E^W ^D^E^S^C^R^I^B^I^N^G ^W^H^A^T ^I^T ^D^O^E^S ^A^N^D
^E^X^T^E^R^N^A^L ^D^O^C^U^M^E^N^T^A^T^I^O^N ^D^E^S^C^R^I^B^I^N^G ^H^O^W ^I^T ^I^S ^U^S^E^D. T^H^E ^O^V^E^R^V^I^E^W
^D^O^C^U^M^E^N^T^A^T^I^O^N ^I^S ^V^E^R^Y ^G^E^N^E^R^A^L. A ^D^E^S^C^R^I^P^T^I^O^N ^O^F ^T^H^E ^F^I^E^L^D^S ^I^S ^I^N
^T^H^E NOS ^C^O^D^I^N^G ^S^T^A^N^D^A^R^D^S.
#
*** (^H^E^A^D^I^N^G)
*
* (^P^U^R^P^O^S^E)
*
* (^C^O^M^M^A^N^D ^F^O^R^M^A^T)
*
* PRGM ^P^R^O^G^R^A^M ^N^A^M^E.
*
* ENTRY. .....
*
* EXIT. .....
*
* MESSAGES. .....
*
* NOTES. .....
*
* COPYRIGHT CONTROL DATA SYSTEMS INC. 1992.
#
I^N ^A^D^D^I^T^I^O^N, ^A PRGM ^M^A^Y ^H^A^V^E ^I^N^T^E^R^N^A^L ^A^N^D ^M^O^D^U^L^E ^C^O^M^M^E^N^T^S ^A^S
^A^P^P^R^O^P^R^I^A^T^E.
1
5-4
NOS SYMPL CODING STANDARD
06/01/83
-----------------------------------------------------------------
5.0 D^O^C^U^M^E^N^T^A^T^I^O^N S^T^A^N^D^A^R^D^S
5.3 D^O^C^U^M^E^N^T^A^T^I^O^N ^O^F PROC^S ^A^N^D FUNC^S
-----------------------------------------------------------------
5.3 D^O^C^U^M^E^N^T^A^T^I^O^N ^O^F PROC^S ^A^N^D FUNC^S
E^V^E^R^Y PROC/FUNC ^N^E^E^D^S ^A^N ^I^N^T^E^R^N^A^L ^D^O^C^U^M^E^N^T^A^T^I^O^N ^S^E^C^T^I^O^N. I^T
^S^H^O^U^L^D ^A^N^S^W^E^R ^T^H^E ^Q^U^E^S^T^I^O^N@D "^H^O^W ^I^S ^T^H^I^S PROC/FUNC ^U^S^E^D?". T^H^E
^D^E^S^C^R^I^P^T^I^O^N ^O^F ^T^H^E ^D^I^F^F^E^R^E^N^T ^F^I^E^L^D^S ^I^S ^I^N ^T^H^E NOS C^O^D^I^N^G
S^T^A^N^D^A^R^D^S.
#
** (^H^E^A^D^I^N^G)
*
* (^P^U^R^P^O^S^E)
*
* (PROC ^O^R FUNC ^S^T^A^T^E^M^E^N^T ^W^I^T^H ^S^E^M^I^C^O^L^O^N ^O^M^I^T^T^E^D)
*
* ENTRY .....
*
* EXIT .....
*
* MESSAGES .....
*
* NOTES .....
*
#
I^F ^A PROC ^O^R FUNC ^R^E^F^E^R^E^N^C^E^S ^A ^B^A^S^E^D ^A^R^R^A^Y ^W^H^O^S^E ^P^O^I^N^T^E^R ^I^S ^I^N
^A ^C^O^M^M^O^N ^B^L^O^C^K, ^A^N^D ^T^H^E PROC ^O^R FUNC ^A^S^S^U^M^E^S ^T^H^A^T ^T^H^E ^P^O^I^N^T^E^R ^F^O^R
^T^H^A^T ^A^R^R^A^Y ^I^S ^S^E^T ^B^E^F^O^R^E ^T^H^E PROC ^O^R FUNC ^I^S ^C^A^L^L^E^D, ^T^H^E ^E^N^T^R^Y
^C^O^N^D^I^T^I^O^N ^C^O^M^M^E^N^T^S ^S^H^O^U^L^D ^S^T^A^T^E ^T^H^A^T ^A^S^S^U^M^P^T^I^O^N.
I^N ^A^D^D^I^T^I^O^N, ^A PROC/FUNC ^M^A^Y ^H^A^V^E ^A^D^D^I^T^I^O^N^A^L ^I^N^T^E^R^N^A^L ^C^O^M^M^E^N^T^S
^A^N^D ^M^O^D^U^L^E ^C^O^M^M^E^N^T^S ^A^S ^A^P^P^R^O^P^R^I^A^T^E.
W^H^E^R^E ^A ^H^I^G^H^E^R ^L^E^V^E^L ^O^F ^D^O^C^U^M^E^N^T^A^T^I^O^N ^I^S ^N^E^E^D^E^D ^F^O^R ^A ^R^E^L^A^T^E^D
^G^R^O^U^P ^O^F PROC^S ^A^N ^E^X^T^R^A PROC ^S^H^O^U^L^D ^B^E ^A^D^D^E^D ^T^O ^C^O^N^T^A^I^N ^T^H^E
^U^N^I^F^Y^I^N^G ^D^O^C^U^M^E^N^T^A^T^I^O^N.
5.4 D^O^C^U^M^E^N^T^A^T^I^O^N ^W^I^T^H E^M^B^E^D^D^E^D C^O^M^M^E^N^T^S
E^M^B^E^D^D^E^D ^C^O^M^M^E^N^T^S ^A^R^E ^O^F ^T^W^O ^D^O^C^U^M^E^N^T^A^T^I^O^N ^F^O^R^M^S (^I.^E. ^D^A^T^A
^D^E^C^L^A^R^A^C^T^I^O^N ^O^R ^A^C^T^I^O^N ^C^O^D^E). T^H^I^S ^I^S ^T^H^E ^O^N^L^Y ^T^Y^P^E ^O^F ^A ^C^O^M^M^E^N^T
^T^H^A^T ^N^E^E^D ^N^O^T ^B^E ^A ^C^O^M^P^L^E^T^E ^S^E^N^T^E^N^C^E. T^H^I^S ^T^Y^P^E ^O^F ^C^O^M^M^E^N^T
^S^H^O^U^L^D ^N^O^T ^B^E ^C^O^N^T^I^N^U^E^D ^O^N^T^O ^A^N^O^T^H^E^R ^L^I^N^E. I^F ^A^B^S^O^L^U^T^E^L^Y
^N^E^C^E^S^S^A^R^Y, ^T^H^E ^C^O^M^M^E^N^T ^M^A^Y ^B^E ^C^O^N^T^I^N^U^E^D ^O^N ^T^H^E ^F^O^L^L^O^W^I^N^G ^L^I^N^E.
I^N ^T^H^I^S ^C^A^S^E ^T^H^E ^S^E^C^O^N^D ^L^I^N^E ^M^U^S^T ^N^O^T ^C^O^N^T^A^I^N ^C^O^D^E.
THEN # ^C^O^M^M^E^N^T ^W^H^I^C^H ^I^S ^T^O^O ^L^O^N^G
^C^O^N^T^I^N^U^A^T^I^O^N ^O^F ^C^O^M^M^M^E^N^T #
1
5-5
NOS SYMPL CODING STANDARD
06/01/83
-----------------------------------------------------------------
5.0 D^O^C^U^M^E^N^T^A^T^I^O^N S^T^A^N^D^A^R^D^S
5.4.1 D^A^T^A D^E^C^L^A^R^A^T^I^O^N E^M^B^E^D^D^E^D C^O^M^M^E^N^T^S
-----------------------------------------------------------------
5.4.1 D^A^T^A D^E^C^L^A^R^A^T^I^O^N E^M^B^E^D^D^E^D C^O^M^M^E^N^T^S
E^V^E^R^Y ^A^R^R^A^Y, ^I^T^E^M, ^S^T^A^T^U^S ^I^T^E^M, DEF ^A^N^D XREF ^I^T^E^M ^M^U^S^T ^B^E
^D^O^C^U^M^E^N^T^E^D ^W^I^T^H ^A^P^P^R^O^P^R^I^A^T^E ^I^N^F^O^R^M^A^T^I^O^N. E^A^C^H ^D^E^C^L^A^R^A^T^I^O^N ^S^H^O^U^L^D
^A^P^P^E^A^R ^O^N ^A ^S^E^P^A^R^A^T^E ^L^I^N^E ^A^C^C^O^M^P^A^N^I^E^D ^B^Y ^E^M^B^E^D^D^E^D ^C^O^M^M^E^N^T^S
^D^E^S^C^R^I^B^I^N^G ^I^T^S ^F^U^N^C^T^I^O^N (^O^P^T^I^O^N^A^L^L^Y, ^I^F ^T^H^I^S ^I^S ^A^N ^I^M^P^O^R^T^A^N^T
^A^R^R^A^Y, ^I^T ^M^A^Y ^B^E ^B^R^A^C^K^E^T^E^D ^B^Y ^C^O^M^M^E^N^T ^L^I^N^E^S ^W^I^T^H ^A^S^T^E^R^I^S^K^S ^I^N
^C^O^L^U^M^N^S 1 ^T^H^R^O^U^G^H 4 ^S^O ^T^H^A^T DOCMENT ^W^I^L^L ^P^R^O^C^E^S^S ^I^T.
P^R^E^S^E^T^S ^S^H^O^U^L^D ^B^E ^C^O^M^M^E^N^T^E^D ^I^N^D^I^V^I^D^U^A^L^L^Y ^T^O ^R^E^F^L^E^C^T ^T^H^E
^F^U^N^C^T^I^O^N ^O^F ^T^H^E ^P^R^E^S^E^T.
T^H^E ^L^E^F^T ^D^E^L^I^M^I^T^E^R ^O^F ^T^H^E ^E^M^B^E^D^D^E^D ^C^O^M^M^E^N^T ^S^H^O^U^L^D ^B^E ^I^N ^C^O^L^U^M^N
38 ^U^N^L^E^S^S ^T^H^E ^S^T^A^T^E^M^E^N^T ^E^X^T^E^N^D^S ^B^E^Y^O^N^D ^C^O^L^U^M^N 35, ^I^N ^W^H^I^C^H ^C^A^S^E
^T^H^E ^D^E^L^I^M^I^T^E^R ^I^S ^P^L^A^C^E^D ^A^T ^L^E^A^S^T ^T^W^O ^S^P^A^C^E^S ^T^O ^T^H^E ^R^I^G^H^T ^O^F ^T^H^E
^S^T^A^T^E^M^E^N^T.
5.4.2 A^C^T^I^O^N C^O^D^E E^M^B^E^D^D^E^D C^O^M^M^E^N^T^S
F^O^R BEGIN ^A^N^D END ^S^T^A^T^E^M^E^N^T^S, ^T^H^E ^E^M^B^E^D^D^E^D ^C^O^M^M^E^N^T^S ^A^R^E ^P^L^A^C^E^D
^T^W^O ^S^P^A^C^E^S ^T^O ^T^H^E ^R^I^G^H^T ^O^F ^T^H^E ^S^T^A^T^E^M^E^N^T. F^O^R ^O^T^H^E^R ^S^T^A^T^E^M^E^N^T^S
^T^H^E ^E^M^B^E^D^D^E^D ^C^O^M^M^E^N^T^S ^B^E^G^I^N ^I^N ^C^O^L^U^M^N 38 ^U^N^L^E^S^S ^T^H^E ^S^T^A^T^E^M^E^N^T
^E^X^T^E^N^D^S ^B^E^Y^O^N^D ^C^O^L^U^M^N 35 ^I^N ^W^H^I^C^H ^C^A^S^E ^T^H^E ^D^E^L^I^M^I^T^E^R ^I^S ^P^L^A^C^E^D ^A^T
^L^E^A^S^T ^T^W^O ^S^P^A^C^E^S ^T^O ^T^H^E ^R^I^G^H^T ^O^F ^T^H^E ^S^T^A^T^E^M^E^N^T.
5.5 G^E^N^E^R^A^L D^O^C^U^M^E^N^T^A^T^I^O^N ^F^O^R PROC^S, PRGM^S ^O^R FUNC^S
E^A^C^H PRGM, PROC, FUNC ^S^T^A^T^E^M^E^N^T ^M^U^S^T ^H^A^V^E ^A ^C^O^R^R^E^S^P^O^N^D^I^N^G END
^S^T^A^T^E^M^E^N^T ^F^O^L^L^O^W^E^D ^B^Y ^T^H^E PRGM, PROC, FUNC ^N^A^M^E ^A^S ^A ^C^O^M^M^E^N^T ^O^N
^T^H^A^T ^S^A^M^E ^L^I^N^E. SYMPL ^C^O^M^M^E^N^T^S ^C^O^N^T^A^I^N^I^N^G COMPASS-^L^I^K^E ^T^I^T^L^E
^P^S^E^U^D^O-^O^P^S ^M^U^S^T ^A^P^P^E^A^R ^A^S ^T^H^E ^S^E^C^O^N^D ^L^I^N^E ^I^N ^A SYMPL PRGM, PROC
^O^R FUNC.
PRGM OK;
# TITLE OK - ^D^E^S^C^R^I^P^T^I^O^N ^O^F PRGM OK. #
BEGIN # OK #
.
.
.
END # OK #
1
6-1
NOS SYMPL CODING STANDARD
06/01/83
-----------------------------------------------------------------
6.0 E^X^A^M^P^L^E^S
-----------------------------------------------------------------
6.0 E^X^A^M^P^L^E^S
6.1 COMDECK E^X^A^M^P^L^E^S
1 7 38 48 71
+-----+------------------------------+---------+----------------------+
COMASPC
COMMON
# COMASPC - STEP POINT CONTROL. #
CONTROL NOLIST;
CONTROL IFEQ LISTCON,1;
CONTROL LIST;
CONTROL FI;
BEGIN # COMASPC #
#
*** COMASPC - STEP POINT CONTROL.
*
* *COMASPC* CONTAINS DECLARATIONS USED FOR CONTROL OF STEP MODE.
#
DEF STEPCNT #4#; # NUMBER OF STEP POINTS - 1 #
DEF STEPPNT (I) #B<(I),1>STEPMASK#; # STEP POINT #
STATUS STEPVAL # STEP POINT VALUES #
S1, # STAGING STEP POINT 1 #
S2, # STAGING STEP POINT 2 #
S3, # STAGING STEP POINT 3 #
D1, # DESTAGING STEP POINT 1 #
D2; # DESTAGING STEP POINT 2 #
COMMOM ASPCCOM;
BEGIN # ASPCCOM #
ITEM HPMASK U; # HALTED PROCESS MASK #
ITEM STEPMASK U; # STEP POINT MASK #
ARRAY HPT [0@DSTEPCNT] P(1); # HALTED PROCESS TABLE #
BEGIN
ITEM HPT$LINK U(00,42,18); # HALTED PROCESS CHAIN LINK #
END
END # ASPCCOM #
END # COMASPC #
CONTROL LIST;
1
6-2
NOS SYMPL CODING STANDARD
06/01/83
-----------------------------------------------------------------
6.0 E^X^A^M^P^L^E^S
6.2 PROC E^X^A^M^P^L^E
-----------------------------------------------------------------
6.2 PROC E^X^A^M^P^L^E
1 7 38 48 71
+-----+------------------------------+---------+----------------------+
PROC PSFIN((NDVALUE),(SPVALUE));
# TITLE PSFIN - INITIALIZES THE CONFIGURARTION. #
BEGIN # PSFIN #
#
** PSFIN - INITIALIZES THE CONFIGURATION.
*
* *PSFIN* INITIALIZES THE CONFIGURATION OF A FAMILY OF
* DEVICES.
*
* PROC PSFIN((NDVALUE),(SPVALUE))
*
* ENTRY (NDVALUE) = NUMBER OF DEVICES IN A FAMILY.
* (SPVALUE) = SPACE ASSIGNED TO EACH DEVICE.
* ARRAY HEADER = PSEUDO PFC.
*
* EXIT CONFIGURATION IS INITIALIZED.
*
* NOTES THE SPECIFIED VALUES ARE PLACED IN THE HEADER.
#
ITEM NDVALUE U; # NUMBER OF DEVICES #
ITEM SPVALUE U; # SPACE AVAILABLE PER DEVICE #
#
**** PROC PSFIN - XREF LIST BEGIN.
#
XREF
BEGIN
PROC PSLOCK; # INTERLOCKS THE PSEUDO PFC #
PROC PSUNLCK; # RETURNS THE PSEUDO PFC #
END
#
**** PROC PSFIN - XREF LIST END.
#
1
6-3
NOS SYMPL CODING STANDARD
06/01/83
-----------------------------------------------------------------
6.0 E^X^A^M^P^L^E^S
6.2 PROC E^X^A^M^P^L^E
-----------------------------------------------------------------
DEF OFFSET #4#; # DEVICE ENTRY OFFSET IN PFC #
DEF LISTCON #0#; # DO NOT LIST COMDECKS #
*CALL COMAMSS
*CALL COMZHED
ITEM I I; # LOOP VARIABLE #
ITEM NUM U; # CALCULATED NUMBER #
CONTROL EJECT;
PSLOCK(HEADER);
#
* SET VALUES IN THE HEADER.
#
HEAD$ND[0] = NDVALUE;
HEAD$SPDEV[0] = SPVALUE;
NUM = NDVALUE * SPVALUE;
HEAD$SPFAM[0] = NUM;
HEAD$SPAVF[0] = NUM;
SLOWFOR I = 1 STEP 1 UNTIL NDVALUE
DO # SET SPACE AVAILALBE #
BEGIN
HEAD$XX[I + OFFSET] = SPVALUE;
END
PSUNLCK(HEADER);
RETURN;
END # PSFIN #
TERM
1
6-4
NOS SYMPL CODING STANDARD
06/01/83
-----------------------------------------------------------------
6.0 E^X^A^M^P^L^E^S
6.3 S^T^A^T^U^S L^I^S^T/S^T^A^T^U^S S^W^I^T^C^H E^X^A^M^P^L^E
-----------------------------------------------------------------
6.3 S^T^A^T^U^S L^I^S^T/S^T^A^T^U^S S^W^I^T^C^H E^X^A^M^P^L^E
STATUS ERSTAT # ERROR STATUS #
ERRORNO, # NO ERROR #
ERRORFE, # FILE ALREADY EXISTS #
ERRORFN, # FILE NOT FOUND #
ERRORNW, # UNABLE TO WRITE PFC #
; # END OF *ERSTAT* #
ITEM FLAG S@DERSTAT; # ERROR CONDITION #
SWITCH ERRCASE@DERSTAT # ERROR LIST #
OK@DERRORNO, # NO ERROR #
PFEXISTS@DERRORFE, # FILE ALREADY EXISTS #
NOENTRY@DERRORFN, # FILE ONT FOUND #
WRITERR@DERRORNW; # UNABLE TO WRITE PFC #
A ^S^T^A^T^U^S ^L^I^S^T ^M^A^Y ^A^L^S^O ^B^E ^D^E^F^I^N^E^D ^W^I^T^H ^A^N ^U^P^P^E^R ^L^I^M^I^T ^E^N^T^R^Y
^P^U^T ^A^T ^T^H^E ^E^N^D ^O^F ^T^H^E ^L^I^S^T. T^H^I^S ^U^P^P^E^R ^L^I^M^I^T ^C^A^N ^B^E ^U^S^E^D ^I^N
^T^H^E ^C^O^D^E ^T^O ^T^E^S^T ^T^H^A^T ^A ^V^A^R^I^A^B^L^E ^I^S ^W^I^T^H^I^N ^I^T^S ^D^E^F^I^N^E^D ^R^A^N^G^E.
I^N ^T^H^I^S ^S^T^Y^L^E ^T^H^E ^U^P^P^E^R ^L^I^M^I^T ^E^N^T^R^Y ^I^S ^T^E^R^M^I^N^A^T^E^D ^W^I^T^H ^A
^A ^S^E^M^I-^C^O^L^O^N ^O^N ^T^H^E ^S^A^M^E ^L^I^N^E.
E^X^A^M^P^L^E@D
STATUS ERSTAT # ERROR STATUS #
ERRORNO, # NO ERROR #
ERRORFE, # FILE ALREADY EXISTS #
ERRORFN, # FILE NOT FOUND #
ERRORNW, # UNABLE TO WRITE PFC #
ERROREND; # END OF *ERSTAT* #
1
6-5
NOS SYMPL CODING STANDARD
06/01/83
-----------------------------------------------------------------
6.0 E^X^A^M^P^L^E^S
6.3 S^T^A^T^U^S L^I^S^T/S^T^A^T^U^S S^W^I^T^C^H E^X^A^M^P^L^E
-----------------------------------------------------------------
#
* PROCESS THE ERROR RESPONSE.
#
GOTO ERRCASE[FLAG];
#
* ^S^T^A^N^D ^A^L^O^N^E ^C^O^M^M^E^N^T ^H^E^R^E ^O^R ^A^N ^E^M^B^E^D^D^E^D ^C^O^M^M^E^N^T ^O^N ^T^H^E ^L^A^B^E^L.
#
PFEXISTS@D # ^E^M^B^E^D^D^E^D ^C^O^M^M^E^N^T #
-------
-------
GOTO ENDCASE;
NOENTRY@D # ^E^M^B^E^D^D^E^D ^C^O^M^M^E^N^T #
-------
-------
GOTO ENDCASE;
WRITERR@D # ^E^M^B^E^D^D^E^D ^C^O^M^M^E^N^T #
-------
-------
GOTO ENDCASE;
OK@D # ^E^M^B^E^D^D^E^D ^C^O^M^M^E^N^T #
----------
GOTO ENDCASE;
ENDCASE@D
-------
#
* PROCESS THE ERROR RESPONSE.
*WEOR