cdc:nos2.source:opl871:tmsg
Table of Contents
TMSG
Table Of Contents
- [00004] TMSG - TAF MESSAGE TO DAYFILE.
- [00025] TAF MESSAGE TO DAYFILE.
Source Code
- TMSG.txt
- IDENT TMSG
- ENTRY TMSG
- SYSCOM B1
- TITLE TMSG - TAF MESSAGE TO DAYFILE.
- *COMMENT TMSG - TAF MESSAGE TO DAYFILE.
- COMMENT COPYRIGHT CONTROL DATA SYSTEMS INC. 1992.
- TMSG SPACE 4,10
- **** TMSG - TAF MESSAGE TO DAYFILE
- *
- * A. E. SCHIPPERS. 80/06/27.
- *
- * TMSG IS AN INTERFACE ROUTINE WHICH WILL ISSUE A
- * MESSAGE TO THE *TAF* DAYFILE FROM A SYSTEM TASK.
- *IF DEF,TRANC5
- * NOTE THIS IS THE COBOL5 VERSION OF TMSG.
- *ENDIF
- *IF DEF,TRANF4
- * NOTE THIS IS THE FORTRAN4 VERSION OF TMSG.
- *ENDIF
- *IF DEF,TRANF5
- * NOTE THIS IS THE FORTRAN5 VERSION OF TMSG.
- *ENDIF
- TMSG SPACE 4,20
- *** TMSG - TAF MESSAGE TO DAYFILE.
- *
- * ENTRY COMPASS - SCALL TMSG,(MESSAGE,LENGTH)
- * COBOL - ENTER TMSG USING MESSAGE[, LENGTH].
- * FORTRAN - CALL TMSG(MESSAGE,LENGTH)
- *
- * WHERE - MESSAGE DATA ITEM CONTAINING THE DAYFILE MESSAGE.
- * COBOL - 01 LEVEL ITEM.
- * FORTRAN - HOLLERITH.
- *
- * LENGTH LENGTH OF MESSAGE IN CHARACTERS.
- * COBOL - 01 LEVEL COMPUTATIONAL-1 DATA
- * NAME.
- * FORTRAN - INTEGER.
- *
- * EXIT MESSAGE ISSUED TO DAYFILE.
- *
- * USES A - 1, 2, 6.
- * X - 1, 2, 3, 4, 6.
- * B - 1, 2, 3.
- *
- * MACROS SYSTEM.
- *
- * NOTE SYSTEM TASKS ARE THE ONLY TASKS ALLOWED TO ISSUE
- * MESSAGES TO THE *TAF* DAYFILE.
- TMSG SPACE 4,10
- * COMMON DECKS.
- *CALL COMKMAC
- TMSG SPACE 4,10
- * THE FOLOWING CODE IS CONDITIONALLY PUT ON THE
- * COMPILE FILE AT MODIFICATION TIME. THIS CODE
- * ALSO SETS VALUES FOR CONDITIONAL ASSEMBLY OF SOME
- * CODE LATER IN THIS DECK.
- .1 SET 0
- *IF DEF,TRANC5
- .1 SET .1+1
- .2 SET 0 COBOL5 VERSION
- *ENDIF
- *IF DEF,TRANF4
- .1 SET .1+1
- .2 SET 1 FORTRAN4 VERSION
- *ENDIF
- *IF DEF,TRANF5
- .1 SET .1+1
- .2 SET 2 FORTRAN5 VERSION
- *ENDIF
- .A IFNE .1,1
- * ONE AND ONLY ONE OF THE TLIBXX LIBRARIES MUST BE
- * DEFINED AT MODIFICATION TIME.
- ERR MODIFICATION ERRORS
- .A ENDIF
- TMSG SPACE 4,10
- VFD 42/0LTMSG,18/TMSG
- TMSG SUBR ENTRY/EXIT
- SB1 1
- SA1 A1
- BX3 X3-X3
- .B IFEQ .2,0 IF COBOL5 VERSION
- * PROCESS PARAMETER LIST FOR COBOL5.
- MX3 -18 GET LENGTH OF MESSAGE
- BX4 X1
- LX4 17-53
- BX3 -X3*X4
- .B ENDIF
- .C IFEQ .2,1 IF FORTRAN4 VERSION
- * PROCESS PARAMETER LIST FOR FORTRAN4.
- * NO SPECIAL PROCESSING NEEDED.
- .C ENDIF
- .D IFEQ .2,2 IF FORTRAN5 VERSION
- * PROCESS PARAMETER LIST FOR FORTRAN5.
- * NO SPECIAL PROCESSING NEEDED.
- .D ENDIF
- SA2 A1+1 GET NEXT PARAMETER
- ZR X2,TMS1 IF LENGTH PARAMETER NOT SPECIFIED
- SA2 X2+ FWA OF LENGTH
- SX3 X2+ LENGTH
- TMS1 SX2 10 CHARACTERS PER WORD
- IX6 X3/X2 GET NUMBER OF FULL WORDS.
- SB2 X6+
- SX4 B0+
- SX2 10 CHARACTERS PER WORD
- UX3 X3,B7
- IX2 X6*X2 CHARACTERS IN FULL WORDS
- LX3 X3,B7
- IX2 X3-X2 NUMBER OF CHARACTERS IN LAST WORD
- SX3 6 BITS PER CHARACTER
- IX3 X2*X3 MASK FOR CHARACTERS IN LAST WORD
- ZR X2,TMS2 IF LAST WORD FULL
- MX4 1
- SB3 -1
- SB3 X3+B3 SHIFT COUNT
- AX4 B3
- TMS2 SA2 X1+B2 GET LAST WORD OF MESSAGE
- SX6 A2 SAVE ADDRESS OF LAST WORD
- SA6 TMSA
- BX6 X2 SAVE LAST WORD OF MESSAGE
- SA3 A2+B1 GET WORD FOLLOWING MESSAGE
- SA6 A6+B1
- BX6 X3 SAVE WORD FOLLOING MESSAGE
- SA6 A6+B1
- BX6 X4*X2 ZERO OUT TRAILING BITS
- SA6 A2
- BX6 X6-X6 ZERO OUT WORD FOLLOWING MESSAGE
- SX3 X1
- SA6 A6+1
- SYSTEM TMS,R,X3,B0 ISSUE *TMS* REQUEST
- SA2 TMSA ADDRESS OF LAST WORD OF MESSAGE
- SA3 A2+B1 RESTORE LAST WORD OF MESSAGE
- BX6 X3
- SA6 X2+
- SA3 A3+B1 RESTORE WORD FOLLOWING MESSAGE
- BX6 X3
- SA6 X2+1
- EQ TMSGX EXIT.
- * STORAGE FOR WORDS DESTROYED BY TMSG REQUEST.
- TMSA BSS 3
- END
cdc/nos2.source/opl871/tmsg.txt ยท Last modified: 2023/08/05 17:24 by Site Administrator