Path: utzoo!utgpu!news-server.csri.toronto.edu!cs.utexas.edu!usc!rpi!uupsi!sunic!dkuug!diku!terra From: terra@diku.dk (Morten Welinder) Newsgroups: comp.binaries.ibm.pc.d Subject: Re: TPU converter for Turbo Pascal Message-ID: <1991Apr16.102030.2368@odin.diku.dk> Date: 16 Apr 91 10:20:30 GMT References: <16185.2809dc29@levels.sait.edu.au> <1991Apr15.151522.9547@uwasa.fi> Sender: news@odin.diku.dk (Netnews System) Organization: Department of Computer Science, U of Copenhagen Lines: 28 ts@uwasa.fi (Timo Salmi) writes: >In article <16185.2809dc29@levels.sait.edu.au> et891856@levels.sait.edu.au (It's the Bishop .....) writes: >> >>Does anyone know of a program that converts between the different TPU >>formats used in varying versions of Turbo Pascal ? >: >Can't be done. This is one of the annoying facets of Borland's >upgade policy of its otherwise excellent products. The only way to >go about it is having the source code of the unit. It is possible. One way to do it is: 1. Read and decipher source .Tpu 2. Translate references to System.Tpu to target version offsets 3. Write target .Tpu in target version format. This should work for converting Tpu's as long as the versions use the same calling convensions. (There are some diffenrences between 4.x and (5.x,6.x) when passing extended reals). (I didn't say anything about this being easy!) For help on 1. & 3. see the different Tpu-file-listers out there. On 2.: For each version of the system unit, one might establish a correspondance between offsets and routine names. I think most of these pairs (offset,name) can be found when listing System.Tpu (correct?)