From: WSGS03::SITTA ( Flectar non frangar )
Subject: Code to use DREAM on Digital Unix - Version 1
Date: 5-NOV-1998 17:31:25
Expires: 4-JAN-1999 17:31:25
A first attempt to run DREAM on Digital OSF machines was performed.
Some code modifications are needed to run it. All the relevant code
has been put in VAXGS::DISK$MACRO:[MACROSOFT.DREAM.DEV.132.DIGUNIX] ,
where You can find
DIGITAL.CAR card file with all the updated modifications
DREAM.CRA a sample cradle file
DREAMLIB.CRA the cradle to obtain the library
CSTUFFNEW.C the new code to read the RAW data files
DSTREAD.C the new code to read the DST files
MAKEFILE the makefile to compile the code
All modifications are kept in a single file and are performed on the
default DREAM.CAR . A compiled library (libdreamlib.a) and the various
source files can be found also in /macrous3/sitta/dream/osflib under any
Gran Sasso Unix machines.
The code was tested on camelot and excalibur; I was able to read RAW,
ZEBRA and new DST data file formats. Old DST format is still to be done.
There are some problems also reading GMACRO files (the trouble could be
either on the GMACRO side or on the DREAM side, I do not know).
I was able to run also CALMOD, the relevant code can be found in
/macrous3/sitta/dream/osflib/dbscin ; expert people are verifying if
the databases, which are to be recreated, are physically valid.
The instructions to compile and run the code can be found at the beginning
of the digital.car file; I report them here.
Let me know of any trouble and/or improvement. Please keep in mind that
this is still a development version !
+PATCH,INFODIGITAL.
Version 1 - Nov 1998
This file contains some modifications to the default DREAM code to
run it on Digital Unix. It has been tested on Gran Sasso machines
camelot and excalibur.
Some of them concern the I/O file parameters (more similar to VMS than
to RISC), some other the byte swapping (again more similar to VMS, mainly
in DSTATF and ONLINE_TRACKER). Finally there is a first attempt to read
DST files. I think it would be better to have a reserved PATHCY switch to
control the code, such as RS6000 or VMS, to be used in the +SELF,IF=
command. For the time being the best solution is to have a separate card
file which as to be included in the user cradle.
Apart from the DREAM Fortran code, I made some small modifications in
the cstuff code, in the routines getshort and rawread_c (again a byte
swap fix); the altered lines are clearly marked and the file is called
cstuffnew.c . callib.cra and cmkuin.cra instead were left untouched and
simply recompiled. Finally I created a new file, dstread.c, where I put
a code, freely inspired to Nolty's rawread_c, to open and read the DST
files in the new format. With these changes I was able to read raw data
files (ftp'ed from VXMACB), ZEBRA files and new DST files (ftp'ed from
VAXGS). I also compiled CALMOD and I saw scintillator boxes in my DREAM
output; expert people are checking now if the databases (which have to
be recreated on Digital Unix machines) are correct.
I understand that the DST code is inelegant, both in dstread.c and in
newread, but this was the simplest and fastest way to do the reading
touching the minimum possible code, and in consideration of how the data
is structured both in the file and in DREAM. Improvements are welcome.
To compile a DREAM cradle, users have to force the reading of Digital
Unix modifications with the switch
+USE,DIGUNIX,T=EXE.
and they have to insert the following line in their cradle
+PAM,11,T=ATTACH,T=CARDS. (DREAMDIR)/digital.car
BEFORE dream.car and atticotrack.car . Then the compilation command
must include the object files dstread.o, cstuffnew.o, cmkuin.o and
callib.o . To read DST files, the FFREAD card INPU 2='DSTN' must be used:
in facts the new code is not able to distinguish by itself if the DST
format is the new one or the old one. The switch 2='DSTO' will be reserved
for the old format when available.