HDS ViewStation System Administrator's Guide

A Hypertext Document


HDSperx HDSview Postscript Viewer Manual Page

This page describes the ViewStation's HDSview Postscript viewer client manual page.

HDSview Manual Page
This is the HDSview man page.

NAME
hdsview - View PostScript documents using hdsscript

SYNOPSIS
hdsview [filename] or hdsview [-staticgray] [-grayscale] [-staticcolor] [-pseudocolor] [-truecolor] [-directcolor] [-[no]install] [-[no]private] [-[no]center] [-[no]title] [-[no]date] [-[no]locator] [-[no]labels] [-resolution dpi] [-dpi dpi] [-xdpi dpi] [-ydpi dpi] [-[no]quiet] [-preload file] [-magstep n] [-portrait] [-landscape] [-upsidedown] [-seascape] [-letter] [-tabloid] [-ledger] [-legal] [-statement] [-executive] [-a3] [-a4] [-a5] [-b4] [-b5] [-folio] [-quarto] [-10x14] [-force] [-forceorientation] [-forcemedia] [-[no]swap] [-[no]openwindows] [-page label] [-toolkitoption ...] [filename]

DESCRIPTION
The hdsview program provides a Motif user interface for the hdsscript interpreter. Hdsview and hdsscript function as two cooperating programs. Hdsview creates the viewing window and hdsscript draws in it.

Don't be alarmed by the number of options. Generally, one invokes hdsview with just one parameter, the name of the file to be previewed. If the filename is ``-'', hdsview will read from ``stdin''. The options provide a way to set X resources from the command line for a single invocation of hdsview. For that reason, discussion of the options is delayed until after the X resources are discussed.

MAIN WINDOW
The main viewport is on the right side of the main window. There are scroll bars along the bottom and right edges of the viewport. To the left of the viewport is the table of contents. If the PostScript file has document structuring convention (DSC) comments, the table of contents will display the page labels (i.e. usually page numbers). At the top of the application is the menu bar, consisting of push buttons. Each push button brings up a pulldown menu. Over the table of contents there is one optional label that contains the locator. The locator shows the location of the cursor in the viewport. The location is expressed in the default user coordinate system. The locator is useful for measuring bounding boxes.

Within the main viewport the mouse cursor is a ``target'' when hdsscript is doing work. The cursor is a ``crosshair'' when hdsscript is idle. When moving to another page in a document, it is generally best to wait for hdsscript to become idle. Otherwise, the current hdsscript process must be killed and the overhead of reading the prologue is incurred again.

Clicking anywhere within the viewport will popup a zoom window. The window is centered about the location that was clicked. Clicking with the first mouse button pops up a low resolution zoom window. Clicking with the second mouse button pops up a medium resolution zoom window. Clicking with the third mouse button pops up a high resolution zoom window. The cursor in the zoom window will display a ``target'' or ``cross hair'' depending on the state of hdsscript. The locator reports the position of the cursor in the zoom windows as well as the main viewport.

In the table of contents, the first and third mouse button functions exactly as they do in a Text widget. That is the first mouse button selects text and the third mouse button extends selections. However, clicking on a page label with the second mouse button will cause that page to be shown. The page being displayed is marked with a `<` in the right margin of the table of contents.

POPUP WINDOWS
The are several additional windows that may appear. The copyright window will appear whenever copyright information is requested. The information window appears whenever the hdsscript process writes to ``stdout'' or ``stderr''. Whenever there is an error in the PostScript program, the stack trace will appear in this window. When hdsscript is invoked without the quiet option, informational message regarding the state of hdsscript will appear in the information window. The copyright and information windows can be dismissed by pushing the ``Dismiss'' button.

MENUS
There are six buttons on the menu bar. They are the File, Page, Magstep, Orientation, Media, and Help buttons. There are keyboard accelerators for most of the menu items. Be sure to read the keyboard accelerator section.

File
This popup menu controls file access:

Open...
Pops up a dialog widget to ask for the file name. The widget is in total control until it pops down. Opens the file for viewing.

Reopen
Reopens the current file.

Print...
Pops up a dialog widget to ask for the printer name. Sends the whole document to the printer.

Print marked pages...
Pops up a dialog widget to ask for the printer name. Sends the marked pages to the printer. If no pages have been marked, the mark procedure is called before printing and the unmark procedure is called after printing.

Save marked pages...
Pops up a dialog widget to ask for the file name. Saves the marked pages in the selected file. If no pages have been marked, the mark procedure is called before saving and the unmark procedure is called after saving.

Copyright...
Pops up the copyright window.

Quit
Causes hdsview to exit.

Page
This popup menu controls page access:

Next
Display the next page.

Redisplay
Display the current page.

Previous
Display the previous page.

Center
Center the page in the viewport.

Mark
Mark the pages that have been selected in the table of contents. If no pages have been selected, mark the current page.

Unmark
Unmark the pages that have been selected in the table of contents. If no pages have been selected, unmark the current page.

Magstep
The Magstep menu controls the magnification at which the document is viewed. The default magstep of 0 implies no magnification (i.e. the size on the screen should match the size on paper). Hdsview borrows the notion of magstep from TeX. The magnification is defined to be 1.2**magstep. At magstep 1, the document is magnified by 1.2. At magstep -1, the document is reduced by 1.2. The Magstep menu lists values from -5 to 5.

Orientation
The Orientation menu controls the display orientation. A ``diamond'' appears in front of the current orientation.

Portrait
Set the orientation to Portrait. This implies no rotation. A portrait orientation indicates that the longest edge of the paper is parallel to the vertical (y) axis.

Landscape
Set the orientation to Landscape. This implies a clockwise rotation of the paper by 90 degrees. A landscape orientation indicates that the longest edge of the paper is parallel to the horizontal (x) axis.

Upside-down
Set the orientation to Upside-Down.

Seascape
Set the orientation to Seascape. This implies a counterclockwise rotation of the paper by 90 degrees.

Swap Landscape
Swap the meaning of Landscape and Seascape, since some documents need to be rotated the other way. The swap landscape button allows hdsview to automatically rotate the document the right way in response to the %%Orientation comment in the PostScript file.

Media
The entries on the Media menu set the page media. Media defined in the document appear at the beginning of the menu separated by a line from the standard media. A ``diamond'' appears in front of the current media.

Here are the standard media names and their sizes. The size is given as the width and height in PostScript points.
Letter 612 x 792 (8.5 x 11 in.)
Tabloid 792 x 1224 (11 x 17 in.)
Ledger 1224 x 792 (17 x 11 in.)
Legal 612 x 1008 (8.5 x 14 in.)
Statement 396 x 612 (5.5 x 8.5 in.)
Executive 540 x 720 (7.5 x 10 in.)
A3 842 x 1190
A4 595 x 842
A5 420 x 595
B4 729 x 1032
B5 516 x 729
Folio 612 x 936 (8.5 x 13 in.)
Quarto 610 x 780
10x14 720 x 1008 (10 x 14 in.)

KEYBOARD ACCELERATORS

Most of the pulldown menu commands have an equivalent action that can be invoked from the keyboard. The pulldown menu entry must be sensitive (i.e. not grayed out) for the accelerator to have effect.

Here are the default keyboard accelerators:
Q -- Equivalent to pushing the Quit menu button on the File menu.
O -- Equivalent to pushing the Open... menu button on the File menu.
R -- Equivalent to pushing the Reopen menu button on the File menu.
S -- Equivalent to pushing the Save marked pages... menu button on the File menu.
P -- Equivalent to pushing the Print marked pages... menu button on the File menu.
Shift-P -- Equivalent to pushing the Print... menu button on the File menu.
BackSpace -- Equivalent to pushing the Previous menu button on the Page menu.
space -- Equivalent to pushing the Next menu button on the Page menu.
Ctrl-L -- Equivalent to pushing the Redisplay menu button on the Page menu.
M -- Equivalent to pushing the Mark menu button on the Page menu.
N -- Equivalent to pushing the Unmark menu button on the Page menu.
0 -- Equivalent to pushing the 0 menu button on the Magstep menu.
1 -- Equivalent to pushing the 1 menu button on the Magstep menu.
2 -- Equivalent to pushing the 2 menu button on the Magstep menu.
3 -- Equivalent to pushing the 3 menu button on the Magstep menu.
4 -- Equivalent to pushing the 4 menu button on the Magstep menu.
5 -- Equivalent to pushing the 5 menu button on the Magstep menu.

ACTIONS
Most of the pulldown menu commands have an equivalent action that can be used in a translation. The pulldown menu entry must be sensitive (i.e. not grayed out) for the action to have effect. Here is the list of actions:

hdsviewCopyright()
Equivalent to pushing the Copyright... menu button on the File menu.

hdsviewQuit()
Equivalent to pushing the Quit menu button on the File menu.

hdsviewOpen()
Equivalent to pushing the Open... menu button on the File menu.

hdsviewReopen()
Equivalent to pushing the Reopen menu button on the File menu.

hdsviewSave()
Equivalent to pushing the Save marked pages... menu button on the File menu.

hdsviewPrintWhole()
Equivalent to pushing the Print... menu button on the File menu.

hdsviewPrintMarked()
Equivalent to pushing the Print marked pages... menu button on the File menu.

hdsviewPrevious()
Equivalent to pushing the Previous menu button on the Page menu.

hdsviewShow()
Equivalent to pushing the Redisplay menu button on the Page menu.

hdsviewNext()
Equivalent to pushing the Next menu button on the Page menu.

hdsviewCenter()
Equivalent to pushing the Center menu button on the Page menu.

hdsviewMark()
Equivalent to pushing the Mark menu button on the Page menu.

hdsviewUnmark()
Equivalent to pushing the Unmark menu button on the Page menu.

hdsviewSetMagstep(magstep)
Sets the magstep. The parameter must be an integer.

hdsviewIncreaseMagstep()
Increases magstep by one.

hdsviewDecreaseMagstep()
Decreases magstep by one.

hdsviewSetOrientation(orientation)
Set the orientation to the passed parameter. The parameter must be portrait, landscape, upside-down, or seascape.

hdsviewSwapLandscape()
Equivalent to pushing the Swap Landscape menu button on the Orientation menu.

hdsviewSetPageMedia(media-name)
Sets the media. The parameter should be either a media defined in the document or a standard media.

hdsviewDefault()
The orientation or media being set is not forced on the document. This action is called before the action that sets the orientation or media.

hdsviewForce()
The orientation or media being set is forced on the document. This action is called before the action that sets the orientation or media.

hdsviewDeleteWindow()
Destroy the current window. This provides a way to implement the Delete Window protocol for window managers.

hdsviewDismiss()
Pop down the current window. This provides a way to implement the Delete Window protocol for window managers.

hdsviewScrollUp()
Scroll the main viewport up.

hdsviewScrollDown()
Scroll the main viewport down.

hdsviewScrollLeft()
Scroll the main viewport left.

hdsviewScrollRight()
Scroll the main viewport right.

hdsviewEraseLocator()
Used to erase the locator when leaving an hdsview widget.

hdsviewCheckFile()
Checks to see if the file changed and refreshes the screen if necessary.

KEYBOARD TRANSLATIONS
The pulldown menu entry must be sensitive (i.e. not grayed out) for the action to have effect. Here is the default keyboard binding:

+ -- Bound to hdsviewIncreaseMagstep() which increases the magstep by 1.
- -- Bound to hdsviewDecreaseMagstep() which decreases the magstep by 1.
G -- Bound to hdsviewLeft() which scrolls the main viewport left.
J -- Bound to hdsviewDown() which scrolls the main viewport down.
K -- Bound to hdsviewUp() which scrolls the main viewport up.
L -- Bound to hdsviewRight() which scrolls the main viewport right.
Up (arrow) -- Bound to hdsviewDefault()hdsviewSetOrientation(portrait) which is equivalent to pushing Portrait with the first mouse button on the Orientation menu.
Right (arrow) -- Bound to hdsviewDefault() hdsviewSetOrientation(landscape) which is equivalent to pushing Landscape with the first mouse button on the Orientation menu.
Down (arrow) -- Bound to hdsviewDefault() hdsviewSetOrientation(upside-down) which is equivalent to pushing Upside-down with the first mouse button on the Orientation menu.
Left (arrow) -- Bound to hdsviewDefault() hdsviewSetOrientation(seascape) which is equivalent to pushing Seascape with the first mouse button on the Orientation menu.
Shift-Up (arrow) -- Bound to hdsviewForce() hdsviewSetOrientation(portrait) which is equivalent to pushing Portrait with the second mouse button on the Orientation menu.
Shift-Right (arrow) -- Bound to hdsviewForce() hdsviewSetOrientation(landscape) which is equivalent to pushing Landscape with the second mouse button on the Orientation menu.
Shift-Down (arrow) -- Bound to hdsviewForce() hdsviewSetOrientation(upside-down) which is equivalent to pushing Upside-down with the second mouse button on the Orientation menu.
Shift-Left (arrow) -- Bound to hdsviewForce() hdsviewSetOrientation(seascape) which is equivalent to pushing Seascape with the second mouse button on the Orientation menu.

APPLICATION RESOURCES
The following application resources may be set to control the default behavior of hdsview.

showLocator (class Labels)
Tells whether to display the locator. The default is ``true''.

installStdCmap (class InstallStdCmap)
Tells whether to attempt to install a standard colormap. The default is ``false''.

privateCmap (class PrivateCmap)
Tells whether to use a standard colormap that is not the default colormap. The default is ``false''.

autoCenter (class AutoCenter)
Tells whether to center the page within the viewport whenever the page size changes. The default is ``true''.

horizonalMargin (class Margin)
Tells how many pixels hdsview should reserve for window decorations in the horizontal direction. The default value is ``20''.

verticalMargin (class Margin)
Tells how many pixels hdsview should reserve for window decorations in the ver tical direction. The default value is ``44''.

minimumMagstep (class Magstep)
Tells the smallest magstep to display. The default is ``-5''.

maximumMagstep (class Magstep)
Tells the largest magstep to display. The default is ``5''.

magstep (class Magstep)
Sets the default magstep. The default is ``0''.

orientation (class Orientation)
Sets the default orientation. The default is ``Portrait''.

page (class Page)
Gives the initial page to display. This resource only affects the display of the file listed on the command line. The default is NULL.

pageMedia (class PageMedia)
Sets the default page media. The default is ``Letter''.

forceOrientation (class Force)
Tells whether to force the orientation on the document. The default is ``false''.

forcePageMedia (class Force)
Tells whether to force the page media on the document. The default is ``false''.

swapLandscape (class SwapLandscape)
Tells whether to swap the meaning of Landscape and Seascape. The default is ``false''.

printCommand (class PrintCommand)
Sets the command used for printing. The printer environment variable is set to the desired printer and then this command is executed using popen. This command should read from ``stdin'' and send the file to the appropriate printer. The default value is ``lp''.

printerVariable (class PrinterVariable)
Gives the name of the printer environment variable. The default value is ``LPD EST''.

defaultPrinter (class DefaultPrinter)
Gives the printer name to use when the printer environment variable is not set. The default value is NULL.

printPrompt (class PrintPrompt)
Sets the prompt used to ask for the printer name. The default value is ``Printer Name: `'.

printFail (class printFail)
Sets the string used to inform the user that the printer command failed. The default is ``"lpr" command failed.''.

openPrompt (class OpenPrompt)
Sets the prompt used to ask for a file name to open. The default value is ``Open File: `'.

openFail (class OpenFail)
Sets the string used to inform the user that the open failed. The default value is ``Cannot open file: `'.

savePrompt (class SavePrompt)
Sets the prompt used to ask for a file name to save. The default value is ``Save File: `'.

saveFail (class SaveFail)
Sets the string used to inform the user that the save failed. The default value is ``Cannot save file: `'.

HDSVIEW WIDGET RESOURCES
Certain resources in the hdsview widget may be set by the user. These selected resources are presented below.

busyCursor (class Cursor)
The cursor shown when hdsscript is rendering to the window. The busy cursor is set to the ``target'' by the application defaults.

cursor (class Cursor)
The cursor shown when hdsscript is idle. The default cursor is the ``crosshair''.

interpreter (class Interpreter)
The name of the executable to call to render the PostScript. It is convenient to set this resource to the path of an alternate version of hdsscript for testing. The default value is ``hdsscript''.

preload (class Preload)
Files to load before the PostScript program. It is convenient to name files that preload fonts here for PostScript programs that continually reload fonts while rendering a page. The default is to not preload any files.

quiet (class Quiet)
Tells hdsscript whether to produce informational messages. The default value is ``false''.

useBackingPixmap (class UseBackingPixmap)
Tells whether to use a backing pixmap. If this resource is false, backing store is requested on the hdsview window. Some X servers have limited resources for large pixmaps. Also, some X servers' backing store is much faster than using a backing pixmap. You should reset this resource if your X server is one of the server types mentioned. The default value is ``true''.

xdpi (class Resolution)
Sets the X resolution of the window in dots per inch. You can use this resource to affect the main window. Zoom windows have their X dpi set explicitly in the program. The default value is calculated from the screen metrics.

ydpi (class Resolution)
Sets the Y resolution of the window in dots per inch. You can use this resource to affect the main window. Zoom windows have their Y dpi set explicitly in the program. The default value is calculated from the screen metrics.

HDSVIEW WIDGET ACTIONS

notify(width height xdpi ydpi)
The notify event is used by the hdsview application for the locator and popup zoom windows. If the width and height are 0, the event is used for the locator. Otherwise, it triggers a popup zoom window. The default width and height are 72. The default xdpi and ydpi are 300. The height will default to the width if the height is omitted. The ydpi will default to the xdpi if the ydpi is omitted.

OPTIONS

-staticgray
Equivalent to setting ``*Visual: StaticGray''.

-grayscale
Equivalent to setting ``*Visual: GrayScale''.

-staticcolor
Equivalent to setting ``*Visual: StaticColor''.

-pseudocolor
Equivalent to setting ``*Visual: PseudoColor''.

-truecolor
Equivalent to setting ``*Visual: TrueColor''.

-directcolor
Equivalent to setting ``*Visual: DirectColor''.

-install
Equivalent to setting ``HDSview.installStdCmap: True''.

-noinstall
Equivalent to setting ``HDSview.installStdCmap: False''.

-private
Equivalent to setting ``HDSview.privateCmap: True''.

-noprivate
Equivalent to setting ``HDSview.privateCmap: False''.

-center
Equivalent to setting ``HDSview.autoCenter: True''.

-nocenter
Equivalent to setting ``HDSview.autoCenter: False''.

-locator
Equivalent to setting ``HDSview.showLocator: True''.

-nolocator
Equivalent to setting ``HDSview.showLocator: False''.

-labels
Equivalent to setting ``HDSview.Labels: True''.

-nolabels
Equivalent to setting ``HDSview.Labels: False''.

-quiet
Equivalent to setting ``*hdsview.quiet: True''.

-noquiet
Equivalent to setting ``*hdsview.quiet: False''.

-preload file
Equivalent to setting ``*hdsview.preload: file''.

-xdpi dpi
Equivalent to setting ``*hdsview.xdpi: dpi''.

-ydpi dpi
Equivalent to setting ``*hdsview.ydpi: dpi''.

-resolution dpi
Equivalent to setting ``*hdsview.Resolution: dpi''.

-dpi dpi
Equivalent to setting ``*hdsview.Resolution: dpi''.

-magstep magstep
Equivalent to setting ``HDSview.magstep: magstep''.

-portrait
Equivalent to setting ``HDSview.orientation: Portrait''.

-landscape
Equivalent to setting ``HDSview.orientation: Landscape''.

-upsidedown
Equivalent to setting ``HDSview.orientation: Upside-down''.

-seascape
Equivalent to setting ``HDSview.orientation: Seascape''.

-forceorientation
Equivalent to setting ``HDSview.forceOrientation: True''.

-page label
Equivalent to setting ``HDSview.page: label''.

-letter
Equivalent to setting ``HDSview.pageMedia: Letter''.

-tabloid
Equivalent to setting ``HDSview.pageMedia: Tabloid''.

-ledger
Equivalent to setting ``HDSview.pageMedia: Ledger''.

-legal
Equivalent to setting ``HDSview.pageMedia: Legal''.

-statement
Equivalent to setting ``HDSview.pageMedia: Statement''.

-executive
Equivalent to setting ``HDSview.pageMedia: Executive''.

-a3
Equivalent to setting ``HDSview.pageMedia: A3''.

-a4
Equivalent to setting ``HDSview.pageMedia: A4''.

-a5
Equivalent to setting ``HDSview.pageMedia: A5''.

-b4
Equivalent to setting ``HDSview.pageMedia: B4''.

-b5
Equivalent to setting ``HDSview.pageMedia: B5''.

-folio
Equivalent to setting ``HDSview.pageMedia: Folio''.

-quarto
Equivalent to setting ``HDSview.pageMedia: Quarto''.

-10x14
Equivalent to setting ``HDSview.pageMedia: 10x14''.

-forcemedia
Equivalent to setting ``HDSview.forcePageMedia: True''.

-force
Equivalent to setting ``HDSview.Force: True''.

-swap
Equivalent to setting ``HDSview.swapLandscape: True''.

-noswap
Equivalent to setting ``HDSview.swapLandscape: False''.

-openwindows
Equivalent to setting ``HDSview.openWindows: True''.

-noopenwindows
Equivalent to setting ``HDSview.openWindows: False''.

-ncdwm
Equivalent to setting ``HDSview.ncdwm: True''.

-noncdwm
Equivalent to setting ``HDSview.ncdwm: False''.

WIDGET HIERARCHY

The hierarchy of the hdsview application:
HDSview hdsview
XmForm form
XmRowColumn menuBar
XmRowColumn fileButton
XmPushButton open
XmPushButton reopen
XmPushButton printwhole
XmPushButton printmarked
XmPushButton save
XmSeparator
XmPushButton copyright
XmPushButton quit
XmRowColumn pageButton
XmPushButton next
XmPushButton show
XmPushButton prev
XmSeparator
XmPushButton center
XmSeparator
XmPushButton mark
XmPushButton unmark
XmRowColumn magstepButton
XmToggleButton -5
XmToggleButton -4
XmToggleButton -3
XmToggleButton -2
XmToggleButton -1
XmToggleButton zero
XmToggleButton one
XmToggleButton two
XmToggleButton three
XmToggleButton four
XmToggleButton five
XmRowColumn orientationButton
XmToggleButton portrait
XmToggleButton landscape
XmToggleButton upsidedown
XmToggleButton seascape
XmSeparator
XmToggleButton swap
XmRowColumn pagemediaButton
XmToggleButton Letter
XmToggleButton Tabloid
XmToggleButton Ledger
XmToggleButton Legal
XmToggleButton Statement
XmToggleButton Executive
XmToggleButton A3
XmToggleButton A4
XmToggleButton A5
XmToggleButton B4
XmToggleButton B5
XmToggleButton Folio
XmToggleButton Quarto
XmToggleButton 10x14
XmRowColumn helpButton
XmPushButton generalhelp
XmPushButton filehelp
XmPushButton pagehelp
XmPushButton magstephelp
XmPushButton orienthelp
XmPushButton mediahelp
XmLabel locator
XmScrolledList toc
XmScrolledWindow pageview
Core clip
hdsview page
TopLevelShell viewzoom
XmForm form
hdsview page
XmPushButton dismiss
TopLevelShell information
XmForm form
XmText infotext
XmPushButton dismiss
XmMessageBox error
XmMessageBox copyright


ENVIRONMENT
LPDEST

The LPDEST environment variable gives the default printer destination.

LIMITATIONS
If the document does not begin with ``%!PS-Adobe-'', it does not claim conformance to the document structuring convention. When these documents are encountered, the functionality of hdsview is limited to giving you scroll bars and a next page capability. Because there is no table of contents, skipping around the document and marking pages is impossible.

If there is no table of contents for the document, the popup zoom window will always show the first page.

There is no visual indication of when an orientation or media is being ``forced''.

The NFS file access protocol must be used to view remote multiple page documents. There is no support for local printing. Remote printing works only when hdsview has been started by rshing from a remote host. Saving the document to a file is not supported. The zoomview window does not popup under the cursor as it should.

BUGS
Please report all bugs to Technical Support at HDS Network Systems, Inc. Bug reports can be e-mailed to support@hds.com. Be sure to include the hdsview version and the ViewStation server code release version in the bug report.

COPYRIGHT
Copyright (C) 1993 HDS Network Systems, Inc. Portions adapted from ghostview, copyright 1992, Timothy O. Theisen.

This program is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation; either version 2 of the License, or (at your option) any later version.

This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.

You should have received a copy of the GNU General Public License along with this program; if not, write to the Free Software Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.

AUTHOR
Michael S. Hartman, HDS Network Systems, Inc.

Return to Section Heading Page


Return to the Home Page

If you need more information than is available here, you can reach HDS via email at info@hds.com, or call us at 1.800.HDS.1551 in the USA, or at +610.277.8300 from outside the US. For questions or problems regarding the HDS WWW page, contact webmaster@hds.com.
© 1996 by HDS Network Systems Inc.