The SSP has been chosen for data acquisition by the collaboration for the BNL787 experiment. SSP modules have been in use both at BNL and TRIUMF (by members of the BNL787 group and others).
At TRIUMF, one of the SLAC methods of programming the SSP was implemented. The SLD group's VAX cross assembler and SSP debugger program SNOOPY, SSP system software from the MKII group and SSP diagnostic programs, were all obtained from SLAC.
SNOOPY was modified to produce versions that run with host-to-FASTBUS interfaces available at TRIUMF, i.e. the CERN CFI (CERN FASTBUS INTERFACE) and the TRIUMF IORFI, by R. Poutissou and A. Daviel. Only the CFI version will be discussed further (and referred to as TRIUMF SNOOPY).
Extra features were added to TRIUMF SNOOPY (such as a breakpoint handler and additional symbolic debugging aids), some of which existed in the FORTH SSP programs at SLAC. This work was done by A.J. Daviel.
Meanwhile, at BNL, the MPS group also chose to use the SSP for their experiment. One of their members, R. Hackenburg, developed a VMS MACRO cross assembler, and an SSP "operating developed a VMS MACRO cross assembler, and an SSP "operating or BNLSYS) based on the SLAC system (see BNLSSP: SSP_PROGRAMMER.MEM for details). He also developed a number of FASTBUS access routines, including BSI (Buffered Segment Interconnect) routines that permit access to other FASTBUS segments through a chain of SSPs.
This "BNL method" formed an alternative to the SLAC cross assembler and system (the "SLAC method"). The BNL787 collaboration decided to adopt the BNL method for BNL787 SSP code.
Therefore, support for SSP load files produced by the BNL method, and access to other segments using BSI routines was added to the TRIUMF SNOOPY by R. Poutissou, while retaining the support for files produced using the SLAC method (such as SLAC SSP diagnostic code).
The TRIUMF version of SNOOPY is installed at TRIUMF on the microVAX (KAON::) and at BNL on the VAX750 (BNL787::). In
summary, TRIUMF SNOOPY can download and support code written using any of the following languages:
o SLAC VAX Cross Assembly language
o BNL VAX MACRO cross-assembly language
(produced on a VAX or microVAX)
o IBM Assembly language
o IBM Fortran
(produced on an IBM machine running VM)
The source codes of the first three methods are incompatible; although all use the IBM assembler instruction set, the format is quite different. The formats of the load files are also incompatible.
TRIUMF SNOOPY has useful symbolic debugging aids and a breakpoint handler. It also supports SSPs connected by a cable segment using the BSI method developed at BNL (see 787DOC:SSP_PROGRAMMER.MEM for details). This may preclude support in SNOOPY for the SLAC SSP cable segment method; this has not been investigated at TRIUMF.
This document describes the features of TRIUMF SNOOPY, henceforth referred to as "SNOOPY".