SUBROUTINE MESSAGE_OUT(MESSAGE_INDEX, SECTION_INDEX, STRING_PARAM) C---------------------------------------------------------------------- C- C- Purpose and Methods : Handles message output. Given a message number, the C- current section number, and an optional message string, this routine C- generates a message string and passes it on to the routine that outputs C- the message. This routine also calls ASSIGN_ERROR() with a code based C- on the message number given. C- C- Inputs : MESSAGE_INDEX The code indicating what message to print C- SECTION_INDEX The identification of the current section C- STRING_PARAM A secondary string that may be printed if the C- message number calls for it. C- Outputs : none C- Controls: none C- C- Created 30-JUL-1990 MICHIGAN STATE UNIVERSITY, TRIGGER CONTROL SOFTWARE C- C---------------------------------------------------------------------- IMPLICIT NONE C---------------------------------------------------------------------- C C Global declarations C INCLUDE 'D0$LEVEL1:PARSE_TOKENS.PARAMS' INCLUDE 'D0$LEVEL1:PARSE_TOKENS.INC' INCLUDE 'D0$LEVEL1:LEVEL1_LOOKUP.PARAMS' INCLUDE 'D0$LEVEL1:LEVEL1_LOOKUP.INC' INTRINSIC MOD C C Argument declarations C INTEGER MESSAGE_INDEX INTEGER SECTION_INDEX CHARACTER*(*) STRING_PARAM C C Local declarations C INTEGER MESSAGE_TYPE INTEGER ERROR_TYPE INTEGER MESSAGE_NUMBER INTEGER MESSAGE_LENGTH INTEGER STRING_LENGTH C C Get the message number, message type, and error type from the message C index. C ERROR_TYPE = MESSAGE_INDEX / 1000 MESSAGE_TYPE = MOD(MESSAGE_INDEX , 1000) - MOD(MESSAGE_INDEX, 100) MESSAGE_NUMBER = MOD(MESSAGE_INDEX, 100) C C Assign to the global flags C IF (ERROR_TYPE .GT. LSM_ERROR_SEVERITY) LSM_ERROR_SEVERITY = & ERROR_TYPE LSM_ERROR_CODE = MESSAGE_NUMBER LSM_ERROR_LINE = LINE_NUMBER C 999 RETURN END