*TITLECSTICD -- CHECK TICD IN CSEXEC 00000100 C*********************************************************************** C COPYRIGHT ATLANTIC RICHFIELD COMPANY 1991 * C*********************************************************************** *A AUTHOR F. COLLNS 00000200 *A DESIGNER F. COLLINS 00000300 *A LANGUAGE S/370 ASSEMBLER F 00000400 *A SYSTEM IBM (SEE CRAY) 00000501 *A WRITTEN 1-31-78 00000600 * REVISED 04-23-85 REM. SOURCE RE-TYPED FROM R&D SUPPLIED LISTING. 00000700 * REVISED 00000800 *A 00000900 *A 00001000 *A CALL CSTICD (MCINH, TICD) 00001100 *A 00001200 *A IN/OUT ARGUMENT TYPE DESCRIPTION 00001300 *A 00001400 *A IN MCINH A4 ADDRESS OF INPUT TRACE HEADER 00001500 *A OUT TICD I4 VALUE OF IDENTIFICATION CODE THTICD. 00001600 *A 00001700 *A 00001800 *A 1. PLACE THE ADDRESS OF TICD IN REGISTER 15. 00001900 *A R15 IS NOW A BASE REGISTER FOR STORING THE VALUE OF THTICD. 00002000 *A 00002100 *A 2. PLACE THE ADDRESS OF MCINH IN REGISTER 1. 00002200 *A 00002300 *A 3. PLACE THE VALUE OF MCINH IN REGISTER 1. 00002400 *A R1 NOW CONTAINS THE ADDRESS OF THE TRACE HEADER AND CAN BE 00002500 *A USED AS A BASE REGISTER FOR THE TRACE HEADER. 00002600 *A 00002700 *A 4. PLACE THE VALUE OF THTICD IN REGISTER 1. THTICD IS IN BYTES 00002800 *A 29-30. ITS DISPLACEMENT INTO THE TRACE HEADER IS 28 BYTES. 00002900 *A 00003000 *A 5. STORE THE VALUE OF THTICD INTO ADDRESS SPECIFIED BY R15. 00003100 *A 00003200 *A 6. SET REGISTER 15 TO ZERO (RETURN CODE). 00003300 EJECT 00003400 * 00003500 * 00003600 * OPERATION VARIABLE ADDRESS CONTENTS 00003700 * 00003800 * GIVEN MCI1 10216 3 00003900 * MCTADD(3) 10428 30000 00004000 * TICD 10008 ----- 00004100 * IN CSEXEC 00004200 * MCINH = MCTADD (MCI1) MCINH 10224 30000 00004300 * CALL CSCALL (MCINH, TICD) PARM1 15000 10224 00004400 * PARM2 15004 10008 00004500 * REG 1 15000 00004600 * PARM1 AND PARM2 ARE CONSECUTIVE 00004700 * LOCATIONS ASSIGNED IN CSEXEC BY 00004800 * THE FORTRAN COMPILER. 00004900 * IN CSTICD 00005000 * L R15,4(,R1) 4(,R1) 15004 10008 00005100 * REG 15 10008 00005200 * 00005300 * L R1,0(,R1) 0(,R1) 15000 10224 00005400 * REG 15 10224 00005500 * 00005600 * L R1,0(,R1) 0(,R1) 10224 30000 00005700 * REG 1 30000 00005800 * 00005900 * LH R1,28(,R1) 28(R1) 30028 THTICD 00006000 * REG 1 THTICD 00006100 * 00006200 * ST R1,0(,R15) TICD 10008 THTICD 00006300 * 00006400 * 00006500 CSTICD CSECT 00006600 * 00006700 R1 EQU 1 00006800 R14 EQU 14 00006900 R15 EQU 15 00007000 USING *,R15 00007100 B CSTICD1 BRANCH AROUND NAME (LINKAGE CONVENTION) 00007200 DC X'07',C'CSTICD ' 00007300 DROP R15 00007400 CSTICD1 L R15,4(,R1) R15 = ADDRESS OF TICD (TO BE RETURNED). 00007500 L R1,0(,R1) R1 = ADDRESS OF MCINH. 00007600 L R1,0(,R1) R1 = ADDRESS OF TRACE HEADER. 00007700 LH R1,28(,R1) R1 = THTICD FROM TRACE HEADER. 00007800 ST R1,0(,R15) THTICD RETURNED TO CALLING PROGRAM. 00007900 SR R15,R15 SET RETURN CODE TO ZERO. 00008000 BR R14 00008100 END 00008200