which included commits to RCS files with non-trunk default branches. git-svn-id: svn://10.65.10.50/trunk@5403 c028cbd2-c16b-5b4b-a496-9718f37d4682
		
			
				
	
	
		
			183 lines
		
	
	
		
			9.5 KiB
		
	
	
	
		
			Plaintext
		
	
	
		
			Executable File
		
	
	
	
	
			
		
		
	
	
			183 lines
		
	
	
		
			9.5 KiB
		
	
	
	
		
			Plaintext
		
	
	
		
			Executable File
		
	
	
	
	
| _______________________________________________________________________________
 | |
| 
 | |
|    This is the Windows CE Info-ZIP port README, last updated 5 April 1997.
 | |
| _______________________________________________________________________________
 | |
| 
 | |
| Contents of the "WinCE" subdirectory for UnZip 5.30 and later:
 | |
| 
 | |
|    README       This file.
 | |
|    Contents     A file containing this Contents list.
 | |
|    punzip.dsp   Visual C++ 5.0 project for WinCE (SH3 and MIPS) and WinNT.
 | |
|    punzip.h     Main header file for the entire Pocket UnZip project.
 | |
|    winmain.cpp  Contains the entire user interface and all Windows code.
 | |
|    winmain.h    Header for winmain.cpp.
 | |
|    intrface.cpp The interface between the Windows code and Info-ZIP code.
 | |
|    intrface.h   Header for intrface.cpp.
 | |
|    wince.cpp    All the Win32 APIs and C runtimes called by Info-ZIP.
 | |
|    wince.h      Header for wince.cpp.
 | |
|    punzip.rc    Resource file for all dialogs, bitmaps, menus, icons, etc.
 | |
|    resource.h   Resource header file for punzip.rc and other source modules.
 | |
|    punzip.rcv   Version resource and version defines.
 | |
|    punzip.ic2   Windows CE app icons (16x16 and 32x32, both 2 bits/pixel).
 | |
|    zipfile.ic2  Windows CE zip icons (16x16 and 32x32, both 2 bits/pixel).
 | |
|    imglist.2bp  Windows CE image list bitmap (2 bits/pixel).
 | |
|    ilmask.bmp   Windows CE image list mask bitmap (1 bit/pixel).
 | |
|    toolbar.2bp  Windows CE toolbar bitmap (2 bits/pixel).
 | |
|    punzip.ico   Windows NT application icons (16x16 and 32x32, 16 bits/pixel).
 | |
|    zipfile.ico  Windows NT zip file icons (16x16 and 32x32, 16 bits/pixel).
 | |
|    imglist.bmp  Windows NT image list bitmap (16 bits/pixel including mask).
 | |
|    toolbar.bmp  Windows NT toolbar bitmap (16 bits/pixel).
 | |
|    punzip.htp   Windows CE help file (rename to punzip.html for WinNT).
 | |
|    inc\         Contains dummy headers that are called by Info-ZIP code.
 | |
| 
 | |
| _______________________________________________________________________________
 | |
| 
 | |
|    Copyright and Disclaimer
 | |
| _______________________________________________________________________________
 | |
| 
 | |
| Copyright
 | |
|      
 | |
|      All the source files for Pocket UnZip, except for components
 | |
|      written by the Info-ZIP group, are copyrighted 1997 by Steve P.
 | |
|      Miller.  The product "Pocket UnZip" itself is property of the
 | |
|      author and cannot be altered in any way without written consent
 | |
|      from Steve P. Miller.
 | |
| 
 | |
| Disclaimer
 | |
|      
 | |
|      All project files are provided "as is" with no guarantee of
 | |
|      their correctness.  The authors are not liable for any outcome
 | |
|      that is the result of using this source.  The source for Pocket
 | |
|      UnZip has been placed in the public domain to help provide an
 | |
|      understanding of its implementation.  You are hereby granted
 | |
|      full permission to use this source in any way you wish, except
 | |
|      to alter Pocket UnZip itself.  For comments, suggestions, and
 | |
|      bug reports, please write to stevemil@pobox.com.
 | |
| 
 | |
| _______________________________________________________________________________
 | |
| 
 | |
|    About the Windows CE Port (known as "Pocket UnZip")
 | |
| _______________________________________________________________________________
 | |
| 
 | |
| The Windows CE port, known as Pocket UnZip, is designed to run on Microsoft's
 | |
| Windows CE operating system.  The port is completely contained in the files
 | |
| listed above.  There were very few minor modifications made to the Info-ZIP
 | |
| code in order for this port to work.  This was possible because the Info-ZIP
 | |
| code is fairly generic and also because several hooks have already been placed
 | |
| in the code from past Windows ports.  The Windows CE port leverages off of
 | |
| these efforts for two reasons.  Mainly, I wanted to avoid modifying the
 | |
| Info-ZIP core code since people don't like it when your changes break other
 | |
| ports.  Second, this makes the Windows CE port easy to upgrade when fixes and
 | |
| features are released by the Info-ZIP group.
 | |
| 
 | |
| The port is made up of the project file (punzip.dsp), one global header
 | |
| (punzip.h), three main source modules (winmain.cpp/h, intrface.cpp/h, and
 | |
| wince.cpp/h), the resource script files (punzip.rc, punzip.rcv, and resource.h),
 | |
| several resources (punzip.ic2, zipfile.ic2, imglist.2bp, ilmask.bmp,
 | |
| toolbar.2bp, punzip.ico, zipfile.ico, imglist.bmp, and toolbar.bmp), and the
 | |
| help file (punzip.htp).
 | |
| 
 | |
| The application's entry point is WinMain(), which is located in winmain.cpp
 | |
| (what a surprise).  winmain.cpp basically contains all the Windows code and the
 | |
| user interface.  It knows nothing about the Info-ZIP code or things like the
 | |
| Globals struct.  That stuff is the job of the intrface module.  intrface.cpp
 | |
| implements an easy (or at least easier) to understand interface to the Info-ZIP
 | |
| routines.  It also handles all the callbacks from Info-ZIP and relays the
 | |
| appropriate information back to the code in winmain.cpp.  The final module is
 | |
| wince.cpp.  This module implements all the Win32 APIs and C runtime functions
 | |
| that are called by the rest of the code, but are not natively implemented on
 | |
| Windows CE.  Most all of this module is excluded for NT native builds.
 | |
| 
 | |
| Two preprocessor defines are used in conjunction with several defines from
 | |
| the Info-ZIP code and from other ports.  The two that are specific to the
 | |
| Windows CE port are:
 | |
| 
 | |
|      POCKET_UNZIP   Always set for the Windows CE port (CE and NT).
 | |
|      _WIN32_WCE     Set for Windows CE native; not set for Windows NT native.
 | |
| 
 | |
| These three defines are the minimum defines that must be addressed by the
 | |
| project file in order to build this port.  This port's main header, punzip.h,
 | |
| gets included by all the Info-ZIP source files when POCKET_UNZIP is defined.
 | |
| punzip.h in turn ensures that all the other relevant Info-ZIP defines are set
 | |
| to correctly build the port.  If you wish to alter the Info-ZIP defines used to
 | |
| build this port, you can do so by altering punzip.h.
 | |
| 
 | |
| There are quite a few _WIN32_WCE checks throughout the source files for this
 | |
| port.  These checks allow the application to build natively for Windows NT for
 | |
| debugging purposes, and just because it can with little effort due to the
 | |
| similarities between the Windows CE API and the Windows NT API. Any non-Windows
 | |
| CE code is assumed to be for Windows NT only.  This project currently will not
 | |
| work on Windows 95 because Windows CE is mostly UNICODE, and this port assumes
 | |
| that all Win32 calls to the operating system take UNICODE parameters.  I could
 | |
| scatter a few dozen "#ifdef UNICODE" checks around and make it work on Windows
 | |
| 95, but I see no reason to complicate this port's code for that reason since
 | |
| there is already a Windows 95 port of the Info-ZIP code.
 | |
| 
 | |
| _______________________________________________________________________________
 | |
| 
 | |
|    Building the Windows CE Port (known as "Pocket UnZip")
 | |
| _______________________________________________________________________________
 | |
| 
 | |
| At the time this README was written, Microsoft just released Visual C++ for
 | |
| Windows CE version 1.0.  This development kit uses the the standard Microsoft
 | |
| Visual C++ version 5.0 development environment and project files (DSP files).
 | |
| To build Windows CE binaries of Pocket UnZip, you will need version 1.0 or
 | |
| later of Visual C++ for Windows CE.
 | |
| 
 | |
| This port's project file, punzip.dsp, contains the information for building all
 | |
| the various binaries.  These include Windows NT native, Windows CE native for
 | |
| Hitachi SH-3 processors, and Windows CE native for MIPS processors.  All
 | |
| projects have Debug and Retail flavors as well.  The following table lists the
 | |
| Windows CE devices and which binary they run:
 | |
| 
 | |
|      Manufacturer             CPU             Binary
 | |
|      ---------------------    ------------    ------
 | |
|      Philips Electronics      MIPS R3910      MIPS
 | |
|      NEC Corp.                NEC VR4101      MIPS
 | |
|      Casio Computer Co.       Hitachi SH-3    SH-3
 | |
|      Compaq Computer Corp.    Hitachi SH-3    SH-3
 | |
|      Hewlett-Packard Co.      Hitachi SH-3    SH-3
 | |
|      Hitachi Ltd.             Hitachi SH-3    SH-3
 | |
|      LG Electronics Inc.      Hitachi SH-3    SH-3
 | |
| 
 | |
| Before building Pocket UnZip, you will need to move some files around.  If you
 | |
| have just unzipped the Info-ZIP's UnZip 5.30 sources, you should have a root
 | |
| directory with the core Info-ZIP files in it and several subdirectories under it
 | |
| for the various ports, one of which is the WinCE directory.  Move punzip.dsp
 | |
| from the WinCE subdirectory to the Info-ZIP root and open it with Visual C++ for
 | |
| Windows CE version 1.0 or later.  The project file uses all the files in the
 | |
| WinCE subdirectory as well as the following files in the Info-ZIP root:
 | |
| 
 | |
|      api.c        crypt.h      globals.c    process.c    unzip.h
 | |
|      consts.h     ebcdic.h     globals.h    ttyio.c      unzpriv.h
 | |
|      crc32.c      explode.c    inflate.c    ttyio.h      version.h
 | |
|      crctab.c     extract.c    inflate.h    unreduce.c   zip.h
 | |
|      crypt.c      fileio.c     list.c       unshrink.c
 | |
| 
 | |
| _______________________________________________________________________________
 | |
| 
 | |
|    Contacting the Authors
 | |
| _______________________________________________________________________________
 | |
| 
 | |
| The Info-ZIP group is made up of dozens of people, past and present, who
 | |
| have devoted countless hours to providing the public with free and portable
 | |
| compression software.  The author of the Windows CE port, Pocket UnZip, is
 | |
| Steve P. Miller.
 | |
| 
 | |
| If you have questions, comments, suggestions, or bug reports concerning Pocket
 | |
| UnZip itself, you can write Steve Miller at:
 | |
| 
 | |
|      stevemil@pobox.com
 | |
| 
 | |
| If you find a bug that appears to be more Info-ZIP related (i.e. the actual
 | |
| decompression part of Pocket UnZip), you can send mail to:
 | |
| 
 | |
|      Zip-Bugs@lists.wku.edu
 | |
| 
 | |
| For all other general discussion type questions or comments, you can send mail
 | |
| to (as well as join) the following mailing list:
 | |
| 
 | |
|      Info-Zip@lists.wku.edu
 | |
| 
 | |
| See the main UnZip README file for info on how to join the latter list.
 |