                        Regina 3.3
                    for Win9x/NT/2k/XP

This distribution contains 32 bit executables of the Regina Rexx interpreter 
for Win9x/NT/2k/XP, and some sample programs, most of which are designed to test
new features of this interpreter.

Regina is distributed under the GNU Library General Public Licence.
See COPYING-LIB for details.

This port of Regina to Win9x/NT/2k/XP differs from the port of Regina on the
Windows NT Resource Kit in two ways:

1)  This port is sanctioned by the author of Regina, Anders Christensen.
2)  This port does not provide any OLE or Win32 support nor does it
    provide builtin access to the Registry.  It does however, provide the
    standard Rexx API.  This enables C programs written under OS/2 and
    Unix that use the standard API, to be easily ported to Win9x/NT/2k/XP.
    It also means that C programs written using Quercus Rexx and Object
    Rexx under Win9x/NT/2k to be recompiled using Regina, and C programs
    written for Regina to be recompiled using Quercus Rexx or Object
    Rexx.
    The Win32 functions that were built into Regina are available as
    an external function package from http://www.interlog.com/~ptjm

The files in this archive are:

README             - this file
README.3x          - readme files for 3.x releases of Regina
README_SAFE        - details on using Regina is "safe" mode
COPYING-LIB        - GNU Library General Public Licence
file_id.diz        - Description file for BBS use
regina.exe         - 32bit Regina Rexx interpreter executable
regina.dll         - 32bit Regina Rexx interpreter dynamic library
regina.lib         - Import library for Visual C++
regina_borland.lib - Import Library for Borland C++
rexx.lib           - Static library for Visual C++
rexx.exe           - Regina executable - does not require regina.dll
rexxsaa.h          - Header file for access to regina.dll
test1.dll          - Sample external function packages; used by dynfunc.rexx
test2.dll            demo Rexx program
demo\*.rexx        - Sample Rexx programs
nls\*.mtb          - Native Language message files

The remainder of this section is relevant only if you are not installing
Regina via the self-extracing installation.

Installation is simply a matter of copying the regina.exe and regina.dll
files into a directory specified in your PATH environment variable.

If you want to have Regina error messages displayed in you native
language, set the environment variable; REGINA_LANG to the two-character
language abbreviation (the first two chracters of a file in the NLS 
directory), and set REGINA_LANG_DIR to the directory containing the
*.mtb files.

If you wish to be able to run Rexx programs automatically, ie without
specifying the regina.exe or the file extension, then run the following
Windows commands from a command prompt: (you only need to do this once)
Note: The following commands will only work under NT/2k/XP; they are not
supported under Windows 95/98.

C:\> ftype Regina=c:\regina\regina.exe "%1" %*
C:\> assoc .rexx=Regina
C:\> set PATHEXT=%PATHEXT%;.rexx

The above commands assume that regina.exe is in c:\regina and that you
only want to execute Rexx programs that have an extension of .rexx.
Add another ASSOC command to associate files with other extensions.

You will probably want to set the PATHEXT variable in the Environment 
section of the System Control Panel applet.

Using this build of Regina with other Win32 Compilers
=====================================================
Nearly every C compiler on the Win32 platforms generates object code that
is incompatible with one another.  So using this build of Regina with a
C compiler other than MS Visual C/C++ requires that you link with the
import library appropriate to your compiler.  The import libraries supplied
in this package are:

Compiler        Library Name
--------------------------------
Borland C++     regina_borland.lib

ADRRESS WITH
============
Redirection of program's input and/or output in general is relatively 
predictable on most operating systems, however mention must be made of 
behaviour specific to the Windows platform.

Windows and to a lesser degree OS/2, have techniques to hide windows, 
to start programs in separate windows and other cool features.  Florian 
did some significant testing of this on all different Windows platforms 
and there is bad news. There is no consistent mechanism to start external 
programs without error and full control. Sounds strange, is strange. 
We have the options to:

1) use the interpreter (ADDRESS SYSTEM) or not (ADDRESS PATH or CMD)
2) start GUI or text mode programs
3) choose the interpreter (CMD.EXE or COMMAND.COM)

The main goal was to start GUIs separately and text mode programs under the 
control of the caller (GUI or text). Regina can be part of a GUI progress 
and must be treated as GUI in this case. Most people get upset with console 
windows popping up showing nothing.

Some combinations of the interpreter, the target programs, and the options 
we can pass along to the system lead to nonstarting, nonstopping, crashing 
programs. Or we may loose control by means of broken communications to the 
subprocess (ADDRESS WITH...).

So we had to choose either to let program run safely OR to let program run 
pretty. Blame the guys who designed Windows, not the Regina crew!

So, if you have a DOS graphical extension known as Windows 95, Windows 98 or 
Windows Millenium you will get console windows popping up if run from a GUI 
program. We are sorry for this, we can't change it.

Those Systems with a 32 bit startup kernel known as Windows NT, Windows 2000, 
Windows XP will hide the console windows when starting a text mode program 
from a GUI program.

ATTENTION: Your programs might crash or you may loose control either of the 
called program or of Regina if you change the interpreter inside your Rexx 
program. Never use 
CALL VALUE 'COMSPEC', something, 'SYSTEM'
in your program if you don't know the consequences!  Unpredictable behaviour 
is likely to occur; use at your own peril!

Regina Resources
================
For more information on Regina, visit the Regina Home page at
http://regina-rexx.sf.net

Cheers, Mark.
------------------------------------------------------------------------
* Mark Hessling,  M.Hessling@qut.edu.au  http://www.lightlink.com/hessling/
* Author of THE, a Free XEDIT/KEDIT editor and, Rexx/SQL
* Maintainer of PDCurses: Public Domain Curses and, Regina Rexx interpreter
* Use Rexx ? join the Rexx Language Association: http://www.rexxla.org
------------------------------------------------------------------------
