home *** CD-ROM | disk | FTP | other *** search
/ OS/2 Shareware BBS: 9 Archive / 09-Archive.zip / unzip511.zip / msdos / README < prev   
Text File  |  1994-07-24  |  4KB  |  91 lines

  1. Notes about MS-DOS executables and compilers:
  2.  
  3.  - Borland start-up code is reported to switch the screen mode auto-
  4.    matically if it's not 80 columns (or possibly 40) and either 25, 43 
  5.    or 50 lines.  In particular, extended modes such as 100x40 are not
  6.    retained.
  7.  
  8.  - Borland start-up code also uses interrupt 1Ah, causing incorrect
  9.    behavior (including lock-ups) on some Japanese MS-DOS machines such
  10.    as the Fujitsu FMR series, which lack this interrupt.
  11.  
  12.  - Some(?) Borland compilers are apparently incapable of putting static
  13.    data into far memory; this means all of UnZip's strings are in near
  14.    memory, and there is not enough room to enable ZipInfo in the small
  15.    memory model.  Even if strings are in far memory, the *code* segment
  16.    produced by Borland compilers is now too big for one segment.  The
  17.    large memory model is therefore the default for Borland compilers, but
  18.    it may be possible to compile in the medium model as well (not tested).
  19.  
  20.  - Older Borland compilers do not understand source files with Unix
  21.    line-endings (LF rather than CR/LF).  Use "flip" or a similar utility
  22.    to convert the line endings before compiling, or take a look at the
  23.    Borland.fix file in the UnZip source distribution.
  24.  
  25.  - Microsoft C 5.1 large-model code is more than an order of magnitude
  26.    slower than the identical code compiled with MSC 6 or 7 (a factor of
  27.    15 in our tests, actually).  This may be due to a lousy optimizer or
  28.    lousy libraries; regardless, since UnZip is hovering at the doorstep
  29.    of the large memory model, we recommend upgrading to a later version
  30.    of the compiler.
  31.  
  32. For these reasons, Info-ZIP's distributed versions of the 16-bit MS-DOS 
  33. executables are compiled with MSC 6 or 7.
  34.  
  35.  - The default wildcard ("globbing") behavior of djgpp/go32 is disabled
  36.    by default in UnZip, but this can be overridden if the GO32 environment
  37.    variable is set to "glob".  This will cause UnZip to fail with various
  38.    odd errors about "filename not matched" and the like; to avoid this, set
  39.    the GO32 variable to "noglob" or unset it altogether.  (The documented
  40.    method of avoiding this by quoting wildcards with single quotes is buggy.)
  41.  
  42. Info-ZIP's distributed 32-bit MS-DOS executables are compiled with djgpp
  43. 1.11.m5.  These are stand-alone programs; the "go32" DOS extender is in-
  44. cluded inside the executables.  They generally run up to twice as fast
  45. as the 16-bit versions, but they only work on 386's and above.  In some
  46. cases they're actually slower.  If this is the case for you, first try
  47. running under plain DOS, after removing any memory manager in your 
  48. config.sys and rebooting, to check if the slowdown is due to your memory 
  49. manager.  (According to notes found in another package, there is a known
  50. conflict between the go32 extender and QEMM's DPMI; add "set GO32=nodpmi"
  51. to your autoexec.bat to avoid this.)  There may also be a problem with
  52. the time spent by the djgpp runtime creating and deleting a swap file.
  53. If you use SMARTDRV or another disk cache, make sure that writes are also
  54. cached.
  55.  
  56. If you already have djgpp 1.11 or later (or, more specifically, go32.exe
  57. 1.11 or later somewhere in your PATH), you can remove go32.exe from
  58. unzip386.exe to get a smaller executable:
  59.  
  60.     exe2coff unzip386.exe
  61.     coff2exe unzip386
  62.     del unzip386
  63.  
  64. As noted above, go32/djgpp has its own wildcard-expansion routines which
  65. are disabled in UnZip by default because of incompatibilities with UnZip's
  66. own wildcards.  Stripping the go32 extender may cause go32's wildcards to
  67. be re-enabled; in this case you must set GO32 as follows for UnZip to work
  68. correctly:
  69.  
  70.     set GO32=noglob
  71.  
  72. With this setting unzip386.exe behaves just like unzip.exe.
  73.  
  74. You may also need to set the TZ environment variable to get correct time-
  75. stamps on extracted files when using unzip386.exe.  Adding the line
  76.  
  77.     set TZ=MET0
  78.  
  79. to autoexec.bat works for our French contingent; a Californian user might
  80. need "set TZ=PST8PDT" instead.  The 16-bit version always uses local time
  81. for extracted timestamps but may still need TZ to be set in order for the
  82. -f and -u options to work correctly (see unzip.doc).
  83.  
  84. For other problems related to DJGPP, read the documentation provided
  85. in oak.oakland.edu:/pub/msdos/djgpp/djdev111.zip.  If a problem occurs
  86. with unzip386.exe, check first if it also occurs with unzip.exe before
  87. reporting it.
  88.  
  89.  
  90. GRR 940711
  91.