home *** CD-ROM | disk | FTP | other *** search
/ Gold Fish 2 / goldfish_vol2_cd1.bin / files / misc / sci / cp / cp.doc < prev    next >
Encoding:
Text File  |  1994-08-03  |  12.0 KB  |  330 lines

  1. /*****************************************************************************/
  2. /*****************************************************************************/
  3.       cP Ver 4.3  by Chris Conger
  4.       July 31, 1994
  5. /*****************************************************************************/
  6. /*****************************************************************************/
  7.  
  8. cP is a DATA PLOTTING PROGRAM capable of plotting TWO DIMENSIONAL DATA in both
  9. LINEAR or LOG space. The program runs from the CLI or from Workbench and
  10. REQUIRES KICKSTART 37 or higher to run. There is no limit to the number of
  11. points that the program can load except the amount of ram on your system.
  12. There is also no limit to the number of sets. cP creates a  PUBLIC SCREEN,
  13. so you can open other applications on its' screen. This version of cP sports
  14. an AREXX interface for almost any function.
  15.  
  16. /*****************************************************************************/
  17.  
  18.  What next?
  19.  
  20.   This is the last release of cP.  Any new release will be a total rewrite and
  21.   allow support for HDF/NetCDF type files.  The name will change then also.
  22.  
  23. /*****************************************************************************/
  24.  
  25.  Whats New?
  26.  
  27. 4.3)
  28.   
  29.   Now does delta measurement when mouse select button is pressed and dragged.  
  30.   cP will now attempt to CLONE the DisplayID of WORKBENCH thus allowing cP
  31.   to work well with RTG type display boards. Added rexx commands TEXT and
  32.   VERTTEXT to allow user placed text on screen display. Mostly for printing.
  33.   Fixed bug in NOFN display which didn't center display when more than one
  34.   data set loaded. Fixed old bug in LogAxis that caused display to move out
  35.   one decade on redraw sometimes due to precision problem. Little of this and
  36.   that.  Added UnZoom menu selection.
  37.  
  38. 4.2)
  39.   cP now stores all its numbers as double precision
  40.   CrossHair feature for Identify Measurements
  41.   Identify/CrossHair option can have significant digits set by menu/CLI/ENV
  42.   Position Locking for CrossHair with spacebar
  43.   Single column data will load with x = line number.
  44.   Old draw break criterion changed to Realtime option (see below)
  45.   Distribution now includes 020/881 version again by request
  46.   Fixes bug where endless loop could occur when clicking grid if no sets were
  47.     ever loaded
  48. 4.1)
  49.   Fixes enforcer hits during Workbench launch (I don't do that very often)
  50. 4.0) 
  51.   Arexx, Printing, Better redraw, and lots of other stuff
  52.  
  53. /*****************************************************************************/
  54.  
  55. EXAMPLE COMMAND:
  56.  
  57.       > cP SAMPLE.#?
  58.  
  59. /*****************************************************************************/
  60.  
  61. cP reads an ENVIRONMENTAL VARIABLE at startup which can be used to change the
  62. default values of the settings. The NAME of the var is CPCONFIG. Any options
  63. given on the command line will override the environmental variable.
  64.  
  65.     EX:
  66.       > setenv cpconfig "ID=32768 FONT helvetica SIZE 9 GRID SETDEF W=1000"
  67.  
  68. /*****************************************************************************/
  69. /*****************************************************************************/
  70.  
  71. The template for BOTH command line and envvar is:
  72.  
  73. FILES=WILD/M,LX=LOGX/S,LY=LOGY/S,GRID/S,SYM/S,ID=DISPLAYID/N/K,FONT/K,FS=SIZE/N/K
  74. LORES/S,HIRES/S,LACE/S,SETDEF/S,W=WIDTH/N/K,H=HEIGHT/N/K,P=POINTS/N/K,T=THIN/N/K
  75. D=DEPTH/N/K,MONO/S,CPANEL/S,NOFN=NOFNBOXES/S,OB=OPENBEHIND/S,MYNAME/K
  76. XLAB/K,YLAB/K,TITLE/K,REALTIME/S,SD=DIGITS/N/K
  77.  
  78. /*****************************************************************************/
  79.  
  80. FILES - This can be multiple args and includes WILDCARD patterns. The files
  81.         must be ASCII NUMBERS DELIMITED BY WHITESPACE OR COMMAS. cP will ignore
  82.         numbers after the first two colums. cP will also ignore text lines so
  83.         that you can place a header in the file. See file sample.asc to see the
  84.        format.
  85.  
  86. /*****************************************************************************/
  87.  
  88. LOGX -  Switch to turn log XAxis on. If any values are less than or = to zero,
  89.         sets back to LINX. ( Can't do log negative ). X HOTKEY.
  90.  
  91. /*****************************************************************************/
  92.  
  93. LOGY -  Switch to turn log YAxis on. If any values are less than or = to zero,
  94.         sets back to LINY.  ( Can't do log negative ). Y HOTKEY.
  95.  
  96. /*****************************************************************************/
  97.  
  98. GRID -  Switch to turn on the grid. G HOTKEY
  99.  
  100. /*****************************************************************************/
  101.  
  102. SYM  -  Draw x SYMBOL AT EACH POINT. Amiga S hotkey.
  103.  
  104. /*****************************************************************************/
  105.  
  106. ID=DISPLAYID - ID number of the TYPE DISPLAY you wish to create.
  107.  
  108.            Default is HIRES LACE.
  109.  
  110.            EXAMPLES:
  111.            ID=4     -> LORES LACE      320*400
  112.            ID=32768 -> HIRES           640*200
  113.            ID=0     -> LORES           320*200
  114.          ID=32804 -> SUPERHIRES LACE 1280*400
  115.  
  116. /*****************************************************************************/
  117.  
  118. FONT - Name of the font to use for the display. The default is topaz.
  119.        cP adds '.font' to the string.
  120.        EX:  FONT helvetica SIZE 12
  121.  
  122. /*****************************************************************************/
  123.  
  124. SIZE - Size of the font. Default 8. No more Max size
  125.  
  126. /*****************************************************************************/
  127.  
  128. LORES - Lores screen
  129. HIRES - Hires screen
  130. LACE  - combine with either LORES or HIRES this function OR's
  131.         the LACE key over DISPLAYID and LORES/HIRES.
  132.  
  133. /*****************************************************************************/
  134.  
  135. SETDEF - Makes the new cP screen the DEFAULT PUBLIC SCREEN.
  136.  
  137. /*****************************************************************************/
  138.  
  139. W=WIDTH -  Set screen width in pixels. cP will open a VIRTUAL autoscroll screen
  140.            if WIDTH is wider than display.
  141.          EX. W=1800
  142.  
  143. H=HEIGHT - Set screen height in pixels. cP will open a VIRTUAL autoscroll
  144.            screen if HEIGHT is taller than display.
  145.          EX. H=800
  146.  
  147. /*****************************************************************************/
  148.  
  149. P=POINTS - Max Points to load in each set
  150.  
  151. /*****************************************************************************/
  152.  
  153. T=THIN   - depopulate set by number
  154.            EX. THIN=3 loads every third point
  155.  
  156. /*****************************************************************************/
  157.  
  158. D=DEPTH - Screen depth in bitplanes.
  159.         DEPTH=1 mono, DEPTH=2 four colors, DEPTH=3 eight colors,
  160.         DEPTH=4 16 colors.  If you have two sets use DEPTH=3 more
  161.         than two use DEPTH=4. One data set looks good either D=1 or D=2
  162.  
  163. MONO  -  black and white display. GREAT FOR BIG VIRTUAL SCREENS. Same as D=1.
  164.  
  165. /*****************************************************************************/
  166.  
  167. CPANEL - toggles CONTROL PANEL on or off. default on. Amiga-C hotkey
  168.  
  169. /*****************************************************************************/
  170.  
  171. NOFN=NOFNBOXES - dont place file name boxes on side of screen
  172.  
  173. /*****************************************************************************/
  174.  
  175. OB=OPENBEHIND - Opens Screen BEHIND ALL OTHER SCREENS
  176.  
  177. /*****************************************************************************/
  178.  
  179. MYNAME  - SETS WINDOW, PUBLIC SCREEN and REXX PORT NAMES to this. OpenScreen
  180.         will fail if name already exists.
  181.  
  182.           EX: MYNAME JoMama
  183.  
  184. /*****************************************************************************/
  185.  
  186. XLAB  -  Label for xaxis
  187. YLAB  -  Label for yaxis
  188. TITLE -  Label at top
  189.  
  190.           EX: XLAB "Pullin NoseHairs"
  191.           
  192. /*****************************************************************************/
  193.  
  194. REALTIME - This switch tells cP that data is increasing. With large data sets,
  195.            the redraw time after a zoom can be improved with this option. cP
  196.            will break from the draw loop for each set if it believes the data
  197.            is offscreen.  If x values are declining at any point in the data
  198.            don't set this option.
  199.  
  200. /*****************************************************************************/
  201.  
  202. SD=DIGITS  Number of significant digits for CrossHair Measurements
  203.  
  204. /*****************************************************************************/
  205. /*****************************************************************************/
  206.  
  207. /*****************************************************************************/
  208.  
  209. HOTKEYS
  210.         X toggles lin / log axis for x values
  211.         Y toggles lin / log axis for y values
  212.         R Redraws screen
  213.         A Add file
  214.         K opens Kill requester
  215.         F Full view
  216.         Z Zoom
  217.         G toggles grid on/off
  218.         H Turns CrossHair on (spacebar locks x in Xhair)
  219.         Q Death
  220.         
  221.         arrow keys page scroll virtual screens    
  222.  
  223. /*****************************************************************************/
  224. /*****************************************************************************/
  225.  
  226. AREXX
  227.  
  228. cP now is almost entirely CONTROLABLE from AREXX. The program opens its rexx
  229. port as CPLOT_REXX? where ? is a posssible number added because multiple cP tasks
  230. are running. If lauched with the MYNAME arg, the REXX port will be arg.
  231.  
  232. /*****************************************************************************/
  233.  
  234. OPEN [FILENAME]    Empties SetList and reads datafile
  235. ADD  [FILENAME]    Reads datafile
  236. PRINT              Dump to PRINTER; Works best with Big Virtual Screens and MONO
  237.  
  238. FEED               Send FormFeed after print
  239. NOFEED             No FormFeed after print(use to stack multiple plots on one page)
  240.  
  241. SCREENTOFRONT
  242. SCREENTOBACK
  243.  
  244. FULL               Autoscales and redraws screen
  245. REDRAW             Redraw screen
  246. ERASE              Erase screen NO redraw
  247.  
  248. LINX               Set XAxis to lin
  249. LOGX               Set XAxis to log
  250. LINY               Set YAxis to lin
  251. LOGY               Set YAxis to log
  252.  
  253. SYM                Draw SYMBOLS
  254. NOSYM
  255. CPANEL             Control Panel ON
  256. NOCPANEL
  257. GRID
  258. NOGRID
  259.  
  260. XMIN   <#>         Specify Zoom or ZoomOUT
  261. XMAX   <#>
  262. YMIN   <#>
  263. YMAX   <#>
  264.  
  265. POINTS <#>         Max number of points to read from each file
  266. THIN   <#>         DEPOPULATE while reading
  267. DELAY  <#>         SLEEP for # 50ths of a second , DOS Delay();
  268.  
  269. XLABEL <label>     XLAB also works
  270. YLABEL <label>     YLAB also works
  271. TITLE  <title>
  272.  
  273. TEXT     <xpos> <ypos> <my text string>
  274. VERTTEXT <xpos> <ypos> <my text string>
  275.  
  276. /*****************************************************************************/
  277. SAIC VERSION ONLY
  278.  
  279. REXX COMMANDS
  280.  
  281. LOGO [ON|OFF]      Display company Logo mostly for printing
  282. RHP  <FILENAME> <CHANNEL>  Unpack binary file channel
  283.  
  284. CLI COMMANDS
  285. C=BINARY/F/K  Load binary channels
  286.  
  287. /*****************************************************************************/
  288.  
  289. The archive contains both IEEE math and 020/881 versions. I find about 
  290. 20% improvement in draw speed for the 020/881 version on my A3000.
  291. Also included is source code so you can recompile for whatever CPU and
  292. math which you may like. There arn't many comments in the source, and I
  293. don't really consider them to be great example code. Anyhow feel free
  294. to use any of the functions in your own programs.
  295.  
  296. /*****************************************************************************/
  297.  
  298. SAIC and Chris Conger take no responsibility for any damage which this program
  299. might cause to your system, use at your own risk.
  300.  
  301. /*****************************************************************************/
  302. /*****************************************************************************/
  303.  
  304. This program is BeerWare - if you like it go and buy yourself a beer :-)
  305. it's source code and executable are PUBLIC DOMAIN
  306.  
  307. I really would like to receive mail from people who use cp just so that I have
  308. some idea what level of use it gets.  Does anyone use cP ???
  309.  
  310. Chris Conger
  311.  
  312. INET - congerc@abqa.saic.com
  313.  
  314. c/o SAIC
  315. 2109 AirPark Rd. SE
  316. Albuquerque, NM 87106
  317. /*****************************************************************************/
  318. /*****************************************************************************/
  319.  
  320.        ,_mmms     ,z     gz  ,_mmm.
  321.       iW~  ]@    g@K    i@` mA~  M@
  322.       8W.      ,Wf8D   ,@!,@!
  323.        VMW_   iW~ @[   WP WP
  324.     _.   8D ,d@mmm@[  dA ]@    _.
  325.     @b__mP`,Wf   -@| i@` !@b_gWf`
  326.     '~~~   ~`    '~  ~`   '~~`
  327.  
  328. /*****************************************************************************/
  329.  
  330.