STDWIN ESSENTIAL INFORMATION
****************************

[last edit: 5 June 1993]


What Is STDWIN
==============

STDWIN (STanDard Window INterface -- similar to STDIO) is a simple
windowing interface for C programs, that is implemented on various
platforms.  The "flagship" implementations support the Macintosh and
X11 windowing environments.  The emphasis is on portability between
platforms and a simple interface to the application, not on getting
the maximum performance or functionality of one particular platform.

For a longer introduction, read the (still outdated) file Doc/ABOUT.
For more information on the Macintosh version, read Ports/mac/README.
For MS-DOS, read Ports/msdos/README.


Supported Platforms
===================

Currently, programs using STDWIN can be made to run on Unix under X11,
on alphanumeric terminals (using termcap -- obviously with some loss
of functionality), on the Apple Macintosh (using THINK C 5.0), or on
MS-DOS with a dumb display (using Microsoft C).  I am working on
patches to get the Mac port running under MPW 3.x (which is quite
different in some respects from MPW 2.x); contact me if you need this
urgently.  If you insist, I also have two versions for the Atari ST
(one for MWC and one for TurboC) that need a lot of dusting off, and
haven't been upgraded to all the lovely new features.


Copyright
=========

Copyright 1988, 1989, 1991, 1992 by Stichting Mathematisch Centrum,
Amsterdam, The Netherlands. Copyright 1993 Bruno Haible.

                        All Rights Reserved

Permission to use, copy, modify, and distribute this software and its 
documentation for any purpose and without fee is hereby granted, 
provided that the above copyright notice appear in all copies and that
both that copyright notice and this permission notice appear in 
supporting documentation, and that the names of Stichting Mathematisch
Centrum or CWI not be used in advertising or publicity pertaining to
distribution of the software without specific, written prior permission.

STICHTING MATHEMATISCH CENTRUM DISCLAIMS ALL WARRANTIES WITH REGARD TO
THIS SOFTWARE, INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY AND
FITNESS, IN NO EVENT SHALL STICHTING MATHEMATISCH CENTRUM BE LIABLE
FOR ANY SPECIAL, INDIRECT OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES
WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN
ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT
OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.


This was Version 0.9.7
======================

I believe it is a mature product, except for the lack of complete
documentation.  When I have finished the manual I'll release version
1.0, and post it to an appropriate comp.sources group.


Where To Get STDWIN
===================

I have placed a copy of the tar image named stdwin0.9.7.tar.Z on the
ftp server ftp.cwi.nl (IP address 192.16.184.180) in directory pub.

Don't forget to specify binary file transfer mode when transferring
compressed or tar files!  ("type binary")

If you don't have ftp access, send mail containing only the word HELP
to ftpmail@decwrl.dec.com or bitftp@pucc.princeton.edu, and the
server will send you instructions on how to make requests.


Getting Started Right Now
=========================

For some common systems, the system knows how to configure itself
automatically.  This works for:

	Hardware			Operating System

	DEC VAX, DECstation		Ultrix 2.2 or 3.0
	Sun3, Sun4			SunOS 4.0 or 4.1
	Silicon Graphics Personal IRIS	IRIX 3.2 or 3.3
	Harris HCX-7 (tahoe)		BSD 4.3
	PC or compatible		Linux

(For other OS versions on these or similar machines, give it a try
anyway, it may work as well, especially if there is a program called
"arch" or "machine" that prints the machine type.)  To build STDWIN
for X11 on such systems:

	./configure --with-x11
	make libstdwin.a

This creates the STDWIN library for X11 on a file named "libstdwin.a".
To build the standard test/demo application, "miniedit" (first chdir
back to the top of the STDWIN source tree):

	make miniedit

To try it out, use it to have a look at the Makefile:

	miniedit Makefile


If It Doesn't Work Right Away
=============================

You may have to add some include directories (-I...) to CFLAGS and/or
some library directories (-L...) to CLFLAGS in the Makefile.


The STDWIN source tree
======================

The STDWIN tree is organized as follows.  Starting from the top of the
tree (where this README file lives), we have:

	.		Top-level directory.

	README		The file you are now reading.

	configure       Configuration script.

	H/		Public header files of STDWIN ports and
			packages.  Stdwin applications should pass this
			directory to the compiler in a "-I" option.

	Tools/		Subroutines used by various ports and
			applications; not STDWIN-specific.
			(This has now been truncated to the bare
			minimum.)

	Gen/		(Almost) generic versions of some STDWIN
			functions, used by more than one port.  (Some
			are dummies that ignore the request or always
			fail.)

	Ports/		Source for various ports.
			Note: not all subdirectories are distributed!

	Ports/x11/	Port to X11 R4; uses Xlib only.
	Ports/alfa/	Port for alphanumeric displays using termcap/terminfo.
	Ports/vtrm/	VTRM (virtual terminal) package used by Ports/alfa.
	Ports/atrm/	Amoeba support or verion for VTRM (old).
	Ports/atari1/	Atari ST port, for Mark Williams C compiler.
	Ports/atari2/	(Newer) Atari ST port, for TurboC.
	Ports/mac/	Apple Macintosh port (both MPW and THINK C).
	Ports/msdos/	MS-DOS port (uses the alfa port mostly).
	(etc)

	Packs/		Source for packages (libraries) on top of STDWIN.

	Packs/textedit/	Standard text-editing package.
	Packs/vt/	Virtual terminal package (needs some work).

	Appls/		Source for test programs and real applications.

	Appls/README	Read this for more information.

	Doc/		Documentation for STDWIN and packages.
			Unfortunately this is terribly out of date.

	Doc/ABOUT	Blurb to be sent to prospective users.
	Doc/paper.ms	The original paper (CWI report CS-R8817) (*troff -ms).
	(etc)

	Conf/		Configuration scripts and prototype Makefiles.
			Obsolete.


--
--Guido van Rossum, CWI, Amsterdam <guido@cwi.nl>
"I don't care how excrementally runny it is, hand it over with all speed!"

--
Bruno Haible <haible@ma2s2.mathematik.uni-karlsruhe.de>

