home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
Frozen Fish 1: Amiga
/
FrozenFish-Apr94.iso
/
bbs
/
alib
/
d3xx
/
d308
/
vlt.lha
/
Vlt
/
docs
/
vlt4p428.doc
< prev
next >
Wrap
Text File
|
1990-01-18
|
17KB
|
384 lines
+----------------------------------------------------------------------+
| |
| D I S C L A I M E R N O T I C E |
| |
| This document and/or portions of the material and data furnished |
| herewith, was developed under sponsorship of the U.S. Government. |
| Neither the U.S. nor the U.S.D.O.E., nor the Leland Stanford |
| Junior University, nor their employees, nor their respective con- |
| tractors, subcontractors, or their employees, makes any warranty, |
| express or implied, or assumes any liability or responsibility for |
| accuracy, completeness or usefulness of any information, appara- |
| tus, product or process disclosed, or represents that its use will |
| not infringe privately-owned rights. Mention of any product, its |
| manufacturer, or suppliers shall not, nor is it intended to, imply |
| approval, disapproval, or fitness for any particular use. The U.S. |
| and the University at all times retain the right to use and dis- |
| seminate same for any purpose whatsoever. |
| |
+----------------------------------------------------------------------+
SAS and SAS/GRAPH are trademarks of the SAS Institute.
Tektronix is a trademark of Tektronix, Inc.
VT100 is a trademark of Digital Equipment Corporation.
VLT 4.428 Additional Documentation
===================================
(C) Copyright 1989, 1990
by
W.G.J. Langeveld
Stanford Linear Accelerator Center
General
=======
The most prominent features of this release are in the Tektronix
emulation. The VT100 part only suffered minor changes. This means, that
VLTjr isn't very different from the previous version, 4.226.
VLT's Tektronix emulation was rewritten to a considerable degree. In
particular, it now supports almost all of the Tektronix 4105 escape
sequences, with some obvious extensions to Tektronix 4107. About the only
unsupported feature is the "dialog area" and all commands associated with
it. A few highlights of the supported feautures: area fills (panels)
including all 16 Tek-style textures and 125 dithering patterns; scaled and
rotated (90/180/270 degrees) fonts using new strokefont libraries; almost
full support of Tek-style "pixel operations" (bitmaps); and full support for
all this in the PostScript output.
Let's first discuss the minor changes in the VT100 part.
VT100 changes.
==============
The menu options "Program Mode On/Off" no longer have keyboard
abbreviations (they used to be right-Amiga "(" and ")"). This is because
under AmigaDOS 1.3 and before, right-Amiga ")" is interpreted by Intuition
as being identical to right-Amiga <tab> (used for the Edit/Send feature of
the review buffer). This turns out to be not an Intuition bug, but a
"documented misfeature". In order to avoid confusion, I decided that it was
better to leave the right-Amiga <tab> for Edit/Send.
A minor fix was made to the script command "REVIEW X". It now also
works after a search has been successfully completed using the menu.
A few things were fixed in the External Protocol (XPR) support.
XPR's are now opened after downcasing their names, so that there are no more
problems with entering XPR names with mixed case. A few esthetical changes
were made to the support of XPR options of type COMMAND and COMMPAR (these
were hitherto untested). Also, the auto-screen-to-back feature now works for
xprzmodem downloads. A few other little things were fixed that shouldn't
affect anything...
In the transition to the previous version (4.226) the Kermit code
acquired a bug involving the status window. This caused random crashes when
certain things happened during Kermit transfers. This problem is now fixed.
Also, the status windows for Kermit and XMODEM now display the correct
protocol name in all (?) cases. The Kermit Bye command turns out to have
been broken all along. It used to increment the current "packet number" and
use it, rather than always using packet number 0 as the Kermit docs say it
should. This also was fixed.
The VT100 escape sequences <csi>8h and <csi>8l are now supported.
These turn on and off automatic key repeat. This option is now also
available from the "Operations" menu.
The Device Control String (DCS) is now correctly interpreted, but
ignored. DCS is the sequence <esc>P followed by a string that changes e.g.
the function keys, and concluded by the sequence <esc>/ .
If there's any major new feature, it has to be that "Mouse Support"
is now programmable. When in program mode, selecting the menu option "Mouse
Support" causes a string requester to appear that allows you to enter a
mouse support control string. The string may be any valid string, and it may
contain ARP style escapes. It may also contain up to 6 C-style % escapes,
causing substitution of 6 arguments: in order of substitution these
arguments are (1) current mouse y position, (2) current mouse x position,
(3) current cursor y position, (4) current cursor x position, (5) current
number of lines on screen and (6) current number of columns on the screen.
The simplest example of using this feature is the case where the host can
accept unsollicited cursor position reports (CPR's). In that case, the
string might be:
*E[%d;%dR
This string starts with *E, which will be interpreted as an escape character
(decimal 27), and then a square opening bracket (these two together are also
known as the <csi> sequence). Next is the first %d : this means that at this
point the current mouse Y position will be substituted. Then follows a
semi-colon, and then another %d. Here the current mouse X position is
substituted. The sequence ends with a capital R. The effect of entering this
sequence is, that when Mouse Support is on and the left mouse button is
depressed, this sequence will be sent to the host after substituting current
values (e.g. <esc>[26;68R).
The mouse support control string is also programmable from the
scripting language: just add it to the "mouse on/off" command:
mouse on *E[%d;%dR
An interesting example is given in the two new example scripts vltmouse.rexx
and vltmouse.vlt. In vltmouse.vlt, first the program vltmouse.rexx is
started up asynchronously. Then VLT's mouse support control string is
programmed to send all six possible arguments to the ARexx port called
VLTMOUSE, which is created by vltmouse.rexx. From that moment on, whenever the
mouse is clicked on VLT's screen, the relevant numbers are sent to this port.
The rest of vltmouse.rexx parses the numbers, and queries VLT's review buffer
to find out which line of text is at that mouse location. Altogether, these
two little programs make for a very nice "command-line edit/retry" setup.
The possibilities of this are rather interesting...
Tektronix Changes.
==================
Below is a list of the Tektronix escape sequences that are now
supported - with comments where necessary.
------------------Tektronix 4105/4107 support ---------------------------
<esc> IQ <Report-Terminal-Settings>
- All unsupported reports will return a single 0 report.
Supported reports: TF, TG, %!, ?T, ?M.
<esc> KC <Cancel>
<esc> KI <Ignore-Deletes>
<esc> KQ <Report-Errors>
- Only a single error is kept track of, and only the last occurrence.
The most likely error code is 00: not implemented. Only a few
commands will generate other error conditions.
<esc> LE <End Panel>
<esc> LF <Move>
<esc> LG <Draw>
<esc> LH <Draw-Marker>
<esc> LP <Begin-Panel-Boundary>
<esc> LT <Graphic-Text>
- Graphic text is always drawn using a stroke font. Alpha mode text
uses the default Amiga text font, except in zoom or pan mode.
<esc> MC <Set-Graphtext-Size>
- 4107 extension: since graphic text is drawn using a stroke font,
all sizes are allowed.
<esc> MG <Set-Graphics-Area-Writing-Mode>
<esc> ML <Set-Line-Index>
- 4107 extension: colors 8 through 15 are supported.
<esc> MM <Set-Marker-Type>
- Markers are drawn using a stroke font and don't exactly match the
Tektronix ones. In the PostScript output they match better.
<esc> MN <Set-Character-Path>
<esc> MP <Select-Fill-Pattern>
- 4107 extension: colors 8 through 15 are supported (patterns -8
through -15)
<esc> MR <Set-Graphtext-Rotation>
- Conform 4105 standard, only 0, 90, 180, and 270 degrees are
supported.
<esc> MT <Set-Text-Index>
- 4107 extension: colors 8 through 15 are supported.
<esc> MV <Set-Line-Style>
<esc> NU <Set-Bypass-Cancel-Character>
- This character can also be set using a new menu option.
<esc> NT <Set-EOL-String>
- This string can also be set using a new menu option.
<esc> RA <Set-View-Attributes>
<esc> RH <Set-Pixel-Beam-Position>
<esc> RL <Runlength-Write>
<esc> RP <Raster-Write>
<esc> RR <Rectangle-Fill>
<esc> RS <Set-Pixel-Viewport>
- 4107/Amiga extension: the full range of addressable pixels
available in the current window/screen is available.
<esc> RU <Begin-Pixel-Operations>
<esc> RW <Set-Window>
- Only windows that preserve the aspect ratio are allowed. Windows
that don't preserve the aspect ratio are rescaled until they do.
<esc> RX <Pixel-Copy>
- Only straight copies are supported. Copies where the second
source x and/or y coordinate is/are smaller than the first
will be performed after sorting the coordinates.
<esc> TG <Set-Surface-Color-Map>
- 4107 extension: Surface -1 is supported, as well as colors
8 through 15.
<esc> TM <Set-Color-Mode>
- 4107 extension. RGB, HLS and CMY color coordinate systems are all
supported, both in setting color maps as in color reports.
<esc> %! <Select-Code>
<esc> #! <Report-Syntax-Mode>
-------------------------------------------------------------------------
In order to support these new capabilities, the Tektronix escape
parser was once again rewritten. It now knows about all escape sequences
employed by Tektronix 4105/4107/4110/4112/4114/4205/4207 terminals, although
it of course only takes appropriate action on the ones listed in the table
above: all others are parsed but ignored. In the process, the escape parsers
of the Tektronix and VT100 parts of VLT were somewhat better integrated:
sequences not handled by the Tektronix part are handed to the VT100 part,
although the reverse is not true. When this happens, control reverts back to
the VT100 part of the program, although the VT100 screen does not
automatically come to the front in order to prevent unnecessary rapid screen
flipping that would otherwise take place. This also means that occasionally
the user will have to flip back to the VT100 screen "by hand". The usual
escape sequences (documented elsewhere) that are designed to flip back to
the VT100 screen still work, though.
Another major change is that the "Preferences Requester" is no more.
Too many options had to be changed/added, and it was more expedient to go
with menus. Therefore, there is now an "Operations" menu. The following
table summarizes what the various options do.
------------------Tektronix Operations Menu------------------------------
Tek Emulation - Set emulator mode.
4010/4014 - Allow standard 4010/14 commands only.
4105/4107 - Support most 4105 and some 4107 series commands.
* Note: Leave this set to 4105/4107 unless your
* host computer's actions lead you to believe
* otherwise.
GIN Report Style - Style of xy report to host in graphic cursor mode.
4010 - Use 4010 style "four-character" report.
Extended - Use "five-character" report.
* Note: 4105's use the 4010 style report. It is
* unlikely your system would be happy with the
* extended report.
Report EOL String - End-of-line string used in reports to the host.
CR - Use a single <cr> (decimal 13) to end reports.
CR/EOT - Use a <cr> and an <eot> (decimal 4).
LF - Use a <lf> (decimal 10).
CR/LF - Use a <cr> followed by a <lf>.
None - Don't use any end-of-line characters.
Set By Host - Allow the host to set the EOL string.
* Note: The default is <cr>. which is factory
* setting of Tektronix 4105's. If you experience
* problems, first try allowing the host to set the
* EOL string.
Bypass Cancel Character - Character from host that cancels Bypass mode.
CR - <cr>
LF - <lf>
None - None: terminal does not enter Bypass.
Set By Host - Allow the host to set the Bypass Cancel Character.
* Note: Bypass mode is used to prevent reports from
* being echoed to the screen. If your host doesn't
* echo reports, set it to None. Otherwise, set it
* to be the same as the *last* character of the EOL
* string, see above. In case of trouble, try letting
* the host set it. Default is <cr>, the same as the
* EOL string.
Mouse Report Character - Character to head the GIN report sent to the host.
* Note: Standard Tektronix 4105's require a space
* character when their mouse is used. When another
* printable character is used, the host likely
* thinks you're using the keyboard. The default now
* is a space character.
Incremental Mode Step - Step size to use when in incremental mode.
1/1024 - One unit in 1024 x 1024 coordinate space.
1/4096 - One unit in 4096 x 4096 coordinate space.
* Note: Incremental mode isn't used very often, and
* is only available on 4010/4014 terminals. If your
* application uses this, you will have to experiment
* to see which setting to use. Most likely: 1/1024.
Adjust Display Size - Adjust the display sizes used by the emulator.
Width - Adjust width.
Height - Adjust height.
* Note: Normally, the display sizes used are those
* of the current screen. If this causes problems with
* the aspect ratio on your monitor or you want to
* achieve special effects, play with these numbers.
* They are only used when the emulator is on its own
* custom screen: on the Workbench the window size is
* used.
Use Duplex Stroke Font - Usage of the duplex stroke font.
Never - Always use only the simplex font.
In Zoom - Allow use of the duplex font in zoom/pan.
* Note: The duplex font is considerably slower than
* the simplex font, and also consumes some disk space.
* Therefore, you may want to set this option to
* Never. On the other hand, in zoomed mode this font
* looks considerably nicer than simplex. If you have
* sufficient disk space, install duplexfont.library
* and set this option to In Zoom. The font is not
* legible in unzoomed mode, hence there is no such
* option. Note also, that in Tektronix "alpha" mode,
* the current default Amiga font is used, unless in
* zoom or pan.
Set Default Parameters - Restore all parameters to:
Last Saved - the last saved defaults, or:
Original - the "factory installed" defaults.
Save Tek Configuration - Save the current settings to TekPrefs.dat
* Note: This only saves the configuration of the
* Tektronix part of VLT. The VT100 configuration
* is separately controlled from the VT100 screen's
* menu.
-------------------------------------------------------------------------
A considerable amount of effort went into the PostScript support.
Virtually everything supported by VLT's Tektronix emulator is also supported
in the PostScript output, with the exception of the Pixel Copy operation: it
only generates black rectangles.
The code has been extensively tested on files from a variety of
sources. In particular, it works satisfactorily with SAS/GRAPH in 4105 and
4107 modes (and it seems that 4205 and 4207 are treated by SAS/GRAPH the
same as 4105/4107).
*NOTE* When using VLT as a Tektronix 4107 emulator, you will most
likely need to run with a 16 color screen. Some Amigas have a big problem
keeping up with serial device input when a heavily overscanned or 16-color
screen is used, and you may therefore experience rather nasty glitches in
the display. If this is the case, you can always set the display to 8 colors
during transmission from the host, and then redisplay the picture (using
e.g. Reset Zoom/Pan) in 16-color mode.
Aside from the major changes mentioned above, a few minor fixes were
made. The checkmarks for the Fix Colors and Mask Colors menu options are now
correctly updated. A possible problem with the Tektronix capture file was
fixed. Some changes were made to the behaviour of the alpha mode cursor.
When two VLT programs are active at the same time, conflicts in naming the
Tektronix capture file are now resolved.
Willy Langeveld, 2 January 1990