SCCSID @(#)Notes	1.4	4/11/89
/******************** Function Key Programming Notes ********************

 The following notes were gleaned from a Fortran program after having
 wasted many hours trying to understand the information in the VT220
 Programmer Pocket Guide ( EK-VT220-HR-001 ) published by Digital
 Equipment Corp. It would be impracticl to include that Fortran program
 here so, I apologetically refer the reader to Pg 29 of the guide.

  Sending a single string to the terminal may program one or more of the
 user defined keys (UDK).  The string format in DEC-gibberish is;
    DCS Pc;Pl |   Ky1/st1;ky2/st2;...kyn/stn ST
    where;
          DCS (Device Control String) is ^[P  (ESC-P)
          Pc  -if no value or Pc=0, clears all UDKs prior to loading new defs.
               if Pc = 1, load new defs, clear any remaining old ones.
          Pl  -if no value or Pl = 1, lock keys from being redefined.
               if Pl = 1, do not lock keys.
          Ky1 -function key address. Formed by adding function key number
               to an appropriate offset. See table below.
          st1 -the ASCII representation of the HEX digits that represent
               the ASCII character to be programmed. Made sense to someone.
          ST  -string terminator. ^[\  (ESC-\)

   Function key addresses
      key number	offset	address (Ky1)
         6		11	17
         7		11	18
         8		11	19
         9		11	20
        10		11	21
        11		12	23
        12		12	24
        13		12	25
        14		12	26
   HELP 15		13	28
    DO  16		13	29
        17		14	31
        18		14	32
        19		14	33
        20		14	34

  An example string that will program the HELP (F15) key to spit out "apropos" ;
  ^[P1;1|28/6170726f706f730^[\
   | | | |  \-------------/ |
   | | | |         |        - ST  (ESC-\)
   | | | |         - encoded text
   | | | -- key address
   | | - Pl
   | - Pc
   - DCS (ESC-P)

   One simply prints the string (which will not be displayed) to the screen.
*/
