Google
 

Trailing-Edge - PDP-10 Archives - decuslib20-04 - decus/20-0126/apl02.doc
There is 1 other file named apl02.doc in the archive. Click here to see a list.


                 ATOPLT Installation Guide
                 -------------------------



                          Rob Cook
                    La Trobe University
                      Computer Centre
                          6-Jul-77



1.0  CHANGES BETWEEN VERSION 1 AND VERSION 2A(47)

 1.  ATOPLT has been entirely rewritten.  It is now  smaller
     and  faster  and  more  accurate as well as having many
     extra  features.   It  is  completely  compatible  with
     version  1 although the plots may be a little different
     due to different choices of tick values.

 2.  An ATOPLT tag and date/time stamp  is  plotted  in  the
     lower lefthand corner.

 3.  The caller can choose the increment in tick values.

 4.  The caller can specify the value to be plotted at  some
     tick.   3  and 4 allow the caller to choose 'nice' tick
     values.

 5.  The caller can specify the value at the axis origin.  3
     and 5 cause windowing at both ends of the axis.

 6.  The caller can specify that the labels written at ticks
     along the axes should be written as INTEGERs instead of
     REALs.

 7.  The caller can specify that he wants character  strings
     rather than numbers at ticks e.g.  'Jan'.

 8.  Data can be logarithmically scaled.

 9.  Least squares lines can be added.

10.  There are even simpler calls for elementary users.

11.  ATOPLT is a supported product of  La  Trobe  University
     Computer Centre.

12.  The software can be easily modified to suit any plotter
     and any basic set of plotter subroutines.

13.  During  frame  and  title  plotting,  ATOPLT  tries  to
     minimise  pen  movements  to  make  life  easier on pen
     plotters.
                                                      Page 2


2.0  KNOWN DEFICIENCIES

     None.



3.0  DISTRIBUTED FILES


APNAM.FOR      global internal parameter definition

APLOT.FOR      computer, plotter and basic  plot  subroutine
               independant   code.   This  is  the  core  of
               ATOPLT.

APSUB.FOR      contains  subroutines  called  by  ATOPLT  to
               perform   basic  plotting  functions.   These
               subroutines can be modified  or  replaced  to
               suit  the base subroutines that ATOPLT calls,
               whether it be  Calcomp,  TCS  or  some  other
               package.    It  may  be  necessary  to  build
               different APSUBs for different  plotters  but
               at  La Trobe both Gould and Tektronix devices
               can   be   called   through   Calcomp   style
               subroutines.

APGLD.FOR      parameter  definition  for  the  Gould   4800
               printer/plotter.

APTEK.FOR      parameter definition for the  Tektronix  4012
               terminal.

APTEKM.MAC     to arrange that the TCS library  is  searched
               without  the  user's  explicit specification.
               At La Trobe the TCS library is  contained  in
               PIC:TEKLIB.REL.

GLPLOT.REL     relocatable binary subroutine library for the
               Gould 4800 printer/plotter

TKPLOT.REL     as GLPLOT but configured  for  the  Tektronix
               4012 terminal

APMAN.RNO,.MEM user's guide to the ATOPLT package.

APINT.RNO,.MEM description of the internals of ATOPLT

APBAS.RNO,.MEM calling sequences  for  the  La  Trobe  basic
               plotting subroutines

APL02.RND,.DOC this file

APLNC.RNO,.MEM licence agreement  for  the  use  of  ATOPLT.
               Please  print  a copy, sign it and return the
               signed agreement to
                                                      Page 3


                         The Director,
                         Computer Centre,
                         La Trobe University,
                         Bundoora,
                         Victoria   3083
                         AUSTRALIA

APDEX.FOR      a program that draws all the examples for the
               ATOPLT  user's  guide.   This  program can be
               used as a test of the ATOPLT system.

APDEX.DAT      data file for APDEX that specifies  which  of
               the  12  examples  are  to be drawn (how many
               followed by example numbers in 13I format).

APDAXB.FOR     a program that draws the special symbols used
               by  ATOPLT,  for publication in Appendix B of
               the user's guide.

APMAKE.CTL     batch control file for building ATOPLT



4.0  INSTALLATION INSTRUCTIONS

     Because there is very little standardisation in plotter
characteristics  or  in calling sequences for basic plotting
subroutines, every implementation of  ATOPLT  whether  on  a
DECsystem-10  or on any other computer will almost certainly
require program changes.  The ATOPLT  package  is  built  to
minimise  difficulties  in  tailoring  the code to fit a new
environment.

     At La Trobe the basic Gould plot subroutines  are  kept
in  FORLIB,  but  the  Tektronix  TCS  subroutines  and  the
interface routines that turn Calcomp style  calls  into  TCS
calls  are  kept  in  PIC:TEKLIB.   The module APTEKM exists
merely to force searching PIC:TEKLIB and to avoid  the  user
mentioning  TEKLIB in his command to execute a program using
ATOPLT.   Similar  strategies  could  be   used   at   other
installations and for other plotters.



4.1  Tailoring To Suit A Plotter

     ATOPLT needs to know some hardware  characteristics  of
the plotter that it is using, such as maximum plot size.  To
fit a new plotter a new parameter definition subroutine must
be  built  and  used  instead  of APGLD or APTEK.  APGLD and
APTEK can be used as models and each contains a  description
of each parameter that must be defined.
                                                      Page 4


4.2  Tailoring To Suit Basic Subroutines

     All  the  drawing  performed  by  ATOPLT  is  channeled
through  the  subroutines  in  APSUB.  The APSUB subroutines
make  calls  on  a  Calcomp  like  set  of  basic   plotting
subroutines.   Very  likely  these  calls  will  have  to be
modified to a greater  or  lesser  extent  to  suit  another
system.   The  APSUB  subroutine calling sequences are fully
documented in APBAS.RNO and in the code.

APOPEN    start a plot
APPLOT    move the pen, up or down
APSYMB    draw a special centering symbol or text string
APNUMB    draw a number
APWHER    return pen coordinates
APSHAD    set dotted line drawing or pen colour
APCLOS    finish a plot



4.3  Tailoring To Suit A Computer

     ATOPLT was built on a  DECsystem-10.   The  only  known
computer  dependencies  are in FUNCTION APPVAL in file APLOT
where there is a DATA statement that  includes  the  largest
positive   and   negative   real  single  precision  numbers
available  on  the  computer.   ATOPLT  will  work   without
changing  these  numbers  since  they  only affect the value
parameter checking on a call to ATOPRM.

     The  method  of  loading  ATOPLT  and  basic   plotting
subroutines  will need to be reviewed.  The Gould version of
ATOPLT uses  basic  plotting  subroutines  included  in  the
FORTRAN   subroutine   library   at   La   Trobe,  which  is
automatically searched on loading a  FORTRAN  program.   The
Tektronix  version  uses  the  TCS  subroutines  supplied by
Tektronix Inc.  and an interface that converts Calcomp style
calls  into  TCS  subroutine  calls.   The TCS and interface
subroutines are contained in a file TEKLIB, and the assembly
language  module APTEKM merely forces searching of TEKLIB so
that the user does not  have  to  mention  TEKLIB  in  every
command that loads a program with ATOPLT.



4.4  Building ATOPLT

     These instructions apply only to the  command  language
for the TOPS10 operating system running on a DECsystem-10.

For the Gould 4800

     .COMPIL APLOT, APSUB, APNAM, APGLD
     -
     .R FUDGE2
     -
                                                      Page 5


     *GLPLOT=APLOT,APSUB,APNAM,APGLD/A$
     -
     *GLPLOT=GLPLOT/X$
     -

and for the Tektronix 4012

     .COMPIL APLOT, APSUB, APNAM, APTEK, APTEKM
     -
     .R FUDGE2
     -
     *TKPLOT=APLOT,APSUB,APNAM,APTEK,APTEKM/A$
     -
     *TKPLOT=TKPLOT/X$
     -



5.0  SUGGESTIONS FOR THE FUTURE

 1.  Make ONEPLT call ATOPLT instead of duplicating the code

 2.  Make a new call identical to ATOPLT, but  changing  the
     order of the indices to the NOTES array to make it more
     logical

 3.  Make a new call similar to ATOPLT but  allowing  the  X
     and  Y arrays to be 2 dimensional, and avoiding the use
     of ISYM.

 4.  Invent a method of returning the slope and intercept of
     any least squares lines plotted.