-----------------------------
INSIDE TURBO PASCAL 6.0 UNITS
-----------------------------
by
William L. Peavy
-----------------
Revised: April 16, 1991
ABSTRACT
If you want to know what is in a .TPU (unit) file produced
by Version 6.0 of Turbo Pascal from Borland International,
then this paper is for you. It doesn't explain quite
everything since the I don't have access to secret documents
or anything like that and since some of the data in .TPU
files just doesn't have enough auxiliary information to make
its role clear. However, it is possible to learn a great
deal about how Turbo Pascal organizes the information it
needs to refer to, and it is also possible to learn just
what kind of code the compiler produces.
This is the third in a series of reports on the subject of
Turbo Pascal Units, the first treating with Turbo Pascal
Version 5.0 and the second with Turbo Pascal 5.5. The
evolution of these files in the face of changing
requirements has been fascinating to behold and deciphering
their contents has been challenging to say the least.
The programs supplied with this report have been reorganized
from their 5.5 style in some ways and many identifiers have
been changed. These changes were more for style than for
substance. Other changes were dictated by the changes in
the organization of the TPU file itself and certain errors
in the 5.5 programs have been corrected. In addition, other
errors of interpretation have been fixed which has led to
some enhanced descriptive capability.
Since I have a "real" job which requires my full attention,
and since it doesn't involve use of these products in any
direct way, I am usually hard-pressed to find the personal
time to conduct this research. Consequently, I always
refuse to commit to follow-up or even error correction. It
would be irresponsible of me to pretend it could be
otherwise. Even so, this is a revised report which contains
a few error fixes and discusses the newly enhanced program
which incorporates these fixes and sports some enhanced
capabilities.
Files on the Distribution Disk
Filename.x Description of Contents
----------- -------------------------------------------------
README.!!! This file (you're reading it now)
WHATS.NEW Change History
TPU6DOC.TXT Report on Research (48 pages; copy to PRN:)
TPU6.EXE The Supplied Program ready to run
TPU6.PAS Turbo Pascal Source - The Main Program
TPU6AMS.PAS Turbo Pascal Source - Access Methods for .TPU Files
TPU6EQU.PAS Turbo Pascal Source - Release-Sensitive Procs
TPU6RPT.PAS Turbo Pascal Source - Text File Output Unit
TPU6UNA.PAS Turbo Pascal Source - Disassembler Unit
TPU6UNA.INC Turbo Pascal Source - Disassembler Tables (included)
TPU6UTL.PAS Turbo Pascal Source - High-Level .TPU Analysis Methods
License & Restrictions
You are free to use this material at your own risk for your own
personal and NON-COMMERCIAL ends. You are free to distribute COMPLETE
copies of all materials via any means to any recipient provided that
no charge is made therefor save a small and nominal fee whose sole
purpose is to recover reasonable distribution expenses. You MAY NOT
make use of these materials in a commercial manner. No warranties of
any kind are made by the author.
Should your use or distribution of this material result in damages to
you, the damages are yours to bear. The opinions and findings
contained in this material are those of the author and of no other
person.
The Author
This work was done by William L. Peavy, Houston Texas as a private
research endeavor.
I am interested in feedback, suggestions, constructive criticism,
and success stories. A few "atta boys" wouldn't hurt either.
I can be reached via Compuserve (70042,2310), via the HAL-PC
Telecom-1 BBS or via the HAL-PC Telecom-2 BBS.
|