The following sample JCL 1) Assembles the IRXFUSER module 2) Link-edits the module into your target library (usually SYS1.LINKLIB) Note : The SYSLIB dataset should be the object library where the Rexx routines (PDSFLIST, GLOBALV and SVC99DSN) were loaded to. If you have made no previous amendments to IRXFUSER you will find the IBM shipped (dummy) version on SYS1.LINKLIB You should replace that version with your new version. Your new version could, of course, be on another library within the Linklist (so as to avoid updating SYS1.LINKLIB). In addition, the PDSFLIST Rexx function *CAN* run from a 'Private' library. All its required parameters are in the form of Rexx variables, so it can be invoked within a Rexx exec via the CALL TSO command. (see the sample FL exec for an example). If you wish to use this method, just linkedit the PDSFLIST module directly into a library (AMODE 31, RMODE 24). When installing the IRXFUSER module for the first time ensure that you have loaded ALL THREE text decks (PDSFLIST, GLOBALV and SVC99DSN) into your object library referenced by SYSLIB. Failure to do so will result in Linkage errors. //ASMREXX EXEC PGM=ASMA90,PARM='DECK,NOOBJ,ALIGN,LINECOUNT(55)' //SYSLIB DD DSN=SYS1.MACLIB,DISP=SHR //SYSUT1 DD UNIT=SYSDA,DSN=&&SYSUT1,SPACE=(3000,(600,100)) //SYSUT2 DD UNIT=SYSDA,DSN=&&SYSUT2,SPACE=(3000,(600,100)) //SYSUT3 DD UNIT=SYSDA,DSN=&&SYSUT3,SPACE=(3000,(600,100)) //SYSPUNCH DD DSN=&&OBJECT(IRXFUSER),DISP=(NEW,PASS), // DCB=(RECFM=FB,LRECL=80,BLKSIZE=3120), // UNIT=SYSDA,SPACE=(80,(600,100,1)) //SYSPRINT DD SYSOUT=R //SYSIN DD DSN=YOUR.SOURCE.LIBRARY(IRXFUSER),DISP=SHR //* //LKED EXEC PGM=IEWL, // PARM='AMODE=31,RMODE=24,XREF,LIST,LET' //SYSUT1 DD UNIT=SYSDA,DSN=&&SYSUT1,SPACE=(1024,(200,20)) //SYSPRINT DD SYSOUT=R //SYSPUNCH DD DSN=&&OBJECT(IRXFUSER),DISP=(OLD,DELETE) //SYSLMOD DD DSN=SYS1.LINKLIB,DISP=SHR <<<=== TARGET LIBRARY //SYSLIB DD DSN=YOUR.OBJECT.LIBRARY,DISP=SHR <<<=== OBJECT LIBRARY //SYSLIN DD * INCLUDE SYSPUNCH(IRXFUSER) ENTRY IRXFUSER NAME IRXFUSER(R) /*