TERMINAL INSTALLATION
                               Pete Landerman
                                Nov 15, 1985

    Have  you ever downloaded some software only to find that it won't run on
your terminal,  or that your terminal is not listed in the Instalation Program
that  goes with it?   It has sure happened to me with my Otrona  Attache  (say
what?).   So  I  extracted  the terminal display driver codes  from  James  H.
Whorton's  VINST11.COM,   an  installation  program  for  his  VDO25.COM,  and
displayed  them in the chart below.   If the program you wish to adapt can  be
installed for various terminals,  and you have an installed version for one of
the  terminals  in the chart,  you can do the following.   Use a program  like
PATCH to Search the program code for the strings of bytes that constitute  the
display driver codes given in the chart for the installed terminal.   If these
are found, replace them with the codes for your particular terminal.

    For  example,  DAZLSTAR has the Osborne 1 on the list of terminals in its
Install  Program.   The addresses given in the documentation for the  terminal
codes  are not even right (for me at least).   No problem;  I  just  installed
DAZLSTAR  for  the  Osborne,  used  PATCH  to  find  the  O1  terminal  codes,
substituted the Otrona values for these; and it worked!

    The  terminal  codes given in the chart are those used  in  VDO25.   Many
programs  don't use all of these;  some use more.   The same overall  strategy
should  work to find others as needed.   To find codes used by the program you
could   use  COM-PARE  or  some  such  to  locate  the   differences   between
installations  for two different terminals.   The Labels for the various codes
at the top of the columns of the chart (sort of taken from WordStar) stand for
the following:

    R      Number of Rows (in HEX)
    C      Number of Columns (in HEX)
    ERAEOL Erace to end of line
    CLEAD1 Cursor Position Lead in
    CLRSCN Clear Screen
    LNINS  Insert Line
    LNDEL  Delete Line
    IVON   Highlighting (Reverse Video) On
    IVOFF  Highlighting (Reverse Video) Off

    In some programs a string-length byte (indicating the length in bytes  of
the code that follows) is prefixed to some or all of these codes.  For example
ERAEOL for the Zenith would be: 02 1B 4B, and CLEAD1 would be 03 01 1B 59.  If
the  program employes a string-length byte,  it is already in the program.  So
you don't need to insert it;  you only need to change it if the string you are
patching in is of a different length than the original one.

    Different  types of Highlighting may be used (Reverse  Video,  Background
On,  Boldface, Underline, etc.) depending on what your terminal is capable of.
For  some terminals and some programs the values of IVON and IVOFF  should  be
switched to obtain the right affect.

    The  chart  was sorted by the ERAEOL values so as to bring  together  the
terminals whose codes are most similar.  Thus the ADM-20 is next to the Morrow
rather than next to the ADM-31.

    In  the chart I saved space by using some abbreviations which should  not
pose a problem.   "Hil" with the Kaypros is Highlighting.  "L-Sieg" stands for
Lear-Siegler.   "S120" is the Soroc 120.  "WY-100/200/300" are Wyse terminals.
"TVid" stands for Televideo.


              SOME DISPLAY DRIVER CODES FOR VARIOUS TERMINALS

               R  C ERAEOL CLEAD1  CLRSCN LNINS LNDEL  IVON        IVOFF
Kaypro no Hil  |18 50|18 00|01 1B 3D|1A 00|1B 45|1B 52|00 00      |00 00
Kaypro with Hil|18 50|18 00|01 1B 3D|1A 00|1B 45|1B 52|see below  |see below
Hazltne Esprit |18 50|1B 0F|01 1B 11|1B 1C|1B 1A|1B 13|1B 1F      |1B 19
ADDS 20/25/30  |18 50|1B 4B|00 1B 59|0C 00|00 00|00 00|00 00      |00 00
ADDS 40/60     |18 50|1B 4B|00 1B 59|0C 00|1B 4D|1B 6C|0E 00      |0F 00
Otrona Attache |18 50|1B 4B|01 1B 3D|1A 00|1B 4C|1B 4D|1B 55 22   |1B 55 20
ADDS Viewpnt 1A|18 50|1B 4B|01 1B 59|0C 00|00 00|00 00|0F 00      |0E 00
Zenith         |18 50|1B 4B|01 1B 59|1B 45|1B 4C|1B 4D|1B 71      |1B 70
Lr-Sieg ADM-20 |18 50|1B 54|00 1B 3D|1A 00|1B 45|1B 52|1B 29      |1B 28
Morrow MDT-20  |18 50|1B 54|00 1B 3D|1A 00|1B 45|1B 52|1B 29      |1B 28
Liberty        |18 50|1B 54|01 1B 3D|1A 00|1B 45|1B 52|1B 29      |1B 28
Osborne 1      |18 50|1B 54|01 1B 3D|1A 00|1B 45|1B 52|1B 29      |1B 28
Qume           |18 50|1B 54|01 1B 3D|1A 00|1B 45|1B 52|1B 29      |1B 28
Soroc new mods |18 50|1B 54|01 1B 3D|1A 00|1B 45|1B 52|1B 29      |1B 28
TVid 912/920/92|18 50|1B 54|01 1B 3D|1A 00|1B 45|1B 52|1B 29      |1B 28
Epson Geneva   |08 50|1B 54|01 1B 3D|1B 2A|00 00|00 00|00 00      |00 00
Lr-Sieg ADM-31 |18 50|1B 54|01 1B 3D|1B 2A|1B 45|1B 52|1B 29      |1B 28
WY100/200/300  |18 50|1B 54|01 1B 3D|1B 2A|1B 45|1B 52|1B 29      |1B 28
Osborne Exec   |18 50|1B 54|01 1B 3D|1B 5A|1B 45|1B 52|1B 62 1B 29|1B 64 1B 28
S120/Apple CP/M|18 50|1B 54|01 1B 3D|1b 2A|00 00|00 00|1B 29      |1B 28
Visual 200     |18 50|1B 78|01 1B 59|1B 76|1B 4C|1B 4D|1B 33      |1B 34
Hazltine 1500  |18 50|7E 0F|00 7E 11|7E 12|7E 1A|7E 13|7E 19      |7E 1F

The strings for turning Highlighting On and Off on the Kaypro are:
    IVON:  1B 42 30 1B 42 31
    IVOFF: QB 43 31 1B 43 30