   This file documents the GNUish Project, which has the purpose of
providing the feeling of a GNUish environment to OS/2 and DOS users.

   Copyright (C) 1990-2000 Free Software Foundation, Inc.

   Permission is granted to make and distribute verbatim copies of this
manual provided the copyright notice and this permission notice are
preserved on all copies.

   Permission is granted to copy and distribute modified versions of
this manual under the conditions for verbatim copying, provided that
the entire resulting derived work is distributed under the terms of a
permission notice identical to this one.

   Permission is granted to copy and distribute translations of this
manual into another language, under the above conditions for modified
versions, except that this permission notice may be stated in a
translation approved by the Free Software Foundation.

Introduction
************

   This is the `gnuish.info' file for the GNUish project, which has
been last updated 25 November 2000.

   You can retrieve a copy of this file by anonymous ftp from
`ftp.simtel.net' in directory `pub/simtelnet/gnu/gnuish', as file
`gnuish.tex' for the `Texinfo' source and file `gnuish.inf' for an
already formatted `Info' version.  Please help the community by kindly
reporting all errors or omissions in this document to the current
maintainer.

   GNUish MSDOS was first organized with small IBM PC's in mind, that
is, 8088 and 80286 based systems.  Currently, GNUish contains both OS/2
and DOS ports to small machines (most of the OS/2 ports also run under
DOS).  The work will be called "The GNUish Project" in this document.

   For the most part, users of 32bit systems such as the 80386 should
rather take a close look at one of the newer environments based on GNU
software (see Project Mailing Lists.).

   This document is the work of various people, collected by Darrel
Hankerson (current maintainer) and Francois Pinard.  The FSF disclaimer
(see Project Definition.) has been edited; the original from
Richard Stallman appears in the GNUish93 snapshot.

   This document contains the following sections:

Project Definition
******************

   The Free Software Foundation (FSF) is not directly interested in
integrating or maintaining ports of GNU software to OS/2 and DOS,
because of limited resources.  These activities take time away from
finishing a complete standalone GNU, which FSF and many in the GNU
Project consider much more important.

   However, the organized distribution of such ports started around
1989, under the name "GNUish MSDOS".  The overall idea is to provide a
GNU-like environment for small systems running OS/2 and DOS, easy to
get, and easy to install, as far as possible.  It contains both ports of
GNU software, as well as replacements for non-ported GNU software.

   The GNUish Project wants to consider itself as part of the GNU
Project, rather than a mere aggregation of binaries.  The non-GNU
replacements are expected to somewhat comply with the GNU spirit and
standards.  Ideally, all code should be under the GNU General Public
License, should try conforming to the GNU coding standards, and also be
fully ANSI.  The programs should be such that users can be convinced of
the virtues of free software!

   The GNU General Public License requires that the complete source
code be available where programs are distributed in object code or
executable form.  For convenience, ready-to-execute binaries are also
provided for those who do not have the necessary compilers, or do not
feel like using them.

   When several ports of the same tool exist, one of them has been
selected for inclusion in this documentation.  This does not means that
the selected port is the best possible, it means however that the port
seems to be good.

   Occasionally, multiple versions of the same program are retained in
the collection.  Some of this is due to the addition of 16bit OS/2
archives in 1996 (most of these also run under DOS).  In addition,
authors often implement differing solutions to various limitations of
OS/2 and DOS, and it is beneficial to retain these versions.

   The GNUish project originated from Thorsten Ohl.  It was moderated by
Thorsten from its beginning and for a long while.  Thorsten originally
thought then, giving the project a solid initial impulse, it would bring
enough enthusiasm so other programmers will share the porting duties.
It now seems that the enthusiasm was more on the users' side than the
programmers' side.  In these days, many parts of GNUish are almost
completely dormant, and most products are quite old relative to the
current GNU versions.

   The mailing lists associated with GNUish are now completely gone.
Fine programming went into GNUish, and the project exists now as a home
for the original work (in the `gnuish93' directory) and new work which
is GNUish-like. The main interest, as always, is in ports of GNU
software to 286-class machines.  However, some software has been
recently added which users have found essential in the creation of
ports. As always, additions to GNUish must meet the spirit of the
project.

   On the 80386/80486 side, work by DJ Delorie, Michael Johnson, and
Eberhard Mattes in bringing GNU C to DOS and OS/2 gave a new momentum
for other ports.  Besides a variety of libraries, we should especially
underline the Manabu Higashida and Hirano Satoshi port of GNU Emacs to
MSDOS.

   Users with a 386-or-better are advised to consider one of the other
environments based on GNU software (see Project Mailing Lists.).

Contributing to the Project
***************************

   This section contains instructions for submitting files for inclusion
in the GNUish Project.  Contributions are handled by the Project
maintainer, and not directly by Simtel.Net (the primary mirror).
  1. Send email to the current maintainer gnuish@dms.auburn.edu briefly
     describing the contribution.  A sample appears below.

  2. The contributions should be submitted in a zip archive (mime- or
     uu-encoded) in a separate email message to the maintainer.
     Simtel.Net needs the archive to adhere to an 8+3 naming format;
     e.g., gawk306x.zip for executables and gawk306s.zip for sources
     (the `x' and `s' are conventions used by GNUish).  Files within
     the archive do not need to adhere to such restrictions.

  3. The maintainer will send an acknowledgment, along with possible
     requests for additional information, repackaging, etc.
        Contributions must include complete sources required for
building, and must meet the spirit of the GNU General Public License
(http://www.fsf.org/copyleft/gpl.html), although strict compatibility
is not required.

   The GNUish Project was designed to bring Unix-like programs to small
systems runing DOS or OS/2.  While some 32-bit programs are included
and the collection continues to be the primary upload point for GNU awk
on DOS, OS/2, and Win32, it is expected that there will be little new
activity.

   *Example announcement*

     I have uploaded GNU awk 3.0.6 to the GNUish Project:

     http://www.simtel.net/pub/simtelnet/gnu/gnuish/
     ftp://ftp.simtel.net/pub/simtelnet/gnu/gnuish/
       gawk306x.zip   GNU Awk 3.0.6: Text scanning and processing language
       gawk306s.zip   Sources for gawk306x.zip (GNU awk)

     Excerpted from the manual:

       The awk utility interprets a special-purpose programming language that
       makes it possible to handle simple data-reformatting jobs easily with
       just a few lines of code.

     Executables provided:

       gawk.exe      16-bit DOS
       gawk-os2.exe  16-bit OS/2
       gawk-djg.exe  32-bit DOS (compiled with DJGPP)
       gawk-w32.exe  32-bit Win32 (compiled with MinGW)

     These files have replaced gawk304x.zip and gawk304s.zip, respectively.

     Uploaded by one of the coordinators for the DOS, OS/2, and Win32 ports
     of GNU awk.

     Darrel Hankerson hankedr@planet.earth
     November 2000

Legal Conditions
****************

   Some tools are possibly dangerous if you do not thoroughly understand
their usage (e.g., `rm -r *').  You ought to know what you are doing.
YOU USE THESE TOOLS AT YOUR OWN RISK.  You *were* warned!

   Many of these programs are free software; you can redistribute them
and/or modify them under the terms of the GNU General Public License as
published by the Free Software Foundation; either version 1, or (at your
option) any later version.

   These programs are distributed in the hope that they will be useful,
BUT WITHOUT ANY WARRANTY WHATSOEVER, without even the implied
warranties of merchantability or fitness for a particular purpose.  See
the GNU General Public License (the file `COPYING') for more details.

   You should have received a copy of the GNU General Public License
along with GNUish programs; if not, write to the Free Software
Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA or e-mail to
`gnu@prep.ai.mit.edu'.

   Information about the FSF and the GNU Project can be found via
`http://www.gnu.ai.mit.edu'.  To receive a copy of the GNU's Bulletin,
send your name and address with your request to the Free Software
Foundation, Inc., 675 Massachusetts Avenue, Cambridge MA 02139-3309.
Enclosing a business-sized self-addressed stamped envelope ($0.52)
and/or a donation of a few dollars is appreciated, but not required.
If you're from outside the USA, sending a mailing label and enough
International Reply Coupons for a package of about 100 grams is
appreciated but not required.

Archiving Formats
*****************

   Traditionally, GNUish archives are made using Rahul Dhesi's `zoo'
archiver.  This archive format is popular and portable, used in many
places, notably for the Usenet `comp.binaries.ibm.pc' exchange group.
The GNUish project selected it because it works on OS/2, DOS, and UNIX,
and all the sources are freely available.  Moreover, it offers a nice
user interface and is dependable.

   Some people wanted GNUish to use `zip' for its better compression,
but `zip' was proprietary software at that time.  A new version of
`zoo' (version 2.1) offers a higher compression rate, comparable to
what `zip' can achieve.  About at the same time, the Info-ZIP group
produced a `zip' program available in source form, and which works on
OS/2, DOS, and UNIX.  There are no more big reasons for using one
instead of another.

   Also, some sites converted all of GNUish to `ARC' or `LHarc' format.
Instead of feeding an archivers war, let us simply hope that each
archive site will follow the GNU spirit and at least offer the free
archiver they use, both in executable and complete source form.

   The current maintainer has been urged by several of the major sites
to use zip for all files in the collection, and to keep archive names
in the "8+3" lower-case format (filenames within a zip archive are not
subject to such restrictions).  Some files remain in other formats, but
eventually all will be converted.

   Most packages consists of two archives, one for the complete source
and documentation, the other for the executable and data files;
however, it happens that the documentation is sometimes provided with
the executables.  The filename for a package archive is often selected
according to the following pattern:

     PROGRAM VERSION EDITION SEQUENCE.EXTENSION

   In this syntax, PROGRAM is a short string to identify the product,
e.g. `futi' indicates GNU file utilities; while VERSION is a decimal
integer naming the version, without any decimal point, v.g.  `14' for
1.4, `358' for 3.58; EDITION is `a' for the first release in GNUish,
then `b', `c', etc.,  for subsequent editions.  The value of SEQUENCE
is the letter `s' for the source and documentation, or `x' for
executable and data files.  When EXTENSION is `zoo', this usually
refers to Zoo version 2.1. The `tgz' extension is shorthand for
`tar.gz', and both `gzip' (see gzip.) and `tar' (see tar.) will
be required to "un-tgz."

FTP Archive Sites
*****************

   The official GNU home is `prep.ai.mit.edu' (problems with `prep'
should be reported to `gnu@prep.ai.mit.edu').  There is currently no
room on `prep.ai.mit.edu' to put GNUish files up for ftp.  If `prep'
get more disk space, they might become available.  The collection of
programs known as the GNUish Project is still available for ftp at the
following addresses.  Different archiving sites might use different
archivers.  The actual extension of any given archive should give you a
clue about which archiver to use.

   The expression "from the usual places", later in this document,
refers to the first site of this list.

   * `ftp.simtel.net' in `pub/simtelnet/gnu/gnuish'.

     This site is also available by www at `http://www.simtel.net'.
     Archives are uploaded in place directly from the maintainer's copy.

   * `wuarchive.wustl.edu' in `systems/msdos/gnuish'.

     This site is also available by www at `http://wuarchive.wustl.edu'.
     This site contains a subset of the files on Simtel.Net.

   The organization and maintainance of the archive sites is the work of
Darrel Hankerson, Francois Pinard, Roberto Gomez, Petri Hartoma, David
Camp, Keith Petersen, Chris Myers, Dave Curry and Russ Nelson.

GNUish Project Contents
***********************

   The following contents for GNUish is loosely organized along the
lines of related UNIX man pages.

awk
===

   GNU awk current GNU version is 3.0.  OS/2, DOS, and Win32 support is
part of GNU awk, and is maintained by Scott Deifik, Darrel Hankerson,
and Kai Uwe Rommel, with contributions from Juan Grigera for the Win32
Visual C version.  Fetch executables in `gawk306x.zip', sources in
`gawk306s.zip', and documentation in `gawk306d.zip' and `gawk306h.zip'
(Windows help format) from the usual places.

   GNU awk 3.0.4 remains available in `gawk304x.zip', `gawk304s.zip',
and `gawk304d.zip'.  The 3.0.4 files were updated in Jan 2000, although
the names of the zip files were unchanged.  A platform-independent bug
in format specifiers was corrected, along with a bug in the way pipes
were handled with some command.com-style processors (DOS, Windows) in
the 16bit and Win32 versions.  A makertf-translated Windows-style help
file was added in `gawk304h.zip'.

   GNU awk 3.0.3 remains available in `gawk303x.zip', `gawk303s.zip',
and `gawk303d.zip', respectively.

   `The GNU Awk User's Guide' is available professionally-bound from the
Free Software Foundation (http://www.fsf.org) and also as `Effective
AWK Programming' (2nd ed) from Specialized Systems Consultants
(http://www.ssc.com).

   There is another awk, also distributed under the GNU General Public
License, written by Mike Brennan.  The original distribution for mawk
is available from `ftp://ftp.whidbey.net/pub/brennan/'.  Minor changes
for the GNUish OS/2 and DOS versions were done by Darrel Hankerson.
Fetch executables in `mawk122x.zip' and sources in `mawk122s.zip' from
the usual places.

   The version of awk described in `The AWK Programming Language', by
Al Aho, Brian Kernighan, and Peter Weinberger (Addison-Wesley, 1988,
ISBN 0-201-07981-X) is available (along with a Win32 binary) from
`http://cm.bell-labs.com/who/bwk/'.  Version 970821 has been ported to
OS/2 and DOS by Darrel Hankerson.  Testing has been limited.  Fetch
`awk9708.zip'.

   Russell Schulz maintains the Frequently Asked Questions for the
comp.lang.awk newsgroup on
`ftp://rtfm.mit.edu/pub/usenet/comp.lang.awk/faq' and
`http://www.faqs.org/faqs/computer-lang/awk/faq/'.

   Historical: mawk was reportedly faster than gawk-2.14.  Fetch
executables and documentation in `mawk11ax.zoo' and sources in
`mawk11as.zoo' from the usual places.

bc
==

   GNU bc current GNU version is 1.04.  Version 1.02 has been ported to
OS/2 and DOS by Kai Uwe Rommel.  Fetch `gnubc.zip' from the usual
places.

bison
=====

   GNU bison current GNU version is 1.25.  Since bison is used to
produce C source which will further be compiled, it is assumed that a
bison user has a C compiler, thus she can compile bison itself from
sources.  However, Scott Deifik's port of bison-1.25 to DOS and OS/2 is
part of GNUish.  Fetch executables in `biso125x.zip' and sources in
`biso125s.zip' from the usual places.

   Kai Uwe Rommel's port of bison-1.10 to OS/2 and DOS has been
retained.  Fetch `bison110.zip' from the usual places.

   Historical: bison-1.19 compiles without changes on MSDOS.  Fetch
sources in `bison-1.19.tar.Z' from `prep.ai.mit.edu', in `pub/gnu'. The
following patch is reported:

     *** files.c~	Thu Nov 19 15:12:52 1992
     --- files.c	Thu Nov 19 15:15:12 1992
     ***************
     *** 389,394 ****
     --- 389,395 ----
         if (actfile) unlink(actfile);
         if (tmpattrsfile) unlink(tmpattrsfile);
         if (tmptabfile) unlink(tmptabfile);
     +   if (tmpdefsfile) unlink(tmpdefsfile);
       #endif /* MSDOS */
         exit(k);
       #endif /* not VMS */

cc
==

   There is no port of GNU C available for 8088 and 80286 systems, and
it is very unlikely that there would ever be one.  So, GNUish is still
relying on proprietary compilers for its existence.  Currently, ports
have been done using Microsoft C compilers or Borland Turbo C/C++; it
seems so far that Microsoft C generates faster code, works better with
huge pointers, and offers a working `alloca()'; but promoting
proprietary software is against the GNU goals, any step in the direction
of compiler independence would be beneficial for the community.

   For users with a 386 or better, see Project Mailing Lists.  for
information on the outstanding ports of GNU C to OS/2 and DOS.

compress
========

   For a number of reasons including performance and patent
restrictions, GNU gzip (see gzip.) was developed as a compress
replacement.  gzip can `uncompress' files created by compress, but
cannot create such files.  Although gzip is preferred, the compress port
from Kai Uwe Rommel is available as `compre42.zip' from the usual
places.

cpio
====

   GNU cpio 2.4.2 has been ported to MSDOS by Stephen V. Nickolas.
Fetch executables and sources in `cpio242.zip'.

   Version 1.1 has been ported to MSDOS by Thorsten Ohl.  Fetch
executables in `cpio11ax.zoo' and sources and documentation (inside
`readme') in `cpio11as.zoo' from the usual places.  You also need
Thorsten Ohl's gnulib (see libc_3.) to compile it.

ctags
=====

   GNU [ce]tags current GNU version comes from GNU Emacs distribution.
Russ Nelson made a version for Freemacs.  Fetch the executables, sources
and documentation as `etags.zoo' from the usual places.

diff
====

   GNU diff current GNU version is 2.7 (now part of diffutils).
Version 2.3 has been ported to DOS by Helge Oldach.  Fetch executables
in `diff23x.zip' and sources in `diff23s.zip' from the usual places.

   Version 1.15 has been ported to MSDOS by Thorsten Ohl, using
Microsoft C v5.1 or v6.0.  Fetch executables in `dif115ax.zoo' and
sources in `dif115as.zoo' from the usual places.  There is no
documentation.

   See rcs for another port of `diff' and `diff3' by Kai Uwe Rommel.

emacs
=====

   There is no port of GNU Emacs available for 8088 and 80286 systems,
and it is very unlikely that there would ever be one.  Any Emacs for
small systems only implements a tiny subset of the true thing.

   John Davis' JED is an exceptional editor, and closest in spirit to
the real thing.  The S-Lang companion package provides a C-like
extension language.  OS/2 support was contributed by John Burnell and
Darrel Hankerson, with additional contributions from Dominik Wujastyk.

   OS/2 and DOS support is part of the main distribution at
`ftp://space.mit.edu/pub/davis'.  Or, fetch sources in `jed9713s.zip'
and `slan9924.zip' and executables in `jed9713x.zip' from the usual
places.  These files correspond to versions 0.97-13 and 0.99-24 of JED
and S-Lang, resp.

   Russ Nelson's Freemacs is also close in spirit to the real thing, by
providing a full extension language.  It is made of a MINT interpreter
written in 8088 assembler, and of several MINT code application files
to drive emacs modes.  MINT has no relation to GNU Emacs LISP and
limits itself to 64k per file.  Fetch the executables code as
`emacs16a.zoo' (plus `emacs100.zoo' for a Zenith Z-100) and the sources
as `emac16as.zoo', from the usual places; also fetch some EGA utilities
as `emacsega.zoo' and a spelling checker as `emacspel.zoo'.  You might
want to fetch `emacspat.zoo' too for a few patches, applied by Freemacs
itself.

   Jonathan Payne's Jove, on the other side, is not extendable, but can
handle surprisingly big files on MSDOS.  It is well featured and
reasonably fast.  It can be made almost comfortable to GNU Emacs users,
given a proper `jove.rc'.

   For users with at least a 386, outstanding ports of GNU Emacs to OS/2
(using emx) and DOS (using djgpp) have been done.  Craig Finseth
maintains a list of Emacs Implementations and Literature at
`ftp://ftp.finseth.com/users/emacs' and
`http://www.finseth.com/~fin/emacs.html'.

file
====

   The file utility attempts to determine the type of file based on its
contents (the OS/2 port uses some additional tests).  Ian Darwin's file
version 3.9 has been ported to OS/2 and DOS by Darrel Hankerson, with
contributions from Greg Roelofs and Jouni Miettunen.  Fetch
`file39a.zip' from the usual places.

   A feature of shar (see shar.) requires file.

file utilities
==============

   GNU fileutils current GNU version is 3.16. Version 3.12 has been
ported to DOS by Stephen McConnel.  Fetch executables in `fut312bx.zip'
and sources in `fut312bs.zip' from the usual places.

   An earlier port to OS/2 and DOS by Kai Uwe Rommel has been retained
as `gnufut21.zip'.  Note that there was some reorganization of the text
and file utilities after these ports were done (see textutils.).

   Historical: GNU Text Utilities historically emerged from GNU File
Utilities, and version 1.4 had been ported to MSDOS by Thorsten Ohl
before this split had been done.  The ported programs are: `cat',
`chmod', `cmp', `cp', `cut', `dd', `dir', `head', `ls', `mkdir', `mv',
`paste', `rmdir', `tac', `tail', `touch', `vdir' and `rm'.  A
long-standing bug in the port of `cp' was corrected for the `gnuish93'
snapshot in 1996.  Fetch executables in `futi14bx.zip' and sources
in`futi14bs.zip' from the usual places.  There is a Perl script
included which can be used to format the manual pages.

find
====

   GNU find current GNU version is 4.1 (now part of `findutils'),
comprising: `find', `locate' and `xargs'.  Kai Uwe Rommel has ported
version 3.2 to OS/2 and DOS.  Fetch `find32.zip' from the usual places.

   Historical: Version 1.2 has been ported to MSDOS by Thorsten Ohl.
Fetch executables in `find12ax.zoo' and sources and some documentation
(inside `readme') in `find12as.zoo' from the usual places.  You also
need Thorsten Ohl's gnulib (see libc_3.) to compile it.

ghostscript
===========

   Get executables in `ghostscript-2.6.1msdos.tar.gz' and sources in
`ghostscript-2.6.2.tar.gz' from `prep.ai.mit.edu' in `pub/gnu'.  You
might need `ghostscript-fonts-2.6.2.tar.gz' from the same place.  L.
Peter Deutsch is the primary developer of Ghostscript.

gnuplot
=======

   gnuplot is an interactive program for plotting mathematical
expressions and data.  The official distribution site is
`ftp.dartmouth.edu', and there a reference manual and demos at
`http://www.cs.dartmouth.edu/gnuplot_info.html'.

grep
====

   GNU grep current GNU version is 2.1.  Version 2.0 has been ported to
DOS by Stephen McConnel.  Fetch executables in `grep20ax.zip' and
sources in `grep20as.zip' from the usual places.

   Earlier ports to OS/2 and DOS by Kai Uwe Rommel have been retained as
`fgrep11.zip' and `grep15.zip'.

   Historical: Version 1.1 of fgrep has been ported to MSDOS by
Thorsten Ohl.  Fetch executables in `fgre11ax.zoo' and sources in
`fgre11as.zoo' from the usual places.  Version 1.5 of grep has been
ported to MSDOS by Thorsten Ohl.  Fetch executables in `grep15ax.zoo'
and sources in `grep15as.zoo' from the usual places.  There is no
documentation.

groff
=====

   GNU groff current GNU version is 1.11.  Ports to OS/2 for 32bit
machines have been done by Kai Uwe Rommel.  It is unlikely that there
will be a port for 286 machines.

   Henry Spencer's awk script `awf' provides a limited nroff-like
capability; fetch `awf.zip' from the usual places.  Vic Abell wrote
`cawf', a much faster and expanded version in C, and Darrel Hankerson
ported to OS/2.  An OS/2 and DOS version is available in `cawf407.zip'
from the usual places.

gzip
====

   GNU gzip current GNU version is 1.2.4. Fetch executables in
`gzip124x.zip' and sources in `gzip124s.zip' from the usual places.

   Historical: Version 0.7 has been ported to MSDOS by Jean-loup Gailly,
the `gzip' author.  Fetch executables and documentation in
`gzip07ax.zoo' and sources in `gzip07as.zoo' from the usual places.

indent
======

   GNU indent current GNU version is 1.9.  Version 1.9.1 has been
ported to DOS by James R. Shiflett.  Fetch executables in `inden19x.zip'
and sources in `inden19s.zip' from the usual places.

   Version 1.2 has been ported to OS/2 and DOS by Kai Uwe Rommel.  Fetch
`gnuindnt.zip' from the usual places.

   Version 1.1 has been ported to MSDOS by Thorsten Ohl.  Fetch
executables in `inde11ax.zoo' and sources and Texinfo unformatted
documentation in `inde11as.zoo' from the usual places.

less
====

   less current GNU version is 332.  A build of 291 has been done by
Stephen McConnel.  Fetch executables in `less291x.zip' and sources in
`less291s.zip' from the usual places.

   Version 177 has been ported to OS/2 and DOS by Kai Uwe Rommel.  Fetch
`less177.zip' from the usual places.

   Version 177 has been ported to MSDOS by Mark Lord, using Borland C.
Fetch executables in `les177ax.zoo' and sources in `les177as.zoo' from
the usual places.

lex
===

   Fast lex current GNU version is 2.5.  Version 2.5.1 has been ported
to DOS by Terry Kane. Fetch executables in `flex251x.zip' and sources in
`flex251s.zip'.

   Version 2.3 has been ported to OS/2 and DOS by Kai Uwe Rommel.  Fetch
`flex23.zip' from the usual places.

   Version 2.3.6 has been ported to DOS by Thorsten Ohl.  Fetch
executables in `fle236ax.zoo' and sources and roff unformatted
documentation in `fle236as.zoo' from the usual places.  You also need
Thorsten Ohl's gnulib (see libc_3.) to compile it.

lout
====

   The following is taken from the lout homepage at
`http://www.ptc.spbu.ru/~uwe/lout/lout.html':
     Lout is a document formatting system designed and implemented by
     Jeffrey Kingston `http://www.cs.su.oz.au/People/jeff.html"' at the
     Basser Department of Computer Science, University of Sydney,
     Australia.

     The system reads a high-level description of a document similar in
     style to LaTeX and produces a PostScript file which can be printed
     on most laser printers and graphic display devices.  Plain text
     and PDF (starting from version 3.12) output are also available.

   The lout homepage includes a pointer to Murray Adelman's article on
lout, appearing in the Linux Gazette
`http://www.linuxgazette.com/issue27/adelman.html'.

   Currently, lout is the only package in GNUish which is 32bit-only.
It was added at the request of Matthew Cepl, who performed tests on
these versions.  Compilation for DOS and Win32 was done by Darrel
Hankerson, with patches provided by Valeriy E. Ushakov.  Fetch the
binary distribution `lout312x.zip' and sources in `lout312s.zip' from
the usual places.

m4
==

   GNU m4 current GNU version is 1.4.  Version 0.99 has been ported to
OS/2 and DOS by Kai Uwe Rommel.  Fetch `gnum4.zip' from the usual
places.

   Version 0.5 (also called 0.50) has been ported to MSDOS by Thorsten
Ohl.  Fetch executables in `m4v05ax.zoo' and sources and Texinfo
unformatted or DVI ready documentation in `m4v05as.zoo' from the usual
places.  You also need Thorsten Ohl's gnulib (see libc_3.) to
compile it.

make
====

   Dennis Vadura's dmake is under the GPL, and has been widely used
under OS/2 and DOS in porting GNU software.  Fetch executables in
`dmake38x.zip' and sources in `dmake38s.zip'.

   Version 3.71 of GNU make has been ported to DOS by Morten Welinder.
Fetch `gmake371.zip' from the usual places.

   Version 3.58 of GNU make has been ported to MSDOS by Thorsten Ohl,
using Microsoft C v6.0.  Fetch executables in `mak358ax.zoo' and sources
and Texinfo + roff unformatted documentation in `mak358as.zoo' from the
usual places.  You also need Thorsten Ohl's swapping library (see
libc_3.).  If you intend to recompile `make', beware that one patch
has been lost for the makefile in `make358as.zoo', so the makefile
might not work as is.

man
===

   This is a replacement for Unix man, apropos, whatis, and manpath.
John Eaton's man version 1.1 was ported to OS/2 by Darrel Hankerson.
Fetch `man11a.zip' from the usual places.

patch
=====

   Larry Wall's patch current GNU version is 2.1.  Version 2.0 has been
ported to OS/2 and DOS by Kai Uwe Rommel.  Fetch `patch212.zip' from
the usual places.

perl
====

   Larry Wall's Perl current GNU version is 5.004.  Version 4.019 has
been ported to OS/2 and DOS by Raymond Chen and Kai Uwe Rommel, and is
based on the DOS port by Diomidis Spinellis.  Fetch `perl4019.zip' from
the usual places.

   Version 4.019 has been ported to DOS by Stuart Phillips, using
Borland C++ 3.0 and VROOM, it works faster with extended memory.  For
the original distribution, fetch executables in `bcv14_perl4-019E.zip'
and sources in `bcv14_perl4-019.zip' plus `xspawn34.zip' from
`tandem.com' [130.252.12.8], in `pub/perl'. Or fetch executables in
`pl4019ax.zoo' and sources in `pl4019as.zoo' from the usual places.
There is no documentation.

   Also, version 4.019 has been ported to MSDOS by Len Reed.  Fetch
executables in `perl_exe.zoo' from `ftp.ee.umanitoba.ca' in
`pub/msdos/perl'.

ptx
===

   GNU ptx current GNU version is 0.4.  Version 0.1 has been ported to
MSDOS by Thorsten Ohl.  Fetch executables in `ptx01ax.zoo' and sources
and documentation in `ptx01as.zoo' from the usual places.

rcs
===

   GNU Revision Control System current GNU version is 5.7.  Version 5.7
has been ported to OS/2 and DOS by Kai Uwe Rommel, available from
`http://www.leo.org/archiv/os2' or `ftp://ftp.leo.org/pub/comp/os/os2'.
Or, fetch `rcs57pc1.zip' and `rcs57pc2.zip' from the usual places.

   This archive contains a port of `diff' and `diff3' (see diff.).

   Historical: Version 5.5 has been ported to MSDOS by Stuart Phillips.
For the original distribution, fetch sources and executables in
`rcs55.zip' from `wuarchive.wust.edu', in `mirrors/msdos/pgmutil'.  Or
fetch executables in `rcs55ax.zoo' and sources and roff unformatted
documentation in `rcs55as.zoo' from the usual places.

recode
======

   GNU recode converts between character sets and usages.  Version 3.4
has been ported to DOS by Francois Pinard.  Fetch executables in
`rec34ax.zip' and sources in `rec34as.zip' from the usual places.

sc
==

   The spreadsheet calculator sc version 6.21 has been ported to OS/2
and DOS by Darrel Hankerson.  Fetch `sc621.zip' from the usual places.

sed
===

   GNU sed current GNU version is 2.05. Version 1.06 has been ported to
OS/2 and DOS by Kai Uwe Rommel.  Fetch `sed106.zip' from the usual
places.

   Version 1.06 has been ported to MSDOS by Thorsten Ohl.  Fetch
executables in `sed106ax.zoo' and sources in `sed106as.zoo' from the
usual places.  You also need Thorsten Ohl's gnulib (see libc_3.) to
compile it.  There is no documentation.

sh
==

   GNU bash current GNU version is 2.01.  There is no port of GNU bash
available to 8088 and 80286 systems, and it is unlikely that there will
ever be one.

   Ian Stewartson ported the Charles Forsyth `sh' from MINIX to DOS and
OS/2.  Fetch executables in `ms_sh23b.zip' and sources in `ms_sh23s.zip'
from the usual places.  Stewartson's companion utilities for DOS appear
in the `ms_sh' directory, and work well with sh.

   Historical: Ian Stewartson ported the Charles Forsyth `sh' from
MINIX to MSDOS, using Microsoft C v5.1.  Fetch sources from
`comp.sources.misc' in Volume 10 issues 053-059, Volume 12 issues
019-026, Volume 13 issues 079-080, Volume 14 Issues 065-066, Volume 16
Issues 078-079.  Or fetch executables and documentation in
`sh164ax.zoo' and sources in `sh164as.zoo' from the usual places.

shar
====

   GNU sharutils current version is 4.2. Version 3.49 of shar was
distributed through `alt.sources' on 90-09-24.  Version 3.49 has been
ported to MSDOS by Thorsten Ohl.  Fetch executables in `sha349ax.zoo'
and sources and roff unformatted documentation in `sha349as.zoo' from
the usual places.

   Version 3.49 of shar has been ported to OS/2 by Darrel Hankerson.
The sources from the MSDOS port were used as the starting point.  Fetch
`shar349.zip' from the usual places.

tar
===

   GNU tar current GNU version is 1.12.  Kai Uwe Rommel has ported
version 1.09 to OS/2 and DOS.  Fetch `gnutar.zip'.

texinfo
=======

   GNU texinfo current GNU version is 3.9, comprising: `info',
`makeinfo', `texi2dvi', `texindex' and extensive related code written
in GNU Emacs LISP.  Kai Uwe Rommel ported version 2.05 to OS/2 and DOS,
using some of the earlier work of Thorsten Ohl.  Fetch `gnuinfo.zip'
from the usual places.

   Historical: Prereleased versions of `info' and `makeinfo' have been
ported to MSDOS by Thorsten Ohl.  Fetch executables in `texi10ax.zoo'
and sources in `texi10as.zoo' from the usual places.  There is no
documentation.

text utilities
==============

   GNU textutils current GNU version is 1.22.  Version 1.11 has been
ported to DOS by Stephen McConnel.  Fetch executables in `tut111ax.zip'
and sources in `tut111as.zip' from the usual places.

   An earlier port to OS/2 and DOS by Kai Uwe Rommel has been retained
as `gnutut12.zip'.  Note that there was some reorganization of the text
and file utilities after these ports were done (see fileutils.).

   Historical: A prerelease of `sort' version 0.3 has been ported to
MSDOS by Thorsten Ohl.  Fetch executables and documentation in
`sort03ax.zoo' and sources in `sort03as.zoo' from the usual places.

uuencode and uudecode
=====================

   Compilation for OS/2 and DOS was done by Darrel Hankerson. There are
many such ports, but some are incomplete and will not work properly with
shar (see shar.). Fetch `uuencode.zip' from the usual places.

zip and unzip
=============

   Info-ZIP current zip and unzip versions are 2.2 and 5.32, resp.
Documentation, sources, and executables are available via
`http://www.cdrom.com/pub/infozip'.

   GNUish contains unzip 5.32 and zip 2.2.  Sources appear in
`unzip532.zip' and `zip22x.zip', resp.  Executables appear in the
`dos_only' and `os2_only' subdirectories.  For DOS, fetch `unz532x3.exe'
(self-extracting) and `zip22x.zip' ; for OS/2 fetch `unz532x1.exe'
(self-extracting) and `zip22x1.zip'.

zoo
===

   Rahul Dhesi's barebone Zoo extractor version 2.0 has been distributed
through `comp.binaries.ibm.pc' (1 part: `v13i001').  Fetch `booz.exe'
and `booz20.zoo' from the usual places.  Use `booz.exe' under MSDOS to
unpack the sources and documentation in `booz20.zoo'.

   Rahul Dhesi's full Zoo current version is 2.1 (also called 2.10).
Executables have been distributed in `comp.binaries.ibm.pc' (3 parts:
v13i002-004), sources has been distributed through `alt.sources' on
91-07-10 (14 parts).  Fetch the executables in `zoo210e.exe' and
sources in `zoo210s.zoo' from the usual places.  Execute the self
extracting `zoo210e.exe' under MSDOS to unpack the zoo executables and
documentation.  Unpack the sources with the obtained `zoo.exe'.

dbm_3
=====

   GNU dbm current GNU version is 1.7.  Version 1.5 has been ported by
Kai Uwe Rommel.  Fetch `gnudbm.zip' from the usual places.

   Version 1.4 has been ported to MSDOS by Thorsten Ohl.  Fetch sources
in `gdbm14as.zoo' from the usual places.  There is no executables
archive associated with GNU dbm.  There is no documentation.

libc_3
======

   Many library routines frequently occurring in various GNU products
have been ported to MSDOS by Thorsten Ohl, to help other ports.  Fetch
sources in `gnulibas.zoo' from the usual places.  There is no
associated executables archive and there is no documentation.

   A swapping library has been developped by Thorsten Ohl, using
Microsoft C v6.0, to be used by some of his other GNU ports.  Fetch
sources and (TeX unformatted?) documentation in `swalibas.zoo' from the
usual places.  There is no associated executables archive.

   Note that this is not a complete `libc(3)', but rather a small
collection of GNU specific routines.

chess_6
=======

   GNU chess current GNU version is 4.0.75.  Version 4.0.60 was
compiled for DOS by Chua Kong Sian. Fetch executables in `ches460x.zip'
and sources in `ches460s.zip'.

   Tim Mann maintains information on GNU chess and related material at
`http://www.research.digital.com/SRC/personal/Tim_Mann/chess.html'.

   Historical: Reportedly, version 4.0.60 should compile without
changes on MSDOS.

Project Mailing Lists
*********************

   The original mailing lists for discussing MSDOS ports of GNU
software no longer exist (they became quite inactive around 1992).  The
GNU project is primarily interested in 32bit or better machines.
Questions about 16bit ports typically should *not* go on one of the GNU
newsgroups, but may be appropriate on one of the OS/2 or DOS programming
groups.

   GNUish exists now as primarily an archive for the original GNUish
ports (in the `gnuish93' directory), updated ports of GNU software, and
some selected tools which assist in the creation of ports or are not
available as GNU ports.  Additions to the archive and corrections to
this document are welcomed.

   Users of 386 or better machines might consider Linux, emx, or djgpp;
all are exceptional work based on GNU software.

   Linux is a Unix-like environment based on the kernel by Linus
Torvalds.  There are many "distributions" consisting of the kernel,
development tools, and applications.  The Debian Project
`http://www.debian.org' is a volunteer effort to create a high-quality
distribution.

   Linux can run many DOS programs, but users interested in OS/2 and DOS
may wish to examine the work of and Eberhard Mattes (emx) and DJ Delorie
(djgpp) and derivatives; these ports have their own set of mailing lists
and distribution points.

   Users interested in the djgpp development environment can start with
the web page `http://www.delorie.com'.  The collection is available via
`http://www.simtel.net/simtel.net/' or
`ftp://ftp.simtel.net/pub/simtelnet'.  The newsgoup
`comp.os.msdos.djgpp' is a good source of information.

   Mattes' emx development package is available on `ftp.leo.org'.
There is a mailing list for `emx' programming information. The
listserver reports:

     This mailing list is for users of Eberhard Mattes' emx development
     environment.  It is the proper forum for questions about emx and
     also bug fixes, misc comments, and whatever pertains to emx.

     The emx-list is managed internally by the Majordomo mailing-list
     program. To be added or removed from the emx-list or to retrieve
     past articles posted to the emx-list please send mail to
     majordomo@IAEhv.nl. If you include the word "help" as the message
     body, "listserv" will return a list of valid commands and options.

Historical Notes
****************

   Thorsten Ohl started his ports in November 1989, in Germany, while
the Berlin Wall was falling.  He subscribed at some GNU mailing lists
and, for correspondants wanting his MSDOS ports, organized a
distribution list based on email and still located in Germany.  In
1990, around spring, the unusual quality of Thorsten ports was being
recognized, and a few FTP sites organized to hold them (`vulcan',
`simtel', `wuarchive', `ocf', `funic'); during the summer, the mailing
lists were created.  Thorsten stopped actively porting GNU products to
MSDOS in September 1990, to finish his PhD and continue his research in
theoretical high energy physics.  He has now joined the endless list of
people who support GNU by using GNU software on their UNIX workstations
and contribute bug reports and (occasionally) fixes.

   At this point, the mailing lists, after an initial burst of intense
activity and many debates, became very quiet, and nothing really new got
added to the GNUish MSDOS archives.  DJ Delorie released his 80386 port
of GNU C/C++, and GNU Emacs itself was ported to 80386 under the name
Demacs.

   In February 1992, the archives were reorganized to better comply with
the GPL, which requires the sources to be fully available at the
distribution points.  Ports from Russell Nelson and Stuart Phillips were
integrated in the project.

   In January 1996, several existing 16bit OS/2 ports were added (most
also run under DOS).  Many of these were from Kai Uwe Rommel, who
remarked that "[the work was not officially part of GNUish], although I
had some mail exchange with Thorsten Ohl at this time.  I was even asked
to put up something to describe `GNUish OS/2' but didn't have time
then."

   A snapshot of the "original" GNUish MSDOS Project was placed in the
`gnuish93' subdirectory.  GNU awk and Davis' JED editor were added,
along with a number of other utilities and updates.