This works for me on z/OS 2.5... PROC 1 ASMMEM CONTROL PROMPT /* WRITE &NRSTR(==ASM==) /* ASM T(&ASMMEM) LO(T(&ASMMEM)) LIST TEST ESD XREF RLD LIB(T.ASM) WRITE &NRSTR(==LINK==) ALLOC DA(T.OBJ) DD(WIZLIN) SHR REU SET NULL = LINK (*) LOAD(T.LOAD) PRINT(*) NCAL XREF LIST LET TEST DATA PROMPT INCLUDE WIZLIN(&ASMMEM.) ENTRY &ASMMEM NAME &ASMMEM.(R)
ENDDATA &NULL It displays: ==LINK== IKJ76080A ENTER CONTROL STATEMENTS- IKJ76111I END OF CONTROL STATEMENTS z/OS V2 R5 BINDER 10:29:14 WEDNESDAY JUNE 3, 2026 (rest of binder listing) Notes: * I don't have an ASM command so I commented that out * The LOAD parameter may NOT be abbreviated to LO * Note the blank line between NAME and ENDDATA (&ZNULL works too). The blank line is REQUIRED. This is because that's how the LINK knows that you're done with control statements. Without it, it will still be asking for more, and since there's nothing else in the DATA PROMPT, you'll need to hit Enter at the terminal. See https://www.ibm.com/docs/en/zos/2.5.0?topic=command-link-operands: "You can substitute an asterisk (*) for a data set name to indicate that you can enter control statements from your terminal. The system prompts you to enter the control statements. A null line indicates the end of your control statements." IBM's documentation for DATA PROMPT gives an example of LINK, but it is missing the null card before ENDDATA. That's a documentation error: https://www.ibm.com/docs/en/zos/2.5.0?topic=commands-coding-responses-prompts-data-prompt-enddata-sequence -----Original Message----- From: IBM Mainframe Discussion List <[email protected]> On Behalf Of Rupert Reynolds Sent: Tuesday, June 2, 2026 12:17 PM To: [email protected] Subject: Any CLIST fans still here? I can't make DATA PROMPT work Any suggestions, please? I'll paste the CLIST below. I just wanted a quick 'n' easy assemble and link, and so I threw this together. I could save the LINK control statements to a dataset, but putting them between DATA PROMPT and ENDDATA should work. I'm using TK5 (turnkey MVS 3.8j) but CLIST should work much the same. I even changed it to look more like IBM's example in their online doc, without success. LINK runs and asks for control statements and if I send them, the LINK runs OK but then the prompt data runs as commands after LINK has finished: 000001 PROC 1 ASMMEM 000002 /* TROL SYMLIST CONLIST LIST */ 000003 CONTROL PROMPT LIST 000004 WRITE &NRSTR(==ASM==) 000005 ASM T(&ASMMEM) LO(T(&ASMMEM)) LIST TEST ESD XREF RLD LIB(T.ASM) 000006 WRITE &NRSTR(==LINK==) 000007 ALLOC DA(T.OBJ) DD(WIZLIN) SHR REU 000008 SET NULL = 000009 LINK * LO(T.LOAD) PR(*) NCAL XREF LIST LET TEST 000010 DATA PROMPT 000011 INCLUDE WIZLIN(&ASMMEM.) 000012 ENTRY &ASMMEM 000013 NAME &ASMMEM.(R) 000014 ENDDATA 000015 &NULL ****** ****ZAP****AUTOSAVE********* BOTTOM OF DATA -- Roops "Mundus sine caesaribus" ---------------------------------------------------------------------- For IBM-MAIN subscribe / signoff / archive access instructions, send email to [email protected] with the message: INFO IBM-MAIN ---------------------------------------------------------------------- For IBM-MAIN subscribe / signoff / archive access instructions, send email to [email protected] with the message: INFO IBM-MAIN
