*COMDECK     COMEDICT   - ERROR DICTIONARY. 
          LIST   D
          TITLE  EDICT - ERROR DICTIONARY.
          COMMENT ERROR DICTIONARY. 
 EDICT    SPACE  4,8
**        EDICT - ERROR DICTIONARY. 
* 
*         R. H. FRANK.       71/07/04.     (IN RUN 3.0 COMPILER). 
*         R. H. GOODELL.     72/02/29.     (SIMPLIFIED AND GENERALISED).
*         R. H. GOODELL.     77/02/08.     (IN DDL 3 CODE GENERATOR). 
* 
**             THE DDL CODE GENERATOR ERROR DICTIONARY CONSISTS OF
*         TWO TABLES.  TABLE *EDICT* CONTAINS  THE  ENGLISH  WORDS
*         USED  IN THE MESSAGES, AND TABLE *E$* CONTAINS SKELETONS
*         POINTING TO ENTRIES IN *EDICT*.  A MESSAGE IS IDENTIFIED
*         BY A SYMBOL *E$NAME* WHICH IS THE  RELATIVE  FIRST  WORD
*         ADDRESS OF THE MESSAGE SKELETON IN TABLE *E$*.
  
  
 WC       MICRO  1,, TEN     WORD LENGTH IN CHARACTERS
 EM       SPACE  4,8
**        EM - DEFINE ERROR MESSAGE.
* 
* 
* NAME    EM     LEVEL,(MESSAGE)
* 
*         ENTRY  *NAME* = MNEMONIC FOR ERROR CONDITION (1-5 CHAR).
*                *LEVEL* = SEVERITY OF ERROR CONDITION AS FOLLOWS.
*                              0 = WARNING OR INFORMATIVE MESSAGE.
*                              1 = RECOVERABLE ERROR. 
*                              2 = FATAL ERROR. 
*                              3 = CATASTROPHIC ERROR.
*                *MESSAGE* = TEXT OF MESSAGE, $ REPRESENTS FILLIN.
* 
*         EXIT   ENTRY POINT SYMBOL *E$NAME* DEFINED AND MESSAGE
*                SKELETON GENERATED.
* 
*         USES   NONE.
* 
*         CALLS  NONE - NO EXECUTABLE CODE GENERATED. 
  
  
          MACRO  EM,NAME,LEVEL,MESSAGE
 E$NAME   SPACE  0
 COUNT    SET    0
 SKEL     MICRO 
 TEXT     MICRO  1,,^_MESSAGE_^ 
          DUP    -1 
 COUNT    SET    COUNT+1
 WORD     MICRO  1,, "TEXT" 
 LENGTH   MICCNT WORD 
 N        DECMIC LENGTH+1 
 SKEL     MICRO  1,,^"SKEL",12/="N"H"WORD" -E^
 TEXT     MICRO  LENGTH+2,,^"TEXT"^ 
          IFC    EQ,^"TEXT"^^,1 
          STOPDUP 
          ENDD
          ENTRY  E$NAME 
 E$NAME   VFD    3/LEVEL,9/COUNT"SKEL"
          IFNE   *P,60,1
          POS    0
          ENDM
  
  
          NOREF  COUNT,E,LENGTH 
 EDICT    SPACE  4,8
**        EDICT - ERROR DICTIONARY. 
* 
*         *EDICT*  CONTAINS ALL OF THE ENGLISH WORDS THAT COMPRISE
*         THE ERROR MESSAGES.  EACH WORD IS STORED IN ONE OR  MORE
*         CONSECUTIVE MEMORY WORDS, PACKED TEN CHARACTERS PER WORD
*         ENDING  WITH  AT LEAST ONE BLANK CHARACTER.  THE LITERAL
*         FACILITY OF COMPASS IS USED TO AVOID DUPLICATIONS.
  
  
          ENTRY  EDICT
 EDICT    LIT    2H$         $ MAKES ZERO BYTE REPRESENTING FILLIN
 E        EQU    EDICT
 E$       SPACE  4,8
**        E$ - ERROR MESSAGE SKELETONS. 
* 
*         *E$* CONTAINS MESSAGE SKELETONS, EACH OF WHICH IS ONE OR
*         MORE CONSECUTIVE MEMORY WORDS CONTAING A  12-BIT  HEADER
*         BYTE  FOLLOWED  BY A SEQUENCE OF 12-BIT TEXT BYTES.  THE
*         HEADER BYTE CONTAINS A 3-BIT SEVERITY LEVEL AND A  9-BIT
*         COUNT  OF  THE  NUMBER OF TEXT BYTES.  EACH TEXT BYTE IS
*         THE RELATIVE FIRST WORD ADDRESS OF  A  CHARACTER  STRING
*         IN  *EDICT*.   A ZERO TEXT BYTE, CORRESPONDING TO A $ IN
*         THE *EM* MACRO, REPRESENTS A CHARACTER STRING THAT  WILL
*         BE  SUPPLIED BY THE ROUTINE POSTING THE ERROR CONDITION.
  
  
          ENTRY  E$ 
 E$       BSS    0
          LOC    0
 E$       SPACE  4,8
****      ERROR MESSAGE DEFINITIONS.
  
  
 LITCR    EM     3,(LITCR STRING ARGUMENT IS MORE THAN "WC" CHARACTERS.)
 LITCZ    EM     3,(LITCZ STRING ARGUMENT IS MORE THAN "WC" CHARACTERS.)
 SAREV    EM     3,(SAR OPTION EXV IS NOT IMPLEMENTED.) 
 SARVL    EM     3,(SAR OPTION VAL IS NOT IMPLEMENTED.) 
 SARXW    EM     3,(SAR OPTION XRW IS NOT IMPLEMENTED.) 
 SXRCC    EM     3,(SXR OPTION CON FORMAT CPLX IS NOT IMPLEMENTED.) 
 SXRCD    EM     3,(SXR OPTION CON FORMAT DP IS NOT IMPLEMENTED.) 
  
  
****      END OF ERROR MESSAGES.
  
  
          END 
