Subj : PL/I v 2.1 FixPak 6 To : David Noon From : Murray Lesser Date : Wed Aug 02 2000 11:40 pm Hi David-- This is a message from the "eat your cake and have it too" department. As you may remember, I have been perturbed over the fact that IBM has dropped support for thunking to and from 16-bit code from FP6 for PL/I for OS/2. In my usual fashion, I complained and asked for help, before thinking things through. Since all the help (all three replies) were not useful to me, I decided to think things out for myself. I have now solved my problem. (There may be several morals in this, but I'm not going to dig them out.) My easy solution to the problem requires no new 32-bit substitute API calls, no recompiling, no relinking of existing programs, and still allows me to use all the existing 16-bit OS/2 API calls. I determined that the "new" upgraded version of PL/I for OS/2 will link calling programs to "library" procedures that contain thunked code to/from 16-bit OS/2 APIs with no problems. The new runtime DLLs will run utilities containing such thunked-code separately compiled utilities. Eureka! So, I installed PL/I for OS/2 at FP4 level on a Zip diskette, and added another icon (yclept "Old Pl/I Compiler") to my desktop. I can now write and compile "new" separately compiled procedures containing thunking code and load them into my static-link library. Once filed in the library, they are available to all new PL/I programs written/compiled with the FP6 "new" version of the compiler, which has again replaced its predecessor on my HD. Of course, compiling off of a Zip diskette attached through the parallel port is painfully slow (by modern standards). But I don't suppose that I will do it very often, and it takes up an infinitesimal amount of HD space. (HD space might be cheap by modern standpoints, but not when that HD is the only one in an obsolete ThinkPad.) For general interest, moving the compiler to the FAT-formatted Zip diskette was very easy. I used the OS/2 BACKUP and RESTORE utilities, to move all the extended attributes with it. All I had to change in the REXX program that sets up the local compiler environment was all occurrences of "H:" (the partition containing my compilers) to "K:" (the Zip drive partition) and change the "parameters" line and the title of a copy of the Program Object accordingly. I suppose that I could run both compilers in separate sessions simultaneously, if I could think of a reason to do so :-). Regards, --Murray ___ * MR/2 2.30 #120 * Old engineering adage: there is more than one way to skin a cat --- Maximus/2 3.01 * Origin: COMM Port OS/2 juge.com 204.89.247.1 (281) 980-9671 (1:106/2000) .