How to Install the 3D Event Display on an SGI or RS6000
While the bulk of SLD's code does not yet run on UNIX, the SLD Event Display
system can still take advantage of the 3D interactive graphics capabilities
of SGI and IBM RS6000 workstations. One still runs the basic IDA job on a
VAX, but when it comes time to display an event, the event picture is
shipped out over the Internet to be picked up and displayed by a network
deamon running on the Unix workstation. A few actions like zooms, rotations
and translations are handled directly by the Unix workstation. Other actions
(typically those that take place when the user picks on something in the
event display) send information back to the host VAX.
Like most things having to do with the Internet, the system works amazingly
well. It has been run on SGI and RS6000 workstations at many different
institutions including SLAC, Caltech, Yale, Rutgers and UCSC.
In some of these cases, the VAX hosts and the Unix workstations have
been in the same room. In other cases, the two halves of this process
have been at opposite ends of the United States.
Here's the short version of what is required to get the system running on
one's workstation.
All the necessary code for the Unix workstation is contained in a compressed
tar file available from SLAC's anonymous ftp site. One copies that code
to one's Unix workstation, builds the necessary executable, and makes single
line changes to two of the system files. On the VAX side, one adds one
small block of code to the constant file that defines the set of known
graphics devices. The whole process takes only an hour or two.
More detailed instructions follow.
Installation on the Unix Side
Note that you will need root privileges to complete the last two steps
of the Unix installation.
Copy the necessary code to your Unix workstation by anonymous ftp as follows:
-
start on your workstation in a clean new directory
-
ftp ftp.slac.stanford.edu
-
l anonymous
-
give your name as the password
-
binary
-
for the SGI:
get /pub/ugserve/ugserve-06-15-93.tar.Z.sgi ugserve.tar.Z
-
for the RS6000:
get /pub/ugserve/ugserve-06-00-93.tar.Z.aix ugserve.tar.Z
-
quit ftp
Uncompress the code and make the ugserve executable as follows:
-
uncompress ugserve.tar.Z
-
tar -xf ugserve.tar
-
make
For the rest of the work on the Unix side, you will need root privileges.
Copy the ugserve executable to its production directory:
-
cp ugserve /usr/local/bin/ugserve
Add the following line to the system file /etc/services
ugserve 5199/tcp # SLAC UGS graphics server
Add the following line to the system file /usr/etc/inetd.conf
ugserve stream tcp nowait sldpub /usr/local/bin/ugserve ugserve
The final step on the Unix side is to make inetd read the updated files
-
use ps -ef to find the inetd process id
-
kill -HUP process-id to make inetd reinitialize
Installation on the VAX Side
Your Unix workstation needs to be defined in the file DSPDVIC.CONSTANT.
Copy the file from the PRODDISPLAY directory to the directory from which
you plan to run your IDA job.
Then modify your copy of DSPDVIC.CONSTANT as follows:
-
near the top of the file, add one to the value of NDEVICE
-
near the bottom of the file, add a new DEVICE block like the one
that has DEVNAME "TOP".
-
increment the DEVICE number
-
replace the DEVNAME with whatever name you want to use in your
DSP SELECT statement. It can be up to eight characters long.
-
Replace the internet node ID after CHANNEL= with your device's node ID.
-
double check that you really did do step one
(adding one to the value of NDEVICE).
Running
Test the system as follows:
-
make sure that someone is logged in to your SGI or RS6000 and that
X Windows is up and running
-
get a VAX window
-
make sure your VAX's current directory is the one that has your new
version of DSPDVIC.CONSTANT
-
start IDA by typing IDA
-
load the event display by typing CMDPROC DSPCMD
-
select your display device by typing DSP SELECT followed by the name
you chose for your device in your new DSPDVIC.CONSTANT
-
type DSP INT
-
a small event display window should appear on your SGI or RS6000
-
expand the window by clicking and dragging its lower right corner
-
to return control to the VAX IDA window, hit F3 or select "Return to IDA"
from the menu at the left of the event display
If you get an error message that "The Device-Dependent Code for the Selected
Device is not Available," it means that you need to install a different
version of SLAC's Unified Graphics on your VAX. The standard version in DUCS
does not have the network extensions necessary to drive the SGI or RS6000.
Copy the extended version from one of the following two places,
depending on whether you are using an Alpha or a VAX.
-
Alpha:
DISK$SLD_FAC0:[THE_ONE_AND_ONLY_UNIVERSAL_APPROVED_UG.ALPHA]UGSRTL_XZ.EXE
-
VAX:
DISK$SLD_FAC0:[THE_ONE_AND_ONLY_UNIVERSAL_APPROVED_UG]UGSRTL_XZ.EXE
-
Then declare this to be your UG by listing it in the command
DEFINE UGSRTL
See the DSP section of the manual
IDA commands
for details on driving the 3D interactive event display.
Joseph
Perl
13 June 1994