MODULE XNMSG ( IDENT = 'X00.03' %TITLE 'XPO$XMSG - XPORT Numeric Message Generator' %BLISS32( ,ADDRESSING_MODE( EXTERNAL=LONG_RELATIVE ) ) %BLISS36( ,ENTRY( XPO$XMSG ),OTS='' ) ) = BEGIN ! ! COPYRIGHT (c) 1980 BY ! DIGITAL EQUIPMENT CORPORATION, MAYNARD, MASS. ! ! THIS SOFTWARE IS FURNISHED UNDER A LICENSE AND MAY BE USED AND COPIED ! ONLY IN ACCORDANCE WITH THE TERMS OF SUCH LICENSE AND WITH THE ! INCLUSION OF THE ABOVE COPYRIGHT NOTICE. THIS SOFTWARE OR ANY OTHER ! COPIES THEREOF MAY NOT BE PROVIDED OR OTHERWISE MADE AVAILABLE TO ANY ! OTHER PERSON. NO TITLE TO AND OWNERSHIP OF THE SOFTWARE IS HEREBY ! TRANSFERRED. ! ! THE INFORMATION IN THIS SOFTWARE IS SUBJECT TO CHANGE WITHOUT NOTICE ! AND SHOULD NOT BE CONSTRUED AS A COMMITMENT BY DIGITAL EQUIPMENT ! CORPORATION. ! ! DIGITAL ASSUMES NO RESPONSIBILITY FOR THE USE OR RELIABILITY OF ITS ! SOFTWARE ON EQUIPMENT WHICH IS NOT SUPPLIED BY DIGITAL. ! !++ ! ! FACILITY: BLISS Library ! ! ABSTRACT: ! ! This module creates a message which consists simply of an ! XPORT completion code. ! ! ENVIRONMENT: User mode - multiple host operating/file systems ! ! AUTHOR: Ward Clark, CREATION DATE: 12 February 1981 ! !-- ! ! TABLE OF CONTENTS: ! FORWARD ROUTINE XPO$XMSG; ! XPORT message retrieval routine ! ! INCLUDE FILES: ! LIBRARY 'XPORT' ; ! Public XPORT control block and macro definitions LIBRARY 'XPOSYS' ; ! Internal XPORT macro definitions $XPO_SYS_TEST( $TOPS10, $TOPS20, $11M, $RSTS, $RT11 ) ! ! MACROS: ! ! ! EQUATED SYMBOLS: ! ! ! PSECT DECLARATIONS: ! $XPO_PSECTS ! Declare XPORT PSECT names and attributes ! ! OWN STORAGE: ! OWN message_prefix : $STR_DESCRIPTOR( STRING = 'XPORT message ' ); LITERAL buffer_length = 14 + %BLISS16( 6 ) %BLISS36( 11 ); OWN message_buffer : VECTOR[ CH$ALLOCATION( buffer_length ) ], message_desc : $STR_DESCRIPTOR( STRING = ( buffer_length, CH$PTR(message_buffer) ), CLASS = BOUNDED ); ! ! EXTERNAL REFERENCES: ! GLOBAL ROUTINE XPO$XMSG( completion_code, string_desc ) = !++ ! ! FUNCTIONAL DESCRIPTION: ! ! This routine returns message text which contains an XPORT ! completion code. This text is returned by filling in a string ! descriptor which is passed by the caller. ! ! NOTE: This module is a replacement for the standard XPORT ! module (XXMSG) which return actual message text. ! ! FORMAL PARAMETERS: ! ! completion_code - XPORT completion code ! string_desc - address of a string descriptor to be completed ! ! IMPLICIT INPUTS: ! ! None ! ! IMPLICIT OUTPUTS: ! ! None ! ! COMPLETION CODES: ! ! XPO$_NORMAL ! ! SIDE EFFECTS: ! ! None ! !-- BEGIN ! ! Construct the message containing the completion code. ! $STR_COPY( STRING = message_prefix, TARGET = message_desc ); $STR_APPEND( STRING = $STR_ASCII( .completion_code ), TARGET = message_desc ); ! ! Fill in the caller's string descriptor with appropriate message information. ! $STR_DESC_INIT( DESCRIPTOR = .string_desc, STRING = message_desc ); ! ! Return to the caller. ! RETURN XPO$_NORMAL ! Return a success code to the caller. END; END ELUDOM