This is the README.1st file for the OS/2 and DOS port of gawk 
(GNU awk) 2.15.5 (with eval.c patch).

There are four separate archives of interest:

1. OS/2 2.x-only version
     ftp-os2.cdrom.com:pub/os2/2_x/unix/gnuawk.zip

2. OS/2 1.x--2.x version
     ftp-os2.cdrom.com:pub/os2/all/unix/gawk2155.zip

3. DOS 16-bit, and OS/2 and DOS 32-bit version (gawk.exe, gawk-emx.exe)
     oak.oakland.edu:pub/msdos/awk/
   with executables in gawk215a.zip and sources in gawk215s.zip

4. The original GNU sources
     prep.ai.mit.edu:pub/gnu/gawk-2.15.5.tar.gz


The complete manual (200 pages) for GNU awk is available with the
sources. A very nice printed manual is available from the Free
Software Foundation.  You can find information on GNU's manuals,
disks, and the GNU project in the GNU's Bulletin, available on the
newsgroup gnu.announce, or by sending a self-addressed stamped
envelope ($0.52) to 

  Free Software Foundation
  675 Massachusettes Avenue
  Cambridge, MA 02139

``...a small donation to cover copying costs is appreciated, but
is not required''


Files in the various collections:
 ./
  README.1st    this file
  README.pc     notes on the OS/2 and DOS versions
  README        general readme for GNU awk
  gawk.exe      OS/2 1.x--2.x executable (OS/2 archives)
  gawk.exe      DOS 16-bit executable (DOS archives)
  gawk-emx.exe  OS/2 and DOS 32-bit executable (see notes below)
  gawk.man      man-page ("groff -man gawk.1 > gawk.man")
  emxrt.doc     documentation on Mattes' emx package (for gawk-emx.exe)

Notes:

0. This is the second release of 2.15.5. There was a bug in eval.c
which surfaced in the 16-bit OS/2 and DOS versions. The semi-official
bugfix patch appears in eval_c.patch. Thanks to Wis Macomson
<wism@sharpwa.com> for the bug report and for helping to diagnose the
problem.

1. The stdargv and globbing routines from Ian Stewartson's sh have
been used on the MSC OS/2 and DOS versions. This provides enhanced
argument passing. Other compile options, including bound OS/2 and DOS
versions, can be found in Makefile.os2.

2. The man-page gawk.man can be read with the "less" pager, available
from ftp-os2.cdrom.com:pub/os2/all/unix/diskutil/less177.zip (OS/2
and DOS) and oak.oakland.edu:pub/msdos/txtutl/less177e.zip (DOS).

3. The gawk-emx.exe is a 32-bit executable, and will run under OS/2
2.x and DOS. A [34]86 is required, and gawk-emx.exe will not run while
Microsoft Windows is active (but see additional notes below on
rsx). Eberhard Mattes is the author of the emx programming tools used
for this executable.

DOS users should read the notes in emxrt.doc. In the language 
of emxrt.doc, the program gawk-emx.exe has "emx.exe integrated". 
Note especially:

   If you are using a memory manager (such as QEMM or EMM386 or 386max)
   which implements DPMI (DOS Protected Mode Interface), you have to
   change the invokation of that memory manager to enable VCPI as emx
   does not support DPMI.  See the documentation of your memory for
   details.  If your memory manager supports DPMI only (without VCPI),
   you have to remove or disable the memory manager.  emx supports XMS
   and VCPI.

However, there has been some success in using rsx, which permits
running under Microsoft Windows and contains a floating point
emulator. From emxrt.doc:

   rsx is a DPMI-compliant DOS extender which is more or less compatible
   to emx.  Moreover, rsx contains a floating point emulator.  rsx is
   free software and has been written by Rainer Schnittker.

It is somewhat nontrivial to install rsx for use with emx-compiled
programs such as gawk-emx.exe. See emxrt.doc for more
information. Reports to hankedr@mail.auburn.edu are encouraged.

OS/2 users will need the EMX runtime support which is currently 
available in

   ftp-os2.cdrom.com:pub/os2/2_x/unix/emx08h/emxrt.zip

4. Thanks to Mattes, Stewartson, and the FSF.

--Darrel Hankerson hankedr@mail.auburn.edu 

2.15.5  22-May-94

2.15.4  6-Feb-94

2.15.2  24-Ju-93, updated 20-Aug-93

Changes (20 August 1993):

1. More compiler options, including an EMX/gcc "bound" OS/2 and DOS 
version. Better integration of the DOS and OS/2 files.

2. Use "real" popen when in OS2_MODE; pc/popen.c when in DOS_MODE. 
Added code to properly handle bound programs with EMX/gcc or MSC.

3. Bugfix: Fix close_io(); causes problems for pc/popen.c when using
pipes. Reported by Dave Crook (dc@hpmtldc.lvld.hp.com).

4. Bugfix: Minor correction to Stewartson's stdargv to fix argv[0] 
problem. Reported by Daniel S. Lewart (d-lewart@uiuc.edu).
