* /* START OF SPECIFICATIONS **** 02810000 * 02820000 *01* MODULE-NAME = USSPARM 02830000 * 02840000 *01* DESCRIPTIVE-NAME = USS PARAMETER DEFINITION MACRO 02842000 * 02844000 *01* COPYRIGHT = NONE 02846000 * 02848000 *01* STATUS = RELEASE 2 02848400 * 02848800 *01* FUNCTION = THE PURPOSE OF THIS MACRO IS TO GENERATE A PPB 02849200 * (PARAMETER PROCESSING BLOCK). THE BLOCK IS USED IN CONJUNCTION 02849600 * WITH A VPB ONLY. THE MACRO CREATS A 4 WORD TABLE CONSISTING OF 02849700 * CHAIN POINTER,KEYWORD POINTER, REPLACEMENT POINTER, AND A DEFAULT 02853000 * VALUE, THE HIGH ORDER BYTE OF EACH IS THE LENGTH OF THE DATA 02855000 * POINTED TO. IN ADDITION THE LAST THREE DATA ITEMS ARE GENERATED 02855400 * USING INTERNAL CALLS TO THE USSEND MACRO. 02855800 * 02856700 *02* CHARACTER-CODE-DEPENDENCIES = NONE 02860000 * 02863300 *02* DEPENDENCIES= NONE 02866600 * 02876600 *02* RESTRICTIONS = NONE 02878600 * 02880600 *02* REGISTER-CONVENTIONS = NONE 02882600 * 02883000 *02* PATCH-LABEL = NONE 02883100 * 02883200 *01* MODULE-TYPE = MACRO 02888800 * 02890800 *02* PROCESSOR = ASSEM-370R 02892800 * 02893200 *02* MACRO-SIZE = 19 STATEMENTS 02893600 * 02894000 *02* ATTRIBUTES = LIST-EXEC 02894100 * 02894200 *01* ENTRY-POINT = NA 02894300 * 02908200 *01* EXIT-NORMAL = NA 02918200 * 02920200 *01* EXIT-ERROR = NA 02920600 * 02921000 *01* EXTERNAL-REFERENCES = NONE 02921400 * 02921800 *01* TABLES = PPB (PARAMETER PROCESSING BLOCK) 02921900 * 02922000 *01* INNER-MACROS = USSEND 02922100 * 02926700 *01* SYSTEM-MACROS = NONE 02928700 * 02930700 *01* CHANGE-ACTIVITY = AS-FOLLOWS 02931100 * NEW MACRO - FIRST RELEASE 32 DOS/VS 02931200 * 04 OS/VS1 02931300 * 03 OS/VS2 02931400 * APAR OZ26263 ADDITIONAL VALIDITY CHECKS @ZA26263 02933400 **** END OF SPECIFICATIONS ***/ 02936000 MACRO 02938100 &LABEL USSPARM &PARM=,&REP=,&DEFAULT= 02940800 GBLC &Q USSEND OUTPUT VARIABLE 02945400 GBLC &T USSEND OUTPUT VARIABLE 02950000 GBLC &N STATEMENT LABEL PREFIX 03000000 GBLB &B SWITCH FOR USSCMD SPECIFIED 03004000 GBLB &Z SWITCH FOR USSTAB SPECIFIED 03008000 AIF (&Z EQ 1).SQ005 03012000 SPACE 1 03016000 MNOTE 4,'USSTAB MACRO NOT SPECIFIED' 03020000 .SQ005 ANOP 03024000 AIF (&B EQ 1).SQ007 03028000 SPACE 1 03032000 MNOTE 4,'USSCMD MACRO NOT SPECIFIED' 03036000 .SQ007 ANOP 03040000 AIF ('&PARM' NE '').SQ010 03050000 SPACE 1 03100000 MNOTE 4,'&N.001 PARM= PARAMETER OMITTED' 03150000 .SQ010 USSEND INC=P INCREMENT USSPARM COUNTER 03200000 SPACE 1 03250000 &LABEL DC 0F'0' ALIGN ON FULLWORD BOUNDARY 03300000 &N.P&T DC A(&N.P&Q) ADDR NEXT USSPARM BLOCK 03350000 DC A(&N.K&T) ADDR KEYWORD CHAR STRING 03400000 DC A(&N.A&T) ADDR REPLACEMENT STRING 03450000 DC A(&N.D&T) ADDR DEFAULT VALUE STRING 03500000 &N.K&T USSEND GEN=&PARM,NAME=&N.L&T 03550000 &N.A&T USSEND GEN=&REP,NAME=&N.B&T,OMIT=&N.K&T 03600000 &N.D&T USSEND GEN=&DEFAULT,NAME=&N.E&T 03650000 SPACE 1 03700000 MEND 03750000