[comp.sources.misc] v16i017: Gnuplot 2.0 patch 2, 7 of 7

rjl@monu1.cc.monash.edu.au (Russell Lang) (01/05/91)

Submitted-by: Russell Lang <rjl@monu1.cc.monash.edu.au>
Posting-number: Volume 16, Issue 17
Archive-name: gnuplot2.02/patch7
Patch-To: gnuplot2.0: Volume 11, Issue 65-79

#! /bin/sh
# This is a shell archive.  Remove anything before this line, then unpack
# it by saving it into a file and typing "sh file".  To overwrite existing
# files, type "sh file -c".  You can also feed this as standard input via
# unshar, or by typing "sh <file", e.g..  If this archive is complete, you
# will see the following message at the end:
#		"End of shell archive."
# Contents:  patch2f
# Wrapped by eln272v@monu1 on Wed Dec 19 11:58:19 1990
PATH=/bin:/usr/bin:/usr/ucb ; export PATH
if test -f patch2f -a "${1}" != "-c" ; then 
  echo shar: Will not over-write existing file \"patch2f\"
else
echo shar: Extracting \"patch2f\" \(59778 characters\)
sed "s/^X//" >patch2f <<'END_OF_patch2f'
Xdiff -cr ./docs/gnuplot.doc ../gnuplot2.02/docs/gnuplot.doc
X*** ./docs/gnuplot.doc	Tue Sep 18 14:58:01 1990
X--- ../gnuplot2.02/docs/gnuplot.doc	Thu Nov 29 11:04:53 1990
X***************
X*** 5,11
X   are not the same as those written in CAPS).  All command names may be
X   abbreviated, as long as the abbreviation is not ambiguous.  Any number
X   of commands may appear on a line, separated by semicolons (;). 
X! 
X   Any command-line arguments are assumed to be names of files containing 
X   gnuplot commands. Each file is loaded with the `load` command, in the
X   order specified. Gnuplot exits after the last file is processed.
X
X--- 5,11 -----
X   are not the same as those written in CAPS).  All command names may be
X   abbreviated, as long as the abbreviation is not ambiguous.  Any number
X   of commands may appear on a line, separated by semicolons (;). 
X!  
X   Any command-line arguments are assumed to be names of files containing 
X   gnuplot commands, with the exception of standard X11 arguments, which
X   are processed first. Each file is loaded with the `load` command, in the
X***************
X*** 7,13
X   of commands may appear on a line, separated by semicolons (;). 
X  
X   Any command-line arguments are assumed to be names of files containing 
X!  gnuplot commands. Each file is loaded with the `load` command, in the
X   order specified. Gnuplot exits after the last file is processed.
X  
X   Commands may extend over several input lines, by ending each line but
X
X--- 7,14 -----
X   of commands may appear on a line, separated by semicolons (;). 
X   
X   Any command-line arguments are assumed to be names of files containing 
X!  gnuplot commands, with the exception of standard X11 arguments, which
X!  are processed first. Each file is loaded with the `load` command, in the
X   order specified. Gnuplot exits after the last file is processed.
X   
X   Commands may extend over several input lines, by ending each line but
X***************
X*** 9,15
X   Any command-line arguments are assumed to be names of files containing 
X   gnuplot commands. Each file is loaded with the `load` command, in the
X   order specified. Gnuplot exits after the last file is processed.
X! 
X   Commands may extend over several input lines, by ending each line but
X   the last with a backslash (\). The backslash must be the LAST
X   character on each line. The effect is as if the backslash and newline
X
X--- 10,16 -----
X   gnuplot commands, with the exception of standard X11 arguments, which
X   are processed first. Each file is loaded with the `load` command, in the
X   order specified. Gnuplot exits after the last file is processed.
X!  
X   Commands may extend over several input lines, by ending each line but
X   the last with a backslash (\). The backslash must be the LAST
X   character on each line. The effect is as if the backslash and newline
X***************
X*** 16,22
X   were not there. That is, no white space is implied, nor is a comment
X   terminated. Therefore, commenting out a continued line comments out
X   the entire command (see `comment`).
X! 
X   In this documentation, curly braces ({}) denote optional arguments to
X   many commands.
X  
X
X--- 17,23 -----
X   were not there. That is, no white space is implied, nor is a comment
X   terminated. Therefore, commenting out a continued line comments out
X   the entire command (see `comment`).
X!  
X   In this documentation, curly braces ({}) denote optional arguments to
X   many commands.
X   
X***************
X*** 19,25
X  
X   In this documentation, curly braces ({}) denote optional arguments to
X   many commands.
X! 
X   For help on any topic, type 'help' followed by the name of the topic.
X  2 cd
X  ?cd
X
X--- 20,26 -----
X   
X   In this documentation, curly braces ({}) denote optional arguments to
X   many commands.
X!  
X   For help on any topic, type 'help' followed by the name of the topic.
X  2 cd
X  ?cd
X***************
X*** 58,64
X   
X   On Unix and MS-DOS, GNUHELP may be defined to be the pathname of the 
X   HELP file (gnuplot.gih).
X! 
X   On VMS, the symbol GNUPLOT$HELP should be defined as the name of 
X   the help library for gnuplot.
X   
X
X--- 59,65 -----
X   
X   On Unix and MS-DOS, GNUHELP may be defined to be the pathname of the 
X   HELP file (gnuplot.gih).
X!  
X   On VMS, the symbol GNUPLOT$HELP should be defined as the name of 
X   the help library for gnuplot.
X   
X***************
X*** 446,452
X   
X           load 'work.gnu'
X           load "func.dat"
X! 
X   The `load` command is performed implicitly on any file names given as
X   arguments to gnuplot. These are loaded in the order specified, and
X   then gnuplot exits. 
X
X--- 447,453 -----
X   
X           load 'work.gnu'
X           load "func.dat"
X!  
X   The `load` command is performed implicitly on any file names given as
X   arguments to gnuplot. These are loaded in the order specified, and
X   then gnuplot exits. 
X***************
X*** 481,488
X   
X     plot {ranges}  <function> {title} {style} {, <function> {title} {style}...}
X   
X!  Where <function> is either a mathematical expression or the name of a
X!  data file enclosed in quotes.  User-defined functions and variables
X   may also be defined here. 
X   
X   Curly braces {,} denote optional items.
X
X--- 482,490 -----
X   
X     plot {ranges}  <function> {title} {style} {, <function> {title} {style}...}
X   
X!  Where <function> is either a mathematical expression, the name of a
X!  data file enclosed in quotes, or a pair of mathematical expressions in
X!  the case of parametric functions.  User-defined functions and variables
X   may also be defined here. 
X   
X   Curly braces {,} denote optional items.
X***************
X*** 508,514
X   be specified either as an X and Y value separated by blank space, or
X   as just the Y value, in which case the program will use the number
X   of the coordinate as the X value.  Coordinate numbers start at 0
X!  and are incremented for each data point read.  Lines beginning with #
X   (or ! on VMS) will be treated as comments and ignored. 
X  
X   NOTE that blank lines cause a break in the input, and if the plot
X
X--- 510,517 -----
X   be specified either as an X and Y value separated by blank space, or
X   as just the Y value, in which case the program will use the number
X   of the coordinate as the X value.  Coordinate numbers start at 0
X!  and are incremented for each data point read.  To specify other 
X!  formats, see `plot datafile using`.  Lines beginning with #
X   (or ! on VMS) will be treated as comments and ignored. 
X   
X   NOTE that blank lines cause a break in the input, and if the plot
X***************
X*** 510,516
X   of the coordinate as the X value.  Coordinate numbers start at 0
X   and are incremented for each data point read.  Lines beginning with #
X   (or ! on VMS) will be treated as comments and ignored. 
X! 
X   NOTE that blank lines cause a break in the input, and if the plot
X   style is `lines` or `linespoints` (see `plot style`) there will be no
X   line drawn between the preceding and following points. This does not
X
X--- 513,519 -----
X   and are incremented for each data point read.  To specify other 
X   formats, see `plot datafile using`.  Lines beginning with #
X   (or ! on VMS) will be treated as comments and ignored. 
X!  
X   NOTE that blank lines cause a break in the input, and if the plot
X   style is `lines` or `linespoints` (see `plot style`) there will be no
X   line drawn between the preceding and following points. This does not
X***************
X*** 530,535
X    1975   34
X    1980   24
X    1985   10
X  3 ranges
X  ?plot ranges
X  ?ranges
X
X--- 533,596 -----
X    1975   34
X    1980   24
X    1985   10
X+ 4 using
X+ ?plot datafile using
X+ ?plot data-file using
X+ ?using
X+  The format of data within a file can be selected with the `using` 
X+  option.  The `xy` and `yx` specify the order of the `x` and `y` 
X+  variables in the data file. To reverse the variables specify `yx`.
X+  To specify that the datafile should contain one variable specify `y`.
X+  
X+  Syntax:
X+  
X+          plot "datafile" { using { xy | yx | y } {"scanf string"} } ...
X+  
X+  If the `xy`, `yx` or `y` option is omitted, `xy` is used.
X+  If the scanf string is omitted, the default of `"%f%f"` is used.
X+  
X+  Examples:
X+  
X+          plot "MyData" using yx "%*f%f%*20[^\n]%f" with lines
X+  This causes data to be read from the file "MyData" using the format 
X+  `yx "%*f%f%*20[^\n]%f"`.  The meaning of this format is: `%*f` 
X+  ignore the first number, `%f` then read in the second and assign to y 
X+  (the `yx` option of using), `%*20[^\n]` then ignore 20 non-newline 
X+  characters, `%f` then read in the x value.
X+  
X+          plot "MyData" using "%f%f", "MyData" using "%f%*f%f"
X+  Causes gnuplot to plot the second and third columns of MyData versus
X+  the first column.
X+  
X+  Note: gnuplot first reads a line of the data file into a buffer and 
X+  then does a 
X+          sscanf(input_buffer, scanf_string, &x, &y);
X+  where `x` and `y` are of type `float`.  Any scanf string that specifies
X+  two `float` numbers may be used.
X+ 3 parametric
X+ ?plot parametric
X+ ?parametric
X+  When in parametric mode (`set parametric`) mathematical expressions must
X+  be given in pairs:
X+   plot sin(t),t**2
X+  
X+  Data files are plotted as before, except the parametric function
X+  must be fully specified before a data file is given as a plot.  In
X+  other words, the x parametric function (sin(t) above) and the y 
X+  parametric function (t**2 above) must not be interrupted with any 
X+  modifiers or data functions; doing so will generate a syntax error
X+  stating that the parametric function is not fully specified.
X+  
X+  Ranges take on a different meaning when in parametric mode.  The
X+  first specifiable range on the plot command is the trange, the
X+  next the xrange, and the last is the yrange.  The following plot
X+  shows setting the trange to [-pi:pi], the xrange to [-1.3:1.3]
X+  and the yrange to [-1:1] for the duration of the plot:
X+   plot [-pi:pi] [-1.3:1.3] [-1:1] sin(t),t**2
X+  
X+  Other modifiers, such as `with` and `title` are required after
X+  the function has been fully specified:
X+   plot sin(t),t**2 with linespoints title 'Parametric example'
X  3 ranges
X  ?plot ranges
X  ?ranges
X***************
X*** 629,635
X   This plots sin(x) and cos(x) with linespoints, using the
X   same line type but different point types:
X           plot sin(x) with linesp 1 3, cos(x) with linesp 1 4
X! 
X   This plots file "data" with points style 3:
X           plot "data" with points 1 3 
X   Note that the line style must be specified in order to specify the
X
X--- 690,696 -----
X   This plots sin(x) and cos(x) with linespoints, using the
X   same line type but different point types:
X           plot sin(x) with linesp 1 3, cos(x) with linesp 1 4
X!  
X   This plots file "data" with points style 3:
X           plot "data" with points 1 3 
X   Note that the line style must be specified in order to specify the
X***************
X*** 742,748
X   arrow. To change any attribute of an existing arrow, use the `set
X   arrow` command with the appropriate tag, and specify the parts of the
X   arrow to be changed. 
X! 
X   Arrows outside the plotted boundaries are permitted but may cause
X   device errors; use at your own risk.
X   
X
X--- 803,809 -----
X   arrow. To change any attribute of an existing arrow, use the `set
X   arrow` command with the appropriate tag, and specify the parts of the
X   arrow to be changed. 
X!  
X   Arrows outside the plotted boundaries are permitted but may cause
X   device errors; use at your own risk.
X   
X***************
X*** 796,802
X   
X   This disables autoscaling of the X and Y axes.
X           set noautoscale
X! 
X   This disables autoscaling of the X axis only.
X           set noautoscale x
X  3 clip
X
X--- 857,863 -----
X   
X   This disables autoscaling of the X and Y axes.
X           set noautoscale
X!  
X   This disables autoscaling of the X axis only.
X           set noautoscale x
X  4 parametric mode
X***************
X*** 799,804
X  
X   This disables autoscaling of the X axis only.
X           set noautoscale x
X  3 clip
X  ?set clip
X  ?set noclip
X
X--- 860,890 -----
X   
X   This disables autoscaling of the X axis only.
X           set noautoscale x
X+ 4 parametric mode
X+ ?autoscale parametric
X+ ?set autoscale t
X+  When in parametric mode (`set parametric`) the xrange is as
X+  fully scalable as the yrange.  In other words, in parametric
X+  mode the X axis can be automatically scaled to fit the range
X+  of the parametric function that is being plotted.  Of course,
X+  the Y axis can also be automatically scaled just as in the
X+  non-parametric case.  If autoscaling on the X axis is not set,
X+  the current X range is used.
X+  
X+  When there is a mix of data files and functions, the xrange of
X+  the functions is selected as that of the data files if autoscale
X+  is true for X.  While this keeps the behavior compatible with
X+  non-parametric plotting, it may not be retained in the future.
X+  The problem is that, in parametric mode, the x and y ranges are
X+  not as distinguishable as in the non-parametric mode and this
X+  behavior may not be the most useful.
X+  
X+  For completeness sake a last command `set autoscale t` is accepted.  
X+  However, the effect of this "scaling" is very minor.  When
X+  gnuplot determines that the t range would be empty it makes a
X+  small adjustment if autoscaling is true.  Otherwise, gnuplot
X+  gives an error.  Such behavior may, in fact, not be very useful
X+  and the command `set autoscale t` is certainly questionable.  
X  3 clip
X  ?set clip
X  ?set noclip
X***************
X*** 815,821
X   Syntax:
X           set clip points
X           set noclip points
X! 
X   GNUPLOT can also clip lines that connect a point that is in range
X   with a point that is out of range. The default is to draw the 
X   in-range portion of such lines (i.e., to "clip" them). With the 
X
X--- 901,907 -----
X   Syntax:
X           set clip points
X           set noclip points
X!  
X   GNUPLOT can also clip lines that connect a point that is in range
X   with a point that is out of range. The default is to draw the 
X   in-range portion of such lines (i.e., to "clip" them). With the 
X***************
X*** 826,832
X   Syntax:
X           set clip one
X           set noclip one
X! 
X   GNUPLOT does not show lines that are wholly out of range. Some lines
X   may have both endpoints out of range, but pass through the plotting
X   area. By default, GNUPLOT does not draw these lines (`set noclip
X
X--- 912,918 -----
X   Syntax:
X           set clip one
X           set noclip one
X!  
X   GNUPLOT does not show lines that are wholly out of range. Some lines
X   may have both endpoints out of range, but pass through the plotting
X   area. By default, GNUPLOT does not draw these lines (`set noclip
X***************
X*** 831,837
X   may have both endpoints out of range, but pass through the plotting
X   area. By default, GNUPLOT does not draw these lines (`set noclip
X   two`). They may be drawn (and clipped) with `set clip two`.
X! 
X   Syntax:
X           set clip two
X           set noclip two
X
X--- 917,923 -----
X   may have both endpoints out of range, but pass through the plotting
X   area. By default, GNUPLOT does not draw these lines (`set noclip
X   two`). They may be drawn (and clipped) with `set clip two`.
X!  
X   Syntax:
X           set clip two
X           set noclip two
X***************
X*** 835,841
X   Syntax:
X           set clip two
X           set noclip two
X! 
X   To check the state of all forms of clipping, use
X           show clip
X  
X
X--- 921,927 -----
X   Syntax:
X           set clip two
X           set noclip two
X!  
X   To check the state of all forms of clipping, use
X           show clip
X   
X***************
X*** 838,844
X  
X   To check the state of all forms of clipping, use
X           show clip
X! 
X   The following forms are also permitted. These allow backward
X   compatibility with older versions. 
X          set clip
X
X--- 924,930 -----
X   
X   To check the state of all forms of clipping, use
X           show clip
X!  
X   The following forms are also permitted. These allow backward
X   compatibility with older versions. 
X          set clip
X***************
X*** 966,972
X   label. To change any attribute of an existing label, use the `set
X   label` command with the appropriate tag, and specify the parts of the
X   label to be changed. 
X! 
X   By default, the text is placed flush left against point x,y. If you
X   want to adjust the way the label is positioned with respect to the
X   point x,y, add the parameter <justification>, which may be `left`,
X
X--- 1052,1058 -----
X   label. To change any attribute of an existing label, use the `set
X   label` command with the appropriate tag, and specify the parts of the
X   label to be changed. 
X!  
X   By default, the text is placed flush left against point x,y. If you
X   want to adjust the way the label is positioned with respect to the
X   point x,y, add the parameter <justification>, which may be `left`,
X***************
X*** 990,996
X            set nolabel
X   To show all labels (in tag order) use:
X            show label
X! 
X   The Imagen driver allows \\ in a string to specify a newline.
X  3 logscale
X  ?set logscale
X
X--- 1076,1082 -----
X            set nolabel
X   To show all labels (in tag order) use:
X            show label
X!  
X   The Imagen driver allows \\ in a string to specify a newline.
X  3 logscale
X  ?set logscale
X***************
X*** 1041,1046
X   
X   The filename must be enclosed in quotes.  If the filename is
X   omitted, output will be sent to the standard output. 
X  3 polar
X  ?set polar
X  ?show polar
X
X--- 1127,1160 -----
X   
X   The filename must be enclosed in quotes.  If the filename is
X   omitted, output will be sent to the standard output. 
X+ 3 parametric
X+ ?set parametric
X+ ?show parametric
X+ ?parametric
X+  The `set parametric` command changes the meaning of the plot from
X+  normal functions to parametric functions.  The command 
X+  `set noparametric` changes the plotting style back to normal, 
X+  single-valued expression plotting.
X+  
X+  Parametric functions are determined by a pair of functions 
X+  operating on a `parameter`, such as sin(t),cos(t) (which describes 
X+  a circle if `t` ranges over [-pi:pi]).  Hence it takes two 
X+  parametric function specifications in terms of the parametric 
X+  dummy argument to describe a single graph.  
X+  
X+  The total set of possible plots is a superset of the simple f(x) 
X+  style plots, since the two functions can describe both the 
X+  x and y values to be computed separately.  In fact, plots of 
X+  the type t,f(t) are equivalent to those produced with f(x) since 
X+  the x values are computed with just the identity function.  Note 
X+  that the order the parametric function is specified is xfunction,
X+  yfunction and that each operates over the common parametric domain.
X+  
X+  Also, the `set parametric` function implies a new range of values.  
X+  Whereas the normal f(x) style plotting assumes an xrange and yrange,
X+  the parametric mode additionally specifies a trange.  The trange 
X+  may be specified directly with `set trange`, by specifying the 
X+  range on the plot command, or indirectly with `set autoscale t`.
X  3 polar
X  ?set polar
X  ?show polar
X***************
X*** 1112,1118
X           set size 0.5,0.5
X   To show the size use:
X           show size
X! 
X   For the LaTeX and Fig terminals the default size (scale factor 1,1)
X   is 5 inches wide by 3 inches high. Note that the size of the plot
X   includes the space used by the labels; the plotting area itself is
X
X--- 1226,1232 -----
X           set size 0.5,0.5
X   To show the size use:
X           show size
X!  
X   For the LaTeX and Fig terminals the default size (scale factor 1,1)
X   is 5 inches wide by 3 inches high. Note that the size of the plot
X   includes the space used by the labels; the plotting area itself is
X***************
X*** 1188,1194
X   
X   The first clears the title (default).
X   The second form sets the title to "title-text" (without the quotes).
X! 
X   The Imagen driver allows \\ in a string to specify a newline.
X  3 variables
X  ?show variables
X
X--- 1302,1308 -----
X   
X   The first clears the title (default).
X   The second form sets the title to "title-text" (without the quotes).
X!  
X   The Imagen driver allows \\ in a string to specify a newline.
X  3 trange
X  ?set trange
X***************
X*** 1190,1195
X   The second form sets the title to "title-text" (without the quotes).
X  
X   The Imagen driver allows \\ in a string to specify a newline.
X  3 variables
X  ?show variables
X   The `show variables` command lists all user-defined variables and
X
X--- 1304,1331 -----
X   The second form sets the title to "title-text" (without the quotes).
X   
X   The Imagen driver allows \\ in a string to specify a newline.
X+ 3 trange
X+ ?set trange
X+ ?show trange
X+ ?trange
X+  The `set trange` command sets the parametric range used to compute
X+  x and y values when in parametric mode.  If not in parametric mode
X+  (see `set parametric`) then this range is not used.  This command 
X+  does not affect XY autoscaling or XY ranges.
X+  
X+  This range may also be specified on the `plot` command line when
X+  in parametric mode.
X+  
X+  Syntax:
X+          set trange [{<tmin> : <tmax>}]
X+  
X+  Where <tmin> and <tmax> terms are expressions or constants.
X+  
X+  Both the <tmin> and <tmax> terms are optional. Anything omitted will
X+  not be changed, so 
X+          set trange [:10]
X+  changes tmax to 10 without affecting tmin. 
X+ 3 xtics
X  3 variables
X  ?show variables
X   The `show variables` command lists all user-defined variables and
X***************
X*** 1211,1217
X   
X   The first clears the x-axis label (default).
X   The second form sets the x-axis label to "label" (without the quotes).
X! 
X   The Imagen driver allows \\ in a string to specify a newline.
X  3 xrange
X  ?set xrange
X
X--- 1347,1353 -----
X   
X   The first clears the x-axis label (default).
X   The second form sets the x-axis label to "label" (without the quotes).
X!  
X   The Imagen driver allows \\ in a string to specify a newline.
X  3 xrange
X  ?set xrange
X***************
X*** 1241,1247
X   xtics` and `set noxtics` command. The x-axis tic marks may be turned
X   off with the `set noxtics` command. They may be turned on (the
X   default state) with `set xtics`.
X! 
X   If you prefer your own series of tic marks, you may use the form
X            set xtics <start>, <incr>{, <end>}
X   The curly braces indicate that the <end> parameter is optional. 
X
X--- 1377,1383 -----
X   xtics` and `set noxtics` command. The x-axis tic marks may be turned
X   off with the `set noxtics` command. They may be turned on (the
X   default state) with `set xtics`.
X!  
X   If you prefer your own series of tic marks, you may use the form
X            set xtics <start>, <incr>{, <end>}
X   The curly braces indicate that the <end> parameter is optional. 
X***************
X*** 1251,1257
X   increment may be negative. Example:
X             set xtics 0,.5,10
X   makes tics 0, 0.5, 1, 1.5, ..., 9.5, 10.
X! 
X   If you need arbitrary tic positions, or non-numeric tic labels, 
X   any non-empty set of tic positions and labels may be given with this
X   format:
X
X--- 1387,1393 -----
X   increment may be negative. Example:
X             set xtics 0,.5,10
X   makes tics 0, 0.5, 1, 1.5, ..., 9.5, 10.
X!  
X   If you need arbitrary tic positions, or non-numeric tic labels, 
X   any non-empty set of tic positions and labels may be given with this
X   format:
X***************
X*** 1266,1272
X            set xtics ("low" 0, "medium" 50, "high" 100)
X            set xtics (1,2,4,8,16,32,64,128,256,512,1024)
X            set xtics ("bottom" 0, "" 10, "top" 20)
X! 
X   Tics will only be plotted when in range.
X  
X   The `set ytics` and `set noytics` commands work identically.
X
X--- 1402,1408 -----
X            set xtics ("low" 0, "medium" 50, "high" 100)
X            set xtics (1,2,4,8,16,32,64,128,256,512,1024)
X            set xtics ("bottom" 0, "" 10, "top" 20)
X!  
X   Tics will only be plotted when in range.
X   
X   The `set ytics` and `set noytics` commands work identically.
X***************
X*** 1268,1274
X            set xtics ("bottom" 0, "" 10, "top" 20)
X  
X   Tics will only be plotted when in range.
X! 
X   The `set ytics` and `set noytics` commands work identically.
X   See also `set format` command.
X  3 ylabel
X
X--- 1404,1410 -----
X            set xtics ("bottom" 0, "" 10, "top" 20)
X   
X   Tics will only be plotted when in range.
X!  
X   The `set ytics` and `set noytics` commands work identically.
X   See also `set format` command.
X  3 xzeroaxis
X***************
X*** 1271,1276
X  
X   The `set ytics` and `set noytics` commands work identically.
X   See also `set format` command.
X  3 ylabel
X  ?set ylabel
X  ?show ylabel
X
X--- 1407,1434 -----
X   
X   The `set ytics` and `set noytics` commands work identically.
X   See also `set format` command.
X+ 3 xzeroaxis
X+ ?set xzeroaxis
X+ ?show xzeroaxis
X+ ?xzeroaxis
X+  `set xzeroaxis` draws the x-axis.  By default, this option is on.
X+  `set noxzeroaxis` causes gnuplot to omit the x-axis.
X+  
X+  Syntax:
X+          set xzeroaxis
X+          set noxzeroaxis
X+          show xzeroaxis
X+ 3 yzeroaxis
X+ ?set yzeroaxis
X+ ?show yzeroaxis
X+ ?yzeroaxis
X+  `set yzeroaxis` draws the y-axis.  By default, this option is on.
X+  `set noyzeroaxis` causes gnuplot to omit the y-axis.
X+  
X+  Syntax:
X+          set yzeroaxis
X+          set noyzeroaxis
X+          show yzeroaxis
X  3 ylabel
X  ?set ylabel
X  ?show ylabel
X***************
X*** 1338,1343
X   Syntax:
X           set zero <expression>
X           show zero
X  2 shell
X  ?shell
X   The `shell` command spawns an interactive shell.  To return to
X
X--- 1496,1513 -----
X   Syntax:
X           set zero <expression>
X           show zero
X+ 3 zeroaxis
X+ ?set zeroaxis
X+ ?show zeroaxis
X+ ?zeroaxis
X+  `set zeroaxis` draws the x-axis and y-axis.  By default, this option is on.
X+  `set noxzeroaxis` causes gnuplot to omit the axes.
X+  
X+  Syntax:
X+          set zeroaxis
X+          set nozeroaxis
X+          show zeroaxis
X+  See `set xzeroaxis` and `set yzeroaxis`.
X  2 shell
X  ?shell
X   The `shell` command spawns an interactive shell.  To return to
XCommon subdirectories: ./docs/latextut and ../gnuplot2.02/docs/latextut
Xdiff -cr ./docs/titlepage.ms ../gnuplot2.02/docs/titlepage.ms
X*** ./docs/titlepage.ms	Fri Mar  9 00:48:30 1990
X--- ../gnuplot2.02/docs/titlepage.ms	Wed Nov 28 09:15:45 1990
X***************
X*** 7,13
X  .AU
X  Thomas Williams & Colin Kelley
X  .br
X! John Campbell, David Kotz, and Russell Lang (Version 2.0)
X  .AI
X  pixar!info-gnuplot@sun.com
X  \*(DY
X
X--- 7,13 -----
X  .AU
X  Thomas Williams & Colin Kelley
X  .br
X! John Campbell, David Kotz, and Russell Lang (Version 2.0 patchlevel 2)
X  .AI
X  pixar!info-gnuplot@sun.com
X  \*(DY
Xdiff -cr ./docs/titlepage.tex ../gnuplot2.02/docs/titlepage.tex
X*** ./docs/titlepage.tex	Fri Mar  9 00:48:31 1990
X--- ../gnuplot2.02/docs/titlepage.tex	Wed Nov 28 09:15:26 1990
X***************
X*** 23,29
X     \verb+pixar!info-gnuplot@sun.com+
X  
X     \vfill
X!    {\small This manual is for GNUPLOT version 2.0.}
X  
X     \end{center}
X  \newpage
X
X--- 23,29 -----
X     \verb+pixar!info-gnuplot@sun.com+
X  
X     \vfill
X!    {\small This manual is for GNUPLOT version 2.0 patchlevel 2.}
X  
X     \end{center}
X  \newpage
Xdiff -cr ./docs/latextut/Makefile ../gnuplot2.02/docs/latextut/Makefile
X*** ./docs/latextut/Makefile	Tue Mar 27 08:59:57 1990
X--- ../gnuplot2.02/docs/latextut/Makefile	Fri Dec  7 08:34:22 1990
X***************
X*** 1,6
X  # Makefile for gnuplot LaTeX tutorial
X! # To make the manual from scratch, we run latex three times
X! all: tutorial.dvi
X  	latex tutorial
X  
X  # To touch it up after changes:
X
X--- 1,8 -----
X  # Makefile for gnuplot LaTeX tutorial
X! # To make the manual from scratch, we run latex two times
X! all: tutorial.dvi done
X! 
X! done:
X  	latex tutorial
X  	echo > done
X  
X***************
X*** 2,7
X  # To make the manual from scratch, we run latex three times
X  all: tutorial.dvi
X  	latex tutorial
X  
X  # To touch it up after changes:
X  remake: tutorial.dvi
X
X--- 4,10 -----
X  
X  done:
X  	latex tutorial
X+ 	echo > done
X  
X  # To touch it up after changes:
X  remake: tutorial.dvi
X***************
X*** 13,18
X  tutorial.dvi: eg1.tex eg2.tex eg3.tex eg4.tex eg5.tex eg6.tex \
X  	tutorial.tex header.tex
X  	latex tutorial
X  
X  .SUFFIXES: .tex .plt
X  
X
X--- 16,22 -----
X  tutorial.dvi: eg1.tex eg2.tex eg3.tex eg4.tex eg5.tex eg6.tex \
X  	tutorial.tex header.tex
X  	latex tutorial
X+ 	rm -f done
X  
X  .SUFFIXES: .tex .plt
X  
Xdiff -cr ./term/cgi.trm ../gnuplot2.02/term/cgi.trm
X*** ./term/cgi.trm	Mon Nov 26 13:07:06 1990
X--- ../gnuplot2.02/term/cgi.trm	Mon Dec 17 09:59:49 1990
X***************
X*** 0
X
X--- 1,227 -----
X+ /* GNUPLOT - cgi.trm */
X+ /*
X+  * Copyright (C) 1990 Ronald Florence
X+  *
X+  * Permission is hereby granted for unlimited non-commercial
X+  * use of this code, on condition that the copyright
X+  * notices are left intact and any modifications to the source
X+  * code are noted as such.  No warranty of any kind is implied
X+  * or granted for this material.
X+  *
X+  * This file is included by ../term.c.
X+  *
X+  * This terminal driver supports SCO CGI drivers
X+  *
X+  * AUTHOR
X+  *   Ronald Florence <ron@mlfarm.com>
X+  */
X+ 
X+ #ifdef VGA_MONO
X+ static short rgb[16][3] = {
X+   0,    0,      0,      /* Black        */
X+   1000,	1000,	1000,	/* White	*/
X+   800,	800,	0,	/* Red		*/
X+   0,	600,	0,	/* Green	*/
X+   0,	800,	800,	/* Blue		*/
X+   1000,	1000,	400,	/* Yellow	*/
X+   0,	600,	600,	/* Cyan		*/
X+   600,	600,	600,	/* Magenta	*/
X+   800,	800,	0,	/* Brown	*/
X+   600,	600,	600,	/* Lt. Grey	*/
X+   400,	600,	400,	/* Dark Grey	*/
X+   400,	600,	1000,	/* Lt. Blue	*/
X+   400,	1000,	400,	/* Lt Green	*/
X+   400,	1000,	1000,	/* Lt Cyan	*/
X+   1000,	600,	400,	/* Lt Red	*/
X+   600,	600,	1000	/* Lt Magenta	*/
X+ };
X+ #endif
X+ 
X+ #define CGI_XMAX	32767
X+ #define CGI_YMAX	32767
X+ #define CGI_VTIC	(CGI_YMAX / 75)
X+ #define CGI_HTIC	term_tbl[term].h_tic
X+ #define CGI_VCHAR	term_tbl[term].v_char
X+ #define CGI_HCHAR	term_tbl[term].h_char
X+ #define CRT		(gout[45] == 0)
X+ #define CGICOLORS	gout[13]
X+ #define CGILINES	gout[6]
X+ #define CGIROTATES	gout[36]
X+ #define CGITEXTALIGN	gout[48]
X+ 
X+ static short gout[66];
X+ static short cgidev;
X+ static short vect[4];
X+ static short gin[19] = {
X+  0,	/* default aspect ratio */
X+  1,	/* solid line */
X+  1,	/* line color */
X+  1,	/* marker type . */
X+  1,	/* marker color */
X+  1,	/* graphics text font */
X+  1,	/* graphics text color */
X+  0,	/* fill interior style */
X+  0,	/* fill style index */
X+  1,	/* fill color index */
X+  1 	/* prompt for paper changes */
X+  };
X+ 
X+ char	*cgidriver, *getenv();
X+ 
X+ 
X+ CGI_init()
X+ {
X+   if (getenv(cgidriver = "CGIDISP") == NULL)
X+     HCGI_init();
X+ }
X+ 
X+ 
X+ HCGI_init()
X+ {
X+   if (getenv(cgidriver = "CGIPRNT") == NULL)
X+     int_error("no CGI driver", NO_CARET);
X+ }
X+ 
X+ 
X+ CGI_graphics()
X+ {
X+   int	i, aspect;
X+   char *s;
X+   short font_cap[9];
X+   char	err_str[80];
X+ 
X+   if ( (s=getenv("ASPECT")) != NULL && (aspect=atoi(s)) >= 0 && aspect <= 3 )
X+     gin[0] = aspect;
X+   for (i = 0; cgidriver[i]; i++) 
X+     gin[11+i] = cgidriver[i];
X+   gin[18] = ' ';
X+ 
X+   if (v_opnwk(gin, &cgidev, gout) < 0) 
X+     {
X+       sprintf(err_str, "CGI error %d opening %s", -vq_error(), cgidriver);
X+       int_error(err_str, NO_CARET);
X+     }
X+   vqt_representation(cgidev, 9, font_cap);
X+   CGI_VCHAR = font_cap[8] * 3 / 2;
X+   CGI_HCHAR = font_cap[7];
X+   CGI_HTIC = CGI_VTIC * ((double) gout[1] / (double) gout[4]) / 
X+ 			((double) gout[0] / (double) gout[3]);
X+ #ifdef VGA_MONO
X+   if (CGICOLORS > 2)
X+     vsc_table(cgidev, 0, CGICOLORS, rgb);
X+ #endif
X+ }
X+ 
X+ 
X+ CGI_text()
X+ {
X+   if (CRT)  
X+     {
X+       short ptin[2];
X+       char  strin[2];
X+       
X+       ptin[0] = 0;
X+       ptin[1] = 0;
X+       vrq_string(cgidev, 1, 0, ptin, strin);
X+     }
X+   v_clswk(cgidev);
X+ }
X+ 
X+ 
X+ CGI_reset()
X+ {
X+ }
X+ 
X+ 
X+ CGI_move(x, y)
X+      int x, y;
X+ {
X+   vect[0] = x;
X+   vect[1] = y;
X+ }
X+ 
X+ CGI_vector(x, y)
X+      int x, y;
X+ {
X+   vect[2] = x;
X+   vect[3] = y;
X+   v_pline(cgidev, 2, vect);
X+   vect[0] = x;
X+   vect[1] = y;
X+ }
X+ 
X+ 
X+ CGI_linetype(linetype)
X+      int linetype;
X+ {
X+   short lcolor;
X+ 
X+   if (CGICOLORS > 2) 
X+     {
X+       lcolor = (linetype + 2) % CGICOLORS + 1;
X+       vsl_color(cgidev, lcolor);
X+       vsm_color(cgidev, lcolor);
X+     }
X+   vsl_type(cgidev, (linetype < 1) ? 1 : (linetype % CGILINES) + 1);
X+ }
X+ 
X+ 
X+ CGI_put_text(x, y, str)
X+ int x, y;
X+ char *str;
X+ {
X+   v_gtext(cgidev, (short) x, (short) y, str);
X+ }
X+ 
X+ 
X+ CGI_text_angle(ang)
X+ int	ang;
X+ {
X+   if (!CGIROTATES)
X+     return FALSE;
X+ 				/* angles are 1/10 degree ccw */
X+   vst_rotation(cgidev, (ang) ? 900 : 0);
X+   return TRUE;
X+ }
X+ 
X+ 
X+ CGI_justify_text(mode)
X+ enum JUSTIFY mode;
X+ {
X+   short hor_in, hor_out, vert_out;
X+ 
X+   if (!CGITEXTALIGN)
X+     return FALSE;
X+ 
X+   switch (mode)
X+     {
X+     case LEFT:   hor_in = 0; break;
X+     case CENTRE: hor_in = 1; break;
X+     case RIGHT:  hor_in = 2; break;
X+     }
X+   vst_alignment(cgidev, hor_in, 1, &hor_out, &vert_out); 
X+   return TRUE;
X+ }
X+ 
X+ 
X+ #define POINT_TYPES 6
X+ 
X+ CGI_point(x,y,num)
X+      int x, y, num;
X+ {
X+   short  point[2];
X+   static short cgimarker[POINT_TYPES] = {1, 2, 6, 4, 5, 3};
X+ 			              /* .  +  <> [] X  * */
X+   if (num < 0)
X+     {
X+       CGI_move(x, y);
X+       CGI_vector(x, y);
X+     }
X+   else
X+     {
X+       vsm_type(cgidev, cgimarker[num % POINT_TYPES]);
X+       point[0] = x;
X+       point[1] = y;
X+       v_pmarker(cgidev, 1, point);
X+     }
X+ }
Xdiff -cr ./term/epson.trm ../gnuplot2.02/term/epson.trm
X*** ./term/epson.trm	Mon Dec 17 09:53:09 1990
X--- ../gnuplot2.02/term/epson.trm	Wed Dec 19 09:14:16 1990
X***************
X*** 0
X
X--- 1,481 -----
X+ /* GNUPLOT - epson.trm */
X+ /*
X+  * Copyright (C) 1990   
X+  *
X+  * Permission to use, copy, and distribute this software and its
X+  * documentation for any purpose with or without fee is hereby granted, 
X+  * provided that the above copyright notice appear in all copies and 
X+  * that both that copyright notice and this permission notice appear 
X+  * in supporting documentation.
X+  *
X+  * Permission to modify the software is granted, but not the right to
X+  * distribute the modified code.  Modifications are to be distributed 
X+  * as patches to released version.
X+  *  
X+  * This software  is provided "as is" without express or implied warranty.
X+  * 
X+  * This file is included by ../term.c.
X+  *
X+  * This terminal driver supports:
X+  *  epson_lx800, nec_cp6c, nec_cp6d, nec_cp6b, starc,
X+  *  epson_60dpi, tandy_60dpi
X+  *
X+  * AUTHORS
X+  *  Russell Lang
X+  *  William Wilson
X+  *
X+  * send your comments or suggestions to (pixar!info-gnuplot@sun.com).
X+  * 
X+  */
X+ 
X+ /* The following epson lx800 driver uses generic bit mapped graphics
X+    routines to build up a bit map in memory. */
X+ /* by Russell Lang, rjl@monu1.cc.monash.edu.au */
X+ /* On PC, print using 'copy file /b lpt1:', do NOT use 'print' */
X+ /* EPSON_init changes outfile to binary mode on PC's */
X+ 
X+ #ifdef EPSON
X+ 
X+ #define EPSONXMAX	512 
X+ #define EPSONYMAX	384
X+ 
X+ #define EPSONXLAST (EPSONXMAX - 1)
X+ #define EPSONYLAST (EPSONYMAX - 1)
X+ 
X+ #define EPSONVCHAR		FNT5X9_VCHAR  	
X+ #define EPSONHCHAR		FNT5X9_HCHAR		
X+ #define EPSONVTIC		6
X+ #define EPSONHTIC		6
X+ 
X+ EPSONinit()
X+ {
X+ #ifdef PC
X+ 	reopen_binary();
X+ #endif
X+ #ifdef vms
X+ 	reopen_binary();
X+ #endif
X+ }
X+ 
X+ 
X+ EPSONgraphics()
X+ {
X+ 	b_charsize(FNT5X9);
X+ 	b_makebitmap((unsigned int)(EPSONXMAX*xsize),
X+ 	             (unsigned int)(EPSONYMAX*ysize),1);
X+ }
X+ 
X+ 
X+ EPSONtext()
X+ {
X+ 	epson_dump();
X+ 	b_freebitmap();
X+ }
X+ 
X+ 
X+ #define EPSONlinetype b_setlinetype
X+ #define EPSONmove b_move
X+ #define EPSONvector b_vector
X+ #define EPSONput_text b_put_text
X+ #define EPSON_text_angle b_text_angle
X+ 
X+ EPSONreset()
X+ {
X+ #ifdef vms
X+ 	fflush_binary();
X+ #endif
X+ }
X+ 
X+ 
X+ /* output file must be binary mode for epson_dump */
X+ epson_dump()
X+ {
X+   register unsigned int x;
X+   int j;
X+ 	for (j=(b_ysize/8)-1; j>=0; j--) {
X+ 		/* select plotter graphics mode (square pixels) */
X+ 		fprintf(outfile,"\033J\030");	/* line feed 8/72" = 8 dots */
X+ 		fprintf(outfile,"\r\033*\005");
X+ 		(void) fputc((char)(b_xsize%256),outfile);
X+ 		(void) fputc((char)(b_xsize/256),outfile);
X+ 		for (x=0; x<b_xsize; x++) {
X+ 			(void) fputc( (char)(*((*b_p)[j]+x)), outfile );
X+ 		}
X+ 	}
X+ #ifdef PC
X+ 	fprintf(stderr,"Print using: COPY /B\n");
X+ #endif
X+ }
X+ 
X+ #endif /* EPSON */
X+ 
X+ 
X+ /* The following NEC CP6 Pinwriter driver uses generic bit mapped graphics
X+    routines to build up a bit map in memory. */
X+ /* by Russell Lang, rjl@monu1.cc.monash.edu.au */
X+ /* On PC, print using 'copy file /b lpt1:', do NOT use 'print' */
X+ /* NECinit changes outfile to binary mode for PC's */
X+ 
X+ /* Add a Monochrome NEC printer (for faster speed and line types) jdc */
X+ 
X+ #ifdef NEC
X+ 
X+ #define NECXMAX	400 
X+ #define NECYMAX	320
X+ 
X+ #define NECXLAST (NECXMAX - 1)
X+ #define NECYLAST (NECYMAX - 1)
X+ 
X+ #define NECVCHAR		FNT5X9_VCHAR  	
X+ #define NECHCHAR		FNT5X9_HCHAR		
X+ #define NECVTIC		6
X+ #define NECHTIC		6
X+ 
X+ /* plane 0=black, 1=cyan(blue), 2=magenta(red), 3=yellow */
X+ static unsigned int neccolor[] = {1,8,4,2,10,12,6,14};
X+ static unsigned int necpcolor[]= {0,2,1,4};
X+ 
X+ NECinit()
X+ {
X+ #ifdef PC
X+ 	reopen_binary();
X+ #endif
X+ #ifdef vms
X+ 	reopen_binary();
X+ #endif
X+ }
X+ 
X+ 
X+ /* Monochrome only NEC CP6 printer (set term nec_cp6m or nec_cp6d). */
X+ /* will probably work with NEC P6 printer */
X+ NECMgraphics()
X+ {
X+ 	b_charsize(FNT5X9);
X+ 	b_makebitmap((unsigned int)(NECXMAX*xsize),
X+ 	             (unsigned int)(NECYMAX*ysize),1);
X+ }
X+ 
X+ /* Color ribbon in NEC CP6 printer (set term nec_cp6c) */
X+ NECCgraphics()
X+ {
X+ 	b_charsize(FNT5X9);
X+ 	b_makebitmap((unsigned int)(NECXMAX*xsize),
X+ 	             (unsigned int)(NECYMAX*ysize),4);
X+ }
X+ 
X+ 
X+ NECdraft_text()
X+ {
X+ 	nec_draft_dump();
X+ 	b_freebitmap();
X+ }
X+ 
X+ NECtext()
X+ {
X+ 	nec_dump();
X+ 	b_freebitmap();
X+ }
X+ 
X+ NECClinetype(linetype)
X+ int linetype;
X+ {
X+ 	if (linetype>=6)
X+ 		linetype %= 6;
X+ 	b_setvalue(neccolor[linetype+2]);
X+ }
X+ 
X+ #define NECMlinetype b_setlinetype
X+ #define NECmove b_move
X+ #define NECvector b_vector
X+ #define NECput_text b_put_text
X+ #define NEC_text_angle b_text_angle
X+ 
X+ 	
X+ NECreset()
X+ {
X+ #ifdef vms
X+ 	fflush_binary();
X+ #endif
X+ }
X+ 
X+ 
X+ /* output file must be binary mode for nec_dump */
X+ nec_dump()
X+ {
X+ unsigned int x;
X+ unsigned int plane,offset;
X+ int j;
X+ unsigned int column8;
X+ unsigned long column24;
X+ char column3, column2, column1;
X+ 	fprintf(outfile,"\033P\033l\005");  /* 10cpi, left margin 5 char */
X+ 	for (j=(b_ysize/8)-1;j>=0;j--) {
X+ 			fprintf(outfile,"\033J\030");  /* 24/180" line feed */
X+ 			for (plane=0; plane<b_planes; plane++) {
X+ 				offset=plane*b_psize;
X+ 				if (b_planes>1) {
X+ 				    /* select colour for plane */
X+ 				    fprintf(outfile,"\033r");
X+ 				    (void) fputc((char)necpcolor[plane],outfile);
X+ 				}
X+ 				/* select plotter graphics mode (square pixels) */
X+ 				fprintf(outfile,"\r\033*\047");
X+ 				(void) fputc((char)((b_xsize*3)%256),outfile);
X+ 				(void) fputc((char)((b_xsize*3)/256),outfile);
X+ 				for (x=0; x<b_xsize; x++) {
X+ 					column8= (unsigned int)(*((*b_p)[j+offset]+x));
X+ 					column24=0;
X+ 					if (column8&0x01) column24|=(long)0x000007;
X+ 					if (column8&0x02) column24|=(long)0x000038;
X+ 					if (column8&0x04) column24|=(long)0x0001c0;
X+ 					if (column8&0x08) column24|=(long)0x000e00;
X+ 					if (column8&0x10) column24|=(long)0x007000;
X+ 					if (column8&0x20) column24|=(long)0x038000;
X+ 					if (column8&0x40) column24|=(long)0x1c0000;
X+ 					if (column8&0x80) column24|=(long)0xe00000;
X+ 					column1 = (char) ( column24      & (long)0xff);
X+ 					column2 = (char) ((column24>>8)  & (long)0xff);
X+ 					column3 = (char) ((column24>>16) & (long)0xff);
X+ 					(void) fputc(column3,outfile);
X+ 					(void) fputc(column2,outfile);
X+ 					(void) fputc(column1,outfile);
X+ 					(void) fputc(column3,outfile);
X+ 					(void) fputc(column2,outfile);
X+ 					(void) fputc(column1,outfile);
X+ 					(void) fputc(column3,outfile);
X+ 					(void) fputc(column2,outfile);
X+ 					(void) fputc(column1,outfile);
X+ 				}
X+ 			}
X+ 	}
X+ 	fprintf(outfile,"\r\033l");
X+ 	(void) fputc('\0',outfile);				/* set left margin to 0 */
X+ 	if (b_planes > 1) {
X+ 		fprintf(outfile,"\033r");
X+ 		(void) fputc('\0',outfile);				/* set color to black */
X+ 	}
X+ #ifdef PC
X+ 	fprintf(stderr,"Print using: COPY /B\n");
X+ #endif
X+ #ifdef vms
X+ 	fflush_binary();
X+ #endif
X+ }
X+ 
X+ /* output file must be binary mode for nec_dump */
X+ nec_draft_dump()
X+ {
X+ unsigned int x;
X+ unsigned int plane,offset;
X+ int j;
X+ 	fprintf(outfile,"\033P\033l\005\r");  /* 10cpi, left margin 5 char */
X+ 	for (j=(b_ysize/8)-1;j>=0;j--) {
X+ 			fprintf(outfile,"\033J\030");  /* 24/180" line feed */
X+ 			for (plane=0; plane<b_planes; plane++) {
X+ 				offset=plane*b_psize;
X+ 				if (b_planes>1) {
X+ 				    /* select colour for plane */
X+ 				    fprintf(outfile,"\033r");
X+ 				    (void) fputc((char)necpcolor[plane],outfile);
X+ 				}
X+ 				/* select plotter graphics mode (square pixels) */
X+ 				fprintf(outfile,"\r\033*");
X+ 				(void) fputc('\0',outfile);
X+ 				(void) fputc((char)(b_xsize%256),outfile);
X+ 				(void) fputc((char)(b_xsize/256),outfile);
X+ 				for (x=0; x<b_xsize; x++) {
X+ 					(void) fputc( (char)(*((*b_p)[j+offset]+x)), outfile );
X+ 				}
X+ 			}
X+ 	}
X+ 	fprintf(outfile,"\r\033l");
X+ 	(void) fputc('\0',outfile);				/* set left margin to 0 */
X+ 	if (b_planes > 1) {
X+ 		fprintf(outfile,"\033r");
X+ 		(void) fputc('\0',outfile);				/* set color to black */
X+ 	}
X+ #ifdef PC
X+ 	fprintf(stderr,"Print using: COPY /B\n");
X+ #endif
X+ }
X+ 
X+ #endif /* NEC */
X+ 
X+ #ifdef STARC
X+ /* The following Star color driver uses generic bit mapped graphics
X+    routines to build up a bit map in memory. */
X+ /* Star Color changes made by William Wilson, wew@naucse.cse.nau.edu */
X+ /* On PC, print using 'copy file /b lpt1:', do NOT use 'print' */
X+ /* STARC_init changes outfile to binary mode on PC's */
X+ 
X+ #define STARCXMAX	512 
X+ #define STARCYMAX	384
X+ 
X+ #define STARCXLAST (STARCXMAX - 1)
X+ #define STARCYLAST (STARCYMAX - 1)
X+ 
X+ #define STARCVCHAR		FNT5X9_VCHAR  	
X+ #define STARCHCHAR		FNT5X9_HCHAR		
X+ #define STARCVTIC		6
X+ #define STARCHTIC		6
X+ 
X+ /* plane 0=black, 1=cyan(blue), 2=magenta(red), 3=yellow */
X+ static unsigned int STARCcolor[] = {1,8,4,2,10,12,6,14};
X+ static unsigned int STARCpcolor[]= {0,2,1,4};
X+ 
X+ STARCinit()
X+ {
X+ #ifdef PC
X+ 	reopen_binary();
X+ #endif
X+ #ifdef vms
X+ 	reopen_binary();
X+ #endif
X+ }
X+ 
X+ 
X+ STARCgraphics()
X+ {
X+ 	b_charsize(FNT5X9);
X+ 	b_makebitmap((unsigned int)(STARCXMAX*xsize),
X+ 	             (unsigned int)(STARCYMAX*ysize),4);
X+ }
X+ 
X+ 
X+ STARCtext()
X+ {
X+ 	STARC_dump();
X+ 	b_freebitmap();
X+ }
X+ 
X+ STARClinetype(linetype)
X+ int linetype;
X+ {
X+ 	if (linetype>=6)
X+ 		linetype %= 6;
X+ 	b_setvalue(STARCcolor[linetype+2]);
X+ }
X+ 
X+ 
X+ #define STARCmove b_move
X+ #define STARCvector b_vector
X+ #define STARCput_text b_put_text
X+ #define STARC_text_angle b_text_angle
X+ 
X+ STARCreset()
X+ {
X+ #ifdef vms
X+ 	fflush_binary();
X+ #endif
X+ }
X+ 
X+ 
X+ /* output file must be binary mode for STARC_dump */
X+ STARC_dump()
X+ {
X+ unsigned int x;
X+ unsigned int plane,offset;
X+ int j;
X+ 	for (j=(b_ysize/8)-1;j>=0;j--) {
X+ 		fprintf(outfile,"\033J\030");	/* line feed 8/72" = 8 dots */
X+ 		for (plane=0; plane<b_planes; plane++) {
X+ 			offset=plane*b_psize;
X+ 			if (b_planes>1) {
X+ 				/* select colour for plane */
X+ 				fprintf(outfile,"\033r");
X+ 				(void) fputc((char)STARCpcolor[plane],outfile);
X+ 			}
X+ 			/* select plotter graphics mode (square pixels) */
X+ 			fprintf(outfile,"\r\033*\005");
X+ 			(void) fputc((char)(b_xsize%256),outfile);
X+ 			(void) fputc((char)(b_xsize/256),outfile);
X+ 			for (x=0; x<b_xsize; x++) {
X+ 				(void) fputc( (char)(*((*b_p)[j+offset]+x)), outfile );
X+ 			}
X+ 		}
X+ 	}
X+ 	if (b_planes > 1) {
X+ 		fprintf(outfile,"\033r");
X+ 		(void) fputc('\0',outfile);				/* set color to black */
X+ 	}
X+ #ifdef PC
X+ 	fprintf(stderr,"Print using: COPY /B\n");
X+ #endif
X+ }
X+ 
X+ #endif /* STARC */
X+ 
X+ 
X+ #ifdef EPS60
X+ 
X+ /* make the total dimensions 8 inches by 5 inches */
X+ #define EPS60XMAX	480
X+ #define EPS60YMAX	360
X+ 
X+ #define EPS60XLAST (EPS60XMAX - 1)
X+ #define EPS60YLAST (EPS60YMAX - 1)
X+ 
X+ EPS60graphics()
X+ {
X+ 	b_charsize(FNT5X9);
X+ 	b_makebitmap((unsigned int)(EPS60XMAX*xsize),
X+ 	             (unsigned int)(EPS60YMAX*ysize),1);
X+ }
X+ 
X+ 
X+ EPS60text()
X+ {
X+ 	eps60_dump();
X+ 	b_freebitmap();
X+ }
X+ 
X+ 
X+ 
X+ /* output file must be binary mode for eps60_dump */
X+ eps60_dump()
X+ {
X+   register unsigned int x;
X+   int j;
X+ 	fprintf(outfile,"\033%c\030",'3'); /* set line spacing 24/216" = 8 dots */
X+ 	for (j=(b_ysize/8)-1; j>=0; j--) {
X+ 		/* select printer graphics mode 'K' */
X+ 		fprintf(outfile,"\r\n\033K");
X+ 		(void) fputc((char)(b_xsize%256),outfile);
X+ 		(void) fputc((char)(b_xsize/256),outfile);
X+ 		for (x=0; x<b_xsize; x++) {
X+ 			(void) fputc( (char)(*((*b_p)[j]+x)), outfile );
X+ 		}
X+ 	}
X+ 	fprintf(outfile,"\033%c\044\r\n",'3'); /* set line spacing 36/216" = 1/6" */
X+ #ifdef PC
X+ 	fprintf(stderr,"Print using: COPY /B\n");
X+ #endif
X+ }
X+ 
X+ #endif /* EPS60 */
X+ 
X+ #ifdef TANDY60
X+ 
X+ /* The only difference between TANDY60 and EPS60 is the inclusion
X+    of codes to swap the Tandy printer into IBM mode and back
X+    into Tandy mode.  For a Tandy already in IBM mode, use EPS60. */
X+ 
X+ 
X+ TANDY60text()
X+ {
X+ #ifdef PC
X+ 	fprintf(stderr, "Inserting Tandy/IBM mode conversion codes\n");
X+ #endif
X+ 	/* Switch to IBM mode, and leave 3 inches above the plot so as
X+ 	   to get rough vertical centring on the page.  Perform the
X+ 	   centring by setting 1" line feeds and issuing 3 of them. */
X+ 	fprintf(outfile, "\033!\033%c%c\n\n\n", '3',216);
X+ 	eps60_dump();
X+ 	b_freebitmap();
X+ 	/* A form feed must be sent before switching back to Tandy mode,
X+ 	   or else the form setting will be messed up. */
X+ 	fprintf(outfile, "\f\033!");
X+ }
X+ 
X+ 
X+ #endif  /* TANDY60 */
XOnly in ./term: hpljet.trm
Xdiff -cr ./term/hpljii.trm ../gnuplot2.02/term/hpljii.trm
X*** ./term/hpljii.trm	Fri Nov 23 17:50:38 1990
X--- ../gnuplot2.02/term/hpljii.trm	Thu Dec  6 13:10:09 1990
X***************
X*** 0
X
X--- 1,235 -----
X+ /* GNUPLOT - hpljii.trm */
X+ /*
X+  * Copyright (C) 1990   
X+  *
X+  * Permission to use, copy, and distribute this software and its
X+  * documentation for any purpose with or without fee is hereby granted, 
X+  * provided that the above copyright notice appear in all copies and 
X+  * that both that copyright notice and this permission notice appear 
X+  * in supporting documentation.
X+  *
X+  * Permission to modify the software is granted, but not the right to
X+  * distribute the modified code.  Modifications are to be distributed 
X+  * as patches to released version.
X+  *  
X+  * This software  is provided "as is" without express or implied warranty.
X+  * 
X+  * This file is included by ../term.c.
X+  *
X+  * This terminal driver supports:
X+  *  hpljii_75dpi, hpljii_100dpi, hpljii_150dpi, hpljii_300dpi
X+  *
X+  * AUTHORS
X+  *  John Engels
X+  *  Russell Lang
X+  *
X+  * send your comments or suggestions to (pixar!info-gnuplot@sun.com).
X+  * 
X+  */
X+ 
X+ /* The following HP laserjet series II driver uses generic bit mapped graphics
X+    routines from bitmap.c to build up a bit map in memory.  The driver
X+    interchanges colomns and lines in order to access entire lines
X+    easily and returns the lines to get bits in the right order :
X+    (x,y) -> (y,XMAX-1-x). */
X+ /* This interchange is done by calling b_makebitmap() with reversed 
X+    xmax and ymax, and then setting b_rastermode to TRUE.  b_setpixel()
X+    will then perform the interchange before each pixel is plotted */
X+ /* by John Engels JENGELS@BNANDP51.BITNET, inspired by the hpljet driver
X+    of Jyrki Yli-Nokari */
X+ 
X+ #ifdef HPLJII
X+ 
X+ /* We define 4 different print qualities : 300ppi, 150ppi, 100ppi and
X+    75ppi.  (Pixel size = 1, 2, 3, 4 dots) */
X+ 
X+ #define HPLJII_DPP (hplj_dpp)   /* dots per pixel */
X+ #define HPLJII_PPI (300/HPLJII_DPP) /* pixel per inch */
X+ #define HPLJII_XMAX (8*(unsigned int)(xsize*1920/HPLJII_DPP/8.0+0.9))
X+ #define HPLJII_YMAX (8*(unsigned int)(ysize*1920/HPLJII_DPP/8.0+0.9))
X+ #define HPLJII_300PPI_XMAX (1920/1)
X+ #define HPLJII_300PPI_YMAX (1920/1)
X+ #define HPLJII_150PPI_XMAX (1920/2)
X+ #define HPLJII_150PPI_YMAX (1920/2)
X+ #define HPLJII_100PPI_XMAX (1920/3)
X+ #define HPLJII_100PPI_YMAX (1920/3)
X+ #define HPLJII_75PPI_XMAX (1920/4)
X+ #define HPLJII_75PPI_YMAX (1920/4)
X+ 
X+ #define HPLJII_XLAST (HPLJII_XMAX-1)
X+ #define HPLJII_YLAST (HPLJII_YMAX-1)
X+ 
X+ #define HPLJII_VCHAR (HPLJII_PPI/6) /* Courier font with 6 lines per inch */
X+ #define HPLJII_HCHAR (HPLJII_PPI/10) /* Courier font with 10 caracters
X+                                         per inch */
X+ #define HPLJII_300PPI_VCHAR (300/6)
X+ #define HPLJII_300PPI_HCHAR (300/10)
X+ #define HPLJII_150PPI_VCHAR (150/6)
X+ #define HPLJII_150PPI_HCHAR (150/10)
X+ #define HPLJII_100PPI_VCHAR (100/6)
X+ #define HPLJII_100PPI_HCHAR (100/10)
X+ #define HPLJII_75PPI_VCHAR (75/6)
X+ #define HPLJII_75PPI_HCHAR (75/10)
X+ 
X+ #define HPLJII_300PPI_VTIC 8 /* Use smaller tics with greater resolution */
X+ #define HPLJII_300PPI_HTIC 8
X+ #define HPLJII_150PPI_VTIC 6
X+ #define HPLJII_150PPI_HTIC 6
X+ #define HPLJII_100PPI_VTIC 6
X+ #define HPLJII_100PPI_HTIC 6
X+ #define HPLJII_75PPI_VTIC 5
X+ #define HPLJII_75PPI_HTIC 5
X+ 
X+ #define HPLJII_PUSH_CURSOR fprintf(outfile,"\033&f0S") /* Save current
X+                   cursor position */
X+ #define HPLJII_POP_CURSOR fprintf(outfile,"\033&f1S") /* Restore
X+                   cursor position */
X+ #define HPLJII_COURIER fprintf(outfile,"\033(0N\033(s0p10.0h12.0v0s0b3T\033&l6D")
X+          /* be sure to use courier font with 6lpi and 10cpi */
X+ 
X+ static int hplj_dpp;
X+ /* bm_pattern not appropriate for 300ppi graphics */
X+ static unsigned int b_300ppi_pattern[] = {0xffff, 0x1111,
X+         0xffff, 0x3333, 0x0f0f, 0x3f3f, 0x0fff, 0x00ff, 0x33ff};
X+ 
X+ HPLJIIinit()
X+ {
X+ #ifdef vms
X+    reopen_binary();
X+ #endif /* vms */
X+ #ifdef PC
X+    reopen_binary();
X+ #endif /* PC */
X+ }
X+ 
X+ HPLJII_300PPIgraphics()
X+ {
X+    hplj_dpp = 1;
X+    HPLJIIgraphics();
X+ }
X+ 
X+ HPLJII_150PPIgraphics()
X+ {
X+    hplj_dpp = 2;
X+    HPLJIIgraphics();
X+ }
X+ 
X+ HPLJII_100PPIgraphics()
X+ {
X+    hplj_dpp = 3;
X+    HPLJIIgraphics();
X+ }
X+ 
X+ HPLJII_75PPIgraphics()
X+ {
X+    hplj_dpp = 4;
X+    HPLJIIgraphics();
X+ }
X+ 
X+ HPLJIIgraphics()
X+ {
X+    HPLJII_COURIER;
X+    HPLJII_PUSH_CURSOR;
X+    /* rotate plot -90 degrees by reversing XMAX and YMAX and by 
X+       setting b_rastermode to TRUE */
X+    b_makebitmap(HPLJII_YMAX,HPLJII_XMAX,1);
X+    b_rastermode = TRUE;
X+ }
X+ 
X+ 
X+ /* HPLJIItext by rjl - no compression */
X+ HPLJIItext()
X+ {
X+   register int x,j,row;
X+ 
X+    fprintf(outfile,"\033*t%dR", HPLJII_PPI);
X+    HPLJII_POP_CURSOR;
X+    fprintf(outfile, "\033*r1A");
X+ 
X+    /* dump bitmap in raster mode */
X+    for (x = b_xsize-1; x >= 0; x--) {
X+       row = (b_ysize/8)-1;
X+       fprintf(outfile, "\033*b2m%dW", b_ysize/8);
X+       for (j = row; j >= 0; j--) {
X+          (void) fputc( (char)(*((*b_p)[j]+x)), outfile );
X+       }
X+    }
X+    fprintf(outfile, "\033*rB");
X+ 
X+    b_freebitmap();
X+ 
X+ #ifndef vms  /* most vms spoolers add a formfeed character */
X+    fprintf(outfile,"\f");
X+ #endif /* not vms */
X+ }
X+ 
X+ 
X+ 
X+ HPLJIIlinetype(linetype)
X+ int linetype;
X+ {
X+ 
X+    if (hplj_dpp == 1) {
X+       if (linetype>=7)
X+           linetype %= 7;
X+       /* b_pattern not appropriate for 300ppi graphics */
X+       b_linemask = b_300ppi_pattern[linetype+2];
X+       b_maskcount=0;
X+    }
X+    else {
X+       b_setlinetype(linetype);
X+    }
X+ }
X+ 
X+ #define HPLJIImove b_move
X+ #define HPLJIIvector b_vector
X+ #define HPLJIItext_angle b_text_angle
X+ 
X+ HPLJIIput_text(x,y,str)
X+ unsigned int x, y;
X+ char *str;
X+ {
X+    switch (b_angle) {
X+       case 0:
X+          y -= HPLJII_VCHAR/5;
X+          HPLJII_POP_CURSOR;
X+          HPLJII_PUSH_CURSOR;
X+          /* (0,0) is the upper left point of the paper */
X+          fprintf(outfile, "\033*p%+dx%+dY", x*HPLJII_DPP
X+                                          ,  (HPLJII_YMAX-y-1)*HPLJII_DPP );
X+          fputs(str, outfile);
X+ /*       for (; *str; ++str, x += HPLJII_HCHAR)
X+             HPLJIIputc (x, y, *str, b_angle);*/
X+          break;
X+       case 1:
X+          y += (HPLJII_HCHAR-2*HPLJII_VCHAR)/2;
X+          y += (HPLJII_VCHAR+HPLJII_HCHAR)*strlen(str)/2;
X+          for (; *str; ++str, y -= HPLJII_VCHAR)
X+             HPLJIIputc (x, y, *str, b_angle);
X+          break;
X+    }
X+ }
X+ 
X+ HPLJIIputc(x,y,c,angle)
X+ unsigned int x,y;
X+ int angle;
X+ char c;
X+ {
X+    HPLJII_POP_CURSOR;
X+    HPLJII_PUSH_CURSOR;
X+    /* (0,0) is the upper left point of the paper */
X+    fprintf(outfile, "\033*p%+dx%+dY", x*HPLJII_DPP
X+                                    ,  (HPLJII_YMAX-y-1)*HPLJII_DPP );
X+    fputc(c, outfile);
X+ }
X+ 
X+ 
X+ HPLJIIreset()
X+ {
X+ #ifdef vms
X+    fflush_binary();
X+ #endif /* vms */
X+ }
X+ 
X+ #endif /* HPLJII */
X+ 
Xdiff -cr ./term/kyo.trm ../gnuplot2.02/term/kyo.trm
X*** ./term/kyo.trm	Fri Nov 23 17:50:44 1990
X--- ../gnuplot2.02/term/kyo.trm	Mon Dec  3 17:17:07 1990
X***************
X*** 0
X
X--- 1,107 -----
X+ /* Prescribe (KYOCERA) driver - Michael Waldor */
X+ /* Modified for gnuplot 2.0 sk@sun4 24-Apr-1990 13:23 */
X+ #ifdef PRESCRIBE
X+ 
X+ #define PRE_XMAX 2567
X+ #define PRE_YMAX 1815	/* X:Y = sqrt(2) */
X+ 
X+ #define PRE_XLAST (PRE_XMAX - 1)
X+ #define PRE_YLAST (PRE_YMAX - 1)
X+ 
X+ #define PRE_VCHAR (PRE_YMAX/30)
X+ #define PRE_HCHAR 33	/* about 9 chars per inch */
X+ #define PRE_HTIC (PRE_XMAX/80)
X+ #define PRE_VTIC PRE_HTIC
X+ 
X+ /* for Courier font: */
X+ #define KYO_VCHAR (14*(300/72))	/* 12 pt + 2 pt baselineskip */
X+ #define KYO_HCHAR (300/10)	/*  10 chars per inch */
X+ 
X+ enum JUSTIFY pre_justify=LEFT;	/* text is flush left */
X+ 
X+ PRE_init()
X+ {
X+   (void) fprintf(outfile,"!R! RES;\n") ;
X+   /* UNIT: units are dots, 300 dots = 1 in = 72 pt */
X+   /* SPO: landscape format */
X+   /* STM, SLM set top, left margin*/
X+   /* Font: bold Helvetica (proportional font) */
X+   (void) fprintf(outfile,"PAGE; UNIT D; SPO L; STM 280; SLM 440;\n") ;
X+   (void) fprintf(outfile,"FTMD 15; FONT 29; SCPI 9;\n") ;
X+ }
X+ 
X+ KYO_init()
X+ {
X+   (void) fprintf(outfile,"!R! RES;\n") ;
X+   /* UNIT: units are dots, 300 dots = 1 in = 72 pt */
X+   /* SPO: landscape format */
X+   /* STM, SLM set top, left margin */
X+   /* Font: Courier (fixed width font) */
X+   (void) fprintf(outfile,"PAGE; UNIT D; SPO L; STM 280; SLM 440;\n") ;
X+   (void) fprintf(outfile,"FTMD 15; FONT 17; SCPI 10;\n") ;
X+ }
X+ 
X+ PRE_graphics()
X+ {
X+ }
X+ 
X+ PRE_text()			/* eject page after each plot */
X+ {
X+   (void) fprintf(outfile,"PAGE;\n") ; 
X+ }
X+ 
X+ PRE_linetype(linetype)
X+ int linetype ;
X+ {
X+   /* actually choose pendiameter */
X+   if (linetype < 0) linetype = -linetype;
X+   else linetype = 3;
X+   (void) fprintf(outfile,"SPD %d;\n", linetype) ;
X+ }
X+  
X+ PRE_move(x,y)
X+ unsigned int x,y ;
X+ {
X+   (void) fprintf(outfile,"MAP %1d,%1d;\n",x,PRE_YMAX-y) ;
X+ }
X+  
X+ PRE_vector(x,y)
X+ unsigned int x,y ;
X+ {
X+   (void) fprintf(outfile,"DAP %1d, %1d;\n",x,PRE_YMAX-y) ;
X+ }
X+  
X+ PRE_put_text(x, y, str)
X+ unsigned int x,y ;
X+ char *str;
X+ {
X+   PRE_move(x,y);
X+   switch(pre_justify){
X+   case RIGHT:
X+     (void) fprintf(outfile,"RTXT \"%s\", B;\n",str) ;
X+     break;
X+   default:
X+     (void) fprintf(outfile,"TEXT \"%s\", B;\n",str) ;
X+   }
X+ }
X+  
X+ int PRE_justify_text(mode)
X+ enum JUSTIFY mode;
X+ {
X+   pre_justify=mode;
X+   switch(pre_justify){
X+   case LEFT:
X+   case RIGHT:
X+     return(TRUE);
X+   default:
X+     return(FALSE);
X+   }
X+   
X+ }
X+ 
X+ PRE_reset()
X+ {
X+   (void) fprintf(outfile,"PAGE; RES; EXIT;\n");
X+ }
X+ 
X+ #endif /* PRESCRIBE */
Xdiff -cr ./term/pc.trm ../gnuplot2.02/term/pc.trm
X*** ./term/pc.trm	Tue Sep 18 14:59:12 1990
X--- ../gnuplot2.02/term/pc.trm	Thu Dec  6 16:08:17 1990
X***************
X*** 61,68
X  int startx, starty;
X  
X  int pc_angle;
X! #define PC_VCHAR 11
X! #define PC_HCHAR 7
X  
X  pause()								/* press any key to continue... */
X  {
X
X--- 61,68 -----
X  int startx, starty;
X  
X  int pc_angle;
X! #define PC_VCHAR FNT5X9_VCHAR
X! #define PC_HCHAR FNT5X9_HCHAR
X  
X  pause()								/* press any key to continue... */
X  {
X***************
X*** 105,113
X  int i,j,k;
X  unsigned int pixelon;
X  	i = (int)(c) - 32;
X! 	for (j=0; j<9; j++) {
X! 		for (k=0; k<5; k++) {
X! 			pixelon = (((unsigned int)(font5x7[i][j])) >> k & 1);
X  			if (pixelon) {
X  				switch(angle) {
X  					case 0 : (*line_func)(x+k+1,y-j,x+k+1,y-j);
X
X--- 105,113 -----
X  int i,j,k;
X  unsigned int pixelon;
X  	i = (int)(c) - 32;
X! 	for (j=0; j<FNT5X9_VBITS; j++) {
X! 		for (k=0; k<FNT5X9_HBITS; k++) {
X! 			pixelon = (((unsigned int)(fnt5x9[i][j])) >> k & 1);
X  			if (pixelon) {
X  				switch(angle) {
X  					case 0 : (*line_func)(x+k+1,y-j,x+k+1,y-j);
Xdiff -cr ./term/tek.trm ../gnuplot2.02/term/tek.trm
X*** ./term/tek.trm	Tue Mar 27 09:03:10 1990
X--- ../gnuplot2.02/term/tek.trm	Mon Nov 12 12:23:24 1990
X***************
X*** 55,60
X  
X  TEK40graphics()
X  {
X  	fprintf(outfile,"\033\014");
X  /*                   1
X  	1. clear screen
X
X--- 55,63 -----
X  
X  TEK40graphics()
X  {
X+ #ifdef vms
X+ 	term_pasthru();
X+ #endif /* vms */
X  	fprintf(outfile,"\033\014");
X  /*                   1
X  	1. clear screen
X***************
X*** 72,77
X  /*                   1
X  	1. into alphanumerics
X  */
X  }
X  
X  
X
X--- 75,83 -----
X  /*                   1
X  	1. into alphanumerics
X  */
X+ #ifdef vms
X+ 	term_nopasthru();
X+ #endif /* vms */
X  }
X  
X  
X***************
X*** 177,182
X  
X  KTEK40graphics()
X  {
X  	fprintf(outfile,"\033\014");
X  /*                   1
X  	1. clear screen
X
X--- 183,192 -----
X  
X  KTEK40graphics()
X  {
X+ #ifdef vms
X+         term_mode_tek();
X+ 	term_pasthru();
X+ #endif /* vms */
X  	fprintf(outfile,"\033\014");
X  /*                   1
X  	1. clear screen
X***************
X*** 188,193
X  {
X  	TEK40text();
X  	KTEK40Clinetype(0);  /* change to green */
X  }
X  
X  /* special color linetypes for MS-DOS Kermit v2.31 tektronix emulator */
X
X--- 198,206 -----
X  {
X  	TEK40text();
X  	KTEK40Clinetype(0);  /* change to green */
X+ #ifdef vms
X+ 	term_nopasthru();
X+ #endif /* vms */
X  }
X  
X  /* special color linetypes for MS-DOS Kermit v2.31 tektronix emulator */
X***************
X*** 225,230
X  KTEK40reset()
X  {
X  	fprintf(outfile,"\030\n");  /* turn off Tek emulation */
X  }
X  
X  #endif /* KERMIT */
X
X--- 238,246 -----
X  KTEK40reset()
X  {
X  	fprintf(outfile,"\030\n");  /* turn off Tek emulation */
X+ #ifdef vms
X+ 	term_mode_native();
X+ #endif /* vms */
X  }
X  
X  #endif /* KERMIT */
X***************
X*** 276,278
X  }
X  #endif /* SELANAR */
X  
X
X--- 292,345 -----
X  }
X  #endif /* SELANAR */
X  
X+ #ifdef VTTEK
X+ 
X+ VTTEK40init()
X+ {
X+         fprintf(outfile,"\033[?38h");
X+         fflush(outfile);
X+         sleep(1);
X+         /* sleep 1 second to allow screen time to clear on some terminals */
X+ #ifdef vms
X+         term_mode_tek();
X+ #endif /* vms */
X+ }
X+ 
X+ VTTEK40reset()
X+ {
X+         fprintf(outfile,"\033[?38l");
X+         fflush(outfile);
X+         sleep(1);
X+         /* sleep 1 second to allow screen time to clear on some terminals */
X+ #ifdef vms
X+         term_mode_native();
X+ #endif /* vms */
X+ }
X+ 
X+ /* linetypes for VT-type terminals in tektronix emulator mode */
X+ /* `=solid, a=fine dots, b=short dashes, c=dash dot,
X+    d=long dash dot, h=bold solid, i=bold fine dots, j=bold short dashes,
X+    k=bold dash dot, l=bold long dash dot */
X+ static char *vt_linetype = "`a`abcdhijkl" ;
X+ static int last_vt_linetype = 0;
X+ VTTEK40linetype(linetype)
X+ int linetype;
X+ {
X+         if (linetype >= 10)
X+                 linetype %= 10;
X+         fprintf(outfile,"\033%c",vt_linetype[linetype+2]);
X+         last_vt_linetype = linetype;
X+ }
X+ 
X+ VTTEK40put_text(x,y,str)
X+ unsigned int x,y;
X+ char str[];
X+ {
X+         int linetype;
X+         linetype = last_vt_linetype;
X+         VTTEK40linetype(0);
X+         TEK40put_text(x,y,str);
X+         VTTEK40linetype(linetype);
X+ }
X+ 
X+ #endif /* VTTEK */
END_OF_patch2f
if test 59778 -ne `wc -c <patch2f`; then
    echo shar: \"patch2f\" unpacked with wrong size!
fi
# end of overwriting check
fi
echo shar: End of shell archive.
exit 0

exit 0 # Just in case...
-- 
Kent Landfield                   INTERNET: kent@sparky.IMD.Sterling.COM
Sterling Software, IMD           UUCP:     uunet!sparky!kent
Phone:    (402) 291-8300         FAX:      (402) 291-4362
Please send comp.sources.misc-related mail to kent@uunet.uu.net.