%title 'Aux_Title' %sbttl 'Introduction' MODULE Aux_Title ( ! IDENT = '1' ) = BEGIN ! ! COPYRIGHT (c) 1983 BY ! Project Software & Development, Inc. ! ! 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 PROJECT SOFTWARE ! AND DEVELOPMENT, INC. ! ! PROJECT SOFTWARE assumes no responsibility for the use or reliability ! of its software on equipment which is not supplied by PROJECT SOFTWARE. ! !++ ! FACILITY: AUXiliary Keypad DCL ! ! ABSTRACT: This module checks for a DCL symbol that indicates that the ! title has already been displayed. If does not exist or is not the ! same, the new title is displayed. ! ! ! ENVIRONMENT: VMS Native mode ! ! AUTHOR: M. Erik Husby, CREATION DATE: April 1983 ! ! MODIFIED BY: ! ! , : VERSION ! 01 - !-- ! ! TABLE OF CONTENTS: ! FORWARD ROUTINE Aux_Title : Novalue ; ! ! ! INCLUDE FILES: ! library 'sys$library:lib'; Require 'sys$library:psdi'; Library 'Auxlib'; ! ! MACROS: ! ! ! EQUATED SYMBOLS: ! ! ! OWN STORAGE: ! bind local_table = uplit(1), version = $descriptor('AUX_VERSION') : block[,byte] ; ! ! EXTERNAL REFERENCES: ! external literal lib$_nosuchsym, aux_versno, aux_help ; external aux_version : block[,byte] ; EXTERNAL ROUTINE str$compare_eql : addressing_mode(general), ! 0=equal, 1 notequal lib$get_symbol : addressing_mode(general), lib$set_symbol : Addressing_mode(general) ; ! %sbttl 'Aux_Title' Global ROUTINE Aux_Title :NOVALUE = ! !++ ! FUNCTIONAL DESCRIPTION: ! This routine displays the title if it has not been done yet. ! ! FORMAL PARAMETERS: ! ! NONE ! ! IMPLICIT INPUTS: ! ! NONE ! ! IMPLICIT OUTPUTS: ! ! NONE ! ! ROUTINE VALUE: ! COMPLETION CODES: ! ! NONE ! ! SIDE EFFECTS: ! ! NONE ! !-- BEGIN LOCAL status, version_symbol : dynamic_descriptor ; ! ! ! See if the symbol is defined. if not (status=lib$get_symbol(version,version_symbol)) then if .status neq lib$_nosuchsym then signal(.status); ! ! Now see if it is the same one we are, if so just go home. if not str$compare_eql(version_symbol,aux_version) then return; ! ! Not the same, display the current version and define a symbol for future ! use. perform(lib$set_symbol(version,aux_version,local_table)); signal(aux_versno,1,aux_version); signal(aux_help); ! ! All done, go home return; END; !End of Aux_Title END !End of module ELUDOM