IDENT MULTCB ENTRY LOADCB ENTRY RELSCB TITLE MULTCB - ACCESS MULTIPLE COMMUNICATION BLOCKS. *COMMENT MULTCB - ACCESS MULTIPLE C.B.-S. COMMENT COPYRIGHT CONTROL DATA SYSTEMS INC. 1992. SPACE 4,10 *** MULTCB - ACCESS MULTIPLE COMMUNICATION BLOCKS. * J.R. HOGUE. 74/11/06. SPACE 4 *CALL,COMCMAC *CALL,COMKMAC *CALL COMSPRD LOADCB TITLE READ MULTIPLE COMMUNICATION BLOCK INPUT. *** LOADCB - READ MULTIPLE COMMUNICATION BLOCK INPUT. * * CALL FORMAT - * * FORTRAN EXTENDED * CALL LOADCB(ADDR,LEN,STAT,REL) * COBOL * ENTER LOADCB USING ADDR STAT REL. * * WHERE ADDR = FWA TO LOAD THE COMMUNICATION BLOCK(S). * LEN = MAXIMUM AMOUNT OF DATA TO TRANSFER TO THE TASK. * STAT = AMOUNT OF DATA TRANSFERED TO THE TASK. * REL = NONZERO TO RELEASE THE COMMUNICATION BLOCK(S). LOADCB SUBR ENTRY/EXIT SB1 1 SX6 X1 CHECK COBOL CALL BX7 X1-X6 SA3 A1+1 READ LENGTH OR STATUS ADDRESS NZ X7,LOA3 IF COBOL CALL SA2 X3 READ LENGTH SA3 A3+1 ADDRESS OF STATUS WORD LOA1 SA4 A3+B1 READ REL PARAMETER MX7 1 REL BIT SA5 X4 LX2 30 BX6 X6+X2 ZR X5,LOA2 IF REL NOT REQUESTED BX6 X7+X6 LOA2 SA6 LOAA REQUEST CONTROL WORD LOADCB LOAA LOAD COMMUNICATION BLOCKS SA6 X3 WRITE STATUS JP LOADCBX * COBOL BUFFER LENGTH IN CHARACTERS TO WORDS, DISCARD REMAINDERE LOA3 LX7 -36 BUFFER LENGTH IN CHARACTERS SX4 X7 SX7 10D DIVIDE BY 10 AND TRUNCATE IX2 X4/X7 JP LOA1 LOAA BSS 1 RELSCB TITLE RELEASE MULTIPLE COMMUNICATION BLOCK(S). *** RELSCB - RELEASE THE MULTIPLE COMMUNICATION BLOCK(S) USED TO * CONTAIN LARGE TRANSACTION INPUTS. * * CALL FORMAT - * * FORTRAN EXTENDED * CALL RELSCB * COBOL * ENTER RELSCB. RELSCB SUBR ENTRY/EXIT RELSCB RELEASE ANY EXTRA COMMUNICTION BLOCKS EQ RELSCBX RETURN END