home *** CD-ROM | disk | FTP | other *** search
/ ftp.barnyard.co.uk / 2015.02.ftp.barnyard.co.uk.tar / ftp.barnyard.co.uk / cpm / walnut-creek-CDROM / CPM / TERM / GKXS372A.LBR / GKX.DZC / GKX.DOC
Text File  |  2000-06-30  |  8KB  |  192 lines

  1.  
  2. Eric Gans
  3. French Dep't UCLA
  4. Los Angeles, CA 90024
  5.  
  6.                 GKX.DOC (Formerly GKEY2) v 3.72
  7.                             12/29/87
  8.  
  9. Version 3.72
  10.      Adds  Kaypro-10 extensions,  append file command (+),  space
  11. for  comments  in  GKX  files.   Renamed  files  to  GKX.COM  and
  12. GKXSET.COM to avoid confusion.
  13.  
  14. Version 3.0
  15.      Uses ASCII files for macros.  GKX files can be edited with a
  16. text editor.
  17.      Allows  reconfiguring  "highbit" keys (keypad and  arrow  or
  18. function keys).   Captures BIOS CONSTAT to allow long key strings
  19. in   Wordstar and other word processors.    Allows 1 K of  memory
  20. for key storage.
  21.  
  22.                               * * *
  23.  
  24.      GKX  is  a  keyboard enhancement program that  has   several
  25. decided advantages over SMARTKEY and other commercial programs.
  26.  
  27.      - special  extensions  for Kaypro 10  allow  undelete,  case
  28. change  and  letter transpositions in Wordstar 3 and  other  word
  29. processors (new in v3.72)
  30.      - stores macros in editable ASCII files (new in v3.0)
  31.      - takes less memory space, leaving more for programs
  32.      - loads and responds faster
  33.      - can save key files, clear current settings, or take itself
  34. out of memory without the need for an auxiliary program
  35.      - allows redefinition of escape sequences,  thereby doubling
  36. the number of redefinable keys
  37.  
  38.  This  last  feature  was the deciding  factor  in  writing  this
  39. program.    After  some  experience with  MS-DOS,  where keyboard
  40. enhancers  have so much more to work with,   I was struck by  the
  41. poverty  of programs that are limited to the standard ASCII  set,
  42. most    of    which   cannot   be   redefined    without    great
  43. inconvenience.   GKX  allows the redefinition of <ESC> + any key,
  44. thereby  adding  127 configurable combinations few of  which  are
  45. ever used by application software.
  46.  
  47.      The general structure of the program is similar to SMARTKEY,
  48. although  it  is much simpler.  To redefine a key,  you  use  the
  49. "setup" key, originally defined as "|"; a "shift" key, originally
  50. defined  as  "\",  allows  you to use the  original  value  of  a
  51. redefined   key.    Unlike  SMARTKEY,    GKX  lets  you  abort  a
  52. redefinition  by  typing the shift key;  you don't  have  to  re-
  53. redefine.  You  can also reset a key by redefining it as nothing.
  54. GKX can load and save key files,   clear current  settings,   and
  55. remove  itself from memory.   (You need only enter the  filename;
  56. the  program will supply the extension .GKX.)  A companion  file,
  57. GKXSET, can read current settings and change the setup and switch
  58. keys in GKX;   it also includes some help  information.   (Unlike
  59. FIXKEY,   GKXSET does not require GKX to be in memory at time  of
  60. use.)
  61.  
  62.      GKX Commands:
  63.  
  64. To redefine a key:
  65.      <setup>  <key>  [you  will be prompted  by  "="  here]  <new
  66. definition> <setup>
  67.      Typing   the   shift  key  at  any  point  will  abort   the
  68.      redefinition.
  69.  
  70. To produce the original value of a redefined key:
  71.      <shift> <key>
  72.  
  73. To load a key file:
  74.      GKX fn(.GKX)
  75. To append a key file to current settings (duplicate keys will be
  76. overwritten):
  77.      GKX fn(.GKX) +
  78. To save current settings in a file:
  79.      GKX fn(.GKX) $
  80. To remove GKX from memory:
  81.      GKX -
  82. To clear current settings (leave GKX in memory):
  83.      GKX #
  84.  
  85. <ESC> + <key> is treated as a single key in these procedures. For
  86. example,  the sequence:  |<ESC>B(=)blurk| will define <ESC> B  as
  87. blurk.  (The  "=" is a prompt added by the program,  not typed by
  88. you.) To type a straight <ESC>,  either use the shift key or just
  89. hit the <ESC> key twice.
  90.  
  91. There are 1024 bytes available for definitions, enough for nearly
  92. any  conceivable use.  If you get past the maximum you will get a
  93. beep  while  trying  to redefine.  Any  single  redefinition  can
  94. contain as many as 255 characters.
  95.  
  96. GKX's   redefinitions are not cumulative:   if you redefine B  as
  97. blurk then if you redefine <ESC> 1 as BLURK you really get BLURK,
  98. not blurkLURK.
  99.  
  100. Version   3 of GKX allows you to reconfigure high bit keys   like
  101. the  Kaypro  keypad and arrows,  or function keys.   In order  to
  102. allow  multi-character  strings  in  Wordstar  and  other   word-
  103. processors,   GKX  now sets the console ready (or CONSTAT)   BIOS
  104. function  active during the playback of such strings.  It changes
  105. the BIOS CONIN address to "translate" keys as they are typed  and
  106. fixes  a  few  addresses  to  protect the  program  in  the  TPA.
  107. (SMARTKEY uses the CONOUT function to check for the BDOS  address
  108. after   Warm  Boots;   GKX uses the -- less often used  -- SELDSK
  109. function.)
  110.  
  111.                             GKX Files
  112.  
  113. GKX Version 3 uses ASCII key files to store macros.  This means that you can read these files on the screen and edit them with  a
  114. text editor--a convenience borrowed from MS-DOS programs.  If you
  115. save  the current settings in a file,  25 spaces are reserved for
  116. comments for each redefine.
  117.  
  118. The format of key definitions is as follows:
  119.  
  120. char  [comment] =def
  121.  
  122. The character should be written as normally typed, except for the
  123. following:
  124. <H>(char-80h)  for "high-bit" characters over 127 (80h)
  125. <E>char        for <ESC> + char
  126. <E><H>char     for <ESC> + highbit
  127. ^char          for control characters
  128. #D             for <DELETE>
  129. #B (or ^H)     for Backspace
  130. #S             for <SPACE>
  131. #V             variable length input (until CR)
  132. ##             for #
  133. (see below for Kaypro 10 extensions)
  134.  
  135. The same characters are used in the definitions,  except that the
  136. <H> and <E> symbols are not permitted.
  137.  
  138. A  comment  may be placed between the defined key and  the  equal
  139. sign.  The definition must follow the equal sign directly.   Each
  140. definition  must   be   followed   by a  CRLF.    Spaces  may  be
  141. included   in  the definitions,  but if a definition ends with  a
  142. space you should use '#S'.  Maximum length is 255 characters.
  143.  
  144. The easiest way to get started is to define a few macros and save
  145. the file; this will give you an idea of the file format (comments
  146. cannot be saved in this manner).
  147.  
  148. *****************************************************************
  149.  
  150.                   !!! KAYPRO 10 Extensions !!!
  151.  
  152. If you have a Kaypro 10 with the standard BIOS you should be able
  153. to  use the following extensions.   (If they won't work  on  your
  154. system,  please let me know!)  They have been set up to work with
  155. Wordstar  v3.3,  but  they  are  not specific  to  any  one  word
  156. processor.
  157.  
  158. ***  If you DON'T have a Kaypro,  DON'T use these  characters  in
  159. ***  your key files.   They depend on specific BIOS addresses and
  160. ***  are guaranteed NOT to work on any other system!
  161.  
  162. The  enclosed file WS.GKX gives examples of the possibilities  of
  163. GKX for undeletion,  case toggles,  and letter transposition (the
  164. most common editing features left out of WS 3).
  165.  
  166. #L        get line at cursor
  167. #R        restore saved line at cursor
  168. #W *      get word at cursor
  169. #I *      insert saved word at cursor
  170. #G        get letter at cursor
  171. #P        insert saved letter at cursor
  172. #C        toggle case (upper/lower) of letter at cursor
  173. #U **     change user number
  174. #H ***    delay to reset cursor position
  175.  
  176. *  Consecutive words saved at the same cursor position are  saved
  177. cumulatively.   This  allows you move several words  in  the same
  178. line by deleting them (in  WS  using  ^T),   then undeleting them
  179. somewhere else.
  180.  
  181. ** You are prompted with '>'.  Enter the user number in HEX, that
  182. is,   0 - 9,   and a - f for users 10 - 15.  The user number will
  183. change immediately.   This is handly if you have fixed old WS  to
  184. keep  its  overlays  in  a  single user area (using the   patches
  185. WSUSER   or  WSUSR2)  and  want  to  edit  files   in   different
  186. areas  without reloading.
  187.  
  188. ***   This   is  useful in WS for commands that make use  of  the
  189. cursor position  after a change (see WS.GKX for  examples).    It
  190. does  not  seem  to  be  necessary in VDE,   which  updates   the
  191. cursor much faster.
  192.