77 lines
		
	
	
		
			2.9 KiB
		
	
	
	
		
			Plaintext
		
	
	
	
	
	
			
		
		
	
	
			77 lines
		
	
	
		
			2.9 KiB
		
	
	
	
		
			Plaintext
		
	
	
	
	
	
| 
 | |
| This directory contains a Pascal (Delphi, Kylix) interface to the
 | |
| zlib data compression library.
 | |
| 
 | |
| 
 | |
| Directory listing
 | |
| =================
 | |
| 
 | |
| zlibd32.mak     makefile for Borland C++
 | |
| example.pas     usage example of zlib
 | |
| zlibpas.pas     the Pascal interface to zlib
 | |
| readme.txt      this file
 | |
| 
 | |
| 
 | |
| Compatibility notes
 | |
| ===================
 | |
| 
 | |
| - Although the name "zlib" would have been more normal for the
 | |
|   zlibpas unit, this name is already taken by Borland's ZLib unit.
 | |
|   This is somehow unfortunate, because that unit is not a genuine
 | |
|   interface to the full-fledged zlib functionality, but a suite of
 | |
|   class wrappers around zlib streams.  Other essential features,
 | |
|   such as checksums, are missing.
 | |
|   It would have been more appropriate for that unit to have a name
 | |
|   like "ZStreams", or something similar.
 | |
| 
 | |
| - The C and zlib-supplied types int, uInt, long, uLong, etc. are
 | |
|   translated directly into Pascal types of similar sizes (Integer,
 | |
|   LongInt, etc.), to avoid namespace pollution.  In particular,
 | |
|   there is no conversion of unsigned int into a Pascal unsigned
 | |
|   integer.  The Word type is non-portable and has the same size
 | |
|   (16 bits) both in a 16-bit and in a 32-bit environment, unlike
 | |
|   Integer.  Even if there is a 32-bit Cardinal type, there is no
 | |
|   real need for unsigned int in zlib under a 32-bit environment.
 | |
| 
 | |
| - Except for the callbacks, the zlib function interfaces are
 | |
|   assuming the calling convention normally used in Pascal
 | |
|   (__pascal for DOS and Windows16, __fastcall for Windows32).
 | |
|   Since the cdecl keyword is used, the old Turbo Pascal does
 | |
|   not work with this interface.
 | |
| 
 | |
| - The gz* function interfaces are not translated, to avoid
 | |
|   interfacing problems with the C runtime library.  Besides,
 | |
|     gzprintf(gzFile file, const char *format, ...)
 | |
|   cannot be translated into Pascal.
 | |
| 
 | |
| 
 | |
| Legal issues
 | |
| ============
 | |
| 
 | |
| The zlibpas interface is:
 | |
|   Copyright (C) 1995-2003 Jean-loup Gailly and Mark Adler.
 | |
|   Copyright (C) 1998 by Bob Dellaca.
 | |
|   Copyright (C) 2003 by Cosmin Truta.
 | |
| 
 | |
| The example program is:
 | |
|   Copyright (C) 1995-2003 by Jean-loup Gailly.
 | |
|   Copyright (C) 1998,1999,2000 by Jacques Nomssi Nzali.
 | |
|   Copyright (C) 2003 by Cosmin Truta.
 | |
| 
 | |
|   This software is provided 'as-is', without any express or implied
 | |
|   warranty.  In no event will the author be held liable for any damages
 | |
|   arising from the use of this software.
 | |
| 
 | |
|   Permission is granted to anyone to use this software for any purpose,
 | |
|   including commercial applications, and to alter it and redistribute it
 | |
|   freely, subject to the following restrictions:
 | |
| 
 | |
|   1. The origin of this software must not be misrepresented; you must not
 | |
|      claim that you wrote the original software. If you use this software
 | |
|      in a product, an acknowledgment in the product documentation would be
 | |
|      appreciated but is not required.
 | |
|   2. Altered source versions must be plainly marked as such, and must not be
 | |
|      misrepresented as being the original software.
 | |
|   3. This notice may not be removed or altered from any source distribution.
 | |
| 
 | 
