home *** CD-ROM | disk | FTP | other *** search
/ ARM Club 3 / TheARMClub_PDCD3.iso / hensa / maths / pgplot_1 / SYS_ARC / AAAREAD_ME next >
Text File  |  1996-04-26  |  14KB  |  334 lines

  1.            PGPLOT Version 5.10 for the Archimedes
  2.                         April 1996
  3.  
  4.   Distributed by 'Fortran Friends' P.O. Box 64, Didcot, Oxon OX11 0TH, UK.
  5.  
  6.   Email:  BCA@ISISE.RL.AC.UK
  7.  
  8.  PGPLOT is a portable Fortran subroutine package for drawing simple scientific
  9. graphs. It runs on most mainframes on various graphics display devices and
  10. printers including inkjet and PostScript ones. It was originally developed for
  11. use with astronomical data reduction programs in the Caltech Astronomy
  12. department. It is freely available but copyright.
  13.  
  14.  This is an upgrade from the previous 'Fortran Friends' version 4.9H
  15.  
  16.  Archimedes version upgrade to the graphics driver: this now allows making
  17. the ouput directly into a sprite with driver type \ARCF, as opposed to
  18. direct to the screen with driver type \ARCV. It also works with RISC-OS up
  19. to version 3.6 although it can only make 16 or 256 colour sprites directly.
  20.  
  21.  More information, copies of the Fortran of the most recent version, and
  22. implementations for other computer systems may be obtained from:
  23. *     Dr. T. J. Pearson
  24. *     105-24 California Institute of Technology,
  25. *     Pasadena, California 91125, USA
  26. *
  27. *     tjp@astro.caltech.edu
  28. *     WWW:  http://astro.caltech.edu/~tjp/pgplot/
  29. *     anonymous ftp: astro.caltech.edu
  30.  
  31. If you do not have access to electronic mail, and want a copy of the 
  32. complete portable Fortran source of version 5.10 of PGPlot, and the text of
  33. the current manual (dated 1989) written in TeX input format, send  a blank,
  34. E format, 800K 3.5" floppy disk with a reply paid envelope to 'Fortran
  35. Friends' (address above) The data on that disc are compressed with !Squash,
  36. so you will need RISC-OS 3 to decompress them. Tim Pearson is in the process
  37. of rewriting the manual; pieces are currently available through WWW.
  38.  
  39. A contribution of #1.00 (or U.S.$2.00) towards administration costs would be
  40. appreciated, or if your address is outside Europe #2.00 (or U.S.$5.00).
  41. Double these prices if you want us to supply the disc and packaging. 
  42.  
  43.  The PGPlot library supplied on this disc has been compiled with Fortran
  44. Release 2 for the Archimedes. It must be installed on your Archimedes before
  45. you can compile the example programs supplied and run this package.
  46.  
  47.  Fortran Release 2 for Acorn computers is available for #99 (ex VAT) from:
  48.  
  49. * Intelligent Interfaces Ltd,     Tel.  (01703) 261514 
  50. * P.O.Box 80,                     Fax.  (01703) 267904
  51. * Eastleigh, 
  52. * Hants SO5 5YX, UK.
  53.              
  54. Distribution disc contents:
  55.  
  56. 1) The application !PGPlot:
  57.    contains the !Boot, !Run and !Sprites needed to set up the environment
  58.    for running PGPlot, together with the font file 'GRFont' and colour
  59.    information in 'RGBTxt'. The HelpPGPlot text file has helpful information
  60.    on the PGPlot functions in a format useable by !SrcEdit for on-line help.
  61.  
  62. 2) The Copyright notice for PGPlot. 
  63.  
  64. 3) 'Examples' directory with the Fortran of the 14 demo programs and an
  65.    explanation in the ReadMe.
  66.  
  67. 4) 'lib' directory with the PGPlot library, and three auxiliary libraries
  68.    which are PD utilities for primitive graphics and communication with the
  69.    operating system and making 'hardcopy' output (sprites). 
  70.  
  71. 5) 'SYS_ARC' directory contains all the Archimedes specific code and
  72.    instructions on how to create a library for new versions of PGPlot
  73.    transferred electronically from the address above.
  74.  
  75. Installing this version:
  76.  
  77. 1) Copy the !PGPlot application to your working disc.
  78.  
  79. 2) Copy the library files in the 'lib' directory to the directory where you
  80.    keep Fortran libraries. Everyone should copy 'PGPlot'. If you have the
  81.    !Fortran77 front-end from Intelligent Interfaces, or the Shareware 44 PD
  82.    disc from Norwich Computer Services you will already have the other
  83.    files 'Graphics', 'SpriteOp' and 'Utils', so may not need to copy them. 
  84.  
  85.    In the Shareware !Fortran77 front-end you must include the name of this
  86.    library in the 'LibList' file BEFORE the Graphics and Utils entries.
  87.  
  88. 3) Copy the Examples directory to your working disc. 
  89.  
  90. 4) If you have !SrcEdit and want to use the on-line help, append the lines:
  91.  
  92.         PGplot
  93.         none
  94.         <PGPLOT_DIR>.HelpPGPlot
  95.  
  96.    to the file 'choices.languages' within the !SrcEdit application.
  97.  
  98.    Then install !SrcEdit on the icon bar, click menu over its icon, and 
  99.    change the options, language, to tick PGPlot.
  100.  
  101.    If you have !DeskEdit you can replace one of the 3 help files in the
  102.    !DeskEdit.data directory with 'HelpPGPlot'.
  103.  
  104. 5) Edit the !Run file if you want to change any of the global variables
  105.    which set the default device type, screen colours etc.
  106.  
  107. Testing the installation:
  108.  
  109. 1) Before running any PGPLOT program, click on !PGPlot to set up the 
  110.    environment variables so that PGPLOT can find the fonts and colours.
  111.  
  112. 2) Select the screen mode for your plots by setting the MODE from the
  113.    RISC OS Desktop. This implementation of PGPlot is RISC OS compatible.
  114.    It finds the Desktop screen mode before exiting the Desktop, runs your
  115.    PGPlot program and returns to the Desktop on exit from your program.
  116.  
  117. 3) Now try to compile, link and run the test demo programs. 
  118.    Remember the 'PGPlot' library should be linked before the 'Graphics',
  119.   'SptiteOp' and 'Utils' because it references routines in them.
  120.  
  121.    Warning: Most of the demos run quickly, but PGDemo3 takes some time, 
  122.    over 20 minutes on an A4000 with an ARM250 chip, and longer on an A3000.
  123.  
  124.  
  125. Invitation:
  126.  
  127.  If you feel inspired to improve this Archimedes version, look in the
  128. 'AAReadme' in the SYS_ARC directory for advice, and please send any
  129. enhancements to 'Fortran Friends' for distribution to others to enjoy. 
  130.  
  131. ************************ ReadMe for building the system *******************
  132.  
  133.           PGPLOT on an Acorn Archimedes using Fortran release 2.
  134.  
  135.        D.J. & K.M. Crennell ('Fortran Friends')         April 1996
  136.                 P.O. Box 64, Didcot, Oxon OX11 0TH, UK.
  137.  
  138.  --------------------------------------------------------------------------
  139. OBTAINING THE SOURCE
  140.  
  141.  The source code of PGPLOT is best obtained through anonymous ftp from
  142. astro.caltech.edu. If you do not have access to a relevant network, the
  143. source of version 5.10 may be obtained by sending #2.00 to cover costs
  144. (#3.00 from outside the UK) to K.M. Crennell at the above address.
  145.  
  146.  --------------------------------------------------------------------------
  147. TESTED DRIVERS
  148.  
  149. Currently only the following drivers have been tested under RISC-OS3:
  150.  
  151. /NULL to plot onto the null device.
  152.  
  153. /ARCV to use the Fortran Friends graphics library routines to plot to the
  154.       screen. The driver uses the screen mode in use at the time the program
  155.       is invoked; this must be have at least 16 colours.
  156.       The first 16 colours are set to the defaults described in the PGPlot
  157.       manual, the rest (up to 255) are pre-set to black.
  158.  
  159. /ARCF as /ARCV but makes an Archimedes sprite with the name 'sprite/01' in
  160.       the current directory. Subsequent screens are 'sprite/02' etc. The
  161.       sprite is made in mode 27 for 16 colour representation and mode 28
  162.       (256 colours) for > 16 colour modes. The dimension of the sprite is
  163.       that of the screen by default but may be changed with the variables:
  164.       ARC_WIDTH and ARC_HEIGHT (pixels) as shown in the !Run file.
  165.  
  166.  
  167. /PS   to produce a file that can be printed on a Postscript printer.
  168.  
  169. /VPS  to produce a 'vertical' or portrait mode Postscript file.
  170.  
  171. /CPS  to produce a colour Postscript file.
  172.  
  173. /VCPS to produce a 'vertical' or portrait mode colour Postscript file.
  174.  
  175. Please feel free to adapt drivers for other plotting devices and make them
  176. available to other users. A desktop compliant driver would be very welcome.
  177.  
  178.  --------------------------------------------------------------------------
  179. INSTALLING PGPLOT
  180.  
  181. It is assumed that you have transferred the following directories from
  182. California:
  183.  
  184. 0) PGPLOT with text files AAAREADME, COPYRIGHT and PGPLOT/HLP and the
  185.    associated subdirectories:
  186.  
  187. 1) SRC with the portable PGPlot source. This directory contains ~200 files,
  188.    so concatenate the Fortran into 1 file, keeping the two include files
  189.    separate.
  190.  
  191. 2) SYS_ARC which contains all the Archimedes specific code, HicBoot and
  192.    HicRun and the source of the device drivers
  193.  
  194. 3) FONTS
  195.  
  196. 4) EXAMPLES 
  197.  
  198. It is also assumed that you have the PD Fortran libraries 'Graphics',
  199.    'SpriteOp' and 'Utils' which are obtainable on the Shareware 44 Disk for #2
  200.    from: Norwich Computer Services, 96a Vauxhall Street, Norwich NR2 2SD, UK.
  201.  
  202. These libraries are also supplied with the !Fortran77 utility at #25 from
  203.    Intelligent Interfaces Ltd, P.O.Box 80, Eastleigh, Hants SO5 5YX, UK.
  204.  
  205. Installation  procedure
  206.  
  207. Set up this directory structure on the Archimedes:
  208.  
  209.   !PGPlot -
  210.           Examples -
  211.                      f77 (for the demo source code)
  212.           f77 (for the PGPlot system code)
  213.           SYS_ARC -
  214.                      f77 (for the Archimedes specific code)
  215.  
  216. Copy:
  217. 1) the Examples ReadMe and Fortran source into the Examples and Examples.f77
  218.    directories. 
  219. 2) the portable source file (call it PGPlot) and 2 include files (PGPLOT/IN
  220.    and GRPCKG1/IN) from SRC into the f77 directory.
  221. 3) the contents of the SYS_ARC with its Fortran files into SYS_ARC
  222.    and SYS_ARC.f77
  223. 4) the files GRFONT/TXT, RGB/TXT and PGPLOT/HLP into !PGPlot
  224.    rename the file RGB/TXT as RGBTxt.
  225.  
  226. Then:
  227. 1) Edit the Fortran file in the !PGPlot.f77:
  228.    a) change the all instances of the INCLUDE file names 'pgplot.inc' to
  229.       'f77.PGPLOT/IN' and 'grpckg1.inc' to 'f77.GRPCKG1/IN'
  230.    b) Find the subroutine GRSYXD in the Fortran source, it has an INTEGER*2
  231.       declaration which is not supported by Archimedes Fortran. There is a
  232.       non-standard version in your SYS_ARC.f77 which simulates the INTEGER*2
  233.       code. It was derived from the standard version dated:
  234.       "15-Dec-1988 - standardize". Provided this is the version you have
  235.       just imported then it is OK to remove it from the big source; part c)
  236.       below will insert the new code. Otherwise you will have to improvise
  237.       changes to the GRSYXD in SYS_ARC.f77 to reflect those in the newer
  238.       version.
  239.    c) similarly remove the function GRTRIM which falls into a Fortran system
  240.       library bug. There is a replacement with a work-around in SYS_ARC.f77
  241.       which will be compiled automatically.
  242.    d) add a card:
  243.              INCLUDE 'SYS_ARC.f77.ArcInclude'
  244.       at the end to include the Archimedes specific code.
  245. 2) Ensure that the two 'include' files are called PGPLOT/IN and GRPCKG1/IN.
  246. 3) make the Current Selected Directory your !PGPlot (*DIR ...!PGPlot). This
  247.    is not necessary if you are using the !Fortran77 front-end from
  248.    Intelligent Interfaces, or the one from Shareware 44 because they do this
  249.    for you.
  250. 4) compile the code, creating the object file which can then be used as the
  251.    PGPlot library. For convenience, move it into your Fortran libraries
  252.    directory.
  253.  
  254. Now make !PGPlot into an application:
  255.  
  256. 1) copy to it the HicBoot as !Boot and HicRun as !Run from SYS_ARC and
  257.    delete the originals.
  258. 2) make them into 'Obey' files (e.g. *SETTYPE !Boot FEB)
  259. 3) you will also need a !Sprites, so copy one from another application and
  260.    correct it using the !Paint utility. The sprites should be renamed
  261.    '!pgplot' and 'sm!pgplot' so that they will be displayed correctly in the
  262.    filer window.
  263. 4) look at the !Run. It contains several statements setting up the PGPLOT_
  264.    variables required by PGPlot. You may want to alter these or set up some
  265.    of your own.
  266.  
  267. Click on the !PGPlot icon to initialise the global variables and sprites.
  268.  
  269.  --------------------------------------------------------------------------
  270. SET UP THE FONTS
  271.  
  272. 1) Compile, link and run the program SYS_ARC.f77.PGPack; this will create an 
  273.    UNFORMATTED file 'GRFont' in your !PGPlot application.
  274. 2) You may now delete the GRFONT/TXT.
  275.  
  276.  --------------------------------------------------------------------------
  277. TRY THE EXAMPLES
  278.  
  279. Look into !PGPlot.Examples.f77 and edit the source of PGDemo1, PGDemo3 and
  280. PGDemo13.
  281. These have statements at the beginning like:
  282.       PI = ACOS(-1.)
  283. This hits one of the few known bugs in the compiler (it actually gives you
  284. ACOS(+1.) which is not useful!), so change these to:
  285.       PI = 3.1415927
  286. or maybe better: 
  287.       PARAMETER(PI = 3.1415927)
  288.  
  289. Now compile a demo, and link it with a command like:
  290.  
  291. *Link -o demo1 aof.PGDemo1 lib.PGPlot lib.Utils lib.Graphics lib.f77
  292.  
  293. then:
  294.  
  295. *Run demo1
  296.  
  297. This will first ask you for the device and should say that the default is
  298. /ARCV. Just press return to see the demo on the screen.
  299.  
  300.  --------------------------------------------------------------------------
  301. SETTING UP THE HELP FILE
  302.  
  303. 1) Compile, link and run the file:
  304.          SYS_ARC.f77.CreateHelp
  305.    This will extract the help information from the PGPlot source (expected to
  306.    be in f77.pgplot in your !PGPlot application) and create a new file
  307.    'HelpPGPlot' within your !PGPlot application.
  308.  
  309. 2) If you have !SrcEdit and want to use the on-line help, 
  310.    append the lines:
  311.  
  312.         PGplot
  313.         none
  314.         <PGPLOT_DIR>.HelpPGPlot
  315.  
  316.    to the file 'choices.languages' within the !SrcEdit application.
  317.  
  318. 3) if you have !DeskEdit you will have to replace one of the 3 help files in
  319.    !DeskEdit.data (say Help_T) with the HelpPGPlot file you have just made.
  320.  
  321.  --------------------------------------------------------------------------
  322. OTHER USEFUL PGPLOT ROUTINES
  323.  
  324. Other directories you may find useful on the distribution from California
  325. are the APPLICATIONS, which contains some auxiliary programs but not all in
  326. portable code, and DRIVERS which has all the known device drivers. These are
  327. not usually portable, but you may find some of them a good start if you
  328. want to write a new driver of your own.
  329.  
  330. We welcome any generally useful new utilities and device drivers for PGPlot.
  331. Please send them to 'Fortran Friends' at the above address so that we may
  332. include them in future issues.
  333.  
  334.