On Wednesday 22 March 2006 04:09, Andy Robertson wrote: > On Tue, 21 Mar 2006 13:47:20 -0500, john stephens <[EMAIL PROTECTED]>
....snip..... > > > This is static not dynamic linkage but bear with me > > We faced similar problems to you with the additional constraint that we > had to call our dynamically loadable subroutines from Assembler, Cobol, > non-LE-compliant assembler, and C mains, all of them pre-existing and some > calling old routines written in assembler or COBOL which we wanted to > replace by C routines of the same name. > > Some of these calls used dynamic COBOL load, some used the LOAD macro. > > We could not use DLL because you can't mix DLLs and COBOL dynamic load in > one run unit. > > > > Our solution was to wrap our C routines in a small COBOL wrapper, then > they look to everything like COBOL. You just call your C code from a > cobol program (as above) but you make the COBOL program a subroutine and > call the COBOL subroutine from your mainlines. Inelegant but works > robustly. > > > > If you can create a new clean run time environment and you have no > assembler you can go for DLL on MVS (I can show you how to do this as > well). > c Andy, Thank you. This is a tremendous help. A couple of questions. What is the purpose of the pre-link steps and under what conditions (if any) are they required / optional? I would prefer to have the stub program be in assembler. Can I assume that standard rules apply (ie. loading parm list at R1 and BALR R14,R15 or BASSM R14,R15)? ---------------------------------------------------------------------- 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