cdc:nos2.source:opl871:callrtn
โTable of Contents
CALLRTN
Table Of Contents
- [00039] CALL TASK(S) WITH RETURN.
Source Code
- CALLRTN.txt
- IDENT CALLRTN
- ENTRY CALLRTN
- SYSCOM B1
- CALLRTN TITLE CALLRTN - CALL TASK(S) WITH RETURN.
- *COMMENT CALLRTN - CALL TASK(S) WITH RETURN.
- COMMENT COPYRIGHT CONTROL DATA SYSTEMS INC. 1992.
- CALLRTN SPACE 4,10
- ***** CALLRTN - CALL TASK(S) WITH RETURN.
- *
- * W. E. MARTIN. 79/03/06.
- *
- * CALLRTN IS AN INTERFACE ROUTINE FOR COBOL AND FORTRAN
- * TASKS. IT ALLOWS THEM TO CALL TASK(S) WITH RETURN.
- SPACE 4,20
- *** COBOL/FORTRAN CALL FORMAT.
- *
- * COBOL -
- *
- * ENTER CALLRTN USING TASK1,TASK2,...,TASKN.
- *
- * FORTRAN EXTENDED -
- *
- * CALL CALLRTN (TASK1,TASK2,...,TASKN).
- *
- * WHERE - TASKI = PARAMETER WHOSE VALUE IS A 1 TO 7 CHARACTER
- * TASK NAME. TASKI MUST BE LEFT JUSTIFIED, WITH
- * BINARY-ZERO OR BLANK-FILL.
- *
- * NOTE - IF MORE THAN FIVE (5) TASK NAMES ARE ENCOUNTERED,
- * THEN THE TASK WILL BE ABORTED WITH A PARAMETER LIST
- * STRUCTURE ERROR.
- SPACE 4
- * COMMON TEXTS.
- *CALL COMKMAC
- *CALL COMSPRD
- SPACE 4,25
- ** CALLRTN - CALL TASK(S) WITH RETURN.
- *
- * ENTRY (A1) = ADDRESS OF PARAMETER LIST.
- * (X1) = 42/,18/ADDRESS OF FIRST PARAMETER.
- *
- * EXIT (A0) SAME AS ON ENTRY.
- *
- * USES A - 1, 2, 5, 6.
- * X - 0, 1, 2, 5, 6.
- * B - 1, 7.
- *
- * CALLS ZFN.
- *
- * MACROS ARGERR, CALLRTN.
- *
- * NOTES IF MORE THAN FIVE (5) TASK NAMES ARE ENCOUNTERED,
- * THEN THE TASK WILL BE ABORTED WITH A PARAMETER
- * LIST STRUCTURE ERROR.
- * (A0) MUST BE THE SAME ON EXIT AS UPON ENTRY.
- VFD 42/0LCALLRTN,18/CALLRTN
- CALLRTN SUBR ENTRY/EXIT
- SA2 X1+ READ TASK NAME
- SB1 1
- ZR X1,CAL3 IF CALLED WITH NULL LIST
- BX1 X2
- RJ ZFN ZERO FILL NAME
- BX6 X1
- SA5 A1+B1
- SA6 CALA STORE TASK NAME
- ZR X5,CAL2 IF NO TASK LIST
- SB7 4 SET TASK LIST LIMIT
- CAL1 SA2 X5+ READ TASK NAME
- SA5 A5+B1 READ NEXT ADDRESS
- BX1 X2 STORE TASK NAME
- ZR X2,CAL2 IF END OF PARAMETER LIST
- RJ ZFN ZERO FILL NAME
- SB7 B7-B1 DECREMENT LIST ENTRY COUNT
- BX6 X1
- SA6 A6+1
- LT B7,CAL3 IF LIST OVERFLOW - ABORT TASK
- NZ X5,CAL1 IF PARAMETER LIST NOT EXHAUSTED
- CAL2 BX6 X6-X6 TERMINATE LIST
- SA6 A6+B1
- CALLRTN CALA ENTER REQUEST
- EQ CALLRTNX RETURN
- * PROCESS ARGUMENT ERROR BY ABORTING PROGRAM.
- CAL3 SA1 CALLRTN READ CALLING ADDRESS
- MX0 30
- LX1 29-59
- SA2 X1-1
- BX6 -X0*X2
- SA6 CALA
- ARGERR A6 EXIT TO EXECUTIVE
- CALA BSSZ 6 TASK NAME LIST
- SPACE 4
- * COMMON DECK.
- *CALL COMKZFN
- SPACE 4
- END
cdc/nos2.source/opl871/callrtn.txt ยท Last modified: 2023/08/05 17:24 by Site Administrator