*DECK ERLEV                                                              NEWDECK
          IDENT  ERLEV
          TITLE  ERLEV - ESTABLISH ERROR LEVELS                          NEWDECK
          COMMENT ERLEV - ESTABLISH ERROR LEVELS                         NEWDECK
          LIST   F                                                       NEWDECK
          SPACE  4                                                       NEWDECK
**        ERLEV  ESTABLISHES ERROR LEVELS IN COMMON BLOCK /ERLEVS/.      NEWDECK
*                THESE VALUES ARE REFREENCED BY PROC DIAG                NEWDECK
*                                                                        NEWDECK
          SPACE  4                                                       NEWDECK
**        EM     THIS EM MACRO, DIFFERENT FROM THE ONE CONTAINED IN      NEWDECK
*                ETABI, IS CALLED ONCE FOR EACH SYMPL SYNTAX DIAGNOSTIC. NEWDECK
*                IT CONSTRUCTS A TABLE OF ERROR LEVELS PACKED 20 PER     NEWDECK
*                WORD IN COMMON BLOCK ERLEV.                             NEWDECK
*                                                                        NEWDECK
*         INPUT                                                          NEWDECK
*                NUM = ERROR NUMBER, IGNORED                             NEWDECK
*                                                                        NEWDECK
*                LEV = ERROR LEVEL                                       NEWDECK
*                         D  MACHINE DEPENDENT                           NEWDECK
*                         T  TRIVIAL                                     NEWDECK
*                         W  WARNING                                     NEWDECK
*                         F  FATAL                                       NEWDECK
*                                                                        NEWDECK
*                TEXT = ERROR MESSAGE TEXT, IGNORED                      NEWDECK
*                                                                        NEWDECK
*         OUTPUT                                                         NEWDECK
*                ERROR LEVEL TABLE, LEVELS PACKED 20 PER WORD            NEWDECK
*                                                                        NEWDECK
*         NOTE   THE SIZE OF THE COMMON BLOCK /ERLEVS/ IS AUTOMATICALLY  NEWDECK
*                DETERMINED BY THE NUMBER OF ERROR MESSAGES IN COMDECK   NEWDECK
*                ERMSGS BECAUSE /ERLEVS/ IS FIRST REFERENCED BY ERLEV.   NEWDECK
*                                                                        NEWDECK
          SPACE  4                                                       NEWDECK
          SST 
 DNR  SET 0 
 EM       MACRO  NUM,LEV,TEXT                                            NEWDECK
          IFLE   NUM,DNR,1
 A        ERR 
 BSSNR    SET    NUM-DNR-1
 DNR      SET    NUM
 IFA      IFGT   BSSNR,0
          DUP    BSSNR,1
          VFD    3/EL.C 
 IFA      ENDIF 
 LEVEL    SET    EL._LEV
          VFD    3/LEVEL                                                 NEWDECK
          ENDM                                                           NEWDECK
          SPACE  4                                                       NEWDECK
          USE    /ERLEVS/    ERROR LEVELS                                NEWDECK
          SPACE  4                                                       NEWDECK
*CALL ERMSGS                                                             NEWDECK
          END                                                            NEWDECK
