* %/* @G24LB18*/ 00080042 */* @G24LB18*/ 00100042 */* MODULE NAME = ICBSELTM @G24LB18*/ 00150042 */* @G24LB18*/ 00200042 */* DESCRIPTIVE NAME = SELECT/TERMINATE @G24LB18*/ 00250042 */* @G24LB18*/ 00300042 */* COPYRIGHT = NONE @G24LB18*/ 00350042 */* @G24LB18*/ 00400042 */* STATUS = OS/MVS @G24LB18*/ 00450042 */* @G24LB18*/ 00550042 */* FUNCTION = PROVIDES A REQUEST BLOCK MAPPING FOR AN MSVC @G24LB18*/ 00600042 */* SELECT OR TERMINATE REQUEST. @G24LB18*/ 00650042 */* @G24LB18*/ 00700042 */* NOTES = ICBSELTM IS A BILINGUAL MACRO. @G24LB18*/ 00750042 */* @G24LB18*/ 00800042 */* DEPENDENCIES = NONE @G24LB18*/ 00850042 */* @G24LB18*/ 00900042 */* RESTRICTIONS = PREFIXES SEL AND TRM RESERVED @G24LB18*/ 00950042 */* FOR USE BY THE MACRO. @G24LB18*/ 01000042 */* @G24LB18*/ 01010042 */* REGISTER CONVENTIONS = NORMAL MACRO USAGE OF @G24LB18*/ 01050042 */* R0, R1, R14, AND R15. @G24LB18*/ 01100042 */* @G24LB18*/ 01150042 */* MODULE TYPE = MACRO @G24LB18*/ 01200042 */* @G24LB18*/ 01250042 */* PROCESSOR = PLS2 AND ASSEMBLER @G24LB18*/ 01300042 */* @G24LB18*/ 01350042 */* ENTRY POINT = ICBSELTM @G24LB18*/ 01400042 */* @G24LB18*/ 01450042 */* PURPOSE = THE SELECT REQUEST IS ISSUED BY ALLOCATION @G24LB18*/ 01500042 */* FOR EACH 3330V DD TO ALLOW MSVC TO KEEP @G24LB18*/ 01550042 */* TRACK OF THE VIRTUAL VOLUMES CURRENTLY @G24LB18*/ 01600042 */* BEING USED AND TO SELECT VOLUMES FOR MSVGP @G24LB18*/ 01650042 */* REQUESTS. THE TERMINATE REQUEST IS ISSUED @G24LB18*/ 01700042 */* BY ALLOCATION AT THE END OF ALLOCATION FOR @G24LB18*/ 01750042 */* EACH STEP CONTAINING 3330V DDS. THIS ALLOWS @G24LB18*/ 01800042 */* MSVC TO FREE UP THE RECORDS IT BUILT AT @G24LB18*/ 01850042 */* SELECT TIME FOR THE 3330V DDS IN THE STEP. @G24LB18*/ 01900042 */* @G24LB18*/ 01950042 */* INPUT @G24LB18*/ 02000042 */* @G24LB18*/ 02050042 */* MACRO SYNTAX: LIST FORM ONLY @G24LB18*/ 02100042 */* @G24LB18*/ 02150042 */* VERB REQUIRED PARAMETERS @G24LB18*/ 02200042 */* @G24LB18*/ 02250042 */* ICBSELTM MF=L,TYPE=SEL/TRM -- ASSEMBLER @G24LB18*/ 02300042 */* @G24LB18*/ 02350042 */* ICBSELTM MF(L) TYPE(SEL/TRM) -- PLS @G24LB18*/ 02400042 */* @G24LB18*/ 02450042 */* KEYWORD PARAMETERS: @G24LB18*/ 02500042 */* @G24LB18*/ 02550042 */* MF - MACRO FORMAT: ONLY THE LIST FORM OF THE MACRO @G24LB18*/ 02600042 */* MAY BE SPECIFIED. THE EXPANSION OF THE LIST @G24LB18*/ 02650042 */* FORM WILL RESULT IN A MAPPING OF A REQUEST @G24LB18*/ 02700042 */* BLOCK AND EQUATES FOR THE OPCODE AND LENGTH @G24LB18*/ 02750042 */* OF THE REQUEST BLOCK. @G24LB18*/ 02800042 */* @G24LB18*/ 02850042 */* TYPE - INDICATES WHETHER THE REQUEST IS FOR THE @G24LB18*/ 02900042 */* SELECT(SEL) FUNCTION OR THE TERMINATE (TRM) @G24LB18*/ 02950042 */* FUNCTION. THE REQUEST BLOCK AND THE EQUATES @G24LB18*/ 03000042 */* FOR THE OPCODE AND LENGTH WILL BE GENERATED @G24LB18*/ 03050042 */* ACCORDING TO THE FUNCTION SPECIFIED. @G24LB18*/ 03100042 */* @G24LB18*/ 03150042 */* EXIT-NORMAL = VALID INVOCATION @G24LB18*/ 03200042 */* @G24LB18*/ 03250042 */* OUTPUT = A BASED DCL STRUCTURE (PLS) OR DSECT @G24LB18*/ 03300042 */* (BAL) OF THE REQUEST BLOCK FOR THE REQUESTED @G24LB18*/ 03350042 */* FUNCTION, PLUS THE APPROPRIATE DCLS (PLS) @G24LB18*/ 03400042 */* OR EQUATES (BAL) FOR THE OPCODE AND LENGTH @G24LB18*/ 03450042 */* OF THE REQUEST BLOCK. @G24LB18*/ 03500042 */* @G24LB18*/ 03550042 */* CONDITION = RETURN CODE = 0 @G24LB18*/ 03600042 */* @G24LB18*/ 03650042 */* EXIT-ERROR = INVALID INVOCATION (RESULTS IN FAILURE OF @G24LB18*/ 03700042 */* COMPILATION OR ASSEMBLY OF CALLING MODULE) @G24LB18*/ 03750042 */* @G24LB18*/ 03800042 */* OUTPUT = ERROR MESSAGE AS A COMMENT AT POINT OF @G24LB18*/ 03850042 */* INVOCATION. @G24LB18*/ 03900042 */* @G24LB18*/ 03950042 */* CONDITION = RETURN CODE = 12 @G24LB18*/ 04000042 */* @G24LB18*/ 04050042 */* EXTERNAL REFERENCES = NONE @G24LB18*/ 04100042 */* @G24LB18*/ 04150042 */* TABLES = NONE @G24LB18*/ 04200042 */* @G24LB18*/ 04250042 */* MESSAGES @G24LB18*/ 04300042 */* @G24LB18*/ 04310042 */* ICB600I: TYPE MUST BE SPECIFIED. @G24LB18*/ 04350042 */* ICB601I: TYPE IS INCORRECTLY SPECIFIED. @G24LB18*/ 04400042 */* ICB617I: INVALID MF PARAMETER SPECIFIED; MUST BE L. @G24LB18*/ 04550042 */* @G24LB18*/ 04600042 */* CONTROL BLOCKS = NONE @G24LB18*/ 04650042 */* @G24LB18*/ 04700042 */* INNER MACROS = NONE @G24LB18*/ 04750042 */* @G24LB18*/ 04800042 */* SYSTEM MACROS = NONE @G24LB18*/ 04850042 */* @G24LB18*/ 04900042 */* CHANGE ACTIVITY = @G24LB18*/ 04950042 */* @G24LB18*/ 05000042 */* G24LB18 ALLOCATE TO MOUNTED VOLUMES 4/5/76 @G24LB18*/ 05050042 */* G24LB04 ALLOCATE TO MOUNTED VOLUMES 07/06/76 @G24LB04*/ 05060042 */* @G24LB18*/ 05062042 */********************************************************** @G24LB18*/ 05064042 */* 05066042 MACRO 05070042 ICBSELTM &MF=,&TYPE= 05080042 .* @G24LB04 05098842 .* CHECK FOR VALID TYPE SPECIFICATION @G24LB04 05099242 .* @G24LB04 05099642 .TYPE AIF ('&TYPE' EQ '').NUL @G24LB04 05099742 AIF ('&TYPE' EQ 'SEL' OR '&TYPE' EQ 'TRM').START @G24LB04 05099842 MNOTE 12,' ICB601I - TYPE IS INCORRECTLY SPECIFIED' @G24LB04 05099942 MEXIT @G24LB04 05116642 .* @G24LB04 05126642 .NUL ANOP @G24LB04 05128642 MNOTE 12,' ICB600I - TYPE MUST BE SPECIFIED ' @G24LB04 05130642 MEXIT @G24LB04 05132642 .* @G24LB04 05133042 .* DETERMINATION OF DESIRED MACRO FORM @G24LB04 05133142 .* @G24LB04 05133242 .START AIF ('&MF(1)' EQ 'L').LFORM LIST FORM? @G24LB04 05138842 MNOTE 12,' ICB617I - INVALID MF PARAMETER ' @G24LB04 05143242 MNOTE 12,' SPECIFIED; MUST BE L.' @G24LB04 05143642 MEXIT @G24LB04 05144242 .* @G24LB04 05144342 .* PROCESSING OF 'LIST' MACRO FORM @G24LB04 05144442 .* @G24LB04 05194342 .LFORM ANOP @G24LB04 05240342 AIF ('&TYPE' EQ 'TRM').TERMN SELECT REQUEST? @G24LB04 05242342 .* @G24LB04 05284442 .SELCDS ANOP @G24LB04 05285142 * MACMEAN SELECT MACRO--UNINITIALIZED LIST FORM @G24LB04 05287142 * MVS VERSION--07/20/76 @G24LB04 05287542 SELRB DSECT @G24LB04 05287942 DS 0F @G24LB04 05288042 SELRBLEN DS XL4 LENGTH OF SELECT RB @G24LB04 05288342 SELRBOPC DS XL1 OPCODE FOR SELECT @G24LB04 05291942 SELFLGS1 DS XL1 ALLOCATION FLAGS @G24LB04 05292042 SELPARMT EQU X'80' PARALLEL MOUNT REQUESTED @G24LB04 05294042 SELDEFER EQU X'40' DEFERRED MOUNT REQUESTED @G24LB04 05296042 SELSEPVL EQU X'20' SEPVOL REQUESTED @G24LB04 05298042 SELVENQV EQU X'10' VOLUME ENQ VALID @G24LB04 05300042 SELVOLRF EQU X'08' VOLUME REFERBACK TO DDNAME @G24LB04*05300442 REQUESTED @G24LB04 05300542 SELVRNEW EQU X'04' REFERENCED DD IS FOR NEW @G24LB04*05300842 DATA SET @G24LB04 05300942 SELVRGRP EQU X'02' REFERENCED DD IS FOR GROUP @G24LB04*05301242 VOLUME (IF NEW) @G24LB04 05304342 SELMXESO EQU X'01' MIXED ESOTERIC REQUEST @G24LB04 05306342 SELFLGS2 DS XL1 ALLOCATION/MSVC FLAGS @G24LB04 05309142 SELPRSPL EQU X'80' RESERVED FOR VS1 USE @G24LB04 05312242 SELSCSPL EQU X'40' RESERVED FOR VS1 USE @G24LB04 05315342 SELSUBAL EQU X'20' RESERVED FOR VS1 USE @G24LB04 05318442 SELUNSEP EQU X'10' RESERVED FOR VS1 USE @G24LB04 05321542 SELCNTWT EQU X'08' CAN NOT WAIT REQUEST @G24LB04 05323542 SELINITC EQU X'04' INITIAL CALL FOR STEP OR @G24LB04*05323942 DYNAMIC ALLOCATION @G24LB04 05324342 SELRPRIV EQU X'02' MARK REQUEST PRIVATE @G24LB04 05324642 SELNOVSL EQU X'01' NO VOLS WERE SELECTED @G24LB04 05327742 SELUNCNT DS XL1 UNIT COUNT OF REFERENCED DD @G24LB04*05330842 STATEMENT @G24LB04 05332842 SELJOBID DS XL4 THE ASID @G24LB04 05333942 SELJFCBA DS F ADDRESS OF JFCB @G24LB04 05337042 SELDEVTP DS XL4 4-BYTE INTERNAL DEVICE TYPE @G24LB04 05340142 SELUCBAD DS F UCB ADDR (IF SPECIFIC UNIT) @G24LB04 05343242 SELJOBNM DS CL8 8-BYTE JOB NAME @G24LB04 05346342 SELDDNAM DS CL8 DD NAME @G24LB04 05349442 SELSTNUM DS XL1 STEP NUMBER @G24LB04 05352542 SELUNUS1 DS CL1 UNUSED @G24LB04 05354542 SELDDCAT DS H DD RELATIVE CONCAT. NUMBER @G24LB04 05355642 SELDDNUM DS H CURRENT DD NUMBER, @G24LB04*05358742 ZERO FOR DYNAMIC ALLOCATION @G24LB04 05360742 SELRFDDN DS H REFERENCED DD NO.(SEPVOL) @G24LB04 05361842 SELUNUS2 DS CL4 UNUSED @G24LB04 05364942 SELJFCBX DS F ADDR OF 1ST JFCB EXTN @G24LB04 05368042 SELVLRET DS F ADDR OF VOLSER RETURN AREA @G24LB04 05371142 SELGRPPR DS F ADDR OF GROUP PARAMS AREA @G24LB04 05373142 SELUNUSE DS XL8 UNUSED @G24LB04 05374242 SELLEN EQU X'48' SELECT REQUEST BLOCK LENGTH @G24LB04 05377342 SELOPCD EQU X'89' OP CODE FOR SELECT REQUEST @G24LB04 05379342 AGO .FINISH @G24LB04 05382642 .* @G24LB04 05384642 .TERMN ANOP @G24LB04 05386642 * MACMEAN TERMINATE MACRO--UNINITIALIZED LIST FORM @G24LB04 05429442 * MVS VERSION--07/06/76 @G24LB04 05431442 TRMRB DSECT @G24LB04 05431842 DS 0F @G24LB04 05431942 TRMRBLEN DS XL4 LENGTH OF TERMINATE REQ BLK @G24LB04 05432042 TRMRBOPC DS XL1 OPCODE FOR TERMINATE @G24LB04 05437242 TRMFLAGS DS XL1 1-BYTE ALLOCATION FLAGS @G24LB04 05439742 TRMALLOK EQU X'80' STEP ALLOCATED SUCCESSFULLY @G24LB04 05442242 TRMSCHAB EQU X'40' RESERVED FOR VS1 USE @G24LB04 05452242 DS XL2 UNUSED @G24LB04 05452542 TRMJOBID DS XL4 4-BYTE ASID AREA @G24LB04 05462542 TRMSTHDR DS F STEP TABLE HEADER ADDRESS @G24LB04 05472542 TRMLEN EQU X'10' TERMINATE REQ BLOCK LENGTH @G24LB04 05482542 TRMOPCD EQU X'8A' OP CODE FOR TERMINATE REQ @G24LB04 05492542 AGO .FINISH @G24LB04 05522942 .FINISH MEND @G24LB04 06152942 **/ 06153342 * ICBSELTM: MACRO KEYS(MF,TYPE); /* @G24LB04*/ 06153742 */* @G24LB04*/ 06154242 */* @G24LB04*/ 06224442 */* @G24LB04*/ 06234442 */* INTERNAL DECLARE @G24LB04*/ 06244442 */* @G24LB04*/ 06246442 * DCL RETCODE FIXED; /*RETURN CODE AREA @G24LB04*/ 06250442 * RETCODE=0; /*INITIALIZE RETURN CODE @G24LB04*/ 06254242 */* @G24LB04*/ 06287442 */* @G24LB04*/ 06287542 */* CHECK FOR VALID TYPE SPECIFICATION @G24LB04*/ 06287642 */* @G24LB04*/ 06293242 * IF TYPE='' THEN /*IS THE TYPE PARM NULL? @G24LB04*/ 06295242 * DO; /*PRINT ERROR MESSAGE @G24LB04*/ 06297242 * ANS MSG(' ICB600I - TYPE MUST BE '|| 06297642 * 'SPECIFIED ')SKIP; /*@G24LB04*/ 06298042 * RETCODE=12; /*SET RETURN CODE TO 12 @G24LB04*/ 06298442 * GO TO FINISH; /*BRANCH TO FINISH @G24LB04*/ 06298542 * END; /* @G24LB04*/ 06298642 * IF TYPE(1)='SEL' THEN /*IS THE TYPE SELECT? @G24LB04*/ 06390742 * GO TO START; /*YES, VALID TYPE, BRANCH @G24LB04*/ 06392742 * IF TYPE(1)='TRM' THEN /*IS THE TYPE FOR TERMINATE? @G24LB04*/ 06394742 * GO TO START; /*YES, VALID TYPE, BRANCH @G24LB04*/ 06396742 */* @G24LB04*/ 06397142 */* INVALID 'TYPE' WILL CREATE THE FOLLOWING ERR MSG @G24LB04*/ 06397542 */* @G24LB04*/ 06397942 * ANS MSG(' ICB601I - TYPE IS INCORRECTLY '|| 06398342 * 'SPECIFIED')SKIP; /*@G24LB04*/ 06398442 * RETCODE=12; /*SET RETURN CODE TO 12 @G24LB04*/ 06398542 * GO TO FINISH; /*BRANCH TO FINISH @G24LB04*/ 06398642 */* @G24LB04*/ 06415342 *START: 06425342 * IF MF(1) = 'L' THEN /*IS REQUEST FOR LIST FORM? @G24LB04*/ 06427342 * GO TO BLDLIST; /*YES, WILL GO BUILD LIST @G24LB04*/ 06429342 * ANS MSG(' ICB617I - INVALID MF PARAMETER '|| 06431842 * 'SPECIFIED; MUST BE L.')SKIP; /* @G24LB04*/ 06431942 * RETCODE=12; /*SET RETURN CODE TO 12 @G24LB04*/ 06439542 * GO TO FINISH; /*BRANCH TO FINISH @G24LB04*/ 06441542 */* @G24LB04*/ 06441942 *BLDLIST: 06442342 * IF TYPE(1)='SEL' THEN /*SELECT REQUEST? @G24LB04*/ 06975142 * DO; /*PRINT UNINITIALIZED BLK @G24LB04*/ 06975542 * ANS('/*******************************************'|| 06975642 * '************** @G24LB04*/')SKIP; 06975742 * ANS('/*MACMEAN MSSC SELECT MACRO '|| 06975842 * ' @G24LB04*/')SKIP; 06992542 * ANS('/*MVS VERSION--07/20/76 '|| 07002542 * ' @G24LB04*/')SKIP; 07004542 * ANS('/*THIS IS THE UNINITIALIZED LIST FORM '|| 07006542 * ' @G24LB04*/')SKIP; 07008542 * ANS('/*******************************************'|| 07008942 * '************** @G24LB04*/')SKIP; 07009042 * ANS('DCL 1 SELRB BASED,'|| 07009142 * ' /*SELECT REQUEST BLOCK @G24LB04*/')SKIP; 07014742 * ANS(' 2 SELRBLEN FIXED(31), /*LENGTH'|| 07016742 * ' OF BLOCK @G24LB04*/')SKIP; 07018742 * ANS(' 2 SELRBOPC FIXED(8), /*SELECT'|| 07019142 * ' OPCODE @G24LB04*/')SKIP; 07019542 * ANS(' 2 SELFLGS1 BIT(8), /* ALLOCATION FLAGS'|| 07019942 * ' @G24LB04*/')SKIP; 07020042 * ANS(' 3 SELPARMT BIT(1) , /*PARALLEL MOUNT REQUESTED '|| 07020142 * '@G24LB04*/')SKIP; 07022142 * ANS(' 3 SELDEFER BIT(1) , /*DEFERRED MOUNT REQUESTED '|| 07072142 * '@G24LB04*/')SKIP; 07082142 * ANS(' 3 SELSEPVL BIT(1) , /*SEPVOL REQUESTED '|| 07092142 * '@G24LB04*/')SKIP; 07102142 * ANS(' 3 SELVENQV BIT(1) , /*VOLUME ENQUEUE VALID '|| 07112142 * '@G24LB04*/')SKIP; 07114142 * ANS(' 3 SELVOLRF BIT(1) , /*VOLUME REFERBACK TO DDNAME '|| 07114642 * ' REQUESTED @G24LB04*/')SKIP; 07115042 * ANS(' 3 SELVRNEW BIT(1) , /*REFERENCED DD IS FOR NEW '|| 07115442 * 'DATA SET @G24LB04*/')SKIP; 07115542 * ANS(' 3 SELVRGRP BIT(1) , /*REFERENCED DD IS FOR GROUP '|| 07115642 * 'VOLUME (IF NEW) @G24LB04*/')SKIP; 07116042 * ANS(' 3 SELMXESO BIT(1), /* MIXED ESOTERIC REQUEST'|| 07116942 * ' @G24LB04*/')SKIP; 07117342 * ANS(' 2 SELFLGS2 BIT(8), /* ALLOCATION/MSVC FLAGS'|| 07117742 * ' @G24LB04*/')SKIP; 07118142 * ANS(' 3 SELPRSPL BIT(1) , /*RESERVED FOR VS1 USE '|| 07118342 * '@G24LB04*/')SKIP; 07118742 * ANS(' 3 SELSCSPL BIT(1) , /*RESERVED FOR VS1 USE '|| 07118842 * '@G24LB04*/')SKIP; 07118942 * ANS(' 3 SELSUBAL BIT(1) , /*RESERVED FOR VS1 USE '|| 07119042 * '@G24LB04*/')SKIP; 07119442 * ANS(' 3 SELUNSEP BIT(1) , /*RESERVED FOR VS1 USE '|| 07121142 * '@G24LB04*/')SKIP; 07123142 * ANS(' 3 SELCNTWT BIT(1) , /*CAN NOT WAIT REQUEST '|| 07125142 * '@G24LB04*/')SKIP; 07126742 * ANS(' 3 SELINITC BIT(1) , /*INITIAL CALL FOR STEP OR '|| 07128742 * ' DYNAMIC ALLOCATION @G24LB04*/')SKIP; 07130742 * ANS(' 3 SELRPRIV BIT(1) , /*MARK REQUEST PRIVATE '|| 07136542 * ' @G24LB04*/')SKIP; 07138142 * ANS(' 3 SELNOVSL BIT(1) , /*NO VOLUMES WERE SELECTED '|| 07139742 * ' @G24LB04*/')SKIP; 07141342 * ANS(' 2 SELUNCNT FIXED(8),/*UNIT COUNT '|| 07143342 * '@G24LB04*/')SKIP; 07145342 * ANS(' 2 SELJOBID FIXED(31), /*ASID'|| 07146142 * ' @G24LB04*/')SKIP; 07147742 * ANS(' 2 SELJFCBA PTR(31),/*ADDRESS OF JFCB '|| 07149342 * '@G24LB04*/')SKIP; 07150942 * ANS(' 2 SELDEVTP CHAR(4) , /*INTERNAL DEVICE TYPE '|| 07152542 * '@G24LB04*/')SKIP; 07154142 * ANS(' 2 SELUCBAD PTR(31) , /*ADDRESS OF UCB (IF '|| 07155742 * 'SPECIFIC UNIT REQUESTED) @G24LB04*/')SKIP; 07157342 * ANS(' 2 SELJOBNM CHAR(8) , /*JOBNAME '|| 07158942 * ' @G24LB04*/')SKIP; 07160542 * ANS(' 2 SELDDNAM CHAR(8) , /*DD NAME '|| 07162142 * ' @G24LB04*/')SKIP; 07163742 * ANS(' 2 SELSTNUM FIXED(8) , /*STEP NUMBER '|| 07165342 * ' @G24LB04*/')SKIP; 07166942 * ANS(' 2 SELUNUS1 CHAR(1),/*UNUSED '|| 07167342 * '@G24LB04*/')SKIP; 07167742 * ANS(' 2 SELDDCAT FIXED(15), /*DD RELATIVE CONCATENATION'|| 07168542 * ' NUMBER @G24LB04*/')SKIP; 07170142 * ANS(' 2 SELDDNUM FIXED(15) , /*CURRENT DD NUMBER, '|| 07170542 * 'ZERO FOR DYNAMIC ALLOCATION @G24LB04*/')SKIP; 07170942 * ANS(' 2 SELRFDDN FIXED(15) , /*REFERENCED DD NUMBER '|| 07174942 * '(FOR SEPVOL) @G24LB04*/')SKIP; 07176542 * ANS(' 2 SELUNUS2 CHAR(4),/*UNUSED '|| 07178142 * '@G24LB04*/')SKIP; 07179742 * ANS(' 2 SELJFCBX PTR(31) , /*ADDRESS OF FIRST JFCB '|| 07181342 * 'EXTENSION @G24LB04*/')SKIP; 07182942 * ANS(' 2 SELVLRET PTR(31),/*ADDRESS OF VOLUME SERIAL '|| 07184542 * 'RETURN AREA @G24LB04*/')SKIP; 07186142 * ANS(' 2 SELGRPPR PTR(31),/*ADDRESS OF GROUP PARAMETERS '|| 07186542 * 'AREA @G24LB04*/')SKIP; 07186942 * ANS(' 2 SELUNUSE CHAR(8);/*UNUSED @G24LB04*/')SKIP; 07187742 * ANS('DCL SELLEN FIXED(8) CONSTANT(72);'|| 07189342 * '/*SELECT REQUEST LENGTH @G24LB04*/')SKIP; 07190942 * ANS('DCL SELOPCD BIT(8) CONSTANT(' || QUOTE('89') || 'X);'|| 07192542 * '/*SELECT OP CODE @G24LB04*/')SKIP; 07194142 * GO TO FINISH; /* @G24LB04*/ 07195742 * END; /* @G24LB04*/ 07197342 */* @G24LB04*/ 07198942 * ELSE /*PROCESS TERMINATE REQ BLK @G24LB04*/ 07200542 * DO; /*PRINT TERMINATE REQ BLK @G24LB04*/ 07202142 * ANS('/*******************************************'|| 07203742 * '************** @G24LB04*/')SKIP; 07205342 * ANS('/*MACMEAN MSSC TERMINATE MACRO '|| 07206942 * ' @G24LB04*/')SKIP; 07208542 * ANS('/*MVS VERSION--06/16/76 '|| 07210142 * ' @G24LB04*/')SKIP; 07211742 * ANS('/*THIS IS THE UNINITIALIZED LIST FORM '|| 07213342 * ' @G24LB04*/')SKIP; 07214942 * ANS('/*******************************************'|| 07216542 * '************** @G24LB04*/')SKIP; 07218142 * ANS('DCL 1 TRMRB BASED,'|| 07219742 * ' /*TERMINATE REQUEST BLOCK @G24LB04*/')SKIP; 07221342 * ANS(' 2 TRMRBLEN FIXED(31),/*LENGTH OF'|| 07222942 * ' TERMINATE REQ BLK @G24LB04*/')SKIP; 07224542 * ANS(' 2 TRMRBOPC FIXED(8),/*TERMINATE'|| 07234542 * ' OPCODE @G24LB04*/')SKIP; 07244542 * ANS(' 2 TRMFLAGS BIT(8), /*ALLOCATION FLAGS'|| 07258542 * ' @G24LB04*/')SKIP; 07260542 * ANS(' 3 TRMALLOK BIT(1), /*STEP ALLOCATED '|| 07262542 * 'SUCCESSFULLY @G24LB04*/')SKIP; 07262942 * ANS(' 3 TRMSCHAB BIT(1), /*RESERVED FOR VS1 USE '|| 07263342 * ' @G24LB04*/')SKIP; 07263742 * ANS(' 3 * BIT(6), /*UNUSED BITS'|| 07264142 * ' @G24LB04*/')SKIP; 07264242 * ANS(' 2 * CHAR(2), /* UNUSED @G24LB04*/')SKIP; 07264342 * ANS(' 2 TRMJOBID FIXED(31), /*ASID @G24LB04*/')SKIP; 07264442 * ANS(' 2 TRMSTHDR PTR(31);/*STEP TABLE HEADER ADDRESS' || 07281142 * ' @G24LB04*/')SKIP; 07283142 * ANS('DCL TRMLEN FIXED(8) CONSTANT(16);/*TERMINATE REQUEST ' 07291142 * || 'LENGTH @G24LB04*/')SKIP; 07301142 * ANS('DCL TRMOPCD BIT(8) CONSTANT(' || QUOTE('8A') || 'X);'|| 07303142 * '/*TERMINATE OP CODE @G24LB04*/')SKIP; 07403142 * END; /* @G24LB04*/ 07453142 */* @G24LB04*/ 07503142 *FINISH: RETURN CODE(RETCODE); /*SET RETURN CODE @G24LB04*/ 08687542 * %END; /*@G24LB04*/ 08697542