\chapter{ADAM}
\section{Introduction}

One of the features of ADAM is the ability to define command procedures
which can be used just as though they are normal ACL (ADAM Command Language)
commands. The philosophy adopted for the CCD software is to provide commands at
several levels. At the top level are commands that can be used by those
requiring a high-level system.  These commands are, where possible, similar to
those of the ADAM IPCS software (which are in turn similar to those of the AAT
IPCS software).

In addition some of the commands used by the high-level system, such as
CLEAR (the chip), EXPOSE (for t seconds), READ (the chip to disk), DISP (on the
Lexidata) and TAPE (write data to tape as a FITS image), are documented in the
expectation that astronomers will build their own observing procedures from
these building blocks.

Included in the standard ADAM software are a set of application programs
for displaying and manipulating bulk data arrays. The enthusiastic astronomer
may bring his own application programs and run them as part of ADAM. 
Alternatively observers may contact their Support Astronomer concerning 
facilities that are not currently provided.

In command descriptions, the minimum abbreviation is indicated by putting
the optional part in parentheses. For example, GLA(NCE) is abbreviable to GLA
but not inside procedures where the full command name is required.
\vfill
\newpage
\subsection{HELP}

The HELP command inside ADAM can be used to obtain on-line information.
There are several levels of HELP. A glossary of commands is given in Section 
5.7 separated according to topic.


\begin{quote}

     {\bf Parameters}

      Any parameters are the topics on which help is required.  

     {\bf Examples}

      Adam:$>$ HELP CCD\\
      Contains information concerning the CCD subsystems.\\

      Adam:$>$ HELP CCD SUMMARY\\
      Gives a glossary of the commands that can be used to control the 
      CCD cameras.\\

      Adam:$>$ HELP FITS\\
      All data is written to tape at 1600 bpi in FITS format (see Appendix B).
      Information can be obtained from\\

      Adam:$>$ HELP FITS COMMANDS SUMMARY\\
      Which gives a glossary of commands.\\

      Adam:$>$ HELP ACL SUMMARY\\
      Gives a summary of entries in the ADAM Command Language library.\\

      Adam:$>$ HELP ACL\_FACILITIES SUMMARY\\
      Summarises extra ACL facilities.\\

      Adam:$>$ HELP LEXIDATA SUMMARY\\
      This gives a summary of the programs that can be used to display data
      or give commands to the LEXIDATA image display device.\\

      Adam:$>$ HELP UTIL SUMMARY\\
      Contains a summary of the utility commands available.\\

      Adam:$>$ HELP TCS SUMMARY\\
      Contains the commands applicable to the Telescope Control System 
      user interface.\\

      Adam:$>$ HELP SPEC SUMMARY\\
      Here are summarized the commands applicable to the IDS that are available 
      to the observer.\\

      Adam:$>$ HELP AGBX SUMMARY\\
      Gives the commands applicable to the A\&G box that are available to 
      the observer.\\

\end{quote}
Some of the CCD control commands are discussed in what follows.

\section{CCD Control commands}

     These commands are described beginning with the higher level ones and
ending with the lower level ones that are useful in procedures.

\subsubsection{GLA(NCE) - a trial exposure }

     Performs a trial exposure, always into the same file :
\begin{verbatim}

   1. Clear the chip unless NOCLEAR flag is set
   2. Pre-flash if non-zero pre-flash time set
   3. Expose (open shutter, time exposure, close shutter)
   4. Read out chip
   5. Reset the pre-flash time to the default (0 at present)
   6. Display data on the Lexidata
\end{verbatim}

\begin{quote}
     {\bf Parameters}

      A single parameter, the exposure time in seconds, is expected.  If
omitted, it will be prompted for.

     {\bf Examples}

      Adam:$>$ GLANCE 1.5

      Perform a GLANCE run with a 1.5 second exposure.

     {\bf Notes}

     During the GLANCE run (which will normally be short), nothing else can be
done on the ADAM terminal.

     If the exposure time is zero the shutter is not opened at all.

     The pre-flash period can be set by using the SETFLASH command before the
GLANCE command.
\end{quote}

\subsubsection{RU(N) - the primary exposure command}

     Performs a run, always into a new file :
\begin{verbatim}
   1. Check telemetry
   2. Clear the chip unless NOCLEAR flag is set
   3. Pre-flash if non-zero pre-flash time set
   4. Expose (open shutter, time exposure, close shutter)
   5. Read out chip
   6. Reset the pre-flash time to the default (0 at present time)
   7. Display data on Lexidata
   8. Write data to disk
   9. Write data to tape as FITS image if tape is selected dump device
  10. Increments next run number
\end{verbatim}

\begin{quote}
     {\bf Parameters}

      As for GLANCE, the exposure time in seconds, prompted for if omitted.

      The object name can be given as a second parameter.  It should be in
double quotes and will be prompted for if omitted.  The object name is limited
to 24 characters.

     {\bf Examples}

      Adam:$>$ RUN 1000 {\tt "NGC4151 long-slit"}

      Perform a 1000 second run looking at NGC 4151. This is the most efficient
way of starting a run as nothing happens until all prompts are answered.

     {\bf Notes}

During all but the briefest runs, the ADAM terminal is available for displaying
the RUNSTATus, PAUSEing, CONTINUEing, STOPping, ABORTing and running
application programs. 

All runs are timed using the Time Service, giving exposure durations accurate
to about one millisecond. 
\end{quote}

\subsubsection{PA(USE)/CONT(INUE)/STO(P)/ABO(RT) - run control (1)}

     Pause / continue / stop / abort an active run. For PAUSE, the timer is
stopped and the shutter is closed. For CONTINUE the timer is restarted and the
shutter is opened. STOP behaves exactly as though the timer period had expired.
ABORT stops dead without reading out.
\begin{quote}
     {\bf Parameters}

      None

     {\bf Examples}

      Adam:$>$ PAUSE\hfill\break
      Adam:$>$ CONTINUE\hfill\break

     {\bf Notes}

     The PAUSE command will be rejected if a run is not currently active.

     The CONTINUE command will be rejected if a run is not currently PAUSEd.
\end{quote}

\subsubsection{RESTART}

This command will be needed only under one very specific circumstance: a CCD 
exposure is running and ADAM crashes for any reason, e.g.~power failure.
\begin{quote}

{\bf Parameters}

None

{\bf Notes}

On RESTARTing ADAM the run active bit may still be set in the CCD controller. 
If this is the case, the software detects the fact and asks you to type
RESTART when the ADAM:$>$ prompt appears. Only after RESTARTing are you able 
to do further RUNs or GLANCEs.

\end{quote}

\subsubsection{RUNSTAT(US)/TIM(E) - run control (2)}

RUNSTATUS says whether a run is active or paused and prints the current
elapsed time. TIME alters the exposure time for the current run.
\begin{quote}
     {\bf Parameters}

RUNSTATUS has none.  TIME has one, the new run time in seconds.  If
omitted, it will be prompted for.

     {\bf Examples}

      Adam:$>$ RUNSTAT\hfill\break
      Adam:$>$ TIME 100\hfill\break
\end{quote}

\subsubsection{TEL(E) - system telemetry}

     Read and display telemetry values, indicating which ones are out of range.

\begin{quote}
     {\bf Parameters}

The default is to output only those values that are out of range.  If called
with QUIET=F, all values are listed.  If called with HEADER=T, a heading is
printed. 


     {\bf Examples}

      Adam:$>$ TELE QUIET=F     \hspace{1.cm} List all values
\end{quote}

\subsubsection{CLE(AR)/NOCLEAR)/EXPO(SE)/REA(D) - home-made runs}

CLEAR clears the chip, NOCLEAR suppresses CLEAR on the next GLANCE or RUN,
EXPOSE t exposes for t seconds and READ reads out the chip to the GLANCE file.
\begin{quote}
     {\bf Parameters}

Only EXPOSE needs a parameter. It is mandatory and is the exposure time in
seconds. 

READ will assume the GLANCE file, but if a parameter is specified, it will be
taken as the file into which to read. 

     {\bf Examples}

      Adam:$>$ CLEAR      \hspace{1.cm} clear the chip\hfill\break
      Adam:$>$ NOCLEAR    \hspace{1.cm}  Don't clear the chip on the 
next GLANCE or RUN\hfill\break
      Adam:$>$ EXPOSE 10  \hspace{1.cm} expose for 10 seconds\hfill\break
      Adam:$>$ READ       \hspace{1.cm} read out the chip\hfill\break

     {\bf Notes}

     If t=0, EXPOSE does precisely nothing.
\end{quote}

\subsubsection{QFL(ASH)/SETFLA(SH)/FL(ASH) - pre-flash control}

     QFLASH prints out the currently selected pre-flash time, measured in
arbitrary units of about 1 microsecond. SETFLASH sets up this time.  The actual
flash is performed automatically prior to a GLANCE or RUN, or on demand using
the FLASH command.
\begin{quote}
     {\bf Parameters}

      QFLASH requires none. SETFLASH requires the pre-flash time.  If omitted,
it will be prompted for.  FLASH requires none since it uses the time previously
set up by SETFLASH.

     {\bf Examples}

      Adam:$>$ SETFL 10\hfill\break
      Adam:$>$ FLASH\hfill\break

     {\bf Notes}

     SETFLASH does no more than set a microcode variable governing the flash
period. It performs no flash.  To disable pre-flash, give a zero flash time.
If the preset FLASH time is 0, FLASH does nothing.

Default pre-flash can be set with PREFLASHDEFAULT=n. If you change the pre-flash
default ,use always SETFLASH before starting a RUN. PREFLASHDEFAULT just sets
up a parameter, SETFLASH actually sends it to the CCD controller.
\end{quote}

\subsubsection{SHUTDOWN - close ADAM}

Use this command to close down ADAM.
\begin{quote}
{\bf Examples}
ADAM:$>$ SHUTDOWN \hspace{1.cm} the prompt will change to\\
$\star$ \ SO \hspace{1.cm} to sign off from the Perkin Elmer\\

{\bf Notes}

SHUTDOWN closes all shutters, switches off lamps, etc, and puts the instrument
into a well defined state.
\end{quote}

\section{LEXIDATA display operations}

\subsubsection{DIS(P) - display an image}

Displays an image on the Lexidata.  This will not often be necessary when
using the high-level commands, since both GLANCE and RUN do an automatic
display. NODISP=1 will disable automatic display. To reset type NODISP=0.
\begin{quote}
     {\bf Parameters}

There are some, but default values will normally be acceptable.  By default,
the current image is displayed unscaled and centred in the centre of the
Lexidata screen. 

     {\bf Examples}

     Adam:$>$ DISP

     {\bf Notes}

When displaying an image that has a dimension larger than 512, the parts that
lie outside the Lexidata are not displayed.  To get round this problem it is
best to rotate the image on the Lexidata (it has 640 pixels in the horizontal
direction which is sufficient to show afull GEC CCD image). The rotation on the
Lexidata is controlled by three parameters XYSWAP, LRSWAP and TBSWAP which by
default are set to 300. 

For the 235mm camera type

ADAM:$>$ XYSWAP=1\\
ADAM:$>$ LRSWAP=1\\

for the 500mm camera type

ADAM:$>$ XYSWAP=1\\
ADAM:$>$ TBSWAP=1\\

This will rotate the images so that longer wavelengths are to the right.

Use DIPARM to alter the scaling option (note that it is faster {\bf not} to
scale the data and {\bf much} faster, when scaling, to leave LOW=0, since, where
possible, scaling is done using shift operations.)
\end{quote}

\subsubsection{QDI(PARM)/DIP(ARM) - enquire and alter display parameters}

     QDIPARM prints what the current display parameters are.  DIPARM alters
them.  Initially no scaling will be performed.

\begin{quote}
     {\bf Parameters}

      QDIPARM requires none. For DIPARM :

      option - 1, 2 or 3 for scaling options NONE (no scaling), FOLD (scale
with wraparound) and TRUNCATE (scale with no wraparound) respectively

      low    - if option$>$1, data value to map to minimum intensity

      high   - if option$>$1, data value to map to maximum intensity

      If omitted, all parameters are prompted for.

     {\bf Examples}

      Adam:$>$ DIPARM 1 \hspace{1.cm}    scale = NONE

     {\bf Notes}

     QDIPARM will print the current scaling values.

     If the parameters are omitted, so a prompt is issued for option, the user
response should be N, F or T, not 1, 2 or 3, and a response of {\tt "?"} 
will show
what the acceptable responses are.  This comment is also true of the DATA,
MODE, SMVAR and GMVAR commands.

     For maximum information content, the FOLD scaling option is recommended.
\end{quote}

\subsubsection{PHOT(OM) - simple statistics and profile utilities}

     Interacts with the image currently displayed on
the Lexidata. The program has several modes of operation which are described
briefly below. The user interaction is performed entirely with the Lexidata
trackerball / joystick and switches. Each switch has a specific meaning which
is common to all the Lexidata programs.

\subsubsection{The Lexidata joystick and switches}

     The Lexidata joystick has six switches. These are labelled, from left to
right, EXIT, MODE, DOWN, RESET, UP and READ. All Lexidata programs that use the
switches light up only those which they use and give each switch an
interpretation which is in the general spirit of its label.  The general
meanings are :
\begin{verbatim}
   1. EXIT  - Exit from the program
   2. MODE  - Cycle through various options presented by the program
   3. DOWN  - Decrease some quantity or quantities
   4. RESET - Reset some quantity or quantities
   5. UP    - Increase some quantity or quantities
   6. READ  - Read the cursor position (Blue button)
\end{verbatim}
\begin{quote}
     {\bf Notes}

     It is always the change in state that is important, never the actual
position of the switch.
\end{quote}

     There are six modes of operation, and the MODE switch is used to cycle
through them. The initial mode is ``Profile'', followed by ``Stats'', ``List'',
``Zoom'', ``Cursor'' and ``Dist'' respectively. The RESET switch always 
unzooms the
image and sets everything back to its default value. The EXIT switch always
causes immediate program exit.

     The behaviour of the remaining switches, READ, DOWN and UP, is described
for each mode :
\begin{description}

   \item[1. PROFILE] - The READ switch causes a profile to be drawn from the previous
cursor position to the current position. Currently only horizontal and vertical
profiles are permitted. The UP and DOWN switches control scaling - initially
data is truncated at 16383 and DOWN halves the cutoff, UP doubles it

   \item[2. STATS]   - The READ switch causes statistics of a rectangular
neighbourhood of the current position to be listed  on the terminal. These
include a sky estimate based  on the rim of the box, estimate of
sky-subtracted  flux,  standard deviations and maximum/minimum pixel  values
within the box. The UP and DOWN switches  control the box size - initially it
is of side 11  and DOWN decreases it by 2, UP increases it by 2

   \item[3. LIST]    - The READ switch causes the pixel values of a  rectangular
neighbourhood to be listed on the  terminal. The box is the same one as used by
STATS  and its size is controlled in the same way using the  UP and DOWN
switches

   \item[4. ZOOM]   - The READ switch causes the image to be zoomed about the current
position with the current zoom factor.  The UP and DOWN switches control the
current zoom factor - initially it is whatever it was on entry to PHOTOM. 
DOWN decreases it by 1, UP increases it by 1

   \item[5. CURSOR]  - The READ switch merely echoes the current position in pixel and
user coordinates, plus the corresponding data value.  In fact this information
is given in all modes. The UP and DOWN switches control the box size in the 
same way as in the STATS and LIST modes

   \item[6. DIST]    - The READ switch causes the distance between the current
position  and the last position to be calculated (in pixels) and listed on the
terminal.  The UP and DOWN switches control the box size in the same way as in
the STATS and LIST modes
\end{description}

\begin{quote}
     {\bf Parameters}

      There are some, but they should not normally be necessary when running
within the CCD system.

     {\bf Examples}

      Adam:$>$ PHOTOM

     {\bf Notes}

     PHOTOM, in common with all the Lexidata programs, will automatically use
the current image, i.e.~the one that has most recently been read from the CCD.

     PHOTOM uses the BIAS value given at startup when it estimates line
centres.  A better value can be estimated using PHOTOM in STATS mode or else
the STATS utility.  BIAS can be updated using the BIAS command.

     The pixel coordinates of the last two points selected in PHOTOM are
written as ACL variables PHOTOM\_PXX1, PHOTOM\_PXY1, PHOTOM\_PXX2 and
PHOTOM\_PXY2.  Thus PHOTOM can be used in a procedure as an easy way of getting
two points selected by the user.
\end{quote}

\subsubsection{SPECTRUM/SPECPLOT - crude on-line data reduction}

SPECTRUM allows a simple extraction of a 1-D spectrum, sky subtracted, and
SPECPLOT will plot the spectrum with a crude wavelength scale. These are 
described in detail in Section 5.6

\subsubsection{Lookup table and other Lexidata commands}

     The following commands are available: 

\begin{verbatim}
   1. CLOV(ER)      - Clear the Lexidata overlay planes
   2. LEXINI(T)     - Reset the Lexidata and load an appropriate lookup table
   3. LEXCL(EAR)    - Clear or reset the Lexidata
   4. LEXPA(N)      - Pan and zoom
   5. LEXZOO(M)     - Zoom by hand with specified factor about specified
                      position
   6. LUTCON(TRAST) - Manipulate the lookup table to enhance contrast
   7. LUT(LOAD)     - Load a lookup table (try COLS, GREY)
   8. LUTROT(ATE)   - Rotate the lookup table
   9. UNZ(OOM)      - Return to an unzoomed and unpanned state
\end{verbatim}


\section{Data file control}

\subsubsection{Image storage}

     The file handling commands present a view of the disk as :
\begin{quote}
   1. The current image\\*
   2. The GLANCE file\\*
   3. A set of RUN files\\*
   4. A set of STORE files\\*
   5. A set of TEMPorary files\\*
\end{quote}

     The current image can always be referred to as IMAGE and the GLANCE file
as GFILE.  A set of variables RUN, STORE and TEMP can be used as shorthand to
refer to RUN, STORE and TEMPorary files. For example, R1 is RUN number 1.
\begin{quote}
     {\bf Examples}

      Adam:$>$ ADD GFILE R1 T1

      adds the glance file to RUN 1 and stores the result in TEMP 1.

      QFILES or PRINT IMAGE will always give the name of the current image, and
IMAGE=$<val>$ will alter the current image.  For example to make the current
image the first STORE file :

          Adam:$>$ IMAGE=STORE1
\end{quote}


\subsubsection{NEXTR(UN) - change next run number}

     Alter the next run number.  If the run number is reduced then it is
possible to overwrite an existing run. This is not allowed unless that run has
already been successfully archived to tape.
\begin{quote}
     {\bf Parameters}

      The next run number. Will be prompted for if omitted.

     {\bf Examples}

      Adam:$>$ NEXTR 23
\end{quote}


\subsubsection{KEE(P)/STO(RE)/REC(ALL) - image file handling}

     KEEP promotes the GLANCE file to be a run file and writes it to tape if
the tape is the dump device. RECALL makes a previous run the current image.
STORE stores a run in a store file for safe keeping.

\begin{quote}

     {\bf Parameters}

      KEEP requires the object name for the glance image. RECALL requires the
run number to recall, and STORE requires the run number to store and the store
file number in which it is to be stored. All are prompted for if omitted.

     {\bf Examples}

      Adam:$>$ KEEP CuAr-arc\\*
      Adam:$>$ REC 10\\*
      Adam:$>$ STORE 10 3\\*
\end{quote}

\subsubsection{DEPROTECT}

This command will deprotect your glance file if it has become protected. 
Normally it is unprotected and so it gets overwritten by each new GLANCE.
If for any reason a CCD exposure cannot be read into its correct run file,
it is automatically dumped into the glance file which becomes protected so
that unless specific action is taken, it cannot be overwritten. The specific
action may be KEEP (to copy to the next available RUN file) or DEPROTECT.

\subsubsection{DIR}

Will list all the files in your account.

\subsubsection{OBSN(AME) - change observer's name}

     Alter the observer's name. By default the observer's name is the initials
with which you signed on to ADAM. It is used to generate the names for RUN,
STORE and TEMPorary files.

\begin{quote}     
      {\bf Parameters}

      The new initials to use. If omitted they will be prompted for.

     {\bf Examples}

      Adam:$>$ OBSNAME ET 
\end{quote}

\subsubsection{COM(MENT) - add comments to current run}

     Add comment descriptors to the current run.
\begin{quote}

     {\bf Parameters}

      None.  When prompted, type in as many comments as required and terminate
input with a blank line.

     {\bf Examples}

      Adam:$>$ COMMENT\\*
      Comment$>$This is a comment\\*
      Comment$>$\\*

     {\bf Notes}

     Of course if the run has already been archived there is not much point
\end{quote}

\subsubsection{COPY - copy one image to another}

     Copy one image to another. All descriptors are copied as well.
\begin{quote}

     {\bf Parameters}

      Two are required - the name of the input file and the name of the output
file. If omitted they will be prompted for.

     {\bf Examples}

      Adam:$>$ COPY GFILE STORE2 \hspace{1.cm} Copies GLANCE file to 2nd 
STORE file

\end{quote}
\subsubsection{PUR(GE) - delete run files from disk}

     Delete run files from disk.
\begin{quote}
     {\bf Parameters}

      Five are required - the name of the disk, the name of the detector being
used, the observer's initials, the first run number to be deleted and the last
run number to be deleted.  If omitted, all are prompted for.

     {\bf Examples}

      Adam:$>$ PURGE SYS CCD ET 1 10

     {\bf Notes}

     If a file has not yet been archived to tape PURGE checks that you REALLY
want to delete it. PURGE is not recommended until you have your data safely on
your personal C(opy) tape.

\end{quote}

\subsubsection{DAT(A) - redefine the dump device}

     Redefine the dump device and select the next run number.
\begin{quote}
     {\bf Parameters}

      It's easiest to reply to the prompts! If changing to using tape, FITSDIR
is run to determine the next run number by reading from the tape what the  last
run number was.  If changing to using disk only, you are prompted for the next
run number.

     {\bf Examples}

      Adam:$>$ DATA
\end{quote}

\subsubsection{TAP(E) - write current image to tape}

     Write current image to tape. As soon as the tape write has started the
ADAM prompt is given and you can continue with runs etc.
\begin{quote}
     {\bf Parameters}

      None

     {\bf Examples}

      Adam:$>$ TAPE

     {\bf Notes}

     TAPE assumes that the tape is positioned between a double tape mark.  If
not, the tape is advanced in search of one and the file is appended.

     When TAPE has finished, the message ``Tape dump verify complete'' is
output.  A second TAPE command can be issued whilst TAPE is active but this
will initiate a wait until the first one completes.

     The data on tape is always verified against the disk data.
\end{quote}


\subsubsection{FITSINIT/FITSDIR/FITSOUT/FITSIN - FITS tape utilities}

FITSINIT initialises a tape for writing data from disk.
FITSDIR lists details of FITS images already on tape. FITSOUT writes a FITS
image to tape (see Appendix B).
It's used by TAPE. FITSIN reads a FITS image from tape to disk.

\begin{quote}
     {\bf Parameters}

      Respond to prompts. 
\end{quote}

\subsubsection{ARCH(IVE) - write set of runs to tape}

     Write a contiguous set of runs to tape. After having successfully done
this there is an option to PURGE the files from the disk.
\begin{quote}
     {\bf Parameters}

      Two are required, the first and last run numbers to be archived. If
omitted, they are prompted for.

     {\bf Examples}

      Adam:$>$ ARCHIVE 10 20

{\bf Notes}

This command is not recommended, better use FITSOUT. Do not delete data from 
disk until your Copy tape has been produced.

\end{quote}

\section{Miscellaneous commands}

\subsubsection{QCH(IP)/CH(IP) - enquire and alter chip type}

     QCHIP prints what the current chip type is. CHIP alters the chip type.
\begin{quote}
     {\bf Parameters}

      QCHIP requires none. CHIP requires the chip's name or alternatively will
prompt if the parameter is omitted.

     {\bf Examples}

      Adam:$>$ CHIP GEC4

     {\bf Notes}

     Altering the chip type automatically alters the readout window to
correspond to the physical chip size.

     When changing chips, the control store is automatically loaded, read back
and checked.
\end{quote}

\subsubsection{QBI(AS)/BIA(S) - enquire and alter bias level}

     QBIAS prints what value the system is currently assuming for the chip bias
level.  BIAS alter it.

\begin{quote}
     {\bf Parameters}

      QBIAS requires none.  BIAS requires one, the new bias level.  If omitted,
the current bias is shown, and a new value will be prompted for.

     {\bf Examples}

      Adam:$>$ BIAS 200

     {\bf Notes}

     The bias level is used in various parts of the system.  For example,
PHOTOM subtracts it before estimating centres of gravity, and so does the
automatic FOCUS procedure.
\end{quote}

\subsubsection{QWIN(DOW)/WIN(DOW) - enquire and alter readout window}

     QWINDOW prints what the current readout window is. WINDOW alters it.
\begin{quote}
     {\bf Parameters}

      QWINDOW requires none. WINDOW requires four, which are (XSTART,YSTART)
and (XSIZE,YSIZE) respectively.  The co-ordinate system is that of the chip
relative to (1,1) which is the light sensitive pixel at the corner from which
it is read out.  (XSTART,YSTART) defines the bottom left corner of the read out
data and (XSIZE,YSIZE) are its dimensions.


     {\bf Examples}

      Adam:$>$ WINDOW 1 385 1 576

     {\bf Notes}

     Overscan can be achieved by making XSIZE or YSIZE such that the image
exceeds the physical chip dimension.  

     To restore the default window the easiest course of action is to issue the
CHIP command.  This reloads the microcode and resets the default 
pre-flash time. Alternatively you can issue the DEF\_WINDOW command which will
simply reset the window parameters back to their default values.
\end{quote}
\subsubsection{BIN/UNBIN - on-chip binning}

BIN selects (UNBIN resets) on-chip binning. You are prompted for the binning
factors in X (the short axis of the chip) and Y (the long axis). The binning 
factors range from 1 to 4.

\subsubsection{QFI(LES) - determine current image etc}

     QFILES says what the next run number will be, what the current image is
and what the current dump device is.

\begin{quote}
     {\bf Parameters}

      None

     {\bf Examples}

      Adam:$>$ QFIL
\end{quote}

\section{Selected data processing facilities}

     There are a lot of standard application programs which are available, and,
as mentioned in the Introduction, enthusiastic astronomers can bring their own
with them. How do these interact with the CCD data acquisition system?

     All of these programs use a set of standard routines for reading their
input parameters and if such a program ever issues a prompt for a data file
name, you can always either type the actual file name (if you know it), the
name of an ACL variable whose value is the file name or else a name of the form
Rn (meaning run number $ <n>$), Sn (meaning store file $ <n>$) or Tn
(meaning temporary file  $<n>$).  The name of the current CCD data file is always
held in the ACL variable IMAGE, so to operate on the current image, you can
always type IMAGE.

\begin{quote}
     {\bf Examples}

      Adam:$>$ PEEP\\*
      Enter name of data file  :$>$IMAGE\\*
      Adam:$>$ STATS\\*
      Enter name of data file  :$>$R4\\*
\end{quote}

\subsubsection{ADD/SUB/DIV/MULT - image/image arithmetic}

     These programs perform the basic arithmetic operations on images, in all
cases producing an image of the same type and shape as the two input images.
They will operate on Integer*2, Integer*4, Real*4 and unsigned 2 byte 
integers (U*2) images. Raw CCD images are in U*2 format.
\begin{quote}

     {\bf Parameters}

      Each requires three, the first input image, the second input image and
the output image.  If omitted, they will be prompted for.

     {\bf Examples}

      Adam:$>$ SUB R1 R10 T1

     {\bf Notes}

ADD is the ``smartest'' of the programs at present. If it produces a result 
that can not fit into the data format, it will prompt you for an appropriate
BSCALE factor. The other programs simply truncate the result.

\end{quote}

\subsubsection{CADD/CSUB/CDIV/CMULT - image/scalar arithmetic}

     These programs perform the basic scalar arithmetic operations on images,
in  all cases producing an image of the same type and shape as the input
image.  They will operate on Integer*2, Integer*4, Real*4 and Unsigned 2 byte
Integer images.
\begin{quote}

     {\bf Parameters}

      Each requires three, the scalar, the input image and the output image. If
omitted, they will be prompted for.

     {\bf Examples}

      Adam:$>$ CADD 100 IMAGE T1

     {\bf Notes}

These programs will truncate the output result if it would overflow the data
format.
\end{quote}

\subsubsection{SQEL/EXTRACT - spectrum/sub-image extraction}

     SQEL adds together a contiguous set of rows or columns of a 2D image to
give a 1D image. EXTRACT extracts a 2D sub-image. Together with the image
arithmetic utilities they can be used to calculate buildups, sky-subtract etc.
\begin{quote}
     {\bf Parameters}

      SQEL requires five, the input (Integer*2) image, the output image, the
direction in which to add (X or Y) and the range of rows/columns to add.

      EXTRACT requires six, the input (Integer*2) image, the low X limit, the
high X limit, the low Y limit, the high Y limit and the output image. If
omitted, all parameters are prompted for.

     {\bf Examples}

      Adam:$>$ SQEL R1 T1 X 100 104\\*
      Adam:$>$ EXTRACT R10 100 109 1 580 T2\\*
\end{quote}

\subsubsection{SPECTRUM/SPECPLOT - On-line data reduction}
    
    SPECTRUM is a program to perform quick on-line data reduction. You just 
have to follow the instructions. It obtains a 1-D spectrum from an area that
you select with the cursor, subtracts from it the chosen sky and stores it
in a T(emporary) file that you can plot. SPECPLOT Tn gives a plot with the
wavelength scale and a cursor. 

SPECTRUM lets you delimit the object area with the Lexidata cursor. You 
have various options when selecting the sky area. You can chose not to
define a sky area, a sky area which does not include the object area or a
sky area which includes the object area. For this last choice (which takes the 
longest to execute), the sky under the object is interpolated by fitting a
quadratic function to the sky on either side.
\begin{quote}
         {\bf Notes}
       
If, to improve the signal-to-noise ratio, you are using the sum of
more than one RUN, SPECPLOT will produce a normal PLOT, without the wavelength
scale.  This is because, at present, the image manipulation routines do not
propagate al the necessary headers to the output file. SPECPLOT labels the
wavelength scale based on the given central wavelength and a linear dispersion
scale.

\end{quote}

\section{Glossary of commands}

\subsection{Summary of CCD commands}

This gives a summary of the commands that can be used to control                
the CCD cameras on the INT. It is obtained on-line by typing HELP CCDSUM

\begin{verbatim}

Command   Parameters                 Description                                

ABO(RT)                              Abort a run, reset run number              
ADD       in1 in2 out                Add two images to give third               
ARCH(IVE) first last                 Archive runs to tape                       
BIA(S)                               Synonym for NEW_BIAS                       
BIN       nx ny                      Bins data into groups of pixels            
CAD(D)    n in out                   Add scalar to image                        
CCDIN(IT)                            Complete re-initialise                     
CCDSPACE                             Check space left on disk                   
CDI(V)    n in out                   Divide image by scalar                     
CH(IP)    chip                       Set new chip                               
CLE(AR)                              Clear the chip                             
CLO(SE)                              Close shutter                              
CLOV(ER)                             Clear Lexidata overlay planes              
CMU(LT)   n in out                   Multiply image by scalar                   
COMM(ENT)                            Insert comments into file                  
CONT(INUE)                           Continue a paused run                      
COPY      in out                     Copy image to new file                     
CSU(B)    n in out                   Subtract scalar from image                 
DAT(A)    d/t n                      Redefine the dump device                   
DEF_W(INDOW)                         Reset window to default values             
DEPROTECT                            Deprotect the glance file                  
DESC(RIPT)                           Read, write, delete descriptors            
DIP(ARM)  option low high            Alter display parameters                   
DIS(P)    defaulted                  Display image on Lexidata                  
DIV       in1 in2 out                Divide two images                          
ENQ_BIAS                             Display current bias estimate              
ENQ_DUMPDEV                          Display current dump device                
ENQ_FLASH                            Display pre-flash time                     
ENQ_NUMRUN                           Display run number                         
ENQ_OBSERVER                         Display initials of observer               
ENQ_TIME                             Display current integration time           
EXPO(SE)  time                       Perform exposure                           
EXTR(ACT) in x1 x2 y1 y2 out         Extract sub-image                          
FF        respond to prompts         Flat fields an image                       
FILES n1 n2                          Inquire status of runs n1 to n2            
FILT(ER)  number                     Select filter                              
FITSDIR   respond to prompts         List contents of FITS tape                 
FITSIN    respond to prompts         Read FITS file from tape to disk           
FITSINIT  respond to prompts         Prepare FITS tape for use                  
FITSOUT   respond to prompts         Write FITS file from disk to tape          
FLA(SH)                              Do pre-flash                               
FOC(US)                              Focus CCD                                  
FOCUSCONTINUE                        Continue with focus of CCD                 
GLA(NCE)  time                       Perform quick look run                     
GMV(AR)   variable                   Get microcode variable                     
GO                                   Start a run after PREPARE                  
HELP CCD  topics                     Give help on the CCD commands              
INSP(ECT)                            List image contents                        
IPC(S)                               Load IPCS control program                  
KEE(P)    object                     Save GLANCE file as run file               
KILL      IPCS                       Delete IPCS control program                
KILLMULT(RUN)                        Abort exposures started by MULTRUN         
LCS                                  Load control store                         
LEXCL(EAR)                           Clear / reset Lexidata                     
LEXINI(T)                            Initialise the Lexidata                    
LEXPA(N)                             Zoom / pan Lexidata                        
LEXZOO(M) xcent ycent factor         Zoom Lexidata                              
LOADEM                               Load IPCS external memory                  
LRC(CS)                              Load, Read, Check control store            
LUTCON(TRAST)                        Alter LUT contrast                         
LUT(LOAD) lut                        Load LUT                                   
LUTROT(ATE)                          Rotate LUT                                 
MANI(C)                              Image manipulation                         
MATH(S)                              Image arithmetic                           
MCS       address value              Modify control store                       
MUL(T)    in1 in2 out                Multiply two images                        
MULTEXP   n t d                      n exposures of t secs in direct d          
MULTRUN n t c                        n runs of t secs on object c               
NEW_BIAS                             Set new bias estimate                      
NEW_DUMPDEV                          Set new dump device                        
NEW_FLASH                            Set new pre flash time                     
NEW_NUMRUN                           Set new run number                         
NEW_OBJECT                           Set new object name                        
NEW_OBSERVER                         Set new initials for observer              
NEW_TIME                             Set new integration time                   
NEXTR(UN) number                     Set next run number                        
NOCL(EAR)                            Prevent CLEAR on next run                  
NODISP    =n                         0 display, 1 not display image             
NOPACKETS  =1                        Turn off packets.
NOPACKETS  =0                        Turn on packets.
NOTIMES                              Turn off listing of timing info            
OBSN(AME) name                       Set new observer's initials                
OP(EN)                               Open shutter                               
PACKETS                              Write packets to current image             
PA(USE)                              Pause an active run                        
PEE(P)    respond to prompts         List a part of an image                    
PHOT(OM)  defaulted                  Simple photometry program                  
PLOT      respond to prompts         Plot on Lexidata / T4010                   
PLOTLP    respond to prompts         Plot on Printronix Line-printer            
PREFLASHDEFAULT  =n                  Sets default pre-flash to n
PREPARE   time object                Sets up d-task to do a run                 
PURGE     respond to prompts         Purge run files from disk                  
QBIAS                                Synonym for ENQ_BIAS                       
QCH(IP)                              Identify current chip                      
QDI(PARM)                            List display parameters                    
QFI(LES)                             List current files etc                     
QFLA(SH)                             List current flash time                    
QMO(DE)                              List observing mode                        
QU(IT)                               CLosedown CCD and exit                     
QWIN(DOW)                            List current window                        
RCS                                  Read control store                         
REA(D)    file                       Read out chip                              
REC(ALL)  number                     Make old run current image                 
RES(ETCCD)                           Initialise CCD controller                  
RESTART                              Software reset of CCD controller           
RFILE                                Allocate next run file                     
RU(N)     time object                Perform standard run                       
RUNSTAT(US)                          List run status                            
SEND      CON:                       Break in on ADAM                           
SETFL(ASH) time                      Set up pre-flash time                      
SHOWTIMES                            Display timing info for a run              
SHUTDOWN                             Shut down ADAM system                      
SMV(AR)   variable value             Set microcode variable                     
SPECD(ISP)                           IPCS spectral display program              
SQEL      in out dirn xy1 xy2        Add rows or columns                        
STATS     image                      Calculate image statistics                 
STO(P)                               Stop a run                                 
STO(RE)   runid storeid              Store run in store file                    
SUB       in1 in2 out                Subtract one image from another            
TAP(E)                               Write current image to tape                
TEL(E)    defaulted                  List telemetry values                      
TESTCCD                              Clears chip, tests telemetry               
TILT                                 Check tilt of CCD                          
TIM(E)    time                       Alter exposure time of current run         
UNZ(OOM)                             Unzoom Lexidata                            
VERIFY                               Alter/set tape dump verification           
WIN(DOW)  xstart ystart xsize ysize  Set new readout window                     
\end{verbatim}

\subsection{FITS}

All data is written to tape at 1600 bpi in FITS format. The available commands
that follow can be obtained on-line by typing HELP FITS COMMANDS SUMMARY

\begin{verbatim}

FILE_NAMES               Describes the filename conventions used in ADAM
FITSCOPY                 Used to copy all or part of one FITS tape to another
FITSDIR                  To list the contents (descriptors) of a FITS tape
FITSIN                   To copy files from a FITS tape to disc
FITSINIT                 To initialise/position a FITS tape
FITSOUT                  To copy files from disc to a FITS tape

\end{verbatim}


\subsection{ADAM Command Language}

A glossary of ACL can be obtained on-line by typing HELP ACL SUMMARY


\begin{verbatim}

ACTIVE                   Test if an ACL stream is active
ALLOCATE                 Allocate files with given characteristics
BATCH                    Execute a file of ADAM commands
Break-in                 How to interrupt ADAM
DCL                      Declare an ACL variable
DECLARE                  Declare an ACL variable
DEFINE                   Define and A- or D-task
DELETE                   Delete files
DO                       Delimit start of DO loop
ELSE                     Delimit alternatives in IF structures
END                      Terminate DO, IF or PROCEDURE
EPRINT                   Write error message to ADAM terminal
EXIT                     Return procedure execution to ACL
Expressions              Legal expressions within the ACL
FORGET                   Delete variables or dictionary entries
GET                      Load the dictionary from a file
HOLD                     Suspend execution of an ACL stream
IF                       Delimit start of an IF expression
INQUIRE                  Inquire after characteristics of files
IPRINT                   Write informational message to ADAM terminal
KILL                     Abort a task or procedure run by ACL
LET                      Make assignment to an ACL variable (use =)
PRINT                    Write message to ADAM terminal
PROCEDURE                Delimit start of PROCEDURE definitiion
Pseudo_variables         A useful adjunct to the variable system
PUT                      Copy the current dictionary to a file
QUIT                     Terminate ACL
RELEASE                  Release a suspended ACL stream
REPROTECT                Change the write protection key of files
SEND                     Send request to an active D-task
SET                      Set certain ACL system quantities
SHOW                     Show certain ACL system quantities
STREAM                   Start an ACL stream
SYCHRONIZE               Synchronize with another ACL stream (wait for it)
WAIT                     Suspend issuing ACL stream for a period of time
WPRINT                   Write warning message to ADAM terminal

\end{verbatim}

\subsubsection{Extra ACL information}

Some extra information is available in the ACL\_FACILITIES SUMMARY

\begin{verbatim}


ACCEPT                   Command to accept input from the user
BLANK                    Command to test if a character string is BLANK
COMMAND                  Command to prompt user for a response
CONCAT                   Concat to concatenate two character strings
HELP                     The ADAM HELP utility

\end{verbatim}

\subsection{Lexidata}

HELP LEXIDATA SUMMARY gives a glossary of the programs that can be used to
display data or give commands to the Lexidata image display device.


\begin{verbatim}


CONTRAST                 Changes the contrast of the dispayed image
DISP                     Displays an image on the Lexidata
LEXCLEAR                 Clears the Lexidata display
LEXINIT                  Initialises and clears the Lexidata
LUT      <name>          Loads a lookup table <name> can be COLS of GREY
PAN                      Pans the image under joystick control
PHOTON                   Gives profiles, statistics etc. of an image
ROTATE                   Rotates the current lookup table
ZOOM                     Expands the image about a given point

\end{verbatim}

\subsection{Utilities}

A summary of the utility commands available is given by HELP UTIL SUMMARY

\begin{verbatim}

CHFORM                   A-task to change format of an image file
DESCR                    A-task to list the FITS descriptors in an image file
FITS                     A-tasks to read/write/list FITS tapes
IMAGPLOT                 A-task to print image files on lineprinter
LEXPLOT                  A-task to print LEXIDATA memory on lineprinter
PLOT                     A-task to display a 1-d slice on a graphics device
PLOTLP                   A-task to plot a 1-d slice on lineprinter
SQUISH                   A-task to alter shape of an image file
STATS                    A-task to analyse an image file
VERIFY                   A-task to compare two image files

\end{verbatim}

\subsection{Telescope control}

HELP TCS SUMMARY gives a glossary of those commands applicable to the INT 
Telescope control user interface.

\begin{verbatim}

.SOURCE                  Defines a new entry in resident catalog
*                        What follows is treated as a comment
ACQUISITION-MODE         Defines the autoguider aquisition mode
ADAM                     Help on ADAM and Instrument Control System
ADVISE                   Lists certain info about a source
APERTURE                 Sets up the aperture offsets
APPARENT                 Use geocentric apparent coordinates for edit. sources
AUTOFFSET 	
CLEAR                    Clears source entries from resident catalog
CURRENT                  Nominates edit source as current source
DEC                      Enters declination for edit source
DIFFERENTIAL-RATE        Sets up differential tracking rates
ENABLE                   Pre-requisite for certain other commands
END                      Terminates input from device/file
EQUINOX                  Sets up the equinox for edit sources
FOCUS                    Sets the telescope focus
GO                       Slews telescope to next source and tracks
GUIDE-OBJECT             Defines guide object for edit source
HANDSET                  Sets up set and guide rates and increment step
HELP                     Description of the HELP command/facility
INPUT                    Specifies input source of commands (device/file)
LIST                     List the sources in the resident catalog
MEAN                     Use mean coordinates for edit sources
NEXT                     Defines the next source to be observed
OFFSET                   Sets up the telescope offsets
PROCEDURES
PROPER-MOTION            Sets the proper motion of the edit source
RA                       Enters Right Ascension for edit source
REPORT                   Switches to a report mode
SAVE                     Saves the resident catalog in a file
SCAN                     Sets up raster scan parameters
SET                      Sets several system flags
SHOW                     Lists parameters of a specified source
SNAFU                    Sets up collimation and index errors and aperture 
                         offsets
STATUS                   Gives the size of the resident catalog
STOP                     Stops the telescope and dome
TELESCOPE                Reports all/selection of telescope parameters
TITLE                    Prints line of info from input file
TRAIL                    Sets up parameters for a trail
TURNTABLE                Moves the INT CASS rotator
WAIT                     Waits for a specified period
ZEROSET                  Zerosets the incremental encoders 	  
\end{verbatim}

\subsection{Spectrograph commands}

HELP SPEC SUMMARY gives those commands applicable to the INT IDS which are
available for the observer.

\begin{verbatim}

AGSPDIAG                 Turn on/off diagnostics for selected mechanisms
AGSPINIT                 Initialise the A&G Box/IDS software
AGSPLOAD                 Load the A&G Box/IDS D-task
ARCF                     Allocate the next TV archive file
BSCF           n         Move the Below Slit Colour Slide to pos n (0 to 2)
BSND           n         Move the Below Slit ND Slide to pos n (0 to 2)
CENWAVE      lambda      Ask IDS to move grating to give requested wavelength
CHANCE                   Setup certain A&G Box/IDS h/w characteristics
COLLIMATOR    pos        Move the collimator to position pos (108 to 277)
DEKKER        pos        Move the Dekker to position pos (0 to 8)
Engineering              Engineering level information
ENQ_ARCNUM               Ask for current TV archive file number
EXGRAT                   Special grating command to increase encoder accuracy
EXORCET                  Description of Engineer's controller
GET_GRAT_ZERO            Displays the current grating encoder zero point
GLIGHT        val        Turn grating light ON or OFF
GRATING      angle       Move the grating to a given angle (11 to 169 deg)
GRAT_ZERO    theta       Sets the grating encoder zero point to theta degrees
GSMOVE        pos        Move the grating shutter to OPEN or CLOSE
HARTMANN      l r        Move l(eft) and r(ight) Hartmanns IN or OUT
IDSCAMERA     pos        Move the camera shutter to OPEN or CLOSE
IDSENG       comm        Send a primitive command to the IDS micro
IDSSTAT                  Ask for status from all IDS mechanisms
ILLUMOFF                 Turn off grating and slit illumination
IOPROCEED    0/1         Turn mechanism wait flag ON or OFF
IPL                      The Inter Processor Link
LISTSTATUS               List the A&G Box/IDS status on the ADAM terminal
MIMIC                    The A&G Box/IDS mimic task
NEW_ARCNUM     n         Set the current TV archive file number to n
PANIC_BUTTON             Describes the effect of pushing the RED PANIC BUTTON
parameters               Some parameters defined for the user
QDEKKER                  Display the characteristics of the loaded Dekker
QFILTER                  Display the contents of A&G Box/IDS filter slides
SHUTDOWN                 Shutdown the A&G Box/IDS s/w in a safe and orderly 
                         manner
SHUTTER       pos        Move the slit shutter to OPEN or CLOSE
SHUTTERPROMPT pos        Move the slit shutter to OPEN or CLOSE but prompt
SLIGHT        val        Set the slit illumination (0 to 15)
SLITJAW       val        Move slit width to val microns (25 5o 2000)
SPECSTAT                 Ask for status from all IDS mechanisms
STARTMIMIC               The only correct way to start/restart the MIMIC task
SWAP                     Swap position of the Hartmann screens
SWAP_CAM                 Swap camera identification
TVDIAG        val        Turn TV system READ and WRITE diagnostics ON or OFF
TVRDIAG       val        Turn TV system READ diagnostics ON or OFF
TVS                      The Grinnell TV System
TVWDIAG       val        Turn TV system WRITE diagnostics ON or OFF
TV_DISPFZ                Request dispaly of Finder zero point from D-task
TV_GETFZ                 Request Finder zero point from TVS display
TV_GLOBAL                Send Global Status to TV system
TV_SETFZ      x y        Set Finder zero point held by TVS
\end{verbatim}

\subsection{A\&G box}

Those commands applicable to the INT A\&G box which are available to the 
observer can be obtained by HELP AGBX SUMMARY

\begin{verbatim}

AFARC          n         Move Arc filter wheel A to position n (0 to 7)
AGBENG       comm        Send a primitive command to the A&G Box micro
AGBXSTAT                 Ask for status from all A&G Box mechanisms
AGSPDIAG                 Turn on/off diagnostics for selected mechanisms
AGSPINIT                 Initialise the A&G Box/IDS software
AGSPLOAD                 Load the A&G Box D-task
ARCF                     Allocate the next TV archive file
ARCS_OFF                 Turn off all arc lamps in the integrating sphere
ASCF           n         Move the Above Slit Colour Slide to pos n (0 to 5)
ASND           n         Move the Above Slit ND Slide to pos n (0 to 5)
BFARC          n         Move Arc filter wheel B to position n (0 to 7)
CALMIRROR     pos        Old version of COMPMIRROR command
CENTRE       probe       Move the TV/Guider probe to centre position
CHANGE                   Setup certain A&G Box h/w characteristics
COMPMIRROR    pos        Move the calibration mirror IN or OUT
CUAR         state       No longer available - use 1LAMP or 2LAMP
CUNE         state       No longer available - use 1LAMP or 2LAMP
Engineering              Engineering level information
ENQ_ARCNUM               Ask for current TV archive file number
EXORCET                  Description of Engineer's controller
FGRATICULE    val        Set field graticule illumination
FLIPMIRROR    pos        Move the flip mirror IN or OUT
GDFILTER       n         Move the Guider filter slide to pos n (0 to 3)
GDXY       xpos ypos     Move the Guider probe to position (xpos, ypos)
IOPROCEED     0/1        Turn mechanism wait flag ON or OFF
IPL                      The Inter Processor Link
LISTSTATUS               List the A&G Box status on the ADAM terminal
MIMIC                    The A&G Box mimic task
NDFARC         nd        Move the A/B Arc filter wheels to give this ND
NEW_ARCNUM     n         Set the current TV archive file number to n
PANIC_BUTTON             Describes the effect of pushing the RED PANIC BUTTON
parameters               Some parameters defined for the user
PARK          probe      Move the TV/Guider probe to parked position
QFILTER                  Display the contents of all A&G Box filter slides
SHUTDOWN                 Shutdown the A&G Box s/w in a safe and orderly manner
STARTMIMIC               The only correct way to start/restart the MIMIC task
TUNGSTEN      state      To turn the tungsten lamp ON or OFF
TVDIAG         val       Turn TV system READ and WRITE diagnostics ON or OFF
TVFILTER        n        Move the TV filter slide to pos n (0 to 3)
TVRDIAG                  Turn TV system READ diagnostics ON or OFF
TVS                      The Grinnell TV System
TVWDIAG                  Turn TV system WRITE diagnostics ON or OFF
TVXY        xpos ypos    Move the TV probe to position (xpos, ypos)
TV_DISPFZ                Request display of Finder zero point from D-task
TV_GETFZ                 Request Finder zero point from TVS & display
TV_GLOBAL                Send Global Status to TV system
TV_SETFZ       x y       Set Finder zero point held by TVS
1LAMP         state      To turn the lamp in slot 1 ON or OFF
2LAMP         state      To turn the lamp in slot 2 ON or OFF


\end{verbatim}

\vfill
