What I've done - and I just had to do this recently - is to add a GETMAIN of a 24-bit work area, and move the initial DCB's from your (now) RMODE 31 program into the area. Any exit addresses (such as EODAD) that can be moved to DCBE should be (and don't forget about moving the buffers above the line, too).
The Macro Instructions manual has some example code on what to do if you have EXLST exits, using run-time-built glue code. http://publibz.boulder.ibm.com/cgi-bin/bookmgr_OS390/BOOKS/dgt2d510/2.2.2.1 (Actually, that example shows how to do the DCB move, too.) One thing I'll mention, because I just saw it - BDAM and BDAM load using BSAM don't work in RMODE 31. Later, Ray -----Original Message----- From: IBM Mainframe Discussion List [mailto:[EMAIL PROTECTED] On Behalf Of Charles Mills Sent: Monday August 01 2005 12:47 To: IBM-MAIN@BAMA.UA.EDU Subject: Reference for DCB coexistence with RMODE 31 programs? Okay, I admit it, this is kind of an embarrassingly newbie-ish post for someone who has been writing assembler for 36 years. My only excuse is that having sold my old company lock, stock, and barrel, and now working solo, I have no old reference code to fall back on. I've got some assembler subroutines (non-reentrant) in which I rather lazily embedded QSAM and BPAM macros. That of course limits the code to RMODE=24. I would like to move the necessary control blocks to AMODE=24 STORAGE and let the code be RMODE ANY31. (The code currently runs AMODE ANY with no problems.) Question: is there any reference that provides a succinct statement of the steps necessary? (If not, why not, but that's a different topic.) Yes, I know each macro is separately documented in the two DFSMS manuals, but I mean, is there any overview of the conversion steps necessary. If there isn't a manual, I would welcome this esteemed group's input. I need to move the DCB to AMODE=24 STORAGE. I need to point each DCB to its own DCBE, which can be above the line, and I need to move the appropriate EODAD= and so forth operands to the DCBE. What else? I don't need a tutorial on 24-bit adcons or anything, I'm very familiar with the theoretical concepts and the usage of the macros in general, just what else specifically do I need to do to get from RMODE 24 code to RMODE ANY31? I'm familiar with DSECTs and copying model control blocks from CSECTs to STORAGE areas. What are the gotchas? The code in question has both DCB abend and SYNAD exits. Thanks! Charles Mills ---------------------------------------------------------------------- For IBM-MAIN subscribe / signoff / archive access instructions, send email to [EMAIL PROTECTED] with the message: GET IBM-MAIN INFO Search the archives at http://bama.ua.edu/archives/ibm-main.html ---------------------------------------------------------------------- For IBM-MAIN subscribe / signoff / archive access instructions, send email to [EMAIL PROTECTED] with the message: GET IBM-MAIN INFO Search the archives at http://bama.ua.edu/archives/ibm-main.html