I. Copyleft
-----------
   Copyleft (C) 1990 - 1992 Rainer Kowallik.

This file is part of LISE.

LISE is distributed in the hope that it will be useful, but
WITHOUT ANY WARRANTY.  No author or distributor accepts responsibility
to anyone for the consequences of using it or for whether it serves any
particular purpose or works at all, unless he says so in writing.  Refer
to the LISE General Public License for full details.

Everyone is granted permission to copy, modify and redistribute
LISE, but only under the conditions described in the LISE
General Public License.  A copy of this license is supposed to have been
given to you along with LISE so you can know your rights and
responsibilities.  It should be in a file named COPYING.  Among other
things, the copyright notice and this notice must be preserved on all
copies.

II. What for ?
--------------

LISE stands for on Line Interactive Spectra Examination.
It is a relatively complete collection of routins to
display, modify, and fit one dimensional spectra.
There is virtually no limit on the size of the spectra.
LISE is intended to work on commandline oriented
multitasking machines, such as UNIX Workstations
and the AMIGA series of computers.
There is also a Graphical User Interface available for
LISE applications. This GUI is based on my 
Menu Description Language Interpreter MDL. MDL itself
is not part oft this distribution, but is available
as Public Domain Programm too. The UNIX MDL needs
the OSF Motif toolkit to be installed properly. 
(The Amiga Version runs on any Amiga, even with WB 1.3)
All Distributed MDL scripts have names "*.mdl"

III. Files in this Distribution
-------------------------------

1. Graphical primitives

   ash.c
   cur.c
   hco.c
   rmtek.c
   pag.c
   point.c
   tekamiga.c
   tekdaemon.c
   tpo.c
   tsf.c
   vect.c

2. spectra manipulation

   cio.c
   genspc.c
   lbn.c
   mspc.c
   scalc.c
   stype.c
   tcal.c

3. spectra analysis / fitting

   b_hf.c
   expfit.c
   four.c
   fpeak.c
   fprompt.c
   linFIT.c
   linfit2.c
   nmrrvt.c
   rvt.c
   rvt2.c
   pacsplit.c
   fit/ExampleFn.c
   fit/fit.c
   fit/FitFnWkk.c
   fit/read_table.c
   fit/Example.prm
   fit/fit.prm
   fit/FitFnWkk.prm
   fit/test.prm

4. string handling

   str/getline.c
   str/instr.c
   str/line.c
   str/midstr.c
   str/param.c
   str/strhead.c
   str/strlen.c
   str/strtail.c

5. Menu files (for MDL)

   ExpFit.mdl
   lise.mdl
   lisemod.mdl
   LisePrompt.mdl
   LiseRvt.mdl
   specdef.mdl
   xfit.mdl

6. make files

   mklise | mklise.sh      compile individual files
   mkall  | mkall.sh       compile all files

7. miscellaneaous

   auxcfg.h
   gfx.h
   gfxamiga.h
   spec.h
   strings.h
   ccalc.c
   COPYING
   Read_Me_First,Really
   lise.doc



IV. Installation
----------------

a. What do you need for a first example ?

   UNIX version                     Amiga Version
  - The minimum consists of the following programms:
                                    Cshell (not part of the package)
   tekdaemon                        TekAmiga
   ash                              ash
   scalc                            scalc
   tekon                            tekon
   rmtek                            rmtek
  - and the following settings:
   LISEPRG=/src/lise                Assign LISE: sys:lise
  - the following datafiles:
   $LISEPRG/Aux_Config              LISE:Aux_Config
   $LISEPRG/stroke.fnt              LISE:stroke.fnt
  - and the execution path should contain the lise binaries
   PATH=$PATH:$LISEPRG              PATH ADD LISE:

b. compiling

   for the first examples, you can use the script
   "mklise" to compile individual files.
   (e.g. "mklise ash")
   To compile the whole package use the script "mkall".
   In the Amiga Version the "Tekamiga" needs to be compiled using
   "mktek" and you will need to have the "mdllib.*" from my MDL
   package for the Amiga. Since most of my Amiga scripts are using
   the CShell, the scripts are named "mklise.sh" and "mkall.sh".

c. installing binaries

   you should copy the binaries from $LISEPRG/str to /usr/bin
   (AMIGA: "LISE:str" to "c:")
   and the binaries from $LISEPRG/fit to $LISEPRG.
   (AMIGA: "LISE:fit" to "LISE:")

d. testing graphics

   On UNIX systems you should first try to open a tektronix
   screen with "(xterm -t)&". Then try to start the "tekdaemon"
   from within this tektronix window.
   Now you can go back to your ASCII terminal emulation and
   try to generate a test spectrum with
  scalc "s1[0:127]=sin(0.1*lin)"
   After this try to display this spectrum with
  ash s1 -pag -v
   If this fails, try to compile "vect" and "point".
   Try to draw a vector with
  vect 100 100 500 500
   Normally, all graphic routines should open the Tektronix
   emulation automatically.
   Use "rmtek" to close the Tektronix window.
   Try to use "ash" again.
   If this fails, you must modify the file "gfx.h"

e. environmental settings

   As mentioned above, the variable $LISEPRG must be set
   to the lise executable path and this Path must also
   be included in the normal PATH variable.
   There are two optional environment variables:
   MAXSPCLEN   contains the maximum spectra array length
   TEKBUFSIZ   contains the size of the vector buffer
               for the "tekdaemon" and "TekAmiga"
   You should modify the ".login" and ".profile" files
   and also the X11 startup files !

f. cleaning up pipes

   Sometimes it may happen, that no Tekwindow opens up
   after an "ash" command. In this case try to remove the
   graphics communication channels "/tmp/tek.pipe*"
   The exact name is defined in your "Aux_Config" file.


V. about Amiga Compilers
------------------------

I am using Aztec (MANX) C 5.0 for most of the programms, except
for the multiparameter fits. The multiparameter fit routines
(fit.c, fitfn*.c) are compiled using Lattice C 5.0
In general, all Programms can be compiled under both compilers,
but you should supply the #defines SAS or MANX.
You can mix executables from both compilers without problems.
In general there are two handicaps:
1. MANX is not able to handle large static arrays !
2. SAS generates instable code in some cases !
   (even worse with SAS 6.0 !)
In Future I want to switch over to GnuC.
 

VI. Post Scriptum
----------------

If you hear about a vacant permanent position for a Physicist (PHD)
and Computerfreak, preferably in Europe, please let me know.
Rainer Kowallik
Eisackstr. 14
1000 Berlin 62
Germany

EAN: kowallik@vax.hmi.dbp.de
