From my notes: Re: Calling PL/I from Rexx Yes, that should work.
I would add NOEXECOPS to the main's options, to avoid the need for the leading '/', as the '/' tends to get forgotten. My personal preference is to specify: *PROCESS SYSTEM (TSO); PLIMOD: PROC (CPPLPTR) OPTIONS (MAIN REENTRANT) REORDER; DCL CPPLPTR PTR, 1 CPPL BASED (CPPLPTR), 3 CPPLCBUF PTR, /* MAPPED BY CBUF BELOW */ 3 CPPLUPT PTR, /* MAPPING: SEE SYS1.MACLIB(IKJUPT) */ 3 CPPLPSCB PTR, /* MAPPING: SEE SYS1.MACLIB(IKJPSCB) */ 3 CPPLECT PTR; /* MAPPING: SEE SYS1.MACLIB(IKECPT) */ DCL 1 CBUF BASED (CPPL.CPPLCBUF), 3 CBUFLEN FIXED BIN (15), 3 CBUFOFFS FIXED BIN (15), 3 CBUFCMD CHAR (32767); /* ACTUAL LENGTH IS CBUFLEN - 4 */ DCL PARM CHAR (CBUF.CBUFLEN - CBUF.CBUFOFFS - 4) VAR INIT ((SUBSTR (CBUF.CBUFCMD, CBUF.CBUFOFFS + 1, CBUF.CBUFLEN - CBUF.CBUFOFFS - 4))); so as to be able to write a TSO command processor. In the above code, I've also included the declaration for PARM that will give you the same effect as on your example, but without the 100 character limit. Good luck. DJ ---------------------------------------------------------------------- For IBM-MAIN subscribe / signoff / archive access instructions, send email to lists...@listserv.ua.edu with the message: INFO IBM-MAIN