HTBasic Help
×
Menu
Index

PLOTTER IS

Specifies the graphics output device and language.
 
 PLOTTER IS destination, language [,hard-clip] [; { APPEND|COLOR MAP } ]
 
Where:
destination = file-specifier | device-selector
language = string expression which resolves to the name of a graphics driver and can include driver options
hard-clip = xmin,xmax,ymin,ymax - four numeric-expressions specifying the size of the drawing surface
 
 Usage:                
PLOTTER IS CRT,"INTERNAL";COLOR MAP
PLOTTER IS 10,"HPGL",2,268,0,190
PLOTTER IS 26,"PS",2,268,0,190
PLOTTER IS "Pictfile","HPGL",5.75,250.50,7.25,136.875
PLOTTER IS CRT,"INTERNAL"
 
Example:           PLOTTER IS.BAS
 
Description:
PLOTTER IS directs vector graphics to a device or file. (Use the DUMP DEVICE IS statement to print bit-mapped graphics from the screen to a device or file.) The default PLOTTER IS device is the CRT. Executing a PLOTTER IS statement directs all subsequent graphics output to the specified target.
 
The destination of the PLOTTER IS statement tells the graphic driver where to send output. Output can go to the display, device or file, although not every driver can send output to all the targets. For example, display drivers can only send output to the display and it doesn't make sense to send GIF output to anything but a file.
 

Display

To direct output to the CRT, use the reserved word CRT as the destination or the interface select codes 1, 3 or 6. For most display drivers, the value affects how the driver handles text as explained below.
 

Devices

To specify a device such as a plotter or a printer capable of vector graphics, use the interface select code of the interface connecting the device. Use the device-selector if the device is on the IEEE-488 bus. If hard-clip limits are specified, they are given in the order "xmin, xmax, ymin, ymax" and are specified in millimeters. If the hard-clip limits are not specified, they are read from the device when this statement is executed. The specified device must respond to this query or the computer will wait indefinitely for the response. Use the CLR-I/O key to stop the computer if it gets stuck in this state.
 
The following example sends HPGL commands to a LaserJet III printer. The first line resets the printer, starts landscape printing and switches into HPGL mode. The second line directs plotter output to LPT1 and sets the hard-clip units for an 8-1/2 x 11 sheet of paper:
 
OUTPUT 26;CHR$(27)&"E"&CHR$(27)&"&l1O"&CHR$(27)&"%1B";
PLOTTER IS 26,"HPGL",2,268,0,190
 

Files

To send graphics output to a file, the target should be replaced with the file name. The file must be an existing ordinary or BDAT file. The hard-clip limits may be specified or defaulted to ±392.75 mm in the x axis and ±251.5 mm in the y axis. The hard-clip limits are "xmin, xmax, ymin, ymax" and are specified in millimeters. If APPEND is not specified, the file is positioned to the beginning and truncated. The file is closed when another PLOTTER IS, GINIT or SCRATCH A statement is executed. Example:
 
CREATE "DRAW.PLT",0
PLOTTER IS "DRAW.PLT","HPGL"
 

Language

HTBasic supports loadable graphics drivers. The language string expression specifies the name of a driver. The first time a driver is specified in a PLOTTER IS statement, the driver is loaded and graphics are directed to it. When the plotting language is subsequently specified, the driver is not loaded again, but graphics are again directed to it. The following table lists the drivers available at the time of this manual printing. (Not all drivers are available in all versions.)
 
Name
Type
Display Adapter
INTERNAL
CRT
Reuse last CRT driver specified
WIN
CRT
Windows Display Driver
HPGL
Graphic
Hewlett-Packard Graphic Language
PS
Graphic
PostScript printers, plotters, and files
 
"INTERNAL" is a special language string synonymous with the last CRT specified. The following examples illustrate use of the PLOTTER IS statement in selecting device drivers:
 
PLOTTER IS CRT,"INTERNAL"
PLOTTER IS 712,"HPGL"
PLOTTER IS "file.ps";"PS"
 
HTBasic automatically loads the WIN display driver when it starts. It is recommended that PLOTTER IS statements be included in your AUTOST file to load any necessary drivers. (Drivers can also be loaded in immediate mode when the BASIC RUNLIGHT is Idle.)
 

Driver Options

It is sometimes necessary to specify options for the graphic drivers. Options are included by appending a semicolon to the driver name, followed by the options. The syntax for specifying options in the PLOTTER IS statement is:
 
PLOTTER IS target,"driver[;options]"
 
The specific driver sections contain more details on these options.
 

WIN Driver

The WIN driver is a CRT driver that uses the Microsoft Windows display drivers.
 
For compatibility with HP BASIC/UX, options for the WIN driver are specified on the command line. Command line switches were explained in Chapter 1. These command line switches are passed to the WIN driver:  
     
Switch
Effect
-colors
Number of Colors to Use
-fn
Use named font
-geometry
Specify initial size of HTBasic window
-title
Specify the window title
 

Window Resize

Resizing the HTBasic window using the mouse is supported, but has the following effects. If the number of text columns changes, any text present is discarded. If in edit mode, the screen is redrawn using the new size.
 
Any graphics present in the window are discarded. The current pen position is left undefined. The VIEWPORT, WINDOW and hard clip limits are unchanged, although GESCAPECRT,3 returns the new window size. Use the GINIT statement to set the VIEWPORT, WINDOW and hard clip limits to the new window size. Or use the
 
PLOTTER IS CRT,"INTERNAL"
 
statement to activate use of the new hard clip limits without the side effects of GINIT.
 

HPGL Driver

The HPGL plotter driver generates HP-GL language plots from HTBasic plotting commands. The driver supports most variations of HP-GL, including HP-GL/2 and the printer form of HP-GL/2 included in PCL-5. The HPGL2 plotter driver is loaded with a line like
 
PLOTTER IS device,"HPGL[;options]",[p1x,p2x,p1y,p2y]
or
PLOTTER IS "file","HPGL[;options]",[p1x,p2x,p1y,p2y]
 
In the above, device refers to an HTBasic device number. File refers to a file in the computer's file system. The file must already exist when the PLOTTER IS statement is executed.
 

Plotting Area

The points (p1x,p1y) and (p2x,p2y) determine the lower left and the upper right corners of a rectangular area the driver will plot to. These points are specified in mm from the lower left corner of the paper. P2x and p2y must be larger than p1x and p1y, respectively. All of these coordinates must be positive or zero if the PCL5 option is used (see Options, below). If the plotting area is omitted, the driver reads the plot area from the plotter, if it is connected to a serial or IEEE-488 port. If output is directed to a file, the driver uses the default values from the table below.
 
PCL5 Option
Orientation
(P1x,P1y)
(P2x,P2y)
No
Landscape
(-393, -252)
(393, 252)
No
Portrait
(-252, -393)
(252, 393)
Yes
Landscape
(0,0)
(254, 184)
Yes
Portrait
(0,0)
(184, 254)
 

Options

The options are listed after the semicolon in the driver name, within the quotes. If more than one option is specified, the option names are separated by commas. When no options are specified, the HPGL2 driver produces the same output as the HPGL driver. A table in the Getting Started Guide may help in choosing from the options.  The options are as follows:
 
COLOR. This option tells the driver that the device used for plotting is a color printer with plotter functions, such as the Hewlett-Packard DeskJet 1600C. This option is ignored unless the PCL5 option is also specified.
 
FILL. This option tells the driver that the plotter being used can do area filling. Area filling produced by the plotter is generally much faster than that produced by the driver.
 
GRAY. This option causes the driver to produce grayscale plots when used with a printer. Each color that normally would be plotted is changed to a brightness using the method explained in the Pen Colors section, below, before plotting. Note that the brightness level is inverted unless the INVERT option is also used. The GRAY option need not be specified; it is the default. This option is ignored unless the PCL5 option is also used.
 
HPGL2. By default, the driver produces plots for an HP-GL plotter. This option allows the driver to produce plots for an HP-GL/2 plotter, such as the Hewlett-Packard DraftMaster. Since HP-GL/2 plotters can all do area filling, the HPGL2 option turns on the FILL option.
 
INVERT. By default, the driver reverses black and white on color plots and reverses all gray levels on grayscale plots when the plots are made on a printer. This is suitable for printers that use dark inks on white paper, but is the opposite of the colors normally shown on the computer screen. The INVERT option causes colors or gray levels to be represented as they are on the computer screen. This option is ignored unless the PCL5 option is also used.
 
PCL5. This option tells the driver that the plotter is a laser or electrostatic printer with built-in plotter emulation using the PCL-5 language. This causes the driver to send escape sequences at the beginning and end of plots to enable and disable the plotter emulation. When this option is used, a PLOTTER IS
CRT,"INTERNAL" statement should be executed at the end of plotting to make the printer eject the page containing the plot. Since all PCL-5 devices use the HP-GL/2 plotter language, this option turns on the HPGL2 and FILL options.
 
PORTRAIT. The PORTRAIT option causes the driver to produce plots in portrait orientation, that is, with the long edge of the paper vertical. Without this option, the driver produces plots in landscape orientation, with the long edge of the paper horizontal.
 

Polygons

The HPGL driver, for compatibility with HP BASIC, outputs polygon fills as separate lines. However, the driver can be instructed to output HPGL/2 polygon fill commands. This is useful if the plotter supports the polygon fill command or if an HPGL file is produced for import into another program that supports polygons. To enable polygon mode, use GESCAPE code 104, operation number 1:
 
10  INTEGER Param(1)
20  Param(0)=1    ! HPGL Operation Number 1 is HPGL/2 Flag
30  Param(1)=1    ! Set HPGL/2 Flag to 1=enable, 0=disable
40  GESCAPE Isc,104,Param(*)
 
If output is to a device, substitute the device ISC for Isc in line 40. If output is to a file, substitute 1 for Isc.
 

Pen Colors

When the HPGL2 driver is used with a pen plotter, the HTBasic PEN command selects the indicated pen on the plotter. However, when the driver is used with a printer (as indicated by the PCL5 option), the effect of the PEN command is that described in the following text.
 
The colors or grayscales produced by each pen depend on the states of the COLOR and INVERT options used in loading the driver, as well as the state of the COLOR MAP option of the HTBasic CRT driver. If the COLOR MAP option is off, the following gray levels or colors are used:    
                   
PEN
GRAY
COLOR
GRAY INVERT
COLOR INVERT
0
white
white
black
black
1
black
black
white
white
2
30% black
red
70% black
red
3
89% black
yellow
21% black
yellow
4
59% black
green
41% black
green
5
70% black
cyan
30% black
cyan
6
11% black
blue
89% black
blue
7
40% black
violet
60% black
violet
8
black
black
white
white
9
30% black
red
70% black
red
10
89% black
yellow
21% black
yellow
11
59% black
green
41% black
green
12
70% black
cyan
30% black
cyan
13
11% black
blue
89% black
blue
14
40% black
violet
60% black
violet
15
black
black
white
white
 
If the COLOR MAP option of the CRT driver is on, the plot is made using the colors in the HTBasic color map if the COLOR option is used. If the INVERT option is not used, black and white are reversed. If the COLOR option is not used, the colors in the HTBasic color map are converted to shades of gray using the NTSC equation:
 
brightness = 11% blue + 59% green + 30% red
 
If the INVERT option is not used, the brightness is inverted before plotting is done. With both pen plotters and printers, the sign of the pen is ignored; the absolute value determines the pen used.
 

Drawing Mode

When the PCL5 option is specified, the HTBasic statement GESCAPECRT,5 sets alternate drawing mode for the driver. Normally, the driver replaces anything previously at a location with what is currently drawn. In the alternate drawing mode, the previous black or colored areas show through the white areas of the new plot. The HTBasic statement GESCAPECRT,4 returns the driver to normal drawing mode.
 

Line Thickness

If the PCL5 option is specified, line thicknesses can be set in the driver. Lines default to 0.35 mm thick. The line thickness for all pens can be changed by the GESCAPECRT,104 statement as in either of the examples below:
 
INTEGER Param(1:2)         ! an array for the command
Param(1) = 10              ! line thickness code
Param(2) = thickness       ! desired thickness (in 1/100 GDU's)
GESCAPE CRT,104,Param(*)   ! send thickness
 
INTEGER Param(1:2)         ! an array for the command
Param(1) = 11              ! line thickness code
Param(2) = thickness       ! desired thickness (in 1/100 mm)
GESCAPE CRT,104,Param(*)   ! send thickness
 

Line Caps and Joins

When the PCL5 option is specified, line cap and join styles can be specified. By default, the device driver uses round caps to end lines and round joins to connect lines, which simulates the round pens used on pen plotters. This can be changed with the following statements.
 
INTEGER Param(1:3)        ! an array for the command
Param(1) = 12             ! line thickness code
Param(2) = cap            ! desired line cap
Param(3) = join           ! desired line join
GESCAPE CRT,104,Param(*)  ! set cap and join
 
The values for cap and join can be selected from the following tables.        
Cap
Meaning
Join
Meaning
1
butt cap
1
mitered join
2
square cap
2
mitered, beveled if too long
3
triangular cap
3
triangular join
4
round cap
4
round join
 
 
5
beveled join
 
 
6
no join
 
Note that many low-resolution PCL-5 devices use a butt cap and no join with lines less than 0.35 mm thick, regardless of the cap and join settings.
 

Crosshatching

The HPGL driver can crosshatch areas meant to be filled. This is its default behavior unless the FILL or PCL5 option is specified, in which case the default is to use solid fills.
 
If the FILL or PCL5 options are specified, the driver can be made to crosshatch filled areas with the following statements:
 
INTEGER Param(1:2)         ! an array for the command
Param(1) = 1               ! set fill type
Param(2) = state           ! turn solid filling on or off
GESCAPE CRT,104,Param(*)   ! send command
 
State is 0 to use crosshatching and any other value to use solid filling. For compatibility with older drivers, if state is nonzero, this command turns on the FILL option if neither the FILL nor the PCL5 option was specified when the driver was loaded.
 
When crosshatching is turned on, the following sets of statements can be used to control the crosshatch parameters. If these statements are not executed, crosshatching is done with solid horizontal lines spaced 0.01 in. (0.25 mm) apart, which is useful on most devices for producing a solid fill.
 
INTEGER Param(1:2)          ! an array for the command
Param(1) = 2                ! set crosshatch type
Param(2) = type
GESCAPE CRT,104,Param(*)    ! send command
 
Type is 1 for single hatching, 2 for crosshatching.
INTEGER Param(1:2)          ! an array for the command
Param(1) = 3                ! set hatch angle
Param(2) = angle            ! desired angle, degrees
GESCAPE CRT,104,Param(*)    ! send command
 
Angle is the angle in degrees (regardless of the HTBasic RAD or DEG setting) for hatching. Angle is rounded to the nearest multiple of 45 degrees.
INTEGER Param(1:2)           ! an array for the command
Param(1) = 4                 ! set line spacing
Param(2) = spacing           ! desired spacing (in 1/100 GDU's)
GESCAPE CRT,104,Param(*)     ! send command
 
INTEGER Param(1:2)           ! an array for the command
Param(1) = 5                 ! set line spacing
Param(2) = spacing           ! desired spacing (in 1/100 mm)
GESCAPE CRT,104,Param(*)     ! send command
 
The above commands are equivalent except that in the first command, spacing is expressed in 1/100 GDU and in the second in 1/100 mm.
INTEGER Param(1:3)           ! an array for the command
Param(1) = 6                 ! set line type for hatching
Param(2) = type              ! desired line type for crosshatching
Param(3) = size              ! desired pattern repetition size
GESCAPE CRT,104,Param(*)     ! send command
 
Type is the type of line, as listed in the LINE TYPE section of the HTBasic Reference Manual. Size is the pattern repetition length in 1/100 GDU's. This would be 100 times the pattern repetition length specified in a LINE TYPE statement.
 

Pages

The GCLEAR statement causes subsequent plotting to be done on a new page. If the PCL5 option is specified, the GCLEAR statement causes the printer to eject the old plot. Also, opening a file with
 
PLOTTER IS "file","HPGL";APPEND
 
causes the driver to append new pages of plot information to the current file if it exists already. Note that most word processor programs and other programs that can import files will probably superimpose the plots imported from a file containing more than one plot.
 

Ending Plots

If the PCL5 option is used, the HPGL2 driver will not eject a plot until a GCLEAR statement is executed, HTBasic is ended, or when the PLOTTER IS device is set to a different device. It is recommended that a statement like
 
PLOTTER IS CRT,"INTERNAL"
 
be placed at the end of each program section that produces a plot using the PCL5 option driver.
 

PostScript Driver

The PostScript graphics output driver generates PostScript-language files from HTBasic plotting commands. These files are suitable for printing on PostScript-language printers and photographic equipment and for importing into documents using the PostScript file format. The PostScript graphics output driver is loaded with the following statement:
 
PLOTTER IS destination,"PS[;options]",[p1x,p2x,p1y,p2y]
 
Destination refers to a device or file. If it is a file, the file must already exist when the PLOTTER IS statement is executed and it should be a regular file. Otherwise the HTBasic file header will appear as bad data at the start of the file.
 
The points (p1x,p1y) and (p2x,p2y) determine the lower left and the upper right corners of a rectangular area the driver will plot to. These points are specified in mm from the lower left corner of the paper. All of these coordinates must be positive or zero and p2x and p2y must be larger than p1x and p1y, respectively. If omitted, the driver uses (p1x,p1y) = (25.4 mm, 25.4 mm) and (p2x,p2y) = (262.7 mm, 190.5 mm) in landscape mode and (p2x,p2y) = (190.5 mm, 262.7 mm) in portrait mode, which produces a plot with adequate margins on US "A" or European A4 size paper. Note that most PostScript printers cannot print to the edges of the paper. Because of this, the points specified should include a small (about 1 cm) margin on each side when the driver is used with a printer.
 

Options

The options are listed after the semicolon in the driver name, within the quotes. If more than one option is specified, the option names are separated by commas. The options are as follows:
 
COLOR. This option causes the driver to produce color plots. Note that black and white are inverted from their values on the screen unless the INVERT option is also used. Color plots require a PostScript level 2 output device or a PostScript level 1 device with color language extensions.
 
GRAY. This option causes the driver to produce grayscale plots. Each color that normally would be plotted is changed to a brightness using the method explained in the Pen Colors section, below, before plotting. Note that the brightness level is inverted unless the INVERT option is also used. The GRAY option need not be specified; it is the default.
 
INVERT. By default, the driver reverses black and white on color plots and reverses all gray levels on grayscale plots. This is suitable for printers that use dark inks on white paper, but is the opposite of the colors normally shown on the computer screen. The INVERT option causes colors or gray levels to be represented as they are on the computer screen.
 
PORTRAIT. The PORTRAIT option causes the driver to produce plots in portrait orientation, that is, with the long edge of the paper vertical. Without this option, the driver produces plots in landscape orientation, with the long edge of the paper horizontal.
 

Pen Colors

The colors or grayscales produced by each pen depend on the states of the COLOR and INVERT options used in loading the driver, as well as the state of the COLOR MAP option of the HTBasic CRT driver. If the COLOR MAP option is off, the following gray levels or colors are used:      
                          
PEN
GRAY
COLOR
GRAY INVERT
COLOR INVERT
0
white
white
black
black
1
black
black
white
white
2
30% black
red
70% black
red
3
89% black
yellow
21% black
yellow
4
59% black
green
41% black
green
5
70% black
cyan
30% black
cyan
6
11% black
blue
89% black
blue
7
40% black
violet
60% black
violet
8
black
black
white
white
9
30% black
red
70% black
red
10
89% black
yellow
21% black
yellow
11
59% black
green
41% black
green
12
70% black
cyan
30% black        
cyan
13
11% black
blue
89% black
blue
14
40% black
violet
60% black
violet
15
black
black
white
white
 
If the COLOR MAP option of the CRT driver is on, the plot is made using the colors in the HTBasic color map if the COLOR option is used. If the INVERT option is not used, black and white are reversed. If the COLOR option is not used, the colors in the HTBasic color map are converted to shades of gray using the HTSC equation:
 
brightness = 11% blue + 59% green + 30% red
 
If the INVERT option is not used, the brightness is inverted before plotting is done. GESCAPE codes 4 and 5 are ignored as is the sign of the PEN. Graphics always overwrite existing graphics.
 

Line Thickness

Lines default to 0.35 mm thick. The line thickness can be changed by the GESCAPECRT,104 statement as in either of the examples below:
 
INTEGER Param(1:2)          ! an array for the command
Param(1) = 10               ! line thickness code
Param(2) = thickness        ! desired thickness (in 1/100 GDU's)
GESCAPE CRT,104,Param(*)    ! send thickness
 
INTEGER Param(1:2)          ! an array for the command
Param(1) = 11               ! line thickness code
Param(2) = thickness        ! desired thickness (in 1/100 mm)
GESCAPE CRT,104,Param(*)    ! send thickness
 

Line Caps and Joins

By default, the device driver uses round caps to end lines and round joins to end lines, which simulates the round pens used on pen plotters. This can be changed with the following statements.
 
INTEGER Param(1:3)          ! an array for the command
Param(1) = 12               ! set line cap and join
Param(2) = cap              ! desired line cap
Param(3) = join             ! desired line join
GESCAPE CRT,104,Param(*)    ! set cap and join
 
The values for cap and join can be selected from the following tables.              
                  
Cap
Meaning
Join
Meaning
1
butt cap
1,2
mitered join, beveled if too long
2
square cap
3,4
round join
3,4
round cap
5,6
beveled join
 

Crosshatching

By default, the PostScript plotter driver fills areas with shades of gray or color (if the COLOR option has been specified). The driver can be made to crosshatch filled areas with the following statements.
 
INTEGER Param(1:2)           ! an array for the command
Param(1) = 1                 ! set fill type
Param(2) = state             ! turn solid filling on or off
GESCAPE CRT,104,Param(*)     ! send command
 
State is 0 to use crosshatching and any other value to use solid filling.
 
When crosshatching is turned on, the following sets of statements can be used to control the crosshatch parameters. If these statements are not executed, crosshatching is done with solid horizontal lines spaced 0.01 in. (0.4 mm) apart.
 
INTEGER Param(1:2)           ! an array for the command
Param(1) = 2                 ! set crosshatch type
Param(2) = type
GESCAPE CRT,104,Param(*)     ! send command
 
Type is 1 for single hatching, 2 for crosshatching.
 
INTEGER Param(1:2)           ! an array for the command
Param(1) = 3                 ! set crosshatch angle
Param(2) = angle             ! desired angle, degrees
GESCAPE CRT,104,Param(*)     ! send command
 
Angle is the angle in degrees (regardless of the HTBasic RAD or DEG setting) for hatching. Angle is rounded to the nearest integer.
 
INTEGER Param(1:2)           ! an array for the command
Param(1) = 4                 ! set line spacing
Param(2) = spacing           ! desired spacing (in 1/100 GDU's)
GESCAPE CRT,104,Param(*)     ! send command
 
INTEGER Param(1:2)           ! an array for the command
Param(1) = 5                 ! set line spacing
Param(2) = spacing           ! desired spacing (in 1/100 mm)
GESCAPE CRT,104,Param(*)     ! send command
 
The above commands are equivalent except that in the first command, spacing is expressed in 1/100 GDU and in the second in 1/100 mm.
 
INTEGER Param(1:3)           ! an array for the command
Param(1) = 6                 ! set line type for hatching
Param(2) = type              ! desired line type
Param(3) = size              ! desired pattern repetition size
GESCAPE CRT,104,Param(*)     ! send command
 
Type is the type of line, as listed under the LINE TYPE topic in the HTBasic Reference Manual. Size is the pattern repetition length in 1/100 GDU's. This would be 100 times the pattern repetition length specified in a LINE TYPE command.
 

Pages

The GCLEAR statement causes subsequent plotting to be done on a new page. The driver inserts a PostScript "%%Page" comment at the beginning of each page. The comments are used by some print spooling software. Also, opening a file with
 
PLOTTER IS "file","PS";APPEND
 
causes the driver to append new pages of plot information to the current file if it exists already. Since the driver doesn't know how many pages are already in the file, it begins its "%%Page" comments with page 1. This may cause problems with some print spooling software.
 

Ending Plots

The PostScript language requires information at the end of a plot to cause the plot to be printed. This information is output when the GCLEAR statement is executed, HTBasic is exited, or when the PLOTTER IS device is set to a different device. It is recommended that a statement like
 
PLOTTER IS CRT,"INTERNAL"
 
be placed at the end of each program section that produces a plot using the PostScript driver.
 

Driver Loading

Up to ten graphic and dump drivers can be loaded at a time. It is recommended that for each driver needed, a PLOTTER IS statement is included in your AUTOST file to load it.
 
Driver files can be loaded at any point. To find the driver file HTBasic takes the driver specified in the PLOTTER IS statement and performs several operations upon it to find the correct file. ".DW6" is appended to the name. Then the following locations are searched, in the specified order:
 
1. The directory containing the HTBasic executable.
2. The current directory.
3. The Windows system directory (such as \WINNT\SYSTEM32).
4. The Windows directory.
5. The directories listed in the PATH environment variable.
 

Porting Issues

Both HP BASIC and HTBasic do an implicit PLOTTER IS assignment for you if you attempt to use graphic statements before an explicit PLOTTER IS. The difference is that HTBasic does the implicit PLOTTER IS as soon as HTBasic is started and HP BASIC waits until the first graphic statement is executed. The only known effect of the different approaches is that under HP BASIC, a SYSTEM$("PLOTTER IS") returns "0" until the first graphic statement is executed and HTBasic returns the correct value anytime.
 
HP BASIC supports only "INTERNAL" and "HPGL" graphic languages. HTBasic supports loadable graphic device drivers so it is not limited to these two choices. HTBasic also allows clip-limits to be specified when output is directed to a device, allowing use of plotters or printers that are incapable of returning p-points. Do not use HTBasic extensions if you wish to execute the same program with HP BASIC.
 
See Also: