I almost wrote a "GENDCB" function. My motivation was a little different. I wanted something that could be called from a higher level language (so that one could then implement functions not supported natively by the language library, such as better BPAM support).
I ended up wimping out and just building a tiny subset that generated the specific DCB I wanted -- copied from a model, really. I considered a couple of approaches, one of them being invoking HLASM and the binder dynamically. Charles -----Original Message----- From: IBM Mainframe Assembler List [mailto:ASSEMBLER-LIST@LISTSERV.UGA.EDU] On Behalf Of Willy Jensen Sent: Monday, September 19, 2022 10:05 AM To: ASSEMBLER-LIST@LISTSERV.UGA.EDU Subject: SV: Assembler courses Even so, I did eventually write a macro to handle DCBs from a 31-bit program. The macro does GEN, MOD, OPEN, CLOSE, GET, PUT and EXPOSE with dynamically allocated storage. GET and PUT can determine whether the dataset is FB or VB and read or write data accordingly, aka PL/I GET/PUT DATA (as I recall). While perhaps minor, it does make my coding a bit simpler. Plus it was fun to do, though I probably spent more time developing it than I will ever save having it.