home *** CD-ROM | disk | FTP | other *** search
/ CP/M / CPM_CDROM.iso / jsage / znode3 / uploads / ws4kpd.ark / WSKEYPAD.DOC < prev   
Encoding:
Text File  |  1988-07-03  |  4.6 KB  |  99 lines

  1. WSKEYPAD.DOC - DOCUMENTATION FOR WSKEYPAD.ASM / WSKEYPAD.AZM
  2.  
  3. Copyright 1989 by Dale H. Cook
  4.  
  5. This document may be freely distributed provided that it is distributed in
  6. whole with no alteration or modification in form or content, that all
  7. copyright notices remain intact, and that no charge is made other than a
  8. nominal distribution fee. All commercial distribution of this program in part
  9. or in whole without the express written consent of the author is strictly
  10. prohibited. The author may be reached at: CompuServe 71370,2635.
  11.  
  12.  
  13.      The programmable cursor and keypad keys on the CP/M Kaypro computers
  14. can be configured as function keys for WordStar. The CONFIG.COM program
  15. supplied by Kaypro lets you make this configuration permanent by changing
  16. the System tracks on a bootable floppy. If you use a hard disk, or keep
  17. other programs on your WS disk (such as SuperZap) that expect the stock Kaypro
  18. cursor keys, things can get sticky. My solution is to patch WS4 so that the
  19. keys are set to WS functions when WS is run, and reset to the original Kaypro
  20. values when exiting WS. MicroPro has kindly provided plenty of patch space for
  21. the user, and PATCH.LST on the WordStar 4.0 disks has the information needed
  22. to install a patch. The programs WSKEYPAD.ASM (Intel/8080 mnemonics for the
  23. Digital Research ASM assembler) and WSKEYPAD.AZM (Zilog/Z80 mnemonics for Mike
  24. Rubenstein's Z80MR assembler) will patch WS4 on your Kaypro. You will also
  25. need MLOAD.COM to overlay the patch onto WS.COM.
  26.  
  27.      First of all, read KEYPAD.TXT and perform the experiments described
  28. there. This will show you how the programmable keys work. Next, decide what
  29. values you want for your keys under WS. You will probably want the cursor keys
  30. to have the WS cursor commands ^E, ^X, ^S and ^D, but you may want different
  31. keypad functions than the ones I've chosen. I've found it helpful to draw
  32. diagrams like those below to help decide what values to assign to the keys.
  33. The values shown are those of the distribution version of WSKEYPAD.ASM/AZM.
  34.  
  35.  
  36. CURSOR (ARROW) KEYS
  37.  
  38. +-------+-------+-------+-------+
  39. |   ^   |   |   |  <--  |  -->  |
  40. |   |   |   v   |       |       |
  41. |  ^E   |  ^X   |  ^S   |  ^D   |
  42. +-------+-------+-------+-------+
  43.  
  44.  
  45. NUMERIC KEYPAD
  46.  
  47. +-------+-------+-------+-------+
  48. |   7   |   8   |   9   |   -   |
  49. |       |       |       |       |
  50. |  ^C   |  ^KB  |  ^QC  |  ^KV  |
  51. +-------+-------+-------+-------+
  52. |   4   |   5   |   6   |   ,   |
  53. |       |       |       |       |
  54. |  ^R   |  ^KK  |  ^QR  |  ^KC  |
  55. +-------+-------+-------+-------+
  56. |   1   |   2   |   3   |       |
  57. |       |       |       |       |
  58. |  ^KD  |  ^KQ  |  ^KS  |       |
  59. +-------+-------+-------+ ENTER +
  60. |       0       |   .   |       |
  61. |               |       |       |
  62. |      ^Y       |  ^KY  |  ^N   |
  63. +-------+-------+-------+-------+
  64.  
  65.  
  66.      Edit the WSKEYPAD file to include your function values in the small and
  67. large keytables (SMNEW and BIGNEW). Remember that a single-byte value can go
  68. directly into SMNEW (and the corresponding line in BIGNEW should contain four
  69. NULs - 00h). Two- to four-byte strings (padded with NULs to four bytes) go
  70. into BIGNEW, with a NUL in the corresponding line in SMNEW. Also, if you use
  71. any control characters other than those I use, their equates must go into the
  72. ASCII equate table near the top of the file.
  73.  
  74.      Since you have already performed the experiments in KEYPAD.TXT (you have,
  75. haven't you?) you know how to find the start of the small key table in your
  76. BIOS and the offset to the large key table. Change the equates for SMKEY and
  77. OFFSET to match your system.
  78.  
  79.      Now let's check a few other equates. Print out a copy of PATCH.LST, and
  80. then look at your _installed_ copy of WS.COM. The addresses of INISUB, UNISUB,
  81. MORPAT and RAM1ST should be the same as shown in WSKEYPAD. The _data_ at
  82. RAM1ST's address is the value equated to EXTRA. You may have to change this
  83. equate, depending on your installation of WS. Finally, the three-byte
  84. sequences at INISUB and UNISUB in your _installed_ WS must be copied into
  85. INI 1-3 and UNI 1-3 in WSKEYPAD.
  86.  
  87.      Now we're ready to go. Assemble WSKEYPAD (.ASM for ASM.COM, .AZM for
  88. Z80MR.COM) and use MLOAD to overlay the _installed_ WS file:
  89.  
  90.      MLOAD WS.COM=WS.COM, WSKEYPAD.HEX
  91.  
  92.      That's it! Have fun with your customized WordStar 4.0. Those of you with
  93. other machines with programmable keypads may be able to use this information
  94. to write a patch for your machines. If you have any questions I can be reached
  95. on CompuServe in the CP/M and Computer Club Forums at 71370,2635.
  96.  
  97.    - Dale H. Cook
  98.      July 3, 1989
  99.