BPCOMPAT - New "Borland" compatible UNITs for GPC !!!
Sat, 17 May 1997 23:54:55 +0100 (BST)
Hi GPC folks!
This is to announce the release of BPCOMPAT v 1.0, which has now been
uploaded to agnes (in the "contrib" directory). If you are looking for
greater Borland Pascal compatibility and/or you are looking for a big
function library for GPC, you please download this package.
You can get a copy from;
ftp://agnes.dida.physik.uni-essen.de/gnu-pascal/contrib/bpcompat.zip
This package serves a number of functions;
1. To provide UNITS for GPC in order to improve is compatibility
with Borland Pascal.
This package provides the following units for Borland Pascal ("BP")
and Delphi compatibility;
SYSTEM.PAS - BP compatible "SYSTEM" unit
CRT.PAS - BP compatible CRT unit
DOS.PAS - BP compatible DOS unit
OBJECTS.PAS - BP compatible OBJECTS unit
STRINGS.PAS - BP compatible STRINGS unit
SYSUTILS.PAS - DELPHI compatible SYSUTILS unit
GPCTYPES.PAS - various type definitions
XSYSTEM.PAS - extra vital system stuff - not in BP
GPCUTIL.PAS - Chief's Utilites unit - needed by some units
NOTE: some of the BP and Delphi compatible units contain missing features,
some things are quite different from the BP equivalents, and some of
the routines do not work well. Differences are clearly marked in the
source code, and those routines that do not work well are also
clearly marked.
2. To provide a library of useful routines for GPC - some of them
take the form of UNITs which import various routines from the C
library - i.e., they are import units for various ".H" files in
the C library. The routines which are not imported C functions are
contained in GPCUTIL.PAS. Some of them provide compatibility with
TurboPower Software's "Turbo Professional" library.
Some of the functions in the converted C headers will not work properly
- if you can make them work, fine. If not, please don't mail me - I
can't make them work either.
3. To provide a shell program ("GPCC") for the GPC compiler. GPCC will
accept parameters from the command line, and will also read parameters
from an ascii file GPCC.CFG. All these will be passed on to the GPC
compiler. GPCC also will detect whether the source file is a UNIT or a
PROGRAM, and will pass extra parameters to the GPC compiler as required.
GPCC is tailored to work a bit similarly to the Borland command line
compiler (TPC or BPC).
These are the import UNITs for various C header files;
BIOS.PAS
CONIO.PAS
CTYPE.PAS
DIR.PAS
DOSH.PAS
DPMI.PAS
ERRORNO.PAS
FCNTL.PAS
IO.PAS
PC.PAS
PROCESS.PAS
STATS.PAS
STDIO.PAS
STDLIB.PAS
STRINGH.PAS
SYS.PAS
TIME.PAS
UNISTD.PAS
VALUES.PAS
IMPROVEMENTS
------------
It is my hope that someone (or some people) will take this on from here,
and improve on this package. Some of the functions could be written more
efficiently. My main concern has been to provide working and reliable
implementations of various parts of the BP runtime library - not to
implement the functions in the most efficient way.
It is also my hope that the package will be ported to other platforms.
The current one has only been tested under DOS (DJGPP - but it should also
be okay for EMX). However, I made sure that the SYSTEM.PAS unit uses only
portable functions from the C library - so that should be easy to port to
Linux and other Unix platforms. The DOS and CRT units are not portable to
unix as they are. It would be nice if someone could port them to unix.
If you can improve on the efficiency, and/or if you can implement some of
the missing (or unreliable) routines, and/or if you can port these UNITs
to other platforms, please feel free to do so!!!
All I ask is this. Please, let this work be done in a coordinated fashion;
a. If anyone is working on anything, please let me know *exactly*
what you are doing or proposing to do, so that there will be no
duplication of efforts;
b. Please follow the conventions in the existing code, for comments,
spacing, and so on;
c. Please mark clearly any changes that you have made to my code, or
to Peter's code;
d. If you are working on the SYSTEM unit, please ensure that what you
are doing it portable (e.g., by using only C functions that are
portable across DOS, OS/2, Unix, etc.);
e. When uploading your work, please upload everything in one package
(.zip file), and put a version number on it.
f. Please inform Peter and me when you are ready to upload a new
version.
BUGS
----
If you find bugs, please try to fix them - but please report them to
me as well. If you fix them, please let me have a copy of the fix.
Happy coding!
Warmest regards,
The Chief
---------
Dr. Abimbola A. Olowofoyeku (The African Chief and The Great Elephant)
Keele University, England (Email: laa12@cc.keele.ac.uk)
Author of: Chief's Installer Pro v3.50 for Win16 and Win32
Homepage: http://ourworld.compuserve.com/homepages/African_Chief/
A.A. Olowofoyeku (laa12@cc.keele.ac.uk)
HTML conversion by Lluís de Yzaguirre i Maura
Institut de Lingüística Aplicada -
Universitat "Pompeu Fabra"
e-mail: de_yza@upf.es