[net.micro.atari16] UNITERM PART 2 OF 5 / DOCS

K538915@CZHRZU1A.BITNET (08/27/86)

---cut here---
.!***************************************************************************
.!
.!   File: UG.PRF
.!                      UniTerm Users Guide
.!
.!***************************************************************************
.!
.!
.vs Name UniTerm
.vs Version BETA-1.2
.so macros.prf
.so Chapter1.prf
.so Chapter2.prf
.so Chapter3.prf
.so Chapter4.prf
.!
.!
.cl 0 Appendices
.so apndx1.prf
.so apndx2.prf
.so apndx3.prf
.!
.!
.so toc.prf
.!
.!
.!****************************************************************************
---cut here---
.!****************************************************************************
.!
.!   File: MACROS.PRF
.!
.!****************************************************************************
.!
.!
.!
.!
.define Chapter
.he //$Name User's Guide/#/
.fo //Version $Version//
.bp
.bold on
.ce 1
Chapter - $1
.br
.sp 1
.ce 1
$2 $3 $4 $5 $6 $7 $8 $9
.bold off
.cl 0 Chapter - $1.  $2 $3 $4 $5 $6 $7 $8 $9
.he /$Name User's Guide/Chapter $1/#/
.sp 1
.en
.!
.! Section Heading
.!
.define SH
.in 0
.cl 1 $1 $2 $3 $4 $5 $6 $7 $8 $9
.ne 10
.sp 2
.bold 1
$1 $2 $3 $4 $5 $6 $7 $8 $9
.br
.sp 1
.ti +3
.en
.!
.! Subsection Heading
.!
.define SSH
.in 0
.cl 2 $1 $2 $3 $4 $5 $6 $7 $8 $9
.ne 10
.sp 2
.bold 1
$1 $2 $3 $4 $5 $6 $7 $8 $9
.br
.sp 1
.ti +3
.en
.!
.! Subsubsection Heading
.!
.define SSSH
.in 0
.cl 3 $1 $2 $3 $4 $5 $6 $7 $8 $9
.ne 5
.sp 1
$1 $2 $3 $4 $5 $6 $7 $8 $9
.br
.sp 1
.en
.!
.! Paragraph
.!
.define PP
.ne 3
.sp 1
.ti +3
.en
.! Appendix
.define AP
.fi
.he /$Name User's Guide/Appendix $1/#/
.fo //Version $Version//
.bp
.cl 1 Appendix - $1 $2 $3 $4 $5 $6
.ce on
.bold on
Appendix - $1
.br
$2 $3 $4 $5 $6
.bold off
.ce off
.sp 3
.nf
.en
.!****************************************************************************
.!
.!                             End Macros
.!
.!****************************************************************************
---cut here---
.!****************************************************************************
.!
.!    File: TOC.PRF
.!                       Table of Contents
.!
.!***************************************************************************
.!
.!
.br
.pn roman
.he //#//
.bp 1
.nf
.fo ////
.bold on
.ce
Table of Contents
.bold off
.sp
.pc
.!****************************************************************************
.!
.!                                  THE END
.!
.!****************************************************************************
---cut here---
.!***********************************************************************
.!*                                                                     *
.!*  File: CHAPTER1.PRF                                                 *
.!*                                                                     *
.!***********************************************************************
.Chapter 1 Introduction
.PP
$Name is a program that emulates most of the functions of DEC's
(Digital Equipment Corporation) VT102 text terminal and the vector mode
of Tektronic's 4014
graphics terminal. The program and its documentation can be copied,
distributed and used free of
cost, but may not be sold for commercial purposes. Please contact me, if
you
find bugs or have suggestions for revised versions of $Name, but read
appendix A
and the implementation notes first.
.PP
Some compromises have been made in the implementation of the VT100
special graphics
character set and double height/width characters, but as soon as we can
design and load fonts on the
ST, this will be fixed. Other things which are planned for future
releases:
.nf
.in 10
.sp 1
-Tektronix 4105 commands (already started!)
.br
-VT200/VT220/VT132 compatibility
.br
-sideways scrolling for 132 columns
.br
-backwards scrolling
.br
-desk accessory version (for use with GEM-Kermit)
.br
-make $Name work with the blitter-chip
.br
-speedup the redrawing of vectors
.br
-saving of vectors to a GEM metafile
.br
-color version (just need a color monitor to try it out)
.sp 1
.fi
.br
.sp 1
GEM is a trademark of Digital Research Co.
.br
DEC,VT are trademarks of Digital Equipment Co.
.br
Tektronix is a trademark of Tektronix Co.
.br
Atari is a trademark of Atari Co.
---cut here---
.!***********************************************************************
.!*                                                                     *
.!*  File: CHAPTER2.PRF                                                 *
.!*                                                                     *
.!***********************************************************************
.Chapter 2 Starting using $Name
.SH Requirements
To use $Name you need:
.in +5
a ATARI ST computer
.br
a monochrome monitor (color compatibility is not verified yet)
.br
a RS232 standard cable
.br
a computer to talk to
.br
a floppy disk with ${Name}.PRG on it
.in -5
.SH Getting started
After connecting your ST to your host computer, double click the
$Name Icon. After the program has been loaded you will (hopefully) see
the $Name opening dialog. Now you can select the size of the
vector/filecapture
buffer, if you select 0 or a size to big for your free RAM no
buffer will be allocated.
.PP
Probably now a alert box will appear, press <Return> (in this manual
<xx> means
the key with xx on it) and ignore the warning ($Name didn't
find the file DEFAULT.SET, we will create it later on), the screen
will clear to white (on a monochrome monitor) with a status line on line
25.
Press <Help> and the  $Name selection dialog will appear, the actions
which
you can select are:
.in +5
.bd
.sp 1
Save Setup
.br
Save a setup file to disk
.sp 1
.bd
.br
Load Setup
.br
Load a setup file from disk
.sp 1
.bd
.br
Edit F-Keys
.br
Assign a string to the function keys
.sp 1
.bd
.br
Set Terminal Parameters 1
.br
and
.br
.bd
Set Terminal Parameters 2
.br
allow you to set the parameters of the serial port and the terminal
emulator
.sp 1
.bd
File Transfer Parameters
.br
Allows you to set the parameters for ASCII file transfer
.sp 1
.ne 2
.bd
.br
A little bit of help
.br
Gives you some help on the functions of the special keys
.sp 1
.ne 2
.bd
Leave Menu
.br
Leave this dialog and return to terminal mode
.in -5
.sp 1
Click the box |Set terminal parameters 1| (|xx| means a GEM button with
the
text xx in it) and a new dialog will appear.
Selecting the different values for the parameters is quite straightforward,
just click on the buttons with the right values (we hope you know them,
otherwise you will just have to experiment) and when you are finished
select |OK|. Now you are back in the main dialog, to save the setup select
|Save setup|, a normal GEM file selector dialog will appear, if you want
to
use this setup as default save it with the name 'DEFAULT.SET' and $Name
will
load it automatically on startup. To leave the main dialog press <Return>
or
select |Leave Menu|.
.PP
If you have adjusted the parameters correctly, you should now be able to
communicate
with your host computer. Some operating systems (VMS) try to identify
the terminal automatically, depending on your setup $Name will
identify itself as a DEC VT102 or VT100. A VT102 has more 'advanced'
editing functions (which results in less overhead in transmitting inserts
etc.) so leave this
option on VT102 if possible. If you have to enter the terminal type
manually try VT102 first (changing from VT102 to VT100 only changes the
report from $Name,
not the actual commands $Name understands).
.SH Exiting $Name
To stop $Name press <Undo>, if there is nothing in the buffer you will be
returned straight away to the Desktop, otherwise a alertbox will appear
asking for confirmation.
.SH Vector graphics mode
After receiveing the control code 'GS' or the 4105 command 'ESC'%!0
(ASCII control characters are enclosed
in apostrophes to distinguish them from printable characters, a space is
 written 'SP') from the host, $Name switches to a
separate graphics screen, if the host doesn't send 'ESC''FF' (the ASCII
characters
Escape and Formfeed) before
starting a new picture, you will have to clear the screen manually with
<Alt><F1>. The incoming characters will be interpreted
as Tektronix encoded vectors or commands (see appendix A) until $Name receives
one of the following codes:
.in 5
.sp 1
'CR' or 'US' will return you to VT102 mode if the first 'GS' was
received there,
otherwise the terminal will enter Tektronix alpha mode.
.br
'ESC''FF' will clear the screen and enter Tektronix alpha mode.
.br
'ESC'%!1 will return to VT102 mode.
.in 0
.sp 1
On returning from Tektronix to VT102/VT100 mode $Name only switches the
logical screen (the one on which output operations are performed) back to
the text mode screen. To switch
the physical screen (the one you actually see) back to the text screen,
press <Alt><F6> (this key combination always returns you back to VT102/VT100
mode!). To view
your picture again press <Alt><F5>.
.SH Zoom mode
If you selected a vector buffer larger than zero kilo bytes, you can
redraw a picture with different scaling factors. To select this mode press
<Alternate><F9>, the screen will be cleared, the current contents of
the buffer will be drawn on the screen and the normal arrow mouse cursor
will appear.
.PP
To select the region of the picture you want to magnify, move
the arrow to the upper left corner of the region, press the left mouse button
and drag the mouse to the lower right corner of the region (a 'rubber box'
should follow the arrow) and release the button. The resulting picture will
be scaled so that the larger side of box will fit on the screen (if the option
|True Aspect| is selected). You can repeat this operation till a magnification
factor of thirty is reached.
.PP
 <Backspace> will restore the previous scaling
factors, the arrow keys will move the screen a 10th of the screen
width/height
in their direction and <Return> will leave zoom mode (all other keys only
redraw the screen). Remember that if your picture is built out a lot of vectors,
the redrawing may take some time!
.SH GIN mode
The sequences 'ESC''SUB' will enter GIN mode from any of the Tektronix modes,
it will not work from the VT102/VT100 mode since SUB cancels any ANSI command.
A crosshair cursor will appear which can be moved with the mouse. Pressing
any key on the keyboard will cause a GIN report to be sent to the host and
exits the GIN mode to Tektronix alpha mode. Moving the cursor to regions of
the screen with invalid coordinates will cause an invalid report (if you have
selected |True Aspect| the 1024*780 (4096*3120) Tektronix coordinate system is
mapped to a centered region sized 525*400 pixels on the ST monochrome screen).
.SH Tektronix 4014 alpha mode
This mode is only included for compatibility with the GIN-mode and is not very
usefull.
But you can position alphatext anywhere on the screen. This mode will probably
be replaced in future versions with a 4105 compatible alphamode.
.SH Using the special keys
Here is a list of the functions on the special keys (press <Alternate> and the
key listed here):
.sp 1
.in 5
<F1>
.br
Erases the graphics screen from any terminal mode.
.sp 1
<F2>
.br
Toggles the foreground/background color (white on black or
black on white).
.sp 1
.ne 2
<F3>
.br
Toggles between blinking and static cursor.
.sp 1
.ne 2
<F4>
.br
Prints the contents of the textbuffer.
.sp 1
.ne 2
<F5>
.br
Switches the physical screen (the one you see) to the graphics screen.
.sp 1
.ne 2
<F6>
.br
Switches the screen and the terminal to VT102/VT100 mode.
.sp 1
.ne 2
<F7>
.br
Resets the terminal, reads the default values from disk.
.sp 1
.ne 2
<F8>
.br
Toggle autoprint.
.sp 1
.ne 2
<F9>
.br
Enter zoommode.
.sp 1
.ne 2
<F10>
.br
Reset the Tektronix mode.
.sp 1
.ne 2
<B>
.br
Send a short break (0.233 s).
.sp 1
.ne 2
<L>
.br
Send a long break (3.5 s).
.sp 1
.ne 2
<A>
.br
Send the answerback string
.sp 1
.ne 2
<W>
.br
Switch to 132 column mode (really only 128*64).
.sp 1
.ne 2
<S>
.br
Switch to 80 column mode.
.sp 1
.ne 2
<X>
.br
Reset the XOff flags of the bios.
.sp 1
.ne 2
<C>
.br
Start/stop file capture.
.sp 1
.ne 2
<R>
.br
Playback a captured file.
.sp 1
.ne 2
<T>
.br
Start ASCII file transfer.
.sp 1
.ne 2
<Help>
.br
Atari screen dump.
.sp 1
.ne 2
<P>
.br
Atari screen dump of the physical screen.
.sp 1
.ne 2
<Insert>
.br
Start the single line editor.
.in 0
---cut here---
.!***********************************************************************
.!*                                                                     *
.!*  File: CHAPTER3.PRF                                                 *
.!*                                                                     *
.!***********************************************************************
.Chapter 3 More about $Name
.SH Terminal Parameters 1
To change these settings, press <Help> and select
.br
.ce
.bd
 |Change Terminal Parameters 1|
Following parameters can be changed:
.in 5
.sp 1
.bd
Baud
.br
Selects the rate for the serial port.
.sp 1
.bd
Flowcontrol
.br
Selects the flowcontrol mode, these functions are implemented by the bios.
.sp 1
.bd
Parity
.br
Selects the parity mode, these modes are implemented by the bios.
.sp 1
.bd
Data/Stop
.br
Allows you to select the number of data and stop bits, implemented by the bios
.sp 1
.bd
Mode
.br
Allows you to put the terminal in one of following modes:
.br
Full: Data typed on the terminal is echoed by the host computer.
.br
Echo: $Name echos user input on the screen.
.br
Local: User input is only sent to the screen.
.sp 1
.bd
Terminal
.br
Selects the terminal mode and change the terminal identification.
4014 selects
4014 alpha mode!
.sp 1
.bd
Attributes
.br
Allows you to change the processing of text attributes:
.br
Ignore: All attributes except inverse are ignored, the terminal identifies
itself as if it had the advanced video option (AVO), this is the quickest
output mode.
.br
AVO: The terminal process all DEC text attribute codes, slowest mode.
.br
NoAVO: The terminal only processes underline and inverse attributes.
.sp 1
.bd
Scroll
.br
Selects between slow and quick scroll.
.sp 1
.bd
Aspect
.br
This option controls the scaling of pictures.
.in 0
.SH Terminal Parameters 2
To change these settings, press <Help> and select
.br
.ti 5
.bd
.ce
|Change Terminal Parameters 2|
following parameters can be changed:
.in 5
.sp 1
.bd
GIN Termination Sequence
.br
Determines the string sent after a GIN or status report.
.sp 1
.bd
Answerback
.br
The string which is sent as answerback message.
.sp 1
.bd
Print terminator
.br
Determines if a FF is sent after each print operation or not.
.sp 1
.bd
Printer
.br
Determines if a printer is connected or not.
.in 0
.SH File Transfer Parameters
To change these settings, press <Help> and select
.br
.ti 5
.bd
.ce
|File Transfer Parameters|
following parameters can be changed:
.in 5
.sp 1
.bd
Start of file transfer
.br
A string that is sent before file transfer starts.
.sp 1
.bd
End of file transfer
.br
A string that is sent when the transfer finishes.
.sp 1
.bd
Delay after every character [ms]
.br
Sets the time $Name waits after every character sent (this is implemented
with the AES call event_multi, this means the 200Hz system clock is used).
.sp 1
.bd
Method
.br
If Paced by Echo is selected, $Name waits for every character sent to be
echoed (except ASCII control codes), doesn't time out!.
.sp 1
.bd
Send EOL as
.br
Selects if 'CR''LF' is sent as 'CR''LF','CR','LF' or 'SP''CR'.
.SH Setup Files
Follow information is stored in the setup files:
.br
.nf
.nj
.in +5
Version Number
Baud
Flowcontrol
Parity
Databits
Stopbits
Communication Mode
Terminal Mode
Attribute Mode
Scroll Mode
Aspect Mode
GIN Termination String
Answerback String
Print Terminator
Printer Mode
Cursor Mode
Screen Mode
ASCII File Transfer Start String
ASCII File Transfer Finish
ASCII File Transfer Delay Time
ASCII File Transfer Method
ASCII File Transfer EOL Type
Function Key Strings
.in 0
.ju
.fi
.sp 1
Loading a setup file from a different version of $Name will result in
a version conflict error message.
.SH File Capture/Playback
These functions were only added for debugging purposes, but can be used
for simple seven-bit ASCII file capture and for playing back a sequence
of terminal commands (redrawing a picture as well).
.SH Editing Function Keys
To edit the string assigned to a function key, press <Help> and select
.br
.ce
.bd
 |Edit F-Keys|
.br
you now can edit the strings, the cursor keys will move you to the string
you want to edit, <Esc> will clear the string, <Backspace> will delete to
the left, <Delete> the current character. Control codes can be entered by
pressing <Control> and the appropriate key (see appendix B).
.SH The Statusline
The 25th line on the screen is used as a statusline in VT102/VT100 mode
it should look like this:
.sp 1
.bd
.nj
.nf
$Name $Version                                      R 1234
.sp 1
.fi
.ju
1234 simulate the LED's on a VT100, when they are set they will change from
inverse to normal. R indicates that the terminal is in replace mode, an I
insert mode.
Other indicators: C file capture is on, L the keyboard is locked.
.SH The Single-Line Editor
To make working on systems that don't have a single-line editor (short
sle) easier, a simple
sle is implemented in $Name. The last 10 lines typed by the user are
stored in a circular buffer. Pressing <Insert> starts the sle, the status line
will clear and the current line will be displayed instead. Following
functions are provided:
.br
.in 5
Left and right cursor keys: move the cursor one character left or right.
.br
Up and down cursor keys: display the next or last line in the buffer.
.br
<Delete>: delete the character under the cursor.
.br
<Backspace>: delete the character to the left of the cursor.
.br
<Insert>: abort the sle.
.br
<Return>: send the line and leave the sle.
.in 0
The sle is always in insert mode.
.SH ASCII File Transfer
<Alternate><C> will capture all ASCII characters sent to $Name in a file,
this option disables zooming of pictures. You can play back the contents
of a File with <Alternate><R>, the characters are processed as if they were
received from the serial port.
.PP
Pressing <Alternate><T> will send a file to the host using the current
file transfer parameters. <A> will abort the file transfer.
---cut here---
.!***********************************************************************
.!*                                                                     *
.!*  File: CHAPTER4.PRF                                                 *
.!*                                                                     *
.!***********************************************************************
.Chapter 4 Implementation Notes
.SH General
Most of $Name is written in CCD/OSS Pascal and uses standard
GEM,GEMDos,Bios and XBios calls. The exceptions are:
.br
.sp 1
.in 5
Scrolling up, this is done with a assembler routine instead of a raster
operations.
.sp 1
Peeking and poking in user and supervisor status is done in assembler.
.sp 1
.in 0
In future versions probably more will be done in assembler.
The Bios input buffer for the serial port is expanded to 2000 bytes. If
no attributes
except reverse are set and the character cell height is 16 or 8 pixels, screen
output is done with the Bios call BConout (Bios 3), this is at least twice as
fast as using GEMDos and three and half times faster than using GEM.
Typical times (may change
from version to version, these were taken with Beta version 0.7):
.sp 1
.in 5
.nj
.nf
Polling of the serial port and keyboard (main loop):  0.65ms
                                       (Beta V1.2    0.48ms)
(if ther are characters in the input buffer, a maximum
of 20 are processed before the keyboard is polled again)
The following data was measured with simulated input
to the VT102 command processing routine, the times
are per operation:
   Carriage return                                     0.6ms
   Clear complete screen ('ESC'[2K):                 140  ms
   Clear complete line ('ESC'[2J):                    10.0ms
   Absolute cursor address combination
   ('ESC'[H'ESC'[10;10H):                              5.6ms
   Linefeed with scroll:                              30.0ms
   40'000 characters  8 per line                       4.4ms
                     80 per line                       1.0ms
                                        (Beta V1.2   0.88ms)
   4'000 characters bold (highlighted)
                     80 per line                       3.5ms
.sp 1
.in 0
.fi
.ju
To decode one character without any output operation (moving of cursor
etc.) takes less than 0.5 ms. Use of $Name at 9600 baud is probably
not unresonable, but it may need flowcontrol.
.PP
The carrier detect signal and the break bit on the Mfp are polled once per
main loop and if they are present a appropriate message is displayed.
.SH VT102/VT100 Mode
.SSH 132 Column Mode
A simulation of 132 column mode is done using the 6*6 font. The characters
are spaced in 5 pixels increments instead of 6, this gives (monochrome)
128 columns * 64 lines. Characters between 128 and 132 columns are lost.
This mode will probably be exchanged for sideways scrolling later. Restrictions:
No double height/width characters.
.SSH Special Graphics/Line Drawing Character Set
The line drawing characters are mapped to lines (which are actually drawn)
and to the '+' and '|'  characters. The other special characters are mapped
as good as possible to the ATARI ST character set. Hopefully this will change
before the end of year, as soon as we can design and load fonts this will be
done properly.
.SSH Double Height/Width Characters
Restrictions: only USASCII set, no double height in color. The same goes here
as for the line drawing set.
.SSH HDS200 International Character Set
Undocumented, only for use at CHRZU1A.
.SH Tektronix Mode
.SSH General
The Tektronix mode is still a bit in a mess. This will change with the
using the 4105 command set, this implies that you should only use the
vector mode of the 4010 emulation as all other 4010 commands will probably
be removed from the program.
.PP
Right now scaling is done with respect to a 4010 with 1024*780 points, this
probably will change for the 4105 (512*360) emulation. In Tek coordinates the
screen measures 4096*3120 points (4105: 4096*3072 points).
.PP
For redrawing and zooming purposes the incoming characters are stored in
a linear buffer. This is quite a memory saving way to store them, but on the
other hand this means they have to be decoded every time the vectors are drawn.
.SSH Alpha Mode
Restrictions: 1 margin, all (well nearly all) character sizes are the same
only the spacing is different.
.SSH Vector Mode
.sp 1
.SSH Zoom Mode
Restrictions: No zooming of graph text, slow.
.SH Problems
Sometimes the serial port seems to blocked (this has happened to me with
other ST terminal emulators aswell), possibly we received a XOFF but
no XON. Pressing <Alternate><X> wil reset the XOFF flags of the bios.
.PP
Don't use the |Change Terminal Parameters 1| dialog in an editor or the like,
for some mysterious reason the serial port outputs a delete character if
you
actually change something and exit with |OK|.
.SH The German keyboard and other horrible things
Due to the way the keyboard interrupt routine is written for the German
bios
not all of the control codes can be produced with the keyboard. To make
local
debugging easier <Alternate><V> will send a 'GS' code and to allow you
to get to
the [,],{,},@, and \ characters without pressing two to three keys the
umlauts
are caught and replaced by the ASCII characters on the keys (if somebody
sends
me the layout of the other none US keyboards I will try to do the same
thing).
Do not count on this feature to stay, maybe this will be replaced by
loading
a keyboard table.

---cut here---
.!***********************************************************************
.!*                                                                     *
.!*  File: APNDX1.PRF                                                   *
.!*                                                                     *
.!***********************************************************************
.AP A Control Codes and Escape Sequences
.fi
.ju
.PP
This appendix list control codes and escape sequences that
complete implementations of VT102 and Tektronix 4014/4105 terminals should
interpret and the functions they should initiate. * marks functions that
are redundant or not possible on an Atari ST computer, *NI marks other not
implemented functions (due to my laziness?), *RI uncomplete implementation of
a function, please read the implementation notes for details.
.PP
Consult the ASCII table for numeric values of the control codes, 'Ps',
'Pn', 'Pc'
and 'Pl' denote decimal values (Esc[10;10f postion cursor at text coordinates
(10,10)).
.PP
The following control codes and commands, the syntax and the command
interfaces as a whole
could possibly be patented or/and copyrighted,
please consider this list as 'for information only'. Commercial use is strictly
forbidden.
.nj
.nf
.SH ANSI/VT102/VT100 Mode
.sp 1
.SSH Set Mode
.sp 1
.in 5
'ESC'[2h                 Keyboard locked
'ESC'[4h                 Insert mode
'ESC'[12h                Local echo off
'ESC'[20h                New line mode on
'ESC'[?1h                Cursor key application mode
'ESC'[?3h                *RI 132 column mode
'ESC'[?4h                Smooth scrolling
'ESC'[?5h                Screen reverse
'ESC'[?6h                Origin mode relative
'ESC'[?7h                Auto wrap on
'ESC'[?8h                * Auto repeat on
'ESC'[?9h                * Interlace on
'ESC'[?18h               Print form feed on
'ESC'[?19h               Print extent full screen
.SSH Reset Mode
.in 5
'ESC'[2l                 Keyboard unlocked
'ESC'[4l                 Replace mode
'ESC'[12l                Local echo on
'ESC'[20l                New line mode off
'ESC'[?1l                Cursor key cursor mode
'ESC'[?2l                *NI VT52 mode
'ESC'[?3l                80 column mode
'ESC'[?4l                Jump scrolling
'ESC'[?5l                Screen normal
'ESC'[?6l                Origin mode absolute
'ESC'[?7l                Auto wrap off
'ESC'[?8l                * Auto repeat off
'ESC'[?9l                * Interlace off
'ESC'[?18l               Print form feed on
'ESC'[?19l               Print extent scrolling region
.SSH Select Character Sets
.in 5
  G0         G1
.sp 1
'ESC'(A   'ESC')A          UK
'ESC'(B   'ESC')B          USASCII
'ESC'(0   'ESC')0          Special graphics (line drawing)
'ESC'(1   'ESC')1          *NI Alt char ROM
'ESC'(2   'ESC')2          *NI Alt char ROM
.SSH Shift into Character Sets
.in 5
'ESC'N                   Single shift into G1
'ESC'O                   Single shift into G0
'SO'                     Locked shift G1
'SI'                     Locked shift G0
.SSH Character Attributes
.in 5
'ESC'[m                 No attributes
'ESC'[0m                No attributes
'ESC'[1m                Bold
'ESC'[4m                Underline
'ESC'[5m                Blink (Light)
'ESC'[7m                Reverse
.SSH Scrolling Region
.in 5
'ESC'['Pt';'Pb'r        Set scrolling region
.SSH Cursor Movement Commands
.in 5
'ESC'['Pn'A             Cursor up
'ESC'['Pn'B             Cursor down
'ESC'['Pn'C             Cursor right
'ESC'['Pn'D             Cursor left
'ESC'['Pl';'Pc'H        Cursor position
'ESC'['Pl';'Pc'f
'ESC'D                  Index
'ESC'M                  Reverse Index
'ESC'E                  Next line
'ESC'7                  Save cursor
'ESC'8                  Restore cursor
.SSH Tab Stops
.in 5
'ESC'H                  Horizontal tab set
'ESC'[g                 Tab clear
'ESC'[0g                Tab clear
'ESC'[3g                Clear all tabs
.SSH Line Attributes
.in 5
'ESC'#3                 *RI Double-height top half
'ESC'#4                 *RI Double-height bottom half
'ESC'#5                 Single-width single-height
'ESC'#6                 *RI Double-width single-height
.SSH Erasing
.SSSH In Line
.in 5
'ESC'[K                  Cursor to end of line
'ESC'[0K
'ESC'[1K                 Beginning of line to cursor
'ESC'[2K                 Entire line
.SSSH In Screen
.in 5
'ESC'[J                  Cursor to end of screen
'ESC'[0J
'ESC'[1J                 Beginning of screen to cursor
'ESC'[2J                 Entire screen
.SSH Requests/Reports
.in 5
Requests from host         Reports to host
.sp 1
.ne 2
'ESC'[5n   Status          'ESC'[0n         Terminal OK
                           'ESC'[3n         * Terminal not OK
'ESC'[6n   Cursor position 'ESC'['Pl';'Pc'R Cursor position Pl,Pc
.ne 3
'ESC'[c    What are you?   'ESC'[?1;'Ps'c   VT100, Ps options
'ESC'[0c                   'ESC'[?6;'Ps'c   VT102, Ps options
'ESC'Z
.ne 3
'ESC'[?15n Printer status  'ESC'[?10n   Printer ready
                           'ESC'[?11n   Printer not ready
                           'ESC'[?13n   No printer
'ESC'[0x   Terminal Parameter
           Request, send on
           exit of setup
'ESC'[1x   send only on
           request
.in 0
.SSH Reset
.in 5
'ESC'c                   Reset to default values
.in 0
.SSH Tests
.in 5
'ESC'#8                  Fill screen with E's
'ESC'[2;'Ps'y            * Invoke tests
.in 0
.SSH Keyboard LED's
.in 5
'ESC'[0q                 All off
'ESC'['Ps'q              LED 'Ps' on
.in 0
.SSH VT52 Mode
.in 5
'ESC'<                   Enter ANSI Mode
'ESC'=                   *NI Enter alternate keypad mode
'ESC'>                   *NI Exit alternate keypad mode
'ESC'F                   *NI Select special graphics character set
'ESC'G                   *NI Select US/UK character set
'ESC'A                   *NI Cursor up
'ESC'B                   *NI Cursor down
'ESC'C                   *NI Cursor right
'ESC'D                   *NI Cursor left
'ESC'H                   *NI Cursor home
'ESC'Y'Pl''Pc'           *NI Direct cursor address
'ESC'I                   *NI Reverse line feed
'ESC'K                   *NI Erase to end of line
'ESC'J                   *NI Erase to end of screen
'ESC'Z                   *NI What are you?
'ESC'/Z                  *NI I am a VT52 (Response)
'ESC'^                   *NI Enter auto print mode
'ESC'-                   *NI Exit auto print mode
'ESC'W                   *NI Enter printer controller mode
'ESC'X                   *NI Exit printer controller mode
'ESC']                   *NI Print screen
'ESC'V                   *NI Print cursor line
.in 0
.SSH Editing Functions
.in 5
'ESC'['Pn'P              Delete character
'ESC'['Pn'L              Insert Line
'ESC'['Pn'M              Delete Line
.in 0
.SSH Print Commands
.in 5
'ESC'[?5i                Enter auto print
'ESC'[?4i                Exit  auto print
'ESC'[5i                 Enter printer controller
'ESC'[4i                 Exit printer controller
'ESC'[i                  Print screen
'ESC'[0i
'ESC'[?1i                Print cursor line
.in 0
.SSH Other Control Characters
.in 5
'NUL'                    Ignored
'SOH'                    Ignored
'ETX'                    Ignored
'EOT'                    Ignored
'ENQ'                    Transmit answerback message
'BEL'                    Bell
'BS'                     Backspace
'HT'                     Horizontal tab
'LF'                     Linefeed or 'CR''LF'
'VT'                     'LF'
'FF'                     'LF'
'CR'                     Carriage Return
'SO'                     Shift to G1 character set
'SI'                     Shift to G0 character set
'DC1'                    Ignored (Alternate XOn)
'DC3'                    Ignored (Alternate XOff)
'CAN'                    Cancel
'SUB'                    Cancel
'DEL'                    Ignored
'US'                     Ignored
'RS'                     Ignored
'FS'                     Ignored
'SYN'                    Ignored
'EM'                     Ignored
'ETB'                    Ignored
'NAK'                    Ignored
'DLE'                    Ignored
'XON'                    In XOn/XOff flow control mode
'XOFF'                   intercepted by ST bios, otherwise
                         ignored
.in 0
.SSH Nonstandard VT102 functions
.in 5
'ESC'(<   'ESC')<        *RI HDS200 International character set
'GS'                     Enter 4014 Vector mode (Nonstandard)
'ESC'%!0                 Enter Tektronix alpha mode (4105 command)
'ESC'#!0                 Report terminal mode (4105 command)
%!'SP''SP'1              Report: I am a ANSI terminal
.in 0
.SH 4014 Mode
.SSH Alpha Mode
.SSSH Cursor movement
.in 5
'BS'                    Cursor left
'HT'                    Cursor right
'LF'                    Cursor down
'VT'                    Cursor up
'CR'                    Cursor to left margin
.in 0
.SSSH Character set sizes
.in 5
'ESC'8                  Normal   35x76 (lines x columns)
'ESC'9                  Small    38x81
'ESC':                  Smaller  50x120
'ESC';                  Smallest 58x133
'ESC'6                  *NI Enter Italics ?
'ESC'7                  *NI Exit Italics  ?
.in 0
.SSSH Mode changing
.in 5
'GS'                    Vector mode
'ESC''SUB'              GIN mode
'FS'                    Point plot mode
'ESC''FS'               *NI Special point plot mode
'RS'                    *NI Increment mode
.in 0
.SSH Other functions and extended escape codes
.in 5
'ESC''ETB'              Hardcopy
'ESC''ENQ'              Transmit status
'ESC''STX'              Enable block fill/erase
'ESC''ETX'              Disable block fill/erase
'ESC'\R                 Enable rectangle draw
'ESC'\r                 Disable rectangle draw
'ESC'x                  Enable selective erase
.in 0
.SSH Vector mode
.in 5
'GS'                    Next vector is dark
address                 Draw vector, next vector is visible
'ESC'`                  Solid vector
'ESC'a                  Dotted
'ESC'b                  Dot-dashed
'ESC'c                  Short-dashed
'ESC'd                  Long-dashed
'ESC'p                  Solid vector, XOR
'ESC'q                  Dotted, XOR
'ESC'r                  Dot-dashed, XOR
'ESC's                  Short-dashed, XOR
'ESC't                  Long-dashed, XOR
'ESC''SUB'              GIN mode
'US'                    Alpha mode, don't move
'CR'                    Alpha mode
'ESC''FF'               Alpha mode, clear screen
.in 0
.SSH Point plot/special point plot mode
.in 5
address                 Plot point
intensity address       *NI Special plot point
'CR'                    Alpha mode
'ESC''FF'               Alpha mode
.in 0
.SSH Incremental point plot mode
.in 5
'SP'                    *NI Pen up
P                       *NI Pen down
D                       *NI North
E                       *NI North east
A                       *NI East
I                       *NI South east
H                       *NI South
J                       *NI South west
B                       *NI West
F                       *NI North west
'CAN'                   *NI Alpha mode
'ESC''SUB'              *NI GIN mode
.in 0
.SH 4105 Commands
.fi
.ju
In the following list capital letters are part of the
command sequences and lower case identifiers denote Tektronix encoded
parameters.
.nf
.nj
.sp 1
'ESC'IQ code                *NI Report terminal settings
'ESC'IJ normal
        shifted             *NI Change GIN cursor speed
.sp 1
'ESC'JC                     *NI Copy
.sp 1
'ESC'KC                     *NI Cancel
'ESC'KR mode                *NI Change carriage return/line feed mode
'ESC'KD number
        contents            *NI Define macro
'ESC'KO number
        contents            *NI Define nonvolatile macro
'ESC'KA mode                *NI Enable dialog area
'ESC'KW mode                *NI Enable key expansion
'ESC'KX number              *NI Expand macro
'ESC'KH mode                *NI Hardcopy
'ESC'KI mode                *NI Ignore deletes mode
'ESC'KF mode                *NI Change line feed/carriage return mode
'ESC'KL mode                *NI Lock keyboard
'ESC'KQ                     *NI Report errors
'ESC'KV                     *NI Reset
'ESC'KU                     *NI Save nonvolatile parameters
'ESC'KE mode                *NI Change echo mode
'ESC'KZ char-delete
        line-delete
        literal             *NI Change edit characters
'ESC'KT threshold           *NI Change error threshold
'ESC'KY char                *NI Change key execute character
'ESC'KS mode                *NI Change transparent mode
'ESC'KB positions           *NI Change tab stops
.sp 1
'ESC'LL number              *NI Change number of lines in dialog area
'ESC'LP start-point
        fill-boundary       *NI Start panel boundary
'ESC'LZ                     *NI Clear dialog area
'ESC'LG position            *NI Draw to position
'ESC'LH position            *NI Draw marker at position
'ESC'LE                     *NI Finish panel
'ESC'LT text                *NI Graphic text
'ESC'LF position            *NI Move to position
'ESC'LB number              *NI Change number of lines for dialog buffer
'ESC'LI char-color
        char-backgr-color
        dialog-backgr-color *NI Change dialog area color
'ESC'LV mode                *NI Change dialog area visibility
'ESC'LM writing-mode        *NI Change dialog area writing mode
.sp 1
'ESC'MP number              *NI Choose fill pattern
'ESC'MG writing-mode        *NI Change graphics area writing mode
'ESC'MN direction           *NI Change graphtext direction
'ESC'MR mantissa
        power-of-two        *NI Change graphtext rotation
'ESC'MC width
        height
        spacing             *NI Change graphtext size
'ESC'ML color               *NI Change line color
'ESC'MV style               Change line style
'ESC'MM type                Change marker type
'ESC'MT text-color          *NI Change text color
.sp 1
'ESC'NM mode                *NI Prompt mode
'ESC'NR transmit
        receive             *NI Change baud rates
'ESC'NK time                *NI Change break time
'ESC'NU char                *NI Change echo suppression cancel character
'ESC'NE string              *NI Change EOF string
'ESC'NT string              *NI Change EOL string
'ESC'NC first-char
        second-char         *NI Change EOM characters
'ESC'NF mode                *NI Change flow control mode
'ESC'NP string              *NI Change prompt string
'ESC'NQ size                *NI Change input buffer size
'ESC'NB stopbits            *NI Change number of stop bits
'ESC'ND delay               *NI Change transmit delay
.sp 1
'ESC'QI values              *NI Map color to monochrome values for print
'ESC'QU density             *NI Choose color hardcopy
                            image density
'ESC'QD type                *NI Choose printer type
'ESC'QL pages
        page-origin
        ff-mode             *NI Change dialog hardcopy
                            attributes
'ESC'QE attributes          *Ni Change hardcopy monochrome
                            attributes
'ESC'QO orientation         *NI Change image orientation
.sp 1
'ESC'RU plane
        writing-mode
        bits-per-pixel      *NI Begin pixel operations
'ESC'RX dest.-plane
        d.-lower-left-corner
        first-source-corner
        second-s.-corner    *NI Copy pixels
'ESC'RP number
        color               *NI Write pixels
'ESC'RR lower-left-corner
        upper-right-corner
        fill-color          *NI Fill rectangle
'ESC'RL array               *NI ?
'ESC'RH position            *NI Move to pixel position
'ESC'RS lower-left-corner
        upper-right-corner  *NI Change coordinates for pixel operations
'ESC'RW first-corner
        opposite-corner     *NI Change window on 4096*4096 coordinates
.sp 1
'ESC'TD first-color
        second-color        *NI Change alpha cursor colors
'ESC'TF colors              *NI Change color indices for dialog area
'ESC'TG plane
        colors              *NI Change color indices for plane
'ESC'TC first-color
        second-color
        third-color         *NI Change GIN cursor color
.sp 1
'ESC'SX number
        position            *NI Change GIN cursor position
.sp 1
'ESC''SUB'                  Enter 4010 GIN mode
'ENQ'                       *NI Inquire 4105 status
'US'                        *NI Enter 4105 alpha mode
'ESC''CAN'                  Enter echo suppression mode
'FS'                        Enter marker mode
'GS'                        Enter vector mode
'ESC''FF'                   Clear screen, enter alpha mode
'ESC'#!0                    Report terminal mode
'ESC''ENQ'                  Report 4010 status
'ESC'%! mode                Change to a different terminal mode
'ESC' font                  Change fonts
'ESC' style                 Change 4014 line style
'ESC''ETB'                  4014 hardcopy
---cut here---
.!***********************************************************************
.!*                                                                     *
.!*  File: APNDX2.PRF                                                   *
.!*                                                                     *
.!***********************************************************************
.AP B ASCII control characters
|Dec|Oct|Hex|Keys        |Atari character|ASCII name                 |
|   |   |   |            |               |                           |
|  0|000| 00|<Control><@>|None           |NUL Null                   |
|  1|001| 01|<Control><A>|Up Arrow       |SOH Start of header        |
|  2|002| 02|<Control><B>|Down Arrow     |STX Start text             |
|  3|003| 03|<Control><C>|Right Arrow    |ETX End text               |
|  4|004| 04|<Control><D>|Left Arrow     |EOT End of transmission    |
|  5|005| 05|<Control><E>|Close Box      |ENQ Enquiry                |
|  6|006| 06|<Control><F>|Move Box       |ACK Acknowledge            |
|  7|007| 07|<Control><G>|Full Box       |BEL Bell                   |
|  8|010| 08|<Control><H>|Check          |BS  Backspace              |
|  9|011| 09|<Control><I>|Clock          |TAB Horizontal tab         |
| 10|012| 0A|<Control><J>|Bell           |LF  Linefeed               |
| 11|013| 0B|<Control><K>|Note           |VT  Vertical tab           |
| 12|014| 0C|<Control><L>|FF             |FF  Formfeed               |
| 13|015| 0D|<Control><M>|CR             |CR  Carrige return         |
| 14|016| 0E|<Control><N>|Left Atari sign|SO  Shift out              |
| 15|017| 0F|<Control><O>|Right Atari "  |SI  Shift in               |
| 16|020| 10|<Control><P>|Led 0          |DLE Data link escape       |
| 17|021| 11|<Control><Q>|Led 1          |DC1 X-on                   |
| 18|022| 12|<Control><R>|Led 2          |DC2                        |
| 19|023| 13|<Control><S>|Led 3          |DC3 X-off                  |
| 20|024| 14|<Control><T>|Led 4          |DC4                        |
| 21|025| 15|<Control><U>|Led 5          |NAK Negative acknowledge   |
| 22|026| 16|<Control><V>|Led 6          |SYN Synchronus idle        |
| 23|027| 17|<Control><W>|Led 7          |ETB End transmission blocks|
| 24|030| 18|<Control><X>|Led 8          |CAN Cancel                 |
| 25|031| 19|<Control><Y>|Led 9          |EM  End of medium          |
| 26|032| 1A|<Control><Z>|?              |SUB Substitute             |
| 27|033| 1B|<Control><[>|ES             |ESC Escape                 |
| 28|034| 1C|<Control><\>|?              |FS  File separator         |
| 29|035| 1D|<Control><]>|?              |GS  Group separator        |
| 30|036| 1E|<Control><^>|?              |RS  Record separator       |
| 31|037| 1F|<Control><__>|?              |US  Unit separator         |
| 32|040| 20|         < >|               |SP  Space                  |
.in 0
.sp 1
.fi
.ju
Due to the way the german bios is written (and probably most of the none US
versions) not all of these codes can be produced with the keyboard.
---cut here---
.!***********************************************************************
.!*                                                                     *
.!*  File: APNDX3.PRF                                                   *
.!*                                                                     *
.!***********************************************************************
.AP C Error numbers
.in 5
1  No VT52 mode
4  No special point plot
---cut here---